github.com/onosproject/onos-api/go@v0.10.32/onos/topo/fabric.pb.go (about)

     1  // Code generated by protoc-gen-gogo. DO NOT EDIT.
     2  // source: onos/topo/fabric.proto
     3  
     4  package topo
     5  
     6  import (
     7  	fmt "fmt"
     8  	_ "github.com/gogo/protobuf/gogoproto"
     9  	proto "github.com/gogo/protobuf/proto"
    10  	github_com_gogo_protobuf_types "github.com/gogo/protobuf/types"
    11  	types "github.com/gogo/protobuf/types"
    12  	io "io"
    13  	math "math"
    14  	math_bits "math/bits"
    15  	time "time"
    16  )
    17  
    18  // Reference imports to suppress errors if they are not otherwise used.
    19  var _ = proto.Marshal
    20  var _ = fmt.Errorf
    21  var _ = math.Inf
    22  var _ = time.Kitchen
    23  
    24  // This is a compile-time assertion to ensure that this generated file
    25  // is compatible with the proto package it is being compiled against.
    26  // A compilation error at this line likely means your copy of the
    27  // proto package needs to be updated.
    28  const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package
    29  
    30  type NetworkLayer_Type int32
    31  
    32  const (
    33  	NetworkLayer_UNDERLAY NetworkLayer_Type = 0
    34  )
    35  
    36  var NetworkLayer_Type_name = map[int32]string{
    37  	0: "UNDERLAY",
    38  }
    39  
    40  var NetworkLayer_Type_value = map[string]int32{
    41  	"UNDERLAY": 0,
    42  }
    43  
    44  func (x NetworkLayer_Type) String() string {
    45  	return proto.EnumName(NetworkLayer_Type_name, int32(x))
    46  }
    47  
    48  func (NetworkLayer_Type) EnumDescriptor() ([]byte, []int) {
    49  	return fileDescriptor_705cdab724be9631, []int{8, 0}
    50  }
    51  
    52  type IPAddress_Type int32
    53  
    54  const (
    55  	IPAddress_IPV4 IPAddress_Type = 0
    56  	IPAddress_IPV6 IPAddress_Type = 1
    57  )
    58  
    59  var IPAddress_Type_name = map[int32]string{
    60  	0: "IPV4",
    61  	1: "IPV6",
    62  }
    63  
    64  var IPAddress_Type_value = map[string]int32{
    65  	"IPV4": 0,
    66  	"IPV6": 1,
    67  }
    68  
    69  func (x IPAddress_Type) String() string {
    70  	return proto.EnumName(IPAddress_Type_name, int32(x))
    71  }
    72  
    73  func (IPAddress_Type) EnumDescriptor() ([]byte, []int) {
    74  	return fileDescriptor_705cdab724be9631, []int{11, 0}
    75  }
    76  
    77  type ControllerInfo_Type int32
    78  
    79  const (
    80  	ControllerInfo_P4RUNTIME ControllerInfo_Type = 0
    81  )
    82  
    83  var ControllerInfo_Type_name = map[int32]string{
    84  	0: "P4RUNTIME",
    85  }
    86  
    87  var ControllerInfo_Type_value = map[string]int32{
    88  	"P4RUNTIME": 0,
    89  }
    90  
    91  func (x ControllerInfo_Type) String() string {
    92  	return proto.EnumName(ControllerInfo_Type_name, int32(x))
    93  }
    94  
    95  func (ControllerInfo_Type) EnumDescriptor() ([]byte, []int) {
    96  	return fileDescriptor_705cdab724be9631, []int{14, 0}
    97  }
    98  
    99  // ConfigurationAction
   100  type P4PipelineInfo_ConfigurationAction int32
   101  
   102  const (
   103  	P4PipelineInfo_UNSPECIFIED P4PipelineInfo_ConfigurationAction = 0
   104  	// Verifies that the target can realize the given config. The forwarding state in the target is not modified.
   105  	P4PipelineInfo_VERIFY P4PipelineInfo_ConfigurationAction = 1
   106  	// Saves the config if the P4Runtime target can realize it. The forwarding state in the target is not modified.
   107  	P4PipelineInfo_VERIFY_AND_SAVE P4PipelineInfo_ConfigurationAction = 2
   108  	// Saves and realizes the given config if the P4Runtime target can realize it. The forwarding state in the target is cleared.
   109  	P4PipelineInfo_VERIFY_AND_COMMIT P4PipelineInfo_ConfigurationAction = 3
   110  	// Realizes the last saved, but not yet committed, config.
   111  	// The forwarding state in the target is updated by replaying the write requests to the target device since the last config was saved
   112  	P4PipelineInfo_COMMIT P4PipelineInfo_ConfigurationAction = 4
   113  	// Verifies, saves and realizes the given config, while preserving the forwarding state in the target.
   114  	P4PipelineInfo_RECONCILE_AND_COMMIT P4PipelineInfo_ConfigurationAction = 5
   115  )
   116  
   117  var P4PipelineInfo_ConfigurationAction_name = map[int32]string{
   118  	0: "UNSPECIFIED",
   119  	1: "VERIFY",
   120  	2: "VERIFY_AND_SAVE",
   121  	3: "VERIFY_AND_COMMIT",
   122  	4: "COMMIT",
   123  	5: "RECONCILE_AND_COMMIT",
   124  }
   125  
   126  var P4PipelineInfo_ConfigurationAction_value = map[string]int32{
   127  	"UNSPECIFIED":          0,
   128  	"VERIFY":               1,
   129  	"VERIFY_AND_SAVE":      2,
   130  	"VERIFY_AND_COMMIT":    3,
   131  	"COMMIT":               4,
   132  	"RECONCILE_AND_COMMIT": 5,
   133  }
   134  
   135  func (x P4PipelineInfo_ConfigurationAction) String() string {
   136  	return proto.EnumName(P4PipelineInfo_ConfigurationAction_name, int32(x))
   137  }
   138  
   139  func (P4PipelineInfo_ConfigurationAction) EnumDescriptor() ([]byte, []int) {
   140  	return fileDescriptor_705cdab724be9631, []int{17, 0}
   141  }
   142  
   143  // Endpoint is a pair of an IP Address or DNS name and a TCP port number
   144  type Endpoint struct {
   145  	Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
   146  	Port    uint32 `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
   147  }
   148  
   149  func (m *Endpoint) Reset()         { *m = Endpoint{} }
   150  func (m *Endpoint) String() string { return proto.CompactTextString(m) }
   151  func (*Endpoint) ProtoMessage()    {}
   152  func (*Endpoint) Descriptor() ([]byte, []int) {
   153  	return fileDescriptor_705cdab724be9631, []int{0}
   154  }
   155  func (m *Endpoint) XXX_Unmarshal(b []byte) error {
   156  	return m.Unmarshal(b)
   157  }
   158  func (m *Endpoint) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   159  	if deterministic {
   160  		return xxx_messageInfo_Endpoint.Marshal(b, m, deterministic)
   161  	} else {
   162  		b = b[:cap(b)]
   163  		n, err := m.MarshalToSizedBuffer(b)
   164  		if err != nil {
   165  			return nil, err
   166  		}
   167  		return b[:n], nil
   168  	}
   169  }
   170  func (m *Endpoint) XXX_Merge(src proto.Message) {
   171  	xxx_messageInfo_Endpoint.Merge(m, src)
   172  }
   173  func (m *Endpoint) XXX_Size() int {
   174  	return m.Size()
   175  }
   176  func (m *Endpoint) XXX_DiscardUnknown() {
   177  	xxx_messageInfo_Endpoint.DiscardUnknown(m)
   178  }
   179  
   180  var xxx_messageInfo_Endpoint proto.InternalMessageInfo
   181  
   182  func (m *Endpoint) GetAddress() string {
   183  	if m != nil {
   184  		return m.Address
   185  	}
   186  	return ""
   187  }
   188  
   189  func (m *Endpoint) GetPort() uint32 {
   190  	if m != nil {
   191  		return m.Port
   192  	}
   193  	return 0
   194  }
   195  
   196  // StratumAgents is an aspect carrying information required to interact with a Stratum device agents
   197  type StratumAgents struct {
   198  	P4RTEndpoint *Endpoint `protobuf:"bytes,1,opt,name=p4rt_endpoint,json=p4rtEndpoint,proto3" json:"p4rt_endpoint,omitempty"`
   199  	GNMIEndpoint *Endpoint `protobuf:"bytes,2,opt,name=gnmi_endpoint,json=gnmiEndpoint,proto3" json:"gnmi_endpoint,omitempty"`
   200  	DeviceID     uint64    `protobuf:"varint,3,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
   201  }
   202  
   203  func (m *StratumAgents) Reset()         { *m = StratumAgents{} }
   204  func (m *StratumAgents) String() string { return proto.CompactTextString(m) }
   205  func (*StratumAgents) ProtoMessage()    {}
   206  func (*StratumAgents) Descriptor() ([]byte, []int) {
   207  	return fileDescriptor_705cdab724be9631, []int{1}
   208  }
   209  func (m *StratumAgents) XXX_Unmarshal(b []byte) error {
   210  	return m.Unmarshal(b)
   211  }
   212  func (m *StratumAgents) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   213  	if deterministic {
   214  		return xxx_messageInfo_StratumAgents.Marshal(b, m, deterministic)
   215  	} else {
   216  		b = b[:cap(b)]
   217  		n, err := m.MarshalToSizedBuffer(b)
   218  		if err != nil {
   219  			return nil, err
   220  		}
   221  		return b[:n], nil
   222  	}
   223  }
   224  func (m *StratumAgents) XXX_Merge(src proto.Message) {
   225  	xxx_messageInfo_StratumAgents.Merge(m, src)
   226  }
   227  func (m *StratumAgents) XXX_Size() int {
   228  	return m.Size()
   229  }
   230  func (m *StratumAgents) XXX_DiscardUnknown() {
   231  	xxx_messageInfo_StratumAgents.DiscardUnknown(m)
   232  }
   233  
   234  var xxx_messageInfo_StratumAgents proto.InternalMessageInfo
   235  
   236  func (m *StratumAgents) GetP4RTEndpoint() *Endpoint {
   237  	if m != nil {
   238  		return m.P4RTEndpoint
   239  	}
   240  	return nil
   241  }
   242  
   243  func (m *StratumAgents) GetGNMIEndpoint() *Endpoint {
   244  	if m != nil {
   245  		return m.GNMIEndpoint
   246  	}
   247  	return nil
   248  }
   249  
   250  func (m *StratumAgents) GetDeviceID() uint64 {
   251  	if m != nil {
   252  		return m.DeviceID
   253  	}
   254  	return 0
   255  }
   256  
   257  // LocalAgents is an aspect carrying information required to interact with various Stratum device local agents
   258  type LocalAgents struct {
   259  	LinkAgentEndpoint *Endpoint `protobuf:"bytes,1,opt,name=link_agent_endpoint,json=linkAgentEndpoint,proto3" json:"link_agent_endpoint,omitempty"`
   260  	HostAgentEndpoint *Endpoint `protobuf:"bytes,2,opt,name=host_agent_endpoint,json=hostAgentEndpoint,proto3" json:"host_agent_endpoint,omitempty"`
   261  	NATAgentEndpoint  *Endpoint `protobuf:"bytes,3,opt,name=nat_agent_endpoint,json=natAgentEndpoint,proto3" json:"nat_agent_endpoint,omitempty"`
   262  }
   263  
   264  func (m *LocalAgents) Reset()         { *m = LocalAgents{} }
   265  func (m *LocalAgents) String() string { return proto.CompactTextString(m) }
   266  func (*LocalAgents) ProtoMessage()    {}
   267  func (*LocalAgents) Descriptor() ([]byte, []int) {
   268  	return fileDescriptor_705cdab724be9631, []int{2}
   269  }
   270  func (m *LocalAgents) XXX_Unmarshal(b []byte) error {
   271  	return m.Unmarshal(b)
   272  }
   273  func (m *LocalAgents) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   274  	if deterministic {
   275  		return xxx_messageInfo_LocalAgents.Marshal(b, m, deterministic)
   276  	} else {
   277  		b = b[:cap(b)]
   278  		n, err := m.MarshalToSizedBuffer(b)
   279  		if err != nil {
   280  			return nil, err
   281  		}
   282  		return b[:n], nil
   283  	}
   284  }
   285  func (m *LocalAgents) XXX_Merge(src proto.Message) {
   286  	xxx_messageInfo_LocalAgents.Merge(m, src)
   287  }
   288  func (m *LocalAgents) XXX_Size() int {
   289  	return m.Size()
   290  }
   291  func (m *LocalAgents) XXX_DiscardUnknown() {
   292  	xxx_messageInfo_LocalAgents.DiscardUnknown(m)
   293  }
   294  
   295  var xxx_messageInfo_LocalAgents proto.InternalMessageInfo
   296  
   297  func (m *LocalAgents) GetLinkAgentEndpoint() *Endpoint {
   298  	if m != nil {
   299  		return m.LinkAgentEndpoint
   300  	}
   301  	return nil
   302  }
   303  
   304  func (m *LocalAgents) GetHostAgentEndpoint() *Endpoint {
   305  	if m != nil {
   306  		return m.HostAgentEndpoint
   307  	}
   308  	return nil
   309  }
   310  
   311  func (m *LocalAgents) GetNATAgentEndpoint() *Endpoint {
   312  	if m != nil {
   313  		return m.NATAgentEndpoint
   314  	}
   315  	return nil
   316  }
   317  
   318  // Port is an aspect carrying the basic port information
   319  type Port struct {
   320  	Index       uint32 `protobuf:"varint,1,opt,name=index,proto3" json:"index,omitempty"`
   321  	Number      uint32 `protobuf:"varint,2,opt,name=number,proto3" json:"number,omitempty"`
   322  	DisplayName string `protobuf:"bytes,3,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
   323  	Enabled     bool   `protobuf:"varint,4,opt,name=enabled,proto3" json:"enabled,omitempty"`
   324  	Speed       string `protobuf:"bytes,5,opt,name=speed,proto3" json:"speed,omitempty"`
   325  	Status      string `protobuf:"bytes,6,opt,name=status,proto3" json:"status,omitempty"`
   326  	LastChange  uint64 `protobuf:"varint,7,opt,name=last_change,json=lastChange,proto3" json:"last_change,omitempty"`
   327  }
   328  
   329  func (m *Port) Reset()         { *m = Port{} }
   330  func (m *Port) String() string { return proto.CompactTextString(m) }
   331  func (*Port) ProtoMessage()    {}
   332  func (*Port) Descriptor() ([]byte, []int) {
   333  	return fileDescriptor_705cdab724be9631, []int{3}
   334  }
   335  func (m *Port) XXX_Unmarshal(b []byte) error {
   336  	return m.Unmarshal(b)
   337  }
   338  func (m *Port) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   339  	if deterministic {
   340  		return xxx_messageInfo_Port.Marshal(b, m, deterministic)
   341  	} else {
   342  		b = b[:cap(b)]
   343  		n, err := m.MarshalToSizedBuffer(b)
   344  		if err != nil {
   345  			return nil, err
   346  		}
   347  		return b[:n], nil
   348  	}
   349  }
   350  func (m *Port) XXX_Merge(src proto.Message) {
   351  	xxx_messageInfo_Port.Merge(m, src)
   352  }
   353  func (m *Port) XXX_Size() int {
   354  	return m.Size()
   355  }
   356  func (m *Port) XXX_DiscardUnknown() {
   357  	xxx_messageInfo_Port.DiscardUnknown(m)
   358  }
   359  
   360  var xxx_messageInfo_Port proto.InternalMessageInfo
   361  
   362  func (m *Port) GetIndex() uint32 {
   363  	if m != nil {
   364  		return m.Index
   365  	}
   366  	return 0
   367  }
   368  
   369  func (m *Port) GetNumber() uint32 {
   370  	if m != nil {
   371  		return m.Number
   372  	}
   373  	return 0
   374  }
   375  
   376  func (m *Port) GetDisplayName() string {
   377  	if m != nil {
   378  		return m.DisplayName
   379  	}
   380  	return ""
   381  }
   382  
   383  func (m *Port) GetEnabled() bool {
   384  	if m != nil {
   385  		return m.Enabled
   386  	}
   387  	return false
   388  }
   389  
   390  func (m *Port) GetSpeed() string {
   391  	if m != nil {
   392  		return m.Speed
   393  	}
   394  	return ""
   395  }
   396  
   397  func (m *Port) GetStatus() string {
   398  	if m != nil {
   399  		return m.Status
   400  	}
   401  	return ""
   402  }
   403  
   404  func (m *Port) GetLastChange() uint64 {
   405  	if m != nil {
   406  		return m.LastChange
   407  	}
   408  	return 0
   409  }
   410  
   411  // Link is an aspect carrying basic link information
   412  type Link struct {
   413  	Status     string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
   414  	LastChange uint64 `protobuf:"varint,2,opt,name=last_change,json=lastChange,proto3" json:"last_change,omitempty"`
   415  }
   416  
   417  func (m *Link) Reset()         { *m = Link{} }
   418  func (m *Link) String() string { return proto.CompactTextString(m) }
   419  func (*Link) ProtoMessage()    {}
   420  func (*Link) Descriptor() ([]byte, []int) {
   421  	return fileDescriptor_705cdab724be9631, []int{4}
   422  }
   423  func (m *Link) XXX_Unmarshal(b []byte) error {
   424  	return m.Unmarshal(b)
   425  }
   426  func (m *Link) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   427  	if deterministic {
   428  		return xxx_messageInfo_Link.Marshal(b, m, deterministic)
   429  	} else {
   430  		b = b[:cap(b)]
   431  		n, err := m.MarshalToSizedBuffer(b)
   432  		if err != nil {
   433  			return nil, err
   434  		}
   435  		return b[:n], nil
   436  	}
   437  }
   438  func (m *Link) XXX_Merge(src proto.Message) {
   439  	xxx_messageInfo_Link.Merge(m, src)
   440  }
   441  func (m *Link) XXX_Size() int {
   442  	return m.Size()
   443  }
   444  func (m *Link) XXX_DiscardUnknown() {
   445  	xxx_messageInfo_Link.DiscardUnknown(m)
   446  }
   447  
   448  var xxx_messageInfo_Link proto.InternalMessageInfo
   449  
   450  func (m *Link) GetStatus() string {
   451  	if m != nil {
   452  		return m.Status
   453  	}
   454  	return ""
   455  }
   456  
   457  func (m *Link) GetLastChange() uint64 {
   458  	if m != nil {
   459  		return m.LastChange
   460  	}
   461  	return 0
   462  }
   463  
   464  // NetworkInterface is an aspect carrying basic network interface information
   465  type NetworkInterface struct {
   466  	MAC string     `protobuf:"bytes,1,opt,name=mac,proto3" json:"mac,omitempty"`
   467  	IP  *IPAddress `protobuf:"bytes,2,opt,name=ip,proto3" json:"ip,omitempty"`
   468  }
   469  
   470  func (m *NetworkInterface) Reset()         { *m = NetworkInterface{} }
   471  func (m *NetworkInterface) String() string { return proto.CompactTextString(m) }
   472  func (*NetworkInterface) ProtoMessage()    {}
   473  func (*NetworkInterface) Descriptor() ([]byte, []int) {
   474  	return fileDescriptor_705cdab724be9631, []int{5}
   475  }
   476  func (m *NetworkInterface) XXX_Unmarshal(b []byte) error {
   477  	return m.Unmarshal(b)
   478  }
   479  func (m *NetworkInterface) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   480  	if deterministic {
   481  		return xxx_messageInfo_NetworkInterface.Marshal(b, m, deterministic)
   482  	} else {
   483  		b = b[:cap(b)]
   484  		n, err := m.MarshalToSizedBuffer(b)
   485  		if err != nil {
   486  			return nil, err
   487  		}
   488  		return b[:n], nil
   489  	}
   490  }
   491  func (m *NetworkInterface) XXX_Merge(src proto.Message) {
   492  	xxx_messageInfo_NetworkInterface.Merge(m, src)
   493  }
   494  func (m *NetworkInterface) XXX_Size() int {
   495  	return m.Size()
   496  }
   497  func (m *NetworkInterface) XXX_DiscardUnknown() {
   498  	xxx_messageInfo_NetworkInterface.DiscardUnknown(m)
   499  }
   500  
   501  var xxx_messageInfo_NetworkInterface proto.InternalMessageInfo
   502  
   503  func (m *NetworkInterface) GetMAC() string {
   504  	if m != nil {
   505  		return m.MAC
   506  	}
   507  	return ""
   508  }
   509  
   510  func (m *NetworkInterface) GetIP() *IPAddress {
   511  	if m != nil {
   512  		return m.IP
   513  	}
   514  	return nil
   515  }
   516  
   517  // DEPRECATED: P4RuntimeServer is an entity aspect tracking P4Runtime server contact details
   518  type P4RuntimeServer struct {
   519  	Endpoint *Endpoint `protobuf:"bytes,1,opt,name=endpoint,proto3" json:"endpoint,omitempty"`
   520  	DeviceID uint64    `protobuf:"varint,3,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
   521  }
   522  
   523  func (m *P4RuntimeServer) Reset()         { *m = P4RuntimeServer{} }
   524  func (m *P4RuntimeServer) String() string { return proto.CompactTextString(m) }
   525  func (*P4RuntimeServer) ProtoMessage()    {}
   526  func (*P4RuntimeServer) Descriptor() ([]byte, []int) {
   527  	return fileDescriptor_705cdab724be9631, []int{6}
   528  }
   529  func (m *P4RuntimeServer) XXX_Unmarshal(b []byte) error {
   530  	return m.Unmarshal(b)
   531  }
   532  func (m *P4RuntimeServer) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   533  	if deterministic {
   534  		return xxx_messageInfo_P4RuntimeServer.Marshal(b, m, deterministic)
   535  	} else {
   536  		b = b[:cap(b)]
   537  		n, err := m.MarshalToSizedBuffer(b)
   538  		if err != nil {
   539  			return nil, err
   540  		}
   541  		return b[:n], nil
   542  	}
   543  }
   544  func (m *P4RuntimeServer) XXX_Merge(src proto.Message) {
   545  	xxx_messageInfo_P4RuntimeServer.Merge(m, src)
   546  }
   547  func (m *P4RuntimeServer) XXX_Size() int {
   548  	return m.Size()
   549  }
   550  func (m *P4RuntimeServer) XXX_DiscardUnknown() {
   551  	xxx_messageInfo_P4RuntimeServer.DiscardUnknown(m)
   552  }
   553  
   554  var xxx_messageInfo_P4RuntimeServer proto.InternalMessageInfo
   555  
   556  func (m *P4RuntimeServer) GetEndpoint() *Endpoint {
   557  	if m != nil {
   558  		return m.Endpoint
   559  	}
   560  	return nil
   561  }
   562  
   563  func (m *P4RuntimeServer) GetDeviceID() uint64 {
   564  	if m != nil {
   565  		return m.DeviceID
   566  	}
   567  	return 0
   568  }
   569  
   570  // DEPRECATED: GNMIServer is an entity aspect tracking gNMI server contact details
   571  type GNMIServer struct {
   572  	Endpoint *Endpoint `protobuf:"bytes,1,opt,name=endpoint,proto3" json:"endpoint,omitempty"`
   573  }
   574  
   575  func (m *GNMIServer) Reset()         { *m = GNMIServer{} }
   576  func (m *GNMIServer) String() string { return proto.CompactTextString(m) }
   577  func (*GNMIServer) ProtoMessage()    {}
   578  func (*GNMIServer) Descriptor() ([]byte, []int) {
   579  	return fileDescriptor_705cdab724be9631, []int{7}
   580  }
   581  func (m *GNMIServer) XXX_Unmarshal(b []byte) error {
   582  	return m.Unmarshal(b)
   583  }
   584  func (m *GNMIServer) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   585  	if deterministic {
   586  		return xxx_messageInfo_GNMIServer.Marshal(b, m, deterministic)
   587  	} else {
   588  		b = b[:cap(b)]
   589  		n, err := m.MarshalToSizedBuffer(b)
   590  		if err != nil {
   591  			return nil, err
   592  		}
   593  		return b[:n], nil
   594  	}
   595  }
   596  func (m *GNMIServer) XXX_Merge(src proto.Message) {
   597  	xxx_messageInfo_GNMIServer.Merge(m, src)
   598  }
   599  func (m *GNMIServer) XXX_Size() int {
   600  	return m.Size()
   601  }
   602  func (m *GNMIServer) XXX_DiscardUnknown() {
   603  	xxx_messageInfo_GNMIServer.DiscardUnknown(m)
   604  }
   605  
   606  var xxx_messageInfo_GNMIServer proto.InternalMessageInfo
   607  
   608  func (m *GNMIServer) GetEndpoint() *Endpoint {
   609  	if m != nil {
   610  		return m.Endpoint
   611  	}
   612  	return nil
   613  }
   614  
   615  // NetworkLayer aspect; aspect for a NetworkLayer entity with a specific kind
   616  type NetworkLayer struct {
   617  	Type        NetworkLayer_Type `protobuf:"varint,1,opt,name=type,proto3,enum=onos.topo.NetworkLayer_Type" json:"type,omitempty"`
   618  	DisplayName string            `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
   619  }
   620  
   621  func (m *NetworkLayer) Reset()         { *m = NetworkLayer{} }
   622  func (m *NetworkLayer) String() string { return proto.CompactTextString(m) }
   623  func (*NetworkLayer) ProtoMessage()    {}
   624  func (*NetworkLayer) Descriptor() ([]byte, []int) {
   625  	return fileDescriptor_705cdab724be9631, []int{8}
   626  }
   627  func (m *NetworkLayer) XXX_Unmarshal(b []byte) error {
   628  	return m.Unmarshal(b)
   629  }
   630  func (m *NetworkLayer) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   631  	if deterministic {
   632  		return xxx_messageInfo_NetworkLayer.Marshal(b, m, deterministic)
   633  	} else {
   634  		b = b[:cap(b)]
   635  		n, err := m.MarshalToSizedBuffer(b)
   636  		if err != nil {
   637  			return nil, err
   638  		}
   639  		return b[:n], nil
   640  	}
   641  }
   642  func (m *NetworkLayer) XXX_Merge(src proto.Message) {
   643  	xxx_messageInfo_NetworkLayer.Merge(m, src)
   644  }
   645  func (m *NetworkLayer) XXX_Size() int {
   646  	return m.Size()
   647  }
   648  func (m *NetworkLayer) XXX_DiscardUnknown() {
   649  	xxx_messageInfo_NetworkLayer.DiscardUnknown(m)
   650  }
   651  
   652  var xxx_messageInfo_NetworkLayer proto.InternalMessageInfo
   653  
   654  func (m *NetworkLayer) GetType() NetworkLayer_Type {
   655  	if m != nil {
   656  		return m.Type
   657  	}
   658  	return NetworkLayer_UNDERLAY
   659  }
   660  
   661  func (m *NetworkLayer) GetDisplayName() string {
   662  	if m != nil {
   663  		return m.DisplayName
   664  	}
   665  	return ""
   666  }
   667  
   668  // Switch aspect; aspect for a SWITCH entity
   669  type Switch struct {
   670  	ModelID            string    `protobuf:"bytes,1,opt,name=model_id,json=modelId,proto3" json:"model_id,omitempty"`
   671  	Role               string    `protobuf:"bytes,2,opt,name=role,proto3" json:"role,omitempty"`
   672  	ManagementEndpoint *Endpoint `protobuf:"bytes,4,opt,name=management_endpoint,json=managementEndpoint,proto3" json:"management_endpoint,omitempty"`
   673  }
   674  
   675  func (m *Switch) Reset()         { *m = Switch{} }
   676  func (m *Switch) String() string { return proto.CompactTextString(m) }
   677  func (*Switch) ProtoMessage()    {}
   678  func (*Switch) Descriptor() ([]byte, []int) {
   679  	return fileDescriptor_705cdab724be9631, []int{9}
   680  }
   681  func (m *Switch) XXX_Unmarshal(b []byte) error {
   682  	return m.Unmarshal(b)
   683  }
   684  func (m *Switch) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   685  	if deterministic {
   686  		return xxx_messageInfo_Switch.Marshal(b, m, deterministic)
   687  	} else {
   688  		b = b[:cap(b)]
   689  		n, err := m.MarshalToSizedBuffer(b)
   690  		if err != nil {
   691  			return nil, err
   692  		}
   693  		return b[:n], nil
   694  	}
   695  }
   696  func (m *Switch) XXX_Merge(src proto.Message) {
   697  	xxx_messageInfo_Switch.Merge(m, src)
   698  }
   699  func (m *Switch) XXX_Size() int {
   700  	return m.Size()
   701  }
   702  func (m *Switch) XXX_DiscardUnknown() {
   703  	xxx_messageInfo_Switch.DiscardUnknown(m)
   704  }
   705  
   706  var xxx_messageInfo_Switch proto.InternalMessageInfo
   707  
   708  func (m *Switch) GetModelID() string {
   709  	if m != nil {
   710  		return m.ModelID
   711  	}
   712  	return ""
   713  }
   714  
   715  func (m *Switch) GetRole() string {
   716  	if m != nil {
   717  		return m.Role
   718  	}
   719  	return ""
   720  }
   721  
   722  func (m *Switch) GetManagementEndpoint() *Endpoint {
   723  	if m != nil {
   724  		return m.ManagementEndpoint
   725  	}
   726  	return nil
   727  }
   728  
   729  // Router aspect; aspect of a ROUTER entity (Layer 3)
   730  type Router struct {
   731  	ModelId            string    `protobuf:"bytes,1,opt,name=model_id,json=modelId,proto3" json:"model_id,omitempty"`
   732  	Role               string    `protobuf:"bytes,2,opt,name=role,proto3" json:"role,omitempty"`
   733  	ManagementEndpoint *Endpoint `protobuf:"bytes,3,opt,name=management_endpoint,json=managementEndpoint,proto3" json:"management_endpoint,omitempty"`
   734  }
   735  
   736  func (m *Router) Reset()         { *m = Router{} }
   737  func (m *Router) String() string { return proto.CompactTextString(m) }
   738  func (*Router) ProtoMessage()    {}
   739  func (*Router) Descriptor() ([]byte, []int) {
   740  	return fileDescriptor_705cdab724be9631, []int{10}
   741  }
   742  func (m *Router) XXX_Unmarshal(b []byte) error {
   743  	return m.Unmarshal(b)
   744  }
   745  func (m *Router) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   746  	if deterministic {
   747  		return xxx_messageInfo_Router.Marshal(b, m, deterministic)
   748  	} else {
   749  		b = b[:cap(b)]
   750  		n, err := m.MarshalToSizedBuffer(b)
   751  		if err != nil {
   752  			return nil, err
   753  		}
   754  		return b[:n], nil
   755  	}
   756  }
   757  func (m *Router) XXX_Merge(src proto.Message) {
   758  	xxx_messageInfo_Router.Merge(m, src)
   759  }
   760  func (m *Router) XXX_Size() int {
   761  	return m.Size()
   762  }
   763  func (m *Router) XXX_DiscardUnknown() {
   764  	xxx_messageInfo_Router.DiscardUnknown(m)
   765  }
   766  
   767  var xxx_messageInfo_Router proto.InternalMessageInfo
   768  
   769  func (m *Router) GetModelId() string {
   770  	if m != nil {
   771  		return m.ModelId
   772  	}
   773  	return ""
   774  }
   775  
   776  func (m *Router) GetRole() string {
   777  	if m != nil {
   778  		return m.Role
   779  	}
   780  	return ""
   781  }
   782  
   783  func (m *Router) GetManagementEndpoint() *Endpoint {
   784  	if m != nil {
   785  		return m.ManagementEndpoint
   786  	}
   787  	return nil
   788  }
   789  
   790  // IPAddress defines an IPv4 or IPv6 address
   791  type IPAddress struct {
   792  	Type IPAddress_Type `protobuf:"varint,1,opt,name=type,proto3,enum=onos.topo.IPAddress_Type" json:"type,omitempty"`
   793  	IP   string         `protobuf:"bytes,2,opt,name=ip,proto3" json:"ip,omitempty"`
   794  }
   795  
   796  func (m *IPAddress) Reset()         { *m = IPAddress{} }
   797  func (m *IPAddress) String() string { return proto.CompactTextString(m) }
   798  func (*IPAddress) ProtoMessage()    {}
   799  func (*IPAddress) Descriptor() ([]byte, []int) {
   800  	return fileDescriptor_705cdab724be9631, []int{11}
   801  }
   802  func (m *IPAddress) XXX_Unmarshal(b []byte) error {
   803  	return m.Unmarshal(b)
   804  }
   805  func (m *IPAddress) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   806  	if deterministic {
   807  		return xxx_messageInfo_IPAddress.Marshal(b, m, deterministic)
   808  	} else {
   809  		b = b[:cap(b)]
   810  		n, err := m.MarshalToSizedBuffer(b)
   811  		if err != nil {
   812  			return nil, err
   813  		}
   814  		return b[:n], nil
   815  	}
   816  }
   817  func (m *IPAddress) XXX_Merge(src proto.Message) {
   818  	xxx_messageInfo_IPAddress.Merge(m, src)
   819  }
   820  func (m *IPAddress) XXX_Size() int {
   821  	return m.Size()
   822  }
   823  func (m *IPAddress) XXX_DiscardUnknown() {
   824  	xxx_messageInfo_IPAddress.DiscardUnknown(m)
   825  }
   826  
   827  var xxx_messageInfo_IPAddress proto.InternalMessageInfo
   828  
   829  func (m *IPAddress) GetType() IPAddress_Type {
   830  	if m != nil {
   831  		return m.Type
   832  	}
   833  	return IPAddress_IPV4
   834  }
   835  
   836  func (m *IPAddress) GetIP() string {
   837  	if m != nil {
   838  		return m.IP
   839  	}
   840  	return ""
   841  }
   842  
   843  // LogicalLink link aspect; represents a link between two physical interfaces
   844  type LogicalLink struct {
   845  	SourceIP      *IPAddress `protobuf:"bytes,1,opt,name=source_ip,json=sourceIp,proto3" json:"source_ip,omitempty"`
   846  	DestinationIP *IPAddress `protobuf:"bytes,2,opt,name=dest_ip,json=destIp,proto3" json:"dest_ip,omitempty"`
   847  }
   848  
   849  func (m *LogicalLink) Reset()         { *m = LogicalLink{} }
   850  func (m *LogicalLink) String() string { return proto.CompactTextString(m) }
   851  func (*LogicalLink) ProtoMessage()    {}
   852  func (*LogicalLink) Descriptor() ([]byte, []int) {
   853  	return fileDescriptor_705cdab724be9631, []int{12}
   854  }
   855  func (m *LogicalLink) XXX_Unmarshal(b []byte) error {
   856  	return m.Unmarshal(b)
   857  }
   858  func (m *LogicalLink) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   859  	if deterministic {
   860  		return xxx_messageInfo_LogicalLink.Marshal(b, m, deterministic)
   861  	} else {
   862  		b = b[:cap(b)]
   863  		n, err := m.MarshalToSizedBuffer(b)
   864  		if err != nil {
   865  			return nil, err
   866  		}
   867  		return b[:n], nil
   868  	}
   869  }
   870  func (m *LogicalLink) XXX_Merge(src proto.Message) {
   871  	xxx_messageInfo_LogicalLink.Merge(m, src)
   872  }
   873  func (m *LogicalLink) XXX_Size() int {
   874  	return m.Size()
   875  }
   876  func (m *LogicalLink) XXX_DiscardUnknown() {
   877  	xxx_messageInfo_LogicalLink.DiscardUnknown(m)
   878  }
   879  
   880  var xxx_messageInfo_LogicalLink proto.InternalMessageInfo
   881  
   882  func (m *LogicalLink) GetSourceIP() *IPAddress {
   883  	if m != nil {
   884  		return m.SourceIP
   885  	}
   886  	return nil
   887  }
   888  
   889  func (m *LogicalLink) GetDestinationIP() *IPAddress {
   890  	if m != nil {
   891  		return m.DestinationIP
   892  	}
   893  	return nil
   894  }
   895  
   896  // PhyInterface  aspect; an aspect to represent a physical switch interface
   897  type PhyInterface struct {
   898  	DisplayName     string     `protobuf:"bytes,1,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
   899  	Speed           string     `protobuf:"bytes,2,opt,name=speed,proto3" json:"speed,omitempty"`
   900  	PortNumber      uint32     `protobuf:"varint,3,opt,name=port_number,json=portNumber,proto3" json:"port_number,omitempty"`
   901  	ChannelNumber   uint32     `protobuf:"varint,4,opt,name=channel_number,json=channelNumber,proto3" json:"channel_number,omitempty"`
   902  	TargetID        string     `protobuf:"bytes,5,opt,name=target_id,json=targetId,proto3" json:"target_id,omitempty"`
   903  	Enabled         bool       `protobuf:"varint,6,opt,name=enabled,proto3" json:"enabled,omitempty"`
   904  	HealthIndicator string     `protobuf:"bytes,7,opt,name=health_indicator,json=healthIndicator,proto3" json:"health_indicator,omitempty"`
   905  	IfIndex         uint32     `protobuf:"varint,8,opt,name=if_index,json=ifIndex,proto3" json:"if_index,omitempty"`
   906  	MacAddress      string     `protobuf:"bytes,9,opt,name=mac_address,json=macAddress,proto3" json:"mac_address,omitempty"`
   907  	AutoNegotiate   bool       `protobuf:"varint,10,opt,name=auto_negotiate,json=autoNegotiate,proto3" json:"auto_negotiate,omitempty"`
   908  	Ip              *IPAddress `protobuf:"bytes,11,opt,name=ip,proto3" json:"ip,omitempty"`
   909  }
   910  
   911  func (m *PhyInterface) Reset()         { *m = PhyInterface{} }
   912  func (m *PhyInterface) String() string { return proto.CompactTextString(m) }
   913  func (*PhyInterface) ProtoMessage()    {}
   914  func (*PhyInterface) Descriptor() ([]byte, []int) {
   915  	return fileDescriptor_705cdab724be9631, []int{13}
   916  }
   917  func (m *PhyInterface) XXX_Unmarshal(b []byte) error {
   918  	return m.Unmarshal(b)
   919  }
   920  func (m *PhyInterface) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   921  	if deterministic {
   922  		return xxx_messageInfo_PhyInterface.Marshal(b, m, deterministic)
   923  	} else {
   924  		b = b[:cap(b)]
   925  		n, err := m.MarshalToSizedBuffer(b)
   926  		if err != nil {
   927  			return nil, err
   928  		}
   929  		return b[:n], nil
   930  	}
   931  }
   932  func (m *PhyInterface) XXX_Merge(src proto.Message) {
   933  	xxx_messageInfo_PhyInterface.Merge(m, src)
   934  }
   935  func (m *PhyInterface) XXX_Size() int {
   936  	return m.Size()
   937  }
   938  func (m *PhyInterface) XXX_DiscardUnknown() {
   939  	xxx_messageInfo_PhyInterface.DiscardUnknown(m)
   940  }
   941  
   942  var xxx_messageInfo_PhyInterface proto.InternalMessageInfo
   943  
   944  func (m *PhyInterface) GetDisplayName() string {
   945  	if m != nil {
   946  		return m.DisplayName
   947  	}
   948  	return ""
   949  }
   950  
   951  func (m *PhyInterface) GetSpeed() string {
   952  	if m != nil {
   953  		return m.Speed
   954  	}
   955  	return ""
   956  }
   957  
   958  func (m *PhyInterface) GetPortNumber() uint32 {
   959  	if m != nil {
   960  		return m.PortNumber
   961  	}
   962  	return 0
   963  }
   964  
   965  func (m *PhyInterface) GetChannelNumber() uint32 {
   966  	if m != nil {
   967  		return m.ChannelNumber
   968  	}
   969  	return 0
   970  }
   971  
   972  func (m *PhyInterface) GetTargetID() string {
   973  	if m != nil {
   974  		return m.TargetID
   975  	}
   976  	return ""
   977  }
   978  
   979  func (m *PhyInterface) GetEnabled() bool {
   980  	if m != nil {
   981  		return m.Enabled
   982  	}
   983  	return false
   984  }
   985  
   986  func (m *PhyInterface) GetHealthIndicator() string {
   987  	if m != nil {
   988  		return m.HealthIndicator
   989  	}
   990  	return ""
   991  }
   992  
   993  func (m *PhyInterface) GetIfIndex() uint32 {
   994  	if m != nil {
   995  		return m.IfIndex
   996  	}
   997  	return 0
   998  }
   999  
  1000  func (m *PhyInterface) GetMacAddress() string {
  1001  	if m != nil {
  1002  		return m.MacAddress
  1003  	}
  1004  	return ""
  1005  }
  1006  
  1007  func (m *PhyInterface) GetAutoNegotiate() bool {
  1008  	if m != nil {
  1009  		return m.AutoNegotiate
  1010  	}
  1011  	return false
  1012  }
  1013  
  1014  func (m *PhyInterface) GetIp() *IPAddress {
  1015  	if m != nil {
  1016  		return m.Ip
  1017  	}
  1018  	return nil
  1019  }
  1020  
  1021  // Controller aspect; represents an instance of the controller deployment
  1022  type ControllerInfo struct {
  1023  	Type            ControllerInfo_Type `protobuf:"varint,1,opt,name=type,proto3,enum=onos.topo.ControllerInfo_Type" json:"type,omitempty"`
  1024  	Role            *ControllerRole     `protobuf:"bytes,2,opt,name=role,proto3" json:"role,omitempty"`
  1025  	ControlEndpoint *Endpoint           `protobuf:"bytes,3,opt,name=control_endpoint,json=controlEndpoint,proto3" json:"control_endpoint,omitempty"`
  1026  	Username        string              `protobuf:"bytes,4,opt,name=username,proto3" json:"username,omitempty"`
  1027  	Password        string              `protobuf:"bytes,5,opt,name=password,proto3" json:"password,omitempty"`
  1028  }
  1029  
  1030  func (m *ControllerInfo) Reset()         { *m = ControllerInfo{} }
  1031  func (m *ControllerInfo) String() string { return proto.CompactTextString(m) }
  1032  func (*ControllerInfo) ProtoMessage()    {}
  1033  func (*ControllerInfo) Descriptor() ([]byte, []int) {
  1034  	return fileDescriptor_705cdab724be9631, []int{14}
  1035  }
  1036  func (m *ControllerInfo) XXX_Unmarshal(b []byte) error {
  1037  	return m.Unmarshal(b)
  1038  }
  1039  func (m *ControllerInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1040  	if deterministic {
  1041  		return xxx_messageInfo_ControllerInfo.Marshal(b, m, deterministic)
  1042  	} else {
  1043  		b = b[:cap(b)]
  1044  		n, err := m.MarshalToSizedBuffer(b)
  1045  		if err != nil {
  1046  			return nil, err
  1047  		}
  1048  		return b[:n], nil
  1049  	}
  1050  }
  1051  func (m *ControllerInfo) XXX_Merge(src proto.Message) {
  1052  	xxx_messageInfo_ControllerInfo.Merge(m, src)
  1053  }
  1054  func (m *ControllerInfo) XXX_Size() int {
  1055  	return m.Size()
  1056  }
  1057  func (m *ControllerInfo) XXX_DiscardUnknown() {
  1058  	xxx_messageInfo_ControllerInfo.DiscardUnknown(m)
  1059  }
  1060  
  1061  var xxx_messageInfo_ControllerInfo proto.InternalMessageInfo
  1062  
  1063  func (m *ControllerInfo) GetType() ControllerInfo_Type {
  1064  	if m != nil {
  1065  		return m.Type
  1066  	}
  1067  	return ControllerInfo_P4RUNTIME
  1068  }
  1069  
  1070  func (m *ControllerInfo) GetRole() *ControllerRole {
  1071  	if m != nil {
  1072  		return m.Role
  1073  	}
  1074  	return nil
  1075  }
  1076  
  1077  func (m *ControllerInfo) GetControlEndpoint() *Endpoint {
  1078  	if m != nil {
  1079  		return m.ControlEndpoint
  1080  	}
  1081  	return nil
  1082  }
  1083  
  1084  func (m *ControllerInfo) GetUsername() string {
  1085  	if m != nil {
  1086  		return m.Username
  1087  	}
  1088  	return ""
  1089  }
  1090  
  1091  func (m *ControllerInfo) GetPassword() string {
  1092  	if m != nil {
  1093  		return m.Password
  1094  	}
  1095  	return ""
  1096  }
  1097  
  1098  type ControllerRole struct {
  1099  	Name   string     `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
  1100  	Config *types.Any `protobuf:"bytes,2,opt,name=config,proto3" json:"config,omitempty"`
  1101  }
  1102  
  1103  func (m *ControllerRole) Reset()         { *m = ControllerRole{} }
  1104  func (m *ControllerRole) String() string { return proto.CompactTextString(m) }
  1105  func (*ControllerRole) ProtoMessage()    {}
  1106  func (*ControllerRole) Descriptor() ([]byte, []int) {
  1107  	return fileDescriptor_705cdab724be9631, []int{15}
  1108  }
  1109  func (m *ControllerRole) XXX_Unmarshal(b []byte) error {
  1110  	return m.Unmarshal(b)
  1111  }
  1112  func (m *ControllerRole) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1113  	if deterministic {
  1114  		return xxx_messageInfo_ControllerRole.Marshal(b, m, deterministic)
  1115  	} else {
  1116  		b = b[:cap(b)]
  1117  		n, err := m.MarshalToSizedBuffer(b)
  1118  		if err != nil {
  1119  			return nil, err
  1120  		}
  1121  		return b[:n], nil
  1122  	}
  1123  }
  1124  func (m *ControllerRole) XXX_Merge(src proto.Message) {
  1125  	xxx_messageInfo_ControllerRole.Merge(m, src)
  1126  }
  1127  func (m *ControllerRole) XXX_Size() int {
  1128  	return m.Size()
  1129  }
  1130  func (m *ControllerRole) XXX_DiscardUnknown() {
  1131  	xxx_messageInfo_ControllerRole.DiscardUnknown(m)
  1132  }
  1133  
  1134  var xxx_messageInfo_ControllerRole proto.InternalMessageInfo
  1135  
  1136  func (m *ControllerRole) GetName() string {
  1137  	if m != nil {
  1138  		return m.Name
  1139  	}
  1140  	return ""
  1141  }
  1142  
  1143  func (m *ControllerRole) GetConfig() *types.Any {
  1144  	if m != nil {
  1145  		return m.Config
  1146  	}
  1147  	return nil
  1148  }
  1149  
  1150  // DEPRECATED: P4RTServerInfo aspect; specifies the control end point in a programmable device
  1151  type P4RTServerInfo struct {
  1152  	ControlEndpoint *Endpoint         `protobuf:"bytes,1,opt,name=control_endpoint,json=controlEndpoint,proto3" json:"control_endpoint,omitempty"`
  1153  	Timeout         *time.Duration    `protobuf:"bytes,2,opt,name=timeout,proto3,stdduration" json:"timeout,omitempty"`
  1154  	DeviceID        uint64            `protobuf:"varint,3,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
  1155  	Pipelines       []*P4PipelineInfo `protobuf:"bytes,4,rep,name=pipelines,proto3" json:"pipelines,omitempty"`
  1156  }
  1157  
  1158  func (m *P4RTServerInfo) Reset()         { *m = P4RTServerInfo{} }
  1159  func (m *P4RTServerInfo) String() string { return proto.CompactTextString(m) }
  1160  func (*P4RTServerInfo) ProtoMessage()    {}
  1161  func (*P4RTServerInfo) Descriptor() ([]byte, []int) {
  1162  	return fileDescriptor_705cdab724be9631, []int{16}
  1163  }
  1164  func (m *P4RTServerInfo) XXX_Unmarshal(b []byte) error {
  1165  	return m.Unmarshal(b)
  1166  }
  1167  func (m *P4RTServerInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1168  	if deterministic {
  1169  		return xxx_messageInfo_P4RTServerInfo.Marshal(b, m, deterministic)
  1170  	} else {
  1171  		b = b[:cap(b)]
  1172  		n, err := m.MarshalToSizedBuffer(b)
  1173  		if err != nil {
  1174  			return nil, err
  1175  		}
  1176  		return b[:n], nil
  1177  	}
  1178  }
  1179  func (m *P4RTServerInfo) XXX_Merge(src proto.Message) {
  1180  	xxx_messageInfo_P4RTServerInfo.Merge(m, src)
  1181  }
  1182  func (m *P4RTServerInfo) XXX_Size() int {
  1183  	return m.Size()
  1184  }
  1185  func (m *P4RTServerInfo) XXX_DiscardUnknown() {
  1186  	xxx_messageInfo_P4RTServerInfo.DiscardUnknown(m)
  1187  }
  1188  
  1189  var xxx_messageInfo_P4RTServerInfo proto.InternalMessageInfo
  1190  
  1191  func (m *P4RTServerInfo) GetControlEndpoint() *Endpoint {
  1192  	if m != nil {
  1193  		return m.ControlEndpoint
  1194  	}
  1195  	return nil
  1196  }
  1197  
  1198  func (m *P4RTServerInfo) GetTimeout() *time.Duration {
  1199  	if m != nil {
  1200  		return m.Timeout
  1201  	}
  1202  	return nil
  1203  }
  1204  
  1205  func (m *P4RTServerInfo) GetDeviceID() uint64 {
  1206  	if m != nil {
  1207  		return m.DeviceID
  1208  	}
  1209  	return 0
  1210  }
  1211  
  1212  func (m *P4RTServerInfo) GetPipelines() []*P4PipelineInfo {
  1213  	if m != nil {
  1214  		return m.Pipelines
  1215  	}
  1216  	return nil
  1217  }
  1218  
  1219  // DEPRECATED: P4PipelineInfo p4 pipeline information
  1220  type P4PipelineInfo struct {
  1221  	Name                string                             `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
  1222  	Version             string                             `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"`
  1223  	Architecture        string                             `protobuf:"bytes,3,opt,name=architecture,proto3" json:"architecture,omitempty"`
  1224  	ConfigurationAction P4PipelineInfo_ConfigurationAction `protobuf:"varint,4,opt,name=configuration_action,json=configurationAction,proto3,enum=onos.topo.P4PipelineInfo_ConfigurationAction" json:"configuration_action,omitempty"`
  1225  }
  1226  
  1227  func (m *P4PipelineInfo) Reset()         { *m = P4PipelineInfo{} }
  1228  func (m *P4PipelineInfo) String() string { return proto.CompactTextString(m) }
  1229  func (*P4PipelineInfo) ProtoMessage()    {}
  1230  func (*P4PipelineInfo) Descriptor() ([]byte, []int) {
  1231  	return fileDescriptor_705cdab724be9631, []int{17}
  1232  }
  1233  func (m *P4PipelineInfo) XXX_Unmarshal(b []byte) error {
  1234  	return m.Unmarshal(b)
  1235  }
  1236  func (m *P4PipelineInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1237  	if deterministic {
  1238  		return xxx_messageInfo_P4PipelineInfo.Marshal(b, m, deterministic)
  1239  	} else {
  1240  		b = b[:cap(b)]
  1241  		n, err := m.MarshalToSizedBuffer(b)
  1242  		if err != nil {
  1243  			return nil, err
  1244  		}
  1245  		return b[:n], nil
  1246  	}
  1247  }
  1248  func (m *P4PipelineInfo) XXX_Merge(src proto.Message) {
  1249  	xxx_messageInfo_P4PipelineInfo.Merge(m, src)
  1250  }
  1251  func (m *P4PipelineInfo) XXX_Size() int {
  1252  	return m.Size()
  1253  }
  1254  func (m *P4PipelineInfo) XXX_DiscardUnknown() {
  1255  	xxx_messageInfo_P4PipelineInfo.DiscardUnknown(m)
  1256  }
  1257  
  1258  var xxx_messageInfo_P4PipelineInfo proto.InternalMessageInfo
  1259  
  1260  func (m *P4PipelineInfo) GetName() string {
  1261  	if m != nil {
  1262  		return m.Name
  1263  	}
  1264  	return ""
  1265  }
  1266  
  1267  func (m *P4PipelineInfo) GetVersion() string {
  1268  	if m != nil {
  1269  		return m.Version
  1270  	}
  1271  	return ""
  1272  }
  1273  
  1274  func (m *P4PipelineInfo) GetArchitecture() string {
  1275  	if m != nil {
  1276  		return m.Architecture
  1277  	}
  1278  	return ""
  1279  }
  1280  
  1281  func (m *P4PipelineInfo) GetConfigurationAction() P4PipelineInfo_ConfigurationAction {
  1282  	if m != nil {
  1283  		return m.ConfigurationAction
  1284  	}
  1285  	return P4PipelineInfo_UNSPECIFIED
  1286  }
  1287  
  1288  // DEPRECATED: P4RTMastershipState mastership state for the P4runtime targets
  1289  type P4RTMastershipState struct {
  1290  	Term         uint64 `protobuf:"varint,1,opt,name=term,proto3" json:"term,omitempty"`
  1291  	ConnectionID string `protobuf:"bytes,2,opt,name=connection_id,json=connectionId,proto3" json:"connection_id,omitempty"`
  1292  	Role         string `protobuf:"bytes,3,opt,name=role,proto3" json:"role,omitempty"`
  1293  }
  1294  
  1295  func (m *P4RTMastershipState) Reset()         { *m = P4RTMastershipState{} }
  1296  func (m *P4RTMastershipState) String() string { return proto.CompactTextString(m) }
  1297  func (*P4RTMastershipState) ProtoMessage()    {}
  1298  func (*P4RTMastershipState) Descriptor() ([]byte, []int) {
  1299  	return fileDescriptor_705cdab724be9631, []int{18}
  1300  }
  1301  func (m *P4RTMastershipState) XXX_Unmarshal(b []byte) error {
  1302  	return m.Unmarshal(b)
  1303  }
  1304  func (m *P4RTMastershipState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1305  	if deterministic {
  1306  		return xxx_messageInfo_P4RTMastershipState.Marshal(b, m, deterministic)
  1307  	} else {
  1308  		b = b[:cap(b)]
  1309  		n, err := m.MarshalToSizedBuffer(b)
  1310  		if err != nil {
  1311  			return nil, err
  1312  		}
  1313  		return b[:n], nil
  1314  	}
  1315  }
  1316  func (m *P4RTMastershipState) XXX_Merge(src proto.Message) {
  1317  	xxx_messageInfo_P4RTMastershipState.Merge(m, src)
  1318  }
  1319  func (m *P4RTMastershipState) XXX_Size() int {
  1320  	return m.Size()
  1321  }
  1322  func (m *P4RTMastershipState) XXX_DiscardUnknown() {
  1323  	xxx_messageInfo_P4RTMastershipState.DiscardUnknown(m)
  1324  }
  1325  
  1326  var xxx_messageInfo_P4RTMastershipState proto.InternalMessageInfo
  1327  
  1328  func (m *P4RTMastershipState) GetTerm() uint64 {
  1329  	if m != nil {
  1330  		return m.Term
  1331  	}
  1332  	return 0
  1333  }
  1334  
  1335  func (m *P4RTMastershipState) GetConnectionID() string {
  1336  	if m != nil {
  1337  		return m.ConnectionID
  1338  	}
  1339  	return ""
  1340  }
  1341  
  1342  func (m *P4RTMastershipState) GetRole() string {
  1343  	if m != nil {
  1344  		return m.Role
  1345  	}
  1346  	return ""
  1347  }
  1348  
  1349  // DEPRECATED: Service service entity which will be used to store mastership state for an application
  1350  type Service struct {
  1351  	TargetID        string               `protobuf:"bytes,1,opt,name=target_id,json=targetId,proto3" json:"target_id,omitempty"`
  1352  	Mastershipstate *P4RTMastershipState `protobuf:"bytes,2,opt,name=mastershipstate,proto3" json:"mastershipstate,omitempty"`
  1353  }
  1354  
  1355  func (m *Service) Reset()         { *m = Service{} }
  1356  func (m *Service) String() string { return proto.CompactTextString(m) }
  1357  func (*Service) ProtoMessage()    {}
  1358  func (*Service) Descriptor() ([]byte, []int) {
  1359  	return fileDescriptor_705cdab724be9631, []int{19}
  1360  }
  1361  func (m *Service) XXX_Unmarshal(b []byte) error {
  1362  	return m.Unmarshal(b)
  1363  }
  1364  func (m *Service) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1365  	if deterministic {
  1366  		return xxx_messageInfo_Service.Marshal(b, m, deterministic)
  1367  	} else {
  1368  		b = b[:cap(b)]
  1369  		n, err := m.MarshalToSizedBuffer(b)
  1370  		if err != nil {
  1371  			return nil, err
  1372  		}
  1373  		return b[:n], nil
  1374  	}
  1375  }
  1376  func (m *Service) XXX_Merge(src proto.Message) {
  1377  	xxx_messageInfo_Service.Merge(m, src)
  1378  }
  1379  func (m *Service) XXX_Size() int {
  1380  	return m.Size()
  1381  }
  1382  func (m *Service) XXX_DiscardUnknown() {
  1383  	xxx_messageInfo_Service.DiscardUnknown(m)
  1384  }
  1385  
  1386  var xxx_messageInfo_Service proto.InternalMessageInfo
  1387  
  1388  func (m *Service) GetTargetID() string {
  1389  	if m != nil {
  1390  		return m.TargetID
  1391  	}
  1392  	return ""
  1393  }
  1394  
  1395  func (m *Service) GetMastershipstate() *P4RTMastershipState {
  1396  	if m != nil {
  1397  		return m.Mastershipstate
  1398  	}
  1399  	return nil
  1400  }
  1401  
  1402  func init() {
  1403  	proto.RegisterEnum("onos.topo.NetworkLayer_Type", NetworkLayer_Type_name, NetworkLayer_Type_value)
  1404  	proto.RegisterEnum("onos.topo.IPAddress_Type", IPAddress_Type_name, IPAddress_Type_value)
  1405  	proto.RegisterEnum("onos.topo.ControllerInfo_Type", ControllerInfo_Type_name, ControllerInfo_Type_value)
  1406  	proto.RegisterEnum("onos.topo.P4PipelineInfo_ConfigurationAction", P4PipelineInfo_ConfigurationAction_name, P4PipelineInfo_ConfigurationAction_value)
  1407  	proto.RegisterType((*Endpoint)(nil), "onos.topo.Endpoint")
  1408  	proto.RegisterType((*StratumAgents)(nil), "onos.topo.StratumAgents")
  1409  	proto.RegisterType((*LocalAgents)(nil), "onos.topo.LocalAgents")
  1410  	proto.RegisterType((*Port)(nil), "onos.topo.Port")
  1411  	proto.RegisterType((*Link)(nil), "onos.topo.Link")
  1412  	proto.RegisterType((*NetworkInterface)(nil), "onos.topo.NetworkInterface")
  1413  	proto.RegisterType((*P4RuntimeServer)(nil), "onos.topo.P4RuntimeServer")
  1414  	proto.RegisterType((*GNMIServer)(nil), "onos.topo.gNMIServer")
  1415  	proto.RegisterType((*NetworkLayer)(nil), "onos.topo.NetworkLayer")
  1416  	proto.RegisterType((*Switch)(nil), "onos.topo.Switch")
  1417  	proto.RegisterType((*Router)(nil), "onos.topo.Router")
  1418  	proto.RegisterType((*IPAddress)(nil), "onos.topo.IPAddress")
  1419  	proto.RegisterType((*LogicalLink)(nil), "onos.topo.LogicalLink")
  1420  	proto.RegisterType((*PhyInterface)(nil), "onos.topo.PhyInterface")
  1421  	proto.RegisterType((*ControllerInfo)(nil), "onos.topo.ControllerInfo")
  1422  	proto.RegisterType((*ControllerRole)(nil), "onos.topo.ControllerRole")
  1423  	proto.RegisterType((*P4RTServerInfo)(nil), "onos.topo.P4RTServerInfo")
  1424  	proto.RegisterType((*P4PipelineInfo)(nil), "onos.topo.P4PipelineInfo")
  1425  	proto.RegisterType((*P4RTMastershipState)(nil), "onos.topo.P4RTMastershipState")
  1426  	proto.RegisterType((*Service)(nil), "onos.topo.Service")
  1427  }
  1428  
  1429  func init() { proto.RegisterFile("onos/topo/fabric.proto", fileDescriptor_705cdab724be9631) }
  1430  
  1431  var fileDescriptor_705cdab724be9631 = []byte{
  1432  	// 1437 bytes of a gzipped FileDescriptorProto
  1433  	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x56, 0x4b, 0x6f, 0x1b, 0x47,
  1434  	0x12, 0xd6, 0x90, 0x63, 0x3e, 0x8a, 0xa4, 0x44, 0x37, 0x65, 0x83, 0x12, 0x16, 0xa4, 0x76, 0xb0,
  1435  	0x5e, 0xc8, 0x80, 0x2d, 0x2d, 0xb4, 0xda, 0xd7, 0x61, 0xd7, 0x4b, 0x91, 0x74, 0x32, 0x86, 0x48,
  1436  	0x13, 0x2d, 0xd9, 0x81, 0x91, 0x03, 0xd3, 0x9a, 0x69, 0x91, 0x03, 0x73, 0xba, 0x07, 0x33, 0x4d,
  1437  	0x3b, 0x3c, 0x24, 0x87, 0x20, 0x87, 0x20, 0x27, 0x1f, 0xf3, 0x73, 0x72, 0x0c, 0x90, 0x8b, 0x91,
  1438  	0x53, 0x4e, 0x4a, 0x40, 0xff, 0x80, 0xe4, 0x27, 0x04, 0xdd, 0xf3, 0xe0, 0x50, 0x0f, 0xdb, 0xf2,
  1439  	0x69, 0xba, 0xbe, 0xae, 0xaa, 0xae, 0xaa, 0xfe, 0xaa, 0x7a, 0xe0, 0x36, 0x67, 0x3c, 0xd8, 0x15,
  1440  	0xdc, 0xe3, 0xbb, 0xa7, 0xe4, 0xc4, 0x77, 0xac, 0x1d, 0xcf, 0xe7, 0x82, 0xa3, 0xa2, 0xc4, 0x77,
  1441  	0x24, 0xbe, 0xb9, 0x3e, 0xe2, 0x23, 0xae, 0xd0, 0x5d, 0xb9, 0x0a, 0x15, 0x36, 0x1b, 0x23, 0xce,
  1442  	0x47, 0x13, 0xba, 0xab, 0xa4, 0x93, 0xe9, 0xe9, 0xae, 0x3d, 0xf5, 0x89, 0x70, 0x38, 0x8b, 0xf6,
  1443  	0x37, 0xce, 0xef, 0x13, 0x36, 0x0b, 0xb7, 0x8c, 0x7f, 0x43, 0xa1, 0xcb, 0x6c, 0x8f, 0x3b, 0x4c,
  1444  	0xa0, 0x3a, 0xe4, 0x89, 0x6d, 0xfb, 0x34, 0x08, 0xea, 0xda, 0x96, 0xb6, 0x5d, 0xc4, 0xb1, 0x88,
  1445  	0x10, 0xe8, 0x1e, 0xf7, 0x45, 0x3d, 0xb3, 0xa5, 0x6d, 0x57, 0xb0, 0x5a, 0x1b, 0x3f, 0x69, 0x50,
  1446  	0x39, 0x12, 0x3e, 0x11, 0x53, 0xb7, 0x35, 0xa2, 0x4c, 0x04, 0xe8, 0x11, 0x54, 0xbc, 0x7d, 0x5f,
  1447  	0x0c, 0x69, 0xe4, 0x50, 0x79, 0x29, 0xed, 0xd5, 0x76, 0x92, 0xf8, 0x77, 0xe2, 0xb3, 0x0e, 0xaa,
  1448  	0xf3, 0xb3, 0x66, 0x79, 0xb0, 0x8f, 0x8f, 0x63, 0x04, 0x97, 0xa5, 0x6d, 0x12, 0xcb, 0x23, 0xa8,
  1449  	0x8c, 0x98, 0xeb, 0x2c, 0x7c, 0x65, 0xde, 0xe1, 0xeb, 0xa3, 0x7e, 0xcf, 0x5c, 0xf8, 0x92, 0xb6,
  1450  	0x89, 0xaf, 0xbb, 0x50, 0xb4, 0xe9, 0x0b, 0xc7, 0xa2, 0x43, 0xc7, 0xae, 0x67, 0xb7, 0xb4, 0x6d,
  1451  	0xfd, 0xa0, 0x3c, 0x3f, 0x6b, 0x16, 0x3a, 0x0a, 0x34, 0x3b, 0xb8, 0x10, 0x6e, 0x9b, 0xb6, 0xf1,
  1452  	0xbb, 0x06, 0xa5, 0x43, 0x6e, 0x91, 0x49, 0x94, 0x52, 0x1b, 0x6a, 0x13, 0x87, 0x3d, 0x1f, 0x12,
  1453  	0x29, 0xbe, 0x4f, 0x62, 0xf8, 0xa6, 0xd4, 0x57, 0xd6, 0xc9, 0xf9, 0x6d, 0xa8, 0x8d, 0x79, 0x20,
  1454  	0xce, 0x3b, 0xc9, 0xbc, 0xc5, 0x89, 0xd4, 0x5f, 0x76, 0xf2, 0x09, 0x20, 0x46, 0x2e, 0xf8, 0xc8,
  1455  	0x5e, 0x5d, 0x95, 0xf5, 0xf9, 0x59, 0xb3, 0xda, 0x6f, 0x1d, 0x2f, 0xb9, 0xc1, 0x55, 0x46, 0x96,
  1456  	0x1d, 0x1b, 0xdf, 0x6b, 0xa0, 0x0f, 0xb8, 0x2f, 0xd0, 0x3a, 0xdc, 0x70, 0x98, 0x4d, 0x3f, 0x57,
  1457  	0xd9, 0x55, 0x70, 0x28, 0xa0, 0xdb, 0x90, 0x63, 0x53, 0xf7, 0x84, 0xfa, 0xd1, 0xe5, 0x47, 0x12,
  1458  	0xfa, 0x33, 0x94, 0x6d, 0x27, 0xf0, 0x26, 0x64, 0x36, 0x64, 0xc4, 0xa5, 0x2a, 0x92, 0x22, 0x2e,
  1459  	0x45, 0x58, 0x9f, 0xb8, 0x54, 0xf2, 0x89, 0x32, 0x72, 0x32, 0xa1, 0x76, 0x5d, 0xdf, 0xd2, 0xb6,
  1460  	0x0b, 0x38, 0x16, 0xe5, 0x51, 0x81, 0x47, 0xa9, 0x5d, 0xbf, 0xa1, 0xac, 0x42, 0x41, 0x1e, 0x15,
  1461  	0x08, 0x22, 0xa6, 0x41, 0x3d, 0xa7, 0xe0, 0x48, 0x42, 0x4d, 0x28, 0x4d, 0x48, 0x20, 0x86, 0xd6,
  1462  	0x98, 0xb0, 0x11, 0xad, 0xe7, 0xe5, 0x0d, 0x62, 0x90, 0x50, 0x5b, 0x21, 0xc6, 0x03, 0xd0, 0x0f,
  1463  	0x1d, 0xf6, 0x3c, 0xe5, 0x40, 0x7b, 0x9b, 0x83, 0xcc, 0x05, 0x07, 0x9f, 0x42, 0xb5, 0x4f, 0xc5,
  1464  	0x4b, 0xee, 0x3f, 0x37, 0x99, 0xa0, 0xfe, 0x29, 0xb1, 0x28, 0xda, 0x80, 0xac, 0x4b, 0xac, 0xd0,
  1465  	0xd3, 0x41, 0x7e, 0x7e, 0xd6, 0xcc, 0xf6, 0x5a, 0x6d, 0x2c, 0x31, 0x74, 0x0f, 0x32, 0x8e, 0x17,
  1466  	0xdd, 0xdf, 0x7a, 0xaa, 0xf6, 0xe6, 0xa0, 0x15, 0x36, 0xcc, 0x41, 0x6e, 0x7e, 0xd6, 0xcc, 0x98,
  1467  	0x03, 0x9c, 0x71, 0x3c, 0xc3, 0x85, 0xb5, 0xc1, 0x3e, 0x9e, 0x32, 0xe1, 0xb8, 0xf4, 0x88, 0xfa,
  1468  	0x2f, 0xa8, 0x8f, 0x76, 0xa1, 0xf0, 0x3e, 0x5c, 0x4a, 0x94, 0xae, 0x43, 0xe1, 0xff, 0x02, 0x8c,
  1469  	0xfa, 0x3d, 0xf3, 0x03, 0x4f, 0x32, 0x66, 0x50, 0x8e, 0x4a, 0x71, 0x48, 0x66, 0xd4, 0x47, 0x7f,
  1470  	0x03, 0x5d, 0xcc, 0x3c, 0xaa, 0x8c, 0x57, 0xf7, 0xfe, 0x94, 0x32, 0x4e, 0xab, 0xed, 0x1c, 0xcf,
  1471  	0x3c, 0x8a, 0x95, 0xe6, 0x05, 0x66, 0x64, 0x2e, 0x30, 0xc3, 0x58, 0x07, 0x5d, 0x1a, 0xa0, 0x32,
  1472  	0x14, 0x9e, 0xf4, 0x3b, 0x5d, 0x7c, 0xd8, 0x7a, 0x56, 0x5d, 0x31, 0xbe, 0xd5, 0x20, 0x77, 0xf4,
  1473  	0xd2, 0x11, 0xd6, 0x18, 0xfd, 0x15, 0x0a, 0x2e, 0xb7, 0xe9, 0x44, 0xa6, 0x1b, 0xde, 0x40, 0x69,
  1474  	0x7e, 0xd6, 0xcc, 0xf7, 0x24, 0x66, 0x76, 0x70, 0x5e, 0x6d, 0x9a, 0xb6, 0x1c, 0x4c, 0x3e, 0x9f,
  1475  	0xc4, 0x67, 0xa8, 0x35, 0xea, 0x40, 0xcd, 0x25, 0x8c, 0x8c, 0xa8, 0xbb, 0xd4, 0x2a, 0xfa, 0xd5,
  1476  	0xd9, 0xa3, 0x85, 0x7e, 0xd2, 0x16, 0x5f, 0x40, 0x0e, 0xf3, 0xa9, 0xa0, 0x3e, 0xda, 0x38, 0x1f,
  1477  	0xcb, 0x07, 0x1d, 0x9f, 0xbd, 0xde, 0xf1, 0x0c, 0x8a, 0x09, 0x9b, 0xd0, 0xfd, 0xa5, 0x3b, 0xd8,
  1478  	0xb8, 0x8c, 0x71, 0xe9, 0x0b, 0xb8, 0x9d, 0xd0, 0xb3, 0xb8, 0x44, 0xc4, 0xcd, 0xa8, 0xea, 0x05,
  1479  	0xd0, 0xcd, 0xc1, 0xd3, 0xfd, 0xea, 0x4a, 0xb4, 0xfa, 0x67, 0x55, 0x33, 0x5e, 0xa9, 0xc1, 0x37,
  1480  	0x72, 0x2c, 0x32, 0x51, 0xad, 0xf4, 0x00, 0x8a, 0x01, 0x9f, 0xfa, 0x92, 0x70, 0x5e, 0x44, 0x9c,
  1481  	0xcb, 0x99, 0xae, 0x68, 0x78, 0xa4, 0x54, 0xcd, 0x01, 0x2e, 0x84, 0x46, 0xa6, 0x87, 0xfe, 0x0f,
  1482  	0x79, 0x9b, 0x06, 0x62, 0xf8, 0x8e, 0x46, 0xb9, 0x39, 0x3f, 0x6b, 0x56, 0x3a, 0x34, 0x10, 0x0e,
  1483  	0x53, 0x2f, 0x96, 0x39, 0xc0, 0x39, 0x69, 0x67, 0x7a, 0xc6, 0x37, 0x59, 0x28, 0x0f, 0xc6, 0xb3,
  1484  	0x45, 0x47, 0x9e, 0x27, 0x96, 0x76, 0x71, 0xe4, 0x24, 0x83, 0x25, 0x93, 0x1e, 0x2c, 0x4d, 0x28,
  1485  	0xc9, 0x27, 0x6b, 0x18, 0x0d, 0xb2, 0xac, 0x1a, 0x64, 0x20, 0xa1, 0x7e, 0x38, 0xcc, 0xee, 0xc0,
  1486  	0xaa, 0x9c, 0x0d, 0x8c, 0x4e, 0x62, 0x1d, 0x5d, 0xe9, 0x54, 0x22, 0x34, 0x52, 0xbb, 0x0b, 0x45,
  1487  	0x41, 0xfc, 0x11, 0x15, 0x92, 0x0a, 0x6a, 0x74, 0x85, 0xe9, 0x1f, 0x2b, 0x50, 0x76, 0x61, 0xb8,
  1488  	0x6d, 0xda, 0xe9, 0xd9, 0x97, 0x5b, 0x9e, 0x7d, 0x77, 0xa1, 0x3a, 0xa6, 0x64, 0x22, 0xc6, 0x43,
  1489  	0x87, 0xd9, 0x8e, 0x45, 0x04, 0xf7, 0xd5, 0x48, 0x2b, 0xe2, 0xb5, 0x10, 0x37, 0x63, 0x58, 0x32,
  1490  	0xcf, 0x39, 0x1d, 0x86, 0x43, 0xb9, 0xa0, 0x02, 0xca, 0x3b, 0xa7, 0xa6, 0x1a, 0xcb, 0x4d, 0x28,
  1491  	0xb9, 0xc4, 0x1a, 0xc6, 0xef, 0x75, 0x51, 0x39, 0x00, 0x97, 0x58, 0x31, 0x67, 0xee, 0xc0, 0x2a,
  1492  	0x99, 0x0a, 0x3e, 0x64, 0x74, 0xc4, 0x85, 0x43, 0x04, 0xad, 0x83, 0x8a, 0xa3, 0x22, 0xd1, 0x7e,
  1493  	0x0c, 0xa2, 0xbf, 0x28, 0xae, 0x94, 0xae, 0xbe, 0x21, 0xc5, 0x9c, 0xaf, 0x32, 0xb0, 0xda, 0xe6,
  1494  	0x4c, 0xf8, 0x7c, 0x32, 0xa1, 0xbe, 0xc9, 0x4e, 0x39, 0xda, 0x5b, 0xe2, 0x64, 0x23, 0x65, 0xba,
  1495  	0xac, 0x98, 0x26, 0xe6, 0xfd, 0x54, 0xbb, 0x94, 0x96, 0x78, 0xbc, 0xb0, 0xc1, 0x7c, 0x42, 0xa3,
  1496  	0x4e, 0xfa, 0x1f, 0x54, 0xad, 0x10, 0x7f, 0xaf, 0x36, 0x5a, 0x8b, 0x94, 0x93, 0x27, 0x73, 0x13,
  1497  	0x0a, 0xd3, 0x80, 0xfa, 0x8a, 0x2b, 0xba, 0x2a, 0x50, 0x22, 0xcb, 0x3d, 0x8f, 0x04, 0xc1, 0x4b,
  1498  	0xee, 0xc7, 0x8f, 0x50, 0x22, 0x1b, 0xb7, 0xa2, 0x3e, 0xa9, 0x40, 0x71, 0xb0, 0x8f, 0x9f, 0xf4,
  1499  	0x8f, 0xcd, 0x5e, 0xb7, 0xba, 0x62, 0xe0, 0x74, 0x0d, 0x64, 0x98, 0xb2, 0xfd, 0x53, 0x44, 0x54,
  1500  	0x6b, 0x74, 0x0f, 0x72, 0x16, 0x67, 0xa7, 0xce, 0x28, 0xa1, 0x7d, 0xf8, 0xf3, 0xb5, 0x13, 0xff,
  1501  	0x7c, 0xed, 0xb4, 0xd8, 0x0c, 0x47, 0x3a, 0xc6, 0x6f, 0x1a, 0xac, 0xca, 0xbf, 0xa0, 0x70, 0x5a,
  1502  	0xab, 0xc2, 0x5e, 0x96, 0xb5, 0x76, 0x8d, 0xac, 0xff, 0x03, 0x79, 0xf9, 0xd2, 0xf0, 0xa9, 0x48,
  1503  	0xea, 0x7c, 0x3e, 0x82, 0x4e, 0xf4, 0x7b, 0x78, 0xa0, 0x7f, 0xf7, 0x4b, 0x53, 0xc3, 0xb1, 0xfe,
  1504  	0x35, 0x5e, 0x19, 0xf4, 0x2f, 0x28, 0x7a, 0x8e, 0x47, 0x27, 0x0e, 0xa3, 0x41, 0x5d, 0xdf, 0xca,
  1505  	0x9e, 0xbb, 0xcf, 0xc1, 0xfe, 0x20, 0xda, 0x95, 0x39, 0xe1, 0x85, 0xae, 0xf1, 0x63, 0x46, 0x66,
  1506  	0x9c, 0xde, 0xbd, 0xb4, 0x8c, 0x75, 0xc8, 0xbf, 0xa0, 0x7e, 0xe0, 0x70, 0x16, 0xb5, 0x72, 0x2c,
  1507  	0x22, 0x03, 0xca, 0xc4, 0xb7, 0xc6, 0x8e, 0xa0, 0x96, 0x98, 0xfa, 0xf1, 0x8f, 0xc7, 0x12, 0x86,
  1508  	0x3e, 0x83, 0xf5, 0xb0, 0xc0, 0x51, 0xa2, 0x43, 0x62, 0xc9, 0x8f, 0x62, 0xc1, 0xea, 0xde, 0xfd,
  1509  	0x2b, 0x03, 0x95, 0x3c, 0x5c, 0x58, 0xb5, 0x94, 0x11, 0xae, 0x59, 0x17, 0x41, 0xe3, 0x6b, 0x0d,
  1510  	0x6a, 0x97, 0x28, 0xa3, 0x35, 0x28, 0x3d, 0xe9, 0x1f, 0x0d, 0xba, 0x6d, 0xf3, 0xa1, 0xd9, 0xed,
  1511  	0x54, 0x57, 0x10, 0x40, 0xee, 0x69, 0x17, 0x9b, 0x0f, 0x9f, 0x55, 0x35, 0x54, 0x83, 0xb5, 0x70,
  1512  	0x3d, 0x6c, 0xf5, 0x3b, 0xc3, 0xa3, 0xd6, 0xd3, 0x6e, 0x35, 0x83, 0x6e, 0xc1, 0xcd, 0x14, 0xd8,
  1513  	0x7e, 0xdc, 0xeb, 0x99, 0xc7, 0xd5, 0xac, 0xb4, 0x8b, 0xd6, 0x3a, 0xaa, 0xc3, 0x3a, 0xee, 0xb6,
  1514  	0x1f, 0xf7, 0xdb, 0xe6, 0x61, 0x37, 0xad, 0x75, 0xc3, 0x10, 0x50, 0x93, 0xf4, 0xe9, 0x91, 0x40,
  1515  	0x50, 0x3f, 0x18, 0x3b, 0xde, 0x91, 0x90, 0x5d, 0x8d, 0x40, 0x17, 0xd4, 0x77, 0x55, 0x45, 0x75,
  1516  	0xac, 0xd6, 0xe8, 0x1f, 0x50, 0xb1, 0x38, 0x63, 0x54, 0xc5, 0x29, 0x2f, 0x38, 0x7c, 0x20, 0xd4,
  1517  	0xcf, 0x73, 0x3b, 0xd9, 0x30, 0x3b, 0xb8, 0xbc, 0x50, 0x4b, 0x3d, 0x71, 0xd9, 0xc5, 0x13, 0x67,
  1518  	0x7c, 0x09, 0x79, 0x49, 0x58, 0xc7, 0xa2, 0xcb, 0x23, 0x51, 0x7b, 0xeb, 0x48, 0xfc, 0x18, 0xd6,
  1519  	0xdc, 0x24, 0x4e, 0xf9, 0x67, 0x16, 0x0f, 0x82, 0xc6, 0xd2, 0x7d, 0x5c, 0xc8, 0x06, 0x9f, 0x37,
  1520  	0x3b, 0xa8, 0xff, 0x30, 0x6f, 0x68, 0xaf, 0xe7, 0x0d, 0xed, 0xd7, 0x79, 0x43, 0x7b, 0xf5, 0xa6,
  1521  	0xb1, 0xf2, 0xfa, 0x4d, 0x63, 0xe5, 0xe7, 0x37, 0x8d, 0x95, 0x93, 0x9c, 0xe2, 0xf8, 0xdf, 0xff,
  1522  	0x08, 0x00, 0x00, 0xff, 0xff, 0x7b, 0x89, 0x55, 0x7b, 0x4b, 0x0d, 0x00, 0x00,
  1523  }
  1524  
  1525  func (m *Endpoint) Marshal() (dAtA []byte, err error) {
  1526  	size := m.Size()
  1527  	dAtA = make([]byte, size)
  1528  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1529  	if err != nil {
  1530  		return nil, err
  1531  	}
  1532  	return dAtA[:n], nil
  1533  }
  1534  
  1535  func (m *Endpoint) MarshalTo(dAtA []byte) (int, error) {
  1536  	size := m.Size()
  1537  	return m.MarshalToSizedBuffer(dAtA[:size])
  1538  }
  1539  
  1540  func (m *Endpoint) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1541  	i := len(dAtA)
  1542  	_ = i
  1543  	var l int
  1544  	_ = l
  1545  	if m.Port != 0 {
  1546  		i = encodeVarintFabric(dAtA, i, uint64(m.Port))
  1547  		i--
  1548  		dAtA[i] = 0x10
  1549  	}
  1550  	if len(m.Address) > 0 {
  1551  		i -= len(m.Address)
  1552  		copy(dAtA[i:], m.Address)
  1553  		i = encodeVarintFabric(dAtA, i, uint64(len(m.Address)))
  1554  		i--
  1555  		dAtA[i] = 0xa
  1556  	}
  1557  	return len(dAtA) - i, nil
  1558  }
  1559  
  1560  func (m *StratumAgents) Marshal() (dAtA []byte, err error) {
  1561  	size := m.Size()
  1562  	dAtA = make([]byte, size)
  1563  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1564  	if err != nil {
  1565  		return nil, err
  1566  	}
  1567  	return dAtA[:n], nil
  1568  }
  1569  
  1570  func (m *StratumAgents) MarshalTo(dAtA []byte) (int, error) {
  1571  	size := m.Size()
  1572  	return m.MarshalToSizedBuffer(dAtA[:size])
  1573  }
  1574  
  1575  func (m *StratumAgents) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1576  	i := len(dAtA)
  1577  	_ = i
  1578  	var l int
  1579  	_ = l
  1580  	if m.DeviceID != 0 {
  1581  		i = encodeVarintFabric(dAtA, i, uint64(m.DeviceID))
  1582  		i--
  1583  		dAtA[i] = 0x18
  1584  	}
  1585  	if m.GNMIEndpoint != nil {
  1586  		{
  1587  			size, err := m.GNMIEndpoint.MarshalToSizedBuffer(dAtA[:i])
  1588  			if err != nil {
  1589  				return 0, err
  1590  			}
  1591  			i -= size
  1592  			i = encodeVarintFabric(dAtA, i, uint64(size))
  1593  		}
  1594  		i--
  1595  		dAtA[i] = 0x12
  1596  	}
  1597  	if m.P4RTEndpoint != nil {
  1598  		{
  1599  			size, err := m.P4RTEndpoint.MarshalToSizedBuffer(dAtA[:i])
  1600  			if err != nil {
  1601  				return 0, err
  1602  			}
  1603  			i -= size
  1604  			i = encodeVarintFabric(dAtA, i, uint64(size))
  1605  		}
  1606  		i--
  1607  		dAtA[i] = 0xa
  1608  	}
  1609  	return len(dAtA) - i, nil
  1610  }
  1611  
  1612  func (m *LocalAgents) Marshal() (dAtA []byte, err error) {
  1613  	size := m.Size()
  1614  	dAtA = make([]byte, size)
  1615  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1616  	if err != nil {
  1617  		return nil, err
  1618  	}
  1619  	return dAtA[:n], nil
  1620  }
  1621  
  1622  func (m *LocalAgents) MarshalTo(dAtA []byte) (int, error) {
  1623  	size := m.Size()
  1624  	return m.MarshalToSizedBuffer(dAtA[:size])
  1625  }
  1626  
  1627  func (m *LocalAgents) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1628  	i := len(dAtA)
  1629  	_ = i
  1630  	var l int
  1631  	_ = l
  1632  	if m.NATAgentEndpoint != nil {
  1633  		{
  1634  			size, err := m.NATAgentEndpoint.MarshalToSizedBuffer(dAtA[:i])
  1635  			if err != nil {
  1636  				return 0, err
  1637  			}
  1638  			i -= size
  1639  			i = encodeVarintFabric(dAtA, i, uint64(size))
  1640  		}
  1641  		i--
  1642  		dAtA[i] = 0x1a
  1643  	}
  1644  	if m.HostAgentEndpoint != nil {
  1645  		{
  1646  			size, err := m.HostAgentEndpoint.MarshalToSizedBuffer(dAtA[:i])
  1647  			if err != nil {
  1648  				return 0, err
  1649  			}
  1650  			i -= size
  1651  			i = encodeVarintFabric(dAtA, i, uint64(size))
  1652  		}
  1653  		i--
  1654  		dAtA[i] = 0x12
  1655  	}
  1656  	if m.LinkAgentEndpoint != nil {
  1657  		{
  1658  			size, err := m.LinkAgentEndpoint.MarshalToSizedBuffer(dAtA[:i])
  1659  			if err != nil {
  1660  				return 0, err
  1661  			}
  1662  			i -= size
  1663  			i = encodeVarintFabric(dAtA, i, uint64(size))
  1664  		}
  1665  		i--
  1666  		dAtA[i] = 0xa
  1667  	}
  1668  	return len(dAtA) - i, nil
  1669  }
  1670  
  1671  func (m *Port) Marshal() (dAtA []byte, err error) {
  1672  	size := m.Size()
  1673  	dAtA = make([]byte, size)
  1674  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1675  	if err != nil {
  1676  		return nil, err
  1677  	}
  1678  	return dAtA[:n], nil
  1679  }
  1680  
  1681  func (m *Port) MarshalTo(dAtA []byte) (int, error) {
  1682  	size := m.Size()
  1683  	return m.MarshalToSizedBuffer(dAtA[:size])
  1684  }
  1685  
  1686  func (m *Port) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1687  	i := len(dAtA)
  1688  	_ = i
  1689  	var l int
  1690  	_ = l
  1691  	if m.LastChange != 0 {
  1692  		i = encodeVarintFabric(dAtA, i, uint64(m.LastChange))
  1693  		i--
  1694  		dAtA[i] = 0x38
  1695  	}
  1696  	if len(m.Status) > 0 {
  1697  		i -= len(m.Status)
  1698  		copy(dAtA[i:], m.Status)
  1699  		i = encodeVarintFabric(dAtA, i, uint64(len(m.Status)))
  1700  		i--
  1701  		dAtA[i] = 0x32
  1702  	}
  1703  	if len(m.Speed) > 0 {
  1704  		i -= len(m.Speed)
  1705  		copy(dAtA[i:], m.Speed)
  1706  		i = encodeVarintFabric(dAtA, i, uint64(len(m.Speed)))
  1707  		i--
  1708  		dAtA[i] = 0x2a
  1709  	}
  1710  	if m.Enabled {
  1711  		i--
  1712  		if m.Enabled {
  1713  			dAtA[i] = 1
  1714  		} else {
  1715  			dAtA[i] = 0
  1716  		}
  1717  		i--
  1718  		dAtA[i] = 0x20
  1719  	}
  1720  	if len(m.DisplayName) > 0 {
  1721  		i -= len(m.DisplayName)
  1722  		copy(dAtA[i:], m.DisplayName)
  1723  		i = encodeVarintFabric(dAtA, i, uint64(len(m.DisplayName)))
  1724  		i--
  1725  		dAtA[i] = 0x1a
  1726  	}
  1727  	if m.Number != 0 {
  1728  		i = encodeVarintFabric(dAtA, i, uint64(m.Number))
  1729  		i--
  1730  		dAtA[i] = 0x10
  1731  	}
  1732  	if m.Index != 0 {
  1733  		i = encodeVarintFabric(dAtA, i, uint64(m.Index))
  1734  		i--
  1735  		dAtA[i] = 0x8
  1736  	}
  1737  	return len(dAtA) - i, nil
  1738  }
  1739  
  1740  func (m *Link) Marshal() (dAtA []byte, err error) {
  1741  	size := m.Size()
  1742  	dAtA = make([]byte, size)
  1743  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1744  	if err != nil {
  1745  		return nil, err
  1746  	}
  1747  	return dAtA[:n], nil
  1748  }
  1749  
  1750  func (m *Link) MarshalTo(dAtA []byte) (int, error) {
  1751  	size := m.Size()
  1752  	return m.MarshalToSizedBuffer(dAtA[:size])
  1753  }
  1754  
  1755  func (m *Link) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1756  	i := len(dAtA)
  1757  	_ = i
  1758  	var l int
  1759  	_ = l
  1760  	if m.LastChange != 0 {
  1761  		i = encodeVarintFabric(dAtA, i, uint64(m.LastChange))
  1762  		i--
  1763  		dAtA[i] = 0x10
  1764  	}
  1765  	if len(m.Status) > 0 {
  1766  		i -= len(m.Status)
  1767  		copy(dAtA[i:], m.Status)
  1768  		i = encodeVarintFabric(dAtA, i, uint64(len(m.Status)))
  1769  		i--
  1770  		dAtA[i] = 0xa
  1771  	}
  1772  	return len(dAtA) - i, nil
  1773  }
  1774  
  1775  func (m *NetworkInterface) Marshal() (dAtA []byte, err error) {
  1776  	size := m.Size()
  1777  	dAtA = make([]byte, size)
  1778  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1779  	if err != nil {
  1780  		return nil, err
  1781  	}
  1782  	return dAtA[:n], nil
  1783  }
  1784  
  1785  func (m *NetworkInterface) MarshalTo(dAtA []byte) (int, error) {
  1786  	size := m.Size()
  1787  	return m.MarshalToSizedBuffer(dAtA[:size])
  1788  }
  1789  
  1790  func (m *NetworkInterface) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1791  	i := len(dAtA)
  1792  	_ = i
  1793  	var l int
  1794  	_ = l
  1795  	if m.IP != nil {
  1796  		{
  1797  			size, err := m.IP.MarshalToSizedBuffer(dAtA[:i])
  1798  			if err != nil {
  1799  				return 0, err
  1800  			}
  1801  			i -= size
  1802  			i = encodeVarintFabric(dAtA, i, uint64(size))
  1803  		}
  1804  		i--
  1805  		dAtA[i] = 0x12
  1806  	}
  1807  	if len(m.MAC) > 0 {
  1808  		i -= len(m.MAC)
  1809  		copy(dAtA[i:], m.MAC)
  1810  		i = encodeVarintFabric(dAtA, i, uint64(len(m.MAC)))
  1811  		i--
  1812  		dAtA[i] = 0xa
  1813  	}
  1814  	return len(dAtA) - i, nil
  1815  }
  1816  
  1817  func (m *P4RuntimeServer) Marshal() (dAtA []byte, err error) {
  1818  	size := m.Size()
  1819  	dAtA = make([]byte, size)
  1820  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1821  	if err != nil {
  1822  		return nil, err
  1823  	}
  1824  	return dAtA[:n], nil
  1825  }
  1826  
  1827  func (m *P4RuntimeServer) MarshalTo(dAtA []byte) (int, error) {
  1828  	size := m.Size()
  1829  	return m.MarshalToSizedBuffer(dAtA[:size])
  1830  }
  1831  
  1832  func (m *P4RuntimeServer) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1833  	i := len(dAtA)
  1834  	_ = i
  1835  	var l int
  1836  	_ = l
  1837  	if m.DeviceID != 0 {
  1838  		i = encodeVarintFabric(dAtA, i, uint64(m.DeviceID))
  1839  		i--
  1840  		dAtA[i] = 0x18
  1841  	}
  1842  	if m.Endpoint != nil {
  1843  		{
  1844  			size, err := m.Endpoint.MarshalToSizedBuffer(dAtA[:i])
  1845  			if err != nil {
  1846  				return 0, err
  1847  			}
  1848  			i -= size
  1849  			i = encodeVarintFabric(dAtA, i, uint64(size))
  1850  		}
  1851  		i--
  1852  		dAtA[i] = 0xa
  1853  	}
  1854  	return len(dAtA) - i, nil
  1855  }
  1856  
  1857  func (m *GNMIServer) Marshal() (dAtA []byte, err error) {
  1858  	size := m.Size()
  1859  	dAtA = make([]byte, size)
  1860  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1861  	if err != nil {
  1862  		return nil, err
  1863  	}
  1864  	return dAtA[:n], nil
  1865  }
  1866  
  1867  func (m *GNMIServer) MarshalTo(dAtA []byte) (int, error) {
  1868  	size := m.Size()
  1869  	return m.MarshalToSizedBuffer(dAtA[:size])
  1870  }
  1871  
  1872  func (m *GNMIServer) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1873  	i := len(dAtA)
  1874  	_ = i
  1875  	var l int
  1876  	_ = l
  1877  	if m.Endpoint != nil {
  1878  		{
  1879  			size, err := m.Endpoint.MarshalToSizedBuffer(dAtA[:i])
  1880  			if err != nil {
  1881  				return 0, err
  1882  			}
  1883  			i -= size
  1884  			i = encodeVarintFabric(dAtA, i, uint64(size))
  1885  		}
  1886  		i--
  1887  		dAtA[i] = 0xa
  1888  	}
  1889  	return len(dAtA) - i, nil
  1890  }
  1891  
  1892  func (m *NetworkLayer) Marshal() (dAtA []byte, err error) {
  1893  	size := m.Size()
  1894  	dAtA = make([]byte, size)
  1895  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1896  	if err != nil {
  1897  		return nil, err
  1898  	}
  1899  	return dAtA[:n], nil
  1900  }
  1901  
  1902  func (m *NetworkLayer) MarshalTo(dAtA []byte) (int, error) {
  1903  	size := m.Size()
  1904  	return m.MarshalToSizedBuffer(dAtA[:size])
  1905  }
  1906  
  1907  func (m *NetworkLayer) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1908  	i := len(dAtA)
  1909  	_ = i
  1910  	var l int
  1911  	_ = l
  1912  	if len(m.DisplayName) > 0 {
  1913  		i -= len(m.DisplayName)
  1914  		copy(dAtA[i:], m.DisplayName)
  1915  		i = encodeVarintFabric(dAtA, i, uint64(len(m.DisplayName)))
  1916  		i--
  1917  		dAtA[i] = 0x12
  1918  	}
  1919  	if m.Type != 0 {
  1920  		i = encodeVarintFabric(dAtA, i, uint64(m.Type))
  1921  		i--
  1922  		dAtA[i] = 0x8
  1923  	}
  1924  	return len(dAtA) - i, nil
  1925  }
  1926  
  1927  func (m *Switch) Marshal() (dAtA []byte, err error) {
  1928  	size := m.Size()
  1929  	dAtA = make([]byte, size)
  1930  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1931  	if err != nil {
  1932  		return nil, err
  1933  	}
  1934  	return dAtA[:n], nil
  1935  }
  1936  
  1937  func (m *Switch) MarshalTo(dAtA []byte) (int, error) {
  1938  	size := m.Size()
  1939  	return m.MarshalToSizedBuffer(dAtA[:size])
  1940  }
  1941  
  1942  func (m *Switch) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1943  	i := len(dAtA)
  1944  	_ = i
  1945  	var l int
  1946  	_ = l
  1947  	if m.ManagementEndpoint != nil {
  1948  		{
  1949  			size, err := m.ManagementEndpoint.MarshalToSizedBuffer(dAtA[:i])
  1950  			if err != nil {
  1951  				return 0, err
  1952  			}
  1953  			i -= size
  1954  			i = encodeVarintFabric(dAtA, i, uint64(size))
  1955  		}
  1956  		i--
  1957  		dAtA[i] = 0x22
  1958  	}
  1959  	if len(m.Role) > 0 {
  1960  		i -= len(m.Role)
  1961  		copy(dAtA[i:], m.Role)
  1962  		i = encodeVarintFabric(dAtA, i, uint64(len(m.Role)))
  1963  		i--
  1964  		dAtA[i] = 0x12
  1965  	}
  1966  	if len(m.ModelID) > 0 {
  1967  		i -= len(m.ModelID)
  1968  		copy(dAtA[i:], m.ModelID)
  1969  		i = encodeVarintFabric(dAtA, i, uint64(len(m.ModelID)))
  1970  		i--
  1971  		dAtA[i] = 0xa
  1972  	}
  1973  	return len(dAtA) - i, nil
  1974  }
  1975  
  1976  func (m *Router) Marshal() (dAtA []byte, err error) {
  1977  	size := m.Size()
  1978  	dAtA = make([]byte, size)
  1979  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  1980  	if err != nil {
  1981  		return nil, err
  1982  	}
  1983  	return dAtA[:n], nil
  1984  }
  1985  
  1986  func (m *Router) MarshalTo(dAtA []byte) (int, error) {
  1987  	size := m.Size()
  1988  	return m.MarshalToSizedBuffer(dAtA[:size])
  1989  }
  1990  
  1991  func (m *Router) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  1992  	i := len(dAtA)
  1993  	_ = i
  1994  	var l int
  1995  	_ = l
  1996  	if m.ManagementEndpoint != nil {
  1997  		{
  1998  			size, err := m.ManagementEndpoint.MarshalToSizedBuffer(dAtA[:i])
  1999  			if err != nil {
  2000  				return 0, err
  2001  			}
  2002  			i -= size
  2003  			i = encodeVarintFabric(dAtA, i, uint64(size))
  2004  		}
  2005  		i--
  2006  		dAtA[i] = 0x1a
  2007  	}
  2008  	if len(m.Role) > 0 {
  2009  		i -= len(m.Role)
  2010  		copy(dAtA[i:], m.Role)
  2011  		i = encodeVarintFabric(dAtA, i, uint64(len(m.Role)))
  2012  		i--
  2013  		dAtA[i] = 0x12
  2014  	}
  2015  	if len(m.ModelId) > 0 {
  2016  		i -= len(m.ModelId)
  2017  		copy(dAtA[i:], m.ModelId)
  2018  		i = encodeVarintFabric(dAtA, i, uint64(len(m.ModelId)))
  2019  		i--
  2020  		dAtA[i] = 0xa
  2021  	}
  2022  	return len(dAtA) - i, nil
  2023  }
  2024  
  2025  func (m *IPAddress) Marshal() (dAtA []byte, err error) {
  2026  	size := m.Size()
  2027  	dAtA = make([]byte, size)
  2028  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2029  	if err != nil {
  2030  		return nil, err
  2031  	}
  2032  	return dAtA[:n], nil
  2033  }
  2034  
  2035  func (m *IPAddress) MarshalTo(dAtA []byte) (int, error) {
  2036  	size := m.Size()
  2037  	return m.MarshalToSizedBuffer(dAtA[:size])
  2038  }
  2039  
  2040  func (m *IPAddress) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2041  	i := len(dAtA)
  2042  	_ = i
  2043  	var l int
  2044  	_ = l
  2045  	if len(m.IP) > 0 {
  2046  		i -= len(m.IP)
  2047  		copy(dAtA[i:], m.IP)
  2048  		i = encodeVarintFabric(dAtA, i, uint64(len(m.IP)))
  2049  		i--
  2050  		dAtA[i] = 0x12
  2051  	}
  2052  	if m.Type != 0 {
  2053  		i = encodeVarintFabric(dAtA, i, uint64(m.Type))
  2054  		i--
  2055  		dAtA[i] = 0x8
  2056  	}
  2057  	return len(dAtA) - i, nil
  2058  }
  2059  
  2060  func (m *LogicalLink) Marshal() (dAtA []byte, err error) {
  2061  	size := m.Size()
  2062  	dAtA = make([]byte, size)
  2063  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2064  	if err != nil {
  2065  		return nil, err
  2066  	}
  2067  	return dAtA[:n], nil
  2068  }
  2069  
  2070  func (m *LogicalLink) MarshalTo(dAtA []byte) (int, error) {
  2071  	size := m.Size()
  2072  	return m.MarshalToSizedBuffer(dAtA[:size])
  2073  }
  2074  
  2075  func (m *LogicalLink) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2076  	i := len(dAtA)
  2077  	_ = i
  2078  	var l int
  2079  	_ = l
  2080  	if m.DestinationIP != nil {
  2081  		{
  2082  			size, err := m.DestinationIP.MarshalToSizedBuffer(dAtA[:i])
  2083  			if err != nil {
  2084  				return 0, err
  2085  			}
  2086  			i -= size
  2087  			i = encodeVarintFabric(dAtA, i, uint64(size))
  2088  		}
  2089  		i--
  2090  		dAtA[i] = 0x12
  2091  	}
  2092  	if m.SourceIP != nil {
  2093  		{
  2094  			size, err := m.SourceIP.MarshalToSizedBuffer(dAtA[:i])
  2095  			if err != nil {
  2096  				return 0, err
  2097  			}
  2098  			i -= size
  2099  			i = encodeVarintFabric(dAtA, i, uint64(size))
  2100  		}
  2101  		i--
  2102  		dAtA[i] = 0xa
  2103  	}
  2104  	return len(dAtA) - i, nil
  2105  }
  2106  
  2107  func (m *PhyInterface) Marshal() (dAtA []byte, err error) {
  2108  	size := m.Size()
  2109  	dAtA = make([]byte, size)
  2110  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2111  	if err != nil {
  2112  		return nil, err
  2113  	}
  2114  	return dAtA[:n], nil
  2115  }
  2116  
  2117  func (m *PhyInterface) MarshalTo(dAtA []byte) (int, error) {
  2118  	size := m.Size()
  2119  	return m.MarshalToSizedBuffer(dAtA[:size])
  2120  }
  2121  
  2122  func (m *PhyInterface) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2123  	i := len(dAtA)
  2124  	_ = i
  2125  	var l int
  2126  	_ = l
  2127  	if m.Ip != nil {
  2128  		{
  2129  			size, err := m.Ip.MarshalToSizedBuffer(dAtA[:i])
  2130  			if err != nil {
  2131  				return 0, err
  2132  			}
  2133  			i -= size
  2134  			i = encodeVarintFabric(dAtA, i, uint64(size))
  2135  		}
  2136  		i--
  2137  		dAtA[i] = 0x5a
  2138  	}
  2139  	if m.AutoNegotiate {
  2140  		i--
  2141  		if m.AutoNegotiate {
  2142  			dAtA[i] = 1
  2143  		} else {
  2144  			dAtA[i] = 0
  2145  		}
  2146  		i--
  2147  		dAtA[i] = 0x50
  2148  	}
  2149  	if len(m.MacAddress) > 0 {
  2150  		i -= len(m.MacAddress)
  2151  		copy(dAtA[i:], m.MacAddress)
  2152  		i = encodeVarintFabric(dAtA, i, uint64(len(m.MacAddress)))
  2153  		i--
  2154  		dAtA[i] = 0x4a
  2155  	}
  2156  	if m.IfIndex != 0 {
  2157  		i = encodeVarintFabric(dAtA, i, uint64(m.IfIndex))
  2158  		i--
  2159  		dAtA[i] = 0x40
  2160  	}
  2161  	if len(m.HealthIndicator) > 0 {
  2162  		i -= len(m.HealthIndicator)
  2163  		copy(dAtA[i:], m.HealthIndicator)
  2164  		i = encodeVarintFabric(dAtA, i, uint64(len(m.HealthIndicator)))
  2165  		i--
  2166  		dAtA[i] = 0x3a
  2167  	}
  2168  	if m.Enabled {
  2169  		i--
  2170  		if m.Enabled {
  2171  			dAtA[i] = 1
  2172  		} else {
  2173  			dAtA[i] = 0
  2174  		}
  2175  		i--
  2176  		dAtA[i] = 0x30
  2177  	}
  2178  	if len(m.TargetID) > 0 {
  2179  		i -= len(m.TargetID)
  2180  		copy(dAtA[i:], m.TargetID)
  2181  		i = encodeVarintFabric(dAtA, i, uint64(len(m.TargetID)))
  2182  		i--
  2183  		dAtA[i] = 0x2a
  2184  	}
  2185  	if m.ChannelNumber != 0 {
  2186  		i = encodeVarintFabric(dAtA, i, uint64(m.ChannelNumber))
  2187  		i--
  2188  		dAtA[i] = 0x20
  2189  	}
  2190  	if m.PortNumber != 0 {
  2191  		i = encodeVarintFabric(dAtA, i, uint64(m.PortNumber))
  2192  		i--
  2193  		dAtA[i] = 0x18
  2194  	}
  2195  	if len(m.Speed) > 0 {
  2196  		i -= len(m.Speed)
  2197  		copy(dAtA[i:], m.Speed)
  2198  		i = encodeVarintFabric(dAtA, i, uint64(len(m.Speed)))
  2199  		i--
  2200  		dAtA[i] = 0x12
  2201  	}
  2202  	if len(m.DisplayName) > 0 {
  2203  		i -= len(m.DisplayName)
  2204  		copy(dAtA[i:], m.DisplayName)
  2205  		i = encodeVarintFabric(dAtA, i, uint64(len(m.DisplayName)))
  2206  		i--
  2207  		dAtA[i] = 0xa
  2208  	}
  2209  	return len(dAtA) - i, nil
  2210  }
  2211  
  2212  func (m *ControllerInfo) Marshal() (dAtA []byte, err error) {
  2213  	size := m.Size()
  2214  	dAtA = make([]byte, size)
  2215  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2216  	if err != nil {
  2217  		return nil, err
  2218  	}
  2219  	return dAtA[:n], nil
  2220  }
  2221  
  2222  func (m *ControllerInfo) MarshalTo(dAtA []byte) (int, error) {
  2223  	size := m.Size()
  2224  	return m.MarshalToSizedBuffer(dAtA[:size])
  2225  }
  2226  
  2227  func (m *ControllerInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2228  	i := len(dAtA)
  2229  	_ = i
  2230  	var l int
  2231  	_ = l
  2232  	if len(m.Password) > 0 {
  2233  		i -= len(m.Password)
  2234  		copy(dAtA[i:], m.Password)
  2235  		i = encodeVarintFabric(dAtA, i, uint64(len(m.Password)))
  2236  		i--
  2237  		dAtA[i] = 0x2a
  2238  	}
  2239  	if len(m.Username) > 0 {
  2240  		i -= len(m.Username)
  2241  		copy(dAtA[i:], m.Username)
  2242  		i = encodeVarintFabric(dAtA, i, uint64(len(m.Username)))
  2243  		i--
  2244  		dAtA[i] = 0x22
  2245  	}
  2246  	if m.ControlEndpoint != nil {
  2247  		{
  2248  			size, err := m.ControlEndpoint.MarshalToSizedBuffer(dAtA[:i])
  2249  			if err != nil {
  2250  				return 0, err
  2251  			}
  2252  			i -= size
  2253  			i = encodeVarintFabric(dAtA, i, uint64(size))
  2254  		}
  2255  		i--
  2256  		dAtA[i] = 0x1a
  2257  	}
  2258  	if m.Role != nil {
  2259  		{
  2260  			size, err := m.Role.MarshalToSizedBuffer(dAtA[:i])
  2261  			if err != nil {
  2262  				return 0, err
  2263  			}
  2264  			i -= size
  2265  			i = encodeVarintFabric(dAtA, i, uint64(size))
  2266  		}
  2267  		i--
  2268  		dAtA[i] = 0x12
  2269  	}
  2270  	if m.Type != 0 {
  2271  		i = encodeVarintFabric(dAtA, i, uint64(m.Type))
  2272  		i--
  2273  		dAtA[i] = 0x8
  2274  	}
  2275  	return len(dAtA) - i, nil
  2276  }
  2277  
  2278  func (m *ControllerRole) Marshal() (dAtA []byte, err error) {
  2279  	size := m.Size()
  2280  	dAtA = make([]byte, size)
  2281  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2282  	if err != nil {
  2283  		return nil, err
  2284  	}
  2285  	return dAtA[:n], nil
  2286  }
  2287  
  2288  func (m *ControllerRole) MarshalTo(dAtA []byte) (int, error) {
  2289  	size := m.Size()
  2290  	return m.MarshalToSizedBuffer(dAtA[:size])
  2291  }
  2292  
  2293  func (m *ControllerRole) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2294  	i := len(dAtA)
  2295  	_ = i
  2296  	var l int
  2297  	_ = l
  2298  	if m.Config != nil {
  2299  		{
  2300  			size, err := m.Config.MarshalToSizedBuffer(dAtA[:i])
  2301  			if err != nil {
  2302  				return 0, err
  2303  			}
  2304  			i -= size
  2305  			i = encodeVarintFabric(dAtA, i, uint64(size))
  2306  		}
  2307  		i--
  2308  		dAtA[i] = 0x12
  2309  	}
  2310  	if len(m.Name) > 0 {
  2311  		i -= len(m.Name)
  2312  		copy(dAtA[i:], m.Name)
  2313  		i = encodeVarintFabric(dAtA, i, uint64(len(m.Name)))
  2314  		i--
  2315  		dAtA[i] = 0xa
  2316  	}
  2317  	return len(dAtA) - i, nil
  2318  }
  2319  
  2320  func (m *P4RTServerInfo) Marshal() (dAtA []byte, err error) {
  2321  	size := m.Size()
  2322  	dAtA = make([]byte, size)
  2323  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2324  	if err != nil {
  2325  		return nil, err
  2326  	}
  2327  	return dAtA[:n], nil
  2328  }
  2329  
  2330  func (m *P4RTServerInfo) MarshalTo(dAtA []byte) (int, error) {
  2331  	size := m.Size()
  2332  	return m.MarshalToSizedBuffer(dAtA[:size])
  2333  }
  2334  
  2335  func (m *P4RTServerInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2336  	i := len(dAtA)
  2337  	_ = i
  2338  	var l int
  2339  	_ = l
  2340  	if len(m.Pipelines) > 0 {
  2341  		for iNdEx := len(m.Pipelines) - 1; iNdEx >= 0; iNdEx-- {
  2342  			{
  2343  				size, err := m.Pipelines[iNdEx].MarshalToSizedBuffer(dAtA[:i])
  2344  				if err != nil {
  2345  					return 0, err
  2346  				}
  2347  				i -= size
  2348  				i = encodeVarintFabric(dAtA, i, uint64(size))
  2349  			}
  2350  			i--
  2351  			dAtA[i] = 0x22
  2352  		}
  2353  	}
  2354  	if m.DeviceID != 0 {
  2355  		i = encodeVarintFabric(dAtA, i, uint64(m.DeviceID))
  2356  		i--
  2357  		dAtA[i] = 0x18
  2358  	}
  2359  	if m.Timeout != nil {
  2360  		n17, err17 := github_com_gogo_protobuf_types.StdDurationMarshalTo(*m.Timeout, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdDuration(*m.Timeout):])
  2361  		if err17 != nil {
  2362  			return 0, err17
  2363  		}
  2364  		i -= n17
  2365  		i = encodeVarintFabric(dAtA, i, uint64(n17))
  2366  		i--
  2367  		dAtA[i] = 0x12
  2368  	}
  2369  	if m.ControlEndpoint != nil {
  2370  		{
  2371  			size, err := m.ControlEndpoint.MarshalToSizedBuffer(dAtA[:i])
  2372  			if err != nil {
  2373  				return 0, err
  2374  			}
  2375  			i -= size
  2376  			i = encodeVarintFabric(dAtA, i, uint64(size))
  2377  		}
  2378  		i--
  2379  		dAtA[i] = 0xa
  2380  	}
  2381  	return len(dAtA) - i, nil
  2382  }
  2383  
  2384  func (m *P4PipelineInfo) Marshal() (dAtA []byte, err error) {
  2385  	size := m.Size()
  2386  	dAtA = make([]byte, size)
  2387  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2388  	if err != nil {
  2389  		return nil, err
  2390  	}
  2391  	return dAtA[:n], nil
  2392  }
  2393  
  2394  func (m *P4PipelineInfo) MarshalTo(dAtA []byte) (int, error) {
  2395  	size := m.Size()
  2396  	return m.MarshalToSizedBuffer(dAtA[:size])
  2397  }
  2398  
  2399  func (m *P4PipelineInfo) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2400  	i := len(dAtA)
  2401  	_ = i
  2402  	var l int
  2403  	_ = l
  2404  	if m.ConfigurationAction != 0 {
  2405  		i = encodeVarintFabric(dAtA, i, uint64(m.ConfigurationAction))
  2406  		i--
  2407  		dAtA[i] = 0x20
  2408  	}
  2409  	if len(m.Architecture) > 0 {
  2410  		i -= len(m.Architecture)
  2411  		copy(dAtA[i:], m.Architecture)
  2412  		i = encodeVarintFabric(dAtA, i, uint64(len(m.Architecture)))
  2413  		i--
  2414  		dAtA[i] = 0x1a
  2415  	}
  2416  	if len(m.Version) > 0 {
  2417  		i -= len(m.Version)
  2418  		copy(dAtA[i:], m.Version)
  2419  		i = encodeVarintFabric(dAtA, i, uint64(len(m.Version)))
  2420  		i--
  2421  		dAtA[i] = 0x12
  2422  	}
  2423  	if len(m.Name) > 0 {
  2424  		i -= len(m.Name)
  2425  		copy(dAtA[i:], m.Name)
  2426  		i = encodeVarintFabric(dAtA, i, uint64(len(m.Name)))
  2427  		i--
  2428  		dAtA[i] = 0xa
  2429  	}
  2430  	return len(dAtA) - i, nil
  2431  }
  2432  
  2433  func (m *P4RTMastershipState) Marshal() (dAtA []byte, err error) {
  2434  	size := m.Size()
  2435  	dAtA = make([]byte, size)
  2436  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2437  	if err != nil {
  2438  		return nil, err
  2439  	}
  2440  	return dAtA[:n], nil
  2441  }
  2442  
  2443  func (m *P4RTMastershipState) MarshalTo(dAtA []byte) (int, error) {
  2444  	size := m.Size()
  2445  	return m.MarshalToSizedBuffer(dAtA[:size])
  2446  }
  2447  
  2448  func (m *P4RTMastershipState) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2449  	i := len(dAtA)
  2450  	_ = i
  2451  	var l int
  2452  	_ = l
  2453  	if len(m.Role) > 0 {
  2454  		i -= len(m.Role)
  2455  		copy(dAtA[i:], m.Role)
  2456  		i = encodeVarintFabric(dAtA, i, uint64(len(m.Role)))
  2457  		i--
  2458  		dAtA[i] = 0x1a
  2459  	}
  2460  	if len(m.ConnectionID) > 0 {
  2461  		i -= len(m.ConnectionID)
  2462  		copy(dAtA[i:], m.ConnectionID)
  2463  		i = encodeVarintFabric(dAtA, i, uint64(len(m.ConnectionID)))
  2464  		i--
  2465  		dAtA[i] = 0x12
  2466  	}
  2467  	if m.Term != 0 {
  2468  		i = encodeVarintFabric(dAtA, i, uint64(m.Term))
  2469  		i--
  2470  		dAtA[i] = 0x8
  2471  	}
  2472  	return len(dAtA) - i, nil
  2473  }
  2474  
  2475  func (m *Service) Marshal() (dAtA []byte, err error) {
  2476  	size := m.Size()
  2477  	dAtA = make([]byte, size)
  2478  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
  2479  	if err != nil {
  2480  		return nil, err
  2481  	}
  2482  	return dAtA[:n], nil
  2483  }
  2484  
  2485  func (m *Service) MarshalTo(dAtA []byte) (int, error) {
  2486  	size := m.Size()
  2487  	return m.MarshalToSizedBuffer(dAtA[:size])
  2488  }
  2489  
  2490  func (m *Service) MarshalToSizedBuffer(dAtA []byte) (int, error) {
  2491  	i := len(dAtA)
  2492  	_ = i
  2493  	var l int
  2494  	_ = l
  2495  	if m.Mastershipstate != nil {
  2496  		{
  2497  			size, err := m.Mastershipstate.MarshalToSizedBuffer(dAtA[:i])
  2498  			if err != nil {
  2499  				return 0, err
  2500  			}
  2501  			i -= size
  2502  			i = encodeVarintFabric(dAtA, i, uint64(size))
  2503  		}
  2504  		i--
  2505  		dAtA[i] = 0x12
  2506  	}
  2507  	if len(m.TargetID) > 0 {
  2508  		i -= len(m.TargetID)
  2509  		copy(dAtA[i:], m.TargetID)
  2510  		i = encodeVarintFabric(dAtA, i, uint64(len(m.TargetID)))
  2511  		i--
  2512  		dAtA[i] = 0xa
  2513  	}
  2514  	return len(dAtA) - i, nil
  2515  }
  2516  
  2517  func encodeVarintFabric(dAtA []byte, offset int, v uint64) int {
  2518  	offset -= sovFabric(v)
  2519  	base := offset
  2520  	for v >= 1<<7 {
  2521  		dAtA[offset] = uint8(v&0x7f | 0x80)
  2522  		v >>= 7
  2523  		offset++
  2524  	}
  2525  	dAtA[offset] = uint8(v)
  2526  	return base
  2527  }
  2528  func (m *Endpoint) Size() (n int) {
  2529  	if m == nil {
  2530  		return 0
  2531  	}
  2532  	var l int
  2533  	_ = l
  2534  	l = len(m.Address)
  2535  	if l > 0 {
  2536  		n += 1 + l + sovFabric(uint64(l))
  2537  	}
  2538  	if m.Port != 0 {
  2539  		n += 1 + sovFabric(uint64(m.Port))
  2540  	}
  2541  	return n
  2542  }
  2543  
  2544  func (m *StratumAgents) Size() (n int) {
  2545  	if m == nil {
  2546  		return 0
  2547  	}
  2548  	var l int
  2549  	_ = l
  2550  	if m.P4RTEndpoint != nil {
  2551  		l = m.P4RTEndpoint.Size()
  2552  		n += 1 + l + sovFabric(uint64(l))
  2553  	}
  2554  	if m.GNMIEndpoint != nil {
  2555  		l = m.GNMIEndpoint.Size()
  2556  		n += 1 + l + sovFabric(uint64(l))
  2557  	}
  2558  	if m.DeviceID != 0 {
  2559  		n += 1 + sovFabric(uint64(m.DeviceID))
  2560  	}
  2561  	return n
  2562  }
  2563  
  2564  func (m *LocalAgents) Size() (n int) {
  2565  	if m == nil {
  2566  		return 0
  2567  	}
  2568  	var l int
  2569  	_ = l
  2570  	if m.LinkAgentEndpoint != nil {
  2571  		l = m.LinkAgentEndpoint.Size()
  2572  		n += 1 + l + sovFabric(uint64(l))
  2573  	}
  2574  	if m.HostAgentEndpoint != nil {
  2575  		l = m.HostAgentEndpoint.Size()
  2576  		n += 1 + l + sovFabric(uint64(l))
  2577  	}
  2578  	if m.NATAgentEndpoint != nil {
  2579  		l = m.NATAgentEndpoint.Size()
  2580  		n += 1 + l + sovFabric(uint64(l))
  2581  	}
  2582  	return n
  2583  }
  2584  
  2585  func (m *Port) Size() (n int) {
  2586  	if m == nil {
  2587  		return 0
  2588  	}
  2589  	var l int
  2590  	_ = l
  2591  	if m.Index != 0 {
  2592  		n += 1 + sovFabric(uint64(m.Index))
  2593  	}
  2594  	if m.Number != 0 {
  2595  		n += 1 + sovFabric(uint64(m.Number))
  2596  	}
  2597  	l = len(m.DisplayName)
  2598  	if l > 0 {
  2599  		n += 1 + l + sovFabric(uint64(l))
  2600  	}
  2601  	if m.Enabled {
  2602  		n += 2
  2603  	}
  2604  	l = len(m.Speed)
  2605  	if l > 0 {
  2606  		n += 1 + l + sovFabric(uint64(l))
  2607  	}
  2608  	l = len(m.Status)
  2609  	if l > 0 {
  2610  		n += 1 + l + sovFabric(uint64(l))
  2611  	}
  2612  	if m.LastChange != 0 {
  2613  		n += 1 + sovFabric(uint64(m.LastChange))
  2614  	}
  2615  	return n
  2616  }
  2617  
  2618  func (m *Link) Size() (n int) {
  2619  	if m == nil {
  2620  		return 0
  2621  	}
  2622  	var l int
  2623  	_ = l
  2624  	l = len(m.Status)
  2625  	if l > 0 {
  2626  		n += 1 + l + sovFabric(uint64(l))
  2627  	}
  2628  	if m.LastChange != 0 {
  2629  		n += 1 + sovFabric(uint64(m.LastChange))
  2630  	}
  2631  	return n
  2632  }
  2633  
  2634  func (m *NetworkInterface) Size() (n int) {
  2635  	if m == nil {
  2636  		return 0
  2637  	}
  2638  	var l int
  2639  	_ = l
  2640  	l = len(m.MAC)
  2641  	if l > 0 {
  2642  		n += 1 + l + sovFabric(uint64(l))
  2643  	}
  2644  	if m.IP != nil {
  2645  		l = m.IP.Size()
  2646  		n += 1 + l + sovFabric(uint64(l))
  2647  	}
  2648  	return n
  2649  }
  2650  
  2651  func (m *P4RuntimeServer) Size() (n int) {
  2652  	if m == nil {
  2653  		return 0
  2654  	}
  2655  	var l int
  2656  	_ = l
  2657  	if m.Endpoint != nil {
  2658  		l = m.Endpoint.Size()
  2659  		n += 1 + l + sovFabric(uint64(l))
  2660  	}
  2661  	if m.DeviceID != 0 {
  2662  		n += 1 + sovFabric(uint64(m.DeviceID))
  2663  	}
  2664  	return n
  2665  }
  2666  
  2667  func (m *GNMIServer) Size() (n int) {
  2668  	if m == nil {
  2669  		return 0
  2670  	}
  2671  	var l int
  2672  	_ = l
  2673  	if m.Endpoint != nil {
  2674  		l = m.Endpoint.Size()
  2675  		n += 1 + l + sovFabric(uint64(l))
  2676  	}
  2677  	return n
  2678  }
  2679  
  2680  func (m *NetworkLayer) Size() (n int) {
  2681  	if m == nil {
  2682  		return 0
  2683  	}
  2684  	var l int
  2685  	_ = l
  2686  	if m.Type != 0 {
  2687  		n += 1 + sovFabric(uint64(m.Type))
  2688  	}
  2689  	l = len(m.DisplayName)
  2690  	if l > 0 {
  2691  		n += 1 + l + sovFabric(uint64(l))
  2692  	}
  2693  	return n
  2694  }
  2695  
  2696  func (m *Switch) Size() (n int) {
  2697  	if m == nil {
  2698  		return 0
  2699  	}
  2700  	var l int
  2701  	_ = l
  2702  	l = len(m.ModelID)
  2703  	if l > 0 {
  2704  		n += 1 + l + sovFabric(uint64(l))
  2705  	}
  2706  	l = len(m.Role)
  2707  	if l > 0 {
  2708  		n += 1 + l + sovFabric(uint64(l))
  2709  	}
  2710  	if m.ManagementEndpoint != nil {
  2711  		l = m.ManagementEndpoint.Size()
  2712  		n += 1 + l + sovFabric(uint64(l))
  2713  	}
  2714  	return n
  2715  }
  2716  
  2717  func (m *Router) Size() (n int) {
  2718  	if m == nil {
  2719  		return 0
  2720  	}
  2721  	var l int
  2722  	_ = l
  2723  	l = len(m.ModelId)
  2724  	if l > 0 {
  2725  		n += 1 + l + sovFabric(uint64(l))
  2726  	}
  2727  	l = len(m.Role)
  2728  	if l > 0 {
  2729  		n += 1 + l + sovFabric(uint64(l))
  2730  	}
  2731  	if m.ManagementEndpoint != nil {
  2732  		l = m.ManagementEndpoint.Size()
  2733  		n += 1 + l + sovFabric(uint64(l))
  2734  	}
  2735  	return n
  2736  }
  2737  
  2738  func (m *IPAddress) Size() (n int) {
  2739  	if m == nil {
  2740  		return 0
  2741  	}
  2742  	var l int
  2743  	_ = l
  2744  	if m.Type != 0 {
  2745  		n += 1 + sovFabric(uint64(m.Type))
  2746  	}
  2747  	l = len(m.IP)
  2748  	if l > 0 {
  2749  		n += 1 + l + sovFabric(uint64(l))
  2750  	}
  2751  	return n
  2752  }
  2753  
  2754  func (m *LogicalLink) Size() (n int) {
  2755  	if m == nil {
  2756  		return 0
  2757  	}
  2758  	var l int
  2759  	_ = l
  2760  	if m.SourceIP != nil {
  2761  		l = m.SourceIP.Size()
  2762  		n += 1 + l + sovFabric(uint64(l))
  2763  	}
  2764  	if m.DestinationIP != nil {
  2765  		l = m.DestinationIP.Size()
  2766  		n += 1 + l + sovFabric(uint64(l))
  2767  	}
  2768  	return n
  2769  }
  2770  
  2771  func (m *PhyInterface) Size() (n int) {
  2772  	if m == nil {
  2773  		return 0
  2774  	}
  2775  	var l int
  2776  	_ = l
  2777  	l = len(m.DisplayName)
  2778  	if l > 0 {
  2779  		n += 1 + l + sovFabric(uint64(l))
  2780  	}
  2781  	l = len(m.Speed)
  2782  	if l > 0 {
  2783  		n += 1 + l + sovFabric(uint64(l))
  2784  	}
  2785  	if m.PortNumber != 0 {
  2786  		n += 1 + sovFabric(uint64(m.PortNumber))
  2787  	}
  2788  	if m.ChannelNumber != 0 {
  2789  		n += 1 + sovFabric(uint64(m.ChannelNumber))
  2790  	}
  2791  	l = len(m.TargetID)
  2792  	if l > 0 {
  2793  		n += 1 + l + sovFabric(uint64(l))
  2794  	}
  2795  	if m.Enabled {
  2796  		n += 2
  2797  	}
  2798  	l = len(m.HealthIndicator)
  2799  	if l > 0 {
  2800  		n += 1 + l + sovFabric(uint64(l))
  2801  	}
  2802  	if m.IfIndex != 0 {
  2803  		n += 1 + sovFabric(uint64(m.IfIndex))
  2804  	}
  2805  	l = len(m.MacAddress)
  2806  	if l > 0 {
  2807  		n += 1 + l + sovFabric(uint64(l))
  2808  	}
  2809  	if m.AutoNegotiate {
  2810  		n += 2
  2811  	}
  2812  	if m.Ip != nil {
  2813  		l = m.Ip.Size()
  2814  		n += 1 + l + sovFabric(uint64(l))
  2815  	}
  2816  	return n
  2817  }
  2818  
  2819  func (m *ControllerInfo) Size() (n int) {
  2820  	if m == nil {
  2821  		return 0
  2822  	}
  2823  	var l int
  2824  	_ = l
  2825  	if m.Type != 0 {
  2826  		n += 1 + sovFabric(uint64(m.Type))
  2827  	}
  2828  	if m.Role != nil {
  2829  		l = m.Role.Size()
  2830  		n += 1 + l + sovFabric(uint64(l))
  2831  	}
  2832  	if m.ControlEndpoint != nil {
  2833  		l = m.ControlEndpoint.Size()
  2834  		n += 1 + l + sovFabric(uint64(l))
  2835  	}
  2836  	l = len(m.Username)
  2837  	if l > 0 {
  2838  		n += 1 + l + sovFabric(uint64(l))
  2839  	}
  2840  	l = len(m.Password)
  2841  	if l > 0 {
  2842  		n += 1 + l + sovFabric(uint64(l))
  2843  	}
  2844  	return n
  2845  }
  2846  
  2847  func (m *ControllerRole) Size() (n int) {
  2848  	if m == nil {
  2849  		return 0
  2850  	}
  2851  	var l int
  2852  	_ = l
  2853  	l = len(m.Name)
  2854  	if l > 0 {
  2855  		n += 1 + l + sovFabric(uint64(l))
  2856  	}
  2857  	if m.Config != nil {
  2858  		l = m.Config.Size()
  2859  		n += 1 + l + sovFabric(uint64(l))
  2860  	}
  2861  	return n
  2862  }
  2863  
  2864  func (m *P4RTServerInfo) Size() (n int) {
  2865  	if m == nil {
  2866  		return 0
  2867  	}
  2868  	var l int
  2869  	_ = l
  2870  	if m.ControlEndpoint != nil {
  2871  		l = m.ControlEndpoint.Size()
  2872  		n += 1 + l + sovFabric(uint64(l))
  2873  	}
  2874  	if m.Timeout != nil {
  2875  		l = github_com_gogo_protobuf_types.SizeOfStdDuration(*m.Timeout)
  2876  		n += 1 + l + sovFabric(uint64(l))
  2877  	}
  2878  	if m.DeviceID != 0 {
  2879  		n += 1 + sovFabric(uint64(m.DeviceID))
  2880  	}
  2881  	if len(m.Pipelines) > 0 {
  2882  		for _, e := range m.Pipelines {
  2883  			l = e.Size()
  2884  			n += 1 + l + sovFabric(uint64(l))
  2885  		}
  2886  	}
  2887  	return n
  2888  }
  2889  
  2890  func (m *P4PipelineInfo) Size() (n int) {
  2891  	if m == nil {
  2892  		return 0
  2893  	}
  2894  	var l int
  2895  	_ = l
  2896  	l = len(m.Name)
  2897  	if l > 0 {
  2898  		n += 1 + l + sovFabric(uint64(l))
  2899  	}
  2900  	l = len(m.Version)
  2901  	if l > 0 {
  2902  		n += 1 + l + sovFabric(uint64(l))
  2903  	}
  2904  	l = len(m.Architecture)
  2905  	if l > 0 {
  2906  		n += 1 + l + sovFabric(uint64(l))
  2907  	}
  2908  	if m.ConfigurationAction != 0 {
  2909  		n += 1 + sovFabric(uint64(m.ConfigurationAction))
  2910  	}
  2911  	return n
  2912  }
  2913  
  2914  func (m *P4RTMastershipState) Size() (n int) {
  2915  	if m == nil {
  2916  		return 0
  2917  	}
  2918  	var l int
  2919  	_ = l
  2920  	if m.Term != 0 {
  2921  		n += 1 + sovFabric(uint64(m.Term))
  2922  	}
  2923  	l = len(m.ConnectionID)
  2924  	if l > 0 {
  2925  		n += 1 + l + sovFabric(uint64(l))
  2926  	}
  2927  	l = len(m.Role)
  2928  	if l > 0 {
  2929  		n += 1 + l + sovFabric(uint64(l))
  2930  	}
  2931  	return n
  2932  }
  2933  
  2934  func (m *Service) Size() (n int) {
  2935  	if m == nil {
  2936  		return 0
  2937  	}
  2938  	var l int
  2939  	_ = l
  2940  	l = len(m.TargetID)
  2941  	if l > 0 {
  2942  		n += 1 + l + sovFabric(uint64(l))
  2943  	}
  2944  	if m.Mastershipstate != nil {
  2945  		l = m.Mastershipstate.Size()
  2946  		n += 1 + l + sovFabric(uint64(l))
  2947  	}
  2948  	return n
  2949  }
  2950  
  2951  func sovFabric(x uint64) (n int) {
  2952  	return (math_bits.Len64(x|1) + 6) / 7
  2953  }
  2954  func sozFabric(x uint64) (n int) {
  2955  	return sovFabric(uint64((x << 1) ^ uint64((int64(x) >> 63))))
  2956  }
  2957  func (m *Endpoint) Unmarshal(dAtA []byte) error {
  2958  	l := len(dAtA)
  2959  	iNdEx := 0
  2960  	for iNdEx < l {
  2961  		preIndex := iNdEx
  2962  		var wire uint64
  2963  		for shift := uint(0); ; shift += 7 {
  2964  			if shift >= 64 {
  2965  				return ErrIntOverflowFabric
  2966  			}
  2967  			if iNdEx >= l {
  2968  				return io.ErrUnexpectedEOF
  2969  			}
  2970  			b := dAtA[iNdEx]
  2971  			iNdEx++
  2972  			wire |= uint64(b&0x7F) << shift
  2973  			if b < 0x80 {
  2974  				break
  2975  			}
  2976  		}
  2977  		fieldNum := int32(wire >> 3)
  2978  		wireType := int(wire & 0x7)
  2979  		if wireType == 4 {
  2980  			return fmt.Errorf("proto: Endpoint: wiretype end group for non-group")
  2981  		}
  2982  		if fieldNum <= 0 {
  2983  			return fmt.Errorf("proto: Endpoint: illegal tag %d (wire type %d)", fieldNum, wire)
  2984  		}
  2985  		switch fieldNum {
  2986  		case 1:
  2987  			if wireType != 2 {
  2988  				return fmt.Errorf("proto: wrong wireType = %d for field Address", wireType)
  2989  			}
  2990  			var stringLen uint64
  2991  			for shift := uint(0); ; shift += 7 {
  2992  				if shift >= 64 {
  2993  					return ErrIntOverflowFabric
  2994  				}
  2995  				if iNdEx >= l {
  2996  					return io.ErrUnexpectedEOF
  2997  				}
  2998  				b := dAtA[iNdEx]
  2999  				iNdEx++
  3000  				stringLen |= uint64(b&0x7F) << shift
  3001  				if b < 0x80 {
  3002  					break
  3003  				}
  3004  			}
  3005  			intStringLen := int(stringLen)
  3006  			if intStringLen < 0 {
  3007  				return ErrInvalidLengthFabric
  3008  			}
  3009  			postIndex := iNdEx + intStringLen
  3010  			if postIndex < 0 {
  3011  				return ErrInvalidLengthFabric
  3012  			}
  3013  			if postIndex > l {
  3014  				return io.ErrUnexpectedEOF
  3015  			}
  3016  			m.Address = string(dAtA[iNdEx:postIndex])
  3017  			iNdEx = postIndex
  3018  		case 2:
  3019  			if wireType != 0 {
  3020  				return fmt.Errorf("proto: wrong wireType = %d for field Port", wireType)
  3021  			}
  3022  			m.Port = 0
  3023  			for shift := uint(0); ; shift += 7 {
  3024  				if shift >= 64 {
  3025  					return ErrIntOverflowFabric
  3026  				}
  3027  				if iNdEx >= l {
  3028  					return io.ErrUnexpectedEOF
  3029  				}
  3030  				b := dAtA[iNdEx]
  3031  				iNdEx++
  3032  				m.Port |= uint32(b&0x7F) << shift
  3033  				if b < 0x80 {
  3034  					break
  3035  				}
  3036  			}
  3037  		default:
  3038  			iNdEx = preIndex
  3039  			skippy, err := skipFabric(dAtA[iNdEx:])
  3040  			if err != nil {
  3041  				return err
  3042  			}
  3043  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  3044  				return ErrInvalidLengthFabric
  3045  			}
  3046  			if (iNdEx + skippy) > l {
  3047  				return io.ErrUnexpectedEOF
  3048  			}
  3049  			iNdEx += skippy
  3050  		}
  3051  	}
  3052  
  3053  	if iNdEx > l {
  3054  		return io.ErrUnexpectedEOF
  3055  	}
  3056  	return nil
  3057  }
  3058  func (m *StratumAgents) Unmarshal(dAtA []byte) error {
  3059  	l := len(dAtA)
  3060  	iNdEx := 0
  3061  	for iNdEx < l {
  3062  		preIndex := iNdEx
  3063  		var wire uint64
  3064  		for shift := uint(0); ; shift += 7 {
  3065  			if shift >= 64 {
  3066  				return ErrIntOverflowFabric
  3067  			}
  3068  			if iNdEx >= l {
  3069  				return io.ErrUnexpectedEOF
  3070  			}
  3071  			b := dAtA[iNdEx]
  3072  			iNdEx++
  3073  			wire |= uint64(b&0x7F) << shift
  3074  			if b < 0x80 {
  3075  				break
  3076  			}
  3077  		}
  3078  		fieldNum := int32(wire >> 3)
  3079  		wireType := int(wire & 0x7)
  3080  		if wireType == 4 {
  3081  			return fmt.Errorf("proto: StratumAgents: wiretype end group for non-group")
  3082  		}
  3083  		if fieldNum <= 0 {
  3084  			return fmt.Errorf("proto: StratumAgents: illegal tag %d (wire type %d)", fieldNum, wire)
  3085  		}
  3086  		switch fieldNum {
  3087  		case 1:
  3088  			if wireType != 2 {
  3089  				return fmt.Errorf("proto: wrong wireType = %d for field P4RTEndpoint", wireType)
  3090  			}
  3091  			var msglen int
  3092  			for shift := uint(0); ; shift += 7 {
  3093  				if shift >= 64 {
  3094  					return ErrIntOverflowFabric
  3095  				}
  3096  				if iNdEx >= l {
  3097  					return io.ErrUnexpectedEOF
  3098  				}
  3099  				b := dAtA[iNdEx]
  3100  				iNdEx++
  3101  				msglen |= int(b&0x7F) << shift
  3102  				if b < 0x80 {
  3103  					break
  3104  				}
  3105  			}
  3106  			if msglen < 0 {
  3107  				return ErrInvalidLengthFabric
  3108  			}
  3109  			postIndex := iNdEx + msglen
  3110  			if postIndex < 0 {
  3111  				return ErrInvalidLengthFabric
  3112  			}
  3113  			if postIndex > l {
  3114  				return io.ErrUnexpectedEOF
  3115  			}
  3116  			if m.P4RTEndpoint == nil {
  3117  				m.P4RTEndpoint = &Endpoint{}
  3118  			}
  3119  			if err := m.P4RTEndpoint.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3120  				return err
  3121  			}
  3122  			iNdEx = postIndex
  3123  		case 2:
  3124  			if wireType != 2 {
  3125  				return fmt.Errorf("proto: wrong wireType = %d for field GNMIEndpoint", wireType)
  3126  			}
  3127  			var msglen int
  3128  			for shift := uint(0); ; shift += 7 {
  3129  				if shift >= 64 {
  3130  					return ErrIntOverflowFabric
  3131  				}
  3132  				if iNdEx >= l {
  3133  					return io.ErrUnexpectedEOF
  3134  				}
  3135  				b := dAtA[iNdEx]
  3136  				iNdEx++
  3137  				msglen |= int(b&0x7F) << shift
  3138  				if b < 0x80 {
  3139  					break
  3140  				}
  3141  			}
  3142  			if msglen < 0 {
  3143  				return ErrInvalidLengthFabric
  3144  			}
  3145  			postIndex := iNdEx + msglen
  3146  			if postIndex < 0 {
  3147  				return ErrInvalidLengthFabric
  3148  			}
  3149  			if postIndex > l {
  3150  				return io.ErrUnexpectedEOF
  3151  			}
  3152  			if m.GNMIEndpoint == nil {
  3153  				m.GNMIEndpoint = &Endpoint{}
  3154  			}
  3155  			if err := m.GNMIEndpoint.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3156  				return err
  3157  			}
  3158  			iNdEx = postIndex
  3159  		case 3:
  3160  			if wireType != 0 {
  3161  				return fmt.Errorf("proto: wrong wireType = %d for field DeviceID", wireType)
  3162  			}
  3163  			m.DeviceID = 0
  3164  			for shift := uint(0); ; shift += 7 {
  3165  				if shift >= 64 {
  3166  					return ErrIntOverflowFabric
  3167  				}
  3168  				if iNdEx >= l {
  3169  					return io.ErrUnexpectedEOF
  3170  				}
  3171  				b := dAtA[iNdEx]
  3172  				iNdEx++
  3173  				m.DeviceID |= uint64(b&0x7F) << shift
  3174  				if b < 0x80 {
  3175  					break
  3176  				}
  3177  			}
  3178  		default:
  3179  			iNdEx = preIndex
  3180  			skippy, err := skipFabric(dAtA[iNdEx:])
  3181  			if err != nil {
  3182  				return err
  3183  			}
  3184  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  3185  				return ErrInvalidLengthFabric
  3186  			}
  3187  			if (iNdEx + skippy) > l {
  3188  				return io.ErrUnexpectedEOF
  3189  			}
  3190  			iNdEx += skippy
  3191  		}
  3192  	}
  3193  
  3194  	if iNdEx > l {
  3195  		return io.ErrUnexpectedEOF
  3196  	}
  3197  	return nil
  3198  }
  3199  func (m *LocalAgents) Unmarshal(dAtA []byte) error {
  3200  	l := len(dAtA)
  3201  	iNdEx := 0
  3202  	for iNdEx < l {
  3203  		preIndex := iNdEx
  3204  		var wire uint64
  3205  		for shift := uint(0); ; shift += 7 {
  3206  			if shift >= 64 {
  3207  				return ErrIntOverflowFabric
  3208  			}
  3209  			if iNdEx >= l {
  3210  				return io.ErrUnexpectedEOF
  3211  			}
  3212  			b := dAtA[iNdEx]
  3213  			iNdEx++
  3214  			wire |= uint64(b&0x7F) << shift
  3215  			if b < 0x80 {
  3216  				break
  3217  			}
  3218  		}
  3219  		fieldNum := int32(wire >> 3)
  3220  		wireType := int(wire & 0x7)
  3221  		if wireType == 4 {
  3222  			return fmt.Errorf("proto: LocalAgents: wiretype end group for non-group")
  3223  		}
  3224  		if fieldNum <= 0 {
  3225  			return fmt.Errorf("proto: LocalAgents: illegal tag %d (wire type %d)", fieldNum, wire)
  3226  		}
  3227  		switch fieldNum {
  3228  		case 1:
  3229  			if wireType != 2 {
  3230  				return fmt.Errorf("proto: wrong wireType = %d for field LinkAgentEndpoint", wireType)
  3231  			}
  3232  			var msglen int
  3233  			for shift := uint(0); ; shift += 7 {
  3234  				if shift >= 64 {
  3235  					return ErrIntOverflowFabric
  3236  				}
  3237  				if iNdEx >= l {
  3238  					return io.ErrUnexpectedEOF
  3239  				}
  3240  				b := dAtA[iNdEx]
  3241  				iNdEx++
  3242  				msglen |= int(b&0x7F) << shift
  3243  				if b < 0x80 {
  3244  					break
  3245  				}
  3246  			}
  3247  			if msglen < 0 {
  3248  				return ErrInvalidLengthFabric
  3249  			}
  3250  			postIndex := iNdEx + msglen
  3251  			if postIndex < 0 {
  3252  				return ErrInvalidLengthFabric
  3253  			}
  3254  			if postIndex > l {
  3255  				return io.ErrUnexpectedEOF
  3256  			}
  3257  			if m.LinkAgentEndpoint == nil {
  3258  				m.LinkAgentEndpoint = &Endpoint{}
  3259  			}
  3260  			if err := m.LinkAgentEndpoint.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3261  				return err
  3262  			}
  3263  			iNdEx = postIndex
  3264  		case 2:
  3265  			if wireType != 2 {
  3266  				return fmt.Errorf("proto: wrong wireType = %d for field HostAgentEndpoint", wireType)
  3267  			}
  3268  			var msglen int
  3269  			for shift := uint(0); ; shift += 7 {
  3270  				if shift >= 64 {
  3271  					return ErrIntOverflowFabric
  3272  				}
  3273  				if iNdEx >= l {
  3274  					return io.ErrUnexpectedEOF
  3275  				}
  3276  				b := dAtA[iNdEx]
  3277  				iNdEx++
  3278  				msglen |= int(b&0x7F) << shift
  3279  				if b < 0x80 {
  3280  					break
  3281  				}
  3282  			}
  3283  			if msglen < 0 {
  3284  				return ErrInvalidLengthFabric
  3285  			}
  3286  			postIndex := iNdEx + msglen
  3287  			if postIndex < 0 {
  3288  				return ErrInvalidLengthFabric
  3289  			}
  3290  			if postIndex > l {
  3291  				return io.ErrUnexpectedEOF
  3292  			}
  3293  			if m.HostAgentEndpoint == nil {
  3294  				m.HostAgentEndpoint = &Endpoint{}
  3295  			}
  3296  			if err := m.HostAgentEndpoint.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3297  				return err
  3298  			}
  3299  			iNdEx = postIndex
  3300  		case 3:
  3301  			if wireType != 2 {
  3302  				return fmt.Errorf("proto: wrong wireType = %d for field NATAgentEndpoint", wireType)
  3303  			}
  3304  			var msglen int
  3305  			for shift := uint(0); ; shift += 7 {
  3306  				if shift >= 64 {
  3307  					return ErrIntOverflowFabric
  3308  				}
  3309  				if iNdEx >= l {
  3310  					return io.ErrUnexpectedEOF
  3311  				}
  3312  				b := dAtA[iNdEx]
  3313  				iNdEx++
  3314  				msglen |= int(b&0x7F) << shift
  3315  				if b < 0x80 {
  3316  					break
  3317  				}
  3318  			}
  3319  			if msglen < 0 {
  3320  				return ErrInvalidLengthFabric
  3321  			}
  3322  			postIndex := iNdEx + msglen
  3323  			if postIndex < 0 {
  3324  				return ErrInvalidLengthFabric
  3325  			}
  3326  			if postIndex > l {
  3327  				return io.ErrUnexpectedEOF
  3328  			}
  3329  			if m.NATAgentEndpoint == nil {
  3330  				m.NATAgentEndpoint = &Endpoint{}
  3331  			}
  3332  			if err := m.NATAgentEndpoint.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3333  				return err
  3334  			}
  3335  			iNdEx = postIndex
  3336  		default:
  3337  			iNdEx = preIndex
  3338  			skippy, err := skipFabric(dAtA[iNdEx:])
  3339  			if err != nil {
  3340  				return err
  3341  			}
  3342  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  3343  				return ErrInvalidLengthFabric
  3344  			}
  3345  			if (iNdEx + skippy) > l {
  3346  				return io.ErrUnexpectedEOF
  3347  			}
  3348  			iNdEx += skippy
  3349  		}
  3350  	}
  3351  
  3352  	if iNdEx > l {
  3353  		return io.ErrUnexpectedEOF
  3354  	}
  3355  	return nil
  3356  }
  3357  func (m *Port) Unmarshal(dAtA []byte) error {
  3358  	l := len(dAtA)
  3359  	iNdEx := 0
  3360  	for iNdEx < l {
  3361  		preIndex := iNdEx
  3362  		var wire uint64
  3363  		for shift := uint(0); ; shift += 7 {
  3364  			if shift >= 64 {
  3365  				return ErrIntOverflowFabric
  3366  			}
  3367  			if iNdEx >= l {
  3368  				return io.ErrUnexpectedEOF
  3369  			}
  3370  			b := dAtA[iNdEx]
  3371  			iNdEx++
  3372  			wire |= uint64(b&0x7F) << shift
  3373  			if b < 0x80 {
  3374  				break
  3375  			}
  3376  		}
  3377  		fieldNum := int32(wire >> 3)
  3378  		wireType := int(wire & 0x7)
  3379  		if wireType == 4 {
  3380  			return fmt.Errorf("proto: Port: wiretype end group for non-group")
  3381  		}
  3382  		if fieldNum <= 0 {
  3383  			return fmt.Errorf("proto: Port: illegal tag %d (wire type %d)", fieldNum, wire)
  3384  		}
  3385  		switch fieldNum {
  3386  		case 1:
  3387  			if wireType != 0 {
  3388  				return fmt.Errorf("proto: wrong wireType = %d for field Index", wireType)
  3389  			}
  3390  			m.Index = 0
  3391  			for shift := uint(0); ; shift += 7 {
  3392  				if shift >= 64 {
  3393  					return ErrIntOverflowFabric
  3394  				}
  3395  				if iNdEx >= l {
  3396  					return io.ErrUnexpectedEOF
  3397  				}
  3398  				b := dAtA[iNdEx]
  3399  				iNdEx++
  3400  				m.Index |= uint32(b&0x7F) << shift
  3401  				if b < 0x80 {
  3402  					break
  3403  				}
  3404  			}
  3405  		case 2:
  3406  			if wireType != 0 {
  3407  				return fmt.Errorf("proto: wrong wireType = %d for field Number", wireType)
  3408  			}
  3409  			m.Number = 0
  3410  			for shift := uint(0); ; shift += 7 {
  3411  				if shift >= 64 {
  3412  					return ErrIntOverflowFabric
  3413  				}
  3414  				if iNdEx >= l {
  3415  					return io.ErrUnexpectedEOF
  3416  				}
  3417  				b := dAtA[iNdEx]
  3418  				iNdEx++
  3419  				m.Number |= uint32(b&0x7F) << shift
  3420  				if b < 0x80 {
  3421  					break
  3422  				}
  3423  			}
  3424  		case 3:
  3425  			if wireType != 2 {
  3426  				return fmt.Errorf("proto: wrong wireType = %d for field DisplayName", wireType)
  3427  			}
  3428  			var stringLen uint64
  3429  			for shift := uint(0); ; shift += 7 {
  3430  				if shift >= 64 {
  3431  					return ErrIntOverflowFabric
  3432  				}
  3433  				if iNdEx >= l {
  3434  					return io.ErrUnexpectedEOF
  3435  				}
  3436  				b := dAtA[iNdEx]
  3437  				iNdEx++
  3438  				stringLen |= uint64(b&0x7F) << shift
  3439  				if b < 0x80 {
  3440  					break
  3441  				}
  3442  			}
  3443  			intStringLen := int(stringLen)
  3444  			if intStringLen < 0 {
  3445  				return ErrInvalidLengthFabric
  3446  			}
  3447  			postIndex := iNdEx + intStringLen
  3448  			if postIndex < 0 {
  3449  				return ErrInvalidLengthFabric
  3450  			}
  3451  			if postIndex > l {
  3452  				return io.ErrUnexpectedEOF
  3453  			}
  3454  			m.DisplayName = string(dAtA[iNdEx:postIndex])
  3455  			iNdEx = postIndex
  3456  		case 4:
  3457  			if wireType != 0 {
  3458  				return fmt.Errorf("proto: wrong wireType = %d for field Enabled", wireType)
  3459  			}
  3460  			var v int
  3461  			for shift := uint(0); ; shift += 7 {
  3462  				if shift >= 64 {
  3463  					return ErrIntOverflowFabric
  3464  				}
  3465  				if iNdEx >= l {
  3466  					return io.ErrUnexpectedEOF
  3467  				}
  3468  				b := dAtA[iNdEx]
  3469  				iNdEx++
  3470  				v |= int(b&0x7F) << shift
  3471  				if b < 0x80 {
  3472  					break
  3473  				}
  3474  			}
  3475  			m.Enabled = bool(v != 0)
  3476  		case 5:
  3477  			if wireType != 2 {
  3478  				return fmt.Errorf("proto: wrong wireType = %d for field Speed", wireType)
  3479  			}
  3480  			var stringLen uint64
  3481  			for shift := uint(0); ; shift += 7 {
  3482  				if shift >= 64 {
  3483  					return ErrIntOverflowFabric
  3484  				}
  3485  				if iNdEx >= l {
  3486  					return io.ErrUnexpectedEOF
  3487  				}
  3488  				b := dAtA[iNdEx]
  3489  				iNdEx++
  3490  				stringLen |= uint64(b&0x7F) << shift
  3491  				if b < 0x80 {
  3492  					break
  3493  				}
  3494  			}
  3495  			intStringLen := int(stringLen)
  3496  			if intStringLen < 0 {
  3497  				return ErrInvalidLengthFabric
  3498  			}
  3499  			postIndex := iNdEx + intStringLen
  3500  			if postIndex < 0 {
  3501  				return ErrInvalidLengthFabric
  3502  			}
  3503  			if postIndex > l {
  3504  				return io.ErrUnexpectedEOF
  3505  			}
  3506  			m.Speed = string(dAtA[iNdEx:postIndex])
  3507  			iNdEx = postIndex
  3508  		case 6:
  3509  			if wireType != 2 {
  3510  				return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType)
  3511  			}
  3512  			var stringLen uint64
  3513  			for shift := uint(0); ; shift += 7 {
  3514  				if shift >= 64 {
  3515  					return ErrIntOverflowFabric
  3516  				}
  3517  				if iNdEx >= l {
  3518  					return io.ErrUnexpectedEOF
  3519  				}
  3520  				b := dAtA[iNdEx]
  3521  				iNdEx++
  3522  				stringLen |= uint64(b&0x7F) << shift
  3523  				if b < 0x80 {
  3524  					break
  3525  				}
  3526  			}
  3527  			intStringLen := int(stringLen)
  3528  			if intStringLen < 0 {
  3529  				return ErrInvalidLengthFabric
  3530  			}
  3531  			postIndex := iNdEx + intStringLen
  3532  			if postIndex < 0 {
  3533  				return ErrInvalidLengthFabric
  3534  			}
  3535  			if postIndex > l {
  3536  				return io.ErrUnexpectedEOF
  3537  			}
  3538  			m.Status = string(dAtA[iNdEx:postIndex])
  3539  			iNdEx = postIndex
  3540  		case 7:
  3541  			if wireType != 0 {
  3542  				return fmt.Errorf("proto: wrong wireType = %d for field LastChange", wireType)
  3543  			}
  3544  			m.LastChange = 0
  3545  			for shift := uint(0); ; shift += 7 {
  3546  				if shift >= 64 {
  3547  					return ErrIntOverflowFabric
  3548  				}
  3549  				if iNdEx >= l {
  3550  					return io.ErrUnexpectedEOF
  3551  				}
  3552  				b := dAtA[iNdEx]
  3553  				iNdEx++
  3554  				m.LastChange |= uint64(b&0x7F) << shift
  3555  				if b < 0x80 {
  3556  					break
  3557  				}
  3558  			}
  3559  		default:
  3560  			iNdEx = preIndex
  3561  			skippy, err := skipFabric(dAtA[iNdEx:])
  3562  			if err != nil {
  3563  				return err
  3564  			}
  3565  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  3566  				return ErrInvalidLengthFabric
  3567  			}
  3568  			if (iNdEx + skippy) > l {
  3569  				return io.ErrUnexpectedEOF
  3570  			}
  3571  			iNdEx += skippy
  3572  		}
  3573  	}
  3574  
  3575  	if iNdEx > l {
  3576  		return io.ErrUnexpectedEOF
  3577  	}
  3578  	return nil
  3579  }
  3580  func (m *Link) Unmarshal(dAtA []byte) error {
  3581  	l := len(dAtA)
  3582  	iNdEx := 0
  3583  	for iNdEx < l {
  3584  		preIndex := iNdEx
  3585  		var wire uint64
  3586  		for shift := uint(0); ; shift += 7 {
  3587  			if shift >= 64 {
  3588  				return ErrIntOverflowFabric
  3589  			}
  3590  			if iNdEx >= l {
  3591  				return io.ErrUnexpectedEOF
  3592  			}
  3593  			b := dAtA[iNdEx]
  3594  			iNdEx++
  3595  			wire |= uint64(b&0x7F) << shift
  3596  			if b < 0x80 {
  3597  				break
  3598  			}
  3599  		}
  3600  		fieldNum := int32(wire >> 3)
  3601  		wireType := int(wire & 0x7)
  3602  		if wireType == 4 {
  3603  			return fmt.Errorf("proto: Link: wiretype end group for non-group")
  3604  		}
  3605  		if fieldNum <= 0 {
  3606  			return fmt.Errorf("proto: Link: illegal tag %d (wire type %d)", fieldNum, wire)
  3607  		}
  3608  		switch fieldNum {
  3609  		case 1:
  3610  			if wireType != 2 {
  3611  				return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType)
  3612  			}
  3613  			var stringLen uint64
  3614  			for shift := uint(0); ; shift += 7 {
  3615  				if shift >= 64 {
  3616  					return ErrIntOverflowFabric
  3617  				}
  3618  				if iNdEx >= l {
  3619  					return io.ErrUnexpectedEOF
  3620  				}
  3621  				b := dAtA[iNdEx]
  3622  				iNdEx++
  3623  				stringLen |= uint64(b&0x7F) << shift
  3624  				if b < 0x80 {
  3625  					break
  3626  				}
  3627  			}
  3628  			intStringLen := int(stringLen)
  3629  			if intStringLen < 0 {
  3630  				return ErrInvalidLengthFabric
  3631  			}
  3632  			postIndex := iNdEx + intStringLen
  3633  			if postIndex < 0 {
  3634  				return ErrInvalidLengthFabric
  3635  			}
  3636  			if postIndex > l {
  3637  				return io.ErrUnexpectedEOF
  3638  			}
  3639  			m.Status = string(dAtA[iNdEx:postIndex])
  3640  			iNdEx = postIndex
  3641  		case 2:
  3642  			if wireType != 0 {
  3643  				return fmt.Errorf("proto: wrong wireType = %d for field LastChange", wireType)
  3644  			}
  3645  			m.LastChange = 0
  3646  			for shift := uint(0); ; shift += 7 {
  3647  				if shift >= 64 {
  3648  					return ErrIntOverflowFabric
  3649  				}
  3650  				if iNdEx >= l {
  3651  					return io.ErrUnexpectedEOF
  3652  				}
  3653  				b := dAtA[iNdEx]
  3654  				iNdEx++
  3655  				m.LastChange |= uint64(b&0x7F) << shift
  3656  				if b < 0x80 {
  3657  					break
  3658  				}
  3659  			}
  3660  		default:
  3661  			iNdEx = preIndex
  3662  			skippy, err := skipFabric(dAtA[iNdEx:])
  3663  			if err != nil {
  3664  				return err
  3665  			}
  3666  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  3667  				return ErrInvalidLengthFabric
  3668  			}
  3669  			if (iNdEx + skippy) > l {
  3670  				return io.ErrUnexpectedEOF
  3671  			}
  3672  			iNdEx += skippy
  3673  		}
  3674  	}
  3675  
  3676  	if iNdEx > l {
  3677  		return io.ErrUnexpectedEOF
  3678  	}
  3679  	return nil
  3680  }
  3681  func (m *NetworkInterface) Unmarshal(dAtA []byte) error {
  3682  	l := len(dAtA)
  3683  	iNdEx := 0
  3684  	for iNdEx < l {
  3685  		preIndex := iNdEx
  3686  		var wire uint64
  3687  		for shift := uint(0); ; shift += 7 {
  3688  			if shift >= 64 {
  3689  				return ErrIntOverflowFabric
  3690  			}
  3691  			if iNdEx >= l {
  3692  				return io.ErrUnexpectedEOF
  3693  			}
  3694  			b := dAtA[iNdEx]
  3695  			iNdEx++
  3696  			wire |= uint64(b&0x7F) << shift
  3697  			if b < 0x80 {
  3698  				break
  3699  			}
  3700  		}
  3701  		fieldNum := int32(wire >> 3)
  3702  		wireType := int(wire & 0x7)
  3703  		if wireType == 4 {
  3704  			return fmt.Errorf("proto: NetworkInterface: wiretype end group for non-group")
  3705  		}
  3706  		if fieldNum <= 0 {
  3707  			return fmt.Errorf("proto: NetworkInterface: illegal tag %d (wire type %d)", fieldNum, wire)
  3708  		}
  3709  		switch fieldNum {
  3710  		case 1:
  3711  			if wireType != 2 {
  3712  				return fmt.Errorf("proto: wrong wireType = %d for field MAC", wireType)
  3713  			}
  3714  			var stringLen uint64
  3715  			for shift := uint(0); ; shift += 7 {
  3716  				if shift >= 64 {
  3717  					return ErrIntOverflowFabric
  3718  				}
  3719  				if iNdEx >= l {
  3720  					return io.ErrUnexpectedEOF
  3721  				}
  3722  				b := dAtA[iNdEx]
  3723  				iNdEx++
  3724  				stringLen |= uint64(b&0x7F) << shift
  3725  				if b < 0x80 {
  3726  					break
  3727  				}
  3728  			}
  3729  			intStringLen := int(stringLen)
  3730  			if intStringLen < 0 {
  3731  				return ErrInvalidLengthFabric
  3732  			}
  3733  			postIndex := iNdEx + intStringLen
  3734  			if postIndex < 0 {
  3735  				return ErrInvalidLengthFabric
  3736  			}
  3737  			if postIndex > l {
  3738  				return io.ErrUnexpectedEOF
  3739  			}
  3740  			m.MAC = string(dAtA[iNdEx:postIndex])
  3741  			iNdEx = postIndex
  3742  		case 2:
  3743  			if wireType != 2 {
  3744  				return fmt.Errorf("proto: wrong wireType = %d for field IP", wireType)
  3745  			}
  3746  			var msglen int
  3747  			for shift := uint(0); ; shift += 7 {
  3748  				if shift >= 64 {
  3749  					return ErrIntOverflowFabric
  3750  				}
  3751  				if iNdEx >= l {
  3752  					return io.ErrUnexpectedEOF
  3753  				}
  3754  				b := dAtA[iNdEx]
  3755  				iNdEx++
  3756  				msglen |= int(b&0x7F) << shift
  3757  				if b < 0x80 {
  3758  					break
  3759  				}
  3760  			}
  3761  			if msglen < 0 {
  3762  				return ErrInvalidLengthFabric
  3763  			}
  3764  			postIndex := iNdEx + msglen
  3765  			if postIndex < 0 {
  3766  				return ErrInvalidLengthFabric
  3767  			}
  3768  			if postIndex > l {
  3769  				return io.ErrUnexpectedEOF
  3770  			}
  3771  			if m.IP == nil {
  3772  				m.IP = &IPAddress{}
  3773  			}
  3774  			if err := m.IP.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3775  				return err
  3776  			}
  3777  			iNdEx = postIndex
  3778  		default:
  3779  			iNdEx = preIndex
  3780  			skippy, err := skipFabric(dAtA[iNdEx:])
  3781  			if err != nil {
  3782  				return err
  3783  			}
  3784  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  3785  				return ErrInvalidLengthFabric
  3786  			}
  3787  			if (iNdEx + skippy) > l {
  3788  				return io.ErrUnexpectedEOF
  3789  			}
  3790  			iNdEx += skippy
  3791  		}
  3792  	}
  3793  
  3794  	if iNdEx > l {
  3795  		return io.ErrUnexpectedEOF
  3796  	}
  3797  	return nil
  3798  }
  3799  func (m *P4RuntimeServer) Unmarshal(dAtA []byte) error {
  3800  	l := len(dAtA)
  3801  	iNdEx := 0
  3802  	for iNdEx < l {
  3803  		preIndex := iNdEx
  3804  		var wire uint64
  3805  		for shift := uint(0); ; shift += 7 {
  3806  			if shift >= 64 {
  3807  				return ErrIntOverflowFabric
  3808  			}
  3809  			if iNdEx >= l {
  3810  				return io.ErrUnexpectedEOF
  3811  			}
  3812  			b := dAtA[iNdEx]
  3813  			iNdEx++
  3814  			wire |= uint64(b&0x7F) << shift
  3815  			if b < 0x80 {
  3816  				break
  3817  			}
  3818  		}
  3819  		fieldNum := int32(wire >> 3)
  3820  		wireType := int(wire & 0x7)
  3821  		if wireType == 4 {
  3822  			return fmt.Errorf("proto: P4RuntimeServer: wiretype end group for non-group")
  3823  		}
  3824  		if fieldNum <= 0 {
  3825  			return fmt.Errorf("proto: P4RuntimeServer: illegal tag %d (wire type %d)", fieldNum, wire)
  3826  		}
  3827  		switch fieldNum {
  3828  		case 1:
  3829  			if wireType != 2 {
  3830  				return fmt.Errorf("proto: wrong wireType = %d for field Endpoint", wireType)
  3831  			}
  3832  			var msglen int
  3833  			for shift := uint(0); ; shift += 7 {
  3834  				if shift >= 64 {
  3835  					return ErrIntOverflowFabric
  3836  				}
  3837  				if iNdEx >= l {
  3838  					return io.ErrUnexpectedEOF
  3839  				}
  3840  				b := dAtA[iNdEx]
  3841  				iNdEx++
  3842  				msglen |= int(b&0x7F) << shift
  3843  				if b < 0x80 {
  3844  					break
  3845  				}
  3846  			}
  3847  			if msglen < 0 {
  3848  				return ErrInvalidLengthFabric
  3849  			}
  3850  			postIndex := iNdEx + msglen
  3851  			if postIndex < 0 {
  3852  				return ErrInvalidLengthFabric
  3853  			}
  3854  			if postIndex > l {
  3855  				return io.ErrUnexpectedEOF
  3856  			}
  3857  			if m.Endpoint == nil {
  3858  				m.Endpoint = &Endpoint{}
  3859  			}
  3860  			if err := m.Endpoint.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3861  				return err
  3862  			}
  3863  			iNdEx = postIndex
  3864  		case 3:
  3865  			if wireType != 0 {
  3866  				return fmt.Errorf("proto: wrong wireType = %d for field DeviceID", wireType)
  3867  			}
  3868  			m.DeviceID = 0
  3869  			for shift := uint(0); ; shift += 7 {
  3870  				if shift >= 64 {
  3871  					return ErrIntOverflowFabric
  3872  				}
  3873  				if iNdEx >= l {
  3874  					return io.ErrUnexpectedEOF
  3875  				}
  3876  				b := dAtA[iNdEx]
  3877  				iNdEx++
  3878  				m.DeviceID |= uint64(b&0x7F) << shift
  3879  				if b < 0x80 {
  3880  					break
  3881  				}
  3882  			}
  3883  		default:
  3884  			iNdEx = preIndex
  3885  			skippy, err := skipFabric(dAtA[iNdEx:])
  3886  			if err != nil {
  3887  				return err
  3888  			}
  3889  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  3890  				return ErrInvalidLengthFabric
  3891  			}
  3892  			if (iNdEx + skippy) > l {
  3893  				return io.ErrUnexpectedEOF
  3894  			}
  3895  			iNdEx += skippy
  3896  		}
  3897  	}
  3898  
  3899  	if iNdEx > l {
  3900  		return io.ErrUnexpectedEOF
  3901  	}
  3902  	return nil
  3903  }
  3904  func (m *GNMIServer) Unmarshal(dAtA []byte) error {
  3905  	l := len(dAtA)
  3906  	iNdEx := 0
  3907  	for iNdEx < l {
  3908  		preIndex := iNdEx
  3909  		var wire uint64
  3910  		for shift := uint(0); ; shift += 7 {
  3911  			if shift >= 64 {
  3912  				return ErrIntOverflowFabric
  3913  			}
  3914  			if iNdEx >= l {
  3915  				return io.ErrUnexpectedEOF
  3916  			}
  3917  			b := dAtA[iNdEx]
  3918  			iNdEx++
  3919  			wire |= uint64(b&0x7F) << shift
  3920  			if b < 0x80 {
  3921  				break
  3922  			}
  3923  		}
  3924  		fieldNum := int32(wire >> 3)
  3925  		wireType := int(wire & 0x7)
  3926  		if wireType == 4 {
  3927  			return fmt.Errorf("proto: gNMIServer: wiretype end group for non-group")
  3928  		}
  3929  		if fieldNum <= 0 {
  3930  			return fmt.Errorf("proto: gNMIServer: illegal tag %d (wire type %d)", fieldNum, wire)
  3931  		}
  3932  		switch fieldNum {
  3933  		case 1:
  3934  			if wireType != 2 {
  3935  				return fmt.Errorf("proto: wrong wireType = %d for field Endpoint", wireType)
  3936  			}
  3937  			var msglen int
  3938  			for shift := uint(0); ; shift += 7 {
  3939  				if shift >= 64 {
  3940  					return ErrIntOverflowFabric
  3941  				}
  3942  				if iNdEx >= l {
  3943  					return io.ErrUnexpectedEOF
  3944  				}
  3945  				b := dAtA[iNdEx]
  3946  				iNdEx++
  3947  				msglen |= int(b&0x7F) << shift
  3948  				if b < 0x80 {
  3949  					break
  3950  				}
  3951  			}
  3952  			if msglen < 0 {
  3953  				return ErrInvalidLengthFabric
  3954  			}
  3955  			postIndex := iNdEx + msglen
  3956  			if postIndex < 0 {
  3957  				return ErrInvalidLengthFabric
  3958  			}
  3959  			if postIndex > l {
  3960  				return io.ErrUnexpectedEOF
  3961  			}
  3962  			if m.Endpoint == nil {
  3963  				m.Endpoint = &Endpoint{}
  3964  			}
  3965  			if err := m.Endpoint.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  3966  				return err
  3967  			}
  3968  			iNdEx = postIndex
  3969  		default:
  3970  			iNdEx = preIndex
  3971  			skippy, err := skipFabric(dAtA[iNdEx:])
  3972  			if err != nil {
  3973  				return err
  3974  			}
  3975  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  3976  				return ErrInvalidLengthFabric
  3977  			}
  3978  			if (iNdEx + skippy) > l {
  3979  				return io.ErrUnexpectedEOF
  3980  			}
  3981  			iNdEx += skippy
  3982  		}
  3983  	}
  3984  
  3985  	if iNdEx > l {
  3986  		return io.ErrUnexpectedEOF
  3987  	}
  3988  	return nil
  3989  }
  3990  func (m *NetworkLayer) Unmarshal(dAtA []byte) error {
  3991  	l := len(dAtA)
  3992  	iNdEx := 0
  3993  	for iNdEx < l {
  3994  		preIndex := iNdEx
  3995  		var wire uint64
  3996  		for shift := uint(0); ; shift += 7 {
  3997  			if shift >= 64 {
  3998  				return ErrIntOverflowFabric
  3999  			}
  4000  			if iNdEx >= l {
  4001  				return io.ErrUnexpectedEOF
  4002  			}
  4003  			b := dAtA[iNdEx]
  4004  			iNdEx++
  4005  			wire |= uint64(b&0x7F) << shift
  4006  			if b < 0x80 {
  4007  				break
  4008  			}
  4009  		}
  4010  		fieldNum := int32(wire >> 3)
  4011  		wireType := int(wire & 0x7)
  4012  		if wireType == 4 {
  4013  			return fmt.Errorf("proto: NetworkLayer: wiretype end group for non-group")
  4014  		}
  4015  		if fieldNum <= 0 {
  4016  			return fmt.Errorf("proto: NetworkLayer: illegal tag %d (wire type %d)", fieldNum, wire)
  4017  		}
  4018  		switch fieldNum {
  4019  		case 1:
  4020  			if wireType != 0 {
  4021  				return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType)
  4022  			}
  4023  			m.Type = 0
  4024  			for shift := uint(0); ; shift += 7 {
  4025  				if shift >= 64 {
  4026  					return ErrIntOverflowFabric
  4027  				}
  4028  				if iNdEx >= l {
  4029  					return io.ErrUnexpectedEOF
  4030  				}
  4031  				b := dAtA[iNdEx]
  4032  				iNdEx++
  4033  				m.Type |= NetworkLayer_Type(b&0x7F) << shift
  4034  				if b < 0x80 {
  4035  					break
  4036  				}
  4037  			}
  4038  		case 2:
  4039  			if wireType != 2 {
  4040  				return fmt.Errorf("proto: wrong wireType = %d for field DisplayName", wireType)
  4041  			}
  4042  			var stringLen uint64
  4043  			for shift := uint(0); ; shift += 7 {
  4044  				if shift >= 64 {
  4045  					return ErrIntOverflowFabric
  4046  				}
  4047  				if iNdEx >= l {
  4048  					return io.ErrUnexpectedEOF
  4049  				}
  4050  				b := dAtA[iNdEx]
  4051  				iNdEx++
  4052  				stringLen |= uint64(b&0x7F) << shift
  4053  				if b < 0x80 {
  4054  					break
  4055  				}
  4056  			}
  4057  			intStringLen := int(stringLen)
  4058  			if intStringLen < 0 {
  4059  				return ErrInvalidLengthFabric
  4060  			}
  4061  			postIndex := iNdEx + intStringLen
  4062  			if postIndex < 0 {
  4063  				return ErrInvalidLengthFabric
  4064  			}
  4065  			if postIndex > l {
  4066  				return io.ErrUnexpectedEOF
  4067  			}
  4068  			m.DisplayName = string(dAtA[iNdEx:postIndex])
  4069  			iNdEx = postIndex
  4070  		default:
  4071  			iNdEx = preIndex
  4072  			skippy, err := skipFabric(dAtA[iNdEx:])
  4073  			if err != nil {
  4074  				return err
  4075  			}
  4076  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  4077  				return ErrInvalidLengthFabric
  4078  			}
  4079  			if (iNdEx + skippy) > l {
  4080  				return io.ErrUnexpectedEOF
  4081  			}
  4082  			iNdEx += skippy
  4083  		}
  4084  	}
  4085  
  4086  	if iNdEx > l {
  4087  		return io.ErrUnexpectedEOF
  4088  	}
  4089  	return nil
  4090  }
  4091  func (m *Switch) Unmarshal(dAtA []byte) error {
  4092  	l := len(dAtA)
  4093  	iNdEx := 0
  4094  	for iNdEx < l {
  4095  		preIndex := iNdEx
  4096  		var wire uint64
  4097  		for shift := uint(0); ; shift += 7 {
  4098  			if shift >= 64 {
  4099  				return ErrIntOverflowFabric
  4100  			}
  4101  			if iNdEx >= l {
  4102  				return io.ErrUnexpectedEOF
  4103  			}
  4104  			b := dAtA[iNdEx]
  4105  			iNdEx++
  4106  			wire |= uint64(b&0x7F) << shift
  4107  			if b < 0x80 {
  4108  				break
  4109  			}
  4110  		}
  4111  		fieldNum := int32(wire >> 3)
  4112  		wireType := int(wire & 0x7)
  4113  		if wireType == 4 {
  4114  			return fmt.Errorf("proto: Switch: wiretype end group for non-group")
  4115  		}
  4116  		if fieldNum <= 0 {
  4117  			return fmt.Errorf("proto: Switch: illegal tag %d (wire type %d)", fieldNum, wire)
  4118  		}
  4119  		switch fieldNum {
  4120  		case 1:
  4121  			if wireType != 2 {
  4122  				return fmt.Errorf("proto: wrong wireType = %d for field ModelID", wireType)
  4123  			}
  4124  			var stringLen uint64
  4125  			for shift := uint(0); ; shift += 7 {
  4126  				if shift >= 64 {
  4127  					return ErrIntOverflowFabric
  4128  				}
  4129  				if iNdEx >= l {
  4130  					return io.ErrUnexpectedEOF
  4131  				}
  4132  				b := dAtA[iNdEx]
  4133  				iNdEx++
  4134  				stringLen |= uint64(b&0x7F) << shift
  4135  				if b < 0x80 {
  4136  					break
  4137  				}
  4138  			}
  4139  			intStringLen := int(stringLen)
  4140  			if intStringLen < 0 {
  4141  				return ErrInvalidLengthFabric
  4142  			}
  4143  			postIndex := iNdEx + intStringLen
  4144  			if postIndex < 0 {
  4145  				return ErrInvalidLengthFabric
  4146  			}
  4147  			if postIndex > l {
  4148  				return io.ErrUnexpectedEOF
  4149  			}
  4150  			m.ModelID = string(dAtA[iNdEx:postIndex])
  4151  			iNdEx = postIndex
  4152  		case 2:
  4153  			if wireType != 2 {
  4154  				return fmt.Errorf("proto: wrong wireType = %d for field Role", wireType)
  4155  			}
  4156  			var stringLen uint64
  4157  			for shift := uint(0); ; shift += 7 {
  4158  				if shift >= 64 {
  4159  					return ErrIntOverflowFabric
  4160  				}
  4161  				if iNdEx >= l {
  4162  					return io.ErrUnexpectedEOF
  4163  				}
  4164  				b := dAtA[iNdEx]
  4165  				iNdEx++
  4166  				stringLen |= uint64(b&0x7F) << shift
  4167  				if b < 0x80 {
  4168  					break
  4169  				}
  4170  			}
  4171  			intStringLen := int(stringLen)
  4172  			if intStringLen < 0 {
  4173  				return ErrInvalidLengthFabric
  4174  			}
  4175  			postIndex := iNdEx + intStringLen
  4176  			if postIndex < 0 {
  4177  				return ErrInvalidLengthFabric
  4178  			}
  4179  			if postIndex > l {
  4180  				return io.ErrUnexpectedEOF
  4181  			}
  4182  			m.Role = string(dAtA[iNdEx:postIndex])
  4183  			iNdEx = postIndex
  4184  		case 4:
  4185  			if wireType != 2 {
  4186  				return fmt.Errorf("proto: wrong wireType = %d for field ManagementEndpoint", wireType)
  4187  			}
  4188  			var msglen int
  4189  			for shift := uint(0); ; shift += 7 {
  4190  				if shift >= 64 {
  4191  					return ErrIntOverflowFabric
  4192  				}
  4193  				if iNdEx >= l {
  4194  					return io.ErrUnexpectedEOF
  4195  				}
  4196  				b := dAtA[iNdEx]
  4197  				iNdEx++
  4198  				msglen |= int(b&0x7F) << shift
  4199  				if b < 0x80 {
  4200  					break
  4201  				}
  4202  			}
  4203  			if msglen < 0 {
  4204  				return ErrInvalidLengthFabric
  4205  			}
  4206  			postIndex := iNdEx + msglen
  4207  			if postIndex < 0 {
  4208  				return ErrInvalidLengthFabric
  4209  			}
  4210  			if postIndex > l {
  4211  				return io.ErrUnexpectedEOF
  4212  			}
  4213  			if m.ManagementEndpoint == nil {
  4214  				m.ManagementEndpoint = &Endpoint{}
  4215  			}
  4216  			if err := m.ManagementEndpoint.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4217  				return err
  4218  			}
  4219  			iNdEx = postIndex
  4220  		default:
  4221  			iNdEx = preIndex
  4222  			skippy, err := skipFabric(dAtA[iNdEx:])
  4223  			if err != nil {
  4224  				return err
  4225  			}
  4226  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  4227  				return ErrInvalidLengthFabric
  4228  			}
  4229  			if (iNdEx + skippy) > l {
  4230  				return io.ErrUnexpectedEOF
  4231  			}
  4232  			iNdEx += skippy
  4233  		}
  4234  	}
  4235  
  4236  	if iNdEx > l {
  4237  		return io.ErrUnexpectedEOF
  4238  	}
  4239  	return nil
  4240  }
  4241  func (m *Router) Unmarshal(dAtA []byte) error {
  4242  	l := len(dAtA)
  4243  	iNdEx := 0
  4244  	for iNdEx < l {
  4245  		preIndex := iNdEx
  4246  		var wire uint64
  4247  		for shift := uint(0); ; shift += 7 {
  4248  			if shift >= 64 {
  4249  				return ErrIntOverflowFabric
  4250  			}
  4251  			if iNdEx >= l {
  4252  				return io.ErrUnexpectedEOF
  4253  			}
  4254  			b := dAtA[iNdEx]
  4255  			iNdEx++
  4256  			wire |= uint64(b&0x7F) << shift
  4257  			if b < 0x80 {
  4258  				break
  4259  			}
  4260  		}
  4261  		fieldNum := int32(wire >> 3)
  4262  		wireType := int(wire & 0x7)
  4263  		if wireType == 4 {
  4264  			return fmt.Errorf("proto: Router: wiretype end group for non-group")
  4265  		}
  4266  		if fieldNum <= 0 {
  4267  			return fmt.Errorf("proto: Router: illegal tag %d (wire type %d)", fieldNum, wire)
  4268  		}
  4269  		switch fieldNum {
  4270  		case 1:
  4271  			if wireType != 2 {
  4272  				return fmt.Errorf("proto: wrong wireType = %d for field ModelId", wireType)
  4273  			}
  4274  			var stringLen uint64
  4275  			for shift := uint(0); ; shift += 7 {
  4276  				if shift >= 64 {
  4277  					return ErrIntOverflowFabric
  4278  				}
  4279  				if iNdEx >= l {
  4280  					return io.ErrUnexpectedEOF
  4281  				}
  4282  				b := dAtA[iNdEx]
  4283  				iNdEx++
  4284  				stringLen |= uint64(b&0x7F) << shift
  4285  				if b < 0x80 {
  4286  					break
  4287  				}
  4288  			}
  4289  			intStringLen := int(stringLen)
  4290  			if intStringLen < 0 {
  4291  				return ErrInvalidLengthFabric
  4292  			}
  4293  			postIndex := iNdEx + intStringLen
  4294  			if postIndex < 0 {
  4295  				return ErrInvalidLengthFabric
  4296  			}
  4297  			if postIndex > l {
  4298  				return io.ErrUnexpectedEOF
  4299  			}
  4300  			m.ModelId = string(dAtA[iNdEx:postIndex])
  4301  			iNdEx = postIndex
  4302  		case 2:
  4303  			if wireType != 2 {
  4304  				return fmt.Errorf("proto: wrong wireType = %d for field Role", wireType)
  4305  			}
  4306  			var stringLen uint64
  4307  			for shift := uint(0); ; shift += 7 {
  4308  				if shift >= 64 {
  4309  					return ErrIntOverflowFabric
  4310  				}
  4311  				if iNdEx >= l {
  4312  					return io.ErrUnexpectedEOF
  4313  				}
  4314  				b := dAtA[iNdEx]
  4315  				iNdEx++
  4316  				stringLen |= uint64(b&0x7F) << shift
  4317  				if b < 0x80 {
  4318  					break
  4319  				}
  4320  			}
  4321  			intStringLen := int(stringLen)
  4322  			if intStringLen < 0 {
  4323  				return ErrInvalidLengthFabric
  4324  			}
  4325  			postIndex := iNdEx + intStringLen
  4326  			if postIndex < 0 {
  4327  				return ErrInvalidLengthFabric
  4328  			}
  4329  			if postIndex > l {
  4330  				return io.ErrUnexpectedEOF
  4331  			}
  4332  			m.Role = string(dAtA[iNdEx:postIndex])
  4333  			iNdEx = postIndex
  4334  		case 3:
  4335  			if wireType != 2 {
  4336  				return fmt.Errorf("proto: wrong wireType = %d for field ManagementEndpoint", wireType)
  4337  			}
  4338  			var msglen int
  4339  			for shift := uint(0); ; shift += 7 {
  4340  				if shift >= 64 {
  4341  					return ErrIntOverflowFabric
  4342  				}
  4343  				if iNdEx >= l {
  4344  					return io.ErrUnexpectedEOF
  4345  				}
  4346  				b := dAtA[iNdEx]
  4347  				iNdEx++
  4348  				msglen |= int(b&0x7F) << shift
  4349  				if b < 0x80 {
  4350  					break
  4351  				}
  4352  			}
  4353  			if msglen < 0 {
  4354  				return ErrInvalidLengthFabric
  4355  			}
  4356  			postIndex := iNdEx + msglen
  4357  			if postIndex < 0 {
  4358  				return ErrInvalidLengthFabric
  4359  			}
  4360  			if postIndex > l {
  4361  				return io.ErrUnexpectedEOF
  4362  			}
  4363  			if m.ManagementEndpoint == nil {
  4364  				m.ManagementEndpoint = &Endpoint{}
  4365  			}
  4366  			if err := m.ManagementEndpoint.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4367  				return err
  4368  			}
  4369  			iNdEx = postIndex
  4370  		default:
  4371  			iNdEx = preIndex
  4372  			skippy, err := skipFabric(dAtA[iNdEx:])
  4373  			if err != nil {
  4374  				return err
  4375  			}
  4376  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  4377  				return ErrInvalidLengthFabric
  4378  			}
  4379  			if (iNdEx + skippy) > l {
  4380  				return io.ErrUnexpectedEOF
  4381  			}
  4382  			iNdEx += skippy
  4383  		}
  4384  	}
  4385  
  4386  	if iNdEx > l {
  4387  		return io.ErrUnexpectedEOF
  4388  	}
  4389  	return nil
  4390  }
  4391  func (m *IPAddress) Unmarshal(dAtA []byte) error {
  4392  	l := len(dAtA)
  4393  	iNdEx := 0
  4394  	for iNdEx < l {
  4395  		preIndex := iNdEx
  4396  		var wire uint64
  4397  		for shift := uint(0); ; shift += 7 {
  4398  			if shift >= 64 {
  4399  				return ErrIntOverflowFabric
  4400  			}
  4401  			if iNdEx >= l {
  4402  				return io.ErrUnexpectedEOF
  4403  			}
  4404  			b := dAtA[iNdEx]
  4405  			iNdEx++
  4406  			wire |= uint64(b&0x7F) << shift
  4407  			if b < 0x80 {
  4408  				break
  4409  			}
  4410  		}
  4411  		fieldNum := int32(wire >> 3)
  4412  		wireType := int(wire & 0x7)
  4413  		if wireType == 4 {
  4414  			return fmt.Errorf("proto: IPAddress: wiretype end group for non-group")
  4415  		}
  4416  		if fieldNum <= 0 {
  4417  			return fmt.Errorf("proto: IPAddress: illegal tag %d (wire type %d)", fieldNum, wire)
  4418  		}
  4419  		switch fieldNum {
  4420  		case 1:
  4421  			if wireType != 0 {
  4422  				return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType)
  4423  			}
  4424  			m.Type = 0
  4425  			for shift := uint(0); ; shift += 7 {
  4426  				if shift >= 64 {
  4427  					return ErrIntOverflowFabric
  4428  				}
  4429  				if iNdEx >= l {
  4430  					return io.ErrUnexpectedEOF
  4431  				}
  4432  				b := dAtA[iNdEx]
  4433  				iNdEx++
  4434  				m.Type |= IPAddress_Type(b&0x7F) << shift
  4435  				if b < 0x80 {
  4436  					break
  4437  				}
  4438  			}
  4439  		case 2:
  4440  			if wireType != 2 {
  4441  				return fmt.Errorf("proto: wrong wireType = %d for field IP", wireType)
  4442  			}
  4443  			var stringLen uint64
  4444  			for shift := uint(0); ; shift += 7 {
  4445  				if shift >= 64 {
  4446  					return ErrIntOverflowFabric
  4447  				}
  4448  				if iNdEx >= l {
  4449  					return io.ErrUnexpectedEOF
  4450  				}
  4451  				b := dAtA[iNdEx]
  4452  				iNdEx++
  4453  				stringLen |= uint64(b&0x7F) << shift
  4454  				if b < 0x80 {
  4455  					break
  4456  				}
  4457  			}
  4458  			intStringLen := int(stringLen)
  4459  			if intStringLen < 0 {
  4460  				return ErrInvalidLengthFabric
  4461  			}
  4462  			postIndex := iNdEx + intStringLen
  4463  			if postIndex < 0 {
  4464  				return ErrInvalidLengthFabric
  4465  			}
  4466  			if postIndex > l {
  4467  				return io.ErrUnexpectedEOF
  4468  			}
  4469  			m.IP = string(dAtA[iNdEx:postIndex])
  4470  			iNdEx = postIndex
  4471  		default:
  4472  			iNdEx = preIndex
  4473  			skippy, err := skipFabric(dAtA[iNdEx:])
  4474  			if err != nil {
  4475  				return err
  4476  			}
  4477  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  4478  				return ErrInvalidLengthFabric
  4479  			}
  4480  			if (iNdEx + skippy) > l {
  4481  				return io.ErrUnexpectedEOF
  4482  			}
  4483  			iNdEx += skippy
  4484  		}
  4485  	}
  4486  
  4487  	if iNdEx > l {
  4488  		return io.ErrUnexpectedEOF
  4489  	}
  4490  	return nil
  4491  }
  4492  func (m *LogicalLink) Unmarshal(dAtA []byte) error {
  4493  	l := len(dAtA)
  4494  	iNdEx := 0
  4495  	for iNdEx < l {
  4496  		preIndex := iNdEx
  4497  		var wire uint64
  4498  		for shift := uint(0); ; shift += 7 {
  4499  			if shift >= 64 {
  4500  				return ErrIntOverflowFabric
  4501  			}
  4502  			if iNdEx >= l {
  4503  				return io.ErrUnexpectedEOF
  4504  			}
  4505  			b := dAtA[iNdEx]
  4506  			iNdEx++
  4507  			wire |= uint64(b&0x7F) << shift
  4508  			if b < 0x80 {
  4509  				break
  4510  			}
  4511  		}
  4512  		fieldNum := int32(wire >> 3)
  4513  		wireType := int(wire & 0x7)
  4514  		if wireType == 4 {
  4515  			return fmt.Errorf("proto: LogicalLink: wiretype end group for non-group")
  4516  		}
  4517  		if fieldNum <= 0 {
  4518  			return fmt.Errorf("proto: LogicalLink: illegal tag %d (wire type %d)", fieldNum, wire)
  4519  		}
  4520  		switch fieldNum {
  4521  		case 1:
  4522  			if wireType != 2 {
  4523  				return fmt.Errorf("proto: wrong wireType = %d for field SourceIP", wireType)
  4524  			}
  4525  			var msglen int
  4526  			for shift := uint(0); ; shift += 7 {
  4527  				if shift >= 64 {
  4528  					return ErrIntOverflowFabric
  4529  				}
  4530  				if iNdEx >= l {
  4531  					return io.ErrUnexpectedEOF
  4532  				}
  4533  				b := dAtA[iNdEx]
  4534  				iNdEx++
  4535  				msglen |= int(b&0x7F) << shift
  4536  				if b < 0x80 {
  4537  					break
  4538  				}
  4539  			}
  4540  			if msglen < 0 {
  4541  				return ErrInvalidLengthFabric
  4542  			}
  4543  			postIndex := iNdEx + msglen
  4544  			if postIndex < 0 {
  4545  				return ErrInvalidLengthFabric
  4546  			}
  4547  			if postIndex > l {
  4548  				return io.ErrUnexpectedEOF
  4549  			}
  4550  			if m.SourceIP == nil {
  4551  				m.SourceIP = &IPAddress{}
  4552  			}
  4553  			if err := m.SourceIP.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4554  				return err
  4555  			}
  4556  			iNdEx = postIndex
  4557  		case 2:
  4558  			if wireType != 2 {
  4559  				return fmt.Errorf("proto: wrong wireType = %d for field DestinationIP", wireType)
  4560  			}
  4561  			var msglen int
  4562  			for shift := uint(0); ; shift += 7 {
  4563  				if shift >= 64 {
  4564  					return ErrIntOverflowFabric
  4565  				}
  4566  				if iNdEx >= l {
  4567  					return io.ErrUnexpectedEOF
  4568  				}
  4569  				b := dAtA[iNdEx]
  4570  				iNdEx++
  4571  				msglen |= int(b&0x7F) << shift
  4572  				if b < 0x80 {
  4573  					break
  4574  				}
  4575  			}
  4576  			if msglen < 0 {
  4577  				return ErrInvalidLengthFabric
  4578  			}
  4579  			postIndex := iNdEx + msglen
  4580  			if postIndex < 0 {
  4581  				return ErrInvalidLengthFabric
  4582  			}
  4583  			if postIndex > l {
  4584  				return io.ErrUnexpectedEOF
  4585  			}
  4586  			if m.DestinationIP == nil {
  4587  				m.DestinationIP = &IPAddress{}
  4588  			}
  4589  			if err := m.DestinationIP.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4590  				return err
  4591  			}
  4592  			iNdEx = postIndex
  4593  		default:
  4594  			iNdEx = preIndex
  4595  			skippy, err := skipFabric(dAtA[iNdEx:])
  4596  			if err != nil {
  4597  				return err
  4598  			}
  4599  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  4600  				return ErrInvalidLengthFabric
  4601  			}
  4602  			if (iNdEx + skippy) > l {
  4603  				return io.ErrUnexpectedEOF
  4604  			}
  4605  			iNdEx += skippy
  4606  		}
  4607  	}
  4608  
  4609  	if iNdEx > l {
  4610  		return io.ErrUnexpectedEOF
  4611  	}
  4612  	return nil
  4613  }
  4614  func (m *PhyInterface) Unmarshal(dAtA []byte) error {
  4615  	l := len(dAtA)
  4616  	iNdEx := 0
  4617  	for iNdEx < l {
  4618  		preIndex := iNdEx
  4619  		var wire uint64
  4620  		for shift := uint(0); ; shift += 7 {
  4621  			if shift >= 64 {
  4622  				return ErrIntOverflowFabric
  4623  			}
  4624  			if iNdEx >= l {
  4625  				return io.ErrUnexpectedEOF
  4626  			}
  4627  			b := dAtA[iNdEx]
  4628  			iNdEx++
  4629  			wire |= uint64(b&0x7F) << shift
  4630  			if b < 0x80 {
  4631  				break
  4632  			}
  4633  		}
  4634  		fieldNum := int32(wire >> 3)
  4635  		wireType := int(wire & 0x7)
  4636  		if wireType == 4 {
  4637  			return fmt.Errorf("proto: PhyInterface: wiretype end group for non-group")
  4638  		}
  4639  		if fieldNum <= 0 {
  4640  			return fmt.Errorf("proto: PhyInterface: illegal tag %d (wire type %d)", fieldNum, wire)
  4641  		}
  4642  		switch fieldNum {
  4643  		case 1:
  4644  			if wireType != 2 {
  4645  				return fmt.Errorf("proto: wrong wireType = %d for field DisplayName", wireType)
  4646  			}
  4647  			var stringLen uint64
  4648  			for shift := uint(0); ; shift += 7 {
  4649  				if shift >= 64 {
  4650  					return ErrIntOverflowFabric
  4651  				}
  4652  				if iNdEx >= l {
  4653  					return io.ErrUnexpectedEOF
  4654  				}
  4655  				b := dAtA[iNdEx]
  4656  				iNdEx++
  4657  				stringLen |= uint64(b&0x7F) << shift
  4658  				if b < 0x80 {
  4659  					break
  4660  				}
  4661  			}
  4662  			intStringLen := int(stringLen)
  4663  			if intStringLen < 0 {
  4664  				return ErrInvalidLengthFabric
  4665  			}
  4666  			postIndex := iNdEx + intStringLen
  4667  			if postIndex < 0 {
  4668  				return ErrInvalidLengthFabric
  4669  			}
  4670  			if postIndex > l {
  4671  				return io.ErrUnexpectedEOF
  4672  			}
  4673  			m.DisplayName = string(dAtA[iNdEx:postIndex])
  4674  			iNdEx = postIndex
  4675  		case 2:
  4676  			if wireType != 2 {
  4677  				return fmt.Errorf("proto: wrong wireType = %d for field Speed", wireType)
  4678  			}
  4679  			var stringLen uint64
  4680  			for shift := uint(0); ; shift += 7 {
  4681  				if shift >= 64 {
  4682  					return ErrIntOverflowFabric
  4683  				}
  4684  				if iNdEx >= l {
  4685  					return io.ErrUnexpectedEOF
  4686  				}
  4687  				b := dAtA[iNdEx]
  4688  				iNdEx++
  4689  				stringLen |= uint64(b&0x7F) << shift
  4690  				if b < 0x80 {
  4691  					break
  4692  				}
  4693  			}
  4694  			intStringLen := int(stringLen)
  4695  			if intStringLen < 0 {
  4696  				return ErrInvalidLengthFabric
  4697  			}
  4698  			postIndex := iNdEx + intStringLen
  4699  			if postIndex < 0 {
  4700  				return ErrInvalidLengthFabric
  4701  			}
  4702  			if postIndex > l {
  4703  				return io.ErrUnexpectedEOF
  4704  			}
  4705  			m.Speed = string(dAtA[iNdEx:postIndex])
  4706  			iNdEx = postIndex
  4707  		case 3:
  4708  			if wireType != 0 {
  4709  				return fmt.Errorf("proto: wrong wireType = %d for field PortNumber", wireType)
  4710  			}
  4711  			m.PortNumber = 0
  4712  			for shift := uint(0); ; shift += 7 {
  4713  				if shift >= 64 {
  4714  					return ErrIntOverflowFabric
  4715  				}
  4716  				if iNdEx >= l {
  4717  					return io.ErrUnexpectedEOF
  4718  				}
  4719  				b := dAtA[iNdEx]
  4720  				iNdEx++
  4721  				m.PortNumber |= uint32(b&0x7F) << shift
  4722  				if b < 0x80 {
  4723  					break
  4724  				}
  4725  			}
  4726  		case 4:
  4727  			if wireType != 0 {
  4728  				return fmt.Errorf("proto: wrong wireType = %d for field ChannelNumber", wireType)
  4729  			}
  4730  			m.ChannelNumber = 0
  4731  			for shift := uint(0); ; shift += 7 {
  4732  				if shift >= 64 {
  4733  					return ErrIntOverflowFabric
  4734  				}
  4735  				if iNdEx >= l {
  4736  					return io.ErrUnexpectedEOF
  4737  				}
  4738  				b := dAtA[iNdEx]
  4739  				iNdEx++
  4740  				m.ChannelNumber |= uint32(b&0x7F) << shift
  4741  				if b < 0x80 {
  4742  					break
  4743  				}
  4744  			}
  4745  		case 5:
  4746  			if wireType != 2 {
  4747  				return fmt.Errorf("proto: wrong wireType = %d for field TargetID", wireType)
  4748  			}
  4749  			var stringLen uint64
  4750  			for shift := uint(0); ; shift += 7 {
  4751  				if shift >= 64 {
  4752  					return ErrIntOverflowFabric
  4753  				}
  4754  				if iNdEx >= l {
  4755  					return io.ErrUnexpectedEOF
  4756  				}
  4757  				b := dAtA[iNdEx]
  4758  				iNdEx++
  4759  				stringLen |= uint64(b&0x7F) << shift
  4760  				if b < 0x80 {
  4761  					break
  4762  				}
  4763  			}
  4764  			intStringLen := int(stringLen)
  4765  			if intStringLen < 0 {
  4766  				return ErrInvalidLengthFabric
  4767  			}
  4768  			postIndex := iNdEx + intStringLen
  4769  			if postIndex < 0 {
  4770  				return ErrInvalidLengthFabric
  4771  			}
  4772  			if postIndex > l {
  4773  				return io.ErrUnexpectedEOF
  4774  			}
  4775  			m.TargetID = string(dAtA[iNdEx:postIndex])
  4776  			iNdEx = postIndex
  4777  		case 6:
  4778  			if wireType != 0 {
  4779  				return fmt.Errorf("proto: wrong wireType = %d for field Enabled", wireType)
  4780  			}
  4781  			var v int
  4782  			for shift := uint(0); ; shift += 7 {
  4783  				if shift >= 64 {
  4784  					return ErrIntOverflowFabric
  4785  				}
  4786  				if iNdEx >= l {
  4787  					return io.ErrUnexpectedEOF
  4788  				}
  4789  				b := dAtA[iNdEx]
  4790  				iNdEx++
  4791  				v |= int(b&0x7F) << shift
  4792  				if b < 0x80 {
  4793  					break
  4794  				}
  4795  			}
  4796  			m.Enabled = bool(v != 0)
  4797  		case 7:
  4798  			if wireType != 2 {
  4799  				return fmt.Errorf("proto: wrong wireType = %d for field HealthIndicator", wireType)
  4800  			}
  4801  			var stringLen uint64
  4802  			for shift := uint(0); ; shift += 7 {
  4803  				if shift >= 64 {
  4804  					return ErrIntOverflowFabric
  4805  				}
  4806  				if iNdEx >= l {
  4807  					return io.ErrUnexpectedEOF
  4808  				}
  4809  				b := dAtA[iNdEx]
  4810  				iNdEx++
  4811  				stringLen |= uint64(b&0x7F) << shift
  4812  				if b < 0x80 {
  4813  					break
  4814  				}
  4815  			}
  4816  			intStringLen := int(stringLen)
  4817  			if intStringLen < 0 {
  4818  				return ErrInvalidLengthFabric
  4819  			}
  4820  			postIndex := iNdEx + intStringLen
  4821  			if postIndex < 0 {
  4822  				return ErrInvalidLengthFabric
  4823  			}
  4824  			if postIndex > l {
  4825  				return io.ErrUnexpectedEOF
  4826  			}
  4827  			m.HealthIndicator = string(dAtA[iNdEx:postIndex])
  4828  			iNdEx = postIndex
  4829  		case 8:
  4830  			if wireType != 0 {
  4831  				return fmt.Errorf("proto: wrong wireType = %d for field IfIndex", wireType)
  4832  			}
  4833  			m.IfIndex = 0
  4834  			for shift := uint(0); ; shift += 7 {
  4835  				if shift >= 64 {
  4836  					return ErrIntOverflowFabric
  4837  				}
  4838  				if iNdEx >= l {
  4839  					return io.ErrUnexpectedEOF
  4840  				}
  4841  				b := dAtA[iNdEx]
  4842  				iNdEx++
  4843  				m.IfIndex |= uint32(b&0x7F) << shift
  4844  				if b < 0x80 {
  4845  					break
  4846  				}
  4847  			}
  4848  		case 9:
  4849  			if wireType != 2 {
  4850  				return fmt.Errorf("proto: wrong wireType = %d for field MacAddress", wireType)
  4851  			}
  4852  			var stringLen uint64
  4853  			for shift := uint(0); ; shift += 7 {
  4854  				if shift >= 64 {
  4855  					return ErrIntOverflowFabric
  4856  				}
  4857  				if iNdEx >= l {
  4858  					return io.ErrUnexpectedEOF
  4859  				}
  4860  				b := dAtA[iNdEx]
  4861  				iNdEx++
  4862  				stringLen |= uint64(b&0x7F) << shift
  4863  				if b < 0x80 {
  4864  					break
  4865  				}
  4866  			}
  4867  			intStringLen := int(stringLen)
  4868  			if intStringLen < 0 {
  4869  				return ErrInvalidLengthFabric
  4870  			}
  4871  			postIndex := iNdEx + intStringLen
  4872  			if postIndex < 0 {
  4873  				return ErrInvalidLengthFabric
  4874  			}
  4875  			if postIndex > l {
  4876  				return io.ErrUnexpectedEOF
  4877  			}
  4878  			m.MacAddress = string(dAtA[iNdEx:postIndex])
  4879  			iNdEx = postIndex
  4880  		case 10:
  4881  			if wireType != 0 {
  4882  				return fmt.Errorf("proto: wrong wireType = %d for field AutoNegotiate", wireType)
  4883  			}
  4884  			var v int
  4885  			for shift := uint(0); ; shift += 7 {
  4886  				if shift >= 64 {
  4887  					return ErrIntOverflowFabric
  4888  				}
  4889  				if iNdEx >= l {
  4890  					return io.ErrUnexpectedEOF
  4891  				}
  4892  				b := dAtA[iNdEx]
  4893  				iNdEx++
  4894  				v |= int(b&0x7F) << shift
  4895  				if b < 0x80 {
  4896  					break
  4897  				}
  4898  			}
  4899  			m.AutoNegotiate = bool(v != 0)
  4900  		case 11:
  4901  			if wireType != 2 {
  4902  				return fmt.Errorf("proto: wrong wireType = %d for field Ip", wireType)
  4903  			}
  4904  			var msglen int
  4905  			for shift := uint(0); ; shift += 7 {
  4906  				if shift >= 64 {
  4907  					return ErrIntOverflowFabric
  4908  				}
  4909  				if iNdEx >= l {
  4910  					return io.ErrUnexpectedEOF
  4911  				}
  4912  				b := dAtA[iNdEx]
  4913  				iNdEx++
  4914  				msglen |= int(b&0x7F) << shift
  4915  				if b < 0x80 {
  4916  					break
  4917  				}
  4918  			}
  4919  			if msglen < 0 {
  4920  				return ErrInvalidLengthFabric
  4921  			}
  4922  			postIndex := iNdEx + msglen
  4923  			if postIndex < 0 {
  4924  				return ErrInvalidLengthFabric
  4925  			}
  4926  			if postIndex > l {
  4927  				return io.ErrUnexpectedEOF
  4928  			}
  4929  			if m.Ip == nil {
  4930  				m.Ip = &IPAddress{}
  4931  			}
  4932  			if err := m.Ip.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4933  				return err
  4934  			}
  4935  			iNdEx = postIndex
  4936  		default:
  4937  			iNdEx = preIndex
  4938  			skippy, err := skipFabric(dAtA[iNdEx:])
  4939  			if err != nil {
  4940  				return err
  4941  			}
  4942  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  4943  				return ErrInvalidLengthFabric
  4944  			}
  4945  			if (iNdEx + skippy) > l {
  4946  				return io.ErrUnexpectedEOF
  4947  			}
  4948  			iNdEx += skippy
  4949  		}
  4950  	}
  4951  
  4952  	if iNdEx > l {
  4953  		return io.ErrUnexpectedEOF
  4954  	}
  4955  	return nil
  4956  }
  4957  func (m *ControllerInfo) Unmarshal(dAtA []byte) error {
  4958  	l := len(dAtA)
  4959  	iNdEx := 0
  4960  	for iNdEx < l {
  4961  		preIndex := iNdEx
  4962  		var wire uint64
  4963  		for shift := uint(0); ; shift += 7 {
  4964  			if shift >= 64 {
  4965  				return ErrIntOverflowFabric
  4966  			}
  4967  			if iNdEx >= l {
  4968  				return io.ErrUnexpectedEOF
  4969  			}
  4970  			b := dAtA[iNdEx]
  4971  			iNdEx++
  4972  			wire |= uint64(b&0x7F) << shift
  4973  			if b < 0x80 {
  4974  				break
  4975  			}
  4976  		}
  4977  		fieldNum := int32(wire >> 3)
  4978  		wireType := int(wire & 0x7)
  4979  		if wireType == 4 {
  4980  			return fmt.Errorf("proto: ControllerInfo: wiretype end group for non-group")
  4981  		}
  4982  		if fieldNum <= 0 {
  4983  			return fmt.Errorf("proto: ControllerInfo: illegal tag %d (wire type %d)", fieldNum, wire)
  4984  		}
  4985  		switch fieldNum {
  4986  		case 1:
  4987  			if wireType != 0 {
  4988  				return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType)
  4989  			}
  4990  			m.Type = 0
  4991  			for shift := uint(0); ; shift += 7 {
  4992  				if shift >= 64 {
  4993  					return ErrIntOverflowFabric
  4994  				}
  4995  				if iNdEx >= l {
  4996  					return io.ErrUnexpectedEOF
  4997  				}
  4998  				b := dAtA[iNdEx]
  4999  				iNdEx++
  5000  				m.Type |= ControllerInfo_Type(b&0x7F) << shift
  5001  				if b < 0x80 {
  5002  					break
  5003  				}
  5004  			}
  5005  		case 2:
  5006  			if wireType != 2 {
  5007  				return fmt.Errorf("proto: wrong wireType = %d for field Role", wireType)
  5008  			}
  5009  			var msglen int
  5010  			for shift := uint(0); ; shift += 7 {
  5011  				if shift >= 64 {
  5012  					return ErrIntOverflowFabric
  5013  				}
  5014  				if iNdEx >= l {
  5015  					return io.ErrUnexpectedEOF
  5016  				}
  5017  				b := dAtA[iNdEx]
  5018  				iNdEx++
  5019  				msglen |= int(b&0x7F) << shift
  5020  				if b < 0x80 {
  5021  					break
  5022  				}
  5023  			}
  5024  			if msglen < 0 {
  5025  				return ErrInvalidLengthFabric
  5026  			}
  5027  			postIndex := iNdEx + msglen
  5028  			if postIndex < 0 {
  5029  				return ErrInvalidLengthFabric
  5030  			}
  5031  			if postIndex > l {
  5032  				return io.ErrUnexpectedEOF
  5033  			}
  5034  			if m.Role == nil {
  5035  				m.Role = &ControllerRole{}
  5036  			}
  5037  			if err := m.Role.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5038  				return err
  5039  			}
  5040  			iNdEx = postIndex
  5041  		case 3:
  5042  			if wireType != 2 {
  5043  				return fmt.Errorf("proto: wrong wireType = %d for field ControlEndpoint", wireType)
  5044  			}
  5045  			var msglen int
  5046  			for shift := uint(0); ; shift += 7 {
  5047  				if shift >= 64 {
  5048  					return ErrIntOverflowFabric
  5049  				}
  5050  				if iNdEx >= l {
  5051  					return io.ErrUnexpectedEOF
  5052  				}
  5053  				b := dAtA[iNdEx]
  5054  				iNdEx++
  5055  				msglen |= int(b&0x7F) << shift
  5056  				if b < 0x80 {
  5057  					break
  5058  				}
  5059  			}
  5060  			if msglen < 0 {
  5061  				return ErrInvalidLengthFabric
  5062  			}
  5063  			postIndex := iNdEx + msglen
  5064  			if postIndex < 0 {
  5065  				return ErrInvalidLengthFabric
  5066  			}
  5067  			if postIndex > l {
  5068  				return io.ErrUnexpectedEOF
  5069  			}
  5070  			if m.ControlEndpoint == nil {
  5071  				m.ControlEndpoint = &Endpoint{}
  5072  			}
  5073  			if err := m.ControlEndpoint.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5074  				return err
  5075  			}
  5076  			iNdEx = postIndex
  5077  		case 4:
  5078  			if wireType != 2 {
  5079  				return fmt.Errorf("proto: wrong wireType = %d for field Username", wireType)
  5080  			}
  5081  			var stringLen uint64
  5082  			for shift := uint(0); ; shift += 7 {
  5083  				if shift >= 64 {
  5084  					return ErrIntOverflowFabric
  5085  				}
  5086  				if iNdEx >= l {
  5087  					return io.ErrUnexpectedEOF
  5088  				}
  5089  				b := dAtA[iNdEx]
  5090  				iNdEx++
  5091  				stringLen |= uint64(b&0x7F) << shift
  5092  				if b < 0x80 {
  5093  					break
  5094  				}
  5095  			}
  5096  			intStringLen := int(stringLen)
  5097  			if intStringLen < 0 {
  5098  				return ErrInvalidLengthFabric
  5099  			}
  5100  			postIndex := iNdEx + intStringLen
  5101  			if postIndex < 0 {
  5102  				return ErrInvalidLengthFabric
  5103  			}
  5104  			if postIndex > l {
  5105  				return io.ErrUnexpectedEOF
  5106  			}
  5107  			m.Username = string(dAtA[iNdEx:postIndex])
  5108  			iNdEx = postIndex
  5109  		case 5:
  5110  			if wireType != 2 {
  5111  				return fmt.Errorf("proto: wrong wireType = %d for field Password", wireType)
  5112  			}
  5113  			var stringLen uint64
  5114  			for shift := uint(0); ; shift += 7 {
  5115  				if shift >= 64 {
  5116  					return ErrIntOverflowFabric
  5117  				}
  5118  				if iNdEx >= l {
  5119  					return io.ErrUnexpectedEOF
  5120  				}
  5121  				b := dAtA[iNdEx]
  5122  				iNdEx++
  5123  				stringLen |= uint64(b&0x7F) << shift
  5124  				if b < 0x80 {
  5125  					break
  5126  				}
  5127  			}
  5128  			intStringLen := int(stringLen)
  5129  			if intStringLen < 0 {
  5130  				return ErrInvalidLengthFabric
  5131  			}
  5132  			postIndex := iNdEx + intStringLen
  5133  			if postIndex < 0 {
  5134  				return ErrInvalidLengthFabric
  5135  			}
  5136  			if postIndex > l {
  5137  				return io.ErrUnexpectedEOF
  5138  			}
  5139  			m.Password = string(dAtA[iNdEx:postIndex])
  5140  			iNdEx = postIndex
  5141  		default:
  5142  			iNdEx = preIndex
  5143  			skippy, err := skipFabric(dAtA[iNdEx:])
  5144  			if err != nil {
  5145  				return err
  5146  			}
  5147  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  5148  				return ErrInvalidLengthFabric
  5149  			}
  5150  			if (iNdEx + skippy) > l {
  5151  				return io.ErrUnexpectedEOF
  5152  			}
  5153  			iNdEx += skippy
  5154  		}
  5155  	}
  5156  
  5157  	if iNdEx > l {
  5158  		return io.ErrUnexpectedEOF
  5159  	}
  5160  	return nil
  5161  }
  5162  func (m *ControllerRole) Unmarshal(dAtA []byte) error {
  5163  	l := len(dAtA)
  5164  	iNdEx := 0
  5165  	for iNdEx < l {
  5166  		preIndex := iNdEx
  5167  		var wire uint64
  5168  		for shift := uint(0); ; shift += 7 {
  5169  			if shift >= 64 {
  5170  				return ErrIntOverflowFabric
  5171  			}
  5172  			if iNdEx >= l {
  5173  				return io.ErrUnexpectedEOF
  5174  			}
  5175  			b := dAtA[iNdEx]
  5176  			iNdEx++
  5177  			wire |= uint64(b&0x7F) << shift
  5178  			if b < 0x80 {
  5179  				break
  5180  			}
  5181  		}
  5182  		fieldNum := int32(wire >> 3)
  5183  		wireType := int(wire & 0x7)
  5184  		if wireType == 4 {
  5185  			return fmt.Errorf("proto: ControllerRole: wiretype end group for non-group")
  5186  		}
  5187  		if fieldNum <= 0 {
  5188  			return fmt.Errorf("proto: ControllerRole: illegal tag %d (wire type %d)", fieldNum, wire)
  5189  		}
  5190  		switch fieldNum {
  5191  		case 1:
  5192  			if wireType != 2 {
  5193  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
  5194  			}
  5195  			var stringLen uint64
  5196  			for shift := uint(0); ; shift += 7 {
  5197  				if shift >= 64 {
  5198  					return ErrIntOverflowFabric
  5199  				}
  5200  				if iNdEx >= l {
  5201  					return io.ErrUnexpectedEOF
  5202  				}
  5203  				b := dAtA[iNdEx]
  5204  				iNdEx++
  5205  				stringLen |= uint64(b&0x7F) << shift
  5206  				if b < 0x80 {
  5207  					break
  5208  				}
  5209  			}
  5210  			intStringLen := int(stringLen)
  5211  			if intStringLen < 0 {
  5212  				return ErrInvalidLengthFabric
  5213  			}
  5214  			postIndex := iNdEx + intStringLen
  5215  			if postIndex < 0 {
  5216  				return ErrInvalidLengthFabric
  5217  			}
  5218  			if postIndex > l {
  5219  				return io.ErrUnexpectedEOF
  5220  			}
  5221  			m.Name = string(dAtA[iNdEx:postIndex])
  5222  			iNdEx = postIndex
  5223  		case 2:
  5224  			if wireType != 2 {
  5225  				return fmt.Errorf("proto: wrong wireType = %d for field Config", wireType)
  5226  			}
  5227  			var msglen int
  5228  			for shift := uint(0); ; shift += 7 {
  5229  				if shift >= 64 {
  5230  					return ErrIntOverflowFabric
  5231  				}
  5232  				if iNdEx >= l {
  5233  					return io.ErrUnexpectedEOF
  5234  				}
  5235  				b := dAtA[iNdEx]
  5236  				iNdEx++
  5237  				msglen |= int(b&0x7F) << shift
  5238  				if b < 0x80 {
  5239  					break
  5240  				}
  5241  			}
  5242  			if msglen < 0 {
  5243  				return ErrInvalidLengthFabric
  5244  			}
  5245  			postIndex := iNdEx + msglen
  5246  			if postIndex < 0 {
  5247  				return ErrInvalidLengthFabric
  5248  			}
  5249  			if postIndex > l {
  5250  				return io.ErrUnexpectedEOF
  5251  			}
  5252  			if m.Config == nil {
  5253  				m.Config = &types.Any{}
  5254  			}
  5255  			if err := m.Config.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5256  				return err
  5257  			}
  5258  			iNdEx = postIndex
  5259  		default:
  5260  			iNdEx = preIndex
  5261  			skippy, err := skipFabric(dAtA[iNdEx:])
  5262  			if err != nil {
  5263  				return err
  5264  			}
  5265  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  5266  				return ErrInvalidLengthFabric
  5267  			}
  5268  			if (iNdEx + skippy) > l {
  5269  				return io.ErrUnexpectedEOF
  5270  			}
  5271  			iNdEx += skippy
  5272  		}
  5273  	}
  5274  
  5275  	if iNdEx > l {
  5276  		return io.ErrUnexpectedEOF
  5277  	}
  5278  	return nil
  5279  }
  5280  func (m *P4RTServerInfo) Unmarshal(dAtA []byte) error {
  5281  	l := len(dAtA)
  5282  	iNdEx := 0
  5283  	for iNdEx < l {
  5284  		preIndex := iNdEx
  5285  		var wire uint64
  5286  		for shift := uint(0); ; shift += 7 {
  5287  			if shift >= 64 {
  5288  				return ErrIntOverflowFabric
  5289  			}
  5290  			if iNdEx >= l {
  5291  				return io.ErrUnexpectedEOF
  5292  			}
  5293  			b := dAtA[iNdEx]
  5294  			iNdEx++
  5295  			wire |= uint64(b&0x7F) << shift
  5296  			if b < 0x80 {
  5297  				break
  5298  			}
  5299  		}
  5300  		fieldNum := int32(wire >> 3)
  5301  		wireType := int(wire & 0x7)
  5302  		if wireType == 4 {
  5303  			return fmt.Errorf("proto: P4RTServerInfo: wiretype end group for non-group")
  5304  		}
  5305  		if fieldNum <= 0 {
  5306  			return fmt.Errorf("proto: P4RTServerInfo: illegal tag %d (wire type %d)", fieldNum, wire)
  5307  		}
  5308  		switch fieldNum {
  5309  		case 1:
  5310  			if wireType != 2 {
  5311  				return fmt.Errorf("proto: wrong wireType = %d for field ControlEndpoint", wireType)
  5312  			}
  5313  			var msglen int
  5314  			for shift := uint(0); ; shift += 7 {
  5315  				if shift >= 64 {
  5316  					return ErrIntOverflowFabric
  5317  				}
  5318  				if iNdEx >= l {
  5319  					return io.ErrUnexpectedEOF
  5320  				}
  5321  				b := dAtA[iNdEx]
  5322  				iNdEx++
  5323  				msglen |= int(b&0x7F) << shift
  5324  				if b < 0x80 {
  5325  					break
  5326  				}
  5327  			}
  5328  			if msglen < 0 {
  5329  				return ErrInvalidLengthFabric
  5330  			}
  5331  			postIndex := iNdEx + msglen
  5332  			if postIndex < 0 {
  5333  				return ErrInvalidLengthFabric
  5334  			}
  5335  			if postIndex > l {
  5336  				return io.ErrUnexpectedEOF
  5337  			}
  5338  			if m.ControlEndpoint == nil {
  5339  				m.ControlEndpoint = &Endpoint{}
  5340  			}
  5341  			if err := m.ControlEndpoint.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5342  				return err
  5343  			}
  5344  			iNdEx = postIndex
  5345  		case 2:
  5346  			if wireType != 2 {
  5347  				return fmt.Errorf("proto: wrong wireType = %d for field Timeout", wireType)
  5348  			}
  5349  			var msglen int
  5350  			for shift := uint(0); ; shift += 7 {
  5351  				if shift >= 64 {
  5352  					return ErrIntOverflowFabric
  5353  				}
  5354  				if iNdEx >= l {
  5355  					return io.ErrUnexpectedEOF
  5356  				}
  5357  				b := dAtA[iNdEx]
  5358  				iNdEx++
  5359  				msglen |= int(b&0x7F) << shift
  5360  				if b < 0x80 {
  5361  					break
  5362  				}
  5363  			}
  5364  			if msglen < 0 {
  5365  				return ErrInvalidLengthFabric
  5366  			}
  5367  			postIndex := iNdEx + msglen
  5368  			if postIndex < 0 {
  5369  				return ErrInvalidLengthFabric
  5370  			}
  5371  			if postIndex > l {
  5372  				return io.ErrUnexpectedEOF
  5373  			}
  5374  			if m.Timeout == nil {
  5375  				m.Timeout = new(time.Duration)
  5376  			}
  5377  			if err := github_com_gogo_protobuf_types.StdDurationUnmarshal(m.Timeout, dAtA[iNdEx:postIndex]); err != nil {
  5378  				return err
  5379  			}
  5380  			iNdEx = postIndex
  5381  		case 3:
  5382  			if wireType != 0 {
  5383  				return fmt.Errorf("proto: wrong wireType = %d for field DeviceID", wireType)
  5384  			}
  5385  			m.DeviceID = 0
  5386  			for shift := uint(0); ; shift += 7 {
  5387  				if shift >= 64 {
  5388  					return ErrIntOverflowFabric
  5389  				}
  5390  				if iNdEx >= l {
  5391  					return io.ErrUnexpectedEOF
  5392  				}
  5393  				b := dAtA[iNdEx]
  5394  				iNdEx++
  5395  				m.DeviceID |= uint64(b&0x7F) << shift
  5396  				if b < 0x80 {
  5397  					break
  5398  				}
  5399  			}
  5400  		case 4:
  5401  			if wireType != 2 {
  5402  				return fmt.Errorf("proto: wrong wireType = %d for field Pipelines", wireType)
  5403  			}
  5404  			var msglen int
  5405  			for shift := uint(0); ; shift += 7 {
  5406  				if shift >= 64 {
  5407  					return ErrIntOverflowFabric
  5408  				}
  5409  				if iNdEx >= l {
  5410  					return io.ErrUnexpectedEOF
  5411  				}
  5412  				b := dAtA[iNdEx]
  5413  				iNdEx++
  5414  				msglen |= int(b&0x7F) << shift
  5415  				if b < 0x80 {
  5416  					break
  5417  				}
  5418  			}
  5419  			if msglen < 0 {
  5420  				return ErrInvalidLengthFabric
  5421  			}
  5422  			postIndex := iNdEx + msglen
  5423  			if postIndex < 0 {
  5424  				return ErrInvalidLengthFabric
  5425  			}
  5426  			if postIndex > l {
  5427  				return io.ErrUnexpectedEOF
  5428  			}
  5429  			m.Pipelines = append(m.Pipelines, &P4PipelineInfo{})
  5430  			if err := m.Pipelines[len(m.Pipelines)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5431  				return err
  5432  			}
  5433  			iNdEx = postIndex
  5434  		default:
  5435  			iNdEx = preIndex
  5436  			skippy, err := skipFabric(dAtA[iNdEx:])
  5437  			if err != nil {
  5438  				return err
  5439  			}
  5440  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  5441  				return ErrInvalidLengthFabric
  5442  			}
  5443  			if (iNdEx + skippy) > l {
  5444  				return io.ErrUnexpectedEOF
  5445  			}
  5446  			iNdEx += skippy
  5447  		}
  5448  	}
  5449  
  5450  	if iNdEx > l {
  5451  		return io.ErrUnexpectedEOF
  5452  	}
  5453  	return nil
  5454  }
  5455  func (m *P4PipelineInfo) Unmarshal(dAtA []byte) error {
  5456  	l := len(dAtA)
  5457  	iNdEx := 0
  5458  	for iNdEx < l {
  5459  		preIndex := iNdEx
  5460  		var wire uint64
  5461  		for shift := uint(0); ; shift += 7 {
  5462  			if shift >= 64 {
  5463  				return ErrIntOverflowFabric
  5464  			}
  5465  			if iNdEx >= l {
  5466  				return io.ErrUnexpectedEOF
  5467  			}
  5468  			b := dAtA[iNdEx]
  5469  			iNdEx++
  5470  			wire |= uint64(b&0x7F) << shift
  5471  			if b < 0x80 {
  5472  				break
  5473  			}
  5474  		}
  5475  		fieldNum := int32(wire >> 3)
  5476  		wireType := int(wire & 0x7)
  5477  		if wireType == 4 {
  5478  			return fmt.Errorf("proto: P4PipelineInfo: wiretype end group for non-group")
  5479  		}
  5480  		if fieldNum <= 0 {
  5481  			return fmt.Errorf("proto: P4PipelineInfo: illegal tag %d (wire type %d)", fieldNum, wire)
  5482  		}
  5483  		switch fieldNum {
  5484  		case 1:
  5485  			if wireType != 2 {
  5486  				return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType)
  5487  			}
  5488  			var stringLen uint64
  5489  			for shift := uint(0); ; shift += 7 {
  5490  				if shift >= 64 {
  5491  					return ErrIntOverflowFabric
  5492  				}
  5493  				if iNdEx >= l {
  5494  					return io.ErrUnexpectedEOF
  5495  				}
  5496  				b := dAtA[iNdEx]
  5497  				iNdEx++
  5498  				stringLen |= uint64(b&0x7F) << shift
  5499  				if b < 0x80 {
  5500  					break
  5501  				}
  5502  			}
  5503  			intStringLen := int(stringLen)
  5504  			if intStringLen < 0 {
  5505  				return ErrInvalidLengthFabric
  5506  			}
  5507  			postIndex := iNdEx + intStringLen
  5508  			if postIndex < 0 {
  5509  				return ErrInvalidLengthFabric
  5510  			}
  5511  			if postIndex > l {
  5512  				return io.ErrUnexpectedEOF
  5513  			}
  5514  			m.Name = string(dAtA[iNdEx:postIndex])
  5515  			iNdEx = postIndex
  5516  		case 2:
  5517  			if wireType != 2 {
  5518  				return fmt.Errorf("proto: wrong wireType = %d for field Version", wireType)
  5519  			}
  5520  			var stringLen uint64
  5521  			for shift := uint(0); ; shift += 7 {
  5522  				if shift >= 64 {
  5523  					return ErrIntOverflowFabric
  5524  				}
  5525  				if iNdEx >= l {
  5526  					return io.ErrUnexpectedEOF
  5527  				}
  5528  				b := dAtA[iNdEx]
  5529  				iNdEx++
  5530  				stringLen |= uint64(b&0x7F) << shift
  5531  				if b < 0x80 {
  5532  					break
  5533  				}
  5534  			}
  5535  			intStringLen := int(stringLen)
  5536  			if intStringLen < 0 {
  5537  				return ErrInvalidLengthFabric
  5538  			}
  5539  			postIndex := iNdEx + intStringLen
  5540  			if postIndex < 0 {
  5541  				return ErrInvalidLengthFabric
  5542  			}
  5543  			if postIndex > l {
  5544  				return io.ErrUnexpectedEOF
  5545  			}
  5546  			m.Version = string(dAtA[iNdEx:postIndex])
  5547  			iNdEx = postIndex
  5548  		case 3:
  5549  			if wireType != 2 {
  5550  				return fmt.Errorf("proto: wrong wireType = %d for field Architecture", wireType)
  5551  			}
  5552  			var stringLen uint64
  5553  			for shift := uint(0); ; shift += 7 {
  5554  				if shift >= 64 {
  5555  					return ErrIntOverflowFabric
  5556  				}
  5557  				if iNdEx >= l {
  5558  					return io.ErrUnexpectedEOF
  5559  				}
  5560  				b := dAtA[iNdEx]
  5561  				iNdEx++
  5562  				stringLen |= uint64(b&0x7F) << shift
  5563  				if b < 0x80 {
  5564  					break
  5565  				}
  5566  			}
  5567  			intStringLen := int(stringLen)
  5568  			if intStringLen < 0 {
  5569  				return ErrInvalidLengthFabric
  5570  			}
  5571  			postIndex := iNdEx + intStringLen
  5572  			if postIndex < 0 {
  5573  				return ErrInvalidLengthFabric
  5574  			}
  5575  			if postIndex > l {
  5576  				return io.ErrUnexpectedEOF
  5577  			}
  5578  			m.Architecture = string(dAtA[iNdEx:postIndex])
  5579  			iNdEx = postIndex
  5580  		case 4:
  5581  			if wireType != 0 {
  5582  				return fmt.Errorf("proto: wrong wireType = %d for field ConfigurationAction", wireType)
  5583  			}
  5584  			m.ConfigurationAction = 0
  5585  			for shift := uint(0); ; shift += 7 {
  5586  				if shift >= 64 {
  5587  					return ErrIntOverflowFabric
  5588  				}
  5589  				if iNdEx >= l {
  5590  					return io.ErrUnexpectedEOF
  5591  				}
  5592  				b := dAtA[iNdEx]
  5593  				iNdEx++
  5594  				m.ConfigurationAction |= P4PipelineInfo_ConfigurationAction(b&0x7F) << shift
  5595  				if b < 0x80 {
  5596  					break
  5597  				}
  5598  			}
  5599  		default:
  5600  			iNdEx = preIndex
  5601  			skippy, err := skipFabric(dAtA[iNdEx:])
  5602  			if err != nil {
  5603  				return err
  5604  			}
  5605  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  5606  				return ErrInvalidLengthFabric
  5607  			}
  5608  			if (iNdEx + skippy) > l {
  5609  				return io.ErrUnexpectedEOF
  5610  			}
  5611  			iNdEx += skippy
  5612  		}
  5613  	}
  5614  
  5615  	if iNdEx > l {
  5616  		return io.ErrUnexpectedEOF
  5617  	}
  5618  	return nil
  5619  }
  5620  func (m *P4RTMastershipState) Unmarshal(dAtA []byte) error {
  5621  	l := len(dAtA)
  5622  	iNdEx := 0
  5623  	for iNdEx < l {
  5624  		preIndex := iNdEx
  5625  		var wire uint64
  5626  		for shift := uint(0); ; shift += 7 {
  5627  			if shift >= 64 {
  5628  				return ErrIntOverflowFabric
  5629  			}
  5630  			if iNdEx >= l {
  5631  				return io.ErrUnexpectedEOF
  5632  			}
  5633  			b := dAtA[iNdEx]
  5634  			iNdEx++
  5635  			wire |= uint64(b&0x7F) << shift
  5636  			if b < 0x80 {
  5637  				break
  5638  			}
  5639  		}
  5640  		fieldNum := int32(wire >> 3)
  5641  		wireType := int(wire & 0x7)
  5642  		if wireType == 4 {
  5643  			return fmt.Errorf("proto: P4RTMastershipState: wiretype end group for non-group")
  5644  		}
  5645  		if fieldNum <= 0 {
  5646  			return fmt.Errorf("proto: P4RTMastershipState: illegal tag %d (wire type %d)", fieldNum, wire)
  5647  		}
  5648  		switch fieldNum {
  5649  		case 1:
  5650  			if wireType != 0 {
  5651  				return fmt.Errorf("proto: wrong wireType = %d for field Term", wireType)
  5652  			}
  5653  			m.Term = 0
  5654  			for shift := uint(0); ; shift += 7 {
  5655  				if shift >= 64 {
  5656  					return ErrIntOverflowFabric
  5657  				}
  5658  				if iNdEx >= l {
  5659  					return io.ErrUnexpectedEOF
  5660  				}
  5661  				b := dAtA[iNdEx]
  5662  				iNdEx++
  5663  				m.Term |= uint64(b&0x7F) << shift
  5664  				if b < 0x80 {
  5665  					break
  5666  				}
  5667  			}
  5668  		case 2:
  5669  			if wireType != 2 {
  5670  				return fmt.Errorf("proto: wrong wireType = %d for field ConnectionID", wireType)
  5671  			}
  5672  			var stringLen uint64
  5673  			for shift := uint(0); ; shift += 7 {
  5674  				if shift >= 64 {
  5675  					return ErrIntOverflowFabric
  5676  				}
  5677  				if iNdEx >= l {
  5678  					return io.ErrUnexpectedEOF
  5679  				}
  5680  				b := dAtA[iNdEx]
  5681  				iNdEx++
  5682  				stringLen |= uint64(b&0x7F) << shift
  5683  				if b < 0x80 {
  5684  					break
  5685  				}
  5686  			}
  5687  			intStringLen := int(stringLen)
  5688  			if intStringLen < 0 {
  5689  				return ErrInvalidLengthFabric
  5690  			}
  5691  			postIndex := iNdEx + intStringLen
  5692  			if postIndex < 0 {
  5693  				return ErrInvalidLengthFabric
  5694  			}
  5695  			if postIndex > l {
  5696  				return io.ErrUnexpectedEOF
  5697  			}
  5698  			m.ConnectionID = string(dAtA[iNdEx:postIndex])
  5699  			iNdEx = postIndex
  5700  		case 3:
  5701  			if wireType != 2 {
  5702  				return fmt.Errorf("proto: wrong wireType = %d for field Role", wireType)
  5703  			}
  5704  			var stringLen uint64
  5705  			for shift := uint(0); ; shift += 7 {
  5706  				if shift >= 64 {
  5707  					return ErrIntOverflowFabric
  5708  				}
  5709  				if iNdEx >= l {
  5710  					return io.ErrUnexpectedEOF
  5711  				}
  5712  				b := dAtA[iNdEx]
  5713  				iNdEx++
  5714  				stringLen |= uint64(b&0x7F) << shift
  5715  				if b < 0x80 {
  5716  					break
  5717  				}
  5718  			}
  5719  			intStringLen := int(stringLen)
  5720  			if intStringLen < 0 {
  5721  				return ErrInvalidLengthFabric
  5722  			}
  5723  			postIndex := iNdEx + intStringLen
  5724  			if postIndex < 0 {
  5725  				return ErrInvalidLengthFabric
  5726  			}
  5727  			if postIndex > l {
  5728  				return io.ErrUnexpectedEOF
  5729  			}
  5730  			m.Role = string(dAtA[iNdEx:postIndex])
  5731  			iNdEx = postIndex
  5732  		default:
  5733  			iNdEx = preIndex
  5734  			skippy, err := skipFabric(dAtA[iNdEx:])
  5735  			if err != nil {
  5736  				return err
  5737  			}
  5738  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  5739  				return ErrInvalidLengthFabric
  5740  			}
  5741  			if (iNdEx + skippy) > l {
  5742  				return io.ErrUnexpectedEOF
  5743  			}
  5744  			iNdEx += skippy
  5745  		}
  5746  	}
  5747  
  5748  	if iNdEx > l {
  5749  		return io.ErrUnexpectedEOF
  5750  	}
  5751  	return nil
  5752  }
  5753  func (m *Service) Unmarshal(dAtA []byte) error {
  5754  	l := len(dAtA)
  5755  	iNdEx := 0
  5756  	for iNdEx < l {
  5757  		preIndex := iNdEx
  5758  		var wire uint64
  5759  		for shift := uint(0); ; shift += 7 {
  5760  			if shift >= 64 {
  5761  				return ErrIntOverflowFabric
  5762  			}
  5763  			if iNdEx >= l {
  5764  				return io.ErrUnexpectedEOF
  5765  			}
  5766  			b := dAtA[iNdEx]
  5767  			iNdEx++
  5768  			wire |= uint64(b&0x7F) << shift
  5769  			if b < 0x80 {
  5770  				break
  5771  			}
  5772  		}
  5773  		fieldNum := int32(wire >> 3)
  5774  		wireType := int(wire & 0x7)
  5775  		if wireType == 4 {
  5776  			return fmt.Errorf("proto: Service: wiretype end group for non-group")
  5777  		}
  5778  		if fieldNum <= 0 {
  5779  			return fmt.Errorf("proto: Service: illegal tag %d (wire type %d)", fieldNum, wire)
  5780  		}
  5781  		switch fieldNum {
  5782  		case 1:
  5783  			if wireType != 2 {
  5784  				return fmt.Errorf("proto: wrong wireType = %d for field TargetID", wireType)
  5785  			}
  5786  			var stringLen uint64
  5787  			for shift := uint(0); ; shift += 7 {
  5788  				if shift >= 64 {
  5789  					return ErrIntOverflowFabric
  5790  				}
  5791  				if iNdEx >= l {
  5792  					return io.ErrUnexpectedEOF
  5793  				}
  5794  				b := dAtA[iNdEx]
  5795  				iNdEx++
  5796  				stringLen |= uint64(b&0x7F) << shift
  5797  				if b < 0x80 {
  5798  					break
  5799  				}
  5800  			}
  5801  			intStringLen := int(stringLen)
  5802  			if intStringLen < 0 {
  5803  				return ErrInvalidLengthFabric
  5804  			}
  5805  			postIndex := iNdEx + intStringLen
  5806  			if postIndex < 0 {
  5807  				return ErrInvalidLengthFabric
  5808  			}
  5809  			if postIndex > l {
  5810  				return io.ErrUnexpectedEOF
  5811  			}
  5812  			m.TargetID = string(dAtA[iNdEx:postIndex])
  5813  			iNdEx = postIndex
  5814  		case 2:
  5815  			if wireType != 2 {
  5816  				return fmt.Errorf("proto: wrong wireType = %d for field Mastershipstate", wireType)
  5817  			}
  5818  			var msglen int
  5819  			for shift := uint(0); ; shift += 7 {
  5820  				if shift >= 64 {
  5821  					return ErrIntOverflowFabric
  5822  				}
  5823  				if iNdEx >= l {
  5824  					return io.ErrUnexpectedEOF
  5825  				}
  5826  				b := dAtA[iNdEx]
  5827  				iNdEx++
  5828  				msglen |= int(b&0x7F) << shift
  5829  				if b < 0x80 {
  5830  					break
  5831  				}
  5832  			}
  5833  			if msglen < 0 {
  5834  				return ErrInvalidLengthFabric
  5835  			}
  5836  			postIndex := iNdEx + msglen
  5837  			if postIndex < 0 {
  5838  				return ErrInvalidLengthFabric
  5839  			}
  5840  			if postIndex > l {
  5841  				return io.ErrUnexpectedEOF
  5842  			}
  5843  			if m.Mastershipstate == nil {
  5844  				m.Mastershipstate = &P4RTMastershipState{}
  5845  			}
  5846  			if err := m.Mastershipstate.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5847  				return err
  5848  			}
  5849  			iNdEx = postIndex
  5850  		default:
  5851  			iNdEx = preIndex
  5852  			skippy, err := skipFabric(dAtA[iNdEx:])
  5853  			if err != nil {
  5854  				return err
  5855  			}
  5856  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  5857  				return ErrInvalidLengthFabric
  5858  			}
  5859  			if (iNdEx + skippy) > l {
  5860  				return io.ErrUnexpectedEOF
  5861  			}
  5862  			iNdEx += skippy
  5863  		}
  5864  	}
  5865  
  5866  	if iNdEx > l {
  5867  		return io.ErrUnexpectedEOF
  5868  	}
  5869  	return nil
  5870  }
  5871  func skipFabric(dAtA []byte) (n int, err error) {
  5872  	l := len(dAtA)
  5873  	iNdEx := 0
  5874  	depth := 0
  5875  	for iNdEx < l {
  5876  		var wire uint64
  5877  		for shift := uint(0); ; shift += 7 {
  5878  			if shift >= 64 {
  5879  				return 0, ErrIntOverflowFabric
  5880  			}
  5881  			if iNdEx >= l {
  5882  				return 0, io.ErrUnexpectedEOF
  5883  			}
  5884  			b := dAtA[iNdEx]
  5885  			iNdEx++
  5886  			wire |= (uint64(b) & 0x7F) << shift
  5887  			if b < 0x80 {
  5888  				break
  5889  			}
  5890  		}
  5891  		wireType := int(wire & 0x7)
  5892  		switch wireType {
  5893  		case 0:
  5894  			for shift := uint(0); ; shift += 7 {
  5895  				if shift >= 64 {
  5896  					return 0, ErrIntOverflowFabric
  5897  				}
  5898  				if iNdEx >= l {
  5899  					return 0, io.ErrUnexpectedEOF
  5900  				}
  5901  				iNdEx++
  5902  				if dAtA[iNdEx-1] < 0x80 {
  5903  					break
  5904  				}
  5905  			}
  5906  		case 1:
  5907  			iNdEx += 8
  5908  		case 2:
  5909  			var length int
  5910  			for shift := uint(0); ; shift += 7 {
  5911  				if shift >= 64 {
  5912  					return 0, ErrIntOverflowFabric
  5913  				}
  5914  				if iNdEx >= l {
  5915  					return 0, io.ErrUnexpectedEOF
  5916  				}
  5917  				b := dAtA[iNdEx]
  5918  				iNdEx++
  5919  				length |= (int(b) & 0x7F) << shift
  5920  				if b < 0x80 {
  5921  					break
  5922  				}
  5923  			}
  5924  			if length < 0 {
  5925  				return 0, ErrInvalidLengthFabric
  5926  			}
  5927  			iNdEx += length
  5928  		case 3:
  5929  			depth++
  5930  		case 4:
  5931  			if depth == 0 {
  5932  				return 0, ErrUnexpectedEndOfGroupFabric
  5933  			}
  5934  			depth--
  5935  		case 5:
  5936  			iNdEx += 4
  5937  		default:
  5938  			return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
  5939  		}
  5940  		if iNdEx < 0 {
  5941  			return 0, ErrInvalidLengthFabric
  5942  		}
  5943  		if depth == 0 {
  5944  			return iNdEx, nil
  5945  		}
  5946  	}
  5947  	return 0, io.ErrUnexpectedEOF
  5948  }
  5949  
  5950  var (
  5951  	ErrInvalidLengthFabric        = fmt.Errorf("proto: negative length found during unmarshaling")
  5952  	ErrIntOverflowFabric          = fmt.Errorf("proto: integer overflow")
  5953  	ErrUnexpectedEndOfGroupFabric = fmt.Errorf("proto: unexpected end of group")
  5954  )