diff --git a/main.go b/main.go index 7186791..c78d512 100644 --- a/main.go +++ b/main.go @@ -1282,6 +1282,7 @@ func createRefInfo(ourteam int) *pb_gen.Referee_Info { var next_command *pb_gen.Referee_Info_Command var bpX float32 var bpY float32 + var gameevent []*pb_gen.GameEvent if ref_command != nil { command = (*pb_gen.Referee_Info_Command)(ref_command.Command) @@ -1289,6 +1290,7 @@ func createRefInfo(ourteam int) *pb_gen.Referee_Info { next_command = (*pb_gen.Referee_Info_Command)(ref_command.NextCommand) bpX = ref_command.GetDesignatedPosition().GetX() bpY = ref_command.GetDesignatedPosition().GetY() + gameevent = ref_command.GetGameEvents() if ourteam == 0 { yellowcards = ref_command.Blue.GetYellowCards() redcards = ref_command.Blue.GetRedCards() @@ -1313,6 +1315,7 @@ func createRefInfo(ourteam int) *pb_gen.Referee_Info { TeaminfoTheir: teaminfo_their, YellowCards: &yellowcards, RedCards: &redcards, + Event: gameevent, PreCommand: last_command, NextCommand: next_command, BallPlacementX: &bpX, diff --git a/proto/pb_gen/to_racoonai.pb.go b/proto/pb_gen/to_racoonai.pb.go index a0ee73c..e851ea9 100644 --- a/proto/pb_gen/to_racoonai.pb.go +++ b/proto/pb_gen/to_racoonai.pb.go @@ -752,10 +752,11 @@ type Referee_Info struct { Stage *Referee_Info_Stage `protobuf:"varint,4,req,name=stage,enum=Referee_Info_Stage" json:"stage,omitempty"` YellowCards *uint32 `protobuf:"varint,5,req,name=yellow_cards,json=yellowCards" json:"yellow_cards,omitempty"` RedCards *uint32 `protobuf:"varint,6,req,name=red_cards,json=redCards" json:"red_cards,omitempty"` - PreCommand *Referee_Info_Command `protobuf:"varint,7,opt,name=pre_command,json=preCommand,enum=Referee_Info_Command" json:"pre_command,omitempty"` - NextCommand *Referee_Info_Command `protobuf:"varint,8,opt,name=next_command,json=nextCommand,enum=Referee_Info_Command" json:"next_command,omitempty"` - BallPlacementX *float32 `protobuf:"fixed32,9,opt,name=ball_placement_x,json=ballPlacementX" json:"ball_placement_x,omitempty"` - BallPlacementY *float32 `protobuf:"fixed32,10,opt,name=ball_placement_y,json=ballPlacementY" json:"ball_placement_y,omitempty"` + Event []*GameEvent `protobuf:"bytes,7,rep,name=event" json:"event,omitempty"` + PreCommand *Referee_Info_Command `protobuf:"varint,8,opt,name=pre_command,json=preCommand,enum=Referee_Info_Command" json:"pre_command,omitempty"` + NextCommand *Referee_Info_Command `protobuf:"varint,9,opt,name=next_command,json=nextCommand,enum=Referee_Info_Command" json:"next_command,omitempty"` + BallPlacementX *float32 `protobuf:"fixed32,10,opt,name=ball_placement_x,json=ballPlacementX" json:"ball_placement_x,omitempty"` + BallPlacementY *float32 `protobuf:"fixed32,11,opt,name=ball_placement_y,json=ballPlacementY" json:"ball_placement_y,omitempty"` } func (x *Referee_Info) Reset() { @@ -832,6 +833,13 @@ func (x *Referee_Info) GetRedCards() uint32 { return 0 } +func (x *Referee_Info) GetEvent() []*GameEvent { + if x != nil { + return x.Event + } + return nil +} + func (x *Referee_Info) GetPreCommand() Referee_Info_Command { if x != nil && x.PreCommand != nil { return *x.PreCommand @@ -1022,6 +1030,7 @@ type RacoonMW_Packet struct { Referee *Referee_Info `protobuf:"bytes,5,req,name=referee" json:"referee,omitempty"` RobotIps []*RobotIP_Infos `protobuf:"bytes,6,rep,name=robot_ips,json=robotIps" json:"robot_ips,omitempty"` Info *Other_Infos `protobuf:"bytes,7,req,name=info" json:"info,omitempty"` + Event []*GameEvent `protobuf:"bytes,8,rep,name=event" json:"event,omitempty"` } func (x *RacoonMW_Packet) Reset() { @@ -1105,6 +1114,13 @@ func (x *RacoonMW_Packet) GetInfo() *Other_Infos { return nil } +func (x *RacoonMW_Packet) GetEvent() []*GameEvent { + if x != nil { + return x.Event + } + return nil +} + type Referee_Info_TeamInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1277,248 +1293,254 @@ var File_to_racoonai_proto protoreflect.FileDescriptor var file_to_racoonai_proto_rawDesc = []byte{ 0x0a, 0x11, 0x74, 0x6f, 0x5f, 0x72, 0x61, 0x63, 0x6f, 0x6f, 0x6e, 0x61, 0x69, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x22, 0xf2, 0x03, 0x0a, 0x0b, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x5f, 0x49, 0x6e, - 0x66, 0x6f, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x07, 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x49, 0x64, 0x12, 0x0c, - 0x0a, 0x01, 0x78, 0x18, 0x02, 0x20, 0x02, 0x28, 0x02, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, - 0x79, 0x18, 0x03, 0x20, 0x02, 0x28, 0x02, 0x52, 0x01, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x68, - 0x65, 0x74, 0x61, 0x18, 0x04, 0x20, 0x02, 0x28, 0x02, 0x52, 0x05, 0x74, 0x68, 0x65, 0x74, 0x61, - 0x12, 0x2e, 0x0a, 0x13, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x62, 0x61, 0x6c, - 0x6c, 0x5f, 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, 0x64, - 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x42, 0x61, 0x6c, 0x6c, 0x52, 0x6f, 0x62, 0x6f, 0x74, - 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x5f, 0x62, 0x61, 0x6c, 0x6c, 0x5f, - 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x72, 0x61, 0x64, - 0x69, 0x61, 0x6e, 0x42, 0x61, 0x6c, 0x6c, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x12, 0x15, 0x0a, 0x06, - 0x64, 0x69, 0x66, 0x66, 0x5f, 0x78, 0x18, 0x07, 0x20, 0x02, 0x28, 0x02, 0x52, 0x05, 0x64, 0x69, - 0x66, 0x66, 0x58, 0x12, 0x15, 0x0a, 0x06, 0x64, 0x69, 0x66, 0x66, 0x5f, 0x79, 0x18, 0x08, 0x20, - 0x02, 0x28, 0x02, 0x52, 0x05, 0x64, 0x69, 0x66, 0x66, 0x59, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x69, - 0x66, 0x66, 0x5f, 0x74, 0x68, 0x65, 0x74, 0x61, 0x18, 0x09, 0x20, 0x02, 0x28, 0x02, 0x52, 0x09, - 0x64, 0x69, 0x66, 0x66, 0x54, 0x68, 0x65, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x70, 0x65, - 0x65, 0x64, 0x18, 0x0a, 0x20, 0x02, 0x28, 0x02, 0x52, 0x05, 0x73, 0x70, 0x65, 0x65, 0x64, 0x12, - 0x14, 0x0a, 0x05, 0x73, 0x6c, 0x6f, 0x70, 0x65, 0x18, 0x0b, 0x20, 0x02, 0x28, 0x02, 0x52, 0x05, - 0x73, 0x6c, 0x6f, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x63, 0x65, - 0x70, 0x74, 0x18, 0x0c, 0x20, 0x02, 0x28, 0x02, 0x52, 0x09, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x63, - 0x65, 0x70, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x61, 0x6e, 0x67, 0x75, 0x6c, 0x61, 0x72, 0x5f, 0x76, - 0x65, 0x6c, 0x6f, 0x63, 0x69, 0x74, 0x79, 0x18, 0x0d, 0x20, 0x02, 0x28, 0x02, 0x52, 0x0f, 0x61, - 0x6e, 0x67, 0x75, 0x6c, 0x61, 0x72, 0x56, 0x65, 0x6c, 0x6f, 0x63, 0x69, 0x74, 0x79, 0x12, 0x18, - 0x0a, 0x07, 0x76, 0x69, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x18, 0x0e, 0x20, 0x02, 0x28, 0x08, 0x52, - 0x07, 0x76, 0x69, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x61, 0x6c, 0x6c, - 0x5f, 0x63, 0x61, 0x74, 0x63, 0x68, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x62, 0x61, - 0x6c, 0x6c, 0x43, 0x61, 0x74, 0x63, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x6e, 0x6c, 0x69, 0x6e, - 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x6f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x12, - 0x27, 0x0a, 0x0f, 0x62, 0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x5f, 0x76, 0x6f, 0x6c, 0x74, 0x61, - 0x67, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0e, 0x62, 0x61, 0x74, 0x74, 0x65, 0x72, - 0x79, 0x56, 0x6f, 0x6c, 0x74, 0x61, 0x67, 0x65, 0x22, 0x8e, 0x02, 0x0a, 0x09, 0x42, 0x61, 0x6c, - 0x6c, 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, - 0x65, 0x64, 0x5f, 0x78, 0x18, 0x01, 0x20, 0x02, 0x28, 0x02, 0x52, 0x09, 0x66, 0x69, 0x6c, 0x74, - 0x65, 0x72, 0x65, 0x64, 0x58, 0x12, 0x1d, 0x0a, 0x0a, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x65, - 0x64, 0x5f, 0x79, 0x18, 0x02, 0x20, 0x02, 0x28, 0x02, 0x52, 0x09, 0x66, 0x69, 0x6c, 0x74, 0x65, - 0x72, 0x65, 0x64, 0x59, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x03, 0x20, 0x02, 0x28, 0x02, 0x52, - 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x04, 0x20, 0x02, 0x28, 0x02, 0x52, 0x01, 0x79, - 0x12, 0x0c, 0x0a, 0x01, 0x7a, 0x18, 0x05, 0x20, 0x02, 0x28, 0x02, 0x52, 0x01, 0x7a, 0x12, 0x15, - 0x0a, 0x06, 0x64, 0x69, 0x66, 0x66, 0x5f, 0x78, 0x18, 0x06, 0x20, 0x02, 0x28, 0x02, 0x52, 0x05, - 0x64, 0x69, 0x66, 0x66, 0x58, 0x12, 0x15, 0x0a, 0x06, 0x64, 0x69, 0x66, 0x66, 0x5f, 0x79, 0x18, - 0x07, 0x20, 0x02, 0x28, 0x02, 0x52, 0x05, 0x64, 0x69, 0x66, 0x66, 0x59, 0x12, 0x21, 0x0a, 0x0c, - 0x73, 0x6c, 0x6f, 0x70, 0x65, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x18, 0x08, 0x20, 0x02, - 0x28, 0x02, 0x52, 0x0b, 0x73, 0x6c, 0x6f, 0x70, 0x65, 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x12, - 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x63, 0x65, 0x70, 0x74, 0x18, 0x09, 0x20, 0x02, - 0x28, 0x02, 0x52, 0x09, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x63, 0x65, 0x70, 0x74, 0x12, 0x14, 0x0a, - 0x05, 0x73, 0x70, 0x65, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x02, 0x28, 0x02, 0x52, 0x05, 0x73, 0x70, - 0x65, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x6c, 0x6f, 0x70, 0x65, 0x18, 0x0b, 0x20, 0x02, - 0x28, 0x02, 0x52, 0x05, 0x73, 0x6c, 0x6f, 0x70, 0x65, 0x22, 0xc5, 0x04, 0x0a, 0x0d, 0x47, 0x65, - 0x6f, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x21, 0x0a, 0x0c, 0x66, - 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x01, 0x20, 0x02, 0x28, - 0x05, 0x52, 0x0b, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x1f, - 0x0a, 0x0b, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x02, 0x20, - 0x02, 0x28, 0x05, 0x52, 0x0a, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x57, 0x69, 0x64, 0x74, 0x68, 0x12, - 0x1d, 0x0a, 0x0a, 0x67, 0x6f, 0x61, 0x6c, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x03, 0x20, - 0x02, 0x28, 0x05, 0x52, 0x09, 0x67, 0x6f, 0x61, 0x6c, 0x57, 0x69, 0x64, 0x74, 0x68, 0x12, 0x1d, - 0x0a, 0x0a, 0x67, 0x6f, 0x61, 0x6c, 0x5f, 0x64, 0x65, 0x70, 0x74, 0x68, 0x18, 0x04, 0x20, 0x02, - 0x28, 0x05, 0x52, 0x09, 0x67, 0x6f, 0x61, 0x6c, 0x44, 0x65, 0x70, 0x74, 0x68, 0x12, 0x25, 0x0a, - 0x0e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, - 0x05, 0x20, 0x02, 0x28, 0x05, 0x52, 0x0d, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x57, - 0x69, 0x64, 0x74, 0x68, 0x12, 0x2c, 0x0a, 0x12, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x5f, - 0x61, 0x72, 0x65, 0x61, 0x5f, 0x64, 0x65, 0x70, 0x74, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x10, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x41, 0x72, 0x65, 0x61, 0x44, 0x65, 0x70, - 0x74, 0x68, 0x12, 0x2c, 0x0a, 0x12, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x5f, 0x61, 0x72, - 0x65, 0x61, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, - 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x41, 0x72, 0x65, 0x61, 0x57, 0x69, 0x64, 0x74, 0x68, - 0x12, 0x30, 0x0a, 0x14, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x69, 0x72, 0x63, 0x6c, - 0x65, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x75, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, - 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x43, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x52, 0x61, 0x64, 0x69, - 0x75, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x74, 0x68, 0x69, 0x63, 0x6b, - 0x6e, 0x65, 0x73, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x6c, 0x69, 0x6e, 0x65, - 0x54, 0x68, 0x69, 0x63, 0x6b, 0x6e, 0x65, 0x73, 0x73, 0x12, 0x3c, 0x0a, 0x1b, 0x67, 0x6f, 0x61, - 0x6c, 0x5f, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x6f, 0x5f, 0x70, 0x65, 0x6e, 0x61, - 0x6c, 0x74, 0x79, 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x17, - 0x67, 0x6f, 0x61, 0x6c, 0x43, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x54, 0x6f, 0x50, 0x65, 0x6e, 0x61, - 0x6c, 0x74, 0x79, 0x4d, 0x61, 0x72, 0x6b, 0x12, 0x1f, 0x0a, 0x0b, 0x67, 0x6f, 0x61, 0x6c, 0x5f, - 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x67, 0x6f, - 0x61, 0x6c, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x61, 0x6c, 0x6c, - 0x5f, 0x72, 0x61, 0x64, 0x69, 0x75, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x62, - 0x61, 0x6c, 0x6c, 0x52, 0x61, 0x64, 0x69, 0x75, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, - 0x5f, 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x75, 0x73, 0x18, 0x0d, 0x20, - 0x01, 0x28, 0x02, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x52, 0x61, 0x64, - 0x69, 0x75, 0x73, 0x12, 0x15, 0x0a, 0x06, 0x67, 0x6f, 0x61, 0x6c, 0x5f, 0x78, 0x18, 0x0e, 0x20, - 0x02, 0x28, 0x02, 0x52, 0x05, 0x67, 0x6f, 0x61, 0x6c, 0x58, 0x12, 0x15, 0x0a, 0x06, 0x67, 0x6f, - 0x61, 0x6c, 0x5f, 0x79, 0x18, 0x0f, 0x20, 0x02, 0x28, 0x02, 0x52, 0x05, 0x67, 0x6f, 0x61, 0x6c, - 0x59, 0x22, 0xff, 0x0d, 0x0a, 0x0c, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x65, 0x5f, 0x49, 0x6e, - 0x66, 0x6f, 0x12, 0x2f, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20, - 0x02, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x65, 0x5f, 0x49, 0x6e, - 0x66, 0x6f, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, - 0x61, 0x6e, 0x64, 0x12, 0x39, 0x0a, 0x0c, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x66, 0x6f, 0x5f, - 0x6f, 0x75, 0x72, 0x18, 0x02, 0x20, 0x02, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x52, 0x65, 0x66, 0x65, - 0x72, 0x65, 0x65, 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, - 0x6f, 0x52, 0x0b, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x66, 0x6f, 0x4f, 0x75, 0x72, 0x12, 0x3d, - 0x0a, 0x0e, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x66, 0x6f, 0x5f, 0x74, 0x68, 0x65, 0x69, 0x72, - 0x18, 0x03, 0x20, 0x02, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x65, - 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0d, - 0x74, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x66, 0x6f, 0x54, 0x68, 0x65, 0x69, 0x72, 0x12, 0x29, 0x0a, - 0x05, 0x73, 0x74, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x02, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x52, - 0x65, 0x66, 0x65, 0x72, 0x65, 0x65, 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x53, 0x74, 0x61, 0x67, - 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x79, 0x65, 0x6c, 0x6c, - 0x6f, 0x77, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x18, 0x05, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x0b, - 0x79, 0x65, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x72, - 0x65, 0x64, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x18, 0x06, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x08, - 0x72, 0x65, 0x64, 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, 0x36, 0x0a, 0x0b, 0x70, 0x72, 0x65, 0x5f, - 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, - 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x65, 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x43, 0x6f, 0x6d, - 0x6d, 0x61, 0x6e, 0x64, 0x52, 0x0a, 0x70, 0x72, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, - 0x12, 0x38, 0x0a, 0x0c, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x65, - 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x52, 0x0b, 0x6e, - 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x62, 0x61, - 0x6c, 0x6c, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x78, 0x18, 0x09, - 0x20, 0x01, 0x28, 0x02, 0x52, 0x0e, 0x62, 0x61, 0x6c, 0x6c, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x6d, - 0x65, 0x6e, 0x74, 0x58, 0x12, 0x28, 0x0a, 0x10, 0x62, 0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x6c, 0x61, - 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0e, - 0x62, 0x61, 0x6c, 0x6c, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x59, 0x1a, 0xad, - 0x04, 0x0a, 0x08, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x02, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x05, - 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x65, 0x64, 0x5f, 0x63, 0x61, 0x72, - 0x64, 0x73, 0x18, 0x03, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x65, 0x64, 0x43, 0x61, 0x72, - 0x64, 0x73, 0x12, 0x2e, 0x0a, 0x11, 0x79, 0x65, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x63, 0x61, 0x72, - 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0d, 0x42, 0x02, 0x10, - 0x01, 0x52, 0x0f, 0x79, 0x65, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, - 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x79, 0x65, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x63, 0x61, 0x72, - 0x64, 0x73, 0x18, 0x05, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x0b, 0x79, 0x65, 0x6c, 0x6c, 0x6f, 0x77, - 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, - 0x73, 0x18, 0x06, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, - 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x5f, 0x74, 0x69, 0x6d, - 0x65, 0x18, 0x07, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, - 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x67, 0x6f, 0x61, 0x6c, 0x6b, 0x65, 0x65, 0x70, - 0x65, 0x72, 0x18, 0x08, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x0a, 0x67, 0x6f, 0x61, 0x6c, 0x6b, 0x65, - 0x65, 0x70, 0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x6f, 0x75, 0x6c, 0x5f, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x65, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x66, 0x6f, 0x75, 0x6c, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x36, 0x0a, 0x17, 0x62, 0x61, 0x6c, 0x6c, 0x5f, - 0x70, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, - 0x65, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x62, 0x61, 0x6c, 0x6c, 0x50, 0x6c, - 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x73, 0x12, - 0x24, 0x0a, 0x0e, 0x63, 0x61, 0x6e, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x5f, 0x62, 0x61, 0x6c, - 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x63, 0x61, 0x6e, 0x50, 0x6c, 0x61, 0x63, - 0x65, 0x42, 0x61, 0x6c, 0x6c, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x61, 0x6c, 0x6c, - 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x62, 0x6f, 0x74, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0e, 0x6d, 0x61, 0x78, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x42, 0x6f, 0x74, 0x73, 0x12, - 0x36, 0x0a, 0x17, 0x62, 0x6f, 0x74, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x15, 0x62, 0x6f, 0x74, 0x53, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, - 0x6e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x45, 0x0a, 0x1f, 0x62, 0x61, 0x6c, 0x6c, 0x5f, - 0x70, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, - 0x65, 0x73, 0x5f, 0x72, 0x65, 0x61, 0x63, 0x68, 0x65, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x1c, 0x62, 0x61, 0x6c, 0x6c, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x46, - 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x61, 0x63, 0x68, 0x65, 0x64, 0x22, 0x8e, - 0x03, 0x0a, 0x07, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x08, 0x0a, 0x04, 0x48, 0x41, - 0x4c, 0x54, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x54, 0x4f, 0x50, 0x10, 0x01, 0x12, 0x10, - 0x0a, 0x0c, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0x02, - 0x12, 0x0f, 0x0a, 0x0b, 0x46, 0x4f, 0x52, 0x43, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, - 0x03, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x52, 0x45, 0x50, 0x41, 0x52, 0x45, 0x5f, 0x4b, 0x49, 0x43, - 0x4b, 0x4f, 0x46, 0x46, 0x5f, 0x59, 0x45, 0x4c, 0x4c, 0x4f, 0x57, 0x10, 0x04, 0x12, 0x18, 0x0a, - 0x14, 0x50, 0x52, 0x45, 0x50, 0x41, 0x52, 0x45, 0x5f, 0x4b, 0x49, 0x43, 0x4b, 0x4f, 0x46, 0x46, - 0x5f, 0x42, 0x4c, 0x55, 0x45, 0x10, 0x05, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x52, 0x45, 0x50, 0x41, - 0x52, 0x45, 0x5f, 0x50, 0x45, 0x4e, 0x41, 0x4c, 0x54, 0x59, 0x5f, 0x59, 0x45, 0x4c, 0x4c, 0x4f, - 0x57, 0x10, 0x06, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x52, 0x45, 0x50, 0x41, 0x52, 0x45, 0x5f, 0x50, - 0x45, 0x4e, 0x41, 0x4c, 0x54, 0x59, 0x5f, 0x42, 0x4c, 0x55, 0x45, 0x10, 0x07, 0x12, 0x16, 0x0a, - 0x12, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x5f, 0x46, 0x52, 0x45, 0x45, 0x5f, 0x59, 0x45, 0x4c, - 0x4c, 0x4f, 0x57, 0x10, 0x08, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x5f, - 0x46, 0x52, 0x45, 0x45, 0x5f, 0x42, 0x4c, 0x55, 0x45, 0x10, 0x09, 0x12, 0x18, 0x0a, 0x14, 0x49, - 0x4e, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x5f, 0x46, 0x52, 0x45, 0x45, 0x5f, 0x59, 0x45, 0x4c, - 0x4c, 0x4f, 0x57, 0x10, 0x0a, 0x12, 0x16, 0x0a, 0x12, 0x49, 0x4e, 0x44, 0x49, 0x52, 0x45, 0x43, - 0x54, 0x5f, 0x46, 0x52, 0x45, 0x45, 0x5f, 0x42, 0x4c, 0x55, 0x45, 0x10, 0x0b, 0x12, 0x12, 0x0a, - 0x0e, 0x54, 0x49, 0x4d, 0x45, 0x4f, 0x55, 0x54, 0x5f, 0x59, 0x45, 0x4c, 0x4c, 0x4f, 0x57, 0x10, - 0x0c, 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x49, 0x4d, 0x45, 0x4f, 0x55, 0x54, 0x5f, 0x42, 0x4c, 0x55, - 0x45, 0x10, 0x0d, 0x12, 0x13, 0x0a, 0x0b, 0x47, 0x4f, 0x41, 0x4c, 0x5f, 0x59, 0x45, 0x4c, 0x4c, - 0x4f, 0x57, 0x10, 0x0e, 0x1a, 0x02, 0x08, 0x01, 0x12, 0x11, 0x0a, 0x09, 0x47, 0x4f, 0x41, 0x4c, - 0x5f, 0x42, 0x4c, 0x55, 0x45, 0x10, 0x0f, 0x1a, 0x02, 0x08, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x42, - 0x41, 0x4c, 0x4c, 0x5f, 0x50, 0x4c, 0x41, 0x43, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x59, 0x45, - 0x4c, 0x4c, 0x4f, 0x57, 0x10, 0x10, 0x12, 0x17, 0x0a, 0x13, 0x42, 0x41, 0x4c, 0x4c, 0x5f, 0x50, - 0x4c, 0x41, 0x43, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x42, 0x4c, 0x55, 0x45, 0x10, 0x11, 0x22, - 0xd1, 0x02, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x67, 0x65, 0x12, 0x19, 0x0a, 0x15, 0x4e, 0x4f, 0x52, - 0x4d, 0x41, 0x4c, 0x5f, 0x46, 0x49, 0x52, 0x53, 0x54, 0x5f, 0x48, 0x41, 0x4c, 0x46, 0x5f, 0x50, - 0x52, 0x45, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x5f, 0x46, - 0x49, 0x52, 0x53, 0x54, 0x5f, 0x48, 0x41, 0x4c, 0x46, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x4e, - 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x5f, 0x48, 0x41, 0x4c, 0x46, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x10, - 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x5f, 0x53, 0x45, 0x43, 0x4f, - 0x4e, 0x44, 0x5f, 0x48, 0x41, 0x4c, 0x46, 0x5f, 0x50, 0x52, 0x45, 0x10, 0x03, 0x12, 0x16, 0x0a, - 0x12, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x5f, 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x5f, 0x48, - 0x41, 0x4c, 0x46, 0x10, 0x04, 0x12, 0x14, 0x0a, 0x10, 0x45, 0x58, 0x54, 0x52, 0x41, 0x5f, 0x54, - 0x49, 0x4d, 0x45, 0x5f, 0x42, 0x52, 0x45, 0x41, 0x4b, 0x10, 0x05, 0x12, 0x18, 0x0a, 0x14, 0x45, - 0x58, 0x54, 0x52, 0x41, 0x5f, 0x46, 0x49, 0x52, 0x53, 0x54, 0x5f, 0x48, 0x41, 0x4c, 0x46, 0x5f, - 0x50, 0x52, 0x45, 0x10, 0x06, 0x12, 0x14, 0x0a, 0x10, 0x45, 0x58, 0x54, 0x52, 0x41, 0x5f, 0x46, - 0x49, 0x52, 0x53, 0x54, 0x5f, 0x48, 0x41, 0x4c, 0x46, 0x10, 0x07, 0x12, 0x13, 0x0a, 0x0f, 0x45, - 0x58, 0x54, 0x52, 0x41, 0x5f, 0x48, 0x41, 0x4c, 0x46, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x10, 0x08, - 0x12, 0x19, 0x0a, 0x15, 0x45, 0x58, 0x54, 0x52, 0x41, 0x5f, 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, - 0x5f, 0x48, 0x41, 0x4c, 0x46, 0x5f, 0x50, 0x52, 0x45, 0x10, 0x09, 0x12, 0x15, 0x0a, 0x11, 0x45, + 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x73, 0x73, 0x6c, 0x5f, 0x67, 0x63, 0x5f, 0x67, 0x61, 0x6d, 0x65, + 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xf2, 0x03, 0x0a, + 0x0b, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x12, 0x19, 0x0a, 0x08, + 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x07, + 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x49, 0x64, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x02, 0x20, 0x02, + 0x28, 0x02, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x03, 0x20, 0x02, 0x28, 0x02, + 0x52, 0x01, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x68, 0x65, 0x74, 0x61, 0x18, 0x04, 0x20, 0x02, + 0x28, 0x02, 0x52, 0x05, 0x74, 0x68, 0x65, 0x74, 0x61, 0x12, 0x2e, 0x0a, 0x13, 0x64, 0x69, 0x73, + 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x62, 0x61, 0x6c, 0x6c, 0x5f, 0x72, 0x6f, 0x62, 0x6f, 0x74, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, + 0x42, 0x61, 0x6c, 0x6c, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x61, 0x64, + 0x69, 0x61, 0x6e, 0x5f, 0x62, 0x61, 0x6c, 0x6c, 0x5f, 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x72, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x42, 0x61, 0x6c, 0x6c, + 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x12, 0x15, 0x0a, 0x06, 0x64, 0x69, 0x66, 0x66, 0x5f, 0x78, 0x18, + 0x07, 0x20, 0x02, 0x28, 0x02, 0x52, 0x05, 0x64, 0x69, 0x66, 0x66, 0x58, 0x12, 0x15, 0x0a, 0x06, + 0x64, 0x69, 0x66, 0x66, 0x5f, 0x79, 0x18, 0x08, 0x20, 0x02, 0x28, 0x02, 0x52, 0x05, 0x64, 0x69, + 0x66, 0x66, 0x59, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x69, 0x66, 0x66, 0x5f, 0x74, 0x68, 0x65, 0x74, + 0x61, 0x18, 0x09, 0x20, 0x02, 0x28, 0x02, 0x52, 0x09, 0x64, 0x69, 0x66, 0x66, 0x54, 0x68, 0x65, + 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x70, 0x65, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x02, 0x28, + 0x02, 0x52, 0x05, 0x73, 0x70, 0x65, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x6c, 0x6f, 0x70, + 0x65, 0x18, 0x0b, 0x20, 0x02, 0x28, 0x02, 0x52, 0x05, 0x73, 0x6c, 0x6f, 0x70, 0x65, 0x12, 0x1c, + 0x0a, 0x09, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x63, 0x65, 0x70, 0x74, 0x18, 0x0c, 0x20, 0x02, 0x28, + 0x02, 0x52, 0x09, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x63, 0x65, 0x70, 0x74, 0x12, 0x29, 0x0a, 0x10, + 0x61, 0x6e, 0x67, 0x75, 0x6c, 0x61, 0x72, 0x5f, 0x76, 0x65, 0x6c, 0x6f, 0x63, 0x69, 0x74, 0x79, + 0x18, 0x0d, 0x20, 0x02, 0x28, 0x02, 0x52, 0x0f, 0x61, 0x6e, 0x67, 0x75, 0x6c, 0x61, 0x72, 0x56, + 0x65, 0x6c, 0x6f, 0x63, 0x69, 0x74, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x69, 0x73, 0x69, 0x62, + 0x6c, 0x65, 0x18, 0x0e, 0x20, 0x02, 0x28, 0x08, 0x52, 0x07, 0x76, 0x69, 0x73, 0x69, 0x62, 0x6c, + 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x61, 0x6c, 0x6c, 0x5f, 0x63, 0x61, 0x74, 0x63, 0x68, 0x18, + 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x62, 0x61, 0x6c, 0x6c, 0x43, 0x61, 0x74, 0x63, 0x68, + 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x06, 0x6f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x61, 0x74, 0x74, + 0x65, 0x72, 0x79, 0x5f, 0x76, 0x6f, 0x6c, 0x74, 0x61, 0x67, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, + 0x02, 0x52, 0x0e, 0x62, 0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x56, 0x6f, 0x6c, 0x74, 0x61, 0x67, + 0x65, 0x22, 0x8e, 0x02, 0x0a, 0x09, 0x42, 0x61, 0x6c, 0x6c, 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x12, + 0x1d, 0x0a, 0x0a, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x65, 0x64, 0x5f, 0x78, 0x18, 0x01, 0x20, + 0x02, 0x28, 0x02, 0x52, 0x09, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x65, 0x64, 0x58, 0x12, 0x1d, + 0x0a, 0x0a, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x65, 0x64, 0x5f, 0x79, 0x18, 0x02, 0x20, 0x02, + 0x28, 0x02, 0x52, 0x09, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x65, 0x64, 0x59, 0x12, 0x0c, 0x0a, + 0x01, 0x78, 0x18, 0x03, 0x20, 0x02, 0x28, 0x02, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, + 0x18, 0x04, 0x20, 0x02, 0x28, 0x02, 0x52, 0x01, 0x79, 0x12, 0x0c, 0x0a, 0x01, 0x7a, 0x18, 0x05, + 0x20, 0x02, 0x28, 0x02, 0x52, 0x01, 0x7a, 0x12, 0x15, 0x0a, 0x06, 0x64, 0x69, 0x66, 0x66, 0x5f, + 0x78, 0x18, 0x06, 0x20, 0x02, 0x28, 0x02, 0x52, 0x05, 0x64, 0x69, 0x66, 0x66, 0x58, 0x12, 0x15, + 0x0a, 0x06, 0x64, 0x69, 0x66, 0x66, 0x5f, 0x79, 0x18, 0x07, 0x20, 0x02, 0x28, 0x02, 0x52, 0x05, + 0x64, 0x69, 0x66, 0x66, 0x59, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x6c, 0x6f, 0x70, 0x65, 0x5f, 0x72, + 0x61, 0x64, 0x69, 0x61, 0x6e, 0x18, 0x08, 0x20, 0x02, 0x28, 0x02, 0x52, 0x0b, 0x73, 0x6c, 0x6f, + 0x70, 0x65, 0x52, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x74, 0x65, + 0x72, 0x63, 0x65, 0x70, 0x74, 0x18, 0x09, 0x20, 0x02, 0x28, 0x02, 0x52, 0x09, 0x69, 0x6e, 0x74, + 0x65, 0x72, 0x63, 0x65, 0x70, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x70, 0x65, 0x65, 0x64, 0x18, + 0x0a, 0x20, 0x02, 0x28, 0x02, 0x52, 0x05, 0x73, 0x70, 0x65, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, + 0x73, 0x6c, 0x6f, 0x70, 0x65, 0x18, 0x0b, 0x20, 0x02, 0x28, 0x02, 0x52, 0x05, 0x73, 0x6c, 0x6f, + 0x70, 0x65, 0x22, 0xc5, 0x04, 0x0a, 0x0d, 0x47, 0x65, 0x6f, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x5f, + 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x18, 0x01, 0x20, 0x02, 0x28, 0x05, 0x52, 0x0b, 0x66, 0x69, 0x65, 0x6c, + 0x64, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x69, 0x65, 0x6c, 0x64, + 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x02, 0x20, 0x02, 0x28, 0x05, 0x52, 0x0a, 0x66, 0x69, + 0x65, 0x6c, 0x64, 0x57, 0x69, 0x64, 0x74, 0x68, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x6f, 0x61, 0x6c, + 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x03, 0x20, 0x02, 0x28, 0x05, 0x52, 0x09, 0x67, 0x6f, + 0x61, 0x6c, 0x57, 0x69, 0x64, 0x74, 0x68, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x6f, 0x61, 0x6c, 0x5f, + 0x64, 0x65, 0x70, 0x74, 0x68, 0x18, 0x04, 0x20, 0x02, 0x28, 0x05, 0x52, 0x09, 0x67, 0x6f, 0x61, + 0x6c, 0x44, 0x65, 0x70, 0x74, 0x68, 0x12, 0x25, 0x0a, 0x0e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x61, + 0x72, 0x79, 0x5f, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x05, 0x20, 0x02, 0x28, 0x05, 0x52, 0x0d, + 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x57, 0x69, 0x64, 0x74, 0x68, 0x12, 0x2c, 0x0a, + 0x12, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x5f, 0x61, 0x72, 0x65, 0x61, 0x5f, 0x64, 0x65, + 0x70, 0x74, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x70, 0x65, 0x6e, 0x61, 0x6c, + 0x74, 0x79, 0x41, 0x72, 0x65, 0x61, 0x44, 0x65, 0x70, 0x74, 0x68, 0x12, 0x2c, 0x0a, 0x12, 0x70, + 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x5f, 0x61, 0x72, 0x65, 0x61, 0x5f, 0x77, 0x69, 0x64, 0x74, + 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, + 0x41, 0x72, 0x65, 0x61, 0x57, 0x69, 0x64, 0x74, 0x68, 0x12, 0x30, 0x0a, 0x14, 0x63, 0x65, 0x6e, + 0x74, 0x65, 0x72, 0x5f, 0x63, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x75, + 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x43, + 0x69, 0x72, 0x63, 0x6c, 0x65, 0x52, 0x61, 0x64, 0x69, 0x75, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x6c, + 0x69, 0x6e, 0x65, 0x5f, 0x74, 0x68, 0x69, 0x63, 0x6b, 0x6e, 0x65, 0x73, 0x73, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0d, 0x6c, 0x69, 0x6e, 0x65, 0x54, 0x68, 0x69, 0x63, 0x6b, 0x6e, 0x65, + 0x73, 0x73, 0x12, 0x3c, 0x0a, 0x1b, 0x67, 0x6f, 0x61, 0x6c, 0x5f, 0x63, 0x65, 0x6e, 0x74, 0x65, + 0x72, 0x5f, 0x74, 0x6f, 0x5f, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x5f, 0x6d, 0x61, 0x72, + 0x6b, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x17, 0x67, 0x6f, 0x61, 0x6c, 0x43, 0x65, 0x6e, + 0x74, 0x65, 0x72, 0x54, 0x6f, 0x50, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x4d, 0x61, 0x72, 0x6b, + 0x12, 0x1f, 0x0a, 0x0b, 0x67, 0x6f, 0x61, 0x6c, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, + 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x67, 0x6f, 0x61, 0x6c, 0x48, 0x65, 0x69, 0x67, 0x68, + 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x61, 0x6c, 0x6c, 0x5f, 0x72, 0x61, 0x64, 0x69, 0x75, 0x73, + 0x18, 0x0c, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x62, 0x61, 0x6c, 0x6c, 0x52, 0x61, 0x64, 0x69, + 0x75, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x5f, + 0x72, 0x61, 0x64, 0x69, 0x75, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0e, 0x6d, 0x61, + 0x78, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x52, 0x61, 0x64, 0x69, 0x75, 0x73, 0x12, 0x15, 0x0a, 0x06, + 0x67, 0x6f, 0x61, 0x6c, 0x5f, 0x78, 0x18, 0x0e, 0x20, 0x02, 0x28, 0x02, 0x52, 0x05, 0x67, 0x6f, + 0x61, 0x6c, 0x58, 0x12, 0x15, 0x0a, 0x06, 0x67, 0x6f, 0x61, 0x6c, 0x5f, 0x79, 0x18, 0x0f, 0x20, + 0x02, 0x28, 0x02, 0x52, 0x05, 0x67, 0x6f, 0x61, 0x6c, 0x59, 0x22, 0xa1, 0x0e, 0x0a, 0x0c, 0x52, + 0x65, 0x66, 0x65, 0x72, 0x65, 0x65, 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2f, 0x0a, 0x07, 0x63, + 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x02, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x52, + 0x65, 0x66, 0x65, 0x72, 0x65, 0x65, 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, + 0x61, 0x6e, 0x64, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x39, 0x0a, 0x0c, + 0x74, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x66, 0x6f, 0x5f, 0x6f, 0x75, 0x72, 0x18, 0x02, 0x20, 0x02, + 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x65, 0x5f, 0x49, 0x6e, 0x66, + 0x6f, 0x2e, 0x54, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x74, 0x65, 0x61, 0x6d, + 0x69, 0x6e, 0x66, 0x6f, 0x4f, 0x75, 0x72, 0x12, 0x3d, 0x0a, 0x0e, 0x74, 0x65, 0x61, 0x6d, 0x69, + 0x6e, 0x66, 0x6f, 0x5f, 0x74, 0x68, 0x65, 0x69, 0x72, 0x18, 0x03, 0x20, 0x02, 0x28, 0x0b, 0x32, + 0x16, 0x2e, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x65, 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x54, + 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0d, 0x74, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x66, + 0x6f, 0x54, 0x68, 0x65, 0x69, 0x72, 0x12, 0x29, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x67, 0x65, 0x18, + 0x04, 0x20, 0x02, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x65, 0x5f, + 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x53, 0x74, 0x61, 0x67, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x67, + 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x79, 0x65, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x63, 0x61, 0x72, 0x64, + 0x73, 0x18, 0x05, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x0b, 0x79, 0x65, 0x6c, 0x6c, 0x6f, 0x77, 0x43, + 0x61, 0x72, 0x64, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x65, 0x64, 0x5f, 0x63, 0x61, 0x72, 0x64, + 0x73, 0x18, 0x06, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x65, 0x64, 0x43, 0x61, 0x72, 0x64, + 0x73, 0x12, 0x20, 0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x0a, 0x2e, 0x47, 0x61, 0x6d, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x05, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x12, 0x36, 0x0a, 0x0b, 0x70, 0x72, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, + 0x6e, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x52, 0x65, 0x66, 0x65, 0x72, + 0x65, 0x65, 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x52, + 0x0a, 0x70, 0x72, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x38, 0x0a, 0x0c, 0x6e, + 0x65, 0x78, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x15, 0x2e, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x65, 0x5f, 0x49, 0x6e, 0x66, 0x6f, + 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x52, 0x0b, 0x6e, 0x65, 0x78, 0x74, 0x43, 0x6f, + 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x62, 0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x6c, + 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x78, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x02, 0x52, + 0x0e, 0x62, 0x61, 0x6c, 0x6c, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x58, 0x12, + 0x28, 0x0a, 0x10, 0x62, 0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x5f, 0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0e, 0x62, 0x61, 0x6c, 0x6c, 0x50, + 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x59, 0x1a, 0xad, 0x04, 0x0a, 0x08, 0x54, 0x65, + 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, + 0x20, 0x02, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, + 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, + 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x65, 0x64, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x18, 0x03, 0x20, + 0x02, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x65, 0x64, 0x43, 0x61, 0x72, 0x64, 0x73, 0x12, 0x2e, 0x0a, + 0x11, 0x79, 0x65, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x5f, 0x74, 0x69, 0x6d, + 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0d, 0x42, 0x02, 0x10, 0x01, 0x52, 0x0f, 0x79, 0x65, + 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x61, 0x72, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x12, 0x21, 0x0a, + 0x0c, 0x79, 0x65, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x73, 0x18, 0x05, 0x20, + 0x02, 0x28, 0x0d, 0x52, 0x0b, 0x79, 0x65, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x61, 0x72, 0x64, 0x73, + 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x73, 0x18, 0x06, 0x20, 0x02, + 0x28, 0x0d, 0x52, 0x08, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x73, 0x12, 0x21, 0x0a, 0x0c, + 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x02, + 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, + 0x1e, 0x0a, 0x0a, 0x67, 0x6f, 0x61, 0x6c, 0x6b, 0x65, 0x65, 0x70, 0x65, 0x72, 0x18, 0x08, 0x20, + 0x02, 0x28, 0x0d, 0x52, 0x0a, 0x67, 0x6f, 0x61, 0x6c, 0x6b, 0x65, 0x65, 0x70, 0x65, 0x72, 0x12, + 0x21, 0x0a, 0x0c, 0x66, 0x6f, 0x75, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x66, 0x6f, 0x75, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x65, 0x72, 0x12, 0x36, 0x0a, 0x17, 0x62, 0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x73, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x15, 0x62, 0x61, 0x6c, 0x6c, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x61, + 0x6e, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x5f, 0x62, 0x61, 0x6c, 0x6c, 0x18, 0x0c, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x0c, 0x63, 0x61, 0x6e, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x42, 0x61, 0x6c, 0x6c, + 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, + 0x62, 0x6f, 0x74, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x41, + 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x42, 0x6f, 0x74, 0x73, 0x12, 0x36, 0x0a, 0x17, 0x62, 0x6f, + 0x74, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x62, 0x6f, 0x74, + 0x53, 0x75, 0x62, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x12, 0x45, 0x0a, 0x1f, 0x62, 0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x73, 0x5f, 0x72, 0x65, + 0x61, 0x63, 0x68, 0x65, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1c, 0x62, 0x61, 0x6c, + 0x6c, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, + 0x65, 0x73, 0x52, 0x65, 0x61, 0x63, 0x68, 0x65, 0x64, 0x22, 0x8e, 0x03, 0x0a, 0x07, 0x43, 0x6f, + 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x08, 0x0a, 0x04, 0x48, 0x41, 0x4c, 0x54, 0x10, 0x00, 0x12, + 0x08, 0x0a, 0x04, 0x53, 0x54, 0x4f, 0x50, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x4e, 0x4f, 0x52, + 0x4d, 0x41, 0x4c, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x46, + 0x4f, 0x52, 0x43, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0x03, 0x12, 0x1a, 0x0a, 0x16, + 0x50, 0x52, 0x45, 0x50, 0x41, 0x52, 0x45, 0x5f, 0x4b, 0x49, 0x43, 0x4b, 0x4f, 0x46, 0x46, 0x5f, + 0x59, 0x45, 0x4c, 0x4c, 0x4f, 0x57, 0x10, 0x04, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x52, 0x45, 0x50, + 0x41, 0x52, 0x45, 0x5f, 0x4b, 0x49, 0x43, 0x4b, 0x4f, 0x46, 0x46, 0x5f, 0x42, 0x4c, 0x55, 0x45, + 0x10, 0x05, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x52, 0x45, 0x50, 0x41, 0x52, 0x45, 0x5f, 0x50, 0x45, + 0x4e, 0x41, 0x4c, 0x54, 0x59, 0x5f, 0x59, 0x45, 0x4c, 0x4c, 0x4f, 0x57, 0x10, 0x06, 0x12, 0x18, + 0x0a, 0x14, 0x50, 0x52, 0x45, 0x50, 0x41, 0x52, 0x45, 0x5f, 0x50, 0x45, 0x4e, 0x41, 0x4c, 0x54, + 0x59, 0x5f, 0x42, 0x4c, 0x55, 0x45, 0x10, 0x07, 0x12, 0x16, 0x0a, 0x12, 0x44, 0x49, 0x52, 0x45, + 0x43, 0x54, 0x5f, 0x46, 0x52, 0x45, 0x45, 0x5f, 0x59, 0x45, 0x4c, 0x4c, 0x4f, 0x57, 0x10, 0x08, + 0x12, 0x14, 0x0a, 0x10, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x5f, 0x46, 0x52, 0x45, 0x45, 0x5f, + 0x42, 0x4c, 0x55, 0x45, 0x10, 0x09, 0x12, 0x18, 0x0a, 0x14, 0x49, 0x4e, 0x44, 0x49, 0x52, 0x45, + 0x43, 0x54, 0x5f, 0x46, 0x52, 0x45, 0x45, 0x5f, 0x59, 0x45, 0x4c, 0x4c, 0x4f, 0x57, 0x10, 0x0a, + 0x12, 0x16, 0x0a, 0x12, 0x49, 0x4e, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x5f, 0x46, 0x52, 0x45, + 0x45, 0x5f, 0x42, 0x4c, 0x55, 0x45, 0x10, 0x0b, 0x12, 0x12, 0x0a, 0x0e, 0x54, 0x49, 0x4d, 0x45, + 0x4f, 0x55, 0x54, 0x5f, 0x59, 0x45, 0x4c, 0x4c, 0x4f, 0x57, 0x10, 0x0c, 0x12, 0x10, 0x0a, 0x0c, + 0x54, 0x49, 0x4d, 0x45, 0x4f, 0x55, 0x54, 0x5f, 0x42, 0x4c, 0x55, 0x45, 0x10, 0x0d, 0x12, 0x13, + 0x0a, 0x0b, 0x47, 0x4f, 0x41, 0x4c, 0x5f, 0x59, 0x45, 0x4c, 0x4c, 0x4f, 0x57, 0x10, 0x0e, 0x1a, + 0x02, 0x08, 0x01, 0x12, 0x11, 0x0a, 0x09, 0x47, 0x4f, 0x41, 0x4c, 0x5f, 0x42, 0x4c, 0x55, 0x45, + 0x10, 0x0f, 0x1a, 0x02, 0x08, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x42, 0x41, 0x4c, 0x4c, 0x5f, 0x50, + 0x4c, 0x41, 0x43, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x59, 0x45, 0x4c, 0x4c, 0x4f, 0x57, 0x10, + 0x10, 0x12, 0x17, 0x0a, 0x13, 0x42, 0x41, 0x4c, 0x4c, 0x5f, 0x50, 0x4c, 0x41, 0x43, 0x45, 0x4d, + 0x45, 0x4e, 0x54, 0x5f, 0x42, 0x4c, 0x55, 0x45, 0x10, 0x11, 0x22, 0xd1, 0x02, 0x0a, 0x05, 0x53, + 0x74, 0x61, 0x67, 0x65, 0x12, 0x19, 0x0a, 0x15, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x5f, 0x46, + 0x49, 0x52, 0x53, 0x54, 0x5f, 0x48, 0x41, 0x4c, 0x46, 0x5f, 0x50, 0x52, 0x45, 0x10, 0x00, 0x12, + 0x15, 0x0a, 0x11, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x5f, 0x46, 0x49, 0x52, 0x53, 0x54, 0x5f, + 0x48, 0x41, 0x4c, 0x46, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, + 0x5f, 0x48, 0x41, 0x4c, 0x46, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, + 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x5f, 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x5f, 0x48, 0x41, + 0x4c, 0x46, 0x5f, 0x50, 0x52, 0x45, 0x10, 0x03, 0x12, 0x16, 0x0a, 0x12, 0x4e, 0x4f, 0x52, 0x4d, + 0x41, 0x4c, 0x5f, 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x5f, 0x48, 0x41, 0x4c, 0x46, 0x10, 0x04, + 0x12, 0x14, 0x0a, 0x10, 0x45, 0x58, 0x54, 0x52, 0x41, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x5f, 0x42, + 0x52, 0x45, 0x41, 0x4b, 0x10, 0x05, 0x12, 0x18, 0x0a, 0x14, 0x45, 0x58, 0x54, 0x52, 0x41, 0x5f, + 0x46, 0x49, 0x52, 0x53, 0x54, 0x5f, 0x48, 0x41, 0x4c, 0x46, 0x5f, 0x50, 0x52, 0x45, 0x10, 0x06, + 0x12, 0x14, 0x0a, 0x10, 0x45, 0x58, 0x54, 0x52, 0x41, 0x5f, 0x46, 0x49, 0x52, 0x53, 0x54, 0x5f, + 0x48, 0x41, 0x4c, 0x46, 0x10, 0x07, 0x12, 0x13, 0x0a, 0x0f, 0x45, 0x58, 0x54, 0x52, 0x41, 0x5f, + 0x48, 0x41, 0x4c, 0x46, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x10, 0x08, 0x12, 0x19, 0x0a, 0x15, 0x45, 0x58, 0x54, 0x52, 0x41, 0x5f, 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x5f, 0x48, 0x41, 0x4c, 0x46, - 0x10, 0x0a, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x45, 0x4e, 0x41, 0x4c, 0x54, 0x59, 0x5f, 0x53, 0x48, - 0x4f, 0x4f, 0x54, 0x4f, 0x55, 0x54, 0x5f, 0x42, 0x52, 0x45, 0x41, 0x4b, 0x10, 0x0b, 0x12, 0x14, - 0x0a, 0x10, 0x50, 0x45, 0x4e, 0x41, 0x4c, 0x54, 0x59, 0x5f, 0x53, 0x48, 0x4f, 0x4f, 0x54, 0x4f, - 0x55, 0x54, 0x10, 0x0c, 0x12, 0x0d, 0x0a, 0x09, 0x50, 0x4f, 0x53, 0x54, 0x5f, 0x47, 0x41, 0x4d, - 0x45, 0x10, 0x0d, 0x22, 0x3a, 0x0a, 0x0d, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x49, 0x50, 0x5f, 0x49, - 0x6e, 0x66, 0x6f, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x07, 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x49, 0x64, 0x12, - 0x0e, 0x0a, 0x02, 0x69, 0x70, 0x18, 0x02, 0x20, 0x02, 0x28, 0x09, 0x52, 0x02, 0x69, 0x70, 0x22, - 0xa6, 0x02, 0x0a, 0x0b, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x12, - 0x24, 0x0a, 0x0e, 0x6e, 0x75, 0x6d, 0x5f, 0x6f, 0x66, 0x5f, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, - 0x73, 0x18, 0x01, 0x20, 0x02, 0x28, 0x05, 0x52, 0x0c, 0x6e, 0x75, 0x6d, 0x4f, 0x66, 0x43, 0x61, - 0x6d, 0x65, 0x72, 0x61, 0x73, 0x12, 0x29, 0x0a, 0x11, 0x6e, 0x75, 0x6d, 0x5f, 0x6f, 0x66, 0x5f, - 0x6f, 0x75, 0x72, 0x5f, 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x73, 0x18, 0x02, 0x20, 0x02, 0x28, 0x05, - 0x52, 0x0e, 0x6e, 0x75, 0x6d, 0x4f, 0x66, 0x4f, 0x75, 0x72, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x73, - 0x12, 0x2d, 0x0a, 0x13, 0x6e, 0x75, 0x6d, 0x5f, 0x6f, 0x66, 0x5f, 0x65, 0x6e, 0x65, 0x6d, 0x79, - 0x5f, 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x73, 0x18, 0x03, 0x20, 0x02, 0x28, 0x05, 0x52, 0x10, 0x6e, - 0x75, 0x6d, 0x4f, 0x66, 0x45, 0x6e, 0x65, 0x6d, 0x79, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x73, 0x12, - 0x20, 0x0a, 0x0b, 0x73, 0x65, 0x63, 0x70, 0x65, 0x72, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x18, 0x04, - 0x20, 0x02, 0x28, 0x02, 0x52, 0x0b, 0x73, 0x65, 0x63, 0x70, 0x65, 0x72, 0x66, 0x72, 0x61, 0x6d, - 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x73, 0x5f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x72, - 0x65, 0x63, 0x76, 0x18, 0x05, 0x20, 0x02, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x56, 0x69, 0x73, - 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x63, 0x76, 0x12, 0x29, 0x0a, 0x10, 0x61, 0x74, 0x74, 0x61, 0x63, - 0x6b, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x02, 0x28, - 0x05, 0x52, 0x0f, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x73, 0x5f, 0x62, 0x61, 0x6c, 0x6c, 0x5f, 0x6d, 0x6f, - 0x76, 0x69, 0x6e, 0x67, 0x18, 0x07, 0x20, 0x02, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x42, 0x61, - 0x6c, 0x6c, 0x4d, 0x6f, 0x76, 0x69, 0x6e, 0x67, 0x22, 0xb3, 0x02, 0x0a, 0x0f, 0x52, 0x61, 0x63, - 0x6f, 0x6f, 0x6e, 0x4d, 0x57, 0x5f, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x2b, 0x0a, 0x0a, - 0x6f, 0x75, 0x72, 0x5f, 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x0c, 0x2e, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x52, 0x09, - 0x6f, 0x75, 0x72, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x73, 0x12, 0x2f, 0x0a, 0x0c, 0x65, 0x6e, 0x65, - 0x6d, 0x79, 0x5f, 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x0c, 0x2e, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x52, 0x0b, 0x65, - 0x6e, 0x65, 0x6d, 0x79, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x08, 0x67, 0x65, - 0x6f, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x18, 0x03, 0x20, 0x02, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x47, - 0x65, 0x6f, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x67, 0x65, - 0x6f, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x12, 0x1e, 0x0a, 0x04, 0x62, 0x61, 0x6c, 0x6c, 0x18, 0x04, - 0x20, 0x02, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x42, 0x61, 0x6c, 0x6c, 0x5f, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x04, 0x62, 0x61, 0x6c, 0x6c, 0x12, 0x27, 0x0a, 0x07, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, - 0x65, 0x18, 0x05, 0x20, 0x02, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, - 0x65, 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x65, 0x12, - 0x2b, 0x0a, 0x09, 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x5f, 0x69, 0x70, 0x73, 0x18, 0x06, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x49, 0x50, 0x5f, 0x49, 0x6e, 0x66, - 0x6f, 0x73, 0x52, 0x08, 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x49, 0x70, 0x73, 0x12, 0x20, 0x0a, 0x04, - 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x07, 0x20, 0x02, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x4f, 0x74, 0x68, - 0x65, 0x72, 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x42, 0x2d, - 0x5a, 0x2b, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x52, 0x69, 0x6f, - 0x6e, 0x65, 0x2d, 0x53, 0x53, 0x4c, 0x2f, 0x52, 0x41, 0x43, 0x4f, 0x4f, 0x4e, 0x2d, 0x50, 0x69, - 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x70, 0x62, 0x5f, 0x67, 0x65, 0x6e, + 0x5f, 0x50, 0x52, 0x45, 0x10, 0x09, 0x12, 0x15, 0x0a, 0x11, 0x45, 0x58, 0x54, 0x52, 0x41, 0x5f, + 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x5f, 0x48, 0x41, 0x4c, 0x46, 0x10, 0x0a, 0x12, 0x1a, 0x0a, + 0x16, 0x50, 0x45, 0x4e, 0x41, 0x4c, 0x54, 0x59, 0x5f, 0x53, 0x48, 0x4f, 0x4f, 0x54, 0x4f, 0x55, + 0x54, 0x5f, 0x42, 0x52, 0x45, 0x41, 0x4b, 0x10, 0x0b, 0x12, 0x14, 0x0a, 0x10, 0x50, 0x45, 0x4e, + 0x41, 0x4c, 0x54, 0x59, 0x5f, 0x53, 0x48, 0x4f, 0x4f, 0x54, 0x4f, 0x55, 0x54, 0x10, 0x0c, 0x12, + 0x0d, 0x0a, 0x09, 0x50, 0x4f, 0x53, 0x54, 0x5f, 0x47, 0x41, 0x4d, 0x45, 0x10, 0x0d, 0x22, 0x3a, + 0x0a, 0x0d, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x49, 0x50, 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x12, + 0x19, 0x0a, 0x08, 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x02, 0x28, + 0x0d, 0x52, 0x07, 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x70, + 0x18, 0x02, 0x20, 0x02, 0x28, 0x09, 0x52, 0x02, 0x69, 0x70, 0x22, 0xa6, 0x02, 0x0a, 0x0b, 0x4f, + 0x74, 0x68, 0x65, 0x72, 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x6e, 0x75, + 0x6d, 0x5f, 0x6f, 0x66, 0x5f, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x73, 0x18, 0x01, 0x20, 0x02, + 0x28, 0x05, 0x52, 0x0c, 0x6e, 0x75, 0x6d, 0x4f, 0x66, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x73, + 0x12, 0x29, 0x0a, 0x11, 0x6e, 0x75, 0x6d, 0x5f, 0x6f, 0x66, 0x5f, 0x6f, 0x75, 0x72, 0x5f, 0x72, + 0x6f, 0x62, 0x6f, 0x74, 0x73, 0x18, 0x02, 0x20, 0x02, 0x28, 0x05, 0x52, 0x0e, 0x6e, 0x75, 0x6d, + 0x4f, 0x66, 0x4f, 0x75, 0x72, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x73, 0x12, 0x2d, 0x0a, 0x13, 0x6e, + 0x75, 0x6d, 0x5f, 0x6f, 0x66, 0x5f, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x5f, 0x72, 0x6f, 0x62, 0x6f, + 0x74, 0x73, 0x18, 0x03, 0x20, 0x02, 0x28, 0x05, 0x52, 0x10, 0x6e, 0x75, 0x6d, 0x4f, 0x66, 0x45, + 0x6e, 0x65, 0x6d, 0x79, 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x65, + 0x63, 0x70, 0x65, 0x72, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x02, 0x28, 0x02, 0x52, + 0x0b, 0x73, 0x65, 0x63, 0x70, 0x65, 0x72, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0e, + 0x69, 0x73, 0x5f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x63, 0x76, 0x18, 0x05, + 0x20, 0x02, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x56, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, + 0x63, 0x76, 0x12, 0x29, 0x0a, 0x10, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x5f, 0x64, 0x69, 0x72, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x02, 0x28, 0x05, 0x52, 0x0f, 0x61, 0x74, + 0x74, 0x61, 0x63, 0x6b, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a, + 0x0e, 0x69, 0x73, 0x5f, 0x62, 0x61, 0x6c, 0x6c, 0x5f, 0x6d, 0x6f, 0x76, 0x69, 0x6e, 0x67, 0x18, + 0x07, 0x20, 0x02, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x42, 0x61, 0x6c, 0x6c, 0x4d, 0x6f, 0x76, + 0x69, 0x6e, 0x67, 0x22, 0xd5, 0x02, 0x0a, 0x0f, 0x52, 0x61, 0x63, 0x6f, 0x6f, 0x6e, 0x4d, 0x57, + 0x5f, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x2b, 0x0a, 0x0a, 0x6f, 0x75, 0x72, 0x5f, 0x72, + 0x6f, 0x62, 0x6f, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x52, 0x6f, + 0x62, 0x6f, 0x74, 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x52, 0x09, 0x6f, 0x75, 0x72, 0x52, 0x6f, + 0x62, 0x6f, 0x74, 0x73, 0x12, 0x2f, 0x0a, 0x0c, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x5f, 0x72, 0x6f, + 0x62, 0x6f, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x52, 0x6f, 0x62, + 0x6f, 0x74, 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x52, 0x0b, 0x65, 0x6e, 0x65, 0x6d, 0x79, 0x52, + 0x6f, 0x62, 0x6f, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x08, 0x67, 0x65, 0x6f, 0x6d, 0x65, 0x74, 0x72, + 0x79, 0x18, 0x03, 0x20, 0x02, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x47, 0x65, 0x6f, 0x6d, 0x65, 0x74, + 0x72, 0x79, 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x67, 0x65, 0x6f, 0x6d, 0x65, 0x74, 0x72, + 0x79, 0x12, 0x1e, 0x0a, 0x04, 0x62, 0x61, 0x6c, 0x6c, 0x18, 0x04, 0x20, 0x02, 0x28, 0x0b, 0x32, + 0x0a, 0x2e, 0x42, 0x61, 0x6c, 0x6c, 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x62, 0x61, 0x6c, + 0x6c, 0x12, 0x27, 0x0a, 0x07, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x65, 0x18, 0x05, 0x20, 0x02, + 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x65, 0x5f, 0x49, 0x6e, 0x66, + 0x6f, 0x52, 0x07, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x65, 0x12, 0x2b, 0x0a, 0x09, 0x72, 0x6f, + 0x62, 0x6f, 0x74, 0x5f, 0x69, 0x70, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, + 0x52, 0x6f, 0x62, 0x6f, 0x74, 0x49, 0x50, 0x5f, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x52, 0x08, 0x72, + 0x6f, 0x62, 0x6f, 0x74, 0x49, 0x70, 0x73, 0x12, 0x20, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, + 0x07, 0x20, 0x02, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x5f, 0x49, 0x6e, + 0x66, 0x6f, 0x73, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x20, 0x0a, 0x05, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x47, 0x61, 0x6d, 0x65, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x52, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x42, 0x2d, 0x5a, 0x2b, 0x67, + 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x52, 0x69, 0x6f, 0x6e, 0x65, 0x2d, + 0x53, 0x53, 0x4c, 0x2f, 0x52, 0x41, 0x43, 0x4f, 0x4f, 0x4e, 0x2d, 0x50, 0x69, 0x2f, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x2f, 0x70, 0x62, 0x5f, 0x67, 0x65, 0x6e, } var ( @@ -1546,26 +1568,29 @@ var file_to_racoonai_proto_goTypes = []interface{}{ (*Other_Infos)(nil), // 7: Other_Infos (*RacoonMW_Packet)(nil), // 8: RacoonMW_Packet (*Referee_Info_TeamInfo)(nil), // 9: Referee_Info.TeamInfo + (*GameEvent)(nil), // 10: GameEvent } var file_to_racoonai_proto_depIdxs = []int32{ 0, // 0: Referee_Info.command:type_name -> Referee_Info.Command 9, // 1: Referee_Info.teaminfo_our:type_name -> Referee_Info.TeamInfo 9, // 2: Referee_Info.teaminfo_their:type_name -> Referee_Info.TeamInfo 1, // 3: Referee_Info.stage:type_name -> Referee_Info.Stage - 0, // 4: Referee_Info.pre_command:type_name -> Referee_Info.Command - 0, // 5: Referee_Info.next_command:type_name -> Referee_Info.Command - 2, // 6: RacoonMW_Packet.our_robots:type_name -> Robot_Infos - 2, // 7: RacoonMW_Packet.enemy_robots:type_name -> Robot_Infos - 4, // 8: RacoonMW_Packet.geometry:type_name -> Geometry_Info - 3, // 9: RacoonMW_Packet.ball:type_name -> Ball_Info - 5, // 10: RacoonMW_Packet.referee:type_name -> Referee_Info - 6, // 11: RacoonMW_Packet.robot_ips:type_name -> RobotIP_Infos - 7, // 12: RacoonMW_Packet.info:type_name -> Other_Infos - 13, // [13:13] is the sub-list for method output_type - 13, // [13:13] is the sub-list for method input_type - 13, // [13:13] is the sub-list for extension type_name - 13, // [13:13] is the sub-list for extension extendee - 0, // [0:13] is the sub-list for field type_name + 10, // 4: Referee_Info.event:type_name -> GameEvent + 0, // 5: Referee_Info.pre_command:type_name -> Referee_Info.Command + 0, // 6: Referee_Info.next_command:type_name -> Referee_Info.Command + 2, // 7: RacoonMW_Packet.our_robots:type_name -> Robot_Infos + 2, // 8: RacoonMW_Packet.enemy_robots:type_name -> Robot_Infos + 4, // 9: RacoonMW_Packet.geometry:type_name -> Geometry_Info + 3, // 10: RacoonMW_Packet.ball:type_name -> Ball_Info + 5, // 11: RacoonMW_Packet.referee:type_name -> Referee_Info + 6, // 12: RacoonMW_Packet.robot_ips:type_name -> RobotIP_Infos + 7, // 13: RacoonMW_Packet.info:type_name -> Other_Infos + 10, // 14: RacoonMW_Packet.event:type_name -> GameEvent + 15, // [15:15] is the sub-list for method output_type + 15, // [15:15] is the sub-list for method input_type + 15, // [15:15] is the sub-list for extension type_name + 15, // [15:15] is the sub-list for extension extendee + 0, // [0:15] is the sub-list for field type_name } func init() { file_to_racoonai_proto_init() } @@ -1573,6 +1598,7 @@ func file_to_racoonai_proto_init() { if File_to_racoonai_proto != nil { return } + file_ssl_gc_game_event_proto_init() if !protoimpl.UnsafeEnabled { file_to_racoonai_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Robot_Infos); i { diff --git a/proto/pb_src/to_racoonai.proto b/proto/pb_src/to_racoonai.proto index 4567c5d..218d1c4 100644 --- a/proto/pb_src/to_racoonai.proto +++ b/proto/pb_src/to_racoonai.proto @@ -1,5 +1,7 @@ syntax = "proto2"; +import "ssl_gc_game_event.proto"; + option go_package = "github.com/Rione-SSL/RACOON-Pi/proto/pb_gen"; @@ -192,12 +194,14 @@ message Referee_Info { POST_GAME = 13; } required Stage stage = 4; + required uint32 yellow_cards = 5; required uint32 red_cards = 6; - optional Command pre_command = 7; - optional Command next_command = 8; - optional float ball_placement_x = 9; - optional float ball_placement_y = 10; + repeated GameEvent event = 7; + optional Command pre_command = 8; + optional Command next_command = 9; + optional float ball_placement_x = 10; + optional float ball_placement_y = 11; } message RobotIP_Infos { @@ -223,4 +227,5 @@ message RacoonMW_Packet { required Referee_Info referee = 5; repeated RobotIP_Infos robot_ips = 6; required Other_Infos info = 7; + repeated GameEvent event = 8; }