github.com/cockroachdb/cockroach@v20.2.0-alpha.1+incompatible/pkg/kv/kvserver/raft.pb.go (about)

     1  // Code generated by protoc-gen-gogo. DO NOT EDIT.
     2  // source: kv/kvserver/raft.proto
     3  
     4  package kvserver
     5  
     6  import proto "github.com/gogo/protobuf/proto"
     7  import fmt "fmt"
     8  import math "math"
     9  import raftpb "go.etcd.io/etcd/raft/raftpb"
    10  import kvserverpb "github.com/cockroachdb/cockroach/pkg/kv/kvserver/kvserverpb"
    11  import roachpb "github.com/cockroachdb/cockroach/pkg/roachpb"
    12  
    13  import github_com_cockroachdb_cockroach_pkg_roachpb "github.com/cockroachdb/cockroach/pkg/roachpb"
    14  
    15  import io "io"
    16  
    17  // Reference imports to suppress errors if they are not otherwise used.
    18  var _ = proto.Marshal
    19  var _ = fmt.Errorf
    20  var _ = math.Inf
    21  
    22  // This is a compile-time assertion to ensure that this generated file
    23  // is compatible with the proto package it is being compiled against.
    24  // A compilation error at this line likely means your copy of the
    25  // proto package needs to be updated.
    26  const _ = proto.GoGoProtoPackageIsVersion2 // please upgrade the proto package
    27  
    28  type SnapshotRequest_Priority int32
    29  
    30  const (
    31  	SnapshotRequest_UNKNOWN SnapshotRequest_Priority = 0
    32  	// RECOVERY is used for a Raft-initiated snapshots and for
    33  	// up-replication snapshots (i.e. when a dead node has been
    34  	// removed and the range needs to be up-replicated).
    35  	SnapshotRequest_RECOVERY SnapshotRequest_Priority = 1
    36  	// REBALANCE is used for snapshots involved in rebalancing.
    37  	SnapshotRequest_REBALANCE SnapshotRequest_Priority = 2
    38  )
    39  
    40  var SnapshotRequest_Priority_name = map[int32]string{
    41  	0: "UNKNOWN",
    42  	1: "RECOVERY",
    43  	2: "REBALANCE",
    44  }
    45  var SnapshotRequest_Priority_value = map[string]int32{
    46  	"UNKNOWN":   0,
    47  	"RECOVERY":  1,
    48  	"REBALANCE": 2,
    49  }
    50  
    51  func (x SnapshotRequest_Priority) Enum() *SnapshotRequest_Priority {
    52  	p := new(SnapshotRequest_Priority)
    53  	*p = x
    54  	return p
    55  }
    56  func (x SnapshotRequest_Priority) String() string {
    57  	return proto.EnumName(SnapshotRequest_Priority_name, int32(x))
    58  }
    59  func (x *SnapshotRequest_Priority) UnmarshalJSON(data []byte) error {
    60  	value, err := proto.UnmarshalJSONEnum(SnapshotRequest_Priority_value, data, "SnapshotRequest_Priority")
    61  	if err != nil {
    62  		return err
    63  	}
    64  	*x = SnapshotRequest_Priority(value)
    65  	return nil
    66  }
    67  func (SnapshotRequest_Priority) EnumDescriptor() ([]byte, []int) {
    68  	return fileDescriptor_raft_3fc2b336b3beae43, []int{5, 0}
    69  }
    70  
    71  type SnapshotRequest_Strategy int32
    72  
    73  const (
    74  	// KV_BATCH snapshots stream batches of KV pairs for all keys in a
    75  	// range from the sender the the receiver. These KV pairs are then
    76  	// combined into a large RocksDB WriteBatch that is atomically
    77  	// applied.
    78  	SnapshotRequest_KV_BATCH SnapshotRequest_Strategy = 0
    79  )
    80  
    81  var SnapshotRequest_Strategy_name = map[int32]string{
    82  	0: "KV_BATCH",
    83  }
    84  var SnapshotRequest_Strategy_value = map[string]int32{
    85  	"KV_BATCH": 0,
    86  }
    87  
    88  func (x SnapshotRequest_Strategy) Enum() *SnapshotRequest_Strategy {
    89  	p := new(SnapshotRequest_Strategy)
    90  	*p = x
    91  	return p
    92  }
    93  func (x SnapshotRequest_Strategy) String() string {
    94  	return proto.EnumName(SnapshotRequest_Strategy_name, int32(x))
    95  }
    96  func (x *SnapshotRequest_Strategy) UnmarshalJSON(data []byte) error {
    97  	value, err := proto.UnmarshalJSONEnum(SnapshotRequest_Strategy_value, data, "SnapshotRequest_Strategy")
    98  	if err != nil {
    99  		return err
   100  	}
   101  	*x = SnapshotRequest_Strategy(value)
   102  	return nil
   103  }
   104  func (SnapshotRequest_Strategy) EnumDescriptor() ([]byte, []int) {
   105  	return fileDescriptor_raft_3fc2b336b3beae43, []int{5, 1}
   106  }
   107  
   108  type SnapshotRequest_Type int32
   109  
   110  const (
   111  	SnapshotRequest_RAFT    SnapshotRequest_Type = 0
   112  	SnapshotRequest_LEARNER SnapshotRequest_Type = 1
   113  )
   114  
   115  var SnapshotRequest_Type_name = map[int32]string{
   116  	0: "RAFT",
   117  	1: "LEARNER",
   118  }
   119  var SnapshotRequest_Type_value = map[string]int32{
   120  	"RAFT":    0,
   121  	"LEARNER": 1,
   122  }
   123  
   124  func (x SnapshotRequest_Type) Enum() *SnapshotRequest_Type {
   125  	p := new(SnapshotRequest_Type)
   126  	*p = x
   127  	return p
   128  }
   129  func (x SnapshotRequest_Type) String() string {
   130  	return proto.EnumName(SnapshotRequest_Type_name, int32(x))
   131  }
   132  func (x *SnapshotRequest_Type) UnmarshalJSON(data []byte) error {
   133  	value, err := proto.UnmarshalJSONEnum(SnapshotRequest_Type_value, data, "SnapshotRequest_Type")
   134  	if err != nil {
   135  		return err
   136  	}
   137  	*x = SnapshotRequest_Type(value)
   138  	return nil
   139  }
   140  func (SnapshotRequest_Type) EnumDescriptor() ([]byte, []int) {
   141  	return fileDescriptor_raft_3fc2b336b3beae43, []int{5, 2}
   142  }
   143  
   144  type SnapshotResponse_Status int32
   145  
   146  const (
   147  	SnapshotResponse_UNKNOWN  SnapshotResponse_Status = 0
   148  	SnapshotResponse_ACCEPTED SnapshotResponse_Status = 1
   149  	SnapshotResponse_APPLIED  SnapshotResponse_Status = 2
   150  	SnapshotResponse_ERROR    SnapshotResponse_Status = 3
   151  	SnapshotResponse_DECLINED SnapshotResponse_Status = 4
   152  )
   153  
   154  var SnapshotResponse_Status_name = map[int32]string{
   155  	0: "UNKNOWN",
   156  	1: "ACCEPTED",
   157  	2: "APPLIED",
   158  	3: "ERROR",
   159  	4: "DECLINED",
   160  }
   161  var SnapshotResponse_Status_value = map[string]int32{
   162  	"UNKNOWN":  0,
   163  	"ACCEPTED": 1,
   164  	"APPLIED":  2,
   165  	"ERROR":    3,
   166  	"DECLINED": 4,
   167  }
   168  
   169  func (x SnapshotResponse_Status) Enum() *SnapshotResponse_Status {
   170  	p := new(SnapshotResponse_Status)
   171  	*p = x
   172  	return p
   173  }
   174  func (x SnapshotResponse_Status) String() string {
   175  	return proto.EnumName(SnapshotResponse_Status_name, int32(x))
   176  }
   177  func (x *SnapshotResponse_Status) UnmarshalJSON(data []byte) error {
   178  	value, err := proto.UnmarshalJSONEnum(SnapshotResponse_Status_value, data, "SnapshotResponse_Status")
   179  	if err != nil {
   180  		return err
   181  	}
   182  	*x = SnapshotResponse_Status(value)
   183  	return nil
   184  }
   185  func (SnapshotResponse_Status) EnumDescriptor() ([]byte, []int) {
   186  	return fileDescriptor_raft_3fc2b336b3beae43, []int{6, 0}
   187  }
   188  
   189  // RaftHeartbeat is a request that contains the barebones information for a
   190  // raftpb.MsgHeartbeat raftpb.Message. RaftHeartbeats are coalesced and sent
   191  // in a RaftMessageRequest, and reconstructed by the receiver into individual
   192  // raftpb.Message protos.
   193  type RaftHeartbeat struct {
   194  	RangeID       github_com_cockroachdb_cockroach_pkg_roachpb.RangeID   `protobuf:"varint,1,opt,name=range_id,json=rangeId,casttype=github.com/cockroachdb/cockroach/pkg/roachpb.RangeID" json:"range_id"`
   195  	FromReplicaID github_com_cockroachdb_cockroach_pkg_roachpb.ReplicaID `protobuf:"varint,2,opt,name=from_replica_id,json=fromReplicaId,casttype=github.com/cockroachdb/cockroach/pkg/roachpb.ReplicaID" json:"from_replica_id"`
   196  	ToReplicaID   github_com_cockroachdb_cockroach_pkg_roachpb.ReplicaID `protobuf:"varint,3,opt,name=to_replica_id,json=toReplicaId,casttype=github.com/cockroachdb/cockroach/pkg/roachpb.ReplicaID" json:"to_replica_id"`
   197  	Term          uint64                                                 `protobuf:"varint,4,opt,name=term" json:"term"`
   198  	Commit        uint64                                                 `protobuf:"varint,5,opt,name=commit" json:"commit"`
   199  	Quiesce       bool                                                   `protobuf:"varint,6,opt,name=quiesce" json:"quiesce"`
   200  	// ToIsLearner was added in v19.2 to aid in the transition from preemptive
   201  	// snapshots to learner replicas. If a Replica learns its ID from a message
   202  	// which indicates that it is a learner and it is not currently a part of the
   203  	// range (due to being from a preemptive snapshot) then it must delete all of
   204  	// its data.
   205  	//
   206  	// TODO(ajwerner): remove in 20.2 once we ensure that preemptive snapshots can
   207  	// no longer be present and that we're never talking to a 19.2 node.
   208  	ToIsLearner bool `protobuf:"varint,7,opt,name=to_is_learner,json=toIsLearner" json:"to_is_learner"`
   209  }
   210  
   211  func (m *RaftHeartbeat) Reset()         { *m = RaftHeartbeat{} }
   212  func (m *RaftHeartbeat) String() string { return proto.CompactTextString(m) }
   213  func (*RaftHeartbeat) ProtoMessage()    {}
   214  func (*RaftHeartbeat) Descriptor() ([]byte, []int) {
   215  	return fileDescriptor_raft_3fc2b336b3beae43, []int{0}
   216  }
   217  func (m *RaftHeartbeat) XXX_Unmarshal(b []byte) error {
   218  	return m.Unmarshal(b)
   219  }
   220  func (m *RaftHeartbeat) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   221  	b = b[:cap(b)]
   222  	n, err := m.MarshalTo(b)
   223  	if err != nil {
   224  		return nil, err
   225  	}
   226  	return b[:n], nil
   227  }
   228  func (dst *RaftHeartbeat) XXX_Merge(src proto.Message) {
   229  	xxx_messageInfo_RaftHeartbeat.Merge(dst, src)
   230  }
   231  func (m *RaftHeartbeat) XXX_Size() int {
   232  	return m.Size()
   233  }
   234  func (m *RaftHeartbeat) XXX_DiscardUnknown() {
   235  	xxx_messageInfo_RaftHeartbeat.DiscardUnknown(m)
   236  }
   237  
   238  var xxx_messageInfo_RaftHeartbeat proto.InternalMessageInfo
   239  
   240  // RaftMessageRequest is the request used to send raft messages using our
   241  // protobuf-based RPC codec. If a RaftMessageRequest has a non-empty number of
   242  // heartbeats or heartbeat_resps, the contents of the message field is treated
   243  // as a dummy message and discarded. A coalesced heartbeat request's replica
   244  // descriptor's range ID must be zero.
   245  type RaftMessageRequest struct {
   246  	RangeID github_com_cockroachdb_cockroach_pkg_roachpb.RangeID `protobuf:"varint,1,opt,name=range_id,json=rangeId,casttype=github.com/cockroachdb/cockroach/pkg/roachpb.RangeID" json:"range_id"`
   247  	// Optionally, the start key of the sending replica. This is only populated
   248  	// as a "hint" under certain conditions.
   249  	RangeStartKey github_com_cockroachdb_cockroach_pkg_roachpb.RKey `protobuf:"bytes,8,opt,name=range_start_key,json=rangeStartKey,casttype=github.com/cockroachdb/cockroach/pkg/roachpb.RKey" json:"range_start_key,omitempty"`
   250  	FromReplica   roachpb.ReplicaDescriptor                         `protobuf:"bytes,2,opt,name=from_replica,json=fromReplica" json:"from_replica"`
   251  	ToReplica     roachpb.ReplicaDescriptor                         `protobuf:"bytes,3,opt,name=to_replica,json=toReplica" json:"to_replica"`
   252  	Message       raftpb.Message                                    `protobuf:"bytes,4,opt,name=message" json:"message"`
   253  	// Is this a quiesce request? A quiesce request is a MsgHeartbeat
   254  	// which is requesting the recipient to stop ticking its local
   255  	// replica as long as the current Raft state matches the heartbeat
   256  	// Term/Commit. If the Term/Commit match, the recipient is marked as
   257  	// quiescent. If they don't match, the message is passed along to
   258  	// Raft which will generate a MsgHeartbeatResp that will unquiesce
   259  	// the sender.
   260  	Quiesce bool `protobuf:"varint,5,opt,name=quiesce" json:"quiesce"`
   261  	// A coalesced heartbeat request is any RaftMessageRequest with a nonzero number of
   262  	// heartbeats or heartbeat_resps.
   263  	Heartbeats     []RaftHeartbeat `protobuf:"bytes,6,rep,name=heartbeats" json:"heartbeats"`
   264  	HeartbeatResps []RaftHeartbeat `protobuf:"bytes,7,rep,name=heartbeat_resps,json=heartbeatResps" json:"heartbeat_resps"`
   265  }
   266  
   267  func (m *RaftMessageRequest) Reset()         { *m = RaftMessageRequest{} }
   268  func (m *RaftMessageRequest) String() string { return proto.CompactTextString(m) }
   269  func (*RaftMessageRequest) ProtoMessage()    {}
   270  func (*RaftMessageRequest) Descriptor() ([]byte, []int) {
   271  	return fileDescriptor_raft_3fc2b336b3beae43, []int{1}
   272  }
   273  func (m *RaftMessageRequest) XXX_Unmarshal(b []byte) error {
   274  	return m.Unmarshal(b)
   275  }
   276  func (m *RaftMessageRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   277  	b = b[:cap(b)]
   278  	n, err := m.MarshalTo(b)
   279  	if err != nil {
   280  		return nil, err
   281  	}
   282  	return b[:n], nil
   283  }
   284  func (dst *RaftMessageRequest) XXX_Merge(src proto.Message) {
   285  	xxx_messageInfo_RaftMessageRequest.Merge(dst, src)
   286  }
   287  func (m *RaftMessageRequest) XXX_Size() int {
   288  	return m.Size()
   289  }
   290  func (m *RaftMessageRequest) XXX_DiscardUnknown() {
   291  	xxx_messageInfo_RaftMessageRequest.DiscardUnknown(m)
   292  }
   293  
   294  var xxx_messageInfo_RaftMessageRequest proto.InternalMessageInfo
   295  
   296  type RaftMessageRequestBatch struct {
   297  	Requests []RaftMessageRequest `protobuf:"bytes,1,rep,name=requests" json:"requests"`
   298  }
   299  
   300  func (m *RaftMessageRequestBatch) Reset()         { *m = RaftMessageRequestBatch{} }
   301  func (m *RaftMessageRequestBatch) String() string { return proto.CompactTextString(m) }
   302  func (*RaftMessageRequestBatch) ProtoMessage()    {}
   303  func (*RaftMessageRequestBatch) Descriptor() ([]byte, []int) {
   304  	return fileDescriptor_raft_3fc2b336b3beae43, []int{2}
   305  }
   306  func (m *RaftMessageRequestBatch) XXX_Unmarshal(b []byte) error {
   307  	return m.Unmarshal(b)
   308  }
   309  func (m *RaftMessageRequestBatch) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   310  	b = b[:cap(b)]
   311  	n, err := m.MarshalTo(b)
   312  	if err != nil {
   313  		return nil, err
   314  	}
   315  	return b[:n], nil
   316  }
   317  func (dst *RaftMessageRequestBatch) XXX_Merge(src proto.Message) {
   318  	xxx_messageInfo_RaftMessageRequestBatch.Merge(dst, src)
   319  }
   320  func (m *RaftMessageRequestBatch) XXX_Size() int {
   321  	return m.Size()
   322  }
   323  func (m *RaftMessageRequestBatch) XXX_DiscardUnknown() {
   324  	xxx_messageInfo_RaftMessageRequestBatch.DiscardUnknown(m)
   325  }
   326  
   327  var xxx_messageInfo_RaftMessageRequestBatch proto.InternalMessageInfo
   328  
   329  type RaftMessageResponseUnion struct {
   330  	Error *roachpb.Error `protobuf:"bytes,1,opt,name=error" json:"error,omitempty"`
   331  }
   332  
   333  func (m *RaftMessageResponseUnion) Reset()         { *m = RaftMessageResponseUnion{} }
   334  func (m *RaftMessageResponseUnion) String() string { return proto.CompactTextString(m) }
   335  func (*RaftMessageResponseUnion) ProtoMessage()    {}
   336  func (*RaftMessageResponseUnion) Descriptor() ([]byte, []int) {
   337  	return fileDescriptor_raft_3fc2b336b3beae43, []int{3}
   338  }
   339  func (m *RaftMessageResponseUnion) XXX_Unmarshal(b []byte) error {
   340  	return m.Unmarshal(b)
   341  }
   342  func (m *RaftMessageResponseUnion) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   343  	b = b[:cap(b)]
   344  	n, err := m.MarshalTo(b)
   345  	if err != nil {
   346  		return nil, err
   347  	}
   348  	return b[:n], nil
   349  }
   350  func (dst *RaftMessageResponseUnion) XXX_Merge(src proto.Message) {
   351  	xxx_messageInfo_RaftMessageResponseUnion.Merge(dst, src)
   352  }
   353  func (m *RaftMessageResponseUnion) XXX_Size() int {
   354  	return m.Size()
   355  }
   356  func (m *RaftMessageResponseUnion) XXX_DiscardUnknown() {
   357  	xxx_messageInfo_RaftMessageResponseUnion.DiscardUnknown(m)
   358  }
   359  
   360  var xxx_messageInfo_RaftMessageResponseUnion proto.InternalMessageInfo
   361  
   362  // RaftMessageResponse may be sent to the sender of a
   363  // RaftMessageRequest. RaftMessage does not use the usual
   364  // request/response pattern; it is primarily modeled as a one-way
   365  // stream of requests. Normal 'responses' are usually sent as new
   366  // requests on a separate stream in the other direction.
   367  // RaftMessageResponse is not sent for every RaftMessageRequest, but
   368  // may be used for certain error conditions.
   369  type RaftMessageResponse struct {
   370  	RangeID     github_com_cockroachdb_cockroach_pkg_roachpb.RangeID `protobuf:"varint,1,opt,name=range_id,json=rangeId,casttype=github.com/cockroachdb/cockroach/pkg/roachpb.RangeID" json:"range_id"`
   371  	FromReplica roachpb.ReplicaDescriptor                            `protobuf:"bytes,2,opt,name=from_replica,json=fromReplica" json:"from_replica"`
   372  	ToReplica   roachpb.ReplicaDescriptor                            `protobuf:"bytes,3,opt,name=to_replica,json=toReplica" json:"to_replica"`
   373  	Union       RaftMessageResponseUnion                             `protobuf:"bytes,4,opt,name=union" json:"union"`
   374  }
   375  
   376  func (m *RaftMessageResponse) Reset()         { *m = RaftMessageResponse{} }
   377  func (m *RaftMessageResponse) String() string { return proto.CompactTextString(m) }
   378  func (*RaftMessageResponse) ProtoMessage()    {}
   379  func (*RaftMessageResponse) Descriptor() ([]byte, []int) {
   380  	return fileDescriptor_raft_3fc2b336b3beae43, []int{4}
   381  }
   382  func (m *RaftMessageResponse) XXX_Unmarshal(b []byte) error {
   383  	return m.Unmarshal(b)
   384  }
   385  func (m *RaftMessageResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   386  	b = b[:cap(b)]
   387  	n, err := m.MarshalTo(b)
   388  	if err != nil {
   389  		return nil, err
   390  	}
   391  	return b[:n], nil
   392  }
   393  func (dst *RaftMessageResponse) XXX_Merge(src proto.Message) {
   394  	xxx_messageInfo_RaftMessageResponse.Merge(dst, src)
   395  }
   396  func (m *RaftMessageResponse) XXX_Size() int {
   397  	return m.Size()
   398  }
   399  func (m *RaftMessageResponse) XXX_DiscardUnknown() {
   400  	xxx_messageInfo_RaftMessageResponse.DiscardUnknown(m)
   401  }
   402  
   403  var xxx_messageInfo_RaftMessageResponse proto.InternalMessageInfo
   404  
   405  // SnapshotRequest is the request used to send streaming snapshot requests.
   406  type SnapshotRequest struct {
   407  	Header *SnapshotRequest_Header `protobuf:"bytes,1,opt,name=header" json:"header,omitempty"`
   408  	// A RocksDB BatchRepr. Multiple kv_batches may be sent across multiple request messages.
   409  	KVBatch []byte `protobuf:"bytes,2,opt,name=kv_batch,json=kvBatch" json:"kv_batch,omitempty"`
   410  	// These are really raftpb.Entry, but we model them as raw bytes to avoid
   411  	// roundtripping through memory. They are separate from the kv_batch to
   412  	// allow flexibility in log implementations.
   413  	LogEntries [][]byte `protobuf:"bytes,3,rep,name=log_entries,json=logEntries" json:"log_entries,omitempty"`
   414  	Final      bool     `protobuf:"varint,4,opt,name=final" json:"final"`
   415  }
   416  
   417  func (m *SnapshotRequest) Reset()         { *m = SnapshotRequest{} }
   418  func (m *SnapshotRequest) String() string { return proto.CompactTextString(m) }
   419  func (*SnapshotRequest) ProtoMessage()    {}
   420  func (*SnapshotRequest) Descriptor() ([]byte, []int) {
   421  	return fileDescriptor_raft_3fc2b336b3beae43, []int{5}
   422  }
   423  func (m *SnapshotRequest) XXX_Unmarshal(b []byte) error {
   424  	return m.Unmarshal(b)
   425  }
   426  func (m *SnapshotRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   427  	b = b[:cap(b)]
   428  	n, err := m.MarshalTo(b)
   429  	if err != nil {
   430  		return nil, err
   431  	}
   432  	return b[:n], nil
   433  }
   434  func (dst *SnapshotRequest) XXX_Merge(src proto.Message) {
   435  	xxx_messageInfo_SnapshotRequest.Merge(dst, src)
   436  }
   437  func (m *SnapshotRequest) XXX_Size() int {
   438  	return m.Size()
   439  }
   440  func (m *SnapshotRequest) XXX_DiscardUnknown() {
   441  	xxx_messageInfo_SnapshotRequest.DiscardUnknown(m)
   442  }
   443  
   444  var xxx_messageInfo_SnapshotRequest proto.InternalMessageInfo
   445  
   446  type SnapshotRequest_Header struct {
   447  	// The replica state at the time the snapshot was generated. Note
   448  	// that ReplicaState.Desc differs from the above range_descriptor
   449  	// field which holds the updated descriptor after the new replica
   450  	// has been added while ReplicaState.Desc holds the descriptor
   451  	// before the new replica has been added.
   452  	State kvserverpb.ReplicaState `protobuf:"bytes,5,opt,name=state" json:"state"`
   453  	// The inner raft message is of type MsgSnap, and its snapshot data contains a UUID.
   454  	RaftMessageRequest RaftMessageRequest `protobuf:"bytes,2,opt,name=raft_message_request,json=raftMessageRequest" json:"raft_message_request"`
   455  	// The estimated size of the range, to be used in reservation decisions.
   456  	RangeSize int64 `protobuf:"varint,3,opt,name=range_size,json=rangeSize" json:"range_size"`
   457  	// can_decline is set on preemptive snapshots, but not those generated
   458  	// by raft because at that point it is better to queue up the stream
   459  	// than to cancel it.
   460  	CanDecline bool `protobuf:"varint,4,opt,name=can_decline,json=canDecline" json:"can_decline"`
   461  	// The priority of the snapshot.
   462  	Priority SnapshotRequest_Priority `protobuf:"varint,6,opt,name=priority,enum=cockroach.kv.kvserver.SnapshotRequest_Priority" json:"priority"`
   463  	// The strategy of the snapshot.
   464  	Strategy SnapshotRequest_Strategy `protobuf:"varint,7,opt,name=strategy,enum=cockroach.kv.kvserver.SnapshotRequest_Strategy" json:"strategy"`
   465  	// The type of the snapshot.
   466  	Type SnapshotRequest_Type `protobuf:"varint,9,opt,name=type,enum=cockroach.kv.kvserver.SnapshotRequest_Type" json:"type"`
   467  	// Whether the snapshot uses the unreplicated RaftTruncatedState or not.
   468  	// This is generally always true at 2.2 and above outside of the migration
   469  	// phase, though theoretically it could take a long time for all ranges
   470  	// to update to the new mechanism. This bool is true iff the Raft log at
   471  	// the snapshot's applied index is using the new key. In particular, it
   472  	// is true if the index itself carries out the migration (in which case
   473  	// the data in the snapshot contains neither key).
   474  	//
   475  	// See VersionUnreplicatedRaftTruncatedState.
   476  	UnreplicatedTruncatedState bool `protobuf:"varint,8,opt,name=unreplicated_truncated_state,json=unreplicatedTruncatedState" json:"unreplicated_truncated_state"`
   477  }
   478  
   479  func (m *SnapshotRequest_Header) Reset()         { *m = SnapshotRequest_Header{} }
   480  func (m *SnapshotRequest_Header) String() string { return proto.CompactTextString(m) }
   481  func (*SnapshotRequest_Header) ProtoMessage()    {}
   482  func (*SnapshotRequest_Header) Descriptor() ([]byte, []int) {
   483  	return fileDescriptor_raft_3fc2b336b3beae43, []int{5, 0}
   484  }
   485  func (m *SnapshotRequest_Header) XXX_Unmarshal(b []byte) error {
   486  	return m.Unmarshal(b)
   487  }
   488  func (m *SnapshotRequest_Header) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   489  	b = b[:cap(b)]
   490  	n, err := m.MarshalTo(b)
   491  	if err != nil {
   492  		return nil, err
   493  	}
   494  	return b[:n], nil
   495  }
   496  func (dst *SnapshotRequest_Header) XXX_Merge(src proto.Message) {
   497  	xxx_messageInfo_SnapshotRequest_Header.Merge(dst, src)
   498  }
   499  func (m *SnapshotRequest_Header) XXX_Size() int {
   500  	return m.Size()
   501  }
   502  func (m *SnapshotRequest_Header) XXX_DiscardUnknown() {
   503  	xxx_messageInfo_SnapshotRequest_Header.DiscardUnknown(m)
   504  }
   505  
   506  var xxx_messageInfo_SnapshotRequest_Header proto.InternalMessageInfo
   507  
   508  type SnapshotResponse struct {
   509  	Status  SnapshotResponse_Status `protobuf:"varint,1,opt,name=status,enum=cockroach.kv.kvserver.SnapshotResponse_Status" json:"status"`
   510  	Message string                  `protobuf:"bytes,2,opt,name=message" json:"message"`
   511  }
   512  
   513  func (m *SnapshotResponse) Reset()         { *m = SnapshotResponse{} }
   514  func (m *SnapshotResponse) String() string { return proto.CompactTextString(m) }
   515  func (*SnapshotResponse) ProtoMessage()    {}
   516  func (*SnapshotResponse) Descriptor() ([]byte, []int) {
   517  	return fileDescriptor_raft_3fc2b336b3beae43, []int{6}
   518  }
   519  func (m *SnapshotResponse) XXX_Unmarshal(b []byte) error {
   520  	return m.Unmarshal(b)
   521  }
   522  func (m *SnapshotResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   523  	b = b[:cap(b)]
   524  	n, err := m.MarshalTo(b)
   525  	if err != nil {
   526  		return nil, err
   527  	}
   528  	return b[:n], nil
   529  }
   530  func (dst *SnapshotResponse) XXX_Merge(src proto.Message) {
   531  	xxx_messageInfo_SnapshotResponse.Merge(dst, src)
   532  }
   533  func (m *SnapshotResponse) XXX_Size() int {
   534  	return m.Size()
   535  }
   536  func (m *SnapshotResponse) XXX_DiscardUnknown() {
   537  	xxx_messageInfo_SnapshotResponse.DiscardUnknown(m)
   538  }
   539  
   540  var xxx_messageInfo_SnapshotResponse proto.InternalMessageInfo
   541  
   542  // ConfChangeContext is encoded in the raftpb.ConfChange.Context field.
   543  type ConfChangeContext struct {
   544  	CommandID string `protobuf:"bytes,1,opt,name=command_id,json=commandId" json:"command_id"`
   545  	// Payload is the application-level command (i.e. an encoded
   546  	// kvserverpb.RaftCommand).
   547  	Payload []byte `protobuf:"bytes,2,opt,name=payload" json:"payload,omitempty"`
   548  }
   549  
   550  func (m *ConfChangeContext) Reset()         { *m = ConfChangeContext{} }
   551  func (m *ConfChangeContext) String() string { return proto.CompactTextString(m) }
   552  func (*ConfChangeContext) ProtoMessage()    {}
   553  func (*ConfChangeContext) Descriptor() ([]byte, []int) {
   554  	return fileDescriptor_raft_3fc2b336b3beae43, []int{7}
   555  }
   556  func (m *ConfChangeContext) XXX_Unmarshal(b []byte) error {
   557  	return m.Unmarshal(b)
   558  }
   559  func (m *ConfChangeContext) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   560  	b = b[:cap(b)]
   561  	n, err := m.MarshalTo(b)
   562  	if err != nil {
   563  		return nil, err
   564  	}
   565  	return b[:n], nil
   566  }
   567  func (dst *ConfChangeContext) XXX_Merge(src proto.Message) {
   568  	xxx_messageInfo_ConfChangeContext.Merge(dst, src)
   569  }
   570  func (m *ConfChangeContext) XXX_Size() int {
   571  	return m.Size()
   572  }
   573  func (m *ConfChangeContext) XXX_DiscardUnknown() {
   574  	xxx_messageInfo_ConfChangeContext.DiscardUnknown(m)
   575  }
   576  
   577  var xxx_messageInfo_ConfChangeContext proto.InternalMessageInfo
   578  
   579  func init() {
   580  	proto.RegisterType((*RaftHeartbeat)(nil), "cockroach.kv.kvserver.RaftHeartbeat")
   581  	proto.RegisterType((*RaftMessageRequest)(nil), "cockroach.kv.kvserver.RaftMessageRequest")
   582  	proto.RegisterType((*RaftMessageRequestBatch)(nil), "cockroach.kv.kvserver.RaftMessageRequestBatch")
   583  	proto.RegisterType((*RaftMessageResponseUnion)(nil), "cockroach.kv.kvserver.RaftMessageResponseUnion")
   584  	proto.RegisterType((*RaftMessageResponse)(nil), "cockroach.kv.kvserver.RaftMessageResponse")
   585  	proto.RegisterType((*SnapshotRequest)(nil), "cockroach.kv.kvserver.SnapshotRequest")
   586  	proto.RegisterType((*SnapshotRequest_Header)(nil), "cockroach.kv.kvserver.SnapshotRequest.Header")
   587  	proto.RegisterType((*SnapshotResponse)(nil), "cockroach.kv.kvserver.SnapshotResponse")
   588  	proto.RegisterType((*ConfChangeContext)(nil), "cockroach.kv.kvserver.ConfChangeContext")
   589  	proto.RegisterEnum("cockroach.kv.kvserver.SnapshotRequest_Priority", SnapshotRequest_Priority_name, SnapshotRequest_Priority_value)
   590  	proto.RegisterEnum("cockroach.kv.kvserver.SnapshotRequest_Strategy", SnapshotRequest_Strategy_name, SnapshotRequest_Strategy_value)
   591  	proto.RegisterEnum("cockroach.kv.kvserver.SnapshotRequest_Type", SnapshotRequest_Type_name, SnapshotRequest_Type_value)
   592  	proto.RegisterEnum("cockroach.kv.kvserver.SnapshotResponse_Status", SnapshotResponse_Status_name, SnapshotResponse_Status_value)
   593  }
   594  func (m *RaftHeartbeat) Marshal() (dAtA []byte, err error) {
   595  	size := m.Size()
   596  	dAtA = make([]byte, size)
   597  	n, err := m.MarshalTo(dAtA)
   598  	if err != nil {
   599  		return nil, err
   600  	}
   601  	return dAtA[:n], nil
   602  }
   603  
   604  func (m *RaftHeartbeat) MarshalTo(dAtA []byte) (int, error) {
   605  	var i int
   606  	_ = i
   607  	var l int
   608  	_ = l
   609  	dAtA[i] = 0x8
   610  	i++
   611  	i = encodeVarintRaft(dAtA, i, uint64(m.RangeID))
   612  	dAtA[i] = 0x10
   613  	i++
   614  	i = encodeVarintRaft(dAtA, i, uint64(m.FromReplicaID))
   615  	dAtA[i] = 0x18
   616  	i++
   617  	i = encodeVarintRaft(dAtA, i, uint64(m.ToReplicaID))
   618  	dAtA[i] = 0x20
   619  	i++
   620  	i = encodeVarintRaft(dAtA, i, uint64(m.Term))
   621  	dAtA[i] = 0x28
   622  	i++
   623  	i = encodeVarintRaft(dAtA, i, uint64(m.Commit))
   624  	dAtA[i] = 0x30
   625  	i++
   626  	if m.Quiesce {
   627  		dAtA[i] = 1
   628  	} else {
   629  		dAtA[i] = 0
   630  	}
   631  	i++
   632  	dAtA[i] = 0x38
   633  	i++
   634  	if m.ToIsLearner {
   635  		dAtA[i] = 1
   636  	} else {
   637  		dAtA[i] = 0
   638  	}
   639  	i++
   640  	return i, nil
   641  }
   642  
   643  func (m *RaftMessageRequest) Marshal() (dAtA []byte, err error) {
   644  	size := m.Size()
   645  	dAtA = make([]byte, size)
   646  	n, err := m.MarshalTo(dAtA)
   647  	if err != nil {
   648  		return nil, err
   649  	}
   650  	return dAtA[:n], nil
   651  }
   652  
   653  func (m *RaftMessageRequest) MarshalTo(dAtA []byte) (int, error) {
   654  	var i int
   655  	_ = i
   656  	var l int
   657  	_ = l
   658  	dAtA[i] = 0x8
   659  	i++
   660  	i = encodeVarintRaft(dAtA, i, uint64(m.RangeID))
   661  	dAtA[i] = 0x12
   662  	i++
   663  	i = encodeVarintRaft(dAtA, i, uint64(m.FromReplica.Size()))
   664  	n1, err := m.FromReplica.MarshalTo(dAtA[i:])
   665  	if err != nil {
   666  		return 0, err
   667  	}
   668  	i += n1
   669  	dAtA[i] = 0x1a
   670  	i++
   671  	i = encodeVarintRaft(dAtA, i, uint64(m.ToReplica.Size()))
   672  	n2, err := m.ToReplica.MarshalTo(dAtA[i:])
   673  	if err != nil {
   674  		return 0, err
   675  	}
   676  	i += n2
   677  	dAtA[i] = 0x22
   678  	i++
   679  	i = encodeVarintRaft(dAtA, i, uint64(m.Message.Size()))
   680  	n3, err := m.Message.MarshalTo(dAtA[i:])
   681  	if err != nil {
   682  		return 0, err
   683  	}
   684  	i += n3
   685  	dAtA[i] = 0x28
   686  	i++
   687  	if m.Quiesce {
   688  		dAtA[i] = 1
   689  	} else {
   690  		dAtA[i] = 0
   691  	}
   692  	i++
   693  	if len(m.Heartbeats) > 0 {
   694  		for _, msg := range m.Heartbeats {
   695  			dAtA[i] = 0x32
   696  			i++
   697  			i = encodeVarintRaft(dAtA, i, uint64(msg.Size()))
   698  			n, err := msg.MarshalTo(dAtA[i:])
   699  			if err != nil {
   700  				return 0, err
   701  			}
   702  			i += n
   703  		}
   704  	}
   705  	if len(m.HeartbeatResps) > 0 {
   706  		for _, msg := range m.HeartbeatResps {
   707  			dAtA[i] = 0x3a
   708  			i++
   709  			i = encodeVarintRaft(dAtA, i, uint64(msg.Size()))
   710  			n, err := msg.MarshalTo(dAtA[i:])
   711  			if err != nil {
   712  				return 0, err
   713  			}
   714  			i += n
   715  		}
   716  	}
   717  	if m.RangeStartKey != nil {
   718  		dAtA[i] = 0x42
   719  		i++
   720  		i = encodeVarintRaft(dAtA, i, uint64(len(m.RangeStartKey)))
   721  		i += copy(dAtA[i:], m.RangeStartKey)
   722  	}
   723  	return i, nil
   724  }
   725  
   726  func (m *RaftMessageRequestBatch) Marshal() (dAtA []byte, err error) {
   727  	size := m.Size()
   728  	dAtA = make([]byte, size)
   729  	n, err := m.MarshalTo(dAtA)
   730  	if err != nil {
   731  		return nil, err
   732  	}
   733  	return dAtA[:n], nil
   734  }
   735  
   736  func (m *RaftMessageRequestBatch) MarshalTo(dAtA []byte) (int, error) {
   737  	var i int
   738  	_ = i
   739  	var l int
   740  	_ = l
   741  	if len(m.Requests) > 0 {
   742  		for _, msg := range m.Requests {
   743  			dAtA[i] = 0xa
   744  			i++
   745  			i = encodeVarintRaft(dAtA, i, uint64(msg.Size()))
   746  			n, err := msg.MarshalTo(dAtA[i:])
   747  			if err != nil {
   748  				return 0, err
   749  			}
   750  			i += n
   751  		}
   752  	}
   753  	return i, nil
   754  }
   755  
   756  func (m *RaftMessageResponseUnion) Marshal() (dAtA []byte, err error) {
   757  	size := m.Size()
   758  	dAtA = make([]byte, size)
   759  	n, err := m.MarshalTo(dAtA)
   760  	if err != nil {
   761  		return nil, err
   762  	}
   763  	return dAtA[:n], nil
   764  }
   765  
   766  func (m *RaftMessageResponseUnion) MarshalTo(dAtA []byte) (int, error) {
   767  	var i int
   768  	_ = i
   769  	var l int
   770  	_ = l
   771  	if m.Error != nil {
   772  		dAtA[i] = 0xa
   773  		i++
   774  		i = encodeVarintRaft(dAtA, i, uint64(m.Error.Size()))
   775  		n4, err := m.Error.MarshalTo(dAtA[i:])
   776  		if err != nil {
   777  			return 0, err
   778  		}
   779  		i += n4
   780  	}
   781  	return i, nil
   782  }
   783  
   784  func (m *RaftMessageResponse) Marshal() (dAtA []byte, err error) {
   785  	size := m.Size()
   786  	dAtA = make([]byte, size)
   787  	n, err := m.MarshalTo(dAtA)
   788  	if err != nil {
   789  		return nil, err
   790  	}
   791  	return dAtA[:n], nil
   792  }
   793  
   794  func (m *RaftMessageResponse) MarshalTo(dAtA []byte) (int, error) {
   795  	var i int
   796  	_ = i
   797  	var l int
   798  	_ = l
   799  	dAtA[i] = 0x8
   800  	i++
   801  	i = encodeVarintRaft(dAtA, i, uint64(m.RangeID))
   802  	dAtA[i] = 0x12
   803  	i++
   804  	i = encodeVarintRaft(dAtA, i, uint64(m.FromReplica.Size()))
   805  	n5, err := m.FromReplica.MarshalTo(dAtA[i:])
   806  	if err != nil {
   807  		return 0, err
   808  	}
   809  	i += n5
   810  	dAtA[i] = 0x1a
   811  	i++
   812  	i = encodeVarintRaft(dAtA, i, uint64(m.ToReplica.Size()))
   813  	n6, err := m.ToReplica.MarshalTo(dAtA[i:])
   814  	if err != nil {
   815  		return 0, err
   816  	}
   817  	i += n6
   818  	dAtA[i] = 0x22
   819  	i++
   820  	i = encodeVarintRaft(dAtA, i, uint64(m.Union.Size()))
   821  	n7, err := m.Union.MarshalTo(dAtA[i:])
   822  	if err != nil {
   823  		return 0, err
   824  	}
   825  	i += n7
   826  	return i, nil
   827  }
   828  
   829  func (m *SnapshotRequest) Marshal() (dAtA []byte, err error) {
   830  	size := m.Size()
   831  	dAtA = make([]byte, size)
   832  	n, err := m.MarshalTo(dAtA)
   833  	if err != nil {
   834  		return nil, err
   835  	}
   836  	return dAtA[:n], nil
   837  }
   838  
   839  func (m *SnapshotRequest) MarshalTo(dAtA []byte) (int, error) {
   840  	var i int
   841  	_ = i
   842  	var l int
   843  	_ = l
   844  	if m.Header != nil {
   845  		dAtA[i] = 0xa
   846  		i++
   847  		i = encodeVarintRaft(dAtA, i, uint64(m.Header.Size()))
   848  		n8, err := m.Header.MarshalTo(dAtA[i:])
   849  		if err != nil {
   850  			return 0, err
   851  		}
   852  		i += n8
   853  	}
   854  	if m.KVBatch != nil {
   855  		dAtA[i] = 0x12
   856  		i++
   857  		i = encodeVarintRaft(dAtA, i, uint64(len(m.KVBatch)))
   858  		i += copy(dAtA[i:], m.KVBatch)
   859  	}
   860  	if len(m.LogEntries) > 0 {
   861  		for _, b := range m.LogEntries {
   862  			dAtA[i] = 0x1a
   863  			i++
   864  			i = encodeVarintRaft(dAtA, i, uint64(len(b)))
   865  			i += copy(dAtA[i:], b)
   866  		}
   867  	}
   868  	dAtA[i] = 0x20
   869  	i++
   870  	if m.Final {
   871  		dAtA[i] = 1
   872  	} else {
   873  		dAtA[i] = 0
   874  	}
   875  	i++
   876  	return i, nil
   877  }
   878  
   879  func (m *SnapshotRequest_Header) Marshal() (dAtA []byte, err error) {
   880  	size := m.Size()
   881  	dAtA = make([]byte, size)
   882  	n, err := m.MarshalTo(dAtA)
   883  	if err != nil {
   884  		return nil, err
   885  	}
   886  	return dAtA[:n], nil
   887  }
   888  
   889  func (m *SnapshotRequest_Header) MarshalTo(dAtA []byte) (int, error) {
   890  	var i int
   891  	_ = i
   892  	var l int
   893  	_ = l
   894  	dAtA[i] = 0x12
   895  	i++
   896  	i = encodeVarintRaft(dAtA, i, uint64(m.RaftMessageRequest.Size()))
   897  	n9, err := m.RaftMessageRequest.MarshalTo(dAtA[i:])
   898  	if err != nil {
   899  		return 0, err
   900  	}
   901  	i += n9
   902  	dAtA[i] = 0x18
   903  	i++
   904  	i = encodeVarintRaft(dAtA, i, uint64(m.RangeSize))
   905  	dAtA[i] = 0x20
   906  	i++
   907  	if m.CanDecline {
   908  		dAtA[i] = 1
   909  	} else {
   910  		dAtA[i] = 0
   911  	}
   912  	i++
   913  	dAtA[i] = 0x2a
   914  	i++
   915  	i = encodeVarintRaft(dAtA, i, uint64(m.State.Size()))
   916  	n10, err := m.State.MarshalTo(dAtA[i:])
   917  	if err != nil {
   918  		return 0, err
   919  	}
   920  	i += n10
   921  	dAtA[i] = 0x30
   922  	i++
   923  	i = encodeVarintRaft(dAtA, i, uint64(m.Priority))
   924  	dAtA[i] = 0x38
   925  	i++
   926  	i = encodeVarintRaft(dAtA, i, uint64(m.Strategy))
   927  	dAtA[i] = 0x40
   928  	i++
   929  	if m.UnreplicatedTruncatedState {
   930  		dAtA[i] = 1
   931  	} else {
   932  		dAtA[i] = 0
   933  	}
   934  	i++
   935  	dAtA[i] = 0x48
   936  	i++
   937  	i = encodeVarintRaft(dAtA, i, uint64(m.Type))
   938  	return i, nil
   939  }
   940  
   941  func (m *SnapshotResponse) Marshal() (dAtA []byte, err error) {
   942  	size := m.Size()
   943  	dAtA = make([]byte, size)
   944  	n, err := m.MarshalTo(dAtA)
   945  	if err != nil {
   946  		return nil, err
   947  	}
   948  	return dAtA[:n], nil
   949  }
   950  
   951  func (m *SnapshotResponse) MarshalTo(dAtA []byte) (int, error) {
   952  	var i int
   953  	_ = i
   954  	var l int
   955  	_ = l
   956  	dAtA[i] = 0x8
   957  	i++
   958  	i = encodeVarintRaft(dAtA, i, uint64(m.Status))
   959  	dAtA[i] = 0x12
   960  	i++
   961  	i = encodeVarintRaft(dAtA, i, uint64(len(m.Message)))
   962  	i += copy(dAtA[i:], m.Message)
   963  	return i, nil
   964  }
   965  
   966  func (m *ConfChangeContext) Marshal() (dAtA []byte, err error) {
   967  	size := m.Size()
   968  	dAtA = make([]byte, size)
   969  	n, err := m.MarshalTo(dAtA)
   970  	if err != nil {
   971  		return nil, err
   972  	}
   973  	return dAtA[:n], nil
   974  }
   975  
   976  func (m *ConfChangeContext) MarshalTo(dAtA []byte) (int, error) {
   977  	var i int
   978  	_ = i
   979  	var l int
   980  	_ = l
   981  	dAtA[i] = 0xa
   982  	i++
   983  	i = encodeVarintRaft(dAtA, i, uint64(len(m.CommandID)))
   984  	i += copy(dAtA[i:], m.CommandID)
   985  	if m.Payload != nil {
   986  		dAtA[i] = 0x12
   987  		i++
   988  		i = encodeVarintRaft(dAtA, i, uint64(len(m.Payload)))
   989  		i += copy(dAtA[i:], m.Payload)
   990  	}
   991  	return i, nil
   992  }
   993  
   994  func encodeVarintRaft(dAtA []byte, offset int, v uint64) int {
   995  	for v >= 1<<7 {
   996  		dAtA[offset] = uint8(v&0x7f | 0x80)
   997  		v >>= 7
   998  		offset++
   999  	}
  1000  	dAtA[offset] = uint8(v)
  1001  	return offset + 1
  1002  }
  1003  func (m *RaftHeartbeat) Size() (n int) {
  1004  	if m == nil {
  1005  		return 0
  1006  	}
  1007  	var l int
  1008  	_ = l
  1009  	n += 1 + sovRaft(uint64(m.RangeID))
  1010  	n += 1 + sovRaft(uint64(m.FromReplicaID))
  1011  	n += 1 + sovRaft(uint64(m.ToReplicaID))
  1012  	n += 1 + sovRaft(uint64(m.Term))
  1013  	n += 1 + sovRaft(uint64(m.Commit))
  1014  	n += 2
  1015  	n += 2
  1016  	return n
  1017  }
  1018  
  1019  func (m *RaftMessageRequest) Size() (n int) {
  1020  	if m == nil {
  1021  		return 0
  1022  	}
  1023  	var l int
  1024  	_ = l
  1025  	n += 1 + sovRaft(uint64(m.RangeID))
  1026  	l = m.FromReplica.Size()
  1027  	n += 1 + l + sovRaft(uint64(l))
  1028  	l = m.ToReplica.Size()
  1029  	n += 1 + l + sovRaft(uint64(l))
  1030  	l = m.Message.Size()
  1031  	n += 1 + l + sovRaft(uint64(l))
  1032  	n += 2
  1033  	if len(m.Heartbeats) > 0 {
  1034  		for _, e := range m.Heartbeats {
  1035  			l = e.Size()
  1036  			n += 1 + l + sovRaft(uint64(l))
  1037  		}
  1038  	}
  1039  	if len(m.HeartbeatResps) > 0 {
  1040  		for _, e := range m.HeartbeatResps {
  1041  			l = e.Size()
  1042  			n += 1 + l + sovRaft(uint64(l))
  1043  		}
  1044  	}
  1045  	if m.RangeStartKey != nil {
  1046  		l = len(m.RangeStartKey)
  1047  		n += 1 + l + sovRaft(uint64(l))
  1048  	}
  1049  	return n
  1050  }
  1051  
  1052  func (m *RaftMessageRequestBatch) Size() (n int) {
  1053  	if m == nil {
  1054  		return 0
  1055  	}
  1056  	var l int
  1057  	_ = l
  1058  	if len(m.Requests) > 0 {
  1059  		for _, e := range m.Requests {
  1060  			l = e.Size()
  1061  			n += 1 + l + sovRaft(uint64(l))
  1062  		}
  1063  	}
  1064  	return n
  1065  }
  1066  
  1067  func (m *RaftMessageResponseUnion) Size() (n int) {
  1068  	if m == nil {
  1069  		return 0
  1070  	}
  1071  	var l int
  1072  	_ = l
  1073  	if m.Error != nil {
  1074  		l = m.Error.Size()
  1075  		n += 1 + l + sovRaft(uint64(l))
  1076  	}
  1077  	return n
  1078  }
  1079  
  1080  func (m *RaftMessageResponse) Size() (n int) {
  1081  	if m == nil {
  1082  		return 0
  1083  	}
  1084  	var l int
  1085  	_ = l
  1086  	n += 1 + sovRaft(uint64(m.RangeID))
  1087  	l = m.FromReplica.Size()
  1088  	n += 1 + l + sovRaft(uint64(l))
  1089  	l = m.ToReplica.Size()
  1090  	n += 1 + l + sovRaft(uint64(l))
  1091  	l = m.Union.Size()
  1092  	n += 1 + l + sovRaft(uint64(l))
  1093  	return n
  1094  }
  1095  
  1096  func (m *SnapshotRequest) Size() (n int) {
  1097  	if m == nil {
  1098  		return 0
  1099  	}
  1100  	var l int
  1101  	_ = l
  1102  	if m.Header != nil {
  1103  		l = m.Header.Size()
  1104  		n += 1 + l + sovRaft(uint64(l))
  1105  	}
  1106  	if m.KVBatch != nil {
  1107  		l = len(m.KVBatch)
  1108  		n += 1 + l + sovRaft(uint64(l))
  1109  	}
  1110  	if len(m.LogEntries) > 0 {
  1111  		for _, b := range m.LogEntries {
  1112  			l = len(b)
  1113  			n += 1 + l + sovRaft(uint64(l))
  1114  		}
  1115  	}
  1116  	n += 2
  1117  	return n
  1118  }
  1119  
  1120  func (m *SnapshotRequest_Header) Size() (n int) {
  1121  	if m == nil {
  1122  		return 0
  1123  	}
  1124  	var l int
  1125  	_ = l
  1126  	l = m.RaftMessageRequest.Size()
  1127  	n += 1 + l + sovRaft(uint64(l))
  1128  	n += 1 + sovRaft(uint64(m.RangeSize))
  1129  	n += 2
  1130  	l = m.State.Size()
  1131  	n += 1 + l + sovRaft(uint64(l))
  1132  	n += 1 + sovRaft(uint64(m.Priority))
  1133  	n += 1 + sovRaft(uint64(m.Strategy))
  1134  	n += 2
  1135  	n += 1 + sovRaft(uint64(m.Type))
  1136  	return n
  1137  }
  1138  
  1139  func (m *SnapshotResponse) Size() (n int) {
  1140  	if m == nil {
  1141  		return 0
  1142  	}
  1143  	var l int
  1144  	_ = l
  1145  	n += 1 + sovRaft(uint64(m.Status))
  1146  	l = len(m.Message)
  1147  	n += 1 + l + sovRaft(uint64(l))
  1148  	return n
  1149  }
  1150  
  1151  func (m *ConfChangeContext) Size() (n int) {
  1152  	if m == nil {
  1153  		return 0
  1154  	}
  1155  	var l int
  1156  	_ = l
  1157  	l = len(m.CommandID)
  1158  	n += 1 + l + sovRaft(uint64(l))
  1159  	if m.Payload != nil {
  1160  		l = len(m.Payload)
  1161  		n += 1 + l + sovRaft(uint64(l))
  1162  	}
  1163  	return n
  1164  }
  1165  
  1166  func sovRaft(x uint64) (n int) {
  1167  	for {
  1168  		n++
  1169  		x >>= 7
  1170  		if x == 0 {
  1171  			break
  1172  		}
  1173  	}
  1174  	return n
  1175  }
  1176  func sozRaft(x uint64) (n int) {
  1177  	return sovRaft(uint64((x << 1) ^ uint64((int64(x) >> 63))))
  1178  }
  1179  func (this *RaftMessageResponseUnion) GetValue() interface{} {
  1180  	if this.Error != nil {
  1181  		return this.Error
  1182  	}
  1183  	return nil
  1184  }
  1185  
  1186  func (this *RaftMessageResponseUnion) SetValue(value interface{}) bool {
  1187  	switch vt := value.(type) {
  1188  	case *roachpb.Error:
  1189  		this.Error = vt
  1190  	default:
  1191  		return false
  1192  	}
  1193  	return true
  1194  }
  1195  func (m *RaftHeartbeat) Unmarshal(dAtA []byte) error {
  1196  	l := len(dAtA)
  1197  	iNdEx := 0
  1198  	for iNdEx < l {
  1199  		preIndex := iNdEx
  1200  		var wire uint64
  1201  		for shift := uint(0); ; shift += 7 {
  1202  			if shift >= 64 {
  1203  				return ErrIntOverflowRaft
  1204  			}
  1205  			if iNdEx >= l {
  1206  				return io.ErrUnexpectedEOF
  1207  			}
  1208  			b := dAtA[iNdEx]
  1209  			iNdEx++
  1210  			wire |= (uint64(b) & 0x7F) << shift
  1211  			if b < 0x80 {
  1212  				break
  1213  			}
  1214  		}
  1215  		fieldNum := int32(wire >> 3)
  1216  		wireType := int(wire & 0x7)
  1217  		if wireType == 4 {
  1218  			return fmt.Errorf("proto: RaftHeartbeat: wiretype end group for non-group")
  1219  		}
  1220  		if fieldNum <= 0 {
  1221  			return fmt.Errorf("proto: RaftHeartbeat: illegal tag %d (wire type %d)", fieldNum, wire)
  1222  		}
  1223  		switch fieldNum {
  1224  		case 1:
  1225  			if wireType != 0 {
  1226  				return fmt.Errorf("proto: wrong wireType = %d for field RangeID", wireType)
  1227  			}
  1228  			m.RangeID = 0
  1229  			for shift := uint(0); ; shift += 7 {
  1230  				if shift >= 64 {
  1231  					return ErrIntOverflowRaft
  1232  				}
  1233  				if iNdEx >= l {
  1234  					return io.ErrUnexpectedEOF
  1235  				}
  1236  				b := dAtA[iNdEx]
  1237  				iNdEx++
  1238  				m.RangeID |= (github_com_cockroachdb_cockroach_pkg_roachpb.RangeID(b) & 0x7F) << shift
  1239  				if b < 0x80 {
  1240  					break
  1241  				}
  1242  			}
  1243  		case 2:
  1244  			if wireType != 0 {
  1245  				return fmt.Errorf("proto: wrong wireType = %d for field FromReplicaID", wireType)
  1246  			}
  1247  			m.FromReplicaID = 0
  1248  			for shift := uint(0); ; shift += 7 {
  1249  				if shift >= 64 {
  1250  					return ErrIntOverflowRaft
  1251  				}
  1252  				if iNdEx >= l {
  1253  					return io.ErrUnexpectedEOF
  1254  				}
  1255  				b := dAtA[iNdEx]
  1256  				iNdEx++
  1257  				m.FromReplicaID |= (github_com_cockroachdb_cockroach_pkg_roachpb.ReplicaID(b) & 0x7F) << shift
  1258  				if b < 0x80 {
  1259  					break
  1260  				}
  1261  			}
  1262  		case 3:
  1263  			if wireType != 0 {
  1264  				return fmt.Errorf("proto: wrong wireType = %d for field ToReplicaID", wireType)
  1265  			}
  1266  			m.ToReplicaID = 0
  1267  			for shift := uint(0); ; shift += 7 {
  1268  				if shift >= 64 {
  1269  					return ErrIntOverflowRaft
  1270  				}
  1271  				if iNdEx >= l {
  1272  					return io.ErrUnexpectedEOF
  1273  				}
  1274  				b := dAtA[iNdEx]
  1275  				iNdEx++
  1276  				m.ToReplicaID |= (github_com_cockroachdb_cockroach_pkg_roachpb.ReplicaID(b) & 0x7F) << shift
  1277  				if b < 0x80 {
  1278  					break
  1279  				}
  1280  			}
  1281  		case 4:
  1282  			if wireType != 0 {
  1283  				return fmt.Errorf("proto: wrong wireType = %d for field Term", wireType)
  1284  			}
  1285  			m.Term = 0
  1286  			for shift := uint(0); ; shift += 7 {
  1287  				if shift >= 64 {
  1288  					return ErrIntOverflowRaft
  1289  				}
  1290  				if iNdEx >= l {
  1291  					return io.ErrUnexpectedEOF
  1292  				}
  1293  				b := dAtA[iNdEx]
  1294  				iNdEx++
  1295  				m.Term |= (uint64(b) & 0x7F) << shift
  1296  				if b < 0x80 {
  1297  					break
  1298  				}
  1299  			}
  1300  		case 5:
  1301  			if wireType != 0 {
  1302  				return fmt.Errorf("proto: wrong wireType = %d for field Commit", wireType)
  1303  			}
  1304  			m.Commit = 0
  1305  			for shift := uint(0); ; shift += 7 {
  1306  				if shift >= 64 {
  1307  					return ErrIntOverflowRaft
  1308  				}
  1309  				if iNdEx >= l {
  1310  					return io.ErrUnexpectedEOF
  1311  				}
  1312  				b := dAtA[iNdEx]
  1313  				iNdEx++
  1314  				m.Commit |= (uint64(b) & 0x7F) << shift
  1315  				if b < 0x80 {
  1316  					break
  1317  				}
  1318  			}
  1319  		case 6:
  1320  			if wireType != 0 {
  1321  				return fmt.Errorf("proto: wrong wireType = %d for field Quiesce", wireType)
  1322  			}
  1323  			var v int
  1324  			for shift := uint(0); ; shift += 7 {
  1325  				if shift >= 64 {
  1326  					return ErrIntOverflowRaft
  1327  				}
  1328  				if iNdEx >= l {
  1329  					return io.ErrUnexpectedEOF
  1330  				}
  1331  				b := dAtA[iNdEx]
  1332  				iNdEx++
  1333  				v |= (int(b) & 0x7F) << shift
  1334  				if b < 0x80 {
  1335  					break
  1336  				}
  1337  			}
  1338  			m.Quiesce = bool(v != 0)
  1339  		case 7:
  1340  			if wireType != 0 {
  1341  				return fmt.Errorf("proto: wrong wireType = %d for field ToIsLearner", wireType)
  1342  			}
  1343  			var v int
  1344  			for shift := uint(0); ; shift += 7 {
  1345  				if shift >= 64 {
  1346  					return ErrIntOverflowRaft
  1347  				}
  1348  				if iNdEx >= l {
  1349  					return io.ErrUnexpectedEOF
  1350  				}
  1351  				b := dAtA[iNdEx]
  1352  				iNdEx++
  1353  				v |= (int(b) & 0x7F) << shift
  1354  				if b < 0x80 {
  1355  					break
  1356  				}
  1357  			}
  1358  			m.ToIsLearner = bool(v != 0)
  1359  		default:
  1360  			iNdEx = preIndex
  1361  			skippy, err := skipRaft(dAtA[iNdEx:])
  1362  			if err != nil {
  1363  				return err
  1364  			}
  1365  			if skippy < 0 {
  1366  				return ErrInvalidLengthRaft
  1367  			}
  1368  			if (iNdEx + skippy) > l {
  1369  				return io.ErrUnexpectedEOF
  1370  			}
  1371  			iNdEx += skippy
  1372  		}
  1373  	}
  1374  
  1375  	if iNdEx > l {
  1376  		return io.ErrUnexpectedEOF
  1377  	}
  1378  	return nil
  1379  }
  1380  func (m *RaftMessageRequest) Unmarshal(dAtA []byte) error {
  1381  	l := len(dAtA)
  1382  	iNdEx := 0
  1383  	for iNdEx < l {
  1384  		preIndex := iNdEx
  1385  		var wire uint64
  1386  		for shift := uint(0); ; shift += 7 {
  1387  			if shift >= 64 {
  1388  				return ErrIntOverflowRaft
  1389  			}
  1390  			if iNdEx >= l {
  1391  				return io.ErrUnexpectedEOF
  1392  			}
  1393  			b := dAtA[iNdEx]
  1394  			iNdEx++
  1395  			wire |= (uint64(b) & 0x7F) << shift
  1396  			if b < 0x80 {
  1397  				break
  1398  			}
  1399  		}
  1400  		fieldNum := int32(wire >> 3)
  1401  		wireType := int(wire & 0x7)
  1402  		if wireType == 4 {
  1403  			return fmt.Errorf("proto: RaftMessageRequest: wiretype end group for non-group")
  1404  		}
  1405  		if fieldNum <= 0 {
  1406  			return fmt.Errorf("proto: RaftMessageRequest: illegal tag %d (wire type %d)", fieldNum, wire)
  1407  		}
  1408  		switch fieldNum {
  1409  		case 1:
  1410  			if wireType != 0 {
  1411  				return fmt.Errorf("proto: wrong wireType = %d for field RangeID", wireType)
  1412  			}
  1413  			m.RangeID = 0
  1414  			for shift := uint(0); ; shift += 7 {
  1415  				if shift >= 64 {
  1416  					return ErrIntOverflowRaft
  1417  				}
  1418  				if iNdEx >= l {
  1419  					return io.ErrUnexpectedEOF
  1420  				}
  1421  				b := dAtA[iNdEx]
  1422  				iNdEx++
  1423  				m.RangeID |= (github_com_cockroachdb_cockroach_pkg_roachpb.RangeID(b) & 0x7F) << shift
  1424  				if b < 0x80 {
  1425  					break
  1426  				}
  1427  			}
  1428  		case 2:
  1429  			if wireType != 2 {
  1430  				return fmt.Errorf("proto: wrong wireType = %d for field FromReplica", wireType)
  1431  			}
  1432  			var msglen int
  1433  			for shift := uint(0); ; shift += 7 {
  1434  				if shift >= 64 {
  1435  					return ErrIntOverflowRaft
  1436  				}
  1437  				if iNdEx >= l {
  1438  					return io.ErrUnexpectedEOF
  1439  				}
  1440  				b := dAtA[iNdEx]
  1441  				iNdEx++
  1442  				msglen |= (int(b) & 0x7F) << shift
  1443  				if b < 0x80 {
  1444  					break
  1445  				}
  1446  			}
  1447  			if msglen < 0 {
  1448  				return ErrInvalidLengthRaft
  1449  			}
  1450  			postIndex := iNdEx + msglen
  1451  			if postIndex > l {
  1452  				return io.ErrUnexpectedEOF
  1453  			}
  1454  			if err := m.FromReplica.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  1455  				return err
  1456  			}
  1457  			iNdEx = postIndex
  1458  		case 3:
  1459  			if wireType != 2 {
  1460  				return fmt.Errorf("proto: wrong wireType = %d for field ToReplica", wireType)
  1461  			}
  1462  			var msglen int
  1463  			for shift := uint(0); ; shift += 7 {
  1464  				if shift >= 64 {
  1465  					return ErrIntOverflowRaft
  1466  				}
  1467  				if iNdEx >= l {
  1468  					return io.ErrUnexpectedEOF
  1469  				}
  1470  				b := dAtA[iNdEx]
  1471  				iNdEx++
  1472  				msglen |= (int(b) & 0x7F) << shift
  1473  				if b < 0x80 {
  1474  					break
  1475  				}
  1476  			}
  1477  			if msglen < 0 {
  1478  				return ErrInvalidLengthRaft
  1479  			}
  1480  			postIndex := iNdEx + msglen
  1481  			if postIndex > l {
  1482  				return io.ErrUnexpectedEOF
  1483  			}
  1484  			if err := m.ToReplica.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  1485  				return err
  1486  			}
  1487  			iNdEx = postIndex
  1488  		case 4:
  1489  			if wireType != 2 {
  1490  				return fmt.Errorf("proto: wrong wireType = %d for field Message", wireType)
  1491  			}
  1492  			var msglen int
  1493  			for shift := uint(0); ; shift += 7 {
  1494  				if shift >= 64 {
  1495  					return ErrIntOverflowRaft
  1496  				}
  1497  				if iNdEx >= l {
  1498  					return io.ErrUnexpectedEOF
  1499  				}
  1500  				b := dAtA[iNdEx]
  1501  				iNdEx++
  1502  				msglen |= (int(b) & 0x7F) << shift
  1503  				if b < 0x80 {
  1504  					break
  1505  				}
  1506  			}
  1507  			if msglen < 0 {
  1508  				return ErrInvalidLengthRaft
  1509  			}
  1510  			postIndex := iNdEx + msglen
  1511  			if postIndex > l {
  1512  				return io.ErrUnexpectedEOF
  1513  			}
  1514  			if err := m.Message.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  1515  				return err
  1516  			}
  1517  			iNdEx = postIndex
  1518  		case 5:
  1519  			if wireType != 0 {
  1520  				return fmt.Errorf("proto: wrong wireType = %d for field Quiesce", wireType)
  1521  			}
  1522  			var v int
  1523  			for shift := uint(0); ; shift += 7 {
  1524  				if shift >= 64 {
  1525  					return ErrIntOverflowRaft
  1526  				}
  1527  				if iNdEx >= l {
  1528  					return io.ErrUnexpectedEOF
  1529  				}
  1530  				b := dAtA[iNdEx]
  1531  				iNdEx++
  1532  				v |= (int(b) & 0x7F) << shift
  1533  				if b < 0x80 {
  1534  					break
  1535  				}
  1536  			}
  1537  			m.Quiesce = bool(v != 0)
  1538  		case 6:
  1539  			if wireType != 2 {
  1540  				return fmt.Errorf("proto: wrong wireType = %d for field Heartbeats", wireType)
  1541  			}
  1542  			var msglen int
  1543  			for shift := uint(0); ; shift += 7 {
  1544  				if shift >= 64 {
  1545  					return ErrIntOverflowRaft
  1546  				}
  1547  				if iNdEx >= l {
  1548  					return io.ErrUnexpectedEOF
  1549  				}
  1550  				b := dAtA[iNdEx]
  1551  				iNdEx++
  1552  				msglen |= (int(b) & 0x7F) << shift
  1553  				if b < 0x80 {
  1554  					break
  1555  				}
  1556  			}
  1557  			if msglen < 0 {
  1558  				return ErrInvalidLengthRaft
  1559  			}
  1560  			postIndex := iNdEx + msglen
  1561  			if postIndex > l {
  1562  				return io.ErrUnexpectedEOF
  1563  			}
  1564  			m.Heartbeats = append(m.Heartbeats, RaftHeartbeat{})
  1565  			if err := m.Heartbeats[len(m.Heartbeats)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  1566  				return err
  1567  			}
  1568  			iNdEx = postIndex
  1569  		case 7:
  1570  			if wireType != 2 {
  1571  				return fmt.Errorf("proto: wrong wireType = %d for field HeartbeatResps", wireType)
  1572  			}
  1573  			var msglen int
  1574  			for shift := uint(0); ; shift += 7 {
  1575  				if shift >= 64 {
  1576  					return ErrIntOverflowRaft
  1577  				}
  1578  				if iNdEx >= l {
  1579  					return io.ErrUnexpectedEOF
  1580  				}
  1581  				b := dAtA[iNdEx]
  1582  				iNdEx++
  1583  				msglen |= (int(b) & 0x7F) << shift
  1584  				if b < 0x80 {
  1585  					break
  1586  				}
  1587  			}
  1588  			if msglen < 0 {
  1589  				return ErrInvalidLengthRaft
  1590  			}
  1591  			postIndex := iNdEx + msglen
  1592  			if postIndex > l {
  1593  				return io.ErrUnexpectedEOF
  1594  			}
  1595  			m.HeartbeatResps = append(m.HeartbeatResps, RaftHeartbeat{})
  1596  			if err := m.HeartbeatResps[len(m.HeartbeatResps)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  1597  				return err
  1598  			}
  1599  			iNdEx = postIndex
  1600  		case 8:
  1601  			if wireType != 2 {
  1602  				return fmt.Errorf("proto: wrong wireType = %d for field RangeStartKey", wireType)
  1603  			}
  1604  			var byteLen int
  1605  			for shift := uint(0); ; shift += 7 {
  1606  				if shift >= 64 {
  1607  					return ErrIntOverflowRaft
  1608  				}
  1609  				if iNdEx >= l {
  1610  					return io.ErrUnexpectedEOF
  1611  				}
  1612  				b := dAtA[iNdEx]
  1613  				iNdEx++
  1614  				byteLen |= (int(b) & 0x7F) << shift
  1615  				if b < 0x80 {
  1616  					break
  1617  				}
  1618  			}
  1619  			if byteLen < 0 {
  1620  				return ErrInvalidLengthRaft
  1621  			}
  1622  			postIndex := iNdEx + byteLen
  1623  			if postIndex > l {
  1624  				return io.ErrUnexpectedEOF
  1625  			}
  1626  			m.RangeStartKey = append(m.RangeStartKey[:0], dAtA[iNdEx:postIndex]...)
  1627  			if m.RangeStartKey == nil {
  1628  				m.RangeStartKey = []byte{}
  1629  			}
  1630  			iNdEx = postIndex
  1631  		default:
  1632  			iNdEx = preIndex
  1633  			skippy, err := skipRaft(dAtA[iNdEx:])
  1634  			if err != nil {
  1635  				return err
  1636  			}
  1637  			if skippy < 0 {
  1638  				return ErrInvalidLengthRaft
  1639  			}
  1640  			if (iNdEx + skippy) > l {
  1641  				return io.ErrUnexpectedEOF
  1642  			}
  1643  			iNdEx += skippy
  1644  		}
  1645  	}
  1646  
  1647  	if iNdEx > l {
  1648  		return io.ErrUnexpectedEOF
  1649  	}
  1650  	return nil
  1651  }
  1652  func (m *RaftMessageRequestBatch) Unmarshal(dAtA []byte) error {
  1653  	l := len(dAtA)
  1654  	iNdEx := 0
  1655  	for iNdEx < l {
  1656  		preIndex := iNdEx
  1657  		var wire uint64
  1658  		for shift := uint(0); ; shift += 7 {
  1659  			if shift >= 64 {
  1660  				return ErrIntOverflowRaft
  1661  			}
  1662  			if iNdEx >= l {
  1663  				return io.ErrUnexpectedEOF
  1664  			}
  1665  			b := dAtA[iNdEx]
  1666  			iNdEx++
  1667  			wire |= (uint64(b) & 0x7F) << shift
  1668  			if b < 0x80 {
  1669  				break
  1670  			}
  1671  		}
  1672  		fieldNum := int32(wire >> 3)
  1673  		wireType := int(wire & 0x7)
  1674  		if wireType == 4 {
  1675  			return fmt.Errorf("proto: RaftMessageRequestBatch: wiretype end group for non-group")
  1676  		}
  1677  		if fieldNum <= 0 {
  1678  			return fmt.Errorf("proto: RaftMessageRequestBatch: illegal tag %d (wire type %d)", fieldNum, wire)
  1679  		}
  1680  		switch fieldNum {
  1681  		case 1:
  1682  			if wireType != 2 {
  1683  				return fmt.Errorf("proto: wrong wireType = %d for field Requests", wireType)
  1684  			}
  1685  			var msglen int
  1686  			for shift := uint(0); ; shift += 7 {
  1687  				if shift >= 64 {
  1688  					return ErrIntOverflowRaft
  1689  				}
  1690  				if iNdEx >= l {
  1691  					return io.ErrUnexpectedEOF
  1692  				}
  1693  				b := dAtA[iNdEx]
  1694  				iNdEx++
  1695  				msglen |= (int(b) & 0x7F) << shift
  1696  				if b < 0x80 {
  1697  					break
  1698  				}
  1699  			}
  1700  			if msglen < 0 {
  1701  				return ErrInvalidLengthRaft
  1702  			}
  1703  			postIndex := iNdEx + msglen
  1704  			if postIndex > l {
  1705  				return io.ErrUnexpectedEOF
  1706  			}
  1707  			m.Requests = append(m.Requests, RaftMessageRequest{})
  1708  			if err := m.Requests[len(m.Requests)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  1709  				return err
  1710  			}
  1711  			iNdEx = postIndex
  1712  		default:
  1713  			iNdEx = preIndex
  1714  			skippy, err := skipRaft(dAtA[iNdEx:])
  1715  			if err != nil {
  1716  				return err
  1717  			}
  1718  			if skippy < 0 {
  1719  				return ErrInvalidLengthRaft
  1720  			}
  1721  			if (iNdEx + skippy) > l {
  1722  				return io.ErrUnexpectedEOF
  1723  			}
  1724  			iNdEx += skippy
  1725  		}
  1726  	}
  1727  
  1728  	if iNdEx > l {
  1729  		return io.ErrUnexpectedEOF
  1730  	}
  1731  	return nil
  1732  }
  1733  func (m *RaftMessageResponseUnion) Unmarshal(dAtA []byte) error {
  1734  	l := len(dAtA)
  1735  	iNdEx := 0
  1736  	for iNdEx < l {
  1737  		preIndex := iNdEx
  1738  		var wire uint64
  1739  		for shift := uint(0); ; shift += 7 {
  1740  			if shift >= 64 {
  1741  				return ErrIntOverflowRaft
  1742  			}
  1743  			if iNdEx >= l {
  1744  				return io.ErrUnexpectedEOF
  1745  			}
  1746  			b := dAtA[iNdEx]
  1747  			iNdEx++
  1748  			wire |= (uint64(b) & 0x7F) << shift
  1749  			if b < 0x80 {
  1750  				break
  1751  			}
  1752  		}
  1753  		fieldNum := int32(wire >> 3)
  1754  		wireType := int(wire & 0x7)
  1755  		if wireType == 4 {
  1756  			return fmt.Errorf("proto: RaftMessageResponseUnion: wiretype end group for non-group")
  1757  		}
  1758  		if fieldNum <= 0 {
  1759  			return fmt.Errorf("proto: RaftMessageResponseUnion: illegal tag %d (wire type %d)", fieldNum, wire)
  1760  		}
  1761  		switch fieldNum {
  1762  		case 1:
  1763  			if wireType != 2 {
  1764  				return fmt.Errorf("proto: wrong wireType = %d for field Error", wireType)
  1765  			}
  1766  			var msglen int
  1767  			for shift := uint(0); ; shift += 7 {
  1768  				if shift >= 64 {
  1769  					return ErrIntOverflowRaft
  1770  				}
  1771  				if iNdEx >= l {
  1772  					return io.ErrUnexpectedEOF
  1773  				}
  1774  				b := dAtA[iNdEx]
  1775  				iNdEx++
  1776  				msglen |= (int(b) & 0x7F) << shift
  1777  				if b < 0x80 {
  1778  					break
  1779  				}
  1780  			}
  1781  			if msglen < 0 {
  1782  				return ErrInvalidLengthRaft
  1783  			}
  1784  			postIndex := iNdEx + msglen
  1785  			if postIndex > l {
  1786  				return io.ErrUnexpectedEOF
  1787  			}
  1788  			if m.Error == nil {
  1789  				m.Error = &roachpb.Error{}
  1790  			}
  1791  			if err := m.Error.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  1792  				return err
  1793  			}
  1794  			iNdEx = postIndex
  1795  		default:
  1796  			iNdEx = preIndex
  1797  			skippy, err := skipRaft(dAtA[iNdEx:])
  1798  			if err != nil {
  1799  				return err
  1800  			}
  1801  			if skippy < 0 {
  1802  				return ErrInvalidLengthRaft
  1803  			}
  1804  			if (iNdEx + skippy) > l {
  1805  				return io.ErrUnexpectedEOF
  1806  			}
  1807  			iNdEx += skippy
  1808  		}
  1809  	}
  1810  
  1811  	if iNdEx > l {
  1812  		return io.ErrUnexpectedEOF
  1813  	}
  1814  	return nil
  1815  }
  1816  func (m *RaftMessageResponse) Unmarshal(dAtA []byte) error {
  1817  	l := len(dAtA)
  1818  	iNdEx := 0
  1819  	for iNdEx < l {
  1820  		preIndex := iNdEx
  1821  		var wire uint64
  1822  		for shift := uint(0); ; shift += 7 {
  1823  			if shift >= 64 {
  1824  				return ErrIntOverflowRaft
  1825  			}
  1826  			if iNdEx >= l {
  1827  				return io.ErrUnexpectedEOF
  1828  			}
  1829  			b := dAtA[iNdEx]
  1830  			iNdEx++
  1831  			wire |= (uint64(b) & 0x7F) << shift
  1832  			if b < 0x80 {
  1833  				break
  1834  			}
  1835  		}
  1836  		fieldNum := int32(wire >> 3)
  1837  		wireType := int(wire & 0x7)
  1838  		if wireType == 4 {
  1839  			return fmt.Errorf("proto: RaftMessageResponse: wiretype end group for non-group")
  1840  		}
  1841  		if fieldNum <= 0 {
  1842  			return fmt.Errorf("proto: RaftMessageResponse: illegal tag %d (wire type %d)", fieldNum, wire)
  1843  		}
  1844  		switch fieldNum {
  1845  		case 1:
  1846  			if wireType != 0 {
  1847  				return fmt.Errorf("proto: wrong wireType = %d for field RangeID", wireType)
  1848  			}
  1849  			m.RangeID = 0
  1850  			for shift := uint(0); ; shift += 7 {
  1851  				if shift >= 64 {
  1852  					return ErrIntOverflowRaft
  1853  				}
  1854  				if iNdEx >= l {
  1855  					return io.ErrUnexpectedEOF
  1856  				}
  1857  				b := dAtA[iNdEx]
  1858  				iNdEx++
  1859  				m.RangeID |= (github_com_cockroachdb_cockroach_pkg_roachpb.RangeID(b) & 0x7F) << shift
  1860  				if b < 0x80 {
  1861  					break
  1862  				}
  1863  			}
  1864  		case 2:
  1865  			if wireType != 2 {
  1866  				return fmt.Errorf("proto: wrong wireType = %d for field FromReplica", wireType)
  1867  			}
  1868  			var msglen int
  1869  			for shift := uint(0); ; shift += 7 {
  1870  				if shift >= 64 {
  1871  					return ErrIntOverflowRaft
  1872  				}
  1873  				if iNdEx >= l {
  1874  					return io.ErrUnexpectedEOF
  1875  				}
  1876  				b := dAtA[iNdEx]
  1877  				iNdEx++
  1878  				msglen |= (int(b) & 0x7F) << shift
  1879  				if b < 0x80 {
  1880  					break
  1881  				}
  1882  			}
  1883  			if msglen < 0 {
  1884  				return ErrInvalidLengthRaft
  1885  			}
  1886  			postIndex := iNdEx + msglen
  1887  			if postIndex > l {
  1888  				return io.ErrUnexpectedEOF
  1889  			}
  1890  			if err := m.FromReplica.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  1891  				return err
  1892  			}
  1893  			iNdEx = postIndex
  1894  		case 3:
  1895  			if wireType != 2 {
  1896  				return fmt.Errorf("proto: wrong wireType = %d for field ToReplica", wireType)
  1897  			}
  1898  			var msglen int
  1899  			for shift := uint(0); ; shift += 7 {
  1900  				if shift >= 64 {
  1901  					return ErrIntOverflowRaft
  1902  				}
  1903  				if iNdEx >= l {
  1904  					return io.ErrUnexpectedEOF
  1905  				}
  1906  				b := dAtA[iNdEx]
  1907  				iNdEx++
  1908  				msglen |= (int(b) & 0x7F) << shift
  1909  				if b < 0x80 {
  1910  					break
  1911  				}
  1912  			}
  1913  			if msglen < 0 {
  1914  				return ErrInvalidLengthRaft
  1915  			}
  1916  			postIndex := iNdEx + msglen
  1917  			if postIndex > l {
  1918  				return io.ErrUnexpectedEOF
  1919  			}
  1920  			if err := m.ToReplica.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  1921  				return err
  1922  			}
  1923  			iNdEx = postIndex
  1924  		case 4:
  1925  			if wireType != 2 {
  1926  				return fmt.Errorf("proto: wrong wireType = %d for field Union", wireType)
  1927  			}
  1928  			var msglen int
  1929  			for shift := uint(0); ; shift += 7 {
  1930  				if shift >= 64 {
  1931  					return ErrIntOverflowRaft
  1932  				}
  1933  				if iNdEx >= l {
  1934  					return io.ErrUnexpectedEOF
  1935  				}
  1936  				b := dAtA[iNdEx]
  1937  				iNdEx++
  1938  				msglen |= (int(b) & 0x7F) << shift
  1939  				if b < 0x80 {
  1940  					break
  1941  				}
  1942  			}
  1943  			if msglen < 0 {
  1944  				return ErrInvalidLengthRaft
  1945  			}
  1946  			postIndex := iNdEx + msglen
  1947  			if postIndex > l {
  1948  				return io.ErrUnexpectedEOF
  1949  			}
  1950  			if err := m.Union.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  1951  				return err
  1952  			}
  1953  			iNdEx = postIndex
  1954  		default:
  1955  			iNdEx = preIndex
  1956  			skippy, err := skipRaft(dAtA[iNdEx:])
  1957  			if err != nil {
  1958  				return err
  1959  			}
  1960  			if skippy < 0 {
  1961  				return ErrInvalidLengthRaft
  1962  			}
  1963  			if (iNdEx + skippy) > l {
  1964  				return io.ErrUnexpectedEOF
  1965  			}
  1966  			iNdEx += skippy
  1967  		}
  1968  	}
  1969  
  1970  	if iNdEx > l {
  1971  		return io.ErrUnexpectedEOF
  1972  	}
  1973  	return nil
  1974  }
  1975  func (m *SnapshotRequest) Unmarshal(dAtA []byte) error {
  1976  	l := len(dAtA)
  1977  	iNdEx := 0
  1978  	for iNdEx < l {
  1979  		preIndex := iNdEx
  1980  		var wire uint64
  1981  		for shift := uint(0); ; shift += 7 {
  1982  			if shift >= 64 {
  1983  				return ErrIntOverflowRaft
  1984  			}
  1985  			if iNdEx >= l {
  1986  				return io.ErrUnexpectedEOF
  1987  			}
  1988  			b := dAtA[iNdEx]
  1989  			iNdEx++
  1990  			wire |= (uint64(b) & 0x7F) << shift
  1991  			if b < 0x80 {
  1992  				break
  1993  			}
  1994  		}
  1995  		fieldNum := int32(wire >> 3)
  1996  		wireType := int(wire & 0x7)
  1997  		if wireType == 4 {
  1998  			return fmt.Errorf("proto: SnapshotRequest: wiretype end group for non-group")
  1999  		}
  2000  		if fieldNum <= 0 {
  2001  			return fmt.Errorf("proto: SnapshotRequest: illegal tag %d (wire type %d)", fieldNum, wire)
  2002  		}
  2003  		switch fieldNum {
  2004  		case 1:
  2005  			if wireType != 2 {
  2006  				return fmt.Errorf("proto: wrong wireType = %d for field Header", wireType)
  2007  			}
  2008  			var msglen int
  2009  			for shift := uint(0); ; shift += 7 {
  2010  				if shift >= 64 {
  2011  					return ErrIntOverflowRaft
  2012  				}
  2013  				if iNdEx >= l {
  2014  					return io.ErrUnexpectedEOF
  2015  				}
  2016  				b := dAtA[iNdEx]
  2017  				iNdEx++
  2018  				msglen |= (int(b) & 0x7F) << shift
  2019  				if b < 0x80 {
  2020  					break
  2021  				}
  2022  			}
  2023  			if msglen < 0 {
  2024  				return ErrInvalidLengthRaft
  2025  			}
  2026  			postIndex := iNdEx + msglen
  2027  			if postIndex > l {
  2028  				return io.ErrUnexpectedEOF
  2029  			}
  2030  			if m.Header == nil {
  2031  				m.Header = &SnapshotRequest_Header{}
  2032  			}
  2033  			if err := m.Header.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  2034  				return err
  2035  			}
  2036  			iNdEx = postIndex
  2037  		case 2:
  2038  			if wireType != 2 {
  2039  				return fmt.Errorf("proto: wrong wireType = %d for field KVBatch", wireType)
  2040  			}
  2041  			var byteLen int
  2042  			for shift := uint(0); ; shift += 7 {
  2043  				if shift >= 64 {
  2044  					return ErrIntOverflowRaft
  2045  				}
  2046  				if iNdEx >= l {
  2047  					return io.ErrUnexpectedEOF
  2048  				}
  2049  				b := dAtA[iNdEx]
  2050  				iNdEx++
  2051  				byteLen |= (int(b) & 0x7F) << shift
  2052  				if b < 0x80 {
  2053  					break
  2054  				}
  2055  			}
  2056  			if byteLen < 0 {
  2057  				return ErrInvalidLengthRaft
  2058  			}
  2059  			postIndex := iNdEx + byteLen
  2060  			if postIndex > l {
  2061  				return io.ErrUnexpectedEOF
  2062  			}
  2063  			m.KVBatch = append(m.KVBatch[:0], dAtA[iNdEx:postIndex]...)
  2064  			if m.KVBatch == nil {
  2065  				m.KVBatch = []byte{}
  2066  			}
  2067  			iNdEx = postIndex
  2068  		case 3:
  2069  			if wireType != 2 {
  2070  				return fmt.Errorf("proto: wrong wireType = %d for field LogEntries", wireType)
  2071  			}
  2072  			var byteLen int
  2073  			for shift := uint(0); ; shift += 7 {
  2074  				if shift >= 64 {
  2075  					return ErrIntOverflowRaft
  2076  				}
  2077  				if iNdEx >= l {
  2078  					return io.ErrUnexpectedEOF
  2079  				}
  2080  				b := dAtA[iNdEx]
  2081  				iNdEx++
  2082  				byteLen |= (int(b) & 0x7F) << shift
  2083  				if b < 0x80 {
  2084  					break
  2085  				}
  2086  			}
  2087  			if byteLen < 0 {
  2088  				return ErrInvalidLengthRaft
  2089  			}
  2090  			postIndex := iNdEx + byteLen
  2091  			if postIndex > l {
  2092  				return io.ErrUnexpectedEOF
  2093  			}
  2094  			m.LogEntries = append(m.LogEntries, make([]byte, postIndex-iNdEx))
  2095  			copy(m.LogEntries[len(m.LogEntries)-1], dAtA[iNdEx:postIndex])
  2096  			iNdEx = postIndex
  2097  		case 4:
  2098  			if wireType != 0 {
  2099  				return fmt.Errorf("proto: wrong wireType = %d for field Final", wireType)
  2100  			}
  2101  			var v int
  2102  			for shift := uint(0); ; shift += 7 {
  2103  				if shift >= 64 {
  2104  					return ErrIntOverflowRaft
  2105  				}
  2106  				if iNdEx >= l {
  2107  					return io.ErrUnexpectedEOF
  2108  				}
  2109  				b := dAtA[iNdEx]
  2110  				iNdEx++
  2111  				v |= (int(b) & 0x7F) << shift
  2112  				if b < 0x80 {
  2113  					break
  2114  				}
  2115  			}
  2116  			m.Final = bool(v != 0)
  2117  		default:
  2118  			iNdEx = preIndex
  2119  			skippy, err := skipRaft(dAtA[iNdEx:])
  2120  			if err != nil {
  2121  				return err
  2122  			}
  2123  			if skippy < 0 {
  2124  				return ErrInvalidLengthRaft
  2125  			}
  2126  			if (iNdEx + skippy) > l {
  2127  				return io.ErrUnexpectedEOF
  2128  			}
  2129  			iNdEx += skippy
  2130  		}
  2131  	}
  2132  
  2133  	if iNdEx > l {
  2134  		return io.ErrUnexpectedEOF
  2135  	}
  2136  	return nil
  2137  }
  2138  func (m *SnapshotRequest_Header) Unmarshal(dAtA []byte) error {
  2139  	l := len(dAtA)
  2140  	iNdEx := 0
  2141  	for iNdEx < l {
  2142  		preIndex := iNdEx
  2143  		var wire uint64
  2144  		for shift := uint(0); ; shift += 7 {
  2145  			if shift >= 64 {
  2146  				return ErrIntOverflowRaft
  2147  			}
  2148  			if iNdEx >= l {
  2149  				return io.ErrUnexpectedEOF
  2150  			}
  2151  			b := dAtA[iNdEx]
  2152  			iNdEx++
  2153  			wire |= (uint64(b) & 0x7F) << shift
  2154  			if b < 0x80 {
  2155  				break
  2156  			}
  2157  		}
  2158  		fieldNum := int32(wire >> 3)
  2159  		wireType := int(wire & 0x7)
  2160  		if wireType == 4 {
  2161  			return fmt.Errorf("proto: Header: wiretype end group for non-group")
  2162  		}
  2163  		if fieldNum <= 0 {
  2164  			return fmt.Errorf("proto: Header: illegal tag %d (wire type %d)", fieldNum, wire)
  2165  		}
  2166  		switch fieldNum {
  2167  		case 2:
  2168  			if wireType != 2 {
  2169  				return fmt.Errorf("proto: wrong wireType = %d for field RaftMessageRequest", wireType)
  2170  			}
  2171  			var msglen int
  2172  			for shift := uint(0); ; shift += 7 {
  2173  				if shift >= 64 {
  2174  					return ErrIntOverflowRaft
  2175  				}
  2176  				if iNdEx >= l {
  2177  					return io.ErrUnexpectedEOF
  2178  				}
  2179  				b := dAtA[iNdEx]
  2180  				iNdEx++
  2181  				msglen |= (int(b) & 0x7F) << shift
  2182  				if b < 0x80 {
  2183  					break
  2184  				}
  2185  			}
  2186  			if msglen < 0 {
  2187  				return ErrInvalidLengthRaft
  2188  			}
  2189  			postIndex := iNdEx + msglen
  2190  			if postIndex > l {
  2191  				return io.ErrUnexpectedEOF
  2192  			}
  2193  			if err := m.RaftMessageRequest.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  2194  				return err
  2195  			}
  2196  			iNdEx = postIndex
  2197  		case 3:
  2198  			if wireType != 0 {
  2199  				return fmt.Errorf("proto: wrong wireType = %d for field RangeSize", wireType)
  2200  			}
  2201  			m.RangeSize = 0
  2202  			for shift := uint(0); ; shift += 7 {
  2203  				if shift >= 64 {
  2204  					return ErrIntOverflowRaft
  2205  				}
  2206  				if iNdEx >= l {
  2207  					return io.ErrUnexpectedEOF
  2208  				}
  2209  				b := dAtA[iNdEx]
  2210  				iNdEx++
  2211  				m.RangeSize |= (int64(b) & 0x7F) << shift
  2212  				if b < 0x80 {
  2213  					break
  2214  				}
  2215  			}
  2216  		case 4:
  2217  			if wireType != 0 {
  2218  				return fmt.Errorf("proto: wrong wireType = %d for field CanDecline", wireType)
  2219  			}
  2220  			var v int
  2221  			for shift := uint(0); ; shift += 7 {
  2222  				if shift >= 64 {
  2223  					return ErrIntOverflowRaft
  2224  				}
  2225  				if iNdEx >= l {
  2226  					return io.ErrUnexpectedEOF
  2227  				}
  2228  				b := dAtA[iNdEx]
  2229  				iNdEx++
  2230  				v |= (int(b) & 0x7F) << shift
  2231  				if b < 0x80 {
  2232  					break
  2233  				}
  2234  			}
  2235  			m.CanDecline = bool(v != 0)
  2236  		case 5:
  2237  			if wireType != 2 {
  2238  				return fmt.Errorf("proto: wrong wireType = %d for field State", wireType)
  2239  			}
  2240  			var msglen int
  2241  			for shift := uint(0); ; shift += 7 {
  2242  				if shift >= 64 {
  2243  					return ErrIntOverflowRaft
  2244  				}
  2245  				if iNdEx >= l {
  2246  					return io.ErrUnexpectedEOF
  2247  				}
  2248  				b := dAtA[iNdEx]
  2249  				iNdEx++
  2250  				msglen |= (int(b) & 0x7F) << shift
  2251  				if b < 0x80 {
  2252  					break
  2253  				}
  2254  			}
  2255  			if msglen < 0 {
  2256  				return ErrInvalidLengthRaft
  2257  			}
  2258  			postIndex := iNdEx + msglen
  2259  			if postIndex > l {
  2260  				return io.ErrUnexpectedEOF
  2261  			}
  2262  			if err := m.State.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  2263  				return err
  2264  			}
  2265  			iNdEx = postIndex
  2266  		case 6:
  2267  			if wireType != 0 {
  2268  				return fmt.Errorf("proto: wrong wireType = %d for field Priority", wireType)
  2269  			}
  2270  			m.Priority = 0
  2271  			for shift := uint(0); ; shift += 7 {
  2272  				if shift >= 64 {
  2273  					return ErrIntOverflowRaft
  2274  				}
  2275  				if iNdEx >= l {
  2276  					return io.ErrUnexpectedEOF
  2277  				}
  2278  				b := dAtA[iNdEx]
  2279  				iNdEx++
  2280  				m.Priority |= (SnapshotRequest_Priority(b) & 0x7F) << shift
  2281  				if b < 0x80 {
  2282  					break
  2283  				}
  2284  			}
  2285  		case 7:
  2286  			if wireType != 0 {
  2287  				return fmt.Errorf("proto: wrong wireType = %d for field Strategy", wireType)
  2288  			}
  2289  			m.Strategy = 0
  2290  			for shift := uint(0); ; shift += 7 {
  2291  				if shift >= 64 {
  2292  					return ErrIntOverflowRaft
  2293  				}
  2294  				if iNdEx >= l {
  2295  					return io.ErrUnexpectedEOF
  2296  				}
  2297  				b := dAtA[iNdEx]
  2298  				iNdEx++
  2299  				m.Strategy |= (SnapshotRequest_Strategy(b) & 0x7F) << shift
  2300  				if b < 0x80 {
  2301  					break
  2302  				}
  2303  			}
  2304  		case 8:
  2305  			if wireType != 0 {
  2306  				return fmt.Errorf("proto: wrong wireType = %d for field UnreplicatedTruncatedState", wireType)
  2307  			}
  2308  			var v int
  2309  			for shift := uint(0); ; shift += 7 {
  2310  				if shift >= 64 {
  2311  					return ErrIntOverflowRaft
  2312  				}
  2313  				if iNdEx >= l {
  2314  					return io.ErrUnexpectedEOF
  2315  				}
  2316  				b := dAtA[iNdEx]
  2317  				iNdEx++
  2318  				v |= (int(b) & 0x7F) << shift
  2319  				if b < 0x80 {
  2320  					break
  2321  				}
  2322  			}
  2323  			m.UnreplicatedTruncatedState = bool(v != 0)
  2324  		case 9:
  2325  			if wireType != 0 {
  2326  				return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType)
  2327  			}
  2328  			m.Type = 0
  2329  			for shift := uint(0); ; shift += 7 {
  2330  				if shift >= 64 {
  2331  					return ErrIntOverflowRaft
  2332  				}
  2333  				if iNdEx >= l {
  2334  					return io.ErrUnexpectedEOF
  2335  				}
  2336  				b := dAtA[iNdEx]
  2337  				iNdEx++
  2338  				m.Type |= (SnapshotRequest_Type(b) & 0x7F) << shift
  2339  				if b < 0x80 {
  2340  					break
  2341  				}
  2342  			}
  2343  		default:
  2344  			iNdEx = preIndex
  2345  			skippy, err := skipRaft(dAtA[iNdEx:])
  2346  			if err != nil {
  2347  				return err
  2348  			}
  2349  			if skippy < 0 {
  2350  				return ErrInvalidLengthRaft
  2351  			}
  2352  			if (iNdEx + skippy) > l {
  2353  				return io.ErrUnexpectedEOF
  2354  			}
  2355  			iNdEx += skippy
  2356  		}
  2357  	}
  2358  
  2359  	if iNdEx > l {
  2360  		return io.ErrUnexpectedEOF
  2361  	}
  2362  	return nil
  2363  }
  2364  func (m *SnapshotResponse) Unmarshal(dAtA []byte) error {
  2365  	l := len(dAtA)
  2366  	iNdEx := 0
  2367  	for iNdEx < l {
  2368  		preIndex := iNdEx
  2369  		var wire uint64
  2370  		for shift := uint(0); ; shift += 7 {
  2371  			if shift >= 64 {
  2372  				return ErrIntOverflowRaft
  2373  			}
  2374  			if iNdEx >= l {
  2375  				return io.ErrUnexpectedEOF
  2376  			}
  2377  			b := dAtA[iNdEx]
  2378  			iNdEx++
  2379  			wire |= (uint64(b) & 0x7F) << shift
  2380  			if b < 0x80 {
  2381  				break
  2382  			}
  2383  		}
  2384  		fieldNum := int32(wire >> 3)
  2385  		wireType := int(wire & 0x7)
  2386  		if wireType == 4 {
  2387  			return fmt.Errorf("proto: SnapshotResponse: wiretype end group for non-group")
  2388  		}
  2389  		if fieldNum <= 0 {
  2390  			return fmt.Errorf("proto: SnapshotResponse: illegal tag %d (wire type %d)", fieldNum, wire)
  2391  		}
  2392  		switch fieldNum {
  2393  		case 1:
  2394  			if wireType != 0 {
  2395  				return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType)
  2396  			}
  2397  			m.Status = 0
  2398  			for shift := uint(0); ; shift += 7 {
  2399  				if shift >= 64 {
  2400  					return ErrIntOverflowRaft
  2401  				}
  2402  				if iNdEx >= l {
  2403  					return io.ErrUnexpectedEOF
  2404  				}
  2405  				b := dAtA[iNdEx]
  2406  				iNdEx++
  2407  				m.Status |= (SnapshotResponse_Status(b) & 0x7F) << shift
  2408  				if b < 0x80 {
  2409  					break
  2410  				}
  2411  			}
  2412  		case 2:
  2413  			if wireType != 2 {
  2414  				return fmt.Errorf("proto: wrong wireType = %d for field Message", wireType)
  2415  			}
  2416  			var stringLen uint64
  2417  			for shift := uint(0); ; shift += 7 {
  2418  				if shift >= 64 {
  2419  					return ErrIntOverflowRaft
  2420  				}
  2421  				if iNdEx >= l {
  2422  					return io.ErrUnexpectedEOF
  2423  				}
  2424  				b := dAtA[iNdEx]
  2425  				iNdEx++
  2426  				stringLen |= (uint64(b) & 0x7F) << shift
  2427  				if b < 0x80 {
  2428  					break
  2429  				}
  2430  			}
  2431  			intStringLen := int(stringLen)
  2432  			if intStringLen < 0 {
  2433  				return ErrInvalidLengthRaft
  2434  			}
  2435  			postIndex := iNdEx + intStringLen
  2436  			if postIndex > l {
  2437  				return io.ErrUnexpectedEOF
  2438  			}
  2439  			m.Message = string(dAtA[iNdEx:postIndex])
  2440  			iNdEx = postIndex
  2441  		default:
  2442  			iNdEx = preIndex
  2443  			skippy, err := skipRaft(dAtA[iNdEx:])
  2444  			if err != nil {
  2445  				return err
  2446  			}
  2447  			if skippy < 0 {
  2448  				return ErrInvalidLengthRaft
  2449  			}
  2450  			if (iNdEx + skippy) > l {
  2451  				return io.ErrUnexpectedEOF
  2452  			}
  2453  			iNdEx += skippy
  2454  		}
  2455  	}
  2456  
  2457  	if iNdEx > l {
  2458  		return io.ErrUnexpectedEOF
  2459  	}
  2460  	return nil
  2461  }
  2462  func (m *ConfChangeContext) Unmarshal(dAtA []byte) error {
  2463  	l := len(dAtA)
  2464  	iNdEx := 0
  2465  	for iNdEx < l {
  2466  		preIndex := iNdEx
  2467  		var wire uint64
  2468  		for shift := uint(0); ; shift += 7 {
  2469  			if shift >= 64 {
  2470  				return ErrIntOverflowRaft
  2471  			}
  2472  			if iNdEx >= l {
  2473  				return io.ErrUnexpectedEOF
  2474  			}
  2475  			b := dAtA[iNdEx]
  2476  			iNdEx++
  2477  			wire |= (uint64(b) & 0x7F) << shift
  2478  			if b < 0x80 {
  2479  				break
  2480  			}
  2481  		}
  2482  		fieldNum := int32(wire >> 3)
  2483  		wireType := int(wire & 0x7)
  2484  		if wireType == 4 {
  2485  			return fmt.Errorf("proto: ConfChangeContext: wiretype end group for non-group")
  2486  		}
  2487  		if fieldNum <= 0 {
  2488  			return fmt.Errorf("proto: ConfChangeContext: illegal tag %d (wire type %d)", fieldNum, wire)
  2489  		}
  2490  		switch fieldNum {
  2491  		case 1:
  2492  			if wireType != 2 {
  2493  				return fmt.Errorf("proto: wrong wireType = %d for field CommandID", wireType)
  2494  			}
  2495  			var stringLen uint64
  2496  			for shift := uint(0); ; shift += 7 {
  2497  				if shift >= 64 {
  2498  					return ErrIntOverflowRaft
  2499  				}
  2500  				if iNdEx >= l {
  2501  					return io.ErrUnexpectedEOF
  2502  				}
  2503  				b := dAtA[iNdEx]
  2504  				iNdEx++
  2505  				stringLen |= (uint64(b) & 0x7F) << shift
  2506  				if b < 0x80 {
  2507  					break
  2508  				}
  2509  			}
  2510  			intStringLen := int(stringLen)
  2511  			if intStringLen < 0 {
  2512  				return ErrInvalidLengthRaft
  2513  			}
  2514  			postIndex := iNdEx + intStringLen
  2515  			if postIndex > l {
  2516  				return io.ErrUnexpectedEOF
  2517  			}
  2518  			m.CommandID = string(dAtA[iNdEx:postIndex])
  2519  			iNdEx = postIndex
  2520  		case 2:
  2521  			if wireType != 2 {
  2522  				return fmt.Errorf("proto: wrong wireType = %d for field Payload", wireType)
  2523  			}
  2524  			var byteLen int
  2525  			for shift := uint(0); ; shift += 7 {
  2526  				if shift >= 64 {
  2527  					return ErrIntOverflowRaft
  2528  				}
  2529  				if iNdEx >= l {
  2530  					return io.ErrUnexpectedEOF
  2531  				}
  2532  				b := dAtA[iNdEx]
  2533  				iNdEx++
  2534  				byteLen |= (int(b) & 0x7F) << shift
  2535  				if b < 0x80 {
  2536  					break
  2537  				}
  2538  			}
  2539  			if byteLen < 0 {
  2540  				return ErrInvalidLengthRaft
  2541  			}
  2542  			postIndex := iNdEx + byteLen
  2543  			if postIndex > l {
  2544  				return io.ErrUnexpectedEOF
  2545  			}
  2546  			m.Payload = append(m.Payload[:0], dAtA[iNdEx:postIndex]...)
  2547  			if m.Payload == nil {
  2548  				m.Payload = []byte{}
  2549  			}
  2550  			iNdEx = postIndex
  2551  		default:
  2552  			iNdEx = preIndex
  2553  			skippy, err := skipRaft(dAtA[iNdEx:])
  2554  			if err != nil {
  2555  				return err
  2556  			}
  2557  			if skippy < 0 {
  2558  				return ErrInvalidLengthRaft
  2559  			}
  2560  			if (iNdEx + skippy) > l {
  2561  				return io.ErrUnexpectedEOF
  2562  			}
  2563  			iNdEx += skippy
  2564  		}
  2565  	}
  2566  
  2567  	if iNdEx > l {
  2568  		return io.ErrUnexpectedEOF
  2569  	}
  2570  	return nil
  2571  }
  2572  func skipRaft(dAtA []byte) (n int, err error) {
  2573  	l := len(dAtA)
  2574  	iNdEx := 0
  2575  	for iNdEx < l {
  2576  		var wire uint64
  2577  		for shift := uint(0); ; shift += 7 {
  2578  			if shift >= 64 {
  2579  				return 0, ErrIntOverflowRaft
  2580  			}
  2581  			if iNdEx >= l {
  2582  				return 0, io.ErrUnexpectedEOF
  2583  			}
  2584  			b := dAtA[iNdEx]
  2585  			iNdEx++
  2586  			wire |= (uint64(b) & 0x7F) << shift
  2587  			if b < 0x80 {
  2588  				break
  2589  			}
  2590  		}
  2591  		wireType := int(wire & 0x7)
  2592  		switch wireType {
  2593  		case 0:
  2594  			for shift := uint(0); ; shift += 7 {
  2595  				if shift >= 64 {
  2596  					return 0, ErrIntOverflowRaft
  2597  				}
  2598  				if iNdEx >= l {
  2599  					return 0, io.ErrUnexpectedEOF
  2600  				}
  2601  				iNdEx++
  2602  				if dAtA[iNdEx-1] < 0x80 {
  2603  					break
  2604  				}
  2605  			}
  2606  			return iNdEx, nil
  2607  		case 1:
  2608  			iNdEx += 8
  2609  			return iNdEx, nil
  2610  		case 2:
  2611  			var length int
  2612  			for shift := uint(0); ; shift += 7 {
  2613  				if shift >= 64 {
  2614  					return 0, ErrIntOverflowRaft
  2615  				}
  2616  				if iNdEx >= l {
  2617  					return 0, io.ErrUnexpectedEOF
  2618  				}
  2619  				b := dAtA[iNdEx]
  2620  				iNdEx++
  2621  				length |= (int(b) & 0x7F) << shift
  2622  				if b < 0x80 {
  2623  					break
  2624  				}
  2625  			}
  2626  			iNdEx += length
  2627  			if length < 0 {
  2628  				return 0, ErrInvalidLengthRaft
  2629  			}
  2630  			return iNdEx, nil
  2631  		case 3:
  2632  			for {
  2633  				var innerWire uint64
  2634  				var start int = iNdEx
  2635  				for shift := uint(0); ; shift += 7 {
  2636  					if shift >= 64 {
  2637  						return 0, ErrIntOverflowRaft
  2638  					}
  2639  					if iNdEx >= l {
  2640  						return 0, io.ErrUnexpectedEOF
  2641  					}
  2642  					b := dAtA[iNdEx]
  2643  					iNdEx++
  2644  					innerWire |= (uint64(b) & 0x7F) << shift
  2645  					if b < 0x80 {
  2646  						break
  2647  					}
  2648  				}
  2649  				innerWireType := int(innerWire & 0x7)
  2650  				if innerWireType == 4 {
  2651  					break
  2652  				}
  2653  				next, err := skipRaft(dAtA[start:])
  2654  				if err != nil {
  2655  					return 0, err
  2656  				}
  2657  				iNdEx = start + next
  2658  			}
  2659  			return iNdEx, nil
  2660  		case 4:
  2661  			return iNdEx, nil
  2662  		case 5:
  2663  			iNdEx += 4
  2664  			return iNdEx, nil
  2665  		default:
  2666  			return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
  2667  		}
  2668  	}
  2669  	panic("unreachable")
  2670  }
  2671  
  2672  var (
  2673  	ErrInvalidLengthRaft = fmt.Errorf("proto: negative length found during unmarshaling")
  2674  	ErrIntOverflowRaft   = fmt.Errorf("proto: integer overflow")
  2675  )
  2676  
  2677  func init() { proto.RegisterFile("kv/kvserver/raft.proto", fileDescriptor_raft_3fc2b336b3beae43) }
  2678  
  2679  var fileDescriptor_raft_3fc2b336b3beae43 = []byte{
  2680  	// 1194 bytes of a gzipped FileDescriptorProto
  2681  	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x56, 0xcf, 0x6e, 0xdb, 0x46,
  2682  	0x13, 0x17, 0x25, 0x4a, 0xa2, 0x46, 0x56, 0xcc, 0xec, 0x97, 0x2f, 0x25, 0xdc, 0x40, 0x36, 0x98,
  2683  	0xb6, 0x70, 0x5b, 0x94, 0x6a, 0x8d, 0xb4, 0x87, 0xde, 0xf4, 0x87, 0x69, 0x14, 0x39, 0xb6, 0x4b,
  2684  	0x3b, 0x29, 0x5a, 0xa0, 0x20, 0x56, 0xd4, 0x4a, 0x22, 0x24, 0x71, 0x99, 0xe5, 0xca, 0xad, 0xf2,
  2685  	0x14, 0x7d, 0x84, 0xbe, 0x48, 0xef, 0x3e, 0xa6, 0xb7, 0x9c, 0x8c, 0xc4, 0x7e, 0x83, 0x1e, 0x73,
  2686  	0x2a, 0xb8, 0xe4, 0x4a, 0x8c, 0x92, 0xb4, 0x31, 0x50, 0xf4, 0xd2, 0x0b, 0xb1, 0x9c, 0x9d, 0xf9,
  2687  	0xcd, 0xce, 0xfc, 0x66, 0x66, 0x17, 0x6e, 0x4e, 0x4e, 0x1b, 0x93, 0xd3, 0x88, 0xb0, 0x53, 0xc2,
  2688  	0x1a, 0x0c, 0x0f, 0xb9, 0x15, 0x32, 0xca, 0x29, 0xfa, 0xbf, 0x47, 0xbd, 0x09, 0xa3, 0xd8, 0x1b,
  2689  	0x5b, 0x93, 0x53, 0x4b, 0x6a, 0x6c, 0xdd, 0x10, 0xa2, 0xb0, 0xdf, 0x20, 0x8c, 0x51, 0x16, 0x25,
  2690  	0xca, 0x5b, 0x37, 0xa5, 0x74, 0x46, 0x38, 0x1e, 0x60, 0x8e, 0x53, 0xb9, 0x99, 0x05, 0x97, 0x8b,
  2691  	0xb0, 0xdf, 0x88, 0x38, 0xe6, 0x24, 0xd5, 0x79, 0x9f, 0x70, 0x6f, 0x20, 0x3c, 0x8b, 0x4f, 0xd8,
  2692  	0xcf, 0x9c, 0x62, 0xeb, 0xc6, 0x88, 0x8e, 0xa8, 0x58, 0x36, 0xe2, 0x55, 0x22, 0x35, 0x5f, 0x14,
  2693  	0xa0, 0xe6, 0xe0, 0x21, 0xbf, 0x47, 0x30, 0xe3, 0x7d, 0x82, 0x39, 0xea, 0x83, 0xc6, 0x70, 0x30,
  2694  	0x22, 0xae, 0x3f, 0x30, 0x94, 0x1d, 0x65, 0x57, 0x6d, 0x7d, 0x73, 0x76, 0xbe, 0x9d, 0xbb, 0x38,
  2695  	0xdf, 0x2e, 0x3b, 0xb1, 0xbc, 0xdb, 0x79, 0x79, 0xbe, 0x7d, 0x67, 0xe4, 0xf3, 0xf1, 0xbc, 0x6f,
  2696  	0x79, 0x74, 0xd6, 0x58, 0x46, 0x37, 0xe8, 0xaf, 0xd6, 0x8d, 0x70, 0x32, 0x6a, 0xa4, 0xa1, 0x58,
  2697  	0xa9, 0x9d, 0x53, 0x16, 0xc0, 0xdd, 0x01, 0xfa, 0x09, 0x36, 0x87, 0x8c, 0xce, 0x5c, 0x46, 0xc2,
  2698  	0xa9, 0xef, 0xe1, 0xd8, 0x55, 0x7e, 0x47, 0xd9, 0xad, 0xb5, 0x0e, 0x53, 0x57, 0xb5, 0xbb, 0x8c,
  2699  	0xce, 0x9c, 0x64, 0x57, 0x38, 0xfc, 0xea, 0x6a, 0x0e, 0xa5, 0xa5, 0x53, 0x1b, 0x66, 0x80, 0x06,
  2700  	0xe8, 0x31, 0xd4, 0x38, 0xcd, 0xba, 0x2d, 0x08, 0xb7, 0x0f, 0x52, 0xb7, 0xd5, 0x13, 0xfa, 0x4f,
  2701  	0x38, 0xad, 0x72, 0xba, 0x72, 0x69, 0x80, 0xca, 0x09, 0x9b, 0x19, 0xaa, 0xc8, 0xa5, 0x1a, 0x7b,
  2702  	0x72, 0x84, 0x04, 0xdd, 0x82, 0x92, 0x47, 0x67, 0x33, 0x9f, 0x1b, 0xc5, 0xcc, 0x5e, 0x2a, 0x43,
  2703  	0x75, 0x28, 0x3f, 0x9e, 0xfb, 0x24, 0xf2, 0x88, 0x51, 0xda, 0x51, 0x76, 0xb5, 0x74, 0x5b, 0x0a,
  2704  	0xd1, 0xae, 0x08, 0xc5, 0x8f, 0xdc, 0x29, 0xc1, 0x2c, 0x20, 0xcc, 0x28, 0x67, 0xb4, 0xaa, 0x9c,
  2705  	0x76, 0xa3, 0xfd, 0x64, 0xc3, 0xbc, 0x54, 0x01, 0xc5, 0x1c, 0x3f, 0x20, 0x51, 0x84, 0x47, 0xc4,
  2706  	0x21, 0x8f, 0xe7, 0x24, 0xfa, 0x77, 0x88, 0x7e, 0x00, 0x1b, 0x59, 0xa2, 0x05, 0xcb, 0xd5, 0xbd,
  2707  	0x0f, 0xac, 0x55, 0x47, 0xac, 0x65, 0xaf, 0x43, 0x22, 0x8f, 0xf9, 0x21, 0xa7, 0x4c, 0x46, 0x92,
  2708  	0x21, 0x10, 0x75, 0x01, 0x56, 0xf4, 0x09, 0xee, 0xae, 0x06, 0x56, 0x59, 0x12, 0x83, 0x1a, 0x50,
  2709  	0x9e, 0x25, 0xf9, 0x10, 0xcc, 0x54, 0xf7, 0x36, 0xad, 0xa4, 0x67, 0xac, 0x34, 0x4d, 0x32, 0xdf,
  2710  	0xa9, 0x56, 0x96, 0x8f, 0xe2, 0x9b, 0xf8, 0xb8, 0x0f, 0x30, 0x96, 0x4d, 0x14, 0x19, 0xa5, 0x9d,
  2711  	0xc2, 0xda, 0xd9, 0x32, 0xad, 0x6f, 0xbd, 0xd2, 0x71, 0x29, 0x50, 0xc6, 0x1a, 0x1d, 0xc3, 0xe6,
  2712  	0xf2, 0xcf, 0x65, 0x24, 0x0a, 0x23, 0xa3, 0x7c, 0x65, 0xc0, 0x6b, 0x4b, 0x08, 0x27, 0x46, 0x40,
  2713  	0x3f, 0xc2, 0x66, 0xc2, 0x77, 0xc4, 0x31, 0xe3, 0xee, 0x84, 0x2c, 0x0c, 0x6d, 0x47, 0xd9, 0xdd,
  2714  	0x68, 0x7d, 0xf9, 0xf2, 0x7c, 0xfb, 0x8b, 0xab, 0xf1, 0xdc, 0x23, 0x0b, 0xa7, 0x26, 0xd0, 0x8e,
  2715  	0x63, 0xb0, 0x1e, 0x59, 0x98, 0x43, 0x78, 0xef, 0xf5, 0x22, 0x6b, 0x61, 0xee, 0x8d, 0x51, 0x0f,
  2716  	0x34, 0x96, 0xfc, 0x47, 0x86, 0x22, 0xe2, 0xf8, 0xf8, 0x2f, 0xe2, 0x58, 0x43, 0x48, 0x82, 0x59,
  2717  	0x02, 0x98, 0x47, 0x60, 0xbc, 0xa2, 0x15, 0x85, 0x34, 0x88, 0xc8, 0xc3, 0xc0, 0xa7, 0x01, 0xb2,
  2718  	0xa0, 0x28, 0x86, 0xa9, 0xa8, 0xe7, 0xea, 0x9e, 0xf1, 0x86, 0xd2, 0xb0, 0xe3, 0x7d, 0x27, 0x51,
  2719  	0xfb, 0x5a, 0x3d, 0xfb, 0x75, 0x5b, 0x31, 0x9f, 0xe7, 0xe1, 0x7f, 0x6f, 0x80, 0xfc, 0x8f, 0x37,
  2720  	0x48, 0x0f, 0x8a, 0xf3, 0x38, 0xa9, 0x69, 0x7b, 0x34, 0xde, 0x85, 0xb1, 0x0c, 0x17, 0x29, 0x60,
  2721  	0x82, 0x61, 0xfe, 0x51, 0x82, 0xcd, 0xe3, 0x00, 0x87, 0xd1, 0x98, 0x72, 0x39, 0x7f, 0x6c, 0x28,
  2722  	0x8d, 0x09, 0x1e, 0x10, 0xc9, 0xd6, 0x67, 0x6f, 0xf1, 0xb0, 0x66, 0x67, 0xdd, 0x13, 0x46, 0x4e,
  2723  	0x6a, 0x8c, 0x3e, 0x02, 0x6d, 0x72, 0xea, 0xf6, 0xe3, 0x42, 0x13, 0xd9, 0xdb, 0x68, 0x55, 0x63,
  2724  	0x86, 0x7a, 0x8f, 0x44, 0xed, 0x39, 0xe5, 0xc9, 0x69, 0x52, 0x84, 0xdb, 0x50, 0x9d, 0xd2, 0x91,
  2725  	0x4b, 0x02, 0xce, 0x7c, 0x12, 0x19, 0x85, 0x9d, 0xc2, 0xee, 0x86, 0x03, 0x53, 0x3a, 0xb2, 0x13,
  2726  	0x09, 0xda, 0x82, 0xe2, 0xd0, 0x0f, 0xf0, 0x54, 0x04, 0x2c, 0xdb, 0x3b, 0x11, 0x6d, 0xfd, 0xa6,
  2727  	0x42, 0x29, 0xf1, 0x8b, 0x30, 0xdc, 0x88, 0x07, 0x85, 0x9b, 0xce, 0x05, 0x37, 0x2d, 0xcc, 0x94,
  2728  	0xb9, 0x2b, 0x17, 0x36, 0x62, 0xaf, 0x4f, 0xe6, 0xdb, 0x00, 0x69, 0xa7, 0xfa, 0x4f, 0x88, 0x60,
  2729  	0xb1, 0x20, 0xf9, 0x49, 0x7a, 0xce, 0x7f, 0x42, 0xd0, 0x87, 0x50, 0xf5, 0x70, 0xe0, 0x0e, 0x88,
  2730  	0x37, 0xf5, 0x03, 0xf2, 0xca, 0xa1, 0xc1, 0xc3, 0x41, 0x27, 0x91, 0xa3, 0x2e, 0x14, 0xc5, 0x13,
  2731  	0x41, 0x0c, 0xad, 0xb7, 0x27, 0x39, 0xe2, 0x94, 0xe1, 0x11, 0x59, 0x95, 0xc6, 0x71, 0x6c, 0x24,
  2732  	0x93, 0x20, 0x10, 0xd0, 0xb7, 0xa0, 0x85, 0xcc, 0xa7, 0xcc, 0xe7, 0x0b, 0x71, 0x25, 0x5d, 0x7b,
  2733  	0x6b, 0x51, 0xac, 0x53, 0x76, 0x94, 0x9a, 0xc9, 0x66, 0x96, 0x30, 0x31, 0x64, 0xc4, 0x19, 0xe6,
  2734  	0x64, 0xb4, 0x10, 0xf7, 0xd7, 0xbb, 0x43, 0x1e, 0xa7, 0x66, 0x12, 0x52, 0xc2, 0xa0, 0xbb, 0x70,
  2735  	0x6b, 0x1e, 0xa4, 0x1d, 0xc0, 0xc9, 0xc0, 0xe5, 0x6c, 0x1e, 0x24, 0xab, 0x24, 0x0f, 0x5a, 0x26,
  2736  	0x51, 0x5b, 0x59, 0xcd, 0x13, 0xa9, 0x28, 0x42, 0x47, 0x36, 0xa8, 0x7c, 0x11, 0x12, 0xa3, 0x22,
  2737  	0x8e, 0xf5, 0xe9, 0x3b, 0x1e, 0xeb, 0x64, 0x11, 0x92, 0xe5, 0x25, 0xbf, 0x08, 0xc9, 0x7d, 0x55,
  2738  	0x53, 0xf4, 0xbc, 0x79, 0x07, 0x34, 0x99, 0x03, 0x54, 0x85, 0xf2, 0xc3, 0x83, 0xde, 0xc1, 0xe1,
  2739  	0x77, 0x07, 0x7a, 0x0e, 0x6d, 0x80, 0xe6, 0xd8, 0xed, 0xc3, 0x47, 0xb6, 0xf3, 0xbd, 0xae, 0xa0,
  2740  	0x1a, 0x54, 0x1c, 0xbb, 0xd5, 0xdc, 0x6f, 0x1e, 0xb4, 0x6d, 0x3d, 0x6f, 0x1a, 0xa0, 0xc9, 0x30,
  2741  	0x63, 0xc5, 0xde, 0x23, 0xb7, 0xd5, 0x3c, 0x69, 0xdf, 0xd3, 0x73, 0xe6, 0x6d, 0x50, 0x63, 0x4f,
  2742  	0x48, 0x03, 0xd5, 0x69, 0xde, 0x3d, 0xd1, 0x73, 0x31, 0xea, 0xbe, 0xdd, 0x74, 0x0e, 0x6c, 0x47,
  2743  	0x57, 0x4c, 0x55, 0xcb, 0xeb, 0x79, 0xf3, 0x77, 0x05, 0xf4, 0xd5, 0xf9, 0xd2, 0xa1, 0xb6, 0x0f,
  2744  	0xa5, 0x38, 0x0f, 0xf3, 0x48, 0x74, 0xdd, 0xb5, 0x3d, 0xeb, 0x6f, 0x03, 0x4b, 0x0c, 0xad, 0x63,
  2745  	0x61, 0x25, 0x1f, 0x29, 0x09, 0x46, 0x7c, 0x29, 0xca, 0x5b, 0x34, 0xae, 0xff, 0xca, 0xda, 0xa5,
  2746  	0x69, 0x76, 0xa1, 0x94, 0xd8, 0xbd, 0x16, 0x75, 0xb3, 0xdd, 0xb6, 0x8f, 0x4e, 0xec, 0x8e, 0xae,
  2747  	0xc4, 0x5b, 0xcd, 0xa3, 0xa3, 0xfd, 0xae, 0xdd, 0xd1, 0xf3, 0xa8, 0x02, 0x45, 0xdb, 0x71, 0x0e,
  2748  	0x1d, 0xbd, 0x10, 0x6b, 0x75, 0xec, 0xf6, 0x7e, 0xf7, 0xc0, 0xee, 0xe8, 0xea, 0x7d, 0x55, 0x2b,
  2749  	0xe8, 0xaa, 0xe9, 0xc2, 0xf5, 0x36, 0x0d, 0x86, 0xed, 0x71, 0xdc, 0x07, 0x6d, 0x1a, 0x70, 0xf2,
  2750  	0x33, 0x47, 0x9f, 0x03, 0xc4, 0x8f, 0x26, 0x1c, 0x0c, 0xe4, 0xa8, 0xae, 0xb4, 0xae, 0xa7, 0xa3,
  2751  	0xba, 0xd2, 0x4e, 0x76, 0xba, 0x1d, 0xa7, 0x92, 0x2a, 0x89, 0x47, 0x59, 0x39, 0xc4, 0x8b, 0x29,
  2752  	0xc5, 0xc9, 0xc3, 0x73, 0xc3, 0x91, 0xbf, 0xad, 0x4f, 0xce, 0x5e, 0xd4, 0x73, 0x67, 0x17, 0x75,
  2753  	0xe5, 0xe9, 0x45, 0x5d, 0x79, 0x76, 0x51, 0x57, 0x9e, 0x5f, 0xd4, 0x95, 0x5f, 0x2e, 0xeb, 0xb9,
  2754  	0xa7, 0x97, 0xf5, 0xdc, 0xb3, 0xcb, 0x7a, 0xee, 0x07, 0x4d, 0xe6, 0xe8, 0xcf, 0x00, 0x00, 0x00,
  2755  	0xff, 0xff, 0x9e, 0x78, 0x24, 0x68, 0xf1, 0x0b, 0x00, 0x00,
  2756  }