package cisco_ios_xr_fib_common_oper_fib_nodes_node_protocols_protocol_vrfs_vrf_nh_info_detail_hardware_egress_nh_info_special_detail_hardware_egress_nh_info_special_discard_detail_hardware_egress

import (
	fmt "fmt"
	proto "github.com/golang/protobuf/proto"
	math "math"
)

var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

const _ = proto.ProtoPackageIsVersion3 

type FibShNhinfo_KEYS struct {
	NodeName             string   `protobuf:"bytes,1,opt,name=node_name,json=nodeName,proto3" json:"node_name,omitempty"`
	ProtocolName         string   `protobuf:"bytes,2,opt,name=protocol_name,json=protocolName,proto3" json:"protocol_name,omitempty"`
	VrfName              string   `protobuf:"bytes,3,opt,name=vrf_name,json=vrfName,proto3" json:"vrf_name,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

func (m *FibShNhinfo_KEYS) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FibShNhinfo_KEYS.Unmarshal(m, b)
}
func (m *FibShNhinfo_KEYS) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FibShNhinfo_KEYS.Marshal(b, m, deterministic)
}
func (m *FibShNhinfo_KEYS) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FibShNhinfo_KEYS.Merge(m, src)
}
func (m *FibShNhinfo_KEYS) XXX_Size() int {
	return xxx_messageInfo_FibShNhinfo_KEYS.Size(m)
}
func (m *FibShNhinfo_KEYS) XXX_DiscardUnknown() {
	xxx_messageInfo_FibShNhinfo_KEYS.DiscardUnknown(m)
}

var xxx_messageInfo_FibShNhinfo_KEYS proto.InternalMessageInfo

func (m *FibShNhinfo_KEYS) GetNodeName() string {
	if m != nil {
		return m.NodeName
	}
	return ""
}

func (m *FibShNhinfo_KEYS) GetProtocolName() string {
	if m != nil {
		return m.ProtocolName
	}
	return ""
}

func (m *FibShNhinfo_KEYS) GetVrfName() string {
	if m != nil {
		return m.VrfName
	}
	return ""
}

type FibShNhinfoPwheExt struct {
	PwheAdjacencyClientData uint32   `protobuf:"varint,1,opt,name=pwhe_adjacency_client_data,json=pwheAdjacencyClientData,proto3" json:"pwhe_adjacency_client_data,omitempty"`
	Vctype                  uint32   `protobuf:"varint,2,opt,name=vctype,proto3" json:"vctype,omitempty"`
	VcInternalLabel         uint32   `protobuf:"varint,3,opt,name=vc_internal_label,json=vcInternalLabel,proto3" json:"vc_internal_label,omitempty"`
	CwEnabled               bool     `protobuf:"varint,4,opt,name=cw_enabled,json=cwEnabled,proto3" json:"cw_enabled,omitempty"`
	L2OverheadBytes         uint32   `protobuf:"varint,5,opt,name=l2_overhead_bytes,json=l2OverheadBytes,proto3" json:"l2_overhead_bytes,omitempty"`
	Dot1QVlanTag            uint32   `protobuf:"varint,6,opt,name=dot1q_vlan_tag,json=dot1qVlanTag,proto3" json:"dot1q_vlan_tag,omitempty"`
	XXX_NoUnkeyedLiteral    struct{} `json:"-"`
	XXX_unrecognized        []byte   `json:"-"`
	XXX_sizecache           int32    `json:"-"`
}

func (m *FibShNhinfoPwheExt) Reset()         { *m = FibShNhinfoPwheExt{} }
func (m *FibShNhinfoPwheExt) String() string { return proto.CompactTextString(m) }
func (*FibShNhinfoPwheExt) ProtoMessage()    {}
func (*FibShNhinfoPwheExt) Descriptor() ([]byte, []int) {
	return fileDescriptor_aef39e804ffbecc2, []int{1}
}

func (m *FibShNhinfoPwheExt) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FibShNhinfoPwheExt.Unmarshal(m, b)
}
func (m *FibShNhinfoPwheExt) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FibShNhinfoPwheExt.Marshal(b, m, deterministic)
}
func (m *FibShNhinfoPwheExt) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FibShNhinfoPwheExt.Merge(m, src)
}
func (m *FibShNhinfoPwheExt) XXX_Size() int {
	return xxx_messageInfo_FibShNhinfoPwheExt.Size(m)
}
func (m *FibShNhinfoPwheExt) XXX_DiscardUnknown() {
	xxx_messageInfo_FibShNhinfoPwheExt.DiscardUnknown(m)
}

var xxx_messageInfo_FibShNhinfoPwheExt proto.InternalMessageInfo

func (m *FibShNhinfoPwheExt) GetPwheAdjacencyClientData() uint32 {
	if m != nil {
		return m.PwheAdjacencyClientData
	}
	return 0
}

func (m *FibShNhinfoPwheExt) GetVctype() uint32 {
	if m != nil {
		return m.Vctype
	}
	return 0
}

func (m *FibShNhinfoPwheExt) GetVcInternalLabel() uint32 {
	if m != nil {
		return m.VcInternalLabel
	}
	return 0
}

func (m *FibShNhinfoPwheExt) GetCwEnabled() bool {
	if m != nil {
		return m.CwEnabled
	}
	return false
}

func (m *FibShNhinfoPwheExt) GetL2OverheadBytes() uint32 {
	if m != nil {
		return m.L2OverheadBytes
	}
	return 0
}

func (m *FibShNhinfoPwheExt) GetDot1QVlanTag() uint32 {
	if m != nil {
		return m.Dot1QVlanTag
	}
	return 0
}

type FibShFibObjBase struct {
	ObjectReferenceCount uint32   `protobuf:"varint,1,opt,name=object_reference_count,json=objectReferenceCount,proto3" json:"object_reference_count,omitempty"`
	ObjectFlags          uint32   `protobuf:"varint,2,opt,name=object_flags,json=objectFlags,proto3" json:"object_flags,omitempty"`
	ObjectType           uint32   `protobuf:"varint,3,opt,name=object_type,json=objectType,proto3" json:"object_type,omitempty"`
	ObjectTimeStamp      uint64   `protobuf:"varint,4,opt,name=object_time_stamp,json=objectTimeStamp,proto3" json:"object_time_stamp,omitempty"`
	ObjectPointer        uint64   `protobuf:"varint,5,opt,name=object_pointer,json=objectPointer,proto3" json:"object_pointer,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *FibShFibObjBase) Reset()         { *m = FibShFibObjBase{} }
func (m *FibShFibObjBase) String() string { return proto.CompactTextString(m) }
func (*FibShFibObjBase) ProtoMessage()    {}
func (*FibShFibObjBase) Descriptor() ([]byte, []int) {
	return fileDescriptor_aef39e804ffbecc2, []int{2}
}

func (m *FibShFibObjBase) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FibShFibObjBase.Unmarshal(m, b)
}
func (m *FibShFibObjBase) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FibShFibObjBase.Marshal(b, m, deterministic)
}
func (m *FibShFibObjBase) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FibShFibObjBase.Merge(m, src)
}
func (m *FibShFibObjBase) XXX_Size() int {
	return xxx_messageInfo_FibShFibObjBase.Size(m)
}
func (m *FibShFibObjBase) XXX_DiscardUnknown() {
	xxx_messageInfo_FibShFibObjBase.DiscardUnknown(m)
}

var xxx_messageInfo_FibShFibObjBase proto.InternalMessageInfo

func (m *FibShFibObjBase) GetObjectReferenceCount() uint32 {
	if m != nil {
		return m.ObjectReferenceCount
	}
	return 0
}

func (m *FibShFibObjBase) GetObjectFlags() uint32 {
	if m != nil {
		return m.ObjectFlags
	}
	return 0
}

func (m *FibShFibObjBase) GetObjectType() uint32 {
	if m != nil {
		return m.ObjectType
	}
	return 0
}

func (m *FibShFibObjBase) GetObjectTimeStamp() uint64 {
	if m != nil {
		return m.ObjectTimeStamp
	}
	return 0
}

func (m *FibShFibObjBase) GetObjectPointer() uint64 {
	if m != nil {
		return m.ObjectPointer
	}
	return 0
}

type FibShExtBase struct {
	ObjectBase           *FibShFibObjBase `protobuf:"bytes,1,opt,name=object_base,json=objectBase,proto3" json:"object_base,omitempty"`
	ParentObjectPointer  uint64           `protobuf:"varint,2,opt,name=parent_object_pointer,json=parentObjectPointer,proto3" json:"parent_object_pointer,omitempty"`
	BackObjectPointer    uint64           `protobuf:"varint,3,opt,name=back_object_pointer,json=backObjectPointer,proto3" json:"back_object_pointer,omitempty"`
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

func (m *FibShExtBase) Reset()         { *m = FibShExtBase{} }
func (m *FibShExtBase) String() string { return proto.CompactTextString(m) }
func (*FibShExtBase) ProtoMessage()    {}
func (*FibShExtBase) Descriptor() ([]byte, []int) {
	return fileDescriptor_aef39e804ffbecc2, []int{3}
}

func (m *FibShExtBase) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FibShExtBase.Unmarshal(m, b)
}
func (m *FibShExtBase) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FibShExtBase.Marshal(b, m, deterministic)
}
func (m *FibShExtBase) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FibShExtBase.Merge(m, src)
}
func (m *FibShExtBase) XXX_Size() int {
	return xxx_messageInfo_FibShExtBase.Size(m)
}
func (m *FibShExtBase) XXX_DiscardUnknown() {
	xxx_messageInfo_FibShExtBase.DiscardUnknown(m)
}

var xxx_messageInfo_FibShExtBase proto.InternalMessageInfo

func (m *FibShExtBase) GetObjectBase() *FibShFibObjBase {
	if m != nil {
		return m.ObjectBase
	}
	return nil
}

func (m *FibShExtBase) GetParentObjectPointer() uint64 {
	if m != nil {
		return m.ParentObjectPointer
	}
	return 0
}

func (m *FibShExtBase) GetBackObjectPointer() uint64 {
	if m != nil {
		return m.BackObjectPointer
	}
	return 0
}

type FibShNhinfoExtRepDet struct {
	NhInfoReplicatedType      uint32   `protobuf:"varint,1,opt,name=nh_info_replicated_type,json=nhInfoReplicatedType,proto3" json:"nh_info_replicated_type,omitempty"`
	NhInfoReplicatedNhId      uint32   `protobuf:"varint,2,opt,name=nh_info_replicated_nh_id,json=nhInfoReplicatedNhId,proto3" json:"nh_info_replicated_nh_id,omitempty"`
	NhInfoReplicatedInterface string   `protobuf:"bytes,3,opt,name=nh_info_replicated_interface,json=nhInfoReplicatedInterface,proto3" json:"nh_info_replicated_interface,omitempty"`
	XXX_NoUnkeyedLiteral      struct{} `json:"-"`
	XXX_unrecognized          []byte   `json:"-"`
	XXX_sizecache             int32    `json:"-"`
}

func (m *FibShNhinfoExtRepDet) Reset()         { *m = FibShNhinfoExtRepDet{} }
func (m *FibShNhinfoExtRepDet) String() string { return proto.CompactTextString(m) }
func (*FibShNhinfoExtRepDet) ProtoMessage()    {}
func (*FibShNhinfoExtRepDet) Descriptor() ([]byte, []int) {
	return fileDescriptor_aef39e804ffbecc2, []int{4}
}

func (m *FibShNhinfoExtRepDet) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FibShNhinfoExtRepDet.Unmarshal(m, b)
}
func (m *FibShNhinfoExtRepDet) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FibShNhinfoExtRepDet.Marshal(b, m, deterministic)
}
func (m *FibShNhinfoExtRepDet) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FibShNhinfoExtRepDet.Merge(m, src)
}
func (m *FibShNhinfoExtRepDet) XXX_Size() int {
	return xxx_messageInfo_FibShNhinfoExtRepDet.Size(m)
}
func (m *FibShNhinfoExtRepDet) XXX_DiscardUnknown() {
	xxx_messageInfo_FibShNhinfoExtRepDet.DiscardUnknown(m)
}

var xxx_messageInfo_FibShNhinfoExtRepDet proto.InternalMessageInfo

func (m *FibShNhinfoExtRepDet) GetNhInfoReplicatedType() uint32 {
	if m != nil {
		return m.NhInfoReplicatedType
	}
	return 0
}

func (m *FibShNhinfoExtRepDet) GetNhInfoReplicatedNhId() uint32 {
	if m != nil {
		return m.NhInfoReplicatedNhId
	}
	return 0
}

func (m *FibShNhinfoExtRepDet) GetNhInfoReplicatedInterface() string {
	if m != nil {
		return m.NhInfoReplicatedInterface
	}
	return ""
}

type FibShNhinfoExtTepDet struct {
	NhInfoTepType        uint32   `protobuf:"varint,1,opt,name=nh_info_tep_type,json=nhInfoTepType,proto3" json:"nh_info_tep_type,omitempty"`
	IsTepSinglePass      bool     `protobuf:"varint,2,opt,name=is_tep_single_pass,json=isTepSinglePass,proto3" json:"is_tep_single_pass,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *FibShNhinfoExtTepDet) Reset()         { *m = FibShNhinfoExtTepDet{} }
func (m *FibShNhinfoExtTepDet) String() string { return proto.CompactTextString(m) }
func (*FibShNhinfoExtTepDet) ProtoMessage()    {}
func (*FibShNhinfoExtTepDet) Descriptor() ([]byte, []int) {
	return fileDescriptor_aef39e804ffbecc2, []int{5}
}

func (m *FibShNhinfoExtTepDet) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FibShNhinfoExtTepDet.Unmarshal(m, b)
}
func (m *FibShNhinfoExtTepDet) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FibShNhinfoExtTepDet.Marshal(b, m, deterministic)
}
func (m *FibShNhinfoExtTepDet) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FibShNhinfoExtTepDet.Merge(m, src)
}
func (m *FibShNhinfoExtTepDet) XXX_Size() int {
	return xxx_messageInfo_FibShNhinfoExtTepDet.Size(m)
}
func (m *FibShNhinfoExtTepDet) XXX_DiscardUnknown() {
	xxx_messageInfo_FibShNhinfoExtTepDet.DiscardUnknown(m)
}

var xxx_messageInfo_FibShNhinfoExtTepDet proto.InternalMessageInfo

func (m *FibShNhinfoExtTepDet) GetNhInfoTepType() uint32 {
	if m != nil {
		return m.NhInfoTepType
	}
	return 0
}

func (m *FibShNhinfoExtTepDet) GetIsTepSinglePass() bool {
	if m != nil {
		return m.IsTepSinglePass
	}
	return false
}

type FibShNhinfoExtCmnDet struct {
	Type                 string                `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
	SnecdNhr             *FibShNhinfoExtRepDet `protobuf:"bytes,2,opt,name=snecd_nhr,json=snecdNhr,proto3" json:"snecd_nhr,omitempty"`
	SnecdTep             *FibShNhinfoExtTepDet `protobuf:"bytes,3,opt,name=snecd_tep,json=snecdTep,proto3" json:"snecd_tep,omitempty"`
	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
	XXX_unrecognized     []byte                `json:"-"`
	XXX_sizecache        int32                 `json:"-"`
}

func (m *FibShNhinfoExtCmnDet) Reset()         { *m = FibShNhinfoExtCmnDet{} }
func (m *FibShNhinfoExtCmnDet) String() string { return proto.CompactTextString(m) }
func (*FibShNhinfoExtCmnDet) ProtoMessage()    {}
func (*FibShNhinfoExtCmnDet) Descriptor() ([]byte, []int) {
	return fileDescriptor_aef39e804ffbecc2, []int{6}
}

func (m *FibShNhinfoExtCmnDet) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FibShNhinfoExtCmnDet.Unmarshal(m, b)
}
func (m *FibShNhinfoExtCmnDet) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FibShNhinfoExtCmnDet.Marshal(b, m, deterministic)
}
func (m *FibShNhinfoExtCmnDet) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FibShNhinfoExtCmnDet.Merge(m, src)
}
func (m *FibShNhinfoExtCmnDet) XXX_Size() int {
	return xxx_messageInfo_FibShNhinfoExtCmnDet.Size(m)
}
func (m *FibShNhinfoExtCmnDet) XXX_DiscardUnknown() {
	xxx_messageInfo_FibShNhinfoExtCmnDet.DiscardUnknown(m)
}

var xxx_messageInfo_FibShNhinfoExtCmnDet proto.InternalMessageInfo

func (m *FibShNhinfoExtCmnDet) GetType() string {
	if m != nil {
		return m.Type
	}
	return ""
}

func (m *FibShNhinfoExtCmnDet) GetSnecdNhr() *FibShNhinfoExtRepDet {
	if m != nil {
		return m.SnecdNhr
	}
	return nil
}

func (m *FibShNhinfoExtCmnDet) GetSnecdTep() *FibShNhinfoExtTepDet {
	if m != nil {
		return m.SnecdTep
	}
	return nil
}

type FibShNhinfoExtDet struct {
	NhInfoExtensionBase   *FibShExtBase         `protobuf:"bytes,1,opt,name=nh_info_extension_base,json=nhInfoExtensionBase,proto3" json:"nh_info_extension_base,omitempty"`
	NhInfoExtensionDetail *FibShNhinfoExtCmnDet `protobuf:"bytes,2,opt,name=nh_info_extension_detail,json=nhInfoExtensionDetail,proto3" json:"nh_info_extension_detail,omitempty"`
	XXX_NoUnkeyedLiteral  struct{}              `json:"-"`
	XXX_unrecognized      []byte                `json:"-"`
	XXX_sizecache         int32                 `json:"-"`
}

func (m *FibShNhinfoExtDet) Reset()         { *m = FibShNhinfoExtDet{} }
func (m *FibShNhinfoExtDet) String() string { return proto.CompactTextString(m) }
func (*FibShNhinfoExtDet) ProtoMessage()    {}
func (*FibShNhinfoExtDet) Descriptor() ([]byte, []int) {
	return fileDescriptor_aef39e804ffbecc2, []int{7}
}

func (m *FibShNhinfoExtDet) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FibShNhinfoExtDet.Unmarshal(m, b)
}
func (m *FibShNhinfoExtDet) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FibShNhinfoExtDet.Marshal(b, m, deterministic)
}
func (m *FibShNhinfoExtDet) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FibShNhinfoExtDet.Merge(m, src)
}
func (m *FibShNhinfoExtDet) XXX_Size() int {
	return xxx_messageInfo_FibShNhinfoExtDet.Size(m)
}
func (m *FibShNhinfoExtDet) XXX_DiscardUnknown() {
	xxx_messageInfo_FibShNhinfoExtDet.DiscardUnknown(m)
}

var xxx_messageInfo_FibShNhinfoExtDet proto.InternalMessageInfo

func (m *FibShNhinfoExtDet) GetNhInfoExtensionBase() *FibShExtBase {
	if m != nil {
		return m.NhInfoExtensionBase
	}
	return nil
}

func (m *FibShNhinfoExtDet) GetNhInfoExtensionDetail() *FibShNhinfoExtCmnDet {
	if m != nil {
		return m.NhInfoExtensionDetail
	}
	return nil
}

type FibShNhinfoExt struct {
	NhInfoExtensionDetail []*FibShNhinfoExtDet `protobuf:"bytes,1,rep,name=nh_info_extension_detail,json=nhInfoExtensionDetail,proto3" json:"nh_info_extension_detail,omitempty"`
	XXX_NoUnkeyedLiteral  struct{}             `json:"-"`
	XXX_unrecognized      []byte               `json:"-"`
	XXX_sizecache         int32                `json:"-"`
}

func (m *FibShNhinfoExt) Reset()         { *m = FibShNhinfoExt{} }
func (m *FibShNhinfoExt) String() string { return proto.CompactTextString(m) }
func (*FibShNhinfoExt) ProtoMessage()    {}
func (*FibShNhinfoExt) Descriptor() ([]byte, []int) {
	return fileDescriptor_aef39e804ffbecc2, []int{8}
}

func (m *FibShNhinfoExt) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FibShNhinfoExt.Unmarshal(m, b)
}
func (m *FibShNhinfoExt) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FibShNhinfoExt.Marshal(b, m, deterministic)
}
func (m *FibShNhinfoExt) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FibShNhinfoExt.Merge(m, src)
}
func (m *FibShNhinfoExt) XXX_Size() int {
	return xxx_messageInfo_FibShNhinfoExt.Size(m)
}
func (m *FibShNhinfoExt) XXX_DiscardUnknown() {
	xxx_messageInfo_FibShNhinfoExt.DiscardUnknown(m)
}

var xxx_messageInfo_FibShNhinfoExt proto.InternalMessageInfo

func (m *FibShNhinfoExt) GetNhInfoExtensionDetail() []*FibShNhinfoExtDet {
	if m != nil {
		return m.NhInfoExtensionDetail
	}
	return nil
}

type FibShNhinfo struct {
	SiLinkProto           uint32              `protobuf:"varint,50,opt,name=si_link_proto,json=siLinkProto,proto3" json:"si_link_proto,omitempty"`
	SiNhinfo              uint32              `protobuf:"varint,51,opt,name=si_nhinfo,json=siNhinfo,proto3" json:"si_nhinfo,omitempty"`
	SiNhtype              uint32              `protobuf:"varint,52,opt,name=si_nhtype,json=siNhtype,proto3" json:"si_nhtype,omitempty"`
	SiIfh                 uint32              `protobuf:"varint,53,opt,name=si_ifh,json=siIfh,proto3" json:"si_ifh,omitempty"`
	SiPfiInterfaceType    uint32              `protobuf:"varint,54,opt,name=si_pfi_interface_type,json=siPfiInterfaceType,proto3" json:"si_pfi_interface_type,omitempty"`
	SiAdjPtr              uint32              `protobuf:"varint,55,opt,name=si_adj_ptr,json=siAdjPtr,proto3" json:"si_adj_ptr,omitempty"`
	SiAdjPresent          bool                `protobuf:"varint,56,opt,name=si_adj_present,json=siAdjPresent,proto3" json:"si_adj_present,omitempty"`
	SiSpecialType         uint32              `protobuf:"varint,57,opt,name=si_special_type,json=siSpecialType,proto3" json:"si_special_type,omitempty"`
	SiRefcount            uint32              `protobuf:"varint,58,opt,name=si_refcount,json=siRefcount,proto3" json:"si_refcount,omitempty"`
	SiFlags               uint32              `protobuf:"varint,59,opt,name=si_flags,json=siFlags,proto3" json:"si_flags,omitempty"`
	SiAdjIf               uint32              `protobuf:"varint,60,opt,name=si_adj_if,json=siAdjIf,proto3" json:"si_adj_if,omitempty"`
	SiExtPfx              []uint32            `protobuf:"varint,61,rep,packed,name=si_ext_pfx,json=siExtPfx,proto3" json:"si_ext_pfx,omitempty"`
	SiExtPfxLen           uint32              `protobuf:"varint,62,opt,name=si_ext_pfx_len,json=siExtPfxLen,proto3" json:"si_ext_pfx_len,omitempty"`
	SiExtPfxProto         uint32              `protobuf:"varint,63,opt,name=si_ext_pfx_proto,json=siExtPfxProto,proto3" json:"si_ext_pfx_proto,omitempty"`
	SiAdjAddress          []uint32            `protobuf:"varint,64,rep,packed,name=si_adj_address,json=siAdjAddress,proto3" json:"si_adj_address,omitempty"`
	SiAdjAddrlen          uint32              `protobuf:"varint,65,opt,name=si_adj_addrlen,json=siAdjAddrlen,proto3" json:"si_adj_addrlen,omitempty"`
	SiAdjAddrProto        uint32              `protobuf:"varint,66,opt,name=si_adj_addr_proto,json=siAdjAddrProto,proto3" json:"si_adj_addr_proto,omitempty"`
	SiAdjRwLen            uint32              `protobuf:"varint,67,opt,name=si_adj_rw_len,json=siAdjRwLen,proto3" json:"si_adj_rw_len,omitempty"`
	SiAdjRw               []uint32            `protobuf:"varint,68,rep,packed,name=si_adj_rw,json=siAdjRw,proto3" json:"si_adj_rw,omitempty"`
	SiDepNhinfoType       uint32              `protobuf:"varint,69,opt,name=si_dep_nhinfo_type,json=siDepNhinfoType,proto3" json:"si_dep_nhinfo_type,omitempty"`
	SiDepNhinfo           uint32              `protobuf:"varint,70,opt,name=si_dep_nhinfo,json=siDepNhinfo,proto3" json:"si_dep_nhinfo,omitempty"`
	SiDepNhinfoIfh        uint32              `protobuf:"varint,71,opt,name=si_dep_nhinfo_ifh,json=siDepNhinfoIfh,proto3" json:"si_dep_nhinfo_ifh,omitempty"`
	SiBkupFrr             uint32              `protobuf:"varint,72,opt,name=si_bkup_frr,json=siBkupFrr,proto3" json:"si_bkup_frr,omitempty"`
	SiProtectFrr          uint32              `protobuf:"varint,73,opt,name=si_protect_frr,json=siProtectFrr,proto3" json:"si_protect_frr,omitempty"`
	SiBkupNhinfo          uint32              `protobuf:"varint,74,opt,name=si_bkup_nhinfo,json=siBkupNhinfo,proto3" json:"si_bkup_nhinfo,omitempty"`
	SiBkupIfh             uint32              `protobuf:"varint,75,opt,name=si_bkup_ifh,json=siBkupIfh,proto3" json:"si_bkup_ifh,omitempty"`
	SiBkupAddr            []uint32            `protobuf:"varint,76,rep,packed,name=si_bkup_addr,json=siBkupAddr,proto3" json:"si_bkup_addr,omitempty"`
	SiBkupAddrlen         uint32              `protobuf:"varint,77,opt,name=si_bkup_addrlen,json=siBkupAddrlen,proto3" json:"si_bkup_addrlen,omitempty"`
	SiBkupAddrProto       uint32              `protobuf:"varint,78,opt,name=si_bkup_addr_proto,json=siBkupAddrProto,proto3" json:"si_bkup_addr_proto,omitempty"`
	SiFrrActive           bool                `protobuf:"varint,79,opt,name=si_frr_active,json=siFrrActive,proto3" json:"si_frr_active,omitempty"`
	SiAttrIsExtMgd        bool                `protobuf:"varint,80,opt,name=si_attr_is_ext_mgd,json=siAttrIsExtMgd,proto3" json:"si_attr_is_ext_mgd,omitempty"`
	SiAttrIsIncomp        bool                `protobuf:"varint,81,opt,name=si_attr_is_incomp,json=siAttrIsIncomp,proto3" json:"si_attr_is_incomp,omitempty"`
	SiAttrIsTunnel        bool                `protobuf:"varint,82,opt,name=si_attr_is_tunnel,json=siAttrIsTunnel,proto3" json:"si_attr_is_tunnel,omitempty"`
	SiAttrIsTunnelSrte    bool                `protobuf:"varint,83,opt,name=si_attr_is_tunnel_srte,json=siAttrIsTunnelSrte,proto3" json:"si_attr_is_tunnel_srte,omitempty"`
	SiAttrIsGreTunnel     bool                `protobuf:"varint,84,opt,name=si_attr_is_gre_tunnel,json=siAttrIsGreTunnel,proto3" json:"si_attr_is_gre_tunnel,omitempty"`
	SiGreTi               uint64              `protobuf:"varint,85,opt,name=si_gre_ti,json=siGreTi,proto3" json:"si_gre_ti,omitempty"`
	SiGreTiFlags          uint32              `protobuf:"varint,86,opt,name=si_gre_ti_flags,json=siGreTiFlags,proto3" json:"si_gre_ti_flags,omitempty"`
	SiGreTiRefcnt         uint32              `protobuf:"varint,87,opt,name=si_gre_ti_refcnt,json=siGreTiRefcnt,proto3" json:"si_gre_ti_refcnt,omitempty"`
	SiGreTosPropagate     bool                `protobuf:"varint,88,opt,name=si_gre_tos_propagate,json=siGreTosPropagate,proto3" json:"si_gre_tos_propagate,omitempty"`
	SiHardware            string              `protobuf:"bytes,89,opt,name=si_hardware,json=siHardware,proto3" json:"si_hardware,omitempty"`
	SiNhinfoPtr           uint32              `protobuf:"varint,90,opt,name=si_nhinfo_ptr,json=siNhinfoPtr,proto3" json:"si_nhinfo_ptr,omitempty"`
	SiFnbIdbPtr           uint32              `protobuf:"varint,91,opt,name=si_fnb_idb_ptr,json=siFnbIdbPtr,proto3" json:"si_fnb_idb_ptr,omitempty"`
	SiAncIfh              uint32              `protobuf:"varint,92,opt,name=si_anc_ifh,json=siAncIfh,proto3" json:"si_anc_ifh,omitempty"`
	SiPwhe                *FibShNhinfoPwheExt `protobuf:"bytes,93,opt,name=si_pwhe,json=siPwhe,proto3" json:"si_pwhe,omitempty"`
	SiGreTiResolvingLeafp uint64              `protobuf:"varint,94,opt,name=si_gre_ti_resolving_leafp,json=siGreTiResolvingLeafp,proto3" json:"si_gre_ti_resolving_leafp,omitempty"`
	SiGreDestAddr         string              `protobuf:"bytes,95,opt,name=si_gre_dest_addr,json=siGreDestAddr,proto3" json:"si_gre_dest_addr,omitempty"`
	SiNhid                uint32              `protobuf:"varint,96,opt,name=si_nhid,json=siNhid,proto3" json:"si_nhid,omitempty"`
	SiUpdTs               uint64              `protobuf:"varint,97,opt,name=si_upd_ts,json=siUpdTs,proto3" json:"si_upd_ts,omitempty"`
	NhInfoExtension       *FibShNhinfoExt     `protobuf:"bytes,98,opt,name=nh_info_extension,json=nhInfoExtension,proto3" json:"nh_info_extension,omitempty"`
	XXX_NoUnkeyedLiteral  struct{}            `json:"-"`
	XXX_unrecognized      []byte              `json:"-"`
	XXX_sizecache         int32               `json:"-"`
}

func (m *FibShNhinfo) Reset()         { *m = FibShNhinfo{} }
func (m *FibShNhinfo) String() string { return proto.CompactTextString(m) }
func (*FibShNhinfo) ProtoMessage()    {}
func (*FibShNhinfo) Descriptor() ([]byte, []int) {
	return fileDescriptor_aef39e804ffbecc2, []int{9}
}

func (m *FibShNhinfo) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FibShNhinfo.Unmarshal(m, b)
}
func (m *FibShNhinfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FibShNhinfo.Marshal(b, m, deterministic)
}
func (m *FibShNhinfo) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FibShNhinfo.Merge(m, src)
}
func (m *FibShNhinfo) XXX_Size() int {
	return xxx_messageInfo_FibShNhinfo.Size(m)
}
func (m *FibShNhinfo) XXX_DiscardUnknown() {
	xxx_messageInfo_FibShNhinfo.DiscardUnknown(m)
}

var xxx_messageInfo_FibShNhinfo proto.InternalMessageInfo

func (m *FibShNhinfo) GetSiLinkProto() uint32 {
	if m != nil {
		return m.SiLinkProto
	}
	return 0
}

func (m *FibShNhinfo) GetSiNhinfo() uint32 {
	if m != nil {
		return m.SiNhinfo
	}
	return 0
}

func (m *FibShNhinfo) GetSiNhtype() uint32 {
	if m != nil {
		return m.SiNhtype
	}
	return 0
}

func (m *FibShNhinfo) GetSiIfh() uint32 {
	if m != nil {
		return m.SiIfh
	}
	return 0
}

func (m *FibShNhinfo) GetSiPfiInterfaceType() uint32 {
	if m != nil {
		return m.SiPfiInterfaceType
	}
	return 0
}

func (m *FibShNhinfo) GetSiAdjPtr() uint32 {
	if m != nil {
		return m.SiAdjPtr
	}
	return 0
}

func (m *FibShNhinfo) GetSiAdjPresent() bool {
	if m != nil {
		return m.SiAdjPresent
	}
	return false
}

func (m *FibShNhinfo) GetSiSpecialType() uint32 {
	if m != nil {
		return m.SiSpecialType
	}
	return 0
}

func (m *FibShNhinfo) GetSiRefcount() uint32 {
	if m != nil {
		return m.SiRefcount
	}
	return 0
}

func (m *FibShNhinfo) GetSiFlags() uint32 {
	if m != nil {
		return m.SiFlags
	}
	return 0
}

func (m *FibShNhinfo) GetSiAdjIf() uint32 {
	if m != nil {
		return m.SiAdjIf
	}
	return 0
}

func (m *FibShNhinfo) GetSiExtPfx() []uint32 {
	if m != nil {
		return m.SiExtPfx
	}
	return nil
}

func (m *FibShNhinfo) GetSiExtPfxLen() uint32 {
	if m != nil {
		return m.SiExtPfxLen
	}
	return 0
}

func (m *FibShNhinfo) GetSiExtPfxProto() uint32 {
	if m != nil {
		return m.SiExtPfxProto
	}
	return 0
}

func (m *FibShNhinfo) GetSiAdjAddress() []uint32 {
	if m != nil {
		return m.SiAdjAddress
	}
	return nil
}

func (m *FibShNhinfo) GetSiAdjAddrlen() uint32 {
	if m != nil {
		return m.SiAdjAddrlen
	}
	return 0
}

func (m *FibShNhinfo) GetSiAdjAddrProto() uint32 {
	if m != nil {
		return m.SiAdjAddrProto
	}
	return 0
}

func (m *FibShNhinfo) GetSiAdjRwLen() uint32 {
	if m != nil {
		return m.SiAdjRwLen
	}
	return 0
}

func (m *FibShNhinfo) GetSiAdjRw() []uint32 {
	if m != nil {
		return m.SiAdjRw
	}
	return nil
}

func (m *FibShNhinfo) GetSiDepNhinfoType() uint32 {
	if m != nil {
		return m.SiDepNhinfoType
	}
	return 0
}

func (m *FibShNhinfo) GetSiDepNhinfo() uint32 {
	if m != nil {
		return m.SiDepNhinfo
	}
	return 0
}

func (m *FibShNhinfo) GetSiDepNhinfoIfh() uint32 {
	if m != nil {
		return m.SiDepNhinfoIfh
	}
	return 0
}

func (m *FibShNhinfo) GetSiBkupFrr() uint32 {
	if m != nil {
		return m.SiBkupFrr
	}
	return 0
}

func (m *FibShNhinfo) GetSiProtectFrr() uint32 {
	if m != nil {
		return m.SiProtectFrr
	}
	return 0
}

func (m *FibShNhinfo) GetSiBkupNhinfo() uint32 {
	if m != nil {
		return m.SiBkupNhinfo
	}
	return 0
}

func (m *FibShNhinfo) GetSiBkupIfh() uint32 {
	if m != nil {
		return m.SiBkupIfh
	}
	return 0
}

func (m *FibShNhinfo) GetSiBkupAddr() []uint32 {
	if m != nil {
		return m.SiBkupAddr
	}
	return nil
}

func (m *FibShNhinfo) GetSiBkupAddrlen() uint32 {
	if m != nil {
		return m.SiBkupAddrlen
	}
	return 0
}

func (m *FibShNhinfo) GetSiBkupAddrProto() uint32 {
	if m != nil {
		return m.SiBkupAddrProto
	}
	return 0
}

func (m *FibShNhinfo) GetSiFrrActive() bool {
	if m != nil {
		return m.SiFrrActive
	}
	return false
}

func (m *FibShNhinfo) GetSiAttrIsExtMgd() bool {
	if m != nil {
		return m.SiAttrIsExtMgd
	}
	return false
}

func (m *FibShNhinfo) GetSiAttrIsIncomp() bool {
	if m != nil {
		return m.SiAttrIsIncomp
	}
	return false
}

func (m *FibShNhinfo) GetSiAttrIsTunnel() bool {
	if m != nil {
		return m.SiAttrIsTunnel
	}
	return false
}

func (m *FibShNhinfo) GetSiAttrIsTunnelSrte() bool {
	if m != nil {
		return m.SiAttrIsTunnelSrte
	}
	return false
}

func (m *FibShNhinfo) GetSiAttrIsGreTunnel() bool {
	if m != nil {
		return m.SiAttrIsGreTunnel
	}
	return false
}

func (m *FibShNhinfo) GetSiGreTi() uint64 {
	if m != nil {
		return m.SiGreTi
	}
	return 0
}

func (m *FibShNhinfo) GetSiGreTiFlags() uint32 {
	if m != nil {
		return m.SiGreTiFlags
	}
	return 0
}

func (m *FibShNhinfo) GetSiGreTiRefcnt() uint32 {
	if m != nil {
		return m.SiGreTiRefcnt
	}
	return 0
}

func (m *FibShNhinfo) GetSiGreTosPropagate() bool {
	if m != nil {
		return m.SiGreTosPropagate
	}
	return false
}

func (m *FibShNhinfo) GetSiHardware() string {
	if m != nil {
		return m.SiHardware
	}
	return ""
}

func (m *FibShNhinfo) GetSiNhinfoPtr() uint32 {
	if m != nil {
		return m.SiNhinfoPtr
	}
	return 0
}

func (m *FibShNhinfo) GetSiFnbIdbPtr() uint32 {
	if m != nil {
		return m.SiFnbIdbPtr
	}
	return 0
}

func (m *FibShNhinfo) GetSiAncIfh() uint32 {
	if m != nil {
		return m.SiAncIfh
	}
	return 0
}

func (m *FibShNhinfo) GetSiPwhe() *FibShNhinfoPwheExt {
	if m != nil {
		return m.SiPwhe
	}
	return nil
}

func (m *FibShNhinfo) GetSiGreTiResolvingLeafp() uint64 {
	if m != nil {
		return m.SiGreTiResolvingLeafp
	}
	return 0
}

func (m *FibShNhinfo) GetSiGreDestAddr() string {
	if m != nil {
		return m.SiGreDestAddr
	}
	return ""
}

func (m *FibShNhinfo) GetSiNhid() uint32 {
	if m != nil {
		return m.SiNhid
	}
	return 0
}

func (m *FibShNhinfo) GetSiUpdTs() uint64 {
	if m != nil {
		return m.SiUpdTs
	}
	return 0
}

func (m *FibShNhinfo) GetNhInfoExtension() *FibShNhinfoExt {
	if m != nil {
		return m.NhInfoExtension
	}
	return nil
}

func init() {
	proto.RegisterType((*FibShNhinfo_KEYS)(nil), "cisco_ios_xr_fib_common_oper.fib.nodes.node.protocols.protocol.vrfs.vrf.nh_info_detail_hardware_egress.nh_info_special_detail_hardware_egress.nh_info_special_discard_detail_hardware_egress.fib_sh_nhinfo_KEYS")
	proto.RegisterType((*FibShNhinfoPwheExt)(nil), "cisco_ios_xr_fib_common_oper.fib.nodes.node.protocols.protocol.vrfs.vrf.nh_info_detail_hardware_egress.nh_info_special_detail_hardware_egress.nh_info_special_discard_detail_hardware_egress.fib_sh_nhinfo_pwhe_ext")
	proto.RegisterType((*FibShFibObjBase)(nil), "cisco_ios_xr_fib_common_oper.fib.nodes.node.protocols.protocol.vrfs.vrf.nh_info_detail_hardware_egress.nh_info_special_detail_hardware_egress.nh_info_special_discard_detail_hardware_egress.fib_sh_fib_obj_base")
	proto.RegisterType((*FibShExtBase)(nil), "cisco_ios_xr_fib_common_oper.fib.nodes.node.protocols.protocol.vrfs.vrf.nh_info_detail_hardware_egress.nh_info_special_detail_hardware_egress.nh_info_special_discard_detail_hardware_egress.fib_sh_ext_base")
	proto.RegisterType((*FibShNhinfoExtRepDet)(nil), "cisco_ios_xr_fib_common_oper.fib.nodes.node.protocols.protocol.vrfs.vrf.nh_info_detail_hardware_egress.nh_info_special_detail_hardware_egress.nh_info_special_discard_detail_hardware_egress.fib_sh_nhinfo_ext_rep_det")
	proto.RegisterType((*FibShNhinfoExtTepDet)(nil), "cisco_ios_xr_fib_common_oper.fib.nodes.node.protocols.protocol.vrfs.vrf.nh_info_detail_hardware_egress.nh_info_special_detail_hardware_egress.nh_info_special_discard_detail_hardware_egress.fib_sh_nhinfo_ext_tep_det")
	proto.RegisterType((*FibShNhinfoExtCmnDet)(nil), "cisco_ios_xr_fib_common_oper.fib.nodes.node.protocols.protocol.vrfs.vrf.nh_info_detail_hardware_egress.nh_info_special_detail_hardware_egress.nh_info_special_discard_detail_hardware_egress.fib_sh_nhinfo_ext_cmn_det")
	proto.RegisterType((*FibShNhinfoExtDet)(nil), "cisco_ios_xr_fib_common_oper.fib.nodes.node.protocols.protocol.vrfs.vrf.nh_info_detail_hardware_egress.nh_info_special_detail_hardware_egress.nh_info_special_discard_detail_hardware_egress.fib_sh_nhinfo_ext_det")
	proto.RegisterType((*FibShNhinfoExt)(nil), "cisco_ios_xr_fib_common_oper.fib.nodes.node.protocols.protocol.vrfs.vrf.nh_info_detail_hardware_egress.nh_info_special_detail_hardware_egress.nh_info_special_discard_detail_hardware_egress.fib_sh_nhinfo_ext")
	proto.RegisterType((*FibShNhinfo)(nil), "cisco_ios_xr_fib_common_oper.fib.nodes.node.protocols.protocol.vrfs.vrf.nh_info_detail_hardware_egress.nh_info_special_detail_hardware_egress.nh_info_special_discard_detail_hardware_egress.fib_sh_nhinfo")
}

func init() { proto.RegisterFile("fib_sh_nhinfo.proto", fileDescriptor_aef39e804ffbecc2) }

var fileDescriptor_aef39e804ffbecc2 = []byte{

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

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

// Code generated by protoc-gen-go. DO NOT EDIT.
// source: fib_sh_nhinfo.proto

package cisco_ios_xr_fib_common_oper_fib_nodes_node_protocols_protocol_vrfs_vrf_nh_info_detail_hardware_egress_nh_info_special_detail_hardware_egress_nh_info_special_discard_detail_hardware_egress

import (
	fmt "fmt"
	proto "github.com/golang/protobuf/proto"
	math "math"
)

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

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

type FibShNhinfo_KEYS struct {
	NodeName             string   `protobuf:"bytes,1,opt,name=node_name,json=nodeName,proto3" json:"node_name,omitempty"`
	ProtocolName         string   `protobuf:"bytes,2,opt,name=protocol_name,json=protocolName,proto3" json:"protocol_name,omitempty"`
	VrfName              string   `protobuf:"bytes,3,opt,name=vrf_name,json=vrfName,proto3" json:"vrf_name,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

func (m *FibShNhinfo_KEYS) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FibShNhinfo_KEYS.Unmarshal(m, b)
}
func (m *FibShNhinfo_KEYS) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FibShNhinfo_KEYS.Marshal(b, m, deterministic)
}
func (m *FibShNhinfo_KEYS) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FibShNhinfo_KEYS.Merge(m, src)
}
func (m *FibShNhinfo_KEYS) XXX_Size() int {
	return xxx_messageInfo_FibShNhinfo_KEYS.Size(m)
}
func (m *FibShNhinfo_KEYS) XXX_DiscardUnknown() {
	xxx_messageInfo_FibShNhinfo_KEYS.DiscardUnknown(m)
}

var xxx_messageInfo_FibShNhinfo_KEYS proto.InternalMessageInfo

func (m *FibShNhinfo_KEYS) GetNodeName() string {
	if m != nil {
		return m.NodeName
	}
	return ""
}

func (m *FibShNhinfo_KEYS) GetProtocolName() string {
	if m != nil {
		return m.ProtocolName
	}
	return ""
}

func (m *FibShNhinfo_KEYS) GetVrfName() string {
	if m != nil {
		return m.VrfName
	}
	return ""
}

type FibShNhinfoPwheExt struct {
	PwheAdjacencyClientData uint32   `protobuf:"varint,1,opt,name=pwhe_adjacency_client_data,json=pwheAdjacencyClientData,proto3" json:"pwhe_adjacency_client_data,omitempty"`
	Vctype                  uint32   `protobuf:"varint,2,opt,name=vctype,proto3" json:"vctype,omitempty"`
	VcInternalLabel         uint32   `protobuf:"varint,3,opt,name=vc_internal_label,json=vcInternalLabel,proto3" json:"vc_internal_label,omitempty"`
	CwEnabled               bool     `protobuf:"varint,4,opt,name=cw_enabled,json=cwEnabled,proto3" json:"cw_enabled,omitempty"`
	L2OverheadBytes         uint32   `protobuf:"varint,5,opt,name=l2_overhead_bytes,json=l2OverheadBytes,proto3" json:"l2_overhead_bytes,omitempty"`
	Dot1QVlanTag            uint32   `protobuf:"varint,6,opt,name=dot1q_vlan_tag,json=dot1qVlanTag,proto3" json:"dot1q_vlan_tag,omitempty"`
	XXX_NoUnkeyedLiteral    struct{} `json:"-"`
	XXX_unrecognized        []byte   `json:"-"`
	XXX_sizecache           int32    `json:"-"`
}

func (m *FibShNhinfoPwheExt) Reset()         { *m = FibShNhinfoPwheExt{} }
func (m *FibShNhinfoPwheExt) String() string { return proto.CompactTextString(m) }
func (*FibShNhinfoPwheExt) ProtoMessage()    {}
func (*FibShNhinfoPwheExt) Descriptor() ([]byte, []int) {
	return fileDescriptor_aef39e804ffbecc2, []int{1}
}

func (m *FibShNhinfoPwheExt) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FibShNhinfoPwheExt.Unmarshal(m, b)
}
func (m *FibShNhinfoPwheExt) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FibShNhinfoPwheExt.Marshal(b, m, deterministic)
}
func (m *FibShNhinfoPwheExt) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FibShNhinfoPwheExt.Merge(m, src)
}
func (m *FibShNhinfoPwheExt) XXX_Size() int {
	return xxx_messageInfo_FibShNhinfoPwheExt.Size(m)
}
func (m *FibShNhinfoPwheExt) XXX_DiscardUnknown() {
	xxx_messageInfo_FibShNhinfoPwheExt.DiscardUnknown(m)
}

var xxx_messageInfo_FibShNhinfoPwheExt proto.InternalMessageInfo

func (m *FibShNhinfoPwheExt) GetPwheAdjacencyClientData() uint32 {
	if m != nil {
		return m.PwheAdjacencyClientData
	}
	return 0
}

func (m *FibShNhinfoPwheExt) GetVctype() uint32 {
	if m != nil {
		return m.Vctype
	}
	return 0
}

func (m *FibShNhinfoPwheExt) GetVcInternalLabel() uint32 {
	if m != nil {
		return m.VcInternalLabel
	}
	return 0
}

func (m *FibShNhinfoPwheExt) GetCwEnabled() bool {
	if m != nil {
		return m.CwEnabled
	}
	return false
}

func (m *FibShNhinfoPwheExt) GetL2OverheadBytes() uint32 {
	if m != nil {
		return m.L2OverheadBytes
	}
	return 0
}

func (m *FibShNhinfoPwheExt) GetDot1QVlanTag() uint32 {
	if m != nil {
		return m.Dot1QVlanTag
	}
	return 0
}

type FibShFibObjBase struct {
	ObjectReferenceCount uint32   `protobuf:"varint,1,opt,name=object_reference_count,json=objectReferenceCount,proto3" json:"object_reference_count,omitempty"`
	ObjectFlags          uint32   `protobuf:"varint,2,opt,name=object_flags,json=objectFlags,proto3" json:"object_flags,omitempty"`
	ObjectType           uint32   `protobuf:"varint,3,opt,name=object_type,json=objectType,proto3" json:"object_type,omitempty"`
	ObjectTimeStamp      uint64   `protobuf:"varint,4,opt,name=object_time_stamp,json=objectTimeStamp,proto3" json:"object_time_stamp,omitempty"`
	ObjectPointer        uint64   `protobuf:"varint,5,opt,name=object_pointer,json=objectPointer,proto3" json:"object_pointer,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *FibShFibObjBase) Reset()         { *m = FibShFibObjBase{} }
func (m *FibShFibObjBase) String() string { return proto.CompactTextString(m) }
func (*FibShFibObjBase) ProtoMessage()    {}
func (*FibShFibObjBase) Descriptor() ([]byte, []int) {
	return fileDescriptor_aef39e804ffbecc2, []int{2}
}

func (m *FibShFibObjBase) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FibShFibObjBase.Unmarshal(m, b)
}
func (m *FibShFibObjBase) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FibShFibObjBase.Marshal(b, m, deterministic)
}
func (m *FibShFibObjBase) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FibShFibObjBase.Merge(m, src)
}
func (m *FibShFibObjBase) XXX_Size() int {
	return xxx_messageInfo_FibShFibObjBase.Size(m)
}
func (m *FibShFibObjBase) XXX_DiscardUnknown() {
	xxx_messageInfo_FibShFibObjBase.DiscardUnknown(m)
}

var xxx_messageInfo_FibShFibObjBase proto.InternalMessageInfo

func (m *FibShFibObjBase) GetObjectReferenceCount() uint32 {
	if m != nil {
		return m.ObjectReferenceCount
	}
	return 0
}

func (m *FibShFibObjBase) GetObjectFlags() uint32 {
	if m != nil {
		return m.ObjectFlags
	}
	return 0
}

func (m *FibShFibObjBase) GetObjectType() uint32 {
	if m != nil {
		return m.ObjectType
	}
	return 0
}

func (m *FibShFibObjBase) GetObjectTimeStamp() uint64 {
	if m != nil {
		return m.ObjectTimeStamp
	}
	return 0
}

func (m *FibShFibObjBase) GetObjectPointer() uint64 {
	if m != nil {
		return m.ObjectPointer
	}
	return 0
}

type FibShExtBase struct {
	ObjectBase           *FibShFibObjBase `protobuf:"bytes,1,opt,name=object_base,json=objectBase,proto3" json:"object_base,omitempty"`
	ParentObjectPointer  uint64           `protobuf:"varint,2,opt,name=parent_object_pointer,json=parentObjectPointer,proto3" json:"parent_object_pointer,omitempty"`
	BackObjectPointer    uint64           `protobuf:"varint,3,opt,name=back_object_pointer,json=backObjectPointer,proto3" json:"back_object_pointer,omitempty"`
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

func (m *FibShExtBase) Reset()         { *m = FibShExtBase{} }
func (m *FibShExtBase) String() string { return proto.CompactTextString(m) }
func (*FibShExtBase) ProtoMessage()    {}
func (*FibShExtBase) Descriptor() ([]byte, []int) {
	return fileDescriptor_aef39e804ffbecc2, []int{3}
}

func (m *FibShExtBase) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FibShExtBase.Unmarshal(m, b)
}
func (m *FibShExtBase) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FibShExtBase.Marshal(b, m, deterministic)
}
func (m *FibShExtBase) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FibShExtBase.Merge(m, src)
}
func (m *FibShExtBase) XXX_Size() int {
	return xxx_messageInfo_FibShExtBase.Size(m)
}
func (m *FibShExtBase) XXX_DiscardUnknown() {
	xxx_messageInfo_FibShExtBase.DiscardUnknown(m)
}

var xxx_messageInfo_FibShExtBase proto.InternalMessageInfo

func (m *FibShExtBase) GetObjectBase() *FibShFibObjBase {
	if m != nil {
		return m.ObjectBase
	}
	return nil
}

func (m *FibShExtBase) GetParentObjectPointer() uint64 {
	if m != nil {
		return m.ParentObjectPointer
	}
	return 0
}

func (m *FibShExtBase) GetBackObjectPointer() uint64 {
	if m != nil {
		return m.BackObjectPointer
	}
	return 0
}

type FibShNhinfoExtRepDet struct {
	NhInfoReplicatedType      uint32   `protobuf:"varint,1,opt,name=nh_info_replicated_type,json=nhInfoReplicatedType,proto3" json:"nh_info_replicated_type,omitempty"`
	NhInfoReplicatedNhId      uint32   `protobuf:"varint,2,opt,name=nh_info_replicated_nh_id,json=nhInfoReplicatedNhId,proto3" json:"nh_info_replicated_nh_id,omitempty"`
	NhInfoReplicatedInterface string   `protobuf:"bytes,3,opt,name=nh_info_replicated_interface,json=nhInfoReplicatedInterface,proto3" json:"nh_info_replicated_interface,omitempty"`
	XXX_NoUnkeyedLiteral      struct{} `json:"-"`
	XXX_unrecognized          []byte   `json:"-"`
	XXX_sizecache             int32    `json:"-"`
}

func (m *FibShNhinfoExtRepDet) Reset()         { *m = FibShNhinfoExtRepDet{} }
func (m *FibShNhinfoExtRepDet) String() string { return proto.CompactTextString(m) }
func (*FibShNhinfoExtRepDet) ProtoMessage()    {}
func (*FibShNhinfoExtRepDet) Descriptor() ([]byte, []int) {
	return fileDescriptor_aef39e804ffbecc2, []int{4}
}

func (m *FibShNhinfoExtRepDet) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FibShNhinfoExtRepDet.Unmarshal(m, b)
}
func (m *FibShNhinfoExtRepDet) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FibShNhinfoExtRepDet.Marshal(b, m, deterministic)
}
func (m *FibShNhinfoExtRepDet) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FibShNhinfoExtRepDet.Merge(m, src)
}
func (m *FibShNhinfoExtRepDet) XXX_Size() int {
	return xxx_messageInfo_FibShNhinfoExtRepDet.Size(m)
}
func (m *FibShNhinfoExtRepDet) XXX_DiscardUnknown() {
	xxx_messageInfo_FibShNhinfoExtRepDet.DiscardUnknown(m)
}

var xxx_messageInfo_FibShNhinfoExtRepDet proto.InternalMessageInfo

func (m *FibShNhinfoExtRepDet) GetNhInfoReplicatedType() uint32 {
	if m != nil {
		return m.NhInfoReplicatedType
	}
	return 0
}

func (m *FibShNhinfoExtRepDet) GetNhInfoReplicatedNhId() uint32 {
	if m != nil {
		return m.NhInfoReplicatedNhId
	}
	return 0
}

func (m *FibShNhinfoExtRepDet) GetNhInfoReplicatedInterface() string {
	if m != nil {
		return m.NhInfoReplicatedInterface
	}
	return ""
}

type FibShNhinfoExtTepDet struct {
	NhInfoTepType        uint32   `protobuf:"varint,1,opt,name=nh_info_tep_type,json=nhInfoTepType,proto3" json:"nh_info_tep_type,omitempty"`
	IsTepSinglePass      bool     `protobuf:"varint,2,opt,name=is_tep_single_pass,json=isTepSinglePass,proto3" json:"is_tep_single_pass,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *FibShNhinfoExtTepDet) Reset()         { *m = FibShNhinfoExtTepDet{} }
func (m *FibShNhinfoExtTepDet) String() string { return proto.CompactTextString(m) }
func (*FibShNhinfoExtTepDet) ProtoMessage()    {}
func (*FibShNhinfoExtTepDet) Descriptor() ([]byte, []int) {
	return fileDescriptor_aef39e804ffbecc2, []int{5}
}

func (m *FibShNhinfoExtTepDet) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FibShNhinfoExtTepDet.Unmarshal(m, b)
}
func (m *FibShNhinfoExtTepDet) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FibShNhinfoExtTepDet.Marshal(b, m, deterministic)
}
func (m *FibShNhinfoExtTepDet) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FibShNhinfoExtTepDet.Merge(m, src)
}
func (m *FibShNhinfoExtTepDet) XXX_Size() int {
	return xxx_messageInfo_FibShNhinfoExtTepDet.Size(m)
}
func (m *FibShNhinfoExtTepDet) XXX_DiscardUnknown() {
	xxx_messageInfo_FibShNhinfoExtTepDet.DiscardUnknown(m)
}

var xxx_messageInfo_FibShNhinfoExtTepDet proto.InternalMessageInfo

func (m *FibShNhinfoExtTepDet) GetNhInfoTepType() uint32 {
	if m != nil {
		return m.NhInfoTepType
	}
	return 0
}

func (m *FibShNhinfoExtTepDet) GetIsTepSinglePass() bool {
	if m != nil {
		return m.IsTepSinglePass
	}
	return false
}

type FibShNhinfoExtCmnDet struct {
	Type                 string                `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
	SnecdNhr             *FibShNhinfoExtRepDet `protobuf:"bytes,2,opt,name=snecd_nhr,json=snecdNhr,proto3" json:"snecd_nhr,omitempty"`
	SnecdTep             *FibShNhinfoExtTepDet `protobuf:"bytes,3,opt,name=snecd_tep,json=snecdTep,proto3" json:"snecd_tep,omitempty"`
	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
	XXX_unrecognized     []byte                `json:"-"`
	XXX_sizecache        int32                 `json:"-"`
}

func (m *FibShNhinfoExtCmnDet) Reset()         { *m = FibShNhinfoExtCmnDet{} }
func (m *FibShNhinfoExtCmnDet) String() string { return proto.CompactTextString(m) }
func (*FibShNhinfoExtCmnDet) ProtoMessage()    {}
func (*FibShNhinfoExtCmnDet) Descriptor() ([]byte, []int) {
	return fileDescriptor_aef39e804ffbecc2, []int{6}
}

func (m *FibShNhinfoExtCmnDet) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FibShNhinfoExtCmnDet.Unmarshal(m, b)
}
func (m *FibShNhinfoExtCmnDet) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FibShNhinfoExtCmnDet.Marshal(b, m, deterministic)
}
func (m *FibShNhinfoExtCmnDet) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FibShNhinfoExtCmnDet.Merge(m, src)
}
func (m *FibShNhinfoExtCmnDet) XXX_Size() int {
	return xxx_messageInfo_FibShNhinfoExtCmnDet.Size(m)
}
func (m *FibShNhinfoExtCmnDet) XXX_DiscardUnknown() {
	xxx_messageInfo_FibShNhinfoExtCmnDet.DiscardUnknown(m)
}

var xxx_messageInfo_FibShNhinfoExtCmnDet proto.InternalMessageInfo

func (m *FibShNhinfoExtCmnDet) GetType() string {
	if m != nil {
		return m.Type
	}
	return ""
}

func (m *FibShNhinfoExtCmnDet) GetSnecdNhr() *FibShNhinfoExtRepDet {
	if m != nil {
		return m.SnecdNhr
	}
	return nil
}

func (m *FibShNhinfoExtCmnDet) GetSnecdTep() *FibShNhinfoExtTepDet {
	if m != nil {
		return m.SnecdTep
	}
	return nil
}

type FibShNhinfoExtDet struct {
	NhInfoExtensionBase   *FibShExtBase         `protobuf:"bytes,1,opt,name=nh_info_extension_base,json=nhInfoExtensionBase,proto3" json:"nh_info_extension_base,omitempty"`
	NhInfoExtensionDetail *FibShNhinfoExtCmnDet `protobuf:"bytes,2,opt,name=nh_info_extension_detail,json=nhInfoExtensionDetail,proto3" json:"nh_info_extension_detail,omitempty"`
	XXX_NoUnkeyedLiteral  struct{}              `json:"-"`
	XXX_unrecognized      []byte                `json:"-"`
	XXX_sizecache         int32                 `json:"-"`
}

func (m *FibShNhinfoExtDet) Reset()         { *m = FibShNhinfoExtDet{} }
func (m *FibShNhinfoExtDet) String() string { return proto.CompactTextString(m) }
func (*FibShNhinfoExtDet) ProtoMessage()    {}
func (*FibShNhinfoExtDet) Descriptor() ([]byte, []int) {
	return fileDescriptor_aef39e804ffbecc2, []int{7}
}

func (m *FibShNhinfoExtDet) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FibShNhinfoExtDet.Unmarshal(m, b)
}
func (m *FibShNhinfoExtDet) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FibShNhinfoExtDet.Marshal(b, m, deterministic)
}
func (m *FibShNhinfoExtDet) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FibShNhinfoExtDet.Merge(m, src)
}
func (m *FibShNhinfoExtDet) XXX_Size() int {
	return xxx_messageInfo_FibShNhinfoExtDet.Size(m)
}
func (m *FibShNhinfoExtDet) XXX_DiscardUnknown() {
	xxx_messageInfo_FibShNhinfoExtDet.DiscardUnknown(m)
}

var xxx_messageInfo_FibShNhinfoExtDet proto.InternalMessageInfo

func (m *FibShNhinfoExtDet) GetNhInfoExtensionBase() *FibShExtBase {
	if m != nil {
		return m.NhInfoExtensionBase
	}
	return nil
}

func (m *FibShNhinfoExtDet) GetNhInfoExtensionDetail() *FibShNhinfoExtCmnDet {
	if m != nil {
		return m.NhInfoExtensionDetail
	}
	return nil
}

type FibShNhinfoExt struct {
	NhInfoExtensionDetail []*FibShNhinfoExtDet `protobuf:"bytes,1,rep,name=nh_info_extension_detail,json=nhInfoExtensionDetail,proto3" json:"nh_info_extension_detail,omitempty"`
	XXX_NoUnkeyedLiteral  struct{}             `json:"-"`
	XXX_unrecognized      []byte               `json:"-"`
	XXX_sizecache         int32                `json:"-"`
}

func (m *FibShNhinfoExt) Reset()         { *m = FibShNhinfoExt{} }
func (m *FibShNhinfoExt) String() string { return proto.CompactTextString(m) }
func (*FibShNhinfoExt) ProtoMessage()    {}
func (*FibShNhinfoExt) Descriptor() ([]byte, []int) {
	return fileDescriptor_aef39e804ffbecc2, []int{8}
}

func (m *FibShNhinfoExt) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FibShNhinfoExt.Unmarshal(m, b)
}
func (m *FibShNhinfoExt) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FibShNhinfoExt.Marshal(b, m, deterministic)
}
func (m *FibShNhinfoExt) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FibShNhinfoExt.Merge(m, src)
}
func (m *FibShNhinfoExt) XXX_Size() int {
	return xxx_messageInfo_FibShNhinfoExt.Size(m)
}
func (m *FibShNhinfoExt) XXX_DiscardUnknown() {
	xxx_messageInfo_FibShNhinfoExt.DiscardUnknown(m)
}

var xxx_messageInfo_FibShNhinfoExt proto.InternalMessageInfo

func (m *FibShNhinfoExt) GetNhInfoExtensionDetail() []*FibShNhinfoExtDet {
	if m != nil {
		return m.NhInfoExtensionDetail
	}
	return nil
}

type FibShNhinfo struct {
	SiLinkProto           uint32              `protobuf:"varint,50,opt,name=si_link_proto,json=siLinkProto,proto3" json:"si_link_proto,omitempty"`
	SiNhinfo              uint32              `protobuf:"varint,51,opt,name=si_nhinfo,json=siNhinfo,proto3" json:"si_nhinfo,omitempty"`
	SiNhtype              uint32              `protobuf:"varint,52,opt,name=si_nhtype,json=siNhtype,proto3" json:"si_nhtype,omitempty"`
	SiIfh                 uint32              `protobuf:"varint,53,opt,name=si_ifh,json=siIfh,proto3" json:"si_ifh,omitempty"`
	SiPfiInterfaceType    uint32              `protobuf:"varint,54,opt,name=si_pfi_interface_type,json=siPfiInterfaceType,proto3" json:"si_pfi_interface_type,omitempty"`
	SiAdjPtr              uint32              `protobuf:"varint,55,opt,name=si_adj_ptr,json=siAdjPtr,proto3" json:"si_adj_ptr,omitempty"`
	SiAdjPresent          bool                `protobuf:"varint,56,opt,name=si_adj_present,json=siAdjPresent,proto3" json:"si_adj_present,omitempty"`
	SiSpecialType         uint32              `protobuf:"varint,57,opt,name=si_special_type,json=siSpecialType,proto3" json:"si_special_type,omitempty"`
	SiRefcount            uint32              `protobuf:"varint,58,opt,name=si_refcount,json=siRefcount,proto3" json:"si_refcount,omitempty"`
	SiFlags               uint32              `protobuf:"varint,59,opt,name=si_flags,json=siFlags,proto3" json:"si_flags,omitempty"`
	SiAdjIf               uint32              `protobuf:"varint,60,opt,name=si_adj_if,json=siAdjIf,proto3" json:"si_adj_if,omitempty"`
	SiExtPfx              []uint32            `protobuf:"varint,61,rep,packed,name=si_ext_pfx,json=siExtPfx,proto3" json:"si_ext_pfx,omitempty"`
	SiExtPfxLen           uint32              `protobuf:"varint,62,opt,name=si_ext_pfx_len,json=siExtPfxLen,proto3" json:"si_ext_pfx_len,omitempty"`
	SiExtPfxProto         uint32              `protobuf:"varint,63,opt,name=si_ext_pfx_proto,json=siExtPfxProto,proto3" json:"si_ext_pfx_proto,omitempty"`
	SiAdjAddress          []uint32            `protobuf:"varint,64,rep,packed,name=si_adj_address,json=siAdjAddress,proto3" json:"si_adj_address,omitempty"`
	SiAdjAddrlen          uint32              `protobuf:"varint,65,opt,name=si_adj_addrlen,json=siAdjAddrlen,proto3" json:"si_adj_addrlen,omitempty"`
	SiAdjAddrProto        uint32              `protobuf:"varint,66,opt,name=si_adj_addr_proto,json=siAdjAddrProto,proto3" json:"si_adj_addr_proto,omitempty"`
	SiAdjRwLen            uint32              `protobuf:"varint,67,opt,name=si_adj_rw_len,json=siAdjRwLen,proto3" json:"si_adj_rw_len,omitempty"`
	SiAdjRw               []uint32            `protobuf:"varint,68,rep,packed,name=si_adj_rw,json=siAdjRw,proto3" json:"si_adj_rw,omitempty"`
	SiDepNhinfoType       uint32              `protobuf:"varint,69,opt,name=si_dep_nhinfo_type,json=siDepNhinfoType,proto3" json:"si_dep_nhinfo_type,omitempty"`
	SiDepNhinfo           uint32              `protobuf:"varint,70,opt,name=si_dep_nhinfo,json=siDepNhinfo,proto3" json:"si_dep_nhinfo,omitempty"`
	SiDepNhinfoIfh        uint32              `protobuf:"varint,71,opt,name=si_dep_nhinfo_ifh,json=siDepNhinfoIfh,proto3" json:"si_dep_nhinfo_ifh,omitempty"`
	SiBkupFrr             uint32              `protobuf:"varint,72,opt,name=si_bkup_frr,json=siBkupFrr,proto3" json:"si_bkup_frr,omitempty"`
	SiProtectFrr          uint32              `protobuf:"varint,73,opt,name=si_protect_frr,json=siProtectFrr,proto3" json:"si_protect_frr,omitempty"`
	SiBkupNhinfo          uint32              `protobuf:"varint,74,opt,name=si_bkup_nhinfo,json=siBkupNhinfo,proto3" json:"si_bkup_nhinfo,omitempty"`
	SiBkupIfh             uint32              `protobuf:"varint,75,opt,name=si_bkup_ifh,json=siBkupIfh,proto3" json:"si_bkup_ifh,omitempty"`
	SiBkupAddr            []uint32            `protobuf:"varint,76,rep,packed,name=si_bkup_addr,json=siBkupAddr,proto3" json:"si_bkup_addr,omitempty"`
	SiBkupAddrlen         uint32              `protobuf:"varint,77,opt,name=si_bkup_addrlen,json=siBkupAddrlen,proto3" json:"si_bkup_addrlen,omitempty"`
	SiBkupAddrProto       uint32              `protobuf:"varint,78,opt,name=si_bkup_addr_proto,json=siBkupAddrProto,proto3" json:"si_bkup_addr_proto,omitempty"`
	SiFrrActive           bool                `protobuf:"varint,79,opt,name=si_frr_active,json=siFrrActive,proto3" json:"si_frr_active,omitempty"`
	SiAttrIsExtMgd        bool                `protobuf:"varint,80,opt,name=si_attr_is_ext_mgd,json=siAttrIsExtMgd,proto3" json:"si_attr_is_ext_mgd,omitempty"`
	SiAttrIsIncomp        bool                `protobuf:"varint,81,opt,name=si_attr_is_incomp,json=siAttrIsIncomp,proto3" json:"si_attr_is_incomp,omitempty"`
	SiAttrIsTunnel        bool                `protobuf:"varint,82,opt,name=si_attr_is_tunnel,json=siAttrIsTunnel,proto3" json:"si_attr_is_tunnel,omitempty"`
	SiAttrIsTunnelSrte    bool                `protobuf:"varint,83,opt,name=si_attr_is_tunnel_srte,json=siAttrIsTunnelSrte,proto3" json:"si_attr_is_tunnel_srte,omitempty"`
	SiAttrIsGreTunnel     bool                `protobuf:"varint,84,opt,name=si_attr_is_gre_tunnel,json=siAttrIsGreTunnel,proto3" json:"si_attr_is_gre_tunnel,omitempty"`
	SiGreTi               uint64              `protobuf:"varint,85,opt,name=si_gre_ti,json=siGreTi,proto3" json:"si_gre_ti,omitempty"`
	SiGreTiFlags          uint32              `protobuf:"varint,86,opt,name=si_gre_ti_flags,json=siGreTiFlags,proto3" json:"si_gre_ti_flags,omitempty"`
	SiGreTiRefcnt         uint32              `protobuf:"varint,87,opt,name=si_gre_ti_refcnt,json=siGreTiRefcnt,proto3" json:"si_gre_ti_refcnt,omitempty"`
	SiGreTosPropagate     bool                `protobuf:"varint,88,opt,name=si_gre_tos_propagate,json=siGreTosPropagate,proto3" json:"si_gre_tos_propagate,omitempty"`
	SiHardware            string              `protobuf:"bytes,89,opt,name=si_hardware,json=siHardware,proto3" json:"si_hardware,omitempty"`
	SiNhinfoPtr           uint32              `protobuf:"varint,90,opt,name=si_nhinfo_ptr,json=siNhinfoPtr,proto3" json:"si_nhinfo_ptr,omitempty"`
	SiFnbIdbPtr           uint32              `protobuf:"varint,91,opt,name=si_fnb_idb_ptr,json=siFnbIdbPtr,proto3" json:"si_fnb_idb_ptr,omitempty"`
	SiAncIfh              uint32              `protobuf:"varint,92,opt,name=si_anc_ifh,json=siAncIfh,proto3" json:"si_anc_ifh,omitempty"`
	SiPwhe                *FibShNhinfoPwheExt `protobuf:"bytes,93,opt,name=si_pwhe,json=siPwhe,proto3" json:"si_pwhe,omitempty"`
	SiGreTiResolvingLeafp uint64              `protobuf:"varint,94,opt,name=si_gre_ti_resolving_leafp,json=siGreTiResolvingLeafp,proto3" json:"si_gre_ti_resolving_leafp,omitempty"`
	SiGreDestAddr         string              `protobuf:"bytes,95,opt,name=si_gre_dest_addr,json=siGreDestAddr,proto3" json:"si_gre_dest_addr,omitempty"`
	SiNhid                uint32              `protobuf:"varint,96,opt,name=si_nhid,json=siNhid,proto3" json:"si_nhid,omitempty"`
	SiUpdTs               uint64              `protobuf:"varint,97,opt,name=si_upd_ts,json=siUpdTs,proto3" json:"si_upd_ts,omitempty"`
	NhInfoExtension       *FibShNhinfoExt     `protobuf:"bytes,98,opt,name=nh_info_extension,json=nhInfoExtension,proto3" json:"nh_info_extension,omitempty"`
	XXX_NoUnkeyedLiteral  struct{}            `json:"-"`
	XXX_unrecognized      []byte              `json:"-"`
	XXX_sizecache         int32               `json:"-"`
}

func (m *FibShNhinfo) Reset()         { *m = FibShNhinfo{} }
func (m *FibShNhinfo) String() string { return proto.CompactTextString(m) }
func (*FibShNhinfo) ProtoMessage()    {}
func (*FibShNhinfo) Descriptor() ([]byte, []int) {
	return fileDescriptor_aef39e804ffbecc2, []int{9}
}

func (m *FibShNhinfo) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FibShNhinfo.Unmarshal(m, b)
}
func (m *FibShNhinfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FibShNhinfo.Marshal(b, m, deterministic)
}
func (m *FibShNhinfo) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FibShNhinfo.Merge(m, src)
}
func (m *FibShNhinfo) XXX_Size() int {
	return xxx_messageInfo_FibShNhinfo.Size(m)
}
func (m *FibShNhinfo) XXX_DiscardUnknown() {
	xxx_messageInfo_FibShNhinfo.DiscardUnknown(m)
}

var xxx_messageInfo_FibShNhinfo proto.InternalMessageInfo

func (m *FibShNhinfo) GetSiLinkProto() uint32 {
	if m != nil {
		return m.SiLinkProto
	}
	return 0
}

func (m *FibShNhinfo) GetSiNhinfo() uint32 {
	if m != nil {
		return m.SiNhinfo
	}
	return 0
}

func (m *FibShNhinfo) GetSiNhtype() uint32 {
	if m != nil {
		return m.SiNhtype
	}
	return 0
}

func (m *FibShNhinfo) GetSiIfh() uint32 {
	if m != nil {
		return m.SiIfh
	}
	return 0
}

func (m *FibShNhinfo) GetSiPfiInterfaceType() uint32 {
	if m != nil {
		return m.SiPfiInterfaceType
	}
	return 0
}

func (m *FibShNhinfo) GetSiAdjPtr() uint32 {
	if m != nil {
		return m.SiAdjPtr
	}
	return 0
}

func (m *FibShNhinfo) GetSiAdjPresent() bool {
	if m != nil {
		return m.SiAdjPresent
	}
	return false
}

func (m *FibShNhinfo) GetSiSpecialType() uint32 {
	if m != nil {
		return m.SiSpecialType
	}
	return 0
}

func (m *FibShNhinfo) GetSiRefcount() uint32 {
	if m != nil {
		return m.SiRefcount
	}
	return 0
}

func (m *FibShNhinfo) GetSiFlags() uint32 {
	if m != nil {
		return m.SiFlags
	}
	return 0
}

func (m *FibShNhinfo) GetSiAdjIf() uint32 {
	if m != nil {
		return m.SiAdjIf
	}
	return 0
}

func (m *FibShNhinfo) GetSiExtPfx() []uint32 {
	if m != nil {
		return m.SiExtPfx
	}
	return nil
}

func (m *FibShNhinfo) GetSiExtPfxLen() uint32 {
	if m != nil {
		return m.SiExtPfxLen
	}
	return 0
}

func (m *FibShNhinfo) GetSiExtPfxProto() uint32 {
	if m != nil {
		return m.SiExtPfxProto
	}
	return 0
}

func (m *FibShNhinfo) GetSiAdjAddress() []uint32 {
	if m != nil {
		return m.SiAdjAddress
	}
	return nil
}

func (m *FibShNhinfo) GetSiAdjAddrlen() uint32 {
	if m != nil {
		return m.SiAdjAddrlen
	}
	return 0
}

func (m *FibShNhinfo) GetSiAdjAddrProto() uint32 {
	if m != nil {
		return m.SiAdjAddrProto
	}
	return 0
}

func (m *FibShNhinfo) GetSiAdjRwLen() uint32 {
	if m != nil {
		return m.SiAdjRwLen
	}
	return 0
}

func (m *FibShNhinfo) GetSiAdjRw() []uint32 {
	if m != nil {
		return m.SiAdjRw
	}
	return nil
}

func (m *FibShNhinfo) GetSiDepNhinfoType() uint32 {
	if m != nil {
		return m.SiDepNhinfoType
	}
	return 0
}

func (m *FibShNhinfo) GetSiDepNhinfo() uint32 {
	if m != nil {
		return m.SiDepNhinfo
	}
	return 0
}

func (m *FibShNhinfo) GetSiDepNhinfoIfh() uint32 {
	if m != nil {
		return m.SiDepNhinfoIfh
	}
	return 0
}

func (m *FibShNhinfo) GetSiBkupFrr() uint32 {
	if m != nil {
		return m.SiBkupFrr
	}
	return 0
}

func (m *FibShNhinfo) GetSiProtectFrr() uint32 {
	if m != nil {
		return m.SiProtectFrr
	}
	return 0
}

func (m *FibShNhinfo) GetSiBkupNhinfo() uint32 {
	if m != nil {
		return m.SiBkupNhinfo
	}
	return 0
}

func (m *FibShNhinfo) GetSiBkupIfh() uint32 {
	if m != nil {
		return m.SiBkupIfh
	}
	return 0
}

func (m *FibShNhinfo) GetSiBkupAddr() []uint32 {
	if m != nil {
		return m.SiBkupAddr
	}
	return nil
}

func (m *FibShNhinfo) GetSiBkupAddrlen() uint32 {
	if m != nil {
		return m.SiBkupAddrlen
	}
	return 0
}

func (m *FibShNhinfo) GetSiBkupAddrProto() uint32 {
	if m != nil {
		return m.SiBkupAddrProto
	}
	return 0
}

func (m *FibShNhinfo) GetSiFrrActive() bool {
	if m != nil {
		return m.SiFrrActive
	}
	return false
}

func (m *FibShNhinfo) GetSiAttrIsExtMgd() bool {
	if m != nil {
		return m.SiAttrIsExtMgd
	}
	return false
}

func (m *FibShNhinfo) GetSiAttrIsIncomp() bool {
	if m != nil {
		return m.SiAttrIsIncomp
	}
	return false
}

func (m *FibShNhinfo) GetSiAttrIsTunnel() bool {
	if m != nil {
		return m.SiAttrIsTunnel
	}
	return false
}

func (m *FibShNhinfo) GetSiAttrIsTunnelSrte() bool {
	if m != nil {
		return m.SiAttrIsTunnelSrte
	}
	return false
}

func (m *FibShNhinfo) GetSiAttrIsGreTunnel() bool {
	if m != nil {
		return m.SiAttrIsGreTunnel
	}
	return false
}

func (m *FibShNhinfo) GetSiGreTi() uint64 {
	if m != nil {
		return m.SiGreTi
	}
	return 0
}

func (m *FibShNhinfo) GetSiGreTiFlags() uint32 {
	if m != nil {
		return m.SiGreTiFlags
	}
	return 0
}

func (m *FibShNhinfo) GetSiGreTiRefcnt() uint32 {
	if m != nil {
		return m.SiGreTiRefcnt
	}
	return 0
}

func (m *FibShNhinfo) GetSiGreTosPropagate() bool {
	if m != nil {
		return m.SiGreTosPropagate
	}
	return false
}

func (m *FibShNhinfo) GetSiHardware() string {
	if m != nil {
		return m.SiHardware
	}
	return ""
}

func (m *FibShNhinfo) GetSiNhinfoPtr() uint32 {
	if m != nil {
		return m.SiNhinfoPtr
	}
	return 0
}

func (m *FibShNhinfo) GetSiFnbIdbPtr() uint32 {
	if m != nil {
		return m.SiFnbIdbPtr
	}
	return 0
}

func (m *FibShNhinfo) GetSiAncIfh() uint32 {
	if m != nil {
		return m.SiAncIfh
	}
	return 0
}

func (m *FibShNhinfo) GetSiPwhe() *FibShNhinfoPwheExt {
	if m != nil {
		return m.SiPwhe
	}
	return nil
}

func (m *FibShNhinfo) GetSiGreTiResolvingLeafp() uint64 {
	if m != nil {
		return m.SiGreTiResolvingLeafp
	}
	return 0
}

func (m *FibShNhinfo) GetSiGreDestAddr() string {
	if m != nil {
		return m.SiGreDestAddr
	}
	return ""
}

func (m *FibShNhinfo) GetSiNhid() uint32 {
	if m != nil {
		return m.SiNhid
	}
	return 0
}

func (m *FibShNhinfo) GetSiUpdTs() uint64 {
	if m != nil {
		return m.SiUpdTs
	}
	return 0
}

func (m *FibShNhinfo) GetNhInfoExtension() *FibShNhinfoExt {
	if m != nil {
		return m.NhInfoExtension
	}
	return nil
}

func init() {
	proto.RegisterType((*FibShNhinfo_KEYS)(nil), "cisco_ios_xr_fib_common_oper.fib.nodes.node.protocols.protocol.vrfs.vrf.nh_info_detail_hardware_egress.nh_info_special_detail_hardware_egress.nh_info_special_discard_detail_hardware_egress.fib_sh_nhinfo_KEYS")
	proto.RegisterType((*FibShNhinfoPwheExt)(nil), "cisco_ios_xr_fib_common_oper.fib.nodes.node.protocols.protocol.vrfs.vrf.nh_info_detail_hardware_egress.nh_info_special_detail_hardware_egress.nh_info_special_discard_detail_hardware_egress.fib_sh_nhinfo_pwhe_ext")
	proto.RegisterType((*FibShFibObjBase)(nil), "cisco_ios_xr_fib_common_oper.fib.nodes.node.protocols.protocol.vrfs.vrf.nh_info_detail_hardware_egress.nh_info_special_detail_hardware_egress.nh_info_special_discard_detail_hardware_egress.fib_sh_fib_obj_base")
	proto.RegisterType((*FibShExtBase)(nil), "cisco_ios_xr_fib_common_oper.fib.nodes.node.protocols.protocol.vrfs.vrf.nh_info_detail_hardware_egress.nh_info_special_detail_hardware_egress.nh_info_special_discard_detail_hardware_egress.fib_sh_ext_base")
	proto.RegisterType((*FibShNhinfoExtRepDet)(nil), "cisco_ios_xr_fib_common_oper.fib.nodes.node.protocols.protocol.vrfs.vrf.nh_info_detail_hardware_egress.nh_info_special_detail_hardware_egress.nh_info_special_discard_detail_hardware_egress.fib_sh_nhinfo_ext_rep_det")
	proto.RegisterType((*FibShNhinfoExtTepDet)(nil), "cisco_ios_xr_fib_common_oper.fib.nodes.node.protocols.protocol.vrfs.vrf.nh_info_detail_hardware_egress.nh_info_special_detail_hardware_egress.nh_info_special_discard_detail_hardware_egress.fib_sh_nhinfo_ext_tep_det")
	proto.RegisterType((*FibShNhinfoExtCmnDet)(nil), "cisco_ios_xr_fib_common_oper.fib.nodes.node.protocols.protocol.vrfs.vrf.nh_info_detail_hardware_egress.nh_info_special_detail_hardware_egress.nh_info_special_discard_detail_hardware_egress.fib_sh_nhinfo_ext_cmn_det")
	proto.RegisterType((*FibShNhinfoExtDet)(nil), "cisco_ios_xr_fib_common_oper.fib.nodes.node.protocols.protocol.vrfs.vrf.nh_info_detail_hardware_egress.nh_info_special_detail_hardware_egress.nh_info_special_discard_detail_hardware_egress.fib_sh_nhinfo_ext_det")
	proto.RegisterType((*FibShNhinfoExt)(nil), "cisco_ios_xr_fib_common_oper.fib.nodes.node.protocols.protocol.vrfs.vrf.nh_info_detail_hardware_egress.nh_info_special_detail_hardware_egress.nh_info_special_discard_detail_hardware_egress.fib_sh_nhinfo_ext")
	proto.RegisterType((*FibShNhinfo)(nil), "cisco_ios_xr_fib_common_oper.fib.nodes.node.protocols.protocol.vrfs.vrf.nh_info_detail_hardware_egress.nh_info_special_detail_hardware_egress.nh_info_special_discard_detail_hardware_egress.fib_sh_nhinfo")
}

func init() { proto.RegisterFile("fib_sh_nhinfo.proto", fileDescriptor_aef39e804ffbecc2) }

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