// Code generated by protoc-gen-gogo. DO NOT EDIT.
// source: ccl/sqlccl/backup.proto

/*
	Package sqlccl is a generated protocol buffer package.

	It is generated from these files:
		ccl/sqlccl/backup.proto

	It has these top-level messages:
		BackupDescriptor
*/
package sqlccl

import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import cockroach_build "github.com/cockroachdb/cockroach/pkg/build"
import cockroach_roachpb3 "github.com/cockroachdb/cockroach/pkg/roachpb"
import cockroach_roachpb1 "github.com/cockroachdb/cockroach/pkg/roachpb"
import cockroach_sql_sqlbase1 "github.com/cockroachdb/cockroach/pkg/sql/sqlbase"
import cockroach_util_hlc "github.com/cockroachdb/cockroach/pkg/util/hlc"

import github_com_cockroachdb_cockroach_pkg_sql_sqlbase "github.com/cockroachdb/cockroach/pkg/sql/sqlbase"
import github_com_cockroachdb_cockroach_pkg_util_uuid "github.com/cockroachdb/cockroach/pkg/util/uuid"
import github_com_cockroachdb_cockroach_pkg_roachpb "github.com/cockroachdb/cockroach/pkg/roachpb"

import io "io"

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.GoGoProtoPackageIsVersion2 // please upgrade the proto package

type MVCCFilter int32

const (
	MVCCFilter_Latest MVCCFilter = 0
	MVCCFilter_All    MVCCFilter = 1
)

var MVCCFilter_name = map[int32]string{
	0: "Latest",
	1: "All",
}
var MVCCFilter_value = map[string]int32{
	"Latest": 0,
	"All":    1,
}

func (x MVCCFilter) String() string {
	return proto.EnumName(MVCCFilter_name, int32(x))
}
func (MVCCFilter) EnumDescriptor() ([]byte, []int) { return fileDescriptorBackup, []int{0} }

// BackupDescriptor represents a consistent snapshot of ranges.
//
// Each range snapshot includes a path to data that is a diff of the data in
// that key range between a start and end timestamp. The end timestamp of all
// ranges in a backup is the same, but the start may vary (to allow individual
// tables to be backed up on different schedules).
type BackupDescriptor struct {
	StartTime  cockroach_util_hlc.Timestamp `protobuf:"bytes,1,opt,name=start_time,json=startTime" json:"start_time"`
	EndTime    cockroach_util_hlc.Timestamp `protobuf:"bytes,2,opt,name=end_time,json=endTime" json:"end_time"`
	MVCCFilter MVCCFilter                   `protobuf:"varint,13,opt,name=mvcc_filter,json=mvccFilter,proto3,enum=cockroach.ccl.sqlccl.MVCCFilter" json:"mvcc_filter,omitempty"`
	// Spans contains the spans requested for backup. The keyranges covered by
	// `files` may be a subset of this if there were ranges with no changes since
	// the last backup. For all tables in the backup descriptor, these spans must
	// completely cover each table's span. For example, if a table with ID 51 were
	// being backed up, then the span `/Table/5{1-2}` must be completely covered.
	Spans []cockroach_roachpb1.Span `protobuf:"bytes,3,rep,name=spans" json:"spans"`
	// IntroducedSpans are a subset of spans, set only when creating incremental
	// backups that cover spans not included in a previous backup. Spans contained
	// here are covered in the interval (0, startTime], which, in conjunction with
	// the coverage from (startTime, endTime] implied for all spans in Spans,
	// results in coverage from [0, endTime] for these spans.
	IntroducedSpans []cockroach_roachpb1.Span           `protobuf:"bytes,15,rep,name=introduced_spans,json=introducedSpans" json:"introduced_spans"`
	Files           []BackupDescriptor_File             `protobuf:"bytes,4,rep,name=files" json:"files"`
	Descriptors     []cockroach_sql_sqlbase1.Descriptor `protobuf:"bytes,5,rep,name=descriptors" json:"descriptors"`
	// databases in descriptors that have all tables also in descriptors.
	CompleteDbs   []github_com_cockroachdb_cockroach_pkg_sql_sqlbase.ID `protobuf:"varint,14,rep,packed,name=complete_dbs,json=completeDbs,casttype=github.com/cockroachdb/cockroach/pkg/sql/sqlbase.ID" json:"complete_dbs,omitempty"`
	EntryCounts   cockroach_roachpb3.BulkOpSummary                      `protobuf:"bytes,12,opt,name=entry_counts,json=entryCounts" json:"entry_counts"`
	Dir           cockroach_roachpb3.ExportStorage                      `protobuf:"bytes,7,opt,name=dir" json:"dir"`
	FormatVersion uint32                                                `protobuf:"varint,8,opt,name=format_version,json=formatVersion,proto3" json:"format_version,omitempty"`
	ClusterID     github_com_cockroachdb_cockroach_pkg_util_uuid.UUID   `protobuf:"bytes,9,opt,name=cluster_id,json=clusterId,proto3,customtype=github.com/cockroachdb/cockroach/pkg/util/uuid.UUID" json:"cluster_id"`
	// node_id and build_info of the gateway node (which writes the descriptor).
	NodeID    github_com_cockroachdb_cockroach_pkg_roachpb.NodeID `protobuf:"varint,10,opt,name=node_id,json=nodeId,proto3,casttype=github.com/cockroachdb/cockroach/pkg/roachpb.NodeID" json:"node_id,omitempty"`
	BuildInfo cockroach_build.Info                                `protobuf:"bytes,11,opt,name=build_info,json=buildInfo" json:"build_info"`
}

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

// BackupDescriptor_File represents a file that contains the diff for a key
// range between two timestamps.
type BackupDescriptor_File struct {
	Span        cockroach_roachpb1.Span          `protobuf:"bytes,1,opt,name=span" json:"span"`
	Path        string                           `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty"`
	Sha512      []byte                           `protobuf:"bytes,4,opt,name=sha512,proto3" json:"sha512,omitempty"`
	EntryCounts cockroach_roachpb3.BulkOpSummary `protobuf:"bytes,6,opt,name=entry_counts,json=entryCounts" json:"entry_counts"`
	// StartTime 0 is sometimes legitimately used, so it is only meaningful if
	// EndTime is non-zero, otherwise both just inherit from containing backup.
	StartTime cockroach_util_hlc.Timestamp `protobuf:"bytes,7,opt,name=start_time,json=startTime" json:"start_time"`
	EndTime   cockroach_util_hlc.Timestamp `protobuf:"bytes,8,opt,name=end_time,json=endTime" json:"end_time"`
}

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

func init() {
	proto.RegisterType((*BackupDescriptor)(nil), "cockroach.ccl.sqlccl.BackupDescriptor")
	proto.RegisterType((*BackupDescriptor_File)(nil), "cockroach.ccl.sqlccl.BackupDescriptor.File")
	proto.RegisterEnum("cockroach.ccl.sqlccl.MVCCFilter", MVCCFilter_name, MVCCFilter_value)
}
func (m *BackupDescriptor) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalTo(dAtA)
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *BackupDescriptor) MarshalTo(dAtA []byte) (int, error) {
	var i int
	_ = i
	var l int
	_ = l
	dAtA[i] = 0xa
	i++
	i = encodeVarintBackup(dAtA, i, uint64(m.StartTime.Size()))
	n1, err := m.StartTime.MarshalTo(dAtA[i:])
	if err != nil {
		return 0, err
	}
	i += n1
	dAtA[i] = 0x12
	i++
	i = encodeVarintBackup(dAtA, i, uint64(m.EndTime.Size()))
	n2, err := m.EndTime.MarshalTo(dAtA[i:])
	if err != nil {
		return 0, err
	}
	i += n2
	if len(m.Spans) > 0 {
		for _, msg := range m.Spans {
			dAtA[i] = 0x1a
			i++
			i = encodeVarintBackup(dAtA, i, uint64(msg.Size()))
			n, err := msg.MarshalTo(dAtA[i:])
			if err != nil {
				return 0, err
			}
			i += n
		}
	}
	if len(m.Files) > 0 {
		for _, msg := range m.Files {
			dAtA[i] = 0x22
			i++
			i = encodeVarintBackup(dAtA, i, uint64(msg.Size()))
			n, err := msg.MarshalTo(dAtA[i:])
			if err != nil {
				return 0, err
			}
			i += n
		}
	}
	if len(m.Descriptors) > 0 {
		for _, msg := range m.Descriptors {
			dAtA[i] = 0x2a
			i++
			i = encodeVarintBackup(dAtA, i, uint64(msg.Size()))
			n, err := msg.MarshalTo(dAtA[i:])
			if err != nil {
				return 0, err
			}
			i += n
		}
	}
	dAtA[i] = 0x3a
	i++
	i = encodeVarintBackup(dAtA, i, uint64(m.Dir.Size()))
	n3, err := m.Dir.MarshalTo(dAtA[i:])
	if err != nil {
		return 0, err
	}
	i += n3
	if m.FormatVersion != 0 {
		dAtA[i] = 0x40
		i++
		i = encodeVarintBackup(dAtA, i, uint64(m.FormatVersion))
	}
	dAtA[i] = 0x4a
	i++
	i = encodeVarintBackup(dAtA, i, uint64(m.ClusterID.Size()))
	n4, err := m.ClusterID.MarshalTo(dAtA[i:])
	if err != nil {
		return 0, err
	}
	i += n4
	if m.NodeID != 0 {
		dAtA[i] = 0x50
		i++
		i = encodeVarintBackup(dAtA, i, uint64(m.NodeID))
	}
	dAtA[i] = 0x5a
	i++
	i = encodeVarintBackup(dAtA, i, uint64(m.BuildInfo.Size()))
	n5, err := m.BuildInfo.MarshalTo(dAtA[i:])
	if err != nil {
		return 0, err
	}
	i += n5
	dAtA[i] = 0x62
	i++
	i = encodeVarintBackup(dAtA, i, uint64(m.EntryCounts.Size()))
	n6, err := m.EntryCounts.MarshalTo(dAtA[i:])
	if err != nil {
		return 0, err
	}
	i += n6
	if m.MVCCFilter != 0 {
		dAtA[i] = 0x68
		i++
		i = encodeVarintBackup(dAtA, i, uint64(m.MVCCFilter))
	}
	if len(m.CompleteDbs) > 0 {
		dAtA8 := make([]byte, len(m.CompleteDbs)*10)
		var j7 int
		for _, num := range m.CompleteDbs {
			for num >= 1<<7 {
				dAtA8[j7] = uint8(uint64(num)&0x7f | 0x80)
				num >>= 7
				j7++
			}
			dAtA8[j7] = uint8(num)
			j7++
		}
		dAtA[i] = 0x72
		i++
		i = encodeVarintBackup(dAtA, i, uint64(j7))
		i += copy(dAtA[i:], dAtA8[:j7])
	}
	if len(m.IntroducedSpans) > 0 {
		for _, msg := range m.IntroducedSpans {
			dAtA[i] = 0x7a
			i++
			i = encodeVarintBackup(dAtA, i, uint64(msg.Size()))
			n, err := msg.MarshalTo(dAtA[i:])
			if err != nil {
				return 0, err
			}
			i += n
		}
	}
	return i, nil
}

func (m *BackupDescriptor_File) Marshal() (dAtA []byte, err error) {
	size := m.Size()
	dAtA = make([]byte, size)
	n, err := m.MarshalTo(dAtA)
	if err != nil {
		return nil, err
	}
	return dAtA[:n], nil
}

func (m *BackupDescriptor_File) MarshalTo(dAtA []byte) (int, error) {
	var i int
	_ = i
	var l int
	_ = l
	dAtA[i] = 0xa
	i++
	i = encodeVarintBackup(dAtA, i, uint64(m.Span.Size()))
	n9, err := m.Span.MarshalTo(dAtA[i:])
	if err != nil {
		return 0, err
	}
	i += n9
	if len(m.Path) > 0 {
		dAtA[i] = 0x12
		i++
		i = encodeVarintBackup(dAtA, i, uint64(len(m.Path)))
		i += copy(dAtA[i:], m.Path)
	}
	if len(m.Sha512) > 0 {
		dAtA[i] = 0x22
		i++
		i = encodeVarintBackup(dAtA, i, uint64(len(m.Sha512)))
		i += copy(dAtA[i:], m.Sha512)
	}
	dAtA[i] = 0x32
	i++
	i = encodeVarintBackup(dAtA, i, uint64(m.EntryCounts.Size()))
	n10, err := m.EntryCounts.MarshalTo(dAtA[i:])
	if err != nil {
		return 0, err
	}
	i += n10
	dAtA[i] = 0x3a
	i++
	i = encodeVarintBackup(dAtA, i, uint64(m.StartTime.Size()))
	n11, err := m.StartTime.MarshalTo(dAtA[i:])
	if err != nil {
		return 0, err
	}
	i += n11
	dAtA[i] = 0x42
	i++
	i = encodeVarintBackup(dAtA, i, uint64(m.EndTime.Size()))
	n12, err := m.EndTime.MarshalTo(dAtA[i:])
	if err != nil {
		return 0, err
	}
	i += n12
	return i, nil
}

func encodeVarintBackup(dAtA []byte, offset int, v uint64) int {
	for v >= 1<<7 {
		dAtA[offset] = uint8(v&0x7f | 0x80)
		v >>= 7
		offset++
	}
	dAtA[offset] = uint8(v)
	return offset + 1
}
func (m *BackupDescriptor) Size() (n int) {
	var l int
	_ = l
	l = m.StartTime.Size()
	n += 1 + l + sovBackup(uint64(l))
	l = m.EndTime.Size()
	n += 1 + l + sovBackup(uint64(l))
	if len(m.Spans) > 0 {
		for _, e := range m.Spans {
			l = e.Size()
			n += 1 + l + sovBackup(uint64(l))
		}
	}
	if len(m.Files) > 0 {
		for _, e := range m.Files {
			l = e.Size()
			n += 1 + l + sovBackup(uint64(l))
		}
	}
	if len(m.Descriptors) > 0 {
		for _, e := range m.Descriptors {
			l = e.Size()
			n += 1 + l + sovBackup(uint64(l))
		}
	}
	l = m.Dir.Size()
	n += 1 + l + sovBackup(uint64(l))
	if m.FormatVersion != 0 {
		n += 1 + sovBackup(uint64(m.FormatVersion))
	}
	l = m.ClusterID.Size()
	n += 1 + l + sovBackup(uint64(l))
	if m.NodeID != 0 {
		n += 1 + sovBackup(uint64(m.NodeID))
	}
	l = m.BuildInfo.Size()
	n += 1 + l + sovBackup(uint64(l))
	l = m.EntryCounts.Size()
	n += 1 + l + sovBackup(uint64(l))
	if m.MVCCFilter != 0 {
		n += 1 + sovBackup(uint64(m.MVCCFilter))
	}
	if len(m.CompleteDbs) > 0 {
		l = 0
		for _, e := range m.CompleteDbs {
			l += sovBackup(uint64(e))
		}
		n += 1 + sovBackup(uint64(l)) + l
	}
	if len(m.IntroducedSpans) > 0 {
		for _, e := range m.IntroducedSpans {
			l = e.Size()
			n += 1 + l + sovBackup(uint64(l))
		}
	}
	return n
}

func (m *BackupDescriptor_File) Size() (n int) {
	var l int
	_ = l
	l = m.Span.Size()
	n += 1 + l + sovBackup(uint64(l))
	l = len(m.Path)
	if l > 0 {
		n += 1 + l + sovBackup(uint64(l))
	}
	l = len(m.Sha512)
	if l > 0 {
		n += 1 + l + sovBackup(uint64(l))
	}
	l = m.EntryCounts.Size()
	n += 1 + l + sovBackup(uint64(l))
	l = m.StartTime.Size()
	n += 1 + l + sovBackup(uint64(l))
	l = m.EndTime.Size()
	n += 1 + l + sovBackup(uint64(l))
	return n
}

func sovBackup(x uint64) (n int) {
	for {
		n++
		x >>= 7
		if x == 0 {
			break
		}
	}
	return n
}
func sozBackup(x uint64) (n int) {
	return sovBackup(uint64((x << 1) ^ uint64((int64(x) >> 63))))
}
func (m *BackupDescriptor) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowBackup
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= (uint64(b) & 0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: BackupDescriptor: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: BackupDescriptor: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field StartTime", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowBackup
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= (int(b) & 0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthBackup
			}
			postIndex := iNdEx + msglen
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if err := m.StartTime.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field EndTime", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowBackup
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= (int(b) & 0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthBackup
			}
			postIndex := iNdEx + msglen
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if err := m.EndTime.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 3:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Spans", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowBackup
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= (int(b) & 0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthBackup
			}
			postIndex := iNdEx + msglen
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Spans = append(m.Spans, cockroach_roachpb1.Span{})
			if err := m.Spans[len(m.Spans)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 4:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Files", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowBackup
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= (int(b) & 0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthBackup
			}
			postIndex := iNdEx + msglen
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Files = append(m.Files, BackupDescriptor_File{})
			if err := m.Files[len(m.Files)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 5:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Descriptors", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowBackup
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= (int(b) & 0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthBackup
			}
			postIndex := iNdEx + msglen
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Descriptors = append(m.Descriptors, cockroach_sql_sqlbase1.Descriptor{})
			if err := m.Descriptors[len(m.Descriptors)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 7:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Dir", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowBackup
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= (int(b) & 0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthBackup
			}
			postIndex := iNdEx + msglen
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if err := m.Dir.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 8:
			if wireType != 0 {
				return fmt.Errorf("proto: wrong wireType = %d for field FormatVersion", wireType)
			}
			m.FormatVersion = 0
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowBackup
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				m.FormatVersion |= (uint32(b) & 0x7F) << shift
				if b < 0x80 {
					break
				}
			}
		case 9:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field ClusterID", wireType)
			}
			var byteLen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowBackup
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				byteLen |= (int(b) & 0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if byteLen < 0 {
				return ErrInvalidLengthBackup
			}
			postIndex := iNdEx + byteLen
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if err := m.ClusterID.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 10:
			if wireType != 0 {
				return fmt.Errorf("proto: wrong wireType = %d for field NodeID", wireType)
			}
			m.NodeID = 0
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowBackup
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				m.NodeID |= (github_com_cockroachdb_cockroach_pkg_roachpb.NodeID(b) & 0x7F) << shift
				if b < 0x80 {
					break
				}
			}
		case 11:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field BuildInfo", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowBackup
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= (int(b) & 0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthBackup
			}
			postIndex := iNdEx + msglen
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if err := m.BuildInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 12:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field EntryCounts", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowBackup
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= (int(b) & 0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthBackup
			}
			postIndex := iNdEx + msglen
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if err := m.EntryCounts.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 13:
			if wireType != 0 {
				return fmt.Errorf("proto: wrong wireType = %d for field MVCCFilter", wireType)
			}
			m.MVCCFilter = 0
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowBackup
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				m.MVCCFilter |= (MVCCFilter(b) & 0x7F) << shift
				if b < 0x80 {
					break
				}
			}
		case 14:
			if wireType == 0 {
				var v github_com_cockroachdb_cockroach_pkg_sql_sqlbase.ID
				for shift := uint(0); ; shift += 7 {
					if shift >= 64 {
						return ErrIntOverflowBackup
					}
					if iNdEx >= l {
						return io.ErrUnexpectedEOF
					}
					b := dAtA[iNdEx]
					iNdEx++
					v |= (github_com_cockroachdb_cockroach_pkg_sql_sqlbase.ID(b) & 0x7F) << shift
					if b < 0x80 {
						break
					}
				}
				m.CompleteDbs = append(m.CompleteDbs, v)
			} else if wireType == 2 {
				var packedLen int
				for shift := uint(0); ; shift += 7 {
					if shift >= 64 {
						return ErrIntOverflowBackup
					}
					if iNdEx >= l {
						return io.ErrUnexpectedEOF
					}
					b := dAtA[iNdEx]
					iNdEx++
					packedLen |= (int(b) & 0x7F) << shift
					if b < 0x80 {
						break
					}
				}
				if packedLen < 0 {
					return ErrInvalidLengthBackup
				}
				postIndex := iNdEx + packedLen
				if postIndex > l {
					return io.ErrUnexpectedEOF
				}
				for iNdEx < postIndex {
					var v github_com_cockroachdb_cockroach_pkg_sql_sqlbase.ID
					for shift := uint(0); ; shift += 7 {
						if shift >= 64 {
							return ErrIntOverflowBackup
						}
						if iNdEx >= l {
							return io.ErrUnexpectedEOF
						}
						b := dAtA[iNdEx]
						iNdEx++
						v |= (github_com_cockroachdb_cockroach_pkg_sql_sqlbase.ID(b) & 0x7F) << shift
						if b < 0x80 {
							break
						}
					}
					m.CompleteDbs = append(m.CompleteDbs, v)
				}
			} else {
				return fmt.Errorf("proto: wrong wireType = %d for field CompleteDbs", wireType)
			}
		case 15:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field IntroducedSpans", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowBackup
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= (int(b) & 0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthBackup
			}
			postIndex := iNdEx + msglen
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.IntroducedSpans = append(m.IntroducedSpans, cockroach_roachpb1.Span{})
			if err := m.IntroducedSpans[len(m.IntroducedSpans)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipBackup(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if skippy < 0 {
				return ErrInvalidLengthBackup
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func (m *BackupDescriptor_File) Unmarshal(dAtA []byte) error {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		preIndex := iNdEx
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return ErrIntOverflowBackup
			}
			if iNdEx >= l {
				return io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= (uint64(b) & 0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		fieldNum := int32(wire >> 3)
		wireType := int(wire & 0x7)
		if wireType == 4 {
			return fmt.Errorf("proto: File: wiretype end group for non-group")
		}
		if fieldNum <= 0 {
			return fmt.Errorf("proto: File: illegal tag %d (wire type %d)", fieldNum, wire)
		}
		switch fieldNum {
		case 1:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Span", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowBackup
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= (int(b) & 0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthBackup
			}
			postIndex := iNdEx + msglen
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if err := m.Span.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 2:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType)
			}
			var stringLen uint64
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowBackup
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				stringLen |= (uint64(b) & 0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			intStringLen := int(stringLen)
			if intStringLen < 0 {
				return ErrInvalidLengthBackup
			}
			postIndex := iNdEx + intStringLen
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Path = string(dAtA[iNdEx:postIndex])
			iNdEx = postIndex
		case 4:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field Sha512", wireType)
			}
			var byteLen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowBackup
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				byteLen |= (int(b) & 0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if byteLen < 0 {
				return ErrInvalidLengthBackup
			}
			postIndex := iNdEx + byteLen
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			m.Sha512 = append(m.Sha512[:0], dAtA[iNdEx:postIndex]...)
			if m.Sha512 == nil {
				m.Sha512 = []byte{}
			}
			iNdEx = postIndex
		case 6:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field EntryCounts", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowBackup
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= (int(b) & 0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthBackup
			}
			postIndex := iNdEx + msglen
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if err := m.EntryCounts.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 7:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field StartTime", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowBackup
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= (int(b) & 0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthBackup
			}
			postIndex := iNdEx + msglen
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if err := m.StartTime.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		case 8:
			if wireType != 2 {
				return fmt.Errorf("proto: wrong wireType = %d for field EndTime", wireType)
			}
			var msglen int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return ErrIntOverflowBackup
				}
				if iNdEx >= l {
					return io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				msglen |= (int(b) & 0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			if msglen < 0 {
				return ErrInvalidLengthBackup
			}
			postIndex := iNdEx + msglen
			if postIndex > l {
				return io.ErrUnexpectedEOF
			}
			if err := m.EndTime.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
				return err
			}
			iNdEx = postIndex
		default:
			iNdEx = preIndex
			skippy, err := skipBackup(dAtA[iNdEx:])
			if err != nil {
				return err
			}
			if skippy < 0 {
				return ErrInvalidLengthBackup
			}
			if (iNdEx + skippy) > l {
				return io.ErrUnexpectedEOF
			}
			iNdEx += skippy
		}
	}

	if iNdEx > l {
		return io.ErrUnexpectedEOF
	}
	return nil
}
func skipBackup(dAtA []byte) (n int, err error) {
	l := len(dAtA)
	iNdEx := 0
	for iNdEx < l {
		var wire uint64
		for shift := uint(0); ; shift += 7 {
			if shift >= 64 {
				return 0, ErrIntOverflowBackup
			}
			if iNdEx >= l {
				return 0, io.ErrUnexpectedEOF
			}
			b := dAtA[iNdEx]
			iNdEx++
			wire |= (uint64(b) & 0x7F) << shift
			if b < 0x80 {
				break
			}
		}
		wireType := int(wire & 0x7)
		switch wireType {
		case 0:
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return 0, ErrIntOverflowBackup
				}
				if iNdEx >= l {
					return 0, io.ErrUnexpectedEOF
				}
				iNdEx++
				if dAtA[iNdEx-1] < 0x80 {
					break
				}
			}
			return iNdEx, nil
		case 1:
			iNdEx += 8
			return iNdEx, nil
		case 2:
			var length int
			for shift := uint(0); ; shift += 7 {
				if shift >= 64 {
					return 0, ErrIntOverflowBackup
				}
				if iNdEx >= l {
					return 0, io.ErrUnexpectedEOF
				}
				b := dAtA[iNdEx]
				iNdEx++
				length |= (int(b) & 0x7F) << shift
				if b < 0x80 {
					break
				}
			}
			iNdEx += length
			if length < 0 {
				return 0, ErrInvalidLengthBackup
			}
			return iNdEx, nil
		case 3:
			for {
				var innerWire uint64
				var start int = iNdEx
				for shift := uint(0); ; shift += 7 {
					if shift >= 64 {
						return 0, ErrIntOverflowBackup
					}
					if iNdEx >= l {
						return 0, io.ErrUnexpectedEOF
					}
					b := dAtA[iNdEx]
					iNdEx++
					innerWire |= (uint64(b) & 0x7F) << shift
					if b < 0x80 {
						break
					}
				}
				innerWireType := int(innerWire & 0x7)
				if innerWireType == 4 {
					break
				}
				next, err := skipBackup(dAtA[start:])
				if err != nil {
					return 0, err
				}
				iNdEx = start + next
			}
			return iNdEx, nil
		case 4:
			return iNdEx, nil
		case 5:
			iNdEx += 4
			return iNdEx, nil
		default:
			return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
		}
	}
	panic("unreachable")
}

var (
	ErrInvalidLengthBackup = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowBackup   = fmt.Errorf("proto: integer overflow")
)

func init() { proto.RegisterFile("ccl/sqlccl/backup.proto", fileDescriptorBackup) }

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