// Code generated by protoc-gen-go. DO NOT EDIT.
// source: table_store.proto

package otsprotocol

import (
	fmt "fmt"
	proto "github.com/golang/protobuf/proto"
	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.ProtoPackageIsVersion3 // please upgrade the proto package

type PrimaryKeyType int32

const (
	PrimaryKeyType_INTEGER PrimaryKeyType = 1
	PrimaryKeyType_STRING  PrimaryKeyType = 2
	PrimaryKeyType_BINARY  PrimaryKeyType = 3
)

var PrimaryKeyType_name = map[int32]string{
	1: "INTEGER",
	2: "STRING",
	3: "BINARY",
}

var PrimaryKeyType_value = map[string]int32{
	"INTEGER": 1,
	"STRING":  2,
	"BINARY":  3,
}

func (x PrimaryKeyType) Enum() *PrimaryKeyType {
	p := new(PrimaryKeyType)
	*p = x
	return p
}

func (x PrimaryKeyType) String() string {
	return proto.EnumName(PrimaryKeyType_name, int32(x))
}

func (x *PrimaryKeyType) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(PrimaryKeyType_value, data, "PrimaryKeyType")
	if err != nil {
		return err
	}
	*x = PrimaryKeyType(value)
	return nil
}

func (PrimaryKeyType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{0}
}

type PrimaryKeyOption int32

const (
	PrimaryKeyOption_AUTO_INCREMENT PrimaryKeyOption = 1
)

var PrimaryKeyOption_name = map[int32]string{
	1: "AUTO_INCREMENT",
}

var PrimaryKeyOption_value = map[string]int32{
	"AUTO_INCREMENT": 1,
}

func (x PrimaryKeyOption) Enum() *PrimaryKeyOption {
	p := new(PrimaryKeyOption)
	*p = x
	return p
}

func (x PrimaryKeyOption) String() string {
	return proto.EnumName(PrimaryKeyOption_name, int32(x))
}

func (x *PrimaryKeyOption) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(PrimaryKeyOption_value, data, "PrimaryKeyOption")
	if err != nil {
		return err
	}
	*x = PrimaryKeyOption(value)
	return nil
}

func (PrimaryKeyOption) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{1}
}

type DataBlockType int32

const (
	DataBlockType_DBT_PLAIN_BUFFER      DataBlockType = 0
	DataBlockType_DBT_SIMPLE_ROW_MATRIX DataBlockType = 1
)

var DataBlockType_name = map[int32]string{
	0: "DBT_PLAIN_BUFFER",
	1: "DBT_SIMPLE_ROW_MATRIX",
}

var DataBlockType_value = map[string]int32{
	"DBT_PLAIN_BUFFER":      0,
	"DBT_SIMPLE_ROW_MATRIX": 1,
}

func (x DataBlockType) Enum() *DataBlockType {
	p := new(DataBlockType)
	*p = x
	return p
}

func (x DataBlockType) String() string {
	return proto.EnumName(DataBlockType_name, int32(x))
}

func (x *DataBlockType) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(DataBlockType_value, data, "DataBlockType")
	if err != nil {
		return err
	}
	*x = DataBlockType(value)
	return nil
}

func (DataBlockType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{2}
}

type CompressType int32

const (
	CompressType_CPT_NONE CompressType = 0
)

var CompressType_name = map[int32]string{
	0: "CPT_NONE",
}

var CompressType_value = map[string]int32{
	"CPT_NONE": 0,
}

func (x CompressType) Enum() *CompressType {
	p := new(CompressType)
	*p = x
	return p
}

func (x CompressType) String() string {
	return proto.EnumName(CompressType_name, int32(x))
}

func (x *CompressType) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(CompressType_value, data, "CompressType")
	if err != nil {
		return err
	}
	*x = CompressType(value)
	return nil
}

func (CompressType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{3}
}

type BloomFilterType int32

const (
	BloomFilterType_NONE BloomFilterType = 1
	BloomFilterType_CELL BloomFilterType = 2
	BloomFilterType_ROW  BloomFilterType = 3
)

var BloomFilterType_name = map[int32]string{
	1: "NONE",
	2: "CELL",
	3: "ROW",
}

var BloomFilterType_value = map[string]int32{
	"NONE": 1,
	"CELL": 2,
	"ROW":  3,
}

func (x BloomFilterType) Enum() *BloomFilterType {
	p := new(BloomFilterType)
	*p = x
	return p
}

func (x BloomFilterType) String() string {
	return proto.EnumName(BloomFilterType_name, int32(x))
}

func (x *BloomFilterType) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(BloomFilterType_value, data, "BloomFilterType")
	if err != nil {
		return err
	}
	*x = BloomFilterType(value)
	return nil
}

func (BloomFilterType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{4}
}

//*
// 表的状态变更只与用户的操作对应，内部的机器failover等状况不对应表的状态变更。
// 有三个考虑：
//     一是一般场景下用户只会在做了对表的修改操作后才会去检查表的状态；
//     二是内部机器failover导致访问异常到用户能够查看到表的状态变更这两个时刻之间会有一段延迟，无法将表的不可服务状态与用户查看到的表的状态完全匹配上。
//     三是内部机器failover后不能说是表的整个状态变更，而应该是partition的状态变更，对应表的状态就是PARTIAL_FAILOVER，这个partial的粒度无法体现，会让用户更加困惑。
type TableStatus int32

const (
	TableStatus_ACTIVE    TableStatus = 1
	TableStatus_INACTIVE  TableStatus = 2
	TableStatus_LOADING   TableStatus = 3
	TableStatus_UNLOADING TableStatus = 4
	TableStatus_UPDATING  TableStatus = 5
)

var TableStatus_name = map[int32]string{
	1: "ACTIVE",
	2: "INACTIVE",
	3: "LOADING",
	4: "UNLOADING",
	5: "UPDATING",
}

var TableStatus_value = map[string]int32{
	"ACTIVE":    1,
	"INACTIVE":  2,
	"LOADING":   3,
	"UNLOADING": 4,
	"UPDATING":  5,
}

func (x TableStatus) Enum() *TableStatus {
	p := new(TableStatus)
	*p = x
	return p
}

func (x TableStatus) String() string {
	return proto.EnumName(TableStatus_name, int32(x))
}

func (x *TableStatus) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(TableStatus_value, data, "TableStatus")
	if err != nil {
		return err
	}
	*x = TableStatus(value)
	return nil
}

func (TableStatus) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{5}
}

type RowExistenceExpectation int32

const (
	RowExistenceExpectation_IGNORE           RowExistenceExpectation = 0
	RowExistenceExpectation_EXPECT_EXIST     RowExistenceExpectation = 1
	RowExistenceExpectation_EXPECT_NOT_EXIST RowExistenceExpectation = 2
)

var RowExistenceExpectation_name = map[int32]string{
	0: "IGNORE",
	1: "EXPECT_EXIST",
	2: "EXPECT_NOT_EXIST",
}

var RowExistenceExpectation_value = map[string]int32{
	"IGNORE":           0,
	"EXPECT_EXIST":     1,
	"EXPECT_NOT_EXIST": 2,
}

func (x RowExistenceExpectation) Enum() *RowExistenceExpectation {
	p := new(RowExistenceExpectation)
	*p = x
	return p
}

func (x RowExistenceExpectation) String() string {
	return proto.EnumName(RowExistenceExpectation_name, int32(x))
}

func (x *RowExistenceExpectation) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(RowExistenceExpectation_value, data, "RowExistenceExpectation")
	if err != nil {
		return err
	}
	*x = RowExistenceExpectation(value)
	return nil
}

func (RowExistenceExpectation) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{6}
}

type SSEKeyType int32

const (
	SSEKeyType_SSE_KMS_SERVICE SSEKeyType = 1
	SSEKeyType_SSE_BYOK        SSEKeyType = 2
)

var SSEKeyType_name = map[int32]string{
	1: "SSE_KMS_SERVICE",
	2: "SSE_BYOK",
}

var SSEKeyType_value = map[string]int32{
	"SSE_KMS_SERVICE": 1,
	"SSE_BYOK":        2,
}

func (x SSEKeyType) Enum() *SSEKeyType {
	p := new(SSEKeyType)
	*p = x
	return p
}

func (x SSEKeyType) String() string {
	return proto.EnumName(SSEKeyType_name, int32(x))
}

func (x *SSEKeyType) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(SSEKeyType_value, data, "SSEKeyType")
	if err != nil {
		return err
	}
	*x = SSEKeyType(value)
	return nil
}

func (SSEKeyType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{7}
}

type ReturnType int32

const (
	ReturnType_RT_NONE         ReturnType = 0
	ReturnType_RT_PK           ReturnType = 1
	ReturnType_RT_AFTER_MODIFY ReturnType = 2
)

var ReturnType_name = map[int32]string{
	0: "RT_NONE",
	1: "RT_PK",
	2: "RT_AFTER_MODIFY",
}

var ReturnType_value = map[string]int32{
	"RT_NONE":         0,
	"RT_PK":           1,
	"RT_AFTER_MODIFY": 2,
}

func (x ReturnType) Enum() *ReturnType {
	p := new(ReturnType)
	*p = x
	return p
}

func (x ReturnType) String() string {
	return proto.EnumName(ReturnType_name, int32(x))
}

func (x *ReturnType) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(ReturnType_value, data, "ReturnType")
	if err != nil {
		return err
	}
	*x = ReturnType(value)
	return nil
}

func (ReturnType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{8}
}

type OperationType int32

const (
	OperationType_PUT    OperationType = 1
	OperationType_UPDATE OperationType = 2
	OperationType_DELETE OperationType = 3
)

var OperationType_name = map[int32]string{
	1: "PUT",
	2: "UPDATE",
	3: "DELETE",
}

var OperationType_value = map[string]int32{
	"PUT":    1,
	"UPDATE": 2,
	"DELETE": 3,
}

func (x OperationType) Enum() *OperationType {
	p := new(OperationType)
	*p = x
	return p
}

func (x OperationType) String() string {
	return proto.EnumName(OperationType_name, int32(x))
}

func (x *OperationType) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(OperationType_value, data, "OperationType")
	if err != nil {
		return err
	}
	*x = OperationType(value)
	return nil
}

func (OperationType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{9}
}

// #############################################  GetRange  #############################################
type Direction int32

const (
	Direction_FORWARD  Direction = 0
	Direction_BACKWARD Direction = 1
)

var Direction_name = map[int32]string{
	0: "FORWARD",
	1: "BACKWARD",
}

var Direction_value = map[string]int32{
	"FORWARD":  0,
	"BACKWARD": 1,
}

func (x Direction) Enum() *Direction {
	p := new(Direction)
	*p = x
	return p
}

func (x Direction) String() string {
	return proto.EnumName(Direction_name, int32(x))
}

func (x *Direction) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(Direction_value, data, "Direction")
	if err != nil {
		return err
	}
	*x = Direction(value)
	return nil
}

func (Direction) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{10}
}

type StreamStatus int32

const (
	StreamStatus_STREAM_ENABLING StreamStatus = 1
	StreamStatus_STREAM_ACTIVE   StreamStatus = 2
)

var StreamStatus_name = map[int32]string{
	1: "STREAM_ENABLING",
	2: "STREAM_ACTIVE",
}

var StreamStatus_value = map[string]int32{
	"STREAM_ENABLING": 1,
	"STREAM_ACTIVE":   2,
}

func (x StreamStatus) Enum() *StreamStatus {
	p := new(StreamStatus)
	*p = x
	return p
}

func (x StreamStatus) String() string {
	return proto.EnumName(StreamStatus_name, int32(x))
}

func (x *StreamStatus) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(StreamStatus_value, data, "StreamStatus")
	if err != nil {
		return err
	}
	*x = StreamStatus(value)
	return nil
}

func (StreamStatus) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{11}
}

type ActionType int32

const (
	ActionType_PUT_ROW    ActionType = 1
	ActionType_UPDATE_ROW ActionType = 2
	ActionType_DELETE_ROW ActionType = 3
)

var ActionType_name = map[int32]string{
	1: "PUT_ROW",
	2: "UPDATE_ROW",
	3: "DELETE_ROW",
}

var ActionType_value = map[string]int32{
	"PUT_ROW":    1,
	"UPDATE_ROW": 2,
	"DELETE_ROW": 3,
}

func (x ActionType) Enum() *ActionType {
	p := new(ActionType)
	*p = x
	return p
}

func (x ActionType) String() string {
	return proto.EnumName(ActionType_name, int32(x))
}

func (x *ActionType) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(ActionType_value, data, "ActionType")
	if err != nil {
		return err
	}
	*x = ActionType(value)
	return nil
}

func (ActionType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{12}
}

type DefinedColumnType int32

const (
	DefinedColumnType_DCT_INTEGER DefinedColumnType = 1
	DefinedColumnType_DCT_DOUBLE  DefinedColumnType = 2
	DefinedColumnType_DCT_BOOLEAN DefinedColumnType = 3
	DefinedColumnType_DCT_STRING  DefinedColumnType = 4
	// field 5 is reserved for date type, not supported yet
	// field 6 is reserved for decimal type, not supported yet
	DefinedColumnType_DCT_BLOB DefinedColumnType = 7
)

var DefinedColumnType_name = map[int32]string{
	1: "DCT_INTEGER",
	2: "DCT_DOUBLE",
	3: "DCT_BOOLEAN",
	4: "DCT_STRING",
	7: "DCT_BLOB",
}

var DefinedColumnType_value = map[string]int32{
	"DCT_INTEGER": 1,
	"DCT_DOUBLE":  2,
	"DCT_BOOLEAN": 3,
	"DCT_STRING":  4,
	"DCT_BLOB":    7,
}

func (x DefinedColumnType) Enum() *DefinedColumnType {
	p := new(DefinedColumnType)
	*p = x
	return p
}

func (x DefinedColumnType) String() string {
	return proto.EnumName(DefinedColumnType_name, int32(x))
}

func (x *DefinedColumnType) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(DefinedColumnType_value, data, "DefinedColumnType")
	if err != nil {
		return err
	}
	*x = DefinedColumnType(value)
	return nil
}

func (DefinedColumnType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{13}
}

type IndexUpdateMode int32

const (
	IndexUpdateMode_IUM_ASYNC_INDEX IndexUpdateMode = 0
	IndexUpdateMode_IUM_SYNC_INDEX  IndexUpdateMode = 1
)

var IndexUpdateMode_name = map[int32]string{
	0: "IUM_ASYNC_INDEX",
	1: "IUM_SYNC_INDEX",
}

var IndexUpdateMode_value = map[string]int32{
	"IUM_ASYNC_INDEX": 0,
	"IUM_SYNC_INDEX":  1,
}

func (x IndexUpdateMode) Enum() *IndexUpdateMode {
	p := new(IndexUpdateMode)
	*p = x
	return p
}

func (x IndexUpdateMode) String() string {
	return proto.EnumName(IndexUpdateMode_name, int32(x))
}

func (x *IndexUpdateMode) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(IndexUpdateMode_value, data, "IndexUpdateMode")
	if err != nil {
		return err
	}
	*x = IndexUpdateMode(value)
	return nil
}

func (IndexUpdateMode) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{14}
}

type IndexType int32

const (
	IndexType_IT_GLOBAL_INDEX IndexType = 0
	IndexType_IT_LOCAL_INDEX  IndexType = 1
)

var IndexType_name = map[int32]string{
	0: "IT_GLOBAL_INDEX",
	1: "IT_LOCAL_INDEX",
}

var IndexType_value = map[string]int32{
	"IT_GLOBAL_INDEX": 0,
	"IT_LOCAL_INDEX":  1,
}

func (x IndexType) Enum() *IndexType {
	p := new(IndexType)
	*p = x
	return p
}

func (x IndexType) String() string {
	return proto.EnumName(IndexType_name, int32(x))
}

func (x *IndexType) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(IndexType_value, data, "IndexType")
	if err != nil {
		return err
	}
	*x = IndexType(value)
	return nil
}

func (IndexType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{15}
}

type IndexSyncPhase int32

const (
	IndexSyncPhase_ISP_INVALID IndexSyncPhase = 0
	IndexSyncPhase_ISP_FULL    IndexSyncPhase = 1
	IndexSyncPhase_ISP_INCR    IndexSyncPhase = 2
)

var IndexSyncPhase_name = map[int32]string{
	0: "ISP_INVALID",
	1: "ISP_FULL",
	2: "ISP_INCR",
}

var IndexSyncPhase_value = map[string]int32{
	"ISP_INVALID": 0,
	"ISP_FULL":    1,
	"ISP_INCR":    2,
}

func (x IndexSyncPhase) Enum() *IndexSyncPhase {
	p := new(IndexSyncPhase)
	*p = x
	return p
}

func (x IndexSyncPhase) String() string {
	return proto.EnumName(IndexSyncPhase_name, int32(x))
}

func (x *IndexSyncPhase) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(IndexSyncPhase_value, data, "IndexSyncPhase")
	if err != nil {
		return err
	}
	*x = IndexSyncPhase(value)
	return nil
}

func (IndexSyncPhase) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{16}
}

// SQLQuery
type SQLPayloadVersion int32

const (
	SQLPayloadVersion_SQL_PLAIN_BUFFER SQLPayloadVersion = 1
	SQLPayloadVersion_SQL_FLAT_BUFFERS SQLPayloadVersion = 2
)

var SQLPayloadVersion_name = map[int32]string{
	1: "SQL_PLAIN_BUFFER",
	2: "SQL_FLAT_BUFFERS",
}

var SQLPayloadVersion_value = map[string]int32{
	"SQL_PLAIN_BUFFER": 1,
	"SQL_FLAT_BUFFERS": 2,
}

func (x SQLPayloadVersion) Enum() *SQLPayloadVersion {
	p := new(SQLPayloadVersion)
	*p = x
	return p
}

func (x SQLPayloadVersion) String() string {
	return proto.EnumName(SQLPayloadVersion_name, int32(x))
}

func (x *SQLPayloadVersion) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(SQLPayloadVersion_value, data, "SQLPayloadVersion")
	if err != nil {
		return err
	}
	*x = SQLPayloadVersion(value)
	return nil
}

func (SQLPayloadVersion) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{17}
}

type SQLStatementType int32

const (
	SQLStatementType_SQL_SELECT         SQLStatementType = 1
	SQLStatementType_SQL_CREATE_TABLE   SQLStatementType = 2
	SQLStatementType_SQL_SHOW_TABLE     SQLStatementType = 3
	SQLStatementType_SQL_DESCRIBE_TABLE SQLStatementType = 4
	SQLStatementType_SQL_DROP_TABLE     SQLStatementType = 5
	SQLStatementType_SQL_ALTER_TABLE    SQLStatementType = 6
)

var SQLStatementType_name = map[int32]string{
	1: "SQL_SELECT",
	2: "SQL_CREATE_TABLE",
	3: "SQL_SHOW_TABLE",
	4: "SQL_DESCRIBE_TABLE",
	5: "SQL_DROP_TABLE",
	6: "SQL_ALTER_TABLE",
}

var SQLStatementType_value = map[string]int32{
	"SQL_SELECT":         1,
	"SQL_CREATE_TABLE":   2,
	"SQL_SHOW_TABLE":     3,
	"SQL_DESCRIBE_TABLE": 4,
	"SQL_DROP_TABLE":     5,
	"SQL_ALTER_TABLE":    6,
}

func (x SQLStatementType) Enum() *SQLStatementType {
	p := new(SQLStatementType)
	*p = x
	return p
}

func (x SQLStatementType) String() string {
	return proto.EnumName(SQLStatementType_name, int32(x))
}

func (x *SQLStatementType) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(SQLStatementType_value, data, "SQLStatementType")
	if err != nil {
		return err
	}
	*x = SQLStatementType(value)
	return nil
}

func (SQLStatementType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{18}
}

type Error struct {
	Code                 *string  `protobuf:"bytes,1,req,name=code" json:"code,omitempty"`
	Message              *string  `protobuf:"bytes,2,opt,name=message" json:"message,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Error) Reset()         { *m = Error{} }
func (m *Error) String() string { return proto.CompactTextString(m) }
func (*Error) ProtoMessage()    {}
func (*Error) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{0}
}

func (m *Error) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Error.Unmarshal(m, b)
}
func (m *Error) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Error.Marshal(b, m, deterministic)
}
func (m *Error) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Error.Merge(m, src)
}
func (m *Error) XXX_Size() int {
	return xxx_messageInfo_Error.Size(m)
}
func (m *Error) XXX_DiscardUnknown() {
	xxx_messageInfo_Error.DiscardUnknown(m)
}

var xxx_messageInfo_Error proto.InternalMessageInfo

func (m *Error) GetCode() string {
	if m != nil && m.Code != nil {
		return *m.Code
	}
	return ""
}

func (m *Error) GetMessage() string {
	if m != nil && m.Message != nil {
		return *m.Message
	}
	return ""
}

type PrimaryKeySchema struct {
	Name                 *string           `protobuf:"bytes,1,req,name=name" json:"name,omitempty"`
	Type                 *PrimaryKeyType   `protobuf:"varint,2,req,name=type,enum=otsprotocol.PrimaryKeyType" json:"type,omitempty"`
	Option               *PrimaryKeyOption `protobuf:"varint,3,opt,name=option,enum=otsprotocol.PrimaryKeyOption" json:"option,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *PrimaryKeySchema) Reset()         { *m = PrimaryKeySchema{} }
func (m *PrimaryKeySchema) String() string { return proto.CompactTextString(m) }
func (*PrimaryKeySchema) ProtoMessage()    {}
func (*PrimaryKeySchema) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{1}
}

func (m *PrimaryKeySchema) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PrimaryKeySchema.Unmarshal(m, b)
}
func (m *PrimaryKeySchema) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PrimaryKeySchema.Marshal(b, m, deterministic)
}
func (m *PrimaryKeySchema) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PrimaryKeySchema.Merge(m, src)
}
func (m *PrimaryKeySchema) XXX_Size() int {
	return xxx_messageInfo_PrimaryKeySchema.Size(m)
}
func (m *PrimaryKeySchema) XXX_DiscardUnknown() {
	xxx_messageInfo_PrimaryKeySchema.DiscardUnknown(m)
}

var xxx_messageInfo_PrimaryKeySchema proto.InternalMessageInfo

func (m *PrimaryKeySchema) GetName() string {
	if m != nil && m.Name != nil {
		return *m.Name
	}
	return ""
}

func (m *PrimaryKeySchema) GetType() PrimaryKeyType {
	if m != nil && m.Type != nil {
		return *m.Type
	}
	return PrimaryKeyType_INTEGER
}

func (m *PrimaryKeySchema) GetOption() PrimaryKeyOption {
	if m != nil && m.Option != nil {
		return *m.Option
	}
	return PrimaryKeyOption_AUTO_INCREMENT
}

type PartitionRange struct {
	Begin                []byte   `protobuf:"bytes,1,req,name=begin" json:"begin,omitempty"`
	End                  []byte   `protobuf:"bytes,2,req,name=end" json:"end,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *PartitionRange) Reset()         { *m = PartitionRange{} }
func (m *PartitionRange) String() string { return proto.CompactTextString(m) }
func (*PartitionRange) ProtoMessage()    {}
func (*PartitionRange) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{2}
}

func (m *PartitionRange) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PartitionRange.Unmarshal(m, b)
}
func (m *PartitionRange) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PartitionRange.Marshal(b, m, deterministic)
}
func (m *PartitionRange) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PartitionRange.Merge(m, src)
}
func (m *PartitionRange) XXX_Size() int {
	return xxx_messageInfo_PartitionRange.Size(m)
}
func (m *PartitionRange) XXX_DiscardUnknown() {
	xxx_messageInfo_PartitionRange.DiscardUnknown(m)
}

var xxx_messageInfo_PartitionRange proto.InternalMessageInfo

func (m *PartitionRange) GetBegin() []byte {
	if m != nil {
		return m.Begin
	}
	return nil
}

func (m *PartitionRange) GetEnd() []byte {
	if m != nil {
		return m.End
	}
	return nil
}

type TableOptions struct {
	TimeToLive                *int32           `protobuf:"varint,1,opt,name=time_to_live,json=timeToLive" json:"time_to_live,omitempty"`
	MaxVersions               *int32           `protobuf:"varint,2,opt,name=max_versions,json=maxVersions" json:"max_versions,omitempty"`
	BloomFilterType           *BloomFilterType `protobuf:"varint,3,opt,name=bloom_filter_type,json=bloomFilterType,enum=otsprotocol.BloomFilterType" json:"bloom_filter_type,omitempty"`
	BlockSize                 *int32           `protobuf:"varint,4,opt,name=block_size,json=blockSize" json:"block_size,omitempty"`
	DeviationCellVersionInSec *int64           `protobuf:"varint,5,opt,name=deviation_cell_version_in_sec,json=deviationCellVersionInSec" json:"deviation_cell_version_in_sec,omitempty"`
	AllowUpdate               *bool            `protobuf:"varint,6,opt,name=allow_update,json=allowUpdate" json:"allow_update,omitempty"`
	UpdateFullRow             *bool            `protobuf:"varint,7,opt,name=update_full_row,json=updateFullRow" json:"update_full_row,omitempty"`
	XXX_NoUnkeyedLiteral      struct{}         `json:"-"`
	XXX_unrecognized          []byte           `json:"-"`
	XXX_sizecache             int32            `json:"-"`
}

func (m *TableOptions) Reset()         { *m = TableOptions{} }
func (m *TableOptions) String() string { return proto.CompactTextString(m) }
func (*TableOptions) ProtoMessage()    {}
func (*TableOptions) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{3}
}

func (m *TableOptions) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_TableOptions.Unmarshal(m, b)
}
func (m *TableOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_TableOptions.Marshal(b, m, deterministic)
}
func (m *TableOptions) XXX_Merge(src proto.Message) {
	xxx_messageInfo_TableOptions.Merge(m, src)
}
func (m *TableOptions) XXX_Size() int {
	return xxx_messageInfo_TableOptions.Size(m)
}
func (m *TableOptions) XXX_DiscardUnknown() {
	xxx_messageInfo_TableOptions.DiscardUnknown(m)
}

var xxx_messageInfo_TableOptions proto.InternalMessageInfo

func (m *TableOptions) GetTimeToLive() int32 {
	if m != nil && m.TimeToLive != nil {
		return *m.TimeToLive
	}
	return 0
}

func (m *TableOptions) GetMaxVersions() int32 {
	if m != nil && m.MaxVersions != nil {
		return *m.MaxVersions
	}
	return 0
}

func (m *TableOptions) GetBloomFilterType() BloomFilterType {
	if m != nil && m.BloomFilterType != nil {
		return *m.BloomFilterType
	}
	return BloomFilterType_NONE
}

func (m *TableOptions) GetBlockSize() int32 {
	if m != nil && m.BlockSize != nil {
		return *m.BlockSize
	}
	return 0
}

func (m *TableOptions) GetDeviationCellVersionInSec() int64 {
	if m != nil && m.DeviationCellVersionInSec != nil {
		return *m.DeviationCellVersionInSec
	}
	return 0
}

func (m *TableOptions) GetAllowUpdate() bool {
	if m != nil && m.AllowUpdate != nil {
		return *m.AllowUpdate
	}
	return false
}

func (m *TableOptions) GetUpdateFullRow() bool {
	if m != nil && m.UpdateFullRow != nil {
		return *m.UpdateFullRow
	}
	return false
}

type TableMeta struct {
	TableName            *string                `protobuf:"bytes,1,req,name=table_name,json=tableName" json:"table_name,omitempty"`
	PrimaryKey           []*PrimaryKeySchema    `protobuf:"bytes,2,rep,name=primary_key,json=primaryKey" json:"primary_key,omitempty"`
	DefinedColumn        []*DefinedColumnSchema `protobuf:"bytes,3,rep,name=defined_column,json=definedColumn" json:"defined_column,omitempty"`
	IndexMeta            []*IndexMeta           `protobuf:"bytes,4,rep,name=index_meta,json=indexMeta" json:"index_meta,omitempty"`
	XXX_NoUnkeyedLiteral struct{}               `json:"-"`
	XXX_unrecognized     []byte                 `json:"-"`
	XXX_sizecache        int32                  `json:"-"`
}

func (m *TableMeta) Reset()         { *m = TableMeta{} }
func (m *TableMeta) String() string { return proto.CompactTextString(m) }
func (*TableMeta) ProtoMessage()    {}
func (*TableMeta) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{4}
}

func (m *TableMeta) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_TableMeta.Unmarshal(m, b)
}
func (m *TableMeta) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_TableMeta.Marshal(b, m, deterministic)
}
func (m *TableMeta) XXX_Merge(src proto.Message) {
	xxx_messageInfo_TableMeta.Merge(m, src)
}
func (m *TableMeta) XXX_Size() int {
	return xxx_messageInfo_TableMeta.Size(m)
}
func (m *TableMeta) XXX_DiscardUnknown() {
	xxx_messageInfo_TableMeta.DiscardUnknown(m)
}

var xxx_messageInfo_TableMeta proto.InternalMessageInfo

func (m *TableMeta) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

func (m *TableMeta) GetPrimaryKey() []*PrimaryKeySchema {
	if m != nil {
		return m.PrimaryKey
	}
	return nil
}

func (m *TableMeta) GetDefinedColumn() []*DefinedColumnSchema {
	if m != nil {
		return m.DefinedColumn
	}
	return nil
}

func (m *TableMeta) GetIndexMeta() []*IndexMeta {
	if m != nil {
		return m.IndexMeta
	}
	return nil
}

type Condition struct {
	RowExistence         *RowExistenceExpectation `protobuf:"varint,1,req,name=row_existence,json=rowExistence,enum=otsprotocol.RowExistenceExpectation" json:"row_existence,omitempty"`
	ColumnCondition      []byte                   `protobuf:"bytes,2,opt,name=column_condition,json=columnCondition" json:"column_condition,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                 `json:"-"`
	XXX_unrecognized     []byte                   `json:"-"`
	XXX_sizecache        int32                    `json:"-"`
}

func (m *Condition) Reset()         { *m = Condition{} }
func (m *Condition) String() string { return proto.CompactTextString(m) }
func (*Condition) ProtoMessage()    {}
func (*Condition) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{5}
}

func (m *Condition) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Condition.Unmarshal(m, b)
}
func (m *Condition) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Condition.Marshal(b, m, deterministic)
}
func (m *Condition) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Condition.Merge(m, src)
}
func (m *Condition) XXX_Size() int {
	return xxx_messageInfo_Condition.Size(m)
}
func (m *Condition) XXX_DiscardUnknown() {
	xxx_messageInfo_Condition.DiscardUnknown(m)
}

var xxx_messageInfo_Condition proto.InternalMessageInfo

func (m *Condition) GetRowExistence() RowExistenceExpectation {
	if m != nil && m.RowExistence != nil {
		return *m.RowExistence
	}
	return RowExistenceExpectation_IGNORE
}

func (m *Condition) GetColumnCondition() []byte {
	if m != nil {
		return m.ColumnCondition
	}
	return nil
}

type CapacityUnit struct {
	Read                 *int32   `protobuf:"varint,1,opt,name=read" json:"read,omitempty"`
	Write                *int32   `protobuf:"varint,2,opt,name=write" json:"write,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *CapacityUnit) Reset()         { *m = CapacityUnit{} }
func (m *CapacityUnit) String() string { return proto.CompactTextString(m) }
func (*CapacityUnit) ProtoMessage()    {}
func (*CapacityUnit) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{6}
}

func (m *CapacityUnit) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_CapacityUnit.Unmarshal(m, b)
}
func (m *CapacityUnit) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_CapacityUnit.Marshal(b, m, deterministic)
}
func (m *CapacityUnit) XXX_Merge(src proto.Message) {
	xxx_messageInfo_CapacityUnit.Merge(m, src)
}
func (m *CapacityUnit) XXX_Size() int {
	return xxx_messageInfo_CapacityUnit.Size(m)
}
func (m *CapacityUnit) XXX_DiscardUnknown() {
	xxx_messageInfo_CapacityUnit.DiscardUnknown(m)
}

var xxx_messageInfo_CapacityUnit proto.InternalMessageInfo

func (m *CapacityUnit) GetRead() int32 {
	if m != nil && m.Read != nil {
		return *m.Read
	}
	return 0
}

func (m *CapacityUnit) GetWrite() int32 {
	if m != nil && m.Write != nil {
		return *m.Write
	}
	return 0
}

type ReservedThroughputDetails struct {
	CapacityUnit         *CapacityUnit `protobuf:"bytes,1,req,name=capacity_unit,json=capacityUnit" json:"capacity_unit,omitempty"`
	LastIncreaseTime     *int64        `protobuf:"varint,2,req,name=last_increase_time,json=lastIncreaseTime" json:"last_increase_time,omitempty"`
	LastDecreaseTime     *int64        `protobuf:"varint,3,opt,name=last_decrease_time,json=lastDecreaseTime" json:"last_decrease_time,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *ReservedThroughputDetails) Reset()         { *m = ReservedThroughputDetails{} }
func (m *ReservedThroughputDetails) String() string { return proto.CompactTextString(m) }
func (*ReservedThroughputDetails) ProtoMessage()    {}
func (*ReservedThroughputDetails) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{7}
}

func (m *ReservedThroughputDetails) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ReservedThroughputDetails.Unmarshal(m, b)
}
func (m *ReservedThroughputDetails) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ReservedThroughputDetails.Marshal(b, m, deterministic)
}
func (m *ReservedThroughputDetails) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ReservedThroughputDetails.Merge(m, src)
}
func (m *ReservedThroughputDetails) XXX_Size() int {
	return xxx_messageInfo_ReservedThroughputDetails.Size(m)
}
func (m *ReservedThroughputDetails) XXX_DiscardUnknown() {
	xxx_messageInfo_ReservedThroughputDetails.DiscardUnknown(m)
}

var xxx_messageInfo_ReservedThroughputDetails proto.InternalMessageInfo

func (m *ReservedThroughputDetails) GetCapacityUnit() *CapacityUnit {
	if m != nil {
		return m.CapacityUnit
	}
	return nil
}

func (m *ReservedThroughputDetails) GetLastIncreaseTime() int64 {
	if m != nil && m.LastIncreaseTime != nil {
		return *m.LastIncreaseTime
	}
	return 0
}

func (m *ReservedThroughputDetails) GetLastDecreaseTime() int64 {
	if m != nil && m.LastDecreaseTime != nil {
		return *m.LastDecreaseTime
	}
	return 0
}

type ReservedThroughput struct {
	CapacityUnit         *CapacityUnit `protobuf:"bytes,1,req,name=capacity_unit,json=capacityUnit" json:"capacity_unit,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *ReservedThroughput) Reset()         { *m = ReservedThroughput{} }
func (m *ReservedThroughput) String() string { return proto.CompactTextString(m) }
func (*ReservedThroughput) ProtoMessage()    {}
func (*ReservedThroughput) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{8}
}

func (m *ReservedThroughput) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ReservedThroughput.Unmarshal(m, b)
}
func (m *ReservedThroughput) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ReservedThroughput.Marshal(b, m, deterministic)
}
func (m *ReservedThroughput) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ReservedThroughput.Merge(m, src)
}
func (m *ReservedThroughput) XXX_Size() int {
	return xxx_messageInfo_ReservedThroughput.Size(m)
}
func (m *ReservedThroughput) XXX_DiscardUnknown() {
	xxx_messageInfo_ReservedThroughput.DiscardUnknown(m)
}

var xxx_messageInfo_ReservedThroughput proto.InternalMessageInfo

func (m *ReservedThroughput) GetCapacityUnit() *CapacityUnit {
	if m != nil {
		return m.CapacityUnit
	}
	return nil
}

type ConsumedCapacity struct {
	CapacityUnit         *CapacityUnit `protobuf:"bytes,1,req,name=capacity_unit,json=capacityUnit" json:"capacity_unit,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *ConsumedCapacity) Reset()         { *m = ConsumedCapacity{} }
func (m *ConsumedCapacity) String() string { return proto.CompactTextString(m) }
func (*ConsumedCapacity) ProtoMessage()    {}
func (*ConsumedCapacity) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{9}
}

func (m *ConsumedCapacity) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ConsumedCapacity.Unmarshal(m, b)
}
func (m *ConsumedCapacity) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ConsumedCapacity.Marshal(b, m, deterministic)
}
func (m *ConsumedCapacity) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ConsumedCapacity.Merge(m, src)
}
func (m *ConsumedCapacity) XXX_Size() int {
	return xxx_messageInfo_ConsumedCapacity.Size(m)
}
func (m *ConsumedCapacity) XXX_DiscardUnknown() {
	xxx_messageInfo_ConsumedCapacity.DiscardUnknown(m)
}

var xxx_messageInfo_ConsumedCapacity proto.InternalMessageInfo

func (m *ConsumedCapacity) GetCapacityUnit() *CapacityUnit {
	if m != nil {
		return m.CapacityUnit
	}
	return nil
}

type StreamSpecification struct {
	EnableStream         *bool    `protobuf:"varint,1,req,name=enable_stream,json=enableStream" json:"enable_stream,omitempty"`
	ExpirationTime       *int32   `protobuf:"varint,2,opt,name=expiration_time,json=expirationTime" json:"expiration_time,omitempty"`
	ColumnsToGet         []string `protobuf:"bytes,3,rep,name=columns_to_get,json=columnsToGet" json:"columns_to_get,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *StreamSpecification) Reset()         { *m = StreamSpecification{} }
func (m *StreamSpecification) String() string { return proto.CompactTextString(m) }
func (*StreamSpecification) ProtoMessage()    {}
func (*StreamSpecification) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{10}
}

func (m *StreamSpecification) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_StreamSpecification.Unmarshal(m, b)
}
func (m *StreamSpecification) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_StreamSpecification.Marshal(b, m, deterministic)
}
func (m *StreamSpecification) XXX_Merge(src proto.Message) {
	xxx_messageInfo_StreamSpecification.Merge(m, src)
}
func (m *StreamSpecification) XXX_Size() int {
	return xxx_messageInfo_StreamSpecification.Size(m)
}
func (m *StreamSpecification) XXX_DiscardUnknown() {
	xxx_messageInfo_StreamSpecification.DiscardUnknown(m)
}

var xxx_messageInfo_StreamSpecification proto.InternalMessageInfo

func (m *StreamSpecification) GetEnableStream() bool {
	if m != nil && m.EnableStream != nil {
		return *m.EnableStream
	}
	return false
}

func (m *StreamSpecification) GetExpirationTime() int32 {
	if m != nil && m.ExpirationTime != nil {
		return *m.ExpirationTime
	}
	return 0
}

func (m *StreamSpecification) GetColumnsToGet() []string {
	if m != nil {
		return m.ColumnsToGet
	}
	return nil
}

type StreamDetails struct {
	EnableStream         *bool    `protobuf:"varint,1,req,name=enable_stream,json=enableStream" json:"enable_stream,omitempty"`
	StreamId             *string  `protobuf:"bytes,2,opt,name=stream_id,json=streamId" json:"stream_id,omitempty"`
	ExpirationTime       *int32   `protobuf:"varint,3,opt,name=expiration_time,json=expirationTime" json:"expiration_time,omitempty"`
	LastEnableTime       *int64   `protobuf:"varint,4,opt,name=last_enable_time,json=lastEnableTime" json:"last_enable_time,omitempty"`
	ColumnsToGet         []string `protobuf:"bytes,5,rep,name=columns_to_get,json=columnsToGet" json:"columns_to_get,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *StreamDetails) Reset()         { *m = StreamDetails{} }
func (m *StreamDetails) String() string { return proto.CompactTextString(m) }
func (*StreamDetails) ProtoMessage()    {}
func (*StreamDetails) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{11}
}

func (m *StreamDetails) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_StreamDetails.Unmarshal(m, b)
}
func (m *StreamDetails) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_StreamDetails.Marshal(b, m, deterministic)
}
func (m *StreamDetails) XXX_Merge(src proto.Message) {
	xxx_messageInfo_StreamDetails.Merge(m, src)
}
func (m *StreamDetails) XXX_Size() int {
	return xxx_messageInfo_StreamDetails.Size(m)
}
func (m *StreamDetails) XXX_DiscardUnknown() {
	xxx_messageInfo_StreamDetails.DiscardUnknown(m)
}

var xxx_messageInfo_StreamDetails proto.InternalMessageInfo

func (m *StreamDetails) GetEnableStream() bool {
	if m != nil && m.EnableStream != nil {
		return *m.EnableStream
	}
	return false
}

func (m *StreamDetails) GetStreamId() string {
	if m != nil && m.StreamId != nil {
		return *m.StreamId
	}
	return ""
}

func (m *StreamDetails) GetExpirationTime() int32 {
	if m != nil && m.ExpirationTime != nil {
		return *m.ExpirationTime
	}
	return 0
}

func (m *StreamDetails) GetLastEnableTime() int64 {
	if m != nil && m.LastEnableTime != nil {
		return *m.LastEnableTime
	}
	return 0
}

func (m *StreamDetails) GetColumnsToGet() []string {
	if m != nil {
		return m.ColumnsToGet
	}
	return nil
}

type SSESpecification struct {
	Enable               *bool       `protobuf:"varint,1,req,name=enable" json:"enable,omitempty"`
	KeyType              *SSEKeyType `protobuf:"varint,2,opt,name=key_type,json=keyType,enum=otsprotocol.SSEKeyType" json:"key_type,omitempty"`
	KeyId                []byte      `protobuf:"bytes,3,opt,name=key_id,json=keyId" json:"key_id,omitempty"`
	RoleArn              []byte      `protobuf:"bytes,4,opt,name=role_arn,json=roleArn" json:"role_arn,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *SSESpecification) Reset()         { *m = SSESpecification{} }
func (m *SSESpecification) String() string { return proto.CompactTextString(m) }
func (*SSESpecification) ProtoMessage()    {}
func (*SSESpecification) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{12}
}

func (m *SSESpecification) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SSESpecification.Unmarshal(m, b)
}
func (m *SSESpecification) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SSESpecification.Marshal(b, m, deterministic)
}
func (m *SSESpecification) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SSESpecification.Merge(m, src)
}
func (m *SSESpecification) XXX_Size() int {
	return xxx_messageInfo_SSESpecification.Size(m)
}
func (m *SSESpecification) XXX_DiscardUnknown() {
	xxx_messageInfo_SSESpecification.DiscardUnknown(m)
}

var xxx_messageInfo_SSESpecification proto.InternalMessageInfo

func (m *SSESpecification) GetEnable() bool {
	if m != nil && m.Enable != nil {
		return *m.Enable
	}
	return false
}

func (m *SSESpecification) GetKeyType() SSEKeyType {
	if m != nil && m.KeyType != nil {
		return *m.KeyType
	}
	return SSEKeyType_SSE_KMS_SERVICE
}

func (m *SSESpecification) GetKeyId() []byte {
	if m != nil {
		return m.KeyId
	}
	return nil
}

func (m *SSESpecification) GetRoleArn() []byte {
	if m != nil {
		return m.RoleArn
	}
	return nil
}

type SSEDetails struct {
	Enable               *bool       `protobuf:"varint,1,req,name=enable" json:"enable,omitempty"`
	KeyType              *SSEKeyType `protobuf:"varint,2,opt,name=key_type,json=keyType,enum=otsprotocol.SSEKeyType" json:"key_type,omitempty"`
	KeyId                []byte      `protobuf:"bytes,3,opt,name=key_id,json=keyId" json:"key_id,omitempty"`
	RoleArn              []byte      `protobuf:"bytes,4,opt,name=role_arn,json=roleArn" json:"role_arn,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *SSEDetails) Reset()         { *m = SSEDetails{} }
func (m *SSEDetails) String() string { return proto.CompactTextString(m) }
func (*SSEDetails) ProtoMessage()    {}
func (*SSEDetails) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{13}
}

func (m *SSEDetails) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SSEDetails.Unmarshal(m, b)
}
func (m *SSEDetails) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SSEDetails.Marshal(b, m, deterministic)
}
func (m *SSEDetails) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SSEDetails.Merge(m, src)
}
func (m *SSEDetails) XXX_Size() int {
	return xxx_messageInfo_SSEDetails.Size(m)
}
func (m *SSEDetails) XXX_DiscardUnknown() {
	xxx_messageInfo_SSEDetails.DiscardUnknown(m)
}

var xxx_messageInfo_SSEDetails proto.InternalMessageInfo

func (m *SSEDetails) GetEnable() bool {
	if m != nil && m.Enable != nil {
		return *m.Enable
	}
	return false
}

func (m *SSEDetails) GetKeyType() SSEKeyType {
	if m != nil && m.KeyType != nil {
		return *m.KeyType
	}
	return SSEKeyType_SSE_KMS_SERVICE
}

func (m *SSEDetails) GetKeyId() []byte {
	if m != nil {
		return m.KeyId
	}
	return nil
}

func (m *SSEDetails) GetRoleArn() []byte {
	if m != nil {
		return m.RoleArn
	}
	return nil
}

//*
// table_meta用于存储表中不可更改的schema属性，可以更改的ReservedThroughput和TableOptions独立出来，作为UpdateTable的参数。
// 加入GlobalIndex和LocalIndex之后，结构会变为：
// message CreateTableRequest {
//         required TableMeta table_meta = 1;
//         required ReservedThroughput reserved_throughput = 2;
//         required TableOptions table_options = 3;
//         repeated LocalIndex local_indexes = 4; // LocalIndex不再单独包含ReservedThroughput和TableOptions，其与主表共享配置。
//         repeated GlobalIndex global_indexes = 5; // GlobalIndex内单独包含ReservedThroughput和TableOptions
// }
type CreateTableRequest struct {
	TableMeta            *TableMeta           `protobuf:"bytes,1,req,name=table_meta,json=tableMeta" json:"table_meta,omitempty"`
	ReservedThroughput   *ReservedThroughput  `protobuf:"bytes,2,req,name=reserved_throughput,json=reservedThroughput" json:"reserved_throughput,omitempty"`
	TableOptions         *TableOptions        `protobuf:"bytes,3,opt,name=table_options,json=tableOptions" json:"table_options,omitempty"`
	Partitions           []*PartitionRange    `protobuf:"bytes,4,rep,name=partitions" json:"partitions,omitempty"`
	StreamSpec           *StreamSpecification `protobuf:"bytes,5,opt,name=stream_spec,json=streamSpec" json:"stream_spec,omitempty"`
	SseSpec              *SSESpecification    `protobuf:"bytes,6,opt,name=sse_spec,json=sseSpec" json:"sse_spec,omitempty"`
	IndexMetas           []*IndexMeta         `protobuf:"bytes,7,rep,name=index_metas,json=indexMetas" json:"index_metas,omitempty"`
	EnableLocalTxn       *bool                `protobuf:"varint,8,opt,name=enable_local_txn,json=enableLocalTxn" json:"enable_local_txn,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *CreateTableRequest) Reset()         { *m = CreateTableRequest{} }
func (m *CreateTableRequest) String() string { return proto.CompactTextString(m) }
func (*CreateTableRequest) ProtoMessage()    {}
func (*CreateTableRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{14}
}

func (m *CreateTableRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_CreateTableRequest.Unmarshal(m, b)
}
func (m *CreateTableRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_CreateTableRequest.Marshal(b, m, deterministic)
}
func (m *CreateTableRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_CreateTableRequest.Merge(m, src)
}
func (m *CreateTableRequest) XXX_Size() int {
	return xxx_messageInfo_CreateTableRequest.Size(m)
}
func (m *CreateTableRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_CreateTableRequest.DiscardUnknown(m)
}

var xxx_messageInfo_CreateTableRequest proto.InternalMessageInfo

func (m *CreateTableRequest) GetTableMeta() *TableMeta {
	if m != nil {
		return m.TableMeta
	}
	return nil
}

func (m *CreateTableRequest) GetReservedThroughput() *ReservedThroughput {
	if m != nil {
		return m.ReservedThroughput
	}
	return nil
}

func (m *CreateTableRequest) GetTableOptions() *TableOptions {
	if m != nil {
		return m.TableOptions
	}
	return nil
}

func (m *CreateTableRequest) GetPartitions() []*PartitionRange {
	if m != nil {
		return m.Partitions
	}
	return nil
}

func (m *CreateTableRequest) GetStreamSpec() *StreamSpecification {
	if m != nil {
		return m.StreamSpec
	}
	return nil
}

func (m *CreateTableRequest) GetSseSpec() *SSESpecification {
	if m != nil {
		return m.SseSpec
	}
	return nil
}

func (m *CreateTableRequest) GetIndexMetas() []*IndexMeta {
	if m != nil {
		return m.IndexMetas
	}
	return nil
}

func (m *CreateTableRequest) GetEnableLocalTxn() bool {
	if m != nil && m.EnableLocalTxn != nil {
		return *m.EnableLocalTxn
	}
	return false
}

type CreateTableResponse struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *CreateTableResponse) Reset()         { *m = CreateTableResponse{} }
func (m *CreateTableResponse) String() string { return proto.CompactTextString(m) }
func (*CreateTableResponse) ProtoMessage()    {}
func (*CreateTableResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{15}
}

func (m *CreateTableResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_CreateTableResponse.Unmarshal(m, b)
}
func (m *CreateTableResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_CreateTableResponse.Marshal(b, m, deterministic)
}
func (m *CreateTableResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_CreateTableResponse.Merge(m, src)
}
func (m *CreateTableResponse) XXX_Size() int {
	return xxx_messageInfo_CreateTableResponse.Size(m)
}
func (m *CreateTableResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_CreateTableResponse.DiscardUnknown(m)
}

var xxx_messageInfo_CreateTableResponse proto.InternalMessageInfo

// #############################################  UpdateTable  #############################################
type UpdateTableRequest struct {
	TableName            *string              `protobuf:"bytes,1,req,name=table_name,json=tableName" json:"table_name,omitempty"`
	ReservedThroughput   *ReservedThroughput  `protobuf:"bytes,2,opt,name=reserved_throughput,json=reservedThroughput" json:"reserved_throughput,omitempty"`
	TableOptions         *TableOptions        `protobuf:"bytes,3,opt,name=table_options,json=tableOptions" json:"table_options,omitempty"`
	StreamSpec           *StreamSpecification `protobuf:"bytes,4,opt,name=stream_spec,json=streamSpec" json:"stream_spec,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *UpdateTableRequest) Reset()         { *m = UpdateTableRequest{} }
func (m *UpdateTableRequest) String() string { return proto.CompactTextString(m) }
func (*UpdateTableRequest) ProtoMessage()    {}
func (*UpdateTableRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{16}
}

func (m *UpdateTableRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_UpdateTableRequest.Unmarshal(m, b)
}
func (m *UpdateTableRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_UpdateTableRequest.Marshal(b, m, deterministic)
}
func (m *UpdateTableRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_UpdateTableRequest.Merge(m, src)
}
func (m *UpdateTableRequest) XXX_Size() int {
	return xxx_messageInfo_UpdateTableRequest.Size(m)
}
func (m *UpdateTableRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_UpdateTableRequest.DiscardUnknown(m)
}

var xxx_messageInfo_UpdateTableRequest proto.InternalMessageInfo

func (m *UpdateTableRequest) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

func (m *UpdateTableRequest) GetReservedThroughput() *ReservedThroughput {
	if m != nil {
		return m.ReservedThroughput
	}
	return nil
}

func (m *UpdateTableRequest) GetTableOptions() *TableOptions {
	if m != nil {
		return m.TableOptions
	}
	return nil
}

func (m *UpdateTableRequest) GetStreamSpec() *StreamSpecification {
	if m != nil {
		return m.StreamSpec
	}
	return nil
}

type UpdateTableResponse struct {
	ReservedThroughputDetails *ReservedThroughputDetails `protobuf:"bytes,1,req,name=reserved_throughput_details,json=reservedThroughputDetails" json:"reserved_throughput_details,omitempty"`
	TableOptions              *TableOptions              `protobuf:"bytes,2,req,name=table_options,json=tableOptions" json:"table_options,omitempty"`
	StreamDetails             *StreamDetails             `protobuf:"bytes,3,opt,name=stream_details,json=streamDetails" json:"stream_details,omitempty"`
	XXX_NoUnkeyedLiteral      struct{}                   `json:"-"`
	XXX_unrecognized          []byte                     `json:"-"`
	XXX_sizecache             int32                      `json:"-"`
}

func (m *UpdateTableResponse) Reset()         { *m = UpdateTableResponse{} }
func (m *UpdateTableResponse) String() string { return proto.CompactTextString(m) }
func (*UpdateTableResponse) ProtoMessage()    {}
func (*UpdateTableResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{17}
}

func (m *UpdateTableResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_UpdateTableResponse.Unmarshal(m, b)
}
func (m *UpdateTableResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_UpdateTableResponse.Marshal(b, m, deterministic)
}
func (m *UpdateTableResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_UpdateTableResponse.Merge(m, src)
}
func (m *UpdateTableResponse) XXX_Size() int {
	return xxx_messageInfo_UpdateTableResponse.Size(m)
}
func (m *UpdateTableResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_UpdateTableResponse.DiscardUnknown(m)
}

var xxx_messageInfo_UpdateTableResponse proto.InternalMessageInfo

func (m *UpdateTableResponse) GetReservedThroughputDetails() *ReservedThroughputDetails {
	if m != nil {
		return m.ReservedThroughputDetails
	}
	return nil
}

func (m *UpdateTableResponse) GetTableOptions() *TableOptions {
	if m != nil {
		return m.TableOptions
	}
	return nil
}

func (m *UpdateTableResponse) GetStreamDetails() *StreamDetails {
	if m != nil {
		return m.StreamDetails
	}
	return nil
}

// #############################################  DescribeTable  #############################################
type DescribeTableRequest struct {
	TableName            *string  `protobuf:"bytes,1,req,name=table_name,json=tableName" json:"table_name,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DescribeTableRequest) Reset()         { *m = DescribeTableRequest{} }
func (m *DescribeTableRequest) String() string { return proto.CompactTextString(m) }
func (*DescribeTableRequest) ProtoMessage()    {}
func (*DescribeTableRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{18}
}

func (m *DescribeTableRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DescribeTableRequest.Unmarshal(m, b)
}
func (m *DescribeTableRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DescribeTableRequest.Marshal(b, m, deterministic)
}
func (m *DescribeTableRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DescribeTableRequest.Merge(m, src)
}
func (m *DescribeTableRequest) XXX_Size() int {
	return xxx_messageInfo_DescribeTableRequest.Size(m)
}
func (m *DescribeTableRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_DescribeTableRequest.DiscardUnknown(m)
}

var xxx_messageInfo_DescribeTableRequest proto.InternalMessageInfo

func (m *DescribeTableRequest) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

type DescribeTableResponse struct {
	TableMeta                 *TableMeta                 `protobuf:"bytes,1,req,name=table_meta,json=tableMeta" json:"table_meta,omitempty"`
	ReservedThroughputDetails *ReservedThroughputDetails `protobuf:"bytes,2,req,name=reserved_throughput_details,json=reservedThroughputDetails" json:"reserved_throughput_details,omitempty"`
	TableOptions              *TableOptions              `protobuf:"bytes,3,req,name=table_options,json=tableOptions" json:"table_options,omitempty"`
	TableStatus               *TableStatus               `protobuf:"varint,4,req,name=table_status,json=tableStatus,enum=otsprotocol.TableStatus" json:"table_status,omitempty"`
	StreamDetails             *StreamDetails             `protobuf:"bytes,5,opt,name=stream_details,json=streamDetails" json:"stream_details,omitempty"`
	ShardSplits               [][]byte                   `protobuf:"bytes,6,rep,name=shard_splits,json=shardSplits" json:"shard_splits,omitempty"`
	SseDetails                *SSEDetails                `protobuf:"bytes,7,opt,name=sse_details,json=sseDetails" json:"sse_details,omitempty"`
	IndexMetas                []*IndexMeta               `protobuf:"bytes,8,rep,name=index_metas,json=indexMetas" json:"index_metas,omitempty"`
	XXX_NoUnkeyedLiteral      struct{}                   `json:"-"`
	XXX_unrecognized          []byte                     `json:"-"`
	XXX_sizecache             int32                      `json:"-"`
}

func (m *DescribeTableResponse) Reset()         { *m = DescribeTableResponse{} }
func (m *DescribeTableResponse) String() string { return proto.CompactTextString(m) }
func (*DescribeTableResponse) ProtoMessage()    {}
func (*DescribeTableResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{19}
}

func (m *DescribeTableResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DescribeTableResponse.Unmarshal(m, b)
}
func (m *DescribeTableResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DescribeTableResponse.Marshal(b, m, deterministic)
}
func (m *DescribeTableResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DescribeTableResponse.Merge(m, src)
}
func (m *DescribeTableResponse) XXX_Size() int {
	return xxx_messageInfo_DescribeTableResponse.Size(m)
}
func (m *DescribeTableResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_DescribeTableResponse.DiscardUnknown(m)
}

var xxx_messageInfo_DescribeTableResponse proto.InternalMessageInfo

func (m *DescribeTableResponse) GetTableMeta() *TableMeta {
	if m != nil {
		return m.TableMeta
	}
	return nil
}

func (m *DescribeTableResponse) GetReservedThroughputDetails() *ReservedThroughputDetails {
	if m != nil {
		return m.ReservedThroughputDetails
	}
	return nil
}

func (m *DescribeTableResponse) GetTableOptions() *TableOptions {
	if m != nil {
		return m.TableOptions
	}
	return nil
}

func (m *DescribeTableResponse) GetTableStatus() TableStatus {
	if m != nil && m.TableStatus != nil {
		return *m.TableStatus
	}
	return TableStatus_ACTIVE
}

func (m *DescribeTableResponse) GetStreamDetails() *StreamDetails {
	if m != nil {
		return m.StreamDetails
	}
	return nil
}

func (m *DescribeTableResponse) GetShardSplits() [][]byte {
	if m != nil {
		return m.ShardSplits
	}
	return nil
}

func (m *DescribeTableResponse) GetSseDetails() *SSEDetails {
	if m != nil {
		return m.SseDetails
	}
	return nil
}

func (m *DescribeTableResponse) GetIndexMetas() []*IndexMeta {
	if m != nil {
		return m.IndexMetas
	}
	return nil
}

// #############################################  ListTable  #############################################
type ListTableRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListTableRequest) Reset()         { *m = ListTableRequest{} }
func (m *ListTableRequest) String() string { return proto.CompactTextString(m) }
func (*ListTableRequest) ProtoMessage()    {}
func (*ListTableRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{20}
}

func (m *ListTableRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListTableRequest.Unmarshal(m, b)
}
func (m *ListTableRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListTableRequest.Marshal(b, m, deterministic)
}
func (m *ListTableRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListTableRequest.Merge(m, src)
}
func (m *ListTableRequest) XXX_Size() int {
	return xxx_messageInfo_ListTableRequest.Size(m)
}
func (m *ListTableRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_ListTableRequest.DiscardUnknown(m)
}

var xxx_messageInfo_ListTableRequest proto.InternalMessageInfo

//*
// 当前只返回一个简单的名称列表，需要讨论是否有业务场景需要获取除了表名之外的其他信息。
// 其他信息可以包含预留吞吐量以及表的状态，这个信息只能是一个粗略的信息，表的详细信息还是需要通过DescribeTable来获取。
type ListTableResponse struct {
	TableNames           []string `protobuf:"bytes,1,rep,name=table_names,json=tableNames" json:"table_names,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListTableResponse) Reset()         { *m = ListTableResponse{} }
func (m *ListTableResponse) String() string { return proto.CompactTextString(m) }
func (*ListTableResponse) ProtoMessage()    {}
func (*ListTableResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{21}
}

func (m *ListTableResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListTableResponse.Unmarshal(m, b)
}
func (m *ListTableResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListTableResponse.Marshal(b, m, deterministic)
}
func (m *ListTableResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListTableResponse.Merge(m, src)
}
func (m *ListTableResponse) XXX_Size() int {
	return xxx_messageInfo_ListTableResponse.Size(m)
}
func (m *ListTableResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_ListTableResponse.DiscardUnknown(m)
}

var xxx_messageInfo_ListTableResponse proto.InternalMessageInfo

func (m *ListTableResponse) GetTableNames() []string {
	if m != nil {
		return m.TableNames
	}
	return nil
}

// #############################################  DeleteTable  #############################################
type DeleteTableRequest struct {
	TableName            *string  `protobuf:"bytes,1,req,name=table_name,json=tableName" json:"table_name,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DeleteTableRequest) Reset()         { *m = DeleteTableRequest{} }
func (m *DeleteTableRequest) String() string { return proto.CompactTextString(m) }
func (*DeleteTableRequest) ProtoMessage()    {}
func (*DeleteTableRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{22}
}

func (m *DeleteTableRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DeleteTableRequest.Unmarshal(m, b)
}
func (m *DeleteTableRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DeleteTableRequest.Marshal(b, m, deterministic)
}
func (m *DeleteTableRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DeleteTableRequest.Merge(m, src)
}
func (m *DeleteTableRequest) XXX_Size() int {
	return xxx_messageInfo_DeleteTableRequest.Size(m)
}
func (m *DeleteTableRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_DeleteTableRequest.DiscardUnknown(m)
}

var xxx_messageInfo_DeleteTableRequest proto.InternalMessageInfo

func (m *DeleteTableRequest) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

type DeleteTableResponse struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DeleteTableResponse) Reset()         { *m = DeleteTableResponse{} }
func (m *DeleteTableResponse) String() string { return proto.CompactTextString(m) }
func (*DeleteTableResponse) ProtoMessage()    {}
func (*DeleteTableResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{23}
}

func (m *DeleteTableResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DeleteTableResponse.Unmarshal(m, b)
}
func (m *DeleteTableResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DeleteTableResponse.Marshal(b, m, deterministic)
}
func (m *DeleteTableResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DeleteTableResponse.Merge(m, src)
}
func (m *DeleteTableResponse) XXX_Size() int {
	return xxx_messageInfo_DeleteTableResponse.Size(m)
}
func (m *DeleteTableResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_DeleteTableResponse.DiscardUnknown(m)
}

var xxx_messageInfo_DeleteTableResponse proto.InternalMessageInfo

// #############################################  LoadTable  #############################################
type LoadTableRequest struct {
	TableName            *string  `protobuf:"bytes,1,req,name=table_name,json=tableName" json:"table_name,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *LoadTableRequest) Reset()         { *m = LoadTableRequest{} }
func (m *LoadTableRequest) String() string { return proto.CompactTextString(m) }
func (*LoadTableRequest) ProtoMessage()    {}
func (*LoadTableRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{24}
}

func (m *LoadTableRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_LoadTableRequest.Unmarshal(m, b)
}
func (m *LoadTableRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_LoadTableRequest.Marshal(b, m, deterministic)
}
func (m *LoadTableRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_LoadTableRequest.Merge(m, src)
}
func (m *LoadTableRequest) XXX_Size() int {
	return xxx_messageInfo_LoadTableRequest.Size(m)
}
func (m *LoadTableRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_LoadTableRequest.DiscardUnknown(m)
}

var xxx_messageInfo_LoadTableRequest proto.InternalMessageInfo

func (m *LoadTableRequest) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

type LoadTableResponse struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *LoadTableResponse) Reset()         { *m = LoadTableResponse{} }
func (m *LoadTableResponse) String() string { return proto.CompactTextString(m) }
func (*LoadTableResponse) ProtoMessage()    {}
func (*LoadTableResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{25}
}

func (m *LoadTableResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_LoadTableResponse.Unmarshal(m, b)
}
func (m *LoadTableResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_LoadTableResponse.Marshal(b, m, deterministic)
}
func (m *LoadTableResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_LoadTableResponse.Merge(m, src)
}
func (m *LoadTableResponse) XXX_Size() int {
	return xxx_messageInfo_LoadTableResponse.Size(m)
}
func (m *LoadTableResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_LoadTableResponse.DiscardUnknown(m)
}

var xxx_messageInfo_LoadTableResponse proto.InternalMessageInfo

// #############################################  UnloadTable  #############################################
type UnloadTableRequest struct {
	TableName            *string  `protobuf:"bytes,1,req,name=table_name,json=tableName" json:"table_name,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *UnloadTableRequest) Reset()         { *m = UnloadTableRequest{} }
func (m *UnloadTableRequest) String() string { return proto.CompactTextString(m) }
func (*UnloadTableRequest) ProtoMessage()    {}
func (*UnloadTableRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{26}
}

func (m *UnloadTableRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_UnloadTableRequest.Unmarshal(m, b)
}
func (m *UnloadTableRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_UnloadTableRequest.Marshal(b, m, deterministic)
}
func (m *UnloadTableRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_UnloadTableRequest.Merge(m, src)
}
func (m *UnloadTableRequest) XXX_Size() int {
	return xxx_messageInfo_UnloadTableRequest.Size(m)
}
func (m *UnloadTableRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_UnloadTableRequest.DiscardUnknown(m)
}

var xxx_messageInfo_UnloadTableRequest proto.InternalMessageInfo

func (m *UnloadTableRequest) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

type UnloadTableResponse struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *UnloadTableResponse) Reset()         { *m = UnloadTableResponse{} }
func (m *UnloadTableResponse) String() string { return proto.CompactTextString(m) }
func (*UnloadTableResponse) ProtoMessage()    {}
func (*UnloadTableResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{27}
}

func (m *UnloadTableResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_UnloadTableResponse.Unmarshal(m, b)
}
func (m *UnloadTableResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_UnloadTableResponse.Marshal(b, m, deterministic)
}
func (m *UnloadTableResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_UnloadTableResponse.Merge(m, src)
}
func (m *UnloadTableResponse) XXX_Size() int {
	return xxx_messageInfo_UnloadTableResponse.Size(m)
}
func (m *UnloadTableResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_UnloadTableResponse.DiscardUnknown(m)
}

var xxx_messageInfo_UnloadTableResponse proto.InternalMessageInfo

//*
// 时间戳的取值最小值为0，最大值为INT64.MAX
// 1. 若要查询一个范围，则指定start_time和end_time
// 2. 若要查询一个特定时间戳，则指定specific_time
type TimeRange struct {
	StartTime            *int64   `protobuf:"varint,1,opt,name=start_time,json=startTime" json:"start_time,omitempty"`
	EndTime              *int64   `protobuf:"varint,2,opt,name=end_time,json=endTime" json:"end_time,omitempty"`
	SpecificTime         *int64   `protobuf:"varint,3,opt,name=specific_time,json=specificTime" json:"specific_time,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *TimeRange) Reset()         { *m = TimeRange{} }
func (m *TimeRange) String() string { return proto.CompactTextString(m) }
func (*TimeRange) ProtoMessage()    {}
func (*TimeRange) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{28}
}

func (m *TimeRange) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_TimeRange.Unmarshal(m, b)
}
func (m *TimeRange) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_TimeRange.Marshal(b, m, deterministic)
}
func (m *TimeRange) XXX_Merge(src proto.Message) {
	xxx_messageInfo_TimeRange.Merge(m, src)
}
func (m *TimeRange) XXX_Size() int {
	return xxx_messageInfo_TimeRange.Size(m)
}
func (m *TimeRange) XXX_DiscardUnknown() {
	xxx_messageInfo_TimeRange.DiscardUnknown(m)
}

var xxx_messageInfo_TimeRange proto.InternalMessageInfo

func (m *TimeRange) GetStartTime() int64 {
	if m != nil && m.StartTime != nil {
		return *m.StartTime
	}
	return 0
}

func (m *TimeRange) GetEndTime() int64 {
	if m != nil && m.EndTime != nil {
		return *m.EndTime
	}
	return 0
}

func (m *TimeRange) GetSpecificTime() int64 {
	if m != nil && m.SpecificTime != nil {
		return *m.SpecificTime
	}
	return 0
}

type ReturnContent struct {
	ReturnType           *ReturnType `protobuf:"varint,1,opt,name=return_type,json=returnType,enum=otsprotocol.ReturnType" json:"return_type,omitempty"`
	ReturnColumnNames    []string    `protobuf:"bytes,2,rep,name=return_column_names,json=returnColumnNames" json:"return_column_names,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *ReturnContent) Reset()         { *m = ReturnContent{} }
func (m *ReturnContent) String() string { return proto.CompactTextString(m) }
func (*ReturnContent) ProtoMessage()    {}
func (*ReturnContent) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{29}
}

func (m *ReturnContent) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ReturnContent.Unmarshal(m, b)
}
func (m *ReturnContent) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ReturnContent.Marshal(b, m, deterministic)
}
func (m *ReturnContent) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ReturnContent.Merge(m, src)
}
func (m *ReturnContent) XXX_Size() int {
	return xxx_messageInfo_ReturnContent.Size(m)
}
func (m *ReturnContent) XXX_DiscardUnknown() {
	xxx_messageInfo_ReturnContent.DiscardUnknown(m)
}

var xxx_messageInfo_ReturnContent proto.InternalMessageInfo

func (m *ReturnContent) GetReturnType() ReturnType {
	if m != nil && m.ReturnType != nil {
		return *m.ReturnType
	}
	return ReturnType_RT_NONE
}

func (m *ReturnContent) GetReturnColumnNames() []string {
	if m != nil {
		return m.ReturnColumnNames
	}
	return nil
}

//*
// 1. 支持用户指定版本时间戳范围或者特定的版本时间来读取指定版本的列
// 2. 目前暂不支持行内的断点
type GetRowRequest struct {
	TableName            *string    `protobuf:"bytes,1,req,name=table_name,json=tableName" json:"table_name,omitempty"`
	PrimaryKey           []byte     `protobuf:"bytes,2,req,name=primary_key,json=primaryKey" json:"primary_key,omitempty"`
	ColumnsToGet         []string   `protobuf:"bytes,3,rep,name=columns_to_get,json=columnsToGet" json:"columns_to_get,omitempty"`
	TimeRange            *TimeRange `protobuf:"bytes,4,opt,name=time_range,json=timeRange" json:"time_range,omitempty"`
	MaxVersions          *int32     `protobuf:"varint,5,opt,name=max_versions,json=maxVersions" json:"max_versions,omitempty"`
	CacheBlocks          *bool      `protobuf:"varint,6,opt,name=cache_blocks,json=cacheBlocks,def=1" json:"cache_blocks,omitempty"`
	Filter               []byte     `protobuf:"bytes,7,opt,name=filter" json:"filter,omitempty"`
	StartColumn          *string    `protobuf:"bytes,8,opt,name=start_column,json=startColumn" json:"start_column,omitempty"`
	EndColumn            *string    `protobuf:"bytes,9,opt,name=end_column,json=endColumn" json:"end_column,omitempty"`
	Token                []byte     `protobuf:"bytes,10,opt,name=token" json:"token,omitempty"`
	TransactionId        *string    `protobuf:"bytes,11,opt,name=transaction_id,json=transactionId" json:"transaction_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

func (m *GetRowRequest) Reset()         { *m = GetRowRequest{} }
func (m *GetRowRequest) String() string { return proto.CompactTextString(m) }
func (*GetRowRequest) ProtoMessage()    {}
func (*GetRowRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{30}
}

func (m *GetRowRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetRowRequest.Unmarshal(m, b)
}
func (m *GetRowRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetRowRequest.Marshal(b, m, deterministic)
}
func (m *GetRowRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetRowRequest.Merge(m, src)
}
func (m *GetRowRequest) XXX_Size() int {
	return xxx_messageInfo_GetRowRequest.Size(m)
}
func (m *GetRowRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_GetRowRequest.DiscardUnknown(m)
}

var xxx_messageInfo_GetRowRequest proto.InternalMessageInfo

const Default_GetRowRequest_CacheBlocks bool = true

func (m *GetRowRequest) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

func (m *GetRowRequest) GetPrimaryKey() []byte {
	if m != nil {
		return m.PrimaryKey
	}
	return nil
}

func (m *GetRowRequest) GetColumnsToGet() []string {
	if m != nil {
		return m.ColumnsToGet
	}
	return nil
}

func (m *GetRowRequest) GetTimeRange() *TimeRange {
	if m != nil {
		return m.TimeRange
	}
	return nil
}

func (m *GetRowRequest) GetMaxVersions() int32 {
	if m != nil && m.MaxVersions != nil {
		return *m.MaxVersions
	}
	return 0
}

func (m *GetRowRequest) GetCacheBlocks() bool {
	if m != nil && m.CacheBlocks != nil {
		return *m.CacheBlocks
	}
	return Default_GetRowRequest_CacheBlocks
}

func (m *GetRowRequest) GetFilter() []byte {
	if m != nil {
		return m.Filter
	}
	return nil
}

func (m *GetRowRequest) GetStartColumn() string {
	if m != nil && m.StartColumn != nil {
		return *m.StartColumn
	}
	return ""
}

func (m *GetRowRequest) GetEndColumn() string {
	if m != nil && m.EndColumn != nil {
		return *m.EndColumn
	}
	return ""
}

func (m *GetRowRequest) GetToken() []byte {
	if m != nil {
		return m.Token
	}
	return nil
}

func (m *GetRowRequest) GetTransactionId() string {
	if m != nil && m.TransactionId != nil {
		return *m.TransactionId
	}
	return ""
}

type GetRowResponse struct {
	Consumed             *ConsumedCapacity `protobuf:"bytes,1,req,name=consumed" json:"consumed,omitempty"`
	Row                  []byte            `protobuf:"bytes,2,req,name=row" json:"row,omitempty"`
	NextToken            []byte            `protobuf:"bytes,3,opt,name=next_token,json=nextToken" json:"next_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *GetRowResponse) Reset()         { *m = GetRowResponse{} }
func (m *GetRowResponse) String() string { return proto.CompactTextString(m) }
func (*GetRowResponse) ProtoMessage()    {}
func (*GetRowResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{31}
}

func (m *GetRowResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetRowResponse.Unmarshal(m, b)
}
func (m *GetRowResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetRowResponse.Marshal(b, m, deterministic)
}
func (m *GetRowResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetRowResponse.Merge(m, src)
}
func (m *GetRowResponse) XXX_Size() int {
	return xxx_messageInfo_GetRowResponse.Size(m)
}
func (m *GetRowResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_GetRowResponse.DiscardUnknown(m)
}

var xxx_messageInfo_GetRowResponse proto.InternalMessageInfo

func (m *GetRowResponse) GetConsumed() *ConsumedCapacity {
	if m != nil {
		return m.Consumed
	}
	return nil
}

func (m *GetRowResponse) GetRow() []byte {
	if m != nil {
		return m.Row
	}
	return nil
}

func (m *GetRowResponse) GetNextToken() []byte {
	if m != nil {
		return m.NextToken
	}
	return nil
}

// #############################################  UpdateRow  #############################################
type UpdateRowRequest struct {
	TableName            *string        `protobuf:"bytes,1,req,name=table_name,json=tableName" json:"table_name,omitempty"`
	RowChange            []byte         `protobuf:"bytes,2,req,name=row_change,json=rowChange" json:"row_change,omitempty"`
	Condition            *Condition     `protobuf:"bytes,3,req,name=condition" json:"condition,omitempty"`
	ReturnContent        *ReturnContent `protobuf:"bytes,4,opt,name=return_content,json=returnContent" json:"return_content,omitempty"`
	TransactionId        *string        `protobuf:"bytes,5,opt,name=transaction_id,json=transactionId" json:"transaction_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
	XXX_unrecognized     []byte         `json:"-"`
	XXX_sizecache        int32          `json:"-"`
}

func (m *UpdateRowRequest) Reset()         { *m = UpdateRowRequest{} }
func (m *UpdateRowRequest) String() string { return proto.CompactTextString(m) }
func (*UpdateRowRequest) ProtoMessage()    {}
func (*UpdateRowRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{32}
}

func (m *UpdateRowRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_UpdateRowRequest.Unmarshal(m, b)
}
func (m *UpdateRowRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_UpdateRowRequest.Marshal(b, m, deterministic)
}
func (m *UpdateRowRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_UpdateRowRequest.Merge(m, src)
}
func (m *UpdateRowRequest) XXX_Size() int {
	return xxx_messageInfo_UpdateRowRequest.Size(m)
}
func (m *UpdateRowRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_UpdateRowRequest.DiscardUnknown(m)
}

var xxx_messageInfo_UpdateRowRequest proto.InternalMessageInfo

func (m *UpdateRowRequest) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

func (m *UpdateRowRequest) GetRowChange() []byte {
	if m != nil {
		return m.RowChange
	}
	return nil
}

func (m *UpdateRowRequest) GetCondition() *Condition {
	if m != nil {
		return m.Condition
	}
	return nil
}

func (m *UpdateRowRequest) GetReturnContent() *ReturnContent {
	if m != nil {
		return m.ReturnContent
	}
	return nil
}

func (m *UpdateRowRequest) GetTransactionId() string {
	if m != nil && m.TransactionId != nil {
		return *m.TransactionId
	}
	return ""
}

type UpdateRowResponse struct {
	Consumed             *ConsumedCapacity `protobuf:"bytes,1,req,name=consumed" json:"consumed,omitempty"`
	Row                  []byte            `protobuf:"bytes,2,opt,name=row" json:"row,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *UpdateRowResponse) Reset()         { *m = UpdateRowResponse{} }
func (m *UpdateRowResponse) String() string { return proto.CompactTextString(m) }
func (*UpdateRowResponse) ProtoMessage()    {}
func (*UpdateRowResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{33}
}

func (m *UpdateRowResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_UpdateRowResponse.Unmarshal(m, b)
}
func (m *UpdateRowResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_UpdateRowResponse.Marshal(b, m, deterministic)
}
func (m *UpdateRowResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_UpdateRowResponse.Merge(m, src)
}
func (m *UpdateRowResponse) XXX_Size() int {
	return xxx_messageInfo_UpdateRowResponse.Size(m)
}
func (m *UpdateRowResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_UpdateRowResponse.DiscardUnknown(m)
}

var xxx_messageInfo_UpdateRowResponse proto.InternalMessageInfo

func (m *UpdateRowResponse) GetConsumed() *ConsumedCapacity {
	if m != nil {
		return m.Consumed
	}
	return nil
}

func (m *UpdateRowResponse) GetRow() []byte {
	if m != nil {
		return m.Row
	}
	return nil
}

//*
// 这里允许用户为每列单独设置timestamp，而不是强制整行统一一个timestamp。
// 原因是列都是用统一的结构，该结构本身是带timestamp的，其次强制统一timestamp增强了规范性但是丧失了灵活性，且该规范性没有明显的好处，反而带来了结构的复杂。
type PutRowRequest struct {
	TableName            *string        `protobuf:"bytes,1,req,name=table_name,json=tableName" json:"table_name,omitempty"`
	Row                  []byte         `protobuf:"bytes,2,req,name=row" json:"row,omitempty"`
	Condition            *Condition     `protobuf:"bytes,3,req,name=condition" json:"condition,omitempty"`
	ReturnContent        *ReturnContent `protobuf:"bytes,4,opt,name=return_content,json=returnContent" json:"return_content,omitempty"`
	TransactionId        *string        `protobuf:"bytes,5,opt,name=transaction_id,json=transactionId" json:"transaction_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
	XXX_unrecognized     []byte         `json:"-"`
	XXX_sizecache        int32          `json:"-"`
}

func (m *PutRowRequest) Reset()         { *m = PutRowRequest{} }
func (m *PutRowRequest) String() string { return proto.CompactTextString(m) }
func (*PutRowRequest) ProtoMessage()    {}
func (*PutRowRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{34}
}

func (m *PutRowRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PutRowRequest.Unmarshal(m, b)
}
func (m *PutRowRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PutRowRequest.Marshal(b, m, deterministic)
}
func (m *PutRowRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PutRowRequest.Merge(m, src)
}
func (m *PutRowRequest) XXX_Size() int {
	return xxx_messageInfo_PutRowRequest.Size(m)
}
func (m *PutRowRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_PutRowRequest.DiscardUnknown(m)
}

var xxx_messageInfo_PutRowRequest proto.InternalMessageInfo

func (m *PutRowRequest) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

func (m *PutRowRequest) GetRow() []byte {
	if m != nil {
		return m.Row
	}
	return nil
}

func (m *PutRowRequest) GetCondition() *Condition {
	if m != nil {
		return m.Condition
	}
	return nil
}

func (m *PutRowRequest) GetReturnContent() *ReturnContent {
	if m != nil {
		return m.ReturnContent
	}
	return nil
}

func (m *PutRowRequest) GetTransactionId() string {
	if m != nil && m.TransactionId != nil {
		return *m.TransactionId
	}
	return ""
}

type PutRowResponse struct {
	Consumed             *ConsumedCapacity `protobuf:"bytes,1,req,name=consumed" json:"consumed,omitempty"`
	Row                  []byte            `protobuf:"bytes,2,opt,name=row" json:"row,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *PutRowResponse) Reset()         { *m = PutRowResponse{} }
func (m *PutRowResponse) String() string { return proto.CompactTextString(m) }
func (*PutRowResponse) ProtoMessage()    {}
func (*PutRowResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{35}
}

func (m *PutRowResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PutRowResponse.Unmarshal(m, b)
}
func (m *PutRowResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PutRowResponse.Marshal(b, m, deterministic)
}
func (m *PutRowResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PutRowResponse.Merge(m, src)
}
func (m *PutRowResponse) XXX_Size() int {
	return xxx_messageInfo_PutRowResponse.Size(m)
}
func (m *PutRowResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_PutRowResponse.DiscardUnknown(m)
}

var xxx_messageInfo_PutRowResponse proto.InternalMessageInfo

func (m *PutRowResponse) GetConsumed() *ConsumedCapacity {
	if m != nil {
		return m.Consumed
	}
	return nil
}

func (m *PutRowResponse) GetRow() []byte {
	if m != nil {
		return m.Row
	}
	return nil
}

//*
// OTS只支持删除该行的所有列所有版本，不支持：
//  1. 删除所有列的所有小于等于某个版本的所有版本
type DeleteRowRequest struct {
	TableName            *string        `protobuf:"bytes,1,req,name=table_name,json=tableName" json:"table_name,omitempty"`
	PrimaryKey           []byte         `protobuf:"bytes,2,req,name=primary_key,json=primaryKey" json:"primary_key,omitempty"`
	Condition            *Condition     `protobuf:"bytes,3,req,name=condition" json:"condition,omitempty"`
	ReturnContent        *ReturnContent `protobuf:"bytes,4,opt,name=return_content,json=returnContent" json:"return_content,omitempty"`
	TransactionId        *string        `protobuf:"bytes,5,opt,name=transaction_id,json=transactionId" json:"transaction_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
	XXX_unrecognized     []byte         `json:"-"`
	XXX_sizecache        int32          `json:"-"`
}

func (m *DeleteRowRequest) Reset()         { *m = DeleteRowRequest{} }
func (m *DeleteRowRequest) String() string { return proto.CompactTextString(m) }
func (*DeleteRowRequest) ProtoMessage()    {}
func (*DeleteRowRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{36}
}

func (m *DeleteRowRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DeleteRowRequest.Unmarshal(m, b)
}
func (m *DeleteRowRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DeleteRowRequest.Marshal(b, m, deterministic)
}
func (m *DeleteRowRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DeleteRowRequest.Merge(m, src)
}
func (m *DeleteRowRequest) XXX_Size() int {
	return xxx_messageInfo_DeleteRowRequest.Size(m)
}
func (m *DeleteRowRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_DeleteRowRequest.DiscardUnknown(m)
}

var xxx_messageInfo_DeleteRowRequest proto.InternalMessageInfo

func (m *DeleteRowRequest) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

func (m *DeleteRowRequest) GetPrimaryKey() []byte {
	if m != nil {
		return m.PrimaryKey
	}
	return nil
}

func (m *DeleteRowRequest) GetCondition() *Condition {
	if m != nil {
		return m.Condition
	}
	return nil
}

func (m *DeleteRowRequest) GetReturnContent() *ReturnContent {
	if m != nil {
		return m.ReturnContent
	}
	return nil
}

func (m *DeleteRowRequest) GetTransactionId() string {
	if m != nil && m.TransactionId != nil {
		return *m.TransactionId
	}
	return ""
}

type DeleteRowResponse struct {
	Consumed             *ConsumedCapacity `protobuf:"bytes,1,req,name=consumed" json:"consumed,omitempty"`
	Row                  []byte            `protobuf:"bytes,2,opt,name=row" json:"row,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *DeleteRowResponse) Reset()         { *m = DeleteRowResponse{} }
func (m *DeleteRowResponse) String() string { return proto.CompactTextString(m) }
func (*DeleteRowResponse) ProtoMessage()    {}
func (*DeleteRowResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{37}
}

func (m *DeleteRowResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DeleteRowResponse.Unmarshal(m, b)
}
func (m *DeleteRowResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DeleteRowResponse.Marshal(b, m, deterministic)
}
func (m *DeleteRowResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DeleteRowResponse.Merge(m, src)
}
func (m *DeleteRowResponse) XXX_Size() int {
	return xxx_messageInfo_DeleteRowResponse.Size(m)
}
func (m *DeleteRowResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_DeleteRowResponse.DiscardUnknown(m)
}

var xxx_messageInfo_DeleteRowResponse proto.InternalMessageInfo

func (m *DeleteRowResponse) GetConsumed() *ConsumedCapacity {
	if m != nil {
		return m.Consumed
	}
	return nil
}

func (m *DeleteRowResponse) GetRow() []byte {
	if m != nil {
		return m.Row
	}
	return nil
}

//*
// HBase支持Batch操作的每行都拥有不同的查询参数，OTS不支持。
type TableInBatchGetRowRequest struct {
	TableName            *string    `protobuf:"bytes,1,req,name=table_name,json=tableName" json:"table_name,omitempty"`
	PrimaryKey           [][]byte   `protobuf:"bytes,2,rep,name=primary_key,json=primaryKey" json:"primary_key,omitempty"`
	Token                [][]byte   `protobuf:"bytes,3,rep,name=token" json:"token,omitempty"`
	ColumnsToGet         []string   `protobuf:"bytes,4,rep,name=columns_to_get,json=columnsToGet" json:"columns_to_get,omitempty"`
	TimeRange            *TimeRange `protobuf:"bytes,5,opt,name=time_range,json=timeRange" json:"time_range,omitempty"`
	MaxVersions          *int32     `protobuf:"varint,6,opt,name=max_versions,json=maxVersions" json:"max_versions,omitempty"`
	CacheBlocks          *bool      `protobuf:"varint,7,opt,name=cache_blocks,json=cacheBlocks,def=1" json:"cache_blocks,omitempty"`
	Filter               []byte     `protobuf:"bytes,8,opt,name=filter" json:"filter,omitempty"`
	StartColumn          *string    `protobuf:"bytes,9,opt,name=start_column,json=startColumn" json:"start_column,omitempty"`
	EndColumn            *string    `protobuf:"bytes,10,opt,name=end_column,json=endColumn" json:"end_column,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

func (m *TableInBatchGetRowRequest) Reset()         { *m = TableInBatchGetRowRequest{} }
func (m *TableInBatchGetRowRequest) String() string { return proto.CompactTextString(m) }
func (*TableInBatchGetRowRequest) ProtoMessage()    {}
func (*TableInBatchGetRowRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{38}
}

func (m *TableInBatchGetRowRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_TableInBatchGetRowRequest.Unmarshal(m, b)
}
func (m *TableInBatchGetRowRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_TableInBatchGetRowRequest.Marshal(b, m, deterministic)
}
func (m *TableInBatchGetRowRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_TableInBatchGetRowRequest.Merge(m, src)
}
func (m *TableInBatchGetRowRequest) XXX_Size() int {
	return xxx_messageInfo_TableInBatchGetRowRequest.Size(m)
}
func (m *TableInBatchGetRowRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_TableInBatchGetRowRequest.DiscardUnknown(m)
}

var xxx_messageInfo_TableInBatchGetRowRequest proto.InternalMessageInfo

const Default_TableInBatchGetRowRequest_CacheBlocks bool = true

func (m *TableInBatchGetRowRequest) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

func (m *TableInBatchGetRowRequest) GetPrimaryKey() [][]byte {
	if m != nil {
		return m.PrimaryKey
	}
	return nil
}

func (m *TableInBatchGetRowRequest) GetToken() [][]byte {
	if m != nil {
		return m.Token
	}
	return nil
}

func (m *TableInBatchGetRowRequest) GetColumnsToGet() []string {
	if m != nil {
		return m.ColumnsToGet
	}
	return nil
}

func (m *TableInBatchGetRowRequest) GetTimeRange() *TimeRange {
	if m != nil {
		return m.TimeRange
	}
	return nil
}

func (m *TableInBatchGetRowRequest) GetMaxVersions() int32 {
	if m != nil && m.MaxVersions != nil {
		return *m.MaxVersions
	}
	return 0
}

func (m *TableInBatchGetRowRequest) GetCacheBlocks() bool {
	if m != nil && m.CacheBlocks != nil {
		return *m.CacheBlocks
	}
	return Default_TableInBatchGetRowRequest_CacheBlocks
}

func (m *TableInBatchGetRowRequest) GetFilter() []byte {
	if m != nil {
		return m.Filter
	}
	return nil
}

func (m *TableInBatchGetRowRequest) GetStartColumn() string {
	if m != nil && m.StartColumn != nil {
		return *m.StartColumn
	}
	return ""
}

func (m *TableInBatchGetRowRequest) GetEndColumn() string {
	if m != nil && m.EndColumn != nil {
		return *m.EndColumn
	}
	return ""
}

type BatchGetRowRequest struct {
	Tables               []*TableInBatchGetRowRequest `protobuf:"bytes,1,rep,name=tables" json:"tables,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                     `json:"-"`
	XXX_unrecognized     []byte                       `json:"-"`
	XXX_sizecache        int32                        `json:"-"`
}

func (m *BatchGetRowRequest) Reset()         { *m = BatchGetRowRequest{} }
func (m *BatchGetRowRequest) String() string { return proto.CompactTextString(m) }
func (*BatchGetRowRequest) ProtoMessage()    {}
func (*BatchGetRowRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{39}
}

func (m *BatchGetRowRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_BatchGetRowRequest.Unmarshal(m, b)
}
func (m *BatchGetRowRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_BatchGetRowRequest.Marshal(b, m, deterministic)
}
func (m *BatchGetRowRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_BatchGetRowRequest.Merge(m, src)
}
func (m *BatchGetRowRequest) XXX_Size() int {
	return xxx_messageInfo_BatchGetRowRequest.Size(m)
}
func (m *BatchGetRowRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_BatchGetRowRequest.DiscardUnknown(m)
}

var xxx_messageInfo_BatchGetRowRequest proto.InternalMessageInfo

func (m *BatchGetRowRequest) GetTables() []*TableInBatchGetRowRequest {
	if m != nil {
		return m.Tables
	}
	return nil
}

type RowInBatchGetRowResponse struct {
	IsOk                 *bool             `protobuf:"varint,1,req,name=is_ok,json=isOk" json:"is_ok,omitempty"`
	Error                *Error            `protobuf:"bytes,2,opt,name=error" json:"error,omitempty"`
	Consumed             *ConsumedCapacity `protobuf:"bytes,3,opt,name=consumed" json:"consumed,omitempty"`
	Row                  []byte            `protobuf:"bytes,4,opt,name=row" json:"row,omitempty"`
	NextToken            []byte            `protobuf:"bytes,5,opt,name=next_token,json=nextToken" json:"next_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *RowInBatchGetRowResponse) Reset()         { *m = RowInBatchGetRowResponse{} }
func (m *RowInBatchGetRowResponse) String() string { return proto.CompactTextString(m) }
func (*RowInBatchGetRowResponse) ProtoMessage()    {}
func (*RowInBatchGetRowResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{40}
}

func (m *RowInBatchGetRowResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_RowInBatchGetRowResponse.Unmarshal(m, b)
}
func (m *RowInBatchGetRowResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_RowInBatchGetRowResponse.Marshal(b, m, deterministic)
}
func (m *RowInBatchGetRowResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_RowInBatchGetRowResponse.Merge(m, src)
}
func (m *RowInBatchGetRowResponse) XXX_Size() int {
	return xxx_messageInfo_RowInBatchGetRowResponse.Size(m)
}
func (m *RowInBatchGetRowResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_RowInBatchGetRowResponse.DiscardUnknown(m)
}

var xxx_messageInfo_RowInBatchGetRowResponse proto.InternalMessageInfo

func (m *RowInBatchGetRowResponse) GetIsOk() bool {
	if m != nil && m.IsOk != nil {
		return *m.IsOk
	}
	return false
}

func (m *RowInBatchGetRowResponse) GetError() *Error {
	if m != nil {
		return m.Error
	}
	return nil
}

func (m *RowInBatchGetRowResponse) GetConsumed() *ConsumedCapacity {
	if m != nil {
		return m.Consumed
	}
	return nil
}

func (m *RowInBatchGetRowResponse) GetRow() []byte {
	if m != nil {
		return m.Row
	}
	return nil
}

func (m *RowInBatchGetRowResponse) GetNextToken() []byte {
	if m != nil {
		return m.NextToken
	}
	return nil
}

type TableInBatchGetRowResponse struct {
	TableName            *string                     `protobuf:"bytes,1,req,name=table_name,json=tableName" json:"table_name,omitempty"`
	Rows                 []*RowInBatchGetRowResponse `protobuf:"bytes,2,rep,name=rows" json:"rows,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                    `json:"-"`
	XXX_unrecognized     []byte                      `json:"-"`
	XXX_sizecache        int32                       `json:"-"`
}

func (m *TableInBatchGetRowResponse) Reset()         { *m = TableInBatchGetRowResponse{} }
func (m *TableInBatchGetRowResponse) String() string { return proto.CompactTextString(m) }
func (*TableInBatchGetRowResponse) ProtoMessage()    {}
func (*TableInBatchGetRowResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{41}
}

func (m *TableInBatchGetRowResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_TableInBatchGetRowResponse.Unmarshal(m, b)
}
func (m *TableInBatchGetRowResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_TableInBatchGetRowResponse.Marshal(b, m, deterministic)
}
func (m *TableInBatchGetRowResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_TableInBatchGetRowResponse.Merge(m, src)
}
func (m *TableInBatchGetRowResponse) XXX_Size() int {
	return xxx_messageInfo_TableInBatchGetRowResponse.Size(m)
}
func (m *TableInBatchGetRowResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_TableInBatchGetRowResponse.DiscardUnknown(m)
}

var xxx_messageInfo_TableInBatchGetRowResponse proto.InternalMessageInfo

func (m *TableInBatchGetRowResponse) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

func (m *TableInBatchGetRowResponse) GetRows() []*RowInBatchGetRowResponse {
	if m != nil {
		return m.Rows
	}
	return nil
}

type BatchGetRowResponse struct {
	Tables               []*TableInBatchGetRowResponse `protobuf:"bytes,1,rep,name=tables" json:"tables,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                      `json:"-"`
	XXX_unrecognized     []byte                        `json:"-"`
	XXX_sizecache        int32                         `json:"-"`
}

func (m *BatchGetRowResponse) Reset()         { *m = BatchGetRowResponse{} }
func (m *BatchGetRowResponse) String() string { return proto.CompactTextString(m) }
func (*BatchGetRowResponse) ProtoMessage()    {}
func (*BatchGetRowResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{42}
}

func (m *BatchGetRowResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_BatchGetRowResponse.Unmarshal(m, b)
}
func (m *BatchGetRowResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_BatchGetRowResponse.Marshal(b, m, deterministic)
}
func (m *BatchGetRowResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_BatchGetRowResponse.Merge(m, src)
}
func (m *BatchGetRowResponse) XXX_Size() int {
	return xxx_messageInfo_BatchGetRowResponse.Size(m)
}
func (m *BatchGetRowResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_BatchGetRowResponse.DiscardUnknown(m)
}

var xxx_messageInfo_BatchGetRowResponse proto.InternalMessageInfo

func (m *BatchGetRowResponse) GetTables() []*TableInBatchGetRowResponse {
	if m != nil {
		return m.Tables
	}
	return nil
}

type RowInBatchWriteRowRequest struct {
	Type                 *OperationType `protobuf:"varint,1,req,name=type,enum=otsprotocol.OperationType" json:"type,omitempty"`
	RowChange            []byte         `protobuf:"bytes,2,req,name=row_change,json=rowChange" json:"row_change,omitempty"`
	Condition            *Condition     `protobuf:"bytes,3,req,name=condition" json:"condition,omitempty"`
	ReturnContent        *ReturnContent `protobuf:"bytes,4,opt,name=return_content,json=returnContent" json:"return_content,omitempty"`
	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
	XXX_unrecognized     []byte         `json:"-"`
	XXX_sizecache        int32          `json:"-"`
}

func (m *RowInBatchWriteRowRequest) Reset()         { *m = RowInBatchWriteRowRequest{} }
func (m *RowInBatchWriteRowRequest) String() string { return proto.CompactTextString(m) }
func (*RowInBatchWriteRowRequest) ProtoMessage()    {}
func (*RowInBatchWriteRowRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{43}
}

func (m *RowInBatchWriteRowRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_RowInBatchWriteRowRequest.Unmarshal(m, b)
}
func (m *RowInBatchWriteRowRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_RowInBatchWriteRowRequest.Marshal(b, m, deterministic)
}
func (m *RowInBatchWriteRowRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_RowInBatchWriteRowRequest.Merge(m, src)
}
func (m *RowInBatchWriteRowRequest) XXX_Size() int {
	return xxx_messageInfo_RowInBatchWriteRowRequest.Size(m)
}
func (m *RowInBatchWriteRowRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_RowInBatchWriteRowRequest.DiscardUnknown(m)
}

var xxx_messageInfo_RowInBatchWriteRowRequest proto.InternalMessageInfo

func (m *RowInBatchWriteRowRequest) GetType() OperationType {
	if m != nil && m.Type != nil {
		return *m.Type
	}
	return OperationType_PUT
}

func (m *RowInBatchWriteRowRequest) GetRowChange() []byte {
	if m != nil {
		return m.RowChange
	}
	return nil
}

func (m *RowInBatchWriteRowRequest) GetCondition() *Condition {
	if m != nil {
		return m.Condition
	}
	return nil
}

func (m *RowInBatchWriteRowRequest) GetReturnContent() *ReturnContent {
	if m != nil {
		return m.ReturnContent
	}
	return nil
}

type TableInBatchWriteRowRequest struct {
	TableName            *string                      `protobuf:"bytes,1,req,name=table_name,json=tableName" json:"table_name,omitempty"`
	Rows                 []*RowInBatchWriteRowRequest `protobuf:"bytes,2,rep,name=rows" json:"rows,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                     `json:"-"`
	XXX_unrecognized     []byte                       `json:"-"`
	XXX_sizecache        int32                        `json:"-"`
}

func (m *TableInBatchWriteRowRequest) Reset()         { *m = TableInBatchWriteRowRequest{} }
func (m *TableInBatchWriteRowRequest) String() string { return proto.CompactTextString(m) }
func (*TableInBatchWriteRowRequest) ProtoMessage()    {}
func (*TableInBatchWriteRowRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{44}
}

func (m *TableInBatchWriteRowRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_TableInBatchWriteRowRequest.Unmarshal(m, b)
}
func (m *TableInBatchWriteRowRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_TableInBatchWriteRowRequest.Marshal(b, m, deterministic)
}
func (m *TableInBatchWriteRowRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_TableInBatchWriteRowRequest.Merge(m, src)
}
func (m *TableInBatchWriteRowRequest) XXX_Size() int {
	return xxx_messageInfo_TableInBatchWriteRowRequest.Size(m)
}
func (m *TableInBatchWriteRowRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_TableInBatchWriteRowRequest.DiscardUnknown(m)
}

var xxx_messageInfo_TableInBatchWriteRowRequest proto.InternalMessageInfo

func (m *TableInBatchWriteRowRequest) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

func (m *TableInBatchWriteRowRequest) GetRows() []*RowInBatchWriteRowRequest {
	if m != nil {
		return m.Rows
	}
	return nil
}

type BatchWriteRowRequest struct {
	Tables               []*TableInBatchWriteRowRequest `protobuf:"bytes,1,rep,name=tables" json:"tables,omitempty"`
	TransactionId        *string                        `protobuf:"bytes,2,opt,name=transaction_id,json=transactionId" json:"transaction_id,omitempty"`
	IsAtomic             *bool                          `protobuf:"varint,3,opt,name=is_atomic,json=isAtomic" json:"is_atomic,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                       `json:"-"`
	XXX_unrecognized     []byte                         `json:"-"`
	XXX_sizecache        int32                          `json:"-"`
}

func (m *BatchWriteRowRequest) Reset()         { *m = BatchWriteRowRequest{} }
func (m *BatchWriteRowRequest) String() string { return proto.CompactTextString(m) }
func (*BatchWriteRowRequest) ProtoMessage()    {}
func (*BatchWriteRowRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{45}
}

func (m *BatchWriteRowRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_BatchWriteRowRequest.Unmarshal(m, b)
}
func (m *BatchWriteRowRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_BatchWriteRowRequest.Marshal(b, m, deterministic)
}
func (m *BatchWriteRowRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_BatchWriteRowRequest.Merge(m, src)
}
func (m *BatchWriteRowRequest) XXX_Size() int {
	return xxx_messageInfo_BatchWriteRowRequest.Size(m)
}
func (m *BatchWriteRowRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_BatchWriteRowRequest.DiscardUnknown(m)
}

var xxx_messageInfo_BatchWriteRowRequest proto.InternalMessageInfo

func (m *BatchWriteRowRequest) GetTables() []*TableInBatchWriteRowRequest {
	if m != nil {
		return m.Tables
	}
	return nil
}

func (m *BatchWriteRowRequest) GetTransactionId() string {
	if m != nil && m.TransactionId != nil {
		return *m.TransactionId
	}
	return ""
}

func (m *BatchWriteRowRequest) GetIsAtomic() bool {
	if m != nil && m.IsAtomic != nil {
		return *m.IsAtomic
	}
	return false
}

type RowInBatchWriteRowResponse struct {
	IsOk                 *bool             `protobuf:"varint,1,req,name=is_ok,json=isOk" json:"is_ok,omitempty"`
	Error                *Error            `protobuf:"bytes,2,opt,name=error" json:"error,omitempty"`
	Consumed             *ConsumedCapacity `protobuf:"bytes,3,opt,name=consumed" json:"consumed,omitempty"`
	Row                  []byte            `protobuf:"bytes,4,opt,name=row" json:"row,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *RowInBatchWriteRowResponse) Reset()         { *m = RowInBatchWriteRowResponse{} }
func (m *RowInBatchWriteRowResponse) String() string { return proto.CompactTextString(m) }
func (*RowInBatchWriteRowResponse) ProtoMessage()    {}
func (*RowInBatchWriteRowResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{46}
}

func (m *RowInBatchWriteRowResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_RowInBatchWriteRowResponse.Unmarshal(m, b)
}
func (m *RowInBatchWriteRowResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_RowInBatchWriteRowResponse.Marshal(b, m, deterministic)
}
func (m *RowInBatchWriteRowResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_RowInBatchWriteRowResponse.Merge(m, src)
}
func (m *RowInBatchWriteRowResponse) XXX_Size() int {
	return xxx_messageInfo_RowInBatchWriteRowResponse.Size(m)
}
func (m *RowInBatchWriteRowResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_RowInBatchWriteRowResponse.DiscardUnknown(m)
}

var xxx_messageInfo_RowInBatchWriteRowResponse proto.InternalMessageInfo

func (m *RowInBatchWriteRowResponse) GetIsOk() bool {
	if m != nil && m.IsOk != nil {
		return *m.IsOk
	}
	return false
}

func (m *RowInBatchWriteRowResponse) GetError() *Error {
	if m != nil {
		return m.Error
	}
	return nil
}

func (m *RowInBatchWriteRowResponse) GetConsumed() *ConsumedCapacity {
	if m != nil {
		return m.Consumed
	}
	return nil
}

func (m *RowInBatchWriteRowResponse) GetRow() []byte {
	if m != nil {
		return m.Row
	}
	return nil
}

type TableInBatchWriteRowResponse struct {
	TableName            *string                       `protobuf:"bytes,1,req,name=table_name,json=tableName" json:"table_name,omitempty"`
	Rows                 []*RowInBatchWriteRowResponse `protobuf:"bytes,2,rep,name=rows" json:"rows,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                      `json:"-"`
	XXX_unrecognized     []byte                        `json:"-"`
	XXX_sizecache        int32                         `json:"-"`
}

func (m *TableInBatchWriteRowResponse) Reset()         { *m = TableInBatchWriteRowResponse{} }
func (m *TableInBatchWriteRowResponse) String() string { return proto.CompactTextString(m) }
func (*TableInBatchWriteRowResponse) ProtoMessage()    {}
func (*TableInBatchWriteRowResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{47}
}

func (m *TableInBatchWriteRowResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_TableInBatchWriteRowResponse.Unmarshal(m, b)
}
func (m *TableInBatchWriteRowResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_TableInBatchWriteRowResponse.Marshal(b, m, deterministic)
}
func (m *TableInBatchWriteRowResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_TableInBatchWriteRowResponse.Merge(m, src)
}
func (m *TableInBatchWriteRowResponse) XXX_Size() int {
	return xxx_messageInfo_TableInBatchWriteRowResponse.Size(m)
}
func (m *TableInBatchWriteRowResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_TableInBatchWriteRowResponse.DiscardUnknown(m)
}

var xxx_messageInfo_TableInBatchWriteRowResponse proto.InternalMessageInfo

func (m *TableInBatchWriteRowResponse) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

func (m *TableInBatchWriteRowResponse) GetRows() []*RowInBatchWriteRowResponse {
	if m != nil {
		return m.Rows
	}
	return nil
}

type BatchWriteRowResponse struct {
	Tables               []*TableInBatchWriteRowResponse `protobuf:"bytes,1,rep,name=tables" json:"tables,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                        `json:"-"`
	XXX_unrecognized     []byte                          `json:"-"`
	XXX_sizecache        int32                           `json:"-"`
}

func (m *BatchWriteRowResponse) Reset()         { *m = BatchWriteRowResponse{} }
func (m *BatchWriteRowResponse) String() string { return proto.CompactTextString(m) }
func (*BatchWriteRowResponse) ProtoMessage()    {}
func (*BatchWriteRowResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{48}
}

func (m *BatchWriteRowResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_BatchWriteRowResponse.Unmarshal(m, b)
}
func (m *BatchWriteRowResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_BatchWriteRowResponse.Marshal(b, m, deterministic)
}
func (m *BatchWriteRowResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_BatchWriteRowResponse.Merge(m, src)
}
func (m *BatchWriteRowResponse) XXX_Size() int {
	return xxx_messageInfo_BatchWriteRowResponse.Size(m)
}
func (m *BatchWriteRowResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_BatchWriteRowResponse.DiscardUnknown(m)
}

var xxx_messageInfo_BatchWriteRowResponse proto.InternalMessageInfo

func (m *BatchWriteRowResponse) GetTables() []*TableInBatchWriteRowResponse {
	if m != nil {
		return m.Tables
	}
	return nil
}

//*
// HBase支持以下参数：
//     1. TimeRange或指定time
//     2. Filter（根据列值或列名来过滤）
// 我们只支持给同版本的选择条件。
type GetRangeRequest struct {
	TableName                *string        `protobuf:"bytes,1,req,name=table_name,json=tableName" json:"table_name,omitempty"`
	Direction                *Direction     `protobuf:"varint,2,req,name=direction,enum=otsprotocol.Direction" json:"direction,omitempty"`
	ColumnsToGet             []string       `protobuf:"bytes,3,rep,name=columns_to_get,json=columnsToGet" json:"columns_to_get,omitempty"`
	TimeRange                *TimeRange     `protobuf:"bytes,4,opt,name=time_range,json=timeRange" json:"time_range,omitempty"`
	MaxVersions              *int32         `protobuf:"varint,5,opt,name=max_versions,json=maxVersions" json:"max_versions,omitempty"`
	Limit                    *int32         `protobuf:"varint,6,opt,name=limit" json:"limit,omitempty"`
	InclusiveStartPrimaryKey []byte         `protobuf:"bytes,7,req,name=inclusive_start_primary_key,json=inclusiveStartPrimaryKey" json:"inclusive_start_primary_key,omitempty"`
	ExclusiveEndPrimaryKey   []byte         `protobuf:"bytes,8,req,name=exclusive_end_primary_key,json=exclusiveEndPrimaryKey" json:"exclusive_end_primary_key,omitempty"`
	CacheBlocks              *bool          `protobuf:"varint,9,opt,name=cache_blocks,json=cacheBlocks,def=1" json:"cache_blocks,omitempty"`
	Filter                   []byte         `protobuf:"bytes,10,opt,name=filter" json:"filter,omitempty"`
	StartColumn              *string        `protobuf:"bytes,11,opt,name=start_column,json=startColumn" json:"start_column,omitempty"`
	EndColumn                *string        `protobuf:"bytes,12,opt,name=end_column,json=endColumn" json:"end_column,omitempty"`
	Token                    []byte         `protobuf:"bytes,13,opt,name=token" json:"token,omitempty"`
	TransactionId            *string        `protobuf:"bytes,14,opt,name=transaction_id,json=transactionId" json:"transaction_id,omitempty"`
	DataBlockTypeHint        *DataBlockType `protobuf:"varint,15,opt,name=data_block_type_hint,json=dataBlockTypeHint,enum=otsprotocol.DataBlockType,def=0" json:"data_block_type_hint,omitempty"`
	ReturnEntirePrimaryKeys  *bool          `protobuf:"varint,16,opt,name=return_entire_primary_keys,json=returnEntirePrimaryKeys,def=1" json:"return_entire_primary_keys,omitempty"`
	CompressTypeHint         *CompressType  `protobuf:"varint,17,opt,name=compress_type_hint,json=compressTypeHint,enum=otsprotocol.CompressType,def=0" json:"compress_type_hint,omitempty"`
	XXX_NoUnkeyedLiteral     struct{}       `json:"-"`
	XXX_unrecognized         []byte         `json:"-"`
	XXX_sizecache            int32          `json:"-"`
}

func (m *GetRangeRequest) Reset()         { *m = GetRangeRequest{} }
func (m *GetRangeRequest) String() string { return proto.CompactTextString(m) }
func (*GetRangeRequest) ProtoMessage()    {}
func (*GetRangeRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{49}
}

func (m *GetRangeRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetRangeRequest.Unmarshal(m, b)
}
func (m *GetRangeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetRangeRequest.Marshal(b, m, deterministic)
}
func (m *GetRangeRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetRangeRequest.Merge(m, src)
}
func (m *GetRangeRequest) XXX_Size() int {
	return xxx_messageInfo_GetRangeRequest.Size(m)
}
func (m *GetRangeRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_GetRangeRequest.DiscardUnknown(m)
}

var xxx_messageInfo_GetRangeRequest proto.InternalMessageInfo

const Default_GetRangeRequest_CacheBlocks bool = true
const Default_GetRangeRequest_DataBlockTypeHint DataBlockType = DataBlockType_DBT_PLAIN_BUFFER
const Default_GetRangeRequest_ReturnEntirePrimaryKeys bool = true
const Default_GetRangeRequest_CompressTypeHint CompressType = CompressType_CPT_NONE

func (m *GetRangeRequest) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

func (m *GetRangeRequest) GetDirection() Direction {
	if m != nil && m.Direction != nil {
		return *m.Direction
	}
	return Direction_FORWARD
}

func (m *GetRangeRequest) GetColumnsToGet() []string {
	if m != nil {
		return m.ColumnsToGet
	}
	return nil
}

func (m *GetRangeRequest) GetTimeRange() *TimeRange {
	if m != nil {
		return m.TimeRange
	}
	return nil
}

func (m *GetRangeRequest) GetMaxVersions() int32 {
	if m != nil && m.MaxVersions != nil {
		return *m.MaxVersions
	}
	return 0
}

func (m *GetRangeRequest) GetLimit() int32 {
	if m != nil && m.Limit != nil {
		return *m.Limit
	}
	return 0
}

func (m *GetRangeRequest) GetInclusiveStartPrimaryKey() []byte {
	if m != nil {
		return m.InclusiveStartPrimaryKey
	}
	return nil
}

func (m *GetRangeRequest) GetExclusiveEndPrimaryKey() []byte {
	if m != nil {
		return m.ExclusiveEndPrimaryKey
	}
	return nil
}

func (m *GetRangeRequest) GetCacheBlocks() bool {
	if m != nil && m.CacheBlocks != nil {
		return *m.CacheBlocks
	}
	return Default_GetRangeRequest_CacheBlocks
}

func (m *GetRangeRequest) GetFilter() []byte {
	if m != nil {
		return m.Filter
	}
	return nil
}

func (m *GetRangeRequest) GetStartColumn() string {
	if m != nil && m.StartColumn != nil {
		return *m.StartColumn
	}
	return ""
}

func (m *GetRangeRequest) GetEndColumn() string {
	if m != nil && m.EndColumn != nil {
		return *m.EndColumn
	}
	return ""
}

func (m *GetRangeRequest) GetToken() []byte {
	if m != nil {
		return m.Token
	}
	return nil
}

func (m *GetRangeRequest) GetTransactionId() string {
	if m != nil && m.TransactionId != nil {
		return *m.TransactionId
	}
	return ""
}

func (m *GetRangeRequest) GetDataBlockTypeHint() DataBlockType {
	if m != nil && m.DataBlockTypeHint != nil {
		return *m.DataBlockTypeHint
	}
	return Default_GetRangeRequest_DataBlockTypeHint
}

func (m *GetRangeRequest) GetReturnEntirePrimaryKeys() bool {
	if m != nil && m.ReturnEntirePrimaryKeys != nil {
		return *m.ReturnEntirePrimaryKeys
	}
	return Default_GetRangeRequest_ReturnEntirePrimaryKeys
}

func (m *GetRangeRequest) GetCompressTypeHint() CompressType {
	if m != nil && m.CompressTypeHint != nil {
		return *m.CompressTypeHint
	}
	return Default_GetRangeRequest_CompressTypeHint
}

type GetRangeResponse struct {
	Consumed             *ConsumedCapacity `protobuf:"bytes,1,req,name=consumed" json:"consumed,omitempty"`
	Rows                 []byte            `protobuf:"bytes,2,req,name=rows" json:"rows,omitempty"`
	NextStartPrimaryKey  []byte            `protobuf:"bytes,3,opt,name=next_start_primary_key,json=nextStartPrimaryKey" json:"next_start_primary_key,omitempty"`
	NextToken            []byte            `protobuf:"bytes,4,opt,name=next_token,json=nextToken" json:"next_token,omitempty"`
	DataBlockType        *DataBlockType    `protobuf:"varint,5,opt,name=data_block_type,json=dataBlockType,enum=otsprotocol.DataBlockType" json:"data_block_type,omitempty"`
	CompressType         *CompressType     `protobuf:"varint,6,opt,name=compress_type,json=compressType,enum=otsprotocol.CompressType" json:"compress_type,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *GetRangeResponse) Reset()         { *m = GetRangeResponse{} }
func (m *GetRangeResponse) String() string { return proto.CompactTextString(m) }
func (*GetRangeResponse) ProtoMessage()    {}
func (*GetRangeResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{50}
}

func (m *GetRangeResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetRangeResponse.Unmarshal(m, b)
}
func (m *GetRangeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetRangeResponse.Marshal(b, m, deterministic)
}
func (m *GetRangeResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetRangeResponse.Merge(m, src)
}
func (m *GetRangeResponse) XXX_Size() int {
	return xxx_messageInfo_GetRangeResponse.Size(m)
}
func (m *GetRangeResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_GetRangeResponse.DiscardUnknown(m)
}

var xxx_messageInfo_GetRangeResponse proto.InternalMessageInfo

func (m *GetRangeResponse) GetConsumed() *ConsumedCapacity {
	if m != nil {
		return m.Consumed
	}
	return nil
}

func (m *GetRangeResponse) GetRows() []byte {
	if m != nil {
		return m.Rows
	}
	return nil
}

func (m *GetRangeResponse) GetNextStartPrimaryKey() []byte {
	if m != nil {
		return m.NextStartPrimaryKey
	}
	return nil
}

func (m *GetRangeResponse) GetNextToken() []byte {
	if m != nil {
		return m.NextToken
	}
	return nil
}

func (m *GetRangeResponse) GetDataBlockType() DataBlockType {
	if m != nil && m.DataBlockType != nil {
		return *m.DataBlockType
	}
	return DataBlockType_DBT_PLAIN_BUFFER
}

func (m *GetRangeResponse) GetCompressType() CompressType {
	if m != nil && m.CompressType != nil {
		return *m.CompressType
	}
	return CompressType_CPT_NONE
}

type ListStreamRequest struct {
	TableName            *string  `protobuf:"bytes,1,opt,name=table_name,json=tableName" json:"table_name,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListStreamRequest) Reset()         { *m = ListStreamRequest{} }
func (m *ListStreamRequest) String() string { return proto.CompactTextString(m) }
func (*ListStreamRequest) ProtoMessage()    {}
func (*ListStreamRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{51}
}

func (m *ListStreamRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListStreamRequest.Unmarshal(m, b)
}
func (m *ListStreamRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListStreamRequest.Marshal(b, m, deterministic)
}
func (m *ListStreamRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListStreamRequest.Merge(m, src)
}
func (m *ListStreamRequest) XXX_Size() int {
	return xxx_messageInfo_ListStreamRequest.Size(m)
}
func (m *ListStreamRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_ListStreamRequest.DiscardUnknown(m)
}

var xxx_messageInfo_ListStreamRequest proto.InternalMessageInfo

func (m *ListStreamRequest) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

type Stream struct {
	StreamId             *string  `protobuf:"bytes,1,req,name=stream_id,json=streamId" json:"stream_id,omitempty"`
	TableName            *string  `protobuf:"bytes,2,req,name=table_name,json=tableName" json:"table_name,omitempty"`
	CreationTime         *int64   `protobuf:"varint,3,req,name=creation_time,json=creationTime" json:"creation_time,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Stream) Reset()         { *m = Stream{} }
func (m *Stream) String() string { return proto.CompactTextString(m) }
func (*Stream) ProtoMessage()    {}
func (*Stream) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{52}
}

func (m *Stream) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Stream.Unmarshal(m, b)
}
func (m *Stream) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Stream.Marshal(b, m, deterministic)
}
func (m *Stream) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Stream.Merge(m, src)
}
func (m *Stream) XXX_Size() int {
	return xxx_messageInfo_Stream.Size(m)
}
func (m *Stream) XXX_DiscardUnknown() {
	xxx_messageInfo_Stream.DiscardUnknown(m)
}

var xxx_messageInfo_Stream proto.InternalMessageInfo

func (m *Stream) GetStreamId() string {
	if m != nil && m.StreamId != nil {
		return *m.StreamId
	}
	return ""
}

func (m *Stream) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

func (m *Stream) GetCreationTime() int64 {
	if m != nil && m.CreationTime != nil {
		return *m.CreationTime
	}
	return 0
}

type ListStreamResponse struct {
	Streams              []*Stream `protobuf:"bytes,1,rep,name=streams" json:"streams,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (m *ListStreamResponse) Reset()         { *m = ListStreamResponse{} }
func (m *ListStreamResponse) String() string { return proto.CompactTextString(m) }
func (*ListStreamResponse) ProtoMessage()    {}
func (*ListStreamResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{53}
}

func (m *ListStreamResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListStreamResponse.Unmarshal(m, b)
}
func (m *ListStreamResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListStreamResponse.Marshal(b, m, deterministic)
}
func (m *ListStreamResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListStreamResponse.Merge(m, src)
}
func (m *ListStreamResponse) XXX_Size() int {
	return xxx_messageInfo_ListStreamResponse.Size(m)
}
func (m *ListStreamResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_ListStreamResponse.DiscardUnknown(m)
}

var xxx_messageInfo_ListStreamResponse proto.InternalMessageInfo

func (m *ListStreamResponse) GetStreams() []*Stream {
	if m != nil {
		return m.Streams
	}
	return nil
}

type StreamShard struct {
	ShardId              *string  `protobuf:"bytes,1,req,name=shard_id,json=shardId" json:"shard_id,omitempty"`
	ParentId             *string  `protobuf:"bytes,2,opt,name=parent_id,json=parentId" json:"parent_id,omitempty"`
	ParentSiblingId      *string  `protobuf:"bytes,3,opt,name=parent_sibling_id,json=parentSiblingId" json:"parent_sibling_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *StreamShard) Reset()         { *m = StreamShard{} }
func (m *StreamShard) String() string { return proto.CompactTextString(m) }
func (*StreamShard) ProtoMessage()    {}
func (*StreamShard) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{54}
}

func (m *StreamShard) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_StreamShard.Unmarshal(m, b)
}
func (m *StreamShard) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_StreamShard.Marshal(b, m, deterministic)
}
func (m *StreamShard) XXX_Merge(src proto.Message) {
	xxx_messageInfo_StreamShard.Merge(m, src)
}
func (m *StreamShard) XXX_Size() int {
	return xxx_messageInfo_StreamShard.Size(m)
}
func (m *StreamShard) XXX_DiscardUnknown() {
	xxx_messageInfo_StreamShard.DiscardUnknown(m)
}

var xxx_messageInfo_StreamShard proto.InternalMessageInfo

func (m *StreamShard) GetShardId() string {
	if m != nil && m.ShardId != nil {
		return *m.ShardId
	}
	return ""
}

func (m *StreamShard) GetParentId() string {
	if m != nil && m.ParentId != nil {
		return *m.ParentId
	}
	return ""
}

func (m *StreamShard) GetParentSiblingId() string {
	if m != nil && m.ParentSiblingId != nil {
		return *m.ParentSiblingId
	}
	return ""
}

type DescribeStreamRequest struct {
	StreamId              *string  `protobuf:"bytes,1,req,name=stream_id,json=streamId" json:"stream_id,omitempty"`
	InclusiveStartShardId *string  `protobuf:"bytes,2,opt,name=inclusive_start_shard_id,json=inclusiveStartShardId" json:"inclusive_start_shard_id,omitempty"`
	ShardLimit            *int32   `protobuf:"varint,3,opt,name=shard_limit,json=shardLimit" json:"shard_limit,omitempty"`
	XXX_NoUnkeyedLiteral  struct{} `json:"-"`
	XXX_unrecognized      []byte   `json:"-"`
	XXX_sizecache         int32    `json:"-"`
}

func (m *DescribeStreamRequest) Reset()         { *m = DescribeStreamRequest{} }
func (m *DescribeStreamRequest) String() string { return proto.CompactTextString(m) }
func (*DescribeStreamRequest) ProtoMessage()    {}
func (*DescribeStreamRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{55}
}

func (m *DescribeStreamRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DescribeStreamRequest.Unmarshal(m, b)
}
func (m *DescribeStreamRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DescribeStreamRequest.Marshal(b, m, deterministic)
}
func (m *DescribeStreamRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DescribeStreamRequest.Merge(m, src)
}
func (m *DescribeStreamRequest) XXX_Size() int {
	return xxx_messageInfo_DescribeStreamRequest.Size(m)
}
func (m *DescribeStreamRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_DescribeStreamRequest.DiscardUnknown(m)
}

var xxx_messageInfo_DescribeStreamRequest proto.InternalMessageInfo

func (m *DescribeStreamRequest) GetStreamId() string {
	if m != nil && m.StreamId != nil {
		return *m.StreamId
	}
	return ""
}

func (m *DescribeStreamRequest) GetInclusiveStartShardId() string {
	if m != nil && m.InclusiveStartShardId != nil {
		return *m.InclusiveStartShardId
	}
	return ""
}

func (m *DescribeStreamRequest) GetShardLimit() int32 {
	if m != nil && m.ShardLimit != nil {
		return *m.ShardLimit
	}
	return 0
}

type DescribeStreamResponse struct {
	StreamId             *string        `protobuf:"bytes,1,req,name=stream_id,json=streamId" json:"stream_id,omitempty"`
	ExpirationTime       *int32         `protobuf:"varint,2,req,name=expiration_time,json=expirationTime" json:"expiration_time,omitempty"`
	TableName            *string        `protobuf:"bytes,3,req,name=table_name,json=tableName" json:"table_name,omitempty"`
	CreationTime         *int64         `protobuf:"varint,4,req,name=creation_time,json=creationTime" json:"creation_time,omitempty"`
	StreamStatus         *StreamStatus  `protobuf:"varint,5,req,name=stream_status,json=streamStatus,enum=otsprotocol.StreamStatus" json:"stream_status,omitempty"`
	Shards               []*StreamShard `protobuf:"bytes,6,rep,name=shards" json:"shards,omitempty"`
	NextShardId          *string        `protobuf:"bytes,7,opt,name=next_shard_id,json=nextShardId" json:"next_shard_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
	XXX_unrecognized     []byte         `json:"-"`
	XXX_sizecache        int32          `json:"-"`
}

func (m *DescribeStreamResponse) Reset()         { *m = DescribeStreamResponse{} }
func (m *DescribeStreamResponse) String() string { return proto.CompactTextString(m) }
func (*DescribeStreamResponse) ProtoMessage()    {}
func (*DescribeStreamResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{56}
}

func (m *DescribeStreamResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DescribeStreamResponse.Unmarshal(m, b)
}
func (m *DescribeStreamResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DescribeStreamResponse.Marshal(b, m, deterministic)
}
func (m *DescribeStreamResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DescribeStreamResponse.Merge(m, src)
}
func (m *DescribeStreamResponse) XXX_Size() int {
	return xxx_messageInfo_DescribeStreamResponse.Size(m)
}
func (m *DescribeStreamResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_DescribeStreamResponse.DiscardUnknown(m)
}

var xxx_messageInfo_DescribeStreamResponse proto.InternalMessageInfo

func (m *DescribeStreamResponse) GetStreamId() string {
	if m != nil && m.StreamId != nil {
		return *m.StreamId
	}
	return ""
}

func (m *DescribeStreamResponse) GetExpirationTime() int32 {
	if m != nil && m.ExpirationTime != nil {
		return *m.ExpirationTime
	}
	return 0
}

func (m *DescribeStreamResponse) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

func (m *DescribeStreamResponse) GetCreationTime() int64 {
	if m != nil && m.CreationTime != nil {
		return *m.CreationTime
	}
	return 0
}

func (m *DescribeStreamResponse) GetStreamStatus() StreamStatus {
	if m != nil && m.StreamStatus != nil {
		return *m.StreamStatus
	}
	return StreamStatus_STREAM_ENABLING
}

func (m *DescribeStreamResponse) GetShards() []*StreamShard {
	if m != nil {
		return m.Shards
	}
	return nil
}

func (m *DescribeStreamResponse) GetNextShardId() string {
	if m != nil && m.NextShardId != nil {
		return *m.NextShardId
	}
	return ""
}

type GetShardIteratorRequest struct {
	StreamId             *string  `protobuf:"bytes,1,req,name=stream_id,json=streamId" json:"stream_id,omitempty"`
	ShardId              *string  `protobuf:"bytes,2,req,name=shard_id,json=shardId" json:"shard_id,omitempty"`
	Timestamp            *int64   `protobuf:"varint,3,opt,name=timestamp" json:"timestamp,omitempty"`
	Token                *string  `protobuf:"bytes,4,opt,name=token" json:"token,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetShardIteratorRequest) Reset()         { *m = GetShardIteratorRequest{} }
func (m *GetShardIteratorRequest) String() string { return proto.CompactTextString(m) }
func (*GetShardIteratorRequest) ProtoMessage()    {}
func (*GetShardIteratorRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{57}
}

func (m *GetShardIteratorRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetShardIteratorRequest.Unmarshal(m, b)
}
func (m *GetShardIteratorRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetShardIteratorRequest.Marshal(b, m, deterministic)
}
func (m *GetShardIteratorRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetShardIteratorRequest.Merge(m, src)
}
func (m *GetShardIteratorRequest) XXX_Size() int {
	return xxx_messageInfo_GetShardIteratorRequest.Size(m)
}
func (m *GetShardIteratorRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_GetShardIteratorRequest.DiscardUnknown(m)
}

var xxx_messageInfo_GetShardIteratorRequest proto.InternalMessageInfo

func (m *GetShardIteratorRequest) GetStreamId() string {
	if m != nil && m.StreamId != nil {
		return *m.StreamId
	}
	return ""
}

func (m *GetShardIteratorRequest) GetShardId() string {
	if m != nil && m.ShardId != nil {
		return *m.ShardId
	}
	return ""
}

func (m *GetShardIteratorRequest) GetTimestamp() int64 {
	if m != nil && m.Timestamp != nil {
		return *m.Timestamp
	}
	return 0
}

func (m *GetShardIteratorRequest) GetToken() string {
	if m != nil && m.Token != nil {
		return *m.Token
	}
	return ""
}

type GetShardIteratorResponse struct {
	ShardIterator        *string  `protobuf:"bytes,1,req,name=shard_iterator,json=shardIterator" json:"shard_iterator,omitempty"`
	NextToken            *string  `protobuf:"bytes,2,opt,name=next_token,json=nextToken" json:"next_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetShardIteratorResponse) Reset()         { *m = GetShardIteratorResponse{} }
func (m *GetShardIteratorResponse) String() string { return proto.CompactTextString(m) }
func (*GetShardIteratorResponse) ProtoMessage()    {}
func (*GetShardIteratorResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{58}
}

func (m *GetShardIteratorResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetShardIteratorResponse.Unmarshal(m, b)
}
func (m *GetShardIteratorResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetShardIteratorResponse.Marshal(b, m, deterministic)
}
func (m *GetShardIteratorResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetShardIteratorResponse.Merge(m, src)
}
func (m *GetShardIteratorResponse) XXX_Size() int {
	return xxx_messageInfo_GetShardIteratorResponse.Size(m)
}
func (m *GetShardIteratorResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_GetShardIteratorResponse.DiscardUnknown(m)
}

var xxx_messageInfo_GetShardIteratorResponse proto.InternalMessageInfo

func (m *GetShardIteratorResponse) GetShardIterator() string {
	if m != nil && m.ShardIterator != nil {
		return *m.ShardIterator
	}
	return ""
}

func (m *GetShardIteratorResponse) GetNextToken() string {
	if m != nil && m.NextToken != nil {
		return *m.NextToken
	}
	return ""
}

type GetStreamRecordRequest struct {
	ShardIterator        *string  `protobuf:"bytes,1,req,name=shard_iterator,json=shardIterator" json:"shard_iterator,omitempty"`
	Limit                *int32   `protobuf:"varint,2,opt,name=limit" json:"limit,omitempty"`
	TableName            *string  `protobuf:"bytes,3,opt,name=table_name,json=tableName" json:"table_name,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetStreamRecordRequest) Reset()         { *m = GetStreamRecordRequest{} }
func (m *GetStreamRecordRequest) String() string { return proto.CompactTextString(m) }
func (*GetStreamRecordRequest) ProtoMessage()    {}
func (*GetStreamRecordRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{59}
}

func (m *GetStreamRecordRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetStreamRecordRequest.Unmarshal(m, b)
}
func (m *GetStreamRecordRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetStreamRecordRequest.Marshal(b, m, deterministic)
}
func (m *GetStreamRecordRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetStreamRecordRequest.Merge(m, src)
}
func (m *GetStreamRecordRequest) XXX_Size() int {
	return xxx_messageInfo_GetStreamRecordRequest.Size(m)
}
func (m *GetStreamRecordRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_GetStreamRecordRequest.DiscardUnknown(m)
}

var xxx_messageInfo_GetStreamRecordRequest proto.InternalMessageInfo

func (m *GetStreamRecordRequest) GetShardIterator() string {
	if m != nil && m.ShardIterator != nil {
		return *m.ShardIterator
	}
	return ""
}

func (m *GetStreamRecordRequest) GetLimit() int32 {
	if m != nil && m.Limit != nil {
		return *m.Limit
	}
	return 0
}

func (m *GetStreamRecordRequest) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

type GetStreamRecordResponse struct {
	StreamRecords        []*GetStreamRecordResponse_StreamRecord `protobuf:"bytes,1,rep,name=stream_records,json=streamRecords" json:"stream_records,omitempty"`
	NextShardIterator    *string                                 `protobuf:"bytes,2,opt,name=next_shard_iterator,json=nextShardIterator" json:"next_shard_iterator,omitempty"`
	Consumed             *ConsumedCapacity                       `protobuf:"bytes,3,opt,name=consumed" json:"consumed,omitempty"`
	MayMoreRecord        *bool                                   `protobuf:"varint,4,opt,name=may_more_record,json=mayMoreRecord" json:"may_more_record,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                                `json:"-"`
	XXX_unrecognized     []byte                                  `json:"-"`
	XXX_sizecache        int32                                   `json:"-"`
}

func (m *GetStreamRecordResponse) Reset()         { *m = GetStreamRecordResponse{} }
func (m *GetStreamRecordResponse) String() string { return proto.CompactTextString(m) }
func (*GetStreamRecordResponse) ProtoMessage()    {}
func (*GetStreamRecordResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{60}
}

func (m *GetStreamRecordResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetStreamRecordResponse.Unmarshal(m, b)
}
func (m *GetStreamRecordResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetStreamRecordResponse.Marshal(b, m, deterministic)
}
func (m *GetStreamRecordResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetStreamRecordResponse.Merge(m, src)
}
func (m *GetStreamRecordResponse) XXX_Size() int {
	return xxx_messageInfo_GetStreamRecordResponse.Size(m)
}
func (m *GetStreamRecordResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_GetStreamRecordResponse.DiscardUnknown(m)
}

var xxx_messageInfo_GetStreamRecordResponse proto.InternalMessageInfo

func (m *GetStreamRecordResponse) GetStreamRecords() []*GetStreamRecordResponse_StreamRecord {
	if m != nil {
		return m.StreamRecords
	}
	return nil
}

func (m *GetStreamRecordResponse) GetNextShardIterator() string {
	if m != nil && m.NextShardIterator != nil {
		return *m.NextShardIterator
	}
	return ""
}

func (m *GetStreamRecordResponse) GetConsumed() *ConsumedCapacity {
	if m != nil {
		return m.Consumed
	}
	return nil
}

func (m *GetStreamRecordResponse) GetMayMoreRecord() bool {
	if m != nil && m.MayMoreRecord != nil {
		return *m.MayMoreRecord
	}
	return false
}

type GetStreamRecordResponse_StreamRecord struct {
	ActionType           *ActionType `protobuf:"varint,1,req,name=action_type,json=actionType,enum=otsprotocol.ActionType" json:"action_type,omitempty"`
	Record               []byte      `protobuf:"bytes,2,req,name=record" json:"record,omitempty"`
	OriginRecord         []byte      `protobuf:"bytes,3,opt,name=origin_record,json=originRecord" json:"origin_record,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *GetStreamRecordResponse_StreamRecord) Reset()         { *m = GetStreamRecordResponse_StreamRecord{} }
func (m *GetStreamRecordResponse_StreamRecord) String() string { return proto.CompactTextString(m) }
func (*GetStreamRecordResponse_StreamRecord) ProtoMessage()    {}
func (*GetStreamRecordResponse_StreamRecord) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{60, 0}
}

func (m *GetStreamRecordResponse_StreamRecord) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetStreamRecordResponse_StreamRecord.Unmarshal(m, b)
}
func (m *GetStreamRecordResponse_StreamRecord) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetStreamRecordResponse_StreamRecord.Marshal(b, m, deterministic)
}
func (m *GetStreamRecordResponse_StreamRecord) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetStreamRecordResponse_StreamRecord.Merge(m, src)
}
func (m *GetStreamRecordResponse_StreamRecord) XXX_Size() int {
	return xxx_messageInfo_GetStreamRecordResponse_StreamRecord.Size(m)
}
func (m *GetStreamRecordResponse_StreamRecord) XXX_DiscardUnknown() {
	xxx_messageInfo_GetStreamRecordResponse_StreamRecord.DiscardUnknown(m)
}

var xxx_messageInfo_GetStreamRecordResponse_StreamRecord proto.InternalMessageInfo

func (m *GetStreamRecordResponse_StreamRecord) GetActionType() ActionType {
	if m != nil && m.ActionType != nil {
		return *m.ActionType
	}
	return ActionType_PUT_ROW
}

func (m *GetStreamRecordResponse_StreamRecord) GetRecord() []byte {
	if m != nil {
		return m.Record
	}
	return nil
}

func (m *GetStreamRecordResponse_StreamRecord) GetOriginRecord() []byte {
	if m != nil {
		return m.OriginRecord
	}
	return nil
}

// +++++ ComputeSplitPointsBySize  +++++
type ComputeSplitPointsBySizeRequest struct {
	TableName            *string  `protobuf:"bytes,1,req,name=table_name,json=tableName" json:"table_name,omitempty"`
	SplitSize            *int64   `protobuf:"varint,2,req,name=split_size,json=splitSize" json:"split_size,omitempty"`
	SplitSizeUnitInByte  *int64   `protobuf:"varint,3,opt,name=split_size_unit_in_byte,json=splitSizeUnitInByte" json:"split_size_unit_in_byte,omitempty"`
	SplitPointLimit      *int32   `protobuf:"varint,4,opt,name=split_point_limit,json=splitPointLimit" json:"split_point_limit,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ComputeSplitPointsBySizeRequest) Reset()         { *m = ComputeSplitPointsBySizeRequest{} }
func (m *ComputeSplitPointsBySizeRequest) String() string { return proto.CompactTextString(m) }
func (*ComputeSplitPointsBySizeRequest) ProtoMessage()    {}
func (*ComputeSplitPointsBySizeRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{61}
}

func (m *ComputeSplitPointsBySizeRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ComputeSplitPointsBySizeRequest.Unmarshal(m, b)
}
func (m *ComputeSplitPointsBySizeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ComputeSplitPointsBySizeRequest.Marshal(b, m, deterministic)
}
func (m *ComputeSplitPointsBySizeRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ComputeSplitPointsBySizeRequest.Merge(m, src)
}
func (m *ComputeSplitPointsBySizeRequest) XXX_Size() int {
	return xxx_messageInfo_ComputeSplitPointsBySizeRequest.Size(m)
}
func (m *ComputeSplitPointsBySizeRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_ComputeSplitPointsBySizeRequest.DiscardUnknown(m)
}

var xxx_messageInfo_ComputeSplitPointsBySizeRequest proto.InternalMessageInfo

func (m *ComputeSplitPointsBySizeRequest) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

func (m *ComputeSplitPointsBySizeRequest) GetSplitSize() int64 {
	if m != nil && m.SplitSize != nil {
		return *m.SplitSize
	}
	return 0
}

func (m *ComputeSplitPointsBySizeRequest) GetSplitSizeUnitInByte() int64 {
	if m != nil && m.SplitSizeUnitInByte != nil {
		return *m.SplitSizeUnitInByte
	}
	return 0
}

func (m *ComputeSplitPointsBySizeRequest) GetSplitPointLimit() int32 {
	if m != nil && m.SplitPointLimit != nil {
		return *m.SplitPointLimit
	}
	return 0
}

type ComputeSplitPointsBySizeResponse struct {
	Consumed *ConsumedCapacity   `protobuf:"bytes,1,req,name=consumed" json:"consumed,omitempty"`
	Schema   []*PrimaryKeySchema `protobuf:"bytes,2,rep,name=schema" json:"schema,omitempty"`
	//*
	// Split points between splits, in the increasing order
	//
	// A split is a consecutive range of primary keys,
	// whose data size is about split_size specified in the request.
	// The size could be hard to be precise.
	//
	// A split point is an array of primary-key column w.r.t. table schema,
	// which is never longer than that of table schema.
	// Tailing -inf will be omitted to reduce transmission payloads.
	SplitPoints          [][]byte                                          `protobuf:"bytes,3,rep,name=split_points,json=splitPoints" json:"split_points,omitempty"`
	Locations            []*ComputeSplitPointsBySizeResponse_SplitLocation `protobuf:"bytes,4,rep,name=locations" json:"locations,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                                          `json:"-"`
	XXX_unrecognized     []byte                                            `json:"-"`
	XXX_sizecache        int32                                             `json:"-"`
}

func (m *ComputeSplitPointsBySizeResponse) Reset()         { *m = ComputeSplitPointsBySizeResponse{} }
func (m *ComputeSplitPointsBySizeResponse) String() string { return proto.CompactTextString(m) }
func (*ComputeSplitPointsBySizeResponse) ProtoMessage()    {}
func (*ComputeSplitPointsBySizeResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{62}
}

func (m *ComputeSplitPointsBySizeResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ComputeSplitPointsBySizeResponse.Unmarshal(m, b)
}
func (m *ComputeSplitPointsBySizeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ComputeSplitPointsBySizeResponse.Marshal(b, m, deterministic)
}
func (m *ComputeSplitPointsBySizeResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ComputeSplitPointsBySizeResponse.Merge(m, src)
}
func (m *ComputeSplitPointsBySizeResponse) XXX_Size() int {
	return xxx_messageInfo_ComputeSplitPointsBySizeResponse.Size(m)
}
func (m *ComputeSplitPointsBySizeResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_ComputeSplitPointsBySizeResponse.DiscardUnknown(m)
}

var xxx_messageInfo_ComputeSplitPointsBySizeResponse proto.InternalMessageInfo

func (m *ComputeSplitPointsBySizeResponse) GetConsumed() *ConsumedCapacity {
	if m != nil {
		return m.Consumed
	}
	return nil
}

func (m *ComputeSplitPointsBySizeResponse) GetSchema() []*PrimaryKeySchema {
	if m != nil {
		return m.Schema
	}
	return nil
}

func (m *ComputeSplitPointsBySizeResponse) GetSplitPoints() [][]byte {
	if m != nil {
		return m.SplitPoints
	}
	return nil
}

func (m *ComputeSplitPointsBySizeResponse) GetLocations() []*ComputeSplitPointsBySizeResponse_SplitLocation {
	if m != nil {
		return m.Locations
	}
	return nil
}

//*
// Locations where splits lies in.
//
// By the managed nature of TableStore, these locations are no more than hints.
// If a location is not suitable to be seen, an empty string will be placed.
type ComputeSplitPointsBySizeResponse_SplitLocation struct {
	Location             *string  `protobuf:"bytes,1,req,name=location" json:"location,omitempty"`
	Repeat               *int64   `protobuf:"zigzag64,2,req,name=repeat" json:"repeat,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ComputeSplitPointsBySizeResponse_SplitLocation) Reset() {
	*m = ComputeSplitPointsBySizeResponse_SplitLocation{}
}
func (m *ComputeSplitPointsBySizeResponse_SplitLocation) String() string {
	return proto.CompactTextString(m)
}
func (*ComputeSplitPointsBySizeResponse_SplitLocation) ProtoMessage() {}
func (*ComputeSplitPointsBySizeResponse_SplitLocation) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{62, 0}
}

func (m *ComputeSplitPointsBySizeResponse_SplitLocation) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ComputeSplitPointsBySizeResponse_SplitLocation.Unmarshal(m, b)
}
func (m *ComputeSplitPointsBySizeResponse_SplitLocation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ComputeSplitPointsBySizeResponse_SplitLocation.Marshal(b, m, deterministic)
}
func (m *ComputeSplitPointsBySizeResponse_SplitLocation) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ComputeSplitPointsBySizeResponse_SplitLocation.Merge(m, src)
}
func (m *ComputeSplitPointsBySizeResponse_SplitLocation) XXX_Size() int {
	return xxx_messageInfo_ComputeSplitPointsBySizeResponse_SplitLocation.Size(m)
}
func (m *ComputeSplitPointsBySizeResponse_SplitLocation) XXX_DiscardUnknown() {
	xxx_messageInfo_ComputeSplitPointsBySizeResponse_SplitLocation.DiscardUnknown(m)
}

var xxx_messageInfo_ComputeSplitPointsBySizeResponse_SplitLocation proto.InternalMessageInfo

func (m *ComputeSplitPointsBySizeResponse_SplitLocation) GetLocation() string {
	if m != nil && m.Location != nil {
		return *m.Location
	}
	return ""
}

func (m *ComputeSplitPointsBySizeResponse_SplitLocation) GetRepeat() int64 {
	if m != nil && m.Repeat != nil {
		return *m.Repeat
	}
	return 0
}

type DefinedColumnSchema struct {
	Name                 *string            `protobuf:"bytes,1,req,name=name" json:"name,omitempty"`
	Type                 *DefinedColumnType `protobuf:"varint,2,req,name=type,enum=otsprotocol.DefinedColumnType" json:"type,omitempty"`
	XXX_NoUnkeyedLiteral struct{}           `json:"-"`
	XXX_unrecognized     []byte             `json:"-"`
	XXX_sizecache        int32              `json:"-"`
}

func (m *DefinedColumnSchema) Reset()         { *m = DefinedColumnSchema{} }
func (m *DefinedColumnSchema) String() string { return proto.CompactTextString(m) }
func (*DefinedColumnSchema) ProtoMessage()    {}
func (*DefinedColumnSchema) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{63}
}

func (m *DefinedColumnSchema) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DefinedColumnSchema.Unmarshal(m, b)
}
func (m *DefinedColumnSchema) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DefinedColumnSchema.Marshal(b, m, deterministic)
}
func (m *DefinedColumnSchema) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DefinedColumnSchema.Merge(m, src)
}
func (m *DefinedColumnSchema) XXX_Size() int {
	return xxx_messageInfo_DefinedColumnSchema.Size(m)
}
func (m *DefinedColumnSchema) XXX_DiscardUnknown() {
	xxx_messageInfo_DefinedColumnSchema.DiscardUnknown(m)
}

var xxx_messageInfo_DefinedColumnSchema proto.InternalMessageInfo

func (m *DefinedColumnSchema) GetName() string {
	if m != nil && m.Name != nil {
		return *m.Name
	}
	return ""
}

func (m *DefinedColumnSchema) GetType() DefinedColumnType {
	if m != nil && m.Type != nil {
		return *m.Type
	}
	return DefinedColumnType_DCT_INTEGER
}

type IndexMeta struct {
	Name                 *string          `protobuf:"bytes,1,req,name=name" json:"name,omitempty"`
	PrimaryKey           []string         `protobuf:"bytes,2,rep,name=primary_key,json=primaryKey" json:"primary_key,omitempty"`
	DefinedColumn        []string         `protobuf:"bytes,3,rep,name=defined_column,json=definedColumn" json:"defined_column,omitempty"`
	IndexUpdateMode      *IndexUpdateMode `protobuf:"varint,4,req,name=index_update_mode,json=indexUpdateMode,enum=otsprotocol.IndexUpdateMode" json:"index_update_mode,omitempty"`
	IndexType            *IndexType       `protobuf:"varint,5,req,name=index_type,json=indexType,enum=otsprotocol.IndexType" json:"index_type,omitempty"`
	IndexSyncPhase       *IndexSyncPhase  `protobuf:"varint,6,opt,name=index_sync_phase,json=indexSyncPhase,enum=otsprotocol.IndexSyncPhase" json:"index_sync_phase,omitempty"`
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

func (m *IndexMeta) Reset()         { *m = IndexMeta{} }
func (m *IndexMeta) String() string { return proto.CompactTextString(m) }
func (*IndexMeta) ProtoMessage()    {}
func (*IndexMeta) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{64}
}

func (m *IndexMeta) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_IndexMeta.Unmarshal(m, b)
}
func (m *IndexMeta) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_IndexMeta.Marshal(b, m, deterministic)
}
func (m *IndexMeta) XXX_Merge(src proto.Message) {
	xxx_messageInfo_IndexMeta.Merge(m, src)
}
func (m *IndexMeta) XXX_Size() int {
	return xxx_messageInfo_IndexMeta.Size(m)
}
func (m *IndexMeta) XXX_DiscardUnknown() {
	xxx_messageInfo_IndexMeta.DiscardUnknown(m)
}

var xxx_messageInfo_IndexMeta proto.InternalMessageInfo

func (m *IndexMeta) GetName() string {
	if m != nil && m.Name != nil {
		return *m.Name
	}
	return ""
}

func (m *IndexMeta) GetPrimaryKey() []string {
	if m != nil {
		return m.PrimaryKey
	}
	return nil
}

func (m *IndexMeta) GetDefinedColumn() []string {
	if m != nil {
		return m.DefinedColumn
	}
	return nil
}

func (m *IndexMeta) GetIndexUpdateMode() IndexUpdateMode {
	if m != nil && m.IndexUpdateMode != nil {
		return *m.IndexUpdateMode
	}
	return IndexUpdateMode_IUM_ASYNC_INDEX
}

func (m *IndexMeta) GetIndexType() IndexType {
	if m != nil && m.IndexType != nil {
		return *m.IndexType
	}
	return IndexType_IT_GLOBAL_INDEX
}

func (m *IndexMeta) GetIndexSyncPhase() IndexSyncPhase {
	if m != nil && m.IndexSyncPhase != nil {
		return *m.IndexSyncPhase
	}
	return IndexSyncPhase_ISP_INVALID
}

type CreateIndexRequest struct {
	MainTableName        *string    `protobuf:"bytes,1,req,name=main_table_name,json=mainTableName" json:"main_table_name,omitempty"`
	IndexMeta            *IndexMeta `protobuf:"bytes,2,req,name=index_meta,json=indexMeta" json:"index_meta,omitempty"`
	IncludeBaseData      *bool      `protobuf:"varint,3,opt,name=include_base_data,json=includeBaseData" json:"include_base_data,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

func (m *CreateIndexRequest) Reset()         { *m = CreateIndexRequest{} }
func (m *CreateIndexRequest) String() string { return proto.CompactTextString(m) }
func (*CreateIndexRequest) ProtoMessage()    {}
func (*CreateIndexRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{65}
}

func (m *CreateIndexRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_CreateIndexRequest.Unmarshal(m, b)
}
func (m *CreateIndexRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_CreateIndexRequest.Marshal(b, m, deterministic)
}
func (m *CreateIndexRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_CreateIndexRequest.Merge(m, src)
}
func (m *CreateIndexRequest) XXX_Size() int {
	return xxx_messageInfo_CreateIndexRequest.Size(m)
}
func (m *CreateIndexRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_CreateIndexRequest.DiscardUnknown(m)
}

var xxx_messageInfo_CreateIndexRequest proto.InternalMessageInfo

func (m *CreateIndexRequest) GetMainTableName() string {
	if m != nil && m.MainTableName != nil {
		return *m.MainTableName
	}
	return ""
}

func (m *CreateIndexRequest) GetIndexMeta() *IndexMeta {
	if m != nil {
		return m.IndexMeta
	}
	return nil
}

func (m *CreateIndexRequest) GetIncludeBaseData() bool {
	if m != nil && m.IncludeBaseData != nil {
		return *m.IncludeBaseData
	}
	return false
}

type CreateIndexResponse struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *CreateIndexResponse) Reset()         { *m = CreateIndexResponse{} }
func (m *CreateIndexResponse) String() string { return proto.CompactTextString(m) }
func (*CreateIndexResponse) ProtoMessage()    {}
func (*CreateIndexResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{66}
}

func (m *CreateIndexResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_CreateIndexResponse.Unmarshal(m, b)
}
func (m *CreateIndexResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_CreateIndexResponse.Marshal(b, m, deterministic)
}
func (m *CreateIndexResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_CreateIndexResponse.Merge(m, src)
}
func (m *CreateIndexResponse) XXX_Size() int {
	return xxx_messageInfo_CreateIndexResponse.Size(m)
}
func (m *CreateIndexResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_CreateIndexResponse.DiscardUnknown(m)
}

var xxx_messageInfo_CreateIndexResponse proto.InternalMessageInfo

type DropIndexRequest struct {
	MainTableName        *string  `protobuf:"bytes,1,req,name=main_table_name,json=mainTableName" json:"main_table_name,omitempty"`
	IndexName            *string  `protobuf:"bytes,2,req,name=index_name,json=indexName" json:"index_name,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DropIndexRequest) Reset()         { *m = DropIndexRequest{} }
func (m *DropIndexRequest) String() string { return proto.CompactTextString(m) }
func (*DropIndexRequest) ProtoMessage()    {}
func (*DropIndexRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{67}
}

func (m *DropIndexRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DropIndexRequest.Unmarshal(m, b)
}
func (m *DropIndexRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DropIndexRequest.Marshal(b, m, deterministic)
}
func (m *DropIndexRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DropIndexRequest.Merge(m, src)
}
func (m *DropIndexRequest) XXX_Size() int {
	return xxx_messageInfo_DropIndexRequest.Size(m)
}
func (m *DropIndexRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_DropIndexRequest.DiscardUnknown(m)
}

var xxx_messageInfo_DropIndexRequest proto.InternalMessageInfo

func (m *DropIndexRequest) GetMainTableName() string {
	if m != nil && m.MainTableName != nil {
		return *m.MainTableName
	}
	return ""
}

func (m *DropIndexRequest) GetIndexName() string {
	if m != nil && m.IndexName != nil {
		return *m.IndexName
	}
	return ""
}

type DropIndexResponse struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DropIndexResponse) Reset()         { *m = DropIndexResponse{} }
func (m *DropIndexResponse) String() string { return proto.CompactTextString(m) }
func (*DropIndexResponse) ProtoMessage()    {}
func (*DropIndexResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{68}
}

func (m *DropIndexResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DropIndexResponse.Unmarshal(m, b)
}
func (m *DropIndexResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DropIndexResponse.Marshal(b, m, deterministic)
}
func (m *DropIndexResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DropIndexResponse.Merge(m, src)
}
func (m *DropIndexResponse) XXX_Size() int {
	return xxx_messageInfo_DropIndexResponse.Size(m)
}
func (m *DropIndexResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_DropIndexResponse.DiscardUnknown(m)
}

var xxx_messageInfo_DropIndexResponse proto.InternalMessageInfo

type AddDefinedColumnRequest struct {
	TableName            *string                `protobuf:"bytes,1,req,name=table_name,json=tableName" json:"table_name,omitempty"`
	Columns              []*DefinedColumnSchema `protobuf:"bytes,2,rep,name=columns" json:"columns,omitempty"`
	XXX_NoUnkeyedLiteral struct{}               `json:"-"`
	XXX_unrecognized     []byte                 `json:"-"`
	XXX_sizecache        int32                  `json:"-"`
}

func (m *AddDefinedColumnRequest) Reset()         { *m = AddDefinedColumnRequest{} }
func (m *AddDefinedColumnRequest) String() string { return proto.CompactTextString(m) }
func (*AddDefinedColumnRequest) ProtoMessage()    {}
func (*AddDefinedColumnRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{69}
}

func (m *AddDefinedColumnRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AddDefinedColumnRequest.Unmarshal(m, b)
}
func (m *AddDefinedColumnRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AddDefinedColumnRequest.Marshal(b, m, deterministic)
}
func (m *AddDefinedColumnRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AddDefinedColumnRequest.Merge(m, src)
}
func (m *AddDefinedColumnRequest) XXX_Size() int {
	return xxx_messageInfo_AddDefinedColumnRequest.Size(m)
}
func (m *AddDefinedColumnRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_AddDefinedColumnRequest.DiscardUnknown(m)
}

var xxx_messageInfo_AddDefinedColumnRequest proto.InternalMessageInfo

func (m *AddDefinedColumnRequest) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

func (m *AddDefinedColumnRequest) GetColumns() []*DefinedColumnSchema {
	if m != nil {
		return m.Columns
	}
	return nil
}

type AddDefinedColumnResponse struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *AddDefinedColumnResponse) Reset()         { *m = AddDefinedColumnResponse{} }
func (m *AddDefinedColumnResponse) String() string { return proto.CompactTextString(m) }
func (*AddDefinedColumnResponse) ProtoMessage()    {}
func (*AddDefinedColumnResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{70}
}

func (m *AddDefinedColumnResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AddDefinedColumnResponse.Unmarshal(m, b)
}
func (m *AddDefinedColumnResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AddDefinedColumnResponse.Marshal(b, m, deterministic)
}
func (m *AddDefinedColumnResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AddDefinedColumnResponse.Merge(m, src)
}
func (m *AddDefinedColumnResponse) XXX_Size() int {
	return xxx_messageInfo_AddDefinedColumnResponse.Size(m)
}
func (m *AddDefinedColumnResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_AddDefinedColumnResponse.DiscardUnknown(m)
}

var xxx_messageInfo_AddDefinedColumnResponse proto.InternalMessageInfo

type DeleteDefinedColumnRequest struct {
	TableName            *string  `protobuf:"bytes,1,req,name=table_name,json=tableName" json:"table_name,omitempty"`
	Columns              []string `protobuf:"bytes,2,rep,name=columns" json:"columns,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DeleteDefinedColumnRequest) Reset()         { *m = DeleteDefinedColumnRequest{} }
func (m *DeleteDefinedColumnRequest) String() string { return proto.CompactTextString(m) }
func (*DeleteDefinedColumnRequest) ProtoMessage()    {}
func (*DeleteDefinedColumnRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{71}
}

func (m *DeleteDefinedColumnRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DeleteDefinedColumnRequest.Unmarshal(m, b)
}
func (m *DeleteDefinedColumnRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DeleteDefinedColumnRequest.Marshal(b, m, deterministic)
}
func (m *DeleteDefinedColumnRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DeleteDefinedColumnRequest.Merge(m, src)
}
func (m *DeleteDefinedColumnRequest) XXX_Size() int {
	return xxx_messageInfo_DeleteDefinedColumnRequest.Size(m)
}
func (m *DeleteDefinedColumnRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_DeleteDefinedColumnRequest.DiscardUnknown(m)
}

var xxx_messageInfo_DeleteDefinedColumnRequest proto.InternalMessageInfo

func (m *DeleteDefinedColumnRequest) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

func (m *DeleteDefinedColumnRequest) GetColumns() []string {
	if m != nil {
		return m.Columns
	}
	return nil
}

type DeleteDefinedColumnResponse struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DeleteDefinedColumnResponse) Reset()         { *m = DeleteDefinedColumnResponse{} }
func (m *DeleteDefinedColumnResponse) String() string { return proto.CompactTextString(m) }
func (*DeleteDefinedColumnResponse) ProtoMessage()    {}
func (*DeleteDefinedColumnResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{72}
}

func (m *DeleteDefinedColumnResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DeleteDefinedColumnResponse.Unmarshal(m, b)
}
func (m *DeleteDefinedColumnResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DeleteDefinedColumnResponse.Marshal(b, m, deterministic)
}
func (m *DeleteDefinedColumnResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DeleteDefinedColumnResponse.Merge(m, src)
}
func (m *DeleteDefinedColumnResponse) XXX_Size() int {
	return xxx_messageInfo_DeleteDefinedColumnResponse.Size(m)
}
func (m *DeleteDefinedColumnResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_DeleteDefinedColumnResponse.DiscardUnknown(m)
}

var xxx_messageInfo_DeleteDefinedColumnResponse proto.InternalMessageInfo

// ###########################################  LocalTransaction  ###########################################
type StartLocalTransactionRequest struct {
	TableName            *string  `protobuf:"bytes,1,req,name=table_name,json=tableName" json:"table_name,omitempty"`
	Key                  []byte   `protobuf:"bytes,2,req,name=key" json:"key,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *StartLocalTransactionRequest) Reset()         { *m = StartLocalTransactionRequest{} }
func (m *StartLocalTransactionRequest) String() string { return proto.CompactTextString(m) }
func (*StartLocalTransactionRequest) ProtoMessage()    {}
func (*StartLocalTransactionRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{73}
}

func (m *StartLocalTransactionRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_StartLocalTransactionRequest.Unmarshal(m, b)
}
func (m *StartLocalTransactionRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_StartLocalTransactionRequest.Marshal(b, m, deterministic)
}
func (m *StartLocalTransactionRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_StartLocalTransactionRequest.Merge(m, src)
}
func (m *StartLocalTransactionRequest) XXX_Size() int {
	return xxx_messageInfo_StartLocalTransactionRequest.Size(m)
}
func (m *StartLocalTransactionRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_StartLocalTransactionRequest.DiscardUnknown(m)
}

var xxx_messageInfo_StartLocalTransactionRequest proto.InternalMessageInfo

func (m *StartLocalTransactionRequest) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

func (m *StartLocalTransactionRequest) GetKey() []byte {
	if m != nil {
		return m.Key
	}
	return nil
}

type StartLocalTransactionResponse struct {
	TransactionId        *string  `protobuf:"bytes,1,req,name=transaction_id,json=transactionId" json:"transaction_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *StartLocalTransactionResponse) Reset()         { *m = StartLocalTransactionResponse{} }
func (m *StartLocalTransactionResponse) String() string { return proto.CompactTextString(m) }
func (*StartLocalTransactionResponse) ProtoMessage()    {}
func (*StartLocalTransactionResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{74}
}

func (m *StartLocalTransactionResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_StartLocalTransactionResponse.Unmarshal(m, b)
}
func (m *StartLocalTransactionResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_StartLocalTransactionResponse.Marshal(b, m, deterministic)
}
func (m *StartLocalTransactionResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_StartLocalTransactionResponse.Merge(m, src)
}
func (m *StartLocalTransactionResponse) XXX_Size() int {
	return xxx_messageInfo_StartLocalTransactionResponse.Size(m)
}
func (m *StartLocalTransactionResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_StartLocalTransactionResponse.DiscardUnknown(m)
}

var xxx_messageInfo_StartLocalTransactionResponse proto.InternalMessageInfo

func (m *StartLocalTransactionResponse) GetTransactionId() string {
	if m != nil && m.TransactionId != nil {
		return *m.TransactionId
	}
	return ""
}

type CommitTransactionRequest struct {
	TransactionId        *string  `protobuf:"bytes,1,req,name=transaction_id,json=transactionId" json:"transaction_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *CommitTransactionRequest) Reset()         { *m = CommitTransactionRequest{} }
func (m *CommitTransactionRequest) String() string { return proto.CompactTextString(m) }
func (*CommitTransactionRequest) ProtoMessage()    {}
func (*CommitTransactionRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{75}
}

func (m *CommitTransactionRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_CommitTransactionRequest.Unmarshal(m, b)
}
func (m *CommitTransactionRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_CommitTransactionRequest.Marshal(b, m, deterministic)
}
func (m *CommitTransactionRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_CommitTransactionRequest.Merge(m, src)
}
func (m *CommitTransactionRequest) XXX_Size() int {
	return xxx_messageInfo_CommitTransactionRequest.Size(m)
}
func (m *CommitTransactionRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_CommitTransactionRequest.DiscardUnknown(m)
}

var xxx_messageInfo_CommitTransactionRequest proto.InternalMessageInfo

func (m *CommitTransactionRequest) GetTransactionId() string {
	if m != nil && m.TransactionId != nil {
		return *m.TransactionId
	}
	return ""
}

type CommitTransactionResponse struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *CommitTransactionResponse) Reset()         { *m = CommitTransactionResponse{} }
func (m *CommitTransactionResponse) String() string { return proto.CompactTextString(m) }
func (*CommitTransactionResponse) ProtoMessage()    {}
func (*CommitTransactionResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{76}
}

func (m *CommitTransactionResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_CommitTransactionResponse.Unmarshal(m, b)
}
func (m *CommitTransactionResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_CommitTransactionResponse.Marshal(b, m, deterministic)
}
func (m *CommitTransactionResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_CommitTransactionResponse.Merge(m, src)
}
func (m *CommitTransactionResponse) XXX_Size() int {
	return xxx_messageInfo_CommitTransactionResponse.Size(m)
}
func (m *CommitTransactionResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_CommitTransactionResponse.DiscardUnknown(m)
}

var xxx_messageInfo_CommitTransactionResponse proto.InternalMessageInfo

type AbortTransactionRequest struct {
	TransactionId        *string  `protobuf:"bytes,1,req,name=transaction_id,json=transactionId" json:"transaction_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *AbortTransactionRequest) Reset()         { *m = AbortTransactionRequest{} }
func (m *AbortTransactionRequest) String() string { return proto.CompactTextString(m) }
func (*AbortTransactionRequest) ProtoMessage()    {}
func (*AbortTransactionRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{77}
}

func (m *AbortTransactionRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AbortTransactionRequest.Unmarshal(m, b)
}
func (m *AbortTransactionRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AbortTransactionRequest.Marshal(b, m, deterministic)
}
func (m *AbortTransactionRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AbortTransactionRequest.Merge(m, src)
}
func (m *AbortTransactionRequest) XXX_Size() int {
	return xxx_messageInfo_AbortTransactionRequest.Size(m)
}
func (m *AbortTransactionRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_AbortTransactionRequest.DiscardUnknown(m)
}

var xxx_messageInfo_AbortTransactionRequest proto.InternalMessageInfo

func (m *AbortTransactionRequest) GetTransactionId() string {
	if m != nil && m.TransactionId != nil {
		return *m.TransactionId
	}
	return ""
}

type AbortTransactionResponse struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *AbortTransactionResponse) Reset()         { *m = AbortTransactionResponse{} }
func (m *AbortTransactionResponse) String() string { return proto.CompactTextString(m) }
func (*AbortTransactionResponse) ProtoMessage()    {}
func (*AbortTransactionResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{78}
}

func (m *AbortTransactionResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AbortTransactionResponse.Unmarshal(m, b)
}
func (m *AbortTransactionResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AbortTransactionResponse.Marshal(b, m, deterministic)
}
func (m *AbortTransactionResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AbortTransactionResponse.Merge(m, src)
}
func (m *AbortTransactionResponse) XXX_Size() int {
	return xxx_messageInfo_AbortTransactionResponse.Size(m)
}
func (m *AbortTransactionResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_AbortTransactionResponse.DiscardUnknown(m)
}

var xxx_messageInfo_AbortTransactionResponse proto.InternalMessageInfo

// computeSplits
type ComputeSplitsRequest struct {
	TableName                *string                   `protobuf:"bytes,1,opt,name=table_name,json=tableName" json:"table_name,omitempty"`
	SearchIndexSplitsOptions *SearchIndexSplitsOptions `protobuf:"bytes,2,opt,name=search_index_splits_options,json=searchIndexSplitsOptions" json:"search_index_splits_options,omitempty"`
	XXX_NoUnkeyedLiteral     struct{}                  `json:"-"`
	XXX_unrecognized         []byte                    `json:"-"`
	XXX_sizecache            int32                     `json:"-"`
}

func (m *ComputeSplitsRequest) Reset()         { *m = ComputeSplitsRequest{} }
func (m *ComputeSplitsRequest) String() string { return proto.CompactTextString(m) }
func (*ComputeSplitsRequest) ProtoMessage()    {}
func (*ComputeSplitsRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{79}
}

func (m *ComputeSplitsRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ComputeSplitsRequest.Unmarshal(m, b)
}
func (m *ComputeSplitsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ComputeSplitsRequest.Marshal(b, m, deterministic)
}
func (m *ComputeSplitsRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ComputeSplitsRequest.Merge(m, src)
}
func (m *ComputeSplitsRequest) XXX_Size() int {
	return xxx_messageInfo_ComputeSplitsRequest.Size(m)
}
func (m *ComputeSplitsRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_ComputeSplitsRequest.DiscardUnknown(m)
}

var xxx_messageInfo_ComputeSplitsRequest proto.InternalMessageInfo

func (m *ComputeSplitsRequest) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

func (m *ComputeSplitsRequest) GetSearchIndexSplitsOptions() *SearchIndexSplitsOptions {
	if m != nil {
		return m.SearchIndexSplitsOptions
	}
	return nil
}

type SearchIndexSplitsOptions struct {
	IndexName            *string  `protobuf:"bytes,1,opt,name=index_name,json=indexName" json:"index_name,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *SearchIndexSplitsOptions) Reset()         { *m = SearchIndexSplitsOptions{} }
func (m *SearchIndexSplitsOptions) String() string { return proto.CompactTextString(m) }
func (*SearchIndexSplitsOptions) ProtoMessage()    {}
func (*SearchIndexSplitsOptions) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{80}
}

func (m *SearchIndexSplitsOptions) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SearchIndexSplitsOptions.Unmarshal(m, b)
}
func (m *SearchIndexSplitsOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SearchIndexSplitsOptions.Marshal(b, m, deterministic)
}
func (m *SearchIndexSplitsOptions) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SearchIndexSplitsOptions.Merge(m, src)
}
func (m *SearchIndexSplitsOptions) XXX_Size() int {
	return xxx_messageInfo_SearchIndexSplitsOptions.Size(m)
}
func (m *SearchIndexSplitsOptions) XXX_DiscardUnknown() {
	xxx_messageInfo_SearchIndexSplitsOptions.DiscardUnknown(m)
}

var xxx_messageInfo_SearchIndexSplitsOptions proto.InternalMessageInfo

func (m *SearchIndexSplitsOptions) GetIndexName() string {
	if m != nil && m.IndexName != nil {
		return *m.IndexName
	}
	return ""
}

type ComputeSplitsResponse struct {
	SessionId            []byte   `protobuf:"bytes,1,opt,name=session_id,json=sessionId" json:"session_id,omitempty"`
	SplitsSize           *int32   `protobuf:"varint,2,opt,name=splits_size,json=splitsSize" json:"splits_size,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ComputeSplitsResponse) Reset()         { *m = ComputeSplitsResponse{} }
func (m *ComputeSplitsResponse) String() string { return proto.CompactTextString(m) }
func (*ComputeSplitsResponse) ProtoMessage()    {}
func (*ComputeSplitsResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{81}
}

func (m *ComputeSplitsResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ComputeSplitsResponse.Unmarshal(m, b)
}
func (m *ComputeSplitsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ComputeSplitsResponse.Marshal(b, m, deterministic)
}
func (m *ComputeSplitsResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ComputeSplitsResponse.Merge(m, src)
}
func (m *ComputeSplitsResponse) XXX_Size() int {
	return xxx_messageInfo_ComputeSplitsResponse.Size(m)
}
func (m *ComputeSplitsResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_ComputeSplitsResponse.DiscardUnknown(m)
}

var xxx_messageInfo_ComputeSplitsResponse proto.InternalMessageInfo

func (m *ComputeSplitsResponse) GetSessionId() []byte {
	if m != nil {
		return m.SessionId
	}
	return nil
}

func (m *ComputeSplitsResponse) GetSplitsSize() int32 {
	if m != nil && m.SplitsSize != nil {
		return *m.SplitsSize
	}
	return 0
}

type SQLQueryRequest struct {
	Query                *string            `protobuf:"bytes,1,req,name=query" json:"query,omitempty"`
	Version              *SQLPayloadVersion `protobuf:"varint,2,opt,name=version,enum=otsprotocol.SQLPayloadVersion" json:"version,omitempty"`
	SqlVersion           *int64             `protobuf:"varint,3,opt,name=sql_version,json=sqlVersion" json:"sql_version,omitempty"`
	SearchToken          *string            `protobuf:"bytes,5,opt,name=search_token,json=searchToken" json:"search_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{}           `json:"-"`
	XXX_unrecognized     []byte             `json:"-"`
	XXX_sizecache        int32              `json:"-"`
}

func (m *SQLQueryRequest) Reset()         { *m = SQLQueryRequest{} }
func (m *SQLQueryRequest) String() string { return proto.CompactTextString(m) }
func (*SQLQueryRequest) ProtoMessage()    {}
func (*SQLQueryRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{82}
}

func (m *SQLQueryRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SQLQueryRequest.Unmarshal(m, b)
}
func (m *SQLQueryRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SQLQueryRequest.Marshal(b, m, deterministic)
}
func (m *SQLQueryRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SQLQueryRequest.Merge(m, src)
}
func (m *SQLQueryRequest) XXX_Size() int {
	return xxx_messageInfo_SQLQueryRequest.Size(m)
}
func (m *SQLQueryRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_SQLQueryRequest.DiscardUnknown(m)
}

var xxx_messageInfo_SQLQueryRequest proto.InternalMessageInfo

func (m *SQLQueryRequest) GetQuery() string {
	if m != nil && m.Query != nil {
		return *m.Query
	}
	return ""
}

func (m *SQLQueryRequest) GetVersion() SQLPayloadVersion {
	if m != nil && m.Version != nil {
		return *m.Version
	}
	return SQLPayloadVersion_SQL_PLAIN_BUFFER
}

func (m *SQLQueryRequest) GetSqlVersion() int64 {
	if m != nil && m.SqlVersion != nil {
		return *m.SqlVersion
	}
	return 0
}

func (m *SQLQueryRequest) GetSearchToken() string {
	if m != nil && m.SearchToken != nil {
		return *m.SearchToken
	}
	return ""
}

type TableConsumedCapacity struct {
	TableName            *string             `protobuf:"bytes,1,opt,name=table_name,json=tableName" json:"table_name,omitempty"`
	Consumed             *ConsumedCapacity   `protobuf:"bytes,2,opt,name=consumed" json:"consumed,omitempty"`
	ReservedThroughput   *ReservedThroughput `protobuf:"bytes,3,opt,name=reserved_throughput,json=reservedThroughput" json:"reserved_throughput,omitempty"`
	IsTimeseriesMeta     *bool               `protobuf:"varint,4,opt,name=is_timeseries_meta,json=isTimeseriesMeta" json:"is_timeseries_meta,omitempty"`
	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
	XXX_unrecognized     []byte              `json:"-"`
	XXX_sizecache        int32               `json:"-"`
}

func (m *TableConsumedCapacity) Reset()         { *m = TableConsumedCapacity{} }
func (m *TableConsumedCapacity) String() string { return proto.CompactTextString(m) }
func (*TableConsumedCapacity) ProtoMessage()    {}
func (*TableConsumedCapacity) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{83}
}

func (m *TableConsumedCapacity) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_TableConsumedCapacity.Unmarshal(m, b)
}
func (m *TableConsumedCapacity) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_TableConsumedCapacity.Marshal(b, m, deterministic)
}
func (m *TableConsumedCapacity) XXX_Merge(src proto.Message) {
	xxx_messageInfo_TableConsumedCapacity.Merge(m, src)
}
func (m *TableConsumedCapacity) XXX_Size() int {
	return xxx_messageInfo_TableConsumedCapacity.Size(m)
}
func (m *TableConsumedCapacity) XXX_DiscardUnknown() {
	xxx_messageInfo_TableConsumedCapacity.DiscardUnknown(m)
}

var xxx_messageInfo_TableConsumedCapacity proto.InternalMessageInfo

func (m *TableConsumedCapacity) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

func (m *TableConsumedCapacity) GetConsumed() *ConsumedCapacity {
	if m != nil {
		return m.Consumed
	}
	return nil
}

func (m *TableConsumedCapacity) GetReservedThroughput() *ReservedThroughput {
	if m != nil {
		return m.ReservedThroughput
	}
	return nil
}

func (m *TableConsumedCapacity) GetIsTimeseriesMeta() bool {
	if m != nil && m.IsTimeseriesMeta != nil {
		return *m.IsTimeseriesMeta
	}
	return false
}

type SearchConsumedCapacity struct {
	TableName            *string             `protobuf:"bytes,1,opt,name=table_name,json=tableName" json:"table_name,omitempty"`
	IndexName            *string             `protobuf:"bytes,2,opt,name=index_name,json=indexName" json:"index_name,omitempty"`
	Consumed             *ConsumedCapacity   `protobuf:"bytes,3,opt,name=consumed" json:"consumed,omitempty"`
	ReservedThroughput   *ReservedThroughput `protobuf:"bytes,4,opt,name=reserved_throughput,json=reservedThroughput" json:"reserved_throughput,omitempty"`
	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
	XXX_unrecognized     []byte              `json:"-"`
	XXX_sizecache        int32               `json:"-"`
}

func (m *SearchConsumedCapacity) Reset()         { *m = SearchConsumedCapacity{} }
func (m *SearchConsumedCapacity) String() string { return proto.CompactTextString(m) }
func (*SearchConsumedCapacity) ProtoMessage()    {}
func (*SearchConsumedCapacity) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{84}
}

func (m *SearchConsumedCapacity) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SearchConsumedCapacity.Unmarshal(m, b)
}
func (m *SearchConsumedCapacity) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SearchConsumedCapacity.Marshal(b, m, deterministic)
}
func (m *SearchConsumedCapacity) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SearchConsumedCapacity.Merge(m, src)
}
func (m *SearchConsumedCapacity) XXX_Size() int {
	return xxx_messageInfo_SearchConsumedCapacity.Size(m)
}
func (m *SearchConsumedCapacity) XXX_DiscardUnknown() {
	xxx_messageInfo_SearchConsumedCapacity.DiscardUnknown(m)
}

var xxx_messageInfo_SearchConsumedCapacity proto.InternalMessageInfo

func (m *SearchConsumedCapacity) GetTableName() string {
	if m != nil && m.TableName != nil {
		return *m.TableName
	}
	return ""
}

func (m *SearchConsumedCapacity) GetIndexName() string {
	if m != nil && m.IndexName != nil {
		return *m.IndexName
	}
	return ""
}

func (m *SearchConsumedCapacity) GetConsumed() *ConsumedCapacity {
	if m != nil {
		return m.Consumed
	}
	return nil
}

func (m *SearchConsumedCapacity) GetReservedThroughput() *ReservedThroughput {
	if m != nil {
		return m.ReservedThroughput
	}
	return nil
}

type SQLQueryResponse struct {
	Consumes             []*TableConsumedCapacity  `protobuf:"bytes,1,rep,name=consumes" json:"consumes,omitempty"`
	Rows                 []byte                    `protobuf:"bytes,2,opt,name=rows" json:"rows,omitempty"`
	Version              *SQLPayloadVersion        `protobuf:"varint,3,opt,name=version,enum=otsprotocol.SQLPayloadVersion" json:"version,omitempty"`
	Type                 *SQLStatementType         `protobuf:"varint,4,opt,name=type,enum=otsprotocol.SQLStatementType" json:"type,omitempty"`
	SearchConsumes       []*SearchConsumedCapacity `protobuf:"bytes,5,rep,name=search_consumes,json=searchConsumes" json:"search_consumes,omitempty"`
	NextSearchToken      *string                   `protobuf:"bytes,8,opt,name=next_search_token,json=nextSearchToken" json:"next_search_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                  `json:"-"`
	XXX_unrecognized     []byte                    `json:"-"`
	XXX_sizecache        int32                     `json:"-"`
}

func (m *SQLQueryResponse) Reset()         { *m = SQLQueryResponse{} }
func (m *SQLQueryResponse) String() string { return proto.CompactTextString(m) }
func (*SQLQueryResponse) ProtoMessage()    {}
func (*SQLQueryResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_f723cea3e4fa0cb7, []int{85}
}

func (m *SQLQueryResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SQLQueryResponse.Unmarshal(m, b)
}
func (m *SQLQueryResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SQLQueryResponse.Marshal(b, m, deterministic)
}
func (m *SQLQueryResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SQLQueryResponse.Merge(m, src)
}
func (m *SQLQueryResponse) XXX_Size() int {
	return xxx_messageInfo_SQLQueryResponse.Size(m)
}
func (m *SQLQueryResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_SQLQueryResponse.DiscardUnknown(m)
}

var xxx_messageInfo_SQLQueryResponse proto.InternalMessageInfo

func (m *SQLQueryResponse) GetConsumes() []*TableConsumedCapacity {
	if m != nil {
		return m.Consumes
	}
	return nil
}

func (m *SQLQueryResponse) GetRows() []byte {
	if m != nil {
		return m.Rows
	}
	return nil
}

func (m *SQLQueryResponse) GetVersion() SQLPayloadVersion {
	if m != nil && m.Version != nil {
		return *m.Version
	}
	return SQLPayloadVersion_SQL_PLAIN_BUFFER
}

func (m *SQLQueryResponse) GetType() SQLStatementType {
	if m != nil && m.Type != nil {
		return *m.Type
	}
	return SQLStatementType_SQL_SELECT
}

func (m *SQLQueryResponse) GetSearchConsumes() []*SearchConsumedCapacity {
	if m != nil {
		return m.SearchConsumes
	}
	return nil
}

func (m *SQLQueryResponse) GetNextSearchToken() string {
	if m != nil && m.NextSearchToken != nil {
		return *m.NextSearchToken
	}
	return ""
}

func init() {
	proto.RegisterEnum("otsprotocol.PrimaryKeyType", PrimaryKeyType_name, PrimaryKeyType_value)
	proto.RegisterEnum("otsprotocol.PrimaryKeyOption", PrimaryKeyOption_name, PrimaryKeyOption_value)
	proto.RegisterEnum("otsprotocol.DataBlockType", DataBlockType_name, DataBlockType_value)
	proto.RegisterEnum("otsprotocol.CompressType", CompressType_name, CompressType_value)
	proto.RegisterEnum("otsprotocol.BloomFilterType", BloomFilterType_name, BloomFilterType_value)
	proto.RegisterEnum("otsprotocol.TableStatus", TableStatus_name, TableStatus_value)
	proto.RegisterEnum("otsprotocol.RowExistenceExpectation", RowExistenceExpectation_name, RowExistenceExpectation_value)
	proto.RegisterEnum("otsprotocol.SSEKeyType", SSEKeyType_name, SSEKeyType_value)
	proto.RegisterEnum("otsprotocol.ReturnType", ReturnType_name, ReturnType_value)
	proto.RegisterEnum("otsprotocol.OperationType", OperationType_name, OperationType_value)
	proto.RegisterEnum("otsprotocol.Direction", Direction_name, Direction_value)
	proto.RegisterEnum("otsprotocol.StreamStatus", StreamStatus_name, StreamStatus_value)
	proto.RegisterEnum("otsprotocol.ActionType", ActionType_name, ActionType_value)
	proto.RegisterEnum("otsprotocol.DefinedColumnType", DefinedColumnType_name, DefinedColumnType_value)
	proto.RegisterEnum("otsprotocol.IndexUpdateMode", IndexUpdateMode_name, IndexUpdateMode_value)
	proto.RegisterEnum("otsprotocol.IndexType", IndexType_name, IndexType_value)
	proto.RegisterEnum("otsprotocol.IndexSyncPhase", IndexSyncPhase_name, IndexSyncPhase_value)
	proto.RegisterEnum("otsprotocol.SQLPayloadVersion", SQLPayloadVersion_name, SQLPayloadVersion_value)
	proto.RegisterEnum("otsprotocol.SQLStatementType", SQLStatementType_name, SQLStatementType_value)
	proto.RegisterType((*Error)(nil), "otsprotocol.Error")
	proto.RegisterType((*PrimaryKeySchema)(nil), "otsprotocol.PrimaryKeySchema")
	proto.RegisterType((*PartitionRange)(nil), "otsprotocol.PartitionRange")
	proto.RegisterType((*TableOptions)(nil), "otsprotocol.TableOptions")
	proto.RegisterType((*TableMeta)(nil), "otsprotocol.TableMeta")
	proto.RegisterType((*Condition)(nil), "otsprotocol.Condition")
	proto.RegisterType((*CapacityUnit)(nil), "otsprotocol.CapacityUnit")
	proto.RegisterType((*ReservedThroughputDetails)(nil), "otsprotocol.ReservedThroughputDetails")
	proto.RegisterType((*ReservedThroughput)(nil), "otsprotocol.ReservedThroughput")
	proto.RegisterType((*ConsumedCapacity)(nil), "otsprotocol.ConsumedCapacity")
	proto.RegisterType((*StreamSpecification)(nil), "otsprotocol.StreamSpecification")
	proto.RegisterType((*StreamDetails)(nil), "otsprotocol.StreamDetails")
	proto.RegisterType((*SSESpecification)(nil), "otsprotocol.SSESpecification")
	proto.RegisterType((*SSEDetails)(nil), "otsprotocol.SSEDetails")
	proto.RegisterType((*CreateTableRequest)(nil), "otsprotocol.CreateTableRequest")
	proto.RegisterType((*CreateTableResponse)(nil), "otsprotocol.CreateTableResponse")
	proto.RegisterType((*UpdateTableRequest)(nil), "otsprotocol.UpdateTableRequest")
	proto.RegisterType((*UpdateTableResponse)(nil), "otsprotocol.UpdateTableResponse")
	proto.RegisterType((*DescribeTableRequest)(nil), "otsprotocol.DescribeTableRequest")
	proto.RegisterType((*DescribeTableResponse)(nil), "otsprotocol.DescribeTableResponse")
	proto.RegisterType((*ListTableRequest)(nil), "otsprotocol.ListTableRequest")
	proto.RegisterType((*ListTableResponse)(nil), "otsprotocol.ListTableResponse")
	proto.RegisterType((*DeleteTableRequest)(nil), "otsprotocol.DeleteTableRequest")
	proto.RegisterType((*DeleteTableResponse)(nil), "otsprotocol.DeleteTableResponse")
	proto.RegisterType((*LoadTableRequest)(nil), "otsprotocol.LoadTableRequest")
	proto.RegisterType((*LoadTableResponse)(nil), "otsprotocol.LoadTableResponse")
	proto.RegisterType((*UnloadTableRequest)(nil), "otsprotocol.UnloadTableRequest")
	proto.RegisterType((*UnloadTableResponse)(nil), "otsprotocol.UnloadTableResponse")
	proto.RegisterType((*TimeRange)(nil), "otsprotocol.TimeRange")
	proto.RegisterType((*ReturnContent)(nil), "otsprotocol.ReturnContent")
	proto.RegisterType((*GetRowRequest)(nil), "otsprotocol.GetRowRequest")
	proto.RegisterType((*GetRowResponse)(nil), "otsprotocol.GetRowResponse")
	proto.RegisterType((*UpdateRowRequest)(nil), "otsprotocol.UpdateRowRequest")
	proto.RegisterType((*UpdateRowResponse)(nil), "otsprotocol.UpdateRowResponse")
	proto.RegisterType((*PutRowRequest)(nil), "otsprotocol.PutRowRequest")
	proto.RegisterType((*PutRowResponse)(nil), "otsprotocol.PutRowResponse")
	proto.RegisterType((*DeleteRowRequest)(nil), "otsprotocol.DeleteRowRequest")
	proto.RegisterType((*DeleteRowResponse)(nil), "otsprotocol.DeleteRowResponse")
	proto.RegisterType((*TableInBatchGetRowRequest)(nil), "otsprotocol.TableInBatchGetRowRequest")
	proto.RegisterType((*BatchGetRowRequest)(nil), "otsprotocol.BatchGetRowRequest")
	proto.RegisterType((*RowInBatchGetRowResponse)(nil), "otsprotocol.RowInBatchGetRowResponse")
	proto.RegisterType((*TableInBatchGetRowResponse)(nil), "otsprotocol.TableInBatchGetRowResponse")
	proto.RegisterType((*BatchGetRowResponse)(nil), "otsprotocol.BatchGetRowResponse")
	proto.RegisterType((*RowInBatchWriteRowRequest)(nil), "otsprotocol.RowInBatchWriteRowRequest")
	proto.RegisterType((*TableInBatchWriteRowRequest)(nil), "otsprotocol.TableInBatchWriteRowRequest")
	proto.RegisterType((*BatchWriteRowRequest)(nil), "otsprotocol.BatchWriteRowRequest")
	proto.RegisterType((*RowInBatchWriteRowResponse)(nil), "otsprotocol.RowInBatchWriteRowResponse")
	proto.RegisterType((*TableInBatchWriteRowResponse)(nil), "otsprotocol.TableInBatchWriteRowResponse")
	proto.RegisterType((*BatchWriteRowResponse)(nil), "otsprotocol.BatchWriteRowResponse")
	proto.RegisterType((*GetRangeRequest)(nil), "otsprotocol.GetRangeRequest")
	proto.RegisterType((*GetRangeResponse)(nil), "otsprotocol.GetRangeResponse")
	proto.RegisterType((*ListStreamRequest)(nil), "otsprotocol.ListStreamRequest")
	proto.RegisterType((*Stream)(nil), "otsprotocol.Stream")
	proto.RegisterType((*ListStreamResponse)(nil), "otsprotocol.ListStreamResponse")
	proto.RegisterType((*StreamShard)(nil), "otsprotocol.StreamShard")
	proto.RegisterType((*DescribeStreamRequest)(nil), "otsprotocol.DescribeStreamRequest")
	proto.RegisterType((*DescribeStreamResponse)(nil), "otsprotocol.DescribeStreamResponse")
	proto.RegisterType((*GetShardIteratorRequest)(nil), "otsprotocol.GetShardIteratorRequest")
	proto.RegisterType((*GetShardIteratorResponse)(nil), "otsprotocol.GetShardIteratorResponse")
	proto.RegisterType((*GetStreamRecordRequest)(nil), "otsprotocol.GetStreamRecordRequest")
	proto.RegisterType((*GetStreamRecordResponse)(nil), "otsprotocol.GetStreamRecordResponse")
	proto.RegisterType((*GetStreamRecordResponse_StreamRecord)(nil), "otsprotocol.GetStreamRecordResponse.StreamRecord")
	proto.RegisterType((*ComputeSplitPointsBySizeRequest)(nil), "otsprotocol.ComputeSplitPointsBySizeRequest")
	proto.RegisterType((*ComputeSplitPointsBySizeResponse)(nil), "otsprotocol.ComputeSplitPointsBySizeResponse")
	proto.RegisterType((*ComputeSplitPointsBySizeResponse_SplitLocation)(nil), "otsprotocol.ComputeSplitPointsBySizeResponse.SplitLocation")
	proto.RegisterType((*DefinedColumnSchema)(nil), "otsprotocol.DefinedColumnSchema")
	proto.RegisterType((*IndexMeta)(nil), "otsprotocol.IndexMeta")
	proto.RegisterType((*CreateIndexRequest)(nil), "otsprotocol.CreateIndexRequest")
	proto.RegisterType((*CreateIndexResponse)(nil), "otsprotocol.CreateIndexResponse")
	proto.RegisterType((*DropIndexRequest)(nil), "otsprotocol.DropIndexRequest")
	proto.RegisterType((*DropIndexResponse)(nil), "otsprotocol.DropIndexResponse")
	proto.RegisterType((*AddDefinedColumnRequest)(nil), "otsprotocol.AddDefinedColumnRequest")
	proto.RegisterType((*AddDefinedColumnResponse)(nil), "otsprotocol.AddDefinedColumnResponse")
	proto.RegisterType((*DeleteDefinedColumnRequest)(nil), "otsprotocol.DeleteDefinedColumnRequest")
	proto.RegisterType((*DeleteDefinedColumnResponse)(nil), "otsprotocol.DeleteDefinedColumnResponse")
	proto.RegisterType((*StartLocalTransactionRequest)(nil), "otsprotocol.StartLocalTransactionRequest")
	proto.RegisterType((*StartLocalTransactionResponse)(nil), "otsprotocol.StartLocalTransactionResponse")
	proto.RegisterType((*CommitTransactionRequest)(nil), "otsprotocol.CommitTransactionRequest")
	proto.RegisterType((*CommitTransactionResponse)(nil), "otsprotocol.CommitTransactionResponse")
	proto.RegisterType((*AbortTransactionRequest)(nil), "otsprotocol.AbortTransactionRequest")
	proto.RegisterType((*AbortTransactionResponse)(nil), "otsprotocol.AbortTransactionResponse")
	proto.RegisterType((*ComputeSplitsRequest)(nil), "otsprotocol.ComputeSplitsRequest")
	proto.RegisterType((*SearchIndexSplitsOptions)(nil), "otsprotocol.SearchIndexSplitsOptions")
	proto.RegisterType((*ComputeSplitsResponse)(nil), "otsprotocol.ComputeSplitsResponse")
	proto.RegisterType((*SQLQueryRequest)(nil), "otsprotocol.SQLQueryRequest")
	proto.RegisterType((*TableConsumedCapacity)(nil), "otsprotocol.TableConsumedCapacity")
	proto.RegisterType((*SearchConsumedCapacity)(nil), "otsprotocol.SearchConsumedCapacity")
	proto.RegisterType((*SQLQueryResponse)(nil), "otsprotocol.SQLQueryResponse")
}

func init() { proto.RegisterFile("table_store.proto", fileDescriptor_f723cea3e4fa0cb7) }

var fileDescriptor_f723cea3e4fa0cb7 = []byte{
	// 4300 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x7b, 0x4b, 0x6c, 0x1b, 0x49,
	0x7a, 0xb0, 0x9b, 0x0f, 0x89, 0xfc, 0xf8, 0x50, 0xab, 0xe4, 0x07, 0x25, 0x59, 0xbf, 0xf5, 0xf7,
	0xec, 0x78, 0xb4, 0xc2, 0xc6, 0xbb, 0xe3, 0xb1, 0xb3, 0xf6, 0x0c, 0x76, 0x76, 0x28, 0x92, 0xf2,
	0x10, 0xa6, 0x44, 0xb9, 0x48, 0xf9, 0x11, 0x60, 0xd0, 0xdb, 0xea, 0x2e, 0x5b, 0x1d, 0x93, 0xdd,
	0x74, 0x57, 0xcb, 0x92, 0x06, 0x39, 0x24, 0x87, 0x05, 0x92, 0x20, 0x99, 0xe4, 0x9e, 0x00, 0x39,
	0x05, 0x08, 0x90, 0x43, 0x8e, 0x49, 0x8e, 0x39, 0xe4, 0x90, 0x00, 0x39, 0xe7, 0x1a, 0x60, 0x6f,
	0x39, 0x25, 0x41, 0x4e, 0x39, 0x05, 0xf5, 0xe8, 0x27, 0x9b, 0x7a, 0xd8, 0x3b, 0x98, 0xc9, 0x8d,
	0xf5, 0xd5, 0x57, 0xd5, 0xdf, 0xfb, 0x51, 0x55, 0x84, 0x45, 0xdf, 0x38, 0x18, 0x11, 0x9d, 0xfa,
	0xae, 0x47, 0xee, 0x4c, 0x3c, 0xd7, 0x77, 0x51, 0xc5, 0xf5, 0x29, 0xff, 0x65, 0xba, 0x23, 0xed,
	0x3e, 0x14, 0x3b, 0x9e, 0xe7, 0x7a, 0x08, 0x41, 0xc1, 0x74, 0x2d, 0xd2, 0x50, 0xd6, 0x73, 0x1b,
	0x65, 0xcc, 0x7f, 0xa3, 0x06, 0xcc, 0x8f, 0x09, 0xa5, 0xc6, 0x2b, 0xd2, 0xc8, 0xad, 0x2b, 0x1b,
	0x65, 0x1c, 0x0c, 0xb5, 0x6f, 0x14, 0x50, 0xf7, 0x3c, 0x7b, 0x6c, 0x78, 0xa7, 0x8f, 0xc9, 0xe9,
	0xc0, 0x3c, 0x24, 0x63, 0x83, 0x6d, 0xe1, 0x18, 0xe3, 0x70, 0x0b, 0xf6, 0x1b, 0xfd, 0x18, 0x0a,
	0xfe, 0xe9, 0x84, 0xad, 0xcf, 0x6d, 0xd4, 0xef, 0xae, 0xde, 0x89, 0x7d, 0xfb, 0x4e, 0xb4, 0xc1,
	0xf0, 0x74, 0x42, 0x30, 0x47, 0x44, 0xf7, 0x61, 0xce, 0x9d, 0xf8, 0xb6, 0xeb, 0x34, 0xf2, 0xeb,
	0xca, 0x46, 0xfd, 0xee, 0xda, 0x8c, 0x25, 0x7d, 0x8e, 0x84, 0x25, 0xb2, 0xf6, 0x00, 0xea, 0x7b,
	0x86, 0xe7, 0xdb, 0x1c, 0x68, 0x38, 0xaf, 0x08, 0xba, 0x0a, 0xc5, 0x03, 0xf2, 0xca, 0x76, 0x38,
	0x39, 0x55, 0x2c, 0x06, 0x48, 0x85, 0x3c, 0x71, 0x2c, 0x4e, 0x4e, 0x15, 0xb3, 0x9f, 0xda, 0x3f,
	0xe5, 0xa0, 0x3a, 0x64, 0x42, 0x12, 0x3b, 0x52, 0xb4, 0x0e, 0x55, 0xdf, 0x1e, 0x13, 0xdd, 0x77,
	0xf5, 0x91, 0xfd, 0x96, 0xb1, 0xa3, 0x6c, 0x14, 0x31, 0x30, 0xd8, 0xd0, 0xed, 0xd9, 0x6f, 0x09,
	0xfa, 0xff, 0x50, 0x1d, 0x1b, 0x27, 0xfa, 0x5b, 0xe2, 0x51, 0xb6, 0x82, 0x0b, 0xa7, 0x88, 0x2b,
	0x63, 0xe3, 0xe4, 0xa9, 0x04, 0xa1, 0x2f, 0x61, 0xf1, 0x60, 0xe4, 0xba, 0x63, 0xfd, 0xa5, 0x3d,
	0xf2, 0x89, 0xa7, 0x73, 0x21, 0x08, 0x8e, 0x6e, 0x26, 0x38, 0xda, 0x62, 0x58, 0xdb, 0x1c, 0x89,
	0x4b, 0x61, 0xe1, 0x20, 0x09, 0x40, 0x6b, 0x00, 0x07, 0x23, 0xd7, 0x7c, 0xad, 0x53, 0xfb, 0x6b,
	0xd2, 0x28, 0xf0, 0x4f, 0x95, 0x39, 0x64, 0x60, 0x7f, 0x4d, 0xd0, 0x17, 0xb0, 0x66, 0x91, 0xb7,
	0xb6, 0xc1, 0x68, 0xd7, 0x4d, 0x32, 0x1a, 0x05, 0x64, 0xe9, 0xb6, 0xa3, 0x53, 0x62, 0x36, 0x8a,
	0xeb, 0xca, 0x46, 0x1e, 0x2f, 0x87, 0x48, 0x2d, 0x32, 0x1a, 0x49, 0x32, 0xbb, 0xce, 0x80, 0x98,
	0x8c, 0x1b, 0x63, 0x34, 0x72, 0x8f, 0xf5, 0xa3, 0x89, 0x65, 0xf8, 0xa4, 0x31, 0xb7, 0xae, 0x6c,
	0x94, 0x70, 0x85, 0xc3, 0xf6, 0x39, 0x08, 0xdd, 0x86, 0x05, 0x31, 0xa9, 0xbf, 0x3c, 0x1a, 0x8d,
	0x74, 0xcf, 0x3d, 0x6e, 0xcc, 0x73, 0xac, 0x9a, 0x00, 0x6f, 0x1f, 0x8d, 0x46, 0xd8, 0x3d, 0xd6,
	0xfe, 0x5d, 0x81, 0x32, 0x97, 0xe5, 0x0e, 0xf1, 0x0d, 0x46, 0xb9, 0xb0, 0xbe, 0x98, 0x55, 0x94,
	0x39, 0x64, 0x97, 0x99, 0xc6, 0xe7, 0x50, 0x99, 0x08, 0x75, 0xea, 0xaf, 0xc9, 0x69, 0x23, 0xb7,
	0x9e, 0xdf, 0xa8, 0xcc, 0x54, 0xb7, 0x30, 0x31, 0x0c, 0x93, 0x10, 0x82, 0x1e, 0x41, 0xdd, 0x22,
	0x2f, 0x6d, 0x87, 0x58, 0xba, 0xe9, 0x8e, 0x8e, 0xc6, 0xcc, 0x62, 0xd8, 0x16, 0xeb, 0x89, 0x2d,
	0xda, 0x02, 0xa5, 0xc5, 0x31, 0xe4, 0x2e, 0x35, 0x2b, 0x0e, 0x44, 0xf7, 0x01, 0x6c, 0xc7, 0x22,
	0x27, 0xfa, 0x98, 0xf8, 0x46, 0xa3, 0xc0, 0x37, 0xb9, 0x9e, 0xd8, 0xa4, 0xcb, 0xa6, 0x19, 0x4f,
	0xb8, 0x6c, 0x07, 0x3f, 0xb5, 0xdf, 0x53, 0xa0, 0xdc, 0x72, 0x1d, 0x8b, 0xdb, 0x1c, 0xea, 0x42,
	0xcd, 0x73, 0x8f, 0x75, 0x72, 0x62, 0x53, 0x9f, 0x38, 0xa6, 0xe0, 0xb7, 0x7e, 0xf7, 0x07, 0x89,
	0x7d, 0xb0, 0x7b, 0xdc, 0x09, 0x10, 0x3a, 0x27, 0x13, 0x62, 0xfa, 0x5c, 0x25, 0xb8, 0xea, 0xc5,
	0x26, 0xd0, 0x0f, 0x41, 0x15, 0x0c, 0xe9, 0x66, 0xb0, 0x3d, 0x37, 0xb1, 0x2a, 0x5e, 0x10, 0xf0,
	0xf0, 0xab, 0xda, 0x03, 0xa8, 0xb6, 0x8c, 0x89, 0x61, 0xda, 0xfe, 0xe9, 0xbe, 0x63, 0xfb, 0xcc,
	0x05, 0x3d, 0x62, 0x58, 0xd2, 0x66, 0xf9, 0x6f, 0xe6, 0x08, 0xc7, 0x9e, 0xed, 0x13, 0x69, 0xa6,
	0x62, 0xa0, 0xfd, 0xad, 0x02, 0xcb, 0x98, 0x50, 0xe2, 0xbd, 0x25, 0xd6, 0xf0, 0xd0, 0x73, 0x8f,
	0x5e, 0x1d, 0x4e, 0x8e, 0xfc, 0x36, 0xf1, 0x0d, 0x7b, 0x44, 0xd1, 0xe7, 0x50, 0x33, 0xe5, 0xbe,
	0xfa, 0x91, 0x63, 0xfb, 0x9c, 0x9b, 0xca, 0xdd, 0xe5, 0x04, 0x37, 0xf1, 0x2f, 0xe3, 0xaa, 0x19,
	0xa7, 0xe3, 0x47, 0x80, 0x46, 0x06, 0xf5, 0x75, 0xdb, 0x31, 0x3d, 0x62, 0x50, 0xa2, 0x33, 0xef,
	0xe1, 0x5e, 0x97, 0xc7, 0x2a, 0x9b, 0xe9, 0xca, 0x89, 0xa1, 0x3d, 0x26, 0x21, 0xb6, 0x45, 0xe2,
	0xd8, 0x79, 0x6e, 0xb8, 0x1c, 0xbb, 0x4d, 0x22, 0x6c, 0x6d, 0x08, 0x68, 0x9a, 0xf0, 0xf7, 0xa5,
	0x58, 0xc3, 0xa0, 0xb6, 0x5c, 0x87, 0x1e, 0x8d, 0x89, 0x15, 0x60, 0xbd, 0xf7, 0x9e, 0x7f, 0xa0,
	0xc0, 0xd2, 0xc0, 0xf7, 0x88, 0x31, 0x1e, 0x4c, 0x88, 0x69, 0xbf, 0xb4, 0x4d, 0xae, 0x6e, 0xf4,
	0x01, 0xd4, 0x88, 0x23, 0xe3, 0x32, 0x9b, 0xe5, 0xfb, 0x96, 0x70, 0x55, 0x00, 0xc5, 0x0a, 0xf4,
	0x11, 0x2c, 0x90, 0x93, 0x89, 0xed, 0x09, 0xcf, 0x96, 0xf2, 0x63, 0x0a, 0xac, 0x47, 0x60, 0x2e,
	0xbd, 0x1f, 0x40, 0x5d, 0x98, 0x05, 0x65, 0x21, 0xeb, 0x15, 0xf1, 0xb9, 0x1f, 0x94, 0x71, 0x55,
	0x42, 0x87, 0xee, 0x23, 0xe2, 0x6b, 0xff, 0xac, 0x40, 0x4d, 0xec, 0x1c, 0xe8, 0xf8, 0x42, 0x54,
	0xac, 0x42, 0x59, 0xcc, 0xea, 0xb6, 0x25, 0x93, 0x40, 0x49, 0x00, 0xba, 0x56, 0x16, 0x89, 0xf9,
	0x4c, 0x12, 0x37, 0x80, 0xab, 0x51, 0x97, 0xdf, 0xe3, 0x98, 0x05, 0xae, 0xde, 0x3a, 0x83, 0x77,
	0x38, 0x78, 0x06, 0x33, 0xc5, 0x0c, 0x66, 0xfe, 0x54, 0x01, 0x75, 0x30, 0xe8, 0x24, 0xa5, 0x7a,
	0x1d, 0xe6, 0xc4, 0xfe, 0x92, 0x11, 0x39, 0x42, 0x77, 0xa1, 0xf4, 0x9a, 0x9c, 0xea, 0x32, 0x0d,
	0xb1, 0x08, 0x7c, 0x23, 0xa1, 0xc0, 0xc1, 0xa0, 0x13, 0xa4, 0xa0, 0xf9, 0xd7, 0xe2, 0x07, 0xba,
	0x06, 0x73, 0x6c, 0x8d, 0x6d, 0x71, 0x86, 0xaa, 0xb8, 0xf8, 0x9a, 0x9c, 0x76, 0x2d, 0xb4, 0x0c,
	0x25, 0xcf, 0x1d, 0x11, 0xdd, 0xf0, 0x1c, 0x4e, 0x7f, 0x15, 0xcf, 0xb3, 0x71, 0xd3, 0x73, 0xb4,
	0x3f, 0x54, 0x00, 0x06, 0x83, 0x4e, 0x20, 0xdc, 0xef, 0x96, 0x98, 0xff, 0xc9, 0x03, 0x6a, 0x79,
	0xc4, 0xf0, 0x09, 0x8f, 0xc6, 0x98, 0xbc, 0x39, 0x22, 0xd4, 0x67, 0x81, 0x4e, 0x04, 0x64, 0x1e,
	0xe8, 0x84, 0x31, 0x27, 0x03, 0x5d, 0x18, 0xbc, 0x65, 0xa0, 0xe6, 0x71, 0x7c, 0x0f, 0x96, 0x3c,
	0xe9, 0x70, 0xba, 0x1f, 0x7a, 0x1c, 0xf7, 0xe6, 0xca, 0xdd, 0x5b, 0xc9, 0x00, 0x37, 0xe5, 0x98,
	0x18, 0x79, 0x99, 0xce, 0x2a, 0x08, 0x11, 0xd9, 0x9b, 0x72, 0xc6, 0xd2, 0x8e, 0x15, 0x4f, 0xca,
	0xb8, 0xea, 0xc7, 0x53, 0xf4, 0x67, 0x00, 0x93, 0x20, 0xdb, 0x53, 0x19, 0xb1, 0x53, 0xb5, 0x45,
	0xa2, 0x18, 0xc0, 0x31, 0x74, 0xd4, 0x84, 0x8a, 0x34, 0x69, 0x3a, 0x91, 0xf9, 0x31, 0x9d, 0x34,
	0x32, 0x9c, 0x16, 0x03, 0x0d, 0x81, 0xe8, 0x01, 0x94, 0x28, 0x25, 0x62, 0xfd, 0x1c, 0x5f, 0xbf,
	0x96, 0xd6, 0x62, 0x72, 0xf1, 0x3c, 0xa5, 0x84, 0xaf, 0xfc, 0x29, 0x54, 0xa2, 0x5c, 0x43, 0x1b,
	0xf3, 0x67, 0x26, 0x1b, 0x08, 0x93, 0x0d, 0x65, 0x2e, 0x24, 0xbd, 0x67, 0xe4, 0x9a, 0xc6, 0x48,
	0xf7, 0x4f, 0x9c, 0x46, 0x89, 0xe7, 0xe0, 0xba, 0x80, 0xf7, 0x18, 0x78, 0x78, 0xe2, 0x68, 0xd7,
	0x60, 0x29, 0xa1, 0x7b, 0x3a, 0x71, 0x1d, 0x4a, 0xb4, 0xdf, 0xcf, 0x01, 0x12, 0xe9, 0x3c, 0x61,
	0x13, 0xe7, 0x24, 0xe9, 0x99, 0xba, 0x57, 0xbe, 0x2b, 0xdd, 0xa7, 0xd4, 0x57, 0xb8, 0xbc, 0xfa,
	0xb4, 0xdf, 0xcd, 0xc1, 0x52, 0x42, 0x14, 0x42, 0x44, 0xe8, 0x25, 0xac, 0x66, 0x30, 0xab, 0x5b,
	0xc2, 0xa7, 0xa5, 0xc3, 0xdc, 0x3e, 0x87, 0x69, 0x19, 0x01, 0xf0, 0xb2, 0x77, 0x56, 0x76, 0x4d,
	0x8a, 0x20, 0x97, 0x91, 0x57, 0xce, 0x14, 0x41, 0x5d, 0x8a, 0x20, 0x20, 0x4d, 0xc8, 0x70, 0x25,
	0x43, 0x0a, 0x01, 0x39, 0x35, 0x1a, 0x1f, 0x6a, 0xf7, 0xe1, 0x6a, 0x9b, 0x50, 0xd3, 0xb3, 0x0f,
	0x2e, 0x63, 0x0e, 0xda, 0x1f, 0x15, 0xe0, 0x5a, 0x6a, 0x9d, 0x94, 0xdd, 0x3b, 0xc6, 0x96, 0x73,
	0x44, 0x9e, 0xfb, 0xd6, 0x44, 0x9e, 0xbf, 0x9c, 0xc8, 0x3f, 0x83, 0x6a, 0xd0, 0x49, 0x19, 0xfe,
	0x11, 0x8b, 0x39, 0xac, 0xba, 0x6b, 0x4c, 0x2f, 0x1f, 0xf0, 0x79, 0x5c, 0xf1, 0xa3, 0x41, 0x86,
	0xbe, 0x8a, 0x97, 0xd4, 0x17, 0x2b, 0xd2, 0xe9, 0xa1, 0xe1, 0x59, 0x3a, 0x9d, 0x8c, 0x6c, 0x9f,
	0x36, 0xe6, 0xd6, 0xf3, 0x1b, 0x55, 0x5c, 0xe1, 0xb0, 0x01, 0x07, 0xa1, 0x07, 0x50, 0x61, 0x41,
	0x29, 0xf8, 0xc4, 0x3c, 0xff, 0xc4, 0x54, 0x76, 0x09, 0xf6, 0x07, 0x4a, 0x49, 0xb0, 0x79, 0x2a,
	0x28, 0x95, 0x2e, 0x1a, 0x94, 0x34, 0x04, 0x6a, 0xcf, 0xa6, 0x7e, 0xdc, 0x82, 0xb4, 0x7b, 0xb0,
	0x18, 0x83, 0x49, 0xeb, 0xb8, 0x05, 0x95, 0xc8, 0xac, 0x98, 0x27, 0xb1, 0x9c, 0x0e, 0xa1, 0x5d,
	0x51, 0xed, 0x13, 0x40, 0x6d, 0x32, 0x22, 0x97, 0x0a, 0x4e, 0x2c, 0xd2, 0x25, 0x16, 0xc9, 0x48,
	0xf7, 0x31, 0xa8, 0x3d, 0xd7, 0xb0, 0x2e, 0xb3, 0xd3, 0x12, 0x2c, 0xc6, 0x96, 0xc8, 0x7d, 0x3e,
	0x01, 0xb4, 0xef, 0x8c, 0x2e, 0xb9, 0xd3, 0x35, 0x58, 0x4a, 0x2c, 0x92, 0x7b, 0xfd, 0x36, 0x94,
	0x59, 0x7d, 0x23, 0x5a, 0xd3, 0x35, 0x00, 0xea, 0x1b, 0x9e, 0x2f, 0x0a, 0x21, 0x85, 0x17, 0x42,
	0x65, 0x0e, 0xe1, 0x35, 0xd0, 0x32, 0x94, 0x88, 0x63, 0x45, 0x25, 0x5f, 0x1e, 0xcf, 0x13, 0xc7,
	0xe2, 0x53, 0x1f, 0x40, 0x8d, 0xca, 0xb0, 0x16, 0x2f, 0x92, 0xab, 0x01, 0x90, 0x17, 0xc8, 0xa7,
	0x50, 0xc3, 0xc4, 0x3f, 0xf2, 0x58, 0x9f, 0xe0, 0x13, 0xc7, 0x67, 0x96, 0xe1, 0x71, 0x80, 0xa8,
	0x3b, 0x94, 0x8c, 0xba, 0x43, 0x2c, 0xe0, 0x75, 0x07, 0x78, 0xe1, 0x6f, 0x74, 0x87, 0x85, 0x7f,
	0xbe, 0x52, 0x76, 0x24, 0x42, 0x7f, 0x39, 0xae, 0xbf, 0x45, 0x4f, 0x7e, 0x85, 0xcd, 0x08, 0x35,
	0xfe, 0x49, 0x1e, 0x6a, 0x8f, 0x88, 0x8f, 0xdd, 0xe3, 0x0b, 0xe6, 0x97, 0x5b, 0xe9, 0x26, 0x90,
	0xf5, 0xe5, 0xf1, 0x2e, 0xef, 0x42, 0xd5, 0x2d, 0x8f, 0x3e, 0xac, 0x67, 0xf7, 0x98, 0x7c, 0x65,
	0x4e, 0x48, 0x45, 0x9f, 0x40, 0xfa, 0xb8, 0xec, 0x87, 0x8a, 0x48, 0x37, 0xf2, 0xc5, 0xe9, 0x46,
	0xfe, 0x23, 0xa8, 0x9a, 0x86, 0x79, 0x48, 0x74, 0xde, 0x72, 0x53, 0xd1, 0x1d, 0x7f, 0x5a, 0xf0,
	0xbd, 0x23, 0x82, 0x2b, 0x7c, 0x66, 0x8b, 0x4f, 0xb0, 0x8a, 0x4f, 0xf4, 0xfa, 0xdc, 0xf3, 0xaa,
	0x58, 0x8e, 0xb8, 0xe7, 0x72, 0x65, 0xcb, 0x26, 0xb5, 0xc4, 0x8b, 0xe8, 0x0a, 0x87, 0xc9, 0x06,
	0x74, 0x0d, 0x80, 0x29, 0x5c, 0x22, 0x94, 0x39, 0x42, 0x99, 0x38, 0x41, 0x7f, 0x7a, 0x15, 0x8a,
	0xbe, 0xfb, 0x9a, 0x38, 0x0d, 0x10, 0xe5, 0x1f, 0x1f, 0xa0, 0x0f, 0xa1, 0xee, 0x7b, 0x86, 0x43,
	0x0d, 0x93, 0x57, 0xdf, 0xb6, 0xd5, 0xa8, 0xf0, 0x85, 0xb5, 0x18, 0xb4, 0x6b, 0x69, 0xbf, 0x03,
	0xf5, 0x40, 0x21, 0xd2, 0x17, 0x1f, 0x42, 0xc9, 0x94, 0x9d, 0x8e, 0x8c, 0xd3, 0xc9, 0xe2, 0x25,
	0xdd, 0x06, 0xe1, 0x10, 0x1d, 0xa9, 0x90, 0x67, 0xbd, 0xbf, 0x3c, 0x3d, 0xf1, 0xdc, 0x63, 0x46,
	0xba, 0x43, 0x4e, 0x7c, 0x5d, 0x10, 0x28, 0xea, 0xd3, 0x32, 0x83, 0x0c, 0x19, 0x40, 0xfb, 0x0f,
	0x05, 0x54, 0x91, 0x69, 0x2f, 0x6e, 0x12, 0x6b, 0x00, 0xac, 0x93, 0x36, 0x0f, 0xb9, 0x2e, 0xc5,
	0xb7, 0xca, 0x9e, 0x7b, 0xdc, 0xe2, 0x00, 0x74, 0x0f, 0xca, 0x51, 0x5b, 0x9c, 0xcf, 0xc8, 0x33,
	0x61, 0x77, 0x8c, 0x23, 0x44, 0x16, 0x82, 0x43, 0x43, 0xe6, 0x4e, 0x21, 0x8d, 0x64, 0x25, 0xc3,
	0x0b, 0xa4, 0xdb, 0xe0, 0x9a, 0x97, 0xf0, 0xa2, 0x69, 0x81, 0x17, 0xb3, 0x04, 0xfe, 0x0b, 0x58,
	0x8c, 0x71, 0xfc, 0x6b, 0x94, 0xb9, 0x22, 0x65, 0xae, 0xfd, 0x9b, 0x02, 0xb5, 0xbd, 0xa3, 0x4b,
	0x38, 0xd9, 0xb4, 0xda, 0xbe, 0xef, 0x42, 0xfc, 0x0a, 0xea, 0x01, 0x87, 0xdf, 0x86, 0x04, 0xff,
	0x4b, 0x01, 0x55, 0x64, 0x8e, 0x5f, 0x63, 0xa4, 0xfa, 0x3f, 0x60, 0x98, 0x31, 0x9e, 0xbf, 0x0d,
	0xb1, 0xfe, 0x77, 0x0e, 0x96, 0x79, 0xda, 0xeb, 0x3a, 0x5b, 0x86, 0x6f, 0x1e, 0xbe, 0x5f, 0x26,
	0xc8, 0xa7, 0xe4, 0x1b, 0x86, 0xc1, 0x3c, 0x9f, 0x92, 0x61, 0x70, 0x3a, 0x3f, 0x14, 0xce, 0xcd,
	0x0f, 0xc5, 0x77, 0xcd, 0x0f, 0x73, 0xe7, 0xe7, 0x87, 0xf9, 0xf3, 0xf3, 0x43, 0xe9, 0xcc, 0xfc,
	0x50, 0x3e, 0x2f, 0x3f, 0x40, 0x2a, 0x3f, 0x68, 0x43, 0x40, 0x19, 0xe2, 0xfe, 0x1c, 0xe6, 0xb8,
	0x70, 0x45, 0xb5, 0x95, 0x2e, 0xa2, 0x67, 0xaa, 0x09, 0xcb, 0x55, 0xda, 0x3f, 0x2a, 0xd0, 0xc0,
	0xee, 0x71, 0x0a, 0x47, 0x9a, 0xcd, 0x12, 0x14, 0x6d, 0xaa, 0xbb, 0xaf, 0xe5, 0xe9, 0x46, 0xc1,
	0xa6, 0xfd, 0xd7, 0x68, 0x03, 0x8a, 0xc4, 0xf3, 0x5c, 0x4f, 0x76, 0x87, 0x28, 0xf1, 0x41, 0x7e,
	0xcb, 0x80, 0x05, 0x42, 0xc2, 0xea, 0xf2, 0x19, 0xfd, 0xf3, 0xf9, 0x56, 0x57, 0x08, 0xad, 0x2e,
	0x95, 0x82, 0x8a, 0xe9, 0x14, 0xf4, 0x16, 0x56, 0xb2, 0x98, 0x95, 0x8c, 0x9c, 0x63, 0x94, 0x0f,
	0xa1, 0xe0, 0xb9, 0xc7, 0x54, 0x1e, 0x4e, 0x7f, 0x98, 0x3e, 0xcc, 0xcd, 0xdc, 0x13, 0xf3, 0x25,
	0xda, 0x53, 0x58, 0xca, 0xfa, 0xe0, 0xcf, 0x53, 0x6a, 0xf9, 0xe8, 0x5c, 0xb5, 0xc8, 0x5d, 0x03,
	0xbd, 0xfc, 0x4a, 0x81, 0xe5, 0xe8, 0xd3, 0xcf, 0x3c, 0x3b, 0x11, 0xc4, 0xee, 0xc8, 0xfb, 0x16,
	0x71, 0xfa, 0x9c, 0x0c, 0x22, 0xfd, 0x09, 0x91, 0x67, 0x72, 0xd1, 0x75, 0xcb, 0xf7, 0x34, 0xd9,
	0x6a, 0x27, 0xb0, 0x1a, 0x97, 0x45, 0x9a, 0xcd, 0x73, 0xd4, 0xf6, 0x69, 0x42, 0x6d, 0xb7, 0x67,
	0xa8, 0x2d, 0xb5, 0xa9, 0xd4, 0xdb, 0x9f, 0x2b, 0x70, 0x35, 0xf3, 0x9b, 0x5f, 0xa4, 0x34, 0xb7,
	0x31, 0x53, 0x73, 0xe9, 0x8d, 0xe5, 0xba, 0x8c, 0x40, 0x9d, 0xcb, 0x08, 0xd4, 0x68, 0x15, 0xca,
	0x36, 0xd5, 0x0d, 0xdf, 0x1d, 0xdb, 0x26, 0x77, 0x8f, 0x12, 0x2e, 0xd9, 0xb4, 0xc9, 0xc7, 0xda,
	0x5f, 0x29, 0xb0, 0x92, 0xc5, 0xc2, 0xf7, 0xcf, 0x31, 0xb5, 0xaf, 0xe1, 0x66, 0xb6, 0x54, 0x2e,
	0xe6, 0x7b, 0x9f, 0x25, 0x94, 0xf8, 0xd1, 0xb9, 0x4a, 0x4c, 0x78, 0xdf, 0x6f, 0xc1, 0xb5, 0xec,
	0x8f, 0x36, 0x53, 0x5a, 0xfc, 0xe1, 0x05, 0xb4, 0x98, 0xf2, 0xc0, 0xbf, 0x9e, 0x83, 0x05, 0xe6,
	0x9c, 0x3c, 0x5b, 0x5c, 0xcc, 0x20, 0xef, 0x41, 0xd9, 0xb2, 0x3d, 0x62, 0xca, 0xbb, 0x1c, 0xe6,
	0x9b, 0x49, 0x3f, 0x6a, 0x07, 0xb3, 0x38, 0x42, 0xfc, 0xce, 0x7b, 0x9f, 0xab, 0x50, 0x1c, 0xd9,
	0x63, 0xdb, 0x97, 0x79, 0x4f, 0x0c, 0xd0, 0xcf, 0x60, 0xd5, 0x76, 0xcc, 0xd1, 0x11, 0xb5, 0xdf,
	0xf2, 0xe3, 0x10, 0xcf, 0xd7, 0xe3, 0x89, 0x7b, 0x9e, 0xc7, 0x90, 0x46, 0x88, 0x32, 0x60, 0x18,
	0xd1, 0x45, 0x1e, 0x7a, 0x08, 0xcb, 0xe4, 0x24, 0x58, 0xce, 0xd2, 0x5a, 0x7c, 0x71, 0x89, 0x2f,
	0xbe, 0x1e, 0x22, 0x74, 0x1c, 0x2b, 0xb6, 0x34, 0x9d, 0x6b, 0xcb, 0xe7, 0xe7, 0x5a, 0x38, 0x33,
	0xd7, 0x56, 0xce, 0xcb, 0xb5, 0xd5, 0x99, 0xbd, 0x58, 0xed, 0xec, 0x5e, 0xac, 0x9e, 0xe5, 0xd8,
	0x5f, 0xc1, 0x55, 0xcb, 0xf0, 0x0d, 0x41, 0x3e, 0xef, 0xc5, 0xf5, 0x43, 0xdb, 0xf1, 0x1b, 0x0b,
	0xbc, 0x21, 0x4f, 0x46, 0xc7, 0xb6, 0xe1, 0x1b, 0x9c, 0x1b, 0x16, 0xac, 0x3f, 0x55, 0xdb, 0x5b,
	0x43, 0x7d, 0xaf, 0xd7, 0xec, 0xee, 0xea, 0x5b, 0xfb, 0xdb, 0xdb, 0x1d, 0x8c, 0x17, 0xad, 0x38,
	0xc2, 0x97, 0xb6, 0xe3, 0xa3, 0x26, 0xac, 0xc8, 0xb0, 0x4b, 0x1c, 0xdf, 0xf6, 0x48, 0x5c, 0xb2,
	0xb4, 0xa1, 0xc6, 0x84, 0x75, 0x43, 0xe0, 0x75, 0x38, 0x5a, 0x24, 0x60, 0x8a, 0x9e, 0x00, 0x32,
	0xdd, 0xf1, 0xc4, 0x23, 0x94, 0xc6, 0xe8, 0x5b, 0xe4, 0xf4, 0xa5, 0xae, 0xbd, 0x24, 0x1a, 0x27,
	0xaf, 0xd4, 0xda, 0x1b, 0xea, 0xbb, 0xfd, 0xdd, 0x0e, 0x56, 0xcd, 0x18, 0x9c, 0x51, 0xa5, 0xfd,
	0x7d, 0x0e, 0xd4, 0xc8, 0x5b, 0xde, 0xbf, 0xec, 0x44, 0x61, 0x58, 0x60, 0xa6, 0xc2, 0x7f, 0xa3,
	0x4f, 0xe0, 0x3a, 0x2f, 0x01, 0xa6, 0xad, 0x51, 0x74, 0xa4, 0x4b, 0x6c, 0x36, 0x6d, 0x88, 0xc9,
	0xba, 0xa1, 0x90, 0xaa, 0x1b, 0xd0, 0x16, 0x2c, 0xa4, 0x94, 0xc5, 0x5d, 0xe4, 0x4c, 0x3d, 0xe1,
	0x5a, 0x42, 0x2b, 0xfc, 0x02, 0x31, 0x2e, 0x4e, 0xee, 0x48, 0x67, 0x49, 0x92, 0xb9, 0x76, 0x34,
	0xd2, 0xee, 0x8a, 0xb3, 0x34, 0x71, 0x32, 0x38, 0x2b, 0xd4, 0x28, 0xc9, 0x03, 0x28, 0x1b, 0xe6,
	0xb2, 0xee, 0xee, 0x44, 0x48, 0x8a, 0xee, 0xee, 0x92, 0xbb, 0xe4, 0xd2, 0x01, 0xeb, 0x03, 0xa8,
	0x99, 0x1e, 0x49, 0x5c, 0xec, 0xe5, 0x36, 0xf2, 0xb8, 0x1a, 0x00, 0xf9, 0x41, 0x53, 0x0b, 0x50,
	0x9c, 0x3c, 0xa9, 0xdb, 0xdf, 0x80, 0x79, 0xf1, 0x95, 0x20, 0xc4, 0x2e, 0x65, 0x1c, 0x73, 0xe2,
	0x00, 0x47, 0x7b, 0x03, 0x15, 0x79, 0x5e, 0x7f, 0x68, 0x78, 0xfc, 0x56, 0x4b, 0x1c, 0x74, 0x86,
	0x34, 0xcf, 0xf3, 0xb1, 0xc8, 0x8b, 0x13, 0xc3, 0x23, 0x8e, 0x1f, 0xbb, 0x8b, 0x14, 0x80, 0xae,
	0x85, 0x36, 0x61, 0x51, 0x4e, 0x52, 0xfb, 0x60, 0x64, 0x3b, 0xaf, 0x82, 0xfb, 0xb2, 0x32, 0x5e,
	0x10, 0x13, 0x03, 0x01, 0xef, 0x5a, 0xda, 0x37, 0x4a, 0x74, 0x8a, 0x9d, 0x94, 0xed, 0x99, 0x22,
	0xfb, 0x29, 0x34, 0xd2, 0x81, 0x2f, 0x24, 0x55, 0x90, 0x73, 0x2d, 0x19, 0xf5, 0x06, 0x92, 0xf0,
	0x5b, 0x20, 0x0e, 0x6a, 0x75, 0x11, 0x4d, 0xc5, 0x1d, 0x29, 0x70, 0x50, 0x8f, 0x41, 0xb4, 0xbf,
	0xcb, 0xc1, 0xf5, 0x34, 0x41, 0x52, 0x9a, 0x67, 0x52, 0x94, 0x79, 0x47, 0x9c, 0xcb, 0xb8, 0x80,
	0x4d, 0x6a, 0x3b, 0x7f, 0xae, 0xb6, 0x0b, 0xd3, 0xda, 0x66, 0xc6, 0x1c, 0x5c, 0xbc, 0x88, 0x33,
	0xf0, 0x22, 0xcf, 0x63, 0xcb, 0x59, 0x57, 0x2f, 0xe2, 0x10, 0xbc, 0x4a, 0x63, 0x23, 0xf4, 0x13,
	0x98, 0xe3, 0x2c, 0x8b, 0xc3, 0xeb, 0x4a, 0xea, 0xf0, 0x3c, 0x66, 0x03, 0x58, 0xe2, 0x21, 0x0d,
	0x6a, 0xc2, 0xad, 0x03, 0x29, 0xcf, 0x8b, 0x78, 0xcd, 0xbd, 0x59, 0xc8, 0x56, 0xfb, 0xa5, 0x02,
	0x37, 0x1e, 0x11, 0x39, 0xf4, 0x59, 0x81, 0xeb, 0x7a, 0x17, 0xd2, 0x66, 0xdc, 0xd0, 0x72, 0x49,
	0x43, 0xbb, 0x09, 0x3c, 0x4f, 0x52, 0xdf, 0x18, 0x4f, 0xe4, 0x09, 0x6b, 0x04, 0x88, 0x52, 0x40,
	0x81, 0x53, 0x23, 0x06, 0xda, 0x2f, 0xa0, 0x31, 0x4d, 0x86, 0xd4, 0xe1, 0x87, 0x50, 0x97, 0x9f,
	0x92, 0x33, 0x92, 0x98, 0x1a, 0x8d, 0xa3, 0xa7, 0x02, 0x92, 0xb0, 0xa8, 0x58, 0x23, 0xe3, 0xc3,
	0x75, 0xf6, 0x05, 0x69, 0x1e, 0xa6, 0xeb, 0x59, 0x01, 0x9f, 0x17, 0xdc, 0x3f, 0x4c, 0xe7, 0xb9,
	0x78, 0x3a, 0x4f, 0x9b, 0x46, 0x2a, 0x9c, 0x7c, 0x93, 0x17, 0xf2, 0x4d, 0x7c, 0x56, 0xf2, 0xf5,
	0x3c, 0xbc, 0xd7, 0xf0, 0xf8, 0x44, 0xe0, 0xf0, 0x1f, 0x27, 0x34, 0x3b, 0x63, 0xf5, 0x9d, 0x04,
	0x50, 0x9a, 0x96, 0x18, 0x51, 0x74, 0x07, 0x96, 0xe2, 0x9a, 0x0f, 0xd8, 0x12, 0x32, 0x59, 0x8c,
	0xf4, 0x1f, 0xb0, 0xf6, 0x1e, 0x75, 0xeb, 0x6d, 0x58, 0x18, 0x1b, 0xa7, 0xfa, 0xd8, 0xf5, 0x88,
	0x64, 0x83, 0x2b, 0xb6, 0x84, 0x6b, 0x63, 0xe3, 0x74, 0xc7, 0xf5, 0x88, 0xa0, 0x69, 0xe5, 0x97,
	0x0a, 0x54, 0xe3, 0x24, 0xa3, 0x07, 0x50, 0x91, 0xf9, 0x3e, 0xd6, 0x71, 0x25, 0x4f, 0xd5, 0x9b,
	0x66, 0xd8, 0x6e, 0x81, 0x11, 0xfe, 0x66, 0xe5, 0x89, 0xfc, 0x92, 0x48, 0x62, 0x72, 0xc4, 0xdc,
	0xd0, 0xf5, 0xec, 0x57, 0xb6, 0x13, 0x10, 0x22, 0xb2, 0x57, 0x55, 0x00, 0xc5, 0x67, 0xb5, 0x7f,
	0x50, 0xe0, 0x16, 0x4b, 0x19, 0x47, 0x3e, 0xe1, 0x17, 0x3f, 0x7b, 0xae, 0xed, 0xf8, 0x74, 0xeb,
	0x74, 0x60, 0x7f, 0x4d, 0x2e, 0x7e, 0xc2, 0xca, 0xaf, 0x91, 0xc4, 0x93, 0x32, 0xf1, 0x2a, 0xa7,
	0xcc, 0x21, 0xfc, 0x49, 0xd9, 0x3d, 0xb8, 0x11, 0x4d, 0xf3, 0x87, 0x2f, 0xba, 0xed, 0xe8, 0x07,
	0xa7, 0x7e, 0x70, 0xdd, 0xb0, 0x14, 0xe2, 0xee, 0x3b, 0xb6, 0xdf, 0x75, 0xb6, 0x4e, 0x7d, 0xc2,
	0x02, 0xb0, 0x58, 0x35, 0x61, 0x04, 0xc9, 0x50, 0x27, 0x9e, 0xab, 0x2d, 0xd0, 0x90, 0x50, 0x11,
	0xef, 0xfe, 0x35, 0x07, 0xeb, 0xb3, 0x79, 0x78, 0xff, 0x1a, 0xe1, 0x3e, 0xcc, 0x51, 0xfe, 0xd4,
	0xeb, 0x62, 0xaf, 0xca, 0x24, 0x32, 0x2f, 0x0f, 0x23, 0x16, 0xa8, 0x3c, 0x68, 0xaa, 0x44, 0xd4,
	0x53, 0xf4, 0x02, 0xca, 0x23, 0x57, 0x5c, 0x29, 0x07, 0x0f, 0x0f, 0x3e, 0x9b, 0xca, 0xe6, 0x67,
	0xb1, 0x75, 0x87, 0xcf, 0xf4, 0xe4, 0x1e, 0x38, 0xda, 0x6d, 0xa5, 0x05, 0xb5, 0xc4, 0x1c, 0x5a,
	0x81, 0x52, 0x30, 0x1b, 0x44, 0xaf, 0x60, 0x2c, 0x4c, 0x68, 0x42, 0x0c, 0xf1, 0x0c, 0x03, 0x61,
	0x39, 0xd2, 0xbe, 0x82, 0xa5, 0x8c, 0x17, 0x6f, 0x99, 0x4f, 0x33, 0xef, 0x26, 0x9e, 0x66, 0xfe,
	0xbf, 0xd9, 0xaf, 0xe6, 0xa2, 0xe3, 0x02, 0xed, 0x6f, 0x72, 0x50, 0x0e, 0xaf, 0x02, 0x33, 0x77,
	0xcd, 0x38, 0xc6, 0x2b, 0x27, 0x8e, 0xf1, 0x3e, 0xcc, 0x7c, 0xb6, 0x57, 0x4e, 0x3f, 0xca, 0xfb,
	0x12, 0x16, 0xc5, 0x9d, 0xa4, 0x7c, 0x78, 0x38, 0x76, 0x2d, 0x22, 0x6f, 0x5d, 0x6f, 0x4e, 0xdf,
	0x4c, 0x8a, 0x13, 0xf7, 0x1d, 0xd7, 0x22, 0x78, 0xc1, 0x4e, 0x02, 0xa2, 0xe7, 0x7d, 0xb2, 0x86,
	0x9b, 0x6e, 0xbe, 0xf8, 0x16, 0x9c, 0x4b, 0xf1, 0xbc, 0x8f, 0x3b, 0x69, 0x07, 0x54, 0xb1, 0x8c,
	0x9e, 0x3a, 0xa6, 0x3e, 0x39, 0x34, 0x68, 0x50, 0xbe, 0xad, 0x4e, 0x2f, 0x1e, 0x9c, 0x3a, 0xe6,
	0x1e, 0x43, 0xc1, 0x75, 0x3b, 0x31, 0xd6, 0xfe, 0x42, 0x09, 0x9e, 0xe2, 0x70, 0xc4, 0xc0, 0x43,
	0x79, 0xd4, 0xb1, 0x1d, 0x7d, 0xca, 0x4d, 0x6b, 0x0c, 0x3c, 0x0c, 0x5d, 0x35, 0xf9, 0x36, 0x31,
	0x97, 0x71, 0x02, 0x93, 0xf5, 0x36, 0x91, 0x39, 0x23, 0x2f, 0x45, 0x2c, 0xa2, 0x1f, 0x18, 0x94,
	0xe8, 0xac, 0x2c, 0x95, 0x47, 0x09, 0x0b, 0x72, 0x62, 0xcb, 0xa0, 0x84, 0x15, 0xaf, 0xd1, 0x7b,
	0x11, 0x49, 0xa0, 0xbc, 0xb1, 0x7c, 0x01, 0x6a, 0xdb, 0x73, 0x27, 0xef, 0x44, 0xf5, 0x5a, 0x40,
	0x75, 0xbc, 0xb8, 0xe4, 0x90, 0xe0, 0xb6, 0x35, 0xb6, 0xb5, 0xfc, 0x9e, 0x0f, 0x37, 0x9a, 0x96,
	0x95, 0x30, 0xbc, 0x0b, 0x9f, 0xf6, 0xcc, 0xcb, 0x86, 0x58, 0xba, 0xfb, 0xf9, 0x2f, 0x40, 0x83,
	0x05, 0xda, 0x0a, 0x34, 0xa6, 0xbf, 0x2a, 0x29, 0xda, 0x87, 0x15, 0x71, 0x60, 0xfe, 0x2e, 0x44,
	0x35, 0x92, 0x44, 0x95, 0xa3, 0x4f, 0xae, 0xc1, 0x6a, 0xe6, 0xb6, 0xf2, 0xab, 0x7d, 0xb8, 0xc9,
	0x8b, 0x47, 0xf1, 0x9e, 0x27, 0xea, 0x1f, 0x2f, 0x7e, 0xd7, 0x13, 0x5d, 0x4f, 0xb0, 0x9f, 0xda,
	0x36, 0xac, 0xcd, 0xd8, 0x30, 0x2a, 0x4f, 0x52, 0xdd, 0xab, 0x54, 0x6a, 0xf2, 0xfe, 0xa0, 0x09,
	0x8d, 0x96, 0x3b, 0x1e, 0xdb, 0x7e, 0x06, 0x51, 0x17, 0xdc, 0x62, 0x15, 0x96, 0x33, 0xb6, 0x90,
	0x8c, 0x7f, 0x01, 0x37, 0x9a, 0x07, 0xae, 0xf7, 0x1e, 0xdb, 0x33, 0x65, 0x4e, 0xed, 0x20, 0x77,
	0xff, 0x33, 0x05, 0xae, 0xc6, 0x63, 0x33, 0xbd, 0x58, 0x3b, 0x85, 0x2c, 0x58, 0xa5, 0xc4, 0xf0,
	0xcc, 0x43, 0x5d, 0x46, 0x03, 0xbe, 0x38, 0xf6, 0x72, 0x47, 0x99, 0x3a, 0x18, 0x1e, 0x70, 0x7c,
	0x11, 0x17, 0x38, 0x76, 0xf0, 0xa4, 0xa4, 0x41, 0x67, 0xcc, 0x68, 0x0f, 0xa1, 0x31, 0x6b, 0x55,
	0xca, 0x99, 0x24, 0x81, 0x91, 0x33, 0x3d, 0x83, 0x6b, 0x29, 0xbe, 0xa2, 0xe3, 0x35, 0x4a, 0x28,
	0x0d, 0x05, 0xc6, 0xfb, 0x5b, 0x09, 0x91, 0x4d, 0x89, 0xe0, 0x45, 0x56, 0x01, 0xa2, 0x29, 0xe1,
	0x20, 0x96, 0xb0, 0xb4, 0xbf, 0x54, 0x60, 0x61, 0xf0, 0xa4, 0xf7, 0xe4, 0x88, 0x78, 0xa7, 0x81,
	0xb0, 0xae, 0x42, 0xf1, 0x0d, 0x1b, 0x4b, 0xf9, 0x8b, 0x01, 0x7a, 0x00, 0xf3, 0xf2, 0x18, 0x49,
	0xbe, 0x69, 0x4c, 0x26, 0x93, 0xc1, 0x93, 0xde, 0x9e, 0x71, 0x3a, 0x72, 0x0d, 0x4b, 0x9e, 0x2c,
	0xe1, 0x00, 0x9d, 0x13, 0xf1, 0x26, 0x7c, 0xb2, 0x2e, 0xcb, 0x0b, 0xa0, 0x6f, 0x82, 0x17, 0xea,
	0x3c, 0x25, 0x0b, 0xf1, 0x47, 0xc7, 0xfb, 0x65, 0x5c, 0x11, 0x30, 0x51, 0x17, 0xff, 0xa7, 0x02,
	0xd7, 0x78, 0xe8, 0x99, 0x7a, 0xbf, 0x7b, 0x8e, 0x6a, 0xe3, 0x05, 0x46, 0xee, 0x72, 0x45, 0xe3,
	0x8c, 0x67, 0x71, 0xf9, 0x77, 0x7f, 0x16, 0xf7, 0x23, 0x40, 0x36, 0xe5, 0xcd, 0x17, 0x25, 0x9e,
	0x4d, 0x68, 0xf0, 0x18, 0x9d, 0x85, 0x6c, 0xd5, 0xa6, 0xc3, 0x70, 0x82, 0xbf, 0x3d, 0xff, 0x95,
	0x02, 0xd7, 0x85, 0xc1, 0x5c, 0x96, 0xe9, 0x74, 0x68, 0x4e, 0x5a, 0xd3, 0xfb, 0x14, 0xd2, 0x33,
	0x64, 0x52, 0x78, 0x67, 0x99, 0x68, 0xff, 0x92, 0x03, 0x35, 0xb2, 0x40, 0x69, 0xd6, 0x9f, 0x87,
	0x14, 0x06, 0xed, 0x86, 0x36, 0x7d, 0x84, 0x3b, 0x93, 0x4c, 0x1a, 0x3b, 0x3f, 0x52, 0xc2, 0xf3,
	0xa3, 0x98, 0x01, 0xe7, 0x2f, 0x67, 0xc0, 0x1f, 0xcb, 0x22, 0xaa, 0x90, 0xf1, 0x67, 0x95, 0xc1,
	0x93, 0x1e, 0x6b, 0x7d, 0xc9, 0x98, 0x38, 0x7e, 0xec, 0xca, 0xa5, 0x07, 0x0b, 0xd2, 0xa4, 0x43,
	0x3e, 0x8a, 0x9c, 0x8f, 0x0f, 0x32, 0xa2, 0xc8, 0x14, 0x23, 0x75, 0x1a, 0x87, 0x53, 0x96, 0xe9,
	0x45, 0xa7, 0x14, 0xf7, 0x12, 0xf1, 0xc6, 0x64, 0x81, 0xf7, 0x49, 0x91, 0xa7, 0x6c, 0xde, 0x87,
	0x7a, 0xf2, 0x3f, 0x37, 0xa8, 0x02, 0xf3, 0xdd, 0xdd, 0x61, 0xe7, 0x51, 0x07, 0xab, 0x0a, 0x02,
	0x98, 0x1b, 0x0c, 0x71, 0x77, 0xf7, 0x91, 0x9a, 0x63, 0xbf, 0xb7, 0xba, 0xbb, 0x4d, 0xfc, 0x42,
	0xcd, 0x6f, 0xde, 0x8e, 0xff, 0xd7, 0x47, 0x44, 0x25, 0x84, 0xa0, 0xde, 0xdc, 0x1f, 0xf6, 0xf5,
	0xee, 0x6e, 0x0b, 0x77, 0x76, 0x3a, 0xbb, 0x43, 0x55, 0xd9, 0xfc, 0x02, 0x6a, 0x89, 0xd3, 0x30,
	0x74, 0x15, 0xa6, 0xce, 0x2d, 0xd5, 0x2b, 0x68, 0x19, 0xae, 0x31, 0xe8, 0xa0, 0xbb, 0xb3, 0xd7,
	0xeb, 0xe8, 0xb8, 0xff, 0x4c, 0xdf, 0x69, 0x0e, 0x71, 0xf7, 0xb9, 0xaa, 0x6c, 0xde, 0x84, 0x6a,
	0xfc, 0x34, 0x0c, 0x55, 0x21, 0x3c, 0x59, 0x54, 0xaf, 0x6c, 0xde, 0x81, 0x85, 0xd4, 0xbf, 0x65,
	0x50, 0x09, 0x0a, 0x7c, 0x52, 0x61, 0xbf, 0x5a, 0x9d, 0x5e, 0x4f, 0xcd, 0xa1, 0x79, 0xc8, 0xe3,
	0xfe, 0x33, 0x35, 0xbf, 0xf9, 0x04, 0x2a, 0xb1, 0x27, 0x79, 0x8c, 0xa5, 0x66, 0x6b, 0xd8, 0x7d,
	0xca, 0xb0, 0xab, 0x50, 0xea, 0xee, 0xca, 0x51, 0x8e, 0x49, 0xa1, 0xd7, 0x6f, 0xb6, 0x19, 0xe7,
	0x79, 0x54, 0x83, 0xf2, 0xfe, 0x6e, 0x30, 0x2c, 0x30, 0xcc, 0xfd, 0xbd, 0x76, 0x73, 0xc8, 0x46,
	0xc5, 0xcd, 0x1d, 0xb8, 0x31, 0xe3, 0x3f, 0x1c, 0x6c, 0xfb, 0xee, 0xa3, 0xdd, 0x3e, 0xee, 0xa8,
	0x57, 0x90, 0x0a, 0xd5, 0xce, 0xf3, 0xbd, 0x4e, 0x6b, 0xa8, 0x77, 0x9e, 0x77, 0x07, 0x43, 0x55,
	0x61, 0xa2, 0x90, 0x90, 0xdd, 0x7e, 0x00, 0xcd, 0x6d, 0xfe, 0x98, 0xbf, 0x19, 0x0f, 0x94, 0xb1,
	0x04, 0x0b, 0x83, 0x41, 0x47, 0x7f, 0xbc, 0x33, 0xd0, 0x07, 0x1d, 0xfc, 0xb4, 0xdb, 0x92, 0x94,
	0x32, 0xe0, 0xd6, 0x8b, 0xfe, 0x63, 0x35, 0xb7, 0xf9, 0x10, 0x20, 0x7a, 0xa9, 0xc5, 0xe8, 0xc6,
	0x81, 0x74, 0x50, 0x19, 0x8a, 0x78, 0xa8, 0xef, 0x3d, 0x56, 0x15, 0xb6, 0x11, 0x1e, 0xea, 0xcd,
	0xed, 0x61, 0x07, 0xeb, 0x3b, 0xfd, 0x76, 0x77, 0xfb, 0x85, 0x9a, 0xdb, 0xfc, 0x09, 0xd4, 0x12,
	0x17, 0x80, 0x4c, 0x4e, 0x7b, 0xfb, 0x43, 0xa1, 0x77, 0xce, 0x62, 0x47, 0xe8, 0xbd, 0xdd, 0xe9,
	0x75, 0x86, 0x1d, 0xae, 0xf7, 0x72, 0x78, 0x2d, 0xc1, 0xbe, 0xb5, 0xdd, 0xc7, 0xcf, 0x9a, 0xb8,
	0xad, 0x5e, 0x61, 0x44, 0x6d, 0x35, 0x5b, 0x8f, 0xf9, 0x48, 0xd9, 0xfc, 0xcd, 0xa0, 0x31, 0x96,
	0x82, 0x66, 0x7c, 0x0c, 0x71, 0xa7, 0xb9, 0xa3, 0x77, 0x76, 0x9b, 0x5b, 0x3d, 0x26, 0x39, 0x05,
	0x2d, 0x42, 0x4d, 0x02, 0x03, 0xb1, 0x33, 0x66, 0xa2, 0x06, 0x99, 0x7d, 0x60, 0x6f, 0x7f, 0xc8,
	0xec, 0x41, 0x55, 0x50, 0x1d, 0x40, 0x90, 0xc4, 0xc7, 0x39, 0x36, 0x16, 0x64, 0xe9, 0x42, 0xb5,
	0x26, 0x2c, 0x4e, 0xb5, 0x28, 0x68, 0x01, 0x2a, 0xed, 0xd6, 0x50, 0x8f, 0x0c, 0x9a, 0xad, 0x6a,
	0x0d, 0xf5, 0x76, 0x7f, 0x7f, 0xab, 0xc7, 0x98, 0x93, 0x08, 0x5b, 0xfd, 0x7e, 0xaf, 0xd3, 0xdc,
	0x55, 0xf3, 0x01, 0x82, 0xb4, 0x7a, 0xae, 0x6c, 0x8e, 0xd0, 0xeb, 0x6f, 0xa9, 0xf3, 0x9b, 0x9f,
	0xc2, 0x42, 0xaa, 0xb9, 0x60, 0xac, 0x75, 0xf7, 0x77, 0xf4, 0xe6, 0xe0, 0xc5, 0x6e, 0x4b, 0xef,
	0xee, 0xb6, 0x3b, 0xcf, 0xd5, 0x2b, 0xcc, 0x17, 0x18, 0x30, 0x06, 0x53, 0x36, 0xef, 0xc9, 0x3e,
	0x29, 0x50, 0x6c, 0x77, 0xa8, 0x3f, 0xea, 0xf5, 0xb7, 0x9a, 0xbd, 0xc4, 0xaa, 0xa1, 0xde, 0xeb,
	0xb7, 0x42, 0x98, 0xb2, 0xf9, 0x33, 0xa8, 0x27, 0xdb, 0x09, 0x46, 0x72, 0x77, 0xb0, 0xa7, 0x77,
	0x77, 0x9f, 0x36, 0x7b, 0x5d, 0x29, 0x7a, 0x06, 0xd8, 0xde, 0xef, 0xf5, 0xa4, 0x1d, 0xf3, 0xe9,
	0x16, 0x56, 0x73, 0x9b, 0x3f, 0x87, 0xc5, 0xa9, 0x50, 0xc5, 0x2c, 0x6f, 0xf0, 0xa4, 0x97, 0x74,
	0x42, 0x25, 0x80, 0x6e, 0xf7, 0x9a, 0x43, 0x09, 0x1c, 0xa8, 0xb9, 0xcd, 0x3f, 0x56, 0x38, 0x38,
	0x11, 0xb5, 0x98, 0x90, 0x18, 0xea, 0xa0, 0xd3, 0xeb, 0xb4, 0x86, 0xd1, 0xd2, 0x16, 0xee, 0x30,
	0xfd, 0x0c, 0x9b, 0x42, 0xb6, 0x08, 0xea, 0x1c, 0xeb, 0xcb, 0xfe, 0x33, 0x09, 0xcb, 0xa3, 0xeb,
	0x80, 0x18, 0xac, 0xdd, 0x19, 0xb4, 0x70, 0x77, 0x2b, 0xc0, 0x2d, 0x04, 0xb8, 0x6d, 0xdc, 0xdf,
	0x93, 0xb0, 0x22, 0x37, 0x9a, 0x27, 0x3d, 0xbd, 0xd9, 0x63, 0x46, 0x2b, 0x80, 0x73, 0xff, 0x1b,
	0x00, 0x00, 0xff, 0xff, 0xbe, 0xe7, 0x7f, 0x56, 0xbe, 0x38, 0x00, 0x00,
}
