+
    ~jbw                        R t ^ RIHt ^ RIHt ^ RIHt ^ RIH	t
 ]P                  ! 4       t^RIHt ^RIHt ]P                  ! 4       P'                  R4      t]! 4       t]
P.                  ! ]]4       ]
P0                  ! ]R]4       ]P2                  R	8X  Edc   R
]R,          n        R]R,          n        R
]R,          P8                  R,          n        R]R,          P8                  R,          n        R
]R,          P8                  R,          n        R]R,          P8                  R,          n        R
]R,          P8                  R,          n        R]R,          P8                  R,          n        R
]R,          n        R]R,          n        R
]R,          n        R]R,          n        R
]R,          P8                  R,          n        R]R,          P8                  R,          n        R
]R,          n        R]R,          n        R
]R,          n        R]R,          n        R
]R,          P8                  R,          n        R]R,          P8                  R,          n        R
]R,          P8                  R,          n        R]R,          P8                  R,          n        R
]R,          P8                  R,          n        R]R,          P8                  R,          n        R
]R,          P8                  R ,          n        R!]R,          P8                  R ,          n        R
]R",          P8                  R#,          n        R$]R",          P8                  R#,          n        R
]R",          P8                  R%,          n        R$]R",          P8                  R%,          n        R
]R&,          P8                  R',          n        R]R&,          P8                  R',          n        R
]R(,          P8                  R ,          n        R!]R(,          P8                  R ,          n        R
]R),          n        R]R),          n        R
]R*,          P8                  R,          n        R]R*,          P8                  R,          n        R
]R*,          P8                  R+,          n        R]R*,          P8                  R+,          n        R,]R-,          n        R.]R-,          n        R/]R0,          n        R1]R0,          n        R2]R3,          n        R4]R3,          n        ^K]R,          n        R5]R,          n        R6]R7,          n        R8]R7,          n        R9]R:,          n        R;]R:,          n        R<]R,          n        R=]R,          n        R>]R?,          n        R@]R?,          n        RA]RB,          n        RC]RB,          n        RD]RE,          n        RF]RE,          n        RG]RH,          n        RI]RH,          n        RJ]RK,          n        RL]RK,          n        RM]RN,          n        RO]RN,          n        RP]R,          n        RL]R,          n        RQ]RR,          n        RS]RR,          n        RT]RU,          n        RV]RU,          n        RW]RX,          n        RY]RX,          n        RZ]R[,          n        R\]R[,          n        R]]R^,          n        R_]R^,          n        R`]Ra,          n        Rb]Ra,          n        Rc]R,          n        Rd]R,          n        Re]R,          n        Rd]R,          n        Rf]Rg,          n        Rh]Rg,          n        Ri]Rj,          n        Rk]Rj,          n        Rl]Rm,          n        Rn]Rm,          n        Ro]Rp,          n        Rn]Rp,          n        Rq]Rr,          n        Rs]Rr,          n        Rt]Ru,          n        Rv]Ru,          n        Rw]Rx,          n        Ry]Rx,          n        Rz]R{,          n        R|]R{,          n        R}]R~,          n        R|]R~,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R",          n        R]R",          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R&,          n        R]R&,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R(,          n        R]R(,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R*,          n        R]R*,          n        R]R),          n        R]R),          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R]R,          n        R
# R
# )zGenerated protocol buffer code.)
descriptor)descriptor_pool)symbol_database)builder)models)optionss,  
livekit_rtc.protolivekitlivekit_models.protologger/options.proto"
SignalRequest,
offer (2.livekit.SessionDescriptionH -
answer (2.livekit.SessionDescriptionH *
trickle (2.livekit.TrickleRequestH -
	add_track (2.livekit.AddTrackRequestH )
mute (2.livekit.MuteTrackRequestH 3
subscription (2.livekit.UpdateSubscriptionH 5
track_setting (2.livekit.UpdateTrackSettingsH &
leave (2.livekit.LeaveRequestH 7
update_layers
 (2.livekit.UpdateVideoLayersBH B
subscription_permission (2.livekit.SubscriptionPermissionH (

sync_state (2.livekit.SyncStateH -
simulate (2.livekit.SimulateScenarioH 
ping (H =
update_metadata (2".livekit.UpdateParticipantMetadataH !
ping_req (2.livekit.PingH <
update_audio_track (2.livekit.UpdateLocalAudioTrackH <
update_video_track (2.livekit.UpdateLocalVideoTrackH F
publish_data_track_request (2 .livekit.PublishDataTrackRequestH J
unpublish_data_track_request (2".livekit.UnpublishDataTrackRequestH C
update_data_subscription (2.livekit.UpdateDataSubscriptionH B	
message"
SignalResponse%
join (2.livekit.JoinResponseH -
answer (2.livekit.SessionDescriptionH ,
offer (2.livekit.SessionDescriptionH *
trickle (2.livekit.TrickleRequestH ,
update (2.livekit.ParticipantUpdateH :
track_published (2.livekit.TrackPublishedResponseH &
leave (2.livekit.LeaveRequestH )
mute	 (2.livekit.MuteTrackRequestH 4
speakers_changed
 (2.livekit.SpeakersChangedH *
room_update (2.livekit.RoomUpdateH >
connection_quality (2 .livekit.ConnectionQualityUpdateH 9
stream_state_update (2.livekit.StreamStateUpdateH E
subscribed_quality_update (2 .livekit.SubscribedQualityUpdateH O
subscription_permission_update (2%.livekit.SubscriptionPermissionUpdateH 
refresh_token (	H >
track_unpublished (2!.livekit.TrackUnpublishedResponseH 
pong (H /
	reconnect (2.livekit.ReconnectResponseH "
	pong_resp (2.livekit.PongH >
subscription_response (2.livekit.SubscriptionResponseH 4
request_response (2.livekit.RequestResponseH 4
track_subscribed (2.livekit.TrackSubscribedH 0

room_moved (2.livekit.RoomMovedResponseH G
media_sections_requirement (2!.livekit.MediaSectionsRequirementH L
subscribed_audio_codec_update (2#.livekit.SubscribedAudioCodecUpdateH H
publish_data_track_response (2!.livekit.PublishDataTrackResponseH L
unpublish_data_track_response (2#.livekit.UnpublishDataTrackResponseH L
data_track_subscriber_handles (2#.livekit.DataTrackSubscriberHandlesH B	
message"
SimulcastCodec
codec (	
cid (	#
layers (2.livekit.VideoLayer2
video_layer_mode (2.livekit.VideoLayer.Mode"
AddTrackRequest
cid (	
name (	 
type (2.livekit.TrackType
width (
height (
muted (
disable_dtx (B$
source (2.livekit.TrackSource#
layers	 (2.livekit.VideoLayer1
simulcast_codecs
 (2.livekit.SimulcastCodec
sid (	
stereo (B
disable_red (,

encryption (2.livekit.Encryption.Type
stream (	7
backup_codec_policy (2.livekit.BackupCodecPolicy2
audio_features (2.livekit.AudioTrackFeature>
packet_trailer_features (2.livekit.PacketTrailerFeature"i
PublishDataTrackRequest

pub_handle (
name (	,

encryption (2.livekit.Encryption.Type"@
PublishDataTrackResponse$
info (2.livekit.DataTrackInfo"/
UnpublishDataTrackRequest

pub_handle ("B
UnpublishDataTrackResponse$
info (2.livekit.DataTrackInfo"
DataTrackSubscriberHandlesH
sub_handles (23.livekit.DataTrackSubscriberHandles.SubHandlesEntryZ
PublishedDataTrack
publisher_identity (	
publisher_sid (	
	track_sid (	i
SubHandlesEntry
key (E
value (26.livekit.DataTrackSubscriberHandles.PublishedDataTrack:8"]
TrickleRequest
candidateInit (	%
target (2.livekit.SignalTarget
final (".
MuteTrackRequest
sid (	
muted ("
JoinResponse
room (2.livekit.Room-
participant (2.livekit.ParticipantInfo4
other_participants (2.livekit.ParticipantInfo
server_version (	'
ice_servers (2.livekit.ICEServer
subscriber_primary (
alternative_url (	:
client_configuration (2.livekit.ClientConfiguration
server_region	 (	
ping_timeout
 (
ping_interval ((
server_info (2.livekit.ServerInfo
sif_trailer (.
enabled_publish_codecs (2.livekit.Codec
fast_publish ("
ReconnectResponse'
ice_servers (2.livekit.ICEServer:
client_configuration (2.livekit.ClientConfiguration(
server_info (2.livekit.ServerInfo
last_message_seq ("H
TrackPublishedResponse
cid (	!
track (2.livekit.TrackInfo"-
TrackUnpublishedResponse
	track_sid (	"
SessionDescription
type (	
sdp (	

id (W
mid_to_track_id (2-.livekit.SessionDescription.MidToTrackIdEntryBPmidToTrackID3
MidToTrackIdEntry
key (	
value (	:8"C
ParticipantUpdate.
participants (2.livekit.ParticipantInfo"s
UpdateSubscription

track_sids (	
	subscribe (6
participant_tracks (2.livekit.ParticipantTracks"
UpdateDataSubscription7
updates (2&.livekit.UpdateDataSubscription.Updatef
Update
	track_sid (	
	subscribe (6
options (2%.livekit.DataTrackSubscriptionOptions"
UpdateTrackSettings

track_sids (	
disabled (&
quality (2.livekit.VideoQuality
width (
height (
fps (
priority ("X
UpdateLocalAudioTrack
	track_sid (	,
features (2.livekit.AudioTrackFeature"I
UpdateLocalVideoTrack
	track_sid (	
width (
height ("
LeaveRequest
can_reconnect ()
reason (2.livekit.DisconnectReason,
action (2.livekit.LeaveRequest.Action(
regions (2.livekit.RegionSettings"3
Action

DISCONNECT 

RESUME
	RECONNECT"O
UpdateVideoLayers
	track_sid (	#
layers (2.livekit.VideoLayer:"
UpdateParticipantMetadata6
metadata (	B$PP<redacted ({{ .Size }} bytes)>2
name (	B$PP<redacted ({{ .Size }} bytes)>l

attributes (22.livekit.UpdateParticipantMetadata.AttributesEntryB$PP<redacted ({{ .Size }} bytes)> 

request_id (BP	requestID1
AttributesEntry
key (	
value (	:8"I
	ICEServer
urls (	
username (	BP

credential (	BP"9
SpeakersChanged&
speakers (2.livekit.SpeakerInfo")

RoomUpdate
room (2.livekit.Room"l
ConnectionQualityInfo
participant_sid (	+
quality (2.livekit.ConnectionQuality
score ("J
ConnectionQualityUpdate/
updates (2.livekit.ConnectionQualityInfo"b
StreamStateInfo
participant_sid (	
	track_sid (	#
state (2.livekit.StreamState"D
StreamStateUpdate/
stream_states (2.livekit.StreamStateInfo"L
SubscribedQuality&
quality (2.livekit.VideoQuality
enabled ("O
SubscribedCodec
codec (	-
	qualities (2.livekit.SubscribedQuality"
SubscribedQualityUpdate
	track_sid (	<
subscribed_qualities (2.livekit.SubscribedQualityB3
subscribed_codecs (2.livekit.SubscribedCodec"o
SubscribedAudioCodecUpdate
	track_sid (	>
subscribed_audio_codecs (2.livekit.SubscribedAudioCodec"p
TrackPermission
participant_sid (	

all_tracks (

track_sids (	
participant_identity (	"g
SubscriptionPermission
all_participants (3
track_permissions (2.livekit.TrackPermission"[
SubscriptionPermissionUpdate
participant_sid (	
	track_sid (	
allowed ("
RoomMovedResponse
room (2.livekit.Room
token (	-
participant (2.livekit.ParticipantInfo4
other_participants (2.livekit.ParticipantInfo"
	SyncState+
answer (2.livekit.SessionDescription1
subscription (2.livekit.UpdateSubscription7
publish_tracks (2.livekit.TrackPublishedResponse/
data_channels (2.livekit.DataChannelInfo*
offer (2.livekit.SessionDescription
track_sids_disabled (	D
datachannel_receive_states (2 .livekit.DataChannelReceiveState>
publish_data_tracks (2!.livekit.PublishDataTrackResponse"B
DataChannelReceiveState
publisher_sid (	
last_seq ("S
DataChannelInfo
label (	

id (%
target (2.livekit.SignalTarget"
SimulateScenario
speaker_update (H 
node_failure (H 
	migration (H 
server_leave (H ?
switch_candidate_protocol (2.livekit.CandidateProtocolH 
subscriber_bandwidth (H %
disconnect_signal_on_resume (H 1
'disconnect_signal_on_resume_no_messages (H &
leave_request_full_reconnect	 (H B

scenario"&
Ping
	timestamp (
rtt ("6
Pong
last_ping_timestamp (
	timestamp ("6
RegionSettings$
regions (2.livekit.RegionInfo";

RegionInfo
region (	
url (	
distance ("R
SubscriptionResponse
	track_sid (	'
err (2.livekit.SubscriptionError"
RequestResponse 

request_id (BP	requestID/
reason (2.livekit.RequestResponse.Reason
message (	*
trickle (2.livekit.TrickleRequestH -
	add_track (2.livekit.AddTrackRequestH )
mute (2.livekit.MuteTrackRequestH =
update_metadata (2".livekit.UpdateParticipantMetadataH <
update_audio_track (2.livekit.UpdateLocalAudioTrackH <
update_video_track	 (2.livekit.UpdateLocalVideoTrackH >
publish_data_track
 (2 .livekit.PublishDataTrackRequestH B
unpublish_data_track (2".livekit.UnpublishDataTrackRequestH "
Reason
OK 
	NOT_FOUND
NOT_ALLOWED
LIMIT_EXCEEDED

QUEUED
UNSUPPORTED_TYPE
UNCLASSIFIED_ERROR
INVALID_HANDLE
INVALID_NAME
DUPLICATE_HANDLE	
DUPLICATE_NAME
B	
request"$
TrackSubscribed
	track_sid (	"
ConnectionSettings
auto_subscribe (
adaptive_stream (#
subscriber_allow_pause (H 
disable_ice_lite (&
auto_subscribe_data_track (HB
_subscriber_allow_pauseB
_auto_subscribe_data_track"
JoinRequest(
client_info (2.livekit.ClientInfo8
connection_settings (2.livekit.ConnectionSettings6
metadata (	B$PP<redacted ({{ .Size }} bytes)>u
participant_attributes (2/.livekit.JoinRequest.ParticipantAttributesEntryB$PP<redacted ({{ .Size }} bytes)>4
add_track_requests (2.livekit.AddTrackRequest4
publisher_offer (2.livekit.SessionDescription
	reconnect (2
reconnect_reason (2.livekit.ReconnectReason
participant_sid	 (	&

sync_state
 (2.livekit.SyncState<
ParticipantAttributesEntry
key (	
value (	:8"
WrappedJoinRequest<
compression (2'.livekit.WrappedJoinRequest.Compression
join_request ("!
Compression
NONE 
GZIP"B
MediaSectionsRequirement

num_audios (

num_videos (*-
SignalTarget
	PUBLISHER 

SUBSCRIBER*%
StreamState

ACTIVE 

PAUSED*.
CandidateProtocol
UDP 
TCP
TLSBFZ#github.com/livekit/protocol/livekitLiveKit.ProtoLiveKit::Protobproto3rtcFN
DESCRIPTORsF   Z#github.com/livekit/protocol/livekitLiveKit.ProtoLiveKit::Proto_SIGNALREQUESTupdate_layerss   _ADDTRACKREQUESTdisable_dtxstereo+_DATATRACKSUBSCRIBERHANDLES_SUBHANDLESENTRYs   8%_SESSIONDESCRIPTION_MIDTOTRACKIDENTRY_SESSIONDESCRIPTIONmid_to_track_ids   PmidToTrackID_UPDATEVIDEOLAYERS*_UPDATEPARTICIPANTMETADATA_ATTRIBUTESENTRY_UPDATEPARTICIPANTMETADATAmetadatas$   PP<redacted ({{ .Size }} bytes)>name
attributes
request_ids   P	requestID
_ICESERVERusernames   P
credential_SUBSCRIBEDQUALITYUPDATEsubscribed_qualities_REQUESTRESPONSE'_JOINREQUEST_PARTICIPANTATTRIBUTESENTRY_JOINREQUESTparticipant_attributesiC+  _SIGNALTARGETip+  ir+  _STREAMSTATEi+  i+  _CANDIDATEPROTOCOLi+  iy  i|  _SIGNALRESPONSEi
  i
  _SIMULCASTCODECi  i  iQ  iS  _PUBLISHDATATRACKREQUESTi  i  _PUBLISHDATATRACKRESPONSEi  i   _UNPUBLISHDATATRACKREQUESTi/  i1  _UNPUBLISHDATATRACKRESPONSEis  iv  _DATATRACKSUBSCRIBERHANDLESi  i  ._DATATRACKSUBSCRIBERHANDLES_PUBLISHEDDATATRACKi8  i:  i  _TRICKLEREQUESTi  i  _MUTETRACKREQUESTi2  i5  _JOINRESPONSEi@  iC  _RECONNECTRESPONSEi  i  _TRACKPUBLISHEDRESPONSEiI  iK  _TRACKUNPUBLISHEDRESPONSEix  i{  iD  i  iF  _PARTICIPANTUPDATEi  i  _UPDATESUBSCRIPTIONi  i  _UPDATEDATASUBSCRIPTIONi  iT  _UPDATEDATASUBSCRIPTION_UPDATEi  _UPDATETRACKSETTINGSi^  i`  _UPDATELOCALAUDIOTRACKi  i  _UPDATELOCALVIDEOTRACKi  i  _LEAVEREQUESTi  i  _LEAVEREQUEST_ACTIONi  i4  i7  i  iP  i  i  i  _SPEAKERSCHANGEDi  i	  _ROOMUPDATEi2  i4  _CONNECTIONQUALITYINFOi  i  _CONNECTIONQUALITYUPDATEi  i  _STREAMSTATEINFOiP  iR  _STREAMSTATEUPDATEi  i  _SUBSCRIBEDQUALITYi  i  _SUBSCRIBEDCODECi5  i8  i  i  _SUBSCRIBEDAUDIOCODECUPDATEiH  iJ  _TRACKPERMISSIONi  i  _SUBSCRIPTIONPERMISSIONi#  i%  _SUBSCRIPTIONPERMISSIONUPDATEi  i  _ROOMMOVEDRESPONSEi'  i*  
_SYNCSTATEi   i   _DATACHANNELRECEIVESTATEi!  i!  _DATACHANNELINFOig!  ij!  _SIMULATESCENARIOi"  i"  _PINGi"  i"  _PONGi*#  i,#  _REGIONSETTINGSib#  id#  _REGIONINFOi#  i#  _SUBSCRIPTIONRESPONSEi#  i#  i'  i3&  _REQUESTRESPONSE_REASONi'  i'  _TRACKSUBSCRIBEDi2'  i5'  _CONNECTIONSETTINGSi(  i(  io*  i3*  ir*  _WRAPPEDJOINREQUESTi*  i*  _WRAPPEDJOINREQUEST_COMPRESSIONi*  _MEDIASECTIONSREQUIREMENTiA+  )__doc__google.protobufr   _descriptorr   _descriptor_poolr   _symbol_databasegoogle.protobuf.internalr   _builderDefault_sym_db r   _models_	logger_pbr   logger_dot_options__pb2AddSerializedFiler	   globals_globalsBuildMessageAndEnumDescriptorsBuildTopDescriptorsAndMessages_USE_C_DESCRIPTORS_options_serialized_optionsfields_by_name_serialized_start_serialized_end     i/Users/mitch_tango/dev/rabbit-r1-livekit/agent/.venv/lib/python3.14/site-packages/livekit/protocol/rtc.py<module>rt      s@  
 & 5 ? ? 8 
"
"
$ ! 9 %%'99  ;T_  U_
9  ' '
H =  ' '
E8 D!!U*$((<! 0I(<,HL(++O<ES^(++O<PHL(--m<ES^(--m<PCG(--h7@NY(--h7KEI(89BPX(89M?C(23<JR(23GOS( !001BCLZr( !001BCW,0( )7B( 4DH(78AOW(78LOS('(77
CL [N('(77
CWKO('(77?H WJ('(77?SQU('(77EN ]P('(77EYQU('(77EN\o('(77EY?C(<''
3<JV(<''
3GAE(<''5>LX(<''5IY](%&556LMVdo(%&556LMaGK(--l;DRe(--l;OAE(45>LT(45IAE(>))*5>L(>))*5IOS(>))*BCL [N(>))*BCW.3(?-,1(?+-2(>,+0(>*38( 216( 0/1(.-1(,04(/.2(-04(/.2(-15(0/3(.9=(%&87;(%&6:>(&'98<(&'7;?('(:9=('(8<@(();:>(()9<@(();:>(()9OS(;<NMQ(;<LLP(89KJN(89I04(/.2(-26(104(/.2(?-,0(?+37( 215( 08<($%76:($%5:>(&'98<(&'748( !326( !1FJ(23EDH(23C37( 215( 048( !326( !18<($%76:($%5?C(+,>=A(+,<59(!"437(!"27;(#$659(#$47;(#$659(#$4.2(?-,0(?+59(!"437(!"237( 215( 0;?('(:9=('(8KO(78JIM(78H+/(<*)-(<(15(0/3(.,0(=+*.(=)7;(#$659(#$49=(%&87;(%&615(0/3(.37( 215( 037( 215( 015(0/3(.9=(%&87;(%&6<@(();:>(()915(0/3(.8<($%76:($%5>B(*+=<@(*+;37( 215( 0+/(<*)-(<(9=(%&87;(%&615(0/3(.26(104(/&*(7%$((7#&*(7%$((7#04(/.2(-,0(=+*.(=)6:("#548("#315(0/3(.8<($%76:($%515(0/4(.49( !327( !1-2(>,+0(>*HM(45GFK(45E49( !327( !1@E(,-?>C(,-=:?(&'98=(&'7] +rr   