diff --git a/pkg/kvrpcpb/kvrpcpb.pb.go b/pkg/kvrpcpb/kvrpcpb.pb.go index 9ba36a13b..b5d46fae1 100644 --- a/pkg/kvrpcpb/kvrpcpb.pb.go +++ b/pkg/kvrpcpb/kvrpcpb.pb.go @@ -96,7 +96,7 @@ func (x APIVersion) String() string { return proto.EnumName(APIVersion_name, int32(x)) } func (APIVersion) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{0} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{0} } type CommandPri int32 @@ -122,7 +122,7 @@ func (x CommandPri) String() string { return proto.EnumName(CommandPri_name, int32(x)) } func (CommandPri) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{1} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{1} } type IsolationLevel int32 @@ -145,7 +145,7 @@ func (x IsolationLevel) String() string { return proto.EnumName(IsolationLevel_name, int32(x)) } func (IsolationLevel) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{2} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{2} } // Operation allowed info during each TiKV storage threshold. @@ -172,7 +172,7 @@ func (x DiskFullOpt) String() string { return proto.EnumName(DiskFullOpt_name, int32(x)) } func (DiskFullOpt) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{3} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{3} } type Op int32 @@ -211,7 +211,7 @@ func (x Op) String() string { return proto.EnumName(Op_name, int32(x)) } func (Op) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{4} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{4} } type Assertion int32 @@ -237,7 +237,7 @@ func (x Assertion) String() string { return proto.EnumName(Assertion_name, int32(x)) } func (Assertion) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{5} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{5} } type Action int32 @@ -272,7 +272,7 @@ func (x Action) String() string { return proto.EnumName(Action_name, int32(x)) } func (Action) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{6} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{6} } type ExtraOp int32 @@ -296,7 +296,7 @@ func (x ExtraOp) String() string { return proto.EnumName(ExtraOp_name, int32(x)) } func (ExtraOp) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{7} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{7} } type ChecksumAlgorithm int32 @@ -316,7 +316,7 @@ func (x ChecksumAlgorithm) String() string { return proto.EnumName(ChecksumAlgorithm_name, int32(x)) } func (ChecksumAlgorithm) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{8} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{8} } // A transactional get command. Lookup a value for `key` in the transaction with @@ -334,7 +334,7 @@ func (m *GetRequest) Reset() { *m = GetRequest{} } func (m *GetRequest) String() string { return proto.CompactTextString(m) } func (*GetRequest) ProtoMessage() {} func (*GetRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{0} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{0} } func (m *GetRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -405,7 +405,7 @@ func (m *GetResponse) Reset() { *m = GetResponse{} } func (m *GetResponse) String() string { return proto.CompactTextString(m) } func (*GetResponse) ProtoMessage() {} func (*GetResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{1} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{1} } func (m *GetResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -495,7 +495,7 @@ func (m *ScanRequest) Reset() { *m = ScanRequest{} } func (m *ScanRequest) String() string { return proto.CompactTextString(m) } func (*ScanRequest) ProtoMessage() {} func (*ScanRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{2} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{2} } func (m *ScanRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -597,7 +597,7 @@ func (m *ScanResponse) Reset() { *m = ScanResponse{} } func (m *ScanResponse) String() string { return proto.CompactTextString(m) } func (*ScanResponse) ProtoMessage() {} func (*ScanResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{3} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{3} } func (m *ScanResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -691,7 +691,7 @@ func (m *PrewriteRequest) Reset() { *m = PrewriteRequest{} } func (m *PrewriteRequest) String() string { return proto.CompactTextString(m) } func (*PrewriteRequest) ProtoMessage() {} func (*PrewriteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{4} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{4} } func (m *PrewriteRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -838,7 +838,7 @@ func (m *PrewriteResponse) Reset() { *m = PrewriteResponse{} } func (m *PrewriteResponse) String() string { return proto.CompactTextString(m) } func (*PrewriteResponse) ProtoMessage() {} func (*PrewriteResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{5} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{5} } func (m *PrewriteResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -933,7 +933,7 @@ func (m *PessimisticLockRequest) Reset() { *m = PessimisticLockRequest{} func (m *PessimisticLockRequest) String() string { return proto.CompactTextString(m) } func (*PessimisticLockRequest) ProtoMessage() {} func (*PessimisticLockRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{6} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{6} } func (m *PessimisticLockRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1061,7 +1061,7 @@ func (m *PessimisticLockResponse) Reset() { *m = PessimisticLockResponse func (m *PessimisticLockResponse) String() string { return proto.CompactTextString(m) } func (*PessimisticLockResponse) ProtoMessage() {} func (*PessimisticLockResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{7} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{7} } func (m *PessimisticLockResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1147,7 +1147,7 @@ func (m *PessimisticRollbackRequest) Reset() { *m = PessimisticRollbackR func (m *PessimisticRollbackRequest) String() string { return proto.CompactTextString(m) } func (*PessimisticRollbackRequest) ProtoMessage() {} func (*PessimisticRollbackRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{8} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{8} } func (m *PessimisticRollbackRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1216,7 +1216,7 @@ func (m *PessimisticRollbackResponse) Reset() { *m = PessimisticRollback func (m *PessimisticRollbackResponse) String() string { return proto.CompactTextString(m) } func (*PessimisticRollbackResponse) ProtoMessage() {} func (*PessimisticRollbackResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{9} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{9} } func (m *PessimisticRollbackResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1277,7 +1277,7 @@ func (m *TxnHeartBeatRequest) Reset() { *m = TxnHeartBeatRequest{} } func (m *TxnHeartBeatRequest) String() string { return proto.CompactTextString(m) } func (*TxnHeartBeatRequest) ProtoMessage() {} func (*TxnHeartBeatRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{10} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{10} } func (m *TxnHeartBeatRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1348,7 +1348,7 @@ func (m *TxnHeartBeatResponse) Reset() { *m = TxnHeartBeatResponse{} } func (m *TxnHeartBeatResponse) String() string { return proto.CompactTextString(m) } func (*TxnHeartBeatResponse) ProtoMessage() {} func (*TxnHeartBeatResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{11} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{11} } func (m *TxnHeartBeatResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1434,7 +1434,7 @@ func (m *CheckTxnStatusRequest) Reset() { *m = CheckTxnStatusRequest{} } func (m *CheckTxnStatusRequest) String() string { return proto.CompactTextString(m) } func (*CheckTxnStatusRequest) ProtoMessage() {} func (*CheckTxnStatusRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{12} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{12} } func (m *CheckTxnStatusRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1540,7 +1540,7 @@ func (m *CheckTxnStatusResponse) Reset() { *m = CheckTxnStatusResponse{} func (m *CheckTxnStatusResponse) String() string { return proto.CompactTextString(m) } func (*CheckTxnStatusResponse) ProtoMessage() {} func (*CheckTxnStatusResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{13} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{13} } func (m *CheckTxnStatusResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1628,7 +1628,7 @@ func (m *CheckSecondaryLocksRequest) Reset() { *m = CheckSecondaryLocksR func (m *CheckSecondaryLocksRequest) String() string { return proto.CompactTextString(m) } func (*CheckSecondaryLocksRequest) ProtoMessage() {} func (*CheckSecondaryLocksRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{14} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{14} } func (m *CheckSecondaryLocksRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1697,7 +1697,7 @@ func (m *CheckSecondaryLocksResponse) Reset() { *m = CheckSecondaryLocks func (m *CheckSecondaryLocksResponse) String() string { return proto.CompactTextString(m) } func (*CheckSecondaryLocksResponse) ProtoMessage() {} func (*CheckSecondaryLocksResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{15} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{15} } func (m *CheckSecondaryLocksResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1773,7 +1773,7 @@ func (m *CommitRequest) Reset() { *m = CommitRequest{} } func (m *CommitRequest) String() string { return proto.CompactTextString(m) } func (*CommitRequest) ProtoMessage() {} func (*CommitRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{16} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{16} } func (m *CommitRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1844,7 +1844,7 @@ func (m *CommitResponse) Reset() { *m = CommitResponse{} } func (m *CommitResponse) String() string { return proto.CompactTextString(m) } func (*CommitResponse) ProtoMessage() {} func (*CommitResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{17} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{17} } func (m *CommitResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1907,7 +1907,7 @@ func (m *ImportRequest) Reset() { *m = ImportRequest{} } func (m *ImportRequest) String() string { return proto.CompactTextString(m) } func (*ImportRequest) ProtoMessage() {} func (*ImportRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{18} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{18} } func (m *ImportRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1962,7 +1962,7 @@ func (m *ImportResponse) Reset() { *m = ImportResponse{} } func (m *ImportResponse) String() string { return proto.CompactTextString(m) } func (*ImportResponse) ProtoMessage() {} func (*ImportResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{19} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{19} } func (m *ImportResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2024,7 +2024,7 @@ func (m *CleanupRequest) Reset() { *m = CleanupRequest{} } func (m *CleanupRequest) String() string { return proto.CompactTextString(m) } func (*CleanupRequest) ProtoMessage() {} func (*CleanupRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{20} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{20} } func (m *CleanupRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2095,7 +2095,7 @@ func (m *CleanupResponse) Reset() { *m = CleanupResponse{} } func (m *CleanupResponse) String() string { return proto.CompactTextString(m) } func (*CleanupResponse) ProtoMessage() {} func (*CleanupResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{21} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{21} } func (m *CleanupResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2159,7 +2159,7 @@ func (m *BatchGetRequest) Reset() { *m = BatchGetRequest{} } func (m *BatchGetRequest) String() string { return proto.CompactTextString(m) } func (*BatchGetRequest) ProtoMessage() {} func (*BatchGetRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{22} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{22} } func (m *BatchGetRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2227,7 +2227,7 @@ func (m *BatchGetResponse) Reset() { *m = BatchGetResponse{} } func (m *BatchGetResponse) String() string { return proto.CompactTextString(m) } func (*BatchGetResponse) ProtoMessage() {} func (*BatchGetResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{23} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{23} } func (m *BatchGetResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2301,7 +2301,7 @@ func (m *BatchRollbackRequest) Reset() { *m = BatchRollbackRequest{} } func (m *BatchRollbackRequest) String() string { return proto.CompactTextString(m) } func (*BatchRollbackRequest) ProtoMessage() {} func (*BatchRollbackRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{24} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{24} } func (m *BatchRollbackRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2363,7 +2363,7 @@ func (m *BatchRollbackResponse) Reset() { *m = BatchRollbackResponse{} } func (m *BatchRollbackResponse) String() string { return proto.CompactTextString(m) } func (*BatchRollbackResponse) ProtoMessage() {} func (*BatchRollbackResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{25} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{25} } func (m *BatchRollbackResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2427,7 +2427,7 @@ func (m *ScanLockRequest) Reset() { *m = ScanLockRequest{} } func (m *ScanLockRequest) String() string { return proto.CompactTextString(m) } func (*ScanLockRequest) ProtoMessage() {} func (*ScanLockRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{26} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{26} } func (m *ScanLockRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2505,7 +2505,7 @@ func (m *ScanLockResponse) Reset() { *m = ScanLockResponse{} } func (m *ScanLockResponse) String() string { return proto.CompactTextString(m) } func (*ScanLockResponse) ProtoMessage() {} func (*ScanLockResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{27} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{27} } func (m *ScanLockResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2575,7 +2575,7 @@ func (m *ResolveLockRequest) Reset() { *m = ResolveLockRequest{} } func (m *ResolveLockRequest) String() string { return proto.CompactTextString(m) } func (*ResolveLockRequest) ProtoMessage() {} func (*ResolveLockRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{28} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{28} } func (m *ResolveLockRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2651,7 +2651,7 @@ func (m *ResolveLockResponse) Reset() { *m = ResolveLockResponse{} } func (m *ResolveLockResponse) String() string { return proto.CompactTextString(m) } func (*ResolveLockResponse) ProtoMessage() {} func (*ResolveLockResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{29} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{29} } func (m *ResolveLockResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2707,7 +2707,7 @@ func (m *GCRequest) Reset() { *m = GCRequest{} } func (m *GCRequest) String() string { return proto.CompactTextString(m) } func (*GCRequest) ProtoMessage() {} func (*GCRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{30} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{30} } func (m *GCRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2762,7 +2762,7 @@ func (m *GCResponse) Reset() { *m = GCResponse{} } func (m *GCResponse) String() string { return proto.CompactTextString(m) } func (*GCResponse) ProtoMessage() {} func (*GCResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{31} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{31} } func (m *GCResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2824,7 +2824,7 @@ func (m *DeleteRangeRequest) Reset() { *m = DeleteRangeRequest{} } func (m *DeleteRangeRequest) String() string { return proto.CompactTextString(m) } func (*DeleteRangeRequest) ProtoMessage() {} func (*DeleteRangeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{32} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{32} } func (m *DeleteRangeRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2893,7 +2893,7 @@ func (m *DeleteRangeResponse) Reset() { *m = DeleteRangeResponse{} } func (m *DeleteRangeResponse) String() string { return proto.CompactTextString(m) } func (*DeleteRangeResponse) ProtoMessage() {} func (*DeleteRangeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{33} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{33} } func (m *DeleteRangeResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2949,7 +2949,7 @@ func (m *RawGetRequest) Reset() { *m = RawGetRequest{} } func (m *RawGetRequest) String() string { return proto.CompactTextString(m) } func (*RawGetRequest) ProtoMessage() {} func (*RawGetRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{34} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{34} } func (m *RawGetRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3013,7 +3013,7 @@ func (m *RawGetResponse) Reset() { *m = RawGetResponse{} } func (m *RawGetResponse) String() string { return proto.CompactTextString(m) } func (*RawGetResponse) ProtoMessage() {} func (*RawGetResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{35} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{35} } func (m *RawGetResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3083,7 +3083,7 @@ func (m *RawBatchGetRequest) Reset() { *m = RawBatchGetRequest{} } func (m *RawBatchGetRequest) String() string { return proto.CompactTextString(m) } func (*RawBatchGetRequest) ProtoMessage() {} func (*RawBatchGetRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{36} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{36} } func (m *RawBatchGetRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3145,7 +3145,7 @@ func (m *RawBatchGetResponse) Reset() { *m = RawBatchGetResponse{} } func (m *RawBatchGetResponse) String() string { return proto.CompactTextString(m) } func (*RawBatchGetResponse) ProtoMessage() {} func (*RawBatchGetResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{37} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{37} } func (m *RawBatchGetResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3204,7 +3204,7 @@ func (m *RawPutRequest) Reset() { *m = RawPutRequest{} } func (m *RawPutRequest) String() string { return proto.CompactTextString(m) } func (*RawPutRequest) ProtoMessage() {} func (*RawPutRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{38} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{38} } func (m *RawPutRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3287,7 +3287,7 @@ func (m *RawPutResponse) Reset() { *m = RawPutResponse{} } func (m *RawPutResponse) String() string { return proto.CompactTextString(m) } func (*RawPutResponse) ProtoMessage() {} func (*RawPutResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{39} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{39} } func (m *RawPutResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3348,7 +3348,7 @@ func (m *RawBatchPutRequest) Reset() { *m = RawBatchPutRequest{} } func (m *RawBatchPutRequest) String() string { return proto.CompactTextString(m) } func (*RawBatchPutRequest) ProtoMessage() {} func (*RawBatchPutRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{40} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{40} } func (m *RawBatchPutRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3424,7 +3424,7 @@ func (m *RawBatchPutResponse) Reset() { *m = RawBatchPutResponse{} } func (m *RawBatchPutResponse) String() string { return proto.CompactTextString(m) } func (*RawBatchPutResponse) ProtoMessage() {} func (*RawBatchPutResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{41} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{41} } func (m *RawBatchPutResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3481,7 +3481,7 @@ func (m *RawDeleteRequest) Reset() { *m = RawDeleteRequest{} } func (m *RawDeleteRequest) String() string { return proto.CompactTextString(m) } func (*RawDeleteRequest) ProtoMessage() {} func (*RawDeleteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{42} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{42} } func (m *RawDeleteRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3550,7 +3550,7 @@ func (m *RawDeleteResponse) Reset() { *m = RawDeleteResponse{} } func (m *RawDeleteResponse) String() string { return proto.CompactTextString(m) } func (*RawDeleteResponse) ProtoMessage() {} func (*RawDeleteResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{43} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{43} } func (m *RawDeleteResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3607,7 +3607,7 @@ func (m *RawBatchDeleteRequest) Reset() { *m = RawBatchDeleteRequest{} } func (m *RawBatchDeleteRequest) String() string { return proto.CompactTextString(m) } func (*RawBatchDeleteRequest) ProtoMessage() {} func (*RawBatchDeleteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{44} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{44} } func (m *RawBatchDeleteRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3676,7 +3676,7 @@ func (m *RawBatchDeleteResponse) Reset() { *m = RawBatchDeleteResponse{} func (m *RawBatchDeleteResponse) String() string { return proto.CompactTextString(m) } func (*RawBatchDeleteResponse) ProtoMessage() {} func (*RawBatchDeleteResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{45} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{45} } func (m *RawBatchDeleteResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3738,7 +3738,7 @@ func (m *RawScanRequest) Reset() { *m = RawScanRequest{} } func (m *RawScanRequest) String() string { return proto.CompactTextString(m) } func (*RawScanRequest) ProtoMessage() {} func (*RawScanRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{46} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{46} } func (m *RawScanRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3828,7 +3828,7 @@ func (m *RawScanResponse) Reset() { *m = RawScanResponse{} } func (m *RawScanResponse) String() string { return proto.CompactTextString(m) } func (*RawScanResponse) ProtoMessage() {} func (*RawScanResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{47} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{47} } func (m *RawScanResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3885,7 +3885,7 @@ func (m *RawDeleteRangeRequest) Reset() { *m = RawDeleteRangeRequest{} } func (m *RawDeleteRangeRequest) String() string { return proto.CompactTextString(m) } func (*RawDeleteRangeRequest) ProtoMessage() {} func (*RawDeleteRangeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{48} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{48} } func (m *RawDeleteRangeRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3954,7 +3954,7 @@ func (m *RawDeleteRangeResponse) Reset() { *m = RawDeleteRangeResponse{} func (m *RawDeleteRangeResponse) String() string { return proto.CompactTextString(m) } func (*RawDeleteRangeResponse) ProtoMessage() {} func (*RawDeleteRangeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{49} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{49} } func (m *RawDeleteRangeResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4013,7 +4013,7 @@ func (m *RawBatchScanRequest) Reset() { *m = RawBatchScanRequest{} } func (m *RawBatchScanRequest) String() string { return proto.CompactTextString(m) } func (*RawBatchScanRequest) ProtoMessage() {} func (*RawBatchScanRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{50} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{50} } func (m *RawBatchScanRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4096,7 +4096,7 @@ func (m *RawBatchScanResponse) Reset() { *m = RawBatchScanResponse{} } func (m *RawBatchScanResponse) String() string { return proto.CompactTextString(m) } func (*RawBatchScanResponse) ProtoMessage() {} func (*RawBatchScanResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{51} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{51} } func (m *RawBatchScanResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4152,7 +4152,7 @@ func (m *UnsafeDestroyRangeRequest) Reset() { *m = UnsafeDestroyRangeReq func (m *UnsafeDestroyRangeRequest) String() string { return proto.CompactTextString(m) } func (*UnsafeDestroyRangeRequest) ProtoMessage() {} func (*UnsafeDestroyRangeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{52} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{52} } func (m *UnsafeDestroyRangeRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4214,7 +4214,7 @@ func (m *UnsafeDestroyRangeResponse) Reset() { *m = UnsafeDestroyRangeRe func (m *UnsafeDestroyRangeResponse) String() string { return proto.CompactTextString(m) } func (*UnsafeDestroyRangeResponse) ProtoMessage() {} func (*UnsafeDestroyRangeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{53} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{53} } func (m *UnsafeDestroyRangeResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4269,7 +4269,7 @@ func (m *RegisterLockObserverRequest) Reset() { *m = RegisterLockObserve func (m *RegisterLockObserverRequest) String() string { return proto.CompactTextString(m) } func (*RegisterLockObserverRequest) ProtoMessage() {} func (*RegisterLockObserverRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{54} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{54} } func (m *RegisterLockObserverRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4323,7 +4323,7 @@ func (m *RegisterLockObserverResponse) Reset() { *m = RegisterLockObserv func (m *RegisterLockObserverResponse) String() string { return proto.CompactTextString(m) } func (*RegisterLockObserverResponse) ProtoMessage() {} func (*RegisterLockObserverResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{55} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{55} } func (m *RegisterLockObserverResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4371,7 +4371,7 @@ func (m *CheckLockObserverRequest) Reset() { *m = CheckLockObserverReque func (m *CheckLockObserverRequest) String() string { return proto.CompactTextString(m) } func (*CheckLockObserverRequest) ProtoMessage() {} func (*CheckLockObserverRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{56} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{56} } func (m *CheckLockObserverRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4427,7 +4427,7 @@ func (m *CheckLockObserverResponse) Reset() { *m = CheckLockObserverResp func (m *CheckLockObserverResponse) String() string { return proto.CompactTextString(m) } func (*CheckLockObserverResponse) ProtoMessage() {} func (*CheckLockObserverResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{57} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{57} } func (m *CheckLockObserverResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4489,7 +4489,7 @@ func (m *RemoveLockObserverRequest) Reset() { *m = RemoveLockObserverReq func (m *RemoveLockObserverRequest) String() string { return proto.CompactTextString(m) } func (*RemoveLockObserverRequest) ProtoMessage() {} func (*RemoveLockObserverRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{58} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{58} } func (m *RemoveLockObserverRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4543,7 +4543,7 @@ func (m *RemoveLockObserverResponse) Reset() { *m = RemoveLockObserverRe func (m *RemoveLockObserverResponse) String() string { return proto.CompactTextString(m) } func (*RemoveLockObserverResponse) ProtoMessage() {} func (*RemoveLockObserverResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{59} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{59} } func (m *RemoveLockObserverResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4593,7 +4593,7 @@ func (m *PhysicalScanLockRequest) Reset() { *m = PhysicalScanLockRequest func (m *PhysicalScanLockRequest) String() string { return proto.CompactTextString(m) } func (*PhysicalScanLockRequest) ProtoMessage() {} func (*PhysicalScanLockRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{60} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{60} } func (m *PhysicalScanLockRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4662,7 +4662,7 @@ func (m *PhysicalScanLockResponse) Reset() { *m = PhysicalScanLockRespon func (m *PhysicalScanLockResponse) String() string { return proto.CompactTextString(m) } func (*PhysicalScanLockResponse) ProtoMessage() {} func (*PhysicalScanLockResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{61} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{61} } func (m *PhysicalScanLockResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4721,7 +4721,7 @@ func (m *SplitRegionRequest) Reset() { *m = SplitRegionRequest{} } func (m *SplitRegionRequest) String() string { return proto.CompactTextString(m) } func (*SplitRegionRequest) ProtoMessage() {} func (*SplitRegionRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{62} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{62} } func (m *SplitRegionRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4793,7 +4793,7 @@ func (m *SplitRegionResponse) Reset() { *m = SplitRegionResponse{} } func (m *SplitRegionResponse) String() string { return proto.CompactTextString(m) } func (*SplitRegionResponse) ProtoMessage() {} func (*SplitRegionResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{63} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{63} } func (m *SplitRegionResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4868,7 +4868,7 @@ func (m *ReadIndexRequest) Reset() { *m = ReadIndexRequest{} } func (m *ReadIndexRequest) String() string { return proto.CompactTextString(m) } func (*ReadIndexRequest) ProtoMessage() {} func (*ReadIndexRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{64} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{64} } func (m *ReadIndexRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4933,7 +4933,7 @@ func (m *ReadIndexResponse) Reset() { *m = ReadIndexResponse{} } func (m *ReadIndexResponse) String() string { return proto.CompactTextString(m) } func (*ReadIndexResponse) ProtoMessage() {} func (*ReadIndexResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{65} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{65} } func (m *ReadIndexResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4995,7 +4995,7 @@ func (m *MvccGetByKeyRequest) Reset() { *m = MvccGetByKeyRequest{} } func (m *MvccGetByKeyRequest) String() string { return proto.CompactTextString(m) } func (*MvccGetByKeyRequest) ProtoMessage() {} func (*MvccGetByKeyRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{66} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{66} } func (m *MvccGetByKeyRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5051,7 +5051,7 @@ func (m *MvccGetByKeyResponse) Reset() { *m = MvccGetByKeyResponse{} } func (m *MvccGetByKeyResponse) String() string { return proto.CompactTextString(m) } func (*MvccGetByKeyResponse) ProtoMessage() {} func (*MvccGetByKeyResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{67} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{67} } func (m *MvccGetByKeyResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5113,7 +5113,7 @@ func (m *MvccGetByStartTsRequest) Reset() { *m = MvccGetByStartTsRequest func (m *MvccGetByStartTsRequest) String() string { return proto.CompactTextString(m) } func (*MvccGetByStartTsRequest) ProtoMessage() {} func (*MvccGetByStartTsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{68} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{68} } func (m *MvccGetByStartTsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5170,7 +5170,7 @@ func (m *MvccGetByStartTsResponse) Reset() { *m = MvccGetByStartTsRespon func (m *MvccGetByStartTsResponse) String() string { return proto.CompactTextString(m) } func (*MvccGetByStartTsResponse) ProtoMessage() {} func (*MvccGetByStartTsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{69} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{69} } func (m *MvccGetByStartTsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5240,8 +5240,10 @@ type Context struct { // True means execution time statistics should be recorded and returned. RecordTimeStat bool `protobuf:"varint,10,opt,name=record_time_stat,json=recordTimeStat,proto3" json:"record_time_stat,omitempty"` // True means RocksDB scan statistics should be recorded and returned. - RecordScanStat bool `protobuf:"varint,11,opt,name=record_scan_stat,json=recordScanStat,proto3" json:"record_scan_stat,omitempty"` - ReplicaRead bool `protobuf:"varint,12,opt,name=replica_read,json=replicaRead,proto3" json:"replica_read,omitempty"` + RecordScanStat bool `protobuf:"varint,11,opt,name=record_scan_stat,json=recordScanStat,proto3" json:"record_scan_stat,omitempty"` + ReplicaRead bool `protobuf:"varint,12,opt,name=replica_read,json=replicaRead,proto3" json:"replica_read,omitempty"` + // Read requests can ignore locks belonging to these transactions because either + // these transactions are rolled back or theirs commit_ts > read request's start_ts. ResolvedLocks []uint64 `protobuf:"varint,13,rep,packed,name=resolved_locks,json=resolvedLocks" json:"resolved_locks,omitempty"` MaxExecutionDurationMs uint64 `protobuf:"varint,14,opt,name=max_execution_duration_ms,json=maxExecutionDurationMs,proto3" json:"max_execution_duration_ms,omitempty"` // After a region applies to `applied_index`, we can get a @@ -5260,17 +5262,20 @@ type Context struct { // Indicates the request is a retry request and the same request may have been sent before. IsRetryRequest bool `protobuf:"varint,20,opt,name=is_retry_request,json=isRetryRequest,proto3" json:"is_retry_request,omitempty"` // API version implies the encode of the key and value. - ApiVersion APIVersion `protobuf:"varint,21,opt,name=api_version,json=apiVersion,proto3,enum=kvrpcpb.APIVersion" json:"api_version,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + ApiVersion APIVersion `protobuf:"varint,21,opt,name=api_version,json=apiVersion,proto3,enum=kvrpcpb.APIVersion" json:"api_version,omitempty"` + // Read request should read through locks belonging to these transactions because these + // transactions are committed and theirs commit_ts <= read request's start_ts. + CommittedLocks []uint64 `protobuf:"varint,22,rep,packed,name=committed_locks,json=committedLocks" json:"committed_locks,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } func (m *Context) Reset() { *m = Context{} } func (m *Context) String() string { return proto.CompactTextString(m) } func (*Context) ProtoMessage() {} func (*Context) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{70} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{70} } func (m *Context) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5439,6 +5444,13 @@ func (m *Context) GetApiVersion() APIVersion { return APIVersion_V1 } +func (m *Context) GetCommittedLocks() []uint64 { + if m != nil { + return m.CommittedLocks + } + return nil +} + type LockInfo struct { PrimaryLock []byte `protobuf:"bytes,1,opt,name=primary_lock,json=primaryLock,proto3" json:"primary_lock,omitempty"` LockVersion uint64 `protobuf:"varint,2,opt,name=lock_version,json=lockVersion,proto3" json:"lock_version,omitempty"` @@ -5461,7 +5473,7 @@ func (m *LockInfo) Reset() { *m = LockInfo{} } func (m *LockInfo) String() string { return proto.CompactTextString(m) } func (*LockInfo) ProtoMessage() {} func (*LockInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{71} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{71} } func (m *LockInfo) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5580,7 +5592,7 @@ func (m *KeyError) Reset() { *m = KeyError{} } func (m *KeyError) String() string { return proto.CompactTextString(m) } func (*KeyError) ProtoMessage() {} func (*KeyError) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{72} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{72} } func (m *KeyError) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5694,7 +5706,7 @@ func (m *WriteConflict) Reset() { *m = WriteConflict{} } func (m *WriteConflict) String() string { return proto.CompactTextString(m) } func (*WriteConflict) ProtoMessage() {} func (*WriteConflict) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{73} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{73} } func (m *WriteConflict) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5769,7 +5781,7 @@ func (m *AlreadyExist) Reset() { *m = AlreadyExist{} } func (m *AlreadyExist) String() string { return proto.CompactTextString(m) } func (*AlreadyExist) ProtoMessage() {} func (*AlreadyExist) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{74} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{74} } func (m *AlreadyExist) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5819,7 +5831,7 @@ func (m *Deadlock) Reset() { *m = Deadlock{} } func (m *Deadlock) String() string { return proto.CompactTextString(m) } func (*Deadlock) ProtoMessage() {} func (*Deadlock) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{75} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{75} } func (m *Deadlock) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5890,7 +5902,7 @@ func (m *CommitTsExpired) Reset() { *m = CommitTsExpired{} } func (m *CommitTsExpired) String() string { return proto.CompactTextString(m) } func (*CommitTsExpired) ProtoMessage() {} func (*CommitTsExpired) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{76} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{76} } func (m *CommitTsExpired) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5959,7 +5971,7 @@ func (m *TxnNotFound) Reset() { *m = TxnNotFound{} } func (m *TxnNotFound) String() string { return proto.CompactTextString(m) } func (*TxnNotFound) ProtoMessage() {} func (*TxnNotFound) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{77} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{77} } func (m *TxnNotFound) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6013,7 +6025,7 @@ func (m *CommitTsTooLarge) Reset() { *m = CommitTsTooLarge{} } func (m *CommitTsTooLarge) String() string { return proto.CompactTextString(m) } func (*CommitTsTooLarge) ProtoMessage() {} func (*CommitTsTooLarge) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{78} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{78} } func (m *CommitTsTooLarge) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6064,7 +6076,7 @@ func (m *AssertionFailed) Reset() { *m = AssertionFailed{} } func (m *AssertionFailed) String() string { return proto.CompactTextString(m) } func (*AssertionFailed) ProtoMessage() {} func (*AssertionFailed) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{79} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{79} } func (m *AssertionFailed) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6149,7 +6161,7 @@ func (m *TimeDetail) Reset() { *m = TimeDetail{} } func (m *TimeDetail) String() string { return proto.CompactTextString(m) } func (*TimeDetail) ProtoMessage() {} func (*TimeDetail) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{80} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{80} } func (m *TimeDetail) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6212,7 +6224,7 @@ func (m *ScanInfo) Reset() { *m = ScanInfo{} } func (m *ScanInfo) String() string { return proto.CompactTextString(m) } func (*ScanInfo) ProtoMessage() {} func (*ScanInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{81} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{81} } func (m *ScanInfo) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6276,7 +6288,7 @@ func (m *ScanDetail) Reset() { *m = ScanDetail{} } func (m *ScanDetail) String() string { return proto.CompactTextString(m) } func (*ScanDetail) ProtoMessage() {} func (*ScanDetail) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{82} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{82} } func (m *ScanDetail) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6362,7 +6374,7 @@ func (m *ScanDetailV2) Reset() { *m = ScanDetailV2{} } func (m *ScanDetailV2) String() string { return proto.CompactTextString(m) } func (*ScanDetailV2) ProtoMessage() {} func (*ScanDetailV2) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{83} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{83} } func (m *ScanDetailV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6461,7 +6473,7 @@ func (m *ExecDetails) Reset() { *m = ExecDetails{} } func (m *ExecDetails) String() string { return proto.CompactTextString(m) } func (*ExecDetails) ProtoMessage() {} func (*ExecDetails) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{84} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{84} } func (m *ExecDetails) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6518,7 +6530,7 @@ func (m *ExecDetailsV2) Reset() { *m = ExecDetailsV2{} } func (m *ExecDetailsV2) String() string { return proto.CompactTextString(m) } func (*ExecDetailsV2) ProtoMessage() {} func (*ExecDetailsV2) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{85} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{85} } func (m *ExecDetailsV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6574,7 +6586,7 @@ func (m *KvPair) Reset() { *m = KvPair{} } func (m *KvPair) String() string { return proto.CompactTextString(m) } func (*KvPair) ProtoMessage() {} func (*KvPair) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{86} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{86} } func (m *KvPair) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6638,7 +6650,7 @@ func (m *Mutation) Reset() { *m = Mutation{} } func (m *Mutation) String() string { return proto.CompactTextString(m) } func (*Mutation) ProtoMessage() {} func (*Mutation) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{87} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{87} } func (m *Mutation) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6712,7 +6724,7 @@ func (m *MvccWrite) Reset() { *m = MvccWrite{} } func (m *MvccWrite) String() string { return proto.CompactTextString(m) } func (*MvccWrite) ProtoMessage() {} func (*MvccWrite) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{88} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{88} } func (m *MvccWrite) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6802,7 +6814,7 @@ func (m *MvccValue) Reset() { *m = MvccValue{} } func (m *MvccValue) String() string { return proto.CompactTextString(m) } func (*MvccValue) ProtoMessage() {} func (*MvccValue) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{89} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{89} } func (m *MvccValue) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6865,7 +6877,7 @@ func (m *MvccLock) Reset() { *m = MvccLock{} } func (m *MvccLock) String() string { return proto.CompactTextString(m) } func (*MvccLock) ProtoMessage() {} func (*MvccLock) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{90} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{90} } func (m *MvccLock) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6977,7 +6989,7 @@ func (m *MvccInfo) Reset() { *m = MvccInfo{} } func (m *MvccInfo) String() string { return proto.CompactTextString(m) } func (*MvccInfo) ProtoMessage() {} func (*MvccInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{91} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{91} } func (m *MvccInfo) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7039,7 +7051,7 @@ func (m *TxnInfo) Reset() { *m = TxnInfo{} } func (m *TxnInfo) String() string { return proto.CompactTextString(m) } func (*TxnInfo) ProtoMessage() {} func (*TxnInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{92} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{92} } func (m *TxnInfo) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7094,7 +7106,7 @@ func (m *KeyRange) Reset() { *m = KeyRange{} } func (m *KeyRange) String() string { return proto.CompactTextString(m) } func (*KeyRange) ProtoMessage() {} func (*KeyRange) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{93} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{93} } func (m *KeyRange) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7152,7 +7164,7 @@ func (m *LeaderInfo) Reset() { *m = LeaderInfo{} } func (m *LeaderInfo) String() string { return proto.CompactTextString(m) } func (*LeaderInfo) ProtoMessage() {} func (*LeaderInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{94} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{94} } func (m *LeaderInfo) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7228,7 +7240,7 @@ func (m *ReadState) Reset() { *m = ReadState{} } func (m *ReadState) String() string { return proto.CompactTextString(m) } func (*ReadState) ProtoMessage() {} func (*ReadState) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{95} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{95} } func (m *ReadState) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7283,7 +7295,7 @@ func (m *CheckLeaderRequest) Reset() { *m = CheckLeaderRequest{} } func (m *CheckLeaderRequest) String() string { return proto.CompactTextString(m) } func (*CheckLeaderRequest) ProtoMessage() {} func (*CheckLeaderRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{96} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{96} } func (m *CheckLeaderRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7338,7 +7350,7 @@ func (m *CheckLeaderResponse) Reset() { *m = CheckLeaderResponse{} } func (m *CheckLeaderResponse) String() string { return proto.CompactTextString(m) } func (*CheckLeaderResponse) ProtoMessage() {} func (*CheckLeaderResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{97} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{97} } func (m *CheckLeaderResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7394,7 +7406,7 @@ func (m *StoreSafeTSRequest) Reset() { *m = StoreSafeTSRequest{} } func (m *StoreSafeTSRequest) String() string { return proto.CompactTextString(m) } func (*StoreSafeTSRequest) ProtoMessage() {} func (*StoreSafeTSRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{98} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{98} } func (m *StoreSafeTSRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7441,7 +7453,7 @@ func (m *StoreSafeTSResponse) Reset() { *m = StoreSafeTSResponse{} } func (m *StoreSafeTSResponse) String() string { return proto.CompactTextString(m) } func (*StoreSafeTSResponse) ProtoMessage() {} func (*StoreSafeTSResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{99} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{99} } func (m *StoreSafeTSResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7490,7 +7502,7 @@ func (m *RawGetKeyTTLRequest) Reset() { *m = RawGetKeyTTLRequest{} } func (m *RawGetKeyTTLRequest) String() string { return proto.CompactTextString(m) } func (*RawGetKeyTTLRequest) ProtoMessage() {} func (*RawGetKeyTTLRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{100} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{100} } func (m *RawGetKeyTTLRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7554,7 +7566,7 @@ func (m *RawGetKeyTTLResponse) Reset() { *m = RawGetKeyTTLResponse{} } func (m *RawGetKeyTTLResponse) String() string { return proto.CompactTextString(m) } func (*RawGetKeyTTLResponse) ProtoMessage() {} func (*RawGetKeyTTLResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{101} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{101} } func (m *RawGetKeyTTLResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7628,7 +7640,7 @@ func (m *RawCASRequest) Reset() { *m = RawCASRequest{} } func (m *RawCASRequest) String() string { return proto.CompactTextString(m) } func (*RawCASRequest) ProtoMessage() {} func (*RawCASRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{102} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{102} } func (m *RawCASRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7722,7 +7734,7 @@ func (m *RawCASResponse) Reset() { *m = RawCASResponse{} } func (m *RawCASResponse) String() string { return proto.CompactTextString(m) } func (*RawCASResponse) ProtoMessage() {} func (*RawCASResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{103} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{103} } func (m *RawCASResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7797,7 +7809,7 @@ func (m *GetLockWaitInfoRequest) Reset() { *m = GetLockWaitInfoRequest{} func (m *GetLockWaitInfoRequest) String() string { return proto.CompactTextString(m) } func (*GetLockWaitInfoRequest) ProtoMessage() {} func (*GetLockWaitInfoRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{104} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{104} } func (m *GetLockWaitInfoRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7846,7 +7858,7 @@ func (m *GetLockWaitInfoResponse) Reset() { *m = GetLockWaitInfoResponse func (m *GetLockWaitInfoResponse) String() string { return proto.CompactTextString(m) } func (*GetLockWaitInfoResponse) ProtoMessage() {} func (*GetLockWaitInfoResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{105} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{105} } func (m *GetLockWaitInfoResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7912,7 +7924,7 @@ func (m *RawCoprocessorRequest) Reset() { *m = RawCoprocessorRequest{} } func (m *RawCoprocessorRequest) String() string { return proto.CompactTextString(m) } func (*RawCoprocessorRequest) ProtoMessage() {} func (*RawCoprocessorRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{106} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{106} } func (m *RawCoprocessorRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7991,7 +8003,7 @@ func (m *RawCoprocessorResponse) Reset() { *m = RawCoprocessorResponse{} func (m *RawCoprocessorResponse) String() string { return proto.CompactTextString(m) } func (*RawCoprocessorResponse) ProtoMessage() {} func (*RawCoprocessorResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{107} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{107} } func (m *RawCoprocessorResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8054,7 +8066,7 @@ func (m *RawChecksumRequest) Reset() { *m = RawChecksumRequest{} } func (m *RawChecksumRequest) String() string { return proto.CompactTextString(m) } func (*RawChecksumRequest) ProtoMessage() {} func (*RawChecksumRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{108} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{108} } func (m *RawChecksumRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8119,7 +8131,7 @@ func (m *RawChecksumResponse) Reset() { *m = RawChecksumResponse{} } func (m *RawChecksumResponse) String() string { return proto.CompactTextString(m) } func (*RawChecksumResponse) ProtoMessage() {} func (*RawChecksumResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_kvrpcpb_e9775160f4e1a9ab, []int{109} + return fileDescriptor_kvrpcpb_96994caed499519d, []int{109} } func (m *RawChecksumResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12018,6 +12030,25 @@ func (m *Context) MarshalTo(dAtA []byte) (int, error) { i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.ApiVersion)) } + if len(m.CommittedLocks) > 0 { + dAtA93 := make([]byte, len(m.CommittedLocks)*10) + var j92 int + for _, num := range m.CommittedLocks { + for num >= 1<<7 { + dAtA93[j92] = uint8(uint64(num)&0x7f | 0x80) + num >>= 7 + j92++ + } + dAtA93[j92] = uint8(num) + j92++ + } + dAtA[i] = 0xb2 + i++ + dAtA[i] = 0x1 + i++ + i = encodeVarintKvrpcpb(dAtA, i, uint64(j92)) + i += copy(dAtA[i:], dAtA93[:j92]) + } if m.XXX_unrecognized != nil { i += copy(dAtA[i:], m.XXX_unrecognized) } @@ -12124,11 +12155,11 @@ func (m *KeyError) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.Locked.Size())) - n92, err := m.Locked.MarshalTo(dAtA[i:]) + n94, err := m.Locked.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n92 + i += n94 } if len(m.Retryable) > 0 { dAtA[i] = 0x12 @@ -12146,71 +12177,71 @@ func (m *KeyError) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x22 i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.Conflict.Size())) - n93, err := m.Conflict.MarshalTo(dAtA[i:]) + n95, err := m.Conflict.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n93 + i += n95 } if m.AlreadyExist != nil { dAtA[i] = 0x2a i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.AlreadyExist.Size())) - n94, err := m.AlreadyExist.MarshalTo(dAtA[i:]) + n96, err := m.AlreadyExist.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n94 + i += n96 } if m.Deadlock != nil { dAtA[i] = 0x32 i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.Deadlock.Size())) - n95, err := m.Deadlock.MarshalTo(dAtA[i:]) + n97, err := m.Deadlock.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n95 + i += n97 } if m.CommitTsExpired != nil { dAtA[i] = 0x3a i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.CommitTsExpired.Size())) - n96, err := m.CommitTsExpired.MarshalTo(dAtA[i:]) + n98, err := m.CommitTsExpired.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n96 + i += n98 } if m.TxnNotFound != nil { dAtA[i] = 0x42 i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.TxnNotFound.Size())) - n97, err := m.TxnNotFound.MarshalTo(dAtA[i:]) + n99, err := m.TxnNotFound.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n97 + i += n99 } if m.CommitTsTooLarge != nil { dAtA[i] = 0x4a i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.CommitTsTooLarge.Size())) - n98, err := m.CommitTsTooLarge.MarshalTo(dAtA[i:]) + n100, err := m.CommitTsTooLarge.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n98 + i += n100 } if m.AssertionFailed != nil { dAtA[i] = 0x52 i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.AssertionFailed.Size())) - n99, err := m.AssertionFailed.MarshalTo(dAtA[i:]) + n101, err := m.AssertionFailed.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n99 + i += n101 } if m.XXX_unrecognized != nil { i += copy(dAtA[i:], m.XXX_unrecognized) @@ -12580,31 +12611,31 @@ func (m *ScanDetail) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.Write.Size())) - n100, err := m.Write.MarshalTo(dAtA[i:]) + n102, err := m.Write.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n100 + i += n102 } if m.Lock != nil { dAtA[i] = 0x12 i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.Lock.Size())) - n101, err := m.Lock.MarshalTo(dAtA[i:]) + n103, err := m.Lock.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n101 + i += n103 } if m.Data != nil { dAtA[i] = 0x1a i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.Data.Size())) - n102, err := m.Data.MarshalTo(dAtA[i:]) + n104, err := m.Data.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n102 + i += n104 } if m.XXX_unrecognized != nil { i += copy(dAtA[i:], m.XXX_unrecognized) @@ -12692,21 +12723,21 @@ func (m *ExecDetails) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.TimeDetail.Size())) - n103, err := m.TimeDetail.MarshalTo(dAtA[i:]) + n105, err := m.TimeDetail.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n103 + i += n105 } if m.ScanDetail != nil { dAtA[i] = 0x12 i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.ScanDetail.Size())) - n104, err := m.ScanDetail.MarshalTo(dAtA[i:]) + n106, err := m.ScanDetail.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n104 + i += n106 } if m.XXX_unrecognized != nil { i += copy(dAtA[i:], m.XXX_unrecognized) @@ -12733,21 +12764,21 @@ func (m *ExecDetailsV2) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.TimeDetail.Size())) - n105, err := m.TimeDetail.MarshalTo(dAtA[i:]) + n107, err := m.TimeDetail.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n105 + i += n107 } if m.ScanDetailV2 != nil { dAtA[i] = 0x12 i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.ScanDetailV2.Size())) - n106, err := m.ScanDetailV2.MarshalTo(dAtA[i:]) + n108, err := m.ScanDetailV2.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n106 + i += n108 } if m.XXX_unrecognized != nil { i += copy(dAtA[i:], m.XXX_unrecognized) @@ -12774,11 +12805,11 @@ func (m *KvPair) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.Error.Size())) - n107, err := m.Error.MarshalTo(dAtA[i:]) + n109, err := m.Error.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n107 + i += n109 } if len(m.Key) > 0 { dAtA[i] = 0x12 @@ -13011,21 +13042,21 @@ func (m *MvccLock) MarshalTo(dAtA []byte) (int, error) { } } if len(m.RollbackTs) > 0 { - dAtA109 := make([]byte, len(m.RollbackTs)*10) - var j108 int + dAtA111 := make([]byte, len(m.RollbackTs)*10) + var j110 int for _, num := range m.RollbackTs { for num >= 1<<7 { - dAtA109[j108] = uint8(uint64(num)&0x7f | 0x80) + dAtA111[j110] = uint8(uint64(num)&0x7f | 0x80) num >>= 7 - j108++ + j110++ } - dAtA109[j108] = uint8(num) - j108++ + dAtA111[j110] = uint8(num) + j110++ } dAtA[i] = 0x52 i++ - i = encodeVarintKvrpcpb(dAtA, i, uint64(j108)) - i += copy(dAtA[i:], dAtA109[:j108]) + i = encodeVarintKvrpcpb(dAtA, i, uint64(j110)) + i += copy(dAtA[i:], dAtA111[:j110]) } if m.XXX_unrecognized != nil { i += copy(dAtA[i:], m.XXX_unrecognized) @@ -13052,11 +13083,11 @@ func (m *MvccInfo) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.Lock.Size())) - n110, err := m.Lock.MarshalTo(dAtA[i:]) + n112, err := m.Lock.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n110 + i += n112 } if len(m.Writes) > 0 { for _, msg := range m.Writes { @@ -13186,21 +13217,21 @@ func (m *LeaderInfo) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x22 i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.RegionEpoch.Size())) - n111, err := m.RegionEpoch.MarshalTo(dAtA[i:]) + n113, err := m.RegionEpoch.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n111 + i += n113 } if m.ReadState != nil { dAtA[i] = 0x2a i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.ReadState.Size())) - n112, err := m.ReadState.MarshalTo(dAtA[i:]) + n114, err := m.ReadState.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n112 + i += n114 } if m.XXX_unrecognized != nil { i += copy(dAtA[i:], m.XXX_unrecognized) @@ -13293,21 +13324,21 @@ func (m *CheckLeaderResponse) MarshalTo(dAtA []byte) (int, error) { var l int _ = l if len(m.Regions) > 0 { - dAtA114 := make([]byte, len(m.Regions)*10) - var j113 int + dAtA116 := make([]byte, len(m.Regions)*10) + var j115 int for _, num := range m.Regions { for num >= 1<<7 { - dAtA114[j113] = uint8(uint64(num)&0x7f | 0x80) + dAtA116[j115] = uint8(uint64(num)&0x7f | 0x80) num >>= 7 - j113++ + j115++ } - dAtA114[j113] = uint8(num) - j113++ + dAtA116[j115] = uint8(num) + j115++ } dAtA[i] = 0xa i++ - i = encodeVarintKvrpcpb(dAtA, i, uint64(j113)) - i += copy(dAtA[i:], dAtA114[:j113]) + i = encodeVarintKvrpcpb(dAtA, i, uint64(j115)) + i += copy(dAtA[i:], dAtA116[:j115]) } if m.Ts != 0 { dAtA[i] = 0x10 @@ -13339,11 +13370,11 @@ func (m *StoreSafeTSRequest) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.KeyRange.Size())) - n115, err := m.KeyRange.MarshalTo(dAtA[i:]) + n117, err := m.KeyRange.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n115 + i += n117 } if m.XXX_unrecognized != nil { i += copy(dAtA[i:], m.XXX_unrecognized) @@ -13396,11 +13427,11 @@ func (m *RawGetKeyTTLRequest) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.Context.Size())) - n116, err := m.Context.MarshalTo(dAtA[i:]) + n118, err := m.Context.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n116 + i += n118 } if len(m.Key) > 0 { dAtA[i] = 0x12 @@ -13439,11 +13470,11 @@ func (m *RawGetKeyTTLResponse) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.RegionError.Size())) - n117, err := m.RegionError.MarshalTo(dAtA[i:]) + n119, err := m.RegionError.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n117 + i += n119 } if len(m.Error) > 0 { dAtA[i] = 0x12 @@ -13491,11 +13522,11 @@ func (m *RawCASRequest) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.Context.Size())) - n118, err := m.Context.MarshalTo(dAtA[i:]) + n120, err := m.Context.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n118 + i += n120 } if len(m.Key) > 0 { dAtA[i] = 0x12 @@ -13561,11 +13592,11 @@ func (m *RawCASResponse) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.RegionError.Size())) - n119, err := m.RegionError.MarshalTo(dAtA[i:]) + n121, err := m.RegionError.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n119 + i += n121 } if len(m.Error) > 0 { dAtA[i] = 0x12 @@ -13624,11 +13655,11 @@ func (m *GetLockWaitInfoRequest) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.Context.Size())) - n120, err := m.Context.MarshalTo(dAtA[i:]) + n122, err := m.Context.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n120 + i += n122 } if m.XXX_unrecognized != nil { i += copy(dAtA[i:], m.XXX_unrecognized) @@ -13655,11 +13686,11 @@ func (m *GetLockWaitInfoResponse) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.RegionError.Size())) - n121, err := m.RegionError.MarshalTo(dAtA[i:]) + n123, err := m.RegionError.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n121 + i += n123 } if len(m.Error) > 0 { dAtA[i] = 0x12 @@ -13704,11 +13735,11 @@ func (m *RawCoprocessorRequest) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.Context.Size())) - n122, err := m.Context.MarshalTo(dAtA[i:]) + n124, err := m.Context.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n122 + i += n124 } if len(m.CoprName) > 0 { dAtA[i] = 0x12 @@ -13765,11 +13796,11 @@ func (m *RawCoprocessorResponse) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.RegionError.Size())) - n123, err := m.RegionError.MarshalTo(dAtA[i:]) + n125, err := m.RegionError.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n123 + i += n125 } if len(m.Error) > 0 { dAtA[i] = 0x12 @@ -13808,11 +13839,11 @@ func (m *RawChecksumRequest) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.Context.Size())) - n124, err := m.Context.MarshalTo(dAtA[i:]) + n126, err := m.Context.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n124 + i += n126 } if m.Algorithm != 0 { dAtA[i] = 0x10 @@ -13856,11 +13887,11 @@ func (m *RawChecksumResponse) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintKvrpcpb(dAtA, i, uint64(m.RegionError.Size())) - n125, err := m.RegionError.MarshalTo(dAtA[i:]) + n127, err := m.RegionError.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n125 + i += n127 } if len(m.Error) > 0 { dAtA[i] = 0x12 @@ -15589,6 +15620,13 @@ func (m *Context) Size() (n int) { if m.ApiVersion != 0 { n += 2 + sovKvrpcpb(uint64(m.ApiVersion)) } + if len(m.CommittedLocks) > 0 { + l = 0 + for _, e := range m.CommittedLocks { + l += sovKvrpcpb(uint64(e)) + } + n += 2 + sovKvrpcpb(uint64(l)) + l + } if m.XXX_unrecognized != nil { n += len(m.XXX_unrecognized) } @@ -27643,6 +27681,68 @@ func (m *Context) Unmarshal(dAtA []byte) error { break } } + case 22: + if wireType == 0 { + var v uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowKvrpcpb + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.CommittedLocks = append(m.CommittedLocks, v) + } else if wireType == 2 { + var packedLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowKvrpcpb + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + packedLen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if packedLen < 0 { + return ErrInvalidLengthKvrpcpb + } + postIndex := iNdEx + packedLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + for iNdEx < postIndex { + var v uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowKvrpcpb + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.CommittedLocks = append(m.CommittedLocks, v) + } + } else { + return fmt.Errorf("proto: wrong wireType = %d for field CommittedLocks", wireType) + } default: iNdEx = preIndex skippy, err := skipKvrpcpb(dAtA[iNdEx:]) @@ -33611,308 +33711,309 @@ var ( ErrIntOverflowKvrpcpb = fmt.Errorf("proto: integer overflow") ) -func init() { proto.RegisterFile("kvrpcpb.proto", fileDescriptor_kvrpcpb_e9775160f4e1a9ab) } - -var fileDescriptor_kvrpcpb_e9775160f4e1a9ab = []byte{ - // 4798 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xdc, 0x3c, 0x5d, 0x6f, 0x24, 0xc7, - 0x71, 0x37, 0xfb, 0xbd, 0xb5, 0xe4, 0x72, 0xd8, 0x24, 0x8f, 0x7b, 0x77, 0x92, 0x8e, 0x9a, 0xe4, - 0x74, 0x14, 0x2d, 0x51, 0x16, 0x2d, 0x2b, 0x4e, 0x62, 0xc4, 0xba, 0x23, 0xef, 0x4e, 0xf4, 0x51, - 0x47, 0x62, 0xb8, 0x3e, 0x45, 0x40, 0xac, 0x71, 0xdf, 0x6c, 0x73, 0x39, 0xd8, 0xd9, 0x99, 0xb9, - 0xe9, 0xde, 0x3d, 0xae, 0x8d, 0x00, 0x71, 0xbe, 0x80, 0x00, 0x49, 0x9c, 0x38, 0x06, 0x64, 0x20, - 0x41, 0x80, 0x04, 0x51, 0x90, 0xe4, 0x2d, 0x6f, 0x79, 0x09, 0x8c, 0x00, 0x79, 0x70, 0x0c, 0x04, - 0xf1, 0x63, 0x3e, 0x1e, 0x12, 0x2b, 0xbf, 0x21, 0x2f, 0x79, 0x0a, 0xfa, 0x6b, 0x3e, 0x76, 0xf7, - 0x78, 0xd4, 0x9a, 0x3c, 0x1b, 0x79, 0xe2, 0x76, 0x55, 0x75, 0x77, 0x55, 0x75, 0x75, 0x75, 0x75, - 0x75, 0x0d, 0x61, 0xbe, 0x37, 0x8c, 0x23, 0x37, 0x7a, 0xb4, 0x19, 0xc5, 0x21, 0x0b, 0x51, 0x55, - 0x35, 0xaf, 0xce, 0xf5, 0x09, 0xc3, 0x1a, 0x7c, 0x75, 0x9e, 0xc4, 0x71, 0x18, 0x27, 0xcd, 0xe5, - 0x6e, 0xd8, 0x0d, 0xc5, 0xcf, 0x37, 0xf8, 0x2f, 0x05, 0x5d, 0x88, 0x07, 0x94, 0x89, 0x9f, 0x0a, - 0xd0, 0xec, 0x10, 0xdc, 0xf1, 0x43, 0xb7, 0x27, 0xdb, 0x56, 0x07, 0xe0, 0x1e, 0x61, 0x36, 0x79, - 0x3c, 0x20, 0x94, 0xa1, 0x0d, 0xa8, 0xba, 0x61, 0xc0, 0xc8, 0x09, 0x6b, 0x19, 0x6b, 0xc6, 0x7a, - 0x63, 0xcb, 0xdc, 0xd4, 0xbc, 0x6c, 0x4b, 0xb8, 0xad, 0x09, 0x90, 0x09, 0xc5, 0x1e, 0x19, 0xb5, - 0x0a, 0x6b, 0xc6, 0xfa, 0x9c, 0xcd, 0x7f, 0xa2, 0x16, 0x54, 0x87, 0x24, 0xa6, 0x5e, 0x18, 0xb4, - 0x8a, 0x6b, 0xc6, 0x7a, 0xc9, 0xd6, 0x4d, 0xeb, 0x13, 0x03, 0x1a, 0x62, 0x1a, 0x1a, 0x85, 0x01, - 0x25, 0xe8, 0x4d, 0x98, 0x8b, 0x49, 0xd7, 0x0b, 0x03, 0x47, 0x08, 0xa1, 0x26, 0x6b, 0x6e, 0x6a, - 0x91, 0xee, 0xf0, 0xbf, 0x76, 0x43, 0xd2, 0x88, 0x06, 0xba, 0x09, 0x65, 0x49, 0x5b, 0x10, 0xb4, - 0x8b, 0x09, 0x63, 0xf7, 0xc9, 0x48, 0x92, 0x4b, 0x3c, 0x5a, 0x86, 0xf2, 0x10, 0xfb, 0x03, 0x22, - 0x78, 0x98, 0xb3, 0x65, 0x03, 0x5d, 0x83, 0x7a, 0x10, 0x32, 0xe7, 0x28, 0x1c, 0x04, 0x9d, 0x56, - 0x69, 0xcd, 0x58, 0xaf, 0xd9, 0xb5, 0x20, 0x64, 0x77, 0x79, 0x1b, 0xfd, 0x12, 0x2c, 0x90, 0x13, - 0xe2, 0x3a, 0x1d, 0xc2, 0xb0, 0xe7, 0x53, 0x67, 0xb8, 0xd5, 0xaa, 0x88, 0x59, 0x2e, 0x27, 0xb3, - 0xdc, 0x39, 0x21, 0xee, 0x8e, 0x44, 0x3f, 0xdc, 0xb2, 0xe7, 0x49, 0xb6, 0xf9, 0xe5, 0x52, 0xad, - 0x6c, 0x56, 0xac, 0xff, 0x31, 0xa0, 0x71, 0xe8, 0xe2, 0x60, 0x16, 0x65, 0x5e, 0x83, 0x3a, 0x65, - 0x38, 0x66, 0x4e, 0xaa, 0xd2, 0x9a, 0x00, 0xdc, 0x27, 0x23, 0x2e, 0x91, 0xef, 0xf5, 0x3d, 0x26, - 0x24, 0x9a, 0xb7, 0x65, 0x23, 0xab, 0xed, 0x52, 0x4e, 0xdb, 0xe8, 0x0a, 0xd4, 0x7a, 0x64, 0xe4, - 0x84, 0x81, 0x3f, 0x6a, 0x95, 0x85, 0xa8, 0xd5, 0x1e, 0x19, 0xed, 0x07, 0xbe, 0x58, 0xa2, 0x98, - 0x70, 0x3a, 0x22, 0x24, 0xac, 0xd9, 0xba, 0x89, 0x56, 0xa1, 0x4a, 0x82, 0x8e, 0x98, 0xbf, 0x2a, - 0xe6, 0xaf, 0x90, 0xa0, 0xc3, 0x67, 0xbf, 0x0e, 0x0d, 0x8a, 0xfb, 0x91, 0x4f, 0x1c, 0xca, 0x48, - 0xd4, 0xaa, 0x09, 0x1e, 0x40, 0x82, 0x0e, 0x19, 0x89, 0xac, 0x3f, 0x34, 0x60, 0x4e, 0xca, 0x3d, - 0xfb, 0xea, 0xde, 0x80, 0x72, 0x84, 0xbd, 0x98, 0xb6, 0x0a, 0x6b, 0xc5, 0xf5, 0xc6, 0xd6, 0x42, - 0xba, 0xba, 0xc3, 0x03, 0xec, 0xc5, 0xb6, 0xc4, 0xa6, 0x46, 0x50, 0x3c, 0xdd, 0x08, 0xac, 0xbf, - 0x2c, 0xc1, 0xc2, 0x41, 0x4c, 0x9e, 0xc4, 0x1e, 0x23, 0xb3, 0xac, 0xc7, 0x1b, 0x50, 0xef, 0x0f, - 0x18, 0x66, 0x5e, 0x18, 0x68, 0x9e, 0xd2, 0xc9, 0xde, 0x53, 0x18, 0x3b, 0xa5, 0x41, 0x2f, 0xc3, - 0x5c, 0x14, 0x7b, 0x7d, 0x1c, 0x8f, 0x1c, 0xbe, 0xbb, 0x94, 0xf1, 0x35, 0x14, 0x6c, 0x2f, 0x74, - 0x7b, 0xe8, 0x67, 0x60, 0x5e, 0xae, 0x71, 0x7e, 0xd9, 0xe6, 0x04, 0xf0, 0x61, 0xba, 0x76, 0xbc, - 0xbf, 0xc3, 0x98, 0x2f, 0xd6, 0xae, 0x64, 0x57, 0x79, 0xbb, 0xcd, 0x7c, 0xb4, 0x05, 0x2b, 0xb4, - 0xe7, 0x45, 0x8e, 0x1b, 0x06, 0x94, 0xc5, 0xd8, 0x0b, 0x98, 0xe3, 0x1e, 0x13, 0xb7, 0xa7, 0x56, - 0x72, 0x89, 0x23, 0xb7, 0x13, 0xdc, 0x36, 0x47, 0xa1, 0x4d, 0x58, 0xf2, 0xa8, 0x13, 0x11, 0x4a, - 0xbd, 0xbe, 0x47, 0x99, 0xe7, 0x4a, 0xee, 0xaa, 0x6b, 0xc5, 0xf5, 0x9a, 0xbd, 0xe8, 0xd1, 0x83, - 0x14, 0x23, 0x78, 0xbc, 0x02, 0x35, 0x76, 0x12, 0x38, 0xd4, 0xfb, 0x3a, 0x11, 0x2b, 0x5d, 0xb2, - 0xab, 0xec, 0x24, 0x38, 0xf4, 0xbe, 0x4e, 0x90, 0x05, 0xf3, 0x47, 0x61, 0xec, 0x0c, 0xa2, 0x0e, - 0x66, 0xc4, 0x61, 0xb4, 0x55, 0x17, 0xf8, 0xc6, 0x51, 0x18, 0x7f, 0x45, 0xc0, 0xda, 0x94, 0xd3, - 0xf4, 0xbd, 0xc0, 0x71, 0xc3, 0x7e, 0xdf, 0x63, 0x9c, 0x06, 0x24, 0x4d, 0xdf, 0x0b, 0xb6, 0x05, - 0xac, 0x4d, 0xd1, 0x3a, 0x98, 0x03, 0x4a, 0x1c, 0x4c, 0x47, 0x81, 0xab, 0x28, 0x5b, 0x0d, 0x21, - 0x41, 0x73, 0x40, 0xc9, 0x2d, 0x0e, 0x96, 0xb4, 0x68, 0x0d, 0x1a, 0x94, 0xb8, 0x61, 0xd0, 0xc1, - 0xb1, 0x47, 0x68, 0x6b, 0x6e, 0xad, 0xc8, 0x55, 0x9a, 0x01, 0xa1, 0x17, 0x00, 0x58, 0xcc, 0x2d, - 0x9d, 0x38, 0x91, 0xdb, 0x9a, 0x97, 0xdb, 0x9a, 0xc5, 0xa3, 0xfd, 0x80, 0x1c, 0xb8, 0x82, 0x1b, - 0x7c, 0x92, 0xe1, 0xa6, 0xa9, 0xb8, 0xc1, 0x27, 0x9a, 0x1b, 0xeb, 0xef, 0x0d, 0x30, 0x53, 0x43, - 0x99, 0xdd, 0x80, 0x5f, 0x85, 0x8a, 0xc0, 0x4e, 0x5a, 0x4b, 0x62, 0x9a, 0x8a, 0x60, 0x52, 0x49, - 0xc5, 0x49, 0x25, 0xdd, 0x04, 0x53, 0x0a, 0x95, 0x21, 0x93, 0xe6, 0x32, 0x1f, 0x72, 0xd9, 0x12, - 0xfe, 0xff, 0xbc, 0x08, 0x97, 0xc7, 0x16, 0xf1, 0xff, 0x8b, 0xbd, 0x4f, 0x18, 0x5c, 0x65, 0xaa, - 0xc1, 0x79, 0xd4, 0x39, 0xf2, 0x62, 0xca, 0xb4, 0x65, 0x73, 0x1b, 0x68, 0x78, 0xf4, 0x2e, 0x87, - 0x09, 0x3e, 0x5e, 0x86, 0xb9, 0x27, 0x98, 0xab, 0xd0, 0xeb, 0x93, 0x70, 0xc0, 0x84, 0x5d, 0x17, - 0xed, 0x06, 0x87, 0xb5, 0x25, 0x88, 0x7b, 0xd8, 0xa3, 0x30, 0x76, 0x89, 0xb0, 0xe9, 0x9a, 0x2d, - 0x1b, 0x5c, 0x80, 0x98, 0xb0, 0x41, 0x1c, 0x38, 0xe2, 0x0c, 0x91, 0xd6, 0x5c, 0xb3, 0xe7, 0x24, - 0xf0, 0xa1, 0x80, 0x4d, 0xae, 0x66, 0x63, 0x62, 0x35, 0xad, 0x1f, 0x19, 0xb0, 0x3a, 0xb1, 0x48, - 0xcf, 0xc5, 0xd6, 0xae, 0x41, 0x7d, 0xdc, 0xce, 0x6a, 0xae, 0x36, 0xb2, 0xe4, 0xa4, 0x2c, 0x65, - 0x4f, 0xca, 0xcb, 0x50, 0x51, 0xe2, 0x96, 0xc5, 0x86, 0x53, 0x2d, 0xf4, 0x22, 0x40, 0x72, 0x82, - 0xf2, 0xb5, 0xe0, 0x1e, 0xa4, 0xae, 0x8f, 0x50, 0x6a, 0x7d, 0x6c, 0xc0, 0xd5, 0x8c, 0x8c, 0x76, - 0xe8, 0xfb, 0x8f, 0xf0, 0x6c, 0xc6, 0x38, 0x61, 0x38, 0x85, 0x29, 0x86, 0x33, 0x61, 0x1d, 0xc5, - 0x49, 0xeb, 0x40, 0x50, 0xea, 0x91, 0x11, 0xdf, 0x39, 0x5c, 0x10, 0xf1, 0xdb, 0xfa, 0x06, 0x5c, - 0x9b, 0xca, 0xe6, 0xf3, 0x58, 0x0e, 0xeb, 0x6f, 0x0d, 0x58, 0x6a, 0x9f, 0x04, 0xef, 0x12, 0x1c, - 0xb3, 0xdb, 0x04, 0xcf, 0x14, 0x77, 0x8d, 0xef, 0xbc, 0xc2, 0x19, 0x76, 0x5e, 0x71, 0x8a, 0x02, - 0x5f, 0x81, 0x05, 0xdc, 0x19, 0x7a, 0x94, 0x38, 0xc9, 0x06, 0x54, 0x1e, 0x46, 0x82, 0xf7, 0xe4, - 0x36, 0xb4, 0x7e, 0xcf, 0x80, 0xe5, 0x3c, 0xcf, 0xcf, 0x21, 0x88, 0xcb, 0xba, 0x85, 0x62, 0xce, - 0x2d, 0x58, 0x3f, 0x2a, 0xc0, 0x8a, 0x38, 0xdc, 0xda, 0x27, 0xc1, 0x21, 0xc3, 0x6c, 0x40, 0x67, - 0xd1, 0xe2, 0x75, 0xd0, 0x1a, 0xcb, 0x84, 0x5c, 0xa0, 0x40, 0x3c, 0xec, 0x59, 0x85, 0xaa, 0xe4, - 0x40, 0x5b, 0x56, 0x45, 0x30, 0x40, 0xb9, 0xde, 0x5c, 0xec, 0xfb, 0x24, 0x76, 0xa4, 0x8e, 0x53, - 0xcf, 0x2c, 0xc1, 0x87, 0x1c, 0xda, 0x16, 0xfb, 0xc5, 0x1d, 0xc4, 0x31, 0x09, 0x04, 0x89, 0xf4, - 0x6d, 0x75, 0x05, 0x69, 0x53, 0xf4, 0x26, 0xac, 0xc4, 0xca, 0xf8, 0x1c, 0xef, 0xc8, 0xe1, 0x5b, - 0x8b, 0x9c, 0x78, 0x94, 0xa9, 0xd3, 0x1c, 0x69, 0xe4, 0xee, 0xd1, 0x83, 0x90, 0xdd, 0xe1, 0x18, - 0xb4, 0x01, 0x8b, 0xc2, 0x31, 0x39, 0xd9, 0xa3, 0x53, 0x3a, 0xbc, 0x05, 0x81, 0x38, 0x4c, 0xcf, - 0xce, 0x2f, 0xc2, 0xd5, 0x98, 0xd0, 0xd0, 0x1f, 0x7a, 0x41, 0x77, 0xf2, 0xfc, 0xaf, 0x89, 0x4e, - 0xad, 0x84, 0x62, 0xcc, 0x39, 0x59, 0xdf, 0x2a, 0xc0, 0xe5, 0x71, 0x1d, 0xff, 0x44, 0x57, 0x1d, - 0xdd, 0x80, 0xa6, 0x72, 0x64, 0xf9, 0xd3, 0x64, 0x5e, 0x42, 0xb5, 0x51, 0xdf, 0x84, 0x0a, 0x76, - 0xf9, 0x09, 0x25, 0x14, 0xde, 0xcc, 0x04, 0x92, 0xb7, 0x04, 0xd8, 0x56, 0x68, 0xb4, 0x09, 0x75, - 0x31, 0x95, 0x17, 0x1c, 0x85, 0x2a, 0xd8, 0x4f, 0xf9, 0xe2, 0x3a, 0xd8, 0x0d, 0x8e, 0x42, 0x5b, - 0xb0, 0xc3, 0x7f, 0x59, 0xdf, 0x34, 0xe0, 0xaa, 0xd0, 0xc8, 0xa1, 0x0a, 0x3f, 0xc4, 0x4e, 0x9b, - 0xc9, 0xf4, 0xb4, 0x57, 0x2a, 0xa4, 0x5e, 0xe9, 0x4c, 0x3b, 0xd6, 0xfa, 0x9e, 0x01, 0xd7, 0xa6, - 0xf2, 0xf0, 0x1c, 0x96, 0xe6, 0x26, 0x94, 0xb9, 0x2e, 0xf8, 0x66, 0x28, 0x4e, 0xd7, 0x95, 0xc4, - 0xe7, 0x4f, 0x9c, 0x52, 0xfe, 0xc4, 0xb1, 0xfe, 0xda, 0x80, 0x79, 0x69, 0xa0, 0x17, 0x76, 0x2e, - 0x68, 0xed, 0x16, 0x33, 0xda, 0x3d, 0x9b, 0xf1, 0xc8, 0x6b, 0x9c, 0x5d, 0x79, 0xe4, 0x05, 0x7e, - 0xd8, 0xb5, 0xfe, 0xc8, 0x80, 0xa6, 0xe6, 0xf5, 0x39, 0x28, 0x78, 0x92, 0xc7, 0xe2, 0x14, 0x1e, - 0xad, 0x2e, 0xcc, 0xef, 0xf6, 0xa3, 0x30, 0x4e, 0x14, 0x98, 0x8b, 0xdc, 0x8c, 0x33, 0x44, 0x6e, - 0x93, 0x13, 0x15, 0xa6, 0x4d, 0xf4, 0x01, 0x34, 0xf5, 0x44, 0xb3, 0x4b, 0xbf, 0x9c, 0x95, 0xbe, - 0xae, 0x2f, 0x67, 0xdf, 0xe6, 0x9a, 0xf5, 0x09, 0x0e, 0x06, 0xd1, 0xf9, 0x24, 0x1e, 0xce, 0x74, - 0xde, 0xe5, 0xfd, 0x71, 0x69, 0xcc, 0x1f, 0x5b, 0xdf, 0x31, 0x60, 0x21, 0x61, 0xea, 0xa7, 0x67, - 0xbd, 0x7b, 0xb0, 0x70, 0x1b, 0x33, 0xf7, 0x78, 0xc6, 0x24, 0xcd, 0x34, 0x5f, 0xf3, 0xf4, 0x34, - 0xcd, 0x7f, 0x18, 0x60, 0xa6, 0xb3, 0x5d, 0xf8, 0x6d, 0x7e, 0x4a, 0xda, 0xa5, 0xf4, 0x29, 0xd2, - 0x2e, 0xa9, 0xae, 0xcb, 0xa7, 0xeb, 0xfa, 0xcb, 0xa5, 0x5a, 0xd1, 0x2c, 0x59, 0xdf, 0x80, 0x65, - 0x21, 0xdc, 0x85, 0x87, 0xa6, 0x53, 0x5c, 0x90, 0x45, 0x61, 0x65, 0x6c, 0xf2, 0x8b, 0xb7, 0x31, - 0xeb, 0x6f, 0x0c, 0x58, 0x38, 0x74, 0x71, 0x30, 0xeb, 0xad, 0xf0, 0x3a, 0xf0, 0xbb, 0xf2, 0x98, - 0xac, 0xd0, 0xc7, 0x27, 0x5a, 0xd2, 0x5c, 0xda, 0xaa, 0xf8, 0xb4, 0xb4, 0x55, 0x29, 0x9b, 0xb6, - 0xca, 0xe4, 0x99, 0xca, 0xd9, 0x3c, 0x93, 0xf5, 0x91, 0x01, 0x66, 0xca, 0xec, 0x4f, 0xd1, 0x91, - 0x66, 0xfd, 0x8b, 0x01, 0xc8, 0x16, 0xa1, 0x12, 0x99, 0x55, 0x93, 0x67, 0xb2, 0x9b, 0xb3, 0xb9, - 0x04, 0xf4, 0x3a, 0xd4, 0xd9, 0x49, 0x20, 0x22, 0x17, 0x79, 0xb5, 0xc9, 0xce, 0xdc, 0x3e, 0x09, - 0x64, 0xe4, 0xc2, 0xe4, 0x8f, 0xf4, 0x12, 0x54, 0xce, 0x58, 0xe3, 0x63, 0x58, 0xca, 0x09, 0xf4, - 0x1c, 0x6c, 0xf1, 0x21, 0xd4, 0xef, 0x6d, 0xcf, 0xa2, 0xba, 0x17, 0x01, 0x28, 0x3e, 0x22, 0x4e, - 0x14, 0x7a, 0x01, 0x53, 0x7a, 0xab, 0x73, 0xc8, 0x01, 0x07, 0x58, 0xc7, 0x00, 0x7c, 0xdc, 0xe7, - 0x20, 0xc1, 0x47, 0x06, 0xa0, 0x1d, 0xe2, 0x13, 0x46, 0x6c, 0x1c, 0x74, 0xc9, 0xb9, 0xa7, 0x79, - 0x33, 0x3b, 0xa3, 0x38, 0x9e, 0x81, 0x0d, 0x42, 0xe6, 0x1d, 0xa9, 0x94, 0xae, 0xcc, 0x5e, 0x83, - 0x04, 0xed, 0x07, 0xfe, 0xc8, 0xfa, 0x10, 0x96, 0x72, 0x8c, 0x9d, 0xf7, 0x81, 0xfd, 0x55, 0x98, - 0xb7, 0xf1, 0x93, 0x73, 0x7b, 0x27, 0x68, 0x42, 0xc1, 0x3d, 0x12, 0x32, 0xd6, 0xed, 0x82, 0x7b, - 0x64, 0xfd, 0xae, 0x01, 0x4d, 0x3d, 0xfe, 0x39, 0xb3, 0x3e, 0xc3, 0x6b, 0x80, 0xd5, 0x01, 0x64, - 0xe3, 0x27, 0xe7, 0x7d, 0xea, 0x8e, 0x0b, 0x1d, 0xc2, 0x52, 0x6e, 0x96, 0x8b, 0x3e, 0x6d, 0xad, - 0x3f, 0x35, 0xc4, 0x2a, 0x1e, 0x0c, 0xce, 0x69, 0x15, 0xa7, 0x6b, 0x56, 0x8a, 0x59, 0xd2, 0x62, - 0xf2, 0x7e, 0x69, 0x6a, 0x8f, 0xff, 0xe4, 0x66, 0x7e, 0x14, 0xc6, 0x8e, 0x8b, 0xa9, 0xba, 0xea, - 0x56, 0x8e, 0xc2, 0x78, 0x1b, 0x53, 0x1e, 0x71, 0x6a, 0xfe, 0xce, 0xdb, 0x80, 0xff, 0xc2, 0x48, - 0xd7, 0x74, 0x46, 0x05, 0x9c, 0x31, 0xa6, 0x19, 0x5b, 0x66, 0x6e, 0x0a, 0x8c, 0xf9, 0xd2, 0x4f, - 0x97, 0x6c, 0xf1, 0x3b, 0xab, 0x81, 0x72, 0x4e, 0x03, 0x1f, 0xa6, 0x36, 0x71, 0x21, 0x6a, 0x18, - 0x81, 0x69, 0xe3, 0x27, 0xca, 0x55, 0x5c, 0xc4, 0x56, 0xce, 0x8a, 0x56, 0xca, 0x89, 0xf6, 0x2b, - 0xb0, 0x98, 0x99, 0xfa, 0xbc, 0x05, 0xfb, 0x35, 0x03, 0x56, 0xb4, 0xe6, 0x66, 0x17, 0xef, 0x0c, - 0xdb, 0xf6, 0xe9, 0x02, 0x62, 0xb8, 0x3c, 0xce, 0xc1, 0x79, 0x4b, 0xf9, 0xcf, 0xd2, 0x4f, 0x3e, - 0xc7, 0x37, 0xc6, 0xec, 0x4b, 0x62, 0x29, 0xff, 0x92, 0x28, 0x15, 0x53, 0x4e, 0x14, 0xf3, 0xe9, - 0x5f, 0x16, 0xad, 0x2e, 0x2c, 0x24, 0xe2, 0xcc, 0xae, 0xab, 0x97, 0xa1, 0xd8, 0x1b, 0x3e, 0x75, - 0x5b, 0x72, 0x9c, 0xf5, 0x3b, 0xd2, 0x3c, 0x7e, 0x22, 0x87, 0xf7, 0x98, 0x43, 0x54, 0x76, 0x72, - 0xa1, 0xc7, 0xf5, 0x0f, 0x8d, 0xd4, 0x8f, 0xcc, 0x6a, 0x2c, 0xaf, 0x42, 0x25, 0xe6, 0xdc, 0x4d, - 0x4d, 0x6a, 0x4b, 0xbe, 0x15, 0x01, 0x0f, 0xd0, 0x08, 0x76, 0x8f, 0x9d, 0xac, 0xfd, 0xd4, 0x39, - 0x64, 0xef, 0xdc, 0x6c, 0xc8, 0xf2, 0x61, 0x39, 0x2f, 0xd1, 0x85, 0xda, 0xcb, 0xaf, 0xc2, 0x95, - 0xaf, 0x04, 0x3c, 0xc4, 0xdc, 0x21, 0x94, 0xc5, 0xe1, 0xe8, 0xf9, 0x9a, 0x8c, 0x45, 0xe0, 0xea, - 0xb4, 0xe9, 0xcf, 0xdb, 0x4c, 0xbe, 0x06, 0xd7, 0x6c, 0xd2, 0xf5, 0x28, 0x23, 0x31, 0xbf, 0x05, - 0xec, 0x3f, 0xa2, 0x24, 0x1e, 0x92, 0x78, 0x16, 0x39, 0x57, 0xa0, 0xc2, 0x2f, 0x8a, 0x8c, 0xaa, - 0xf8, 0xbc, 0xdc, 0xc7, 0x27, 0x6d, 0x6a, 0xbd, 0x05, 0x2f, 0x4c, 0x9f, 0x41, 0x89, 0x92, 0xf0, - 0x65, 0xe4, 0xa3, 0xcd, 0x96, 0xc8, 0x72, 0x5e, 0x10, 0x53, 0x03, 0xb8, 0x32, 0x65, 0xf8, 0xd3, - 0x38, 0xe2, 0x26, 0xec, 0x51, 0xc7, 0xf5, 0x09, 0x96, 0x17, 0xb7, 0x9a, 0x5d, 0xf5, 0xa8, 0x48, - 0x16, 0x9d, 0xfd, 0x12, 0xf9, 0x21, 0x5c, 0xb1, 0x49, 0x3f, 0x94, 0x37, 0xae, 0x0b, 0x10, 0x6b, - 0x0b, 0xae, 0x4e, 0x1b, 0xff, 0x54, 0x4d, 0x7f, 0xcb, 0x80, 0xd5, 0x83, 0xe3, 0x11, 0xf5, 0x5c, - 0xec, 0xff, 0x38, 0x79, 0x82, 0xe9, 0x2c, 0xcd, 0x90, 0x1d, 0xb0, 0x3e, 0x80, 0xd6, 0x24, 0x43, - 0xa7, 0xae, 0x4d, 0xb2, 0x00, 0x85, 0x67, 0x2c, 0xc0, 0x9f, 0x18, 0x80, 0x0e, 0x23, 0xdf, 0x63, - 0xb6, 0xd8, 0x19, 0xb3, 0xe5, 0x43, 0xea, 0x94, 0x8f, 0x90, 0x6e, 0xe7, 0xdb, 0x85, 0x96, 0x61, - 0xd7, 0x04, 0x90, 0x0b, 0xc5, 0xef, 0xaa, 0x9a, 0x40, 0xe7, 0x7f, 0xea, 0x1a, 0x4b, 0xd1, 0x55, - 0xa8, 0x7b, 0xd4, 0x89, 0xf1, 0x13, 0xa7, 0x37, 0xd4, 0xbe, 0xd0, 0xa3, 0x36, 0x7e, 0x72, 0x7f, - 0x68, 0xfd, 0xa3, 0x01, 0x4b, 0x39, 0xf6, 0x66, 0xdf, 0xee, 0xaf, 0x40, 0xc9, 0x27, 0x47, 0x4c, - 0x5d, 0x68, 0x9b, 0x9b, 0xaa, 0x6c, 0x4c, 0x0e, 0x2c, 0x38, 0x16, 0x78, 0xb4, 0x0e, 0xe5, 0xd8, - 0xeb, 0x1e, 0x33, 0x55, 0x4d, 0x33, 0x8d, 0x50, 0x12, 0xa0, 0x75, 0xee, 0x98, 0xbb, 0x22, 0xc5, - 0x2c, 0x13, 0x0e, 0x63, 0xb4, 0xb6, 0x46, 0x5b, 0xbf, 0x69, 0x80, 0x69, 0x13, 0xdc, 0xd9, 0x0d, - 0x3a, 0xe4, 0x64, 0x16, 0x1d, 0x5f, 0x81, 0x5a, 0xf2, 0xae, 0x26, 0xad, 0xa9, 0x4a, 0xd5, 0x8b, - 0x5a, 0x7a, 0x26, 0x15, 0x9f, 0x71, 0x26, 0x59, 0x7f, 0x60, 0xc0, 0x62, 0x86, 0x8d, 0xd9, 0x75, - 0xf9, 0x22, 0x40, 0x4c, 0x70, 0xc7, 0xf1, 0xf8, 0x40, 0x3a, 0xfb, 0x10, 0xeb, 0x91, 0x39, 0x4b, - 0xdc, 0xba, 0x48, 0x67, 0xa2, 0x22, 0x29, 0x31, 0x3f, 0x45, 0x60, 0x1d, 0xc2, 0xd2, 0x7b, 0x43, - 0xd7, 0xbd, 0x47, 0xd8, 0xed, 0x11, 0xe7, 0xf7, 0x3c, 0xe2, 0x6f, 0xeb, 0xb7, 0x0d, 0x58, 0xce, - 0x8f, 0x7a, 0xde, 0x17, 0xe8, 0x1b, 0x50, 0x12, 0x6f, 0x64, 0xe3, 0xf2, 0xf1, 0x59, 0x85, 0x7c, - 0x02, 0x6d, 0x7d, 0x0d, 0x56, 0x13, 0x3e, 0xd4, 0x0b, 0xe8, 0xf9, 0xae, 0x3e, 0xdf, 0xbf, 0xad, - 0xc9, 0x29, 0xce, 0x5b, 0x5c, 0xa5, 0xe2, 0x62, 0x7a, 0xc5, 0xd1, 0x0a, 0x28, 0x9d, 0xae, 0x80, - 0x7f, 0xab, 0x40, 0x75, 0x3b, 0x3d, 0xf6, 0x15, 0x37, 0x5e, 0x47, 0xb0, 0x52, 0xb2, 0x6b, 0x12, - 0xb0, 0xdb, 0x41, 0x6f, 0xa7, 0xac, 0x46, 0xa1, 0x7b, 0xac, 0x76, 0xe9, 0x52, 0x7e, 0x43, 0xdd, - 0xe1, 0xa8, 0x84, 0x5f, 0xde, 0x40, 0x6b, 0x50, 0x8a, 0x08, 0xd1, 0xa5, 0x6f, 0x73, 0x9a, 0xfe, - 0x80, 0x90, 0xd8, 0x16, 0x18, 0x71, 0xd7, 0x24, 0x71, 0x5f, 0x5d, 0xb6, 0xc5, 0x6f, 0xf4, 0x06, - 0xd4, 0xa2, 0xd8, 0x0b, 0x63, 0x8f, 0x8d, 0x44, 0x4c, 0xd5, 0xdc, 0x5a, 0xca, 0x68, 0xbf, 0xdf, - 0xc7, 0x41, 0xe7, 0x20, 0xf6, 0xec, 0x84, 0x08, 0xbd, 0x03, 0x0b, 0x1e, 0x0d, 0x7d, 0xf1, 0x58, - 0xe4, 0xf8, 0x64, 0x48, 0x7c, 0x11, 0xb5, 0x37, 0xb7, 0x56, 0x93, 0x7e, 0xbb, 0x1a, 0xbf, 0xc7, - 0xd1, 0x76, 0xd3, 0xcb, 0xb5, 0xd1, 0xcf, 0x42, 0x53, 0x24, 0x57, 0x3c, 0xdf, 0x77, 0x5c, 0xec, - 0x1e, 0x13, 0xf5, 0xdc, 0x3c, 0x17, 0x84, 0xec, 0xae, 0xe7, 0xfb, 0xdb, 0x1c, 0x26, 0x56, 0x7a, - 0x14, 0xb8, 0x8e, 0x1f, 0x76, 0x55, 0xd5, 0x4d, 0x95, 0xb7, 0xf7, 0xc2, 0x2e, 0x5a, 0x07, 0x33, - 0x26, 0x6e, 0x18, 0x77, 0x44, 0xc9, 0x8e, 0x43, 0x19, 0x66, 0xaa, 0xf4, 0xa6, 0x29, 0xe1, 0x6d, - 0xaf, 0x4f, 0x0e, 0x19, 0x66, 0x19, 0x4a, 0xea, 0xe2, 0x40, 0x52, 0x36, 0xb2, 0x94, 0xfc, 0x10, - 0x11, 0x94, 0x2f, 0x73, 0xad, 0x47, 0xbe, 0xe7, 0x62, 0x87, 0xef, 0xde, 0xd6, 0x9c, 0xac, 0x13, - 0x52, 0x30, 0xee, 0x2a, 0xd0, 0x0d, 0x68, 0xca, 0x07, 0x71, 0xd2, 0x71, 0xe4, 0x91, 0x32, 0x2f, - 0x2e, 0xed, 0xf3, 0x1a, 0x2a, 0x5e, 0x5b, 0xd1, 0xcf, 0xc3, 0x15, 0x7e, 0xd8, 0x91, 0x13, 0xe2, - 0x0e, 0x84, 0x92, 0x3a, 0x83, 0x58, 0x6a, 0xab, 0xaf, 0x2b, 0xcc, 0x2e, 0xf7, 0xf1, 0xc9, 0x1d, - 0x8d, 0xdf, 0x51, 0xe8, 0xf7, 0xc4, 0x2b, 0x2f, 0x8e, 0x22, 0xdf, 0x23, 0xda, 0x9f, 0x2c, 0xc8, - 0x2c, 0xb0, 0x02, 0x4a, 0x97, 0xb2, 0x0a, 0x55, 0x86, 0x69, 0x8f, 0x9b, 0x8e, 0x29, 0x0b, 0x0f, - 0x78, 0x73, 0xb7, 0x23, 0x0e, 0x17, 0x86, 0x7d, 0x22, 0x05, 0x58, 0x14, 0x02, 0xd4, 0x05, 0x44, - 0xb0, 0xff, 0x1a, 0x20, 0xce, 0xe8, 0x20, 0x76, 0x89, 0xd3, 0x8d, 0xc3, 0x41, 0xe4, 0x30, 0xdc, - 0x6d, 0x21, 0x61, 0xc8, 0xa6, 0xc6, 0xdc, 0xe3, 0x88, 0x36, 0xee, 0xa2, 0x2f, 0xc0, 0x7c, 0xc7, - 0xa3, 0x3d, 0xe7, 0x68, 0xe0, 0xfb, 0x4e, 0x18, 0xb1, 0xd6, 0x92, 0x58, 0xe4, 0xe5, 0x64, 0x91, - 0x77, 0x3c, 0xda, 0xbb, 0x3b, 0xf0, 0xfd, 0xfd, 0x88, 0xd9, 0x8d, 0x4e, 0xda, 0xe0, 0x3a, 0xe7, - 0x87, 0x18, 0x61, 0xf1, 0xc8, 0x89, 0xe5, 0x16, 0x6f, 0x2d, 0x4b, 0x9d, 0x7b, 0xd4, 0xe6, 0x60, - 0xbd, 0xf1, 0xdf, 0x82, 0x06, 0x8e, 0xbc, 0x24, 0x99, 0xbd, 0x32, 0x66, 0x7e, 0xb7, 0x0e, 0x76, - 0x55, 0x4a, 0xdb, 0x06, 0x1c, 0x79, 0xe9, 0x2b, 0x6c, 0xc9, 0x2c, 0xf3, 0x95, 0xc1, 0x1d, 0xe7, - 0xf1, 0x20, 0x8c, 0x07, 0x7d, 0xeb, 0x3f, 0x0b, 0x50, 0xd3, 0xfe, 0x74, 0xa2, 0xfe, 0xc5, 0x98, - 0xac, 0x7f, 0x79, 0x19, 0xe6, 0xc4, 0xe3, 0x7e, 0x3e, 0xd9, 0xde, 0xe0, 0x30, 0x9d, 0x44, 0x9f, - 0xdc, 0xe7, 0xd9, 0xe2, 0x83, 0x52, 0xbe, 0xf8, 0x20, 0x5b, 0x15, 0x59, 0xce, 0x57, 0x45, 0xae, - 0xab, 0x3a, 0x02, 0x36, 0x8a, 0x88, 0xda, 0x60, 0x8d, 0x44, 0xc2, 0xfd, 0x48, 0x56, 0x10, 0xb4, - 0x47, 0x11, 0x41, 0x9f, 0x01, 0x24, 0x28, 0xf3, 0x55, 0x4b, 0x55, 0x31, 0xdc, 0x02, 0xc7, 0xdc, - 0xcd, 0x54, 0x2e, 0x4d, 0x2b, 0x92, 0xac, 0x4d, 0x2d, 0x92, 0x9c, 0xa8, 0x3f, 0xab, 0x4f, 0x56, - 0x13, 0x8e, 0x15, 0x52, 0xc2, 0x44, 0x21, 0xa5, 0xf5, 0x51, 0x09, 0x6a, 0x3a, 0xdf, 0x9d, 0x39, - 0xd4, 0x8c, 0x67, 0x1c, 0x6a, 0xe8, 0x05, 0xee, 0xe9, 0x58, 0x3c, 0xc2, 0x8f, 0x7c, 0xa2, 0x1c, - 0x69, 0x0a, 0xe0, 0x2e, 0x16, 0x3f, 0x0a, 0x63, 0xa6, 0xf2, 0x27, 0xb2, 0x81, 0xb6, 0xa0, 0xe6, - 0x86, 0xc1, 0x91, 0xef, 0xb9, 0x6c, 0xe2, 0xbd, 0xef, 0xfd, 0xd8, 0x63, 0x64, 0x5b, 0x61, 0xed, - 0x84, 0x0e, 0xfd, 0x02, 0xcc, 0x63, 0x9f, 0x9b, 0xc4, 0x48, 0x55, 0xc9, 0xc8, 0x27, 0xbf, 0x95, - 0xd4, 0x98, 0x24, 0x56, 0x14, 0xca, 0xd8, 0x73, 0x38, 0xd3, 0x42, 0xaf, 0x43, 0x4d, 0x17, 0xbd, - 0x4f, 0x54, 0x7a, 0xec, 0x28, 0x84, 0x9d, 0x90, 0xa0, 0x1d, 0x58, 0x4c, 0x94, 0xe9, 0x90, 0x93, - 0xc8, 0x8b, 0x49, 0x47, 0x2c, 0x53, 0x63, 0xab, 0x95, 0x73, 0x9d, 0x5c, 0xb5, 0x77, 0x24, 0xde, - 0x5e, 0x70, 0xf3, 0x00, 0xbe, 0xbf, 0xb8, 0xc9, 0xa4, 0x59, 0xe6, 0x9a, 0x18, 0x61, 0x39, 0xfb, - 0x50, 0xf3, 0x40, 0x65, 0x9c, 0xed, 0x06, 0x4b, 0x1b, 0xe8, 0x5d, 0x58, 0x4a, 0xe7, 0x67, 0x61, - 0xe8, 0xf8, 0x38, 0xee, 0xca, 0xca, 0xc4, 0xc6, 0xd6, 0x95, 0x09, 0x0e, 0xda, 0x61, 0xb8, 0xc7, - 0x09, 0x6c, 0xd3, 0x1d, 0x83, 0xa0, 0x6d, 0x30, 0x31, 0xa5, 0x24, 0x16, 0xce, 0xe9, 0x08, 0x7b, - 0x3e, 0xe9, 0x08, 0x3f, 0x9a, 0x15, 0xe4, 0x96, 0x26, 0xb8, 0x2b, 0xf0, 0xf6, 0x02, 0xce, 0x03, - 0xac, 0x8f, 0x0d, 0x98, 0xcf, 0xad, 0x4a, 0xee, 0x8c, 0x36, 0xf2, 0x11, 0xda, 0x75, 0x68, 0xe8, - 0x25, 0x4b, 0x4f, 0x70, 0xd0, 0xa0, 0x36, 0x9d, 0xb2, 0xed, 0x5a, 0x50, 0x55, 0x5b, 0x57, 0x95, - 0x21, 0xea, 0x26, 0x77, 0x68, 0xc9, 0x60, 0xa9, 0x79, 0xcb, 0xfd, 0x67, 0x6a, 0x4c, 0x52, 0x63, - 0xb9, 0x06, 0x73, 0x59, 0x1b, 0xd0, 0x33, 0x19, 0x69, 0xac, 0xf4, 0x67, 0x06, 0xd4, 0xf4, 0x7a, - 0x67, 0xcb, 0xbb, 0x8c, 0x5c, 0x79, 0x97, 0x76, 0x03, 0x69, 0xa0, 0x25, 0x08, 0x79, 0x74, 0xbf, - 0x01, 0x8b, 0xda, 0x4a, 0x38, 0xda, 0x39, 0xc6, 0xf4, 0x58, 0x3d, 0xd1, 0x2d, 0x68, 0xc4, 0x7d, - 0x32, 0x7a, 0x17, 0xd3, 0x63, 0xf4, 0x79, 0x00, 0x51, 0x74, 0xea, 0x1e, 0x63, 0x2f, 0x50, 0x41, - 0xf3, 0xe5, 0xcd, 0xe4, 0xe3, 0x8b, 0xf7, 0xb1, 0xc7, 0xee, 0x86, 0xf1, 0x9d, 0x80, 0xbb, 0xcb, - 0x3a, 0xa7, 0xdc, 0xe6, 0x84, 0xd6, 0xb7, 0x0d, 0x58, 0x18, 0xb3, 0xad, 0xd3, 0xf4, 0xbd, 0x09, - 0x4b, 0x98, 0x31, 0xd2, 0x8f, 0x18, 0xe9, 0x64, 0x74, 0x24, 0xf5, 0xbe, 0x98, 0xa0, 0x12, 0x47, - 0x30, 0xa9, 0xfe, 0x09, 0xf7, 0x51, 0x9a, 0x2c, 0x5f, 0xdd, 0x85, 0x46, 0xc6, 0x5a, 0x9f, 0xb1, - 0xfe, 0xa7, 0x56, 0xd5, 0x59, 0x6f, 0x80, 0x39, 0x6e, 0xb8, 0xf9, 0x8a, 0x21, 0x63, 0xac, 0x62, - 0xe8, 0x07, 0x06, 0x2c, 0x8c, 0xd9, 0xe8, 0x69, 0x0c, 0x4c, 0x66, 0xa8, 0x3f, 0x0b, 0xf5, 0xc4, - 0xa4, 0x85, 0xe0, 0xcd, 0x2d, 0x34, 0x69, 0xfd, 0x76, 0x4a, 0xc4, 0x97, 0x59, 0xf8, 0x18, 0x2f, - 0xe8, 0x8e, 0x97, 0xf8, 0x2d, 0x68, 0x84, 0x2e, 0xf2, 0x7b, 0x0d, 0x50, 0x42, 0x3b, 0x61, 0xa3, - 0x1a, 0x93, 0x28, 0xf2, 0xbb, 0x06, 0x00, 0x8f, 0x5d, 0x64, 0x09, 0x03, 0x7a, 0x15, 0x16, 0x85, - 0x8d, 0x3c, 0xc1, 0xbe, 0x2f, 0x43, 0x9d, 0xbe, 0x14, 0xa8, 0x68, 0x37, 0x39, 0xe2, 0x7d, 0xec, - 0xfb, 0x9c, 0xfc, 0x3d, 0x8a, 0xde, 0x80, 0xe5, 0x28, 0x0e, 0x5d, 0x42, 0x69, 0x9e, 0xba, 0x20, - 0xa8, 0x17, 0x15, 0x2e, 0xd3, 0x61, 0x13, 0x96, 0x7b, 0x43, 0x11, 0x29, 0xe4, 0x3b, 0x14, 0x45, - 0x07, 0xb3, 0x37, 0xe4, 0x31, 0x43, 0x4a, 0x6f, 0x7d, 0x15, 0x6a, 0x3c, 0x56, 0x12, 0x27, 0xec, - 0x32, 0x94, 0x59, 0xc8, 0xb0, 0xaf, 0x78, 0x91, 0x0d, 0xee, 0xea, 0xd5, 0x34, 0xa4, 0xa3, 0xe6, - 0x4d, 0x01, 0xc9, 0x3d, 0xe9, 0xd1, 0x88, 0x11, 0x3d, 0x8b, 0xb8, 0x27, 0xdd, 0xe6, 0x00, 0xeb, - 0x37, 0x0c, 0x00, 0x3e, 0xbe, 0x92, 0xfc, 0x26, 0x94, 0x45, 0xc5, 0xfd, 0xc4, 0x01, 0xa3, 0x79, - 0xb0, 0x25, 0x9e, 0x07, 0xdf, 0x49, 0x91, 0xeb, 0x54, 0x3a, 0x81, 0xe6, 0x64, 0x1d, 0xcc, 0xf0, - 0xc4, 0x25, 0x25, 0x25, 0xe3, 0x68, 0xeb, 0x07, 0x45, 0xf9, 0xa5, 0x8a, 0xe4, 0xe2, 0xe1, 0x16, - 0x7a, 0x1d, 0x50, 0x22, 0x82, 0x8e, 0x16, 0xb4, 0x4d, 0x2d, 0x26, 0x18, 0x15, 0x33, 0x88, 0xd2, - 0x29, 0xa1, 0x8b, 0x94, 0x54, 0x95, 0x4e, 0x09, 0x68, 0x42, 0xf6, 0x25, 0x78, 0x21, 0xe6, 0xa1, - 0x62, 0xe7, 0x91, 0xd3, 0x11, 0x79, 0x5e, 0x87, 0xf6, 0xbc, 0x28, 0x12, 0x5b, 0x74, 0x10, 0x30, - 0xe5, 0x32, 0xae, 0x28, 0x1a, 0x99, 0x0a, 0x3e, 0x94, 0x14, 0xdb, 0x9c, 0x80, 0x87, 0x98, 0x7a, - 0x00, 0xee, 0x67, 0xf2, 0xbd, 0xa5, 0x25, 0x5e, 0x56, 0x04, 0xf7, 0xc9, 0x28, 0xd7, 0xf5, 0x1d, - 0x78, 0x51, 0x77, 0x7d, 0x24, 0x1c, 0x95, 0x88, 0xc0, 0x9d, 0x63, 0xee, 0x8a, 0x44, 0xf7, 0x72, - 0x6e, 0xf2, 0xdb, 0x9c, 0x46, 0x04, 0xe4, 0xef, 0x7a, 0x4c, 0x8e, 0xf0, 0x73, 0xd0, 0xca, 0x8f, - 0x20, 0xd6, 0x55, 0x76, 0x96, 0x15, 0xf8, 0x2b, 0xd9, 0xce, 0xdc, 0x8e, 0x64, 0xc7, 0xcf, 0xc3, - 0xea, 0x94, 0x8e, 0xdc, 0x20, 0x54, 0x94, 0xb3, 0x3c, 0xde, 0x8f, 0xdb, 0x06, 0x7a, 0x1b, 0x56, - 0x27, 0xd7, 0x20, 0xfb, 0x05, 0xca, 0xca, 0xc4, 0x42, 0xf0, 0xc8, 0xcb, 0xfa, 0x2d, 0x03, 0x1a, - 0x99, 0xf2, 0x20, 0x1e, 0x6d, 0x0a, 0x23, 0x97, 0xd5, 0x44, 0xca, 0xb2, 0xd2, 0x68, 0x33, 0xdd, - 0x77, 0x36, 0xb0, 0x74, 0x0f, 0xbe, 0x05, 0x0d, 0x71, 0x75, 0x50, 0xbd, 0x0a, 0x63, 0xbd, 0x52, - 0x6b, 0xb1, 0x81, 0x26, 0xbf, 0x65, 0x41, 0x91, 0x8c, 0x54, 0xad, 0x5f, 0x37, 0x60, 0x3e, 0x57, - 0xa6, 0x34, 0x23, 0x27, 0xbf, 0x08, 0xcd, 0x0c, 0x27, 0xce, 0x70, 0x4b, 0x31, 0xb3, 0x32, 0x85, - 0x99, 0x87, 0x5b, 0xf6, 0x1c, 0xcd, 0xb4, 0xac, 0x0f, 0xa0, 0x22, 0x13, 0xd8, 0x69, 0x39, 0x83, - 0xf1, 0x8c, 0xf2, 0x97, 0x33, 0xbe, 0xe8, 0x5a, 0xdf, 0x34, 0xa0, 0xa6, 0xeb, 0x08, 0xd1, 0x35, - 0x28, 0x84, 0x91, 0x18, 0x7a, 0x2c, 0xce, 0x2d, 0x84, 0xd1, 0x99, 0xdf, 0x88, 0x73, 0x2e, 0xb9, - 0x74, 0x06, 0x97, 0x6c, 0xfd, 0xaf, 0x01, 0x75, 0x7e, 0xdf, 0x16, 0x81, 0x08, 0xba, 0x0e, 0x25, - 0x11, 0x6e, 0x4f, 0x61, 0x43, 0x20, 0x4e, 0xcb, 0x21, 0x9d, 0xfa, 0x41, 0xc4, 0x75, 0x68, 0xd0, - 0xe3, 0x30, 0x66, 0x4e, 0xf6, 0xb3, 0x08, 0x10, 0x20, 0xf1, 0xb5, 0x07, 0xb7, 0xd5, 0x63, 0x4c, - 0x9d, 0x70, 0x48, 0x62, 0x1f, 0x8b, 0x3d, 0xa9, 0xcb, 0xb4, 0xd5, 0x4b, 0xee, 0xca, 0x31, 0xa6, - 0xfb, 0x09, 0x56, 0x17, 0x7b, 0xa1, 0x35, 0x98, 0xe3, 0xfd, 0xba, 0xae, 0x73, 0x44, 0x02, 0x57, - 0xbf, 0x6e, 0xc0, 0x31, 0xa6, 0xf7, 0xdc, 0xbb, 0x1c, 0xc2, 0x59, 0x4e, 0xb0, 0x72, 0xb7, 0x54, - 0xbb, 0x12, 0x65, 0x7d, 0x51, 0xca, 0x2e, 0x39, 0x38, 0xe5, 0xec, 0x4b, 0x94, 0x5d, 0xc8, 0x2e, - 0xdf, 0xf7, 0x0a, 0x50, 0xe3, 0xdd, 0xc5, 0xc5, 0xe8, 0xc7, 0xd1, 0x5c, 0x26, 0x50, 0x2b, 0xe6, - 0x03, 0xb5, 0x67, 0xaa, 0x6d, 0xb2, 0x08, 0xe0, 0x2c, 0xdf, 0xf6, 0x64, 0x6f, 0x5d, 0xd5, 0xf1, - 0x5b, 0xd7, 0x59, 0xaf, 0x47, 0x63, 0x57, 0x9f, 0xfa, 0xe4, 0x37, 0x64, 0xd7, 0xa1, 0x91, 0x14, - 0xe2, 0x33, 0x79, 0x39, 0x2a, 0xd9, 0xa0, 0x41, 0x6d, 0xf1, 0x7a, 0x58, 0xd3, 0xc9, 0x9e, 0xe4, - 0x40, 0x32, 0xa6, 0x64, 0x83, 0x44, 0xb6, 0x5a, 0x1e, 0x48, 0x1b, 0x50, 0x11, 0x07, 0x98, 0x4e, - 0x4b, 0xa3, 0x1c, 0xa1, 0x30, 0x63, 0x5b, 0x51, 0x70, 0x5a, 0xf5, 0xc1, 0x4d, 0x71, 0x0a, 0xad, - 0xd0, 0xa0, 0xfe, 0x08, 0xc7, 0xfa, 0x1c, 0x54, 0x55, 0x85, 0x97, 0x50, 0xea, 0x49, 0xa0, 0x8c, - 0x80, 0xff, 0x44, 0x97, 0xa1, 0x42, 0x45, 0xb1, 0xbe, 0x5a, 0x3a, 0xd5, 0xb2, 0xde, 0x11, 0x77, - 0x3b, 0x91, 0x20, 0xcd, 0xe7, 0xe4, 0x8d, 0xa7, 0xbf, 0x48, 0x15, 0x72, 0x2f, 0x52, 0xff, 0x60, - 0x00, 0xec, 0x11, 0xdc, 0x21, 0xb1, 0x98, 0xfa, 0xd4, 0xfc, 0xd6, 0x2a, 0x54, 0x23, 0x42, 0x62, - 0x8e, 0x52, 0x6c, 0xf0, 0xe6, 0x6e, 0x27, 0x49, 0x4f, 0x15, 0x33, 0xe9, 0xa9, 0xf1, 0x64, 0x58, - 0xe9, 0x8c, 0xc9, 0xb0, 0x37, 0x55, 0xb8, 0xc1, 0x25, 0x24, 0xea, 0x32, 0x98, 0xea, 0x8d, 0x9f, - 0x2d, 0x87, 0x1c, 0x23, 0x43, 0x10, 0xf1, 0xd3, 0xda, 0x85, 0x7a, 0x02, 0x9f, 0xcc, 0xc4, 0x18, - 0xd3, 0x33, 0x31, 0xa2, 0xf2, 0x8c, 0xa5, 0x0a, 0xc5, 0x47, 0xa4, 0x4d, 0xad, 0x43, 0x40, 0xf2, - 0x09, 0x49, 0xa8, 0x44, 0xa7, 0x3b, 0x5e, 0x4f, 0x93, 0xe4, 0xb2, 0x0e, 0x3b, 0x75, 0xf9, 0xa9, - 0xee, 0x92, 0x4c, 0x39, 0x6a, 0x42, 0x21, 0x19, 0xb8, 0xc0, 0xa8, 0xf5, 0x25, 0x58, 0xca, 0x0d, - 0xaa, 0x32, 0x9b, 0xad, 0xfc, 0xa8, 0xa5, 0xa7, 0x0f, 0xb0, 0x03, 0xe8, 0x90, 0x85, 0x31, 0x39, - 0xe4, 0x4c, 0x1e, 0x6a, 0xae, 0x36, 0xa1, 0xce, 0x63, 0x08, 0x91, 0x17, 0x9f, 0x76, 0x26, 0xc8, - 0xbc, 0x79, 0xad, 0xa7, 0x7e, 0x59, 0x9b, 0xb0, 0x94, 0x1b, 0x45, 0xb1, 0x91, 0xd1, 0x85, 0x91, - 0xd3, 0x85, 0x2b, 0xde, 0x9a, 0xef, 0x11, 0x6e, 0x40, 0xed, 0xf6, 0xde, 0xc5, 0x54, 0x88, 0xfd, - 0xbe, 0x21, 0xde, 0x7f, 0x33, 0xb3, 0x5c, 0x40, 0xde, 0x37, 0xfd, 0xea, 0x44, 0xb8, 0xa8, 0x53, - 0x6b, 0xc4, 0xfe, 0x5d, 0x16, 0x53, 0x6d, 0xdf, 0x3a, 0xbc, 0xc8, 0x62, 0xaa, 0xd7, 0x78, 0x78, - 0x4a, 0x86, 0x5e, 0x38, 0xa0, 0x99, 0x0f, 0x84, 0x24, 0x2f, 0xa6, 0xc6, 0x24, 0x9f, 0x07, 0xdd, - 0x80, 0x66, 0x42, 0x2d, 0x07, 0x93, 0x05, 0xb6, 0xf3, 0x1a, 0xfa, 0x30, 0x53, 0xa1, 0x55, 0x19, - 0xaf, 0xd0, 0xaa, 0x26, 0x92, 0x5b, 0xdf, 0x97, 0x75, 0x26, 0x42, 0xb8, 0xf3, 0xd6, 0x73, 0x0b, - 0xaa, 0x74, 0xe0, 0xba, 0x44, 0xbd, 0x98, 0xd4, 0x6c, 0xdd, 0xbc, 0x10, 0x61, 0xad, 0x1d, 0xb8, - 0x7c, 0x8f, 0x88, 0xcf, 0x40, 0xf9, 0x8d, 0x5b, 0x6c, 0xc0, 0x4f, 0xbf, 0x5e, 0xd6, 0x77, 0x0c, - 0x58, 0x9d, 0x18, 0xe6, 0xbc, 0x35, 0xf3, 0x59, 0xee, 0x7c, 0x99, 0x38, 0xa5, 0x8a, 0xa7, 0xa6, - 0x0b, 0x34, 0x99, 0xf5, 0x4f, 0xb2, 0xac, 0x65, 0x3b, 0x54, 0x01, 0x72, 0x18, 0xcf, 0x58, 0xa3, - 0xe0, 0x86, 0x51, 0xec, 0x04, 0xb8, 0xaf, 0x53, 0x78, 0x35, 0x0e, 0x78, 0x80, 0xfb, 0xe2, 0xa0, - 0x15, 0x48, 0x15, 0x97, 0x3b, 0x31, 0x79, 0xac, 0xb6, 0x65, 0x93, 0xc3, 0x75, 0xfe, 0x96, 0x3c, - 0xce, 0x3c, 0xce, 0x95, 0x9e, 0x55, 0x30, 0x82, 0xd4, 0x6d, 0x4d, 0xae, 0x98, 0xbc, 0x9a, 0x0d, - 0x44, 0x59, 0x4c, 0x4e, 0x94, 0xf3, 0x56, 0x30, 0xca, 0x5c, 0x12, 0xf5, 0xb4, 0x1f, 0xcb, 0xc2, - 0x40, 0xe1, 0x78, 0xe9, 0xa0, 0x3f, 0x8b, 0xfe, 0xbe, 0x00, 0x75, 0xec, 0x77, 0xc3, 0xd8, 0x63, - 0xc7, 0x7d, 0x31, 0x61, 0x73, 0xeb, 0x6a, 0x4a, 0xad, 0x06, 0xbe, 0xa5, 0x29, 0xec, 0x94, 0xf8, - 0xd3, 0xbc, 0x67, 0xfe, 0x9d, 0x2c, 0xe9, 0x49, 0xf9, 0x3c, 0x6f, 0xe5, 0x5c, 0x85, 0x9a, 0xab, - 0x06, 0x4f, 0xc2, 0x62, 0xd5, 0xe6, 0x16, 0x22, 0xaf, 0xbd, 0xbd, 0x61, 0xf2, 0x49, 0x97, 0x00, - 0xdc, 0x1f, 0x8a, 0xf0, 0x49, 0x22, 0xe5, 0xcd, 0x5f, 0xc6, 0x78, 0x20, 0x40, 0xe2, 0xea, 0xbf, - 0x71, 0x13, 0x20, 0xcd, 0xf4, 0xa3, 0x0a, 0x14, 0x1e, 0xbe, 0x69, 0x5e, 0x42, 0x75, 0x28, 0x3f, - 0x7c, 0xb3, 0xdd, 0xde, 0x33, 0x0d, 0x01, 0xda, 0x32, 0x0b, 0x1b, 0x9f, 0x01, 0x48, 0x5f, 0xa4, - 0x10, 0x40, 0xe5, 0x41, 0x18, 0xf7, 0xb1, 0x6f, 0x5e, 0x42, 0x55, 0x28, 0xee, 0x85, 0x4f, 0x4c, - 0x03, 0xd5, 0xa0, 0xf4, 0xae, 0xd7, 0x3d, 0x36, 0x0b, 0x1b, 0x6b, 0xd0, 0xcc, 0x3f, 0x43, 0xf1, - 0x61, 0x0e, 0x77, 0xcd, 0x4b, 0xfc, 0xaf, 0xbd, 0x6d, 0x1a, 0x1b, 0x0f, 0xa1, 0x91, 0x79, 0xc3, - 0x40, 0xcb, 0x60, 0x3e, 0x08, 0xd9, 0x2d, 0xdf, 0x0f, 0x9f, 0x90, 0xce, 0x7e, 0xc0, 0xc1, 0xe6, - 0x25, 0xb4, 0x0a, 0x4b, 0x09, 0xe8, 0x96, 0xdf, 0x0f, 0x29, 0x13, 0x08, 0x03, 0xb5, 0x60, 0x39, - 0x83, 0x10, 0x79, 0x45, 0x81, 0x29, 0x6c, 0xb8, 0x50, 0xd8, 0x8f, 0x38, 0x4b, 0x07, 0x03, 0x26, - 0x79, 0xdb, 0x21, 0xbe, 0xe4, 0x8d, 0x3b, 0x08, 0xb3, 0x80, 0xe6, 0xa0, 0xa6, 0x23, 0x7f, 0xb3, - 0xc8, 0x05, 0xd9, 0x0d, 0xf8, 0x45, 0xc6, 0x2c, 0xa1, 0x25, 0x58, 0x18, 0xfb, 0xd4, 0xd2, 0x2c, - 0x23, 0x04, 0x4d, 0xb1, 0xae, 0xda, 0xb7, 0x51, 0xb3, 0xb2, 0xb1, 0x09, 0xf5, 0xe4, 0x22, 0xc4, - 0x47, 0x7e, 0x10, 0x06, 0x44, 0x6a, 0x4d, 0x90, 0x98, 0x06, 0x9f, 0x44, 0x77, 0x30, 0x0b, 0x1b, - 0x7f, 0x6c, 0x40, 0x45, 0x7e, 0xe1, 0x28, 0x11, 0xf2, 0xb7, 0x79, 0x09, 0xad, 0xc0, 0x62, 0xbb, - 0xbd, 0x27, 0x53, 0x89, 0x09, 0x53, 0x42, 0x3c, 0x3e, 0xbb, 0x1e, 0x21, 0xc1, 0x14, 0x78, 0x87, - 0xf7, 0x92, 0xdc, 0xdf, 0xe1, 0xc1, 0x80, 0x1e, 0x93, 0x8e, 0x59, 0x44, 0x6b, 0xf0, 0x42, 0x32, - 0xce, 0x94, 0xef, 0xa7, 0xcd, 0x12, 0xba, 0x02, 0x2b, 0xd9, 0x21, 0x77, 0xc2, 0x07, 0x21, 0x3b, - 0xf6, 0x82, 0xae, 0x59, 0xde, 0xb8, 0x01, 0xd5, 0x3b, 0x27, 0x2c, 0xc6, 0xfb, 0x91, 0x94, 0x25, - 0x8c, 0xcc, 0x4b, 0xc8, 0x84, 0x39, 0x1e, 0x8f, 0xed, 0xfb, 0x1d, 0xe1, 0xaa, 0x4d, 0x63, 0xc3, - 0x82, 0xc5, 0x89, 0xfd, 0x82, 0xe6, 0xa1, 0xbe, 0x1d, 0xbb, 0x6f, 0xbf, 0xe5, 0xfc, 0x72, 0x18, - 0x9b, 0x97, 0x6e, 0xbf, 0xf2, 0xaf, 0x7f, 0x55, 0x33, 0xbe, 0xff, 0xc9, 0x4b, 0xc6, 0x0f, 0x3f, - 0x79, 0xc9, 0xf8, 0xaf, 0x4f, 0x5e, 0x32, 0xbe, 0xfb, 0xdf, 0x2f, 0x5d, 0x02, 0x33, 0x8c, 0xbb, - 0x9b, 0xcc, 0xeb, 0x0d, 0x37, 0x7b, 0x43, 0xf1, 0x7f, 0x6d, 0x1e, 0x55, 0xc4, 0x9f, 0xcf, 0xfd, - 0x5f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x45, 0xa5, 0x17, 0x54, 0x4c, 0x47, 0x00, 0x00, +func init() { proto.RegisterFile("kvrpcpb.proto", fileDescriptor_kvrpcpb_96994caed499519d) } + +var fileDescriptor_kvrpcpb_96994caed499519d = []byte{ + // 4816 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xdc, 0x3c, 0x5d, 0x6f, 0x64, 0xc9, + 0x55, 0x73, 0xfb, 0xc3, 0xdd, 0x7d, 0xda, 0x6e, 0x5f, 0x97, 0xbf, 0x7a, 0x66, 0x76, 0x77, 0xbc, + 0x17, 0x26, 0xe3, 0x38, 0x59, 0x6f, 0xd6, 0xd9, 0x2c, 0x01, 0x22, 0xb2, 0x33, 0xf6, 0xcc, 0xac, + 0x77, 0xbc, 0x63, 0xeb, 0xba, 0x33, 0xcb, 0x4a, 0x64, 0x6f, 0x6a, 0x6e, 0x97, 0xbb, 0xaf, 0xfa, + 0xf6, 0xbd, 0x77, 0x6f, 0x55, 0xf7, 0xb8, 0x13, 0x21, 0x91, 0xf0, 0x21, 0x21, 0x01, 0x81, 0x10, + 0x69, 0x23, 0x81, 0x90, 0x40, 0x2c, 0x02, 0xde, 0x78, 0xe3, 0x05, 0x45, 0x48, 0x3c, 0x84, 0x48, + 0x88, 0x3c, 0x22, 0x78, 0x80, 0x2c, 0xbf, 0x81, 0x17, 0x9e, 0x50, 0x7d, 0xdd, 0x8f, 0xee, 0x1e, + 0x8f, 0xb7, 0x63, 0x4f, 0x22, 0x9e, 0xdc, 0x75, 0xce, 0xa9, 0xaa, 0x73, 0x4e, 0x9d, 0x3a, 0x75, + 0xea, 0xd4, 0xb9, 0x86, 0x85, 0xde, 0x30, 0x8e, 0xdc, 0xe8, 0xf1, 0x76, 0x14, 0x87, 0x2c, 0x44, + 0x15, 0xd5, 0xbc, 0x36, 0xdf, 0x27, 0x0c, 0x6b, 0xf0, 0xb5, 0x05, 0x12, 0xc7, 0x61, 0x9c, 0x34, + 0x57, 0x3a, 0x61, 0x27, 0x14, 0x3f, 0x5f, 0xe5, 0xbf, 0x14, 0x74, 0x31, 0x1e, 0x50, 0x26, 0x7e, + 0x2a, 0x40, 0xa3, 0x4d, 0x70, 0xdb, 0x0f, 0xdd, 0x9e, 0x6c, 0x5b, 0x6d, 0x80, 0xfb, 0x84, 0xd9, + 0xe4, 0x83, 0x01, 0xa1, 0x0c, 0x6d, 0x41, 0xc5, 0x0d, 0x03, 0x46, 0x4e, 0x59, 0xd3, 0xd8, 0x30, + 0x36, 0xeb, 0x3b, 0xe6, 0xb6, 0xe6, 0x65, 0x57, 0xc2, 0x6d, 0x4d, 0x80, 0x4c, 0x28, 0xf6, 0xc8, + 0xa8, 0x59, 0xd8, 0x30, 0x36, 0xe7, 0x6d, 0xfe, 0x13, 0x35, 0xa1, 0x32, 0x24, 0x31, 0xf5, 0xc2, + 0xa0, 0x59, 0xdc, 0x30, 0x36, 0x4b, 0xb6, 0x6e, 0x5a, 0x1f, 0x1b, 0x50, 0x17, 0xd3, 0xd0, 0x28, + 0x0c, 0x28, 0x41, 0xaf, 0xc1, 0x7c, 0x4c, 0x3a, 0x5e, 0x18, 0x38, 0x42, 0x08, 0x35, 0x59, 0x63, + 0x5b, 0x8b, 0x74, 0x97, 0xff, 0xb5, 0xeb, 0x92, 0x46, 0x34, 0xd0, 0x2d, 0x28, 0x4b, 0xda, 0x82, + 0xa0, 0x5d, 0x4a, 0x18, 0x7b, 0x40, 0x46, 0x92, 0x5c, 0xe2, 0xd1, 0x0a, 0x94, 0x87, 0xd8, 0x1f, + 0x10, 0xc1, 0xc3, 0xbc, 0x2d, 0x1b, 0xe8, 0x3a, 0xd4, 0x82, 0x90, 0x39, 0x27, 0xe1, 0x20, 0x68, + 0x37, 0x4b, 0x1b, 0xc6, 0x66, 0xd5, 0xae, 0x06, 0x21, 0xbb, 0xc7, 0xdb, 0xe8, 0x57, 0x60, 0x91, + 0x9c, 0x12, 0xd7, 0x69, 0x13, 0x86, 0x3d, 0x9f, 0x3a, 0xc3, 0x9d, 0xe6, 0x9c, 0x98, 0x65, 0x2d, + 0x99, 0xe5, 0xee, 0x29, 0x71, 0xf7, 0x24, 0xfa, 0xd1, 0x8e, 0xbd, 0x40, 0xb2, 0xcd, 0xb7, 0x4b, + 0xd5, 0xb2, 0x39, 0x67, 0xfd, 0x8f, 0x01, 0xf5, 0x63, 0x17, 0x07, 0xb3, 0x28, 0xf3, 0x3a, 0xd4, + 0x28, 0xc3, 0x31, 0x73, 0x52, 0x95, 0x56, 0x05, 0xe0, 0x01, 0x19, 0x71, 0x89, 0x7c, 0xaf, 0xef, + 0x31, 0x21, 0xd1, 0x82, 0x2d, 0x1b, 0x59, 0x6d, 0x97, 0x72, 0xda, 0x46, 0x57, 0xa1, 0xda, 0x23, + 0x23, 0x27, 0x0c, 0xfc, 0x51, 0xb3, 0x2c, 0x44, 0xad, 0xf4, 0xc8, 0xe8, 0x30, 0xf0, 0xc5, 0x12, + 0xc5, 0x84, 0xd3, 0x11, 0x21, 0x61, 0xd5, 0xd6, 0x4d, 0xb4, 0x0e, 0x15, 0x12, 0xb4, 0xc5, 0xfc, + 0x15, 0x31, 0xff, 0x1c, 0x09, 0xda, 0x7c, 0xf6, 0x1b, 0x50, 0xa7, 0xb8, 0x1f, 0xf9, 0xc4, 0xa1, + 0x8c, 0x44, 0xcd, 0xaa, 0xe0, 0x01, 0x24, 0xe8, 0x98, 0x91, 0xc8, 0xfa, 0x23, 0x03, 0xe6, 0xa5, + 0xdc, 0xb3, 0xaf, 0xee, 0x4d, 0x28, 0x47, 0xd8, 0x8b, 0x69, 0xb3, 0xb0, 0x51, 0xdc, 0xac, 0xef, + 0x2c, 0xa6, 0xab, 0x3b, 0x3c, 0xc2, 0x5e, 0x6c, 0x4b, 0x6c, 0x6a, 0x04, 0xc5, 0xb3, 0x8d, 0xc0, + 0xfa, 0xab, 0x12, 0x2c, 0x1e, 0xc5, 0xe4, 0x49, 0xec, 0x31, 0x32, 0xcb, 0x7a, 0xbc, 0x0a, 0xb5, + 0xfe, 0x80, 0x61, 0xe6, 0x85, 0x81, 0xe6, 0x29, 0x9d, 0xec, 0x1d, 0x85, 0xb1, 0x53, 0x1a, 0xf4, + 0x32, 0xcc, 0x47, 0xb1, 0xd7, 0xc7, 0xf1, 0xc8, 0xe1, 0xbb, 0x4b, 0x19, 0x5f, 0x5d, 0xc1, 0x0e, + 0x42, 0xb7, 0x87, 0x7e, 0x0e, 0x16, 0xe4, 0x1a, 0xe7, 0x97, 0x6d, 0x5e, 0x00, 0x1f, 0xa5, 0x6b, + 0xc7, 0xfb, 0x3b, 0x8c, 0xf9, 0x62, 0xed, 0x4a, 0x76, 0x85, 0xb7, 0x5b, 0xcc, 0x47, 0x3b, 0xb0, + 0x4a, 0x7b, 0x5e, 0xe4, 0xb8, 0x61, 0x40, 0x59, 0x8c, 0xbd, 0x80, 0x39, 0x6e, 0x97, 0xb8, 0x3d, + 0xb5, 0x92, 0xcb, 0x1c, 0xb9, 0x9b, 0xe0, 0x76, 0x39, 0x0a, 0x6d, 0xc3, 0xb2, 0x47, 0x9d, 0x88, + 0x50, 0xea, 0xf5, 0x3d, 0xca, 0x3c, 0x57, 0x72, 0x57, 0xd9, 0x28, 0x6e, 0x56, 0xed, 0x25, 0x8f, + 0x1e, 0xa5, 0x18, 0xc1, 0xe3, 0x55, 0xa8, 0xb2, 0xd3, 0xc0, 0xa1, 0xde, 0xd7, 0x89, 0x58, 0xe9, + 0x92, 0x5d, 0x61, 0xa7, 0xc1, 0xb1, 0xf7, 0x75, 0x82, 0x2c, 0x58, 0x38, 0x09, 0x63, 0x67, 0x10, + 0xb5, 0x31, 0x23, 0x0e, 0xa3, 0xcd, 0x9a, 0xc0, 0xd7, 0x4f, 0xc2, 0xf8, 0x2b, 0x02, 0xd6, 0xa2, + 0x9c, 0xa6, 0xef, 0x05, 0x8e, 0x1b, 0xf6, 0xfb, 0x1e, 0xe3, 0x34, 0x20, 0x69, 0xfa, 0x5e, 0xb0, + 0x2b, 0x60, 0x2d, 0x8a, 0x36, 0xc1, 0x1c, 0x50, 0xe2, 0x60, 0x3a, 0x0a, 0x5c, 0x45, 0xd9, 0xac, + 0x0b, 0x09, 0x1a, 0x03, 0x4a, 0x6e, 0x73, 0xb0, 0xa4, 0x45, 0x1b, 0x50, 0xa7, 0xc4, 0x0d, 0x83, + 0x36, 0x8e, 0x3d, 0x42, 0x9b, 0xf3, 0x1b, 0x45, 0xae, 0xd2, 0x0c, 0x08, 0xbd, 0x00, 0xc0, 0x62, + 0x6e, 0xe9, 0xc4, 0x89, 0xdc, 0xe6, 0x82, 0xdc, 0xd6, 0x2c, 0x1e, 0x1d, 0x06, 0xe4, 0xc8, 0x15, + 0xdc, 0xe0, 0xd3, 0x0c, 0x37, 0x0d, 0xc5, 0x0d, 0x3e, 0xd5, 0xdc, 0x58, 0xff, 0x60, 0x80, 0x99, + 0x1a, 0xca, 0xec, 0x06, 0xfc, 0x69, 0x98, 0x13, 0xd8, 0x49, 0x6b, 0x49, 0x4c, 0x53, 0x11, 0x4c, + 0x2a, 0xa9, 0x38, 0xa9, 0xa4, 0x5b, 0x60, 0x4a, 0xa1, 0x32, 0x64, 0xd2, 0x5c, 0x16, 0x42, 0x2e, + 0x5b, 0xc2, 0xff, 0x5f, 0x14, 0x61, 0x6d, 0x6c, 0x11, 0xff, 0xbf, 0xd8, 0xfb, 0x84, 0xc1, 0xcd, + 0x4d, 0x35, 0x38, 0x8f, 0x3a, 0x27, 0x5e, 0x4c, 0x99, 0xb6, 0x6c, 0x6e, 0x03, 0x75, 0x8f, 0xde, + 0xe3, 0x30, 0xc1, 0xc7, 0xcb, 0x30, 0xff, 0x04, 0x73, 0x15, 0x7a, 0x7d, 0x12, 0x0e, 0x98, 0xb0, + 0xeb, 0xa2, 0x5d, 0xe7, 0xb0, 0x96, 0x04, 0x71, 0x0f, 0x7b, 0x12, 0xc6, 0x2e, 0x11, 0x36, 0x5d, + 0xb5, 0x65, 0x83, 0x0b, 0x10, 0x13, 0x36, 0x88, 0x03, 0x47, 0x9c, 0x21, 0xd2, 0x9a, 0xab, 0xf6, + 0xbc, 0x04, 0x3e, 0x12, 0xb0, 0xc9, 0xd5, 0xac, 0x4f, 0xac, 0xa6, 0xf5, 0x63, 0x03, 0xd6, 0x27, + 0x16, 0xe9, 0xb9, 0xd8, 0xda, 0x75, 0xa8, 0x8d, 0xdb, 0x59, 0xd5, 0xd5, 0x46, 0x96, 0x9c, 0x94, + 0xa5, 0xec, 0x49, 0xb9, 0x06, 0x73, 0x4a, 0xdc, 0xb2, 0xd8, 0x70, 0xaa, 0x85, 0x5e, 0x04, 0x48, + 0x4e, 0x50, 0xbe, 0x16, 0xdc, 0x83, 0xd4, 0xf4, 0x11, 0x4a, 0xad, 0x8f, 0x0c, 0xb8, 0x96, 0x91, + 0xd1, 0x0e, 0x7d, 0xff, 0x31, 0x9e, 0xcd, 0x18, 0x27, 0x0c, 0xa7, 0x30, 0xc5, 0x70, 0x26, 0xac, + 0xa3, 0x38, 0x69, 0x1d, 0x08, 0x4a, 0x3d, 0x32, 0xe2, 0x3b, 0x87, 0x0b, 0x22, 0x7e, 0x5b, 0xdf, + 0x80, 0xeb, 0x53, 0xd9, 0x7c, 0x1e, 0xcb, 0x61, 0xfd, 0x9d, 0x01, 0xcb, 0xad, 0xd3, 0xe0, 0x2d, + 0x82, 0x63, 0x76, 0x87, 0xe0, 0x99, 0xe2, 0xae, 0xf1, 0x9d, 0x57, 0x38, 0xc7, 0xce, 0x2b, 0x4e, + 0x51, 0xe0, 0xa7, 0x60, 0x11, 0xb7, 0x87, 0x1e, 0x25, 0x4e, 0xb2, 0x01, 0x95, 0x87, 0x91, 0xe0, + 0x03, 0xb9, 0x0d, 0xad, 0xdf, 0x37, 0x60, 0x25, 0xcf, 0xf3, 0x73, 0x08, 0xe2, 0xb2, 0x6e, 0xa1, + 0x98, 0x73, 0x0b, 0xd6, 0x8f, 0x0b, 0xb0, 0x2a, 0x0e, 0xb7, 0xd6, 0x69, 0x70, 0xcc, 0x30, 0x1b, + 0xd0, 0x59, 0xb4, 0x78, 0x03, 0xb4, 0xc6, 0x32, 0x21, 0x17, 0x28, 0x10, 0x0f, 0x7b, 0xd6, 0xa1, + 0x22, 0x39, 0xd0, 0x96, 0x35, 0x27, 0x18, 0xa0, 0x5c, 0x6f, 0x2e, 0xf6, 0x7d, 0x12, 0x3b, 0x52, + 0xc7, 0xa9, 0x67, 0x96, 0xe0, 0x63, 0x0e, 0x6d, 0x89, 0xfd, 0xe2, 0x0e, 0xe2, 0x98, 0x04, 0x82, + 0x44, 0xfa, 0xb6, 0x9a, 0x82, 0xb4, 0x28, 0x7a, 0x0d, 0x56, 0x63, 0x65, 0x7c, 0x8e, 0x77, 0xe2, + 0xf0, 0xad, 0x45, 0x4e, 0x3d, 0xca, 0xd4, 0x69, 0x8e, 0x34, 0x72, 0xff, 0xe4, 0x61, 0xc8, 0xee, + 0x72, 0x0c, 0xda, 0x82, 0x25, 0xe1, 0x98, 0x9c, 0xec, 0xd1, 0x29, 0x1d, 0xde, 0xa2, 0x40, 0x1c, + 0xa7, 0x67, 0xe7, 0x97, 0xe0, 0x5a, 0x4c, 0x68, 0xe8, 0x0f, 0xbd, 0xa0, 0x33, 0x79, 0xfe, 0x57, + 0x45, 0xa7, 0x66, 0x42, 0x31, 0xe6, 0x9c, 0xac, 0x6f, 0x17, 0x60, 0x6d, 0x5c, 0xc7, 0x3f, 0xd5, + 0x55, 0x47, 0x37, 0xa1, 0xa1, 0x1c, 0x59, 0xfe, 0x34, 0x59, 0x90, 0x50, 0x6d, 0xd4, 0xb7, 0x60, + 0x0e, 0xbb, 0xfc, 0x84, 0x12, 0x0a, 0x6f, 0x64, 0x02, 0xc9, 0xdb, 0x02, 0x6c, 0x2b, 0x34, 0xda, + 0x86, 0x9a, 0x98, 0xca, 0x0b, 0x4e, 0x42, 0x15, 0xec, 0xa7, 0x7c, 0x71, 0x1d, 0xec, 0x07, 0x27, + 0xa1, 0x2d, 0xd8, 0xe1, 0xbf, 0xac, 0x6f, 0x1a, 0x70, 0x4d, 0x68, 0xe4, 0x58, 0x85, 0x1f, 0x62, + 0xa7, 0xcd, 0x64, 0x7a, 0xda, 0x2b, 0x15, 0x52, 0xaf, 0x74, 0xae, 0x1d, 0x6b, 0x7d, 0xdf, 0x80, + 0xeb, 0x53, 0x79, 0x78, 0x0e, 0x4b, 0x73, 0x0b, 0xca, 0x5c, 0x17, 0x7c, 0x33, 0x14, 0xa7, 0xeb, + 0x4a, 0xe2, 0xf3, 0x27, 0x4e, 0x29, 0x7f, 0xe2, 0x58, 0x7f, 0x63, 0xc0, 0x82, 0x34, 0xd0, 0x4b, + 0x3b, 0x17, 0xb4, 0x76, 0x8b, 0x19, 0xed, 0x9e, 0xcf, 0x78, 0xe4, 0x35, 0xce, 0x9e, 0x7b, 0xec, + 0x05, 0x7e, 0xd8, 0xb1, 0xfe, 0xd8, 0x80, 0x86, 0xe6, 0xf5, 0x39, 0x28, 0x78, 0x92, 0xc7, 0xe2, + 0x14, 0x1e, 0xad, 0x0e, 0x2c, 0xec, 0xf7, 0xa3, 0x30, 0x4e, 0x14, 0x98, 0x8b, 0xdc, 0x8c, 0x73, + 0x44, 0x6e, 0x93, 0x13, 0x15, 0xa6, 0x4d, 0xf4, 0x1e, 0x34, 0xf4, 0x44, 0xb3, 0x4b, 0xbf, 0x92, + 0x95, 0xbe, 0xa6, 0x2f, 0x67, 0xdf, 0xe1, 0x9a, 0xf5, 0x09, 0x0e, 0x06, 0xd1, 0xc5, 0x24, 0x1e, + 0xce, 0x75, 0xde, 0xe5, 0xfd, 0x71, 0x69, 0xcc, 0x1f, 0x5b, 0xdf, 0x35, 0x60, 0x31, 0x61, 0xea, + 0x67, 0x67, 0xbd, 0x7b, 0xb0, 0x78, 0x07, 0x33, 0xb7, 0x3b, 0x63, 0x92, 0x66, 0x9a, 0xaf, 0x79, + 0x7a, 0x9a, 0xe6, 0x3f, 0x0c, 0x30, 0xd3, 0xd9, 0x2e, 0xfd, 0x36, 0x3f, 0x25, 0xed, 0x52, 0xfa, + 0x04, 0x69, 0x97, 0x54, 0xd7, 0xe5, 0xb3, 0x75, 0xfd, 0x76, 0xa9, 0x5a, 0x34, 0x4b, 0xd6, 0x37, + 0x60, 0x45, 0x08, 0x77, 0xe9, 0xa1, 0xe9, 0x14, 0x17, 0x64, 0x51, 0x58, 0x1d, 0x9b, 0xfc, 0xf2, + 0x6d, 0xcc, 0xfa, 0x5b, 0x03, 0x16, 0x8f, 0x5d, 0x1c, 0xcc, 0x7a, 0x2b, 0xbc, 0x01, 0xfc, 0xae, + 0x3c, 0x26, 0x2b, 0xf4, 0xf1, 0xa9, 0x96, 0x34, 0x97, 0xb6, 0x2a, 0x3e, 0x2d, 0x6d, 0x55, 0xca, + 0xa6, 0xad, 0x32, 0x79, 0xa6, 0x72, 0x36, 0xcf, 0x64, 0x7d, 0x68, 0x80, 0x99, 0x32, 0xfb, 0x33, + 0x74, 0xa4, 0x59, 0xff, 0x6a, 0x00, 0xb2, 0x45, 0xa8, 0x44, 0x66, 0xd5, 0xe4, 0xb9, 0xec, 0xe6, + 0x7c, 0x2e, 0x01, 0xbd, 0x02, 0x35, 0x76, 0x1a, 0x88, 0xc8, 0x45, 0x5e, 0x6d, 0xb2, 0x33, 0xb7, + 0x4e, 0x03, 0x19, 0xb9, 0x30, 0xf9, 0x23, 0xbd, 0x04, 0x95, 0x33, 0xd6, 0xf8, 0x01, 0x2c, 0xe7, + 0x04, 0x7a, 0x0e, 0xb6, 0xf8, 0x08, 0x6a, 0xf7, 0x77, 0x67, 0x51, 0xdd, 0x8b, 0x00, 0x14, 0x9f, + 0x10, 0x27, 0x0a, 0xbd, 0x80, 0x29, 0xbd, 0xd5, 0x38, 0xe4, 0x88, 0x03, 0xac, 0x2e, 0x00, 0x1f, + 0xf7, 0x39, 0x48, 0xf0, 0xa1, 0x01, 0x68, 0x8f, 0xf8, 0x84, 0x11, 0x1b, 0x07, 0x1d, 0x72, 0xe1, + 0x69, 0xde, 0xcc, 0xce, 0x28, 0x8e, 0x67, 0x60, 0x83, 0x90, 0x79, 0x27, 0x2a, 0xa5, 0x2b, 0xb3, + 0xd7, 0x20, 0x41, 0x87, 0x81, 0x3f, 0xb2, 0xde, 0x87, 0xe5, 0x1c, 0x63, 0x17, 0x7d, 0x60, 0x7f, + 0x15, 0x16, 0x6c, 0xfc, 0xe4, 0xc2, 0xde, 0x09, 0x1a, 0x50, 0x70, 0x4f, 0x84, 0x8c, 0x35, 0xbb, + 0xe0, 0x9e, 0x58, 0xbf, 0x67, 0x40, 0x43, 0x8f, 0x7f, 0xc1, 0xac, 0xcf, 0xf0, 0x1a, 0x60, 0xb5, + 0x01, 0xd9, 0xf8, 0xc9, 0x45, 0x9f, 0xba, 0xe3, 0x42, 0x87, 0xb0, 0x9c, 0x9b, 0xe5, 0xb2, 0x4f, + 0x5b, 0xeb, 0xcf, 0x0c, 0xb1, 0x8a, 0x47, 0x83, 0x0b, 0x5a, 0xc5, 0xe9, 0x9a, 0x95, 0x62, 0x96, + 0xb4, 0x98, 0xbc, 0x5f, 0x9a, 0xda, 0xe3, 0x3f, 0xb9, 0x99, 0x9f, 0x84, 0xb1, 0xe3, 0x62, 0xaa, + 0xae, 0xba, 0x73, 0x27, 0x61, 0xbc, 0x8b, 0x29, 0x8f, 0x38, 0x35, 0x7f, 0x17, 0x6d, 0xc0, 0x7f, + 0x69, 0xa4, 0x6b, 0x3a, 0xa3, 0x02, 0xce, 0x19, 0xd3, 0x8c, 0x2d, 0x33, 0x37, 0x05, 0xc6, 0x7c, + 0xe9, 0xa7, 0x4b, 0xb6, 0xf8, 0x9d, 0xd5, 0x40, 0x39, 0xa7, 0x81, 0xf7, 0x53, 0x9b, 0xb8, 0x14, + 0x35, 0x8c, 0xc0, 0xb4, 0xf1, 0x13, 0xe5, 0x2a, 0x2e, 0x63, 0x2b, 0x67, 0x45, 0x2b, 0xe5, 0x44, + 0xfb, 0x35, 0x58, 0xca, 0x4c, 0x7d, 0xd1, 0x82, 0xfd, 0x86, 0x01, 0xab, 0x5a, 0x73, 0xb3, 0x8b, + 0x77, 0x8e, 0x6d, 0xfb, 0x74, 0x01, 0x31, 0xac, 0x8d, 0x73, 0x70, 0xd1, 0x52, 0xfe, 0x8b, 0xf4, + 0x93, 0xcf, 0xf1, 0x8d, 0x31, 0xfb, 0x92, 0x58, 0xca, 0xbf, 0x24, 0x4a, 0xc5, 0x94, 0x13, 0xc5, + 0x7c, 0xf2, 0x97, 0x45, 0xab, 0x03, 0x8b, 0x89, 0x38, 0xb3, 0xeb, 0xea, 0x65, 0x28, 0xf6, 0x86, + 0x4f, 0xdd, 0x96, 0x1c, 0x67, 0xfd, 0xae, 0x34, 0x8f, 0x9f, 0xca, 0xe1, 0x3d, 0xe6, 0x10, 0x95, + 0x9d, 0x5c, 0xea, 0x71, 0xfd, 0x23, 0x23, 0xf5, 0x23, 0xb3, 0x1a, 0xcb, 0xa7, 0x61, 0x2e, 0xe6, + 0xdc, 0x4d, 0x4d, 0x6a, 0x4b, 0xbe, 0x15, 0x01, 0x0f, 0xd0, 0x08, 0x76, 0xbb, 0x4e, 0xd6, 0x7e, + 0x6a, 0x1c, 0x72, 0x70, 0x61, 0x36, 0x64, 0xf9, 0xb0, 0x92, 0x97, 0xe8, 0x52, 0xed, 0xe5, 0xd7, + 0xe1, 0xea, 0x57, 0x02, 0x1e, 0x62, 0xee, 0x11, 0xca, 0xe2, 0x70, 0xf4, 0x7c, 0x4d, 0xc6, 0x22, + 0x70, 0x6d, 0xda, 0xf4, 0x17, 0x6d, 0x26, 0x5f, 0x83, 0xeb, 0x36, 0xe9, 0x78, 0x94, 0x91, 0x98, + 0xdf, 0x02, 0x0e, 0x1f, 0x53, 0x12, 0x0f, 0x49, 0x3c, 0x8b, 0x9c, 0xab, 0x30, 0xc7, 0x2f, 0x8a, + 0x8c, 0xaa, 0xf8, 0xbc, 0xdc, 0xc7, 0xa7, 0x2d, 0x6a, 0xbd, 0x0e, 0x2f, 0x4c, 0x9f, 0x41, 0x89, + 0x92, 0xf0, 0x65, 0xe4, 0xa3, 0xcd, 0xa6, 0xc8, 0x72, 0x5e, 0x12, 0x53, 0x03, 0xb8, 0x3a, 0x65, + 0xf8, 0xb3, 0x38, 0xe2, 0x26, 0xec, 0x51, 0xc7, 0xf5, 0x09, 0x96, 0x17, 0xb7, 0xaa, 0x5d, 0xf1, + 0xa8, 0x48, 0x16, 0x9d, 0xff, 0x12, 0xf9, 0x3e, 0x5c, 0xb5, 0x49, 0x3f, 0x94, 0x37, 0xae, 0x4b, + 0x10, 0x6b, 0x07, 0xae, 0x4d, 0x1b, 0xff, 0x4c, 0x4d, 0x7f, 0xdb, 0x80, 0xf5, 0xa3, 0xee, 0x88, + 0x7a, 0x2e, 0xf6, 0x7f, 0x92, 0x3c, 0xc1, 0x74, 0x96, 0x66, 0xc8, 0x0e, 0x58, 0xef, 0x41, 0x73, + 0x92, 0xa1, 0x33, 0xd7, 0x26, 0x59, 0x80, 0xc2, 0x33, 0x16, 0xe0, 0x4f, 0x0d, 0x40, 0xc7, 0x91, + 0xef, 0x31, 0x5b, 0xec, 0x8c, 0xd9, 0xf2, 0x21, 0x35, 0xca, 0x47, 0x48, 0xb7, 0xf3, 0x9d, 0x42, + 0xd3, 0xb0, 0xab, 0x02, 0xc8, 0x85, 0xe2, 0x77, 0x55, 0x4d, 0xa0, 0xf3, 0x3f, 0x35, 0x8d, 0xa5, + 0xe8, 0x1a, 0xd4, 0x3c, 0xea, 0xc4, 0xf8, 0x89, 0xd3, 0x1b, 0x6a, 0x5f, 0xe8, 0x51, 0x1b, 0x3f, + 0x79, 0x30, 0xb4, 0xfe, 0xc9, 0x80, 0xe5, 0x1c, 0x7b, 0xb3, 0x6f, 0xf7, 0x4f, 0x41, 0xc9, 0x27, + 0x27, 0x4c, 0x5d, 0x68, 0x1b, 0xdb, 0xaa, 0x6c, 0x4c, 0x0e, 0x2c, 0x38, 0x16, 0x78, 0xb4, 0x09, + 0xe5, 0xd8, 0xeb, 0x74, 0x99, 0xaa, 0xa6, 0x99, 0x46, 0x28, 0x09, 0xd0, 0x26, 0x77, 0xcc, 0x1d, + 0x91, 0x62, 0x96, 0x09, 0x87, 0x31, 0x5a, 0x5b, 0xa3, 0xad, 0xdf, 0x32, 0xc0, 0xb4, 0x09, 0x6e, + 0xef, 0x07, 0x6d, 0x72, 0x3a, 0x8b, 0x8e, 0xaf, 0x42, 0x35, 0x79, 0x57, 0x93, 0xd6, 0x54, 0xa1, + 0xea, 0x45, 0x2d, 0x3d, 0x93, 0x8a, 0xcf, 0x38, 0x93, 0xac, 0x3f, 0x34, 0x60, 0x29, 0xc3, 0xc6, + 0xec, 0xba, 0x7c, 0x11, 0x20, 0x26, 0xb8, 0xed, 0x78, 0x7c, 0x20, 0x9d, 0x7d, 0x88, 0xf5, 0xc8, + 0x9c, 0x25, 0x6e, 0x5d, 0xa4, 0x3d, 0x51, 0x91, 0x94, 0x98, 0x9f, 0x22, 0xb0, 0x8e, 0x61, 0xf9, + 0x9d, 0xa1, 0xeb, 0xde, 0x27, 0xec, 0xce, 0x88, 0xf3, 0x7b, 0x11, 0xf1, 0xb7, 0xf5, 0x3b, 0x06, + 0xac, 0xe4, 0x47, 0xbd, 0xe8, 0x0b, 0xf4, 0x4d, 0x28, 0x89, 0x37, 0xb2, 0x71, 0xf9, 0xf8, 0xac, + 0x42, 0x3e, 0x81, 0xb6, 0xbe, 0x06, 0xeb, 0x09, 0x1f, 0xea, 0x05, 0xf4, 0x62, 0x57, 0x9f, 0xef, + 0xdf, 0xe6, 0xe4, 0x14, 0x17, 0x2d, 0xae, 0x52, 0x71, 0x31, 0xbd, 0xe2, 0x68, 0x05, 0x94, 0xce, + 0x56, 0xc0, 0xb7, 0x2a, 0x50, 0xd9, 0x4d, 0x8f, 0x7d, 0xc5, 0x8d, 0xd7, 0x16, 0xac, 0x94, 0xec, + 0xaa, 0x04, 0xec, 0xb7, 0xd1, 0x1b, 0x29, 0xab, 0x51, 0xe8, 0x76, 0xd5, 0x2e, 0x5d, 0xce, 0x6f, + 0xa8, 0xbb, 0x1c, 0x95, 0xf0, 0xcb, 0x1b, 0x68, 0x03, 0x4a, 0x11, 0x21, 0xba, 0xf4, 0x6d, 0x5e, + 0xd3, 0x1f, 0x11, 0x12, 0xdb, 0x02, 0x23, 0xee, 0x9a, 0x24, 0xee, 0xab, 0xcb, 0xb6, 0xf8, 0x8d, + 0x5e, 0x85, 0x6a, 0x14, 0x7b, 0x61, 0xec, 0xb1, 0x91, 0x88, 0xa9, 0x1a, 0x3b, 0xcb, 0x19, 0xed, + 0xf7, 0xfb, 0x38, 0x68, 0x1f, 0xc5, 0x9e, 0x9d, 0x10, 0xa1, 0x37, 0x61, 0xd1, 0xa3, 0xa1, 0x2f, + 0x1e, 0x8b, 0x1c, 0x9f, 0x0c, 0x89, 0x2f, 0xa2, 0xf6, 0xc6, 0xce, 0x7a, 0xd2, 0x6f, 0x5f, 0xe3, + 0x0f, 0x38, 0xda, 0x6e, 0x78, 0xb9, 0x36, 0xfa, 0x79, 0x68, 0x88, 0xe4, 0x8a, 0xe7, 0xfb, 0x8e, + 0x8b, 0xdd, 0x2e, 0x51, 0xcf, 0xcd, 0xf3, 0x41, 0xc8, 0xee, 0x79, 0xbe, 0xbf, 0xcb, 0x61, 0x62, + 0xa5, 0x47, 0x81, 0xeb, 0xf8, 0x61, 0x47, 0x55, 0xdd, 0x54, 0x78, 0xfb, 0x20, 0xec, 0xa0, 0x4d, + 0x30, 0x63, 0xe2, 0x86, 0x71, 0x5b, 0x94, 0xec, 0x38, 0x94, 0x61, 0xa6, 0x4a, 0x6f, 0x1a, 0x12, + 0xde, 0xf2, 0xfa, 0xe4, 0x98, 0x61, 0x96, 0xa1, 0xa4, 0x2e, 0x0e, 0x24, 0x65, 0x3d, 0x4b, 0xc9, + 0x0f, 0x11, 0x41, 0xf9, 0x32, 0xd7, 0x7a, 0xe4, 0x7b, 0x2e, 0x76, 0xf8, 0xee, 0x6d, 0xce, 0xcb, + 0x3a, 0x21, 0x05, 0xe3, 0xae, 0x02, 0xdd, 0x84, 0x86, 0x7c, 0x10, 0x27, 0x6d, 0x47, 0x1e, 0x29, + 0x0b, 0xe2, 0xd2, 0xbe, 0xa0, 0xa1, 0xe2, 0xb5, 0x15, 0xfd, 0x22, 0x5c, 0xe5, 0x87, 0x1d, 0x39, + 0x25, 0xee, 0x40, 0x28, 0xa9, 0x3d, 0x88, 0xa5, 0xb6, 0xfa, 0xba, 0xc2, 0x6c, 0xad, 0x8f, 0x4f, + 0xef, 0x6a, 0xfc, 0x9e, 0x42, 0xbf, 0x23, 0x5e, 0x79, 0x71, 0x14, 0xf9, 0x1e, 0xd1, 0xfe, 0x64, + 0x51, 0x66, 0x81, 0x15, 0x50, 0xba, 0x94, 0x75, 0xa8, 0x30, 0x4c, 0x7b, 0xdc, 0x74, 0x4c, 0x59, + 0x78, 0xc0, 0x9b, 0xfb, 0x6d, 0x71, 0xb8, 0x30, 0xec, 0x13, 0x29, 0xc0, 0x92, 0x10, 0xa0, 0x26, + 0x20, 0x82, 0xfd, 0xcf, 0x02, 0xe2, 0x8c, 0x0e, 0x62, 0x97, 0x38, 0x9d, 0x38, 0x1c, 0x44, 0x0e, + 0xc3, 0x9d, 0x26, 0x12, 0x86, 0x6c, 0x6a, 0xcc, 0x7d, 0x8e, 0x68, 0xe1, 0x0e, 0xfa, 0x22, 0x2c, + 0xb4, 0x3d, 0xda, 0x73, 0x4e, 0x06, 0xbe, 0xef, 0x84, 0x11, 0x6b, 0x2e, 0x8b, 0x45, 0x5e, 0x49, + 0x16, 0x79, 0xcf, 0xa3, 0xbd, 0x7b, 0x03, 0xdf, 0x3f, 0x8c, 0x98, 0x5d, 0x6f, 0xa7, 0x0d, 0xae, + 0x73, 0x7e, 0x88, 0x11, 0x16, 0x8f, 0x9c, 0x58, 0x6e, 0xf1, 0xe6, 0x8a, 0xd4, 0xb9, 0x47, 0x6d, + 0x0e, 0xd6, 0x1b, 0xff, 0x75, 0xa8, 0xe3, 0xc8, 0x4b, 0x92, 0xd9, 0xab, 0x63, 0xe6, 0x77, 0xfb, + 0x68, 0x5f, 0xa5, 0xb4, 0x6d, 0xc0, 0x91, 0x97, 0x3e, 0xe1, 0x2f, 0xca, 0x7c, 0x37, 0x4b, 0xd6, + 0x61, 0x4d, 0xac, 0x43, 0x23, 0x01, 0x8b, 0x85, 0x78, 0xbb, 0x54, 0x2d, 0x99, 0x65, 0xbe, 0x84, + 0xb8, 0xed, 0x7c, 0x30, 0x08, 0xe3, 0x41, 0xdf, 0xfa, 0xcf, 0x02, 0x54, 0xb5, 0xe3, 0x9d, 0x28, + 0x94, 0x31, 0x26, 0x0b, 0x65, 0x5e, 0x86, 0x79, 0x51, 0x05, 0x90, 0xcf, 0xca, 0xd7, 0x39, 0x4c, + 0xb3, 0x33, 0xe9, 0x10, 0xb2, 0x55, 0x0a, 0xa5, 0x7c, 0x95, 0x42, 0xb6, 0x7c, 0xb2, 0x9c, 0x2f, + 0x9f, 0xdc, 0x54, 0x05, 0x07, 0x6c, 0x14, 0x11, 0xb5, 0x13, 0xeb, 0x89, 0x2a, 0x0e, 0x23, 0x59, + 0x6a, 0xd0, 0x1a, 0x45, 0x04, 0x7d, 0x06, 0x90, 0xa0, 0xcc, 0x97, 0x37, 0x55, 0xc4, 0x70, 0x8b, + 0x1c, 0x73, 0x2f, 0x53, 0xe2, 0x34, 0xad, 0x9a, 0xb2, 0x3a, 0xb5, 0x9a, 0x72, 0xa2, 0x50, 0xad, + 0x36, 0x59, 0x76, 0x38, 0x56, 0x71, 0x09, 0x13, 0x15, 0x97, 0xd6, 0x87, 0x25, 0xa8, 0xea, 0xc4, + 0x78, 0xe6, 0xf4, 0x33, 0x9e, 0x71, 0xfa, 0xa1, 0x17, 0xb8, 0x4b, 0x64, 0xf1, 0x08, 0x3f, 0xf6, + 0x89, 0xf2, 0xb8, 0x29, 0x80, 0xfb, 0x62, 0xfc, 0x38, 0x8c, 0x99, 0x4a, 0xb4, 0xc8, 0x06, 0xda, + 0x81, 0xaa, 0x1b, 0x06, 0x27, 0xbe, 0xe7, 0xb2, 0x89, 0x87, 0xc1, 0x77, 0x63, 0x8f, 0x91, 0x5d, + 0x85, 0xb5, 0x13, 0x3a, 0xf4, 0x4b, 0xb0, 0x80, 0x7d, 0x6e, 0x12, 0x23, 0x55, 0x4e, 0x23, 0xdf, + 0x06, 0x57, 0x53, 0xab, 0x93, 0x58, 0x51, 0x51, 0x63, 0xcf, 0xe3, 0x4c, 0x0b, 0xbd, 0x02, 0x55, + 0x5d, 0x1d, 0x3f, 0x51, 0x12, 0xb2, 0xa7, 0x10, 0x76, 0x42, 0x82, 0xf6, 0x60, 0x29, 0x51, 0xa6, + 0x43, 0x4e, 0x23, 0x2f, 0x26, 0x6d, 0xb1, 0x4c, 0xf5, 0x9d, 0x66, 0xce, 0xc7, 0x72, 0xd5, 0xde, + 0x95, 0x78, 0x7b, 0xd1, 0xcd, 0x03, 0xf8, 0x46, 0xe4, 0x26, 0x93, 0xa6, 0xa3, 0xab, 0x62, 0x84, + 0x95, 0xec, 0x8b, 0xce, 0x43, 0x95, 0x9a, 0xb6, 0xeb, 0x2c, 0x6d, 0xa0, 0xb7, 0x60, 0x39, 0x9d, + 0x9f, 0x85, 0xa1, 0xe3, 0xe3, 0xb8, 0x23, 0x4b, 0x18, 0xeb, 0x3b, 0x57, 0x27, 0x38, 0x68, 0x85, + 0xe1, 0x01, 0x27, 0xb0, 0x4d, 0x77, 0x0c, 0x82, 0x76, 0xc1, 0xc4, 0x94, 0x92, 0x58, 0x78, 0xb1, + 0x13, 0xec, 0xf9, 0xa4, 0x2d, 0x1c, 0x6e, 0x56, 0x90, 0xdb, 0x9a, 0xe0, 0x9e, 0xc0, 0xdb, 0x8b, + 0x38, 0x0f, 0xb0, 0x3e, 0x32, 0x60, 0x21, 0xb7, 0x2a, 0xb9, 0xc3, 0xdc, 0xc8, 0x87, 0x72, 0x37, + 0xa0, 0xae, 0x97, 0x2c, 0x3d, 0xea, 0x41, 0x83, 0x5a, 0x74, 0xca, 0xb6, 0x6b, 0x42, 0x45, 0x6d, + 0x5d, 0x55, 0xaf, 0xa8, 0x9b, 0xdc, 0xf3, 0x25, 0x83, 0xa5, 0xe6, 0x2d, 0xf7, 0x9f, 0xa9, 0x31, + 0x49, 0x31, 0xe6, 0x06, 0xcc, 0x67, 0x6d, 0x40, 0xcf, 0x64, 0xa4, 0x41, 0xd5, 0x9f, 0x1b, 0x50, + 0xd5, 0xeb, 0x9d, 0xad, 0x03, 0x33, 0x72, 0x75, 0x60, 0xda, 0x0d, 0xa4, 0x11, 0x99, 0x20, 0xe4, + 0xd7, 0x80, 0x2d, 0x58, 0xd2, 0x56, 0xc2, 0xd1, 0x4e, 0x17, 0xd3, 0xae, 0x7a, 0xcb, 0x5b, 0xd4, + 0x88, 0x07, 0x64, 0xf4, 0x16, 0xa6, 0x5d, 0xf4, 0x05, 0x00, 0x51, 0x9d, 0xea, 0x76, 0xb1, 0x17, + 0xa8, 0xe8, 0x7a, 0x6d, 0x3b, 0xf9, 0x4a, 0xe3, 0x5d, 0xec, 0xb1, 0x7b, 0x61, 0x7c, 0x37, 0xe0, + 0x7e, 0xb5, 0xc6, 0x29, 0x77, 0x39, 0xa1, 0xf5, 0x1d, 0x03, 0x16, 0xc7, 0x6c, 0xeb, 0x2c, 0x7d, + 0x6f, 0xc3, 0x32, 0x66, 0x8c, 0xf4, 0x23, 0xee, 0x54, 0x53, 0x1d, 0x49, 0xbd, 0x2f, 0x25, 0xa8, + 0xc4, 0x11, 0x4c, 0xaa, 0x7f, 0xc2, 0x7d, 0x94, 0x26, 0xeb, 0x5c, 0xf7, 0xa1, 0x9e, 0xb1, 0xd6, + 0x67, 0xac, 0xff, 0x99, 0xe5, 0x77, 0xd6, 0xab, 0x60, 0x8e, 0x1b, 0x6e, 0xbe, 0xb4, 0xc8, 0x18, + 0x2b, 0x2d, 0xfa, 0xa1, 0x01, 0x8b, 0x63, 0x36, 0x7a, 0x16, 0x03, 0x93, 0xa9, 0xec, 0xcf, 0x41, + 0x2d, 0x31, 0x69, 0x21, 0x78, 0x63, 0x07, 0x4d, 0x5a, 0xbf, 0x9d, 0x12, 0xf1, 0x65, 0x16, 0x3e, + 0xc6, 0x0b, 0x3a, 0xe3, 0xb5, 0x80, 0x8b, 0x1a, 0xa1, 0xab, 0x01, 0x3f, 0x0b, 0x28, 0xa1, 0x9d, + 0xb0, 0x51, 0x8d, 0x49, 0x14, 0xf9, 0x3d, 0x03, 0x80, 0x07, 0x39, 0xb2, 0xd6, 0x01, 0x7d, 0x1a, + 0x96, 0x84, 0x8d, 0x3c, 0xc1, 0xbe, 0x2f, 0x63, 0xa2, 0xbe, 0x14, 0xa8, 0x68, 0x37, 0x38, 0xe2, + 0x5d, 0xec, 0xfb, 0x9c, 0xfc, 0x1d, 0x8a, 0x5e, 0x85, 0x95, 0x28, 0x0e, 0x5d, 0x42, 0x69, 0x9e, + 0xba, 0x20, 0xa8, 0x97, 0x14, 0x2e, 0xd3, 0x61, 0x1b, 0x56, 0x7a, 0x43, 0x11, 0x52, 0xe4, 0x3b, + 0x14, 0x45, 0x07, 0xb3, 0x37, 0xe4, 0xc1, 0x45, 0x4a, 0x6f, 0x7d, 0x15, 0xaa, 0x3c, 0xa8, 0x12, + 0x27, 0xec, 0x0a, 0x94, 0x59, 0xc8, 0xb0, 0xaf, 0x78, 0x91, 0x0d, 0xee, 0xea, 0xd5, 0x34, 0xa4, + 0xad, 0xe6, 0x4d, 0x01, 0xc9, 0x85, 0xea, 0xf1, 0x88, 0x11, 0x3d, 0x8b, 0xb8, 0x50, 0xdd, 0xe1, + 0x00, 0xeb, 0x37, 0x0d, 0x00, 0x3e, 0xbe, 0x92, 0xfc, 0x16, 0x94, 0x45, 0x69, 0xfe, 0xc4, 0x01, + 0xa3, 0x79, 0xb0, 0x25, 0x9e, 0x47, 0xe9, 0x49, 0x35, 0xec, 0x54, 0x3a, 0x81, 0xe6, 0x64, 0x6d, + 0xcc, 0xf0, 0xc4, 0x6d, 0x26, 0x25, 0xe3, 0x68, 0xeb, 0x87, 0x45, 0xf9, 0x49, 0x8b, 0xe4, 0xe2, + 0xd1, 0x0e, 0x7a, 0x05, 0x50, 0x22, 0x82, 0x8e, 0x16, 0xb4, 0x4d, 0x2d, 0x25, 0x18, 0x15, 0x33, + 0x88, 0x1a, 0x2b, 0xa1, 0x8b, 0x94, 0x54, 0xd5, 0x58, 0x09, 0x68, 0x42, 0xf6, 0x65, 0x78, 0x21, + 0xe6, 0xa1, 0x4c, 0xfb, 0xb1, 0xd3, 0x16, 0x09, 0x61, 0x87, 0xf6, 0xbc, 0x28, 0x12, 0x5b, 0x74, + 0x10, 0x30, 0xe5, 0x32, 0xae, 0x2a, 0x1a, 0x99, 0x33, 0x3e, 0x96, 0x14, 0xbb, 0x9c, 0x80, 0xc7, + 0xa2, 0x7a, 0x00, 0xee, 0x67, 0xf2, 0xbd, 0xa5, 0x25, 0xae, 0x29, 0x82, 0x07, 0x64, 0x94, 0xeb, + 0xfa, 0x26, 0xbc, 0xa8, 0xbb, 0x3e, 0x16, 0x8e, 0x4a, 0x84, 0xea, 0x4e, 0x97, 0xbb, 0x22, 0xd1, + 0xbd, 0x9c, 0x9b, 0xfc, 0x0e, 0xa7, 0x11, 0x91, 0xfb, 0x5b, 0x1e, 0x93, 0x23, 0xfc, 0x02, 0x34, + 0xf3, 0x23, 0x88, 0x75, 0x95, 0x9d, 0x65, 0xa9, 0xfe, 0x6a, 0xb6, 0x33, 0xb7, 0x23, 0xd9, 0xf1, + 0x0b, 0xb0, 0x3e, 0xa5, 0x23, 0x37, 0x08, 0x15, 0xe5, 0xac, 0x8c, 0xf7, 0xe3, 0xb6, 0x81, 0xde, + 0x80, 0xf5, 0xc9, 0x35, 0xc8, 0x7e, 0xaa, 0xb2, 0x3a, 0xb1, 0x10, 0x3c, 0xf2, 0xb2, 0x7e, 0xdb, + 0x80, 0x7a, 0xa6, 0x8e, 0x88, 0x87, 0xa5, 0xc2, 0xc8, 0x65, 0xd9, 0x91, 0xb2, 0xac, 0x34, 0x2c, + 0x4d, 0xf7, 0x9d, 0x0d, 0x2c, 0xdd, 0x83, 0xaf, 0x43, 0x5d, 0xdc, 0x31, 0x54, 0xaf, 0xc2, 0x58, + 0xaf, 0xd4, 0x5a, 0x6c, 0xa0, 0xc9, 0x6f, 0x59, 0x79, 0x24, 0x23, 0x55, 0xeb, 0x5b, 0x06, 0x2c, + 0xe4, 0xea, 0x99, 0x66, 0xe4, 0xe4, 0x97, 0xa1, 0x91, 0xe1, 0xc4, 0x19, 0xee, 0x28, 0x66, 0x56, + 0xa7, 0x30, 0xf3, 0x68, 0xc7, 0x9e, 0xa7, 0x99, 0x96, 0xf5, 0x1e, 0xcc, 0xc9, 0x4c, 0x77, 0x5a, + 0xf7, 0x60, 0x3c, 0xa3, 0x4e, 0xe6, 0x9c, 0x4f, 0xbf, 0xd6, 0x37, 0x0d, 0xa8, 0xea, 0x82, 0x43, + 0x74, 0x1d, 0x0a, 0x61, 0x24, 0x86, 0x1e, 0x8b, 0x73, 0x0b, 0x61, 0x74, 0xee, 0xc7, 0xe4, 0x9c, + 0x4b, 0x2e, 0x9d, 0xc3, 0x25, 0x5b, 0xff, 0x6b, 0x40, 0x8d, 0x5f, 0xcc, 0x45, 0x20, 0x82, 0x6e, + 0x40, 0x49, 0x84, 0xdb, 0x53, 0xd8, 0x10, 0x88, 0xb3, 0x92, 0x4d, 0x67, 0x7e, 0x39, 0x71, 0x03, + 0xea, 0xb4, 0x1b, 0xc6, 0xcc, 0xc9, 0x7e, 0x3f, 0x01, 0x02, 0x24, 0x3e, 0x0b, 0xe1, 0xb6, 0xda, + 0xc5, 0xd4, 0x09, 0x87, 0x24, 0xf6, 0xb1, 0xd8, 0x93, 0xba, 0x9e, 0x5b, 0x3d, 0xf9, 0xae, 0x76, + 0x31, 0x3d, 0x4c, 0xb0, 0xba, 0x2a, 0x0c, 0x6d, 0xc0, 0x3c, 0xef, 0xd7, 0x71, 0x9d, 0x13, 0x12, + 0xb8, 0xfa, 0x19, 0x04, 0xba, 0x98, 0xde, 0x77, 0xef, 0x71, 0x08, 0x67, 0x39, 0xc1, 0xca, 0xdd, + 0x52, 0xe9, 0x48, 0x94, 0xf5, 0x25, 0x29, 0xbb, 0xe4, 0xe0, 0x8c, 0xb3, 0x2f, 0x51, 0x76, 0x21, + 0xbb, 0x7c, 0xdf, 0x2f, 0x40, 0x95, 0x77, 0x17, 0x17, 0xa3, 0x9f, 0x44, 0x73, 0x99, 0x40, 0xad, + 0x98, 0x0f, 0xd4, 0x9e, 0xa9, 0xb6, 0xc9, 0x6a, 0x81, 0xf3, 0x7c, 0x04, 0x94, 0xbd, 0x75, 0x55, + 0xc6, 0x6f, 0x5d, 0xe7, 0xbd, 0x1e, 0x8d, 0x5d, 0x7d, 0x6a, 0x93, 0x1f, 0x9b, 0xdd, 0x80, 0x7a, + 0x52, 0xb1, 0xcf, 0xe4, 0xe5, 0xa8, 0x64, 0x83, 0x06, 0xb5, 0xc4, 0x33, 0x63, 0x55, 0x67, 0x85, + 0x92, 0x03, 0xc9, 0x98, 0x92, 0x36, 0x12, 0x69, 0x6d, 0x79, 0x20, 0x6d, 0xc1, 0x9c, 0x38, 0xc0, + 0x74, 0xfe, 0x1a, 0xe5, 0x08, 0x85, 0x19, 0xdb, 0x8a, 0x82, 0xd3, 0xaa, 0x2f, 0x73, 0x8a, 0x53, + 0x68, 0x85, 0x06, 0xf5, 0xd7, 0x3a, 0xd6, 0xe7, 0xa1, 0xa2, 0x4a, 0xc1, 0x84, 0x52, 0x4f, 0x03, + 0x65, 0x04, 0xfc, 0x27, 0x5a, 0x83, 0x39, 0x2a, 0xaa, 0xfa, 0xd5, 0xd2, 0xa9, 0x96, 0xf5, 0xa6, + 0xb8, 0xdb, 0x89, 0x4c, 0x6a, 0x3e, 0x79, 0x6f, 0x3c, 0xfd, 0xe9, 0xaa, 0x90, 0x7b, 0xba, 0xfa, + 0x47, 0x03, 0xe0, 0x80, 0xe0, 0x36, 0x89, 0xc5, 0xd4, 0x67, 0x26, 0xc2, 0xd6, 0xa1, 0x12, 0x11, + 0x12, 0x73, 0x94, 0x62, 0x83, 0x37, 0xf7, 0xdb, 0x49, 0x1e, 0xab, 0x98, 0xc9, 0x63, 0x8d, 0x67, + 0xcd, 0x4a, 0xe7, 0xcc, 0x9a, 0xbd, 0xa6, 0xc2, 0x0d, 0x2e, 0x21, 0x51, 0x97, 0xc1, 0x54, 0x6f, + 0xfc, 0x6c, 0x39, 0xe6, 0x18, 0x19, 0x82, 0x88, 0x9f, 0xd6, 0x3e, 0xd4, 0x12, 0xf8, 0x64, 0xca, + 0xc6, 0x98, 0x9e, 0xb2, 0x11, 0x25, 0x6a, 0x2c, 0x55, 0x28, 0x3e, 0x21, 0x2d, 0x6a, 0x1d, 0x03, + 0x92, 0x6f, 0x4d, 0x42, 0x25, 0x3a, 0x2f, 0xf2, 0x4a, 0x9a, 0x4d, 0x97, 0x05, 0xdb, 0xa9, 0xcb, + 0x4f, 0x75, 0x97, 0xa4, 0xd4, 0x51, 0x03, 0x0a, 0xc9, 0xc0, 0x05, 0x46, 0xad, 0x2f, 0xc3, 0x72, + 0x6e, 0x50, 0x95, 0x02, 0x6d, 0xe6, 0x47, 0x2d, 0x3d, 0x7d, 0x80, 0x3d, 0x40, 0xc7, 0x2c, 0x8c, + 0xc9, 0x31, 0x67, 0xf2, 0x58, 0x73, 0xb5, 0x0d, 0x35, 0x1e, 0x43, 0x88, 0x04, 0xfa, 0xb4, 0x33, + 0x41, 0x26, 0xd8, 0xab, 0x3d, 0xf5, 0xcb, 0xda, 0x86, 0xe5, 0xdc, 0x28, 0x8a, 0x8d, 0x8c, 0x2e, + 0x8c, 0x9c, 0x2e, 0x5c, 0xf1, 0x28, 0x7d, 0x9f, 0x70, 0x03, 0x6a, 0xb5, 0x0e, 0x2e, 0xa7, 0x94, + 0xec, 0x0f, 0x0c, 0xf1, 0x50, 0x9c, 0x99, 0xe5, 0x12, 0x12, 0xc4, 0xe9, 0xe7, 0x29, 0xc2, 0x45, + 0x9d, 0x59, 0x4c, 0xf6, 0xef, 0xb2, 0xea, 0x6a, 0xf7, 0xf6, 0xf1, 0x65, 0x56, 0x5d, 0x7d, 0x96, + 0x87, 0xa7, 0x64, 0xe8, 0x85, 0x03, 0x9a, 0xf9, 0x92, 0x48, 0xf2, 0x62, 0x6a, 0x4c, 0xf2, 0x1d, + 0xd1, 0x4d, 0x68, 0x24, 0xd4, 0x72, 0x30, 0x59, 0x89, 0xbb, 0xa0, 0xa1, 0x8f, 0x32, 0xa5, 0x5c, + 0x73, 0xe3, 0xa5, 0x5c, 0x95, 0x44, 0x72, 0xeb, 0x07, 0xb2, 0x20, 0x45, 0x08, 0x77, 0xd1, 0x7a, + 0x6e, 0x42, 0x85, 0x0e, 0x5c, 0x97, 0xa8, 0xa7, 0x95, 0xaa, 0xad, 0x9b, 0x97, 0x22, 0xac, 0xb5, + 0x07, 0x6b, 0xf7, 0x89, 0xf8, 0x5e, 0x94, 0xdf, 0xb8, 0xc5, 0x06, 0xfc, 0xe4, 0xeb, 0x65, 0x7d, + 0xd7, 0x80, 0xf5, 0x89, 0x61, 0x2e, 0x5a, 0x33, 0x9f, 0xe3, 0xce, 0x97, 0x89, 0x53, 0xaa, 0x78, + 0x66, 0xba, 0x40, 0x93, 0x59, 0xff, 0x2c, 0xeb, 0x5f, 0x76, 0x43, 0x15, 0x20, 0x87, 0xf1, 0x8c, + 0xc5, 0x0c, 0x6e, 0x18, 0xc5, 0x4e, 0x80, 0xfb, 0x3a, 0x85, 0x57, 0xe5, 0x80, 0x87, 0xb8, 0x2f, + 0x0e, 0x5a, 0x81, 0x54, 0x71, 0xb9, 0x13, 0x93, 0x0f, 0xd4, 0xb6, 0x6c, 0x70, 0xb8, 0x4e, 0xf4, + 0x92, 0x0f, 0x32, 0xaf, 0x78, 0xa5, 0x67, 0x55, 0x96, 0x20, 0x75, 0x5b, 0x93, 0x2b, 0x26, 0xaf, + 0x66, 0x03, 0x51, 0x3f, 0x93, 0x13, 0xe5, 0xa2, 0x15, 0x8c, 0x32, 0x97, 0x44, 0x3d, 0xed, 0x47, + 0xb2, 0x82, 0x50, 0x38, 0x5e, 0x3a, 0xe8, 0xcf, 0xa2, 0xbf, 0x2f, 0x42, 0x0d, 0xfb, 0x9d, 0x30, + 0xf6, 0x58, 0xb7, 0x2f, 0x26, 0x6c, 0xec, 0x5c, 0x4b, 0xa9, 0xd5, 0xc0, 0xb7, 0x35, 0x85, 0x9d, + 0x12, 0x7f, 0x92, 0x87, 0xcf, 0xbf, 0x97, 0xb5, 0x3f, 0x29, 0x9f, 0x17, 0xad, 0x9c, 0x6b, 0x50, + 0x75, 0xd5, 0xe0, 0x49, 0x58, 0xac, 0xda, 0xdc, 0x42, 0xe4, 0xb5, 0xb7, 0x37, 0x4c, 0xbe, 0xfd, + 0x12, 0x80, 0x07, 0x43, 0x11, 0x3e, 0x49, 0xa4, 0xbc, 0xf9, 0xcb, 0x18, 0x0f, 0x04, 0x48, 0x5c, + 0xfd, 0xb7, 0x6e, 0x01, 0xa4, 0x4f, 0x02, 0x68, 0x0e, 0x0a, 0x8f, 0x5e, 0x33, 0xaf, 0xa0, 0x1a, + 0x94, 0x1f, 0xbd, 0xd6, 0x6a, 0x1d, 0x98, 0x86, 0x00, 0xed, 0x98, 0x85, 0xad, 0xcf, 0x00, 0xa4, + 0x4f, 0x57, 0x08, 0x60, 0xee, 0x61, 0x18, 0xf7, 0xb1, 0x6f, 0x5e, 0x41, 0x15, 0x28, 0x1e, 0x84, + 0x4f, 0x4c, 0x03, 0x55, 0xa1, 0xf4, 0x96, 0xd7, 0xe9, 0x9a, 0x85, 0xad, 0x0d, 0x68, 0xe4, 0xdf, + 0xab, 0xf8, 0x30, 0xc7, 0xfb, 0xe6, 0x15, 0xfe, 0xd7, 0xde, 0x35, 0x8d, 0xad, 0x47, 0x50, 0xcf, + 0x3c, 0x76, 0xa0, 0x15, 0x30, 0x1f, 0x86, 0xec, 0xb6, 0xef, 0x87, 0x4f, 0x48, 0xfb, 0x30, 0xe0, + 0x60, 0xf3, 0x0a, 0x5a, 0x87, 0xe5, 0x04, 0x74, 0xdb, 0xef, 0x87, 0x94, 0x09, 0x84, 0x81, 0x9a, + 0xb0, 0x92, 0x41, 0x88, 0xbc, 0xa2, 0xc0, 0x14, 0xb6, 0x5c, 0x28, 0x1c, 0x46, 0x9c, 0xa5, 0xa3, + 0x01, 0x93, 0xbc, 0xed, 0x11, 0x5f, 0xf2, 0xc6, 0x1d, 0x84, 0x59, 0x40, 0xf3, 0x50, 0xd5, 0x91, + 0xbf, 0x59, 0xe4, 0x82, 0xec, 0x07, 0xfc, 0x22, 0x63, 0x96, 0xd0, 0x32, 0x2c, 0x8e, 0x7d, 0x93, + 0x69, 0x96, 0x11, 0x82, 0x86, 0x58, 0x57, 0xed, 0xdb, 0xa8, 0x39, 0xb7, 0xb5, 0x0d, 0xb5, 0xe4, + 0x22, 0xc4, 0x47, 0x7e, 0x18, 0x06, 0x44, 0x6a, 0x4d, 0x90, 0x98, 0x06, 0x9f, 0x44, 0x77, 0x30, + 0x0b, 0x5b, 0x7f, 0x62, 0xc0, 0x9c, 0xfc, 0x14, 0x52, 0x22, 0xe4, 0x6f, 0xf3, 0x0a, 0x5a, 0x85, + 0xa5, 0x56, 0xeb, 0x40, 0xa6, 0x12, 0x13, 0xa6, 0x84, 0x78, 0x7c, 0x76, 0x3d, 0x42, 0x82, 0x29, + 0xf0, 0x0e, 0xef, 0x24, 0xb9, 0xbf, 0xe3, 0xa3, 0x01, 0xed, 0x92, 0xb6, 0x59, 0x44, 0x1b, 0xf0, + 0x42, 0x32, 0xce, 0x94, 0x0f, 0xad, 0xcd, 0x12, 0xba, 0x0a, 0xab, 0xd9, 0x21, 0xf7, 0xc2, 0x87, + 0x21, 0xeb, 0x7a, 0x41, 0xc7, 0x2c, 0x6f, 0xdd, 0x84, 0xca, 0xdd, 0x53, 0x16, 0xe3, 0xc3, 0x48, + 0xca, 0x12, 0x46, 0xe6, 0x15, 0x64, 0xc2, 0x3c, 0x8f, 0xc7, 0x0e, 0xfd, 0xb6, 0x70, 0xd5, 0xa6, + 0xb1, 0x65, 0xc1, 0xd2, 0xc4, 0x7e, 0x41, 0x0b, 0x50, 0xdb, 0x8d, 0xdd, 0x37, 0x5e, 0x77, 0x7e, + 0x35, 0x8c, 0xcd, 0x2b, 0x77, 0x3e, 0xf5, 0x6f, 0x7f, 0x5d, 0x35, 0x7e, 0xf0, 0xf1, 0x4b, 0xc6, + 0x8f, 0x3e, 0x7e, 0xc9, 0xf8, 0xaf, 0x8f, 0x5f, 0x32, 0xbe, 0xf7, 0xdf, 0x2f, 0x5d, 0x01, 0x33, + 0x8c, 0x3b, 0xdb, 0xcc, 0xeb, 0x0d, 0xb7, 0x7b, 0x43, 0xf1, 0x0f, 0x70, 0x1e, 0xcf, 0x89, 0x3f, + 0x9f, 0xff, 0xbf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x90, 0xf7, 0x99, 0xed, 0x75, 0x47, 0x00, 0x00, } diff --git a/proto/kvrpcpb.proto b/proto/kvrpcpb.proto index 1c575fcfa..115c2c1e5 100644 --- a/proto/kvrpcpb.proto +++ b/proto/kvrpcpb.proto @@ -672,6 +672,8 @@ message Context { bool record_scan_stat = 11; bool replica_read = 12; + // Read requests can ignore locks belonging to these transactions because either + // these transactions are rolled back or theirs commit_ts > read request's start_ts. repeated uint64 resolved_locks = 13; uint64 max_execution_duration_ms = 14; @@ -697,6 +699,10 @@ message Context { // API version implies the encode of the key and value. APIVersion api_version = 21; + + // Read request should read through locks belonging to these transactions because these + // transactions are committed and theirs commit_ts <= read request's start_ts. + repeated uint64 committed_locks = 22; } // The API version the server and the client is using.