From ecc32aaf8614eeda6dffabf965e2a1667a06e4a3 Mon Sep 17 00:00:00 2001 From: Denys Smirnov Date: Fri, 8 Nov 2024 15:52:38 +0200 Subject: [PATCH] Use ListUpdate proto message. --- livekit/livekit_models.pb.go | 441 ++++++------ livekit/livekit_sip.pb.go | 1170 ++++++++++++++++---------------- livekit/livekit_sip.twirp.go | 341 +++++----- livekit/sip.go | 46 +- livekit/types.go | 46 ++ protobufs/livekit_models.proto | 5 + protobufs/livekit_sip.proto | 10 +- 7 files changed, 1079 insertions(+), 980 deletions(-) diff --git a/livekit/livekit_models.pb.go b/livekit/livekit_models.pb.go index d3b504ed..ed1bf0a2 100644 --- a/livekit/livekit_models.pb.go +++ b/livekit/livekit_models.pb.go @@ -748,7 +748,7 @@ func (x ParticipantInfo_State) Number() protoreflect.EnumNumber { // Deprecated: Use ParticipantInfo_State.Descriptor instead. func (ParticipantInfo_State) EnumDescriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{4, 0} + return file_livekit_models_proto_rawDescGZIP(), []int{5, 0} } type ParticipantInfo_Kind int32 @@ -808,7 +808,7 @@ func (x ParticipantInfo_Kind) Number() protoreflect.EnumNumber { // Deprecated: Use ParticipantInfo_Kind.Descriptor instead. func (ParticipantInfo_Kind) EnumDescriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{4, 1} + return file_livekit_models_proto_rawDescGZIP(), []int{5, 1} } type Encryption_Type int32 @@ -857,7 +857,7 @@ func (x Encryption_Type) Number() protoreflect.EnumNumber { // Deprecated: Use Encryption_Type.Descriptor instead. func (Encryption_Type) EnumDescriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{5, 0} + return file_livekit_models_proto_rawDescGZIP(), []int{6, 0} } type DataPacket_Kind int32 @@ -903,7 +903,7 @@ func (x DataPacket_Kind) Number() protoreflect.EnumNumber { // Deprecated: Use DataPacket_Kind.Descriptor instead. func (DataPacket_Kind) EnumDescriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{9, 0} + return file_livekit_models_proto_rawDescGZIP(), []int{10, 0} } type ServerInfo_Edition int32 @@ -949,7 +949,7 @@ func (x ServerInfo_Edition) Number() protoreflect.EnumNumber { // Deprecated: Use ServerInfo_Edition.Descriptor instead. func (ServerInfo_Edition) EnumDescriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{22, 0} + return file_livekit_models_proto_rawDescGZIP(), []int{23, 0} } type ClientInfo_SDK int32 @@ -1028,7 +1028,53 @@ func (x ClientInfo_SDK) Number() protoreflect.EnumNumber { // Deprecated: Use ClientInfo_SDK.Descriptor instead. func (ClientInfo_SDK) EnumDescriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{23, 0} + return file_livekit_models_proto_rawDescGZIP(), []int{24, 0} +} + +// ListUpdate is used for updated APIs where 'repeated string' field is modified. +type ListUpdate struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Set []string `protobuf:"bytes,1,rep,name=set,proto3" json:"set,omitempty"` // set the field to a new list +} + +func (x *ListUpdate) Reset() { + *x = ListUpdate{} + mi := &file_livekit_models_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ListUpdate) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ListUpdate) ProtoMessage() {} + +func (x *ListUpdate) ProtoReflect() protoreflect.Message { + mi := &file_livekit_models_proto_msgTypes[0] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ListUpdate.ProtoReflect.Descriptor instead. +func (*ListUpdate) Descriptor() ([]byte, []int) { + return file_livekit_models_proto_rawDescGZIP(), []int{0} +} + +func (x *ListUpdate) GetSet() []string { + if x != nil { + return x.Set + } + return nil } type Room struct { @@ -1053,7 +1099,7 @@ type Room struct { func (x *Room) Reset() { *x = Room{} - mi := &file_livekit_models_proto_msgTypes[0] + mi := &file_livekit_models_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1065,7 +1111,7 @@ func (x *Room) String() string { func (*Room) ProtoMessage() {} func (x *Room) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[0] + mi := &file_livekit_models_proto_msgTypes[1] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1078,7 +1124,7 @@ func (x *Room) ProtoReflect() protoreflect.Message { // Deprecated: Use Room.ProtoReflect.Descriptor instead. func (*Room) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{0} + return file_livekit_models_proto_rawDescGZIP(), []int{1} } func (x *Room) GetSid() string { @@ -1183,7 +1229,7 @@ type Codec struct { func (x *Codec) Reset() { *x = Codec{} - mi := &file_livekit_models_proto_msgTypes[1] + mi := &file_livekit_models_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1195,7 +1241,7 @@ func (x *Codec) String() string { func (*Codec) ProtoMessage() {} func (x *Codec) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[1] + mi := &file_livekit_models_proto_msgTypes[2] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1208,7 +1254,7 @@ func (x *Codec) ProtoReflect() protoreflect.Message { // Deprecated: Use Codec.ProtoReflect.Descriptor instead. func (*Codec) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{1} + return file_livekit_models_proto_rawDescGZIP(), []int{2} } func (x *Codec) GetMime() string { @@ -1237,7 +1283,7 @@ type PlayoutDelay struct { func (x *PlayoutDelay) Reset() { *x = PlayoutDelay{} - mi := &file_livekit_models_proto_msgTypes[2] + mi := &file_livekit_models_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1249,7 +1295,7 @@ func (x *PlayoutDelay) String() string { func (*PlayoutDelay) ProtoMessage() {} func (x *PlayoutDelay) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[2] + mi := &file_livekit_models_proto_msgTypes[3] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1262,7 +1308,7 @@ func (x *PlayoutDelay) ProtoReflect() protoreflect.Message { // Deprecated: Use PlayoutDelay.ProtoReflect.Descriptor instead. func (*PlayoutDelay) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{2} + return file_livekit_models_proto_rawDescGZIP(), []int{3} } func (x *PlayoutDelay) GetEnabled() bool { @@ -1319,7 +1365,7 @@ type ParticipantPermission struct { func (x *ParticipantPermission) Reset() { *x = ParticipantPermission{} - mi := &file_livekit_models_proto_msgTypes[3] + mi := &file_livekit_models_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1331,7 +1377,7 @@ func (x *ParticipantPermission) String() string { func (*ParticipantPermission) ProtoMessage() {} func (x *ParticipantPermission) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[3] + mi := &file_livekit_models_proto_msgTypes[4] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1344,7 +1390,7 @@ func (x *ParticipantPermission) ProtoReflect() protoreflect.Message { // Deprecated: Use ParticipantPermission.ProtoReflect.Descriptor instead. func (*ParticipantPermission) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{3} + return file_livekit_models_proto_rawDescGZIP(), []int{4} } func (x *ParticipantPermission) GetCanSubscribe() bool { @@ -1438,7 +1484,7 @@ type ParticipantInfo struct { func (x *ParticipantInfo) Reset() { *x = ParticipantInfo{} - mi := &file_livekit_models_proto_msgTypes[4] + mi := &file_livekit_models_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1450,7 +1496,7 @@ func (x *ParticipantInfo) String() string { func (*ParticipantInfo) ProtoMessage() {} func (x *ParticipantInfo) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[4] + mi := &file_livekit_models_proto_msgTypes[5] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1463,7 +1509,7 @@ func (x *ParticipantInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use ParticipantInfo.ProtoReflect.Descriptor instead. func (*ParticipantInfo) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{4} + return file_livekit_models_proto_rawDescGZIP(), []int{5} } func (x *ParticipantInfo) GetSid() string { @@ -1572,7 +1618,7 @@ type Encryption struct { func (x *Encryption) Reset() { *x = Encryption{} - mi := &file_livekit_models_proto_msgTypes[5] + mi := &file_livekit_models_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1584,7 +1630,7 @@ func (x *Encryption) String() string { func (*Encryption) ProtoMessage() {} func (x *Encryption) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[5] + mi := &file_livekit_models_proto_msgTypes[6] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1597,7 +1643,7 @@ func (x *Encryption) ProtoReflect() protoreflect.Message { // Deprecated: Use Encryption.ProtoReflect.Descriptor instead. func (*Encryption) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{5} + return file_livekit_models_proto_rawDescGZIP(), []int{6} } type SimulcastCodecInfo struct { @@ -1613,7 +1659,7 @@ type SimulcastCodecInfo struct { func (x *SimulcastCodecInfo) Reset() { *x = SimulcastCodecInfo{} - mi := &file_livekit_models_proto_msgTypes[6] + mi := &file_livekit_models_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1625,7 +1671,7 @@ func (x *SimulcastCodecInfo) String() string { func (*SimulcastCodecInfo) ProtoMessage() {} func (x *SimulcastCodecInfo) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[6] + mi := &file_livekit_models_proto_msgTypes[7] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1638,7 +1684,7 @@ func (x *SimulcastCodecInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use SimulcastCodecInfo.ProtoReflect.Descriptor instead. func (*SimulcastCodecInfo) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{6} + return file_livekit_models_proto_rawDescGZIP(), []int{7} } func (x *SimulcastCodecInfo) GetMimeType() string { @@ -1705,7 +1751,7 @@ type TrackInfo struct { func (x *TrackInfo) Reset() { *x = TrackInfo{} - mi := &file_livekit_models_proto_msgTypes[7] + mi := &file_livekit_models_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1717,7 +1763,7 @@ func (x *TrackInfo) String() string { func (*TrackInfo) ProtoMessage() {} func (x *TrackInfo) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[7] + mi := &file_livekit_models_proto_msgTypes[8] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1730,7 +1776,7 @@ func (x *TrackInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use TrackInfo.ProtoReflect.Descriptor instead. func (*TrackInfo) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{7} + return file_livekit_models_proto_rawDescGZIP(), []int{8} } func (x *TrackInfo) GetSid() string { @@ -1883,7 +1929,7 @@ type VideoLayer struct { func (x *VideoLayer) Reset() { *x = VideoLayer{} - mi := &file_livekit_models_proto_msgTypes[8] + mi := &file_livekit_models_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1895,7 +1941,7 @@ func (x *VideoLayer) String() string { func (*VideoLayer) ProtoMessage() {} func (x *VideoLayer) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[8] + mi := &file_livekit_models_proto_msgTypes[9] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1908,7 +1954,7 @@ func (x *VideoLayer) ProtoReflect() protoreflect.Message { // Deprecated: Use VideoLayer.ProtoReflect.Descriptor instead. func (*VideoLayer) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{8} + return file_livekit_models_proto_rawDescGZIP(), []int{9} } func (x *VideoLayer) GetQuality() VideoQuality { @@ -1974,7 +2020,7 @@ type DataPacket struct { func (x *DataPacket) Reset() { *x = DataPacket{} - mi := &file_livekit_models_proto_msgTypes[9] + mi := &file_livekit_models_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1986,7 +2032,7 @@ func (x *DataPacket) String() string { func (*DataPacket) ProtoMessage() {} func (x *DataPacket) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[9] + mi := &file_livekit_models_proto_msgTypes[10] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1999,7 +2045,7 @@ func (x *DataPacket) ProtoReflect() protoreflect.Message { // Deprecated: Use DataPacket.ProtoReflect.Descriptor instead. func (*DataPacket) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{9} + return file_livekit_models_proto_rawDescGZIP(), []int{10} } // Deprecated: Marked as deprecated in livekit_models.proto. @@ -2164,7 +2210,7 @@ type ActiveSpeakerUpdate struct { func (x *ActiveSpeakerUpdate) Reset() { *x = ActiveSpeakerUpdate{} - mi := &file_livekit_models_proto_msgTypes[10] + mi := &file_livekit_models_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2176,7 +2222,7 @@ func (x *ActiveSpeakerUpdate) String() string { func (*ActiveSpeakerUpdate) ProtoMessage() {} func (x *ActiveSpeakerUpdate) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[10] + mi := &file_livekit_models_proto_msgTypes[11] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2189,7 +2235,7 @@ func (x *ActiveSpeakerUpdate) ProtoReflect() protoreflect.Message { // Deprecated: Use ActiveSpeakerUpdate.ProtoReflect.Descriptor instead. func (*ActiveSpeakerUpdate) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{10} + return file_livekit_models_proto_rawDescGZIP(), []int{11} } func (x *ActiveSpeakerUpdate) GetSpeakers() []*SpeakerInfo { @@ -2213,7 +2259,7 @@ type SpeakerInfo struct { func (x *SpeakerInfo) Reset() { *x = SpeakerInfo{} - mi := &file_livekit_models_proto_msgTypes[11] + mi := &file_livekit_models_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2225,7 +2271,7 @@ func (x *SpeakerInfo) String() string { func (*SpeakerInfo) ProtoMessage() {} func (x *SpeakerInfo) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[11] + mi := &file_livekit_models_proto_msgTypes[12] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2238,7 +2284,7 @@ func (x *SpeakerInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use SpeakerInfo.ProtoReflect.Descriptor instead. func (*SpeakerInfo) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{11} + return file_livekit_models_proto_rawDescGZIP(), []int{12} } func (x *SpeakerInfo) GetSid() string { @@ -2294,7 +2340,7 @@ type UserPacket struct { func (x *UserPacket) Reset() { *x = UserPacket{} - mi := &file_livekit_models_proto_msgTypes[12] + mi := &file_livekit_models_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2306,7 +2352,7 @@ func (x *UserPacket) String() string { func (*UserPacket) ProtoMessage() {} func (x *UserPacket) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[12] + mi := &file_livekit_models_proto_msgTypes[13] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2319,7 +2365,7 @@ func (x *UserPacket) ProtoReflect() protoreflect.Message { // Deprecated: Use UserPacket.ProtoReflect.Descriptor instead. func (*UserPacket) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{12} + return file_livekit_models_proto_rawDescGZIP(), []int{13} } // Deprecated: Marked as deprecated in livekit_models.proto. @@ -2400,7 +2446,7 @@ type SipDTMF struct { func (x *SipDTMF) Reset() { *x = SipDTMF{} - mi := &file_livekit_models_proto_msgTypes[13] + mi := &file_livekit_models_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2412,7 +2458,7 @@ func (x *SipDTMF) String() string { func (*SipDTMF) ProtoMessage() {} func (x *SipDTMF) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[13] + mi := &file_livekit_models_proto_msgTypes[14] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2425,7 +2471,7 @@ func (x *SipDTMF) ProtoReflect() protoreflect.Message { // Deprecated: Use SipDTMF.ProtoReflect.Descriptor instead. func (*SipDTMF) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{13} + return file_livekit_models_proto_rawDescGZIP(), []int{14} } func (x *SipDTMF) GetCode() uint32 { @@ -2455,7 +2501,7 @@ type Transcription struct { func (x *Transcription) Reset() { *x = Transcription{} - mi := &file_livekit_models_proto_msgTypes[14] + mi := &file_livekit_models_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2467,7 +2513,7 @@ func (x *Transcription) String() string { func (*Transcription) ProtoMessage() {} func (x *Transcription) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[14] + mi := &file_livekit_models_proto_msgTypes[15] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2480,7 +2526,7 @@ func (x *Transcription) ProtoReflect() protoreflect.Message { // Deprecated: Use Transcription.ProtoReflect.Descriptor instead. func (*Transcription) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{14} + return file_livekit_models_proto_rawDescGZIP(), []int{15} } func (x *Transcription) GetTranscribedParticipantIdentity() string { @@ -2519,7 +2565,7 @@ type TranscriptionSegment struct { func (x *TranscriptionSegment) Reset() { *x = TranscriptionSegment{} - mi := &file_livekit_models_proto_msgTypes[15] + mi := &file_livekit_models_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2531,7 +2577,7 @@ func (x *TranscriptionSegment) String() string { func (*TranscriptionSegment) ProtoMessage() {} func (x *TranscriptionSegment) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[15] + mi := &file_livekit_models_proto_msgTypes[16] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2544,7 +2590,7 @@ func (x *TranscriptionSegment) ProtoReflect() protoreflect.Message { // Deprecated: Use TranscriptionSegment.ProtoReflect.Descriptor instead. func (*TranscriptionSegment) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{15} + return file_livekit_models_proto_rawDescGZIP(), []int{16} } func (x *TranscriptionSegment) GetId() string { @@ -2604,7 +2650,7 @@ type ChatMessage struct { func (x *ChatMessage) Reset() { *x = ChatMessage{} - mi := &file_livekit_models_proto_msgTypes[16] + mi := &file_livekit_models_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2616,7 +2662,7 @@ func (x *ChatMessage) String() string { func (*ChatMessage) ProtoMessage() {} func (x *ChatMessage) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[16] + mi := &file_livekit_models_proto_msgTypes[17] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2629,7 +2675,7 @@ func (x *ChatMessage) ProtoReflect() protoreflect.Message { // Deprecated: Use ChatMessage.ProtoReflect.Descriptor instead. func (*ChatMessage) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{16} + return file_livekit_models_proto_rawDescGZIP(), []int{17} } func (x *ChatMessage) GetId() string { @@ -2688,7 +2734,7 @@ type RpcRequest struct { func (x *RpcRequest) Reset() { *x = RpcRequest{} - mi := &file_livekit_models_proto_msgTypes[17] + mi := &file_livekit_models_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2700,7 +2746,7 @@ func (x *RpcRequest) String() string { func (*RpcRequest) ProtoMessage() {} func (x *RpcRequest) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[17] + mi := &file_livekit_models_proto_msgTypes[18] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2713,7 +2759,7 @@ func (x *RpcRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use RpcRequest.ProtoReflect.Descriptor instead. func (*RpcRequest) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{17} + return file_livekit_models_proto_rawDescGZIP(), []int{18} } func (x *RpcRequest) GetId() string { @@ -2761,7 +2807,7 @@ type RpcAck struct { func (x *RpcAck) Reset() { *x = RpcAck{} - mi := &file_livekit_models_proto_msgTypes[18] + mi := &file_livekit_models_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2773,7 +2819,7 @@ func (x *RpcAck) String() string { func (*RpcAck) ProtoMessage() {} func (x *RpcAck) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[18] + mi := &file_livekit_models_proto_msgTypes[19] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2786,7 +2832,7 @@ func (x *RpcAck) ProtoReflect() protoreflect.Message { // Deprecated: Use RpcAck.ProtoReflect.Descriptor instead. func (*RpcAck) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{18} + return file_livekit_models_proto_rawDescGZIP(), []int{19} } func (x *RpcAck) GetRequestId() string { @@ -2811,7 +2857,7 @@ type RpcResponse struct { func (x *RpcResponse) Reset() { *x = RpcResponse{} - mi := &file_livekit_models_proto_msgTypes[19] + mi := &file_livekit_models_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2823,7 +2869,7 @@ func (x *RpcResponse) String() string { func (*RpcResponse) ProtoMessage() {} func (x *RpcResponse) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[19] + mi := &file_livekit_models_proto_msgTypes[20] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2836,7 +2882,7 @@ func (x *RpcResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use RpcResponse.ProtoReflect.Descriptor instead. func (*RpcResponse) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{19} + return file_livekit_models_proto_rawDescGZIP(), []int{20} } func (x *RpcResponse) GetRequestId() string { @@ -2895,7 +2941,7 @@ type RpcError struct { func (x *RpcError) Reset() { *x = RpcError{} - mi := &file_livekit_models_proto_msgTypes[20] + mi := &file_livekit_models_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2907,7 +2953,7 @@ func (x *RpcError) String() string { func (*RpcError) ProtoMessage() {} func (x *RpcError) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[20] + mi := &file_livekit_models_proto_msgTypes[21] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2920,7 +2966,7 @@ func (x *RpcError) ProtoReflect() protoreflect.Message { // Deprecated: Use RpcError.ProtoReflect.Descriptor instead. func (*RpcError) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{20} + return file_livekit_models_proto_rawDescGZIP(), []int{21} } func (x *RpcError) GetCode() uint32 { @@ -2956,7 +3002,7 @@ type ParticipantTracks struct { func (x *ParticipantTracks) Reset() { *x = ParticipantTracks{} - mi := &file_livekit_models_proto_msgTypes[21] + mi := &file_livekit_models_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2968,7 +3014,7 @@ func (x *ParticipantTracks) String() string { func (*ParticipantTracks) ProtoMessage() {} func (x *ParticipantTracks) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[21] + mi := &file_livekit_models_proto_msgTypes[22] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2981,7 +3027,7 @@ func (x *ParticipantTracks) ProtoReflect() protoreflect.Message { // Deprecated: Use ParticipantTracks.ProtoReflect.Descriptor instead. func (*ParticipantTracks) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{21} + return file_livekit_models_proto_rawDescGZIP(), []int{22} } func (x *ParticipantTracks) GetParticipantSid() string { @@ -3016,7 +3062,7 @@ type ServerInfo struct { func (x *ServerInfo) Reset() { *x = ServerInfo{} - mi := &file_livekit_models_proto_msgTypes[22] + mi := &file_livekit_models_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3028,7 +3074,7 @@ func (x *ServerInfo) String() string { func (*ServerInfo) ProtoMessage() {} func (x *ServerInfo) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[22] + mi := &file_livekit_models_proto_msgTypes[23] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3041,7 +3087,7 @@ func (x *ServerInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use ServerInfo.ProtoReflect.Descriptor instead. func (*ServerInfo) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{22} + return file_livekit_models_proto_rawDescGZIP(), []int{23} } func (x *ServerInfo) GetEdition() ServerInfo_Edition { @@ -3117,7 +3163,7 @@ type ClientInfo struct { func (x *ClientInfo) Reset() { *x = ClientInfo{} - mi := &file_livekit_models_proto_msgTypes[23] + mi := &file_livekit_models_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3129,7 +3175,7 @@ func (x *ClientInfo) String() string { func (*ClientInfo) ProtoMessage() {} func (x *ClientInfo) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[23] + mi := &file_livekit_models_proto_msgTypes[24] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3142,7 +3188,7 @@ func (x *ClientInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use ClientInfo.ProtoReflect.Descriptor instead. func (*ClientInfo) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{23} + return file_livekit_models_proto_rawDescGZIP(), []int{24} } func (x *ClientInfo) GetSdk() ClientInfo_SDK { @@ -3237,7 +3283,7 @@ type ClientConfiguration struct { func (x *ClientConfiguration) Reset() { *x = ClientConfiguration{} - mi := &file_livekit_models_proto_msgTypes[24] + mi := &file_livekit_models_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3249,7 +3295,7 @@ func (x *ClientConfiguration) String() string { func (*ClientConfiguration) ProtoMessage() {} func (x *ClientConfiguration) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[24] + mi := &file_livekit_models_proto_msgTypes[25] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3262,7 +3308,7 @@ func (x *ClientConfiguration) ProtoReflect() protoreflect.Message { // Deprecated: Use ClientConfiguration.ProtoReflect.Descriptor instead. func (*ClientConfiguration) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{24} + return file_livekit_models_proto_rawDescGZIP(), []int{25} } func (x *ClientConfiguration) GetVideo() *VideoConfiguration { @@ -3310,7 +3356,7 @@ type VideoConfiguration struct { func (x *VideoConfiguration) Reset() { *x = VideoConfiguration{} - mi := &file_livekit_models_proto_msgTypes[25] + mi := &file_livekit_models_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3322,7 +3368,7 @@ func (x *VideoConfiguration) String() string { func (*VideoConfiguration) ProtoMessage() {} func (x *VideoConfiguration) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[25] + mi := &file_livekit_models_proto_msgTypes[26] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3335,7 +3381,7 @@ func (x *VideoConfiguration) ProtoReflect() protoreflect.Message { // Deprecated: Use VideoConfiguration.ProtoReflect.Descriptor instead. func (*VideoConfiguration) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{25} + return file_livekit_models_proto_rawDescGZIP(), []int{26} } func (x *VideoConfiguration) GetHardwareEncoder() ClientConfigSetting { @@ -3358,7 +3404,7 @@ type DisabledCodecs struct { func (x *DisabledCodecs) Reset() { *x = DisabledCodecs{} - mi := &file_livekit_models_proto_msgTypes[26] + mi := &file_livekit_models_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3370,7 +3416,7 @@ func (x *DisabledCodecs) String() string { func (*DisabledCodecs) ProtoMessage() {} func (x *DisabledCodecs) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[26] + mi := &file_livekit_models_proto_msgTypes[27] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3383,7 +3429,7 @@ func (x *DisabledCodecs) ProtoReflect() protoreflect.Message { // Deprecated: Use DisabledCodecs.ProtoReflect.Descriptor instead. func (*DisabledCodecs) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{26} + return file_livekit_models_proto_rawDescGZIP(), []int{27} } func (x *DisabledCodecs) GetCodecs() []*Codec { @@ -3418,7 +3464,7 @@ type RTPDrift struct { func (x *RTPDrift) Reset() { *x = RTPDrift{} - mi := &file_livekit_models_proto_msgTypes[27] + mi := &file_livekit_models_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3430,7 +3476,7 @@ func (x *RTPDrift) String() string { func (*RTPDrift) ProtoMessage() {} func (x *RTPDrift) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[27] + mi := &file_livekit_models_proto_msgTypes[28] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3443,7 +3489,7 @@ func (x *RTPDrift) ProtoReflect() protoreflect.Message { // Deprecated: Use RTPDrift.ProtoReflect.Descriptor instead. func (*RTPDrift) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{27} + return file_livekit_models_proto_rawDescGZIP(), []int{28} } func (x *RTPDrift) GetStartTime() *timestamppb.Timestamp { @@ -3563,7 +3609,7 @@ type RTPStats struct { func (x *RTPStats) Reset() { *x = RTPStats{} - mi := &file_livekit_models_proto_msgTypes[28] + mi := &file_livekit_models_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3575,7 +3621,7 @@ func (x *RTPStats) String() string { func (*RTPStats) ProtoMessage() {} func (x *RTPStats) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[28] + mi := &file_livekit_models_proto_msgTypes[29] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3588,7 +3634,7 @@ func (x *RTPStats) ProtoReflect() protoreflect.Message { // Deprecated: Use RTPStats.ProtoReflect.Descriptor instead. func (*RTPStats) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{28} + return file_livekit_models_proto_rawDescGZIP(), []int{29} } func (x *RTPStats) GetStartTime() *timestamppb.Timestamp { @@ -3922,7 +3968,7 @@ type RTCPSenderReportState struct { func (x *RTCPSenderReportState) Reset() { *x = RTCPSenderReportState{} - mi := &file_livekit_models_proto_msgTypes[29] + mi := &file_livekit_models_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3934,7 +3980,7 @@ func (x *RTCPSenderReportState) String() string { func (*RTCPSenderReportState) ProtoMessage() {} func (x *RTCPSenderReportState) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[29] + mi := &file_livekit_models_proto_msgTypes[30] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3947,7 +3993,7 @@ func (x *RTCPSenderReportState) ProtoReflect() protoreflect.Message { // Deprecated: Use RTCPSenderReportState.ProtoReflect.Descriptor instead. func (*RTCPSenderReportState) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{29} + return file_livekit_models_proto_rawDescGZIP(), []int{30} } func (x *RTCPSenderReportState) GetRtpTimestamp() uint32 { @@ -4019,7 +4065,7 @@ type RTPForwarderState struct { func (x *RTPForwarderState) Reset() { *x = RTPForwarderState{} - mi := &file_livekit_models_proto_msgTypes[30] + mi := &file_livekit_models_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4031,7 +4077,7 @@ func (x *RTPForwarderState) String() string { func (*RTPForwarderState) ProtoMessage() {} func (x *RTPForwarderState) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[30] + mi := &file_livekit_models_proto_msgTypes[31] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4044,7 +4090,7 @@ func (x *RTPForwarderState) ProtoReflect() protoreflect.Message { // Deprecated: Use RTPForwarderState.ProtoReflect.Descriptor instead. func (*RTPForwarderState) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{30} + return file_livekit_models_proto_rawDescGZIP(), []int{31} } func (x *RTPForwarderState) GetStarted() bool { @@ -4135,7 +4181,7 @@ type RTPMungerState struct { func (x *RTPMungerState) Reset() { *x = RTPMungerState{} - mi := &file_livekit_models_proto_msgTypes[31] + mi := &file_livekit_models_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4147,7 +4193,7 @@ func (x *RTPMungerState) String() string { func (*RTPMungerState) ProtoMessage() {} func (x *RTPMungerState) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[31] + mi := &file_livekit_models_proto_msgTypes[32] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4160,7 +4206,7 @@ func (x *RTPMungerState) ProtoReflect() protoreflect.Message { // Deprecated: Use RTPMungerState.ProtoReflect.Descriptor instead. func (*RTPMungerState) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{31} + return file_livekit_models_proto_rawDescGZIP(), []int{32} } func (x *RTPMungerState) GetExtLastSequenceNumber() uint64 { @@ -4221,7 +4267,7 @@ type VP8MungerState struct { func (x *VP8MungerState) Reset() { *x = VP8MungerState{} - mi := &file_livekit_models_proto_msgTypes[32] + mi := &file_livekit_models_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4233,7 +4279,7 @@ func (x *VP8MungerState) String() string { func (*VP8MungerState) ProtoMessage() {} func (x *VP8MungerState) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[32] + mi := &file_livekit_models_proto_msgTypes[33] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4246,7 +4292,7 @@ func (x *VP8MungerState) ProtoReflect() protoreflect.Message { // Deprecated: Use VP8MungerState.ProtoReflect.Descriptor instead. func (*VP8MungerState) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{32} + return file_livekit_models_proto_rawDescGZIP(), []int{33} } func (x *VP8MungerState) GetExtLastPictureId() int32 { @@ -4309,7 +4355,7 @@ type TimedVersion struct { func (x *TimedVersion) Reset() { *x = TimedVersion{} - mi := &file_livekit_models_proto_msgTypes[33] + mi := &file_livekit_models_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4321,7 +4367,7 @@ func (x *TimedVersion) String() string { func (*TimedVersion) ProtoMessage() {} func (x *TimedVersion) ProtoReflect() protoreflect.Message { - mi := &file_livekit_models_proto_msgTypes[33] + mi := &file_livekit_models_proto_msgTypes[34] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4334,7 +4380,7 @@ func (x *TimedVersion) ProtoReflect() protoreflect.Message { // Deprecated: Use TimedVersion.ProtoReflect.Descriptor instead. func (*TimedVersion) Descriptor() ([]byte, []int) { - return file_livekit_models_proto_rawDescGZIP(), []int{33} + return file_livekit_models_proto_rawDescGZIP(), []int{34} } func (x *TimedVersion) GetUnixMicro() int64 { @@ -4359,7 +4405,9 @@ var file_livekit_models_proto_rawDesc = []byte{ 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x15, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, - 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xf4, 0x03, 0x0a, 0x04, 0x52, 0x6f, 0x6f, 0x6d, + 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x1e, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x03, 0x73, 0x65, 0x74, 0x22, 0xf4, 0x03, 0x0a, 0x04, 0x52, 0x6f, 0x6f, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x73, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x5f, @@ -5093,7 +5141,7 @@ func file_livekit_models_proto_rawDescGZIP() []byte { } var file_livekit_models_proto_enumTypes = make([]protoimpl.EnumInfo, 18) -var file_livekit_models_proto_msgTypes = make([]protoimpl.MessageInfo, 36) +var file_livekit_models_proto_msgTypes = make([]protoimpl.MessageInfo, 37) var file_livekit_models_proto_goTypes = []any{ (AudioCodec)(0), // 0: livekit.AudioCodec (VideoCodec)(0), // 1: livekit.VideoCodec @@ -5113,103 +5161,104 @@ var file_livekit_models_proto_goTypes = []any{ (DataPacket_Kind)(0), // 15: livekit.DataPacket.Kind (ServerInfo_Edition)(0), // 16: livekit.ServerInfo.Edition (ClientInfo_SDK)(0), // 17: livekit.ClientInfo.SDK - (*Room)(nil), // 18: livekit.Room - (*Codec)(nil), // 19: livekit.Codec - (*PlayoutDelay)(nil), // 20: livekit.PlayoutDelay - (*ParticipantPermission)(nil), // 21: livekit.ParticipantPermission - (*ParticipantInfo)(nil), // 22: livekit.ParticipantInfo - (*Encryption)(nil), // 23: livekit.Encryption - (*SimulcastCodecInfo)(nil), // 24: livekit.SimulcastCodecInfo - (*TrackInfo)(nil), // 25: livekit.TrackInfo - (*VideoLayer)(nil), // 26: livekit.VideoLayer - (*DataPacket)(nil), // 27: livekit.DataPacket - (*ActiveSpeakerUpdate)(nil), // 28: livekit.ActiveSpeakerUpdate - (*SpeakerInfo)(nil), // 29: livekit.SpeakerInfo - (*UserPacket)(nil), // 30: livekit.UserPacket - (*SipDTMF)(nil), // 31: livekit.SipDTMF - (*Transcription)(nil), // 32: livekit.Transcription - (*TranscriptionSegment)(nil), // 33: livekit.TranscriptionSegment - (*ChatMessage)(nil), // 34: livekit.ChatMessage - (*RpcRequest)(nil), // 35: livekit.RpcRequest - (*RpcAck)(nil), // 36: livekit.RpcAck - (*RpcResponse)(nil), // 37: livekit.RpcResponse - (*RpcError)(nil), // 38: livekit.RpcError - (*ParticipantTracks)(nil), // 39: livekit.ParticipantTracks - (*ServerInfo)(nil), // 40: livekit.ServerInfo - (*ClientInfo)(nil), // 41: livekit.ClientInfo - (*ClientConfiguration)(nil), // 42: livekit.ClientConfiguration - (*VideoConfiguration)(nil), // 43: livekit.VideoConfiguration - (*DisabledCodecs)(nil), // 44: livekit.DisabledCodecs - (*RTPDrift)(nil), // 45: livekit.RTPDrift - (*RTPStats)(nil), // 46: livekit.RTPStats - (*RTCPSenderReportState)(nil), // 47: livekit.RTCPSenderReportState - (*RTPForwarderState)(nil), // 48: livekit.RTPForwarderState - (*RTPMungerState)(nil), // 49: livekit.RTPMungerState - (*VP8MungerState)(nil), // 50: livekit.VP8MungerState - (*TimedVersion)(nil), // 51: livekit.TimedVersion - nil, // 52: livekit.ParticipantInfo.AttributesEntry - nil, // 53: livekit.RTPStats.GapHistogramEntry - (*MetricsBatch)(nil), // 54: livekit.MetricsBatch - (*timestamppb.Timestamp)(nil), // 55: google.protobuf.Timestamp + (*ListUpdate)(nil), // 18: livekit.ListUpdate + (*Room)(nil), // 19: livekit.Room + (*Codec)(nil), // 20: livekit.Codec + (*PlayoutDelay)(nil), // 21: livekit.PlayoutDelay + (*ParticipantPermission)(nil), // 22: livekit.ParticipantPermission + (*ParticipantInfo)(nil), // 23: livekit.ParticipantInfo + (*Encryption)(nil), // 24: livekit.Encryption + (*SimulcastCodecInfo)(nil), // 25: livekit.SimulcastCodecInfo + (*TrackInfo)(nil), // 26: livekit.TrackInfo + (*VideoLayer)(nil), // 27: livekit.VideoLayer + (*DataPacket)(nil), // 28: livekit.DataPacket + (*ActiveSpeakerUpdate)(nil), // 29: livekit.ActiveSpeakerUpdate + (*SpeakerInfo)(nil), // 30: livekit.SpeakerInfo + (*UserPacket)(nil), // 31: livekit.UserPacket + (*SipDTMF)(nil), // 32: livekit.SipDTMF + (*Transcription)(nil), // 33: livekit.Transcription + (*TranscriptionSegment)(nil), // 34: livekit.TranscriptionSegment + (*ChatMessage)(nil), // 35: livekit.ChatMessage + (*RpcRequest)(nil), // 36: livekit.RpcRequest + (*RpcAck)(nil), // 37: livekit.RpcAck + (*RpcResponse)(nil), // 38: livekit.RpcResponse + (*RpcError)(nil), // 39: livekit.RpcError + (*ParticipantTracks)(nil), // 40: livekit.ParticipantTracks + (*ServerInfo)(nil), // 41: livekit.ServerInfo + (*ClientInfo)(nil), // 42: livekit.ClientInfo + (*ClientConfiguration)(nil), // 43: livekit.ClientConfiguration + (*VideoConfiguration)(nil), // 44: livekit.VideoConfiguration + (*DisabledCodecs)(nil), // 45: livekit.DisabledCodecs + (*RTPDrift)(nil), // 46: livekit.RTPDrift + (*RTPStats)(nil), // 47: livekit.RTPStats + (*RTCPSenderReportState)(nil), // 48: livekit.RTCPSenderReportState + (*RTPForwarderState)(nil), // 49: livekit.RTPForwarderState + (*RTPMungerState)(nil), // 50: livekit.RTPMungerState + (*VP8MungerState)(nil), // 51: livekit.VP8MungerState + (*TimedVersion)(nil), // 52: livekit.TimedVersion + nil, // 53: livekit.ParticipantInfo.AttributesEntry + nil, // 54: livekit.RTPStats.GapHistogramEntry + (*MetricsBatch)(nil), // 55: livekit.MetricsBatch + (*timestamppb.Timestamp)(nil), // 56: google.protobuf.Timestamp } var file_livekit_models_proto_depIdxs = []int32{ - 19, // 0: livekit.Room.enabled_codecs:type_name -> livekit.Codec - 51, // 1: livekit.Room.version:type_name -> livekit.TimedVersion + 20, // 0: livekit.Room.enabled_codecs:type_name -> livekit.Codec + 52, // 1: livekit.Room.version:type_name -> livekit.TimedVersion 4, // 2: livekit.ParticipantPermission.can_publish_sources:type_name -> livekit.TrackSource 12, // 3: livekit.ParticipantInfo.state:type_name -> livekit.ParticipantInfo.State - 25, // 4: livekit.ParticipantInfo.tracks:type_name -> livekit.TrackInfo - 21, // 5: livekit.ParticipantInfo.permission:type_name -> livekit.ParticipantPermission + 26, // 4: livekit.ParticipantInfo.tracks:type_name -> livekit.TrackInfo + 22, // 5: livekit.ParticipantInfo.permission:type_name -> livekit.ParticipantPermission 13, // 6: livekit.ParticipantInfo.kind:type_name -> livekit.ParticipantInfo.Kind - 52, // 7: livekit.ParticipantInfo.attributes:type_name -> livekit.ParticipantInfo.AttributesEntry + 53, // 7: livekit.ParticipantInfo.attributes:type_name -> livekit.ParticipantInfo.AttributesEntry 8, // 8: livekit.ParticipantInfo.disconnect_reason:type_name -> livekit.DisconnectReason - 26, // 9: livekit.SimulcastCodecInfo.layers:type_name -> livekit.VideoLayer + 27, // 9: livekit.SimulcastCodecInfo.layers:type_name -> livekit.VideoLayer 3, // 10: livekit.TrackInfo.type:type_name -> livekit.TrackType 4, // 11: livekit.TrackInfo.source:type_name -> livekit.TrackSource - 26, // 12: livekit.TrackInfo.layers:type_name -> livekit.VideoLayer - 24, // 13: livekit.TrackInfo.codecs:type_name -> livekit.SimulcastCodecInfo + 27, // 12: livekit.TrackInfo.layers:type_name -> livekit.VideoLayer + 25, // 13: livekit.TrackInfo.codecs:type_name -> livekit.SimulcastCodecInfo 14, // 14: livekit.TrackInfo.encryption:type_name -> livekit.Encryption.Type - 51, // 15: livekit.TrackInfo.version:type_name -> livekit.TimedVersion + 52, // 15: livekit.TrackInfo.version:type_name -> livekit.TimedVersion 11, // 16: livekit.TrackInfo.audio_features:type_name -> livekit.AudioTrackFeature 5, // 17: livekit.VideoLayer.quality:type_name -> livekit.VideoQuality 15, // 18: livekit.DataPacket.kind:type_name -> livekit.DataPacket.Kind - 30, // 19: livekit.DataPacket.user:type_name -> livekit.UserPacket - 28, // 20: livekit.DataPacket.speaker:type_name -> livekit.ActiveSpeakerUpdate - 31, // 21: livekit.DataPacket.sip_dtmf:type_name -> livekit.SipDTMF - 32, // 22: livekit.DataPacket.transcription:type_name -> livekit.Transcription - 54, // 23: livekit.DataPacket.metrics:type_name -> livekit.MetricsBatch - 34, // 24: livekit.DataPacket.chat_message:type_name -> livekit.ChatMessage - 35, // 25: livekit.DataPacket.rpc_request:type_name -> livekit.RpcRequest - 36, // 26: livekit.DataPacket.rpc_ack:type_name -> livekit.RpcAck - 37, // 27: livekit.DataPacket.rpc_response:type_name -> livekit.RpcResponse - 29, // 28: livekit.ActiveSpeakerUpdate.speakers:type_name -> livekit.SpeakerInfo - 33, // 29: livekit.Transcription.segments:type_name -> livekit.TranscriptionSegment - 38, // 30: livekit.RpcResponse.error:type_name -> livekit.RpcError + 31, // 19: livekit.DataPacket.user:type_name -> livekit.UserPacket + 29, // 20: livekit.DataPacket.speaker:type_name -> livekit.ActiveSpeakerUpdate + 32, // 21: livekit.DataPacket.sip_dtmf:type_name -> livekit.SipDTMF + 33, // 22: livekit.DataPacket.transcription:type_name -> livekit.Transcription + 55, // 23: livekit.DataPacket.metrics:type_name -> livekit.MetricsBatch + 35, // 24: livekit.DataPacket.chat_message:type_name -> livekit.ChatMessage + 36, // 25: livekit.DataPacket.rpc_request:type_name -> livekit.RpcRequest + 37, // 26: livekit.DataPacket.rpc_ack:type_name -> livekit.RpcAck + 38, // 27: livekit.DataPacket.rpc_response:type_name -> livekit.RpcResponse + 30, // 28: livekit.ActiveSpeakerUpdate.speakers:type_name -> livekit.SpeakerInfo + 34, // 29: livekit.Transcription.segments:type_name -> livekit.TranscriptionSegment + 39, // 30: livekit.RpcResponse.error:type_name -> livekit.RpcError 16, // 31: livekit.ServerInfo.edition:type_name -> livekit.ServerInfo.Edition 17, // 32: livekit.ClientInfo.sdk:type_name -> livekit.ClientInfo.SDK - 43, // 33: livekit.ClientConfiguration.video:type_name -> livekit.VideoConfiguration - 43, // 34: livekit.ClientConfiguration.screen:type_name -> livekit.VideoConfiguration + 44, // 33: livekit.ClientConfiguration.video:type_name -> livekit.VideoConfiguration + 44, // 34: livekit.ClientConfiguration.screen:type_name -> livekit.VideoConfiguration 7, // 35: livekit.ClientConfiguration.resume_connection:type_name -> livekit.ClientConfigSetting - 44, // 36: livekit.ClientConfiguration.disabled_codecs:type_name -> livekit.DisabledCodecs + 45, // 36: livekit.ClientConfiguration.disabled_codecs:type_name -> livekit.DisabledCodecs 7, // 37: livekit.ClientConfiguration.force_relay:type_name -> livekit.ClientConfigSetting 7, // 38: livekit.VideoConfiguration.hardware_encoder:type_name -> livekit.ClientConfigSetting - 19, // 39: livekit.DisabledCodecs.codecs:type_name -> livekit.Codec - 19, // 40: livekit.DisabledCodecs.publish:type_name -> livekit.Codec - 55, // 41: livekit.RTPDrift.start_time:type_name -> google.protobuf.Timestamp - 55, // 42: livekit.RTPDrift.end_time:type_name -> google.protobuf.Timestamp - 55, // 43: livekit.RTPStats.start_time:type_name -> google.protobuf.Timestamp - 55, // 44: livekit.RTPStats.end_time:type_name -> google.protobuf.Timestamp - 53, // 45: livekit.RTPStats.gap_histogram:type_name -> livekit.RTPStats.GapHistogramEntry - 55, // 46: livekit.RTPStats.last_pli:type_name -> google.protobuf.Timestamp - 55, // 47: livekit.RTPStats.last_fir:type_name -> google.protobuf.Timestamp - 55, // 48: livekit.RTPStats.last_key_frame:type_name -> google.protobuf.Timestamp - 55, // 49: livekit.RTPStats.last_layer_lock_pli:type_name -> google.protobuf.Timestamp - 45, // 50: livekit.RTPStats.packet_drift:type_name -> livekit.RTPDrift - 45, // 51: livekit.RTPStats.ntp_report_drift:type_name -> livekit.RTPDrift - 45, // 52: livekit.RTPStats.rebased_report_drift:type_name -> livekit.RTPDrift - 45, // 53: livekit.RTPStats.received_report_drift:type_name -> livekit.RTPDrift - 49, // 54: livekit.RTPForwarderState.rtp_munger:type_name -> livekit.RTPMungerState - 50, // 55: livekit.RTPForwarderState.vp8_munger:type_name -> livekit.VP8MungerState - 47, // 56: livekit.RTPForwarderState.sender_report_state:type_name -> livekit.RTCPSenderReportState + 20, // 39: livekit.DisabledCodecs.codecs:type_name -> livekit.Codec + 20, // 40: livekit.DisabledCodecs.publish:type_name -> livekit.Codec + 56, // 41: livekit.RTPDrift.start_time:type_name -> google.protobuf.Timestamp + 56, // 42: livekit.RTPDrift.end_time:type_name -> google.protobuf.Timestamp + 56, // 43: livekit.RTPStats.start_time:type_name -> google.protobuf.Timestamp + 56, // 44: livekit.RTPStats.end_time:type_name -> google.protobuf.Timestamp + 54, // 45: livekit.RTPStats.gap_histogram:type_name -> livekit.RTPStats.GapHistogramEntry + 56, // 46: livekit.RTPStats.last_pli:type_name -> google.protobuf.Timestamp + 56, // 47: livekit.RTPStats.last_fir:type_name -> google.protobuf.Timestamp + 56, // 48: livekit.RTPStats.last_key_frame:type_name -> google.protobuf.Timestamp + 56, // 49: livekit.RTPStats.last_layer_lock_pli:type_name -> google.protobuf.Timestamp + 46, // 50: livekit.RTPStats.packet_drift:type_name -> livekit.RTPDrift + 46, // 51: livekit.RTPStats.ntp_report_drift:type_name -> livekit.RTPDrift + 46, // 52: livekit.RTPStats.rebased_report_drift:type_name -> livekit.RTPDrift + 46, // 53: livekit.RTPStats.received_report_drift:type_name -> livekit.RTPDrift + 50, // 54: livekit.RTPForwarderState.rtp_munger:type_name -> livekit.RTPMungerState + 51, // 55: livekit.RTPForwarderState.vp8_munger:type_name -> livekit.VP8MungerState + 48, // 56: livekit.RTPForwarderState.sender_report_state:type_name -> livekit.RTCPSenderReportState 57, // [57:57] is the sub-list for method output_type 57, // [57:57] is the sub-list for method input_type 57, // [57:57] is the sub-list for extension type_name @@ -5223,7 +5272,7 @@ func file_livekit_models_proto_init() { return } file_livekit_metrics_proto_init() - file_livekit_models_proto_msgTypes[9].OneofWrappers = []any{ + file_livekit_models_proto_msgTypes[10].OneofWrappers = []any{ (*DataPacket_User)(nil), (*DataPacket_Speaker)(nil), (*DataPacket_SipDtmf)(nil), @@ -5234,13 +5283,13 @@ func file_livekit_models_proto_init() { (*DataPacket_RpcAck)(nil), (*DataPacket_RpcResponse)(nil), } - file_livekit_models_proto_msgTypes[12].OneofWrappers = []any{} - file_livekit_models_proto_msgTypes[16].OneofWrappers = []any{} - file_livekit_models_proto_msgTypes[19].OneofWrappers = []any{ + file_livekit_models_proto_msgTypes[13].OneofWrappers = []any{} + file_livekit_models_proto_msgTypes[17].OneofWrappers = []any{} + file_livekit_models_proto_msgTypes[20].OneofWrappers = []any{ (*RpcResponse_Payload)(nil), (*RpcResponse_Error)(nil), } - file_livekit_models_proto_msgTypes[30].OneofWrappers = []any{ + file_livekit_models_proto_msgTypes[31].OneofWrappers = []any{ (*RTPForwarderState_Vp8Munger)(nil), } type x struct{} @@ -5249,7 +5298,7 @@ func file_livekit_models_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_livekit_models_proto_rawDesc, NumEnums: 18, - NumMessages: 36, + NumMessages: 37, NumExtensions: 0, NumServices: 0, }, diff --git a/livekit/livekit_sip.pb.go b/livekit/livekit_sip.pb.go index 6c699083..6dba5ad9 100644 --- a/livekit/livekit_sip.pb.go +++ b/livekit/livekit_sip.pb.go @@ -787,13 +787,13 @@ type SIPInboundTrunkUpdate struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Numbers []string `protobuf:"bytes,1,rep,name=numbers,proto3" json:"numbers,omitempty"` - AllowedAddresses []string `protobuf:"bytes,2,rep,name=allowed_addresses,json=allowedAddresses,proto3" json:"allowed_addresses,omitempty"` - AllowedNumbers []string `protobuf:"bytes,3,rep,name=allowed_numbers,json=allowedNumbers,proto3" json:"allowed_numbers,omitempty"` - AuthUsername *string `protobuf:"bytes,4,opt,name=auth_username,json=authUsername,proto3,oneof" json:"auth_username,omitempty"` - AuthPassword *string `protobuf:"bytes,5,opt,name=auth_password,json=authPassword,proto3,oneof" json:"auth_password,omitempty"` - Name *string `protobuf:"bytes,6,opt,name=name,proto3,oneof" json:"name,omitempty"` - Metadata *string `protobuf:"bytes,7,opt,name=metadata,proto3,oneof" json:"metadata,omitempty"` + Numbers *ListUpdate `protobuf:"bytes,1,opt,name=numbers,proto3" json:"numbers,omitempty"` + AllowedAddresses *ListUpdate `protobuf:"bytes,2,opt,name=allowed_addresses,json=allowedAddresses,proto3" json:"allowed_addresses,omitempty"` + AllowedNumbers *ListUpdate `protobuf:"bytes,3,opt,name=allowed_numbers,json=allowedNumbers,proto3" json:"allowed_numbers,omitempty"` + AuthUsername *string `protobuf:"bytes,4,opt,name=auth_username,json=authUsername,proto3,oneof" json:"auth_username,omitempty"` + AuthPassword *string `protobuf:"bytes,5,opt,name=auth_password,json=authPassword,proto3,oneof" json:"auth_password,omitempty"` + Name *string `protobuf:"bytes,6,opt,name=name,proto3,oneof" json:"name,omitempty"` + Metadata *string `protobuf:"bytes,7,opt,name=metadata,proto3,oneof" json:"metadata,omitempty"` } func (x *SIPInboundTrunkUpdate) Reset() { @@ -826,21 +826,21 @@ func (*SIPInboundTrunkUpdate) Descriptor() ([]byte, []int) { return file_livekit_sip_proto_rawDescGZIP(), []int{5} } -func (x *SIPInboundTrunkUpdate) GetNumbers() []string { +func (x *SIPInboundTrunkUpdate) GetNumbers() *ListUpdate { if x != nil { return x.Numbers } return nil } -func (x *SIPInboundTrunkUpdate) GetAllowedAddresses() []string { +func (x *SIPInboundTrunkUpdate) GetAllowedAddresses() *ListUpdate { if x != nil { return x.AllowedAddresses } return nil } -func (x *SIPInboundTrunkUpdate) GetAllowedNumbers() []string { +func (x *SIPInboundTrunkUpdate) GetAllowedNumbers() *ListUpdate { if x != nil { return x.AllowedNumbers } @@ -1143,7 +1143,7 @@ type SIPOutboundTrunkUpdate struct { Address *string `protobuf:"bytes,1,opt,name=address,proto3,oneof" json:"address,omitempty"` Transport *SIPTransport `protobuf:"varint,2,opt,name=transport,proto3,enum=livekit.SIPTransport,oneof" json:"transport,omitempty"` - Numbers []string `protobuf:"bytes,3,rep,name=numbers,proto3" json:"numbers,omitempty"` + Numbers *ListUpdate `protobuf:"bytes,3,opt,name=numbers,proto3" json:"numbers,omitempty"` AuthUsername *string `protobuf:"bytes,4,opt,name=auth_username,json=authUsername,proto3,oneof" json:"auth_username,omitempty"` AuthPassword *string `protobuf:"bytes,5,opt,name=auth_password,json=authPassword,proto3,oneof" json:"auth_password,omitempty"` Name *string `protobuf:"bytes,6,opt,name=name,proto3,oneof" json:"name,omitempty"` @@ -1194,7 +1194,7 @@ func (x *SIPOutboundTrunkUpdate) GetTransport() SIPTransport { return SIPTransport_SIP_TRANSPORT_AUTO } -func (x *SIPOutboundTrunkUpdate) GetNumbers() []string { +func (x *SIPOutboundTrunkUpdate) GetNumbers() *ListUpdate { if x != nil { return x.Numbers } @@ -2301,7 +2301,7 @@ type SIPDispatchRuleUpdate struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - TrunkIds []string `protobuf:"bytes,1,rep,name=trunk_ids,json=trunkIds,proto3" json:"trunk_ids,omitempty"` + TrunkIds *ListUpdate `protobuf:"bytes,1,opt,name=trunk_ids,json=trunkIds,proto3" json:"trunk_ids,omitempty"` Rule *SIPDispatchRule `protobuf:"bytes,2,opt,name=rule,proto3" json:"rule,omitempty"` Name *string `protobuf:"bytes,3,opt,name=name,proto3,oneof" json:"name,omitempty"` Metadata *string `protobuf:"bytes,4,opt,name=metadata,proto3,oneof" json:"metadata,omitempty"` @@ -2338,7 +2338,7 @@ func (*SIPDispatchRuleUpdate) Descriptor() ([]byte, []int) { return file_livekit_sip_proto_rawDescGZIP(), []int{28} } -func (x *SIPDispatchRuleUpdate) GetTrunkIds() []string { +func (x *SIPDispatchRuleUpdate) GetTrunkIds() *ListUpdate { if x != nil { return x.TrunkIds } @@ -3182,511 +3182,517 @@ var file_livekit_sip_proto_rawDesc = []byte{ 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xcf, 0x02, 0x0a, 0x15, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, + 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x8e, 0x03, 0x0a, 0x15, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x07, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x61, 0x6c, 0x6c, - 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x41, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, - 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x0e, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, - 0x28, 0x0a, 0x0d, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0c, 0x61, 0x75, 0x74, 0x68, 0x55, 0x73, - 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x61, 0x75, 0x74, - 0x68, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, - 0x48, 0x01, 0x52, 0x0c, 0x61, 0x75, 0x74, 0x68, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, - 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x09, 0x48, 0x02, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, - 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, - 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x42, 0x10, 0x0a, - 0x0e, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x42, - 0x10, 0x0a, 0x0e, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, - 0x64, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, - 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x54, 0x0a, 0x1d, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, - 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x33, 0x0a, 0x05, 0x74, 0x72, 0x75, 0x6e, - 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, - 0x74, 0x2e, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, - 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x22, 0xc1, 0x01, - 0x0a, 0x1d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, - 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x20, 0x0a, 0x0c, 0x73, 0x69, 0x70, 0x5f, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x69, 0x70, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, - 0x64, 0x12, 0x39, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, - 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, - 0x6f, 0x48, 0x00, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x12, 0x39, 0x0a, 0x06, - 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6c, - 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, - 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, - 0x06, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x08, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x22, 0xd1, 0x04, 0x0a, 0x14, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, - 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x69, - 0x70, 0x5f, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0a, 0x73, 0x69, 0x70, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, - 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x33, 0x0a, 0x09, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, - 0x6f, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x6c, 0x69, 0x76, 0x65, - 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, - 0x52, 0x09, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6e, - 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x75, - 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x75, 0x73, - 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x75, - 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x75, - 0x74, 0x68, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0c, 0x61, 0x75, 0x74, 0x68, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, - 0x44, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x2a, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x4f, 0x75, - 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x2e, - 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x68, 0x65, - 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x6a, 0x0a, 0x15, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, - 0x5f, 0x74, 0x6f, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x0a, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, - 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, - 0x6e, 0x66, 0x6f, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x54, 0x6f, 0x41, 0x74, 0x74, - 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x13, 0x68, 0x65, - 0x61, 0x64, 0x65, 0x72, 0x73, 0x54, 0x6f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, - 0x73, 0x1a, 0x3a, 0x0a, 0x0c, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, - 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x46, 0x0a, - 0x18, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x54, 0x6f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, - 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xed, 0x02, 0x0a, 0x16, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, - 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x12, 0x1d, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x48, 0x00, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x88, 0x01, 0x01, 0x12, - 0x38, 0x0a, 0x09, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, - 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x48, 0x01, 0x52, 0x09, 0x74, 0x72, 0x61, - 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x88, 0x01, 0x01, 0x12, 0x18, 0x0a, 0x07, 0x6e, 0x75, 0x6d, - 0x62, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x75, 0x6d, 0x62, - 0x65, 0x72, 0x73, 0x12, 0x28, 0x0a, 0x0d, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x75, 0x73, 0x65, 0x72, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x0c, 0x61, 0x75, - 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, - 0x0d, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x0c, 0x61, 0x75, 0x74, 0x68, 0x50, 0x61, 0x73, 0x73, - 0x77, 0x6f, 0x72, 0x64, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x04, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, - 0x12, 0x1f, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x09, 0x48, 0x05, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, - 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x42, 0x0c, 0x0a, - 0x0a, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, - 0x61, 0x75, 0x74, 0x68, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x10, 0x0a, - 0x0e, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x42, - 0x07, 0x0a, 0x05, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x65, 0x74, - 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x3d, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x49, - 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x69, 0x70, 0x5f, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x69, 0x70, 0x54, 0x72, 0x75, - 0x6e, 0x6b, 0x49, 0x64, 0x22, 0x50, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, - 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x32, 0x0a, 0x05, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x49, - 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x05, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x22, 0x3e, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, - 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x69, 0x70, 0x5f, 0x74, 0x72, 0x75, 0x6e, - 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x69, 0x70, 0x54, - 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x22, 0x52, 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, - 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x05, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, - 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, - 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x22, 0x19, 0x0a, 0x13, 0x4c, 0x69, - 0x73, 0x74, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x3a, 0x02, 0x18, 0x01, 0x22, 0x47, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, - 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2b, 0x0a, - 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x6c, - 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, - 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x3a, 0x02, 0x18, 0x01, 0x22, 0x1c, - 0x0a, 0x1a, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, - 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x51, 0x0a, 0x1b, - 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, - 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x05, 0x69, - 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6c, 0x69, 0x76, - 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, - 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, - 0x1d, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, - 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x53, - 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, - 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x33, - 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, - 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, + 0x2d, 0x0a, 0x07, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x13, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x07, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x40, + 0x0a, 0x11, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6c, 0x69, 0x76, 0x65, + 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x10, + 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, + 0x12, 0x3c, 0x0a, 0x0f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6c, 0x69, 0x76, 0x65, + 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x0e, + 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x28, + 0x0a, 0x0d, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0c, 0x61, 0x75, 0x74, 0x68, 0x55, 0x73, 0x65, + 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x61, 0x75, 0x74, 0x68, + 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, + 0x01, 0x52, 0x0c, 0x61, 0x75, 0x74, 0x68, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x88, + 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x48, 0x02, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x6d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, + 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x42, 0x10, 0x0a, 0x0e, + 0x5f, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x10, + 0x0a, 0x0e, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, + 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x54, 0x0a, 0x1d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x33, 0x0a, 0x05, 0x74, 0x72, 0x75, 0x6e, 0x6b, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, + 0x2e, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, + 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x22, 0xc1, 0x01, 0x0a, + 0x1d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, + 0x0a, 0x0c, 0x73, 0x69, 0x70, 0x5f, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x69, 0x70, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, + 0x12, 0x39, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1d, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x4f, + 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, + 0x48, 0x00, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x12, 0x39, 0x0a, 0x06, 0x75, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6c, 0x69, + 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, + 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x06, + 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x08, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x22, 0xd1, 0x04, 0x0a, 0x14, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, + 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x69, 0x70, + 0x5f, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x73, 0x69, 0x70, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, + 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x61, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x33, 0x0a, 0x09, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, + 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, + 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x52, + 0x09, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x75, 0x6d, + 0x62, 0x65, 0x72, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x75, 0x73, 0x65, + 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x75, 0x74, + 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x75, 0x74, + 0x68, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0c, 0x61, 0x75, 0x74, 0x68, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x44, + 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x2a, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, + 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x48, + 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x68, 0x65, 0x61, + 0x64, 0x65, 0x72, 0x73, 0x12, 0x6a, 0x0a, 0x15, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x5f, + 0x74, 0x6f, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x0a, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, + 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, + 0x66, 0x6f, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x54, 0x6f, 0x41, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x13, 0x68, 0x65, 0x61, + 0x64, 0x65, 0x72, 0x73, 0x54, 0x6f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, + 0x1a, 0x3a, 0x0a, 0x0c, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x46, 0x0a, 0x18, + 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x54, 0x6f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3a, 0x02, 0x38, 0x01, 0x22, 0x82, 0x03, 0x0a, 0x16, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, + 0x1d, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x48, 0x00, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x88, 0x01, 0x01, 0x12, 0x38, + 0x0a, 0x09, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x15, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x54, + 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x48, 0x01, 0x52, 0x09, 0x74, 0x72, 0x61, 0x6e, + 0x73, 0x70, 0x6f, 0x72, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x07, 0x6e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6c, 0x69, 0x76, 0x65, + 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x07, + 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x28, 0x0a, 0x0d, 0x61, 0x75, 0x74, 0x68, 0x5f, + 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, + 0x52, 0x0c, 0x61, 0x75, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x88, 0x01, + 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, + 0x72, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x0c, 0x61, 0x75, 0x74, 0x68, + 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x04, 0x52, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x05, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, + 0x74, 0x61, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x42, + 0x10, 0x0a, 0x0e, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, + 0x65, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, + 0x6f, 0x72, 0x64, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x0b, 0x0a, 0x09, + 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x3d, 0x0a, 0x19, 0x47, 0x65, 0x74, + 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x69, 0x70, 0x5f, 0x74, 0x72, + 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x69, + 0x70, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x22, 0x50, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x53, + 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x05, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, + 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, + 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x22, 0x3e, 0x0a, 0x1a, 0x47, 0x65, + 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, + 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x69, 0x70, 0x5f, + 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x73, 0x69, 0x70, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x22, 0x52, 0x0a, 0x1b, 0x47, 0x65, + 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, + 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x05, 0x74, 0x72, 0x75, + 0x6e, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, + 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, + 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x22, 0x19, + 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x3a, 0x02, 0x18, 0x01, 0x22, 0x47, 0x0a, 0x14, 0x4c, 0x69, 0x73, + 0x74, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x2b, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x15, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x54, 0x72, + 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x3a, 0x02, + 0x18, 0x01, 0x22, 0x1c, 0x0a, 0x1a, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x22, 0x51, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x32, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, + 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x69, 0x74, - 0x65, 0x6d, 0x73, 0x22, 0x39, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x49, 0x50, - 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0c, - 0x73, 0x69, 0x70, 0x5f, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0a, 0x73, 0x69, 0x70, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x22, 0x46, - 0x0a, 0x15, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, - 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x6f, 0x6d, - 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x03, 0x70, 0x69, 0x6e, 0x22, 0x4e, 0x0a, 0x19, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, - 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, - 0x75, 0x61, 0x6c, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x70, 0x72, 0x65, 0x66, + 0x65, 0x6d, 0x73, 0x22, 0x1d, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, + 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x22, 0x53, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, + 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x33, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x1d, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x4f, + 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, + 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, 0x39, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x69, 0x70, 0x5f, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x69, 0x70, 0x54, 0x72, 0x75, 0x6e, 0x6b, + 0x49, 0x64, 0x22, 0x46, 0x0a, 0x15, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, + 0x68, 0x52, 0x75, 0x6c, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x72, + 0x6f, 0x6f, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x72, 0x6f, 0x6f, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x69, 0x6e, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x70, 0x69, 0x6e, 0x22, 0x4e, 0x0a, 0x19, 0x53, 0x49, + 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x64, + 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, + 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x6f, + 0x6f, 0x6d, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x69, 0x6e, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x70, 0x69, 0x6e, 0x22, 0x68, 0x0a, 0x15, 0x53, 0x49, + 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x43, 0x61, 0x6c, + 0x6c, 0x65, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x6f, 0x6f, 0x6d, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x03, 0x70, 0x69, 0x6e, 0x22, 0x68, 0x0a, 0x15, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, - 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x65, 0x65, 0x12, - 0x1f, 0x0a, 0x0b, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x6f, 0x6f, 0x6d, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, - 0x12, 0x10, 0x0a, 0x03, 0x70, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x70, - 0x69, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x69, 0x7a, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x69, 0x7a, 0x65, - 0x22, 0xa1, 0x02, 0x0a, 0x0f, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, - 0x52, 0x75, 0x6c, 0x65, 0x12, 0x52, 0x0a, 0x14, 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, - 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, - 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x44, 0x69, 0x72, 0x65, - 0x63, 0x74, 0x48, 0x00, 0x52, 0x12, 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, - 0x6c, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x12, 0x5e, 0x0a, 0x18, 0x64, 0x69, 0x73, 0x70, - 0x61, 0x74, 0x63, 0x68, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x69, 0x76, 0x69, - 0x64, 0x75, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6c, 0x69, 0x76, - 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, - 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x48, 0x00, - 0x52, 0x16, 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, - 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x12, 0x52, 0x0a, 0x14, 0x64, 0x69, 0x73, 0x70, - 0x61, 0x74, 0x63, 0x68, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x65, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, - 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, - 0x43, 0x61, 0x6c, 0x6c, 0x65, 0x65, 0x48, 0x00, 0x52, 0x12, 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, - 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x65, 0x65, 0x42, 0x06, 0x0a, 0x04, - 0x72, 0x75, 0x6c, 0x65, 0x22, 0xe3, 0x03, 0x0a, 0x1c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, - 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x0d, 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, - 0x68, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6c, - 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, - 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0c, 0x64, 0x69, 0x73, 0x70, - 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x30, 0x0a, 0x04, 0x72, 0x75, 0x6c, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, - 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, - 0x42, 0x02, 0x18, 0x01, 0x52, 0x04, 0x72, 0x75, 0x6c, 0x65, 0x12, 0x1f, 0x0a, 0x09, 0x74, 0x72, - 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 0x02, 0x18, - 0x01, 0x52, 0x08, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x73, 0x12, 0x2e, 0x0a, 0x11, 0x68, - 0x69, 0x64, 0x65, 0x5f, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0f, 0x68, 0x69, 0x64, 0x65, - 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x2b, 0x0a, 0x0f, 0x69, - 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x06, - 0x20, 0x03, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0e, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, - 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x16, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x1e, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, - 0x12, 0x59, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x07, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, - 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x41, 0x74, 0x74, 0x72, - 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x02, 0x18, 0x01, 0x52, - 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x1a, 0x3d, 0x0a, 0x0f, 0x41, - 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, - 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, - 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xcd, 0x01, 0x0a, 0x1c, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, - 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x14, 0x73, - 0x69, 0x70, 0x5f, 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x72, 0x75, 0x6c, 0x65, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x73, 0x69, 0x70, 0x44, 0x69, - 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x38, 0x0a, 0x07, - 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, - 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, - 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x48, 0x00, 0x52, 0x07, 0x72, - 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x12, 0x38, 0x0a, 0x06, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, + 0x09, 0x52, 0x03, 0x70, 0x69, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, + 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x72, 0x61, 0x6e, 0x64, 0x6f, + 0x6d, 0x69, 0x7a, 0x65, 0x22, 0xa1, 0x02, 0x0a, 0x0f, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, + 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x52, 0x0a, 0x14, 0x64, 0x69, 0x73, 0x70, + 0x61, 0x74, 0x63, 0x68, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x06, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x42, 0x08, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa3, 0x03, 0x0a, 0x13, 0x53, - 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, - 0x66, 0x6f, 0x12, 0x2f, 0x0a, 0x14, 0x73, 0x69, 0x70, 0x5f, 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, - 0x63, 0x68, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x11, 0x73, 0x69, 0x70, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, - 0x65, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x04, 0x72, 0x75, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x18, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, - 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x75, 0x6c, - 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, - 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x73, 0x12, 0x2a, - 0x0a, 0x11, 0x68, 0x69, 0x64, 0x65, 0x5f, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x5f, 0x6e, 0x75, 0x6d, - 0x62, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x68, 0x69, 0x64, 0x65, 0x50, - 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, - 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x07, 0x20, - 0x03, 0x28, 0x09, 0x52, 0x0e, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x4e, 0x75, 0x6d, 0x62, - 0x65, 0x72, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x12, 0x4c, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, - 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, - 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, - 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, - 0x73, 0x1a, 0x3d, 0x0a, 0x0f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, - 0x22, 0xc1, 0x02, 0x0a, 0x15, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, - 0x52, 0x75, 0x6c, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x72, - 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x74, - 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x73, 0x12, 0x2c, 0x0a, 0x04, 0x72, 0x75, 0x6c, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, - 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, - 0x04, 0x72, 0x75, 0x6c, 0x65, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1f, - 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x48, 0x01, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x12, - 0x4e, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x05, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, - 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, - 0x74, 0x72, 0x79, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x1a, + 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x48, 0x00, 0x52, 0x12, 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, + 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x12, 0x5e, 0x0a, 0x18, + 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x6e, + 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, + 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, + 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, + 0x61, 0x6c, 0x48, 0x00, 0x52, 0x16, 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, + 0x6c, 0x65, 0x49, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x12, 0x52, 0x0a, 0x14, + 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x63, 0x61, + 0x6c, 0x6c, 0x65, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6c, 0x69, 0x76, + 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, + 0x52, 0x75, 0x6c, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x65, 0x65, 0x48, 0x00, 0x52, 0x12, 0x64, 0x69, + 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x65, 0x65, + 0x42, 0x06, 0x0a, 0x04, 0x72, 0x75, 0x6c, 0x65, 0x22, 0xe3, 0x03, 0x0a, 0x1c, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, + 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x0d, 0x64, 0x69, 0x73, + 0x70, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, + 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0c, + 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x30, 0x0a, 0x04, + 0x72, 0x75, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6c, 0x69, 0x76, + 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, + 0x52, 0x75, 0x6c, 0x65, 0x42, 0x02, 0x18, 0x01, 0x52, 0x04, 0x72, 0x75, 0x6c, 0x65, 0x12, 0x1f, + 0x0a, 0x09, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x08, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x73, 0x12, + 0x2e, 0x0a, 0x11, 0x68, 0x69, 0x64, 0x65, 0x5f, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x5f, 0x6e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0f, + 0x68, 0x69, 0x64, 0x65, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, + 0x2b, 0x0a, 0x0f, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, + 0x72, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0e, 0x69, 0x6e, + 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x16, 0x0a, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x12, 0x59, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, + 0x69, 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, + 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, + 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, + 0x02, 0x18, 0x01, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x1a, 0x3d, 0x0a, 0x0f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0x07, - 0x0a, 0x05, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x22, 0x1c, 0x0a, 0x1a, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x44, - 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x22, 0x51, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, - 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x32, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, - 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, - 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, 0x4f, 0x0a, 0x1c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, - 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x14, 0x73, 0x69, 0x70, 0x5f, 0x64, 0x69, 0x73, - 0x70, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x11, 0x73, 0x69, 0x70, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, - 0x52, 0x75, 0x6c, 0x65, 0x49, 0x64, 0x22, 0xaa, 0x06, 0x0a, 0x1b, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x69, 0x70, 0x5f, 0x74, 0x72, - 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x69, - 0x70, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x69, 0x70, 0x5f, - 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x74, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, - 0x69, 0x70, 0x43, 0x61, 0x6c, 0x6c, 0x54, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x69, 0x70, 0x5f, - 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x69, - 0x70, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x6f, 0x6d, - 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x31, 0x0a, 0x14, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, - 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x13, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, - 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x61, 0x72, 0x74, 0x69, - 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x4e, 0x61, - 0x6d, 0x65, 0x12, 0x31, 0x0a, 0x14, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, - 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x13, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x4d, 0x65, 0x74, - 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x76, 0x0a, 0x16, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, - 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, - 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, - 0x70, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x50, 0x61, 0x72, 0x74, - 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, - 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x15, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, - 0x61, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x12, 0x0a, - 0x04, 0x64, 0x74, 0x6d, 0x66, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x74, 0x6d, - 0x66, 0x12, 0x27, 0x0a, 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x74, 0x6f, - 0x6e, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0c, 0x70, 0x6c, - 0x61, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x74, 0x6f, 0x6e, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x6c, - 0x61, 0x79, 0x5f, 0x64, 0x69, 0x61, 0x6c, 0x74, 0x6f, 0x6e, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x44, 0x69, 0x61, 0x6c, 0x74, 0x6f, 0x6e, 0x65, 0x12, - 0x2a, 0x0a, 0x11, 0x68, 0x69, 0x64, 0x65, 0x5f, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x5f, 0x6e, 0x75, - 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x68, 0x69, 0x64, 0x65, - 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x42, 0x0a, 0x0f, 0x72, - 0x69, 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x0b, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x0e, 0x72, 0x69, 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, - 0x45, 0x0a, 0x11, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x64, 0x75, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x6d, 0x61, 0x78, 0x43, 0x61, 0x6c, 0x6c, 0x44, 0x75, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, - 0x5f, 0x6b, 0x72, 0x69, 0x73, 0x70, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x65, 0x6e, - 0x61, 0x62, 0x6c, 0x65, 0x4b, 0x72, 0x69, 0x73, 0x70, 0x1a, 0x48, 0x0a, 0x1a, 0x50, 0x61, 0x72, - 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, - 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, - 0x02, 0x38, 0x01, 0x22, 0xab, 0x01, 0x0a, 0x12, 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, 0x74, 0x69, - 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x61, - 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, - 0x64, 0x12, 0x31, 0x0a, 0x14, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, - 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x13, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x65, 0x6e, - 0x74, 0x69, 0x74, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x6f, 0x6d, 0x4e, 0x61, 0x6d, - 0x65, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x69, 0x70, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x69, 0x64, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x69, 0x70, 0x43, 0x61, 0x6c, 0x6c, 0x49, - 0x64, 0x22, 0xb5, 0x01, 0x0a, 0x1d, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x53, 0x49, - 0x50, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x31, 0x0a, 0x14, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, - 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x13, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, - 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x6f, 0x6d, 0x4e, - 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x5f, - 0x74, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, - 0x65, 0x72, 0x54, 0x6f, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x64, 0x69, 0x61, - 0x6c, 0x74, 0x6f, 0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x70, 0x6c, 0x61, - 0x79, 0x44, 0x69, 0x61, 0x6c, 0x74, 0x6f, 0x6e, 0x65, 0x22, 0xee, 0x03, 0x0a, 0x0b, 0x53, 0x49, - 0x50, 0x43, 0x61, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x61, 0x6c, - 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x61, 0x6c, 0x6c, - 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x12, 0x1b, 0x0a, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xcd, + 0x01, 0x0a, 0x1c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, + 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x2f, 0x0a, 0x14, 0x73, 0x69, 0x70, 0x5f, 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x5f, + 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x73, + 0x69, 0x70, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x64, + 0x12, 0x38, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, + 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x48, + 0x00, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x12, 0x38, 0x0a, 0x06, 0x75, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6c, 0x69, 0x76, + 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, + 0x52, 0x75, 0x6c, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x06, 0x75, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x42, 0x08, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa3, + 0x03, 0x0a, 0x13, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, + 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2f, 0x0a, 0x14, 0x73, 0x69, 0x70, 0x5f, 0x64, 0x69, + 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x73, 0x69, 0x70, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, + 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x04, 0x72, 0x75, 0x6c, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, + 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, + 0x04, 0x72, 0x75, 0x6c, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, + 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x49, + 0x64, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x68, 0x69, 0x64, 0x65, 0x5f, 0x70, 0x68, 0x6f, 0x6e, 0x65, + 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x68, + 0x69, 0x64, 0x65, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x27, + 0x0a, 0x0f, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x4c, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6c, 0x69, + 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, + 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x73, 0x1a, 0x3d, 0x0a, 0x0f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3a, 0x02, 0x38, 0x01, 0x22, 0xd6, 0x02, 0x0a, 0x15, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, + 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x30, + 0x0a, 0x09, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x13, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x08, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x73, + 0x12, 0x2c, 0x0a, 0x04, 0x72, 0x75, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, + 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, + 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x75, 0x6c, 0x65, 0x12, 0x17, + 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x08, 0x6d, 0x65, 0x74, + 0x61, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x12, 0x4e, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x6c, + 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, + 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x41, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x1a, 0x3d, 0x0a, 0x0f, 0x41, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, + 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x1c, 0x0a, + 0x1a, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, + 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x51, 0x0a, 0x1b, 0x4c, + 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, + 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x05, 0x69, 0x74, + 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, + 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, + 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, 0x4f, + 0x0a, 0x1c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, + 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2f, + 0x0a, 0x14, 0x73, 0x69, 0x70, 0x5f, 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x72, + 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x73, 0x69, + 0x70, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x64, 0x22, + 0xaa, 0x06, 0x0a, 0x1b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, + 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x20, 0x0a, 0x0c, 0x73, 0x69, 0x70, 0x5f, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x69, 0x70, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, + 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x69, 0x70, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x74, 0x6f, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x69, 0x70, 0x43, 0x61, 0x6c, 0x6c, 0x54, + 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x69, 0x70, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, + 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x69, 0x70, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x6f, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x31, 0x0a, + 0x14, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x70, 0x61, 0x72, + 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, + 0x12, 0x29, 0x0a, 0x10, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x61, 0x72, 0x74, + 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x31, 0x0a, 0x14, 0x70, + 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x70, 0x61, 0x72, 0x74, 0x69, + 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x76, + 0x0a, 0x16, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, + 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, + 0x49, 0x50, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, + 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, + 0x15, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x74, 0x6d, 0x66, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x74, 0x6d, 0x66, 0x12, 0x27, 0x0a, 0x0d, 0x70, 0x6c, + 0x61, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x74, 0x6f, 0x6e, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x08, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x74, + 0x6f, 0x6e, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x64, 0x69, 0x61, 0x6c, + 0x74, 0x6f, 0x6e, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x79, + 0x44, 0x69, 0x61, 0x6c, 0x74, 0x6f, 0x6e, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x68, 0x69, 0x64, 0x65, + 0x5f, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x0f, 0x68, 0x69, 0x64, 0x65, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x12, 0x42, 0x0a, 0x0f, 0x72, 0x69, 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x5f, + 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, + 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x72, 0x69, 0x6e, 0x67, 0x69, 0x6e, + 0x67, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x45, 0x0a, 0x11, 0x6d, 0x61, 0x78, 0x5f, + 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, + 0x6d, 0x61, 0x78, 0x43, 0x61, 0x6c, 0x6c, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x21, 0x0a, 0x0c, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6b, 0x72, 0x69, 0x73, 0x70, 0x18, + 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x4b, 0x72, 0x69, + 0x73, 0x70, 0x1a, 0x48, 0x0a, 0x1a, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, + 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xab, 0x01, 0x0a, + 0x12, 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, + 0x6e, 0x66, 0x6f, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x70, 0x61, 0x72, + 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x14, 0x70, 0x61, + 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, + 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, + 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x72, 0x6f, 0x6f, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f, - 0x6f, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, 0x6f, - 0x6d, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x14, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, - 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x13, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, - 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x2a, 0x0a, 0x08, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x75, - 0x72, 0x69, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, - 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x55, 0x72, 0x69, 0x52, 0x07, 0x66, 0x72, 0x6f, 0x6d, 0x55, - 0x72, 0x69, 0x12, 0x26, 0x0a, 0x06, 0x74, 0x6f, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, - 0x55, 0x72, 0x69, 0x52, 0x05, 0x74, 0x6f, 0x55, 0x72, 0x69, 0x12, 0x37, 0x0a, 0x0b, 0x63, 0x61, - 0x6c, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x16, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x43, 0x61, 0x6c, - 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x0a, 0x63, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, - 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, - 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, - 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x41, - 0x74, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0b, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x41, 0x74, 0x12, 0x46, 0x0a, 0x11, - 0x64, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, - 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, - 0x74, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x61, 0x73, - 0x6f, 0x6e, 0x52, 0x10, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, - 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x0d, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x89, 0x01, 0x0a, 0x06, 0x53, - 0x49, 0x50, 0x55, 0x72, 0x69, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6f, 0x73, - 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x12, 0x0e, 0x0a, - 0x02, 0x69, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x70, 0x12, 0x12, 0x0a, - 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x70, 0x6f, 0x72, - 0x74, 0x12, 0x33, 0x0a, 0x09, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, - 0x49, 0x50, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x09, 0x74, 0x72, 0x61, - 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x2a, 0x6b, 0x0a, 0x0c, 0x53, 0x49, 0x50, 0x54, 0x72, 0x61, - 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x49, 0x50, 0x5f, 0x54, 0x52, - 0x41, 0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x41, 0x55, 0x54, 0x4f, 0x10, 0x00, 0x12, 0x15, + 0x52, 0x08, 0x72, 0x6f, 0x6f, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x69, + 0x70, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x73, 0x69, 0x70, 0x43, 0x61, 0x6c, 0x6c, 0x49, 0x64, 0x22, 0xb5, 0x01, 0x0a, 0x1d, 0x54, + 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, + 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x31, 0x0a, 0x14, + 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x70, 0x61, 0x72, 0x74, + 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, + 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x6f, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, + 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x5f, 0x74, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x6f, 0x12, 0x23, 0x0a, + 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x64, 0x69, 0x61, 0x6c, 0x74, 0x6f, 0x6e, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x44, 0x69, 0x61, 0x6c, 0x74, 0x6f, + 0x6e, 0x65, 0x22, 0xee, 0x03, 0x0a, 0x0b, 0x53, 0x49, 0x50, 0x43, 0x61, 0x6c, 0x6c, 0x49, 0x6e, + 0x66, 0x6f, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x61, 0x6c, 0x6c, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x74, + 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, + 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x6f, 0x6d, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x14, + 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x70, 0x61, 0x72, 0x74, + 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, + 0x2a, 0x0a, 0x08, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x0f, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x55, + 0x72, 0x69, 0x52, 0x07, 0x66, 0x72, 0x6f, 0x6d, 0x55, 0x72, 0x69, 0x12, 0x26, 0x0a, 0x06, 0x74, + 0x6f, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x6c, 0x69, + 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x55, 0x72, 0x69, 0x52, 0x05, 0x74, 0x6f, + 0x55, 0x72, 0x69, 0x12, 0x37, 0x0a, 0x0b, 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, + 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x43, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x52, 0x0a, 0x63, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, + 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, + 0x64, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x65, 0x6e, + 0x64, 0x65, 0x64, 0x41, 0x74, 0x12, 0x46, 0x0a, 0x11, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, + 0x65, 0x63, 0x74, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x19, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, + 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x52, 0x10, 0x64, 0x69, 0x73, + 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x14, 0x0a, + 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, + 0x72, 0x6f, 0x72, 0x22, 0x89, 0x01, 0x0a, 0x06, 0x53, 0x49, 0x50, 0x55, 0x72, 0x69, 0x12, 0x12, + 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x73, + 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x70, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x02, 0x69, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x33, 0x0a, 0x09, 0x74, 0x72, + 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, + 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x54, 0x72, 0x61, 0x6e, 0x73, + 0x70, 0x6f, 0x72, 0x74, 0x52, 0x09, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x2a, + 0x6b, 0x0a, 0x0c, 0x53, 0x49, 0x50, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x12, + 0x16, 0x0a, 0x12, 0x53, 0x49, 0x50, 0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, + 0x5f, 0x41, 0x55, 0x54, 0x4f, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x49, 0x50, 0x5f, 0x54, + 0x52, 0x41, 0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x55, 0x44, 0x50, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x49, 0x50, 0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, 0x5f, - 0x55, 0x44, 0x50, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x49, 0x50, 0x5f, 0x54, 0x52, 0x41, - 0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x54, 0x43, 0x50, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, - 0x53, 0x49, 0x50, 0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x54, 0x4c, - 0x53, 0x10, 0x03, 0x2a, 0x77, 0x0a, 0x0d, 0x53, 0x49, 0x50, 0x43, 0x61, 0x6c, 0x6c, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x43, 0x53, 0x5f, 0x43, 0x41, 0x4c, 0x4c, - 0x5f, 0x49, 0x4e, 0x43, 0x4f, 0x4d, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x53, - 0x43, 0x53, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x49, 0x50, 0x41, 0x4e, 0x54, 0x5f, 0x4a, - 0x4f, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x53, 0x43, 0x53, 0x5f, 0x41, - 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 0x53, 0x43, 0x53, 0x5f, 0x44, - 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, 0x03, 0x12, 0x0d, 0x0a, - 0x09, 0x53, 0x43, 0x53, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x04, 0x32, 0xd7, 0x0b, 0x0a, - 0x03, 0x53, 0x49, 0x50, 0x12, 0x50, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x54, - 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, - 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, - 0x74, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x03, 0x88, 0x02, 0x01, 0x12, 0x5c, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, - 0x25, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, - 0x2e, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, - 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x5f, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, - 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x26, - 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, - 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, - 0x2e, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, - 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x5c, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, - 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x25, - 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, - 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, - 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, - 0x6e, 0x66, 0x6f, 0x12, 0x5f, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, - 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x26, 0x2e, - 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x49, - 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, - 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, - 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x5d, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, - 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x22, 0x2e, 0x6c, 0x69, 0x76, - 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, - 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, - 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x49, - 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x60, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, - 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x23, 0x2e, 0x6c, 0x69, 0x76, - 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, + 0x54, 0x43, 0x50, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x49, 0x50, 0x5f, 0x54, 0x52, 0x41, + 0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x54, 0x4c, 0x53, 0x10, 0x03, 0x2a, 0x77, 0x0a, 0x0d, + 0x53, 0x49, 0x50, 0x43, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x15, 0x0a, + 0x11, 0x53, 0x43, 0x53, 0x5f, 0x43, 0x41, 0x4c, 0x4c, 0x5f, 0x49, 0x4e, 0x43, 0x4f, 0x4d, 0x49, + 0x4e, 0x47, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x53, 0x43, 0x53, 0x5f, 0x50, 0x41, 0x52, 0x54, + 0x49, 0x43, 0x49, 0x50, 0x41, 0x4e, 0x54, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x01, + 0x12, 0x0e, 0x0a, 0x0a, 0x53, 0x43, 0x53, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x02, + 0x12, 0x14, 0x0a, 0x10, 0x53, 0x43, 0x53, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x4e, 0x4e, 0x45, + 0x43, 0x54, 0x45, 0x44, 0x10, 0x03, 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x43, 0x53, 0x5f, 0x45, 0x52, + 0x52, 0x4f, 0x52, 0x10, 0x04, 0x32, 0xd7, 0x0b, 0x0a, 0x03, 0x53, 0x49, 0x50, 0x12, 0x50, 0x0a, + 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x1c, 0x2e, + 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x54, + 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x6c, 0x69, + 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, + 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x03, 0x88, 0x02, 0x01, 0x12, + 0x5c, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x25, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, + 0x69, 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x24, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, + 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x5f, 0x0a, + 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x26, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, + 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x1d, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, + 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x5c, + 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x25, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, + 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, + 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x5f, 0x0a, 0x16, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, + 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x26, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, + 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, + 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x5d, 0x0a, + 0x12, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, + 0x75, 0x6e, 0x6b, 0x12, 0x22, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x47, 0x65, + 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, + 0x74, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, + 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x60, 0x0a, 0x13, + 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, + 0x75, 0x6e, 0x6b, 0x12, 0x23, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x47, 0x65, + 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, + 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, + 0x69, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, + 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x60, + 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, + 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x23, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, + 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, + 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6c, 0x69, 0x76, + 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x63, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x24, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, + 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, + 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x60, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, - 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x23, 0x2e, 0x6c, - 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, - 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x24, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, - 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x63, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x53, - 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, - 0x24, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, - 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, - 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, - 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x0e, - 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x1e, - 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, - 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, - 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, - 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x5c, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, - 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x25, - 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, - 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, - 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, - 0x6e, 0x66, 0x6f, 0x12, 0x5c, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, - 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x25, 0x2e, 0x6c, - 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, - 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, - 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x66, - 0x6f, 0x12, 0x60, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, - 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x23, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, - 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, - 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, - 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x44, - 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x49, 0x50, - 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x25, 0x2e, 0x6c, - 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x49, 0x50, - 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, - 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x66, - 0x6f, 0x12, 0x59, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x50, 0x61, - 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x24, 0x2e, 0x6c, 0x69, 0x76, 0x65, - 0x6b, 0x69, 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, - 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x1b, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, - 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x58, 0x0a, 0x16, - 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, 0x74, 0x69, - 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x26, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, - 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, 0x74, - 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, - 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x42, 0x46, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, - 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2f, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2f, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0xaa, 0x02, 0x0d, - 0x4c, 0x69, 0x76, 0x65, 0x4b, 0x69, 0x74, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0xea, 0x02, 0x0e, - 0x4c, 0x69, 0x76, 0x65, 0x4b, 0x69, 0x74, 0x3a, 0x3a, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x06, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, + 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x1e, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, + 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, + 0x74, 0x2e, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x5c, + 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, + 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x25, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, + 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, + 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, + 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, + 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x5c, 0x0a, 0x15, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, + 0x68, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x25, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, + 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x6c, + 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, + 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x60, 0x0a, 0x13, 0x4c, 0x69, + 0x73, 0x74, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, + 0x65, 0x12, 0x23, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, + 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, + 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, + 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x15, + 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, + 0x68, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x25, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, + 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, + 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x6c, + 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, + 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x59, 0x0a, 0x14, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, + 0x6e, 0x74, 0x12, 0x24, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, + 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, + 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x58, 0x0a, 0x16, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, + 0x72, 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, + 0x26, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, + 0x65, 0x72, 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x42, + 0x46, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6c, 0x69, + 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2f, 0x6c, + 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0xaa, 0x02, 0x0d, 0x4c, 0x69, 0x76, 0x65, 0x4b, 0x69, 0x74, + 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0xea, 0x02, 0x0e, 0x4c, 0x69, 0x76, 0x65, 0x4b, 0x69, 0x74, + 0x3a, 0x3a, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -3753,8 +3759,9 @@ var file_livekit_sip_proto_goTypes = []any{ nil, // 46: livekit.SIPDispatchRuleUpdate.AttributesEntry nil, // 47: livekit.CreateSIPParticipantRequest.ParticipantAttributesEntry (*durationpb.Duration)(nil), // 48: google.protobuf.Duration - (DisconnectReason)(0), // 49: livekit.DisconnectReason - (*emptypb.Empty)(nil), // 50: google.protobuf.Empty + (*ListUpdate)(nil), // 49: livekit.ListUpdate + (DisconnectReason)(0), // 50: livekit.DisconnectReason + (*emptypb.Empty)(nil), // 51: google.protobuf.Empty } var file_livekit_sip_proto_depIdxs = []int32{ 2, // 0: livekit.SIPTrunkInfo.kind:type_name -> livekit.SIPTrunkInfo.TrunkKind @@ -3766,76 +3773,81 @@ var file_livekit_sip_proto_depIdxs = []int32{ 41, // 6: livekit.SIPInboundTrunkInfo.headers_to_attributes:type_name -> livekit.SIPInboundTrunkInfo.HeadersToAttributesEntry 48, // 7: livekit.SIPInboundTrunkInfo.ringing_timeout:type_name -> google.protobuf.Duration 48, // 8: livekit.SIPInboundTrunkInfo.max_call_duration:type_name -> google.protobuf.Duration - 11, // 9: livekit.CreateSIPOutboundTrunkRequest.trunk:type_name -> livekit.SIPOutboundTrunkInfo - 11, // 10: livekit.UpdateSIPOutboundTrunkRequest.replace:type_name -> livekit.SIPOutboundTrunkInfo - 12, // 11: livekit.UpdateSIPOutboundTrunkRequest.update:type_name -> livekit.SIPOutboundTrunkUpdate - 0, // 12: livekit.SIPOutboundTrunkInfo.transport:type_name -> livekit.SIPTransport - 42, // 13: livekit.SIPOutboundTrunkInfo.headers:type_name -> livekit.SIPOutboundTrunkInfo.HeadersEntry - 43, // 14: livekit.SIPOutboundTrunkInfo.headers_to_attributes:type_name -> livekit.SIPOutboundTrunkInfo.HeadersToAttributesEntry - 0, // 15: livekit.SIPOutboundTrunkUpdate.transport:type_name -> livekit.SIPTransport - 7, // 16: livekit.GetSIPInboundTrunkResponse.trunk:type_name -> livekit.SIPInboundTrunkInfo - 11, // 17: livekit.GetSIPOutboundTrunkResponse.trunk:type_name -> livekit.SIPOutboundTrunkInfo - 4, // 18: livekit.ListSIPTrunkResponse.items:type_name -> livekit.SIPTrunkInfo - 7, // 19: livekit.ListSIPInboundTrunkResponse.items:type_name -> livekit.SIPInboundTrunkInfo - 11, // 20: livekit.ListSIPOutboundTrunkResponse.items:type_name -> livekit.SIPOutboundTrunkInfo - 24, // 21: livekit.SIPDispatchRule.dispatch_rule_direct:type_name -> livekit.SIPDispatchRuleDirect - 25, // 22: livekit.SIPDispatchRule.dispatch_rule_individual:type_name -> livekit.SIPDispatchRuleIndividual - 26, // 23: livekit.SIPDispatchRule.dispatch_rule_callee:type_name -> livekit.SIPDispatchRuleCallee - 30, // 24: livekit.CreateSIPDispatchRuleRequest.dispatch_rule:type_name -> livekit.SIPDispatchRuleInfo - 27, // 25: livekit.CreateSIPDispatchRuleRequest.rule:type_name -> livekit.SIPDispatchRule - 44, // 26: livekit.CreateSIPDispatchRuleRequest.attributes:type_name -> livekit.CreateSIPDispatchRuleRequest.AttributesEntry - 30, // 27: livekit.UpdateSIPDispatchRuleRequest.replace:type_name -> livekit.SIPDispatchRuleInfo - 31, // 28: livekit.UpdateSIPDispatchRuleRequest.update:type_name -> livekit.SIPDispatchRuleUpdate - 27, // 29: livekit.SIPDispatchRuleInfo.rule:type_name -> livekit.SIPDispatchRule - 45, // 30: livekit.SIPDispatchRuleInfo.attributes:type_name -> livekit.SIPDispatchRuleInfo.AttributesEntry - 27, // 31: livekit.SIPDispatchRuleUpdate.rule:type_name -> livekit.SIPDispatchRule - 46, // 32: livekit.SIPDispatchRuleUpdate.attributes:type_name -> livekit.SIPDispatchRuleUpdate.AttributesEntry - 30, // 33: livekit.ListSIPDispatchRuleResponse.items:type_name -> livekit.SIPDispatchRuleInfo - 47, // 34: livekit.CreateSIPParticipantRequest.participant_attributes:type_name -> livekit.CreateSIPParticipantRequest.ParticipantAttributesEntry - 48, // 35: livekit.CreateSIPParticipantRequest.ringing_timeout:type_name -> google.protobuf.Duration - 48, // 36: livekit.CreateSIPParticipantRequest.max_call_duration:type_name -> google.protobuf.Duration - 39, // 37: livekit.SIPCallInfo.from_uri:type_name -> livekit.SIPUri - 39, // 38: livekit.SIPCallInfo.to_uri:type_name -> livekit.SIPUri - 1, // 39: livekit.SIPCallInfo.call_status:type_name -> livekit.SIPCallStatus - 49, // 40: livekit.SIPCallInfo.disconnect_reason:type_name -> livekit.DisconnectReason - 0, // 41: livekit.SIPUri.transport:type_name -> livekit.SIPTransport - 17, // 42: livekit.SIP.ListSIPTrunk:input_type -> livekit.ListSIPTrunkRequest - 5, // 43: livekit.SIP.CreateSIPInboundTrunk:input_type -> livekit.CreateSIPInboundTrunkRequest - 9, // 44: livekit.SIP.CreateSIPOutboundTrunk:input_type -> livekit.CreateSIPOutboundTrunkRequest - 6, // 45: livekit.SIP.UpdateSIPInboundTrunk:input_type -> livekit.UpdateSIPInboundTrunkRequest - 10, // 46: livekit.SIP.UpdateSIPOutboundTrunk:input_type -> livekit.UpdateSIPOutboundTrunkRequest - 13, // 47: livekit.SIP.GetSIPInboundTrunk:input_type -> livekit.GetSIPInboundTrunkRequest - 15, // 48: livekit.SIP.GetSIPOutboundTrunk:input_type -> livekit.GetSIPOutboundTrunkRequest - 19, // 49: livekit.SIP.ListSIPInboundTrunk:input_type -> livekit.ListSIPInboundTrunkRequest - 21, // 50: livekit.SIP.ListSIPOutboundTrunk:input_type -> livekit.ListSIPOutboundTrunkRequest - 23, // 51: livekit.SIP.DeleteSIPTrunk:input_type -> livekit.DeleteSIPTrunkRequest - 28, // 52: livekit.SIP.CreateSIPDispatchRule:input_type -> livekit.CreateSIPDispatchRuleRequest - 29, // 53: livekit.SIP.UpdateSIPDispatchRule:input_type -> livekit.UpdateSIPDispatchRuleRequest - 32, // 54: livekit.SIP.ListSIPDispatchRule:input_type -> livekit.ListSIPDispatchRuleRequest - 34, // 55: livekit.SIP.DeleteSIPDispatchRule:input_type -> livekit.DeleteSIPDispatchRuleRequest - 35, // 56: livekit.SIP.CreateSIPParticipant:input_type -> livekit.CreateSIPParticipantRequest - 37, // 57: livekit.SIP.TransferSIPParticipant:input_type -> livekit.TransferSIPParticipantRequest - 18, // 58: livekit.SIP.ListSIPTrunk:output_type -> livekit.ListSIPTrunkResponse - 7, // 59: livekit.SIP.CreateSIPInboundTrunk:output_type -> livekit.SIPInboundTrunkInfo - 11, // 60: livekit.SIP.CreateSIPOutboundTrunk:output_type -> livekit.SIPOutboundTrunkInfo - 7, // 61: livekit.SIP.UpdateSIPInboundTrunk:output_type -> livekit.SIPInboundTrunkInfo - 11, // 62: livekit.SIP.UpdateSIPOutboundTrunk:output_type -> livekit.SIPOutboundTrunkInfo - 14, // 63: livekit.SIP.GetSIPInboundTrunk:output_type -> livekit.GetSIPInboundTrunkResponse - 16, // 64: livekit.SIP.GetSIPOutboundTrunk:output_type -> livekit.GetSIPOutboundTrunkResponse - 20, // 65: livekit.SIP.ListSIPInboundTrunk:output_type -> livekit.ListSIPInboundTrunkResponse - 22, // 66: livekit.SIP.ListSIPOutboundTrunk:output_type -> livekit.ListSIPOutboundTrunkResponse - 4, // 67: livekit.SIP.DeleteSIPTrunk:output_type -> livekit.SIPTrunkInfo - 30, // 68: livekit.SIP.CreateSIPDispatchRule:output_type -> livekit.SIPDispatchRuleInfo - 30, // 69: livekit.SIP.UpdateSIPDispatchRule:output_type -> livekit.SIPDispatchRuleInfo - 33, // 70: livekit.SIP.ListSIPDispatchRule:output_type -> livekit.ListSIPDispatchRuleResponse - 30, // 71: livekit.SIP.DeleteSIPDispatchRule:output_type -> livekit.SIPDispatchRuleInfo - 36, // 72: livekit.SIP.CreateSIPParticipant:output_type -> livekit.SIPParticipantInfo - 50, // 73: livekit.SIP.TransferSIPParticipant:output_type -> google.protobuf.Empty - 58, // [58:74] is the sub-list for method output_type - 42, // [42:58] is the sub-list for method input_type - 42, // [42:42] is the sub-list for extension type_name - 42, // [42:42] is the sub-list for extension extendee - 0, // [0:42] is the sub-list for field type_name + 49, // 9: livekit.SIPInboundTrunkUpdate.numbers:type_name -> livekit.ListUpdate + 49, // 10: livekit.SIPInboundTrunkUpdate.allowed_addresses:type_name -> livekit.ListUpdate + 49, // 11: livekit.SIPInboundTrunkUpdate.allowed_numbers:type_name -> livekit.ListUpdate + 11, // 12: livekit.CreateSIPOutboundTrunkRequest.trunk:type_name -> livekit.SIPOutboundTrunkInfo + 11, // 13: livekit.UpdateSIPOutboundTrunkRequest.replace:type_name -> livekit.SIPOutboundTrunkInfo + 12, // 14: livekit.UpdateSIPOutboundTrunkRequest.update:type_name -> livekit.SIPOutboundTrunkUpdate + 0, // 15: livekit.SIPOutboundTrunkInfo.transport:type_name -> livekit.SIPTransport + 42, // 16: livekit.SIPOutboundTrunkInfo.headers:type_name -> livekit.SIPOutboundTrunkInfo.HeadersEntry + 43, // 17: livekit.SIPOutboundTrunkInfo.headers_to_attributes:type_name -> livekit.SIPOutboundTrunkInfo.HeadersToAttributesEntry + 0, // 18: livekit.SIPOutboundTrunkUpdate.transport:type_name -> livekit.SIPTransport + 49, // 19: livekit.SIPOutboundTrunkUpdate.numbers:type_name -> livekit.ListUpdate + 7, // 20: livekit.GetSIPInboundTrunkResponse.trunk:type_name -> livekit.SIPInboundTrunkInfo + 11, // 21: livekit.GetSIPOutboundTrunkResponse.trunk:type_name -> livekit.SIPOutboundTrunkInfo + 4, // 22: livekit.ListSIPTrunkResponse.items:type_name -> livekit.SIPTrunkInfo + 7, // 23: livekit.ListSIPInboundTrunkResponse.items:type_name -> livekit.SIPInboundTrunkInfo + 11, // 24: livekit.ListSIPOutboundTrunkResponse.items:type_name -> livekit.SIPOutboundTrunkInfo + 24, // 25: livekit.SIPDispatchRule.dispatch_rule_direct:type_name -> livekit.SIPDispatchRuleDirect + 25, // 26: livekit.SIPDispatchRule.dispatch_rule_individual:type_name -> livekit.SIPDispatchRuleIndividual + 26, // 27: livekit.SIPDispatchRule.dispatch_rule_callee:type_name -> livekit.SIPDispatchRuleCallee + 30, // 28: livekit.CreateSIPDispatchRuleRequest.dispatch_rule:type_name -> livekit.SIPDispatchRuleInfo + 27, // 29: livekit.CreateSIPDispatchRuleRequest.rule:type_name -> livekit.SIPDispatchRule + 44, // 30: livekit.CreateSIPDispatchRuleRequest.attributes:type_name -> livekit.CreateSIPDispatchRuleRequest.AttributesEntry + 30, // 31: livekit.UpdateSIPDispatchRuleRequest.replace:type_name -> livekit.SIPDispatchRuleInfo + 31, // 32: livekit.UpdateSIPDispatchRuleRequest.update:type_name -> livekit.SIPDispatchRuleUpdate + 27, // 33: livekit.SIPDispatchRuleInfo.rule:type_name -> livekit.SIPDispatchRule + 45, // 34: livekit.SIPDispatchRuleInfo.attributes:type_name -> livekit.SIPDispatchRuleInfo.AttributesEntry + 49, // 35: livekit.SIPDispatchRuleUpdate.trunk_ids:type_name -> livekit.ListUpdate + 27, // 36: livekit.SIPDispatchRuleUpdate.rule:type_name -> livekit.SIPDispatchRule + 46, // 37: livekit.SIPDispatchRuleUpdate.attributes:type_name -> livekit.SIPDispatchRuleUpdate.AttributesEntry + 30, // 38: livekit.ListSIPDispatchRuleResponse.items:type_name -> livekit.SIPDispatchRuleInfo + 47, // 39: livekit.CreateSIPParticipantRequest.participant_attributes:type_name -> livekit.CreateSIPParticipantRequest.ParticipantAttributesEntry + 48, // 40: livekit.CreateSIPParticipantRequest.ringing_timeout:type_name -> google.protobuf.Duration + 48, // 41: livekit.CreateSIPParticipantRequest.max_call_duration:type_name -> google.protobuf.Duration + 39, // 42: livekit.SIPCallInfo.from_uri:type_name -> livekit.SIPUri + 39, // 43: livekit.SIPCallInfo.to_uri:type_name -> livekit.SIPUri + 1, // 44: livekit.SIPCallInfo.call_status:type_name -> livekit.SIPCallStatus + 50, // 45: livekit.SIPCallInfo.disconnect_reason:type_name -> livekit.DisconnectReason + 0, // 46: livekit.SIPUri.transport:type_name -> livekit.SIPTransport + 17, // 47: livekit.SIP.ListSIPTrunk:input_type -> livekit.ListSIPTrunkRequest + 5, // 48: livekit.SIP.CreateSIPInboundTrunk:input_type -> livekit.CreateSIPInboundTrunkRequest + 9, // 49: livekit.SIP.CreateSIPOutboundTrunk:input_type -> livekit.CreateSIPOutboundTrunkRequest + 6, // 50: livekit.SIP.UpdateSIPInboundTrunk:input_type -> livekit.UpdateSIPInboundTrunkRequest + 10, // 51: livekit.SIP.UpdateSIPOutboundTrunk:input_type -> livekit.UpdateSIPOutboundTrunkRequest + 13, // 52: livekit.SIP.GetSIPInboundTrunk:input_type -> livekit.GetSIPInboundTrunkRequest + 15, // 53: livekit.SIP.GetSIPOutboundTrunk:input_type -> livekit.GetSIPOutboundTrunkRequest + 19, // 54: livekit.SIP.ListSIPInboundTrunk:input_type -> livekit.ListSIPInboundTrunkRequest + 21, // 55: livekit.SIP.ListSIPOutboundTrunk:input_type -> livekit.ListSIPOutboundTrunkRequest + 23, // 56: livekit.SIP.DeleteSIPTrunk:input_type -> livekit.DeleteSIPTrunkRequest + 28, // 57: livekit.SIP.CreateSIPDispatchRule:input_type -> livekit.CreateSIPDispatchRuleRequest + 29, // 58: livekit.SIP.UpdateSIPDispatchRule:input_type -> livekit.UpdateSIPDispatchRuleRequest + 32, // 59: livekit.SIP.ListSIPDispatchRule:input_type -> livekit.ListSIPDispatchRuleRequest + 34, // 60: livekit.SIP.DeleteSIPDispatchRule:input_type -> livekit.DeleteSIPDispatchRuleRequest + 35, // 61: livekit.SIP.CreateSIPParticipant:input_type -> livekit.CreateSIPParticipantRequest + 37, // 62: livekit.SIP.TransferSIPParticipant:input_type -> livekit.TransferSIPParticipantRequest + 18, // 63: livekit.SIP.ListSIPTrunk:output_type -> livekit.ListSIPTrunkResponse + 7, // 64: livekit.SIP.CreateSIPInboundTrunk:output_type -> livekit.SIPInboundTrunkInfo + 11, // 65: livekit.SIP.CreateSIPOutboundTrunk:output_type -> livekit.SIPOutboundTrunkInfo + 7, // 66: livekit.SIP.UpdateSIPInboundTrunk:output_type -> livekit.SIPInboundTrunkInfo + 11, // 67: livekit.SIP.UpdateSIPOutboundTrunk:output_type -> livekit.SIPOutboundTrunkInfo + 14, // 68: livekit.SIP.GetSIPInboundTrunk:output_type -> livekit.GetSIPInboundTrunkResponse + 16, // 69: livekit.SIP.GetSIPOutboundTrunk:output_type -> livekit.GetSIPOutboundTrunkResponse + 20, // 70: livekit.SIP.ListSIPInboundTrunk:output_type -> livekit.ListSIPInboundTrunkResponse + 22, // 71: livekit.SIP.ListSIPOutboundTrunk:output_type -> livekit.ListSIPOutboundTrunkResponse + 4, // 72: livekit.SIP.DeleteSIPTrunk:output_type -> livekit.SIPTrunkInfo + 30, // 73: livekit.SIP.CreateSIPDispatchRule:output_type -> livekit.SIPDispatchRuleInfo + 30, // 74: livekit.SIP.UpdateSIPDispatchRule:output_type -> livekit.SIPDispatchRuleInfo + 33, // 75: livekit.SIP.ListSIPDispatchRule:output_type -> livekit.ListSIPDispatchRuleResponse + 30, // 76: livekit.SIP.DeleteSIPDispatchRule:output_type -> livekit.SIPDispatchRuleInfo + 36, // 77: livekit.SIP.CreateSIPParticipant:output_type -> livekit.SIPParticipantInfo + 51, // 78: livekit.SIP.TransferSIPParticipant:output_type -> google.protobuf.Empty + 63, // [63:79] is the sub-list for method output_type + 47, // [47:63] is the sub-list for method input_type + 47, // [47:47] is the sub-list for extension type_name + 47, // [47:47] is the sub-list for extension extendee + 0, // [0:47] is the sub-list for field type_name } func init() { file_livekit_sip_proto_init() } diff --git a/livekit/livekit_sip.twirp.go b/livekit/livekit_sip.twirp.go index 33a13a0a..97d5f609 100644 --- a/livekit/livekit_sip.twirp.go +++ b/livekit/livekit_sip.twirp.go @@ -4705,174 +4705,175 @@ func (s *sIPServer) PathPrefix() string { } var twirpFileDescriptor4 = []byte{ - // 2689 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x5a, 0x4f, 0x6f, 0xe3, 0xc6, - 0x15, 0x37, 0x29, 0xeb, 0xdf, 0x93, 0x2c, 0xcb, 0xe3, 0x3f, 0x91, 0x65, 0x7b, 0xbd, 0x55, 0xb2, - 0xc9, 0x66, 0x13, 0x68, 0x5b, 0x2f, 0x9a, 0x6e, 0x16, 0x48, 0x0b, 0x59, 0xf2, 0xae, 0xd5, 0x75, - 0x64, 0x95, 0x96, 0x8b, 0x6e, 0x91, 0x96, 0xa5, 0x45, 0xda, 0x66, 0x2d, 0x91, 0x2c, 0x39, 0xda, - 0x5d, 0xf7, 0x5e, 0x60, 0xfb, 0x31, 0x8a, 0x02, 0x3d, 0xa4, 0xe7, 0x5e, 0x0b, 0xe4, 0x03, 0x14, - 0x45, 0x4f, 0x3d, 0xf5, 0xd4, 0x5b, 0x81, 0xf6, 0x33, 0x14, 0xf3, 0x87, 0xd4, 0x90, 0xa2, 0x28, - 0xd9, 0xd9, 0x00, 0xb9, 0x91, 0x6f, 0xde, 0xbc, 0x79, 0x7c, 0xf3, 0x7b, 0xbf, 0x79, 0xf3, 0x24, - 0x58, 0x19, 0x98, 0x2f, 0x8d, 0x2b, 0x13, 0xab, 0x9e, 0xe9, 0xd4, 0x1d, 0xd7, 0xc6, 0x36, 0xca, - 0x72, 0x51, 0xf5, 0xce, 0x85, 0x6d, 0x5f, 0x0c, 0x8c, 0x87, 0x54, 0x7c, 0x36, 0x3a, 0x7f, 0xa8, - 0x8f, 0x5c, 0x0d, 0x9b, 0xb6, 0xc5, 0x14, 0xab, 0x5b, 0xd1, 0x71, 0x63, 0xe8, 0xe0, 0x6b, 0x3e, - 0xb8, 0xe6, 0x1b, 0x1e, 0xda, 0xba, 0x31, 0xf0, 0x98, 0xb4, 0xf6, 0xaf, 0x14, 0xac, 0x37, 0x5d, - 0x43, 0xc3, 0xc6, 0x49, 0xbb, 0xdb, 0x73, 0x47, 0xd6, 0x95, 0x62, 0xfc, 0x66, 0x64, 0x78, 0x18, - 0x7d, 0x04, 0x2b, 0xa6, 0x75, 0x66, 0x8f, 0x2c, 0x5d, 0xd5, 0x74, 0xdd, 0x35, 0x3c, 0xcf, 0xf0, - 0x2a, 0xd2, 0xdd, 0xd4, 0xfd, 0xbc, 0x52, 0xe6, 0x03, 0x0d, 0x5f, 0x8e, 0x3e, 0x84, 0xb2, 0x3d, - 0xc2, 0x21, 0xed, 0x8a, 0x7c, 0x57, 0xba, 0x9f, 0x57, 0x96, 0x7d, 0x39, 0x57, 0x46, 0x1f, 0x40, - 0x20, 0x52, 0xad, 0xd1, 0xf0, 0xcc, 0x70, 0x2b, 0x29, 0xaa, 0x59, 0xf2, 0xc5, 0x1d, 0x2a, 0x45, - 0x9f, 0xc0, 0xba, 0xef, 0x00, 0xd3, 0xf3, 0x54, 0xd7, 0xb8, 0x30, 0x5e, 0x57, 0x16, 0x89, 0x13, - 0xfb, 0x72, 0x45, 0x52, 0x56, 0xb9, 0x02, 0x9b, 0xe1, 0x29, 0x64, 0x98, 0x2c, 0x10, 0x99, 0x57, - 0xc9, 0x53, 0xb7, 0x4b, 0x61, 0x6d, 0xe2, 0xb4, 0xaf, 0x38, 0xf2, 0x0c, 0xd7, 0xd2, 0x86, 0x46, - 0x25, 0xcd, 0x9c, 0xe6, 0xf2, 0x53, 0x2e, 0x16, 0x55, 0x1d, 0xcd, 0xf3, 0x5e, 0xd9, 0xae, 0x5e, - 0xc9, 0x84, 0x54, 0xbb, 0x5c, 0x4c, 0xe2, 0x16, 0x7c, 0x5f, 0x60, 0x36, 0x4b, 0x75, 0x83, 0x18, - 0x05, 0x76, 0x45, 0xe5, 0xc0, 0x70, 0x2e, 0xac, 0x1c, 0x58, 0x46, 0xb0, 0x48, 0x8d, 0x01, 0x1d, - 0xa7, 0xcf, 0xa8, 0x0a, 0xb9, 0xa1, 0x81, 0x35, 0x5d, 0xc3, 0x5a, 0xa5, 0x40, 0xe5, 0xc1, 0xfb, - 0x13, 0xb9, 0x22, 0xd5, 0xfe, 0x94, 0x86, 0xa2, 0xbf, 0xb3, 0x6d, 0xeb, 0xdc, 0x46, 0x77, 0xa1, - 0xe8, 0x99, 0x8e, 0x8a, 0x89, 0x40, 0x35, 0xf5, 0x8a, 0x44, 0x27, 0x81, 0x67, 0x3a, 0x4c, 0x47, - 0x47, 0x8f, 0x60, 0xf1, 0xca, 0xb4, 0xf4, 0x4a, 0xe9, 0xae, 0x74, 0xbf, 0xb4, 0xb7, 0x5b, 0xe7, - 0xb8, 0xa9, 0x8b, 0x66, 0xea, 0xf4, 0xe9, 0xb9, 0x69, 0xe9, 0x0a, 0x55, 0x8e, 0x47, 0x8b, 0x7c, - 0x03, 0xb4, 0xa4, 0xe6, 0x46, 0xcb, 0x62, 0x2c, 0x5a, 0x1e, 0x41, 0x1e, 0xbb, 0x9a, 0xe5, 0x39, - 0xb6, 0x8b, 0x2b, 0x4b, 0xd4, 0xf5, 0xf5, 0xb0, 0xeb, 0x7c, 0x50, 0x19, 0xeb, 0x4d, 0x87, 0x58, - 0xfa, 0xc6, 0x10, 0x83, 0xb9, 0x21, 0x96, 0x99, 0x1f, 0x62, 0xd9, 0x1b, 0x40, 0x2c, 0x77, 0x13, - 0x88, 0xe5, 0x67, 0x40, 0xac, 0x30, 0x05, 0x62, 0xc5, 0x30, 0xc4, 0x6a, 0x2d, 0xc8, 0x07, 0x48, - 0x40, 0x65, 0x28, 0xf6, 0x94, 0xd3, 0xce, 0x73, 0xf5, 0xe8, 0xe0, 0x59, 0xa3, 0xf9, 0xa2, 0xbc, - 0x80, 0x56, 0x60, 0x89, 0x49, 0xda, 0x9d, 0xfd, 0xe3, 0xd3, 0x4e, 0xab, 0x2c, 0x21, 0x04, 0x25, - 0x26, 0x3a, 0x3e, 0xed, 0x31, 0x99, 0x4c, 0x81, 0xaa, 0xc0, 0x76, 0xc0, 0x43, 0x6d, 0xf6, 0xbd, - 0x21, 0x3a, 0xda, 0x83, 0x34, 0xc5, 0x2c, 0x05, 0x6c, 0x61, 0x6f, 0x5b, 0xdc, 0x5b, 0x51, 0x9f, - 0xa0, 0x53, 0x61, 0xaa, 0xb5, 0xbf, 0x4a, 0xb0, 0x7d, 0xea, 0xe8, 0xd3, 0x8d, 0xce, 0x4e, 0x86, - 0xc7, 0x90, 0x75, 0x0d, 0x67, 0xa0, 0xf5, 0x0d, 0xca, 0x67, 0x33, 0x16, 0x3e, 0x5c, 0x50, 0x7c, - 0x75, 0xf4, 0x18, 0x32, 0x23, 0xba, 0x36, 0x85, 0x76, 0x61, 0xef, 0xce, 0xb4, 0x89, 0xcc, 0xc3, - 0xc3, 0x05, 0x85, 0xeb, 0xef, 0xe7, 0x20, 0xa3, 0xf5, 0x09, 0xad, 0xd7, 0x7e, 0x97, 0x81, 0xd5, - 0x98, 0x65, 0xe6, 0xf0, 0xdb, 0xdf, 0x48, 0x79, 0xca, 0x46, 0xa6, 0xc2, 0x1b, 0x89, 0x2a, 0x90, - 0xf5, 0x91, 0x4c, 0xe9, 0x55, 0xf1, 0x5f, 0x09, 0x7e, 0xb4, 0xc1, 0xc0, 0x7e, 0x65, 0x88, 0x99, - 0x9d, 0x66, 0x99, 0xcd, 0x07, 0xc6, 0x99, 0xfd, 0x01, 0x2c, 0xfb, 0xca, 0xbe, 0xb9, 0x0c, 0x4b, - 0x0c, 0x2e, 0xf6, 0x13, 0xe3, 0x5d, 0x58, 0xd2, 0x46, 0xf8, 0x32, 0xca, 0x90, 0x45, 0x22, 0x0c, - 0xa0, 0xeb, 0x2b, 0x45, 0x98, 0x91, 0x2a, 0x05, 0x90, 0x6d, 0x42, 0xf6, 0xd2, 0xd0, 0x74, 0x9f, - 0xe6, 0x0b, 0x7b, 0x1f, 0x26, 0xed, 0x50, 0xfd, 0x90, 0xe9, 0x1e, 0x58, 0xd8, 0xbd, 0x56, 0xfc, - 0x99, 0xc8, 0x84, 0x75, 0xfe, 0xa8, 0x62, 0x5b, 0xd5, 0x30, 0x76, 0xcd, 0xb3, 0x11, 0x36, 0x58, - 0x5a, 0x17, 0xf6, 0xbe, 0x3f, 0x8f, 0xc9, 0x9e, 0xdd, 0x08, 0xe6, 0x31, 0xf3, 0xab, 0x97, 0x93, - 0x23, 0x68, 0x1f, 0x96, 0x5d, 0xd3, 0xba, 0x30, 0xad, 0x0b, 0x15, 0x9b, 0x43, 0xc3, 0x1e, 0x61, - 0x9a, 0x6d, 0x85, 0xbd, 0xcd, 0x3a, 0x3b, 0xbe, 0xeb, 0xfe, 0xf1, 0x5d, 0x6f, 0xf1, 0xe3, 0x5d, - 0x29, 0xf1, 0x19, 0x3d, 0x36, 0x01, 0x1d, 0xc0, 0xca, 0x50, 0x7b, 0xad, 0xf6, 0xb5, 0xc1, 0x40, - 0xf5, 0x6b, 0x00, 0x9a, 0x9b, 0x89, 0x56, 0x96, 0x87, 0xda, 0xeb, 0xa6, 0x36, 0x18, 0xf8, 0x02, - 0x12, 0xdf, 0x2b, 0xd7, 0xf4, 0x1c, 0xd5, 0xb0, 0xb4, 0xb3, 0x81, 0xa1, 0x53, 0xde, 0xcc, 0x29, - 0x45, 0x2a, 0x3c, 0x60, 0xb2, 0xea, 0x13, 0x28, 0x8a, 0x31, 0x43, 0x65, 0x48, 0x5d, 0x19, 0xd7, - 0x1c, 0x72, 0xe4, 0x11, 0xad, 0x41, 0xfa, 0xa5, 0x36, 0x18, 0xf9, 0x60, 0x63, 0x2f, 0x4f, 0xe4, - 0xc7, 0x52, 0xf5, 0x29, 0x54, 0xa6, 0x05, 0xe7, 0x26, 0x76, 0x6a, 0x7f, 0x97, 0x61, 0x3d, 0x36, - 0x6b, 0x44, 0xdc, 0x4a, 0x73, 0xe0, 0x56, 0x9e, 0x1f, 0xb7, 0xa9, 0x58, 0xdc, 0xde, 0x8f, 0xe2, - 0x96, 0x9e, 0x46, 0x87, 0x0b, 0x61, 0xe4, 0xbe, 0x91, 0xa4, 0x40, 0x33, 0x00, 0x2f, 0x2d, 0x2d, - 0x0e, 0xa5, 0x30, 0x7c, 0x89, 0xe6, 0x3b, 0x3c, 0x57, 0xe9, 0xc1, 0x70, 0x28, 0xb3, 0x6c, 0x25, - 0x03, 0xbb, 0x42, 0xc2, 0xd2, 0xfc, 0x38, 0x4c, 0x8d, 0x53, 0xf6, 0x8d, 0x24, 0xed, 0x97, 0xa1, - 0xa4, 0x86, 0xdc, 0x19, 0x4b, 0xfc, 0x65, 0xf7, 0xb3, 0x90, 0x56, 0xe9, 0x50, 0x01, 0xf2, 0x6a, - 0x40, 0xdc, 0x3d, 0xd8, 0x09, 0xe8, 0xf6, 0x98, 0x9f, 0x02, 0x21, 0x6a, 0x7c, 0x14, 0xe6, 0xdb, - 0x1d, 0x31, 0x03, 0x42, 0x13, 0x44, 0xc2, 0xfd, 0x4a, 0x82, 0x9d, 0x80, 0x70, 0x63, 0xcd, 0xce, - 0x66, 0xae, 0x4f, 0xa3, 0x8c, 0x9b, 0xbc, 0xb4, 0x48, 0xb9, 0x9f, 0x46, 0x28, 0x77, 0x77, 0xea, - 0xcc, 0x04, 0xce, 0xfd, 0xc7, 0x22, 0xac, 0xc5, 0x2d, 0xf4, 0xcd, 0x90, 0xae, 0x5f, 0xfe, 0xb0, - 0xa2, 0xc6, 0x7f, 0x0d, 0x57, 0x33, 0xe9, 0x39, 0xab, 0x19, 0x21, 0x17, 0x32, 0xe1, 0x5c, 0x78, - 0x7b, 0x6c, 0xdb, 0x8a, 0xb2, 0xed, 0x83, 0xc4, 0xdd, 0x99, 0x42, 0xb7, 0xbf, 0x4e, 0xa6, 0xdb, - 0x4f, 0xe6, 0xb2, 0x39, 0x1f, 0xdf, 0x7e, 0x2b, 0xf8, 0xeb, 0xbf, 0x32, 0x6c, 0xc4, 0x43, 0x10, - 0xed, 0x8c, 0x31, 0x20, 0x71, 0x2a, 0xf1, 0x05, 0x84, 0x02, 0x1e, 0x8b, 0x40, 0x90, 0x13, 0x80, - 0x70, 0x28, 0x09, 0x50, 0x20, 0x33, 0x05, 0x34, 0xa4, 0xc2, 0x68, 0x98, 0xc2, 0x61, 0xf2, 0xdc, - 0x1c, 0x96, 0x9a, 0xc5, 0x61, 0x8b, 0x49, 0x1c, 0x96, 0x0e, 0x73, 0x18, 0x40, 0xce, 0x27, 0xe8, - 0xfd, 0x22, 0x80, 0x1a, 0x7c, 0xc4, 0xd7, 0x60, 0xb7, 0xcf, 0x60, 0xf3, 0x99, 0x81, 0x6f, 0x5b, - 0xf4, 0xd5, 0xba, 0x50, 0x8d, 0x9b, 0xee, 0x39, 0xb6, 0xe5, 0x19, 0xb7, 0xaa, 0x44, 0x7f, 0xe8, - 0x5b, 0xbc, 0x1d, 0x29, 0xd6, 0x14, 0xd8, 0x8a, 0x9d, 0xcf, 0x5d, 0xba, 0x15, 0x59, 0x6f, 0xc2, - 0xea, 0x91, 0xe9, 0xe1, 0xc8, 0xbd, 0x9f, 0x16, 0xe3, 0xcf, 0x60, 0x2d, 0x3c, 0xc4, 0xd7, 0xf9, - 0x08, 0xd2, 0x26, 0x36, 0x86, 0xec, 0xac, 0x2d, 0x44, 0x91, 0x18, 0xd8, 0xa7, 0x3a, 0xd4, 0xd0, - 0x36, 0x54, 0xb9, 0xa1, 0x98, 0x9d, 0xa8, 0xfd, 0x04, 0xb6, 0x62, 0x47, 0xc7, 0x81, 0x16, 0x57, - 0x9b, 0x11, 0x68, 0xaa, 0x5a, 0xdb, 0x09, 0x4c, 0xc6, 0x45, 0xba, 0x76, 0x02, 0xdb, 0xf1, 0xc3, - 0xe3, 0x40, 0x8a, 0x4b, 0xce, 0x0a, 0x24, 0x5b, 0xf3, 0x53, 0x58, 0x6f, 0x19, 0x03, 0x63, 0xb2, - 0x85, 0x32, 0x7b, 0x5f, 0x9f, 0xd2, 0xba, 0xa6, 0x65, 0x7a, 0x8e, 0x86, 0xfb, 0x97, 0xca, 0x68, - 0x60, 0xb4, 0x4c, 0xd7, 0xe8, 0x63, 0xb4, 0x05, 0x79, 0xd7, 0xb6, 0x87, 0x14, 0xdb, 0x7c, 0x5e, - 0x8e, 0x08, 0x3a, 0x84, 0xa9, 0xcb, 0x90, 0x72, 0x4c, 0x8b, 0xd3, 0x0c, 0x79, 0xac, 0x75, 0x60, - 0x33, 0x62, 0xa7, 0x6d, 0xe9, 0xe6, 0x4b, 0x53, 0x1f, 0x69, 0x03, 0xb4, 0x0b, 0x05, 0x6a, 0xcb, - 0x71, 0x8d, 0x73, 0xf3, 0xb5, 0xef, 0x05, 0x11, 0x75, 0xa9, 0x24, 0xc6, 0xde, 0xe5, 0x84, 0x5f, - 0xa4, 0x70, 0x34, 0x8c, 0x5b, 0xd8, 0x42, 0xdb, 0x90, 0x77, 0x35, 0x4b, 0xb7, 0x87, 0xe6, 0x6f, - 0xd9, 0xc1, 0x9c, 0x53, 0xc6, 0x82, 0xda, 0x1f, 0x64, 0x58, 0x8e, 0x2c, 0x85, 0x14, 0x58, 0xd3, - 0xf9, 0xbb, 0xea, 0x8e, 0x06, 0x86, 0xaa, 0xd3, 0xa0, 0x70, 0x74, 0x87, 0x2e, 0x52, 0x93, 0xa1, - 0x3b, 0x5c, 0x50, 0x90, 0x3e, 0x19, 0xd0, 0x5f, 0x42, 0x25, 0x6c, 0xd3, 0x0c, 0x02, 0xc4, 0xeb, - 0x8c, 0xda, 0x34, 0xbb, 0xe3, 0x50, 0x1e, 0x2e, 0x28, 0x1b, 0x7a, 0x7c, 0x90, 0x27, 0x7c, 0xee, - 0xd3, 0x80, 0xc5, 0x5d, 0xfe, 0x26, 0xc3, 0x1a, 0xf5, 0x99, 0x49, 0xf7, 0x33, 0xb0, 0x48, 0x4c, - 0xd5, 0xfe, 0x9d, 0x12, 0x2e, 0xc7, 0xe2, 0x6c, 0x1f, 0x68, 0x0d, 0x58, 0x0a, 0x2d, 0x4e, 0x8f, - 0xee, 0x48, 0xc6, 0x84, 0xbf, 0xe8, 0xdc, 0x56, 0x8a, 0xe2, 0x8a, 0xe8, 0xbb, 0x6c, 0x2d, 0x1e, - 0xe3, 0xca, 0xb4, 0x99, 0xb4, 0x27, 0x42, 0x35, 0xd1, 0x2e, 0x39, 0x9a, 0x18, 0xb2, 0x79, 0x61, - 0x4d, 0x07, 0x73, 0x98, 0x61, 0xdb, 0x43, 0x75, 0x58, 0xb9, 0x34, 0x75, 0x43, 0x75, 0x2e, 0x6d, - 0xcb, 0x10, 0x7b, 0x7d, 0x39, 0xaa, 0xb8, 0x4c, 0x06, 0xbb, 0x64, 0x8c, 0xb7, 0x70, 0x3e, 0x9a, - 0xec, 0xaa, 0x64, 0x02, 0xb3, 0xd1, 0xce, 0xca, 0x06, 0x3f, 0x70, 0xe8, 0xd9, 0xc5, 0xbc, 0xa2, - 0x55, 0xcc, 0x1d, 0xe1, 0xbc, 0x49, 0x07, 0x63, 0xe3, 0x9a, 0xeb, 0x05, 0x80, 0x50, 0x6f, 0x64, - 0x23, 0xd7, 0xbb, 0xa4, 0x28, 0xd7, 0x23, 0x15, 0x00, 0x35, 0x2c, 0x18, 0xab, 0x7e, 0x06, 0xcb, - 0x5f, 0xa7, 0x48, 0xf8, 0x9b, 0xd8, 0xad, 0x88, 0xdb, 0xe5, 0x87, 0xb0, 0x46, 0xe8, 0x24, 0x02, - 0x63, 0x9f, 0x56, 0x56, 0x3c, 0xd3, 0x09, 0xed, 0xf1, 0xac, 0xe6, 0x45, 0x14, 0x10, 0x73, 0x37, - 0x2f, 0xc4, 0x89, 0x09, 0x85, 0xf4, 0x1f, 0x53, 0xb4, 0x79, 0x11, 0x5d, 0xe6, 0xe6, 0x9f, 0xf1, - 0x31, 0x87, 0xa6, 0x9c, 0x0c, 0x4d, 0x0e, 0xcb, 0x2d, 0x11, 0x96, 0xac, 0xf2, 0x19, 0x43, 0xf2, - 0x41, 0x1c, 0x24, 0x17, 0x29, 0x27, 0x4d, 0xc0, 0x31, 0xa6, 0xc9, 0x97, 0x8d, 0x6d, 0xf2, 0xf9, - 0x65, 0x7f, 0x7a, 0x4a, 0xd9, 0x9f, 0x89, 0x94, 0xfd, 0x47, 0x21, 0x08, 0xe6, 0x28, 0x04, 0x3f, - 0x4e, 0xda, 0x99, 0x28, 0xf2, 0xde, 0x26, 0xea, 0xbe, 0x92, 0x27, 0xa8, 0x9e, 0x57, 0xa6, 0xa1, - 0x40, 0x4a, 0x91, 0x40, 0xde, 0x6c, 0x4f, 0xfc, 0xea, 0x30, 0xc5, 0x2b, 0xdc, 0xd8, 0xea, 0x70, - 0x91, 0xdf, 0x8f, 0xc5, 0xea, 0x10, 0x75, 0x42, 0xb1, 0x4a, 0xd3, 0x58, 0xd5, 0x93, 0xc1, 0xf8, - 0x0d, 0x46, 0x6b, 0x4a, 0xb9, 0x39, 0xae, 0x72, 0x62, 0xd2, 0x56, 0xa8, 0x72, 0xc2, 0xa3, 0x73, - 0x54, 0x39, 0x13, 0x9c, 0xcd, 0x2b, 0x8e, 0x63, 0xd8, 0x0e, 0x2a, 0x8e, 0xb7, 0xc1, 0x14, 0xb5, - 0x2f, 0x33, 0xb0, 0x15, 0x70, 0x5f, 0x57, 0x73, 0xb1, 0xd9, 0x37, 0x1d, 0xcd, 0xc2, 0xf3, 0x5f, - 0xdb, 0xef, 0x40, 0x81, 0x68, 0xd0, 0x96, 0x14, 0xb6, 0x79, 0xe4, 0xf2, 0x9e, 0xe9, 0x90, 0xb3, - 0xac, 0x67, 0xa3, 0x1d, 0x20, 0xda, 0x7e, 0xca, 0x2d, 0x07, 0xc3, 0x3c, 0xd9, 0x42, 0xf5, 0x4e, - 0x2a, 0x52, 0xef, 0x7c, 0x0f, 0xd6, 0x9c, 0xb1, 0x4f, 0xaa, 0xa9, 0x1b, 0x16, 0x36, 0xf1, 0x35, - 0xbf, 0x34, 0xaf, 0x0a, 0x63, 0x6d, 0x3e, 0x84, 0x3e, 0x84, 0xb2, 0x38, 0x45, 0xb8, 0xf4, 0x2e, - 0x0b, 0xf2, 0x38, 0xeb, 0x01, 0x1e, 0x73, 0x13, 0xd6, 0x3f, 0xf7, 0x33, 0xf8, 0x25, 0x6c, 0x88, - 0x53, 0x04, 0x84, 0xb2, 0x4b, 0xf1, 0x8f, 0x26, 0x0f, 0x94, 0xc9, 0xa0, 0xd6, 0x05, 0x51, 0x14, - 0xb2, 0xeb, 0x4e, 0xdc, 0x18, 0x61, 0x1a, 0x1d, 0x0f, 0xcf, 0x7d, 0xa6, 0x21, 0xcf, 0xe8, 0x03, - 0x58, 0x72, 0x06, 0xda, 0xb5, 0xea, 0x9a, 0xd6, 0x05, 0xb6, 0x2d, 0x76, 0x05, 0x63, 0x27, 0x6c, - 0x91, 0x0c, 0x28, 0x5c, 0x4e, 0xee, 0xf7, 0x54, 0x51, 0x37, 0xb5, 0x01, 0x55, 0xe4, 0xdd, 0x3e, - 0x22, 0x6c, 0x71, 0x59, 0x3c, 0x41, 0x42, 0x3c, 0x41, 0x7e, 0x8b, 0x3a, 0x99, 0xdf, 0x81, 0x22, - 0xeb, 0x61, 0xaa, 0xb4, 0x77, 0x49, 0x7f, 0xbb, 0xca, 0x29, 0x05, 0x26, 0x7b, 0x4e, 0x44, 0xd5, - 0x43, 0xa8, 0x4e, 0x0f, 0xf8, 0x8d, 0x28, 0xf3, 0xcf, 0x12, 0xa0, 0xf0, 0x8e, 0xd2, 0x73, 0xed, - 0x1e, 0x94, 0xc2, 0x28, 0xe5, 0xd6, 0x96, 0x42, 0xf8, 0x9c, 0x0a, 0x66, 0x79, 0x3a, 0x98, 0x13, - 0x93, 0x43, 0x4c, 0x3c, 0x53, 0xe7, 0x39, 0xe1, 0x27, 0x5e, 0x5b, 0xaf, 0xfd, 0x45, 0x82, 0x1d, - 0xda, 0x25, 0x38, 0x37, 0xdc, 0xf8, 0xe4, 0x9e, 0xe6, 0x91, 0x34, 0xa7, 0x47, 0x72, 0xc4, 0xa3, - 0x5d, 0x28, 0x60, 0xbe, 0x20, 0xa1, 0x02, 0xe6, 0x30, 0xf8, 0xa2, 0x9e, 0x3d, 0x89, 0xc4, 0xc5, - 0x49, 0x24, 0xd6, 0xfe, 0x97, 0x82, 0xc2, 0x49, 0xbb, 0x4b, 0xbf, 0x82, 0x84, 0xf7, 0x1d, 0xc8, - 0xfa, 0xdf, 0xc8, 0x1c, 0xcb, 0xf4, 0xe9, 0x07, 0xa2, 0x4d, 0xc8, 0x05, 0xbc, 0xc4, 0x5c, 0xc9, - 0xf2, 0x63, 0x2a, 0x39, 0x70, 0xef, 0x40, 0x96, 0x0e, 0x06, 0x41, 0xcb, 0x90, 0xd7, 0x84, 0x1d, - 0x4a, 0x4f, 0x8f, 0xc7, 0x03, 0xc8, 0x9d, 0xbb, 0xf6, 0x50, 0x1d, 0xb9, 0x26, 0xcd, 0xbf, 0xc2, - 0xde, 0xb2, 0xc8, 0xe3, 0xa7, 0xae, 0xa9, 0x64, 0x89, 0xc2, 0xa9, 0x6b, 0xa2, 0xf7, 0x21, 0x83, - 0x6d, 0xaa, 0x99, 0x8d, 0xd7, 0x4c, 0x63, 0x9b, 0xe8, 0xfd, 0x00, 0x0a, 0xf4, 0x83, 0x3d, 0xac, - 0xe1, 0x91, 0x47, 0xe9, 0xa8, 0xb4, 0xb7, 0x21, 0x2a, 0x93, 0xd8, 0x9c, 0xd0, 0x51, 0x05, 0xfa, - 0xc1, 0x33, 0xa1, 0xda, 0x3e, 0xa5, 0x1d, 0x5d, 0xd5, 0x30, 0xfd, 0xa9, 0x2f, 0xa5, 0xe4, 0xb9, - 0xa4, 0x81, 0x29, 0x13, 0x63, 0xcd, 0xe5, 0xc3, 0xc0, 0x86, 0xb9, 0xa4, 0x81, 0x49, 0x38, 0x0d, - 0x4b, 0x67, 0x83, 0x05, 0x3a, 0x98, 0xa5, 0xef, 0x0d, 0x8c, 0x9e, 0xc2, 0x8a, 0x6e, 0x7a, 0x7d, - 0xdb, 0xb2, 0x8c, 0x3e, 0x56, 0x5d, 0x43, 0xf3, 0x78, 0xb2, 0x96, 0xf6, 0x36, 0x03, 0xbf, 0x5a, - 0x81, 0x86, 0x42, 0x15, 0x94, 0xb2, 0x1e, 0x91, 0x90, 0xd4, 0x32, 0x5c, 0xd7, 0x76, 0x29, 0x03, - 0xe5, 0x15, 0xf6, 0x52, 0xfb, 0xbd, 0x04, 0x19, 0x16, 0x01, 0xc2, 0x73, 0x23, 0xcf, 0x70, 0xf9, - 0x46, 0xd3, 0x67, 0x22, 0xbb, 0xb4, 0x3d, 0xec, 0x37, 0x57, 0xc9, 0x33, 0x2a, 0x81, 0x6c, 0x3a, - 0x7c, 0x63, 0x65, 0xd3, 0x21, 0x3a, 0xb4, 0x51, 0x46, 0xf6, 0x73, 0x49, 0xa1, 0xcf, 0xb7, 0x6a, - 0xa5, 0x3e, 0xb8, 0xe2, 0xbf, 0x9a, 0xfb, 0xad, 0xd5, 0x0d, 0x9a, 0xf1, 0x6a, 0x4f, 0x69, 0x74, - 0x4e, 0xba, 0xc7, 0x4a, 0x4f, 0x6d, 0x9c, 0xf6, 0x8e, 0xcb, 0x0b, 0x68, 0x1d, 0x56, 0xc2, 0xf2, - 0xd3, 0x56, 0xb7, 0x2c, 0x4d, 0x8a, 0x7b, 0xcd, 0x6e, 0x59, 0x8e, 0x11, 0x1f, 0x9d, 0x94, 0x53, - 0x0f, 0x5e, 0xc1, 0x52, 0x68, 0x33, 0xa9, 0x5e, 0xf3, 0x44, 0x6d, 0x36, 0x8e, 0x8e, 0xd4, 0x76, - 0xa7, 0x79, 0xfc, 0x79, 0xbb, 0xf3, 0xac, 0xbc, 0x80, 0xaa, 0xb0, 0x41, 0xc4, 0xdd, 0x86, 0xd2, - 0x6b, 0x37, 0xdb, 0xdd, 0x46, 0xa7, 0xa7, 0xfe, 0xf8, 0xb8, 0xdd, 0x39, 0x68, 0x95, 0x25, 0x54, - 0x02, 0x20, 0x63, 0x8d, 0x66, 0xaf, 0xfd, 0xd3, 0x83, 0xb2, 0x8c, 0xd6, 0xa0, 0x4c, 0xde, 0x5b, - 0xed, 0x93, 0xe6, 0x71, 0xa7, 0x73, 0xd0, 0xec, 0x1d, 0xb4, 0xca, 0x29, 0xb4, 0x04, 0x79, 0x22, - 0x3d, 0x50, 0x94, 0x63, 0xa5, 0xbc, 0xb8, 0xf7, 0xcf, 0x02, 0xa4, 0x4e, 0xda, 0x5d, 0xd4, 0x85, - 0xa2, 0xd8, 0xee, 0x41, 0xe3, 0x1a, 0x24, 0xa6, 0x41, 0x54, 0xdd, 0x99, 0x32, 0xca, 0xea, 0x99, - 0x5a, 0xea, 0x8d, 0x2c, 0xa1, 0x2f, 0x84, 0x7f, 0x95, 0x88, 0xad, 0x1a, 0x74, 0x6f, 0xf2, 0x64, - 0x8c, 0xe9, 0x0c, 0x55, 0x13, 0x7b, 0x3d, 0x48, 0x85, 0x8d, 0xf8, 0x1f, 0x2f, 0xd0, 0xfb, 0x93, - 0xe6, 0xe3, 0xfa, 0x40, 0xd5, 0xe4, 0xc6, 0x0e, 0x71, 0x3f, 0xf6, 0x77, 0x63, 0xc1, 0xfd, 0xa4, - 0xdf, 0x95, 0x67, 0xbb, 0x1f, 0xff, 0x23, 0x89, 0xe0, 0x7e, 0xe2, 0xaf, 0x28, 0xb3, 0xdc, 0xff, - 0x05, 0xa0, 0xc9, 0xfe, 0x25, 0x1a, 0xf7, 0x37, 0xa6, 0xf6, 0x46, 0xab, 0xef, 0x26, 0xea, 0xf0, - 0x8a, 0xf5, 0x57, 0xb0, 0x1a, 0xd3, 0x8c, 0x44, 0xd1, 0xb9, 0xb1, 0x9e, 0xbf, 0x97, 0xac, 0x34, - 0x5e, 0x21, 0xa6, 0x31, 0x28, 0xac, 0x30, 0xbd, 0xa9, 0x28, 0xac, 0x90, 0xd4, 0x5b, 0xec, 0x07, - 0x1d, 0xce, 0xf0, 0x47, 0x4c, 0xcc, 0x8e, 0xfd, 0x8a, 0x7b, 0x33, 0xb4, 0xf8, 0x22, 0xcf, 0xa0, - 0x14, 0x6e, 0x0c, 0xa2, 0xf1, 0x3d, 0x3a, 0xb6, 0x63, 0x58, 0x8d, 0xef, 0xa8, 0x86, 0xd2, 0x29, - 0xd4, 0x29, 0xbb, 0x37, 0x57, 0xe7, 0xa2, 0x9a, 0x78, 0xa9, 0x08, 0xa1, 0x7d, 0x8a, 0xf5, 0xa4, - 0xbe, 0xc4, 0x0c, 0xeb, 0xe3, 0xbd, 0x0c, 0xd9, 0x9e, 0xd8, 0xcb, 0x38, 0xcb, 0xef, 0x25, 0x2b, - 0xf1, 0x30, 0x7f, 0x21, 0xf4, 0x5f, 0xa7, 0xf8, 0x9f, 0x74, 0x5b, 0x9a, 0xe1, 0xff, 0x0b, 0x58, - 0x8b, 0x2b, 0xe2, 0x05, 0xa4, 0x24, 0xd4, 0xf8, 0xd5, 0x2d, 0xd1, 0x76, 0xb4, 0x62, 0xfc, 0x19, - 0x6c, 0xc4, 0x57, 0x66, 0x02, 0x11, 0x24, 0x96, 0x6e, 0xd5, 0x8d, 0x89, 0x1a, 0xf9, 0x60, 0xe8, - 0xe0, 0xeb, 0xfd, 0xa7, 0x3f, 0x7f, 0xf7, 0xc2, 0xc4, 0x97, 0xa3, 0xb3, 0x7a, 0xdf, 0x1e, 0x3e, - 0xe4, 0xb6, 0xd8, 0xff, 0x02, 0xfb, 0xf6, 0xc0, 0x17, 0x7c, 0x29, 0x2f, 0x1d, 0x99, 0x2f, 0x8d, - 0xe7, 0x26, 0xae, 0x77, 0xc9, 0xd0, 0x7f, 0xe4, 0x12, 0x7f, 0x7f, 0xf2, 0x84, 0x0a, 0xce, 0x32, - 0x74, 0xca, 0xa3, 0xff, 0x07, 0x00, 0x00, 0xff, 0xff, 0xf5, 0xe1, 0x79, 0x98, 0x96, 0x28, 0x00, - 0x00, + // 2718 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x5a, 0x4f, 0x73, 0x23, 0x47, + 0x15, 0xf7, 0x68, 0xac, 0x7f, 0x4f, 0xb2, 0x2c, 0xb7, 0xff, 0x44, 0x96, 0xed, 0xf5, 0xa2, 0xcd, + 0x26, 0x9b, 0x4d, 0xd0, 0x06, 0x6f, 0x11, 0x36, 0x5b, 0x04, 0x90, 0x25, 0xef, 0x5a, 0xac, 0x23, + 0x8b, 0xb1, 0x4c, 0x11, 0x2a, 0x30, 0x8c, 0x35, 0x63, 0x7b, 0xb0, 0x34, 0x33, 0xcc, 0xb4, 0x36, + 0x6b, 0x8e, 0x54, 0x51, 0x15, 0x2e, 0x7c, 0x07, 0x8a, 0x2a, 0x0e, 0xe1, 0xcc, 0x95, 0x2a, 0x3e, + 0x00, 0x07, 0x2e, 0x70, 0xe2, 0xc4, 0x8d, 0x03, 0x9f, 0x81, 0xea, 0x9e, 0x9e, 0x51, 0xcf, 0x5f, + 0xc9, 0xce, 0xa6, 0x2a, 0xb7, 0x99, 0xf7, 0x5e, 0xbf, 0x7e, 0xf3, 0xfa, 0xd7, 0xbf, 0x7e, 0xfd, + 0x24, 0x58, 0x19, 0xe9, 0x2f, 0xb5, 0x2b, 0x1d, 0xcb, 0x8e, 0x6e, 0x35, 0x2d, 0xdb, 0xc4, 0x26, + 0xca, 0x33, 0x51, 0xfd, 0xce, 0x85, 0x69, 0x5e, 0x8c, 0xb4, 0x47, 0x54, 0x7c, 0x36, 0x39, 0x7f, + 0xa4, 0x4e, 0x6c, 0x05, 0xeb, 0xa6, 0xe1, 0x1a, 0xd6, 0xb7, 0xc2, 0x7a, 0x6d, 0x6c, 0xe1, 0x6b, + 0xa6, 0x5c, 0xf3, 0x1c, 0x8f, 0x4d, 0x55, 0x1b, 0x39, 0xae, 0xb4, 0xf1, 0x6f, 0x11, 0xd6, 0xdb, + 0xb6, 0xa6, 0x60, 0xed, 0xa4, 0xdb, 0x1f, 0xd8, 0x13, 0xe3, 0x4a, 0xd2, 0x7e, 0x35, 0xd1, 0x1c, + 0x8c, 0xde, 0x85, 0x15, 0xdd, 0x38, 0x33, 0x27, 0x86, 0x2a, 0x2b, 0xaa, 0x6a, 0x6b, 0x8e, 0xa3, + 0x39, 0x35, 0xe1, 0xae, 0xf8, 0xa0, 0x28, 0x55, 0x99, 0xa2, 0xe5, 0xc9, 0xd1, 0x3b, 0x50, 0x35, + 0x27, 0x38, 0x60, 0x5d, 0xcb, 0xdc, 0x15, 0x1e, 0x14, 0xa5, 0x65, 0x4f, 0xce, 0x8c, 0xd1, 0xdb, + 0xe0, 0x8b, 0x64, 0x63, 0x32, 0x3e, 0xd3, 0xec, 0x9a, 0x48, 0x2d, 0x2b, 0x9e, 0xb8, 0x47, 0xa5, + 0xe8, 0x03, 0x58, 0xf7, 0x02, 0x70, 0xed, 0x1c, 0xd9, 0xd6, 0x2e, 0xb4, 0x57, 0xb5, 0x45, 0x12, + 0xc4, 0x7e, 0xa6, 0x26, 0x48, 0xab, 0xcc, 0xc0, 0x1d, 0xe1, 0x48, 0x44, 0x4d, 0x26, 0x08, 0x8d, + 0xab, 0x15, 0x69, 0xd8, 0x95, 0xa0, 0x35, 0x09, 0xda, 0x33, 0x9c, 0x38, 0x9a, 0x6d, 0x28, 0x63, + 0xad, 0x96, 0x75, 0x83, 0x66, 0xf2, 0x53, 0x26, 0xe6, 0x4d, 0x2d, 0xc5, 0x71, 0x3e, 0x33, 0x6d, + 0xb5, 0x96, 0x0b, 0x98, 0xf6, 0x99, 0x98, 0xe4, 0xcd, 0xff, 0x3e, 0xdf, 0x6d, 0x9e, 0xda, 0xfa, + 0x39, 0xf2, 0xfd, 0xf2, 0xc6, 0xbe, 0xe3, 0x42, 0xd0, 0xd8, 0xf7, 0x8c, 0x60, 0x91, 0x3a, 0x03, + 0xaa, 0xa7, 0xcf, 0xa8, 0x0e, 0x85, 0xb1, 0x86, 0x15, 0x55, 0xc1, 0x4a, 0xad, 0x44, 0xe5, 0xfe, + 0xfb, 0xd3, 0x4c, 0x4d, 0x68, 0xfc, 0x29, 0x0b, 0x65, 0x6f, 0x65, 0xbb, 0xc6, 0xb9, 0x89, 0xee, + 0x42, 0xd9, 0xd1, 0x2d, 0x19, 0x13, 0x81, 0xac, 0xab, 0x35, 0x81, 0x0e, 0x02, 0x47, 0xb7, 0x5c, + 0x1b, 0x15, 0x3d, 0x86, 0xc5, 0x2b, 0xdd, 0x50, 0x6b, 0x95, 0xbb, 0xc2, 0x83, 0xca, 0xde, 0x6e, + 0x93, 0xe1, 0xa6, 0xc9, 0xbb, 0x69, 0xd2, 0xa7, 0x17, 0xba, 0xa1, 0x4a, 0xd4, 0x38, 0x1e, 0x2d, + 0x99, 0x1b, 0xa0, 0x45, 0x9c, 0x1b, 0x2d, 0x8b, 0xb1, 0x68, 0x79, 0x0c, 0x45, 0x6c, 0x2b, 0x86, + 0x63, 0x99, 0x36, 0xae, 0x2d, 0xd1, 0xd0, 0xd7, 0x83, 0xa1, 0x33, 0xa5, 0x34, 0xb5, 0x4b, 0x86, + 0x58, 0xf6, 0xc6, 0x10, 0x83, 0xb9, 0x21, 0x96, 0x9b, 0x1f, 0x62, 0xf9, 0x1b, 0x40, 0xac, 0x70, + 0x13, 0x88, 0x15, 0x67, 0x40, 0xac, 0x94, 0x00, 0xb1, 0x72, 0x10, 0x62, 0x8d, 0x0e, 0x14, 0x7d, + 0x24, 0xa0, 0x2a, 0x94, 0x07, 0xd2, 0x69, 0xef, 0x85, 0x7c, 0x74, 0xf0, 0xbc, 0xd5, 0xfe, 0xa4, + 0xba, 0x80, 0x56, 0x60, 0xc9, 0x95, 0x74, 0x7b, 0xfb, 0xc7, 0xa7, 0xbd, 0x4e, 0x55, 0x40, 0x08, + 0x2a, 0xae, 0xe8, 0xf8, 0x74, 0xe0, 0xca, 0x32, 0x14, 0xa8, 0x12, 0x6c, 0xfb, 0x3c, 0xd4, 0x75, + 0xbf, 0x37, 0x40, 0x47, 0x7b, 0x90, 0xa5, 0x98, 0xa5, 0x80, 0x2d, 0xed, 0x6d, 0xf3, 0x6b, 0xcb, + 0xdb, 0x13, 0x74, 0x4a, 0xae, 0x69, 0xe3, 0xaf, 0x02, 0x6c, 0x9f, 0x5a, 0x6a, 0xb2, 0xd3, 0xd9, + 0x9b, 0xe1, 0x09, 0xe4, 0x6d, 0xcd, 0x1a, 0x29, 0x43, 0x8d, 0xf2, 0xd9, 0x8c, 0x89, 0x0f, 0x17, + 0x24, 0xcf, 0x1c, 0x3d, 0x81, 0xdc, 0x84, 0xce, 0x4d, 0xa1, 0x5d, 0xda, 0xbb, 0x93, 0x34, 0xd0, + 0x8d, 0xf0, 0x70, 0x41, 0x62, 0xf6, 0xfb, 0x05, 0xc8, 0x29, 0x43, 0x42, 0xeb, 0x8d, 0xdf, 0xe6, + 0x60, 0x35, 0x66, 0x9a, 0x39, 0xe2, 0xf6, 0x16, 0x32, 0x93, 0xb0, 0x90, 0x62, 0x70, 0x21, 0x51, + 0x0d, 0xf2, 0x1e, 0x92, 0x29, 0xbd, 0x4a, 0xde, 0x2b, 0xc1, 0x8f, 0x32, 0x1a, 0x99, 0x9f, 0x69, + 0xfc, 0xce, 0xce, 0xba, 0x3b, 0x9b, 0x29, 0xa6, 0x3b, 0xfb, 0x6d, 0x58, 0xf6, 0x8c, 0x3d, 0x77, + 0x39, 0x77, 0x63, 0x30, 0xb1, 0xb7, 0x31, 0xee, 0xc1, 0x92, 0x32, 0xc1, 0x97, 0x61, 0x86, 0x2c, + 0x13, 0xa1, 0x0f, 0x5d, 0xcf, 0x28, 0xc4, 0x8c, 0xd4, 0xc8, 0x87, 0x6c, 0x1b, 0xf2, 0x97, 0x9a, + 0xa2, 0x7a, 0x34, 0x5f, 0xda, 0x7b, 0x27, 0x6d, 0x85, 0x9a, 0x87, 0xae, 0xed, 0x81, 0x81, 0xed, + 0x6b, 0xc9, 0x1b, 0x89, 0x74, 0x58, 0x67, 0x8f, 0x32, 0x36, 0x65, 0x05, 0x63, 0x5b, 0x3f, 0x9b, + 0x60, 0xcd, 0xdd, 0xd6, 0xa5, 0xbd, 0x6f, 0xcf, 0xe3, 0x72, 0x60, 0xb6, 0xfc, 0x71, 0xae, 0xfb, + 0xd5, 0xcb, 0xa8, 0x06, 0xed, 0xc3, 0xb2, 0xad, 0x1b, 0x17, 0xba, 0x71, 0x21, 0x63, 0x7d, 0xac, + 0x99, 0x13, 0x4c, 0x77, 0x5b, 0x69, 0x6f, 0xb3, 0xe9, 0x1e, 0xdf, 0x4d, 0xef, 0xf8, 0x6e, 0x76, + 0xd8, 0xf1, 0x2e, 0x55, 0xd8, 0x88, 0x81, 0x3b, 0x00, 0x1d, 0xc0, 0xca, 0x58, 0x79, 0x25, 0x0f, + 0x95, 0xd1, 0x48, 0xf6, 0x6a, 0x00, 0xba, 0x37, 0x53, 0xbd, 0x2c, 0x8f, 0x95, 0x57, 0x6d, 0x65, + 0x34, 0xf2, 0x04, 0x24, 0xbf, 0x57, 0xb6, 0xee, 0x58, 0xb2, 0x66, 0x28, 0x67, 0x23, 0x4d, 0xa5, + 0xbc, 0x59, 0x90, 0xca, 0x54, 0x78, 0xe0, 0xca, 0xea, 0x4f, 0xa1, 0xcc, 0xe7, 0x0c, 0x55, 0x41, + 0xbc, 0xd2, 0xae, 0x19, 0xe4, 0xc8, 0x23, 0x5a, 0x83, 0xec, 0x4b, 0x65, 0x34, 0xf1, 0xc0, 0xe6, + 0xbe, 0x3c, 0xcd, 0x3c, 0x11, 0xea, 0xcf, 0xa0, 0x96, 0x94, 0x9c, 0x9b, 0xf8, 0x69, 0xfc, 0x5e, + 0x84, 0xf5, 0xd8, 0x5d, 0x83, 0xbe, 0x39, 0xc5, 0xad, 0x4b, 0x0c, 0xab, 0xfe, 0x52, 0x1d, 0xe9, + 0x0e, 0x76, 0xad, 0xa6, 0x60, 0xfe, 0x41, 0x1c, 0x98, 0x33, 0xc9, 0x03, 0xa3, 0x08, 0xff, 0x6e, + 0x14, 0xe1, 0x62, 0xf2, 0xf8, 0x30, 0xec, 0x1f, 0x84, 0x61, 0x4f, 0x0f, 0xb3, 0xc3, 0x85, 0x20, + 0xf0, 0x3f, 0x17, 0x04, 0xdf, 0xd2, 0xc7, 0x3e, 0xad, 0x4c, 0x0e, 0x85, 0x20, 0xfa, 0x89, 0xe5, + 0x1b, 0x6c, 0xab, 0xd3, 0x73, 0xe5, 0x30, 0xe3, 0x6e, 0x76, 0xa2, 0xd8, 0xe5, 0xf6, 0x3b, 0xdd, + 0x5e, 0x87, 0xe2, 0x74, 0xc7, 0x7f, 0x2e, 0x08, 0xfb, 0x55, 0xa8, 0xc8, 0x81, 0x70, 0xa6, 0x12, + 0x6f, 0xda, 0xfd, 0x3c, 0x64, 0x65, 0xaa, 0x2a, 0x41, 0x51, 0xf6, 0x79, 0x7f, 0x00, 0x3b, 0x3e, + 0x5b, 0x1f, 0xb3, 0x43, 0x24, 0xc0, 0xac, 0x8f, 0x83, 0x74, 0xbd, 0xc3, 0x6f, 0xa0, 0xc0, 0x00, + 0x9e, 0xaf, 0xff, 0x26, 0xc0, 0x8e, 0xcf, 0xd7, 0xb1, 0x6e, 0x67, 0x13, 0xdf, 0x87, 0x61, 0xc2, + 0x4e, 0x9f, 0x9a, 0x67, 0xec, 0x0f, 0x43, 0x8c, 0xbd, 0x9b, 0x38, 0x32, 0x85, 0xb2, 0xff, 0xb1, + 0x08, 0x6b, 0x71, 0x13, 0x7d, 0x35, 0x9c, 0xed, 0x55, 0x4f, 0x6e, 0x4d, 0xe4, 0xbd, 0x06, 0x8b, + 0xa1, 0xec, 0x9c, 0xc5, 0x10, 0x77, 0x04, 0xe4, 0x82, 0x47, 0xc0, 0xeb, 0x23, 0xeb, 0x4e, 0x98, + 0xac, 0x1f, 0xa6, 0xae, 0x4e, 0x02, 0x5b, 0xff, 0x32, 0x9d, 0xad, 0x3f, 0x98, 0xcb, 0xe7, 0x7c, + 0x74, 0xfd, 0xb5, 0xa0, 0xbf, 0xdf, 0x88, 0xb0, 0x11, 0x0f, 0x41, 0xb4, 0x33, 0xc5, 0x80, 0xc0, + 0xa8, 0xc4, 0x13, 0x10, 0x0a, 0x78, 0xc2, 0x03, 0x21, 0x93, 0x02, 0x84, 0x43, 0x81, 0x83, 0x02, + 0x19, 0xc9, 0x11, 0xab, 0x38, 0x07, 0xb1, 0x26, 0x10, 0x5b, 0x66, 0x6e, 0x62, 0x13, 0x67, 0x11, + 0xdb, 0x62, 0x1a, 0xb1, 0x65, 0x83, 0xc4, 0x06, 0x50, 0xf0, 0xf8, 0x7d, 0xbf, 0x0c, 0x20, 0xfb, + 0x5f, 0xf6, 0x25, 0x28, 0xef, 0x23, 0xd8, 0x7c, 0xae, 0xe1, 0xdb, 0x16, 0x92, 0x8d, 0x3e, 0xd4, + 0xe3, 0x86, 0x3b, 0x96, 0x69, 0x38, 0xda, 0xad, 0xaa, 0xdb, 0xef, 0x79, 0x1e, 0x6f, 0xc7, 0x94, + 0x0d, 0x09, 0xb6, 0x62, 0xc7, 0xb3, 0x90, 0x6e, 0xc5, 0xe0, 0x9b, 0xb0, 0x4a, 0xd0, 0x11, 0xea, + 0x25, 0xd0, 0x02, 0xff, 0x39, 0xac, 0x05, 0x55, 0x6c, 0x9e, 0x77, 0x21, 0xab, 0x63, 0x6d, 0xec, + 0xf6, 0x16, 0x4a, 0x61, 0x78, 0xfa, 0xfe, 0xa9, 0x0d, 0x75, 0xb4, 0x0d, 0x75, 0xe6, 0x28, 0x66, + 0x25, 0x1a, 0x3f, 0x82, 0xad, 0x58, 0xed, 0x34, 0xd1, 0xfc, 0x6c, 0x33, 0x12, 0x4d, 0x4d, 0x1b, + 0x3b, 0xbe, 0xcb, 0xb8, 0x4c, 0x37, 0x4e, 0x60, 0x3b, 0x5e, 0x3d, 0x4d, 0x24, 0x3f, 0xe5, 0xac, + 0x44, 0xba, 0x73, 0x7e, 0x08, 0xeb, 0x1d, 0x6d, 0xa4, 0x45, 0xdb, 0x32, 0xb3, 0xd7, 0xf5, 0x19, + 0xad, 0x95, 0x3a, 0xba, 0x63, 0x29, 0x78, 0x78, 0x29, 0x4d, 0x46, 0x5a, 0x47, 0xb7, 0xb5, 0x21, + 0x46, 0x5b, 0x50, 0xb4, 0x4d, 0x73, 0x4c, 0xb1, 0xcd, 0xc6, 0x15, 0x88, 0xa0, 0x47, 0xe8, 0xbb, + 0x0a, 0xa2, 0xa5, 0x1b, 0x8c, 0x7b, 0xc8, 0x63, 0xa3, 0x07, 0x9b, 0x21, 0x3f, 0x5d, 0x43, 0xd5, + 0x5f, 0xea, 0xea, 0x44, 0x19, 0xa1, 0x5d, 0x28, 0x51, 0x5f, 0x96, 0xad, 0x9d, 0xeb, 0xaf, 0xbc, + 0x28, 0x88, 0xa8, 0x4f, 0x25, 0x31, 0xfe, 0x2e, 0x23, 0x71, 0x91, 0x62, 0x54, 0xd3, 0x6e, 0xe1, + 0x0b, 0x6d, 0x43, 0xd1, 0x56, 0x0c, 0xd5, 0x1c, 0xeb, 0xbf, 0x76, 0x4f, 0xeb, 0x82, 0x34, 0x15, + 0x34, 0xfe, 0x90, 0x81, 0xe5, 0xd0, 0x54, 0x48, 0x82, 0x35, 0x95, 0xbd, 0xcb, 0xf6, 0x64, 0xa4, + 0xc9, 0x2a, 0x4d, 0x0a, 0x43, 0x77, 0xe0, 0x72, 0x16, 0x4d, 0xdd, 0xe1, 0x82, 0x84, 0xd4, 0x68, + 0x42, 0x7f, 0x0e, 0xb5, 0xa0, 0x4f, 0xdd, 0x4f, 0x10, 0x2b, 0x3e, 0x1a, 0x49, 0x7e, 0xa7, 0xa9, + 0x3c, 0x5c, 0x90, 0x36, 0xd4, 0xf8, 0x24, 0x47, 0x62, 0x1e, 0xd2, 0x84, 0xc5, 0x5d, 0x28, 0xa3, + 0x69, 0x0d, 0xc7, 0xec, 0x4a, 0xf7, 0x73, 0xb0, 0x48, 0x5c, 0x35, 0xfe, 0x23, 0x72, 0x17, 0x6e, + 0x7e, 0xb4, 0x07, 0xb4, 0x16, 0x2c, 0x05, 0x26, 0xa7, 0xe7, 0x79, 0x68, 0xc7, 0x04, 0xbf, 0xe8, + 0xdc, 0x94, 0xca, 0xfc, 0x8c, 0xe8, 0x7d, 0x77, 0x2e, 0x96, 0xe3, 0x5a, 0xd2, 0x48, 0xda, 0x67, + 0xa1, 0x96, 0x68, 0x97, 0x9c, 0x57, 0x2e, 0xb2, 0x59, 0xfb, 0x88, 0x2a, 0x0b, 0xd8, 0xc5, 0xb6, + 0x83, 0x9a, 0xb0, 0x72, 0xa9, 0xab, 0x9a, 0x6c, 0x5d, 0x9a, 0x86, 0xc6, 0xf7, 0x0f, 0x0b, 0xd4, + 0x70, 0x99, 0x28, 0xfb, 0x44, 0xc7, 0xda, 0x42, 0xef, 0x46, 0x3b, 0x35, 0x39, 0xdf, 0x6d, 0xb8, + 0x5b, 0xb3, 0xc1, 0x0e, 0x1c, 0x7a, 0x76, 0xb9, 0x51, 0xd1, 0xd2, 0xe6, 0x0e, 0x77, 0xde, 0x64, + 0x7d, 0xdd, 0xb4, 0x10, 0xfb, 0x04, 0x80, 0x2b, 0x42, 0xf2, 0xa1, 0x2b, 0x63, 0x5a, 0x96, 0x9b, + 0xa1, 0xb2, 0x80, 0x3a, 0xe6, 0x9c, 0xd5, 0x3f, 0x82, 0xe5, 0x2f, 0x53, 0x39, 0xfc, 0x9d, 0xef, + 0x80, 0xc4, 0xad, 0xf2, 0x23, 0x58, 0x23, 0x74, 0x12, 0x82, 0xb1, 0x47, 0x2b, 0x2b, 0x8e, 0x6e, + 0x05, 0xd6, 0x78, 0x56, 0x43, 0x24, 0x0c, 0x88, 0xb9, 0x1b, 0x22, 0xfc, 0xc0, 0x94, 0xea, 0xfa, + 0x8f, 0x22, 0x6d, 0x88, 0x84, 0xa7, 0xb9, 0xf9, 0x67, 0xbc, 0xc7, 0xa0, 0x99, 0x49, 0x87, 0x26, + 0x83, 0xe5, 0x16, 0x0f, 0x4b, 0x91, 0x16, 0xc7, 0x53, 0x48, 0x3e, 0x8c, 0x83, 0xe4, 0x22, 0xe5, + 0xa4, 0x08, 0x1c, 0x63, 0x1a, 0x87, 0xf9, 0xd8, 0xc6, 0xa1, 0x77, 0x17, 0xc8, 0x26, 0xdc, 0x05, + 0x72, 0xa1, 0xbb, 0xc0, 0x51, 0x00, 0x82, 0x05, 0x0a, 0xc1, 0xf7, 0xd2, 0x56, 0x26, 0x8c, 0xbc, + 0xd7, 0x89, 0xba, 0x7f, 0x66, 0x22, 0x54, 0xcf, 0xca, 0xd5, 0xf7, 0xf9, 0x44, 0xa6, 0x5c, 0xd8, + 0xa7, 0xd9, 0xbd, 0xd9, 0x42, 0x79, 0x25, 0xa3, 0xc8, 0x6a, 0xe1, 0xd8, 0x92, 0x71, 0x91, 0xdd, + 0xa4, 0xf9, 0x92, 0x11, 0xf5, 0x02, 0x09, 0xcc, 0xd2, 0x04, 0x36, 0xd3, 0x11, 0xfa, 0x15, 0xa6, + 0x30, 0xa1, 0x06, 0x9d, 0x96, 0x3e, 0x31, 0x7b, 0x99, 0x2b, 0x7d, 0x82, 0xda, 0x39, 0x4a, 0x9f, + 0x08, 0x91, 0xb3, 0x32, 0xe4, 0x18, 0xb6, 0xfd, 0x32, 0xe4, 0x75, 0xd0, 0x47, 0xe3, 0x8b, 0x1c, + 0x6c, 0xf9, 0x84, 0xd8, 0x57, 0x6c, 0xac, 0x0f, 0x75, 0x4b, 0x31, 0xf0, 0xfc, 0x17, 0xfc, 0x3b, + 0x50, 0x22, 0x16, 0xb4, 0xf7, 0x85, 0x4d, 0x96, 0xb9, 0xa2, 0xa3, 0x5b, 0xe4, 0x80, 0x1b, 0x98, + 0x68, 0x07, 0x88, 0xb5, 0xb7, 0x0f, 0x97, 0x7d, 0x35, 0xdb, 0x81, 0x81, 0x22, 0x48, 0x0c, 0x15, + 0x41, 0xdf, 0x82, 0x35, 0x6b, 0x1a, 0x93, 0xac, 0xab, 0x9a, 0x81, 0x75, 0x7c, 0xcd, 0xae, 0xd7, + 0xab, 0x9c, 0xae, 0xcb, 0x54, 0xe8, 0x1d, 0xa8, 0xf2, 0x43, 0xb8, 0xeb, 0xf1, 0x32, 0x27, 0x8f, + 0xf3, 0xee, 0xe3, 0xb1, 0x10, 0xf1, 0xfe, 0xb1, 0xb7, 0xad, 0x5f, 0xc2, 0x06, 0x3f, 0x84, 0x43, + 0xa8, 0x7b, 0x7d, 0xfe, 0x7e, 0xf4, 0x94, 0x89, 0x26, 0xb5, 0xc9, 0x89, 0xc2, 0x90, 0x5d, 0xb7, + 0xe2, 0x74, 0x84, 0x7e, 0x54, 0x3c, 0x3e, 0xf7, 0xe8, 0x87, 0x3c, 0xa3, 0xb7, 0x61, 0xc9, 0x1a, + 0x29, 0xd7, 0xb2, 0xad, 0x1b, 0x17, 0xd8, 0x34, 0xdc, 0x7b, 0x99, 0x7b, 0xec, 0x96, 0x89, 0x42, + 0x62, 0x72, 0x74, 0x8f, 0x19, 0xaa, 0xba, 0x32, 0xa2, 0x86, 0xac, 0xad, 0x48, 0x84, 0x1d, 0x26, + 0x8b, 0x67, 0x4d, 0x88, 0x67, 0xcd, 0xaf, 0x51, 0xcb, 0xf4, 0x1b, 0x50, 0x76, 0x9b, 0xa5, 0x32, + 0x6d, 0x92, 0xd2, 0x1f, 0xc9, 0x0a, 0x52, 0xc9, 0x95, 0xbd, 0x20, 0xa2, 0xfa, 0x21, 0xd4, 0x93, + 0x13, 0x7e, 0x23, 0x1e, 0xfd, 0xb3, 0x00, 0x28, 0xb8, 0xa2, 0xf4, 0xb0, 0xbb, 0x0f, 0x95, 0x20, + 0x4a, 0x99, 0xb7, 0xa5, 0x00, 0x3e, 0x13, 0xc1, 0x9c, 0x49, 0x06, 0x73, 0xea, 0xe6, 0xe0, 0x37, + 0x9e, 0xae, 0xb2, 0x3d, 0xe1, 0x6d, 0xbc, 0xae, 0xda, 0xf8, 0x8b, 0x00, 0x3b, 0xb4, 0x9f, 0x70, + 0xae, 0xd9, 0xf1, 0x9b, 0x3b, 0x29, 0x22, 0x61, 0xce, 0x88, 0x32, 0xa1, 0x88, 0x76, 0xa1, 0x84, + 0xd9, 0x84, 0x84, 0x0a, 0xdc, 0x80, 0xc1, 0x13, 0x0d, 0xcc, 0x28, 0x12, 0x17, 0xa3, 0x48, 0x6c, + 0xfc, 0x4f, 0x84, 0xd2, 0x49, 0xb7, 0x4f, 0xbf, 0x82, 0xa4, 0xf7, 0x0d, 0xc8, 0x7b, 0xdf, 0xe8, + 0x06, 0x96, 0x1b, 0xd2, 0x0f, 0x44, 0x9b, 0x50, 0xf0, 0x79, 0xc9, 0x0d, 0x25, 0xcf, 0x8e, 0xa9, + 0xf4, 0xc4, 0xbd, 0x01, 0x79, 0xaa, 0xf4, 0x93, 0x96, 0x23, 0xaf, 0x29, 0x2b, 0x94, 0x4d, 0xce, + 0xc7, 0x43, 0x28, 0x9c, 0xdb, 0xe6, 0x58, 0x9e, 0xd8, 0x3a, 0xdd, 0x7f, 0xa5, 0xbd, 0x65, 0x9e, + 0xc7, 0x4f, 0x6d, 0x5d, 0xca, 0x13, 0x83, 0x53, 0x5b, 0x47, 0x6f, 0x41, 0x0e, 0x9b, 0xd4, 0x32, + 0x1f, 0x6f, 0x99, 0xc5, 0x26, 0xb1, 0xfb, 0x0e, 0x94, 0xe8, 0x07, 0x3b, 0x58, 0xc1, 0x13, 0x87, + 0xd2, 0x51, 0x65, 0x6f, 0x83, 0x37, 0x26, 0xb9, 0x39, 0xa1, 0x5a, 0x09, 0x86, 0xfe, 0x33, 0xa1, + 0xda, 0x21, 0xa5, 0x1d, 0x55, 0x56, 0x30, 0xfd, 0x4d, 0x51, 0x94, 0x8a, 0x4c, 0xd2, 0xc2, 0x94, + 0x89, 0xb1, 0x62, 0x33, 0x35, 0xb8, 0x6a, 0x26, 0x69, 0x61, 0x92, 0x4e, 0xcd, 0x50, 0x5d, 0x65, + 0x89, 0x2a, 0xf3, 0xf4, 0xbd, 0x85, 0xd1, 0x33, 0x58, 0x51, 0x75, 0x67, 0x68, 0x1a, 0x86, 0x36, + 0xc4, 0xb2, 0xad, 0x29, 0x0e, 0xdb, 0xac, 0x95, 0xbd, 0x4d, 0x3f, 0xae, 0x8e, 0x6f, 0x21, 0x51, + 0x03, 0xa9, 0xaa, 0x86, 0x24, 0x64, 0x6b, 0x69, 0xb6, 0x6d, 0xda, 0x94, 0x81, 0x8a, 0x92, 0xfb, + 0xd2, 0xf8, 0x9d, 0x00, 0x39, 0x37, 0x03, 0x84, 0xe7, 0x26, 0x8e, 0x66, 0xb3, 0x85, 0xa6, 0xcf, + 0x44, 0x76, 0x69, 0x3a, 0xd8, 0x6b, 0xc3, 0x92, 0x67, 0x54, 0x81, 0x8c, 0x6e, 0xb1, 0x85, 0xcd, + 0xe8, 0x16, 0xb1, 0xa1, 0x2d, 0x35, 0xb2, 0x9e, 0x4b, 0x12, 0x7d, 0xbe, 0x55, 0xd3, 0xf5, 0xe1, + 0x15, 0xfb, 0x79, 0xde, 0x6b, 0xc2, 0x6e, 0xd0, 0x1d, 0x2f, 0x0f, 0xa4, 0x56, 0xef, 0xa4, 0x7f, + 0x2c, 0x0d, 0xe4, 0xd6, 0xe9, 0xe0, 0xb8, 0xba, 0x80, 0xd6, 0x61, 0x25, 0x28, 0x3f, 0xed, 0xf4, + 0xab, 0x42, 0x54, 0x3c, 0x68, 0xf7, 0xab, 0x99, 0x18, 0xf1, 0xd1, 0x49, 0x55, 0x7c, 0xf8, 0x19, + 0x2c, 0x05, 0x16, 0x93, 0xda, 0xb5, 0x4f, 0xe4, 0x76, 0xeb, 0xe8, 0x48, 0xee, 0xf6, 0xda, 0xc7, + 0x1f, 0x77, 0x7b, 0xcf, 0xab, 0x0b, 0xa8, 0x0e, 0x1b, 0x44, 0xdc, 0x6f, 0x49, 0x83, 0x6e, 0xbb, + 0xdb, 0x6f, 0xf5, 0x06, 0xf2, 0x0f, 0x8f, 0xbb, 0xbd, 0x83, 0x4e, 0x55, 0x40, 0x15, 0x00, 0xa2, + 0x6b, 0xb5, 0x07, 0xdd, 0x1f, 0x1f, 0x54, 0x33, 0x68, 0x0d, 0xaa, 0xe4, 0xbd, 0xd3, 0x3d, 0x69, + 0x1f, 0xf7, 0x7a, 0x07, 0xed, 0xc1, 0x41, 0xa7, 0x2a, 0xa2, 0x25, 0x28, 0x12, 0xe9, 0x81, 0x24, + 0x1d, 0x4b, 0xd5, 0xc5, 0xbd, 0x7f, 0x95, 0x40, 0x3c, 0xe9, 0xf6, 0x51, 0x1f, 0xca, 0x7c, 0x0f, + 0x08, 0x6d, 0x07, 0x6a, 0xbf, 0x50, 0xab, 0xa3, 0xbe, 0x93, 0xa0, 0x75, 0xeb, 0x99, 0x86, 0xf8, + 0x79, 0x46, 0x40, 0x9f, 0x72, 0x7f, 0x5f, 0xe1, 0xfb, 0x37, 0xe8, 0x7e, 0xf4, 0x64, 0x8c, 0x69, + 0x17, 0xd5, 0x53, 0x1b, 0x40, 0x48, 0x86, 0x8d, 0xf8, 0x9f, 0x39, 0xd0, 0x5b, 0x51, 0xf7, 0x71, + 0xcd, 0xa1, 0x7a, 0x7a, 0xb7, 0x87, 0x84, 0x1f, 0xfb, 0x03, 0x35, 0x17, 0x7e, 0xda, 0x0f, 0xd8, + 0xb3, 0xc3, 0x8f, 0xff, 0x39, 0x85, 0x0b, 0x3f, 0xf5, 0xf7, 0x96, 0x59, 0xe1, 0xff, 0x0c, 0x50, + 0xb4, 0xa9, 0x89, 0xa6, 0x4d, 0x8f, 0xc4, 0x86, 0x69, 0xfd, 0x5e, 0xaa, 0x0d, 0xab, 0x58, 0x7f, + 0x01, 0xab, 0x31, 0x1d, 0x4a, 0x14, 0x1e, 0x1b, 0x1b, 0xf9, 0x9b, 0xe9, 0x46, 0xd3, 0x19, 0x62, + 0xba, 0x85, 0xdc, 0x0c, 0xc9, 0x9d, 0x46, 0x6e, 0x86, 0xb4, 0x86, 0xe3, 0xd0, 0x6f, 0x7b, 0x06, + 0x3f, 0x22, 0x32, 0x3a, 0xf6, 0x2b, 0xee, 0xcf, 0xb0, 0x62, 0x93, 0x3c, 0x87, 0x4a, 0xb0, 0x5b, + 0x88, 0xa6, 0x97, 0xeb, 0xd8, 0x36, 0x62, 0x3d, 0xbe, 0xcd, 0x1a, 0xd8, 0x4e, 0x81, 0xf6, 0xd9, + 0xfd, 0xb9, 0xda, 0x19, 0xf5, 0xd4, 0x4b, 0x45, 0x00, 0xed, 0x09, 0xde, 0xd3, 0x9a, 0x15, 0x33, + 0xbc, 0x4f, 0xd7, 0x32, 0xe0, 0x3b, 0xb2, 0x96, 0x71, 0x9e, 0xdf, 0x4c, 0x37, 0x62, 0x69, 0xfe, + 0x94, 0x6b, 0xca, 0x26, 0xc4, 0x9f, 0x76, 0x5b, 0x9a, 0x11, 0xff, 0x27, 0xb0, 0x16, 0x57, 0xc4, + 0x73, 0x48, 0x49, 0xa9, 0xf1, 0xeb, 0x5b, 0xbc, 0xef, 0x70, 0xc5, 0xf8, 0x13, 0xd8, 0x88, 0xaf, + 0xcc, 0x38, 0x22, 0x48, 0x2d, 0xdd, 0xea, 0x1b, 0x91, 0x1a, 0xf9, 0x60, 0x6c, 0xe1, 0xeb, 0xfd, + 0x67, 0x3f, 0xbd, 0x77, 0xa1, 0xe3, 0xcb, 0xc9, 0x59, 0x73, 0x68, 0x8e, 0x1f, 0x31, 0x5f, 0xee, + 0x1f, 0x10, 0x87, 0xe6, 0xc8, 0x13, 0x7c, 0x91, 0x59, 0x3a, 0xd2, 0x5f, 0x6a, 0x2f, 0x74, 0xdc, + 0xec, 0x13, 0xd5, 0x7f, 0x33, 0x15, 0xf6, 0xfe, 0xf4, 0x29, 0x15, 0x9c, 0xe5, 0xe8, 0x90, 0xc7, + 0xff, 0x0f, 0x00, 0x00, 0xff, 0xff, 0xaa, 0xba, 0x50, 0x7a, 0xff, 0x28, 0x00, 0x00, } diff --git a/livekit/sip.go b/livekit/sip.go index 38356f47..d9a16731 100644 --- a/livekit/sip.go +++ b/livekit/sip.go @@ -103,35 +103,6 @@ func (p *SIPOutboundTrunkInfo) AsTrunkInfo() *SIPTrunkInfo { } } -func applyListUpdate(dst *[]string, set []string) { - if len(set) == 1 && set[0] == "" { - *dst = nil - } else if len(set) != 0 { - *dst = set - } -} - -func applyUpdate[T any](dst *T, set *T) { - if set != nil { - *dst = *set - } -} - -func applyAttrsDiff(dst *map[string]string, diff map[string]string) { - m := *dst - if m == nil { - m = make(map[string]string) - } - for k, v := range diff { - if v != "" { - m[k] = v - } else { - delete(m, k) - } - } - *dst = m -} - func validateHeaders(headers map[string]string) error { for k := range headers { k = strings.ToLower(k) @@ -248,6 +219,15 @@ func (p *SIPInboundTrunkInfo) Validate() error { } func (p *SIPInboundTrunkUpdate) Validate() error { + if err := p.Numbers.Validate(); err != nil { + return err + } + if err := p.AllowedAddresses.Validate(); err != nil { + return err + } + if err := p.AllowedNumbers.Validate(); err != nil { + return err + } return nil } @@ -314,6 +294,9 @@ func (p *SIPOutboundTrunkInfo) Validate() error { } func (p *SIPOutboundTrunkUpdate) Validate() error { + if err := p.Numbers.Validate(); err != nil { + return err + } return nil } @@ -426,6 +409,9 @@ func (p *SIPDispatchRuleInfo) Validate() error { } func (p *SIPDispatchRuleUpdate) Validate() error { + if err := p.TrunkIds.Validate(); err != nil { + return err + } return nil } @@ -437,7 +423,7 @@ func (p *SIPDispatchRuleUpdate) Apply(info *SIPDispatchRuleInfo) error { applyUpdate(&info.Rule, &p.Rule) applyUpdate(&info.Name, p.Name) applyUpdate(&info.Metadata, p.Metadata) - applyAttrsDiff(&info.Attributes, p.Attributes) + applyMapDiff(&info.Attributes, p.Attributes) return info.Validate() } diff --git a/livekit/types.go b/livekit/types.go index 29eadbb0..003997a2 100644 --- a/livekit/types.go +++ b/livekit/types.go @@ -15,6 +15,8 @@ package livekit import ( + "fmt" + "github.com/bufbuild/protoyaml-go" proto "google.golang.org/protobuf/proto" "gopkg.in/yaml.v3" @@ -130,3 +132,47 @@ func IsJobType(jobType JobType) bool { _, ok := JobType_name[int32(jobType)] return ok } + +func (p *ListUpdate) Validate() error { + if p == nil { + return nil + } + for _, v := range p.Set { + if v == "" { + return fmt.Errorf("empty element in the list") + } + } + return nil +} + +func applyUpdate[T any](dst *T, set *T) { + if set != nil { + *dst = *set + } +} + +func applyListUpdate[T ~string](dst *[]T, u *ListUpdate) { + if u == nil { + return + } + arr := make([]T, 0, len(u.Set)) + for _, v := range u.Set { + arr = append(arr, T(v)) + } + *dst = arr +} + +func applyMapDiff(dst *map[string]string, diff map[string]string) { + m := *dst + if m == nil { + m = make(map[string]string) + } + for k, v := range diff { + if v != "" { + m[k] = v + } else { + delete(m, k) + } + } + *dst = m +} diff --git a/protobufs/livekit_models.proto b/protobufs/livekit_models.proto index 262c2a3d..72da715c 100644 --- a/protobufs/livekit_models.proto +++ b/protobufs/livekit_models.proto @@ -23,6 +23,11 @@ import "google/protobuf/timestamp.proto"; import "livekit_metrics.proto"; +// ListUpdate is used for updated APIs where 'repeated string' field is modified. +message ListUpdate { + repeated string set = 1; // set the field to a new list +} + message Room { string sid = 1; string name = 2; diff --git a/protobufs/livekit_sip.proto b/protobufs/livekit_sip.proto index 86840432..1807d5b8 100644 --- a/protobufs/livekit_sip.proto +++ b/protobufs/livekit_sip.proto @@ -210,9 +210,9 @@ message SIPInboundTrunkInfo { } message SIPInboundTrunkUpdate { - repeated string numbers = 1; - repeated string allowed_addresses = 2; - repeated string allowed_numbers = 3; + ListUpdate numbers = 1; + ListUpdate allowed_addresses = 2; + ListUpdate allowed_numbers = 3; optional string auth_username = 4; optional string auth_password = 5; optional string name = 6; @@ -265,7 +265,7 @@ message SIPOutboundTrunkInfo { message SIPOutboundTrunkUpdate { optional string address = 1; optional SIPTransport transport = 2; - repeated string numbers = 3; + ListUpdate numbers = 3; optional string auth_username = 4; optional string auth_password = 5; optional string name = 6; @@ -414,7 +414,7 @@ message SIPDispatchRuleInfo { } message SIPDispatchRuleUpdate { - repeated string trunk_ids = 1; + ListUpdate trunk_ids = 1; SIPDispatchRule rule = 2; optional string name = 3; optional string metadata = 4;