routing-service/proto/valhalla/directions.pb.go

1535 lines
74 KiB
Go

// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.28.0
// protoc v3.19.4
// source: directions.proto
package valhalla
import (
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
type DirectionsLeg_GuidanceView_Type int32
const (
DirectionsLeg_GuidanceView_kJunction DirectionsLeg_GuidanceView_Type = 0
DirectionsLeg_GuidanceView_kSapa DirectionsLeg_GuidanceView_Type = 1
DirectionsLeg_GuidanceView_kTollbranch DirectionsLeg_GuidanceView_Type = 2
DirectionsLeg_GuidanceView_kAftertoll DirectionsLeg_GuidanceView_Type = 3
DirectionsLeg_GuidanceView_kEnt DirectionsLeg_GuidanceView_Type = 4
DirectionsLeg_GuidanceView_kExit DirectionsLeg_GuidanceView_Type = 5
DirectionsLeg_GuidanceView_kCityreal DirectionsLeg_GuidanceView_Type = 6
DirectionsLeg_GuidanceView_kDirectionboard DirectionsLeg_GuidanceView_Type = 7
DirectionsLeg_GuidanceView_kSignboard DirectionsLeg_GuidanceView_Type = 8
)
// Enum value maps for DirectionsLeg_GuidanceView_Type.
var (
DirectionsLeg_GuidanceView_Type_name = map[int32]string{
0: "kJunction",
1: "kSapa",
2: "kTollbranch",
3: "kAftertoll",
4: "kEnt",
5: "kExit",
6: "kCityreal",
7: "kDirectionboard",
8: "kSignboard",
}
DirectionsLeg_GuidanceView_Type_value = map[string]int32{
"kJunction": 0,
"kSapa": 1,
"kTollbranch": 2,
"kAftertoll": 3,
"kEnt": 4,
"kExit": 5,
"kCityreal": 6,
"kDirectionboard": 7,
"kSignboard": 8,
}
)
func (x DirectionsLeg_GuidanceView_Type) Enum() *DirectionsLeg_GuidanceView_Type {
p := new(DirectionsLeg_GuidanceView_Type)
*p = x
return p
}
func (x DirectionsLeg_GuidanceView_Type) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (DirectionsLeg_GuidanceView_Type) Descriptor() protoreflect.EnumDescriptor {
return file_directions_proto_enumTypes[0].Descriptor()
}
func (DirectionsLeg_GuidanceView_Type) Type() protoreflect.EnumType {
return &file_directions_proto_enumTypes[0]
}
func (x DirectionsLeg_GuidanceView_Type) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use DirectionsLeg_GuidanceView_Type.Descriptor instead.
func (DirectionsLeg_GuidanceView_Type) EnumDescriptor() ([]byte, []int) {
return file_directions_proto_rawDescGZIP(), []int{0, 1, 0}
}
type DirectionsLeg_Maneuver_CardinalDirection int32
const (
DirectionsLeg_Maneuver_kNorth DirectionsLeg_Maneuver_CardinalDirection = 0
DirectionsLeg_Maneuver_kNorthEast DirectionsLeg_Maneuver_CardinalDirection = 1
DirectionsLeg_Maneuver_kEast DirectionsLeg_Maneuver_CardinalDirection = 2
DirectionsLeg_Maneuver_kSouthEast DirectionsLeg_Maneuver_CardinalDirection = 3
DirectionsLeg_Maneuver_kSouth DirectionsLeg_Maneuver_CardinalDirection = 4
DirectionsLeg_Maneuver_kSouthWest DirectionsLeg_Maneuver_CardinalDirection = 5
DirectionsLeg_Maneuver_kWest DirectionsLeg_Maneuver_CardinalDirection = 6
DirectionsLeg_Maneuver_kNorthWest DirectionsLeg_Maneuver_CardinalDirection = 7
)
// Enum value maps for DirectionsLeg_Maneuver_CardinalDirection.
var (
DirectionsLeg_Maneuver_CardinalDirection_name = map[int32]string{
0: "kNorth",
1: "kNorthEast",
2: "kEast",
3: "kSouthEast",
4: "kSouth",
5: "kSouthWest",
6: "kWest",
7: "kNorthWest",
}
DirectionsLeg_Maneuver_CardinalDirection_value = map[string]int32{
"kNorth": 0,
"kNorthEast": 1,
"kEast": 2,
"kSouthEast": 3,
"kSouth": 4,
"kSouthWest": 5,
"kWest": 6,
"kNorthWest": 7,
}
)
func (x DirectionsLeg_Maneuver_CardinalDirection) Enum() *DirectionsLeg_Maneuver_CardinalDirection {
p := new(DirectionsLeg_Maneuver_CardinalDirection)
*p = x
return p
}
func (x DirectionsLeg_Maneuver_CardinalDirection) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (DirectionsLeg_Maneuver_CardinalDirection) Descriptor() protoreflect.EnumDescriptor {
return file_directions_proto_enumTypes[1].Descriptor()
}
func (DirectionsLeg_Maneuver_CardinalDirection) Type() protoreflect.EnumType {
return &file_directions_proto_enumTypes[1]
}
func (x DirectionsLeg_Maneuver_CardinalDirection) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use DirectionsLeg_Maneuver_CardinalDirection.Descriptor instead.
func (DirectionsLeg_Maneuver_CardinalDirection) EnumDescriptor() ([]byte, []int) {
return file_directions_proto_rawDescGZIP(), []int{0, 2, 0}
}
// TODO - add others later
type DirectionsLeg_Maneuver_Type int32
const (
DirectionsLeg_Maneuver_kNone DirectionsLeg_Maneuver_Type = 0
DirectionsLeg_Maneuver_kStart DirectionsLeg_Maneuver_Type = 1
DirectionsLeg_Maneuver_kStartRight DirectionsLeg_Maneuver_Type = 2
DirectionsLeg_Maneuver_kStartLeft DirectionsLeg_Maneuver_Type = 3
DirectionsLeg_Maneuver_kDestination DirectionsLeg_Maneuver_Type = 4
DirectionsLeg_Maneuver_kDestinationRight DirectionsLeg_Maneuver_Type = 5
DirectionsLeg_Maneuver_kDestinationLeft DirectionsLeg_Maneuver_Type = 6
DirectionsLeg_Maneuver_kBecomes DirectionsLeg_Maneuver_Type = 7
DirectionsLeg_Maneuver_kContinue DirectionsLeg_Maneuver_Type = 8
DirectionsLeg_Maneuver_kSlightRight DirectionsLeg_Maneuver_Type = 9
DirectionsLeg_Maneuver_kRight DirectionsLeg_Maneuver_Type = 10
DirectionsLeg_Maneuver_kSharpRight DirectionsLeg_Maneuver_Type = 11
DirectionsLeg_Maneuver_kUturnRight DirectionsLeg_Maneuver_Type = 12
DirectionsLeg_Maneuver_kUturnLeft DirectionsLeg_Maneuver_Type = 13
DirectionsLeg_Maneuver_kSharpLeft DirectionsLeg_Maneuver_Type = 14
DirectionsLeg_Maneuver_kLeft DirectionsLeg_Maneuver_Type = 15
DirectionsLeg_Maneuver_kSlightLeft DirectionsLeg_Maneuver_Type = 16
DirectionsLeg_Maneuver_kRampStraight DirectionsLeg_Maneuver_Type = 17
DirectionsLeg_Maneuver_kRampRight DirectionsLeg_Maneuver_Type = 18
DirectionsLeg_Maneuver_kRampLeft DirectionsLeg_Maneuver_Type = 19
DirectionsLeg_Maneuver_kExitRight DirectionsLeg_Maneuver_Type = 20
DirectionsLeg_Maneuver_kExitLeft DirectionsLeg_Maneuver_Type = 21
DirectionsLeg_Maneuver_kStayStraight DirectionsLeg_Maneuver_Type = 22
DirectionsLeg_Maneuver_kStayRight DirectionsLeg_Maneuver_Type = 23
DirectionsLeg_Maneuver_kStayLeft DirectionsLeg_Maneuver_Type = 24
DirectionsLeg_Maneuver_kMerge DirectionsLeg_Maneuver_Type = 25
DirectionsLeg_Maneuver_kRoundaboutEnter DirectionsLeg_Maneuver_Type = 26
DirectionsLeg_Maneuver_kRoundaboutExit DirectionsLeg_Maneuver_Type = 27
DirectionsLeg_Maneuver_kFerryEnter DirectionsLeg_Maneuver_Type = 28
DirectionsLeg_Maneuver_kFerryExit DirectionsLeg_Maneuver_Type = 29
DirectionsLeg_Maneuver_kTransit DirectionsLeg_Maneuver_Type = 30
DirectionsLeg_Maneuver_kTransitTransfer DirectionsLeg_Maneuver_Type = 31
DirectionsLeg_Maneuver_kTransitRemainOn DirectionsLeg_Maneuver_Type = 32
DirectionsLeg_Maneuver_kTransitConnectionStart DirectionsLeg_Maneuver_Type = 33
DirectionsLeg_Maneuver_kTransitConnectionTransfer DirectionsLeg_Maneuver_Type = 34
DirectionsLeg_Maneuver_kTransitConnectionDestination DirectionsLeg_Maneuver_Type = 35
DirectionsLeg_Maneuver_kPostTransitConnectionDestination DirectionsLeg_Maneuver_Type = 36
DirectionsLeg_Maneuver_kMergeRight DirectionsLeg_Maneuver_Type = 37
DirectionsLeg_Maneuver_kMergeLeft DirectionsLeg_Maneuver_Type = 38
DirectionsLeg_Maneuver_kElevatorEnter DirectionsLeg_Maneuver_Type = 39
DirectionsLeg_Maneuver_kStepsEnter DirectionsLeg_Maneuver_Type = 40
DirectionsLeg_Maneuver_kEscalatorEnter DirectionsLeg_Maneuver_Type = 41
DirectionsLeg_Maneuver_kBuildingEnter DirectionsLeg_Maneuver_Type = 42
DirectionsLeg_Maneuver_kBuildingExit DirectionsLeg_Maneuver_Type = 43
)
// Enum value maps for DirectionsLeg_Maneuver_Type.
var (
DirectionsLeg_Maneuver_Type_name = map[int32]string{
0: "kNone",
1: "kStart",
2: "kStartRight",
3: "kStartLeft",
4: "kDestination",
5: "kDestinationRight",
6: "kDestinationLeft",
7: "kBecomes",
8: "kContinue",
9: "kSlightRight",
10: "kRight",
11: "kSharpRight",
12: "kUturnRight",
13: "kUturnLeft",
14: "kSharpLeft",
15: "kLeft",
16: "kSlightLeft",
17: "kRampStraight",
18: "kRampRight",
19: "kRampLeft",
20: "kExitRight",
21: "kExitLeft",
22: "kStayStraight",
23: "kStayRight",
24: "kStayLeft",
25: "kMerge",
26: "kRoundaboutEnter",
27: "kRoundaboutExit",
28: "kFerryEnter",
29: "kFerryExit",
30: "kTransit",
31: "kTransitTransfer",
32: "kTransitRemainOn",
33: "kTransitConnectionStart",
34: "kTransitConnectionTransfer",
35: "kTransitConnectionDestination",
36: "kPostTransitConnectionDestination",
37: "kMergeRight",
38: "kMergeLeft",
39: "kElevatorEnter",
40: "kStepsEnter",
41: "kEscalatorEnter",
42: "kBuildingEnter",
43: "kBuildingExit",
}
DirectionsLeg_Maneuver_Type_value = map[string]int32{
"kNone": 0,
"kStart": 1,
"kStartRight": 2,
"kStartLeft": 3,
"kDestination": 4,
"kDestinationRight": 5,
"kDestinationLeft": 6,
"kBecomes": 7,
"kContinue": 8,
"kSlightRight": 9,
"kRight": 10,
"kSharpRight": 11,
"kUturnRight": 12,
"kUturnLeft": 13,
"kSharpLeft": 14,
"kLeft": 15,
"kSlightLeft": 16,
"kRampStraight": 17,
"kRampRight": 18,
"kRampLeft": 19,
"kExitRight": 20,
"kExitLeft": 21,
"kStayStraight": 22,
"kStayRight": 23,
"kStayLeft": 24,
"kMerge": 25,
"kRoundaboutEnter": 26,
"kRoundaboutExit": 27,
"kFerryEnter": 28,
"kFerryExit": 29,
"kTransit": 30,
"kTransitTransfer": 31,
"kTransitRemainOn": 32,
"kTransitConnectionStart": 33,
"kTransitConnectionTransfer": 34,
"kTransitConnectionDestination": 35,
"kPostTransitConnectionDestination": 36,
"kMergeRight": 37,
"kMergeLeft": 38,
"kElevatorEnter": 39,
"kStepsEnter": 40,
"kEscalatorEnter": 41,
"kBuildingEnter": 42,
"kBuildingExit": 43,
}
)
func (x DirectionsLeg_Maneuver_Type) Enum() *DirectionsLeg_Maneuver_Type {
p := new(DirectionsLeg_Maneuver_Type)
*p = x
return p
}
func (x DirectionsLeg_Maneuver_Type) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (DirectionsLeg_Maneuver_Type) Descriptor() protoreflect.EnumDescriptor {
return file_directions_proto_enumTypes[2].Descriptor()
}
func (DirectionsLeg_Maneuver_Type) Type() protoreflect.EnumType {
return &file_directions_proto_enumTypes[2]
}
func (x DirectionsLeg_Maneuver_Type) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use DirectionsLeg_Maneuver_Type.Descriptor instead.
func (DirectionsLeg_Maneuver_Type) EnumDescriptor() ([]byte, []int) {
return file_directions_proto_rawDescGZIP(), []int{0, 2, 1}
}
type DirectionsLeg_Maneuver_BssManeuverType int32
const (
DirectionsLeg_Maneuver_kNoneAction DirectionsLeg_Maneuver_BssManeuverType = 0
DirectionsLeg_Maneuver_kRentBikeAtBikeShare DirectionsLeg_Maneuver_BssManeuverType = 1
DirectionsLeg_Maneuver_kReturnBikeAtBikeShare DirectionsLeg_Maneuver_BssManeuverType = 2
)
// Enum value maps for DirectionsLeg_Maneuver_BssManeuverType.
var (
DirectionsLeg_Maneuver_BssManeuverType_name = map[int32]string{
0: "kNoneAction",
1: "kRentBikeAtBikeShare",
2: "kReturnBikeAtBikeShare",
}
DirectionsLeg_Maneuver_BssManeuverType_value = map[string]int32{
"kNoneAction": 0,
"kRentBikeAtBikeShare": 1,
"kReturnBikeAtBikeShare": 2,
}
)
func (x DirectionsLeg_Maneuver_BssManeuverType) Enum() *DirectionsLeg_Maneuver_BssManeuverType {
p := new(DirectionsLeg_Maneuver_BssManeuverType)
*p = x
return p
}
func (x DirectionsLeg_Maneuver_BssManeuverType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (DirectionsLeg_Maneuver_BssManeuverType) Descriptor() protoreflect.EnumDescriptor {
return file_directions_proto_enumTypes[3].Descriptor()
}
func (DirectionsLeg_Maneuver_BssManeuverType) Type() protoreflect.EnumType {
return &file_directions_proto_enumTypes[3]
}
func (x DirectionsLeg_Maneuver_BssManeuverType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use DirectionsLeg_Maneuver_BssManeuverType.Descriptor instead.
func (DirectionsLeg_Maneuver_BssManeuverType) EnumDescriptor() ([]byte, []int) {
return file_directions_proto_rawDescGZIP(), []int{0, 2, 2}
}
type DirectionsLeg struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
TripId uint64 `protobuf:"varint,1,opt,name=trip_id,json=tripId,proto3" json:"trip_id,omitempty"`
LegId uint32 `protobuf:"varint,2,opt,name=leg_id,json=legId,proto3" json:"leg_id,omitempty"`
LegCount uint32 `protobuf:"varint,3,opt,name=leg_count,json=legCount,proto3" json:"leg_count,omitempty"`
Location []*Location `protobuf:"bytes,4,rep,name=location,proto3" json:"location,omitempty"`
Summary *DirectionsLeg_Summary `protobuf:"bytes,5,opt,name=summary,proto3" json:"summary,omitempty"`
Maneuver []*DirectionsLeg_Maneuver `protobuf:"bytes,6,rep,name=maneuver,proto3" json:"maneuver,omitempty"`
Shape string `protobuf:"bytes,7,opt,name=shape,proto3" json:"shape,omitempty"`
}
func (x *DirectionsLeg) Reset() {
*x = DirectionsLeg{}
if protoimpl.UnsafeEnabled {
mi := &file_directions_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DirectionsLeg) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DirectionsLeg) ProtoMessage() {}
func (x *DirectionsLeg) ProtoReflect() protoreflect.Message {
mi := &file_directions_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DirectionsLeg.ProtoReflect.Descriptor instead.
func (*DirectionsLeg) Descriptor() ([]byte, []int) {
return file_directions_proto_rawDescGZIP(), []int{0}
}
func (x *DirectionsLeg) GetTripId() uint64 {
if x != nil {
return x.TripId
}
return 0
}
func (x *DirectionsLeg) GetLegId() uint32 {
if x != nil {
return x.LegId
}
return 0
}
func (x *DirectionsLeg) GetLegCount() uint32 {
if x != nil {
return x.LegCount
}
return 0
}
func (x *DirectionsLeg) GetLocation() []*Location {
if x != nil {
return x.Location
}
return nil
}
func (x *DirectionsLeg) GetSummary() *DirectionsLeg_Summary {
if x != nil {
return x.Summary
}
return nil
}
func (x *DirectionsLeg) GetManeuver() []*DirectionsLeg_Maneuver {
if x != nil {
return x.Maneuver
}
return nil
}
func (x *DirectionsLeg) GetShape() string {
if x != nil {
return x.Shape
}
return ""
}
type DirectionsRoute struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Legs []*DirectionsLeg `protobuf:"bytes,1,rep,name=legs,proto3" json:"legs,omitempty"`
}
func (x *DirectionsRoute) Reset() {
*x = DirectionsRoute{}
if protoimpl.UnsafeEnabled {
mi := &file_directions_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DirectionsRoute) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DirectionsRoute) ProtoMessage() {}
func (x *DirectionsRoute) ProtoReflect() protoreflect.Message {
mi := &file_directions_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DirectionsRoute.ProtoReflect.Descriptor instead.
func (*DirectionsRoute) Descriptor() ([]byte, []int) {
return file_directions_proto_rawDescGZIP(), []int{1}
}
func (x *DirectionsRoute) GetLegs() []*DirectionsLeg {
if x != nil {
return x.Legs
}
return nil
}
type Directions struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Routes []*DirectionsRoute `protobuf:"bytes,1,rep,name=routes,proto3" json:"routes,omitempty"`
}
func (x *Directions) Reset() {
*x = Directions{}
if protoimpl.UnsafeEnabled {
mi := &file_directions_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Directions) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Directions) ProtoMessage() {}
func (x *Directions) ProtoReflect() protoreflect.Message {
mi := &file_directions_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Directions.ProtoReflect.Descriptor instead.
func (*Directions) Descriptor() ([]byte, []int) {
return file_directions_proto_rawDescGZIP(), []int{2}
}
func (x *Directions) GetRoutes() []*DirectionsRoute {
if x != nil {
return x.Routes
}
return nil
}
type DirectionsLeg_Summary struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Length float32 `protobuf:"fixed32,1,opt,name=length,proto3" json:"length,omitempty"` // kilometers or miles based on units
Time float64 `protobuf:"fixed64,2,opt,name=time,proto3" json:"time,omitempty"` // seconds
Bbox *BoundingBox `protobuf:"bytes,3,opt,name=bbox,proto3" json:"bbox,omitempty"` // Bounding box of the shape
HasTimeRestrictions bool `protobuf:"varint,4,opt,name=has_time_restrictions,json=hasTimeRestrictions,proto3" json:"has_time_restrictions,omitempty"` // Does the route contain any time restrictions?
HasToll bool `protobuf:"varint,5,opt,name=has_toll,json=hasToll,proto3" json:"has_toll,omitempty"`
HasFerry bool `protobuf:"varint,6,opt,name=has_ferry,json=hasFerry,proto3" json:"has_ferry,omitempty"`
HasHighway bool `protobuf:"varint,7,opt,name=has_highway,json=hasHighway,proto3" json:"has_highway,omitempty"`
}
func (x *DirectionsLeg_Summary) Reset() {
*x = DirectionsLeg_Summary{}
if protoimpl.UnsafeEnabled {
mi := &file_directions_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DirectionsLeg_Summary) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DirectionsLeg_Summary) ProtoMessage() {}
func (x *DirectionsLeg_Summary) ProtoReflect() protoreflect.Message {
mi := &file_directions_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DirectionsLeg_Summary.ProtoReflect.Descriptor instead.
func (*DirectionsLeg_Summary) Descriptor() ([]byte, []int) {
return file_directions_proto_rawDescGZIP(), []int{0, 0}
}
func (x *DirectionsLeg_Summary) GetLength() float32 {
if x != nil {
return x.Length
}
return 0
}
func (x *DirectionsLeg_Summary) GetTime() float64 {
if x != nil {
return x.Time
}
return 0
}
func (x *DirectionsLeg_Summary) GetBbox() *BoundingBox {
if x != nil {
return x.Bbox
}
return nil
}
func (x *DirectionsLeg_Summary) GetHasTimeRestrictions() bool {
if x != nil {
return x.HasTimeRestrictions
}
return false
}
func (x *DirectionsLeg_Summary) GetHasToll() bool {
if x != nil {
return x.HasToll
}
return false
}
func (x *DirectionsLeg_Summary) GetHasFerry() bool {
if x != nil {
return x.HasFerry
}
return false
}
func (x *DirectionsLeg_Summary) GetHasHighway() bool {
if x != nil {
return x.HasHighway
}
return false
}
type DirectionsLeg_GuidanceView struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
DataId string `protobuf:"bytes,1,opt,name=data_id,json=dataId,proto3" json:"data_id,omitempty"` // TODO future enum as data id?
Type DirectionsLeg_GuidanceView_Type `protobuf:"varint,2,opt,name=type,proto3,enum=valhalla.DirectionsLeg_GuidanceView_Type" json:"type,omitempty"` // The type of guidance view
BaseId string `protobuf:"bytes,3,opt,name=base_id,json=baseId,proto3" json:"base_id,omitempty"` // Image base id
OverlayIds []string `protobuf:"bytes,4,rep,name=overlay_ids,json=overlayIds,proto3" json:"overlay_ids,omitempty"` // List of overlay ids
}
func (x *DirectionsLeg_GuidanceView) Reset() {
*x = DirectionsLeg_GuidanceView{}
if protoimpl.UnsafeEnabled {
mi := &file_directions_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DirectionsLeg_GuidanceView) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DirectionsLeg_GuidanceView) ProtoMessage() {}
func (x *DirectionsLeg_GuidanceView) ProtoReflect() protoreflect.Message {
mi := &file_directions_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DirectionsLeg_GuidanceView.ProtoReflect.Descriptor instead.
func (*DirectionsLeg_GuidanceView) Descriptor() ([]byte, []int) {
return file_directions_proto_rawDescGZIP(), []int{0, 1}
}
func (x *DirectionsLeg_GuidanceView) GetDataId() string {
if x != nil {
return x.DataId
}
return ""
}
func (x *DirectionsLeg_GuidanceView) GetType() DirectionsLeg_GuidanceView_Type {
if x != nil {
return x.Type
}
return DirectionsLeg_GuidanceView_kJunction
}
func (x *DirectionsLeg_GuidanceView) GetBaseId() string {
if x != nil {
return x.BaseId
}
return ""
}
func (x *DirectionsLeg_GuidanceView) GetOverlayIds() []string {
if x != nil {
return x.OverlayIds
}
return nil
}
type DirectionsLeg_Maneuver struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Type DirectionsLeg_Maneuver_Type `protobuf:"varint,1,opt,name=type,proto3,enum=valhalla.DirectionsLeg_Maneuver_Type" json:"type,omitempty"` // Maneuver type
TextInstruction string `protobuf:"bytes,2,opt,name=text_instruction,json=textInstruction,proto3" json:"text_instruction,omitempty"` // text instruction
StreetName []*StreetName `protobuf:"bytes,3,rep,name=street_name,json=streetName,proto3" json:"street_name,omitempty"` // street names
Length float32 `protobuf:"fixed32,4,opt,name=length,proto3" json:"length,omitempty"` // kilometers or miles based on units
Time float64 `protobuf:"fixed64,5,opt,name=time,proto3" json:"time,omitempty"` // seconds
BeginCardinalDirection DirectionsLeg_Maneuver_CardinalDirection `protobuf:"varint,6,opt,name=begin_cardinal_direction,json=beginCardinalDirection,proto3,enum=valhalla.DirectionsLeg_Maneuver_CardinalDirection" json:"begin_cardinal_direction,omitempty"` // CardinalDirection
BeginHeading uint32 `protobuf:"varint,7,opt,name=begin_heading,json=beginHeading,proto3" json:"begin_heading,omitempty"` // 0-360
BeginShapeIndex uint32 `protobuf:"varint,8,opt,name=begin_shape_index,json=beginShapeIndex,proto3" json:"begin_shape_index,omitempty"` // inclusive index
EndShapeIndex uint32 `protobuf:"varint,9,opt,name=end_shape_index,json=endShapeIndex,proto3" json:"end_shape_index,omitempty"` // inclusive index
PortionsToll bool `protobuf:"varint,10,opt,name=portions_toll,json=portionsToll,proto3" json:"portions_toll,omitempty"` // has portions toll
PortionsUnpaved bool `protobuf:"varint,11,opt,name=portions_unpaved,json=portionsUnpaved,proto3" json:"portions_unpaved,omitempty"` // has portions unpaved
VerbalTransitionAlertInstruction string `protobuf:"bytes,12,opt,name=verbal_transition_alert_instruction,json=verbalTransitionAlertInstruction,proto3" json:"verbal_transition_alert_instruction,omitempty"` // verbal transition alert instruction
VerbalPreTransitionInstruction string `protobuf:"bytes,13,opt,name=verbal_pre_transition_instruction,json=verbalPreTransitionInstruction,proto3" json:"verbal_pre_transition_instruction,omitempty"` // verbal pre-transition instruction
VerbalPostTransitionInstruction string `protobuf:"bytes,14,opt,name=verbal_post_transition_instruction,json=verbalPostTransitionInstruction,proto3" json:"verbal_post_transition_instruction,omitempty"` // verbal post-transition instruction
BeginStreetName []*StreetName `protobuf:"bytes,15,rep,name=begin_street_name,json=beginStreetName,proto3" json:"begin_street_name,omitempty"` // begin street names
Sign *TripSign `protobuf:"bytes,16,opt,name=sign,proto3" json:"sign,omitempty"` // associated sign information, for example: exit number
RoundaboutExitCount uint32 `protobuf:"varint,17,opt,name=roundabout_exit_count,json=roundaboutExitCount,proto3" json:"roundabout_exit_count,omitempty"` // which spoke to exit roundabout after entering
DepartInstruction string `protobuf:"bytes,18,opt,name=depart_instruction,json=departInstruction,proto3" json:"depart_instruction,omitempty"` // depart instruction - used with transit
VerbalDepartInstruction string `protobuf:"bytes,19,opt,name=verbal_depart_instruction,json=verbalDepartInstruction,proto3" json:"verbal_depart_instruction,omitempty"` // verbal depart instruction - used with transit
ArriveInstruction string `protobuf:"bytes,20,opt,name=arrive_instruction,json=arriveInstruction,proto3" json:"arrive_instruction,omitempty"` // arrive instruction - used with transit
VerbalArriveInstruction string `protobuf:"bytes,21,opt,name=verbal_arrive_instruction,json=verbalArriveInstruction,proto3" json:"verbal_arrive_instruction,omitempty"` // verbal arrive instruction - used with transit
TransitInfo *TransitRouteInfo `protobuf:"bytes,22,opt,name=transit_info,json=transitInfo,proto3" json:"transit_info,omitempty"` // transit attributes including a list of transit stops
VerbalMultiCue bool `protobuf:"varint,23,opt,name=verbal_multi_cue,json=verbalMultiCue,proto3" json:"verbal_multi_cue,omitempty"` // verbal multi-cue flag
TravelMode TravelMode `protobuf:"varint,24,opt,name=travel_mode,json=travelMode,proto3,enum=valhalla.TravelMode" json:"travel_mode,omitempty"` // travel mode
VehicleType VehicleType `protobuf:"varint,25,opt,name=vehicle_type,json=vehicleType,proto3,enum=valhalla.VehicleType" json:"vehicle_type,omitempty"`
PedestrianType PedestrianType `protobuf:"varint,26,opt,name=pedestrian_type,json=pedestrianType,proto3,enum=valhalla.PedestrianType" json:"pedestrian_type,omitempty"`
BicycleType BicycleType `protobuf:"varint,27,opt,name=bicycle_type,json=bicycleType,proto3,enum=valhalla.BicycleType" json:"bicycle_type,omitempty"`
TransitType TransitType `protobuf:"varint,28,opt,name=transit_type,json=transitType,proto3,enum=valhalla.TransitType" json:"transit_type,omitempty"`
BeginPathIndex uint32 `protobuf:"varint,29,opt,name=begin_path_index,json=beginPathIndex,proto3" json:"begin_path_index,omitempty"` // Index in TripPath for first node of maneuver
EndPathIndex uint32 `protobuf:"varint,30,opt,name=end_path_index,json=endPathIndex,proto3" json:"end_path_index,omitempty"` // Index in TripPath for last node of maneuver
ToStayOn bool `protobuf:"varint,31,opt,name=to_stay_on,json=toStayOn,proto3" json:"to_stay_on,omitempty"` // True if same name as previous maneuver
RoundaboutExitStreetNames []*StreetName `protobuf:"bytes,32,rep,name=roundabout_exit_street_names,json=roundaboutExitStreetNames,proto3" json:"roundabout_exit_street_names,omitempty"` // Outbound street names from roundabout
TurnDegree uint32 `protobuf:"varint,33,opt,name=turn_degree,json=turnDegree,proto3" json:"turn_degree,omitempty"` // Turn degree of maneuver
HasTimeRestrictions bool `protobuf:"varint,34,opt,name=has_time_restrictions,json=hasTimeRestrictions,proto3" json:"has_time_restrictions,omitempty"` // Whether edge has any time restrictions or not
GuidanceViews []*DirectionsLeg_GuidanceView `protobuf:"bytes,35,rep,name=guidance_views,json=guidanceViews,proto3" json:"guidance_views,omitempty"` // List of guidance views
BssManeuverType DirectionsLeg_Maneuver_BssManeuverType `protobuf:"varint,36,opt,name=bss_maneuver_type,json=bssManeuverType,proto3,enum=valhalla.DirectionsLeg_Maneuver_BssManeuverType" json:"bss_maneuver_type,omitempty"`
VerbalSuccinctTransitionInstruction string `protobuf:"bytes,37,opt,name=verbal_succinct_transition_instruction,json=verbalSuccinctTransitionInstruction,proto3" json:"verbal_succinct_transition_instruction,omitempty"` // verbal succinct transition instruction
BssInfo *BikeShareStationInfo `protobuf:"bytes,38,opt,name=bss_info,json=bssInfo,proto3" json:"bss_info,omitempty"` // Bike Share Station Info
PortionsHighway bool `protobuf:"varint,39,opt,name=portions_highway,json=portionsHighway,proto3" json:"portions_highway,omitempty"` // has portions highway
PortionsFerry bool `protobuf:"varint,40,opt,name=portions_ferry,json=portionsFerry,proto3" json:"portions_ferry,omitempty"` // has portions ferry
}
func (x *DirectionsLeg_Maneuver) Reset() {
*x = DirectionsLeg_Maneuver{}
if protoimpl.UnsafeEnabled {
mi := &file_directions_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DirectionsLeg_Maneuver) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DirectionsLeg_Maneuver) ProtoMessage() {}
func (x *DirectionsLeg_Maneuver) ProtoReflect() protoreflect.Message {
mi := &file_directions_proto_msgTypes[5]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DirectionsLeg_Maneuver.ProtoReflect.Descriptor instead.
func (*DirectionsLeg_Maneuver) Descriptor() ([]byte, []int) {
return file_directions_proto_rawDescGZIP(), []int{0, 2}
}
func (x *DirectionsLeg_Maneuver) GetType() DirectionsLeg_Maneuver_Type {
if x != nil {
return x.Type
}
return DirectionsLeg_Maneuver_kNone
}
func (x *DirectionsLeg_Maneuver) GetTextInstruction() string {
if x != nil {
return x.TextInstruction
}
return ""
}
func (x *DirectionsLeg_Maneuver) GetStreetName() []*StreetName {
if x != nil {
return x.StreetName
}
return nil
}
func (x *DirectionsLeg_Maneuver) GetLength() float32 {
if x != nil {
return x.Length
}
return 0
}
func (x *DirectionsLeg_Maneuver) GetTime() float64 {
if x != nil {
return x.Time
}
return 0
}
func (x *DirectionsLeg_Maneuver) GetBeginCardinalDirection() DirectionsLeg_Maneuver_CardinalDirection {
if x != nil {
return x.BeginCardinalDirection
}
return DirectionsLeg_Maneuver_kNorth
}
func (x *DirectionsLeg_Maneuver) GetBeginHeading() uint32 {
if x != nil {
return x.BeginHeading
}
return 0
}
func (x *DirectionsLeg_Maneuver) GetBeginShapeIndex() uint32 {
if x != nil {
return x.BeginShapeIndex
}
return 0
}
func (x *DirectionsLeg_Maneuver) GetEndShapeIndex() uint32 {
if x != nil {
return x.EndShapeIndex
}
return 0
}
func (x *DirectionsLeg_Maneuver) GetPortionsToll() bool {
if x != nil {
return x.PortionsToll
}
return false
}
func (x *DirectionsLeg_Maneuver) GetPortionsUnpaved() bool {
if x != nil {
return x.PortionsUnpaved
}
return false
}
func (x *DirectionsLeg_Maneuver) GetVerbalTransitionAlertInstruction() string {
if x != nil {
return x.VerbalTransitionAlertInstruction
}
return ""
}
func (x *DirectionsLeg_Maneuver) GetVerbalPreTransitionInstruction() string {
if x != nil {
return x.VerbalPreTransitionInstruction
}
return ""
}
func (x *DirectionsLeg_Maneuver) GetVerbalPostTransitionInstruction() string {
if x != nil {
return x.VerbalPostTransitionInstruction
}
return ""
}
func (x *DirectionsLeg_Maneuver) GetBeginStreetName() []*StreetName {
if x != nil {
return x.BeginStreetName
}
return nil
}
func (x *DirectionsLeg_Maneuver) GetSign() *TripSign {
if x != nil {
return x.Sign
}
return nil
}
func (x *DirectionsLeg_Maneuver) GetRoundaboutExitCount() uint32 {
if x != nil {
return x.RoundaboutExitCount
}
return 0
}
func (x *DirectionsLeg_Maneuver) GetDepartInstruction() string {
if x != nil {
return x.DepartInstruction
}
return ""
}
func (x *DirectionsLeg_Maneuver) GetVerbalDepartInstruction() string {
if x != nil {
return x.VerbalDepartInstruction
}
return ""
}
func (x *DirectionsLeg_Maneuver) GetArriveInstruction() string {
if x != nil {
return x.ArriveInstruction
}
return ""
}
func (x *DirectionsLeg_Maneuver) GetVerbalArriveInstruction() string {
if x != nil {
return x.VerbalArriveInstruction
}
return ""
}
func (x *DirectionsLeg_Maneuver) GetTransitInfo() *TransitRouteInfo {
if x != nil {
return x.TransitInfo
}
return nil
}
func (x *DirectionsLeg_Maneuver) GetVerbalMultiCue() bool {
if x != nil {
return x.VerbalMultiCue
}
return false
}
func (x *DirectionsLeg_Maneuver) GetTravelMode() TravelMode {
if x != nil {
return x.TravelMode
}
return TravelMode_kDrive
}
func (x *DirectionsLeg_Maneuver) GetVehicleType() VehicleType {
if x != nil {
return x.VehicleType
}
return VehicleType_kCar
}
func (x *DirectionsLeg_Maneuver) GetPedestrianType() PedestrianType {
if x != nil {
return x.PedestrianType
}
return PedestrianType_kFoot
}
func (x *DirectionsLeg_Maneuver) GetBicycleType() BicycleType {
if x != nil {
return x.BicycleType
}
return BicycleType_kRoad
}
func (x *DirectionsLeg_Maneuver) GetTransitType() TransitType {
if x != nil {
return x.TransitType
}
return TransitType_kTram
}
func (x *DirectionsLeg_Maneuver) GetBeginPathIndex() uint32 {
if x != nil {
return x.BeginPathIndex
}
return 0
}
func (x *DirectionsLeg_Maneuver) GetEndPathIndex() uint32 {
if x != nil {
return x.EndPathIndex
}
return 0
}
func (x *DirectionsLeg_Maneuver) GetToStayOn() bool {
if x != nil {
return x.ToStayOn
}
return false
}
func (x *DirectionsLeg_Maneuver) GetRoundaboutExitStreetNames() []*StreetName {
if x != nil {
return x.RoundaboutExitStreetNames
}
return nil
}
func (x *DirectionsLeg_Maneuver) GetTurnDegree() uint32 {
if x != nil {
return x.TurnDegree
}
return 0
}
func (x *DirectionsLeg_Maneuver) GetHasTimeRestrictions() bool {
if x != nil {
return x.HasTimeRestrictions
}
return false
}
func (x *DirectionsLeg_Maneuver) GetGuidanceViews() []*DirectionsLeg_GuidanceView {
if x != nil {
return x.GuidanceViews
}
return nil
}
func (x *DirectionsLeg_Maneuver) GetBssManeuverType() DirectionsLeg_Maneuver_BssManeuverType {
if x != nil {
return x.BssManeuverType
}
return DirectionsLeg_Maneuver_kNoneAction
}
func (x *DirectionsLeg_Maneuver) GetVerbalSuccinctTransitionInstruction() string {
if x != nil {
return x.VerbalSuccinctTransitionInstruction
}
return ""
}
func (x *DirectionsLeg_Maneuver) GetBssInfo() *BikeShareStationInfo {
if x != nil {
return x.BssInfo
}
return nil
}
func (x *DirectionsLeg_Maneuver) GetPortionsHighway() bool {
if x != nil {
return x.PortionsHighway
}
return false
}
func (x *DirectionsLeg_Maneuver) GetPortionsFerry() bool {
if x != nil {
return x.PortionsFerry
}
return false
}
var File_directions_proto protoreflect.FileDescriptor
var file_directions_proto_rawDesc = []byte{
0x0a, 0x10, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x12, 0x08, 0x76, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x61, 0x1a, 0x0c, 0x63, 0x6f,
0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x0a, 0x73, 0x69, 0x67, 0x6e,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xf0, 0x1f, 0x0a, 0x0d, 0x44, 0x69, 0x72, 0x65, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4c, 0x65, 0x67, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x72, 0x69, 0x70,
0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x74, 0x72, 0x69, 0x70, 0x49,
0x64, 0x12, 0x15, 0x0a, 0x06, 0x6c, 0x65, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
0x0d, 0x52, 0x05, 0x6c, 0x65, 0x67, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x67, 0x5f,
0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x65, 0x67,
0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x76, 0x61, 0x6c, 0x68, 0x61, 0x6c,
0x6c, 0x61, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x6c, 0x6f, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x39, 0x0a, 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79,
0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x76, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c,
0x61, 0x2e, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4c, 0x65, 0x67, 0x2e,
0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79,
0x12, 0x3c, 0x0a, 0x08, 0x6d, 0x61, 0x6e, 0x65, 0x75, 0x76, 0x65, 0x72, 0x18, 0x06, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x20, 0x2e, 0x76, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x61, 0x2e, 0x44, 0x69,
0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4c, 0x65, 0x67, 0x2e, 0x4d, 0x61, 0x6e, 0x65,
0x75, 0x76, 0x65, 0x72, 0x52, 0x08, 0x6d, 0x61, 0x6e, 0x65, 0x75, 0x76, 0x65, 0x72, 0x12, 0x14,
0x0a, 0x05, 0x73, 0x68, 0x61, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73,
0x68, 0x61, 0x70, 0x65, 0x1a, 0xed, 0x01, 0x0a, 0x07, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79,
0x12, 0x16, 0x0a, 0x06, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02,
0x52, 0x06, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65,
0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x29, 0x0a, 0x04,
0x62, 0x62, 0x6f, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x76, 0x61, 0x6c,
0x68, 0x61, 0x6c, 0x6c, 0x61, 0x2e, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x6f,
0x78, 0x52, 0x04, 0x62, 0x62, 0x6f, 0x78, 0x12, 0x32, 0x0a, 0x15, 0x68, 0x61, 0x73, 0x5f, 0x74,
0x69, 0x6d, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x68, 0x61, 0x73, 0x54, 0x69, 0x6d, 0x65, 0x52,
0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x68,
0x61, 0x73, 0x5f, 0x74, 0x6f, 0x6c, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x68,
0x61, 0x73, 0x54, 0x6f, 0x6c, 0x6c, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x61, 0x73, 0x5f, 0x66, 0x65,
0x72, 0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x68, 0x61, 0x73, 0x46, 0x65,
0x72, 0x72, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x61, 0x73, 0x5f, 0x68, 0x69, 0x67, 0x68, 0x77,
0x61, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x68, 0x61, 0x73, 0x48, 0x69, 0x67,
0x68, 0x77, 0x61, 0x79, 0x1a, 0xad, 0x02, 0x0a, 0x0c, 0x47, 0x75, 0x69, 0x64, 0x61, 0x6e, 0x63,
0x65, 0x56, 0x69, 0x65, 0x77, 0x12, 0x17, 0x0a, 0x07, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x69, 0x64,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x61, 0x74, 0x61, 0x49, 0x64, 0x12, 0x3d,
0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x76,
0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x61, 0x2e, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x4c, 0x65, 0x67, 0x2e, 0x47, 0x75, 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, 0x56, 0x69,
0x65, 0x77, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x17, 0x0a,
0x07, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
0x62, 0x61, 0x73, 0x65, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x76, 0x65, 0x72, 0x6c, 0x61,
0x79, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x76, 0x65,
0x72, 0x6c, 0x61, 0x79, 0x49, 0x64, 0x73, 0x22, 0x8a, 0x01, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65,
0x12, 0x0d, 0x0a, 0x09, 0x6b, 0x4a, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x00, 0x12,
0x09, 0x0a, 0x05, 0x6b, 0x53, 0x61, 0x70, 0x61, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x54,
0x6f, 0x6c, 0x6c, 0x62, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x6b,
0x41, 0x66, 0x74, 0x65, 0x72, 0x74, 0x6f, 0x6c, 0x6c, 0x10, 0x03, 0x12, 0x08, 0x0a, 0x04, 0x6b,
0x45, 0x6e, 0x74, 0x10, 0x04, 0x12, 0x09, 0x0a, 0x05, 0x6b, 0x45, 0x78, 0x69, 0x74, 0x10, 0x05,
0x12, 0x0d, 0x0a, 0x09, 0x6b, 0x43, 0x69, 0x74, 0x79, 0x72, 0x65, 0x61, 0x6c, 0x10, 0x06, 0x12,
0x13, 0x0a, 0x0f, 0x6b, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x6f, 0x61,
0x72, 0x64, 0x10, 0x07, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x53, 0x69, 0x67, 0x6e, 0x62, 0x6f, 0x61,
0x72, 0x64, 0x10, 0x08, 0x1a, 0xb2, 0x19, 0x0a, 0x08, 0x4d, 0x61, 0x6e, 0x65, 0x75, 0x76, 0x65,
0x72, 0x12, 0x39, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32,
0x25, 0x2e, 0x76, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x61, 0x2e, 0x44, 0x69, 0x72, 0x65, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4c, 0x65, 0x67, 0x2e, 0x4d, 0x61, 0x6e, 0x65, 0x75, 0x76, 0x65,
0x72, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x29, 0x0a, 0x10,
0x74, 0x65, 0x78, 0x74, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e,
0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x74, 0x65, 0x78, 0x74, 0x49, 0x6e, 0x73, 0x74,
0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x0a, 0x0b, 0x73, 0x74, 0x72, 0x65, 0x65,
0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x76,
0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x61, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x65, 0x74, 0x4e, 0x61,
0x6d, 0x65, 0x52, 0x0a, 0x73, 0x74, 0x72, 0x65, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16,
0x0a, 0x06, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x06,
0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05,
0x20, 0x01, 0x28, 0x01, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x6c, 0x0a, 0x18, 0x62, 0x65,
0x67, 0x69, 0x6e, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x64, 0x69, 0x72,
0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x76,
0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x61, 0x2e, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x4c, 0x65, 0x67, 0x2e, 0x4d, 0x61, 0x6e, 0x65, 0x75, 0x76, 0x65, 0x72, 0x2e, 0x43,
0x61, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x6c, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
0x52, 0x16, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x43, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x6c, 0x44,
0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x62, 0x65, 0x67, 0x69,
0x6e, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52,
0x0c, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x48, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x2a, 0x0a,
0x11, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x5f, 0x73, 0x68, 0x61, 0x70, 0x65, 0x5f, 0x69, 0x6e, 0x64,
0x65, 0x78, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x53,
0x68, 0x61, 0x70, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x26, 0x0a, 0x0f, 0x65, 0x6e, 0x64,
0x5f, 0x73, 0x68, 0x61, 0x70, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x09, 0x20, 0x01,
0x28, 0x0d, 0x52, 0x0d, 0x65, 0x6e, 0x64, 0x53, 0x68, 0x61, 0x70, 0x65, 0x49, 0x6e, 0x64, 0x65,
0x78, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x74, 0x6f,
0x6c, 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x54, 0x6f, 0x6c, 0x6c, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x5f, 0x75, 0x6e, 0x70, 0x61, 0x76, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08,
0x52, 0x0f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x55, 0x6e, 0x70, 0x61, 0x76, 0x65,
0x64, 0x12, 0x4d, 0x0a, 0x23, 0x76, 0x65, 0x72, 0x62, 0x61, 0x6c, 0x5f, 0x74, 0x72, 0x61, 0x6e,
0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x5f, 0x69, 0x6e, 0x73,
0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x20,
0x76, 0x65, 0x72, 0x62, 0x61, 0x6c, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e,
0x41, 0x6c, 0x65, 0x72, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e,
0x12, 0x49, 0x0a, 0x21, 0x76, 0x65, 0x72, 0x62, 0x61, 0x6c, 0x5f, 0x70, 0x72, 0x65, 0x5f, 0x74,
0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75,
0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1e, 0x76, 0x65, 0x72,
0x62, 0x61, 0x6c, 0x50, 0x72, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e,
0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4b, 0x0a, 0x22, 0x76,
0x65, 0x72, 0x62, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x73, 0x74, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73,
0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f,
0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1f, 0x76, 0x65, 0x72, 0x62, 0x61, 0x6c, 0x50,
0x6f, 0x73, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x73,
0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x40, 0x0a, 0x11, 0x62, 0x65, 0x67, 0x69,
0x6e, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0f, 0x20,
0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x76, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x61, 0x2e, 0x53,
0x74, 0x72, 0x65, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x0f, 0x62, 0x65, 0x67, 0x69, 0x6e,
0x53, 0x74, 0x72, 0x65, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x04, 0x73, 0x69,
0x67, 0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x76, 0x61, 0x6c, 0x68, 0x61,
0x6c, 0x6c, 0x61, 0x2e, 0x54, 0x72, 0x69, 0x70, 0x53, 0x69, 0x67, 0x6e, 0x52, 0x04, 0x73, 0x69,
0x67, 0x6e, 0x12, 0x32, 0x0a, 0x15, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x61, 0x62, 0x6f, 0x75, 0x74,
0x5f, 0x65, 0x78, 0x69, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28,
0x0d, 0x52, 0x13, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x45, 0x78, 0x69,
0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2d, 0x0a, 0x12, 0x64, 0x65, 0x70, 0x61, 0x72, 0x74,
0x5f, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x12, 0x20, 0x01,
0x28, 0x09, 0x52, 0x11, 0x64, 0x65, 0x70, 0x61, 0x72, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75,
0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3a, 0x0a, 0x19, 0x76, 0x65, 0x72, 0x62, 0x61, 0x6c, 0x5f,
0x64, 0x65, 0x70, 0x61, 0x72, 0x74, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69,
0x6f, 0x6e, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x17, 0x76, 0x65, 0x72, 0x62, 0x61, 0x6c,
0x44, 0x65, 0x70, 0x61, 0x72, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f,
0x6e, 0x12, 0x2d, 0x0a, 0x12, 0x61, 0x72, 0x72, 0x69, 0x76, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74,
0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x61,
0x72, 0x72, 0x69, 0x76, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e,
0x12, 0x3a, 0x0a, 0x19, 0x76, 0x65, 0x72, 0x62, 0x61, 0x6c, 0x5f, 0x61, 0x72, 0x72, 0x69, 0x76,
0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x15, 0x20,
0x01, 0x28, 0x09, 0x52, 0x17, 0x76, 0x65, 0x72, 0x62, 0x61, 0x6c, 0x41, 0x72, 0x72, 0x69, 0x76,
0x65, 0x49, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3d, 0x0a, 0x0c,
0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x16, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x76, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x61, 0x2e, 0x54, 0x72,
0x61, 0x6e, 0x73, 0x69, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b,
0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x28, 0x0a, 0x10, 0x76,
0x65, 0x72, 0x62, 0x61, 0x6c, 0x5f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x5f, 0x63, 0x75, 0x65, 0x18,
0x17, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x76, 0x65, 0x72, 0x62, 0x61, 0x6c, 0x4d, 0x75, 0x6c,
0x74, 0x69, 0x43, 0x75, 0x65, 0x12, 0x35, 0x0a, 0x0b, 0x74, 0x72, 0x61, 0x76, 0x65, 0x6c, 0x5f,
0x6d, 0x6f, 0x64, 0x65, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x76, 0x61, 0x6c,
0x68, 0x61, 0x6c, 0x6c, 0x61, 0x2e, 0x54, 0x72, 0x61, 0x76, 0x65, 0x6c, 0x4d, 0x6f, 0x64, 0x65,
0x52, 0x0a, 0x74, 0x72, 0x61, 0x76, 0x65, 0x6c, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x38, 0x0a, 0x0c,
0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x19, 0x20, 0x01,
0x28, 0x0e, 0x32, 0x15, 0x2e, 0x76, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x61, 0x2e, 0x56, 0x65,
0x68, 0x69, 0x63, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x76, 0x65, 0x68, 0x69, 0x63,
0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x41, 0x0a, 0x0f, 0x70, 0x65, 0x64, 0x65, 0x73, 0x74,
0x72, 0x69, 0x61, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0e, 0x32,
0x18, 0x2e, 0x76, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x61, 0x2e, 0x50, 0x65, 0x64, 0x65, 0x73,
0x74, 0x72, 0x69, 0x61, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0e, 0x70, 0x65, 0x64, 0x65, 0x73,
0x74, 0x72, 0x69, 0x61, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x38, 0x0a, 0x0c, 0x62, 0x69, 0x63,
0x79, 0x63, 0x6c, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0e, 0x32,
0x15, 0x2e, 0x76, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x61, 0x2e, 0x42, 0x69, 0x63, 0x79, 0x63,
0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x62, 0x69, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x54,
0x79, 0x70, 0x65, 0x12, 0x38, 0x0a, 0x0c, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x5f, 0x74,
0x79, 0x70, 0x65, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x76, 0x61, 0x6c, 0x68,
0x61, 0x6c, 0x6c, 0x61, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x54, 0x79, 0x70, 0x65,
0x52, 0x0b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x28, 0x0a,
0x10, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x69, 0x6e, 0x64, 0x65,
0x78, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x50, 0x61,
0x74, 0x68, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x24, 0x0a, 0x0e, 0x65, 0x6e, 0x64, 0x5f, 0x70,
0x61, 0x74, 0x68, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0d, 0x52,
0x0c, 0x65, 0x6e, 0x64, 0x50, 0x61, 0x74, 0x68, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1c, 0x0a,
0x0a, 0x74, 0x6f, 0x5f, 0x73, 0x74, 0x61, 0x79, 0x5f, 0x6f, 0x6e, 0x18, 0x1f, 0x20, 0x01, 0x28,
0x08, 0x52, 0x08, 0x74, 0x6f, 0x53, 0x74, 0x61, 0x79, 0x4f, 0x6e, 0x12, 0x55, 0x0a, 0x1c, 0x72,
0x6f, 0x75, 0x6e, 0x64, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x74, 0x5f, 0x73,
0x74, 0x72, 0x65, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x20, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x14, 0x2e, 0x76, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x61, 0x2e, 0x53, 0x74, 0x72,
0x65, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x19, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x61, 0x62,
0x6f, 0x75, 0x74, 0x45, 0x78, 0x69, 0x74, 0x53, 0x74, 0x72, 0x65, 0x65, 0x74, 0x4e, 0x61, 0x6d,
0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x75, 0x72, 0x6e, 0x5f, 0x64, 0x65, 0x67, 0x72, 0x65,
0x65, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x75, 0x72, 0x6e, 0x44, 0x65, 0x67,
0x72, 0x65, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x68, 0x61, 0x73, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f,
0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x22, 0x20, 0x01,
0x28, 0x08, 0x52, 0x13, 0x68, 0x61, 0x73, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x74, 0x72,
0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4b, 0x0a, 0x0e, 0x67, 0x75, 0x69, 0x64, 0x61,
0x6e, 0x63, 0x65, 0x5f, 0x76, 0x69, 0x65, 0x77, 0x73, 0x18, 0x23, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x24, 0x2e, 0x76, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x61, 0x2e, 0x44, 0x69, 0x72, 0x65, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4c, 0x65, 0x67, 0x2e, 0x47, 0x75, 0x69, 0x64, 0x61, 0x6e, 0x63,
0x65, 0x56, 0x69, 0x65, 0x77, 0x52, 0x0d, 0x67, 0x75, 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, 0x56,
0x69, 0x65, 0x77, 0x73, 0x12, 0x5c, 0x0a, 0x11, 0x62, 0x73, 0x73, 0x5f, 0x6d, 0x61, 0x6e, 0x65,
0x75, 0x76, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0e, 0x32,
0x30, 0x2e, 0x76, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x61, 0x2e, 0x44, 0x69, 0x72, 0x65, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4c, 0x65, 0x67, 0x2e, 0x4d, 0x61, 0x6e, 0x65, 0x75, 0x76, 0x65,
0x72, 0x2e, 0x42, 0x73, 0x73, 0x4d, 0x61, 0x6e, 0x65, 0x75, 0x76, 0x65, 0x72, 0x54, 0x79, 0x70,
0x65, 0x52, 0x0f, 0x62, 0x73, 0x73, 0x4d, 0x61, 0x6e, 0x65, 0x75, 0x76, 0x65, 0x72, 0x54, 0x79,
0x70, 0x65, 0x12, 0x53, 0x0a, 0x26, 0x76, 0x65, 0x72, 0x62, 0x61, 0x6c, 0x5f, 0x73, 0x75, 0x63,
0x63, 0x69, 0x6e, 0x63, 0x74, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e,
0x5f, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x25, 0x20, 0x01,
0x28, 0x09, 0x52, 0x23, 0x76, 0x65, 0x72, 0x62, 0x61, 0x6c, 0x53, 0x75, 0x63, 0x63, 0x69, 0x6e,
0x63, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x73, 0x74,
0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x39, 0x0a, 0x08, 0x62, 0x73, 0x73, 0x5f, 0x69,
0x6e, 0x66, 0x6f, 0x18, 0x26, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x76, 0x61, 0x6c, 0x68,
0x61, 0x6c, 0x6c, 0x61, 0x2e, 0x42, 0x69, 0x6b, 0x65, 0x53, 0x68, 0x61, 0x72, 0x65, 0x53, 0x74,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x62, 0x73, 0x73, 0x49, 0x6e,
0x66, 0x6f, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x68,
0x69, 0x67, 0x68, 0x77, 0x61, 0x79, 0x18, 0x27, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x70, 0x6f,
0x72, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x69, 0x67, 0x68, 0x77, 0x61, 0x79, 0x12, 0x25, 0x0a,
0x0e, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x66, 0x65, 0x72, 0x72, 0x79, 0x18,
0x28, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x46,
0x65, 0x72, 0x72, 0x79, 0x22, 0x81, 0x01, 0x0a, 0x11, 0x43, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x61,
0x6c, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0a, 0x0a, 0x06, 0x6b, 0x4e,
0x6f, 0x72, 0x74, 0x68, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x4e, 0x6f, 0x72, 0x74, 0x68,
0x45, 0x61, 0x73, 0x74, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x6b, 0x45, 0x61, 0x73, 0x74, 0x10,
0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x53, 0x6f, 0x75, 0x74, 0x68, 0x45, 0x61, 0x73, 0x74, 0x10,
0x03, 0x12, 0x0a, 0x0a, 0x06, 0x6b, 0x53, 0x6f, 0x75, 0x74, 0x68, 0x10, 0x04, 0x12, 0x0e, 0x0a,
0x0a, 0x6b, 0x53, 0x6f, 0x75, 0x74, 0x68, 0x57, 0x65, 0x73, 0x74, 0x10, 0x05, 0x12, 0x09, 0x0a,
0x05, 0x6b, 0x57, 0x65, 0x73, 0x74, 0x10, 0x06, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x4e, 0x6f, 0x72,
0x74, 0x68, 0x57, 0x65, 0x73, 0x74, 0x10, 0x07, 0x22, 0xb4, 0x06, 0x0a, 0x04, 0x54, 0x79, 0x70,
0x65, 0x12, 0x09, 0x0a, 0x05, 0x6b, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06,
0x6b, 0x53, 0x74, 0x61, 0x72, 0x74, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x53, 0x74, 0x61,
0x72, 0x74, 0x52, 0x69, 0x67, 0x68, 0x74, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x53, 0x74,
0x61, 0x72, 0x74, 0x4c, 0x65, 0x66, 0x74, 0x10, 0x03, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x44, 0x65,
0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, 0x6b,
0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x69, 0x67, 0x68, 0x74,
0x10, 0x05, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x4c, 0x65, 0x66, 0x74, 0x10, 0x06, 0x12, 0x0c, 0x0a, 0x08, 0x6b, 0x42, 0x65, 0x63,
0x6f, 0x6d, 0x65, 0x73, 0x10, 0x07, 0x12, 0x0d, 0x0a, 0x09, 0x6b, 0x43, 0x6f, 0x6e, 0x74, 0x69,
0x6e, 0x75, 0x65, 0x10, 0x08, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x53, 0x6c, 0x69, 0x67, 0x68, 0x74,
0x52, 0x69, 0x67, 0x68, 0x74, 0x10, 0x09, 0x12, 0x0a, 0x0a, 0x06, 0x6b, 0x52, 0x69, 0x67, 0x68,
0x74, 0x10, 0x0a, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x53, 0x68, 0x61, 0x72, 0x70, 0x52, 0x69, 0x67,
0x68, 0x74, 0x10, 0x0b, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x55, 0x74, 0x75, 0x72, 0x6e, 0x52, 0x69,
0x67, 0x68, 0x74, 0x10, 0x0c, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x55, 0x74, 0x75, 0x72, 0x6e, 0x4c,
0x65, 0x66, 0x74, 0x10, 0x0d, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x53, 0x68, 0x61, 0x72, 0x70, 0x4c,
0x65, 0x66, 0x74, 0x10, 0x0e, 0x12, 0x09, 0x0a, 0x05, 0x6b, 0x4c, 0x65, 0x66, 0x74, 0x10, 0x0f,
0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x53, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x4c, 0x65, 0x66, 0x74, 0x10,
0x10, 0x12, 0x11, 0x0a, 0x0d, 0x6b, 0x52, 0x61, 0x6d, 0x70, 0x53, 0x74, 0x72, 0x61, 0x69, 0x67,
0x68, 0x74, 0x10, 0x11, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x52, 0x61, 0x6d, 0x70, 0x52, 0x69, 0x67,
0x68, 0x74, 0x10, 0x12, 0x12, 0x0d, 0x0a, 0x09, 0x6b, 0x52, 0x61, 0x6d, 0x70, 0x4c, 0x65, 0x66,
0x74, 0x10, 0x13, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x45, 0x78, 0x69, 0x74, 0x52, 0x69, 0x67, 0x68,
0x74, 0x10, 0x14, 0x12, 0x0d, 0x0a, 0x09, 0x6b, 0x45, 0x78, 0x69, 0x74, 0x4c, 0x65, 0x66, 0x74,
0x10, 0x15, 0x12, 0x11, 0x0a, 0x0d, 0x6b, 0x53, 0x74, 0x61, 0x79, 0x53, 0x74, 0x72, 0x61, 0x69,
0x67, 0x68, 0x74, 0x10, 0x16, 0x12, 0x0e, 0x0a, 0x0a, 0x6b, 0x53, 0x74, 0x61, 0x79, 0x52, 0x69,
0x67, 0x68, 0x74, 0x10, 0x17, 0x12, 0x0d, 0x0a, 0x09, 0x6b, 0x53, 0x74, 0x61, 0x79, 0x4c, 0x65,
0x66, 0x74, 0x10, 0x18, 0x12, 0x0a, 0x0a, 0x06, 0x6b, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x10, 0x19,
0x12, 0x14, 0x0a, 0x10, 0x6b, 0x52, 0x6f, 0x75, 0x6e, 0x64, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x45,
0x6e, 0x74, 0x65, 0x72, 0x10, 0x1a, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x52, 0x6f, 0x75, 0x6e, 0x64,
0x61, 0x62, 0x6f, 0x75, 0x74, 0x45, 0x78, 0x69, 0x74, 0x10, 0x1b, 0x12, 0x0f, 0x0a, 0x0b, 0x6b,
0x46, 0x65, 0x72, 0x72, 0x79, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x10, 0x1c, 0x12, 0x0e, 0x0a, 0x0a,
0x6b, 0x46, 0x65, 0x72, 0x72, 0x79, 0x45, 0x78, 0x69, 0x74, 0x10, 0x1d, 0x12, 0x0c, 0x0a, 0x08,
0x6b, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x10, 0x1e, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x54,
0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x10, 0x1f,
0x12, 0x14, 0x0a, 0x10, 0x6b, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x52, 0x65, 0x6d, 0x61,
0x69, 0x6e, 0x4f, 0x6e, 0x10, 0x20, 0x12, 0x1b, 0x0a, 0x17, 0x6b, 0x54, 0x72, 0x61, 0x6e, 0x73,
0x69, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x72,
0x74, 0x10, 0x21, 0x12, 0x1e, 0x0a, 0x1a, 0x6b, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x43,
0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65,
0x72, 0x10, 0x22, 0x12, 0x21, 0x0a, 0x1d, 0x6b, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x43,
0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x10, 0x23, 0x12, 0x25, 0x0a, 0x21, 0x6b, 0x50, 0x6f, 0x73, 0x74, 0x54,
0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x24, 0x12, 0x0f, 0x0a,
0x0b, 0x6b, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x52, 0x69, 0x67, 0x68, 0x74, 0x10, 0x25, 0x12, 0x0e,
0x0a, 0x0a, 0x6b, 0x4d, 0x65, 0x72, 0x67, 0x65, 0x4c, 0x65, 0x66, 0x74, 0x10, 0x26, 0x12, 0x12,
0x0a, 0x0e, 0x6b, 0x45, 0x6c, 0x65, 0x76, 0x61, 0x74, 0x6f, 0x72, 0x45, 0x6e, 0x74, 0x65, 0x72,
0x10, 0x27, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x53, 0x74, 0x65, 0x70, 0x73, 0x45, 0x6e, 0x74, 0x65,
0x72, 0x10, 0x28, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x45, 0x73, 0x63, 0x61, 0x6c, 0x61, 0x74, 0x6f,
0x72, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x10, 0x29, 0x12, 0x12, 0x0a, 0x0e, 0x6b, 0x42, 0x75, 0x69,
0x6c, 0x64, 0x69, 0x6e, 0x67, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x10, 0x2a, 0x12, 0x11, 0x0a, 0x0d,
0x6b, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x45, 0x78, 0x69, 0x74, 0x10, 0x2b, 0x22,
0x58, 0x0a, 0x0f, 0x42, 0x73, 0x73, 0x4d, 0x61, 0x6e, 0x65, 0x75, 0x76, 0x65, 0x72, 0x54, 0x79,
0x70, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x4e, 0x6f, 0x6e, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f,
0x6e, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x6b, 0x52, 0x65, 0x6e, 0x74, 0x42, 0x69, 0x6b, 0x65,
0x41, 0x74, 0x42, 0x69, 0x6b, 0x65, 0x53, 0x68, 0x61, 0x72, 0x65, 0x10, 0x01, 0x12, 0x1a, 0x0a,
0x16, 0x6b, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x42, 0x69, 0x6b, 0x65, 0x41, 0x74, 0x42, 0x69,
0x6b, 0x65, 0x53, 0x68, 0x61, 0x72, 0x65, 0x10, 0x02, 0x22, 0x3e, 0x0a, 0x0f, 0x44, 0x69, 0x72,
0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x12, 0x2b, 0x0a, 0x04,
0x6c, 0x65, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x76, 0x61, 0x6c,
0x68, 0x61, 0x6c, 0x6c, 0x61, 0x2e, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x4c, 0x65, 0x67, 0x52, 0x04, 0x6c, 0x65, 0x67, 0x73, 0x22, 0x3f, 0x0a, 0x0a, 0x44, 0x69, 0x72,
0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x31, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65,
0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x76, 0x61, 0x6c, 0x68, 0x61, 0x6c,
0x6c, 0x61, 0x2e, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x6f, 0x75,
0x74, 0x65, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x42, 0x40, 0x48, 0x03, 0x5a, 0x3c,
0x67, 0x69, 0x74, 0x2e, 0x63, 0x6f, 0x6f, 0x70, 0x67, 0x6f, 0x2e, 0x69, 0x6f, 0x2f, 0x63, 0x6f,
0x6f, 0x70, 0x67, 0x6f, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x72, 0x6f,
0x75, 0x74, 0x69, 0x6e, 0x67, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2f, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x61, 0x6c, 0x68, 0x61, 0x6c, 0x6c, 0x61, 0x50, 0x00, 0x50, 0x01,
0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_directions_proto_rawDescOnce sync.Once
file_directions_proto_rawDescData = file_directions_proto_rawDesc
)
func file_directions_proto_rawDescGZIP() []byte {
file_directions_proto_rawDescOnce.Do(func() {
file_directions_proto_rawDescData = protoimpl.X.CompressGZIP(file_directions_proto_rawDescData)
})
return file_directions_proto_rawDescData
}
var file_directions_proto_enumTypes = make([]protoimpl.EnumInfo, 4)
var file_directions_proto_msgTypes = make([]protoimpl.MessageInfo, 6)
var file_directions_proto_goTypes = []interface{}{
(DirectionsLeg_GuidanceView_Type)(0), // 0: valhalla.DirectionsLeg.GuidanceView.Type
(DirectionsLeg_Maneuver_CardinalDirection)(0), // 1: valhalla.DirectionsLeg.Maneuver.CardinalDirection
(DirectionsLeg_Maneuver_Type)(0), // 2: valhalla.DirectionsLeg.Maneuver.Type
(DirectionsLeg_Maneuver_BssManeuverType)(0), // 3: valhalla.DirectionsLeg.Maneuver.BssManeuverType
(*DirectionsLeg)(nil), // 4: valhalla.DirectionsLeg
(*DirectionsRoute)(nil), // 5: valhalla.DirectionsRoute
(*Directions)(nil), // 6: valhalla.Directions
(*DirectionsLeg_Summary)(nil), // 7: valhalla.DirectionsLeg.Summary
(*DirectionsLeg_GuidanceView)(nil), // 8: valhalla.DirectionsLeg.GuidanceView
(*DirectionsLeg_Maneuver)(nil), // 9: valhalla.DirectionsLeg.Maneuver
(*Location)(nil), // 10: valhalla.Location
(*BoundingBox)(nil), // 11: valhalla.BoundingBox
(*StreetName)(nil), // 12: valhalla.StreetName
(*TripSign)(nil), // 13: valhalla.TripSign
(*TransitRouteInfo)(nil), // 14: valhalla.TransitRouteInfo
(TravelMode)(0), // 15: valhalla.TravelMode
(VehicleType)(0), // 16: valhalla.VehicleType
(PedestrianType)(0), // 17: valhalla.PedestrianType
(BicycleType)(0), // 18: valhalla.BicycleType
(TransitType)(0), // 19: valhalla.TransitType
(*BikeShareStationInfo)(nil), // 20: valhalla.BikeShareStationInfo
}
var file_directions_proto_depIdxs = []int32{
10, // 0: valhalla.DirectionsLeg.location:type_name -> valhalla.Location
7, // 1: valhalla.DirectionsLeg.summary:type_name -> valhalla.DirectionsLeg.Summary
9, // 2: valhalla.DirectionsLeg.maneuver:type_name -> valhalla.DirectionsLeg.Maneuver
4, // 3: valhalla.DirectionsRoute.legs:type_name -> valhalla.DirectionsLeg
5, // 4: valhalla.Directions.routes:type_name -> valhalla.DirectionsRoute
11, // 5: valhalla.DirectionsLeg.Summary.bbox:type_name -> valhalla.BoundingBox
0, // 6: valhalla.DirectionsLeg.GuidanceView.type:type_name -> valhalla.DirectionsLeg.GuidanceView.Type
2, // 7: valhalla.DirectionsLeg.Maneuver.type:type_name -> valhalla.DirectionsLeg.Maneuver.Type
12, // 8: valhalla.DirectionsLeg.Maneuver.street_name:type_name -> valhalla.StreetName
1, // 9: valhalla.DirectionsLeg.Maneuver.begin_cardinal_direction:type_name -> valhalla.DirectionsLeg.Maneuver.CardinalDirection
12, // 10: valhalla.DirectionsLeg.Maneuver.begin_street_name:type_name -> valhalla.StreetName
13, // 11: valhalla.DirectionsLeg.Maneuver.sign:type_name -> valhalla.TripSign
14, // 12: valhalla.DirectionsLeg.Maneuver.transit_info:type_name -> valhalla.TransitRouteInfo
15, // 13: valhalla.DirectionsLeg.Maneuver.travel_mode:type_name -> valhalla.TravelMode
16, // 14: valhalla.DirectionsLeg.Maneuver.vehicle_type:type_name -> valhalla.VehicleType
17, // 15: valhalla.DirectionsLeg.Maneuver.pedestrian_type:type_name -> valhalla.PedestrianType
18, // 16: valhalla.DirectionsLeg.Maneuver.bicycle_type:type_name -> valhalla.BicycleType
19, // 17: valhalla.DirectionsLeg.Maneuver.transit_type:type_name -> valhalla.TransitType
12, // 18: valhalla.DirectionsLeg.Maneuver.roundabout_exit_street_names:type_name -> valhalla.StreetName
8, // 19: valhalla.DirectionsLeg.Maneuver.guidance_views:type_name -> valhalla.DirectionsLeg.GuidanceView
3, // 20: valhalla.DirectionsLeg.Maneuver.bss_maneuver_type:type_name -> valhalla.DirectionsLeg.Maneuver.BssManeuverType
20, // 21: valhalla.DirectionsLeg.Maneuver.bss_info:type_name -> valhalla.BikeShareStationInfo
22, // [22:22] is the sub-list for method output_type
22, // [22:22] is the sub-list for method input_type
22, // [22:22] is the sub-list for extension type_name
22, // [22:22] is the sub-list for extension extendee
0, // [0:22] is the sub-list for field type_name
}
func init() { file_directions_proto_init() }
func file_directions_proto_init() {
if File_directions_proto != nil {
return
}
file_common_proto_init()
file_sign_proto_init()
if !protoimpl.UnsafeEnabled {
file_directions_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DirectionsLeg); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_directions_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DirectionsRoute); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_directions_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Directions); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_directions_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DirectionsLeg_Summary); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_directions_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DirectionsLeg_GuidanceView); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_directions_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DirectionsLeg_Maneuver); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_directions_proto_rawDesc,
NumEnums: 4,
NumMessages: 6,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_directions_proto_goTypes,
DependencyIndexes: file_directions_proto_depIdxs,
EnumInfos: file_directions_proto_enumTypes,
MessageInfos: file_directions_proto_msgTypes,
}.Build()
File_directions_proto = out.File
file_directions_proto_rawDesc = nil
file_directions_proto_goTypes = nil
file_directions_proto_depIdxs = nil
}