From b9f938afbf2827f2281e6a3b66837fd5e51d2dcd Mon Sep 17 00:00:00 2001 From: UbitUmarov Date: Tue, 17 Mar 2026 02:18:15 +0000 Subject: [PATCH] we decide participantId (test);cosmetics; update libomv --- .../os-webrtc-janus/Janus/JanusAudioBridge.cs | 25 ++++++++++-------- .../os-webrtc-janus/Janus/JanusMessages.cs | 14 +++++++++- .../Addons/os-webrtc-janus/Janus/JanusRoom.cs | 4 +-- .../Janus/JanusViewerSession.cs | 1 - .../Janus/WebRtcJanusService.cs | 12 +++------ .../WebRtcVoice/WebRtcVoiceServerConnector.cs | 2 -- .../WebRtcVoiceServiceConnector.cs | 2 -- .../WebRtcVoiceRegionModule.cs | 2 -- .../WebRtcVoiceServiceModule.cs | 2 -- bin/OpenMetaverse.Rendering.Meshmerizer.dll | Bin 28672 -> 28672 bytes bin/OpenMetaverse.StructuredData.dll | Bin 131072 -> 131072 bytes bin/OpenMetaverse.dll | Bin 2236416 -> 2236416 bytes bin/OpenMetaverseTypes.dll | Bin 208896 -> 208896 bytes 13 files changed, 32 insertions(+), 32 deletions(-) diff --git a/OpenSim/Addons/os-webrtc-janus/Janus/JanusAudioBridge.cs b/OpenSim/Addons/os-webrtc-janus/Janus/JanusAudioBridge.cs index c2448e92ee..f71137015e 100644 --- a/OpenSim/Addons/os-webrtc-janus/Janus/JanusAudioBridge.cs +++ b/OpenSim/Addons/os-webrtc-janus/Janus/JanusAudioBridge.cs @@ -58,16 +58,20 @@ namespace osWebRtcVoice public async Task SendAudioBridgeMsg(PluginMsgReq pMsg) { - AudioBridgeResp ret = null; try { - ret = new AudioBridgeResp(await SendPluginMsg(pMsg)); + JanusMessageResp ret = await SendPluginMsg(pMsg).ConfigureAwait(false); + if(ret is not null) + return new AudioBridgeResp(ret); + else + m_log.Error($"{LogHeader} AudioBridge SendPluginMsg returned null"); + } catch (Exception e) { - m_log.ErrorFormat("{0} SendPluginMsg. Exception {1}", LogHeader, e); + m_log.Error($"{LogHeader} SendPluginMsg. Exception", e); } - return ret; + return null; } /// @@ -86,7 +90,7 @@ namespace osWebRtcVoice try { JanusMessageResp resp = await SendPluginMsg(new AudioBridgeCreateRoomReq(pRoomId, pSpatial, pRoomDesc)); - AudioBridgeResp abResp = new AudioBridgeResp(resp); + AudioBridgeResp abResp = new(resp); m_log.Debug($"{LogHeader} CreateRoom. ReturnCode: '{abResp.AudioBridgeReturnCode}'"); switch (abResp.AudioBridgeReturnCode) @@ -132,22 +136,21 @@ namespace osWebRtcVoice public async Task DestroyRoom(JanusRoom janusRoom) { - bool ret = false; try { - JanusMessageResp resp = await SendPluginMsg(new AudioBridgeDestroyRoomReq(janusRoom.RoomId)); - ret = true; + JanusMessageResp resp = await SendPluginMsg(new AudioBridgeDestroyRoomReq(janusRoom.RoomId)).ConfigureAwait(false); + return true; } catch (Exception e) { - m_log.ErrorFormat("{0} DestroyRoom. Exception {1}", LogHeader, e); + m_log.Error($"{LogHeader} DestroyRoom. Exception ", e); } - return ret; + return false; } // Constant used to denote that this is a spatial audio room for the region (as opposed to parcels) public const int REGION_ROOM_ID = -999; - private Dictionary _rooms = new Dictionary(); + private Dictionary _rooms = []; // Calculate a room number for the given parameters. The room number is a hash of the parameters. // The attempt is to deterministicly create a room number so all regions will generate the diff --git a/OpenSim/Addons/os-webrtc-janus/Janus/JanusMessages.cs b/OpenSim/Addons/os-webrtc-janus/Janus/JanusMessages.cs index e2f3a0dc3e..5c108bf042 100644 --- a/OpenSim/Addons/os-webrtc-janus/Janus/JanusMessages.cs +++ b/OpenSim/Addons/os-webrtc-janus/Janus/JanusMessages.cs @@ -529,7 +529,7 @@ namespace osWebRtcVoice { "record", false } }) { - if (!String.IsNullOrEmpty(pDesc)) + if (!string.IsNullOrEmpty(pDesc)) AddStringToBody("description", pDesc); } } @@ -558,6 +558,18 @@ namespace osWebRtcVoice } } + public class AudioBridgeAgentJoinRoomReq : PluginMsgReq + { + public AudioBridgeAgentJoinRoomReq(int pRoomId, UUID Agent) : base(new OSDMap() { + { "request", "join" }, + { "room", pRoomId }, + { "id", new OSDNLong(Math.Abs((long)(Agent.ulonga ^ Agent.ulongb)))}, + { "display", Agent.ToString() } + }) + { + } + } + // A successful response contains the participant ID and the SDP public class AudioBridgeJoinRoomResp : AudioBridgeResp { diff --git a/OpenSim/Addons/os-webrtc-janus/Janus/JanusRoom.cs b/OpenSim/Addons/os-webrtc-janus/Janus/JanusRoom.cs index f0eea7b01e..b156f25f38 100644 --- a/OpenSim/Addons/os-webrtc-janus/Janus/JanusRoom.cs +++ b/OpenSim/Addons/os-webrtc-janus/Janus/JanusRoom.cs @@ -68,7 +68,7 @@ namespace osWebRtcVoice // and, if removed, the viewer complains that the "m=" sections are // out of order. Not "cleaning" (removing the data section) seems to work. // string cleanSdp = CleanupSdp(pSdp); - AudioBridgeJoinRoomReq joinReq = new(RoomId, pVSession.AgentId.ToString()); + AudioBridgeAgentJoinRoomReq joinReq = new(RoomId, pVSession.AgentId); // joinReq.SetJsep("offer", cleanSdp); joinReq.SetJsep("offer", pVSession.Offer); @@ -89,7 +89,7 @@ namespace osWebRtcVoice bool recovered = await RecoverAlreadyInRoomAndLeave(pVSession.AgentId.ToString()); if (recovered) { - AudioBridgeJoinRoomReq retryJoinReq = new(RoomId, pVSession.AgentId.ToString()); + AudioBridgeAgentJoinRoomReq retryJoinReq = new(RoomId, pVSession.AgentId); retryJoinReq.SetJsep("offer", pVSession.Offer); JanusMessageResp retryResp = await _AudioBridge.SendPluginMsg(retryJoinReq); AudioBridgeJoinRoomResp retryJoinResp = new(retryResp); diff --git a/OpenSim/Addons/os-webrtc-janus/Janus/JanusViewerSession.cs b/OpenSim/Addons/os-webrtc-janus/Janus/JanusViewerSession.cs index f8834111f6..97ddbcfeb4 100644 --- a/OpenSim/Addons/os-webrtc-janus/Janus/JanusViewerSession.cs +++ b/OpenSim/Addons/os-webrtc-janus/Janus/JanusViewerSession.cs @@ -54,7 +54,6 @@ namespace osWebRtcVoice public OMV.UUID AgentId { get; set; } // Janus keeps track of the user by this ID -// public int ParticipantId { get; set; } public long ParticipantId { get; set; } // Connections to the Janus server diff --git a/OpenSim/Addons/os-webrtc-janus/Janus/WebRtcJanusService.cs b/OpenSim/Addons/os-webrtc-janus/Janus/WebRtcJanusService.cs index cd870c9626..0c2eae90eb 100644 --- a/OpenSim/Addons/os-webrtc-janus/Janus/WebRtcJanusService.cs +++ b/OpenSim/Addons/os-webrtc-janus/Janus/WebRtcJanusService.cs @@ -62,7 +62,7 @@ namespace osWebRtcVoice // Delay between a disconnect and next join for same agent. private int _RejoinCooldownMs = 250; - private readonly ConcurrentDictionary _LastDisconnectByAgent = new ConcurrentDictionary(); + private readonly ConcurrentDictionary _LastDisconnectByAgent = new(); private long _VoiceFlowCounter; // An extra "viewer session" that is created initially. Used to verify the service @@ -71,12 +71,6 @@ namespace osWebRtcVoice public WebRtcJanusService(IConfigSource pConfig) : base(pConfig) { -// WebRtcDebugControl.ApplyFromConfig(pConfig); - - Assembly assembly = Assembly.GetExecutingAssembly(); - string version = assembly.GetName().Version?.ToString() ?? "unknown"; - - _log.Debug($"{LogHeader} WebRtcJanusService version {version}"); _Config = pConfig; IConfig webRtcVoiceConfig = _Config.Configs["WebRtcVoice"]; @@ -156,13 +150,13 @@ namespace osWebRtcVoice private async Task ConnectToSessionAndAudioBridge(JanusViewerSession pViewerSession) { - JanusSession janusSession = new JanusSession(_JanusServerURI, _JanusAPIToken, _JanusAdminURI, _JanusAdminToken, _MessageDetails); + JanusSession janusSession = new(_JanusServerURI, _JanusAPIToken, _JanusAdminURI, _JanusAdminToken, _MessageDetails); if (await janusSession.CreateSession().ConfigureAwait(false)) { _log.DebugFormat("{0} JanusSession created", LogHeader); // Once the session is created, create a handle to the plugin for rooms - JanusAudioBridge audioBridge = new JanusAudioBridge(janusSession); + JanusAudioBridge audioBridge = new(janusSession); if (await audioBridge.Activate(_Config).ConfigureAwait(false)) { diff --git a/OpenSim/Addons/os-webrtc-janus/WebRtcVoice/WebRtcVoiceServerConnector.cs b/OpenSim/Addons/os-webrtc-janus/WebRtcVoice/WebRtcVoiceServerConnector.cs index f33b11af1e..4af87d07da 100644 --- a/OpenSim/Addons/os-webrtc-janus/WebRtcVoice/WebRtcVoiceServerConnector.cs +++ b/OpenSim/Addons/os-webrtc-janus/WebRtcVoice/WebRtcVoiceServerConnector.cs @@ -58,8 +58,6 @@ namespace osWebRtcVoice public WebRtcVoiceServerConnector(IConfigSource pConfig, IHttpServer pServer, string pConfigName) { -// WebRtcDebugControl.ApplyFromConfig(pConfig); - IConfig moduleConfig = pConfig.Configs["WebRtcVoice"]; if (moduleConfig is not null) diff --git a/OpenSim/Addons/os-webrtc-janus/WebRtcVoice/WebRtcVoiceServiceConnector.cs b/OpenSim/Addons/os-webrtc-janus/WebRtcVoice/WebRtcVoiceServiceConnector.cs index 803291bb19..b86de5a8cf 100644 --- a/OpenSim/Addons/os-webrtc-janus/WebRtcVoice/WebRtcVoiceServiceConnector.cs +++ b/OpenSim/Addons/os-webrtc-janus/WebRtcVoice/WebRtcVoiceServiceConnector.cs @@ -52,8 +52,6 @@ namespace osWebRtcVoice public WebRtcVoiceServiceConnector(IConfigSource pConfig) { -// WebRtcDebugControl.ApplyFromConfig(pConfig); - m_Config = pConfig; IConfig moduleConfig = m_Config.Configs["WebRtcVoice"]; diff --git a/OpenSim/Addons/os-webrtc-janus/WebRtcVoiceRegionModule/WebRtcVoiceRegionModule.cs b/OpenSim/Addons/os-webrtc-janus/WebRtcVoiceRegionModule/WebRtcVoiceRegionModule.cs index 8ea6d620b4..9fb18cfad3 100644 --- a/OpenSim/Addons/os-webrtc-janus/WebRtcVoiceRegionModule/WebRtcVoiceRegionModule.cs +++ b/OpenSim/Addons/os-webrtc-janus/WebRtcVoiceRegionModule/WebRtcVoiceRegionModule.cs @@ -79,8 +79,6 @@ namespace osWebRtcVoice // ISharedRegionModule.Initialize public void Initialise(IConfigSource config) { -// WebRtcDebugControl.ApplyFromConfig(config); - m_Config = config.Configs["WebRtcVoice"]; if (m_Config is not null) { diff --git a/OpenSim/Addons/os-webrtc-janus/WebRtcVoiceServiceModule/WebRtcVoiceServiceModule.cs b/OpenSim/Addons/os-webrtc-janus/WebRtcVoiceServiceModule/WebRtcVoiceServiceModule.cs index a8a24ffbd1..32665310ae 100644 --- a/OpenSim/Addons/os-webrtc-janus/WebRtcVoiceServiceModule/WebRtcVoiceServiceModule.cs +++ b/OpenSim/Addons/os-webrtc-janus/WebRtcVoiceServiceModule/WebRtcVoiceServiceModule.cs @@ -74,8 +74,6 @@ namespace osWebRtcVoice // Get configuration and load the modules that will handle spatial and non-spatial voice. public void Initialise(IConfigSource pConfig) { -// WebRtcDebugControl.ApplyFromConfig(pConfig); - m_Config = pConfig; IConfig moduleConfig = m_Config.Configs["WebRtcVoice"]; diff --git a/bin/OpenMetaverse.Rendering.Meshmerizer.dll b/bin/OpenMetaverse.Rendering.Meshmerizer.dll index 1fa8434009b2c86b5286e2688d4ca65ffebf6a60..2a3e7ed3ef5e96b5d5f79cce312733d0f3333c1f 100755 GIT binary patch delta 107 zcmZp8z}WDBaY6@6t;MG+SiTyR%#U%&+w?^P6BFDmN)o~r7e89=@F`@jGB^E_Q$?>VPVovJ#u zcK2lNT<6@m&Knol?>qhRw-ztV*WTX0_@1GeSM2BPbVh#~JFG2k?MpAvSUTX1pL14k ze9Oy?vw2(Xg6B71&YLoGABH&n4Zx+b6eQtn`98)tBs*^&l>Jg}-mi?=iz|X9O}`-W zyQ9p;9F40Oa}>}0)#wzBo^~XeUrzi*f=`^-?Topa3J}|M2Gm9-5d1AUNku%#Z^njb zDEs$hex*@YmTMf0y0ZUBX0$V6Wx4urOE2R|rnZmkB~F4VBdjDmIZ0JK32_pVjI@%V ziV`a%y*i#oGwv%3<=K)2I>h-lj~DFpk)u0v6OZ!*76oKGA_WD80;!;a1r-O%JqmOUXZ>)U)+hr82_V4o~wOs`CJPci28 zDxi2;2HdrPBQUc11SQgvkSz(>6*AiQ?#;h38hUrOm+-^JJH31H?>C3~wCDWb z=95mS&eW@5TXCQ%AZ+uM_jNRA})X=f>GY1v|5;D9)Y~XA>3dtft~P`@A@ts9DQZIC~ngb?InC20y2%EY6=E zPfk>@15M>|b}Y^&D%ioMia7g%IGd{M@E?aehNQIZ?rG(bPW9 zZj7^u3U*#oRh&H|&L-;Gxffuf3g=&cDu%z}T|WXuKET8`H^w&qP~SR}pJW6kJf)wE zxwkdOcWu_4kVtn1&+eCjc{l}^2Nxzyb|S9paA5|pu9d)>6zv(@p`O(;2xv1}A((X+ zltr}}VT!LqJn*{>5E*H+?g4Z;B0s^Fifm)>M894{6tq;lVU^K@79D zt0I(0c7U84I}Ccc7KjF+yBJDlZy+TtINDS?;`YGbqD!>{Xp$2^7+qlAAyv?ImQ-M%WX<8pb6W zPqf~BsPDgQz22yoS-3Fnv7Jnpk#`gUOAx`p49p5})s6$|NYR%MlHT%<$Kdno~3tB{iGMZd^O*KWV9HqNR?ing6Y()2YFe z+U|eWbkxm6ORd0a6W*srql~nKUX}xqN?e!X8UnE$xSvUpHxywAnuYLk;5N8w2LU9v z(-c&oH6#%zpoXB{ZZ(Q=>iI$A=bJljbzZUrOiOIYqRbp z)lEAoXR7%a%tdmm=37*{oq3g~QB4=}038Y#Amis7*=*Cq4C{>cNEh~GFv3X@D zn8w1a0J7AvX%Tt)kI6593?(-;N?ciKR2)AQ#mSn`ewgR~$``P95Wa8??vLYo9oL8I z!pfRW!f-F00gEcj8IVVXqv;M&bGK8NFmOcRN~V8^!6V|A1o96ttVeQ)5W!Byl~C9i z_AbeF`U15s79EzmM6iJ&5vtYM8a37p;VWqT8<}^V|~rakcw77RDFmh zG- z24^Etq=Y4QMk7j@Wr;hrMP+&_EU8U}C84rQ6D^^YO9UI79IIvw#M9eml2Dj2(~$YmW5&^6dQXUv)H*EdZNH;?IQ|2bq@ACN7usC zIcNzYsuhq9`yA&_or4VyRSqeXm1AQM!q5t3=!hA)9ppetj)dLLacor71oO&_Lo-{R zh2723R?NYcCeaAdKG?<(O|8Uan_=%lW?}zCLzlD(Gq)ITl5IkdBbzKE<$6<56Ktv? zo2FLFypsH*gQS@iBW&s@X-PKKfCiheF_JdTK|NsxQ0^Rdb(ogWKU__nC_}xoRFsrq zt)wMo*hSKkGVBT(GVFv~6e|N7!p}x`!Yrxsbf+dPZt`GGe_S}K5MMe3jaiM~ z3F^awDq2K`*V`L?8Yx~Q$kuGoXcJW070S^|Ofro)=5@HrE=gF4H?|d|a}vhx#wtNN z(_A}ICY=STXTqkfv7d%x0#{jiLc26h7h<``l)KE)_&QlnOE587U5whnpsK1mX&w1j zYXpqr3?mN1po=wvPt6PHW>!`I|5_yI)oM_Bow+9tmPn^Vr0qFE$_I3&|QRZ48gz z@@W17;*&j?wT+YXmP3w8e+}__3O>!CGOF!@cWB~aT4X#HvgNg+uewy8ST4ETWtpk5 z-bj(|aK@U9$Mn2ftkx6LoZ5H-`hA8?oYuuABkr@81w8f`9LjY^H^%aODQP$=8f0Y7 zJxLc%hcV>89mUMS>;G=hYGr&lw^WPVVeomItNOxJcOboNn!|ZZM%u3Fs2o`peNfzr z!D(6y$D^*uov1nTYHYPWpVytAZWLbLqm2+LvN>ZHK*Vc{oe5p#ey29b8Ji7CTI4R{ zipwK?Xx|YOi}d0^xc$nxVmC5Wi_lc31?Ny3X|_3c;f8Tlp14NkolX=R5XFW&UnhYI zhd4-$Hf+VYY4l7fmAt{JmPB)=5W9$|nOn%rZ5`!?T%% zMD7%kdwFCi0497F>=HmMi=ZI6MA+lM6Z_h))PK3SY8 z(vf14QYOw7RjNNwoN4IIWawb2FG-<|&W>=V^xBmz_&vs#SGFjl0t!2($hGZBf03%) zRY4(dRa8f%&(txUnvFC@hs*PofG+flU9{OCs8u==Y5X1DA6;hphFdg`t=x&8KLW)eW8owO!|h|gfl%S4hZVQaZ^PFc&&_X# z@ZTbAdo{(+65-WX7q_D%^4tkEC%_9xEnBNKTC0;-9$Qkz{jmV~61f1eJ14W{LjV@( z4~ygHLqguha&gD}iPiRcqr-yMr&;@k=w+&cTBu%BT;V8@4MZ~0eF=|!WI>6X@XW^t z0b}igB7UFo+=8|U4~j5&4aIw2)3zVU;~?Y{QB#hn%^ zHOtMSf(Jp91;5XDN?;WJ68UU9NpG+!2tEqfV9}@i-6` zszg#w9Q~M%DF$9_fV6xw13C>-U6eL}SjBkM5m73v3sgB9wqtB}l{p#?(LLe#$c+tp z1p7rX(uqSQ`!S$X!h@6PQH6{jt_|q_%_$VhPvYj9Uw~t(tfg5ZOpx~Iew>2h?vD(h zI>r)}P|Qsroq!I62WZ&vNX}X0#KMJWoF!p%XCXjTwRgfHm|3MulrOdt`O6`L9$rN? z><3uc91(~AJJ@NcU;3j24zvMM7?}%uwv-Y=WRa8*B1&S)Lj7+f9M|i*&;iToF84wT z$irVag^+ka-o>*t8I{k|WL!K`lTmuE_Fo7a_C?;|ltW@=`wG!>^8(XNVNkDX3QP)H#c8$>A1 zJcHmA$;{%BGXZfMj9W~w>a2wI$q6YpVF*rl7hauR6MJzNS^E}B9+z{*MN$( zGt>)RaIVdUzBIr$8;5Snu@Ty^G#}{nn_5bm@%z$2N8uCQgA!7=TSoGSZt8*1j8_{? z%iN;UTw3H}bix)L26>qlh+K+zOrAfBV_Sx9n?R$356FcQX>|4hT5ckZjz1h!aa6d* z;XvZh5gQCO3ZRiTV@WSxAfZl=-bS)E@h$>&Q-SQU5l9ay+R}<%>-KSO`zg zI}XLyK84LeYhaz^iA;o`7SI+=4rjGX!L3XSXT{C|(dB3;!4YF_>|B6~d`Ck^*FXzq zIvRRe%<@z%vXe$lN5ilr;yOvZB#GEeL@jcyar5##UFz1LJFZ$gO7-(1!BML3lEehn z9=R0|E5V4$KEHK zoSKW*uFB;ZdejkFA$YL>c#YGb&mHikl;x&sIEKOESmuG#oR4nF*Xa}_U5k~#*)qyn zJJVv*VCIaIQDJGZ=@hloDvFGXosJ+a)&Y_g?>NK7J+Ub6l;KHxON__y%yG< zAVv^6;-EK$`emXiZ~$z*mR1T}Lr<|0SXXbvAHj8L0<9(DwVjPySG07@L9rUU8xO9S z5Jg5>M!=U^mgh|Kq{e8RkcPyj!i*A6YH*k@)svbQyV&TxGUPyRT5Pg0W@TOxO|y|3 zAYYc@O%s!DP?UfU6w9+cb`Z}rR;{cXlh02-pXVTVQKWZad*67GAS{Y>gDMiO3{bUV z?|r_y55|2lE<877?Ra0+;H92!UkyAZY$JHq8Ol1<`h=1iB|_P5r}5QA($vL2RQ|0D8SVf*JZeF#Ih$*5Ufz%Mq2u5P8{Ig-m3 z9wnq8K0-v~6RC`VtE@$uqc}LsB^}5vD#jKr7eerLnx2AZSAU?Q?K0CG$&!}dSxPTC zTEHcbK~u^`dW`Q^7uL`M&nAjs3wITQUWf2JTTtX!762w8MfNgVWT|n=no9i=5UFxp zQJxLWc#9D)`zfDHVJDz(_J>c}Wc#>1ZqYu!+R%GZ-{{0_JFe~kZ{sRLyHWfs+($v? zRfXq*b`|8JHqkWh)Gl9xYqy{5)8S{qVfCJLY)(^DwP-1#Bq^#SDXGUcB^pmOWV*A< z?Ml;spvbA(T{L?}T9?T-+B(9D{~&EzY$jEbO{^d2w6+lC5r5qZ|6>b0_Q+%KrO2xY zd>JX8jF@9PqMi)nv9*;t1~D(dfg`?(hi0? z9gAb4Bd3@hIXORfN<+xZz;w@emhx$ac$RdUNA~GJRbS+v=Sk@NDRNYd8)5bS_Z*Z; z$57BN3n|0^U`d+;fOz^rQ%IK^;C3EYYyji~JuU}Gw)L2P)R1qQ9zb$Aa%7ejc`_3o zpk#ToPLcyemKZm@EG4oO89+!($8UU?o7_GFi*da`33(ZqXF!gIuM6J>Jv z_`z0HY~Q@`j-H%fW*ofp%OLq)HIF*O;W7E+T@DS?X0bbVnQ`c@LHtsq_qrm;ox838 z;nnN9bvLD3jtP4cq@g3+6Y0ms6�T{IPBebZ)u3z==T~E1}48&QD+=_&xkk*qhjt!I} ztnukRy>$|aYVzq_AShBsweVz-)Fihs$qh;5Rwj975;>f0(i;U`>UKF6O%^YyxwX`Q zREXuPBSTq>Jjcg$W7EAMos8F<0dyHt&%`ACR<=_U)XTTMMFzeUtP0I6@ai|c2Cg*8 zjuTl$^{dI}dy(4+H0-w;%jmz}a}w2xO-zX>n8;RR({c9V z@;SsCqru300+>@gjtI_CL^OiO%dW_++(W5aYLPXl23MJ1i>x(9Z0uNJ)ru?N7Eh4V z%d(xC=%M1J5R5ABR7dpzv~lEiZayz0J3|`GJZB4AK$oAHnq`lyyFT?sd8yKQ-X3!C=S>P zAlrfl5}NHWSOw_I2*>NT4jR5xu|xwxwh^*t(jXCg2HqY#8)XV&OGTRTD7?a!8ruQ7 zFU6Y@!N$myw%dy4#sY`IDt89c$@DTUknSwcLY_ve`$J`7gNp3%Ed4sNl8(LXj4Z>> z!ebN9m8q}UV&@s-?vL>Mja56NIYY?mMmfYb(w-CFl-zHey7Pq0-hv~yp&)&DcbmLc zTI7DzTQm=E?BSSzUj6oHkqscZjO@)h#-^QKqv-*+b0PF#?|Qwl_<@}4hpDDxi$KEg ziqIIevxTwifja)Mk+HesSYnIeQ)Bd94V^w{kxd{Li-%dR7`hHlXs9eEzY+Pm#3KP$ zF-G9WNCWXJkzTYyBoc`{DB>d!4;Nj32Bzi=EiDi(iYN1j}KnBe2_tMNuP$TUWytlN!0j zaBQvQOO2YX?K75wwY!)et2rV!84ZHIW^1jW6S=KpH|YDfmWNSBS4E)Vai~d^@2{dE zRFyd+Hyc%t_>1XfH+NZg$L{c`4tO(!%2ZO;1!qCzfnt!;B2OAq9%;>=Fcv;i+LOjK zckQ*PHzb+U0mFevQahh&QY0#thkljrh9!Qp+Qia2oizRMNHkrjreTc;(ML)3z(=F} zPUGT7H}hwWvd8N9R^z+!KHy+qlR84DFF^t*7ax}ech%-LpW@zEIB8i4C%4pLHS9!*8 zK9TPbv+2V|^oe1@#!BPou6D$L=|cmZ!$$5mv%O+3!p6}oi@#pZN^Ve7U*bu z7Zy@@vBafevreYj)i#_8FvKqH7j=hM#sf(>tNqVTAWTb)W@x3!Bg3b;wRJ zHKe)p0J_eQ7q`RViW(EVLwGd%XR-LY@Ug##J27zMEljoh|*_A_}re>DV395%_t z;aYfP2b=+43uUp@#^z_Q%Tg1|8pvT{c>xp4NlpS-&%c2Ar?Ydd$=SQ}lxR zAk{9irs2alKXNz3qT>q~&SxT|p;$>thCDnRg&}=1su>40#`(|p(S76Ve4yj8i9q;#zz-Qq;;c+a$km_~v*OTb)NWtu-u4Vp0FJM|K(gUW^P@?IQ*(m)3BPB}nJ! zIhq6K=roE#93eh*9Y#mo4lzzuf1))!YRS`HQMQ_~{l&Ap2)$*!Yz=Q)5@pr4hL7W@ z$kuQmjsmuZUj#DFd}(yodtjmLBi*#7do56@HLbTmYpv-%3;4CB4FVWnzBIIdJbBN= zIR$HwaH&IdUM__iGbgk(DqBRmtYucO;f6$Dh{xM?7BW11WA(IU8 zEoK}dXTglvb_80}!zLLbTV))(F7)YVp(gSMxna{I2{MnGaj3zL4oA=+XiblqWT<)E zj3?)`%_KwQ2{W!lR7Ot<^2rF%OER>k?WP!-qiKf;%s%qAFzzXn47E?2ar5n5WBaTA zs%K29)gwgtQ9u~JGm$C##9KznYlTCeGa2Z5wBUg3^Cs!&Zb1X_G2No+1ykJW70()T zUhB$VG`7AL<}Vp_yW1GQyq4~G8FIEXW-I(}#yOdWTS7ID_ESG;}1RgKk{MPF=oUbPDDg}p+N>tuMi|vN0*z3lLZ}%-a zN{~)VOu+(6aKqarRYEYJG!|klBL2iVikYCVnSj*4VWhlMtgk?{1gjQ0ZgJQ8FRih~$avob}#8tIH=3aw5d;;u!XWbq{KS`4M8M%_~BK@zcHF;!M2 z7>h@V+2EIFc+%virWVhZnK))qc*Ifolz1Li7CSL6iLIHLg-6pxRjd74h;&#&?po)u zIwByIiM<~tAI|CkuYJuJ^XCKrZnzS0 zvu>#axzQJuN@39%@8=g#=H*@owwttUj?td5b`stSZ+HrcQzJOtem^&<6z}Khv}64< z`^&rhiSg}^H9iyDPmwEq-c|OTBf1kax2z6nXsgOY%HoX5{VJAOY2SmWaoPvLGbd7s z>HJx!Uy37koE->W#fa}HqT?+QcTEe3W6iAu;xi|}dqPY{NUZl06MbNTleJ@3 zP1CjVbX&rT$(FEU+M-o}x5r9uYqC~Qc(i^o=(dE#(@w1%@7yk;BzqH*SPK%YmS`B3f8UmJKpPEUdw)m2i)R5FMYCf~1rEzaj`S7QSk1PMeIGq;Bq_*yO zY7>m>4!)(wsx&HOVy(?4v16=DP}9RwgUUx4b+t@CN)3q}qb9MC;=n#1)0Zq|wWani zn}EcU)#`~YD?iWt4@%kL7(K~qIwqR)=amJq(MQ>ntf$7(BWvsUl|@p?rGge&S;pay zTm6lTe~#40xcIB+05LFVWY|vvZ>{>sY${S=0&Pw3f+LoxizWxEi6ZQzKA^ENa1DCM z;L-dM7X&Gje+tD$@xGEG86^d__%_St5ISv5PfEeqzPt*YHQFQpQVPBlbV`MfN4~{IrrV|IcDYNGV@i3tJz-L@Crm167iyoAai_mO)k8I8 ztALvL{9}*LKX@;f<{x{){3G?AhPOJ!-(M>(x7#pN*%M|edwc@2*~Ls{Pndp4xt&c> zx-%1$XR6|ZCU(iZ(RlB(f`pk33~LU=%$8{va~r7fJ^BAumC!UOt3;PR&=r#|O@#Qp z8H6}4wuzZgL3->t{6DHLH8I(ntlF~RpJrrBoI~wRKblTf zR*?XZ$MNP+dpsXo;uNaeX?{^XA=%X9&7pQRVj_unc>Bd)7)x`dnk5qKBV&IubF^pa z{CIO}lC=qQYC^q|p2Uhh-kh4GCSguZD6@W4`^-MhoSIl@F{4(h88yMXm2=y~ZyEe; zsrhVkj@1)ZPf6x>NUS}}n~o_pi5=}ziA|j_#~!!xXxbr{A-TWOlQ737)ZWpRcbqvk zsq#eajZX9#wX#Vb8pV)i9Z7V+@MBfLQ8`MJt;so|264zn!zX=DL4U_Kl^lj-|3|-+ z^SC`>9=FHmag3rgkJ}UGaZ-M|)cvQ*#n@s~^SwP`zPFo)qgdJ5ZDPK+C(QT4^8Zk| zTo@c*Iq9Z_L89(Ql|39aiAi;&?E1&nKZ-2Y4YC?%qolM-__J!1B{f$Nc5?;s;+G|Q zd<9{TuORT{25Gme6$GN&6GnLml;1!8o2>?n-Y*tH{&*K zq@S4I!8X)Zo7kCsEK%u9tVTmXAC`9&=qIE3G5NX&PgJTBvK%W zG>S+;W7EN~9s*+_o$NiR2OmBYm9Gf+$!;#VL72p}eeA`9z_tEJ{nFP)-)5 z6;ZHjiBrNj(Q_>vs7Q2=6cD9KQBEUD>jXvO1D!}4qEJmlhuZ|DDNK8qLSx0D(g@!6 zciHafjR(;7STW-GiaXMm;XYcMRbugCZH)tm+IR1G9!}7k7+Z~dE!whh@QjAZ()`y1Wg2TZ+5AJX0U?m|6rv>k8m&F|I@sbRi7p%y0u=YidR6E!$K?(;4YkE1@ zD?O``0;G9~hL$J{N`#_Y=1Rvh=c!Zc5d!aGKHk`#gTHG3xuE{%8T^ z&{5>`poq5=@l5Cluz{uS0tXu?ELxFIn%Wmq_<)bXQ8o&9rBFCs$P|h2y$Dg>6*4!$ z>K1HyJ2%>FjHtA>0jidH?MP<7E*fg4D8d;cT$D*jM1I@rrl?dIpUW9$P)p@ZE}_=4NZ>~)t10_^F0cR_$fQA1wV+Dnw$ z9Crbnn-#byr2nVD;mom|?~6+XT7w>OaryVf=vxA3vn%!V?~D5Z29O||4QWTn&t`y~ z&3Y7nUwkS4A;&EIMqM_043hJJE*I!NfkFzc5Gao=pj=r&#`ne7vsP@8$o^_gq9uao zQ@mw@ce-7d%v%I}rl&-!NDCWTPR6uiYlShB1gd1)1n-bS--~pU3#o)%n4gNvdY4kV z6M;x{MG^6auqfi$?7TYSjQ}Fayo&F2z_F}MFh>dI`D`HZ*sT>L8e{mR9=K6tF^65s zDP>O1p!8CFF(*-34WZS9kj0ZlgVN`)+ZF2V9+ch>=rW|sW;eANls<#q#oiQXOX;9= zeFj^{_6WE;pO|;EF9iB`D?<0M?*ytUAapPLO`uL`gx2Gw5>h%TkI;S0E07x*&R`o@ zfj~C~2yMjpMv_0ZB(#ZD3FPkyq_g{3X92HnOUwt@2?A}eBea=K)#f4LqH-$5gKWM) z*VzdjU?0-|=wPLAwtnnuR%)}g&SpQP6Z(Y^(#0^W!k>6wfjZj>th1XCd5P zL!rF~g)8zYe5DhGm+LL*_JEJV_JwERA*ip%2!yqT6A(V)`#hDiJ3H4Ses#-p5k6Nl z8R6#qt|^c#q3~y9z}ew$4G1r6r)N9Z8zl=7zLhlr;VU_dLH|O8t{$ZGP&W!CWnE95 zz_9kqvOVmxmh}j0YHmaLf%kTVheWv1yAkncM7Sq?M|Krk+3ICbeyDy8@pnc1<@9}s zUoGN;+kcJt(;|Lq#Sz3eiFm&nhG)Q+)ukY8Y?X%a)9eX4vL6@eg44)P3aOOm=2G}= zx)OuzNB0Z3CVr^Yr+6R<)J>maORrE&&A(-o6-vy8j+vctUWmqfHywE!krN7lX z2&wd`9m)2BY6@kEFRB{~#@(e<6JJCqlw~~vMVze=nVp(Tu6K=SvhN^cme`du9Hr!? z6wc12@azDEzlKFTLg9NNJgtu6+w~f{E%8%$cLjx8x>0EFLE$Pv?=KXs7xWeRME@w8 zLZf)NsOr&(SCouH*uIcLN0h>nFoi4fDeUN`a6^E?RU&?RPl|Vs=ybF9ps=)n!cJ)v zeu!jdnTiX}0p+J+3QzBOj;AAw_Uz*7$XX$!4mQqH!Y<04kWFE|2+tMa=cz>LnnIyh z$jJCl4x(fU?qtd6;woW{xzmNvCB_H87V7ocXUyGz4td7hXGK__(KY3axwGsP*5!`& zoH4gtgn1&gl@n!W8HHzyu&to{L&Ud;aES;Hh;WVw-x1*y5e6Y&#n!a%;yPpQ?oM5G zWbFr zGIUTp-AUndB3zJ0as4ZCYsCoMBvjlXjMyQde z@v9Uf#NP&Y65!Rlgb7a z5MjPEQk%z|Y?MM&KTdX@LSNpL$MXhIML5|tibfUTWJ?u#w1&`a3bo58bdN$$bbQt0 zWKRh6Nm^R%O-;N7AAZx#Jg>|89wc}~v2N?w7HDE?hQCkJ9#ZD*5y!Hu8^xu6-#3i6}qo=XXa)L6{>Di zhkv5@nL-o5%Va+&^v~9H_$M5pLee?k`BCe)F`2bjXkwc^c<8v@t){?R%z9g>q_4MxjS}z^UQ^NszacVJp@kV$_-7Iu6l`K0Vb9e}ytQ~8s&=ecGRr7iq4|RD5ov50PQjB+s zpZ8R=a}|nZjA9*FOrgmrRY!J(LZh31Lpk^<&AE0I=Q%tC>B2rzygw>W!|!t(R_Oe0 zXm9p|f_K5tKFp5|31j>DiPe3*eb~Pgq9N-9_JcxGG1i>GmeOy8 zKn;y2ec8trdfwBQrPG&y_{UCP=5^8fu|)#yPrIdaA$B(_75boO=E>fE?0E%S^=R&u z!dvLqwL2ZuAU67BMvuBMHnBwty;0);suGC$2ca$kT>&)Odm=l-LKD6H*%S+L%raM4 zXsY*QcB??7B^#fN-)W-e_fmMvE{)#P+53{@q)~7X+o#Y|-M4xMv9A=`)h*1f1~$IR)S+P>hJS=hVlJpr9#a;w|WM%&I;wUzsy_DdMZ@Z{z@SFvx(k+ zL-S%N8*-Bu=bVDLlXvp2_2O(&ATs?1uY9&;V>@|2?;ROq6>lf+<-OZG-a?e_T!los zW}b?%^I`9l1d*q_(~?BGKtzARdtrjeTizLoBHo!6ub+3X_hJk6^6pDOoxBIUm$Ct( zn2SS;+x_6Zj2)4P-IIP8=!Yswx|l5on#JaJkf=lZ!@74iyQHIp7q|VxJBOWDBhhss zw@+t>YE9(#&11P;CF&h%>AQmURp`+UKX|WX`E`yPky=YO1OC-M|J~XoT-ZcCCe+-oY+9e7CTd721U|tzhpe zbf-X{2_$>T3U)xC{b}UPE7(DWzHDxnhBl@-eFZzLh%~3KV81FvbNUMQyFxUluVB0% z*}I?9l4k|8D@0446)a03TJo%5=*dEo#*Y;&MIWjUv)o zXC*6Ah}Jr{vJ!=8_*umw3ei&MHWpQgmO86hxk5BFtzjK3^n7zS7td`;>w&ebn;?IZ zM)Uew)lZYbgRQT)v1cOFn2IcrcPIghVpya8A?kU z)=}$Oy+U7QhJnsfXn1WQ&~TNGCdBn@q(XNz=el`bS6UHmVCSd=v?AKT&Qpk1L>t)o z3ejR_1Dmdpt4;HCH^xw!NjI|@lFDf&-OMglXg$n+kX@?K>zH#MVzX6xTK+u5bcJa7 zvxUu5k~BMQWmhUhv(r{KUm=>E9%Bmxg2y$drt?zI#?E1!Q$8Vy&L=x>ZSI{8XWQy| zg1swW}_pGYo4e!If=Br6bT9(%KJt#3Q)+n;#zSg@0W?O=B)^p-%+ zD3o274PN#DDVbdtNO_8lROk=Cqxpk$o&h7CX3r?%)o__-*rbzXf;~|7EW1)5Ie$IN zo)Kt1n^H9}hy~4gyXn4o1 zo>$n<3hl27;~&U5P8aE%w(6~(SD9a-&K<(+HI}c?$sM+OUSq`y`7!J6VigL#pcfOY zQE*7%gT7s?yF&A@1m4B^2_zeI7aJ&fVrt#RMp$S_`fhffK=Z(R#P>QoEYq=p-XFYg zvJ3G$2{a4T73}c6$*xl9%DU1Qeeba40?uQE2keL-O6&J9Cw`ScI-rB? zVbvD;E@cnvWudoyd)Y*Rq;r1A7KmwDI_F31D}~58KVnYtGS@st&iN6mSBTv4=PaI) zx7G78dt4F89Y0~6@l29Rw5PdsHqWadU)#r?6h!H3``AGXt@C}#^2M@%c-xwBIGYFW z+Rxs$h}rB5<`ioM64}_iCR=#dV~`Zy^)L3|7*T9S-t{jwbgV#VCI|bHjh0CG+L!EH zg~->wWHE)v*S=yGD@4Bb6`QLN`O^WmK%pUpc|bQRv|0~!(GIZX0?IZxz*b8pvLBLu zfZ4|}{4HkQ+`Yc9*;IulwEw~T4Ldwh^6rbIIlf_I&yna`ZJ+NT8#YOz+wA*%hu8sy z=B4cOeaj+~C9lGv@AG}fLQ@n>-RJwBU7}D|=RV&LY{B`G_ao4ctZ1r4ThjLVequi> zlKeLM!sFah_Zw?DU1m57rv1+PDbydv{K2Lvq`?@*S1R;05a;|K1N zK=atskuV!tJZ znIyTB+oO3vM=p}+)zW|Z()rd)B>E#i-<{6K&XVYx`~%=IJS(SkMd2BkoAxO5J$5JQ zT<<$qGTXWjL3F!9YXVO>(s{>uir4BV@K!3+tLMO!bRM~ac=Oo<_9K)|p`|IBKb=p! zQu4ZHIDrbTl4zVG6X;`w?k@BLt=8ugb0_cVXaQJywM4WVLwObYyhj0eOBV>9*j1(T z;I%+}8C%_^7`(7T@0FJMGk9AIRrxb{I}3I8XYtM!>h90xJ+IZJn)gai@OyZFi+PgY z%THHmM`@Mc$Inver~K3Xem+K__knWwB!xc9AL0-27$K~n|7bPBALJJ+-XE>T`9plJ z;ys!-$)C#?T#FwKq*AnUPxH6nH!9KPftmh1zFeVjt2zFBzFMK0o>%!>@^uQ`X!7)Yn=J31cp7xF<1rQK6% z9`_gV^A<_eRP&U-m`_|Rl;S+4*x!~~h%3sQ7Td1=?%CEFgcYhgQXrUAQ z<$Nh2ozo%BN&X7H(qf+OujIE|Xow&GXu?7x{O$RJ78>WT;@d1V$zRQ%wa_$w2mXqM zX8Jqww=6WrU&Hqbq*L}+`8)B?E#^XhXa2Q?milY?j}}_#@4|nx(Cz-NJY|VlGwc1` zc!q@@^w;qm3%%s;&Rbe&x4#E3mPkkT@A!N23X8ed-;38+=u>}h-rYj~^7rBWEOgL+ z0zb_{Kl=Ofp%(hp-;a;BkS*s#ey)YwIsN%`h4gQ0d^rR7MHVwJ=Oo@_p*A@u^Z6Ev z=A6P8S*SW^AYW#ot~sajRTk=#a~fYq2>rm<;pCjtd0#`Kq7G-|48l*Y5W+C0V~RbK zZxB$iHUl$h3OCK_Qr?r_}Su6eQc~`SS|V=}|r3MM#*|-Br)OP&_hi2>)IoGHnPy zq7a!jgs0quWT-VVZ3xd$h)f&8a}*-e^dY>Jf@IqeUZxOL+Ynx>5SccF_fv>W8^TW| zBuv}p8Nw$BB%5g{U!V}B8_Jg}M1~IKhZG`1hw8l7GEyTg9m-cLM3xTaKN3PI$kL(w zH-*U1q1@jrd1UBN-dZ6tZ744#1f4SbP6Ej}btoUHBuUFzT%V{QsX2>Zq!6h&i#Lgc zQq5WXMuAAp3g21$aSQEs4&z@~C>#HG)4N<|Pt7!(4^W6oKb&8p5S4y7U#BZb?KGUf zs}PlbICtJG)llh&^DYXJ-NX5b3X$2vdA&k3i4W&jDnyg`aQ>jl!z4bOzo!rta5(?u zW}5$0MGfcQ2&Sy4;XLD(cqvBk0SZwmM(_(1qEd|D%N3$RjNsc9qC$+||5S(yF@k5U zkUFUlBY1EH&40+AN-=_$D<+j<1g}?!N-=_8V)9T5WT+68Vgz3;5SiV_HG*#;1fQX{ zAIYCqh?-&~-=z>`Kazh6g!ykLqYOv#uN0Gv8OaYTL|KgF;%{Ab0ZGL7aPZk48ymeIVILTyoNqxk@ZsDPvSaDjBW%^%Ij3rI?LJ4f>c7CJ9y z4FAkR-Cbk(+*OnXNpAFw<1KEBXE>g>Rfvok&pRqa8II?53Q;|c=aVJU8CBGHzFaY> zqQ-OQYN?beYCOM0Au9cNK3^cp-T^ghEQEI?_%;ho%bCDGO-MJ9A5e&DW+MMxp#5n& zJ@lK%-D?>B_NTpsv!{tXQz3e6H<9Nl^g-37ITLwAp^sW$4m41qiES3-oWn;D;`@0? zk6djMpRCZm84GgGh5qI7p6Ao}x25#g%1=`7I53qy} z6lg!ct-5ny2_H)cXRq}oeF6rbq4G6e1^G&g<`zlH}dX`6h+P zxtH_wb&^M$oaOvdg~$-;(e$-9^Hr2_3wBez`6*C<48xt!mw&_}J$3oPdkC^WIn z^uW!02O+rLmKHMuEBI>)-P&z>U?u-hp}ZQ-R`CN0-J3Bha2wZu5l~k5YMy$xRC8PP zyufN65@Wz zu*FsWJ9zthNDHA!{yQ=MS#WvaEt(vP^X>|)=X(^oxA^|RMtmj*&{FKX+H3AG5;-NU-mc{c!n=f%v%cn9oWg2TIi3!bNo$#7PE<+oxvCQ zfG0@lV)kiwPw*waRiRdqyx=Q*#*>nFYUkyF*ZABW6201ed0-dcrI0(aJg}P&dy3{C zw8cf9;^6CiB_N@(q4MAx{CS0D=XDIe#Rohsc@MR(3%R{kQen2rdgn#sZ%xj;OYMKg84SvE0 zDCEri(Z7$Mr_iSvrv^Xe3j|ushIOqEe#W0ssIqf?@N-`DB57I7J}<2g?&k{?a)#@J zU+~(Oh^H@RW4hM||H;=0xR@PkTOa%vKksFk(9?Nj@Js&LD}@;8XLOlK=RYlFY? z-4e2^fR6Bw6*|;mZSXff@=YPi?x?#v_&b08Es5&F_XnBge_Nt;<&Onz+IjCtv>Yf! zd)Gocf~i{jcO@@SaFySsEl@}g6f6(8we1#jl0RJwy=RKP7|hTnD&$5pWoq|YC@&{l zdrP50^dFD*FNI!fe=y+Heo*M@yzK$M*86>_a}`iP8>!IGdZ*WeA?@8glDXNvCzz+r z*elUm_h-SDn*BqQ_gOHkt+deRf!132N0Rq*rvt%4ZRsZx?ezQlo^&byVo5tnMkDwB8DRl%415tPNLaY5TrlNAp)J?lZp_)kdlsfG$g5QFLK8!Sb*?G41V2?`zQzBh28cDX_~Azh=kMxkBE zex|lvq2~)Wg)Y{P=oWk=beUHFlWELTp*h+n3%wkgD}G>t-0S&*cSBccP5(9}KM5_+ zuD8&aq3g7j7WzK4NV6X{C69y_Ynv>Tn!8lH{bx1*JzwC>ZPq^i#T0Fsdy6*kR}+=w z-m0y$P*v_~&3?q>bUHb$Y33aWDN)NZtR{c`WtLcf`kgL2nv&neW!y*IE?+x458 z|GK!Va_`rEQp^tiy@3a{(%)smRar|yTeMLMO$OSkEmmkF(4*S33Y`V?xc0L`*8@GF zRs12fbOPG0jZOLj+Rqdca@+j*y%|V}vFcWzNk_*q*v=)SPb_KKXz24Wf)`EEj z3-fLE*R+lbwbi!ScWeC>I%wNwe?uFiP{)*Q_P4ZY3VjUpjyBgsj&1h$G((}UQ@7ba z(C$=dopYOgul9&Q`W0+)+BW+~+H;CIfS0pRwD%Mmgp%*mzEUV;FK3@>_y7fEx`K^L zDaWU4S>lb&D_EMN9G`o&Hc@Ih+pl#{DBvt-UugXl+70wi?JS9Owj`~b{Y#sym_Gu2 zsm)TTl$EouwCfdG4bu*2w=1-f?e%`G-K)?`0zIJ67Xm#ZkgV>nwH=Drg!=tjdrR@~ z#+8E|)b=XoBxHf#X2PF(3(0#(A$rB=g52*c)XRHO?)MhzMMv+-2-8XxM_GBok-1fW@u7Y2+E4)73I8TwE`fS?Cyn>z*%~9*tr!^R<~^hpsey7fH3%!DEyuAvu{8A+%{Nx_fKEEh)Y5FJm5kSfCRD__bD; zVP_Pjj#x-sBxGn)!{M#E@|ravxFl z!p&^#b%b`jke*xzHvD@^q91B$(vxc_QJb%XWR9i0F)SftX@nGAC^C~-Ci;tv|C#qE z_;U08)jU_P5e2?n)McVu9qqWX;+o(TRw#Nn$)StN~Uo>R?N zG_S7aj^^dC*oZER0x8tY^q zqJEGiMQd!SuvgNh?J_QH zm+=oVB-m6bCFPfFq9n@yq6?Btc6=i=w!fSTMO=+-L}+90i8=RKw5`S_iK;k$+@=hb zRWUKF~AO=Co-d>c%@YpH|0PY0q|S z&hE-D;+HpnUWc_pe9eN8ja5-245%H_5|KlzLb4{ zca+a2x{jMq3w4anS!kAf~0&ps~2vHMAg z)AI~ufESl1BR&lB_u|WyvxUsrLgs9?r3F!L?M6CD@@z(D{rZI>@r7WFN0vmI%&Dx4 zMd$~24mMa6_J!?R@g)dx>jh;byQTB5Y$9vb<5xBnS!VJ_7=4fO9=kB$z^_A)K4P9YPoLD*<$nK59K5VM&kM_!(MWuRHicQJD)x;-wK2MpUMWofKaHJ#TvS#1$M18_%$++wVFnl(1`rTM1NkMOBq%>j{E6af zQMoFwwT;wL%S=ieP`?K0_KmciwM>`7zPj1&i@w%GOD2lFWQ%Xws#(%Xt(LjIQcF`3 zeSJUAp>|t$|JdPm-}kxCdCqfw+;h*JIrpAJozkpDVc6SyzHPKcSvD)SBD;g|>S+8J zCcl^4pbZ|63ak+0@$}+8FkUPL2Z<_hsJIgxF22&%2NxF6Ap8u>!asB7H%%`pe-$D< zw^*C@N7h-*rjZCE4C?iC~g+5LpF=|m3&08Tb0;NJoUg$_qjiYhZN=K zw#*)3C0k^^s1PXuR7f$c8u6u=NGqbg7RA&KHi^53UlQG@qDQDn#O7TSr!#;GuNl|k$5h-jbi)HJ@k)IB=Jc}hTgmlyOY7jVj3{( z6yA+)(4K@pH`OGamT4+pnzGGNa*mSS^dugtS7?vtT1@#URG6tn+~)C_xaty2-Rgw5 zijaG#sa>oOUWaQZCwEC@?~-;hm{>vsCZ^|(Hx&@KmvJg*X)0$qO0$#v1H!Q!1~>Zx zm2!bfxk4+C>Xv;fg(<}CcP2d-tb;rCbACSYwA}f`zw{R=r;CWE=q@7udB2kQ$>LhY zrPMm)hKb~jD3f`EvfMyh<6Kln&)B_YW;hy_m zPAHoYiFS=tSA6LKVV4n_Yb+wl5u6N={2t7w7KuQd@Du!-LD#pu0=i=I!s zV^7s9#EIfeaC~;I-bp1X1GP4l^$z^_MhWWZL~*%ZhuL$pzye%$`Es0lkzOpz2QAgB zM2+_`JzxHQ_#(XnnVUma8HjvBw@TgnIzrF--_lzt$L-fzX>sH}$Y=cr^>);97wC*1 zsI}AexP0N3mHv;Ae2w=ESeEh~ENi?0-C~uEn19|*$Gig}pN}a7PiK~be~FoBsgl#I z)4jx;_~kw5z(r<{OQ9yB)? zRyj8Bzl|freR_>-bM7|kC@ktdko$4wVI_y7@@u?b8trJeU3!}eW#Ta=Xjt25PfjFw zA}ay>G&&39Yqu?+F3&dACcBAm8r{So_S;qL3@DFIT;r0`qYW9gc zqWv10SWLIgD!XDnw{@c2XKd}@d1w+MKDV_}ocjv+rwnOtrC;DG@QLlovGxXB9r?m1 zUP~@ispwk1D#lKFDNfgR(n7RUwm^lmb zJF&AJ?Q($=-*sAK_GqrU&-0l^c)qO@{px*=PE_m?M~h6%V|`C9a}t)DX_4zjG0$Xk zH9na2w4)DM+3w(K-v#@>Msn!T6y_gpWzL4r7CAu4xk~O+X~jbhw8*3C;CdJvomX;% zGP0`(sY-UKEDlmUrZf+$Pyr1m9FAhVuk=NVJu37G$aQ2YB81jwvMfBQ<|ev4_83Z^ z8g;?Z9*_~ZlefzNrros5r8rv^Vp$UN+2O1=M;}C2>h$Cbz6!$8+-^ikXN!Ehn6vw` zN~~AOla&0GlKmwddUgnw1d$%E&Do1~5RO>iLDM3WRp#DQ_JNJqaVN^b^(yj`?onq~S4NYRzE0^6DE)^@_9}h3lAlrfL}h=E(!Zhf-z)vSN`6JjGnLJ6 zl+FE0ZpjaD@^R|ie+s(g-Eydt@3q4fv%$M%fnu@Zc(BVn8GI;ux{_ys)1vPJH(2I^ zYb^7@8S*}`FX91kaKuAk>cACB9{}5it_3S28v;&~;BOs~_zJY$87uhvMl$4eWMI98 zqfSF}XrF+X0R={Cr@(0KD==338cfi>1(UU_;2C9qPT5~j_Lr3XRb}6&>@{M06S2KP z*PQ_*K*EIt$O1-^1FR%Ycs6mu^N16kPn>Wyal%*04Vymlf|~GyCXoOdVle0sw}9ay z1B?_oV6?~wW5pOSL6m~YVgfi+Om!InElte8L8iC^%n`G}QKAYg5WfVA#6p)@n;@2e zQ^bSdbg>MaDVBqkVg)!`JPOVeE5Z5Vaj;s{f{VmzaEVw8E)(m(6`~$oDV~JqwSo&7 zs25zy4dSHJr5zF*TrTa1*a;pN2f=P}6zmZ_h;T|=0nZ4ogLC3K>@SEugkBN@!_3-M zF$U}tMW7~2K$9E?8ge}7kQ2agISGuEQ^06h4#o!LbnFu33@};F1c%Do!8BP3X3D$5 zT-qo(J4|W?vI;Dc^TBcQUT}(B0Ais*uu?7o=gEh_YPlR-Bx}GWawWJ-2EY|^HMmm# z7g#In!L>559=m$^6u3b)f=|m$;3kQsBedVh=fExU1@O1>w_vk;3EUxH#^R={EK9KH zX`#WKsyIvW=ZamRp&d4M!tyBO6s+#>i8DnTjbFIwST5wEFI|h!z7JsM*L+Y7(vo7< zXr#f!j>s;$S)?Zs+v$k6gSw#Bx`Y-?=m zZJTYsvxRK$*=%-?J;6TAo^H>x7u(D1ciDH_-?AUHe_;Q}-fcf;@3Wg6QSpvg$56*e zM~P#S;}?!c9P1sM9d9_^b)0Z~=eX_|5PWzVMrMZL|5o3E^#}1*BDkkmh%Gm>n!G4 zm6bPCR?<~gW~r>`Dl1Q@tn~Rg)`vc3p7LNMz6d!j@qfUx3C!xGU5c-PTSsz|=f}PY zrjKE{%(vMW(6ra1-o`eU@o&owpQ_k_e=7G+ zOQ8F>y7rIcOmujeb8?uLY-afgW^@6wYcO-ope~Thgk?E@61QYH{`u&?@z5VPf6X9H zraAgJ*neI>P?gz#&Q4}^LtmYA`lit8q`!s!TtPuGa)Njj(lnFj*ZUeom-u+Iz!IA&Ymv_%R8O{G3OLKuNhxr8AB}^#B5UV8*LQ$tu_I? zq*a2KwS(Yy+9B|Y)&pMEE`Yt7sTPg@pFY!Zi5tNe?jU<$zjG&s@^SbRgZ<8pu7A}X z#gOgIpNBD)eskO*7zw{wXZPQ%d*As6o^RsXOvlPb8Q3zhW#Jy3jco)57;~`YV#~ue z5*vTKS`K$k7*>3KFuxQLqdgkU$8&zr&-+0?FSx3bhI#sp9->F1M~i@k4TJ4f6dO8H zNw3F-Py5-p@+pfSxK|th;Ntrsh1NYxrbx@g2bSgK%v>B=+d%c{;lqMU>I;(gO$*)g zr}EoweC!IvzDX@6%traYHuBQm(CId6B$L}>u?1`P&{?vD=Db70@CI^}XDWG?;jgwi zxN$FKP;+qqUfO7FwpavfcLe9Q)2gT)2>0CSHjH?SBhKsz#~*?&w$orzyNKW|`^cNS z!(HvUGs;~dT!?$W)Z@&i1R|RbxNA=jwzv&p*qkm;Z95L(r%qas4tm^Zc9|{2`5173HleJ$4v>%b2H!nE z#|1eNlK^?*BPRdR_V$$8UhZx5h?=!khx~KL{se49Y!?=ehlNBAI1D&)*+M8ny zO;C6&r@E+%rrVm01R-2p@X)(m^h>huu)@Go7sVDMKcE?@{fgS7P+0N$j;Ho0>cRG- zRJ-FJVsmi!2ejPQ?5RsMG%iCZ=Mdd4vd`SOxLTvB)AEGIN3dPV4q(Dpx5l{Mt*q3^@Q@w|}x0-Xnxc`NJv6R!ep`#LVy4Xn;?RSAfT**$W=jLFabq@>41u; zz!h5wf})~`q5^^_E+{JEh6>_>7Z-5hs^Gp{RK)jps;YZtSoHqC@Be;Zo@c7-ch0F( zr>aj?ovQAcG&MP!nw&Q+u-~8u1O@lIC%g*_gF?(@E zpd@kxnPZN88*?c#MGBDHH5h7x7ZUtEzDTQR zk>8DVp{$If@%%z#S}5E2HssR(h-b8p79>tgT_df!j>Q)#iWVVGOp#Gmkw4>$6kA0? zO~i^RGukSHev9p;5~Hpx+jy$XmBHf~ZHzD&-;}uqXz`4oRZA0bL?t0_m7V>pF_y`g zJ7SA3P)Y@sijKA!yuxP;FVD!a$IFDGGIk-;T%M7U5HC|^bS}>~-UY)E&nP!$f{|H~ zk&zhBs4yM}V<;HTct)l1OL>0T7_(Cx!G~a8Bq?5~ZPcbDvZ-wBaq_Ns`KqYAOUMs6 zPChwazFky4*{G{5%1MdmS4a6N#;nSsjMR93d!t=trm?-Ug)y!&DN#CojWMk7BlsA)WV#)rEwnD;j+gBem341g)Bb@J>)vJp0uQ&BOtvXGwf^EhAh)>w&E%6<5jNoWv9gHh(BI>H*KqNED9U0{kbyaaz z#2@93igJm%syI6mh;m0qxkO!6+#;f9McHGbY@)6z&WU74x#vf@L|s*!8)*^cj*W7O zx~jNkBqz!p7v&OlRdHSRAb?InC z20t@W8s$%o7AGp${zxdw4oBHU1v?Nai?XLh*+d09D^eb1U#8ePyqw73XGbcc{Dx?8 zqJrHbQW<48M%hFKJ15dM%AOu&6LnS7G%O_fxr@%iTvoj6M}Xiytc*=zw&|y#tCy(1RqR+##=S*szD;tY)FLrZxAK5l%lsWQ+^Hd{$n=40)qDgx*Wk@U`IuUqcvm3s0kT5uG*{z!3zF|7;Uxb7Nz0Q zBsMLKW!+Vg6-#!2oE^r@=_=R!p#bz3LCI_^2KFGL2^R=K(h3{xVFU>-|1k};QldRV zG{gsrR*1H0v(_5lPAJv=A;!E|4Q@cM6k5IFO>if~^otKoMQhl2eELF=x{$69EBwB? zUW;pOFEC>IMfQc&HOKXfP8~xHqORHY=bwLm+_RIT09Rd5ppWf;u7jfh*QSsoh)BUT z5h|?S3Np@I9v+wKqBP;+<|Jn}7+b=w261gLS_ zvtlUF=(cBrpqqtAdofvpKD7rCak$V5d28mOL;v>HAU0#&A-Gyyu_6lmiMr0gwYJL% zw?;>`r@A+>w`Mr3j|5BGrR3xR8U2a$^(ER$mI z2!R6fiu;ZFiG7N#K8D91pn;=2ep1L!lBkx3^_q#Tv*LSjDwxvEjk%L&JLH^j&xA=_ zpNIPYrXgctXb*^CrV-a?)U^j1LiDSFYr7)zU$q0?t)|0rn}3pV=ENl9=%ocAt7Rt} z&{N}@clzZ2s(HqQNk@%8rzCWK8unqTjGgZhDKZy6Wn?-&z43A8r&La;y&gHU9mXG5 zXBWi`kIB}}KqHX1Y&P<*Z{f7Mf8Esb;WVSt1c}>lG9SUB!P?@}AD@fyiQw}nKA+=* z8BBaI`q;Vn)M67BHR-#VS)MgCLtwnqlwSbe?E4LVowqK=ATSESh)#bXSgXY`e`l7-n!qFz9yq{?`6S|GYWdRP!4K9&ea zh$4HkCBA7G3Q{1^60n?KQN#j=ohZWs8E0(E%5G$APT6Uuu`tVzDs_*l(|1CBepD#A zi6P?3UZdvts3}f15jPMc?62;757BZ3S#5nifLCETZQ=Udqw(?eg#=zx5FJTMd3L?_C>Y}~~H(?Dl>%uLSYb&&(PY{V1yBoUb z(y~@WAfJ-b2u@iUmOOE{uE!Pmn7ftY%y(5*((Uq=O^#_+5SxYgW{LG)QDvp5L+mA7 z$qovGjO!bH)#zOW4i2?WV;yi@I;Q|MxDoaja7!}8&X(eeX+kx2OnI%I%MUAnd zN?6fO))?mj)shxxMSHTMssW#&Mc8(dWkXV@@b&uKHGkTHR^g|r!GA%HAT(^k_pIZ?WlHUkrlpwczP*(e-Gn}N7XQ0bbQWXjSR ze|d(sny$2$Zro?=o*l>*&Z*59p}2JQI@}I$`JBM%!sE0V*pTpYx3-$DUZ>lsJW!i~ z4(8q@cT&02og}?cn?bQIRYX^>%k66P8RyRllnUR}W+3?I-V}EVN~B0X6(w@KsqR$J zQX9*Rm2(2w!u7Qo=PO-w^`^Vi8!L@Bz`av;N}b};)$4Yg@ZQ*M`40bb`BcbDH-8b!ubmTcC zh=s^)6R}o!KExN2HHbNkR!uFB=Pw{W*@Ly!7}3;n*m32rCw_Oqr&Uj8wOzE1iYHFN z@rWPGYsENmsX7tIxRT4#62m=EBE{hhHyE!q<S9dEEB1JZ5cp5}J zw(#lDRqk_YgPh^npdu^UlWCoo&`lF-YiUwY8x` zsftVq5R1saW88m?+xZ^&$!Uol5WiKl_;nW^qcHI5ktH{zO}*h`Cl{L!`bqg*YIgx{a~(Tk!jhtLC>T zqt*#KCdu%y-(Qq^c78y}TfJ1H^qD%Q(p?mtJ5rt@_;sOQ>>l&vMvl6aB8x2PW7)W30Yfyq)_CFiRs(U8V3*6@RjPwps3BBb;V6+eh-5;a z#5{YD4JC5Sg9k4JjOrVT_=CoIH?%>ji*$`h-@KtsACkubzyZ-y4m!P)f83!W&!bRESPtxInDbJOIX8%NB=j_0 zW#Ea~hJbt~(qDquBQIE}3Q0L}<`JjA7}IR7S;5256_TdYW(#42TON%VO;`GR#+;HQ zWAhqJ!hND4L#5;)ejMl+!_M7U<1*Y^hX68=x>xTRxaw^Qc4Js#Zp3uD2d+|>3<`!bg`}r9k86P za?_!JJj{dx2#JmIDxUSotbE`j^Wv$G%+jNu|ADY^%RfCMsRsX&srj|zP1RHLtHzHr zbx+L?njjle1tw?#kY$1#fD9AlE}5Dq@;Be)7cKn1qa9|qTrzbW`6e|%Z8ayE6K;~Y zvAWiH2K;3XJ!%Y1jptz|?q~6=^+J}D4k1d#YA7@}u2>d`+1MWn#4ewP5>dqS%#ceg z@W8q~d?xv;$sIs|c34?(8AOkm5vi2T!@_5QMH8nu1_*Ug410JW6+t6~T=;B4QRX0m zlO!{p2L}V!A8$yyV@A+;b4k8C&OA^{jX#&)VQnm;%N`LH+}o+FMm>AWe1MrRC=%ZjDZF#~AXu{1hqa8Sol;~GZ* ziPJl59Mp*wZqg$<4f@|{9m1f;Xd_vhcz#a9R3LkJB+5paqX3E~tPA(1NGdfNnC%C!9S@B|QDj)oE(;bn*a0Z@_aXsB@w zuwa^_p@+pRPt<}>;wFV04a4Jzw@c#8IO2^&)PfPCba{?0b!*TaRjnPT`e{+%IMpj8 zF-EmpM*Sk_3#v+Vk|Ni=9nOcL=+?p)p*5Z9$T~lL(Fojb?$R87H2GrCOEmu^fA|v0 ziGFc}CnBGmC^{lM3Hgc^iNaP1QWJ%#0#GMBMb#w=OD);2h29wIbJZ zDfGG=jW~vM1Tp(Lf=$M>6(#L6LDqx;!Ht4Sg{rj}K$D#V@eSg5byW7siV3~w*b)8P z4`uMc`#%&Z%fo2AGqGIo!hY}?FMz&ezc-;QJ5j@t2jXDV3>r>O!nfz@bl#Ang-cLA zwXBshDLfhWOz)2lOA1e+tet`=QQ$O)CWYHWvf@3bTJgGRwjiGIJM4qP4bTkN&VjX8 z!P?Wr3_^zq^s-N%RNM-j@>s7ywFEAucLR`EpAN_)SQYO!nDp8*qum`XjgfbZ34x@g z`n`!|InE?^VwffeS$lXg>Mn6728MeR-HA!zON|3}WI2Km505eayd$TG*4E(FkS|O1 zB#D(aAk3x{yYdXT9mK�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 diff --git a/bin/OpenMetaverse.dll b/bin/OpenMetaverse.dll index a4bca2a771e8e0351c5ae3f6edffa142a8277a71..375ef4da60769e95bffab06ee9e9fbe5ccbf84b2 100755 GIT binary patch delta 213 zcmZoT(81UM#1lGLHpgCTZR~07VQlSTYVBce?O|!{VQuYUYwclg?cr$c;cV^UYVF}} z?cr(d;ce~VYwh80?Gb405p3-dYV8qj?Gb715pC@eYwZzl?U88hk!}0w1{_OtgI&T#N z1fEX&dg|rpFwZ{sIK9*f(Y@1q-YWVkKt)%=M1kt<9e&T&R(ZVI_Rls$mhC^^DzX~^ E0N^xW;s5{u delta 213 zcmZoT(81UM#1lGL_7*=o)Y#M7!`Rxx)Y`+`+QZV?!`j-z*4o3~+QZS>!`a%y)!M_| z+QZY@!`s@!*V@D1+9S}~BiPy_)Y>E5+9T51Bih;{*4iW9+9T20BiY&`)!HN7+9T82 zBiq^|*V-e$wMXHFk-!w0jgO}2&-R*RtNS*8n|n@si?PD?7GuRFJ6UGLaGam6^HwoH z;Cgb$#6Fh~4!f!^KHKbl@6z<1w~D?BP*DLZs3=gq|C@_kE0$)(hBSRT^K|>qw~FjW E09%+}b^rhX diff --git a/bin/OpenMetaverseTypes.dll b/bin/OpenMetaverseTypes.dll index 7d61636aee90156beb43586f8e311ddb1ff7a137..fe7f19a2e6461ef6051548d1b351e9411fcc98ba 100755 GIT binary patch delta 187 zcmZp8z|-)6XF>-{$-CVBjXg_y7!AZ67#J9M7#IYZ#Ig)UnKaCp8Q8d(a;KlrW0aqM zz<`lWD3_TnLPHuT%qAY8C2YXVP&HjqpHZg$s{!NouLexQ3k5ju&8|7c+wHaB?9{x? zuapjNm$<}qMvo;vscO^I7t8?y&-D)co)S^#Gx<(5#|49P+S5H4nZp&JqI-m)qCn+F X_e}1@OUYI4G}+1ZfBSw$W=A~$5|Kb5