github.com/cockroachdb/cockroach@v20.2.0-alpha.1+incompatible/pkg/sql/sqlbase/structured.pb.go (about)

     1  // Code generated by protoc-gen-gogo. DO NOT EDIT.
     2  // source: sql/sqlbase/structured.proto
     3  
     4  package sqlbase
     5  
     6  import proto "github.com/gogo/protobuf/proto"
     7  import fmt "fmt"
     8  import math "math"
     9  import geoindex "github.com/cockroachdb/cockroach/pkg/geo/geoindex"
    10  import types "github.com/cockroachdb/cockroach/pkg/sql/types"
    11  import hlc "github.com/cockroachdb/cockroach/pkg/util/hlc"
    12  
    13  import github_com_cockroachdb_cockroach_pkg_roachpb "github.com/cockroachdb/cockroach/pkg/roachpb"
    14  
    15  import bytes "bytes"
    16  
    17  import io "io"
    18  
    19  import github_com_gogo_protobuf_proto "github.com/gogo/protobuf/proto"
    20  
    21  // Reference imports to suppress errors if they are not otherwise used.
    22  var _ = proto.Marshal
    23  var _ = fmt.Errorf
    24  var _ = math.Inf
    25  
    26  // This is a compile-time assertion to ensure that this generated file
    27  // is compatible with the proto package it is being compiled against.
    28  // A compilation error at this line likely means your copy of the
    29  // proto package needs to be updated.
    30  const _ = proto.GoGoProtoPackageIsVersion2 // please upgrade the proto package
    31  
    32  type ConstraintValidity int32
    33  
    34  const (
    35  	// The constraint is valid for all rows.
    36  	ConstraintValidity_Validated ConstraintValidity = 0
    37  	// The constraint has not yet been validated for all rows (and will not be
    38  	// validated until VALIDATE CONSTRAINT is used).
    39  	ConstraintValidity_Unvalidated ConstraintValidity = 1
    40  	// The constraint was just added, but the validation for existing rows is not
    41  	// yet complete. If validation fails, the constraint will be dropped.
    42  	ConstraintValidity_Validating ConstraintValidity = 2
    43  	// The constraint is being dropped in the schema changer.
    44  	ConstraintValidity_Dropping ConstraintValidity = 3
    45  )
    46  
    47  var ConstraintValidity_name = map[int32]string{
    48  	0: "Validated",
    49  	1: "Unvalidated",
    50  	2: "Validating",
    51  	3: "Dropping",
    52  }
    53  var ConstraintValidity_value = map[string]int32{
    54  	"Validated":   0,
    55  	"Unvalidated": 1,
    56  	"Validating":  2,
    57  	"Dropping":    3,
    58  }
    59  
    60  func (x ConstraintValidity) Enum() *ConstraintValidity {
    61  	p := new(ConstraintValidity)
    62  	*p = x
    63  	return p
    64  }
    65  func (x ConstraintValidity) String() string {
    66  	return proto.EnumName(ConstraintValidity_name, int32(x))
    67  }
    68  func (x *ConstraintValidity) UnmarshalJSON(data []byte) error {
    69  	value, err := proto.UnmarshalJSONEnum(ConstraintValidity_value, data, "ConstraintValidity")
    70  	if err != nil {
    71  		return err
    72  	}
    73  	*x = ConstraintValidity(value)
    74  	return nil
    75  }
    76  func (ConstraintValidity) EnumDescriptor() ([]byte, []int) {
    77  	return fileDescriptor_structured_6e223c312147c376, []int{0}
    78  }
    79  
    80  type ForeignKeyReference_Action int32
    81  
    82  const (
    83  	ForeignKeyReference_NO_ACTION   ForeignKeyReference_Action = 0
    84  	ForeignKeyReference_RESTRICT    ForeignKeyReference_Action = 1
    85  	ForeignKeyReference_SET_NULL    ForeignKeyReference_Action = 2
    86  	ForeignKeyReference_SET_DEFAULT ForeignKeyReference_Action = 3
    87  	ForeignKeyReference_CASCADE     ForeignKeyReference_Action = 4
    88  )
    89  
    90  var ForeignKeyReference_Action_name = map[int32]string{
    91  	0: "NO_ACTION",
    92  	1: "RESTRICT",
    93  	2: "SET_NULL",
    94  	3: "SET_DEFAULT",
    95  	4: "CASCADE",
    96  }
    97  var ForeignKeyReference_Action_value = map[string]int32{
    98  	"NO_ACTION":   0,
    99  	"RESTRICT":    1,
   100  	"SET_NULL":    2,
   101  	"SET_DEFAULT": 3,
   102  	"CASCADE":     4,
   103  }
   104  
   105  func (x ForeignKeyReference_Action) Enum() *ForeignKeyReference_Action {
   106  	p := new(ForeignKeyReference_Action)
   107  	*p = x
   108  	return p
   109  }
   110  func (x ForeignKeyReference_Action) MarshalJSON() ([]byte, error) {
   111  	return proto.MarshalJSONEnum(ForeignKeyReference_Action_name, int32(x))
   112  }
   113  func (x *ForeignKeyReference_Action) UnmarshalJSON(data []byte) error {
   114  	value, err := proto.UnmarshalJSONEnum(ForeignKeyReference_Action_value, data, "ForeignKeyReference_Action")
   115  	if err != nil {
   116  		return err
   117  	}
   118  	*x = ForeignKeyReference_Action(value)
   119  	return nil
   120  }
   121  func (ForeignKeyReference_Action) EnumDescriptor() ([]byte, []int) {
   122  	return fileDescriptor_structured_6e223c312147c376, []int{0, 0}
   123  }
   124  
   125  // Match is the algorithm used to compare composite keys.
   126  type ForeignKeyReference_Match int32
   127  
   128  const (
   129  	ForeignKeyReference_SIMPLE  ForeignKeyReference_Match = 0
   130  	ForeignKeyReference_FULL    ForeignKeyReference_Match = 1
   131  	ForeignKeyReference_PARTIAL ForeignKeyReference_Match = 2
   132  )
   133  
   134  var ForeignKeyReference_Match_name = map[int32]string{
   135  	0: "SIMPLE",
   136  	1: "FULL",
   137  	2: "PARTIAL",
   138  }
   139  var ForeignKeyReference_Match_value = map[string]int32{
   140  	"SIMPLE":  0,
   141  	"FULL":    1,
   142  	"PARTIAL": 2,
   143  }
   144  
   145  func (x ForeignKeyReference_Match) Enum() *ForeignKeyReference_Match {
   146  	p := new(ForeignKeyReference_Match)
   147  	*p = x
   148  	return p
   149  }
   150  func (x ForeignKeyReference_Match) MarshalJSON() ([]byte, error) {
   151  	return proto.MarshalJSONEnum(ForeignKeyReference_Match_name, int32(x))
   152  }
   153  func (x *ForeignKeyReference_Match) UnmarshalJSON(data []byte) error {
   154  	value, err := proto.UnmarshalJSONEnum(ForeignKeyReference_Match_value, data, "ForeignKeyReference_Match")
   155  	if err != nil {
   156  		return err
   157  	}
   158  	*x = ForeignKeyReference_Match(value)
   159  	return nil
   160  }
   161  func (ForeignKeyReference_Match) EnumDescriptor() ([]byte, []int) {
   162  	return fileDescriptor_structured_6e223c312147c376, []int{0, 1}
   163  }
   164  
   165  // The direction of a column in the index.
   166  type IndexDescriptor_Direction int32
   167  
   168  const (
   169  	IndexDescriptor_ASC  IndexDescriptor_Direction = 0
   170  	IndexDescriptor_DESC IndexDescriptor_Direction = 1
   171  )
   172  
   173  var IndexDescriptor_Direction_name = map[int32]string{
   174  	0: "ASC",
   175  	1: "DESC",
   176  }
   177  var IndexDescriptor_Direction_value = map[string]int32{
   178  	"ASC":  0,
   179  	"DESC": 1,
   180  }
   181  
   182  func (x IndexDescriptor_Direction) Enum() *IndexDescriptor_Direction {
   183  	p := new(IndexDescriptor_Direction)
   184  	*p = x
   185  	return p
   186  }
   187  func (x IndexDescriptor_Direction) String() string {
   188  	return proto.EnumName(IndexDescriptor_Direction_name, int32(x))
   189  }
   190  func (x *IndexDescriptor_Direction) UnmarshalJSON(data []byte) error {
   191  	value, err := proto.UnmarshalJSONEnum(IndexDescriptor_Direction_value, data, "IndexDescriptor_Direction")
   192  	if err != nil {
   193  		return err
   194  	}
   195  	*x = IndexDescriptor_Direction(value)
   196  	return nil
   197  }
   198  func (IndexDescriptor_Direction) EnumDescriptor() ([]byte, []int) {
   199  	return fileDescriptor_structured_6e223c312147c376, []int{7, 0}
   200  }
   201  
   202  // The type of the index.
   203  type IndexDescriptor_Type int32
   204  
   205  const (
   206  	IndexDescriptor_FORWARD  IndexDescriptor_Type = 0
   207  	IndexDescriptor_INVERTED IndexDescriptor_Type = 1
   208  )
   209  
   210  var IndexDescriptor_Type_name = map[int32]string{
   211  	0: "FORWARD",
   212  	1: "INVERTED",
   213  }
   214  var IndexDescriptor_Type_value = map[string]int32{
   215  	"FORWARD":  0,
   216  	"INVERTED": 1,
   217  }
   218  
   219  func (x IndexDescriptor_Type) Enum() *IndexDescriptor_Type {
   220  	p := new(IndexDescriptor_Type)
   221  	*p = x
   222  	return p
   223  }
   224  func (x IndexDescriptor_Type) String() string {
   225  	return proto.EnumName(IndexDescriptor_Type_name, int32(x))
   226  }
   227  func (x *IndexDescriptor_Type) UnmarshalJSON(data []byte) error {
   228  	value, err := proto.UnmarshalJSONEnum(IndexDescriptor_Type_value, data, "IndexDescriptor_Type")
   229  	if err != nil {
   230  		return err
   231  	}
   232  	*x = IndexDescriptor_Type(value)
   233  	return nil
   234  }
   235  func (IndexDescriptor_Type) EnumDescriptor() ([]byte, []int) {
   236  	return fileDescriptor_structured_6e223c312147c376, []int{7, 1}
   237  }
   238  
   239  type ConstraintToUpdate_ConstraintType int32
   240  
   241  const (
   242  	ConstraintToUpdate_CHECK       ConstraintToUpdate_ConstraintType = 0
   243  	ConstraintToUpdate_FOREIGN_KEY ConstraintToUpdate_ConstraintType = 1
   244  	// NOT NULL constraints being added are represented by a dummy check
   245  	// constraint so that a multi-state schema change, including a bulk
   246  	// validation step, can occur. The check field contains the dummy
   247  	// constraint.
   248  	ConstraintToUpdate_NOT_NULL ConstraintToUpdate_ConstraintType = 2
   249  )
   250  
   251  var ConstraintToUpdate_ConstraintType_name = map[int32]string{
   252  	0: "CHECK",
   253  	1: "FOREIGN_KEY",
   254  	2: "NOT_NULL",
   255  }
   256  var ConstraintToUpdate_ConstraintType_value = map[string]int32{
   257  	"CHECK":       0,
   258  	"FOREIGN_KEY": 1,
   259  	"NOT_NULL":    2,
   260  }
   261  
   262  func (x ConstraintToUpdate_ConstraintType) Enum() *ConstraintToUpdate_ConstraintType {
   263  	p := new(ConstraintToUpdate_ConstraintType)
   264  	*p = x
   265  	return p
   266  }
   267  func (x ConstraintToUpdate_ConstraintType) String() string {
   268  	return proto.EnumName(ConstraintToUpdate_ConstraintType_name, int32(x))
   269  }
   270  func (x *ConstraintToUpdate_ConstraintType) UnmarshalJSON(data []byte) error {
   271  	value, err := proto.UnmarshalJSONEnum(ConstraintToUpdate_ConstraintType_value, data, "ConstraintToUpdate_ConstraintType")
   272  	if err != nil {
   273  		return err
   274  	}
   275  	*x = ConstraintToUpdate_ConstraintType(value)
   276  	return nil
   277  }
   278  func (ConstraintToUpdate_ConstraintType) EnumDescriptor() ([]byte, []int) {
   279  	return fileDescriptor_structured_6e223c312147c376, []int{8, 0}
   280  }
   281  
   282  // A descriptor within a mutation is unavailable for reads, writes
   283  // and deletes. It is only available for implicit (internal to
   284  // the database) writes and deletes depending on the state of the mutation.
   285  type DescriptorMutation_State int32
   286  
   287  const (
   288  	// Not used.
   289  	DescriptorMutation_UNKNOWN DescriptorMutation_State = 0
   290  	// Operations can use this invisible descriptor to implicitly
   291  	// delete entries.
   292  	// Column: A descriptor in this state is invisible to
   293  	// INSERT and UPDATE. DELETE must delete a column in this state.
   294  	// Index: A descriptor in this state is invisible to an INSERT.
   295  	// UPDATE must delete the old value of the index but doesn't write
   296  	// the new value. DELETE must delete the index.
   297  	//
   298  	// When deleting a descriptor, all descriptor related data
   299  	// (column or index data) can only be mass deleted once
   300  	// all the nodes have transitioned to the DELETE_ONLY state.
   301  	DescriptorMutation_DELETE_ONLY DescriptorMutation_State = 1
   302  	// Operations can use this invisible descriptor to implicitly
   303  	// write and delete entries.
   304  	// Column: INSERT will populate this column with the default
   305  	// value. UPDATE ignores this descriptor. DELETE must delete
   306  	// the column.
   307  	// Index: INSERT, UPDATE and DELETE treat this index like any
   308  	// other index.
   309  	//
   310  	// When adding a descriptor, all descriptor related data
   311  	// (column default or index data) can only be backfilled once
   312  	// all nodes have transitioned into the DELETE_AND_WRITE_ONLY state.
   313  	DescriptorMutation_DELETE_AND_WRITE_ONLY DescriptorMutation_State = 2
   314  )
   315  
   316  var DescriptorMutation_State_name = map[int32]string{
   317  	0: "UNKNOWN",
   318  	1: "DELETE_ONLY",
   319  	2: "DELETE_AND_WRITE_ONLY",
   320  }
   321  var DescriptorMutation_State_value = map[string]int32{
   322  	"UNKNOWN":               0,
   323  	"DELETE_ONLY":           1,
   324  	"DELETE_AND_WRITE_ONLY": 2,
   325  }
   326  
   327  func (x DescriptorMutation_State) Enum() *DescriptorMutation_State {
   328  	p := new(DescriptorMutation_State)
   329  	*p = x
   330  	return p
   331  }
   332  func (x DescriptorMutation_State) String() string {
   333  	return proto.EnumName(DescriptorMutation_State_name, int32(x))
   334  }
   335  func (x *DescriptorMutation_State) UnmarshalJSON(data []byte) error {
   336  	value, err := proto.UnmarshalJSONEnum(DescriptorMutation_State_value, data, "DescriptorMutation_State")
   337  	if err != nil {
   338  		return err
   339  	}
   340  	*x = DescriptorMutation_State(value)
   341  	return nil
   342  }
   343  func (DescriptorMutation_State) EnumDescriptor() ([]byte, []int) {
   344  	return fileDescriptor_structured_6e223c312147c376, []int{11, 0}
   345  }
   346  
   347  // Direction of mutation.
   348  type DescriptorMutation_Direction int32
   349  
   350  const (
   351  	// Not used.
   352  	DescriptorMutation_NONE DescriptorMutation_Direction = 0
   353  	// Descriptor is being added.
   354  	DescriptorMutation_ADD DescriptorMutation_Direction = 1
   355  	// Descriptor is being dropped.
   356  	DescriptorMutation_DROP DescriptorMutation_Direction = 2
   357  )
   358  
   359  var DescriptorMutation_Direction_name = map[int32]string{
   360  	0: "NONE",
   361  	1: "ADD",
   362  	2: "DROP",
   363  }
   364  var DescriptorMutation_Direction_value = map[string]int32{
   365  	"NONE": 0,
   366  	"ADD":  1,
   367  	"DROP": 2,
   368  }
   369  
   370  func (x DescriptorMutation_Direction) Enum() *DescriptorMutation_Direction {
   371  	p := new(DescriptorMutation_Direction)
   372  	*p = x
   373  	return p
   374  }
   375  func (x DescriptorMutation_Direction) String() string {
   376  	return proto.EnumName(DescriptorMutation_Direction_name, int32(x))
   377  }
   378  func (x *DescriptorMutation_Direction) UnmarshalJSON(data []byte) error {
   379  	value, err := proto.UnmarshalJSONEnum(DescriptorMutation_Direction_value, data, "DescriptorMutation_Direction")
   380  	if err != nil {
   381  		return err
   382  	}
   383  	*x = DescriptorMutation_Direction(value)
   384  	return nil
   385  }
   386  func (DescriptorMutation_Direction) EnumDescriptor() ([]byte, []int) {
   387  	return fileDescriptor_structured_6e223c312147c376, []int{11, 1}
   388  }
   389  
   390  // State is set if this TableDescriptor is in the process of being added or deleted.
   391  // A non-public table descriptor cannot be leased.
   392  // A schema changer observing DROP set will truncate the table and delete the
   393  // descriptor.
   394  // It is illegal to transition DROP to any other state.
   395  type TableDescriptor_State int32
   396  
   397  const (
   398  	// Not used.
   399  	TableDescriptor_PUBLIC TableDescriptor_State = 0
   400  	// Descriptor is being added.
   401  	TableDescriptor_ADD TableDescriptor_State = 1
   402  	// Descriptor is being dropped.
   403  	TableDescriptor_DROP TableDescriptor_State = 2
   404  	// Descriptor is offline (e.g. for bulk-ingestion). See offline_reason.
   405  	TableDescriptor_OFFLINE TableDescriptor_State = 3
   406  )
   407  
   408  var TableDescriptor_State_name = map[int32]string{
   409  	0: "PUBLIC",
   410  	1: "ADD",
   411  	2: "DROP",
   412  	3: "OFFLINE",
   413  }
   414  var TableDescriptor_State_value = map[string]int32{
   415  	"PUBLIC":  0,
   416  	"ADD":     1,
   417  	"DROP":    2,
   418  	"OFFLINE": 3,
   419  }
   420  
   421  func (x TableDescriptor_State) Enum() *TableDescriptor_State {
   422  	p := new(TableDescriptor_State)
   423  	*p = x
   424  	return p
   425  }
   426  func (x TableDescriptor_State) String() string {
   427  	return proto.EnumName(TableDescriptor_State_name, int32(x))
   428  }
   429  func (x *TableDescriptor_State) UnmarshalJSON(data []byte) error {
   430  	value, err := proto.UnmarshalJSONEnum(TableDescriptor_State_value, data, "TableDescriptor_State")
   431  	if err != nil {
   432  		return err
   433  	}
   434  	*x = TableDescriptor_State(value)
   435  	return nil
   436  }
   437  func (TableDescriptor_State) EnumDescriptor() ([]byte, []int) {
   438  	return fileDescriptor_structured_6e223c312147c376, []int{12, 0}
   439  }
   440  
   441  // AuditMode indicates which auditing actions to take when this table is used.
   442  type TableDescriptor_AuditMode int32
   443  
   444  const (
   445  	TableDescriptor_DISABLED  TableDescriptor_AuditMode = 0
   446  	TableDescriptor_READWRITE TableDescriptor_AuditMode = 1
   447  )
   448  
   449  var TableDescriptor_AuditMode_name = map[int32]string{
   450  	0: "DISABLED",
   451  	1: "READWRITE",
   452  }
   453  var TableDescriptor_AuditMode_value = map[string]int32{
   454  	"DISABLED":  0,
   455  	"READWRITE": 1,
   456  }
   457  
   458  func (x TableDescriptor_AuditMode) Enum() *TableDescriptor_AuditMode {
   459  	p := new(TableDescriptor_AuditMode)
   460  	*p = x
   461  	return p
   462  }
   463  func (x TableDescriptor_AuditMode) String() string {
   464  	return proto.EnumName(TableDescriptor_AuditMode_name, int32(x))
   465  }
   466  func (x *TableDescriptor_AuditMode) UnmarshalJSON(data []byte) error {
   467  	value, err := proto.UnmarshalJSONEnum(TableDescriptor_AuditMode_value, data, "TableDescriptor_AuditMode")
   468  	if err != nil {
   469  		return err
   470  	}
   471  	*x = TableDescriptor_AuditMode(value)
   472  	return nil
   473  }
   474  func (TableDescriptor_AuditMode) EnumDescriptor() ([]byte, []int) {
   475  	return fileDescriptor_structured_6e223c312147c376, []int{12, 1}
   476  }
   477  
   478  // Represents the kind of type that this type descriptor represents.
   479  type TypeDescriptor_Kind int32
   480  
   481  const (
   482  	// Represents a user defined enum type.
   483  	TypeDescriptor_ENUM TypeDescriptor_Kind = 0
   484  	// Represents a user defined type that is just an alias for another type.
   485  	// As of now, it is used only internally.
   486  	TypeDescriptor_ALIAS TypeDescriptor_Kind = 1
   487  )
   488  
   489  var TypeDescriptor_Kind_name = map[int32]string{
   490  	0: "ENUM",
   491  	1: "ALIAS",
   492  }
   493  var TypeDescriptor_Kind_value = map[string]int32{
   494  	"ENUM":  0,
   495  	"ALIAS": 1,
   496  }
   497  
   498  func (x TypeDescriptor_Kind) Enum() *TypeDescriptor_Kind {
   499  	p := new(TypeDescriptor_Kind)
   500  	*p = x
   501  	return p
   502  }
   503  func (x TypeDescriptor_Kind) String() string {
   504  	return proto.EnumName(TypeDescriptor_Kind_name, int32(x))
   505  }
   506  func (x *TypeDescriptor_Kind) UnmarshalJSON(data []byte) error {
   507  	value, err := proto.UnmarshalJSONEnum(TypeDescriptor_Kind_value, data, "TypeDescriptor_Kind")
   508  	if err != nil {
   509  		return err
   510  	}
   511  	*x = TypeDescriptor_Kind(value)
   512  	return nil
   513  }
   514  func (TypeDescriptor_Kind) EnumDescriptor() ([]byte, []int) {
   515  	return fileDescriptor_structured_6e223c312147c376, []int{14, 0}
   516  }
   517  
   518  // ForeignKeyReference is deprecated, replaced by ForeignKeyConstraint in v19.2
   519  // (though it is still possible for table descriptors on disk to have
   520  // ForeignKeyReferences).
   521  //
   522  // It is still used to describe interleavings (see
   523  // IndexDescriptor.InterleavedBy), for which it is a poor choice: only the Table
   524  // and Index fields are used, and the interleaving has nothing to do with
   525  // traditional foreign key references.
   526  type ForeignKeyReference struct {
   527  	Table    ID                 `protobuf:"varint,1,opt,name=table,casttype=ID" json:"table"`
   528  	Index    IndexID            `protobuf:"varint,2,opt,name=index,casttype=IndexID" json:"index"`
   529  	Name     string             `protobuf:"bytes,3,opt,name=name" json:"name"`
   530  	Validity ConstraintValidity `protobuf:"varint,4,opt,name=validity,enum=cockroach.sql.sqlbase.ConstraintValidity" json:"validity"`
   531  	// If this FK only uses a prefix of the columns in its index, we record how
   532  	// many to avoid spuriously counting the additional cols as used by this FK.
   533  	SharedPrefixLen int32                      `protobuf:"varint,5,opt,name=shared_prefix_len,json=sharedPrefixLen" json:"shared_prefix_len"`
   534  	OnDelete        ForeignKeyReference_Action `protobuf:"varint,6,opt,name=on_delete,json=onDelete,enum=cockroach.sql.sqlbase.ForeignKeyReference_Action" json:"on_delete"`
   535  	OnUpdate        ForeignKeyReference_Action `protobuf:"varint,7,opt,name=on_update,json=onUpdate,enum=cockroach.sql.sqlbase.ForeignKeyReference_Action" json:"on_update"`
   536  	// This is only important for composite keys. For all prior matches before
   537  	// the addition of this value, MATCH SIMPLE will be used.
   538  	Match ForeignKeyReference_Match `protobuf:"varint,8,opt,name=match,enum=cockroach.sql.sqlbase.ForeignKeyReference_Match" json:"match"`
   539  }
   540  
   541  func (m *ForeignKeyReference) Reset()         { *m = ForeignKeyReference{} }
   542  func (m *ForeignKeyReference) String() string { return proto.CompactTextString(m) }
   543  func (*ForeignKeyReference) ProtoMessage()    {}
   544  func (*ForeignKeyReference) Descriptor() ([]byte, []int) {
   545  	return fileDescriptor_structured_6e223c312147c376, []int{0}
   546  }
   547  func (m *ForeignKeyReference) XXX_Unmarshal(b []byte) error {
   548  	return m.Unmarshal(b)
   549  }
   550  func (m *ForeignKeyReference) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   551  	b = b[:cap(b)]
   552  	n, err := m.MarshalTo(b)
   553  	if err != nil {
   554  		return nil, err
   555  	}
   556  	return b[:n], nil
   557  }
   558  func (dst *ForeignKeyReference) XXX_Merge(src proto.Message) {
   559  	xxx_messageInfo_ForeignKeyReference.Merge(dst, src)
   560  }
   561  func (m *ForeignKeyReference) XXX_Size() int {
   562  	return m.Size()
   563  }
   564  func (m *ForeignKeyReference) XXX_DiscardUnknown() {
   565  	xxx_messageInfo_ForeignKeyReference.DiscardUnknown(m)
   566  }
   567  
   568  var xxx_messageInfo_ForeignKeyReference proto.InternalMessageInfo
   569  
   570  // ForeignKeyConstraint is the new (as of 19.2 and VersionTopLevelForeignKeys)
   571  // representation for foreign keys. It's stored on the TableDescriptor and is
   572  // designed to be agnostic to which indexes are available on both the origin
   573  // and referenced tables, so that the optimizer can have full freedom to choose
   574  // the best possible index to satisfy constraint checks at runtime.
   575  type ForeignKeyConstraint struct {
   576  	OriginTableID       ID                         `protobuf:"varint,1,opt,name=origin_table_id,json=originTableId,casttype=ID" json:"origin_table_id"`
   577  	OriginColumnIDs     []ColumnID                 `protobuf:"varint,2,rep,name=origin_column_ids,json=originColumnIds,casttype=ColumnID" json:"origin_column_ids,omitempty"`
   578  	ReferencedColumnIDs []ColumnID                 `protobuf:"varint,3,rep,name=referenced_column_ids,json=referencedColumnIds,casttype=ColumnID" json:"referenced_column_ids,omitempty"`
   579  	ReferencedTableID   ID                         `protobuf:"varint,4,opt,name=referenced_table_id,json=referencedTableId,casttype=ID" json:"referenced_table_id"`
   580  	Name                string                     `protobuf:"bytes,5,opt,name=name" json:"name"`
   581  	Validity            ConstraintValidity         `protobuf:"varint,6,opt,name=validity,enum=cockroach.sql.sqlbase.ConstraintValidity" json:"validity"`
   582  	OnDelete            ForeignKeyReference_Action `protobuf:"varint,7,opt,name=on_delete,json=onDelete,enum=cockroach.sql.sqlbase.ForeignKeyReference_Action" json:"on_delete"`
   583  	OnUpdate            ForeignKeyReference_Action `protobuf:"varint,8,opt,name=on_update,json=onUpdate,enum=cockroach.sql.sqlbase.ForeignKeyReference_Action" json:"on_update"`
   584  	// This is only important for composite keys. For all prior matches before
   585  	// the addition of this value, MATCH SIMPLE will be used.
   586  	Match ForeignKeyReference_Match `protobuf:"varint,9,opt,name=match,enum=cockroach.sql.sqlbase.ForeignKeyReference_Match" json:"match"`
   587  	// LegacyOriginIndex is the ID of the index used for the FK on the origin
   588  	// table. In versions 19.1 and earlier, foreign keys were represented by
   589  	// fields on the index that they use. In versions 19.2 and later, we preserve
   590  	// the semantics of the older FKs which were tied to indexes by specifying
   591  	// the index as a field on this proto, since the migration process to have
   592  	// top-level FK fields on the table descriptor requires two releases.
   593  	// In 20.1, these fields are no longer read, but must continue to be written
   594  	// to maintain compatibility in mixed 19.2/20.1 clusters. In 20.2 these fields
   595  	// can _finally_ be removed.
   596  	// * When using the foreign key constraint, do not read from these fields! *
   597  	LegacyOriginIndex IndexID `protobuf:"varint,10,opt,name=legacy_origin_index,json=legacyOriginIndex,casttype=IndexID" json:"legacy_origin_index"` // Deprecated: Do not use.
   598  	// LegacyReferencedIndex is the ID of the index used for the FK on the
   599  	// referenced side. See the comment for LegacyOriginIndex.
   600  	LegacyReferencedIndex IndexID `protobuf:"varint,11,opt,name=legacy_referenced_index,json=legacyReferencedIndex,casttype=IndexID" json:"legacy_referenced_index"` // Deprecated: Do not use.
   601  }
   602  
   603  func (m *ForeignKeyConstraint) Reset()         { *m = ForeignKeyConstraint{} }
   604  func (m *ForeignKeyConstraint) String() string { return proto.CompactTextString(m) }
   605  func (*ForeignKeyConstraint) ProtoMessage()    {}
   606  func (*ForeignKeyConstraint) Descriptor() ([]byte, []int) {
   607  	return fileDescriptor_structured_6e223c312147c376, []int{1}
   608  }
   609  func (m *ForeignKeyConstraint) XXX_Unmarshal(b []byte) error {
   610  	return m.Unmarshal(b)
   611  }
   612  func (m *ForeignKeyConstraint) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   613  	b = b[:cap(b)]
   614  	n, err := m.MarshalTo(b)
   615  	if err != nil {
   616  		return nil, err
   617  	}
   618  	return b[:n], nil
   619  }
   620  func (dst *ForeignKeyConstraint) XXX_Merge(src proto.Message) {
   621  	xxx_messageInfo_ForeignKeyConstraint.Merge(dst, src)
   622  }
   623  func (m *ForeignKeyConstraint) XXX_Size() int {
   624  	return m.Size()
   625  }
   626  func (m *ForeignKeyConstraint) XXX_DiscardUnknown() {
   627  	xxx_messageInfo_ForeignKeyConstraint.DiscardUnknown(m)
   628  }
   629  
   630  var xxx_messageInfo_ForeignKeyConstraint proto.InternalMessageInfo
   631  
   632  type ColumnDescriptor struct {
   633  	Name     string   `protobuf:"bytes,1,opt,name=name" json:"name"`
   634  	ID       ColumnID `protobuf:"varint,2,opt,name=id,casttype=ColumnID" json:"id"`
   635  	Type     *types.T `protobuf:"bytes,3,opt,name=type" json:"type,omitempty"`
   636  	Nullable bool     `protobuf:"varint,4,opt,name=nullable" json:"nullable"`
   637  	// Default expression to use to populate the column on insert if no
   638  	// value is provided. Note that it is not correct to use DefaultExpr
   639  	// as output to display to a user. User defined types within DefaultExpr
   640  	// have been serialized in a internal format. Instead, format the result
   641  	// of DeserializeTableDescExpr.
   642  	DefaultExpr *string `protobuf:"bytes,5,opt,name=default_expr,json=defaultExpr" json:"default_expr,omitempty"`
   643  	Hidden      bool    `protobuf:"varint,6,opt,name=hidden" json:"hidden"`
   644  	// Ids of sequences used in this column's DEFAULT expression, in calls to nextval().
   645  	UsesSequenceIds []ID `protobuf:"varint,10,rep,name=uses_sequence_ids,json=usesSequenceIds,casttype=ID" json:"uses_sequence_ids,omitempty"`
   646  	// Ids of sequences that the column owns.
   647  	OwnsSequenceIds []ID `protobuf:"varint,12,rep,name=owns_sequence_ids,json=ownsSequenceIds,casttype=ID" json:"owns_sequence_ids,omitempty"`
   648  	// Expression to use to compute the value of this column if this is a
   649  	// computed column. Note that it is not correct to use ComputeExpr
   650  	// as output to display to a user. User defined types within ComputeExpr
   651  	// have been serialized in a internal format. Instead, format the result
   652  	// of DeserializeTableDescExpr.
   653  	ComputeExpr *string `protobuf:"bytes,11,opt,name=compute_expr,json=computeExpr" json:"compute_expr,omitempty"`
   654  	// LogicalColumnID must be accessed through the accessor, since it is set
   655  	// lazily, it is incorrect to access it directly.
   656  	// LogicalColumnID represents a column's number in catalog tables.
   657  	// This only differs from ID when the Column order is swapped or
   658  	// the ColumnDescriptor must be remade while remaining visual ordering.
   659  	// This does not exist in TableDescriptors pre 20.2.
   660  	LogicalColumnID ColumnID `protobuf:"varint,13,opt,name=logical_id,json=logicalId,casttype=ColumnID" json:"logical_id"`
   661  	// Used to indicate column is used and dropped for ALTER COLUMN TYPE mutation.
   662  	AlterColumnTypeInProgress bool `protobuf:"varint,14,opt,name=alter_column_type_in_progress,json=alterColumnTypeInProgress" json:"alter_column_type_in_progress"`
   663  }
   664  
   665  func (m *ColumnDescriptor) Reset()         { *m = ColumnDescriptor{} }
   666  func (m *ColumnDescriptor) String() string { return proto.CompactTextString(m) }
   667  func (*ColumnDescriptor) ProtoMessage()    {}
   668  func (*ColumnDescriptor) Descriptor() ([]byte, []int) {
   669  	return fileDescriptor_structured_6e223c312147c376, []int{2}
   670  }
   671  func (m *ColumnDescriptor) XXX_Unmarshal(b []byte) error {
   672  	return m.Unmarshal(b)
   673  }
   674  func (m *ColumnDescriptor) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   675  	b = b[:cap(b)]
   676  	n, err := m.MarshalTo(b)
   677  	if err != nil {
   678  		return nil, err
   679  	}
   680  	return b[:n], nil
   681  }
   682  func (dst *ColumnDescriptor) XXX_Merge(src proto.Message) {
   683  	xxx_messageInfo_ColumnDescriptor.Merge(dst, src)
   684  }
   685  func (m *ColumnDescriptor) XXX_Size() int {
   686  	return m.Size()
   687  }
   688  func (m *ColumnDescriptor) XXX_DiscardUnknown() {
   689  	xxx_messageInfo_ColumnDescriptor.DiscardUnknown(m)
   690  }
   691  
   692  var xxx_messageInfo_ColumnDescriptor proto.InternalMessageInfo
   693  
   694  // ColumnFamilyDescriptor is set of columns stored together in one kv entry.
   695  // For more information, look at `docs/tech-notes/encoding.md#value-encoding`.
   696  type ColumnFamilyDescriptor struct {
   697  	Name string `protobuf:"bytes,1,opt,name=name" json:"name"`
   698  	// Column family 0 is *always* included in k/v pairs for a row. This makes
   699  	// sure that rows will all NULL values still have a k/v pair. When performing
   700  	// optimizations involving column families, ensure that column family 0
   701  	// is scanned if the row may have nulls.
   702  	ID FamilyID `protobuf:"varint,2,opt,name=id,casttype=FamilyID" json:"id"`
   703  	// A list of column names of which the family is comprised. This list
   704  	// parallels the column_ids list. If duplicating the storage of the column
   705  	// names here proves to be prohibitive, we could clear this field before
   706  	// saving and reconstruct it after loading.
   707  	ColumnNames []string `protobuf:"bytes,3,rep,name=column_names,json=columnNames" json:"column_names,omitempty"`
   708  	// A list of column ids of which the family is comprised. This list parallels
   709  	// the column_names list.
   710  	ColumnIDs []ColumnID `protobuf:"varint,4,rep,name=column_ids,json=columnIds,casttype=ColumnID" json:"column_ids,omitempty"`
   711  	// If nonzero, the column involved in the single column optimization.
   712  	//
   713  	// Families store columns in a ValueType_TUPLE as repeated <columnID><data>
   714  	// entries. As a space optimization and for backward compatibility, a single
   715  	// column is written without the column id prefix. Because more columns could
   716  	// be added, it would be ambiguous which column was stored when read back in,
   717  	// so this field supplies it.
   718  	DefaultColumnID ColumnID `protobuf:"varint,5,opt,name=default_column_id,json=defaultColumnId,casttype=ColumnID" json:"default_column_id"`
   719  }
   720  
   721  func (m *ColumnFamilyDescriptor) Reset()         { *m = ColumnFamilyDescriptor{} }
   722  func (m *ColumnFamilyDescriptor) String() string { return proto.CompactTextString(m) }
   723  func (*ColumnFamilyDescriptor) ProtoMessage()    {}
   724  func (*ColumnFamilyDescriptor) Descriptor() ([]byte, []int) {
   725  	return fileDescriptor_structured_6e223c312147c376, []int{3}
   726  }
   727  func (m *ColumnFamilyDescriptor) XXX_Unmarshal(b []byte) error {
   728  	return m.Unmarshal(b)
   729  }
   730  func (m *ColumnFamilyDescriptor) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   731  	b = b[:cap(b)]
   732  	n, err := m.MarshalTo(b)
   733  	if err != nil {
   734  		return nil, err
   735  	}
   736  	return b[:n], nil
   737  }
   738  func (dst *ColumnFamilyDescriptor) XXX_Merge(src proto.Message) {
   739  	xxx_messageInfo_ColumnFamilyDescriptor.Merge(dst, src)
   740  }
   741  func (m *ColumnFamilyDescriptor) XXX_Size() int {
   742  	return m.Size()
   743  }
   744  func (m *ColumnFamilyDescriptor) XXX_DiscardUnknown() {
   745  	xxx_messageInfo_ColumnFamilyDescriptor.DiscardUnknown(m)
   746  }
   747  
   748  var xxx_messageInfo_ColumnFamilyDescriptor proto.InternalMessageInfo
   749  
   750  // InterleaveDescriptor represents an index (either primary or secondary) that
   751  // is interleaved into another table's data.
   752  //
   753  // Example:
   754  // Table 1 -> /a/b
   755  // Table 2 -> /a/b/c
   756  // Table 3 -> /a/b/c/d
   757  //
   758  // There are two components (table 2 is the parent and table 1 is the
   759  // grandparent) with shared lengths 2 and 1.
   760  type InterleaveDescriptor struct {
   761  	// Ancestors contains the nesting of interleaves in the order they appear in
   762  	// an encoded key. This means they are always in the far-to-near ancestor
   763  	// order (e.g. grand-grand-parent, grand-parent, parent).
   764  	Ancestors []InterleaveDescriptor_Ancestor `protobuf:"bytes,1,rep,name=ancestors" json:"ancestors"`
   765  }
   766  
   767  func (m *InterleaveDescriptor) Reset()         { *m = InterleaveDescriptor{} }
   768  func (m *InterleaveDescriptor) String() string { return proto.CompactTextString(m) }
   769  func (*InterleaveDescriptor) ProtoMessage()    {}
   770  func (*InterleaveDescriptor) Descriptor() ([]byte, []int) {
   771  	return fileDescriptor_structured_6e223c312147c376, []int{4}
   772  }
   773  func (m *InterleaveDescriptor) XXX_Unmarshal(b []byte) error {
   774  	return m.Unmarshal(b)
   775  }
   776  func (m *InterleaveDescriptor) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   777  	b = b[:cap(b)]
   778  	n, err := m.MarshalTo(b)
   779  	if err != nil {
   780  		return nil, err
   781  	}
   782  	return b[:n], nil
   783  }
   784  func (dst *InterleaveDescriptor) XXX_Merge(src proto.Message) {
   785  	xxx_messageInfo_InterleaveDescriptor.Merge(dst, src)
   786  }
   787  func (m *InterleaveDescriptor) XXX_Size() int {
   788  	return m.Size()
   789  }
   790  func (m *InterleaveDescriptor) XXX_DiscardUnknown() {
   791  	xxx_messageInfo_InterleaveDescriptor.DiscardUnknown(m)
   792  }
   793  
   794  var xxx_messageInfo_InterleaveDescriptor proto.InternalMessageInfo
   795  
   796  type InterleaveDescriptor_Ancestor struct {
   797  	// TableID is the ID of the table being interleaved into.
   798  	TableID ID `protobuf:"varint,1,opt,name=table_id,json=tableId,casttype=ID" json:"table_id"`
   799  	// IndexID is the ID of the parent index being interleaved into.
   800  	IndexID IndexID `protobuf:"varint,2,opt,name=index_id,json=indexId,casttype=IndexID" json:"index_id"`
   801  	// SharedPrefixLen is how many fields are shared between a parent and child
   802  	// being interleaved, excluding any fields shared between parent and
   803  	// grandparent. Thus, the sum of SharedPrefixLens in the components of an
   804  	// InterleaveDescriptor is never more than the number of fields in the index
   805  	// being interleaved.
   806  	// In cockroach 1.0, this value did not exist and thus a check for > 0
   807  	// must be performed prior to its use.
   808  	SharedPrefixLen uint32 `protobuf:"varint,3,opt,name=shared_prefix_len,json=sharedPrefixLen" json:"shared_prefix_len"`
   809  }
   810  
   811  func (m *InterleaveDescriptor_Ancestor) Reset()         { *m = InterleaveDescriptor_Ancestor{} }
   812  func (m *InterleaveDescriptor_Ancestor) String() string { return proto.CompactTextString(m) }
   813  func (*InterleaveDescriptor_Ancestor) ProtoMessage()    {}
   814  func (*InterleaveDescriptor_Ancestor) Descriptor() ([]byte, []int) {
   815  	return fileDescriptor_structured_6e223c312147c376, []int{4, 0}
   816  }
   817  func (m *InterleaveDescriptor_Ancestor) XXX_Unmarshal(b []byte) error {
   818  	return m.Unmarshal(b)
   819  }
   820  func (m *InterleaveDescriptor_Ancestor) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   821  	b = b[:cap(b)]
   822  	n, err := m.MarshalTo(b)
   823  	if err != nil {
   824  		return nil, err
   825  	}
   826  	return b[:n], nil
   827  }
   828  func (dst *InterleaveDescriptor_Ancestor) XXX_Merge(src proto.Message) {
   829  	xxx_messageInfo_InterleaveDescriptor_Ancestor.Merge(dst, src)
   830  }
   831  func (m *InterleaveDescriptor_Ancestor) XXX_Size() int {
   832  	return m.Size()
   833  }
   834  func (m *InterleaveDescriptor_Ancestor) XXX_DiscardUnknown() {
   835  	xxx_messageInfo_InterleaveDescriptor_Ancestor.DiscardUnknown(m)
   836  }
   837  
   838  var xxx_messageInfo_InterleaveDescriptor_Ancestor proto.InternalMessageInfo
   839  
   840  // ShardedDescriptor represents an index (either primary or secondary) that is hash
   841  // sharded into a user-specified number of buckets.
   842  //
   843  // As as example, sample field values for the following table:
   844  //
   845  // CREATE TABLE abc (
   846  //   a INT PRIMARY KEY USING HASH WITH BUCKET_COUNT=10,  // column id: 1
   847  //   b BYTES
   848  // );
   849  //
   850  // Sharded descriptor:
   851  //   name:          "a_shard"
   852  //   shard_buckets: 10
   853  //   column_names:  ["a"]
   854  type ShardedDescriptor struct {
   855  	// IsSharded indicates whether the index in question is a sharded one.
   856  	IsSharded bool `protobuf:"varint,1,opt,name=is_sharded,json=isSharded" json:"is_sharded"`
   857  	// Name is the name of the shard column.
   858  	Name string `protobuf:"bytes,2,opt,name=name" json:"name"`
   859  	// ShardBuckets indicates the number of shards this index is divided into.
   860  	ShardBuckets int32 `protobuf:"varint,3,opt,name=shard_buckets,json=shardBuckets" json:"shard_buckets"`
   861  	// ColumnNames lists the names of the columns used to compute the shard column's
   862  	// values.
   863  	ColumnNames []string `protobuf:"bytes,4,rep,name=column_names,json=columnNames" json:"column_names,omitempty"`
   864  }
   865  
   866  func (m *ShardedDescriptor) Reset()         { *m = ShardedDescriptor{} }
   867  func (m *ShardedDescriptor) String() string { return proto.CompactTextString(m) }
   868  func (*ShardedDescriptor) ProtoMessage()    {}
   869  func (*ShardedDescriptor) Descriptor() ([]byte, []int) {
   870  	return fileDescriptor_structured_6e223c312147c376, []int{5}
   871  }
   872  func (m *ShardedDescriptor) XXX_Unmarshal(b []byte) error {
   873  	return m.Unmarshal(b)
   874  }
   875  func (m *ShardedDescriptor) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   876  	b = b[:cap(b)]
   877  	n, err := m.MarshalTo(b)
   878  	if err != nil {
   879  		return nil, err
   880  	}
   881  	return b[:n], nil
   882  }
   883  func (dst *ShardedDescriptor) XXX_Merge(src proto.Message) {
   884  	xxx_messageInfo_ShardedDescriptor.Merge(dst, src)
   885  }
   886  func (m *ShardedDescriptor) XXX_Size() int {
   887  	return m.Size()
   888  }
   889  func (m *ShardedDescriptor) XXX_DiscardUnknown() {
   890  	xxx_messageInfo_ShardedDescriptor.DiscardUnknown(m)
   891  }
   892  
   893  var xxx_messageInfo_ShardedDescriptor proto.InternalMessageInfo
   894  
   895  // PartitioningDescriptor represents the partitioning of an index into spans
   896  // of keys addressable by a zone config. The key encoding is unchanged. Each
   897  // partition may optionally be itself divided into further partitions, called
   898  // subpartitions.
   899  type PartitioningDescriptor struct {
   900  	// NumColumns is how large of a prefix of the columns in an index are used in
   901  	// the function mapping column values to partitions. If this is a
   902  	// subpartition, this is offset to start from the end of the parent
   903  	// partition's columns. If NumColumns is 0, then there is no partitioning.
   904  	NumColumns uint32 `protobuf:"varint,1,opt,name=num_columns,json=numColumns" json:"num_columns"`
   905  	// Exactly one of List or Range is required to be non-empty if NumColumns is
   906  	// non-zero.
   907  	List  []PartitioningDescriptor_List  `protobuf:"bytes,2,rep,name=list" json:"list"`
   908  	Range []PartitioningDescriptor_Range `protobuf:"bytes,3,rep,name=range" json:"range"`
   909  }
   910  
   911  func (m *PartitioningDescriptor) Reset()         { *m = PartitioningDescriptor{} }
   912  func (m *PartitioningDescriptor) String() string { return proto.CompactTextString(m) }
   913  func (*PartitioningDescriptor) ProtoMessage()    {}
   914  func (*PartitioningDescriptor) Descriptor() ([]byte, []int) {
   915  	return fileDescriptor_structured_6e223c312147c376, []int{6}
   916  }
   917  func (m *PartitioningDescriptor) XXX_Unmarshal(b []byte) error {
   918  	return m.Unmarshal(b)
   919  }
   920  func (m *PartitioningDescriptor) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   921  	b = b[:cap(b)]
   922  	n, err := m.MarshalTo(b)
   923  	if err != nil {
   924  		return nil, err
   925  	}
   926  	return b[:n], nil
   927  }
   928  func (dst *PartitioningDescriptor) XXX_Merge(src proto.Message) {
   929  	xxx_messageInfo_PartitioningDescriptor.Merge(dst, src)
   930  }
   931  func (m *PartitioningDescriptor) XXX_Size() int {
   932  	return m.Size()
   933  }
   934  func (m *PartitioningDescriptor) XXX_DiscardUnknown() {
   935  	xxx_messageInfo_PartitioningDescriptor.DiscardUnknown(m)
   936  }
   937  
   938  var xxx_messageInfo_PartitioningDescriptor proto.InternalMessageInfo
   939  
   940  // List represents a list partitioning, which maps individual tuples to
   941  // partitions.
   942  type PartitioningDescriptor_List struct {
   943  	// Name is the partition name.
   944  	Name string `protobuf:"bytes,1,opt,name=name" json:"name"`
   945  	// Values is an unordered set of the tuples included in this partition. Each
   946  	// tuple is encoded with the EncDatum value encoding. DEFAULT is encoded as
   947  	// NOT NULL followed by PartitionDefaultVal encoded as a non-sorting
   948  	// uvarint.
   949  	Values [][]byte `protobuf:"bytes,2,rep,name=values" json:"values,omitempty"`
   950  	// Subpartitioning represents a further partitioning of this list partition.
   951  	Subpartitioning PartitioningDescriptor `protobuf:"bytes,3,opt,name=subpartitioning" json:"subpartitioning"`
   952  }
   953  
   954  func (m *PartitioningDescriptor_List) Reset()         { *m = PartitioningDescriptor_List{} }
   955  func (m *PartitioningDescriptor_List) String() string { return proto.CompactTextString(m) }
   956  func (*PartitioningDescriptor_List) ProtoMessage()    {}
   957  func (*PartitioningDescriptor_List) Descriptor() ([]byte, []int) {
   958  	return fileDescriptor_structured_6e223c312147c376, []int{6, 0}
   959  }
   960  func (m *PartitioningDescriptor_List) XXX_Unmarshal(b []byte) error {
   961  	return m.Unmarshal(b)
   962  }
   963  func (m *PartitioningDescriptor_List) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   964  	b = b[:cap(b)]
   965  	n, err := m.MarshalTo(b)
   966  	if err != nil {
   967  		return nil, err
   968  	}
   969  	return b[:n], nil
   970  }
   971  func (dst *PartitioningDescriptor_List) XXX_Merge(src proto.Message) {
   972  	xxx_messageInfo_PartitioningDescriptor_List.Merge(dst, src)
   973  }
   974  func (m *PartitioningDescriptor_List) XXX_Size() int {
   975  	return m.Size()
   976  }
   977  func (m *PartitioningDescriptor_List) XXX_DiscardUnknown() {
   978  	xxx_messageInfo_PartitioningDescriptor_List.DiscardUnknown(m)
   979  }
   980  
   981  var xxx_messageInfo_PartitioningDescriptor_List proto.InternalMessageInfo
   982  
   983  // Range represents a range partitioning, which maps ranges of tuples to
   984  // partitions by specifying exclusive upper bounds. The range partitions in a
   985  // PartitioningDescriptor are required to be sorted by UpperBound.
   986  type PartitioningDescriptor_Range struct {
   987  	// Name is the partition name.
   988  	Name string `protobuf:"bytes,1,opt,name=name" json:"name"`
   989  	// FromInclusive is the inclusive lower bound of this range partition. It is
   990  	// encoded with the EncDatum value encoding. MINVALUE and MAXVALUE are
   991  	// encoded as NOT NULL followed by a PartitionSpecialValCode encoded as a
   992  	// non-sorting uvarint.
   993  	FromInclusive []byte `protobuf:"bytes,3,opt,name=from_inclusive,json=fromInclusive" json:"from_inclusive,omitempty"`
   994  	// ToExclusive is the exclusive upper bound of this range partition. It is
   995  	// encoded in the same way as From.
   996  	ToExclusive []byte `protobuf:"bytes,2,opt,name=to_exclusive,json=toExclusive" json:"to_exclusive,omitempty"`
   997  }
   998  
   999  func (m *PartitioningDescriptor_Range) Reset()         { *m = PartitioningDescriptor_Range{} }
  1000  func (m *PartitioningDescriptor_Range) String() string { return proto.CompactTextString(m) }
  1001  func (*PartitioningDescriptor_Range) ProtoMessage()    {}
  1002  func (*PartitioningDescriptor_Range) Descriptor() ([]byte, []int) {
  1003  	return fileDescriptor_structured_6e223c312147c376, []int{6, 1}
  1004  }
  1005  func (m *PartitioningDescriptor_Range) XXX_Unmarshal(b []byte) error {
  1006  	return m.Unmarshal(b)
  1007  }
  1008  func (m *PartitioningDescriptor_Range) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1009  	b = b[:cap(b)]
  1010  	n, err := m.MarshalTo(b)
  1011  	if err != nil {
  1012  		return nil, err
  1013  	}
  1014  	return b[:n], nil
  1015  }
  1016  func (dst *PartitioningDescriptor_Range) XXX_Merge(src proto.Message) {
  1017  	xxx_messageInfo_PartitioningDescriptor_Range.Merge(dst, src)
  1018  }
  1019  func (m *PartitioningDescriptor_Range) XXX_Size() int {
  1020  	return m.Size()
  1021  }
  1022  func (m *PartitioningDescriptor_Range) XXX_DiscardUnknown() {
  1023  	xxx_messageInfo_PartitioningDescriptor_Range.DiscardUnknown(m)
  1024  }
  1025  
  1026  var xxx_messageInfo_PartitioningDescriptor_Range proto.InternalMessageInfo
  1027  
  1028  // IndexDescriptor describes an index (primary or secondary).
  1029  //
  1030  // Sample field values on the following table:
  1031  //
  1032  //   CREATE TABLE t (
  1033  //     k1 INT NOT NULL,   // column ID: 1
  1034  //     k2 INT NOT NULL,   // column ID: 2
  1035  //     u INT NULL,        // column ID: 3
  1036  //     v INT NULL,        // column ID: 4
  1037  //     w INT NULL,        // column ID: 5
  1038  //     CONSTRAINT "primary" PRIMARY KEY (k1, k2),
  1039  //     INDEX k1v (k1, v) STORING (w),
  1040  //     FAMILY "primary" (k1, k2, u, v, w)
  1041  //   )
  1042  //
  1043  // Primary index:
  1044  //   name:                primary
  1045  //   id:                  1
  1046  //   unique:              true
  1047  //   column_names:        k1, k2
  1048  //   column_directions:   ASC, ASC
  1049  //   column_ids:          1, 2   // k1, k2
  1050  //
  1051  // [old STORING encoding] Index k1v (k1, v) STORING (w):
  1052  //   name:                k1v
  1053  //   id:                  2
  1054  //   unique:              false
  1055  //   column_names:        k1, v
  1056  //   column_directions:   ASC, ASC
  1057  //   store_column_names:  w
  1058  //   column_ids:          1, 4   // k1, v
  1059  //   extra_column_ids:    2, 5   // k2, w
  1060  //
  1061  // [new STORING encoding] Index k1v (k1, v) STORING (w):
  1062  //   name:                k1v
  1063  //   id:                  2
  1064  //   unique:              false
  1065  //   column_names:        k1, v
  1066  //   column_directions:   ASC, ASC
  1067  //   store_column_names:  w
  1068  //   column_ids:          1, 4   // k1, v
  1069  //   extra_column_ids:    2      // k2
  1070  //   store_column_ids:    5      // w
  1071  type IndexDescriptor struct {
  1072  	Name    string                 `protobuf:"bytes,1,opt,name=name" json:"name"`
  1073  	ID      IndexID                `protobuf:"varint,2,opt,name=id,casttype=IndexID" json:"id"`
  1074  	Unique  bool                   `protobuf:"varint,3,opt,name=unique" json:"unique"`
  1075  	Version IndexDescriptorVersion `protobuf:"varint,18,opt,name=version,casttype=IndexDescriptorVersion" json:"version"`
  1076  	// An ordered list of column names of which the index is comprised; these
  1077  	// columns do not include any additional stored columns (which are in
  1078  	// stored_column_names). This list parallels the column_ids list.
  1079  	//
  1080  	// Note: if duplicating the storage of the column names here proves to be
  1081  	// prohibitive, we could clear this field before saving and reconstruct it
  1082  	// after loading.
  1083  	ColumnNames []string `protobuf:"bytes,4,rep,name=column_names,json=columnNames" json:"column_names,omitempty"`
  1084  	// The sort direction of each column in column_names.
  1085  	ColumnDirections []IndexDescriptor_Direction `protobuf:"varint,8,rep,name=column_directions,json=columnDirections,enum=cockroach.sql.sqlbase.IndexDescriptor_Direction" json:"column_directions,omitempty"`
  1086  	// An ordered list of column names which the index stores in addition to the
  1087  	// columns which are explicitly part of the index (STORING clause). Only used
  1088  	// for secondary indexes.
  1089  	StoreColumnNames []string `protobuf:"bytes,5,rep,name=store_column_names,json=storeColumnNames" json:"store_column_names,omitempty"`
  1090  	// An ordered list of column IDs of which the index is comprised. This list
  1091  	// parallels the column_names list and does not include any additional stored
  1092  	// columns.
  1093  	ColumnIDs []ColumnID `protobuf:"varint,6,rep,name=column_ids,json=columnIds,casttype=ColumnID" json:"column_ids,omitempty"`
  1094  	// An ordered list of IDs for the additional columns associated with the
  1095  	// index:
  1096  	//  - implicit columns, which are all the primary key columns that are not
  1097  	//    already part of the index (i.e. PrimaryIndex.column_ids - column_ids).
  1098  	//  - stored columns (the columns in store_column_names) if this index uses the
  1099  	//    old STORING encoding (key-encoded data).
  1100  	//
  1101  	// Only used for secondary indexes.
  1102  	// For non-unique indexes, these columns are appended to the key.
  1103  	// For unique indexes, these columns are stored in the value (unless the key
  1104  	// contains a NULL value: then the extra columns are appended to the key to
  1105  	// unique-ify it).
  1106  	// This distinction exists because we want to be able to insert an entry using
  1107  	// a single conditional put on the key.
  1108  	ExtraColumnIDs []ColumnID `protobuf:"varint,7,rep,name=extra_column_ids,json=extraColumnIds,casttype=ColumnID" json:"extra_column_ids,omitempty"`
  1109  	// An ordered list of column IDs that parallels store_column_names if this
  1110  	// index uses the new STORING encoding (value-encoded data, always in the KV
  1111  	// value).
  1112  	StoreColumnIDs []ColumnID `protobuf:"varint,14,rep,name=store_column_ids,json=storeColumnIds,casttype=ColumnID" json:"store_column_ids,omitempty"`
  1113  	// CompositeColumnIDs contains an ordered list of IDs of columns that appear
  1114  	// in the index and have a composite encoding. Includes IDs from both
  1115  	// column_ids and extra_column_ids.
  1116  	CompositeColumnIDs []ColumnID `protobuf:"varint,13,rep,name=composite_column_ids,json=compositeColumnIds,casttype=ColumnID" json:"composite_column_ids,omitempty"`
  1117  	// ForeignKey and ReferencedBy are deprecated and not stored from 19.2 onward.
  1118  	ForeignKey   ForeignKeyReference   `protobuf:"bytes,9,opt,name=foreign_key,json=foreignKey" json:"foreign_key"`        // Deprecated: Do not use.
  1119  	ReferencedBy []ForeignKeyReference `protobuf:"bytes,10,rep,name=referenced_by,json=referencedBy" json:"referenced_by"` // Deprecated: Do not use.
  1120  	// Interleave, if it's not the zero value, describes how this index's data is
  1121  	// interleaved into another index's data.
  1122  	Interleave InterleaveDescriptor `protobuf:"bytes,11,opt,name=interleave" json:"interleave"`
  1123  	// InterleavedBy contains a reference to every table/index that is interleaved
  1124  	// into this one.
  1125  	//
  1126  	// Note that any of these indexes can themselves be interleaved by other
  1127  	// tables but this list contains only those for which this index is a direct
  1128  	// interleave parent.
  1129  	//
  1130  	// Only the Table and Index fields of the ForeignKeyReference are used. And
  1131  	// despite the message used here, interleavings don't have to have
  1132  	// corresponding foreign key references (and whether they do or not is
  1133  	// irrelevant for this field).
  1134  	InterleavedBy []ForeignKeyReference `protobuf:"bytes,12,rep,name=interleaved_by,json=interleavedBy" json:"interleaved_by"`
  1135  	// Partitioning, if it's not the zero value, describes how this index's data
  1136  	// is partitioned into spans of keys each addressable by zone configs.
  1137  	Partitioning PartitioningDescriptor `protobuf:"bytes,15,opt,name=partitioning" json:"partitioning"`
  1138  	// Type is the type of index, inverted or forward.
  1139  	Type IndexDescriptor_Type `protobuf:"varint,16,opt,name=type,enum=cockroach.sql.sqlbase.IndexDescriptor_Type" json:"type"`
  1140  	// CreatedExplicitly specifies whether this index was created explicitly
  1141  	// (i.e. via 'CREATE INDEX' statement).
  1142  	CreatedExplicitly bool `protobuf:"varint,17,opt,name=created_explicitly,json=createdExplicitly" json:"created_explicitly"`
  1143  	// EncodingType represents what sort of k/v encoding is used to store this descriptor on disk.
  1144  	// As of now, this includes the existing secondary index encoding, or the primary index encoding.
  1145  	// N.B. This field is only recognized on secondary indexes.
  1146  	EncodingType IndexDescriptorEncodingType `protobuf:"varint,19,opt,name=encoding_type,json=encodingType,casttype=IndexDescriptorEncodingType" json:"encoding_type"`
  1147  	// Sharded, if it's not the zero value, describes how this index is sharded.
  1148  	Sharded ShardedDescriptor `protobuf:"bytes,20,opt,name=sharded" json:"sharded"`
  1149  	// Disabled is used by the DROP PRIMARY KEY command to mark
  1150  	// that this index is disabled for further use.
  1151  	Disabled bool `protobuf:"varint,21,opt,name=disabled" json:"disabled"`
  1152  	// GeoConfig, if it's not the zero value, describes configuration for
  1153  	// this geospatial inverted index.
  1154  	GeoConfig geoindex.Config `protobuf:"bytes,22,opt,name=geo_config,json=geoConfig" json:"geo_config"`
  1155  	// Predicate, if it's not empty, indicates that the index is a partial index
  1156  	// with Predicate as the expression. If Predicate is empty, the index is not
  1157  	// a partial index. Columns are referred to in the expression by their name.
  1158  	// TODO(mgartner): Update the comment to explain that columns are referenced
  1159  	// by their ID once #49766 is addressed.
  1160  	Predicate string `protobuf:"bytes,23,opt,name=predicate" json:"predicate"`
  1161  }
  1162  
  1163  func (m *IndexDescriptor) Reset()         { *m = IndexDescriptor{} }
  1164  func (m *IndexDescriptor) String() string { return proto.CompactTextString(m) }
  1165  func (*IndexDescriptor) ProtoMessage()    {}
  1166  func (*IndexDescriptor) Descriptor() ([]byte, []int) {
  1167  	return fileDescriptor_structured_6e223c312147c376, []int{7}
  1168  }
  1169  func (m *IndexDescriptor) XXX_Unmarshal(b []byte) error {
  1170  	return m.Unmarshal(b)
  1171  }
  1172  func (m *IndexDescriptor) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1173  	b = b[:cap(b)]
  1174  	n, err := m.MarshalTo(b)
  1175  	if err != nil {
  1176  		return nil, err
  1177  	}
  1178  	return b[:n], nil
  1179  }
  1180  func (dst *IndexDescriptor) XXX_Merge(src proto.Message) {
  1181  	xxx_messageInfo_IndexDescriptor.Merge(dst, src)
  1182  }
  1183  func (m *IndexDescriptor) XXX_Size() int {
  1184  	return m.Size()
  1185  }
  1186  func (m *IndexDescriptor) XXX_DiscardUnknown() {
  1187  	xxx_messageInfo_IndexDescriptor.DiscardUnknown(m)
  1188  }
  1189  
  1190  var xxx_messageInfo_IndexDescriptor proto.InternalMessageInfo
  1191  
  1192  // ConstraintToUpdate represents a constraint to be added to the table and
  1193  // validated for existing rows. More generally, in the future, when we support
  1194  // adding constraints that are unvalidated for existing rows and can be
  1195  // validated later using VALIDATE CONSTRAINT, this mutation will also represent
  1196  // either adding an unvalidated constraint or validating an existing constraint.
  1197  //
  1198  // This mutation effects changes only in the backfill step of the schema
  1199  // changer: First, a new version of the table descriptor with the constraint
  1200  // added is published, after all columns being added have been backfilled. After
  1201  // waiting for the constraint to be enforced for writes on all nodes, the
  1202  // constraint is then validated for all existing rows. This ensures that
  1203  // constraints added to columns that are being added are correctly enforced
  1204  // before the column becomes public.
  1205  type ConstraintToUpdate struct {
  1206  	ConstraintType ConstraintToUpdate_ConstraintType `protobuf:"varint,1,req,name=constraint_type,json=constraintType,enum=cockroach.sql.sqlbase.ConstraintToUpdate_ConstraintType" json:"constraint_type"`
  1207  	Name           string                            `protobuf:"bytes,2,req,name=name" json:"name"`
  1208  	Check          TableDescriptor_CheckConstraint   `protobuf:"bytes,3,opt,name=check" json:"check"`
  1209  	// All fields past 3 haven't been persisted before 19.2.
  1210  	ForeignKey    ForeignKeyConstraint `protobuf:"bytes,4,opt,name=foreign_key,json=foreignKey" json:"foreign_key"`
  1211  	NotNullColumn ColumnID             `protobuf:"varint,6,opt,name=not_null_column,json=notNullColumn,casttype=ColumnID" json:"not_null_column"`
  1212  }
  1213  
  1214  func (m *ConstraintToUpdate) Reset()         { *m = ConstraintToUpdate{} }
  1215  func (m *ConstraintToUpdate) String() string { return proto.CompactTextString(m) }
  1216  func (*ConstraintToUpdate) ProtoMessage()    {}
  1217  func (*ConstraintToUpdate) Descriptor() ([]byte, []int) {
  1218  	return fileDescriptor_structured_6e223c312147c376, []int{8}
  1219  }
  1220  func (m *ConstraintToUpdate) XXX_Unmarshal(b []byte) error {
  1221  	return m.Unmarshal(b)
  1222  }
  1223  func (m *ConstraintToUpdate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1224  	b = b[:cap(b)]
  1225  	n, err := m.MarshalTo(b)
  1226  	if err != nil {
  1227  		return nil, err
  1228  	}
  1229  	return b[:n], nil
  1230  }
  1231  func (dst *ConstraintToUpdate) XXX_Merge(src proto.Message) {
  1232  	xxx_messageInfo_ConstraintToUpdate.Merge(dst, src)
  1233  }
  1234  func (m *ConstraintToUpdate) XXX_Size() int {
  1235  	return m.Size()
  1236  }
  1237  func (m *ConstraintToUpdate) XXX_DiscardUnknown() {
  1238  	xxx_messageInfo_ConstraintToUpdate.DiscardUnknown(m)
  1239  }
  1240  
  1241  var xxx_messageInfo_ConstraintToUpdate proto.InternalMessageInfo
  1242  
  1243  // PrimaryKeySwap is a mutation corresponding to the atomic swap phase
  1244  // during a primary key change where old versions of indexes are exchanged for
  1245  // updated versions, and the table's new primary key is written into the descriptor.
  1246  type PrimaryKeySwap struct {
  1247  	// old_primary_index_id is the ID of the old primary index for the table.
  1248  	OldPrimaryIndexId IndexID `protobuf:"varint,4,opt,name=old_primary_index_id,json=oldPrimaryIndexId,casttype=IndexID" json:"old_primary_index_id"`
  1249  	// new_primary_index_id is the ID of the new primary index for the table.
  1250  	NewPrimaryIndexId IndexID `protobuf:"varint,1,opt,name=new_primary_index_id,json=newPrimaryIndexId,casttype=IndexID" json:"new_primary_index_id"`
  1251  	// old_indexes and new_indexes are lists of IndexID's where the i'th index in old_indexes will be
  1252  	// swapped out with the i'th index in new_indexes.
  1253  	OldIndexes []IndexID `protobuf:"varint,2,rep,name=old_indexes,json=oldIndexes,casttype=IndexID" json:"old_indexes,omitempty"`
  1254  	NewIndexes []IndexID `protobuf:"varint,3,rep,name=new_indexes,json=newIndexes,casttype=IndexID" json:"new_indexes,omitempty"`
  1255  }
  1256  
  1257  func (m *PrimaryKeySwap) Reset()         { *m = PrimaryKeySwap{} }
  1258  func (m *PrimaryKeySwap) String() string { return proto.CompactTextString(m) }
  1259  func (*PrimaryKeySwap) ProtoMessage()    {}
  1260  func (*PrimaryKeySwap) Descriptor() ([]byte, []int) {
  1261  	return fileDescriptor_structured_6e223c312147c376, []int{9}
  1262  }
  1263  func (m *PrimaryKeySwap) XXX_Unmarshal(b []byte) error {
  1264  	return m.Unmarshal(b)
  1265  }
  1266  func (m *PrimaryKeySwap) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1267  	b = b[:cap(b)]
  1268  	n, err := m.MarshalTo(b)
  1269  	if err != nil {
  1270  		return nil, err
  1271  	}
  1272  	return b[:n], nil
  1273  }
  1274  func (dst *PrimaryKeySwap) XXX_Merge(src proto.Message) {
  1275  	xxx_messageInfo_PrimaryKeySwap.Merge(dst, src)
  1276  }
  1277  func (m *PrimaryKeySwap) XXX_Size() int {
  1278  	return m.Size()
  1279  }
  1280  func (m *PrimaryKeySwap) XXX_DiscardUnknown() {
  1281  	xxx_messageInfo_PrimaryKeySwap.DiscardUnknown(m)
  1282  }
  1283  
  1284  var xxx_messageInfo_PrimaryKeySwap proto.InternalMessageInfo
  1285  
  1286  // ComputedColumnSwap is a mutation corresponding to the atomic swap phase
  1287  // where Column a' that is computed using Column a is swapped to replace
  1288  // Column a while Column a becomes computed using a'.
  1289  type ComputedColumnSwap struct {
  1290  	NewColumnId ColumnID `protobuf:"varint,1,opt,name=new_column_id,json=newColumnId,casttype=ColumnID" json:"new_column_id"`
  1291  	OldColumnId ColumnID `protobuf:"varint,2,opt,name=old_column_id,json=oldColumnId,casttype=ColumnID" json:"old_column_id"`
  1292  }
  1293  
  1294  func (m *ComputedColumnSwap) Reset()         { *m = ComputedColumnSwap{} }
  1295  func (m *ComputedColumnSwap) String() string { return proto.CompactTextString(m) }
  1296  func (*ComputedColumnSwap) ProtoMessage()    {}
  1297  func (*ComputedColumnSwap) Descriptor() ([]byte, []int) {
  1298  	return fileDescriptor_structured_6e223c312147c376, []int{10}
  1299  }
  1300  func (m *ComputedColumnSwap) XXX_Unmarshal(b []byte) error {
  1301  	return m.Unmarshal(b)
  1302  }
  1303  func (m *ComputedColumnSwap) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1304  	b = b[:cap(b)]
  1305  	n, err := m.MarshalTo(b)
  1306  	if err != nil {
  1307  		return nil, err
  1308  	}
  1309  	return b[:n], nil
  1310  }
  1311  func (dst *ComputedColumnSwap) XXX_Merge(src proto.Message) {
  1312  	xxx_messageInfo_ComputedColumnSwap.Merge(dst, src)
  1313  }
  1314  func (m *ComputedColumnSwap) XXX_Size() int {
  1315  	return m.Size()
  1316  }
  1317  func (m *ComputedColumnSwap) XXX_DiscardUnknown() {
  1318  	xxx_messageInfo_ComputedColumnSwap.DiscardUnknown(m)
  1319  }
  1320  
  1321  var xxx_messageInfo_ComputedColumnSwap proto.InternalMessageInfo
  1322  
  1323  // A DescriptorMutation represents a column or an index that
  1324  // has either been added or dropped and hasn't yet transitioned
  1325  // into a stable state: completely backfilled and visible, or
  1326  // completely deleted. A table descriptor in the middle of a
  1327  // schema change will have a DescriptorMutation FIFO queue
  1328  // containing each column/index descriptor being added or dropped.
  1329  // Mutations for constraints work differently from columns and
  1330  // indexes; see the documentation for ConstraintToUpdate.
  1331  type DescriptorMutation struct {
  1332  	// Types that are valid to be assigned to Descriptor_:
  1333  	//	*DescriptorMutation_Column
  1334  	//	*DescriptorMutation_Index
  1335  	//	*DescriptorMutation_Constraint
  1336  	//	*DescriptorMutation_PrimaryKeySwap
  1337  	//	*DescriptorMutation_ComputedColumnSwap
  1338  	Descriptor_ isDescriptorMutation_Descriptor_ `protobuf_oneof:"descriptor"`
  1339  	State       DescriptorMutation_State         `protobuf:"varint,3,opt,name=state,enum=cockroach.sql.sqlbase.DescriptorMutation_State" json:"state"`
  1340  	Direction   DescriptorMutation_Direction     `protobuf:"varint,4,opt,name=direction,enum=cockroach.sql.sqlbase.DescriptorMutation_Direction" json:"direction"`
  1341  	// The mutation id used to group mutations that should be applied together.
  1342  	// This is used for situations like creating a unique column, which
  1343  	// involve adding two mutations: one for the column, and another for the
  1344  	// unique constraint index.
  1345  	MutationID MutationID `protobuf:"varint,5,opt,name=mutation_id,json=mutationId,casttype=MutationID" json:"mutation_id"`
  1346  	// Indicates that this mutation is a rollback.
  1347  	Rollback bool `protobuf:"varint,7,opt,name=rollback" json:"rollback"`
  1348  }
  1349  
  1350  func (m *DescriptorMutation) Reset()         { *m = DescriptorMutation{} }
  1351  func (m *DescriptorMutation) String() string { return proto.CompactTextString(m) }
  1352  func (*DescriptorMutation) ProtoMessage()    {}
  1353  func (*DescriptorMutation) Descriptor() ([]byte, []int) {
  1354  	return fileDescriptor_structured_6e223c312147c376, []int{11}
  1355  }
  1356  func (m *DescriptorMutation) XXX_Unmarshal(b []byte) error {
  1357  	return m.Unmarshal(b)
  1358  }
  1359  func (m *DescriptorMutation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1360  	b = b[:cap(b)]
  1361  	n, err := m.MarshalTo(b)
  1362  	if err != nil {
  1363  		return nil, err
  1364  	}
  1365  	return b[:n], nil
  1366  }
  1367  func (dst *DescriptorMutation) XXX_Merge(src proto.Message) {
  1368  	xxx_messageInfo_DescriptorMutation.Merge(dst, src)
  1369  }
  1370  func (m *DescriptorMutation) XXX_Size() int {
  1371  	return m.Size()
  1372  }
  1373  func (m *DescriptorMutation) XXX_DiscardUnknown() {
  1374  	xxx_messageInfo_DescriptorMutation.DiscardUnknown(m)
  1375  }
  1376  
  1377  var xxx_messageInfo_DescriptorMutation proto.InternalMessageInfo
  1378  
  1379  type isDescriptorMutation_Descriptor_ interface {
  1380  	isDescriptorMutation_Descriptor_()
  1381  	Equal(interface{}) bool
  1382  	MarshalTo([]byte) (int, error)
  1383  	Size() int
  1384  }
  1385  
  1386  type DescriptorMutation_Column struct {
  1387  	Column *ColumnDescriptor `protobuf:"bytes,1,opt,name=column,oneof"`
  1388  }
  1389  type DescriptorMutation_Index struct {
  1390  	Index *IndexDescriptor `protobuf:"bytes,2,opt,name=index,oneof"`
  1391  }
  1392  type DescriptorMutation_Constraint struct {
  1393  	Constraint *ConstraintToUpdate `protobuf:"bytes,8,opt,name=constraint,oneof"`
  1394  }
  1395  type DescriptorMutation_PrimaryKeySwap struct {
  1396  	PrimaryKeySwap *PrimaryKeySwap `protobuf:"bytes,9,opt,name=primaryKeySwap,oneof"`
  1397  }
  1398  type DescriptorMutation_ComputedColumnSwap struct {
  1399  	ComputedColumnSwap *ComputedColumnSwap `protobuf:"bytes,10,opt,name=computedColumnSwap,oneof"`
  1400  }
  1401  
  1402  func (*DescriptorMutation_Column) isDescriptorMutation_Descriptor_()             {}
  1403  func (*DescriptorMutation_Index) isDescriptorMutation_Descriptor_()              {}
  1404  func (*DescriptorMutation_Constraint) isDescriptorMutation_Descriptor_()         {}
  1405  func (*DescriptorMutation_PrimaryKeySwap) isDescriptorMutation_Descriptor_()     {}
  1406  func (*DescriptorMutation_ComputedColumnSwap) isDescriptorMutation_Descriptor_() {}
  1407  
  1408  func (m *DescriptorMutation) GetDescriptor_() isDescriptorMutation_Descriptor_ {
  1409  	if m != nil {
  1410  		return m.Descriptor_
  1411  	}
  1412  	return nil
  1413  }
  1414  
  1415  func (m *DescriptorMutation) GetColumn() *ColumnDescriptor {
  1416  	if x, ok := m.GetDescriptor_().(*DescriptorMutation_Column); ok {
  1417  		return x.Column
  1418  	}
  1419  	return nil
  1420  }
  1421  
  1422  func (m *DescriptorMutation) GetIndex() *IndexDescriptor {
  1423  	if x, ok := m.GetDescriptor_().(*DescriptorMutation_Index); ok {
  1424  		return x.Index
  1425  	}
  1426  	return nil
  1427  }
  1428  
  1429  func (m *DescriptorMutation) GetConstraint() *ConstraintToUpdate {
  1430  	if x, ok := m.GetDescriptor_().(*DescriptorMutation_Constraint); ok {
  1431  		return x.Constraint
  1432  	}
  1433  	return nil
  1434  }
  1435  
  1436  func (m *DescriptorMutation) GetPrimaryKeySwap() *PrimaryKeySwap {
  1437  	if x, ok := m.GetDescriptor_().(*DescriptorMutation_PrimaryKeySwap); ok {
  1438  		return x.PrimaryKeySwap
  1439  	}
  1440  	return nil
  1441  }
  1442  
  1443  func (m *DescriptorMutation) GetComputedColumnSwap() *ComputedColumnSwap {
  1444  	if x, ok := m.GetDescriptor_().(*DescriptorMutation_ComputedColumnSwap); ok {
  1445  		return x.ComputedColumnSwap
  1446  	}
  1447  	return nil
  1448  }
  1449  
  1450  // XXX_OneofFuncs is for the internal use of the proto package.
  1451  func (*DescriptorMutation) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
  1452  	return _DescriptorMutation_OneofMarshaler, _DescriptorMutation_OneofUnmarshaler, _DescriptorMutation_OneofSizer, []interface{}{
  1453  		(*DescriptorMutation_Column)(nil),
  1454  		(*DescriptorMutation_Index)(nil),
  1455  		(*DescriptorMutation_Constraint)(nil),
  1456  		(*DescriptorMutation_PrimaryKeySwap)(nil),
  1457  		(*DescriptorMutation_ComputedColumnSwap)(nil),
  1458  	}
  1459  }
  1460  
  1461  func _DescriptorMutation_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
  1462  	m := msg.(*DescriptorMutation)
  1463  	// descriptor
  1464  	switch x := m.Descriptor_.(type) {
  1465  	case *DescriptorMutation_Column:
  1466  		_ = b.EncodeVarint(1<<3 | proto.WireBytes)
  1467  		if err := b.EncodeMessage(x.Column); err != nil {
  1468  			return err
  1469  		}
  1470  	case *DescriptorMutation_Index:
  1471  		_ = b.EncodeVarint(2<<3 | proto.WireBytes)
  1472  		if err := b.EncodeMessage(x.Index); err != nil {
  1473  			return err
  1474  		}
  1475  	case *DescriptorMutation_Constraint:
  1476  		_ = b.EncodeVarint(8<<3 | proto.WireBytes)
  1477  		if err := b.EncodeMessage(x.Constraint); err != nil {
  1478  			return err
  1479  		}
  1480  	case *DescriptorMutation_PrimaryKeySwap:
  1481  		_ = b.EncodeVarint(9<<3 | proto.WireBytes)
  1482  		if err := b.EncodeMessage(x.PrimaryKeySwap); err != nil {
  1483  			return err
  1484  		}
  1485  	case *DescriptorMutation_ComputedColumnSwap:
  1486  		_ = b.EncodeVarint(10<<3 | proto.WireBytes)
  1487  		if err := b.EncodeMessage(x.ComputedColumnSwap); err != nil {
  1488  			return err
  1489  		}
  1490  	case nil:
  1491  	default:
  1492  		return fmt.Errorf("DescriptorMutation.Descriptor_ has unexpected type %T", x)
  1493  	}
  1494  	return nil
  1495  }
  1496  
  1497  func _DescriptorMutation_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
  1498  	m := msg.(*DescriptorMutation)
  1499  	switch tag {
  1500  	case 1: // descriptor.column
  1501  		if wire != proto.WireBytes {
  1502  			return true, proto.ErrInternalBadWireType
  1503  		}
  1504  		msg := new(ColumnDescriptor)
  1505  		err := b.DecodeMessage(msg)
  1506  		m.Descriptor_ = &DescriptorMutation_Column{msg}
  1507  		return true, err
  1508  	case 2: // descriptor.index
  1509  		if wire != proto.WireBytes {
  1510  			return true, proto.ErrInternalBadWireType
  1511  		}
  1512  		msg := new(IndexDescriptor)
  1513  		err := b.DecodeMessage(msg)
  1514  		m.Descriptor_ = &DescriptorMutation_Index{msg}
  1515  		return true, err
  1516  	case 8: // descriptor.constraint
  1517  		if wire != proto.WireBytes {
  1518  			return true, proto.ErrInternalBadWireType
  1519  		}
  1520  		msg := new(ConstraintToUpdate)
  1521  		err := b.DecodeMessage(msg)
  1522  		m.Descriptor_ = &DescriptorMutation_Constraint{msg}
  1523  		return true, err
  1524  	case 9: // descriptor.primaryKeySwap
  1525  		if wire != proto.WireBytes {
  1526  			return true, proto.ErrInternalBadWireType
  1527  		}
  1528  		msg := new(PrimaryKeySwap)
  1529  		err := b.DecodeMessage(msg)
  1530  		m.Descriptor_ = &DescriptorMutation_PrimaryKeySwap{msg}
  1531  		return true, err
  1532  	case 10: // descriptor.computedColumnSwap
  1533  		if wire != proto.WireBytes {
  1534  			return true, proto.ErrInternalBadWireType
  1535  		}
  1536  		msg := new(ComputedColumnSwap)
  1537  		err := b.DecodeMessage(msg)
  1538  		m.Descriptor_ = &DescriptorMutation_ComputedColumnSwap{msg}
  1539  		return true, err
  1540  	default:
  1541  		return false, nil
  1542  	}
  1543  }
  1544  
  1545  func _DescriptorMutation_OneofSizer(msg proto.Message) (n int) {
  1546  	m := msg.(*DescriptorMutation)
  1547  	// descriptor
  1548  	switch x := m.Descriptor_.(type) {
  1549  	case *DescriptorMutation_Column:
  1550  		s := proto.Size(x.Column)
  1551  		n += 1 // tag and wire
  1552  		n += proto.SizeVarint(uint64(s))
  1553  		n += s
  1554  	case *DescriptorMutation_Index:
  1555  		s := proto.Size(x.Index)
  1556  		n += 1 // tag and wire
  1557  		n += proto.SizeVarint(uint64(s))
  1558  		n += s
  1559  	case *DescriptorMutation_Constraint:
  1560  		s := proto.Size(x.Constraint)
  1561  		n += 1 // tag and wire
  1562  		n += proto.SizeVarint(uint64(s))
  1563  		n += s
  1564  	case *DescriptorMutation_PrimaryKeySwap:
  1565  		s := proto.Size(x.PrimaryKeySwap)
  1566  		n += 1 // tag and wire
  1567  		n += proto.SizeVarint(uint64(s))
  1568  		n += s
  1569  	case *DescriptorMutation_ComputedColumnSwap:
  1570  		s := proto.Size(x.ComputedColumnSwap)
  1571  		n += 1 // tag and wire
  1572  		n += proto.SizeVarint(uint64(s))
  1573  		n += s
  1574  	case nil:
  1575  	default:
  1576  		panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
  1577  	}
  1578  	return n
  1579  }
  1580  
  1581  // A TableDescriptor represents a table or view and is stored in a
  1582  // structured metadata key. The TableDescriptor has a globally-unique ID,
  1583  // while its member {Column,Index}Descriptors have locally-unique IDs.
  1584  type TableDescriptor struct {
  1585  	// The table name. It should be normalized using NormalizeName() before
  1586  	// comparing it.
  1587  	Name string `protobuf:"bytes,1,opt,name=name" json:"name"`
  1588  	ID   ID     `protobuf:"varint,3,opt,name=id,casttype=ID" json:"id"`
  1589  	// ID of the parent database.
  1590  	ParentID ID `protobuf:"varint,4,opt,name=parent_id,json=parentId,casttype=ID" json:"parent_id"`
  1591  	// ID of the parent schema. For backwards compatibility, 0 means the table is
  1592  	// scoped under the public physical schema (id 29). Because of this backward
  1593  	// compatibility issue, this field should not be accessed directly or through
  1594  	// the generated getter. Instead, use GetParentSchemaID() which is defined in
  1595  	// structured.go.
  1596  	UnexposedParentSchemaID ID `protobuf:"varint,40,opt,name=unexposed_parent_schema_id,json=unexposedParentSchemaId,casttype=ID" json:"unexposed_parent_schema_id"`
  1597  	// Monotonically increasing version of the table descriptor.
  1598  	//
  1599  	// The design maintains two invariants:
  1600  	// 1. Two safe versions: A transaction at a particular timestamp is
  1601  	//    allowed to use one of two versions of a table descriptor:
  1602  	//    the one that would be read from the store at that timestamp,
  1603  	//    and the one behind it in version.
  1604  	// 2. Two leased versions: There can be valid leases on at most the 2
  1605  	//    latest versions of a table in the cluster at any time. New leases
  1606  	//    are only granted on the latest version.
  1607  	//
  1608  	// The database must maintain correctness in light of there being two
  1609  	// versions of a descriptor that can be used.
  1610  	//
  1611  	// Multiple schema change mutations can be grouped together on a
  1612  	// particular version increment.
  1613  	Version DescriptorVersion `protobuf:"varint,5,opt,name=version,casttype=DescriptorVersion" json:"version"`
  1614  	// Last modification time of the table descriptor.
  1615  	// Starting in 19.2 this field's value may sometime be zero-valued in which
  1616  	// case the MVCC timestamp of the row containing the value should be used to
  1617  	// populate it. This dance allows us to avoid observing the commit timestamp
  1618  	// for transactions which increment the descriptor version.
  1619  	// Encoded TableDescriptor structs should not be stored directly but rather
  1620  	// should live inside of a Descriptor. The Descriptor.Table() method takes an
  1621  	// hlc timestamp to ensure that this field is set properly when extracted from
  1622  	// a Descriptor.
  1623  	ModificationTime hlc.Timestamp      `protobuf:"bytes,7,opt,name=modification_time,json=modificationTime" json:"modification_time"`
  1624  	Columns          []ColumnDescriptor `protobuf:"bytes,8,rep,name=columns" json:"columns"`
  1625  	// next_column_id is used to ensure that deleted column ids are not reused.
  1626  	NextColumnID ColumnID `protobuf:"varint,9,opt,name=next_column_id,json=nextColumnId,casttype=ColumnID" json:"next_column_id"`
  1627  	// families holds information about the column families of this table.
  1628  	// This list has at least length 1, in which case all columns are stored in the same family.
  1629  	// families is stored in sorted order by family ID.
  1630  	Families []ColumnFamilyDescriptor `protobuf:"bytes,22,rep,name=families" json:"families"`
  1631  	// next_family_id is used to ensure that deleted family ids are not reused.
  1632  	NextFamilyID FamilyID        `protobuf:"varint,23,opt,name=next_family_id,json=nextFamilyId,casttype=FamilyID" json:"next_family_id"`
  1633  	PrimaryIndex IndexDescriptor `protobuf:"bytes,10,opt,name=primary_index,json=primaryIndex" json:"primary_index"`
  1634  	// indexes are all the secondary indexes.
  1635  	Indexes []IndexDescriptor `protobuf:"bytes,11,rep,name=indexes" json:"indexes"`
  1636  	// next_index_id is used to ensure that deleted index ids are not reused.
  1637  	NextIndexID IndexID              `protobuf:"varint,12,opt,name=next_index_id,json=nextIndexId,casttype=IndexID" json:"next_index_id"`
  1638  	Privileges  *PrivilegeDescriptor `protobuf:"bytes,13,opt,name=privileges" json:"privileges,omitempty"`
  1639  	// Columns or indexes being added or deleted in a FIFO order.
  1640  	Mutations []DescriptorMutation               `protobuf:"bytes,14,rep,name=mutations" json:"mutations"`
  1641  	Lease     *TableDescriptor_SchemaChangeLease `protobuf:"bytes,15,opt,name=lease" json:"lease,omitempty"` // Deprecated: Do not use.
  1642  	// An id for the next group of mutations to be applied together.
  1643  	NextMutationID MutationID `protobuf:"varint,16,opt,name=next_mutation_id,json=nextMutationId,casttype=MutationID" json:"next_mutation_id"`
  1644  	// format_version declares which sql to key:value mapping is being used to
  1645  	// represent the data in this table.
  1646  	FormatVersion FormatVersion                      `protobuf:"varint,17,opt,name=format_version,json=formatVersion,casttype=FormatVersion" json:"format_version"`
  1647  	State         TableDescriptor_State              `protobuf:"varint,19,opt,name=state,enum=cockroach.sql.sqlbase.TableDescriptor_State" json:"state"`
  1648  	OfflineReason string                             `protobuf:"bytes,38,opt,name=offline_reason,json=offlineReason" json:"offline_reason"`
  1649  	Checks        []*TableDescriptor_CheckConstraint `protobuf:"bytes,20,rep,name=checks" json:"checks,omitempty"`
  1650  	// A list of draining names. The draining name entries are drained from
  1651  	// the cluster wide name caches by incrementing the version for this
  1652  	// descriptor and ensuring that there are no leases on prior
  1653  	// versions of the descriptor. This field is then cleared and the version
  1654  	// of the descriptor incremented.
  1655  	DrainingNames []TableDescriptor_NameInfo `protobuf:"bytes,21,rep,name=draining_names,json=drainingNames" json:"draining_names"`
  1656  	// The TableDescriptor is used for views in addition to tables. Views
  1657  	// use mostly the same fields as tables, but need to track the actual
  1658  	// query from the view definition as well.
  1659  	//
  1660  	// For now we only track a string representation of the query. This prevents
  1661  	// us from easily supporting things like renames of the dependencies of a
  1662  	// view. Eventually we'll want to switch to a semantic encoding of the query
  1663  	// that relies on IDs rather than names so that we can support renames of
  1664  	// fields relied on by the query, as Postgres does.
  1665  	//
  1666  	// Note: The presence of this field is used to determine whether or not
  1667  	// a TableDescriptor represents a view.
  1668  	ViewQuery string `protobuf:"bytes,24,opt,name=view_query,json=viewQuery" json:"view_query"`
  1669  	// The IDs of all relations that this depends on.
  1670  	// Only ever populated if this descriptor is for a view.
  1671  	DependsOn []ID `protobuf:"varint,25,rep,name=dependsOn,casttype=ID" json:"dependsOn,omitempty"`
  1672  	// All references to this table/view from other views and sequences in the system,
  1673  	// tracked down to the column/index so that we can restrict changes to them while
  1674  	// they're still being referred to.
  1675  	DependedOnBy []TableDescriptor_Reference `protobuf:"bytes,26,rep,name=dependedOnBy" json:"dependedOnBy"`
  1676  	// Mutation jobs queued for execution in a FIFO order. Remains synchronized
  1677  	// with the mutations list.
  1678  	MutationJobs []TableDescriptor_MutationJob `protobuf:"bytes,27,rep,name=mutationJobs" json:"mutationJobs"`
  1679  	// The presence of sequence_opts indicates that this descriptor is for a sequence.
  1680  	SequenceOpts *TableDescriptor_SequenceOpts `protobuf:"bytes,28,opt,name=sequence_opts,json=sequenceOpts" json:"sequence_opts,omitempty"`
  1681  	// The drop time is set when a table is truncated or dropped,
  1682  	// based on the current time in nanoseconds since the epoch.
  1683  	// Use this timestamp + GC TTL to start deleting the table's
  1684  	// contents.
  1685  	//
  1686  	// TODO(vivek): Replace with the ModificationTime. This has been
  1687  	// added only for migration purposes.
  1688  	DropTime int64 `protobuf:"varint,29,opt,name=drop_time,json=dropTime" json:"drop_time"`
  1689  	// ReplacementOf tracks prior IDs by which this table went -- e.g. when
  1690  	// TRUNCATE creates a replacement of a table and swaps it in for the the old
  1691  	// one, it should note on the new table the ID of the table it replaced. This
  1692  	// can be used when trying to track a table's history across truncatations.
  1693  	ReplacementOf TableDescriptor_Replacement `protobuf:"bytes,30,opt,name=replacement_of,json=replacementOf" json:"replacement_of"`
  1694  	AuditMode     TableDescriptor_AuditMode   `protobuf:"varint,31,opt,name=audit_mode,json=auditMode,enum=cockroach.sql.sqlbase.TableDescriptor_AuditMode" json:"audit_mode"`
  1695  	// The job id for a drop job is the id in the system.jobs table of the
  1696  	// dropping of this table.
  1697  	DropJobID int64 `protobuf:"varint,32,opt,name=drop_job_id,json=dropJobId" json:"drop_job_id"`
  1698  	// The schema elements that have been dropped and whose underlying
  1699  	// data needs to be gc-ed. These schema elements have already transitioned
  1700  	// through the drop state machine when they were in the above mutations
  1701  	// list, and can be safely deleted. The names for these schema elements
  1702  	// can be reused. This list is separate because mutations can
  1703  	// lie in this list for a long time (gc deadline) and should not block
  1704  	// the execution of other schema changes on the table.
  1705  	//
  1706  	// TODO(vivekmenezes): This is currently only used by the non-interleaved drop
  1707  	// index case. Also use for dropped interleaved indexes and columns.
  1708  	GCMutations []TableDescriptor_GCDescriptorMutation `protobuf:"bytes,33,rep,name=gc_mutations,json=gcMutations" json:"gc_mutations"`
  1709  	CreateQuery string                                 `protobuf:"bytes,34,opt,name=create_query,json=createQuery" json:"create_query"`
  1710  	// Starting in 19.2 CreateAsOfTime is initialized to zero for the first
  1711  	// version of a table and is populated from the MVCC timestamp of the read
  1712  	// like ModificationTime. See Descriptor.Table().
  1713  	// CreateAsOfSystemTime is used for CREATE TABLE ... AS ... and was
  1714  	// added in 19.1.
  1715  	CreateAsOfTime hlc.Timestamp `protobuf:"bytes,35,opt,name=create_as_of_time,json=createAsOfTime" json:"create_as_of_time"`
  1716  	// outbound_fks contains all foreign key constraints that have this table as
  1717  	// the origin table.
  1718  	OutboundFKs []ForeignKeyConstraint `protobuf:"bytes,36,rep,name=outbound_fks,json=outboundFks" json:"outbound_fks"`
  1719  	// inbound_fks contains all foreign key constraints that have this table as
  1720  	// the referenced table.
  1721  	InboundFKs []ForeignKeyConstraint `protobuf:"bytes,37,rep,name=inbound_fks,json=inboundFks" json:"inbound_fks"`
  1722  	// Temporary table support will be added to CRDB starting from 20.1. The temporary
  1723  	// flag is set to true for all temporary tables. All table descriptors created
  1724  	// before 20.1 refer to persistent tables, so lack of the flag being set implies
  1725  	// the table is persistent.
  1726  	Temporary bool `protobuf:"varint,39,opt,name=temporary" json:"temporary"`
  1727  }
  1728  
  1729  func (m *TableDescriptor) Reset()         { *m = TableDescriptor{} }
  1730  func (m *TableDescriptor) String() string { return proto.CompactTextString(m) }
  1731  func (*TableDescriptor) ProtoMessage()    {}
  1732  func (*TableDescriptor) Descriptor() ([]byte, []int) {
  1733  	return fileDescriptor_structured_6e223c312147c376, []int{12}
  1734  }
  1735  func (m *TableDescriptor) XXX_Unmarshal(b []byte) error {
  1736  	return m.Unmarshal(b)
  1737  }
  1738  func (m *TableDescriptor) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1739  	b = b[:cap(b)]
  1740  	n, err := m.MarshalTo(b)
  1741  	if err != nil {
  1742  		return nil, err
  1743  	}
  1744  	return b[:n], nil
  1745  }
  1746  func (dst *TableDescriptor) XXX_Merge(src proto.Message) {
  1747  	xxx_messageInfo_TableDescriptor.Merge(dst, src)
  1748  }
  1749  func (m *TableDescriptor) XXX_Size() int {
  1750  	return m.Size()
  1751  }
  1752  func (m *TableDescriptor) XXX_DiscardUnknown() {
  1753  	xxx_messageInfo_TableDescriptor.DiscardUnknown(m)
  1754  }
  1755  
  1756  var xxx_messageInfo_TableDescriptor proto.InternalMessageInfo
  1757  
  1758  func (m *TableDescriptor) GetName() string {
  1759  	if m != nil {
  1760  		return m.Name
  1761  	}
  1762  	return ""
  1763  }
  1764  
  1765  func (m *TableDescriptor) GetID() ID {
  1766  	if m != nil {
  1767  		return m.ID
  1768  	}
  1769  	return 0
  1770  }
  1771  
  1772  func (m *TableDescriptor) GetParentID() ID {
  1773  	if m != nil {
  1774  		return m.ParentID
  1775  	}
  1776  	return 0
  1777  }
  1778  
  1779  func (m *TableDescriptor) GetUnexposedParentSchemaID() ID {
  1780  	if m != nil {
  1781  		return m.UnexposedParentSchemaID
  1782  	}
  1783  	return 0
  1784  }
  1785  
  1786  func (m *TableDescriptor) GetVersion() DescriptorVersion {
  1787  	if m != nil {
  1788  		return m.Version
  1789  	}
  1790  	return 0
  1791  }
  1792  
  1793  func (m *TableDescriptor) GetModificationTime() hlc.Timestamp {
  1794  	if m != nil {
  1795  		return m.ModificationTime
  1796  	}
  1797  	return hlc.Timestamp{}
  1798  }
  1799  
  1800  func (m *TableDescriptor) GetColumns() []ColumnDescriptor {
  1801  	if m != nil {
  1802  		return m.Columns
  1803  	}
  1804  	return nil
  1805  }
  1806  
  1807  func (m *TableDescriptor) GetNextColumnID() ColumnID {
  1808  	if m != nil {
  1809  		return m.NextColumnID
  1810  	}
  1811  	return 0
  1812  }
  1813  
  1814  func (m *TableDescriptor) GetFamilies() []ColumnFamilyDescriptor {
  1815  	if m != nil {
  1816  		return m.Families
  1817  	}
  1818  	return nil
  1819  }
  1820  
  1821  func (m *TableDescriptor) GetNextFamilyID() FamilyID {
  1822  	if m != nil {
  1823  		return m.NextFamilyID
  1824  	}
  1825  	return 0
  1826  }
  1827  
  1828  func (m *TableDescriptor) GetPrimaryIndex() IndexDescriptor {
  1829  	if m != nil {
  1830  		return m.PrimaryIndex
  1831  	}
  1832  	return IndexDescriptor{}
  1833  }
  1834  
  1835  func (m *TableDescriptor) GetIndexes() []IndexDescriptor {
  1836  	if m != nil {
  1837  		return m.Indexes
  1838  	}
  1839  	return nil
  1840  }
  1841  
  1842  func (m *TableDescriptor) GetNextIndexID() IndexID {
  1843  	if m != nil {
  1844  		return m.NextIndexID
  1845  	}
  1846  	return 0
  1847  }
  1848  
  1849  func (m *TableDescriptor) GetPrivileges() *PrivilegeDescriptor {
  1850  	if m != nil {
  1851  		return m.Privileges
  1852  	}
  1853  	return nil
  1854  }
  1855  
  1856  func (m *TableDescriptor) GetMutations() []DescriptorMutation {
  1857  	if m != nil {
  1858  		return m.Mutations
  1859  	}
  1860  	return nil
  1861  }
  1862  
  1863  // Deprecated: Do not use.
  1864  func (m *TableDescriptor) GetLease() *TableDescriptor_SchemaChangeLease {
  1865  	if m != nil {
  1866  		return m.Lease
  1867  	}
  1868  	return nil
  1869  }
  1870  
  1871  func (m *TableDescriptor) GetNextMutationID() MutationID {
  1872  	if m != nil {
  1873  		return m.NextMutationID
  1874  	}
  1875  	return 0
  1876  }
  1877  
  1878  func (m *TableDescriptor) GetFormatVersion() FormatVersion {
  1879  	if m != nil {
  1880  		return m.FormatVersion
  1881  	}
  1882  	return 0
  1883  }
  1884  
  1885  func (m *TableDescriptor) GetState() TableDescriptor_State {
  1886  	if m != nil {
  1887  		return m.State
  1888  	}
  1889  	return TableDescriptor_PUBLIC
  1890  }
  1891  
  1892  func (m *TableDescriptor) GetOfflineReason() string {
  1893  	if m != nil {
  1894  		return m.OfflineReason
  1895  	}
  1896  	return ""
  1897  }
  1898  
  1899  func (m *TableDescriptor) GetChecks() []*TableDescriptor_CheckConstraint {
  1900  	if m != nil {
  1901  		return m.Checks
  1902  	}
  1903  	return nil
  1904  }
  1905  
  1906  func (m *TableDescriptor) GetDrainingNames() []TableDescriptor_NameInfo {
  1907  	if m != nil {
  1908  		return m.DrainingNames
  1909  	}
  1910  	return nil
  1911  }
  1912  
  1913  func (m *TableDescriptor) GetViewQuery() string {
  1914  	if m != nil {
  1915  		return m.ViewQuery
  1916  	}
  1917  	return ""
  1918  }
  1919  
  1920  func (m *TableDescriptor) GetDependsOn() []ID {
  1921  	if m != nil {
  1922  		return m.DependsOn
  1923  	}
  1924  	return nil
  1925  }
  1926  
  1927  func (m *TableDescriptor) GetDependedOnBy() []TableDescriptor_Reference {
  1928  	if m != nil {
  1929  		return m.DependedOnBy
  1930  	}
  1931  	return nil
  1932  }
  1933  
  1934  func (m *TableDescriptor) GetMutationJobs() []TableDescriptor_MutationJob {
  1935  	if m != nil {
  1936  		return m.MutationJobs
  1937  	}
  1938  	return nil
  1939  }
  1940  
  1941  func (m *TableDescriptor) GetSequenceOpts() *TableDescriptor_SequenceOpts {
  1942  	if m != nil {
  1943  		return m.SequenceOpts
  1944  	}
  1945  	return nil
  1946  }
  1947  
  1948  func (m *TableDescriptor) GetDropTime() int64 {
  1949  	if m != nil {
  1950  		return m.DropTime
  1951  	}
  1952  	return 0
  1953  }
  1954  
  1955  func (m *TableDescriptor) GetReplacementOf() TableDescriptor_Replacement {
  1956  	if m != nil {
  1957  		return m.ReplacementOf
  1958  	}
  1959  	return TableDescriptor_Replacement{}
  1960  }
  1961  
  1962  func (m *TableDescriptor) GetAuditMode() TableDescriptor_AuditMode {
  1963  	if m != nil {
  1964  		return m.AuditMode
  1965  	}
  1966  	return TableDescriptor_DISABLED
  1967  }
  1968  
  1969  func (m *TableDescriptor) GetDropJobID() int64 {
  1970  	if m != nil {
  1971  		return m.DropJobID
  1972  	}
  1973  	return 0
  1974  }
  1975  
  1976  func (m *TableDescriptor) GetGCMutations() []TableDescriptor_GCDescriptorMutation {
  1977  	if m != nil {
  1978  		return m.GCMutations
  1979  	}
  1980  	return nil
  1981  }
  1982  
  1983  func (m *TableDescriptor) GetCreateQuery() string {
  1984  	if m != nil {
  1985  		return m.CreateQuery
  1986  	}
  1987  	return ""
  1988  }
  1989  
  1990  func (m *TableDescriptor) GetCreateAsOfTime() hlc.Timestamp {
  1991  	if m != nil {
  1992  		return m.CreateAsOfTime
  1993  	}
  1994  	return hlc.Timestamp{}
  1995  }
  1996  
  1997  func (m *TableDescriptor) GetOutboundFKs() []ForeignKeyConstraint {
  1998  	if m != nil {
  1999  		return m.OutboundFKs
  2000  	}
  2001  	return nil
  2002  }
  2003  
  2004  func (m *TableDescriptor) GetInboundFKs() []ForeignKeyConstraint {
  2005  	if m != nil {
  2006  		return m.InboundFKs
  2007  	}
  2008  	return nil
  2009  }
  2010  
  2011  func (m *TableDescriptor) GetTemporary() bool {
  2012  	if m != nil {
  2013  		return m.Temporary
  2014  	}
  2015  	return false
  2016  }
  2017  
  2018  // The schema update lease. A single goroutine across a cockroach cluster
  2019  // can own it, and will execute pending schema changes for this table.
  2020  // Since the execution of a pending schema change is through transactions,
  2021  // it is legal for more than one goroutine to attempt to execute it. This
  2022  // lease reduces write contention on the schema change.
  2023  type TableDescriptor_SchemaChangeLease struct {
  2024  	NodeID github_com_cockroachdb_cockroach_pkg_roachpb.NodeID `protobuf:"varint,1,opt,name=node_id,json=nodeId,casttype=github.com/cockroachdb/cockroach/pkg/roachpb.NodeID" json:"node_id"`
  2025  	// Nanoseconds since the Unix epoch.
  2026  	ExpirationTime int64 `protobuf:"varint,2,opt,name=expiration_time,json=expirationTime" json:"expiration_time"`
  2027  }
  2028  
  2029  func (m *TableDescriptor_SchemaChangeLease) Reset()         { *m = TableDescriptor_SchemaChangeLease{} }
  2030  func (m *TableDescriptor_SchemaChangeLease) String() string { return proto.CompactTextString(m) }
  2031  func (*TableDescriptor_SchemaChangeLease) ProtoMessage()    {}
  2032  func (*TableDescriptor_SchemaChangeLease) Descriptor() ([]byte, []int) {
  2033  	return fileDescriptor_structured_6e223c312147c376, []int{12, 0}
  2034  }
  2035  func (m *TableDescriptor_SchemaChangeLease) XXX_Unmarshal(b []byte) error {
  2036  	return m.Unmarshal(b)
  2037  }
  2038  func (m *TableDescriptor_SchemaChangeLease) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2039  	b = b[:cap(b)]
  2040  	n, err := m.MarshalTo(b)
  2041  	if err != nil {
  2042  		return nil, err
  2043  	}
  2044  	return b[:n], nil
  2045  }
  2046  func (dst *TableDescriptor_SchemaChangeLease) XXX_Merge(src proto.Message) {
  2047  	xxx_messageInfo_TableDescriptor_SchemaChangeLease.Merge(dst, src)
  2048  }
  2049  func (m *TableDescriptor_SchemaChangeLease) XXX_Size() int {
  2050  	return m.Size()
  2051  }
  2052  func (m *TableDescriptor_SchemaChangeLease) XXX_DiscardUnknown() {
  2053  	xxx_messageInfo_TableDescriptor_SchemaChangeLease.DiscardUnknown(m)
  2054  }
  2055  
  2056  var xxx_messageInfo_TableDescriptor_SchemaChangeLease proto.InternalMessageInfo
  2057  
  2058  type TableDescriptor_CheckConstraint struct {
  2059  	// Expr is the expression that this check constraint represents.
  2060  	// Note that it is not correct to use Expr as output to display
  2061  	// to a user. User defined types within Expr have been serialized
  2062  	// in a internal format. Instead, format the result of
  2063  	// DeserializeTableDescExpr.
  2064  	Expr     string             `protobuf:"bytes,1,opt,name=expr" json:"expr"`
  2065  	Name     string             `protobuf:"bytes,2,opt,name=name" json:"name"`
  2066  	Validity ConstraintValidity `protobuf:"varint,3,opt,name=validity,enum=cockroach.sql.sqlbase.ConstraintValidity" json:"validity"`
  2067  	// An ordered list of column IDs used by the check constraint.
  2068  	ColumnIDs           []ColumnID `protobuf:"varint,5,rep,name=column_ids,json=columnIds,casttype=ColumnID" json:"column_ids,omitempty"`
  2069  	IsNonNullConstraint bool       `protobuf:"varint,6,opt,name=is_non_null_constraint,json=isNonNullConstraint" json:"is_non_null_constraint"`
  2070  	// Whether the check constraint should show up in the result of a `SHOW CREATE
  2071  	// TABLE..` statement.
  2072  	Hidden bool `protobuf:"varint,7,opt,name=hidden" json:"hidden"`
  2073  }
  2074  
  2075  func (m *TableDescriptor_CheckConstraint) Reset()         { *m = TableDescriptor_CheckConstraint{} }
  2076  func (m *TableDescriptor_CheckConstraint) String() string { return proto.CompactTextString(m) }
  2077  func (*TableDescriptor_CheckConstraint) ProtoMessage()    {}
  2078  func (*TableDescriptor_CheckConstraint) Descriptor() ([]byte, []int) {
  2079  	return fileDescriptor_structured_6e223c312147c376, []int{12, 1}
  2080  }
  2081  func (m *TableDescriptor_CheckConstraint) XXX_Unmarshal(b []byte) error {
  2082  	return m.Unmarshal(b)
  2083  }
  2084  func (m *TableDescriptor_CheckConstraint) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2085  	b = b[:cap(b)]
  2086  	n, err := m.MarshalTo(b)
  2087  	if err != nil {
  2088  		return nil, err
  2089  	}
  2090  	return b[:n], nil
  2091  }
  2092  func (dst *TableDescriptor_CheckConstraint) XXX_Merge(src proto.Message) {
  2093  	xxx_messageInfo_TableDescriptor_CheckConstraint.Merge(dst, src)
  2094  }
  2095  func (m *TableDescriptor_CheckConstraint) XXX_Size() int {
  2096  	return m.Size()
  2097  }
  2098  func (m *TableDescriptor_CheckConstraint) XXX_DiscardUnknown() {
  2099  	xxx_messageInfo_TableDescriptor_CheckConstraint.DiscardUnknown(m)
  2100  }
  2101  
  2102  var xxx_messageInfo_TableDescriptor_CheckConstraint proto.InternalMessageInfo
  2103  
  2104  // A table descriptor is named through a name map stored in the
  2105  // system.namespace table: a map from {parent_id, table_name} -> id.
  2106  // This name map can be cached for performance on a node in the cluster
  2107  // making reassigning a name complicated. In particular, since a
  2108  // name cannot be withdrawn across a cluster in a transaction at
  2109  // timestamp T, we have to worry about the following:
  2110  //
  2111  // 1. A table is dropped at T, and the name and descriptor are still
  2112  // cached and used by transactions at timestamps >= T.
  2113  // 2. A table is renamed from foo to bar at T, and both names foo and bar
  2114  // can be used by transactions at timestamps >= T.
  2115  // 3. A name foo is reassigned from one table to another at T, and the name
  2116  // foo can reference two different tables at timestamps >= T.
  2117  //
  2118  // The system ensures that a name can be resolved only to a single
  2119  // descriptor at a timestamp thereby permitting 1 and 2, but not 3
  2120  // (the name references two tables).
  2121  //
  2122  // The transaction at T is followed by a time period when names no longer
  2123  // a part of the namespace are drained from the system. Once the old name
  2124  // is drained from the system another transaction at timestamp S is
  2125  // executed to release the name for future use. The interval from T to S
  2126  // is called the name drain interval: If the T transaction is removing
  2127  // the name foo then, at timestamps above S, foo can no longer be resolved.
  2128  //
  2129  // Consider a transaction at T in which name B is dropped, a new name C is
  2130  // created. Name C is viable as soon as the transaction commits.
  2131  // When the transaction at S commits, the name B is released for reuse.
  2132  //
  2133  // The transaction at S runs through the schema changer, with the system
  2134  // returning a response to the client initiating transaction T only after
  2135  // transaction at S is committed. So effectively the SQL transaction once
  2136  // it returns can be followed by SQL transactions that do not observe
  2137  // old name mappings.
  2138  //
  2139  // Note: an exception to this is #19925 which needs to be fixed.
  2140  //
  2141  // In order for transaction at S to act properly the system.namespace
  2142  // table entry for an old name references the descriptor who was the
  2143  // prior owner of the name requiring draining.
  2144  //
  2145  // Before T:   B -> Desc B
  2146  //
  2147  // After T and before S: B -> Desc B, C -> Desc C
  2148  //
  2149  // After S: C -> Desc C
  2150  //
  2151  // Between T and S the name B is drained and the system is unable
  2152  // to assign it to another descriptor.
  2153  //
  2154  // BEGIN;
  2155  // RENAME foo TO bar;
  2156  // CREATE foo;
  2157  //
  2158  // will fail because CREATE foo is executed at T.
  2159  //
  2160  // RENAME foo TO bar;
  2161  // CREATE foo;
  2162  //
  2163  // will succeed because the RENAME returns after S and CREATE foo is
  2164  // executed after S.
  2165  //
  2166  // The above scheme suffers from the problem that a transaction can observe
  2167  // the partial effect of a committed transaction during the drain interval.
  2168  // For instance during the drain interval a transaction can see the correct
  2169  // assignment for C, and the old assignments for B.
  2170  //
  2171  type TableDescriptor_NameInfo struct {
  2172  	// The database that the table belonged to before the rename (tables can be
  2173  	// renamed from one db to another).
  2174  	ParentID ID `protobuf:"varint,1,opt,name=parent_id,json=parentId,casttype=ID" json:"parent_id"`
  2175  	// The schemaID of the schema the table belongs to before the rename/drop.
  2176  	// Required to correctly identify which namespace entry to reclaim.
  2177  	ParentSchemaID ID     `protobuf:"varint,3,opt,name=parent_schema_id,json=parentSchemaId,casttype=ID" json:"parent_schema_id"`
  2178  	Name           string `protobuf:"bytes,2,opt,name=name" json:"name"`
  2179  }
  2180  
  2181  func (m *TableDescriptor_NameInfo) Reset()         { *m = TableDescriptor_NameInfo{} }
  2182  func (m *TableDescriptor_NameInfo) String() string { return proto.CompactTextString(m) }
  2183  func (*TableDescriptor_NameInfo) ProtoMessage()    {}
  2184  func (*TableDescriptor_NameInfo) Descriptor() ([]byte, []int) {
  2185  	return fileDescriptor_structured_6e223c312147c376, []int{12, 2}
  2186  }
  2187  func (m *TableDescriptor_NameInfo) XXX_Unmarshal(b []byte) error {
  2188  	return m.Unmarshal(b)
  2189  }
  2190  func (m *TableDescriptor_NameInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2191  	b = b[:cap(b)]
  2192  	n, err := m.MarshalTo(b)
  2193  	if err != nil {
  2194  		return nil, err
  2195  	}
  2196  	return b[:n], nil
  2197  }
  2198  func (dst *TableDescriptor_NameInfo) XXX_Merge(src proto.Message) {
  2199  	xxx_messageInfo_TableDescriptor_NameInfo.Merge(dst, src)
  2200  }
  2201  func (m *TableDescriptor_NameInfo) XXX_Size() int {
  2202  	return m.Size()
  2203  }
  2204  func (m *TableDescriptor_NameInfo) XXX_DiscardUnknown() {
  2205  	xxx_messageInfo_TableDescriptor_NameInfo.DiscardUnknown(m)
  2206  }
  2207  
  2208  var xxx_messageInfo_TableDescriptor_NameInfo proto.InternalMessageInfo
  2209  
  2210  type TableDescriptor_Reference struct {
  2211  	// The ID of the relation that depends on this one.
  2212  	ID ID `protobuf:"varint,1,opt,name=id,casttype=ID" json:"id"`
  2213  	// If applicable, the ID of this table's index that is referenced by the
  2214  	// dependent relation.
  2215  	IndexID IndexID `protobuf:"varint,2,opt,name=index_id,json=indexId,casttype=IndexID" json:"index_id"`
  2216  	// The IDs of this table's columns that are referenced by the dependent
  2217  	// relation.
  2218  	ColumnIDs []ColumnID `protobuf:"varint,3,rep,name=column_ids,json=columnIds,casttype=ColumnID" json:"column_ids,omitempty"`
  2219  }
  2220  
  2221  func (m *TableDescriptor_Reference) Reset()         { *m = TableDescriptor_Reference{} }
  2222  func (m *TableDescriptor_Reference) String() string { return proto.CompactTextString(m) }
  2223  func (*TableDescriptor_Reference) ProtoMessage()    {}
  2224  func (*TableDescriptor_Reference) Descriptor() ([]byte, []int) {
  2225  	return fileDescriptor_structured_6e223c312147c376, []int{12, 3}
  2226  }
  2227  func (m *TableDescriptor_Reference) XXX_Unmarshal(b []byte) error {
  2228  	return m.Unmarshal(b)
  2229  }
  2230  func (m *TableDescriptor_Reference) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2231  	b = b[:cap(b)]
  2232  	n, err := m.MarshalTo(b)
  2233  	if err != nil {
  2234  		return nil, err
  2235  	}
  2236  	return b[:n], nil
  2237  }
  2238  func (dst *TableDescriptor_Reference) XXX_Merge(src proto.Message) {
  2239  	xxx_messageInfo_TableDescriptor_Reference.Merge(dst, src)
  2240  }
  2241  func (m *TableDescriptor_Reference) XXX_Size() int {
  2242  	return m.Size()
  2243  }
  2244  func (m *TableDescriptor_Reference) XXX_DiscardUnknown() {
  2245  	xxx_messageInfo_TableDescriptor_Reference.DiscardUnknown(m)
  2246  }
  2247  
  2248  var xxx_messageInfo_TableDescriptor_Reference proto.InternalMessageInfo
  2249  
  2250  type TableDescriptor_MutationJob struct {
  2251  	// The mutation id of this mutation job.
  2252  	MutationID MutationID `protobuf:"varint,1,opt,name=mutation_id,json=mutationId,casttype=MutationID" json:"mutation_id"`
  2253  	// The job id for a mutation job is the id in the system.jobs table of the
  2254  	// schema change job executing the mutation referenced by mutation_id.
  2255  	JobID int64 `protobuf:"varint,2,opt,name=job_id,json=jobId" json:"job_id"`
  2256  }
  2257  
  2258  func (m *TableDescriptor_MutationJob) Reset()         { *m = TableDescriptor_MutationJob{} }
  2259  func (m *TableDescriptor_MutationJob) String() string { return proto.CompactTextString(m) }
  2260  func (*TableDescriptor_MutationJob) ProtoMessage()    {}
  2261  func (*TableDescriptor_MutationJob) Descriptor() ([]byte, []int) {
  2262  	return fileDescriptor_structured_6e223c312147c376, []int{12, 4}
  2263  }
  2264  func (m *TableDescriptor_MutationJob) XXX_Unmarshal(b []byte) error {
  2265  	return m.Unmarshal(b)
  2266  }
  2267  func (m *TableDescriptor_MutationJob) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2268  	b = b[:cap(b)]
  2269  	n, err := m.MarshalTo(b)
  2270  	if err != nil {
  2271  		return nil, err
  2272  	}
  2273  	return b[:n], nil
  2274  }
  2275  func (dst *TableDescriptor_MutationJob) XXX_Merge(src proto.Message) {
  2276  	xxx_messageInfo_TableDescriptor_MutationJob.Merge(dst, src)
  2277  }
  2278  func (m *TableDescriptor_MutationJob) XXX_Size() int {
  2279  	return m.Size()
  2280  }
  2281  func (m *TableDescriptor_MutationJob) XXX_DiscardUnknown() {
  2282  	xxx_messageInfo_TableDescriptor_MutationJob.DiscardUnknown(m)
  2283  }
  2284  
  2285  var xxx_messageInfo_TableDescriptor_MutationJob proto.InternalMessageInfo
  2286  
  2287  type TableDescriptor_SequenceOpts struct {
  2288  	// How much to increment the sequence by when nextval() is called.
  2289  	Increment int64 `protobuf:"varint,1,opt,name=increment" json:"increment"`
  2290  	// Minimum value of the sequence.
  2291  	MinValue int64 `protobuf:"varint,2,opt,name=min_value,json=minValue" json:"min_value"`
  2292  	// Maximum value of the sequence.
  2293  	MaxValue int64 `protobuf:"varint,3,opt,name=max_value,json=maxValue" json:"max_value"`
  2294  	// Start value of the sequence.
  2295  	Start int64 `protobuf:"varint,4,opt,name=start" json:"start"`
  2296  	// Whether the sequence is virtual.
  2297  	Virtual       bool                                       `protobuf:"varint,5,opt,name=virtual" json:"virtual"`
  2298  	SequenceOwner TableDescriptor_SequenceOpts_SequenceOwner `protobuf:"bytes,6,opt,name=sequence_owner,json=sequenceOwner" json:"sequence_owner"`
  2299  }
  2300  
  2301  func (m *TableDescriptor_SequenceOpts) Reset()         { *m = TableDescriptor_SequenceOpts{} }
  2302  func (m *TableDescriptor_SequenceOpts) String() string { return proto.CompactTextString(m) }
  2303  func (*TableDescriptor_SequenceOpts) ProtoMessage()    {}
  2304  func (*TableDescriptor_SequenceOpts) Descriptor() ([]byte, []int) {
  2305  	return fileDescriptor_structured_6e223c312147c376, []int{12, 5}
  2306  }
  2307  func (m *TableDescriptor_SequenceOpts) XXX_Unmarshal(b []byte) error {
  2308  	return m.Unmarshal(b)
  2309  }
  2310  func (m *TableDescriptor_SequenceOpts) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2311  	b = b[:cap(b)]
  2312  	n, err := m.MarshalTo(b)
  2313  	if err != nil {
  2314  		return nil, err
  2315  	}
  2316  	return b[:n], nil
  2317  }
  2318  func (dst *TableDescriptor_SequenceOpts) XXX_Merge(src proto.Message) {
  2319  	xxx_messageInfo_TableDescriptor_SequenceOpts.Merge(dst, src)
  2320  }
  2321  func (m *TableDescriptor_SequenceOpts) XXX_Size() int {
  2322  	return m.Size()
  2323  }
  2324  func (m *TableDescriptor_SequenceOpts) XXX_DiscardUnknown() {
  2325  	xxx_messageInfo_TableDescriptor_SequenceOpts.DiscardUnknown(m)
  2326  }
  2327  
  2328  var xxx_messageInfo_TableDescriptor_SequenceOpts proto.InternalMessageInfo
  2329  
  2330  type TableDescriptor_SequenceOpts_SequenceOwner struct {
  2331  	// Sequence Owner's Column ID
  2332  	OwnerColumnID ColumnID `protobuf:"varint,1,opt,name=owner_column_id,json=ownerColumnId,casttype=ColumnID" json:"owner_column_id"`
  2333  	// Sequence Owner's Table ID
  2334  	OwnerTableID ID `protobuf:"varint,2,opt,name=owner_table_id,json=ownerTableId,casttype=ID" json:"owner_table_id"`
  2335  }
  2336  
  2337  func (m *TableDescriptor_SequenceOpts_SequenceOwner) Reset() {
  2338  	*m = TableDescriptor_SequenceOpts_SequenceOwner{}
  2339  }
  2340  func (m *TableDescriptor_SequenceOpts_SequenceOwner) String() string {
  2341  	return proto.CompactTextString(m)
  2342  }
  2343  func (*TableDescriptor_SequenceOpts_SequenceOwner) ProtoMessage() {}
  2344  func (*TableDescriptor_SequenceOpts_SequenceOwner) Descriptor() ([]byte, []int) {
  2345  	return fileDescriptor_structured_6e223c312147c376, []int{12, 5, 0}
  2346  }
  2347  func (m *TableDescriptor_SequenceOpts_SequenceOwner) XXX_Unmarshal(b []byte) error {
  2348  	return m.Unmarshal(b)
  2349  }
  2350  func (m *TableDescriptor_SequenceOpts_SequenceOwner) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2351  	b = b[:cap(b)]
  2352  	n, err := m.MarshalTo(b)
  2353  	if err != nil {
  2354  		return nil, err
  2355  	}
  2356  	return b[:n], nil
  2357  }
  2358  func (dst *TableDescriptor_SequenceOpts_SequenceOwner) XXX_Merge(src proto.Message) {
  2359  	xxx_messageInfo_TableDescriptor_SequenceOpts_SequenceOwner.Merge(dst, src)
  2360  }
  2361  func (m *TableDescriptor_SequenceOpts_SequenceOwner) XXX_Size() int {
  2362  	return m.Size()
  2363  }
  2364  func (m *TableDescriptor_SequenceOpts_SequenceOwner) XXX_DiscardUnknown() {
  2365  	xxx_messageInfo_TableDescriptor_SequenceOpts_SequenceOwner.DiscardUnknown(m)
  2366  }
  2367  
  2368  var xxx_messageInfo_TableDescriptor_SequenceOpts_SequenceOwner proto.InternalMessageInfo
  2369  
  2370  type TableDescriptor_Replacement struct {
  2371  	ID ID `protobuf:"varint,1,opt,name=id,casttype=ID" json:"id"`
  2372  	// Time is just used for debugging purposes. It is not used in business
  2373  	// logic. It is an HLC rather than just wall time only for historical
  2374  	// reasons. Prior to 20.1 it was populated with the commit timestamp of the
  2375  	// transaction which created this replacement. In 20.1 and after it is
  2376  	// populated with the read timestamp at which the descriptor being
  2377  	// replaced was read.
  2378  	Time hlc.Timestamp `protobuf:"bytes,2,opt,name=time" json:"time"`
  2379  }
  2380  
  2381  func (m *TableDescriptor_Replacement) Reset()         { *m = TableDescriptor_Replacement{} }
  2382  func (m *TableDescriptor_Replacement) String() string { return proto.CompactTextString(m) }
  2383  func (*TableDescriptor_Replacement) ProtoMessage()    {}
  2384  func (*TableDescriptor_Replacement) Descriptor() ([]byte, []int) {
  2385  	return fileDescriptor_structured_6e223c312147c376, []int{12, 6}
  2386  }
  2387  func (m *TableDescriptor_Replacement) XXX_Unmarshal(b []byte) error {
  2388  	return m.Unmarshal(b)
  2389  }
  2390  func (m *TableDescriptor_Replacement) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2391  	b = b[:cap(b)]
  2392  	n, err := m.MarshalTo(b)
  2393  	if err != nil {
  2394  		return nil, err
  2395  	}
  2396  	return b[:n], nil
  2397  }
  2398  func (dst *TableDescriptor_Replacement) XXX_Merge(src proto.Message) {
  2399  	xxx_messageInfo_TableDescriptor_Replacement.Merge(dst, src)
  2400  }
  2401  func (m *TableDescriptor_Replacement) XXX_Size() int {
  2402  	return m.Size()
  2403  }
  2404  func (m *TableDescriptor_Replacement) XXX_DiscardUnknown() {
  2405  	xxx_messageInfo_TableDescriptor_Replacement.DiscardUnknown(m)
  2406  }
  2407  
  2408  var xxx_messageInfo_TableDescriptor_Replacement proto.InternalMessageInfo
  2409  
  2410  type TableDescriptor_GCDescriptorMutation struct {
  2411  	IndexID  IndexID `protobuf:"varint,1,opt,name=index_id,json=indexId,casttype=IndexID" json:"index_id"`
  2412  	DropTime int64   `protobuf:"varint,2,opt,name=drop_time,json=dropTime" json:"drop_time"` // Deprecated: Do not use.
  2413  	// The job id for a mutation job is the id in the system.jobs table of the
  2414  	// schema change job executing the mutation referenced by mutation_id.
  2415  	JobID int64 `protobuf:"varint,3,opt,name=job_id,json=jobId" json:"job_id"` // Deprecated: Do not use.
  2416  }
  2417  
  2418  func (m *TableDescriptor_GCDescriptorMutation) Reset()         { *m = TableDescriptor_GCDescriptorMutation{} }
  2419  func (m *TableDescriptor_GCDescriptorMutation) String() string { return proto.CompactTextString(m) }
  2420  func (*TableDescriptor_GCDescriptorMutation) ProtoMessage()    {}
  2421  func (*TableDescriptor_GCDescriptorMutation) Descriptor() ([]byte, []int) {
  2422  	return fileDescriptor_structured_6e223c312147c376, []int{12, 7}
  2423  }
  2424  func (m *TableDescriptor_GCDescriptorMutation) XXX_Unmarshal(b []byte) error {
  2425  	return m.Unmarshal(b)
  2426  }
  2427  func (m *TableDescriptor_GCDescriptorMutation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2428  	b = b[:cap(b)]
  2429  	n, err := m.MarshalTo(b)
  2430  	if err != nil {
  2431  		return nil, err
  2432  	}
  2433  	return b[:n], nil
  2434  }
  2435  func (dst *TableDescriptor_GCDescriptorMutation) XXX_Merge(src proto.Message) {
  2436  	xxx_messageInfo_TableDescriptor_GCDescriptorMutation.Merge(dst, src)
  2437  }
  2438  func (m *TableDescriptor_GCDescriptorMutation) XXX_Size() int {
  2439  	return m.Size()
  2440  }
  2441  func (m *TableDescriptor_GCDescriptorMutation) XXX_DiscardUnknown() {
  2442  	xxx_messageInfo_TableDescriptor_GCDescriptorMutation.DiscardUnknown(m)
  2443  }
  2444  
  2445  var xxx_messageInfo_TableDescriptor_GCDescriptorMutation proto.InternalMessageInfo
  2446  
  2447  // DatabaseDescriptor represents a namespace (aka database) and is stored
  2448  // in a structured metadata key. The DatabaseDescriptor has a globally-unique ID
  2449  // shared with other Descriptors.
  2450  // Permissions are applied to all tables in the namespace.
  2451  type DatabaseDescriptor struct {
  2452  	Name       string               `protobuf:"bytes,1,opt,name=name" json:"name"`
  2453  	ID         ID                   `protobuf:"varint,2,opt,name=id,casttype=ID" json:"id"`
  2454  	Privileges *PrivilegeDescriptor `protobuf:"bytes,3,opt,name=privileges" json:"privileges,omitempty"`
  2455  }
  2456  
  2457  func (m *DatabaseDescriptor) Reset()         { *m = DatabaseDescriptor{} }
  2458  func (m *DatabaseDescriptor) String() string { return proto.CompactTextString(m) }
  2459  func (*DatabaseDescriptor) ProtoMessage()    {}
  2460  func (*DatabaseDescriptor) Descriptor() ([]byte, []int) {
  2461  	return fileDescriptor_structured_6e223c312147c376, []int{13}
  2462  }
  2463  func (m *DatabaseDescriptor) XXX_Unmarshal(b []byte) error {
  2464  	return m.Unmarshal(b)
  2465  }
  2466  func (m *DatabaseDescriptor) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2467  	b = b[:cap(b)]
  2468  	n, err := m.MarshalTo(b)
  2469  	if err != nil {
  2470  		return nil, err
  2471  	}
  2472  	return b[:n], nil
  2473  }
  2474  func (dst *DatabaseDescriptor) XXX_Merge(src proto.Message) {
  2475  	xxx_messageInfo_DatabaseDescriptor.Merge(dst, src)
  2476  }
  2477  func (m *DatabaseDescriptor) XXX_Size() int {
  2478  	return m.Size()
  2479  }
  2480  func (m *DatabaseDescriptor) XXX_DiscardUnknown() {
  2481  	xxx_messageInfo_DatabaseDescriptor.DiscardUnknown(m)
  2482  }
  2483  
  2484  var xxx_messageInfo_DatabaseDescriptor proto.InternalMessageInfo
  2485  
  2486  func (m *DatabaseDescriptor) GetName() string {
  2487  	if m != nil {
  2488  		return m.Name
  2489  	}
  2490  	return ""
  2491  }
  2492  
  2493  func (m *DatabaseDescriptor) GetID() ID {
  2494  	if m != nil {
  2495  		return m.ID
  2496  	}
  2497  	return 0
  2498  }
  2499  
  2500  func (m *DatabaseDescriptor) GetPrivileges() *PrivilegeDescriptor {
  2501  	if m != nil {
  2502  		return m.Privileges
  2503  	}
  2504  	return nil
  2505  }
  2506  
  2507  // TypeDescriptor represents a user defined type and is stored in a structured
  2508  // metadata key. The TypeDescriptor has a globally-unique ID shared with other
  2509  // Descriptors.
  2510  type TypeDescriptor struct {
  2511  	// parent_id represents the ID of the database that this type resides in.
  2512  	ParentID ID `protobuf:"varint,1,opt,name=parent_id,json=parentId,casttype=ID" json:"parent_id"`
  2513  	// parent_schema_id represents the ID of the schema that this type resides in.
  2514  	ParentSchemaID ID `protobuf:"varint,2,opt,name=parent_schema_id,json=parentSchemaId,casttype=ID" json:"parent_schema_id"`
  2515  	// name is the current name of this user defined type.
  2516  	Name string `protobuf:"bytes,3,opt,name=name" json:"name"`
  2517  	// id is the globally unique ID for this type.
  2518  	ID ID `protobuf:"varint,4,opt,name=id,casttype=ID" json:"id"`
  2519  	// array_type_id is the globally unique ID for the implicitly created array
  2520  	// type for this type. It is only set when the type descriptor points to a
  2521  	// non-array type.
  2522  	ArrayTypeID ID                  `protobuf:"varint,8,opt,name=array_type_id,json=arrayTypeId,casttype=ID" json:"array_type_id"`
  2523  	Kind        TypeDescriptor_Kind `protobuf:"varint,5,opt,name=kind,enum=cockroach.sql.sqlbase.TypeDescriptor_Kind" json:"kind"`
  2524  	// enum_members is the set of values in an enum.
  2525  	EnumMembers []TypeDescriptor_EnumMember `protobuf:"bytes,6,rep,name=enum_members,json=enumMembers" json:"enum_members"`
  2526  	// alias is the types.T that this descriptor is an alias for.
  2527  	Alias *types.T `protobuf:"bytes,7,opt,name=alias" json:"alias,omitempty"`
  2528  }
  2529  
  2530  func (m *TypeDescriptor) Reset()         { *m = TypeDescriptor{} }
  2531  func (m *TypeDescriptor) String() string { return proto.CompactTextString(m) }
  2532  func (*TypeDescriptor) ProtoMessage()    {}
  2533  func (*TypeDescriptor) Descriptor() ([]byte, []int) {
  2534  	return fileDescriptor_structured_6e223c312147c376, []int{14}
  2535  }
  2536  func (m *TypeDescriptor) XXX_Unmarshal(b []byte) error {
  2537  	return m.Unmarshal(b)
  2538  }
  2539  func (m *TypeDescriptor) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2540  	b = b[:cap(b)]
  2541  	n, err := m.MarshalTo(b)
  2542  	if err != nil {
  2543  		return nil, err
  2544  	}
  2545  	return b[:n], nil
  2546  }
  2547  func (dst *TypeDescriptor) XXX_Merge(src proto.Message) {
  2548  	xxx_messageInfo_TypeDescriptor.Merge(dst, src)
  2549  }
  2550  func (m *TypeDescriptor) XXX_Size() int {
  2551  	return m.Size()
  2552  }
  2553  func (m *TypeDescriptor) XXX_DiscardUnknown() {
  2554  	xxx_messageInfo_TypeDescriptor.DiscardUnknown(m)
  2555  }
  2556  
  2557  var xxx_messageInfo_TypeDescriptor proto.InternalMessageInfo
  2558  
  2559  func (m *TypeDescriptor) GetParentID() ID {
  2560  	if m != nil {
  2561  		return m.ParentID
  2562  	}
  2563  	return 0
  2564  }
  2565  
  2566  func (m *TypeDescriptor) GetParentSchemaID() ID {
  2567  	if m != nil {
  2568  		return m.ParentSchemaID
  2569  	}
  2570  	return 0
  2571  }
  2572  
  2573  func (m *TypeDescriptor) GetName() string {
  2574  	if m != nil {
  2575  		return m.Name
  2576  	}
  2577  	return ""
  2578  }
  2579  
  2580  func (m *TypeDescriptor) GetID() ID {
  2581  	if m != nil {
  2582  		return m.ID
  2583  	}
  2584  	return 0
  2585  }
  2586  
  2587  func (m *TypeDescriptor) GetArrayTypeID() ID {
  2588  	if m != nil {
  2589  		return m.ArrayTypeID
  2590  	}
  2591  	return 0
  2592  }
  2593  
  2594  func (m *TypeDescriptor) GetKind() TypeDescriptor_Kind {
  2595  	if m != nil {
  2596  		return m.Kind
  2597  	}
  2598  	return TypeDescriptor_ENUM
  2599  }
  2600  
  2601  func (m *TypeDescriptor) GetEnumMembers() []TypeDescriptor_EnumMember {
  2602  	if m != nil {
  2603  		return m.EnumMembers
  2604  	}
  2605  	return nil
  2606  }
  2607  
  2608  func (m *TypeDescriptor) GetAlias() *types.T {
  2609  	if m != nil {
  2610  		return m.Alias
  2611  	}
  2612  	return nil
  2613  }
  2614  
  2615  // EnumMember represents a value in an enum.
  2616  type TypeDescriptor_EnumMember struct {
  2617  	PhysicalRepresentation []byte `protobuf:"bytes,1,opt,name=physical_representation,json=physicalRepresentation" json:"physical_representation,omitempty"`
  2618  	LogicalRepresentation  string `protobuf:"bytes,2,opt,name=logical_representation,json=logicalRepresentation" json:"logical_representation"`
  2619  }
  2620  
  2621  func (m *TypeDescriptor_EnumMember) Reset()         { *m = TypeDescriptor_EnumMember{} }
  2622  func (m *TypeDescriptor_EnumMember) String() string { return proto.CompactTextString(m) }
  2623  func (*TypeDescriptor_EnumMember) ProtoMessage()    {}
  2624  func (*TypeDescriptor_EnumMember) Descriptor() ([]byte, []int) {
  2625  	return fileDescriptor_structured_6e223c312147c376, []int{14, 0}
  2626  }
  2627  func (m *TypeDescriptor_EnumMember) XXX_Unmarshal(b []byte) error {
  2628  	return m.Unmarshal(b)
  2629  }
  2630  func (m *TypeDescriptor_EnumMember) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2631  	b = b[:cap(b)]
  2632  	n, err := m.MarshalTo(b)
  2633  	if err != nil {
  2634  		return nil, err
  2635  	}
  2636  	return b[:n], nil
  2637  }
  2638  func (dst *TypeDescriptor_EnumMember) XXX_Merge(src proto.Message) {
  2639  	xxx_messageInfo_TypeDescriptor_EnumMember.Merge(dst, src)
  2640  }
  2641  func (m *TypeDescriptor_EnumMember) XXX_Size() int {
  2642  	return m.Size()
  2643  }
  2644  func (m *TypeDescriptor_EnumMember) XXX_DiscardUnknown() {
  2645  	xxx_messageInfo_TypeDescriptor_EnumMember.DiscardUnknown(m)
  2646  }
  2647  
  2648  var xxx_messageInfo_TypeDescriptor_EnumMember proto.InternalMessageInfo
  2649  
  2650  // SchemaDescriptor represents a physical schema and is stored in a structured
  2651  // metadata key.
  2652  type SchemaDescriptor struct {
  2653  	// parent_id refers to the database the schema is in.
  2654  	ParentID ID `protobuf:"varint,1,opt,name=parent_id,json=parentId,casttype=ID" json:"parent_id"`
  2655  	// name is the name of the schema.
  2656  	Name string `protobuf:"bytes,2,opt,name=name" json:"name"`
  2657  	// id is the schema ID, globally unique across all descriptors.
  2658  	ID ID `protobuf:"varint,3,opt,name=id,casttype=ID" json:"id"`
  2659  	// privileges contains the privileges for the schema.
  2660  	Privileges *PrivilegeDescriptor `protobuf:"bytes,4,opt,name=privileges" json:"privileges,omitempty"`
  2661  }
  2662  
  2663  func (m *SchemaDescriptor) Reset()         { *m = SchemaDescriptor{} }
  2664  func (m *SchemaDescriptor) String() string { return proto.CompactTextString(m) }
  2665  func (*SchemaDescriptor) ProtoMessage()    {}
  2666  func (*SchemaDescriptor) Descriptor() ([]byte, []int) {
  2667  	return fileDescriptor_structured_6e223c312147c376, []int{15}
  2668  }
  2669  func (m *SchemaDescriptor) XXX_Unmarshal(b []byte) error {
  2670  	return m.Unmarshal(b)
  2671  }
  2672  func (m *SchemaDescriptor) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2673  	b = b[:cap(b)]
  2674  	n, err := m.MarshalTo(b)
  2675  	if err != nil {
  2676  		return nil, err
  2677  	}
  2678  	return b[:n], nil
  2679  }
  2680  func (dst *SchemaDescriptor) XXX_Merge(src proto.Message) {
  2681  	xxx_messageInfo_SchemaDescriptor.Merge(dst, src)
  2682  }
  2683  func (m *SchemaDescriptor) XXX_Size() int {
  2684  	return m.Size()
  2685  }
  2686  func (m *SchemaDescriptor) XXX_DiscardUnknown() {
  2687  	xxx_messageInfo_SchemaDescriptor.DiscardUnknown(m)
  2688  }
  2689  
  2690  var xxx_messageInfo_SchemaDescriptor proto.InternalMessageInfo
  2691  
  2692  func (m *SchemaDescriptor) GetParentID() ID {
  2693  	if m != nil {
  2694  		return m.ParentID
  2695  	}
  2696  	return 0
  2697  }
  2698  
  2699  func (m *SchemaDescriptor) GetName() string {
  2700  	if m != nil {
  2701  		return m.Name
  2702  	}
  2703  	return ""
  2704  }
  2705  
  2706  func (m *SchemaDescriptor) GetID() ID {
  2707  	if m != nil {
  2708  		return m.ID
  2709  	}
  2710  	return 0
  2711  }
  2712  
  2713  func (m *SchemaDescriptor) GetPrivileges() *PrivilegeDescriptor {
  2714  	if m != nil {
  2715  		return m.Privileges
  2716  	}
  2717  	return nil
  2718  }
  2719  
  2720  // Descriptor is a union type for descriptors for tables, schemas, databases,
  2721  // and types.
  2722  type Descriptor struct {
  2723  	// Types that are valid to be assigned to Union:
  2724  	//	*Descriptor_Table
  2725  	//	*Descriptor_Database
  2726  	//	*Descriptor_Type
  2727  	//	*Descriptor_Schema
  2728  	Union isDescriptor_Union `protobuf_oneof:"union"`
  2729  }
  2730  
  2731  func (m *Descriptor) Reset()         { *m = Descriptor{} }
  2732  func (m *Descriptor) String() string { return proto.CompactTextString(m) }
  2733  func (*Descriptor) ProtoMessage()    {}
  2734  func (*Descriptor) Descriptor() ([]byte, []int) {
  2735  	return fileDescriptor_structured_6e223c312147c376, []int{16}
  2736  }
  2737  func (m *Descriptor) XXX_Unmarshal(b []byte) error {
  2738  	return m.Unmarshal(b)
  2739  }
  2740  func (m *Descriptor) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  2741  	b = b[:cap(b)]
  2742  	n, err := m.MarshalTo(b)
  2743  	if err != nil {
  2744  		return nil, err
  2745  	}
  2746  	return b[:n], nil
  2747  }
  2748  func (dst *Descriptor) XXX_Merge(src proto.Message) {
  2749  	xxx_messageInfo_Descriptor.Merge(dst, src)
  2750  }
  2751  func (m *Descriptor) XXX_Size() int {
  2752  	return m.Size()
  2753  }
  2754  func (m *Descriptor) XXX_DiscardUnknown() {
  2755  	xxx_messageInfo_Descriptor.DiscardUnknown(m)
  2756  }
  2757  
  2758  var xxx_messageInfo_Descriptor proto.InternalMessageInfo
  2759  
  2760  type isDescriptor_Union interface {
  2761  	isDescriptor_Union()
  2762  	Equal(interface{}) bool
  2763  	MarshalTo([]byte) (int, error)
  2764  	Size() int
  2765  }
  2766  
  2767  type Descriptor_Table struct {
  2768  	Table *TableDescriptor `protobuf:"bytes,1,opt,name=table,oneof"`
  2769  }
  2770  type Descriptor_Database struct {
  2771  	Database *DatabaseDescriptor `protobuf:"bytes,2,opt,name=database,oneof"`
  2772  }
  2773  type Descriptor_Type struct {
  2774  	Type *TypeDescriptor `protobuf:"bytes,3,opt,name=type,oneof"`
  2775  }
  2776  type Descriptor_Schema struct {
  2777  	Schema *SchemaDescriptor `protobuf:"bytes,4,opt,name=schema,oneof"`
  2778  }
  2779  
  2780  func (*Descriptor_Table) isDescriptor_Union()    {}
  2781  func (*Descriptor_Database) isDescriptor_Union() {}
  2782  func (*Descriptor_Type) isDescriptor_Union()     {}
  2783  func (*Descriptor_Schema) isDescriptor_Union()   {}
  2784  
  2785  func (m *Descriptor) GetUnion() isDescriptor_Union {
  2786  	if m != nil {
  2787  		return m.Union
  2788  	}
  2789  	return nil
  2790  }
  2791  
  2792  func (m *Descriptor) GetTable() *TableDescriptor {
  2793  	if x, ok := m.GetUnion().(*Descriptor_Table); ok {
  2794  		return x.Table
  2795  	}
  2796  	return nil
  2797  }
  2798  
  2799  func (m *Descriptor) GetDatabase() *DatabaseDescriptor {
  2800  	if x, ok := m.GetUnion().(*Descriptor_Database); ok {
  2801  		return x.Database
  2802  	}
  2803  	return nil
  2804  }
  2805  
  2806  func (m *Descriptor) GetType() *TypeDescriptor {
  2807  	if x, ok := m.GetUnion().(*Descriptor_Type); ok {
  2808  		return x.Type
  2809  	}
  2810  	return nil
  2811  }
  2812  
  2813  func (m *Descriptor) GetSchema() *SchemaDescriptor {
  2814  	if x, ok := m.GetUnion().(*Descriptor_Schema); ok {
  2815  		return x.Schema
  2816  	}
  2817  	return nil
  2818  }
  2819  
  2820  // XXX_OneofFuncs is for the internal use of the proto package.
  2821  func (*Descriptor) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
  2822  	return _Descriptor_OneofMarshaler, _Descriptor_OneofUnmarshaler, _Descriptor_OneofSizer, []interface{}{
  2823  		(*Descriptor_Table)(nil),
  2824  		(*Descriptor_Database)(nil),
  2825  		(*Descriptor_Type)(nil),
  2826  		(*Descriptor_Schema)(nil),
  2827  	}
  2828  }
  2829  
  2830  func _Descriptor_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
  2831  	m := msg.(*Descriptor)
  2832  	// union
  2833  	switch x := m.Union.(type) {
  2834  	case *Descriptor_Table:
  2835  		_ = b.EncodeVarint(1<<3 | proto.WireBytes)
  2836  		if err := b.EncodeMessage(x.Table); err != nil {
  2837  			return err
  2838  		}
  2839  	case *Descriptor_Database:
  2840  		_ = b.EncodeVarint(2<<3 | proto.WireBytes)
  2841  		if err := b.EncodeMessage(x.Database); err != nil {
  2842  			return err
  2843  		}
  2844  	case *Descriptor_Type:
  2845  		_ = b.EncodeVarint(3<<3 | proto.WireBytes)
  2846  		if err := b.EncodeMessage(x.Type); err != nil {
  2847  			return err
  2848  		}
  2849  	case *Descriptor_Schema:
  2850  		_ = b.EncodeVarint(4<<3 | proto.WireBytes)
  2851  		if err := b.EncodeMessage(x.Schema); err != nil {
  2852  			return err
  2853  		}
  2854  	case nil:
  2855  	default:
  2856  		return fmt.Errorf("Descriptor.Union has unexpected type %T", x)
  2857  	}
  2858  	return nil
  2859  }
  2860  
  2861  func _Descriptor_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
  2862  	m := msg.(*Descriptor)
  2863  	switch tag {
  2864  	case 1: // union.table
  2865  		if wire != proto.WireBytes {
  2866  			return true, proto.ErrInternalBadWireType
  2867  		}
  2868  		msg := new(TableDescriptor)
  2869  		err := b.DecodeMessage(msg)
  2870  		m.Union = &Descriptor_Table{msg}
  2871  		return true, err
  2872  	case 2: // union.database
  2873  		if wire != proto.WireBytes {
  2874  			return true, proto.ErrInternalBadWireType
  2875  		}
  2876  		msg := new(DatabaseDescriptor)
  2877  		err := b.DecodeMessage(msg)
  2878  		m.Union = &Descriptor_Database{msg}
  2879  		return true, err
  2880  	case 3: // union.type
  2881  		if wire != proto.WireBytes {
  2882  			return true, proto.ErrInternalBadWireType
  2883  		}
  2884  		msg := new(TypeDescriptor)
  2885  		err := b.DecodeMessage(msg)
  2886  		m.Union = &Descriptor_Type{msg}
  2887  		return true, err
  2888  	case 4: // union.schema
  2889  		if wire != proto.WireBytes {
  2890  			return true, proto.ErrInternalBadWireType
  2891  		}
  2892  		msg := new(SchemaDescriptor)
  2893  		err := b.DecodeMessage(msg)
  2894  		m.Union = &Descriptor_Schema{msg}
  2895  		return true, err
  2896  	default:
  2897  		return false, nil
  2898  	}
  2899  }
  2900  
  2901  func _Descriptor_OneofSizer(msg proto.Message) (n int) {
  2902  	m := msg.(*Descriptor)
  2903  	// union
  2904  	switch x := m.Union.(type) {
  2905  	case *Descriptor_Table:
  2906  		s := proto.Size(x.Table)
  2907  		n += 1 // tag and wire
  2908  		n += proto.SizeVarint(uint64(s))
  2909  		n += s
  2910  	case *Descriptor_Database:
  2911  		s := proto.Size(x.Database)
  2912  		n += 1 // tag and wire
  2913  		n += proto.SizeVarint(uint64(s))
  2914  		n += s
  2915  	case *Descriptor_Type:
  2916  		s := proto.Size(x.Type)
  2917  		n += 1 // tag and wire
  2918  		n += proto.SizeVarint(uint64(s))
  2919  		n += s
  2920  	case *Descriptor_Schema:
  2921  		s := proto.Size(x.Schema)
  2922  		n += 1 // tag and wire
  2923  		n += proto.SizeVarint(uint64(s))
  2924  		n += s
  2925  	case nil:
  2926  	default:
  2927  		panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
  2928  	}
  2929  	return n
  2930  }
  2931  
  2932  func init() {
  2933  	proto.RegisterType((*ForeignKeyReference)(nil), "cockroach.sql.sqlbase.ForeignKeyReference")
  2934  	proto.RegisterType((*ForeignKeyConstraint)(nil), "cockroach.sql.sqlbase.ForeignKeyConstraint")
  2935  	proto.RegisterType((*ColumnDescriptor)(nil), "cockroach.sql.sqlbase.ColumnDescriptor")
  2936  	proto.RegisterType((*ColumnFamilyDescriptor)(nil), "cockroach.sql.sqlbase.ColumnFamilyDescriptor")
  2937  	proto.RegisterType((*InterleaveDescriptor)(nil), "cockroach.sql.sqlbase.InterleaveDescriptor")
  2938  	proto.RegisterType((*InterleaveDescriptor_Ancestor)(nil), "cockroach.sql.sqlbase.InterleaveDescriptor.Ancestor")
  2939  	proto.RegisterType((*ShardedDescriptor)(nil), "cockroach.sql.sqlbase.ShardedDescriptor")
  2940  	proto.RegisterType((*PartitioningDescriptor)(nil), "cockroach.sql.sqlbase.PartitioningDescriptor")
  2941  	proto.RegisterType((*PartitioningDescriptor_List)(nil), "cockroach.sql.sqlbase.PartitioningDescriptor.List")
  2942  	proto.RegisterType((*PartitioningDescriptor_Range)(nil), "cockroach.sql.sqlbase.PartitioningDescriptor.Range")
  2943  	proto.RegisterType((*IndexDescriptor)(nil), "cockroach.sql.sqlbase.IndexDescriptor")
  2944  	proto.RegisterType((*ConstraintToUpdate)(nil), "cockroach.sql.sqlbase.ConstraintToUpdate")
  2945  	proto.RegisterType((*PrimaryKeySwap)(nil), "cockroach.sql.sqlbase.PrimaryKeySwap")
  2946  	proto.RegisterType((*ComputedColumnSwap)(nil), "cockroach.sql.sqlbase.ComputedColumnSwap")
  2947  	proto.RegisterType((*DescriptorMutation)(nil), "cockroach.sql.sqlbase.DescriptorMutation")
  2948  	proto.RegisterType((*TableDescriptor)(nil), "cockroach.sql.sqlbase.TableDescriptor")
  2949  	proto.RegisterType((*TableDescriptor_SchemaChangeLease)(nil), "cockroach.sql.sqlbase.TableDescriptor.SchemaChangeLease")
  2950  	proto.RegisterType((*TableDescriptor_CheckConstraint)(nil), "cockroach.sql.sqlbase.TableDescriptor.CheckConstraint")
  2951  	proto.RegisterType((*TableDescriptor_NameInfo)(nil), "cockroach.sql.sqlbase.TableDescriptor.NameInfo")
  2952  	proto.RegisterType((*TableDescriptor_Reference)(nil), "cockroach.sql.sqlbase.TableDescriptor.Reference")
  2953  	proto.RegisterType((*TableDescriptor_MutationJob)(nil), "cockroach.sql.sqlbase.TableDescriptor.MutationJob")
  2954  	proto.RegisterType((*TableDescriptor_SequenceOpts)(nil), "cockroach.sql.sqlbase.TableDescriptor.SequenceOpts")
  2955  	proto.RegisterType((*TableDescriptor_SequenceOpts_SequenceOwner)(nil), "cockroach.sql.sqlbase.TableDescriptor.SequenceOpts.SequenceOwner")
  2956  	proto.RegisterType((*TableDescriptor_Replacement)(nil), "cockroach.sql.sqlbase.TableDescriptor.Replacement")
  2957  	proto.RegisterType((*TableDescriptor_GCDescriptorMutation)(nil), "cockroach.sql.sqlbase.TableDescriptor.GCDescriptorMutation")
  2958  	proto.RegisterType((*DatabaseDescriptor)(nil), "cockroach.sql.sqlbase.DatabaseDescriptor")
  2959  	proto.RegisterType((*TypeDescriptor)(nil), "cockroach.sql.sqlbase.TypeDescriptor")
  2960  	proto.RegisterType((*TypeDescriptor_EnumMember)(nil), "cockroach.sql.sqlbase.TypeDescriptor.EnumMember")
  2961  	proto.RegisterType((*SchemaDescriptor)(nil), "cockroach.sql.sqlbase.SchemaDescriptor")
  2962  	proto.RegisterType((*Descriptor)(nil), "cockroach.sql.sqlbase.Descriptor")
  2963  	proto.RegisterEnum("cockroach.sql.sqlbase.ConstraintValidity", ConstraintValidity_name, ConstraintValidity_value)
  2964  	proto.RegisterEnum("cockroach.sql.sqlbase.ForeignKeyReference_Action", ForeignKeyReference_Action_name, ForeignKeyReference_Action_value)
  2965  	proto.RegisterEnum("cockroach.sql.sqlbase.ForeignKeyReference_Match", ForeignKeyReference_Match_name, ForeignKeyReference_Match_value)
  2966  	proto.RegisterEnum("cockroach.sql.sqlbase.IndexDescriptor_Direction", IndexDescriptor_Direction_name, IndexDescriptor_Direction_value)
  2967  	proto.RegisterEnum("cockroach.sql.sqlbase.IndexDescriptor_Type", IndexDescriptor_Type_name, IndexDescriptor_Type_value)
  2968  	proto.RegisterEnum("cockroach.sql.sqlbase.ConstraintToUpdate_ConstraintType", ConstraintToUpdate_ConstraintType_name, ConstraintToUpdate_ConstraintType_value)
  2969  	proto.RegisterEnum("cockroach.sql.sqlbase.DescriptorMutation_State", DescriptorMutation_State_name, DescriptorMutation_State_value)
  2970  	proto.RegisterEnum("cockroach.sql.sqlbase.DescriptorMutation_Direction", DescriptorMutation_Direction_name, DescriptorMutation_Direction_value)
  2971  	proto.RegisterEnum("cockroach.sql.sqlbase.TableDescriptor_State", TableDescriptor_State_name, TableDescriptor_State_value)
  2972  	proto.RegisterEnum("cockroach.sql.sqlbase.TableDescriptor_AuditMode", TableDescriptor_AuditMode_name, TableDescriptor_AuditMode_value)
  2973  	proto.RegisterEnum("cockroach.sql.sqlbase.TypeDescriptor_Kind", TypeDescriptor_Kind_name, TypeDescriptor_Kind_value)
  2974  }
  2975  func (this *ForeignKeyReference) Equal(that interface{}) bool {
  2976  	if that == nil {
  2977  		return this == nil
  2978  	}
  2979  
  2980  	that1, ok := that.(*ForeignKeyReference)
  2981  	if !ok {
  2982  		that2, ok := that.(ForeignKeyReference)
  2983  		if ok {
  2984  			that1 = &that2
  2985  		} else {
  2986  			return false
  2987  		}
  2988  	}
  2989  	if that1 == nil {
  2990  		return this == nil
  2991  	} else if this == nil {
  2992  		return false
  2993  	}
  2994  	if this.Table != that1.Table {
  2995  		return false
  2996  	}
  2997  	if this.Index != that1.Index {
  2998  		return false
  2999  	}
  3000  	if this.Name != that1.Name {
  3001  		return false
  3002  	}
  3003  	if this.Validity != that1.Validity {
  3004  		return false
  3005  	}
  3006  	if this.SharedPrefixLen != that1.SharedPrefixLen {
  3007  		return false
  3008  	}
  3009  	if this.OnDelete != that1.OnDelete {
  3010  		return false
  3011  	}
  3012  	if this.OnUpdate != that1.OnUpdate {
  3013  		return false
  3014  	}
  3015  	if this.Match != that1.Match {
  3016  		return false
  3017  	}
  3018  	return true
  3019  }
  3020  func (this *ForeignKeyConstraint) Equal(that interface{}) bool {
  3021  	if that == nil {
  3022  		return this == nil
  3023  	}
  3024  
  3025  	that1, ok := that.(*ForeignKeyConstraint)
  3026  	if !ok {
  3027  		that2, ok := that.(ForeignKeyConstraint)
  3028  		if ok {
  3029  			that1 = &that2
  3030  		} else {
  3031  			return false
  3032  		}
  3033  	}
  3034  	if that1 == nil {
  3035  		return this == nil
  3036  	} else if this == nil {
  3037  		return false
  3038  	}
  3039  	if this.OriginTableID != that1.OriginTableID {
  3040  		return false
  3041  	}
  3042  	if len(this.OriginColumnIDs) != len(that1.OriginColumnIDs) {
  3043  		return false
  3044  	}
  3045  	for i := range this.OriginColumnIDs {
  3046  		if this.OriginColumnIDs[i] != that1.OriginColumnIDs[i] {
  3047  			return false
  3048  		}
  3049  	}
  3050  	if len(this.ReferencedColumnIDs) != len(that1.ReferencedColumnIDs) {
  3051  		return false
  3052  	}
  3053  	for i := range this.ReferencedColumnIDs {
  3054  		if this.ReferencedColumnIDs[i] != that1.ReferencedColumnIDs[i] {
  3055  			return false
  3056  		}
  3057  	}
  3058  	if this.ReferencedTableID != that1.ReferencedTableID {
  3059  		return false
  3060  	}
  3061  	if this.Name != that1.Name {
  3062  		return false
  3063  	}
  3064  	if this.Validity != that1.Validity {
  3065  		return false
  3066  	}
  3067  	if this.OnDelete != that1.OnDelete {
  3068  		return false
  3069  	}
  3070  	if this.OnUpdate != that1.OnUpdate {
  3071  		return false
  3072  	}
  3073  	if this.Match != that1.Match {
  3074  		return false
  3075  	}
  3076  	if this.LegacyOriginIndex != that1.LegacyOriginIndex {
  3077  		return false
  3078  	}
  3079  	if this.LegacyReferencedIndex != that1.LegacyReferencedIndex {
  3080  		return false
  3081  	}
  3082  	return true
  3083  }
  3084  func (this *ColumnDescriptor) Equal(that interface{}) bool {
  3085  	if that == nil {
  3086  		return this == nil
  3087  	}
  3088  
  3089  	that1, ok := that.(*ColumnDescriptor)
  3090  	if !ok {
  3091  		that2, ok := that.(ColumnDescriptor)
  3092  		if ok {
  3093  			that1 = &that2
  3094  		} else {
  3095  			return false
  3096  		}
  3097  	}
  3098  	if that1 == nil {
  3099  		return this == nil
  3100  	} else if this == nil {
  3101  		return false
  3102  	}
  3103  	if this.Name != that1.Name {
  3104  		return false
  3105  	}
  3106  	if this.ID != that1.ID {
  3107  		return false
  3108  	}
  3109  	if !this.Type.Equal(that1.Type) {
  3110  		return false
  3111  	}
  3112  	if this.Nullable != that1.Nullable {
  3113  		return false
  3114  	}
  3115  	if this.DefaultExpr != nil && that1.DefaultExpr != nil {
  3116  		if *this.DefaultExpr != *that1.DefaultExpr {
  3117  			return false
  3118  		}
  3119  	} else if this.DefaultExpr != nil {
  3120  		return false
  3121  	} else if that1.DefaultExpr != nil {
  3122  		return false
  3123  	}
  3124  	if this.Hidden != that1.Hidden {
  3125  		return false
  3126  	}
  3127  	if len(this.UsesSequenceIds) != len(that1.UsesSequenceIds) {
  3128  		return false
  3129  	}
  3130  	for i := range this.UsesSequenceIds {
  3131  		if this.UsesSequenceIds[i] != that1.UsesSequenceIds[i] {
  3132  			return false
  3133  		}
  3134  	}
  3135  	if len(this.OwnsSequenceIds) != len(that1.OwnsSequenceIds) {
  3136  		return false
  3137  	}
  3138  	for i := range this.OwnsSequenceIds {
  3139  		if this.OwnsSequenceIds[i] != that1.OwnsSequenceIds[i] {
  3140  			return false
  3141  		}
  3142  	}
  3143  	if this.ComputeExpr != nil && that1.ComputeExpr != nil {
  3144  		if *this.ComputeExpr != *that1.ComputeExpr {
  3145  			return false
  3146  		}
  3147  	} else if this.ComputeExpr != nil {
  3148  		return false
  3149  	} else if that1.ComputeExpr != nil {
  3150  		return false
  3151  	}
  3152  	if this.LogicalColumnID != that1.LogicalColumnID {
  3153  		return false
  3154  	}
  3155  	if this.AlterColumnTypeInProgress != that1.AlterColumnTypeInProgress {
  3156  		return false
  3157  	}
  3158  	return true
  3159  }
  3160  func (this *ColumnFamilyDescriptor) Equal(that interface{}) bool {
  3161  	if that == nil {
  3162  		return this == nil
  3163  	}
  3164  
  3165  	that1, ok := that.(*ColumnFamilyDescriptor)
  3166  	if !ok {
  3167  		that2, ok := that.(ColumnFamilyDescriptor)
  3168  		if ok {
  3169  			that1 = &that2
  3170  		} else {
  3171  			return false
  3172  		}
  3173  	}
  3174  	if that1 == nil {
  3175  		return this == nil
  3176  	} else if this == nil {
  3177  		return false
  3178  	}
  3179  	if this.Name != that1.Name {
  3180  		return false
  3181  	}
  3182  	if this.ID != that1.ID {
  3183  		return false
  3184  	}
  3185  	if len(this.ColumnNames) != len(that1.ColumnNames) {
  3186  		return false
  3187  	}
  3188  	for i := range this.ColumnNames {
  3189  		if this.ColumnNames[i] != that1.ColumnNames[i] {
  3190  			return false
  3191  		}
  3192  	}
  3193  	if len(this.ColumnIDs) != len(that1.ColumnIDs) {
  3194  		return false
  3195  	}
  3196  	for i := range this.ColumnIDs {
  3197  		if this.ColumnIDs[i] != that1.ColumnIDs[i] {
  3198  			return false
  3199  		}
  3200  	}
  3201  	if this.DefaultColumnID != that1.DefaultColumnID {
  3202  		return false
  3203  	}
  3204  	return true
  3205  }
  3206  func (this *InterleaveDescriptor) Equal(that interface{}) bool {
  3207  	if that == nil {
  3208  		return this == nil
  3209  	}
  3210  
  3211  	that1, ok := that.(*InterleaveDescriptor)
  3212  	if !ok {
  3213  		that2, ok := that.(InterleaveDescriptor)
  3214  		if ok {
  3215  			that1 = &that2
  3216  		} else {
  3217  			return false
  3218  		}
  3219  	}
  3220  	if that1 == nil {
  3221  		return this == nil
  3222  	} else if this == nil {
  3223  		return false
  3224  	}
  3225  	if len(this.Ancestors) != len(that1.Ancestors) {
  3226  		return false
  3227  	}
  3228  	for i := range this.Ancestors {
  3229  		if !this.Ancestors[i].Equal(&that1.Ancestors[i]) {
  3230  			return false
  3231  		}
  3232  	}
  3233  	return true
  3234  }
  3235  func (this *InterleaveDescriptor_Ancestor) Equal(that interface{}) bool {
  3236  	if that == nil {
  3237  		return this == nil
  3238  	}
  3239  
  3240  	that1, ok := that.(*InterleaveDescriptor_Ancestor)
  3241  	if !ok {
  3242  		that2, ok := that.(InterleaveDescriptor_Ancestor)
  3243  		if ok {
  3244  			that1 = &that2
  3245  		} else {
  3246  			return false
  3247  		}
  3248  	}
  3249  	if that1 == nil {
  3250  		return this == nil
  3251  	} else if this == nil {
  3252  		return false
  3253  	}
  3254  	if this.TableID != that1.TableID {
  3255  		return false
  3256  	}
  3257  	if this.IndexID != that1.IndexID {
  3258  		return false
  3259  	}
  3260  	if this.SharedPrefixLen != that1.SharedPrefixLen {
  3261  		return false
  3262  	}
  3263  	return true
  3264  }
  3265  func (this *ShardedDescriptor) Equal(that interface{}) bool {
  3266  	if that == nil {
  3267  		return this == nil
  3268  	}
  3269  
  3270  	that1, ok := that.(*ShardedDescriptor)
  3271  	if !ok {
  3272  		that2, ok := that.(ShardedDescriptor)
  3273  		if ok {
  3274  			that1 = &that2
  3275  		} else {
  3276  			return false
  3277  		}
  3278  	}
  3279  	if that1 == nil {
  3280  		return this == nil
  3281  	} else if this == nil {
  3282  		return false
  3283  	}
  3284  	if this.IsSharded != that1.IsSharded {
  3285  		return false
  3286  	}
  3287  	if this.Name != that1.Name {
  3288  		return false
  3289  	}
  3290  	if this.ShardBuckets != that1.ShardBuckets {
  3291  		return false
  3292  	}
  3293  	if len(this.ColumnNames) != len(that1.ColumnNames) {
  3294  		return false
  3295  	}
  3296  	for i := range this.ColumnNames {
  3297  		if this.ColumnNames[i] != that1.ColumnNames[i] {
  3298  			return false
  3299  		}
  3300  	}
  3301  	return true
  3302  }
  3303  func (this *PartitioningDescriptor) Equal(that interface{}) bool {
  3304  	if that == nil {
  3305  		return this == nil
  3306  	}
  3307  
  3308  	that1, ok := that.(*PartitioningDescriptor)
  3309  	if !ok {
  3310  		that2, ok := that.(PartitioningDescriptor)
  3311  		if ok {
  3312  			that1 = &that2
  3313  		} else {
  3314  			return false
  3315  		}
  3316  	}
  3317  	if that1 == nil {
  3318  		return this == nil
  3319  	} else if this == nil {
  3320  		return false
  3321  	}
  3322  	if this.NumColumns != that1.NumColumns {
  3323  		return false
  3324  	}
  3325  	if len(this.List) != len(that1.List) {
  3326  		return false
  3327  	}
  3328  	for i := range this.List {
  3329  		if !this.List[i].Equal(&that1.List[i]) {
  3330  			return false
  3331  		}
  3332  	}
  3333  	if len(this.Range) != len(that1.Range) {
  3334  		return false
  3335  	}
  3336  	for i := range this.Range {
  3337  		if !this.Range[i].Equal(&that1.Range[i]) {
  3338  			return false
  3339  		}
  3340  	}
  3341  	return true
  3342  }
  3343  func (this *PartitioningDescriptor_List) Equal(that interface{}) bool {
  3344  	if that == nil {
  3345  		return this == nil
  3346  	}
  3347  
  3348  	that1, ok := that.(*PartitioningDescriptor_List)
  3349  	if !ok {
  3350  		that2, ok := that.(PartitioningDescriptor_List)
  3351  		if ok {
  3352  			that1 = &that2
  3353  		} else {
  3354  			return false
  3355  		}
  3356  	}
  3357  	if that1 == nil {
  3358  		return this == nil
  3359  	} else if this == nil {
  3360  		return false
  3361  	}
  3362  	if this.Name != that1.Name {
  3363  		return false
  3364  	}
  3365  	if len(this.Values) != len(that1.Values) {
  3366  		return false
  3367  	}
  3368  	for i := range this.Values {
  3369  		if !bytes.Equal(this.Values[i], that1.Values[i]) {
  3370  			return false
  3371  		}
  3372  	}
  3373  	if !this.Subpartitioning.Equal(&that1.Subpartitioning) {
  3374  		return false
  3375  	}
  3376  	return true
  3377  }
  3378  func (this *PartitioningDescriptor_Range) Equal(that interface{}) bool {
  3379  	if that == nil {
  3380  		return this == nil
  3381  	}
  3382  
  3383  	that1, ok := that.(*PartitioningDescriptor_Range)
  3384  	if !ok {
  3385  		that2, ok := that.(PartitioningDescriptor_Range)
  3386  		if ok {
  3387  			that1 = &that2
  3388  		} else {
  3389  			return false
  3390  		}
  3391  	}
  3392  	if that1 == nil {
  3393  		return this == nil
  3394  	} else if this == nil {
  3395  		return false
  3396  	}
  3397  	if this.Name != that1.Name {
  3398  		return false
  3399  	}
  3400  	if !bytes.Equal(this.FromInclusive, that1.FromInclusive) {
  3401  		return false
  3402  	}
  3403  	if !bytes.Equal(this.ToExclusive, that1.ToExclusive) {
  3404  		return false
  3405  	}
  3406  	return true
  3407  }
  3408  func (this *IndexDescriptor) Equal(that interface{}) bool {
  3409  	if that == nil {
  3410  		return this == nil
  3411  	}
  3412  
  3413  	that1, ok := that.(*IndexDescriptor)
  3414  	if !ok {
  3415  		that2, ok := that.(IndexDescriptor)
  3416  		if ok {
  3417  			that1 = &that2
  3418  		} else {
  3419  			return false
  3420  		}
  3421  	}
  3422  	if that1 == nil {
  3423  		return this == nil
  3424  	} else if this == nil {
  3425  		return false
  3426  	}
  3427  	if this.Name != that1.Name {
  3428  		return false
  3429  	}
  3430  	if this.ID != that1.ID {
  3431  		return false
  3432  	}
  3433  	if this.Unique != that1.Unique {
  3434  		return false
  3435  	}
  3436  	if this.Version != that1.Version {
  3437  		return false
  3438  	}
  3439  	if len(this.ColumnNames) != len(that1.ColumnNames) {
  3440  		return false
  3441  	}
  3442  	for i := range this.ColumnNames {
  3443  		if this.ColumnNames[i] != that1.ColumnNames[i] {
  3444  			return false
  3445  		}
  3446  	}
  3447  	if len(this.ColumnDirections) != len(that1.ColumnDirections) {
  3448  		return false
  3449  	}
  3450  	for i := range this.ColumnDirections {
  3451  		if this.ColumnDirections[i] != that1.ColumnDirections[i] {
  3452  			return false
  3453  		}
  3454  	}
  3455  	if len(this.StoreColumnNames) != len(that1.StoreColumnNames) {
  3456  		return false
  3457  	}
  3458  	for i := range this.StoreColumnNames {
  3459  		if this.StoreColumnNames[i] != that1.StoreColumnNames[i] {
  3460  			return false
  3461  		}
  3462  	}
  3463  	if len(this.ColumnIDs) != len(that1.ColumnIDs) {
  3464  		return false
  3465  	}
  3466  	for i := range this.ColumnIDs {
  3467  		if this.ColumnIDs[i] != that1.ColumnIDs[i] {
  3468  			return false
  3469  		}
  3470  	}
  3471  	if len(this.ExtraColumnIDs) != len(that1.ExtraColumnIDs) {
  3472  		return false
  3473  	}
  3474  	for i := range this.ExtraColumnIDs {
  3475  		if this.ExtraColumnIDs[i] != that1.ExtraColumnIDs[i] {
  3476  			return false
  3477  		}
  3478  	}
  3479  	if len(this.StoreColumnIDs) != len(that1.StoreColumnIDs) {
  3480  		return false
  3481  	}
  3482  	for i := range this.StoreColumnIDs {
  3483  		if this.StoreColumnIDs[i] != that1.StoreColumnIDs[i] {
  3484  			return false
  3485  		}
  3486  	}
  3487  	if len(this.CompositeColumnIDs) != len(that1.CompositeColumnIDs) {
  3488  		return false
  3489  	}
  3490  	for i := range this.CompositeColumnIDs {
  3491  		if this.CompositeColumnIDs[i] != that1.CompositeColumnIDs[i] {
  3492  			return false
  3493  		}
  3494  	}
  3495  	if !this.ForeignKey.Equal(&that1.ForeignKey) {
  3496  		return false
  3497  	}
  3498  	if len(this.ReferencedBy) != len(that1.ReferencedBy) {
  3499  		return false
  3500  	}
  3501  	for i := range this.ReferencedBy {
  3502  		if !this.ReferencedBy[i].Equal(&that1.ReferencedBy[i]) {
  3503  			return false
  3504  		}
  3505  	}
  3506  	if !this.Interleave.Equal(&that1.Interleave) {
  3507  		return false
  3508  	}
  3509  	if len(this.InterleavedBy) != len(that1.InterleavedBy) {
  3510  		return false
  3511  	}
  3512  	for i := range this.InterleavedBy {
  3513  		if !this.InterleavedBy[i].Equal(&that1.InterleavedBy[i]) {
  3514  			return false
  3515  		}
  3516  	}
  3517  	if !this.Partitioning.Equal(&that1.Partitioning) {
  3518  		return false
  3519  	}
  3520  	if this.Type != that1.Type {
  3521  		return false
  3522  	}
  3523  	if this.CreatedExplicitly != that1.CreatedExplicitly {
  3524  		return false
  3525  	}
  3526  	if this.EncodingType != that1.EncodingType {
  3527  		return false
  3528  	}
  3529  	if !this.Sharded.Equal(&that1.Sharded) {
  3530  		return false
  3531  	}
  3532  	if this.Disabled != that1.Disabled {
  3533  		return false
  3534  	}
  3535  	if !this.GeoConfig.Equal(&that1.GeoConfig) {
  3536  		return false
  3537  	}
  3538  	if this.Predicate != that1.Predicate {
  3539  		return false
  3540  	}
  3541  	return true
  3542  }
  3543  func (this *ConstraintToUpdate) Equal(that interface{}) bool {
  3544  	if that == nil {
  3545  		return this == nil
  3546  	}
  3547  
  3548  	that1, ok := that.(*ConstraintToUpdate)
  3549  	if !ok {
  3550  		that2, ok := that.(ConstraintToUpdate)
  3551  		if ok {
  3552  			that1 = &that2
  3553  		} else {
  3554  			return false
  3555  		}
  3556  	}
  3557  	if that1 == nil {
  3558  		return this == nil
  3559  	} else if this == nil {
  3560  		return false
  3561  	}
  3562  	if this.ConstraintType != that1.ConstraintType {
  3563  		return false
  3564  	}
  3565  	if this.Name != that1.Name {
  3566  		return false
  3567  	}
  3568  	if !this.Check.Equal(&that1.Check) {
  3569  		return false
  3570  	}
  3571  	if !this.ForeignKey.Equal(&that1.ForeignKey) {
  3572  		return false
  3573  	}
  3574  	if this.NotNullColumn != that1.NotNullColumn {
  3575  		return false
  3576  	}
  3577  	return true
  3578  }
  3579  func (this *PrimaryKeySwap) Equal(that interface{}) bool {
  3580  	if that == nil {
  3581  		return this == nil
  3582  	}
  3583  
  3584  	that1, ok := that.(*PrimaryKeySwap)
  3585  	if !ok {
  3586  		that2, ok := that.(PrimaryKeySwap)
  3587  		if ok {
  3588  			that1 = &that2
  3589  		} else {
  3590  			return false
  3591  		}
  3592  	}
  3593  	if that1 == nil {
  3594  		return this == nil
  3595  	} else if this == nil {
  3596  		return false
  3597  	}
  3598  	if this.OldPrimaryIndexId != that1.OldPrimaryIndexId {
  3599  		return false
  3600  	}
  3601  	if this.NewPrimaryIndexId != that1.NewPrimaryIndexId {
  3602  		return false
  3603  	}
  3604  	if len(this.OldIndexes) != len(that1.OldIndexes) {
  3605  		return false
  3606  	}
  3607  	for i := range this.OldIndexes {
  3608  		if this.OldIndexes[i] != that1.OldIndexes[i] {
  3609  			return false
  3610  		}
  3611  	}
  3612  	if len(this.NewIndexes) != len(that1.NewIndexes) {
  3613  		return false
  3614  	}
  3615  	for i := range this.NewIndexes {
  3616  		if this.NewIndexes[i] != that1.NewIndexes[i] {
  3617  			return false
  3618  		}
  3619  	}
  3620  	return true
  3621  }
  3622  func (this *ComputedColumnSwap) Equal(that interface{}) bool {
  3623  	if that == nil {
  3624  		return this == nil
  3625  	}
  3626  
  3627  	that1, ok := that.(*ComputedColumnSwap)
  3628  	if !ok {
  3629  		that2, ok := that.(ComputedColumnSwap)
  3630  		if ok {
  3631  			that1 = &that2
  3632  		} else {
  3633  			return false
  3634  		}
  3635  	}
  3636  	if that1 == nil {
  3637  		return this == nil
  3638  	} else if this == nil {
  3639  		return false
  3640  	}
  3641  	if this.NewColumnId != that1.NewColumnId {
  3642  		return false
  3643  	}
  3644  	if this.OldColumnId != that1.OldColumnId {
  3645  		return false
  3646  	}
  3647  	return true
  3648  }
  3649  func (this *DescriptorMutation) Equal(that interface{}) bool {
  3650  	if that == nil {
  3651  		return this == nil
  3652  	}
  3653  
  3654  	that1, ok := that.(*DescriptorMutation)
  3655  	if !ok {
  3656  		that2, ok := that.(DescriptorMutation)
  3657  		if ok {
  3658  			that1 = &that2
  3659  		} else {
  3660  			return false
  3661  		}
  3662  	}
  3663  	if that1 == nil {
  3664  		return this == nil
  3665  	} else if this == nil {
  3666  		return false
  3667  	}
  3668  	if that1.Descriptor_ == nil {
  3669  		if this.Descriptor_ != nil {
  3670  			return false
  3671  		}
  3672  	} else if this.Descriptor_ == nil {
  3673  		return false
  3674  	} else if !this.Descriptor_.Equal(that1.Descriptor_) {
  3675  		return false
  3676  	}
  3677  	if this.State != that1.State {
  3678  		return false
  3679  	}
  3680  	if this.Direction != that1.Direction {
  3681  		return false
  3682  	}
  3683  	if this.MutationID != that1.MutationID {
  3684  		return false
  3685  	}
  3686  	if this.Rollback != that1.Rollback {
  3687  		return false
  3688  	}
  3689  	return true
  3690  }
  3691  func (this *DescriptorMutation_Column) Equal(that interface{}) bool {
  3692  	if that == nil {
  3693  		return this == nil
  3694  	}
  3695  
  3696  	that1, ok := that.(*DescriptorMutation_Column)
  3697  	if !ok {
  3698  		that2, ok := that.(DescriptorMutation_Column)
  3699  		if ok {
  3700  			that1 = &that2
  3701  		} else {
  3702  			return false
  3703  		}
  3704  	}
  3705  	if that1 == nil {
  3706  		return this == nil
  3707  	} else if this == nil {
  3708  		return false
  3709  	}
  3710  	if !this.Column.Equal(that1.Column) {
  3711  		return false
  3712  	}
  3713  	return true
  3714  }
  3715  func (this *DescriptorMutation_Index) Equal(that interface{}) bool {
  3716  	if that == nil {
  3717  		return this == nil
  3718  	}
  3719  
  3720  	that1, ok := that.(*DescriptorMutation_Index)
  3721  	if !ok {
  3722  		that2, ok := that.(DescriptorMutation_Index)
  3723  		if ok {
  3724  			that1 = &that2
  3725  		} else {
  3726  			return false
  3727  		}
  3728  	}
  3729  	if that1 == nil {
  3730  		return this == nil
  3731  	} else if this == nil {
  3732  		return false
  3733  	}
  3734  	if !this.Index.Equal(that1.Index) {
  3735  		return false
  3736  	}
  3737  	return true
  3738  }
  3739  func (this *DescriptorMutation_Constraint) Equal(that interface{}) bool {
  3740  	if that == nil {
  3741  		return this == nil
  3742  	}
  3743  
  3744  	that1, ok := that.(*DescriptorMutation_Constraint)
  3745  	if !ok {
  3746  		that2, ok := that.(DescriptorMutation_Constraint)
  3747  		if ok {
  3748  			that1 = &that2
  3749  		} else {
  3750  			return false
  3751  		}
  3752  	}
  3753  	if that1 == nil {
  3754  		return this == nil
  3755  	} else if this == nil {
  3756  		return false
  3757  	}
  3758  	if !this.Constraint.Equal(that1.Constraint) {
  3759  		return false
  3760  	}
  3761  	return true
  3762  }
  3763  func (this *DescriptorMutation_PrimaryKeySwap) Equal(that interface{}) bool {
  3764  	if that == nil {
  3765  		return this == nil
  3766  	}
  3767  
  3768  	that1, ok := that.(*DescriptorMutation_PrimaryKeySwap)
  3769  	if !ok {
  3770  		that2, ok := that.(DescriptorMutation_PrimaryKeySwap)
  3771  		if ok {
  3772  			that1 = &that2
  3773  		} else {
  3774  			return false
  3775  		}
  3776  	}
  3777  	if that1 == nil {
  3778  		return this == nil
  3779  	} else if this == nil {
  3780  		return false
  3781  	}
  3782  	if !this.PrimaryKeySwap.Equal(that1.PrimaryKeySwap) {
  3783  		return false
  3784  	}
  3785  	return true
  3786  }
  3787  func (this *DescriptorMutation_ComputedColumnSwap) Equal(that interface{}) bool {
  3788  	if that == nil {
  3789  		return this == nil
  3790  	}
  3791  
  3792  	that1, ok := that.(*DescriptorMutation_ComputedColumnSwap)
  3793  	if !ok {
  3794  		that2, ok := that.(DescriptorMutation_ComputedColumnSwap)
  3795  		if ok {
  3796  			that1 = &that2
  3797  		} else {
  3798  			return false
  3799  		}
  3800  	}
  3801  	if that1 == nil {
  3802  		return this == nil
  3803  	} else if this == nil {
  3804  		return false
  3805  	}
  3806  	if !this.ComputedColumnSwap.Equal(that1.ComputedColumnSwap) {
  3807  		return false
  3808  	}
  3809  	return true
  3810  }
  3811  func (this *TableDescriptor) Equal(that interface{}) bool {
  3812  	if that == nil {
  3813  		return this == nil
  3814  	}
  3815  
  3816  	that1, ok := that.(*TableDescriptor)
  3817  	if !ok {
  3818  		that2, ok := that.(TableDescriptor)
  3819  		if ok {
  3820  			that1 = &that2
  3821  		} else {
  3822  			return false
  3823  		}
  3824  	}
  3825  	if that1 == nil {
  3826  		return this == nil
  3827  	} else if this == nil {
  3828  		return false
  3829  	}
  3830  	if this.Name != that1.Name {
  3831  		return false
  3832  	}
  3833  	if this.ID != that1.ID {
  3834  		return false
  3835  	}
  3836  	if this.ParentID != that1.ParentID {
  3837  		return false
  3838  	}
  3839  	if this.UnexposedParentSchemaID != that1.UnexposedParentSchemaID {
  3840  		return false
  3841  	}
  3842  	if this.Version != that1.Version {
  3843  		return false
  3844  	}
  3845  	if !this.ModificationTime.Equal(&that1.ModificationTime) {
  3846  		return false
  3847  	}
  3848  	if len(this.Columns) != len(that1.Columns) {
  3849  		return false
  3850  	}
  3851  	for i := range this.Columns {
  3852  		if !this.Columns[i].Equal(&that1.Columns[i]) {
  3853  			return false
  3854  		}
  3855  	}
  3856  	if this.NextColumnID != that1.NextColumnID {
  3857  		return false
  3858  	}
  3859  	if len(this.Families) != len(that1.Families) {
  3860  		return false
  3861  	}
  3862  	for i := range this.Families {
  3863  		if !this.Families[i].Equal(&that1.Families[i]) {
  3864  			return false
  3865  		}
  3866  	}
  3867  	if this.NextFamilyID != that1.NextFamilyID {
  3868  		return false
  3869  	}
  3870  	if !this.PrimaryIndex.Equal(&that1.PrimaryIndex) {
  3871  		return false
  3872  	}
  3873  	if len(this.Indexes) != len(that1.Indexes) {
  3874  		return false
  3875  	}
  3876  	for i := range this.Indexes {
  3877  		if !this.Indexes[i].Equal(&that1.Indexes[i]) {
  3878  			return false
  3879  		}
  3880  	}
  3881  	if this.NextIndexID != that1.NextIndexID {
  3882  		return false
  3883  	}
  3884  	if !this.Privileges.Equal(that1.Privileges) {
  3885  		return false
  3886  	}
  3887  	if len(this.Mutations) != len(that1.Mutations) {
  3888  		return false
  3889  	}
  3890  	for i := range this.Mutations {
  3891  		if !this.Mutations[i].Equal(&that1.Mutations[i]) {
  3892  			return false
  3893  		}
  3894  	}
  3895  	if !this.Lease.Equal(that1.Lease) {
  3896  		return false
  3897  	}
  3898  	if this.NextMutationID != that1.NextMutationID {
  3899  		return false
  3900  	}
  3901  	if this.FormatVersion != that1.FormatVersion {
  3902  		return false
  3903  	}
  3904  	if this.State != that1.State {
  3905  		return false
  3906  	}
  3907  	if this.OfflineReason != that1.OfflineReason {
  3908  		return false
  3909  	}
  3910  	if len(this.Checks) != len(that1.Checks) {
  3911  		return false
  3912  	}
  3913  	for i := range this.Checks {
  3914  		if !this.Checks[i].Equal(that1.Checks[i]) {
  3915  			return false
  3916  		}
  3917  	}
  3918  	if len(this.DrainingNames) != len(that1.DrainingNames) {
  3919  		return false
  3920  	}
  3921  	for i := range this.DrainingNames {
  3922  		if !this.DrainingNames[i].Equal(&that1.DrainingNames[i]) {
  3923  			return false
  3924  		}
  3925  	}
  3926  	if this.ViewQuery != that1.ViewQuery {
  3927  		return false
  3928  	}
  3929  	if len(this.DependsOn) != len(that1.DependsOn) {
  3930  		return false
  3931  	}
  3932  	for i := range this.DependsOn {
  3933  		if this.DependsOn[i] != that1.DependsOn[i] {
  3934  			return false
  3935  		}
  3936  	}
  3937  	if len(this.DependedOnBy) != len(that1.DependedOnBy) {
  3938  		return false
  3939  	}
  3940  	for i := range this.DependedOnBy {
  3941  		if !this.DependedOnBy[i].Equal(&that1.DependedOnBy[i]) {
  3942  			return false
  3943  		}
  3944  	}
  3945  	if len(this.MutationJobs) != len(that1.MutationJobs) {
  3946  		return false
  3947  	}
  3948  	for i := range this.MutationJobs {
  3949  		if !this.MutationJobs[i].Equal(&that1.MutationJobs[i]) {
  3950  			return false
  3951  		}
  3952  	}
  3953  	if !this.SequenceOpts.Equal(that1.SequenceOpts) {
  3954  		return false
  3955  	}
  3956  	if this.DropTime != that1.DropTime {
  3957  		return false
  3958  	}
  3959  	if !this.ReplacementOf.Equal(&that1.ReplacementOf) {
  3960  		return false
  3961  	}
  3962  	if this.AuditMode != that1.AuditMode {
  3963  		return false
  3964  	}
  3965  	if this.DropJobID != that1.DropJobID {
  3966  		return false
  3967  	}
  3968  	if len(this.GCMutations) != len(that1.GCMutations) {
  3969  		return false
  3970  	}
  3971  	for i := range this.GCMutations {
  3972  		if !this.GCMutations[i].Equal(&that1.GCMutations[i]) {
  3973  			return false
  3974  		}
  3975  	}
  3976  	if this.CreateQuery != that1.CreateQuery {
  3977  		return false
  3978  	}
  3979  	if !this.CreateAsOfTime.Equal(&that1.CreateAsOfTime) {
  3980  		return false
  3981  	}
  3982  	if len(this.OutboundFKs) != len(that1.OutboundFKs) {
  3983  		return false
  3984  	}
  3985  	for i := range this.OutboundFKs {
  3986  		if !this.OutboundFKs[i].Equal(&that1.OutboundFKs[i]) {
  3987  			return false
  3988  		}
  3989  	}
  3990  	if len(this.InboundFKs) != len(that1.InboundFKs) {
  3991  		return false
  3992  	}
  3993  	for i := range this.InboundFKs {
  3994  		if !this.InboundFKs[i].Equal(&that1.InboundFKs[i]) {
  3995  			return false
  3996  		}
  3997  	}
  3998  	if this.Temporary != that1.Temporary {
  3999  		return false
  4000  	}
  4001  	return true
  4002  }
  4003  func (this *TableDescriptor_SchemaChangeLease) Equal(that interface{}) bool {
  4004  	if that == nil {
  4005  		return this == nil
  4006  	}
  4007  
  4008  	that1, ok := that.(*TableDescriptor_SchemaChangeLease)
  4009  	if !ok {
  4010  		that2, ok := that.(TableDescriptor_SchemaChangeLease)
  4011  		if ok {
  4012  			that1 = &that2
  4013  		} else {
  4014  			return false
  4015  		}
  4016  	}
  4017  	if that1 == nil {
  4018  		return this == nil
  4019  	} else if this == nil {
  4020  		return false
  4021  	}
  4022  	if this.NodeID != that1.NodeID {
  4023  		return false
  4024  	}
  4025  	if this.ExpirationTime != that1.ExpirationTime {
  4026  		return false
  4027  	}
  4028  	return true
  4029  }
  4030  func (this *TableDescriptor_CheckConstraint) Equal(that interface{}) bool {
  4031  	if that == nil {
  4032  		return this == nil
  4033  	}
  4034  
  4035  	that1, ok := that.(*TableDescriptor_CheckConstraint)
  4036  	if !ok {
  4037  		that2, ok := that.(TableDescriptor_CheckConstraint)
  4038  		if ok {
  4039  			that1 = &that2
  4040  		} else {
  4041  			return false
  4042  		}
  4043  	}
  4044  	if that1 == nil {
  4045  		return this == nil
  4046  	} else if this == nil {
  4047  		return false
  4048  	}
  4049  	if this.Expr != that1.Expr {
  4050  		return false
  4051  	}
  4052  	if this.Name != that1.Name {
  4053  		return false
  4054  	}
  4055  	if this.Validity != that1.Validity {
  4056  		return false
  4057  	}
  4058  	if len(this.ColumnIDs) != len(that1.ColumnIDs) {
  4059  		return false
  4060  	}
  4061  	for i := range this.ColumnIDs {
  4062  		if this.ColumnIDs[i] != that1.ColumnIDs[i] {
  4063  			return false
  4064  		}
  4065  	}
  4066  	if this.IsNonNullConstraint != that1.IsNonNullConstraint {
  4067  		return false
  4068  	}
  4069  	if this.Hidden != that1.Hidden {
  4070  		return false
  4071  	}
  4072  	return true
  4073  }
  4074  func (this *TableDescriptor_NameInfo) Equal(that interface{}) bool {
  4075  	if that == nil {
  4076  		return this == nil
  4077  	}
  4078  
  4079  	that1, ok := that.(*TableDescriptor_NameInfo)
  4080  	if !ok {
  4081  		that2, ok := that.(TableDescriptor_NameInfo)
  4082  		if ok {
  4083  			that1 = &that2
  4084  		} else {
  4085  			return false
  4086  		}
  4087  	}
  4088  	if that1 == nil {
  4089  		return this == nil
  4090  	} else if this == nil {
  4091  		return false
  4092  	}
  4093  	if this.ParentID != that1.ParentID {
  4094  		return false
  4095  	}
  4096  	if this.ParentSchemaID != that1.ParentSchemaID {
  4097  		return false
  4098  	}
  4099  	if this.Name != that1.Name {
  4100  		return false
  4101  	}
  4102  	return true
  4103  }
  4104  func (this *TableDescriptor_Reference) Equal(that interface{}) bool {
  4105  	if that == nil {
  4106  		return this == nil
  4107  	}
  4108  
  4109  	that1, ok := that.(*TableDescriptor_Reference)
  4110  	if !ok {
  4111  		that2, ok := that.(TableDescriptor_Reference)
  4112  		if ok {
  4113  			that1 = &that2
  4114  		} else {
  4115  			return false
  4116  		}
  4117  	}
  4118  	if that1 == nil {
  4119  		return this == nil
  4120  	} else if this == nil {
  4121  		return false
  4122  	}
  4123  	if this.ID != that1.ID {
  4124  		return false
  4125  	}
  4126  	if this.IndexID != that1.IndexID {
  4127  		return false
  4128  	}
  4129  	if len(this.ColumnIDs) != len(that1.ColumnIDs) {
  4130  		return false
  4131  	}
  4132  	for i := range this.ColumnIDs {
  4133  		if this.ColumnIDs[i] != that1.ColumnIDs[i] {
  4134  			return false
  4135  		}
  4136  	}
  4137  	return true
  4138  }
  4139  func (this *TableDescriptor_MutationJob) Equal(that interface{}) bool {
  4140  	if that == nil {
  4141  		return this == nil
  4142  	}
  4143  
  4144  	that1, ok := that.(*TableDescriptor_MutationJob)
  4145  	if !ok {
  4146  		that2, ok := that.(TableDescriptor_MutationJob)
  4147  		if ok {
  4148  			that1 = &that2
  4149  		} else {
  4150  			return false
  4151  		}
  4152  	}
  4153  	if that1 == nil {
  4154  		return this == nil
  4155  	} else if this == nil {
  4156  		return false
  4157  	}
  4158  	if this.MutationID != that1.MutationID {
  4159  		return false
  4160  	}
  4161  	if this.JobID != that1.JobID {
  4162  		return false
  4163  	}
  4164  	return true
  4165  }
  4166  func (this *TableDescriptor_SequenceOpts) Equal(that interface{}) bool {
  4167  	if that == nil {
  4168  		return this == nil
  4169  	}
  4170  
  4171  	that1, ok := that.(*TableDescriptor_SequenceOpts)
  4172  	if !ok {
  4173  		that2, ok := that.(TableDescriptor_SequenceOpts)
  4174  		if ok {
  4175  			that1 = &that2
  4176  		} else {
  4177  			return false
  4178  		}
  4179  	}
  4180  	if that1 == nil {
  4181  		return this == nil
  4182  	} else if this == nil {
  4183  		return false
  4184  	}
  4185  	if this.Increment != that1.Increment {
  4186  		return false
  4187  	}
  4188  	if this.MinValue != that1.MinValue {
  4189  		return false
  4190  	}
  4191  	if this.MaxValue != that1.MaxValue {
  4192  		return false
  4193  	}
  4194  	if this.Start != that1.Start {
  4195  		return false
  4196  	}
  4197  	if this.Virtual != that1.Virtual {
  4198  		return false
  4199  	}
  4200  	if !this.SequenceOwner.Equal(&that1.SequenceOwner) {
  4201  		return false
  4202  	}
  4203  	return true
  4204  }
  4205  func (this *TableDescriptor_SequenceOpts_SequenceOwner) Equal(that interface{}) bool {
  4206  	if that == nil {
  4207  		return this == nil
  4208  	}
  4209  
  4210  	that1, ok := that.(*TableDescriptor_SequenceOpts_SequenceOwner)
  4211  	if !ok {
  4212  		that2, ok := that.(TableDescriptor_SequenceOpts_SequenceOwner)
  4213  		if ok {
  4214  			that1 = &that2
  4215  		} else {
  4216  			return false
  4217  		}
  4218  	}
  4219  	if that1 == nil {
  4220  		return this == nil
  4221  	} else if this == nil {
  4222  		return false
  4223  	}
  4224  	if this.OwnerColumnID != that1.OwnerColumnID {
  4225  		return false
  4226  	}
  4227  	if this.OwnerTableID != that1.OwnerTableID {
  4228  		return false
  4229  	}
  4230  	return true
  4231  }
  4232  func (this *TableDescriptor_Replacement) Equal(that interface{}) bool {
  4233  	if that == nil {
  4234  		return this == nil
  4235  	}
  4236  
  4237  	that1, ok := that.(*TableDescriptor_Replacement)
  4238  	if !ok {
  4239  		that2, ok := that.(TableDescriptor_Replacement)
  4240  		if ok {
  4241  			that1 = &that2
  4242  		} else {
  4243  			return false
  4244  		}
  4245  	}
  4246  	if that1 == nil {
  4247  		return this == nil
  4248  	} else if this == nil {
  4249  		return false
  4250  	}
  4251  	if this.ID != that1.ID {
  4252  		return false
  4253  	}
  4254  	if !this.Time.Equal(&that1.Time) {
  4255  		return false
  4256  	}
  4257  	return true
  4258  }
  4259  func (this *TableDescriptor_GCDescriptorMutation) Equal(that interface{}) bool {
  4260  	if that == nil {
  4261  		return this == nil
  4262  	}
  4263  
  4264  	that1, ok := that.(*TableDescriptor_GCDescriptorMutation)
  4265  	if !ok {
  4266  		that2, ok := that.(TableDescriptor_GCDescriptorMutation)
  4267  		if ok {
  4268  			that1 = &that2
  4269  		} else {
  4270  			return false
  4271  		}
  4272  	}
  4273  	if that1 == nil {
  4274  		return this == nil
  4275  	} else if this == nil {
  4276  		return false
  4277  	}
  4278  	if this.IndexID != that1.IndexID {
  4279  		return false
  4280  	}
  4281  	if this.DropTime != that1.DropTime {
  4282  		return false
  4283  	}
  4284  	if this.JobID != that1.JobID {
  4285  		return false
  4286  	}
  4287  	return true
  4288  }
  4289  func (this *DatabaseDescriptor) Equal(that interface{}) bool {
  4290  	if that == nil {
  4291  		return this == nil
  4292  	}
  4293  
  4294  	that1, ok := that.(*DatabaseDescriptor)
  4295  	if !ok {
  4296  		that2, ok := that.(DatabaseDescriptor)
  4297  		if ok {
  4298  			that1 = &that2
  4299  		} else {
  4300  			return false
  4301  		}
  4302  	}
  4303  	if that1 == nil {
  4304  		return this == nil
  4305  	} else if this == nil {
  4306  		return false
  4307  	}
  4308  	if this.Name != that1.Name {
  4309  		return false
  4310  	}
  4311  	if this.ID != that1.ID {
  4312  		return false
  4313  	}
  4314  	if !this.Privileges.Equal(that1.Privileges) {
  4315  		return false
  4316  	}
  4317  	return true
  4318  }
  4319  func (this *TypeDescriptor) Equal(that interface{}) bool {
  4320  	if that == nil {
  4321  		return this == nil
  4322  	}
  4323  
  4324  	that1, ok := that.(*TypeDescriptor)
  4325  	if !ok {
  4326  		that2, ok := that.(TypeDescriptor)
  4327  		if ok {
  4328  			that1 = &that2
  4329  		} else {
  4330  			return false
  4331  		}
  4332  	}
  4333  	if that1 == nil {
  4334  		return this == nil
  4335  	} else if this == nil {
  4336  		return false
  4337  	}
  4338  	if this.ParentID != that1.ParentID {
  4339  		return false
  4340  	}
  4341  	if this.ParentSchemaID != that1.ParentSchemaID {
  4342  		return false
  4343  	}
  4344  	if this.Name != that1.Name {
  4345  		return false
  4346  	}
  4347  	if this.ID != that1.ID {
  4348  		return false
  4349  	}
  4350  	if this.ArrayTypeID != that1.ArrayTypeID {
  4351  		return false
  4352  	}
  4353  	if this.Kind != that1.Kind {
  4354  		return false
  4355  	}
  4356  	if len(this.EnumMembers) != len(that1.EnumMembers) {
  4357  		return false
  4358  	}
  4359  	for i := range this.EnumMembers {
  4360  		if !this.EnumMembers[i].Equal(&that1.EnumMembers[i]) {
  4361  			return false
  4362  		}
  4363  	}
  4364  	if !this.Alias.Equal(that1.Alias) {
  4365  		return false
  4366  	}
  4367  	return true
  4368  }
  4369  func (this *TypeDescriptor_EnumMember) Equal(that interface{}) bool {
  4370  	if that == nil {
  4371  		return this == nil
  4372  	}
  4373  
  4374  	that1, ok := that.(*TypeDescriptor_EnumMember)
  4375  	if !ok {
  4376  		that2, ok := that.(TypeDescriptor_EnumMember)
  4377  		if ok {
  4378  			that1 = &that2
  4379  		} else {
  4380  			return false
  4381  		}
  4382  	}
  4383  	if that1 == nil {
  4384  		return this == nil
  4385  	} else if this == nil {
  4386  		return false
  4387  	}
  4388  	if !bytes.Equal(this.PhysicalRepresentation, that1.PhysicalRepresentation) {
  4389  		return false
  4390  	}
  4391  	if this.LogicalRepresentation != that1.LogicalRepresentation {
  4392  		return false
  4393  	}
  4394  	return true
  4395  }
  4396  func (this *SchemaDescriptor) Equal(that interface{}) bool {
  4397  	if that == nil {
  4398  		return this == nil
  4399  	}
  4400  
  4401  	that1, ok := that.(*SchemaDescriptor)
  4402  	if !ok {
  4403  		that2, ok := that.(SchemaDescriptor)
  4404  		if ok {
  4405  			that1 = &that2
  4406  		} else {
  4407  			return false
  4408  		}
  4409  	}
  4410  	if that1 == nil {
  4411  		return this == nil
  4412  	} else if this == nil {
  4413  		return false
  4414  	}
  4415  	if this.ParentID != that1.ParentID {
  4416  		return false
  4417  	}
  4418  	if this.Name != that1.Name {
  4419  		return false
  4420  	}
  4421  	if this.ID != that1.ID {
  4422  		return false
  4423  	}
  4424  	if !this.Privileges.Equal(that1.Privileges) {
  4425  		return false
  4426  	}
  4427  	return true
  4428  }
  4429  func (this *Descriptor) Equal(that interface{}) bool {
  4430  	if that == nil {
  4431  		return this == nil
  4432  	}
  4433  
  4434  	that1, ok := that.(*Descriptor)
  4435  	if !ok {
  4436  		that2, ok := that.(Descriptor)
  4437  		if ok {
  4438  			that1 = &that2
  4439  		} else {
  4440  			return false
  4441  		}
  4442  	}
  4443  	if that1 == nil {
  4444  		return this == nil
  4445  	} else if this == nil {
  4446  		return false
  4447  	}
  4448  	if that1.Union == nil {
  4449  		if this.Union != nil {
  4450  			return false
  4451  		}
  4452  	} else if this.Union == nil {
  4453  		return false
  4454  	} else if !this.Union.Equal(that1.Union) {
  4455  		return false
  4456  	}
  4457  	return true
  4458  }
  4459  func (this *Descriptor_Table) Equal(that interface{}) bool {
  4460  	if that == nil {
  4461  		return this == nil
  4462  	}
  4463  
  4464  	that1, ok := that.(*Descriptor_Table)
  4465  	if !ok {
  4466  		that2, ok := that.(Descriptor_Table)
  4467  		if ok {
  4468  			that1 = &that2
  4469  		} else {
  4470  			return false
  4471  		}
  4472  	}
  4473  	if that1 == nil {
  4474  		return this == nil
  4475  	} else if this == nil {
  4476  		return false
  4477  	}
  4478  	if !this.Table.Equal(that1.Table) {
  4479  		return false
  4480  	}
  4481  	return true
  4482  }
  4483  func (this *Descriptor_Database) Equal(that interface{}) bool {
  4484  	if that == nil {
  4485  		return this == nil
  4486  	}
  4487  
  4488  	that1, ok := that.(*Descriptor_Database)
  4489  	if !ok {
  4490  		that2, ok := that.(Descriptor_Database)
  4491  		if ok {
  4492  			that1 = &that2
  4493  		} else {
  4494  			return false
  4495  		}
  4496  	}
  4497  	if that1 == nil {
  4498  		return this == nil
  4499  	} else if this == nil {
  4500  		return false
  4501  	}
  4502  	if !this.Database.Equal(that1.Database) {
  4503  		return false
  4504  	}
  4505  	return true
  4506  }
  4507  func (this *Descriptor_Type) Equal(that interface{}) bool {
  4508  	if that == nil {
  4509  		return this == nil
  4510  	}
  4511  
  4512  	that1, ok := that.(*Descriptor_Type)
  4513  	if !ok {
  4514  		that2, ok := that.(Descriptor_Type)
  4515  		if ok {
  4516  			that1 = &that2
  4517  		} else {
  4518  			return false
  4519  		}
  4520  	}
  4521  	if that1 == nil {
  4522  		return this == nil
  4523  	} else if this == nil {
  4524  		return false
  4525  	}
  4526  	if !this.Type.Equal(that1.Type) {
  4527  		return false
  4528  	}
  4529  	return true
  4530  }
  4531  func (this *Descriptor_Schema) Equal(that interface{}) bool {
  4532  	if that == nil {
  4533  		return this == nil
  4534  	}
  4535  
  4536  	that1, ok := that.(*Descriptor_Schema)
  4537  	if !ok {
  4538  		that2, ok := that.(Descriptor_Schema)
  4539  		if ok {
  4540  			that1 = &that2
  4541  		} else {
  4542  			return false
  4543  		}
  4544  	}
  4545  	if that1 == nil {
  4546  		return this == nil
  4547  	} else if this == nil {
  4548  		return false
  4549  	}
  4550  	if !this.Schema.Equal(that1.Schema) {
  4551  		return false
  4552  	}
  4553  	return true
  4554  }
  4555  func (m *ForeignKeyReference) Marshal() (dAtA []byte, err error) {
  4556  	size := m.Size()
  4557  	dAtA = make([]byte, size)
  4558  	n, err := m.MarshalTo(dAtA)
  4559  	if err != nil {
  4560  		return nil, err
  4561  	}
  4562  	return dAtA[:n], nil
  4563  }
  4564  
  4565  func (m *ForeignKeyReference) MarshalTo(dAtA []byte) (int, error) {
  4566  	var i int
  4567  	_ = i
  4568  	var l int
  4569  	_ = l
  4570  	dAtA[i] = 0x8
  4571  	i++
  4572  	i = encodeVarintStructured(dAtA, i, uint64(m.Table))
  4573  	dAtA[i] = 0x10
  4574  	i++
  4575  	i = encodeVarintStructured(dAtA, i, uint64(m.Index))
  4576  	dAtA[i] = 0x1a
  4577  	i++
  4578  	i = encodeVarintStructured(dAtA, i, uint64(len(m.Name)))
  4579  	i += copy(dAtA[i:], m.Name)
  4580  	dAtA[i] = 0x20
  4581  	i++
  4582  	i = encodeVarintStructured(dAtA, i, uint64(m.Validity))
  4583  	dAtA[i] = 0x28
  4584  	i++
  4585  	i = encodeVarintStructured(dAtA, i, uint64(m.SharedPrefixLen))
  4586  	dAtA[i] = 0x30
  4587  	i++
  4588  	i = encodeVarintStructured(dAtA, i, uint64(m.OnDelete))
  4589  	dAtA[i] = 0x38
  4590  	i++
  4591  	i = encodeVarintStructured(dAtA, i, uint64(m.OnUpdate))
  4592  	dAtA[i] = 0x40
  4593  	i++
  4594  	i = encodeVarintStructured(dAtA, i, uint64(m.Match))
  4595  	return i, nil
  4596  }
  4597  
  4598  func (m *ForeignKeyConstraint) Marshal() (dAtA []byte, err error) {
  4599  	size := m.Size()
  4600  	dAtA = make([]byte, size)
  4601  	n, err := m.MarshalTo(dAtA)
  4602  	if err != nil {
  4603  		return nil, err
  4604  	}
  4605  	return dAtA[:n], nil
  4606  }
  4607  
  4608  func (m *ForeignKeyConstraint) MarshalTo(dAtA []byte) (int, error) {
  4609  	var i int
  4610  	_ = i
  4611  	var l int
  4612  	_ = l
  4613  	dAtA[i] = 0x8
  4614  	i++
  4615  	i = encodeVarintStructured(dAtA, i, uint64(m.OriginTableID))
  4616  	if len(m.OriginColumnIDs) > 0 {
  4617  		for _, num := range m.OriginColumnIDs {
  4618  			dAtA[i] = 0x10
  4619  			i++
  4620  			i = encodeVarintStructured(dAtA, i, uint64(num))
  4621  		}
  4622  	}
  4623  	if len(m.ReferencedColumnIDs) > 0 {
  4624  		for _, num := range m.ReferencedColumnIDs {
  4625  			dAtA[i] = 0x18
  4626  			i++
  4627  			i = encodeVarintStructured(dAtA, i, uint64(num))
  4628  		}
  4629  	}
  4630  	dAtA[i] = 0x20
  4631  	i++
  4632  	i = encodeVarintStructured(dAtA, i, uint64(m.ReferencedTableID))
  4633  	dAtA[i] = 0x2a
  4634  	i++
  4635  	i = encodeVarintStructured(dAtA, i, uint64(len(m.Name)))
  4636  	i += copy(dAtA[i:], m.Name)
  4637  	dAtA[i] = 0x30
  4638  	i++
  4639  	i = encodeVarintStructured(dAtA, i, uint64(m.Validity))
  4640  	dAtA[i] = 0x38
  4641  	i++
  4642  	i = encodeVarintStructured(dAtA, i, uint64(m.OnDelete))
  4643  	dAtA[i] = 0x40
  4644  	i++
  4645  	i = encodeVarintStructured(dAtA, i, uint64(m.OnUpdate))
  4646  	dAtA[i] = 0x48
  4647  	i++
  4648  	i = encodeVarintStructured(dAtA, i, uint64(m.Match))
  4649  	dAtA[i] = 0x50
  4650  	i++
  4651  	i = encodeVarintStructured(dAtA, i, uint64(m.LegacyOriginIndex))
  4652  	dAtA[i] = 0x58
  4653  	i++
  4654  	i = encodeVarintStructured(dAtA, i, uint64(m.LegacyReferencedIndex))
  4655  	return i, nil
  4656  }
  4657  
  4658  func (m *ColumnDescriptor) Marshal() (dAtA []byte, err error) {
  4659  	size := m.Size()
  4660  	dAtA = make([]byte, size)
  4661  	n, err := m.MarshalTo(dAtA)
  4662  	if err != nil {
  4663  		return nil, err
  4664  	}
  4665  	return dAtA[:n], nil
  4666  }
  4667  
  4668  func (m *ColumnDescriptor) MarshalTo(dAtA []byte) (int, error) {
  4669  	var i int
  4670  	_ = i
  4671  	var l int
  4672  	_ = l
  4673  	dAtA[i] = 0xa
  4674  	i++
  4675  	i = encodeVarintStructured(dAtA, i, uint64(len(m.Name)))
  4676  	i += copy(dAtA[i:], m.Name)
  4677  	dAtA[i] = 0x10
  4678  	i++
  4679  	i = encodeVarintStructured(dAtA, i, uint64(m.ID))
  4680  	if m.Type != nil {
  4681  		dAtA[i] = 0x1a
  4682  		i++
  4683  		i = encodeVarintStructured(dAtA, i, uint64(m.Type.Size()))
  4684  		n1, err := m.Type.MarshalTo(dAtA[i:])
  4685  		if err != nil {
  4686  			return 0, err
  4687  		}
  4688  		i += n1
  4689  	}
  4690  	dAtA[i] = 0x20
  4691  	i++
  4692  	if m.Nullable {
  4693  		dAtA[i] = 1
  4694  	} else {
  4695  		dAtA[i] = 0
  4696  	}
  4697  	i++
  4698  	if m.DefaultExpr != nil {
  4699  		dAtA[i] = 0x2a
  4700  		i++
  4701  		i = encodeVarintStructured(dAtA, i, uint64(len(*m.DefaultExpr)))
  4702  		i += copy(dAtA[i:], *m.DefaultExpr)
  4703  	}
  4704  	dAtA[i] = 0x30
  4705  	i++
  4706  	if m.Hidden {
  4707  		dAtA[i] = 1
  4708  	} else {
  4709  		dAtA[i] = 0
  4710  	}
  4711  	i++
  4712  	if len(m.UsesSequenceIds) > 0 {
  4713  		for _, num := range m.UsesSequenceIds {
  4714  			dAtA[i] = 0x50
  4715  			i++
  4716  			i = encodeVarintStructured(dAtA, i, uint64(num))
  4717  		}
  4718  	}
  4719  	if m.ComputeExpr != nil {
  4720  		dAtA[i] = 0x5a
  4721  		i++
  4722  		i = encodeVarintStructured(dAtA, i, uint64(len(*m.ComputeExpr)))
  4723  		i += copy(dAtA[i:], *m.ComputeExpr)
  4724  	}
  4725  	if len(m.OwnsSequenceIds) > 0 {
  4726  		for _, num := range m.OwnsSequenceIds {
  4727  			dAtA[i] = 0x60
  4728  			i++
  4729  			i = encodeVarintStructured(dAtA, i, uint64(num))
  4730  		}
  4731  	}
  4732  	dAtA[i] = 0x68
  4733  	i++
  4734  	i = encodeVarintStructured(dAtA, i, uint64(m.LogicalColumnID))
  4735  	dAtA[i] = 0x70
  4736  	i++
  4737  	if m.AlterColumnTypeInProgress {
  4738  		dAtA[i] = 1
  4739  	} else {
  4740  		dAtA[i] = 0
  4741  	}
  4742  	i++
  4743  	return i, nil
  4744  }
  4745  
  4746  func (m *ColumnFamilyDescriptor) Marshal() (dAtA []byte, err error) {
  4747  	size := m.Size()
  4748  	dAtA = make([]byte, size)
  4749  	n, err := m.MarshalTo(dAtA)
  4750  	if err != nil {
  4751  		return nil, err
  4752  	}
  4753  	return dAtA[:n], nil
  4754  }
  4755  
  4756  func (m *ColumnFamilyDescriptor) MarshalTo(dAtA []byte) (int, error) {
  4757  	var i int
  4758  	_ = i
  4759  	var l int
  4760  	_ = l
  4761  	dAtA[i] = 0xa
  4762  	i++
  4763  	i = encodeVarintStructured(dAtA, i, uint64(len(m.Name)))
  4764  	i += copy(dAtA[i:], m.Name)
  4765  	dAtA[i] = 0x10
  4766  	i++
  4767  	i = encodeVarintStructured(dAtA, i, uint64(m.ID))
  4768  	if len(m.ColumnNames) > 0 {
  4769  		for _, s := range m.ColumnNames {
  4770  			dAtA[i] = 0x1a
  4771  			i++
  4772  			l = len(s)
  4773  			for l >= 1<<7 {
  4774  				dAtA[i] = uint8(uint64(l)&0x7f | 0x80)
  4775  				l >>= 7
  4776  				i++
  4777  			}
  4778  			dAtA[i] = uint8(l)
  4779  			i++
  4780  			i += copy(dAtA[i:], s)
  4781  		}
  4782  	}
  4783  	if len(m.ColumnIDs) > 0 {
  4784  		for _, num := range m.ColumnIDs {
  4785  			dAtA[i] = 0x20
  4786  			i++
  4787  			i = encodeVarintStructured(dAtA, i, uint64(num))
  4788  		}
  4789  	}
  4790  	dAtA[i] = 0x28
  4791  	i++
  4792  	i = encodeVarintStructured(dAtA, i, uint64(m.DefaultColumnID))
  4793  	return i, nil
  4794  }
  4795  
  4796  func (m *InterleaveDescriptor) Marshal() (dAtA []byte, err error) {
  4797  	size := m.Size()
  4798  	dAtA = make([]byte, size)
  4799  	n, err := m.MarshalTo(dAtA)
  4800  	if err != nil {
  4801  		return nil, err
  4802  	}
  4803  	return dAtA[:n], nil
  4804  }
  4805  
  4806  func (m *InterleaveDescriptor) MarshalTo(dAtA []byte) (int, error) {
  4807  	var i int
  4808  	_ = i
  4809  	var l int
  4810  	_ = l
  4811  	if len(m.Ancestors) > 0 {
  4812  		for _, msg := range m.Ancestors {
  4813  			dAtA[i] = 0xa
  4814  			i++
  4815  			i = encodeVarintStructured(dAtA, i, uint64(msg.Size()))
  4816  			n, err := msg.MarshalTo(dAtA[i:])
  4817  			if err != nil {
  4818  				return 0, err
  4819  			}
  4820  			i += n
  4821  		}
  4822  	}
  4823  	return i, nil
  4824  }
  4825  
  4826  func (m *InterleaveDescriptor_Ancestor) Marshal() (dAtA []byte, err error) {
  4827  	size := m.Size()
  4828  	dAtA = make([]byte, size)
  4829  	n, err := m.MarshalTo(dAtA)
  4830  	if err != nil {
  4831  		return nil, err
  4832  	}
  4833  	return dAtA[:n], nil
  4834  }
  4835  
  4836  func (m *InterleaveDescriptor_Ancestor) MarshalTo(dAtA []byte) (int, error) {
  4837  	var i int
  4838  	_ = i
  4839  	var l int
  4840  	_ = l
  4841  	dAtA[i] = 0x8
  4842  	i++
  4843  	i = encodeVarintStructured(dAtA, i, uint64(m.TableID))
  4844  	dAtA[i] = 0x10
  4845  	i++
  4846  	i = encodeVarintStructured(dAtA, i, uint64(m.IndexID))
  4847  	dAtA[i] = 0x18
  4848  	i++
  4849  	i = encodeVarintStructured(dAtA, i, uint64(m.SharedPrefixLen))
  4850  	return i, nil
  4851  }
  4852  
  4853  func (m *ShardedDescriptor) Marshal() (dAtA []byte, err error) {
  4854  	size := m.Size()
  4855  	dAtA = make([]byte, size)
  4856  	n, err := m.MarshalTo(dAtA)
  4857  	if err != nil {
  4858  		return nil, err
  4859  	}
  4860  	return dAtA[:n], nil
  4861  }
  4862  
  4863  func (m *ShardedDescriptor) MarshalTo(dAtA []byte) (int, error) {
  4864  	var i int
  4865  	_ = i
  4866  	var l int
  4867  	_ = l
  4868  	dAtA[i] = 0x8
  4869  	i++
  4870  	if m.IsSharded {
  4871  		dAtA[i] = 1
  4872  	} else {
  4873  		dAtA[i] = 0
  4874  	}
  4875  	i++
  4876  	dAtA[i] = 0x12
  4877  	i++
  4878  	i = encodeVarintStructured(dAtA, i, uint64(len(m.Name)))
  4879  	i += copy(dAtA[i:], m.Name)
  4880  	dAtA[i] = 0x18
  4881  	i++
  4882  	i = encodeVarintStructured(dAtA, i, uint64(m.ShardBuckets))
  4883  	if len(m.ColumnNames) > 0 {
  4884  		for _, s := range m.ColumnNames {
  4885  			dAtA[i] = 0x22
  4886  			i++
  4887  			l = len(s)
  4888  			for l >= 1<<7 {
  4889  				dAtA[i] = uint8(uint64(l)&0x7f | 0x80)
  4890  				l >>= 7
  4891  				i++
  4892  			}
  4893  			dAtA[i] = uint8(l)
  4894  			i++
  4895  			i += copy(dAtA[i:], s)
  4896  		}
  4897  	}
  4898  	return i, nil
  4899  }
  4900  
  4901  func (m *PartitioningDescriptor) Marshal() (dAtA []byte, err error) {
  4902  	size := m.Size()
  4903  	dAtA = make([]byte, size)
  4904  	n, err := m.MarshalTo(dAtA)
  4905  	if err != nil {
  4906  		return nil, err
  4907  	}
  4908  	return dAtA[:n], nil
  4909  }
  4910  
  4911  func (m *PartitioningDescriptor) MarshalTo(dAtA []byte) (int, error) {
  4912  	var i int
  4913  	_ = i
  4914  	var l int
  4915  	_ = l
  4916  	dAtA[i] = 0x8
  4917  	i++
  4918  	i = encodeVarintStructured(dAtA, i, uint64(m.NumColumns))
  4919  	if len(m.List) > 0 {
  4920  		for _, msg := range m.List {
  4921  			dAtA[i] = 0x12
  4922  			i++
  4923  			i = encodeVarintStructured(dAtA, i, uint64(msg.Size()))
  4924  			n, err := msg.MarshalTo(dAtA[i:])
  4925  			if err != nil {
  4926  				return 0, err
  4927  			}
  4928  			i += n
  4929  		}
  4930  	}
  4931  	if len(m.Range) > 0 {
  4932  		for _, msg := range m.Range {
  4933  			dAtA[i] = 0x1a
  4934  			i++
  4935  			i = encodeVarintStructured(dAtA, i, uint64(msg.Size()))
  4936  			n, err := msg.MarshalTo(dAtA[i:])
  4937  			if err != nil {
  4938  				return 0, err
  4939  			}
  4940  			i += n
  4941  		}
  4942  	}
  4943  	return i, nil
  4944  }
  4945  
  4946  func (m *PartitioningDescriptor_List) Marshal() (dAtA []byte, err error) {
  4947  	size := m.Size()
  4948  	dAtA = make([]byte, size)
  4949  	n, err := m.MarshalTo(dAtA)
  4950  	if err != nil {
  4951  		return nil, err
  4952  	}
  4953  	return dAtA[:n], nil
  4954  }
  4955  
  4956  func (m *PartitioningDescriptor_List) MarshalTo(dAtA []byte) (int, error) {
  4957  	var i int
  4958  	_ = i
  4959  	var l int
  4960  	_ = l
  4961  	dAtA[i] = 0xa
  4962  	i++
  4963  	i = encodeVarintStructured(dAtA, i, uint64(len(m.Name)))
  4964  	i += copy(dAtA[i:], m.Name)
  4965  	if len(m.Values) > 0 {
  4966  		for _, b := range m.Values {
  4967  			dAtA[i] = 0x12
  4968  			i++
  4969  			i = encodeVarintStructured(dAtA, i, uint64(len(b)))
  4970  			i += copy(dAtA[i:], b)
  4971  		}
  4972  	}
  4973  	dAtA[i] = 0x1a
  4974  	i++
  4975  	i = encodeVarintStructured(dAtA, i, uint64(m.Subpartitioning.Size()))
  4976  	n2, err := m.Subpartitioning.MarshalTo(dAtA[i:])
  4977  	if err != nil {
  4978  		return 0, err
  4979  	}
  4980  	i += n2
  4981  	return i, nil
  4982  }
  4983  
  4984  func (m *PartitioningDescriptor_Range) Marshal() (dAtA []byte, err error) {
  4985  	size := m.Size()
  4986  	dAtA = make([]byte, size)
  4987  	n, err := m.MarshalTo(dAtA)
  4988  	if err != nil {
  4989  		return nil, err
  4990  	}
  4991  	return dAtA[:n], nil
  4992  }
  4993  
  4994  func (m *PartitioningDescriptor_Range) MarshalTo(dAtA []byte) (int, error) {
  4995  	var i int
  4996  	_ = i
  4997  	var l int
  4998  	_ = l
  4999  	dAtA[i] = 0xa
  5000  	i++
  5001  	i = encodeVarintStructured(dAtA, i, uint64(len(m.Name)))
  5002  	i += copy(dAtA[i:], m.Name)
  5003  	if m.ToExclusive != nil {
  5004  		dAtA[i] = 0x12
  5005  		i++
  5006  		i = encodeVarintStructured(dAtA, i, uint64(len(m.ToExclusive)))
  5007  		i += copy(dAtA[i:], m.ToExclusive)
  5008  	}
  5009  	if m.FromInclusive != nil {
  5010  		dAtA[i] = 0x1a
  5011  		i++
  5012  		i = encodeVarintStructured(dAtA, i, uint64(len(m.FromInclusive)))
  5013  		i += copy(dAtA[i:], m.FromInclusive)
  5014  	}
  5015  	return i, nil
  5016  }
  5017  
  5018  func (m *IndexDescriptor) Marshal() (dAtA []byte, err error) {
  5019  	size := m.Size()
  5020  	dAtA = make([]byte, size)
  5021  	n, err := m.MarshalTo(dAtA)
  5022  	if err != nil {
  5023  		return nil, err
  5024  	}
  5025  	return dAtA[:n], nil
  5026  }
  5027  
  5028  func (m *IndexDescriptor) MarshalTo(dAtA []byte) (int, error) {
  5029  	var i int
  5030  	_ = i
  5031  	var l int
  5032  	_ = l
  5033  	dAtA[i] = 0xa
  5034  	i++
  5035  	i = encodeVarintStructured(dAtA, i, uint64(len(m.Name)))
  5036  	i += copy(dAtA[i:], m.Name)
  5037  	dAtA[i] = 0x10
  5038  	i++
  5039  	i = encodeVarintStructured(dAtA, i, uint64(m.ID))
  5040  	dAtA[i] = 0x18
  5041  	i++
  5042  	if m.Unique {
  5043  		dAtA[i] = 1
  5044  	} else {
  5045  		dAtA[i] = 0
  5046  	}
  5047  	i++
  5048  	if len(m.ColumnNames) > 0 {
  5049  		for _, s := range m.ColumnNames {
  5050  			dAtA[i] = 0x22
  5051  			i++
  5052  			l = len(s)
  5053  			for l >= 1<<7 {
  5054  				dAtA[i] = uint8(uint64(l)&0x7f | 0x80)
  5055  				l >>= 7
  5056  				i++
  5057  			}
  5058  			dAtA[i] = uint8(l)
  5059  			i++
  5060  			i += copy(dAtA[i:], s)
  5061  		}
  5062  	}
  5063  	if len(m.StoreColumnNames) > 0 {
  5064  		for _, s := range m.StoreColumnNames {
  5065  			dAtA[i] = 0x2a
  5066  			i++
  5067  			l = len(s)
  5068  			for l >= 1<<7 {
  5069  				dAtA[i] = uint8(uint64(l)&0x7f | 0x80)
  5070  				l >>= 7
  5071  				i++
  5072  			}
  5073  			dAtA[i] = uint8(l)
  5074  			i++
  5075  			i += copy(dAtA[i:], s)
  5076  		}
  5077  	}
  5078  	if len(m.ColumnIDs) > 0 {
  5079  		for _, num := range m.ColumnIDs {
  5080  			dAtA[i] = 0x30
  5081  			i++
  5082  			i = encodeVarintStructured(dAtA, i, uint64(num))
  5083  		}
  5084  	}
  5085  	if len(m.ExtraColumnIDs) > 0 {
  5086  		for _, num := range m.ExtraColumnIDs {
  5087  			dAtA[i] = 0x38
  5088  			i++
  5089  			i = encodeVarintStructured(dAtA, i, uint64(num))
  5090  		}
  5091  	}
  5092  	if len(m.ColumnDirections) > 0 {
  5093  		for _, num := range m.ColumnDirections {
  5094  			dAtA[i] = 0x40
  5095  			i++
  5096  			i = encodeVarintStructured(dAtA, i, uint64(num))
  5097  		}
  5098  	}
  5099  	dAtA[i] = 0x4a
  5100  	i++
  5101  	i = encodeVarintStructured(dAtA, i, uint64(m.ForeignKey.Size()))
  5102  	n3, err := m.ForeignKey.MarshalTo(dAtA[i:])
  5103  	if err != nil {
  5104  		return 0, err
  5105  	}
  5106  	i += n3
  5107  	if len(m.ReferencedBy) > 0 {
  5108  		for _, msg := range m.ReferencedBy {
  5109  			dAtA[i] = 0x52
  5110  			i++
  5111  			i = encodeVarintStructured(dAtA, i, uint64(msg.Size()))
  5112  			n, err := msg.MarshalTo(dAtA[i:])
  5113  			if err != nil {
  5114  				return 0, err
  5115  			}
  5116  			i += n
  5117  		}
  5118  	}
  5119  	dAtA[i] = 0x5a
  5120  	i++
  5121  	i = encodeVarintStructured(dAtA, i, uint64(m.Interleave.Size()))
  5122  	n4, err := m.Interleave.MarshalTo(dAtA[i:])
  5123  	if err != nil {
  5124  		return 0, err
  5125  	}
  5126  	i += n4
  5127  	if len(m.InterleavedBy) > 0 {
  5128  		for _, msg := range m.InterleavedBy {
  5129  			dAtA[i] = 0x62
  5130  			i++
  5131  			i = encodeVarintStructured(dAtA, i, uint64(msg.Size()))
  5132  			n, err := msg.MarshalTo(dAtA[i:])
  5133  			if err != nil {
  5134  				return 0, err
  5135  			}
  5136  			i += n
  5137  		}
  5138  	}
  5139  	if len(m.CompositeColumnIDs) > 0 {
  5140  		for _, num := range m.CompositeColumnIDs {
  5141  			dAtA[i] = 0x68
  5142  			i++
  5143  			i = encodeVarintStructured(dAtA, i, uint64(num))
  5144  		}
  5145  	}
  5146  	if len(m.StoreColumnIDs) > 0 {
  5147  		for _, num := range m.StoreColumnIDs {
  5148  			dAtA[i] = 0x70
  5149  			i++
  5150  			i = encodeVarintStructured(dAtA, i, uint64(num))
  5151  		}
  5152  	}
  5153  	dAtA[i] = 0x7a
  5154  	i++
  5155  	i = encodeVarintStructured(dAtA, i, uint64(m.Partitioning.Size()))
  5156  	n5, err := m.Partitioning.MarshalTo(dAtA[i:])
  5157  	if err != nil {
  5158  		return 0, err
  5159  	}
  5160  	i += n5
  5161  	dAtA[i] = 0x80
  5162  	i++
  5163  	dAtA[i] = 0x1
  5164  	i++
  5165  	i = encodeVarintStructured(dAtA, i, uint64(m.Type))
  5166  	dAtA[i] = 0x88
  5167  	i++
  5168  	dAtA[i] = 0x1
  5169  	i++
  5170  	if m.CreatedExplicitly {
  5171  		dAtA[i] = 1
  5172  	} else {
  5173  		dAtA[i] = 0
  5174  	}
  5175  	i++
  5176  	dAtA[i] = 0x90
  5177  	i++
  5178  	dAtA[i] = 0x1
  5179  	i++
  5180  	i = encodeVarintStructured(dAtA, i, uint64(m.Version))
  5181  	dAtA[i] = 0x98
  5182  	i++
  5183  	dAtA[i] = 0x1
  5184  	i++
  5185  	i = encodeVarintStructured(dAtA, i, uint64(m.EncodingType))
  5186  	dAtA[i] = 0xa2
  5187  	i++
  5188  	dAtA[i] = 0x1
  5189  	i++
  5190  	i = encodeVarintStructured(dAtA, i, uint64(m.Sharded.Size()))
  5191  	n6, err := m.Sharded.MarshalTo(dAtA[i:])
  5192  	if err != nil {
  5193  		return 0, err
  5194  	}
  5195  	i += n6
  5196  	dAtA[i] = 0xa8
  5197  	i++
  5198  	dAtA[i] = 0x1
  5199  	i++
  5200  	if m.Disabled {
  5201  		dAtA[i] = 1
  5202  	} else {
  5203  		dAtA[i] = 0
  5204  	}
  5205  	i++
  5206  	dAtA[i] = 0xb2
  5207  	i++
  5208  	dAtA[i] = 0x1
  5209  	i++
  5210  	i = encodeVarintStructured(dAtA, i, uint64(m.GeoConfig.Size()))
  5211  	n7, err := m.GeoConfig.MarshalTo(dAtA[i:])
  5212  	if err != nil {
  5213  		return 0, err
  5214  	}
  5215  	i += n7
  5216  	dAtA[i] = 0xba
  5217  	i++
  5218  	dAtA[i] = 0x1
  5219  	i++
  5220  	i = encodeVarintStructured(dAtA, i, uint64(len(m.Predicate)))
  5221  	i += copy(dAtA[i:], m.Predicate)
  5222  	return i, nil
  5223  }
  5224  
  5225  func (m *ConstraintToUpdate) Marshal() (dAtA []byte, err error) {
  5226  	size := m.Size()
  5227  	dAtA = make([]byte, size)
  5228  	n, err := m.MarshalTo(dAtA)
  5229  	if err != nil {
  5230  		return nil, err
  5231  	}
  5232  	return dAtA[:n], nil
  5233  }
  5234  
  5235  func (m *ConstraintToUpdate) MarshalTo(dAtA []byte) (int, error) {
  5236  	var i int
  5237  	_ = i
  5238  	var l int
  5239  	_ = l
  5240  	dAtA[i] = 0x8
  5241  	i++
  5242  	i = encodeVarintStructured(dAtA, i, uint64(m.ConstraintType))
  5243  	dAtA[i] = 0x12
  5244  	i++
  5245  	i = encodeVarintStructured(dAtA, i, uint64(len(m.Name)))
  5246  	i += copy(dAtA[i:], m.Name)
  5247  	dAtA[i] = 0x1a
  5248  	i++
  5249  	i = encodeVarintStructured(dAtA, i, uint64(m.Check.Size()))
  5250  	n8, err := m.Check.MarshalTo(dAtA[i:])
  5251  	if err != nil {
  5252  		return 0, err
  5253  	}
  5254  	i += n8
  5255  	dAtA[i] = 0x22
  5256  	i++
  5257  	i = encodeVarintStructured(dAtA, i, uint64(m.ForeignKey.Size()))
  5258  	n9, err := m.ForeignKey.MarshalTo(dAtA[i:])
  5259  	if err != nil {
  5260  		return 0, err
  5261  	}
  5262  	i += n9
  5263  	dAtA[i] = 0x30
  5264  	i++
  5265  	i = encodeVarintStructured(dAtA, i, uint64(m.NotNullColumn))
  5266  	return i, nil
  5267  }
  5268  
  5269  func (m *PrimaryKeySwap) Marshal() (dAtA []byte, err error) {
  5270  	size := m.Size()
  5271  	dAtA = make([]byte, size)
  5272  	n, err := m.MarshalTo(dAtA)
  5273  	if err != nil {
  5274  		return nil, err
  5275  	}
  5276  	return dAtA[:n], nil
  5277  }
  5278  
  5279  func (m *PrimaryKeySwap) MarshalTo(dAtA []byte) (int, error) {
  5280  	var i int
  5281  	_ = i
  5282  	var l int
  5283  	_ = l
  5284  	dAtA[i] = 0x8
  5285  	i++
  5286  	i = encodeVarintStructured(dAtA, i, uint64(m.NewPrimaryIndexId))
  5287  	if len(m.OldIndexes) > 0 {
  5288  		for _, num := range m.OldIndexes {
  5289  			dAtA[i] = 0x10
  5290  			i++
  5291  			i = encodeVarintStructured(dAtA, i, uint64(num))
  5292  		}
  5293  	}
  5294  	if len(m.NewIndexes) > 0 {
  5295  		for _, num := range m.NewIndexes {
  5296  			dAtA[i] = 0x18
  5297  			i++
  5298  			i = encodeVarintStructured(dAtA, i, uint64(num))
  5299  		}
  5300  	}
  5301  	dAtA[i] = 0x20
  5302  	i++
  5303  	i = encodeVarintStructured(dAtA, i, uint64(m.OldPrimaryIndexId))
  5304  	return i, nil
  5305  }
  5306  
  5307  func (m *ComputedColumnSwap) Marshal() (dAtA []byte, err error) {
  5308  	size := m.Size()
  5309  	dAtA = make([]byte, size)
  5310  	n, err := m.MarshalTo(dAtA)
  5311  	if err != nil {
  5312  		return nil, err
  5313  	}
  5314  	return dAtA[:n], nil
  5315  }
  5316  
  5317  func (m *ComputedColumnSwap) MarshalTo(dAtA []byte) (int, error) {
  5318  	var i int
  5319  	_ = i
  5320  	var l int
  5321  	_ = l
  5322  	dAtA[i] = 0x8
  5323  	i++
  5324  	i = encodeVarintStructured(dAtA, i, uint64(m.NewColumnId))
  5325  	dAtA[i] = 0x10
  5326  	i++
  5327  	i = encodeVarintStructured(dAtA, i, uint64(m.OldColumnId))
  5328  	return i, nil
  5329  }
  5330  
  5331  func (m *DescriptorMutation) Marshal() (dAtA []byte, err error) {
  5332  	size := m.Size()
  5333  	dAtA = make([]byte, size)
  5334  	n, err := m.MarshalTo(dAtA)
  5335  	if err != nil {
  5336  		return nil, err
  5337  	}
  5338  	return dAtA[:n], nil
  5339  }
  5340  
  5341  func (m *DescriptorMutation) MarshalTo(dAtA []byte) (int, error) {
  5342  	var i int
  5343  	_ = i
  5344  	var l int
  5345  	_ = l
  5346  	if m.Descriptor_ != nil {
  5347  		nn10, err := m.Descriptor_.MarshalTo(dAtA[i:])
  5348  		if err != nil {
  5349  			return 0, err
  5350  		}
  5351  		i += nn10
  5352  	}
  5353  	dAtA[i] = 0x18
  5354  	i++
  5355  	i = encodeVarintStructured(dAtA, i, uint64(m.State))
  5356  	dAtA[i] = 0x20
  5357  	i++
  5358  	i = encodeVarintStructured(dAtA, i, uint64(m.Direction))
  5359  	dAtA[i] = 0x28
  5360  	i++
  5361  	i = encodeVarintStructured(dAtA, i, uint64(m.MutationID))
  5362  	dAtA[i] = 0x38
  5363  	i++
  5364  	if m.Rollback {
  5365  		dAtA[i] = 1
  5366  	} else {
  5367  		dAtA[i] = 0
  5368  	}
  5369  	i++
  5370  	return i, nil
  5371  }
  5372  
  5373  func (m *DescriptorMutation_Column) MarshalTo(dAtA []byte) (int, error) {
  5374  	i := 0
  5375  	if m.Column != nil {
  5376  		dAtA[i] = 0xa
  5377  		i++
  5378  		i = encodeVarintStructured(dAtA, i, uint64(m.Column.Size()))
  5379  		n11, err := m.Column.MarshalTo(dAtA[i:])
  5380  		if err != nil {
  5381  			return 0, err
  5382  		}
  5383  		i += n11
  5384  	}
  5385  	return i, nil
  5386  }
  5387  func (m *DescriptorMutation_Index) MarshalTo(dAtA []byte) (int, error) {
  5388  	i := 0
  5389  	if m.Index != nil {
  5390  		dAtA[i] = 0x12
  5391  		i++
  5392  		i = encodeVarintStructured(dAtA, i, uint64(m.Index.Size()))
  5393  		n12, err := m.Index.MarshalTo(dAtA[i:])
  5394  		if err != nil {
  5395  			return 0, err
  5396  		}
  5397  		i += n12
  5398  	}
  5399  	return i, nil
  5400  }
  5401  func (m *DescriptorMutation_Constraint) MarshalTo(dAtA []byte) (int, error) {
  5402  	i := 0
  5403  	if m.Constraint != nil {
  5404  		dAtA[i] = 0x42
  5405  		i++
  5406  		i = encodeVarintStructured(dAtA, i, uint64(m.Constraint.Size()))
  5407  		n13, err := m.Constraint.MarshalTo(dAtA[i:])
  5408  		if err != nil {
  5409  			return 0, err
  5410  		}
  5411  		i += n13
  5412  	}
  5413  	return i, nil
  5414  }
  5415  func (m *DescriptorMutation_PrimaryKeySwap) MarshalTo(dAtA []byte) (int, error) {
  5416  	i := 0
  5417  	if m.PrimaryKeySwap != nil {
  5418  		dAtA[i] = 0x4a
  5419  		i++
  5420  		i = encodeVarintStructured(dAtA, i, uint64(m.PrimaryKeySwap.Size()))
  5421  		n14, err := m.PrimaryKeySwap.MarshalTo(dAtA[i:])
  5422  		if err != nil {
  5423  			return 0, err
  5424  		}
  5425  		i += n14
  5426  	}
  5427  	return i, nil
  5428  }
  5429  func (m *DescriptorMutation_ComputedColumnSwap) MarshalTo(dAtA []byte) (int, error) {
  5430  	i := 0
  5431  	if m.ComputedColumnSwap != nil {
  5432  		dAtA[i] = 0x52
  5433  		i++
  5434  		i = encodeVarintStructured(dAtA, i, uint64(m.ComputedColumnSwap.Size()))
  5435  		n15, err := m.ComputedColumnSwap.MarshalTo(dAtA[i:])
  5436  		if err != nil {
  5437  			return 0, err
  5438  		}
  5439  		i += n15
  5440  	}
  5441  	return i, nil
  5442  }
  5443  func (m *TableDescriptor) Marshal() (dAtA []byte, err error) {
  5444  	size := m.Size()
  5445  	dAtA = make([]byte, size)
  5446  	n, err := m.MarshalTo(dAtA)
  5447  	if err != nil {
  5448  		return nil, err
  5449  	}
  5450  	return dAtA[:n], nil
  5451  }
  5452  
  5453  func (m *TableDescriptor) MarshalTo(dAtA []byte) (int, error) {
  5454  	var i int
  5455  	_ = i
  5456  	var l int
  5457  	_ = l
  5458  	dAtA[i] = 0xa
  5459  	i++
  5460  	i = encodeVarintStructured(dAtA, i, uint64(len(m.Name)))
  5461  	i += copy(dAtA[i:], m.Name)
  5462  	dAtA[i] = 0x18
  5463  	i++
  5464  	i = encodeVarintStructured(dAtA, i, uint64(m.ID))
  5465  	dAtA[i] = 0x20
  5466  	i++
  5467  	i = encodeVarintStructured(dAtA, i, uint64(m.ParentID))
  5468  	dAtA[i] = 0x28
  5469  	i++
  5470  	i = encodeVarintStructured(dAtA, i, uint64(m.Version))
  5471  	dAtA[i] = 0x3a
  5472  	i++
  5473  	i = encodeVarintStructured(dAtA, i, uint64(m.ModificationTime.Size()))
  5474  	n16, err := m.ModificationTime.MarshalTo(dAtA[i:])
  5475  	if err != nil {
  5476  		return 0, err
  5477  	}
  5478  	i += n16
  5479  	if len(m.Columns) > 0 {
  5480  		for _, msg := range m.Columns {
  5481  			dAtA[i] = 0x42
  5482  			i++
  5483  			i = encodeVarintStructured(dAtA, i, uint64(msg.Size()))
  5484  			n, err := msg.MarshalTo(dAtA[i:])
  5485  			if err != nil {
  5486  				return 0, err
  5487  			}
  5488  			i += n
  5489  		}
  5490  	}
  5491  	dAtA[i] = 0x48
  5492  	i++
  5493  	i = encodeVarintStructured(dAtA, i, uint64(m.NextColumnID))
  5494  	dAtA[i] = 0x52
  5495  	i++
  5496  	i = encodeVarintStructured(dAtA, i, uint64(m.PrimaryIndex.Size()))
  5497  	n17, err := m.PrimaryIndex.MarshalTo(dAtA[i:])
  5498  	if err != nil {
  5499  		return 0, err
  5500  	}
  5501  	i += n17
  5502  	if len(m.Indexes) > 0 {
  5503  		for _, msg := range m.Indexes {
  5504  			dAtA[i] = 0x5a
  5505  			i++
  5506  			i = encodeVarintStructured(dAtA, i, uint64(msg.Size()))
  5507  			n, err := msg.MarshalTo(dAtA[i:])
  5508  			if err != nil {
  5509  				return 0, err
  5510  			}
  5511  			i += n
  5512  		}
  5513  	}
  5514  	dAtA[i] = 0x60
  5515  	i++
  5516  	i = encodeVarintStructured(dAtA, i, uint64(m.NextIndexID))
  5517  	if m.Privileges != nil {
  5518  		dAtA[i] = 0x6a
  5519  		i++
  5520  		i = encodeVarintStructured(dAtA, i, uint64(m.Privileges.Size()))
  5521  		n18, err := m.Privileges.MarshalTo(dAtA[i:])
  5522  		if err != nil {
  5523  			return 0, err
  5524  		}
  5525  		i += n18
  5526  	}
  5527  	if len(m.Mutations) > 0 {
  5528  		for _, msg := range m.Mutations {
  5529  			dAtA[i] = 0x72
  5530  			i++
  5531  			i = encodeVarintStructured(dAtA, i, uint64(msg.Size()))
  5532  			n, err := msg.MarshalTo(dAtA[i:])
  5533  			if err != nil {
  5534  				return 0, err
  5535  			}
  5536  			i += n
  5537  		}
  5538  	}
  5539  	if m.Lease != nil {
  5540  		dAtA[i] = 0x7a
  5541  		i++
  5542  		i = encodeVarintStructured(dAtA, i, uint64(m.Lease.Size()))
  5543  		n19, err := m.Lease.MarshalTo(dAtA[i:])
  5544  		if err != nil {
  5545  			return 0, err
  5546  		}
  5547  		i += n19
  5548  	}
  5549  	dAtA[i] = 0x80
  5550  	i++
  5551  	dAtA[i] = 0x1
  5552  	i++
  5553  	i = encodeVarintStructured(dAtA, i, uint64(m.NextMutationID))
  5554  	dAtA[i] = 0x88
  5555  	i++
  5556  	dAtA[i] = 0x1
  5557  	i++
  5558  	i = encodeVarintStructured(dAtA, i, uint64(m.FormatVersion))
  5559  	dAtA[i] = 0x98
  5560  	i++
  5561  	dAtA[i] = 0x1
  5562  	i++
  5563  	i = encodeVarintStructured(dAtA, i, uint64(m.State))
  5564  	if len(m.Checks) > 0 {
  5565  		for _, msg := range m.Checks {
  5566  			dAtA[i] = 0xa2
  5567  			i++
  5568  			dAtA[i] = 0x1
  5569  			i++
  5570  			i = encodeVarintStructured(dAtA, i, uint64(msg.Size()))
  5571  			n, err := msg.MarshalTo(dAtA[i:])
  5572  			if err != nil {
  5573  				return 0, err
  5574  			}
  5575  			i += n
  5576  		}
  5577  	}
  5578  	if len(m.DrainingNames) > 0 {
  5579  		for _, msg := range m.DrainingNames {
  5580  			dAtA[i] = 0xaa
  5581  			i++
  5582  			dAtA[i] = 0x1
  5583  			i++
  5584  			i = encodeVarintStructured(dAtA, i, uint64(msg.Size()))
  5585  			n, err := msg.MarshalTo(dAtA[i:])
  5586  			if err != nil {
  5587  				return 0, err
  5588  			}
  5589  			i += n
  5590  		}
  5591  	}
  5592  	if len(m.Families) > 0 {
  5593  		for _, msg := range m.Families {
  5594  			dAtA[i] = 0xb2
  5595  			i++
  5596  			dAtA[i] = 0x1
  5597  			i++
  5598  			i = encodeVarintStructured(dAtA, i, uint64(msg.Size()))
  5599  			n, err := msg.MarshalTo(dAtA[i:])
  5600  			if err != nil {
  5601  				return 0, err
  5602  			}
  5603  			i += n
  5604  		}
  5605  	}
  5606  	dAtA[i] = 0xb8
  5607  	i++
  5608  	dAtA[i] = 0x1
  5609  	i++
  5610  	i = encodeVarintStructured(dAtA, i, uint64(m.NextFamilyID))
  5611  	dAtA[i] = 0xc2
  5612  	i++
  5613  	dAtA[i] = 0x1
  5614  	i++
  5615  	i = encodeVarintStructured(dAtA, i, uint64(len(m.ViewQuery)))
  5616  	i += copy(dAtA[i:], m.ViewQuery)
  5617  	if len(m.DependsOn) > 0 {
  5618  		for _, num := range m.DependsOn {
  5619  			dAtA[i] = 0xc8
  5620  			i++
  5621  			dAtA[i] = 0x1
  5622  			i++
  5623  			i = encodeVarintStructured(dAtA, i, uint64(num))
  5624  		}
  5625  	}
  5626  	if len(m.DependedOnBy) > 0 {
  5627  		for _, msg := range m.DependedOnBy {
  5628  			dAtA[i] = 0xd2
  5629  			i++
  5630  			dAtA[i] = 0x1
  5631  			i++
  5632  			i = encodeVarintStructured(dAtA, i, uint64(msg.Size()))
  5633  			n, err := msg.MarshalTo(dAtA[i:])
  5634  			if err != nil {
  5635  				return 0, err
  5636  			}
  5637  			i += n
  5638  		}
  5639  	}
  5640  	if len(m.MutationJobs) > 0 {
  5641  		for _, msg := range m.MutationJobs {
  5642  			dAtA[i] = 0xda
  5643  			i++
  5644  			dAtA[i] = 0x1
  5645  			i++
  5646  			i = encodeVarintStructured(dAtA, i, uint64(msg.Size()))
  5647  			n, err := msg.MarshalTo(dAtA[i:])
  5648  			if err != nil {
  5649  				return 0, err
  5650  			}
  5651  			i += n
  5652  		}
  5653  	}
  5654  	if m.SequenceOpts != nil {
  5655  		dAtA[i] = 0xe2
  5656  		i++
  5657  		dAtA[i] = 0x1
  5658  		i++
  5659  		i = encodeVarintStructured(dAtA, i, uint64(m.SequenceOpts.Size()))
  5660  		n20, err := m.SequenceOpts.MarshalTo(dAtA[i:])
  5661  		if err != nil {
  5662  			return 0, err
  5663  		}
  5664  		i += n20
  5665  	}
  5666  	dAtA[i] = 0xe8
  5667  	i++
  5668  	dAtA[i] = 0x1
  5669  	i++
  5670  	i = encodeVarintStructured(dAtA, i, uint64(m.DropTime))
  5671  	dAtA[i] = 0xf2
  5672  	i++
  5673  	dAtA[i] = 0x1
  5674  	i++
  5675  	i = encodeVarintStructured(dAtA, i, uint64(m.ReplacementOf.Size()))
  5676  	n21, err := m.ReplacementOf.MarshalTo(dAtA[i:])
  5677  	if err != nil {
  5678  		return 0, err
  5679  	}
  5680  	i += n21
  5681  	dAtA[i] = 0xf8
  5682  	i++
  5683  	dAtA[i] = 0x1
  5684  	i++
  5685  	i = encodeVarintStructured(dAtA, i, uint64(m.AuditMode))
  5686  	dAtA[i] = 0x80
  5687  	i++
  5688  	dAtA[i] = 0x2
  5689  	i++
  5690  	i = encodeVarintStructured(dAtA, i, uint64(m.DropJobID))
  5691  	if len(m.GCMutations) > 0 {
  5692  		for _, msg := range m.GCMutations {
  5693  			dAtA[i] = 0x8a
  5694  			i++
  5695  			dAtA[i] = 0x2
  5696  			i++
  5697  			i = encodeVarintStructured(dAtA, i, uint64(msg.Size()))
  5698  			n, err := msg.MarshalTo(dAtA[i:])
  5699  			if err != nil {
  5700  				return 0, err
  5701  			}
  5702  			i += n
  5703  		}
  5704  	}
  5705  	dAtA[i] = 0x92
  5706  	i++
  5707  	dAtA[i] = 0x2
  5708  	i++
  5709  	i = encodeVarintStructured(dAtA, i, uint64(len(m.CreateQuery)))
  5710  	i += copy(dAtA[i:], m.CreateQuery)
  5711  	dAtA[i] = 0x9a
  5712  	i++
  5713  	dAtA[i] = 0x2
  5714  	i++
  5715  	i = encodeVarintStructured(dAtA, i, uint64(m.CreateAsOfTime.Size()))
  5716  	n22, err := m.CreateAsOfTime.MarshalTo(dAtA[i:])
  5717  	if err != nil {
  5718  		return 0, err
  5719  	}
  5720  	i += n22
  5721  	if len(m.OutboundFKs) > 0 {
  5722  		for _, msg := range m.OutboundFKs {
  5723  			dAtA[i] = 0xa2
  5724  			i++
  5725  			dAtA[i] = 0x2
  5726  			i++
  5727  			i = encodeVarintStructured(dAtA, i, uint64(msg.Size()))
  5728  			n, err := msg.MarshalTo(dAtA[i:])
  5729  			if err != nil {
  5730  				return 0, err
  5731  			}
  5732  			i += n
  5733  		}
  5734  	}
  5735  	if len(m.InboundFKs) > 0 {
  5736  		for _, msg := range m.InboundFKs {
  5737  			dAtA[i] = 0xaa
  5738  			i++
  5739  			dAtA[i] = 0x2
  5740  			i++
  5741  			i = encodeVarintStructured(dAtA, i, uint64(msg.Size()))
  5742  			n, err := msg.MarshalTo(dAtA[i:])
  5743  			if err != nil {
  5744  				return 0, err
  5745  			}
  5746  			i += n
  5747  		}
  5748  	}
  5749  	dAtA[i] = 0xb2
  5750  	i++
  5751  	dAtA[i] = 0x2
  5752  	i++
  5753  	i = encodeVarintStructured(dAtA, i, uint64(len(m.OfflineReason)))
  5754  	i += copy(dAtA[i:], m.OfflineReason)
  5755  	dAtA[i] = 0xb8
  5756  	i++
  5757  	dAtA[i] = 0x2
  5758  	i++
  5759  	if m.Temporary {
  5760  		dAtA[i] = 1
  5761  	} else {
  5762  		dAtA[i] = 0
  5763  	}
  5764  	i++
  5765  	dAtA[i] = 0xc0
  5766  	i++
  5767  	dAtA[i] = 0x2
  5768  	i++
  5769  	i = encodeVarintStructured(dAtA, i, uint64(m.UnexposedParentSchemaID))
  5770  	return i, nil
  5771  }
  5772  
  5773  func (m *TableDescriptor_SchemaChangeLease) Marshal() (dAtA []byte, err error) {
  5774  	size := m.Size()
  5775  	dAtA = make([]byte, size)
  5776  	n, err := m.MarshalTo(dAtA)
  5777  	if err != nil {
  5778  		return nil, err
  5779  	}
  5780  	return dAtA[:n], nil
  5781  }
  5782  
  5783  func (m *TableDescriptor_SchemaChangeLease) MarshalTo(dAtA []byte) (int, error) {
  5784  	var i int
  5785  	_ = i
  5786  	var l int
  5787  	_ = l
  5788  	dAtA[i] = 0x8
  5789  	i++
  5790  	i = encodeVarintStructured(dAtA, i, uint64(m.NodeID))
  5791  	dAtA[i] = 0x10
  5792  	i++
  5793  	i = encodeVarintStructured(dAtA, i, uint64(m.ExpirationTime))
  5794  	return i, nil
  5795  }
  5796  
  5797  func (m *TableDescriptor_CheckConstraint) Marshal() (dAtA []byte, err error) {
  5798  	size := m.Size()
  5799  	dAtA = make([]byte, size)
  5800  	n, err := m.MarshalTo(dAtA)
  5801  	if err != nil {
  5802  		return nil, err
  5803  	}
  5804  	return dAtA[:n], nil
  5805  }
  5806  
  5807  func (m *TableDescriptor_CheckConstraint) MarshalTo(dAtA []byte) (int, error) {
  5808  	var i int
  5809  	_ = i
  5810  	var l int
  5811  	_ = l
  5812  	dAtA[i] = 0xa
  5813  	i++
  5814  	i = encodeVarintStructured(dAtA, i, uint64(len(m.Expr)))
  5815  	i += copy(dAtA[i:], m.Expr)
  5816  	dAtA[i] = 0x12
  5817  	i++
  5818  	i = encodeVarintStructured(dAtA, i, uint64(len(m.Name)))
  5819  	i += copy(dAtA[i:], m.Name)
  5820  	dAtA[i] = 0x18
  5821  	i++
  5822  	i = encodeVarintStructured(dAtA, i, uint64(m.Validity))
  5823  	if len(m.ColumnIDs) > 0 {
  5824  		for _, num := range m.ColumnIDs {
  5825  			dAtA[i] = 0x28
  5826  			i++
  5827  			i = encodeVarintStructured(dAtA, i, uint64(num))
  5828  		}
  5829  	}
  5830  	dAtA[i] = 0x30
  5831  	i++
  5832  	if m.IsNonNullConstraint {
  5833  		dAtA[i] = 1
  5834  	} else {
  5835  		dAtA[i] = 0
  5836  	}
  5837  	i++
  5838  	dAtA[i] = 0x38
  5839  	i++
  5840  	if m.Hidden {
  5841  		dAtA[i] = 1
  5842  	} else {
  5843  		dAtA[i] = 0
  5844  	}
  5845  	i++
  5846  	return i, nil
  5847  }
  5848  
  5849  func (m *TableDescriptor_NameInfo) Marshal() (dAtA []byte, err error) {
  5850  	size := m.Size()
  5851  	dAtA = make([]byte, size)
  5852  	n, err := m.MarshalTo(dAtA)
  5853  	if err != nil {
  5854  		return nil, err
  5855  	}
  5856  	return dAtA[:n], nil
  5857  }
  5858  
  5859  func (m *TableDescriptor_NameInfo) MarshalTo(dAtA []byte) (int, error) {
  5860  	var i int
  5861  	_ = i
  5862  	var l int
  5863  	_ = l
  5864  	dAtA[i] = 0x8
  5865  	i++
  5866  	i = encodeVarintStructured(dAtA, i, uint64(m.ParentID))
  5867  	dAtA[i] = 0x12
  5868  	i++
  5869  	i = encodeVarintStructured(dAtA, i, uint64(len(m.Name)))
  5870  	i += copy(dAtA[i:], m.Name)
  5871  	dAtA[i] = 0x18
  5872  	i++
  5873  	i = encodeVarintStructured(dAtA, i, uint64(m.ParentSchemaID))
  5874  	return i, nil
  5875  }
  5876  
  5877  func (m *TableDescriptor_Reference) Marshal() (dAtA []byte, err error) {
  5878  	size := m.Size()
  5879  	dAtA = make([]byte, size)
  5880  	n, err := m.MarshalTo(dAtA)
  5881  	if err != nil {
  5882  		return nil, err
  5883  	}
  5884  	return dAtA[:n], nil
  5885  }
  5886  
  5887  func (m *TableDescriptor_Reference) MarshalTo(dAtA []byte) (int, error) {
  5888  	var i int
  5889  	_ = i
  5890  	var l int
  5891  	_ = l
  5892  	dAtA[i] = 0x8
  5893  	i++
  5894  	i = encodeVarintStructured(dAtA, i, uint64(m.ID))
  5895  	dAtA[i] = 0x10
  5896  	i++
  5897  	i = encodeVarintStructured(dAtA, i, uint64(m.IndexID))
  5898  	if len(m.ColumnIDs) > 0 {
  5899  		for _, num := range m.ColumnIDs {
  5900  			dAtA[i] = 0x18
  5901  			i++
  5902  			i = encodeVarintStructured(dAtA, i, uint64(num))
  5903  		}
  5904  	}
  5905  	return i, nil
  5906  }
  5907  
  5908  func (m *TableDescriptor_MutationJob) Marshal() (dAtA []byte, err error) {
  5909  	size := m.Size()
  5910  	dAtA = make([]byte, size)
  5911  	n, err := m.MarshalTo(dAtA)
  5912  	if err != nil {
  5913  		return nil, err
  5914  	}
  5915  	return dAtA[:n], nil
  5916  }
  5917  
  5918  func (m *TableDescriptor_MutationJob) MarshalTo(dAtA []byte) (int, error) {
  5919  	var i int
  5920  	_ = i
  5921  	var l int
  5922  	_ = l
  5923  	dAtA[i] = 0x8
  5924  	i++
  5925  	i = encodeVarintStructured(dAtA, i, uint64(m.MutationID))
  5926  	dAtA[i] = 0x10
  5927  	i++
  5928  	i = encodeVarintStructured(dAtA, i, uint64(m.JobID))
  5929  	return i, nil
  5930  }
  5931  
  5932  func (m *TableDescriptor_SequenceOpts) Marshal() (dAtA []byte, err error) {
  5933  	size := m.Size()
  5934  	dAtA = make([]byte, size)
  5935  	n, err := m.MarshalTo(dAtA)
  5936  	if err != nil {
  5937  		return nil, err
  5938  	}
  5939  	return dAtA[:n], nil
  5940  }
  5941  
  5942  func (m *TableDescriptor_SequenceOpts) MarshalTo(dAtA []byte) (int, error) {
  5943  	var i int
  5944  	_ = i
  5945  	var l int
  5946  	_ = l
  5947  	dAtA[i] = 0x8
  5948  	i++
  5949  	i = encodeVarintStructured(dAtA, i, uint64(m.Increment))
  5950  	dAtA[i] = 0x10
  5951  	i++
  5952  	i = encodeVarintStructured(dAtA, i, uint64(m.MinValue))
  5953  	dAtA[i] = 0x18
  5954  	i++
  5955  	i = encodeVarintStructured(dAtA, i, uint64(m.MaxValue))
  5956  	dAtA[i] = 0x20
  5957  	i++
  5958  	i = encodeVarintStructured(dAtA, i, uint64(m.Start))
  5959  	dAtA[i] = 0x28
  5960  	i++
  5961  	if m.Virtual {
  5962  		dAtA[i] = 1
  5963  	} else {
  5964  		dAtA[i] = 0
  5965  	}
  5966  	i++
  5967  	dAtA[i] = 0x32
  5968  	i++
  5969  	i = encodeVarintStructured(dAtA, i, uint64(m.SequenceOwner.Size()))
  5970  	n23, err := m.SequenceOwner.MarshalTo(dAtA[i:])
  5971  	if err != nil {
  5972  		return 0, err
  5973  	}
  5974  	i += n23
  5975  	return i, nil
  5976  }
  5977  
  5978  func (m *TableDescriptor_SequenceOpts_SequenceOwner) Marshal() (dAtA []byte, err error) {
  5979  	size := m.Size()
  5980  	dAtA = make([]byte, size)
  5981  	n, err := m.MarshalTo(dAtA)
  5982  	if err != nil {
  5983  		return nil, err
  5984  	}
  5985  	return dAtA[:n], nil
  5986  }
  5987  
  5988  func (m *TableDescriptor_SequenceOpts_SequenceOwner) MarshalTo(dAtA []byte) (int, error) {
  5989  	var i int
  5990  	_ = i
  5991  	var l int
  5992  	_ = l
  5993  	dAtA[i] = 0x8
  5994  	i++
  5995  	i = encodeVarintStructured(dAtA, i, uint64(m.OwnerColumnID))
  5996  	dAtA[i] = 0x10
  5997  	i++
  5998  	i = encodeVarintStructured(dAtA, i, uint64(m.OwnerTableID))
  5999  	return i, nil
  6000  }
  6001  
  6002  func (m *TableDescriptor_Replacement) Marshal() (dAtA []byte, err error) {
  6003  	size := m.Size()
  6004  	dAtA = make([]byte, size)
  6005  	n, err := m.MarshalTo(dAtA)
  6006  	if err != nil {
  6007  		return nil, err
  6008  	}
  6009  	return dAtA[:n], nil
  6010  }
  6011  
  6012  func (m *TableDescriptor_Replacement) MarshalTo(dAtA []byte) (int, error) {
  6013  	var i int
  6014  	_ = i
  6015  	var l int
  6016  	_ = l
  6017  	dAtA[i] = 0x8
  6018  	i++
  6019  	i = encodeVarintStructured(dAtA, i, uint64(m.ID))
  6020  	dAtA[i] = 0x12
  6021  	i++
  6022  	i = encodeVarintStructured(dAtA, i, uint64(m.Time.Size()))
  6023  	n24, err := m.Time.MarshalTo(dAtA[i:])
  6024  	if err != nil {
  6025  		return 0, err
  6026  	}
  6027  	i += n24
  6028  	return i, nil
  6029  }
  6030  
  6031  func (m *TableDescriptor_GCDescriptorMutation) Marshal() (dAtA []byte, err error) {
  6032  	size := m.Size()
  6033  	dAtA = make([]byte, size)
  6034  	n, err := m.MarshalTo(dAtA)
  6035  	if err != nil {
  6036  		return nil, err
  6037  	}
  6038  	return dAtA[:n], nil
  6039  }
  6040  
  6041  func (m *TableDescriptor_GCDescriptorMutation) MarshalTo(dAtA []byte) (int, error) {
  6042  	var i int
  6043  	_ = i
  6044  	var l int
  6045  	_ = l
  6046  	dAtA[i] = 0x8
  6047  	i++
  6048  	i = encodeVarintStructured(dAtA, i, uint64(m.IndexID))
  6049  	dAtA[i] = 0x10
  6050  	i++
  6051  	i = encodeVarintStructured(dAtA, i, uint64(m.DropTime))
  6052  	dAtA[i] = 0x18
  6053  	i++
  6054  	i = encodeVarintStructured(dAtA, i, uint64(m.JobID))
  6055  	return i, nil
  6056  }
  6057  
  6058  func (m *DatabaseDescriptor) Marshal() (dAtA []byte, err error) {
  6059  	size := m.Size()
  6060  	dAtA = make([]byte, size)
  6061  	n, err := m.MarshalTo(dAtA)
  6062  	if err != nil {
  6063  		return nil, err
  6064  	}
  6065  	return dAtA[:n], nil
  6066  }
  6067  
  6068  func (m *DatabaseDescriptor) MarshalTo(dAtA []byte) (int, error) {
  6069  	var i int
  6070  	_ = i
  6071  	var l int
  6072  	_ = l
  6073  	dAtA[i] = 0xa
  6074  	i++
  6075  	i = encodeVarintStructured(dAtA, i, uint64(len(m.Name)))
  6076  	i += copy(dAtA[i:], m.Name)
  6077  	dAtA[i] = 0x10
  6078  	i++
  6079  	i = encodeVarintStructured(dAtA, i, uint64(m.ID))
  6080  	if m.Privileges != nil {
  6081  		dAtA[i] = 0x1a
  6082  		i++
  6083  		i = encodeVarintStructured(dAtA, i, uint64(m.Privileges.Size()))
  6084  		n25, err := m.Privileges.MarshalTo(dAtA[i:])
  6085  		if err != nil {
  6086  			return 0, err
  6087  		}
  6088  		i += n25
  6089  	}
  6090  	return i, nil
  6091  }
  6092  
  6093  func (m *TypeDescriptor) Marshal() (dAtA []byte, err error) {
  6094  	size := m.Size()
  6095  	dAtA = make([]byte, size)
  6096  	n, err := m.MarshalTo(dAtA)
  6097  	if err != nil {
  6098  		return nil, err
  6099  	}
  6100  	return dAtA[:n], nil
  6101  }
  6102  
  6103  func (m *TypeDescriptor) MarshalTo(dAtA []byte) (int, error) {
  6104  	var i int
  6105  	_ = i
  6106  	var l int
  6107  	_ = l
  6108  	dAtA[i] = 0x8
  6109  	i++
  6110  	i = encodeVarintStructured(dAtA, i, uint64(m.ParentID))
  6111  	dAtA[i] = 0x10
  6112  	i++
  6113  	i = encodeVarintStructured(dAtA, i, uint64(m.ParentSchemaID))
  6114  	dAtA[i] = 0x1a
  6115  	i++
  6116  	i = encodeVarintStructured(dAtA, i, uint64(len(m.Name)))
  6117  	i += copy(dAtA[i:], m.Name)
  6118  	dAtA[i] = 0x20
  6119  	i++
  6120  	i = encodeVarintStructured(dAtA, i, uint64(m.ID))
  6121  	dAtA[i] = 0x28
  6122  	i++
  6123  	i = encodeVarintStructured(dAtA, i, uint64(m.Kind))
  6124  	if len(m.EnumMembers) > 0 {
  6125  		for _, msg := range m.EnumMembers {
  6126  			dAtA[i] = 0x32
  6127  			i++
  6128  			i = encodeVarintStructured(dAtA, i, uint64(msg.Size()))
  6129  			n, err := msg.MarshalTo(dAtA[i:])
  6130  			if err != nil {
  6131  				return 0, err
  6132  			}
  6133  			i += n
  6134  		}
  6135  	}
  6136  	if m.Alias != nil {
  6137  		dAtA[i] = 0x3a
  6138  		i++
  6139  		i = encodeVarintStructured(dAtA, i, uint64(m.Alias.Size()))
  6140  		n26, err := m.Alias.MarshalTo(dAtA[i:])
  6141  		if err != nil {
  6142  			return 0, err
  6143  		}
  6144  		i += n26
  6145  	}
  6146  	dAtA[i] = 0x40
  6147  	i++
  6148  	i = encodeVarintStructured(dAtA, i, uint64(m.ArrayTypeID))
  6149  	return i, nil
  6150  }
  6151  
  6152  func (m *TypeDescriptor_EnumMember) Marshal() (dAtA []byte, err error) {
  6153  	size := m.Size()
  6154  	dAtA = make([]byte, size)
  6155  	n, err := m.MarshalTo(dAtA)
  6156  	if err != nil {
  6157  		return nil, err
  6158  	}
  6159  	return dAtA[:n], nil
  6160  }
  6161  
  6162  func (m *TypeDescriptor_EnumMember) MarshalTo(dAtA []byte) (int, error) {
  6163  	var i int
  6164  	_ = i
  6165  	var l int
  6166  	_ = l
  6167  	if m.PhysicalRepresentation != nil {
  6168  		dAtA[i] = 0xa
  6169  		i++
  6170  		i = encodeVarintStructured(dAtA, i, uint64(len(m.PhysicalRepresentation)))
  6171  		i += copy(dAtA[i:], m.PhysicalRepresentation)
  6172  	}
  6173  	dAtA[i] = 0x12
  6174  	i++
  6175  	i = encodeVarintStructured(dAtA, i, uint64(len(m.LogicalRepresentation)))
  6176  	i += copy(dAtA[i:], m.LogicalRepresentation)
  6177  	return i, nil
  6178  }
  6179  
  6180  func (m *SchemaDescriptor) Marshal() (dAtA []byte, err error) {
  6181  	size := m.Size()
  6182  	dAtA = make([]byte, size)
  6183  	n, err := m.MarshalTo(dAtA)
  6184  	if err != nil {
  6185  		return nil, err
  6186  	}
  6187  	return dAtA[:n], nil
  6188  }
  6189  
  6190  func (m *SchemaDescriptor) MarshalTo(dAtA []byte) (int, error) {
  6191  	var i int
  6192  	_ = i
  6193  	var l int
  6194  	_ = l
  6195  	dAtA[i] = 0x8
  6196  	i++
  6197  	i = encodeVarintStructured(dAtA, i, uint64(m.ParentID))
  6198  	dAtA[i] = 0x12
  6199  	i++
  6200  	i = encodeVarintStructured(dAtA, i, uint64(len(m.Name)))
  6201  	i += copy(dAtA[i:], m.Name)
  6202  	dAtA[i] = 0x18
  6203  	i++
  6204  	i = encodeVarintStructured(dAtA, i, uint64(m.ID))
  6205  	if m.Privileges != nil {
  6206  		dAtA[i] = 0x22
  6207  		i++
  6208  		i = encodeVarintStructured(dAtA, i, uint64(m.Privileges.Size()))
  6209  		n27, err := m.Privileges.MarshalTo(dAtA[i:])
  6210  		if err != nil {
  6211  			return 0, err
  6212  		}
  6213  		i += n27
  6214  	}
  6215  	return i, nil
  6216  }
  6217  
  6218  func (m *Descriptor) Marshal() (dAtA []byte, err error) {
  6219  	size := m.Size()
  6220  	dAtA = make([]byte, size)
  6221  	n, err := m.MarshalTo(dAtA)
  6222  	if err != nil {
  6223  		return nil, err
  6224  	}
  6225  	return dAtA[:n], nil
  6226  }
  6227  
  6228  func (m *Descriptor) MarshalTo(dAtA []byte) (int, error) {
  6229  	var i int
  6230  	_ = i
  6231  	var l int
  6232  	_ = l
  6233  	if m.Union != nil {
  6234  		nn28, err := m.Union.MarshalTo(dAtA[i:])
  6235  		if err != nil {
  6236  			return 0, err
  6237  		}
  6238  		i += nn28
  6239  	}
  6240  	return i, nil
  6241  }
  6242  
  6243  func (m *Descriptor_Table) MarshalTo(dAtA []byte) (int, error) {
  6244  	i := 0
  6245  	if m.Table != nil {
  6246  		dAtA[i] = 0xa
  6247  		i++
  6248  		i = encodeVarintStructured(dAtA, i, uint64(m.Table.Size()))
  6249  		n29, err := m.Table.MarshalTo(dAtA[i:])
  6250  		if err != nil {
  6251  			return 0, err
  6252  		}
  6253  		i += n29
  6254  	}
  6255  	return i, nil
  6256  }
  6257  func (m *Descriptor_Database) MarshalTo(dAtA []byte) (int, error) {
  6258  	i := 0
  6259  	if m.Database != nil {
  6260  		dAtA[i] = 0x12
  6261  		i++
  6262  		i = encodeVarintStructured(dAtA, i, uint64(m.Database.Size()))
  6263  		n30, err := m.Database.MarshalTo(dAtA[i:])
  6264  		if err != nil {
  6265  			return 0, err
  6266  		}
  6267  		i += n30
  6268  	}
  6269  	return i, nil
  6270  }
  6271  func (m *Descriptor_Type) MarshalTo(dAtA []byte) (int, error) {
  6272  	i := 0
  6273  	if m.Type != nil {
  6274  		dAtA[i] = 0x1a
  6275  		i++
  6276  		i = encodeVarintStructured(dAtA, i, uint64(m.Type.Size()))
  6277  		n31, err := m.Type.MarshalTo(dAtA[i:])
  6278  		if err != nil {
  6279  			return 0, err
  6280  		}
  6281  		i += n31
  6282  	}
  6283  	return i, nil
  6284  }
  6285  func (m *Descriptor_Schema) MarshalTo(dAtA []byte) (int, error) {
  6286  	i := 0
  6287  	if m.Schema != nil {
  6288  		dAtA[i] = 0x22
  6289  		i++
  6290  		i = encodeVarintStructured(dAtA, i, uint64(m.Schema.Size()))
  6291  		n32, err := m.Schema.MarshalTo(dAtA[i:])
  6292  		if err != nil {
  6293  			return 0, err
  6294  		}
  6295  		i += n32
  6296  	}
  6297  	return i, nil
  6298  }
  6299  func encodeVarintStructured(dAtA []byte, offset int, v uint64) int {
  6300  	for v >= 1<<7 {
  6301  		dAtA[offset] = uint8(v&0x7f | 0x80)
  6302  		v >>= 7
  6303  		offset++
  6304  	}
  6305  	dAtA[offset] = uint8(v)
  6306  	return offset + 1
  6307  }
  6308  func (m *ForeignKeyReference) Size() (n int) {
  6309  	if m == nil {
  6310  		return 0
  6311  	}
  6312  	var l int
  6313  	_ = l
  6314  	n += 1 + sovStructured(uint64(m.Table))
  6315  	n += 1 + sovStructured(uint64(m.Index))
  6316  	l = len(m.Name)
  6317  	n += 1 + l + sovStructured(uint64(l))
  6318  	n += 1 + sovStructured(uint64(m.Validity))
  6319  	n += 1 + sovStructured(uint64(m.SharedPrefixLen))
  6320  	n += 1 + sovStructured(uint64(m.OnDelete))
  6321  	n += 1 + sovStructured(uint64(m.OnUpdate))
  6322  	n += 1 + sovStructured(uint64(m.Match))
  6323  	return n
  6324  }
  6325  
  6326  func (m *ForeignKeyConstraint) Size() (n int) {
  6327  	if m == nil {
  6328  		return 0
  6329  	}
  6330  	var l int
  6331  	_ = l
  6332  	n += 1 + sovStructured(uint64(m.OriginTableID))
  6333  	if len(m.OriginColumnIDs) > 0 {
  6334  		for _, e := range m.OriginColumnIDs {
  6335  			n += 1 + sovStructured(uint64(e))
  6336  		}
  6337  	}
  6338  	if len(m.ReferencedColumnIDs) > 0 {
  6339  		for _, e := range m.ReferencedColumnIDs {
  6340  			n += 1 + sovStructured(uint64(e))
  6341  		}
  6342  	}
  6343  	n += 1 + sovStructured(uint64(m.ReferencedTableID))
  6344  	l = len(m.Name)
  6345  	n += 1 + l + sovStructured(uint64(l))
  6346  	n += 1 + sovStructured(uint64(m.Validity))
  6347  	n += 1 + sovStructured(uint64(m.OnDelete))
  6348  	n += 1 + sovStructured(uint64(m.OnUpdate))
  6349  	n += 1 + sovStructured(uint64(m.Match))
  6350  	n += 1 + sovStructured(uint64(m.LegacyOriginIndex))
  6351  	n += 1 + sovStructured(uint64(m.LegacyReferencedIndex))
  6352  	return n
  6353  }
  6354  
  6355  func (m *ColumnDescriptor) Size() (n int) {
  6356  	if m == nil {
  6357  		return 0
  6358  	}
  6359  	var l int
  6360  	_ = l
  6361  	l = len(m.Name)
  6362  	n += 1 + l + sovStructured(uint64(l))
  6363  	n += 1 + sovStructured(uint64(m.ID))
  6364  	if m.Type != nil {
  6365  		l = m.Type.Size()
  6366  		n += 1 + l + sovStructured(uint64(l))
  6367  	}
  6368  	n += 2
  6369  	if m.DefaultExpr != nil {
  6370  		l = len(*m.DefaultExpr)
  6371  		n += 1 + l + sovStructured(uint64(l))
  6372  	}
  6373  	n += 2
  6374  	if len(m.UsesSequenceIds) > 0 {
  6375  		for _, e := range m.UsesSequenceIds {
  6376  			n += 1 + sovStructured(uint64(e))
  6377  		}
  6378  	}
  6379  	if m.ComputeExpr != nil {
  6380  		l = len(*m.ComputeExpr)
  6381  		n += 1 + l + sovStructured(uint64(l))
  6382  	}
  6383  	if len(m.OwnsSequenceIds) > 0 {
  6384  		for _, e := range m.OwnsSequenceIds {
  6385  			n += 1 + sovStructured(uint64(e))
  6386  		}
  6387  	}
  6388  	n += 1 + sovStructured(uint64(m.LogicalColumnID))
  6389  	n += 2
  6390  	return n
  6391  }
  6392  
  6393  func (m *ColumnFamilyDescriptor) Size() (n int) {
  6394  	if m == nil {
  6395  		return 0
  6396  	}
  6397  	var l int
  6398  	_ = l
  6399  	l = len(m.Name)
  6400  	n += 1 + l + sovStructured(uint64(l))
  6401  	n += 1 + sovStructured(uint64(m.ID))
  6402  	if len(m.ColumnNames) > 0 {
  6403  		for _, s := range m.ColumnNames {
  6404  			l = len(s)
  6405  			n += 1 + l + sovStructured(uint64(l))
  6406  		}
  6407  	}
  6408  	if len(m.ColumnIDs) > 0 {
  6409  		for _, e := range m.ColumnIDs {
  6410  			n += 1 + sovStructured(uint64(e))
  6411  		}
  6412  	}
  6413  	n += 1 + sovStructured(uint64(m.DefaultColumnID))
  6414  	return n
  6415  }
  6416  
  6417  func (m *InterleaveDescriptor) Size() (n int) {
  6418  	if m == nil {
  6419  		return 0
  6420  	}
  6421  	var l int
  6422  	_ = l
  6423  	if len(m.Ancestors) > 0 {
  6424  		for _, e := range m.Ancestors {
  6425  			l = e.Size()
  6426  			n += 1 + l + sovStructured(uint64(l))
  6427  		}
  6428  	}
  6429  	return n
  6430  }
  6431  
  6432  func (m *InterleaveDescriptor_Ancestor) Size() (n int) {
  6433  	if m == nil {
  6434  		return 0
  6435  	}
  6436  	var l int
  6437  	_ = l
  6438  	n += 1 + sovStructured(uint64(m.TableID))
  6439  	n += 1 + sovStructured(uint64(m.IndexID))
  6440  	n += 1 + sovStructured(uint64(m.SharedPrefixLen))
  6441  	return n
  6442  }
  6443  
  6444  func (m *ShardedDescriptor) Size() (n int) {
  6445  	if m == nil {
  6446  		return 0
  6447  	}
  6448  	var l int
  6449  	_ = l
  6450  	n += 2
  6451  	l = len(m.Name)
  6452  	n += 1 + l + sovStructured(uint64(l))
  6453  	n += 1 + sovStructured(uint64(m.ShardBuckets))
  6454  	if len(m.ColumnNames) > 0 {
  6455  		for _, s := range m.ColumnNames {
  6456  			l = len(s)
  6457  			n += 1 + l + sovStructured(uint64(l))
  6458  		}
  6459  	}
  6460  	return n
  6461  }
  6462  
  6463  func (m *PartitioningDescriptor) Size() (n int) {
  6464  	if m == nil {
  6465  		return 0
  6466  	}
  6467  	var l int
  6468  	_ = l
  6469  	n += 1 + sovStructured(uint64(m.NumColumns))
  6470  	if len(m.List) > 0 {
  6471  		for _, e := range m.List {
  6472  			l = e.Size()
  6473  			n += 1 + l + sovStructured(uint64(l))
  6474  		}
  6475  	}
  6476  	if len(m.Range) > 0 {
  6477  		for _, e := range m.Range {
  6478  			l = e.Size()
  6479  			n += 1 + l + sovStructured(uint64(l))
  6480  		}
  6481  	}
  6482  	return n
  6483  }
  6484  
  6485  func (m *PartitioningDescriptor_List) Size() (n int) {
  6486  	if m == nil {
  6487  		return 0
  6488  	}
  6489  	var l int
  6490  	_ = l
  6491  	l = len(m.Name)
  6492  	n += 1 + l + sovStructured(uint64(l))
  6493  	if len(m.Values) > 0 {
  6494  		for _, b := range m.Values {
  6495  			l = len(b)
  6496  			n += 1 + l + sovStructured(uint64(l))
  6497  		}
  6498  	}
  6499  	l = m.Subpartitioning.Size()
  6500  	n += 1 + l + sovStructured(uint64(l))
  6501  	return n
  6502  }
  6503  
  6504  func (m *PartitioningDescriptor_Range) Size() (n int) {
  6505  	if m == nil {
  6506  		return 0
  6507  	}
  6508  	var l int
  6509  	_ = l
  6510  	l = len(m.Name)
  6511  	n += 1 + l + sovStructured(uint64(l))
  6512  	if m.ToExclusive != nil {
  6513  		l = len(m.ToExclusive)
  6514  		n += 1 + l + sovStructured(uint64(l))
  6515  	}
  6516  	if m.FromInclusive != nil {
  6517  		l = len(m.FromInclusive)
  6518  		n += 1 + l + sovStructured(uint64(l))
  6519  	}
  6520  	return n
  6521  }
  6522  
  6523  func (m *IndexDescriptor) Size() (n int) {
  6524  	if m == nil {
  6525  		return 0
  6526  	}
  6527  	var l int
  6528  	_ = l
  6529  	l = len(m.Name)
  6530  	n += 1 + l + sovStructured(uint64(l))
  6531  	n += 1 + sovStructured(uint64(m.ID))
  6532  	n += 2
  6533  	if len(m.ColumnNames) > 0 {
  6534  		for _, s := range m.ColumnNames {
  6535  			l = len(s)
  6536  			n += 1 + l + sovStructured(uint64(l))
  6537  		}
  6538  	}
  6539  	if len(m.StoreColumnNames) > 0 {
  6540  		for _, s := range m.StoreColumnNames {
  6541  			l = len(s)
  6542  			n += 1 + l + sovStructured(uint64(l))
  6543  		}
  6544  	}
  6545  	if len(m.ColumnIDs) > 0 {
  6546  		for _, e := range m.ColumnIDs {
  6547  			n += 1 + sovStructured(uint64(e))
  6548  		}
  6549  	}
  6550  	if len(m.ExtraColumnIDs) > 0 {
  6551  		for _, e := range m.ExtraColumnIDs {
  6552  			n += 1 + sovStructured(uint64(e))
  6553  		}
  6554  	}
  6555  	if len(m.ColumnDirections) > 0 {
  6556  		for _, e := range m.ColumnDirections {
  6557  			n += 1 + sovStructured(uint64(e))
  6558  		}
  6559  	}
  6560  	l = m.ForeignKey.Size()
  6561  	n += 1 + l + sovStructured(uint64(l))
  6562  	if len(m.ReferencedBy) > 0 {
  6563  		for _, e := range m.ReferencedBy {
  6564  			l = e.Size()
  6565  			n += 1 + l + sovStructured(uint64(l))
  6566  		}
  6567  	}
  6568  	l = m.Interleave.Size()
  6569  	n += 1 + l + sovStructured(uint64(l))
  6570  	if len(m.InterleavedBy) > 0 {
  6571  		for _, e := range m.InterleavedBy {
  6572  			l = e.Size()
  6573  			n += 1 + l + sovStructured(uint64(l))
  6574  		}
  6575  	}
  6576  	if len(m.CompositeColumnIDs) > 0 {
  6577  		for _, e := range m.CompositeColumnIDs {
  6578  			n += 1 + sovStructured(uint64(e))
  6579  		}
  6580  	}
  6581  	if len(m.StoreColumnIDs) > 0 {
  6582  		for _, e := range m.StoreColumnIDs {
  6583  			n += 1 + sovStructured(uint64(e))
  6584  		}
  6585  	}
  6586  	l = m.Partitioning.Size()
  6587  	n += 1 + l + sovStructured(uint64(l))
  6588  	n += 2 + sovStructured(uint64(m.Type))
  6589  	n += 3
  6590  	n += 2 + sovStructured(uint64(m.Version))
  6591  	n += 2 + sovStructured(uint64(m.EncodingType))
  6592  	l = m.Sharded.Size()
  6593  	n += 2 + l + sovStructured(uint64(l))
  6594  	n += 3
  6595  	l = m.GeoConfig.Size()
  6596  	n += 2 + l + sovStructured(uint64(l))
  6597  	l = len(m.Predicate)
  6598  	n += 2 + l + sovStructured(uint64(l))
  6599  	return n
  6600  }
  6601  
  6602  func (m *ConstraintToUpdate) Size() (n int) {
  6603  	if m == nil {
  6604  		return 0
  6605  	}
  6606  	var l int
  6607  	_ = l
  6608  	n += 1 + sovStructured(uint64(m.ConstraintType))
  6609  	l = len(m.Name)
  6610  	n += 1 + l + sovStructured(uint64(l))
  6611  	l = m.Check.Size()
  6612  	n += 1 + l + sovStructured(uint64(l))
  6613  	l = m.ForeignKey.Size()
  6614  	n += 1 + l + sovStructured(uint64(l))
  6615  	n += 1 + sovStructured(uint64(m.NotNullColumn))
  6616  	return n
  6617  }
  6618  
  6619  func (m *PrimaryKeySwap) Size() (n int) {
  6620  	if m == nil {
  6621  		return 0
  6622  	}
  6623  	var l int
  6624  	_ = l
  6625  	n += 1 + sovStructured(uint64(m.NewPrimaryIndexId))
  6626  	if len(m.OldIndexes) > 0 {
  6627  		for _, e := range m.OldIndexes {
  6628  			n += 1 + sovStructured(uint64(e))
  6629  		}
  6630  	}
  6631  	if len(m.NewIndexes) > 0 {
  6632  		for _, e := range m.NewIndexes {
  6633  			n += 1 + sovStructured(uint64(e))
  6634  		}
  6635  	}
  6636  	n += 1 + sovStructured(uint64(m.OldPrimaryIndexId))
  6637  	return n
  6638  }
  6639  
  6640  func (m *ComputedColumnSwap) Size() (n int) {
  6641  	if m == nil {
  6642  		return 0
  6643  	}
  6644  	var l int
  6645  	_ = l
  6646  	n += 1 + sovStructured(uint64(m.NewColumnId))
  6647  	n += 1 + sovStructured(uint64(m.OldColumnId))
  6648  	return n
  6649  }
  6650  
  6651  func (m *DescriptorMutation) Size() (n int) {
  6652  	if m == nil {
  6653  		return 0
  6654  	}
  6655  	var l int
  6656  	_ = l
  6657  	if m.Descriptor_ != nil {
  6658  		n += m.Descriptor_.Size()
  6659  	}
  6660  	n += 1 + sovStructured(uint64(m.State))
  6661  	n += 1 + sovStructured(uint64(m.Direction))
  6662  	n += 1 + sovStructured(uint64(m.MutationID))
  6663  	n += 2
  6664  	return n
  6665  }
  6666  
  6667  func (m *DescriptorMutation_Column) Size() (n int) {
  6668  	if m == nil {
  6669  		return 0
  6670  	}
  6671  	var l int
  6672  	_ = l
  6673  	if m.Column != nil {
  6674  		l = m.Column.Size()
  6675  		n += 1 + l + sovStructured(uint64(l))
  6676  	}
  6677  	return n
  6678  }
  6679  func (m *DescriptorMutation_Index) Size() (n int) {
  6680  	if m == nil {
  6681  		return 0
  6682  	}
  6683  	var l int
  6684  	_ = l
  6685  	if m.Index != nil {
  6686  		l = m.Index.Size()
  6687  		n += 1 + l + sovStructured(uint64(l))
  6688  	}
  6689  	return n
  6690  }
  6691  func (m *DescriptorMutation_Constraint) Size() (n int) {
  6692  	if m == nil {
  6693  		return 0
  6694  	}
  6695  	var l int
  6696  	_ = l
  6697  	if m.Constraint != nil {
  6698  		l = m.Constraint.Size()
  6699  		n += 1 + l + sovStructured(uint64(l))
  6700  	}
  6701  	return n
  6702  }
  6703  func (m *DescriptorMutation_PrimaryKeySwap) Size() (n int) {
  6704  	if m == nil {
  6705  		return 0
  6706  	}
  6707  	var l int
  6708  	_ = l
  6709  	if m.PrimaryKeySwap != nil {
  6710  		l = m.PrimaryKeySwap.Size()
  6711  		n += 1 + l + sovStructured(uint64(l))
  6712  	}
  6713  	return n
  6714  }
  6715  func (m *DescriptorMutation_ComputedColumnSwap) Size() (n int) {
  6716  	if m == nil {
  6717  		return 0
  6718  	}
  6719  	var l int
  6720  	_ = l
  6721  	if m.ComputedColumnSwap != nil {
  6722  		l = m.ComputedColumnSwap.Size()
  6723  		n += 1 + l + sovStructured(uint64(l))
  6724  	}
  6725  	return n
  6726  }
  6727  func (m *TableDescriptor) Size() (n int) {
  6728  	if m == nil {
  6729  		return 0
  6730  	}
  6731  	var l int
  6732  	_ = l
  6733  	l = len(m.Name)
  6734  	n += 1 + l + sovStructured(uint64(l))
  6735  	n += 1 + sovStructured(uint64(m.ID))
  6736  	n += 1 + sovStructured(uint64(m.ParentID))
  6737  	n += 1 + sovStructured(uint64(m.Version))
  6738  	l = m.ModificationTime.Size()
  6739  	n += 1 + l + sovStructured(uint64(l))
  6740  	if len(m.Columns) > 0 {
  6741  		for _, e := range m.Columns {
  6742  			l = e.Size()
  6743  			n += 1 + l + sovStructured(uint64(l))
  6744  		}
  6745  	}
  6746  	n += 1 + sovStructured(uint64(m.NextColumnID))
  6747  	l = m.PrimaryIndex.Size()
  6748  	n += 1 + l + sovStructured(uint64(l))
  6749  	if len(m.Indexes) > 0 {
  6750  		for _, e := range m.Indexes {
  6751  			l = e.Size()
  6752  			n += 1 + l + sovStructured(uint64(l))
  6753  		}
  6754  	}
  6755  	n += 1 + sovStructured(uint64(m.NextIndexID))
  6756  	if m.Privileges != nil {
  6757  		l = m.Privileges.Size()
  6758  		n += 1 + l + sovStructured(uint64(l))
  6759  	}
  6760  	if len(m.Mutations) > 0 {
  6761  		for _, e := range m.Mutations {
  6762  			l = e.Size()
  6763  			n += 1 + l + sovStructured(uint64(l))
  6764  		}
  6765  	}
  6766  	if m.Lease != nil {
  6767  		l = m.Lease.Size()
  6768  		n += 1 + l + sovStructured(uint64(l))
  6769  	}
  6770  	n += 2 + sovStructured(uint64(m.NextMutationID))
  6771  	n += 2 + sovStructured(uint64(m.FormatVersion))
  6772  	n += 2 + sovStructured(uint64(m.State))
  6773  	if len(m.Checks) > 0 {
  6774  		for _, e := range m.Checks {
  6775  			l = e.Size()
  6776  			n += 2 + l + sovStructured(uint64(l))
  6777  		}
  6778  	}
  6779  	if len(m.DrainingNames) > 0 {
  6780  		for _, e := range m.DrainingNames {
  6781  			l = e.Size()
  6782  			n += 2 + l + sovStructured(uint64(l))
  6783  		}
  6784  	}
  6785  	if len(m.Families) > 0 {
  6786  		for _, e := range m.Families {
  6787  			l = e.Size()
  6788  			n += 2 + l + sovStructured(uint64(l))
  6789  		}
  6790  	}
  6791  	n += 2 + sovStructured(uint64(m.NextFamilyID))
  6792  	l = len(m.ViewQuery)
  6793  	n += 2 + l + sovStructured(uint64(l))
  6794  	if len(m.DependsOn) > 0 {
  6795  		for _, e := range m.DependsOn {
  6796  			n += 2 + sovStructured(uint64(e))
  6797  		}
  6798  	}
  6799  	if len(m.DependedOnBy) > 0 {
  6800  		for _, e := range m.DependedOnBy {
  6801  			l = e.Size()
  6802  			n += 2 + l + sovStructured(uint64(l))
  6803  		}
  6804  	}
  6805  	if len(m.MutationJobs) > 0 {
  6806  		for _, e := range m.MutationJobs {
  6807  			l = e.Size()
  6808  			n += 2 + l + sovStructured(uint64(l))
  6809  		}
  6810  	}
  6811  	if m.SequenceOpts != nil {
  6812  		l = m.SequenceOpts.Size()
  6813  		n += 2 + l + sovStructured(uint64(l))
  6814  	}
  6815  	n += 2 + sovStructured(uint64(m.DropTime))
  6816  	l = m.ReplacementOf.Size()
  6817  	n += 2 + l + sovStructured(uint64(l))
  6818  	n += 2 + sovStructured(uint64(m.AuditMode))
  6819  	n += 2 + sovStructured(uint64(m.DropJobID))
  6820  	if len(m.GCMutations) > 0 {
  6821  		for _, e := range m.GCMutations {
  6822  			l = e.Size()
  6823  			n += 2 + l + sovStructured(uint64(l))
  6824  		}
  6825  	}
  6826  	l = len(m.CreateQuery)
  6827  	n += 2 + l + sovStructured(uint64(l))
  6828  	l = m.CreateAsOfTime.Size()
  6829  	n += 2 + l + sovStructured(uint64(l))
  6830  	if len(m.OutboundFKs) > 0 {
  6831  		for _, e := range m.OutboundFKs {
  6832  			l = e.Size()
  6833  			n += 2 + l + sovStructured(uint64(l))
  6834  		}
  6835  	}
  6836  	if len(m.InboundFKs) > 0 {
  6837  		for _, e := range m.InboundFKs {
  6838  			l = e.Size()
  6839  			n += 2 + l + sovStructured(uint64(l))
  6840  		}
  6841  	}
  6842  	l = len(m.OfflineReason)
  6843  	n += 2 + l + sovStructured(uint64(l))
  6844  	n += 3
  6845  	n += 2 + sovStructured(uint64(m.UnexposedParentSchemaID))
  6846  	return n
  6847  }
  6848  
  6849  func (m *TableDescriptor_SchemaChangeLease) Size() (n int) {
  6850  	if m == nil {
  6851  		return 0
  6852  	}
  6853  	var l int
  6854  	_ = l
  6855  	n += 1 + sovStructured(uint64(m.NodeID))
  6856  	n += 1 + sovStructured(uint64(m.ExpirationTime))
  6857  	return n
  6858  }
  6859  
  6860  func (m *TableDescriptor_CheckConstraint) Size() (n int) {
  6861  	if m == nil {
  6862  		return 0
  6863  	}
  6864  	var l int
  6865  	_ = l
  6866  	l = len(m.Expr)
  6867  	n += 1 + l + sovStructured(uint64(l))
  6868  	l = len(m.Name)
  6869  	n += 1 + l + sovStructured(uint64(l))
  6870  	n += 1 + sovStructured(uint64(m.Validity))
  6871  	if len(m.ColumnIDs) > 0 {
  6872  		for _, e := range m.ColumnIDs {
  6873  			n += 1 + sovStructured(uint64(e))
  6874  		}
  6875  	}
  6876  	n += 2
  6877  	n += 2
  6878  	return n
  6879  }
  6880  
  6881  func (m *TableDescriptor_NameInfo) Size() (n int) {
  6882  	if m == nil {
  6883  		return 0
  6884  	}
  6885  	var l int
  6886  	_ = l
  6887  	n += 1 + sovStructured(uint64(m.ParentID))
  6888  	l = len(m.Name)
  6889  	n += 1 + l + sovStructured(uint64(l))
  6890  	n += 1 + sovStructured(uint64(m.ParentSchemaID))
  6891  	return n
  6892  }
  6893  
  6894  func (m *TableDescriptor_Reference) Size() (n int) {
  6895  	if m == nil {
  6896  		return 0
  6897  	}
  6898  	var l int
  6899  	_ = l
  6900  	n += 1 + sovStructured(uint64(m.ID))
  6901  	n += 1 + sovStructured(uint64(m.IndexID))
  6902  	if len(m.ColumnIDs) > 0 {
  6903  		for _, e := range m.ColumnIDs {
  6904  			n += 1 + sovStructured(uint64(e))
  6905  		}
  6906  	}
  6907  	return n
  6908  }
  6909  
  6910  func (m *TableDescriptor_MutationJob) Size() (n int) {
  6911  	if m == nil {
  6912  		return 0
  6913  	}
  6914  	var l int
  6915  	_ = l
  6916  	n += 1 + sovStructured(uint64(m.MutationID))
  6917  	n += 1 + sovStructured(uint64(m.JobID))
  6918  	return n
  6919  }
  6920  
  6921  func (m *TableDescriptor_SequenceOpts) Size() (n int) {
  6922  	if m == nil {
  6923  		return 0
  6924  	}
  6925  	var l int
  6926  	_ = l
  6927  	n += 1 + sovStructured(uint64(m.Increment))
  6928  	n += 1 + sovStructured(uint64(m.MinValue))
  6929  	n += 1 + sovStructured(uint64(m.MaxValue))
  6930  	n += 1 + sovStructured(uint64(m.Start))
  6931  	n += 2
  6932  	l = m.SequenceOwner.Size()
  6933  	n += 1 + l + sovStructured(uint64(l))
  6934  	return n
  6935  }
  6936  
  6937  func (m *TableDescriptor_SequenceOpts_SequenceOwner) Size() (n int) {
  6938  	if m == nil {
  6939  		return 0
  6940  	}
  6941  	var l int
  6942  	_ = l
  6943  	n += 1 + sovStructured(uint64(m.OwnerColumnID))
  6944  	n += 1 + sovStructured(uint64(m.OwnerTableID))
  6945  	return n
  6946  }
  6947  
  6948  func (m *TableDescriptor_Replacement) Size() (n int) {
  6949  	if m == nil {
  6950  		return 0
  6951  	}
  6952  	var l int
  6953  	_ = l
  6954  	n += 1 + sovStructured(uint64(m.ID))
  6955  	l = m.Time.Size()
  6956  	n += 1 + l + sovStructured(uint64(l))
  6957  	return n
  6958  }
  6959  
  6960  func (m *TableDescriptor_GCDescriptorMutation) Size() (n int) {
  6961  	if m == nil {
  6962  		return 0
  6963  	}
  6964  	var l int
  6965  	_ = l
  6966  	n += 1 + sovStructured(uint64(m.IndexID))
  6967  	n += 1 + sovStructured(uint64(m.DropTime))
  6968  	n += 1 + sovStructured(uint64(m.JobID))
  6969  	return n
  6970  }
  6971  
  6972  func (m *DatabaseDescriptor) Size() (n int) {
  6973  	if m == nil {
  6974  		return 0
  6975  	}
  6976  	var l int
  6977  	_ = l
  6978  	l = len(m.Name)
  6979  	n += 1 + l + sovStructured(uint64(l))
  6980  	n += 1 + sovStructured(uint64(m.ID))
  6981  	if m.Privileges != nil {
  6982  		l = m.Privileges.Size()
  6983  		n += 1 + l + sovStructured(uint64(l))
  6984  	}
  6985  	return n
  6986  }
  6987  
  6988  func (m *TypeDescriptor) Size() (n int) {
  6989  	if m == nil {
  6990  		return 0
  6991  	}
  6992  	var l int
  6993  	_ = l
  6994  	n += 1 + sovStructured(uint64(m.ParentID))
  6995  	n += 1 + sovStructured(uint64(m.ParentSchemaID))
  6996  	l = len(m.Name)
  6997  	n += 1 + l + sovStructured(uint64(l))
  6998  	n += 1 + sovStructured(uint64(m.ID))
  6999  	n += 1 + sovStructured(uint64(m.Kind))
  7000  	if len(m.EnumMembers) > 0 {
  7001  		for _, e := range m.EnumMembers {
  7002  			l = e.Size()
  7003  			n += 1 + l + sovStructured(uint64(l))
  7004  		}
  7005  	}
  7006  	if m.Alias != nil {
  7007  		l = m.Alias.Size()
  7008  		n += 1 + l + sovStructured(uint64(l))
  7009  	}
  7010  	n += 1 + sovStructured(uint64(m.ArrayTypeID))
  7011  	return n
  7012  }
  7013  
  7014  func (m *TypeDescriptor_EnumMember) Size() (n int) {
  7015  	if m == nil {
  7016  		return 0
  7017  	}
  7018  	var l int
  7019  	_ = l
  7020  	if m.PhysicalRepresentation != nil {
  7021  		l = len(m.PhysicalRepresentation)
  7022  		n += 1 + l + sovStructured(uint64(l))
  7023  	}
  7024  	l = len(m.LogicalRepresentation)
  7025  	n += 1 + l + sovStructured(uint64(l))
  7026  	return n
  7027  }
  7028  
  7029  func (m *SchemaDescriptor) Size() (n int) {
  7030  	if m == nil {
  7031  		return 0
  7032  	}
  7033  	var l int
  7034  	_ = l
  7035  	n += 1 + sovStructured(uint64(m.ParentID))
  7036  	l = len(m.Name)
  7037  	n += 1 + l + sovStructured(uint64(l))
  7038  	n += 1 + sovStructured(uint64(m.ID))
  7039  	if m.Privileges != nil {
  7040  		l = m.Privileges.Size()
  7041  		n += 1 + l + sovStructured(uint64(l))
  7042  	}
  7043  	return n
  7044  }
  7045  
  7046  func (m *Descriptor) Size() (n int) {
  7047  	if m == nil {
  7048  		return 0
  7049  	}
  7050  	var l int
  7051  	_ = l
  7052  	if m.Union != nil {
  7053  		n += m.Union.Size()
  7054  	}
  7055  	return n
  7056  }
  7057  
  7058  func (m *Descriptor_Table) Size() (n int) {
  7059  	if m == nil {
  7060  		return 0
  7061  	}
  7062  	var l int
  7063  	_ = l
  7064  	if m.Table != nil {
  7065  		l = m.Table.Size()
  7066  		n += 1 + l + sovStructured(uint64(l))
  7067  	}
  7068  	return n
  7069  }
  7070  func (m *Descriptor_Database) Size() (n int) {
  7071  	if m == nil {
  7072  		return 0
  7073  	}
  7074  	var l int
  7075  	_ = l
  7076  	if m.Database != nil {
  7077  		l = m.Database.Size()
  7078  		n += 1 + l + sovStructured(uint64(l))
  7079  	}
  7080  	return n
  7081  }
  7082  func (m *Descriptor_Type) Size() (n int) {
  7083  	if m == nil {
  7084  		return 0
  7085  	}
  7086  	var l int
  7087  	_ = l
  7088  	if m.Type != nil {
  7089  		l = m.Type.Size()
  7090  		n += 1 + l + sovStructured(uint64(l))
  7091  	}
  7092  	return n
  7093  }
  7094  func (m *Descriptor_Schema) Size() (n int) {
  7095  	if m == nil {
  7096  		return 0
  7097  	}
  7098  	var l int
  7099  	_ = l
  7100  	if m.Schema != nil {
  7101  		l = m.Schema.Size()
  7102  		n += 1 + l + sovStructured(uint64(l))
  7103  	}
  7104  	return n
  7105  }
  7106  
  7107  func sovStructured(x uint64) (n int) {
  7108  	for {
  7109  		n++
  7110  		x >>= 7
  7111  		if x == 0 {
  7112  			break
  7113  		}
  7114  	}
  7115  	return n
  7116  }
  7117  func sozStructured(x uint64) (n int) {
  7118  	return sovStructured(uint64((x << 1) ^ uint64((int64(x) >> 63))))
  7119  }
  7120  func (m *ForeignKeyReference) Unmarshal(dAtA []byte) error {
  7121  	l := len(dAtA)
  7122  	iNdEx := 0
  7123  	for iNdEx < l {
  7124  		preIndex := iNdEx
  7125  		var wire uint64
  7126  		for shift := uint(0); ; shift += 7 {
  7127  			if shift >= 64 {
  7128  				return ErrIntOverflowStructured
  7129  			}
  7130  			if iNdEx >= l {
  7131  				return io.ErrUnexpectedEOF
  7132  			}
  7133  			b := dAtA[iNdEx]
  7134  			iNdEx++
  7135  			wire |= (uint64(b) & 0x7F) << shift
  7136  			if b < 0x80 {
  7137  				break
  7138  			}
  7139  		}
  7140  		fieldNum := int32(wire >> 3)
  7141  		wireType := int(wire & 0x7)
  7142  		if wireType == 4 {
  7143  			return fmt.Errorf("proto: ForeignKeyReference: wiretype end group for non-group")
  7144  		}
  7145  		if fieldNum <= 0 {
  7146  			return fmt.Errorf("proto: ForeignKeyReference: illegal tag %d (wire type %d)", fieldNum, wire)
  7147  		}
  7148  		switch fieldNum {
  7149  		case 1:
  7150  			if wireType != 0 {
  7151  				return fmt.Errorf("proto: wrong wireType = %d for field Table", wireType)
  7152  			}
  7153  			m.Table = 0
  7154  			for shift := uint(0); ; shift += 7 {
  7155  				if shift >= 64 {
  7156  					return ErrIntOverflowStructured
  7157  				}
  7158  				if iNdEx >= l {
  7159  					return io.ErrUnexpectedEOF
  7160  				}
  7161  				b := dAtA[iNdEx]
  7162  				iNdEx++
  7163  				m.Table |= (ID(b) & 0x7F) << shift
  7164  				if b < 0x80 {
  7165  					break
  7166  				}
  7167  			}
  7168  		case 2:
  7169  			if wireType != 0 {
  7170  				return fmt.Errorf("proto: wrong wireType = %d for field Index", wireType)
  7171  			}
  7172  			m.Index = 0
  7173  			for shift := uint(0); ; shift += 7 {
  7174  				if shift >= 64 {
  7175  					return ErrIntOverflowStructured
  7176  				}
  7177  				if iNdEx >= l {
  7178  					return io.ErrUnexpectedEOF
  7179  				}
  7180  				b := dAtA[iNdEx]
  7181  				iNdEx++
  7182  				m.Index |= (IndexID(b) & 0x7F) << shift
  7183  				if b < 0x80 {
  7184  					break
  7185  				}
  7186  			}
  7187  		case 3:
  7188  			if wireType != 2 {
  7189  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
  7190  			}
  7191  			var stringLen uint64
  7192  			for shift := uint(0); ; shift += 7 {
  7193  				if shift >= 64 {
  7194  					return ErrIntOverflowStructured
  7195  				}
  7196  				if iNdEx >= l {
  7197  					return io.ErrUnexpectedEOF
  7198  				}
  7199  				b := dAtA[iNdEx]
  7200  				iNdEx++
  7201  				stringLen |= (uint64(b) & 0x7F) << shift
  7202  				if b < 0x80 {
  7203  					break
  7204  				}
  7205  			}
  7206  			intStringLen := int(stringLen)
  7207  			if intStringLen < 0 {
  7208  				return ErrInvalidLengthStructured
  7209  			}
  7210  			postIndex := iNdEx + intStringLen
  7211  			if postIndex > l {
  7212  				return io.ErrUnexpectedEOF
  7213  			}
  7214  			m.Name = string(dAtA[iNdEx:postIndex])
  7215  			iNdEx = postIndex
  7216  		case 4:
  7217  			if wireType != 0 {
  7218  				return fmt.Errorf("proto: wrong wireType = %d for field Validity", wireType)
  7219  			}
  7220  			m.Validity = 0
  7221  			for shift := uint(0); ; shift += 7 {
  7222  				if shift >= 64 {
  7223  					return ErrIntOverflowStructured
  7224  				}
  7225  				if iNdEx >= l {
  7226  					return io.ErrUnexpectedEOF
  7227  				}
  7228  				b := dAtA[iNdEx]
  7229  				iNdEx++
  7230  				m.Validity |= (ConstraintValidity(b) & 0x7F) << shift
  7231  				if b < 0x80 {
  7232  					break
  7233  				}
  7234  			}
  7235  		case 5:
  7236  			if wireType != 0 {
  7237  				return fmt.Errorf("proto: wrong wireType = %d for field SharedPrefixLen", wireType)
  7238  			}
  7239  			m.SharedPrefixLen = 0
  7240  			for shift := uint(0); ; shift += 7 {
  7241  				if shift >= 64 {
  7242  					return ErrIntOverflowStructured
  7243  				}
  7244  				if iNdEx >= l {
  7245  					return io.ErrUnexpectedEOF
  7246  				}
  7247  				b := dAtA[iNdEx]
  7248  				iNdEx++
  7249  				m.SharedPrefixLen |= (int32(b) & 0x7F) << shift
  7250  				if b < 0x80 {
  7251  					break
  7252  				}
  7253  			}
  7254  		case 6:
  7255  			if wireType != 0 {
  7256  				return fmt.Errorf("proto: wrong wireType = %d for field OnDelete", wireType)
  7257  			}
  7258  			m.OnDelete = 0
  7259  			for shift := uint(0); ; shift += 7 {
  7260  				if shift >= 64 {
  7261  					return ErrIntOverflowStructured
  7262  				}
  7263  				if iNdEx >= l {
  7264  					return io.ErrUnexpectedEOF
  7265  				}
  7266  				b := dAtA[iNdEx]
  7267  				iNdEx++
  7268  				m.OnDelete |= (ForeignKeyReference_Action(b) & 0x7F) << shift
  7269  				if b < 0x80 {
  7270  					break
  7271  				}
  7272  			}
  7273  		case 7:
  7274  			if wireType != 0 {
  7275  				return fmt.Errorf("proto: wrong wireType = %d for field OnUpdate", wireType)
  7276  			}
  7277  			m.OnUpdate = 0
  7278  			for shift := uint(0); ; shift += 7 {
  7279  				if shift >= 64 {
  7280  					return ErrIntOverflowStructured
  7281  				}
  7282  				if iNdEx >= l {
  7283  					return io.ErrUnexpectedEOF
  7284  				}
  7285  				b := dAtA[iNdEx]
  7286  				iNdEx++
  7287  				m.OnUpdate |= (ForeignKeyReference_Action(b) & 0x7F) << shift
  7288  				if b < 0x80 {
  7289  					break
  7290  				}
  7291  			}
  7292  		case 8:
  7293  			if wireType != 0 {
  7294  				return fmt.Errorf("proto: wrong wireType = %d for field Match", wireType)
  7295  			}
  7296  			m.Match = 0
  7297  			for shift := uint(0); ; shift += 7 {
  7298  				if shift >= 64 {
  7299  					return ErrIntOverflowStructured
  7300  				}
  7301  				if iNdEx >= l {
  7302  					return io.ErrUnexpectedEOF
  7303  				}
  7304  				b := dAtA[iNdEx]
  7305  				iNdEx++
  7306  				m.Match |= (ForeignKeyReference_Match(b) & 0x7F) << shift
  7307  				if b < 0x80 {
  7308  					break
  7309  				}
  7310  			}
  7311  		default:
  7312  			iNdEx = preIndex
  7313  			skippy, err := skipStructured(dAtA[iNdEx:])
  7314  			if err != nil {
  7315  				return err
  7316  			}
  7317  			if skippy < 0 {
  7318  				return ErrInvalidLengthStructured
  7319  			}
  7320  			if (iNdEx + skippy) > l {
  7321  				return io.ErrUnexpectedEOF
  7322  			}
  7323  			iNdEx += skippy
  7324  		}
  7325  	}
  7326  
  7327  	if iNdEx > l {
  7328  		return io.ErrUnexpectedEOF
  7329  	}
  7330  	return nil
  7331  }
  7332  func (m *ForeignKeyConstraint) Unmarshal(dAtA []byte) error {
  7333  	l := len(dAtA)
  7334  	iNdEx := 0
  7335  	for iNdEx < l {
  7336  		preIndex := iNdEx
  7337  		var wire uint64
  7338  		for shift := uint(0); ; shift += 7 {
  7339  			if shift >= 64 {
  7340  				return ErrIntOverflowStructured
  7341  			}
  7342  			if iNdEx >= l {
  7343  				return io.ErrUnexpectedEOF
  7344  			}
  7345  			b := dAtA[iNdEx]
  7346  			iNdEx++
  7347  			wire |= (uint64(b) & 0x7F) << shift
  7348  			if b < 0x80 {
  7349  				break
  7350  			}
  7351  		}
  7352  		fieldNum := int32(wire >> 3)
  7353  		wireType := int(wire & 0x7)
  7354  		if wireType == 4 {
  7355  			return fmt.Errorf("proto: ForeignKeyConstraint: wiretype end group for non-group")
  7356  		}
  7357  		if fieldNum <= 0 {
  7358  			return fmt.Errorf("proto: ForeignKeyConstraint: illegal tag %d (wire type %d)", fieldNum, wire)
  7359  		}
  7360  		switch fieldNum {
  7361  		case 1:
  7362  			if wireType != 0 {
  7363  				return fmt.Errorf("proto: wrong wireType = %d for field OriginTableID", wireType)
  7364  			}
  7365  			m.OriginTableID = 0
  7366  			for shift := uint(0); ; shift += 7 {
  7367  				if shift >= 64 {
  7368  					return ErrIntOverflowStructured
  7369  				}
  7370  				if iNdEx >= l {
  7371  					return io.ErrUnexpectedEOF
  7372  				}
  7373  				b := dAtA[iNdEx]
  7374  				iNdEx++
  7375  				m.OriginTableID |= (ID(b) & 0x7F) << shift
  7376  				if b < 0x80 {
  7377  					break
  7378  				}
  7379  			}
  7380  		case 2:
  7381  			if wireType == 0 {
  7382  				var v ColumnID
  7383  				for shift := uint(0); ; shift += 7 {
  7384  					if shift >= 64 {
  7385  						return ErrIntOverflowStructured
  7386  					}
  7387  					if iNdEx >= l {
  7388  						return io.ErrUnexpectedEOF
  7389  					}
  7390  					b := dAtA[iNdEx]
  7391  					iNdEx++
  7392  					v |= (ColumnID(b) & 0x7F) << shift
  7393  					if b < 0x80 {
  7394  						break
  7395  					}
  7396  				}
  7397  				m.OriginColumnIDs = append(m.OriginColumnIDs, v)
  7398  			} else if wireType == 2 {
  7399  				var packedLen int
  7400  				for shift := uint(0); ; shift += 7 {
  7401  					if shift >= 64 {
  7402  						return ErrIntOverflowStructured
  7403  					}
  7404  					if iNdEx >= l {
  7405  						return io.ErrUnexpectedEOF
  7406  					}
  7407  					b := dAtA[iNdEx]
  7408  					iNdEx++
  7409  					packedLen |= (int(b) & 0x7F) << shift
  7410  					if b < 0x80 {
  7411  						break
  7412  					}
  7413  				}
  7414  				if packedLen < 0 {
  7415  					return ErrInvalidLengthStructured
  7416  				}
  7417  				postIndex := iNdEx + packedLen
  7418  				if postIndex > l {
  7419  					return io.ErrUnexpectedEOF
  7420  				}
  7421  				var elementCount int
  7422  				var count int
  7423  				for _, integer := range dAtA {
  7424  					if integer < 128 {
  7425  						count++
  7426  					}
  7427  				}
  7428  				elementCount = count
  7429  				if elementCount != 0 && len(m.OriginColumnIDs) == 0 {
  7430  					m.OriginColumnIDs = make([]ColumnID, 0, elementCount)
  7431  				}
  7432  				for iNdEx < postIndex {
  7433  					var v ColumnID
  7434  					for shift := uint(0); ; shift += 7 {
  7435  						if shift >= 64 {
  7436  							return ErrIntOverflowStructured
  7437  						}
  7438  						if iNdEx >= l {
  7439  							return io.ErrUnexpectedEOF
  7440  						}
  7441  						b := dAtA[iNdEx]
  7442  						iNdEx++
  7443  						v |= (ColumnID(b) & 0x7F) << shift
  7444  						if b < 0x80 {
  7445  							break
  7446  						}
  7447  					}
  7448  					m.OriginColumnIDs = append(m.OriginColumnIDs, v)
  7449  				}
  7450  			} else {
  7451  				return fmt.Errorf("proto: wrong wireType = %d for field OriginColumnIDs", wireType)
  7452  			}
  7453  		case 3:
  7454  			if wireType == 0 {
  7455  				var v ColumnID
  7456  				for shift := uint(0); ; shift += 7 {
  7457  					if shift >= 64 {
  7458  						return ErrIntOverflowStructured
  7459  					}
  7460  					if iNdEx >= l {
  7461  						return io.ErrUnexpectedEOF
  7462  					}
  7463  					b := dAtA[iNdEx]
  7464  					iNdEx++
  7465  					v |= (ColumnID(b) & 0x7F) << shift
  7466  					if b < 0x80 {
  7467  						break
  7468  					}
  7469  				}
  7470  				m.ReferencedColumnIDs = append(m.ReferencedColumnIDs, v)
  7471  			} else if wireType == 2 {
  7472  				var packedLen int
  7473  				for shift := uint(0); ; shift += 7 {
  7474  					if shift >= 64 {
  7475  						return ErrIntOverflowStructured
  7476  					}
  7477  					if iNdEx >= l {
  7478  						return io.ErrUnexpectedEOF
  7479  					}
  7480  					b := dAtA[iNdEx]
  7481  					iNdEx++
  7482  					packedLen |= (int(b) & 0x7F) << shift
  7483  					if b < 0x80 {
  7484  						break
  7485  					}
  7486  				}
  7487  				if packedLen < 0 {
  7488  					return ErrInvalidLengthStructured
  7489  				}
  7490  				postIndex := iNdEx + packedLen
  7491  				if postIndex > l {
  7492  					return io.ErrUnexpectedEOF
  7493  				}
  7494  				var elementCount int
  7495  				var count int
  7496  				for _, integer := range dAtA {
  7497  					if integer < 128 {
  7498  						count++
  7499  					}
  7500  				}
  7501  				elementCount = count
  7502  				if elementCount != 0 && len(m.ReferencedColumnIDs) == 0 {
  7503  					m.ReferencedColumnIDs = make([]ColumnID, 0, elementCount)
  7504  				}
  7505  				for iNdEx < postIndex {
  7506  					var v ColumnID
  7507  					for shift := uint(0); ; shift += 7 {
  7508  						if shift >= 64 {
  7509  							return ErrIntOverflowStructured
  7510  						}
  7511  						if iNdEx >= l {
  7512  							return io.ErrUnexpectedEOF
  7513  						}
  7514  						b := dAtA[iNdEx]
  7515  						iNdEx++
  7516  						v |= (ColumnID(b) & 0x7F) << shift
  7517  						if b < 0x80 {
  7518  							break
  7519  						}
  7520  					}
  7521  					m.ReferencedColumnIDs = append(m.ReferencedColumnIDs, v)
  7522  				}
  7523  			} else {
  7524  				return fmt.Errorf("proto: wrong wireType = %d for field ReferencedColumnIDs", wireType)
  7525  			}
  7526  		case 4:
  7527  			if wireType != 0 {
  7528  				return fmt.Errorf("proto: wrong wireType = %d for field ReferencedTableID", wireType)
  7529  			}
  7530  			m.ReferencedTableID = 0
  7531  			for shift := uint(0); ; shift += 7 {
  7532  				if shift >= 64 {
  7533  					return ErrIntOverflowStructured
  7534  				}
  7535  				if iNdEx >= l {
  7536  					return io.ErrUnexpectedEOF
  7537  				}
  7538  				b := dAtA[iNdEx]
  7539  				iNdEx++
  7540  				m.ReferencedTableID |= (ID(b) & 0x7F) << shift
  7541  				if b < 0x80 {
  7542  					break
  7543  				}
  7544  			}
  7545  		case 5:
  7546  			if wireType != 2 {
  7547  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
  7548  			}
  7549  			var stringLen uint64
  7550  			for shift := uint(0); ; shift += 7 {
  7551  				if shift >= 64 {
  7552  					return ErrIntOverflowStructured
  7553  				}
  7554  				if iNdEx >= l {
  7555  					return io.ErrUnexpectedEOF
  7556  				}
  7557  				b := dAtA[iNdEx]
  7558  				iNdEx++
  7559  				stringLen |= (uint64(b) & 0x7F) << shift
  7560  				if b < 0x80 {
  7561  					break
  7562  				}
  7563  			}
  7564  			intStringLen := int(stringLen)
  7565  			if intStringLen < 0 {
  7566  				return ErrInvalidLengthStructured
  7567  			}
  7568  			postIndex := iNdEx + intStringLen
  7569  			if postIndex > l {
  7570  				return io.ErrUnexpectedEOF
  7571  			}
  7572  			m.Name = string(dAtA[iNdEx:postIndex])
  7573  			iNdEx = postIndex
  7574  		case 6:
  7575  			if wireType != 0 {
  7576  				return fmt.Errorf("proto: wrong wireType = %d for field Validity", wireType)
  7577  			}
  7578  			m.Validity = 0
  7579  			for shift := uint(0); ; shift += 7 {
  7580  				if shift >= 64 {
  7581  					return ErrIntOverflowStructured
  7582  				}
  7583  				if iNdEx >= l {
  7584  					return io.ErrUnexpectedEOF
  7585  				}
  7586  				b := dAtA[iNdEx]
  7587  				iNdEx++
  7588  				m.Validity |= (ConstraintValidity(b) & 0x7F) << shift
  7589  				if b < 0x80 {
  7590  					break
  7591  				}
  7592  			}
  7593  		case 7:
  7594  			if wireType != 0 {
  7595  				return fmt.Errorf("proto: wrong wireType = %d for field OnDelete", wireType)
  7596  			}
  7597  			m.OnDelete = 0
  7598  			for shift := uint(0); ; shift += 7 {
  7599  				if shift >= 64 {
  7600  					return ErrIntOverflowStructured
  7601  				}
  7602  				if iNdEx >= l {
  7603  					return io.ErrUnexpectedEOF
  7604  				}
  7605  				b := dAtA[iNdEx]
  7606  				iNdEx++
  7607  				m.OnDelete |= (ForeignKeyReference_Action(b) & 0x7F) << shift
  7608  				if b < 0x80 {
  7609  					break
  7610  				}
  7611  			}
  7612  		case 8:
  7613  			if wireType != 0 {
  7614  				return fmt.Errorf("proto: wrong wireType = %d for field OnUpdate", wireType)
  7615  			}
  7616  			m.OnUpdate = 0
  7617  			for shift := uint(0); ; shift += 7 {
  7618  				if shift >= 64 {
  7619  					return ErrIntOverflowStructured
  7620  				}
  7621  				if iNdEx >= l {
  7622  					return io.ErrUnexpectedEOF
  7623  				}
  7624  				b := dAtA[iNdEx]
  7625  				iNdEx++
  7626  				m.OnUpdate |= (ForeignKeyReference_Action(b) & 0x7F) << shift
  7627  				if b < 0x80 {
  7628  					break
  7629  				}
  7630  			}
  7631  		case 9:
  7632  			if wireType != 0 {
  7633  				return fmt.Errorf("proto: wrong wireType = %d for field Match", wireType)
  7634  			}
  7635  			m.Match = 0
  7636  			for shift := uint(0); ; shift += 7 {
  7637  				if shift >= 64 {
  7638  					return ErrIntOverflowStructured
  7639  				}
  7640  				if iNdEx >= l {
  7641  					return io.ErrUnexpectedEOF
  7642  				}
  7643  				b := dAtA[iNdEx]
  7644  				iNdEx++
  7645  				m.Match |= (ForeignKeyReference_Match(b) & 0x7F) << shift
  7646  				if b < 0x80 {
  7647  					break
  7648  				}
  7649  			}
  7650  		case 10:
  7651  			if wireType != 0 {
  7652  				return fmt.Errorf("proto: wrong wireType = %d for field LegacyOriginIndex", wireType)
  7653  			}
  7654  			m.LegacyOriginIndex = 0
  7655  			for shift := uint(0); ; shift += 7 {
  7656  				if shift >= 64 {
  7657  					return ErrIntOverflowStructured
  7658  				}
  7659  				if iNdEx >= l {
  7660  					return io.ErrUnexpectedEOF
  7661  				}
  7662  				b := dAtA[iNdEx]
  7663  				iNdEx++
  7664  				m.LegacyOriginIndex |= (IndexID(b) & 0x7F) << shift
  7665  				if b < 0x80 {
  7666  					break
  7667  				}
  7668  			}
  7669  		case 11:
  7670  			if wireType != 0 {
  7671  				return fmt.Errorf("proto: wrong wireType = %d for field LegacyReferencedIndex", wireType)
  7672  			}
  7673  			m.LegacyReferencedIndex = 0
  7674  			for shift := uint(0); ; shift += 7 {
  7675  				if shift >= 64 {
  7676  					return ErrIntOverflowStructured
  7677  				}
  7678  				if iNdEx >= l {
  7679  					return io.ErrUnexpectedEOF
  7680  				}
  7681  				b := dAtA[iNdEx]
  7682  				iNdEx++
  7683  				m.LegacyReferencedIndex |= (IndexID(b) & 0x7F) << shift
  7684  				if b < 0x80 {
  7685  					break
  7686  				}
  7687  			}
  7688  		default:
  7689  			iNdEx = preIndex
  7690  			skippy, err := skipStructured(dAtA[iNdEx:])
  7691  			if err != nil {
  7692  				return err
  7693  			}
  7694  			if skippy < 0 {
  7695  				return ErrInvalidLengthStructured
  7696  			}
  7697  			if (iNdEx + skippy) > l {
  7698  				return io.ErrUnexpectedEOF
  7699  			}
  7700  			iNdEx += skippy
  7701  		}
  7702  	}
  7703  
  7704  	if iNdEx > l {
  7705  		return io.ErrUnexpectedEOF
  7706  	}
  7707  	return nil
  7708  }
  7709  func (m *ColumnDescriptor) Unmarshal(dAtA []byte) error {
  7710  	l := len(dAtA)
  7711  	iNdEx := 0
  7712  	for iNdEx < l {
  7713  		preIndex := iNdEx
  7714  		var wire uint64
  7715  		for shift := uint(0); ; shift += 7 {
  7716  			if shift >= 64 {
  7717  				return ErrIntOverflowStructured
  7718  			}
  7719  			if iNdEx >= l {
  7720  				return io.ErrUnexpectedEOF
  7721  			}
  7722  			b := dAtA[iNdEx]
  7723  			iNdEx++
  7724  			wire |= (uint64(b) & 0x7F) << shift
  7725  			if b < 0x80 {
  7726  				break
  7727  			}
  7728  		}
  7729  		fieldNum := int32(wire >> 3)
  7730  		wireType := int(wire & 0x7)
  7731  		if wireType == 4 {
  7732  			return fmt.Errorf("proto: ColumnDescriptor: wiretype end group for non-group")
  7733  		}
  7734  		if fieldNum <= 0 {
  7735  			return fmt.Errorf("proto: ColumnDescriptor: illegal tag %d (wire type %d)", fieldNum, wire)
  7736  		}
  7737  		switch fieldNum {
  7738  		case 1:
  7739  			if wireType != 2 {
  7740  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
  7741  			}
  7742  			var stringLen uint64
  7743  			for shift := uint(0); ; shift += 7 {
  7744  				if shift >= 64 {
  7745  					return ErrIntOverflowStructured
  7746  				}
  7747  				if iNdEx >= l {
  7748  					return io.ErrUnexpectedEOF
  7749  				}
  7750  				b := dAtA[iNdEx]
  7751  				iNdEx++
  7752  				stringLen |= (uint64(b) & 0x7F) << shift
  7753  				if b < 0x80 {
  7754  					break
  7755  				}
  7756  			}
  7757  			intStringLen := int(stringLen)
  7758  			if intStringLen < 0 {
  7759  				return ErrInvalidLengthStructured
  7760  			}
  7761  			postIndex := iNdEx + intStringLen
  7762  			if postIndex > l {
  7763  				return io.ErrUnexpectedEOF
  7764  			}
  7765  			m.Name = string(dAtA[iNdEx:postIndex])
  7766  			iNdEx = postIndex
  7767  		case 2:
  7768  			if wireType != 0 {
  7769  				return fmt.Errorf("proto: wrong wireType = %d for field ID", wireType)
  7770  			}
  7771  			m.ID = 0
  7772  			for shift := uint(0); ; shift += 7 {
  7773  				if shift >= 64 {
  7774  					return ErrIntOverflowStructured
  7775  				}
  7776  				if iNdEx >= l {
  7777  					return io.ErrUnexpectedEOF
  7778  				}
  7779  				b := dAtA[iNdEx]
  7780  				iNdEx++
  7781  				m.ID |= (ColumnID(b) & 0x7F) << shift
  7782  				if b < 0x80 {
  7783  					break
  7784  				}
  7785  			}
  7786  		case 3:
  7787  			if wireType != 2 {
  7788  				return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType)
  7789  			}
  7790  			var msglen int
  7791  			for shift := uint(0); ; shift += 7 {
  7792  				if shift >= 64 {
  7793  					return ErrIntOverflowStructured
  7794  				}
  7795  				if iNdEx >= l {
  7796  					return io.ErrUnexpectedEOF
  7797  				}
  7798  				b := dAtA[iNdEx]
  7799  				iNdEx++
  7800  				msglen |= (int(b) & 0x7F) << shift
  7801  				if b < 0x80 {
  7802  					break
  7803  				}
  7804  			}
  7805  			if msglen < 0 {
  7806  				return ErrInvalidLengthStructured
  7807  			}
  7808  			postIndex := iNdEx + msglen
  7809  			if postIndex > l {
  7810  				return io.ErrUnexpectedEOF
  7811  			}
  7812  			if m.Type == nil {
  7813  				m.Type = &types.T{}
  7814  			}
  7815  			if err := m.Type.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  7816  				return err
  7817  			}
  7818  			iNdEx = postIndex
  7819  		case 4:
  7820  			if wireType != 0 {
  7821  				return fmt.Errorf("proto: wrong wireType = %d for field Nullable", wireType)
  7822  			}
  7823  			var v int
  7824  			for shift := uint(0); ; shift += 7 {
  7825  				if shift >= 64 {
  7826  					return ErrIntOverflowStructured
  7827  				}
  7828  				if iNdEx >= l {
  7829  					return io.ErrUnexpectedEOF
  7830  				}
  7831  				b := dAtA[iNdEx]
  7832  				iNdEx++
  7833  				v |= (int(b) & 0x7F) << shift
  7834  				if b < 0x80 {
  7835  					break
  7836  				}
  7837  			}
  7838  			m.Nullable = bool(v != 0)
  7839  		case 5:
  7840  			if wireType != 2 {
  7841  				return fmt.Errorf("proto: wrong wireType = %d for field DefaultExpr", wireType)
  7842  			}
  7843  			var stringLen uint64
  7844  			for shift := uint(0); ; shift += 7 {
  7845  				if shift >= 64 {
  7846  					return ErrIntOverflowStructured
  7847  				}
  7848  				if iNdEx >= l {
  7849  					return io.ErrUnexpectedEOF
  7850  				}
  7851  				b := dAtA[iNdEx]
  7852  				iNdEx++
  7853  				stringLen |= (uint64(b) & 0x7F) << shift
  7854  				if b < 0x80 {
  7855  					break
  7856  				}
  7857  			}
  7858  			intStringLen := int(stringLen)
  7859  			if intStringLen < 0 {
  7860  				return ErrInvalidLengthStructured
  7861  			}
  7862  			postIndex := iNdEx + intStringLen
  7863  			if postIndex > l {
  7864  				return io.ErrUnexpectedEOF
  7865  			}
  7866  			s := string(dAtA[iNdEx:postIndex])
  7867  			m.DefaultExpr = &s
  7868  			iNdEx = postIndex
  7869  		case 6:
  7870  			if wireType != 0 {
  7871  				return fmt.Errorf("proto: wrong wireType = %d for field Hidden", wireType)
  7872  			}
  7873  			var v int
  7874  			for shift := uint(0); ; shift += 7 {
  7875  				if shift >= 64 {
  7876  					return ErrIntOverflowStructured
  7877  				}
  7878  				if iNdEx >= l {
  7879  					return io.ErrUnexpectedEOF
  7880  				}
  7881  				b := dAtA[iNdEx]
  7882  				iNdEx++
  7883  				v |= (int(b) & 0x7F) << shift
  7884  				if b < 0x80 {
  7885  					break
  7886  				}
  7887  			}
  7888  			m.Hidden = bool(v != 0)
  7889  		case 10:
  7890  			if wireType == 0 {
  7891  				var v ID
  7892  				for shift := uint(0); ; shift += 7 {
  7893  					if shift >= 64 {
  7894  						return ErrIntOverflowStructured
  7895  					}
  7896  					if iNdEx >= l {
  7897  						return io.ErrUnexpectedEOF
  7898  					}
  7899  					b := dAtA[iNdEx]
  7900  					iNdEx++
  7901  					v |= (ID(b) & 0x7F) << shift
  7902  					if b < 0x80 {
  7903  						break
  7904  					}
  7905  				}
  7906  				m.UsesSequenceIds = append(m.UsesSequenceIds, v)
  7907  			} else if wireType == 2 {
  7908  				var packedLen int
  7909  				for shift := uint(0); ; shift += 7 {
  7910  					if shift >= 64 {
  7911  						return ErrIntOverflowStructured
  7912  					}
  7913  					if iNdEx >= l {
  7914  						return io.ErrUnexpectedEOF
  7915  					}
  7916  					b := dAtA[iNdEx]
  7917  					iNdEx++
  7918  					packedLen |= (int(b) & 0x7F) << shift
  7919  					if b < 0x80 {
  7920  						break
  7921  					}
  7922  				}
  7923  				if packedLen < 0 {
  7924  					return ErrInvalidLengthStructured
  7925  				}
  7926  				postIndex := iNdEx + packedLen
  7927  				if postIndex > l {
  7928  					return io.ErrUnexpectedEOF
  7929  				}
  7930  				var elementCount int
  7931  				var count int
  7932  				for _, integer := range dAtA {
  7933  					if integer < 128 {
  7934  						count++
  7935  					}
  7936  				}
  7937  				elementCount = count
  7938  				if elementCount != 0 && len(m.UsesSequenceIds) == 0 {
  7939  					m.UsesSequenceIds = make([]ID, 0, elementCount)
  7940  				}
  7941  				for iNdEx < postIndex {
  7942  					var v ID
  7943  					for shift := uint(0); ; shift += 7 {
  7944  						if shift >= 64 {
  7945  							return ErrIntOverflowStructured
  7946  						}
  7947  						if iNdEx >= l {
  7948  							return io.ErrUnexpectedEOF
  7949  						}
  7950  						b := dAtA[iNdEx]
  7951  						iNdEx++
  7952  						v |= (ID(b) & 0x7F) << shift
  7953  						if b < 0x80 {
  7954  							break
  7955  						}
  7956  					}
  7957  					m.UsesSequenceIds = append(m.UsesSequenceIds, v)
  7958  				}
  7959  			} else {
  7960  				return fmt.Errorf("proto: wrong wireType = %d for field UsesSequenceIds", wireType)
  7961  			}
  7962  		case 11:
  7963  			if wireType != 2 {
  7964  				return fmt.Errorf("proto: wrong wireType = %d for field ComputeExpr", wireType)
  7965  			}
  7966  			var stringLen uint64
  7967  			for shift := uint(0); ; shift += 7 {
  7968  				if shift >= 64 {
  7969  					return ErrIntOverflowStructured
  7970  				}
  7971  				if iNdEx >= l {
  7972  					return io.ErrUnexpectedEOF
  7973  				}
  7974  				b := dAtA[iNdEx]
  7975  				iNdEx++
  7976  				stringLen |= (uint64(b) & 0x7F) << shift
  7977  				if b < 0x80 {
  7978  					break
  7979  				}
  7980  			}
  7981  			intStringLen := int(stringLen)
  7982  			if intStringLen < 0 {
  7983  				return ErrInvalidLengthStructured
  7984  			}
  7985  			postIndex := iNdEx + intStringLen
  7986  			if postIndex > l {
  7987  				return io.ErrUnexpectedEOF
  7988  			}
  7989  			s := string(dAtA[iNdEx:postIndex])
  7990  			m.ComputeExpr = &s
  7991  			iNdEx = postIndex
  7992  		case 12:
  7993  			if wireType == 0 {
  7994  				var v ID
  7995  				for shift := uint(0); ; shift += 7 {
  7996  					if shift >= 64 {
  7997  						return ErrIntOverflowStructured
  7998  					}
  7999  					if iNdEx >= l {
  8000  						return io.ErrUnexpectedEOF
  8001  					}
  8002  					b := dAtA[iNdEx]
  8003  					iNdEx++
  8004  					v |= (ID(b) & 0x7F) << shift
  8005  					if b < 0x80 {
  8006  						break
  8007  					}
  8008  				}
  8009  				m.OwnsSequenceIds = append(m.OwnsSequenceIds, v)
  8010  			} else if wireType == 2 {
  8011  				var packedLen int
  8012  				for shift := uint(0); ; shift += 7 {
  8013  					if shift >= 64 {
  8014  						return ErrIntOverflowStructured
  8015  					}
  8016  					if iNdEx >= l {
  8017  						return io.ErrUnexpectedEOF
  8018  					}
  8019  					b := dAtA[iNdEx]
  8020  					iNdEx++
  8021  					packedLen |= (int(b) & 0x7F) << shift
  8022  					if b < 0x80 {
  8023  						break
  8024  					}
  8025  				}
  8026  				if packedLen < 0 {
  8027  					return ErrInvalidLengthStructured
  8028  				}
  8029  				postIndex := iNdEx + packedLen
  8030  				if postIndex > l {
  8031  					return io.ErrUnexpectedEOF
  8032  				}
  8033  				var elementCount int
  8034  				var count int
  8035  				for _, integer := range dAtA {
  8036  					if integer < 128 {
  8037  						count++
  8038  					}
  8039  				}
  8040  				elementCount = count
  8041  				if elementCount != 0 && len(m.OwnsSequenceIds) == 0 {
  8042  					m.OwnsSequenceIds = make([]ID, 0, elementCount)
  8043  				}
  8044  				for iNdEx < postIndex {
  8045  					var v ID
  8046  					for shift := uint(0); ; shift += 7 {
  8047  						if shift >= 64 {
  8048  							return ErrIntOverflowStructured
  8049  						}
  8050  						if iNdEx >= l {
  8051  							return io.ErrUnexpectedEOF
  8052  						}
  8053  						b := dAtA[iNdEx]
  8054  						iNdEx++
  8055  						v |= (ID(b) & 0x7F) << shift
  8056  						if b < 0x80 {
  8057  							break
  8058  						}
  8059  					}
  8060  					m.OwnsSequenceIds = append(m.OwnsSequenceIds, v)
  8061  				}
  8062  			} else {
  8063  				return fmt.Errorf("proto: wrong wireType = %d for field OwnsSequenceIds", wireType)
  8064  			}
  8065  		case 13:
  8066  			if wireType != 0 {
  8067  				return fmt.Errorf("proto: wrong wireType = %d for field LogicalColumnID", wireType)
  8068  			}
  8069  			m.LogicalColumnID = 0
  8070  			for shift := uint(0); ; shift += 7 {
  8071  				if shift >= 64 {
  8072  					return ErrIntOverflowStructured
  8073  				}
  8074  				if iNdEx >= l {
  8075  					return io.ErrUnexpectedEOF
  8076  				}
  8077  				b := dAtA[iNdEx]
  8078  				iNdEx++
  8079  				m.LogicalColumnID |= (ColumnID(b) & 0x7F) << shift
  8080  				if b < 0x80 {
  8081  					break
  8082  				}
  8083  			}
  8084  		case 14:
  8085  			if wireType != 0 {
  8086  				return fmt.Errorf("proto: wrong wireType = %d for field AlterColumnTypeInProgress", wireType)
  8087  			}
  8088  			var v int
  8089  			for shift := uint(0); ; shift += 7 {
  8090  				if shift >= 64 {
  8091  					return ErrIntOverflowStructured
  8092  				}
  8093  				if iNdEx >= l {
  8094  					return io.ErrUnexpectedEOF
  8095  				}
  8096  				b := dAtA[iNdEx]
  8097  				iNdEx++
  8098  				v |= (int(b) & 0x7F) << shift
  8099  				if b < 0x80 {
  8100  					break
  8101  				}
  8102  			}
  8103  			m.AlterColumnTypeInProgress = bool(v != 0)
  8104  		default:
  8105  			iNdEx = preIndex
  8106  			skippy, err := skipStructured(dAtA[iNdEx:])
  8107  			if err != nil {
  8108  				return err
  8109  			}
  8110  			if skippy < 0 {
  8111  				return ErrInvalidLengthStructured
  8112  			}
  8113  			if (iNdEx + skippy) > l {
  8114  				return io.ErrUnexpectedEOF
  8115  			}
  8116  			iNdEx += skippy
  8117  		}
  8118  	}
  8119  
  8120  	if iNdEx > l {
  8121  		return io.ErrUnexpectedEOF
  8122  	}
  8123  	return nil
  8124  }
  8125  func (m *ColumnFamilyDescriptor) Unmarshal(dAtA []byte) error {
  8126  	l := len(dAtA)
  8127  	iNdEx := 0
  8128  	for iNdEx < l {
  8129  		preIndex := iNdEx
  8130  		var wire uint64
  8131  		for shift := uint(0); ; shift += 7 {
  8132  			if shift >= 64 {
  8133  				return ErrIntOverflowStructured
  8134  			}
  8135  			if iNdEx >= l {
  8136  				return io.ErrUnexpectedEOF
  8137  			}
  8138  			b := dAtA[iNdEx]
  8139  			iNdEx++
  8140  			wire |= (uint64(b) & 0x7F) << shift
  8141  			if b < 0x80 {
  8142  				break
  8143  			}
  8144  		}
  8145  		fieldNum := int32(wire >> 3)
  8146  		wireType := int(wire & 0x7)
  8147  		if wireType == 4 {
  8148  			return fmt.Errorf("proto: ColumnFamilyDescriptor: wiretype end group for non-group")
  8149  		}
  8150  		if fieldNum <= 0 {
  8151  			return fmt.Errorf("proto: ColumnFamilyDescriptor: illegal tag %d (wire type %d)", fieldNum, wire)
  8152  		}
  8153  		switch fieldNum {
  8154  		case 1:
  8155  			if wireType != 2 {
  8156  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
  8157  			}
  8158  			var stringLen uint64
  8159  			for shift := uint(0); ; shift += 7 {
  8160  				if shift >= 64 {
  8161  					return ErrIntOverflowStructured
  8162  				}
  8163  				if iNdEx >= l {
  8164  					return io.ErrUnexpectedEOF
  8165  				}
  8166  				b := dAtA[iNdEx]
  8167  				iNdEx++
  8168  				stringLen |= (uint64(b) & 0x7F) << shift
  8169  				if b < 0x80 {
  8170  					break
  8171  				}
  8172  			}
  8173  			intStringLen := int(stringLen)
  8174  			if intStringLen < 0 {
  8175  				return ErrInvalidLengthStructured
  8176  			}
  8177  			postIndex := iNdEx + intStringLen
  8178  			if postIndex > l {
  8179  				return io.ErrUnexpectedEOF
  8180  			}
  8181  			m.Name = string(dAtA[iNdEx:postIndex])
  8182  			iNdEx = postIndex
  8183  		case 2:
  8184  			if wireType != 0 {
  8185  				return fmt.Errorf("proto: wrong wireType = %d for field ID", wireType)
  8186  			}
  8187  			m.ID = 0
  8188  			for shift := uint(0); ; shift += 7 {
  8189  				if shift >= 64 {
  8190  					return ErrIntOverflowStructured
  8191  				}
  8192  				if iNdEx >= l {
  8193  					return io.ErrUnexpectedEOF
  8194  				}
  8195  				b := dAtA[iNdEx]
  8196  				iNdEx++
  8197  				m.ID |= (FamilyID(b) & 0x7F) << shift
  8198  				if b < 0x80 {
  8199  					break
  8200  				}
  8201  			}
  8202  		case 3:
  8203  			if wireType != 2 {
  8204  				return fmt.Errorf("proto: wrong wireType = %d for field ColumnNames", wireType)
  8205  			}
  8206  			var stringLen uint64
  8207  			for shift := uint(0); ; shift += 7 {
  8208  				if shift >= 64 {
  8209  					return ErrIntOverflowStructured
  8210  				}
  8211  				if iNdEx >= l {
  8212  					return io.ErrUnexpectedEOF
  8213  				}
  8214  				b := dAtA[iNdEx]
  8215  				iNdEx++
  8216  				stringLen |= (uint64(b) & 0x7F) << shift
  8217  				if b < 0x80 {
  8218  					break
  8219  				}
  8220  			}
  8221  			intStringLen := int(stringLen)
  8222  			if intStringLen < 0 {
  8223  				return ErrInvalidLengthStructured
  8224  			}
  8225  			postIndex := iNdEx + intStringLen
  8226  			if postIndex > l {
  8227  				return io.ErrUnexpectedEOF
  8228  			}
  8229  			m.ColumnNames = append(m.ColumnNames, string(dAtA[iNdEx:postIndex]))
  8230  			iNdEx = postIndex
  8231  		case 4:
  8232  			if wireType == 0 {
  8233  				var v ColumnID
  8234  				for shift := uint(0); ; shift += 7 {
  8235  					if shift >= 64 {
  8236  						return ErrIntOverflowStructured
  8237  					}
  8238  					if iNdEx >= l {
  8239  						return io.ErrUnexpectedEOF
  8240  					}
  8241  					b := dAtA[iNdEx]
  8242  					iNdEx++
  8243  					v |= (ColumnID(b) & 0x7F) << shift
  8244  					if b < 0x80 {
  8245  						break
  8246  					}
  8247  				}
  8248  				m.ColumnIDs = append(m.ColumnIDs, v)
  8249  			} else if wireType == 2 {
  8250  				var packedLen int
  8251  				for shift := uint(0); ; shift += 7 {
  8252  					if shift >= 64 {
  8253  						return ErrIntOverflowStructured
  8254  					}
  8255  					if iNdEx >= l {
  8256  						return io.ErrUnexpectedEOF
  8257  					}
  8258  					b := dAtA[iNdEx]
  8259  					iNdEx++
  8260  					packedLen |= (int(b) & 0x7F) << shift
  8261  					if b < 0x80 {
  8262  						break
  8263  					}
  8264  				}
  8265  				if packedLen < 0 {
  8266  					return ErrInvalidLengthStructured
  8267  				}
  8268  				postIndex := iNdEx + packedLen
  8269  				if postIndex > l {
  8270  					return io.ErrUnexpectedEOF
  8271  				}
  8272  				var elementCount int
  8273  				var count int
  8274  				for _, integer := range dAtA {
  8275  					if integer < 128 {
  8276  						count++
  8277  					}
  8278  				}
  8279  				elementCount = count
  8280  				if elementCount != 0 && len(m.ColumnIDs) == 0 {
  8281  					m.ColumnIDs = make([]ColumnID, 0, elementCount)
  8282  				}
  8283  				for iNdEx < postIndex {
  8284  					var v ColumnID
  8285  					for shift := uint(0); ; shift += 7 {
  8286  						if shift >= 64 {
  8287  							return ErrIntOverflowStructured
  8288  						}
  8289  						if iNdEx >= l {
  8290  							return io.ErrUnexpectedEOF
  8291  						}
  8292  						b := dAtA[iNdEx]
  8293  						iNdEx++
  8294  						v |= (ColumnID(b) & 0x7F) << shift
  8295  						if b < 0x80 {
  8296  							break
  8297  						}
  8298  					}
  8299  					m.ColumnIDs = append(m.ColumnIDs, v)
  8300  				}
  8301  			} else {
  8302  				return fmt.Errorf("proto: wrong wireType = %d for field ColumnIDs", wireType)
  8303  			}
  8304  		case 5:
  8305  			if wireType != 0 {
  8306  				return fmt.Errorf("proto: wrong wireType = %d for field DefaultColumnID", wireType)
  8307  			}
  8308  			m.DefaultColumnID = 0
  8309  			for shift := uint(0); ; shift += 7 {
  8310  				if shift >= 64 {
  8311  					return ErrIntOverflowStructured
  8312  				}
  8313  				if iNdEx >= l {
  8314  					return io.ErrUnexpectedEOF
  8315  				}
  8316  				b := dAtA[iNdEx]
  8317  				iNdEx++
  8318  				m.DefaultColumnID |= (ColumnID(b) & 0x7F) << shift
  8319  				if b < 0x80 {
  8320  					break
  8321  				}
  8322  			}
  8323  		default:
  8324  			iNdEx = preIndex
  8325  			skippy, err := skipStructured(dAtA[iNdEx:])
  8326  			if err != nil {
  8327  				return err
  8328  			}
  8329  			if skippy < 0 {
  8330  				return ErrInvalidLengthStructured
  8331  			}
  8332  			if (iNdEx + skippy) > l {
  8333  				return io.ErrUnexpectedEOF
  8334  			}
  8335  			iNdEx += skippy
  8336  		}
  8337  	}
  8338  
  8339  	if iNdEx > l {
  8340  		return io.ErrUnexpectedEOF
  8341  	}
  8342  	return nil
  8343  }
  8344  func (m *InterleaveDescriptor) Unmarshal(dAtA []byte) error {
  8345  	l := len(dAtA)
  8346  	iNdEx := 0
  8347  	for iNdEx < l {
  8348  		preIndex := iNdEx
  8349  		var wire uint64
  8350  		for shift := uint(0); ; shift += 7 {
  8351  			if shift >= 64 {
  8352  				return ErrIntOverflowStructured
  8353  			}
  8354  			if iNdEx >= l {
  8355  				return io.ErrUnexpectedEOF
  8356  			}
  8357  			b := dAtA[iNdEx]
  8358  			iNdEx++
  8359  			wire |= (uint64(b) & 0x7F) << shift
  8360  			if b < 0x80 {
  8361  				break
  8362  			}
  8363  		}
  8364  		fieldNum := int32(wire >> 3)
  8365  		wireType := int(wire & 0x7)
  8366  		if wireType == 4 {
  8367  			return fmt.Errorf("proto: InterleaveDescriptor: wiretype end group for non-group")
  8368  		}
  8369  		if fieldNum <= 0 {
  8370  			return fmt.Errorf("proto: InterleaveDescriptor: illegal tag %d (wire type %d)", fieldNum, wire)
  8371  		}
  8372  		switch fieldNum {
  8373  		case 1:
  8374  			if wireType != 2 {
  8375  				return fmt.Errorf("proto: wrong wireType = %d for field Ancestors", wireType)
  8376  			}
  8377  			var msglen int
  8378  			for shift := uint(0); ; shift += 7 {
  8379  				if shift >= 64 {
  8380  					return ErrIntOverflowStructured
  8381  				}
  8382  				if iNdEx >= l {
  8383  					return io.ErrUnexpectedEOF
  8384  				}
  8385  				b := dAtA[iNdEx]
  8386  				iNdEx++
  8387  				msglen |= (int(b) & 0x7F) << shift
  8388  				if b < 0x80 {
  8389  					break
  8390  				}
  8391  			}
  8392  			if msglen < 0 {
  8393  				return ErrInvalidLengthStructured
  8394  			}
  8395  			postIndex := iNdEx + msglen
  8396  			if postIndex > l {
  8397  				return io.ErrUnexpectedEOF
  8398  			}
  8399  			m.Ancestors = append(m.Ancestors, InterleaveDescriptor_Ancestor{})
  8400  			if err := m.Ancestors[len(m.Ancestors)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8401  				return err
  8402  			}
  8403  			iNdEx = postIndex
  8404  		default:
  8405  			iNdEx = preIndex
  8406  			skippy, err := skipStructured(dAtA[iNdEx:])
  8407  			if err != nil {
  8408  				return err
  8409  			}
  8410  			if skippy < 0 {
  8411  				return ErrInvalidLengthStructured
  8412  			}
  8413  			if (iNdEx + skippy) > l {
  8414  				return io.ErrUnexpectedEOF
  8415  			}
  8416  			iNdEx += skippy
  8417  		}
  8418  	}
  8419  
  8420  	if iNdEx > l {
  8421  		return io.ErrUnexpectedEOF
  8422  	}
  8423  	return nil
  8424  }
  8425  func (m *InterleaveDescriptor_Ancestor) Unmarshal(dAtA []byte) error {
  8426  	l := len(dAtA)
  8427  	iNdEx := 0
  8428  	for iNdEx < l {
  8429  		preIndex := iNdEx
  8430  		var wire uint64
  8431  		for shift := uint(0); ; shift += 7 {
  8432  			if shift >= 64 {
  8433  				return ErrIntOverflowStructured
  8434  			}
  8435  			if iNdEx >= l {
  8436  				return io.ErrUnexpectedEOF
  8437  			}
  8438  			b := dAtA[iNdEx]
  8439  			iNdEx++
  8440  			wire |= (uint64(b) & 0x7F) << shift
  8441  			if b < 0x80 {
  8442  				break
  8443  			}
  8444  		}
  8445  		fieldNum := int32(wire >> 3)
  8446  		wireType := int(wire & 0x7)
  8447  		if wireType == 4 {
  8448  			return fmt.Errorf("proto: Ancestor: wiretype end group for non-group")
  8449  		}
  8450  		if fieldNum <= 0 {
  8451  			return fmt.Errorf("proto: Ancestor: illegal tag %d (wire type %d)", fieldNum, wire)
  8452  		}
  8453  		switch fieldNum {
  8454  		case 1:
  8455  			if wireType != 0 {
  8456  				return fmt.Errorf("proto: wrong wireType = %d for field TableID", wireType)
  8457  			}
  8458  			m.TableID = 0
  8459  			for shift := uint(0); ; shift += 7 {
  8460  				if shift >= 64 {
  8461  					return ErrIntOverflowStructured
  8462  				}
  8463  				if iNdEx >= l {
  8464  					return io.ErrUnexpectedEOF
  8465  				}
  8466  				b := dAtA[iNdEx]
  8467  				iNdEx++
  8468  				m.TableID |= (ID(b) & 0x7F) << shift
  8469  				if b < 0x80 {
  8470  					break
  8471  				}
  8472  			}
  8473  		case 2:
  8474  			if wireType != 0 {
  8475  				return fmt.Errorf("proto: wrong wireType = %d for field IndexID", wireType)
  8476  			}
  8477  			m.IndexID = 0
  8478  			for shift := uint(0); ; shift += 7 {
  8479  				if shift >= 64 {
  8480  					return ErrIntOverflowStructured
  8481  				}
  8482  				if iNdEx >= l {
  8483  					return io.ErrUnexpectedEOF
  8484  				}
  8485  				b := dAtA[iNdEx]
  8486  				iNdEx++
  8487  				m.IndexID |= (IndexID(b) & 0x7F) << shift
  8488  				if b < 0x80 {
  8489  					break
  8490  				}
  8491  			}
  8492  		case 3:
  8493  			if wireType != 0 {
  8494  				return fmt.Errorf("proto: wrong wireType = %d for field SharedPrefixLen", wireType)
  8495  			}
  8496  			m.SharedPrefixLen = 0
  8497  			for shift := uint(0); ; shift += 7 {
  8498  				if shift >= 64 {
  8499  					return ErrIntOverflowStructured
  8500  				}
  8501  				if iNdEx >= l {
  8502  					return io.ErrUnexpectedEOF
  8503  				}
  8504  				b := dAtA[iNdEx]
  8505  				iNdEx++
  8506  				m.SharedPrefixLen |= (uint32(b) & 0x7F) << shift
  8507  				if b < 0x80 {
  8508  					break
  8509  				}
  8510  			}
  8511  		default:
  8512  			iNdEx = preIndex
  8513  			skippy, err := skipStructured(dAtA[iNdEx:])
  8514  			if err != nil {
  8515  				return err
  8516  			}
  8517  			if skippy < 0 {
  8518  				return ErrInvalidLengthStructured
  8519  			}
  8520  			if (iNdEx + skippy) > l {
  8521  				return io.ErrUnexpectedEOF
  8522  			}
  8523  			iNdEx += skippy
  8524  		}
  8525  	}
  8526  
  8527  	if iNdEx > l {
  8528  		return io.ErrUnexpectedEOF
  8529  	}
  8530  	return nil
  8531  }
  8532  func (m *ShardedDescriptor) Unmarshal(dAtA []byte) error {
  8533  	l := len(dAtA)
  8534  	iNdEx := 0
  8535  	for iNdEx < l {
  8536  		preIndex := iNdEx
  8537  		var wire uint64
  8538  		for shift := uint(0); ; shift += 7 {
  8539  			if shift >= 64 {
  8540  				return ErrIntOverflowStructured
  8541  			}
  8542  			if iNdEx >= l {
  8543  				return io.ErrUnexpectedEOF
  8544  			}
  8545  			b := dAtA[iNdEx]
  8546  			iNdEx++
  8547  			wire |= (uint64(b) & 0x7F) << shift
  8548  			if b < 0x80 {
  8549  				break
  8550  			}
  8551  		}
  8552  		fieldNum := int32(wire >> 3)
  8553  		wireType := int(wire & 0x7)
  8554  		if wireType == 4 {
  8555  			return fmt.Errorf("proto: ShardedDescriptor: wiretype end group for non-group")
  8556  		}
  8557  		if fieldNum <= 0 {
  8558  			return fmt.Errorf("proto: ShardedDescriptor: illegal tag %d (wire type %d)", fieldNum, wire)
  8559  		}
  8560  		switch fieldNum {
  8561  		case 1:
  8562  			if wireType != 0 {
  8563  				return fmt.Errorf("proto: wrong wireType = %d for field IsSharded", wireType)
  8564  			}
  8565  			var v int
  8566  			for shift := uint(0); ; shift += 7 {
  8567  				if shift >= 64 {
  8568  					return ErrIntOverflowStructured
  8569  				}
  8570  				if iNdEx >= l {
  8571  					return io.ErrUnexpectedEOF
  8572  				}
  8573  				b := dAtA[iNdEx]
  8574  				iNdEx++
  8575  				v |= (int(b) & 0x7F) << shift
  8576  				if b < 0x80 {
  8577  					break
  8578  				}
  8579  			}
  8580  			m.IsSharded = bool(v != 0)
  8581  		case 2:
  8582  			if wireType != 2 {
  8583  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
  8584  			}
  8585  			var stringLen uint64
  8586  			for shift := uint(0); ; shift += 7 {
  8587  				if shift >= 64 {
  8588  					return ErrIntOverflowStructured
  8589  				}
  8590  				if iNdEx >= l {
  8591  					return io.ErrUnexpectedEOF
  8592  				}
  8593  				b := dAtA[iNdEx]
  8594  				iNdEx++
  8595  				stringLen |= (uint64(b) & 0x7F) << shift
  8596  				if b < 0x80 {
  8597  					break
  8598  				}
  8599  			}
  8600  			intStringLen := int(stringLen)
  8601  			if intStringLen < 0 {
  8602  				return ErrInvalidLengthStructured
  8603  			}
  8604  			postIndex := iNdEx + intStringLen
  8605  			if postIndex > l {
  8606  				return io.ErrUnexpectedEOF
  8607  			}
  8608  			m.Name = string(dAtA[iNdEx:postIndex])
  8609  			iNdEx = postIndex
  8610  		case 3:
  8611  			if wireType != 0 {
  8612  				return fmt.Errorf("proto: wrong wireType = %d for field ShardBuckets", wireType)
  8613  			}
  8614  			m.ShardBuckets = 0
  8615  			for shift := uint(0); ; shift += 7 {
  8616  				if shift >= 64 {
  8617  					return ErrIntOverflowStructured
  8618  				}
  8619  				if iNdEx >= l {
  8620  					return io.ErrUnexpectedEOF
  8621  				}
  8622  				b := dAtA[iNdEx]
  8623  				iNdEx++
  8624  				m.ShardBuckets |= (int32(b) & 0x7F) << shift
  8625  				if b < 0x80 {
  8626  					break
  8627  				}
  8628  			}
  8629  		case 4:
  8630  			if wireType != 2 {
  8631  				return fmt.Errorf("proto: wrong wireType = %d for field ColumnNames", wireType)
  8632  			}
  8633  			var stringLen uint64
  8634  			for shift := uint(0); ; shift += 7 {
  8635  				if shift >= 64 {
  8636  					return ErrIntOverflowStructured
  8637  				}
  8638  				if iNdEx >= l {
  8639  					return io.ErrUnexpectedEOF
  8640  				}
  8641  				b := dAtA[iNdEx]
  8642  				iNdEx++
  8643  				stringLen |= (uint64(b) & 0x7F) << shift
  8644  				if b < 0x80 {
  8645  					break
  8646  				}
  8647  			}
  8648  			intStringLen := int(stringLen)
  8649  			if intStringLen < 0 {
  8650  				return ErrInvalidLengthStructured
  8651  			}
  8652  			postIndex := iNdEx + intStringLen
  8653  			if postIndex > l {
  8654  				return io.ErrUnexpectedEOF
  8655  			}
  8656  			m.ColumnNames = append(m.ColumnNames, string(dAtA[iNdEx:postIndex]))
  8657  			iNdEx = postIndex
  8658  		default:
  8659  			iNdEx = preIndex
  8660  			skippy, err := skipStructured(dAtA[iNdEx:])
  8661  			if err != nil {
  8662  				return err
  8663  			}
  8664  			if skippy < 0 {
  8665  				return ErrInvalidLengthStructured
  8666  			}
  8667  			if (iNdEx + skippy) > l {
  8668  				return io.ErrUnexpectedEOF
  8669  			}
  8670  			iNdEx += skippy
  8671  		}
  8672  	}
  8673  
  8674  	if iNdEx > l {
  8675  		return io.ErrUnexpectedEOF
  8676  	}
  8677  	return nil
  8678  }
  8679  func (m *PartitioningDescriptor) Unmarshal(dAtA []byte) error {
  8680  	l := len(dAtA)
  8681  	iNdEx := 0
  8682  	for iNdEx < l {
  8683  		preIndex := iNdEx
  8684  		var wire uint64
  8685  		for shift := uint(0); ; shift += 7 {
  8686  			if shift >= 64 {
  8687  				return ErrIntOverflowStructured
  8688  			}
  8689  			if iNdEx >= l {
  8690  				return io.ErrUnexpectedEOF
  8691  			}
  8692  			b := dAtA[iNdEx]
  8693  			iNdEx++
  8694  			wire |= (uint64(b) & 0x7F) << shift
  8695  			if b < 0x80 {
  8696  				break
  8697  			}
  8698  		}
  8699  		fieldNum := int32(wire >> 3)
  8700  		wireType := int(wire & 0x7)
  8701  		if wireType == 4 {
  8702  			return fmt.Errorf("proto: PartitioningDescriptor: wiretype end group for non-group")
  8703  		}
  8704  		if fieldNum <= 0 {
  8705  			return fmt.Errorf("proto: PartitioningDescriptor: illegal tag %d (wire type %d)", fieldNum, wire)
  8706  		}
  8707  		switch fieldNum {
  8708  		case 1:
  8709  			if wireType != 0 {
  8710  				return fmt.Errorf("proto: wrong wireType = %d for field NumColumns", wireType)
  8711  			}
  8712  			m.NumColumns = 0
  8713  			for shift := uint(0); ; shift += 7 {
  8714  				if shift >= 64 {
  8715  					return ErrIntOverflowStructured
  8716  				}
  8717  				if iNdEx >= l {
  8718  					return io.ErrUnexpectedEOF
  8719  				}
  8720  				b := dAtA[iNdEx]
  8721  				iNdEx++
  8722  				m.NumColumns |= (uint32(b) & 0x7F) << shift
  8723  				if b < 0x80 {
  8724  					break
  8725  				}
  8726  			}
  8727  		case 2:
  8728  			if wireType != 2 {
  8729  				return fmt.Errorf("proto: wrong wireType = %d for field List", wireType)
  8730  			}
  8731  			var msglen int
  8732  			for shift := uint(0); ; shift += 7 {
  8733  				if shift >= 64 {
  8734  					return ErrIntOverflowStructured
  8735  				}
  8736  				if iNdEx >= l {
  8737  					return io.ErrUnexpectedEOF
  8738  				}
  8739  				b := dAtA[iNdEx]
  8740  				iNdEx++
  8741  				msglen |= (int(b) & 0x7F) << shift
  8742  				if b < 0x80 {
  8743  					break
  8744  				}
  8745  			}
  8746  			if msglen < 0 {
  8747  				return ErrInvalidLengthStructured
  8748  			}
  8749  			postIndex := iNdEx + msglen
  8750  			if postIndex > l {
  8751  				return io.ErrUnexpectedEOF
  8752  			}
  8753  			m.List = append(m.List, PartitioningDescriptor_List{})
  8754  			if err := m.List[len(m.List)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8755  				return err
  8756  			}
  8757  			iNdEx = postIndex
  8758  		case 3:
  8759  			if wireType != 2 {
  8760  				return fmt.Errorf("proto: wrong wireType = %d for field Range", wireType)
  8761  			}
  8762  			var msglen int
  8763  			for shift := uint(0); ; shift += 7 {
  8764  				if shift >= 64 {
  8765  					return ErrIntOverflowStructured
  8766  				}
  8767  				if iNdEx >= l {
  8768  					return io.ErrUnexpectedEOF
  8769  				}
  8770  				b := dAtA[iNdEx]
  8771  				iNdEx++
  8772  				msglen |= (int(b) & 0x7F) << shift
  8773  				if b < 0x80 {
  8774  					break
  8775  				}
  8776  			}
  8777  			if msglen < 0 {
  8778  				return ErrInvalidLengthStructured
  8779  			}
  8780  			postIndex := iNdEx + msglen
  8781  			if postIndex > l {
  8782  				return io.ErrUnexpectedEOF
  8783  			}
  8784  			m.Range = append(m.Range, PartitioningDescriptor_Range{})
  8785  			if err := m.Range[len(m.Range)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8786  				return err
  8787  			}
  8788  			iNdEx = postIndex
  8789  		default:
  8790  			iNdEx = preIndex
  8791  			skippy, err := skipStructured(dAtA[iNdEx:])
  8792  			if err != nil {
  8793  				return err
  8794  			}
  8795  			if skippy < 0 {
  8796  				return ErrInvalidLengthStructured
  8797  			}
  8798  			if (iNdEx + skippy) > l {
  8799  				return io.ErrUnexpectedEOF
  8800  			}
  8801  			iNdEx += skippy
  8802  		}
  8803  	}
  8804  
  8805  	if iNdEx > l {
  8806  		return io.ErrUnexpectedEOF
  8807  	}
  8808  	return nil
  8809  }
  8810  func (m *PartitioningDescriptor_List) Unmarshal(dAtA []byte) error {
  8811  	l := len(dAtA)
  8812  	iNdEx := 0
  8813  	for iNdEx < l {
  8814  		preIndex := iNdEx
  8815  		var wire uint64
  8816  		for shift := uint(0); ; shift += 7 {
  8817  			if shift >= 64 {
  8818  				return ErrIntOverflowStructured
  8819  			}
  8820  			if iNdEx >= l {
  8821  				return io.ErrUnexpectedEOF
  8822  			}
  8823  			b := dAtA[iNdEx]
  8824  			iNdEx++
  8825  			wire |= (uint64(b) & 0x7F) << shift
  8826  			if b < 0x80 {
  8827  				break
  8828  			}
  8829  		}
  8830  		fieldNum := int32(wire >> 3)
  8831  		wireType := int(wire & 0x7)
  8832  		if wireType == 4 {
  8833  			return fmt.Errorf("proto: List: wiretype end group for non-group")
  8834  		}
  8835  		if fieldNum <= 0 {
  8836  			return fmt.Errorf("proto: List: illegal tag %d (wire type %d)", fieldNum, wire)
  8837  		}
  8838  		switch fieldNum {
  8839  		case 1:
  8840  			if wireType != 2 {
  8841  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
  8842  			}
  8843  			var stringLen uint64
  8844  			for shift := uint(0); ; shift += 7 {
  8845  				if shift >= 64 {
  8846  					return ErrIntOverflowStructured
  8847  				}
  8848  				if iNdEx >= l {
  8849  					return io.ErrUnexpectedEOF
  8850  				}
  8851  				b := dAtA[iNdEx]
  8852  				iNdEx++
  8853  				stringLen |= (uint64(b) & 0x7F) << shift
  8854  				if b < 0x80 {
  8855  					break
  8856  				}
  8857  			}
  8858  			intStringLen := int(stringLen)
  8859  			if intStringLen < 0 {
  8860  				return ErrInvalidLengthStructured
  8861  			}
  8862  			postIndex := iNdEx + intStringLen
  8863  			if postIndex > l {
  8864  				return io.ErrUnexpectedEOF
  8865  			}
  8866  			m.Name = string(dAtA[iNdEx:postIndex])
  8867  			iNdEx = postIndex
  8868  		case 2:
  8869  			if wireType != 2 {
  8870  				return fmt.Errorf("proto: wrong wireType = %d for field Values", wireType)
  8871  			}
  8872  			var byteLen int
  8873  			for shift := uint(0); ; shift += 7 {
  8874  				if shift >= 64 {
  8875  					return ErrIntOverflowStructured
  8876  				}
  8877  				if iNdEx >= l {
  8878  					return io.ErrUnexpectedEOF
  8879  				}
  8880  				b := dAtA[iNdEx]
  8881  				iNdEx++
  8882  				byteLen |= (int(b) & 0x7F) << shift
  8883  				if b < 0x80 {
  8884  					break
  8885  				}
  8886  			}
  8887  			if byteLen < 0 {
  8888  				return ErrInvalidLengthStructured
  8889  			}
  8890  			postIndex := iNdEx + byteLen
  8891  			if postIndex > l {
  8892  				return io.ErrUnexpectedEOF
  8893  			}
  8894  			m.Values = append(m.Values, make([]byte, postIndex-iNdEx))
  8895  			copy(m.Values[len(m.Values)-1], dAtA[iNdEx:postIndex])
  8896  			iNdEx = postIndex
  8897  		case 3:
  8898  			if wireType != 2 {
  8899  				return fmt.Errorf("proto: wrong wireType = %d for field Subpartitioning", wireType)
  8900  			}
  8901  			var msglen int
  8902  			for shift := uint(0); ; shift += 7 {
  8903  				if shift >= 64 {
  8904  					return ErrIntOverflowStructured
  8905  				}
  8906  				if iNdEx >= l {
  8907  					return io.ErrUnexpectedEOF
  8908  				}
  8909  				b := dAtA[iNdEx]
  8910  				iNdEx++
  8911  				msglen |= (int(b) & 0x7F) << shift
  8912  				if b < 0x80 {
  8913  					break
  8914  				}
  8915  			}
  8916  			if msglen < 0 {
  8917  				return ErrInvalidLengthStructured
  8918  			}
  8919  			postIndex := iNdEx + msglen
  8920  			if postIndex > l {
  8921  				return io.ErrUnexpectedEOF
  8922  			}
  8923  			if err := m.Subpartitioning.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  8924  				return err
  8925  			}
  8926  			iNdEx = postIndex
  8927  		default:
  8928  			iNdEx = preIndex
  8929  			skippy, err := skipStructured(dAtA[iNdEx:])
  8930  			if err != nil {
  8931  				return err
  8932  			}
  8933  			if skippy < 0 {
  8934  				return ErrInvalidLengthStructured
  8935  			}
  8936  			if (iNdEx + skippy) > l {
  8937  				return io.ErrUnexpectedEOF
  8938  			}
  8939  			iNdEx += skippy
  8940  		}
  8941  	}
  8942  
  8943  	if iNdEx > l {
  8944  		return io.ErrUnexpectedEOF
  8945  	}
  8946  	return nil
  8947  }
  8948  func (m *PartitioningDescriptor_Range) Unmarshal(dAtA []byte) error {
  8949  	l := len(dAtA)
  8950  	iNdEx := 0
  8951  	for iNdEx < l {
  8952  		preIndex := iNdEx
  8953  		var wire uint64
  8954  		for shift := uint(0); ; shift += 7 {
  8955  			if shift >= 64 {
  8956  				return ErrIntOverflowStructured
  8957  			}
  8958  			if iNdEx >= l {
  8959  				return io.ErrUnexpectedEOF
  8960  			}
  8961  			b := dAtA[iNdEx]
  8962  			iNdEx++
  8963  			wire |= (uint64(b) & 0x7F) << shift
  8964  			if b < 0x80 {
  8965  				break
  8966  			}
  8967  		}
  8968  		fieldNum := int32(wire >> 3)
  8969  		wireType := int(wire & 0x7)
  8970  		if wireType == 4 {
  8971  			return fmt.Errorf("proto: Range: wiretype end group for non-group")
  8972  		}
  8973  		if fieldNum <= 0 {
  8974  			return fmt.Errorf("proto: Range: illegal tag %d (wire type %d)", fieldNum, wire)
  8975  		}
  8976  		switch fieldNum {
  8977  		case 1:
  8978  			if wireType != 2 {
  8979  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
  8980  			}
  8981  			var stringLen uint64
  8982  			for shift := uint(0); ; shift += 7 {
  8983  				if shift >= 64 {
  8984  					return ErrIntOverflowStructured
  8985  				}
  8986  				if iNdEx >= l {
  8987  					return io.ErrUnexpectedEOF
  8988  				}
  8989  				b := dAtA[iNdEx]
  8990  				iNdEx++
  8991  				stringLen |= (uint64(b) & 0x7F) << shift
  8992  				if b < 0x80 {
  8993  					break
  8994  				}
  8995  			}
  8996  			intStringLen := int(stringLen)
  8997  			if intStringLen < 0 {
  8998  				return ErrInvalidLengthStructured
  8999  			}
  9000  			postIndex := iNdEx + intStringLen
  9001  			if postIndex > l {
  9002  				return io.ErrUnexpectedEOF
  9003  			}
  9004  			m.Name = string(dAtA[iNdEx:postIndex])
  9005  			iNdEx = postIndex
  9006  		case 2:
  9007  			if wireType != 2 {
  9008  				return fmt.Errorf("proto: wrong wireType = %d for field ToExclusive", wireType)
  9009  			}
  9010  			var byteLen int
  9011  			for shift := uint(0); ; shift += 7 {
  9012  				if shift >= 64 {
  9013  					return ErrIntOverflowStructured
  9014  				}
  9015  				if iNdEx >= l {
  9016  					return io.ErrUnexpectedEOF
  9017  				}
  9018  				b := dAtA[iNdEx]
  9019  				iNdEx++
  9020  				byteLen |= (int(b) & 0x7F) << shift
  9021  				if b < 0x80 {
  9022  					break
  9023  				}
  9024  			}
  9025  			if byteLen < 0 {
  9026  				return ErrInvalidLengthStructured
  9027  			}
  9028  			postIndex := iNdEx + byteLen
  9029  			if postIndex > l {
  9030  				return io.ErrUnexpectedEOF
  9031  			}
  9032  			m.ToExclusive = append(m.ToExclusive[:0], dAtA[iNdEx:postIndex]...)
  9033  			if m.ToExclusive == nil {
  9034  				m.ToExclusive = []byte{}
  9035  			}
  9036  			iNdEx = postIndex
  9037  		case 3:
  9038  			if wireType != 2 {
  9039  				return fmt.Errorf("proto: wrong wireType = %d for field FromInclusive", wireType)
  9040  			}
  9041  			var byteLen int
  9042  			for shift := uint(0); ; shift += 7 {
  9043  				if shift >= 64 {
  9044  					return ErrIntOverflowStructured
  9045  				}
  9046  				if iNdEx >= l {
  9047  					return io.ErrUnexpectedEOF
  9048  				}
  9049  				b := dAtA[iNdEx]
  9050  				iNdEx++
  9051  				byteLen |= (int(b) & 0x7F) << shift
  9052  				if b < 0x80 {
  9053  					break
  9054  				}
  9055  			}
  9056  			if byteLen < 0 {
  9057  				return ErrInvalidLengthStructured
  9058  			}
  9059  			postIndex := iNdEx + byteLen
  9060  			if postIndex > l {
  9061  				return io.ErrUnexpectedEOF
  9062  			}
  9063  			m.FromInclusive = append(m.FromInclusive[:0], dAtA[iNdEx:postIndex]...)
  9064  			if m.FromInclusive == nil {
  9065  				m.FromInclusive = []byte{}
  9066  			}
  9067  			iNdEx = postIndex
  9068  		default:
  9069  			iNdEx = preIndex
  9070  			skippy, err := skipStructured(dAtA[iNdEx:])
  9071  			if err != nil {
  9072  				return err
  9073  			}
  9074  			if skippy < 0 {
  9075  				return ErrInvalidLengthStructured
  9076  			}
  9077  			if (iNdEx + skippy) > l {
  9078  				return io.ErrUnexpectedEOF
  9079  			}
  9080  			iNdEx += skippy
  9081  		}
  9082  	}
  9083  
  9084  	if iNdEx > l {
  9085  		return io.ErrUnexpectedEOF
  9086  	}
  9087  	return nil
  9088  }
  9089  func (m *IndexDescriptor) Unmarshal(dAtA []byte) error {
  9090  	l := len(dAtA)
  9091  	iNdEx := 0
  9092  	for iNdEx < l {
  9093  		preIndex := iNdEx
  9094  		var wire uint64
  9095  		for shift := uint(0); ; shift += 7 {
  9096  			if shift >= 64 {
  9097  				return ErrIntOverflowStructured
  9098  			}
  9099  			if iNdEx >= l {
  9100  				return io.ErrUnexpectedEOF
  9101  			}
  9102  			b := dAtA[iNdEx]
  9103  			iNdEx++
  9104  			wire |= (uint64(b) & 0x7F) << shift
  9105  			if b < 0x80 {
  9106  				break
  9107  			}
  9108  		}
  9109  		fieldNum := int32(wire >> 3)
  9110  		wireType := int(wire & 0x7)
  9111  		if wireType == 4 {
  9112  			return fmt.Errorf("proto: IndexDescriptor: wiretype end group for non-group")
  9113  		}
  9114  		if fieldNum <= 0 {
  9115  			return fmt.Errorf("proto: IndexDescriptor: illegal tag %d (wire type %d)", fieldNum, wire)
  9116  		}
  9117  		switch fieldNum {
  9118  		case 1:
  9119  			if wireType != 2 {
  9120  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
  9121  			}
  9122  			var stringLen uint64
  9123  			for shift := uint(0); ; shift += 7 {
  9124  				if shift >= 64 {
  9125  					return ErrIntOverflowStructured
  9126  				}
  9127  				if iNdEx >= l {
  9128  					return io.ErrUnexpectedEOF
  9129  				}
  9130  				b := dAtA[iNdEx]
  9131  				iNdEx++
  9132  				stringLen |= (uint64(b) & 0x7F) << shift
  9133  				if b < 0x80 {
  9134  					break
  9135  				}
  9136  			}
  9137  			intStringLen := int(stringLen)
  9138  			if intStringLen < 0 {
  9139  				return ErrInvalidLengthStructured
  9140  			}
  9141  			postIndex := iNdEx + intStringLen
  9142  			if postIndex > l {
  9143  				return io.ErrUnexpectedEOF
  9144  			}
  9145  			m.Name = string(dAtA[iNdEx:postIndex])
  9146  			iNdEx = postIndex
  9147  		case 2:
  9148  			if wireType != 0 {
  9149  				return fmt.Errorf("proto: wrong wireType = %d for field ID", wireType)
  9150  			}
  9151  			m.ID = 0
  9152  			for shift := uint(0); ; shift += 7 {
  9153  				if shift >= 64 {
  9154  					return ErrIntOverflowStructured
  9155  				}
  9156  				if iNdEx >= l {
  9157  					return io.ErrUnexpectedEOF
  9158  				}
  9159  				b := dAtA[iNdEx]
  9160  				iNdEx++
  9161  				m.ID |= (IndexID(b) & 0x7F) << shift
  9162  				if b < 0x80 {
  9163  					break
  9164  				}
  9165  			}
  9166  		case 3:
  9167  			if wireType != 0 {
  9168  				return fmt.Errorf("proto: wrong wireType = %d for field Unique", wireType)
  9169  			}
  9170  			var v int
  9171  			for shift := uint(0); ; shift += 7 {
  9172  				if shift >= 64 {
  9173  					return ErrIntOverflowStructured
  9174  				}
  9175  				if iNdEx >= l {
  9176  					return io.ErrUnexpectedEOF
  9177  				}
  9178  				b := dAtA[iNdEx]
  9179  				iNdEx++
  9180  				v |= (int(b) & 0x7F) << shift
  9181  				if b < 0x80 {
  9182  					break
  9183  				}
  9184  			}
  9185  			m.Unique = bool(v != 0)
  9186  		case 4:
  9187  			if wireType != 2 {
  9188  				return fmt.Errorf("proto: wrong wireType = %d for field ColumnNames", wireType)
  9189  			}
  9190  			var stringLen uint64
  9191  			for shift := uint(0); ; shift += 7 {
  9192  				if shift >= 64 {
  9193  					return ErrIntOverflowStructured
  9194  				}
  9195  				if iNdEx >= l {
  9196  					return io.ErrUnexpectedEOF
  9197  				}
  9198  				b := dAtA[iNdEx]
  9199  				iNdEx++
  9200  				stringLen |= (uint64(b) & 0x7F) << shift
  9201  				if b < 0x80 {
  9202  					break
  9203  				}
  9204  			}
  9205  			intStringLen := int(stringLen)
  9206  			if intStringLen < 0 {
  9207  				return ErrInvalidLengthStructured
  9208  			}
  9209  			postIndex := iNdEx + intStringLen
  9210  			if postIndex > l {
  9211  				return io.ErrUnexpectedEOF
  9212  			}
  9213  			m.ColumnNames = append(m.ColumnNames, string(dAtA[iNdEx:postIndex]))
  9214  			iNdEx = postIndex
  9215  		case 5:
  9216  			if wireType != 2 {
  9217  				return fmt.Errorf("proto: wrong wireType = %d for field StoreColumnNames", wireType)
  9218  			}
  9219  			var stringLen uint64
  9220  			for shift := uint(0); ; shift += 7 {
  9221  				if shift >= 64 {
  9222  					return ErrIntOverflowStructured
  9223  				}
  9224  				if iNdEx >= l {
  9225  					return io.ErrUnexpectedEOF
  9226  				}
  9227  				b := dAtA[iNdEx]
  9228  				iNdEx++
  9229  				stringLen |= (uint64(b) & 0x7F) << shift
  9230  				if b < 0x80 {
  9231  					break
  9232  				}
  9233  			}
  9234  			intStringLen := int(stringLen)
  9235  			if intStringLen < 0 {
  9236  				return ErrInvalidLengthStructured
  9237  			}
  9238  			postIndex := iNdEx + intStringLen
  9239  			if postIndex > l {
  9240  				return io.ErrUnexpectedEOF
  9241  			}
  9242  			m.StoreColumnNames = append(m.StoreColumnNames, string(dAtA[iNdEx:postIndex]))
  9243  			iNdEx = postIndex
  9244  		case 6:
  9245  			if wireType == 0 {
  9246  				var v ColumnID
  9247  				for shift := uint(0); ; shift += 7 {
  9248  					if shift >= 64 {
  9249  						return ErrIntOverflowStructured
  9250  					}
  9251  					if iNdEx >= l {
  9252  						return io.ErrUnexpectedEOF
  9253  					}
  9254  					b := dAtA[iNdEx]
  9255  					iNdEx++
  9256  					v |= (ColumnID(b) & 0x7F) << shift
  9257  					if b < 0x80 {
  9258  						break
  9259  					}
  9260  				}
  9261  				m.ColumnIDs = append(m.ColumnIDs, v)
  9262  			} else if wireType == 2 {
  9263  				var packedLen int
  9264  				for shift := uint(0); ; shift += 7 {
  9265  					if shift >= 64 {
  9266  						return ErrIntOverflowStructured
  9267  					}
  9268  					if iNdEx >= l {
  9269  						return io.ErrUnexpectedEOF
  9270  					}
  9271  					b := dAtA[iNdEx]
  9272  					iNdEx++
  9273  					packedLen |= (int(b) & 0x7F) << shift
  9274  					if b < 0x80 {
  9275  						break
  9276  					}
  9277  				}
  9278  				if packedLen < 0 {
  9279  					return ErrInvalidLengthStructured
  9280  				}
  9281  				postIndex := iNdEx + packedLen
  9282  				if postIndex > l {
  9283  					return io.ErrUnexpectedEOF
  9284  				}
  9285  				var elementCount int
  9286  				var count int
  9287  				for _, integer := range dAtA {
  9288  					if integer < 128 {
  9289  						count++
  9290  					}
  9291  				}
  9292  				elementCount = count
  9293  				if elementCount != 0 && len(m.ColumnIDs) == 0 {
  9294  					m.ColumnIDs = make([]ColumnID, 0, elementCount)
  9295  				}
  9296  				for iNdEx < postIndex {
  9297  					var v ColumnID
  9298  					for shift := uint(0); ; shift += 7 {
  9299  						if shift >= 64 {
  9300  							return ErrIntOverflowStructured
  9301  						}
  9302  						if iNdEx >= l {
  9303  							return io.ErrUnexpectedEOF
  9304  						}
  9305  						b := dAtA[iNdEx]
  9306  						iNdEx++
  9307  						v |= (ColumnID(b) & 0x7F) << shift
  9308  						if b < 0x80 {
  9309  							break
  9310  						}
  9311  					}
  9312  					m.ColumnIDs = append(m.ColumnIDs, v)
  9313  				}
  9314  			} else {
  9315  				return fmt.Errorf("proto: wrong wireType = %d for field ColumnIDs", wireType)
  9316  			}
  9317  		case 7:
  9318  			if wireType == 0 {
  9319  				var v ColumnID
  9320  				for shift := uint(0); ; shift += 7 {
  9321  					if shift >= 64 {
  9322  						return ErrIntOverflowStructured
  9323  					}
  9324  					if iNdEx >= l {
  9325  						return io.ErrUnexpectedEOF
  9326  					}
  9327  					b := dAtA[iNdEx]
  9328  					iNdEx++
  9329  					v |= (ColumnID(b) & 0x7F) << shift
  9330  					if b < 0x80 {
  9331  						break
  9332  					}
  9333  				}
  9334  				m.ExtraColumnIDs = append(m.ExtraColumnIDs, v)
  9335  			} else if wireType == 2 {
  9336  				var packedLen int
  9337  				for shift := uint(0); ; shift += 7 {
  9338  					if shift >= 64 {
  9339  						return ErrIntOverflowStructured
  9340  					}
  9341  					if iNdEx >= l {
  9342  						return io.ErrUnexpectedEOF
  9343  					}
  9344  					b := dAtA[iNdEx]
  9345  					iNdEx++
  9346  					packedLen |= (int(b) & 0x7F) << shift
  9347  					if b < 0x80 {
  9348  						break
  9349  					}
  9350  				}
  9351  				if packedLen < 0 {
  9352  					return ErrInvalidLengthStructured
  9353  				}
  9354  				postIndex := iNdEx + packedLen
  9355  				if postIndex > l {
  9356  					return io.ErrUnexpectedEOF
  9357  				}
  9358  				var elementCount int
  9359  				var count int
  9360  				for _, integer := range dAtA {
  9361  					if integer < 128 {
  9362  						count++
  9363  					}
  9364  				}
  9365  				elementCount = count
  9366  				if elementCount != 0 && len(m.ExtraColumnIDs) == 0 {
  9367  					m.ExtraColumnIDs = make([]ColumnID, 0, elementCount)
  9368  				}
  9369  				for iNdEx < postIndex {
  9370  					var v ColumnID
  9371  					for shift := uint(0); ; shift += 7 {
  9372  						if shift >= 64 {
  9373  							return ErrIntOverflowStructured
  9374  						}
  9375  						if iNdEx >= l {
  9376  							return io.ErrUnexpectedEOF
  9377  						}
  9378  						b := dAtA[iNdEx]
  9379  						iNdEx++
  9380  						v |= (ColumnID(b) & 0x7F) << shift
  9381  						if b < 0x80 {
  9382  							break
  9383  						}
  9384  					}
  9385  					m.ExtraColumnIDs = append(m.ExtraColumnIDs, v)
  9386  				}
  9387  			} else {
  9388  				return fmt.Errorf("proto: wrong wireType = %d for field ExtraColumnIDs", wireType)
  9389  			}
  9390  		case 8:
  9391  			if wireType == 0 {
  9392  				var v IndexDescriptor_Direction
  9393  				for shift := uint(0); ; shift += 7 {
  9394  					if shift >= 64 {
  9395  						return ErrIntOverflowStructured
  9396  					}
  9397  					if iNdEx >= l {
  9398  						return io.ErrUnexpectedEOF
  9399  					}
  9400  					b := dAtA[iNdEx]
  9401  					iNdEx++
  9402  					v |= (IndexDescriptor_Direction(b) & 0x7F) << shift
  9403  					if b < 0x80 {
  9404  						break
  9405  					}
  9406  				}
  9407  				m.ColumnDirections = append(m.ColumnDirections, v)
  9408  			} else if wireType == 2 {
  9409  				var packedLen int
  9410  				for shift := uint(0); ; shift += 7 {
  9411  					if shift >= 64 {
  9412  						return ErrIntOverflowStructured
  9413  					}
  9414  					if iNdEx >= l {
  9415  						return io.ErrUnexpectedEOF
  9416  					}
  9417  					b := dAtA[iNdEx]
  9418  					iNdEx++
  9419  					packedLen |= (int(b) & 0x7F) << shift
  9420  					if b < 0x80 {
  9421  						break
  9422  					}
  9423  				}
  9424  				if packedLen < 0 {
  9425  					return ErrInvalidLengthStructured
  9426  				}
  9427  				postIndex := iNdEx + packedLen
  9428  				if postIndex > l {
  9429  					return io.ErrUnexpectedEOF
  9430  				}
  9431  				var elementCount int
  9432  				if elementCount != 0 && len(m.ColumnDirections) == 0 {
  9433  					m.ColumnDirections = make([]IndexDescriptor_Direction, 0, elementCount)
  9434  				}
  9435  				for iNdEx < postIndex {
  9436  					var v IndexDescriptor_Direction
  9437  					for shift := uint(0); ; shift += 7 {
  9438  						if shift >= 64 {
  9439  							return ErrIntOverflowStructured
  9440  						}
  9441  						if iNdEx >= l {
  9442  							return io.ErrUnexpectedEOF
  9443  						}
  9444  						b := dAtA[iNdEx]
  9445  						iNdEx++
  9446  						v |= (IndexDescriptor_Direction(b) & 0x7F) << shift
  9447  						if b < 0x80 {
  9448  							break
  9449  						}
  9450  					}
  9451  					m.ColumnDirections = append(m.ColumnDirections, v)
  9452  				}
  9453  			} else {
  9454  				return fmt.Errorf("proto: wrong wireType = %d for field ColumnDirections", wireType)
  9455  			}
  9456  		case 9:
  9457  			if wireType != 2 {
  9458  				return fmt.Errorf("proto: wrong wireType = %d for field ForeignKey", wireType)
  9459  			}
  9460  			var msglen int
  9461  			for shift := uint(0); ; shift += 7 {
  9462  				if shift >= 64 {
  9463  					return ErrIntOverflowStructured
  9464  				}
  9465  				if iNdEx >= l {
  9466  					return io.ErrUnexpectedEOF
  9467  				}
  9468  				b := dAtA[iNdEx]
  9469  				iNdEx++
  9470  				msglen |= (int(b) & 0x7F) << shift
  9471  				if b < 0x80 {
  9472  					break
  9473  				}
  9474  			}
  9475  			if msglen < 0 {
  9476  				return ErrInvalidLengthStructured
  9477  			}
  9478  			postIndex := iNdEx + msglen
  9479  			if postIndex > l {
  9480  				return io.ErrUnexpectedEOF
  9481  			}
  9482  			if err := m.ForeignKey.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9483  				return err
  9484  			}
  9485  			iNdEx = postIndex
  9486  		case 10:
  9487  			if wireType != 2 {
  9488  				return fmt.Errorf("proto: wrong wireType = %d for field ReferencedBy", wireType)
  9489  			}
  9490  			var msglen int
  9491  			for shift := uint(0); ; shift += 7 {
  9492  				if shift >= 64 {
  9493  					return ErrIntOverflowStructured
  9494  				}
  9495  				if iNdEx >= l {
  9496  					return io.ErrUnexpectedEOF
  9497  				}
  9498  				b := dAtA[iNdEx]
  9499  				iNdEx++
  9500  				msglen |= (int(b) & 0x7F) << shift
  9501  				if b < 0x80 {
  9502  					break
  9503  				}
  9504  			}
  9505  			if msglen < 0 {
  9506  				return ErrInvalidLengthStructured
  9507  			}
  9508  			postIndex := iNdEx + msglen
  9509  			if postIndex > l {
  9510  				return io.ErrUnexpectedEOF
  9511  			}
  9512  			m.ReferencedBy = append(m.ReferencedBy, ForeignKeyReference{})
  9513  			if err := m.ReferencedBy[len(m.ReferencedBy)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9514  				return err
  9515  			}
  9516  			iNdEx = postIndex
  9517  		case 11:
  9518  			if wireType != 2 {
  9519  				return fmt.Errorf("proto: wrong wireType = %d for field Interleave", wireType)
  9520  			}
  9521  			var msglen int
  9522  			for shift := uint(0); ; shift += 7 {
  9523  				if shift >= 64 {
  9524  					return ErrIntOverflowStructured
  9525  				}
  9526  				if iNdEx >= l {
  9527  					return io.ErrUnexpectedEOF
  9528  				}
  9529  				b := dAtA[iNdEx]
  9530  				iNdEx++
  9531  				msglen |= (int(b) & 0x7F) << shift
  9532  				if b < 0x80 {
  9533  					break
  9534  				}
  9535  			}
  9536  			if msglen < 0 {
  9537  				return ErrInvalidLengthStructured
  9538  			}
  9539  			postIndex := iNdEx + msglen
  9540  			if postIndex > l {
  9541  				return io.ErrUnexpectedEOF
  9542  			}
  9543  			if err := m.Interleave.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9544  				return err
  9545  			}
  9546  			iNdEx = postIndex
  9547  		case 12:
  9548  			if wireType != 2 {
  9549  				return fmt.Errorf("proto: wrong wireType = %d for field InterleavedBy", wireType)
  9550  			}
  9551  			var msglen int
  9552  			for shift := uint(0); ; shift += 7 {
  9553  				if shift >= 64 {
  9554  					return ErrIntOverflowStructured
  9555  				}
  9556  				if iNdEx >= l {
  9557  					return io.ErrUnexpectedEOF
  9558  				}
  9559  				b := dAtA[iNdEx]
  9560  				iNdEx++
  9561  				msglen |= (int(b) & 0x7F) << shift
  9562  				if b < 0x80 {
  9563  					break
  9564  				}
  9565  			}
  9566  			if msglen < 0 {
  9567  				return ErrInvalidLengthStructured
  9568  			}
  9569  			postIndex := iNdEx + msglen
  9570  			if postIndex > l {
  9571  				return io.ErrUnexpectedEOF
  9572  			}
  9573  			m.InterleavedBy = append(m.InterleavedBy, ForeignKeyReference{})
  9574  			if err := m.InterleavedBy[len(m.InterleavedBy)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9575  				return err
  9576  			}
  9577  			iNdEx = postIndex
  9578  		case 13:
  9579  			if wireType == 0 {
  9580  				var v ColumnID
  9581  				for shift := uint(0); ; shift += 7 {
  9582  					if shift >= 64 {
  9583  						return ErrIntOverflowStructured
  9584  					}
  9585  					if iNdEx >= l {
  9586  						return io.ErrUnexpectedEOF
  9587  					}
  9588  					b := dAtA[iNdEx]
  9589  					iNdEx++
  9590  					v |= (ColumnID(b) & 0x7F) << shift
  9591  					if b < 0x80 {
  9592  						break
  9593  					}
  9594  				}
  9595  				m.CompositeColumnIDs = append(m.CompositeColumnIDs, v)
  9596  			} else if wireType == 2 {
  9597  				var packedLen int
  9598  				for shift := uint(0); ; shift += 7 {
  9599  					if shift >= 64 {
  9600  						return ErrIntOverflowStructured
  9601  					}
  9602  					if iNdEx >= l {
  9603  						return io.ErrUnexpectedEOF
  9604  					}
  9605  					b := dAtA[iNdEx]
  9606  					iNdEx++
  9607  					packedLen |= (int(b) & 0x7F) << shift
  9608  					if b < 0x80 {
  9609  						break
  9610  					}
  9611  				}
  9612  				if packedLen < 0 {
  9613  					return ErrInvalidLengthStructured
  9614  				}
  9615  				postIndex := iNdEx + packedLen
  9616  				if postIndex > l {
  9617  					return io.ErrUnexpectedEOF
  9618  				}
  9619  				var elementCount int
  9620  				var count int
  9621  				for _, integer := range dAtA {
  9622  					if integer < 128 {
  9623  						count++
  9624  					}
  9625  				}
  9626  				elementCount = count
  9627  				if elementCount != 0 && len(m.CompositeColumnIDs) == 0 {
  9628  					m.CompositeColumnIDs = make([]ColumnID, 0, elementCount)
  9629  				}
  9630  				for iNdEx < postIndex {
  9631  					var v ColumnID
  9632  					for shift := uint(0); ; shift += 7 {
  9633  						if shift >= 64 {
  9634  							return ErrIntOverflowStructured
  9635  						}
  9636  						if iNdEx >= l {
  9637  							return io.ErrUnexpectedEOF
  9638  						}
  9639  						b := dAtA[iNdEx]
  9640  						iNdEx++
  9641  						v |= (ColumnID(b) & 0x7F) << shift
  9642  						if b < 0x80 {
  9643  							break
  9644  						}
  9645  					}
  9646  					m.CompositeColumnIDs = append(m.CompositeColumnIDs, v)
  9647  				}
  9648  			} else {
  9649  				return fmt.Errorf("proto: wrong wireType = %d for field CompositeColumnIDs", wireType)
  9650  			}
  9651  		case 14:
  9652  			if wireType == 0 {
  9653  				var v ColumnID
  9654  				for shift := uint(0); ; shift += 7 {
  9655  					if shift >= 64 {
  9656  						return ErrIntOverflowStructured
  9657  					}
  9658  					if iNdEx >= l {
  9659  						return io.ErrUnexpectedEOF
  9660  					}
  9661  					b := dAtA[iNdEx]
  9662  					iNdEx++
  9663  					v |= (ColumnID(b) & 0x7F) << shift
  9664  					if b < 0x80 {
  9665  						break
  9666  					}
  9667  				}
  9668  				m.StoreColumnIDs = append(m.StoreColumnIDs, v)
  9669  			} else if wireType == 2 {
  9670  				var packedLen int
  9671  				for shift := uint(0); ; shift += 7 {
  9672  					if shift >= 64 {
  9673  						return ErrIntOverflowStructured
  9674  					}
  9675  					if iNdEx >= l {
  9676  						return io.ErrUnexpectedEOF
  9677  					}
  9678  					b := dAtA[iNdEx]
  9679  					iNdEx++
  9680  					packedLen |= (int(b) & 0x7F) << shift
  9681  					if b < 0x80 {
  9682  						break
  9683  					}
  9684  				}
  9685  				if packedLen < 0 {
  9686  					return ErrInvalidLengthStructured
  9687  				}
  9688  				postIndex := iNdEx + packedLen
  9689  				if postIndex > l {
  9690  					return io.ErrUnexpectedEOF
  9691  				}
  9692  				var elementCount int
  9693  				var count int
  9694  				for _, integer := range dAtA {
  9695  					if integer < 128 {
  9696  						count++
  9697  					}
  9698  				}
  9699  				elementCount = count
  9700  				if elementCount != 0 && len(m.StoreColumnIDs) == 0 {
  9701  					m.StoreColumnIDs = make([]ColumnID, 0, elementCount)
  9702  				}
  9703  				for iNdEx < postIndex {
  9704  					var v ColumnID
  9705  					for shift := uint(0); ; shift += 7 {
  9706  						if shift >= 64 {
  9707  							return ErrIntOverflowStructured
  9708  						}
  9709  						if iNdEx >= l {
  9710  							return io.ErrUnexpectedEOF
  9711  						}
  9712  						b := dAtA[iNdEx]
  9713  						iNdEx++
  9714  						v |= (ColumnID(b) & 0x7F) << shift
  9715  						if b < 0x80 {
  9716  							break
  9717  						}
  9718  					}
  9719  					m.StoreColumnIDs = append(m.StoreColumnIDs, v)
  9720  				}
  9721  			} else {
  9722  				return fmt.Errorf("proto: wrong wireType = %d for field StoreColumnIDs", wireType)
  9723  			}
  9724  		case 15:
  9725  			if wireType != 2 {
  9726  				return fmt.Errorf("proto: wrong wireType = %d for field Partitioning", wireType)
  9727  			}
  9728  			var msglen int
  9729  			for shift := uint(0); ; shift += 7 {
  9730  				if shift >= 64 {
  9731  					return ErrIntOverflowStructured
  9732  				}
  9733  				if iNdEx >= l {
  9734  					return io.ErrUnexpectedEOF
  9735  				}
  9736  				b := dAtA[iNdEx]
  9737  				iNdEx++
  9738  				msglen |= (int(b) & 0x7F) << shift
  9739  				if b < 0x80 {
  9740  					break
  9741  				}
  9742  			}
  9743  			if msglen < 0 {
  9744  				return ErrInvalidLengthStructured
  9745  			}
  9746  			postIndex := iNdEx + msglen
  9747  			if postIndex > l {
  9748  				return io.ErrUnexpectedEOF
  9749  			}
  9750  			if err := m.Partitioning.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9751  				return err
  9752  			}
  9753  			iNdEx = postIndex
  9754  		case 16:
  9755  			if wireType != 0 {
  9756  				return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType)
  9757  			}
  9758  			m.Type = 0
  9759  			for shift := uint(0); ; shift += 7 {
  9760  				if shift >= 64 {
  9761  					return ErrIntOverflowStructured
  9762  				}
  9763  				if iNdEx >= l {
  9764  					return io.ErrUnexpectedEOF
  9765  				}
  9766  				b := dAtA[iNdEx]
  9767  				iNdEx++
  9768  				m.Type |= (IndexDescriptor_Type(b) & 0x7F) << shift
  9769  				if b < 0x80 {
  9770  					break
  9771  				}
  9772  			}
  9773  		case 17:
  9774  			if wireType != 0 {
  9775  				return fmt.Errorf("proto: wrong wireType = %d for field CreatedExplicitly", wireType)
  9776  			}
  9777  			var v int
  9778  			for shift := uint(0); ; shift += 7 {
  9779  				if shift >= 64 {
  9780  					return ErrIntOverflowStructured
  9781  				}
  9782  				if iNdEx >= l {
  9783  					return io.ErrUnexpectedEOF
  9784  				}
  9785  				b := dAtA[iNdEx]
  9786  				iNdEx++
  9787  				v |= (int(b) & 0x7F) << shift
  9788  				if b < 0x80 {
  9789  					break
  9790  				}
  9791  			}
  9792  			m.CreatedExplicitly = bool(v != 0)
  9793  		case 18:
  9794  			if wireType != 0 {
  9795  				return fmt.Errorf("proto: wrong wireType = %d for field Version", wireType)
  9796  			}
  9797  			m.Version = 0
  9798  			for shift := uint(0); ; shift += 7 {
  9799  				if shift >= 64 {
  9800  					return ErrIntOverflowStructured
  9801  				}
  9802  				if iNdEx >= l {
  9803  					return io.ErrUnexpectedEOF
  9804  				}
  9805  				b := dAtA[iNdEx]
  9806  				iNdEx++
  9807  				m.Version |= (IndexDescriptorVersion(b) & 0x7F) << shift
  9808  				if b < 0x80 {
  9809  					break
  9810  				}
  9811  			}
  9812  		case 19:
  9813  			if wireType != 0 {
  9814  				return fmt.Errorf("proto: wrong wireType = %d for field EncodingType", wireType)
  9815  			}
  9816  			m.EncodingType = 0
  9817  			for shift := uint(0); ; shift += 7 {
  9818  				if shift >= 64 {
  9819  					return ErrIntOverflowStructured
  9820  				}
  9821  				if iNdEx >= l {
  9822  					return io.ErrUnexpectedEOF
  9823  				}
  9824  				b := dAtA[iNdEx]
  9825  				iNdEx++
  9826  				m.EncodingType |= (IndexDescriptorEncodingType(b) & 0x7F) << shift
  9827  				if b < 0x80 {
  9828  					break
  9829  				}
  9830  			}
  9831  		case 20:
  9832  			if wireType != 2 {
  9833  				return fmt.Errorf("proto: wrong wireType = %d for field Sharded", wireType)
  9834  			}
  9835  			var msglen int
  9836  			for shift := uint(0); ; shift += 7 {
  9837  				if shift >= 64 {
  9838  					return ErrIntOverflowStructured
  9839  				}
  9840  				if iNdEx >= l {
  9841  					return io.ErrUnexpectedEOF
  9842  				}
  9843  				b := dAtA[iNdEx]
  9844  				iNdEx++
  9845  				msglen |= (int(b) & 0x7F) << shift
  9846  				if b < 0x80 {
  9847  					break
  9848  				}
  9849  			}
  9850  			if msglen < 0 {
  9851  				return ErrInvalidLengthStructured
  9852  			}
  9853  			postIndex := iNdEx + msglen
  9854  			if postIndex > l {
  9855  				return io.ErrUnexpectedEOF
  9856  			}
  9857  			if err := m.Sharded.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9858  				return err
  9859  			}
  9860  			iNdEx = postIndex
  9861  		case 21:
  9862  			if wireType != 0 {
  9863  				return fmt.Errorf("proto: wrong wireType = %d for field Disabled", wireType)
  9864  			}
  9865  			var v int
  9866  			for shift := uint(0); ; shift += 7 {
  9867  				if shift >= 64 {
  9868  					return ErrIntOverflowStructured
  9869  				}
  9870  				if iNdEx >= l {
  9871  					return io.ErrUnexpectedEOF
  9872  				}
  9873  				b := dAtA[iNdEx]
  9874  				iNdEx++
  9875  				v |= (int(b) & 0x7F) << shift
  9876  				if b < 0x80 {
  9877  					break
  9878  				}
  9879  			}
  9880  			m.Disabled = bool(v != 0)
  9881  		case 22:
  9882  			if wireType != 2 {
  9883  				return fmt.Errorf("proto: wrong wireType = %d for field GeoConfig", wireType)
  9884  			}
  9885  			var msglen int
  9886  			for shift := uint(0); ; shift += 7 {
  9887  				if shift >= 64 {
  9888  					return ErrIntOverflowStructured
  9889  				}
  9890  				if iNdEx >= l {
  9891  					return io.ErrUnexpectedEOF
  9892  				}
  9893  				b := dAtA[iNdEx]
  9894  				iNdEx++
  9895  				msglen |= (int(b) & 0x7F) << shift
  9896  				if b < 0x80 {
  9897  					break
  9898  				}
  9899  			}
  9900  			if msglen < 0 {
  9901  				return ErrInvalidLengthStructured
  9902  			}
  9903  			postIndex := iNdEx + msglen
  9904  			if postIndex > l {
  9905  				return io.ErrUnexpectedEOF
  9906  			}
  9907  			if err := m.GeoConfig.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  9908  				return err
  9909  			}
  9910  			iNdEx = postIndex
  9911  		case 23:
  9912  			if wireType != 2 {
  9913  				return fmt.Errorf("proto: wrong wireType = %d for field Predicate", wireType)
  9914  			}
  9915  			var stringLen uint64
  9916  			for shift := uint(0); ; shift += 7 {
  9917  				if shift >= 64 {
  9918  					return ErrIntOverflowStructured
  9919  				}
  9920  				if iNdEx >= l {
  9921  					return io.ErrUnexpectedEOF
  9922  				}
  9923  				b := dAtA[iNdEx]
  9924  				iNdEx++
  9925  				stringLen |= (uint64(b) & 0x7F) << shift
  9926  				if b < 0x80 {
  9927  					break
  9928  				}
  9929  			}
  9930  			intStringLen := int(stringLen)
  9931  			if intStringLen < 0 {
  9932  				return ErrInvalidLengthStructured
  9933  			}
  9934  			postIndex := iNdEx + intStringLen
  9935  			if postIndex > l {
  9936  				return io.ErrUnexpectedEOF
  9937  			}
  9938  			m.Predicate = string(dAtA[iNdEx:postIndex])
  9939  			iNdEx = postIndex
  9940  		default:
  9941  			iNdEx = preIndex
  9942  			skippy, err := skipStructured(dAtA[iNdEx:])
  9943  			if err != nil {
  9944  				return err
  9945  			}
  9946  			if skippy < 0 {
  9947  				return ErrInvalidLengthStructured
  9948  			}
  9949  			if (iNdEx + skippy) > l {
  9950  				return io.ErrUnexpectedEOF
  9951  			}
  9952  			iNdEx += skippy
  9953  		}
  9954  	}
  9955  
  9956  	if iNdEx > l {
  9957  		return io.ErrUnexpectedEOF
  9958  	}
  9959  	return nil
  9960  }
  9961  func (m *ConstraintToUpdate) Unmarshal(dAtA []byte) error {
  9962  	var hasFields [1]uint64
  9963  	l := len(dAtA)
  9964  	iNdEx := 0
  9965  	for iNdEx < l {
  9966  		preIndex := iNdEx
  9967  		var wire uint64
  9968  		for shift := uint(0); ; shift += 7 {
  9969  			if shift >= 64 {
  9970  				return ErrIntOverflowStructured
  9971  			}
  9972  			if iNdEx >= l {
  9973  				return io.ErrUnexpectedEOF
  9974  			}
  9975  			b := dAtA[iNdEx]
  9976  			iNdEx++
  9977  			wire |= (uint64(b) & 0x7F) << shift
  9978  			if b < 0x80 {
  9979  				break
  9980  			}
  9981  		}
  9982  		fieldNum := int32(wire >> 3)
  9983  		wireType := int(wire & 0x7)
  9984  		if wireType == 4 {
  9985  			return fmt.Errorf("proto: ConstraintToUpdate: wiretype end group for non-group")
  9986  		}
  9987  		if fieldNum <= 0 {
  9988  			return fmt.Errorf("proto: ConstraintToUpdate: illegal tag %d (wire type %d)", fieldNum, wire)
  9989  		}
  9990  		switch fieldNum {
  9991  		case 1:
  9992  			if wireType != 0 {
  9993  				return fmt.Errorf("proto: wrong wireType = %d for field ConstraintType", wireType)
  9994  			}
  9995  			m.ConstraintType = 0
  9996  			for shift := uint(0); ; shift += 7 {
  9997  				if shift >= 64 {
  9998  					return ErrIntOverflowStructured
  9999  				}
 10000  				if iNdEx >= l {
 10001  					return io.ErrUnexpectedEOF
 10002  				}
 10003  				b := dAtA[iNdEx]
 10004  				iNdEx++
 10005  				m.ConstraintType |= (ConstraintToUpdate_ConstraintType(b) & 0x7F) << shift
 10006  				if b < 0x80 {
 10007  					break
 10008  				}
 10009  			}
 10010  			hasFields[0] |= uint64(0x00000001)
 10011  		case 2:
 10012  			if wireType != 2 {
 10013  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
 10014  			}
 10015  			var stringLen uint64
 10016  			for shift := uint(0); ; shift += 7 {
 10017  				if shift >= 64 {
 10018  					return ErrIntOverflowStructured
 10019  				}
 10020  				if iNdEx >= l {
 10021  					return io.ErrUnexpectedEOF
 10022  				}
 10023  				b := dAtA[iNdEx]
 10024  				iNdEx++
 10025  				stringLen |= (uint64(b) & 0x7F) << shift
 10026  				if b < 0x80 {
 10027  					break
 10028  				}
 10029  			}
 10030  			intStringLen := int(stringLen)
 10031  			if intStringLen < 0 {
 10032  				return ErrInvalidLengthStructured
 10033  			}
 10034  			postIndex := iNdEx + intStringLen
 10035  			if postIndex > l {
 10036  				return io.ErrUnexpectedEOF
 10037  			}
 10038  			m.Name = string(dAtA[iNdEx:postIndex])
 10039  			iNdEx = postIndex
 10040  			hasFields[0] |= uint64(0x00000002)
 10041  		case 3:
 10042  			if wireType != 2 {
 10043  				return fmt.Errorf("proto: wrong wireType = %d for field Check", wireType)
 10044  			}
 10045  			var msglen int
 10046  			for shift := uint(0); ; shift += 7 {
 10047  				if shift >= 64 {
 10048  					return ErrIntOverflowStructured
 10049  				}
 10050  				if iNdEx >= l {
 10051  					return io.ErrUnexpectedEOF
 10052  				}
 10053  				b := dAtA[iNdEx]
 10054  				iNdEx++
 10055  				msglen |= (int(b) & 0x7F) << shift
 10056  				if b < 0x80 {
 10057  					break
 10058  				}
 10059  			}
 10060  			if msglen < 0 {
 10061  				return ErrInvalidLengthStructured
 10062  			}
 10063  			postIndex := iNdEx + msglen
 10064  			if postIndex > l {
 10065  				return io.ErrUnexpectedEOF
 10066  			}
 10067  			if err := m.Check.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 10068  				return err
 10069  			}
 10070  			iNdEx = postIndex
 10071  		case 4:
 10072  			if wireType != 2 {
 10073  				return fmt.Errorf("proto: wrong wireType = %d for field ForeignKey", wireType)
 10074  			}
 10075  			var msglen int
 10076  			for shift := uint(0); ; shift += 7 {
 10077  				if shift >= 64 {
 10078  					return ErrIntOverflowStructured
 10079  				}
 10080  				if iNdEx >= l {
 10081  					return io.ErrUnexpectedEOF
 10082  				}
 10083  				b := dAtA[iNdEx]
 10084  				iNdEx++
 10085  				msglen |= (int(b) & 0x7F) << shift
 10086  				if b < 0x80 {
 10087  					break
 10088  				}
 10089  			}
 10090  			if msglen < 0 {
 10091  				return ErrInvalidLengthStructured
 10092  			}
 10093  			postIndex := iNdEx + msglen
 10094  			if postIndex > l {
 10095  				return io.ErrUnexpectedEOF
 10096  			}
 10097  			if err := m.ForeignKey.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 10098  				return err
 10099  			}
 10100  			iNdEx = postIndex
 10101  		case 6:
 10102  			if wireType != 0 {
 10103  				return fmt.Errorf("proto: wrong wireType = %d for field NotNullColumn", wireType)
 10104  			}
 10105  			m.NotNullColumn = 0
 10106  			for shift := uint(0); ; shift += 7 {
 10107  				if shift >= 64 {
 10108  					return ErrIntOverflowStructured
 10109  				}
 10110  				if iNdEx >= l {
 10111  					return io.ErrUnexpectedEOF
 10112  				}
 10113  				b := dAtA[iNdEx]
 10114  				iNdEx++
 10115  				m.NotNullColumn |= (ColumnID(b) & 0x7F) << shift
 10116  				if b < 0x80 {
 10117  					break
 10118  				}
 10119  			}
 10120  		default:
 10121  			iNdEx = preIndex
 10122  			skippy, err := skipStructured(dAtA[iNdEx:])
 10123  			if err != nil {
 10124  				return err
 10125  			}
 10126  			if skippy < 0 {
 10127  				return ErrInvalidLengthStructured
 10128  			}
 10129  			if (iNdEx + skippy) > l {
 10130  				return io.ErrUnexpectedEOF
 10131  			}
 10132  			iNdEx += skippy
 10133  		}
 10134  	}
 10135  	if hasFields[0]&uint64(0x00000001) == 0 {
 10136  		return github_com_gogo_protobuf_proto.NewRequiredNotSetError("constraint_type")
 10137  	}
 10138  	if hasFields[0]&uint64(0x00000002) == 0 {
 10139  		return github_com_gogo_protobuf_proto.NewRequiredNotSetError("name")
 10140  	}
 10141  
 10142  	if iNdEx > l {
 10143  		return io.ErrUnexpectedEOF
 10144  	}
 10145  	return nil
 10146  }
 10147  func (m *PrimaryKeySwap) Unmarshal(dAtA []byte) error {
 10148  	l := len(dAtA)
 10149  	iNdEx := 0
 10150  	for iNdEx < l {
 10151  		preIndex := iNdEx
 10152  		var wire uint64
 10153  		for shift := uint(0); ; shift += 7 {
 10154  			if shift >= 64 {
 10155  				return ErrIntOverflowStructured
 10156  			}
 10157  			if iNdEx >= l {
 10158  				return io.ErrUnexpectedEOF
 10159  			}
 10160  			b := dAtA[iNdEx]
 10161  			iNdEx++
 10162  			wire |= (uint64(b) & 0x7F) << shift
 10163  			if b < 0x80 {
 10164  				break
 10165  			}
 10166  		}
 10167  		fieldNum := int32(wire >> 3)
 10168  		wireType := int(wire & 0x7)
 10169  		if wireType == 4 {
 10170  			return fmt.Errorf("proto: PrimaryKeySwap: wiretype end group for non-group")
 10171  		}
 10172  		if fieldNum <= 0 {
 10173  			return fmt.Errorf("proto: PrimaryKeySwap: illegal tag %d (wire type %d)", fieldNum, wire)
 10174  		}
 10175  		switch fieldNum {
 10176  		case 1:
 10177  			if wireType != 0 {
 10178  				return fmt.Errorf("proto: wrong wireType = %d for field NewPrimaryIndexId", wireType)
 10179  			}
 10180  			m.NewPrimaryIndexId = 0
 10181  			for shift := uint(0); ; shift += 7 {
 10182  				if shift >= 64 {
 10183  					return ErrIntOverflowStructured
 10184  				}
 10185  				if iNdEx >= l {
 10186  					return io.ErrUnexpectedEOF
 10187  				}
 10188  				b := dAtA[iNdEx]
 10189  				iNdEx++
 10190  				m.NewPrimaryIndexId |= (IndexID(b) & 0x7F) << shift
 10191  				if b < 0x80 {
 10192  					break
 10193  				}
 10194  			}
 10195  		case 2:
 10196  			if wireType == 0 {
 10197  				var v IndexID
 10198  				for shift := uint(0); ; shift += 7 {
 10199  					if shift >= 64 {
 10200  						return ErrIntOverflowStructured
 10201  					}
 10202  					if iNdEx >= l {
 10203  						return io.ErrUnexpectedEOF
 10204  					}
 10205  					b := dAtA[iNdEx]
 10206  					iNdEx++
 10207  					v |= (IndexID(b) & 0x7F) << shift
 10208  					if b < 0x80 {
 10209  						break
 10210  					}
 10211  				}
 10212  				m.OldIndexes = append(m.OldIndexes, v)
 10213  			} else if wireType == 2 {
 10214  				var packedLen int
 10215  				for shift := uint(0); ; shift += 7 {
 10216  					if shift >= 64 {
 10217  						return ErrIntOverflowStructured
 10218  					}
 10219  					if iNdEx >= l {
 10220  						return io.ErrUnexpectedEOF
 10221  					}
 10222  					b := dAtA[iNdEx]
 10223  					iNdEx++
 10224  					packedLen |= (int(b) & 0x7F) << shift
 10225  					if b < 0x80 {
 10226  						break
 10227  					}
 10228  				}
 10229  				if packedLen < 0 {
 10230  					return ErrInvalidLengthStructured
 10231  				}
 10232  				postIndex := iNdEx + packedLen
 10233  				if postIndex > l {
 10234  					return io.ErrUnexpectedEOF
 10235  				}
 10236  				var elementCount int
 10237  				var count int
 10238  				for _, integer := range dAtA {
 10239  					if integer < 128 {
 10240  						count++
 10241  					}
 10242  				}
 10243  				elementCount = count
 10244  				if elementCount != 0 && len(m.OldIndexes) == 0 {
 10245  					m.OldIndexes = make([]IndexID, 0, elementCount)
 10246  				}
 10247  				for iNdEx < postIndex {
 10248  					var v IndexID
 10249  					for shift := uint(0); ; shift += 7 {
 10250  						if shift >= 64 {
 10251  							return ErrIntOverflowStructured
 10252  						}
 10253  						if iNdEx >= l {
 10254  							return io.ErrUnexpectedEOF
 10255  						}
 10256  						b := dAtA[iNdEx]
 10257  						iNdEx++
 10258  						v |= (IndexID(b) & 0x7F) << shift
 10259  						if b < 0x80 {
 10260  							break
 10261  						}
 10262  					}
 10263  					m.OldIndexes = append(m.OldIndexes, v)
 10264  				}
 10265  			} else {
 10266  				return fmt.Errorf("proto: wrong wireType = %d for field OldIndexes", wireType)
 10267  			}
 10268  		case 3:
 10269  			if wireType == 0 {
 10270  				var v IndexID
 10271  				for shift := uint(0); ; shift += 7 {
 10272  					if shift >= 64 {
 10273  						return ErrIntOverflowStructured
 10274  					}
 10275  					if iNdEx >= l {
 10276  						return io.ErrUnexpectedEOF
 10277  					}
 10278  					b := dAtA[iNdEx]
 10279  					iNdEx++
 10280  					v |= (IndexID(b) & 0x7F) << shift
 10281  					if b < 0x80 {
 10282  						break
 10283  					}
 10284  				}
 10285  				m.NewIndexes = append(m.NewIndexes, v)
 10286  			} else if wireType == 2 {
 10287  				var packedLen int
 10288  				for shift := uint(0); ; shift += 7 {
 10289  					if shift >= 64 {
 10290  						return ErrIntOverflowStructured
 10291  					}
 10292  					if iNdEx >= l {
 10293  						return io.ErrUnexpectedEOF
 10294  					}
 10295  					b := dAtA[iNdEx]
 10296  					iNdEx++
 10297  					packedLen |= (int(b) & 0x7F) << shift
 10298  					if b < 0x80 {
 10299  						break
 10300  					}
 10301  				}
 10302  				if packedLen < 0 {
 10303  					return ErrInvalidLengthStructured
 10304  				}
 10305  				postIndex := iNdEx + packedLen
 10306  				if postIndex > l {
 10307  					return io.ErrUnexpectedEOF
 10308  				}
 10309  				var elementCount int
 10310  				var count int
 10311  				for _, integer := range dAtA {
 10312  					if integer < 128 {
 10313  						count++
 10314  					}
 10315  				}
 10316  				elementCount = count
 10317  				if elementCount != 0 && len(m.NewIndexes) == 0 {
 10318  					m.NewIndexes = make([]IndexID, 0, elementCount)
 10319  				}
 10320  				for iNdEx < postIndex {
 10321  					var v IndexID
 10322  					for shift := uint(0); ; shift += 7 {
 10323  						if shift >= 64 {
 10324  							return ErrIntOverflowStructured
 10325  						}
 10326  						if iNdEx >= l {
 10327  							return io.ErrUnexpectedEOF
 10328  						}
 10329  						b := dAtA[iNdEx]
 10330  						iNdEx++
 10331  						v |= (IndexID(b) & 0x7F) << shift
 10332  						if b < 0x80 {
 10333  							break
 10334  						}
 10335  					}
 10336  					m.NewIndexes = append(m.NewIndexes, v)
 10337  				}
 10338  			} else {
 10339  				return fmt.Errorf("proto: wrong wireType = %d for field NewIndexes", wireType)
 10340  			}
 10341  		case 4:
 10342  			if wireType != 0 {
 10343  				return fmt.Errorf("proto: wrong wireType = %d for field OldPrimaryIndexId", wireType)
 10344  			}
 10345  			m.OldPrimaryIndexId = 0
 10346  			for shift := uint(0); ; shift += 7 {
 10347  				if shift >= 64 {
 10348  					return ErrIntOverflowStructured
 10349  				}
 10350  				if iNdEx >= l {
 10351  					return io.ErrUnexpectedEOF
 10352  				}
 10353  				b := dAtA[iNdEx]
 10354  				iNdEx++
 10355  				m.OldPrimaryIndexId |= (IndexID(b) & 0x7F) << shift
 10356  				if b < 0x80 {
 10357  					break
 10358  				}
 10359  			}
 10360  		default:
 10361  			iNdEx = preIndex
 10362  			skippy, err := skipStructured(dAtA[iNdEx:])
 10363  			if err != nil {
 10364  				return err
 10365  			}
 10366  			if skippy < 0 {
 10367  				return ErrInvalidLengthStructured
 10368  			}
 10369  			if (iNdEx + skippy) > l {
 10370  				return io.ErrUnexpectedEOF
 10371  			}
 10372  			iNdEx += skippy
 10373  		}
 10374  	}
 10375  
 10376  	if iNdEx > l {
 10377  		return io.ErrUnexpectedEOF
 10378  	}
 10379  	return nil
 10380  }
 10381  func (m *ComputedColumnSwap) Unmarshal(dAtA []byte) error {
 10382  	l := len(dAtA)
 10383  	iNdEx := 0
 10384  	for iNdEx < l {
 10385  		preIndex := iNdEx
 10386  		var wire uint64
 10387  		for shift := uint(0); ; shift += 7 {
 10388  			if shift >= 64 {
 10389  				return ErrIntOverflowStructured
 10390  			}
 10391  			if iNdEx >= l {
 10392  				return io.ErrUnexpectedEOF
 10393  			}
 10394  			b := dAtA[iNdEx]
 10395  			iNdEx++
 10396  			wire |= (uint64(b) & 0x7F) << shift
 10397  			if b < 0x80 {
 10398  				break
 10399  			}
 10400  		}
 10401  		fieldNum := int32(wire >> 3)
 10402  		wireType := int(wire & 0x7)
 10403  		if wireType == 4 {
 10404  			return fmt.Errorf("proto: ComputedColumnSwap: wiretype end group for non-group")
 10405  		}
 10406  		if fieldNum <= 0 {
 10407  			return fmt.Errorf("proto: ComputedColumnSwap: illegal tag %d (wire type %d)", fieldNum, wire)
 10408  		}
 10409  		switch fieldNum {
 10410  		case 1:
 10411  			if wireType != 0 {
 10412  				return fmt.Errorf("proto: wrong wireType = %d for field NewColumnId", wireType)
 10413  			}
 10414  			m.NewColumnId = 0
 10415  			for shift := uint(0); ; shift += 7 {
 10416  				if shift >= 64 {
 10417  					return ErrIntOverflowStructured
 10418  				}
 10419  				if iNdEx >= l {
 10420  					return io.ErrUnexpectedEOF
 10421  				}
 10422  				b := dAtA[iNdEx]
 10423  				iNdEx++
 10424  				m.NewColumnId |= (ColumnID(b) & 0x7F) << shift
 10425  				if b < 0x80 {
 10426  					break
 10427  				}
 10428  			}
 10429  		case 2:
 10430  			if wireType != 0 {
 10431  				return fmt.Errorf("proto: wrong wireType = %d for field OldColumnId", wireType)
 10432  			}
 10433  			m.OldColumnId = 0
 10434  			for shift := uint(0); ; shift += 7 {
 10435  				if shift >= 64 {
 10436  					return ErrIntOverflowStructured
 10437  				}
 10438  				if iNdEx >= l {
 10439  					return io.ErrUnexpectedEOF
 10440  				}
 10441  				b := dAtA[iNdEx]
 10442  				iNdEx++
 10443  				m.OldColumnId |= (ColumnID(b) & 0x7F) << shift
 10444  				if b < 0x80 {
 10445  					break
 10446  				}
 10447  			}
 10448  		default:
 10449  			iNdEx = preIndex
 10450  			skippy, err := skipStructured(dAtA[iNdEx:])
 10451  			if err != nil {
 10452  				return err
 10453  			}
 10454  			if skippy < 0 {
 10455  				return ErrInvalidLengthStructured
 10456  			}
 10457  			if (iNdEx + skippy) > l {
 10458  				return io.ErrUnexpectedEOF
 10459  			}
 10460  			iNdEx += skippy
 10461  		}
 10462  	}
 10463  
 10464  	if iNdEx > l {
 10465  		return io.ErrUnexpectedEOF
 10466  	}
 10467  	return nil
 10468  }
 10469  func (m *DescriptorMutation) Unmarshal(dAtA []byte) error {
 10470  	l := len(dAtA)
 10471  	iNdEx := 0
 10472  	for iNdEx < l {
 10473  		preIndex := iNdEx
 10474  		var wire uint64
 10475  		for shift := uint(0); ; shift += 7 {
 10476  			if shift >= 64 {
 10477  				return ErrIntOverflowStructured
 10478  			}
 10479  			if iNdEx >= l {
 10480  				return io.ErrUnexpectedEOF
 10481  			}
 10482  			b := dAtA[iNdEx]
 10483  			iNdEx++
 10484  			wire |= (uint64(b) & 0x7F) << shift
 10485  			if b < 0x80 {
 10486  				break
 10487  			}
 10488  		}
 10489  		fieldNum := int32(wire >> 3)
 10490  		wireType := int(wire & 0x7)
 10491  		if wireType == 4 {
 10492  			return fmt.Errorf("proto: DescriptorMutation: wiretype end group for non-group")
 10493  		}
 10494  		if fieldNum <= 0 {
 10495  			return fmt.Errorf("proto: DescriptorMutation: illegal tag %d (wire type %d)", fieldNum, wire)
 10496  		}
 10497  		switch fieldNum {
 10498  		case 1:
 10499  			if wireType != 2 {
 10500  				return fmt.Errorf("proto: wrong wireType = %d for field Column", wireType)
 10501  			}
 10502  			var msglen int
 10503  			for shift := uint(0); ; shift += 7 {
 10504  				if shift >= 64 {
 10505  					return ErrIntOverflowStructured
 10506  				}
 10507  				if iNdEx >= l {
 10508  					return io.ErrUnexpectedEOF
 10509  				}
 10510  				b := dAtA[iNdEx]
 10511  				iNdEx++
 10512  				msglen |= (int(b) & 0x7F) << shift
 10513  				if b < 0x80 {
 10514  					break
 10515  				}
 10516  			}
 10517  			if msglen < 0 {
 10518  				return ErrInvalidLengthStructured
 10519  			}
 10520  			postIndex := iNdEx + msglen
 10521  			if postIndex > l {
 10522  				return io.ErrUnexpectedEOF
 10523  			}
 10524  			v := &ColumnDescriptor{}
 10525  			if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 10526  				return err
 10527  			}
 10528  			m.Descriptor_ = &DescriptorMutation_Column{v}
 10529  			iNdEx = postIndex
 10530  		case 2:
 10531  			if wireType != 2 {
 10532  				return fmt.Errorf("proto: wrong wireType = %d for field Index", wireType)
 10533  			}
 10534  			var msglen int
 10535  			for shift := uint(0); ; shift += 7 {
 10536  				if shift >= 64 {
 10537  					return ErrIntOverflowStructured
 10538  				}
 10539  				if iNdEx >= l {
 10540  					return io.ErrUnexpectedEOF
 10541  				}
 10542  				b := dAtA[iNdEx]
 10543  				iNdEx++
 10544  				msglen |= (int(b) & 0x7F) << shift
 10545  				if b < 0x80 {
 10546  					break
 10547  				}
 10548  			}
 10549  			if msglen < 0 {
 10550  				return ErrInvalidLengthStructured
 10551  			}
 10552  			postIndex := iNdEx + msglen
 10553  			if postIndex > l {
 10554  				return io.ErrUnexpectedEOF
 10555  			}
 10556  			v := &IndexDescriptor{}
 10557  			if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 10558  				return err
 10559  			}
 10560  			m.Descriptor_ = &DescriptorMutation_Index{v}
 10561  			iNdEx = postIndex
 10562  		case 3:
 10563  			if wireType != 0 {
 10564  				return fmt.Errorf("proto: wrong wireType = %d for field State", wireType)
 10565  			}
 10566  			m.State = 0
 10567  			for shift := uint(0); ; shift += 7 {
 10568  				if shift >= 64 {
 10569  					return ErrIntOverflowStructured
 10570  				}
 10571  				if iNdEx >= l {
 10572  					return io.ErrUnexpectedEOF
 10573  				}
 10574  				b := dAtA[iNdEx]
 10575  				iNdEx++
 10576  				m.State |= (DescriptorMutation_State(b) & 0x7F) << shift
 10577  				if b < 0x80 {
 10578  					break
 10579  				}
 10580  			}
 10581  		case 4:
 10582  			if wireType != 0 {
 10583  				return fmt.Errorf("proto: wrong wireType = %d for field Direction", wireType)
 10584  			}
 10585  			m.Direction = 0
 10586  			for shift := uint(0); ; shift += 7 {
 10587  				if shift >= 64 {
 10588  					return ErrIntOverflowStructured
 10589  				}
 10590  				if iNdEx >= l {
 10591  					return io.ErrUnexpectedEOF
 10592  				}
 10593  				b := dAtA[iNdEx]
 10594  				iNdEx++
 10595  				m.Direction |= (DescriptorMutation_Direction(b) & 0x7F) << shift
 10596  				if b < 0x80 {
 10597  					break
 10598  				}
 10599  			}
 10600  		case 5:
 10601  			if wireType != 0 {
 10602  				return fmt.Errorf("proto: wrong wireType = %d for field MutationID", wireType)
 10603  			}
 10604  			m.MutationID = 0
 10605  			for shift := uint(0); ; shift += 7 {
 10606  				if shift >= 64 {
 10607  					return ErrIntOverflowStructured
 10608  				}
 10609  				if iNdEx >= l {
 10610  					return io.ErrUnexpectedEOF
 10611  				}
 10612  				b := dAtA[iNdEx]
 10613  				iNdEx++
 10614  				m.MutationID |= (MutationID(b) & 0x7F) << shift
 10615  				if b < 0x80 {
 10616  					break
 10617  				}
 10618  			}
 10619  		case 7:
 10620  			if wireType != 0 {
 10621  				return fmt.Errorf("proto: wrong wireType = %d for field Rollback", wireType)
 10622  			}
 10623  			var v int
 10624  			for shift := uint(0); ; shift += 7 {
 10625  				if shift >= 64 {
 10626  					return ErrIntOverflowStructured
 10627  				}
 10628  				if iNdEx >= l {
 10629  					return io.ErrUnexpectedEOF
 10630  				}
 10631  				b := dAtA[iNdEx]
 10632  				iNdEx++
 10633  				v |= (int(b) & 0x7F) << shift
 10634  				if b < 0x80 {
 10635  					break
 10636  				}
 10637  			}
 10638  			m.Rollback = bool(v != 0)
 10639  		case 8:
 10640  			if wireType != 2 {
 10641  				return fmt.Errorf("proto: wrong wireType = %d for field Constraint", wireType)
 10642  			}
 10643  			var msglen int
 10644  			for shift := uint(0); ; shift += 7 {
 10645  				if shift >= 64 {
 10646  					return ErrIntOverflowStructured
 10647  				}
 10648  				if iNdEx >= l {
 10649  					return io.ErrUnexpectedEOF
 10650  				}
 10651  				b := dAtA[iNdEx]
 10652  				iNdEx++
 10653  				msglen |= (int(b) & 0x7F) << shift
 10654  				if b < 0x80 {
 10655  					break
 10656  				}
 10657  			}
 10658  			if msglen < 0 {
 10659  				return ErrInvalidLengthStructured
 10660  			}
 10661  			postIndex := iNdEx + msglen
 10662  			if postIndex > l {
 10663  				return io.ErrUnexpectedEOF
 10664  			}
 10665  			v := &ConstraintToUpdate{}
 10666  			if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 10667  				return err
 10668  			}
 10669  			m.Descriptor_ = &DescriptorMutation_Constraint{v}
 10670  			iNdEx = postIndex
 10671  		case 9:
 10672  			if wireType != 2 {
 10673  				return fmt.Errorf("proto: wrong wireType = %d for field PrimaryKeySwap", wireType)
 10674  			}
 10675  			var msglen int
 10676  			for shift := uint(0); ; shift += 7 {
 10677  				if shift >= 64 {
 10678  					return ErrIntOverflowStructured
 10679  				}
 10680  				if iNdEx >= l {
 10681  					return io.ErrUnexpectedEOF
 10682  				}
 10683  				b := dAtA[iNdEx]
 10684  				iNdEx++
 10685  				msglen |= (int(b) & 0x7F) << shift
 10686  				if b < 0x80 {
 10687  					break
 10688  				}
 10689  			}
 10690  			if msglen < 0 {
 10691  				return ErrInvalidLengthStructured
 10692  			}
 10693  			postIndex := iNdEx + msglen
 10694  			if postIndex > l {
 10695  				return io.ErrUnexpectedEOF
 10696  			}
 10697  			v := &PrimaryKeySwap{}
 10698  			if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 10699  				return err
 10700  			}
 10701  			m.Descriptor_ = &DescriptorMutation_PrimaryKeySwap{v}
 10702  			iNdEx = postIndex
 10703  		case 10:
 10704  			if wireType != 2 {
 10705  				return fmt.Errorf("proto: wrong wireType = %d for field ComputedColumnSwap", wireType)
 10706  			}
 10707  			var msglen int
 10708  			for shift := uint(0); ; shift += 7 {
 10709  				if shift >= 64 {
 10710  					return ErrIntOverflowStructured
 10711  				}
 10712  				if iNdEx >= l {
 10713  					return io.ErrUnexpectedEOF
 10714  				}
 10715  				b := dAtA[iNdEx]
 10716  				iNdEx++
 10717  				msglen |= (int(b) & 0x7F) << shift
 10718  				if b < 0x80 {
 10719  					break
 10720  				}
 10721  			}
 10722  			if msglen < 0 {
 10723  				return ErrInvalidLengthStructured
 10724  			}
 10725  			postIndex := iNdEx + msglen
 10726  			if postIndex > l {
 10727  				return io.ErrUnexpectedEOF
 10728  			}
 10729  			v := &ComputedColumnSwap{}
 10730  			if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 10731  				return err
 10732  			}
 10733  			m.Descriptor_ = &DescriptorMutation_ComputedColumnSwap{v}
 10734  			iNdEx = postIndex
 10735  		default:
 10736  			iNdEx = preIndex
 10737  			skippy, err := skipStructured(dAtA[iNdEx:])
 10738  			if err != nil {
 10739  				return err
 10740  			}
 10741  			if skippy < 0 {
 10742  				return ErrInvalidLengthStructured
 10743  			}
 10744  			if (iNdEx + skippy) > l {
 10745  				return io.ErrUnexpectedEOF
 10746  			}
 10747  			iNdEx += skippy
 10748  		}
 10749  	}
 10750  
 10751  	if iNdEx > l {
 10752  		return io.ErrUnexpectedEOF
 10753  	}
 10754  	return nil
 10755  }
 10756  func (m *TableDescriptor) Unmarshal(dAtA []byte) error {
 10757  	l := len(dAtA)
 10758  	iNdEx := 0
 10759  	for iNdEx < l {
 10760  		preIndex := iNdEx
 10761  		var wire uint64
 10762  		for shift := uint(0); ; shift += 7 {
 10763  			if shift >= 64 {
 10764  				return ErrIntOverflowStructured
 10765  			}
 10766  			if iNdEx >= l {
 10767  				return io.ErrUnexpectedEOF
 10768  			}
 10769  			b := dAtA[iNdEx]
 10770  			iNdEx++
 10771  			wire |= (uint64(b) & 0x7F) << shift
 10772  			if b < 0x80 {
 10773  				break
 10774  			}
 10775  		}
 10776  		fieldNum := int32(wire >> 3)
 10777  		wireType := int(wire & 0x7)
 10778  		if wireType == 4 {
 10779  			return fmt.Errorf("proto: TableDescriptor: wiretype end group for non-group")
 10780  		}
 10781  		if fieldNum <= 0 {
 10782  			return fmt.Errorf("proto: TableDescriptor: illegal tag %d (wire type %d)", fieldNum, wire)
 10783  		}
 10784  		switch fieldNum {
 10785  		case 1:
 10786  			if wireType != 2 {
 10787  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
 10788  			}
 10789  			var stringLen uint64
 10790  			for shift := uint(0); ; shift += 7 {
 10791  				if shift >= 64 {
 10792  					return ErrIntOverflowStructured
 10793  				}
 10794  				if iNdEx >= l {
 10795  					return io.ErrUnexpectedEOF
 10796  				}
 10797  				b := dAtA[iNdEx]
 10798  				iNdEx++
 10799  				stringLen |= (uint64(b) & 0x7F) << shift
 10800  				if b < 0x80 {
 10801  					break
 10802  				}
 10803  			}
 10804  			intStringLen := int(stringLen)
 10805  			if intStringLen < 0 {
 10806  				return ErrInvalidLengthStructured
 10807  			}
 10808  			postIndex := iNdEx + intStringLen
 10809  			if postIndex > l {
 10810  				return io.ErrUnexpectedEOF
 10811  			}
 10812  			m.Name = string(dAtA[iNdEx:postIndex])
 10813  			iNdEx = postIndex
 10814  		case 3:
 10815  			if wireType != 0 {
 10816  				return fmt.Errorf("proto: wrong wireType = %d for field ID", wireType)
 10817  			}
 10818  			m.ID = 0
 10819  			for shift := uint(0); ; shift += 7 {
 10820  				if shift >= 64 {
 10821  					return ErrIntOverflowStructured
 10822  				}
 10823  				if iNdEx >= l {
 10824  					return io.ErrUnexpectedEOF
 10825  				}
 10826  				b := dAtA[iNdEx]
 10827  				iNdEx++
 10828  				m.ID |= (ID(b) & 0x7F) << shift
 10829  				if b < 0x80 {
 10830  					break
 10831  				}
 10832  			}
 10833  		case 4:
 10834  			if wireType != 0 {
 10835  				return fmt.Errorf("proto: wrong wireType = %d for field ParentID", wireType)
 10836  			}
 10837  			m.ParentID = 0
 10838  			for shift := uint(0); ; shift += 7 {
 10839  				if shift >= 64 {
 10840  					return ErrIntOverflowStructured
 10841  				}
 10842  				if iNdEx >= l {
 10843  					return io.ErrUnexpectedEOF
 10844  				}
 10845  				b := dAtA[iNdEx]
 10846  				iNdEx++
 10847  				m.ParentID |= (ID(b) & 0x7F) << shift
 10848  				if b < 0x80 {
 10849  					break
 10850  				}
 10851  			}
 10852  		case 5:
 10853  			if wireType != 0 {
 10854  				return fmt.Errorf("proto: wrong wireType = %d for field Version", wireType)
 10855  			}
 10856  			m.Version = 0
 10857  			for shift := uint(0); ; shift += 7 {
 10858  				if shift >= 64 {
 10859  					return ErrIntOverflowStructured
 10860  				}
 10861  				if iNdEx >= l {
 10862  					return io.ErrUnexpectedEOF
 10863  				}
 10864  				b := dAtA[iNdEx]
 10865  				iNdEx++
 10866  				m.Version |= (DescriptorVersion(b) & 0x7F) << shift
 10867  				if b < 0x80 {
 10868  					break
 10869  				}
 10870  			}
 10871  		case 7:
 10872  			if wireType != 2 {
 10873  				return fmt.Errorf("proto: wrong wireType = %d for field ModificationTime", wireType)
 10874  			}
 10875  			var msglen int
 10876  			for shift := uint(0); ; shift += 7 {
 10877  				if shift >= 64 {
 10878  					return ErrIntOverflowStructured
 10879  				}
 10880  				if iNdEx >= l {
 10881  					return io.ErrUnexpectedEOF
 10882  				}
 10883  				b := dAtA[iNdEx]
 10884  				iNdEx++
 10885  				msglen |= (int(b) & 0x7F) << shift
 10886  				if b < 0x80 {
 10887  					break
 10888  				}
 10889  			}
 10890  			if msglen < 0 {
 10891  				return ErrInvalidLengthStructured
 10892  			}
 10893  			postIndex := iNdEx + msglen
 10894  			if postIndex > l {
 10895  				return io.ErrUnexpectedEOF
 10896  			}
 10897  			if err := m.ModificationTime.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 10898  				return err
 10899  			}
 10900  			iNdEx = postIndex
 10901  		case 8:
 10902  			if wireType != 2 {
 10903  				return fmt.Errorf("proto: wrong wireType = %d for field Columns", wireType)
 10904  			}
 10905  			var msglen int
 10906  			for shift := uint(0); ; shift += 7 {
 10907  				if shift >= 64 {
 10908  					return ErrIntOverflowStructured
 10909  				}
 10910  				if iNdEx >= l {
 10911  					return io.ErrUnexpectedEOF
 10912  				}
 10913  				b := dAtA[iNdEx]
 10914  				iNdEx++
 10915  				msglen |= (int(b) & 0x7F) << shift
 10916  				if b < 0x80 {
 10917  					break
 10918  				}
 10919  			}
 10920  			if msglen < 0 {
 10921  				return ErrInvalidLengthStructured
 10922  			}
 10923  			postIndex := iNdEx + msglen
 10924  			if postIndex > l {
 10925  				return io.ErrUnexpectedEOF
 10926  			}
 10927  			m.Columns = append(m.Columns, ColumnDescriptor{})
 10928  			if err := m.Columns[len(m.Columns)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 10929  				return err
 10930  			}
 10931  			iNdEx = postIndex
 10932  		case 9:
 10933  			if wireType != 0 {
 10934  				return fmt.Errorf("proto: wrong wireType = %d for field NextColumnID", wireType)
 10935  			}
 10936  			m.NextColumnID = 0
 10937  			for shift := uint(0); ; shift += 7 {
 10938  				if shift >= 64 {
 10939  					return ErrIntOverflowStructured
 10940  				}
 10941  				if iNdEx >= l {
 10942  					return io.ErrUnexpectedEOF
 10943  				}
 10944  				b := dAtA[iNdEx]
 10945  				iNdEx++
 10946  				m.NextColumnID |= (ColumnID(b) & 0x7F) << shift
 10947  				if b < 0x80 {
 10948  					break
 10949  				}
 10950  			}
 10951  		case 10:
 10952  			if wireType != 2 {
 10953  				return fmt.Errorf("proto: wrong wireType = %d for field PrimaryIndex", wireType)
 10954  			}
 10955  			var msglen int
 10956  			for shift := uint(0); ; shift += 7 {
 10957  				if shift >= 64 {
 10958  					return ErrIntOverflowStructured
 10959  				}
 10960  				if iNdEx >= l {
 10961  					return io.ErrUnexpectedEOF
 10962  				}
 10963  				b := dAtA[iNdEx]
 10964  				iNdEx++
 10965  				msglen |= (int(b) & 0x7F) << shift
 10966  				if b < 0x80 {
 10967  					break
 10968  				}
 10969  			}
 10970  			if msglen < 0 {
 10971  				return ErrInvalidLengthStructured
 10972  			}
 10973  			postIndex := iNdEx + msglen
 10974  			if postIndex > l {
 10975  				return io.ErrUnexpectedEOF
 10976  			}
 10977  			if err := m.PrimaryIndex.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 10978  				return err
 10979  			}
 10980  			iNdEx = postIndex
 10981  		case 11:
 10982  			if wireType != 2 {
 10983  				return fmt.Errorf("proto: wrong wireType = %d for field Indexes", wireType)
 10984  			}
 10985  			var msglen int
 10986  			for shift := uint(0); ; shift += 7 {
 10987  				if shift >= 64 {
 10988  					return ErrIntOverflowStructured
 10989  				}
 10990  				if iNdEx >= l {
 10991  					return io.ErrUnexpectedEOF
 10992  				}
 10993  				b := dAtA[iNdEx]
 10994  				iNdEx++
 10995  				msglen |= (int(b) & 0x7F) << shift
 10996  				if b < 0x80 {
 10997  					break
 10998  				}
 10999  			}
 11000  			if msglen < 0 {
 11001  				return ErrInvalidLengthStructured
 11002  			}
 11003  			postIndex := iNdEx + msglen
 11004  			if postIndex > l {
 11005  				return io.ErrUnexpectedEOF
 11006  			}
 11007  			m.Indexes = append(m.Indexes, IndexDescriptor{})
 11008  			if err := m.Indexes[len(m.Indexes)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11009  				return err
 11010  			}
 11011  			iNdEx = postIndex
 11012  		case 12:
 11013  			if wireType != 0 {
 11014  				return fmt.Errorf("proto: wrong wireType = %d for field NextIndexID", wireType)
 11015  			}
 11016  			m.NextIndexID = 0
 11017  			for shift := uint(0); ; shift += 7 {
 11018  				if shift >= 64 {
 11019  					return ErrIntOverflowStructured
 11020  				}
 11021  				if iNdEx >= l {
 11022  					return io.ErrUnexpectedEOF
 11023  				}
 11024  				b := dAtA[iNdEx]
 11025  				iNdEx++
 11026  				m.NextIndexID |= (IndexID(b) & 0x7F) << shift
 11027  				if b < 0x80 {
 11028  					break
 11029  				}
 11030  			}
 11031  		case 13:
 11032  			if wireType != 2 {
 11033  				return fmt.Errorf("proto: wrong wireType = %d for field Privileges", wireType)
 11034  			}
 11035  			var msglen int
 11036  			for shift := uint(0); ; shift += 7 {
 11037  				if shift >= 64 {
 11038  					return ErrIntOverflowStructured
 11039  				}
 11040  				if iNdEx >= l {
 11041  					return io.ErrUnexpectedEOF
 11042  				}
 11043  				b := dAtA[iNdEx]
 11044  				iNdEx++
 11045  				msglen |= (int(b) & 0x7F) << shift
 11046  				if b < 0x80 {
 11047  					break
 11048  				}
 11049  			}
 11050  			if msglen < 0 {
 11051  				return ErrInvalidLengthStructured
 11052  			}
 11053  			postIndex := iNdEx + msglen
 11054  			if postIndex > l {
 11055  				return io.ErrUnexpectedEOF
 11056  			}
 11057  			if m.Privileges == nil {
 11058  				m.Privileges = &PrivilegeDescriptor{}
 11059  			}
 11060  			if err := m.Privileges.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11061  				return err
 11062  			}
 11063  			iNdEx = postIndex
 11064  		case 14:
 11065  			if wireType != 2 {
 11066  				return fmt.Errorf("proto: wrong wireType = %d for field Mutations", wireType)
 11067  			}
 11068  			var msglen int
 11069  			for shift := uint(0); ; shift += 7 {
 11070  				if shift >= 64 {
 11071  					return ErrIntOverflowStructured
 11072  				}
 11073  				if iNdEx >= l {
 11074  					return io.ErrUnexpectedEOF
 11075  				}
 11076  				b := dAtA[iNdEx]
 11077  				iNdEx++
 11078  				msglen |= (int(b) & 0x7F) << shift
 11079  				if b < 0x80 {
 11080  					break
 11081  				}
 11082  			}
 11083  			if msglen < 0 {
 11084  				return ErrInvalidLengthStructured
 11085  			}
 11086  			postIndex := iNdEx + msglen
 11087  			if postIndex > l {
 11088  				return io.ErrUnexpectedEOF
 11089  			}
 11090  			m.Mutations = append(m.Mutations, DescriptorMutation{})
 11091  			if err := m.Mutations[len(m.Mutations)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11092  				return err
 11093  			}
 11094  			iNdEx = postIndex
 11095  		case 15:
 11096  			if wireType != 2 {
 11097  				return fmt.Errorf("proto: wrong wireType = %d for field Lease", wireType)
 11098  			}
 11099  			var msglen int
 11100  			for shift := uint(0); ; shift += 7 {
 11101  				if shift >= 64 {
 11102  					return ErrIntOverflowStructured
 11103  				}
 11104  				if iNdEx >= l {
 11105  					return io.ErrUnexpectedEOF
 11106  				}
 11107  				b := dAtA[iNdEx]
 11108  				iNdEx++
 11109  				msglen |= (int(b) & 0x7F) << shift
 11110  				if b < 0x80 {
 11111  					break
 11112  				}
 11113  			}
 11114  			if msglen < 0 {
 11115  				return ErrInvalidLengthStructured
 11116  			}
 11117  			postIndex := iNdEx + msglen
 11118  			if postIndex > l {
 11119  				return io.ErrUnexpectedEOF
 11120  			}
 11121  			if m.Lease == nil {
 11122  				m.Lease = &TableDescriptor_SchemaChangeLease{}
 11123  			}
 11124  			if err := m.Lease.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11125  				return err
 11126  			}
 11127  			iNdEx = postIndex
 11128  		case 16:
 11129  			if wireType != 0 {
 11130  				return fmt.Errorf("proto: wrong wireType = %d for field NextMutationID", wireType)
 11131  			}
 11132  			m.NextMutationID = 0
 11133  			for shift := uint(0); ; shift += 7 {
 11134  				if shift >= 64 {
 11135  					return ErrIntOverflowStructured
 11136  				}
 11137  				if iNdEx >= l {
 11138  					return io.ErrUnexpectedEOF
 11139  				}
 11140  				b := dAtA[iNdEx]
 11141  				iNdEx++
 11142  				m.NextMutationID |= (MutationID(b) & 0x7F) << shift
 11143  				if b < 0x80 {
 11144  					break
 11145  				}
 11146  			}
 11147  		case 17:
 11148  			if wireType != 0 {
 11149  				return fmt.Errorf("proto: wrong wireType = %d for field FormatVersion", wireType)
 11150  			}
 11151  			m.FormatVersion = 0
 11152  			for shift := uint(0); ; shift += 7 {
 11153  				if shift >= 64 {
 11154  					return ErrIntOverflowStructured
 11155  				}
 11156  				if iNdEx >= l {
 11157  					return io.ErrUnexpectedEOF
 11158  				}
 11159  				b := dAtA[iNdEx]
 11160  				iNdEx++
 11161  				m.FormatVersion |= (FormatVersion(b) & 0x7F) << shift
 11162  				if b < 0x80 {
 11163  					break
 11164  				}
 11165  			}
 11166  		case 19:
 11167  			if wireType != 0 {
 11168  				return fmt.Errorf("proto: wrong wireType = %d for field State", wireType)
 11169  			}
 11170  			m.State = 0
 11171  			for shift := uint(0); ; shift += 7 {
 11172  				if shift >= 64 {
 11173  					return ErrIntOverflowStructured
 11174  				}
 11175  				if iNdEx >= l {
 11176  					return io.ErrUnexpectedEOF
 11177  				}
 11178  				b := dAtA[iNdEx]
 11179  				iNdEx++
 11180  				m.State |= (TableDescriptor_State(b) & 0x7F) << shift
 11181  				if b < 0x80 {
 11182  					break
 11183  				}
 11184  			}
 11185  		case 20:
 11186  			if wireType != 2 {
 11187  				return fmt.Errorf("proto: wrong wireType = %d for field Checks", wireType)
 11188  			}
 11189  			var msglen int
 11190  			for shift := uint(0); ; shift += 7 {
 11191  				if shift >= 64 {
 11192  					return ErrIntOverflowStructured
 11193  				}
 11194  				if iNdEx >= l {
 11195  					return io.ErrUnexpectedEOF
 11196  				}
 11197  				b := dAtA[iNdEx]
 11198  				iNdEx++
 11199  				msglen |= (int(b) & 0x7F) << shift
 11200  				if b < 0x80 {
 11201  					break
 11202  				}
 11203  			}
 11204  			if msglen < 0 {
 11205  				return ErrInvalidLengthStructured
 11206  			}
 11207  			postIndex := iNdEx + msglen
 11208  			if postIndex > l {
 11209  				return io.ErrUnexpectedEOF
 11210  			}
 11211  			m.Checks = append(m.Checks, &TableDescriptor_CheckConstraint{})
 11212  			if err := m.Checks[len(m.Checks)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11213  				return err
 11214  			}
 11215  			iNdEx = postIndex
 11216  		case 21:
 11217  			if wireType != 2 {
 11218  				return fmt.Errorf("proto: wrong wireType = %d for field DrainingNames", wireType)
 11219  			}
 11220  			var msglen int
 11221  			for shift := uint(0); ; shift += 7 {
 11222  				if shift >= 64 {
 11223  					return ErrIntOverflowStructured
 11224  				}
 11225  				if iNdEx >= l {
 11226  					return io.ErrUnexpectedEOF
 11227  				}
 11228  				b := dAtA[iNdEx]
 11229  				iNdEx++
 11230  				msglen |= (int(b) & 0x7F) << shift
 11231  				if b < 0x80 {
 11232  					break
 11233  				}
 11234  			}
 11235  			if msglen < 0 {
 11236  				return ErrInvalidLengthStructured
 11237  			}
 11238  			postIndex := iNdEx + msglen
 11239  			if postIndex > l {
 11240  				return io.ErrUnexpectedEOF
 11241  			}
 11242  			m.DrainingNames = append(m.DrainingNames, TableDescriptor_NameInfo{})
 11243  			if err := m.DrainingNames[len(m.DrainingNames)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11244  				return err
 11245  			}
 11246  			iNdEx = postIndex
 11247  		case 22:
 11248  			if wireType != 2 {
 11249  				return fmt.Errorf("proto: wrong wireType = %d for field Families", wireType)
 11250  			}
 11251  			var msglen int
 11252  			for shift := uint(0); ; shift += 7 {
 11253  				if shift >= 64 {
 11254  					return ErrIntOverflowStructured
 11255  				}
 11256  				if iNdEx >= l {
 11257  					return io.ErrUnexpectedEOF
 11258  				}
 11259  				b := dAtA[iNdEx]
 11260  				iNdEx++
 11261  				msglen |= (int(b) & 0x7F) << shift
 11262  				if b < 0x80 {
 11263  					break
 11264  				}
 11265  			}
 11266  			if msglen < 0 {
 11267  				return ErrInvalidLengthStructured
 11268  			}
 11269  			postIndex := iNdEx + msglen
 11270  			if postIndex > l {
 11271  				return io.ErrUnexpectedEOF
 11272  			}
 11273  			m.Families = append(m.Families, ColumnFamilyDescriptor{})
 11274  			if err := m.Families[len(m.Families)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11275  				return err
 11276  			}
 11277  			iNdEx = postIndex
 11278  		case 23:
 11279  			if wireType != 0 {
 11280  				return fmt.Errorf("proto: wrong wireType = %d for field NextFamilyID", wireType)
 11281  			}
 11282  			m.NextFamilyID = 0
 11283  			for shift := uint(0); ; shift += 7 {
 11284  				if shift >= 64 {
 11285  					return ErrIntOverflowStructured
 11286  				}
 11287  				if iNdEx >= l {
 11288  					return io.ErrUnexpectedEOF
 11289  				}
 11290  				b := dAtA[iNdEx]
 11291  				iNdEx++
 11292  				m.NextFamilyID |= (FamilyID(b) & 0x7F) << shift
 11293  				if b < 0x80 {
 11294  					break
 11295  				}
 11296  			}
 11297  		case 24:
 11298  			if wireType != 2 {
 11299  				return fmt.Errorf("proto: wrong wireType = %d for field ViewQuery", wireType)
 11300  			}
 11301  			var stringLen uint64
 11302  			for shift := uint(0); ; shift += 7 {
 11303  				if shift >= 64 {
 11304  					return ErrIntOverflowStructured
 11305  				}
 11306  				if iNdEx >= l {
 11307  					return io.ErrUnexpectedEOF
 11308  				}
 11309  				b := dAtA[iNdEx]
 11310  				iNdEx++
 11311  				stringLen |= (uint64(b) & 0x7F) << shift
 11312  				if b < 0x80 {
 11313  					break
 11314  				}
 11315  			}
 11316  			intStringLen := int(stringLen)
 11317  			if intStringLen < 0 {
 11318  				return ErrInvalidLengthStructured
 11319  			}
 11320  			postIndex := iNdEx + intStringLen
 11321  			if postIndex > l {
 11322  				return io.ErrUnexpectedEOF
 11323  			}
 11324  			m.ViewQuery = string(dAtA[iNdEx:postIndex])
 11325  			iNdEx = postIndex
 11326  		case 25:
 11327  			if wireType == 0 {
 11328  				var v ID
 11329  				for shift := uint(0); ; shift += 7 {
 11330  					if shift >= 64 {
 11331  						return ErrIntOverflowStructured
 11332  					}
 11333  					if iNdEx >= l {
 11334  						return io.ErrUnexpectedEOF
 11335  					}
 11336  					b := dAtA[iNdEx]
 11337  					iNdEx++
 11338  					v |= (ID(b) & 0x7F) << shift
 11339  					if b < 0x80 {
 11340  						break
 11341  					}
 11342  				}
 11343  				m.DependsOn = append(m.DependsOn, v)
 11344  			} else if wireType == 2 {
 11345  				var packedLen int
 11346  				for shift := uint(0); ; shift += 7 {
 11347  					if shift >= 64 {
 11348  						return ErrIntOverflowStructured
 11349  					}
 11350  					if iNdEx >= l {
 11351  						return io.ErrUnexpectedEOF
 11352  					}
 11353  					b := dAtA[iNdEx]
 11354  					iNdEx++
 11355  					packedLen |= (int(b) & 0x7F) << shift
 11356  					if b < 0x80 {
 11357  						break
 11358  					}
 11359  				}
 11360  				if packedLen < 0 {
 11361  					return ErrInvalidLengthStructured
 11362  				}
 11363  				postIndex := iNdEx + packedLen
 11364  				if postIndex > l {
 11365  					return io.ErrUnexpectedEOF
 11366  				}
 11367  				var elementCount int
 11368  				var count int
 11369  				for _, integer := range dAtA {
 11370  					if integer < 128 {
 11371  						count++
 11372  					}
 11373  				}
 11374  				elementCount = count
 11375  				if elementCount != 0 && len(m.DependsOn) == 0 {
 11376  					m.DependsOn = make([]ID, 0, elementCount)
 11377  				}
 11378  				for iNdEx < postIndex {
 11379  					var v ID
 11380  					for shift := uint(0); ; shift += 7 {
 11381  						if shift >= 64 {
 11382  							return ErrIntOverflowStructured
 11383  						}
 11384  						if iNdEx >= l {
 11385  							return io.ErrUnexpectedEOF
 11386  						}
 11387  						b := dAtA[iNdEx]
 11388  						iNdEx++
 11389  						v |= (ID(b) & 0x7F) << shift
 11390  						if b < 0x80 {
 11391  							break
 11392  						}
 11393  					}
 11394  					m.DependsOn = append(m.DependsOn, v)
 11395  				}
 11396  			} else {
 11397  				return fmt.Errorf("proto: wrong wireType = %d for field DependsOn", wireType)
 11398  			}
 11399  		case 26:
 11400  			if wireType != 2 {
 11401  				return fmt.Errorf("proto: wrong wireType = %d for field DependedOnBy", wireType)
 11402  			}
 11403  			var msglen int
 11404  			for shift := uint(0); ; shift += 7 {
 11405  				if shift >= 64 {
 11406  					return ErrIntOverflowStructured
 11407  				}
 11408  				if iNdEx >= l {
 11409  					return io.ErrUnexpectedEOF
 11410  				}
 11411  				b := dAtA[iNdEx]
 11412  				iNdEx++
 11413  				msglen |= (int(b) & 0x7F) << shift
 11414  				if b < 0x80 {
 11415  					break
 11416  				}
 11417  			}
 11418  			if msglen < 0 {
 11419  				return ErrInvalidLengthStructured
 11420  			}
 11421  			postIndex := iNdEx + msglen
 11422  			if postIndex > l {
 11423  				return io.ErrUnexpectedEOF
 11424  			}
 11425  			m.DependedOnBy = append(m.DependedOnBy, TableDescriptor_Reference{})
 11426  			if err := m.DependedOnBy[len(m.DependedOnBy)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11427  				return err
 11428  			}
 11429  			iNdEx = postIndex
 11430  		case 27:
 11431  			if wireType != 2 {
 11432  				return fmt.Errorf("proto: wrong wireType = %d for field MutationJobs", wireType)
 11433  			}
 11434  			var msglen int
 11435  			for shift := uint(0); ; shift += 7 {
 11436  				if shift >= 64 {
 11437  					return ErrIntOverflowStructured
 11438  				}
 11439  				if iNdEx >= l {
 11440  					return io.ErrUnexpectedEOF
 11441  				}
 11442  				b := dAtA[iNdEx]
 11443  				iNdEx++
 11444  				msglen |= (int(b) & 0x7F) << shift
 11445  				if b < 0x80 {
 11446  					break
 11447  				}
 11448  			}
 11449  			if msglen < 0 {
 11450  				return ErrInvalidLengthStructured
 11451  			}
 11452  			postIndex := iNdEx + msglen
 11453  			if postIndex > l {
 11454  				return io.ErrUnexpectedEOF
 11455  			}
 11456  			m.MutationJobs = append(m.MutationJobs, TableDescriptor_MutationJob{})
 11457  			if err := m.MutationJobs[len(m.MutationJobs)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11458  				return err
 11459  			}
 11460  			iNdEx = postIndex
 11461  		case 28:
 11462  			if wireType != 2 {
 11463  				return fmt.Errorf("proto: wrong wireType = %d for field SequenceOpts", wireType)
 11464  			}
 11465  			var msglen int
 11466  			for shift := uint(0); ; shift += 7 {
 11467  				if shift >= 64 {
 11468  					return ErrIntOverflowStructured
 11469  				}
 11470  				if iNdEx >= l {
 11471  					return io.ErrUnexpectedEOF
 11472  				}
 11473  				b := dAtA[iNdEx]
 11474  				iNdEx++
 11475  				msglen |= (int(b) & 0x7F) << shift
 11476  				if b < 0x80 {
 11477  					break
 11478  				}
 11479  			}
 11480  			if msglen < 0 {
 11481  				return ErrInvalidLengthStructured
 11482  			}
 11483  			postIndex := iNdEx + msglen
 11484  			if postIndex > l {
 11485  				return io.ErrUnexpectedEOF
 11486  			}
 11487  			if m.SequenceOpts == nil {
 11488  				m.SequenceOpts = &TableDescriptor_SequenceOpts{}
 11489  			}
 11490  			if err := m.SequenceOpts.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11491  				return err
 11492  			}
 11493  			iNdEx = postIndex
 11494  		case 29:
 11495  			if wireType != 0 {
 11496  				return fmt.Errorf("proto: wrong wireType = %d for field DropTime", wireType)
 11497  			}
 11498  			m.DropTime = 0
 11499  			for shift := uint(0); ; shift += 7 {
 11500  				if shift >= 64 {
 11501  					return ErrIntOverflowStructured
 11502  				}
 11503  				if iNdEx >= l {
 11504  					return io.ErrUnexpectedEOF
 11505  				}
 11506  				b := dAtA[iNdEx]
 11507  				iNdEx++
 11508  				m.DropTime |= (int64(b) & 0x7F) << shift
 11509  				if b < 0x80 {
 11510  					break
 11511  				}
 11512  			}
 11513  		case 30:
 11514  			if wireType != 2 {
 11515  				return fmt.Errorf("proto: wrong wireType = %d for field ReplacementOf", wireType)
 11516  			}
 11517  			var msglen int
 11518  			for shift := uint(0); ; shift += 7 {
 11519  				if shift >= 64 {
 11520  					return ErrIntOverflowStructured
 11521  				}
 11522  				if iNdEx >= l {
 11523  					return io.ErrUnexpectedEOF
 11524  				}
 11525  				b := dAtA[iNdEx]
 11526  				iNdEx++
 11527  				msglen |= (int(b) & 0x7F) << shift
 11528  				if b < 0x80 {
 11529  					break
 11530  				}
 11531  			}
 11532  			if msglen < 0 {
 11533  				return ErrInvalidLengthStructured
 11534  			}
 11535  			postIndex := iNdEx + msglen
 11536  			if postIndex > l {
 11537  				return io.ErrUnexpectedEOF
 11538  			}
 11539  			if err := m.ReplacementOf.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11540  				return err
 11541  			}
 11542  			iNdEx = postIndex
 11543  		case 31:
 11544  			if wireType != 0 {
 11545  				return fmt.Errorf("proto: wrong wireType = %d for field AuditMode", wireType)
 11546  			}
 11547  			m.AuditMode = 0
 11548  			for shift := uint(0); ; shift += 7 {
 11549  				if shift >= 64 {
 11550  					return ErrIntOverflowStructured
 11551  				}
 11552  				if iNdEx >= l {
 11553  					return io.ErrUnexpectedEOF
 11554  				}
 11555  				b := dAtA[iNdEx]
 11556  				iNdEx++
 11557  				m.AuditMode |= (TableDescriptor_AuditMode(b) & 0x7F) << shift
 11558  				if b < 0x80 {
 11559  					break
 11560  				}
 11561  			}
 11562  		case 32:
 11563  			if wireType != 0 {
 11564  				return fmt.Errorf("proto: wrong wireType = %d for field DropJobID", wireType)
 11565  			}
 11566  			m.DropJobID = 0
 11567  			for shift := uint(0); ; shift += 7 {
 11568  				if shift >= 64 {
 11569  					return ErrIntOverflowStructured
 11570  				}
 11571  				if iNdEx >= l {
 11572  					return io.ErrUnexpectedEOF
 11573  				}
 11574  				b := dAtA[iNdEx]
 11575  				iNdEx++
 11576  				m.DropJobID |= (int64(b) & 0x7F) << shift
 11577  				if b < 0x80 {
 11578  					break
 11579  				}
 11580  			}
 11581  		case 33:
 11582  			if wireType != 2 {
 11583  				return fmt.Errorf("proto: wrong wireType = %d for field GCMutations", wireType)
 11584  			}
 11585  			var msglen int
 11586  			for shift := uint(0); ; shift += 7 {
 11587  				if shift >= 64 {
 11588  					return ErrIntOverflowStructured
 11589  				}
 11590  				if iNdEx >= l {
 11591  					return io.ErrUnexpectedEOF
 11592  				}
 11593  				b := dAtA[iNdEx]
 11594  				iNdEx++
 11595  				msglen |= (int(b) & 0x7F) << shift
 11596  				if b < 0x80 {
 11597  					break
 11598  				}
 11599  			}
 11600  			if msglen < 0 {
 11601  				return ErrInvalidLengthStructured
 11602  			}
 11603  			postIndex := iNdEx + msglen
 11604  			if postIndex > l {
 11605  				return io.ErrUnexpectedEOF
 11606  			}
 11607  			m.GCMutations = append(m.GCMutations, TableDescriptor_GCDescriptorMutation{})
 11608  			if err := m.GCMutations[len(m.GCMutations)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11609  				return err
 11610  			}
 11611  			iNdEx = postIndex
 11612  		case 34:
 11613  			if wireType != 2 {
 11614  				return fmt.Errorf("proto: wrong wireType = %d for field CreateQuery", wireType)
 11615  			}
 11616  			var stringLen uint64
 11617  			for shift := uint(0); ; shift += 7 {
 11618  				if shift >= 64 {
 11619  					return ErrIntOverflowStructured
 11620  				}
 11621  				if iNdEx >= l {
 11622  					return io.ErrUnexpectedEOF
 11623  				}
 11624  				b := dAtA[iNdEx]
 11625  				iNdEx++
 11626  				stringLen |= (uint64(b) & 0x7F) << shift
 11627  				if b < 0x80 {
 11628  					break
 11629  				}
 11630  			}
 11631  			intStringLen := int(stringLen)
 11632  			if intStringLen < 0 {
 11633  				return ErrInvalidLengthStructured
 11634  			}
 11635  			postIndex := iNdEx + intStringLen
 11636  			if postIndex > l {
 11637  				return io.ErrUnexpectedEOF
 11638  			}
 11639  			m.CreateQuery = string(dAtA[iNdEx:postIndex])
 11640  			iNdEx = postIndex
 11641  		case 35:
 11642  			if wireType != 2 {
 11643  				return fmt.Errorf("proto: wrong wireType = %d for field CreateAsOfTime", wireType)
 11644  			}
 11645  			var msglen int
 11646  			for shift := uint(0); ; shift += 7 {
 11647  				if shift >= 64 {
 11648  					return ErrIntOverflowStructured
 11649  				}
 11650  				if iNdEx >= l {
 11651  					return io.ErrUnexpectedEOF
 11652  				}
 11653  				b := dAtA[iNdEx]
 11654  				iNdEx++
 11655  				msglen |= (int(b) & 0x7F) << shift
 11656  				if b < 0x80 {
 11657  					break
 11658  				}
 11659  			}
 11660  			if msglen < 0 {
 11661  				return ErrInvalidLengthStructured
 11662  			}
 11663  			postIndex := iNdEx + msglen
 11664  			if postIndex > l {
 11665  				return io.ErrUnexpectedEOF
 11666  			}
 11667  			if err := m.CreateAsOfTime.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11668  				return err
 11669  			}
 11670  			iNdEx = postIndex
 11671  		case 36:
 11672  			if wireType != 2 {
 11673  				return fmt.Errorf("proto: wrong wireType = %d for field OutboundFKs", wireType)
 11674  			}
 11675  			var msglen int
 11676  			for shift := uint(0); ; shift += 7 {
 11677  				if shift >= 64 {
 11678  					return ErrIntOverflowStructured
 11679  				}
 11680  				if iNdEx >= l {
 11681  					return io.ErrUnexpectedEOF
 11682  				}
 11683  				b := dAtA[iNdEx]
 11684  				iNdEx++
 11685  				msglen |= (int(b) & 0x7F) << shift
 11686  				if b < 0x80 {
 11687  					break
 11688  				}
 11689  			}
 11690  			if msglen < 0 {
 11691  				return ErrInvalidLengthStructured
 11692  			}
 11693  			postIndex := iNdEx + msglen
 11694  			if postIndex > l {
 11695  				return io.ErrUnexpectedEOF
 11696  			}
 11697  			m.OutboundFKs = append(m.OutboundFKs, ForeignKeyConstraint{})
 11698  			if err := m.OutboundFKs[len(m.OutboundFKs)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11699  				return err
 11700  			}
 11701  			iNdEx = postIndex
 11702  		case 37:
 11703  			if wireType != 2 {
 11704  				return fmt.Errorf("proto: wrong wireType = %d for field InboundFKs", wireType)
 11705  			}
 11706  			var msglen int
 11707  			for shift := uint(0); ; shift += 7 {
 11708  				if shift >= 64 {
 11709  					return ErrIntOverflowStructured
 11710  				}
 11711  				if iNdEx >= l {
 11712  					return io.ErrUnexpectedEOF
 11713  				}
 11714  				b := dAtA[iNdEx]
 11715  				iNdEx++
 11716  				msglen |= (int(b) & 0x7F) << shift
 11717  				if b < 0x80 {
 11718  					break
 11719  				}
 11720  			}
 11721  			if msglen < 0 {
 11722  				return ErrInvalidLengthStructured
 11723  			}
 11724  			postIndex := iNdEx + msglen
 11725  			if postIndex > l {
 11726  				return io.ErrUnexpectedEOF
 11727  			}
 11728  			m.InboundFKs = append(m.InboundFKs, ForeignKeyConstraint{})
 11729  			if err := m.InboundFKs[len(m.InboundFKs)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 11730  				return err
 11731  			}
 11732  			iNdEx = postIndex
 11733  		case 38:
 11734  			if wireType != 2 {
 11735  				return fmt.Errorf("proto: wrong wireType = %d for field OfflineReason", wireType)
 11736  			}
 11737  			var stringLen uint64
 11738  			for shift := uint(0); ; shift += 7 {
 11739  				if shift >= 64 {
 11740  					return ErrIntOverflowStructured
 11741  				}
 11742  				if iNdEx >= l {
 11743  					return io.ErrUnexpectedEOF
 11744  				}
 11745  				b := dAtA[iNdEx]
 11746  				iNdEx++
 11747  				stringLen |= (uint64(b) & 0x7F) << shift
 11748  				if b < 0x80 {
 11749  					break
 11750  				}
 11751  			}
 11752  			intStringLen := int(stringLen)
 11753  			if intStringLen < 0 {
 11754  				return ErrInvalidLengthStructured
 11755  			}
 11756  			postIndex := iNdEx + intStringLen
 11757  			if postIndex > l {
 11758  				return io.ErrUnexpectedEOF
 11759  			}
 11760  			m.OfflineReason = string(dAtA[iNdEx:postIndex])
 11761  			iNdEx = postIndex
 11762  		case 39:
 11763  			if wireType != 0 {
 11764  				return fmt.Errorf("proto: wrong wireType = %d for field Temporary", wireType)
 11765  			}
 11766  			var v int
 11767  			for shift := uint(0); ; shift += 7 {
 11768  				if shift >= 64 {
 11769  					return ErrIntOverflowStructured
 11770  				}
 11771  				if iNdEx >= l {
 11772  					return io.ErrUnexpectedEOF
 11773  				}
 11774  				b := dAtA[iNdEx]
 11775  				iNdEx++
 11776  				v |= (int(b) & 0x7F) << shift
 11777  				if b < 0x80 {
 11778  					break
 11779  				}
 11780  			}
 11781  			m.Temporary = bool(v != 0)
 11782  		case 40:
 11783  			if wireType != 0 {
 11784  				return fmt.Errorf("proto: wrong wireType = %d for field UnexposedParentSchemaID", wireType)
 11785  			}
 11786  			m.UnexposedParentSchemaID = 0
 11787  			for shift := uint(0); ; shift += 7 {
 11788  				if shift >= 64 {
 11789  					return ErrIntOverflowStructured
 11790  				}
 11791  				if iNdEx >= l {
 11792  					return io.ErrUnexpectedEOF
 11793  				}
 11794  				b := dAtA[iNdEx]
 11795  				iNdEx++
 11796  				m.UnexposedParentSchemaID |= (ID(b) & 0x7F) << shift
 11797  				if b < 0x80 {
 11798  					break
 11799  				}
 11800  			}
 11801  		default:
 11802  			iNdEx = preIndex
 11803  			skippy, err := skipStructured(dAtA[iNdEx:])
 11804  			if err != nil {
 11805  				return err
 11806  			}
 11807  			if skippy < 0 {
 11808  				return ErrInvalidLengthStructured
 11809  			}
 11810  			if (iNdEx + skippy) > l {
 11811  				return io.ErrUnexpectedEOF
 11812  			}
 11813  			iNdEx += skippy
 11814  		}
 11815  	}
 11816  
 11817  	if iNdEx > l {
 11818  		return io.ErrUnexpectedEOF
 11819  	}
 11820  	return nil
 11821  }
 11822  func (m *TableDescriptor_SchemaChangeLease) Unmarshal(dAtA []byte) error {
 11823  	l := len(dAtA)
 11824  	iNdEx := 0
 11825  	for iNdEx < l {
 11826  		preIndex := iNdEx
 11827  		var wire uint64
 11828  		for shift := uint(0); ; shift += 7 {
 11829  			if shift >= 64 {
 11830  				return ErrIntOverflowStructured
 11831  			}
 11832  			if iNdEx >= l {
 11833  				return io.ErrUnexpectedEOF
 11834  			}
 11835  			b := dAtA[iNdEx]
 11836  			iNdEx++
 11837  			wire |= (uint64(b) & 0x7F) << shift
 11838  			if b < 0x80 {
 11839  				break
 11840  			}
 11841  		}
 11842  		fieldNum := int32(wire >> 3)
 11843  		wireType := int(wire & 0x7)
 11844  		if wireType == 4 {
 11845  			return fmt.Errorf("proto: SchemaChangeLease: wiretype end group for non-group")
 11846  		}
 11847  		if fieldNum <= 0 {
 11848  			return fmt.Errorf("proto: SchemaChangeLease: illegal tag %d (wire type %d)", fieldNum, wire)
 11849  		}
 11850  		switch fieldNum {
 11851  		case 1:
 11852  			if wireType != 0 {
 11853  				return fmt.Errorf("proto: wrong wireType = %d for field NodeID", wireType)
 11854  			}
 11855  			m.NodeID = 0
 11856  			for shift := uint(0); ; shift += 7 {
 11857  				if shift >= 64 {
 11858  					return ErrIntOverflowStructured
 11859  				}
 11860  				if iNdEx >= l {
 11861  					return io.ErrUnexpectedEOF
 11862  				}
 11863  				b := dAtA[iNdEx]
 11864  				iNdEx++
 11865  				m.NodeID |= (github_com_cockroachdb_cockroach_pkg_roachpb.NodeID(b) & 0x7F) << shift
 11866  				if b < 0x80 {
 11867  					break
 11868  				}
 11869  			}
 11870  		case 2:
 11871  			if wireType != 0 {
 11872  				return fmt.Errorf("proto: wrong wireType = %d for field ExpirationTime", wireType)
 11873  			}
 11874  			m.ExpirationTime = 0
 11875  			for shift := uint(0); ; shift += 7 {
 11876  				if shift >= 64 {
 11877  					return ErrIntOverflowStructured
 11878  				}
 11879  				if iNdEx >= l {
 11880  					return io.ErrUnexpectedEOF
 11881  				}
 11882  				b := dAtA[iNdEx]
 11883  				iNdEx++
 11884  				m.ExpirationTime |= (int64(b) & 0x7F) << shift
 11885  				if b < 0x80 {
 11886  					break
 11887  				}
 11888  			}
 11889  		default:
 11890  			iNdEx = preIndex
 11891  			skippy, err := skipStructured(dAtA[iNdEx:])
 11892  			if err != nil {
 11893  				return err
 11894  			}
 11895  			if skippy < 0 {
 11896  				return ErrInvalidLengthStructured
 11897  			}
 11898  			if (iNdEx + skippy) > l {
 11899  				return io.ErrUnexpectedEOF
 11900  			}
 11901  			iNdEx += skippy
 11902  		}
 11903  	}
 11904  
 11905  	if iNdEx > l {
 11906  		return io.ErrUnexpectedEOF
 11907  	}
 11908  	return nil
 11909  }
 11910  func (m *TableDescriptor_CheckConstraint) Unmarshal(dAtA []byte) error {
 11911  	l := len(dAtA)
 11912  	iNdEx := 0
 11913  	for iNdEx < l {
 11914  		preIndex := iNdEx
 11915  		var wire uint64
 11916  		for shift := uint(0); ; shift += 7 {
 11917  			if shift >= 64 {
 11918  				return ErrIntOverflowStructured
 11919  			}
 11920  			if iNdEx >= l {
 11921  				return io.ErrUnexpectedEOF
 11922  			}
 11923  			b := dAtA[iNdEx]
 11924  			iNdEx++
 11925  			wire |= (uint64(b) & 0x7F) << shift
 11926  			if b < 0x80 {
 11927  				break
 11928  			}
 11929  		}
 11930  		fieldNum := int32(wire >> 3)
 11931  		wireType := int(wire & 0x7)
 11932  		if wireType == 4 {
 11933  			return fmt.Errorf("proto: CheckConstraint: wiretype end group for non-group")
 11934  		}
 11935  		if fieldNum <= 0 {
 11936  			return fmt.Errorf("proto: CheckConstraint: illegal tag %d (wire type %d)", fieldNum, wire)
 11937  		}
 11938  		switch fieldNum {
 11939  		case 1:
 11940  			if wireType != 2 {
 11941  				return fmt.Errorf("proto: wrong wireType = %d for field Expr", wireType)
 11942  			}
 11943  			var stringLen uint64
 11944  			for shift := uint(0); ; shift += 7 {
 11945  				if shift >= 64 {
 11946  					return ErrIntOverflowStructured
 11947  				}
 11948  				if iNdEx >= l {
 11949  					return io.ErrUnexpectedEOF
 11950  				}
 11951  				b := dAtA[iNdEx]
 11952  				iNdEx++
 11953  				stringLen |= (uint64(b) & 0x7F) << shift
 11954  				if b < 0x80 {
 11955  					break
 11956  				}
 11957  			}
 11958  			intStringLen := int(stringLen)
 11959  			if intStringLen < 0 {
 11960  				return ErrInvalidLengthStructured
 11961  			}
 11962  			postIndex := iNdEx + intStringLen
 11963  			if postIndex > l {
 11964  				return io.ErrUnexpectedEOF
 11965  			}
 11966  			m.Expr = string(dAtA[iNdEx:postIndex])
 11967  			iNdEx = postIndex
 11968  		case 2:
 11969  			if wireType != 2 {
 11970  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
 11971  			}
 11972  			var stringLen uint64
 11973  			for shift := uint(0); ; shift += 7 {
 11974  				if shift >= 64 {
 11975  					return ErrIntOverflowStructured
 11976  				}
 11977  				if iNdEx >= l {
 11978  					return io.ErrUnexpectedEOF
 11979  				}
 11980  				b := dAtA[iNdEx]
 11981  				iNdEx++
 11982  				stringLen |= (uint64(b) & 0x7F) << shift
 11983  				if b < 0x80 {
 11984  					break
 11985  				}
 11986  			}
 11987  			intStringLen := int(stringLen)
 11988  			if intStringLen < 0 {
 11989  				return ErrInvalidLengthStructured
 11990  			}
 11991  			postIndex := iNdEx + intStringLen
 11992  			if postIndex > l {
 11993  				return io.ErrUnexpectedEOF
 11994  			}
 11995  			m.Name = string(dAtA[iNdEx:postIndex])
 11996  			iNdEx = postIndex
 11997  		case 3:
 11998  			if wireType != 0 {
 11999  				return fmt.Errorf("proto: wrong wireType = %d for field Validity", wireType)
 12000  			}
 12001  			m.Validity = 0
 12002  			for shift := uint(0); ; shift += 7 {
 12003  				if shift >= 64 {
 12004  					return ErrIntOverflowStructured
 12005  				}
 12006  				if iNdEx >= l {
 12007  					return io.ErrUnexpectedEOF
 12008  				}
 12009  				b := dAtA[iNdEx]
 12010  				iNdEx++
 12011  				m.Validity |= (ConstraintValidity(b) & 0x7F) << shift
 12012  				if b < 0x80 {
 12013  					break
 12014  				}
 12015  			}
 12016  		case 5:
 12017  			if wireType == 0 {
 12018  				var v ColumnID
 12019  				for shift := uint(0); ; shift += 7 {
 12020  					if shift >= 64 {
 12021  						return ErrIntOverflowStructured
 12022  					}
 12023  					if iNdEx >= l {
 12024  						return io.ErrUnexpectedEOF
 12025  					}
 12026  					b := dAtA[iNdEx]
 12027  					iNdEx++
 12028  					v |= (ColumnID(b) & 0x7F) << shift
 12029  					if b < 0x80 {
 12030  						break
 12031  					}
 12032  				}
 12033  				m.ColumnIDs = append(m.ColumnIDs, v)
 12034  			} else if wireType == 2 {
 12035  				var packedLen int
 12036  				for shift := uint(0); ; shift += 7 {
 12037  					if shift >= 64 {
 12038  						return ErrIntOverflowStructured
 12039  					}
 12040  					if iNdEx >= l {
 12041  						return io.ErrUnexpectedEOF
 12042  					}
 12043  					b := dAtA[iNdEx]
 12044  					iNdEx++
 12045  					packedLen |= (int(b) & 0x7F) << shift
 12046  					if b < 0x80 {
 12047  						break
 12048  					}
 12049  				}
 12050  				if packedLen < 0 {
 12051  					return ErrInvalidLengthStructured
 12052  				}
 12053  				postIndex := iNdEx + packedLen
 12054  				if postIndex > l {
 12055  					return io.ErrUnexpectedEOF
 12056  				}
 12057  				var elementCount int
 12058  				var count int
 12059  				for _, integer := range dAtA {
 12060  					if integer < 128 {
 12061  						count++
 12062  					}
 12063  				}
 12064  				elementCount = count
 12065  				if elementCount != 0 && len(m.ColumnIDs) == 0 {
 12066  					m.ColumnIDs = make([]ColumnID, 0, elementCount)
 12067  				}
 12068  				for iNdEx < postIndex {
 12069  					var v ColumnID
 12070  					for shift := uint(0); ; shift += 7 {
 12071  						if shift >= 64 {
 12072  							return ErrIntOverflowStructured
 12073  						}
 12074  						if iNdEx >= l {
 12075  							return io.ErrUnexpectedEOF
 12076  						}
 12077  						b := dAtA[iNdEx]
 12078  						iNdEx++
 12079  						v |= (ColumnID(b) & 0x7F) << shift
 12080  						if b < 0x80 {
 12081  							break
 12082  						}
 12083  					}
 12084  					m.ColumnIDs = append(m.ColumnIDs, v)
 12085  				}
 12086  			} else {
 12087  				return fmt.Errorf("proto: wrong wireType = %d for field ColumnIDs", wireType)
 12088  			}
 12089  		case 6:
 12090  			if wireType != 0 {
 12091  				return fmt.Errorf("proto: wrong wireType = %d for field IsNonNullConstraint", wireType)
 12092  			}
 12093  			var v int
 12094  			for shift := uint(0); ; shift += 7 {
 12095  				if shift >= 64 {
 12096  					return ErrIntOverflowStructured
 12097  				}
 12098  				if iNdEx >= l {
 12099  					return io.ErrUnexpectedEOF
 12100  				}
 12101  				b := dAtA[iNdEx]
 12102  				iNdEx++
 12103  				v |= (int(b) & 0x7F) << shift
 12104  				if b < 0x80 {
 12105  					break
 12106  				}
 12107  			}
 12108  			m.IsNonNullConstraint = bool(v != 0)
 12109  		case 7:
 12110  			if wireType != 0 {
 12111  				return fmt.Errorf("proto: wrong wireType = %d for field Hidden", wireType)
 12112  			}
 12113  			var v int
 12114  			for shift := uint(0); ; shift += 7 {
 12115  				if shift >= 64 {
 12116  					return ErrIntOverflowStructured
 12117  				}
 12118  				if iNdEx >= l {
 12119  					return io.ErrUnexpectedEOF
 12120  				}
 12121  				b := dAtA[iNdEx]
 12122  				iNdEx++
 12123  				v |= (int(b) & 0x7F) << shift
 12124  				if b < 0x80 {
 12125  					break
 12126  				}
 12127  			}
 12128  			m.Hidden = bool(v != 0)
 12129  		default:
 12130  			iNdEx = preIndex
 12131  			skippy, err := skipStructured(dAtA[iNdEx:])
 12132  			if err != nil {
 12133  				return err
 12134  			}
 12135  			if skippy < 0 {
 12136  				return ErrInvalidLengthStructured
 12137  			}
 12138  			if (iNdEx + skippy) > l {
 12139  				return io.ErrUnexpectedEOF
 12140  			}
 12141  			iNdEx += skippy
 12142  		}
 12143  	}
 12144  
 12145  	if iNdEx > l {
 12146  		return io.ErrUnexpectedEOF
 12147  	}
 12148  	return nil
 12149  }
 12150  func (m *TableDescriptor_NameInfo) Unmarshal(dAtA []byte) error {
 12151  	l := len(dAtA)
 12152  	iNdEx := 0
 12153  	for iNdEx < l {
 12154  		preIndex := iNdEx
 12155  		var wire uint64
 12156  		for shift := uint(0); ; shift += 7 {
 12157  			if shift >= 64 {
 12158  				return ErrIntOverflowStructured
 12159  			}
 12160  			if iNdEx >= l {
 12161  				return io.ErrUnexpectedEOF
 12162  			}
 12163  			b := dAtA[iNdEx]
 12164  			iNdEx++
 12165  			wire |= (uint64(b) & 0x7F) << shift
 12166  			if b < 0x80 {
 12167  				break
 12168  			}
 12169  		}
 12170  		fieldNum := int32(wire >> 3)
 12171  		wireType := int(wire & 0x7)
 12172  		if wireType == 4 {
 12173  			return fmt.Errorf("proto: NameInfo: wiretype end group for non-group")
 12174  		}
 12175  		if fieldNum <= 0 {
 12176  			return fmt.Errorf("proto: NameInfo: illegal tag %d (wire type %d)", fieldNum, wire)
 12177  		}
 12178  		switch fieldNum {
 12179  		case 1:
 12180  			if wireType != 0 {
 12181  				return fmt.Errorf("proto: wrong wireType = %d for field ParentID", wireType)
 12182  			}
 12183  			m.ParentID = 0
 12184  			for shift := uint(0); ; shift += 7 {
 12185  				if shift >= 64 {
 12186  					return ErrIntOverflowStructured
 12187  				}
 12188  				if iNdEx >= l {
 12189  					return io.ErrUnexpectedEOF
 12190  				}
 12191  				b := dAtA[iNdEx]
 12192  				iNdEx++
 12193  				m.ParentID |= (ID(b) & 0x7F) << shift
 12194  				if b < 0x80 {
 12195  					break
 12196  				}
 12197  			}
 12198  		case 2:
 12199  			if wireType != 2 {
 12200  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
 12201  			}
 12202  			var stringLen uint64
 12203  			for shift := uint(0); ; shift += 7 {
 12204  				if shift >= 64 {
 12205  					return ErrIntOverflowStructured
 12206  				}
 12207  				if iNdEx >= l {
 12208  					return io.ErrUnexpectedEOF
 12209  				}
 12210  				b := dAtA[iNdEx]
 12211  				iNdEx++
 12212  				stringLen |= (uint64(b) & 0x7F) << shift
 12213  				if b < 0x80 {
 12214  					break
 12215  				}
 12216  			}
 12217  			intStringLen := int(stringLen)
 12218  			if intStringLen < 0 {
 12219  				return ErrInvalidLengthStructured
 12220  			}
 12221  			postIndex := iNdEx + intStringLen
 12222  			if postIndex > l {
 12223  				return io.ErrUnexpectedEOF
 12224  			}
 12225  			m.Name = string(dAtA[iNdEx:postIndex])
 12226  			iNdEx = postIndex
 12227  		case 3:
 12228  			if wireType != 0 {
 12229  				return fmt.Errorf("proto: wrong wireType = %d for field ParentSchemaID", wireType)
 12230  			}
 12231  			m.ParentSchemaID = 0
 12232  			for shift := uint(0); ; shift += 7 {
 12233  				if shift >= 64 {
 12234  					return ErrIntOverflowStructured
 12235  				}
 12236  				if iNdEx >= l {
 12237  					return io.ErrUnexpectedEOF
 12238  				}
 12239  				b := dAtA[iNdEx]
 12240  				iNdEx++
 12241  				m.ParentSchemaID |= (ID(b) & 0x7F) << shift
 12242  				if b < 0x80 {
 12243  					break
 12244  				}
 12245  			}
 12246  		default:
 12247  			iNdEx = preIndex
 12248  			skippy, err := skipStructured(dAtA[iNdEx:])
 12249  			if err != nil {
 12250  				return err
 12251  			}
 12252  			if skippy < 0 {
 12253  				return ErrInvalidLengthStructured
 12254  			}
 12255  			if (iNdEx + skippy) > l {
 12256  				return io.ErrUnexpectedEOF
 12257  			}
 12258  			iNdEx += skippy
 12259  		}
 12260  	}
 12261  
 12262  	if iNdEx > l {
 12263  		return io.ErrUnexpectedEOF
 12264  	}
 12265  	return nil
 12266  }
 12267  func (m *TableDescriptor_Reference) Unmarshal(dAtA []byte) error {
 12268  	l := len(dAtA)
 12269  	iNdEx := 0
 12270  	for iNdEx < l {
 12271  		preIndex := iNdEx
 12272  		var wire uint64
 12273  		for shift := uint(0); ; shift += 7 {
 12274  			if shift >= 64 {
 12275  				return ErrIntOverflowStructured
 12276  			}
 12277  			if iNdEx >= l {
 12278  				return io.ErrUnexpectedEOF
 12279  			}
 12280  			b := dAtA[iNdEx]
 12281  			iNdEx++
 12282  			wire |= (uint64(b) & 0x7F) << shift
 12283  			if b < 0x80 {
 12284  				break
 12285  			}
 12286  		}
 12287  		fieldNum := int32(wire >> 3)
 12288  		wireType := int(wire & 0x7)
 12289  		if wireType == 4 {
 12290  			return fmt.Errorf("proto: Reference: wiretype end group for non-group")
 12291  		}
 12292  		if fieldNum <= 0 {
 12293  			return fmt.Errorf("proto: Reference: illegal tag %d (wire type %d)", fieldNum, wire)
 12294  		}
 12295  		switch fieldNum {
 12296  		case 1:
 12297  			if wireType != 0 {
 12298  				return fmt.Errorf("proto: wrong wireType = %d for field ID", wireType)
 12299  			}
 12300  			m.ID = 0
 12301  			for shift := uint(0); ; shift += 7 {
 12302  				if shift >= 64 {
 12303  					return ErrIntOverflowStructured
 12304  				}
 12305  				if iNdEx >= l {
 12306  					return io.ErrUnexpectedEOF
 12307  				}
 12308  				b := dAtA[iNdEx]
 12309  				iNdEx++
 12310  				m.ID |= (ID(b) & 0x7F) << shift
 12311  				if b < 0x80 {
 12312  					break
 12313  				}
 12314  			}
 12315  		case 2:
 12316  			if wireType != 0 {
 12317  				return fmt.Errorf("proto: wrong wireType = %d for field IndexID", wireType)
 12318  			}
 12319  			m.IndexID = 0
 12320  			for shift := uint(0); ; shift += 7 {
 12321  				if shift >= 64 {
 12322  					return ErrIntOverflowStructured
 12323  				}
 12324  				if iNdEx >= l {
 12325  					return io.ErrUnexpectedEOF
 12326  				}
 12327  				b := dAtA[iNdEx]
 12328  				iNdEx++
 12329  				m.IndexID |= (IndexID(b) & 0x7F) << shift
 12330  				if b < 0x80 {
 12331  					break
 12332  				}
 12333  			}
 12334  		case 3:
 12335  			if wireType == 0 {
 12336  				var v ColumnID
 12337  				for shift := uint(0); ; shift += 7 {
 12338  					if shift >= 64 {
 12339  						return ErrIntOverflowStructured
 12340  					}
 12341  					if iNdEx >= l {
 12342  						return io.ErrUnexpectedEOF
 12343  					}
 12344  					b := dAtA[iNdEx]
 12345  					iNdEx++
 12346  					v |= (ColumnID(b) & 0x7F) << shift
 12347  					if b < 0x80 {
 12348  						break
 12349  					}
 12350  				}
 12351  				m.ColumnIDs = append(m.ColumnIDs, v)
 12352  			} else if wireType == 2 {
 12353  				var packedLen int
 12354  				for shift := uint(0); ; shift += 7 {
 12355  					if shift >= 64 {
 12356  						return ErrIntOverflowStructured
 12357  					}
 12358  					if iNdEx >= l {
 12359  						return io.ErrUnexpectedEOF
 12360  					}
 12361  					b := dAtA[iNdEx]
 12362  					iNdEx++
 12363  					packedLen |= (int(b) & 0x7F) << shift
 12364  					if b < 0x80 {
 12365  						break
 12366  					}
 12367  				}
 12368  				if packedLen < 0 {
 12369  					return ErrInvalidLengthStructured
 12370  				}
 12371  				postIndex := iNdEx + packedLen
 12372  				if postIndex > l {
 12373  					return io.ErrUnexpectedEOF
 12374  				}
 12375  				var elementCount int
 12376  				var count int
 12377  				for _, integer := range dAtA {
 12378  					if integer < 128 {
 12379  						count++
 12380  					}
 12381  				}
 12382  				elementCount = count
 12383  				if elementCount != 0 && len(m.ColumnIDs) == 0 {
 12384  					m.ColumnIDs = make([]ColumnID, 0, elementCount)
 12385  				}
 12386  				for iNdEx < postIndex {
 12387  					var v ColumnID
 12388  					for shift := uint(0); ; shift += 7 {
 12389  						if shift >= 64 {
 12390  							return ErrIntOverflowStructured
 12391  						}
 12392  						if iNdEx >= l {
 12393  							return io.ErrUnexpectedEOF
 12394  						}
 12395  						b := dAtA[iNdEx]
 12396  						iNdEx++
 12397  						v |= (ColumnID(b) & 0x7F) << shift
 12398  						if b < 0x80 {
 12399  							break
 12400  						}
 12401  					}
 12402  					m.ColumnIDs = append(m.ColumnIDs, v)
 12403  				}
 12404  			} else {
 12405  				return fmt.Errorf("proto: wrong wireType = %d for field ColumnIDs", wireType)
 12406  			}
 12407  		default:
 12408  			iNdEx = preIndex
 12409  			skippy, err := skipStructured(dAtA[iNdEx:])
 12410  			if err != nil {
 12411  				return err
 12412  			}
 12413  			if skippy < 0 {
 12414  				return ErrInvalidLengthStructured
 12415  			}
 12416  			if (iNdEx + skippy) > l {
 12417  				return io.ErrUnexpectedEOF
 12418  			}
 12419  			iNdEx += skippy
 12420  		}
 12421  	}
 12422  
 12423  	if iNdEx > l {
 12424  		return io.ErrUnexpectedEOF
 12425  	}
 12426  	return nil
 12427  }
 12428  func (m *TableDescriptor_MutationJob) Unmarshal(dAtA []byte) error {
 12429  	l := len(dAtA)
 12430  	iNdEx := 0
 12431  	for iNdEx < l {
 12432  		preIndex := iNdEx
 12433  		var wire uint64
 12434  		for shift := uint(0); ; shift += 7 {
 12435  			if shift >= 64 {
 12436  				return ErrIntOverflowStructured
 12437  			}
 12438  			if iNdEx >= l {
 12439  				return io.ErrUnexpectedEOF
 12440  			}
 12441  			b := dAtA[iNdEx]
 12442  			iNdEx++
 12443  			wire |= (uint64(b) & 0x7F) << shift
 12444  			if b < 0x80 {
 12445  				break
 12446  			}
 12447  		}
 12448  		fieldNum := int32(wire >> 3)
 12449  		wireType := int(wire & 0x7)
 12450  		if wireType == 4 {
 12451  			return fmt.Errorf("proto: MutationJob: wiretype end group for non-group")
 12452  		}
 12453  		if fieldNum <= 0 {
 12454  			return fmt.Errorf("proto: MutationJob: illegal tag %d (wire type %d)", fieldNum, wire)
 12455  		}
 12456  		switch fieldNum {
 12457  		case 1:
 12458  			if wireType != 0 {
 12459  				return fmt.Errorf("proto: wrong wireType = %d for field MutationID", wireType)
 12460  			}
 12461  			m.MutationID = 0
 12462  			for shift := uint(0); ; shift += 7 {
 12463  				if shift >= 64 {
 12464  					return ErrIntOverflowStructured
 12465  				}
 12466  				if iNdEx >= l {
 12467  					return io.ErrUnexpectedEOF
 12468  				}
 12469  				b := dAtA[iNdEx]
 12470  				iNdEx++
 12471  				m.MutationID |= (MutationID(b) & 0x7F) << shift
 12472  				if b < 0x80 {
 12473  					break
 12474  				}
 12475  			}
 12476  		case 2:
 12477  			if wireType != 0 {
 12478  				return fmt.Errorf("proto: wrong wireType = %d for field JobID", wireType)
 12479  			}
 12480  			m.JobID = 0
 12481  			for shift := uint(0); ; shift += 7 {
 12482  				if shift >= 64 {
 12483  					return ErrIntOverflowStructured
 12484  				}
 12485  				if iNdEx >= l {
 12486  					return io.ErrUnexpectedEOF
 12487  				}
 12488  				b := dAtA[iNdEx]
 12489  				iNdEx++
 12490  				m.JobID |= (int64(b) & 0x7F) << shift
 12491  				if b < 0x80 {
 12492  					break
 12493  				}
 12494  			}
 12495  		default:
 12496  			iNdEx = preIndex
 12497  			skippy, err := skipStructured(dAtA[iNdEx:])
 12498  			if err != nil {
 12499  				return err
 12500  			}
 12501  			if skippy < 0 {
 12502  				return ErrInvalidLengthStructured
 12503  			}
 12504  			if (iNdEx + skippy) > l {
 12505  				return io.ErrUnexpectedEOF
 12506  			}
 12507  			iNdEx += skippy
 12508  		}
 12509  	}
 12510  
 12511  	if iNdEx > l {
 12512  		return io.ErrUnexpectedEOF
 12513  	}
 12514  	return nil
 12515  }
 12516  func (m *TableDescriptor_SequenceOpts) Unmarshal(dAtA []byte) error {
 12517  	l := len(dAtA)
 12518  	iNdEx := 0
 12519  	for iNdEx < l {
 12520  		preIndex := iNdEx
 12521  		var wire uint64
 12522  		for shift := uint(0); ; shift += 7 {
 12523  			if shift >= 64 {
 12524  				return ErrIntOverflowStructured
 12525  			}
 12526  			if iNdEx >= l {
 12527  				return io.ErrUnexpectedEOF
 12528  			}
 12529  			b := dAtA[iNdEx]
 12530  			iNdEx++
 12531  			wire |= (uint64(b) & 0x7F) << shift
 12532  			if b < 0x80 {
 12533  				break
 12534  			}
 12535  		}
 12536  		fieldNum := int32(wire >> 3)
 12537  		wireType := int(wire & 0x7)
 12538  		if wireType == 4 {
 12539  			return fmt.Errorf("proto: SequenceOpts: wiretype end group for non-group")
 12540  		}
 12541  		if fieldNum <= 0 {
 12542  			return fmt.Errorf("proto: SequenceOpts: illegal tag %d (wire type %d)", fieldNum, wire)
 12543  		}
 12544  		switch fieldNum {
 12545  		case 1:
 12546  			if wireType != 0 {
 12547  				return fmt.Errorf("proto: wrong wireType = %d for field Increment", wireType)
 12548  			}
 12549  			m.Increment = 0
 12550  			for shift := uint(0); ; shift += 7 {
 12551  				if shift >= 64 {
 12552  					return ErrIntOverflowStructured
 12553  				}
 12554  				if iNdEx >= l {
 12555  					return io.ErrUnexpectedEOF
 12556  				}
 12557  				b := dAtA[iNdEx]
 12558  				iNdEx++
 12559  				m.Increment |= (int64(b) & 0x7F) << shift
 12560  				if b < 0x80 {
 12561  					break
 12562  				}
 12563  			}
 12564  		case 2:
 12565  			if wireType != 0 {
 12566  				return fmt.Errorf("proto: wrong wireType = %d for field MinValue", wireType)
 12567  			}
 12568  			m.MinValue = 0
 12569  			for shift := uint(0); ; shift += 7 {
 12570  				if shift >= 64 {
 12571  					return ErrIntOverflowStructured
 12572  				}
 12573  				if iNdEx >= l {
 12574  					return io.ErrUnexpectedEOF
 12575  				}
 12576  				b := dAtA[iNdEx]
 12577  				iNdEx++
 12578  				m.MinValue |= (int64(b) & 0x7F) << shift
 12579  				if b < 0x80 {
 12580  					break
 12581  				}
 12582  			}
 12583  		case 3:
 12584  			if wireType != 0 {
 12585  				return fmt.Errorf("proto: wrong wireType = %d for field MaxValue", wireType)
 12586  			}
 12587  			m.MaxValue = 0
 12588  			for shift := uint(0); ; shift += 7 {
 12589  				if shift >= 64 {
 12590  					return ErrIntOverflowStructured
 12591  				}
 12592  				if iNdEx >= l {
 12593  					return io.ErrUnexpectedEOF
 12594  				}
 12595  				b := dAtA[iNdEx]
 12596  				iNdEx++
 12597  				m.MaxValue |= (int64(b) & 0x7F) << shift
 12598  				if b < 0x80 {
 12599  					break
 12600  				}
 12601  			}
 12602  		case 4:
 12603  			if wireType != 0 {
 12604  				return fmt.Errorf("proto: wrong wireType = %d for field Start", wireType)
 12605  			}
 12606  			m.Start = 0
 12607  			for shift := uint(0); ; shift += 7 {
 12608  				if shift >= 64 {
 12609  					return ErrIntOverflowStructured
 12610  				}
 12611  				if iNdEx >= l {
 12612  					return io.ErrUnexpectedEOF
 12613  				}
 12614  				b := dAtA[iNdEx]
 12615  				iNdEx++
 12616  				m.Start |= (int64(b) & 0x7F) << shift
 12617  				if b < 0x80 {
 12618  					break
 12619  				}
 12620  			}
 12621  		case 5:
 12622  			if wireType != 0 {
 12623  				return fmt.Errorf("proto: wrong wireType = %d for field Virtual", wireType)
 12624  			}
 12625  			var v int
 12626  			for shift := uint(0); ; shift += 7 {
 12627  				if shift >= 64 {
 12628  					return ErrIntOverflowStructured
 12629  				}
 12630  				if iNdEx >= l {
 12631  					return io.ErrUnexpectedEOF
 12632  				}
 12633  				b := dAtA[iNdEx]
 12634  				iNdEx++
 12635  				v |= (int(b) & 0x7F) << shift
 12636  				if b < 0x80 {
 12637  					break
 12638  				}
 12639  			}
 12640  			m.Virtual = bool(v != 0)
 12641  		case 6:
 12642  			if wireType != 2 {
 12643  				return fmt.Errorf("proto: wrong wireType = %d for field SequenceOwner", wireType)
 12644  			}
 12645  			var msglen int
 12646  			for shift := uint(0); ; shift += 7 {
 12647  				if shift >= 64 {
 12648  					return ErrIntOverflowStructured
 12649  				}
 12650  				if iNdEx >= l {
 12651  					return io.ErrUnexpectedEOF
 12652  				}
 12653  				b := dAtA[iNdEx]
 12654  				iNdEx++
 12655  				msglen |= (int(b) & 0x7F) << shift
 12656  				if b < 0x80 {
 12657  					break
 12658  				}
 12659  			}
 12660  			if msglen < 0 {
 12661  				return ErrInvalidLengthStructured
 12662  			}
 12663  			postIndex := iNdEx + msglen
 12664  			if postIndex > l {
 12665  				return io.ErrUnexpectedEOF
 12666  			}
 12667  			if err := m.SequenceOwner.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 12668  				return err
 12669  			}
 12670  			iNdEx = postIndex
 12671  		default:
 12672  			iNdEx = preIndex
 12673  			skippy, err := skipStructured(dAtA[iNdEx:])
 12674  			if err != nil {
 12675  				return err
 12676  			}
 12677  			if skippy < 0 {
 12678  				return ErrInvalidLengthStructured
 12679  			}
 12680  			if (iNdEx + skippy) > l {
 12681  				return io.ErrUnexpectedEOF
 12682  			}
 12683  			iNdEx += skippy
 12684  		}
 12685  	}
 12686  
 12687  	if iNdEx > l {
 12688  		return io.ErrUnexpectedEOF
 12689  	}
 12690  	return nil
 12691  }
 12692  func (m *TableDescriptor_SequenceOpts_SequenceOwner) Unmarshal(dAtA []byte) error {
 12693  	l := len(dAtA)
 12694  	iNdEx := 0
 12695  	for iNdEx < l {
 12696  		preIndex := iNdEx
 12697  		var wire uint64
 12698  		for shift := uint(0); ; shift += 7 {
 12699  			if shift >= 64 {
 12700  				return ErrIntOverflowStructured
 12701  			}
 12702  			if iNdEx >= l {
 12703  				return io.ErrUnexpectedEOF
 12704  			}
 12705  			b := dAtA[iNdEx]
 12706  			iNdEx++
 12707  			wire |= (uint64(b) & 0x7F) << shift
 12708  			if b < 0x80 {
 12709  				break
 12710  			}
 12711  		}
 12712  		fieldNum := int32(wire >> 3)
 12713  		wireType := int(wire & 0x7)
 12714  		if wireType == 4 {
 12715  			return fmt.Errorf("proto: SequenceOwner: wiretype end group for non-group")
 12716  		}
 12717  		if fieldNum <= 0 {
 12718  			return fmt.Errorf("proto: SequenceOwner: illegal tag %d (wire type %d)", fieldNum, wire)
 12719  		}
 12720  		switch fieldNum {
 12721  		case 1:
 12722  			if wireType != 0 {
 12723  				return fmt.Errorf("proto: wrong wireType = %d for field OwnerColumnID", wireType)
 12724  			}
 12725  			m.OwnerColumnID = 0
 12726  			for shift := uint(0); ; shift += 7 {
 12727  				if shift >= 64 {
 12728  					return ErrIntOverflowStructured
 12729  				}
 12730  				if iNdEx >= l {
 12731  					return io.ErrUnexpectedEOF
 12732  				}
 12733  				b := dAtA[iNdEx]
 12734  				iNdEx++
 12735  				m.OwnerColumnID |= (ColumnID(b) & 0x7F) << shift
 12736  				if b < 0x80 {
 12737  					break
 12738  				}
 12739  			}
 12740  		case 2:
 12741  			if wireType != 0 {
 12742  				return fmt.Errorf("proto: wrong wireType = %d for field OwnerTableID", wireType)
 12743  			}
 12744  			m.OwnerTableID = 0
 12745  			for shift := uint(0); ; shift += 7 {
 12746  				if shift >= 64 {
 12747  					return ErrIntOverflowStructured
 12748  				}
 12749  				if iNdEx >= l {
 12750  					return io.ErrUnexpectedEOF
 12751  				}
 12752  				b := dAtA[iNdEx]
 12753  				iNdEx++
 12754  				m.OwnerTableID |= (ID(b) & 0x7F) << shift
 12755  				if b < 0x80 {
 12756  					break
 12757  				}
 12758  			}
 12759  		default:
 12760  			iNdEx = preIndex
 12761  			skippy, err := skipStructured(dAtA[iNdEx:])
 12762  			if err != nil {
 12763  				return err
 12764  			}
 12765  			if skippy < 0 {
 12766  				return ErrInvalidLengthStructured
 12767  			}
 12768  			if (iNdEx + skippy) > l {
 12769  				return io.ErrUnexpectedEOF
 12770  			}
 12771  			iNdEx += skippy
 12772  		}
 12773  	}
 12774  
 12775  	if iNdEx > l {
 12776  		return io.ErrUnexpectedEOF
 12777  	}
 12778  	return nil
 12779  }
 12780  func (m *TableDescriptor_Replacement) Unmarshal(dAtA []byte) error {
 12781  	l := len(dAtA)
 12782  	iNdEx := 0
 12783  	for iNdEx < l {
 12784  		preIndex := iNdEx
 12785  		var wire uint64
 12786  		for shift := uint(0); ; shift += 7 {
 12787  			if shift >= 64 {
 12788  				return ErrIntOverflowStructured
 12789  			}
 12790  			if iNdEx >= l {
 12791  				return io.ErrUnexpectedEOF
 12792  			}
 12793  			b := dAtA[iNdEx]
 12794  			iNdEx++
 12795  			wire |= (uint64(b) & 0x7F) << shift
 12796  			if b < 0x80 {
 12797  				break
 12798  			}
 12799  		}
 12800  		fieldNum := int32(wire >> 3)
 12801  		wireType := int(wire & 0x7)
 12802  		if wireType == 4 {
 12803  			return fmt.Errorf("proto: Replacement: wiretype end group for non-group")
 12804  		}
 12805  		if fieldNum <= 0 {
 12806  			return fmt.Errorf("proto: Replacement: illegal tag %d (wire type %d)", fieldNum, wire)
 12807  		}
 12808  		switch fieldNum {
 12809  		case 1:
 12810  			if wireType != 0 {
 12811  				return fmt.Errorf("proto: wrong wireType = %d for field ID", wireType)
 12812  			}
 12813  			m.ID = 0
 12814  			for shift := uint(0); ; shift += 7 {
 12815  				if shift >= 64 {
 12816  					return ErrIntOverflowStructured
 12817  				}
 12818  				if iNdEx >= l {
 12819  					return io.ErrUnexpectedEOF
 12820  				}
 12821  				b := dAtA[iNdEx]
 12822  				iNdEx++
 12823  				m.ID |= (ID(b) & 0x7F) << shift
 12824  				if b < 0x80 {
 12825  					break
 12826  				}
 12827  			}
 12828  		case 2:
 12829  			if wireType != 2 {
 12830  				return fmt.Errorf("proto: wrong wireType = %d for field Time", wireType)
 12831  			}
 12832  			var msglen int
 12833  			for shift := uint(0); ; shift += 7 {
 12834  				if shift >= 64 {
 12835  					return ErrIntOverflowStructured
 12836  				}
 12837  				if iNdEx >= l {
 12838  					return io.ErrUnexpectedEOF
 12839  				}
 12840  				b := dAtA[iNdEx]
 12841  				iNdEx++
 12842  				msglen |= (int(b) & 0x7F) << shift
 12843  				if b < 0x80 {
 12844  					break
 12845  				}
 12846  			}
 12847  			if msglen < 0 {
 12848  				return ErrInvalidLengthStructured
 12849  			}
 12850  			postIndex := iNdEx + msglen
 12851  			if postIndex > l {
 12852  				return io.ErrUnexpectedEOF
 12853  			}
 12854  			if err := m.Time.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 12855  				return err
 12856  			}
 12857  			iNdEx = postIndex
 12858  		default:
 12859  			iNdEx = preIndex
 12860  			skippy, err := skipStructured(dAtA[iNdEx:])
 12861  			if err != nil {
 12862  				return err
 12863  			}
 12864  			if skippy < 0 {
 12865  				return ErrInvalidLengthStructured
 12866  			}
 12867  			if (iNdEx + skippy) > l {
 12868  				return io.ErrUnexpectedEOF
 12869  			}
 12870  			iNdEx += skippy
 12871  		}
 12872  	}
 12873  
 12874  	if iNdEx > l {
 12875  		return io.ErrUnexpectedEOF
 12876  	}
 12877  	return nil
 12878  }
 12879  func (m *TableDescriptor_GCDescriptorMutation) Unmarshal(dAtA []byte) error {
 12880  	l := len(dAtA)
 12881  	iNdEx := 0
 12882  	for iNdEx < l {
 12883  		preIndex := iNdEx
 12884  		var wire uint64
 12885  		for shift := uint(0); ; shift += 7 {
 12886  			if shift >= 64 {
 12887  				return ErrIntOverflowStructured
 12888  			}
 12889  			if iNdEx >= l {
 12890  				return io.ErrUnexpectedEOF
 12891  			}
 12892  			b := dAtA[iNdEx]
 12893  			iNdEx++
 12894  			wire |= (uint64(b) & 0x7F) << shift
 12895  			if b < 0x80 {
 12896  				break
 12897  			}
 12898  		}
 12899  		fieldNum := int32(wire >> 3)
 12900  		wireType := int(wire & 0x7)
 12901  		if wireType == 4 {
 12902  			return fmt.Errorf("proto: GCDescriptorMutation: wiretype end group for non-group")
 12903  		}
 12904  		if fieldNum <= 0 {
 12905  			return fmt.Errorf("proto: GCDescriptorMutation: illegal tag %d (wire type %d)", fieldNum, wire)
 12906  		}
 12907  		switch fieldNum {
 12908  		case 1:
 12909  			if wireType != 0 {
 12910  				return fmt.Errorf("proto: wrong wireType = %d for field IndexID", wireType)
 12911  			}
 12912  			m.IndexID = 0
 12913  			for shift := uint(0); ; shift += 7 {
 12914  				if shift >= 64 {
 12915  					return ErrIntOverflowStructured
 12916  				}
 12917  				if iNdEx >= l {
 12918  					return io.ErrUnexpectedEOF
 12919  				}
 12920  				b := dAtA[iNdEx]
 12921  				iNdEx++
 12922  				m.IndexID |= (IndexID(b) & 0x7F) << shift
 12923  				if b < 0x80 {
 12924  					break
 12925  				}
 12926  			}
 12927  		case 2:
 12928  			if wireType != 0 {
 12929  				return fmt.Errorf("proto: wrong wireType = %d for field DropTime", wireType)
 12930  			}
 12931  			m.DropTime = 0
 12932  			for shift := uint(0); ; shift += 7 {
 12933  				if shift >= 64 {
 12934  					return ErrIntOverflowStructured
 12935  				}
 12936  				if iNdEx >= l {
 12937  					return io.ErrUnexpectedEOF
 12938  				}
 12939  				b := dAtA[iNdEx]
 12940  				iNdEx++
 12941  				m.DropTime |= (int64(b) & 0x7F) << shift
 12942  				if b < 0x80 {
 12943  					break
 12944  				}
 12945  			}
 12946  		case 3:
 12947  			if wireType != 0 {
 12948  				return fmt.Errorf("proto: wrong wireType = %d for field JobID", wireType)
 12949  			}
 12950  			m.JobID = 0
 12951  			for shift := uint(0); ; shift += 7 {
 12952  				if shift >= 64 {
 12953  					return ErrIntOverflowStructured
 12954  				}
 12955  				if iNdEx >= l {
 12956  					return io.ErrUnexpectedEOF
 12957  				}
 12958  				b := dAtA[iNdEx]
 12959  				iNdEx++
 12960  				m.JobID |= (int64(b) & 0x7F) << shift
 12961  				if b < 0x80 {
 12962  					break
 12963  				}
 12964  			}
 12965  		default:
 12966  			iNdEx = preIndex
 12967  			skippy, err := skipStructured(dAtA[iNdEx:])
 12968  			if err != nil {
 12969  				return err
 12970  			}
 12971  			if skippy < 0 {
 12972  				return ErrInvalidLengthStructured
 12973  			}
 12974  			if (iNdEx + skippy) > l {
 12975  				return io.ErrUnexpectedEOF
 12976  			}
 12977  			iNdEx += skippy
 12978  		}
 12979  	}
 12980  
 12981  	if iNdEx > l {
 12982  		return io.ErrUnexpectedEOF
 12983  	}
 12984  	return nil
 12985  }
 12986  func (m *DatabaseDescriptor) Unmarshal(dAtA []byte) error {
 12987  	l := len(dAtA)
 12988  	iNdEx := 0
 12989  	for iNdEx < l {
 12990  		preIndex := iNdEx
 12991  		var wire uint64
 12992  		for shift := uint(0); ; shift += 7 {
 12993  			if shift >= 64 {
 12994  				return ErrIntOverflowStructured
 12995  			}
 12996  			if iNdEx >= l {
 12997  				return io.ErrUnexpectedEOF
 12998  			}
 12999  			b := dAtA[iNdEx]
 13000  			iNdEx++
 13001  			wire |= (uint64(b) & 0x7F) << shift
 13002  			if b < 0x80 {
 13003  				break
 13004  			}
 13005  		}
 13006  		fieldNum := int32(wire >> 3)
 13007  		wireType := int(wire & 0x7)
 13008  		if wireType == 4 {
 13009  			return fmt.Errorf("proto: DatabaseDescriptor: wiretype end group for non-group")
 13010  		}
 13011  		if fieldNum <= 0 {
 13012  			return fmt.Errorf("proto: DatabaseDescriptor: illegal tag %d (wire type %d)", fieldNum, wire)
 13013  		}
 13014  		switch fieldNum {
 13015  		case 1:
 13016  			if wireType != 2 {
 13017  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
 13018  			}
 13019  			var stringLen uint64
 13020  			for shift := uint(0); ; shift += 7 {
 13021  				if shift >= 64 {
 13022  					return ErrIntOverflowStructured
 13023  				}
 13024  				if iNdEx >= l {
 13025  					return io.ErrUnexpectedEOF
 13026  				}
 13027  				b := dAtA[iNdEx]
 13028  				iNdEx++
 13029  				stringLen |= (uint64(b) & 0x7F) << shift
 13030  				if b < 0x80 {
 13031  					break
 13032  				}
 13033  			}
 13034  			intStringLen := int(stringLen)
 13035  			if intStringLen < 0 {
 13036  				return ErrInvalidLengthStructured
 13037  			}
 13038  			postIndex := iNdEx + intStringLen
 13039  			if postIndex > l {
 13040  				return io.ErrUnexpectedEOF
 13041  			}
 13042  			m.Name = string(dAtA[iNdEx:postIndex])
 13043  			iNdEx = postIndex
 13044  		case 2:
 13045  			if wireType != 0 {
 13046  				return fmt.Errorf("proto: wrong wireType = %d for field ID", wireType)
 13047  			}
 13048  			m.ID = 0
 13049  			for shift := uint(0); ; shift += 7 {
 13050  				if shift >= 64 {
 13051  					return ErrIntOverflowStructured
 13052  				}
 13053  				if iNdEx >= l {
 13054  					return io.ErrUnexpectedEOF
 13055  				}
 13056  				b := dAtA[iNdEx]
 13057  				iNdEx++
 13058  				m.ID |= (ID(b) & 0x7F) << shift
 13059  				if b < 0x80 {
 13060  					break
 13061  				}
 13062  			}
 13063  		case 3:
 13064  			if wireType != 2 {
 13065  				return fmt.Errorf("proto: wrong wireType = %d for field Privileges", wireType)
 13066  			}
 13067  			var msglen int
 13068  			for shift := uint(0); ; shift += 7 {
 13069  				if shift >= 64 {
 13070  					return ErrIntOverflowStructured
 13071  				}
 13072  				if iNdEx >= l {
 13073  					return io.ErrUnexpectedEOF
 13074  				}
 13075  				b := dAtA[iNdEx]
 13076  				iNdEx++
 13077  				msglen |= (int(b) & 0x7F) << shift
 13078  				if b < 0x80 {
 13079  					break
 13080  				}
 13081  			}
 13082  			if msglen < 0 {
 13083  				return ErrInvalidLengthStructured
 13084  			}
 13085  			postIndex := iNdEx + msglen
 13086  			if postIndex > l {
 13087  				return io.ErrUnexpectedEOF
 13088  			}
 13089  			if m.Privileges == nil {
 13090  				m.Privileges = &PrivilegeDescriptor{}
 13091  			}
 13092  			if err := m.Privileges.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 13093  				return err
 13094  			}
 13095  			iNdEx = postIndex
 13096  		default:
 13097  			iNdEx = preIndex
 13098  			skippy, err := skipStructured(dAtA[iNdEx:])
 13099  			if err != nil {
 13100  				return err
 13101  			}
 13102  			if skippy < 0 {
 13103  				return ErrInvalidLengthStructured
 13104  			}
 13105  			if (iNdEx + skippy) > l {
 13106  				return io.ErrUnexpectedEOF
 13107  			}
 13108  			iNdEx += skippy
 13109  		}
 13110  	}
 13111  
 13112  	if iNdEx > l {
 13113  		return io.ErrUnexpectedEOF
 13114  	}
 13115  	return nil
 13116  }
 13117  func (m *TypeDescriptor) Unmarshal(dAtA []byte) error {
 13118  	l := len(dAtA)
 13119  	iNdEx := 0
 13120  	for iNdEx < l {
 13121  		preIndex := iNdEx
 13122  		var wire uint64
 13123  		for shift := uint(0); ; shift += 7 {
 13124  			if shift >= 64 {
 13125  				return ErrIntOverflowStructured
 13126  			}
 13127  			if iNdEx >= l {
 13128  				return io.ErrUnexpectedEOF
 13129  			}
 13130  			b := dAtA[iNdEx]
 13131  			iNdEx++
 13132  			wire |= (uint64(b) & 0x7F) << shift
 13133  			if b < 0x80 {
 13134  				break
 13135  			}
 13136  		}
 13137  		fieldNum := int32(wire >> 3)
 13138  		wireType := int(wire & 0x7)
 13139  		if wireType == 4 {
 13140  			return fmt.Errorf("proto: TypeDescriptor: wiretype end group for non-group")
 13141  		}
 13142  		if fieldNum <= 0 {
 13143  			return fmt.Errorf("proto: TypeDescriptor: illegal tag %d (wire type %d)", fieldNum, wire)
 13144  		}
 13145  		switch fieldNum {
 13146  		case 1:
 13147  			if wireType != 0 {
 13148  				return fmt.Errorf("proto: wrong wireType = %d for field ParentID", wireType)
 13149  			}
 13150  			m.ParentID = 0
 13151  			for shift := uint(0); ; shift += 7 {
 13152  				if shift >= 64 {
 13153  					return ErrIntOverflowStructured
 13154  				}
 13155  				if iNdEx >= l {
 13156  					return io.ErrUnexpectedEOF
 13157  				}
 13158  				b := dAtA[iNdEx]
 13159  				iNdEx++
 13160  				m.ParentID |= (ID(b) & 0x7F) << shift
 13161  				if b < 0x80 {
 13162  					break
 13163  				}
 13164  			}
 13165  		case 2:
 13166  			if wireType != 0 {
 13167  				return fmt.Errorf("proto: wrong wireType = %d for field ParentSchemaID", wireType)
 13168  			}
 13169  			m.ParentSchemaID = 0
 13170  			for shift := uint(0); ; shift += 7 {
 13171  				if shift >= 64 {
 13172  					return ErrIntOverflowStructured
 13173  				}
 13174  				if iNdEx >= l {
 13175  					return io.ErrUnexpectedEOF
 13176  				}
 13177  				b := dAtA[iNdEx]
 13178  				iNdEx++
 13179  				m.ParentSchemaID |= (ID(b) & 0x7F) << shift
 13180  				if b < 0x80 {
 13181  					break
 13182  				}
 13183  			}
 13184  		case 3:
 13185  			if wireType != 2 {
 13186  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
 13187  			}
 13188  			var stringLen uint64
 13189  			for shift := uint(0); ; shift += 7 {
 13190  				if shift >= 64 {
 13191  					return ErrIntOverflowStructured
 13192  				}
 13193  				if iNdEx >= l {
 13194  					return io.ErrUnexpectedEOF
 13195  				}
 13196  				b := dAtA[iNdEx]
 13197  				iNdEx++
 13198  				stringLen |= (uint64(b) & 0x7F) << shift
 13199  				if b < 0x80 {
 13200  					break
 13201  				}
 13202  			}
 13203  			intStringLen := int(stringLen)
 13204  			if intStringLen < 0 {
 13205  				return ErrInvalidLengthStructured
 13206  			}
 13207  			postIndex := iNdEx + intStringLen
 13208  			if postIndex > l {
 13209  				return io.ErrUnexpectedEOF
 13210  			}
 13211  			m.Name = string(dAtA[iNdEx:postIndex])
 13212  			iNdEx = postIndex
 13213  		case 4:
 13214  			if wireType != 0 {
 13215  				return fmt.Errorf("proto: wrong wireType = %d for field ID", wireType)
 13216  			}
 13217  			m.ID = 0
 13218  			for shift := uint(0); ; shift += 7 {
 13219  				if shift >= 64 {
 13220  					return ErrIntOverflowStructured
 13221  				}
 13222  				if iNdEx >= l {
 13223  					return io.ErrUnexpectedEOF
 13224  				}
 13225  				b := dAtA[iNdEx]
 13226  				iNdEx++
 13227  				m.ID |= (ID(b) & 0x7F) << shift
 13228  				if b < 0x80 {
 13229  					break
 13230  				}
 13231  			}
 13232  		case 5:
 13233  			if wireType != 0 {
 13234  				return fmt.Errorf("proto: wrong wireType = %d for field Kind", wireType)
 13235  			}
 13236  			m.Kind = 0
 13237  			for shift := uint(0); ; shift += 7 {
 13238  				if shift >= 64 {
 13239  					return ErrIntOverflowStructured
 13240  				}
 13241  				if iNdEx >= l {
 13242  					return io.ErrUnexpectedEOF
 13243  				}
 13244  				b := dAtA[iNdEx]
 13245  				iNdEx++
 13246  				m.Kind |= (TypeDescriptor_Kind(b) & 0x7F) << shift
 13247  				if b < 0x80 {
 13248  					break
 13249  				}
 13250  			}
 13251  		case 6:
 13252  			if wireType != 2 {
 13253  				return fmt.Errorf("proto: wrong wireType = %d for field EnumMembers", wireType)
 13254  			}
 13255  			var msglen int
 13256  			for shift := uint(0); ; shift += 7 {
 13257  				if shift >= 64 {
 13258  					return ErrIntOverflowStructured
 13259  				}
 13260  				if iNdEx >= l {
 13261  					return io.ErrUnexpectedEOF
 13262  				}
 13263  				b := dAtA[iNdEx]
 13264  				iNdEx++
 13265  				msglen |= (int(b) & 0x7F) << shift
 13266  				if b < 0x80 {
 13267  					break
 13268  				}
 13269  			}
 13270  			if msglen < 0 {
 13271  				return ErrInvalidLengthStructured
 13272  			}
 13273  			postIndex := iNdEx + msglen
 13274  			if postIndex > l {
 13275  				return io.ErrUnexpectedEOF
 13276  			}
 13277  			m.EnumMembers = append(m.EnumMembers, TypeDescriptor_EnumMember{})
 13278  			if err := m.EnumMembers[len(m.EnumMembers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 13279  				return err
 13280  			}
 13281  			iNdEx = postIndex
 13282  		case 7:
 13283  			if wireType != 2 {
 13284  				return fmt.Errorf("proto: wrong wireType = %d for field Alias", wireType)
 13285  			}
 13286  			var msglen int
 13287  			for shift := uint(0); ; shift += 7 {
 13288  				if shift >= 64 {
 13289  					return ErrIntOverflowStructured
 13290  				}
 13291  				if iNdEx >= l {
 13292  					return io.ErrUnexpectedEOF
 13293  				}
 13294  				b := dAtA[iNdEx]
 13295  				iNdEx++
 13296  				msglen |= (int(b) & 0x7F) << shift
 13297  				if b < 0x80 {
 13298  					break
 13299  				}
 13300  			}
 13301  			if msglen < 0 {
 13302  				return ErrInvalidLengthStructured
 13303  			}
 13304  			postIndex := iNdEx + msglen
 13305  			if postIndex > l {
 13306  				return io.ErrUnexpectedEOF
 13307  			}
 13308  			if m.Alias == nil {
 13309  				m.Alias = &types.T{}
 13310  			}
 13311  			if err := m.Alias.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 13312  				return err
 13313  			}
 13314  			iNdEx = postIndex
 13315  		case 8:
 13316  			if wireType != 0 {
 13317  				return fmt.Errorf("proto: wrong wireType = %d for field ArrayTypeID", wireType)
 13318  			}
 13319  			m.ArrayTypeID = 0
 13320  			for shift := uint(0); ; shift += 7 {
 13321  				if shift >= 64 {
 13322  					return ErrIntOverflowStructured
 13323  				}
 13324  				if iNdEx >= l {
 13325  					return io.ErrUnexpectedEOF
 13326  				}
 13327  				b := dAtA[iNdEx]
 13328  				iNdEx++
 13329  				m.ArrayTypeID |= (ID(b) & 0x7F) << shift
 13330  				if b < 0x80 {
 13331  					break
 13332  				}
 13333  			}
 13334  		default:
 13335  			iNdEx = preIndex
 13336  			skippy, err := skipStructured(dAtA[iNdEx:])
 13337  			if err != nil {
 13338  				return err
 13339  			}
 13340  			if skippy < 0 {
 13341  				return ErrInvalidLengthStructured
 13342  			}
 13343  			if (iNdEx + skippy) > l {
 13344  				return io.ErrUnexpectedEOF
 13345  			}
 13346  			iNdEx += skippy
 13347  		}
 13348  	}
 13349  
 13350  	if iNdEx > l {
 13351  		return io.ErrUnexpectedEOF
 13352  	}
 13353  	return nil
 13354  }
 13355  func (m *TypeDescriptor_EnumMember) Unmarshal(dAtA []byte) error {
 13356  	l := len(dAtA)
 13357  	iNdEx := 0
 13358  	for iNdEx < l {
 13359  		preIndex := iNdEx
 13360  		var wire uint64
 13361  		for shift := uint(0); ; shift += 7 {
 13362  			if shift >= 64 {
 13363  				return ErrIntOverflowStructured
 13364  			}
 13365  			if iNdEx >= l {
 13366  				return io.ErrUnexpectedEOF
 13367  			}
 13368  			b := dAtA[iNdEx]
 13369  			iNdEx++
 13370  			wire |= (uint64(b) & 0x7F) << shift
 13371  			if b < 0x80 {
 13372  				break
 13373  			}
 13374  		}
 13375  		fieldNum := int32(wire >> 3)
 13376  		wireType := int(wire & 0x7)
 13377  		if wireType == 4 {
 13378  			return fmt.Errorf("proto: EnumMember: wiretype end group for non-group")
 13379  		}
 13380  		if fieldNum <= 0 {
 13381  			return fmt.Errorf("proto: EnumMember: illegal tag %d (wire type %d)", fieldNum, wire)
 13382  		}
 13383  		switch fieldNum {
 13384  		case 1:
 13385  			if wireType != 2 {
 13386  				return fmt.Errorf("proto: wrong wireType = %d for field PhysicalRepresentation", wireType)
 13387  			}
 13388  			var byteLen int
 13389  			for shift := uint(0); ; shift += 7 {
 13390  				if shift >= 64 {
 13391  					return ErrIntOverflowStructured
 13392  				}
 13393  				if iNdEx >= l {
 13394  					return io.ErrUnexpectedEOF
 13395  				}
 13396  				b := dAtA[iNdEx]
 13397  				iNdEx++
 13398  				byteLen |= (int(b) & 0x7F) << shift
 13399  				if b < 0x80 {
 13400  					break
 13401  				}
 13402  			}
 13403  			if byteLen < 0 {
 13404  				return ErrInvalidLengthStructured
 13405  			}
 13406  			postIndex := iNdEx + byteLen
 13407  			if postIndex > l {
 13408  				return io.ErrUnexpectedEOF
 13409  			}
 13410  			m.PhysicalRepresentation = append(m.PhysicalRepresentation[:0], dAtA[iNdEx:postIndex]...)
 13411  			if m.PhysicalRepresentation == nil {
 13412  				m.PhysicalRepresentation = []byte{}
 13413  			}
 13414  			iNdEx = postIndex
 13415  		case 2:
 13416  			if wireType != 2 {
 13417  				return fmt.Errorf("proto: wrong wireType = %d for field LogicalRepresentation", wireType)
 13418  			}
 13419  			var stringLen uint64
 13420  			for shift := uint(0); ; shift += 7 {
 13421  				if shift >= 64 {
 13422  					return ErrIntOverflowStructured
 13423  				}
 13424  				if iNdEx >= l {
 13425  					return io.ErrUnexpectedEOF
 13426  				}
 13427  				b := dAtA[iNdEx]
 13428  				iNdEx++
 13429  				stringLen |= (uint64(b) & 0x7F) << shift
 13430  				if b < 0x80 {
 13431  					break
 13432  				}
 13433  			}
 13434  			intStringLen := int(stringLen)
 13435  			if intStringLen < 0 {
 13436  				return ErrInvalidLengthStructured
 13437  			}
 13438  			postIndex := iNdEx + intStringLen
 13439  			if postIndex > l {
 13440  				return io.ErrUnexpectedEOF
 13441  			}
 13442  			m.LogicalRepresentation = string(dAtA[iNdEx:postIndex])
 13443  			iNdEx = postIndex
 13444  		default:
 13445  			iNdEx = preIndex
 13446  			skippy, err := skipStructured(dAtA[iNdEx:])
 13447  			if err != nil {
 13448  				return err
 13449  			}
 13450  			if skippy < 0 {
 13451  				return ErrInvalidLengthStructured
 13452  			}
 13453  			if (iNdEx + skippy) > l {
 13454  				return io.ErrUnexpectedEOF
 13455  			}
 13456  			iNdEx += skippy
 13457  		}
 13458  	}
 13459  
 13460  	if iNdEx > l {
 13461  		return io.ErrUnexpectedEOF
 13462  	}
 13463  	return nil
 13464  }
 13465  func (m *SchemaDescriptor) Unmarshal(dAtA []byte) error {
 13466  	l := len(dAtA)
 13467  	iNdEx := 0
 13468  	for iNdEx < l {
 13469  		preIndex := iNdEx
 13470  		var wire uint64
 13471  		for shift := uint(0); ; shift += 7 {
 13472  			if shift >= 64 {
 13473  				return ErrIntOverflowStructured
 13474  			}
 13475  			if iNdEx >= l {
 13476  				return io.ErrUnexpectedEOF
 13477  			}
 13478  			b := dAtA[iNdEx]
 13479  			iNdEx++
 13480  			wire |= (uint64(b) & 0x7F) << shift
 13481  			if b < 0x80 {
 13482  				break
 13483  			}
 13484  		}
 13485  		fieldNum := int32(wire >> 3)
 13486  		wireType := int(wire & 0x7)
 13487  		if wireType == 4 {
 13488  			return fmt.Errorf("proto: SchemaDescriptor: wiretype end group for non-group")
 13489  		}
 13490  		if fieldNum <= 0 {
 13491  			return fmt.Errorf("proto: SchemaDescriptor: illegal tag %d (wire type %d)", fieldNum, wire)
 13492  		}
 13493  		switch fieldNum {
 13494  		case 1:
 13495  			if wireType != 0 {
 13496  				return fmt.Errorf("proto: wrong wireType = %d for field ParentID", wireType)
 13497  			}
 13498  			m.ParentID = 0
 13499  			for shift := uint(0); ; shift += 7 {
 13500  				if shift >= 64 {
 13501  					return ErrIntOverflowStructured
 13502  				}
 13503  				if iNdEx >= l {
 13504  					return io.ErrUnexpectedEOF
 13505  				}
 13506  				b := dAtA[iNdEx]
 13507  				iNdEx++
 13508  				m.ParentID |= (ID(b) & 0x7F) << shift
 13509  				if b < 0x80 {
 13510  					break
 13511  				}
 13512  			}
 13513  		case 2:
 13514  			if wireType != 2 {
 13515  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
 13516  			}
 13517  			var stringLen uint64
 13518  			for shift := uint(0); ; shift += 7 {
 13519  				if shift >= 64 {
 13520  					return ErrIntOverflowStructured
 13521  				}
 13522  				if iNdEx >= l {
 13523  					return io.ErrUnexpectedEOF
 13524  				}
 13525  				b := dAtA[iNdEx]
 13526  				iNdEx++
 13527  				stringLen |= (uint64(b) & 0x7F) << shift
 13528  				if b < 0x80 {
 13529  					break
 13530  				}
 13531  			}
 13532  			intStringLen := int(stringLen)
 13533  			if intStringLen < 0 {
 13534  				return ErrInvalidLengthStructured
 13535  			}
 13536  			postIndex := iNdEx + intStringLen
 13537  			if postIndex > l {
 13538  				return io.ErrUnexpectedEOF
 13539  			}
 13540  			m.Name = string(dAtA[iNdEx:postIndex])
 13541  			iNdEx = postIndex
 13542  		case 3:
 13543  			if wireType != 0 {
 13544  				return fmt.Errorf("proto: wrong wireType = %d for field ID", wireType)
 13545  			}
 13546  			m.ID = 0
 13547  			for shift := uint(0); ; shift += 7 {
 13548  				if shift >= 64 {
 13549  					return ErrIntOverflowStructured
 13550  				}
 13551  				if iNdEx >= l {
 13552  					return io.ErrUnexpectedEOF
 13553  				}
 13554  				b := dAtA[iNdEx]
 13555  				iNdEx++
 13556  				m.ID |= (ID(b) & 0x7F) << shift
 13557  				if b < 0x80 {
 13558  					break
 13559  				}
 13560  			}
 13561  		case 4:
 13562  			if wireType != 2 {
 13563  				return fmt.Errorf("proto: wrong wireType = %d for field Privileges", wireType)
 13564  			}
 13565  			var msglen int
 13566  			for shift := uint(0); ; shift += 7 {
 13567  				if shift >= 64 {
 13568  					return ErrIntOverflowStructured
 13569  				}
 13570  				if iNdEx >= l {
 13571  					return io.ErrUnexpectedEOF
 13572  				}
 13573  				b := dAtA[iNdEx]
 13574  				iNdEx++
 13575  				msglen |= (int(b) & 0x7F) << shift
 13576  				if b < 0x80 {
 13577  					break
 13578  				}
 13579  			}
 13580  			if msglen < 0 {
 13581  				return ErrInvalidLengthStructured
 13582  			}
 13583  			postIndex := iNdEx + msglen
 13584  			if postIndex > l {
 13585  				return io.ErrUnexpectedEOF
 13586  			}
 13587  			if m.Privileges == nil {
 13588  				m.Privileges = &PrivilegeDescriptor{}
 13589  			}
 13590  			if err := m.Privileges.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 13591  				return err
 13592  			}
 13593  			iNdEx = postIndex
 13594  		default:
 13595  			iNdEx = preIndex
 13596  			skippy, err := skipStructured(dAtA[iNdEx:])
 13597  			if err != nil {
 13598  				return err
 13599  			}
 13600  			if skippy < 0 {
 13601  				return ErrInvalidLengthStructured
 13602  			}
 13603  			if (iNdEx + skippy) > l {
 13604  				return io.ErrUnexpectedEOF
 13605  			}
 13606  			iNdEx += skippy
 13607  		}
 13608  	}
 13609  
 13610  	if iNdEx > l {
 13611  		return io.ErrUnexpectedEOF
 13612  	}
 13613  	return nil
 13614  }
 13615  func (m *Descriptor) Unmarshal(dAtA []byte) error {
 13616  	l := len(dAtA)
 13617  	iNdEx := 0
 13618  	for iNdEx < l {
 13619  		preIndex := iNdEx
 13620  		var wire uint64
 13621  		for shift := uint(0); ; shift += 7 {
 13622  			if shift >= 64 {
 13623  				return ErrIntOverflowStructured
 13624  			}
 13625  			if iNdEx >= l {
 13626  				return io.ErrUnexpectedEOF
 13627  			}
 13628  			b := dAtA[iNdEx]
 13629  			iNdEx++
 13630  			wire |= (uint64(b) & 0x7F) << shift
 13631  			if b < 0x80 {
 13632  				break
 13633  			}
 13634  		}
 13635  		fieldNum := int32(wire >> 3)
 13636  		wireType := int(wire & 0x7)
 13637  		if wireType == 4 {
 13638  			return fmt.Errorf("proto: Descriptor: wiretype end group for non-group")
 13639  		}
 13640  		if fieldNum <= 0 {
 13641  			return fmt.Errorf("proto: Descriptor: illegal tag %d (wire type %d)", fieldNum, wire)
 13642  		}
 13643  		switch fieldNum {
 13644  		case 1:
 13645  			if wireType != 2 {
 13646  				return fmt.Errorf("proto: wrong wireType = %d for field Table", wireType)
 13647  			}
 13648  			var msglen int
 13649  			for shift := uint(0); ; shift += 7 {
 13650  				if shift >= 64 {
 13651  					return ErrIntOverflowStructured
 13652  				}
 13653  				if iNdEx >= l {
 13654  					return io.ErrUnexpectedEOF
 13655  				}
 13656  				b := dAtA[iNdEx]
 13657  				iNdEx++
 13658  				msglen |= (int(b) & 0x7F) << shift
 13659  				if b < 0x80 {
 13660  					break
 13661  				}
 13662  			}
 13663  			if msglen < 0 {
 13664  				return ErrInvalidLengthStructured
 13665  			}
 13666  			postIndex := iNdEx + msglen
 13667  			if postIndex > l {
 13668  				return io.ErrUnexpectedEOF
 13669  			}
 13670  			v := &TableDescriptor{}
 13671  			if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 13672  				return err
 13673  			}
 13674  			m.Union = &Descriptor_Table{v}
 13675  			iNdEx = postIndex
 13676  		case 2:
 13677  			if wireType != 2 {
 13678  				return fmt.Errorf("proto: wrong wireType = %d for field Database", wireType)
 13679  			}
 13680  			var msglen int
 13681  			for shift := uint(0); ; shift += 7 {
 13682  				if shift >= 64 {
 13683  					return ErrIntOverflowStructured
 13684  				}
 13685  				if iNdEx >= l {
 13686  					return io.ErrUnexpectedEOF
 13687  				}
 13688  				b := dAtA[iNdEx]
 13689  				iNdEx++
 13690  				msglen |= (int(b) & 0x7F) << shift
 13691  				if b < 0x80 {
 13692  					break
 13693  				}
 13694  			}
 13695  			if msglen < 0 {
 13696  				return ErrInvalidLengthStructured
 13697  			}
 13698  			postIndex := iNdEx + msglen
 13699  			if postIndex > l {
 13700  				return io.ErrUnexpectedEOF
 13701  			}
 13702  			v := &DatabaseDescriptor{}
 13703  			if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 13704  				return err
 13705  			}
 13706  			m.Union = &Descriptor_Database{v}
 13707  			iNdEx = postIndex
 13708  		case 3:
 13709  			if wireType != 2 {
 13710  				return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType)
 13711  			}
 13712  			var msglen int
 13713  			for shift := uint(0); ; shift += 7 {
 13714  				if shift >= 64 {
 13715  					return ErrIntOverflowStructured
 13716  				}
 13717  				if iNdEx >= l {
 13718  					return io.ErrUnexpectedEOF
 13719  				}
 13720  				b := dAtA[iNdEx]
 13721  				iNdEx++
 13722  				msglen |= (int(b) & 0x7F) << shift
 13723  				if b < 0x80 {
 13724  					break
 13725  				}
 13726  			}
 13727  			if msglen < 0 {
 13728  				return ErrInvalidLengthStructured
 13729  			}
 13730  			postIndex := iNdEx + msglen
 13731  			if postIndex > l {
 13732  				return io.ErrUnexpectedEOF
 13733  			}
 13734  			v := &TypeDescriptor{}
 13735  			if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 13736  				return err
 13737  			}
 13738  			m.Union = &Descriptor_Type{v}
 13739  			iNdEx = postIndex
 13740  		case 4:
 13741  			if wireType != 2 {
 13742  				return fmt.Errorf("proto: wrong wireType = %d for field Schema", wireType)
 13743  			}
 13744  			var msglen int
 13745  			for shift := uint(0); ; shift += 7 {
 13746  				if shift >= 64 {
 13747  					return ErrIntOverflowStructured
 13748  				}
 13749  				if iNdEx >= l {
 13750  					return io.ErrUnexpectedEOF
 13751  				}
 13752  				b := dAtA[iNdEx]
 13753  				iNdEx++
 13754  				msglen |= (int(b) & 0x7F) << shift
 13755  				if b < 0x80 {
 13756  					break
 13757  				}
 13758  			}
 13759  			if msglen < 0 {
 13760  				return ErrInvalidLengthStructured
 13761  			}
 13762  			postIndex := iNdEx + msglen
 13763  			if postIndex > l {
 13764  				return io.ErrUnexpectedEOF
 13765  			}
 13766  			v := &SchemaDescriptor{}
 13767  			if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
 13768  				return err
 13769  			}
 13770  			m.Union = &Descriptor_Schema{v}
 13771  			iNdEx = postIndex
 13772  		default:
 13773  			iNdEx = preIndex
 13774  			skippy, err := skipStructured(dAtA[iNdEx:])
 13775  			if err != nil {
 13776  				return err
 13777  			}
 13778  			if skippy < 0 {
 13779  				return ErrInvalidLengthStructured
 13780  			}
 13781  			if (iNdEx + skippy) > l {
 13782  				return io.ErrUnexpectedEOF
 13783  			}
 13784  			iNdEx += skippy
 13785  		}
 13786  	}
 13787  
 13788  	if iNdEx > l {
 13789  		return io.ErrUnexpectedEOF
 13790  	}
 13791  	return nil
 13792  }
 13793  func skipStructured(dAtA []byte) (n int, err error) {
 13794  	l := len(dAtA)
 13795  	iNdEx := 0
 13796  	for iNdEx < l {
 13797  		var wire uint64
 13798  		for shift := uint(0); ; shift += 7 {
 13799  			if shift >= 64 {
 13800  				return 0, ErrIntOverflowStructured
 13801  			}
 13802  			if iNdEx >= l {
 13803  				return 0, io.ErrUnexpectedEOF
 13804  			}
 13805  			b := dAtA[iNdEx]
 13806  			iNdEx++
 13807  			wire |= (uint64(b) & 0x7F) << shift
 13808  			if b < 0x80 {
 13809  				break
 13810  			}
 13811  		}
 13812  		wireType := int(wire & 0x7)
 13813  		switch wireType {
 13814  		case 0:
 13815  			for shift := uint(0); ; shift += 7 {
 13816  				if shift >= 64 {
 13817  					return 0, ErrIntOverflowStructured
 13818  				}
 13819  				if iNdEx >= l {
 13820  					return 0, io.ErrUnexpectedEOF
 13821  				}
 13822  				iNdEx++
 13823  				if dAtA[iNdEx-1] < 0x80 {
 13824  					break
 13825  				}
 13826  			}
 13827  			return iNdEx, nil
 13828  		case 1:
 13829  			iNdEx += 8
 13830  			return iNdEx, nil
 13831  		case 2:
 13832  			var length int
 13833  			for shift := uint(0); ; shift += 7 {
 13834  				if shift >= 64 {
 13835  					return 0, ErrIntOverflowStructured
 13836  				}
 13837  				if iNdEx >= l {
 13838  					return 0, io.ErrUnexpectedEOF
 13839  				}
 13840  				b := dAtA[iNdEx]
 13841  				iNdEx++
 13842  				length |= (int(b) & 0x7F) << shift
 13843  				if b < 0x80 {
 13844  					break
 13845  				}
 13846  			}
 13847  			iNdEx += length
 13848  			if length < 0 {
 13849  				return 0, ErrInvalidLengthStructured
 13850  			}
 13851  			return iNdEx, nil
 13852  		case 3:
 13853  			for {
 13854  				var innerWire uint64
 13855  				var start int = iNdEx
 13856  				for shift := uint(0); ; shift += 7 {
 13857  					if shift >= 64 {
 13858  						return 0, ErrIntOverflowStructured
 13859  					}
 13860  					if iNdEx >= l {
 13861  						return 0, io.ErrUnexpectedEOF
 13862  					}
 13863  					b := dAtA[iNdEx]
 13864  					iNdEx++
 13865  					innerWire |= (uint64(b) & 0x7F) << shift
 13866  					if b < 0x80 {
 13867  						break
 13868  					}
 13869  				}
 13870  				innerWireType := int(innerWire & 0x7)
 13871  				if innerWireType == 4 {
 13872  					break
 13873  				}
 13874  				next, err := skipStructured(dAtA[start:])
 13875  				if err != nil {
 13876  					return 0, err
 13877  				}
 13878  				iNdEx = start + next
 13879  			}
 13880  			return iNdEx, nil
 13881  		case 4:
 13882  			return iNdEx, nil
 13883  		case 5:
 13884  			iNdEx += 4
 13885  			return iNdEx, nil
 13886  		default:
 13887  			return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
 13888  		}
 13889  	}
 13890  	panic("unreachable")
 13891  }
 13892  
 13893  var (
 13894  	ErrInvalidLengthStructured = fmt.Errorf("proto: negative length found during unmarshaling")
 13895  	ErrIntOverflowStructured   = fmt.Errorf("proto: integer overflow")
 13896  )
 13897  
 13898  func init() {
 13899  	proto.RegisterFile("sql/sqlbase/structured.proto", fileDescriptor_structured_6e223c312147c376)
 13900  }
 13901  
 13902  var fileDescriptor_structured_6e223c312147c376 = []byte{
 13903  	// 4195 bytes of a gzipped FileDescriptorProto
 13904  	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x3a, 0x49, 0x6f, 0x23, 0x57,
 13905  	0x7a, 0x2a, 0xee, 0xfc, 0xb8, 0xa8, 0xf8, 0xb4, 0x34, 0x5b, 0xf6, 0x48, 0x6a, 0xb6, 0xdb, 0xd6,
 13906  	0x8c, 0x6d, 0xa9, 0xad, 0x9e, 0x64, 0x7a, 0xec, 0x64, 0x60, 0x8a, 0xa4, 0x5a, 0x6c, 0xa9, 0x49,
 13907  	0xb9, 0xa4, 0x76, 0xcf, 0x24, 0x93, 0x54, 0x4a, 0xac, 0x47, 0xaa, 0xdc, 0xc5, 0x2a, 0x76, 0x55,
 13908  	0xb1, 0x5b, 0x04, 0x72, 0x4a, 0x80, 0x60, 0x2e, 0x09, 0x72, 0x49, 0x6e, 0x01, 0x8c, 0xc4, 0x48,
 13909  	0xe6, 0x9a, 0x4b, 0x72, 0x0b, 0x90, 0x9b, 0x6f, 0x19, 0x20, 0x97, 0xc9, 0x45, 0x48, 0xe4, 0x4b,
 13910  	0x7e, 0x41, 0x02, 0xf8, 0x14, 0xbc, 0xad, 0x16, 0x2e, 0x1a, 0xaa, 0xdb, 0xb9, 0x08, 0xaa, 0x6f,
 13911  	0x7b, 0xef, 0x7d, 0xef, 0xdb, 0x1f, 0xe1, 0x6d, 0xf7, 0x85, 0xb9, 0xe3, 0xbe, 0x30, 0xcf, 0x34,
 13912  	0x17, 0xef, 0xb8, 0x9e, 0x33, 0xec, 0x78, 0x43, 0x07, 0xeb, 0xdb, 0x03, 0xc7, 0xf6, 0x6c, 0xb4,
 13913  	0xd2, 0xb1, 0x3b, 0xcf, 0x1d, 0x5b, 0xeb, 0x9c, 0x6f, 0xbb, 0x2f, 0xcc, 0x6d, 0x4e, 0xb7, 0x56,
 13914  	0x1e, 0x7a, 0x86, 0xb9, 0x73, 0x6e, 0x76, 0x76, 0x3c, 0xa3, 0x8f, 0x5d, 0x4f, 0xeb, 0x0f, 0x18,
 13915  	0xc3, 0xda, 0x5b, 0x61, 0x71, 0x03, 0xc7, 0x78, 0x69, 0x98, 0xb8, 0x87, 0x39, 0x72, 0x85, 0x20,
 13916  	0xbd, 0xd1, 0x00, 0xbb, 0xec, 0x2f, 0x07, 0xdf, 0xee, 0x61, 0x7b, 0xa7, 0x87, 0x6d, 0xc3, 0xd2,
 13917  	0xf1, 0xc5, 0x4e, 0xc7, 0xb6, 0xba, 0x46, 0x8f, 0xa3, 0x96, 0x7b, 0x76, 0xcf, 0xa6, 0xff, 0xee,
 13918  	0x90, 0xff, 0x18, 0xb4, 0xf2, 0x27, 0x49, 0x58, 0xda, 0xb7, 0x1d, 0x6c, 0xf4, 0xac, 0x43, 0x3c,
 13919  	0x52, 0x70, 0x17, 0x3b, 0xd8, 0xea, 0x60, 0xb4, 0x09, 0x49, 0x4f, 0x3b, 0x33, 0x71, 0x59, 0xda,
 13920  	0x94, 0xb6, 0x0a, 0x7b, 0xf0, 0xf5, 0xe5, 0xc6, 0xc2, 0xb7, 0x97, 0x1b, 0xb1, 0x66, 0x5d, 0x61,
 13921  	0x08, 0x74, 0x0f, 0x92, 0x74, 0x95, 0x72, 0x8c, 0x52, 0x2c, 0x72, 0x8a, 0x74, 0x93, 0x00, 0x09,
 13922  	0x19, 0xc5, 0xa2, 0x32, 0x24, 0x2c, 0xad, 0x8f, 0xcb, 0xf1, 0x4d, 0x69, 0x2b, 0xbb, 0x97, 0x20,
 13923  	0x54, 0x0a, 0x85, 0xa0, 0x43, 0xc8, 0xbc, 0xd4, 0x4c, 0x43, 0x37, 0xbc, 0x51, 0x39, 0xb1, 0x29,
 13924  	0x6d, 0x15, 0x77, 0xbf, 0xbf, 0x3d, 0x55, 0x47, 0xdb, 0x35, 0xdb, 0x72, 0x3d, 0x47, 0x33, 0x2c,
 13925  	0xef, 0x73, 0xce, 0xc0, 0x05, 0xf9, 0x02, 0xd0, 0x7d, 0x28, 0xb9, 0xe7, 0x9a, 0x83, 0x75, 0x75,
 13926  	0xe0, 0xe0, 0xae, 0x71, 0xa1, 0x9a, 0xd8, 0x2a, 0x27, 0x37, 0xa5, 0xad, 0x24, 0x27, 0x5d, 0x64,
 13927  	0xe8, 0x63, 0x8a, 0x3d, 0xc2, 0x16, 0x3a, 0x85, 0xac, 0x6d, 0xa9, 0x3a, 0x36, 0xb1, 0x87, 0xcb,
 13928  	0x29, 0xba, 0xfe, 0x47, 0x33, 0xd6, 0x9f, 0xa2, 0xa0, 0xed, 0x6a, 0xc7, 0x33, 0x6c, 0x4b, 0xec,
 13929  	0xc3, 0xb6, 0xea, 0x54, 0x10, 0x97, 0x3a, 0x1c, 0xe8, 0x9a, 0x87, 0xcb, 0xe9, 0x37, 0x96, 0xfa,
 13930  	0x94, 0x0a, 0x42, 0x47, 0x90, 0xec, 0x6b, 0x5e, 0xe7, 0xbc, 0x9c, 0xa1, 0x12, 0xef, 0xdf, 0x40,
 13931  	0xe2, 0x13, 0xc2, 0xc7, 0x05, 0x32, 0x21, 0x95, 0x67, 0x90, 0x62, 0xeb, 0xa0, 0x02, 0x64, 0x5b,
 13932  	0x6d, 0xb5, 0x5a, 0x3b, 0x6d, 0xb6, 0x5b, 0xf2, 0x02, 0xca, 0x43, 0x46, 0x69, 0x9c, 0x9c, 0x2a,
 13933  	0xcd, 0xda, 0xa9, 0x2c, 0x91, 0xaf, 0x93, 0xc6, 0xa9, 0xda, 0x7a, 0x7a, 0x74, 0x24, 0xc7, 0xd0,
 13934  	0x22, 0xe4, 0xc8, 0x57, 0xbd, 0xb1, 0x5f, 0x7d, 0x7a, 0x74, 0x2a, 0xc7, 0x51, 0x0e, 0xd2, 0xb5,
 13935  	0xea, 0x49, 0xad, 0x5a, 0x6f, 0xc8, 0x89, 0xb5, 0xc4, 0x2f, 0xbf, 0x5a, 0x5f, 0xa8, 0xdc, 0x87,
 13936  	0x24, 0x5d, 0x0e, 0x01, 0xa4, 0x4e, 0x9a, 0x4f, 0x8e, 0x8f, 0x1a, 0xf2, 0x02, 0xca, 0x40, 0x62,
 13937  	0x9f, 0x88, 0x90, 0x08, 0xc7, 0x71, 0x55, 0x39, 0x6d, 0x56, 0x8f, 0xe4, 0x18, 0xe3, 0xf8, 0x38,
 13938  	0xf1, 0xdf, 0x5f, 0x6e, 0x48, 0x95, 0x7f, 0x4f, 0xc1, 0x72, 0xb0, 0xf7, 0xe0, 0xb6, 0x51, 0x0d,
 13939  	0x16, 0x6d, 0xc7, 0xe8, 0x19, 0x96, 0x4a, 0x6d, 0x4e, 0x35, 0x74, 0x6e, 0x8f, 0x6f, 0x91, 0xf3,
 13940  	0x5c, 0x5d, 0x6e, 0x14, 0xda, 0x14, 0x7d, 0x4a, 0xb0, 0xcd, 0x3a, 0x37, 0xd0, 0x82, 0x1d, 0x02,
 13941  	0xea, 0xe8, 0x10, 0x4a, 0x5c, 0x48, 0xc7, 0x36, 0x87, 0x7d, 0x4b, 0x35, 0x74, 0xb7, 0x1c, 0xdb,
 13942  	0x8c, 0x6f, 0x15, 0xf6, 0x36, 0xae, 0x2e, 0x37, 0x16, 0x99, 0x88, 0x1a, 0xc5, 0x35, 0xeb, 0xee,
 13943  	0xb7, 0x97, 0x1b, 0x19, 0xf1, 0xa1, 0xf0, 0xe5, 0xf9, 0xb7, 0xee, 0xa2, 0x67, 0xb0, 0xe2, 0x08,
 13944  	0xdd, 0xea, 0x61, 0x81, 0x71, 0x2a, 0xf0, 0xee, 0xd5, 0xe5, 0xc6, 0x92, 0xaf, 0x7c, 0x7d, 0xba,
 13945  	0xd0, 0x25, 0x67, 0x9c, 0x40, 0x77, 0x51, 0x1b, 0x42, 0xe0, 0xe0, 0xb8, 0x09, 0x7a, 0xdc, 0x0d,
 13946  	0x7e, 0xdc, 0x52, 0x20, 0x3a, 0x7a, 0xe4, 0x92, 0x33, 0x86, 0xd0, 0x7d, 0xc7, 0x4b, 0x5e, 0xeb,
 13947  	0x78, 0xa9, 0x37, 0x75, 0xbc, 0x88, 0x1b, 0xa5, 0xff, 0x5f, 0xdc, 0x28, 0xf3, 0x9d, 0xbb, 0x51,
 13948  	0xf6, 0x3b, 0x70, 0x23, 0x54, 0x85, 0x25, 0x13, 0xf7, 0xb4, 0xce, 0x48, 0xe5, 0xe6, 0xc5, 0xc2,
 13949  	0x21, 0xd0, 0x1b, 0x2b, 0x8d, 0x85, 0xc3, 0xb2, 0xa4, 0x94, 0x18, 0x35, 0x33, 0x37, 0x0a, 0x46,
 13950  	0x4d, 0xb8, 0xc5, 0x45, 0x84, 0xee, 0x9e, 0x89, 0xc9, 0xcd, 0x12, 0xb3, 0xc2, 0x38, 0x02, 0x4b,
 13951  	0xa0, 0x28, 0xe6, 0x49, 0x8f, 0x13, 0x99, 0xbc, 0x5c, 0x78, 0x9c, 0xc8, 0x14, 0xe4, 0x62, 0xe5,
 13952  	0xaf, 0x13, 0x20, 0x33, 0xfb, 0xaa, 0x63, 0xb7, 0xe3, 0x18, 0x03, 0xcf, 0x76, 0x7c, 0xab, 0x90,
 13953  	0x26, 0xac, 0xe2, 0x5d, 0x88, 0x19, 0x3a, 0x0f, 0xe6, 0xab, 0xdc, 0xde, 0x62, 0xd4, 0xc0, 0x02,
 13954  	0xcb, 0x8d, 0x19, 0x3a, 0xda, 0x86, 0x04, 0xc9, 0x38, 0x34, 0xa0, 0xe7, 0x76, 0xd7, 0xc6, 0x75,
 13955  	0x88, 0xfb, 0xdb, 0x2c, 0x21, 0x9d, 0x2a, 0x94, 0x0e, 0x6d, 0x42, 0xc6, 0x1a, 0x9a, 0x26, 0x4d,
 13956  	0x26, 0xc4, 0x9a, 0x33, 0xe2, 0x5a, 0x04, 0x14, 0xdd, 0x81, 0xbc, 0x8e, 0xbb, 0xda, 0xd0, 0xf4,
 13957  	0x54, 0x7c, 0x31, 0x70, 0x98, 0xc5, 0x2a, 0x39, 0x0e, 0x6b, 0x5c, 0x0c, 0x1c, 0xf4, 0x36, 0xa4,
 13958  	0xce, 0x0d, 0x5d, 0xc7, 0x16, 0x35, 0x58, 0x21, 0x82, 0xc3, 0xd0, 0x2e, 0x94, 0x86, 0x2e, 0x76,
 13959  	0x55, 0x17, 0xbf, 0x18, 0x12, 0x95, 0x50, 0x87, 0x04, 0xea, 0x90, 0x29, 0xee, 0x20, 0x8b, 0x84,
 13960  	0xe0, 0x84, 0xe3, 0x89, 0xbf, 0xdd, 0x81, 0x7c, 0xc7, 0xee, 0x0f, 0x86, 0x1e, 0x66, 0x8b, 0xe6,
 13961  	0xd8, 0xa2, 0x1c, 0x46, 0x17, 0xdd, 0x85, 0x92, 0xfd, 0xca, 0x1a, 0x13, 0x9b, 0x8f, 0x8a, 0x25,
 13962  	0x04, 0x61, 0xb1, 0x7b, 0x00, 0xa6, 0xdd, 0x33, 0x3a, 0x9a, 0x49, 0xbc, 0xb7, 0x40, 0xb5, 0x79,
 13963  	0x97, 0x6b, 0x73, 0xf1, 0x88, 0x61, 0x84, 0x3a, 0x23, 0xaa, 0xcd, 0x72, 0xb6, 0xa6, 0x8e, 0xf6,
 13964  	0xe1, 0x7b, 0x9a, 0xe9, 0x61, 0x47, 0x84, 0x17, 0xa2, 0x46, 0xd5, 0xb0, 0xd4, 0x81, 0x63, 0xf7,
 13965  	0x1c, 0xec, 0xba, 0xe5, 0x62, 0x48, 0x07, 0xb7, 0x29, 0x29, 0x13, 0x73, 0x3a, 0x1a, 0xe0, 0xa6,
 13966  	0x75, 0xcc, 0xc9, 0x7c, 0x93, 0xc8, 0xc8, 0xd9, 0xc7, 0x89, 0x4c, 0x56, 0x86, 0xc7, 0x89, 0x4c,
 13967  	0x5a, 0xce, 0x54, 0xfe, 0x22, 0x06, 0xab, 0x8c, 0x61, 0x5f, 0xeb, 0x1b, 0xe6, 0xe8, 0x4d, 0xcd,
 13968  	0x83, 0x49, 0xe1, 0xe6, 0x41, 0xf5, 0x4a, 0xb7, 0x4d, 0xd8, 0x58, 0x5c, 0xa4, 0x7a, 0x25, 0xb0,
 13969  	0x16, 0x01, 0xa1, 0x87, 0x00, 0xa1, 0xc0, 0x99, 0xa0, 0x0a, 0xbd, 0x7d, 0x75, 0xb9, 0x91, 0x9d,
 13970  	0x1e, 0x2e, 0xb3, 0x9d, 0x50, 0x90, 0x2c, 0x09, 0x4b, 0xf1, 0x25, 0x50, 0x73, 0x09, 0x29, 0xb9,
 13971  	0xce, 0x08, 0xa6, 0x2a, 0x79, 0x51, 0x8f, 0x20, 0x75, 0x9e, 0x7f, 0xfe, 0x39, 0x06, 0xcb, 0x4d,
 13972  	0xcb, 0xc3, 0x8e, 0x89, 0xb5, 0x97, 0x38, 0xa4, 0x8e, 0x9f, 0x42, 0x56, 0xb3, 0x3a, 0xd8, 0xf5,
 13973  	0x6c, 0xc7, 0x2d, 0x4b, 0x9b, 0xf1, 0xad, 0xdc, 0xee, 0x0f, 0x67, 0x04, 0x8d, 0x69, 0xfc, 0xdb,
 13974  	0x55, 0xce, 0xcc, 0x35, 0x19, 0x08, 0x5b, 0xfb, 0x17, 0x09, 0x32, 0x02, 0x8b, 0xee, 0x43, 0x66,
 13975  	0x2c, 0xbf, 0xad, 0xf0, 0xd3, 0xa4, 0xa3, 0x61, 0x3e, 0xed, 0xf1, 0xe0, 0xfe, 0x5b, 0x90, 0xa1,
 13976  	0x61, 0x42, 0xf5, 0xef, 0x64, 0x4d, 0x70, 0xf0, 0x48, 0x11, 0x2e, 0xc5, 0xd2, 0x94, 0xb6, 0xa9,
 13977  	0xa3, 0xda, 0xb4, 0x2a, 0x29, 0x4e, 0xf9, 0x6f, 0x09, 0xfd, 0x9d, 0x44, 0xeb, 0xa4, 0x89, 0xc2,
 13978  	0x89, 0xe9, 0x8c, 0x6b, 0xee, 0x9f, 0x24, 0x28, 0x11, 0x06, 0x1d, 0xeb, 0x21, 0xb5, 0xdd, 0x05,
 13979  	0x30, 0x5c, 0xd5, 0x65, 0x70, 0x7a, 0x22, 0x61, 0xad, 0x59, 0xc3, 0xe5, 0xe4, 0xbe, 0xa9, 0xc5,
 13980  	0x26, 0x4c, 0xed, 0xc7, 0x50, 0xa0, 0xbc, 0xea, 0xd9, 0xb0, 0xf3, 0x1c, 0x7b, 0x2e, 0xdd, 0x61,
 13981  	0x72, 0x6f, 0x99, 0xef, 0x30, 0x4f, 0x25, 0xec, 0x31, 0x9c, 0x92, 0x77, 0x43, 0x5f, 0x13, 0xd6,
 13982  	0x97, 0x98, 0xb0, 0x3e, 0xbe, 0xf1, 0xff, 0x8d, 0xc3, 0xea, 0xb1, 0xe6, 0x78, 0x06, 0x49, 0x14,
 13983  	0x86, 0xd5, 0x0b, 0xed, 0xfe, 0x1e, 0xe4, 0xac, 0x61, 0x9f, 0x1b, 0x98, 0xcb, 0x2f, 0x84, 0xed,
 13984  	0x0f, 0xac, 0x61, 0x9f, 0xd9, 0x8e, 0x8b, 0x8e, 0x20, 0x61, 0x1a, 0xae, 0x47, 0x2b, 0x89, 0xdc,
 13985  	0xee, 0xee, 0x0c, 0xb3, 0x98, 0xbe, 0xc6, 0xf6, 0x91, 0xe1, 0x7a, 0xe2, 0xcc, 0x44, 0x0a, 0x6a,
 13986  	0x43, 0xd2, 0xd1, 0xac, 0x1e, 0xa6, 0xfe, 0x92, 0xdb, 0x7d, 0x70, 0x33, 0x71, 0x0a, 0x61, 0x15,
 13987  	0xd9, 0x89, 0xca, 0x59, 0xfb, 0x1b, 0x09, 0x12, 0x64, 0x95, 0x6b, 0x5c, 0x7a, 0x15, 0x52, 0x2f,
 13988  	0x35, 0x73, 0x88, 0x59, 0x35, 0x94, 0x57, 0xf8, 0x17, 0xfa, 0x03, 0x58, 0x74, 0x87, 0x67, 0x83,
 13989  	0xd0, 0x52, 0x3c, 0xd8, 0x7f, 0x78, 0xa3, 0x5d, 0xf9, 0x85, 0x77, 0x54, 0x16, 0xbb, 0x80, 0xb5,
 13990  	0x17, 0x90, 0xa4, 0xbb, 0xbe, 0x66, 0x7f, 0x77, 0x20, 0xef, 0xd9, 0x2a, 0xbe, 0xe8, 0x98, 0x43,
 13991  	0xd7, 0x78, 0xc9, 0x2c, 0x25, 0xaf, 0xe4, 0x3c, 0xbb, 0x21, 0x40, 0xe8, 0x1e, 0x14, 0xbb, 0x8e,
 13992  	0xdd, 0x57, 0x0d, 0x4b, 0x10, 0xc5, 0x29, 0x51, 0x81, 0x40, 0x9b, 0x02, 0x18, 0x31, 0xd9, 0xbf,
 13993  	0xca, 0xc3, 0x22, 0x75, 0x8c, 0xb9, 0xc2, 0xde, 0xbd, 0x50, 0xd8, 0x5b, 0x89, 0x84, 0x3d, 0xdf,
 13994  	0xbb, 0x48, 0xd4, 0x7b, 0x1b, 0x52, 0x43, 0xcb, 0x78, 0x31, 0x64, 0xeb, 0xfb, 0xf9, 0x89, 0xc1,
 13995  	0xe6, 0xb0, 0x4a, 0xf4, 0x01, 0x20, 0x12, 0x0a, 0xb0, 0x1a, 0x21, 0x4c, 0x52, 0x42, 0x99, 0x62,
 13996  	0x6a, 0x33, 0x23, 0x68, 0xea, 0x06, 0x11, 0xf4, 0x00, 0x64, 0x7c, 0xe1, 0x39, 0x5a, 0xb8, 0x74,
 13997  	0x4d, 0x53, 0xfe, 0xf5, 0xab, 0xcb, 0x8d, 0x62, 0x83, 0xe0, 0xa6, 0x0b, 0x29, 0xe2, 0x10, 0x4e,
 13998  	0x27, 0x56, 0x52, 0xe2, 0x32, 0x74, 0xc3, 0xc1, 0xb4, 0xe0, 0x72, 0xcb, 0x99, 0xcd, 0xf8, 0x35,
 13999  	0x85, 0xd5, 0x98, 0xda, 0xb7, 0xeb, 0x82, 0x51, 0x91, 0x99, 0x28, 0x1f, 0xe0, 0xa2, 0x13, 0xc8,
 14000  	0x75, 0x59, 0x1d, 0xa6, 0x3e, 0xc7, 0x23, 0x5a, 0xb1, 0xe5, 0x76, 0x7f, 0x30, 0x7f, 0xc5, 0xb6,
 14001  	0x97, 0x22, 0x57, 0x50, 0x96, 0x14, 0xe8, 0xfa, 0x48, 0xf4, 0x0c, 0x0a, 0xa1, 0x42, 0xeb, 0x6c,
 14002  	0x44, 0x8b, 0x84, 0xd7, 0x13, 0x9b, 0x0f, 0x04, 0xed, 0x8d, 0xd0, 0x67, 0x00, 0x86, 0x9f, 0x00,
 14003  	0x68, 0x2d, 0x91, 0xdb, 0x7d, 0xff, 0x06, 0x99, 0x42, 0xc4, 0x97, 0x40, 0x08, 0x7a, 0x06, 0xc5,
 14004  	0xe0, 0x8b, 0x6e, 0x36, 0x7f, 0xe3, 0xcd, 0x32, 0xa9, 0x85, 0x90, 0x9c, 0x3d, 0x52, 0xb1, 0x2f,
 14005  	0x93, 0x2a, 0xc7, 0x76, 0x0d, 0x0f, 0x87, 0xcd, 0xa0, 0x40, 0xcd, 0xa0, 0x72, 0x75, 0xb9, 0x81,
 14006  	0x6a, 0x02, 0x3f, 0xdd, 0x14, 0x50, 0x67, 0x0c, 0xcf, 0x0c, 0x2b, 0x62, 0xc0, 0x44, 0x62, 0x31,
 14007  	0x30, 0xac, 0x93, 0xc0, 0x84, 0x27, 0x0c, 0x2b, 0x64, 0xde, 0xac, 0xc5, 0xca, 0x47, 0x62, 0xcf,
 14008  	0xe2, 0xeb, 0xc7, 0x9e, 0x88, 0x20, 0xd4, 0xe0, 0x95, 0xab, 0x4c, 0xab, 0xff, 0xf7, 0xe7, 0x34,
 14009  	0x52, 0x52, 0x54, 0x89, 0x90, 0x40, 0x0b, 0xda, 0x07, 0x80, 0x3a, 0x0e, 0xd6, 0x3c, 0xac, 0x93,
 14010  	0xca, 0xd1, 0x34, 0x3a, 0x86, 0x67, 0x8e, 0xca, 0xa5, 0x90, 0xdf, 0x97, 0x38, 0xbe, 0xe1, 0xa3,
 14011  	0xd1, 0x43, 0x48, 0xbf, 0xc4, 0x8e, 0x6b, 0xd8, 0x56, 0x19, 0xd1, 0x60, 0xb2, 0xce, 0x2b, 0xfb,
 14012  	0xd5, 0xb1, 0xf5, 0x3e, 0x67, 0x54, 0x8a, 0x20, 0x47, 0x07, 0x50, 0xc0, 0x56, 0xc7, 0xd6, 0x0d,
 14013  	0xab, 0x47, 0x2b, 0xc1, 0xf2, 0x52, 0x50, 0xef, 0x7c, 0x7b, 0xb9, 0xf1, 0xd6, 0x18, 0x7f, 0x83,
 14014  	0xd3, 0x92, 0x6d, 0x2b, 0x79, 0x1c, 0xfa, 0x42, 0x07, 0x90, 0x16, 0x39, 0x79, 0x99, 0xea, 0x74,
 14015  	0x6b, 0x86, 0x0a, 0x26, 0x32, 0x3a, 0x3f, 0x97, 0x60, 0x27, 0x35, 0xbd, 0x6e, 0xb8, 0xa4, 0x16,
 14016  	0xd1, 0xcb, 0x2b, 0xe1, 0x9a, 0x5e, 0x40, 0x51, 0x0d, 0xa0, 0x87, 0x6d, 0x95, 0x4d, 0xa0, 0xca,
 14017  	0xab, 0x74, 0xb9, 0xf5, 0xd0, 0x72, 0x3d, 0x6c, 0x6f, 0x8b, 0x39, 0x15, 0x69, 0x33, 0xbb, 0x46,
 14018  	0x4f, 0x94, 0x08, 0x3d, 0x6c, 0x33, 0x00, 0xaa, 0x40, 0x76, 0xe0, 0x60, 0xdd, 0xe8, 0x90, 0x2e,
 14019  	0xf0, 0x56, 0x28, 0x36, 0x07, 0xe0, 0xca, 0x3a, 0x64, 0xfd, 0xa8, 0x81, 0xd2, 0x10, 0xaf, 0x9e,
 14020  	0xd4, 0xd8, 0xd0, 0xa1, 0xde, 0x38, 0xa9, 0xc9, 0x52, 0xe5, 0x0e, 0x24, 0xe8, 0xe1, 0x73, 0x90,
 14021  	0xde, 0x6f, 0x2b, 0xcf, 0xaa, 0x4a, 0x9d, 0x0d, 0x3a, 0x9a, 0xad, 0xcf, 0x1b, 0xca, 0x69, 0xa3,
 14022  	0x2e, 0x8b, 0xbc, 0xf0, 0xaf, 0x71, 0x40, 0x41, 0xbf, 0x7b, 0x6a, 0xf3, 0x9e, 0xb1, 0x07, 0x8b,
 14023  	0x1d, 0x1f, 0xca, 0x2e, 0x40, 0xda, 0x8c, 0x6d, 0x15, 0x77, 0x1f, 0xfe, 0xc6, 0x9e, 0x59, 0xc8,
 14024  	0x08, 0x83, 0x02, 0x63, 0x2a, 0x76, 0x22, 0xd0, 0x50, 0x3d, 0x14, 0x1b, 0xcb, 0x41, 0x0a, 0x24,
 14025  	0x3b, 0xe7, 0xb8, 0xf3, 0x9c, 0x67, 0xe1, 0xdf, 0x9e, 0xb1, 0x30, 0x2d, 0x15, 0x43, 0x86, 0x5b,
 14026  	0x23, 0x3c, 0xc1, 0xd2, 0xa2, 0x3c, 0xa0, 0xa2, 0x90, 0x12, 0x0d, 0xaf, 0x89, 0x6b, 0x23, 0xd6,
 14027  	0xb4, 0xd9, 0x8c, 0x88, 0x58, 0xa1, 0xe8, 0xfa, 0x10, 0x16, 0x2d, 0xdb, 0x53, 0x49, 0x5f, 0xc7,
 14028  	0xa3, 0x00, 0xed, 0xd6, 0x0a, 0x7b, 0x32, 0xb7, 0xd5, 0xc0, 0xe7, 0x0b, 0x96, 0xed, 0xb5, 0x86,
 14029  	0x26, 0x6f, 0x85, 0x2a, 0x1f, 0x43, 0x31, 0xaa, 0x23, 0x94, 0x85, 0x64, 0xed, 0xa0, 0x51, 0x3b,
 14030  	0x94, 0x17, 0xd0, 0x22, 0xe4, 0xf6, 0xdb, 0x4a, 0xa3, 0xf9, 0xa8, 0xa5, 0x1e, 0x36, 0x7e, 0xc6,
 14031  	0x06, 0x53, 0xad, 0xb6, 0x18, 0x4c, 0xf9, 0x5d, 0x4e, 0x52, 0x4e, 0x55, 0xfe, 0x47, 0x82, 0xe2,
 14032  	0xb1, 0x63, 0xf4, 0x35, 0x67, 0x74, 0x88, 0x47, 0x27, 0xaf, 0xb4, 0x01, 0xfa, 0x14, 0x96, 0x2d,
 14033  	0xfc, 0x4a, 0x1d, 0x30, 0xa8, 0xea, 0x57, 0xcd, 0xd2, 0xf4, 0xa9, 0x65, 0xc9, 0xc2, 0xaf, 0xb8,
 14034  	0x84, 0x26, 0x2f, 0x9a, 0x3f, 0x80, 0x9c, 0x6d, 0xf2, 0xb6, 0x1c, 0x8b, 0xc9, 0x51, 0x2e, 0xcc,
 14035  	0x04, 0xb6, 0xc9, 0xba, 0x70, 0x9a, 0xc8, 0x73, 0x64, 0x3d, 0x41, 0x1d, 0x9f, 0x42, 0x6d, 0xe1,
 14036  	0x57, 0x82, 0xfa, 0x53, 0x58, 0x26, 0xb2, 0x27, 0x76, 0x97, 0x98, 0xb1, 0x3b, 0xdb, 0xd4, 0xa3,
 14037  	0xbb, 0xe3, 0xc6, 0xfb, 0x67, 0x12, 0xd0, 0xa0, 0x3d, 0xf4, 0xc4, 0x4c, 0x89, 0x1e, 0xfe, 0x87,
 14038  	0x50, 0x20, 0x9b, 0x09, 0x7a, 0x25, 0x69, 0xc6, 0x7d, 0x90, 0x3d, 0x8b, 0x08, 0x4c, 0xb8, 0xc8,
 14039  	0xa6, 0x02, 0xae, 0xd8, 0x2c, 0x2e, 0xdb, 0xd4, 0xc7, 0x5a, 0xa9, 0xbf, 0x4b, 0x01, 0x0a, 0x6c,
 14040  	0xf0, 0xc9, 0xd0, 0xd3, 0xa8, 0x63, 0x56, 0x21, 0xc5, 0x2d, 0x42, 0xa2, 0x96, 0xf6, 0xde, 0x4c,
 14041  	0xe7, 0x89, 0xce, 0x2b, 0x0e, 0x16, 0x14, 0xce, 0x88, 0x7e, 0x12, 0x9e, 0x37, 0xe7, 0x76, 0xdf,
 14042  	0x9d, 0x2f, 0x7c, 0x1f, 0x2c, 0x88, 0x41, 0xf4, 0x21, 0x24, 0x5d, 0x8f, 0x04, 0x92, 0x38, 0x0d,
 14043  	0xff, 0x3b, 0x33, 0xf8, 0x27, 0x37, 0xbf, 0x7d, 0x42, 0xd8, 0x84, 0xfb, 0x50, 0x19, 0xe8, 0x19,
 14044  	0x64, 0xfd, 0xaa, 0x87, 0x0f, 0xaf, 0x1f, 0xcc, 0x2f, 0xd0, 0x0f, 0x58, 0x22, 0x9c, 0xf9, 0xb2,
 14045  	0x50, 0x15, 0x72, 0x7d, 0x4e, 0x16, 0xf4, 0xb6, 0x9b, 0xbc, 0xf0, 0x04, 0x21, 0x81, 0x16, 0xa0,
 14046  	0xa1, 0x2f, 0x05, 0x04, 0x53, 0x93, 0x06, 0x67, 0xc7, 0x36, 0xcd, 0x33, 0xad, 0xf3, 0x9c, 0x0e,
 14047  	0xe4, 0xfc, 0xe0, 0x2c, 0xa0, 0xe8, 0x90, 0x94, 0x8f, 0xc2, 0xdd, 0xe8, 0x78, 0x2d, 0x37, 0xc7,
 14048  	0x08, 0x50, 0x84, 0xb3, 0x83, 0x05, 0x25, 0xc4, 0x8e, 0xda, 0x50, 0x1c, 0x44, 0x5c, 0x8e, 0xd7,
 14049  	0x6a, 0xf7, 0x66, 0x25, 0xec, 0x08, 0xf1, 0xc1, 0x82, 0x32, 0xc6, 0x8e, 0x7e, 0x1f, 0x50, 0x67,
 14050  	0xc2, 0x94, 0xe9, 0x58, 0xed, 0xba, 0x5d, 0x8e, 0x33, 0x1c, 0x2c, 0x28, 0x53, 0xc4, 0x54, 0x3e,
 14051  	0x85, 0x24, 0xbd, 0x4e, 0x92, 0x0f, 0x9e, 0xb6, 0x0e, 0x5b, 0xed, 0x67, 0x2d, 0x16, 0x62, 0xea,
 14052  	0x8d, 0xa3, 0xc6, 0x69, 0x43, 0x6d, 0xb7, 0x8e, 0x48, 0x88, 0xb9, 0x0d, 0x2b, 0x1c, 0x50, 0x6d,
 14053  	0xd5, 0xd5, 0x67, 0x4a, 0x53, 0xa0, 0x62, 0x95, 0xad, 0x70, 0xc2, 0xc9, 0x40, 0xa2, 0xd5, 0x6e,
 14054  	0x35, 0xe4, 0x05, 0x9a, 0x7a, 0xea, 0x75, 0x59, 0xa2, 0xa9, 0x47, 0x69, 0x1f, 0x8b, 0xc8, 0xb4,
 14055  	0x97, 0x07, 0xd0, 0x7d, 0x13, 0x78, 0x9c, 0xc8, 0xa4, 0xe4, 0x74, 0xe5, 0x4f, 0xef, 0xc2, 0xe2,
 14056  	0x58, 0xb8, 0xbe, 0xa6, 0x07, 0xd9, 0xa4, 0x3d, 0x48, 0x3c, 0x70, 0x42, 0xbf, 0x07, 0x89, 0xf1,
 14057  	0xf6, 0xe3, 0x01, 0x64, 0x07, 0x9a, 0x83, 0x2d, 0x2f, 0x88, 0x1d, 0x62, 0x46, 0x93, 0x39, 0xa6,
 14058  	0x08, 0x9f, 0x3c, 0xc3, 0x08, 0x9b, 0x84, 0xc9, 0x2f, 0x49, 0x98, 0x99, 0xdd, 0xe6, 0x0e, 0x5e,
 14059  	0xba, 0xa6, 0x1a, 0x39, 0x86, 0x52, 0xdf, 0xd6, 0x8d, 0x2e, 0x49, 0xbe, 0xc4, 0x46, 0x3d, 0xa3,
 14060  	0xcf, 0xc6, 0xbe, 0xb9, 0xdd, 0xef, 0x85, 0xee, 0x66, 0xe8, 0x19, 0xe6, 0xf6, 0xb9, 0xd9, 0xd9,
 14061  	0x3e, 0x15, 0x8f, 0x5a, 0xfc, 0x44, 0x72, 0x98, 0x9b, 0x20, 0xd1, 0x23, 0x48, 0x8b, 0x56, 0x3b,
 14062  	0x43, 0x0b, 0xdc, 0x79, 0x63, 0x83, 0x28, 0x4a, 0x38, 0x37, 0xda, 0x87, 0xa2, 0x85, 0x2f, 0xc2,
 14063  	0x93, 0xa1, 0x6c, 0xc4, 0x7b, 0xf2, 0x2d, 0x7c, 0x31, 0x7d, 0x2c, 0x94, 0xb7, 0x02, 0x8c, 0x8e,
 14064  	0x3e, 0x83, 0x42, 0x24, 0x1e, 0x73, 0xd3, 0x9b, 0x33, 0xe0, 0xf8, 0x95, 0x67, 0x28, 0x4c, 0xa3,
 14065  	0x7d, 0x48, 0x8b, 0x84, 0x90, 0xa3, 0x67, 0xbc, 0x99, 0x30, 0xc1, 0x8c, 0xf6, 0x48, 0x3c, 0xbf,
 14066  	0xf0, 0x82, 0x3c, 0x91, 0x0f, 0x6a, 0xc9, 0xab, 0xcb, 0x8d, 0x1c, 0x39, 0xe1, 0x94, 0xf9, 0x4f,
 14067  	0xce, 0xf2, 0xe1, 0x3a, 0x7a, 0x0c, 0xe0, 0x3f, 0x26, 0xba, 0x74, 0x42, 0x39, 0xbb, 0xa7, 0x38,
 14068  	0x16, 0x84, 0xc1, 0x96, 0x94, 0x10, 0x37, 0x7a, 0x02, 0x59, 0x11, 0x78, 0x58, 0xb5, 0x3f, 0xdb,
 14069  	0x43, 0x27, 0xc3, 0xa0, 0x08, 0x7e, 0xbe, 0x04, 0x52, 0xe8, 0x98, 0x58, 0x73, 0x31, 0x2f, 0xf9,
 14070  	0x1f, 0xce, 0x59, 0xe8, 0x9c, 0x74, 0xce, 0x71, 0x5f, 0xab, 0x9d, 0x6b, 0x56, 0x0f, 0x1f, 0x11,
 14071  	0xfe, 0xbd, 0x58, 0x59, 0x52, 0x98, 0x28, 0xd4, 0x02, 0x99, 0xaa, 0x2c, 0x1c, 0x55, 0x65, 0xaa,
 14072  	0xb5, 0x77, 0xb8, 0xd6, 0x8a, 0x44, 0x6b, 0x33, 0x23, 0x2b, 0xb5, 0xa9, 0x27, 0x41, 0x74, 0xfd,
 14073  	0x1d, 0x28, 0x76, 0x6d, 0xa7, 0xaf, 0x79, 0xaa, 0x70, 0x9e, 0x52, 0x30, 0x1c, 0xf8, 0xf6, 0x72,
 14074  	0xa3, 0xb0, 0x4f, 0xb1, 0xc2, 0x71, 0x0a, 0xdd, 0xf0, 0x27, 0x3a, 0x10, 0x49, 0x68, 0x89, 0xe6,
 14075  	0x8c, 0x0f, 0xe6, 0x3d, 0xe1, 0x64, 0x06, 0x6a, 0x41, 0x8a, 0x56, 0x72, 0x6e, 0x79, 0x99, 0xea,
 14076  	0xfd, 0x35, 0xab, 0x42, 0x85, 0x4b, 0x41, 0x3f, 0x87, 0xa2, 0x4e, 0x20, 0xa4, 0xcd, 0x60, 0xc3,
 14077  	0x87, 0x15, 0x2a, 0x77, 0x67, 0x4e, 0xb9, 0x2d, 0xad, 0x8f, 0x9b, 0x56, 0xd7, 0x16, 0x3d, 0xa7,
 14078  	0x10, 0xc6, 0x06, 0x16, 0x6d, 0xc8, 0x74, 0xb5, 0xbe, 0x61, 0x1a, 0xd8, 0x2d, 0xaf, 0x52, 0xb9,
 14079  	0x1f, 0x5e, 0xeb, 0xe5, 0xe3, 0x83, 0x69, 0x91, 0xc2, 0x84, 0x10, 0xdf, 0xd9, 0x29, 0x60, 0x44,
 14080  	0x2e, 0xf5, 0xd6, 0xa4, 0xb3, 0x8b, 0xc1, 0x74, 0x64, 0x48, 0x4d, 0x9d, 0x9d, 0x7f, 0xe9, 0xe8,
 14081  	0x2e, 0xc0, 0x4b, 0x03, 0xbf, 0x52, 0x5f, 0x0c, 0xb1, 0x33, 0x2a, 0x97, 0xc3, 0x3d, 0x06, 0x81,
 14082  	0x7f, 0x46, 0xc0, 0xe8, 0x23, 0xc8, 0xea, 0x78, 0x80, 0x2d, 0xdd, 0x6d, 0x5b, 0xe5, 0xdb, 0xb4,
 14083  	0xa2, 0x5b, 0xba, 0xba, 0xdc, 0xc8, 0xd6, 0x05, 0x90, 0xc7, 0xd6, 0x80, 0x0a, 0x7d, 0x01, 0x79,
 14084  	0xf6, 0x81, 0xf5, 0xb6, 0xb5, 0x37, 0x2a, 0xaf, 0xd1, 0x43, 0xdf, 0x9f, 0x53, 0x99, 0x41, 0x07,
 14085  	0xef, 0x0f, 0x3d, 0xeb, 0x21, 0x69, 0x4a, 0x44, 0x36, 0xfa, 0x39, 0xe4, 0x85, 0x75, 0x3f, 0xb6,
 14086  	0xcf, 0xdc, 0xf2, 0x5b, 0xd7, 0x4e, 0x24, 0xc7, 0xd7, 0x7a, 0x12, 0xb0, 0x8a, 0xd8, 0x15, 0x96,
 14087  	0x86, 0x7e, 0x0a, 0x05, 0xff, 0x01, 0xc4, 0x1e, 0x78, 0x6e, 0xf9, 0x6d, 0xea, 0x9c, 0x0f, 0xe6,
 14088  	0x35, 0x5d, 0xce, 0xdb, 0x1e, 0xd0, 0x61, 0x6d, 0xe8, 0x0b, 0xdd, 0x81, 0xac, 0xee, 0xd8, 0x03,
 14089  	0x96, 0x43, 0xbe, 0xb7, 0x29, 0x6d, 0xc5, 0xfd, 0x36, 0xd2, 0xb1, 0x07, 0x34, 0x39, 0xa8, 0x50,
 14090  	0x74, 0xf0, 0xc0, 0xd4, 0x3a, 0xb8, 0x4f, 0xb2, 0x9b, 0xdd, 0x2d, 0xaf, 0xd3, 0xd5, 0x77, 0xe7,
 14091  	0x56, 0xa4, 0xcf, 0x2c, 0x0c, 0x33, 0x24, 0xaf, 0xdd, 0x45, 0x4f, 0x01, 0xb4, 0xa1, 0x6e, 0x78,
 14092  	0x6a, 0xdf, 0xd6, 0x71, 0x79, 0xe3, 0xda, 0x77, 0xc1, 0x71, 0xe1, 0x55, 0xc2, 0xf8, 0xc4, 0xd6,
 14093  	0xb1, 0x3f, 0xde, 0x17, 0x00, 0xf4, 0x11, 0xe4, 0xe8, 0xd1, 0xbe, 0xb0, 0xcf, 0x88, 0x6d, 0x6e,
 14094  	0xd2, 0xc3, 0x95, 0xf8, 0x5d, 0x66, 0xeb, 0x8e, 0x3d, 0x78, 0x6c, 0x9f, 0x51, 0x8b, 0xe1, 0xff,
 14095  	0xea, 0xc8, 0x85, 0x7c, 0xaf, 0xa3, 0x06, 0xe1, 0xf4, 0x0e, 0xbd, 0xc5, 0x4f, 0xe6, 0xdc, 0xcb,
 14096  	0xa3, 0xda, 0x94, 0x00, 0xbb, 0x24, 0xf2, 0xc2, 0xa3, 0x9a, 0x80, 0xb9, 0x4a, 0xae, 0xd7, 0xf1,
 14097  	0x3f, 0xd0, 0x7b, 0x90, 0x67, 0xb3, 0x0a, 0xee, 0x00, 0x95, 0x90, 0x03, 0xe4, 0x18, 0x86, 0xb9,
 14098  	0x40, 0x0b, 0xf8, 0x50, 0x43, 0xd5, 0x5c, 0xd5, 0xee, 0xb2, 0x3b, 0xbb, 0x3b, 0x7f, 0xde, 0x2f,
 14099  	0x32, 0xee, 0xaa, 0xdb, 0xee, 0xd2, 0x8b, 0xed, 0x40, 0xde, 0x1e, 0x7a, 0x67, 0xf6, 0xd0, 0xd2,
 14100  	0xd5, 0xee, 0x73, 0xb7, 0xfc, 0x0e, 0x3d, 0xed, 0x8d, 0x1a, 0x50, 0xff, 0x74, 0x6d, 0x2e, 0x68,
 14101  	0xff, 0xd0, 0x55, 0x72, 0x42, 0xea, 0xfe, 0x73, 0x17, 0xfd, 0x11, 0xe4, 0x0c, 0x2b, 0x58, 0xe3,
 14102  	0xde, 0xcd, 0xd7, 0x40, 0xa2, 0xf2, 0x6e, 0x5a, 0xfe, 0x12, 0xc0, 0x65, 0x92, 0x15, 0xde, 0x87,
 14103  	0xa2, 0xdd, 0xed, 0x9a, 0x86, 0x85, 0x55, 0x07, 0x6b, 0xae, 0x6d, 0x95, 0xdf, 0x0d, 0x69, 0xb0,
 14104  	0xc0, 0x71, 0x0a, 0x45, 0xa1, 0x0a, 0x64, 0x3d, 0xdc, 0x1f, 0xd8, 0x8e, 0xe6, 0x8c, 0xca, 0xef,
 14105  	0x85, 0x5f, 0x45, 0x7c, 0x30, 0x3a, 0x83, 0xb5, 0xa1, 0x85, 0x2f, 0x06, 0xb6, 0x8b, 0x75, 0x95,
 14106  	0xd7, 0x74, 0x2e, 0xcd, 0x6f, 0xc4, 0x8e, 0xb6, 0x68, 0x8c, 0xbb, 0xc7, 0x37, 0x75, 0xeb, 0xa9,
 14107  	0xa0, 0x64, 0x35, 0x1e, 0xcb, 0x83, 0x7e, 0xa5, 0x77, 0x6b, 0x38, 0x15, 0xad, 0xaf, 0xfd, 0x52,
 14108  	0x82, 0xd2, 0x44, 0xce, 0x44, 0x7f, 0x08, 0x69, 0xcb, 0xd6, 0x43, 0x6f, 0x50, 0x0d, 0xbe, 0x4c,
 14109  	0xaa, 0x65, 0xeb, 0xec, 0x09, 0xea, 0x41, 0xcf, 0xf0, 0xce, 0x87, 0x67, 0xdb, 0x1d, 0xbb, 0xbf,
 14110  	0xe3, 0x2b, 0x51, 0x3f, 0x0b, 0xfe, 0xdf, 0x19, 0x3c, 0xef, 0xed, 0xd0, 0xff, 0x06, 0x67, 0xdb,
 14111  	0x8c, 0x4d, 0x49, 0x11, 0xa9, 0x4d, 0x1d, 0x7d, 0x08, 0x8b, 0xf8, 0x62, 0x60, 0x38, 0xa1, 0xba,
 14112  	0x31, 0x16, 0xf2, 0xf9, 0x62, 0x80, 0x24, 0x06, 0xc2, 0x5f, 0x09, 0xfe, 0x31, 0x06, 0x8b, 0x63,
 14113  	0x19, 0x8b, 0x14, 0xca, 0xf4, 0xc5, 0x36, 0x52, 0x28, 0x13, 0xc8, 0x35, 0x4f, 0x4a, 0xe1, 0x9f,
 14114  	0x3c, 0xc4, 0xdf, 0xf4, 0x27, 0x0f, 0xd1, 0xe9, 0x7b, 0xf2, 0x06, 0xd3, 0xf7, 0x1f, 0xc3, 0xaa,
 14115  	0xe1, 0xaa, 0x96, 0x6d, 0x89, 0x21, 0x89, 0xdf, 0x84, 0x85, 0x9f, 0xb5, 0x97, 0x0c, 0xb7, 0x65,
 14116  	0x5b, 0x6c, 0x3c, 0xe2, 0x9f, 0x3a, 0x78, 0x01, 0x4f, 0x4f, 0xbe, 0x80, 0xfb, 0x43, 0x90, 0x84,
 14117  	0x9c, 0x5c, 0xfb, 0x07, 0x09, 0x32, 0x22, 0x1b, 0x47, 0x3b, 0x03, 0x69, 0xce, 0xce, 0x60, 0xb6,
 14118  	0x1e, 0xf7, 0x41, 0x9e, 0x30, 0x4a, 0xd6, 0x98, 0xbc, 0x2d, 0xaa, 0xa9, 0xa9, 0xb6, 0x58, 0x1c,
 14119  	0x44, 0x4c, 0x90, 0xdf, 0xee, 0x57, 0x12, 0x64, 0xc3, 0x3f, 0x39, 0x8b, 0x45, 0x27, 0x14, 0x13,
 14120  	0x6d, 0xce, 0x6b, 0xbe, 0x7a, 0x46, 0xef, 0x2b, 0x3e, 0xff, 0x7d, 0xf1, 0x6d, 0xfe, 0x31, 0xe4,
 14121  	0x42, 0x49, 0x72, 0xbc, 0x45, 0x97, 0x5e, 0xa3, 0x45, 0x7f, 0x07, 0x52, 0x3c, 0x33, 0x30, 0x17,
 14122  	0x28, 0x70, 0xee, 0x24, 0xcb, 0x0a, 0xc9, 0x2f, 0x48, 0x46, 0xe0, 0xab, 0xff, 0x5b, 0x1c, 0xf2,
 14123  	0xe1, 0x24, 0x4a, 0xc2, 0x88, 0x61, 0x75, 0x1c, 0x9a, 0xc1, 0xe8, 0xea, 0x71, 0xff, 0x71, 0x55,
 14124  	0x80, 0x49, 0x6a, 0xed, 0x1b, 0x96, 0x4a, 0x1f, 0xf4, 0x22, 0x6e, 0x96, 0xe9, 0x1b, 0xd6, 0xe7,
 14125  	0x04, 0x4a, 0x49, 0xb4, 0x0b, 0x4e, 0x12, 0x8f, 0x90, 0x68, 0x17, 0x8c, 0x64, 0x8d, 0x56, 0xab,
 14126  	0x8e, 0x47, 0x5b, 0xca, 0x78, 0xa8, 0xfe, 0x74, 0x3c, 0xb4, 0x0e, 0xe9, 0x97, 0x86, 0xe3, 0x0d,
 14127  	0x35, 0x93, 0x76, 0x8f, 0xc2, 0x20, 0x05, 0x10, 0x59, 0x50, 0x0c, 0xca, 0x86, 0x57, 0x16, 0x76,
 14128  	0xa8, 0x89, 0xe7, 0x76, 0xab, 0xaf, 0x51, 0x37, 0x04, 0x1f, 0x44, 0x90, 0x08, 0xae, 0x6e, 0x18,
 14129  	0xb8, 0xf6, 0xb7, 0x12, 0x14, 0x22, 0x64, 0xa8, 0x09, 0x8b, 0x74, 0xe1, 0x89, 0xf1, 0xd7, 0x1d,
 14130  	0xff, 0xc7, 0x63, 0x04, 0x3d, 0xb5, 0x23, 0x2c, 0xd8, 0x21, 0x94, 0x8e, 0x3e, 0x85, 0x22, 0x13,
 14131  	0xe5, 0x3f, 0xd3, 0x47, 0xcd, 0x2f, 0x4f, 0x25, 0x45, 0xdf, 0xea, 0xf3, 0x76, 0x00, 0xd3, 0xc3,
 14132  	0x2f, 0x90, 0x6b, 0x16, 0xe4, 0x42, 0x75, 0xc9, 0x1c, 0x76, 0xff, 0x23, 0x48, 0xf8, 0xf1, 0x72,
 14133  	0xce, 0x7c, 0x4b, 0x19, 0xf8, 0x7a, 0x5f, 0x4a, 0xb0, 0x3c, 0xad, 0x3e, 0x88, 0xf8, 0x13, 0x33,
 14134  	0xa4, 0xb9, 0xfc, 0xe9, 0x6e, 0xb8, 0x6e, 0x63, 0xc6, 0x25, 0x5e, 0xc5, 0x82, 0xca, 0xed, 0x5d,
 14135  	0xdf, 0xc4, 0x99, 0x6d, 0x2d, 0x46, 0x4c, 0x9c, 0xf4, 0x67, 0x21, 0x23, 0xaf, 0x3c, 0x10, 0x63,
 14136  	0x19, 0x80, 0xd4, 0xf1, 0xd3, 0xbd, 0xa3, 0x66, 0x6d, 0xea, 0x48, 0x05, 0xe5, 0x20, 0xdd, 0xde,
 14137  	0xdf, 0x3f, 0x6a, 0xb6, 0x1a, 0x72, 0xbc, 0xb2, 0x05, 0x59, 0xbf, 0x04, 0x43, 0x79, 0xc8, 0xd4,
 14138  	0x9b, 0x27, 0xd5, 0xbd, 0xa3, 0x46, 0x5d, 0x5e, 0x40, 0x05, 0xc8, 0x2a, 0x8d, 0x6a, 0x9d, 0x0e,
 14139  	0x6e, 0x64, 0xe9, 0xe3, 0xcc, 0x2f, 0xbe, 0xdc, 0x90, 0x78, 0x88, 0x4c, 0xc9, 0xe9, 0xc7, 0x89,
 14140  	0x0c, 0x92, 0x97, 0x2a, 0x7f, 0x2f, 0x01, 0xaa, 0x6b, 0x9e, 0x46, 0xec, 0xef, 0x06, 0x83, 0x98,
 14141  	0xd8, 0x35, 0x37, 0x15, 0x6d, 0xae, 0xe3, 0x6f, 0xd2, 0x5c, 0x07, 0x9b, 0xae, 0xfc, 0x79, 0x12,
 14142  	0x8a, 0xa7, 0xa3, 0x41, 0x78, 0x93, 0xaf, 0x15, 0xd7, 0xa7, 0x45, 0xef, 0xd8, 0xcd, 0xa3, 0xf7,
 14143  	0x35, 0xbf, 0xe9, 0x65, 0x1a, 0x4a, 0x5c, 0xa3, 0xa1, 0x3a, 0x24, 0x9e, 0x1b, 0x16, 0x9b, 0x6c,
 14144  	0x16, 0x67, 0xea, 0x26, 0x7a, 0xda, 0xed, 0x43, 0xc3, 0xd2, 0xc5, 0x3a, 0x84, 0x1b, 0xfd, 0x0c,
 14145  	0xf2, 0xd8, 0x1a, 0xf6, 0xd5, 0x3e, 0xee, 0x9f, 0x61, 0x87, 0x3d, 0x81, 0x5f, 0xd3, 0x5e, 0x45,
 14146  	0xa5, 0x35, 0xac, 0x61, 0xff, 0x09, 0x65, 0x14, 0x95, 0x2e, 0xf6, 0x21, 0x2e, 0xba, 0x0f, 0x49,
 14147  	0xcd, 0x34, 0x34, 0x97, 0x4f, 0xb5, 0xae, 0xfb, 0x81, 0x1b, 0x23, 0x44, 0xbf, 0x0b, 0x05, 0xcd,
 14148  	0x71, 0xb4, 0x11, 0xff, 0xa1, 0x96, 0x4e, 0x27, 0xaa, 0x7c, 0x9c, 0x46, 0xea, 0xd3, 0x2a, 0x41,
 14149  	0xd2, 0xdf, 0x66, 0x09, 0x45, 0xe4, 0x34, 0x1f, 0xa4, 0xaf, 0xfd, 0x42, 0x02, 0x08, 0xb6, 0x84,
 14150  	0x7e, 0x04, 0xb7, 0x06, 0xe7, 0x23, 0x97, 0xfe, 0x84, 0xcc, 0xc1, 0x03, 0x07, 0xbb, 0xd8, 0x62,
 14151  	0xfe, 0x4a, 0xef, 0x39, 0xaf, 0xac, 0x0a, 0xb4, 0x12, 0xc1, 0xa2, 0x4f, 0x60, 0x55, 0xfc, 0xf4,
 14152  	0x6c, 0x8c, 0x2f, 0x9c, 0xc7, 0x57, 0x38, 0x4d, 0x94, 0x99, 0xbb, 0xe1, 0x5b, 0x90, 0x20, 0xaa,
 14153  	0x26, 0x0e, 0xd7, 0x68, 0x3d, 0x7d, 0x22, 0x2f, 0xa0, 0x2c, 0x24, 0xab, 0x47, 0xcd, 0xea, 0x49,
 14154  	0xd8, 0x89, 0x2a, 0xff, 0x21, 0x81, 0xcc, 0x8c, 0xe1, 0x4d, 0x2d, 0x72, 0x76, 0xa5, 0xf1, 0x9b,
 14155  	0x87, 0x9e, 0x51, 0x5f, 0x4b, 0x7c, 0x47, 0xbe, 0xf6, 0x55, 0x0c, 0x20, 0x74, 0xaa, 0x9f, 0x84,
 14156  	0x7f, 0x07, 0x3f, 0x7b, 0x6e, 0x37, 0x96, 0xbd, 0x0e, 0x16, 0xc4, 0xaf, 0xe4, 0x1f, 0x41, 0x46,
 14157  	0xe7, 0x21, 0x86, 0x87, 0xef, 0x99, 0x03, 0xb2, 0x89, 0x48, 0x74, 0x40, 0x3a, 0x61, 0x0e, 0x45,
 14158  	0x9f, 0x44, 0x7e, 0x76, 0x79, 0x6f, 0x2e, 0x4b, 0x3f, 0x10, 0x4f, 0xd6, 0x55, 0x48, 0x31, 0x8f,
 14159  	0xe7, 0x6a, 0x9a, 0x35, 0x62, 0x1d, 0xbf, 0xd4, 0x83, 0x05, 0x85, 0x33, 0xf2, 0x61, 0x76, 0x1a,
 14160  	0x92, 0x43, 0xcb, 0xb0, 0xad, 0x1f, 0x28, 0xe1, 0xc7, 0x52, 0x51, 0x29, 0x93, 0xb0, 0x4b, 0xff,
 14161  	0xd7, 0x3c, 0xac, 0xb3, 0xb1, 0xfa, 0x53, 0xeb, 0xa5, 0x0f, 0x90, 0x50, 0x11, 0x80, 0xe3, 0x0d,
 14162  	0xab, 0x27, 0xc7, 0x68, 0xd0, 0x76, 0xec, 0xc1, 0x80, 0x7c, 0xc5, 0xf7, 0xbe, 0xff, 0xf5, 0x7f,
 14163  	0xad, 0x2f, 0x7c, 0x7d, 0xb5, 0x2e, 0xfd, 0xea, 0x6a, 0x5d, 0xfa, 0xf5, 0xd5, 0xba, 0xf4, 0x9f,
 14164  	0x57, 0xeb, 0xd2, 0x5f, 0x7e, 0xb3, 0xbe, 0xf0, 0xab, 0x6f, 0xd6, 0x17, 0x7e, 0xfd, 0xcd, 0xfa,
 14165  	0xc2, 0xef, 0xa5, 0xf9, 0x46, 0xff, 0x2f, 0x00, 0x00, 0xff, 0xff, 0x3e, 0x5c, 0xaa, 0x6e, 0x6b,
 14166  	0x31, 0x00, 0x00,
 14167  }