// Code generated by protoc-gen-go. DO NOT EDIT. // source: ctrl.proto package ctrl_pb import ( fmt "fmt" proto "github.com/golang/protobuf/proto" timestamp "github.com/golang/protobuf/ptypes/timestamp" 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 ContentType int32 const ( ContentType_Zero ContentType = 0 ContentType_SessionRequestType ContentType = 1000 ContentType_SessionSuccessType ContentType = 1001 ContentType_DialType ContentType = 1002 ContentType_LinkType ContentType = 1003 ContentType_FaultType ContentType = 1004 ContentType_RouteType ContentType = 1005 ContentType_UnrouteType ContentType = 1006 ContentType_MetricsType ContentType = 1007 ContentType_TogglePipeTracesRequestType ContentType = 1008 ContentType_TraceEventType ContentType = 1010 ContentType_BindRequestType ContentType = 1011 ContentType_BindResponseType ContentType = 1012 ContentType_InspectRequestType ContentType = 1013 ContentType_InspectResponseType ContentType = 1014 ContentType_StartXgressType ContentType = 1015 ContentType_SessionFailedType ContentType = 1016 ) var ContentType_name = map[int32]string{ 0: "Zero", 1000: "SessionRequestType", 1001: "SessionSuccessType", 1002: "DialType", 1003: "LinkType", 1004: "FaultType", 1005: "RouteType", 1006: "UnrouteType", 1007: "MetricsType", 1008: "TogglePipeTracesRequestType", 1010: "TraceEventType", 1011: "BindRequestType", 1012: "BindResponseType", 1013: "InspectRequestType", 1014: "InspectResponseType", 1015: "StartXgressType", 1016: "SessionFailedType", } var ContentType_value = map[string]int32{ "Zero": 0, "SessionRequestType": 1000, "SessionSuccessType": 1001, "DialType": 1002, "LinkType": 1003, "FaultType": 1004, "RouteType": 1005, "UnrouteType": 1006, "MetricsType": 1007, "TogglePipeTracesRequestType": 1008, "TraceEventType": 1010, "BindRequestType": 1011, "BindResponseType": 1012, "InspectRequestType": 1013, "InspectResponseType": 1014, "StartXgressType": 1015, "SessionFailedType": 1016, } func (x ContentType) String() string { return proto.EnumName(ContentType_name, int32(x)) } func (ContentType) EnumDescriptor() ([]byte, []int) { return fileDescriptor_a0572e205f89e843, []int{0} } type BindType int32 const ( BindType_Bind BindType = 0 BindType_Unbind BindType = 1 ) var BindType_name = map[int32]string{ 0: "Bind", 1: "Unbind", } var BindType_value = map[string]int32{ "Bind": 0, "Unbind": 1, } func (x BindType) String() string { return proto.EnumName(BindType_name, int32(x)) } func (BindType) EnumDescriptor() ([]byte, []int) { return fileDescriptor_a0572e205f89e843, []int{1} } type FaultSubject int32 const ( FaultSubject_IngressFault FaultSubject = 0 FaultSubject_EgressFault FaultSubject = 1 FaultSubject_LinkFault FaultSubject = 2 ) var FaultSubject_name = map[int32]string{ 0: "IngressFault", 1: "EgressFault", 2: "LinkFault", } var FaultSubject_value = map[string]int32{ "IngressFault": 0, "EgressFault": 1, "LinkFault": 2, } func (x FaultSubject) String() string { return proto.EnumName(FaultSubject_name, int32(x)) } func (FaultSubject) EnumDescriptor() ([]byte, []int) { return fileDescriptor_a0572e205f89e843, []int{2} } type MetricsSourceType int32 const ( MetricsSourceType_Ingress MetricsSourceType = 0 MetricsSourceType_Egress MetricsSourceType = 1 MetricsSourceType_Internal MetricsSourceType = 2 ) var MetricsSourceType_name = map[int32]string{ 0: "Ingress", 1: "Egress", 2: "Internal", } var MetricsSourceType_value = map[string]int32{ "Ingress": 0, "Egress": 1, "Internal": 2, } func (x MetricsSourceType) String() string { return proto.EnumName(MetricsSourceType_name, int32(x)) } func (MetricsSourceType) EnumDescriptor() ([]byte, []int) { return fileDescriptor_a0572e205f89e843, []int{3} } type SessionRequest struct { IngressId string `protobuf:"bytes,1,opt,name=ingressId,proto3" json:"ingressId,omitempty"` ServiceId string `protobuf:"bytes,2,opt,name=serviceId,proto3" json:"serviceId,omitempty"` PeerData map[uint32][]byte `protobuf:"bytes,3,rep,name=peerData,proto3" json:"peerData,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } func (m *SessionRequest) Reset() { *m = SessionRequest{} } func (m *SessionRequest) String() string { return proto.CompactTextString(m) } func (*SessionRequest) ProtoMessage() {} func (*SessionRequest) Descriptor() ([]byte, []int) { return fileDescriptor_a0572e205f89e843, []int{0} } func (m *SessionRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SessionRequest.Unmarshal(m, b) } func (m *SessionRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_SessionRequest.Marshal(b, m, deterministic) } func (m *SessionRequest) XXX_Merge(src proto.Message) { xxx_messageInfo_SessionRequest.Merge(m, src) } func (m *SessionRequest) XXX_Size() int { return xxx_messageInfo_SessionRequest.Size(m) } func (m *SessionRequest) XXX_DiscardUnknown() { xxx_messageInfo_SessionRequest.DiscardUnknown(m) } var xxx_messageInfo_SessionRequest proto.InternalMessageInfo func (m *SessionRequest) GetIngressId() string { if m != nil { return m.IngressId } return "" } func (m *SessionRequest) GetServiceId() string { if m != nil { return m.ServiceId } return "" } func (m *SessionRequest) GetPeerData() map[uint32][]byte { if m != nil { return m.PeerData } return nil } type BindRequest struct { BindType BindType `protobuf:"varint,1,opt,name=bindType,proto3,enum=ctrl.pb.BindType" json:"bindType,omitempty"` Token string `protobuf:"bytes,2,opt,name=token,proto3" json:"token,omitempty"` ServiceId string `protobuf:"bytes,3,opt,name=serviceId,proto3" json:"serviceId,omitempty"` PeerData map[uint32][]byte `protobuf:"bytes,4,rep,name=peerData,proto3" json:"peerData,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } func (m *BindRequest) Reset() { *m = BindRequest{} } func (m *BindRequest) String() string { return proto.CompactTextString(m) } func (*BindRequest) ProtoMessage() {} func (*BindRequest) Descriptor() ([]byte, []int) { return fileDescriptor_a0572e205f89e843, []int{1} } func (m *BindRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_BindRequest.Unmarshal(m, b) } func (m *BindRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_BindRequest.Marshal(b, m, deterministic) } func (m *BindRequest) XXX_Merge(src proto.Message) { xxx_messageInfo_BindRequest.Merge(m, src) } func (m *BindRequest) XXX_Size() int { return xxx_messageInfo_BindRequest.Size(m) } func (m *BindRequest) XXX_DiscardUnknown() { xxx_messageInfo_BindRequest.DiscardUnknown(m) } var xxx_messageInfo_BindRequest proto.InternalMessageInfo func (m *BindRequest) GetBindType() BindType { if m != nil { return m.BindType } return BindType_Bind } func (m *BindRequest) GetToken() string { if m != nil { return m.Token } return "" } func (m *BindRequest) GetServiceId() string { if m != nil { return m.ServiceId } return "" } func (m *BindRequest) GetPeerData() map[uint32][]byte { if m != nil { return m.PeerData } return nil } type BindResponse struct { Success bool `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"` Message string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } func (m *BindResponse) Reset() { *m = BindResponse{} } func (m *BindResponse) String() string { return proto.CompactTextString(m) } func (*BindResponse) ProtoMessage() {} func (*BindResponse) Descriptor() ([]byte, []int) { return fileDescriptor_a0572e205f89e843, []int{2} } func (m *BindResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_BindResponse.Unmarshal(m, b) } func (m *BindResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_BindResponse.Marshal(b, m, deterministic) } func (m *BindResponse) XXX_Merge(src proto.Message) { xxx_messageInfo_BindResponse.Merge(m, src) } func (m *BindResponse) XXX_Size() int { return xxx_messageInfo_BindResponse.Size(m) } func (m *BindResponse) XXX_DiscardUnknown() { xxx_messageInfo_BindResponse.DiscardUnknown(m) } var xxx_messageInfo_BindResponse proto.InternalMessageInfo func (m *BindResponse) GetSuccess() bool { if m != nil { return m.Success } return false } func (m *BindResponse) GetMessage() string { if m != nil { return m.Message } return "" } type Dial struct { Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` Address string `protobuf:"bytes,2,opt,name=address,proto3" json:"address,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } func (m *Dial) Reset() { *m = Dial{} } func (m *Dial) String() string { return proto.CompactTextString(m) } func (*Dial) ProtoMessage() {} func (*Dial) Descriptor() ([]byte, []int) { return fileDescriptor_a0572e205f89e843, []int{3} } func (m *Dial) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Dial.Unmarshal(m, b) } func (m *Dial) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_Dial.Marshal(b, m, deterministic) } func (m *Dial) XXX_Merge(src proto.Message) { xxx_messageInfo_Dial.Merge(m, src) } func (m *Dial) XXX_Size() int { return xxx_messageInfo_Dial.Size(m) } func (m *Dial) XXX_DiscardUnknown() { xxx_messageInfo_Dial.DiscardUnknown(m) } var xxx_messageInfo_Dial proto.InternalMessageInfo func (m *Dial) GetId() string { if m != nil { return m.Id } return "" } func (m *Dial) GetAddress() string { if m != nil { return m.Address } return "" } type Link struct { Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } func (m *Link) Reset() { *m = Link{} } func (m *Link) String() string { return proto.CompactTextString(m) } func (*Link) ProtoMessage() {} func (*Link) Descriptor() ([]byte, []int) { return fileDescriptor_a0572e205f89e843, []int{4} } func (m *Link) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Link.Unmarshal(m, b) } func (m *Link) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_Link.Marshal(b, m, deterministic) } func (m *Link) XXX_Merge(src proto.Message) { xxx_messageInfo_Link.Merge(m, src) } func (m *Link) XXX_Size() int { return xxx_messageInfo_Link.Size(m) } func (m *Link) XXX_DiscardUnknown() { xxx_messageInfo_Link.DiscardUnknown(m) } var xxx_messageInfo_Link proto.InternalMessageInfo func (m *Link) GetId() string { if m != nil { return m.Id } return "" } type Fault struct { Subject FaultSubject `protobuf:"varint,1,opt,name=subject,proto3,enum=ctrl.pb.FaultSubject" json:"subject,omitempty"` Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } func (m *Fault) Reset() { *m = Fault{} } func (m *Fault) String() string { return proto.CompactTextString(m) } func (*Fault) ProtoMessage() {} func (*Fault) Descriptor() ([]byte, []int) { return fileDescriptor_a0572e205f89e843, []int{5} } func (m *Fault) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Fault.Unmarshal(m, b) } func (m *Fault) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_Fault.Marshal(b, m, deterministic) } func (m *Fault) XXX_Merge(src proto.Message) { xxx_messageInfo_Fault.Merge(m, src) } func (m *Fault) XXX_Size() int { return xxx_messageInfo_Fault.Size(m) } func (m *Fault) XXX_DiscardUnknown() { xxx_messageInfo_Fault.DiscardUnknown(m) } var xxx_messageInfo_Fault proto.InternalMessageInfo func (m *Fault) GetSubject() FaultSubject { if m != nil { return m.Subject } return FaultSubject_IngressFault } func (m *Fault) GetId() string { if m != nil { return m.Id } return "" } type Route struct { SessionId string `protobuf:"bytes,1,opt,name=sessionId,proto3" json:"sessionId,omitempty"` Egress *Route_Egress `protobuf:"bytes,2,opt,name=egress,proto3" json:"egress,omitempty"` Forwards []*Route_Forward `protobuf:"bytes,3,rep,name=forwards,proto3" json:"forwards,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } func (m *Route) Reset() { *m = Route{} } func (m *Route) String() string { return proto.CompactTextString(m) } func (*Route) ProtoMessage() {} func (*Route) Descriptor() ([]byte, []int) { return fileDescriptor_a0572e205f89e843, []int{6} } func (m *Route) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Route.Unmarshal(m, b) } func (m *Route) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_Route.Marshal(b, m, deterministic) } func (m *Route) XXX_Merge(src proto.Message) { xxx_messageInfo_Route.Merge(m, src) } func (m *Route) XXX_Size() int { return xxx_messageInfo_Route.Size(m) } func (m *Route) XXX_DiscardUnknown() { xxx_messageInfo_Route.DiscardUnknown(m) } var xxx_messageInfo_Route proto.InternalMessageInfo func (m *Route) GetSessionId() string { if m != nil { return m.SessionId } return "" } func (m *Route) GetEgress() *Route_Egress { if m != nil { return m.Egress } return nil } func (m *Route) GetForwards() []*Route_Forward { if m != nil { return m.Forwards } return nil } type Route_Egress struct { Binding string `protobuf:"bytes,1,opt,name=binding,proto3" json:"binding,omitempty"` Address string `protobuf:"bytes,2,opt,name=address,proto3" json:"address,omitempty"` Destination string `protobuf:"bytes,3,opt,name=destination,proto3" json:"destination,omitempty"` PeerData map[uint32][]byte `protobuf:"bytes,4,rep,name=peerData,proto3" json:"peerData,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } func (m *Route_Egress) Reset() { *m = Route_Egress{} } func (m *Route_Egress) String() string { return proto.CompactTextString(m) } func (*Route_Egress) ProtoMessage() {} func (*Route_Egress) Descriptor() ([]byte, []int) { return fileDescriptor_a0572e205f89e843, []int{6, 0} } func (m *Route_Egress) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Route_Egress.Unmarshal(m, b) } func (m *Route_Egress) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_Route_Egress.Marshal(b, m, deterministic) } func (m *Route_Egress) XXX_Merge(src proto.Message) { xxx_messageInfo_Route_Egress.Merge(m, src) } func (m *Route_Egress) XXX_Size() int { return xxx_messageInfo_Route_Egress.Size(m) } func (m *Route_Egress) XXX_DiscardUnknown() { xxx_messageInfo_Route_Egress.DiscardUnknown(m) } var xxx_messageInfo_Route_Egress proto.InternalMessageInfo func (m *Route_Egress) GetBinding() string { if m != nil { return m.Binding } return "" } func (m *Route_Egress) GetAddress() string { if m != nil { return m.Address } return "" } func (m *Route_Egress) GetDestination() string { if m != nil { return m.Destination } return "" } func (m *Route_Egress) GetPeerData() map[uint32][]byte { if m != nil { return m.PeerData } return nil } type Route_Forward struct { SrcAddress string `protobuf:"bytes,1,opt,name=srcAddress,proto3" json:"srcAddress,omitempty"` DstAddress string `protobuf:"bytes,2,opt,name=dstAddress,proto3" json:"dstAddress,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } func (m *Route_Forward) Reset() { *m = Route_Forward{} } func (m *Route_Forward) String() string { return proto.CompactTextString(m) } func (*Route_Forward) ProtoMessage() {} func (*Route_Forward) Descriptor() ([]byte, []int) { return fileDescriptor_a0572e205f89e843, []int{6, 1} } func (m *Route_Forward) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Route_Forward.Unmarshal(m, b) } func (m *Route_Forward) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_Route_Forward.Marshal(b, m, deterministic) } func (m *Route_Forward) XXX_Merge(src proto.Message) { xxx_messageInfo_Route_Forward.Merge(m, src) } func (m *Route_Forward) XXX_Size() int { return xxx_messageInfo_Route_Forward.Size(m) } func (m *Route_Forward) XXX_DiscardUnknown() { xxx_messageInfo_Route_Forward.DiscardUnknown(m) } var xxx_messageInfo_Route_Forward proto.InternalMessageInfo func (m *Route_Forward) GetSrcAddress() string { if m != nil { return m.SrcAddress } return "" } func (m *Route_Forward) GetDstAddress() string { if m != nil { return m.DstAddress } return "" } type Unroute struct { SessionId string `protobuf:"bytes,1,opt,name=sessionId,proto3" json:"sessionId,omitempty"` Now bool `protobuf:"varint,2,opt,name=now,proto3" json:"now,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } func (m *Unroute) Reset() { *m = Unroute{} } func (m *Unroute) String() string { return proto.CompactTextString(m) } func (*Unroute) ProtoMessage() {} func (*Unroute) Descriptor() ([]byte, []int) { return fileDescriptor_a0572e205f89e843, []int{7} } func (m *Unroute) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Unroute.Unmarshal(m, b) } func (m *Unroute) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_Unroute.Marshal(b, m, deterministic) } func (m *Unroute) XXX_Merge(src proto.Message) { xxx_messageInfo_Unroute.Merge(m, src) } func (m *Unroute) XXX_Size() int { return xxx_messageInfo_Unroute.Size(m) } func (m *Unroute) XXX_DiscardUnknown() { xxx_messageInfo_Unroute.DiscardUnknown(m) } var xxx_messageInfo_Unroute proto.InternalMessageInfo func (m *Unroute) GetSessionId() string { if m != nil { return m.SessionId } return "" } func (m *Unroute) GetNow() bool { if m != nil { return m.Now } return false } type MetricsMessage struct { SourceType MetricsSourceType `protobuf:"varint,1,opt,name=sourceType,proto3,enum=ctrl.pb.MetricsSourceType" json:"sourceType,omitempty"` SourceId string `protobuf:"bytes,2,opt,name=sourceId,proto3" json:"sourceId,omitempty"` Timestamp *timestamp.Timestamp `protobuf:"bytes,3,opt,name=timestamp,proto3" json:"timestamp,omitempty"` Tags map[string]string `protobuf:"bytes,4,rep,name=tags,proto3" json:"tags,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` IntValues map[string]int64 `protobuf:"bytes,5,rep,name=intValues,proto3" json:"intValues,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` FloatValues map[string]float64 `protobuf:"bytes,6,rep,name=floatValues,proto3" json:"floatValues,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"fixed64,2,opt,name=value,proto3"` Meters map[string]*MetricsMessage_Meter `protobuf:"bytes,7,rep,name=meters,proto3" json:"meters,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` Histograms map[string]*MetricsMessage_Histogram `protobuf:"bytes,8,rep,name=histograms,proto3" json:"histograms,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` IntervalCounters map[string]*MetricsMessage_IntervalCounter `protobuf:"bytes,9,rep,name=intervalCounters,proto3" json:"intervalCounters,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } func (m *MetricsMessage) Reset() { *m = MetricsMessage{} } func (m *MetricsMessage) String() string { return proto.CompactTextString(m) } func (*MetricsMessage) ProtoMessage() {} func (*MetricsMessage) Descriptor() ([]byte, []int) { return fileDescriptor_a0572e205f89e843, []int{8} } func (m *MetricsMessage) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MetricsMessage.Unmarshal(m, b) } func (m *MetricsMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_MetricsMessage.Marshal(b, m, deterministic) } func (m *MetricsMessage) XXX_Merge(src proto.Message) { xxx_messageInfo_MetricsMessage.Merge(m, src) } func (m *MetricsMessage) XXX_Size() int { return xxx_messageInfo_MetricsMessage.Size(m) } func (m *MetricsMessage) XXX_DiscardUnknown() { xxx_messageInfo_MetricsMessage.DiscardUnknown(m) } var xxx_messageInfo_MetricsMessage proto.InternalMessageInfo func (m *MetricsMessage) GetSourceType() MetricsSourceType { if m != nil { return m.SourceType } return MetricsSourceType_Ingress } func (m *MetricsMessage) GetSourceId() string { if m != nil { return m.SourceId } return "" } func (m *MetricsMessage) GetTimestamp() *timestamp.Timestamp { if m != nil { return m.Timestamp } return nil } func (m *MetricsMessage) GetTags() map[string]string { if m != nil { return m.Tags } return nil } func (m *MetricsMessage) GetIntValues() map[string]int64 { if m != nil { return m.IntValues } return nil } func (m *MetricsMessage) GetFloatValues() map[string]float64 { if m != nil { return m.FloatValues } return nil } func (m *MetricsMessage) GetMeters() map[string]*MetricsMessage_Meter { if m != nil { return m.Meters } return nil } func (m *MetricsMessage) GetHistograms() map[string]*MetricsMessage_Histogram { if m != nil { return m.Histograms } return nil } func (m *MetricsMessage) GetIntervalCounters() map[string]*MetricsMessage_IntervalCounter { if m != nil { return m.IntervalCounters } return nil } type MetricsMessage_Meter struct { Count int64 `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"` M1Rate float64 `protobuf:"fixed64,2,opt,name=m1Rate,proto3" json:"m1Rate,omitempty"` M5Rate float64 `protobuf:"fixed64,3,opt,name=m5Rate,proto3" json:"m5Rate,omitempty"` M15Rate float64 `protobuf:"fixed64,4,opt,name=m15Rate,proto3" json:"m15Rate,omitempty"` MeanRate float64 `protobuf:"fixed64,5,opt,name=meanRate,proto3" json:"meanRate,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } func (m *MetricsMessage_Meter) Reset() { *m = MetricsMessage_Meter{} } func (m *MetricsMessage_Meter) String() string { return proto.CompactTextString(m) } func (*MetricsMessage_Meter) ProtoMessage() {} func (*MetricsMessage_Meter) Descriptor() ([]byte, []int) { return fileDescriptor_a0572e205f89e843, []int{8, 6} } func (m *MetricsMessage_Meter) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MetricsMessage_Meter.Unmarshal(m, b) } func (m *MetricsMessage_Meter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_MetricsMessage_Meter.Marshal(b, m, deterministic) } func (m *MetricsMessage_Meter) XXX_Merge(src proto.Message) { xxx_messageInfo_MetricsMessage_Meter.Merge(m, src) } func (m *MetricsMessage_Meter) XXX_Size() int { return xxx_messageInfo_MetricsMessage_Meter.Size(m) } func (m *MetricsMessage_Meter) XXX_DiscardUnknown() { xxx_messageInfo_MetricsMessage_Meter.DiscardUnknown(m) } var xxx_messageInfo_MetricsMessage_Meter proto.InternalMessageInfo func (m *MetricsMessage_Meter) GetCount() int64 { if m != nil { return m.Count } return 0 } func (m *MetricsMessage_Meter) GetM1Rate() float64 { if m != nil { return m.M1Rate } return 0 } func (m *MetricsMessage_Meter) GetM5Rate() float64 { if m != nil { return m.M5Rate } return 0 } func (m *MetricsMessage_Meter) GetM15Rate() float64 { if m != nil { return m.M15Rate } return 0 } func (m *MetricsMessage_Meter) GetMeanRate() float64 { if m != nil { return m.MeanRate } return 0 } type MetricsMessage_Histogram struct { Count int64 `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"` Max int64 `protobuf:"varint,2,opt,name=max,proto3" json:"max,omitempty"` Mean float64 `protobuf:"fixed64,3,opt,name=mean,proto3" json:"mean,omitempty"` Min int64 `protobuf:"varint,4,opt,name=min,proto3" json:"min,omitempty"` StdDev float64 `protobuf:"fixed64,5,opt,name=stdDev,proto3" json:"stdDev,omitempty"` Variance float64 `protobuf:"fixed64,6,opt,name=variance,proto3" json:"variance,omitempty"` P50 float64 `protobuf:"fixed64,7,opt,name=p50,proto3" json:"p50,omitempty"` P75 float64 `protobuf:"fixed64,8,opt,name=p75,proto3" json:"p75,omitempty"` P95 float64 `protobuf:"fixed64,9,opt,name=p95,proto3" json:"p95,omitempty"` P99 float64 `protobuf:"fixed64,10,opt,name=p99,proto3" json:"p99,omitempty"` P999 float64 `protobuf:"fixed64,11,opt,name=p999,proto3" json:"p999,omitempty"` P9999 float64 `protobuf:"fixed64,12,opt,name=p9999,proto3" json:"p9999,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } func (m *MetricsMessage_Histogram) Reset() { *m = MetricsMessage_Histogram{} } func (m *MetricsMessage_Histogram) String() string { return proto.CompactTextString(m) } func (*MetricsMessage_Histogram) ProtoMessage() {} func (*MetricsMessage_Histogram) Descriptor() ([]byte, []int) { return fileDescriptor_a0572e205f89e843, []int{8, 7} } func (m *MetricsMessage_Histogram) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MetricsMessage_Histogram.Unmarshal(m, b) } func (m *MetricsMessage_Histogram) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_MetricsMessage_Histogram.Marshal(b, m, deterministic) } func (m *MetricsMessage_Histogram) XXX_Merge(src proto.Message) { xxx_messageInfo_MetricsMessage_Histogram.Merge(m, src) } func (m *MetricsMessage_Histogram) XXX_Size() int { return xxx_messageInfo_MetricsMessage_Histogram.Size(m) } func (m *MetricsMessage_Histogram) XXX_DiscardUnknown() { xxx_messageInfo_MetricsMessage_Histogram.DiscardUnknown(m) } var xxx_messageInfo_MetricsMessage_Histogram proto.InternalMessageInfo func (m *MetricsMessage_Histogram) GetCount() int64 { if m != nil { return m.Count } return 0 } func (m *MetricsMessage_Histogram) GetMax() int64 { if m != nil { return m.Max } return 0 } func (m *MetricsMessage_Histogram) GetMean() float64 { if m != nil { return m.Mean } return 0 } func (m *MetricsMessage_Histogram) GetMin() int64 { if m != nil { return m.Min } return 0 } func (m *MetricsMessage_Histogram) GetStdDev() float64 { if m != nil { return m.StdDev } return 0 } func (m *MetricsMessage_Histogram) GetVariance() float64 { if m != nil { return m.Variance } return 0 } func (m *MetricsMessage_Histogram) GetP50() float64 { if m != nil { return m.P50 } return 0 } func (m *MetricsMessage_Histogram) GetP75() float64 { if m != nil { return m.P75 } return 0 } func (m *MetricsMessage_Histogram) GetP95() float64 { if m != nil { return m.P95 } return 0 } func (m *MetricsMessage_Histogram) GetP99() float64 { if m != nil { return m.P99 } return 0 } func (m *MetricsMessage_Histogram) GetP999() float64 { if m != nil { return m.P999 } return 0 } func (m *MetricsMessage_Histogram) GetP9999() float64 { if m != nil { return m.P9999 } return 0 } type MetricsMessage_IntervalCounter struct { IntervalLength uint64 `protobuf:"varint,1,opt,name=intervalLength,proto3" json:"intervalLength,omitempty"` Buckets []*MetricsMessage_IntervalBucket `protobuf:"bytes,2,rep,name=buckets,proto3" json:"buckets,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } func (m *MetricsMessage_IntervalCounter) Reset() { *m = MetricsMessage_IntervalCounter{} } func (m *MetricsMessage_IntervalCounter) String() string { return proto.CompactTextString(m) } func (*MetricsMessage_IntervalCounter) ProtoMessage() {} func (*MetricsMessage_IntervalCounter) Descriptor() ([]byte, []int) { return fileDescriptor_a0572e205f89e843, []int{8, 8} } func (m *MetricsMessage_IntervalCounter) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MetricsMessage_IntervalCounter.Unmarshal(m, b) } func (m *MetricsMessage_IntervalCounter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_MetricsMessage_IntervalCounter.Marshal(b, m, deterministic) } func (m *MetricsMessage_IntervalCounter) XXX_Merge(src proto.Message) { xxx_messageInfo_MetricsMessage_IntervalCounter.Merge(m, src) } func (m *MetricsMessage_IntervalCounter) XXX_Size() int { return xxx_messageInfo_MetricsMessage_IntervalCounter.Size(m) } func (m *MetricsMessage_IntervalCounter) XXX_DiscardUnknown() { xxx_messageInfo_MetricsMessage_IntervalCounter.DiscardUnknown(m) } var xxx_messageInfo_MetricsMessage_IntervalCounter proto.InternalMessageInfo func (m *MetricsMessage_IntervalCounter) GetIntervalLength() uint64 { if m != nil { return m.IntervalLength } return 0 } func (m *MetricsMessage_IntervalCounter) GetBuckets() []*MetricsMessage_IntervalBucket { if m != nil { return m.Buckets } return nil } type MetricsMessage_IntervalBucket struct { IntervalStartUTC int64 `protobuf:"varint,1,opt,name=intervalStartUTC,proto3" json:"intervalStartUTC,omitempty"` Values map[string]uint64 `protobuf:"bytes,3,rep,name=values,proto3" json:"values,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } func (m *MetricsMessage_IntervalBucket) Reset() { *m = MetricsMessage_IntervalBucket{} } func (m *MetricsMessage_IntervalBucket) String() string { return proto.CompactTextString(m) } func (*MetricsMessage_IntervalBucket) ProtoMessage() {} func (*MetricsMessage_IntervalBucket) Descriptor() ([]byte, []int) { return fileDescriptor_a0572e205f89e843, []int{8, 9} } func (m *MetricsMessage_IntervalBucket) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MetricsMessage_IntervalBucket.Unmarshal(m, b) } func (m *MetricsMessage_IntervalBucket) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_MetricsMessage_IntervalBucket.Marshal(b, m, deterministic) } func (m *MetricsMessage_IntervalBucket) XXX_Merge(src proto.Message) { xxx_messageInfo_MetricsMessage_IntervalBucket.Merge(m, src) } func (m *MetricsMessage_IntervalBucket) XXX_Size() int { return xxx_messageInfo_MetricsMessage_IntervalBucket.Size(m) } func (m *MetricsMessage_IntervalBucket) XXX_DiscardUnknown() { xxx_messageInfo_MetricsMessage_IntervalBucket.DiscardUnknown(m) } var xxx_messageInfo_MetricsMessage_IntervalBucket proto.InternalMessageInfo func (m *MetricsMessage_IntervalBucket) GetIntervalStartUTC() int64 { if m != nil { return m.IntervalStartUTC } return 0 } func (m *MetricsMessage_IntervalBucket) GetValues() map[string]uint64 { if m != nil { return m.Values } return nil } type InspectRequest struct { RequestedValues []string `protobuf:"bytes,1,rep,name=requestedValues,proto3" json:"requestedValues,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } func (m *InspectRequest) Reset() { *m = InspectRequest{} } func (m *InspectRequest) String() string { return proto.CompactTextString(m) } func (*InspectRequest) ProtoMessage() {} func (*InspectRequest) Descriptor() ([]byte, []int) { return fileDescriptor_a0572e205f89e843, []int{9} } func (m *InspectRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_InspectRequest.Unmarshal(m, b) } func (m *InspectRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_InspectRequest.Marshal(b, m, deterministic) } func (m *InspectRequest) XXX_Merge(src proto.Message) { xxx_messageInfo_InspectRequest.Merge(m, src) } func (m *InspectRequest) XXX_Size() int { return xxx_messageInfo_InspectRequest.Size(m) } func (m *InspectRequest) XXX_DiscardUnknown() { xxx_messageInfo_InspectRequest.DiscardUnknown(m) } var xxx_messageInfo_InspectRequest proto.InternalMessageInfo func (m *InspectRequest) GetRequestedValues() []string { if m != nil { return m.RequestedValues } return nil } type InspectResponse struct { Success bool `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"` Errors []string `protobuf:"bytes,2,rep,name=errors,proto3" json:"errors,omitempty"` Values []*InspectResponse_InspectValue `protobuf:"bytes,3,rep,name=values,proto3" json:"values,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } func (m *InspectResponse) Reset() { *m = InspectResponse{} } func (m *InspectResponse) String() string { return proto.CompactTextString(m) } func (*InspectResponse) ProtoMessage() {} func (*InspectResponse) Descriptor() ([]byte, []int) { return fileDescriptor_a0572e205f89e843, []int{10} } func (m *InspectResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_InspectResponse.Unmarshal(m, b) } func (m *InspectResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_InspectResponse.Marshal(b, m, deterministic) } func (m *InspectResponse) XXX_Merge(src proto.Message) { xxx_messageInfo_InspectResponse.Merge(m, src) } func (m *InspectResponse) XXX_Size() int { return xxx_messageInfo_InspectResponse.Size(m) } func (m *InspectResponse) XXX_DiscardUnknown() { xxx_messageInfo_InspectResponse.DiscardUnknown(m) } var xxx_messageInfo_InspectResponse proto.InternalMessageInfo func (m *InspectResponse) GetSuccess() bool { if m != nil { return m.Success } return false } func (m *InspectResponse) GetErrors() []string { if m != nil { return m.Errors } return nil } func (m *InspectResponse) GetValues() []*InspectResponse_InspectValue { if m != nil { return m.Values } return nil } type InspectResponse_InspectValue struct { Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } func (m *InspectResponse_InspectValue) Reset() { *m = InspectResponse_InspectValue{} } func (m *InspectResponse_InspectValue) String() string { return proto.CompactTextString(m) } func (*InspectResponse_InspectValue) ProtoMessage() {} func (*InspectResponse_InspectValue) Descriptor() ([]byte, []int) { return fileDescriptor_a0572e205f89e843, []int{10, 0} } func (m *InspectResponse_InspectValue) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_InspectResponse_InspectValue.Unmarshal(m, b) } func (m *InspectResponse_InspectValue) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { return xxx_messageInfo_InspectResponse_InspectValue.Marshal(b, m, deterministic) } func (m *InspectResponse_InspectValue) XXX_Merge(src proto.Message) { xxx_messageInfo_InspectResponse_InspectValue.Merge(m, src) } func (m *InspectResponse_InspectValue) XXX_Size() int { return xxx_messageInfo_InspectResponse_InspectValue.Size(m) } func (m *InspectResponse_InspectValue) XXX_DiscardUnknown() { xxx_messageInfo_InspectResponse_InspectValue.DiscardUnknown(m) } var xxx_messageInfo_InspectResponse_InspectValue proto.InternalMessageInfo func (m *InspectResponse_InspectValue) GetName() string { if m != nil { return m.Name } return "" } func (m *InspectResponse_InspectValue) GetValue() string { if m != nil { return m.Value } return "" } func init() { proto.RegisterEnum("ctrl.pb.ContentType", ContentType_name, ContentType_value) proto.RegisterEnum("ctrl.pb.BindType", BindType_name, BindType_value) proto.RegisterEnum("ctrl.pb.FaultSubject", FaultSubject_name, FaultSubject_value) proto.RegisterEnum("ctrl.pb.MetricsSourceType", MetricsSourceType_name, MetricsSourceType_value) proto.RegisterType((*SessionRequest)(nil), "ctrl.pb.SessionRequest") proto.RegisterMapType((map[uint32][]byte)(nil), "ctrl.pb.SessionRequest.PeerDataEntry") proto.RegisterType((*BindRequest)(nil), "ctrl.pb.BindRequest") proto.RegisterMapType((map[uint32][]byte)(nil), "ctrl.pb.BindRequest.PeerDataEntry") proto.RegisterType((*BindResponse)(nil), "ctrl.pb.BindResponse") proto.RegisterType((*Dial)(nil), "ctrl.pb.Dial") proto.RegisterType((*Link)(nil), "ctrl.pb.Link") proto.RegisterType((*Fault)(nil), "ctrl.pb.Fault") proto.RegisterType((*Route)(nil), "ctrl.pb.Route") proto.RegisterType((*Route_Egress)(nil), "ctrl.pb.Route.Egress") proto.RegisterMapType((map[uint32][]byte)(nil), "ctrl.pb.Route.Egress.PeerDataEntry") proto.RegisterType((*Route_Forward)(nil), "ctrl.pb.Route.Forward") proto.RegisterType((*Unroute)(nil), "ctrl.pb.Unroute") proto.RegisterType((*MetricsMessage)(nil), "ctrl.pb.MetricsMessage") proto.RegisterMapType((map[string]float64)(nil), "ctrl.pb.MetricsMessage.FloatValuesEntry") proto.RegisterMapType((map[string]*MetricsMessage_Histogram)(nil), "ctrl.pb.MetricsMessage.HistogramsEntry") proto.RegisterMapType((map[string]int64)(nil), "ctrl.pb.MetricsMessage.IntValuesEntry") proto.RegisterMapType((map[string]*MetricsMessage_IntervalCounter)(nil), "ctrl.pb.MetricsMessage.IntervalCountersEntry") proto.RegisterMapType((map[string]*MetricsMessage_Meter)(nil), "ctrl.pb.MetricsMessage.MetersEntry") proto.RegisterMapType((map[string]string)(nil), "ctrl.pb.MetricsMessage.TagsEntry") proto.RegisterType((*MetricsMessage_Meter)(nil), "ctrl.pb.MetricsMessage.Meter") proto.RegisterType((*MetricsMessage_Histogram)(nil), "ctrl.pb.MetricsMessage.Histogram") proto.RegisterType((*MetricsMessage_IntervalCounter)(nil), "ctrl.pb.MetricsMessage.IntervalCounter") proto.RegisterType((*MetricsMessage_IntervalBucket)(nil), "ctrl.pb.MetricsMessage.IntervalBucket") proto.RegisterMapType((map[string]uint64)(nil), "ctrl.pb.MetricsMessage.IntervalBucket.ValuesEntry") proto.RegisterType((*InspectRequest)(nil), "ctrl.pb.InspectRequest") proto.RegisterType((*InspectResponse)(nil), "ctrl.pb.InspectResponse") proto.RegisterType((*InspectResponse_InspectValue)(nil), "ctrl.pb.InspectResponse.InspectValue") } func init() { proto.RegisterFile("ctrl.proto", fileDescriptor_a0572e205f89e843) } var fileDescriptor_a0572e205f89e843 = []byte{ // 1390 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x57, 0x4b, 0x73, 0x13, 0xc7, 0x13, 0x67, 0x25, 0x59, 0xab, 0xed, 0xb5, 0xe5, 0x65, 0x00, 0xff, 0xb7, 0xf4, 0xcf, 0xc3, 0x28, 0x15, 0x70, 0xb9, 0x0a, 0x01, 0xa6, 0x5c, 0x46, 0x26, 0x10, 0x30, 0xb6, 0x83, 0x29, 0xa8, 0xa2, 0xd6, 0x26, 0x45, 0x72, 0xca, 0x4a, 0x1a, 0xc4, 0xc6, 0xd2, 0xac, 0xb2, 0x33, 0x12, 0xa1, 0x72, 0xcc, 0x37, 0xca, 0x39, 0xb7, 0x5c, 0xf3, 0x11, 0xf2, 0x01, 0xf2, 0x22, 0xa1, 0xf2, 0xe4, 0x96, 0xd4, 0xf4, 0xcc, 0xae, 0x46, 0x6b, 0x19, 0x3b, 0x07, 0x4e, 0x9a, 0xfe, 0x75, 0xf7, 0x6f, 0xfa, 0x31, 0x33, 0xea, 0x05, 0x68, 0x8b, 0xa4, 0xd7, 0x18, 0x24, 0xb1, 0x88, 0x89, 0xad, 0xd6, 0xad, 0xda, 0xdb, 0xdd, 0x38, 0xee, 0xf6, 0xe8, 0x45, 0x84, 0x5b, 0xc3, 0xc7, 0x17, 0x45, 0xd4, 0xa7, 0x5c, 0x84, 0xfd, 0x81, 0xb2, 0xac, 0x7f, 0x6b, 0x41, 0x75, 0x97, 0x72, 0x1e, 0xc5, 0x2c, 0xa0, 0x9f, 0x0d, 0x29, 0x17, 0xe4, 0x0d, 0x70, 0x22, 0xd6, 0x4d, 0x28, 0xe7, 0x3b, 0x1d, 0xdf, 0x5a, 0xb4, 0x96, 0x9c, 0x60, 0x0c, 0x48, 0x2d, 0xa7, 0xc9, 0x28, 0x6a, 0xd3, 0x9d, 0x8e, 0x5f, 0x50, 0xda, 0x0c, 0x20, 0xb7, 0xa0, 0x32, 0xa0, 0x34, 0xd9, 0x0c, 0x45, 0xe8, 0x17, 0x17, 0x8b, 0x4b, 0xee, 0xca, 0xbb, 0x0d, 0x1d, 0x4b, 0x63, 0x72, 0x9b, 0xc6, 0x03, 0x6d, 0xb7, 0xc5, 0x44, 0xf2, 0x2c, 0xc8, 0xdc, 0x6a, 0xd7, 0x60, 0x6e, 0x42, 0x45, 0x3c, 0x28, 0xee, 0xd3, 0x67, 0x18, 0xc9, 0x5c, 0x20, 0x97, 0xe4, 0x34, 0xcc, 0x8c, 0xc2, 0xde, 0x90, 0xe2, 0xfe, 0xb3, 0x81, 0x12, 0xd6, 0x0b, 0x57, 0xad, 0xfa, 0x73, 0x0b, 0xdc, 0x8d, 0x88, 0x75, 0xd2, 0x5c, 0x2e, 0x40, 0xa5, 0x15, 0xb1, 0xce, 0xde, 0xb3, 0x01, 0x45, 0x82, 0xea, 0xca, 0xc9, 0x2c, 0x9e, 0x0d, 0xad, 0x08, 0x32, 0x13, 0x49, 0x2c, 0xe2, 0x7d, 0xca, 0x74, 0x62, 0x4a, 0x98, 0x4c, 0xb9, 0x98, 0x4f, 0xf9, 0x86, 0x91, 0x72, 0x09, 0x53, 0xae, 0x4f, 0x6c, 0xf1, 0x5a, 0xf3, 0xdd, 0x80, 0x59, 0xb5, 0x07, 0x1f, 0xc4, 0x8c, 0x53, 0xe2, 0x83, 0xcd, 0x87, 0xed, 0x36, 0xe5, 0x1c, 0xfd, 0x2b, 0x41, 0x2a, 0x4a, 0x4d, 0x9f, 0x72, 0x1e, 0x76, 0xa9, 0x4e, 0x2e, 0x15, 0xeb, 0x97, 0xa0, 0xb4, 0x19, 0x85, 0x3d, 0x52, 0x85, 0x42, 0x94, 0x36, 0xbc, 0x10, 0x75, 0xa4, 0x47, 0xd8, 0xe9, 0xc8, 0xb6, 0xa7, 0x1e, 0x5a, 0xac, 0x2f, 0x40, 0xe9, 0x5e, 0xc4, 0xf6, 0xf3, 0x1e, 0xf5, 0x3b, 0x30, 0xb3, 0x1d, 0x0e, 0x7b, 0x82, 0x5c, 0x94, 0x61, 0xb4, 0x3e, 0xa5, 0x6d, 0xa1, 0xab, 0x7e, 0x26, 0x2b, 0x09, 0x1a, 0xec, 0x2a, 0x65, 0x90, 0x5a, 0x69, 0xa6, 0x42, 0xc6, 0xf4, 0x55, 0x11, 0x66, 0x82, 0x78, 0x28, 0xa8, 0x2a, 0x3e, 0x1e, 0x9c, 0xf1, 0x69, 0xcc, 0x00, 0x72, 0x01, 0xca, 0xb4, 0x9b, 0x85, 0xe8, 0x1a, 0xfb, 0xa0, 0x77, 0x63, 0x0b, 0x95, 0x81, 0x36, 0x22, 0x2b, 0x50, 0x79, 0x1c, 0x27, 0x4f, 0xc3, 0xa4, 0xc3, 0xf5, 0xf1, 0x5c, 0xc8, 0x39, 0x6c, 0x2b, 0x75, 0x90, 0xd9, 0xd5, 0xbe, 0xb3, 0xa0, 0xac, 0x68, 0x64, 0x45, 0xe4, 0x51, 0x89, 0x58, 0x57, 0x47, 0x92, 0x8a, 0x87, 0xd7, 0x8a, 0x2c, 0x82, 0xdb, 0xa1, 0x5c, 0x44, 0x2c, 0x14, 0x51, 0xcc, 0xf4, 0xf1, 0x31, 0x21, 0xf2, 0xfe, 0x81, 0x03, 0xf4, 0xce, 0xd4, 0x2c, 0x5e, 0xcb, 0x09, 0xaa, 0xed, 0x80, 0xad, 0x73, 0x26, 0x6f, 0x01, 0xf0, 0xa4, 0x7d, 0x4b, 0xe7, 0xa1, 0x32, 0x34, 0x10, 0xa9, 0xef, 0x70, 0x71, 0x6b, 0x22, 0x4f, 0x03, 0xa9, 0x37, 0xc1, 0x7e, 0xc8, 0x92, 0x63, 0x74, 0xcd, 0x83, 0x22, 0x8b, 0x9f, 0x22, 0x43, 0x25, 0x90, 0xcb, 0xfa, 0xcb, 0x39, 0xa8, 0xde, 0xa7, 0x22, 0x89, 0xda, 0xfc, 0xbe, 0x3a, 0x96, 0x64, 0x1d, 0x80, 0xc7, 0xc3, 0xa4, 0x4d, 0x8d, 0xcb, 0x5b, 0xcb, 0x0a, 0xa3, 0x8d, 0x77, 0x33, 0x8b, 0xc0, 0xb0, 0x26, 0x35, 0xa8, 0x28, 0x29, 0x7b, 0xa3, 0x32, 0x99, 0x5c, 0x05, 0x27, 0x7b, 0x04, 0xb1, 0x1d, 0xee, 0x4a, 0xad, 0xa1, 0x9e, 0xc9, 0x46, 0xfa, 0x4c, 0x36, 0xf6, 0x52, 0x8b, 0x60, 0x6c, 0x4c, 0x56, 0xa1, 0x24, 0xc2, 0x2e, 0xd7, 0x4d, 0x3a, 0x9b, 0x8f, 0x45, 0x07, 0xde, 0xd8, 0x0b, 0xbb, 0x5c, 0xb5, 0x08, 0xcd, 0xc9, 0xa6, 0x7c, 0x4f, 0xc5, 0x87, 0xb2, 0xe2, 0xdc, 0x9f, 0x41, 0xdf, 0x73, 0x87, 0xf9, 0xee, 0xa4, 0x86, 0x8a, 0x60, 0xec, 0x48, 0xee, 0x82, 0xfb, 0xb8, 0x17, 0x87, 0x29, 0x4f, 0x19, 0x79, 0x96, 0x0e, 0xe3, 0xd9, 0x1e, 0x9b, 0x2a, 0x26, 0xd3, 0x99, 0x5c, 0x83, 0x72, 0x9f, 0x0a, 0x9a, 0x70, 0xdf, 0xce, 0x9d, 0xb7, 0x1c, 0xcd, 0x7d, 0xb4, 0x52, 0x0c, 0xda, 0x85, 0x7c, 0x00, 0xf0, 0x24, 0xe2, 0x22, 0xee, 0x26, 0x61, 0x9f, 0xfb, 0x15, 0x24, 0x38, 0x7f, 0x18, 0xc1, 0x9d, 0xcc, 0x52, 0x91, 0x18, 0xae, 0xe4, 0x23, 0xf0, 0x22, 0x26, 0x68, 0x32, 0x0a, 0x7b, 0xb7, 0xe3, 0x21, 0xc3, 0x78, 0x1c, 0xa4, 0xbb, 0xf0, 0x8a, 0xf2, 0x4c, 0xd8, 0x2b, 0xd2, 0x03, 0x34, 0xb5, 0x35, 0x70, 0xb2, 0x2e, 0x98, 0xb7, 0xc1, 0x99, 0x72, 0x1b, 0x1c, 0xf3, 0x36, 0xbc, 0x07, 0xd5, 0xc9, 0x16, 0x1c, 0xe5, 0x5d, 0x34, 0xbd, 0x6f, 0x80, 0x97, 0x2f, 0xfc, 0x51, 0xfe, 0x96, 0xe9, 0xff, 0x08, 0x5c, 0xa3, 0xe2, 0x53, 0x5c, 0xaf, 0x98, 0xae, 0xee, 0xca, 0x9b, 0xaf, 0xec, 0x9b, 0xc9, 0xfc, 0x09, 0xcc, 0xe7, 0x5a, 0x31, 0x85, 0x7d, 0x6d, 0x92, 0xfd, 0xec, 0x91, 0x4d, 0x35, 0x77, 0xe8, 0xc1, 0x99, 0xa9, 0xdd, 0x99, 0xb2, 0xcf, 0xf5, 0xc9, 0x7d, 0xce, 0x1f, 0xb3, 0xdb, 0xe6, 0x6e, 0x5f, 0x5a, 0x30, 0x83, 0x49, 0xca, 0x6a, 0xb6, 0xa5, 0x1e, 0x37, 0x28, 0x06, 0x4a, 0x20, 0x0b, 0x50, 0xee, 0x5f, 0x0e, 0x42, 0x91, 0x16, 0x59, 0x4b, 0x88, 0xaf, 0x22, 0x5e, 0xd4, 0x38, 0x4a, 0xf8, 0xef, 0x78, 0x59, 0x29, 0x4a, 0xa8, 0x48, 0x45, 0xf9, 0x94, 0xf4, 0x69, 0xc8, 0x50, 0x35, 0x83, 0xaa, 0x4c, 0xae, 0xfd, 0x63, 0x81, 0x93, 0x15, 0xe3, 0x90, 0x48, 0x3c, 0x28, 0xf6, 0xc3, 0xcf, 0xf5, 0x59, 0x91, 0x4b, 0x42, 0xa0, 0x24, 0x19, 0x74, 0x04, 0xb8, 0x46, 0xab, 0x88, 0xe1, 0xde, 0xd2, 0x2a, 0x62, 0x32, 0x52, 0x2e, 0x3a, 0x9b, 0x74, 0xa4, 0x77, 0xd5, 0x92, 0x8c, 0x67, 0x14, 0x26, 0x51, 0xc8, 0xda, 0xd4, 0x2f, 0xab, 0x78, 0x52, 0x59, 0xb2, 0x0c, 0x56, 0x2f, 0xf9, 0x36, 0xc2, 0x72, 0x89, 0xc8, 0xda, 0xaa, 0x5f, 0xd1, 0xc8, 0xda, 0x2a, 0x22, 0xcd, 0x55, 0xdf, 0xd1, 0x48, 0x53, 0x23, 0x4d, 0x1f, 0x52, 0xa4, 0x29, 0x23, 0x1c, 0x34, 0x9b, 0x4d, 0xdf, 0x55, 0x11, 0xca, 0xb5, 0xcc, 0x4e, 0xfe, 0x36, 0xfd, 0x59, 0x75, 0x6a, 0x51, 0xa8, 0x7d, 0x01, 0xf3, 0xb9, 0x2e, 0x91, 0x73, 0x50, 0x4d, 0xef, 0xe3, 0x3d, 0xca, 0xba, 0xe2, 0x09, 0xd6, 0xa3, 0x14, 0xe4, 0x50, 0x72, 0x13, 0xec, 0xd6, 0xb0, 0xbd, 0x4f, 0x85, 0xfc, 0x2b, 0x39, 0xea, 0x51, 0x44, 0xc7, 0x0d, 0x34, 0x0f, 0x52, 0xb7, 0xda, 0x37, 0x16, 0xde, 0x56, 0x43, 0x47, 0x96, 0xc7, 0x6f, 0xca, 0xae, 0x08, 0x13, 0xf1, 0x70, 0xef, 0xb6, 0x6e, 0xc7, 0x01, 0x9c, 0xdc, 0x85, 0xf2, 0x48, 0x3d, 0xa6, 0x6a, 0x14, 0x58, 0x39, 0xde, 0xfe, 0x0d, 0xf3, 0x59, 0xd5, 0x0c, 0xb5, 0x26, 0xb8, 0xff, 0xe1, 0xd2, 0x97, 0xcc, 0x11, 0x6e, 0x5d, 0x26, 0xc1, 0x07, 0x72, 0x1c, 0xd2, 0x43, 0xeb, 0x12, 0xcc, 0x27, 0x6a, 0x49, 0x3b, 0xfa, 0xb9, 0xb7, 0x16, 0x8b, 0x4b, 0x4e, 0x90, 0x87, 0xeb, 0x5f, 0x5b, 0xb2, 0xfe, 0xda, 0xf9, 0xc8, 0x11, 0x70, 0x01, 0xca, 0x34, 0x49, 0xe2, 0x44, 0x15, 0xdc, 0x09, 0xb4, 0x44, 0xae, 0xe7, 0x0a, 0x31, 0x1e, 0xd9, 0x73, 0xdc, 0xa9, 0x8c, 0xbb, 0x67, 0xb9, 0x5f, 0x85, 0x59, 0x13, 0x97, 0xa7, 0x87, 0x85, 0x7d, 0xaa, 0xb3, 0xc7, 0xf5, 0xf4, 0x17, 0x77, 0xf9, 0x45, 0x01, 0xdc, 0xdb, 0x31, 0x13, 0x94, 0x09, 0xfc, 0xdb, 0xae, 0x40, 0xe9, 0x63, 0x9a, 0xc4, 0xde, 0x09, 0xf2, 0x3f, 0x20, 0x93, 0x9f, 0x0b, 0x52, 0xef, 0x7d, 0x6f, 0x1b, 0x8a, 0x5d, 0x95, 0x15, 0x2a, 0x7e, 0xb0, 0xc9, 0x1c, 0x54, 0xe4, 0x14, 0x8b, 0xe2, 0x8f, 0x28, 0xca, 0x11, 0x15, 0xc5, 0x9f, 0x6c, 0x52, 0x05, 0x07, 0x07, 0x4f, 0x94, 0x7f, 0x46, 0x19, 0x47, 0x2b, 0x94, 0x9f, 0xdb, 0xc4, 0x03, 0x57, 0x8f, 0x2e, 0x88, 0xfc, 0x82, 0x88, 0x3e, 0x06, 0x88, 0xfc, 0x6a, 0x93, 0x45, 0xf8, 0xff, 0x5e, 0xdc, 0xed, 0xf6, 0xe8, 0x83, 0x68, 0x40, 0xf7, 0x92, 0xb0, 0x4d, 0xb9, 0x19, 0xdc, 0x0b, 0x9b, 0x9c, 0x82, 0x2a, 0xe2, 0x5b, 0x23, 0x9d, 0x91, 0xf7, 0x9b, 0x4d, 0x4e, 0xc3, 0xbc, 0xf1, 0x19, 0x80, 0xe8, 0xef, 0x36, 0x39, 0x03, 0x9e, 0x39, 0xb8, 0x23, 0xfc, 0x07, 0xa6, 0x37, 0x79, 0x18, 0x50, 0xf1, 0xa7, 0x4d, 0x7c, 0x38, 0x95, 0x6b, 0x06, 0x6a, 0xfe, 0x42, 0x7e, 0x3c, 0xd2, 0x8f, 0x70, 0x48, 0x44, 0xf4, 0x6f, 0x9b, 0x2c, 0xc0, 0x49, 0x5d, 0xa7, 0xed, 0x30, 0xea, 0x51, 0xfc, 0xbc, 0xf1, 0x5e, 0xda, 0xcb, 0x8b, 0x50, 0x49, 0xbf, 0x7b, 0x64, 0xb9, 0xe5, 0xda, 0x3b, 0x41, 0x00, 0xca, 0x0f, 0x99, 0x9c, 0x65, 0x3d, 0x6b, 0xf9, 0x26, 0xcc, 0x9a, 0x33, 0x3a, 0xf1, 0x64, 0x7b, 0x91, 0x1b, 0x61, 0xef, 0x04, 0x99, 0x07, 0x77, 0xcb, 0x00, 0x2c, 0x32, 0x07, 0x8e, 0x2c, 0xb6, 0x12, 0x0b, 0xcb, 0xeb, 0x70, 0xf2, 0xc0, 0x78, 0x46, 0x5c, 0xb0, 0x35, 0x8d, 0xda, 0x4f, 0x31, 0x78, 0x16, 0x99, 0x85, 0x0a, 0x5e, 0x30, 0x16, 0xf6, 0xbc, 0x42, 0xab, 0x8c, 0x23, 0xd8, 0x95, 0x7f, 0x03, 0x00, 0x00, 0xff, 0xff, 0xde, 0xb8, 0xc7, 0xe2, 0xce, 0x0e, 0x00, 0x00, }