feat: CAN 模拟器 TCP 化 + 多设备并发调试 + 后台生命周期管理
核心改造:
- CAN 模拟器 TCP 线协议化,独立 CanSimulatorServer 进程 (127.0.0.1:9000)
- 统一 CanDeviceDriver + ICanTransport (NodeChannelTransport / BrokerRpcTransport)
- 新增 DeviceBroker 独立进程,Broker 共享设备走 IPC 管道
- 分层资源管理 LayeredResourceManager + DbLeaseStore (arb.db 仲裁库)
- 总线应答器 EchoResponderToSender (BUS_ECHO ON)
调试面板改造:
- DeviceDebug 多标签页架构 (DeviceDebugTab + CanChannelView)
- CanChannelView 接收帧推送改用 Dispatcher.BeginInvoke 修复死锁
- DebugSessionManager 增加维护租约心跳续期 (120s 周期 < TTL 300s)
自动化与测试:
- IntegrationTest 新增逐设备一次收发测试 (CAN-001~004)
- CanDeviceDriver 惰性连接 EnsureConnectedAsync
- ValidateOwner 用完整 TTL 续期,避免砍短租约
- 回归测试 51/51 通过 (含 BrokerE2E + LayeredResourceManager)
文档:
- 程序架构解析报告 V3.1
- 仪器调用架构与数据流转报告
- 多进程仪器资源方案 / Broker IPC 对比等设计文档
20个文件已修改
60个文件已添加
1个文件已删除
| | |
| | | <ItemGroup> |
| | | <PackageReference Include="log4net" Version="3.0.4" /> |
| | | <PackageReference Include="Microsoft.Bcl.AsyncInterfaces" Version="8.0.0" /> |
| | | <PackageReference Include="System.Data.SQLite" Version="1.0.118" /> |
| | | </ItemGroup> |
| | | |
| | | <ItemGroup> |
| | | <Reference Include="HslCommunication"> |
| | | <HintPath>..\Libs\HslCommunication.dll</HintPath> |
| | | </Reference> |
| | | <Reference Include="System.Configuration" /> |
| | | </ItemGroup> |
| | | |
| | | <ItemGroup> |
| | |
| | | <ProjectReference Include="..\S7Driver\S7Driver.csproj" /> |
| | | <ProjectReference Include="..\ModBusTcpController\ModBusTcpController.csproj" /> |
| | | <ProjectReference Include="..\CanSimulator\CanSimulator.csproj" /> |
| | | <ProjectReference Include="..\Aging.ResourceContracts\Aging.ResourceContracts.csproj" /> |
| | | </ItemGroup> |
| | | |
| | | </Project> |
| New file |
| | |
| | | using System; |
| | | using System.Buffers.Binary; |
| | | using System.Collections.Concurrent; |
| | | using System.IO; |
| | | using System.IO.Pipes; |
| | | using System.Text; |
| | | using System.Threading; |
| | | using System.Threading.Tasks; |
| | | using Aging.ResourceContracts; |
| | | using log4net; |
| | | |
| | | namespace Aging.Infrastructure.Broker |
| | | { |
| | | /// <summary> |
| | | /// DeviceBroker å½å管é客æ·ç«¯ééï¼V3.0 §13 åæºåºçº¿ï¼ã |
| | | /// ä¿®å¤ç°æ PipeClient çä¸å¤§é®é¢ï¼ååºå
³èå¯è¾¾ãè¶
æ¶çæãåæ¶å¯ä¼ æã |
| | | /// å¸§æ ¼å¼ï¼4 åè大端é¿åº¦åç¼ + UTF8 JSON å°å¥ï¼è¯·æ±-ååºç» RequestId/CorrelationId é
对ã |
| | | /// çº¿ç¨æ¨¡åï¼ååå°è¯»å¾ªç¯ + pending åå
¸ï¼åå
¥ç¨ä¿¡å·é串è¡åã线ç¨å®å
¨ï¼å¯è¢«å¤ç§çº¦å
±äº«ã |
| | | /// </summary> |
| | | public sealed class BrokerClientChannel : IDisposable |
| | | { |
| | | private static readonly ILog Log = LogManager.GetLogger(typeof(BrokerClientChannel)); |
| | | |
| | | private readonly string _pipeName; |
| | | private readonly string _clientInstanceId; |
| | | private readonly SemaphoreSlim _writeLock = new SemaphoreSlim(1, 1); |
| | | private readonly ConcurrentDictionary<string, TaskCompletionSource<IpcEnvelope>> _pending = new(); |
| | | |
| | | private NamedPipeClientStream? _pipe; |
| | | private Task? _readLoop; |
| | | private volatile bool _disposed; |
| | | private volatile bool _connected; |
| | | private int _inFlight; |
| | | |
| | | /// <summary>æ¡ææååç Broker 纪å
ï¼éå¯åéå¢ï¼ç¨äºæ¬å°éæ§å¤å®ï¼</summary> |
| | | public long ServerEpoch { get; private set; } |
| | | |
| | | /// <summary>Broker çæé
ç½®åå¸ï¼INV-04 对账åç
§ï¼</summary> |
| | | public string BrokerConfigHash { get; private set; } = ""; |
| | | |
| | | public string BrokerId { get; private set; } = ""; |
| | | |
| | | public bool IsConnected => _connected && !_disposed; |
| | | |
| | | /// <summary>è¿æ¥/æ¡æé»è®¤è¶
æ¶ï¼æ¯«ç§ï¼</summary> |
| | | public int ConnectTimeoutMs { get; set; } = 3000; |
| | | |
| | | /// <summary>忬¡ RPC é»è®¤çå¾
ä¸éï¼æ¯«ç§ï¼</summary> |
| | | public int DefaultRequestTimeoutMs { get; set; } = 10_000; |
| | | |
| | | public BrokerClientChannel(string pipeName, string clientInstanceId) |
| | | { |
| | | _pipeName = pipeName ?? throw new ArgumentNullException(nameof(pipeName)); |
| | | _clientInstanceId = clientInstanceId ?? throw new ArgumentNullException(nameof(clientInstanceId)); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// ç¡®ä¿è¿æ¥å¹¶å®æ Hello æ¡æï¼å¹çï¼æçº¿åå¯éå¼ï¼ã |
| | | /// åè®®ä¸»çæ¬ä¸å¹é
æ¶æåº InvalidOperationException å¹¶æç»åç»è¯·æ±ã |
| | | /// </summary> |
| | | public async Task EnsureConnectedAsync(CancellationToken ct) |
| | | { |
| | | if (_disposed) throw new ObjectDisposedException(nameof(BrokerClientChannel)); |
| | | if (_connected) return; |
| | | |
| | | var pipe = new NamedPipeClientStream("localhost", _pipeName, |
| | | PipeDirection.InOut, PipeOptions.Asynchronous); |
| | | try |
| | | { |
| | | using (var timeoutCts = CancellationTokenSource.CreateLinkedTokenSource(ct)) |
| | | { |
| | | timeoutCts.CancelAfter(ConnectTimeoutMs); |
| | | await pipe.ConnectAsync(timeoutCts.Token).ConfigureAwait(false); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | pipe.Dispose(); |
| | | throw new InvalidOperationException($"BROKER_UNREACHABLE: æ æ³è¿æ¥ DeviceBroker 管é [{_pipeName}]: {ex.Message}", ex); |
| | | } |
| | | |
| | | _pipe = pipe; |
| | | _connected = true; |
| | | _readLoop = Task.Run(() => ReadLoopAsync(pipe, ct)); |
| | | |
| | | // Hello æ¡æ |
| | | var hello = NewEnvelope(IpcMessageTypes.Hello); |
| | | var resp = await SendAsync(hello, ct).ConfigureAwait(false); |
| | | var result = BrokerIpc.DeserializeBody<HelloResult>(resp.BodyJson); |
| | | if (result == null) |
| | | throw new InvalidOperationException("BROKER_HANDSHAKE_FAILED: Hello ååºæ æ"); |
| | | if (result.ProtocolVersion != BrokerIpc.ProtocolVersion) |
| | | { |
| | | _connected = false; |
| | | throw new InvalidOperationException( |
| | | $"BROKER_PROTOCOL_MISMATCH: 客æ·ç«¯ v{BrokerIpc.ProtocolVersion}, Broker v{result.ProtocolVersion}"); |
| | | } |
| | | ServerEpoch = result.ServerEpoch; |
| | | BrokerConfigHash = result.ConfigHash; |
| | | BrokerId = result.BrokerId; |
| | | Log.Info($"[BrokerChannel] å·²è¿æ¥ {_pipeName}: BrokerId={BrokerId}, epoch={ServerEpoch}, configHash={ShortHash(BrokerConfigHash)}"); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// åéä¸å¸§è¯·æ±å¹¶çå¾
å
¶å
³èååºãè¶
æ¶/æçº¿åè¿åå¯åºåçé误å°å¥ï¼ä¸æè£¸å¼å¸¸ï¼ã |
| | | /// </summary> |
| | | public async Task<IpcEnvelope> SendAsync(IpcEnvelope request, CancellationToken ct) |
| | | { |
| | | if (_disposed) throw new ObjectDisposedException(nameof(BrokerClientChannel)); |
| | | var pipe = _pipe; |
| | | if (!_connected || pipe == null) |
| | | return ErrorEnvelope(request, "BROKER_UNREACHABLE", "æªè¿æ¥ DeviceBroker"); |
| | | |
| | | var tcs = new TaskCompletionSource<IpcEnvelope>(TaskCreationOptions.RunContinuationsAsynchronously); |
| | | _pending[request.RequestId] = tcs; |
| | | Interlocked.Increment(ref _inFlight); |
| | | try |
| | | { |
| | | byte[] frame; |
| | | try |
| | | { |
| | | frame = BrokerIpc.EncodeFrame(BrokerIpc.EncodeEnvelope(request)); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return ErrorEnvelope(request, "PROTOCOL_ERROR", ex.Message); |
| | | } |
| | | |
| | | // åå
¥ä¸²è¡åï¼pipe åå工交éä¸ async åå¯è½ææ»ï¼æ
åå
¥ä¸å åºç¨çº§è¶
æ¶ï¼ä¾èµè¯»ä¾§ deadline + æçº¿æç¥ï¼ |
| | | await _writeLock.WaitAsync(ct).ConfigureAwait(false); |
| | | try |
| | | { |
| | | await pipe.WriteAsync(frame, 0, frame.Length, ct).ConfigureAwait(false); |
| | | await pipe.FlushAsync(ct).ConfigureAwait(false); |
| | | } |
| | | catch (IOException ex) |
| | | { |
| | | Fault($"管éå失败: {ex.Message}"); |
| | | return ErrorEnvelope(request, "BROKER_IO_ERROR", ex.Message); |
| | | } |
| | | finally |
| | | { |
| | | _writeLock.Release(); |
| | | } |
| | | |
| | | using (var timeoutCts = CancellationTokenSource.CreateLinkedTokenSource(ct)) |
| | | { |
| | | int waitMs = request.DeadlineUtcMs > 0 |
| | | ? (int)Math.Max(1, request.DeadlineUtcMs - BrokerIpc.NowUtcMs()) |
| | | : DefaultRequestTimeoutMs; |
| | | var delay = Task.Delay(waitMs, timeoutCts.Token); |
| | | var winner = await Task.WhenAny(tcs.Task, delay).ConfigureAwait(false); |
| | | if (winner == tcs.Task) |
| | | { |
| | | timeoutCts.Cancel(); // éæ¾ delay 宿¶å¨ |
| | | return await tcs.Task.ConfigureAwait(false); |
| | | } |
| | | // INV-06ï¼è¯·æ±å·²ååºä¸å¯è½å¨é â ç»ææªç¥(Unknown)ï¼ç¦æ¢å½æªæ§è¡ |
| | | return UnknownEnvelope(request, "BROKER_TIMEOUT", |
| | | "çå¾
ååºè¶
æ¶ï¼ç»ææªç¥ï¼ææªå®æå¤ç"); |
| | | } |
| | | } |
| | | finally |
| | | { |
| | | _pending.TryRemove(request.RequestId, out _); |
| | | Interlocked.Decrement(ref _inFlight); |
| | | } |
| | | } |
| | | |
| | | /// <summary>ä¾¿æ·æ¹æ³ï¼æäº¤ä¸æ¬¡ OneShot 设å¤å¨ä½ï¼è¿åç»æä½ã</summary> |
| | | public async Task<BrokerIpc.ResultBody> SubmitAsync(BrokerIpc.SubmitBody body, string configHash, CancellationToken ct) |
| | | { |
| | | await EnsureConnectedAsync(ct).ConfigureAwait(false); |
| | | var env = NewEnvelope(IpcMessageTypes.SubmitTask); |
| | | env.ConfigHash = configHash ?? ""; |
| | | env.BodyJson = BrokerIpc.SerializeBody(body); |
| | | var resp = await SendAsync(env, ct).ConfigureAwait(false); |
| | | var result = BrokerIpc.DeserializeBody<BrokerIpc.ResultBody>(resp.BodyJson) |
| | | ?? new BrokerIpc.ResultBody { State = "Unknown", ErrorCode = "BAD_RESPONSE" }; |
| | | return result; |
| | | } |
| | | |
| | | // ==================== å
é¨ ==================== |
| | | |
| | | private async Task ReadLoopAsync(NamedPipeClientStream pipe, CancellationToken ct) |
| | | { |
| | | var lenBuf = new byte[4]; |
| | | try |
| | | { |
| | | while (!ct.IsCancellationRequested && !_disposed) |
| | | { |
| | | await ReadExactAsync(pipe, lenBuf, 4, ct).ConfigureAwait(false); |
| | | int len = BinaryPrimitives.ReadInt32BigEndian(lenBuf); |
| | | if (len <= 0 || len > BrokerIpc.MaxFrameBytes) |
| | | throw new IOException($"鿳叧é¿åº¦ {len}"); |
| | | var payload = new byte[len]; |
| | | await ReadExactAsync(pipe, payload, len, ct).ConfigureAwait(false); |
| | | |
| | | IpcEnvelope env; |
| | | try |
| | | { |
| | | env = BrokerIpc.DecodeEnvelope(Encoding.UTF8.GetString(payload)); |
| | | } |
| | | catch (Exception) |
| | | { |
| | | continue; // æ æ³è§£æçå帧丢å¼ï¼ä¸å½±ååç»å
³è |
| | | } |
| | | |
| | | if (!string.IsNullOrEmpty(env.CorrelationId) |
| | | && _pending.TryGetValue(env.CorrelationId, out var tcs)) |
| | | { |
| | | tcs.TrySetResult(env); |
| | | } |
| | | } |
| | | } |
| | | catch (OperationCanceledException) { /* æ£å¸¸éåº */ } |
| | | catch (Exception ex) |
| | | { |
| | | if (!_disposed) Fault($"读循ç¯ç»æ¢: {ex.Message}"); |
| | | } |
| | | } |
| | | |
| | | private static async Task ReadExactAsync(Stream s, byte[] buf, int count, CancellationToken ct) |
| | | { |
| | | int off = 0; |
| | | while (off < count) |
| | | { |
| | | int n = await s.ReadAsync(buf, off, count - off, ct).ConfigureAwait(false); |
| | | if (n <= 0) throw new EndOfStreamException("管éå·²å
³é"); |
| | | off += n; |
| | | } |
| | | } |
| | | |
| | | /// <summary>è¿æ¥å¤±æï¼ç½®é级æï¼çå¾
䏿¬¡ EnsureConnectedAsync éè¿ï¼å¨é请æ±ç±å
¶èªèº«è¶
æ¶æ¶å£ã</summary> |
| | | private void Fault(string reason) |
| | | { |
| | | if (!_connected) return; |
| | | _connected = false; |
| | | Log.Warn($"[BrokerChannel] è¿æ¥å¤±æ({reason})ï¼å°å¨ä¸æ¬¡è¯·æ±æ¶éè¿"); |
| | | try { _pipe?.Dispose(); } catch { } |
| | | _pipe = null; |
| | | } |
| | | |
| | | private IpcEnvelope NewEnvelope(string type) => new IpcEnvelope |
| | | { |
| | | ProtocolVersion = BrokerIpc.ProtocolVersion, |
| | | MessageType = type, |
| | | RequestId = Guid.NewGuid().ToString("N"), |
| | | CorrelationId = "", |
| | | ClientInstanceId = _clientInstanceId, |
| | | AuthorityId = BrokerId |
| | | }; |
| | | |
| | | private static IpcEnvelope ErrorEnvelope(IpcEnvelope? request, string code, string message) |
| | | => BuildEnvelope(request, "Failed", code, message); |
| | | |
| | | private static IpcEnvelope UnknownEnvelope(IpcEnvelope? request, string code, string message) |
| | | => BuildEnvelope(request, "Unknown", code, message); |
| | | |
| | | private static IpcEnvelope BuildEnvelope(IpcEnvelope? request, string state, string code, string message) |
| | | => new IpcEnvelope |
| | | { |
| | | ProtocolVersion = BrokerIpc.ProtocolVersion, |
| | | MessageType = "Result", |
| | | CorrelationId = request?.RequestId ?? "", |
| | | BodyJson = "{\"State\":\"" + state + "\",\"ErrorCode\":\"" + code + "\",\"Readback\":\"" + |
| | | message.Replace("\"", "'") + "\"}" |
| | | }; |
| | | |
| | | private static string ShortHash(string h) |
| | | => string.IsNullOrEmpty(h) ? "" : (h.Length > 8 ? h.Substring(0, 8) : h); |
| | | |
| | | public void Dispose() |
| | | { |
| | | if (_disposed) return; |
| | | _disposed = true; |
| | | _connected = false; |
| | | try { _pipe?.Dispose(); } catch { } |
| | | _pipe = null; |
| | | _writeLock.Dispose(); |
| | | } |
| | | } |
| | | } |
| New file |
| | |
| | | using System; |
| | | using Aging.ResourceContracts; |
| | | |
| | | namespace Aging.Infrastructure.Broker |
| | | { |
| | | /// <summary> |
| | | /// DeviceBroker å½å管éæå¡å约å®ï¼aging.{brokerId}.v{åè®®ä¸»çæ¬} |
| | | /// ï¼V3.0 §13ï¼æå¡åå« Station/Broker/åè®®ä¸»çæ¬ï¼ã |
| | | /// </summary> |
| | | public static class BrokerPipeName |
| | | { |
| | | public static string For(string brokerId) |
| | | { |
| | | if (string.IsNullOrWhiteSpace(brokerId)) |
| | | throw new ArgumentException("brokerId ä¸è½ä¸ºç©º", nameof(brokerId)); |
| | | return $"aging.{brokerId.Trim().ToLowerInvariant()}.v{BrokerIpc.ProtocolVersion}"; |
| | | } |
| | | } |
| | | } |
| New file |
| | |
| | | using System; |
| | | using System.Data; |
| | | using System.IO; |
| | | using System.Security.Cryptography; |
| | | using System.Text; |
| | | |
| | | namespace Aging.Infrastructure.Broker |
| | | { |
| | | /// <summary> |
| | | /// ä» DeviceConfig ç data.db 计ç®ä¸å¯åé
置快ç
§åå¸ï¼INV-04 对账åºåï¼ã |
| | | /// æ¼æ¥è§åä¸ Plugin.DeviceConfig.Model.DeviceConfigModel.ComputeConfigHash ä¿æä¸è´ï¼ |
| | | /// DEVICE / CHANNEL / SLOT 䏿®µæåèªæåºæ¼æ¥å SHA256ï¼å°ååå
è¿å¶ï¼ã |
| | | /// OwnerProcessId å±è¿è¡æä¿¡æ¯ï¼ä¸åä¸åå¸ã |
| | | /// </summary> |
| | | public static class DeviceConfigHash |
| | | { |
| | | public static string Compute(string dataDbPath) |
| | | { |
| | | if (!File.Exists(dataDbPath)) |
| | | throw new FileNotFoundException("é
ç½®åºä¸åå¨", dataDbPath); |
| | | |
| | | var sb = new StringBuilder(); |
| | | using (var conn = new System.Data.SQLite.SQLiteConnection( |
| | | $"Data Source={dataDbPath};Version=3;Read Only=True;")) |
| | | { |
| | | conn.Open(); |
| | | AppendRows(conn, "DeviceDefinition", "SELECT * FROM DeviceDefinition ORDER BY DeviceId;", sb, row => |
| | | { |
| | | string em = Col(row, "ExecutionMode") ?? "Local"; |
| | | string auth = Col(row, "AuthorityId") ?? ""; |
| | | string bk = Col(row, "BrokerId") ?? ""; |
| | | string sk = Col(row, "PhysicalSessionKey") ?? ""; |
| | | return $"DEVICE:{row["DeviceId"]}|{row["Kind"]}|{row["DriverType"]}|{row["Transport"]}|{row["Endpoint"]}|{em}|{auth}|{bk}|{sk};"; |
| | | }); |
| | | AppendRows(conn, "DeviceChannel", "SELECT * FROM DeviceChannel ORDER BY DeviceId, ChannelId;", sb, row => |
| | | $"CHANNEL:{row["DeviceId"]}|{row["ChannelId"]}|{row["Capability"]}|{row["MaxVoltage"]}|{row["MaxCurrent"]};"); |
| | | AppendRows(conn, "SlotDeviceMapping", "SELECT * FROM SlotDeviceMapping ORDER BY SlotId, Capability, Version;", sb, row => |
| | | $"SLOT:{row["SlotId"]}|{row["Capability"]}|{row["Version"]}|{row["DeviceId"]}|{row["ChannelId"]};"); |
| | | } |
| | | |
| | | using (var sha = SHA256.Create()) |
| | | { |
| | | var hash = sha.ComputeHash(Encoding.UTF8.GetBytes(sb.ToString())); |
| | | return BitConverter.ToString(hash).Replace("-", "").ToLowerInvariant(); |
| | | } |
| | | } |
| | | |
| | | private static void AppendRows(System.Data.SQLite.SQLiteConnection conn, string table, string sql, StringBuilder sb, Func<DataRow, string> fmt) |
| | | { |
| | | // 表缺失æ¶è·³è¿ç©ºæ®µï¼åå¸å¯¹âä¸åå¨çæ°æ®âä¸âé¶è¡âç»æä¸è´ï¼ä¸¤ä¾§å彿°ä¿è¯å¯å¯¹è´¦ |
| | | using (var probe = conn.CreateCommand()) |
| | | { |
| | | probe.CommandText = "SELECT COUNT(*) FROM sqlite_master WHERE type='table' AND name=@t;"; |
| | | probe.Parameters.AddWithValue("@t", table); |
| | | var has = Convert.ToInt64(probe.ExecuteScalar()) > 0; |
| | | if (!has) return; |
| | | } |
| | | using (var cmd = conn.CreateCommand()) |
| | | { |
| | | cmd.CommandText = sql; |
| | | using (var rd = cmd.ExecuteReader()) |
| | | { |
| | | var dt = new DataTable(); |
| | | dt.Load(rd); |
| | | foreach (DataRow row in dt.Rows) |
| | | sb.Append(fmt(row)); |
| | | } |
| | | } |
| | | } |
| | | |
| | | private static string? Col(DataRow row, string name) |
| | | { |
| | | if (row.Table.Columns.Contains(name) && row[name] != DBNull.Value) |
| | | return row[name].ToString(); |
| | | return null; |
| | | } |
| | | } |
| | | } |
| New file |
| | |
| | | using System; |
| | | using System.Threading; |
| | | using System.Threading.Tasks; |
| | | |
| | | namespace Aging.Infrastructure.Contracts |
| | | { |
| | | /// <summary> |
| | | /// èªå¨å设å¤é¨é¢ï¼ä¸ºå
¨èªå¨æµè¯ç¨åºæä¾"䏿¬¡è°ç¨/䏿¬¡ä½ç¨å"çè¯ä¹ï¼ |
| | | /// å
é¨å°è£
èµæºé¢çº¦ã驱å¨åæ´¾ã审计ã |
| | | /// |
| | | /// 使ç¨åºæ¯å¯¹æ¯ï¼ |
| | | /// æå¨è°è¯ï¼DeviceDebugï¼ï¼éè¦ UI 鿥æ§å¶ä¼è¯ç¶æï¼ReadOnly â Maintenanceï¼ã |
| | | /// å
¨èªå¨æµè¯ï¼TestStepï¼ï¼åªå
³å¿"åå½ä»¤æ¿ç»æ"ï¼ä¸å¸ææ´é²ç¶ææºã |
| | | /// æ¬æ¥å£é¢ååè
ã |
| | | /// </summary> |
| | | public interface IAutoDeviceFacade |
| | | { |
| | | /// <summary> |
| | | /// 䏿¬¡æ§æ§è¡ï¼å
é¨èªå¨å®æ ç³è¯·ç§çº¦ â æå¼ä¼è¯ â æ§è¡ â å
³éä¼è¯ â éæ¾ç§çº¦ã |
| | | /// éååæ¡å½ä»¤è°ç¨ã夿¡å½ä»¤å»ºè®®ä½¿ç¨ AcquireAsync å¤ç¨ç§çº¦ã |
| | | /// </summary> |
| | | Task<DeviceCommandResult> ExecuteAsync( |
| | | string deviceId, string command, CancellationToken ct = default); |
| | | |
| | | /// <summary> |
| | | /// 䏿¬¡æ§æ¥è¯¢ï¼å
é¨èªå¨å®æå®æ´çå½å¨æã |
| | | /// </summary> |
| | | Task<DeviceCommandResult> QueryAsync( |
| | | string deviceId, string query, CancellationToken ct = default); |
| | | |
| | | /// <summary> |
| | | /// ç³è¯·ä½ç¨åç§çº¦ï¼å ç¨è®¾å¤ï¼è¿å lease 奿ã |
| | | /// using ç»ææ¶ï¼Disposeï¼èªå¨å
³ä¼è¯ + éæ¾ç§çº¦ã |
| | | /// åä¸ lease å
ç夿¬¡è°ç¨å
±äº«åä¸ä»½èµæºå ç¨ï¼ä¿è¯ååæ§ã |
| | | /// </summary> |
| | | /// <param name="deviceId">è®¾å¤æ è¯</param> |
| | | /// <param name="stepName">æµè¯æ¥éª¤åç§°ï¼ç¨äºæ¥å¿/审计æ è¯ï¼</param> |
| | | /// <param name="ct">忶令çï¼ç³è¯·è¶
æ¶è§ä¸ºå¤±è´¥</param> |
| | | Task<IAutoDeviceLease> AcquireAsync( |
| | | string deviceId, string stepName, CancellationToken ct = default); |
| | | |
| | | /// <summary> |
| | | /// é»è®¤ç§çº¦è¶
æ¶ï¼ç§ï¼ãå¯ç³è¯·æ´çç per-call è¶
æ¶ã |
| | | /// </summary> |
| | | int DefaultLeaseTimeoutSeconds { get; set; } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// èªå¨å设å¤ä½ç¨åç§çº¦ã |
| | | /// 䏿¬¡ç³è¯·ï¼å¤æ¬¡è°ç¨ï¼Dispose æ¶èªå¨éæ¾ã |
| | | /// </summary> |
| | | public interface IAutoDeviceLease : IDisposable |
| | | { |
| | | /// <summary>æ¬æ¬¡ç§çº¦å
³èçè®¾å¤ ID</summary> |
| | | string DeviceId { get; } |
| | | |
| | | /// <summary>æ¬æ¬¡ç§çº¦çå
é¨ä¼è¯æ è¯ï¼ç¨äºå®¡è®¡å
³èï¼</summary> |
| | | string SessionId { get; } |
| | | |
| | | /// <summary>æµè¯æ¥éª¤åç§°</summary> |
| | | string StepName { get; } |
| | | |
| | | /// <summary>ç³è¯·æ¶å»</summary> |
| | | DateTime AcquiredAt { get; } |
| | | |
| | | /// <summary>ç§çº¦æ¯å¦å·²è¢«éæ¾</summary> |
| | | bool IsReleased { get; } |
| | | |
| | | /// <summary> |
| | | /// å¨ç§çº¦ä½ç¨åå
åéå½ä»¤ã |
| | | /// </summary> |
| | | Task<DeviceCommandResult> ExecuteAsync(string command, CancellationToken ct = default); |
| | | |
| | | /// <summary> |
| | | /// å¨ç§çº¦ä½ç¨åå
æ¥è¯¢ã |
| | | /// </summary> |
| | | Task<DeviceCommandResult> QueryAsync(string query, CancellationToken ct = default); |
| | | |
| | | /// <summary>V3.0ï¼ç§çº¦å¤±æï¼ç»æè¿ç»å¤±è´¥/è¢«åæ¶ï¼æ¶è§¦åï¼è®¢é
è
åºåæ¢ä¸åã</summary> |
| | | event EventHandler LeaseLost; |
| | | |
| | | /// <summary>V3.0ï¼æ¾å¼å¼æ¥éæ¾ã</summary> |
| | | Task ReleaseAsync(CancellationToken ct = default); |
| | | |
| | | /// <summary>V3.0ï¼ç»´æ¤è®©æ¸¡è¯·æ±ï¼Draining é¢çï¼MVP æ falseï¼ã</summary> |
| | | bool HandoverRequested { get; } |
| | | } |
| | | } |
| New file |
| | |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Globalization; |
| | | using System.IO; |
| | | using System.Linq; |
| | | using Aging.ResourceContracts; |
| | | using log4net; |
| | | |
| | | namespace Aging.Infrastructure.Core |
| | | { |
| | | public sealed class DbLeaseStore : ILeaseCoordinator |
| | | { |
| | | private static readonly ILog Log = LogManager.GetLogger(typeof(DbLeaseStore)); |
| | | |
| | | private readonly string _dbPath; |
| | | private readonly string _authorityId; |
| | | |
| | | public string AuthorityId => _authorityId; |
| | | public long CurrentEpoch { get; private set; } |
| | | |
| | | public DbLeaseStore(string dbPath, string authorityId) |
| | | { |
| | | _dbPath = dbPath; |
| | | _authorityId = authorityId; |
| | | EnsureDirectory(); |
| | | InitializeSchema(); |
| | | CurrentEpoch = ReadOrInitEpoch(); |
| | | } |
| | | |
| | | private void EnsureDirectory() |
| | | { |
| | | var dir = Path.GetDirectoryName(_dbPath); |
| | | if (!string.IsNullOrEmpty(dir) && !Directory.Exists(dir)) |
| | | Directory.CreateDirectory(dir); |
| | | } |
| | | |
| | | private void BeginImmediateTx(System.Data.SQLite.SQLiteConnection conn) |
| | | { |
| | | // BEGIN IMMEDIATE è·å RESERVED éï¼é»æ¢å
¶ä»è¿ç¨åå
¥ï¼é²æ¢ TOCTOU ç«æ |
| | | using (var cmd = conn.CreateCommand()) |
| | | { |
| | | cmd.CommandText = "BEGIN IMMEDIATE"; |
| | | cmd.ExecuteNonQuery(); |
| | | } |
| | | } |
| | | |
| | | private void CommitTx(System.Data.SQLite.SQLiteConnection conn) |
| | | { |
| | | using (var cmd = conn.CreateCommand()) |
| | | { |
| | | cmd.CommandText = "COMMIT"; |
| | | cmd.ExecuteNonQuery(); |
| | | } |
| | | } |
| | | |
| | | private void RollbackTx(System.Data.SQLite.SQLiteConnection conn) |
| | | { |
| | | try |
| | | { |
| | | using (var cmd = conn.CreateCommand()) |
| | | { |
| | | cmd.CommandText = "ROLLBACK"; |
| | | cmd.ExecuteNonQuery(); |
| | | } |
| | | } |
| | | catch { } |
| | | } |
| | | |
| | | private System.Data.SQLite.SQLiteConnection Open() |
| | | { |
| | | var conn = new System.Data.SQLite.SQLiteConnection( |
| | | $"Data Source={_dbPath};Version=3;"); |
| | | conn.Open(); |
| | | using (var cmd = conn.CreateCommand()) |
| | | { |
| | | cmd.CommandText = "PRAGMA journal_mode=WAL;"; |
| | | cmd.ExecuteNonQuery(); |
| | | cmd.CommandText = "PRAGMA busy_timeout=3000;"; |
| | | cmd.ExecuteNonQuery(); |
| | | cmd.CommandText = "PRAGMA synchronous=FULL;"; |
| | | cmd.ExecuteNonQuery(); |
| | | } |
| | | return conn; |
| | | } |
| | | |
| | | private void InitializeSchema() |
| | | { |
| | | using (var conn = Open()) |
| | | { |
| | | BeginImmediateTx(conn); |
| | | try |
| | | { |
| | | Execute(conn, @" |
| | | CREATE TABLE IF NOT EXISTS authority_meta( |
| | | AuthorityId TEXT PRIMARY KEY, Epoch INTEGER NOT NULL, |
| | | BootId TEXT NOT NULL, SchemaVersion INTEGER NOT NULL)"); |
| | | Execute(conn, @" |
| | | CREATE TABLE IF NOT EXISTS resource_state( |
| | | ResourceKey TEXT PRIMARY KEY, |
| | | Generation INTEGER NOT NULL DEFAULT 0, |
| | | Phase INTEGER NOT NULL DEFAULT 0, |
| | | LeaseId TEXT, OwnerId TEXT, OwnerType INTEGER, |
| | | ProcessInstanceId TEXT, MachineName TEXT, HostProcessId INTEGER, |
| | | Epoch INTEGER NOT NULL DEFAULT 0, Reason TEXT, |
| | | AcquiredUtcMs INTEGER, ExpiresUtcMs INTEGER, UpdatedUtcMs INTEGER)"); |
| | | Execute(conn, @" |
| | | CREATE TABLE IF NOT EXISTS lease_history( |
| | | EventId INTEGER PRIMARY KEY AUTOINCREMENT, |
| | | ResourceKey TEXT NOT NULL, Generation INTEGER NOT NULL, |
| | | Epoch INTEGER NOT NULL, LeaseId TEXT, OwnerId TEXT, |
| | | EventType TEXT NOT NULL, Reason TEXT, UtcMs INTEGER NOT NULL)"); |
| | | Execute(conn, @" |
| | | CREATE TABLE IF NOT EXISTS recovery_checkpoint( |
| | | ResourceKey TEXT PRIMARY KEY, Epoch INTEGER NOT NULL, |
| | | Status INTEGER NOT NULL, |
| | | PhysicalReadbackJson TEXT NOT NULL, ApprovedBy TEXT, |
| | | EvidenceUtcMs INTEGER NOT NULL)"); |
| | | CommitTx(conn); |
| | | } |
| | | catch |
| | | { |
| | | RollbackTx(conn); |
| | | throw; |
| | | } |
| | | } |
| | | } |
| | | |
| | | private long ReadOrInitEpoch() |
| | | { |
| | | using (var conn = Open()) |
| | | { |
| | | long nowMs = NowMs(); |
| | | var row = QueryRow(conn, |
| | | "SELECT Epoch, BootId FROM authority_meta WHERE AuthorityId=?", |
| | | _authorityId); |
| | | if (row == null) |
| | | { |
| | | Execute(conn, "INSERT INTO authority_meta VALUES(?,?,?,1)", |
| | | _authorityId, 1L, Guid.NewGuid().ToString("N")); |
| | | return 1; |
| | | } |
| | | long oldEpoch = Convert.ToInt64(row["Epoch"]); |
| | | long newEpoch = oldEpoch + 1; |
| | | Execute(conn, |
| | | "UPDATE authority_meta SET Epoch=?, BootId=? WHERE AuthorityId=?", |
| | | newEpoch, Guid.NewGuid().ToString("N"), _authorityId); |
| | | Execute(conn, |
| | | @"INSERT INTO lease_history(ResourceKey,Generation,Epoch,LeaseId,OwnerId,EventType,Reason,UtcMs) |
| | | VALUES('*',0,?,'','system','EpochBump','open-authority',?)", |
| | | newEpoch, nowMs); |
| | | return newEpoch; |
| | | } |
| | | } |
| | | |
| | | // ================= ILeaseCoordinator ================= |
| | | |
| | | public AcquireOutcome Acquire(AcquireRequest request) |
| | | { |
| | | if (request.ResourceKeys.Length == 0) |
| | | throw new ArgumentException("ResourceKeys ä¸è½ä¸ºç©º"); |
| | | var keys = request.ResourceKeys |
| | | .Select(NormKey) |
| | | .OrderBy(k => k, StringComparer.Ordinal) |
| | | .Distinct() |
| | | .ToArray(); |
| | | |
| | | var deadline = NowMs() + Math.Max(0, request.WaitTimeoutMs); |
| | | while (true) |
| | | { |
| | | var outcome = TryAcquireOnce(keys, request); |
| | | if (outcome.Code != AcquireResultCode.Timeout) return outcome; |
| | | if (NowMs() >= deadline) { outcome.Code = AcquireResultCode.Timeout; return outcome; } |
| | | System.Threading.Thread.Sleep(50); |
| | | } |
| | | } |
| | | |
| | | private AcquireOutcome TryAcquireOnce(string[] keys, AcquireRequest req) |
| | | { |
| | | long now = NowMs(); |
| | | using (var conn = Open()) |
| | | { |
| | | BeginImmediateTx(conn); |
| | | try |
| | | { |
| | | var grants = new List<LeaseGrant>(keys.Length); |
| | | foreach (var key in keys) |
| | | { |
| | | var st = QueryRow(conn, |
| | | "SELECT * FROM resource_state WHERE ResourceKey=?", key); |
| | | |
| | | // RecoveryRequired â 黿¢è·å |
| | | if (st != null && |
| | | Convert.ToInt32(st["Phase"]) == (int)LeasePhase.RecoveryRequired) |
| | | { |
| | | RollbackTx(conn); |
| | | return new AcquireOutcome |
| | | { |
| | | Code = AcquireResultCode.RecoveryBlocked, |
| | | RecoveryCheckpointKey = key |
| | | }; |
| | | } |
| | | |
| | | // Active 䏿ªè¿æ â å²çª |
| | | bool activeHeld = st != null |
| | | && Convert.ToInt32(st["Phase"]) == (int)LeasePhase.Active |
| | | && Convert.ToInt64(st["ExpiresUtcMs"]) > now; |
| | | if (activeHeld) |
| | | { |
| | | RollbackTx(conn); |
| | | return new AcquireOutcome |
| | | { |
| | | Code = AcquireResultCode.ConflictHeld, |
| | | Holder = new ConflictInfo |
| | | { |
| | | OwnerId = st["OwnerId"]?.ToString() ?? "", |
| | | OwnerType = (OwnerTypeV3)Convert.ToInt32(st["OwnerType"]), |
| | | MachineName = st["MachineName"]?.ToString() ?? "", |
| | | HostProcessId = Convert.ToInt32(st["HostProcessId"]), |
| | | Reason = st["Reason"]?.ToString() ?? "", |
| | | ExpiresUtcMs = Convert.ToInt64(st["ExpiresUtcMs"]) |
| | | } |
| | | }; |
| | | } |
| | | |
| | | // Active ä½å·²è¿æï¼å°æªè¢« Sweepï¼â 黿¢è·åï¼è¦æ±å
宿 Recovery |
| | | bool expiredNotSwept = st != null |
| | | && Convert.ToInt32(st["Phase"]) == (int)LeasePhase.Active |
| | | && Convert.ToInt64(st["ExpiresUtcMs"]) <= now; |
| | | if (expiredNotSwept) |
| | | { |
| | | RollbackTx(conn); |
| | | return new AcquireOutcome |
| | | { |
| | | Code = AcquireResultCode.RecoveryBlocked, |
| | | RecoveryCheckpointKey = key |
| | | }; |
| | | } |
| | | |
| | | long gen = (st != null ? Convert.ToInt64(st["Generation"]) : 0) + 1; |
| | | string leaseId = "lease_" + Guid.NewGuid().ToString("N").Substring(0, 12); |
| | | long exp = now + req.TtlSeconds * 1000L; |
| | | |
| | | if (st == null) |
| | | { |
| | | Execute(conn, |
| | | @"INSERT INTO resource_state(ResourceKey,Generation,Phase,LeaseId,OwnerId, |
| | | OwnerType,ProcessInstanceId,MachineName,HostProcessId,Epoch,Reason, |
| | | AcquiredUtcMs,ExpiresUtcMs,UpdatedUtcMs) |
| | | VALUES(?,?,1,?,?,?,?,?,?,?,?,?,?,?)", |
| | | key, gen, leaseId, req.OwnerId, (int)req.OwnerType, |
| | | req.ProcessInstanceId, req.MachineName, req.HostProcessId, |
| | | CurrentEpoch, req.Reason, now, exp, now); |
| | | } |
| | | else |
| | | { |
| | | Execute(conn, |
| | | @"UPDATE resource_state SET Generation=?, Phase=1, LeaseId=?, OwnerId=?, |
| | | OwnerType=?, ProcessInstanceId=?, MachineName=?, HostProcessId=?, |
| | | Epoch=?, Reason=?, AcquiredUtcMs=?, ExpiresUtcMs=?, UpdatedUtcMs=? |
| | | WHERE ResourceKey=?", |
| | | gen, leaseId, req.OwnerId, (int)req.OwnerType, req.ProcessInstanceId, |
| | | req.MachineName, req.HostProcessId, CurrentEpoch, req.Reason, |
| | | now, exp, now, key); |
| | | } |
| | | |
| | | Execute(conn, |
| | | @"INSERT INTO lease_history(ResourceKey,Generation,Epoch,LeaseId,OwnerId,EventType,Reason,UtcMs) |
| | | VALUES(?,?,?,?,?,'Acquire',?,?)", |
| | | key, gen, CurrentEpoch, leaseId, req.OwnerId, req.Reason, now); |
| | | |
| | | grants.Add(new LeaseGrant(_authorityId, key, leaseId, req.OwnerId, |
| | | req.OwnerType, CurrentEpoch, gen, exp)); |
| | | } |
| | | CommitTx(conn); |
| | | return new AcquireOutcome { Code = AcquireResultCode.Acquired, Grants = grants.ToArray() }; |
| | | } |
| | | catch |
| | | { |
| | | RollbackTx(conn); |
| | | throw; |
| | | } |
| | | } |
| | | } |
| | | |
| | | public bool Renew(LeaseGrant grant, int extendSeconds) |
| | | { |
| | | long now = NowMs(); |
| | | using (var conn = Open()) |
| | | { |
| | | BeginImmediateTx(conn); |
| | | try |
| | | { |
| | | int n = Execute(conn, |
| | | @"UPDATE resource_state SET ExpiresUtcMs=?, UpdatedUtcMs=? |
| | | WHERE ResourceKey=? AND LeaseId=? AND Generation=? AND Epoch=? |
| | | AND Phase=1 AND ExpiresUtcMs>?", |
| | | now + extendSeconds * 1000L, now, |
| | | NormKey(grant.ResourceKey), grant.LeaseId, grant.Generation, grant.Epoch, now); |
| | | if (n == 1) |
| | | CommitTx(conn); |
| | | else |
| | | { |
| | | RollbackTx(conn); |
| | | Log.Warn($"[Lease] ç»æå¤±è´¥(æ
æ ä¸ç¬¦): {grant.ResourceKey} gen={grant.Generation}"); |
| | | } |
| | | return n == 1; |
| | | } |
| | | catch |
| | | { |
| | | RollbackTx(conn); |
| | | throw; |
| | | } |
| | | } |
| | | } |
| | | |
| | | public bool Release(LeaseGrant grant, string note) |
| | | { |
| | | long now = NowMs(); |
| | | using (var conn = Open()) |
| | | { |
| | | BeginImmediateTx(conn); |
| | | try |
| | | { |
| | | int n = Execute(conn, |
| | | @"UPDATE resource_state SET Phase=0, LeaseId=NULL, OwnerId=NULL, |
| | | ExpiresUtcMs=0, UpdatedUtcMs=? |
| | | WHERE ResourceKey=? AND LeaseId=? AND Generation=?", |
| | | now, NormKey(grant.ResourceKey), grant.LeaseId, grant.Generation); |
| | | Execute(conn, |
| | | @"INSERT INTO lease_history(ResourceKey,Generation,Epoch,LeaseId,OwnerId,EventType,Reason,UtcMs) |
| | | SELECT ?,?,?,?,?, 'Release', ?, ? WHERE ?=1", |
| | | NormKey(grant.ResourceKey), grant.Generation, grant.Epoch, grant.LeaseId, |
| | | grant.OwnerId, note, now, n); |
| | | if (n == 1) CommitTx(conn); else RollbackTx(conn); |
| | | return n == 1; |
| | | } |
| | | catch |
| | | { |
| | | RollbackTx(conn); |
| | | throw; |
| | | } |
| | | } |
| | | } |
| | | |
| | | public ConflictInfo ProbeConflict(string resourceKey) |
| | | { |
| | | long now = NowMs(); |
| | | using (var conn = Open()) |
| | | { |
| | | var st = QueryRow(conn, |
| | | "SELECT * FROM resource_state WHERE ResourceKey=? AND Phase=1 AND ExpiresUtcMs>?", |
| | | NormKey(resourceKey), now); |
| | | if (st == null) return null; |
| | | return new ConflictInfo |
| | | { |
| | | OwnerId = st["OwnerId"]?.ToString() ?? "", |
| | | OwnerType = (OwnerTypeV3)Convert.ToInt32(st["OwnerType"]), |
| | | MachineName = st["MachineName"]?.ToString() ?? "", |
| | | HostProcessId = Convert.ToInt32(st["HostProcessId"]), |
| | | Reason = st["Reason"]?.ToString() ?? "", |
| | | ExpiresUtcMs = Convert.ToInt64(st["ExpiresUtcMs"]) |
| | | }; |
| | | } |
| | | } |
| | | |
| | | public LeasePhase PhaseOf(string resourceKey) |
| | | { |
| | | using (var conn = Open()) |
| | | { |
| | | var st = QueryRow(conn, |
| | | "SELECT * FROM resource_state WHERE ResourceKey=?", NormKey(resourceKey)); |
| | | if (st == null) return LeasePhase.Free; |
| | | int phase = Convert.ToInt32(st["Phase"]); |
| | | if (phase == (int)LeasePhase.RecoveryRequired) return LeasePhase.RecoveryRequired; |
| | | if (phase == (int)LeasePhase.Active && Convert.ToInt64(st["ExpiresUtcMs"]) <= NowMs()) |
| | | return LeasePhase.RecoveryRequired; |
| | | return (LeasePhase)phase; |
| | | } |
| | | } |
| | | |
| | | public int SweepExpired() |
| | | { |
| | | long now = NowMs(); |
| | | using (var conn = Open()) |
| | | { |
| | | BeginImmediateTx(conn); |
| | | try |
| | | { |
| | | var rows = QueryRows(conn, |
| | | "SELECT * FROM resource_state WHERE Phase=1 AND ExpiresUtcMs<=?", now); |
| | | int count = 0; |
| | | foreach (var st in rows) |
| | | { |
| | | string key = st["ResourceKey"]?.ToString() ?? ""; |
| | | long gen = Convert.ToInt64(st["Generation"]); |
| | | long epoch = Convert.ToInt64(st["Epoch"]); |
| | | string leaseId = st["LeaseId"]?.ToString() ?? ""; |
| | | string ownerId = st["OwnerId"]?.ToString() ?? ""; |
| | | Execute(conn, |
| | | "UPDATE resource_state SET Phase=2, UpdatedUtcMs=? WHERE ResourceKey=?", |
| | | now, key); |
| | | Execute(conn, |
| | | @"INSERT INTO lease_history(ResourceKey,Generation,Epoch,LeaseId,OwnerId,EventType,Reason,UtcMs) |
| | | VALUES(?,?,?,?,?,'ExpiredToRecovery','ttl-missed',?)", |
| | | key, gen, epoch, leaseId, ownerId, now); |
| | | Execute(conn, |
| | | @"INSERT OR REPLACE INTO recovery_checkpoint(ResourceKey,Epoch,Status,PhysicalReadbackJson,ApprovedBy,EvidenceUtcMs) |
| | | VALUES(?,?,0,'{}',NULL,?)", key, epoch, now); |
| | | count++; |
| | | } |
| | | CommitTx(conn); |
| | | return count; |
| | | } |
| | | catch |
| | | { |
| | | RollbackTx(conn); |
| | | throw; |
| | | } |
| | | } |
| | | } |
| | | |
| | | public bool ApproveRecovery(string resourceKey, string readbackJson, string approvedBy) |
| | | { |
| | | long now = NowMs(); |
| | | using (var conn = Open()) |
| | | { |
| | | BeginImmediateTx(conn); |
| | | try |
| | | { |
| | | Execute(conn, |
| | | @"INSERT OR REPLACE INTO recovery_checkpoint(ResourceKey,Epoch,Status,PhysicalReadbackJson,ApprovedBy,EvidenceUtcMs) |
| | | VALUES(?,?,1,?,?,?)", |
| | | NormKey(resourceKey), CurrentEpoch, readbackJson, approvedBy, now); |
| | | int n = Execute(conn, |
| | | @"UPDATE resource_state SET Phase=0, LeaseId=NULL, OwnerId=NULL, UpdatedUtcMs=? |
| | | WHERE ResourceKey=? AND Phase=2", |
| | | now, NormKey(resourceKey)); |
| | | Execute(conn, |
| | | @"INSERT INTO lease_history(ResourceKey,Generation,Epoch,LeaseId,OwnerId,EventType,Reason,UtcMs) |
| | | SELECT ResourceKey,Generation,Epoch,'','system','RecoveryApproved',?,? FROM resource_state WHERE ResourceKey=?", |
| | | approvedBy, now, NormKey(resourceKey)); |
| | | CommitTx(conn); |
| | | return n == 1; |
| | | } |
| | | catch |
| | | { |
| | | RollbackTx(conn); |
| | | throw; |
| | | } |
| | | } |
| | | } |
| | | |
| | | /// <summary>å½åå¤äºå¾
åæ¶ç¸ä½çèµæºé®ï¼å«è¿ææªæ«ç Activeï¼ã</summary> |
| | | public string[] GetRecoveryRequiredKeys() |
| | | { |
| | | using (var conn = Open()) |
| | | { |
| | | var rows = QueryRows(conn, |
| | | "SELECT ResourceKey FROM resource_state WHERE Phase=2 OR (Phase=1 AND ExpiresUtcMs<=?)", |
| | | NowMs()); |
| | | return rows.Select(st => st["ResourceKey"]?.ToString() ?? "") |
| | | .Where(k => k.Length > 0).ToArray(); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å¯å¨å¯¹è´¦ï¼å®¿ä¸»èº«ä»½æ´æ¿ï¼ï¼è¿ç¨éå¯åæ§ owner è¿ç¨å·²ä¸åå¨ï¼å
¶ç©ç I/O éè¿ç¨èªç¶éç¦»ï¼ |
| | | /// æ INV-03 æµç¨å®æåæ¶ï¼å
SweepExpired è¿æè½¬å¾
åæ¶ï¼åç»è®°è¯»åè¯æ®å¹¶ç½® Freeã |
| | | /// è¿æ¯ MVP åæºå½¢æçèªå¨åå½¢å¼ï¼å¯å¨æ¹å³å®¿ä¸»èªèº«ï¼ï¼ç产å¤å®¿ä¸»åºæ¹ä¸ºäººå·¥å®¡æ¹ UIï¼P2ï¼ã |
| | | /// </summary> |
| | | /// <returns>æ¬æ¬¡åæ¶çèµæºæ°</returns> |
| | | public int ReconcileAfterBoot(string hostIdentity) |
| | | { |
| | | int swept = SweepExpired(); |
| | | int approved = 0; |
| | | foreach (var key in GetRecoveryRequiredKeys()) |
| | | { |
| | | var evidence = "{\"probe\":\"boot-reconcile\",\"host\":\"" + hostIdentity + "\"}"; |
| | | if (ApproveRecovery(key, evidence, "boot-recovery:" + hostIdentity)) |
| | | approved++; |
| | | } |
| | | if (swept > 0 || approved > 0) |
| | | Log.Info($"[DbLeaseStore] å¯å¨å¯¹è´¦å®æ: swept={swept}, approved={approved} (host={hostIdentity})"); |
| | | return approved; |
| | | } |
| | | |
| | | public void BumpEpochForTest(string reason) |
| | | { |
| | | using (var conn = Open()) |
| | | { |
| | | BeginImmediateTx(conn); |
| | | try |
| | | { |
| | | // æå authority_meta ä¸ç epoch |
| | | Execute(conn, |
| | | "UPDATE authority_meta SET Epoch=Epoch+1, BootId=? WHERE AuthorityId=?", |
| | | Guid.NewGuid().ToString("N"), _authorityId); |
| | | // å¨äºå¡å
è¯»åæ° epochï¼ç¨äºåæ¥æ´æ° resource_state |
| | | var row = QueryRow(conn, |
| | | "SELECT Epoch FROM authority_meta WHERE AuthorityId=?", _authorityId); |
| | | long newEpoch = row != null ? Convert.ToInt64(row["Epoch"]) : CurrentEpoch; |
| | | // 忥æå resource_state ä¸æææ´»è·è¡ç Epochï¼ä½¿æ§ Grant ç Epoch åæ®µå¤±æ |
| | | Execute(conn, |
| | | "UPDATE resource_state SET Epoch=? WHERE Phase=1", |
| | | newEpoch); |
| | | Execute(conn, |
| | | @"INSERT INTO lease_history(ResourceKey,Generation,Epoch,LeaseId,OwnerId,EventType,Reason,UtcMs) |
| | | VALUES('*',0,?,'','system','EpochBump',?,?)", |
| | | newEpoch, reason, NowMs()); |
| | | CommitTx(conn); |
| | | // èµå¼æ¾å¨ Commit ä¹åï¼ä¿è¯ DB ä¸å
å epoch ä¸è´ |
| | | CurrentEpoch = newEpoch; |
| | | Log.Info($"[Lease] epoch æåè³ {CurrentEpoch}: {reason}"); |
| | | } |
| | | catch |
| | | { |
| | | RollbackTx(conn); |
| | | throw; |
| | | } |
| | | } |
| | | } |
| | | |
| | | // ================= è¾
å© ================= |
| | | |
| | | public static string NormKey(string key) => |
| | | key.Trim().ToLowerInvariant().Replace(' ', '-'); |
| | | |
| | | private static long NowMs() => |
| | | DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); |
| | | |
| | | private static int Execute(System.Data.SQLite.SQLiteConnection conn, string sql, |
| | | params object[] args) |
| | | { |
| | | using (var cmd = conn.CreateCommand()) |
| | | { |
| | | cmd.CommandText = sql; |
| | | foreach (var arg in args) |
| | | cmd.Parameters.Add(new System.Data.SQLite.SQLiteParameter { Value = arg }); |
| | | return cmd.ExecuteNonQuery(); |
| | | } |
| | | } |
| | | |
| | | private static Dictionary<string, object> QueryRow( |
| | | System.Data.SQLite.SQLiteConnection conn, string sql, params object[] args) |
| | | { |
| | | using (var cmd = conn.CreateCommand()) |
| | | { |
| | | cmd.CommandText = sql; |
| | | foreach (var arg in args) |
| | | cmd.Parameters.Add(new System.Data.SQLite.SQLiteParameter { Value = arg }); |
| | | using (var reader = cmd.ExecuteReader()) |
| | | { |
| | | if (!reader.Read()) return null; |
| | | var row = new Dictionary<string, object>(StringComparer.OrdinalIgnoreCase); |
| | | for (int i = 0; i < reader.FieldCount; i++) |
| | | row[reader.GetName(i)] = reader.IsDBNull(i) ? null : reader.GetValue(i); |
| | | return row; |
| | | } |
| | | } |
| | | } |
| | | |
| | | private static List<Dictionary<string, object>> QueryRows( |
| | | System.Data.SQLite.SQLiteConnection conn, string sql, params object[] args) |
| | | { |
| | | using (var cmd = conn.CreateCommand()) |
| | | { |
| | | cmd.CommandText = sql; |
| | | foreach (var arg in args) |
| | | cmd.Parameters.Add(new System.Data.SQLite.SQLiteParameter { Value = arg }); |
| | | using (var reader = cmd.ExecuteReader()) |
| | | { |
| | | var rows = new List<Dictionary<string, object>>(); |
| | | while (reader.Read()) |
| | | { |
| | | var row = new Dictionary<string, object>(StringComparer.OrdinalIgnoreCase); |
| | | for (int i = 0; i < reader.FieldCount; i++) |
| | | row[reader.GetName(i)] = reader.IsDBNull(i) ? null : reader.GetValue(i); |
| | | rows.Add(row); |
| | | } |
| | | return rows; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| New file |
| | |
| | | using System.Collections.Concurrent; |
| | | using Aging.Infrastructure.Contracts; |
| | | using Aging.ResourceContracts; |
| | | using log4net; |
| | | |
| | | namespace Aging.Infrastructure.Core |
| | | { |
| | | /// <summary> |
| | | /// åºäº DbLeaseStore ç IResourceManager åå±å®ç°ã |
| | | /// 对å¤ç¾åä¸ ResourceManager å®å
¨ä¸è´ï¼é¶æ¹å¨ï¼ï¼å
é¨è½¬åå° ILeaseCoordinator 仲è£åºã |
| | | /// </summary> |
| | | public sealed class LayeredResourceManager : IResourceManager |
| | | { |
| | | private static readonly ILog Log = LogManager.GetLogger(typeof(LayeredResourceManager)); |
| | | |
| | | private readonly ILeaseCoordinator _lease; |
| | | |
| | | /// <summary> |
| | | /// æ TokenId ç¼åå·²è·åç LeaseGrant æ°ç»ï¼ä¾ ValidateOwner / Release / AcquireOperation 使ç¨ã |
| | | /// </summary> |
| | | private readonly ConcurrentDictionary<string, LeaseGrant[]> _grantsByToken = new(); |
| | | |
| | | /// <summary> |
| | | /// é»è®¤ç§çº¦ TTLï¼ç§ï¼ |
| | | /// </summary> |
| | | private const int DefaultTtlSeconds = 300; // 5 åéï¼è¶³å¤é¿ç¨äº MVP |
| | | |
| | | public LayeredResourceManager(ILeaseCoordinator lease) |
| | | { |
| | | _lease = lease ?? throw new ArgumentNullException(nameof(lease)); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è·ååºå±ç ILeaseCoordinatorï¼ä¾ AutoDeviceLease å¿è·³ç»æä½¿ç¨ï¼ |
| | | /// </summary> |
| | | public ILeaseCoordinator Coordinator => _lease; |
| | | |
| | | // ======================== ReserveAsync ======================== |
| | | |
| | | public async Task<ResourceReservation> ReserveAsync( |
| | | ResourceOwnerToken owner, ResourceKey resource, CancellationToken ct) |
| | | { |
| | | if (owner == null) throw new ArgumentNullException(nameof(owner)); |
| | | if (resource == null) throw new ArgumentNullException(nameof(resource)); |
| | | |
| | | var req = new AcquireRequest |
| | | { |
| | | OwnerId = owner.OwnerId, |
| | | OwnerType = (OwnerTypeV3)(int)owner.OwnerType, |
| | | ResourceKeys = new[] { resource.ToString() }, |
| | | TtlSeconds = DefaultTtlSeconds, |
| | | WaitTimeoutMs = 0, |
| | | Reason = owner.OwnerId |
| | | }; |
| | | |
| | | AcquireOutcome outcome; |
| | | try |
| | | { |
| | | outcome = await Task.Run(() => _lease.Acquire(req), ct).ConfigureAwait(false); |
| | | } |
| | | catch (OperationCanceledException) |
| | | { |
| | | throw; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | Log.Error($"[LayeredRM] Acquire å¼å¸¸: {ex.Message}", ex); |
| | | throw new ResourceConflictException($"èµæº {resource} è·åå¼å¸¸: {ex.Message}", ex); |
| | | } |
| | | |
| | | switch (outcome.Code) |
| | | { |
| | | case AcquireResultCode.Acquired: |
| | | case AcquireResultCode.Reused: |
| | | _grantsByToken[owner.TokenId] = outcome.Grants; |
| | | Log.Info($"[LayeredRM] èµæº {resource} é¢çº¦æåï¼ææè
: {owner.OwnerId}ï¼lease: {outcome.Grants[0].LeaseId}"); |
| | | return new ResourceReservation(resource, owner) |
| | | { |
| | | State = ReservationState.Active, |
| | | Description = $"LeaseId={outcome.Grants[0].LeaseId}" |
| | | }; |
| | | |
| | | case AcquireResultCode.ConflictHeld: |
| | | case AcquireResultCode.Timeout: |
| | | var msg = BuildConflictMessage(resource, outcome.Holder); |
| | | Log.Warn($"[LayeredRM] èµæºå²çª: {msg}"); |
| | | throw new ResourceConflictException(msg); |
| | | |
| | | case AcquireResultCode.RecoveryBlocked: |
| | | throw new ResourceConflictException( |
| | | $"èµæº {resource} å¤äºæ¢å¤ä¸ï¼RecoveryRequiredï¼ï¼æä¸å¯ç¨"); |
| | | |
| | | default: |
| | | throw new ResourceConflictException($"èµæº {resource} è·å失败: {outcome.Code}"); |
| | | } |
| | | } |
| | | |
| | | // ======================== ReleaseReservationAsync ======================== |
| | | |
| | | public async Task ReleaseReservationAsync( |
| | | ResourceOwnerToken owner, ResourceKey resource, CancellationToken ct) |
| | | { |
| | | if (owner == null) throw new ArgumentNullException(nameof(owner)); |
| | | if (resource == null) throw new ArgumentNullException(nameof(resource)); |
| | | |
| | | var grant = FindGrant(owner.TokenId, resource); |
| | | if (grant == null) |
| | | { |
| | | Log.Warn($"[LayeredRM] å°è¯éæ¾æ grant çèµæº: {resource}, owner: {owner.OwnerId}"); |
| | | return; |
| | | } |
| | | |
| | | await Task.Run(() => _lease.Release(grant, owner.OwnerId), ct).ConfigureAwait(false); |
| | | |
| | | // æ¸
é¤ç¼å |
| | | _grantsByToken.TryRemove(owner.TokenId, out _); |
| | | Log.Info($"[LayeredRM] èµæº {resource} å·²éæ¾ï¼ææè
: {owner.OwnerId}"); |
| | | } |
| | | |
| | | // ======================== ValidateOwner ======================== |
| | | |
| | | public bool ValidateOwner(ResourceOwnerToken owner, ResourceKey resource) |
| | | { |
| | | if (owner == null) throw new ArgumentNullException(nameof(owner)); |
| | | if (resource == null) throw new ArgumentNullException(nameof(resource)); |
| | | |
| | | var grant = FindGrant(owner.TokenId, resource); |
| | | if (grant == null) return false; |
| | | |
| | | // æ
æ æ ¡éªï¼Renew ä»
å¨âç§çº¦ä» Active ä¸ generation/epoch å¹é
䏿ªè¿æâæ¶è¿å trueã |
| | | // ç¨å®æ´ TTL ç»æèé 1sï¼æ¢æ ¡éªå½å±ï¼åä½ä¸ºæ¯æ¬¡æä½çä¿æ´»ï¼ |
| | | // é¿å
æç§çº¦å°ææ¶é´ç å° 1s 导è´åç»å¿è·³ Renew å âå·²è¿æâè失败â误æ¥ç§çº¦å¤±æã |
| | | return _lease.Renew(grant, DefaultTtlSeconds); |
| | | } |
| | | |
| | | // ======================== IsReserved ======================== |
| | | |
| | | public bool IsReserved(ResourceKey resource, out ResourceReservation? reservation) |
| | | { |
| | | if (resource == null) throw new ArgumentNullException(nameof(resource)); |
| | | |
| | | var conflict = _lease.ProbeConflict(resource.ToString()); |
| | | if (conflict != null) |
| | | { |
| | | // æé ä¸ä¸ª "å ä½" reservation è¿åç»è°ç¨æ¹ |
| | | var syntheticOwner = new ResourceOwnerToken( |
| | | (OwnerType)(int)conflict.OwnerType, conflict.OwnerId); |
| | | reservation = new ResourceReservation(resource, syntheticOwner, |
| | | $"å ç¨ä¸: {conflict.OwnerId} ({conflict.Reason})") |
| | | { |
| | | State = ReservationState.Active |
| | | }; |
| | | return true; |
| | | } |
| | | |
| | | reservation = null; |
| | | return false; |
| | | } |
| | | |
| | | // ======================== AcquireOperationAsync ======================== |
| | | |
| | | public async Task<IOperationLease> AcquireOperationAsync( |
| | | ResourceOwnerToken owner, ResourceKey resource, CancellationToken ct) |
| | | { |
| | | if (owner == null) throw new ArgumentNullException(nameof(owner)); |
| | | if (resource == null) throw new ArgumentNullException(nameof(resource)); |
| | | |
| | | // æ
æ æ ¡éªï¼ç¡®ä¿ owner 仿æè¯¥èµæº |
| | | if (!ValidateOwner(owner, resource)) |
| | | { |
| | | throw new InvalidOperationException( |
| | | $"èµæº {resource} çææè
æ
æ æ ¡éªå¤±è´¥ï¼owner: {owner.OwnerId}"); |
| | | } |
| | | |
| | | await Task.CompletedTask; |
| | | |
| | | return new OperationLease( |
| | | resource, |
| | | owner, |
| | | onRelease: () => Log.Debug($"[LayeredRM] æä½ç§çº¦éæ¾: {resource}"), |
| | | leaseDurationSeconds: 30); |
| | | } |
| | | |
| | | // ======================== å
é¨è¾
å© ======================== |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ® TokenId è·åç¼åç LeaseGrant æ°ç»ï¼ä¾ AutoDeviceLease å¿è·³ç»æä½¿ç¨ï¼ |
| | | /// </summary> |
| | | public bool TryGetGrants(string tokenId, out LeaseGrant[] grants) |
| | | { |
| | | return _grantsByToken.TryGetValue(tokenId, out grants); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ® TokenId åèµæºé®æ¥æ¾å¯¹åºç LeaseGrant |
| | | /// </summary> |
| | | private LeaseGrant? FindGrant(string tokenId, ResourceKey resource) |
| | | { |
| | | if (!_grantsByToken.TryGetValue(tokenId, out var grants)) |
| | | return null; |
| | | |
| | | var resourceStr = resource.ToString(); |
| | | foreach (var g in grants) |
| | | { |
| | | // DbLeaseStore 对 key åäº NormKeyï¼trim+lower+ç©ºæ ¼æ¿æ¢ä¸º-ï¼ï¼ |
| | | // è¿éç¨ç¸åçè§è忥æ¯è¾ |
| | | if (string.Equals(DbLeaseStore.NormKey(g.ResourceKey), |
| | | DbLeaseStore.NormKey(resourceStr), |
| | | StringComparison.OrdinalIgnoreCase)) |
| | | return g; |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æé å²çªå¼å¸¸æ¶æ¯ |
| | | /// </summary> |
| | | private static string BuildConflictMessage(ResourceKey resource, ConflictInfo? holder) |
| | | { |
| | | if (holder == null) |
| | | return $"èµæº {resource} æ£è¢«å ç¨"; |
| | | |
| | | long nowMs = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); |
| | | long remaining = Math.Max(0, (holder.ExpiresUtcMs - nowMs) / 1000); |
| | | |
| | | return $"èµæº {resource} æ£è¢«å ç¨ï¼{holder.OwnerId}" + |
| | | $"ï¼{holder.OwnerType}ï¼æºå¨ {holder.MachineName} PID {holder.HostProcessId}ï¼" + |
| | | $"å©ä½ç§çº¦ {remaining}sï¼"; |
| | | } |
| | | } |
| | | } |
| New file |
| | |
| | | using System; |
| | | using System.Diagnostics; |
| | | using System.Threading; |
| | | using System.Threading.Tasks; |
| | | using Aging.Infrastructure.Broker; |
| | | using Aging.ResourceContracts; |
| | | using log4net; |
| | | |
| | | namespace Aging.Infrastructure.Drivers |
| | | { |
| | | /// <summary> |
| | | /// Broker ä¼ è¾å端ï¼å½ä»¤ç»å½å管é RPC å§æ DeviceBroker 宿主æ§è¡ï¼ç©çä¼è¯ç±å®¿ä¸»å¯ä¸ææï¼ã |
| | | /// ä¸éå
³å¡ï¼ç½åå/configHash/ç§çº¦æ
æ ï¼ä¸ SessionGate å
¨å¨å®¿ä¸»ä¾§ï¼æ¬ç±»åªåæäº¤ä¸ææ å°ã |
| | | /// æ¥æ¶å¸§ç±å®¿ä¸»éååºä»¥ "|PUSHED:n|EV:RECVâ¦" åç¼æå¸¦è¿åï¼è§£æåç» FramePushed 䏿ï¼Â§5.4 æå¸¦æ¨¡åï¼ã |
| | | /// </summary> |
| | | internal sealed class BrokerRpcTransport : ICanTransport |
| | | { |
| | | private static readonly ILog Log = LogManager.GetLogger(typeof(BrokerRpcTransport)); |
| | | |
| | | private readonly BrokerClientChannel _channel; |
| | | private readonly string _deviceId; |
| | | private readonly string _configHash; |
| | | private bool _disposed; |
| | | |
| | | public bool IsConnected => _channel.IsConnected; |
| | | public event Action<string> FramePushed; |
| | | public event Action TransportBroken; |
| | | |
| | | public BrokerRpcTransport(string deviceId, string pipeName, string configHash) |
| | | { |
| | | _deviceId = deviceId ?? throw new ArgumentNullException(nameof(deviceId)); |
| | | _configHash = configHash ?? ""; |
| | | string instanceId = $"{Environment.MachineName}/{Process.GetCurrentProcess().Id}"; |
| | | _channel = new BrokerClientChannel(pipeName, instanceId); |
| | | } |
| | | |
| | | // busName/nodeIndex 对 Broker æ æä¹ï¼ç©çä¼è¯å¨å®¿ä¸»æè®¾å¤ç«¯ç¹å»ºç«ï¼ï¼CONNECT 峿³¨å |
| | | public Task ConnectAsync(string busName, int nodeIndex, CancellationToken ct) |
| | | => SubmitExpectOkAsync("CONNECT", "", ct); |
| | | |
| | | public Task DisconnectAsync() |
| | | => SubmitExpectOkAsync("DISCONNECT", "", CancellationToken.None); |
| | | |
| | | public async Task<string> TransceiveAsync(string line, CancellationToken ct) |
| | | { |
| | | if (_disposed) throw new ObjectDisposedException(nameof(BrokerRpcTransport)); |
| | | |
| | | // line å½¢å¦ "SEND:â¦" æ "QUERY:â¦"ï¼æ å°å宿主ç½åå opCode + payloadï¼ |
| | | // SEND â 宿主ç device.Driver.SendCommandAsync é宿´ "SEND:frameId:data"ï¼payload ä¿çåç¼ |
| | | // QUERY â 宿主ç device.Driver.QueryAsync éå» QUERY: åç¼ç裸æ¥è¯¢ |
| | | string opCode; |
| | | string payload; |
| | | if (line.StartsWith("SEND:", StringComparison.Ordinal)) |
| | | { |
| | | opCode = "SEND"; |
| | | payload = line; |
| | | } |
| | | else if (line.StartsWith("QUERY:", StringComparison.Ordinal)) |
| | | { |
| | | opCode = "QUERY"; |
| | | payload = line.Substring("QUERY:".Length); |
| | | } |
| | | else |
| | | { |
| | | opCode = "QUERY"; |
| | | payload = line; |
| | | } |
| | | |
| | | var result = await SubmitAsync(opCode, payload, ct).ConfigureAwait(false); |
| | | DrainPiggyback(result.Readback, out string clean); |
| | | return clean; |
| | | } |
| | | |
| | | private async Task SubmitExpectOkAsync(string opCode, string payload, CancellationToken ct) |
| | | { |
| | | var r = await SubmitAsync(opCode, payload, ct).ConfigureAwait(false); |
| | | // CONNECT/DISCONNECT æ ææè¯»å帧ï¼å¿½ç¥æå¸¦ |
| | | _ = r.Readback; |
| | | } |
| | | |
| | | private async Task<BrokerIpc.ResultBody> SubmitAsync(string opCode, string payload, CancellationToken ct) |
| | | { |
| | | try |
| | | { |
| | | await _channel.EnsureConnectedAsync(ct).ConfigureAwait(false); |
| | | var body = new BrokerIpc.SubmitBody |
| | | { |
| | | DeviceId = _deviceId, |
| | | OperationCode = opCode, |
| | | Payload = payload ?? "", |
| | | ResourceKey = _deviceId, |
| | | ClientInstanceId = $"{Environment.MachineName}/{Process.GetCurrentProcess().Id}" |
| | | }; |
| | | var r = await _channel.SubmitAsync(body, _configHash, ct).ConfigureAwait(false); |
| | | ThrowForState(opCode, r); |
| | | return r; |
| | | } |
| | | catch (Exception ex) when (!(ex is ObjectDisposedException)) |
| | | { |
| | | Log.Error($"[BrokerRpcCAN] {_deviceId} {opCode} 失败: {ex.Message}", ex); |
| | | throw; |
| | | } |
| | | } |
| | | |
| | | /// <summary>ä» readback å°¾é¨å¥ç¦» |PUSHED:n|EV:RECV⦠段并触å FramePushedã</summary> |
| | | private void DrainPiggyback(string readback, out string clean) |
| | | { |
| | | clean = readback ?? ""; |
| | | if (string.IsNullOrEmpty(clean)) return; |
| | | |
| | | int idx = clean.IndexOf("|PUSHED:", StringComparison.Ordinal); |
| | | if (idx < 0) return; |
| | | |
| | | string pushSection = clean.Substring(idx + "|PUSHED:".Length); |
| | | clean = clean.Substring(0, idx); |
| | | |
| | | // pushSection å½¢å¦ "n|EV:RECV:â¦|EV:RECV:â¦" |
| | | var segs = pushSection.Split('|'); |
| | | for (int i = 1; i < segs.Length; i++) |
| | | { |
| | | if (segs[i].StartsWith("EV:", StringComparison.Ordinal)) |
| | | FramePushed?.Invoke(segs[i]); |
| | | } |
| | | } |
| | | |
| | | private void ThrowForState(string opCode, BrokerIpc.ResultBody r) |
| | | { |
| | | switch (r.State) |
| | | { |
| | | case "Succeeded": |
| | | return; |
| | | case "RejectedStaleLease": |
| | | throw new InvalidOperationException($"LEASE_STALE: {_deviceId} ç§çº¦æ
æ æ ¡éªå¤±è´¥: {r.ErrorCode} {r.Readback}"); |
| | | case "RejectedConfigMismatch": |
| | | throw new InvalidOperationException($"CONFIG_MISMATCH: Broker çæé
ç½®ä¸æ¬å°å¿«ç
§ä¸ä¸è´(INV-04): {r.Readback}"); |
| | | case "RejectedQueueFull": |
| | | throw new InvalidOperationException($"QUEUE_FULL: {r.Readback}"); |
| | | case "Unknown": |
| | | throw new TimeoutException($"UNKNOWN: {_deviceId} å¨ä½ {opCode} ç»ææªç¥ï¼ç¦æ¢éè¯å宿ªæ§è¡(INV-06): {r.Readback}"); |
| | | default: |
| | | throw new InvalidOperationException($"Broker æ§è¡å¤±è´¥[{r.ErrorCode}]: {r.Readback}"); |
| | | } |
| | | } |
| | | |
| | | public void Dispose() |
| | | { |
| | | if (_disposed) return; |
| | | _disposed = true; |
| | | _channel.Dispose(); |
| | | } |
| | | } |
| | | } |
| New file |
| | |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Diagnostics; |
| | | using System.Linq; |
| | | using System.Text.RegularExpressions; |
| | | using System.Threading; |
| | | using System.Threading.Tasks; |
| | | using Aging.Infrastructure.Contracts; |
| | | using CanSimulator; |
| | | using log4net; |
| | | |
| | | namespace Aging.Infrastructure.Drivers |
| | | { |
| | | /// <summary> |
| | | /// å
¨ç³»ç»å¯ä¸ç CAN 设å¤é©±å¨ãå®ç° IDeviceDriverï¼å½ä»¤è¯ä¹ï¼SEND/QUERYï¼ä¸åéé
å¨ä¸è´ã |
| | | /// Local ä¸ Broker çå·®å¼ä¸æ²å°æé æ¶éæ©ç <see cref="ICanTransport"/> åç«¯ï¼ |
| | | /// Local â <see cref="NodeChannelTransport"/>ï¼TCP ç´è¿ CanSimulatorServerï¼ |
| | | /// Broker â <see cref="BrokerRpcTransport"/>ï¼å½å管éå§æ DeviceBroker å®¿ä¸»ï¼ |
| | | /// æ¥æ¶å¸§ç±å端 FramePushed äºä»¶é©±å¨ï¼è¿å
¥æ¬å°ç¼å²å¹¶è§¦å <see cref="DriverFrameReceived"/>ï¼ |
| | | /// 使è°è¯é¢æ¿ä¸èªå¨åç¨åºå¯¹ä¸¤ç§æ§è¡æ¨¡å¼å®å
¨æ æç¥ã |
| | | /// </summary> |
| | | public sealed class CanDeviceDriver : IDeviceDriver |
| | | { |
| | | private static readonly ILog Log = LogManager.GetLogger(typeof(CanDeviceDriver)); |
| | | |
| | | // ä¿¡æ¯åæ¥è¯¢ï¼ååºå»æä¼ è¾å±ç OK: åç¼ï¼è¿å为éç "VERB:payload" å½¢æï¼é¢æ¿ææ¤è§£æï¼ |
| | | private static readonly Regex InfoVerb = |
| | | new(@"^OK:([A-Z][A-Z_]*):", RegexOptions.Compiled); |
| | | |
| | | private readonly ICanTransport _transport; |
| | | private readonly string _busName; |
| | | private readonly int _nodeIndex; |
| | | private readonly Queue<CanFrame> _recvBuffer = new(); |
| | | private readonly object _bufferLock = new(); |
| | | |
| | | /// <summary>宿主侧å¾
æå¸¦æ¨éè¡ï¼EV:RECV åæï¼ï¼ä¾ BrokerServer éååºè¿½å ç»å®¢æ·ç«¯ã</summary> |
| | | private readonly Queue<string> _pendingPushLines = new(); |
| | | private const int MaxPendingPushLines = 1000; |
| | | private readonly Stopwatch _latency = new(); |
| | | |
| | | private bool _disposed; |
| | | private string _lastError = string.Empty; |
| | | private DateTime? _lastErrorTime; |
| | | private long _txCount; |
| | | private int _reconnectCount; |
| | | |
| | | public string DeviceId { get; } |
| | | public bool IsConnected => !_disposed && _transport.IsConnected; |
| | | |
| | | public event EventHandler<DeviceConnectionEventArgs>? ConnectionChanged; |
| | | |
| | | /// <summary>æ¥æ¶å¸§å³æ¶äºä»¶ï¼Local/Broker ç»ä¸ç±å端æ¨é驱å¨ï¼</summary> |
| | | public event EventHandler<CanFrame>? DriverFrameReceived; |
| | | |
| | | /// <summary>Local 设å¤ï¼ä»ç«¯ç¹è§£æ bus:nodeï¼TCP ç´è¿æ¨¡æå¨ï¼host/port åé
ç½®æè¦çå¼ï¼ã</summary> |
| | | public CanDeviceDriver(string deviceId, string endpoint, |
| | | string hostOverride = null, int? portOverride = null) |
| | | { |
| | | DeviceId = deviceId ?? throw new ArgumentNullException(nameof(deviceId)); |
| | | (_busName, _nodeIndex) = ParseEndpoint(endpoint); |
| | | _transport = new NodeChannelTransport(hostOverride, portOverride, deviceId); |
| | | WireTransport(); |
| | | } |
| | | |
| | | /// <summary>Broker 设å¤ï¼æ³¨å
¥ä»£çä¼ è¾å端ï¼ç± DriverFactory ä¾ ExecutionMode æé ï¼ã</summary> |
| | | internal CanDeviceDriver(string deviceId, string endpoint, ICanTransport transport) |
| | | { |
| | | DeviceId = deviceId ?? throw new ArgumentNullException(nameof(deviceId)); |
| | | (_busName, _nodeIndex) = ParseEndpoint(endpoint); |
| | | _transport = transport ?? throw new ArgumentNullException(nameof(transport)); |
| | | WireTransport(); |
| | | } |
| | | |
| | | /// <summary>Broker 设å¤ä»£çå·¥åï¼å®¢æ·ç«¯/Bootstrapper æ®æ¤æé å§æå®¿ä¸»çç»ä¸é©±å¨ã</summary> |
| | | public static CanDeviceDriver CreateBrokerProxy(string deviceId, string endpoint, string pipeName, string configHash) |
| | | => new CanDeviceDriver(deviceId, endpoint, new BrokerRpcTransport(deviceId, pipeName, configHash)); |
| | | |
| | | private void WireTransport() |
| | | { |
| | | _transport.FramePushed += OnFramePushed; |
| | | _transport.TransportBroken += () => OnConnection(false, "ééæå¼"); |
| | | } |
| | | |
| | | private static (string, int) ParseEndpoint(string endpoint) |
| | | { |
| | | if (string.IsNullOrWhiteSpace(endpoint)) |
| | | throw new ArgumentException("CAN 端ç¹ä¸è½ä¸ºç©º", nameof(endpoint)); |
| | | var parts = endpoint.Split(':'); |
| | | if (parts.Length < 2 || !int.TryParse(parts[1], out int node) || node < 0) |
| | | throw new ArgumentException($"CAN ç«¯ç¹æ ¼å¼åºä¸º æ»çº¿åç§°:èç¹ç¼å·ï¼å®é
: {endpoint}"); |
| | | return (parts[0], node); |
| | | } |
| | | |
| | | public async Task ConnectAsync(CancellationToken ct) |
| | | { |
| | | ThrowIfDisposed(); |
| | | _latency.Restart(); |
| | | try |
| | | { |
| | | await _transport.ConnectAsync(_busName, _nodeIndex, ct).ConfigureAwait(false); |
| | | _lastError = string.Empty; |
| | | OnConnection(true, "è¿æ¥æå"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | _lastError = ex.Message; |
| | | _lastErrorTime = DateTime.Now; |
| | | Log.Error($"[CAN] è®¾å¤ {DeviceId} è¿æ¥å¤±è´¥: {ex.Message}", ex); |
| | | throw; |
| | | } |
| | | finally |
| | | { |
| | | if (_latency.IsRunning) _latency.Stop(); |
| | | } |
| | | } |
| | | |
| | | public async Task DisconnectAsync() |
| | | { |
| | | ThrowIfDisposed(); |
| | | try { await _transport.DisconnectAsync().ConfigureAwait(false); } |
| | | finally { OnConnection(false, "䏻卿å¼"); } |
| | | } |
| | | |
| | | public async Task<string> SendCommandAsync(string command, CancellationToken ct) |
| | | { |
| | | ThrowIfDisposed(); |
| | | await EnsureConnectedAsync(ct).ConfigureAwait(false); |
| | | _latency.Restart(); |
| | | try |
| | | { |
| | | // å½ä»¤ä¸²åæ ·éä¼ ï¼SEND:frameId:dataï¼ï¼ååºå» OK: ä¼ è¾åç¼äº¤ç± QUERY è¯ä¹ï¼ |
| | | // åéååºä¿çéç "OK:TX:â¦" å½¢æï¼ä¸å±ä¸æµè¯æ OK:TX æè¨ï¼ |
| | | string resp = await _transport.TransceiveAsync(command, ct).ConfigureAwait(false); |
| | | Interlocked.Increment(ref _txCount); |
| | | return resp; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | RecordError(ex); |
| | | throw; |
| | | } |
| | | finally |
| | | { |
| | | if (_latency.IsRunning) _latency.Stop(); |
| | | } |
| | | } |
| | | |
| | | public async Task<string> QueryAsync(string query, CancellationToken ct) |
| | | { |
| | | ThrowIfDisposed(); |
| | | await EnsureConnectedAsync(ct).ConfigureAwait(false); |
| | | _latency.Restart(); |
| | | try |
| | | { |
| | | string op = (query ?? "").Split(':')[0].ToUpperInvariant(); |
| | | |
| | | // æ¥æ¶ç±»æ¥è¯¢ç±æ¬å°ç¼å²åºçï¼æ¨é已宿¶å
¥éï¼ï¼æ éå¾è¿æ¨¡æå¨ |
| | | if (op == "RECV") return HandleRecv(); |
| | | if (op == "RECV_ALL") return HandleRecvAll(); |
| | | |
| | | string resp = await _transport.TransceiveAsync("QUERY:" + query, ct).ConfigureAwait(false); |
| | | return NormalizeResponse(resp); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | RecordError(ex); |
| | | throw; |
| | | } |
| | | finally |
| | | { |
| | | if (_latency.IsRunning) _latency.Stop(); |
| | | } |
| | | } |
| | | |
| | | public DeviceDriverStatus GetStatus() => new DeviceDriverStatus |
| | | { |
| | | IsConnected = IsConnected, |
| | | IsHealthy = IsConnected && string.IsNullOrEmpty(_lastError), |
| | | LastError = _lastError, |
| | | LastErrorTime = _lastErrorTime, |
| | | LatencyMs = _latency.IsRunning ? _latency.Elapsed.TotalMilliseconds : 0, |
| | | ReconnectCount = _reconnectCount |
| | | }; |
| | | |
| | | // ==================== æ¨éä¸ç¼å² ==================== |
| | | |
| | | /// <summary>å端 EV:RECV è¡ â è§£æä¸ºå¸§ â å
¥æ¬å°ç¼å² + 触å峿¶äºä»¶ã</summary> |
| | | private void OnFramePushed(string line) |
| | | { |
| | | if (_disposed) return; |
| | | try |
| | | { |
| | | var frame = ParsePush(line); |
| | | if (frame == null) return; |
| | | |
| | | lock (_bufferLock) |
| | | { |
| | | while (_recvBuffer.Count >= 1000) _recvBuffer.Dequeue(); |
| | | _recvBuffer.Enqueue(frame); |
| | | |
| | | // 累积åå§æ¨éè¡ä¾å®¿ä¸»æå¸¦ç»è¿ç«¯å®¢æ·ç«¯ï¼æ»¡å丢æèï¼ |
| | | while (_pendingPushLines.Count >= MaxPendingPushLines) _pendingPushLines.Dequeue(); |
| | | _pendingPushLines.Enqueue(line); |
| | | } |
| | | DriverFrameReceived?.Invoke(this, frame); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | Log.Warn($"[CAN] {DeviceId} æ¨é帧解æå¤±è´¥: {ex.Message} [{line}]"); |
| | | } |
| | | } |
| | | |
| | | private static CanFrame ParsePush(string line) |
| | | { |
| | | // EV:RECV:{frameIdHex}:{dataHex}:{ts}:{srcNodeIndex} |
| | | if (!line.StartsWith("EV:RECV:", StringComparison.Ordinal)) return null; |
| | | var body = line.Substring("EV:RECV:".Length); |
| | | var parts = body.Split(':'); |
| | | if (parts.Length < 2) return null; |
| | | |
| | | uint id = CanFrame.ParseFrameId(parts[0]); |
| | | byte[] data = parts.Length >= 2 ? CanFrame.ParseData(parts[1]) : Array.Empty<byte>(); |
| | | return new CanFrame |
| | | { |
| | | FrameId = id, |
| | | Format = id > 0x7FF ? CanFrameFormat.Extended : CanFrameFormat.Standard, |
| | | Type = CanFrameType.Data, |
| | | Data = data, |
| | | SourceNodeId = parts.Length >= 4 ? parts[3] : "", |
| | | Timestamp = DateTime.Now |
| | | }; |
| | | } |
| | | |
| | | private string HandleRecv() |
| | | { |
| | | lock (_bufferLock) |
| | | { |
| | | if (_recvBuffer.Count == 0) return "RECV:EMPTY"; |
| | | var f = _recvBuffer.Dequeue(); |
| | | return $"RECV:{f.FrameIdHex}:{f.DataHex}:{f.Timestamp:HH:mm:ss.fff}"; |
| | | } |
| | | } |
| | | |
| | | private string HandleRecvAll() |
| | | { |
| | | List<CanFrame> batch = new(); |
| | | lock (_bufferLock) |
| | | { |
| | | while (_recvBuffer.Count > 0) batch.Add(_recvBuffer.Dequeue()); |
| | | } |
| | | if (batch.Count == 0) return "RECV_ALL:0"; |
| | | var items = batch.Select(f => $"{f.FrameIdHex}:{f.DataHex}"); |
| | | return $"RECV_ALL:{batch.Count}:{string.Join("|", items)}"; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// ä¿¡æ¯åæ¥è¯¢ï¼VERB:â¦ï¼å»æä¼ è¾å± OK: åç¼è¿åéçæ ¼å¼ï¼ |
| | | /// å¨ä½ç¡®è®¤ï¼ä¸ææç¤ºçï¼ä¿ç OK:ã |
| | | /// </summary> |
| | | private static string NormalizeResponse(string resp) |
| | | { |
| | | if (string.IsNullOrEmpty(resp)) return resp; |
| | | var m = InfoVerb.Match(resp); |
| | | if (m.Success) |
| | | return resp.Substring(3); // å» "OK:" |
| | | return resp; |
| | | } |
| | | |
| | | // ==================== æé¡¹ ==================== |
| | | |
| | | /// <summary> |
| | | /// 宿主ä¸ç¨ï¼ååºå¹¶æ¸
空èªä¸æ¬¡ä»¥æ¥ç´¯ç§¯çæ¨éè¡ï¼ä¾ BrokerServer æ¼æ¥å°ååº readback å°¾é¨ã |
| | | /// </summary> |
| | | public List<string> DrainPendingPushLines() |
| | | { |
| | | lock (_bufferLock) |
| | | { |
| | | var list = _pendingPushLines.ToList(); |
| | | _pendingPushLines.Clear(); |
| | | return list; |
| | | } |
| | | } |
| | | |
| | | private void EnsureConnected() |
| | | { |
| | | if (!IsConnected) throw new InvalidOperationException($"[CAN] è®¾å¤ {DeviceId} æªè¿æ¥"); |
| | | } |
| | | |
| | | /// <summary>æéè¿æ¥ï¼é¦æ¬¡ I/O æ¶è¥æªè¿æ¥åèªå¨å»ºç«ééï¼å¥åâæéè¿æ¥â设计ï¼ã</summary> |
| | | private async Task EnsureConnectedAsync(CancellationToken ct) |
| | | { |
| | | if (IsConnected) return; |
| | | await ConnectAsync(ct).ConfigureAwait(false); |
| | | } |
| | | |
| | | private void RecordError(Exception ex) |
| | | { |
| | | _lastError = ex.Message; |
| | | _lastErrorTime = DateTime.Now; |
| | | Log.Error($"[CAN] è®¾å¤ {DeviceId} æä½å¤±è´¥: {ex.Message}", ex); |
| | | } |
| | | |
| | | private void OnConnection(bool connected, string reason) |
| | | { |
| | | if (!connected) _reconnectCount++; |
| | | ConnectionChanged?.Invoke(this, new DeviceConnectionEventArgs |
| | | { |
| | | DeviceId = DeviceId, |
| | | IsConnected = connected, |
| | | Reason = reason |
| | | }); |
| | | } |
| | | |
| | | public void Dispose() |
| | | { |
| | | if (_disposed) return; |
| | | _disposed = true; |
| | | try |
| | | { |
| | | _transport.FramePushed -= OnFramePushed; |
| | | _transport.Dispose(); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | Log.Error($"[CAN] è®¾å¤ {DeviceId} éæ¾å¼å¸¸: {ex.Message}", ex); |
| | | } |
| | | } |
| | | |
| | | private void ThrowIfDisposed() |
| | | { |
| | | if (_disposed) throw new ObjectDisposedException(nameof(CanDeviceDriver)); |
| | | } |
| | | } |
| | | } |
| | |
| | | |
| | | case "CAN": |
| | | // CAN 驱å¨: endpoint æ ¼å¼ä¸º "busName:nodeIndex" å¦ "CAN_BUS_1:0" |
| | | string busName = ip; // ip åæ®µç¨ä½æ»çº¿åç§° |
| | | int nodeIndex = port; // port åæ®µç¨ä½èç¹ç¼å· |
| | | Log.Info($"[DriverFactory] å建 CAN èæé©±å¨: Bus={busName}, Node={nodeIndex}"); |
| | | return new CanDriverAdapter(deviceId, busName, nodeIndex); |
| | | // ç»ä¸ç CanDeviceDriverï¼Local é»è®¤èµ° TCP NodeChannel è¿æ¨¡æå¨ï¼ |
| | | Log.Info($"[DriverFactory] å建 CAN 驱å¨: Endpoint={endpoint}"); |
| | | return new CanDeviceDriver(deviceId, endpoint); |
| | | |
| | | default: |
| | | throw new NotSupportedException($"䏿¯æçä¼ è¾å议类å: {transport}ãæ¯æçç±»å: Tcp, SCPI, ModBus, S7, Serial, CAN"); |
| New file |
| | |
| | | using System; |
| | | using System.Threading; |
| | | using System.Threading.Tasks; |
| | | |
| | | namespace Aging.Infrastructure.Drivers |
| | | { |
| | | /// <summary> |
| | | /// CAN 驱å¨ä¼ è¾å端æ½è±¡ï¼å±è½ Local(TCP ç´è¿æ¨¡æå¨) ä¸ Broker(å½å管éå§æå®¿ä¸») å·®å¼ã |
| | | /// ä¸å± <see cref="CanDeviceDriver"/> åªä¸æ¬æ¥å£äº¤äºï¼å½ä»¤ä¸²è¯ä¹åæ ·éä¼ ã |
| | | /// </summary> |
| | | internal interface ICanTransport : IDisposable |
| | | { |
| | | /// <summary>å端æ¯å¦å¤äºå¯ç¨è¿æ¥æ</summary> |
| | | bool IsConnected { get; } |
| | | |
| | | /// <summary>建ç«ééï¼TCP è¿æ¥ + HELLO æè½½ / Broker CONNECT 注åç©çä¼è¯ï¼</summary> |
| | | Task ConnectAsync(string busName, int nodeIndex, CancellationToken ct); |
| | | |
| | | /// <summary>æå¼å½åèç¹æè½½ï¼TCP DISCONNECT / Broker DISCONNECTï¼</summary> |
| | | Task DisconnectAsync(); |
| | | |
| | | /// <summary> |
| | | /// åéä¸è¡å½ä»¤å¹¶çå¾
ååºè¡ãline ä¸ºå®æ´å½ä»¤ä¸²ï¼SEND:⦠æ QUERY:â¦ï¼ã |
| | | /// è¿åååºææ¬ï¼å« OK:/ERR: åç¼ï¼ç±ä¸å±è§£æï¼ï¼è¶
æ¶/æçº¿æå¼å¸¸ã |
| | | /// </summary> |
| | | Task<string> TransceiveAsync(string line, CancellationToken ct); |
| | | |
| | | /// <summary>æå¡ç«¯æ¨éç EV:RECV è¡å°è¾¾ï¼NodeChannel 为 TCP ç´æ¨ï¼BrokerRpc 为éååºæå¸¦ï¼</summary> |
| | | event Action<string> FramePushed; |
| | | |
| | | /// <summary>ééæè£äºä»¶ï¼è§¦åä¸å±éè¿/ç¶ææ´æ°ï¼</summary> |
| | | event Action TransportBroken; |
| | | } |
| | | } |
| New file |
| | |
| | | using System; |
| | | using System.Configuration; |
| | | using System.IO; |
| | | using System.Net.Sockets; |
| | | using System.Threading; |
| | | using System.Threading.Tasks; |
| | | using CanSimulator; |
| | | using log4net; |
| | | |
| | | namespace Aging.Infrastructure.Drivers |
| | | { |
| | | /// <summary> |
| | | /// Local ä¼ è¾å端ï¼TCP ç´è¿ CanSimulatorServerï¼æ¡æ HELLO æè½½ (bus,nodeIndex)ï¼ |
| | | /// å½ä»¤ä¸²ç» TransceiveAsync ä¸é®ä¸çï¼æ¥æ¶å¸§ç±æå¡ç«¯ EV:RECV 䏻卿¨é触å FramePushedã |
| | | /// </summary> |
| | | internal sealed class NodeChannelTransport : ICanTransport |
| | | { |
| | | private static readonly ILog Log = LogManager.GetLogger(typeof(NodeChannelTransport)); |
| | | |
| | | private readonly string _host; |
| | | private readonly int _port; |
| | | private readonly string _clientTag; |
| | | |
| | | private TcpClient _socket; |
| | | private Stream _stream; |
| | | private CancellationTokenSource _cts; |
| | | private Task _readLoop; |
| | | |
| | | // ä¸é®ä¸çï¼å䏿¶å»ä»
ä¸ä¸ªå¨éè¯·æ± |
| | | private readonly SemaphoreSlim _requestLock = new(1, 1); |
| | | private TaskCompletionSource<string> _pending; |
| | | |
| | | private volatile bool _connected; |
| | | private bool _disposed; |
| | | private string _busName; |
| | | private int _nodeIndex = -1; |
| | | |
| | | public bool IsConnected => _connected; |
| | | public event Action<string> FramePushed; |
| | | public event Action TransportBroken; |
| | | |
| | | public NodeChannelTransport(string hostOverride, int? portOverride, string clientTag) |
| | | { |
| | | _host = hostOverride ?? ReadCfg("CanSimulator.Host", "127.0.0.1"); |
| | | _port = portOverride ?? ReadIntCfg("CanSimulator.Port", 9000); |
| | | _clientTag = clientTag ?? $"{Environment.MachineName}/{System.Diagnostics.Process.GetCurrentProcess().Id}"; |
| | | } |
| | | |
| | | private static string ReadCfg(string key, string def) |
| | | { |
| | | try { var v = ConfigurationManager.AppSettings[key]; return string.IsNullOrWhiteSpace(v) ? def : v; } |
| | | catch { return def; } |
| | | } |
| | | private static int ReadIntCfg(string key, int def) |
| | | => int.TryParse(ReadCfg(key, null), out int v) ? v : def; |
| | | |
| | | public async Task ConnectAsync(string busName, int nodeIndex, CancellationToken ct) |
| | | { |
| | | if (_disposed) throw new ObjectDisposedException(nameof(NodeChannelTransport)); |
| | | _busName = busName; |
| | | _nodeIndex = nodeIndex; |
| | | |
| | | try |
| | | { |
| | | _socket = new TcpClient(); |
| | | await _socket.ConnectAsync(_host, _port).ConfigureAwait(false); |
| | | _socket.NoDelay = true; |
| | | _stream = _socket.GetStream(); |
| | | _cts = new CancellationTokenSource(); |
| | | |
| | | // HELLO æ¡æï¼è¯»å¾ªç¯å¯å¨å忥ç´è¯»ä¸è¡ååºï¼æ¤æ¶æ 并忍éï¼ |
| | | string ack = await HandshakeAsync( |
| | | $"HELLO:{busName}:{nodeIndex}:{_clientTag}", ct).ConfigureAwait(false); |
| | | |
| | | if (ack == "ERR:NODE_BUSY") |
| | | throw new InvalidOperationException( |
| | | $"模æå¨æ»çº¿ {busName} ä¸èç¹ç¼å· {nodeIndex} 已被å ç¨ï¼è¯·ä¿®æ¹è®¾å¤ç«¯ç¹çèç¹ç¼å·"); |
| | | if (!ack.StartsWith("OK:HELLO", StringComparison.Ordinal)) |
| | | throw new InvalidOperationException($"模æå¨æ¡æå¤±è´¥: {ack}"); |
| | | |
| | | _connected = true; |
| | | _readLoop = Task.Run(() => ReadLoopAsync(_cts.Token)); |
| | | Log.Info($"[CAN-TCP] å·²æè½½ {busName}:N{nodeIndex} @ {_host}:{_port}"); |
| | | } |
| | | catch (SocketException ex) |
| | | { |
| | | SafeCleanupSocket(); |
| | | throw new InvalidOperationException( |
| | | $"æ æ³è¿æ¥ CAN 模æå¨æå¡ {_host}:{_port}ï¼{ex.Message}ï¼ã请å
å¯å¨ CanSimulatorServer.exe", ex); |
| | | } |
| | | } |
| | | |
| | | public async Task DisconnectAsync() |
| | | { |
| | | if (!_connected) return; |
| | | try { await RequestLineAsync("DISCONNECT", CancellationToken.None).ConfigureAwait(false); } |
| | | catch { /* æå¼å°½åè为 */ } |
| | | Teardown(); |
| | | } |
| | | |
| | | public async Task<string> TransceiveAsync(string line, CancellationToken ct) |
| | | { |
| | | if (_disposed) throw new ObjectDisposedException(nameof(NodeChannelTransport)); |
| | | if (!_connected) throw new InvalidOperationException("CAN ééæªè¿æ¥"); |
| | | try |
| | | { |
| | | return await RequestLineAsync(line, ct).ConfigureAwait(false); |
| | | } |
| | | catch (IOException ex) |
| | | { |
| | | OnBroken(); |
| | | throw new InvalidOperationException("CAN 模æå¨è¿æ¥å·²ä¸æ: " + ex.Message, ex); |
| | | } |
| | | } |
| | | |
| | | /// <summary>æ¡æä¸ç¨ï¼å HELLO åç´æ¥åæ¥è¯»åä¸è¡ååºï¼è¯»å¾ªç¯å°æªå¯å¨ï¼æ å¹¶åï¼ã</summary> |
| | | private async Task<string> HandshakeAsync(string helloLine, CancellationToken ct) |
| | | { |
| | | byte[] frame = SimulatorFraming.Encode(helloLine); |
| | | await _stream.WriteAsync(frame, 0, frame.Length, ct).ConfigureAwait(false); |
| | | await _stream.FlushAsync(ct).ConfigureAwait(false); |
| | | string resp = await SimulatorFraming.ReadFrameAsync(_stream, ct).ConfigureAwait(false); |
| | | return resp ?? "<EOF>"; |
| | | } |
| | | |
| | | /// <summary>åéä¸è¡å¹¶çå¾
å
¶ååºè¡ï¼EV:RECV æ¨é卿¤è¿ç¨ä¸è¢«åæµåºå»ï¼ä¸è®¡ä¸ºååºã</summary> |
| | | private async Task<string> RequestLineAsync(string line, CancellationToken ct) |
| | | { |
| | | await _requestLock.WaitAsync(ct).ConfigureAwait(false); |
| | | try |
| | | { |
| | | var tcs = new TaskCompletionSource<string>(TaskCreationOptions.RunContinuationsAsynchronously); |
| | | _pending = tcs; |
| | | |
| | | byte[] frame = SimulatorFraming.Encode(line); |
| | | await _stream.WriteAsync(frame, 0, frame.Length, ct).ConfigureAwait(false); |
| | | await _stream.FlushAsync(ct).ConfigureAwait(false); |
| | | |
| | | // deadlineï¼é»è®¤ 5sï¼è¶
æ¶è§ä¸ºç»ææªç¥ï¼ä¸å±ç¦æ¢å宿ªæ§è¡ï¼ |
| | | var timeoutTask = Task.Delay(TimeSpan.FromSeconds(5), ct); |
| | | var done = await Task.WhenAny(tcs.Task, timeoutTask).ConfigureAwait(false); |
| | | if (done != tcs.Task) |
| | | { |
| | | _pending = null; |
| | | throw new TimeoutException($"CAN 模æå¨å½ä»¤è¶
æ¶: {line}"); |
| | | } |
| | | _pending = null; |
| | | ct.ThrowIfCancellationRequested(); |
| | | return await tcs.Task.ConfigureAwait(false); |
| | | } |
| | | finally |
| | | { |
| | | _requestLock.Release(); |
| | | } |
| | | } |
| | | |
| | | private async Task ReadLoopAsync(CancellationToken ct) |
| | | { |
| | | try |
| | | { |
| | | while (!ct.IsCancellationRequested) |
| | | { |
| | | string resp = await SimulatorFraming.ReadFrameAsync(_stream, ct).ConfigureAwait(false); |
| | | if (resp == null) break; // EOF |
| | | |
| | | if (resp.StartsWith("EV:", StringComparison.Ordinal)) |
| | | { |
| | | FramePushed?.Invoke(resp); |
| | | continue; |
| | | } |
| | | |
| | | // æ®éååºï¼äº¤ç»å¨éè¯·æ± |
| | | _pending?.TrySetResult(resp); |
| | | } |
| | | } |
| | | catch (IOException) { } |
| | | catch (InvalidDataException) { } |
| | | catch (OperationCanceledException) { } |
| | | catch (Exception ex) { Log.Warn($"[CAN-TCP] 读循ç¯å¼å¸¸: {ex.Message}"); } |
| | | finally |
| | | { |
| | | if (!_disposed) OnBroken(); |
| | | } |
| | | } |
| | | |
| | | private void OnBroken() |
| | | { |
| | | if (!_connected && _pending == null) return; |
| | | _connected = false; |
| | | _pending?.TrySetException(new IOException("CAN 模æå¨ééå·²æå¼")); |
| | | TransportBroken?.Invoke(); |
| | | } |
| | | |
| | | private void Teardown() |
| | | { |
| | | _connected = false; |
| | | try { _cts?.Cancel(); } catch { } |
| | | SafeCleanupSocket(); |
| | | } |
| | | |
| | | private void SafeCleanupSocket() |
| | | { |
| | | try { _stream?.Dispose(); } catch { } |
| | | try { _socket?.Close(); } catch { } |
| | | _stream = null; |
| | | _socket = null; |
| | | } |
| | | |
| | | public void Dispose() |
| | | { |
| | | if (_disposed) return; |
| | | _disposed = true; |
| | | Teardown(); |
| | | try { _readLoop?.Wait(200); } catch { } |
| | | _requestLock.Dispose(); |
| | | _cts?.Dispose(); |
| | | } |
| | | } |
| | | } |
| | |
| | | using System.IO; |
| | | using log4net; |
| | | using HMI.Core.Util; |
| | | using Aging.Infrastructure.Broker; |
| | | using Aging.Infrastructure.Contracts; |
| | | using Aging.Infrastructure.Core; |
| | | using Aging.Infrastructure.Services; |
| | |
| | | { |
| | | log.Info("å¼å§åå§ååºç¡è®¾æ½æå¡..."); |
| | | |
| | | // 1. å建 ResourceManager åä¾ |
| | | var resourceManager = new ResourceManager(); |
| | | // V3.0 MVPï¼ä»²è£åº arb.dbï¼ä¸ data.db åç®å½ï¼ |
| | | string arbPath = Path.Combine(Path.GetDirectoryName(deviceConfigDbPath)!, "arb.db"); |
| | | var leaseStore = new DbLeaseStore(arbPath, "local-main"); |
| | | // V3.0 INV-03ï¼å¯å¨å¯¹è´¦ââ䏿¬¡è¿ç¨å¼å¸¸éåºæªéæ¾çç§çº¦å¨æ¬æºå®¿ä¸»æ´æ¿åèªå¨åæ¶ï¼ |
| | | // é¿å
è°è¯/ç产维æ¤è¢« RecoveryRequired æ°¸ä¹
é»å¡ï¼è¯æ®åå
¥ recovery_checkpointï¼ |
| | | leaseStore.ReconcileAfterBoot($"{Environment.MachineName}/{System.Diagnostics.Process.GetCurrentProcess().Id}"); |
| | | var resourceManager = new LayeredResourceManager(leaseStore); |
| | | UtilContainer.RegisterUtil("LeaseCoordinator", leaseStore); |
| | | UtilContainer.RegisterUtil("ResourceManager", resourceManager); |
| | | log.Info("ResourceManager 已注å"); |
| | | log.Info("LayeredResourceManager (åºäº DbLeaseStore) 已注å"); |
| | | |
| | | // 2. å建 DeviceManager åä¾ |
| | | var deviceManager = new DeviceManager(); |
| | |
| | | UtilContainer.RegisterUtil("PowerSupplyService", powerSupplyService); |
| | | log.Info("PowerSupplyService 已注å"); |
| | | |
| | | // 6. 仿°æ®åºå 载设å¤å®ä¹å¹¶æ³¨åé©±å¨ |
| | | // 6. å建 AutoDeviceFacade (èªå¨åæµè¯å
¥å£) |
| | | var autoFacade = new AutoDeviceFacade(resourceManager, deviceService); |
| | | UtilContainer.RegisterUtil("AutoDeviceFacade", autoFacade); |
| | | log.Info("AutoDeviceFacade 已注å"); |
| | | |
| | | // 7. å建 CanBusService (CAN ç±»ååæå¡) |
| | | var canBusService = new CanBusService(autoFacade); |
| | | UtilContainer.RegisterUtil("CanBusService", canBusService); |
| | | log.Info("CanBusService 已注å"); |
| | | |
| | | // 8. 仿°æ®åºå 载设å¤å®ä¹å¹¶æ³¨åé©±å¨ |
| | | LoadDevicesFromConfig(deviceManager, mappingResolver); |
| | | |
| | | // 8.5. V3.0 æ··åæ¶æï¼Broker åè®¾å¤æ³¨å代ç驱å¨ï¼ç©çä¼è¯ç± DeviceBroker.exe 宿主å¯ä¸ææï¼ |
| | | RegisterBrokeredDrivers(deviceManager, deviceConfigDbPath); |
| | | |
| | | _initialized = true; |
| | | log.Info("åºç¡è®¾æ½æå¡åå§å宿"); |
| | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// V3.0ï¼æ«æé
ç½®åºä¸ ExecutionMode=Broker ç设å¤ï¼æ³¨åç»ä¸ CanDeviceDriverï¼BrokerRpc 代çå端ï¼ã |
| | | /// Local 设å¤ä¿æç°æç´é©±è·¯å¾ä¸åï¼Broker 宿主æªå¯å¨æ¶ä»£çä»
å¨åèµ· I/O æ¶å¤±è´¥ï¼ä¸é»å¡åå§åã |
| | | /// </summary> |
| | | private static void RegisterBrokeredDrivers(IDeviceManager deviceManager, string deviceConfigDbPath) |
| | | { |
| | | try |
| | | { |
| | | if (!File.Exists(deviceConfigDbPath)) return; |
| | | |
| | | var brokeredDevices = new System.Collections.Generic.List<(string DeviceId, string BrokerId, string Endpoint)>(); |
| | | using (var conn = new System.Data.SQLite.SQLiteConnection( |
| | | $"Data Source={deviceConfigDbPath};Version=3;Read Only=True;")) |
| | | { |
| | | conn.Open(); |
| | | using var cmd = conn.CreateCommand(); |
| | | cmd.CommandText = "SELECT DeviceId, BrokerId, Endpoint FROM DeviceDefinition WHERE ExecutionMode = 'Broker';"; |
| | | using var rd = cmd.ExecuteReader(); |
| | | while (rd.Read()) |
| | | { |
| | | string id = rd.GetString(0); |
| | | string brokerId = rd.IsDBNull(1) ? "" : rd.GetString(1); |
| | | string endpoint = rd.IsDBNull(2) ? "" : rd.GetString(2); |
| | | if (!string.IsNullOrWhiteSpace(brokerId)) |
| | | brokeredDevices.Add((id, brokerId, endpoint)); |
| | | } |
| | | } |
| | | |
| | | if (brokeredDevices.Count == 0) return; |
| | | |
| | | // INV-04ï¼å®¢æ·ç«¯ä¾§çæé
置快ç
§ï¼éæ¯æ¬¡ RPC æäº¤ä¾ Broker 对账 |
| | | string configHash; |
| | | try { configHash = DeviceConfigHash.Compute(deviceConfigDbPath); } |
| | | catch { configHash = ""; } |
| | | |
| | | foreach (var (deviceId, brokerId, endpoint) in brokeredDevices) |
| | | { |
| | | if (deviceManager.GetDriver(deviceId) != null) continue; |
| | | var driver = CanDeviceDriver.CreateBrokerProxy(deviceId, endpoint, BrokerPipeName.For(brokerId), configHash); |
| | | deviceManager.RegisterDriver(deviceId, driver); |
| | | log.Info($"[Bootstrapper] è®¾å¤ {deviceId} 已注å Broker 代çé©±å¨ (管é={BrokerPipeName.For(brokerId)}, hash={configHash.Substring(0, Math.Min(8, configHash.Length))})"); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | // ä»£çæ³¨å失败é级ï¼ä¸å½±å Local ç´é©±è®¾å¤é¾è·¯ |
| | | log.Warn($"[Bootstrapper] Broker 代ç驱卿³¨å失败ï¼Broker é¾è·¯ä¸å¯ç¨ï¼Local 设å¤ä¸åå½±åï¼: {ex.Message}", ex); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// ä» DeviceConfig æ°æ®åºå 载设å¤å®ä¹å¹¶æ³¨åé©±å¨ |
| | | /// </summary> |
| | | private static void LoadDevicesFromConfig(IDeviceManager deviceManager, SlotDeviceMappingResolver mappingResolver) |
| New file |
| | |
| | | using System; |
| | | using System.Threading; |
| | | using System.Threading.Tasks; |
| | | using Aging.Infrastructure.Contracts; |
| | | using Aging.Infrastructure.Core; |
| | | using Aging.ResourceContracts; |
| | | using log4net; |
| | | |
| | | namespace Aging.Infrastructure.Services |
| | | { |
| | | /// <summary> |
| | | /// èªå¨å设å¤é¨é¢å®ç°ã |
| | | /// |
| | | /// çå½å¨æï¼ |
| | | /// 1) ReserveAsync ç³è¯·èµæºå ç¨ â å¾å° ResourceOwnerToken |
| | | /// 2) DeviceService åæ´¾å½ä»¤ â å
é¨åæ¿æä½ç§çº¦ |
| | | /// 3) ReleaseReservationAsync éæ¾èµæº |
| | | /// |
| | | /// 两ç§è°ç¨æ¨¡å¼ï¼ |
| | | /// - ExecuteAsync/QueryAsyncï¼ä¸æ¬¡æ§æ§è¡ï¼å
é¨å®æ 1â2â3ï¼ |
| | | /// - AcquireAsyncï¼ä½ç¨åç§çº¦ï¼1 æå¨è§¦åï¼3 å¨ lease.Dispose æ¶è§¦åï¼2 å¯å¤æ¬¡ï¼ |
| | | /// </summary> |
| | | public sealed class AutoDeviceFacade : IAutoDeviceFacade |
| | | { |
| | | private static readonly ILog Log = LogManager.GetLogger(typeof(AutoDeviceFacade)); |
| | | |
| | | private readonly IResourceManager _resourceManager; |
| | | private readonly IDeviceService _deviceService; |
| | | |
| | | /// <summary> |
| | | /// é»è®¤ç§çº¦ç³è¯·è¶
æ¶ï¼ç§ï¼ |
| | | /// </summary> |
| | | public int DefaultLeaseTimeoutSeconds { get; set; } = 30; |
| | | |
| | | /// <summary> |
| | | /// æé 彿° |
| | | /// </summary> |
| | | public AutoDeviceFacade(IResourceManager resourceManager, IDeviceService deviceService) |
| | | { |
| | | _resourceManager = resourceManager ?? throw new ArgumentNullException(nameof(resourceManager)); |
| | | _deviceService = deviceService ?? throw new ArgumentNullException(nameof(deviceService)); |
| | | } |
| | | |
| | | // ==================== 䏿¬¡æ§æ§è¡æ¨¡å¼ ==================== |
| | | |
| | | /// <inheritdoc/> |
| | | public async Task<DeviceCommandResult> ExecuteAsync( |
| | | string deviceId, string command, CancellationToken ct = default) |
| | | { |
| | | if (string.IsNullOrWhiteSpace(deviceId)) |
| | | throw new ArgumentException("è®¾å¤ ID ä¸è½ä¸ºç©º", nameof(deviceId)); |
| | | if (string.IsNullOrWhiteSpace(command)) |
| | | throw new ArgumentException("å½ä»¤ä¸è½ä¸ºç©º", nameof(command)); |
| | | |
| | | // 1. ç³è¯·èµæºå ç¨ |
| | | var owner = await ReserveCoreAsync(deviceId, "OneShot", ct).ConfigureAwait(false); |
| | | try |
| | | { |
| | | // 2. éè¿ DeviceService åæ´¾å½ä»¤ |
| | | return await _deviceService.ExecuteCommandAsync(deviceId, command, owner, ct) |
| | | .ConfigureAwait(false); |
| | | } |
| | | finally |
| | | { |
| | | // 3. æ 论æå失败é½éæ¾èµæº |
| | | await ReleaseCoreAsync(deviceId, owner).ConfigureAwait(false); |
| | | } |
| | | } |
| | | |
| | | /// <inheritdoc/> |
| | | public async Task<DeviceCommandResult> QueryAsync( |
| | | string deviceId, string query, CancellationToken ct = default) |
| | | { |
| | | if (string.IsNullOrWhiteSpace(deviceId)) |
| | | throw new ArgumentException("è®¾å¤ ID ä¸è½ä¸ºç©º", nameof(deviceId)); |
| | | |
| | | var owner = await ReserveCoreAsync(deviceId, "OneShotQuery", ct).ConfigureAwait(false); |
| | | try |
| | | { |
| | | return await _deviceService.ExecuteQueryAsync(deviceId, query, owner, ct) |
| | | .ConfigureAwait(false); |
| | | } |
| | | finally |
| | | { |
| | | await ReleaseCoreAsync(deviceId, owner).ConfigureAwait(false); |
| | | } |
| | | } |
| | | |
| | | // ==================== ä½ç¨åç§çº¦æ¨¡å¼ ==================== |
| | | |
| | | /// <inheritdoc/> |
| | | public async Task<IAutoDeviceLease> AcquireAsync( |
| | | string deviceId, string stepName, CancellationToken ct = default) |
| | | { |
| | | if (string.IsNullOrWhiteSpace(deviceId)) |
| | | throw new ArgumentException("è®¾å¤ ID ä¸è½ä¸ºç©º", nameof(deviceId)); |
| | | |
| | | var owner = await ReserveCoreAsync(deviceId, stepName ?? "Step", ct).ConfigureAwait(false); |
| | | var sessionId = Guid.NewGuid().ToString(); |
| | | |
| | | Log.Info($"[AutoFacade] è®¾å¤ {deviceId} å·²è·å¾ä½ç¨åç§çº¦: Session={sessionId.Substring(0, 8)}, Step={stepName}"); |
| | | |
| | | var lease = new AutoDeviceLease(this, _deviceService, deviceId, sessionId, stepName ?? "Step", owner); |
| | | |
| | | // 妿åºå±æ¯ LayeredResourceManagerï¼å¯å¨å¿è·³ç»æ |
| | | if (_resourceManager is LayeredResourceManager lrm) |
| | | { |
| | | if (lrm.TryGetGrants(owner.TokenId, out var grants)) |
| | | { |
| | | lease.StartHeartbeat(lrm.Coordinator, grants); |
| | | } |
| | | } |
| | | |
| | | return lease; |
| | | } |
| | | |
| | | // ==================== å
é¨è¾
å© ==================== |
| | | |
| | | /// <summary> |
| | | /// å
é¨ï¼ç³è¯·èµæºå ç¨ã |
| | | /// ä½¿ç¨ OwnerType.Productionï¼èªå¨åæµè¯è§ä¸ºç产æµç¨ï¼ï¼ |
| | | /// ä¼ä¸å
¶ä»æµè¯/ç»´æ¤ä¼è¯äºæ¥ã |
| | | /// </summary> |
| | | private async Task<ResourceOwnerToken> ReserveCoreAsync( |
| | | string deviceId, string purpose, CancellationToken ct) |
| | | { |
| | | var owner = new ResourceOwnerToken(OwnerType.Production, $"auto_{Guid.NewGuid():N}"); |
| | | var resourceKey = new ResourceKey(deviceId, "Generic"); |
| | | |
| | | // 使ç¨è¶
æ¶å
è£
|
| | | using (var cts = CancellationTokenSource.CreateLinkedTokenSource(ct)) |
| | | { |
| | | cts.CancelAfter(TimeSpan.FromSeconds(DefaultLeaseTimeoutSeconds)); |
| | | try |
| | | { |
| | | await _resourceManager.ReserveAsync(owner, resourceKey, cts.Token).ConfigureAwait(false); |
| | | Log.Debug($"[AutoFacade] è®¾å¤ {deviceId} å·²é¢çº¦ (purpose={purpose}, owner={owner.OwnerId})"); |
| | | } |
| | | catch (OperationCanceledException) |
| | | { |
| | | throw new TimeoutException($"è®¾å¤ {deviceId} ç§çº¦ç³è¯·è¶
æ¶ï¼{DefaultLeaseTimeoutSeconds}sï¼ï¼å¯è½è¢«ç产æç»´æ¤å ç¨"); |
| | | } |
| | | catch (ResourceConflictException ex) |
| | | { |
| | | throw new InvalidOperationException( |
| | | $"è®¾å¤ {deviceId} 已被å
¶ä»ææè
å ç¨: {ex.Message}", ex); |
| | | } |
| | | } |
| | | |
| | | return owner; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å
é¨ï¼éæ¾èµæºå ç¨ã |
| | | /// </summary> |
| | | internal async Task ReleaseCoreAsync(string deviceId, ResourceOwnerToken owner) |
| | | { |
| | | try |
| | | { |
| | | var resourceKey = new ResourceKey(deviceId, "Generic"); |
| | | await _resourceManager.ReleaseReservationAsync(owner, resourceKey, CancellationToken.None) |
| | | .ConfigureAwait(false); |
| | | Log.Debug($"[AutoFacade] è®¾å¤ {deviceId} 已鿾é¢çº¦ (owner={owner.OwnerId})"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | // éæ¾å¤±è´¥ä¸é»å¡ä¸»æµç¨ï¼ä»
è®°å½ |
| | | Log.Warn($"[AutoFacade] éæ¾è®¾å¤ {deviceId} é¢çº¦å¼å¸¸: {ex.Message}"); |
| | | } |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// èªå¨å设å¤ä½ç¨åç§çº¦å®ç°ã |
| | | /// Dispose æ¶èªå¨éæ¾åºå±èµæºå ç¨ã |
| | | /// å¹çï¼å¤æ¬¡ Dispose åªéæ¾ä¸æ¬¡ã |
| | | /// </summary> |
| | | internal sealed class AutoDeviceLease : IAutoDeviceLease |
| | | { |
| | | private readonly AutoDeviceFacade _facade; |
| | | private readonly IDeviceService _deviceService; |
| | | private readonly ResourceOwnerToken _owner; |
| | | private bool _disposed; |
| | | |
| | | // V3.0 å¿è·³ç»æå段 |
| | | private LeaseGrant[] _grants = new LeaseGrant[0]; |
| | | private Timer? _beacon; |
| | | private volatile int _renewFailures; |
| | | private ILeaseCoordinator? _coordinator; |
| | | public event EventHandler? LeaseLost; |
| | | public bool HandoverRequested => false; |
| | | |
| | | public string DeviceId { get; } |
| | | public string SessionId { get; } |
| | | public string StepName { get; } |
| | | public DateTime AcquiredAt { get; } |
| | | public bool IsReleased => _disposed; |
| | | |
| | | internal AutoDeviceLease( |
| | | AutoDeviceFacade facade, |
| | | IDeviceService deviceService, |
| | | string deviceId, |
| | | string sessionId, |
| | | string stepName, |
| | | ResourceOwnerToken owner) |
| | | { |
| | | _facade = facade; |
| | | _deviceService = deviceService; |
| | | DeviceId = deviceId; |
| | | SessionId = sessionId; |
| | | StepName = stepName; |
| | | AcquiredAt = DateTime.Now; |
| | | _owner = owner; |
| | | } |
| | | |
| | | internal void StartHeartbeat(ILeaseCoordinator coordinator, LeaseGrant[] grants) |
| | | { |
| | | _coordinator = coordinator; |
| | | _grants = grants; |
| | | _beacon = new Timer(_ => |
| | | { |
| | | if (_disposed) return; |
| | | try |
| | | { |
| | | bool allOk = true; |
| | | foreach (var g in _grants) |
| | | { |
| | | if (!_coordinator.Renew(g, 30)) { allOk = false; break; } |
| | | } |
| | | if (allOk) |
| | | Interlocked.Exchange(ref _renewFailures, 0); |
| | | else |
| | | Interlocked.Increment(ref _renewFailures); |
| | | if (Volatile.Read(ref _renewFailures) >= 2) LeaseLost?.Invoke(this, EventArgs.Empty); |
| | | } |
| | | catch |
| | | { |
| | | if (Interlocked.Increment(ref _renewFailures) >= 2) LeaseLost?.Invoke(this, EventArgs.Empty); |
| | | } |
| | | }, null, 8000, 8000); |
| | | } |
| | | |
| | | public Task<DeviceCommandResult> ExecuteAsync(string command, CancellationToken ct = default) |
| | | { |
| | | ThrowIfReleased(); |
| | | ThrowIfStale(); |
| | | return _deviceService.ExecuteCommandAsync(DeviceId, command, _owner, ct); |
| | | } |
| | | |
| | | public Task<DeviceCommandResult> QueryAsync(string query, CancellationToken ct = default) |
| | | { |
| | | ThrowIfReleased(); |
| | | ThrowIfStale(); |
| | | return _deviceService.ExecuteQueryAsync(DeviceId, query, _owner, ct); |
| | | } |
| | | |
| | | public Task ReleaseAsync(CancellationToken ct = default) |
| | | { |
| | | // Dispose() å
é¨å·²å¤ç _beacon?.Dispose() å _disposed æ è®° |
| | | Dispose(); |
| | | return Task.CompletedTask; |
| | | } |
| | | |
| | | public void Dispose() |
| | | { |
| | | if (_disposed) return; |
| | | _beacon?.Dispose(); |
| | | _disposed = true; |
| | | // 忥鿾ï¼.NET 4.7.2 æ IAsyncDisposableï¼ï¼é»å¡çå¾
|
| | | _facade.ReleaseCoreAsync(DeviceId, _owner).GetAwaiter().GetResult(); |
| | | GC.SuppressFinalize(this); |
| | | } |
| | | |
| | | private void ThrowIfReleased() |
| | | { |
| | | if (_disposed) |
| | | throw new ObjectDisposedException(nameof(AutoDeviceLease), |
| | | $"è®¾å¤ {DeviceId} çç§çº¦å·²éæ¾ (Session={SessionId.Substring(0, 8)})"); |
| | | } |
| | | |
| | | private void ThrowIfStale() |
| | | { |
| | | if (Volatile.Read(ref _renewFailures) >= 2) |
| | | throw new InvalidOperationException("LEASE_STALE: ç§çº¦å·²å¤±æ"); |
| | | } |
| | | } |
| | | } |
| New file |
| | |
| | | using System; |
| | | using System.Threading; |
| | | using System.Threading.Tasks; |
| | | using Aging.Infrastructure.Contracts; |
| | | |
| | | namespace Aging.Infrastructure.Services |
| | | { |
| | | /// <summary> |
| | | /// CAN å¸§æ°æ®ï¼è·¨é¡¹ç®éç¨ç±»åï¼ç¨äºç±»åå API è¿åå¼ï¼ |
| | | /// </summary> |
| | | public sealed class CanFrameData |
| | | { |
| | | /// <summary>帧 IDï¼åè¿å¶å¼ï¼</summary> |
| | | public uint FrameId { get; set; } |
| | | |
| | | /// <summary>帧 IDï¼åå
è¿å¶å符串ï¼å¦ 0x100ï¼</summary> |
| | | public string FrameIdHex => FrameId > 0x7FF ? $"0x{FrameId:X8}" : $"0x{FrameId:X3}"; |
| | | |
| | | /// <summary>æ°æ®åè</summary> |
| | | public byte[] Data { get; set; } = Array.Empty<byte>(); |
| | | |
| | | /// <summary>æ°æ®çåå
è¿å¶å符串表示</summary> |
| | | public string DataHex => BitConverter.ToString(Data).Replace("-", " "); |
| | | |
| | | /// <summary>DLCï¼æ°æ®é¿åº¦ï¼</summary> |
| | | public int Dlc => Data.Length; |
| | | |
| | | /// <summary>å
³èçæ¶é´æ³</summary> |
| | | public DateTime Timestamp { get; set; } = DateTime.Now; |
| | | |
| | | public override string ToString() => $"{FrameIdHex} [{Dlc}] {DataHex}"; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// CAN é讯类ååæå¡ã |
| | | /// éèåºå±å½ä»¤å符串ï¼ä¸å¡ä»£ç åªé¢å¯¹å¸§ ID/æ°æ®æ°ç»ã |
| | | /// |
| | | /// æ¯æä¸¤ç§è°ç¨æ¨¡å¼ï¼ |
| | | /// 1. ç¬ç«è°ç¨ï¼ç´æ¥ä¼ deviceIdï¼å
é¨èµ°å®æ´çå½å¨æï¼ä¸æ¬¡ç³è¯·ï¼ |
| | | /// 2. åç¨ç§çº¦ï¼å¤é¨ä¼ å
¥ leaseï¼åä¸ lease å
夿¬¡è°ç¨ï¼Per-Stepï¼ |
| | | /// </summary> |
| | | public interface ICanBusService |
| | | { |
| | | // ============ æ¨¡å¼ 1ï¼ç¬ç«è°ç¨ï¼èªå·±ç³è¯·ç§çº¦ï¼ ============ |
| | | |
| | | /// <summary>åé CAN 帧ï¼ç¬ç«è°ç¨ï¼</summary> |
| | | Task<bool> SendFrameAsync(string deviceId, uint frameId, byte[] data, CancellationToken ct = default); |
| | | |
| | | /// <summary>æ¥æ¶ä¸å¸§ï¼ç¬ç«è°ç¨ï¼ï¼æ æ°æ®æ¶è¿å null</summary> |
| | | Task<CanFrameData?> ReceiveFrameAsync(string deviceId, CancellationToken ct = default); |
| | | |
| | | /// <summary>å¯ç¨/ç¦ç¨èªå¨ååºï¼ç¬ç«è°ç¨ï¼</summary> |
| | | Task<bool> SetAutoResponseAsync(string deviceId, bool enabled, CancellationToken ct = default); |
| | | |
| | | /// <summary>è·åèç¹ç¶æï¼ç¬ç«è°ç¨ï¼</summary> |
| | | Task<string> GetStatusAsync(string deviceId, CancellationToken ct = default); |
| | | |
| | | // ============ æ¨¡å¼ 2ï¼åç¨ç§çº¦ï¼åä¸ lease å
夿¬¡è°ç¨ï¼ ============ |
| | | |
| | | /// <summary>åé CAN 帧ï¼åç¨å¤é¨ç§çº¦ï¼</summary> |
| | | Task<bool> SendFrameAsync(IAutoDeviceLease lease, uint frameId, byte[] data, CancellationToken ct = default); |
| | | |
| | | /// <summary>æ¥æ¶ä¸å¸§ï¼åç¨å¤é¨ç§çº¦ï¼</summary> |
| | | Task<CanFrameData?> ReceiveFrameAsync(IAutoDeviceLease lease, CancellationToken ct = default); |
| | | |
| | | /// <summary>å¯ç¨/ç¦ç¨èªå¨ååºï¼åç¨å¤é¨ç§çº¦ï¼</summary> |
| | | Task<bool> SetAutoResponseAsync(IAutoDeviceLease lease, bool enabled, CancellationToken ct = default); |
| | | |
| | | /// <summary>è·åèç¹ç¶æï¼åç¨å¤é¨ç§çº¦ï¼</summary> |
| | | Task<string> GetStatusAsync(IAutoDeviceLease lease, CancellationToken ct = default); |
| | | |
| | | /// <summary>æ¥è¯¢è®¾å¤ç¶æï¼æ å¯ä½ç¨ï¼</summary> |
| | | Task<string> PeekBusLogAsync(string deviceId, int maxEntries = 20, CancellationToken ct = default); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// CAN ç±»ååæå¡å®ç°ã |
| | | /// éè¿ IAutoDeviceFacade ä¸åå®é
å½ä»¤ï¼åªååæ°æ ¡éªåå符串æ¼è£
ã |
| | | /// </summary> |
| | | public sealed class CanBusService : ICanBusService |
| | | { |
| | | private readonly IAutoDeviceFacade _auto; |
| | | |
| | | public CanBusService(IAutoDeviceFacade autoFacade) |
| | | { |
| | | _auto = autoFacade ?? throw new ArgumentNullException(nameof(autoFacade)); |
| | | } |
| | | |
| | | // ============ æ¨¡å¼ 1ï¼ç¬ç«è°ç¨ ============ |
| | | |
| | | public async Task<bool> SendFrameAsync(string deviceId, uint frameId, byte[] data, CancellationToken ct = default) |
| | | { |
| | | ValidateFrame(frameId, data); |
| | | var result = await _auto.ExecuteAsync(deviceId, BuildSendCmd(frameId, data), ct).ConfigureAwait(false); |
| | | return result.Success; |
| | | } |
| | | |
| | | public async Task<CanFrameData?> ReceiveFrameAsync(string deviceId, CancellationToken ct = default) |
| | | { |
| | | var result = await _auto.QueryAsync(deviceId, "RECV", ct).ConfigureAwait(false); |
| | | return ParseRecv(result); |
| | | } |
| | | |
| | | public async Task<bool> SetAutoResponseAsync(string deviceId, bool enabled, CancellationToken ct = default) |
| | | { |
| | | var cmd = enabled ? "AUTO_RESPONSE:ON" : "AUTO_RESPONSE:OFF"; |
| | | var result = await _auto.QueryAsync(deviceId, cmd, ct).ConfigureAwait(false); |
| | | return result.Success; |
| | | } |
| | | |
| | | public Task<string> GetStatusAsync(string deviceId, CancellationToken ct = default) |
| | | => _auto.QueryAsync(deviceId, "STATUS", ct).ContinueWith( |
| | | t => t.Result.Readback ?? t.Result.RawResponse ?? "N/A", ct); |
| | | |
| | | // ============ æ¨¡å¼ 2ï¼åç¨ç§çº¦ ============ |
| | | |
| | | public async Task<bool> SendFrameAsync(IAutoDeviceLease lease, uint frameId, byte[] data, CancellationToken ct = default) |
| | | { |
| | | if (lease == null) throw new ArgumentNullException(nameof(lease)); |
| | | ValidateFrame(frameId, data); |
| | | var result = await lease.ExecuteAsync(BuildSendCmd(frameId, data), ct).ConfigureAwait(false); |
| | | return result.Success; |
| | | } |
| | | |
| | | public async Task<CanFrameData?> ReceiveFrameAsync(IAutoDeviceLease lease, CancellationToken ct = default) |
| | | { |
| | | if (lease == null) throw new ArgumentNullException(nameof(lease)); |
| | | var result = await lease.QueryAsync("RECV", ct).ConfigureAwait(false); |
| | | return ParseRecv(result); |
| | | } |
| | | |
| | | public async Task<bool> SetAutoResponseAsync(IAutoDeviceLease lease, bool enabled, CancellationToken ct = default) |
| | | { |
| | | if (lease == null) throw new ArgumentNullException(nameof(lease)); |
| | | var cmd = enabled ? "AUTO_RESPONSE:ON" : "AUTO_RESPONSE:OFF"; |
| | | var result = await lease.QueryAsync(cmd, ct).ConfigureAwait(false); |
| | | return result.Success; |
| | | } |
| | | |
| | | public async Task<string> GetStatusAsync(IAutoDeviceLease lease, CancellationToken ct = default) |
| | | { |
| | | if (lease == null) throw new ArgumentNullException(nameof(lease)); |
| | | var result = await lease.QueryAsync("STATUS", ct).ConfigureAwait(false); |
| | | return result.Readback ?? result.RawResponse ?? "N/A"; |
| | | } |
| | | |
| | | public async Task<string> PeekBusLogAsync(string deviceId, int maxEntries = 20, CancellationToken ct = default) |
| | | { |
| | | var result = await _auto.QueryAsync(deviceId, "LOG", ct).ConfigureAwait(false); |
| | | return result.Readback ?? result.RawResponse ?? "EMPTY"; |
| | | } |
| | | |
| | | // ============ å
é¨è¾
å© ============ |
| | | |
| | | private static string BuildSendCmd(uint frameId, byte[] data) |
| | | { |
| | | var hex = BitConverter.ToString(data).Replace("-", " "); |
| | | return $"SEND:0x{frameId:X3}:{hex}"; |
| | | } |
| | | |
| | | private static void ValidateFrame(uint frameId, byte[] data) |
| | | { |
| | | if (frameId > 0x1FFFFFFF) |
| | | throw new ArgumentException($"CAN 帧 ID è¶
åºèå´ï¼æå¤§ 0x1FFFFFFFï¼: 0x{frameId:X8}"); |
| | | if (data == null) |
| | | throw new ArgumentNullException(nameof(data)); |
| | | if (data.Length > 8) |
| | | throw new ArgumentException($"CAN æ°æ®é¿åº¦è¶
éï¼æå¤§ 8 åèï¼: {data.Length}"); |
| | | } |
| | | |
| | | private static CanFrameData? ParseRecv(DeviceCommandResult result) |
| | | { |
| | | var raw = result.Readback ?? result.RawResponse; |
| | | if (string.IsNullOrWhiteSpace(raw)) return null; |
| | | // æ ¼å¼ï¼RECV:frameIdHex:dataHex:HH:mm:ss.fff |
| | | var parts = raw.Split(':'); |
| | | if (parts.Length < 3) return null; |
| | | if (parts[1].Equals("EMPTY", StringComparison.OrdinalIgnoreCase)) return null; |
| | | |
| | | try |
| | | { |
| | | var frameHex = parts[1].StartsWith("0x", StringComparison.OrdinalIgnoreCase) |
| | | ? parts[1].Substring(2) |
| | | : parts[1]; |
| | | var frameId = Convert.ToUInt32(frameHex, 16); |
| | | var dataHex = parts[2]; |
| | | var data = ParseHexBytes(dataHex); |
| | | DateTime.TryParse(parts.Length >= 4 ? parts[3] : null, out var ts); |
| | | return new CanFrameData { FrameId = frameId, Data = data, Timestamp = ts == default ? DateTime.Now : ts }; |
| | | } |
| | | catch |
| | | { |
| | | return null; |
| | | } |
| | | } |
| | | |
| | | private static byte[] ParseHexBytes(string hex) |
| | | { |
| | | if (string.IsNullOrWhiteSpace(hex)) return Array.Empty<byte>(); |
| | | var tokens = hex.Split(new[] { ' ', '-' }, StringSplitOptions.RemoveEmptyEntries); |
| | | var bytes = new byte[tokens.Length]; |
| | | for (int i = 0; i < tokens.Length; i++) |
| | | { |
| | | bytes[i] = Convert.ToByte(tokens[i], 16); |
| | | } |
| | | return bytes; |
| | | } |
| | | } |
| | | } |
| New file |
| | |
| | | <Project Sdk="Microsoft.NET.Sdk"> |
| | | <PropertyGroup> |
| | | <TargetFramework>net472</TargetFramework> |
| | | <Nullable>enable</Nullable> |
| | | <LangVersion>10.0</LangVersion> |
| | | <ImplicitUsings>disable</ImplicitUsings> |
| | | </PropertyGroup> |
| | | <ItemGroup> |
| | | <PackageReference Include="System.Text.Json" Version="6.0.5" /> |
| | | </ItemGroup> |
| | | </Project> |
| New file |
| | |
| | | using System; |
| | | using System.Buffers.Binary; |
| | | using System.Text; |
| | | using System.Text.Json; |
| | | |
| | | namespace Aging.ResourceContracts |
| | | { |
| | | /// <summary> |
| | | /// Broker IPC 帧åè®®ï¼4 åè大端é¿åº¦åç¼ + UTF8 JSON å°å¥ã |
| | | /// åè®®ä¸»çæ¬ä¸å¹é
æ¶ Broker ç´æ¥æç»è¿æ¥ï¼V3.0 §13ï¼ã |
| | | /// DTO çº¿æ ¼å¼ç¬ç«äº LeaseGrant çåªè¯»æé å¨ç±»åï¼è§é¿ System.Text.Json ååºååéå¶ã |
| | | /// </summary> |
| | | public static class BrokerIpc |
| | | { |
| | | public const int ProtocolVersion = 1; |
| | | |
| | | /// <summary>å帧æå¤§åèæ°ï¼1MBï¼ï¼è¶
éè§ä¸ºåè®®é误</summary> |
| | | public const int MaxFrameBytes = 1024 * 1024; |
| | | |
| | | private static readonly JsonSerializerOptions JsonOpts = new JsonSerializerOptions |
| | | { |
| | | PropertyNameCaseInsensitive = true, |
| | | DefaultIgnoreCondition = System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull |
| | | }; |
| | | |
| | | // ==================== 帧ç¼è§£ç ==================== |
| | | |
| | | /// <summary>ç¼ç 为ä¸å¸§ï¼[4 åè大端é¿åº¦][UTF8 JSON]</summary> |
| | | public static byte[] EncodeFrame(string json) |
| | | { |
| | | var payload = Encoding.UTF8.GetBytes(json); |
| | | if (payload.Length > MaxFrameBytes) |
| | | throw new InvalidOperationException($"帧è¶
é: {payload.Length} > {MaxFrameBytes}"); |
| | | var frame = new byte[4 + payload.Length]; |
| | | BinaryPrimitives.WriteInt32BigEndian(frame.AsSpan(), payload.Length); |
| | | payload.CopyTo(frame, 4); |
| | | return frame; |
| | | } |
| | | |
| | | /// <summary>ä» payload JSON è§£ç å°å¥ãéæ³ JSON æ FormatExceptionã</summary> |
| | | public static IpcEnvelope DecodeEnvelope(string payloadJson) |
| | | { |
| | | var env = JsonSerializer.Deserialize<IpcEnvelope>(payloadJson, JsonOpts); |
| | | if (env == null || string.IsNullOrEmpty(env.MessageType)) |
| | | throw new FormatException("æ æ IPC å°å¥"); |
| | | return env; |
| | | } |
| | | |
| | | public static string EncodeEnvelope(IpcEnvelope env) |
| | | => JsonSerializer.Serialize(env, JsonOpts); |
| | | |
| | | // ==================== çº¿æ ¼å¼ DTO ==================== |
| | | |
| | | /// <summary>SubmitTask Bodyï¼ä¸æ¬¡æç设å¤å¨ä½ï¼OneShot åæ¥æ¨¡åï¼</summary> |
| | | public sealed class SubmitBody |
| | | { |
| | | public string DeviceId { get; set; } = ""; |
| | | /// <summary>ç½ååæä½ç ï¼CONNECT/DISCONNECT/SEND/QUERY/STATUS</summary> |
| | | public string OperationCode { get; set; } = ""; |
| | | /// <summary>æä½è½½è·ï¼å½ä»¤ææ¥è¯¢å符串ï¼</summary> |
| | | public string Payload { get; set; } = ""; |
| | | /// <summary>仲è£èµæºé®ï¼broker ä¾§ fence åæ ¡éªç¨ï¼å¦ CAN-003:Genericï¼</summary> |
| | | public string ResourceKey { get; set; } = ""; |
| | | /// <summary>客æ·ç«¯è¿ç¨å®ä¾èº«ä»½ boot+pidï¼ä¸ arb.db owner 对é½</summary> |
| | | public string ClientInstanceId { get; set; } = ""; |
| | | } |
| | | |
| | | /// <summary>SubmitTask ååº Body</summary> |
| | | public sealed class ResultBody |
| | | { |
| | | public string State { get; set; } = ""; // Succeeded/Failed/RejectedStaleLease/RejectedConfigMismatch/... |
| | | public string ErrorCode { get; set; } = ""; |
| | | public string Readback { get; set; } = ""; |
| | | public long ServerEpoch { get; set; } |
| | | } |
| | | |
| | | public static string SerializeBody(object body) |
| | | => JsonSerializer.Serialize(body, JsonOpts); |
| | | |
| | | public static T? DeserializeBody<T>(string json) where T : class |
| | | { |
| | | if (string.IsNullOrWhiteSpace(json)) return default; |
| | | try { return JsonSerializer.Deserialize<T>(json, JsonOpts); } |
| | | catch (JsonException) { return default; } |
| | | } |
| | | |
| | | /// <summary>deadline 计ç®ï¼UTC 毫ç§</summary> |
| | | public static long NowUtcMs() |
| | | => DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); |
| | | } |
| | | } |
| New file |
| | |
| | | namespace Aging.ResourceContracts |
| | | { |
| | | public enum OperationState |
| | | { |
| | | Succeeded, Failed, |
| | | /// <summary>æ
æ æ ¡éªå¤±è´¥ï¼Grant ç epoch/generation 已失æï¼å« Broker éå¯ï¼ã</summary> |
| | | RejectedStaleLease, |
| | | /// <summary>INV-04 éå½¢ï¼å®¢æ·ç«¯ configHash ä¸ Broker çæé
ç½®ä¸ä¸è´ã</summary> |
| | | RejectedConfigMismatch, |
| | | /// <summary>ä¼è¯éåæ»¡ã</summary> |
| | | RejectedQueueFull, |
| | | /// <summary>å·²åéä½ç»ææªç¥ï¼INV-06ï¼ç¦æ¢å½æªæ§è¡ï¼ã</summary> |
| | | Unknown |
| | | } |
| | | |
| | | /// <summary>䏿¬¡æç设å¤å¨ä½ï¼MVP=OneShotï¼ãGrants å¿
é¡»è¦ç resourcesã</summary> |
| | | public sealed class DeviceOperation |
| | | { |
| | | /// <summary>ç½ååæä½ç ï¼å¦ "CAN_SEND"/"CAN_RECV"/"CAN_AUTO_RESPONSE"/"CAN_STATUS"ã</summary> |
| | | public string OperationCode { get; set; } = ""; |
| | | public string ParametersJson { get; set; } = "{}"; |
| | | public string IdempotencyKey { get; set; } = ""; |
| | | public string ConfigHash { get; set; } = ""; |
| | | public LeaseGrant[] Grants { get; set; } = new LeaseGrant[0]; |
| | | public long DeadlineUtcMs { get; set; } |
| | | } |
| | | |
| | | public sealed class OperationResult |
| | | { |
| | | public string RequestId { get; set; } = ""; |
| | | public OperationState State { get; set; } |
| | | public string ErrorCode { get; set; } = ""; |
| | | public string ReadbackJson { get; set; } = "{}"; |
| | | public long ServerEpoch { get; set; } |
| | | } |
| | | } |
| New file |
| | |
| | | namespace Aging.ResourceContracts |
| | | { |
| | | /// <summary>IPC æ¶æ¯ç±»å常éï¼MVP ä»
åç§ï¼ã</summary> |
| | | public static class IpcMessageTypes |
| | | { |
| | | public const string Hello = "Hello"; // æ¡æï¼å epoch/configHash |
| | | public const string SubmitTask = "SubmitTask"; // body=DeviceOperation |
| | | public const string CancelTask = "CancelTask"; |
| | | public const string ProbeReadback = "ProbeReadback"; // æ¢å¤åæ¶åçè¯»åæ¢æµ |
| | | } |
| | | |
| | | /// <summary>请æ±/ååºå
±åå°å¥ãåè®®çæ¬ä¸å¹é
ç´æ¥æç»è¿æ¥ã</summary> |
| | | public sealed class IpcEnvelope |
| | | { |
| | | public int ProtocolVersion { get; set; } = 1; |
| | | public string MessageType { get; set; } = ""; |
| | | public string RequestId { get; set; } = ""; |
| | | public string CorrelationId { get; set; } = ""; |
| | | public string ClientInstanceId { get; set; } = ""; |
| | | public string AuthorityId { get; set; } = ""; |
| | | public string ConfigHash { get; set; } = ""; |
| | | public long DeadlineUtcMs { get; set; } |
| | | public string BodyJson { get; set; } = "{}"; |
| | | } |
| | | |
| | | public sealed class HelloResult |
| | | { |
| | | public long ServerEpoch { get; set; } |
| | | public string ConfigHash { get; set; } = ""; |
| | | public int ProtocolVersion { get; set; } = 1; |
| | | public string BrokerId { get; set; } = ""; |
| | | } |
| | | } |
| New file |
| | |
| | | using System; |
| | | using System.Threading; |
| | | using System.Threading.Tasks; |
| | | |
| | | namespace Aging.ResourceContracts |
| | | { |
| | | /// <summary>ä¸ç°æ OwnerType æ°å¼å¯¹é½ï¼Production=0, Maintenance=1ã</summary> |
| | | public enum OwnerTypeV3 { Production = 0, Maintenance = 1 } |
| | | |
| | | /// <summary>MVP ç¸ä½ï¼Free å¯ç¨ / Active ææ / RecoveryRequired è¿æå¾
åæ¶ï¼INV-03ï¼ã</summary> |
| | | public enum LeasePhase { Free = 0, Active = 1, RecoveryRequired = 2 } |
| | | |
| | | /// <summary>æ¯èµæºä¸å¼ ç§çº¦åè¯ï¼æ
æ =(AuthorityId, Epoch, ResourceKey, LeaseId, Generation)ã</summary> |
| | | public sealed class LeaseGrant |
| | | { |
| | | public string AuthorityId { get; } |
| | | public string ResourceKey { get; } |
| | | public string LeaseId { get; } |
| | | public string OwnerId { get; } |
| | | public OwnerTypeV3 OwnerType { get; } |
| | | public long Epoch { get; } |
| | | public long Generation { get; } |
| | | public long ExpiresUtcMs { get; } |
| | | |
| | | public LeaseGrant(string authorityId, string resourceKey, string leaseId, |
| | | string ownerId, OwnerTypeV3 ownerType, long epoch, long generation, long expiresUtcMs) |
| | | { |
| | | AuthorityId = authorityId; ResourceKey = resourceKey; LeaseId = leaseId; |
| | | OwnerId = ownerId; OwnerType = ownerType; Epoch = epoch; |
| | | Generation = generation; ExpiresUtcMs = expiresUtcMs; |
| | | } |
| | | } |
| | | |
| | | public sealed class AcquireRequest |
| | | { |
| | | public string OwnerId { get; set; } = ""; |
| | | public OwnerTypeV3 OwnerType { get; set; } |
| | | /// <summary>boot_id + pidï¼åæºè¿ç¨åºåã</summary> |
| | | public string ProcessInstanceId { get; set; } = ""; |
| | | public string MachineName { get; set; } = Environment.MachineName; |
| | | public int HostProcessId { get; set; } = System.Diagnostics.Process.GetCurrentProcess().Id; |
| | | /// <summary>ç³è¯·çç±ï¼ç»´æ¤ä¼è¯å¡«æä½åä¸åå ï¼è¿ lease_historyï¼ã</summary> |
| | | public string Reason { get; set; } = ""; |
| | | /// <summary>Ordinals ååºãå»éåç³è¯·ï¼ç»ç³è¯· = åäºå¡å
¨æå
¨æ ï¼ã</summary> |
| | | public string[] ResourceKeys { get; set; } = new string[0]; |
| | | public int WaitTimeoutMs { get; set; } = 1000; |
| | | public int TtlSeconds { get; set; } = 30; |
| | | } |
| | | |
| | | public enum AcquireResultCode { Acquired, Reused, ConflictHeld, RecoveryBlocked, Timeout } |
| | | |
| | | public sealed class ConflictInfo |
| | | { |
| | | public string OwnerId { get; set; } = ""; |
| | | public OwnerTypeV3 OwnerType { get; set; } |
| | | public string MachineName { get; set; } = ""; |
| | | public int HostProcessId { get; set; } |
| | | public string Reason { get; set; } = ""; |
| | | public long ExpiresUtcMs { get; set; } |
| | | } |
| | | |
| | | public sealed class AcquireOutcome |
| | | { |
| | | public AcquireResultCode Code { get; set; } |
| | | public LeaseGrant[] Grants { get; set; } = new LeaseGrant[0]; |
| | | public ConflictInfo? Holder { get; set; } |
| | | /// <summary>RecoveryBlocked æ¶æå recovery_checkpoint çé®ã</summary> |
| | | public string? RecoveryCheckpointKey { get; set; } |
| | | } |
| | | |
| | | /// <summary>ç§çº¦åè°å¨ï¼ä»²è£åå¯ä¸å
¥å£ãå®ç°æ¹ï¼DbLeaseStoreã</summary> |
| | | public interface ILeaseCoordinator |
| | | { |
| | | /// <summary>æå¨åå½å epochï¼éå¯åéå¢ï¼æ§ Grant èªå¨å¤±æï¼ã</summary> |
| | | long CurrentEpoch { get; } |
| | | |
| | | AcquireOutcome Acquire(AcquireRequest request); |
| | | /// <summary>å LeaseId+Generation ç»æï¼è¿å false=å·²è¢«åæ¶/è¶
è¶ï¼æ¬å°é¡»çæï¼ã</summary> |
| | | bool Renew(LeaseGrant grant, int extendSeconds); |
| | | bool Release(LeaseGrant grant, string note); |
| | | ConflictInfo? ProbeConflict(string resourceKey); |
| | | LeasePhase PhaseOf(string resourceKey); |
| | | int SweepExpired(); |
| | | /// <summary>RecoveryRequired â Freeï¼å®¿ä¸»å®æè¯»åæ¢æµåç»è®°è¯æ®å¹¶æ¾è¡ã</summary> |
| | | bool ApproveRecovery(string resourceKey, string readbackJson, string approvedBy); |
| | | /// <summary>æµè¯ç¨ï¼å¼ºå¶æå epochï¼ä½¿æææ´»è· Grant 失æã</summary> |
| | | void BumpEpochForTest(string reason); |
| | | } |
| | | } |
| | |
| | | public int SimulatedLatencyMs { get; set; } = 0; |
| | | |
| | | /// <summary> |
| | | /// æ»çº¿çº§åºçå¨ï¼å¼å¯åï¼ä»»ä½èç¹ååºç帧ä¼è¢«åæ ·åæ¾ç»åéè
èªèº« |
| | | /// ï¼æ¨¡æå个ä»è®¾å¤åºçï¼æ é第äºä¸ªèç¹å¨çº¿ï¼ãæ¥æºæ 记为 RESPONDERã |
| | | /// </summary> |
| | | public bool EchoResponderToSender { get; set; } = false; |
| | | |
| | | /// <summary> |
| | | /// 已注åçèç¹ |
| | | /// </summary> |
| | | private readonly ConcurrentDictionary<string, CanNode> _nodes = new(); |
| | |
| | | TotalFramesTransmitted++; |
| | | LastActivityTime = DateTime.Now; |
| | | |
| | | // è·¯ç±å°ææå
¶ä»èç¹ |
| | | // è·¯ç±å°ææå
¶ä»èç¹ï¼è¥æ¥æ¶èç¹å¯ç¨èªå¨ååºï¼ç±å
¶åå¤ |
| | | int routed = 0; |
| | | foreach (var kvp in _nodes) |
| | | { |
| | |
| | | kvp.Value.ReceiveFrame(frame); |
| | | routed++; |
| | | TotalFramesReceived++; |
| | | |
| | | // æ¥æ¶æ¹èªå¨ååºï¼æ¨¡æä»è®¾å¤æ¶å°å½ä»¤åçå¤ï¼é¢æ¿âèªå¨ååºâè¯ä¹ï¼ |
| | | if (kvp.Value.AutoResponseEnabled) |
| | | SendAutoResponse(kvp.Value, frame); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | |
| | | } |
| | | } |
| | | |
| | | // æ£æ¥æºèç¹æ¯å¦å¯ç¨èªå¨ååºæ¨¡å¼ |
| | | if (_nodes.TryGetValue(frame.SourceNodeId, out var sourceNode) && sourceNode.AutoResponseEnabled) |
| | | // æ»çº¿çº§åºçå¨ï¼æè¯¥å¸§åæ ·åæ¾ç»åéè
èªèº«ï¼ç»è¿"ä¸åæº"ï¼ç´æ¥æéï¼ |
| | | if (EchoResponderToSender && _nodes.TryGetValue(frame.SourceNodeId, out var senderNode)) |
| | | { |
| | | try |
| | | { |
| | | // 模æååºå»¶è¿ |
| | | if (sourceNode.AutoResponseDelayMs > 0) |
| | | { |
| | | Thread.Sleep(sourceNode.AutoResponseDelayMs); |
| | | } |
| | | |
| | | // å建ååºå¸§ï¼å¤å¶åå§å¸§æ°æ®ï¼æ¥æºä¸ºæºèç¹ï¼ |
| | | var responseFrame = new CanFrame |
| | | var echo = new CanFrame |
| | | { |
| | | FrameId = frame.FrameId, |
| | | Format = frame.Format, |
| | | Type = frame.Type, |
| | | Data = (byte[])frame.Data.Clone(), |
| | | SourceNodeId = sourceNode.NodeId, |
| | | SourceNodeId = "RESPONDER", |
| | | Timestamp = DateTime.Now |
| | | }; |
| | | senderNode.ReceiveFrame(echo); |
| | | TotalFramesReceived++; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | Log.Error($"[CanBus] åºçå¨åæ¾ç» {frame.SourceNodeId} 失败: {ex.Message}"); |
| | | } |
| | | } |
| | | |
| | | Log.Debug($"[CanBus] 帧 {frame.FrameIdHex} ä» {frame.SourceNodeId} è·¯ç±å° {routed} 个èç¹"); |
| | | FrameTransmitted?.Invoke(this, new CanBusFrameEventArgs(frame, frame.SourceNodeId)); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ¥æ¶èç¹èªå¨ååºï¼ææ¶å°å¸§åæ ·åç»å
¶å®èç¹ï¼å«å帧æ¹ï¼ï¼å¹¶è®°å
¥èªèº«é®ç®±ä¸æ»çº¿æ¥å¿ |
| | | /// </summary> |
| | | private void SendAutoResponse(CanNode responder, CanFrame incoming) |
| | | { |
| | | try |
| | | { |
| | | // 模æååºå»¶è¿ |
| | | if (responder.AutoResponseDelayMs > 0) |
| | | { |
| | | Thread.Sleep(responder.AutoResponseDelayMs); |
| | | } |
| | | |
| | | var responseFrame = new CanFrame |
| | | { |
| | | FrameId = incoming.FrameId, |
| | | Format = incoming.Format, |
| | | Type = incoming.Type, |
| | | Data = (byte[])incoming.Data.Clone(), |
| | | SourceNodeId = responder.NodeId, |
| | | Timestamp = DateTime.Now |
| | | }; |
| | | |
| | | // å°ååºå¸§è·¯ç±å°ææå
¶ä»èç¹ï¼ä¸å
æ¬ååºæºèªèº«ï¼ |
| | | // ååºå¸§è·¯ç±å°å
¶å®èç¹ï¼å«æåçå帧æ¹ï¼ |
| | | foreach (var kvp in _nodes) |
| | | { |
| | | if (kvp.Key == sourceNode.NodeId) continue; |
| | | if (kvp.Key == responder.NodeId) continue; |
| | | try |
| | | { |
| | | kvp.Value.ReceiveFrame(responseFrame); |
| | |
| | | } |
| | | } |
| | | |
| | | // å°ååºå¸§éå
¥æºèç¹çæ¥æ¶é®ç®±ï¼è®©æºèç¹è½çå°èªå·±çååºï¼ |
| | | sourceNode.ReceiveFrame(responseFrame); |
| | | // ååºå¸§éå
¥åºçèç¹èªèº«æ¥æ¶é®ç®±ï¼è°è¯é¡µå¯è§èªå·±ååºçååºï¼ |
| | | responder.ReceiveFrame(responseFrame); |
| | | TotalFramesReceived++; |
| | | |
| | | // è®°å½ååºå¸§å°æ»çº¿æ¥å¿ |
| | | _busLog.Enqueue(responseFrame); |
| | | TotalFramesTransmitted++; |
| | | |
| | | Log.Debug($"[CanBus] èç¹ {sourceNode.NodeId} èªå¨ååºå¸§ {responseFrame.FrameIdHex}"); |
| | | Log.Debug($"[CanBus] æ¥æ¶èç¹ {responder.NodeId} èªå¨ååºå¸§ {responseFrame.FrameIdHex}"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | Log.Error($"[CanBus] æºèç¹èªå¨ååºå¤±è´¥: {ex.Message}"); |
| | | Log.Error($"[CanBus] èç¹ {responder.NodeId} èªå¨ååºå¤±è´¥: {ex.Message}"); |
| | | } |
| | | } |
| | | |
| | | Log.Debug($"[CanBus] 帧 {frame.FrameIdHex} ä» {frame.SourceNodeId} è·¯ç±å° {routed} 个èç¹"); |
| | | FrameTransmitted?.Invoke(this, new CanBusFrameEventArgs(frame, frame.SourceNodeId)); |
| | | } |
| | | |
| | | /// <summary> |
| New file |
| | |
| | | using System; |
| | | using System.IO; |
| | | using System.Text; |
| | | using System.Threading; |
| | | using System.Threading.Tasks; |
| | | |
| | | namespace CanSimulator |
| | | { |
| | | /// <summary> |
| | | /// CAN 模æå¨ TCP 线åè®®å帧ç¼è§£ç å¨ã |
| | | /// çº¿æ ¼å¼ï¼4 åè大端é¿åº¦åç¼ + UTF8 ææ¬è¡ï¼ä¸ BrokerIpc åæ¯ç¨æ³ï¼ã |
| | | /// 读侧è´è´£ç²å
/åå
éç»ï¼å¾ªç¯è¯»æ»¡é¿åº¦åç¼ä¸å¸§ä½åè¿å宿´ææ¬ã |
| | | /// </summary> |
| | | public static class SimulatorFraming |
| | | { |
| | | /// <summary>é¿åº¦åç¼åèæ°</summary> |
| | | public const int HeaderSize = 4; |
| | | |
| | | /// <summary>å帧æå¤§åèæ°ï¼é²ç¸å½¢é¿åº¦åç¼å¯¼è´å
åçæï¼å½ä»¤ä¸²ä¸ LOG ååºè¿å°äºæ¤å¼ï¼</summary> |
| | | public const int MaxFrameBytes = 1024 * 1024; |
| | | |
| | | /// <summary>æä¸æ¡ææ¬æ¶æ¯ç¼ç ä¸ºå®æ´å¸§ï¼å«é¿åº¦åç¼ï¼</summary> |
| | | public static byte[] Encode(string text) |
| | | { |
| | | if (text == null) throw new ArgumentNullException(nameof(text)); |
| | | byte[] body = Encoding.UTF8.GetBytes(text); |
| | | if (body.Length > MaxFrameBytes) |
| | | throw new InvalidOperationException($"帧ä½è¶
é: {body.Length} > {MaxFrameBytes}"); |
| | | var frame = new byte[HeaderSize + body.Length]; |
| | | WriteBigEndian(frame, 0, body.Length); |
| | | Buffer.BlockCopy(body, 0, frame, HeaderSize, body.Length); |
| | | return frame; |
| | | } |
| | | |
| | | /// <summary>è§£ç 已廿é¿åº¦åç¼ç帧ä½</summary> |
| | | public static string Decode(byte[] buffer, int offset, int count) |
| | | => Encoding.UTF8.GetString(buffer, offset, count); |
| | | |
| | | /// <summary> |
| | | /// 仿µä¸è¯»åä¸ä¸ªå®æ´å¸§ã |
| | | /// è¿å null 表示对端已å
³éæå¸§ä¸é EOFï¼è¿æ¥å¤±æï¼è°ç¨æ¹åºè§¦åéè¿ï¼ï¼ |
| | | /// é¿åº¦åç¼éæ³ï¼â¤0 æè¶
MaxFrameBytesï¼æ InvalidDataExceptionï¼å议失æ¥ï¼ã |
| | | /// </summary> |
| | | public static async Task<string?> ReadFrameAsync(Stream s, CancellationToken ct) |
| | | { |
| | | var header = new byte[HeaderSize]; |
| | | if (!await ReadExactAsync(s, header, HeaderSize, ct).ConfigureAwait(false)) |
| | | return null; |
| | | int len = ReadBigEndian(header, 0); |
| | | if (len <= 0 || len > MaxFrameBytes) |
| | | throw new InvalidDataException($"鿳叧é¿åº¦åç¼: {len}"); |
| | | |
| | | var body = new byte[len]; |
| | | if (!await ReadExactAsync(s, body, len, ct).ConfigureAwait(false)) |
| | | return null; // 帧ä½ä¸é EOF |
| | | return Decode(body, 0, len); |
| | | } |
| | | |
| | | /// <summary>循ç¯è¯»æ»¡ count åèï¼æé´ EOFï¼è¯»å° 0 åèï¼æ IO å¼å¸¸æ¶è¿å falseï¼ç±è°ç¨æ¹æè¿æ¥å¤±æå¤ç</summary> |
| | | private static async Task<bool> ReadExactAsync(Stream s, byte[] buf, int count, CancellationToken ct) |
| | | { |
| | | int off = 0; |
| | | while (off < count) |
| | | { |
| | | int n; |
| | | try { n = await s.ReadAsync(buf, off, count - off, ct).ConfigureAwait(false); } |
| | | catch (IOException) { return false; } |
| | | if (n <= 0) return false; |
| | | off += n; |
| | | } |
| | | return true; |
| | | } |
| | | |
| | | // net472 æ System.Buffers.Binaryï¼æå大端读å |
| | | private static void WriteBigEndian(byte[] buf, int offset, int value) |
| | | { |
| | | buf[offset] = (byte)(value >> 24); |
| | | buf[offset + 1] = (byte)(value >> 16); |
| | | buf[offset + 2] = (byte)(value >> 8); |
| | | buf[offset + 3] = (byte)value; |
| | | } |
| | | |
| | | private static int ReadBigEndian(byte[] buf, int offset) |
| | | => (buf[offset] << 24) | (buf[offset + 1] << 16) | (buf[offset + 2] << 8) | buf[offset + 3]; |
| | | } |
| | | } |
| New file |
| | |
| | | <?xml version="1.0" encoding="utf-8"?> |
| | | <configuration> |
| | | <appSettings> |
| | | <!-- CAN 模æå¨æå¡çå¬ç«¯å£ï¼å®¢æ·ç«¯ç±ä¸»ç¨åº/DeviceBroker ç CanSimulator.Port æåï¼ --> |
| | | <add key="ServerPort" value="9000"/> |
| | | <!-- é»è®¤ä»
çå¬åç¯ï¼è·¨æºé¨ç½²æ¶æ¹ true --> |
| | | <add key="ListenOnAllInterfaces" value="false"/> |
| | | <!-- log4netï¼ææ¥æè½æä»¶ï¼%LOCALAPPDATA%\CanSimulatorServer\ï¼ --> |
| | | <add key="log4net.Config" value="log4net.config"/> |
| | | </appSettings> |
| | | </configuration> |
| New file |
| | |
| | | using System; |
| | | using System.Windows; |
| | | using log4net.Config; |
| | | |
| | | namespace CanSimulatorServer.App |
| | | { |
| | | /// <summary> |
| | | /// CAN 模æå¨æå¡è¿ç¨å
¥å£ï¼çº¯æå¨å¯å¨ï¼ä¸»ç¨åºä¸ DeviceBroker åä¸æèµ·ï¼ã |
| | | /// 读å App.config ç ServerPort / ListenOnAllInterfacesï¼æèµ· TcpSimulatorHost å¹¶æ¾ç¤ºçæ§ UIã |
| | | /// </summary> |
| | | public class App : Application |
| | | { |
| | | protected override void OnStartup(StartupEventArgs e) |
| | | { |
| | | base.OnStartup(e); |
| | | XmlConfigurator.Configure(); |
| | | |
| | | MainWindow = new MainWindow |
| | | { |
| | | Title = "CAN 模æå¨æå¡ (CanSimulatorServer)", |
| | | Width = 1000, |
| | | Height = 680, |
| | | WindowStartupLocation = WindowStartupLocation.CenterScreen |
| | | }; |
| | | MainWindow.Show(); |
| | | } |
| | | } |
| | | |
| | | /// <summary>æ XAML å¯å¨å¨ï¼SDK å·¥ç¨æ¾å¼å
¥å£ã</summary> |
| | | public static class Entry |
| | | { |
| | | [STAThread] |
| | | public static void Main() |
| | | { |
| | | var app = new App(); |
| | | app.Run(); |
| | | } |
| | | } |
| | | } |
| New file |
| | |
| | | <Project Sdk="Microsoft.NET.Sdk"> |
| | | |
| | | <PropertyGroup> |
| | | <OutputType>WinExe</OutputType> |
| | | <TargetFramework>net472</TargetFramework> |
| | | <StartupObject>CanSimulatorServer.App.Entry</StartupObject> |
| | | <Nullable>enable</Nullable> |
| | | <LangVersion>10.0</LangVersion> |
| | | <ImplicitUsings>enable</ImplicitUsings> |
| | | <AssemblyName>CanSimulatorServer</AssemblyName> |
| | | <RootNamespace>CanSimulatorServer.App</RootNamespace> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <AutoGenerateBindingRedirects>True</AutoGenerateBindingRedirects> |
| | | </PropertyGroup> |
| | | |
| | | <ItemGroup> |
| | | <PackageReference Include="log4net" Version="3.0.4" /> |
| | | </ItemGroup> |
| | | |
| | | <ItemGroup> |
| | | <Reference Include="PresentationCore" /> |
| | | <Reference Include="PresentationFramework" /> |
| | | <Reference Include="WindowsBase" /> |
| | | <Reference Include="System.Xaml" /> |
| | | </ItemGroup> |
| | | |
| | | <ItemGroup> |
| | | <Content Include="log4net.config" CopyToOutputDirectory="PreserveNewest" /> |
| | | </ItemGroup> |
| | | |
| | | <ItemGroup> |
| | | <ProjectReference Include="..\CanSimulatorServer.Core\CanSimulatorServer.Core.csproj" /> |
| | | <ProjectReference Include="..\..\CanSimulator\CanSimulator.csproj" /> |
| | | </ItemGroup> |
| | | |
| | | </Project> |
| New file |
| | |
| | | using System; |
| | | using System.Collections.Concurrent; |
| | | using System.Collections.Generic; |
| | | using System.Collections.ObjectModel; |
| | | using System.Configuration; |
| | | using System.Linq; |
| | | using System.Threading; |
| | | using System.Windows; |
| | | using System.Windows.Controls; |
| | | using System.Windows.Media; |
| | | using System.Windows.Threading; |
| | | using CanSimulator; |
| | | using log4net; |
| | | |
| | | namespace CanSimulatorServer.App |
| | | { |
| | | /// <summary> |
| | | /// 模æå¨æå¡çæ§çªå£ï¼ç¶ææ + è¿æ¥èç¹æ + 宿¶å¸§è¡¨ + æ¥å¿åºã |
| | | /// çº¯ä»£ç æå»º UIï¼ä¸èµ° XAML æ è®°ç¼è¯é¾è·¯ï¼ï¼å¸§è¡¨ç» 100ms 宿¶å¨æ¹éå·æ°ï¼ä¸é 2000 è¡ã |
| | | /// </summary> |
| | | public class MainWindow : Window |
| | | { |
| | | private static readonly ILog Log = LogManager.GetLogger(typeof(MainWindow)); |
| | | |
| | | private const int MaxFrameRows = 2000; |
| | | |
| | | private readonly TcpSimulatorHost _host = new(); |
| | | private readonly ConcurrentQueue<FrameRow> _pendingRows = new(); |
| | | private readonly ObservableCollection<FrameRow> _rows = new(); |
| | | private readonly DispatcherTimer _uiTimer = new(); |
| | | private int _tickCount; |
| | | |
| | | private TextBlock _statusText = null!; |
| | | private TextBlock _statsText = null!; |
| | | private TreeView _nodeTree = null!; |
| | | private ListView _frameList = null!; |
| | | private TextBox _logBox = null!; |
| | | private Button _startBtn = null!; |
| | | private Button _stopBtn = null!; |
| | | private CheckBox _echoChk = null!; |
| | | private bool _echoWanted; |
| | | private readonly int _port; |
| | | private readonly bool _listenAll; |
| | | |
| | | private sealed class FrameRow |
| | | { |
| | | public string Time { get; set; } = ""; |
| | | public string Bus { get; set; } = ""; |
| | | public string Src { get; set; } = ""; |
| | | public string FrameId { get; set; } = ""; |
| | | public string Data { get; set; } = ""; |
| | | public string Kind { get; set; } = "TX"; |
| | | } |
| | | |
| | | public MainWindow() |
| | | { |
| | | _port = ReadIntConfig("ServerPort", 9000); |
| | | _listenAll = string.Equals(ConfigurationManager.AppSettings["ListenOnAllInterfaces"], |
| | | "true", StringComparison.OrdinalIgnoreCase); |
| | | |
| | | BuildUi(); |
| | | HookHostEvents(); |
| | | |
| | | _uiTimer.Interval = TimeSpan.FromMilliseconds(100); |
| | | _uiTimer.Tick += (s, e) => DrainPendingRows(); |
| | | _uiTimer.Start(); |
| | | |
| | | Loaded += async (s, e) => await StartHostAsync(); |
| | | Closing += (s, e) => { _host.Dispose(); }; |
| | | } |
| | | |
| | | // ==================== 宿主çå½å¨æ ==================== |
| | | |
| | | private async Task StartHostAsync() |
| | | { |
| | | try |
| | | { |
| | | await _host.StartAsync(_port, _listenAll); |
| | | _statusText.Text = $"çå¬ä¸ {(_listenAll ? "0.0.0.0" : "127.0.0.1")}:{_port}"; |
| | | _statusText.Foreground = Brushes.ForestGreen; |
| | | _startBtn.IsEnabled = false; |
| | | _stopBtn.IsEnabled = true; |
| | | AppendLog($"æå¡ç«¯å·²å¯å¨ï¼çå¬ {_port}ï¼{(_listenAll ? "å
¨é¨æ¥å£" : "ä»
æ¬æº")}ï¼"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | _statusText.Text = "å¯å¨å¤±è´¥ï¼ç«¯å£è¢«å ç¨ï¼"; |
| | | _statusText.Foreground = Brushes.Firebrick; |
| | | AppendLog($"[FATAL] å¯å¨å¤±è´¥: {ex.Message}"); |
| | | _startBtn.IsEnabled = true; |
| | | Log.Error("宿主å¯å¨å¤±è´¥", ex); |
| | | } |
| | | } |
| | | |
| | | private void HookHostEvents() |
| | | { |
| | | _host.SessionAttached += session => |
| | | { |
| | | Dispatcher.BeginInvoke(new Action(() => |
| | | { |
| | | AppendLog($"èç¹æ¥å
¥ï¼{session.ClientTag}"); |
| | | RefreshTree(); |
| | | })); |
| | | }; |
| | | } |
| | | |
| | | /// <summary>æ»çº¿å¸§äºä»¶ææ¥ï¼å®¿ä¸»å¯å¨åæ»çº¿æåå¨ï¼æ
å¨å®æ¶å¨éæ°æ§è¡¥æï¼</summary> |
| | | private void EnsureBusSubscriptions() |
| | | { |
| | | foreach (var bus in _host.Manager.AllBuses()) |
| | | { |
| | | if (_subscribedBuses.Add(bus.BusName)) |
| | | { |
| | | bus.FrameTransmitted += (s, e) => EnqueueBusRow(bus.BusName, e.Frame, e.SourceNodeId); |
| | | bus.EchoResponderToSender = _echoWanted; // æ°å»ºæ»çº¿ç»§æ¿å½ååºçå¨å¼å
³ |
| | | } |
| | | } |
| | | } |
| | | private readonly HashSet<string> _subscribedBuses = new(StringComparer.OrdinalIgnoreCase); |
| | | |
| | | // ==================== UI æå»º ==================== |
| | | |
| | | private void BuildUi() |
| | | { |
| | | var root = new Grid { Margin = new Thickness(10) }; |
| | | root.RowDefinitions.Add(new RowDefinition { Height = GridLength.Auto }); |
| | | root.RowDefinitions.Add(new RowDefinition { Height = new GridLength(1, GridUnitType.Star) }); |
| | | root.RowDefinitions.Add(new RowDefinition { Height = new GridLength(160) }); |
| | | |
| | | // ââ é¡¶é¨ç¶æ/æé®æ ââ |
| | | var bar = new StackPanel { Orientation = Orientation.Horizontal }; |
| | | _statusText = new TextBlock |
| | | { |
| | | Text = "æªå¯å¨", |
| | | FontWeight = FontWeights.Bold, |
| | | VerticalAlignment = VerticalAlignment.Center, |
| | | Margin = new Thickness(0, 0, 16, 0) |
| | | }; |
| | | _statsText = new TextBlock { VerticalAlignment = VerticalAlignment.Center, Margin = new Thickness(0, 0, 16, 0) }; |
| | | _startBtn = new Button { Content = "å¯å¨çå¬", Width = 90, Height = 28, Margin = new Thickness(0, 0, 6, 0) }; |
| | | _startBtn.Click += async (s, e) => await StartHostAsync(); |
| | | _stopBtn = new Button { Content = "忢çå¬", Width = 90, Height = 28, Margin = new Thickness(0, 0, 6, 0), IsEnabled = false }; |
| | | _stopBtn.Click += (s, e) => |
| | | { |
| | | _host.Dispose(); |
| | | _statusText.Text = "已忢"; |
| | | _statusText.Foreground = Brushes.Gray; |
| | | _startBtn.IsEnabled = true; |
| | | _stopBtn.IsEnabled = false; |
| | | AppendLog("æå¡ç«¯å·²åæ¢ï¼æ³¨æï¼å·²è¿è¡å®¢æ·ç«¯å°æçº¿éè¿ï¼"); |
| | | }; |
| | | var clearBtn = new Button { Content = "æ¸
空帧表", Width = 90, Height = 28 }; |
| | | clearBtn.Click += (s, e) => { _rows.Clear(); while (_pendingRows.TryDequeue(out _)) { } }; |
| | | _echoChk = new CheckBox |
| | | { |
| | | Content = "æ»çº¿åºçå¨(åæ¾åéè
)", |
| | | VerticalAlignment = VerticalAlignment.Center, |
| | | Margin = new Thickness(12, 0, 0, 0), |
| | | IsChecked = false |
| | | }; |
| | | _echoChk.Click += (s, e) => |
| | | { |
| | | _echoWanted = _echoChk.IsChecked == true; |
| | | foreach (var bus in _host.Manager.AllBuses()) |
| | | bus.EchoResponderToSender = _echoWanted; |
| | | AppendLog($"æ»çº¿åºçå¨å·²{(_echoWanted ? "å¼å¯" : "å
³é")}ï¼ä½ç¨äºå½åæææ»çº¿ï¼"); |
| | | }; |
| | | bar.Children.Add(_statusText); |
| | | bar.Children.Add(_statsText); |
| | | bar.Children.Add(_startBtn); |
| | | bar.Children.Add(_stopBtn); |
| | | bar.Children.Add(clearBtn); |
| | | bar.Children.Add(_echoChk); |
| | | Grid.SetRow(bar, 0); |
| | | root.Children.Add(bar); |
| | | |
| | | // ââ ä¸é¨ï¼å·¦èç¹æ + å³å¸§è¡¨ ââ |
| | | var split = new Grid(); |
| | | split.ColumnDefinitions.Add(new ColumnDefinition { Width = new GridLength(280) }); |
| | | split.ColumnDefinitions.Add(new ColumnDefinition { Width = new GridLength(1, GridUnitType.Star) }); |
| | | |
| | | _nodeTree = new TreeView(); |
| | | var treeBorder = new Border |
| | | { |
| | | Child = _nodeTree, |
| | | BorderBrush = Brushes.LightGray, |
| | | BorderThickness = new Thickness(1), |
| | | Margin = new Thickness(0, 8, 8, 0) |
| | | }; |
| | | Grid.SetColumn(treeBorder, 0); |
| | | |
| | | _frameList = new ListView { View = BuildGridView() }; |
| | | _frameList.ItemsSource = _rows; |
| | | var listBorder = new Border |
| | | { |
| | | Child = _frameList, |
| | | BorderBrush = Brushes.LightGray, |
| | | BorderThickness = new Thickness(1), |
| | | Margin = new Thickness(0, 8, 0, 0) |
| | | }; |
| | | Grid.SetColumn(listBorder, 1); |
| | | |
| | | split.Children.Add(treeBorder); |
| | | split.Children.Add(listBorder); |
| | | Grid.SetRow(split, 1); |
| | | root.Children.Add(split); |
| | | |
| | | // ââ åºé¨æ¥å¿ ââ |
| | | _logBox = new TextBox |
| | | { |
| | | IsReadOnly = true, |
| | | VerticalScrollBarVisibility = ScrollBarVisibility.Auto, |
| | | FontFamily = new FontFamily("Consolas"), |
| | | FontSize = 11, |
| | | Margin = new Thickness(0, 8, 0, 0) |
| | | }; |
| | | Grid.SetRow(_logBox, 2); |
| | | root.Children.Add(_logBox); |
| | | |
| | | Content = root; |
| | | } |
| | | |
| | | private static GridView BuildGridView() |
| | | { |
| | | var gv = new GridView(); |
| | | AddCol(gv, "æ¶é´", 85, nameof(FrameRow.Time)); |
| | | AddCol(gv, "æ»çº¿", 95, nameof(FrameRow.Bus)); |
| | | AddCol(gv, "æºèç¹", 60, nameof(FrameRow.Src)); |
| | | AddCol(gv, "帧ID", 70, nameof(FrameRow.FrameId)); |
| | | AddCol(gv, "æ°æ®", 200, nameof(FrameRow.Data)); |
| | | AddCol(gv, "ç±»å", 70, nameof(FrameRow.Kind)); |
| | | return gv; |
| | | } |
| | | |
| | | private static void AddCol(GridView gv, string header, double width, string binding) |
| | | { |
| | | gv.Columns.Add(new GridViewColumn |
| | | { |
| | | Header = header, |
| | | Width = width, |
| | | DisplayMemberBinding = new System.Windows.Data.Binding(binding) |
| | | }); |
| | | } |
| | | |
| | | // ==================== å¸§è¡¨ä¸æ å·æ° ==================== |
| | | |
| | | /// <summary>æ»çº¿çº§è§å¯ï¼è·¯ç±åçå³è®°ä¸è¡ï¼å«èªå¨ååºå¸§ï¼</summary> |
| | | private void EnqueueBusRow(string busName, CanFrame frame, string srcNodeId) |
| | | { |
| | | _pendingRows.Enqueue(new FrameRow |
| | | { |
| | | Time = frame.Timestamp.ToString("HH:mm:ss.fff"), |
| | | Bus = busName, |
| | | Src = srcNodeId, |
| | | FrameId = frame.FrameIdHex, |
| | | Data = frame.DataHex, |
| | | Kind = "TXè·¯ç±" |
| | | }); |
| | | } |
| | | |
| | | private void DrainPendingRows() |
| | | { |
| | | EnsureBusSubscriptions(); |
| | | |
| | | int n = 0; |
| | | while (_pendingRows.TryDequeue(out var row) && n < 50) |
| | | { |
| | | _rows.Insert(0, row); |
| | | n++; |
| | | } |
| | | while (_rows.Count > MaxFrameRows) |
| | | _rows.RemoveAt(_rows.Count - 1); |
| | | |
| | | RefreshStatsLine(); |
| | | |
| | | // æ¯ç§å·æ°ä¸æ¬¡èç¹æ ï¼åæ æå¼ä¼è¯ï¼é¿å
åªå¨æ¥å
¥äºä»¶ä¸å·æ°ï¼ |
| | | if (++_tickCount % 10 == 0) RefreshTree(); |
| | | } |
| | | |
| | | private void RefreshStatsLine() |
| | | { |
| | | var buses = _host.Manager.AllBuses().ToList(); |
| | | long tx = buses.Sum(b => b.TotalFramesTransmitted); |
| | | long rx = buses.Sum(b => b.TotalFramesReceived); |
| | | _statsText.Text = $"ä¼è¯={_host.ActiveSessionCount} 累计={_host.AcceptedCount} " + |
| | | $"æ»çº¿={buses.Count} TX={tx} RX={rx}"; |
| | | } |
| | | |
| | | private void RefreshTree() |
| | | { |
| | | _nodeTree.Items.Clear(); |
| | | foreach (var bus in _host.Manager.AllBuses()) |
| | | { |
| | | var busNode = new TreeViewItem { Header = bus.BusName + $"ï¼{bus.State}ï¼" }; |
| | | foreach (var node in bus.GetAllNodes()) |
| | | busNode.Items.Add(new TreeViewItem { Header = $"èç¹ {node.NodeId} · {node.Name}" }); |
| | | _nodeTree.Items.Add(busNode); |
| | | busNode.IsExpanded = true; |
| | | } |
| | | } |
| | | |
| | | private void AppendLog(string msg) |
| | | { |
| | | _logBox.AppendText($"{DateTime.Now:HH:mm:ss.fff} {msg}{Environment.NewLine}"); |
| | | _logBox.ScrollToEnd(); |
| | | } |
| | | |
| | | private static int ReadIntConfig(string key, int fallback) |
| | | => int.TryParse(ConfigurationManager.AppSettings[key], out int v) ? v : fallback; |
| | | } |
| | | } |
| New file |
| | |
| | | <?xml version="1.0" encoding="utf-8"?> |
| | | <log4net> |
| | | <appender name="RollingFile" type="log4net.Appender.RollingFileAppender"> |
| | | <file type="log4net.Util.PatternString" value="%env{LOCALAPPDATA}\CanSimulatorServer\server.log"/> |
| | | <appendToFile value="true"/> |
| | | <rollingStyle value="Size"/> |
| | | <maxSizeRollBackups value="5"/> |
| | | <maximumFileSize value="2MB"/> |
| | | <layout type="log4net.Layout.PatternLayout"> |
| | | <conversionPattern value="%date{HH:mm:ss.fff} %-5level %logger - %message%newline"/> |
| | | </layout> |
| | | </appender> |
| | | <root> |
| | | <level value="INFO"/> |
| | | <appender-ref ref="RollingFile"/> |
| | | </root> |
| | | </log4net> |
| New file |
| | |
| | | using System; |
| | | using System.Collections.Concurrent; |
| | | using CanSimulator; |
| | | |
| | | namespace CanSimulatorServer |
| | | { |
| | | /// <summary> |
| | | /// æå¡ç«¯æ»çº¿æ³¨åè¡¨ï¼æåç§°æå建 CanBusSimulatorï¼å¤ç¨è¿ç¨å
è·¯ç±/èªå¨ååºé»è¾ï¼ï¼ |
| | | /// 并以 (bus, nodeIndex) 为å
¨å±å¯ä¸é®ä»²è£èç¹æè½½ã |
| | | /// æ»çº¿å¨é¦æ¬¡è¢«æè½½æ¶èªå¨å¯å¨ï¼ä¸æ§è¿ç¨å
驱å¨è¡ä¸ºä¸è´ï¼UI å¯åæé®å¯åç»æ¥å
¥ï¼ã |
| | | /// </summary> |
| | | public sealed class CanBusManager |
| | | { |
| | | private readonly ConcurrentDictionary<string, CanBusSimulator> _buses = |
| | | new(StringComparer.OrdinalIgnoreCase); |
| | | |
| | | /// <summary>æè½½èç¹ï¼å (bus,nodeIndex) 已被å ç¨æ¶è¿å falseï¼NODE_BUSY è¯ä¹ï¼ã</summary> |
| | | /// <param name="onFrameReceived">帧å°è¾¾è¯¥èç¹æ¶çåè°ï¼æå¡ç«¯ç¨äº TCP æ¨éï¼</param> |
| | | public bool TryAttach(string busName, int nodeIndex, string clientTag, |
| | | Action<CanFrame> onFrameReceived, out CanNode? node, out CanBusSimulator? bus) |
| | | { |
| | | bus = GetOrCreateBus(busName); |
| | | string nodeId = NodeIdOf(nodeIndex); |
| | | |
| | | // å¯ä¸æ§ä»²è£ï¼å·²åå¨åç¼å·èç¹åæç» |
| | | var existing = bus.GetNode(nodeId); |
| | | if (existing != null) |
| | | { |
| | | node = null; |
| | | return false; |
| | | } |
| | | |
| | | var n = bus.RegisterNode(nodeId, $"{busName}/N{nodeIndex}({clientTag})"); |
| | | n.SetPromiscuousMode(); // æå¡ç«¯èç¹é»è®¤æ¶ææå¸§ï¼æ»¤æ³¢å¨å½ä»¤å¯å¨å
¶åè¦çï¼ |
| | | n.Activate(); |
| | | n.FrameReceived += (_, f) => onFrameReceived(f); |
| | | |
| | | node = n; |
| | | return true; |
| | | } |
| | | |
| | | /// <summary>注éèç¹ï¼è¿æ¥æå¼æ¶è°ç¨ï¼ï¼ç©ºæ»çº¿ä¿çï¼å次æè½½é¶å¼éï¼ã</summary> |
| | | public void Detach(string busName, CanNode node) |
| | | { |
| | | if (_buses.TryGetValue(busName, out var bus)) |
| | | { |
| | | bus.UnregisterNode(node.NodeId); |
| | | } |
| | | } |
| | | |
| | | public CanBusSimulator? FindBus(string busName) |
| | | => _buses.TryGetValue(busName, out var b) ? b : null; |
| | | |
| | | public System.Collections.Generic.IReadOnlyCollection<CanBusSimulator> AllBuses() |
| | | => (System.Collections.Generic.IReadOnlyCollection<CanBusSimulator>)_buses.Values; |
| | | |
| | | private CanBusSimulator GetOrCreateBus(string busName) |
| | | { |
| | | var bus = _buses.GetOrAdd(busName, name => |
| | | { |
| | | var b = new CanBusSimulator(name); |
| | | b.Start(); // èªå¨å¯å¨ï¼TCP 模å¼ä¸æ»çº¿çå½å¨æç±æè½½é©±å¨ |
| | | return b; |
| | | }); |
| | | return bus; |
| | | } |
| | | |
| | | /// <summary>èç¹å¨æ»çº¿ä¸ç身份ï¼ä»¥ç¼å·å¯»åï¼ä¸çå® CAN èç¹å°åè¯ä¹ä¸è´ï¼</summary> |
| | | public static string NodeIdOf(int nodeIndex) => $"{nodeIndex}"; |
| | | } |
| | | } |
| New file |
| | |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | | using CanSimulator; |
| | | |
| | | namespace CanSimulatorServer |
| | | { |
| | | /// <summary> |
| | | /// æå¡ç«¯å½ä»¤ä¸²æ§è¡å¨ï¼å¯¹æè½½èç¹æ§è¡ SEND/QUERY å½ä»¤ï¼è¯ä¹ä¸å CanDriverAdapter |
| | | /// ä¿æä¸è´ï¼å½ä»¤ä¸²ç´ä¼ åè®®çæ ¸å¿ï¼ãè¿åå¼çº¦å®ï¼ |
| | | /// OK åç¼ = æåååºï¼ERR åç¼ = ä¸å¡å¤±è´¥ï¼å
¶ä½ = è£¸æ°æ®ï¼ç±ä¼è¯å±è¡¥ OK: åç¼ï¼ã |
| | | /// </summary> |
| | | public sealed class CanCommandExecutor |
| | | { |
| | | private readonly CanNode _node; |
| | | private readonly CanBusSimulator _bus; |
| | | |
| | | public CanCommandExecutor(CanNode node, CanBusSimulator bus) |
| | | { |
| | | _node = node ?? throw new ArgumentNullException(nameof(node)); |
| | | _bus = bus ?? throw new ArgumentNullException(nameof(bus)); |
| | | } |
| | | |
| | | /// <summary>æ§è¡ä¸è¡å½ä»¤ï¼SEND:⦠æ QUERY:â¦ï¼ï¼å¼å¸¸è½¬ä¸º ERR ååºï¼ä¸æåºã</summary> |
| | | public string Execute(string line) |
| | | { |
| | | try |
| | | { |
| | | if (line.StartsWith("SEND:", StringComparison.OrdinalIgnoreCase)) |
| | | return HandleSend(line); |
| | | |
| | | if (line.StartsWith("QUERY:", StringComparison.OrdinalIgnoreCase)) |
| | | { |
| | | string query = line.Substring("QUERY:".Length); |
| | | return HandleQuery(query); |
| | | } |
| | | |
| | | return $"ERR:UNKNOWN_CMD:{line}"; |
| | | } |
| | | catch (ArgumentException ex) |
| | | { |
| | | return $"ERR:BAD_FRAME:{ex.Message}"; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return $"ERR:EXEC:{ex.Message}"; |
| | | } |
| | | } |
| | | |
| | | private string HandleSend(string line) |
| | | { |
| | | // SEND:frameId:dataï¼data å
å¯å«ç©ºæ ¼ï¼ä¸åä¸åæ®µï¼ |
| | | var parts = line.Split(':'); |
| | | if (parts.Length < 3) |
| | | throw new ArgumentException("SEND æ ¼å¼åºä¸º SEND:frameId:data"); |
| | | |
| | | uint frameId = CanFrame.ParseFrameId(parts[1]); |
| | | byte[] data = CanFrame.ParseData(string.Join(":", parts.Skip(2))); |
| | | if (data.Length > 8) |
| | | throw new ArgumentException($"æ°æ®é¿åº¦è¶
é: {data.Length} åèï¼æå¤§ 8ï¼"); |
| | | |
| | | var frame = new CanFrame |
| | | { |
| | | FrameId = frameId, |
| | | Format = frameId > 0x7FF ? CanFrameFormat.Extended : CanFrameFormat.Standard, |
| | | Type = CanFrameType.Data, |
| | | Data = data |
| | | }; |
| | | _node.SendFrame(frame); // è§¦åæ»çº¿è·¯ç±ï¼å
¶å®èç¹æ¶å¸§ â åèªæ¨éï¼ä¸èªå¨ååº |
| | | return $"OK:TX:{frame.FrameIdHex}:{frame.Dlc}"; |
| | | } |
| | | |
| | | private string HandleQuery(string query) |
| | | { |
| | | var parts = query.Split(':'); |
| | | string op = parts[0].ToUpperInvariant(); |
| | | |
| | | switch (op) |
| | | { |
| | | case "RECV": |
| | | { |
| | | if (_node.TryDequeueReceived(out var f) && f != null) |
| | | return $"OK:RECV:{f.FrameIdHex}:{f.DataHex}:{f.Timestamp:HH:mm:ss.fff}"; |
| | | return "OK:RECV:EMPTY"; |
| | | } |
| | | case "RECV_ALL": |
| | | { |
| | | var mailbox = _node.PeekReceiveMailbox(); |
| | | _node.ClearReceiveMailbox(); |
| | | if (mailbox.Count == 0) return "OK:RECV_ALL:0"; |
| | | var items = mailbox.Select(f => $"{f.FrameIdHex}:{f.DataHex}:{f.Timestamp:HH:mm:ss.fff}"); |
| | | return $"OK:RECV_ALL:{mailbox.Count}:{string.Join("|", items)}"; |
| | | } |
| | | case "STATUS": |
| | | return "OK:STATUS:" + DescribeStatus(); |
| | | case "FILTER": |
| | | { |
| | | if (parts.Length < 3) |
| | | throw new ArgumentException("FILTER æ ¼å¼åºä¸º FILTER:id:mask"); |
| | | uint fid = CanFrame.ParseFrameId(parts[1]); |
| | | uint mask = CanFrame.ParseFrameId(parts[2]); |
| | | _node.AddFilter(new AcceptanceFilter |
| | | { |
| | | FilterId = fid, |
| | | Mask = mask, |
| | | IsExtended = fid > 0x7FF |
| | | }); |
| | | return $"OK:滤波å¨å·²æ·»å ID=0x{fid:X3}, Mask=0x{mask:X3}"; |
| | | } |
| | | case "FILTER_CLEAR": |
| | | _node.ClearFilters(); |
| | | return "OK:滤波å¨å·²æ¸
é¤"; |
| | | case "PROMISCUOUS": |
| | | _node.SetPromiscuousMode(); |
| | | return "OK:æ··ææ¨¡å¼å·²å¯ç¨"; |
| | | case "BUS_ECHO": |
| | | { |
| | | if (parts.Length < 2) |
| | | return $"OK:BUS_ECHO:{(_bus.EchoResponderToSender ? "ON" : "OFF")}"; |
| | | string mode = parts[1].Trim().ToUpperInvariant(); |
| | | switch (mode) |
| | | { |
| | | case "ON": case "1": case "TRUE": case "ENABLE": |
| | | _bus.EchoResponderToSender = true; |
| | | return "OK:æ»çº¿åºçå¨å·²å¼å¯ï¼åæ¾ç»åéè
ï¼"; |
| | | case "OFF": case "0": case "FALSE": case "DISABLE": |
| | | _bus.EchoResponderToSender = false; |
| | | return "OK:æ»çº¿åºçå¨å·²å
³é"; |
| | | default: |
| | | throw new ArgumentException($"BUS_ECHO åæ°é误: {mode}"); |
| | | } |
| | | } |
| | | case "AUTO_RESPONSE": |
| | | { |
| | | if (parts.Length < 2) |
| | | return $"OK:AUTO_RESPONSE:{(_node.AutoResponseEnabled ? "ON" : "OFF")}"; |
| | | string mode = parts[1].Trim().ToUpperInvariant(); |
| | | switch (mode) |
| | | { |
| | | case "ON": case "1": case "TRUE": case "ENABLE": |
| | | _node.AutoResponseEnabled = true; |
| | | return "OK:èªå¨ååºæ¨¡å¼å·²å¯ç¨"; |
| | | case "OFF": case "0": case "FALSE": case "DISABLE": |
| | | _node.AutoResponseEnabled = false; |
| | | return "OK:èªå¨ååºæ¨¡å¼å·²ç¦ç¨"; |
| | | default: |
| | | throw new ArgumentException($"AUTO_RESPONSE åæ°é误: {mode}"); |
| | | } |
| | | } |
| | | case "RESPONSE_DELAY": |
| | | { |
| | | if (parts.Length < 2) |
| | | return $"OK:RESPONSE_DELAY:{_node.AutoResponseDelayMs}ms"; |
| | | if (!int.TryParse(parts[1].Trim(), out int d) || d < 0) |
| | | throw new ArgumentException($"RESPONSE_DELAY åæ°é误: {parts[1]}"); |
| | | _node.AutoResponseDelayMs = d; |
| | | return $"OK:ååºå»¶è¿å·²è®¾ç½®ä¸º {d}ms"; |
| | | } |
| | | case "LOG": |
| | | { |
| | | var log = _bus.GetBusLog(50); |
| | | if (log.Count == 0) return "OK:LOG:EMPTY"; |
| | | var entries = log.Select(f => |
| | | $"[{f.Timestamp:HH:mm:ss.fff}]{f.SourceNodeId}>{f.FrameIdHex}:{f.DataHex}"); |
| | | return $"OK:LOG:{log.Count}:{string.Join("|", entries)}"; |
| | | } |
| | | case "BUS_STATUS": |
| | | return "OK:" + _bus.GetStatusSummary(); |
| | | default: |
| | | return $"ERR:UNKNOWN_CMD:{query}"; |
| | | } |
| | | } |
| | | |
| | | private string DescribeStatus() |
| | | { |
| | | string nodeStatus = _node.GetStatusSummary(); // Node={nodeId}, Active=â¦, Rx=⦠|
| | | string busStatus = _bus.GetStatusSummary(); // Bus=â¦, State=â¦, Nodes=⦠|
| | | return $"{nodeStatus}|{busStatus}"; |
| | | } |
| | | |
| | | /// <summary>ææ¥æ¶å¸§æ ¼å¼å为 EV:RECV æ¨éè¡ï¼æ¶é´æ³ä¸æ°æ®ä¸å«åå·ï¼ã</summary> |
| | | public static string FormatPush(CanFrame frame) |
| | | { |
| | | string src = string.IsNullOrEmpty(frame.SourceNodeId) ? "0" : frame.SourceNodeId; |
| | | return $"EV:RECV:{frame.FrameIdHex}:{frame.DataHex}:{frame.Timestamp:HH.mm.ss.fff}:{src}"; |
| | | } |
| | | } |
| | | } |
| New file |
| | |
| | | <Project Sdk="Microsoft.NET.Sdk"> |
| | | |
| | | <PropertyGroup> |
| | | <OutputType>Library</OutputType> |
| | | <TargetFramework>net472</TargetFramework> |
| | | <Nullable>enable</Nullable> |
| | | <LangVersion>10.0</LangVersion> |
| | | <ImplicitUsings>enable</ImplicitUsings> |
| | | <RootNamespace>CanSimulatorServer</RootNamespace> |
| | | </PropertyGroup> |
| | | |
| | | <ItemGroup> |
| | | <PackageReference Include="log4net" Version="3.0.4" /> |
| | | </ItemGroup> |
| | | |
| | | <ItemGroup> |
| | | <ProjectReference Include="..\..\CanSimulator\CanSimulator.csproj" /> |
| | | </ItemGroup> |
| | | |
| | | </Project> |
| New file |
| | |
| | | using System; |
| | | using System.IO; |
| | | using System.Net.Sockets; |
| | | using System.Threading; |
| | | using System.Threading.Tasks; |
| | | using CanSimulator; |
| | | using log4net; |
| | | |
| | | namespace CanSimulatorServer |
| | | { |
| | | /// <summary> |
| | | /// åè¿æ¥ä¼è¯ï¼HELLO ç¶ææº + å½ä»¤æ§è¡ï¼ä¿åºååºï¼ + 帧æ¨éï¼åé串è¡åä¿åºï¼ã |
| | | /// 读循ç¯å线ç¨å¤ç请æ±ï¼ååºä¸æ¨éç»åä¸åéååºï¼å®¢æ·ç«¯æå°è¾¾é¡ºåºåæµã |
| | | /// </summary> |
| | | public sealed class ServerSession : IDisposable |
| | | { |
| | | private static readonly ILog Log = LogManager.GetLogger(typeof(ServerSession)); |
| | | |
| | | private readonly TcpClient _client; |
| | | private readonly CanBusManager _manager; |
| | | private readonly Action<ServerSession> _onClosed; |
| | | private readonly CancellationTokenSource _cts = new(); |
| | | private readonly SemaphoreSlim _writeLock = new(1, 1); |
| | | |
| | | private string? _busName; |
| | | private CanNode? _node; |
| | | private CanCommandExecutor? _executor; |
| | | private long _droppedPushes; |
| | | |
| | | /// <summary>æ¨éæåé¨ï¼å½ä»¤å¤çæé´è·¯ç±äº§çç帧å
å
¥éï¼ååºåå®ååå²ï¼ |
| | | /// ä¿è¯å®¢æ·ç«¯âé¦è¡å¿
为ååºãæ¨ééåâçä¿åºå¥çº¦</summary> |
| | | private readonly object _pushGate = new(); |
| | | private bool _inCommand; |
| | | private readonly System.Collections.Generic.List<string> _heldPushes = new(); |
| | | private const int HeldPushCapacity = 1000; |
| | | |
| | | public string ClientTag { get; private set; } = ""; |
| | | public int NodeIndex { get; private set; } = -1; |
| | | public bool Attached => _node != null; |
| | | public long DroppedPushes => Interlocked.Read(ref _droppedPushes); |
| | | |
| | | /// <summary>èç¹å¸§å°è¾¾äºä»¶ï¼UI 帧表订é
ï¼</summary> |
| | | public event Action<string, string, int>? FramePushed; // (bus, pushLine, nodeIndex) |
| | | |
| | | /// <summary>æ»çº¿è§å¯çº§å¸§äºä»¶ï¼è·¯ç±åçåå UI æ¥åï¼ç±å®¿ä¸»ææ¥ï¼</summary> |
| | | internal ServerSession(TcpClient client, CanBusManager manager, Action<ServerSession> onClosed) |
| | | { |
| | | _client = client; |
| | | _manager = manager; |
| | | _onClosed = onClosed; |
| | | } |
| | | |
| | | public void Start() |
| | | { |
| | | _ = Task.Run(() => RunAsync(_cts.Token)); |
| | | } |
| | | |
| | | private async Task RunAsync(CancellationToken ct) |
| | | { |
| | | Stream? stream = null; |
| | | try |
| | | { |
| | | stream = _client.GetStream(); |
| | | while (!ct.IsCancellationRequested) |
| | | { |
| | | string? line = await SimulatorFraming.ReadFrameAsync(stream, ct).ConfigureAwait(false); |
| | | if (line == null) break; // EOF / æªæ â ä¼è¯ç»æ |
| | | |
| | | string? response = Process(line); |
| | | if (response != null) |
| | | { |
| | | await WriteAsync(response, ct).ConfigureAwait(false); |
| | | await FlushHeldPushesAsync(ct).ConfigureAwait(false); // ååºå
è¡ï¼è¡¥åå¤çæé´æåç帧 |
| | | } |
| | | } |
| | | } |
| | | catch (InvalidDataException) |
| | | { |
| | | // å议失æ¥ï¼æå¼è¯¥ä¼è¯ï¼å®¿ä¸»ç»§ç»çå¬ |
| | | } |
| | | catch (IOException) { } |
| | | catch (OperationCanceledException) { } |
| | | catch (Exception ex) |
| | | { |
| | | Log.Warn($"[SimServer] ä¼è¯å¼å¸¸ç»æ: {ex.Message}"); |
| | | } |
| | | finally |
| | | { |
| | | Close(); |
| | | } |
| | | } |
| | | |
| | | /// <summary>å¤çä¸è¡è¯·æ±ï¼è¿åååºææ¬ï¼æ éååºæ¶è¿å nullï¼ã</summary> |
| | | private string? Process(string line) |
| | | { |
| | | if (line.StartsWith("HELLO:", StringComparison.OrdinalIgnoreCase)) |
| | | return HandleHello(line); |
| | | |
| | | if (line.StartsWith("DISCONNECT", StringComparison.OrdinalIgnoreCase)) |
| | | { |
| | | // æ¾å¼æå¼ï¼å OK åç± EOF/å
³éæ¶å°¾ |
| | | return "OK:DISCONNECTED"; |
| | | } |
| | | |
| | | if (_node == null) |
| | | return "ERR:NOT_HANDSHAKED"; |
| | | |
| | | if (line.StartsWith("SEND:", StringComparison.OrdinalIgnoreCase) || |
| | | line.StartsWith("QUERY:", StringComparison.OrdinalIgnoreCase)) |
| | | { |
| | | string resp; |
| | | lock (_pushGate) { _inCommand = true; } // å¤çæé´çæ¨éæ¹èµ°æå |
| | | try |
| | | { |
| | | resp = _executor!.Execute(line); |
| | | } |
| | | finally |
| | | { |
| | | lock (_pushGate) { _inCommand = false; } |
| | | } |
| | | // è£¸æ°æ®ï¼é OK/ERR åç¼ï¼è¡¥ OK: |
| | | if (!resp.StartsWith("OK", StringComparison.Ordinal) && |
| | | !resp.StartsWith("ERR", StringComparison.Ordinal)) |
| | | resp = "OK:" + resp; |
| | | return resp; |
| | | } |
| | | |
| | | return $"ERR:UNKNOWN_CMD:{line}"; |
| | | } |
| | | |
| | | private string? HandleHello(string line) |
| | | { |
| | | if (_node != null) |
| | | return "ERR:ALREADY_HELLO"; |
| | | |
| | | var parts = line.Split(':'); // HELLO:bus:node:tag |
| | | if (parts.Length < 4 || !int.TryParse(parts[2], out int nodeIndex) || nodeIndex < 0) |
| | | return "ERR:BAD_FRAME:HELLO æ ¼å¼åºä¸º HELLO:bus:nodeIndex:tag"; |
| | | |
| | | string bus = parts[1]; |
| | | ClientTag = parts[3]; |
| | | bool ok = _manager.TryAttach(bus, nodeIndex, ClientTag, OnNodeFrame, out var node, out var busInst); |
| | | if (!ok) return "ERR:NODE_BUSY"; |
| | | |
| | | _node = node; |
| | | _busName = bus; |
| | | NodeIndex = nodeIndex; |
| | | _executor = new CanCommandExecutor(node!, busInst!); |
| | | return $"OK:HELLO:{bus}:{nodeIndex}"; |
| | | } |
| | | |
| | | /// <summary>æ»çº¿è·¯ç±å°æ¬èç¹ç帧 â æ¨éï¼å½ä»¤å¤ç䏿åï¼å¦åå³åå³èµ°ï¼</summary> |
| | | private void OnNodeFrame(CanFrame frame) |
| | | { |
| | | string push = CanCommandExecutor.FormatPush(frame); |
| | | FramePushed?.Invoke(_busName ?? "?", push, NodeIndex); |
| | | |
| | | lock (_pushGate) |
| | | { |
| | | if (_inCommand) |
| | | { |
| | | if (_heldPushes.Count >= HeldPushCapacity) |
| | | { |
| | | _heldPushes.RemoveAt(0); // 满å丢æèï¼ç±å®¢æ·ç«¯ RECV_ALL å
åºè¡¥è´¦ |
| | | Interlocked.Increment(ref _droppedPushes); |
| | | } |
| | | _heldPushes.Add(push); |
| | | return; |
| | | } |
| | | } |
| | | |
| | | // ç©ºé²æï¼å³åå³èµ°ï¼åé串è¡åä¿å¸§åºï¼å¤±è´¥è®¡å
¥ä¸¢å¸§ |
| | | _ = WriteAsync(push, CancellationToken.None).ContinueWith(t => |
| | | { |
| | | if (t.IsFaulted) Interlocked.Increment(ref _droppedPushes); |
| | | }, TaskScheduler.Default); |
| | | } |
| | | |
| | | private async Task FlushHeldPushesAsync(CancellationToken ct) |
| | | { |
| | | string[] pending; |
| | | lock (_pushGate) |
| | | { |
| | | if (_heldPushes.Count == 0) return; |
| | | pending = _heldPushes.ToArray(); |
| | | _heldPushes.Clear(); |
| | | } |
| | | foreach (var p in pending) |
| | | await WriteAsync(p, ct).ConfigureAwait(false); |
| | | } |
| | | |
| | | private async Task WriteAsync(string text, CancellationToken ct) |
| | | { |
| | | byte[] frame = SimulatorFraming.Encode(text); |
| | | await _writeLock.WaitAsync(ct).ConfigureAwait(false); |
| | | try |
| | | { |
| | | if (_client.Connected) |
| | | { |
| | | var s = _client.GetStream(); |
| | | await s.WriteAsync(frame, 0, frame.Length, ct).ConfigureAwait(false); |
| | | await s.FlushAsync(ct).ConfigureAwait(false); |
| | | } |
| | | } |
| | | finally |
| | | { |
| | | _writeLock.Release(); |
| | | } |
| | | } |
| | | |
| | | public void Close() |
| | | { |
| | | try |
| | | { |
| | | if (_node != null && _busName != null) |
| | | _manager.Detach(_busName, _node); |
| | | _node = null; |
| | | _cts.Cancel(); |
| | | _client.Close(); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | Log.Debug($"[SimServer] ä¼è¯å
³éå¼å¸¸: {ex.Message}"); |
| | | } |
| | | finally |
| | | { |
| | | _onClosed(this); |
| | | } |
| | | } |
| | | |
| | | public void Dispose() |
| | | { |
| | | Close(); |
| | | _cts.Dispose(); |
| | | _writeLock.Dispose(); |
| | | } |
| | | } |
| | | } |
| New file |
| | |
| | | using System; |
| | | using System.Collections.Concurrent; |
| | | using System.Net; |
| | | using System.Net.Sockets; |
| | | using System.Threading; |
| | | using System.Threading.Tasks; |
| | | using log4net; |
| | | |
| | | namespace CanSimulatorServer |
| | | { |
| | | /// <summary> |
| | | /// 模æå¨ TCP 宿主ï¼çå¬ç«¯å£ãæ¥åè¿æ¥ã为æ¯è¿æ¥å»ºç«ä¼è¯ï¼å¹¶æææ»çº¿æ³¨å表ã |
| | | /// port=0 æ¶ç±ç³»ç»åé
临æ¶ç«¯å£ï¼Port 屿§è¯»åå®é
å¼ï¼æµè¯åç¯ç¨ï¼ã |
| | | /// UI å®¿ä¸»ä¸æµè¯ fixture å
±ç¨æ¬ç±»ï¼ä¿è¯æå¡ç«¯è¡ä¸ºåä¸è·¯å¾ã |
| | | /// </summary> |
| | | public sealed class TcpSimulatorHost : IDisposable |
| | | { |
| | | private static readonly ILog Log = LogManager.GetLogger(typeof(TcpSimulatorHost)); |
| | | |
| | | private TcpListener? _listener; |
| | | private readonly ConcurrentDictionary<ServerSession, byte> _sessions = new(); |
| | | private readonly CancellationTokenSource _cts = new(); |
| | | private int _acceptedCount; |
| | | |
| | | public CanBusManager Manager { get; } = new(); |
| | | |
| | | /// <summary>å®é
çå¬ç«¯å£ï¼StartAsync åææï¼</summary> |
| | | public int Port { get; private set; } |
| | | |
| | | public int ActiveSessionCount => _sessions.Count; |
| | | public int AcceptedCount => _acceptedCount; |
| | | |
| | | /// <summary>æ°ä¼è¯å»ºç«äºä»¶ï¼UI èç¹æ 订é
ï¼</summary> |
| | | public event Action<ServerSession>? SessionAttached; |
| | | |
| | | public Task StartAsync(int port = 0, bool listenAll = false) |
| | | { |
| | | if (_listener != null) throw new InvalidOperationException("宿主已å¨è¿è¡"); |
| | | |
| | | var ip = listenAll ? IPAddress.Any : IPAddress.Loopback; |
| | | _listener = new TcpListener(ip, port); |
| | | _listener.Start(); |
| | | Port = ((IPEndPoint)_listener.LocalEndpoint).Port; |
| | | |
| | | Log.Info($"[SimServer] çå¬ {ip}:{Port}"); |
| | | _ = Task.Run(() => AcceptLoopAsync(_cts.Token)); |
| | | return Task.CompletedTask; |
| | | } |
| | | |
| | | private async Task AcceptLoopAsync(CancellationToken ct) |
| | | { |
| | | while (!ct.IsCancellationRequested) |
| | | { |
| | | TcpClient? client = null; |
| | | try |
| | | { |
| | | client = await _listener!.AcceptTcpClientAsync().ConfigureAwait(false); |
| | | Interlocked.Increment(ref _acceptedCount); |
| | | var session = new ServerSession(client, Manager, s => _sessions.TryRemove(s, out _)); |
| | | if (_sessions.TryAdd(session, 0)) |
| | | { |
| | | SessionAttached?.Invoke(session); |
| | | session.Start(); |
| | | } |
| | | client = null; |
| | | } |
| | | catch (OperationCanceledException) { break; } |
| | | catch (SocketException) { break; } // listener 已忢 |
| | | catch (Exception ex) |
| | | { |
| | | Log.Warn($"[SimServer] æ¥åè¿æ¥å¤±è´¥: {ex.Message}"); |
| | | client?.Close(); |
| | | try { await Task.Delay(200, ct).ConfigureAwait(false); } |
| | | catch (OperationCanceledException) { break; } |
| | | } |
| | | } |
| | | } |
| | | |
| | | public void Dispose() |
| | | { |
| | | try { _cts.Cancel(); } catch { } |
| | | try { _listener?.Stop(); } catch { } |
| | | foreach (var s in _sessions.Keys) |
| | | { |
| | | try { s.Dispose(); } catch { } |
| | | } |
| | | _sessions.Clear(); |
| | | _cts.Dispose(); |
| | | Log.Info("[SimServer] å®¿ä¸»å·²åæ¢"); |
| | | } |
| | | } |
| | | } |
| New file |
| | |
| | | <?xml version="1.0" encoding="utf-8"?> |
| | | <configuration> |
| | | <appSettings> |
| | | <!-- CAN 模æå¨ç¬ç« TCP æå¡å°åï¼Broker 宿主å
çç©çä¼è¯é©±å¨è¿æ¤ç«¯å£ --> |
| | | <add key="CanSimulator.Host" value="127.0.0.1" /> |
| | | <add key="CanSimulator.Port" value="9000" /> |
| | | </appSettings> |
| | | </configuration> |
| New file |
| | |
| | | using System; |
| | | using System.Buffers.Binary; |
| | | using System.Collections.Concurrent; |
| | | using System.Collections.Generic; |
| | | using System.Data; |
| | | using System.Globalization; |
| | | using System.IO; |
| | | using System.IO.Pipes; |
| | | using System.Text; |
| | | using System.Threading; |
| | | using System.Threading.Tasks; |
| | | using System.Linq; |
| | | using Aging.Infrastructure.Broker; |
| | | using Aging.Infrastructure.Contracts; |
| | | using Aging.Infrastructure.Core; |
| | | using Aging.Infrastructure.Drivers; |
| | | using Aging.ResourceContracts; |
| | | using log4net; |
| | | |
| | | namespace DeviceBroker |
| | | { |
| | | /// <summary> |
| | | /// DeviceBroker 宿主ï¼å¯ä¸ææ Broker å设å¤ç©çä¼è¯çè¿ç¨ï¼V3.0 æ··åæ¶æï¼ã |
| | | /// åºéæ¶åéæ ¡éªï¼arb.db æ
æ ï¼epoch/generation/ç¸ä½ï¼INV-01/03ï¼+ configHash 对账ï¼INV-04ï¼ï¼ |
| | | /// SessionGate æâéæ©éé + åå
¥/æ¥è¯¢ + 读åååºâè§ä¸ºä¸å¯æåååçæ®µä¸²è¡æ§è¡ï¼Â§04ï¼ã |
| | | /// MVP 为 OneShot å½ä»¤åæ¥æ¨¡åï¼å¨æä»»å¡/订é
/Outbox æ¨è¿ï¼P2+ï¼ã |
| | | /// </summary> |
| | | public sealed class BrokerServer |
| | | { |
| | | private static readonly ILog Log = LogManager.GetLogger(typeof(BrokerServer)); |
| | | |
| | | private static readonly string[] AllowedOps = { "CONNECT", "DISCONNECT", "SEND", "QUERY", "STATUS" }; |
| | | |
| | | private readonly string _brokerId; |
| | | private readonly string _pipeName; |
| | | private readonly string _configDbPath; |
| | | private readonly DbLeaseStore _lease; |
| | | |
| | | private sealed class ManagedDevice |
| | | { |
| | | public string DeviceId = ""; |
| | | public string Transport = ""; |
| | | public string Endpoint = ""; |
| | | public string SessionKey = ""; |
| | | public IDeviceDriver? Driver; |
| | | public bool Connected; |
| | | } |
| | | |
| | | private readonly Dictionary<string, ManagedDevice> _devices = |
| | | new(StringComparer.OrdinalIgnoreCase); |
| | | private readonly ConcurrentDictionary<string, SemaphoreSlim> _gates = new(); |
| | | private readonly SemaphoreSlim _driverCreateLock = new(1, 1); |
| | | |
| | | private long _hashStampMs; |
| | | private volatile string _cachedHash = ""; |
| | | |
| | | public BrokerServer(string configDbPath, string arbDbPath, string brokerId) |
| | | { |
| | | _configDbPath = configDbPath; |
| | | _brokerId = brokerId; |
| | | _pipeName = BrokerPipeName.For(brokerId); |
| | | _lease = new DbLeaseStore(arbDbPath, brokerId); |
| | | // 宿主éå¯å¯¹è´¦ï¼åæ¶ä¸æ¬¡è¿ç¨æ®ççå¾
åæ¶ç§çº¦ï¼INV-03 èªå¨åå½¢å¼ï¼è¯æ®è½åºï¼ |
| | | _lease.ReconcileAfterBoot($"broker:{brokerId}/{System.Diagnostics.Process.GetCurrentProcess().Id}"); |
| | | } |
| | | |
| | | public long Epoch => _lease.CurrentEpoch; |
| | | |
| | | /// <summary>å è½½æ¬ Broker åè®¾å¤æ¸
åï¼ExecutionMode=Broker ä¸ BrokerId å¹é
ï¼ã</summary> |
| | | public void LoadDevices() |
| | | { |
| | | _devices.Clear(); |
| | | using var conn = new System.Data.SQLite.SQLiteConnection( |
| | | $"Data Source={_configDbPath};Version=3;Read Only=True;"); |
| | | conn.Open(); |
| | | using var cmd = conn.CreateCommand(); |
| | | cmd.CommandText = @"SELECT DeviceId, Transport, Endpoint, PhysicalSessionKey, BrokerId, AuthorityId |
| | | FROM DeviceDefinition WHERE ExecutionMode = 'Broker';"; |
| | | using var rd = cmd.ExecuteReader(); |
| | | var dt = new DataTable(); |
| | | dt.Load(rd); |
| | | foreach (DataRow row in dt.Rows) |
| | | { |
| | | var brokerId = row["BrokerId"].ToString() ?? ""; |
| | | if (!string.Equals(brokerId, _brokerId, StringComparison.OrdinalIgnoreCase)) |
| | | continue; // å±å
¶ä» Broker åï¼æ¬å®¿ä¸»æç»ä»£æ¶ |
| | | _devices[row["DeviceId"].ToString()!] = new ManagedDevice |
| | | { |
| | | DeviceId = row["DeviceId"].ToString() ?? "", |
| | | Transport = row["Transport"].ToString() ?? "", |
| | | Endpoint = row["Endpoint"].ToString() ?? "", |
| | | SessionKey = string.IsNullOrWhiteSpace(row["PhysicalSessionKey"].ToString()) |
| | | ? row["DeviceId"].ToString()! // æ ä¼è¯é®æ¶éå为æè®¾å¤ä¸²è¡ |
| | | : row["PhysicalSessionKey"].ToString()!, |
| | | }; |
| | | } |
| | | Log.Info($"[Broker] {_brokerId} è½½å
¥ {_devices.Count} å° Broker 设å¤, epoch={_lease.CurrentEpoch}"); |
| | | } |
| | | |
| | | /// <summary>æ¥å循ç¯ï¼æ¯ä¸ªè¿æ¥ä¸ä¸ªå¤çä»»å¡ï¼ç®¡éä¿æå¤å®ä¾å¯ç¨ã</summary> |
| | | public async Task RunAsync(CancellationToken ct) |
| | | { |
| | | Log.Info($"[Broker] çå¬ç®¡é [{_pipeName}]"); |
| | | while (!ct.IsCancellationRequested) |
| | | { |
| | | NamedPipeServerStream? stream = null; |
| | | try |
| | | { |
| | | stream = new NamedPipeServerStream(_pipeName, |
| | | PipeDirection.InOut, 8, PipeTransmissionMode.Byte, PipeOptions.Asynchronous); |
| | | await stream.WaitForConnectionAsync(ct).ConfigureAwait(false); |
| | | var s = stream; |
| | | stream = null; |
| | | _ = Task.Run(() => HandleConnectionAsync(s, ct), CancellationToken.None); |
| | | } |
| | | catch (OperationCanceledException) |
| | | { |
| | | break; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | Log.Error($"[Broker] æ¥åè¿æ¥å¼å¸¸: {ex.Message}", ex); |
| | | stream?.Dispose(); |
| | | try { await Task.Delay(500, ct).ConfigureAwait(false); } |
| | | catch (OperationCanceledException) { break; } |
| | | } |
| | | } |
| | | } |
| | | |
| | | private async Task HandleConnectionAsync(NamedPipeServerStream stream, CancellationToken ct) |
| | | { |
| | | var lenBuf = new byte[4]; |
| | | try |
| | | { |
| | | using (stream) |
| | | { |
| | | while (!ct.IsCancellationRequested && stream.IsConnected) |
| | | { |
| | | if (!await ReadExactAsync(stream, lenBuf, 4, ct).ConfigureAwait(false)) break; |
| | | int len = BinaryPrimitives.ReadInt32BigEndian(lenBuf); |
| | | if (len <= 0 || len > BrokerIpc.MaxFrameBytes) break; |
| | | var payload = new byte[len]; |
| | | if (!await ReadExactAsync(stream, payload, len, ct).ConfigureAwait(false)) break; |
| | | |
| | | IpcEnvelope request; |
| | | try |
| | | { |
| | | request = BrokerIpc.DecodeEnvelope(Encoding.UTF8.GetString(payload)); |
| | | } |
| | | catch (Exception) |
| | | { |
| | | break; // å议失æ¥ï¼æå¼è¯¥è¿æ¥ |
| | | } |
| | | |
| | | IpcEnvelope response = await DispatchAsync(request, ct).ConfigureAwait(false); |
| | | var frame = BrokerIpc.EncodeFrame(BrokerIpc.EncodeEnvelope(response)); |
| | | await stream.WriteAsync(frame, 0, frame.Length, ct).ConfigureAwait(false); |
| | | await stream.FlushAsync(ct).ConfigureAwait(false); |
| | | } |
| | | } |
| | | } |
| | | catch (OperationCanceledException) { } |
| | | catch (IOException) { } |
| | | catch (Exception ex) |
| | | { |
| | | Log.Warn($"[Broker] è¿æ¥å¤çç»æ: {ex.Message}"); |
| | | } |
| | | } |
| | | |
| | | private async Task<IpcEnvelope> DispatchAsync(IpcEnvelope request, CancellationToken ct) |
| | | { |
| | | if (request.ProtocolVersion != BrokerIpc.ProtocolVersion) |
| | | return Reply(request, BrokerIpc.SerializeBody(new BrokerIpc.ResultBody |
| | | { |
| | | State = "Failed", |
| | | ErrorCode = "PROTOCOL_MISMATCH", |
| | | Readback = $"Broker åè®® v{BrokerIpc.ProtocolVersion}ï¼æç» v{request.ProtocolVersion}" |
| | | })); |
| | | |
| | | switch (request.MessageType) |
| | | { |
| | | case IpcMessageTypes.Hello: |
| | | return Reply(request, BrokerIpc.SerializeBody(new HelloResult |
| | | { |
| | | ServerEpoch = _lease.CurrentEpoch, |
| | | ConfigHash = CurrentHash(), |
| | | ProtocolVersion = BrokerIpc.ProtocolVersion, |
| | | BrokerId = _brokerId |
| | | })); |
| | | |
| | | case IpcMessageTypes.SubmitTask: |
| | | var body = BrokerIpc.DeserializeBody<BrokerIpc.SubmitBody>(request.BodyJson); |
| | | if (body == null) |
| | | return Reply(request, Result("Failed", "BAD_BODY", "SubmitBody è§£æå¤±è´¥")); |
| | | return Reply(request, await ExecuteOneShotAsync(body, request, ct).ConfigureAwait(false)); |
| | | |
| | | case IpcMessageTypes.ProbeReadback: |
| | | var pb = BrokerIpc.DeserializeBody<BrokerIpc.SubmitBody>(request.BodyJson); |
| | | return Reply(request, await ProbeReadbackAsync(pb?.DeviceId ?? "").ConfigureAwait(false)); |
| | | |
| | | case IpcMessageTypes.CancelTask: |
| | | // MVP 䏿¯æä¸æå¨éååçæ®µï¼INV-06ï¼ä¸å¾åè£
å·²åæ¶ï¼ |
| | | return Reply(request, Result("Failed", "NOT_SUPPORTED", "MVP 䏿¯æåæ¶ï¼ç段å°å¨ deadline å
宿")); |
| | | |
| | | default: |
| | | return Reply(request, Result("Failed", "UNKNOWN_MESSAGE", request.MessageType)); |
| | | } |
| | | } |
| | | |
| | | // ==================== OneShot æ§è¡æ ¸å¿ ==================== |
| | | |
| | | private async Task<BrokerIpc.ResultBody> ExecuteOneShotAsync( |
| | | BrokerIpc.SubmitBody body, IpcEnvelope request, CancellationToken ct) |
| | | { |
| | | // 0) OpCode ç½åå |
| | | if (!AllowedOps.Contains(body.OperationCode) || |
| | | !_devices.TryGetValue(body.DeviceId, out var device)) |
| | | { |
| | | return Result("Failed", "DEVICE_NOT_BROKERED", |
| | | $"è®¾å¤ {body.DeviceId} ä¸å±äºæ¬ Broker åææä½ {body.OperationCode} ä¸å¨ç½åå"); |
| | | } |
| | | |
| | | // 1) INV-04ï¼configHash 对账ï¼ç©ºåå¸è§ä¸ºæ§å®¢æ·ç«¯ï¼æ¾è¡å¹¶è®°å½ï¼ |
| | | var hash = CurrentHash(); |
| | | if (!string.IsNullOrWhiteSpace(request.ConfigHash) && |
| | | !string.Equals(request.ConfigHash, hash, StringComparison.OrdinalIgnoreCase)) |
| | | { |
| | | return Result("RejectedConfigMismatch", "CONFIG_MISMATCH", |
| | | $"客æ·ç«¯å¿«ç
§ {Trim(request.ConfigHash)} â Broker çæ {Trim(hash)}ï¼å
Apply å I/O"); |
| | | } |
| | | |
| | | // 2) æ
æ åæ ¡éªï¼CONNECT/DISCONNECT ä»
ç»è®°æéæ¾å®¿ä¸»ç©çä¼è¯ãæ æ»çº¿è¾åºï¼è±å
ç§çº¦ï¼ |
| | | // çº¯è¯»åæ¶é®ç®±ï¼RECV/RECV_ALL/LOG/BUS_STATUSï¼ä¸ºè¢«å¨çæ§æ åå¯ä½ç¨ï¼ä¹è±å
ï¼æ¯æè°è¯é¡µåªè¯»çå¬ï¼ï¼ |
| | | // SEND åå
¶å® QUERYï¼å¯è½è§¦å设å¤è¡ä¸ºï¼å¦ AUTO_RESPONSE/FILTERï¼å¿
é¡»ææ´»è·ç§çº¦ï¼INV-01ï¼ |
| | | string leaseKey = string.IsNullOrWhiteSpace(body.ResourceKey) ? body.DeviceId : body.ResourceKey; |
| | | bool readOnlyDrain = body.OperationCode == "QUERY" && |
| | | (body.Payload.StartsWith("RECV", StringComparison.OrdinalIgnoreCase) || |
| | | body.Payload.StartsWith("LOG", StringComparison.OrdinalIgnoreCase) || |
| | | body.Payload.StartsWith("BUS_STATUS", StringComparison.OrdinalIgnoreCase) || |
| | | body.Payload.StartsWith("STATUS", StringComparison.OrdinalIgnoreCase)); |
| | | if (body.OperationCode != "DISCONNECT" && body.OperationCode != "CONNECT" && !readOnlyDrain) |
| | | { |
| | | var phase = _lease.PhaseOf(leaseKey); |
| | | if (phase == LeasePhase.RecoveryRequired) |
| | | { |
| | | return Result("RejectedStaleLease", "RECOVERY_REQUIRED", |
| | | $"èµæº {leaseKey} è¿æå¾
åæ¶(INV-03)ï¼ç¦æ¢ I/O"); |
| | | } |
| | | var holder = _lease.ProbeConflict(leaseKey); |
| | | if (phase != LeasePhase.Active || holder == null) |
| | | { |
| | | return Result("RejectedStaleLease", "NO_ACTIVE_LEASE", |
| | | $"èµæº {leaseKey} æ æ´»è·ç§çº¦ï¼å®¢æ·ç«¯é¡»å
Acquireï¼ç¦æ¢æ ç§çº¦ç´æ¥ I/Oï¼"); |
| | | } |
| | | // MVPï¼åæº arb.db å¼±èº«ä»½æ ¡éªââåªåå卿§/ç¸ä½æ£æ¥ï¼ |
| | | // ownerâclientInstanceId 精确对é½å¾
epoch ç¾ååæ®ï¼V3.0 §13 P2ï¼ã |
| | | } |
| | | |
| | | // 3) SessionGateï¼åä¸ç©çä¼è¯ååçâ寻é+æ§è¡âçæ®µä¸²è¡ |
| | | var gate = _gates.GetOrAdd(device.SessionKey, _ => new SemaphoreSlim(1, 1)); |
| | | bool entered; |
| | | try { entered = await gate.WaitAsync(5000, CancellationToken.None).ConfigureAwait(false); } |
| | | catch (ObjectDisposedException) { entered = false; } |
| | | if (!entered) |
| | | { |
| | | // æªè¿å
¥ç段 â ç¡®å®æªæ§è¡ï¼å¯å®å
¨å¤å¿ |
| | | return Result("Failed", "RESOURCE_BUSY", |
| | | $"ä¼è¯ {device.SessionKey} çæ®µéåçå¾
è¶
æ¶ï¼æªæ§è¡å¯å®å
¨éè¯"); |
| | | } |
| | | |
| | | try |
| | | { |
| | | return await RunFragmentAsync(device, body, ct).ConfigureAwait(false); |
| | | } |
| | | finally |
| | | { |
| | | gate.Release(); |
| | | } |
| | | } |
| | | |
| | | private async Task<BrokerIpc.ResultBody> RunFragmentAsync( |
| | | ManagedDevice device, BrokerIpc.SubmitBody body, CancellationToken ct) |
| | | { |
| | | try |
| | | { |
| | | if (body.OperationCode == "CONNECT" || (device.Driver == null && body.OperationCode != "DISCONNECT")) |
| | | { |
| | | await EnsureConnectedAsync(device, ct).ConfigureAwait(false); |
| | | } |
| | | |
| | | switch (body.OperationCode) |
| | | { |
| | | case "CONNECT": |
| | | return Result("Succeeded", "", $"OK:CONNECTED:{device.DeviceId}", _lease.CurrentEpoch); |
| | | case "DISCONNECT": |
| | | if (device.Connected) |
| | | { |
| | | await device.Driver!.DisconnectAsync().ConfigureAwait(false); |
| | | device.Connected = false; |
| | | } |
| | | return Result("Succeeded", "", $"OK:DISCONNECTED:{device.DeviceId}", _lease.CurrentEpoch); |
| | | case "SEND": |
| | | { |
| | | EnsureConnectedOrThrow(device); |
| | | var resp = await device.Driver!.SendCommandAsync(body.Payload, ct).ConfigureAwait(false); |
| | | return Result("Succeeded", "", AppendPushes(device, resp), _lease.CurrentEpoch); |
| | | } |
| | | case "QUERY": |
| | | { |
| | | EnsureConnectedOrThrow(device); |
| | | var resp = await device.Driver!.QueryAsync(body.Payload, ct).ConfigureAwait(false); |
| | | return Result("Succeeded", "", AppendPushes(device, resp), _lease.CurrentEpoch); |
| | | } |
| | | case "STATUS": |
| | | { |
| | | var st = device.Driver?.GetStatus(); |
| | | return Result("Succeeded", "", |
| | | st == null ? "STATUS:NOT_CREATED" |
| | | : $"STATUS:{st.IsConnected}|{st.LastError}", _lease.CurrentEpoch); |
| | | } |
| | | default: |
| | | return Result("Failed", "BAD_OP", body.OperationCode); |
| | | } |
| | | } |
| | | catch (OperationCanceledException) |
| | | { |
| | | // çæ®µä¸éåæ¶ï¼ç©çä¾§å¯è½å·²æ§è¡ â INV-06 |
| | | return Result("Unknown", "DEADLINE", $"{body.OperationCode} è¶
deadlineï¼ç»ææªç¥"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | bool ioMayHappened = body.OperationCode is "SEND" or "QUERY"; |
| | | return Result(ioMayHappened ? "Unknown" : "Failed", "DRIVER_ERROR", |
| | | $"{body.OperationCode} æ§è¡å¼å¸¸: {ex.Message}", _lease.CurrentEpoch); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æå¸¦æ¨éï¼Â§5.4ï¼ï¼å°å®¿ä¸»ç©ç驱å¨èªä¸æ¬¡ååºä»¥æ¥æ¶å°ç EV:RECV å¸§ï¼ |
| | | /// 以 "|PUSHED:n|EV:RECVâ¦" åç¼æ¼å°ååº readbackï¼å®¢æ·ç«¯ BrokerRpcTransport è§£æä¸å±ã |
| | | /// </summary> |
| | | private static string AppendPushes(ManagedDevice device, string resp) |
| | | { |
| | | if (device.Driver is CanDeviceDriver can) |
| | | { |
| | | var lines = can.DrainPendingPushLines(); |
| | | if (lines.Count > 0) |
| | | return resp + "|PUSHED:" + lines.Count + "|" + string.Join("|", lines); |
| | | } |
| | | return resp; |
| | | } |
| | | |
| | | private void EnsureConnectedOrThrow(ManagedDevice device) |
| | | { |
| | | if (!device.Connected || device.Driver == null) |
| | | throw new InvalidOperationException($"è®¾å¤ {device.DeviceId} æªè¿æ¥ï¼è¯·å
CONNECT"); |
| | | } |
| | | |
| | | private async Task EnsureConnectedAsync(ManagedDevice device, CancellationToken ct) |
| | | { |
| | | if (device.Connected && device.Driver != null) return; |
| | | await _driverCreateLock.WaitAsync(ct).ConfigureAwait(false); |
| | | try |
| | | { |
| | | if (device.Connected && device.Driver != null) return; |
| | | device.Driver ??= DriverFactory.CreateDriver(device.DeviceId, device.Transport, device.Endpoint); |
| | | await device.Driver.ConnectAsync(ct).ConfigureAwait(false); |
| | | device.Connected = true; |
| | | Log.Info($"[Broker] ç©çä¼è¯å·²å»ºç«: {device.DeviceId} ({device.Transport} {device.Endpoint})"); |
| | | } |
| | | finally |
| | | { |
| | | _driverCreateLock.Release(); |
| | | } |
| | | } |
| | | |
| | | /// <summary>æ¢å¤åæ¶åè¯»åæ¢æµï¼å®¿ä¸»è¯»å设å¤ç¶æä½ä¸ºåæ ¼è¯æ®ï¼INV-03 äººå·¥åæ¶é¾ç Broker ä¾§ï¼ã</summary> |
| | | private async Task<BrokerIpc.ResultBody> ProbeReadbackAsync(string deviceId) |
| | | { |
| | | if (!_devices.TryGetValue(deviceId, out var device) || device.Driver == null) |
| | | return Result("Failed", "NO_DRIVER", $"è®¾å¤ {deviceId} æ æ´»å¨é©±å¨"); |
| | | try |
| | | { |
| | | var readback = await device.Driver.QueryAsync("STATUS", CancellationToken.None).ConfigureAwait(false); |
| | | return Result("Succeeded", "", readback, _lease.CurrentEpoch); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return Result("Failed", "READBACK_ERROR", ex.Message); |
| | | } |
| | | } |
| | | |
| | | // ==================== æé¡¹ ==================== |
| | | |
| | | private string CurrentHash() |
| | | { |
| | | long now = BrokerIpc.NowUtcMs(); |
| | | if (now - Interlocked.Read(ref _hashStampMs) > 2000) |
| | | { |
| | | try |
| | | { |
| | | _cachedHash = DeviceConfigHash.Compute(_configDbPath); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | Log.Warn($"[Broker] configHash éç®å¤±è´¥: {ex.Message}"); |
| | | } |
| | | Interlocked.Exchange(ref _hashStampMs, now); |
| | | } |
| | | return _cachedHash; |
| | | } |
| | | |
| | | private static BrokerIpc.ResultBody Result(string state, string code, string readback, long epoch = 0) |
| | | => new BrokerIpc.ResultBody |
| | | { |
| | | State = state, |
| | | ErrorCode = code, |
| | | Readback = readback, |
| | | ServerEpoch = epoch |
| | | }; |
| | | |
| | | private static IpcEnvelope Reply(IpcEnvelope request, string bodyJson) => new IpcEnvelope |
| | | { |
| | | ProtocolVersion = BrokerIpc.ProtocolVersion, |
| | | MessageType = "Result", |
| | | RequestId = Guid.NewGuid().ToString("N"), |
| | | CorrelationId = request.RequestId, |
| | | ClientInstanceId = request.ClientInstanceId, |
| | | AuthorityId = request.AuthorityId, |
| | | BodyJson = bodyJson |
| | | }; |
| | | |
| | | private static IpcEnvelope Reply(IpcEnvelope request, BrokerIpc.ResultBody body) |
| | | => Reply(request, BrokerIpc.SerializeBody(body)); |
| | | |
| | | private static async Task<bool> ReadExactAsync(Stream s, byte[] buf, int count, CancellationToken ct) |
| | | { |
| | | int off = 0; |
| | | while (off < count) |
| | | { |
| | | int n; |
| | | try { n = await s.ReadAsync(buf, off, count - off, ct).ConfigureAwait(false); } |
| | | catch (IOException) { return false; } |
| | | if (n <= 0) return false; |
| | | off += n; |
| | | } |
| | | return true; |
| | | } |
| | | |
| | | private static string Trim(string h) |
| | | => string.IsNullOrEmpty(h) ? "" : (h.Length > 8 ? h.Substring(0, 8) : h); |
| | | } |
| | | } |
| New file |
| | |
| | | <Project Sdk="Microsoft.NET.Sdk"> |
| | | |
| | | <PropertyGroup> |
| | | <OutputType>Exe</OutputType> |
| | | <TargetFramework>net472</TargetFramework> |
| | | <Nullable>enable</Nullable> |
| | | <LangVersion>10.0</LangVersion> |
| | | <ImplicitUsings>enable</ImplicitUsings> |
| | | <AssemblyName>DeviceBroker</AssemblyName> |
| | | <RootNamespace>DeviceBroker</RootNamespace> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <AutoGenerateBindingRedirects>True</AutoGenerateBindingRedirects> |
| | | </PropertyGroup> |
| | | |
| | | <ItemGroup> |
| | | <ProjectReference Include="..\Aging.Infrastructure\Aging.Infrastructure.csproj" /> |
| | | <ProjectReference Include="..\Aging.ResourceContracts\Aging.ResourceContracts.csproj" /> |
| | | <ProjectReference Include="..\CanSimulator\CanSimulator.csproj" /> |
| | | </ItemGroup> |
| | | |
| | | </Project> |
| New file |
| | |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.IO; |
| | | using System.Threading; |
| | | using System.Threading.Tasks; |
| | | using log4net; |
| | | |
| | | namespace DeviceBroker |
| | | { |
| | | /// <summary> |
| | | /// DeviceBroker 宿主å
¥å£ã |
| | | /// ç¨æ³: DeviceBroker.exe [--db data.dbè·¯å¾] [--arb arb.dbè·¯å¾] [--broker broker-b01] |
| | | /// é»è®¤è·¯å¾ä¸éææµè¯ç¯å¢ä¸è´ï¼%LOCALAPPDATA%\PluginIntegrationTestï¼ã |
| | | /// </summary> |
| | | public static class Program |
| | | { |
| | | private static readonly ILog Log = LogManager.GetLogger(typeof(Program)); |
| | | |
| | | public static async Task Main(string[] args) |
| | | { |
| | | var map = ParseArgs(args); |
| | | string appData = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData); |
| | | string defaultDir = Path.Combine(appData, "PluginIntegrationTest"); |
| | | string dbPath = Get(map, "--db", Path.Combine(defaultDir, "data.db")); |
| | | string arbPath = Get(map, "--arb", Path.Combine(defaultDir, "arb.db")); |
| | | string brokerId = Get(map, "--broker", "broker-b01"); |
| | | |
| | | Console.WriteLine($"DeviceBroker [{brokerId}]"); |
| | | Console.WriteLine($" é
ç½®åº: {dbPath}"); |
| | | Console.WriteLine($" 仲è£åº: {arbPath}"); |
| | | |
| | | if (!File.Exists(dbPath)) |
| | | { |
| | | Console.WriteLine($"[FATAL] é
ç½®åºä¸åå¨ï¼è¯·å
卿³¨å页ä¿å设å¤é
ç½®ã{dbPath}"); |
| | | Environment.ExitCode = 2; |
| | | return; |
| | | } |
| | | |
| | | using var cts = new CancellationTokenSource(); |
| | | Console.CancelKeyPress += (_, e) => |
| | | { |
| | | e.Cancel = true; // ä¼é
éåºï¼ç§çº¦é TTL è¿æ + äººå·¥åæ¶ï¼ä¸åè¿ç¨å
å¼ºæ¾ |
| | | cts.Cancel(); |
| | | Console.WriteLine("[Broker] æ¶å°éåºè¯·æ±ï¼å¨éçæ®µæ deadline æ¶å£â¦"); |
| | | }; |
| | | |
| | | try |
| | | { |
| | | var server = new BrokerServer(dbPath, arbPath, brokerId); |
| | | server.LoadDevices(); |
| | | Console.WriteLine($"[Broker] epoch={server.Epoch}ï¼Ctrl+C éåº"); |
| | | await server.RunAsync(cts.Token).ConfigureAwait(false); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | Log.Fatal("[Broker] 宿主å¼å¸¸éåº", ex); |
| | | Console.WriteLine($"[FATAL] {ex.Message}"); |
| | | Environment.ExitCode = 1; |
| | | } |
| | | } |
| | | |
| | | private static string Get(Dictionary<string, string> map, string key, string fallback) |
| | | => map.TryGetValue(key, out var v) && !string.IsNullOrWhiteSpace(v) ? v : fallback; |
| | | |
| | | private static Dictionary<string, string> ParseArgs(string[] args) |
| | | { |
| | | var map = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase); |
| | | for (int i = 0; i + 1 < args.Length; i++) |
| | | { |
| | | if (args[i].StartsWith("--")) |
| | | { |
| | | map[args[i]] = args[i + 1]; |
| | | i++; |
| | | } |
| | | } |
| | | return map; |
| | | } |
| | | } |
| | | } |
| | |
| | | <RowDefinition Height="36"/> |
| | | <RowDefinition Height="36"/> |
| | | <RowDefinition Height="36"/> |
| | | <RowDefinition Height="36"/> |
| | | </Grid.RowDefinitions> |
| | | |
| | | <TextBlock Grid.Row="0" Grid.Column="0" Text="设å¤ID" VerticalAlignment="Center" Style="{StaticResource ListTableTextBlock}"/> |
| | |
| | | <TextBlock Grid.Row="2" Grid.Column="2" Text="çæçæ¬" VerticalAlignment="Center" Style="{StaticResource ListTableTextBlock}"/> |
| | | <TextBox Grid.Row="2" Grid.Column="3" x:Name="tbEffectiveVersion" VerticalAlignment="Center" |
| | | Style="{StaticResource EditorTextBoxStyle}" IsReadOnly="True" Margin="4,0"/> |
| | | |
| | | <TextBlock Grid.Row="3" Grid.Column="0" Text="æ§è¡ä½ç½®" VerticalAlignment="Center" Style="{StaticResource ListTableTextBlock}"/> |
| | | <TextBox Grid.Row="3" Grid.Column="1" x:Name="tbExecutionMode" VerticalAlignment="Center" |
| | | Style="{StaticResource EditorTextBoxStyle}" IsReadOnly="True" Margin="4,0"/> |
| | | |
| | | <TextBlock Grid.Row="3" Grid.Column="2" Text="仲è£å/ä¼è¯" VerticalAlignment="Center" Style="{StaticResource ListTableTextBlock}"/> |
| | | <TextBox Grid.Row="3" Grid.Column="3" x:Name="tbAuthorityInfo" VerticalAlignment="Center" |
| | | Style="{StaticResource EditorTextBoxStyle}" IsReadOnly="True" Margin="4,0"/> |
| | | </Grid> |
| | | </GroupBox> |
| | | |
| | |
| | | |
| | | var chList = _model.GetChannelsByDevice(dev.DeviceId); |
| | | Channels = new ObservableCollection<DeviceChannel>(chList); |
| | | |
| | | // V3.0 æ§è¡ä½ç½®å±ç¤º |
| | | tbExecutionMode.Text = dev.ExecutionMode == ExecutionModeKind.Broker |
| | | ? "Broker å
±äº«" : "Local ç´è¿"; |
| | | tbAuthorityInfo.Text = dev.ExecutionMode == ExecutionModeKind.Broker |
| | | ? $"{dev.AuthorityId} · {dev.PhysicalSessionKey}" |
| | | : (string.IsNullOrWhiteSpace(dev.AuthorityId) ? V3AuthorityCatalog.LocalAuthorityId : dev.AuthorityId); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | |
| | | DriverType = SelectedDevice.DriverType, |
| | | Transport = SelectedDevice.Transport, |
| | | Endpoint = SelectedDevice.Endpoint, |
| | | ExecutionMode = SelectedDevice.ExecutionMode, |
| | | AuthorityId = SelectedDevice.AuthorityId, |
| | | BrokerId = SelectedDevice.BrokerId, |
| | | OwnerProcessId = SelectedDevice.OwnerProcessId, |
| | | PhysicalSessionKey = SelectedDevice.PhysicalSessionKey, |
| | | EffectiveVersion = SelectedDevice.EffectiveVersion, |
| | | CreatedAt = SelectedDevice.CreatedAt, |
| | | UpdatedAt = SelectedDevice.UpdatedAt |
| | |
| | | tbTransport.Text = string.Empty; |
| | | tbEndpoint.Text = string.Empty; |
| | | tbEffectiveVersion.Text = string.Empty; |
| | | tbExecutionMode.Text = string.Empty; |
| | | tbAuthorityInfo.Text = string.Empty; |
| | | Channels = new ObservableCollection<DeviceChannel>(); |
| | | } |
| | | |
| | |
| | | ToastHelper.Warning("没æå¯åå¸çèç¨¿çæ¬"); |
| | | return; |
| | | } |
| | | |
| | | // V3.0 §05 åå¸é¨ç¦ï¼æ§è¡ä½ç½®ç»å®æ ¡éªä¸éè¿å黿¢åå¸ |
| | | var gateErrors = _model.ValidatePublishGate(); |
| | | if (gateErrors.Count > 0) |
| | | { |
| | | var detail = string.Join("\n", gateErrors.Take(8)); |
| | | if (gateErrors.Count > 8) |
| | | { |
| | | detail += $"\n⦠å
± {gateErrors.Count} 项é误"; |
| | | } |
| | | log.Warn($"åå¸é¨ç¦æ¦æª: {string.Join("; ", gateErrors)}"); |
| | | MsgBoxHelper.Error(Window.GetWindow(this), $"åå¸é¨ç¦æ ¡éªæªéè¿ï¼\n{detail}"); |
| | | return; |
| | | } |
| | | |
| | | var hash = _model.ComputeConfigHash(); |
| | | draft.Hash = hash; |
| | | draft.Status = VersionStatus.Published; |
| | |
| | | <RowDefinition Height="Auto"/> |
| | | <RowDefinition Height="Auto"/> |
| | | <RowDefinition Height="Auto"/> |
| | | <RowDefinition Height="Auto"/> |
| | | </Grid.RowDefinitions> |
| | | |
| | | <!-- 设å¤åºæ¬ä¿¡æ¯ --> |
| | |
| | | </Grid> |
| | | </GroupBox> |
| | | |
| | | <!-- æ§è¡ä½ç½®ï¼V3.0 §05ï¼ --> |
| | | <GroupBox Grid.Row="1" Header="æ§è¡ä½ç½®" FontWeight="SemiBold" Margin="0,0,0,12"> |
| | | <Grid Margin="8"> |
| | | <Grid.ColumnDefinitions> |
| | | <ColumnDefinition Width="100"/> |
| | | <ColumnDefinition Width="*"/> |
| | | <ColumnDefinition Width="100"/> |
| | | <ColumnDefinition Width="*"/> |
| | | </Grid.ColumnDefinitions> |
| | | <Grid.RowDefinitions> |
| | | <RowDefinition Height="36"/> |
| | | <RowDefinition Height="36"/> |
| | | <RowDefinition Height="36"/> |
| | | </Grid.RowDefinitions> |
| | | |
| | | <TextBlock Grid.Row="0" Grid.Column="0" Text="æ§è¡æ¨¡å¼ *" VerticalAlignment="Center" Style="{StaticResource ListTableTextBlock}"/> |
| | | <StackPanel Grid.Row="0" Grid.Column="1" Grid.ColumnSpan="3" Orientation="Horizontal" VerticalAlignment="Center" |
| | | dp:StackPanelHelper.ChildSpace="16" Margin="4,0"> |
| | | <RadioButton x:Name="rbLocal" Content="æ¬å°ä»ªå¨ (Local ç´è¿)" GroupName="ExecMode" IsChecked="True" |
| | | Checked="ExecMode_Changed" VerticalAlignment="Center"/> |
| | | <RadioButton x:Name="rbBroker" Content="å
±äº«ä»ªå¨ (Broker 代ç)" GroupName="ExecMode" |
| | | Checked="ExecMode_Changed" VerticalAlignment="Center"/> |
| | | </StackPanel> |
| | | |
| | | <TextBlock Grid.Row="1" Grid.Column="0" Text="仲è£å *" VerticalAlignment="Center" Style="{StaticResource ListTableTextBlock}"/> |
| | | <ComboBox Grid.Row="1" Grid.Column="1" x:Name="cbAuthority" VerticalAlignment="Center" Margin="4,0" |
| | | SelectionChanged="CbAuthority_SelectionChanged"/> |
| | | |
| | | <TextBlock Grid.Row="1" Grid.Column="2" Text="访é®çç¥" VerticalAlignment="Center" Style="{StaticResource ListTableTextBlock}"/> |
| | | <TextBox Grid.Row="1" Grid.Column="3" x:Name="tbAccessPolicy" VerticalAlignment="Center" IsReadOnly="True" |
| | | Style="{StaticResource EditorTextBoxStyle}" Margin="4,0"/> |
| | | |
| | | <!-- Broker 模å¼ä¸å±å段ï¼é»è®¤éè --> |
| | | <Grid Grid.Row="2" Grid.ColumnSpan="4" x:Name="spBroker" Visibility="Collapsed"> |
| | | <Grid.ColumnDefinitions> |
| | | <ColumnDefinition Width="100"/> |
| | | <ColumnDefinition Width="*"/> |
| | | <ColumnDefinition Width="100"/> |
| | | <ColumnDefinition Width="*"/> |
| | | </Grid.ColumnDefinitions> |
| | | <Grid.RowDefinitions> |
| | | <RowDefinition Height="36"/> |
| | | <RowDefinition Height="36"/> |
| | | </Grid.RowDefinitions> |
| | | |
| | | <TextBlock Grid.Row="0" Grid.Column="0" Text="BrokerId *" VerticalAlignment="Center" Style="{StaticResource ListTableTextBlock}"/> |
| | | <ComboBox Grid.Row="0" Grid.Column="1" x:Name="cbBrokerId" VerticalAlignment="Center" Margin="4,0"/> |
| | | |
| | | <TextBlock Grid.Row="0" Grid.Column="2" Text="宿主è¿ç¨" VerticalAlignment="Center" Style="{StaticResource ListTableTextBlock}"/> |
| | | <TextBox Grid.Row="0" Grid.Column="3" x:Name="tbOwnerProcessId" VerticalAlignment="Center" IsReadOnly="True" |
| | | Style="{StaticResource EditorTextBoxStyle}" Margin="4,0" |
| | | pu:TextBoxHelper.Watermark="Broker 宿主 PIDï¼MVP å ä½å½åè¿ç¨ï¼"/> |
| | | |
| | | <TextBlock Grid.Row="1" Grid.Column="0" Text="ç©çä¼è¯é® *" VerticalAlignment="Center" Style="{StaticResource ListTableTextBlock}"/> |
| | | <ComboBox Grid.Row="1" Grid.Column="1" Grid.ColumnSpan="3" x:Name="cbSessionKey" VerticalAlignment="Center" |
| | | IsEditable="True" Margin="4,0" |
| | | pu:TextBoxHelper.Watermark="ç±ç«¯ç¹è§èåçåºå®å符串ï¼å¦ can/CAN_BUS_1/main"/> |
| | | </Grid> |
| | | </Grid> |
| | | </GroupBox> |
| | | |
| | | <!-- ééå表 --> |
| | | <GroupBox Grid.Row="1" Header="ééå表" FontWeight="SemiBold" Margin="0,0,0,12"> |
| | | <GroupBox Grid.Row="2" Header="ééå表" FontWeight="SemiBold" Margin="0,0,0,12"> |
| | | <Grid Margin="8"> |
| | | <Grid.RowDefinitions> |
| | | <RowDefinition Height="Auto"/> |
| | |
| | | </GroupBox> |
| | | |
| | | <!-- åºé¨æé® --> |
| | | <StackPanel Grid.Row="3" Orientation="Horizontal" HorizontalAlignment="Right" dp:StackPanelHelper.ChildSpace="10" Margin="0,12,0,0"> |
| | | <StackPanel Grid.Row="4" Orientation="Horizontal" HorizontalAlignment="Right" dp:StackPanelHelper.ChildSpace="10" Margin="0,12,0,0"> |
| | | <Button x:Name="saveBtn" Click="SaveBtn_Click" Content="ä¿å" |
| | | Style="{StaticResource AddBtn}" Width="90"/> |
| | | <Button x:Name="cancelBtn" Click="CancelBtn_Click" Content="åæ¶" |
| | |
| | | using Plugin.DeviceConfig.Entity; |
| | | using Plugin.DeviceConfig.Model; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Collections.ObjectModel; |
| | | using System.Linq; |
| | | using System.Windows; |
| | |
| | | private DeviceDefinition _device; |
| | | private ObservableCollection<DeviceChannel> _channels = new(); |
| | | private bool _isNew; |
| | | private bool _execModeSyncing; |
| | | |
| | | public DeviceEditModal() |
| | | { |
| | |
| | | cbTransport.ItemsSource = Enum.GetValues(typeof(TransportType)).Cast<TransportType>().ToList(); |
| | | cbTransport.SelectionChanged += CbTransport_SelectionChanged; |
| | | |
| | | // æ§è¡ä½ç½®ï¼ä»²è£å/BrokerId åéç±é
ç½®æä¸¾ |
| | | cbAuthority.ItemsSource = V3AuthorityCatalog.AuthorityIds; |
| | | cbBrokerId.ItemsSource = V3AuthorityCatalog.BrokerIds; |
| | | tbOwnerProcessId.Text = System.Diagnostics.Process.GetCurrentProcess().Id.ToString(); |
| | | |
| | | // å¡«å
æ°æ® |
| | | tbDeviceId.Text = device.DeviceId; |
| | | tbDeviceId.IsReadOnly = !_isNew; |
| | |
| | | tbDriverType.Text = device.DriverType; |
| | | cbTransport.SelectedItem = device.Transport; |
| | | tbEndpoint.Text = device.Endpoint; |
| | | |
| | | // æ§è¡ä½ç½®åæ¾ï¼æ§æ°æ® AuthorityId 为空æ¶é»è®¤æ¬æº Local å |
| | | _execModeSyncing = true; |
| | | rbLocal.IsChecked = device.ExecutionMode == ExecutionModeKind.Local; |
| | | rbBroker.IsChecked = device.ExecutionMode == ExecutionModeKind.Broker; |
| | | cbAuthority.SelectedItem = string.IsNullOrWhiteSpace(device.AuthorityId) |
| | | ? V3AuthorityCatalog.LocalAuthorityId : device.AuthorityId; |
| | | if (cbAuthority.SelectedItem == null) |
| | | { |
| | | // åéå¼ä¸å¨å½ååéæä¸¾ä¸ï¼ä¿çå±ç¤ºå¹¶è¿½å |
| | | var list = V3AuthorityCatalog.AuthorityIds.ToList(); |
| | | list.Add(device.AuthorityId); |
| | | cbAuthority.ItemsSource = list; |
| | | cbAuthority.SelectedItem = device.AuthorityId; |
| | | } |
| | | cbBrokerId.SelectedItem = device.BrokerId; |
| | | if (!string.IsNullOrWhiteSpace(device.OwnerProcessId)) |
| | | { |
| | | tbOwnerProcessId.Text = device.OwnerProcessId; |
| | | } |
| | | _execModeSyncing = false; |
| | | RefreshExecModeUi(); |
| | | RefreshSessionKeyCandidates(); |
| | | |
| | | // é»è®¤é©±å¨ç±»å建议 & ç«¯ç¹æç¤º |
| | | UpdateDriverHint(); |
| | |
| | | _channels = new ObservableCollection<DeviceChannel>(); |
| | | } |
| | | channelListView.ItemsSource = _channels; |
| | | |
| | | // éé SessionKey å·²å è½½ï¼éæ°çæä¼è¯é®åéï¼Broker 模å¼ï¼ |
| | | RefreshSessionKeyCandidates(); |
| | | |
| | | return ShowDialog(); |
| | | } |
| | |
| | | |
| | | #endregion |
| | | |
| | | #region æ§è¡ä½ç½®ï¼V3.0 §05ï¼ |
| | | |
| | | /// <summary>å½åæ¯å¦ Broker 模å¼</summary> |
| | | private bool IsBrokerMode => rbBroker.IsChecked == true; |
| | | |
| | | private void ExecMode_Changed(object sender, RoutedEventArgs e) |
| | | { |
| | | // XAML åå§åé¶æ®µ rbLocal.IsChecked=True 伿å触åï¼æ¤æ¶å
¶ä½æ§ä»¶åæ®µå°æªå建 |
| | | if (_execModeSyncing || rbBroker == null || cbAuthority == null) return; |
| | | _execModeSyncing = true; |
| | | // Broker 设å¤ç AuthorityId å³å
¶ Broker åï¼åå Local æ¶ä½¿ç¨æ¬æºé»è®¤å |
| | | if (IsBrokerMode) |
| | | { |
| | | // å½åä»ä¸º local åï¼ææªéï¼â åå°é¦ä¸ª Broker å |
| | | if (V3AuthorityCatalog.IsLocalAuthority(cbAuthority.SelectedItem as string) || cbAuthority.SelectedItem == null) |
| | | { |
| | | cbAuthority.SelectedItem = V3AuthorityCatalog.BrokerIds.FirstOrDefault() |
| | | ?? V3AuthorityCatalog.AuthorityIds.LastOrDefault(a => !V3AuthorityCatalog.IsLocalAuthority(a)); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | cbAuthority.SelectedItem = V3AuthorityCatalog.LocalAuthorityId; |
| | | } |
| | | _execModeSyncing = false; |
| | | RefreshExecModeUi(); |
| | | } |
| | | |
| | | private void CbAuthority_SelectionChanged(object sender, SelectionChangedEventArgs e) |
| | | { |
| | | if (_execModeSyncing || rbLocal == null || rbBroker == null || cbBrokerId == null) return; |
| | | var auth = cbAuthority.SelectedItem as string; |
| | | if (string.IsNullOrEmpty(auth)) return; |
| | | _execModeSyncing = true; |
| | | // éä¸ local- åâLocalï¼éä¸ Broker åâBroker 并忥 BrokerId |
| | | if (V3AuthorityCatalog.IsLocalAuthority(auth)) |
| | | { |
| | | rbLocal.IsChecked = true; |
| | | } |
| | | else |
| | | { |
| | | rbBroker.IsChecked = true; |
| | | cbBrokerId.SelectedItem = V3AuthorityCatalog.BrokerIds.Contains(auth) ? auth : cbBrokerId.SelectedItem; |
| | | } |
| | | _execModeSyncing = false; |
| | | RefreshExecModeUi(); |
| | | } |
| | | |
| | | /// <summary>æ ¹æ®æ¨¡å¼åæ¢ Broker åæ®µå¯è§æ§ä¸åªè¯»æ´¾çç访é®çç¥</summary> |
| | | private void RefreshExecModeUi() |
| | | { |
| | | spBroker.Visibility = IsBrokerMode ? Visibility.Visible : Visibility.Collapsed; |
| | | tbAccessPolicy.Text = (IsBrokerMode ? ExecutionModeKind.Broker : ExecutionModeKind.Local) |
| | | switch |
| | | { |
| | | ExecutionModeKind.Broker => "å
±äº«ä»²è£ · Broker SessionGate 代ç", |
| | | _ => "ç¬å ç´è¿ · æ¬è¿ç¨ææç©çä¼è¯" |
| | | }; |
| | | if (IsBrokerMode) |
| | | { |
| | | RefreshSessionKeyCandidates(); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// PhysicalSessionKey åéï¼ç±ç«¯ç¹è§èåçåæ»å符串ï¼V3.0 §04ï¼å°åå«åå¿
é¡»å½ä¸ä¸ºåä¸ç©çèº«ä»½ï¼ |
| | | /// </summary> |
| | | private void RefreshSessionKeyCandidates() |
| | | { |
| | | var deviceId = tbDeviceId.Text?.Trim() ?? string.Empty; |
| | | var transport = cbTransport.SelectedItem is TransportType tt ? tt : TransportType.Tcp; |
| | | var endpoint = tbEndpoint.Text?.Trim() ?? string.Empty; |
| | | |
| | | var candidates = new List<string>(); |
| | | if (transport == TransportType.Can) |
| | | { |
| | | var bus = endpoint.Split(':')[0].Trim(); |
| | | if (!string.IsNullOrEmpty(bus)) candidates.Add($"can/{bus}/main"); |
| | | } |
| | | else if (transport == TransportType.Tcp && endpoint.Contains(":")) |
| | | { |
| | | candidates.Add($"tcp/{endpoint}/main"); |
| | | } |
| | | else if (transport == TransportType.Serial) |
| | | { |
| | | var com = endpoint.Split(':')[0].Trim(); |
| | | if (!string.IsNullOrEmpty(com)) candidates.Add($"serial/{com}/main"); |
| | | } |
| | | else if (transport == TransportType.Visa) |
| | | { |
| | | candidates.Add($"visa/{deviceId}/main"); |
| | | } |
| | | else if (transport == TransportType.SDK) |
| | | { |
| | | candidates.Add($"sdk/{deviceId}/main"); |
| | | } |
| | | if (!string.IsNullOrEmpty(deviceId)) candidates.Add($"{deviceId}/main"); |
| | | |
| | | // å·²åéé SessionKey ä¹åå
¥åéï¼å»éï¼ |
| | | foreach (var key in _channels.Select(c => c.SessionKey) |
| | | .Where(k => !string.IsNullOrWhiteSpace(k)).Distinct()) |
| | | { |
| | | candidates.Add(key); |
| | | } |
| | | candidates = candidates.Distinct(StringComparer.OrdinalIgnoreCase).ToList(); |
| | | |
| | | string? current = _device?.PhysicalSessionKey; |
| | | cbSessionKey.ItemsSource = candidates; |
| | | cbSessionKey.Text = !string.IsNullOrWhiteSpace(current) ? current |
| | | : (candidates.Count > 0 ? candidates[0] : string.Empty); |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | #region ä¿å/åæ¶ |
| | | |
| | | private void SaveBtn_Click(object sender, RoutedEventArgs e) |
| | |
| | | } |
| | | } |
| | | |
| | | // æ§è¡ä½ç½®ï¼V3.0 §05ï¼æ ¡éª |
| | | var authorityId = cbAuthority.SelectedItem as string ?? string.Empty; |
| | | if (string.IsNullOrWhiteSpace(authorityId)) |
| | | { |
| | | ToastHelper.Warning("仲è£åä¸è½ä¸ºç©ºï¼è¯·ä»åéä¸éæ©"); |
| | | return; |
| | | } |
| | | string brokerId = string.Empty, sessionKey = string.Empty, ownerPid = string.Empty; |
| | | if (IsBrokerMode) |
| | | { |
| | | brokerId = cbBrokerId.SelectedItem as string ?? string.Empty; |
| | | if (string.IsNullOrWhiteSpace(brokerId)) |
| | | { |
| | | ToastHelper.Warning("å
±äº«ä»ªå¨ï¼Brokerï¼å¿
é¡»æå® BrokerId"); |
| | | return; |
| | | } |
| | | sessionKey = cbSessionKey.Text?.Trim() ?? string.Empty; |
| | | if (string.IsNullOrWhiteSpace(sessionKey)) |
| | | { |
| | | ToastHelper.Warning("å
±äº«ä»ªå¨ï¼Brokerï¼å¿
é¡»æå®ç©çä¼è¯é®"); |
| | | return; |
| | | } |
| | | ownerPid = tbOwnerProcessId.Text?.Trim() ?? string.Empty; |
| | | } |
| | | |
| | | // ä¿åè®¾å¤ |
| | | _device.DeviceId = deviceId; |
| | | _device.Kind = kind; |
| | | _device.DriverType = tbDriverType.Text?.Trim() ?? string.Empty; |
| | | _device.Transport = transport; |
| | | _device.Endpoint = endpoint; |
| | | _device.ExecutionMode = IsBrokerMode ? ExecutionModeKind.Broker : ExecutionModeKind.Local; |
| | | _device.AuthorityId = authorityId; |
| | | _device.BrokerId = brokerId; |
| | | _device.PhysicalSessionKey = sessionKey; |
| | | _device.OwnerProcessId = ownerPid; |
| | | |
| | | _model.SaveDevice(_device); |
| | | |
| | |
| | | private void CbTransport_SelectionChanged(object sender, SelectionChangedEventArgs e) |
| | | { |
| | | UpdateEndpointHint(); |
| | | if (IsBrokerMode) |
| | | { |
| | | RefreshSessionKeyCandidates(); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// V3.0 æ§è¡ä½ç½®æä¸¾ï¼Local=è¿ç¨ç¬å ç´è¿ï¼Broker=è·¨è¿ç¨å
±äº«ï¼ç± DeviceBroker 宿主代ç |
| | | /// </summary> |
| | | public enum ExecutionModeKind |
| | | { |
| | | Local, |
| | | Broker |
| | | } |
| | | |
| | | /// <summary> |
| | | /// ä¼ è¾æ¹å¼æä¸¾ |
| | | /// </summary> |
| | | public enum TransportType |
| | |
| | | private string endpoint = string.Empty; |
| | | |
| | | /// <summary> |
| | | /// æ§è¡ä½ç½®: Local / Brokerï¼V3.0 §05ï¼é»è®¤ Localï¼ |
| | | /// </summary> |
| | | [ObservableProperty] |
| | | private ExecutionModeKind executionMode = ExecutionModeKind.Local; |
| | | |
| | | /// <summary> |
| | | /// 仲è£åæ è¯ï¼å¿
å¡«ï¼åéå¼ç±é
ç½®æä¸¾ï¼åä¸ PhysicalSessionKey åªè½å½å±ä¸ä¸ªä»²è£åå®¿ä¸»ï¼ |
| | | /// </summary> |
| | | [ObservableProperty] |
| | | private string authorityId = string.Empty; |
| | | |
| | | /// <summary> |
| | | /// Broker 宿主æ è¯ï¼ä»
Broker 模å¼ï¼é¡»ä¸ä»²è£åä¸è´ï¼ |
| | | /// </summary> |
| | | [ObservableProperty] |
| | | private string brokerId = string.Empty; |
| | | |
| | | /// <summary> |
| | | /// Broker 宿主è¿ç¨å·ï¼ä»
Broker è®°å½ç¨ï¼è¿è¡æä»¥ Broker å®é
PID 为åï¼MVP å ä½å½åè¿ç¨ï¼ |
| | | /// </summary> |
| | | [ObservableProperty] |
| | | private string ownerProcessId = string.Empty; |
| | | |
| | | /// <summary> |
| | | /// ç©çä¼è¯é®ï¼ä»
Brokerï¼å°åè§èååçåºå®å符串ï¼å¦ can/CAN_BUS_1/mainï¼ |
| | | /// </summary> |
| | | [ObservableProperty] |
| | | private string physicalSessionKey = string.Empty; |
| | | |
| | | /// <summary> |
| | | /// è®¿é®æ§å¶çç¥ï¼åªè¯»æ´¾çï¼ä¸å¯æå·¥ç¼è¾ï¼V3.0 §05ï¼ |
| | | /// </summary> |
| | | public string AccessPolicy => ExecutionMode switch |
| | | { |
| | | ExecutionModeKind.Broker => "å
±äº«ä»²è£ · Broker SessionGate 代ç", |
| | | _ => "ç¬å ç´è¿ · æ¬è¿ç¨ææç©çä¼è¯" |
| | | }; |
| | | |
| | | /// <summary> |
| | | /// çæçæ¬å· |
| | | /// </summary> |
| | | [ObservableProperty] |
| | |
| | | DriverType TEXT NOT NULL, |
| | | Transport TEXT NOT NULL, |
| | | Endpoint TEXT NOT NULL, |
| | | ExecutionMode TEXT NOT NULL DEFAULT 'Local', |
| | | AuthorityId TEXT NOT NULL DEFAULT '', |
| | | BrokerId TEXT NOT NULL DEFAULT '', |
| | | OwnerProcessId TEXT NOT NULL DEFAULT '', |
| | | PhysicalSessionKey TEXT NOT NULL DEFAULT '', |
| | | EffectiveVersion TEXT NOT NULL DEFAULT '', |
| | | CreatedAt TEXT NOT NULL, |
| | | UpdatedAt TEXT NOT NULL |
| | |
| | | }; |
| | | |
| | | helper.ExecuteBatchSql(sqls); |
| | | |
| | | // V3.0 §05ï¼æ§è¡ä½ç½®å段è¿ç§»ï¼æ§åºè¡¥åï¼æ°åºå·²å¨å»ºè¡¨è¯å¥ä¸å
å«ï¼ |
| | | MigrateExecutionColumns(helper); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | throw new Exception($"åå§å设å¤é
ç½®æ°æ®åºå¤±è´¥: {ex.Message}", ex); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// V3.0ï¼æ§ç DeviceDefinition 表补å
æ§è¡ä½ç½®äºåï¼SQLite æ è¡çº§éå设ï¼éå PRAGMA æ£æ¥å ALTERï¼ |
| | | /// </summary> |
| | | private static void MigrateExecutionColumns(HMI.Core.Util.SqliteHelper helper) |
| | | { |
| | | var dt = helper.GetDataTable("PRAGMA table_info(DeviceDefinition);"); |
| | | var existing = new HashSet<string>( |
| | | dt.Rows.Cast<DataRow>().Select(r => r["name"].ToString()), StringComparer.OrdinalIgnoreCase); |
| | | |
| | | var additions = new (string Col, string Ddl)[] |
| | | { |
| | | ("ExecutionMode", "ALTER TABLE DeviceDefinition ADD COLUMN ExecutionMode TEXT NOT NULL DEFAULT 'Local';"), |
| | | ("AuthorityId", "ALTER TABLE DeviceDefinition ADD COLUMN AuthorityId TEXT NOT NULL DEFAULT '';"), |
| | | ("BrokerId", "ALTER TABLE DeviceDefinition ADD COLUMN BrokerId TEXT NOT NULL DEFAULT '';"), |
| | | ("OwnerProcessId", "ALTER TABLE DeviceDefinition ADD COLUMN OwnerProcessId TEXT NOT NULL DEFAULT '';"), |
| | | ("PhysicalSessionKey", "ALTER TABLE DeviceDefinition ADD COLUMN PhysicalSessionKey TEXT NOT NULL DEFAULT '';"), |
| | | }; |
| | | foreach (var (col, ddl) in additions) |
| | | { |
| | | if (!existing.Contains(col)) |
| | | { |
| | | helper.ExecuteSql(ddl); |
| | | } |
| | | } |
| | | } |
| | | |
| | |
| | | device.UpdatedAt = DateTime.Now; |
| | | |
| | | var sql = $@"INSERT OR REPLACE INTO DeviceDefinition |
| | | (DeviceId, Kind, DriverType, Transport, Endpoint, EffectiveVersion, CreatedAt, UpdatedAt) |
| | | (DeviceId, Kind, DriverType, Transport, Endpoint, ExecutionMode, AuthorityId, BrokerId, OwnerProcessId, PhysicalSessionKey, EffectiveVersion, CreatedAt, UpdatedAt) |
| | | VALUES ( |
| | | '{Escape(device.DeviceId)}', |
| | | '{device.Kind}', |
| | | '{Escape(device.DriverType)}', |
| | | '{device.Transport}', |
| | | '{Escape(device.Endpoint)}', |
| | | '{device.ExecutionMode}', |
| | | '{Escape(device.AuthorityId)}', |
| | | '{Escape(device.BrokerId)}', |
| | | '{Escape(device.OwnerProcessId)}', |
| | | '{Escape(device.PhysicalSessionKey)}', |
| | | '{Escape(device.EffectiveVersion)}', |
| | | '{device.CreatedAt:yyyy-MM-dd HH:mm:ss}', |
| | | '{device.UpdatedAt:yyyy-MM-dd HH:mm:ss}' |
| | |
| | | DriverType = row["DriverType"].ToString() ?? string.Empty, |
| | | Transport = Enum.TryParse<TransportType>(row["Transport"].ToString(), out var tp) ? tp : TransportType.Tcp, |
| | | Endpoint = row["Endpoint"].ToString() ?? string.Empty, |
| | | ExecutionMode = HasColumn(row.Table, "ExecutionMode") && Enum.TryParse<ExecutionModeKind>(row["ExecutionMode"].ToString(), out var em) |
| | | ? em : ExecutionModeKind.Local, |
| | | AuthorityId = HasColumn(row.Table, "AuthorityId") ? row["AuthorityId"].ToString() ?? string.Empty : string.Empty, |
| | | BrokerId = HasColumn(row.Table, "BrokerId") ? row["BrokerId"].ToString() ?? string.Empty : string.Empty, |
| | | OwnerProcessId = HasColumn(row.Table, "OwnerProcessId") ? row["OwnerProcessId"].ToString() ?? string.Empty : string.Empty, |
| | | PhysicalSessionKey = HasColumn(row.Table, "PhysicalSessionKey") ? row["PhysicalSessionKey"].ToString() ?? string.Empty : string.Empty, |
| | | EffectiveVersion = row["EffectiveVersion"].ToString() ?? string.Empty, |
| | | CreatedAt = DateTime.TryParse(row["CreatedAt"].ToString(), out var ca) ? ca : DateTime.Now, |
| | | UpdatedAt = DateTime.TryParse(row["UpdatedAt"].ToString(), out var ua) ? ua : DateTime.Now, |
| | | }); |
| | | } |
| | | return list; |
| | | } |
| | | |
| | | private static bool HasColumn(DataTable dt, string columnName) |
| | | { |
| | | return dt.Columns.Cast<DataColumn>().Any(c => c.ColumnName.Equals(columnName, StringComparison.OrdinalIgnoreCase)); |
| | | } |
| | | |
| | | #endregion |
| | |
| | | var deviceDt = helper.GetDataTable("SELECT * FROM DeviceDefinition ORDER BY DeviceId;"); |
| | | foreach (DataRow row in deviceDt.Rows) |
| | | { |
| | | sb.Append($"DEVICE:{row["DeviceId"]}|{row["Kind"]}|{row["DriverType"]}|{row["Transport"]}|{row["Endpoint"]};"); |
| | | // V3.0ï¼æ§è¡ä½ç½®å段è¿å
¥é
ç½®åå¸ï¼INV-04ï¼Broker è¿æ¥æº configHash 对账ï¼ï¼ |
| | | // OwnerProcessId å±è¿è¡æä¿¡æ¯ï¼ä¸åä¸åå¸ï¼é¿å
宿主éå¯å¯¼è´å叿¼ç§» |
| | | string execMode = HasColumn(deviceDt, "ExecutionMode") ? row["ExecutionMode"].ToString() : "Local"; |
| | | string authId = HasColumn(deviceDt, "AuthorityId") ? row["AuthorityId"].ToString() : ""; |
| | | string bkId = HasColumn(deviceDt, "BrokerId") ? row["BrokerId"].ToString() : ""; |
| | | string sessKey = HasColumn(deviceDt, "PhysicalSessionKey") ? row["PhysicalSessionKey"].ToString() : ""; |
| | | sb.Append($"DEVICE:{row["DeviceId"]}|{row["Kind"]}|{row["DriverType"]}|{row["Transport"]}|{row["Endpoint"]}|{execMode}|{authId}|{bkId}|{sessKey};"); |
| | | } |
| | | |
| | | var channelDt = helper.GetDataTable("SELECT * FROM DeviceChannel ORDER BY DeviceId, ChannelId;"); |
| | |
| | | |
| | | #endregion |
| | | |
| | | #region åå¸é¨ç¦ï¼V3.0 §05ï¼ |
| | | |
| | | /// <summary> |
| | | /// åå¸åæ ¡éªæ§è¡ä½ç½®ç»å®ï¼ä»²è£åå¿
å¡«ä¸åæ³ãBroker åä¸è´æ§ãä¼è¯å¯ä¸å®¿ä¸»ã |
| | | /// è¿åé误å表ï¼ä¸ºç©ºåå
许åå¸ã |
| | | /// </summary> |
| | | public List<string> ValidatePublishGate() |
| | | { |
| | | var errors = new List<string>(); |
| | | try |
| | | { |
| | | var devices = GetAllDevices(); |
| | | var authorityCatalog = V3AuthorityCatalog.AuthorityIds; |
| | | |
| | | // 1. éè®¾å¤æ ¡éªæ§è¡ä½ç½®å段 |
| | | foreach (var dev in devices) |
| | | { |
| | | if (string.IsNullOrWhiteSpace(dev.AuthorityId)) |
| | | { |
| | | errors.Add($"è®¾å¤ [{dev.DeviceId}] æªéæ©ä»²è£åï¼AuthorityId å¿
å¡«ï¼æ§æ°æ®è¯·éæ°ä¿åï¼"); |
| | | continue; |
| | | } |
| | | if (!authorityCatalog.Contains(dev.AuthorityId, StringComparer.OrdinalIgnoreCase)) |
| | | { |
| | | errors.Add($"è®¾å¤ [{dev.DeviceId}] 仲è£å [{dev.AuthorityId}] ä¸å¨é
ç½®æä¸¾åéä¸"); |
| | | continue; |
| | | } |
| | | |
| | | if (dev.ExecutionMode == ExecutionModeKind.Local) |
| | | { |
| | | // Local 设å¤å¿
é¡»ç±æ¬æº Local å仲è£ï¼å·²åé
ç»å¯ä¸æ§è¡è¿ç¨ï¼ |
| | | if (!V3AuthorityCatalog.IsLocalAuthority(dev.AuthorityId)) |
| | | { |
| | | errors.Add($"è®¾å¤ [{dev.DeviceId}] 为 Local ç´è¿ï¼ä»²è£ååºä¸º local- åç¼ï¼å®é
为 [{dev.AuthorityId}]"); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | if (string.IsNullOrWhiteSpace(dev.BrokerId)) |
| | | { |
| | | errors.Add($"è®¾å¤ [{dev.DeviceId}] 为 Broker å
±äº«ï¼å¿
é¡»æå® BrokerId"); |
| | | } |
| | | else if (!V3AuthorityCatalog.BrokerIds.Contains(dev.BrokerId, StringComparer.OrdinalIgnoreCase)) |
| | | { |
| | | errors.Add($"è®¾å¤ [{dev.DeviceId}] BrokerId [{dev.BrokerId}] ä¸å¨é
ç½®æä¸¾åéä¸"); |
| | | } |
| | | // BrokerId ä¸è®¾å¤åä¸è´ï¼Broker 设å¤ç AuthorityId å³å
¶ Broker å |
| | | else if (!string.Equals(dev.BrokerId, dev.AuthorityId, StringComparison.OrdinalIgnoreCase)) |
| | | { |
| | | errors.Add($"è®¾å¤ [{dev.DeviceId}] BrokerId [{dev.BrokerId}] ä¸ä»²è£å [{dev.AuthorityId}] ä¸ä¸è´"); |
| | | } |
| | | if (string.IsNullOrWhiteSpace(dev.PhysicalSessionKey)) |
| | | { |
| | | errors.Add($"è®¾å¤ [{dev.DeviceId}] 为 Broker å
±äº«ï¼å¿
é¡»æå®ç©çä¼è¯é® PhysicalSessionKey"); |
| | | } |
| | | } |
| | | } |
| | | |
| | | // 2. åä¸ç©çä¼è¯åªè½æä¸ä¸ªå®¿ä¸»ï¼ç¸å SessionKey ç设å¤å¿
é¡»å½å±åä¸ä»²è£å |
| | | var sessionGroups = devices |
| | | .Where(d => !string.IsNullOrWhiteSpace(d.PhysicalSessionKey)) |
| | | .GroupBy(d => d.PhysicalSessionKey, StringComparer.OrdinalIgnoreCase); |
| | | foreach (var grp in sessionGroups) |
| | | { |
| | | var domains = grp.Select(d => d.AuthorityId).Distinct(StringComparer.OrdinalIgnoreCase).ToList(); |
| | | if (domains.Count > 1) |
| | | { |
| | | errors.Add($"ç©çä¼è¯ [{grp.Key}] 被å¤ä¸ªä»²è£åå¼ç¨: {string.Join(", ", domains)}ï¼åä¸ä¼è¯åªè½æä¸ä¸ªå®¿ä¸»ï¼"); |
| | | } |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | throw new Exception($"åå¸é¨ç¦æ ¡éªå¤±è´¥: {ex.Message}", ex); |
| | | } |
| | | return errors; |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | #region è¾
婿¹æ³ |
| | | |
| | | /// <summary> |
| | |
| | | </ItemGroup> |
| | | |
| | | <ItemGroup> |
| | | <!-- V3AuthorityCatalog 读å宿主 appSettings åéæä¸¾ --> |
| | | <Reference Include="System.Configuration" /> |
| | | </ItemGroup> |
| | | |
| | | <ItemGroup> |
| | | <ProjectReference Include="..\HMI.Base\HMI.Base.csproj" /> |
| | | <ProjectReference Include="..\HMI.Core\HMI.Core.csproj" /> |
| | | <ProjectReference Include="..\HMI.UI\HMI.UI.csproj" /> |
| New file |
| | |
| | | using System; |
| | | using System.Configuration; |
| | | using System.Linq; |
| | | |
| | | namespace Plugin.DeviceConfig |
| | | { |
| | | /// <summary> |
| | | /// V3.0 仲è£å / Broker 宿主åéæä¸¾ã |
| | | /// åéå¼ä»å®¿ä¸»é
ç½®æä»¶ appSettings 读åï¼é®ï¼V3.AuthorityIds / V3.BrokerIdsï¼åå·åéï¼ï¼ |
| | | /// æªé
ç½®æ¶åéå
ç½®é»è®¤å¼ï¼ä¸ InfrastructureBootstrapper çæ¬å°ä»²è£å "local-main" ä¿æä¸è´ã |
| | | /// </summary> |
| | | public static class V3AuthorityCatalog |
| | | { |
| | | private const string FallbackAuthorityIds = "local-main;broker-b01"; |
| | | private const string FallbackBrokerIds = "broker-b01"; |
| | | |
| | | /// <summary>å
¨é¨åæ³ä»²è£åæ è¯ï¼Local å以 local- åç¼æ è¯ï¼Broker åå³å Broker èªèº«ï¼</summary> |
| | | public static string[] AuthorityIds => Read("V3.AuthorityIds", FallbackAuthorityIds); |
| | | |
| | | /// <summary>å
¨é¨åæ³ Broker 宿主æ è¯</summary> |
| | | public static string[] BrokerIds => Read("V3.BrokerIds", FallbackBrokerIds); |
| | | |
| | | /// <summary>æ¬æºé»è®¤ Local 仲è£åï¼åéæä¸¾ä¸ç¬¬ä¸ä¸ª local- åç¼é¡¹ï¼</summary> |
| | | public static string LocalAuthorityId => |
| | | AuthorityIds.FirstOrDefault(a => a.StartsWith("local-", StringComparison.OrdinalIgnoreCase)) |
| | | ?? AuthorityIds[0]; |
| | | |
| | | /// <summary>夿ç»å®æ è¯æ¯å¦ä¸º Local 仲è£å</summary> |
| | | public static bool IsLocalAuthority(string? authorityId) => |
| | | !string.IsNullOrWhiteSpace(authorityId) && |
| | | authorityId!.StartsWith("local-", StringComparison.OrdinalIgnoreCase); |
| | | |
| | | private static string[] Read(string key, string fallback) |
| | | { |
| | | string? raw = null; |
| | | try |
| | | { |
| | | raw = ConfigurationManager.AppSettings[key]; |
| | | } |
| | | catch |
| | | { |
| | | // å®¿ä¸»æªæä¾é
ç½®æä»¶æ¶éé»åéé»è®¤æä¸¾ |
| | | } |
| | | // net472 å¼ç¨ç¨åºéæ NotNullWhen æ æ³¨ï¼æ¾å¼åéåè§£å¼ç¨ |
| | | var value = string.IsNullOrWhiteSpace(raw) ? fallback : raw!; |
| | | return value.Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries) |
| | | .Select(s => s.Trim()) |
| | | .Where(s => s.Length > 0) |
| | | .ToArray(); |
| | | } |
| | | } |
| | | } |
| | |
| | | xmlns:d="http://schemas.microsoft.com/expression/blend/2008" |
| | | xmlns:hb="clr-namespace:HMI.Base;assembly=HMI.Base" |
| | | xmlns:ui="clr-namespace:HMI.UI;assembly=HMI.UI" |
| | | xmlns:uic="clr-namespace:HMI.UI.Converter;assembly=HMI.UI" |
| | | xmlns:pw="https://opensource.panuon.com/wpf" |
| | | xmlns:pu="https://opensource.panuon.com/wpf-ui" |
| | | xmlns:dp="clr-namespace:HMI.UI.DpUtil;assembly=HMI.UI" |
| | | xmlns:local="clr-namespace:Plugin.DeviceDebug" |
| | | xmlns:panels="clr-namespace:Plugin.DeviceDebug.Panels" |
| | | mc:Ignorable="d" |
| | | Loaded="SimpleMaskControl_Loaded" |
| | | d:DesignHeight="600" d:DesignWidth="1000"> |
| | |
| | | <Setter Property="Padding" Value="8,4"/> |
| | | <Setter Property="VerticalAlignment" Value="Center"/> |
| | | </Style> |
| | | <BooleanToVisibilityConverter x:Key="BoolToVis"/> |
| | | </ResourceDictionary> |
| | | </hb:SimpleMaskControl.Resources> |
| | | |
| | | <Grid dp:GridHelper.Space="8"> |
| | | <Grid.RowDefinitions> |
| | | <RowDefinition Height="Auto"/> |
| | | <RowDefinition Height="Auto"/> |
| | | <RowDefinition Height="Auto"/> |
| | | <RowDefinition Height="*"/> |
| | | </Grid.RowDefinitions> |
| | | |
| | | <!-- 顶鍿 颿 --> |
| | | <!-- é¡¶é¨ï¼æ é¢ + 设å¤éæ© + å å
¥/å
³é --> |
| | | <DockPanel Grid.Row="0"> |
| | | <StackPanel dp:StackPanelHelper.ChildSpace="10" DockPanel.Dock="Right" Orientation="Horizontal"> |
| | | <ComboBox x:Name="deviceSelector" Width="240" |
| | | ItemsSource="{Binding DeviceList}" |
| | | SelectedItem="{Binding SelectedDevice}" |
| | | SelectionChanged="DeviceSelector_SelectionChanged" |
| | | VerticalContentAlignment="Center" Padding="6,4"/> |
| | | <Button x:Name="addDeviceBtn" Content="å å
¥è°è¯" Width="90" Height="28" |
| | | Click="AddDeviceBtn_Click" |
| | | Background="#4CAF50" Foreground="White" BorderThickness="0" Cursor="Hand" FontWeight="SemiBold"/> |
| | | <Button x:Name="closeTabBtn" Content="å
³éå½å页" Width="100" Height="28" |
| | | Click="CloseTabBtn_Click" |
| | | Background="#FF5722" Foreground="White" BorderThickness="0" Cursor="Hand"/> |
| | | <Button Style="{StaticResource RfhBtn}" x:Name="rfhBtn" Click="RfhBtn_Click"/> |
| | | </StackPanel> |
| | | <TextBlock Style="{StaticResource TitleBox}" Text="硬件è°è¯"/> |
| | | <TextBlock Style="{StaticResource TitleBox}" Text="硬件è°è¯ï¼å¯å¤è®¾å¤å¹¶åï¼"/> |
| | | </DockPanel> |
| | | |
| | | <!-- 设å¤ä¿¡æ¯æ --> |
| | | <Border Grid.Row="1" BorderBrush="#CCCCCC" BorderThickness="1" Padding="10,6" Background="#F9F9F9" |
| | | Visibility="{Binding HasDevice, Converter={StaticResource BoolToVis}}"> |
| | | <WrapPanel dp:StackPanelHelper.ChildSpace="20"> |
| | | <StackPanel Orientation="Horizontal" dp:StackPanelHelper.ChildSpace="4"> |
| | | <TextBlock Text="设å¤ID:" FontWeight="Bold" Foreground="#555"/> |
| | | <TextBlock Text="{Binding CurrentDeviceId}" Style="{StaticResource ListTableTextBlock}"/> |
| | | </StackPanel> |
| | | <StackPanel Orientation="Horizontal" dp:StackPanelHelper.ChildSpace="4"> |
| | | <TextBlock Text="åå·:" FontWeight="Bold" Foreground="#555"/> |
| | | <TextBlock Text="{Binding CurrentDeviceKind}" Style="{StaticResource ListTableTextBlock}"/> |
| | | </StackPanel> |
| | | <StackPanel Orientation="Horizontal" dp:StackPanelHelper.ChildSpace="4"> |
| | | <TextBlock Text="è¿æ¥ç¶æ:" FontWeight="Bold" Foreground="#555"/> |
| | | <TextBlock Text="{Binding ConnectionStateText}" Foreground="{Binding ConnectionBrush}"/> |
| | | </StackPanel> |
| | | <StackPanel Orientation="Horizontal" dp:StackPanelHelper.ChildSpace="4"> |
| | | <TextBlock Text="çæ¬:" FontWeight="Bold" Foreground="#555"/> |
| | | <TextBlock Text="{Binding CurrentEffectiveVersion}" Style="{StaticResource ListTableTextBlock}"/> |
| | | </StackPanel> |
| | | <StackPanel Orientation="Horizontal" dp:StackPanelHelper.ChildSpace="4"> |
| | | <TextBlock Text="é¢çº¦ç¶æ:" FontWeight="Bold" Foreground="#555"/> |
| | | <TextBlock Text="{Binding ReservationStatusText}" Style="{StaticResource ListTableTextBlock}"/> |
| | | </StackPanel> |
| | | <StackPanel Orientation="Horizontal" dp:StackPanelHelper.ChildSpace="4"> |
| | | <TextBlock Text="ä¼è¯ç¶æ:" FontWeight="Bold" Foreground="#555"/> |
| | | <TextBlock Text="{Binding SessionStateText}" Foreground="{Binding SessionStateBrush}" FontWeight="Bold"/> |
| | | </StackPanel> |
| | | </WrapPanel> |
| | | </Border> |
| | | |
| | | <!-- æä½æé®æ --> |
| | | <StackPanel Grid.Row="2" Orientation="Horizontal" dp:StackPanelHelper.ChildSpace="10" |
| | | Visibility="{Binding HasDevice, Converter={StaticResource BoolToVis}}"> |
| | | <Button x:Name="enterMaintenanceBtn" Content="è¿å
¥ç»´æ¤æ§å¶" Padding="14,6" |
| | | IsEnabled="{Binding CanEnterMaintenance}" |
| | | Click="EnterMaintenanceBtn_Click" |
| | | Background="#2196F3" Foreground="White" BorderThickness="0" Cursor="Hand"/> |
| | | <Button x:Name="exitMaintenanceBtn" Content="éåºç»´æ¤" Padding="14,6" |
| | | IsEnabled="{Binding CanExitMaintenance}" |
| | | Click="ExitMaintenanceBtn_Click" |
| | | Background="#FF5722" Foreground="White" BorderThickness="0" Cursor="Hand"/> |
| | | </StackPanel> |
| | | |
| | | <!-- 主ä½åºå --> |
| | | <Grid Grid.Row="3"> |
| | | <Grid.ColumnDefinitions> |
| | | <ColumnDefinition Width="*"/> |
| | | <ColumnDefinition Width="350"/> |
| | | </Grid.ColumnDefinitions> |
| | | |
| | | <!-- 左侧颿¿å®¹å¨ --> |
| | | <Border Grid.Column="0" BorderBrush="#DDDDDD" BorderThickness="1" Margin="0,0,8,0"> |
| | | <ContentControl x:Name="panelContainer"> |
| | | <TextBlock Text="è¯·éæ©è®¾å¤" HorizontalAlignment="Center" VerticalAlignment="Center" |
| | | FontSize="16" Foreground="#999"/> |
| | | </ContentControl> |
| | | </Border> |
| | | |
| | | <!-- å³ä¾§æä½æ¥å¿ --> |
| | | <Border Grid.Column="1" BorderBrush="#DDDDDD" BorderThickness="1"> |
| | | <Grid> |
| | | <Grid.RowDefinitions> |
| | | <RowDefinition Height="Auto"/> |
| | | <RowDefinition Height="*"/> |
| | | </Grid.RowDefinitions> |
| | | <Border Grid.Row="0" Background="#F0F0F0" Padding="8,6"> |
| | | <TextBlock Text="æä½æ¥å¿" FontWeight="Bold" FontSize="14"/> |
| | | </Border> |
| | | <ListView Grid.Row="1" x:Name="operationLogList" |
| | | ItemsSource="{Binding OperationLogs}" |
| | | Style="{StaticResource DefaultListTable}" |
| | | VirtualizingPanel.IsVirtualizing="True" |
| | | VirtualizingPanel.VirtualizationMode="Standard"> |
| | | <ListView.View> |
| | | <GridView AllowsColumnReorder="False"> |
| | | <GridViewColumn Width="60" Header="ç±»å"> |
| | | <GridViewColumn.CellTemplate> |
| | | <DataTemplate> |
| | | <Border Style="{StaticResource CellBorder}"> |
| | | <TextBlock Style="{StaticResource ListTableTextBlock}" |
| | | Text="{Binding CommandType}"/> |
| | | </Border> |
| | | </DataTemplate> |
| | | </GridViewColumn.CellTemplate> |
| | | </GridViewColumn> |
| | | <GridViewColumn Width="120" Header="åæ°"> |
| | | <GridViewColumn.CellTemplate> |
| | | <DataTemplate> |
| | | <Border Style="{StaticResource CellBorder}"> |
| | | <TextBlock Style="{StaticResource ListTableTextBlock}" |
| | | Text="{Binding Parameters}" TextTrimming="CharacterEllipsis" |
| | | ToolTip="{Binding Parameters}"/> |
| | | </Border> |
| | | </DataTemplate> |
| | | </GridViewColumn.CellTemplate> |
| | | </GridViewColumn> |
| | | <GridViewColumn Width="60" Header="ç»æ"> |
| | | <GridViewColumn.CellTemplate> |
| | | <DataTemplate> |
| | | <Border Style="{StaticResource CellBorder}"> |
| | | <TextBlock Style="{StaticResource ListTableTextBlock}" |
| | | Text="{Binding Outcome}"/> |
| | | </Border> |
| | | </DataTemplate> |
| | | </GridViewColumn.CellTemplate> |
| | | </GridViewColumn> |
| | | <GridViewColumn Width="100" Header="æ¶é´"> |
| | | <GridViewColumn.CellTemplate> |
| | | <DataTemplate> |
| | | <Border Style="{StaticResource CellBorder}"> |
| | | <TextBlock Style="{StaticResource ListTableTextBlock}" |
| | | Text="{Binding Timestamp, StringFormat=HH:mm:ss}"/> |
| | | </Border> |
| | | </DataTemplate> |
| | | </GridViewColumn.CellTemplate> |
| | | </GridViewColumn> |
| | | </GridView> |
| | | </ListView.View> |
| | | </ListView> |
| | | </Grid> |
| | | </Border> |
| | | </Grid> |
| | | <!-- å¤è®¾å¤æ ç¾åº --> |
| | | <TabControl Grid.Row="1" x:Name="debugTabs" Background="White" BorderThickness="0"/> |
| | | </Grid> |
| | | </hb:SimpleMaskControl> |
| | |
| | | using HMI.Core.Util; |
| | | using HMI.UI.Util; |
| | | using log4net; |
| | | using Plugin.DeviceDebug.Entity; |
| | | using Plugin.DeviceDebug.Model; |
| | | using Plugin.DeviceDebug.Panels; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Collections.ObjectModel; |
| | | using System.IO; |
| | | using System.Linq; |
| | | using System.Threading; |
| | | using System.Windows; |
| | | using System.Windows.Controls; |
| | | using System.Windows.Media; |
| | | |
| | | namespace Plugin.DeviceDebug |
| | | { |
| | | /// <summary> |
| | | /// DeviceDebug.xaml ç交äºé»è¾ |
| | | /// 硬件è°è¯æä»¶ï¼å£³ï¼ï¼è£
é
å¹¶ææå
±äº«åºç¡è®¾æ½ï¼ä¼è¯ç®¡çå¨/è®¾å¤æå¡/é
ç½®åºè·¯å¾ï¼ï¼ |
| | | /// 以 TabControl æ¿è½½å¤ä¸ª <see cref="DeviceDebugTab"/>ï¼æ¯æåæ¶è°è¯å¤ä¸ªè®¾å¤ï¼ |
| | | /// æ¯ä¸ª Tab æ¥æç¬ç«ä¼è¯ä¸ç»´æ¤ç§çº¦ã设å¤ä¸æä»
ååºå°æªæå¼ç设å¤ã |
| | | /// </summary> |
| | | [ObservableObject] |
| | | public partial class DeviceDebug : SimpleMaskControl |
| | | { |
| | | private static readonly ILog _log = LogManager.GetLogger(typeof(DeviceDebug)); |
| | | private static readonly ILog log = LogManager.GetLogger(typeof(DeviceDebug)); |
| | | private DeviceDebugModel _debugModel; |
| | | private DebugSessionManager _sessionManager; |
| | | |
| | | // åºç¡è®¾æ½å±æå¡ |
| | | private IDeviceManager? _deviceManager; |
| | | private IDeviceService? _deviceService; |
| | | private IResourceManager? _resourceManager; |
| | | private IDeviceManager _deviceManager; |
| | | private IDeviceService _deviceService; |
| | | private IResourceManager _resourceManager; |
| | | |
| | | // 设å¤é
ç½®æ°æ®åºè·¯å¾ï¼ä¸ DeviceConfig æä»¶å
±äº«ï¼ |
| | | private string _deviceConfigDbPath; |
| | | |
| | | // å
¨é设å¤ï¼"id [kind]"ï¼ä¸å·²æå¼æ ç¾æ å°ï¼deviceId â TabItemï¼ |
| | | private readonly List<string> _allDevices = new(); |
| | | private readonly Dictionary<string, TabItem> _openTabs = new(StringComparer.OrdinalIgnoreCase); |
| | | |
| | | [ObservableProperty] private ObservableCollection<string> _deviceList = new(); |
| | | [ObservableProperty] private string _selectedDevice; |
| | | [ObservableProperty] private DebugSession _currentSession; |
| | | [ObservableProperty] private ObservableCollection<DebugOperation> _operationLogs = new(); |
| | | [ObservableProperty] private string _connectionStateText = "æªè¿æ¥"; |
| | | [ObservableProperty] private string _sessionStateText = ""; |
| | | [ObservableProperty] private string _reservationStatusText = ""; |
| | | [ObservableProperty] private string _currentDeviceId = ""; |
| | | [ObservableProperty] private string _currentDeviceKind = ""; |
| | | [ObservableProperty] private string _currentEffectiveVersion = ""; |
| | | [ObservableProperty] private string _currentEndpoint = ""; |
| | | [ObservableProperty] private string _currentDriverType = ""; |
| | | [ObservableProperty] private Brush _connectionBrush = new SolidColorBrush(Colors.Gray); |
| | | [ObservableProperty] private Brush _sessionStateBrush = new SolidColorBrush(Colors.Gray); |
| | | [ObservableProperty] private bool _canEnterMaintenance; |
| | | [ObservableProperty] private bool _canExitMaintenance; |
| | | [ObservableProperty] private bool _hasDevice; |
| | | |
| | | // ç¼åå½åéä¸ç设å¤ç±»å |
| | | private string _currentDeviceKindStr; |
| | | |
| | | public DeviceDebug() |
| | | { |
| | |
| | | InitializeComponent(); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 强å¶å·æ°è®¾å¤å表ï¼ä¾éææµè¯é¢ç½®è®¾å¤åè°ç¨ï¼ |
| | | /// </summary> |
| | | public void ForceRefreshForTest() |
| | | { |
| | | try { LoadDeviceList(); } |
| | | catch (Exception ex) { _log.Error("ForceRefreshForTest Error.", ex); } |
| | | catch (Exception ex) { log.Error("ForceRefreshForTest Error.", ex); } |
| | | } |
| | | |
| | | public override void InitFinish() |
| | |
| | | base.InitFinish(); |
| | | try |
| | | { |
| | | // åå§åè°è¯æ°æ®åº |
| | | _debugModel = new DeviceDebugModel(); |
| | | string dbPath = Path.Combine(BaseFolder, "debug.db"); |
| | | _debugModel.InitDatabase(dbPath); |
| | | |
| | | // ä» UtilContainer è·ååºç¡è®¾æ½æå¡ |
| | | var container = new UtilContainer(); |
| | | _deviceManager = container.GetUtil<IDeviceManager>("DeviceManager"); |
| | | _deviceService = container.GetUtil<IDeviceService>("DeviceService"); |
| | | _resourceManager = container.GetUtil<IResourceManager>("ResourceManager"); |
| | | |
| | | // å建ä¼è¯ç®¡çå¨ï¼ä¼ å
¥ ResourceManagerï¼ |
| | | _sessionManager = new DebugSessionManager(_debugModel, _resourceManager); |
| | | |
| | | // 设å¤é
ç½®æ°æ®åºè·¯å¾ï¼ä¸ DeviceConfig å
±äº«ï¼ |
| | | _deviceConfigDbPath = Path.Combine(BaseFolder, "data.db"); |
| | | |
| | | log.Info("硬件è°è¯æ¨¡ååå§å宿"); |
| | |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å 载设å¤å表 |
| | | /// </summary> |
| | | private void SimpleMaskControl_Loaded(object sender, RoutedEventArgs e) |
| | | { |
| | | LoadDeviceList(); |
| | | Loaded -= SimpleMaskControl_Loaded; |
| | | } |
| | | |
| | | private void RfhBtn_Click(object sender, RoutedEventArgs e) => LoadDeviceList(); |
| | | |
| | | private void LoadDeviceList() |
| | | { |
| | | try |
| | |
| | | var sqliteHelper = new SqliteHelper(_deviceConfigDbPath); |
| | | var dt = sqliteHelper.GetDataTable("SELECT DeviceId, Kind FROM DeviceDefinition ORDER BY DeviceId"); |
| | | |
| | | var list = new ObservableCollection<string>(); |
| | | _allDevices.Clear(); |
| | | foreach (System.Data.DataRow row in dt.Rows) |
| | | { |
| | | string deviceId = row["DeviceId"].ToString(); |
| | | string kind = row["Kind"].ToString(); |
| | | list.Add($"{deviceId} [{kind}]"); |
| | | } |
| | | _allDevices.Add($"{row["DeviceId"]} [{row["Kind"]}]"); |
| | | |
| | | DeviceList = list; |
| | | log.Info($"å 载设å¤åè¡¨å®æï¼å
± {list.Count} 个设å¤"); |
| | | RefreshAvailableList(); |
| | | log.Info($"å 载设å¤åè¡¨å®æï¼å
± {_allDevices.Count} 个设å¤"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è§£æè®¾å¤éæ©å符串ï¼è·å DeviceId |
| | | /// </summary> |
| | | private string ParseDeviceId(string selection) |
| | | /// <summary>䏿ä»
ååºæªæå¼ç设å¤ï¼ä¸ä¼ä¸è®¾å¤ï¼ã</summary> |
| | | private void RefreshAvailableList() |
| | | { |
| | | var avail = _allDevices |
| | | .Where(d => !_openTabs.ContainsKey(ParseDeviceId(d))) |
| | | .ToList(); |
| | | DeviceList = new ObservableCollection<string>(avail); |
| | | } |
| | | |
| | | private static string ParseDeviceId(string selection) |
| | | { |
| | | if (string.IsNullOrEmpty(selection)) return string.Empty; |
| | | int idx = selection.IndexOf(" ["); |
| | | return idx > 0 ? selection.Substring(0, idx) : selection; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è§£æè®¾å¤éæ©å符串ï¼è·å Kind |
| | | /// </summary> |
| | | private string ParseDeviceKind(string selection) |
| | | private static string ParseDeviceKind(string selection) |
| | | { |
| | | if (string.IsNullOrEmpty(selection)) return string.Empty; |
| | | int start = selection.IndexOf(" ["); |
| | |
| | | return string.Empty; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å 载设å¤è¯¦ç»ä¿¡æ¯ |
| | | /// </summary> |
| | | private void LoadDeviceInfo(string deviceId) |
| | | { |
| | | try |
| | | { |
| | | if (!File.Exists(_deviceConfigDbPath)) return; |
| | | |
| | | var sqliteHelper = new SqliteHelper(_deviceConfigDbPath); |
| | | var dt = sqliteHelper.GetDataTable( |
| | | $"SELECT DeviceId, Kind, EffectiveVersion, Endpoint, DriverType FROM DeviceDefinition WHERE DeviceId = '{deviceId}'"); |
| | | |
| | | if (dt.Rows.Count > 0) |
| | | { |
| | | var row = dt.Rows[0]; |
| | | CurrentDeviceId = row["DeviceId"].ToString(); |
| | | CurrentDeviceKind = row["Kind"].ToString(); |
| | | CurrentEffectiveVersion = row["EffectiveVersion"]?.ToString() ?? ""; |
| | | CurrentEndpoint = row["Endpoint"]?.ToString() ?? ""; |
| | | CurrentDriverType = row["DriverType"]?.ToString() ?? ""; |
| | | |
| | | // ç¼å设å¤ç±»å |
| | | _currentDeviceKindStr = CurrentDeviceKind; |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"å 载设å¤ä¿¡æ¯å¤±è´¥: {deviceId}", ex); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// éæ©è®¾å¤æ¶ï¼æå¼ä¼è¯ï¼ReadOnlyï¼ï¼å 载对åºé¢æ¿ |
| | | /// </summary> |
| | | private void OnDeviceSelected() |
| | | private void AddDeviceBtn_Click(object sender, RoutedEventArgs e) |
| | | { |
| | | try |
| | | { |
| | | if (string.IsNullOrEmpty(SelectedDevice)) |
| | | { |
| | | HasDevice = false; |
| | | panelContainer.Content = new TextBlock |
| | | { |
| | | Text = "è¯·éæ©è®¾å¤", |
| | | HorizontalAlignment = HorizontalAlignment.Center, |
| | | VerticalAlignment = VerticalAlignment.Center, |
| | | FontSize = 16, |
| | | Foreground = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#999")) |
| | | }; |
| | | ToastHelper.Warning("请å
å¨è®¾å¤ä¸æä¸éæ©è®¾å¤"); |
| | | return; |
| | | } |
| | | |
| | | string deviceId = ParseDeviceId(SelectedDevice); |
| | | string kind = ParseDeviceKind(SelectedDevice); |
| | | |
| | | // å 载设å¤è¯¦ç»ä¿¡æ¯ |
| | | LoadDeviceInfo(deviceId); |
| | | |
| | | HasDevice = true; |
| | | |
| | | // æå¼ä¼è¯ï¼ReadOnlyï¼ |
| | | CurrentSession = _sessionManager.OpenSession(deviceId, "", "operator", CurrentEffectiveVersion); |
| | | |
| | | // éè¿ DeviceManager è¿æ¥è®¾å¤ |
| | | if (_deviceManager != null) |
| | | // å·²æå¼åèç¦å
¶ Tabï¼é²å¾¡æ§ï¼ä¸ææ¬å·²è¿æ»¤ï¼ |
| | | if (_openTabs.TryGetValue(deviceId, out var existing)) |
| | | { |
| | | try |
| | | { |
| | | _deviceManager.ConnectAsync(deviceId, CancellationToken.None) |
| | | .GetAwaiter().GetResult(); |
| | | ConnectionStateText = "å·²è¿æ¥"; |
| | | ConnectionBrush = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#4CAF50")); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Warn($"éè¿ DeviceManager è¿æ¥è®¾å¤å¤±è´¥: {ex.Message}"); |
| | | ConnectionStateText = "è¿æ¥å¤±è´¥"; |
| | | ConnectionBrush = new SolidColorBrush(Colors.OrangeRed); |
| | | } |
| | | } |
| | | |
| | | // å è½½æä½æ¥å¿ |
| | | LoadOperationLogs(); |
| | | |
| | | // æ´æ°æé®ç¶æ |
| | | UpdateButtonStates(); |
| | | |
| | | // å 载对åºé¢æ¿ |
| | | LoadPanel(kind); |
| | | |
| | | log.Info($"å·²éæ©è®¾å¤: {deviceId}, ç±»å: {kind}"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error("éæ©è®¾å¤å¤±è´¥", ex); |
| | | ToastHelper.Error($"éæ©è®¾å¤å¤±è´¥: {ex.Message}"); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®è®¾å¤ç±»åå 载对åºçè°è¯é¢æ¿ |
| | | /// </summary> |
| | | private void LoadPanel(string deviceKind) |
| | | { |
| | | try |
| | | { |
| | | UIElement panel = null; |
| | | |
| | | switch (deviceKind) |
| | | { |
| | | case "PowerSupply": |
| | | var powerPanel = new PowerSupplyDebugPanel(); |
| | | powerPanel.IsMaintenanceMode = CurrentSession?.State == DebugSessionState.MaintenanceActive; |
| | | powerPanel.OnCommandExecute += Panel_OnCommandExecute; |
| | | panel = powerPanel; |
| | | break; |
| | | case "CanDevice": |
| | | var canPanel = new CanDebugPanel |
| | | { |
| | | DeviceId = CurrentDeviceId, |
| | | InitialBusName = ParseCanBusName(CurrentEndpoint), |
| | | InitialNodeIndex = ParseCanNodeIndex(CurrentEndpoint), |
| | | AutoConnectOnLoad = true |
| | | }; |
| | | canPanel.IsMaintenanceMode = CurrentSession?.State == DebugSessionState.MaintenanceActive; |
| | | canPanel.OnCommandExecute += Panel_OnCommandExecute; |
| | | panel = canPanel; |
| | | break; |
| | | case "PlcDevice": |
| | | var plcPanel = new PlcDebugPanel(); |
| | | plcPanel.IsMaintenanceMode = CurrentSession?.State == DebugSessionState.MaintenanceActive; |
| | | plcPanel.OnCommandExecute += Panel_OnCommandExecute; |
| | | panel = plcPanel; |
| | | break; |
| | | default: |
| | | panel = new TextBlock |
| | | { |
| | | Text = $"䏿¯æç设å¤ç±»å: {deviceKind}", |
| | | HorizontalAlignment = HorizontalAlignment.Center, |
| | | VerticalAlignment = VerticalAlignment.Center, |
| | | FontSize = 14, |
| | | Foreground = new SolidColorBrush(Colors.OrangeRed) |
| | | }; |
| | | break; |
| | | } |
| | | |
| | | panelContainer.Content = panel; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"å è½½è°è¯é¢æ¿å¤±è´¥: {deviceKind}", ex); |
| | | ToastHelper.Error($"å è½½é¢æ¿å¤±è´¥: {ex.Message}"); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 颿¿å½ä»¤æ§è¡äºä»¶å¤ç |
| | | /// </summary> |
| | | private void Panel_OnCommandExecute(object sender, DebugCommand command) |
| | | { |
| | | try |
| | | { |
| | | if (CurrentSession == null) |
| | | { |
| | | ToastHelper.Warning("请å
éæ©è®¾å¤"); |
| | | return; |
| | | } |
| | | |
| | | // éªè¯å½ä»¤æé |
| | | if (!_sessionManager.ValidateCommand(CurrentSession.SessionId, command)) |
| | | { |
| | | ToastHelper.Warning("å½åä¼è¯ç¶æä¸å
许æ§è¡æ¤æä½ï¼è¯·å
è¿å
¥ç»´æ¤æ¨¡å¼"); |
| | | return; |
| | | } |
| | | |
| | | // éè¿ DeviceService æ§è¡å®é
å½ä»¤ |
| | | if (_deviceService != null) |
| | | { |
| | | ExecuteViaDeviceService(command); |
| | | } |
| | | else |
| | | { |
| | | // é级模å¼ï¼åºç¡è®¾æ½æªåå§åæ¶ä¿çåæè¡ä¸º |
| | | log.Warn("DeviceService æªåå§åï¼ä½¿ç¨é级模å¼è®°å½å½ä»¤"); |
| | | ExecuteFallback(command); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"æ§è¡å½ä»¤å¤±è´¥: {command.CommandType}", ex); |
| | | ToastHelper.Error($"å½ä»¤æ§è¡å¤±è´¥: {ex.Message}"); |
| | | |
| | | // è®°å½å¤±è´¥æä½ |
| | | var operation = new DebugOperation |
| | | { |
| | | SessionId = CurrentSession?.SessionId ?? "", |
| | | CommandType = command.CommandType, |
| | | Parameters = SerializeParameters(command), |
| | | Outcome = "Failed", |
| | | ErrorMessage = ex.Message, |
| | | Timestamp = DateTime.Now |
| | | }; |
| | | _debugModel.RecordOperation(operation); |
| | | OperationLogs.Insert(0, operation); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// éè¿ DeviceService æ§è¡è®¾å¤å½ä»¤ |
| | | /// </summary> |
| | | private void ExecuteViaDeviceService(DebugCommand command) |
| | | { |
| | | try |
| | | { |
| | | var ownerToken = new ResourceOwnerToken( |
| | | OwnerType.Maintenance, |
| | | CurrentSession.SessionId); |
| | | |
| | | var deviceCommand = BuildDeviceCommand(command); |
| | | |
| | | var result = _deviceService.ExecuteCommandAsync( |
| | | command.DeviceId, |
| | | deviceCommand, |
| | | ownerToken, |
| | | CancellationToken.None).GetAwaiter().GetResult(); |
| | | |
| | | var operation = new DebugOperation |
| | | { |
| | | SessionId = CurrentSession.SessionId, |
| | | CommandType = command.CommandType, |
| | | Parameters = SerializeParameters(command), |
| | | Outcome = result.Success ? "Success" : "Failed", |
| | | DeviceReadback = result.Readback ?? "", |
| | | ErrorCode = result.ErrorCode ?? "", |
| | | ErrorMessage = result.ErrorMessage ?? "", |
| | | Timestamp = DateTime.Now |
| | | }; |
| | | |
| | | _debugModel.RecordOperation(operation); |
| | | OperationLogs.Insert(0, operation); |
| | | |
| | | if (result.Success) |
| | | ToastHelper.Success($"å½ä»¤ {command.CommandType} æ§è¡æå"); |
| | | else |
| | | ToastHelper.Warning($"å½ä»¤æ§è¡å¤±è´¥: {result.ErrorMessage}"); |
| | | |
| | | log.Info($"æ§è¡å½ä»¤: {command.CommandType}, 设å¤: {command.DeviceId}, ç»æ: {(result.Success ? "æå" : "失败")}"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"DeviceService æ§è¡å½ä»¤å¤±è´¥: {ex.Message}", ex); |
| | | ToastHelper.Error($"设å¤é信失败: {ex.Message}"); |
| | | |
| | | var operation = new DebugOperation |
| | | { |
| | | SessionId = CurrentSession.SessionId, |
| | | CommandType = command.CommandType, |
| | | Parameters = SerializeParameters(command), |
| | | Outcome = "Failed", |
| | | ErrorMessage = ex.Message, |
| | | Timestamp = DateTime.Now |
| | | }; |
| | | _debugModel.RecordOperation(operation); |
| | | OperationLogs.Insert(0, operation); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// é级模å¼ï¼æ DeviceService æ¶çåå¤å¤ç |
| | | /// </summary> |
| | | private void ExecuteFallback(DebugCommand command) |
| | | { |
| | | var operation = new DebugOperation |
| | | { |
| | | SessionId = CurrentSession.SessionId, |
| | | CommandType = command.CommandType, |
| | | Parameters = SerializeParameters(command), |
| | | Outcome = "Success", |
| | | Timestamp = DateTime.Now |
| | | }; |
| | | |
| | | _debugModel.RecordOperation(operation); |
| | | OperationLogs.Insert(0, operation); |
| | | |
| | | ToastHelper.Success($"å½ä»¤ {command.CommandType} å·²åéï¼é级模å¼ï¼"); |
| | | log.Info($"[é级模å¼] æ§è¡å½ä»¤: {command.CommandType}, 设å¤: {command.DeviceId}"); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®å½ä»¤ç±»åæå»ºå®é
设å¤å½ä»¤å符串 |
| | | /// </summary> |
| | | private string BuildDeviceCommand(DebugCommand command) |
| | | { |
| | | if (command is PowerSetCommand psc) |
| | | { |
| | | return $"VOLT {psc.Voltage};CURR {psc.CurrentLimit};OUTP {(psc.Output ? "ON" : "OFF")}"; |
| | | } |
| | | else if (command is PowerMeasureCommand) |
| | | { |
| | | return "MEAS:ALL?"; |
| | | } |
| | | else if (command is CanSendCommand csc) |
| | | { |
| | | return $"CAN:SEND {csc.Frame}"; |
| | | } |
| | | else if (command is PlcWriteCommand pwc) |
| | | { |
| | | return $"WRITE:{pwc.IoAddress}:{(pwc.Value ? "TRUE" : "FALSE")}"; |
| | | } |
| | | return command.CommandType; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// åºååå½ä»¤åæ°ä¸ºJSONå符串 |
| | | /// </summary> |
| | | private string SerializeParameters(DebugCommand command) |
| | | { |
| | | try |
| | | { |
| | | switch (command) |
| | | { |
| | | case PowerSetCommand psc: |
| | | return $"{{Voltage:{psc.Voltage},CurrentLimit:{psc.CurrentLimit},Output:{psc.Output}}}"; |
| | | case PowerMeasureCommand _: |
| | | return "{}"; |
| | | case CanSendCommand csc: |
| | | return $"{{Frame:{csc.Frame},Data:{BitConverter.ToString(csc.Data)}}}"; |
| | | case PlcWriteCommand pwc: |
| | | return $"{{IoAddress:{pwc.IoAddress},Value:{pwc.Value}}}"; |
| | | default: |
| | | return "{}"; |
| | | } |
| | | } |
| | | catch |
| | | { |
| | | return "{}"; |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å è½½æä½æ¥å¿ |
| | | /// </summary> |
| | | private void LoadOperationLogs() |
| | | { |
| | | try |
| | | { |
| | | if (CurrentSession == null) return; |
| | | |
| | | var ops = _debugModel.GetOperationsBySession(CurrentSession.SessionId); |
| | | OperationLogs = new ObservableCollection<DebugOperation>(ops.Take(100)); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error("å è½½æä½æ¥å¿å¤±è´¥", ex); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ´æ°æé®å¯ç¨ç¶æ |
| | | /// </summary> |
| | | private void UpdateButtonStates() |
| | | { |
| | | if (CurrentSession == null) |
| | | { |
| | | CanEnterMaintenance = false; |
| | | CanExitMaintenance = false; |
| | | SessionStateText = ""; |
| | | return; |
| | | } |
| | | |
| | | var state = CurrentSession.State; |
| | | CanEnterMaintenance = state == DebugSessionState.ReadOnly; |
| | | CanExitMaintenance = state == DebugSessionState.MaintenanceActive; |
| | | |
| | | // æ´æ°ä¼è¯ç¶æææ¬åé¢è² |
| | | SessionStateText = state.ToString(); |
| | | SessionStateBrush = state switch |
| | | { |
| | | DebugSessionState.ReadOnly => new SolidColorBrush((Color)ColorConverter.ConvertFromString("#2196F3")), |
| | | DebugSessionState.MaintenanceActive => new SolidColorBrush((Color)ColorConverter.ConvertFromString("#4CAF50")), |
| | | DebugSessionState.Faulted => new SolidColorBrush(Colors.Red), |
| | | DebugSessionState.RecoveryRequired => new SolidColorBrush(Colors.Orange), |
| | | _ => new SolidColorBrush(Colors.Gray) |
| | | }; |
| | | |
| | | // æ´æ°é¢æ¿çç»´æ¤æ¨¡å¼ |
| | | if (panelContainer.Content is PowerSupplyDebugPanel powerPanel) |
| | | powerPanel.IsMaintenanceMode = state == DebugSessionState.MaintenanceActive; |
| | | else if (panelContainer.Content is CanDebugPanel canPanel) |
| | | canPanel.IsMaintenanceMode = state == DebugSessionState.MaintenanceActive; |
| | | else if (panelContainer.Content is PlcDebugPanel plcPanel) |
| | | plcPanel.IsMaintenanceMode = state == DebugSessionState.MaintenanceActive; |
| | | } |
| | | |
| | | #region äºä»¶å¤ç |
| | | |
| | | private void SimpleMaskControl_Loaded(object sender, RoutedEventArgs e) |
| | | { |
| | | LoadDeviceList(); |
| | | Loaded -= SimpleMaskControl_Loaded; |
| | | } |
| | | |
| | | private void DeviceSelector_SelectionChanged(object sender, SelectionChangedEventArgs e) |
| | | { |
| | | OnDeviceSelected(); |
| | | } |
| | | |
| | | private void RfhBtn_Click(object sender, RoutedEventArgs e) |
| | | { |
| | | LoadDeviceList(); |
| | | } |
| | | |
| | | private void EnterMaintenanceBtn_Click(object sender, RoutedEventArgs e) |
| | | { |
| | | try |
| | | { |
| | | if (CurrentSession == null) return; |
| | | |
| | | // 请æ±ç»´æ¤æ¨¡å¼ |
| | | if (_sessionManager.RequestMaintenance(CurrentSession.SessionId)) |
| | | { |
| | | // æ¿æ´»ç»´æ¤æ¨¡å¼ |
| | | _sessionManager.ActivateMaintenance(CurrentSession.SessionId); |
| | | UpdateButtonStates(); |
| | | |
| | | // éæ°å è½½é¢æ¿ä»¥æ´æ°IsMaintenanceMode |
| | | LoadPanel(CurrentDeviceKind); |
| | | |
| | | ToastHelper.Success("å·²è¿å
¥ç»´æ¤æ§å¶æ¨¡å¼"); |
| | | log.Info($"ä¼è¯ {CurrentSession.SessionId} è¿å
¥ç»´æ¤æ¨¡å¼"); |
| | | } |
| | | else |
| | | { |
| | | ToastHelper.Warning("æ æ³è¿å
¥ç»´æ¤æ¨¡å¼ï¼è¯·æ£æ¥è®¾å¤ç¶æ"); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error("è¿å
¥ç»´æ¤æ¨¡å¼å¤±è´¥", ex); |
| | | ToastHelper.Error($"è¿å
¥ç»´æ¤æ¨¡å¼å¤±è´¥: {ex.Message}"); |
| | | } |
| | | } |
| | | |
| | | private void ExitMaintenanceBtn_Click(object sender, RoutedEventArgs e) |
| | | { |
| | | try |
| | | { |
| | | if (CurrentSession == null) return; |
| | | |
| | | if (MsgBoxHelper.WarnMessage(Window.GetWindow(this), "ç¡®å®è¦éåºç»´æ¤æ¨¡å¼åï¼") == MessageBoxResult.OK) |
| | | { |
| | | _sessionManager.CloseSession(CurrentSession.SessionId); |
| | | CurrentSession = null; |
| | | UpdateButtonStates(); |
| | | |
| | | // æ¸
ç©ºé¢æ¿ |
| | | panelContainer.Content = new TextBlock |
| | | { |
| | | Text = "è¯·éæ©è®¾å¤", |
| | | HorizontalAlignment = HorizontalAlignment.Center, |
| | | VerticalAlignment = VerticalAlignment.Center, |
| | | FontSize = 16, |
| | | Foreground = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#999")) |
| | | }; |
| | | |
| | | HasDevice = false; |
| | | debugTabs.SelectedItem = existing; |
| | | SelectedDevice = null; |
| | | |
| | | ToastHelper.Success("å·²éåºç»´æ¤æ¨¡å¼"); |
| | | log.Info("å·²éåºç»´æ¤æ¨¡å¼"); |
| | | return; |
| | | } |
| | | |
| | | var tabContent = new DeviceDebugTab(); |
| | | tabContent.Initialize(_debugModel, _sessionManager, _deviceManager, _deviceService, |
| | | _deviceConfigDbPath, deviceId, kind); |
| | | |
| | | var tab = new TabItem { Header = deviceId, Content = tabContent, Tag = deviceId }; |
| | | debugTabs.Items.Add(tab); |
| | | debugTabs.SelectedItem = tab; |
| | | _openTabs[deviceId] = tab; |
| | | |
| | | RefreshAvailableList(); |
| | | SelectedDevice = null; |
| | | log.Info($"å·²å å
¥è°è¯è®¾å¤: {deviceId}ï¼å½å {debugTabs.Items.Count} 个æ ç¾ï¼"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error("éåºç»´æ¤æ¨¡å¼å¤±è´¥", ex); |
| | | ToastHelper.Error($"éåºç»´æ¤æ¨¡å¼å¤±è´¥: {ex.Message}"); |
| | | log.Error("å å
¥è°è¯è®¾å¤å¤±è´¥", ex); |
| | | ToastHelper.Error($"å å
¥è°è¯å¤±è´¥: {ex.Message}"); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// ä» CAN Endpoint è§£ææ»çº¿åç§°ï¼æ ¼å¼: æ»çº¿å:èç¹ç¼å·ï¼ |
| | | /// </summary> |
| | | private string ParseCanBusName(string endpoint) |
| | | private void CloseTabBtn_Click(object sender, RoutedEventArgs e) |
| | | { |
| | | if (string.IsNullOrEmpty(endpoint)) return "CAN_BUS_1"; |
| | | int idx = endpoint.IndexOf(':'); |
| | | return idx > 0 ? endpoint.Substring(0, idx) : endpoint; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// ä» CAN Endpoint è§£æèç¹ç¼å· |
| | | /// </summary> |
| | | private int? ParseCanNodeIndex(string endpoint) |
| | | try |
| | | { |
| | | if (string.IsNullOrEmpty(endpoint)) return 0; |
| | | int idx = endpoint.IndexOf(':'); |
| | | if (idx > 0 && idx < endpoint.Length - 1 && int.TryParse(endpoint.Substring(idx + 1), out int n)) |
| | | return n; |
| | | return 0; |
| | | if (debugTabs.SelectedItem is not TabItem tab) return; |
| | | string deviceId = tab.Tag as string ?? ""; |
| | | if (tab.Content is DeviceDebugTab content) |
| | | content.CloseSessionSilently(); // å
³éå³éæ¾ç»´æ¤ç§çº¦ï¼æç»æ³æ¼ |
| | | debugTabs.Items.Remove(tab); |
| | | if (!string.IsNullOrEmpty(deviceId)) _openTabs.Remove(deviceId); |
| | | RefreshAvailableList(); |
| | | log.Info($"å·²å
³éè°è¯æ ç¾å¹¶éæ¾ä¼è¯: {deviceId}"); |
| | | } |
| | | |
| | | #endregion |
| | | catch (Exception ex) |
| | | { |
| | | log.Error("å
³éè°è¯æ ç¾å¤±è´¥", ex); |
| | | ToastHelper.Error($"å
³é失败: {ex.Message}"); |
| | | } |
| | | } |
| | | } |
| | | } |
| New file |
| | |
| | | <UserControl x:Class="Plugin.DeviceDebug.DeviceDebugTab" |
| | | xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" |
| | | xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" |
| | | xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" |
| | | xmlns:d="http://schemas.microsoft.com/expression/blend/2008" |
| | | xmlns:ui="clr-namespace:HMI.UI;assembly=HMI.UI" |
| | | xmlns:pw="https://opensource.panuon.com/wpf" |
| | | xmlns:pu="https://opensource.panuon.com/wpf-ui" |
| | | xmlns:dp="clr-namespace:HMI.UI.DpUtil;assembly=HMI.UI" |
| | | mc:Ignorable="d" |
| | | d:DesignHeight="600" d:DesignWidth="1000"> |
| | | <UserControl.Resources> |
| | | <ResourceDictionary> |
| | | <ResourceDictionary.MergedDictionaries> |
| | | <ResourceDictionary Source="/HMI.UI;component/Style/PanuonListView.xaml"/> |
| | | </ResourceDictionary.MergedDictionaries> |
| | | <BooleanToVisibilityConverter x:Key="BoolToVis"/> |
| | | </ResourceDictionary> |
| | | </UserControl.Resources> |
| | | |
| | | <Grid dp:GridHelper.Space="8"> |
| | | <Grid.RowDefinitions> |
| | | <RowDefinition Height="Auto"/> |
| | | <RowDefinition Height="Auto"/> |
| | | <RowDefinition Height="*"/> |
| | | </Grid.RowDefinitions> |
| | | |
| | | <!-- 设å¤ä¿¡æ¯æ --> |
| | | <Border Grid.Row="0" BorderBrush="#CCCCCC" BorderThickness="1" Padding="10,6" Background="#F9F9F9" |
| | | Visibility="{Binding HasDevice, Converter={StaticResource BoolToVis}}"> |
| | | <WrapPanel dp:StackPanelHelper.ChildSpace="20"> |
| | | <StackPanel Orientation="Horizontal" dp:StackPanelHelper.ChildSpace="4"> |
| | | <TextBlock Text="设å¤ID:" FontWeight="Bold" Foreground="#555"/> |
| | | <TextBlock Text="{Binding CurrentDeviceId}" Style="{StaticResource ListTableTextBlock}"/> |
| | | </StackPanel> |
| | | <StackPanel Orientation="Horizontal" dp:StackPanelHelper.ChildSpace="4"> |
| | | <TextBlock Text="åå·:" FontWeight="Bold" Foreground="#555"/> |
| | | <TextBlock Text="{Binding CurrentDeviceKind}" Style="{StaticResource ListTableTextBlock}"/> |
| | | </StackPanel> |
| | | <StackPanel Orientation="Horizontal" dp:StackPanelHelper.ChildSpace="4"> |
| | | <TextBlock Text="è¿æ¥ç¶æ:" FontWeight="Bold" Foreground="#555"/> |
| | | <TextBlock Text="{Binding ConnectionStateText}" Foreground="{Binding ConnectionBrush}"/> |
| | | </StackPanel> |
| | | <StackPanel Orientation="Horizontal" dp:StackPanelHelper.ChildSpace="4"> |
| | | <TextBlock Text="çæ¬:" FontWeight="Bold" Foreground="#555"/> |
| | | <TextBlock Text="{Binding CurrentEffectiveVersion}" Style="{StaticResource ListTableTextBlock}"/> |
| | | </StackPanel> |
| | | <StackPanel Orientation="Horizontal" dp:StackPanelHelper.ChildSpace="4"> |
| | | <TextBlock Text="é¢çº¦ç¶æ:" FontWeight="Bold" Foreground="#555"/> |
| | | <TextBlock Text="{Binding ReservationStatusText}" Style="{StaticResource ListTableTextBlock}"/> |
| | | </StackPanel> |
| | | <StackPanel Orientation="Horizontal" dp:StackPanelHelper.ChildSpace="4"> |
| | | <TextBlock Text="ä¼è¯ç¶æ:" FontWeight="Bold" Foreground="#555"/> |
| | | <TextBlock Text="{Binding SessionStateText}" Foreground="{Binding SessionStateBrush}" FontWeight="Bold"/> |
| | | </StackPanel> |
| | | </WrapPanel> |
| | | </Border> |
| | | |
| | | <!-- æä½æé®æ --> |
| | | <StackPanel Grid.Row="1" Orientation="Horizontal" dp:StackPanelHelper.ChildSpace="10" |
| | | Visibility="{Binding HasDevice, Converter={StaticResource BoolToVis}}"> |
| | | <Button x:Name="enterMaintenanceBtn" Content="è¿å
¥ç»´æ¤æ§å¶" Padding="14,6" |
| | | IsEnabled="{Binding CanEnterMaintenance}" |
| | | Click="EnterMaintenanceBtn_Click" |
| | | Background="#2196F3" Foreground="White" BorderThickness="0" Cursor="Hand"/> |
| | | <Button x:Name="exitMaintenanceBtn" Content="éåºç»´æ¤" Padding="14,6" |
| | | IsEnabled="{Binding CanExitMaintenance}" |
| | | Click="ExitMaintenanceBtn_Click" |
| | | Background="#FF5722" Foreground="White" BorderThickness="0" Cursor="Hand"/> |
| | | </StackPanel> |
| | | |
| | | <!-- 主ä½åºåï¼å·¦é¢æ¿ + 峿¥å¿ --> |
| | | <Grid Grid.Row="2"> |
| | | <Grid.ColumnDefinitions> |
| | | <ColumnDefinition Width="*"/> |
| | | <ColumnDefinition Width="350"/> |
| | | </Grid.ColumnDefinitions> |
| | | |
| | | <Border Grid.Column="0" BorderBrush="#DDDDDD" BorderThickness="1" Margin="0,0,8,0"> |
| | | <ContentControl x:Name="panelContainer"> |
| | | <TextBlock Text="æ£å¨åå§åâ¦" HorizontalAlignment="Center" VerticalAlignment="Center" |
| | | FontSize="16" Foreground="#999"/> |
| | | </ContentControl> |
| | | </Border> |
| | | |
| | | <Border Grid.Column="1" BorderBrush="#DDDDDD" BorderThickness="1"> |
| | | <Grid> |
| | | <Grid.RowDefinitions> |
| | | <RowDefinition Height="Auto"/> |
| | | <RowDefinition Height="*"/> |
| | | </Grid.RowDefinitions> |
| | | <Border Grid.Row="0" Background="#F0F0F0" Padding="8,6"> |
| | | <TextBlock Text="æä½æ¥å¿" FontWeight="Bold" FontSize="14"/> |
| | | </Border> |
| | | <ListView Grid.Row="1" x:Name="operationLogList" |
| | | ItemsSource="{Binding OperationLogs}" |
| | | Style="{StaticResource DefaultListTable}" |
| | | VirtualizingPanel.IsVirtualizing="True" |
| | | VirtualizingPanel.VirtualizationMode="Standard"> |
| | | <ListView.View> |
| | | <GridView AllowsColumnReorder="False"> |
| | | <GridViewColumn Width="60" Header="ç±»å" DisplayMemberBinding="{Binding CommandType}"/> |
| | | <GridViewColumn Width="120" Header="åæ°" DisplayMemberBinding="{Binding Parameters}"/> |
| | | <GridViewColumn Width="60" Header="ç»æ" DisplayMemberBinding="{Binding Outcome}"/> |
| | | <GridViewColumn Width="100" Header="æ¶é´" DisplayMemberBinding="{Binding Timestamp, StringFormat=HH:mm:ss}"/> |
| | | </GridView> |
| | | </ListView.View> |
| | | </ListView> |
| | | </Grid> |
| | | </Border> |
| | | </Grid> |
| | | </Grid> |
| | | </UserControl> |
| New file |
| | |
| | | using Aging.Infrastructure.Contracts; |
| | | using CommunityToolkit.Mvvm.ComponentModel; |
| | | using HMI.Core.Util; |
| | | using HMI.UI.Util; |
| | | using log4net; |
| | | using Plugin.DeviceDebug.Entity; |
| | | using Plugin.DeviceDebug.Model; |
| | | using Plugin.DeviceDebug.Panels; |
| | | using System; |
| | | using System.Collections.ObjectModel; |
| | | using System.Linq; |
| | | using System.Threading; |
| | | using System.Windows; |
| | | using System.Windows.Controls; |
| | | using System.Windows.Media; |
| | | |
| | | namespace Plugin.DeviceDebug |
| | | { |
| | | /// <summary> |
| | | /// å设å¤è°è¯å·¥ä½åºï¼èªå¸¦ç¬ç«è°è¯ä¼è¯ä¸ç»´æ¤ç§çº¦ï¼ãç± DeviceDebug 壳æ Tab æ¿è½½ï¼ |
| | | /// æ¯æåæ¶æå¼å¤ä¸ªè®¾å¤äºä¸å¹²æ°ãä¼è¯ç¶ææºæ²¿ç¨ DebugSessionManagerï¼å
±äº«åä¾ï¼ |
| | | /// å
åæ sessionId ç¼åå¤ä¼è¯ï¼ï¼è¿å
¥/éåºç»´æ¤åªä½ç¨äºæ¬è®¾å¤èµæºé®ã |
| | | /// </summary> |
| | | [ObservableObject] |
| | | public partial class DeviceDebugTab : UserControl |
| | | { |
| | | private static readonly ILog log = LogManager.GetLogger(typeof(DeviceDebugTab)); |
| | | |
| | | // å
±äº«æå¡ï¼ç±å£³æ³¨å
¥ï¼çå½å¨æå±å£³ï¼ |
| | | private DeviceDebugModel _debugModel; |
| | | private DebugSessionManager _sessionManager; |
| | | private IDeviceManager _deviceManager; |
| | | private IDeviceService _deviceService; |
| | | private string _deviceConfigDbPath; |
| | | |
| | | [ObservableProperty] private DebugSession _currentSession; |
| | | [ObservableProperty] private ObservableCollection<DebugOperation> _operationLogs = new(); |
| | | [ObservableProperty] private string _connectionStateText = "æªè¿æ¥"; |
| | | [ObservableProperty] private string _sessionStateText = ""; |
| | | [ObservableProperty] private string _reservationStatusText = ""; |
| | | [ObservableProperty] private string _currentDeviceId = ""; |
| | | [ObservableProperty] private string _currentDeviceKind = ""; |
| | | [ObservableProperty] private string _currentEffectiveVersion = ""; |
| | | [ObservableProperty] private string _currentEndpoint = ""; |
| | | [ObservableProperty] private string _currentDriverType = ""; |
| | | [ObservableProperty] private Brush _connectionBrush = new SolidColorBrush(Colors.Gray); |
| | | [ObservableProperty] private Brush _sessionStateBrush = new SolidColorBrush(Colors.Gray); |
| | | [ObservableProperty] private bool _canEnterMaintenance; |
| | | [ObservableProperty] private bool _canExitMaintenance; |
| | | [ObservableProperty] private bool _hasDevice; |
| | | |
| | | /// <summary>æ¬ Tab å
³èç设å¤IDï¼ä¾å£³è¿æ»¤å·²æå¼è®¾å¤ãå
³éæ¶å®ä½ä¼è¯ï¼ã</summary> |
| | | public string BoundDeviceId { get; private set; } = ""; |
| | | |
| | | public DeviceDebugTab() |
| | | { |
| | | DataContext = this; |
| | | InitializeComponent(); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 注å
¥å
±äº«æå¡å¹¶æå¼è¯¥è®¾å¤çè°è¯ä¼è¯ï¼ReadOnlyï¼+ å è½½é¢æ¿ã |
| | | /// </summary> |
| | | public void Initialize(DeviceDebugModel debugModel, DebugSessionManager sessionManager, |
| | | IDeviceManager deviceManager, IDeviceService deviceService, string deviceConfigDbPath, |
| | | string deviceId, string kind) |
| | | { |
| | | _debugModel = debugModel; |
| | | _sessionManager = sessionManager; |
| | | _deviceManager = deviceManager; |
| | | _deviceService = deviceService; |
| | | _deviceConfigDbPath = deviceConfigDbPath; |
| | | BoundDeviceId = deviceId; |
| | | OpenDevice(deviceId, kind); |
| | | } |
| | | |
| | | private void OpenDevice(string deviceId, string kind) |
| | | { |
| | | try |
| | | { |
| | | LoadDeviceInfo(deviceId); |
| | | HasDevice = true; |
| | | |
| | | CurrentSession = _sessionManager.OpenSession(deviceId, "", "operator", CurrentEffectiveVersion); |
| | | |
| | | if (_deviceManager != null) |
| | | { |
| | | try |
| | | { |
| | | _deviceManager.ConnectAsync(deviceId, CancellationToken.None).GetAwaiter().GetResult(); |
| | | ConnectionStateText = "å·²è¿æ¥"; |
| | | ConnectionBrush = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#4CAF50")); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Warn($"éè¿ DeviceManager è¿æ¥è®¾å¤å¤±è´¥: {ex.Message}"); |
| | | ConnectionStateText = "è¿æ¥å¤±è´¥"; |
| | | ConnectionBrush = new SolidColorBrush(Colors.OrangeRed); |
| | | } |
| | | } |
| | | |
| | | LoadOperationLogs(); |
| | | UpdateButtonStates(); |
| | | LoadPanel(kind); |
| | | log.Info($"è°è¯ Tab å·²æå¼è®¾å¤: {deviceId}, ç±»å: {kind}"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error("æå¼è®¾å¤è°è¯å¤±è´¥", ex); |
| | | ToastHelper.Error($"æå¼è®¾å¤å¤±è´¥: {ex.Message}"); |
| | | } |
| | | } |
| | | |
| | | private void LoadDeviceInfo(string deviceId) |
| | | { |
| | | try |
| | | { |
| | | var sqliteHelper = new SqliteHelper(_deviceConfigDbPath); |
| | | var dt = sqliteHelper.GetDataTable( |
| | | $"SELECT DeviceId, Kind, EffectiveVersion, Endpoint, DriverType FROM DeviceDefinition WHERE DeviceId = '{deviceId}'"); |
| | | if (dt.Rows.Count > 0) |
| | | { |
| | | var row = dt.Rows[0]; |
| | | CurrentDeviceId = row["DeviceId"].ToString(); |
| | | CurrentDeviceKind = row["Kind"].ToString(); |
| | | CurrentEffectiveVersion = row["EffectiveVersion"]?.ToString() ?? ""; |
| | | CurrentEndpoint = row["Endpoint"]?.ToString() ?? ""; |
| | | CurrentDriverType = row["DriverType"]?.ToString() ?? ""; |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"å 载设å¤ä¿¡æ¯å¤±è´¥: {deviceId}", ex); |
| | | } |
| | | } |
| | | |
| | | private void LoadPanel(string deviceKind) |
| | | { |
| | | try |
| | | { |
| | | UIElement panel = null; |
| | | switch (deviceKind) |
| | | { |
| | | case "PowerSupply": |
| | | var powerPanel = new PowerSupplyDebugPanel |
| | | { |
| | | IsMaintenanceMode = CurrentSession?.State == DebugSessionState.MaintenanceActive |
| | | }; |
| | | powerPanel.OnCommandExecute += Panel_OnCommandExecute; |
| | | panel = powerPanel; |
| | | break; |
| | | case "CanDevice": |
| | | var canPanel = new CanDebugPanel |
| | | { |
| | | DeviceId = CurrentDeviceId, |
| | | InitialBusName = ParseCanBusName(CurrentEndpoint), |
| | | InitialNodeIndex = ParseCanNodeIndex(CurrentEndpoint), |
| | | AutoConnectOnLoad = true |
| | | }; |
| | | // å
±äº«/Broker 设å¤å¤ç¨ DeviceManager 已注å驱å¨ï¼ç¦æ¢èªå»ºç©çä¼è¯ |
| | | try |
| | | { |
| | | var registeredDriver = _deviceManager?.GetDriver(CurrentDeviceId); |
| | | if (registeredDriver != null) |
| | | { |
| | | canPanel.ExistingDriver = registeredDriver; |
| | | log.Info($"è®¾å¤ {CurrentDeviceId} è°è¯é¢æ¿å¤ç¨å·²æ³¨å驱å¨: {registeredDriver.GetType().Name}"); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Warn($"è·å已注å驱å¨å¤±è´¥ï¼é¢æ¿é级æ¬å°ç´é©±: {ex.Message}"); |
| | | } |
| | | canPanel.IsMaintenanceMode = CurrentSession?.State == DebugSessionState.MaintenanceActive; |
| | | canPanel.OnCommandExecute += Panel_OnCommandExecute; |
| | | panel = canPanel; |
| | | break; |
| | | case "PlcDevice": |
| | | var plcPanel = new PlcDebugPanel |
| | | { |
| | | IsMaintenanceMode = CurrentSession?.State == DebugSessionState.MaintenanceActive |
| | | }; |
| | | plcPanel.OnCommandExecute += Panel_OnCommandExecute; |
| | | panel = plcPanel; |
| | | break; |
| | | default: |
| | | panel = new TextBlock |
| | | { |
| | | Text = $"䏿¯æç设å¤ç±»å: {deviceKind}", |
| | | HorizontalAlignment = HorizontalAlignment.Center, |
| | | VerticalAlignment = VerticalAlignment.Center, |
| | | FontSize = 14, |
| | | Foreground = new SolidColorBrush(Colors.OrangeRed) |
| | | }; |
| | | break; |
| | | } |
| | | panelContainer.Content = panel; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"å è½½è°è¯é¢æ¿å¤±è´¥: {deviceKind}", ex); |
| | | ToastHelper.Error($"å è½½é¢æ¿å¤±è´¥: {ex.Message}"); |
| | | } |
| | | } |
| | | |
| | | private void Panel_OnCommandExecute(object sender, DebugCommand command) |
| | | { |
| | | try |
| | | { |
| | | if (CurrentSession == null) |
| | | { |
| | | ToastHelper.Warning("请å
éæ©è®¾å¤"); |
| | | return; |
| | | } |
| | | if (!_sessionManager.ValidateCommand(CurrentSession.SessionId, command)) |
| | | { |
| | | ToastHelper.Warning("å½åä¼è¯ç¶æä¸å
许æ§è¡æ¤æä½ï¼è¯·å
è¿å
¥ç»´æ¤æ¨¡å¼"); |
| | | return; |
| | | } |
| | | if (_deviceService != null) |
| | | ExecuteViaDeviceService(command); |
| | | else |
| | | { |
| | | log.Warn("DeviceService æªåå§åï¼ä½¿ç¨é级模å¼è®°å½å½ä»¤"); |
| | | ExecuteFallback(command); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"æ§è¡å½ä»¤å¤±è´¥: {command.CommandType}", ex); |
| | | ToastHelper.Error($"å½ä»¤æ§è¡å¤±è´¥: {ex.Message}"); |
| | | var operation = new DebugOperation |
| | | { |
| | | SessionId = CurrentSession?.SessionId ?? "", |
| | | CommandType = command.CommandType, |
| | | Parameters = SerializeParameters(command), |
| | | Outcome = "Failed", |
| | | ErrorMessage = ex.Message, |
| | | Timestamp = DateTime.Now |
| | | }; |
| | | _debugModel.RecordOperation(operation); |
| | | OperationLogs.Insert(0, operation); |
| | | } |
| | | } |
| | | |
| | | private void ExecuteViaDeviceService(DebugCommand command) |
| | | { |
| | | try |
| | | { |
| | | var ownerToken = new ResourceOwnerToken(OwnerType.Maintenance, CurrentSession.SessionId); |
| | | var deviceCommand = BuildDeviceCommand(command); |
| | | var result = _deviceService.ExecuteCommandAsync( |
| | | command.DeviceId, deviceCommand, ownerToken, CancellationToken.None).GetAwaiter().GetResult(); |
| | | |
| | | var operation = new DebugOperation |
| | | { |
| | | SessionId = CurrentSession.SessionId, |
| | | CommandType = command.CommandType, |
| | | Parameters = SerializeParameters(command), |
| | | Outcome = result.Success ? "Success" : "Failed", |
| | | DeviceReadback = result.Readback ?? "", |
| | | ErrorCode = result.ErrorCode ?? "", |
| | | ErrorMessage = result.ErrorMessage ?? "", |
| | | Timestamp = DateTime.Now |
| | | }; |
| | | _debugModel.RecordOperation(operation); |
| | | OperationLogs.Insert(0, operation); |
| | | |
| | | if (result.Success) ToastHelper.Success($"å½ä»¤ {command.CommandType} æ§è¡æå"); |
| | | else ToastHelper.Warning($"å½ä»¤æ§è¡å¤±è´¥: {result.ErrorMessage}"); |
| | | log.Info($"æ§è¡å½ä»¤: {command.CommandType}, 设å¤: {command.DeviceId}, ç»æ: {(result.Success ? "æå" : "失败")}"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"DeviceService æ§è¡å½ä»¤å¤±è´¥: {ex.Message}", ex); |
| | | ToastHelper.Error($"设å¤é信失败: {ex.Message}"); |
| | | var operation = new DebugOperation |
| | | { |
| | | SessionId = CurrentSession.SessionId, |
| | | CommandType = command.CommandType, |
| | | Parameters = SerializeParameters(command), |
| | | Outcome = "Failed", |
| | | ErrorMessage = ex.Message, |
| | | Timestamp = DateTime.Now |
| | | }; |
| | | _debugModel.RecordOperation(operation); |
| | | OperationLogs.Insert(0, operation); |
| | | } |
| | | } |
| | | |
| | | private void ExecuteFallback(DebugCommand command) |
| | | { |
| | | var operation = new DebugOperation |
| | | { |
| | | SessionId = CurrentSession.SessionId, |
| | | CommandType = command.CommandType, |
| | | Parameters = SerializeParameters(command), |
| | | Outcome = "Success", |
| | | Timestamp = DateTime.Now |
| | | }; |
| | | _debugModel.RecordOperation(operation); |
| | | OperationLogs.Insert(0, operation); |
| | | ToastHelper.Success($"å½ä»¤ {command.CommandType} å·²åéï¼é级模å¼ï¼"); |
| | | } |
| | | |
| | | private string BuildDeviceCommand(DebugCommand command) |
| | | { |
| | | if (command is PowerSetCommand psc) |
| | | return $"VOLT {psc.Voltage};CURR {psc.CurrentLimit};OUTP {(psc.Output ? "ON" : "OFF")}"; |
| | | if (command is PowerMeasureCommand) |
| | | return "MEAS:ALL?"; |
| | | if (command is CanSendCommand csc) |
| | | return $"CAN:SEND {csc.Frame}"; |
| | | if (command is PlcWriteCommand pwc) |
| | | return $"WRITE:{pwc.IoAddress}:{(pwc.Value ? "TRUE" : "FALSE")}"; |
| | | return command.CommandType; |
| | | } |
| | | |
| | | private string SerializeParameters(DebugCommand command) |
| | | { |
| | | try |
| | | { |
| | | switch (command) |
| | | { |
| | | case PowerSetCommand psc: |
| | | return $"{{Voltage:{psc.Voltage},CurrentLimit:{psc.CurrentLimit},Output:{psc.Output}}}"; |
| | | case PowerMeasureCommand _: |
| | | return "{}"; |
| | | case CanSendCommand csc: |
| | | return $"{{Frame:{csc.Frame},Data:{BitConverter.ToString(csc.Data)}}}"; |
| | | case PlcWriteCommand pwc: |
| | | return $"{{IoAddress:{pwc.IoAddress},Value:{pwc.Value}}}"; |
| | | default: |
| | | return "{}"; |
| | | } |
| | | } |
| | | catch { return "{}"; } |
| | | } |
| | | |
| | | private void LoadOperationLogs() |
| | | { |
| | | try |
| | | { |
| | | if (CurrentSession == null) return; |
| | | var ops = _debugModel.GetOperationsBySession(CurrentSession.SessionId); |
| | | OperationLogs = new ObservableCollection<DebugOperation>(ops.Take(100)); |
| | | } |
| | | catch (Exception ex) { log.Error("å è½½æä½æ¥å¿å¤±è´¥", ex); } |
| | | } |
| | | |
| | | private void UpdateButtonStates() |
| | | { |
| | | if (CurrentSession == null) |
| | | { |
| | | CanEnterMaintenance = false; |
| | | CanExitMaintenance = false; |
| | | SessionStateText = ""; |
| | | return; |
| | | } |
| | | var state = CurrentSession.State; |
| | | CanEnterMaintenance = state == DebugSessionState.ReadOnly; |
| | | CanExitMaintenance = state == DebugSessionState.MaintenanceActive; |
| | | SessionStateText = state.ToString(); |
| | | SessionStateBrush = state switch |
| | | { |
| | | DebugSessionState.ReadOnly => new SolidColorBrush((Color)ColorConverter.ConvertFromString("#2196F3")), |
| | | DebugSessionState.MaintenanceActive => new SolidColorBrush((Color)ColorConverter.ConvertFromString("#4CAF50")), |
| | | DebugSessionState.Faulted => new SolidColorBrush(Colors.Red), |
| | | DebugSessionState.RecoveryRequired => new SolidColorBrush(Colors.Orange), |
| | | _ => new SolidColorBrush(Colors.Gray) |
| | | }; |
| | | |
| | | if (panelContainer.Content is PowerSupplyDebugPanel powerPanel) |
| | | powerPanel.IsMaintenanceMode = state == DebugSessionState.MaintenanceActive; |
| | | else if (panelContainer.Content is CanDebugPanel canPanel) |
| | | canPanel.IsMaintenanceMode = state == DebugSessionState.MaintenanceActive; |
| | | else if (panelContainer.Content is PlcDebugPanel plcPanel) |
| | | plcPanel.IsMaintenanceMode = state == DebugSessionState.MaintenanceActive; |
| | | } |
| | | |
| | | private void EnterMaintenanceBtn_Click(object sender, RoutedEventArgs e) |
| | | { |
| | | try |
| | | { |
| | | if (CurrentSession == null) return; |
| | | if (_sessionManager.RequestMaintenance(CurrentSession.SessionId)) |
| | | { |
| | | _sessionManager.ActivateMaintenance(CurrentSession.SessionId); |
| | | UpdateButtonStates(); |
| | | LoadPanel(CurrentDeviceKind); |
| | | ToastHelper.Success("å·²è¿å
¥ç»´æ¤æ§å¶æ¨¡å¼"); |
| | | log.Info($"ä¼è¯ {CurrentSession.SessionId} è¿å
¥ç»´æ¤æ¨¡å¼"); |
| | | } |
| | | else |
| | | { |
| | | ToastHelper.Warning("æ æ³è¿å
¥ç»´æ¤æ¨¡å¼ï¼è¯·æ£æ¥è®¾å¤ç¶æ"); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error("è¿å
¥ç»´æ¤æ¨¡å¼å¤±è´¥", ex); |
| | | ToastHelper.Error($"è¿å
¥ç»´æ¤æ¨¡å¼å¤±è´¥: {ex.Message}"); |
| | | } |
| | | } |
| | | |
| | | private void ExitMaintenanceBtn_Click(object sender, RoutedEventArgs e) |
| | | { |
| | | try |
| | | { |
| | | if (CurrentSession == null) return; |
| | | if (MsgBoxHelper.WarnMessage(Window.GetWindow(this), "ç¡®å®è¦éåºç»´æ¤æ¨¡å¼åï¼") == MessageBoxResult.OK) |
| | | CloseSessionSilently(); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error("éåºç»´æ¤æ¨¡å¼å¤±è´¥", ex); |
| | | ToastHelper.Error($"éåºç»´æ¤æ¨¡å¼å¤±è´¥: {ex.Message}"); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å
³éæ¬ Tab ä¼è¯å¹¶éæ¾ç»´æ¤ç§çº¦ï¼ä¾éåºç»´æ¤æé®ä¸å£³å
³é Tab å
±ç¨ï¼ã |
| | | /// ç» sessionId å¤ç¨ token éæ¾ï¼æç»ç§çº¦æ³æ¼å¯¼è´çâç¬¬äºæ¬¡è¿ç»´æ¤å¤±è´¥âã |
| | | /// </summary> |
| | | public void CloseSessionSilently() |
| | | { |
| | | try |
| | | { |
| | | if (CurrentSession != null) |
| | | { |
| | | _sessionManager.CloseSession(CurrentSession.SessionId); |
| | | CurrentSession = null; |
| | | log.Info($"è®¾å¤ {BoundDeviceId} ä¼è¯å·²å
³éï¼ç»´æ¤ç§çº¦å·²éæ¾"); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Warn($"å
³éä¼è¯å¼å¸¸: {ex.Message}"); |
| | | } |
| | | } |
| | | |
| | | private string ParseCanBusName(string endpoint) |
| | | { |
| | | if (string.IsNullOrEmpty(endpoint)) return "CAN_BUS_1"; |
| | | int idx = endpoint.IndexOf(':'); |
| | | return idx > 0 ? endpoint.Substring(0, idx) : endpoint; |
| | | } |
| | | |
| | | private int? ParseCanNodeIndex(string endpoint) |
| | | { |
| | | if (string.IsNullOrEmpty(endpoint)) return 0; |
| | | int idx = endpoint.IndexOf(':'); |
| | | if (idx > 0 && idx < endpoint.Length - 1 && int.TryParse(endpoint.Substring(idx + 1), out int n)) |
| | | return n; |
| | | return 0; |
| | | } |
| | | } |
| | | } |
| | |
| | | // å
åä¸çæ´»è·ä¼è¯ç¼å |
| | | private readonly Dictionary<string, DebugSession> _activeSessions = new(); |
| | | |
| | | /// <summary> |
| | | /// ç»´æ¤ç§çº¦å¿è·³ï¼ä¸ LayeredResourceManager.DefaultTtlSeconds(300s) 对é½ï¼ |
| | | /// æ¯ 120s ç»æä¸æ¬¡ï¼é²æ¢é¿æ¶é´ç»´æ¤ä¼è¯ç arb.db ç§çº¦è¿æè¿å
¥ RecoveryRequired åç¦æ¢ I/Oã |
| | | /// </summary> |
| | | private System.Threading.Timer _renewTimer; |
| | | private const int MaintenanceTtlSeconds = 300; |
| | | private const int RenewIntervalMs = 120_000; |
| | | |
| | | /// <summary> |
| | | /// ä¼è¯âèµæºä»¤çç¼åï¼LayeredResourceManager çç§çº¦æ TokenId ç´¢å¼ï¼ |
| | | /// è ResourceOwnerToken.TokenId æ¯æ¬¡ new 齿¯æ° GUIDï¼å¿
é¡»å¤ç¨åä¸å®ä¾æè½éæ¾å°ç§çº¦ |
| | | /// </summary> |
| | | private readonly Dictionary<string, ResourceOwnerToken> _sessionOwnerTokens = new(); |
| | | |
| | | public DebugSessionManager(DeviceDebugModel model, IResourceManager? resourceManager = null) |
| | | { |
| | | _model = model; |
| | |
| | | var existingSession = GetActiveSessionByDevice(deviceId); |
| | | if (existingSession != null) |
| | | { |
| | | // è¿ç¨å
åä¸åå¨ = æ¬ä¼è¯çæ´»è·ï¼ç´æ¥å¤ç¨ |
| | | if (_activeSessions.ContainsKey(existingSession.SessionId)) |
| | | { |
| | | log.Warn($"è®¾å¤ {deviceId} å·²ææ´»è·ä¼è¯: {existingSession.SessionId}"); |
| | | return existingSession; |
| | | } |
| | | |
| | | // ä»
åå¨äºæ°æ®åºä¸ä¸å¨æ¬è¿ç¨å
å = æ§è¿ç¨éåºåçæ®çä¼è¯ï¼ |
| | | // å
¶å
åä¸ä¸æ/ç»´æ¤ç§çº¦ï¼arb.db ä¾§é TTL è¿æ+åæ¶ï¼å·²éè¿ç¨æ¶äº¡ï¼ |
| | | // å¿
é¡»åæ¶ä¸º Closed åæ°å»ºï¼å¦å RequestMaintenance æ°¸è¿âä¼è¯ä¸åå¨âæç» |
| | | _activeSessions[existingSession.SessionId] = existingSession; |
| | | existingSession.State = DebugSessionState.Closed; |
| | | existingSession.ClosedAt = DateTime.Now; |
| | | _model.UpdateSession(existingSession); |
| | | _activeSessions.Remove(existingSession.SessionId); |
| | | log.Warn($"å·²åæ¶è®¾å¤ {deviceId} çæ®çä¼è¯ {existingSession.SessionId}ï¼è¿ç¨éå¯å¯¼è´æ»ä¼è¯ï¼ï¼æ°å»ºä¼è¯æ¿ä»£"); |
| | | } |
| | | |
| | | var session = new DebugSession |
| | |
| | | { |
| | | if (!_activeSessions.TryGetValue(sessionId, out var session)) |
| | | { |
| | | // å
åºï¼ä¼è¯å¯è½å¨æ°æ®åºï¼å¦ UI ææç sessionID å±äºéå¯åæ®çï¼â æ¢å¤è¿ç¼ååç»§ç» |
| | | session = _model.GetSession(sessionId); |
| | | if (session == null || session.State == DebugSessionState.Closed) |
| | | { |
| | | log.Warn($"ä¼è¯ä¸åå¨: {sessionId}"); |
| | | return false; |
| | | } |
| | | _activeSessions[sessionId] = session; |
| | | log.Warn($"ä¼è¯ {sessionId} 仿°æ®åºæ¢å¤è¿å
åç¼ååç»§ç»ç»´æ¤è¯·æ±"); |
| | | } |
| | | |
| | | // éªè¯ç¶æè½¬æ¢ |
| | |
| | | if (_resourceManager != null) |
| | | { |
| | | var resourceKey = new ResourceKey(session.DeviceId, "Generic"); |
| | | var ownerToken = new ResourceOwnerToken(OwnerType.Maintenance, session.SessionId); |
| | | // å¤ç¨å·²ç¼å令çï¼æ®çä¼è¯ä» DB æ¢å¤å馿¬¡è¿å
¥æ¶åæ ·æ°å»ºå¹¶åå
¥ï¼ |
| | | if (!_sessionOwnerTokens.TryGetValue(sessionId, out var ownerToken)) |
| | | { |
| | | ownerToken = new ResourceOwnerToken(OwnerType.Maintenance, session.SessionId); |
| | | _sessionOwnerTokens[sessionId] = ownerToken; |
| | | } |
| | | |
| | | try |
| | | { |
| | |
| | | } |
| | | catch (ResourceConflictException) |
| | | { |
| | | _sessionOwnerTokens.Remove(sessionId); |
| | | log.Warn($"è®¾å¤ {session.DeviceId} 已被ç产é¢çº¦å ç¨ï¼æç»ç»´æ¤è¯·æ±"); |
| | | return false; |
| | | } |
| | |
| | | // æä¹
å |
| | | _model.UpdateSession(session); |
| | | |
| | | // å¯å¨ç»´æ¤ç§çº¦å¿è·³ç»æï¼é²æ¢ TTL è¿æï¼ |
| | | EnsureRenewHeartbeat(); |
| | | |
| | | log.Info($"ä¼è¯ {sessionId} æ¿æ´»ç»´æ¤æ¨¡å¼"); |
| | | } |
| | | catch (Exception ex) |
| | |
| | | log.Error($"æ¿æ´»ç»´æ¤æ¨¡å¼å¤±è´¥: {ex.Message}", ex); |
| | | throw; |
| | | } |
| | | } |
| | | |
| | | /// <summary>馿¬¡è¿å
¥ç»´æ¤æ¶å¯å¨å¨æç»æå®æ¶å¨ï¼å¹çï¼ã</summary> |
| | | private void EnsureRenewHeartbeat() |
| | | { |
| | | if (_renewTimer != null) return; |
| | | _renewTimer = new System.Threading.Timer(_ => RenewActiveMaintenance(), |
| | | null, RenewIntervalMs, RenewIntervalMs); |
| | | log.Info("ç»´æ¤ç§çº¦å¿è·³å·²å¯å¨"); |
| | | } |
| | | |
| | | /// <summary>卿åè°ï¼å¯¹ææ MaintenanceActive ä¼è¯ç»æå
¶ arb.db ç§çº¦ã</summary> |
| | | private void RenewActiveMaintenance() |
| | | { |
| | | var lrm = _resourceManager as Aging.Infrastructure.Core.LayeredResourceManager; |
| | | if (lrm == null) return; // éåå±å®ç°ï¼æ Coordinatorï¼æ¶é级ä¸ç»æ |
| | | try |
| | | { |
| | | foreach (var kv in _activeSessions.ToArray()) |
| | | { |
| | | var s = kv.Value; |
| | | if (s.State != DebugSessionState.MaintenanceActive) continue; |
| | | if (!_sessionOwnerTokens.TryGetValue(s.SessionId, out var token)) continue; |
| | | if (!lrm.TryGetGrants(token.TokenId, out var grants) || grants == null) continue; |
| | | foreach (var g in grants) |
| | | { |
| | | try { lrm.Coordinator.Renew(g, MaintenanceTtlSeconds); } |
| | | catch (Exception ex) { log.Warn($"ç»æè®¾å¤ {s.DeviceId} ç§çº¦å¤±è´¥: {ex.Message}"); } |
| | | } |
| | | } |
| | | } |
| | | catch (Exception ex) { log.Error($"ç»´æ¤ç§çº¦å¿è·³å¼å¸¸: {ex.Message}", ex); } |
| | | } |
| | | |
| | | /// <summary>æ ç»´æ¤ä¸ä¼è¯æ¶åæ¢å¿è·³ï¼é¿å
空转ã</summary> |
| | | private void StopRenewHeartbeatIfIdle() |
| | | { |
| | | if (_renewTimer == null) return; |
| | | if (_activeSessions.Values.Any(s => s.State == DebugSessionState.MaintenanceActive)) return; |
| | | try { _renewTimer.Dispose(); } catch { } |
| | | _renewTimer = null; |
| | | log.Info("æ ç»´æ¤ä¸ä¼è¯ï¼ç»´æ¤ç§çº¦å¿è·³å·²åæ¢"); |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | try |
| | | { |
| | | var resourceKey = new ResourceKey(session.DeviceId, "Generic"); |
| | | var ownerToken = new ResourceOwnerToken(OwnerType.Maintenance, session.SessionId); |
| | | // å¿
é¡»å¤ç¨è¿å
¥ç»´æ¤æ¶çåä¸ä»¤çå®ä¾ï¼LayeredResourceManager æ TokenId(GUID) ç´¢å¼ç§çº¦ï¼ |
| | | // éæ° new ä¼å¯¼è´ FindGrant è½ç©ºãç§çº¦æ°¸ä¸éæ¾âè¿æå RecoveryRequired æ°¸ä¹
é»å¡åç»ç»´æ¤ |
| | | if (!_sessionOwnerTokens.TryGetValue(sessionId, out var ownerToken)) |
| | | { |
| | | ownerToken = new ResourceOwnerToken(OwnerType.Maintenance, session.SessionId); |
| | | } |
| | | |
| | | _resourceManager.ReleaseReservationAsync( |
| | | ownerToken, resourceKey, CancellationToken.None).GetAwaiter().GetResult(); |
| | | |
| | | _sessionOwnerTokens.Remove(sessionId); |
| | | log.Info($"å·²éæ¾è®¾å¤ {session.DeviceId} çèµæºé¢çº¦"); |
| | | } |
| | | catch (Exception ex) |
| | |
| | | // ä»ç¼åä¸ç§»é¤ |
| | | _activeSessions.Remove(sessionId); |
| | | |
| | | // è¥æ ç»´æ¤ä¸ä¼è¯å忢å¿è·³ |
| | | StopRenewHeartbeatIfIdle(); |
| | | |
| | | log.Info($"ä¼è¯ {sessionId} å·²å
³é"); |
| | | } |
| | | catch (Exception ex) |
| New file |
| | |
| | | <UserControl x:Class="Plugin.DeviceDebug.Panels.CanChannelView" |
| | | xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" |
| | | xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" |
| | | xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" |
| | | xmlns:d="http://schemas.microsoft.com/expression/blend/2008" |
| | | xmlns:ui="clr-namespace:HMI.UI;assembly=HMI.UI" |
| | | xmlns:dp="clr-namespace:HMI.UI.DpUtil;assembly=HMI.UI" |
| | | mc:Ignorable="d" |
| | | d:DesignHeight="700" d:DesignWidth="700"> |
| | | <UserControl.Resources> |
| | | <ResourceDictionary> |
| | | <ResourceDictionary.MergedDictionaries> |
| | | <ResourceDictionary Source="/HMI.UI;component/Style/PanuonListView.xaml"/> |
| | | </ResourceDictionary.MergedDictionaries> |
| | | </ResourceDictionary> |
| | | </UserControl.Resources> |
| | | |
| | | <Grid dp:GridHelper.Space="10" Margin="10"> |
| | | <Grid.RowDefinitions> |
| | | <RowDefinition Height="Auto"/> |
| | | <RowDefinition Height="Auto"/> |
| | | <RowDefinition Height="Auto"/> |
| | | <RowDefinition Height="*"/> |
| | | </Grid.RowDefinitions> |
| | | |
| | | <!-- æ é¢ --> |
| | | <Border Grid.Row="0" Background="#FF9800" CornerRadius="4" Padding="12,8"> |
| | | <TextBlock Text="CAN é讯è°è¯é¢æ¿" FontSize="16" FontWeight="Bold" Foreground="White"/> |
| | | </Border> |
| | | |
| | | <!-- 模æå¨è¿æ¥æ§å¶åº --> |
| | | <Border Grid.Row="1" BorderBrush="#DDD" BorderThickness="1" CornerRadius="4" Padding="12" Background="#FAFAFA"> |
| | | <Grid dp:GridHelper.Space="8"> |
| | | <Grid.RowDefinitions> |
| | | <RowDefinition Height="Auto"/> |
| | | <RowDefinition Height="Auto"/> |
| | | </Grid.RowDefinitions> |
| | | <Grid.ColumnDefinitions> |
| | | <ColumnDefinition Width="80"/> |
| | | <ColumnDefinition Width="150"/> |
| | | <ColumnDefinition Width="80"/> |
| | | <ColumnDefinition Width="100"/> |
| | | <ColumnDefinition Width="*"/> |
| | | <ColumnDefinition Width="Auto"/> |
| | | </Grid.ColumnDefinitions> |
| | | |
| | | <!-- 第ä¸è¡ï¼æ»çº¿åç§°åèç¹ç¼å· --> |
| | | <TextBlock Grid.Row="0" Grid.Column="0" Text="æ»çº¿åç§°:" VerticalAlignment="Center" FontWeight="SemiBold"/> |
| | | <TextBox Grid.Row="0" Grid.Column="1" x:Name="busNameInput" |
| | | VerticalContentAlignment="Center" Padding="6,4" Text="CAN_BUS_1"/> |
| | | |
| | | <TextBlock Grid.Row="0" Grid.Column="2" Text="èç¹ç¼å·:" VerticalAlignment="Center" FontWeight="SemiBold" Margin="8,0,0,0"/> |
| | | <TextBox Grid.Row="0" Grid.Column="3" x:Name="nodeIndexInput" |
| | | VerticalContentAlignment="Center" Padding="6,4" Text="0"/> |
| | | |
| | | <Button Grid.Row="0" Grid.Column="5" x:Name="connectBtn" Content="è¿æ¥" Width="80" Height="30" |
| | | Click="ConnectBtn_Click" |
| | | Background="#4CAF50" Foreground="White" BorderThickness="0" Cursor="Hand" FontWeight="SemiBold"/> |
| | | |
| | | <!-- 第äºè¡ï¼ç¶ææ¾ç¤ºåæ§å¶æé® --> |
| | | <TextBlock Grid.Row="1" Grid.Column="0" Text="ç¶æ:" VerticalAlignment="Center" FontWeight="SemiBold"/> |
| | | <StackPanel Grid.Row="1" Grid.Column="1" Grid.ColumnSpan="2" Orientation="Horizontal" VerticalAlignment="Center"> |
| | | <Ellipse x:Name="statusIndicator" Width="12" Height="12" Fill="#9E9E9E" Margin="0,0,6,0"/> |
| | | <TextBlock x:Name="statusText" Text="æªè¿æ¥" VerticalAlignment="Center"/> |
| | | </StackPanel> |
| | | |
| | | <TextBlock Grid.Row="1" Grid.Column="3" Text="ç»è®¡:" VerticalAlignment="Center" FontWeight="SemiBold" Margin="8,0,0,0"/> |
| | | <TextBlock Grid.Row="1" Grid.Column="4" x:Name="statsText" Text="TX: 0 RX: 0" |
| | | VerticalAlignment="Center" Foreground="#666"/> |
| | | |
| | | <StackPanel Grid.Row="1" Grid.Column="5" Orientation="Horizontal"> |
| | | <ToggleButton x:Name="autoResponseToggleBtn" Content="èªå¨ååº: å
³" Width="100" Height="28" Margin="0,0,4,0" |
| | | Click="AutoResponseToggleBtn_Click" IsEnabled="False" IsChecked="False" |
| | | Background="#9E9E9E" Foreground="White" BorderThickness="0" Cursor="Hand" FontWeight="SemiBold"/> |
| | | <ToggleButton x:Name="maintenanceToggleBtn" Content="ç»´æ¤æ¨¡å¼: å¼" Width="100" Height="28" Margin="0,0,4,0" |
| | | Click="MaintenanceToggleBtn_Click" IsEnabled="False" IsChecked="True" |
| | | Background="#4CAF50" Foreground="White" BorderThickness="0" Cursor="Hand" FontWeight="SemiBold"/> |
| | | <Button x:Name="disconnectBtn" Content="æå¼" Width="60" Height="28" Margin="0,0,4,0" |
| | | Click="DisconnectBtn_Click" IsEnabled="False" |
| | | Background="#F44336" Foreground="White" BorderThickness="0" Cursor="Hand"/> |
| | | <Button x:Name="promiscuousBtn" Content="æ··ææ¨¡å¼" Width="80" Height="28" |
| | | Click="PromiscuousBtn_Click" IsEnabled="False" |
| | | Background="#2196F3" Foreground="White" BorderThickness="0" Cursor="Hand"/> |
| | | </StackPanel> |
| | | </Grid> |
| | | </Border> |
| | | |
| | | <!-- åéåº --> |
| | | <Border Grid.Row="2" BorderBrush="#DDD" BorderThickness="1" CornerRadius="4" Padding="12"> |
| | | <Grid dp:GridHelper.Space="8"> |
| | | <Grid.RowDefinitions> |
| | | <RowDefinition Height="Auto"/> |
| | | <RowDefinition Height="Auto"/> |
| | | </Grid.RowDefinitions> |
| | | <Grid.ColumnDefinitions> |
| | | <ColumnDefinition Width="80"/> |
| | | <ColumnDefinition Width="*"/> |
| | | <ColumnDefinition Width="Auto"/> |
| | | </Grid.ColumnDefinitions> |
| | | |
| | | <!-- 帧ID --> |
| | | <TextBlock Grid.Row="0" Grid.Column="0" Text="帧 ID:" VerticalAlignment="Center" FontWeight="Bold"/> |
| | | <TextBox Grid.Row="0" Grid.Column="1" x:Name="frameIdInput" |
| | | IsEnabled="{Binding IsMaintenanceMode, RelativeSource={RelativeSource AncestorType=UserControl}}" |
| | | VerticalContentAlignment="Center" Padding="6,4" Text="0x100"/> |
| | | |
| | | <!-- æ°æ® --> |
| | | <TextBlock Grid.Row="1" Grid.Column="0" Text="æ°æ®(Hex):" VerticalAlignment="Center" FontWeight="Bold"/> |
| | | <TextBox Grid.Row="1" Grid.Column="1" x:Name="dataInput" |
| | | IsEnabled="{Binding IsMaintenanceMode, RelativeSource={RelativeSource AncestorType=UserControl}}" |
| | | VerticalContentAlignment="Center" Padding="6,4" Text="00 00 00 00 00 00 00 00"/> |
| | | |
| | | <!-- åéæé® --> |
| | | <Button Grid.Row="1" Grid.Column="2" x:Name="sendBtn" Content="åé" Width="80" Height="30" |
| | | IsEnabled="{Binding IsMaintenanceMode, RelativeSource={RelativeSource AncestorType=UserControl}}" |
| | | Click="SendBtn_Click" |
| | | Background="#FF9800" Foreground="White" BorderThickness="0" Cursor="Hand" FontWeight="SemiBold"/> |
| | | </Grid> |
| | | </Border> |
| | | |
| | | <!-- æ¥æ¶åº --> |
| | | <Border Grid.Row="3" BorderBrush="#DDD" BorderThickness="1" CornerRadius="4"> |
| | | <Grid> |
| | | <Grid.RowDefinitions> |
| | | <RowDefinition Height="Auto"/> |
| | | <RowDefinition Height="*"/> |
| | | </Grid.RowDefinitions> |
| | | |
| | | <DockPanel Grid.Row="0" Margin="8,6"> |
| | | <Button x:Name="clearBtn" Content="æ¸
空" Padding="12,4" DockPanel.Dock="Right" |
| | | Click="ClearBtn_Click" |
| | | Background="#9E9E9E" Foreground="White" BorderThickness="0" Cursor="Hand"/> |
| | | <TextBlock Text="æ¥æ¶è®°å½" FontWeight="Bold" FontSize="14" VerticalAlignment="Center"/> |
| | | </DockPanel> |
| | | |
| | | <ListView Grid.Row="1" x:Name="receiveList" |
| | | Style="{StaticResource DefaultListTable}" |
| | | VirtualizingPanel.IsVirtualizing="True" |
| | | VirtualizingPanel.VirtualizationMode="Standard"> |
| | | <ListView.View> |
| | | <GridView AllowsColumnReorder="False"> |
| | | <GridViewColumn Width="90" Header="æ¶é´"> |
| | | <GridViewColumn.CellTemplate> |
| | | <DataTemplate> |
| | | <Border Style="{StaticResource CellBorder}"> |
| | | <TextBlock Style="{StaticResource ListTableTextBlock}" |
| | | Text="{Binding Timestamp, StringFormat=HH:mm:ss.fff}"/> |
| | | </Border> |
| | | </DataTemplate> |
| | | </GridViewColumn.CellTemplate> |
| | | </GridViewColumn> |
| | | <GridViewColumn Width="80" Header="帧ID"> |
| | | <GridViewColumn.CellTemplate> |
| | | <DataTemplate> |
| | | <Border Style="{StaticResource CellBorder}"> |
| | | <TextBlock Style="{StaticResource ListTableTextBlock}" |
| | | Text="{Binding FrameId}"/> |
| | | </Border> |
| | | </DataTemplate> |
| | | </GridViewColumn.CellTemplate> |
| | | </GridViewColumn> |
| | | <GridViewColumn Width="50" Header="DLC"> |
| | | <GridViewColumn.CellTemplate> |
| | | <DataTemplate> |
| | | <Border Style="{StaticResource CellBorder}"> |
| | | <TextBlock Style="{StaticResource ListTableTextBlock}" |
| | | Text="{Binding Dlc}"/> |
| | | </Border> |
| | | </DataTemplate> |
| | | </GridViewColumn.CellTemplate> |
| | | </GridViewColumn> |
| | | <GridViewColumn Width="200" Header="æ°æ®"> |
| | | <GridViewColumn.CellTemplate> |
| | | <DataTemplate> |
| | | <Border Style="{StaticResource CellBorder}"> |
| | | <TextBlock Style="{StaticResource ListTableTextBlock}" |
| | | Text="{Binding Data}" FontFamily="Consolas"/> |
| | | </Border> |
| | | </DataTemplate> |
| | | </GridViewColumn.CellTemplate> |
| | | </GridViewColumn> |
| | | <GridViewColumn Width="50" Header="æ¹å"> |
| | | <GridViewColumn.CellTemplate> |
| | | <DataTemplate> |
| | | <Border Style="{StaticResource CellBorder}"> |
| | | <TextBlock Text="{Binding Direction}"> |
| | | <TextBlock.Style> |
| | | <Style TargetType="TextBlock" BasedOn="{StaticResource ListTableTextBlock}"> |
| | | <Style.Triggers> |
| | | <DataTrigger Binding="{Binding Direction}" Value="TX"> |
| | | <Setter Property="Foreground" Value="#2196F3"/> |
| | | </DataTrigger> |
| | | <DataTrigger Binding="{Binding Direction}" Value="RX"> |
| | | <Setter Property="Foreground" Value="#4CAF50"/> |
| | | </DataTrigger> |
| | | </Style.Triggers> |
| | | </Style> |
| | | </TextBlock.Style> |
| | | </TextBlock> |
| | | </Border> |
| | | </DataTemplate> |
| | | </GridViewColumn.CellTemplate> |
| | | </GridViewColumn> |
| | | <GridViewColumn Width="100" Header="æ¥æº"> |
| | | <GridViewColumn.CellTemplate> |
| | | <DataTemplate> |
| | | <Border Style="{StaticResource CellBorder}"> |
| | | <TextBlock Style="{StaticResource ListTableTextBlock}" |
| | | Text="{Binding Source}"/> |
| | | </Border> |
| | | </DataTemplate> |
| | | </GridViewColumn.CellTemplate> |
| | | </GridViewColumn> |
| | | </GridView> |
| | | </ListView.View> |
| | | </ListView> |
| | | </Grid> |
| | | </Border> |
| | | </Grid> |
| | | </UserControl> |
| New file |
| | |
| | | using Aging.Infrastructure.Drivers; |
| | | using log4net; |
| | | using Plugin.DeviceDebug.Entity; |
| | | using System; |
| | | using System.Collections.ObjectModel; |
| | | using System.Globalization; |
| | | using System.Linq; |
| | | using System.Threading; |
| | | using System.Windows; |
| | | using System.Windows.Controls; |
| | | using System.Windows.Media; |
| | | using System.Windows.Threading; |
| | | |
| | | namespace Plugin.DeviceDebug.Panels |
| | | { |
| | | /// <summary> |
| | | /// CAN 帧æ¾ç¤ºæ¨¡å |
| | | /// </summary> |
| | | public class CanFrameDisplay |
| | | { |
| | | public DateTime Timestamp { get; set; } |
| | | public string FrameId { get; set; } = string.Empty; |
| | | public int Dlc { get; set; } |
| | | public string Data { get; set; } = string.Empty; |
| | | public string Direction { get; set; } = string.Empty; // TX / RX |
| | | public string Source { get; set; } = string.Empty; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// åéé CAN è°è¯è§å¾ï¼æ¿è½½è¿æ¥æ§å¶/åé/æ¥æ¶è®°å½/ç¶æç»è®¡å
¨é¨é»è¾ï¼ã |
| | | /// ç± <see cref="CanDebugPanel"/> å¤éé壳æ Tab æç®¡ï¼ä¹å¯ç¬ç«ä½¿ç¨ï¼æ§å颿¿è¯ä¹ï¼ã |
| | | /// 驱å¨ç»ä¸ä¸º <see cref="CanDeviceDriver"/>ï¼Local/Broker å·®å¼å¯¹è§å¾å®å
¨éæã |
| | | /// </summary> |
| | | public partial class CanChannelView : UserControl |
| | | { |
| | | private static readonly ILog log = LogManager.GetLogger(typeof(CanChannelView)); |
| | | |
| | | /// <summary>æ¯å¦ä¸ºç»´æ¤æ¨¡å¼ï¼æ§å¶è¾å
¥å¯ç¨æ§ï¼</summary> |
| | | public static readonly DependencyProperty IsMaintenanceModeProperty = |
| | | DependencyProperty.Register(nameof(IsMaintenanceMode), typeof(bool), typeof(CanChannelView), |
| | | new PropertyMetadata(false)); |
| | | |
| | | public bool IsMaintenanceMode |
| | | { |
| | | get => (bool)GetValue(IsMaintenanceModeProperty); |
| | | set => SetValue(IsMaintenanceModeProperty, value); |
| | | } |
| | | |
| | | /// <summary>å½ä»¤æ§è¡äºä»¶</summary> |
| | | public event EventHandler<DebugCommand>? OnCommandExecute; |
| | | |
| | | /// <summary>æ¥æ¶å¸§å表</summary> |
| | | public ObservableCollection<CanFrameDisplay> ReceivedFrames { get; } = new(); |
| | | |
| | | /// <summary> |
| | | /// CAN 驱å¨ï¼ä¼å
å¤ç¨ DeviceManager 已注å驱å¨ï¼Broker å
±äº«è®¾å¤ä¸ºä»£ç驱å¨ï¼ï¼ |
| | | /// æ åèªå»ºç»ä¸é©±å¨ï¼Local TCP NodeChannel è¿æ¨¡æå¨ï¼ |
| | | /// </summary> |
| | | private Aging.Infrastructure.Contracts.IDeviceDriver? _driver; |
| | | |
| | | /// <summary>驱卿ææï¼å¤é¨æ³¨å
¥ç代ç驱å¨å½ DeviceManagerï¼æå¼æ¶ä¸å¾ Dispose</summary> |
| | | private bool _ownsDriver; |
| | | |
| | | /// <summary>å¤é¨å·²æ³¨å驱å¨ï¼å
±äº«è®¾å¤ç± DeviceDebug ä¼ å
¥ç»ä¸ CanDeviceDriverï¼ç¦æ¢èªå»ºç©çä¼è¯ï¼</summary> |
| | | public Aging.Infrastructure.Contracts.IDeviceDriver? ExistingDriver { get; set; } |
| | | |
| | | /// <summary>è½®è¯¢å®æ¶å¨ï¼ä»£ç驱å¨å
åºè¡¥æ¾æ¥æ¶å¸§ï¼</summary> |
| | | private DispatcherTimer? _pollTimer; |
| | | |
| | | private bool _isConnected; |
| | | |
| | | /// <summary>设å¤IDï¼ä» DeviceDebug ä¼ å
¥ï¼</summary> |
| | | public string DeviceId |
| | | { |
| | | get => _deviceId; |
| | | set |
| | | { |
| | | _deviceId = value; |
| | | if (!string.IsNullOrEmpty(value)) |
| | | { |
| | | UpdateDeviceIdDisplay(); |
| | | } |
| | | } |
| | | } |
| | | private string _deviceId = string.Empty; |
| | | |
| | | /// <summary>ä»è®¾å¤ Endpoint è§£æåºçæ»çº¿åç§°</summary> |
| | | public string InitialBusName { get; set; } |
| | | |
| | | /// <summary>ä»è®¾å¤ Endpoint è§£æåºçèç¹ç¼å·</summary> |
| | | public int? InitialNodeIndex { get; set; } |
| | | |
| | | /// <summary>æ¯å¦èªå¨è¿æ¥ï¼ä» DeviceDebug æå¼æ¶=trueï¼</summary> |
| | | public bool AutoConnectOnLoad { get; set; } |
| | | |
| | | public CanChannelView() |
| | | { |
| | | InitializeComponent(); |
| | | receiveList.ItemsSource = ReceivedFrames; |
| | | InitializePollTimer(); |
| | | Loaded += CanChannelView_Loaded; |
| | | } |
| | | |
| | | private void CanChannelView_Loaded(object sender, RoutedEventArgs e) |
| | | { |
| | | Loaded -= CanChannelView_Loaded; |
| | | |
| | | if (!string.IsNullOrEmpty(InitialBusName)) |
| | | busNameInput.Text = InitialBusName; |
| | | if (InitialNodeIndex.HasValue) |
| | | nodeIndexInput.Text = InitialNodeIndex.Value.ToString(); |
| | | |
| | | if (AutoConnectOnLoad) |
| | | { |
| | | Dispatcher.BeginInvoke(new Action(() => |
| | | { |
| | | try { DoConnect(); } |
| | | catch (Exception ex) { log.Warn($"èªå¨è¿æ¥å¤±è´¥: {ex.Message}"); } |
| | | }), DispatcherPriority.Background); |
| | | } |
| | | } |
| | | |
| | | private void UpdateDeviceIdDisplay() |
| | | { |
| | | if (!string.IsNullOrEmpty(_deviceId) && busNameInput != null) |
| | | log.Info($"[CanChannelView] å
³è设å¤: {_deviceId}"); |
| | | } |
| | | |
| | | private void InitializePollTimer() |
| | | { |
| | | _pollTimer = new DispatcherTimer { Interval = TimeSpan.FromMilliseconds(100) }; |
| | | _pollTimer.Tick += PollTimer_Tick; |
| | | } |
| | | |
| | | private void PollTimer_Tick(object? sender, EventArgs e) |
| | | { |
| | | if (!_isConnected || _driver == null) return; |
| | | try |
| | | { |
| | | // ç»è®¡æ¯ tick å·æ°ï¼STATUS æ¥è¯¢åæ¶è§¦å Broker 宿主æå¸¦åæ¨ï¼äºä»¶é¾è·¯ï¼ |
| | | UpdateStats(); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"è½®è¯¢æ´æ°å¤±è´¥: {ex.Message}"); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å
åºè¡¥æ¾ï¼ä»
å½äºä»¶é¾è·¯æªè¦çæ¶æå¨è°ç¨ï¼ï¼ç»ä¸é©±å¨å·²å¯¹ Local/Broker åæä¾ |
| | | /// DriverFrameReceived äºä»¶ï¼é¢æ¿é»è®¤åªèµ°äºä»¶æ¾ç¤ºï¼é¿å
ä¸è½®è¯¢åæ¥éå¤ã |
| | | /// </summary> |
| | | private void DrainBrokerMailbox() |
| | | { |
| | | string resp; |
| | | try |
| | | { |
| | | resp = _driver!.QueryAsync("RECV_ALL", CancellationToken.None).GetAwaiter().GetResult(); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Debug($"æ¥æ¶å
åºæ¥è¯¢å¤±è´¥ï¼ä¸å½±åäºä»¶é¾è·¯ï¼ä¸è½®éè¯ï¼: {ex.Message}"); |
| | | return; |
| | | } |
| | | |
| | | if (string.IsNullOrEmpty(resp) || !resp.StartsWith("RECV_ALL:")) return; |
| | | var head = resp.Substring("RECV_ALL:".Length); |
| | | var split = head.IndexOf(':'); |
| | | string body = split >= 0 ? head.Substring(split + 1) : ""; |
| | | if (!int.TryParse(split >= 0 ? head.Substring(0, split) : head, out int count) || count <= 0) return; |
| | | |
| | | foreach (var entry in body.Split('|')) |
| | | { |
| | | var f = entry.Split(':'); |
| | | if (f.Length < 2 || string.IsNullOrEmpty(f[0])) continue; |
| | | AddReceivedFrame(f[0], f[1], "RX", "BUS"); |
| | | } |
| | | } |
| | | |
| | | private void ConnectBtn_Click(object sender, RoutedEventArgs e) |
| | | { |
| | | try { DoConnect(); } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"CAN è¿æ¥å¤±è´¥: {ex.Message}", ex); |
| | | MessageBox.Show($"è¿æ¥å¤±è´¥: {ex.Message}", "é误", MessageBoxButton.OK, MessageBoxImage.Error); |
| | | UpdateConnectionStatus(false); |
| | | } |
| | | } |
| | | |
| | | private void DoConnect() |
| | | { |
| | | if (_isConnected) return; |
| | | |
| | | string busName = busNameInput.Text.Trim(); |
| | | if (!int.TryParse(nodeIndexInput.Text.Trim(), out int nodeIndex)) |
| | | throw new ArgumentException("èç¹ç¼å·æ ¼å¼é误"); |
| | | |
| | | string deviceId = string.IsNullOrEmpty(_deviceId) |
| | | ? $"CAN_Test_{nodeIndex}_{DateTime.Now:HHmmss}" |
| | | : _deviceId; |
| | | |
| | | if (ExistingDriver != null) |
| | | { |
| | | // å
±äº«/代ç设å¤ï¼å¤ç¨å®¿ä¸»éè·¯ï¼ä¸æ°å»ºæ¬å°ç©çä¼è¯ |
| | | _driver = ExistingDriver; |
| | | _ownsDriver = false; |
| | | if (!_driver.IsConnected) |
| | | _driver.ConnectAsync(CancellationToken.None).GetAwaiter().GetResult(); |
| | | // ç»ä¸é©±å¨å¯¹ Broker 乿便¥æ¶äºä»¶ï¼ç»å®¿ä¸»æå¸¦åæµï¼ï¼ä¸æ¬å°ä¸è´å°è®¢é
|
| | | if (_driver is CanDeviceDriver shared) |
| | | shared.DriverFrameReceived += OnDriverFrameReceived; |
| | | log.Info($"[CanChannelView] å¤ç¨å·²æ³¨å驱å¨: {deviceId} ({_driver.GetType().Name})"); |
| | | } |
| | | else |
| | | { |
| | | var adapter = new CanDeviceDriver(deviceId, $"{busName}:{nodeIndex}"); |
| | | adapter.DriverFrameReceived += OnDriverFrameReceived; |
| | | _driver = adapter; |
| | | _ownsDriver = true; |
| | | adapter.ConnectAsync(CancellationToken.None).GetAwaiter().GetResult(); |
| | | } |
| | | _isConnected = true; |
| | | |
| | | // 模æå¨æ¨¡å¼ä¸è¿æ¥åèªå¨å¯ç¨ç»´æ¤æ¨¡å¼ï¼å
许åéï¼ |
| | | IsMaintenanceMode = true; |
| | | if (maintenanceToggleBtn != null) |
| | | { |
| | | maintenanceToggleBtn.IsChecked = true; |
| | | maintenanceToggleBtn.IsEnabled = true; |
| | | } |
| | | |
| | | UpdateConnectionStatus(true); |
| | | _pollTimer?.Start(); |
| | | log.Info($"CAN 驱å¨å·²è¿æ¥: Bus={busName}, Node={nodeIndex}, DeviceId={deviceId}"); |
| | | } |
| | | |
| | | private void OnDriverFrameReceived(object? sender, CanSimulator.CanFrame frame) |
| | | { |
| | | try |
| | | { |
| | | AddReceivedFrame(frame.FrameIdHex, frame.DataHex, "RX", frame.SourceNodeId); |
| | | log.Debug($"[峿¶æ¾ç¤º] æ¥æ¶å¸§: {frame}"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"峿¶æ¾ç¤ºå¸§å¤±è´¥: {ex.Message}", ex); |
| | | } |
| | | } |
| | | |
| | | private void DisconnectBtn_Click(object sender, RoutedEventArgs e) |
| | | { |
| | | try |
| | | { |
| | | _pollTimer?.Stop(); |
| | | if (_driver != null) |
| | | { |
| | | if (_driver is CanDeviceDriver adapter) |
| | | adapter.DriverFrameReceived -= OnDriverFrameReceived; |
| | | _driver.DisconnectAsync().GetAwaiter().GetResult(); |
| | | if (_ownsDriver) |
| | | _driver.Dispose(); |
| | | } |
| | | _driver = null; |
| | | _ownsDriver = false; |
| | | _isConnected = false; |
| | | IsMaintenanceMode = false; |
| | | UpdateConnectionStatus(false); |
| | | log.Info("CAN 驱å¨å·²æå¼"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"CAN æå¼å¤±è´¥: {ex.Message}", ex); |
| | | } |
| | | } |
| | | |
| | | private void PromiscuousBtn_Click(object sender, RoutedEventArgs e) |
| | | { |
| | | if (!_isConnected || _driver == null) return; |
| | | try |
| | | { |
| | | _driver.QueryAsync("PROMISCUOUS", CancellationToken.None).GetAwaiter().GetResult(); |
| | | log.Info("å·²è®¾ç½®æ··ææ¨¡å¼ï¼æ¥æ¶ææå¸§ï¼"); |
| | | MessageBox.Show("å·²è®¾ç½®æ··ææ¨¡å¼ï¼å°æ¥æ¶ææ CAN 帧", "æç¤º", MessageBoxButton.OK, MessageBoxImage.Information); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"è®¾ç½®æ··ææ¨¡å¼å¤±è´¥: {ex.Message}"); |
| | | } |
| | | } |
| | | |
| | | private void MaintenanceToggleBtn_Click(object sender, RoutedEventArgs e) |
| | | { |
| | | bool isOn = maintenanceToggleBtn.IsChecked == true; |
| | | IsMaintenanceMode = isOn; |
| | | if (isOn) |
| | | { |
| | | maintenanceToggleBtn.Content = "ç»´æ¤æ¨¡å¼: å¼"; |
| | | maintenanceToggleBtn.Background = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#4CAF50")); |
| | | log.Info("ç»´æ¤æ¨¡å¼å·²å¼å¯ï¼å¯åé CAN 帧ï¼"); |
| | | } |
| | | else |
| | | { |
| | | maintenanceToggleBtn.Content = "ç»´æ¤æ¨¡å¼: å
³"; |
| | | maintenanceToggleBtn.Background = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#9E9E9E")); |
| | | log.Info("ç»´æ¤æ¨¡å¼å·²å
³éï¼åªè¯»çæ§ï¼"); |
| | | } |
| | | } |
| | | |
| | | private void AutoResponseToggleBtn_Click(object sender, RoutedEventArgs e) |
| | | { |
| | | if (!_isConnected || _driver == null) return; |
| | | try |
| | | { |
| | | bool isOn = autoResponseToggleBtn.IsChecked == true; |
| | | string cmd = isOn ? "AUTO_RESPONSE:ON" : "AUTO_RESPONSE:OFF"; |
| | | _driver.QueryAsync(cmd, CancellationToken.None).GetAwaiter().GetResult(); |
| | | |
| | | if (isOn) |
| | | { |
| | | autoResponseToggleBtn.Content = "èªå¨ååº: å¼"; |
| | | autoResponseToggleBtn.Background = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#FF9800")); |
| | | log.Info("èªå¨ååºæ¨¡å¼å·²å¼å¯ï¼æ¶å°å¸§å°èªå¨åå¤ï¼"); |
| | | } |
| | | else |
| | | { |
| | | autoResponseToggleBtn.Content = "èªå¨ååº: å
³"; |
| | | autoResponseToggleBtn.Background = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#9E9E9E")); |
| | | log.Info("èªå¨ååºæ¨¡å¼å·²å
³é"); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"忢èªå¨ååºæ¨¡å¼å¤±è´¥: {ex.Message}"); |
| | | MessageBox.Show($"åæ¢å¤±è´¥: {ex.Message}", "é误", MessageBoxButton.OK, MessageBoxImage.Error); |
| | | } |
| | | } |
| | | |
| | | private void UpdateConnectionStatus(bool connected) |
| | | { |
| | | _isConnected = connected; |
| | | if (connected) |
| | | { |
| | | statusIndicator.Fill = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#4CAF50")); |
| | | statusText.Text = "å·²è¿æ¥"; |
| | | connectBtn.IsEnabled = false; |
| | | disconnectBtn.IsEnabled = true; |
| | | promiscuousBtn.IsEnabled = true; |
| | | maintenanceToggleBtn.IsEnabled = true; |
| | | autoResponseToggleBtn.IsEnabled = true; |
| | | busNameInput.IsEnabled = false; |
| | | nodeIndexInput.IsEnabled = false; |
| | | } |
| | | else |
| | | { |
| | | statusIndicator.Fill = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#9E9E9E")); |
| | | statusText.Text = "æªè¿æ¥"; |
| | | connectBtn.IsEnabled = true; |
| | | disconnectBtn.IsEnabled = false; |
| | | promiscuousBtn.IsEnabled = false; |
| | | maintenanceToggleBtn.IsEnabled = false; |
| | | autoResponseToggleBtn.IsEnabled = false; |
| | | busNameInput.IsEnabled = true; |
| | | nodeIndexInput.IsEnabled = true; |
| | | } |
| | | } |
| | | |
| | | private void UpdateStats() |
| | | { |
| | | if (_driver == null) return; |
| | | try |
| | | { |
| | | var response = _driver.QueryAsync("STATUS", CancellationToken.None).GetAwaiter().GetResult(); |
| | | statsText.Text = $"TX: {GetStatValue(response, "Tx")} RX: {GetStatValue(response, "Rx")} Err: {GetStatValue(response, "Err")}"; |
| | | } |
| | | catch { /* 忽ç¥ç»è®¡æ´æ°å¤±è´¥ */ } |
| | | } |
| | | |
| | | private string GetStatValue(string statusStr, string key) |
| | | { |
| | | try |
| | | { |
| | | foreach (var part in statusStr.Split(',')) |
| | | { |
| | | var kv = part.Trim().Split('='); |
| | | if (kv.Length == 2 && kv[0].Trim() == key) |
| | | return kv[1].Trim(); |
| | | } |
| | | } |
| | | catch { } |
| | | return "0"; |
| | | } |
| | | |
| | | public void AddReceivedFrame(string frameId, string data, string direction = "RX", string source = "") |
| | | { |
| | | try |
| | | { |
| | | var frame = new CanFrameDisplay |
| | | { |
| | | Timestamp = DateTime.Now, |
| | | FrameId = frameId, |
| | | Dlc = data.Split(new[] { ' ', '-' }, StringSplitOptions.RemoveEmptyEntries).Length, |
| | | Data = data, |
| | | Direction = direction, |
| | | Source = source |
| | | }; |
| | | |
| | | // å¿
é¡»ç¨å¼æ¥ BeginInvokeï¼æ¨é常å¨é©±å¨åå°è¯»å¾ªç¯çº¿ç¨è§¦åï¼è¥ç¨åæ¥ Invokeï¼ |
| | | // ä¼ä¸âUI 线ç¨é»å¡çå¾
è¯¥è¯»å¾ªç¯æé RPC ååºâå½¢æç¯å½¢çå¾
â å¼å¯åºçå¨åæ¨é骤å¢å³å»ç»ã |
| | | if (Application.Current == null) return; |
| | | Application.Current.Dispatcher.BeginInvoke(new Action(() => |
| | | { |
| | | ReceivedFrames.Insert(0, frame); |
| | | while (ReceivedFrames.Count > 500) |
| | | ReceivedFrames.RemoveAt(ReceivedFrames.Count - 1); |
| | | })); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"æ·»å æ¥æ¶å¸§å¤±è´¥: {ex.Message}", ex); |
| | | } |
| | | } |
| | | |
| | | private void SendBtn_Click(object sender, RoutedEventArgs e) |
| | | { |
| | | try |
| | | { |
| | | if (!IsMaintenanceMode) |
| | | { |
| | | MessageBox.Show("å½å为åªè¯»æ¨¡å¼ï¼æ æ³åéæ°æ®", "æç¤º", MessageBoxButton.OK, MessageBoxImage.Warning); |
| | | return; |
| | | } |
| | | if (!_isConnected || _driver == null) |
| | | { |
| | | MessageBox.Show("请å
è¿æ¥ CAN æ»çº¿", "æç¤º", MessageBoxButton.OK, MessageBoxImage.Warning); |
| | | return; |
| | | } |
| | | |
| | | string frameIdStr = frameIdInput.Text.Trim(); |
| | | string dataStr = dataInput.Text.Trim(); |
| | | uint frameId = CanSimulator.CanFrame.ParseFrameId(frameIdStr); |
| | | byte[] dataBytes = CanSimulator.CanFrame.ParseData(dataStr); |
| | | if (dataBytes.Length > 8) |
| | | { |
| | | MessageBox.Show("æ°æ®é¿åº¦ä¸è½è¶
è¿ 8 åè", "é误", MessageBoxButton.OK, MessageBoxImage.Error); |
| | | return; |
| | | } |
| | | |
| | | string command = $"SEND:{frameIdStr}:{dataStr}"; |
| | | var response = _driver.SendCommandAsync(command, CancellationToken.None).GetAwaiter().GetResult(); |
| | | AddReceivedFrame($"0x{frameId:X3}", BitConverter.ToString(dataBytes).Replace("-", " "), "TX", "LOCAL"); |
| | | log.Info($"åé CAN 帧: ID=0x{frameId:X3}, Data={BitConverter.ToString(dataBytes)}, Response={response}"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"åé CAN 帧失败: {ex.Message}", ex); |
| | | MessageBox.Show($"åé失败: {ex.Message}", "é误", MessageBoxButton.OK, MessageBoxImage.Error); |
| | | } |
| | | } |
| | | |
| | | /// <summary>ä¾å¤éé壳å¨å
³éæ ç¾æ¶å®å
¨æå¼æ¬ééï¼ä¸å¼¹ UI é误ï¼ã</summary> |
| | | public void DisconnectInternalSafe() |
| | | { |
| | | try |
| | | { |
| | | if (_isConnected) DisconnectBtn_Click(this, new RoutedEventArgs()); |
| | | _pollTimer?.Stop(); |
| | | } |
| | | catch (Exception ex) { log.Warn($"ééå®å
¨æå¼å¼å¸¸: {ex.Message}"); } |
| | | } |
| | | |
| | | private void ClearBtn_Click(object sender, RoutedEventArgs e) |
| | | { |
| | | try |
| | | { |
| | | ReceivedFrames.Clear(); |
| | | log.Info("æ¸
空 CAN æ¥æ¶è®°å½"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"æ¸
ç©ºæ¥æ¶è®°å½å¤±è´¥: {ex.Message}", ex); |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" |
| | | xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" |
| | | xmlns:d="http://schemas.microsoft.com/expression/blend/2008" |
| | | xmlns:ui="clr-namespace:HMI.UI;assembly=HMI.UI" |
| | | xmlns:dp="clr-namespace:HMI.UI.DpUtil;assembly=HMI.UI" |
| | | mc:Ignorable="d" |
| | | d:DesignHeight="700" d:DesignWidth="700"> |
| | | <UserControl.Resources> |
| | | <ResourceDictionary> |
| | | <ResourceDictionary.MergedDictionaries> |
| | | <ResourceDictionary Source="/HMI.UI;component/Style/PanuonListView.xaml"/> |
| | | </ResourceDictionary.MergedDictionaries> |
| | | </ResourceDictionary> |
| | | </UserControl.Resources> |
| | | |
| | | <Grid dp:GridHelper.Space="10" Margin="10"> |
| | | <Grid.RowDefinitions> |
| | | <RowDefinition Height="Auto"/> |
| | | <RowDefinition Height="Auto"/> |
| | | <RowDefinition Height="Auto"/> |
| | | <RowDefinition Height="*"/> |
| | | </Grid.RowDefinitions> |
| | | |
| | | <!-- æ é¢ --> |
| | | <Border Grid.Row="0" Background="#FF9800" CornerRadius="4" Padding="12,8"> |
| | | <TextBlock Text="CAN é讯è°è¯é¢æ¿" FontSize="16" FontWeight="Bold" Foreground="White"/> |
| | | </Border> |
| | | |
| | | <!-- 模æå¨è¿æ¥æ§å¶åº --> |
| | | <Border Grid.Row="1" BorderBrush="#DDD" BorderThickness="1" CornerRadius="4" Padding="12" Background="#FAFAFA"> |
| | | <Grid dp:GridHelper.Space="8"> |
| | | <Grid.RowDefinitions> |
| | | <RowDefinition Height="Auto"/> |
| | | <RowDefinition Height="Auto"/> |
| | | </Grid.RowDefinitions> |
| | | <Grid.ColumnDefinitions> |
| | | <ColumnDefinition Width="80"/> |
| | | <ColumnDefinition Width="150"/> |
| | | <ColumnDefinition Width="80"/> |
| | | <ColumnDefinition Width="100"/> |
| | | <ColumnDefinition Width="*"/> |
| | | <ColumnDefinition Width="Auto"/> |
| | | </Grid.ColumnDefinitions> |
| | | |
| | | <!-- 第ä¸è¡ï¼æ»çº¿åç§°åèç¹ç¼å· --> |
| | | <TextBlock Grid.Row="0" Grid.Column="0" Text="æ»çº¿åç§°:" VerticalAlignment="Center" FontWeight="SemiBold"/> |
| | | <TextBox Grid.Row="0" Grid.Column="1" x:Name="busNameInput" |
| | | VerticalContentAlignment="Center" Padding="6,4" Text="CAN_BUS_1"/> |
| | | |
| | | <TextBlock Grid.Row="0" Grid.Column="2" Text="èç¹ç¼å·:" VerticalAlignment="Center" FontWeight="SemiBold" Margin="8,0,0,0"/> |
| | | <TextBox Grid.Row="0" Grid.Column="3" x:Name="nodeIndexInput" |
| | | VerticalContentAlignment="Center" Padding="6,4" Text="0"/> |
| | | |
| | | <Button Grid.Row="0" Grid.Column="5" x:Name="connectBtn" Content="è¿æ¥" Width="80" Height="30" |
| | | Click="ConnectBtn_Click" |
| | | Background="#4CAF50" Foreground="White" BorderThickness="0" Cursor="Hand" FontWeight="SemiBold"/> |
| | | |
| | | <!-- 第äºè¡ï¼ç¶ææ¾ç¤ºåæ§å¶æé® --> |
| | | <TextBlock Grid.Row="1" Grid.Column="0" Text="ç¶æ:" VerticalAlignment="Center" FontWeight="SemiBold"/> |
| | | <StackPanel Grid.Row="1" Grid.Column="1" Grid.ColumnSpan="2" Orientation="Horizontal" VerticalAlignment="Center"> |
| | | <Ellipse x:Name="statusIndicator" Width="12" Height="12" Fill="#9E9E9E" Margin="0,0,6,0"/> |
| | | <TextBlock x:Name="statusText" Text="æªè¿æ¥" VerticalAlignment="Center"/> |
| | | </StackPanel> |
| | | |
| | | <TextBlock Grid.Row="1" Grid.Column="3" Text="ç»è®¡:" VerticalAlignment="Center" FontWeight="SemiBold" Margin="8,0,0,0"/> |
| | | <TextBlock Grid.Row="1" Grid.Column="4" x:Name="statsText" Text="TX: 0 RX: 0" |
| | | VerticalAlignment="Center" Foreground="#666"/> |
| | | |
| | | <StackPanel Grid.Row="1" Grid.Column="5" Orientation="Horizontal"> |
| | | <ToggleButton x:Name="autoResponseToggleBtn" Content="èªå¨ååº: å
³" Width="100" Height="28" Margin="0,0,4,0" |
| | | Click="AutoResponseToggleBtn_Click" IsEnabled="False" IsChecked="False" |
| | | Background="#9E9E9E" Foreground="White" BorderThickness="0" Cursor="Hand" FontWeight="SemiBold"/> |
| | | <ToggleButton x:Name="maintenanceToggleBtn" Content="ç»´æ¤æ¨¡å¼: å¼" Width="100" Height="28" Margin="0,0,4,0" |
| | | Click="MaintenanceToggleBtn_Click" IsEnabled="False" IsChecked="True" |
| | | Background="#4CAF50" Foreground="White" BorderThickness="0" Cursor="Hand" FontWeight="SemiBold"/> |
| | | <Button x:Name="disconnectBtn" Content="æå¼" Width="60" Height="28" Margin="0,0,4,0" |
| | | Click="DisconnectBtn_Click" IsEnabled="False" |
| | | Background="#F44336" Foreground="White" BorderThickness="0" Cursor="Hand"/> |
| | | <Button x:Name="promiscuousBtn" Content="æ··ææ¨¡å¼" Width="80" Height="28" |
| | | Click="PromiscuousBtn_Click" IsEnabled="False" |
| | | Background="#2196F3" Foreground="White" BorderThickness="0" Cursor="Hand"/> |
| | | </StackPanel> |
| | | </Grid> |
| | | </Border> |
| | | |
| | | <!-- åéåº --> |
| | | <Border Grid.Row="2" BorderBrush="#DDD" BorderThickness="1" CornerRadius="4" Padding="12"> |
| | | <Grid dp:GridHelper.Space="8"> |
| | | <Grid.RowDefinitions> |
| | | <RowDefinition Height="Auto"/> |
| | | <RowDefinition Height="Auto"/> |
| | | </Grid.RowDefinitions> |
| | | <Grid.ColumnDefinitions> |
| | | <ColumnDefinition Width="80"/> |
| | | <ColumnDefinition Width="*"/> |
| | | <ColumnDefinition Width="Auto"/> |
| | | </Grid.ColumnDefinitions> |
| | | |
| | | <!-- 帧ID --> |
| | | <TextBlock Grid.Row="0" Grid.Column="0" Text="帧 ID:" VerticalAlignment="Center" FontWeight="Bold"/> |
| | | <TextBox Grid.Row="0" Grid.Column="1" x:Name="frameIdInput" |
| | | IsEnabled="{Binding IsMaintenanceMode, RelativeSource={RelativeSource AncestorType=UserControl}}" |
| | | VerticalContentAlignment="Center" Padding="6,4" Text="0x100"/> |
| | | |
| | | <!-- æ°æ® --> |
| | | <TextBlock Grid.Row="1" Grid.Column="0" Text="æ°æ®(Hex):" VerticalAlignment="Center" FontWeight="Bold"/> |
| | | <TextBox Grid.Row="1" Grid.Column="1" x:Name="dataInput" |
| | | IsEnabled="{Binding IsMaintenanceMode, RelativeSource={RelativeSource AncestorType=UserControl}}" |
| | | VerticalContentAlignment="Center" Padding="6,4" Text="00 00 00 00 00 00 00 00"/> |
| | | |
| | | <!-- åéæé® --> |
| | | <Button Grid.Row="1" Grid.Column="2" x:Name="sendBtn" Content="åé" Width="80" Height="30" |
| | | IsEnabled="{Binding IsMaintenanceMode, RelativeSource={RelativeSource AncestorType=UserControl}}" |
| | | Click="SendBtn_Click" |
| | | Background="#FF9800" Foreground="White" BorderThickness="0" Cursor="Hand" FontWeight="SemiBold"/> |
| | | </Grid> |
| | | </Border> |
| | | |
| | | <!-- æ¥æ¶åº --> |
| | | <Border Grid.Row="3" BorderBrush="#DDD" BorderThickness="1" CornerRadius="4"> |
| | | <Grid> |
| | | d:DesignHeight="720" d:DesignWidth="720"> |
| | | <Grid Margin="6"> |
| | | <Grid.RowDefinitions> |
| | | <RowDefinition Height="Auto"/> |
| | | <RowDefinition Height="*"/> |
| | | </Grid.RowDefinitions> |
| | | |
| | | <DockPanel Grid.Row="0" Margin="8,6"> |
| | | <Button x:Name="clearBtn" Content="æ¸
空" Padding="12,4" DockPanel.Dock="Right" |
| | | Click="ClearBtn_Click" |
| | | <!-- ééå·¥å
·æ¡ --> |
| | | <Border Grid.Row="0" Background="#F5F5F5" BorderBrush="#DDD" BorderThickness="0,0,0,1" Padding="6,4"> |
| | | <StackPanel Orientation="Horizontal"> |
| | | <Button x:Name="addChannelBtn" Content="+ æ·»å éé" Width="100" Height="26" Margin="0,0,6,0" |
| | | Click="AddChannelBtn_Click" |
| | | Background="#2196F3" Foreground="White" BorderThickness="0" Cursor="Hand" FontWeight="SemiBold"/> |
| | | <Button x:Name="closeChannelBtn" Content="å
³éå½åéé" Width="110" Height="26" |
| | | Click="CloseChannelBtn_Click" |
| | | Background="#9E9E9E" Foreground="White" BorderThickness="0" Cursor="Hand"/> |
| | | <TextBlock Text="æ¥æ¶è®°å½" FontWeight="Bold" FontSize="14" VerticalAlignment="Center"/> |
| | | </DockPanel> |
| | | </StackPanel> |
| | | </Border> |
| | | |
| | | <ListView Grid.Row="1" x:Name="receiveList" |
| | | Style="{StaticResource DefaultListTable}" |
| | | VirtualizingPanel.IsVirtualizing="True" |
| | | VirtualizingPanel.VirtualizationMode="Standard"> |
| | | <ListView.View> |
| | | <GridView AllowsColumnReorder="False"> |
| | | <GridViewColumn Width="90" Header="æ¶é´"> |
| | | <GridViewColumn.CellTemplate> |
| | | <DataTemplate> |
| | | <Border Style="{StaticResource CellBorder}"> |
| | | <TextBlock Style="{StaticResource ListTableTextBlock}" |
| | | Text="{Binding Timestamp, StringFormat=HH:mm:ss.fff}"/> |
| | | </Border> |
| | | </DataTemplate> |
| | | </GridViewColumn.CellTemplate> |
| | | </GridViewColumn> |
| | | <GridViewColumn Width="80" Header="帧ID"> |
| | | <GridViewColumn.CellTemplate> |
| | | <DataTemplate> |
| | | <Border Style="{StaticResource CellBorder}"> |
| | | <TextBlock Style="{StaticResource ListTableTextBlock}" |
| | | Text="{Binding FrameId}"/> |
| | | </Border> |
| | | </DataTemplate> |
| | | </GridViewColumn.CellTemplate> |
| | | </GridViewColumn> |
| | | <GridViewColumn Width="50" Header="DLC"> |
| | | <GridViewColumn.CellTemplate> |
| | | <DataTemplate> |
| | | <Border Style="{StaticResource CellBorder}"> |
| | | <TextBlock Style="{StaticResource ListTableTextBlock}" |
| | | Text="{Binding Dlc}"/> |
| | | </Border> |
| | | </DataTemplate> |
| | | </GridViewColumn.CellTemplate> |
| | | </GridViewColumn> |
| | | <GridViewColumn Width="200" Header="æ°æ®"> |
| | | <GridViewColumn.CellTemplate> |
| | | <DataTemplate> |
| | | <Border Style="{StaticResource CellBorder}"> |
| | | <TextBlock Style="{StaticResource ListTableTextBlock}" |
| | | Text="{Binding Data}" FontFamily="Consolas"/> |
| | | </Border> |
| | | </DataTemplate> |
| | | </GridViewColumn.CellTemplate> |
| | | </GridViewColumn> |
| | | <GridViewColumn Width="50" Header="æ¹å"> |
| | | <GridViewColumn.CellTemplate> |
| | | <DataTemplate> |
| | | <Border Style="{StaticResource CellBorder}"> |
| | | <TextBlock Text="{Binding Direction}"> |
| | | <TextBlock.Style> |
| | | <Style TargetType="TextBlock" BasedOn="{StaticResource ListTableTextBlock}"> |
| | | <Style.Triggers> |
| | | <DataTrigger Binding="{Binding Direction}" Value="TX"> |
| | | <Setter Property="Foreground" Value="#2196F3"/> |
| | | </DataTrigger> |
| | | <DataTrigger Binding="{Binding Direction}" Value="RX"> |
| | | <Setter Property="Foreground" Value="#4CAF50"/> |
| | | </DataTrigger> |
| | | </Style.Triggers> |
| | | </Style> |
| | | </TextBlock.Style> |
| | | </TextBlock> |
| | | </Border> |
| | | </DataTemplate> |
| | | </GridViewColumn.CellTemplate> |
| | | </GridViewColumn> |
| | | <GridViewColumn Width="100" Header="æ¥æº"> |
| | | <GridViewColumn.CellTemplate> |
| | | <DataTemplate> |
| | | <Border Style="{StaticResource CellBorder}"> |
| | | <TextBlock Style="{StaticResource ListTableTextBlock}" |
| | | Text="{Binding Source}"/> |
| | | </Border> |
| | | </DataTemplate> |
| | | </GridViewColumn.CellTemplate> |
| | | </GridViewColumn> |
| | | </GridView> |
| | | </ListView.View> |
| | | </ListView> |
| | | </Grid> |
| | | </Border> |
| | | <!-- å¤ééæ ç¾é¡µ --> |
| | | <TabControl Grid.Row="1" x:Name="channelTabs" Background="White" BorderThickness="0"/> |
| | | </Grid> |
| | | </UserControl> |
| | |
| | | using Aging.Infrastructure.Drivers; |
| | | using log4net; |
| | | using Plugin.DeviceDebug.Entity; |
| | | using System; |
| | | using System.Collections.ObjectModel; |
| | | using System.Globalization; |
| | | using System.Linq; |
| | | using System.Threading; |
| | | using System.Windows; |
| | | using System.Windows.Controls; |
| | | using System.Windows.Media; |
| | | using System.Windows.Threading; |
| | | |
| | | namespace Plugin.DeviceDebug.Panels |
| | | { |
| | | /// <summary> |
| | | /// CAN 帧æ¾ç¤ºæ¨¡å |
| | | /// </summary> |
| | | public class CanFrameDisplay |
| | | { |
| | | public DateTime Timestamp { get; set; } |
| | | public string FrameId { get; set; } = string.Empty; |
| | | public int Dlc { get; set; } |
| | | public string Data { get; set; } = string.Empty; |
| | | public string Direction { get; set; } = string.Empty; // TX / RX |
| | | public string Source { get; set; } = string.Empty; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// CanDebugPanel.xaml ç交äºé»è¾ |
| | | /// CAN è°è¯é¢æ¿å¤éé壳ï¼ä»¥ TabControl æ¿è½½è¥å¹² <see cref="CanChannelView"/>ï¼ |
| | | /// æ¯æåå±å¹¶åå¤ä¸ª CAN ééç¬ç«æ¶åï¼éªæ¶åºæ¯ 4ï¼ã |
| | | /// 对å¤ä¿æä¸æ§å颿¿ä¸è´ç屿§å¥çº¦ï¼DeviceId/InitialBusName/InitialNodeIndex/ |
| | | /// AutoConnectOnLoad/ExistingDriver/IsMaintenanceMode/OnCommandExecuteï¼ï¼ |
| | | /// DeviceDebug éè®¾å¤æ¶è¿äºé
置被转åå°"设å¤éé"ï¼é¦ä¸ª Tabï¼ã |
| | | /// </summary> |
| | | public partial class CanDebugPanel : UserControl |
| | | { |
| | | private static readonly ILog log = LogManager.GetLogger(typeof(CanDebugPanel)); |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦ä¸ºç»´æ¤æ¨¡å¼ï¼æ§å¶è¾å
¥å¯ç¨æ§ï¼ |
| | | /// </summary> |
| | | public static readonly DependencyProperty IsMaintenanceModeProperty = |
| | | DependencyProperty.Register(nameof(IsMaintenanceMode), typeof(bool), typeof(CanDebugPanel), |
| | | new PropertyMetadata(false)); |
| | | new PropertyMetadata(false, OnMaintenanceModeChanged)); |
| | | |
| | | public bool IsMaintenanceMode |
| | | { |
| | |
| | | set => SetValue(IsMaintenanceModeProperty, value); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å½ä»¤æ§è¡äºä»¶ |
| | | /// </summary> |
| | | private static void OnMaintenanceModeChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) |
| | | { |
| | | var panel = (CanDebugPanel)d; |
| | | if (panel._deviceChannel != null) |
| | | panel._deviceChannel.IsMaintenanceMode = (bool)e.NewValue; |
| | | } |
| | | |
| | | /// <summary>å½ä»¤æ§è¡äºä»¶ï¼ä»»ä¸éé触åå䏿ï¼ä¾ DeviceDebug ç»ä¸å¤çï¼</summary> |
| | | public event EventHandler<DebugCommand>? OnCommandExecute; |
| | | |
| | | /// <summary> |
| | | /// æ¥æ¶å¸§å表 |
| | | /// </summary> |
| | | public ObservableCollection<CanFrameDisplay> ReceivedFrames { get; } = new(); |
| | | private CanChannelView? _deviceChannel; |
| | | private int _manualSeq; |
| | | |
| | | /// <summary> |
| | | /// CAN 驱å¨éé
å¨ |
| | | /// </summary> |
| | | private CanDriverAdapter? _driver; |
| | | |
| | | /// <summary> |
| | | /// è½®è¯¢å®æ¶å¨ï¼ç¨äºæ£æ¥æ¥æ¶é®ç®±ï¼ |
| | | /// </summary> |
| | | private DispatcherTimer? _pollTimer; |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦å·²è¿æ¥ |
| | | /// </summary> |
| | | private bool _isConnected; |
| | | |
| | | /// <summary> |
| | | /// 设å¤IDï¼ä» DeviceDebug ä¼ å
¥ï¼é¢æ¿èªå¨æ¼æ¥ deviceIdï¼ |
| | | /// </summary> |
| | | public string DeviceId |
| | | { |
| | | get => _deviceId; |
| | | set |
| | | { |
| | | _deviceId = value; |
| | | if (!string.IsNullOrEmpty(value)) |
| | | { |
| | | // å°è®¾å¤IDåç¼æ¼æ¥å°é»è®¤è®¾å¤æ è¯ä¸ï¼é¿å
䏿¨¡æå¨é¢æ¿éå |
| | | UpdateDeviceIdDisplay(); |
| | | } |
| | | } |
| | | } |
| | | // å¾
转åå°è®¾å¤ééçé
ç½®ï¼å¯è½æ©äºééåå»ºï¼ |
| | | private string _deviceId = string.Empty; |
| | | |
| | | /// <summary> |
| | | /// ä»è®¾å¤ Endpoint è§£æåºçæ»çº¿åç§° |
| | | /// </summary> |
| | | public string InitialBusName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ä»è®¾å¤ Endpoint è§£æåºçèç¹ç¼å· |
| | | /// </summary> |
| | | public int? InitialNodeIndex { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦èªå¨è¿æ¥ï¼ä» DeviceDebug æå¼æ¶=trueï¼ |
| | | /// </summary> |
| | | public bool AutoConnectOnLoad { get; set; } |
| | | private string _initialBusName; |
| | | private int? _initialNodeIndex; |
| | | private bool _autoConnectOnLoad; |
| | | private Aging.Infrastructure.Contracts.IDeviceDriver? _existingDriver; |
| | | |
| | | public CanDebugPanel() |
| | | { |
| | | InitializeComponent(); |
| | | receiveList.ItemsSource = ReceivedFrames; |
| | | InitializePollTimer(); |
| | | Loaded += CanDebugPanel_Loaded; |
| | | } |
| | | |
| | | private void CanDebugPanel_Loaded(object sender, RoutedEventArgs e) |
| | | /// <summary>设å¤IDï¼è½¬åå°è®¾å¤ééï¼</summary> |
| | | public string DeviceId |
| | | { |
| | | Loaded -= CanDebugPanel_Loaded; |
| | | |
| | | // ä»è®¾å¤ä¿¡æ¯åå§åæ»çº¿/èç¹è¾å
¥ |
| | | if (!string.IsNullOrEmpty(InitialBusName)) |
| | | { |
| | | busNameInput.Text = InitialBusName; |
| | | } |
| | | if (InitialNodeIndex.HasValue) |
| | | { |
| | | nodeIndexInput.Text = InitialNodeIndex.Value.ToString(); |
| | | get => _deviceId; |
| | | set { _deviceId = value; EnsureDeviceChannel().DeviceId = value; } |
| | | } |
| | | |
| | | // èªå¨è¿æ¥ |
| | | if (AutoConnectOnLoad) |
| | | /// <summary>æ»çº¿åç§°ï¼è½¬åå°è®¾å¤ééï¼</summary> |
| | | public string InitialBusName |
| | | { |
| | | Dispatcher.BeginInvoke(new Action(() => |
| | | { |
| | | try { DoConnect(); } |
| | | catch (Exception ex) { log.Warn($"èªå¨è¿æ¥å¤±è´¥: {ex.Message}"); } |
| | | }), DispatcherPriority.Background); |
| | | } |
| | | get => _initialBusName; |
| | | set { _initialBusName = value; EnsureDeviceChannel().InitialBusName = value; } |
| | | } |
| | | |
| | | private void UpdateDeviceIdDisplay() |
| | | /// <summary>èç¹ç¼å·ï¼è½¬åå°è®¾å¤ééï¼</summary> |
| | | public int? InitialNodeIndex |
| | | { |
| | | if (!string.IsNullOrEmpty(_deviceId) && busNameInput != null) |
| | | { |
| | | // ä¿çé»è®¤æ»çº¿åï¼ä»
è®°å½ deviceId 以便¥å¿ä½¿ç¨ |
| | | log.Info($"[CanDebugPanel] å
³è设å¤: {_deviceId}"); |
| | | } |
| | | get => _initialNodeIndex; |
| | | set { _initialNodeIndex = value; EnsureDeviceChannel().InitialNodeIndex = value; } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// åå§åè½®è¯¢å®æ¶å¨ |
| | | /// </summary> |
| | | private void InitializePollTimer() |
| | | /// <summary>å è½½å³èªå¨è¿æ¥ï¼è½¬åå°è®¾å¤ééï¼</summary> |
| | | public bool AutoConnectOnLoad |
| | | { |
| | | _pollTimer = new DispatcherTimer |
| | | { |
| | | Interval = TimeSpan.FromMilliseconds(100) // 100ms è½®è¯¢ä¸æ¬¡ |
| | | }; |
| | | _pollTimer.Tick += PollTimer_Tick; |
| | | get => _autoConnectOnLoad; |
| | | set { _autoConnectOnLoad = value; EnsureDeviceChannel().AutoConnectOnLoad = value; } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è½®è¯¢å®æ¶å¨åè° - ä»
æ´æ°ç»è®¡ä¿¡æ¯ï¼å¸§æ¾ç¤ºç±äºä»¶é©±å¨ï¼ |
| | | /// </summary> |
| | | private void PollTimer_Tick(object? sender, EventArgs e) |
| | | /// <summary>å¤é¨å·²æ³¨å驱å¨ï¼è½¬åå°è®¾å¤ééï¼å
±äº«è®¾å¤å¤ç¨å®¿ä¸»éè·¯ï¼</summary> |
| | | public Aging.Infrastructure.Contracts.IDeviceDriver? ExistingDriver |
| | | { |
| | | if (!_isConnected || _driver == null) return; |
| | | |
| | | try |
| | | { |
| | | // æ´æ°ç»è®¡ |
| | | UpdateStats(); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"轮询ç»è®¡æ´æ°å¤±è´¥: {ex.Message}"); |
| | | } |
| | | get => _existingDriver; |
| | | set { _existingDriver = value; EnsureDeviceChannel().ExistingDriver = value; } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è¿æ¥æé®ç¹å» |
| | | /// </summary> |
| | | private void ConnectBtn_Click(object sender, RoutedEventArgs e) |
| | | /// <summary>æ°æ§å建"设å¤éé"ï¼é¦ä¸ª Tabï¼ï¼å¹¶ææ¥å½ä»¤äºä»¶ä¸å½åç»´æ¤æã</summary> |
| | | private CanChannelView EnsureDeviceChannel() |
| | | { |
| | | try |
| | | { |
| | | DoConnect(); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"CAN è¿æ¥å¤±è´¥: {ex.Message}", ex); |
| | | MessageBox.Show($"è¿æ¥å¤±è´¥: {ex.Message}", "é误", MessageBoxButton.OK, MessageBoxImage.Error); |
| | | UpdateConnectionStatus(false); |
| | | } |
| | | if (_deviceChannel != null) return _deviceChannel; |
| | | |
| | | _deviceChannel = new CanChannelView(); |
| | | WireChannel(_deviceChannel, MakeHeader(_deviceId, _initialBusName, _initialNodeIndex)); |
| | | // åºç¨å·²å°è¾¾çç»´æ¤æ |
| | | _deviceChannel.IsMaintenanceMode = IsMaintenanceMode; |
| | | var devTab = MakeTab(_deviceChannel); |
| | | devTab.Header = MakeHeader(_deviceId, _initialBusName, _initialNodeIndex); |
| | | channelTabs.Items.Add(devTab); |
| | | return _deviceChannel; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å®é
è¿æ¥é»è¾ï¼ä» UI æèªå¨è¿æ¥è°ç¨ï¼ |
| | | /// </summary> |
| | | private void DoConnect() |
| | | private void WireChannel(CanChannelView view, string header) |
| | | { |
| | | if (_isConnected) return; |
| | | |
| | | string busName = busNameInput.Text.Trim(); |
| | | if (!int.TryParse(nodeIndexInput.Text.Trim(), out int nodeIndex)) |
| | | { |
| | | throw new ArgumentException("èç¹ç¼å·æ ¼å¼é误"); |
| | | view.OnCommandExecute += (s, e) => OnCommandExecute?.Invoke(this, e); |
| | | } |
| | | |
| | | // ä¼å
ä½¿ç¨ DeviceDebug ä¼ å
¥çè®¾å¤ IDï¼å¦åèªå¨çæä¸ä¸ª |
| | | string deviceId = string.IsNullOrEmpty(_deviceId) |
| | | ? $"CAN_Test_{nodeIndex}_{DateTime.Now:HHmmss}" |
| | | : _deviceId; |
| | | |
| | | _driver = new CanDriverAdapter(deviceId, busName, nodeIndex); |
| | | |
| | | // 订é
驱å¨çå¸§æ¥æ¶äºä»¶ï¼å³æ¶æ¾ç¤ºæ¥æ¶å°çå¸§ï¼ |
| | | _driver.DriverFrameReceived += OnDriverFrameReceived; |
| | | |
| | | // è¿æ¥ |
| | | _driver.ConnectAsync(CancellationToken.None).GetAwaiter().GetResult(); |
| | | _isConnected = true; |
| | | |
| | | // 模æå¨æ¨¡å¼ä¸ï¼è¿æ¥åèªå¨å¯ç¨ç»´æ¤æ¨¡å¼ï¼å
许åéï¼ |
| | | IsMaintenanceMode = true; |
| | | if (maintenanceToggleBtn != null) |
| | | private TabItem MakeTab(CanChannelView view) |
| | | { |
| | | maintenanceToggleBtn.IsChecked = true; |
| | | maintenanceToggleBtn.IsEnabled = true; |
| | | // å¤ç¨è§å¾èªèº«çæ é¢åºä¸æ¾ç¤ºè®¾å¤åï¼è¿éç¨ Tab å¤´æ æ³¨éé身份 |
| | | return new TabItem { Content = view }; |
| | | } |
| | | |
| | | // æ´æ° UI |
| | | UpdateConnectionStatus(true); |
| | | _pollTimer?.Start(); |
| | | |
| | | log.Info($"CAN 驱å¨å·²è¿æ¥: Bus={busName}, Node={nodeIndex}, DeviceId={deviceId}"); |
| | | private static string MakeHeader(string deviceId, string bus, int? node) |
| | | { |
| | | string id = string.IsNullOrEmpty(deviceId) ? "éé" : deviceId; |
| | | if (!string.IsNullOrEmpty(bus)) |
| | | return $"{id} @{bus}:{node}"; |
| | | return id; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 驱å¨å¸§æ¥æ¶äºä»¶å¤ç - 峿¶æ¾ç¤ºæ¥æ¶å°ç帧 |
| | | /// </summary> |
| | | private void OnDriverFrameReceived(object? sender, CanSimulator.CanFrame frame) |
| | | /// <summary>æå¨æ·»å ä¸ä¸ªå¯ç¼è¾ç空ç½ééï¼Local TCP ç´è¿ï¼ç¨æ·èªå¡«æ»çº¿/èç¹åè¿æ¥ï¼ã</summary> |
| | | private void AddChannelBtn_Click(object sender, RoutedEventArgs e) |
| | | { |
| | | try |
| | | { |
| | | // 夿æ¹åï¼å¦æå¸§çæ¥æºæ¯å½åèç¹ï¼å为èªå¨ååºï¼æ¾ç¤ºä¸º RXï¼ |
| | | string direction = "RX"; |
| | | string source = frame.SourceNodeId; |
| | | |
| | | AddReceivedFrame( |
| | | frame.FrameIdHex, |
| | | frame.DataHex, |
| | | direction, |
| | | source |
| | | ); |
| | | |
| | | log.Debug($"[峿¶æ¾ç¤º] æ¥æ¶å¸§: {frame}"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"峿¶æ¾ç¤ºå¸§å¤±è´¥: {ex.Message}", ex); |
| | | } |
| | | var view = new CanChannelView { AutoConnectOnLoad = false }; |
| | | _manualSeq++; |
| | | string header = $"CAN éé #{_manualSeq}"; // æå¨ééå
·ä½æ»çº¿/èç¹ç±ç¨æ·é¡µå
å¡«åï¼æ ç¾ä¸é¢è®¾ |
| | | WireChannel(view, header); |
| | | var tab = MakeTab(view); |
| | | tab.Header = header; |
| | | channelTabs.Items.Add(tab); |
| | | channelTabs.SelectedItem = tab; |
| | | log.Info($"[CanDebugPanel] æå¨æ·»å éé {header}"); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æå¼æé®ç¹å» |
| | | /// </summary> |
| | | private void DisconnectBtn_Click(object sender, RoutedEventArgs e) |
| | | /// <summary>å
³éå½åéä¸çééï¼è®¾å¤ééä¸å¯å
³éï¼é¿å
误éåº DeviceDebug ä¼è¯è§å¾ï¼ã</summary> |
| | | private void CloseChannelBtn_Click(object sender, RoutedEventArgs e) |
| | | { |
| | | try |
| | | if (channelTabs.SelectedItem is not TabItem tab) return; |
| | | if (tab.Content == _deviceChannel) |
| | | { |
| | | _pollTimer?.Stop(); |
| | | if (_driver != null) |
| | | { |
| | | _driver.DriverFrameReceived -= OnDriverFrameReceived; |
| | | _driver.DisconnectAsync().GetAwaiter().GetResult(); |
| | | _driver.Dispose(); |
| | | } |
| | | _driver = null; |
| | | _isConnected = false; |
| | | IsMaintenanceMode = false; |
| | | |
| | | UpdateConnectionStatus(false); |
| | | log.Info("CAN 驱å¨å·²æå¼"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"CAN æå¼å¤±è´¥: {ex.Message}", ex); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ··ææ¨¡å¼æé®ç¹å» |
| | | /// </summary> |
| | | private void PromiscuousBtn_Click(object sender, RoutedEventArgs e) |
| | | { |
| | | if (!_isConnected || _driver == null) return; |
| | | |
| | | try |
| | | { |
| | | _driver.QueryAsync("PROMISCUOUS", CancellationToken.None).GetAwaiter().GetResult(); |
| | | log.Info("å·²è®¾ç½®æ··ææ¨¡å¼ï¼æ¥æ¶ææå¸§ï¼"); |
| | | MessageBox.Show("å·²è®¾ç½®æ··ææ¨¡å¼ï¼å°æ¥æ¶ææ CAN 帧", "æç¤º", MessageBoxButton.OK, MessageBoxImage.Information); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"è®¾ç½®æ··ææ¨¡å¼å¤±è´¥: {ex.Message}"); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// ç»´æ¤æ¨¡å¼åæ¢æé®ç¹å» |
| | | /// </summary> |
| | | private void MaintenanceToggleBtn_Click(object sender, RoutedEventArgs e) |
| | | { |
| | | bool isOn = maintenanceToggleBtn.IsChecked == true; |
| | | IsMaintenanceMode = isOn; |
| | | |
| | | if (isOn) |
| | | { |
| | | maintenanceToggleBtn.Content = "ç»´æ¤æ¨¡å¼: å¼"; |
| | | maintenanceToggleBtn.Background = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#4CAF50")); |
| | | log.Info("ç»´æ¤æ¨¡å¼å·²å¼å¯ï¼å¯åé CAN 帧ï¼"); |
| | | } |
| | | else |
| | | { |
| | | maintenanceToggleBtn.Content = "ç»´æ¤æ¨¡å¼: å
³"; |
| | | maintenanceToggleBtn.Background = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#9E9E9E")); |
| | | log.Info("ç»´æ¤æ¨¡å¼å·²å
³éï¼åªè¯»çæ§ï¼"); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// èªå¨ååºæ¨¡å¼åæ¢æé®ç¹å» |
| | | /// </summary> |
| | | private void AutoResponseToggleBtn_Click(object sender, RoutedEventArgs e) |
| | | { |
| | | if (!_isConnected || _driver == null) return; |
| | | |
| | | try |
| | | { |
| | | bool isOn = autoResponseToggleBtn.IsChecked == true; |
| | | |
| | | // éè¿é©±å¨åéå½ä»¤å¯ç¨/ç¦ç¨èªå¨ååº |
| | | string cmd = isOn ? "AUTO_RESPONSE:ON" : "AUTO_RESPONSE:OFF"; |
| | | _driver.QueryAsync(cmd, CancellationToken.None).GetAwaiter().GetResult(); |
| | | |
| | | if (isOn) |
| | | { |
| | | autoResponseToggleBtn.Content = "èªå¨ååº: å¼"; |
| | | autoResponseToggleBtn.Background = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#FF9800")); |
| | | log.Info("èªå¨ååºæ¨¡å¼å·²å¼å¯ï¼æ¶å°å¸§å°èªå¨åå¤ï¼"); |
| | | } |
| | | else |
| | | { |
| | | autoResponseToggleBtn.Content = "èªå¨ååº: å
³"; |
| | | autoResponseToggleBtn.Background = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#9E9E9E")); |
| | | log.Info("èªå¨ååºæ¨¡å¼å·²å
³é"); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"忢èªå¨ååºæ¨¡å¼å¤±è´¥: {ex.Message}"); |
| | | MessageBox.Show($"åæ¢å¤±è´¥: {ex.Message}", "é误", MessageBoxButton.OK, MessageBoxImage.Error); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ´æ°è¿æ¥ç¶ææ¾ç¤º |
| | | /// </summary> |
| | | private void UpdateConnectionStatus(bool connected) |
| | | { |
| | | _isConnected = connected; |
| | | if (connected) |
| | | { |
| | | statusIndicator.Fill = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#4CAF50")); |
| | | statusText.Text = "å·²è¿æ¥"; |
| | | connectBtn.IsEnabled = false; |
| | | disconnectBtn.IsEnabled = true; |
| | | promiscuousBtn.IsEnabled = true; |
| | | maintenanceToggleBtn.IsEnabled = true; |
| | | autoResponseToggleBtn.IsEnabled = true; |
| | | busNameInput.IsEnabled = false; |
| | | nodeIndexInput.IsEnabled = false; |
| | | } |
| | | else |
| | | { |
| | | statusIndicator.Fill = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#9E9E9E")); |
| | | statusText.Text = "æªè¿æ¥"; |
| | | connectBtn.IsEnabled = true; |
| | | disconnectBtn.IsEnabled = false; |
| | | promiscuousBtn.IsEnabled = false; |
| | | maintenanceToggleBtn.IsEnabled = false; |
| | | autoResponseToggleBtn.IsEnabled = false; |
| | | busNameInput.IsEnabled = true; |
| | | nodeIndexInput.IsEnabled = true; |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ´æ°ç»è®¡ä¿¡æ¯ |
| | | /// </summary> |
| | | private void UpdateStats() |
| | | { |
| | | if (_driver == null) return; |
| | | |
| | | try |
| | | { |
| | | var status = _driver.GetStatus(); |
| | | var response = _driver.QueryAsync("STATUS", CancellationToken.None).GetAwaiter().GetResult(); |
| | | // è§£æç¶æ: "STATUS:Node=..., Active=True, Rx=0, Tx=0, Err=0, Mailbox=0|Bus=..." |
| | | statsText.Text = $"TX: {GetStatValue(response, "Tx")} RX: {GetStatValue(response, "Rx")} Err: {GetStatValue(response, "Err")}"; |
| | | } |
| | | catch |
| | | { |
| | | // 忽ç¥ç»è®¡æ´æ°å¤±è´¥ |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// ä»ç¶æåç¬¦ä¸²ä¸æåæ°å¼å¼ |
| | | /// </summary> |
| | | private string GetStatValue(string statusStr, string key) |
| | | { |
| | | try |
| | | { |
| | | var parts = statusStr.Split(','); |
| | | foreach (var part in parts) |
| | | { |
| | | var kv = part.Trim().Split('='); |
| | | if (kv.Length == 2 && kv[0].Trim() == key) |
| | | { |
| | | return kv[1].Trim(); |
| | | } |
| | | } |
| | | } |
| | | catch { } |
| | | return "0"; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ·»å æ¥æ¶å¸§ |
| | | /// </summary> |
| | | public void AddReceivedFrame(string frameId, string data, string direction = "RX", string source = "") |
| | | { |
| | | try |
| | | { |
| | | var frame = new CanFrameDisplay |
| | | { |
| | | Timestamp = DateTime.Now, |
| | | FrameId = frameId, |
| | | Dlc = data.Split(new[] { ' ', '-' }, StringSplitOptions.RemoveEmptyEntries).Length, |
| | | Data = data, |
| | | Direction = direction, |
| | | Source = source |
| | | }; |
| | | |
| | | Application.Current.Dispatcher.Invoke(() => |
| | | { |
| | | ReceivedFrames.Insert(0, frame); |
| | | |
| | | // éå¶æ¾ç¤ºæ°é |
| | | if (ReceivedFrames.Count > 500) |
| | | { |
| | | var toRemove = ReceivedFrames.Skip(500).ToList(); |
| | | foreach (var item in toRemove) |
| | | { |
| | | ReceivedFrames.Remove(item); |
| | | } |
| | | } |
| | | }); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"æ·»å æ¥æ¶å¸§å¤±è´¥: {ex.Message}", ex); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// åéæé®ç¹å» |
| | | /// </summary> |
| | | private void SendBtn_Click(object sender, RoutedEventArgs e) |
| | | { |
| | | try |
| | | { |
| | | if (!IsMaintenanceMode) |
| | | { |
| | | MessageBox.Show("å½å为åªè¯»æ¨¡å¼ï¼æ æ³åéæ°æ®", "æç¤º", MessageBoxButton.OK, MessageBoxImage.Warning); |
| | | MessageBox.Show("设å¤ééä¸å¯å¨æ¤å
³éï¼è¯·ä»è®¾å¤éæ©åæ¢ã", "æç¤º", |
| | | MessageBoxButton.OK, MessageBoxImage.Information); |
| | | return; |
| | | } |
| | | if (tab.Content is CanChannelView view) |
| | | view.DisconnectInternalSafe(); |
| | | channelTabs.Items.Remove(tab); |
| | | } |
| | | |
| | | if (!_isConnected || _driver == null) |
| | | /// <summary>æ´æ°è®¾å¤éé Tab 头ï¼å¨é
ç½®é½å¤åè°ç¨ä¸æ¬¡å³å¯ï¼ã</summary> |
| | | public void RefreshDeviceHeader() |
| | | { |
| | | MessageBox.Show("请å
è¿æ¥ CAN æ»çº¿", "æç¤º", MessageBoxButton.OK, MessageBoxImage.Warning); |
| | | return; |
| | | } |
| | | |
| | | string frameIdStr = frameIdInput.Text.Trim(); |
| | | string dataStr = dataInput.Text.Trim(); |
| | | |
| | | // éªè¯å¸§ ID |
| | | uint frameId = CanSimulator.CanFrame.ParseFrameId(frameIdStr); |
| | | |
| | | // éªè¯æ°æ® |
| | | byte[] dataBytes = CanSimulator.CanFrame.ParseData(dataStr); |
| | | if (dataBytes.Length > 8) |
| | | { |
| | | MessageBox.Show("æ°æ®é¿åº¦ä¸è½è¶
è¿ 8 åè", "é误", MessageBoxButton.OK, MessageBoxImage.Error); |
| | | return; |
| | | } |
| | | |
| | | // éè¿é©±å¨åé |
| | | string command = $"SEND:{frameIdStr}:{dataStr}"; |
| | | var response = _driver.SendCommandAsync(command, CancellationToken.None).GetAwaiter().GetResult(); |
| | | |
| | | // æ·»å å°æ¾ç¤ºå表ï¼TXï¼ |
| | | AddReceivedFrame($"0x{frameId:X3}", BitConverter.ToString(dataBytes).Replace("-", " "), "TX", "LOCAL"); |
| | | |
| | | log.Info($"åé CAN 帧: ID=0x{frameId:X3}, Data={BitConverter.ToString(dataBytes)}, Response={response}"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"åé CAN 帧失败: {ex.Message}", ex); |
| | | MessageBox.Show($"åé失败: {ex.Message}", "é误", MessageBoxButton.OK, MessageBoxImage.Error); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ¸
空æé®ç¹å» |
| | | /// </summary> |
| | | private void ClearBtn_Click(object sender, RoutedEventArgs e) |
| | | { |
| | | try |
| | | { |
| | | ReceivedFrames.Clear(); |
| | | log.Info("æ¸
空 CAN æ¥æ¶è®°å½"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | log.Error($"æ¸
ç©ºæ¥æ¶è®°å½å¤±è´¥: {ex.Message}", ex); |
| | | } |
| | | if (_deviceChannel == null || channelTabs.Items.Count == 0) return; |
| | | if (channelTabs.Items[0] is TabItem t) |
| | | t.Header = MakeHeader(_deviceId, _initialBusName, _initialNodeIndex); |
| | | } |
| | | } |
| | | } |
| New file |
| | |
| | | <?xml version="1.0" encoding="utf-8"?> |
| | | <configuration> |
| | | <appSettings> |
| | | <!-- V3.0 §05ï¼ä»²è£ååéæä¸¾ï¼åå·åéï¼local- åç¼ä¸º Local ç´è¿åï¼å
¶ä½ä¸º Broker åï¼ --> |
| | | <add key="V3.AuthorityIds" value="local-main;broker-b01" /> |
| | | <!-- V3.0 §05ï¼Broker 宿主åéæä¸¾ --> |
| | | <add key="V3.BrokerIds" value="broker-b01" /> |
| | | <!-- CAN 模æå¨ç¬ç« TCP æå¡å°åï¼Local 驱å¨ä¸ Broker 宿主åè¿æ¤ç«¯å£ï¼ --> |
| | | <add key="CanSimulator.Host" value="127.0.0.1" /> |
| | | <add key="CanSimulator.Port" value="9000" /> |
| | | </appSettings> |
| | | </configuration> |
| | |
| | | <Border x:Name="canSimulatorHost" Grid.Row="1" Background="White" Margin="4"/> |
| | | </Grid> |
| | | </TabItem> |
| | | |
| | | <!-- Tab 5: å
¨èªå¨æµè¯ --> |
| | | <TabItem Header=" å
¨èªå¨æµè¯ " FontSize="13"> |
| | | <Grid Margin="8"> |
| | | <Grid.RowDefinitions> |
| | | <RowDefinition Height="Auto"/> |
| | | <RowDefinition Height="Auto"/> |
| | | <RowDefinition Height="*"/> |
| | | </Grid.RowDefinitions> |
| | | |
| | | <!-- æ¥éª¤ä¿¡æ¯åº --> |
| | | <Border Grid.Row="0" Background="#FFF3E0" CornerRadius="4" Padding="14,10" Margin="0,0,0,8"> |
| | | <StackPanel> |
| | | <TextBlock Text="CAN èåèªå¨åæ¥éª¤ç¤ºä¾ï¼æ¹æ¡ B + Cï¼" FontSize="16" FontWeight="Bold" Foreground="#E65100" Margin="0,0,0,8"/> |
| | | <WrapPanel> |
| | | <TextBlock Text="åé设å¤:" FontWeight="SemiBold" VerticalAlignment="Center" Margin="0,0,6,6"/> |
| | | <ComboBox x:Name="autoTxDeviceCombo" Width="150" Height="28" Margin="0,0,16,6"/> |
| | | |
| | | <TextBlock Text="ç®æ 设å¤:" FontWeight="SemiBold" VerticalAlignment="Center" Margin="0,0,6,6"/> |
| | | <ComboBox x:Name="autoRxDeviceCombo" Width="150" Height="28" Margin="0,0,16,6"/> |
| | | |
| | | <TextBlock Text="å¾ªç¯æ¬¡æ°:" FontWeight="SemiBold" VerticalAlignment="Center" Margin="0,0,6,6"/> |
| | | <TextBox x:Name="autoLoopCount" Width="60" Height="28" Text="5" VerticalContentAlignment="Center" Padding="4,0" Margin="0,0,16,6"/> |
| | | |
| | | <TextBlock Text="帧é´é(ms):" FontWeight="SemiBold" VerticalAlignment="Center" Margin="0,0,6,6"/> |
| | | <TextBox x:Name="autoInterval" Width="70" Height="28" Text="300" VerticalContentAlignment="Center" Padding="4,0" Margin="0,0,16,6"/> |
| | | </WrapPanel> |
| | | |
| | | <StackPanel Orientation="Horizontal" Margin="0,8,0,0"> |
| | | <Button x:Name="autoRunBtn" Content="â¶ è¿è¡èªå¨åæ¥éª¤" Width="180" Height="36" Margin="0,0,10,0" |
| | | Click="AutoRunBtn_Click" Background="#FF9800" Foreground="White" |
| | | BorderThickness="0" Cursor="Hand" FontWeight="SemiBold" FontSize="13"/> |
| | | <Button x:Name="perDeviceBtn" Content="â¶ é设å¤ä¸æ¬¡æ¶å(CAN-001~004)" Width="250" Height="36" Margin="0,0,10,0" |
| | | Click="PerDeviceCanTest_Click" Background="#3F51B5" Foreground="White" |
| | | BorderThickness="0" Cursor="Hand" FontWeight="SemiBold" FontSize="13"/> |
| | | <Button x:Name="autoStopBtn" Content="â 䏿¢" Width="90" Height="36" Margin="0,0,10,0" |
| | | Click="AutoStopBtn_Click" Background="#F44336" Foreground="White" |
| | | BorderThickness="0" Cursor="Hand" FontWeight="SemiBold" IsEnabled="False"/> |
| | | <ProgressBar x:Name="autoProgress" Width="300" Height="18" Margin="0,0,10,0"/> |
| | | <TextBlock x:Name="autoProgressText" Text="就绪" VerticalAlignment="Center" Foreground="#666"/> |
| | | </StackPanel> |
| | | </StackPanel> |
| | | </Border> |
| | | |
| | | <!-- 代ç é¢è§ --> |
| | | <Expander Grid.Row="1" Header="æ¥çç价代ç ï¼æ¹æ¡ B + C 使ç¨ç¤ºä¾ï¼" IsExpanded="False" Margin="0,0,0,8"> |
| | | <Border Background="#263238" Padding="12" CornerRadius="4" MaxHeight="280"> |
| | | <ScrollViewer VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto"> |
| | | <TextBlock FontFamily="Consolas" FontSize="12" Foreground="#ECEFF1"> |
| | | <Run Foreground="#80CBC4">// ä¸å¡ä»£ç åªçå°ç±»ååæå¡ï¼æ¹æ¡ Cï¼åä½åï¼æ¹æ¡ Bï¼</Run> |
| | | <Run> </Run><Run Foreground="#FFCC80">using </Run><Run Foreground="#C5E1A5">var </Run><Run>lease = </Run><Run Foreground="#FFCC80">await </Run><Run>auto.AcquireAsync(</Run><Run Foreground="#C5E1A5">"CAN-001"</Run><Run>, </Run><Run Foreground="#C5E1A5">"CAN_Aging"</Run><Run>, ct);</Run> |
| | | <Run> </Run><Run Foreground="#C5E1A5">await </Run><Run>canBus.SetAutoResponseAsync(lease, enabled:</Run><Run Foreground="#F48FB1">true</Run><Run>);</Run> |
| | | <Run> </Run><Run Foreground="#89DDFF">for </Run><Run>(</Run><Run Foreground="#C5E1A5">int </Run><Run>i = 0; i < cycles; i++)</Run> |
| | | <Run> </Run><Run>{</Run> |
| | | <Run> </Run><Run> </Run><Run Foreground="#C5E1A5">await </Run><Run>canBus.SendFrameAsync(lease, 0x100 + i, data);</Run> |
| | | <Run> </Run><Run> </Run><Run Foreground="#C5E1A5">var </Run><Run>echo = </Run><Run Foreground="#C5E1A5">await </Run><Run>canBus.ReceiveFrameAsync(lease, ct);</Run> |
| | | <Run> </Run><Run> Verify(echo != </Run><Run Foreground="#FF5370">null</Run><Run>); </Run><Run Foreground="#546E7A">// æè¨</Run> |
| | | <Run> </Run><Run>}</Run> |
| | | </TextBlock> |
| | | </ScrollViewer> |
| | | </Border> |
| | | </Expander> |
| | | |
| | | <!-- æ¥å¿åº --> |
| | | <Border Grid.Row="2" BorderBrush="#DDD" BorderThickness="1" CornerRadius="4"> |
| | | <Grid> |
| | | <Grid.RowDefinitions> |
| | | <RowDefinition Height="Auto"/> |
| | | <RowDefinition Height="*"/> |
| | | </Grid.RowDefinitions> |
| | | <DockPanel Grid.Row="0" Margin="10,6"> |
| | | <TextBlock Text="èªå¨åæ§è¡æ¥å¿" FontWeight="Bold" FontSize="14"/> |
| | | <Button Content="æ¸
空" Padding="10,3" DockPanel.Dock="Right" Click="AutoClearLog_Click" |
| | | Background="#9E9E9E" Foreground="White" BorderThickness="0" Cursor="Hand"/> |
| | | </DockPanel> |
| | | <TextBox Grid.Row="1" x:Name="autoLog" |
| | | IsReadOnly="True" VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto" |
| | | FontFamily="Consolas" FontSize="12" |
| | | Background="#1E1E1E" Foreground="#D4D4D4" |
| | | BorderThickness="0" Padding="10" TextWrapping="NoWrap" AcceptsReturn="True"/> |
| | | </Grid> |
| | | </Border> |
| | | </Grid> |
| | | </TabItem> |
| | | </TabControl> |
| | | |
| | | <!-- åºé¨ç»ææ --> |
| | |
| | | using System.Windows; |
| | | using System.Windows.Media; |
| | | using System.Windows.Threading; |
| | | using Aging.Infrastructure; |
| | | using Aging.Infrastructure.Contracts; |
| | | using Aging.Infrastructure.Drivers; |
| | | using Aging.Infrastructure.Services; |
| | | using CanSimulator; |
| | | using HMI.Core.Util; |
| | | using log4net; |
| | | using Plugin.DeviceConfig.Entity; |
| | | using Plugin.DeviceConfig.Model; |
| | |
| | | private CanBusSimulator? _canBus; |
| | | private CanDebugPanel? _canDebugPanel; |
| | | |
| | | // V3.0ï¼DeviceBroker 宿主åè¿ç¨ï¼åå¨ Broker è®¾å¤æ¶èªå¨æèµ·ï¼ |
| | | private System.Diagnostics.Process? _brokerProcess; |
| | | |
| | | // èªå¨åæµè¯æå¡ |
| | | private IAutoDeviceFacade? _autoFacade; |
| | | private ICanBusService? _canBusService; |
| | | private CancellationTokenSource? _autoCts; |
| | | |
| | | public MainWindow() |
| | | { |
| | | InitializeComponent(); |
| | |
| | | |
| | | private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e) |
| | | { |
| | | // æ¸
ç CAN 模æå¨ |
| | | _canBus?.Dispose(); |
| | | CanDriverAdapter.ResetAllBuses(); |
| | | // åæ¶æ£å¨è¿è¡çèªå¨åæµè¯ |
| | | try { _autoCts?.Cancel(); } catch { } |
| | | |
| | | // 忢 DeviceBroker 宿主ï¼å
¶ææçç©çä¼è¯éè¿ç¨éåºéæ¾ï¼ç§çº¦é TTL è¿æ+äººå·¥åæ¶ï¼ |
| | | try |
| | | { |
| | | if (_brokerProcess != null && !_brokerProcess.HasExited) |
| | | { |
| | | _brokerProcess.Kill(); |
| | | _brokerProcess.WaitForExit(3000); |
| | | } |
| | | _brokerProcess?.Dispose(); |
| | | } |
| | | catch { } |
| | | |
| | | // CAN 模æå¨å·²å¤é¨å为ç¬ç«æå¡è¿ç¨ï¼æ¬è¿ç¨æ è¿ç¨å
æ»çº¿éæ¸
ç |
| | | |
| | | // ä¸å 餿µè¯ç®å½ï¼ä¿çæ°æ®ä»¥ä¾¿éå¯åæ¢å¤ |
| | | // ï¼å¦éæå¨éç½®ï¼ä½¿ç¨å·¥å
·æ ä¸ç "éç½®æ°æ®" æé®ï¼ |
| | |
| | | |
| | | try |
| | | { |
| | | // åå§å仪å¨ä»ªè¡¨æ³¨åæä»¶ |
| | | // åå§å仪å¨ä»ªè¡¨æ³¨åæä»¶ï¼å»ºåº data.dbï¼ |
| | | _deviceConfigPlugin = new Plugin.DeviceConfig.DeviceConfig(); |
| | | _deviceConfigPlugin.SetBaseFolder(_testDir); |
| | | _deviceConfigPlugin.SetLogger(_testLog); |
| | | _deviceConfigPlugin.InitFinish(); |
| | | deviceConfigHost.Child = _deviceConfigPlugin; |
| | | |
| | | // åå§å硬件è°è¯æä»¶ |
| | | // é¢ç½® CAN æµè¯è®¾å¤ï¼å¿
é¡»å¨åºç¡è®¾æ½åå§åååå
¥ï¼Bootstrapper æ®æ¤æ³¨å代ç驱å¨ï¼ |
| | | SeedPresetCanDevices(); |
| | | |
| | | // åå§ååºç¡è®¾æ½ & èªå¨åæå¡ï¼å¿
é¡»å¨ DeviceDebug.InitFinish ä¹åï¼ |
| | | // å®ä» UtilContainer æå DeviceManager/ResourceManagerï¼æ³¨åå¨ Bootstrapper.Initialize å®æï¼ |
| | | InitializeAutoServices(); |
| | | |
| | | // åå§å硬件è°è¯æä»¶ï¼æ¤æ¶åºç¡è®¾æ½æå¡å·²å°±ç»ªï¼ç»´æ¤ç§çº¦/驱å¨å¤ç¨é¾è·¯å¯ç¨ï¼ |
| | | _deviceDebugPlugin = new Plugin.DeviceDebug.DeviceDebug(); |
| | | _deviceDebugPlugin.SetBaseFolder(_testDir); |
| | | _deviceDebugPlugin.SetLogger(_testLog); |
| | | _deviceDebugPlugin.InitFinish(); |
| | | deviceDebugHost.Child = _deviceDebugPlugin; |
| | | |
| | | // é¢ç½® CAN æµè¯è®¾å¤ï¼æ¹ä¾¿ç´æ¥éªè¯é©±å¨ä¸é¢æ¿ï¼ |
| | | SeedPresetCanDevices(); |
| | | |
| | | // å·æ°æä»¶å
é¨å表ï¼éæå¨è°ç¨æä»¶æ¹æ³ï¼ |
| | | _deviceConfigPlugin.ForceRefreshForTest(); |
| | |
| | | Log(" 2. å·²é¢ç½® CAN-001 (CAN_BUS_1:0) å CAN-002 (CAN_BUS_1:1) 便µè¯"); |
| | | Log(" 3. åæ¢å° '硬件è°è¯' Tabï¼éæ© CAN-001 ä¼èªå¨æå¼ CAN 颿¿å¹¶è¿æ¥æ»çº¿"); |
| | | Log(" 4. åæ¢å° 'CAN 模æå¨' Tab 坿卿§å¶æ»çº¿æå¦ä¸ä¸ªèç¹åéæ°æ®"); |
| | | Log(" 5. å¯éæ¶ç¹å» 'è¿è¡èªå¨åæµè¯' éªè¯æ ¸å¿é»è¾"); |
| | | Log(" 5. åæ¢å° 'å
¨èªå¨æµè¯' Tab å¯ä½éªæ¹æ¡ B+C çèªå¨åæ¥éª¤"); |
| | | Log(" 6. å¯éæ¶ç¹å» 'è¿è¡èªå¨åæµè¯' éªè¯æ ¸å¿é»è¾"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | |
| | | } |
| | | } |
| | | |
| | | #region å
¨èªå¨æµè¯ï¼æ¹æ¡ B+Cï¼ |
| | | |
| | | /// <summary> |
| | | /// åå§åèªå¨åæå¡ï¼ |
| | | /// 1) å¯å¨ Infrastructure Bootstrapperï¼ResourceManager/DeviceManager/DeviceService/AutoDeviceFacade/CanBusServiceï¼ |
| | | /// 2) 为é¢ç½® CAN è®¾å¤æ³¨åé©±å¨ |
| | | /// 3) å°è®¾å¤åè¡¨å¡«å° UI ä¸ææ¡ |
| | | /// </summary> |
| | | private void InitializeAutoServices() |
| | | { |
| | | try |
| | | { |
| | | // åå§ååºç¡è®¾æ½ï¼å¹çï¼å·²åå§åæ¶èªå¨è·³è¿ï¼ |
| | | string dbPath = Path.Combine(_testDir, "data.db"); |
| | | try { InfrastructureBootstrapper.Initialize(dbPath); } |
| | | catch (Exception ex) { Log($"[WARN] Bootstrapper åå§åå¼å¸¸: {ex.Message}"); } |
| | | |
| | | // ä» UtilContainer æåæå¡å®ä¾ |
| | | var container = new UtilContainer(); |
| | | _autoFacade = container.GetUtil<IAutoDeviceFacade>("AutoDeviceFacade"); |
| | | _canBusService = container.GetUtil<ICanBusService>("CanBusService"); |
| | | |
| | | // 为é¢ç½®è®¾å¤æ³¨å驱å¨ï¼èªå¨å¯å¨ CAN æ»çº¿ï¼ |
| | | RegisterCanDriver("CAN-001", "CAN_BUS_1:0"); |
| | | RegisterCanDriver("CAN-002", "CAN_BUS_1:1"); |
| | | |
| | | // åå§å设å¤ä¸æå表 |
| | | autoTxDeviceCombo.ItemsSource = new[] { "CAN-001", "CAN-002" }; |
| | | autoRxDeviceCombo.ItemsSource = new[] { "CAN-002", "CAN-001" }; |
| | | autoTxDeviceCombo.SelectedIndex = 0; |
| | | autoRxDeviceCombo.SelectedIndex = 0; |
| | | |
| | | if (_autoFacade != null && _canBusService != null) |
| | | { |
| | | Log("[INFO] AutoDeviceFacade å CanBusService 已就绪"); |
| | | Log("[INFO] CAN-001 / CAN-002 驱å¨å·²æ³¨å"); |
| | | } |
| | | else |
| | | { |
| | | Log("[ERROR] èªå¨åæå¡æªæ£ç¡®åå§åï¼å
¨èªå¨æµè¯ Tab ä¸å¯ç¨"); |
| | | autoRunBtn.IsEnabled = false; |
| | | } |
| | | |
| | | // V3.0ï¼è¥é
ç½®åºåå¨ Broker å设å¤ï¼èªå¨æèµ· DeviceBroker.exe 宿主 |
| | | TryStartDeviceBroker(); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | Log($"[ERROR] åå§åèªå¨åæå¡å¤±è´¥: {ex.Message}"); |
| | | Log(ex.StackTrace ?? ""); |
| | | autoRunBtn.IsEnabled = false; |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// V3.0ï¼è¥ data.db ä¸åå¨ ExecutionMode=Broker ç设å¤ï¼èªå¨æèµ· DeviceBroker.exe 宿主åè¿ç¨ã |
| | | /// 宿主é»è®¤åæ°æåæ¬ç¯å¢åä¸ data.db/arb.dbï¼åæºä»²è£åï¼ï¼æ¾ä¸å°å¯æ§è¡æä»¶æ¶é级为è¦åï¼ |
| | | /// Broker 设å¤å°æ¥ BROKER_UNREACHABLEï¼Local 设å¤ä¸åå½±åã |
| | | /// </summary> |
| | | private void TryStartDeviceBroker() |
| | | { |
| | | try |
| | | { |
| | | var model = new DeviceConfigModel(); |
| | | string dbPath = Path.Combine(_testDir, "data.db"); |
| | | if (!File.Exists(dbPath)) return; |
| | | model.InitDatabase(dbPath); |
| | | var brokerDevices = model.GetAllDevices() |
| | | .Where(d => d.ExecutionMode == Plugin.DeviceConfig.Entity.ExecutionModeKind.Broker) |
| | | .ToList(); |
| | | if (brokerDevices.Count == 0) |
| | | { |
| | | Log("[INFO] æ Broker å设å¤ï¼æªå¯å¨ DeviceBroker 宿主"); |
| | | return; |
| | | } |
| | | |
| | | string exe = FindDeviceBrokerExe(); |
| | | if (exe == null) |
| | | { |
| | | Log("[WARN] æªæ¾å° DeviceBroker.exeï¼Broker 设å¤é¾è·¯ä¸å¯ç¨ï¼è¯·æå»º DeviceBroker å·¥ç¨ï¼"); |
| | | return; |
| | | } |
| | | |
| | | var psi = new System.Diagnostics.ProcessStartInfo(exe) |
| | | { |
| | | Arguments = $"--db \"{dbPath}\" --arb \"{Path.Combine(_testDir, "arb.db")}\" --broker broker-b01", |
| | | UseShellExecute = false, |
| | | CreateNoWindow = true, |
| | | }; |
| | | _brokerProcess = System.Diagnostics.Process.Start(psi); |
| | | Log($"[INFO] DeviceBroker 宿主已å¯å¨ (PID={_brokerProcess?.Id})ï¼Broker 设å¤: " + |
| | | string.Join(", ", brokerDevices.Select(d => d.DeviceId))); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | Log($"[WARN] å¯å¨ DeviceBroker 失败: {ex.Message}"); |
| | | } |
| | | } |
| | | |
| | | private static string FindDeviceBrokerExe() |
| | | { |
| | | string baseDir = AppDomain.CurrentDomain.BaseDirectory; |
| | | var candidates = new[] |
| | | { |
| | | Path.Combine(baseDir, "DeviceBroker.exe"), |
| | | Path.Combine(baseDir, @"DeviceBroker\DeviceBroker.exe"), |
| | | Path.GetFullPath(Path.Combine(baseDir, @"..\..\..\..\DeviceBroker\bin\Debug\net472\DeviceBroker.exe")), |
| | | Path.GetFullPath(Path.Combine(baseDir, @"..\..\..\DeviceBroker\bin\Debug\net472\DeviceBroker.exe")), |
| | | }; |
| | | foreach (var c in candidates) |
| | | { |
| | | try { if (File.Exists(c)) return c; } catch { } |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å DeviceManager 注å CAN 驱å¨ï¼ä½¿ç¨ DriverFactoryï¼ |
| | | /// </summary> |
| | | private void RegisterCanDriver(string deviceId, string endpoint) |
| | | { |
| | | try |
| | | { |
| | | InfrastructureBootstrapper.RegisterDevice(deviceId, "CAN", endpoint); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | Log($"[WARN] 注åè®¾å¤ {deviceId} 驱å¨å¤±è´¥: {ex.Message}"); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è¿è¡èªå¨åæ¥éª¤ï¼å°è£
宿´æµç¨ï¼å¼æ»çº¿ â ç§çº¦ â åé â åæ¶ â éæ¾ï¼ |
| | | /// </summary> |
| | | private async void AutoRunBtn_Click(object sender, RoutedEventArgs e) |
| | | { |
| | | if (_autoFacade == null || _canBusService == null) |
| | | { |
| | | AutoLog("[ERROR] æå¡æªåå§å"); |
| | | return; |
| | | } |
| | | |
| | | string txDevice = autoTxDeviceCombo.SelectedItem as string ?? "CAN-001"; |
| | | string rxDevice = autoRxDeviceCombo.SelectedItem as string ?? "CAN-002"; |
| | | |
| | | if (!int.TryParse(autoLoopCount.Text, out int loops) || loops <= 0) |
| | | { |
| | | AutoLog("[ERROR] å¾ªç¯æ¬¡æ°å¿
é¡»ä¸ºæ£æ´æ°"); |
| | | return; |
| | | } |
| | | if (!int.TryParse(autoInterval.Text, out int intervalMs) || intervalMs < 0) |
| | | { |
| | | intervalMs = 200; |
| | | } |
| | | |
| | | // ç¡®ä¿æ»çº¿å·²å¯å¨ï¼ä½¿ç¨ CAN-001 驱卿¶ä¼èªå¨å¯å¨ï¼ |
| | | EnsureBusRunning(); |
| | | |
| | | // å¯ç¨ä¸æ¢æé® |
| | | autoRunBtn.IsEnabled = false; |
| | | autoStopBtn.IsEnabled = true; |
| | | autoProgress.Maximum = loops; |
| | | autoProgress.Value = 0; |
| | | _autoCts = new CancellationTokenSource(); |
| | | var ct = _autoCts.Token; |
| | | |
| | | AutoLog("ââââââââââââââââââââââââââââââââââââââââââââââââââââââ"); |
| | | AutoLog($" CAN èåèªå¨åæ¥éª¤å¼å§"); |
| | | AutoLog($" åé设å¤: {txDevice}, ç®æ 设å¤: {rxDevice}"); |
| | | AutoLog($" å¾ªç¯æ¬¡æ°: {loops}, 帧é´é: {intervalMs}ms"); |
| | | AutoLog("ââââââââââââââââââââââââââââââââââââââââââââââââââââââ"); |
| | | |
| | | int successCount = 0; |
| | | int failCount = 0; |
| | | var swTotal = System.Diagnostics.Stopwatch.StartNew(); |
| | | |
| | | // ===== æ¹æ¡ Bï¼ä½ç¨åç§çº¦ï¼ä¸æ¬¡ç³è¯·ï¼å¤æ¬¡ä½¿ç¨ï¼ ===== |
| | | try |
| | | { |
| | | using var lease = await _autoFacade.AcquireAsync(txDevice, "CAN_Aging", ct); |
| | | AutoLog($"[ç§çº¦] å·²è·å¾ {txDevice} ä½ç¨åç§çº¦: Session={lease.SessionId.Substring(0, 8)}, æ¶å» {lease.AcquiredAt:HH:mm:ss.fff}"); |
| | | |
| | | // ===== æ¹æ¡ Cï¼ä½¿ç¨ç±»ååæå¡ ===== |
| | | // ç®æ 设å¤å
å¯ç¨èªå¨ååºï¼ä»¥ä¾¿åç¯éªè¯ï¼ |
| | | using var rxLease = await _autoFacade.AcquireAsync(rxDevice, "CAN_Aging_Rx", ct); |
| | | AutoLog($"[ç§çº¦] å·²è·å¾ {rxDevice} ä½ç¨åç§çº¦: Session={rxLease.SessionId.Substring(0, 8)}"); |
| | | await _canBusService.SetAutoResponseAsync(rxLease, true, ct); |
| | | AutoLog($"[é
ç½®] 已为 {rxDevice} å¯ç¨èªå¨ååºæ¨¡å¼"); |
| | | |
| | | for (int i = 0; i < loops; i++) |
| | | { |
| | | if (ct.IsCancellationRequested) break; |
| | | |
| | | uint frameId = (uint)(0x100 + i); |
| | | byte[] payload = new byte[] { (byte)i, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF, 0x5A }; |
| | | |
| | | // åéï¼èµ° txDevice ç§çº¦ï¼ |
| | | bool sent = await _canBusService.SendFrameAsync(lease, frameId, payload, ct); |
| | | AutoLog($"[T+{i,3:D3}] TX {frameId:X3} | {BitConverter.ToString(payload).Replace("-", " ")} {(sent ? "â" : "â")}"); |
| | | |
| | | // æ¥æ¶ååï¼èµ° rxDevice ç§çº¦ï¼ |
| | | await Task.Delay(intervalMs, ct); |
| | | var echo = await _canBusService.ReceiveFrameAsync(rxLease, ct); |
| | | |
| | | if (echo != null) |
| | | { |
| | | AutoLog($"[R+{i,3:D3}] RX {echo.FrameIdHex} | {echo.DataHex} å¹é
={(echo.FrameId == frameId ? "â" : "â")}"); |
| | | if (echo.FrameId == frameId && echo.Data.SequenceEqual(payload)) successCount++; |
| | | else failCount++; |
| | | } |
| | | else |
| | | { |
| | | AutoLog($"[R+{i,3:D3}] RX æ åå"); |
| | | failCount++; |
| | | } |
| | | |
| | | autoProgress.Value = i + 1; |
| | | autoProgressText.Text = $"{i + 1}/{loops} 宿"; |
| | | } |
| | | |
| | | // æ¶å°¾ï¼å
³éèªå¨ååº |
| | | await _canBusService.SetAutoResponseAsync(rxLease, false, ct); |
| | | AutoLog($"[é
ç½®] 已为 {rxDevice} å
³éèªå¨ååºæ¨¡å¼"); |
| | | } |
| | | catch (OperationCanceledException) |
| | | { |
| | | AutoLog("[䏿¢] ç¨æ·æå¨ä¸æ¢æµè¯"); |
| | | } |
| | | catch (TimeoutException ex) |
| | | { |
| | | AutoLog($"[失败] ç§çº¦ç³è¯·è¶
æ¶: {ex.Message}"); |
| | | failCount++; |
| | | } |
| | | catch (InvalidOperationException ex) |
| | | { |
| | | AutoLog($"[失败] èµæºå²çª: {ex.Message}"); |
| | | failCount++; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | AutoLog($"[å¼å¸¸] {ex.GetType().Name}: {ex.Message}"); |
| | | failCount++; |
| | | } |
| | | finally |
| | | { |
| | | swTotal.Stop(); |
| | | // ä½¿ç¨ lease.Dispose() ä¼èªå¨éæ¾ç§çº¦ï¼æ éæå¨å代ç |
| | | _autoCts?.Dispose(); |
| | | _autoCts = null; |
| | | |
| | | AutoLog(""); |
| | | AutoLog("ââââââââââââââââââââââââââââââââââââââââââââââââââââââ"); |
| | | AutoLog($" æ¥éª¤å®æ | æå {successCount} | 失败 {failCount} | æ»èæ¶ {swTotal.ElapsedMilliseconds}ms"); |
| | | AutoLog($" ç§çº¦å·²èªå¨éæ¾ï¼using ä½ç¨åç»æï¼"); |
| | | AutoLog("ââââââââââââââââââââââââââââââââââââââââââââââââââââââ"); |
| | | |
| | | autoRunBtn.IsEnabled = true; |
| | | autoStopBtn.IsEnabled = false; |
| | | autoProgressText.Text = "就绪"; |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å
¨èªå¨Â·é设å¤ä¸æ¬¡æ¶åï¼æ¨¡æ TestPlan ç TestStepï¼å¯¹ CAN-001~004 éä¸ |
| | | /// éè¿ç±»ååæå¡/é¨é¢è°ç¨ CAN 驱å¨ï¼å®æâåéå½ä»¤âæ¥æ¶åæ¾â䏿¬¡å®æ´å¾è¿ã |
| | | /// ä¾èµæ»çº¿åºçå¨ï¼BUS_ECHOï¼ä½¿å设å¤èªåèªæ¶ï¼æ é对端设å¤ã |
| | | /// </summary> |
| | | private async void PerDeviceCanTest_Click(object sender, RoutedEventArgs e) |
| | | { |
| | | if (_autoFacade == null || _canBusService == null) |
| | | { |
| | | AutoLog("[ERROR] æå¡æªåå§å"); |
| | | return; |
| | | } |
| | | |
| | | var devices = new[] { "CAN-001", "CAN-002", "CAN-003", "CAN-004" }; |
| | | perDeviceBtn.IsEnabled = false; |
| | | autoStopBtn.IsEnabled = true; |
| | | _autoCts = new CancellationTokenSource(); |
| | | var ct = _autoCts.Token; |
| | | autoProgress.Maximum = devices.Length * 3 + 2; |
| | | autoProgress.Value = 0; |
| | | |
| | | int passed = 0, failed = 0; |
| | | var sw = System.Diagnostics.Stopwatch.StartNew(); |
| | | AutoLog("ââââââââââââââââââââââââââââââââââââââââââââââââ"); |
| | | AutoLog(" å
¨èªå¨Â·é设å¤ä¸æ¬¡æ¶åï¼æ¨¡æ TestPlan TestStepï¼"); |
| | | AutoLog("ââââââââââââââââââââââââââââââââââââââââââââââââ"); |
| | | |
| | | // å
¨å±åç½®ï¼å¯ç¨æ»çº¿åºçå¨ï¼ä½¿æ¯æ¬¡åéé½è½æ¶å°åæ¾ï¼ |
| | | await RunStepAsync("å
¨å±", "å¯ç¨æ»çº¿åºçå¨ BUS_ECHO:ON", async () => |
| | | (await _autoFacade.QueryAsync(devices[0], "BUS_ECHO:ON", ct)).Success, |
| | | ok => { if (ok) passed++; else failed++; autoProgress.Value++; }); |
| | | |
| | | for (int idx = 0; idx < devices.Length; idx++) |
| | | { |
| | | if (ct.IsCancellationRequested) break; |
| | | string dev = devices[idx]; |
| | | uint frameId = (uint)(0x300 + idx); |
| | | byte[] payload = new byte[] { (byte)idx, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77 }; |
| | | |
| | | // TestStep 1ï¼åéå½ä»¤å¸§ï¼OneShotï¼å
é¨ é¢çº¦âæ§è¡âéæ¾ï¼ |
| | | await RunStepAsync(dev, $"åé 0x{frameId:X3}", async () => |
| | | await _canBusService.SendFrameAsync(dev, frameId, payload, ct), |
| | | ok => { if (ok) passed++; else failed++; autoProgress.Value++; }); |
| | | |
| | | // TestStep 2ï¼è§¦å宿主 drainï¼Broker 设å¤åæ¾ç»æ¤æå¸¦å客æ·ç«¯ç¼å²ï¼ |
| | | await RunStepAsync(dev, "触ååæ¾æå¸¦(STATUS)", async () => |
| | | (await _autoFacade.QueryAsync(dev, "STATUS", ct)).Success, |
| | | ok => { if (ok) passed++; else failed++; autoProgress.Value++; }); |
| | | |
| | | // TestStep 3ï¼æ¥æ¶åæ¾å¹¶æ ¡éªå¸§ ID |
| | | await RunStepAsync(dev, "æ¥æ¶å¹¶æ ¡éªåæ¾", async () => |
| | | { |
| | | for (int t = 0; t < 10; t++) |
| | | { |
| | | var recv = await _canBusService.ReceiveFrameAsync(dev, ct); |
| | | if (recv != null) |
| | | { |
| | | bool match = recv.FrameId == frameId; |
| | | AutoLog($" [{dev}] RX {recv.FrameIdHex} | {recv.DataHex} å¹é
={(match ? "â" : "â")}"); |
| | | return match; |
| | | } |
| | | await Task.Delay(80, ct); |
| | | } |
| | | AutoLog($" [{dev}] æªæ¶å°åæ¾"); |
| | | return false; |
| | | }, |
| | | ok => { if (ok) passed++; else failed++; autoProgress.Value++; }); |
| | | } |
| | | |
| | | // å
¨å±æ¶å°¾ï¼å
³éæ»çº¿åºçå¨ |
| | | await RunStepAsync("å
¨å±", "å
³éæ»çº¿åºçå¨ BUS_ECHO:OFF", async () => |
| | | (await _autoFacade.QueryAsync(devices[0], "BUS_ECHO:OFF", ct)).Success, |
| | | ok => { if (ok) passed++; else failed++; autoProgress.Value++; }); |
| | | |
| | | sw.Stop(); |
| | | AutoLog("ââââââââââââââââââââââââââââââââââââââââââââââ"); |
| | | AutoLog($" 宿 | éè¿ {passed} | 失败 {failed} | èæ¶ {sw.ElapsedMilliseconds}ms"); |
| | | AutoLog("ââââââââââââââââââââââââââââââââââââââââââââââââ"); |
| | | autoProgressText.Text = $"éè¿ {passed} / 失败 {failed}"; |
| | | perDeviceBtn.IsEnabled = true; |
| | | autoStopBtn.IsEnabled = false; |
| | | _autoCts?.Dispose(); |
| | | _autoCts = null; |
| | | } |
| | | |
| | | /// <summary>模æ TestPlan ç TestStepï¼å½åæ¥éª¤ + æè¨ + è®°å½éè¿/失败ã</summary> |
| | | private async Task RunStepAsync(string device, string name, Func<Task<bool>> body, Action<bool> onDone) |
| | | { |
| | | AutoLog($"â¶ [TestStep] {device} :: {name}"); |
| | | bool ok; |
| | | try { ok = await body(); } |
| | | catch (OperationCanceledException) { AutoLog(" [䏿¢] ç¨æ·åæ¶"); throw; } |
| | | catch (Exception ex) { ok = false; AutoLog($" å¼å¸¸: {ex.Message}"); } |
| | | AutoLog($" {(ok ? "PASS â" : "FAIL â")}"); |
| | | onDone(ok); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 䏿¢å½åèªå¨åæµè¯ |
| | | /// </summary> |
| | | private void AutoStopBtn_Click(object sender, RoutedEventArgs e) |
| | | { |
| | | _autoCts?.Cancel(); |
| | | AutoLog("[䏿¢] å·²åéåæ¶è¯·æ±..."); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ¸
空èªå¨åæ¥å¿ |
| | | /// </summary> |
| | | private void AutoClearLog_Click(object sender, RoutedEventArgs e) |
| | | { |
| | | autoLog.Clear(); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ»çº¿ç±å¤é¨ CanSimulatorServer æç®¡ï¼æ¬å°æ éåå¯å¨è¿ç¨å
æ»çº¿ï¼ä¿ç空å®ç°å
¼å®¹æ§è°ç¨ï¼ã |
| | | /// </summary> |
| | | private void EnsureBusRunning() { } |
| | | |
| | | /// <summary> |
| | | /// åèªå¨åæ¥å¿åºè¿½å æ¥å¿ |
| | | /// </summary> |
| | | private void AutoLog(string msg) |
| | | { |
| | | string line = $"{DateTime.Now:HH:mm:ss.fff} {msg}"; |
| | | Dispatcher.Invoke(() => |
| | | { |
| | | autoLog.AppendText(line + Environment.NewLine); |
| | | autoLog.ScrollToEnd(); |
| | | }); |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | #region CAN 模æå¨ |
| | | |
| | | /// <summary> |
| | |
| | | return; |
| | | } |
| | | |
| | | // éè¿ DriverFactory å建 CAN 驱卿¥å¯å¨æ»çº¿ |
| | | // æ»çº¿ç±å¤é¨æ¨¡æå¨æå¡æç®¡ï¼æ¤å¤ä»
éªè¯ä¸ä¸ªèç¹å¯æ¥å
¥ï¼è¿éæ§æ¢æµï¼ |
| | | var driver = DriverFactory.CreateDriver("CAN_SIM_0", "CAN", $"{busName}:0"); |
| | | driver.ConnectAsync(CancellationToken.None).GetAwaiter().GetResult(); |
| | | |
| | | // è·åæ»çº¿å®ä¾ |
| | | var buses = CanDriverAdapter.GetAllBuses(); |
| | | if (buses.TryGetValue(busName, out var bus)) |
| | | { |
| | | _canBus = bus; |
| | | bus.Start(); |
| | | |
| | | // æ´æ° UI |
| | | canBusIndicator.Fill = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#4CAF50")); |
| | | canBusStatusText.Text = $"è¿è¡ä¸ ({busName})"; |
| | | canBusStatusText.Text = $"å·²æ¥å
¥å¤é¨æ¨¡æå¨ ({busName})"; |
| | | canStartBtn.IsEnabled = false; |
| | | canStopBtn.IsEnabled = true; |
| | | |
| | | Log($"[CAN] æ»çº¿ {busName} å·²å¯å¨"); |
| | | } |
| | | Log($"[CAN] å·²è¿æ¥å¤é¨æ¨¡æå¨æ»çº¿ {busName}"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | |
| | | { |
| | | try |
| | | { |
| | | CanDriverAdapter.ResetAllBuses(); |
| | | _canBus = null; |
| | | |
| | | // æ´æ° UI |
| | |
| | | canStartBtn.IsEnabled = true; |
| | | canStopBtn.IsEnabled = false; |
| | | |
| | | Log("[CAN] æææ»çº¿å·²éç½®"); |
| | | Log("[CAN] æ¬å°ç¶æå·²éç½®ï¼å¤é¨æ¨¡æå¨æ»çº¿ä¸åå½±åï¼"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | |
| | | <ProjectReference Include="..\Aging.Infrastructure\Aging.Infrastructure.csproj" /> |
| | | </ItemGroup> |
| | | |
| | | <ItemGroup> |
| | | <Content Include="..\Libs\SQLite.Interop.dll" Link="SQLite.Interop.dll"> |
| | | <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> |
| | | </Content> |
| | | <Content Include="..\Libs\SQLite.Interop.dll" Link="x64\SQLite.Interop.dll"> |
| | | <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> |
| | | </Content> |
| | | </ItemGroup> |
| | | <!-- |
| | | ä¸è¦æå¨å¤å¶ Libs\SQLite.Interop.dll å°è¾åºç®å½ã |
| | | æç®¡å± System.Data.SQLite 为 1.0.118ï¼å
¶åç interop(1.0.118) ç± NuGet å
|
| | | stub.system.data.sqlite.core.netframework ç build ç®æ èªå¨æ¾å
¥è¾åºç x64\x86\ åç®å½ã |
| | | æ¤åç¨ Content è¦ç x64\SQLite.Interop.dll ä¼åå
¥è¿æ¶ç 1.0.113ï¼å¯¼è´ |
| | | âæ æ³å¨ SQLite.Interop.dll 䏿¾å°å
¥å£ç¹â并使ææä¾èµ SQLite çåå§å失败ã |
| | | --> |
| | | |
| | | </Project> |
| | |
| | | EndProject |
| | | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Plugin.DeviceConfig", "..\Plugin.DeviceConfig\Plugin.DeviceConfig.csproj", "{0FEB8A27-7309-11F3-45F0-91187046F7F4}" |
| | | EndProject |
| | | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Aging.ResourceContracts", "..\Aging.ResourceContracts\Aging.ResourceContracts.csproj", "{E515619B-022C-4C6D-A24A-E104C968DC8A}" |
| | | EndProject |
| | | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Aging.MvpTests", "..\tests\Aging.MvpTests\Aging.MvpTests.csproj", "{1313DD41-DF07-488A-9898-0C41920A9A77}" |
| | | EndProject |
| | | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DeviceBroker", "..\DeviceBroker\DeviceBroker.csproj", "{2F0A0A40-435E-4222-A0C1-F6B81F20B93C}" |
| | | EndProject |
| | | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CanSimulatorServer.Core", "..\CanSimulatorServer\CanSimulatorServer.Core\CanSimulatorServer.Core.csproj", "{C2F743B2-8B57-43D9-925B-C1E0BBA497E8}" |
| | | EndProject |
| | | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CanSimulatorServer.App", "..\CanSimulatorServer\CanSimulatorServer.App\CanSimulatorServer.App.csproj", "{347529BA-83DF-4D48-89F5-BEDCAF949F82}" |
| | | EndProject |
| | | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Plugin.IntegrationTest", "..\Plugin.IntegrationTest\Plugin.IntegrationTest.csproj", "{D9A17F63-7C1A-C46E-B7AE-B9677D56B49D}" |
| | | EndProject |
| | | Global |
| | | GlobalSection(SolutionConfigurationPlatforms) = preSolution |
| | | Debug|Any CPU = Debug|Any CPU |
| | |
| | | {0FEB8A27-7309-11F3-45F0-91187046F7F4}.Release|x64.Build.0 = Release|Any CPU |
| | | {0FEB8A27-7309-11F3-45F0-91187046F7F4}.Release|x86.ActiveCfg = Release|Any CPU |
| | | {0FEB8A27-7309-11F3-45F0-91187046F7F4}.Release|x86.Build.0 = Release|Any CPU |
| | | {E515619B-022C-4C6D-A24A-E104C968DC8A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
| | | {E515619B-022C-4C6D-A24A-E104C968DC8A}.Debug|Any CPU.Build.0 = Debug|Any CPU |
| | | {E515619B-022C-4C6D-A24A-E104C968DC8A}.Debug|x64.ActiveCfg = Debug|Any CPU |
| | | {E515619B-022C-4C6D-A24A-E104C968DC8A}.Debug|x64.Build.0 = Debug|Any CPU |
| | | {E515619B-022C-4C6D-A24A-E104C968DC8A}.Debug|x86.ActiveCfg = Debug|Any CPU |
| | | {E515619B-022C-4C6D-A24A-E104C968DC8A}.Debug|x86.Build.0 = Debug|Any CPU |
| | | {E515619B-022C-4C6D-A24A-E104C968DC8A}.Release|Any CPU.ActiveCfg = Release|Any CPU |
| | | {E515619B-022C-4C6D-A24A-E104C968DC8A}.Release|Any CPU.Build.0 = Release|Any CPU |
| | | {E515619B-022C-4C6D-A24A-E104C968DC8A}.Release|x64.ActiveCfg = Release|Any CPU |
| | | {E515619B-022C-4C6D-A24A-E104C968DC8A}.Release|x64.Build.0 = Release|Any CPU |
| | | {E515619B-022C-4C6D-A24A-E104C968DC8A}.Release|x86.ActiveCfg = Release|Any CPU |
| | | {E515619B-022C-4C6D-A24A-E104C968DC8A}.Release|x86.Build.0 = Release|Any CPU |
| | | {1313DD41-DF07-488A-9898-0C41920A9A77}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
| | | {1313DD41-DF07-488A-9898-0C41920A9A77}.Debug|Any CPU.Build.0 = Debug|Any CPU |
| | | {1313DD41-DF07-488A-9898-0C41920A9A77}.Debug|x64.ActiveCfg = Debug|Any CPU |
| | | {1313DD41-DF07-488A-9898-0C41920A9A77}.Debug|x64.Build.0 = Debug|Any CPU |
| | | {1313DD41-DF07-488A-9898-0C41920A9A77}.Debug|x86.ActiveCfg = Debug|Any CPU |
| | | {1313DD41-DF07-488A-9898-0C41920A9A77}.Debug|x86.Build.0 = Debug|Any CPU |
| | | {1313DD41-DF07-488A-9898-0C41920A9A77}.Release|Any CPU.ActiveCfg = Release|Any CPU |
| | | {1313DD41-DF07-488A-9898-0C41920A9A77}.Release|Any CPU.Build.0 = Release|Any CPU |
| | | {1313DD41-DF07-488A-9898-0C41920A9A77}.Release|x64.ActiveCfg = Release|Any CPU |
| | | {1313DD41-DF07-488A-9898-0C41920A9A77}.Release|x64.Build.0 = Release|Any CPU |
| | | {1313DD41-DF07-488A-9898-0C41920A9A77}.Release|x86.ActiveCfg = Release|Any CPU |
| | | {1313DD41-DF07-488A-9898-0C41920A9A77}.Release|x86.Build.0 = Release|Any CPU |
| | | {2F0A0A40-435E-4222-A0C1-F6B81F20B93C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
| | | {2F0A0A40-435E-4222-A0C1-F6B81F20B93C}.Debug|Any CPU.Build.0 = Debug|Any CPU |
| | | {2F0A0A40-435E-4222-A0C1-F6B81F20B93C}.Debug|x64.ActiveCfg = Debug|Any CPU |
| | | {2F0A0A40-435E-4222-A0C1-F6B81F20B93C}.Debug|x64.Build.0 = Debug|Any CPU |
| | | {2F0A0A40-435E-4222-A0C1-F6B81F20B93C}.Debug|x86.ActiveCfg = Debug|Any CPU |
| | | {2F0A0A40-435E-4222-A0C1-F6B81F20B93C}.Debug|x86.Build.0 = Debug|Any CPU |
| | | {2F0A0A40-435E-4222-A0C1-F6B81F20B93C}.Release|Any CPU.ActiveCfg = Release|Any CPU |
| | | {2F0A0A40-435E-4222-A0C1-F6B81F20B93C}.Release|Any CPU.Build.0 = Release|Any CPU |
| | | {2F0A0A40-435E-4222-A0C1-F6B81F20B93C}.Release|x64.ActiveCfg = Release|Any CPU |
| | | {2F0A0A40-435E-4222-A0C1-F6B81F20B93C}.Release|x64.Build.0 = Release|Any CPU |
| | | {2F0A0A40-435E-4222-A0C1-F6B81F20B93C}.Release|x86.ActiveCfg = Release|Any CPU |
| | | {2F0A0A40-435E-4222-A0C1-F6B81F20B93C}.Release|x86.Build.0 = Release|Any CPU |
| | | {C2F743B2-8B57-43D9-925B-C1E0BBA497E8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
| | | {C2F743B2-8B57-43D9-925B-C1E0BBA497E8}.Debug|Any CPU.Build.0 = Debug|Any CPU |
| | | {C2F743B2-8B57-43D9-925B-C1E0BBA497E8}.Debug|x64.ActiveCfg = Debug|Any CPU |
| | | {C2F743B2-8B57-43D9-925B-C1E0BBA497E8}.Debug|x64.Build.0 = Debug|Any CPU |
| | | {C2F743B2-8B57-43D9-925B-C1E0BBA497E8}.Debug|x86.ActiveCfg = Debug|Any CPU |
| | | {C2F743B2-8B57-43D9-925B-C1E0BBA497E8}.Debug|x86.Build.0 = Debug|Any CPU |
| | | {C2F743B2-8B57-43D9-925B-C1E0BBA497E8}.Release|Any CPU.ActiveCfg = Release|Any CPU |
| | | {C2F743B2-8B57-43D9-925B-C1E0BBA497E8}.Release|Any CPU.Build.0 = Release|Any CPU |
| | | {C2F743B2-8B57-43D9-925B-C1E0BBA497E8}.Release|x64.ActiveCfg = Release|Any CPU |
| | | {C2F743B2-8B57-43D9-925B-C1E0BBA497E8}.Release|x64.Build.0 = Release|Any CPU |
| | | {C2F743B2-8B57-43D9-925B-C1E0BBA497E8}.Release|x86.ActiveCfg = Release|Any CPU |
| | | {C2F743B2-8B57-43D9-925B-C1E0BBA497E8}.Release|x86.Build.0 = Release|Any CPU |
| | | {347529BA-83DF-4D48-89F5-BEDCAF949F82}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
| | | {347529BA-83DF-4D48-89F5-BEDCAF949F82}.Debug|Any CPU.Build.0 = Debug|Any CPU |
| | | {347529BA-83DF-4D48-89F5-BEDCAF949F82}.Debug|x64.ActiveCfg = Debug|Any CPU |
| | | {347529BA-83DF-4D48-89F5-BEDCAF949F82}.Debug|x64.Build.0 = Debug|Any CPU |
| | | {347529BA-83DF-4D48-89F5-BEDCAF949F82}.Debug|x86.ActiveCfg = Debug|Any CPU |
| | | {347529BA-83DF-4D48-89F5-BEDCAF949F82}.Debug|x86.Build.0 = Debug|Any CPU |
| | | {347529BA-83DF-4D48-89F5-BEDCAF949F82}.Release|Any CPU.ActiveCfg = Release|Any CPU |
| | | {347529BA-83DF-4D48-89F5-BEDCAF949F82}.Release|Any CPU.Build.0 = Release|Any CPU |
| | | {347529BA-83DF-4D48-89F5-BEDCAF949F82}.Release|x64.ActiveCfg = Release|Any CPU |
| | | {347529BA-83DF-4D48-89F5-BEDCAF949F82}.Release|x64.Build.0 = Release|Any CPU |
| | | {347529BA-83DF-4D48-89F5-BEDCAF949F82}.Release|x86.ActiveCfg = Release|Any CPU |
| | | {347529BA-83DF-4D48-89F5-BEDCAF949F82}.Release|x86.Build.0 = Release|Any CPU |
| | | {D9A17F63-7C1A-C46E-B7AE-B9677D56B49D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
| | | {D9A17F63-7C1A-C46E-B7AE-B9677D56B49D}.Debug|Any CPU.Build.0 = Debug|Any CPU |
| | | {D9A17F63-7C1A-C46E-B7AE-B9677D56B49D}.Debug|x64.ActiveCfg = Debug|Any CPU |
| | | {D9A17F63-7C1A-C46E-B7AE-B9677D56B49D}.Debug|x64.Build.0 = Debug|Any CPU |
| | | {D9A17F63-7C1A-C46E-B7AE-B9677D56B49D}.Debug|x86.ActiveCfg = Debug|Any CPU |
| | | {D9A17F63-7C1A-C46E-B7AE-B9677D56B49D}.Debug|x86.Build.0 = Debug|Any CPU |
| | | {D9A17F63-7C1A-C46E-B7AE-B9677D56B49D}.Release|Any CPU.ActiveCfg = Release|Any CPU |
| | | {D9A17F63-7C1A-C46E-B7AE-B9677D56B49D}.Release|Any CPU.Build.0 = Release|Any CPU |
| | | {D9A17F63-7C1A-C46E-B7AE-B9677D56B49D}.Release|x64.ActiveCfg = Release|Any CPU |
| | | {D9A17F63-7C1A-C46E-B7AE-B9677D56B49D}.Release|x64.Build.0 = Release|Any CPU |
| | | {D9A17F63-7C1A-C46E-B7AE-B9677D56B49D}.Release|x86.ActiveCfg = Release|Any CPU |
| | | {D9A17F63-7C1A-C46E-B7AE-B9677D56B49D}.Release|x86.Build.0 = Release|Any CPU |
| | | EndGlobalSection |
| | | GlobalSection(SolutionProperties) = preSolution |
| | | HideSolutionNode = FALSE |
| New file |
| | |
| | | <!DOCTYPE html> |
| | | <html lang="zh-CN"> |
| | | <head> |
| | | <meta charset="UTF-8"> |
| | | <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| | | <title>ä»ªå¨æ³¨åä¸ç¡¬ä»¶è°è¯è°ç¨å
³ç³»æ¢³ç</title> |
| | | <script src="https://cdn.jsdelivr.net/npm/mermaid@10/dist/mermaid.min.js"></script> |
| | | <style> |
| | | * { box-sizing: border-box; } |
| | | body { |
| | | font-family: -apple-system, "Segoe UI", "Microsoft YaHei", "PingFang SC", sans-serif; |
| | | max-width: 1200px; |
| | | margin: 0 auto; |
| | | padding: 32px 24px 80px; |
| | | background: #FAFAFA; |
| | | color: #212121; |
| | | line-height: 1.75; |
| | | } |
| | | h1 { |
| | | font-size: 32px; |
| | | color: #1565C0; |
| | | border-bottom: 3px solid #1976D2; |
| | | padding-bottom: 12px; |
| | | margin-bottom: 8px; |
| | | } |
| | | h2 { |
| | | font-size: 24px; |
| | | color: #0D47A1; |
| | | margin-top: 40px; |
| | | padding-left: 12px; |
| | | border-left: 4px solid #FF9800; |
| | | } |
| | | h3 { |
| | | font-size: 18px; |
| | | color: #37474F; |
| | | margin-top: 24px; |
| | | } |
| | | .subtitle { |
| | | color: #757575; |
| | | font-size: 14px; |
| | | margin-bottom: 24px; |
| | | } |
| | | .card { |
| | | background: white; |
| | | border-radius: 8px; |
| | | padding: 20px 24px; |
| | | margin: 16px 0; |
| | | box-shadow: 0 2px 8px rgba(0,0,0,0.06); |
| | | } |
| | | .highlight { |
| | | background: #FFF8E1; |
| | | border-left: 4px solid #FFC107; |
| | | padding: 12px 16px; |
| | | margin: 12px 0; |
| | | border-radius: 4px; |
| | | } |
| | | .info { |
| | | background: #E3F2FD; |
| | | border-left: 4px solid #2196F3; |
| | | padding: 12px 16px; |
| | | margin: 12px 0; |
| | | border-radius: 4px; |
| | | } |
| | | .success { |
| | | background: #E8F5E9; |
| | | border-left: 4px solid #4CAF50; |
| | | padding: 12px 16px; |
| | | margin: 12px 0; |
| | | border-radius: 4px; |
| | | } |
| | | table { |
| | | width: 100%; |
| | | border-collapse: collapse; |
| | | margin: 16px 0; |
| | | background: white; |
| | | border-radius: 6px; |
| | | overflow: hidden; |
| | | box-shadow: 0 1px 4px rgba(0,0,0,0.06); |
| | | } |
| | | th { |
| | | background: #1976D2; |
| | | color: white; |
| | | padding: 12px 14px; |
| | | text-align: left; |
| | | font-weight: 600; |
| | | } |
| | | td { |
| | | padding: 10px 14px; |
| | | border-bottom: 1px solid #EEEEEE; |
| | | } |
| | | tr:nth-child(even) td { background: #FAFAFA; } |
| | | tr:hover td { background: #E3F2FD; } |
| | | code { |
| | | font-family: "Consolas", "Monaco", monospace; |
| | | background: #F5F5F5; |
| | | color: #C62828; |
| | | padding: 2px 6px; |
| | | border-radius: 3px; |
| | | font-size: 13px; |
| | | } |
| | | pre { |
| | | background: #263238; |
| | | color: #ECEFF1; |
| | | padding: 16px 20px; |
| | | border-radius: 6px; |
| | | overflow-x: auto; |
| | | font-family: "Consolas", "Monaco", monospace; |
| | | font-size: 13px; |
| | | line-height: 1.6; |
| | | } |
| | | pre code { |
| | | background: transparent; |
| | | color: inherit; |
| | | padding: 0; |
| | | } |
| | | .mermaid { |
| | | background: white; |
| | | padding: 20px; |
| | | border-radius: 8px; |
| | | margin: 20px 0; |
| | | text-align: center; |
| | | box-shadow: 0 2px 8px rgba(0,0,0,0.06); |
| | | overflow-x: auto; |
| | | } |
| | | ul { padding-left: 22px; } |
| | | li { margin: 4px 0; } |
| | | .badge { |
| | | display: inline-block; |
| | | padding: 2px 8px; |
| | | border-radius: 10px; |
| | | font-size: 12px; |
| | | font-weight: 600; |
| | | margin: 0 3px; |
| | | } |
| | | .badge-write { background: #FFCDD2; color: #B71C1C; } |
| | | .badge-read { background: #C8E6C9; color: #1B5E20; } |
| | | .badge-api { background: #BBDEFB; color: #0D47A1; } |
| | | .toc { |
| | | background: #F5F5F5; |
| | | padding: 16px 24px; |
| | | border-radius: 6px; |
| | | margin: 20px 0; |
| | | } |
| | | .toc a { |
| | | color: #1976D2; |
| | | text-decoration: none; |
| | | display: block; |
| | | padding: 4px 0; |
| | | } |
| | | .toc a:hover { text-decoration: underline; } |
| | | .arrow { color: #FF9800; font-weight: bold; } |
| | | .flow-step { |
| | | background: white; |
| | | border: 1px solid #E0E0E0; |
| | | border-radius: 6px; |
| | | padding: 12px 16px; |
| | | margin: 8px 0; |
| | | } |
| | | .flow-step strong { color: #1976D2; } |
| | | footer { |
| | | margin-top: 60px; |
| | | padding-top: 20px; |
| | | border-top: 1px solid #E0E0E0; |
| | | color: #757575; |
| | | font-size: 12px; |
| | | text-align: center; |
| | | } |
| | | </style> |
| | | </head> |
| | | <body> |
| | | |
| | | <h1>ä»ªå¨æ³¨å & 硬件è°è¯ è°ç¨å
³ç³»æ¢³ç</h1> |
| | | <div class="subtitle">TapProject · Plugin.DeviceConfig â Plugin.DeviceDebug äº¤äºæ¶æè¯´æ</div> |
| | | |
| | | <div class="toc"> |
| | | <strong>ç®å½</strong> |
| | | <a href="#sec1">1. æ´ä½æ¶æï¼ä¸å±ï¼</a> |
| | | <a href="#sec2">2. æ°æ®å±è¦åï¼ä¸¤ä¸ªæä»¶éè¿ data.db å
񄧮</a> |
| | | <a href="#sec3">3. 宿´è°ç¨é¾è·¯ï¼ç¨æ·è§è§ï¼</a> |
| | | <a href="#sec4">4. å
³é®æ¥å£ä¾èµï¼Aging.Infrastructureï¼</a> |
| | | <a href="#sec5">5. ä¼è¯ç¶ææºï¼è·¨æ¨¡åçæ ¸å¿åè°ç¹ï¼</a> |
| | | <a href="#sec6">6. éææµè¯é¡¹ç®éçç»åæ¼ç¤º</a> |
| | | <a href="#sec7">7. æ¶åºå¾ï¼å®æ´æ°æ®æµå¨</a> |
| | | <a href="#sec8">8. æ ¸å¿è®¾è®¡ææ³</a> |
| | | </div> |
| | | |
| | | <!-- ========== Section 1 ========== --> |
| | | <h2 id="sec1">1. æ´ä½æ¶æï¼ä¸å±ï¼</h2> |
| | | |
| | | <div class="mermaid"> |
| | | graph TB |
| | | subgraph UIå±["UI å± - Plugin.*"] |
| | | A["Plugin.DeviceConfig<br/>仪å¨ä»ªè¡¨æ³¨å"] |
| | | B["Plugin.DeviceDebug<br/>硬件è°è¯"] |
| | | B1["PowerSupplyDebugPanel"] |
| | | B2["CanDebugPanel"] |
| | | B3["PlcDebugPanel"] |
| | | end |
| | | |
| | | subgraph åºç¡è®¾æ½å±["Aging.Infrastructure<br/>å
±äº«åºç¡è®¾æ½"] |
| | | C["IDeviceManager<br/>设å¤çå½å¨æ"] |
| | | D["IDeviceService<br/>å½ä»¤æ§è¡"] |
| | | E["IResourceManager<br/>èµæºé¢çº¦/ç§çº¦"] |
| | | F["DebugSessionManager<br/>è°è¯ä¼è¯ç¶ææº"] |
| | | G["DriverFactory<br/>驱å¨å·¥å"] |
| | | H["IDeviceDriver<br/>CAN/ModBus/S7/SCPI/Tcp"] |
| | | end |
| | | |
| | | subgraph æ°æ®å±["SQLite"] |
| | | DB1[("data.db<br/>DeviceDefinition<br/>DeviceChannel<br/>SlotDeviceMapping<br/>DeviceConfigVersion<br/>DeviceGroupTemplate")] |
| | | DB2[("debug.db<br/>debug_session<br/>debug_operation")] |
| | | end |
| | | |
| | | A -->|Save/Query| DB1 |
| | | B -->|读设å¤å表| DB1 |
| | | B -->|åä¼è¯/审计| DB2 |
| | | B --> B1 & B2 & B3 |
| | | B -->|Connect/Command| C |
| | | C -->|Create| G |
| | | G -->|Instantiate| H |
| | | B -->|Validate maintenance| F |
| | | F -->|Reserve/Release| E |
| | | D -->|SendCommandAsync| H |
| | | </div> |
| | | |
| | | <div class="info"> |
| | | <strong>ä¸å±èè´£ï¼</strong> |
| | | <ul> |
| | | <li><strong>UI å±</strong>ï¼æä»¶ç WPF çé¢ï¼è´è´£æ°æ®å±ç¤ºåç¨æ·äº¤äº</li> |
| | | <li><strong>åºç¡è®¾æ½å±</strong>ï¼Aging.Infrastructure æä¾çæ¥å£/æå¡ï¼è´è´£é©±å¨è°åº¦ãæéãä¼è¯ç®¡ç</li> |
| | | <li><strong>æ°æ®å±</strong>ï¼SQLite æ°æ®åºï¼è´è´£æä¹
å设å¤é
ç½®åè°è¯å®¡è®¡</li> |
| | | </ul> |
| | | </div> |
| | | |
| | | <!-- ========== Section 2 ========== --> |
| | | <h2 id="sec2">2. æ°æ®å±è¦åï¼ä¸¤ä¸ªæä»¶éè¿ <code>data.db</code> å
񄧮</h2> |
| | | |
| | | <div class="highlight"> |
| | | <strong>æå
³é®ç设计ï¼</strong> DeviceConfig æ¯<strong>ç产æ¹</strong>ï¼åå
¥ï¼ï¼DeviceDebug æ¯<strong>æ¶è´¹æ¹</strong>ï¼è¯»åï¼ã |
| | | 两è
ä¸éè¿ API ç´æ¥è°ç¨ï¼èæ¯éè¿å
±äº«ç <code>data.db</code> éå¼å¥çº¦ã |
| | | </div> |
| | | |
| | | <table> |
| | | <thead> |
| | | <tr><th>表å</th><th>è°åå
¥</th><th>è°è¯»å</th><th>说æ</th></tr> |
| | | </thead> |
| | | <tbody> |
| | | <tr> |
| | | <td><code>DeviceDefinition</code></td> |
| | | <td><span class="badge badge-write">DeviceConfig</span></td> |
| | | <td><span class="badge badge-read">DeviceDebug</span></td> |
| | | <td>设å¤ä¸»è¡¨ï¼DeviceId / Kind / Transport / Endpoint / DriverTypeï¼</td> |
| | | </tr> |
| | | <tr> |
| | | <td><code>DeviceChannel</code></td> |
| | | <td><span class="badge badge-write">DeviceConfig</span></td> |
| | | <td><span class="badge badge-read">DeviceDebug</span></td> |
| | | <td>设å¤ééï¼ChannelId / Capability / çµåçµæµä¸éï¼</td> |
| | | </tr> |
| | | <tr> |
| | | <td><code>SlotDeviceMapping</code></td> |
| | | <td><span class="badge badge-write">DeviceConfig</span></td> |
| | | <td><span class="badge badge-read">DeviceDebug</span></td> |
| | | <td>Slot â 设å¤éé çæ å°è¡¨</td> |
| | | </tr> |
| | | <tr> |
| | | <td><code>DeviceConfigVersion</code></td> |
| | | <td><span class="badge badge-write">DeviceConfig</span></td> |
| | | <td><span class="badge badge-read">DeviceDebug</span></td> |
| | | <td>é
ç½®çæ¬ï¼Draft/Published/Effectiveï¼</td> |
| | | </tr> |
| | | <tr> |
| | | <td><code>debug_session</code></td> |
| | | <td><span class="badge badge-write">DeviceDebug</span></td> |
| | | <td><span class="badge badge-read">DeviceDebug</span></td> |
| | | <td>è°è¯ä¼è¯ï¼å«ç¶ææºæ°æ®ï¼</td> |
| | | </tr> |
| | | <tr> |
| | | <td><code>debug_operation</code></td> |
| | | <td><span class="badge badge-write">DeviceDebug</span></td> |
| | | <td><span class="badge badge-read">DeviceDebug</span></td> |
| | | <td>è°è¯æä½å®¡è®¡æ¥å¿</td> |
| | | </tr> |
| | | </tbody> |
| | | </table> |
| | | |
| | | <h3>å
±äº«æºå¶æºç </h3> |
| | | |
| | | <div class="flow-step"> |
| | | <strong>DeviceDebug.xaml.cs 第 95 è¡éè¿ï¼</strong> |
| | | <pre><code>_deviceConfigDbPath = Path.Combine(BaseFolder, "data.db"); <span style="color:#4CAF50">// ä¸ DeviceConfig åç®å½</span> |
| | | var sqliteHelper = new SqliteHelper(_deviceConfigDbPath); |
| | | var dt = sqliteHelper.GetDataTable( |
| | | "SELECT DeviceId, Kind FROM DeviceDefinition ORDER BY DeviceId");</code></pre> |
| | | </div> |
| | | |
| | | <div class="flow-step"> |
| | | <strong>å
³é®ç¹ï¼</strong>BaseFolder æ¯ä¸»ç¨åºå¨ <code>PluginLoader</code> éç»ä¸æ³¨å
¥çç®å½ï¼ä¸¤ä¸ªæä»¶é½è¯»ååä¸ä¸ª <code>data.db</code>ã |
| | | </div> |
| | | |
| | | <!-- ========== Section 3 ========== --> |
| | | <h2 id="sec3">3. 宿´è°ç¨é¾è·¯ï¼ç¨æ·è§è§ï¼</h2> |
| | | |
| | | <h3>åºæ¯ Aï¼æ³¨å设å¤ï¼DeviceConfigï¼</h3> |
| | | |
| | | <div class="mermaid"> |
| | | sequenceDiagram |
| | | participant U as ç¨æ· |
| | | participant UI as DeviceConfig<br/>UI |
| | | participant M as DeviceEditModal |
| | | participant Model as DeviceConfigModel |
| | | participant DB as data.db |
| | | |
| | | U->>UI: ç¹å»"æ°å¢è®¾å¤" |
| | | UI->>M: OpenDeviceEditModal(new DeviceDefinition) |
| | | M->>M: 填表 + ééé
ç½® |
| | | U->>M: ç¹å»"ä¿å" |
| | | M->>Model: SaveDevice(device) |
| | | Model->>DB: INSERT OR REPLACE DeviceDefinition |
| | | M->>Model: SaveChannel(ch) |
| | | Model->>DB: INSERT OR REPLACE DeviceChannel |
| | | M-->>UI: DialogResult = true |
| | | UI->>UI: RefreshAllData() |
| | | </div> |
| | | |
| | | <h3>åºæ¯ Bï¼è°è¯è®¾å¤ï¼DeviceDebugï¼</h3> |
| | | |
| | | <div class="mermaid"> |
| | | sequenceDiagram |
| | | participant U as ç¨æ· |
| | | participant DD as DeviceDebug<br/>UI |
| | | participant SM as DebugSessionManager |
| | | participant DM as DeviceManager |
| | | participant DF as DriverFactory |
| | | participant DRV as CanDriverAdapter |
| | | participant SIM as CanSimulator |
| | | participant DB as SQLite |
| | | |
| | | U->>DD: 鿩 CAN-001 䏿项 |
| | | DD->>DB: SELECT * FROM DeviceDefinition<br/>ï¼è¯»å data.dbï¼ |
| | | DD->>SM: OpenSession(...) |
| | | SM->>DB: INSERT debug_session (state=ReadOnly) |
| | | DD->>DM: ConnectAsync("CAN-001") |
| | | DM->>DF: CreateDriver("CAN", "CAN_BUS_1:0") |
| | | DF->>DRV: new CanDriverAdapter |
| | | DRV->>SIM: ConnectAsync â æ³¨åèç¹å°æ»çº¿ |
| | | |
| | | Note over DD: å è½½ CanDebugPanel<br/>AutoConnectOnLoad=true |
| | | U->>DD: è¿å
¥ç»´æ¤æ¨¡å¼ |
| | | DD->>SM: RequestMaintenance(sessionId) |
| | | SM->>DB: UPDATE debug_session SET state=Acquiring |
| | | SM->>SM: ResourceManager.Reserve(...) |
| | | DD->>SM: ActivateMaintenance(sessionId) |
| | | SM->>DB: UPDATE debug_session SET state=MaintenanceActive |
| | | DD->>DD: LoadPanel éæ°å è½½<br/>CanDebugPanel.IsMaintenanceMode = true |
| | | |
| | | U->>DD: åé CAN 帧 |
| | | DD->>SM: ValidateCommand(sessionId, cmd) |
| | | SM-->>DD: true |
| | | DD->>DRV: SendCommandAsync("SEND:0x100:AA BB CC DD") |
| | | DRV->>SIM: CanNode.SendFrame(frame) |
| | | SIM-->>DRV: DriverFrameReceived (èªå¨ååº) |
| | | DRV-->>DD: äºä»¶åè° |
| | | DD->>DB: INSERT debug_operation (审计) |
| | | </div> |
| | | |
| | | <!-- ========== Section 4 ========== --> |
| | | <h2 id="sec4">4. å
³é®æ¥å£ä¾èµï¼Aging.Infrastructureï¼</h2> |
| | | |
| | | <div class="card"> |
| | | <strong>说æï¼</strong>DeviceConfig åªåæ°æ®ç®¡çï¼ä¸ç´æ¥è°ç¨æ¥å£ï¼DeviceDebug éè¿æ¥å£è°ç¨åºå±æå¡ã |
| | | </div> |
| | | |
| | | <table> |
| | | <thead> |
| | | <tr><th>æ¥å£</th><th>å®ä¹æä»¶</th><th>è°ç¨</th><th>ä½ç¨</th></tr> |
| | | </thead> |
| | | <tbody> |
| | | <tr> |
| | | <td><code>IDeviceDriver</code></td> |
| | | <td>Contracts/IDeviceDriver.cs</td> |
| | | <td>ææé©±å¨éé
å¨</td> |
| | | <td>ç»ä¸çè¿æ¥/å½ä»¤/æ¥è¯¢æ¥å£</td> |
| | | </tr> |
| | | <tr> |
| | | <td><code>IDeviceManager</code></td> |
| | | <td>Contracts/IDeviceManager.cs</td> |
| | | <td>DeviceDebug</td> |
| | | <td>设å¤çå½å¨æç®¡çï¼æ³¨å/è¿æ¥/æå¼ï¼</td> |
| | | </tr> |
| | | <tr> |
| | | <td><code>IDeviceService</code></td> |
| | | <td>Contracts/IDeviceService.cs</td> |
| | | <td>DeviceDebug</td> |
| | | <td>å½ä»¤æ§è¡ï¼å« OwnerToken æéæ£æ¥ï¼</td> |
| | | </tr> |
| | | <tr> |
| | | <td><code>IResourceManager</code></td> |
| | | <td>Contracts/IResourceManager.cs</td> |
| | | <td>DebugSessionManager</td> |
| | | <td>èµæºé¢çº¦/éæ¾ï¼é²æ¢è°è¯ä¸ç产å²çª</td> |
| | | </tr> |
| | | <tr> |
| | | <td><code>IOperationLease</code></td> |
| | | <td>Contracts/IOperationLease.cs</td> |
| | | <td>ResourceManager</td> |
| | | <td>æä½ç§çº¦ï¼è¶
æ¶èªå¨éæ¾ï¼</td> |
| | | </tr> |
| | | <tr> |
| | | <td><code>ResourceOwnerToken</code></td> |
| | | <td>Contracts/ResourceOwnerToken.cs</td> |
| | | <td>æ´ä¸ªåºç¡è®¾æ½å±</td> |
| | | <td>Owner ç±»å + IDï¼å¦ Maintenance:sessionIdï¼</td> |
| | | </tr> |
| | | </tbody> |
| | | </table> |
| | | |
| | | <h3>DriverFactory æ¯æçä¼ è¾ç±»å</h3> |
| | | |
| | | <table> |
| | | <thead> |
| | | <tr><th>Transport</th><th>Adapter</th><th>åºå±ä¾èµ</th><th>Endpoint æ ¼å¼</th></tr> |
| | | </thead> |
| | | <tbody> |
| | | <tr><td>Tcp</td><td>TcpRawDriverAdapter</td><td>ConnectionUtil.TcpClient</td><td>IP:Port</td></tr> |
| | | <tr><td>SCPI</td><td>ScpiDriverAdapter</td><td>SCPI over TCP</td><td>IP:Port</td></tr> |
| | | <tr><td>ModBus</td><td>ModBusDriverAdapter</td><td>HslCommunication.ModbusTcpNet</td><td>IP:Port:slaveId</td></tr> |
| | | <tr><td>S7</td><td>S7DriverAdapter</td><td>S7netplus</td><td>IP:Port</td></tr> |
| | | <tr><td><strong>CAN</strong></td><td><strong>CanDriverAdapter</strong></td><td><strong>CanSimulator</strong></td><td><strong>BusName:NodeIndex</strong></td></tr> |
| | | </tbody> |
| | | </table> |
| | | |
| | | <!-- ========== Section 5 ========== --> |
| | | <h2 id="sec5">5. ä¼è¯ç¶ææºï¼è·¨æ¨¡åçæ ¸å¿åè°ç¹ï¼</h2> |
| | | |
| | | <div class="mermaid"> |
| | | stateDiagram-v2 |
| | | [*] --> ReadOnly: OpenSession |
| | | ReadOnly --> AcquiringMaintenance: RequestMaintenance<br/>(æ£æ¥èµæºé¢çº¦) |
| | | AcquiringMaintenance --> MaintenanceActive: ActivateMaintenance |
| | | AcquiringMaintenance --> ReadOnly: æç»<br/>(被ç产é¢çº¦) |
| | | MaintenanceActive --> Closing: CloseSession<br/>(å®å
¨ç¶ææ£æ¥) |
| | | Closing --> Closed |
| | | Closed --> [*] |
| | | |
| | | MaintenanceActive --> Faulted: FaultSession<br/>(éä¿¡/硬件é误) |
| | | Faulted --> RecoveryRequired: MarkRecoveryRequired |
| | | RecoveryRequired --> ReadOnly: æ¢å¤åéæ°è¿æ¥ |
| | | RecoveryRequired --> [*]: æ æ³æ¢å¤åå
³é |
| | | </div> |
| | | |
| | | <h3>ç¶æå¯¹ä¸å±çå½±å</h3> |
| | | |
| | | <table> |
| | | <thead> |
| | | <tr><th>ç¶æ</th><th>å¯åéå½ä»¤</th><th>UI æ¾ç¤º</th><th>èµæºå ç¨</th></tr> |
| | | </thead> |
| | | <tbody> |
| | | <tr><td>ReadOnly</td><td>â åªè¯»çæ§</td><td>颿¿æé®ç¦ç¨</td><td>æ </td></tr> |
| | | <tr><td>AcquiringMaintenance</td><td>â ç³è¯·ä¸</td><td>è¿æ¸¡ç¶æ</td><td>æ£å¨æ¢å </td></tr> |
| | | <tr><td>MaintenanceActive</td><td>â
å
许å</td><td>颿¿æé®å¯ç¨</td><td>ææ Maintenance ç§çº¦</td></tr> |
| | | <tr><td>Closing</td><td>â å
³éä¸</td><td>è¿æ¸¡ç¶æ</td><td>éæ¾ä¸</td></tr> |
| | | <tr><td>Faulted</td><td>â æ
é</td><td>红è²åè¦</td><td>已鿾</td></tr> |
| | | <tr><td>RecoveryRequired</td><td>â å¾
æ¢å¤</td><td>æ©è²è¦å</td><td>æ </td></tr> |
| | | <tr><td>Closed</td><td>â</td><td>ä¼è¯ç»æ</td><td>æ </td></tr> |
| | | </tbody> |
| | | </table> |
| | | |
| | | <div class="success"> |
| | | <strong>设计巧å¦ä¹å¤ï¼</strong>ä¼è¯ç¶ææºåæ¶å³å®äº |
| | | <ul> |
| | | <li>UI å±ï¼CanDebugPanel.IsMaintenanceMode â åéæé®æ¯å¦å¯ç¹</li> |
| | | <li>ä¸å¡å±ï¼DeviceService æ¯å¦æ¥å该å½ä»¤ â OwnerToken æééªè¯</li> |
| | | <li>èµæºå±ï¼ResourceManager æ¯å¦ä»ææç§çº¦ â 鲿¢è¢«ç产æ¢å </li> |
| | | </ul> |
| | | </div> |
| | | |
| | | <!-- ========== Section 6 ========== --> |
| | | <h2 id="sec6">6. éææµè¯é¡¹ç®éçç»åæ¼ç¤º</h2> |
| | | |
| | | <div class="mermaid"> |
| | | graph LR |
| | | subgraph "Plugin.IntegrationTest<br/>_testDir = %LOCALAPPDATA%/PluginIntegrationTest" |
| | | Tab1["Tab 1: DeviceConfig<br/>(åµå
¥å®ä¾)"] |
| | | Tab2["Tab 2: DeviceDebug<br/>(åµå
¥å®ä¾)"] |
| | | Tab3["Tab 3: CanDebugPanel<br/>(ç¬ç«å®ä¾)"] |
| | | DB[("data.db<br/>+ debug.db")] |
| | | end |
| | | |
| | | Tab1 -->|åå
¥| DB |
| | | Tab2 -->|读å| DB |
| | | Tab3 -->|驱å¨è°ç¨| SIM["CanSimulator<br/>(å
åèææ»çº¿)"] |
| | | </div> |
| | | |
| | | <div class="info"> |
| | | <strong>å
³é®ç¹ï¼</strong>ä¸ä¸ª Tab å
±äº«åä¸ä¸ª <code>_testDir</code> ä½ä¸º BaseFolderï¼æä»¥å¨ Tab 1 æ·»å çè®¾å¤ â å·æ°å Tab 2 ç«å³å¯è§ â éä¸å³èªå¨è¿æ¥ Tab 3 çæ¨¡ææ»çº¿ã |
| | | </div> |
| | | |
| | | <h3>æµè¯æ°æ®æµ</h3> |
| | | <ol> |
| | | <li><strong>é¢ç½®é¶æ®µ</strong>ï¼<code>SeedPresetCanDevices()</code> åå
¥ CAN-001 / CAN-002</li> |
| | | <li><strong>注åé¶æ®µ</strong>ï¼å¨ Tab 1 䏿°å¢è®¾å¤ï¼å¦ CAN-003 â CAN_BUS_1:2ï¼</li> |
| | | <li><strong>è°è¯é¶æ®µ</strong>ï¼å¨ Tab 2 ä¸éæ© CAN-003ï¼CanDebugPanel èªå¨è¿æ¥æ»çº¿</li> |
| | | <li><strong>模æé¶æ®µ</strong>ï¼å¨ Tab 3 ä¸å¯å¨æ»çº¿ï¼å¼å¯èªå¨ååº</li> |
| | | <li><strong>éªè¯é¶æ®µ</strong>ï¼Tab 2 åé帧 â æ¶å° Tab 3 çèªå¨ååº</li> |
| | | </ol> |
| | | |
| | | <!-- ========== Section 7 ========== --> |
| | | <h2 id="sec7">7. æ¶åºå¾ï¼å®æ´æ°æ®æµå¨</h2> |
| | | |
| | | <div class="mermaid"> |
| | | sequenceDiagram |
| | | autonumber |
| | | participant U as ç¨æ· |
| | | participant DC as DeviceConfig<br/>UI |
| | | participant DM1 as DeviceConfigModel |
| | | participant DB1 as data.db |
| | | participant DD as DeviceDebug<br/>UI |
| | | participant SM as SessionManager |
| | | participant DM2 as DeviceDebugModel |
| | | participant DB2 as debug.db |
| | | participant MGR as DeviceManager |
| | | participant SVC as DeviceService |
| | | participant DRV as CanDriverAdapter |
| | | participant SIM as CanSimulator<br/>æ»çº¿ |
| | | |
| | | rect rgb(255, 248, 225) |
| | | Note over U,DB1: é¶æ®µ1ï¼æ³¨åè®¾å¤ |
| | | U->>DC: æ°å¢ CAN-001 |
| | | DC->>DM1: SaveDevice |
| | | DM1->>DB1: INSERT DeviceDefinition<br/>Endpoint=CAN_BUS_1:0 |
| | | end |
| | | |
| | | rect rgb(227, 242, 253) |
| | | Note over U,SIM: é¶æ®µ2ï¼æå¼è°è¯ä¼è¯ |
| | | U->>DD: éæ© CAN-001 |
| | | DD->>DB1: SELECT DeviceDefinition |
| | | DB1-->>DD: {Kind=CanDevice, Endpoint=CAN_BUS_1:0} |
| | | DD->>SM: OpenSession |
| | | SM->>DM2: CreateSession |
| | | DM2->>DB2: INSERT debug_session (ReadOnly) |
| | | DD->>MGR: ConnectAsync("CAN-001") |
| | | MGR->>DRV: DriverFactory.CreateDriver("CAN",...) |
| | | DRV->>SIM: 注åèç¹0å°CAN_BUS_1æ»çº¿ |
| | | end |
| | | |
| | | rect rgb(232, 245, 233) |
| | | Note over U,DRV: é¶æ®µ3ï¼è¿å
¥ç»´æ¤æ¨¡å¼ |
| | | U->>DD: è¿å
¥ç»´æ¤ |
| | | DD->>SM: RequestMaintenance |
| | | SM->>DB2: UPDATE state=Acquiring |
| | | SM->>SM: ResourceManager.Reserve |
| | | DD->>SM: ActivateMaintenance |
| | | SM->>DB2: UPDATE state=MaintenanceActive |
| | | DD->>DD: LoadPanel(kind)<br/>IsMaintenanceMode=true |
| | | end |
| | | |
| | | rect rgb(255, 224, 178) |
| | | Note over U,SIM: é¶æ®µ4ï¼åéè°è¯å½ä»¤ |
| | | U->>DD: ç¹å»"åé"帧 |
| | | DD->>SM: ValidateCommand(sessionId, cmd) |
| | | SM-->>DD: â
true |
| | | DD->>SVC: ExecuteCommandAsync |
| | | SVC->>DRV: SendCommandAsync("SEND:0x100:AA BB CC") |
| | | DRV->>SIM: CanNode.SendFrame(frame) |
| | | SIM->>SIM: è·¯ç±å°å
¶ä»èç¹<br/>+ æ£æ¥ AutoResponse |
| | | SIM-->>DRV: DriverFrameReceived (ååºå¸§) |
| | | DRV-->>SVC: ç»æ |
| | | SVC-->>DD: ExecuteResult |
| | | DD->>DM2: RecordOperation(op) |
| | | DM2->>DB2: INSERT debug_operation |
| | | DD->>DD: æ´æ°å®¡è®¡å表 |
| | | end |
| | | |
| | | rect rgb(255, 205, 210) |
| | | Note over U,DB2: é¶æ®µ5ï¼å
³éä¼è¯ |
| | | U->>DD: éåºç»´æ¤ |
| | | DD->>SM: CloseSession |
| | | SM->>DB2: UPDATE state=Closed<br/>SET closed_at=now |
| | | SM->>SM: ResourceManager.ReleaseReservation |
| | | SM->>DRV: DisconnectAsync |
| | | DRV->>SIM: 仿»çº¿æ³¨éèç¹ |
| | | end |
| | | </div> |
| | | |
| | | <!-- ========== Section 8 ========== --> |
| | | <h2 id="sec8">8. æ ¸å¿è®¾è®¡ææ³</h2> |
| | | |
| | | <div class="card"> |
| | | <h3>ð¯ æ°æ®å
±äº« = éå¼å¥çº¦</h3> |
| | | DeviceDebug åªä¾èµ DeviceConfig å好ç <code>data.db</code>ï¼ä¸éè¦ API è°ç¨ã两个æä»¶ç <strong>BaseFolder ä¸è´</strong>æ¯æ ¸å¿åæï¼ä¸»ç¨åºéè¿ PluginLoader 注å
¥ã |
| | | </div> |
| | | |
| | | <div class="card"> |
| | | <h3>ð¯ ç¶æéä¸ = DebugSessionManager</h3> |
| | | æææéæ£æ¥èµ°åä¸ä¸ªç¶ææºãUIã驱å¨ã审计ä¸å¤é½éè¿ç¶ææ¥è¯¢åæ¥ãé¿å
åå¤é¶æ£å¤æå¯¼è´ä¸ä¸è´ã |
| | | </div> |
| | | |
| | | <div class="card"> |
| | | <h3>ð¯ 驱卿½è±¡ = IDeviceDriver</h3> |
| | | ä¸å±é¢æ¿ä¸ç¥éåºå±æ¯ TCPãModbusãS7ãSCPI è¿æ¯æ¨¡æ CAN æ»çº¿ã<code>DriverFactory.CreateDevice(id, transport, endpoint)</code> ç»ä¸åæ´¾ã |
| | | </div> |
| | | |
| | | <div class="card"> |
| | | <h3>ð¯ èµæºé¢çº¦ = IResourceManager</h3> |
| | | è°è¯æ¨¡å¼åç产模å¼äºæ¥ï¼éè¿ <code>ResourceOwnerToken</code> + ç§çº¦æºå¶ä¿è¯ï¼<br> |
| | | - ç产任å¡è¿è¡ä¸ â è°è¯è¯·æ±å¤±è´¥<br> |
| | | - è°è¯ææç§çº¦ â ç产任å¡è¢«æç»<br> |
| | | - ç§çº¦è¶
æ¶æªç» â 强å¶éæ¾ï¼é¿å
æ»é |
| | | </div> |
| | | |
| | | <div class="card"> |
| | | <h3>ð¯ 审计éç¯ = debug_operation</h3> |
| | | æ¯ä¸æ¬¡å½ä»¤é½è®°å½ï¼<code>SessionId · CommandType · Parameters · Outcome · Readback · Error</code>ãäºåå¯ä»¥å®æ´éç°è°è¯è¿ç¨ï¼æ¯ç»´æ¤è´£ä»»è¿½æº¯çå
³é®ã |
| | | </div> |
| | | |
| | | <div class="card"> |
| | | <h3>ð¯ çæ¬ç®¡ç = DeviceConfigVersion</h3> |
| | | é
ç½®ä¸æ¯"æ¹äºå°±çæ"ï¼èæ¯èµ° <strong>Draft â Published â Effective</strong> ä¸é¶æ®µï¼ |
| | | <ol> |
| | | <li>DeviceConfig ä¿åè稿 â Draft</li> |
| | | <li>æäº¤åå¸ â Publishedï¼é带é
ç½®åå¸ï¼</li> |
| | | <li>åºç¨å°ç产 â Effectiveï¼æ§ç Published åéï¼</li> |
| | | </ol> |
| | | è¿æ ·è½ä¿è¯ç产ç¯å¢é
置稳å®ï¼è°è¯æ¶å¯åæ»ã |
| | | </div> |
| | | |
| | | <h2>éå½ï¼æä»¶è·¯å¾éæ¥</h2> |
| | | |
| | | <table> |
| | | <thead> |
| | | <tr><th>ç»ä»¶</th><th>è·¯å¾</th></tr> |
| | | </thead> |
| | | <tbody> |
| | | <tr><td>仪å¨ä»ªè¡¨æ³¨åæä»¶</td><td><code>d:\TestPlatform\TapProject\Plugin.DeviceConfig\</code></td></tr> |
| | | <tr><td>硬件è°è¯æä»¶</td><td><code>d:\TestPlatform\TapProject\Plugin.DeviceDebug\</code></td></tr> |
| | | <tr><td>åºç¡è®¾æ½ & 驱å¨</td><td><code>d:\TestPlatform\TapProject\Aging.Infrastructure\</code></td></tr> |
| | | <tr><td>CAN 模æå¨æ ¸å¿</td><td><code>d:\TestPlatform\TapProject\CanSimulator\</code></td></tr> |
| | | <tr><td>éææµè¯ç¯å¢</td><td><code>d:\TestPlatform\TapProject\Plugin.IntegrationTest\</code></td></tr> |
| | | <tr><td>æä¹
åæ°æ®ç®å½</td><td><code>%LOCALAPPDATA%\PluginIntegrationTest\data.db</code></td></tr> |
| | | </tbody> |
| | | </table> |
| | | |
| | | <footer> |
| | | Generated for TapProject · ä»ªå¨æ³¨åä¸ç¡¬ä»¶è°è¯æ¨¡åæ¶æåæ Â· 2026-11-02 |
| | | </footer> |
| | | |
| | | <script> |
| | | mermaid.initialize({ |
| | | startOnLoad: true, |
| | | theme: 'default', |
| | | securityLevel: 'loose', |
| | | fontFamily: 'Segoe UI, Microsoft YaHei, sans-serif', |
| | | flowchart: { curve: 'basis', padding: 20 }, |
| | | sequence: { showSequenceNumbers: false, actorMargin: 60 } |
| | | }); |
| | | </script> |
| | | |
| | | </body> |
| | | </html> |
| New file |
| | |
| | | <!doctype html><html lang="zh-CN"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><meta name="color-scheme" content="light"><title>Local + DeviceBroker æ··åæ¶æè¯¦ç»è®¾è®¡è¯´æä¹¦ V3.0</title><style> |
| | | :root{--ink:#162c40;--muted:#586d7e;--blue:#155c88;--line:#d7e2eb;--paper:#fff;--bg:#edf2f6;--nav:#102b40}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.85 "Microsoft YaHei","Segoe UI",Arial,sans-serif}a{color:#11618f;text-underline-offset:3px}aside{position:fixed;inset:0 auto 0 0;width:270px;background:var(--nav);color:#eff7fc;padding:26px 20px;overflow:auto}aside .brand{font-size:20px;font-weight:700;line-height:1.5}aside .sub{color:#a9c1d2;font-size:12px;margin:9px 0 22px}aside input{width:100%;background:#fff;color:#162c40;border:0;padding:10px 12px;border-radius:4px;font:inherit;font-size:13px}nav{margin-top:18px}nav a{display:block;color:#cbdce8;text-decoration:none;font-size:13px;line-height:1.5;padding:8px 7px;border-left:2px solid transparent}nav a:hover,nav a.active{color:#fff;border-color:#66c5f2;background:#1a405b}main{margin-left:270px;padding:42px 50px 80px;max-width:1650px}.hero{background:linear-gradient(120deg,#12334d,#225f83);color:white;padding:42px 48px;position:relative;border-top:6px solid #63c2e6}.eyebrow{font:12px/1.6 Arial,sans-serif;letter-spacing:2px;color:#afd9ef}.hero h1{font-size:34px;line-height:1.5;margin:12px 0 20px;max-width:950px}.hero p{max-width:900px;color:#dcebf5}.pills{display:flex;gap:10px;flex-wrap:wrap}.pill{border:1px solid #6089a5;padding:3px 12px;font-size:12px}.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.toolbar span{margin-left:auto;color:var(--muted);font-size:13px}button{cursor:pointer;border:1px solid #a9bfce;background:#fff;color:#164b6d;padding:8px 14px;border-radius:4px;font:inherit;font-size:13px}button:hover{background:#eaf4fa}section{margin-top:28px;background:var(--paper);border:1px solid var(--line);padding:30px 36px;box-shadow:0 3px 15px #143b5c05}h2{margin:0 0 22px;font-size:24px;line-height:1.5;border-bottom:2px solid #d9e8f2;padding-bottom:14px;color:#144e72}h3{font-size:18px;color:#24516d;margin:28px 0 12px}p{margin:12px 0}li{margin:7px 0}ol{padding-left:25px}.table-wrap{max-width:100%;overflow-x:auto;margin:20px 0}table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.7}th{background:#eaf2f8;color:#194d70;font-weight:700;text-align:left}th,td{padding:11px 14px;border:1px solid #d8e2eb;vertical-align:top;overflow-wrap:anywhere}tbody tr:nth-child(even){background:#f8fafc}code{font:13px/1.65 Consolas,"Microsoft YaHei",monospace;background:#edf3f7;padding:2px 5px;overflow-wrap:anywhere}pre{margin:0 0 20px;background:#102739;color:#e0eef7;padding:20px;overflow:auto;line-height:1.7;tab-size:4}pre code{background:none;color:inherit;padding:0;white-space:pre;overflow-wrap:normal;font-size:13px}.codebar{display:flex;justify-content:space-between;align-items:center;padding:8px 14px;background:#dce8f1;color:#24536f;font-size:12px;margin-top:20px}.copy{padding:3px 12px}.note{border-left:4px solid #c38a2e;background:#fff7e6;padding:16px 20px;margin-top:22px;font-size:14px}.muted{color:var(--muted);font-size:13px}figure{position:relative;margin:24px 0 30px;border:1px solid #d4e0ea;padding:28px 12px 10px;background:white}.diagram-image{display:block;width:100%;height:auto;background:white}figcaption{font-size:13px;color:#5a7081;padding:12px 10px;border-top:1px solid #e3ebf1}.zoom{position:absolute;top:4px;right:8px;padding:2px 9px;font-size:12px}details{border:1px solid #d5e2eb;padding:12px 16px;margin-top:18px}summary{cursor:pointer;font-weight:700;color:#1d5579}.downloads{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}footer{font-size:12px;color:#688091;margin:30px 0}.no-results{display:none;color:#fff;font-size:13px}dialog{width:96vw;max-width:1800px;border:1px solid #819fb5;padding:12px;background:#f7fafc}dialog::backdrop{background:#071a2cbd}dialog .dialog-body{overflow:auto;max-height:85vh}dialog img{display:block;min-width:1400px;width:100%}dialog button{margin-bottom:10px}body[data-filtered=true] section.hidden{display:none}@media(max-width:1150px){main{padding:25px 24px}aside{width:235px}main{margin-left:235px}section{padding:25px}.hero{padding:32px}.hero h1{font-size:29px}}@media(max-width:760px){aside{position:relative;width:auto;height:auto;padding:20px}nav{max-height:220px;overflow:auto}main{margin:0;padding:18px 12px}section{padding:22px 18px}h2{font-size:21px}.hero{padding:24px}.hero h1{font-size:26px}.toolbar span{width:100%;margin:0}th,td{min-width:100px}}@media print{aside,.toolbar,.zoom,.copy,.downloads,dialog{display:none!important}body{background:#fff;font-size:10pt}main{margin:0;padding:0;max-width:none}.hero{background:#fff!important;color:#16344d;padding:10mm 0;border-top:3px solid #155c88}.hero p,.eyebrow{color:#34556d}.hero h1{font-size:25pt}.pill{color:#234d68}section,section.hidden{display:block!important;box-shadow:none;border:0;padding:5mm 0;margin:0;break-before:auto}h2,h3{break-after:avoid}h2{font-size:16pt}table{font-size:8pt}.table-wrap{overflow:visible}tr,figure{break-inside:avoid}thead{display:table-header-group}pre{white-space:pre-wrap;background:#f2f5f7;color:#123;overflow:visible}pre code{white-space:pre-wrap;overflow-wrap:anywhere;font-size:8pt}th,td{padding:5px 7px}details{border:0;padding:0}summary{display:none}a{color:inherit}figure{padding:5px}.diagram-image{width:100%}@page{size:A4;margin:16mm 13mm}} |
| | | </style></head><body><aside><div class="brand">èå软件平å°<br>仪å¨èµæºç®¡ç</div><div class="sub">DETAILED DESIGN / VERSION 3.0</div><label for="search" class="muted" style="color:#c6dce9">æ£ç´¢å
¨æç« è</label><input id="search" placeholder="è¾å
¥èµæºåãæ¥å£æå¼å¸¸â¦"><nav><a href="#scope">01ã设计èå´ä¸ç»è®º</a><a href="#basis">02ãæ¢æè®¨è®ºã代ç äºå®ä¸ä¿®è®¢ä¾æ®</a><a href="#architecture">03ãæ»ä½æ¶æä¸ä¾èµè¾¹ç</a><a href="#routing">04ãLocal / Broker éæ©ãèµæºé®ä¸ç²åº¦</a><a href="#configuration">05ãå·¥ç¨å¸é
ç½®ä¸åå¸å·¥ä½æµ</a><a href="#config-example">06ãé
ç½®å¥çº¦ä¸å¯å¨æ ¡éª</a><a href="#database">07ãæ°æ®åºè¾¹çãå®ä½ä¸ä¸è´æ§</a><a href="#ddl">08ãSQLite DDL ä¸ç§çº¦äºå¡</a><a href="#csharp">09ãC# æ¥å£ä¸å
¼å®¹è¾¹ç</a><a href="#execution">10ãæ§è¡å
¥å£ãçå½å¨æä¸åæ¶è¯ä¹</a><a href="#tasks">11ãBroker Task 模åãæ¨¡æ¿ä¸ç¶ææº</a><a href="#broker-runtime">12ãBroker è°åº¦ãéåä¸é¥æµ</a><a href="#ipc">13ãIPC åè®®ã身份ä¸äºä»¶æ¢å¤</a><a href="#arbitration">14ãèµæºä»²è£ä¸ç»´æ¤äº¤æ¥</a><a href="#fencing">15ãFencingãè¶
æ¶ä¸ Local è¾¹ç</a><a href="#recovery">16ãå¼å¸¸æ¢å¤ä¸éå¯ç¼æ</a><a href="#deployment">17ã120 ç©´ä½é¨ç½²æ¹æ¡ä¸å®æ´æ å°</a><a href="#capacity">18ã容éä¼°ç®ãæ°æ®ä¸æ§è½é¢ç®</a><a href="#ops">19ãå®è£
ãè§æµä¸è¿ç»´</a><a href="#verification">20ãå
¸åè¿è¡åºæ¯ä¸æ¹æ¡åç</a><a href="#tbd">21ãæ¹æ¡éç¨æ¡ä»¶ä¸éå¶</a><a href="#sources">22ãæ¥æºã交ä»èå´ä¸é
读说æ</a></nav><p class="no-results">没æå¹é
ç« è</p></aside><main><header class="hero"><div class="eyebrow">PRODUCTION AGING PLATFORM / ENGINEERING DESIGN</div><h1>Local + DeviceBroker<br>æ··åæ¶æè¯¦ç»è®¾è®¡è¯´æä¹¦ V3.0</h1><p>ç»ä¸ä¸å¡å
¥å£ï¼æç©çä¼è¯æ²»çè¿æ¥ï¼ä»¥ç§çº¦ææãä»»å¡ä¸²è¡åæ¢å¤é¨ç¦æ¯æ 120 ç©´ä½å¹¶åèåã</p><div class="pills"><span class="pill">详ç»è®¾è®¡è¯å®¡ç¨¿</span><span class="pill">2026-11-03</span><span class="pill">.NET Framework 4.7.2</span><span class="pill">宿´ç¦»çº¿ HTML</span></div></header><div class="toolbar"><button id="print">æå° / ä¿å为 PDF</button><button id="clear">æ¸
餿£ç´¢</button><span id="count">22 / 22 ç« </span></div><section id="scope"><h2>01ã设计èå´ä¸ç»è®º</h2> |
| | | <p>æ¬è¯´æä¹¦å°èå软件仪å¨èµæºç®¡çæ¶æä¸ºâç»ä¸ä¸å¡å
¥å£ + Local ç´è¿ + DeviceBroker 代çâçæ··åæ¶æã120 ä¸ªç©´ä½æ¥æç¬ç«ç DUT ä¸å¡ç¶æï¼ä½å
±äº«è®¾å¤æç©çè¿æ¥ãééä¸åè®®ä¼è¯ä»²è£ãå·¥ç¨å¸éè¿åå¸é
ç½®éæ©æ§è¡ä½ç½®ï¼Recipe 使ç¨é»è¾è½åä¸ç©´ä½æ å°ï¼ä¸ç´æ¥éæ© COM å£ãIP æè¿ç¨ã</p> |
| | | <p>Local éåå·²åé
ç»å¯ä¸æ§è¡è¿ç¨ãå¯ç¬ç«è¿æ¥ç设å¤ï¼Broker éåè·¨è¿ç¨å
±äº«ç串å£/USB/CANãå
±ç¨ä¼è¯çå¤ééçµæºãRS485 æ»çº¿åéè¦é¿è¿æ¥ååå°å议任å¡ç设å¤ãBroker æ¯è®¾å¤ I/O 宿主ï¼ä¸æ¿æ
DUT åæ ¼å¤å®ãæ´æ¡ Recipe æ MES äºå¡ã</p> |
| | | <div class="table-wrap"><table><thead><tr><th>æ è¯</th><th>设计ä¸åé</th><th>å®ç°ä½ç½®</th></tr></thead><tbody><tr><td>INV-01</td><td>åä¸ PhysicalSessionKey åªæä¸ä¸ªé
ç½®ç I/O 宿主ï¼ç¦æ¢ Local ä¸ Broker åæ¶æå¼</td><td>å叿 ¡éªãè¿æ¥å®å«ãæä½ç³»ç»/ç½ç»è®¿é®æ§å¶</td></tr><tr><td>INV-02</td><td>é¢çº¦ææä¸å½ä»¤ä¸²è¡ååå±ï¼ææç§çº¦ä¸çäºå¯å¹¶åååä¸ç©çä¼è¯</td><td>ResourceManager + SessionGate</td></tr><tr><td>INV-03</td><td>ç§çº¦å°æå
é离å确认设å¤ç¶æï¼ç¦æ¢ä»
æ TTL èªå¨äº¤ç»æ°ææè
</td><td>仲è£ç¶ææºãæ¢å¤åè°å¨</td></tr><tr><td>INV-04</td><td>å¯å¨åå»ç» RecipeãConfigãDriverãDBCãUDSãæ å° Hash</td><td>RunSnapshotãBroker Task</td></tr><tr><td>INV-05</td><td>ææåæä½å¨å®é
I/O 宿主æ§è¡å
¥å£æ ¡éªï¼å®¢æ·ç«¯æ ¡éªä»
为æç¤º</td><td>LocalExecutor / Broker Dispatcher</td></tr><tr><td>INV-06</td><td>å½ä»¤å·²åéä½ç»ææªç¥æ¶ï¼è®°å½ Unknownï¼ç¦æ¢æè¶
æ¶å½ä½æªæ§è¡</td><td>Task Journalãç»ææé</td></tr><tr><td>INV-07</td><td>å®å
¨æ¥åå人åä½ä¸è®¸å¯ä¾èµç¬ç«ç¡¬ä»¶/PLC èéï¼è½¯ä»¶ç§çº¦ä¸æ¿ä»£æè½</td><td>设å¤çµæ°ä¸è½¯ä»¶è鿥å£</td></tr></tbody></table></div><div class="note">ç¶æï¼è¯¦ç»è®¾è®¡è¯å®¡ç¨¿ï¼2026-11-03ãV3.0 æ¯æ¬æ¬¡è®¾è®¡çæ¬ï¼ä¸ä»£è¡¨è½¯ä»¶å·²å®ç°æéè¿ç°åºéªæ¶ã硬件åå·ãCAN ææãèæä¸å®å
¨å¨ä½æç¬¬ 21 ç« çéç¨æ¡ä»¶ç¡®è®¤ã</div></section><section id="basis"><h2>02ãæ¢æè®¨è®ºã代ç äºå®ä¸ä¿®è®¢ä¾æ®</h2> |
| | | <p>æ¬æ¬¡å·²è¯»åæ¬å° V2.1 设计说æä¹¦ãå¤è¿ç¨èµæºæ¹æ¡ãé
ç½®/è°è¯æ¶æï¼ä»¥åä¸å C# æä»¶ãä¿ç V2.1 ç AgingRun / DUTExecutionãçæ¬å¿«ç
§ãç»ä¸ DeviceService åå屿°æ®å½æ¡£è®¾è®¡ï¼å°æ¤åâæé Brokerâå±å¼æå¯é¨ç½²çæ··åæ¹æ¡ã坿£ç´¢çåå²è天ä»
æä¾é¨åè¿æå
容ï¼å æ¤ä¸å°æ¬æè¡¨è¿°ä¸ºå
¨é¨åå²è®¨è®ºçéåå¤ç°ã</p> |
| | | <div class="table-wrap"><table><thead><tr><th>æ¥æº/è¯æ®</th><th>å½åæ ¸æ¥äºå®</th><th>V3.0 å¤ç</th></tr></thead><tbody><tr><td>Aging.Infrastructure/Core/ResourceManager.cs</td><td>ConcurrentDictionary ä¿åé¢çº¦ï¼_generation 为è¿ç¨å
åæ®µï¼AcquireOperationAsync æªåå¾å¯è´¯ç©¿ I/O çæä»éï¼ValidateOwner æªæ£æ¥ TTL</td><td>æ°å¢æä¹
å fenceãçå® SessionGate å弿¥æ ¡éªï¼ä¸å£°ç§°å½å代ç å·²è§£å³æä½äºæ¥</td></tr><tr><td>Contracts/ResourceOwnerToken.cs</td><td>Generation å¯åï¼ExpiresAt åªè¯»ï¼æé å¨èªå¨åå»ºæ° TokenId</td><td>æ°å¢ä¸å¯å LeaseGrant DTOï¼æä¹
åè¿åä¸è½è°ç¨æ§æé å¨çææ° token</td></tr><tr><td>Services/DeviceService.cs</td><td>å
GetDriverï¼å ValidateOwnerï¼åè°ç¨é©±å¨ï¼ä½¿ç¨ deviceId:Generic</td><td>æè¿è¡å¿«ç
§è§£æééèµæºé®ï¼æ§è¡å
¥å£åæ¬¡æ ¡éªï¼ä¸å
许ç»å¼å®¿ä¸»</td></tr><tr><td>Services/AutoDeviceFacade.cs</td><td>éæ¾å¼å¸¸ä»
è®°æ¥å¿ï¼æ§æ¥å£ä¸ºå设å¤ä½ç¨å</td><td>å¢å éæ¾å¤±è´¥ç¶æãç»æåååç»é¢çº¦ï¼ä¿çå
¼å®¹éé
å±ä½ä¸å®£ç§°é¶æ¹å¨</td></tr><tr><td>ConnectionUtil/PipeClient.cs</td><td>SendMessage å¨ WriteMessage åç«å³ return trueï¼è¯»ååºå¾ªç¯ä¸å¯è¾¾ï¼_serverName æªç¨äºå建客æ·ç«¯æµ</td><td>åªè½å¤ç¨ä»£ç æ¡æ¶ï¼å
è¡¥åè®®ãååºå
³èãè¶
æ¶ãè¿æ¥çå½å¨æåæµè¯</td></tr><tr><td>Plugin.DeviceConfig/Model/DeviceConfigModel.cs</td><td>å·²æ DeviceDefinitionãDeviceChannelãSlotDeviceMappingãDeviceConfigVersionãDeviceGroupTemplate</td><td>ä¿ç导å
¥æ¥æºï¼æ°å¢ä¸å¯åé
置快ç
§ï¼ä¸ææ§è¡¨ä¸»é®å½ä½å®æ´åå²çæ¬æ¨¡å</td></tr><tr><td>Aging.Infrastructure.csproj</td><td>TargetFramework=net472ï¼LangVersion=10.0ï¼Microsoft.Bcl.AsyncInterfaces å
å·²å¼ç¨</td><td>æ¥å£ç¤ºä¾ä½¿ç¨æ®é DTO / Taskï¼æ°å
æç®æ æ¡æ¶éªè¯åå»ç»</td></tr><tr><td>MultiProcess_Instrument_Resource_Solution.html</td><td>æåº DB Lease + Generation + æé Brokerï¼å«ä»
æ¥è¯¢ DB å³ä¿è¯ç©çå®å
¨çè¿å¼ºç»è®º</td><td>å° TTLã软件 fencingãç©çæè½åå¼ï¼ç»´æ¤äº¤æ¥å¿
é¡»ç»è¿æ¢å¤é¨ç¦</td></tr></tbody></table></div><p>代ç è·¯å¾åºåï¼<code>D:\TestPlatform\TapProject\</code>ãé¡¹ç®ææ¡£æ¥æºä¸ºè®¾è®¡ä¾æ®ï¼å½å C# æä»¶ä¸ºéæå®ç°è¯æ®ï¼æ¬æ¬¡æªè¿è¡ç°æè®¾å¤é©±å¨æå®æ´è½¯ä»¶å·¥ç¨ãæ¥æºæ¸
åå SHA256 è§ç¬¬ 22 ç« ã</p></section><section id="architecture"><h2>03ãæ»ä½æ¶æä¸ä¾èµè¾¹ç</h2><figure><button class="zoom" aria-label="æ¾å¤§å¾1">æ¾å¤§æ¥ç</button><img class="diagram-image" alt="å¾1 V3.0ç®æ æ¶æè®¾è®¡" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPCEtLSBEbyBub3QgZWRpdCB0aGlzIGZpbGUgd2l0aCBlZGl0b3JzIG90aGVyIHRoYW4gZHJhdy5pbyAtLT4KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj4KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHN0eWxlPSJiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IGNvbG9yLXNjaGVtZTogbGlnaHQgZGFyazsiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2ZXJzaW9uPSIxLjEiIHdpZHRoPSIxNTE5cHgiIGhlaWdodD0iODgzcHgiIHZpZXdCb3g9Ii0wLjUgLTAuNSAxNTE5IDg4MyIgY29udGVudD0iJmx0O214ZmlsZSBob3N0PSZxdW90O0VsZWN0cm9uJnF1b3Q7IGFnZW50PSZxdW90O01vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjA7IFdpbjY0OyB4NjQpIEFwcGxlV2ViS2l0LzUzNy4zNiAoS0hUTUwsIGxpa2UgR2Vja28pIGRyYXcuaW8vMjguMi41IENocm9tZS8xMzguMC43MjA0LjI1MSBFbGVjdHJvbi8zNy42LjEgU2FmYXJpLzUzNy4zNiZxdW90OyB2ZXJzaW9uPSZxdW90OzI4LjIuNSZxdW90OyBwYWdlcz0mcXVvdDszJnF1b3Q7Jmd0OyYjMTA7ICAmbHQ7ZGlhZ3JhbSBuYW1lPSZxdW90O2FyY2hpdGVjdHVyZSZxdW90OyBpZD0mcXVvdDthcmNoaXRlY3R1cmUmcXVvdDsmZ3Q7JiMxMDsgICAgJmx0O214R3JhcGhNb2RlbCBkeD0mcXVvdDstODI0JnF1b3Q7IGR5PSZxdW90Oy0yNDgmcXVvdDsgZ3JpZD0mcXVvdDswJnF1b3Q7IGdyaWRTaXplPSZxdW90OzEwJnF1b3Q7IGd1aWRlcz0mcXVvdDsxJnF1b3Q7IHRvb2x0aXBzPSZxdW90OzEmcXVvdDsgY29ubmVjdD0mcXVvdDsxJnF1b3Q7IGFycm93cz0mcXVvdDsxJnF1b3Q7IGZvbGQ9JnF1b3Q7MCZxdW90OyBwYWdlPSZxdW90OzAmcXVvdDsgcGFnZVNjYWxlPSZxdW90OzEmcXVvdDsgcGFnZVdpZHRoPSZxdW90OzE2MDAmcXVvdDsgcGFnZUhlaWdodD0mcXVvdDs5MDAmcXVvdDsgYmFja2dyb3VuZD0mcXVvdDsjZmZmZmZmJnF1b3Q7IG1hdGg9JnF1b3Q7MCZxdW90OyBzaGFkb3c9JnF1b3Q7MCZxdW90OyZndDsmIzEwOyAgICAgICZsdDtyb290Jmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90OzAmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDswJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7dGl0bGUmcXVvdDsgdmFsdWU9JnF1b3Q7TG9jYWwgKyBEZXZpY2VCcm9rZXLvvJrnu5/kuIDkuJrliqHlhaXlj6PkuI7liIbln58gSS9P77yI55uu5qCH6K6+6K6h77yJJnF1b3Q7IHN0eWxlPSZxdW90O3JvdW5kZWQ9MDt3aGl0ZVNwYWNlPXdyYXA7aHRtbD0xO2FsaWduPWNlbnRlcjt2ZXJ0aWNhbEFsaWduPW1pZGRsZTtmb250RmFtaWx5PU1pY3Jvc29mdCBZYUhlaTtmb250U2l6ZT0yODtzcGFjaW5nPTE0O2ZpbGxDb2xvcj0jZmZmZmZmO3N0cm9rZUNvbG9yPSMzMzU1NmY7c3Ryb2tlV2lkdGg9Mjtmb250U3R5bGU9MTtzdHJva2VDb2xvcj1ub25lOyZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSB4PSZxdW90OzYwJnF1b3Q7IHk9JnF1b3Q7MjQmcXVvdDsgd2lkdGg9JnF1b3Q7MTQ4MCZxdW90OyBoZWlnaHQ9JnF1b3Q7NjAmcXVvdDsgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7Y29uZmlnJnF1b3Q7IHZhbHVlPSZxdW90O+mFjee9riAvIOWPkeW4g+acjeWKoSZhbXA7bHQ7YnImYW1wO2d0O+S4jeWPr+WPmOW/q+eFpyDCtyBIYXNoIMK3IOi3r+eUsSZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MjA7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2VhZjJmODtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7JnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IHg9JnF1b3Q7NjAmcXVvdDsgeT0mcXVvdDsxMjUmcXVvdDsgd2lkdGg9JnF1b3Q7NDAwJnF1b3Q7IGhlaWdodD0mcXVvdDs5NSZxdW90OyBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtobWkmcXVvdDsgdmFsdWU9JnF1b3Q7SE1JIC8g57u05oqk5Lya6K+dJmFtcDtsdDticiZhbXA7Z3Q75p2D6ZmQIMK3IOWNoOeUqOeKtuaAgSDCtyDlrqHorqEmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlYWYyZjg7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSB4PSZxdW90OzYwMCZxdW90OyB5PSZxdW90OzEyNSZxdW90OyB3aWR0aD0mcXVvdDs0MDAmcXVvdDsgaGVpZ2h0PSZxdW90Ozk1JnF1b3Q7IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O3J1biZxdW90OyB2YWx1ZT0mcXVvdDtSdW4gLyBSZWNpcGUgLyBPcGVuVEFQJmFtcDtsdDticiZhbXA7Z3Q7MTIwIERVVENvbnRleHQgwrcg6YC76L6R6IO95YqbJnF1b3Q7IHN0eWxlPSZxdW90O3JvdW5kZWQ9MDt3aGl0ZVNwYWNlPXdyYXA7aHRtbD0xO2FsaWduPWNlbnRlcjt2ZXJ0aWNhbEFsaWduPW1pZGRsZTtmb250RmFtaWx5PU1pY3Jvc29mdCBZYUhlaTtmb250U2l6ZT0yMDtzcGFjaW5nPTE0O2ZpbGxDb2xvcj0jZWFmMmY4O3N0cm9rZUNvbG9yPSMzMzU1NmY7c3Ryb2tlV2lkdGg9MjsmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgeD0mcXVvdDsxMTQwJnF1b3Q7IHk9JnF1b3Q7MTI1JnF1b3Q7IHdpZHRoPSZxdW90OzQwMCZxdW90OyBoZWlnaHQ9JnF1b3Q7OTUmcXVvdDsgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZmFjYWRlJnF1b3Q7IHZhbHVlPSZxdW90O0RldmljZVNlcnZpY2UgKyBSZXNvdXJjZVJvdXRlciZhbXA7bHQ7YnImYW1wO2d0O+aMieW/q+eFp+WumuS9jei1hOa6kCAvIOWuv+S4uyZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MjA7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2VhZjJmODtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7JnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IHg9JnF1b3Q7NjAwJnF1b3Q7IHk9JnF1b3Q7MjkwJnF1b3Q7IHdpZHRoPSZxdW90OzQwMCZxdW90OyBoZWlnaHQ9JnF1b3Q7MTAwJnF1b3Q7IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2UxJnF1b3Q7IHN0eWxlPSZxdW90O2VkZ2VTdHlsZT1vcnRob2dvbmFsRWRnZVN0eWxlO3JvdW5kZWQ9MDtodG1sPTE7ZW5kQXJyb3c9YmxvY2s7c3Ryb2tlV2lkdGg9MjtzdHJva2VDb2xvcj0jODc5NmE1O2Rhc2hlZD0xO2V4aXRYPTAuNTtleGl0WT0xO2VudHJ5WD0wLjI7ZW50cnlZPTA7JnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHNvdXJjZT0mcXVvdDtjb25maWcmcXVvdDsgdGFyZ2V0PSZxdW90O2ZhY2FkZSZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgcmVsYXRpdmU9JnF1b3Q7MSZxdW90OyBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyZndDsmIzEwOyAgICAgICAgICAgICZsdDtBcnJheSBhcz0mcXVvdDtwb2ludHMmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgICAgICZsdDtteFBvaW50IHg9JnF1b3Q7MjYwJnF1b3Q7IHk9JnF1b3Q7MjU1JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICAgICAgICZsdDtteFBvaW50IHg9JnF1b3Q7NjgwJnF1b3Q7IHk9JnF1b3Q7MjU1JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICAgICAmbHQ7L0FycmF5Jmd0OyYjMTA7ICAgICAgICAgICZsdDsvbXhHZW9tZXRyeSZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTImcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7ZXhpdFg9MC41O2V4aXRZPTE7ZW50cnlYPTAuNTtlbnRyeVk9MDsmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc291cmNlPSZxdW90O2htaSZxdW90OyB0YXJnZXQ9JnF1b3Q7ZmFjYWRlJnF1b3Q7IGVkZ2U9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSByZWxhdGl2ZT0mcXVvdDsxJnF1b3Q7IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICAgJmx0O0FycmF5IGFzPSZxdW90O3BvaW50cyZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAgICZsdDsvbXhHZW9tZXRyeSZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTMmcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7ZXhpdFg9MC41O2V4aXRZPTE7ZW50cnlYPTAuODtlbnRyeVk9MDsmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc291cmNlPSZxdW90O3J1biZxdW90OyB0YXJnZXQ9JnF1b3Q7ZmFjYWRlJnF1b3Q7IGVkZ2U9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSByZWxhdGl2ZT0mcXVvdDsxJnF1b3Q7IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICAgJmx0O0FycmF5IGFzPSZxdW90O3BvaW50cyZxdW90OyZndDsmIzEwOyAgICAgICAgICAgICAgJmx0O214UG9pbnQgeD0mcXVvdDsxMzQwJnF1b3Q7IHk9JnF1b3Q7MjU1JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICAgICAgICZsdDtteFBvaW50IHg9JnF1b3Q7OTIwJnF1b3Q7IHk9JnF1b3Q7MjU1JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICAgICAmbHQ7L0FycmF5Jmd0OyYjMTA7ICAgICAgICAgICZsdDsvbXhHZW9tZXRyeSZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7bG9jYWwmcXVvdDsgdmFsdWU9JnF1b3Q7TG9jYWxFeGVjdXRvciAvIExlYXNlU3RvcmUmYW1wO2x0O2JyJmFtcDtndDvmnKzmnLogYXJiLmRiIMK3IOi/nuaOpeWuiOWNqyDCtyBTZXNzaW9uR2F0ZSZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MjA7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2VhZjJmODtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7JnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IHg9JnF1b3Q7MTUwJnF1b3Q7IHk9JnF1b3Q7NDcwJnF1b3Q7IHdpZHRoPSZxdW90OzU0MCZxdW90OyBoZWlnaHQ9JnF1b3Q7MTEwJnF1b3Q7IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2Jyb2tlciZxdW90OyB2YWx1ZT0mcXVvdDtCcm9rZXJDbGllbnQg4oaSIERldmljZUJyb2tlciZhbXA7bHQ7YnImYW1wO2d0O+acrOWfnyBMZWFzZSAvIFRhc2sgLyBRdWV1ZSAvIE91dGJveCZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MjA7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2U4ZjRlZjtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7JnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IHg9JnF1b3Q7OTEwJnF1b3Q7IHk9JnF1b3Q7NDcwJnF1b3Q7IHdpZHRoPSZxdW90OzU0MCZxdW90OyBoZWlnaHQ9JnF1b3Q7MTEwJnF1b3Q7IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2U0JnF1b3Q7IHN0eWxlPSZxdW90O2VkZ2VTdHlsZT1vcnRob2dvbmFsRWRnZVN0eWxlO3JvdW5kZWQ9MDtodG1sPTE7ZW5kQXJyb3c9YmxvY2s7c3Ryb2tlV2lkdGg9MjtzdHJva2VDb2xvcj0jMjg2NDk0OyZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyBzb3VyY2U9JnF1b3Q7ZmFjYWRlJnF1b3Q7IHRhcmdldD0mcXVvdDtsb2NhbCZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgcmVsYXRpdmU9JnF1b3Q7MSZxdW90OyBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtlNSZxdW90OyBzdHlsZT0mcXVvdDtlZGdlU3R5bGU9b3J0aG9nb25hbEVkZ2VTdHlsZTtyb3VuZGVkPTA7aHRtbD0xO2VuZEFycm93PWJsb2NrO3N0cm9rZVdpZHRoPTI7c3Ryb2tlQ29sb3I9IzI4NjQ5NDsmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc291cmNlPSZxdW90O2ZhY2FkZSZxdW90OyB0YXJnZXQ9JnF1b3Q7YnJva2VyJnF1b3Q7IGVkZ2U9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSByZWxhdGl2ZT0mcXVvdDsxJnF1b3Q7IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2xvY2FsaW8mcXVvdDsgdmFsdWU9JnF1b3Q75ZSv5LiAIFdvcmtlciDlhoXnmoQgRGV2aWNlTWFuYWdlciAvIERyaXZlciZhbXA7bHQ7YnImYW1wO2d0O+WbuuWumuW9kuWxnueahOeLrOeriyBUQ1Ag5Lya6K+dJnF1b3Q7IHN0eWxlPSZxdW90O3JvdW5kZWQ9MDt3aGl0ZVNwYWNlPXdyYXA7aHRtbD0xO2FsaWduPWNlbnRlcjt2ZXJ0aWNhbEFsaWduPW1pZGRsZTtmb250RmFtaWx5PU1pY3Jvc29mdCBZYUhlaTtmb250U2l6ZT0yMDtzcGFjaW5nPTE0O2ZpbGxDb2xvcj0jZWFmMmY4O3N0cm9rZUNvbG9yPSMzMzU1NmY7c3Ryb2tlV2lkdGg9MjsmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgeD0mcXVvdDsxNTAmcXVvdDsgeT0mcXVvdDs2NzAmcXVvdDsgd2lkdGg9JnF1b3Q7NTQwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMTAmcXVvdDsgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7YnJva2VyaW8mcXVvdDsgdmFsdWU9JnF1b3Q7QnJva2VyIOWGheeahCBEZXZpY2VNYW5hZ2VyIC8gRHJpdmVyJmFtcDtsdDticiZhbXA7Z3Q75YWx5LqrIFBTVSAvIENBTiAvIFJTNDg1IC8gUExDJnF1b3Q7IHN0eWxlPSZxdW90O3JvdW5kZWQ9MDt3aGl0ZVNwYWNlPXdyYXA7aHRtbD0xO2FsaWduPWNlbnRlcjt2ZXJ0aWNhbEFsaWduPW1pZGRsZTtmb250RmFtaWx5PU1pY3Jvc29mdCBZYUhlaTtmb250U2l6ZT0yMDtzcGFjaW5nPTE0O2ZpbGxDb2xvcj0jZThmNGVmO3N0cm9rZUNvbG9yPSMzMzU1NmY7c3Ryb2tlV2lkdGg9MjsmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgeD0mcXVvdDs5MTAmcXVvdDsgeT0mcXVvdDs2NzAmcXVvdDsgd2lkdGg9JnF1b3Q7NTQwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMTAmcXVvdDsgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTYmcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7JnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHNvdXJjZT0mcXVvdDtsb2NhbCZxdW90OyB0YXJnZXQ9JnF1b3Q7bG9jYWxpbyZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgcmVsYXRpdmU9JnF1b3Q7MSZxdW90OyBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtlNyZxdW90OyBzdHlsZT0mcXVvdDtlZGdlU3R5bGU9b3J0aG9nb25hbEVkZ2VTdHlsZTtyb3VuZGVkPTA7aHRtbD0xO2VuZEFycm93PWJsb2NrO3N0cm9rZVdpZHRoPTI7c3Ryb2tlQ29sb3I9IzI4NjQ5NDsmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc291cmNlPSZxdW90O2Jyb2tlciZxdW90OyB0YXJnZXQ9JnF1b3Q7YnJva2VyaW8mcXVvdDsgZWRnZT0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IHJlbGF0aXZlPSZxdW90OzEmcXVvdDsgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7bGVnZW5kJnF1b3Q7IHZhbHVlPSZxdW90O+Wunue6v++8muiwg+eUqCAvIEkvTyDot6/lvoTjgIDjgIDngbDoibLomZrnur/vvJrphY3nva7kvp3otZbjgIDjgIBUVEwg5Yiw5pyfIOKGkiDpmpTnprvmoLjmn6XvvJvov57mjqXnoa7orqTpgIDlh7rlkI7miY3kuqTmjqUmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTE4O3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNmZmZmZmY7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPW5vbmU7JnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IHg9JnF1b3Q7NjAmcXVvdDsgeT0mcXVvdDs4MTUmcXVvdDsgd2lkdGg9JnF1b3Q7MTQ4MCZxdW90OyBoZWlnaHQ9JnF1b3Q7NTUmcXVvdDsgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAmbHQ7L3Jvb3QmZ3Q7JiMxMDsgICAgJmx0Oy9teEdyYXBoTW9kZWwmZ3Q7JiMxMDsgICZsdDsvZGlhZ3JhbSZndDsmIzEwOyAgJmx0O2RpYWdyYW0gbmFtZT0mcXVvdDtoYW5kb3ZlciZxdW90OyBpZD0mcXVvdDtoYW5kb3ZlciZxdW90OyZndDsmIzEwOyAgICAmbHQ7bXhHcmFwaE1vZGVsIGR4PSZxdW90OzE2MDAmcXVvdDsgZHk9JnF1b3Q7OTAwJnF1b3Q7IGdyaWQ9JnF1b3Q7MSZxdW90OyBncmlkU2l6ZT0mcXVvdDsxMCZxdW90OyBwYWdlPSZxdW90OzEmcXVvdDsgcGFnZVNjYWxlPSZxdW90OzEmcXVvdDsgcGFnZVdpZHRoPSZxdW90OzE2MDAmcXVvdDsgcGFnZUhlaWdodD0mcXVvdDs5MDAmcXVvdDsgYmFja2dyb3VuZD0mcXVvdDsjZmZmZmZmJnF1b3Q7Jmd0OyYjMTA7ICAgICAgJmx0O3Jvb3QmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7MCZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzAmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDt0aXRsZSZxdW90OyB2YWx1ZT0mcXVvdDvotYTmupDkuqTmjqXvvJrlhYjmjpLnqbrjgIHpmpTnprvkuI7moLjmn6XvvIzlho3lhYHorrjmlrAgb3duZXLvvIjnm67moIforr7orqHvvIkmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTI4O3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNmZmZmZmY7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yO2ZvbnRTdHlsZT0xO3N0cm9rZUNvbG9yPW5vbmU7JnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHg9JnF1b3Q7NjAmcXVvdDsgeT0mcXVvdDsyNCZxdW90OyB3aWR0aD0mcXVvdDsxNDgwJnF1b3Q7IGhlaWdodD0mcXVvdDs2MCZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtmcmVlJnF1b3Q7IHZhbHVlPSZxdW90O0ZyZWUgLyBSZWFkeSZhbXA7bHQ7YnImYW1wO2d0O+WFgeiuuOeUs+ivtyZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MjA7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2VhZjJmODtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7JnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHg9JnF1b3Q7ODAmcXVvdDsgeT0mcXVvdDsxNjAmcXVvdDsgd2lkdGg9JnF1b3Q7MzMwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMDUmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7YWN0aXZlJnF1b3Q7IHZhbHVlPSZxdW90O0FjdGl2ZSZhbXA7bHQ7YnImYW1wO2d0O0dyYW50ICsg5ZGo5pyf57ut56efJnF1b3Q7IHN0eWxlPSZxdW90O3JvdW5kZWQ9MDt3aGl0ZVNwYWNlPXdyYXA7aHRtbD0xO2FsaWduPWNlbnRlcjt2ZXJ0aWNhbEFsaWduPW1pZGRsZTtmb250RmFtaWx5PU1pY3Jvc29mdCBZYUhlaTtmb250U2l6ZT0yMDtzcGFjaW5nPTE0O2ZpbGxDb2xvcj0jZWFmMmY4O3N0cm9rZUNvbG9yPSMzMzU1NmY7c3Ryb2tlV2lkdGg9MjsmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgeD0mcXVvdDs2MzUmcXVvdDsgeT0mcXVvdDsxNjAmcXVvdDsgd2lkdGg9JnF1b3Q7MzMwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMDUmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZHJhaW4mcXVvdDsgdmFsdWU9JnF1b3Q7RHJhaW5pbmcmYW1wO2x0O2JyJmFtcDtndDvlgZzmraLmlrDlhpkgLyDmjpLnqbrniYfmrrUmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNmZmYyZDk7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzExOTAmcXVvdDsgeT0mcXVvdDsxNjAmcXVvdDsgd2lkdGg9JnF1b3Q7MzMwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMDUmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTEmcXVvdDsgc291cmNlPSZxdW90O2ZyZWUmcXVvdDsgdGFyZ2V0PSZxdW90O2FjdGl2ZSZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHJlbGF0aXZlPSZxdW90OzEmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTImcXVvdDsgc291cmNlPSZxdW90O2FjdGl2ZSZxdW90OyB0YXJnZXQ9JnF1b3Q7ZHJhaW4mcXVvdDsgZWRnZT0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHN0eWxlPSZxdW90O2VkZ2VTdHlsZT1vcnRob2dvbmFsRWRnZVN0eWxlO3JvdW5kZWQ9MDtodG1sPTE7ZW5kQXJyb3c9YmxvY2s7c3Ryb2tlV2lkdGg9MjtzdHJva2VDb2xvcj0jMjg2NDk0OyZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyByZWxhdGl2ZT0mcXVvdDsxJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2V4cGlyZSZxdW90OyB2YWx1ZT0mcXVvdDvnp5/nuqYgLyDlv4Pot7PlvILluLgmYW1wO2x0O2JyJmFtcDtndDvpmLvmlq3lkI7nu63lhpnlhaUmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNmZmYyZDk7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzYzNSZxdW90OyB5PSZxdW90OzM4NSZxdW90OyB3aWR0aD0mcXVvdDszMzAmcXVvdDsgaGVpZ2h0PSZxdW90OzEwNSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDt2ZXJpZnkmcXVvdDsgdmFsdWU9JnF1b3Q75a6J5YWo5Lqk5o6l5qOA5p+lJmFtcDtsdDticiZhbXA7Z3Q76K+75ZueIMK3IOi/nuaOpemalOemuyDCtyDogZTplIEmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlOGY0ZWY7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzExOTAmcXVvdDsgeT0mcXVvdDszODUmcXVvdDsgd2lkdGg9JnF1b3Q7MzMwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMDUmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTMmcXVvdDsgc291cmNlPSZxdW90O2FjdGl2ZSZxdW90OyB0YXJnZXQ9JnF1b3Q7ZXhwaXJlJnF1b3Q7IGVkZ2U9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyBzdHlsZT0mcXVvdDtlZGdlU3R5bGU9b3J0aG9nb25hbEVkZ2VTdHlsZTtyb3VuZGVkPTA7aHRtbD0xO2VuZEFycm93PWJsb2NrO3N0cm9rZVdpZHRoPTI7c3Ryb2tlQ29sb3I9IzI4NjQ5NDsmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgcmVsYXRpdmU9JnF1b3Q7MSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtlNCZxdW90OyBzb3VyY2U9JnF1b3Q7ZHJhaW4mcXVvdDsgdGFyZ2V0PSZxdW90O3ZlcmlmeSZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHJlbGF0aXZlPSZxdW90OzEmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7cmVjb3ZlcnkmcXVvdDsgdmFsdWU9JnF1b3Q7UmVjb3ZlcnlSZXF1aXJlZCZhbXA7bHQ7YnImYW1wO2d0O+iuvuWkh+eKtuaAgeacquefpSAvIOemgeatoumHjeaOiCZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MjA7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2ZkZWNlZDtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7JnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHg9JnF1b3Q7NjM1JnF1b3Q7IHk9JnF1b3Q7NjEwJnF1b3Q7IHdpZHRoPSZxdW90OzMzMCZxdW90OyBoZWlnaHQ9JnF1b3Q7MTA1JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O25ldyZxdW90OyB2YWx1ZT0mcXVvdDvmo4Dmn6XlkIjmoLwg4oaSIEZyZWUmYW1wO2x0O2JyJmFtcDtndDvph43mlrDnlLPor7fmlrAgR3JhbnQmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlOGY0ZWY7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzExOTAmcXVvdDsgeT0mcXVvdDs2MTAmcXVvdDsgd2lkdGg9JnF1b3Q7MzMwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMDUmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTUmcXVvdDsgc291cmNlPSZxdW90O2V4cGlyZSZxdW90OyB0YXJnZXQ9JnF1b3Q7cmVjb3ZlcnkmcXVvdDsgZWRnZT0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHN0eWxlPSZxdW90O2VkZ2VTdHlsZT1vcnRob2dvbmFsRWRnZVN0eWxlO3JvdW5kZWQ9MDtodG1sPTE7ZW5kQXJyb3c9YmxvY2s7c3Ryb2tlV2lkdGg9MjtzdHJva2VDb2xvcj0jMjg2NDk0OyZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyByZWxhdGl2ZT0mcXVvdDsxJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2U2JnF1b3Q7IHNvdXJjZT0mcXVvdDt2ZXJpZnkmcXVvdDsgdGFyZ2V0PSZxdW90O25ldyZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHJlbGF0aXZlPSZxdW90OzEmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTcmcXVvdDsgc291cmNlPSZxdW90O3JlY292ZXJ5JnF1b3Q7IHRhcmdldD0mcXVvdDt2ZXJpZnkmcXVvdDsgZWRnZT0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHN0eWxlPSZxdW90O2VkZ2VTdHlsZT1vcnRob2dvbmFsRWRnZVN0eWxlO3JvdW5kZWQ9MDtodG1sPTE7ZW5kQXJyb3c9YmxvY2s7c3Ryb2tlV2lkdGg9MjtzdHJva2VDb2xvcj0jMjg2NDk0O2V4aXRYPTE7ZXhpdFk9MC41O2VudHJ5WD0wO2VudHJ5WT0wLjU7JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHJlbGF0aXZlPSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgICAmbHQ7QXJyYXkgYXM9JnF1b3Q7cG9pbnRzJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICAgICAmbHQ7bXhQb2ludCB4PSZxdW90OzEwODAmcXVvdDsgeT0mcXVvdDs2NjIuNSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAgICAgICAmbHQ7bXhQb2ludCB4PSZxdW90OzEwODAmcXVvdDsgeT0mcXVvdDs0MzcuNSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAgICAgJmx0Oy9BcnJheSZndDsmIzEwOyAgICAgICAgICAmbHQ7L214R2VvbWV0cnkmZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2xpbWl0cyZxdW90OyB2YWx1ZT0mcXVvdDvlvILluLjot6/lvoTor7TmmI4mYW1wO2x0O2JyJmFtcDtndDsmYW1wO2x0O2JyJmFtcDtndDtEcmFpbmluZyDotoXml7YgLyDmo4Dmn6XlpLHotKUmYW1wO2x0O2JyJmFtcDtndDvihpIgUmVjb3ZlcnlSZXF1aXJlZCZhbXA7bHQ7YnImYW1wO2d0OyZhbXA7bHQ7YnImYW1wO2d0O0Jyb2tlciDph43lkK/vvJplcG9jaCArIDEmYW1wO2x0O2JyJmFtcDtndDvml6cgR3JhbnQg5YWo6YOo5aSx5pWIJmFtcDtsdDticiZhbXA7Z3Q7JmFtcDtsdDticiZhbXA7Z3Q7TG9jYWwg5pen5a6I5Y2r5pyq6YCA5Ye6JmFtcDtsdDticiZhbXA7Z3Q74oaSIOS/neaMgemalOemu++8jOS4jeaMiSBUVEwg5oqi5Y2gJnF1b3Q7IHN0eWxlPSZxdW90O3JvdW5kZWQ9MDt3aGl0ZVNwYWNlPXdyYXA7aHRtbD0xO2FsaWduPWNlbnRlcjt2ZXJ0aWNhbEFsaWduPW1pZGRsZTtmb250RmFtaWx5PU1pY3Jvc29mdCBZYUhlaTtmb250U2l6ZT0yMDtzcGFjaW5nPTE0O2ZpbGxDb2xvcj0jZmZmZmZmO3N0cm9rZUNvbG9yPSMzMzU1NmY7c3Ryb2tlV2lkdGg9MjsmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgeD0mcXVvdDs4MCZxdW90OyB5PSZxdW90OzM4NSZxdW90OyB3aWR0aD0mcXVvdDszMzAmcXVvdDsgaGVpZ2h0PSZxdW90OzMzMCZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtsZWdlbmQmcXVvdDsgdmFsdWU9JnF1b3Q75a6e57q/77ya5q2j5bi455Sz6K+35oiW5oGi5aSN5o6o6L+b44CA44CA5byC5bi45Yiw5pyf5LiN55u05o6l6L2sIEZyZWXjgIDjgIDmnKrnoa7orqTnmoTlt7Llj5Hlkb3ku6Qg4oaSIFVua25vd24gLyDmgaLlpI3mo4Dmn6UmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTE4O3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNmZmZmZmY7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPW5vbmU7JnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHg9JnF1b3Q7NjAmcXVvdDsgeT0mcXVvdDs4MTAmcXVvdDsgd2lkdGg9JnF1b3Q7MTQ4MCZxdW90OyBoZWlnaHQ9JnF1b3Q7NTUmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAmbHQ7L3Jvb3QmZ3Q7JiMxMDsgICAgJmx0Oy9teEdyYXBoTW9kZWwmZ3Q7JiMxMDsgICZsdDsvZGlhZ3JhbSZndDsmIzEwOyAgJmx0O2RpYWdyYW0gbmFtZT0mcXVvdDtkZXBsb3ltZW50MTIwJnF1b3Q7IGlkPSZxdW90O2RlcGxveW1lbnQxMjAmcXVvdDsmZ3Q7JiMxMDsgICAgJmx0O214R3JhcGhNb2RlbCBkeD0mcXVvdDsxNjAwJnF1b3Q7IGR5PSZxdW90OzkwMCZxdW90OyBncmlkPSZxdW90OzEmcXVvdDsgZ3JpZFNpemU9JnF1b3Q7MTAmcXVvdDsgcGFnZT0mcXVvdDsxJnF1b3Q7IHBhZ2VTY2FsZT0mcXVvdDsxJnF1b3Q7IHBhZ2VXaWR0aD0mcXVvdDsxNjAwJnF1b3Q7IHBhZ2VIZWlnaHQ9JnF1b3Q7OTAwJnF1b3Q7IGJhY2tncm91bmQ9JnF1b3Q7I2ZmZmZmZiZxdW90OyZndDsmIzEwOyAgICAgICZsdDtyb290Jmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90OzAmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDswJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7dGl0bGUmcXVvdDsgdmFsdWU9JnF1b3Q7MTIwIOeptOS9je+8mjYgV29ya2VyICsgMyBCcm9rZXIg5Z+f77yIMTXDlzggUFNVIOWfuue6vyAvIOW7uuiuru+8iSZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9Mjg7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2ZmZmZmZjtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7Zm9udFN0eWxlPTE7c3Ryb2tlQ29sb3I9bm9uZTsmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgeD0mcXVvdDs2MCZxdW90OyB5PSZxdW90OzI0JnF1b3Q7IHdpZHRoPSZxdW90OzE0ODAmcXVvdDsgaGVpZ2h0PSZxdW90OzYwJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2htaSZxdW90OyB2YWx1ZT0mcXVvdDtJUEMtMDHvvJpITUkgLyBSdW5TZXJ2aWNlIC8gU3VwZXJ2aXNvciZhbXA7bHQ7YnImYW1wO2d0O+mFjee9ruW/q+eFp+S4jue7k+aenOe0ouW8le+8m1Jlc3VsdFdyaXRlciDni6znq4vokL3nm5gmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlYWYyZjg7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzUwMCZxdW90OyB5PSZxdW90OzExMCZxdW90OyB3aWR0aD0mcXVvdDs2MDAmcXVvdDsgaGVpZ2h0PSZxdW90Ozk1JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O3cxJnF1b3Q7IHZhbHVlPSZxdW90O1cwMSArIFcwMiZhbXA7bHQ7YnImYW1wO2d0O1MwMDHigJNTMDQwIMK3IDLDlzIwIERVVENvbnRleHQmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlYWYyZjg7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzYwJnF1b3Q7IHk9JnF1b3Q7MzE1JnF1b3Q7IHdpZHRoPSZxdW90OzQwMCZxdW90OyBoZWlnaHQ9JnF1b3Q7MTAwJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2IxJnF1b3Q7IHZhbHVlPSZxdW90O0Jyb2tlciBCMDEmYW1wO2x0O2JyJmFtcDtndDvllK/kuIDlrr/kuLsgwrcg5pys5Z+fIERCIC8g6Zif5YiXJnF1b3Q7IHN0eWxlPSZxdW90O3JvdW5kZWQ9MDt3aGl0ZVNwYWNlPXdyYXA7aHRtbD0xO2FsaWduPWNlbnRlcjt2ZXJ0aWNhbEFsaWduPW1pZGRsZTtmb250RmFtaWx5PU1pY3Jvc29mdCBZYUhlaTtmb250U2l6ZT0yMDtzcGFjaW5nPTE0O2ZpbGxDb2xvcj0jZThmNGVmO3N0cm9rZUNvbG9yPSMzMzU1NmY7c3Ryb2tlV2lkdGg9MjsmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgeD0mcXVvdDs2MCZxdW90OyB5PSZxdW90OzUyMCZxdW90OyB3aWR0aD0mcXVvdDs0MDAmcXVvdDsgaGVpZ2h0PSZxdW90OzEwMCZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtwMSZxdW90OyB2YWx1ZT0mcXVvdDtQU1UwMeKAk1BTVTA1JmFtcDtsdDticiZhbXA7Z3Q7NSDlj7Agw5cgOCDpgJrpgZMgPSA0MCDnqbTkvY0mcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlYWYyZjg7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzYwJnF1b3Q7IHk9JnF1b3Q7NzI1JnF1b3Q7IHdpZHRoPSZxdW90OzQwMCZxdW90OyBoZWlnaHQ9JnF1b3Q7MTAwJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2UxYSZxdW90OyBzb3VyY2U9JnF1b3Q7aG1pJnF1b3Q7IHRhcmdldD0mcXVvdDt3MSZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHJlbGF0aXZlPSZxdW90OzEmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTFiJnF1b3Q7IHNvdXJjZT0mcXVvdDt3MSZxdW90OyB0YXJnZXQ9JnF1b3Q7YjEmcXVvdDsgZWRnZT0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHN0eWxlPSZxdW90O2VkZ2VTdHlsZT1vcnRob2dvbmFsRWRnZVN0eWxlO3JvdW5kZWQ9MDtodG1sPTE7ZW5kQXJyb3c9YmxvY2s7c3Ryb2tlV2lkdGg9MjtzdHJva2VDb2xvcj0jMjg2NDk0OyZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyByZWxhdGl2ZT0mcXVvdDsxJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2UxYyZxdW90OyBzb3VyY2U9JnF1b3Q7YjEmcXVvdDsgdGFyZ2V0PSZxdW90O3AxJnF1b3Q7IGVkZ2U9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyBzdHlsZT0mcXVvdDtlZGdlU3R5bGU9b3J0aG9nb25hbEVkZ2VTdHlsZTtyb3VuZGVkPTA7aHRtbD0xO2VuZEFycm93PWJsb2NrO3N0cm9rZVdpZHRoPTI7c3Ryb2tlQ29sb3I9IzI4NjQ5NDsmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgcmVsYXRpdmU9JnF1b3Q7MSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDt3MiZxdW90OyB2YWx1ZT0mcXVvdDtXMDMgKyBXMDQmYW1wO2x0O2JyJmFtcDtndDtTMDQx4oCTUzA4MCDCtyAyw5cyMCBEVVRDb250ZXh0JnF1b3Q7IHN0eWxlPSZxdW90O3JvdW5kZWQ9MDt3aGl0ZVNwYWNlPXdyYXA7aHRtbD0xO2FsaWduPWNlbnRlcjt2ZXJ0aWNhbEFsaWduPW1pZGRsZTtmb250RmFtaWx5PU1pY3Jvc29mdCBZYUhlaTtmb250U2l6ZT0yMDtzcGFjaW5nPTE0O2ZpbGxDb2xvcj0jZWFmMmY4O3N0cm9rZUNvbG9yPSMzMzU1NmY7c3Ryb2tlV2lkdGg9MjsmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgeD0mcXVvdDs2MDAmcXVvdDsgeT0mcXVvdDszMTUmcXVvdDsgd2lkdGg9JnF1b3Q7NDAwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMDAmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7YjImcXVvdDsgdmFsdWU9JnF1b3Q7QnJva2VyIEIwMiZhbXA7bHQ7YnImYW1wO2d0O+WUr+S4gOWuv+S4uyDCtyDmnKzln58gREIgLyDpmJ/liJcmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlOGY0ZWY7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzYwMCZxdW90OyB5PSZxdW90OzUyMCZxdW90OyB3aWR0aD0mcXVvdDs0MDAmcXVvdDsgaGVpZ2h0PSZxdW90OzEwMCZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtwMiZxdW90OyB2YWx1ZT0mcXVvdDtQU1UwNuKAk1BTVTEwJmFtcDtsdDticiZhbXA7Z3Q7NSDlj7Agw5cgOCDpgJrpgZMgPSA0MCDnqbTkvY0mcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlYWYyZjg7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzYwMCZxdW90OyB5PSZxdW90OzcyNSZxdW90OyB3aWR0aD0mcXVvdDs0MDAmcXVvdDsgaGVpZ2h0PSZxdW90OzEwMCZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtlMmEmcXVvdDsgc291cmNlPSZxdW90O2htaSZxdW90OyB0YXJnZXQ9JnF1b3Q7dzImcXVvdDsgZWRnZT0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHN0eWxlPSZxdW90O2VkZ2VTdHlsZT1vcnRob2dvbmFsRWRnZVN0eWxlO3JvdW5kZWQ9MDtodG1sPTE7ZW5kQXJyb3c9YmxvY2s7c3Ryb2tlV2lkdGg9MjtzdHJva2VDb2xvcj0jMjg2NDk0OyZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyByZWxhdGl2ZT0mcXVvdDsxJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2UyYiZxdW90OyBzb3VyY2U9JnF1b3Q7dzImcXVvdDsgdGFyZ2V0PSZxdW90O2IyJnF1b3Q7IGVkZ2U9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyBzdHlsZT0mcXVvdDtlZGdlU3R5bGU9b3J0aG9nb25hbEVkZ2VTdHlsZTtyb3VuZGVkPTA7aHRtbD0xO2VuZEFycm93PWJsb2NrO3N0cm9rZVdpZHRoPTI7c3Ryb2tlQ29sb3I9IzI4NjQ5NDsmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgcmVsYXRpdmU9JnF1b3Q7MSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtlMmMmcXVvdDsgc291cmNlPSZxdW90O2IyJnF1b3Q7IHRhcmdldD0mcXVvdDtwMiZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHJlbGF0aXZlPSZxdW90OzEmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7dzMmcXVvdDsgdmFsdWU9JnF1b3Q7VzA1ICsgVzA2JmFtcDtsdDticiZhbXA7Z3Q7UzA4MeKAk1MxMjAgwrcgMsOXMjAgRFVUQ29udGV4dCZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MjA7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2VhZjJmODtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7JnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHg9JnF1b3Q7MTE0MCZxdW90OyB5PSZxdW90OzMxNSZxdW90OyB3aWR0aD0mcXVvdDs0MDAmcXVvdDsgaGVpZ2h0PSZxdW90OzEwMCZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtiMyZxdW90OyB2YWx1ZT0mcXVvdDtCcm9rZXIgQjAzJmFtcDtsdDticiZhbXA7Z3Q75ZSv5LiA5a6/5Li7IMK3IOacrOWfnyBEQiAvIOmYn+WIlyZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MjA7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2U4ZjRlZjtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7JnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHg9JnF1b3Q7MTE0MCZxdW90OyB5PSZxdW90OzUyMCZxdW90OyB3aWR0aD0mcXVvdDs0MDAmcXVvdDsgaGVpZ2h0PSZxdW90OzEwMCZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtwMyZxdW90OyB2YWx1ZT0mcXVvdDtQU1UxMeKAk1BTVTE1JmFtcDtsdDticiZhbXA7Z3Q7NSDlj7Agw5cgOCDpgJrpgZMgPSA0MCDnqbTkvY0mcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlYWYyZjg7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzExNDAmcXVvdDsgeT0mcXVvdDs3MjUmcXVvdDsgd2lkdGg9JnF1b3Q7NDAwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMDAmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTNhJnF1b3Q7IHNvdXJjZT0mcXVvdDtobWkmcXVvdDsgdGFyZ2V0PSZxdW90O3czJnF1b3Q7IGVkZ2U9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyBzdHlsZT0mcXVvdDtlZGdlU3R5bGU9b3J0aG9nb25hbEVkZ2VTdHlsZTtyb3VuZGVkPTA7aHRtbD0xO2VuZEFycm93PWJsb2NrO3N0cm9rZVdpZHRoPTI7c3Ryb2tlQ29sb3I9IzI4NjQ5NDsmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgcmVsYXRpdmU9JnF1b3Q7MSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtlM2ImcXVvdDsgc291cmNlPSZxdW90O3czJnF1b3Q7IHRhcmdldD0mcXVvdDtiMyZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHJlbGF0aXZlPSZxdW90OzEmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTNjJnF1b3Q7IHNvdXJjZT0mcXVvdDtiMyZxdW90OyB0YXJnZXQ9JnF1b3Q7cDMmcXVvdDsgZWRnZT0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHN0eWxlPSZxdW90O2VkZ2VTdHlsZT1vcnRob2dvbmFsRWRnZVN0eWxlO3JvdW5kZWQ9MDtodG1sPTE7ZW5kQXJyb3c9YmxvY2s7c3Ryb2tlV2lkdGg9MjtzdHJva2VDb2xvcj0jMjg2NDk0OyZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyByZWxhdGl2ZT0mcXVvdDsxJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2xlZ2VuZCZxdW90OyB2YWx1ZT0mcXVvdDtDQU4gLyBQTEMgLyDmuKnnrrHmjInnnJ/lrp7niannkIbkuI4gU0RLIOWfn+WbuuWumuWUr+S4gOWuv+S4u++8iFRCRO+8ie+8m+WFseS6q+iuvuWkh+S4jeWboOWIhiAzIOWfn+iAjOWkjeWItui/nuaOpeOAgiZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MTg7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2ZmZmZmZjtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7c3Ryb2tlQ29sb3I9bm9uZTsmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgeD0mcXVvdDs2MCZxdW90OyB5PSZxdW90Ozg0NSZxdW90OyB3aWR0aD0mcXVvdDsxNDgwJnF1b3Q7IGhlaWdodD0mcXVvdDs0NSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICZsdDsvcm9vdCZndDsmIzEwOyAgICAmbHQ7L214R3JhcGhNb2RlbCZndDsmIzEwOyAgJmx0Oy9kaWFncmFtJmd0OyYjMTA7Jmx0Oy9teGZpbGUmZ3Q7JiMxMDsiPjxkZWZzLz48Zz48ZyBkYXRhLWNlbGwtaWQ9IjAiPjxnIGRhdGEtY2VsbC1pZD0iMSI+PGcgZGF0YS1jZWxsLWlkPSJ0aXRsZSI+PGc+PHJlY3QgeD0iMTMiIHk9IjEyIiB3aWR0aD0iMTQ4MCIgaGVpZ2h0PSI2MCIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSJub25lIiBwb2ludGVyLWV2ZW50cz0iYWxsIiBzdHlsZT0iZmlsbDogbGlnaHQtZGFyayhyZ2IoMjU1LCAyNTUsIDI1NSksIHJnYigxOCwgMTgsIDE4KSk7Ii8+PC9nPjxnPjxnPjxzd2l0Y2g+PGZvcmVpZ25PYmplY3Qgc3R5bGU9Im92ZXJmbG93OiB2aXNpYmxlOyB0ZXh0LWFsaWduOiBsZWZ0OyIgcG9pbnRlci1ldmVudHM9Im5vbmUiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHJlcXVpcmVkRmVhdHVyZXM9Imh0dHA6Ly93d3cudzMub3JnL1RSL1NWRzExL2ZlYXR1cmUjRXh0ZW5zaWJpbGl0eSI+PGRpdiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiB1bnNhZmUgY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IHVuc2FmZSBjZW50ZXI7IHdpZHRoOiAxNDU0cHg7IGhlaWdodDogMXB4OyBwYWRkaW5nLXRvcDogNDJweDsgbWFyZ2luLWxlZnQ6IDI2cHg7Ij48ZGl2IHN0eWxlPSJib3gtc2l6aW5nOiBib3JkZXItYm94OyBmb250LXNpemU6IDA7IHRleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICMwMDAwMDA7ICI+PGRpdiBzdHlsZT0iZGlzcGxheTogaW5saW5lLWJsb2NrOyBmb250LXNpemU6IDI4cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtNaWNyb3NvZnQgWWFIZWkmcXVvdDs7IGNvbG9yOiBsaWdodC1kYXJrKCMwMDAwMDAsICNmZmZmZmYpOyBsaW5lLWhlaWdodDogMS4yOyBwb2ludGVyLWV2ZW50czogYWxsOyBmb250LXdlaWdodDogYm9sZDsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd29yZC13cmFwOiBub3JtYWw7ICI+TG9jYWwgKyBEZXZpY2VCcm9rZXLvvJrnu5/kuIDkuJrliqHlhaXlj6PkuI7liIbln58gSS9P77yI55uu5qCH6K6+6K6h77yJPC9kaXY+PC9kaXY+PC9kaXY+PC9mb3JlaWduT2JqZWN0PjxpbWFnZSB4PSIyNiIgeT0iMjUuNSIgd2lkdGg9IjE0NTQiIGhlaWdodD0iNDEiIHhsaW5rOmhyZWY9ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFGcmdBQUFDa0NBWUFBQUJpWk9xdkFBQUFBWE5TUjBJQXJzNGM2UUFBSUFCSlJFRlVlRjdzM1F2OEJkZDg3LzN2Q1ZXWFU5ZVV0dTdLY1QydEtsSWxSQ0tDNDNsNjRob1ZsVmNWSVVMZGV1cnlTQkFxTGxVTmxicjA4VHlTU2hPUng2VUlFcW5vQ2FHdDA5T29jOXdQaXJqRzVZa2luUG5XMnV6ODdjdk0rdjFtOXN6ZW4zbTlJbTMrczlhczlaN1pNMnRtNy9tdWZ5Y1dCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFT2dqOHV3N3JzaW9DQ0NDQUFBSUlJSUFBQWdnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2dnZ0FBQ0NDQ0FBQUlJSUlBQUFnZ2dnQUFDQ0NDQUFBSUlJSUFBQWdnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2dnZ0FBQ0NDQ0FBQUlJSUlBQUFnZ2dnQUFDQ0NDQUFBSUlJSUFBQWdnZ2dBQUNDQ0NBQUFJaTRKcURBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUNna3dBQjE1MjRXQmtCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBZ0lCcmpnRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFnVTRDQkZ4MzRtSmxCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVDcmprR0VFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUTZDUkJ3M1ltTGxSRkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVDTGptR0VBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUTZDUkF3SFVuTGxaR0FBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVDRGdtbU1BQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUtDVEFBSFhuYmhZR1FFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVDQWdHdU9BUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUNCVGdJRVhIZmlZbVVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFLdU9RWVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCRG9KRUhEZGlZdVZFVUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFJdU9ZWVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCRG9KRURBZFNjdVZrWUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFJT0NhWXdBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJMWlI0RkdTTHBaMG1xUnZUN3lEVjVWMGEwbTNMLy84bWFTeko5NG5tbzhBQXRzbjhPOGwvVnlnVzVkSStvb2svNXNGQVFRUVFBQUJCQkN3Z08rRnJsQkI0WHZCcjFlVW93Z0NDQ0NBQUFJSUlJREFiZ3RjVTlMM0pYMTF0eGttMy91clNmcG0yWmRUNmN6bEpibmR0Y3NQeW5IN3Zkb0tLSWNBQWdnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2dnZ0FBQ0NDQ0FRRVNBZ091SUhtVVJRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRR0NNQXRlU2RJNmttMG55Uy8wbk5hRm94MHY2WjBrL0hHT0RTNXQrUnRJTkpQMjZwUDNMUDdlVXRNK2VOcDhwNmRBUzREM2k3dEEwQkJEWUlZSHJTSHBuT2UvV2R2c2xraDQvOHZOMGJkK21YczdCb2tjMi8zeWgyY2Vuc0krbXZqdHBmNDhDdFVHOHN5WVI5Ti9qemhtb2FyK25kWXlrL1pxeCtuK1I5TjgzZU01MFczeFA0VWx5L21SaXdXN3p1K3Yva2ZRN0ZmdnYvNVgwMElweW15enlTRWtuVmpUZ2YwbjZEVW1mNzFqVzk1N2ZrdlRsanVWWUhRRUVFRUFBQVFRdUxmREhrdTdYRWVXL1NucllGa3pNMkxIYm8xNzlNczMzQncrVTlFcEo1elZqK2ZzMno2a3VHbldMYWR3aUFUK2o5R2Z5UDB0NmtLVFRKOFQwZjBoNlU2QzkvMzh6TWVxZEpmMWRvQTZLSW9BQUFnZ2dnQUFDQ0NDQUFBSUlJSUFBQWdnZ2dBQUNDQ0JRTFVEQWRUVWRCUkZBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBWUtRQ2gwbDYzWUsyZlZ6U2NaSk9HMEY0aUFNUWIxMEM1KzdlQkJmY1J0TFZXbm82dFBzZUpVeTJaUkZXUTJEMEF0RlEwSzlKK2s1Rkx5UGI5V2Z4cTVLK1Y3SGRiU3JpY1A2WFNYcDRvRk1YU0RwUTBvV0JPaWlhTCtCd3B3ZVVzTTBybCtxZktlazVIUGY1Mk5TNEZRSzFRYnl6em45WTBsMEltNTMwc2VESmFUelJ6cjZsRjc3L2VIb0pWUnRxdk9CM3hSeHFmWUtrMjVVSmY2Wjg3MUQ3dVpwaXdIVnRvRjNYZ0d0ZjAzMHRmMHdUZ240VzRZMlRQdWZRZUFRUVFBQ0JjUWpVakZmK1J0Szl5MlFUNCtqRmJyZkNvY2l2a1hUUUhJT0Ryby9pK2Nka0RneFB6blowK2Y3SHp5cTllQ0tYQXlUNXVlTVVsdHI3Z1ZuZkNMaWV3bDZtalFnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2dnZ0FBQ0NDQ0F3QllMRUhDOXhUdVhyaUdBQUFJSUlJQUFBZ2dnZ0FBQ0NDQ0FBQUlJSUlBQUFnZ2dnQUFDQ0NDQUFBSUlJSUFBQWdnZ2dBQUNDQ0N3Z3dJT01qaEQwaUVyK3U1UTJwTWtIUy9wbnlYOWNFQ25hMGc2VzlLdkJMZnBrTzRIRTdBUlZLVDRtQVJxd29EbTIvOS9TbnB6UlljaTJ5VTBSUEx2MFo5Y3pxY1YvUDlXaE5EK1dybCt5OTJpaERzNUhIWHZjbUlUN3Y1WXJrSDk3Z0JxbjV6QTVVdUk4YjBDTFNma0xvQTNncUtYTFJNQ1BHeEJXeTZXOUZ4SkwyOUMxNzdTVTF0OVRmNlBrdjVjMG0vczJjYTVraHlXZGxGUDIrNnoydHF4Mmk0RlhIK3U3UFBQcnRrUml5YXVjQkhDRy9zOGdxa2JBUVFRUUdBWEJHckdLNHo5eDNGa2VIejAwREtPbjRVaXo3ZnN2MGg2d2NEZkg0eERaanF0bUkxeFg5Sk13UGZ6QzVvOXBRbGRDTGllem5GSFN4RkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRV0NCQnd6V0dCQUFJSUlJQUFBZ2dnZ0FBQ0NDQ0FBQUlJSUlBQUFnZ2dnQUFDUXduY1d0S2pneHZ6eTk4dmx2U3BZRDBVUndBQkJCRFlUZ0cvdU9hd1FIOFgvbFZDbHJaeko5TXJCQkRZcU1BOUpSMGFiQUZqK2lBZ3hSRkFvSlhBSFNTZDB3VElYYTdWMnRMSEpSMG55WUhSMzI1WkpycmFzVTBveGpIQlNyN2I5UE9BSnNqN3ZHQTlGRWRnTEFJMVlVRHpiU2ZnZWpON2NyOFMybi9Gd09hZkt1bDVoQVVGQkhPTCt0bUtyMU9QV1ZNdElkZTU3dFEyZllGL0wra3RrdTRTNkFvaGR3RzhFUlRkWDlLN1d0eUhlREtlcHlkUHRPTkpDZjVFMHNFckhKNGs2VVVqY09yYWhOb3g0aTRGWExlWmRHWFZ4QlhlSjRRM2RqMHlXUjhCQkJCQUFJR2ZDTlNNVnhqN2IvNEl1b0drdjVUazd4T1dMWjZVN1FGbE1xTStXdXhKY3U0a2FkOCtLaCtvemd2S3ZjMUFtN3ZVWnRhTmNXY3IrL3VmWjB6ZzJTTUIxNXM0aXRnbUFnZ2dnQUFDQ0NDQUFBSUlJSUFBQWdnZ2dBQUNDQ0NBUUpvQUFkZHBsRlNFQUFJSUlJQUFBZ2dnZ0FBQ0NDQ0FBQUlJSUlBQUFnZ2dnQUFDYXdTaVA4QjM5VzFlem1WSElJQUFBZ2pzam9BRHJlOHE2ZmRMc04rVjluVDlleVZrNjJXUzNrN2c5ZTRjR1BRVUFRUjZFM0RRallNSEl3dGorb2dlWlJGQW9JMkFmeGQ1Z3FTajJxeThaeDJIVlp3azZmamtzTGxGVGJtaHBITWxYYnVpbmZORlRwSDBrQ1lnNy92QmVpaU93QmdFYXNLQTV0dE53UFh3ZS9INmt0NHA2U2FCVFo4bDZiNlNMZ3JVUWRFY2dTdElPcnBNK3ZBekxhdDhwcVRuOE15bHBSYXJiYnRBUnNEMTZaSU9ZMnczeVVQRjU5QlRKZDI3UStzL1ZFTFdJcyt1YnlycCtaSThEbHEzZkxrOFIzY0EzWlNXMmpFaUFkYy8yc3RYTHRmcWRSTlg5QjNlT0tWampyWWlnQUFDQ0NEUVZhQm12RUxBZFZmbHZQWDlPeE4vZi9EQ1pwelU1dm5IMTV0SkpnK1JkSDVlRTM1Y1U4WjlaQS9ONmxUbEg1YnZWRG9WQ3E1OEhVblBsblJFeTNxbU10YU4vcjZXNytGYkhoQ3NoZ0FDQ0NDQUFBSUlJSUFBQWdnZ2dBQUNDQ0NBQUFJSUlOQ1BBQUhYL2JoU0t3SUlJSUFBQWdnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2dnZ0FBQ0NQeTBRUFFIK0s2UkgrRnpaQ0dBQUFJSXpBVHVJdW5Wa242NUpjbkhKVDFDMHJzbC9iQmxHVlpEQUFFRUVMaTBBQUhYSEJFSUlEQUZnWXpnNk9OSzBGeWY0MGIvZnZQRmtoNFhST1ZaU1JDUTRxTVNxQWtEbXU4QUFkZkQ3czZyUzNwOW1YaXFkc3NPQ0RwUTBqL1VWa0M1RkFGZmt6eUIyQ3M2UEdlWjM3RHZFMTdBODVhVWZVRWwweGJZdC9rc09hVHVGb0Z1VERHUU45RGRyU3A2ZUhNT2ZXMWxqNzVVd3ZYOHZQc3JMZXZvR3VnMnEvWTBTUStlMk1RRXRXUEVLWDZlYXI5UFgzUmY2T0RHQjBnNnNZUmN0em0wK2d4dmJMTjkxa0VBQVFRUVFHQ3FBalhqbFVqQXRhL3oxMmdDZnYzdlhWcStLK21yd2VjUC82Rk1jbm03am5BZmxYU3dwRTkzTExkdWRRS3Uxd2xkK3U4MWs3UE5hdWhySDNicndlcTFhKzhIWnJYeWZWSG0zcUF1QkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFnYzRDQkZ4M0pxTUFBZ2dnZ0FBQ0NDQ0FBQUlJSUlBQUFnZ2dnQUFDQ0NDQUFBSUlWQXBFZjREdnpmSWovRXA4aWlHQUFBSmJKT0R2dVkrUzlCSkorMVQweTZGTEw1SjBTVVZaaWlDQUFBSzdMa0RBOWE0ZkFmUWZnV2tJSE5zRVhCd1RhT3JuSk8wdjZaT0JPdG9XdlpXa2N5VmR0VzJCSmV1OXJBbkNPem9ZN0JGc0FzVVJTQkdvQ1FPYTN6QUIxeW03b1ZVbFY1RjBlbk1PTzZqVjJvdFgra0VKWFhROUxKc1R1S21rNTB2eTU2ZDJZVi9XeWxGdTJ3UitVZEw3SkYwdjBMRXBCdklHdXJzMVJXL1EzRU9jSmVsR3dSNWRYSzZ0NTYyb3g4ZlpNeVFkR2RqV1EwcW9YNkNLUVl2V2poR24rSG1xL1Q1OTczZm8xeXdUa2ZqZXR1c3loZUMvcm4xaS9kMFR1SHp6UGVMVjVycWRFWWk2ZTRyMGVDaUJhMHU2dzFBYjI2SHRmRnZTT1pJOHZocGlxUm12UkFLdU0rNDlobkRKM2tiRTdHY2svYjZrNXpULytQK3VXVHptdjYra2kyb0tMeWxEd0hVN1RJZTUyOTRUckVYdXVkOVNua2NPZFc1bzE3dWZyRlY3UHpDcmdkL1dkaFZuZlFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBSUZVQVFLdVV6bXBEQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCRllJUkgrQTc2cjVFVDZIR0FJSUlJQ0FYMW83dFRMY2VxYm5nRmEvK1BaRE9CRkFBQUVFT2drUWNOMkppNVVSUUdBREF0Y3F3U1UzQzJ6N0R5VWRIeWpmcGVobEpiMVcwbUZkQ2kxWTkvT1M3aXpwWThGNktJN0FwZ1Zxd29EbTIwekE5VEI3OEFxU1RwRDBzT0RtWGxrbXNQcGVzQjZLMXdsY3VZUTZQYWF1K0UrVitycWtReVNkbjFRZjFTQXdSWUdNa0xraHg2SlROQjVqbXoybTkzVXhFamc5NjlkcGtoNHNhZG0xMGVmdXQwcTZZeEJpYXZjUHRXUEVLUVpjMzA2U2d4czkzdXF5N1AwTzNlOExQamx3Yjl0SGVHT1gvckF1QXVzRUhBWjZpK1laMEFHU2ZsM1NiVXVnOVh5bzliSTZQRG1MejRNZmFTWjUrWHRKNzViMGQ4Mjl5WmY0M25BZE8zL3ZTU0RqdDFROU5XM1MxZjR2U2I5UlB1OURkS1JtdkJJSmE4NjQ5eGpDSlhzYnRXYVJ5VC8yOWlIN2VSWUIxKzJPRW9lU255enAvdTFXWDduV21IOHZGTDBtOE52YWhBT0VLaEJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRVHFCUWk0cnJlakpBSUlJSUFBQWdnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2pVQ1Z4SjBxc2wvV1pkOFIrWDhvdnlmcm56dndmcm9UZ0NDQXduRVAwQnZsdktqL0NIMjE5c3FWN2dicEwrb3I1NHFPUlh5d3U0bDVSYXZsLysvNHNrK1FXK1QwdnlPZ1FIaFpncHZFR0JXNWJBd24yRGJmQlk4a0JKL3hDc2grSzdJL0RIa3U2M29lNTYvUE4rU2Y5YXR1L2dCZDhIZlZuU1AzTmUzOUJlMmQzTkVuQzl1L3VlbmlNd0ZZSERTMkIwYlhzdktPUEVDMnNycUNoM2NCTzI4dmJnQkM3ZTdET2Ivem0yWXZzVVFXQk1BalZoUVBQdEorQzYvNzNwTUptWFNYcDRjRk9FSmdZQmc4VTlLY0liSlYwMVdNL2U0aCtWNU91YW4wR3lJTENMQXI4cTZWeEpQeGZvUEFIWEFid05GYzBhejMrM0JMV2V0NllmOTVIMCttYjhIMzBmYkYyWTlvWTRGMjYyZG93NHhZQnJCL1crUjlJVk8rNEFmeDk0VjBudm5TdDNGVW1uTitlbGd6cldOVnM5Tzd5eHNobmhZbG0vVVhKRGZsZlN1OEl0Mmx3RmJuL2t1WUdmRGI5dVE4Mi9mRGxISGlIcDNzMGt0dDZ2Mll1L1B6KzcvS2J0SFpMOC9UckxkZ3Y0L1BqQWlpNzYrN28vYlg2MzZQdWZqQ1hqdDFRWjdkaTJPZ2k0M3JZOStxUCsxQVpjUnlmLzJLdVpHWkJNd0hYN1kvWEdaYXpzZ1BmSU11WkoycUxYaERIK3R2WS9OeFBpM2F0aWgzMUxrbituODltS3NoUkJBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUTJKQkE5QWRORzJvMm0wVUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUNCQ1F0ay9TQjdqRC9FbmZCdW9la0lEQ0lRL1FHK0c4bG5mNUJkeFVhQ0FobkhlckFKYTR2N0JkMVBsSmUvL0NLMkF4TWNtRG9MeGw1YkFTc2dzQ0VCdjNoL1ROSzJIY2gxZEZQZkQ1UHFvNXJ0RnFnTlVSbEs1V3NsZU9IL0svLzJPWjFqZXlqOTNkb09BZGU3dGIvcExRSlRFM0I0MTVtUzlnczAvQ0dTVGdxVXJ5bDZCVWxuTlBkbGg5UVVuaXZ6a1JMMjlNVmdQUlJIWUpNQzBYRTNBZGY5N2oySFd6dkU2OGgrTjdNMXRkY2VqME1BZUY4K0xmRVp5M3licHhTWU9vVDFiQnVibkJSeHlINk9hVnNPV3IrdnBDRW5McWtOcHAxM2UySUpjQnFUSlcxWkxuRE44aXpPRXpOR2x4UEw4Mm9IRmE5YWZQOXdhZ2w0alc3elVaSzgzYkV2dFdQRVhRcTQ5ajVjTlBhNGdTUlBMSEtqeXAyY0dkNVkyWVJ3c2F6ZktDMHpEamR3b0FxaXowdysxeHhMKzB2NjVFRHQ5V1k4WnIySHBLYzJFNFA5eG9EYm5XM3FBMDNZL1BNbC9iV2tpemV3ZlRiWnI4RHR5M1BFbWtsL3NzK05VL2g5U2I5N281L2FDYmp1eDNYVHRkWUdYTSt1S3htVHRya3VUMDdqKzN4UGNCUmRNc2NxMGJiVWxoOXlvcWJvSktmejEvbDdOdmRnWDZudGRFL2xvdGVFTWY2Mk5qTHhEcE1rOW5TZ1VTMENDQ0NBQUFJSUlJQUFBZ2dnZ0FBQ0NDQ0FBQUlJSU5DWEFBSFhmY2xTTHdJSUlJQUFBZ2dnZ0FBQ0NDQ0FBQUlJSUlBQUFnZ3NFOGo2UWZZWWY0akxYa2NBZ2RVQzBSL2d1M1krK3h4bFV4RElPTlkzMGM4Zk5JRUlINVQwQ2tsdmtVUW8yaWIyQXR0Y0pYQTFTZTlvanMvYkpqRTU1UDAzT2RhVE5MZS9tdG9RbFUzSmZLbWN6LzljMG1jMjFRaTJ1NVVDQkZ4djVXNmxVd2hzamNCOUpMMWVVdTN2SWlQaEdGSEV3eVM5TGxwSk03YWRTa0JkUWxlcFlrc0ZvdVB1MmtEaHlIWjM1WGtsNGRiZFAzUzF4MlAzTGRXVjhQWHlDWkplV0ZkOFphbnN3TGNlbWpoNGxWTjlaanc0Vk9JR2h3NjBjOU16QXE3SGZ1NUkzRVdUcjhybjBSZExlbHhDVHp4WjNaMGxmYXhsWFo3VTUrd21lUFdLTGRkZnR0clh5MFE3NXdmcjZidDQ3VmlOZ09zZjdSbUgvVHNVZlorS0hlWHZEZytWOUthS3NtTXBrdlViSmZkbnl1ZG9CMFcvTmZETVpNaEpZNi9SL0M3a0Qwcm92MFA5TjcwNDNQcUVFblk5dGhETVRkdE1kZnZYbC9ST1NUZXA2TUFySlIzVlRCamtDY1d6RnU0VnNpUXZYYy9ROXdNMTQ1WEk4K2hmYkNZQmVKK2s2L1hETjlwYUkyYnVWQ1JvZHkvS1J5VWRMTW1USzBXV3pMRktwQjJSc2tNR1hQc1o1Y21TN2g5cGNDbmJkcEtoaEUyMXJpSjZUUmpycytxeFhYdGI3eEJXUkFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFT2dtVVBzaVI3ZXRzRFlDQ0NDQUFBSUlJSUFBQWdnZ2dBQUNDQ0NBQUFJSUlQQVRnYXdmWkkvMWg3anNhd1FRV0M0US9RRythK2F6enhFMkJZR01ZMzBNL2Z3WFNYNVorYldFbzQ1aGQ5QUdTVGVYOUY1SlYwL1M0SnFTQkxrajFkUzhsRHdXbWc5SThrdWxmdUgza3JFMGluWk1Wb0NBNjhudU9ocU93TllMT1BEb2pCTE9WdE5aaDNZNTdNbmhOb3VXVzB0NmRFM0ZMY3RjdVlTT1hiYmwrc3RXKzBJSnJCcnFtdjlua2o0VWJEUEZFWmdYaUk2N2F3UG5JdHZkaFh2TEswbHk0TXZoSEs2ZEJHcVB4MDRiQ2E3c2R3a2N6dmFTeXRETFpadjM1K0pBU2U4UHRtK2JpbS9MTStNcDdaT2hBKzFzYzg4eUZvczRUZUhjRWVuZk5wWDF2dkk5U0UxbzhGNkhyb0Z3bWVIYVo1VjdrWXRHdkhOcXgyb0VYUDlvcDBhT2w0ODMzeEUrckR4Ykh2RWhzckpwV2I5UjhrYW1lbzcyc3daLzMrdkp0V3FXNzBvNm9Ibm1jbDVONFE1bC9Hemt1REkrelRpM2R0aDBxMVVkYU94eDg3T2JpV0srMGFvRUs0MVI0RHJsK2wwem9iSy9iL040THp2b25IdUZmbzZVb2U4SGFzWXJrYkJtQXE3cmo1c2JOODhzM2lQSmh0RWxZeXo5YytVKzhrN1J4bXl3Zk5mN21XaFRiOW1NVGM2UnRHK3dJbjh2OUFCSnB3ZnJ5U3dldlNhTStWbDFaT0lkSnRQTFBNcW9Dd0VFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUTZGR0FnT3NlY2FrYUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQllLWkwwOE51WWY0ckxyRVVCZ3NVRDBCL2l1bGM4K1I5Y1VCREtPOWJIMWszRFVzZTJSM1d6UHI1Y1hEYStZMlAycGhoRWtFbEJWUzRHYWw1SmJWajNZYWo2WEg5RzhwUG5od2JiSWhyWlJnSURyYmR5cjlBbUI3UkJ3T1BWYlMzQlhUWTllSStrUmtoeFd0R2paeHZ1OEdxZTlaUmhQWnloU3g3eEFkTnhkZTB4R3RydnR6eXV2SXVsVmt1N0hvZHBab1BaNDdMeWhZQUcvVC9CUVNhOU9DbW1kTmVlQ0VuSjlZYkI5MjFLY3NjVHdlM0xvUUR2M01McWZ2OStFeU42MVRQSTN2QmhiN0NKdy9USTV6azI2RkZxeWJtMVk1ZzBrT1ZEdlJnbHQ4RVFXUjB2eU1UakdwWGFzUnNEMVQvYW14M1FPN2p1bzVRNzJ2ZkhUSlowZzZlS1daY2E2V3RadmxOeS9xWXp2OXU2TFd6WDcvbHhKVjYzY1NXZEtPclRIWThHVGx2a2M1SERybjZsczQ1REZIRzU5cEtSVG1WUjBTUGFVYmZuNE9sblMvU3RxKzNxWldPLzhpckxyaWtUSGtPdnEzOVcvRDMwL1VETmVJZUM2KzlFWk1admZXaVJvZDIrclgxa21aMWoyM2NLNlhtNURXUG5RQWRjMjliWDQ1ZXR3Vy96OUUyV00vS2tXNnc2eFN2U2FNT1puMVg0RzZXUGx1UldRWXd3anIrZ0dSUkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQWdlMFhJT0I2Ky9jeFBVUUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRR0JzQWxrdmo0MzVoN2hqTTZjOUNJeEZJUG9EZlBlRHovNVk5aWJ0V0NXUWNheVBWZmpqa3A0bzZTMjhzRHZXWGJUVjdTTGdlcXQzNytnN1YvTlM4bGc3NVZDU3AwajY5bGdiU0x0R0xVREE5YWgzRDQxRFlHY0ZISVIwUmdtWnFVSDRzcVFEbW5BYkIzRXVXN2I1UHEvR2JGWm1xdUZla1Q1VHRsK0I2TGk3OXBpTWJIZWJuMWRlcDV4ZmI5dnZidC9hMm11UHgwMkE5QlZ5UGZiQTFDR3RHVXNNcWYyamJRMGRhT2R0c3AvNzNjOWpDU3VPaEdQdUZYSklsME5qMzFSSmQ3aWsxMWFXblM4MjlyQ3cyckhhV0k2Wkxydm9WMHNROGM5MUtWVFdYVGYyK0RWSlo3Y0lPZmI5OVdNbGZiYWlEV01za3ZVYkpmZHRuZkVZKys4MkhTdnBtRURqSGlUcGxFRDVWVVZ2VVFLSGI5MVQvWDFXNjgvS281dUF6Uy8wdVJIcVRoUHdQYytUSlIxZldlT2pKUG4rcG8rRk1XUWZxc1BmRDlTTVZ5Smh6ZHNRaWx5ejV5Tm04OXZ6T2VGWlpVS1BtbmJzTGZNUVNTZFZWclFOKzNJVEFkY2U0NzFCMHNHVjd2UEZUcFBQR2VyYUFBQWdBRWxFUVZUMDRCVVRvQ1pzb25VVjBXdkMySjlWZDUxNFp4N3U4ODM5ekowbGZheTFKaXNpZ0FBQ0NDQ0FBQUlJSUlBQUFnZ2dnQUFDQ0NDQUFBSUlEQzVBd1BYZzVHd1FBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUNCblJmSWVubHM3RC9FM2ZrZERRQUNDd1NpUDhCM2xYejJPYlNtSUpCeHJJKzlueCtSZEpTa2R6Y3ZSUDl3N0kybGZWc2pjSE5KNzVWMDlhUWVjVTFKZ3R5UmFtcGVTaDR6elFlYkVNLzdTL3JVbUJ0SjIwWXBRTUQxS0hjTGpVSmc1d1VjWVBEMkpwQmluMHFKNHlROVk4Mjl6UzdjNTlYd1RUWGNxNmF2bEJsR0lEcnVyajBtSTl2ZDFudExCOHc1YlBPNncrejZyZHhLN2ZHNEtZdytRcTdISHBnNnBEVmppU0cxZjdTdFRRUmNaOXd6RHk4MW5TMk9JYXc0R282NVYvczFraDRSQ0ZMelpEK25TcnAzd203OGVwazA2UHlFdXJLcnFCMnJqZUdZNldvUkNUaDA0UG5KYXpiNFFFbXZrN1RvZlVKUGN1dmpjZHUrKzh2NmpaSnBwemErYzV1djFVenFkVTRUVUgyenJnZGpXZC9mQ1h0U3NDOVdsbDlXN0RMbHUrWVhTdkxFQVZOZFBHbWFQMWNPajJjWnQ4Qjl5eld6NXZsaDlIcTlUb1o3aFhWQ2RYOGYrbjZnWnJ3U0NXdU9qQm5xUk1kUkttSzJ0d2VSb04yOWRVWEcwcEVKVHNheFY2Uk5CRnk3NzdlWGRHYUxDVnphT1BVNWtVR2I3Yy9XaVY0VHB2Q3N1dTNFTzR2Y3pwTGthL3BGWFZCWkZ3RUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUdBNEFRS3VoN05tU3dnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2dnZ0FBQ0NDRHdJNEdzbDhlbThFTmM5amtDQ0Z4YUlQb0RmTmZHWjUramFnb0NHY2Y2RlBycE5yNWNQM3BSNlJ0VGFURHRuTFRBMVNTOVE5SnRrM3J4aWFhKzMremhwZnlrNWxITnlBUnFYa29lV1JkK3FqbWZLWUVjSHhwN1EybmZxQVF5d3JvWTA0OXFsOUlZQkNZdkVBMTB1MERTZ1pJdVhDT3hTL2Q1WFE2S0tZWjdkZWtmNnc0dkVCMTMxeDZUa2UxdTI5akd2eTMzT2MvQmgxY2MvaERZcWkzV0hvK2JSTWdPYm5WZlBpckprMUY4ZXBNZEc4RzJHVXNNdnhPR0RyUnpEelB1bVllWG1zNFd4eEJXdkY4Sk1jMjRSbjYrcWV2T2tqNFczQVdSY0xDOW0zYVFyYy9abncyMktidDQ3Vml0elRGemVVbEhOOEhRTjhsdWRHVjlWNUowUDBtWHF5ai9kODN6M3I5ZlU4NzEvdGFDRU1CdlNucXpwRyt2S1greHBCZFBiT0xFck44b21XYUs0N3ZEeXRpKzRwRDZ0eUxQYlA3bjJOckNTOG81VVBSVjVWaFBybm9qMVhsU2x5ZEllcW1rU3piU0FqYTZUdURHemZPLzkwaHlJSERYWllqN0dlNFZ1dTZWZHVzUGZUOVFNMTZKaERVVGNOM3VPRmkzVm1aQWN1MzU0bTdsZHpCVHpudllWTUMxemJ6dDU2N2IwUzMrN3BCeWYxZjBEeTNXN1hPVjZEVmhLcytxanl5L09heXhiRE5wYlUyOWxFRUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCSUVKanlGeDRKM2FjS0JCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFTmlBUU5iTFkxUDVJZTRHaU5ra0FxTVZpUDRBM3gzanN6L2EzVXZENWdReWp2VXBnVG9nOVNHUy9QSWRDd0o5Qy9nbCttT1NOdkt5RWx6eHc2VDZxR2E3QldwZVNwNkNTTzJMdGxQb0cyM3NSeUFqcklzeGZULzdobG9SMkZXQmUwaDZheE80VlBOYlNJOERIeVRwcjFyZzdkcDlYZ3VTZjF0bGl1RmViZnZHZXBzUmlJNjdhNC9KeUhhM2FXenpNeVdjOWRtYjJmMWJ0OVhhNDNIVEVIMkVYSjlZbnNGOGY5T2QyK0QyR1VzTWp6OTBvSjE3bUhIUFBMelVkTGJZSnF5NHo5NWNYOUk3RTRPUUh5WEo1OGZva24zZWZxV2tveVI5TDlxd3hQSzFZN1UyeDB6VzcxY1N1enZxcXFZNDlzM2N4MU1iMzNsU3NETWtIVko1VkRub2NmOG1pUHFmS3NzdktuYWQwcWFzeVd3VG14YXU2a1dTbmpLeTgyZTRVMXRRZ1FQVlQ1ZDBVRVZmSEY3K2dGSytvbmpySXR3cnRLYnF0T0xROXdNMTR4VUNyanZ0MG45Yk9XSzJiR3RQbFBUQzdrMVpXT0kxa2g3UjhWcnd5S1Q3Z3FRdVZGV3pxWUJyTi9ZYWt0NG02WFpWTGI5MElkL3YzVWZTdHhMcXFxMGllazJZeW5nOU1ubXRyOC8rYnREN2l3VUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVCZ1pBSTFMM1dNckFzMEJ3RUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFtSnBEMTh0aFVmb2c3c2QxRGN4SG9WU0Q2QTN3M2pzOStyN3VJeXBNRU1vNzFwS1lNVm8xZkhubUNwSmRLdW1Td3JiS2hYUlM0cnFTekpkMDQySG0vbEgrZ3BIOEkxa1B4M1JHb2VTbDVLanBuU2JxdnBJdW0wbURhdVZHQmpMQXV4dlFiM1lWc0hJR3RFb2crWjN4TENhbTV1SVhLTHQ3bnRXQWg0TG9ORXV0MEVvaU91MnNENXlMYjNaYXh6ZFVsT2REU0lTNHNPUUsxeDJQTzFtTzFPT3pjRTRNOVBGYk5qMHY3MmVHaGt0NlVWTjhVcTJFc01meGVHenJRemoyTVhFK0dGNXJlRnR1RUZmZlZxMGc0NXFJMlpRZW51WDF2TGtHMEdRWisvdk9DWnJMSnNVd09XZnZaYW5QTVJPOHJNN3luVk1jVXg3NlorM2hxNDdzN1NEcEgwdVVxRDdKVHlpVEhXWk9VM0Z5U244WGNxTEk5VXlqbWlRc2UyekhZZEFyOW1tb2JvNU5BMUFUVjFsaHhyMUNqdHI3TTBQY0ROZU9WU0Zqekx6WUJyKytUZEwzMUZGdTFSc1JzR1VRa2FIZFJuVjNHMGo1UC9ZV2tJeXIzVXVaeC91dk5iMmplSSttS0ZXM1paTUMxbTN1d3BMZEwycWVpN1h1TGRObC9DWnY3cVNxaTE0UXBqZGQvcmZ6KzY2b1ZrQjhwKy8yekZXVXBnZ0FDQ0NDQUFBSUlJSUFBQWdnZ2dBQUNDQ0NBQUFJSUlOQ2pBQUhYUGVKU05RSUlJSUFBQWdnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2dzRk1oNmVXeEtQOFRsVUVBQWdSOEpSSCtBN3pyNDdITTBUVUVnNDFpZlFqOFh0ZkZGa3A3Q1M3dFQzWDJUYWJlRGVFOE52cHkyNlpmU0pvTk5RMzhzVVBOUzhwVDRqcFAwakJHRjFrekpidGZhU3NEMXJ1MXgrb3ZBdUFVY3d2cDZTVFcvZyt3NjRja3UzK2V0T2dxbUZ1NDE3aU42MnEyN1libEgrM2l3RzlGeGQrMHhHZG51Tmp5dnZKMmsweVY1VWltV1BJSGE0ekd2QmJHYUhKYjZLa24zaTFYejQ5SVhsTW5HTGt5cWIyclZNSllZZm85bEJuMjFiWDNrZXRKMkc3dThYcHV3NGo1OHNrUC91OTZMdE8zVGZpVWNyQ2FRYnU4MlBESEJiNWZuOEdNSXVhNzliTFU1WnJKK3Y5SjJQMDE5dlNtT2ZUUDM4WlRHZDM1V2NvS2tveW9QT24vMjcxWENJaXVydUZTeFhRaTNubldZa091TUl5YW5qdHRMT2xOU1RYRG1KeVFkMUlUT2ZpcW5LU3RyNFY2aEgrU2g3d2RxeGl1UnNHWUNybk9QRzArdzduQm51MFlYajZYdkljbVQycXhicmlicEhjMEVFTGRkdCtLU3YyY2U1MU1PdUw2c0pGOS9IMWJwT0YvTTkydUhOT09nOHhQcXFxa2llazJZMG5qZDQxV0hveiszQmtyU1M1cEozQi9QYjF3cTlTaUdBQUlJSUlBQUFnZ2dnQUFDQ0NDQUFBSUlJSUFBQWdqMEpGRHpZa2RQVGFGYUJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFTmdSZ2F5WHg2YjBROXdkMmJWMEU0RzFBdEVmNEhzRGZQYlhNclBDQ0FReWp2VVJkS082Q2E4c0wwdC9yN29HQ2lLd1dzRGZjL3VGZkwrc3RFOEYxak1sUFljZzlncTUzUzVTODFMeWxNUVlZMDFwYjIyMnJRUmNiOWFmclNPQXdFOEVyaUhwYlpJY3lscXpkSjNjWWRmdjg1WVpUeW5jcStZNG9jejZlek9IUlQxYjBzRWxOT3BRU1JjSDRLTGo3dHBqTXJMZEtZK2xIZGpwRUpBL3FyeS9EdXpxblNoYWV6eU9DY2NoMXc0L2Q3QmJ4dEwxK3B1eHpiSFV3VmhpK0QyUkdmVFZwdlYrWm5sU0NRVnVzejdyZEJkb0UxYmN2ZGIxNDUwblN6bytzZUluU2ZKa29kbUxqOEhNdGpxWTd3SGxPcERkMXE3MTFZN1YyaHd6V2I5ZjZkcW5xYTQveGJGdjVqNmUwdmpPa3hDZEsrbmFsUWZiKzB1NDQwV1Y1ZWVMWGIrRWZONGtvYTZwVk1GRXU1dmZVOUY3bVVlVnNOUWhlc0s5UWovS2tmdUJHNVRuSlZmbzBEUS9HM081THN1WG0yRGp0N1Q4M2NLZlNmclFYT1VFWEhlUmJyZnU0WkplMjI3VmxXdDVBa0FITFR2QWZOMXlKMG52bHVTQTVwb2xjcHp2M2Q2VUE2N2RsOHlROHJNazNiYzVEMlNNZzdydTErZzFZV3JqOWNoM2ZWM0M1THZ1QjlaSEFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRcUJRZzRMb1NqbUlJSUlBQUFnZ2dnQUFDQ0NDQUFBSUlJSUFBQWdnZ1VDMlE5ZkxZMUg2SVd3MUdRUVMyU0NENkEzeFQ4Tm5mb2dOaWk3dVNjYXhQbmVkRVNZOXQrU0xlMVB0Syt6Y25jQmRKcjI1ZU12emxsazM0aHFSSFNEcFYwZzlibG1FMUJHWUN0U0VxVXhKOG1hU2orWHhNYVpkdHBLMEVYRytFblkwaWdNQUNnU01sdmJ4UzVnSkpCMHE2c0VONTd2TVdZMDBwM0t2RDdtYlZOUUtYa1hTUEpuakZRYlczbmx2M3U1SU9hRUxRemdzSVJzZmR0Y2RrWkxzWnp5c2RZdVB4K0xjay9Va1Rndk9aZ0dIYm9nNWQrc3NtbVB3T2JRdXdYbWVCMnVPeDg0WjZMcEFaU0pqeGVlbTV1NzFWejFpaU45cWxGV2NHZmJWcGZkWjM0RzIydGF2cnRBa3J6clp4cUptZko5ZE10TGlvTFE0d2RHaDBaRUtRVlgyTWhubnVyZnZySmVEMi9HellqdlhWanRYYUhETjhkcnZ0akNsZXl6UDM4WlRHZDQrUmRFSzMzWHVwdGYxZHdVc0Q1V2RGZjZHY1IvZFBxR3RLVll4cGtvQXB1V1cyTmZMczBLRzA5eTczNkpsdFdsWVg5d3I5S0VmdUJ5SkJ2LzMwUnByU05hZ3ZnNzdyOVVSd0owdTZmMkJEdm5ZK1RaSi9tOUptT2JiNWJ2NllOaXN1V1NmemZCVTU3djh3ZVZLZ1dwTEl1WCsyVGU4NzErUDd3RXRxR3hJb0Y3MG1USEc4N3ZQYkdaWDMzUitRZE0vbWR5NWZDWmhURkFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQ0JSZ0lEclJFeXFRZ0FCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUlGV0Fsa3ZqMDN4aDdpdGdGZ0pnUzBXaVA0QTN6Ujg5cmY0QU5taXJtVWM2OXZBNFFETUZ4Q1V1ZzI3Y3RSOXVFSjV3ZkNwa202NnBLWC9ROUx6SkowbTZkdWo3ZzJORzdOQWJZakszajU5cmNNTDhWZHZ6cU5YR2hEbGM1SWNNdkhKQWJmSnBxWW5RTUQxOVBZWkxVWmdHd1d1Sytsc1NUZXU2SndEaGc2VjlLYU9aYm5QV3d4R3NFckhBMm5pcTgvdXY1NHQ2WHBMK2hLZE5DVTY3cTQ5SmlQYnpYaGVlWE5KNzVYa2V3QXY3MnoreHdFMzcrOGhTTVVCNVErVjVNbkpITnpUMStMejdaTWxuVEx5WjBNM2xPVHd5N2FUWjdYMU9xbUU0V3pMYzRqTWdOZSt3MTNiN3FPaDEyTXNNYlM0RkFtMHEybHQxbmZnTmR2ZWxUSnR3b296TFc3ZlRBUnhaalA1eEZXVEt2MThjeDl6WjBrZlM2cHZXVFcvVnU2WHN0cjlVVW4zR3FEZHExaHF4MnB0amhrK3U5ME95SXl4YjdjdHh0Zk8zTWUxOXh2eFhuU3J3V0gzUG4vdDE2M1lqOWZPK3E3QTk1QU9oM1JROEM0dVk1a2tZQmZ0L2N6d1BaSitzYUx6bnJ6cmJwTE9yU2hiV3lSNnJ6Q1ZjMU9OVCswWXdOdUszQTlFZ241cit0bW16RGJ2NXpiOUgycWRXellUK0ozVFRQS3diOGNOZXJLNkl5Uzl1OE56c0d1VmJkMnM0N2JtVno5ZDBtR1N2aCtvWTFZMGN0eVBKZUE2T3U3ckdsQ2V3UDVUVlVTdkNWTWNyMGZENVo4azZVVjk3QXpxUkFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFT2d1UU1CMWR6TktJSUFBQWdnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2dnZ0VCTUlQb2o0dG5XcC9oRDNKZ2NwUkdZdmtEMEIvZ1c0TE0vL2VOZ0YzcVFjYXh2ZzVPRGpCNGd5UzlVc1NBd2hJQmZlbklZMkQ1bFl6NEd2eXJwZTBOc25HMXN2VURrQmVwNW5LNHZIenQ4emkvZ0h5RHBJZVdsK3RreDNnZjY0WkpPN3FOaTZ0d2FBUUt1dDJaWDBoRUVKaXZnM3p3K3F3bHNlSHBsRDE0ajZSRVZZMFR1OHhhRGR4M2JWTzQyaW0xWTRNck52ZFZqSlhsaUlRZVVyVm9jNE9WSlUvNnBzczNSY1hmdE1Sblpic2J6eXNkSU9tR0JtY09ZamttY3NPazZraHhDYnFlaGxqOXJudW4rd1Fnbm5Pb3o2TnVCS2srcHVOWU10VTlxdHVQcnJ3UExqNjhwdktDTTcyOGRBcjVMQzJPSjRmZDJKTkN1cHJVL0orbXRrdTVVVTVneXJRVGFoQlczcXFqRlNyY3VrK0o0Y3AyTVplanZTL3lNNzdVWkRTOTFPT1Q2WUVtZlRxeXpTMVcxWTdVMngwelc3MWU2OUdmSzYyYU1mWWZ1ZitZK3JyM2ZHTHJQOXlqWHBOcjNScU1URjdtLzJlUEhOb2IrUHZBVFphS2dmMTFRNEVhU2ZxVzVKL3I1TnBVbHJmT1Jjdjc4YkZKOVZMTmU0TEpsUXFlSHJWOTE0UnF2THBNVlpZVEZ0bTFDOUY1aEt1ZW10aDd6NjlXT0FWeEg1SDRnRXZSYjA4ODJaYlo1UDdmcC81RHJIQ25wNVIwMjZESG4wWksrMGFHTVY4MFlzeiszZWY3MHRJN2JYYlo2NUxodk0rNU9hdWJhYXZ4cytsMlNMcmQyelorczhJRVNVUDdoRG1YNldqVjZUWmppZU4yV2tlTnZxTW1rK3RybjFJc0FBZ2dnZ0FBQ0NDQ0FBQUlJSUlBQUFnZ2dnQUFDQ0d5VlFPMFBGYllLZ2M0Z2dBQUNDQ0NBQUFJSUlJQUFBZ2dnZ0FBQ0NDQ0F3S0FDV1MrUFRmV0h1SU5pc3pFRVJpWVEvUUcrdThObmYyUTdsZVlzRk1nNDFsMXgxeGVBZkkxMWlJYi9mVXRKdnlicGpwTHVMTW5CdjV0WU5oMTZzSWsrczAwRUVOaE9nY2dMMVBNaTBaZVByeVRwcUtiQ1kxdUVDOWJzQ1lkKy9tNFRvdmZEbXNLVTJRa0JBcTUzWWpmVFNRUkdMZUI3blhNazdWdlJ5c2hMN25lVDlCY1YyOXhieEJOVmVQS0t5SVFWWDVMMG5ZUzJaRlRoY1lQRElsaTJVOERIcXNQa0hlclM1Wmg5WmhtdjFxaEV4OTIxNCszSWRxUFBLOXQ4WitKUXpCTWxQVS9TWnlwZy9Wem85NXZuUTgvWjBET2lqMHQ2a0NTSHhZeGh1WVVrMy92Y3JvZkdlTHpzZ090TGVxaDcwMVg2T0hwRkNmeUp0dVVDU1FkS3VqQmEwWVRLWnowem5sQ1hOOTdVU0tCZFRlTjkzWHhmTTJhOFhrMWh5clFTNlBxZFNhdEtGNngwL2VhN2xYYzJrOERkcExhQ0JlVmVXWjdwRFRVWm84L1pEcWg5ZUdJZlBpanBVRW1iQ0dtdEhhdTFPV2Jhak1VU0dTZGZWWFRzdXdtQXpIMWNlNzh4Wkw4ZDd1dUErOE1xTi9yZE11SG1lWlhsWjhWc2RVYkhlOG1hVFg2b2VVYjBVa2x2aytUblBtMisyN2g4TTRuQmJab3c3TjhwLzZ5YnlLbW1YZk5saHI0R1JOczc5Zkkxd2FhelBrY243YXExaTk0clRPSGNWR3RUT3didzlpTDNBNUdnMWRxK3JpdTN6ZnQ1WGQrSC9ydkhEbThvRXhTczJ2YVhKZjEyZVQ3ZTV2b3pYOWMxeXJVcittenF2cVd0R1VhUjQvNXZKTjFiMHJjeUdoS3NvOHRFQnc0bDk3UHZVMGYwTEM5NlRaamllTjI3M0hrbm5nRFN2NFdwV1Y0aTZmRXR4NEkxOVZNR0FRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBb0tVQUFkY3RvVmdOQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJOSUVzbDRlbStvUGNkTWdxUWlCQ1FwRWY0RHZMdlBabitDTzM4RW1aeHpyWm12ejRuMGJYbjhuNkhBTnQ4c3ZjOXkwVGFIRWRVNlQ5R0JKUXdVM0pEYWRxaEJBQUlFZkMwUmVvSjVuekhyNStEb2xrTzJnNUgza29KcTdTL3BhY3IxVXR6MENCRnh2ejc2a0p3aE1VY0FoYlNkTHVuOWw0eDhpNmFRMVpYMk5kZERSeHlxM3NhNVlKQ1RDZFo5Yjd1MHVXcmNoL281QVFNQWhJTTh2enhCcXF2bElDVVQ3WWtYaDZMaTdkcndkMlc3MGVlVWRTbkQvNVZwNk9UejFpWkxlM3pKNHBjOHc1NVpOL3ZGcXgwaDZnYVNMdXhaTVd0L0JkWThyUWQ5ZFF0dmJiTjdIZ1VPODM3emxRU3Fab2EvSFNYckdsbnZOSHp2Ulo4YiszRGhZOWgvYkhKQmJzczdCa254K3JsMGlnWFkxMnlUZ3VrYXRXNW1zNzB4V2JkWG51Yjh1azRoMmE5M3l0VGMxaHZlOWpZTzZiNWJWa1hJLzhvQW1CTzRMaVhXMnFhcDJyTmJtbU1uNi9VcWJmbXpET3RHeDd5WU1NdmR4N2YzR2tQMitWZm1zWHJWeW8yZVdNVWRrek43SCtXZStPOUVKZ09icjhyTW1oNE1lMytNa0ZXNnZ4M0Z2cXR3bkZHc3Y0SHMraDVRNlpMVm0yVlE0WnZSZVlRcm5wcHI5NFRLMVl3Q1hqZHdQUkovaDF2WjNWYmx0M3M5OWVFWHIzRS9TMmMwejBpc3VxY2kvZzNJdzhsY3JOK1N5TDY4c095dm1iZDlKMGo4SDY1a1ZqeHozdnRiZG85eC9KRFVuVk0yTm00blYzbE4rSzdlc0lrK1E4VFJKRHJrZTB4SzlKa3h4dkQ3emoweHdPK1YraituNG95MElJSUFBQWdnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2dnZ0VCWWdJRHJNQ0VWSUlBQUFnZ2dnQUFDQ0NDQUFBSUlJSUFBQWdnZ2dFQkhnYXlYeC9oQmFrZDRWa2RnQkFMUkgrQzdDM3oyUjdBamFjSmFnWXhqM1J0cDgrTDkyc1lzV09HNmt2Nnd2R3lWSGVhenFEMC9sSFEvU1crb2FTeGxFRUFBZ1pFSVJGNmdudTlDNXN2SFY1RjBlaE5Xa1JseUhYblpleVM3aW1iMExFREFkYy9BVkk4QUFpc0ZmQjA5UTFMTmZjeGJKRG1JYlZWQWswT05YaUhwaUxJZEI4aCtNbkdmUkVOMi9Femt3QkpxbTlnc3FrSmdvY0JoelFSWnJ3dll0QW1VWDFSOWROeGRPOTZPYkRmNnZQSTVrcDVhWWYwbFNVOXBRaXRQa2ZUdEJlV3ZYSUtjSDFOUmQ1OUZQaTdwRVpMZVBXQ3c4V1hLTmVCRVNYYkpYajVUUXZFK2tGM3hTT3VMWEkvbnUvVGxFb1ovd1VqN21kMnM2RFBqNkxrbXV6OUQxQmMxRy9vWng0MGsvYTJrWHhnQ1owZTMwZGQzSmpOTzd6dUhZdTZmNlB0MVNZZElPait4emk1VjNWNlN3MnByZzI0WGJjdUIzVU9IWE5lTzFkb2NNMW0vWCtteVg2YTg3aFN2UjVuN3VQWitZOGg5Zm13enp2YkVNcldMSjIzeFBVYnQ0bmRWWDF3bWxxbXRZMVU1aDBRZkplbXp5WlgzT1JtT20rb3hyNS9wWEpqY2JxcTd0SUFuU0hsNzViUERUZDZmUk1lOVV6ZzMxUjZydFdNQWJ5OXlQeEFKK3EzdDY3cHkyN3lmMS9WOUUzLzM5ZXhaa3A2K1orTU9RL1p6TGQ4MytMZFFOVXViOE9VMjlmNU5DZlQvVnB1Vlc2d1RQZTQ5VHZ4OVNXOXNydFYrYmxucjA2S3ByVlpaOXAyMm45LzVPNkFQdDZwbCtKV2kxNFFwanRkbnl0Rng1S3ZMYnlHL1AveHVZNHNJSUlBQUFnZ2dnQUFDQ0NDQUFBSUlJSUFBQWdnZ2dBQUM4dzk3MFVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCSVlVeUhwNWJNby94QjNTbTIwaE1DYUI2QS93M1JjKysyUGFvN1JsbVVER3NlNjYyN3g0SDlrTDEyZ0sreVhuSVlLTy9JTFFQU1Y5SmRKZ3lpS0FBQUliRklpOFFEM2Y3T3lYajdOZWdKMjFrYkhXQmcreWlXeWFnT3VKN0NpYWljQVdDbHhUMHRtU2JsblJ0N1lCTll0Q2NGNWE3cHN5N21VZVdBS0QvWkoremVJQTNPY2xCRU5jU1pMRFhoM0d3WUxBTW9Gck5jR3o1elRCWmplckpIcC9DWE84cUdQNTZMaTdkcndkMlc1a0RCMTFOdS9lQUxxK3c1dzc3dEtscTN2Q2dzZjJFRXczdjBHZmJ4M3NlWUtrMjJVMWZFODlaMGs2dkFsUCtVSlA5WSt4Mm1qWXpIeWZkaWw0SnZyTU9IS3VHZU54MUtaTlViTklvRjJiOXUxZEp4b0dWclBOWFN2VDUzY21mWVJiLzZBRVFYdUN1azB1dms2OU5ya0JRNGRjMTQ3VjJod3pXYjlmU1NZZWJYVlR2QjVsN3VQYSs0MmhkbWowL3VJalpRS1NMd1lhN0VrQzNpWHBjb0U2RmhYMU9mVUprdnljNXBMa3V1ZXI4MzJEejl1ZU1EcDc4UVRVeDJkWFNuMC9Gb2hPTFBjU1NZOVBlTzVXczB1aTQ5NnhuNXRxVEdabGFzY0FMaCs1SHhqajJINmI5M1BrR09tejdON3ZKUHdzNjlIQlowRFJjOVY4ZjU4cjZXbUpBSDBlOXc2OC9vNmtxMHZ5OXhQemk1OE4vVjVpUDJaVitUZHhiNXQ3SnVqdlE0NHM0ZVI5amlXaVhZbGVFNlk0WHA4M3UxVXp3YnZ2TjJzbWFacDYzNlBIRHVVUlFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBSUZSQ05TK0tER0t4dE1JQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVKaWtRTmJMWS93WWRaSzduMGJ2dUVEMEIvam00N08vNHdmUlJMcWZjYXk3cTIxZXZNOGd1WVdrMS9RWTlETnI0Nk1rblpqUllPcEFBQUVFTmlBUWVZRjZ2cmw5dkh6c3lRcU9TVEpockpVRXVjWFZFSEM5eFR1WHJpRXdZZ0gvenZGWmtwNWUyY1kyOXlKN3d3N21OL1U5U2NjMUw5VC9TU0FVT2hMUTdiYjRoWDdmYTNZTkM1N3Z4M3pvcmNPSDd5UHBXNVdtRk5zTmdjZzQ4NGVTN2lYcDdSMnBvdVB1MnZGMlpMdVJNZlJoSmZpK0k5T1BWMThVUU9kejVwTW5FcHptODZ2UDdRNmd2cmdXWVVrNVArL3llZHVURi9TMXZGRFNNM3BvZTEvdHphdzNlbDJidGVXN2t1NVdybk9aN1J0alhkRm54cEZ6elJnOTJyUXBhaFlKdEd2VHZyM3JaSVNCUFYrU0o0dGtXU3p3bVdZaVRZOWpzNWMrd3EzZFJ0OUQrRHJoY2RFbWw1K1I5REpKRDA5dXhBY2xIZHJ6WkJXekp0ZU8xZHA4ejViMSs1VmszdEZXTjhYclVlWStycjNmR0dxSFJ1OHZudGswMVBlQnRVdG1hT2Q4Rzc0dTZmNGxPTHUyYlYzS1hVZVNRMHh2MjZWUWkzVS8zMHplZHVkbWdweVB0VmlYVmJvTExKcTRybTB0UHNZY3p2NVBiUXNrcnhjZDk0NzkzQlRocWgwRGVKdVIrNEdNc1gyazM0dktidk4renJiS3JNL3VyNVQwK3duQnlKblA3UHc4NVlCbWdzSHpFanU3cWVQZUUvS2NuTmlQK2FyOEhjaXBrbDVld3NDbk1PbG45Sm93eGZINi9EN3o1OFRQaW8rcVBDWjg3M3YwQ083REs1dFBNUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQVlQb0NCRnhQZngvU0F3UVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCS1lta1BYeTJOUi9pRHUxL1VaN0VjZ1FpUDRBMzIzZ3M1K3hKNmlqYjRHTVk5MXRiUFBpZlZaZi9NS3hBK09lbEZYaGdub3VrSFNncEF0NzNBWlZJNEFBQW4wSlJGNmdubTlUSHk4Zlo3NXN5bGlycnlOb2Urb2w0SHA3OWlVOVFXQktBdnMxQVVCblM3cGlSYVBmSXVrQkxjSkgyNXpmSEg3dytCSkcyeVdJTlJyUTdaQ2RRNXF3NFBNcit1OGkzdjVkUzZqZHplYnFjSjlmd0l2K2xhcTdVZXhXSlhUMnFwWGRQVVhTUTVvQTQrOTNLQjhkZDllT3R5UGJyUjFEWDFiU2F5VTVoSzUyV1JaQTEwZVFwVU5GLzF6U1V5dlB4NnY2K0NWSmowc0lDdkkyaGdpMjl2WGd3YzFrY1grOTQrZlFTSURjL1BGd1pnbEk3WEp0cmYzTWJMSmM5Smx4N2JsbWszMk9ianRxRmdtMHEybTd3OXJmVWNaZU5lVmR4cE5EdksyMk1PV3FCUG9LTVQxTDBuMkRFOVJVZFdoSm9hdElPcjBaMngyVVdXa1RPT3Z2ZmY1elFsanJ0U1hkWVVYYkhsdUNSN3MyM3hNRi9lbUNRbDl1SmxoNGJ4bW5adjErcFd2YnBycitGSzlIbWZ1NDluNWppUDN0NzNvZHl1em5CelZMUnNDdlF5UmZIN3dXN20xNzlKbElqWVhMWEYvU081dkF6WnZVVnJDazNGZ21QMGp1MXNhcmk5NWZ2MXJTa1IyZlgyUjJPanJ1SGZPNUtlb1VlVjRUdVIvSS9PNDFhakFydjgzN09jdW9qM284YWVUUGx0OHJSdXYzL1lIRGx2ZUpWdFE4Ny84YlNmZE9uc0J5RThlOW53WGRwY2VKbnZ5TTFQZENIdjlQWllsZUU2WTRYdCs3YjN4dmVJNmt5MVhzdEl3eGJjVm1LWUlBQWdnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2dnZ0FBQ0NDQXdFeURnbW1NQkFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCSVlXeUhwNWJCdCtpRHUwUGR0RFlOTUMwUi9ndS8xODl1djNvZ1BCcnR1eXVBTnIzdDl5WFZiN2FZR01ZOTIxRGhsdzdlMzV1OFA3TlMvcW5pekpML24wc1R4SWtnT3VXQkJBQUlHcENVUmVvSjd2YXg4dkgrOWJYbUoxa0Z0MFlhd1ZGZHorOG0wQ1lOY3BjSnl0RStMdkNDQXdMeEFKWW5Ob3dRRWxkRzJWNmkzTHkvSytwclpaSEk3eTVEakhnajRBQUNBQVNVUkJWQklRZDBtTEFwR0FibGNmQ2FKMllKOEQzUTVkME00ZmxQLytwaFo5WUpYZEZJZ0dSTldFU1VUSDNiWGo3Y2gyYThjMjBRRHg3NVp6M0hsTERzL0krWE52bFE3cFBMd0ovUHBDRXdicEFOZlRKTlVHbjYvNk5IMWMwaE1sZVhLQ051ZlhXVjErcG5WN1NjK1c1TkRsUGhkYkhDSHBzMzF1WkNKMSt4eHhRZ21DaXpUNWgrV1o1QnNpbFV5Z2JQU1pjZTI1WmdJMFM1c1lOWXNFMnRXNFJkdTdpL3U0eGptempNTkxQVm1CN3djeWw0K1c2OUduTXl0TnFLdXZzRlovcCtneDJJY0NiWXgrZnJwdWVqNFEwT09JcTFlR3AzWGRidHYxSDkyRXJENjk3Y3B6Ni8xTENjcnZjNkpaMzBkK1ZkTDNLdHEzcVNKWnYxRnkrMnZ2TjRib2V5UUkwTzJybWFCb3ZsK1p6ck42ZmJ4NTBqSUg5RzlpdVVFVHJ1L3gvNDBTTi82NUV0ai95Y1E2cVVxSzNGK3Z1N2Nld2pkNkhSenp1U25xRjNsZUU3a2YyRVRRN3pxcmJkN1A2L3ErRFgvUERMZTJoeWNWUENrWlpoUEgvWWRMd1BXVUFxaVQyWCtxdXVnMVlSdWVMZmczaS83dDR2MHJzWmROQ2xsWkhjVVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRXVnZ1FjTjFGaTNVUlFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFJRU1nNjZXbWJmZ2hib1luZFNBd0pZSG9EL0RkVno3NzlYdTh5NHRmUXdjcjEvZHFuQ1V6am5YM2JGUDdvYytnb2pOTGdOckY0OXgxdEFvQkJCQllLdERsT3JxS3NZK1hqN1B1c2R6dXlNdmVIRDY3SVVEQTlXN3NaM3FKd0ZnRS9QdEdCMGtmWDltZ1IwazZjVTFadnlqL2loSlcyblV6L3lqcFBrMlloQU5abHkyK1RqdXdzelp3OVoxbEc5L3EyTGdyU3pwTzBsR1M5bGxSZHF6aGV4Mjd5K285Q3R5akNRNSthNWtVcTJZelBnNmZJY2tCdG0yVzZMaTdkcndkMlc3dDg4cGpHNWRqMnFBc1dhZk5NNWFNSUV1MzhRVk4yUDc4czV5Ymx4RHF6S0MzK1c3NnZzVGpUZ2ZaclFwUDlEbjhQMG42b3lhUTcyWUJ5elpGM1k0blNYcFp4L0R0Tm5WUGVaMGJTM3FQcEY4TWR1SUR6WVNMOTVUMGxXQTlZeTRlZldaY2U2NFpzOG02dGtYTmhuN0dFVzN2THU3amRjZEFuMy92NjFybUNUNE9hVUtHeisrejhZRzZQU0dFeHhEWkUxVzQzdzRmZTFkbDI2S2ZuNjZiblErNDdscDJpUFZybjc4TmZkNGJ3aUpqRzVuUHoydnZOekw2c2FvT1B6L3h4Q04rQmxDeitIN3RYcExlWGxPNGxJbmVPeTdhZEdUQ3IwQlhMbFUwTzVEVWxSOHQ2YVZaRGFTZWZ4T0kzRiszdWJmdW16bDZIUnpydVNuRExmSzhKbkpkM0VUUTd6cXZiZDdQNi9vKzViLzdHbjIvRXRicjUxZ1p5MGZLcEhkZnpLaHNyZzVQbHZrK1NkZE9ybmRWZFg3MmQxZ3p1Y3YzQjl6bTJEY1Z2U1pzeTdPRnlOaXlyOC9JMkk4ZDJvY0FBZ2dnZ0FBQ0NDQ0FBQUlJSUlBQUFnZ2dnQUFDQ0l4Q2dJRHJVZXdHR29FQUFnZ2dnQUFDQ0NDQUFBSUlJSUFBQWdnZ2dNQk9DV1M5UExZdFA4VHR1dlA5UTNjSEJmaEZpanRJY2tERmJTWDV2LzlDK2ZkOG5kK1c5TlVTQ3Z6KzVzWFNDOG9MdFIrUzVCZE50M1h4OCsrZmwzVHI4czh0SmUwbjZZcVNydDRFY2x4cFFjZS9KT2s3YzFhZmFzS0gvbGFTcmZ5M3RpRXNmWm42UldPL1NQQ3JwUy9YazNTYkpxem9zZ3ZDSTM0ZzZmT1MvbFhTQjVzWEFmeWpiZmZsN3pZY0VCSDlBYjV0ZC9Xem4zRmNkWG54YTFQQnlobjlIRU1kR2NlNis3SEovZERIeTdydTAzZkxpMWJualdCSFhhTmNUKzlZenEwK3AzcWNjclU5YmZ0YUUyRGtNTG4vS2Vudm0zQUt0OTNYVko5bk4zMXRHQUVqVFVnVXVMd2tCMFBOcnZXM2tQUWZsbHpydlZtSGEzMmhiTi9IcC8veHRkN0g1OGZLdUNheGVhR3FQRGJ6R05iak1ZOWgvWGx6M3hhTnkyWmpNbi9lL3R0SXhqRHVmSmZyNkNxc1BsNCt6cnJIY3J2Zlc0SXN2aG5hNDhNWDl2M1FEU1I1M1A5TDVSN0FZM3QvSG54TWJXcE03ekc4ajNYZnMvbmU1RmRLKy94NTkvM0szc1hYRnIvQTY4L3poeVg5MS9LNTlyM0pxbUMvSWNWckEzYm0yOGlZL2ljYWpFZTZIYjJ6YTZVRExCMm82ZXVtbjIzNG11RnI0cERQT256ZXVXWTU3emhJMkdFWi91eHU4N09XYm5zclorMUkrTnBwa2g3YzR2enBhL01aYTBLZ2wvV216VGFlMk54bnZMQ1N3OWVGTzVleFhkc3FMdE5jUXg1UWdyMTliTFpaM2xMS01CRlJHNjNkVzhmM3lPOG80NW1hM245TzB2NlNQdG15Y0hUY1hUdmVqbXkzWm14emxSSXU2WHVrMnVWQlRhanpLUzBLMTU1THYxSE9vMys5NVBtSHY0ODRTZEpCTGRwUXU0ckg4czlwbm91L3Fwbnd3TjkxekJhUG9SN1duT09mSnFudHVhNjJEUzduOE9YRHk3VStVcysybG4xTUNWU005cS9OeEJUUmJXeXlmUFNaY2MyNVpwUDl6ZGgyMUN3U2FGZlQva2UybUZ4bFZiMitwL0d6NmsvVWJKd3luUVQ4ZlBKTlRiam92cDFLclYvWjM4OTZMTzZRdGpFdmZYMy80MmRYdnlmcHRSWGZuVVEvNzEyOUNianVLamJ0OVRPZm45ZmViL1F0ZU1ObVhINXVJSkRTejlFZHpuOVJaVVA5bXhWLzloMVFtYlcwZWVhU3RhMVY5Ymh2RGc4L01uRmpVZS9FcG14RlZkZHFmbjl3VG1EU283YjMxbjFpUmErRFl6MDNaWmhGbnRkRTdnY0l1TTdZZTlUaFovVitadkxIbGQ4L0xCUHM2L2xKOURsd3pSNzNzNzNuMWhUYzRqTFJhOEsyUEQrS0hvOWp1TDV2OFdGSzF4QkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBZ2VVQ0JGeHpkQ0NBQUFJSUlJQUFBZ2dnZ0FBQ0NDQ0FBQUlJSUlEQTBBSlpMNDl0eXc5eDEvbjdPYTVEclAweTdPK1U0S1IxWmRyKzNZRVFEckI1VFhuWnh3RndVMTc4MHRLOVMrakdYWkpmRFBBTHllOHFRUnB2M1JPbTBZZVpQeWNPd2J0cmVaSFFJWkFPejhwWVp2dmRMK0dkM3lMb0tXT2JzenFpUDhCM1BidnkyYzkwbjlYVjVjV3ZUUVlyOTlIM29ldk1PTmJkNWszdkJ3ZjMrR1hrN09XWlRZWEhabGZhb2o1ZlUyL2VUUHp3V0VrUGxPVFEwY2ppc0lZM1NQb0xTZTlPUEo4NjVNb2hkajhiYVZ3cCsrVVNWdXV3MUw0WDJ6cFlOcm80Vk5jdklYdVNoa1dMWHlTL1UwTDR5R2RLOEcyMHZaSHl2cmI3NVZpL1dIVy9Fbm9icVc5djJYOHBZV092YnNaSEg2MElGWW0yeFM5c09xek5uN243Skl4bEhCajZWODNZK1A4dUUzaGNFbTFneC9KZHJxT3JxdTdqSmZPc2V5eTMyL2NHdnhzNFhxNVFKakpZTktGTUYvSTJuMUYvaHU3UlRKN3dWRW0vMGFMeVAwOE9vVmkwU1lmdkhpRHBpSEp2RW5XWTM0WW5LL0xZNEZSSm53N3NveFpVSzFjWlc4QzFqd05mTi9kT1VCSHBwNjlCN3drRXVxemE5bFRHSSt2OFBFR0J3MHFqOTZrK3J2OTV6Y2I4T2JwL00zSERIMHE2NmJxR1NYcGNNNEhDbjdaWXIyWVY3eitIaEhvczYvUFBvc1ZCbkE0elBsR1NnMEZaNmdVOExuNXpPZGE2MXVKUVFBZXVlb0tBdll1UFd4L0QrNVFKYnY2eU1yalhZMjJmODMwY0wxdCtyVGxIblYxNTc5RTFITS9IcDU4anZhSzVqL3Zscm1DU2ZINS93UWF2THhWTnBzaUFBajd2SFJQWTN0SE5QZHhMVzVhUGpydHJ4OXVSN2RZOHIvUjF4TStaYTMvSDdRa05mUTc2WWt2WHJrR1daNVV4N1dkYlhLZWZMK25STGR0UnU1clBpUTdUOXZjWnZsOVpkaDJ1clg5Wk9ULzdjZERPbnlRKzk4bHU0eGpxeXdxNDducGNqNkh2WGRvUWZXWmNjNjdwMHI0eHJoczFpd1RhMVhoRTc1ZUhibTlOSDZkZXh0ZGRIMWV2SzVNaVovYW42L2c5Yzl0ZDY3TERreVVkMzdWZ3kvWC9yMUozbDhuYW9wLzNsazM3OFdwakQ3aXVEY3ozNURKK1RycHVETmZWYStyclp6NC9yNzNmNk5zd09oN3JjcysycUMrM0tnSGIwZTllWjNYWFRQalZwL0YxeS9NZFQ3YVhzWGdDNWJ1WDN5QmwxTGZyZFRoWTNkZjJtc1hmdFhpQ0VaOC9ON2xFcjROalBUZGxtRWFlMTBURzF3UmNaK3k5M2E3REU3TDV0NW4rdlcvbTRrblk3aW5wSzVtVnp0WGw3OWM4TGhocXVWZnptNUszRGJXeGlXd25lazNZcHVkSGtlOGx6cFIwYVBQZEZ4TzdUdVRBcDVrSUlJQUFBZ2dnZ0FBQ0NDQ0FBQUlJSUlBQUFnZ2dzRDBDdFQrTTNoNEJlb0lBQWdnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2dnZ0FBQ1F3dGt2VHkyVFQvRVhiUVByaUhwWVpLZUpPbm5COXBKYjVmMDdCTDJPSFJnWUcwWHV3WmQxVzVudnB4ZlVIWlExWEdTL0dKZHh1SUFTQWRhLzNaUEFaZkwydWdmY0QrM2hIOE5FYndWL1FHKys3SHRuLzJNNDJsWkhWMWUvTnAwc0hLZkRrUFVuWEdzdTUyYjNnOE9mbnRaODBMbnc1UFJoZzRPY05pcUE0U2YxK00xMWVkVHY1em1VS2ZvaTJRTzh2T0xOZzRHamk1RHZaVHIwT2xUSkRrd0s3cXNDOWZOR2t0dTZ2TTFDeloxZ01pREU0SkIyM283Sk1yQm9BNEQ2M3VjNTVjMUhXcnQwR0YvL3ZwWUhCNzZuREw1aUNmdkdHTHBjaDFkMVo0K1hqTGZ0d20wOUxuMUZna1FudHpnNUVBOXY5aUV6YjJ2Q2YrL1hxQ09kZGRBajUwOUFaREg1RDdlMmk1OWZlNW5ZZTRPN3hrcWFHOFdvT3NBKytoMXA2M2ZiTDFvWUpmcnlSelRlOUlLaDFkay9nYks1eStQR3h3MGtyVk1iVHl5cnQ5WjRRNitOaTBMMUxLWlg2TDN2WGVYSU8xVmRhN3IxNnEvT3hEWjV4MkhiYmRaZkkvOWlCSktuM2tzdGRuMk5xemp6L1N6SkQyOXNqT3pJTFV1eDA3WFRUMnFIQlBMeW5sY2Yzb0oydTVhdDlmMzhlYlBRSmZKYWlMblJKK2JEeHpCSkRBMVZwVHBYeUFhVnZiK01vbmZSUzJhR2gxMzE0NjNJOXZ0T3JieFBiUW5GSE1JViszU2RmS3d0dWRWUC90K2lxUVhkd2gwZHQwUEtmZG5mWjUzYTYxcXk1MVI3bTBKaUZ3dDZER2JyUTZwaGQ1VHJxK3hYRkx6UXRWRW54bDNQZGVFR2p1U3dsR3pTS0JkRFVIMGZubm85dGIwY2NwbC9QekdBYkIvbkR4SjhzeGthaFBHOVBYOXo4ekRFMU1jMldIUzZPam52ZXV4T2ZUM1ZGM2JWK3V4aTllS05yWlozeXQ1VzdYM0cyM2FXYnRPOUh0RkIvdDZJcnRQMWphZ0tSY0pIMXkwMlRHT0NhTWg0bnY3NmUrVi9WMGFTMHdnK2gyMWZ3dmg1MitiZm41YmU5NlA2VzEvNmNqNCtnYk5KS2lQNy9CZDkyM0t4TlpkVlQySm9yKy9iek14aU0vVGZpYk5jbWtCL3liR3YxTzVjR1F3dnlmSmt5OTdvczJzeGVjcVQ1eitocXdLRjlRVG5aU3ZTOU8rV2lhM1h6Y1JicGM2KzFnMzZ6dlJQdG8yaGpyN3ZBZUpmQy94OVRMRy9hY3hJTkVHQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQmdsd1F5WCs3YUpUZjZpZ0FDQ0NDQUFBSUlJSUFBQWdnZ2dBQUNDQ0NBQUFMMUFsa3ZqL1g1dzlqNjNzVkwzckNFTzdVTlRJcHY4YWRyY0FDaVg2UTZlNEFBeE5yMk84anVhZVZGbzc2Q0U5ZTFMZnBTM2FZQ0xoZjF5eS9LT0RUS0w5RTVwTFd2SmVPbHJHMzk3UGRsUGw5dmw2Q2V2Z0lnaCtqbkdMYVJjYXk3SDJQWUQ5ZVI5TTRtdlBobWliQkR2YVEwQzVKMEtGT1hBTlJJVjdQT3A5RXdsRmtmL0lMYjNadVh3dDRWNlZTTHNqZVM5TGROQ044dnRGaDMxU3B1Nzcwa2VkS05aVXZXV0hMb3o1ZXYrdzRJZUtHazJ3V2Rhb3RIWHVKdHMwMS96bjYvakNtR0NqVnplS2lEVWs0ZFlOemE1VHE2eXF1UEFJeWJTM3B2TTJtSncxY2pTMGFRUmQ4QjErN2pLeVhkcDZLajJaOTdIK2NPMnZaMVpxaEppZloyMndHRURtQnd3T0ZRUWRjWjE2aXNNYjBEQnM1cXhreStEbVV0cnM4dndyY0o0R3l6elNtUFIxYjFMK3RsN21YMzFkNjNwNVdKb05vNHo2OFR2VmRmdEwzck45ZnZ2MjdhZE11dWpTbWZUMC9LMENhZ29xTDZyUzN5cTAwdzlMbVNmbTZrUGZROWtxOUYzMXJTUG8vOVBLSEpzZ0QzZGQycVBSZEZRK3I4VFBCZ1NZUzVydHREdS9mM2FDQnptM3U5bVdwMDNGMDczbzVzdCt2WUpoTE1ZYWZhY0k1MXdmcytCemdvL3g4ckQzSGZsemhnSi9NWlVtVlRRc1UrWGlhcGVQY0lRczVDSFJtb2NQUjQzdHZNalB2U2dicmVlVFBSWjhaZHp6V2RHempDQWxHenZwK0Y3U1Y3VlptOHVKYlN6M2I4YlBTYnRSVlFicW1BNzgzOS9PYVJQUm05cUV3UU1iWDd2blZqZ3lqWEI4c2tVWjlxVVZIMDg5NWlFNWRhaFlEcnJtTFRYai9yZXlVcjFONXY5Q2tZRGFLTUJ2eEdBN2IzMmx4UUp1QWFXMURwdFNTZGszaS84MkZKZDJrbVgzQzRMVXU5UU9UN3NhRytSMi9UdTZHdmcyM2F0QTNyREhVL0VBbGE3ekltNFRoWmZGUU90Wis3ZmliOEhjRkRKWG15NHF5UWEwOFc3NGxWKzd6dnlCdzNyVFB6L1lKL3ovUzFkU3R1K085WjM0bHV1QnU5YmI3UDUxWFJpZlg2K002NE4wZ3FSZ0FCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRXRrV0FnT3R0MlpQMEF3RUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFnZWtJWlAwSXVzOGZ4bTVDMDRHQURqeDZ6Q1kydm1TYkg1QjBSQlBhNWhlcnhyTDRSOHRIU3pxdThSb3FPSEZaMzJ0L0FIMFpTWDdKMEgyNDlWaGdTenMrVkVKTS9tZFA3Y3A0MldiYlB2czlVUytzdGt0UVQzWUE1SkQ5SE1PMk1vNTE5Mk1zKytGd1NhOU5obldkSnlmWE9WL2RyMGo2cThTWGpMczIxV0ZJRDVQa0Z4SnJsc3h3b09lV1NTRnEydEcyakYvb2YyUGJsVmVzMStZRnRxeXg1SkNmcjF0SThzdUdtd3EybnBIMzlYS25mM2R3TjBsL0tXbmZoT09ncGdxUFczMWU2V3NNNHpaMXVZNnU2a01mQVJnUGxuUlNEZHllTXRFZ0MxZlhaOEIxSkdBMjg3cnFZLzZ1a2w3UlhCOS9PY0U5bzRxc0NSYmF0R1VzQWRlK0gvUllJbk55cUkrV1lOZFB0NEZvc2M3VXh5T3J1cGoxTXZlaSsrcmJTbnBiNEpwU2U2KytyTDhaZ1YvKzNMeUFrTXdXbjVxZnJISTFTZStvRERudnRLR0tsUjBzZTBnVFBuaitpckw3bFluanJ0aFQvYXVxalU1UzVJa2tqdW81SktPQ2hTSWpFSWlHcHAwaTZTSE5oRGpmWDlPWDZMaTdkcndkMlc3WDU1WFI4VlJieTBYVUhsTTdwUDhtZS81NFRMbFdSU2MvOVBQN1p6VVRBRHhwQk1kczF5WU1PYWJ1MnJZeHIzOXNNOGJ4OFpPNStMdVRaMnpoMkNuNnpManJ1U1p6bjJ5cXJxaFpYOC9DbG5sRXJpV3VzMHU0M2FiMnlSUzM2MGtaL2R6c29KNGFQL1h4YzhZOTd5cGFUMURvWjVlZU5NcEJvc3VXNk9lOTYrNGQrK2V0MXFQdHRjSmpOb2YxZm1hQWlTTzc3cHMrMXMvNlhzbHRxNzNmNktOZnJqTTZHZEYzbTlEbUE1cm5IT2NGR25pSEV2eDh1VUFkODBYOWU2Q1hKdFdWWFUzbTJOZjN4djZld1JOY3NOUUxlUEtLRXl1TGp5bGt2UGE4WDluMW5TazIxUDNBdGN0azRIN20wblhwTWliaE9GbXNPOVIrN3JwdnZiNi9VL1preWY0ZFJUVGsraFBsbnFiTjVERTFiWjB2YzN0SlowcTZhclNpTmVYdDR0OTRyTHBQNkxrSnJhclArazYwMWNZbXVGTGJlNURhcmtXdTlWM09zYlh0b3h3Q0NDQ0FBQUlJSUlBQUFnZ2dnQUFDQ0NDQUFBSUlJSURBSGdFQ3Jqa2tFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUdCb2dheVh4L3IrWWV4UUxyTWZzanNjelNIWFkxeXl3aTJpZlhNbzVPdEdGQ0pYRzVyMUJFa3ZpbUwwV042ZkxiOWM0UmVOczVlTWwyMjI1Yk9mYmR1bXZpN2hDa01HdjdacCs5VFd5VGpXM2VleDdJZXNhL2Y4Zm55MXBOL3JZY2M2N1BMeGt2NG80UVd4YVBOK0lNbm5mTCtFZlVuSHlod3VjRVlKenV0WTlLZFdmMytwNTZKb1JTdksvMm1aZ0NLNmlXYzJGZmpsOEZWTDF2RTR4T2RyYk1GZWZiemNlU1ZKejVmMDZPak9UeWp2TWNLREpMMjVwNWNndTF4SFYzVW5Pd0FqNjN6eDVSSmtjVUZ3WC9RVmNMMHNpSzlMY3pNKzl3NUYrak5KaDNiWjhJRHJmcVJNV1BPUFBXNHpHc2pvcG1XTTZiTW40R2dUV051V2RWdkdJNnY2bS9VeTk5Nzc2b3lYNW12djFSZjExODlzWGl6cGNXMTMvcEwxTW83NVlCTW1XZHdUd1QxMWhDMTNtNTYzWXJ3UnVXYjVIc0xQWkU0UDl2dGdTVzhQM0JNNWhEaGo4b3hnTnlnK01nR0hIenJZeEFIdU5ZdXZ0ZnRMK3FjMWhhUGo3dHJ4ZG1TN1hjN3pVVWNIdnR5cmZNWnI5b1BMZUQrOFM1SUQ2UG9hUDk1RmtwLzlqR1ZDbUhWV3A1Vm5PSjlkdHlKL3Y1UkE5SGhleHZuNVpxS0lPemNoUngvYk11L29NK011NTVwdG9ZdWE5ZkVzYkpWdDVGcmllcytTOUZ1U3ZyMHRPM0FFL2ZCM3l4NWJYN2VudHZoYTV5RFc2QVFSUFRXdmRiV1JlNWkyRzFuM2U0UG81NzF0TzJicmpUM296TWV1MitobnYxMld0b0c1djlvRUpKN2JUSERpNS9zZUYzcVNXMCtDOHNVdUc1dlF1bG5mSzduTHRmY2JmWEZGSjh6MVBaNmZkVWZPWXhuUGkyYytueXYzSzUvc0N5eFliOVI3NytZem4yTUd1emJKNHBjdjEzbmZJOWNzSjBoNmJFM0JIc29NZlIzc29RdWpySEtvKzRISXBIQmR4aVFjSjRzUHMwWDcrWjREZkpmclNYTjlIdm5PbXFNL0krUTY2M3VETGgvVSswbzZOZkFkUTV0dExic08zcUQ4N3F2cldMak5OdWZYOFcrcGZFKzNic242VG5UZGRxYjY5NzZmVjkyOFRBaHk5UXFndnR0VzBTU0tJSUFBQWdnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2dnZ0FBQzJ5OUF3UFgyNzJONmlBQUNDQ0NBQUFJSUlJQUFBZ2dnZ0FBQ0NDQ0F3TmdFc2w0ZTI0WWZuL3FGUVlkZUhqRzJuYlNnUFg2cDJnRmlYOWhBV3gwTzVwZmlucjJCYmEvYVpPM0xacGt2K1BWRjB0ZUxFUmt2MjJ6RFo3K3YvYmF1M2k3aENoa0JrT3ZhczgxL3p6alc3VE9tL1hCWW1XUWdhNys5dHdReWZUT3JRa2wrbWVXVmt1NlRXR2RHVlg5ZVhyN3Erbkw0SXlXZG1OQ0F2cytiKzVhZ2hWc0UyOXEyblZsanliNC9YMzdKNmcyU2JoWjB5U3llL1JLdlh5eDBDTmh0TXh1WlVKZkhXcDVNcEd1dy9McE5kN21PcnFvck93RGpnZVg4SFAzOXgzR1NucEVRRHQ1SHdMVS85LzQ4T2F3enNrUS85d2RLK3F2bUhzN252VEV2M3l1VFNEaVl4Z0dJMlV2Ry9VemJjLzZ5dHQ5WTBuc2srWGpMV3A2VU5CSFJ0bzFIbHZsbXZjdzlmMTk5blJLbUZMMTIxdDZyTCtyclRjdXhkczJFQSsxbEpmaXNqODlsUXZOR1djWGRKTDFEVXZRYWw5bTVEMGh5T01aWGxsVHFaMWlleEs3MldWL1c5ZGhtejVMMDlNck9PNGpZMTcxL3FDeFBzZTBWaUk0RDJreHFGQjEzMTQ2M0k5dnRNcmFKaEI3NXlNcVl4TXJuaUtOS1lLSy9uK2o2dktMdEVlN3ZQendCbVlNL3g3cThUOUxEbXNrRlBqeldCbzY4WGRIamVWWDNzcTZKWXlLTVBqUHVjcTRaVTc4amJZbWFaVDhMVzlVWG4vUGUyQVRHSGhUb2NQUzVSV0RUVzFmME1wSWVXcDZ2ZTR6ZXgrSUpZWTdjb2tEeUlVS3V6NVAwMjgzOTBxY1c3SkRvNTczclB1NFNKdG0xN296MUk4OWQyb3lIL1QzYW9vbVZMaXlUci9wODlQY3RBaHN6K2pwRUhWbmZLN210Ylh5SDZOTnNHNTQwMWdIeXRZc25EVDJsdG5BekFWZzBZSGp2cHNmKy9DeTd2LzRjK2p0NGg5T3pkQmU0VWZPOTBkODIxM3RQVE5wMThUUGF1NWVRLzY1bCsxaC82T3RnSDMwWVk1MUQzUTlFSmdQdk1pYmhPRmw4bEMzYXo5Rm5tRzJPNXk3N0xocHk3ZjY4b0tmdmZWZjF0ZS92eHBlTnF5Smo0VGI3YnJaTzIzdndvZHJUcGUxaldyZnY1MVhSQ2Q4enZ6Y2VrenR0UVFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVSaXN3cHBjL1JvdEV3eEJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBZ1ZTRHI1YkcrZnhpYjJ1a0ZsVG00Nll3UkJnS3U2dmRueWd0N0grb2JaNjcrc1lhRHVZbTFQMzRlNGlXS2pGM1VSOGgxeHNzMlUvL3NaK3liMmpxNkJQVzBmWW1qdGkzYlhpN2pXTGZSbVBiRHRTU2RreGpXNndrVDdpanBFMGtIdzlpdnF3N2VkbmlVUTBmYkxwR1hjdmR1dzBFYkR0cnVZN21UcEhkTHVteXc4ak1sSGRvaVdDdHJMTm5YNTh2Zndmc2M4RHBKVnd5YVpCZlBmSW4zMXBMZUpPbTYyWTFNcXErUGx6eTdYRWRYZFNNekFPUDJrdnpadVdyUXpaUFozTGNKNDc4b1dJK0w5eEZ3L1VSSkwweG9XKzNuZmhZQStKSW1MSFNmaEhZTVZZV0QzcC9TOGRyVHBtMFo5ek9STWIyRHFVNldkUDgyalcyNVRzMTFlbEhWMnpnZVdVYVk5VEwzN0w3YTQ0Z1RTamhZeTkyMmRMWGFlL1ZGRldaTk9PSzZQMTNHdjUrTGRuQ0h5bWROcEpKRjlsMUpEdDArZDBtRnZsNDh1UW1NUGI1eWc1blhZemZoS3BMZUxHbi9rYlNuc2hrVUc1bkFyY3Bub0hiOCtaSG0yY0lCa3I2NG9sL1JjWGZ0ZUR1eTNiWmpHMS92UEFtSkE4eHFGNGRGTzVSNktvdnY0WDlYMGg4M0UxZzZiSFJNeTE4MGdYelBLeUdiWFo3WGpLa1BtMnlMcjNzMnJKM1VZVjNidjF6T0Z4ZXNXM0ZDZjQ4K00yNTdycGtReWRxbVJzMHluNFd0YTJ6R004dmE1eGJyMnJacmZ4OWlndWx0QzdlZUhTTkRQUFA5aHFSSFNEcDFUMEJmOVBQZTlUamZHMGpvaVl6OC9jUW1GazlnOHVvOUc0NDhkMmt6SG00YnhQbkJFbjdzRUY0LzE1anFwRjBaNStqWkxtcmpPOVJ4RlAzdXRzMzkyYnErK0htb0o0MjU5cm9WVy94OWJJSER5NXFjK2J6UTM1UC81cHA3NUJaME83dUtQNCtlWUtSbUdkdXoycUd2Z3pWbVV5d3p4UDFBOUJsMmw1QmtqcFBGUitFVUFxN2Q4dHFRNjZ6dk1Hcy93NzYvK2oxSmY5Qk03dmxMdFpVc0tMZnFHVWRrTE55bGlXM3Z3WWRxVDVlMmoybmRJWjVYUlg2ZjhOYnlXNWp2akFtTnRpQ0FBQUlJSUlBQUFnZ2dnQUFDQ0NDQUFBSUlJSUFBQXRzc1FNRDFOdTlkK29ZQUFnZ2dnQUFDQ0NDQUFBSUlJSUFBQWdnZ2dNQTRCYkplSGh2aWg3RjlDZDY4Q2JaK1N4TmM2dURLcVMxZmwzU0lwUE1IYVBqWXc4RnFRN01pUDdnZWdQMVNtL0FMZFFlVmtJK01iV2U4YkRQbHozNkdZYVNPTGtFOWJWL2lpTFJubTh0bUhPdjJHZHQrZUk2a3B5YnR1TzlMdW1zVEVQZmVoUHF1TCttdkpkMHlvYTQrcStqNjRsbEc4TldzUHc0ZmNJQ1czYk9Yck92YTRTV3dkRjM3c3NhU2ZYeSt4aDZDbS9VUzcyMGx2YTBKVmZNTHUyTmVza091dTF4SFY3bGtCV0JrM1ZOa2orK3pBNjU5YnZjRUN4bkhXODNuM21IS1QydkNXNDRaODhHK29tMWRyejF0dXBseDNvK002VDFwdzh2Yk5MVGxPbG1Cc3RzNkhsbkdtUFV5OSt5KyttQkpiMDhLa2ErOVYxL1UxMWRKZWxqTFkybmRhcEhqZmwzZDIvcDNqNjBjZk82SllzYXdlS0tEeDY4STlQSmtFUTVwcTVrTTRhT1MvRGx3dUU3bUVwME13L2QvRG4rZGFvaFpwaVYxL1VnZzR6NzFRU1VrYjVscGROeGRPOTZPYkxmdE9YNklnUEJOSHFzK2IvOThjNys0WHdrTmNWRGtOVGZab0E3Yi9wZHkzM0cySklkTWZrclN0enFVMzhWVmIxZ0M3elBDREpmNXJidjJUczA5K3N5NDdibG1haTZyMmhzMXkzb1cxc1kwNDVubGF4S2Z2N2RwODlqWCtXYkZ1ZmhYSlAxVjRrU2RpNHkyTmR4NjF0ZWhudjM2T1owbjduRGd0WmZvNTczcjhidzNURExqZVZmWE5zeldYL1RNTWpJQjZycnhjTTM1YXVyWG9KbytMOXVmNjN4cmo0T2FjdjdlejVPdDFpN1BiQW9lVzF1NGxQTkVZTzhvb1ozQnFwUVJ1QjF0UTV2eVdjOUZ2YTJMbTBtRTd5THBBMjAyekRvL0pkQTJySDhSWFovZm5kZnNxcUd2Z3pWdG5HS1pJZTRIb3VkQkFxN2pSOVpVQXE3ZFV6ODdlMmlaM0tUTjl3aFozMkhHbFg5VXd6V2FTVFY5SGJ4am1mUzZwbDcvTnVIdnk4VGIvZzJBcjRWN2w4eHI3YW8ydHYzdHdGRHRxZkVjUTVraDdoWHUxSXlaM2wyK24ramE1eStVWTlhL2cyWkJBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUUdFQ0FnT3NCa05rRUFnZ2dnQUFDQ0NDQUFBSUlJSUFBQWdnZ2dBQUNDRnhLSU92bHNTRitHTnZIcnNzS291dWpiVzNyekE3Qlc3VGRLWVNEemRsN0x3QUFJQUJKUkVGVTFZWm1iZklGMmJiN2VINjkweVE5dUFuMisxNU40VDFsTWw3S211cG5QNEV2WEVXWG9KNjJMM0dFRzdXbEZXUWM2NllaMjM2SXZEQ3lhRmM3QU80TndXUGdGMHFJM1A3QmVvWXEvaWhKSjNiWVdQVGw5Tm1tUGlmSlJwL3NzTzAycTE1QjBobGw4b3MyNnk5YnAwdjdzc2FTMlo4dmYvZitCRWt2akVEMFhEYmpKZDRwaldWL0lPa2V6Y3RxNzB4eTdYSWRYYlhKYUFER1pjcUxyejZYT0h3NXNuaGNmMzlKNzRwVXNxZHNac0QxRWNuQnBsMC85MU1QdDU3dG11eVE2NHo3bWRveGZXYmd1WDJ5SnZUWjl2SElvbE5FMXN2Y3ZxOTJFRW5HZUdMV3p0cDc5VVg5ekRyM3orcU9YZ01TVDllVHFjclg4cmNtQlNWRk9uMkJwQU1sWGJpa2traVFkSi9QMlR4R2ZiS2s0eXM3LzkxbVVpS0h0SnhiV1o1aTJ5a1EvVnllS2VuUUplRWxGb3VlZTJ2UHRaSHR0aDNiT0R3dU1uRktSZ0JkNWxGNVZVbTNMaE9ZZVZMTTJ5VGNvMlMyTDFxWG40ZDd2T2pBYS8vek1Va2ZsdlJsU2QrSlZyNEY1UjlUN3RmNjdJcXREMmp1VzMwZDNvWWwrc3k0N2JsbUc2eG1mWWlhWlR3TGErdVo5VHlrN2ZaMlliMHU5M1orWHVhSmNmeHNOdnE4YkpYdHEwc284NklRdG0zYUo1SDdtN1lPZXlmNWlYN2UyMjUzdHQ3WUE2NGo1NVFuU3ZyakZTQit4dS9KWjYvZUFlMkRrdTR1NldzZHlveHAxYXp2bGR5bjJ2dU5iSS9vOTNOK0Z1SHZEZjhwMkRCL0wvYWlZQjJ6NG4vWmpMazlHZTdZSjlueVpKdytoOXdpcWQ4WjM1Y25OV1ZTMVZ5dGhLdDdZb2FheFJOcC9ubE53WjdLREgwZDdLa2JvNnQyaVB1QlNOQzZ3UWk0amg4MlV3cTRkbS9iVHBydVp5SC9xWWRKTWVQaS9kZVE5UjNrdXBhMi9lM0FVTzFaMTk2eC9uMkk1MVhSOGRkdk5jK3UzelJXUU5xRkFBSUlJSUFBQWdnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2hzbXdBQjE5dTJSK2tQQWdnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2dnZ0FBQzR4ZkllbmxzaUIvR1ptczZ0TmtCZXpmSnJuZ0Q5ZTE5NlRTekNWZVJkSG9Ubm5OUVpxVTkxTlhseGVyNXpXY0V3dlhRbmFWVitnWEMreVdFMEhvREdTOWxUZkd6UCtUK1dyV3RMa0U5YlYvaUdFdmZ4dGFPakdQZGZScmJmb2krTUxKM1A5V2VSMmYxVE9WNk1kL3ZydUYxMTViMHQ1SThob2d1ZmJ5d1V4T0VzS2dmcjVIMHV5MWZXczhhUzJaL3Z2d0MrcW1TOW9udXFCN0xSMS9pbmVKWU5uUE0ydVU2dW1vMzFnWmdYS21FVVR2VTdub0p4MGtmNGRadVZpUjhaYjViL295K29BUnFPamd2WStueXVZOEdnbWEwTjdNTzM0UFlNeU1jSk9OK3BtWk03OUFXbjJmdm5RVGpFUHdIbEh2UFNKVzdNQjVaNUpQMU1yZkhnLzh0T2NBNE9zYWM3Mi9XdVg5VzU3MGt2UzF5d08xZzJjenhjQzNmdWtrekhLVGovZXI3cGE1TDFybG8xWGFqNTZsMTRkNWQrOHo2MHhlSVBodHdjTG9EYTg5YlFoRTk5OWFPdHlQYmJUTzJ1VmJUNzNNazNhenlFTWdLb0t2WnZJTkNQYzczOWY4T2t1NjhoV0hXTlM2Zkx4TWYvRjB6bWNDM1N3ajJ2MHI2U0JOKytoVkpsOHo5dTZiK01aZnh0Y1ZoOWZzTjBNaVhTSHA4MHIzTUFNMWR1WW5vTStNMjU1cE45ekY3KzFHejZMT3dMdjNKZWg3U1padmJ2bTZYNEVuZmE3MjU1MmV6bm16dXNVa1RBazloMy9VWmN1MzdJRTk0TWg4d0Z2MjhkelhkNW9EcmRjOUZQRjUrWTBld0x0L2hkS3g2a05XenZsZHlZMnZ2TjdJNzZuRzU3eTh1VjFueEtaSWVJdW43bGVWbnhTTDNVWHMzM2VXOEgyeDJxTGkvT3poSjBtK0hhdmxKNFhXZjJhVE5iRjAxa2Urb3h6aXVIdm82dUhVSHhKSU85WDAvRUgxRzVtWVRjQjAvR3FjV2NPMGVyL3NlT3ZNM0RuSGg0V3ZJK2c1eVhjdmIvblpncVBhc2ErOVkvejdFZFRVNi9ucHVjeS8vdExFQzBpNEVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUdEYkJBaTQzclk5U244UVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQVl2MERXeTJORC9EQTJVek1hSnBQWmxxeTZ6cExrTU1lTHNpcVU1TENNbDBsNmVHS2RmVlZWKzZKWlJpQmNYMzFhVnUvN205Q1pReEwyZGNaTFdWUDc3QSs5cjFadHI4c0xwbTFmNGhoVC84YlVsb3hqM2YwWjIzNjRiQlBFNUJlZWZlN1BXQ0w5OC9lY3oycGV2SDU2UmtNR3JzT1RYZHhIMHJkYWJOZjlQRUhTVVMzV1hiZUs2M0VBUitieTRQSVNkNlJPaDYwNmdPVHRMU3ZKR2t0R2pyKzlUZTB6N0tNbFM2dlZJaS94ZW94MmNnbFlicld4RWEzazhKbWpSeFRVOEh4SkgyanA0M3VJMzVSMEYwbS8zTEpNbTlVK1U4N2xiZHZScHM3Wk9sbUJUdjZNZnJJSk1UdW15OGJYck52bGN6K0YwUG91TkprQnFobjNNelZqK2lkS2VtR1hUcTlaTnlQMGUxZkdJNHNvczE3bTlsanVWazBRNUdHSis3YjJYbjFSRTU0ajZhbEpiZnVtcFAxTG9IZFNsVHRSalQ5bmZ5SHBpQTMyZHRWWXdtRTZiMm51M1c1VTJiNk1jMUdiVGY5YUUwaDd0cVRhU1NPeXhsTnQyc282MHhBNE5qaE84L05majlFWFRiN1I1Zm5WSXEzYXdMbklkdHVNYlJ6Vzl2TEE3czBLb0Z2VkJOOXZlenovcTgza0U3N1B2VTM1NTJxQmRsUDBKd0xmay9TRkJTQytGcnh1WWxBZXV3M1Y1aStYVUh4UHVERDFKZnJNdU0yNVp1cEdlOXNmTllzOEMrdHFtZlU4cE90MnQzbjlMdGYwZFFGeFVTZFBPT2Y3UTUvTGQybUpUT2F6eW1uUmZkRGxKYTBhYy94cG1aQzVxLy9ybDN3djRrbFh2am8zSHMxNDN0VzFiYlAxRnoyempBUm1ybnN1WWt1UHhic3NoNWZ2QjdxVUdkTzZXZDhydVU5ZHprMTlHVVMvTyt6NnZkeXlmbVM2T21qN3JwTGUyeGRhY3IyWjU0d3UzMXNrZDJQUzFmbTc5dE1yZS9EaDhyMmI3elhHc2tUSHZXUHB4OWphMGZmOXdEMFNKdThrNERwKzFFd3g0TnE5dm95a1AyZ21xM0R3N3Z6aTV4Ly9TZEtuNHpTVHJTSHJPOGgxQUcydndVTzFaMTE3eC9yM29aNVhQVktTdjZ1cVdmdzc5OThxa3hUV2xLY01BZ2dnZ0FBQ0NDQ0FBQUlJSUlBQUFnZ2dnQUFDQ0NDQVFBY0JBcTQ3WUxFcUFnZ2dnQUFDQ0NDQUFBSUlJSUFBQWdnZ2dBQUNDS1FJWkwza05OUVBZek02M2ZkTHRSbHRySzNEUVUvUFd4SkcwclhPcVRtdGV6bDBXZjlyWDNiN2wvSkMzMGVhUU1ML0xza3ZXLzJQdVkxY3R3UXEzYUc4NFB0TFhYZkFpdld6WG5MTWVDbHJTcC85eEYyUVVsV1hvSjYyTDNHa05Hd0xLOGs0MXMweXh2M2c4NzZESERJV3YzVHFRQnkvdE54MXlRNGVkZkNuZ3c1T2FsNXErUWRKbDVRRythV3kvMWhlZFBrZFNWZm8ydEFsNnora1F6QjB4b3VSYnNZSEpkMWQwdGVTK3BBVk50aTFYVmxqeWF6UDEvVWxPYlQ4SmttdWZWWlQreEp2SDJPMGk4czV6cCs3K1pDcXk1VWd0ZnVWOGN3K0NTQU9LN21icEhPRGRYVzVqZ1kzMVd0eHY3em5RSkpGd1dvWkc4NEtkSHBQRXdCNHJTWTA3YVlaalNwMXRQM2NUK2x6M1lYbkU4M240S0FtSlBaVFhRb3RXTGYyZm1hK3FxNWorbWd3Njk1dXZMSk1IaEVOcHRxbDhjaGV3NnlYdWQ4ZzZjQkE2TzZpdzduMlhuMVJYVm5qTU5lZE5YRlU4Q004eWVJT2ozcmpobHJ1WnpBSFMvcnNndTFIdzYyenprVnRhU0lUQldST2xOQzJ2YXczYmdGUFR1RHhkVzFvK3VkSzZMOG5OTm03Uk1mZHRZRnprZTJ1Rzl0NDRwb3pKZTFYdVZ1em5zMTY0cUtyUy9KNDEvZXdicy8xeWoyWXgvRXN3d3VzK2l3TTM1cDJXL1N6c1RQS2hKanRTc1RYZWtreitlYmprNzZIaXJlbXZvYm9NK04xNTVyNmxvMjNaTlNzOWxsWWpValdQVkxOdHJlMVROZHJ1cTl6ZnlUSjQ5N014V1BoejB2eXYzZHg4ZGpoU29rZHI3MFBxaDJydFgwZW1QRzhxNVpwVVJzajM0TThiVUZRNHF4dERoRi9Sek5SazhQTDJ5NStqbnhIU1g2Mk9OVWw0cm0zejEzUFRYMlkzYkRjajEyN3N2S3NaMVIrZnY5ZkE1Tit6VGZmNCtMZldQTDhwYktidlJhTGpsSG1HMGZnWXQydWlreE1HUG1OUWwxcjE1ZktQS2JXYjIxMzF1anpmaUE2MmNCc0x4QndIVDhlcHhwdzdaNzdIc1lUQVQ2OE1QaDU2d042L0I0L3JqMU1EVVBkWDdlOVZ4aXFQY1BvNW05bHFPZFZkMm9tcUhpM3BNdFdkR0ZxWTgyS0xsSUVBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJBWWp3QUIxK1BaRjdRRUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQ0JYUkhJZW5sc3FCL0dadXdYQjBXY0xlbUtHWlV0cWVOTGt2NXh6NHVGMXh3Z25NTDd3V0ZVZmdrdXVnemhOR3Vqd3ozOWdzUGZ6WVdZK20rL1VsN0ErL2tXbmFrTnpXcjdncXdEclIyMDZoL1QvMDlKWGNQWC9HTGppeVFkMnFJdmJWWTVSWklEV1d1Q2FHZjFaN3lVTmFYUGZodlhJZGZwOHZKMzI1YzRobXovbExhVmNheTd2MlBjRC9kcEFwLzkwbWZHMHVWbHZmbnRYYWNFQ3Q4c294R1NYdHJVYzZ5a3I2eXB6eStYK1dXeVA1TjA1ZUMySGVqcjYrZUZMZXJaVjVLdGJ0RmkzVldyT09UM2dDYUE2THhnUGJQaWZuSCtiMHN3VnFUS1p4Yi90blZralNVelBsOCtKbDdSaE1VZTBiYnhnZlZtUVNvT0JKOC9iaHlVNWpBS1QzVGg5cXhhYWwvaXpReVc5WGptR1pKT2tQVHROZTExY01yUmtwN1ZvbS9yYU45U1ByOE8xcTVkdWx4SGE3ZlJaN2x2TkMvREh0bWNTMDdkTS83TjNtWld3SFYydTF4Zm04LzlFSjlyZnc0Y0NPTjdxSDh0SGZXRUNuNDU5c2JKb1VGN0hWOGo2UkVWOXhiejliUzluMW0xRDd1TTZYM2Vkd2l5QTJZemxsVmh0VjNxMzdYeHlGNmJNYi9NWFh1dnZtai9YNk1KLzN5YnBOdDFPVGlXck90cm1zZWRMTjBGb3NGTjNiZjRveEllZi9tWnlwc1dWT0RKeGZ6ZlBWYXZXUnhlNUpEOGkyb0s3eW5qYTRpUFZmL2JpLy92MmIyU1gvUy9UUWtoOXRqS2s0aDRRcEdhNWFQbFhQenBtc0tVMlRxQnk1ZG5BL2NLOUd6WmVURTY3cTRObkl0c2Q5M1lKanBoUXBmbkovN2NlNElmN3h0LzduM045dmNFQkZnSER0WWVpenJFeUo4Rmg1aFBaZGxmMHJzQzE1T2FmbnF5VHovVG1wOGdxNmFlVFplSlBqTmVkNjdaZFAvNjJIN1VyUFpaV0UxZnhueVBWTk9mTVpTcHVhYnZEWWdiUXo5b3cwOEVJczlrYXNkcWJaNEh1b1Vaejd0cTkzVjJ3UFdxUHRlRXdyMjEzTDkrcDdhREl5aVg5YjJTdTFKemJzb21lRXo1anFXMjNxeG5WSjc0NjcxbEVwM2F0c3pLZFowTU43cTlhSGsvSy9SOVdzYkV5RjN1OTZMdDNwYnkwV2NTcXlZQzJKUlJkTnk3cVhhUGZidDkzZzlrUGJQdWNnN2dPRmw4eEUwaDRIcnZNL3o1bnZqM0h2NTlxSjk5K0JyOXJiRi9zQ3JhNTk4cWZiWEQ4NitoN3EvYjNpc00xWjRLMmxFVUdlcDVsYitiZjUra21rbGUvSHZudTVheDZ5alFhQVFDQ0NDQUFBSUlJSUFBQWdnZ2dBQUNDQ0NBQUFJSUlMRE5BZ1JjYi9QZXBXOElJSUFBQWdnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2lNVXlEcjViR2hmaGdiVmN6cTc2SjJ2RjNTUzVvWCs4K1J0T3FGUXIvTTYxRE1KMGc2dkFrSjNDZmFxVDNsTXdJRC9XUDlOMHR5T0VJZmk4TU0vYU4wLy9QM2E3eThmWnY5aHhKazlLZ212UEtYRmpTcU5qUnIxUXV5YnVmTG0rQ2hQNUgwbVFRSWZ3L2dGMXhlbHhDdy9vVW1VUGFPZTBMVXV6WXg0MldicVh6MnU5b01zWDZYbDcvYnZzUXhSTHVudUkyTVk5MzlIdU4rMlBRTHV6NnZ2VmpTNHhJT0RMOGc5c0F5Q1VXWDZtNGc2YlFTS3R5bDNONTFmWDA1c1dVRno1SDAxSmJycmxxdDl0cTFxRTRIWnIxRFV1UTc1NXB6ZXRiWUt1UHo1ZVBIMTlpSXdhcjk5YUVTaE9sZ3pjKzNlT0hQWVlhL1dVS01IYUMyZDh4WDh4S3ZYODUzSVBLOUU0NC9CNWc0SlArZk85Ymw4NDZEOVIzaVhiczRvTkltNzZ5dFFGS1g2MmhnTStsRkhhYnNlNFpuTi9jRERybnVlNWw2d0xXUDBkZjM4TG4yaEVRZTQvK2xKQWVEcmdxdzgyZlpZNG1uUy9ybDVCMlc4Vm5JQ1B6cGN2NS9vcVFYSmpsOHZabm80WkFtOFBIOFlIMjdPaDZaWnh2enk5eVo0eDMzMlNIRXZoWkducVY4b0FtMXYyZUxDVldDaCtiV0ZuZFlxeWZkOHI1WXRuZ2lNd2MvZUlJd1R5TGd6N3VmL3pnTTg1R1ZNcStVZE5TZVNRSDgrZmZrWDY4S1RNRGhDYzBjTlAycE1yNjUzcDcyM2FoTWVERDd6ei9iQksxN1Vyalp4SG4yMkZSUWJkZUpFbTdkVE03eTZFcC9pZzBuNEVtY2ZPL1JkVG1zM0E5MUxUZGIzNU45K0xxOE4rZzlPdTZ1RFp5TGJIZlYyTWFmMmRkS3NsZnQ4cUJ5SG14YlBtTzgxblpickZjdk1NVmdsWXpqdVZiTTk3V1BiL0ZzcExiK0ljcEZueGwzdVk4YW9qOURiQ05xVnZNc3JMWmZtYy9OYTl1d2JlVThXWU9maTNaZC9KMnpueVVlMUxVZzYvY3FFSDBtVXp0V2Evczl3Q2JIVDR2YTJPWStlTmtPVzlYbm1uNW1QMmZwOVVCYlVublc5MHF1dnZaK0k2dmZQc2VkV1o0VDFOVDV1ZktibkUvV0ZONVRKdlA1NE5TQzFQM3N4cE1BLzBLQzQ1RGpsWVRtanFLSzZPVFF0V09NUGpzZkhmZjIyYllwMTkzbjUrdkJKWlE0NmtQQWRWUlFta0xBOVppL1A0L3ZnZlUxZERuT1hWdm1HR05WNjlyZUt3elZudldTNDF4anFPZFZuc3p4allGN2ZmOXUvdVJ4RXRJcUJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUJndXdUNmV0RjJ1NVRvRFFJSUlJQUFBZ2dnZ0FBQ0NDQ0FBQUlJSUlBQUFnaGtDbVM5UERiVUQyT2pmZmNQWXgxZ2tiazRHT2tJU1IrdXFQVEtUUUNQUXpJZlUxRjJXUkdIc3ptWTV3MkJPbzhzd2M2QktoWVdkWWlmUXc4Y1B1bnc2SnJGejlKdkx1bTRFbmo5djlsN0UrRDVpdXJ1KzFzdVBLaWxBcUpTQVVORWlZb21taFNJcU1nbW9HZ1ZJb3Fpb3BZclBnaStMbGdsb0tLdkVBaEJJOHNqaVBwYUJZaWlRbHdpeUY2Q0ltSmlTRkJNeElVUzR4STNSQW9mbCtTOVgreUw5ei9Pek8wKzUvU2RPelBmVy9VdktYKzluUDUwMzl1bmU3cS9weTNEZXBsejJzVlJYcmJnLzg4TDF4UWhqSDRpQkxsbzA3NEFQdWt3THVKUzFySzgrdzVNMWJLV1hQN092Y1JSemRnbEx6aGlyQlBCR1BzaDh1S081VUpoVlAwTUlzQkw2QllSTC9iTjFra29kMXZIV0owbDVqV3R5SjFTUUl1TkhQVXhhK1FGOFFqUmJWN0MzNjl3am83eUpiM3Yxd09TT1Bvam5YMHlMVHZuMmpjQytIZEgyYnpjUlFHMXZ3RncvMVNPNVoyTEV2djljdXJybTQxdGVtd1NiZGpFbUovWktJeEpRVXFLaUZtZWtublVVbjUwSG82ZjQ1SWcvMjNSaGM4cGJ4RVhkQ2tlVGJIUWYycUVrUG1OMkI3QXZUdGp2elczNzcybnNEU0ZreWhLRmZYUXQ2ZFE5Y21GM3pyV3ozWEliazJ3bmZjR0MxMlhYaUtlWkdFUndwa3NJOWVuajNqMzI3b3A3bjFBV25ONSszZGQvWkV1dHlnR0pYM0JZQStjeS80VkFPZmh2MDd2L0tZVGhWalg2ck5zNGJ0NE9JRGpTNHp0cFBXS2VCbXJYYmxzOUVsZW1BU3NLVng5ZlNNK3plLy9UK2ZzbzJ5VmZQYUhHMmg4b3hFcTJqTUZKV2l6YzArTjMzUGFzYTRQOXdBcHRQdVJUQUJSYStQTTZwVE1TTUFxMFBiQXRFNjF2R00wbGVPSm9sSU00dGg5dkg2M3RUMmVldWY1TnQ0NWs0R0NLTmIvdzRMK2ZYQWo5SEVsZ0MwTDhpeEQwbHVUbjc4TXR1YllXTEl2bEZQZUVHbWk5cWNzdHRLbllvQlUrZ0RMK25qbnhkeDExTEx5bVdhM2w1bGxMOHpLejJ1cnRkNVZ6ZWNkN3hINzk2dktkbEh0S2duNE9jMUdxNi9XdHgvWTFoV3gzMlZsTzh2RzZEWmJmbHZ4dm90V0p0SDVMRzJmWllOMXZSSFZKZ2J5NUc5OTF2dWdwellCMkE0TkNob1NPZmZsdnF0UkhMM2xSUDRPTXFTLzRtMzNXUEx6L05aVkFEWXpHTVIxSmRjVjF4bnkxc3dTK1Q3VnRIUFp5cTcxZmpGQTlQa3BjSnVYQ1gvMzRPL1hsMlY4bXpWT3B0T1d3TFYzRk5iUFgvcmJ0SGMvTmJkRnVmN0hVUGJrMmoyMmRFT3VHVTVLdnF5RkFYL2ZPOHlTVVhsRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBVEtDRmdQTkpUVm90UWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWk4QWNDVVpmSGhqd1lhKzIvK3lZaHZoMnRCVXpKOStZa3F1UVJRZWJlTUM4OVVQVDVua0cyV1FRcTI2cTlZaWl6bW5CS0kzSjBKQUNLWEVjOTJ3SDQreVJ5WkJYTjZsNlE1U1VMQ21WUjJQcDNVVVpPS1lkOS92WWtydWVweG52UU8rS3l6VEs4K3g3R05mT1dYSVRPdmNSUjA5NWxManRpckxQOVkreUhSVjdZdlJ1QTB3QzgxRGs0b2tRR0tYaEhJYTY3R08yaHlDNkZTM2tCdCsrSjhpbCswSWo4UGFFUjVmdFdYNFU5ZjZlUTVFVkpSTlpURkFPQm5GMVlRSlF2NlgyL0dDeUU4MkxrODgxR3BQY1ZBQzdQdU1DYVd5OHYyTDRzQmVyZzJIOGNBRjZVelhtaVdFOFRpTXlwZnpLTk55Q0tkL3lYektPVzlrWGwrUkdBTnlXaFp2NTNUUjl6bXMyUjg4UThKZ3o2UTZGOXJrTitOU1BoM1FIOE9ZQ1hwM2Zyb3dCZU5LZFFpc0p6alJUMVVJeVFncXczT0F1a1NNTVpxU3huVVhka255VW1tVnQyaE9CUGprL1B1WS9ycEQxeURldEp4NEJGYnduNHZxNnpQOUpGUE5SbGJ2cGE3THN2elJFeDNqaUpYYjhTQUgyTEl4eGkxTE9HRWI4bkhQdi9iK0Y0OUFaVktheE95VHNFK0s3U1Y2UC9VUHJNRXNTbmlOVW5TZ3Rid2ZSY1MvRGIvSjJNdGtXdGpUT3FVaElIQWF0QUcvY2IrWjRkNHFoN1doQWFyOTl0YlkrbjNsbStUUVNqdHpWOGp5NWtIRkZ2WVpYVmtqT1FEVVg0R0VTVTh5cUQwakRZSm9OYVBxeGFyY01VVEdGQi9vYXhMQS9uVnZZRDEwMkxldDZmNW5acjRLcEYyZDNXNjUwWGM5WlJpMjVqZFAxZVpyVUU3YWExMDJ0ck5MdGxMeTlpdkZPODhoSUEzcUNSeTg0eTJuN3VLL0hkb29oNDdzTjlMZnFNbnZNTlZsOHQ5M2VBaVAydVhCNlQ2YUlGcm1jSkNGcjJjcFl4SU1lMGZvajZyWU5sVzljYjF2SFJ6ZWYxeDM2ZGd1ZGNIV0ZNT25Qa0NZN2VOZVBZZExZbnlMVHF4VVQ5VGtwRHY1ZCt1N01HaUszZTJCRlc4T1QwTzdYbFhqVDN0UjVmR0VScUNBUmVYM0tSMzZiYWZLdytBTzJxdFI2b0VmeUp2M3UrdUFuVStyVTVRQm5JakhVUDhmQjNGd2J3dGU2OWZDaUpnQTloS3dNOVh6RVJhSGdJMzY1RXRIbW8zOCtINEcycG80UVZ5N2Y0clJhN2N0Y0tmNWIySW5uMlpvaUg5ZkU4bXZYaG1vMi9aVEZJN0JEUDdRRGVsZm1ia2RjZS9oYk1jNE9XaDBGaTlwOXp0c1JTcHZLSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaE1JV0Q1SVZjZ1JVQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJNQkRJT3J5V01URlZrODdjdkpHQ3FSUlhPYzFTY3lCaDVBakhoN1lQZGNoek5tMXdYTVpMbG9na21QandPYXcrNmNDeE11bWNiNXJjNkhrQUFEM0J2QmVRMGUwb2xpOENFSVJHQjd5SHVKNWNDTkFkR1VqanNjTEw5YUhJcXo3QUxqVldJRDNVaGFyWFlaMzM0aW5lcmFTaTErNWx6aXFHNzJrRlVTTWRUWjlqUDBRZWZHcTlFTGhvOUozYkJQbnVEZ0l3Rm5PTXBpZFFvY1VaMzYybzZ5U0M5c1V0SHFybzY0MksrZElpb2g1bm9nTFpieXdUWkdSYnhjYUV1VkxldDZ2R3NFNXprc2l2RDh0NUpHYmZDc0Fid0R3TndXWHRwOENnSmU4UE9jSzZDUHlvamw5RU85REliTUxBT3pnS01naXF0NVdWektQT2t3TXovclZOSi9RNzcrcGtuL2NOVHB5bnBnR2c2SjJ2T0JkS2dUUEM2Y01Wdk5QTXdoSEJSSm9pLzh5Z1AwYWdma29VWXBvc2VkcFlwSzVneS9pVW5pZlQ4L3ZEZ01CSFo5clZFKzZTOU9GMVZzQ3lsdDNmNlJGR09FTHpPdU9md0h3L0I0eGgybjU3NU5FdHY0dG9LOG5pK0M0WkhBUzdnTThKS1A4R2tHM01xcFZra1RBcytjMVMzeHRtMFpVNFBQTjVma3RSQmtmVE1FaitnVHFvdGJHUWw2WGdFY0V5U3ZvTXkwSWpkZnZ0cmJIVSs4czM4YTdIOHZnUkU5cUFqamNhQmdDVVQ2TG9XcDNsbGJVbW1KSTg5WXdYSnR6amNlQU5sYkJKYmV4eGdLc2V5TEc2a0t5ZWQvM0NDTWk5eGdpN0NrdHd6c3Y5cTJqU3UxWmh2UmVacVg3eng0bURIREZJRTE2WWdoRWpQZm92WVdZbGkxL0tmeU5lTzhVUkk3aVluMFA5eVozQjhCQWZKN0g2cXZsL2c1UXV0OUZQMjFXd0FVR1JlVWVhVzV3MUZrMmx0clU4cDBsSUdncHp4SnN4ZFBQdGZKRy9hNUUrNnpyallpMmVYMThUOUQ2YWZhL3Jqa3pjMkpFd3hxaFFXdHcrYURxaTR1SkhGTVJjMTV4QTVZOEEvZU5yYi8xODdlQ2ZadmZIeWlJTzZiSDYvY3U4dHRVbTZQVkI2QmROZFlEdFlPS2NkLzF6WUcvTDFyN3gvdWRXL1IzM2VMM2xMSXFFVzJ1L2Z0NXFlMURweTloUmR0cS93Ylp0ajkzclRBMEwrK2NzTXEreFZQVEdTWkxuL0Q4eGw3TkdmeWZXVElyandpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSVFENEJ6MFhVL0ZxVVVnUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBVCtRTUI3QUw0dGFld0hjVGRPRjVrcEJoeng4T0Q5Q2NHQ2RORVhlMDhGY0dpaGpkRkNjajlQUXFPWFJFQ3ZWTWJUQWZ4SCtsZXBpcW5Gc3I4L2tBUUJyZlZTZU9OeGpvczAzZ1A0dEh2czc3NlY3UkQ1U2k1K2pmVVN4eENjSXVxSUdPdTBZNHo5RUhueHF2UkNZWVRBODZkVGtJS280QUplQWVDU0N6UlJsN2g0S2ZJbGhmUDE1SHRCNFlyVG5DK0wxWTRvWDlMemZrVUdNU0ZHWHNJK2VHU1hxZS9XaUhlZUNZQnQ5VHp2QnZCYTUzanIxdThOakVLaEliWnBsdmpJdkxhV3pLTWVaalh6ZnJNUlZuazdnSTlXRExJU09VOU1zcUJRT2dQTlVBZ3grcUVRKzBWT1FmZldwbTgwQXFoN0pqRytTRHUzQm5CeEUxeGgyNEJDdVc1aWtJSHJEV1ZGWEFydjgra2ZDNENDSzk2Z0ZteGVkSCtzdXovU0Rwa292MlRhRUJ6anZOaTFrMEd2dG0vVzlNOUxvbDRQQU1DOURZcGJmYjBSMkR3SHdEODAreU0vTWJ4ZnloSkR3UE85blBmTmlON3JpMm50WWtwaDhEMEd6dmxJVC9WUmErUEZ0SEo5YXZXSUlFV3N6N2lmektBQTdlUDF1NjN0OGRRN3k3ZngrazJXL2ZhV1k5U2FicWczZ2ZzajNHZmd2czBQRFpVeUlOSXprdmcrNStsY1FVbERWU0ZaUEgwYllrQmhJUkZCM2dxcm5KazhlbTh2eXE2Y2NyenpZdDg2S3NlR1pVdmpaVmE2Lyt6aDQvM21lK3BleGJ4UjQ1M2ZMMzV6R1F4aDFzTWcwMk9mTjhiVXgrMTdSY0hxMS9jRUorUCtFOFd3dnhUUUFLdXZsdnM3UU1rNzNQZHRLZldSaHhDNHRweko4QVE0RCtqeTBDSksrMlJlNWRiMVJrU0RTc2JwdFBvaUF1QjJ5L1hhMHkxcjBVS29wZjBUT2FhaTVyelNOaXh6K2lPYVFOVEhHQnVRT3k4WWl6ZG44L3E5aS93Mm1SdWRtZEhxQTdENHZqazcwNFFOa25tRG1lWFV5YUNDUndFNHVlTHZ1WDEyZUw5emkvNnVSODVSczFpVmlEYlgvUDI4cnkvSDhQY1NWclMzNW0rUVhSNnJPaWVzc20vaEdSdmVjODlqZUpka2d3aUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBZ3NCUUVKWEM5Rk44bElFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVWZ3BBdDREOEMyTXNSL0VmUlFBQ3JCRkNISmRDbUQvUmh6d2xnb2pnZjF4WGhKZzh4WlBJYWRkQ3dVb3ZNS2dYWnQ1QVptQ2R4UXUxRE9kd1BPVGlLYVZqL2U5ODE3S290MWVHNnh0WDRWOEpSZS94bnFKWTFuNklXS3NzNjFqN0lmSWkxY2xGd28zQjhCTFQ5czVCZ0V2NDFQQWxQTnoxTE5sTTRkK0hnQkY5Q3pQclVsZzlMcU16UGNBY0g0U2hNaElQalBKMXdEc0F1REh4a0lpaFAwb2lNY2dJQmNhYklqeUphM3ZWMVEvdEUydjZlY1o4TjZaNVJITiszSVZnTTBjaFZEbzgwbHpzUTZyQUFBZ0FFbEVRVlFBYm5TVU1ablZjMkdOWlgyckVURitmS0cvMnRwUU1vOEdOcmxLVWI5SW91cm5BdmhkY0EyUjgwVFh0SnJ2Q3MvTzhKTDRJUUVzYXE5SktGTEF1U0JDZUdsU1RESzMrUkdYd3VmNTlCVGMrVlNhSDNOdG1wVXVVa2lKZGNnZitRTnA3L2Q0VnArZGtkNUZDampvRVFFTEFRcll2ZGNZM0N2bkd4NFI2TVhTcmpIbW9WKzFSOFA2TzNPTWkxb2JqN0g5cTJTVFZ3VEpHNFRtbXJUT2JmZSt2WDYzdFQyZWVxZjVOZzlzOXNxdkFQQnc0MkNKRUJTTTNIczNObU5tdHR1U21EV0RYNUhUcndJcjRGeEFYNFVDZnM5cTVvVS9DU3c3b3FpSXZvMndvNlFNQnNkaFVOR05TakpWU3NzOUpmWXJmOWRhdHNjN0w2N2pieU5lWmlYN3o5N3hGTEZXOXRxd1N2a2orNDVCaVM1ckFyNDljZ29nN2plOU1lMjEvT2txQWF6WWxtN2ZjRStOMytTekc2RlJ6citUVDJRQWI2dXZsdnM3UU1rNzNEYytTMy9EbUdXamRmMDV6YjZka3M5Vk1wZFArdWtWaDFYMW9rdjdaSjVCMXZXR3Q1RVdrZkp1blphelBIMDJsN3czZldVdFdnaTF6NzdKdjBlT3FYWDA4VXA1VDZhM3pna3M1OGhtWFhPczE0QUsrYjErNzZLK1RSVlEvRkdSbnY3dW03TXQ5a2QrKy9ycXAvMkhwM09RMGIvbjl0WHQvYzR0K3JzK1JEK1ZpRGJYK3YyOHJ4L0g4dmNTVnJUNXoxSVFkWjdONlh2dWxkWWtKWDV1VzJidVdxSFBodWkvZStlRVZmWXRQTy9TS25PSkhvTXFUd1JFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJjQkNSdzdjS256Q0lnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBZ1lDM2dQd2JaVmpQM0JxdlhBNGliU0dHT2RrSFhzbWdVbXZTQnFGQmZaS1FnYzVReU5TU0k3MUhRSGdPQUMwUTg5MEFrOXNSRTB2QjNBM0J5RFB4U2p2QVh5YVBmWjMzNEcyZXRhU2kxOWp2Y1JSSFZKUUJSRmpuYWFNc1I4OGwwVW04WlpjS0tRdzlVVUFQTDl2ZmhiQWZnQnVEK3BuRnNQdjZZZFRJQXByc1M5SUFoQTUrYjNDWWF6anQ0MVkrRzVKdkRpbnpzazAyeVJSN3kwc21WT2VMeWVmNFdlR01xSjhTZXY3RlJuRUpFY1UwSUFvSkV1RUwzc3FBQXJvUnZwbW02WnZ3ZmJHVm5yR2Y4azhhalJ2OEd6WE5nTGsvQWI5UjJETmtmTkVhMWJ0ZHlWQ3RMaTE5YU1BR0ZTbWxqZ3ZML0pTbVB6cEFYMzJtVFIvbFlvSlJsd0tuK1hUYzU3bnBmY29nWWszQURneGdGVmJoUHlSUDhDc0lYRE5JQ1QwbzJzRTl3b2NCaXBxNUFRNHI1MXB0REZIWUwzRzJEZWFPNHBzZmN5aTFzYWphT3dLRytIWjZ5TVdiM0NjeVFCSVhyL2IyaDVQdmROOG00TUJ2TWN4YmlMOHlxajFzNk1aZDJabEVBSHVCWHdBQVBkbmJncGVLODZ6a1dLQURMN0VJS0pQQlVDaDAwVStOZmFuYXJZbmFnM1M3ZzE0OXZiYWRuSXR5Nzc4U2MyR1Z5amJPeSt1NDI4alhtWWwrOC9lTGo4bS9VN3BMVWY1ZjA4Z3V1OGVtK2FmTmpBMTU2VTNBWGhYQ21iMXhXYU9rc0IxM3VpYjFqYzdKT0hGQjNXS2lQQmx1aFpaZmJYYzN3Rks5cnY2eG1lcER6YkxSdXMzY0pwOWxtL1UyNW9PT0RwdldJdytWV21mekd1UWRiM2hoZVFOWGxPalAwdmVtNzcyTDFvSXRjKyt5YjlIanFsMTlQRktlWGZUZXdNeGM2MSt1c2VBU25tdDMvelduRVY5bXlyaDJLQllxdzlRdzZmMEJqT3o4dUlhK01VQUdNaDhxTWY3blZ2MGQ1MzIzenNERnZlSStIdXBKVGhhaVdoempkL1BNNW8zbWlRbHJFcU45ckROWFN1VTJ1Uk43NTBUVnRtMzRIdk5kNVpub0MzUFBnQXVzR1JVSGhFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUWdYd0NFWWRFODJ0VFNoRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRUF2QWZnVzRaalBvZ2JJWGJadGpQNjh1ZTBNVWlCZ3ZNQjdCMHdRQ2xFZG1SbU9aRkNjc3NxYUpDSktpeFpoQkNUNThLWDl3QStRWXo1M1kvb3FCMEJkQytBUjVUWmxuRVlnSjB6QzZTNDNFbVphVXVUZmJjUklMbW1OTk9TcFk4WTYyenlHQy9UYkFXQVlnOWJCdlFKQlVzZkQrQ0hHV1ZaTHQ5UEZudGdFcVBPcUs0b0NRTXMwRDdyVXpKM2VvWERXaHM5RjlsNVFmWVQxc2FtZko3Nm8zeEo2L3NWSWZ6YzRqc0l3RmxPbGpXeVIvaXlETkt5YStOZlhoMXNJTTg0a05uekhPV1dpTXAzcS9GY29IYVlXejByaFpoZmxzUkFJOFRJUFpkSVp6VzI5cnNTRVFTR3RnOFJuSWoxZU1WTVdzNC9BUEFFQUp5UFM1NEk0WkpaUGoxOTRjc0EzTFBFb0JscCswUlhMVlhJSC9rRHRZaTFaYmNQaG5wL0xQMnVQTXREWUZLMHJzVHlielJCWEJnQWpvS3I4eDV2c0kwU201WWhMWVVCR1VUb2t6T01qVm9iTHdPTFpiYlJLNExFOVFPRjVaL3JnTURBVWZUNUdKREc2M2RiMitPcGQ5SzNvYUF5Ull6cDIxaWVTZEZ2U3hsdEh2YkxPWjRDSEhtL0N1QkRhUStCUVhXNDl1QiswazZPTXJuRy9KNGpQN055WDRGQmsvamQ1M2Zxa1FDOHdUOUxUS3ExUDFWaVEwbmFad0w0bURQb0hPdGpFQ3dLVXIrbHBQSTVhUmN0bG1WcGhuZGVYUFhmUnFZeDlUTHJFNkcxOU9Pc1BKNTVKTktPVlNtclJ0Kzl2cGtEL3E3eE9iNEpnTjlpL3JiTXA4WmUxcXIwdzdSMnpQcGRoNzhkOGJ3QjU5amM5VlVKSitzN2x2czdRTWwrVjkvNExQME5ZNWFORE9aQThiYlNoNzdTNDVvOTM1dFRSb3NZNTZyTk9hVjlNbys1ZGIxUjJvL2Q5TjQxMTgvVEdZSHJQVVpNeVZ2eTN2UlZ2V3krWGVTWXN1N1Q5ekZkMWI5NzJTL2lIYzdwQzYvZk85WjI1YlM5TDQzVkIyQzVmWE4yWDkyVGYvY0VWeXl0YTFyNlU5S1p6RjlFRk5aVGh2ZGRXNWJ2dW1jdFVDTGE3S2xuZ082dVhrVUpxMUpqUEd4ejF3cWxObm5UZStlRVZmUGx1enp2bGZhYTl6QkNYdVg1MG9oRTJVUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUWdub0FFcnVPWnFrUVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVJSDVCTHdINE52U3gzd1FseUlObndld3RYTXdSQXBaOUpueWFnQW45eVhLK1B1bEFQWUZjRnRHMmlnaE9YSjZGb0R6TXVwYzV5UjNCYkJiRWgyaXFMbjE4VnhDOFI3QXA4MWpmdmV0VEx2NVBKZXpJdW9mb295eFhoQ0piSHZFV0tjOVkyUVZLV2FZZTRrcHduZW9lVG1ZUWo4ZmR3d2dDaFRzRCtCWEdXVkVDQSt6bWx6Mmt5Yng5Mlg2QzRkazJEb3JpZmM3SGpFZXJPOVhGSDlQSHpqUVoyZU44R1cvREdBdkFEL0xyalUvb1ZkVW5tT1lRUjlLbjFXZm95bEdjU0tBMzVXQ21VanZ1VVE2cldycjk2cWtHVkZDSEJReHBNam43U1dWRzlKYVJHbG1WYk5QSTd4NFFhRU5FYnltelFVVWd2eFVRVUNXZVdaelhjcTU5WmJDdHMxTEhqSC9ySW8vUWs2UlBpSExlejhBQmxPaXNLa2VFYkFRNERlRVBybmxVbnVmU1BPa1BSRmk5NVkyampYUDE1TkliQ3VlMXJVemFtMDgxcmF2aWwwUm9nN2VRRWpkT2RMcmQxdmI0NmwzMHJmeGlrcEgrc0NSdnVPOE1VL3g2bjlPZS9ULzJBUWxhZ1d0Si9ONGdrYlJUK0QrOWxYQkx4LzN6Ym1Pb2ZEMmt3SHMzdXpKYlZOSjlKcmZUQWFEeWduMkZ0eE1VM0gzUyt1RkhVeTUvNUNwRlZYazcwWU1yQmdST08vN1RYQ2NKd0c0MFduYmtObTk4NkozVDIzSXRrYlY1V1VXTFdnM3IxM3ZUTDlWUnJWOTJjdlpEQUNGcDZ4UGpiNjdPNENuTjBFM0w1cjRIVHQ2TDh2YTVtWEpOODlQWVovelhlQWVXZlR2OWxaZkxmZDN0cEw5cnI3eFdicUhOTXRHNjk1TGhHODYxRDduVU9PK3RFL20yV1ZkYjNqYStxamtRMjFpTEtRYlVNaFl4TlJzSmU5Tlg3MmVNeWg5WmRmNGUrU1k2dnVtMUxCL21jdmtHdmNMYWMxVzJnNytkck5MSjhoRmFmNmE2YjErN3lLK1RUVjVkTXUyK2dBc0kvTDk4Z1l6aStMRi9aZWowcG1ObXI5SGVyOXp5L0pkOTZ3RlN2YnZQUFZFaloxRmxsUENxdFJPRDl2Y3RVS3BUZDcwM2psaDFmZVBQUFBDc255YnZHTkkrVVZBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJnb1FRa2NMMVEvS3BjQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCTmFTZ1BjQWZBdHR6QWR4bzRTYmh4UTdzRjZRbkJ6RUpaZERvaTY4WFFOZzcyRHhzbVY5T1RjR3NEbUE3UUE4dEJHZjJESDkyOHA1a2J6THczUFEyM3NBbjNhTStkMlBHRGVlUS9nUjlROVJ4bGd2aUVTMlBXS3MwNTR4c29xYTQ5aSszRXRNajBqaVJSVEZzRDRsSXRLbGRYajd1MVFJMkN1VXhmYjlGQUQ3OG9iQ3huS09ZYjl4bnJFK1htR0VLRi9TOG41RkNEKzMzQTRFUUZHQk1UNFU5S0xRaStjOGdWVkVPb2VIMTRlaytDWGZvMUlSMVhXWW84bjJCQUFNSUdOOVBKZElwOVZaKzEySkZLNC90UEhGVDdHQ0s4akhkL01EQUY1Y2tHZFdVb3R2NzMwSGFjdWtUODgydlQxZHl2YzJxNWJRbmZ5UkRYc21hZytCcGY0NkNUMWU3ZTE4NVY5YkF2eUd2S3NKclBFYUk0SFRBUEFibnVzYlJQaEtSbE5IbSszZHpiN2NhNmY0RU42MTBtZ2J2R0tHUllnZ1JZZ290NzZVMSsrMnRzZFRiOWUzWVdEQjg5Tit0WFdvUlB2QVJ6ZnY1MXV0eHN6STk1OEFMZ1pBTVdzRys2UVBsck9POEFRc3VqVUZRN2t1dUMzVGl1UGN3bjJvdndEdzJHYU4vUGowdjF6dmVKNVQwNXlUdzhwVFQxVGVDTitmdG5SRkZTUEg0d2NCdkFJQUJiNlc0ZkhPaTZ2KzI4aTBQdlF5Sy9uTmNobkcwRExaZUZMNjNsbHRaakFEQnVYaXQ3LzJFNzJYVmR2ZVJaZWYrN3RPdEoxV1h5MzNkNENTT2EvdjIxTDZHMFpOZ1d1cmIvb0NBR2RIZCtJQ3l5dnRrM21tV3RjYm51WjcvQ2Y2bmZ5ZVh1Z3hZRWJla3ZlbXIzb0d2M3RaWDZJUi9YM1Q5RHZhOWdFMjlYMVRBcXBZcVNJODgvYVkvV212Mzd1SWI5TlFBOHZxQTlDK3lQY3I0b3hHRkRNR2VtSndydTlPRk1pOWpJTUEvS2o1emVXS3pBRHJzMnp5enAyVzN4K2orSlNVNC9tbWxQakZubnBLMmpQV3RDV3NTdHZnWVp1N1ZpaTF5WnZlT3llTWViN3pzbUYrejd5d0xOK21DRTRxUXdSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFRV1JzQnpJWFZoUnF0aUVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJDQnBTYmdQUURmTm43TUIzRmZDWURpT042SGwvTmZraWtNNGEwcjZnSldicjlFQ3NtdDI4SGpUUUJRc1BwUkFQNGF3SjhENE1VNUh0aS9pM2NnWk9UM0NGWjZEK0RUdk53eGx0R1VVU2J4SE1JZlpZT21HRFhXQ3lLUi9DTEdPdTBaSTZ1b3RwVzA3Nm1OaUJBRnFqM1BzWTNZelpHZUF1YmszU0dKUGxNb3dQS1VYcXg4TUlBckFWQnMyZk5ZQkFvaUJNNHQ5WGJiR2VWTFd0NnZpUGF6TFRjMVFtQlBBUEE5VHdkV3pQczZBQ2M2eS9mMjg3enFuOW1JakZHazJ2cFlMMUN1d3h6OTN3QU9jUEwxWENLZDdOTWhBdjVFQ1BmVDdxRjkxT2MzQVczT3NyNEVuWHlXYjJHRWNNa2tyNTJid0F1WEFOakkyYWFJTVR6TEJQa2pHNUtKRkxqMkJyOXdEaHRsWHdFQyt6Y0JXTTQxN29sOE5ZbUJVUFFqOTRrTWVwSmJaNDEwUHdQd3kwN0JXd0M0dTZFaWlvcHlyZlgzVXdSR0k5ZVBCdE9VSlpOQWxBaVNWOGl5RFdMSWNsNllhZnUwWk5iMmVQejlybS96bExTSFlUMmZYY01INWo0eTl4RzRyMng1S0daTllTUUdRdnBDRTJqbE93NUJZUS9uMHYwVFMxdHo4clQ3ODQ5T3dTVVpCSXovK3NTdmx5Mm9Cd05vZmk2alhYM01Ka1VWby9hMVdDLzkvLzJhMzBrKzJXZkVTUDd1blJlSFhuZU9BWnVYMlZpK0cyTmdPYlFObnU4OWJiWHUzMW5hR2JtWFphbC8yZklNMlRkZE50WXhsYnYzVmJMZjFmZHRLZjBOWTVhTjFySEo0RTI3cGNDeE95VS9ybVRQamI5YmNLL3UyOHMyT09mWVc5b244NXB1WFc5WWNYcURDZFVNRnUvOXJhYkxKUGRkdFhLTXptZDlQNmZaTVdSUWgyZ09peWlQWjZXK2FQeWRmTWlnU2FWc3ZIN3YwTittMHZaNTBsdDlBTmJaTjJmbjJoVTVqK1RXT1MvZHEyYWNTNTM4emZQZlU4QmM3cDN6ZkVKSnNDMXZtNjFuT2UrWEF2eHkvZnVlQ0ZnOVpYaSs1eVYrc2FlZUFUQlVyNktFVmFreEhyWmo5VCs4YzhLcTd4K1ZyTjBteDlPeUJWVXBmUitVWGdSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSR1FjQjZnSG9VeHNzSUVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJDQnBTVGdQUURmTm5yTUIzRzlZaDV0R3c5dXhBTk9INmlYSXdXbmN5N09EQzJvUFJERzBHbzJCdkNYemFYVFhSdmhrTDNTZjk4L3RBWmJZWjdEL2Q0RCtMUjR6TysramVpR3VUeVhzeUxxSDZJTXp4Z2F3cjZJT2lMR091MFlJeXZQUlpGSnRybWkweEYxY2o2bGNHYU41eUVBM3RIODQxeHFlVW92MC9JMzNnK2tpMzJXK3RvOEh3WndFQUNLSGVRKzNyNklFRWFJOGlVdDcxZVVvT3lRUVV4eSs3YWJ6anNYOFhMczJ3RmNiNms4SXc5RjVkK1lrVzVXa204MXdteVBCL0REd2pLOFhOcnFYdFFJbkYrY1dmZURtdmY5VDFQYXZ3QkFBYlVuQWFBdlhldjVPWUM5QVh6SldJSG5FdWxrbFVPOEs0OUlZaStiR2R2Ylp2c2FnRjBBL05oWlRtNzJLTUY5eTRWaTcxekFOblo5ZWw1V3Z3QUEzMjN2UTl0T0tMeWtuMXRuUkx0WHlSK0pGTGkyQ2gzazlwM1NyVGFCUnlheExvcDNsRDRVeGFRUWJlNjgzSlpQdi85TUFNOHRyVEE0UFFXcUxUN0JMR0dYUFFGY1dDZ1VmajZBd3dEY1BLTnRVV3ZqWUhRcWJvSkF6bDV1RGpTTGVGNjNYSzRqdUFmS2RlcXlDbHpUSitSN1FYL2EraHdLNEJScjVobjVjcjliRkt4bkd5NUxndGovQk9EN0RqSHJTWE84Ni9sbEVIN2puajYvelE5cnhLWVlPSUFCS3VudjBuZjZOd0N2QUhCN2NQL1dLSTRCRDk0YnNQZEUyNllGTTRud3JkdDJXNEpWMUdDV1U2WjNYbHoxMzBhbU1mUXlpeEsweStsZnBkbVFnSGNmemJKZlllMkR5TDBzcXczTGxJK0JCN2tXS3ZsZElhSjkxakdWK3p0QXlkelU5MjBwOVhtaUJhN0ptejcrcHhzL2hJR3JEeW5zZ0ZNQjBDY3RFY0VzckdMdzVLVjlNcy9BcVBWVExnUytiK2ZrSnA2U3JzYjZvcTNHTzA5M3pSM3l1Ky9BZVdmV3FOOFZXT0NsQVBZRmNGdUVZV3RRaG1kZnV1Lzd2VWg4M3ZkcDZHL1RrS3lzUGdCdGpPcHpDdnAvRE1BWTd1SmZDNEFCV1g4eXBST2VuSUtUVGJPVGV6N25BZUJ2cnd4aTlxdWVUdlRPblNXLyszQXZoWHRwREtMWS9sWllJd0RjdENaNzFnSWxjNWVubmlIZnQxcDFsYkFxdGNIRE5uZXRVR3FUTjcxM1RsajEvYU9TdGR0a1g0eTF6NzFqUnZsRlFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVlGUUV4dkNqMnFpQXlCZ1JFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVJSHFCTHdINEZzRHgzb1FOMG9vbXBkQ2QwdGlhOVU3SlZWd0RJQWpBaXA3UFlCMzlwU3pEWURQSjVFSFQ1VmZUc0luRlBWWmhlZUJBSjZSTG8xU3BHbU1qK2VndC9jQVBubU05ZDJQNml2UDVhd29HMnFYNHhsRHRXMkxLajlpck5PV3NiSGliNHRuQVhoZUVLamNRQTZyL2w1WXZtc1U0dnVNOHhMbFRZMlkzeE1BVUhRNjU0bnc0U0xFYWlQc3NMNWZVYjdTQ3dDY25RTjlBV21pK0M3QTlPd3FyWmVabzc1RkVaZk02VE55SEZGUXNoWEF6Z2FRa1pCQ243eXMvY3VNdEpOSlBKZElKOHNhNGwySkVvb2VXdHduYWoxbEVYejNYQnB0KzdpZCsvNDVDZUlmWlJocmsxbk9TSUk5dktSZjQ0bjZCdFN3TGFMTVVuL0VJeVRTdFhjUmV4OFJ2RlRHT0FqY0Z3Qy92M3NZeldHUW1yY1lSYnVpQXAvTU1wMEJKeGpRZy90ZHYwaUNzNzhEd09BNDdmeHNuWE5uK1VJVU02V1ArdXdNbnQ5TUlxMlg5L0NMV2h0bm1LUWtEZ0lSL2ltcjV6dEpJZHNkSGJaUVRPOCtTZVRhV295MVBaNjV2cDFIR1RTbFZDaSsyODZJb0ZDenVIWDNFU2ljZG1QYW4vOENnT3NhSWVQdkdQMy9rbjZ5ZnJmYU9vYjJ1VXZhdG1wcCtSNVJyUDB1QVEwN0VBQ0RySFVmQm5PaWtQcERBOHBuRVo0NVBjaUVyR0s4ODJLcHo1NWwxTWdUZVpsWjk0QkdqbVVwelBQTXEyeGdUUUcwU1lEZStXa3BPaVRReUVYOWJtVWRVN24ybHV4MzlYMWJTdmZZWjlsNDcvUTdFUGN2U3gvTzVUY0ErRndUVUoxalBQZjVkUXErZlhWdWhpVkpWOW9uODVwbFhXOVlVTjNER1VDbjV2cUM3WW5hVzJkWmxuMXFDOU9vUEJSZzVWekZQdkkrdWQ4cGJ6MnJrdCt6TDkzMy9WNGtJNi9mTytTM2FXaE9WaCtBZGtiMGVjUitWeVF6Qm9iam1aMXB6MG5wdkdGT2ZmK2VncXFmQzREblJpWURXM2puemo2QjY3dW1QY1RYTkVHem56VmovMkhhZmtKTzIwclNlTllDSldzV1R6MGw3UmxyMnByQkhEeHN4em9IZStlRVZkOC9LbG03VGI0VFkrM3pzYjY3c2tzRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVRBUWtjRzNDcGt3aUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJT0F0NEQ4RzNWWXoySUc5VytIeVRSU1Y3a0d1cDVaU000ZlZwQVpYMlhGRmhGMUlXdkR5Vnh2OG1MRmdITkdLd0lYdHJZQmNCeGljdGdGUnNyOGh6MDloN0FwOGxqZmZlTk9QOG9tK2R5VnBRTnRjdnhqS0hhdGtXVkh6SFdhY3ZZV0cwSzRDSUEyd2VBNG5kN3IrYnk4eVU5WmQwTHdDY2NvblVCcGxZdnd2SmRvN2p0RlkxQTBNTWQxdVgyUVZ2RkkxTGdEUXAyV1I3V3QwOFMrN0xrYi9ORStWcWw3MWVVd1B2dGFkNi8xZ09oWWw2T0xRcWNVVHgzVlIvclplYW9PVHJ5a2puOXlBT1NEMDhod01objNnWHBlZlY0THBGMnl4M3FYWW1hczQ4RmNHUmtCL1NVdFhrUzBOak9XYWZsZmZCY0dtM05qUktCYk12N2VpUFF1Q2VBbTUwOFptV1hQL0xIWkR4Q0l0M1NLTFR6dUlwOVYybElxTmdSRUtBWU00VndYMjYwNVVvQW5BTnVNZVl2OFkzcEI1ZWUwOHo1UGx2bjNIbGxNOWdhMXhtY1oyWTlwNlE1ajhMYmZVL1VQTnRYai83dUl4RHBuNzRhd01rT2N6Z3YvS2R6ajlUYUhvKy9UOTltYndEMGs1N3VhUC9ibXJ4SE8vTFB5OHExQS9kMStOMnJGUkNrejNTdi84Q3h4U0EvZXVvU2VFQVNuNDRJd0hsTmVqZW16YmZlNzBXWEF0L0IzUUd3dmpFLzNublJzb2M0Wmg0NXRubVo1ZmhVT1hZb1RUa0J6N3pLMm9iOC9aZmlwTHNDNE5yZjh1em5EQXJhRFc1anFiOGtEMzJCdndXd1NVbW1pYlNsKytxT3FqYklhaDFUdWZhVzdIZjFmVnRLZjhPWVpXTnBPVjFnUEsvQnNmM1d3ZzVnd0JxT2FlN05ydExqWVRuSndicmVzUERjS2EzUk43SmtUdnNtaHhvRGUrVlUrZWptOTF2dXIxQ00zZnN3b05mT0tmaU90NndoOGpOQUtBUHdSRHo4WFlHL0wrakpJK0JaVi9aOXYvTXNxSlBLNi9jTytXMnFRMkIycVZZZmdDVkc5RG1EOFo0NWRLTm4xRGRQVU5uNnUrR3NNeVBldVhQYTJWSHVrVzhMNEgrbjRJbDlRUUtHOEV1c2UrenNvaEtCNjVJMUIvZncrTHRIRzlpVGZmUTNBTDZ5b0hISXN3ZzVRVEhubVZkVHJOelRoN2xyaGFIUmUrZUVWZDgvZWwzamY1NW83SlN4OXJteE9jb21BaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBdU1rVUhweFlweXRrRlVpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUxMUk1CN0FMNXQ2MWdQNGxvdkRFejJZY1FsaTlKeDRUMGMzZGFYY3hBNHFxNWx2dXpGUGZyZDBzVkNqMEJwYVQ5NzArZjA3Nnc2SXZwOXJPKytsMnViMzNNNUs4cUcydVY0eGxCdDI2TEtqeGpydEdWc3JEd1hSaWZaL3JRUnQzNGlnQnQ2b0VmNURWRjlXNk1jNjNmdEpBQzhtTzU1U2dSWm53L2dMRWRsWDA2aTVqOXpsTUdzVVdPaTlQMktxbmZzUXA2ZUM0RE9yaDBzdTlYUGpwcWphMXd5M3lvSi8xQUFJdXFaSjBRMnI0Nm9NV1R0cDlMMkR4bmtwOVMyZWVtanZrbVdPYWhFOEdkV0cxanZzeHJ4cUJNQWVJWHpLQVJGUWNrdlJRS2VLQ3VLZDBVVDNVV1hqb1VvdjdCRUFNRGRTQld3TWdTNG4zSjRJOVoxdkxGRkVTS1lGS1E0UDMxLy9oc0FBOVF4U0Fqbnp4dWJBQlJmQS9CakFIZHJBZ1I5T2dVNEtURTNaeDYwenJuenlpYmJ0d000YW9xeERORHk0dFMyM0xaRXJZMXo2MU02RzRGSS8vUlJTZURNSTVwb2E4VWZjbG5iNC9IMytWMmhlT0F4alRDWlZYeU9QZzM5K2V1OUFFYWMzL3ROT0JqQTZTTnUzeXFZeG5uZ1hRQmVFOVNZZVlHVElvVzBhYTQzZUVWUWsrY1c0MzBIU24zMklkcFV1dzR2c3h5ZnFuWWIxclY4ejd4S1pxVjd0NHZrN04wbjRWcmk4UUIrT0VBanJHdUlybW1MNmh2cm1NcTF0NlFmKzc0dHBmdElzMnowQk4ya3owUlJ4SWNXanF1YTRvT0Zwb1FtTCsyVGVaVmIxeHVsRFdML004RExJYVVaVS9wZkovSCtxNDM1YzdKRmZGTzY5VEJJN2dVNUZZOGdEZGQrUndUWlFmSGNzNFBLV29kaVBQdlNmZC92UmZMeityMkx0SDNNZFh2Ny9IN3B1N1REQ0JySlBlaW5BTGg0aGkwOGUzTjUybzh1TVpjQlpCbnNaZElYOWM2ZFhZRnJCdGgrVWRwcitKTUM0NFpZQTN2bXNocS9iLzE1T3BNek9lWVd0ZWZ4WjgxKzVhWE80T2cxT0hXSGthY1BjOWNLQmNNMkpLbDNUaGppM1FscHFMRVFENSt4OXJrUmhiS0pnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUl3RGdKU09CNm5QMGlxMFJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUmdsUWw0RDhDM2JNWjZFTmR6YUxyYjc3VVBkMDhiWTU3RHY5M3ljZzRDUnduSkxhdW94V1lBVGdQdzdDVjgyWFA2ZDFheklzYllXTi85cUs2MFh0Q09xbitJY2p4amFBajdJdXFJR091MFkyeXNYcDB1VTBjd3loVTdqcHBYSTJ5dVdZYmwwcmIxa21LM0hia0N0aFRtT3hQQWN4MFEzdGJrUGRxUnY4MGE1VXVXdmw5UlFVd29kcmhMRWp3TXdCRmVoT2RpZUxneGxRcThOUW5IWFZkWWZ0UWNYVXNBNDc0QVBwNkVTd3FiTmpYNS96U0N3ZncyWFZoWVdOUjMrNnBVUC91cjVsTWlYalBQamxyOU9xdk9xRytoeGJlT1lNYnhSV0dCcloyZHl3djlCNlN4N3l4cWJ2YW9jVjNUeG9peVMveVJxUG5pUTQwWU1FVmNPQ2IwaUVBdWdmMEJuTnNJTWQ4bE44TkVPbjdIS0xEdkhYY1U0K0IzbEtLMDBkL3JIUEVWNjdlcHIreEp3ZEZmQU9EK0c1bi9ycEI1MU5xNHNGb2xMeVFRNmNkdzdmaGhBSHhQRi9WWTIrUHg5MzhMZ0lHOCtQNVluMU5URUN2dnQ4bGEveEQ1S0FCSElUakxReTU3TmNIU0xyRmtWcDVzQW51bU5hQjFqdTFXeE1BSVQyM0c5VS9tMUU0L2tQdE5VUS9IMkhFQmMzeVVQWlBsZU9kRnkvcXRWbHVHS3RmTHJNL3ZHYW9kNjFpUFoxNGxyOUs5MjBVeTlyWjF5RE1CMWpWRWwrK2lnazliT2VlT3BaTDlycjV2UyttKzNUd2JyZTIrclZuMzNxdnd4WmdsY0ZsWXpDaVRsL2JKdkVaWTF4dWxZQjZjQW5oc1dab3hwZjhzZ1AwQTNHN01uNU10a2l2ckt3bkttMk5mclRRYnAvMW83cVY2SDY0bGR3UEEzMFAwNUJIdzdFdjNmYi96TEtpVHl1djMxckZxK1V2MTlqbjNSTjh6RWd3ZkJjQ0E1TCtaWVk5VmVIL1dmcFQzRzk4VnVPWVprM09NSEtQT21NeXEzdU1mUi9yeERLako0UGJ2YVBiTzdqN0QySGNEZU8yQWV4NFJRZEM0bjhlQXgrY1orejhubTZjUGM5Y0tPWFpFcHZIT0NhdStmK1RoTTlZK2p4dy9La3NFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFRms1QUF0Y0w3d0laSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUpyUjhCN0FMNEZOdGFEdUo1RDA5M0JFSGtJUG5lUWVRNy9kdXZJT1FoY2NrbDBudjFEWFNETVpaaVRib2QwNFVLQVRNY0FBQ0FBU1VSQlZPMUJPWWxIbUNhbmYyZVpIVEhHeHZydVIzV1Y5YUp5VlAxRGxPTVpRMFBZRjFGSHhGaW5IV05peFF0VjV3UFlPd0lRZ0E4MndwWXZ5Ymg4RlRXdkJwbGRyUmpMZkVZeFcxNVEzOUZoVmU0M2xSZm9QKzhRSXMydEo2Y3BVYjVrNmZzVk5SWVg0ZVBsY0czVGVDNkdsOVN6eUxUVzhSZzFSMXZlOTF4ZUR3WHdPUUFjcnhGUDdyZTZXOWV5dlN2THVpNkoraFphM29jb1poRmpsQUxYVHdGd2NVUmhjOHFJR3RlVnpYUVhYL0o5aXBvdlN1ZGpkeU5Wd05JVGVHenlnVGN4dHVUU0pMeDdTMkYrMWtmUm9WOFc1ck4rcjNPQ29saS9UVG5DTGhRYzVmdEpnUk1LMkZIazJ2SThCc0QvdG1SVW5rRUovQjhBL3hKWW8wZTBKc0tNa3Ztc1cxK1V2MjlwdzY4QjdOcnN1Vnh0eWJ3a2VYaGUvU3dBenpQYVN3RnhCdnE2d1poZjJmb0piSlg4Nm9mM0o4MUtjVkRxODNtSnJmUGtyREw1TGowNWlVRm1HVGx3SXUrZXNXWDlObkFUdzZ2ek1zdnhlOEtOVm9Id2Z2T0pjRm5XaWhIQlBiaEcyUmNBQllsclA5WTFSTmV1cmxoaGJYc2pmTFhjc1ZTeTM5WDNiU21kMytiWldHS1h0ejlxQzBoNjdmUGtMKzJUZVhWWjF4dWw5bnVERGgrWWdnK1YxbHVhUG5JZE5mYmZ6MW8yM3Q5TXU0eS8xd1NZZVJ5QW0wdkJyM0Y2ejc1MDMvZDdrVmk5ZnU4aWJSOXozWjQrNTVtK3k1cDFMWDk3cmZsOFArMDd6enREMkxjVzNCVEFSUUMyTnhoS1AvU1RVL0o1NTg2dXovakFadC9yaW1aZXN1dzMxQTdBNGZHUG8rYXQ3ZEw1S1o0bm5mY01GZlMzdFdIbkZHaHVJOE80YXJOOE9nVXFyaGx3dzlPSHVXc0ZCd0pUVnUrYzBQZk5NQmsxb2t3ZVBtUHQ4eEhobFNraUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaTRDY2dnV3MvUTVVZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlKUVJzQjdBTDZ0YmF3SGNUMkhwcnNrb3c3QmwvU081L0J2dDU2Y2c4QlJsekdIdWtCWXduRmVXb29yZkJTQVZZZ3B5ZzVQT1RuOU82djhpREUyMW5mZnc3U2JOL0lTYUpSTjBlVjR4bEMwTGJYS2l4anJ0RzFNckR5WFJhZHhQcmdSWUQwOW93T2k1dFdNcWhhYXhEcWZIZDJJaEwvVmFYbE9YM0QrNHFWSTYrL0xGT0xlRDBERXhiVW9YN0wwL1lvYWk0dnc4VXFHU1BTN1hsTDNVR210dmtUVUhHMTkzM1A1UlBuWnJDOUhYSFBTcnFoMzVVTUFLSzc1UDdrTk42YUw0bFc3WHllYkYvVXR0THdQVWN5TVhmWkgyYjdSQkdIWUU4Qk5VUVZPS1NkcVhGYzBNYVRva25FY05WOVFPUGZZRU90VnlEb1EyRG9KYjI1cmJPeVBrNERzVnlmeWJ3eUFJaUFQQTdCRkkrangxeW13Q3dWQitQL3pIeC9PUzJjWDFtMFZGOG54R2EzZnBoeGhGd1k0b3UzL1dkaGVKUmNCRW5od0VwZWw2TmNpbnBMNXJHdGZsTDl2YWZPSEFWQU1tRUw2cS9wWXY0Y3REOHZhWkZWWjFtalgzVk5RZzVjSEZYNHRnS2NDK0VsR2VmVGxMd1J3bDR5ME9VazR6Ky9lQkZqNFVVN2lnZE40OTR3dDY3ZUJteGhlblpkWmp0OFRiclFLUk1TZUJkZUpYQytPL1lsb2Erayt0WWRKeEZwZUF0ZEEzN2VsZEZ6TUd3T3ZBM0NpcDlNejg4NWFMMmRtSDMyeTBqNloxeURyZXFNRWtqZkFiVzB4MEc1YklzZm9zZ1MxOGY1bTJ1VTNaSkNEa2pFNDVyU2V1YXp2KzczSWRudjkza1hhUHVhNnJYM09NeEZ2Yi9acGpocWdjZHdIZmphQU56YkJGZDh3bzc1M0EzanRuTjlNR1JEc2NnQU12bEx5OEhlMUp3Q2cyUDdrNDUwN0ozMUd6N21XbWtFYnJIdnM1Sld6aHordlA3Z0hmM2h6Qm9kQlJuS2ZvWHcyK2lLZkFrQ1JhK3N6VkJBeVR4OE91UllyNGVpZEUxWjkvOGh6Vm1Hc2ZWNHlQcFJXQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVaUHdIb0JlZlFOazRFaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFLakplQTlBTjgyYkt3SGNUMkhwcnVkNWowRWJ4a0Ezc1BSYlowNUI0RTlCNDI3YlJ2aUFxR0Y1YlE4andWQWdjOWxGcmRtdTNMNmR4YXppREUyMW5jL2Fwd3NVa3ducWcxOTVYakdVRi9aWS9sN3hGajN2bStSTEtJdjhQMDhYWVM2UHNQSXFIazFvNnFGSnJIT1o1NUx2RzJEUHc3Z3VUMUNXc2NBT01KQnlDSUdPS3U2S0YreTlGc1VOUllYNGVPVmRGM0VtQ3FwYnhGcHJiNUUxQnh0ZmQ5eldXM1RpUDErUGdsMDV1YVpsYzdDS3VwZEtYMUhyVzFkMW5WSjFMZlEwc2NSekZqdjN3UGdCZmNJSWJ0UE40THNCd1FGVXBnMmxxTEd0WFdjRHBXdjVQc1VOVjhzU2hocktLYXFKNDdBVmdET0IwRFJhZXZ6QVFBM0EyQlpITU4vMG9oNTNyK2dzSkozcEMzVyt2M0k4Um10WlZ1RlhRcFFLZW1hRStBZUF0KzNGeStJZytWZHBhbFIvbjVwczJ1THZVVE4yYVh0VXZyZkUxaVdiKzcrQU00TjhzM1o3aEx4S1lwck00QUVCYjJpbmpNQUhOS0k0LzRtcXNDZ2NyeDd4cGIxVzVEcEN5dkd5MnhaM3NHRkFhNVVjY1NleGJLc0ZhMCtlUmY5KzV0MXlzc3E5Y1Zrc1JGK3dlc0J2SE1nZTd2VldIMjEzRDNHa3YydXZtOUw2VHN3ejBidmR6QzNxMDV0QWxNY09rQ3d3Vng3b3RPVjlzbTgrcTNyalpJMlBRWEFaeHhCWnltVVNTSFJJWjVJc1dmYW14T1VkNGgyemF2anBQUytSTmh4TW9ERElncGFvekk4YzFuZjkzdVJHSWY2M2kreWpZdW8yOXJubGtBREZJbG1zTUFkQ2h2YTdnUGZCb0RmVkFZQTNyeFR4dmNCUEtrSnZuampuSEt0MzZVUE52c1dMNWt4LzN2bnprbC8zdlB1UmdaVG44VG84ZWR6OXZCbmRSdkh5VGtBSGxJNFhwaWN3Ukc0ajNPTElXOU9GdTd0c3YrOHdXbjdoTmx6Yk1sSjQrbkQzTFZDamgyUmFieHp3cXJ2SDVXczNTYjdaYXg5SGpsK1ZKWUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlMSnlBQks0WDNnVXlRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBVFdqb0QzQUh3TGJLd0hjVDJIcHJ1RHdYTUkzanFvdkllajIzcHpEZ0o3RGhwMzJ6ZkVCVUlyejI2K3JRRmMzQWcxYkJ0UldFWVovdzJBbDF5KzNnaTlmUTNBTlFDK0FXRFRKQWgxajR3eVppWEo2ZDlaZVNQRzJGamZmUWZTd2JLV1hQNzI5UE5nRFJweFJSRmpuYzBiU3o4OEZNRG5BSENPaTNoSzVyaW9lVFhDN3BwbFdPY3pmczhwOUxlM3d6aGV0dHdad0xkbmxNRzU0eUtIbUdCZithV21SL21TcGU5WDFGZ3NHZitsYkNMU2V5NlhSdFEvUkJsV1g2SmtIcDNYRHV2N25zdm1iZ0ErbkM2MjV1YUp0RGZxWFNsOVI2MXRYZFoxU2RTMzBQSStSREJqdlhzMGM4K0xrbWlKdGYrNitXalhDWldFZUtMR2RVUTdhNVpSOG4yS21pK1dSYlNzSm5lVjNVOWdNd0FmQTdCYmY5SnFLU3pmU3hwRE1lMHZBdGl5MExLY0lEVFdiNU5WMktXd0NVcSs1Z1M4Z213ZWZDWHpXYmVlS0grLzFQYWFJajIwSldyT0xtMlgwditld0xlYVBaWEhBL2poaUlFOEVzQVZFd0phSG5NdCt4N1I0NVMvanpBQUR1ZlRNVDNlUFdPclB6SW1CcVcyZUpuSjd5a2xIcE0rWXM5aVdkYUtqMmlFQ0s4Q3dEV0w5Um15clJIZlc2dXZaZVhUNXJQNmFybDdqQ1g3WFgzZmx0SjNZSjZOVHdSd09RRHUrZFo2MW1GK0tlMlRlYXhydndQczZ6TlRZRnBMbjVjRUdiYVVQNW5IdXU4eHErN2E2eU52bXgrWWZPZUhld3RLK2ZjRjhNbWdzdGFsR00rWXV6WDlKbjdkQ0dGNS9kNFJObWtVSnZYTjJiT010UHpXeW1BUjl3RndVR0hMSjlmUVd6VG5jazRId1BtR1Q1K3ZTREZzbHJGZFliMU1QdThiNUowN0orMzJuR3RoY0xoZG16TXhWeHZhMkpmRnVzZk9jaTM3SDh4M1pPUGJ2YVBQc0o2LzF3enN4Yk5EbHpRQzF4czViT1IrR0g4SC9vNmpqTnlzbmo3TVhTdmsyaEtWempzbnJMcC9YN0oybSt5VHNmWjUxTmhST1NJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJd0NnSVN1QjVGTjhnSUVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVZnckF0NEQ4QzJzc1I3RTlSeWE3ZzRFWG9iZEJ3QXYyQXoxZUE5SHQzYnlJUDZ4UFVaN0RocDNpejQ0WGV3WWlwR2xIbDU4T1RsUXVLMjE0VGZOaFpaL1R2LytDY0IzazVqMWo1c0xMcithWVdqRXhXWFBRZStJTVRiV2Q5OHlOb2JPVTNMNTI5UFBRN2RyalBWRmpIVzJhd3o5d044VDN3N2dxRURRZlpmd3VsVkZ6YXVCNWxjcHluTWgvdFZwbnZFWU51L3lvbmZ1K0NDQWx3UUtqa2I1a3FYdlY5UllaT0NKWFFCd3ZoN2o0KzN2TWJacDBpYXJMMUV5ajg3ajRIbmZjL2tlQWVDWTNNUTk2VXErMlN3cTZsMHBmVWV0elkxYWwrd1A0RHlyRVlaOFVkOUNCaUY0SElDYkMyeUlZTmEraHhUNll5Q2dDRUVRaXRoUlRKUGxSVDlSNHpyYXJ1anlTcjVQVWZORjZUY211czBxYnprSVBCL0FXUXMyOWFlTnFBT0Z4VzRvdE1QNnJ1VE1nOVp2azFYWXBiRHBTcjdtQktKRnYwcHdsc3huM1hLOS92N3RBRXFEQ3Y1UCtnM2d3cElHRnFhMWZvY0txMUh5R1FTc1lrZERBYjF2RW9HbTZGREVZL1hKdWYvNExnQ3ZpVEFpbFVGeHg5MGJ3YTZ2QkpicExjcTdaMnpkei9EYXZjajhYbVlXdjRlL08zSmZSVTgvQWU3NVV2aHM4b25ZczFpV3RlS1RVM0JJejcyc0lmZVVJdndDcTYvVlA2TG1wN0Q2YWpscks5WmNzdC9WOTIwcGZRZm0yUmpSWjMzc0dTeVJZcHkvN1V1NHhIOHY3Wk41VGEzOURqeXFFWVM4RXNBbVJ0NUQ5K2ZHeVovazJhYUlwNmFJYVlSOWtjR2NmdERzWlQ4aEJjV0pzRzFkeXJEdWg1SFBtUDFwcjkrN0x2MWYyczYrT1h0ZWVTVy90YmJmTHE0bFhsaG81TFI5ZzdzbjM0VDc0bnVsODRDemlyVitsMjVLM3lEK1RqanQ4YzZkMC96NTV3STRwNUJQbS94dHpYOGNiY3c3TDV2bm0yTGQ4NGtRa0c3OTErakF2MXVuMzFtM2RiSitGWURUbkdYa1p2ZjBZZTVhSWRlV3FIVGVPV0hNODEwRW81THY4MlI5UE1OOVdJUVJLa01FUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkdBMkFjOUJLbkVWQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVFzQjd3SDR0czZ4SHNTbGVNY1hHbEhTYlN4d09uazhseXlzVmI4T3dJbld6SjE4T1plT1N5Nkp6ak1wUjB3N29FbXVJdlpzUk9Nb1VuSVhWeW0vei95TFJpamxlQUFmQXNETEpoUkJLWGtpTHNGNkR2ZDdEK0N6cldOOTkwdjZZVkZwU3k1L2UvcDVVZTBiVTcwUlk1M3RHVU0vUkh3M3VuMURjUmxlMkxvK3M4TThsNUV5cXhoRk1zK0YrRWNBWUdDTXpSd3RtWGVKeHlPZ1hVT3NLOHFYTEgyL29zYWlSVXpXMGJYRldhUGYrV0lEQnNoZzlTVks1dEY1emZDODc3bDRYaGw0YVRUSHQrL2FGZld1bEw2anVXd20wdzI1QnJMYU9DM2ZJdGVkRVd1NTduc1l1Vjc2QmdDV3g3VlM1Qk0xcmlOdHFsRld5ZmNwYXI0by9jYlVhTGZLSEQrQkNIL1gyMHJyUHAxVjhDN25rcjMxMjJSdGk1ZWg4cThmZ1pNQUhGclE3RyttNEZyUGFNVGtuMU9RYnpKcHlYeld6ZXZ4OStuYjdBYUE2OVhqQU95UWFiOVZDQ2V6K0R1U1JjM1pKWFVxN1I4SUROSEhWdDQxUktVL0NvQUNYQXpPV2ZvOENNQmxUVkNMaDVabW5KUCtVZ0FVanIwbHNFeFBVZDQ5WSt0K2hzZm1SZWYxTXJQNFBSRnIza1Z6RzZyK1dYTnV4UDd0TWdRNEp1ZUlQVGlLd2w0d1VLZEYrQVZXWDh2YlJLdXZscnZIV1BydWYzK09JRFRQQkhDOWxuczJZSjZOMW5WZkx1K3hpd25udHFNdlhjUjNxYTJqOWp0QThjNjM5alZveHQ5ci9DYVhZNHJuZDhScDVROHQwcDNUUnFaaFFLUHpBZXlkbTZFbjNjY0JVT3gxbGNYbGcxQnRVSXpudHhHeTV0cWR2NnVQN2ZINnZXTnJ6MWpzc2F3SFd0dWZtUVQ4YzlyeVdRRDdwZDltSXdTdVdTZlg3UGNFY05zY0E1aUcrOGlINUJnNWthWXZTTGwzN3B6MjI0OG5JTjdYQWV3S2dJRnpJeCtQcjVXejUwT3g4cmVuczE5dDhFejJHLysvb3dJYThnWUE3elNjSDUxV2RWUVFOQVlpNXZ2enk0RDI1UlRoNmNQY3RVS09IWkZwdkhQQ3F1OGZXZGVHN0NQOUxoMDVVbFdXQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ013Z0lJRnJEUTBSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFSUdoQ1hnUHdMZjJqdlVnYmxUN2ZncmdpWTJZUjN1NGZZaCtPZ2JBRVFFVjVWenFpN2p3UzFNcDlQeUNvSVA2QVUzL295THVCdURNZERITlV6NEZJWGl4Z1JkVGJuY1VGSEZ4MlhPNDMzc0FuMDBmNjd2djZKYkJzcFljOFBmMDgyQU5HbkZGRVdPZHpWdDBQMFJkWU9wMjFXZVNzTXl2TXZ0dlV3QVhBZGcrTS8yc1pMejR4N2wxck05TG1ubi9FcU54bkd0NDJadUNQZGJueTAyQWpyMEEvR3lpZ0kzVHhVMktiRmllV2VWYXltcnpSUGxhcGUvWDVzMmxaMTVTM001amZKckhkd0Z3cmJPY1d0a1pwT1h6elFYY0xad1ZjQ3dOZFdteDFGUUs3Vk53Njk4S001Yk1vL09LenZHVkMwMzdvK1JSOHhBTExyM2s1N2xFMm0xSTZUdHFaUmJGS2tlSTFHcmp0SHhSNzJyTzVldkora3NGZjZiWjMvWHBvNFgxYWx5Y2xqL3l4NzBZc2JhMGZHTWkzeU9WdFR3RW92dy9UNHUvQm9BKzNJOExDeWtSUXVrV25UUC9XdWRjajdCTFlmT1ZmTTBKY0cvN2NnQmNzODU3R0JpUS9nWDljd3F5ZWYxdXE3L3RxWGZTdC9tTFJ1ejY3MUxnalhsdFB6Q3Q1MnNPbGFnNXU2YU5xMXoyVU9zYUMwUHVJNTFiSUw3WlYwZkV2ajEvNitIdktaSFBHVW5zeXlLNkhXa0h5L0t1UHlNWVI3ZXBkbmxlWmhhL0oyTE5XNXZMV01xZk5lZEc3S05hNS9PaDJaUUc5SmkwYitqMzJ2dE84VGZxUmUxdFczMjEzTGw0a2UvK1BCc2ozcWQ1NzhWWWhZU2ozK1hJZllXYTN5ZVA4Q2VaWFpQRWw0Y083aEc5NWhpcjhIcGtvRWIyRjMzZnM2TUgreHFVNTMyZmE3N0RIdnplT2RwVDl5cm50YXdIV2g0bDM3WjJmOGZpcjFoK3AydHQzREw5cnIrMW9SUDNCZkRKT2ZtODc5cTAvVzJQSURkTnJiR1BadDFqcHoxOWZjZkFDUHo5K0hsVGZHaWV4Zm9VZ0owTmZkZk44dDhBRGlnUVk1OVZIZnVHZlhhczB4NmV3MkFnaUM4NXl5bko3dW5EM0xWQ2lUMFJhYjF6d3REcnpJZzJsNVJoK2RhMjVlZjg5bFppaTlLS2dBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaE1JU0NCYXcwTEVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJDQm9RbDREOEMzOW83MUlHNkV5Q1RiK052bUlQeHVBSzRhcUlPR3R0dDdFTHZGVWtNNE14TDVvd0JjQ1dBVFI2RTgvUCswUm5qMEM0NHkycXdsRjNCbVZlYzUzQi9SNzJOOTl3TzZwM29SSlFmOFBmMWN2U0ZMVUVIRVdHY3pGOWtQL0IzeGNBREhCL0ttVU5XekFKeFhVR2FVMzdEcWwxU2VDK0NjQXE2VFNXZDlXNzBDcW05cktqcmFZZGUwckZGam92VDlpcXFYYlJyenBYWFBCY0J1ZjQzMWdyaG5PSmJNby9QcUdZSU5CYnpQOGpTMms3ZjAreGsxaGtyZlVXdHpjNFVYKzhyL2VBcHF3M1hjRU04aTdZNFEvSm1jZHg0QTRESUFqd3lDUnh0UENBeUVGRFVIbEw1UFFUaXFGQk94dHFSaHE4U2tDbWdWZWllQnFLQnNWcVI5WWhXenltVWdPZHBlK3VUNGk5WTUxeVBzVXRvT3BWOXZBaFJxK1N5QUhhZGdvRGdpQlY3K0ZzQlBKdjd1OWJ1dC9yYW4zbGxyNmdjRGVBdUFGMDlod0tCSFQ1M1MvdWhSRXpWblI5dTFMdVVOdGE0cDVmblk5SDU2ZnJlWXJQUGRBRjdyOU1IcGQzUGZrT0tCa2M5QmdXdGtqMTNlUGVOMS9HM0V5OHppOTBTc2VUM2paSm55enBwenJYNXF0KzNXK1h4SWZ2Y0M4SW5tZCtBOUhKVmF4cWlqdXFVVzJyZjZhcmx6OFNMZi9YazJSdTFKVFJzM1l4VVI5b3p4V1hrak9kYjhQbmwvNnpzVXdDazFBUGFVU1FIUDg1T2daVlQxbjA2Q25aN2c3MUcyc0p4b1AvVjdTZFQwMjVGR3JrbFozdURNQndNNGZZU3N2SDd2Q0pzMENwTTh2aGFERHZDY0hzOUx6SHUrRG1CWEFEODBCbTJ6N2p2VEp1dThjUk9BSndEZ3Q2alczRG5ydDUrZEdsNVhORUxLR3hsR1NJM2ZZajFybDNsOTE0cGJ2elMxYzVyL0VMVTM0eFc1NXRtdzE2VmdmWVp1MlNBTGZ3ODV6cmszVkdxRHB3OXoxd3FsTm5uVGUrZUVWZDQvOHZyMU5YMTViNzhydndpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0Fpc0RBRUpYSzlNVjZvaElpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSXJBMEJMeUhUTnVHanZrZzdrbU5NQVV2ajNtZklTL1diTjRJYXZQZy9YWk9vMytRTGtGOHE2ZWNIVko5UE5EdmVjWThEdGd1NzJWWTd5V0VTYllSZ2lhZXcvM2VBL2hzejlqNzNET2VhK2N0dWZ6dDZlZmE3VmlHOGlQR090dTV5SDdZdjVrVHpnVndsMERnMTZUTHpiY1VsTW5mTXluUytyeUNQTk9TdmgvQXk1eGxqRGs3UmJNWVVHRkxoNUhUTGhueWNnOUZPaXhQcmU5MWxDOVorbjVGalVXeS9DQ0Fsd3g4c1MrM0QrOE40RE1BS0o3cmVWNFA0SjJlQWthWXQyUWVuV2YrRUpmbXZENW8xLzVTOFZuUEpkSnV2YVh2cUhYSVBDSUZGZHJNV2tESzl6VUF1d0Q0c2JPYzNPeXZCSEJhYnVJNTZZNEZjR1JoT1JIamE5b2NRUkc3QzROOEQ2Nmo5Z1B3eWNLMnpVb2VOUWVza2o4U3NiWWs3OUp2VEZDWHFwZ2xKUEJrQUJjQldOUjVSNnZRaU5WL3lQRVhySE91UjlobENZZU9URjR3QVFZOGVtdkhobTgyZ1IyUEFrQkJtdC9Nc00zNjNyVEY1YncvMDZyMjFOdTMvdVg3eWlCaXIyNUU3KytlS245VmtEL1gxOFZSYzNaZlBmcjdkQUwwdGVsemorblp1dmtONTJJQTJ3WWFkU09BM1FGOE42RE1uWnM5aVV1TVlsZXpxbWNRMGIwQmZDbkFQazhSM2ozanZtK054N2F4NXZVeXMvZzlFV3Zlc2ZLTXRtdmRCYTYzQXZCRjU1NDhBMTN2QStEVzZNNlpVWjczblZya2Q4anFxK1h1TVM3eTNlK3owZHIydm1IRmZTcWVSeGtxWUYrZlBUWC9Idlc3RW0yMHJqZjYydWNWaVY2MFlETFhPZ3hpRlBVd2FQS0JBRDRTVmFDekhMNHI3M0dXMGMxK2FqcFR4bmJxS1NmZytTNk9jWTFHQXQ0NXVwemlldVN3ckFkYU1ybkJUTG9CdnkxajA3cnZmRGNBWnlhUjY5TGV6RG1yNEowN1ovMzI0eW1YYTN2dUdWeGYydUE1NmExNzdDeHlWdDlOaWxzejdUUWUvSzJEKzRYSEI3U0grNndVUEdmUXNOSW42bXpZcFFCWVZzbDVzRkpicDZYMzlHR2ZIejdQdnZ1a3Zhc2Fad084YzhJaTEyMFJmVHF2akUzVGI0WGJHeXFpMzdWWDJuYzBaRmNXRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJDQlhBS0x1dkNSYTUvU2lZQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSXJCNEJ6MEgxTG8weEg4U05FaHZMdVZBUU5VS2loQzV5TCtKdUErRHpqWWpIRmdFTkdLc2cxc1pKcklVWGs2M1Bod0VjRkhpeE5FSlkzSE80MzNzQW54ekgvTzViKzNtb2ZDV1hxVHo5UEZSN3hseFB4RmhuK3hiVkR4U1AreWlBVFlJaDh5SXl2MnVsenpFQWppak5OSkdlbDZuMmJTNkkzZVlzWjZ6WitidnZCd0M4MkdFZ1JZMTU0ZXhYcVF4dm1aOU40cUszTzJ5YWxqWEtsN1M4WHhGamtXMjZLUVVFb2VEQTJCNWVodVY3eXJIZ2VWWkp4TFhsVURLUHptTlhTd0NqclROS2lMY3RyOVRYOWx3aTdYS3p2S09XTVJzVjZHZElIOVg3ZmU1eTRydGVldGs1UXZCbkdpKzI2MTBBWG1QcHlDbDV2dEdzT1NtYXpXOXV4Qk14QjZ5U1B4SzFoMUQ2allub1M1V3huQVFZeUlYN1NCVGxYTVJqRVJxeEJnN0puVk9zYzY1SDJHVVI3RlhuY2hQZ2ZIRlpJeHp4aFJRSThOOHlBdjE0L1c2cnYrMnBOL2U5cGZESllRQ2VCdUFaQUg0NFFQZEd6ZGtEbUxxU1ZZek4xN2x2K3MxaWoyRGEvQTJEQWVvaW51aDFRV3RUOVByQTBsYnZubkh1dDhaaTIxanplSmxaL0o2SU5lOVllVWJiVlZQZ21yK3RYaEJ0Y0hCNUVVRjRQZ1RnQlJuK1VaVHAzbmZxcHlrdzRnMVJCaFdVWS9YVmN2Y1lGL251OTlrWXNTYzFpWHJkNXBTbzM1WEkwYnJlNkJ2dU93RzR3aEhrWTlHQ3lSR0JlQ2NaZmI5WlR6NnArVTR5bU1vaW4wZW12dUZ2Q1JIUHI1dnlkbTBDc0Z3ZFVkaWFsc0Z6QS93MldwNitiNjZseklnODNqazZ3b1pWTE1PeUh1aHllRjhUeU9tbGM4Qk1mcWNzL29wbDM1a21XUVA0VXVDVnZqWUR6czU3dkhQbnZQMFFUMUNFcnFCNHhKaTE3ckd6N21sOU4wM2NtbWxubloxZ0lMeXpBVHc3b0RFTS92czhBT2NXckMrNFI4bjA5M1RXdjhqQVlwNCt0TXdKM0xmYUxRVzFQd1RBcDV6c3BtWDN6Z21yN090N0FrMnRNcGNLdzFCRmlvQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQ2RnQVN1N2V5VVV3UkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRXdFYkFld0MrclhYTUIwNmZDT0J5QUJRSTlEeGZUeGViaGhDNmlCTGx6aFV6dElyOFRPTjVUWFA1YTI4QXQzaGdWOGo3d0NUZVFqRnZ5NU43cWFTazdHY21BWXVTUEpOcExZZjcyeks4Qi9CWnpwamZmUS9YSWZLV1hLYnk5UE1RYlJsN0hSRmpuVzFjUkQvVUVyZTJYc3dqaCtjSGlPUlFTUGh4QUc0ZSsrQngyUGNVQUJTcHR2NEcvSU1rdXZ5dFpJTlg5SlhDSEx5TUYvMUUrWktXOXl0aUhtMTVXQVhmbzNsT0t5OUNNQ00zNk1rUTdZbXFvMlFlblZkbkxRR010azd2dXp0cGU2bTlua3VrM2JvdDc2aWxyNk5FM1ZuM29RQk9zUmhSbUNlcWoyOEZzSE1Uak9DNnd2b2pCSDltK2ZUM1N3SldETXdUOFZCUW1pTGVFV3RGK1NNYjlraVVXT2JZUkI4anhwM0txRU1nOG50dHNkQWlQR2U5YUQvcGw4K3kxenJuZW9WZExQeVVaMzBKM0JYQS8wcjdlYmtVdkg1M3FmL2EydVdwZDh6N2xWRnpkbTcvS2QyR0JHcnRqVmc0VXpTSndvY3Z0MlNlaytmVEFBNW9ST3dqQTV4eERyMjRDY0QxOEdCYkk5Y0hGdE84ZThaai90WlllT1RrOFRLeitEMFJhOTZjdHExQ21sbHpydFVQYnBrc3kxaVAyRU05c2hHelBYYkF3ZkE2QUNjNjZyTzhVNDdxTnNocTlkVnk5eGdYK2U3MzJSaDFqcU1MOU4zTmZ0bHJDOFFQby9weFVlVkUvYTVFKzYzcmpYbHQ1Kzk2SndPZ1NLTGxHWU5nY3EwZ0pZdjIzMm9FaUtrVklOZ3lkcFkxajJldmZxeEJLTDErNzdMMlpXMjd2YjVMM3h3OEdWekE0cTlZejlGWVJhSnp6Nko2NTg1NXYvM3dIQ1dEV1c1aEdBQmZiczVpN3RVRXkvMlpJZSswTE5ZOWRwWTEyWGV6eEsyWmR0NjNoMEU5dVFleWJVQ2JLSEpOVVhhT1JaNDduZmRFbmcxN2czT2Q0V202cHcvNy9QQkp1eGk4OExnbWFPR3IwaDhPQm5DNngvZ1plYjF6d3JLc3FTM29QSHZkNjNCdTBNSlVlVVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVFnbklEMWNuTzRJU3BRQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJnYlFoNEQ4QzNvTVo4RUhmTGRCQ2ZCOUE5VHcyQjQybjI4SUQ5K1VrazJtTXY4NVlJTnJ3dkhhcjMxc244WXhTSjlCeW9acHR5QlkxSytKMlVoUGRLOGt5bUxUM2MzODN2UFlEUHNzYjg3bnU0RHBHMzVES1ZwNStIYU12WTY0Z1k2Mnpqa1AzQTN3MFBBc0J2TXdWdkloOWVvcUw0TWk5bFdSNktYUEp5R09jcjZ6UFVuR3ExTHlJZkF5dGM0UlQvMlJmQUo1TXhub0FkdkJoRTBkUnZSelJzb293b1g5THlmajBhd0pYTjVUd0c2dkErWXczUXdYWkZDSG4vUEkyQjY3MmdScFMvWkI2ZFozWU5BWXh1ZlY2eCsyNVpGQ2piQmNDMUJmM2d1VVRhcmNieWpoYVl1VUhTS0FHYm9ZUXBvdnJZZWdrOGd0YzhuNTd6eHlXTndOTkc0YzM1ZVFBQUlBQkpSRUZVMWc2ZHlFZDdUOGk0eU4xWG5meVJEUWw1MTd0dGFSSzQ3aHQ1K251WFFKK2dTRTFhbG5tSkFoRVhHUUxRZkMzTnZ6L3VhWkIxenZVS3U5VGtyTEpGZ0FTOGZyZlYzL2JVTytiOXlxZzVXNlBUUnNBNkhtMjF6YzdGZmIvRG03MjE0NE1MNXRwL2R3QmZDUzZYeFQwSHdEbUdlYlRQbERPU2VPUnYraEpXK0x0M3ozak0zNW9LdU80bzBzdk00dmRFckhscjhSaGJ1Yk8rY2Q2NVp4bkdldFFlTllOeW5UZGd4M3JIdCtXZGltcWUxVmZMWGN0NTJYamEyV2ZqVTFOd1UwOGQzYnpmQi9DazVsekhqVkVGTGtFNVVlOHNtMXJEdjN0dyt1Mko1NHdzejFENzBuMjJQU3ExWTVPK2hJVi9YNVQvTmsrb3RMQUpkeVpmaDkrcnJXeEs4bG4zM0ZnSEF6MC92aEVuL1dGSmhRT2s5ZnE5QTVpNGxGVjRmWmQ1WTIzYWIrRVdmOFVpY0UzeGZYNzdkelQwQ2dNcUhKYVJ6enQzenZ2dGg4RXN6d1R3M0F3N0pwTkVmMGV0ZSt5MHE5dDNmVUhGK3ZiOEg1djZOR29PZlhQYUE1cTE5L0UwQU9jQ3VLZWhEeWF6ZkJEQUt3QXNZcCtGdG5qNnNNOFBiOXZLZlRWK0R4Z0lsWUdvMjZmV2I1emVPV0VaMXRUV29lZGhZejBiWWJWVitVUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUmdiUWxJNEhwdHUxNE5Gd0VSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVJR0ZFZkFlZ0c4TkgvTkJYQjdFL3pBQVhrcjFQaXlIZ3FPLzlSWTBKLzlPU1JEVEt5RDIwMGFJakdLWU4yVGErbndBWjJXbTdVdjIxU1NrOEtPK2hBUCszWE9nbW1aR1g2emFOQWtyYmU5a2tIdTRmMW8xWGlZc2M4enZ2aE50OWV3bGw2azgvVnk5SVV0UVFjUllaek9INm9mN0FEaXV1Y2o1cWtwc1QwdmkrdGE1ak1MTlgyaDRiT08wYjRnNTFXbWlPN3Mza0VIM1FxTkgwT0hVMU9lOFlCajlSUG1TbHZjcmFpNXRtZkNkNC9zeHRpZEt5UHR0VGNPT0hsdmpIUGFVektQenFxa2hnTkhXRi9WK3RPVlJyUDV4QUc0dTRPYTVSTnF0eHZLT0ZwaTVRVktQb0grM29GODM2NnBkbThCQlYxc055Y2pudWZROVdYenVKZmJKZko3NW9TMXJuay9QczB4dmI5YkFSMlh3eUVuQ1FCc0hBUGg0VHVJNWFlU1BiQWpISzFqV2xsYnI4cmV6dTVWOXBBU2l4cDJsZVpaNXlmcTl2TFFSQ21YZ21kdDZETFhPdVY1aEZ3cy81UkdCRWdKZXY5dnFiM3ZxSGZOKzVTSy9uU1g5dnFwcDkya0VweTVZY09Qb1g3OEl3UHNiUC9zdXdiWWNrZllVYSt6L1VCenFiQURQRHJhWnhYRXZob0plUTRzdmVmZU14L3l0cWRCTmR4VHBaV2J4ZTZ3K1hDMEdZeTUzblFXdUkzNWJ2elVGQ0x4dXdFNzJqdS9vMzY1TG1tNzExWExYY2w0MkpXMlpUTnRuWTdRL3Q0NTdNWkg3NXRiMXhyd3g4bW9BM0t1MVBtTUpCaysvODEwQVhtTnR5Sng4cHdONExRQUc1UnppcVNGdVRicy9uZmFxaDJySEVLd1dVY2NqR3FIUnF3QnNacWg4RWZOdmpwbGV2N2ZHdHluSDdpSFNXSDBBMm1aWkQzVGJORytzY1kxOThNUjVUb3V0Rm9GcnF5L0s4enE3cGZlbnIrKzhjMmVmditFSjVrdEI1WmNFQkxZbEErc2VPL08yZmZkL0FmQjh6TXZuUU0zNTluQTh2YWV2WXdyK1RrNzBNYnEvTTNDdWZsYmFiK0craS9mNUJvQTlBZHprTGNpUjM5T0hmWDQ0emVKNU92cHBMNXhpSTc4REwzUFlQaXVyZDA1WTVmMmoxd0U0MGNpY1p3VW9yRzg5dTJpc1Z0bEVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVZUDBJU09CNi9mcGNMUllCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQ0JSUlB3SG9CdjdSLzdRZHhYQmdrV1VpVHR5UUN1ck5SeEZFampaZjZYQnBUL1dRRDdGVndxODF3Nm1tYnV1OU9sdGhwaUNoWTgzc1BtWDI0RVhmZHFMZ0QrekZMNWxEeWV5eUhkNG5JTzk4OHkyY3VFNVk3OTNRL3FyaXJGbEZ5bTh2UnpGZU9Yck5DSXNjNG0xKzZIdTZiZ0FMd2s5WkJLakNNdU5FVUZqdmg1RW95NHZsSmJ4MUNzVjZTMUZkUGpKVHhyc0E3T3d4Und1ckFTa0NoZjB2cCtlVVhFdTFoK25NUndHYWhqVEUrVWtQZlhVL3QrT0tiR09Xd3BtVWZuVlZQcmtqblBmeHdPNEhoSEd5ZXpmaVlGN2ZsVlFabWVTNlJSUG1lQnVYY2szVHhkUXQ2dU5PT1U5QjhGd0VBK3RZVFNvZ1J0UE4vcUNNR2ZQcC8rZmtrSWNJZUFQbUVSOGtlQ1FIYUtpUnFMZlNJSDhaYXJ4R1VtRU9XamRCbHd6K1dYYWEvaEdnRDBnem52dGYvTnRCUkMrUThBWEUva1BwNDFUSzRvZ25YT3pSRjJvVWdLQSs2ZDBJaWlmanUzMFVvbkFrRUV2SDYzMWQvMjFOdm4yd1NoTVJVVE5XZWJLbC96VEdNWkZ3ekVlbTRGY1d2K1pzVTkwRnNxOXZORG03M0x6eVhCcWVocXVLN2hQRGZrNzBuZVBlT3hqS25vdnBoWG5wZFpqdDh6V1gvRW1uZElSb3VzYTEwRnJya0hSNEd6UTV6d3Z3WmdsMFowam52RVF6ME1USENNb3pLTEFLT2p1ZzJ5V24yMTNOOEJGdm51OTlsb1hmdE5ZejhyYVBpT2FUelNaNkJBNFpEelk5UVltVmRPMU85S3JNTzYzcGhsMzMwQjhKd04rOER5ak8xM21KcisyM2xKUFBTbkZsQUZlU2lhZkFhQVp4Ymt5VWxhKyt4WGpnMnJrc2I3bTg0WUFoRk45b1hYNzQzK05vMXByRmg5QUxiQnNoN290bjNXV0p1MU5yUFlXdXBmZVh4UjdubnZuYm1POTg2ZGZiLzlNS2pzRmMyWmxJY2JCaHNETk84Y3RHL3Q4YlBZZDl4emVVY1NPKzlyU3QrM2g0TFRmVUxaZlhWTS9wMW5UeGs0N0RzQWVEN3M5WUZuQ2ZoN0NjZlRsMHFOQ2s3djZjTjVmampmTlFaUWZtOFN1WjVtOW9jQXZLQ0M3K3lkRTFaNS84anluVzM3N3RqbURNZVJ3ZU5QeFltQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNFd2hJSUZyRFFzUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUlHaENYZ1B3TGYyanYwZ2JxUjRjMDJoZ0QyVEFPVmRBZ2JDd1kzUXdPa0Y1V3dNNE9OSkJMTWcyOHlrLzUwT2xyUE1NVHl2QTNDaXd4RHZSWnR1MVZIdkhjdnN1MlE3cjhuZUEvZ3NlK3p2dnFQTHEyY3RPZVR2NmVmcURWbUNDaUxHdXZkOW00ZUpGNWNvbk1CdjFHTXE4b3o4TGtjRmp2Z2dnRmRVRkI2dGlET3JhTzlGK0I4QWVFSWprbnRiRTJUaEM4MDNmNXVzV2pkTUZCMmdZZEtFcURuTitwMWo0SkdMQUVUOTFrNVJjVjU4ckNrSVplaEdSQWw1VXpUbHVBcVgraXh0OHVZcG1VZm4xVlhya25rTjBiSzNOUTA1dWhDYzV4SnB0eXJyTzFwbzdwM0pvOFk4eFY4T0JQQVJxeUZ6OHQwakNkTTlQYUJzajRoU2hPQlBqay9QeSttWEFOZ29vTDBzSXVKN0szL2tENTBSSlpiWkozSVExUDBxWm9VSTVINnZLVno5b3lSVXpXQWIvd3lBQWtqOC9sRlE2Q2NBZmxlUnk0TlRzTG90RFhWUVpPS2RHZm1zYzI3T2ZsTjNUWHMrZ0tNQTNMQWlQbDBHV2lWWk1BR3YzMjMxdHozMTV2ZzJpOElhTldjdnl2NWxybmNNNDRKN0dBekNzMGt3U0xadDl6VFBCaGY5UjhYeGR5Y0c1NHQrdUcvNXZMVEdHa3JFMDd0blBJWXhGZDBQZmVWNW1lWDRQWk0yUkt4NSs5cTFLbitmTmVjK0ZRQ0RwbGtmUzc5WjY3TGtpeEp2clNXR05xOU5IbitINVpZS01GcjR6c3BqdFQxM2ozR1I3MzZmamZkTzd4UURuSG9lem5mUEFrQ1I0TW1uKzcxbDRENm00ZTlwVjZXZ1VKNTZ4NUEzNm5jbHRzVzYzcGpGd1J1azNMS0hYN3RQYXI1UDMwejc3OWRXYUFSLzk5c3RqZjBIVlNqL3RHWS82dEJtaitXM0ZjcGV0eUk5Z2VYSUtuZnZiVWl1WHI4Myt0czBaTnY3NnJMNkFDelg2MWZPT3RmSVFPRU1Eamo1UGx0c0xmV3ZQUHZPSlhPR2QrN00rZTBuZDY5LzJoZ3BQYU02YTV4Wjk5aFpIZ1hEL3czQXkvb0djZm83aFhVcHNEdnY0WGtmbm52ZEk3UE1uR1FNcVBOU0FQczFRdGN2enNtUW1lWU56bk94bWRYMEp2UDA0U3cvZkN2Z2p2TXlaRGJ2S1gxL2V4dVRFbmpuaEZYZFAvS3VpeWhHZm5adUp5aWRDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBblVEVXBWdTdCY29wQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUt3YmdTOEIrQmJYbU0vaU1zTE5XY0NlRzVRQjU4QjRKQmdRYzZ0R3hITGk1dUR1OXNHMlBpOVJqQ01BbVRmTGl5TGZNNHB6RE12K1ZDaUJQZEpRbXU4QkREcjhWN2M0MFVZWHFEanhWSHZFeWtDMFhmSmRwNnQzZ1A0TEh2czc3NjNyMnJtTDdsTTVlbm5tbTFZbHJJanhqcmJHdDBQdkl6TGkzYi9ENEQ3RHdDVDM4RVRna1RRSWdOSGtNRlpBN1IvVVZWUWpQYXR4c3JidWVmL0pyRUtpcW1XUGlVWEkwdkxadm9vWDlMNmZubEZ4S2UxK2ZJa0xFSFJ4Vm9Qendid0l0NzNNeS9QUndsNVUwQ1NaVEZneTdJL0pmUG92TFpHWHpKbjBBSmVSbjB2Z0lpZ05hM3Q3THRkQVZ4ZDJIR2VTNlRkcXF6dmFLRzVkeWJmcVdudkZVRml5ajl2dU8zZEJQTDVrdFdZS2ZuNERoOE80UGlnTWozZmF1ODZoMDNJOGVuWlpsNkE3N3ZzWFlMRUs3b3ZmK1FQdEtQRU1uTkVEa3I2ZUtpMDlLdjNTY0tPMndPNGV4SlB2Z3pBcDlPOFIwRW9QZkVFT0k5K0loWDdYd0QrTllsWDg1dDdYYk4zeHYrUDMrRkZQMTA3UzJ5aDROaGVTZUMvTDU5MXpzMFJkcG0ycHFWNEZOOVppamJVRkFmdmE3Zit2dm9Fdkg2MzFkLzIxSnZqMnl5cTV6aEhiUmE4VnVockM5Zk4zSGVoditCNUdGemtVNTRDbkhtNWYvWkdSeGs1MzF0SDhiMVpId3Znc3hYRXJWbXgxNi91TmI2VElETFF6MlM5a2NINWN0cmszVE1lODdjbXAvMldORjVtbHZjd1lzMXJhZXN5NXBrMTV5NmkzNGJpeDcyS2R3RjRUVUNGVWFKOEphWjQvQjNXdytCaCs2WUFtU1gxUnFTMTJwNjd4OGc5bjBkR0dHb280N3M5UVNNNDd1aGJNVENENTJIUWkrZlBPRzh5NzczOTl5UzB5TFU0MStDLzhoaXhvTHhSdnl2UmZPdDZZMXJUdldlS3VQL0JNenJYTDRqcnJHcnZCK0FDQUR0VXRJc0M3Rzl1UkVWdkRxcmpZUUQrTnZWdlVKRWJGUE90SkZiNm5ScUZyMm1aWEpNY1kyejdJb0pNOUpucTlaOGl2MDE5dGc3OWQ2c1BRRHN0NjRISjluR2NjYnkxejd4MW1jWFdVb0hjVndNNDJkQUpwZXRKNzl5Wjg5dVA1N2RaN25kUWZQaDJBNHR1RnVzZXU2VmFDbGZ6bkd4Zm9BUHU0MzBzblJtMTFETkVuaHJubUsxMmUvcHdjcTNBY3hmUEFjRDIzVFBESUU5QTZYbkZlK2VFMHZjOW82bWpTTElOZ004RDJNSmdEYjhWdXdDb0VTVEZZSTZ5aUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaU1CcUU1REE5V3IzcjFvbkFpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQW1NazREMEEzN1pwR1E3aVBnWEFad0JFN2NWU2hJd1hKeUpFa25qUTk5eDA0UzFpbkx3YndHc05JcVlQVEVKeUQ0OHdJcFZCVVlJM3BRdkdFYXk2cHZFZyt3SE5RZW5UQUx5Z1IyQ0RGMFM5QXFydkFQQVdBOWV1emRGQ0Zya1hnYWQxcWZjQVBzdGNobmMvY0RpSEZsVnltY3JUejZGR0wybGhFV09kVGZmMHc4WUErSTNsTitCcHplWDRwd0o0d0lBOEtYU3dmek0zM0JKVXAvZVNkOWNNemcyOE9IWmVrRzI1eFd6WCtBU2N5dzlMSXNPNStVclRlUVVuS2F6eFMrTWNOc1JsK2loZjB2TitXUytPenV2TGYwbVg1ZjZqdE1NejBsUFkraVFBbXdMZzk0bjkyL2RFQ25reklBaS9RVi91cXpUdzcvUy9HU2lFL2hnRlozTGEzRmQ5eVR3NnI2eklTK1lQQm5CaXVzRGJaMy9wMzYwWGd6MlhTTHMyZXQ3UjByWXlQVVhUemsvQzFKYjhrM2tvV1BIMDVyMitJYUF3anVjWEFYaC9rREFoMzBtS2wzL1ZhRnVFMkZldVQ4OXZFVVVOS2RRUzhYZ0Y3T1NQL0tFWHZQNUdXMUtPeUVGRTMwZVZRWC91NzVzTDFIdjJGUGlMUnFUZ3FDYTR4UHNDQkJhaWJGK1ZjaWpVeW0vRHowWXNzc3p2OWdkU0FJcFM3Z3g0OHNUTStjTTY1K1lJdTh6NzFsTkUvTy9TdlBTVDBnWXF2UWhrRVBENjNWWi8yMU52cm0rVDBmeWxUeElWbU1VYVVETVNvR2RNMEk2YzcyMmt2ZDJ5b244VDZKWWR2ZWVYdzRDQ293eEl0SGxPNHNJMFErNFRldmVNMS9GYjQyVm1lUThqMXJ5RnczQnBrNitqd1BXT0FCallLRWZzYkY3SEx1SjlqaEJKSG5xL3JzdlFPaTh2MHViSWw5c2o1RW83K052TjdvMUErVmRtR0ZYeXZiMHBCZEw5aDhnR1ZpNHI2bmNsbW1sZGIweHI0cU5Ta0xSTmpPMy9jQXBzM0NlVWFTemVsUzNxZTlsbnhJVUFlS2FHZ2M5S3p3Ynh0M1FHcWp5eXNoaTNkMCs2ajhHNi9wMi9PL0k4bnVXcEpVaHFzYVhOVS9JZG5sWlA1TGZKMDQ0YWVhMCtBRzJ4ckFjbTJ6QjU5bysvMWZFOHhiUnZyOFhXRW9GcnoyK1pwYi83ZXVmT25OOStQT2NSb3Z4cDZ4NjdaYXlYZkh1MkJuQXhnRzB0RlZYT3M0aDlvWGxOOHZSaGQ2M0EzLzhZUUtNa1FFZkVOMlphMjd4elF0VDdVWGtvRlJmL1pBQVhHYy9pY3czekJBRGNjOVlqQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlKUW1VQ1VxRXBsTTFXOENJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lqQUNoSHdIb0R2b3FDZ3lxOFd4T1lMQUY0SzRMWTU5VWUydGEzbW8rbWlCQVZ2ck05ZkF2Z0lnQ2hSNlRFSXBFMWpjVzBTRStJRkFlOURBU1VLeEZMQTV5R3BzTDRMUXQ3RDVxeUdsMDE1cVk0WDhpelA5Z0F1Q0JaKzhGd0VqbUN5cW9md0xmMWJtcWZrTXBXbm4wdnRXc1gwRVdPZFhIZ1I5d2VGZ0hnWjkvNkZlYUtUMTdyUUZCazRncGVKWDlkOEgwOFpRQmp2WVkzZ3hkK21TKysxTGpoMSs5QnpzWkhsSEpzS28yQkM2Vk42TWJLMGZLYVA4cTg4MzdrSEpTR1RoMW9hTUNjUDMzbUtZWjRjSklaSk85bVB2R1RMcCtTQ0xOTkhDbmx6L2o0d0NkWCtUekMzYm5FOEEwRWhMekxrNWNQU05zOHpyV1FlblZkT253L1poNGZmZVlvVFU3aWIzOFZhRC91TEFobWxqK2NTYWJjdXp6dGFhbk9iL3BrQVBtYThGRG10VGdyYzh1TDdQem9DMXZDYmZuZ0trR0J0MTJRK2EzQ2l0cHdJc2E4U256NWFESVhpNDNzMGE4WHZHSUhLSC9rOXVIVVR1T2I4Y2xBU3JPYitRTzVEdjVqQnNVcDkrdHp5bFc2Y0JCaUE0a29BV3hyTVkwQ1F2WktBZDE5MjY1eWJzeWJKL2RaZmtnS3BVRkNxVkVpcXIzMzYrL29TOFByZFZuL2JVMitKYjdQcVBjc2dFUHdtM01YWjBGTUJIT3J3bzUzVjM1SGRNeWFZLzZwbVgzOGZBTGRHR0ZOUVJvM2ZCTnJxdmI5WEZEVGpqNUxTcHpyVFU4Q2N2SHlIR2RpVWE3ZWFqM2ZQZUIyL05WNW1PWDdQWkovbitrRTF4OHF5bEQxcnp2VXl0UFRiRU13aWczQmRrMzcvalFvUW10UCtpSDMxUmV6WHRXMnp6c3VMdERtblgzTFRjTi95NDdtSnA2VGo3d1RIemZHdFN0L2JITkZLaDduaFdTUEdmMnVVZGIweHJWRkhOMzN5Vm1OcitUc0xmVTM2M21OOG9nTGY1TGFOdi90eVQ0VThLT1RPNEk2VGdVLzVteG1GUWg4UFlCY0FES0l5eEhNR2dFTzBieEtPK2hGcHpiV1pvZVF4K3RWZXZ6ZnkyMlJBV2pXTDFRZWdVUkYrSllNUlh0Nkk2VE1BYWwrd2I0dXRKYjlsNzVTQ1AyMWtJTTd6QXFjWDVQUE9uYm0rUXFrUDBtMENnOHR6THZVODFqMTJTNTJsMzU2YSt6c1crNW1IOHl2UHoxSXNlQ3lQcHcrNVZ1Qzd3WE1YeHhqMk0wdjdOSmVaZDA2b1pWZXUvYlhTZWI0WERJcXgvd0x2R3RSaW9uSkZRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVZSlFFSkhBOXltNlJVU0lnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpS3cwZ1M4QitESEFpZjNna0cwU0JyYmYzc1NuM3hQSS9Md2t3SWdreUtIQlZubkpuMEhnTGM0eENacWlVUzJScCtmTGdaUzZQcDNCWTNtSHZyV0FGNEc0QlZUQkdQN0xnaDFMN2tVVlB0SFNiK1JMaWZlV0ZBSWJlZGg5M01hVWRWN0Z1VExTZXE1Q093OWdFLzdWdlVRZmc1N2I1cVN5MVNlZnZiYXVRcjVJOGI2c25MZ040dGlSalV1Tk5Yd0lTS0RJWFQ3ak1LSEZNQjhjeExaYmY4V2NZa3laMng0aElrcEZuUlhBTS9McVdnaURjV0d6amJrSzhrU05RNjgzem5QNWFtKzlqS0l5NXVTMEc2cHlBbkZqeGtjZzJQZ3lSTVY1ZnF2YmJZYVBocjlzc01hLytybVBnaUZmNzlYYzZIeTJVa2d2QTFHd2lKSzJ6eXYycEo1ZEY0NUZMem50eWYzZVFDQXh3RGcvMUo0WVlnZ0JyVHZxWVZyamJZOW5rdWtYU2JlZHpTWGJ6ZGQxUGRsc3U0dk5xSjJyMitZVXJ3b2R6MHlMY0NPcFUyVGViN2ZDUFEvcVJIY0xWbGJUSllSOGYwcjhlbTV0dUZGK0RZQVF3UUhUekNPR3VOa0dmMlJkUks0NWhoa1lCUUd2TEk4WTd6d2IybUg4dVFUOFBqaUgyeUVWMTZTdWNkbW5YTnoxaVR2UzRIOWNsdE5JYWwzSlY5c1VjRUljMjFWdXZFVDhQcmRmWHUyc3doNDZpM3hiY2JmQTNZTHVaZCtjUktOczVmU0x4amxLVHMzTDRXckdQQ0h3aWZXSjNJOW1tdERiZkdqVndFNExkZVk0SFJjSTcwM0JUVU5MdnFPNG9ZUXVmYnVHYS9qdDhiTExNZnZtUnhQM0EvWnI4WWdXOEV5L3crQWY1blNMdSsrd2FJQ0JNenJJbjZER0h6aDVVSDlHQ0hHVjJwS3hIN0crOVB2NXFWMVI2UzMrbXFUZTR4YzQxTU1sWHZJZjlIc1ZUT29PUGVzeC82OHVEbTM4UDhaamN6WjZ5MTliM05GSzQwbWgyZUxHUCt0VWRiMXhtU2pIcGhFU3ExQjZSY2hsRi9hTVF6ZWVHNGpQUDMwMG93cmxONnpENzFDR0tvMDVkNU53RnVLVmZKY2x1VVo0amZ0RXJ1OGZtL1V0Nm5FNXFIU1duMEEybWRaRDB5MmE1dm0vTXZubTdYd0ZnRDZBc2hhYk0zZE82QVB3d0RQRk13dmZiNEhZR2NBM3k3STZKMDdjMzJGUjZWZ2tac1UyTlltTFFrV09hdDQ2eDY3d2R3N3NwUitleGpZbTBIbUxYeXNOczdLVi9Nc21NZFdUeCt5VFF6UzF6MWZVbUlMQTQ0d1lDa0RnVVkrM2psaEZmZVB2SHUxUEdkd1pHUW5xU3dSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUlIWkJDUndyZEVoQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUl3TkFIdkFmaWg3WjFWWCs0Rmc5cVh0bmhZLzZPTkFQS1hBUHg3RWt6alJjejdOZ0pnR3pVQ3h3OUxRbmd2VFA4ZHplL3JTY2pVSzFMSUEvd1UxS3o1M0FiZ1FnQVhKSEU1aW9QL0dyOFh6T0JGQVBLNlgvUDNIWk9nSDRWSktaWTQ2K203SU5TOTVPSnQxeThBSEp3dUFQYUo0ckhQS1p4SSsybzhIckZCN3dGOHRtY1ZEK0hYNktkcFpaWmNwdkwwODFEdEdYTTlFV045ek8yYlpkc1E0bjAxQWtld1BSUmdlbWU2VEc0VlpLT1B3MHUwRkJxZ25SUzltSHdpTGxIbWpJMUhOT0xHRkFLaFVFUHBjMTNLOE9qQ2pKYUxrWVZWM0pFOHlwZjBmdWZvTTlDbjJNSFNpSUk4Zks4K2tZU2EyMkFkUDB2NU4wMWk1TnNCMkFYQXZvMWYrTWc1WmVmNnI5MGlTb1V0Y3B0R3Y0OGlPUC9VWENUN1RXNm1pWFRzZzkyVHFBckZ2SG41Y1BLeHRIbVdPU1h6cUxGSm84aEdnVW9LT1gzU2FJM25FbW0zU3U4N2FqVC9qaUFOWEROTUcwL1dNdHQ4WEhmd2ZXYjVIUHUvYklTdmIyM0VRSC9iWElybis4enZHMFdEbnpGbkh2SGE4QVlBSnpvTGlmZ3VsUHIwWE45K0tsM0FkNXAvWi9ZakFCeVhLU0k3V2FmOGtkK1AxYzhGQkZUS0ZUbUk2bmRMT1JSKzRPVjA3aGxZbjA4RE9DQUZMTE9Xb1h6TFFZRGZLd3BPY0cvSjhuRHY1L1RNak5ZNU4yZE5ZdkY3SXYydVRBUkt0cUlFTE9Pdmk2SnZ6N2FHdjEvcTI2eGkxMFdKVzVNTmhhVVBTbjd5b2xoRjdEMThITUJ6QjJ3SEF5TDlZMFhSb3pPU2tKWjFEUi9SbDVIamJKbzl0VVd1dlh2RzYvaXQ4VExMOFhzaXhxYksySkRBU1UzUXRFTWRVTWJtVi9MTzFlRUFqbmUwcVp1VnYwM3YyZ1FwdkRxb3ZOeGlLS2I3QlFEOC9kcjZMSElOYi9VUkdYanV5bWF2ODY4Qi9PV1U0SUdMYkZOdVAzaUZEWFBFM0VyMys1YUJXNWR2aEcvWGxtZGRiMHoyTi8xRUJpdTNQdnpPbm1MTlBHQysydjdiZ0UwcHJtcXNRcURGRFJseEJvL1BVUkprYmdnRVhyODM2dHMwUkZ0TDY3RDZBS3duWWozQTMrOHVBckJsUmdCWmk2MjV2dStEazA5RE8wb2ZCbXJodkVFeDN0ekhPM2ZtK2dvOFY4dGdJd3pnWGZxd1BmdWszMTFMODdicHJYdnMxdm9zMzU3YSt6MDViZUZ2M093am5rOGUyek4wSDA2Mm44SHh6Z3VHNHAwVFZuSC9pTjgrQmh1Z2IxbjYxQklpTDdWRDZVVkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUmdiUWhJNEhwdHVsb05GUUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVJSFJFUEFlZ0I5TFEzSXZHTkRldjJvdU9WeFdVVmhnVVV3b2ZrZUJKZ28xZUovYVF1QmUrNmJsNzdzZ2RHOEFuMGxpcDFIMTg4TEFSNUpZMGo4bmdXNktiUEZDN3VNQVBLY1JDbjlJVkdVenl2R0lEWG9QNE5Pa1ZUeUVYN25MN2l5KzVES1ZwNStIYXMrWTY0a1k2Mk51M3pUYkdIQ0JncWplZ0FkOTdSNWl2dmhtRWhPbTJNT1BHcEhSZjAzZjI5YTI5cnQ3bnlSY1IzRmhmb1BuQlVWbzgwWmNvdXhqeEwvZkxRbEM4VExWVUkvbFlxVEZ0aWhmTXVJN1YxTUkxOEttTDArSi85cVc5WURreDg0VHp1NnJkOTdmNlU5U3hKc2lJM3puL3F2eEwxc2g3ellmKzV6MVU5Q2FncW9VSStHL2FTTHlrM1ZaMmp6TDNwSjUxTU5rMFhtOW9tVlJsMGdqM2xFTFMzNC9UMDdCWlN6NXg1em5VZ0NjRjI1eEdsa3FlRE90T290UFQ3RllycXZ2NmJTL3plNVp6OG9mV1IrQjZ5aS9nK1B1d09TZkJRMWhGYk1BQWp4clNVRVRCaWVZSmU3cEVhZ3EvVFphNTl5K05ZbDEzSDhJQUFQWWxRaWxMS0FiVmVVU0VQRDYzWDE3dGpYOC9kTDNkd202b2NqRUxWSmdSZ2FGOEQ1allSbXh0ei9rbW9aQm54Z0lsWUU4YXp4akV1ZmptdWJjU2tHSnlJNXovUE1CZkt6Q25PYmRNeDdMKzFGampNMHEwOHVzeis4WnNpM3JWSmQzTG8vY3ovTnk1eHFBdjRYVDE0MEtoc2FBT1B3dDVYYXZjWVg1cmV1SGJqVzVRb1dGcG1VbDk0NnJXWlVzc2sxZG03alhUZitEd1MyN2E2b0ljV0QrZnJkWEtuc1dCd2FDT3lhckozNmZxSWFRWDBIMXhVbXQ2OXhwRlZuWEc5MnlQR0tlTEdlb2dMUEZvR2RrZUV3S3FQbWdxQUtYb0p3eEM0RXVBYjVzRS9rK01xaW81ZUZ2a1F3ZS9HTkw1Z3A1dkg1dnhMZXBRck5DaXZUNEFCSHJnZmJjeGJVWkFVOHN0dWI2dmtjM1BzSmJEVVN0SXREZXViUEV4M29sZ05NTWJXTVc3eG1WQ0IrNXhQUWN2MnhhZWJYM2ZlYTFZZXh6MnRCOU9NbXFaS3puamhYdm5MQ0srMGQ4Qnhoc3dLS0o4Z01BVHdEd3Jkd09VRG9SRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFZkFjdG1ycTlHNVJZQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVZoM0F0NEQ4R1BobDN2Qm9MWDM5UUQrYml6R0I5bkJ5d1dIQXZodFVIa1VMcndDd09aQjVkVXVKdWVDMEVtSlVXMWJoaXpmSTh6aFBZRFBkcTdpSWZ5aCtxL2tNcFdubjRkcXo1anJpUmpyWTI3ZnBHM25OWmVwWHc3Z3B3TVp2Y3lCSXlJdVVlWmk5b2pyNWRiUnByTmVqQ3l0aCttamZNbUk3eHgvYjM5WEl3enhHa3RERnBDbjFIOXRUYVRQYzM2Z2lNdVFUYmUyZVpxTkpmUG9rRzJNckN0Q3RDenFFbW5FTzJwbHMxVnp5ZkhpUm9qMjRkWUNScGlQbDQ5M0IvQ1ZBTnNXSlhETmIrN2hHUUlDSlUzOGZpT2EvYVJHa1BYR2trd3A3YnI3SXd3NDhMa0F3ZkVhRjc4TjNUa3ppK2ZDOUdTaGl4SXhpK1N4Nm1WdG5BU3NIOVlJYWxDc2xRRTFLQ2EyUFlBSHBvQTJGTGVtZ090NjBSd3hBQUFnQUVsRVFWUjFVMkF3R01jRkFIWXdnaW9WdDdET3VYMXJFcXVvNi91YmdFY3ZNN1pkMlVTZ1M4RHJkK2ZzMlViNysrdThYL2xRQVArUWdoSkZqR1IrU3c0Ty9NM0JhcFAxRzl1dGo0RnpEck1ha0ptUFB2S3pBSnlkR1FRcXM5Z05rbzFOeUdpSXZSZ0d3K0ZlRDRXeUlnTTNyTnVlc1dXOFJlZnA4M3VpNjFONXZ3OENTYUhKUFJ3d0l2ZnpIR2JjSVp6MUlnQ2NtNkxFclduUG9vSWZQVG9GR2FTL2IzMFkwSVp6emxBUEF6ZmNOd1Y2NXA1UVJEQ05TZHVIMnBmb3JqZTNUTUZUL3pTdE83bitwTUQxNU5objJ4bG8zUE0rc2IwNXZtcXBEMjcxdVljYU81UDFSUDJ1eEhJajJyNVRPaGZEZ0xxV3h5dm1hYW5UbStleEtZaDdyWUFzWHZzaTgvT2RZM0NFZjR3c1ZHVk5KZkRnTkxmeHUxcjY4SnpiYmdDdUtzMVlLYjEzclJEeGJhclVOSGV4cFhOVXQ4S285Y0FMbTREbkY2Ymc2UE1hWkxFMXgvZmwzalRQVTFwK3Q3d0d3TjZHNExmZXViUEV4OW9Hd09mVG5uenBnTGtwQ2RjeStJUGxpZGovS2FtWFFydjhYWksveVpjK2owOXp5NUJ6S2ZlRW5nM2drbEpqQjB3L2RCOU9OcTNHN3lMZU9TSEgveCt3aTBLcVlqQWVCdVd4UEo5SkFYcCtaY21zUENJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0F1VUVKSEJkemt3NVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRWZBUzhCK0I5dGNmbHpybGcwSzJObHhKNTBZd0NvS3Z3WEpvTy90NFMzSmo5QVp3YmZGRTQyTVE3aTh1NUlCUXBobFdySGFYbGVzUUd2UWZ3YWVzcUhzSXY3UU5yK3BMTFZKNSt0dHEzU3ZraXh2cXk4S0M0NzVFQWJoL1k0R1VOSEJGMWlUSUh0K2RTYjA3NTNUU2xZbnlsNVhmVFIvbVNVZCs1S0pFSkQ1UGN2S1grYTF2dTNRQlFtSXNpWTh2MldOczhyWjBsOCtpeWNhSzlVYUpsVVpkSW85NVJhMStza3VBR3hka29xRUZCbkloblVRTFh0TDNHTjllenRsMW5mMlJkQks1NVdacVhwaU1lQm9ONUlvQWJJZ3BUR2NVRXVDKzNXYk0zZC84a0JQSVhBQmpRZ0dQNUFRQTRmK1U4OC94NTd6ZWhWQWpWT3VmMnJVbXM1WmFJbHVTd1ZwcjFKZUQxdTNQMmJLUDkvWFhkcjZTZ1AzM01Cd1VOVjAvd2tTQVQ3aXpHSTY3VUZsTDd1OGc3QUljMHdSbmVYZm4zbERjQU9ERWFzTE84R3V1Q2FTYTlPUVhZK1kzVDNqYjdPdTBaQnlGekY5UG45N2dyVUFGL1JHQlRBQmVsSURGV1BCOXFBbEZSU0RsU1lMN1VscnNDZURXQWR3Wi9ZNjhGOE5RbU9QSlBTZzBLU00vMTZPVUF1TmRyZmF4K1ZsOTlYS2N4c01DMmFleHdIUEhmRUUvRWZEMjUzcVFmd2NCSnBldk5yelY5dEVzejluNmM5c0RlbHdKWlJIRG9hMmVwRDE1ckxFUzBkVm9aVWI4cnNXeHYyK25EY2YxUFA4N3kvTG9ST2QyMUVTdTkycEo1d1hrV0ljdzVkSk1sYmowc2NjNXBIMDVuMXl3MUg1dk9PVmp5UnVmeHJoVzgzNmJvOWtTV1Z6cEhkZXVPV2c5d3JGRVV2ZSt4Mkpyelc3WW5zUG1oQUU3cE0zekszNzF6WjUvdjBhMlNmTThFd0haYUhrOEFHZXRldU1YTzd5WS80bDhzbVZNZUJ1TmtrTTNOSFdYa1p1VVpzR2NtY2ZmY1BJdElOMlFmVG10ZkRmRms3NXl3YW52VjNuMEdubk02ZlJHRFUzV0tnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUl3TG9Ta01EMXV2YTgyaTBDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNpeVBnUFFDL09NczNyRG5uZ3NHa3JVTmR1cS9ONkJzQTlnUndVNFdLdUc5OWVCSU5xRkI4YUpFNUY0VFk1NTl0TGhmc0dGcXp2VEFlMW41aHcvY2U5aUxnRVJ2MEhzQ24yYXQyQ04vUkZjVlpTeTVUZWZxNTJMQVZ6QkF4MXNlTzVSY0FuZy9nSHhja05MR3NnU09pTGxIbWpBL09xUjhBOE9LY3hNNDBiMnZ5SCswc0l6ZDdsQzhaK1ozYkdzREZTWUFqdHgyTFNHZnhYMXM3bDlXUDliUjVzbzlLNXRGRjlLK25Ub3BiUHczQUZ6eUZwTHhSbDBnajMxRnJzNVlwK002OE5sS1Erb1RBK1hxUkF0ZHNadzN4OFhjQWVJdUIwVHI3SStzaWNCMzU3YWM0MjE2TnlQVWwxbytTOHMwa3NBa0Erb2piSlJIcnYyN0VvdTVuRUJQTFFUekxuLzhyQUpjQm9DMldoK05qbjBLeENPdWMyN2NtZVFTQXF4TExrclp3M2p5dkpJUFNpc0FNQXQ1dmI4NmU3YlNxUGZXdTIzNGw5eHNPYWdJRlVIU1IvbERVOHlvQXAwVVY1aXdud3RjcEVYTXFOWmZjR1hEdXJhVVpDOU9ma2NRWG93U2VDNnVmbTd6R3VtQmFoZnhONWJWQndmM1dZYzg0c284anl1cnpleUxxVUJrYkVvZ0lFTERvUFNIK2hzcEFSM3ozb3gvT24yZEZGNXBaSHNYcHZNSFB1R2Fob0Y3MEV6SHZXbTNxbTYrNXh1T1lvR0QxRmdDR1dHOVM0RG82Y1BvMWpTRHkzczI0bmhhOC9GNEFQZ0ZnajB5SXk3aS9FZlc3RWhGWjF4c3RYbTl3V3A0OTJTL0lOOG5zOHRCa2oybmVvMDhHQnNrSk5jNVpHSDluZWJiMi9wd1V5N1B6dklKMWJwMzNiU3kzeEpmRHUxYndmcHQ4MXRmTjdkbXZHWG85WUxHMTc3ZHN6eHpHNzlMT1RjQ002dzFkNUttWDFmWDVXSk1tZVVTOEtYUlBQenRIaEh5eVh1c2VleW5TcndKNFJoUEk1OGJTakJQcDZVZlFUMlRRbkNHZS93THdwaFJNNExZaEtqVFVNVlFmempLdEc2VEdZUDdVTE40NVlkWDJxbmRxQXJ4Y0FXQWpBMkRQZDlCUW5iS0lnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlRZ0FTdU5RNUVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBU0dKdUE5QUQrMHZiUHE2N3RnTUN2ZlZnRE9CN0Q5V0JwU2FNZTNBRHdkd0EyRitVcVNEeVhPVUdMVHRMUzVGNFE4bHpDOE5uYnpmeFRBdTlLRnVuczZDdlpjTFBjZXdLZlpxM1lJMzlFVnhWbExMbE41K3JuWXNCWE1FREhXeDR5Rjg5aGhBRzVlc0pITEtMZzc5Q1hLcHpSQ29KK3AvTHZ3MEJlQ29ueko2TzhjaFFBL0RZQWlMbU45clA1cjI1NWxFZkx1OHZlMnVWdFd5VHc2MWpFd3pTNEtwdEN2dlRySTZLaExwTkh2cUtWNVBGTnpDSUIzQTdpTHBZQVI1R0VBQW9veVJRclNMVnJndWtaUXBQOEdjSUJSNkdsZC9aRW84YWxTa1lPaFg2dm9iMy91UHNMUTdSeHJmUlFSZTJLemw4SDM3QUVBS0lMMHYxSVFNZnFFbkhPRy9qNVA4K2NqdmdOZmJ5N283d3JnaHdXZFlaMXorOVlrT3dDZ0QxVVNIRzBaQmM0S1VDdnB3QVM4MzE3cnQ5WlQ3enJ0VjI2V1JLZ3AzQmI1TUdnVWhUZC9HVm1vbzZ5SXZUM3JXT3d6bXlLVXB3d1EwT3hTQUF4ZU1FMElzOC9Hb2Y3K25FWnc5SnpLKzE1c3kwVUFEbXoyUTMvcWJGakV1SEthc0hiWisveWV0UU15UUlNamZoTmQ1SjRRZjhmL1lJSFFid25TYTVNUTNVOUtNZ1dtNWY3UUVZN3lhdm83NVA1RkFGczY3TE5tL1ZBVEhPbFRTYmlhWXRaL0NlQlBrcGgxWkNDUEhQdjR6WHA4Q2k1N2ZFNkdnalMvVG12T2FYdkE5MDYvSTNIOW5mUFVIQXM1OVZ2U1JQMnV4THE5UHQ2cm02QmNKMXNha2ZMUUo2R1E1ekkvRDIzMmVQNEJ3Q09YdVJFVHRnOXhqbXFGY0lVMnhSTmNZOTYzTWRUSWpNSzhhNFVYcFdETUdWVXRYWktUR29IbVp4bXRIbm85WU5sYjZ2c3QyM1Bld3lQODdKMDdTMy83OFFTQTRGcWRmb3psTEt0MWo3MWtTRjZaZm9QOFFVbW1UbHIrTHNxektBeld5eUFYaTNqNE96UDNvbmp1OUx1TE1HQk9uVVAwNGJ3bWt3ZkhINzgzVVk5M1RsaEdmMzBldTZNZFFmNldQVGhNMUpoU09TSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSXdLQUVKWEErS1c1V0pnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBZ0E4QjZBSHd2RXZnc0c4K3pjQXNDNUFIWWVTMk15N2ZncWdHY0F1REV6dlNmWk1vaGM1MTVlNUpnL0Q4Q2VIaURPdk45STlXOE80SE1BSkhEdEJMcWsyVXN1VXkxU1FHQko4VzVndHZleXlWZ1ovQUxBd1drTys5MUlqS1N3MHNjYUFiYmRSbUpQbnhsRFg2SjhZQ05hY0VWejJmM2hmWVk1L2o3MGhhQW9YN0xHZDI3c0l0Y2UvN1VkSWhRZW9HajZ0bzR4TTJUV2lEYTM5cGJNbzBPMjBWUFhsd0ZRbU80N25rSW04a1pkSXEzeGpscWF5WE0xRkFaNC93SkVWQzMyZHZOUWlQcEVBTkZ6OXFJRnJ0bkdDREhaU2I0VWU2ZTRMTmU5cGM4NitpTVN1QzRkSmNEdEFIWUJRRkV6UFhrRTZGdGRCWUR2MkZnZXpwMTdBZmhaTW9qN1Y2Y0NlTG5UUUpaeGFITkpuMExSdVk5MXp1MWJrMWpXczdlbWZjN3JjbzFYT2hHWVE4RHJkK2Z1MlU2YTRLbDMxVVJEcG5VUC9lSW5BNkFJSlBlWUl4OEd6dG9kd0ZjaUMzV1dSUUZRQ29GNkh1dFluRmZuVUw4dHRiOG4zT1FCTUVEZXFIazR4MVFHbzZBSXUwVXdxeTNmTXNmbTJLWTBzd24wK1QxaUYwdmdmazB3bWdzQU1HQ0s1eWtWdy9QVTFlYXRPYyt4RGdiV29oamRKeU9NTlpUQmZSVHU0KzlveU50bXFlbnZXTmMyanVhTU1pdjNEUmhVWWQ5SzFzMWFkNWJ5OTRoSVZtcGFiN0ZSdnl1eElvK1A1MzBYTGNHeGV1RXNLRUd0d0RtTGFBNi83YTlzZmtPM0NwY3V3dVpWcXZOdUFNNEV3Q0FibHVmWUprRG9rWmFNd1htMFZnZ0dtb29iZWoxZzJWdWE5MXMyMTd4bnA5OXlTd2x4bjNrZkFCZVdaa3pwdlhObnFVL3ZmWmQ1anVsMFExdHIvd2JCczB3dk13WVB1MnY2VGVtNGdEV1dBYzNNTFB5TjY0UjBadVMyeUlLTlpaWDZzc1pxcG1aajhKam5CWisxWUVYZU9hSG0yaTJTWDA1Wlh2K1p2N3RSbkYyUENJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJakFnQVFrY0QwZ2JGVWxBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSndCd0h2QWZpeFlQU0s1Zkh3N2ZzQVBHc3NEZXF4NDlKRzJQb0ZBMS9LNGg3MklRRGVQVkl4dVpMTGkzOEY0RElBbXl5Z3Z5a1FzbmR6Y2VWTEFDSkV5RHhpZzk0RCtNUzNTb2Z3RnpBY1ZPVkFCQ0xHK2tDbVpsWHptMGFBNFMwQVRnWXdoZ3RLazBiekV2UTVTV2d1cTBFTFREVDBKVW8yOWFRa2xsZXIyZlFQZUxGeXFDZktsL1RNWi9QYXVoV0E4d0ZzUHhTUWducTgvbXRiRlVXdS93SEFJd3ZxWGxUU3FEYlRmc3VsNUVXMU82ZGVmdFBmVk9HN0huV0p0Tlk3bXNObVdwcW5wUUFQbmtBeDFycEw4M0hlNW1WcGlqcVVDS1htMWpNR2dXdmErdGdremhTNXh1SzZkMy9qUmZOMTgwY2kxcGJzeDFLUmc5eHhHcFh1ZFVrb1BxSzg3elZpRW85cjNzK2JJd3Bia3pLaTVwUklYRjNmZ3Z0V2h3TTQzbG5CcjVQQVBzVVFTaDRybjc0MWllVTczMWRtU2J1VWRod0VLTzZ5S0gvL01HZGd5TDgxQmhQdzFQdGJBRWNCK09hQ3V1KzdBSzZwV0RmWHVkeGJvREJuOUVQQnp3TUFmRHk2WUVkNVh1RVVWbDBqc0FVRlk4bnBRWTYyNVdUdC9wNlFrMzdSYVdvRXY1blZKdjQyY1dEek84dW5qR3V0VmRzelhuVGY1OVF2SHlXSFVreWFTTUg1b2ZlYjd3T0Fvbkd2aWtFeHRaUVBBbmhGSTZESlBadWhuNmgxUzgzM3licTJHWnJsc3RmSGZRa0dZUC8yUkVNZURlREtadi9qM3BrTnJEa1dNazBvVGhiMXV4SXJMamtqTW1ub1U1SVlwUFV1NTl1YUFvOHVidjE0TTFDNGs4RWxUMnVDeTNBZVdiYUgzL1EzcE1CbjBVRW1sNDNGb3UybHVEWFBDbGllc1FqSGE2MWc2YjMrUEVQUFdaYmZrdWY5bHIxVENtYStVWDlUL3lnRjk0bDRWdkFXUTE1bThjNmRsdDkrT01kK3dtaXZOU2c3ZzdreHdJaDFicDVuTGdXM1g1djJpRXFheGNCQkwwMXp6UDFMTWc2Y2xudDZGRkRudWQ3TEY3VFdZWk1Yc1phZ0QwQlJkYjd6Tlh3QTc1eXdTbWRyUGU4bzl6aTUvcmwrNEhkRDFZbUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJakEyaE9vOGNQTDJrTVZBQkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFnYmtFdkFmZ3g0STNRaXlQbDdSNGtQMXZSaXJnM0xMK3V5UnNTbEdHUlR5N0EvZ0lnTTBYVWZtY09rc3ZMMUlvN2R5QiszcFNJQ1JDaE13ak51ZzlnTS91V0tWRCtDTWIwaklua0VERVdBODB4MXdVdi92SEpoR2pYNWhMR1NialBackx6OGVrZVhXWUdtMjFESDJKa2xZK01WMG91NXZONUxtNVpna2lWS2pxemlLamZFblBmTmJYdm5zMWZzc3BBRjdjbDNEZ3YwZjRyNjNKRkhJOUE4QXpCMjVEYVhXUmJiWmNTaTYxZDRqMHZLelBDNWRrVStPSnVrUmE4eDIxdHZ2UDA3cmtNZFlDQnNoSFVVVUtybDFic1M2TDhPbWtPVkUrL2V1YlMvWmNyMFkrdklqTmRicEZISHlkL0pHSXRTWDd6U0p5RU5uZmZXVTlLb2s4UlFpcGY3Z1JQajJvRVVDbENLcWVQQUxjQitKOHRWMWU4a0ZTdGI0RjEwcHZUT3NsYjhWVzhRM3JuRHR2VGNMenBHY0JlRjVob3lKOXJzS3FsYndTZ1lqNXZwSnBLbllLZ1ZxK013VjFLS0QzNm9yVUtXWjM2TWpteCtja2NUVFBHZnNvZjVmb2FRZDlDQVpNclMzOE4wYkI4WnpoTjNTQTBiY0NPTUVnVXJVcWU4WTVmVEtXTkl2WWl4MUwyNGUwZzRFUVRrMmlyOTU2dVJiZnE5blR2c1JiVUVaK0Nxc3l5QUxuSW9wYzEzcSsxYXdyOTJqMmlyOHpvNEwvdjcwN0FiYm5xdXNFL2lzZ2tkMEZGQndXQWNrTTRKUzRKVkZIRm1VSmk2VURSRUNEamlWRXdTQzRFRWZEb2lpZ3lEWnNpbXpGRktBWWxoUVFsZ0JobGNnbUl2dStGR2hRMWlDTUNBR25mM0FlOWZKNDc5M3UwNmY3OW4zMzAxVXBxdmozNlQ3bjAvZjEzdC9mdDBmRWl5TGk2dVY0K042SXlEWmZMQVVzL2lNaTh2bk1PMHQ0V2dhb2ZhcG5rRnJlcDg0aUhnOW84SHg2eXIrbjJtdWJxYmJaVVY3dWZnSEp0eXloeTMzSC9iZGRZZTFiUmNTLzlXMndnUGxhUFZmS29ReDlSMlJuK1BtTUxnc1NaaEJ2elhTVUEvcnlPSktGQUhKZnVTbFQzbi9QWjRDNWJ6YXRYK0JLSlFUNE9oVmR5WE9QM0tkbFNPczZKOWNLMCtoUGVmNnlYNDlybmlVZmRGOTE3SEVqNzdYayt3cTFVLzVkblJjUjE2cGNRTTJ6bjZ0RXhHc2o0bnNxMWxsN25KenFIbWllYytYN1MzMEwzT1Q5bnA4c3p5ZXpJTWFtVFhrL0thL2g4dDVWQm9iWEJxdlhqRHNMTmViNWFiNi9Nc2VVeFpMekhHREtZclpqandrdDcwdk9ZWHJRT3ZLZWFCWnRQNjJ5RTU3TFZzSnBSb0FBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBZ2JFQ1kxNitIYnR1N1FrUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUTJFNkJsaCtQclZPd1pYQkxCdlhrQjF2SHIzTkErNnc3dzlIdVBHSDQzWkRoWGpraS9qd2liak9rMGNUekR2MTRNZS9KNTRmU2Y5WGdJK0krUTh1WDFYTjlMOWcxYzRzUXNqR0JLV05md00raEhKV1g4UHRzUS9Oc3JrQ0wzL282Ui8rZUV0VDJ6SXFnbG5YMk8vZXp0NDZJcDA4Y1NERm1qSE4vUkpsOS9kYUl5TkM4RThkMC9JQzJHVnlTSDBmV2hJRFdkcWZWdWVTWTQxbWZ2dThjOXgrL29OOWp5L1BYTk1nUW1QeVlMTU5scHc3WjZtTyszend0eDF6elVYSnR2NmRvbDhIVytUSHgyVDBEY0dyNzBDcVFadXEvMGRyeFpZQng3dmN5R0docHYvdjh3UFAzSStJTHRZUHIyYTdGeDk2dHp1bnptUENjN29QM20vWHNlNS9aeG9iNmJjdjVTSXRyeTl3ZU5TRUhmYlpqcTNreVJDTER6dkxleUpqcFM5MEg5amN0WWRsamxyTnRiVnVkOTdWMHkzT0xES1BLWW5XdGlwbGtZWUw4MEg3b1ZIdk1QV3dmZk0zeU84MHdrU0hUazdwQWg3c01hV0RleFF1ME9ONHZmcEJIcUlPdHo1MHoyRHFQMGZlYytKdzNBOFJ5bnpwbjZNMnF6WjdINjd3Zk5yYTRSYXY3UDNNWFVNbS8vUXh1bnZNK3o2cHQwdmZmNXk0d21vRkdkK29LU0gyOGJ3Y2pZdFB2R1E4WTZtSm1iZlczdUpnQkxhZ2plZTE3WENtQ2tJWFVXdDBqK1hRcDJQaXVpY2M2MTdQNVB2Y1k4cm96cndkeVAxWXo1VHJPNzRwVjUvL3Vubks1ZWMzUWFtcDVuM1Z2bjJxdmJWcU5iWnVXODhrdUJQYkdFZkdPWFlQTzhNVXpCaUM4c1B4ZU00UjlVNmFXOXhlR3ZpT3lZelMyaU5wUkQrakw1MDFaK1A0dnVpRHc3MTN3RHl2UExVNlBpR2RQL0p4bHdRU0w3Vm9XWjhwQ05EWFRFdjYrWEN2VWJMblZiZWErSHFoNWxuelFPZFozUmNTZmxVS0VROCsxV3hRcHo1RGxQT2JYNWcvVVBQdkpkVDE1eEgzM0xJcjc4TlUvaTIvTWtmZGN6b3FJa3dhMDZUTnIzbHQ1V0kvalJCNzc4cnJrdHlQaWxJYlhWSDM2T1BVOCtjNVpIaXZ6SGRrczROTTM2THVtWDNrdkwwTzFhMytyZmRlWlk4aHIzL3c3ejZKRFUwNWpqd210bnNOUE9jWSt5NjU5WHJXejdKK05pT2YxV1pGNUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRS0N0d05RMzdkdjIxdElJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRURnS0FpMC9IbHVuUit1UE9QT2w5UXdqenVDa3k2OXpZTjJMODUrTGlQdEV4Qk1YRm15YTk3Ui9NaUl5S0hJSkg3WGRxZ3NMZlZIRnRzb1A4LzRtSXE1WTBiWnZrd3duejRDa04rNXAwQ0tFYkV4Z3l0Z1g4SE00UitVbC9MN2IwbnliS2REaXR6NzN5SE8va2Z2WHYrNEMvRDQ2OThvYnJ5K1BvL2xCL3QwYkwzZnM0cktZeFgyNzRMZVBqVjFRUmZzeEgvVWV0TG9NTzhwallRWlN6VG0xT3BjY2N6d2JNdDRsL1I0emZDay80bW9kZm52VmlIalV3Z3FSNUFlR2oreEN1UCs0bk5zTzJXWUh6VnZ6VVhLTDlZNVpSZ2JiNU45bzdoTmZQOFBIbHRuWFZvRTBjLzJOMXZvdTZYZi8wb2o0emU1NjhwMjFneG5ZcmtYZ1pjdHoraCtNaUpjM0NDSGN6ZkRaRXFqeUR3TnRkcysrcFAzLzduNjFPaDlwY1cyWi9hb0pPUml4V2FxYWZrOUU1TjlaaHJmVlRwc2NGbGs3NWhidExsbENFUEtjY3lsVEJzZGRHQkZYYTlTaFBENW5nRVpOdU91WVkyNFdhcmpmbmdEVHZPK1dmNU1QcWhqYjBQQ1FpbFZvTXJOQWkrUDl6RjNlNnRXMU9uZitieVhjTUVON0x6YXhhRjZmWnBCbnpmNXZpcTdsdWR0dmxYMWppN0czZUg2VTF4eDU3bmFUS1FhOHp6SXpmQ2tMNWt3Wk9qVGxVUEk0bG1HREQ1NXlKWHVXblNHaHR4MVF4R1FUN3huUHlEbkpxdVlPdEp0a0VEMFhldk55ZjMvM1B1ek5FZkd2KzdSL2YwUjhzT2R5ZDgrV2hSVHpXdkNIeW45RGcvYjZyUEpORVpGaitVeWZtU3ZteVlDczNFLzhYRVhibWlaNWZ6S1BMNnNLQnd3TkdLN3B5OWcyR1ZDWGhTbnllcWoxZEtWdXU1OFhFZGRxdldETDIxZGc5M2xZVFlIVUxMSjNqdzJ6YmZWY0tZZGRHM0E5NWpuZHVwN0hyV016NTdFbHJ4TnlYMzMxZFhUZ2dIWG1PVVZlSitlK2NGUFBseGZFT1VsWHhvVEk1L09BRzBURTJ5ZnBXYitGdWxibzV6UjBycm12QjJxZUphKzZmNUR2ay81SWQxNy82NlhJVXA5N0ZtT0xsT2Y1d2ZQTDM4VlE4NTM1YTUvOTVISDJ1UU5YbXMvQzg1MkFvYy9DV3ozbjJ1bHVQcGZQWXFuNU96am8vRCtQYzduZUxKNzVTOTN4TGtPMnQySEs0aXE1WGZPL2ZKNzkrWWFEbnVNK2RwNC81emFiNjEydnNjZUVscy9oRzI2cXdZdktkLzd5MnFObXluZW1iOWtWTHY5VVRXTnRDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUdDY2dJRHJjWDVhRXlCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNBd1hLRGx4MlBEMTk2dXhhb1BER3JYbEMrdVp6RHhuMGJFZDlZdXBMTGRKMHI0WFFaYnR3NCtyT3pTdnMzeTQ0MzhxQzBEZDlZUmRKM0JWdmZxK3ZDMkhoOGtIelR1S1FQeEh0TjlWSGZ2QThJY1czeWNNU1l3WmV3TCtPbDVWRjdDYi9rM1lWbkxFMmp4VzU5NlZQOWNndnJ5UTl4WEx5aFFxT1c0TS9BdEN6YmNkWVpncG9QNm5jZldoM1lCZUU5YTg0Y3pMZmIvZThjNGRkaklRYWF0emlYSEhNOXFmcWQ1N0w5LytmQ3R6NGVuTmVzNHFFMFdMOGtBdzZuUDhUSU03VS9XSEhTZFlmMFoyUGpNQ2M1bmF6NUticmtkK3k0cmc0dXlDTXN6SXVLVlhWRGxGL3MyYkRUZm1MRE4zVjJZKzIrMGR2anIvTjNuQjl2NTBlNlk2NUthY2JmNFVMajFPWDBHcStieHR1WFVLblR4cUo2UHREcTNxQTA1YUxtdCt5d3JBeVJ5MzFwVHFDb0xtV1h3ay9DYlB0TGZQTSttSEg5clJwY2hGeWRIeEhOcUdqY29LcEhuaGhtNGx4LzRmMS8zdjc5UmdycUdkaWZIa1NHRUx4dmEwUHlMRm1oeHZGLzBBSTlZNThhY08yZXd6aTFLUWE3alozTEord20zV1JFS2M5MVNoTzA3SXVLOXU0SlkzN0lyckRYRGhkK3pxODlmS2Z1MC9OOVZVNDQ3ejlOT0xQdmkzQiszdkZZZkUveVk3L2JmTkNMK3F2TGNZOVhZOS92M0owVEVhVWZnZkNXM2F3WjVuVnFEVU5IbUZlWDM4K21lYlRmaG5uSFBvV3pNYkhNSDJxMFRKb09CWDlzVlVyN3lPanZSWU4xNUgvMHVEWmF6ZHhFWmJKMzNSek9VYks1cHlIMkZVeUxpYVhOMXJISTkrVncrbno5UE1iVzY1ejlGMzQ3cU1wOVhDaHpsZWVEREJ3NHluN245NWNBMjY1Njk1VytzSnVBNlE5enpYdjExS2lIR0ZNZXFYT1hhbStVN1FYbXVub1dEODNlNnJxazJOSFZkL2QzbTlWNmllMy9zcWFVWVE0MURQc1BOSVBwMVRhNFZwcEdmKzNxZzVsNzJrUGRQc3lCa0Zrdk0zK29QSEVEMnBlNlljK051dnIrckpMMWVWK3p6Nlljc3YrOWlhNS85WEtWYzEyVGgwY09tblhjQ3pxcDgxeW4zR2Zuc0pnT3BXMHo1L0NmUDZaKzF6N3VrVnloRmRmTTZKKy8zdEx6LzFLTHY2MWhHdnBmOHVyS3Q4OTVLaGw3bmM0bys5L1IyOXpmZnM4N2ZRUDVkVERIbGRzMTNoUE5lMDlDK2plblAyR05DNitmd1k4WlMyN2FtRU0vdWRlWHpybnlIMmtTQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNheEFRY0wwR2RLc2tRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdzT1VDTFQ4ZVd5ZmxrQThNYXZxWkgyemxSd01aS3ZCTEVaRXZaRTh4NVl2WStXRkN2clNmd1JKenZvdzlkang1anp1RExrNHZId2xrZU1GVVV3YkI1c3ZxK1VIVVJ4dXRKUHQvUWtUOG40ajQwUWJMekJmMmYzOVBxTWZleGJZSUlSc1RtREwyQmZ3Y3oxRjRDYi9CNXJhSWhRdTArSzJQSGVKbnVnOXRQbC8rWnZMRDV3K1gvZncvUnNUNVJ5Q3dab2pQWlVwd1VvWmZIdlNoMzVEbHJabzNqeGtaUnZHVUVzSzBoR1ByRkI5MnJldEQzMWJua21PT1o2dCtBNGY5ZS80ZWY2NkVSMlF3N2xUVFY3dnppL3p3UGtNTDg2UEFPVU0xOHlQTkRJdTUyMHpGU0RMUTdNbmR1Zk9aRWZHUkVRVklWbTJMbW8rU1Z5Mno5dDkzOXZHNXYzbHpSUHg5Q1RuT2p6OXozNy9PYWRzQ3JuZXM4eVBMUFA1UGZhekozL3NqeWdmUythSHZPcVlXZ1pldHorbnoySkFCc1RkckRKTFh5ZmtCN0lVTmxudlV6a2RhWEZzbWEyM0lRWU5OTW5nUjF5aEJrei9XcytXNlBuenYyYjJObWUxUjVlOXdZem84b0tOWmtDTkRMMnJQMDFvZGN3ZDBlZDlaUDk0VlQvb2Z1OEpueHk1UCsyVUl0RGplTDJNazI5R0xvZGUzK2V3aGl6Zjhla1RjYWVaZ25UN2gxcm5WV2wzN3Irc1g4TE1Sa2NHUlE2ZThmNVBQTy9LZXkxeFRoaTlseU5JRmM2MXc0dlhrdFZrVzlMdkp4T3Q1WDduK3lQc1FmYWNsM0RQdTI5ZWpNdC9jZ1hicmRNdXd1L3p0MzJxZG5XaXc3aXdDblVYYldrdzd6NUd6R0Y0V1ZwaHpHcnFQeUtDN2wzVDcveVYvMzFWN2JPdmp2dW5IL1Q1alBDcnpiR3FCbzVhL3NacUE2enVXNGkyMXY0TnREK2pidWZlZURua2RNMlV3YUQ1YnkydVdMRmp6L0NOMGpsejcyOXUwZGpjb0JkaU9yZWo0UDBWRXR2OVFSZHNXVFZ3cnRGRDg1bVhNZlQxUTh5eTU1djNUdzg1ejgxejZGeVBpRHVXZGxTekluc1dRc3pCVFBrOCs2TjJWYituZUtiaFJSS3dLbHU2N3BXcWYvZVRZOHJuL2ZvVnBkdDV4ZlVnM3ZuZU5mQ2NnanlkcGYrbStBemtPYjdFQUFDQUFTVVJCVkRwa3Zuem1lZnVJZUVHWko4ODc4ajNRTEthVzF5SGYxV0FkUjMwUjd5Z2g0Rm5JZThpVXordXlpRWpOZm4vVmV0NVk3cHRtNGIyNXA3SEhoTmJQNGVjZWY2NXZ6UG56dW8vcDYvQ3lUZ0lFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0N4S1lNa3ZRQzBLU21jSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQ3dSb0c4bDVzZkVKd1VFYmVNaUJ0MllZWGZYdG1mRE1QTEVMd00wWGxaQ1R4ZFF2Qm01WEMrMFN4RE9mNXJDWlc3YlJjZThVTVJVUnQ0blIrdGZiQnpmbm4zZ2R6WkVYRmVGNlkwZFhqYzFicGc2dnhvTzhQTXY2OG5oby9yZWtLWmpRQUJBcnNFTXVqako4cnhJc00rcmpYeVErajhJUEN0WGFETmEwdUljSDcwdk81d1dSdDhjd1R5by93OHI3dGRDVVg2THlPNnZuT09sMEVvK2ZGa2ZtaFhHNVk0b2h2ZjFIVDNHSCt5K3lEMTZpTVhuZ0g5YnlqblovbXhZdjc5NVVlNUpnSkxFdGc1MXVSeEpnT0s4dnkrSm5SajU3cmtoU1ZNNDNXT01VdmF6S1A2NG54a0ZOOWFHK2Q5aGp4dVowRGE5eDdRay96YnpVSW5mOUNGUlg1c3JiMDlHaXMvcWlHN24reUNGMjdjRlQ3SjRJYmFhU2tCMStkR1JJYmRmYUYySU5vdFV1Q28vdTB0RXJ0QnAvb0VYT2N4TEF0VVpFRFFsQVUxRHh2T2EwcmdUd2JqOTVrZUdCRm45Smx4WWZPTUNWRzVha1JrSWNzTVdwcGp5bjE0bnRzY2xYRHJIYk44bnZiU3JyanJjUk1oRGcydTNlbkcySUNpaVlaenBCYzdkNkRkdWpFM2RiKzU0elptLzduYlBvOTV0K2pDKys3YjNTYzlmZzBiSmZjUmVVL28vUVBXblFXZC96WWl2bU5BbXpsbm5icW9UY3Z3NFZVdWVSODk3NTNuUGVhOHQzeXZMbmg0eWtLVXEvcXphZjgrOVc5aDB6ejY5SGRzQWRwVys4WStmZDJFZVhJZm4rOEYzYnA3VG5UejhsNVE3YnRUT2Q2ZDU3eExlN2EyQ2R0aWlYM012N2NzaHZ2VGxaMWJaNWk4YTRYS2piYWkyZHpYQTNNRlhPOGVkdDRqdms5RTNMVVVTOG56MEN5Q25lZkJHZUNjZnhmcm1Hb0Ryck92V1V6aXViczZuVUhEZjF6RzFlcjloMHVVWWdicE5tYjZiTG5QbHN2TGUrVDVYcTlBNjJHaStVd3RnOENIRm9yTGM0TEhIeENHUHF3SDN6eDNQdC9MSVBWL0g3dWd5dlpqandtYkhuQTk5dnc1Q3dmK1lhVzlaZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNEUVFFREFkUU5FaXlCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdNQWFCRExRK1FvUmthR0JHWmlXTDhydk4xMVl3bkl5b0NCRG1vOUNtSFZmN2d3Tnk0L1o4cVBVS3g3U2FNY29BMG56bzlaMWh5VHViTnZySGREdkRFRjZXMFI4dWd2TStzKytHT1lqUUlBQWdRTUZNanpoMjdvUFhuTy9lL2tWVHZrUjVFZkxoMHo1c1pxSlFFdUJmSDZmSVNiNTMySG5kN25PUEI5NFR4ZjI5YVVOUENmSXY3YzhoLzMraVBpV0ZZRHZMdWV3L3liWXQrVlB6YkxXSUpESG1zdjF1RGJaK2R2Mm0xL0RSbHJ6S3AyUHJIa0RWS3crNzhsa1VPanU4OGQzTGFqSVJNV1FGdG5rMXlMaWNZdnMyYmhPWllqYXc4WXQ0bXYzdkRLQWFhNFExSU82KzZDdXNNcTlSNDVGOCtVSkNMaGUzalk1ckVmN0JWem45V1dHSEdXd3ppbGRVYTRiVlJaZGFTWHh0QksyTkNRTVA0dkY1SDV1MDk1MWYyeDNIWnZCYUxYMzdqT2NPUXRYOVMyRVdidU5qbXE0OVk3SENSRnhUcm5uVjJ1MFg3dThINWpGYURNWWRlZzBOcUJvNlByTUh6RjNvTjI2elRkMXY3bmpObmIvbWN2SmdwYTVmN3ZHbWpaR1BqdklRTDYzREZ6L2xVcEJ2K3ovRXFjc3ZwWUZFYVo2aHQ0NjRIcW5hRndXc1g1OVYyRGpuZVcvL2Q2VnFBbWlYTUkyZWtWNVZwV0ZTK2FjTWlnemcyTVZldTJ2L21OZGdhc3MxbmxzL3lZWG1iUEZ2ckZ5MVJ2VGJPZlpXdTVMVmoxMytvOFNicCsvWWUvYmJNd21IdFRSbTVVUTNKcWlvL2xNTWd2Uy9jdWdOYmFaMmJWQ0c4ZTlTNW43ZXFEbXZLTFZzVFdmVi94Yzl4enlyMHNScTN4UE1wZWQ3OENzWXhvVGNIMlY3cDdJTTd2NzNtZDNoVWFmV3M1NXBoaERGaG5MNGxqWHFWeDQzaC9JZ2d0LzF4Vi9QTDBMRTM5dzVYTG1hUGFZOG03eDJFRHZLZnFhQldOL3RhSjRlMTZmWkZHRG12MzlRZVA0UVBjT3pzOTMyelZEMWRjNWpUMG1iSHJBZFJhc3ltdlFtbnZDNTBmRURRY1duRnJudHJadUFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlIRW1CbWh1OFJ4TENvQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFJSEZDSXo5a0g4eEE5blZrUXptdUgwcG1qT21mMW5ZN2RsZHdPYXR4aXhrWk5zTWI3MTVSTHhzNUhJMFg1NkFnT3ZsYlpQRGVyUTc0UHJTRWZIQWlEZzFJaTZ6a0dIY3Q0VDhmSGxnZnpMUTZMVVJrWUhQbXpKbEVhb01STXR3b3pGVGpqbERsbzRiczVCRDJtWW81c2tsMUcraVZTeGlzYTNEanNhRVd5ZklVVHl2V2NTR1BxUVRjd2ZhcmRzakE5cGVGeEc1Lzl5MHFkWCtNOGY5NDZWUVFCYlptM09xRGJmT1ByWU9lRzQ5N2d4NWUwYnJoZTVhWHUzNHMzREcrOHY1d211Ni9lemZSMFFHbWcwSlg4N3pwak1tSE5zVWkzNWZOK1lNY00xaWVqbnVPWC9yQ2h3TjI2TDV6ZWFqSStLMFljMitNWGZMZldObEZ6UWpzSEVDbHlxQnB4bkdYek5sc2FJTWdwMTdjcTB3amZqYzF3UHJETGplSzNpSmN2NlcxOFhybUxMb3kvUFhzZUtCNjZ3TnhjK0N4VmxVN2sxbGZjZDA5M0NlWGtMR0IzWmgwdGt6cVBtWFM3R1hYRkVHbm1lZzlQR1Ryclgvd3NlRUVaL1lCUm0vUENMeVhtaUxLZSt2NWpIZ2N5MFdObklaWTQ4Sm14eHduY2Z4czBweHVSckdCMFRFL1VZVUhxeFpwellFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ3NFZEF3TFdmQkFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJTEEwZ1p0MkFYVXZpWWc1M25QOGFna3ZtREljYkNlSTdDT05vQjlWUWhjYUxXN3dZdDVkZ2x6L1pYQkxEWll1SU9CNjZWdm9vdjNiSFhDZC8zSkNSSnd6YzlqaGZtSVo5dk1MSlFRL0EvR0hUdXNPWXhyYTM1ei9TUkZ4MTRpNHNLYnhualpUaFZ4bkVHWVdXdmg0Z3o0dWZSRjUvbkI2Q1ZnZjI5YzhUMGkzTEM1Uk80ME5LS3BkN3phM216dlFidDNXU3lpQVVtdlFjditaZldnZGNMOXFYTytJaVA5WndwWlh6WHZRdjljRUl0YXVhMGk3RE1YTDhMNVBEV2swY041Vngvd3NrdkhPUFVIV0dTait4WUhyMlcvMlg0dUl4elZZemtHTCtFVDVYVnkvVWZqZTdpRDFQTTQ5SWlMdU9XSC9keTlhZ2FQaDBOY3NJZVMxaFFmeW5QNDJEUXBrRGUrNUZnUTJXK0FHNVRyMDJJcGhaT0dFbjRxSTNOL09PYmxXbUVaNzd1dUJtdk81VjNVaHlSbklQcVJBUjErdGRSYnl5S0tNTCtyYjBUWE9WM00rZFZCaG0ydEV4TGtSY2EwMWptZG4xUm5TblBlbnpveUlyK3pwejhYTC9ZMUhSc1IzcnJtdjkrcUt0anlzc2crdDd2bGtHUFNkSStKdkZoU0tQUGFZc01rQjE3ZU5pR2RWUGhOYzF6Rzg4aWVzR1FFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JJNnV3QndmZmh4ZFBTTWpRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRXBoRDQ0UzVVNXRVTmdzQXlsUEw4aU1oQTVnOTI0WE52aVloL2pvZ01vcnVnaExWbDBNT2xJdUxSSmRDZzlYaGFCR1B1N2RQUFJNUnpXM2Qwd1BMUzZoNEQ1amZyNWdnSXVONmNiWlU5M1J0d25mOWZGZ2g0NWhwRHJqUFE1NWNqNG1NaktYOTdSTkROeUZVUGJwN0hsNXQwNC83dzRKWUhON2h1Ukp6ZE1CenBGUkZ4Y3Jmdi9uVERQaTU5VWNkMGdVMlBqWWhUUjNRMGorRVpkcFJoWlRWaDdUdXIzdWFBb2xyK3NXWnpCOXJWanJObHV6TWlJb1BzTm1uSzgvUWJqZ3lIM2p2ZVZtRm5mUnhiRlE1WTRyYkwvVitHNno2dkQ4VEllWFlDSVQ4UUVSbjBlRjRYclAzNmNseWRJdkN4MWI0NWwvT1pycWpIZXlQaURhWFBXZGdveDVISDI1M2pSb3ZROWM5R3hFbGxQVHY5djNhNVp2N3VrZjU5bWl0dzFFZnBvdlBjdmR4akdON3k2eTErUGlLZVVkdFlPd0piTEpDRkU3SjRRWjdEMTB5LzE2aEl6cEIxanozdkhiS3ViWnAzN3V1QnBRVmNaMURzbUNKTnRiK1ZmK3VDbmpOby9oOXJGekJ6dXl1VU1PN2plNnozb0hEcm5hWXR6dmw2ZE9QUVdSNFRFZmN1eFR3UG16R2ZoZVM1eXYzTGM1R3g2eDNhdmtVaG5iem44L2h5RDNMbytuUCtmRTUwaDNJdVg5TitxalpqandtYkduQjkyWElmOUVhVnNIZWJ1SGhSWmJjMEkwQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0F3UFlKQ0xqZXZtMXV4QVFJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQVlPa0NHZXo1dHhIeEhTczZ1aE5nL2FZU1J2RG1FbVQ5a1JJcTl1VUJBNzFNK1FqK1RnUGE5SmsxQTRNZk1qSVljKzk2cnRtRnFXYWczbFg2ZEtEeFBKc2FrdENZNGNndVRzRDFabTNhL1FLdWN3VHJDTlhKL2UxZFN4QndGZzRZTy8xRVJHUW9jd2FVTFhtYW9vakJ6bmhQaUloekdvU1Z2N2dyOUhESFV0aGh5WlpUOUcxc0FZdFd4L0J0RFNnYXMwM0htczBkYURkbXJLM2Fab0dEbDNRaFpadnluZENVKzg4V0FmZXJ0c3RUU2lqY0YxYk4yT1BmVDRtSXAvV1liODVabmhBUnAzVUJlVU91cDJyN2w5ZGhlWTB4cHBCQXpicjdGbFhLYmZ6K0VtQ2RRZFlaWVAzT1hjV1NWcTA3L3liVDhwRVJjYkZWTSsvejc0ZjlyZnhPUkR5MFlwbERteWh3TkV6c1c4czUzSW5EbW4xamJvSGlsWENhRVNnQzN4Y1JyNHlJSzFhSVRGRjhZMVUzeHA3M3Jscit0djc3M05jRFN3dTR2bjY1ZDN5NW1YOEFlWS8rNXFVSXlNeXJybDVkQm5LL0xDS09QV1FKcThLdHMra2MxeUFIZFRHTDB2eHVWeURqUFFNVkxoOFJ2eGtSOXluOUg5aThhdlk4NTg4Q2JNK3BhbjNSUnQ4VEVTK05pT01HTHV2UGkxZUxhN21CcTE0NSs5aGp3cVkrdThsbmNrOWRxYlAvREMwQzB5dFhyUmtCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSTdCWFlsQmZYYkRrQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUJnZXdTK095SmVGeEZYTDZGcUh5eUJZcTh2NFdJWktQYkppUGhpWTVMV0lkZFRCY1BsKzUrUDZNSkM3dGw0L0gwVzk2UVNZbnRobjVuTnMzRUNBcTQzYTVNZEZIQ2QrNGpUSStMQk13M25ySzZvd0QwaTRtTU4xNWNCL3ErTmlBeXJXZXFVZ1pPNUgzN3NoS0djUHg0Ukx4Z1JjdjJzYnJ2Y1pVdkRyWGQrTnhreStld3UzT3NtQTM5SUxZL2gyeHBRTkpEOElyT1BOWnM3MEc3TVdGdTF2V281ZjE1SEFaU2FNYlFLa0Q5bzNiVi8rNnZHMHJxZ1E2N3ZsaEh4d2xVcm52SGZ6eTNGTWk2WWNaM3JXTlcxeXJuR2xmZTU1c3pyelhkVkZFMDZhQnkxNTJhcmd1Q24rcDN2SHNlWHVxRFlHMGZFMzYxakkyM29PbTlSL3FacnY5dThmemZ1UDl6UXNlczJnU1VJNU4vZTczVmh0UStxN0V3V0pQaXRDYS94OW5acjdIbHY1VENQZkxPNXJ3ZVdGbkNkQWUrdmlvanJ6YnlsTjdFb1J1NHovcWlFUE8vSDFTZmNlcWZkTlNJaXo2WHpQSE9PS1orZi9GcDM3djYya2Z1c0RMck8rM3BuZFBjU3MxRFlsTlBaWGJHWTIwZkV2emRheVpEaWNIa3RsL2ZJTWtoNTd1STZmWWM3OXBpd2lRSFhWNHVJbDNkRm42N2RGMm5YZkhtOWxPZmVHWFJ1SWtDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFJRUZDTlMrS0xHQXJ1c0NBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ2NFUUZMaDRSVjRpSXowMFFZcjJLTEVQQ25oZ1JKNithY2NXL3R3ekczRzlWK2NIL3F5TWl3OERubXM3dndnWnVXRUxHNTFxbjljd3JJT0I2WHUreGF6c280RHFYZTB3SlhqNTE3RW9PYWYvdWlEZ3RJbDR4UVRETUpVc284YTBtN1ArWVJXZUF5cDBqSWtPc3BnN0Z1VjBYU25WbUY3aDBzWUVkL3NzU3pOWXFOR2pnNmhjMWU0YVhwdUVOZXZhcWRURDROZ1lVOWFRK2NMYXhabk1IMm8wZGI0djJXYWpsdVJWaDdpM1dQWFFaZWI3eHNJajR5dENHQStmUElna1pkSFhjd0hZSHpaN0h2VHRFeEZzYkxXOW5NVDljenVzdjNYaTVOWXQ3VFFtYyszaE40dzFyTS9jMVo4MjUyYjBpNHVFcnpqVitzQVRDZmR0RS9zK0lpRi9zUWg4Vk9Pb0hmSWtTbW5qSGZyTi8wMXlmTGVjcmI2OXNyeGtCQWw4WHlIdUtMK3FLQlIxZkFaTEIvamZ0enFueW1EakhOUGE4OTM4ZDRXRFBSNDI0UHp2MzljRFNBcTdYY1U5bEU0TjFkLzdHODNuQTgvZTVaNUFGTnJNWXpac0c3QXp1Vk00RkJqUVpQR3RlNCtSNTR0aGc2NzByem12S1BJZjVrKzZlNG5jTzd0WHFCbFBzWC9zV2tzbWc4cnkvOXNiVjNWenJIR09QQ1p2MmR6aTJrT3RUSXVKWFM4R2l0VzQ0S3lkQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQ0Jyd3NJdVBaTElFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFoY1ZDQkRMWjQ5SWlEd2FSRngxNGo0d3NTd3RhR25OZDM2Y2dtNGVFNU5ZMjAyUmtEQTljWnNxcTkxOUxDQTYvejNzZnV5Z3pReUtPcjBzcCtjTXB6MGdSRnh4Z0kzU1liaVpORGpxMmJxVzc3em4wSGlqeHdRY24zL0x1UTgvWExmYmZxNlFOK2cyM05MNk5FRkRlRzJMYUNvQmQxWXM3a0Q3VnFNdWNVeWxycmYzQmxiQnNUOVFrUzhiSWJpQUR2clBDRWl6b21Jc2VHL0Q0MkkrMFhFRkVVRHJob1JyNHVJcTdUNEVZeFlSb2FEM1gyR2E1Z1JYZHo0cGhrYStMaXVZRkFHSDY2YThyejhJVDMvVnFhNkx0eTBnTHhWcG5QOCszOHZvYmkxK3h5QjRuTnNKZXZZRm9HYlJjU0xCMXhEN1hiSjhOamJkZ0d5bjU4QmEreDU3OCtVWU40WnVqcjdLbXBDbzNjNk9mZjFRRTFmODU3Q1QwLzRPNXY3MmlEdldmeFd6M09YMlg5TVBWWjRZaWthc2xOMEpvdE9uQlFSYitqUmR2Y3NsNDJJczd0aWNEY2EySzdQN0U4dDkzcmUwMmZtRWZOa0laajB5S0pFUHpwaU9YdWJUbldlczZxUVRON255ZlB2VFNqaU0vYVlzR25uNzN2LzdvYjgzRDVZbnQ5OWVFZ2o4eElnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlEQXRBSUNycWYxdFhRQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUJnTXdWcWcySC9zb1I1VEJGK3QxY3kzd1BOa05rSFQweWN3UWkzajRnWFRMd2VpMSsvd0MwajRqYnI3NFllOUJSNGZVUThhY1c4ZlVOOSs2d3lBNkl5YkRFTEFNd1JuSnlCWXJtdUpVMlA2Y1orNzRqNDNNeWQ2cnUvLzJwRTNETWlIcnZCb1ZKVDBxNzZlM2hmUkdRUTNrY2FkMkxiQW9wYThJMDFtenZRcnNXWVd5eGppZnZOblhHdGEvK1o2eDhUL3Z1QmlQajVpSGhqaXcxMHdES3VXSW9tWEcvQ2RSeTI2SGVYUWdxdmNPeVlaUXYwdWM0Y0VtNmRuYzd6aE4rT2lBeGliems5b0FTNy8yZkxoUjd4WmYxaDkzZjBCNVZqVE9kYmxVRGV5a1ZvUm9EQUxvRkxSTVNqU3dHNkdwaTdsYUlFTlcySHRCbDczaXZnZW4vdHVhOEhsaGh3ZlVwRVpCSEdPYVlwQ2tYTjBlL2Q2OWg5M3lYRHJXOGRFZWRWZHVJR3BhalBzWlh0ZHpmN1JEbkh5L3QvbjJxd3ZLR0x1RnBFL0daRS9Ncklva0ZUQnk5bjBhQXNUbkNkUFFPY3F4RHBVTmVENWg5N1RKamF1ZFU0Y3psOXJvc09XbCtlTitkMSt0KzA3SkJsRVNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdNQjRBUUhYNHcwdGdRQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRURpYUFsZU9pRE1qSWtNcCtrejNqNGdIemhUOHV0T2ZmQmMwdzZjZkh4R1g3OVBKZ2ZPY0ZSSDNpSWlQRFd4bmRnSUVsaU53WWtTOFBDSXVYZG1sRFBYTS9kdUxJK0lybGN1b2FmYkRFZkhxRWYydVdlZCtiVExNTzROWkh4SVI1N2RhYU1WeWppbkIxYWNlMERaRGJETGM1ZmtDU2cvVnZXNUVuQjBSMTlvelZ3WlluZFFGUzc2aFl0dXNhckpOQVVXckxQcisrMWl6dVFQdCtvNXI2dm11SHhHdmlZakxUYjJpbnN2UDBQMm5SRVNHNUg2b1o1c3BadXRiSkdEM3VuUGZmNThTakRsMTRackxsdjNTamFZWS9BSEx6RzJUeC9XOGRzbUNHWE1lMzJjYzVtSlhkVmpCaFRPNmM1OC9xOWdtK1RzL0xTSWVHUkVYYXpEeW94QlUyWUJoMENLdUZCR3YzQ2RZc2U5QzhtOHh6MFV1Nk52QWZBUUlyQlE0S1BCMFpjT0krR1QzTjMzamlIaEhuNWxIekRQMnZGZkE5Zjc0YzE4UExESGcrdmhTUk9WU0kzNmZmWnErcVJUTE93cjNqak53OTY4aTRza2pDNjVsd1A1VEkrS09mUUFQbU9kbEVmR29jczQrUjVHNVZWMjllRVRrL2NVc3FuWnl4ZmxtQm5UZnRidkd1bkRWaWtiOCt3a1JjYzZ1SU82SFJjVHZ6L3lzWmtUM3Y5WjA3REZoVXdLdWE2N1JkOXMrb1Z6N0xPRnZZK3cyMTU0QUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSkhTa0RBOVpIYW5BWkRnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSU5CWTRMSHhzWjFYNUlmMWRTbkRGZnpaZWY5L0ZaYmgxQmxIL3pxNFFoNzV0OTg2WDQzbDZDWE45bDZEVVdrYnRDQ3hHb0NZMEpJTXZueFlSRDQ2SWRlMEhNaVR3dkgyQ2lPZUEvZGN1dU9kRkpkam9GUXNLdzhtd3BXZDNBYlkzMllQdzBZaTRYVVJrR0xscHRjQVBSTVR6SXVKcVpkYjh2V2V4aUxTZFlycHBDY2lxWFhhR2I1L1NiZU8zMVM1Z0E5dU5OZnRJK1p2SXYrVnRtcTVZUXV5dXQ4WkI1OTlUaHJFOU1TSmVHQkZmV0dOZmRxODZRNlNmRXhFMzY5R2Z4M1dCYlg4MGMxR0RPNWZBdU4zZCs2NXVYL1ZEUGZyYlo1WlBkMkZwZjEvK2UxVkV2SGRCeDdZKy9UK0s4K3dONE1zeDFvWmI3L2prT2QrdHk3WGNtT0pIR2VhYXk4bDlxYW0vUUlaWS9uWC8yYjlwenQ4b1JWVkdMRUpUQWdUMkVjaGpmeFoxcUFuL2YyWTVENTh5UUhOc21LbUE2LzEvOWdLdUl6TGcvWFVSY1pVSjl3eVBMZ0hDU3pubmJ6SFVZOHQ1OHRoNy9EVkYyejRRRVg5UmlnUjlxc1ZnSmxyR0pVc0JnRHgzdVVXUC9XdmUwOGdDb20rZnFEKzdGNXZQUnJKQTNiMHJpOGJNME1WRFZ6SDJtTEFwQWRmN1hRdjF0WDkzdWE0L0NxSDZmY2RzUGdJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNHeU1nSURyamRsVU9rcUFBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFpc1NlRGFKYUR2dUgzVy81WXUvUFVPSlNSdVRkMjd5R3J6M2REdkxnRjVQellnN1ByOGlIaFRSUHhEQ2ZQN3loSUdvdzhFQ0RRVE9DWWlIaHNScDY1WVlnWWtaeERNRWtKSkwxTkNnVS91RVpZekJPb3pFZkg1MHVETkVaRUJ1TGt2ejVEb3QwYkV2MFRFRjRjc2NPWjU5eFplT0RjaTdoUVJINSs1SDV1K3V0MGgxLys3L083SEJsaHR1b24rYjc3QUpTTGlHU1hjZStyUmZLTHNLek1vK1oybElFRWVRejRjRVVzOWoxeFZ1Q2FENzM4M0l0NHpOWjdsRXlnQ1daeml6SEtlYzYrSWVIaWo0a0laYVBtb2lMaE5oYlR6aWdxMHJpak1wU0xpcklnNHFhNTUvRk1KZnZ4UVpYdk5DQkE0V0tDbTROUHVwZDB0SXJMNHhWVFQyREJUQWRmN2J4a0IxeEdYSy9kMmZxTHhqemNEMy85dlJEd29JaHkzRHNiTmE3T25Sa1FXd0Roc3lsRHJ4NWNpR1hsZmF0T212TitZWWQ2L1hKNlJmTnMrQThqN2tSbUdQY2M5bDUzKzVMWHBVcTlMRDl2R1k0OEpteEJ3ZlZEeHZqNi8vUXhMei9QdE4vU1oyVHdFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ01MK0FnT3Y1emEyUkFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRMkR5QkV5TGluRjJCMFJubWNaK0llSFJFL1B2bURVZVBDUkRZUW9FTUVIbCtDYy9iUGZ3TThueEVSRHlyQzV6NTFJYTVaSEJPQmdydU4yV1E5WktEcXNkUTV6SHB4Ukh4M0lpNGUwUjhZY3pDdHJodGhseG5lTkNmUmtRZTEwMEVDQng5Z1JNajR1VVJjZWxkUXhWc2ZmUzMrMUpIbU1HSEQrMEtWYnkvRkNKcEdmcVgzd3hldHd2UC9xTVNkSDJ4RlFnWlduL1BFcmk5aVdHQTY5N0dXVnpxbFYzWTU3R1ZIWmt6K0xHeWk1b1IyR2lCc1dHYVAxVUt3azJCTURiTVZNRDEvbHRGd1BYWFhUS0krcGNxZjdoWkRQSENyZ0JNQnVhK3Z2ejNxbExrMGZWelA5VDl6ZysrV29wTVpxajEyYVhJV3IrbExYK3VQUC9Nb2tJWlFQd3IzZmgrSkNJK1YrNUR2bjM1M1Y5RUQ4Y2VFNVllY0oyL2tkOHJBZmsxNEFyVTFhaHBRNEFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBZ1JrRkJGelBpRzFWQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0F3RVlML0hnSm5zamdxbnRFeE1jMmVqUTZUNERBTmdwa01IS0dJcjgxSXA0WUVTK0ppQXUyRWVJSWpQbUtKWkM4WlJqbUVXQXhCQUlFQ0J3cWtOOVJuVjZDN1RQd0w4Ti9QOFNNd0JFWE9DWWlyaDhSR2RCNjdZajQvbEs0S2NNcTMxRUtvTHczSWdSYkgvRWZndUVSMkhLQkRGMTlhVVFjVitGd2JrVGNicUpyNXl5Njgrc1ZmZHBwOHVjUjhaWVI3WmZjOU00UmtjVkphcVpQbC9POXo5WTBybWp6OElnNGVXQzc4eUlpeHpobHdhckxSc1RsRHVuWGw3cDczR25sdnNMQWpkZHo5aXpJbHNYa2N2K1Q5K0xPNmdxUC9PTVdGZGk2ZUVSY1BpTHk3OUJ2ck4rUDVxWVI4ZVIrcys0N1YxcWYwaDJ6M2paaUdWTTJ6V1BwbWQxMStLcmlPL3YxNFFrUmNkb1cvZjFNdVIwc213QUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBcE1KQ0xpZWpOYUNDUkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQWdTTW9jSm1JK0g5Q0dZN2dsalVrQWdRSUVDQkFnQUNCYlJESW9MVnZLZWYwMnpCZVl5UkFnQUFCQWdTK0xwQUZuODRwSWY5RFRSNFFFZmR6UDNBb20va0pFQ0JBZ01EWEJKWmFhTUxtSVVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFJR0dBZ0t1RzJKYUZBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNpeE80WFVTY0dSRVhHOWl6cjBiRTdTUGkyUVBibVowQUFRSUVDR3k3d0xlVzQrZE5LaURlRnhFM2k0aVBWTFRWaEFBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUm1GaEJ3UFRPNDFSRWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdNS3RBZmxOOWVrUTh1R0t0bjQySWt5TGlEUlZ0TlNGQWdBQUJBdHNvY0V4RVBEWWlUcTBZL0VjajRtY2k0aTBWYlRVaFFJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFnVFVJQ0xoZUE3cFZFaUJBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0F3cThDWXNNMXpJK0oyRVhIQnJEMjJNZ0lFQ0JBZ3NIa0Npa3BzM2piVFl3SUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDSXdTRUhBOWlrOWpBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQTZlL0p3d0FBRFp4SlJFRlVnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnTUQyQ1FpNDNyNXRic1FFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFnVkVDQXE1SDhXbE1nQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVOZytBUUhYMjdmTmpaZ0FBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ01FcEF3UFVvUG8wSkVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQXRzbklPQjYrN2E1RVJNZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFUmdrSXVCN0ZwekVCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFZUHNFQkZ4djN6WTNZZ0lFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJREFLQUVCMTZQNE5DWkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSWJKK0FnT3Z0MitaR1RJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBWUpTRGdlaFNmeGdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUNCN1JNUWNMMTkyOXlJQ1JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUtqQkFSY2orTFRtQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQ3dmUUlDcnJkdm14c3hBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FHQ1VnSURyVVh3YUV5QkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdTMlQwREE5Zlp0Y3lNbVFJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0l3U0VIQTlpazlqQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnTUQyQ1FpNDNyNXRic1FFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFnVkVDQXE1SDhXbE1nQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVOZytBUUhYMjdmTmpaZ0FBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ01FcEF3UFVvUG8wSkVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQXRzbklPQjYrN2E1RVJNZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFUmdrSXVCN0ZwekVCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFZUHNFQkZ4djN6WTNZZ0lFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJREFLQUVCMTZQNE5DWkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSWJKK0FnT3Z0MitaR1RJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBWUpTRGdlaFNmeGdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUNCN1JNUWNMMTkyOXlJQ1JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUtqQkFSY2orTFRtQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQ3dmUUlDcnJkdm14c3hBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FHQ1VnSURyVVh3YUV5QkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdTMlQwREE5Zlp0Y3lNbVFJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0l3U0VIQTlpazlqQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnTUQyQ2Z4L2FCWWMzdFRRQ2FFQUFBQUFTVVZPUks1Q1lJST0iLz48L3N3aXRjaD48L2c+PC9nPjwvZz48ZyBkYXRhLWNlbGwtaWQ9ImNvbmZpZyI+PGc+PHJlY3QgeD0iMTMiIHk9IjExMyIgd2lkdGg9IjQwMCIgaGVpZ2h0PSI5NSIgZmlsbD0iI2VhZjJmOCIgc3Ryb2tlPSIjMzM1NTZmIiBzdHJva2Utd2lkdGg9IjIiIHBvaW50ZXItZXZlbnRzPSJhbGwiIHN0eWxlPSJmaWxsOiBsaWdodC1kYXJrKHJnYigyMzQsIDI0MiwgMjQ4KSwgcmdiKDI0LCAzMSwgMzYpKTsgc3Ryb2tlOiBsaWdodC1kYXJrKHJnYig1MSwgODUsIDExMSksIHJnYigxNDQsIDE3MywgMTk1KSk7Ii8+PC9nPjxnPjxnPjxzd2l0Y2g+PGZvcmVpZ25PYmplY3Qgc3R5bGU9Im92ZXJmbG93OiB2aXNpYmxlOyB0ZXh0LWFsaWduOiBsZWZ0OyIgcG9pbnRlci1ldmVudHM9Im5vbmUiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHJlcXVpcmVkRmVhdHVyZXM9Imh0dHA6Ly93d3cudzMub3JnL1RSL1NWRzExL2ZlYXR1cmUjRXh0ZW5zaWJpbGl0eSI+PGRpdiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiB1bnNhZmUgY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IHVuc2FmZSBjZW50ZXI7IHdpZHRoOiAzNzRweDsgaGVpZ2h0OiAxcHg7IHBhZGRpbmctdG9wOiAxNjFweDsgbWFyZ2luLWxlZnQ6IDI2cHg7Ij48ZGl2IHN0eWxlPSJib3gtc2l6aW5nOiBib3JkZXItYm94OyBmb250LXNpemU6IDA7IHRleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICMwMDAwMDA7ICI+PGRpdiBzdHlsZT0iZGlzcGxheTogaW5saW5lLWJsb2NrOyBmb250LXNpemU6IDIwcHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtNaWNyb3NvZnQgWWFIZWkmcXVvdDs7IGNvbG9yOiBsaWdodC1kYXJrKCMwMDAwMDAsICNmZmZmZmYpOyBsaW5lLWhlaWdodDogMS4yOyBwb2ludGVyLWV2ZW50czogYWxsOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3b3JkLXdyYXA6IG5vcm1hbDsgIj7phY3nva4gLyDlj5HluIPmnI3liqE8YnIgLz7kuI3lj6/lj5jlv6vnhacgwrcgSGFzaCDCtyDot6/nlLE8L2Rpdj48L2Rpdj48L2Rpdj48L2ZvcmVpZ25PYmplY3Q+PGltYWdlIHg9IjI2IiB5PSIxMzcuNSIgd2lkdGg9IjM3NCIgaGVpZ2h0PSI1MyIgeGxpbms6aHJlZj0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUJkZ0FBQURVQ0FZQUFBQ1B0VUhVQUFBQUFYTlNSMElBcnM0YzZRQUFJQUJKUkVGVWVGN3NuUXY4ZjhXYy8xLy90RzJiUyttbWxjcWxsZ29idXFHVVNLa1dVVkZKZGtQcHFzanV5b1lJdVNWSnVXU3RTdW02WFhSWEtDVmtYVXFSU3hRcEZhRmxFZjk1K2MzSDczeFBNMmRtenBsei9iem04ZkJvOS9lZE0yZm1PWFBPNS9ONXpYdGU3LzhIRlJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFnV1FDL3kvNUNsMGdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJQUNleGFCQ0lnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlKUWc0QUU5aHJRZElrSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlTR0RYR2hBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQ0JHZ1Frc05lQXBrdEVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFLNzFvQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJMUNBZ2diMEdORjBpQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FoTFl0UVpFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRW9BWUJDZXcxb09rU0VSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFWkRBcmpVZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBalVJU0dDdkFVMlhpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBRWRxMEJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFWEFUZUFTQVh3QzRWNEJFUUFSRVFBUkVRQVJFd0VWQUFydldoUWlJZ0FpSWdBaUlnQWlJZ0FqMFMyQVBBSThGOERVQTF3RzRBOEJkQU83cnQxdWp1ZnREQVh3SXdFVUFUcE1RT3BwNUcwTkhWd0J3QVlESEF6Z1d3UHNCM0RLR2pxdVBJaUFDSWlBQ0lpQUMzUkdRd040ZGE5MUpCRVJBQkVSQUJFUkFCRVJBQk1vRWxnWndCb0J0SEdpdUI3Q0ZGZHhUeWYwTmdKY0F1QVRBejFJdkhsbjlyUUdjRDRDL2JmNEU0RVFBUndDNEFjQ2ZSellXZFhkWUJQYXl3bnF4VnhjQ2VDdUFhN1FKTnF6SlVtOUVRQVJFUUFSRW9DOENFdGo3SXEvN2lvQUlpSUFJaUlBSWlJQUlpQURBNk91TEFhenZnUEY1QU5zQitFME5VQzhGY0FLQVh4bUJuU0xocVJNVkE1ZTA0K1JtUXJsOEJjRHVWbWl2Z1ZDWHpEbUIxUUJjWmpaczFuUncrRis3K1VXUlhVVUVSRUFFUkVBRVJHRE9DVWhnbi9NRm9PR0xnQWlJZ0FpSWdBaUlnQWdrRVdCRStVRUFUckhSNGJjblhYMy95bzhHOEVVQXF6amErYVFWaUZOdnNhRzFTMW11Y09FNUFQWUJjR3RxWXdPdi95Z0FWd0JZMWRIUG53RFkxREQ4NGNESG9PNE5qd0IvSng5cHZOY1A4SFR0S0FBSDZvVEU4Q1pPUFJJQkVSQUJFUkNCUGdoSVlPK0R1dTRwQWlJZ0FpSWdBc01nUUF1SjVRRXMwVkYzZmwwekV2ZS9BTHlzb3o0TzhUYlBBM0R1RURzMmgzM2lkK2VqclZBOUcvNHZBWHphUm9oVDZQMURJcGNOQURCUy9lOGMxLzJidFRwSmFYSU5LL3l2NWJpSWZXTTBPNStwcWZpNzcydm54TVhvR09ObHY1OUUwSlRsbzdxV0FEZG1MZ1d3bElOSUUrc21BUllCRVJBQkVSQUJFWmdnQVFuc0U1eFVEVWtFUkVBRVJLQTNBbyswRVcwdW9heTNUcFZ1L0ZzYmxYZXpFVzJmWW82NGZ3SEFNaDExcm81WXlLNUpZSmZBM3RFU0RkNkdVZEtNTnFlSVhTNWZCZkFjRS9INmkyQXJDeXU4MEhxd3V5NUwzVnpoczB3cm1HMERmWmhLTlB1eU5sSi9JOGQ0Znc5Z2N3QlhKODdIMEtyL0s0QjN0dEFwMyttSWxlMTZkSzN4RnJxUjFPVHA5dlJJMGtVMUtzOFNtM0x6cTF6bzhiODlBRDVES2lJZ0FpSWdBaUlnQWlMd0Z3SVMyTFVRUkVBRVJFQUVSQ0FmZ2E0RjZ6bzlwMi9zTXdCY0s0RzlEcjVlcmtrVldYdnBaS2FiY3F6MEhIY1ZDdHZjYk9tejBPZjdaRThIM21MKy9jMDFPdmNHQUljN3JpcytxeW5OMG1ybVExWUVyTHFPN2IvU1J0K1BOWnE5YWo1T0E3QnJqUk1GS2F5N3FOdTF3UDczQUw0RVlQVXVCcGQ0ajdlYitUd2s4WnJVNnZ4OWZCaUFOM291UE02ZWl2aGphc09xTHdJaUlBSWlJQUlpTUYwQ0V0aW5PN2NhbVFpSWdBaUlRUGNFSkxCWE0xY0VlNzAxT1M4Q2UxVTA4cDhCYkFQZ3dub0lzMXkxdEkzc1pUL0toVFl4dEpTNEx2Rk8vQzUrSW9CZEhOZjkySXgzWXdDM0piYko2Zyt3Tmpidk1lSTlyYUNxQ29WbzJzYmNYZU0rZlY3Q2swSm5tUWoxclJ5ZEdNSjZ5Y1ZHQXZ0aWtuVS9RMUxtWWt2N25uRlpwL0hrMXdzQTNKSFNZQTkxdVdGMjE0UnNvSHBBcUZ1S2dBaUlnQWlJUUJvQkNleHB2RlJiQkVSQUJFUkFCS29JU0dDdlhoOTF4UkdYUlF5dEF2YXZzUnhwZjNBK2dJY1hycVZ0RG8vOGY3TkdlM3M3SWgxejlvMWRtaGVCZldzN042N3ZwOWRZSWZXZUduT1U2NUxIMjJTYXhjU2hzN2FaOEhRM3N4WlNvMW9mQ3VCaUFPczdPdmxaQU04SGNHK0RBVHpSUnFnL0x0REduVmJrcCtjMHhla3hsS2NhQzVqUGVUeXloN0JlY2pHVXdMNllaTjNQa05pNXFNcGZFTnZHRU9vMTJad2JRdi9WQnhFUUFSRVFBUkVZSFFFSjdLT2JNblZZQkVSQUJFUmd3QVFrc0ZkUFRsMXh4Q1d3Ky95RFE4dkRaWDlRMTRxRDkzS0pYem43eG52TWc4QytKSUFUQU5EeXcxV1lxUEtEb2NsdCtlKzBmM21UNHg1Tm9xVWZiVDNkYWV0U0xzY0RlRVdHTVQzRUpnR05TUlRNaVBkRHpicm1wdE9RUzJpOTdBeUFteDVUS0JMWUY4L2lpd0NjMmRLazhrUUU4eGY0TEtwYXVtMHJ6VXBnYndXckdoVUJFUkFCRVJBQlB3RUo3Rm9kSWlBQ0lpQUNJcENQUUowa3B5dlpLTlhpWnpLalNjOHJlUWZUNW9FLy9GY3NkSmZDM3RuR0N1TG5DVU1vSmpsbG04c2J2MW5YVWZpRUp1OVgxUlVsemtvUzJLdXArcnlQNTBGZ1h4dkFsWFk5bGluOXhOcXYvTERKb214NGJaVjlUWk5vNlUwQVhBNkFnbkc1MExibHd3MzdQYnM4eFRLR3lWcDNCRUE3aktHV3FzM01yd0I0cnJYSUdHci9VL3JsRXRoVE5nVjk3eFhmUnFDdlBwUEc4blJPa3hNVnNlUG1aeW10V3NxbHJYY2hQMzhQQm5CRWJBY0hYazhDKzhBblNOMFRBUkVRQVJHWUhnRUo3Tk9iVTQxSUJFUkFCRVJnWEFSY1F0SG5yWmorbThKUUhtUkY5ODBLLzVZaXNuUkp4U2ZRU0dDdm5vVjVGdGozdFZIV0xrTEgyS1NDZlZxWFZOblhOSW11M3hNQWt5YVdDNjFtbm1rM0hYSSt1eHRZSC9uVkFvMVNYR2N5NUZ0cTNId2pBS0gyYXpTNzRCTGE4VkJzZFJWNnlqTVNlUXlGWWpWdGJxcE9EQXhGWU85U3RHVnlXdVltS0JmbVA3aWdoWWxsWkR6WFRPN041aGE2R3RWa2wzTVYxU0ZWRWdFUkVBRVJFSUdwRTVEQVB2VVoxdmhFUUFSRVFBU0dUa0FDZTNpR1pCRURuQnZHTk5vYVZkSGhiUW5OS2JDcTdFaWFSdGQveklqWWV6ZzZ3M2FaNFBUV2xJNUcxcVVkRGNYTFozbnEvd25BVGxhSWoyeHlRVFhYODFxbm5YbTRKa1lJblVlQnZlbVlVOWJPaGdBdUF1REtyVkJzaDg4RkV3N3p2MzBYYnJnemY0T3Z4S3lydnNlZys0dUFDSWlBQ0lqQXBBaElZSi9VZEdvd0lpQUNJaUFDSXlRZ2dUMDhhUkxZcHkyd2p6bTVhWlBvK2dkYWl5ZVgwSjBqd1duVmswVy82Y01CSE9pb1JISHozUTJTblVwZ0Q3L1RaalZpaE5DbVluTXVpNWlZdnNhUHZMb20xK1liU2xYYU9MRzFwazJzdkZaRXg1dHVQRVhjSXFvS0U3RitCc0M2RmJVL2Fxemo5aW5aekVVMXJrb2lJQUlpSUFJaUlBTDFDRWhncjhkTlY0bUFDSWlBQ0loQUxnSVMyTU1rSmJCUFYyQVBKYXRzWXI4U1hsbHhOWHpKVGVsSnZUbUFxK09hdVYrdFJ3RDRFb0JWSGRjZkRXRC9tdTNHWHNiZkFiUmFZUlE5OHpHdzVCRG1KTERIemdBUUkxclBvOER1V2tNL0EvQjBBRCtJeDF0WmswTDFKUUJpeFBWWlE3OEVzQzJBcXpMMUliVVo1cXBnZmhZbVIvYVZITTl3YXI5VVh3UkVRQVJFUUFUbW5vQUU5cmxmQWdJZ0FpSWdBaUxRTXdFSjdPRUpjSWt0OUlpbU9KSmFHRFc4QTRDbENoZldTUlk3dS96SkFEaUh4Wkt6YjJ5M3JjUitxZXphcVA5NFkxVnloY2Vlb2FuOVNvNytQc3g2WkQvTzBSaHRKYllQK0dkWDlhRXF3ZWxMamZCM1VvNEJSTFN4QllCUG03RjhBd0M5cU8rSnVLYXFpZ1QyZUlBUzJPL1B5cFZ2aExWaVdNV1NwMDBTUGRjMzlWeHdQWUNIZUhJSlVHVGZDc0NYWTIrV3FkNnpUZFE2OHd0VVdkbnc1RXVPWnpoVGw5V01DSWlBQ0lpQUNNd1BBUW5zOHpQWEdxa0lpSUFJaU1Bd0NVaGdEOC9MdkF0MlV4YllmZEhoWEJWTjdGZkNxeXF1eGtzQW5PeXB1ak9BVStLYWNkWTZDTUI3SFg5aHdrc21NLzVLZzdaVEwxMFpBUDN1NzA2OTBGRi8zcC9YRklReG92RzhSYkN2YUJMOE10SDNPaVdRakZ4L0dvRGJVd0E3Nmk0UDRIU2JSTmpWMUUwQXRnVEF6VFdmTjN1WGtld1BBTUFrME84TEpHR1Z1TjV3WWVoeUVSQUJFUkFCRVdoQ1FBSjdFM3E2VmdSRVFBUkVRQVNhRTVEQUhtWTQ3NExkVkFYMnF1andwdllyNFZVVnJrR2Y4ck5zdEdxNTlqWDIzK3RHZS9NN09CT043dUxveHJldHdINW51SXVEck1FSVc3TExXV2hoUXlzYkNwK3VzcWM1U1RMR1JNRDNBYmdMQVAvcksvTW1zUHRPZHVUSVN4QVMxL25NUFJmQVYrMWtNQnFja2U1TE9DYUhudkJNQmt3LzlMWUsrM3NjZ0IwRE43Z1FBRGNENjc2UDJ1cS8yaFVCRVJBQkVSQ0J1U0VnZ1gxdXBsb0RGUUVSRUFFUkdDZ0JDZXpoaVpIQVBrN3hNRFN6VmRIaFRlMVhRdmVPK2Jzdk9TU3YvUU1BZWtMWExSVHMyTDVMdUdNeXhkc0E4TDlETHoreWxoUjN0TnhSQ3VzVUVWMjhHTzI4SFlEZnROeUh2cHFmSjRHZE9Sa29LTy9oZ04wMEwwSElGc1psL2NMZnlnZWJEYU1qUEpQUFo1Ujk1V2NVcmNaeUZwNWlPUjdBWXdLTmNxTnVMOVBQZTNQZVhHMkpnQWlJZ0FpSWdBaWtFWkRBbnNaTHRVVkFCRVJBQkVRZ053RUo3R0dpT1QzWXczZnJyNGJMSDU2OW1XSUVlMVYwT01mYzFINGx4eXhXQ2V3NTJwOUNHekVXSjAzSDZmUGtacnNVTmJleDRudlQrd3oxK25rUzJLc2l4cHU4RTVoUW1LZFIxdmRNTWpmTXVPRjNwdVB2UEQxQnU2cFhWaXlRSTgybTJ5RU44akVVbSthNzhUQ3pZZlM2aUFYNUZwT2crSEM3NFJkUlhWVkVRQVJFUUFSRVFBVGFJaUNCdlMyeWFsY0VSRUFFUkdDZUNmRHpsVWU3aTRrMGZUeWVhSC80RnkwVnZnUmd0MUpFR3NYWEU0eVF0SEdoSVhvMU04bmlOeU5oLzdxaktFK2ZNUGx2RlpHQVZVTndDZXlmQkxCNzVMaFRxOUh6ZGdVQS9HK3hrRGVqSE5zcVBtNVRGTmlmYXBPSHVwNlJHODNmTnMvZ3RkeDBuaVN3aHdsMkliQXpPdmRZVDFmT3N6WWRmRGFuV3NZa3NETksvTUhXcWlSa2ZWT2NMMzYrN1EvZ2JaNVRDazBTSHE5dGhIV3VrMGQ3RmdpajBHbjFja2JGQW9vUjJhKzJsazlNY2wybjhIdkRNd0Y4SkNKcW5Sc0NyN0RmQ1hKSHp0ZnB1NjRSQVJFUUFSRVFnYmtuSUlGOTdwZUFBSWlBQ0lpQUNMUkFvQ3Jpc29YYlJUZFpWK0NPdm9HdG1GdGczOGdjbFYrdDFJbGJqRmN1ZmJEYktMNyt0eW5xY3h6Y1pLR3dUTEdwV0NqY1VHQ2FTdUgzVDlvOTdPTVpFS015bWZ5MDd5S0JQVHdEYlF2c2ZPNHZNMzcxYXpxNlFnL3Nad0M0TnR6TnY5U2dVUDhHUjEwbXZHVEMyYUdXTVFuc0x2OTAyaDB4Z2U1M0FUQlJhYmx3Ym1tSDRyTC9tZFU5eW9qMkI5YXdZZUZHM2prQW1EalZWV0xFOWRsMUZOay9ZTmVSYjYxUStPWTY0Nlp3bGE5KytYcEcyTE50YnBpSHl2ZnRDWjh1a3lDSCtxUy9pNEFJaUlBSWlNRGNFNURBUHZkTFFBQkVRQVJFUUFSYUlDQ0JIV0FVL3VvbHRsMEovRTJudEMrQnZXbS94M0w5b3dCY0FXQlZSNGQ1UW1CVEFOY05ZREFTMk1PVDBLYkF6dDhwdE40NHdOT05WTkhWSlZTejZiWTN6c0lVcTJ1TVNXQm5sUGdYalk4Nkk5bHpGUXIwM0VqNVhrS0RYRHM4QmNiRXVCVEdYWVhpT3BNTU00bHBiQlE0MjZJVnpKc0NmV0ZDMXBlYktQTmJBL1c0cWJxZmpkejM5YlBZeEdsV3dMODdnWVdxaW9BSWlJQUlpSUFJZEVCQUFuc0hrSFVMRVJBQkVSQ0J1U01nZ1YwQys5d3Qrb1FCNzJzajJGMlhuR0tGTVVhODlsMGtzSWRub0UyQm5Sc3RsM3FzdHVxSXJoTFlGODZuYjJQQnQrNWo1dnFoQUM2dThEb1ByNmlGTlZJaXpHZFhVcWptWEwrMTRtWlZudXVoUHNhSTkyeUQ5NkRsemZ2TkNZbGZsUnBsSDJsTDh5RUFEd25kRUFCUGE5QUQvdE9Ka2ZFUlRhdUtDSWlBQ0lpQUNJaEFEZ0lTMkhOUVZCc2lJQUlpSUFJaXNKQ0FCSFlKN0hvbTNBU1dCWEFSQU5yK2xNczhKS3prbUgxQ2I2cmx5WlRYR05mSnVmWTBnMnVjcnpaUjBzY2xBcERBdmhCWUd3TDdrZ0M0U2Naa3BVMUxYWi94Z3dHOHErTG1mTTRvYm4rbVlRYzNzTDd0WmZ1eWNyTVUxMmx2YzdLMXl1RzllVEpqcGNqN016a3IvZWxEMGZDUnphbWFDSWlBQ0lpQUNJaEFHd1Frc0xkQlZXMktnQWlJZ0FqTU93R2Z3UDRMUjVMUnBSMC90Qm0xeHdoTi9uZFc2RS9MeU1LeVQrM1BBZnpPQVp4SDlNdEh6cnV5YUduaXdlNUthRHJ2NjZrOC9qRUxzVnNET0IrQTZ6c29QZlczc2drU3B6cm5mTjZaVEhFYnh3Qy9DdUE1eGhLRjc0bDVMNjhGOEI0UEJOb0wvVk9OZFRJbGdUM0grbWhEWUdlLzZDVk8yNU1taGY3aXRGajVkbzFHK0xuM0RnQmNRK1ZDQzZwdHpYTjJWWTEyWFpmd2MvYkRBSmlJT2xUdXRSWEtPVFo4MTFHWWYxV2loVTJvRC9xN0NJaUFDSWlBQ0loQVN3UWtzTGNFVnMyS2dBaUlnQWpNTlFHZndNNGY0WXpLTEphbkFQaUNpYmhicHZDUG53ZXdYVW1NZDdWWkpiUzZoR29KN05OWWxtTVYyUG05OCtOV09IUE5CRVc1RDA1amlyeWpxUEtvWnVKWFJxck9lMW5YSlB2OW5DY3hKVGNkdVVselNRMUlFdGdYUW10TFlLZjMrZUgyVnZ6Y29tMU1UR0h5VG00K0hRL2dwZ1JmZEZmYkxxOTBKbGpsNStvTk1aMUpxUE1BbTdDWkcwSXhQdXFocHJuR2p6SFI3bTkwV011RXJ0WGZSVUFFUkVBRVJFQUVlaUlnZ2IwbjhMcXRDSWlBQ0lqQXBBbElZSzl2RWFNSTl2Q2pNVmFCdlNxNTZVK3NIY2dQdzhNZmRZMWRBWnpvR0FIdGNSaTlUcy94ZVM1TStzaWtreFJDWFlXMk1OeUlxZVBSTDRGOUlkRzJCUGJZOWJ1YzhVbW5PTTJFbmJGSlJtUGJacjJpeU03VElkdTNiTFB5Q0FDZk1BbWNuNVhTeVZKZDJjRTBnS2RMUlVBRVJFQUVSS0JQQWhMWSs2U3ZlNHVBQ0lpQUNFeVZnQVIyQ2V4dHJ1MnhDdXhWeVUwcFRQMUxTMEpibTNPUjBqYjlxVThBOEJMSFJUOHlVZGxQTjRrTXVkRXd6MlV2QU1kNkFEQUNtZUxselRVQlNXQWZsc0JlY3hxVExxUElUai80QzJwWUNpWGR5RVRlMDR0OWQ1T0U5RDg4aVhsRDdYSHppRkhyZDRVcTZ1OGlJQUlpSUFJaUlBTERJeUNCZlhoem9oNkpnQWlJZ0FpTW40QUU5dm9DTzZNYUdjWGFaMW5aK29RL3ZOU0owd2RpNFVFTEFVWjlNZ25nV0lxU213SlZFZnp6c01FUVdxdFBBbkFaQUw0RFhJWFdJNjdvLzFDN3M3OVBUV0QzNWQ4bzgrREdEdk5pbEV2ZkVleXg4emJrZWlzQTJNRW1NWDFzcG81K3h5WkIvVzhBdDJkcVU4MklnQWlJZ0FpSWdBaTBURUFDZTh1QTFid0lpSUFJaU1CY0VoaVR3RTd4WlJPUDMzSGR5YVBuN3JzY1FsbFhIdkIxK3oyN3pwZWsxU2RJTmIzZlBGdy83OGxOT2NlTVhEL1pNOWs3QXpobEhoYUNaNHpjZ0tIL3RzOWU0enlUOEhJbkFMOXR3R2hLQW52S0taYlU5NW12L284QmJHd1RjRGVZaHRGZitqQnJZY1FUT2V1MVBKcWZBdURHN3FkTkl0V3ZlUkthdDl3Rk5TOENJaUFDSWlBQ0loQkRRQUo3RENYVkVRRVJFQUVSRUlFMEFpa0NPOFh0eXdGUTZKNlZMcE9jK3ZxYU51SzQyaExZNHpoTnJWYVZOUXJIT2cvSlRhc1l6SXYvdkc5ZDgvZkl3ZWJreWhHZUNuZWFwS2ViQTdpKzRZTWhnWDBoUUVXd3h5MG8rc1QvZzAzTy9GSUE1Wk5OY2EwQTl3SGdXbDhpOWdKSFBWcEpuVzAyT2k0RThHWFp5VFFncVV0RlFBUkVRQVJFSURNQkNleVpnYW81RVJBQkVSQUJFUUNRSXJEL0U0QnpTdFFZeWNsbzEySWlQMWViVlZHTXJtU2hMb0ZiQXZ2OWwyeHF4S2NXZlRXQng1dkk1Q3M4MWgveklpNC9Hc0FYQWF6aVFNWElkZHFmMUVuY09ZVzF0NmxON3JxVVp6Q3ZBL0RlREFPVndDNkJQWFlaTVVwOVN3QVUxTGV3Q1ZOanJ5M1grNHBKNXZwV0s0cHpqYi9DMkhzZEFtQ2x1ZzBXcnFOTkdDUGJ2d0RnYWdEWDJoTUdZN0lQeTRCQlRZaUFDSWlBQ0loQS93UWtzUGMvQitxQkNJaUFDSWpBOUFpa0NPd0hPY1FqVjJTaEJQYnUxb2tFOXJ5czMyeVNsNzdKMCtReE5vTDl6M2x2T2JqVzlqVGlPcE1ZdWdvRnQvTUgxK05GRWJkTXVNai90bFhXTU1sZEx3R3dWc1VOYnN1MCtiQThnQWM2N2tNeDhtZHREUkRBVlFEMk1GSDY5OWE4aDJ0am9BK0xHSFkvMTF6VVJBRkdjRE5wNlIxMUczQmN4OS9EZk9kVFNIOEJBTnBadWRaSnlpM3BqLzhSMCs2SHpkemY0cmlRVWZFYjJZU292Ri91d3JWMks0QnI3TWtQSmdpKzBUN1B2NURWVEc3Y2FrOEVSRUFFUkVBRUZoMVRVeEVCRVJBQkVSQUJFY2hMSUVWZy81Z1ZYNG85aUkwMG45Y0k5cVd0S0ZzbHlqV1pVWW9yVEZ4WGpxaTkyWXFCVGRvT1hVdVA2U09OSFFIdk5ZWENTTkRQR1gveHh6a0c4M3RyL2NISXl5a1hKdTA5eTBTWWJqV3lRYmJ0dWYwM1ZvUjgrY2k0cEhiWFpmbVYwc2FRQlBhVWZyZFJOOGVhNU9mek92YmQ4MEp6Z3V6SkRTUFVaK1BrUnMxSmRpUHRxd2tiVTB5VXltZmcxUUFlMHdZMFQ1dXpqYVhmbVEybXZXeUM0UTV2cjF1SmdBaUlnQWlJd0xRSVNHQ2YxbnhxTkNJZ0FpSWdBc01nRUN1d1U4aWxuMm81c1I4ajlNNHNEVVVSN0l1QmRHbHIwL1dLU29sTTdicHZkZTVYbGRqeklnRGJOMHhjV2FkUFhWL3pWTHZKNExOQTZiby9zZmZMSVdiNjdoWHlYWS90NHhqcVNXRFBOMHNwYTVKcmpLY1duZ0RnbVdaejlPazJTV3ZUNlBUaWFDaFM4N1A2YU91SjN0U2FaVFZyRjdWUEE2LzNWTnBIQVRqUW5ES2EraW1pVkM2cUx3SWlJQUlpSUFKSkJDU3dKK0ZTWlJFUUFSRVFBUkdJSWhBcnNMdDhtUm5CdkJrQStyWVdTOWNDZXhOUnlHZXhraXZKcVFUMnFHWFllNlZRNVBiT0pyS2QvdU5UTDFVV09VTWVlNHFZbVRvTytsc3pVV09UaEkrcDkreXJmcE4zS2Z1c0NQYkZNMWUxSm1tNThoVDcrYmt4Z05WYm12QmZBdmcwZ0U5WXovT21vcnF2bXp6OXN4MkFWd0ZZdjZWbmhkOHpucXRrcVMydEZEVXJBaUlnQWlJd1Z3UWtzTS9WZEd1d0lpQUNJaUFDSFJHSUZkaWZaeVBZaTkyaXh5d2o3Wmo4c1ZoY2JmckVlRjdYTk1scEUxRklBbnY5aFRhbENQYXF5RzM2QVc5dWJCRnVyNDlxRkZkV1dlUU1mUUJ0Q2V3eHZ1dERaNVBTdnlidlVnbnNDMGxYclVsK250S0txWTFORzFxKzBNNk5wMjc0R1YyTTlxYW96eVNqeTVRV3hhOEJNSUh2TjFJV2k2Y3U3WlQrMFo3NGVUNkFkVE8wU1l1dVo5c0UxQm1hVXhNaUlBSWlJQUlpTU44RUpMRFA5L3hyOUNJZ0FpSWdBdTBRaUJIWStSbjhjZXU5V3V3Rmt4M1NJb2ErcU1YaWEvT2ZiU1JkZVNUektMQjM0WkdlYzhXc0JJQmlTZkg3MkZRRWRvNkp0Z20wT25DVnQ1aC9aR1QzMUV1VlJjN1F4OTZHd0w2c3NldzR3MkdMVmNYaVR6YTVKdi9icExTZDVKVHY2SWM2T2pnVmdmMm54Z1psbTBLQzBVMXNKSGZ4L1VWUm1VTDNkNXBNbEkxQy8xVHAzY2dtZlorUC9GdE9UMytLNkl4U1A4MEs1RlZSNnY5a2ZOelBjWXkzamVkbmRodU85Ui9NU2JkdFRSTGQ1eGovOUdmVThKRi9HNEJEWlEzVGNLWHFjaEVRQVJFUUFSR3dCQ1N3YXltSWdBaUlnQWlJUUg0Q01RTDdvMnprMktxbDIvdHNWSmEwZGhvVTM0dmxGaFB0L2txYm9Ld29BdlFwc09jbnVyQkZIOTlQQXRpOTdadG5iTjhWK1RnVmdkMjN2b21QRmd1TTdMd3VJOHNoTmxWbGtVTUdmSGJwRDEwczNDUjZRVUhFYkh0Y2p6VDJFK2RacityeXZhNnhpVm52eWRRSmlvTEgyUGRWU3BOTkJlclp2VnhXSy94YnJ2ZUdUMmh0MnYraFdNU1VCV09YeFJsNWN0UFFKVGluelBuaEFON2d1T0R0QUE2cGFJaVIzVXlxdkdMS3pRQmNiMCtUTVNmS054MGIzRlhOTVZFcU40M0s1VXE3SWNGTmh5N0tjZ0RXTTVzUUcxclJuY2xiWFJzKzdBdkh1MFdINzVrdXhxOTdpSUFJaUlBSWlFQ3ZCQ1N3OTRwZk54Y0JFUkFCRVpnb2dSaUJmVjhiNFZ0RXdDUGJ0TTI0MnNQbEE4WXJkYjhHekZ6aXZhK3ZUVVdoQnQwTVhpcUJQWWlvOXdxdTlUM3JGSDNYZHdQd3g5NTcyVzRIcWl4eXlJRFJ1QlIzaTRYV0U0d1Nwajk1RjZWcW52aXUrV0NtVHNRa05lWFlYYjlOY3IyTEpMQXZuRXpmeG9MUDRxc3NzRk84dmRqNmd4ZGJEb25nb1NYbGU3OXpmVEJhKzlLS0JyaCsrRG5IUHZqS0hiWU45cDBpT0RlMTdndDFxdUx2dm5WVkZXM2Y0SFpKbDNKVGEyVnJLVVB4blp1NnRKcloyMjdLSnpXbXlpSWdBaUlnQWlJZ0FuNENFdGkxT2tSQUJFUkFCRVFnUDRHUXdMNmEvWEc3WnVuV29ZaFJsMmQ3U3U4bHNLZlFhci91VkNQWWFRTkNyMkltSFN5WHJnWGs5bWZSZlFlZU9Ea0JBQzFpZkF5K0JlQ0xBT2hKWGl4ZGJVQ3NZT2JvQWdBYk9QcjRQUnZoeWlqN0hJVW5iMDZ0OE1lK3lVYTN2OTl4TXduc3dEdExYRkpPdXZnRTg2WUNPN3RFWC9JOVNuMXJPbDlyVytHYmxqN0Y0c3RQVWw0eUZKUXZzNkl5TndVb292UC81K2NyMTNYWmZxM3Ardlp0Zk9jNkdkRzBmN3BlQkVSQUJFUkFCRVNnQXdJUzJEdUFyRnVJZ0FpSWdBak1IWUVxZ1oxMkRJZVo2TjAzT3FpRUlrYXJCTEVZeUJMWVl5aDFWMmVxQWpzVDV6RTYxUFU5TTdTSjFCMzlkdS8wZUdzQlJkdUdjdUhtdy9aVzZIUDUxSGRsb2ZOU3V3bmdJcEhUSTUrV0ZSeXppd1h2VFcvMXJRRXM3YkVXYVNyWXpzYW5DUGFGTTUxRFlOOFZ3SW1sQmRSMC9lNEo0RGpIb2t6WmVIb3dBRzVDTklsTWozbEQ4QjNIOGUvaXFPeXplNHRwVjNWRVFBUkVRQVJFUUFSR1JrQUMrOGdtVE4wVkFSRVFBUkVZQllFcWdaM0gweGxOdDB4cEpEK3h2dFEvREl5UXg3enBiOHNvK05ReWRZSDlDdU1seldqQ3NaVEhBR0NpT1VZN3owcEtaT29ReHhsS2JocmFSQnJpbUZMN0ZHS3dzODJud0haOU5qSnRKeUFzUnZtV3h4ZjdMb3Jod3VqOFN3Q3NWVkdad3ZlN0FXd25nZDFKYWFnZTdPeXNhNU9RLzc0WGdBL0hMSkJTSFc2eTBNK2NOa25sVW54dWFqVGR5aVcrejNyZWpCdFlKN1Z5VnpVcUFpSWdBaUlnQWlJd09BSVMyQWMzSmVxUUNJaUFDSWpBQkFqNGZuUy9Cc0ErSHJIcEtBQUhBcUNGUnFnODBFYkE3bUFFS1NZeWM1VlZBTkIvdFZpbUxyQ0h1STNoNzJNWDJLdVNtOTV0dkk4M0FYRERHQ2FpUVIrckVpM2VhUE1zM0c3Yjl5VkN2YzFzeEQzRFdsbzA2SXIzVWw4ME55L0lGWG43Q09QM2ZKYkRvN3ZZcVkvYWR5SVROTGVWSkhSMlAwV3dMMXdPT1NMWWZUN3NkZjNIZlNjL2NtNzY1SHllSG1aODRhOHl1UlNZOExWWVl2emljL1pEYlltQUNJaUFDSWlBQ1BSTVFBSjd6eE9nMjR1QUNJaUFDRXlTZ0U5Z1oxTEhZclR5YlBCM1d0SHQrb3cwL2d2QXkwcnRTV0RQQ0xpbHBzWXVzTTk3Y2xOK3R6NFN3QUdlOWVHSzRLYzlDZ1hKOHZmeWxFMjNsT1ZZdFFHUXkzdmlic0MrQUFBZ0FFbEVRVlNkUHZ5TVJINVdSY2MrQzREZTdQZllPaExZM2JDcU5rTlM1cjFjTjRmQXpqWmRIdVIxYldMZWJEYVozK1FZVklvOVRQbHlSc1h6dWFzNlJWR1hJemU3dWRHOVZLa0JDdXhubTgyam45ZHR1T0YxdE9JNnZtRWJ1bHdFUkVBRVJFQUVSQ0NCZ0FUMkJGaXFLZ0lpSUFJaUlBS1JCSHdDK3o4RDRESDM1NVRhZVlQeEgyWVN1NWpvOWNndVFBSjdMS2xoMVJ1endLN2twa0FkOGRyM3Z2aTlTZEJJUDN0YUgrVXFqSmhuc2xIYXNiaktiZzVQN2RSN1UzU2toell0TW55RlNVMjNCTURFbGJNaWdkMU5hK2dDdXkvblFxcVBQNlBCUDJmc2t4NVh3dEEwTVhLVmpVdnEyaDVML2JjRE9HUXNuVlUvUlVBRVJFQUVSR0FLQkNTd1QyRVdOUVlSRUFFUkVJR2hFYWp5WVA4Q2dJL1pxRGYyK3lzQW5tc2k3TzdLUEloNUZOaHZ0bjdQbVZHMjF0eEtBSjVmaWx3ZXM4RHVpOFFtd0hsSWJzclRLUlNXOS9Dc21DcnJGUjg3aXVzVW5tZFIzazBYNDJzQnZNZlRDTDNTWHdqZ053MXVRbHVxWXdDOHNxSU5SamR2Wlh5MnYxeXFJNEY5bkFMN2lnQ1lpSGFkVXZmTGRraWhaZlVTQUNjN0tqVjlkOHlqd0o3TDVpazBaL3E3Q0lpQUNJaUFDSWlBSlNDQlhVdEJCRVJBQkVSQUJQSVRxQkxZenpVSi9XWVJuanUxRUtFNkc4MDhDdXcreTRQOE01eW5SVmVDd0xFSzdCU1hUd0JBa2N4VjVpRzVxUy9oSTNtRXJGZXFJc3R6blhEWjBDUlZ2UWpBY280SjRycmJ3bTZFMUYzZEZOZHBGOElFbDc3eUp3Qjg3OUUrcGx3a3NMdXBEVDJDbmIwK0hBRFhhYm5FSmlhdEVzR2J2anNrc05kOW9uV2RDSWlBQ0lpQUNJaEFOQUVKN05Hb1ZGRUVSRUFFUkVBRW9nbUVCSFkyUkpIOVNjWW00WXVacldGbW5aVEFIajFkdlZXY2tzRHVTMDVJdUVOTlVKaHo0aWt1bndSZ1IwK2pNUkdsUG9HZW9qUWozQmxoWHJlc1lhLzMrVkRuRVBINXUySjM2LzI4aEtlakZJdmY3WG5uU1dCM1EvTUo3UFQzL2wzRWd1RG0xOTg3NnVYeVlHZlRUN1gyTG1VdmNtN29iQS9ndDRGKzh1VEU2WTQ4QkRuZUhmTW9zTk9laWU4akZSRVFBUkVRQVJFUWdZNElTR0R2Q0xSdUl3SWlJQUlpTUZjRVlnVDJ0b0ZJWUcrYmNQUDJweVN3KzVJVGtoSXRReGlGbWpQSFFIUDZlVnZ3Q1lTOFM2eFZCcitYSHdiZ2pZNnV1VHpMWTBjUXNtMHBKeHVOYmRkVmoyTTRHTUFSamo5KzFDUjkzTWQ0US8vQmN3TUo3RzR3TG9FOTVhUUx4ZlV2QVZpOTFIeE9nWjBuTU02eTFqL0YyOFQ0cDFjSjRHOERjR2pEZDhjOEN1elBBOERUY2lvaUlBSWlJQUlpSUFJZEVaREEzaEZvM1VZRVJFQUVSR0N1Q0VoZ2IzZTZmWHhsRWRNdWQxL3J2dVNFck05RW5ac2I0ZTNxZnJyV3lWMVhCbkFaRmlVNGRaVlhXMi8ybU02c0FPQUNBQnM0S3RjUndrUGlPdjNRYVEzelB6R2RpNnpqRXRsaitpNkIzUTE0REFJN2UrN3pVS2MvTzVQcStyejlHVzFOZTZseXVkTytPNjZQWEhkZFY2T0lmYmJqcGo4enAwV2VEdUFITFhlb2F1TkFBbnZMOE5XOENJaUFDSWlBQ0pRSlNHRFhtaEFCRVJBQkVSQ0IvQVI4UDN4LzBUQ0JZRXBQVnpHK3VCVFhpc1ZsVStIcmEwZ1VTZWtMNzNHODlYOW1FcnVRWFVDb2JWK2ZsZVEwUks2ZHYvdUVOZDR0MWlLaW5aNjEzeXEvUy9PNWVydm5WbldTR0c4SzRGTFRadGx1ZzdlSUVhcG5YYW1LSm1lZEtqLzBwdVNLbnZLeDBmY1MyTjNVeHlLd1YyMDA3UWJnUk1md0htR3RpeDduK0Z1TzZQV202OWgzUFordGp3TjR1YU5DenMvT3F2NzdQZ2RUVGplMHhVZnRpb0FJaUlBSWlNRGNFWkRBUG5kVHJnR0xnQWlJZ0FoMFFHQ29SOUw3Rk5qUEE3Q1pGZGVQQnZBdVl4dHlWODI1R0NyZm1zTlpjTm5ZeEJHZk5jUnNVTEZKRG5PdzY2T05xc1NodE1mWUFjQ1ppUjBMQ2VQMHFuNEZnSHNxMm1VYkJ3RjRUMFdkS2ovMHhDNDdxOVAzblVsUDl3ZndvNGdHSmJDN0lia0VkbnFUYjJ6V3dhMFJYTHV3aUpsMWd3bHVqM1gwaVRaSlc1YjZ5elY2SklBREhQVnZNNmRDbm1HVEEwY01zZk1xandKd0JZQlZIWGVPeWJlUW84TVBCbkMrMll6YnBOVFkyRDVEY3JCUUd5SWdBaUlnQWlMUU93RUo3TDFQZ1RvZ0FpSWdBaUl3UVFKREZZRDdFdGhwSVhJVmdFZVg1cHBDNFNzQjBLWWlwUXlWYjhvWWZIWEhKbzc0a2h0eWZMSGU0em00OWRFRzF5SEZjd3FIcm5JYWdGMHJQTWVyK2h4S21sb2xzdlA3UGIzT2p6S2U3cjVrb3lFLzlENTRTbUIzVXovY1dDMHhDVzJ4L05nSzdCU2lRNlZMZ2IwcWl2MDRtNHZoajdiRGZHNHU5S3pSRkZ1bDBQamIrTHN2OFd5WGxsaStlZTNLb3FZTnJtcFRCRVJBQkVSQUJFWkxRQUw3YUtkT0hSY0JFUkFCRVJnd2dhRUt3SDBKN0Q0aElFVWtLazczVVBubVdKSmpFdGo1UFpLbkVTam11c3BiekQ4eStla1VTeWpLUEllM09TUEFMd0d3bGdjZ0kyaDNBa0JCYlZZZUFPQzFuaVNqc3pvcE5qTmR6cDBFZGpkdFY4THFsSGRubHdJN1IrRHpWQzlhRWxWWnczQmRjeTFVbmREb2NsMlc3N1dhemJtd3BxTVRYVnBpNWY1YzdaT3A3aTBDSWlBQ0lpQUNveWNnZ1gzMFU2Z0JpSUFJaUlBSURKREFVQVhndmdUMnRRRmNhZXdpbGkvTjFWZE5aUHR6akVVQXZlbFRpanpZVTJpMVY3ZktKb0VDTTczRXIydnY5cjIyWEdVTnc0NHg0dmlkQUdnVDA2U3NiNU9lcnVocGhJa1VtVUR5QnB0ejRSMVdZUGZka3dranQ0MjBiR25TN3pyWFNtQy9QelgrVnFOMytTNmxQMzNiV200eEVXaW9kQzJ3VjUzc29COC8xOS9COXZSU3VlK01BSCsydFY4SmphdVB2M00rRGdQd1JzL051NHk4LzBmTGlWWXh4Y0ozd3RNQTNONEhJTjFUQkVSQUJFUkFCT2FWZ0FUMmVaMTVqVnNFUkVBRVJLQk5BajRCZUhjYmtkcm12V2R0MC91WS9zL0YwcGZBL2hRQVh6Qys2OHVVK3NOSTJ1Y2JzZVhlUkNBK3ZwOEVRTVpqS1M0dVk0cGczOWRHc0x0NG53S0FpUTFuZGhCam1aT1lmaTRMNEZ5N2dlQ3FYeWV4YWRWOVEySSsxOHpyckRENXdvcUdZcE9OeGpCb280NEU5dnRUelpHRXVtdUJuYU9vU3RSN0h3Q2V0SEFWMmhvZG1HRmpxbzMxeVRhcm5zV3VMYkY4bjZ0ZEpWbHRpN0hhRlFFUkVBRVJFSUZSRXBEQVBzcHBVNmRGUUFSRVFBUUdUc0FuaWp6UENuTmRkTjlsSzlDWHdQNWNtNHl0UE82NmdyZ0U5aTVXVVBVOXFrNXBNR3A3Ryt1djNIOVA4L2FBM3VqSGVLSnZlYWUySW5BWjFVdFA5K1ZxRG1mSWtldXpJVWxndi8vayt2SlhNTG5saXdEOExtSTk5Q0d3aHlLOVhkM092VEVWZ1NhcENqZld6akJSNDgveVhMVWZnQThtdGRpc010OEpGd01vLzU2WHdONk1xNjRXQVJFUUFSRVFnVm9FSkxEWHdxYUxSRUFFUkVBRVJLQ1NnQVQyaFhpWTZKRTJCK1Z5Q0lDMzExaExFdGhyUU10OFNWVnkwMnNBYkRWZ0QrVW1LQ2hxbmxxUlBQUnRBQTV0S1FLM3JzaE9LNmJ0QWR6YVpPQWRYQ3VCL2Y2UWZmWmFLWnVUZlFqc0hNa0sxdDVvZzRpMVEwc3B2ak8rSEZHM2p5cWhqVFZ1WUcwQjRJNE9PK2Q3WGxMV1JvZmQxYTFFUUFSRVFBUkVZTm9FSkxCUGUzNDFPaEVRQVJFUWdYNElTR0JmeVAxZnJSOTFlVGIyQXZEaEdsTWtnYjBHdEl5WGhKS2J1azVLWkx4OWIwMkZyRnE2U003SWpZMXpUS1NzejVPOURJY1JyanNEdUxzM2F2RTNIcnZBZnJqMTNpK1B1RWxFOFNiR2EvMXlBRXVXR2sxNXh2b1MyTm5sMERNekcxYVgzdVh4SzNKUnpWQkNZNTdZb1IzYm1ha05ONngvRUlEM090cVF3TjRRckM0WEFSRVFBUkVRZ1RvRUpMRFhvYVpyUkVBRVJFQUVSS0NhZ0FUMmhYeGNkaldzUVJ1UkMyb3NKaVU1clFFdDR5WHptTngwRFpzL1lTMFB4NjRpY09sZHZZK3hpbm0vd3hxaTNEWDYzNy9Dbmg2aDcvWFF5NWdGOXBVQlhHWnNmTloxUUc0aXNPOEo0RGhIbXp4SkVTdm85aW13ODdjbUU0SXlNYWl2bkdjRjZ2OGI0QUpsLzNjQzhLbUtVeXVmQVBBcUFIL291UDlNcE14Tm5YSkoyWHpwdU11Nm5RaUlnQWlJZ0FoTWw0QUU5dW5PclVZbUFpSWdBaUxRSHdFSjdJdlorMWo4MmliQyswYU5hYXJ5LzY3UjNLQXVHVU9TMDNsTGJocnlYdVlDWXBKUlZ6UnByc1ZGWVowV0ZNY0NlRXhpby9TMmZya1JDcitkZUYzWDFjY3FzQzhQNEtNQWZBbG1LYzYrdEtadDBNY0E3RkdhQ0c2Y1BOTWt0YjB5Y29MNkZOalhzeWN1Vmd2MGxhZWMrUHdNYVNPSXY1T1pOUHY0Q25HOXo4VEJ2bzNyMXdKNFgrVGFVRFVSRUFFUkVBRVJFSUZNQkNTd1p3S3Baa1JBQkVSQUJFU2dRRUFDKzJJWXZpUjlQelpKTURjR2NGdU5sU09CdlFhMFRKZFFiTDdJbkR6WXlOSGVGSk9iaHJ5WGlZSGlLcVBLMjRoZ25RbnJId0R3dUlaelNHdVoxeHZMbU84MGJLZXR5NGNnc0QvWUpxTCtCeE41VFNHYjVic0FmbEFZTk45WjN3THdhSE9xNGVrQXRxc1FZSGtaODB3dzMwUnFZVitZekpRMk1jWHlFL3Z1alBYVTcwdGc1NGJRcHhQc2pHZ1hkaUNBMzZhQ2FxRStuenNLMVVkVXROM1ZxUlZYRng0STRHeFB3dFV1azZtM2dGNU5pb0FJaUlBSWlNQTRDVWhnSCtlOHFkY2lJQUlpSUFMREpqQW1nZDMzUTUzUnJwc0J1TE1oNnFlWXlOc3ZBRmltMU01bkFUd2Z3TDAxMnBmQVhnTmFwa3UydHFLZjZ6dmsxSktiVWx5bnNNMWNBYjdTVmdUcjN3SFlFY0JiQWF5ZWFlNW16WnhsYlR0dXFCbFZuYms3ZjIxdUNBSTdPK09LR3E4N1ptNDZQY2VJNUpmV2FNQ1g0SlNSNjdUWDRpbWdtTksxd001M3cyNldJNStobEhLMTJkRFl4Wnk0dURubG9zeDFIMklTdEI1dE5sVmVWdEh1bjZ4MXpCbVo3eDNiSEhNdzBIcG9uZElGM0p6ZzV6WlByYWlJZ0FpSWdBaUlnQWgwU0VBQ2U0ZXdkU3NSRUFFUkVJRzVJVEFtZ1oyVDRqcHF6cVNJakp5a0NOZWswRGJCSlVMdzJEMzlvZXNVZWJEWG9kYjhHaVphUEFIQVN6eE43V2VpVlQvWS9EYURhSUVSckl6Mlp2U3hyN1FSd1VvcmpkY0FZTkpIaXV3eDVSYnJBZjFFa3d6emJjYVhPVmJVcEFqM0ZoTU5mZUZBckRtR0lyRDdmTTlqNXFKY3A4bW0wNjdXUDcvY0pzWGYvUk02MDZYQXpqVkxYM0JHb3RjdHZ3TEFzWCttaHcwZ1BrT011ZytkRnFHbHpidDc2TitNcVcvak90Zm5kdDI1MDNVaUlBSWlJQUlpTUxjRUpMRFA3ZFJyNENJZ0FpSWdBaTBTOEFuQTcrb3dzb3dDekthbE1mcVNuL2tpTnBzS3BsV0NiQk9mV0IvZlQxclAzQmFuTm12VExwRmt5QjdzanplV0JGZVlCSnZMT1NqUXRvTHI3WWRaQ2ZYVFdJeTRuak9DbGFkSUdKRjhzQkVWTjBnY01qYzBhRDlDVVpMbEVUYnFmdnVFZG40TzRDTUFhTkZCc2I2dk1oU0JuUnVMbDV2TkNyNi9tcFFtYTZUcTNVay85NU1TT3RhVndQNUltd3owcVJWOXU5NXVJSDNJak1HWE1IaDJPVTlhN0cxT2tQd3NZYXgxcTNKajRBQzdPYkJFb0JFbUYrVm5lVjkrOGZ6OXpxU3hUQjViTHJsT250WGxxT3RFUUFSRVFBUkVZRzRKU0dDZjI2blh3RVZBQkVSQUJGb2tNRlFMRTUvQWZwQW5RV05UKzRzWG1TUHNwenI4aVp2WUpuRGFKTEMzdUhncm1uNnppZGg4aytmdnh3RGdoZ3puZHN3bFJsem4rSnBHc0RMS2ZFTWJpYnhEd01QYnhaUGlJemZSWEQ3Yy9IN1BKSmdVelZNVG90S2YvVWdBcDV2NXZLdmppUnlLd001TmlpOFpiLzFWRzQ2L2lSQkxmL2N2QWxpbDFJYzZFY3B0Qyt4OFpsNXNjeEdVcmNDSzNlZm0zRTVXTUYvRFJxaXZHMkRNalNNS3lkd0Vic09iUGZWWllUSmpKaER0OHozSDl3YnpZTGcyT25sYWpDZU1admtER2k1aFhTNENJaUFDSWlBQ0loQkxRQUo3TENuVkV3RVJFQUVSRUlGNEFtTVQyS3NpTnI5djdTb3VTNGpZbzNoSXdZVVJzUzdCNVVjMk9TQ2pudXNVQ2V4MXFEVzdoc2xxUCtleFR2aTkrZHZtQU9pZlBPYkNkZnNPbTl5d2FoeDFrNXJPUkhWdVJOQTZLZGJLcGRnWENyKzBNR0dTelpESXgvWXBhREphbUw3U3FZVmkrOGZ0SmhtZjJkRDlVdHN2MXgrS3dPNUxMaG83dmh0dDBsdEd3ZGRsdHEvMUFTL2ZrOElxVHlla2lNMitEUU9lZkhCWklQa0VlVmRpYXJiTnpUVW0xcXdxM0xDaEpkZzloVXJjUERqUms2aXozQlkvaDNqcTZieUV6NkhRZk5HL25GWmxUTFlkS2t4Z1ROc2FqcVB1bklidUVmTjMrdktUQVRkZ1hDWDFkRVBNUFZWSEJFUkFCRVJBQkVRZ2dvQUU5Z2hJcWlJQ0lpQUNJaUFDaVFUR0pyQS9GTURGNW9mNytoWGpwTUFRYzFTZjFnWVVhS3BLMDJobkNleUpDekpEZFVaRm51eHBwNDdvbDZGTDJadFkxdVlMZUZaRnl4VGtLSkRIQ3B4c2swa3VLUzQrdTBhaytxd3JGTmJwemY3bEdnSWZ4Zlgvc0JZWWRVUjk5b0hQL3prQS9oc0FOOXR1cTlHUDBJUU5SV0JuUHpjeTRpdjk4Rk1LbzYydnpSRDV6elhEWjRwOUtKYzZ0bDIreE1TK0UwMHhBanN0VmRpWEdNOS9ub2lnbU85Nlp0Z08vODVObzVqQ3pZdC90OUh2WEpPcGhiOTluMkJPUWIzSG5CRFlNdkppaXZzNzE3UjNvLzBUL2VpWnFQanJ4dkxtRG12blJDc1hXc3p3Znp3cFVtVTN3ejR6NHA4blZyang0bnVHcDJUVEZUazFxaVlDSWlBQ0lpQUN3eUVnZ1gwNGM2R2VpSUFJaUlBSVRJZkEyQVIya3FmbHhUczdtQUtmeHpnajgwSjJBYlB1TFcxdEF4NWI2aTh0Q0Q3UXdSaHkzWUwySFJTb2lsN1BQTnBQU3dTS09xRnlyNDBxanhWN1ErMzUvazRSakpZa1cza3FVSHc2cFc3akE3dU9RdFlsSG4vb3o1ckljZG9lRmFOd3k5MmZpV0dNSFA4WHN5bFJYcU9wdzJWZmFFc1JFN0VlYXB2QzZhRm1vMnl2VU1XSXY5TmZuSDdhbDFvckdncWZUY3VRQlBhbVkybHl2Vzh6aTBsMW1lZmdPdHM0TFVJWTFYMnpmVi93eEFIbmhUWXlGSi81bm1Sa09UYzBWM1IweUJmdFhDV3dQOTMyNFNqVDdrcUJRYklQM0ZoaVl1U3FxRzlhek94dTdIQ09TempWd2J3QkZNbTU0UlZqWmNSN2NLT0JGbGNwZVE1T3M4OExtZFlwZkxmejNjajNSbXpoNXRYTTRpVm13M3JXTGhNVzA4WkxSUVJFUUFSRVFBUkVvQWNDRXRoN2dLNWJpb0FJaUlBSVRKNkFUMkNuV0VZeHBJdkM2RHdtblNzV1g4UWk2NnhnSWlZdlNCUWY2b3pENTEzZGxjQmZwODlEdmNabDJkQkdYNW0wa1BZd1N6a2FwN0JLZTVqYjI3aHhUMjFTeEtSd1hCeHZsYmpPWjJjTGE0dEVRYk51bFBoc3VCUkpLVFp5dzZ1TnBLTTVoZmJVaVA2cUthWG51U3RCNXAwbSt2L0tETDdTdm5mTWtKSWpWNzJIS2RUdVZ1REE2T2l6SXkxV3l0eXJraWxYQ2V5Y2gxMGlua3UrRjJnVDlzMkl1ck1xVHdUd2FZOE5WVlV6UEZYQkNIaEdoNWNMcmEwbzNuT1RLclFoVUx5V3B4RmVaZTJSbWxyQzBJdi84QVFPZGFwK0JjQnpJemNiNnJTdmEwUkFCRVJBQkVSQUJBSUVKTEJyaVlpQUNJaUFDSWhBZmdJK2daM2kyN241YitkczhiOEF2S3owbHlxQm5WWFhzellRcWRZSXNVT2lhTWhqN3E2ai9STFlZeWt1cnRlRndNN3Zpa2RiVDJsWEQ2Y1lOY2t4SHd6Z0NEdGdlbWt6RWFrdml0V1h6RGQxUmptZmpMQmwxQ3hQSjdSZEtLUnluRlcyRTFWOWlJbm9iM3NNS2UyUFFXQm5SRG9qczh1Rkl1ODJ4aS84d3RJZm1QeHpqeFFJdHU0MTlrU0s2elJHbGNET3o3Q1RBcWVONlBuLytwcHJtS2RsRHJPQ2VPeXd5cHUydE5qaGFRaXk1R2RhYXZtZ3RiU2h5SjZqTU44Q2s0KzJWYmdKeDNtaEJZMktDSWlBQ0lpQUNJaEFUd1Frc1BjRVhyY1ZBUkVRQVJHWU5JR3hDdXljRkNhdG84MEtFK25sS2p6T2Y0Q05CdlI1elVwZ1Q2ZmRoY0QrS0JNaFMrc2RSaGVYUzlteUluMEV3NzJDVWVnVUVtbXRVU1d1Y3dSbFFUNWxWSXhXWjZKSGlwSmZ6WmpBTWFVUDlHaW5iUXg5c21PVG9kNWtQYXlaL0hRc1pRd0NPeE4vbm1wdFdJcGNmWGtPRGdMdzNzUUo0SnJqKzUyZStxNFM4bUNueFFvdG81WW9YY3lUQm94dTUrbVBwbEhmc2RIc3JvVERkVGU4bU9lQW14WDBSODlaeU92elpzT09td2U1Qzk4Wk8zWjRNaTUzLzlXZUNJaUFDSWlBQ0V5R2dBVDJ5VXlsQmlJQ0lpQUNJakFnQW1NVzJHY1lHY1ZPSDJuK2VIOTREYmFNOW1VeVJJcEZUUHdYU2tnbmdUMGRjaGNDKzY1V0FIYjFybXhaa1Q2Q1lWL3hZR3ZIRWVOeFQwR2VYdGV2akJ3Uy9iSnBBZE5WdEhwTXR6Z0crbFF6SVdxVlR6VTNWdWpIejRTcll5cGpFTmpKa3hIWWZMWTRGeXdVeFBsLzAyS3NYR2dMY243Q0pMQXRiblp5cmZwRThKREFUaUg5STBiVWZYbmh2cm1qdnRrMEJXbDZ1RE5QaFd2angzZUNncjl2bVRpVjQ0d3B0RmRod3RZNkNZUmoydmZ4akxuV1Y0ZlI5Y3pWd1JNTU1lK25KdmZTdFNJZ0FpSWdBaUlnQWhFRUpMQkhRRklWRVJBQkVSQUJFVWdrTUFXQlBYSElxajVCQWxYSlRYMldGUlBFRUQwa0NxTzBnbmlXNTRxZldtR1RTUi9iOEZhUDdtaEVSVzZ3dmNaNDY3KzZGSGxMZ1pZYmIyMWFYa1IwcjFhVnNRanNIRnh4TFhFVGhodGRyazNLSjVob2R3ck5JWDl4V2c2eEhXN3FjSE9ucW9RRWRpYmhaRUpxNW1YNG9SWGFjMGQ5Ri90SGNaMGkrejZGcVBrZjJPZk1sOU1rOUN5eWZXNVljRE9wTFdGOU5nWjY1VE5Yd2ROczR0blFYUG5taGh1cXRLdjZsUDF2YU5PNjFrT2lpMFJBQkVSQUJFUkFCT29Sa01CZWo1dXVFZ0VSRUFFUkVJRXFBa3ZiaUxpMVNwVm9BOUdWVHlxUHVtOVV1aitQOVRPUnFZb0l4QkNvU201S1FXMHo0OS9OYUZhVnhRUm13aU90WlZob2o4Um9YMGFhMGs2bHFYVkcxNndaMWI0aEFDWnFaQlExbzJZcDBvNXRIT1EySm9HZC9WMERBQk93N20xT0VsMmZPUEhjNU9VSkRHNkk4RFJSaWhnYkk3Q3pPN1NQb3VqcnMvMUs3SEt3T3Z2RjlmZlBOdGxyYUpPSDY1YldPc3NWV21hMDk3SG0zOTQvd0UwdVBtdkxsNngzMkYrZUdGRVJBUkVRQVJFUUFSRVlPQUVKN0FPZklIVlBCRVJBQkVSQUJFUkFCRVJnVkFSbzI3R3hFVWovYzZTaXVnLzJVbFpZVHhGcmh6UnhhM3VTYy9JMEFaTitEckVzYVcyS2h0aTN2dnJFZGNnMUdMUEp3OXdDM05obWxEOXppekJKN0ZqWGIxKzhkVjhSRUFFUkVBRVJFSUVJQWhMWUl5Q3BpZ2lJZ0FpSWdBaUlnQWlJZ0FpSWdBaUl3S2dJUEFEQTN3TDQzMUgxV3AwVkFSRVFBUkVRQVJFWUhRRUo3S09iTW5WWUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUmdDQVFrc0E5aEZ0UUhFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkNCMFJHUXdENjZLVk9IUlVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRWhrQkFBdnNRWmtGOUVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJHQjBCQ2V5am16SjFXQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFWUFnRUpMQVBZUmJVQnhFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUWdkRVJrTUErdWlsVGgwVkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCSVpBUUFMN0VHWkJmUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJnZEFRbnNvNXN5ZFZnRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJHQUlCQ1N3RDJFVzFBY1JFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFSUhSRVpEQVByb3BVNGRGUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFTR1FFQUMreEJtUVgwUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVlIUUVKN0tPYk1uVllCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJnQ0FRa3NBOWhGdFFIRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJDQjBSR1F3RDY2S1ZPSFJVQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVoa0JBQXZzUVprRjlFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSR0IwQkNleWptekoxV0FSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVlBZ0VKTEFQWVJiVUJ4RVFBUkVRQVJISVI0Q2Y3UnNDT0FMQU1RQk95OWUwV2hJQkVSQUJFUkFCRVJDQlFSRjRHSUNUQVZ3RjRNTUFiaGxVNy9ydHpIb0E5dlowNFVNQXZ0NXY5M1IzRVJBQkVaZ09BUW5zMDVsTGpVUUVSRUFFUkdDK0NjeUU5ZmNEMk5paXVCSEFsZ0J1blFpYTl3SFlvVFNXWHdMWUZjQzNPaHJqWGdEZTRMalg2UUFPNnFnUHVvMElpSUFJaUlBSWlNQWlBaThGY0VJQnh2Y0J2QTNBV1FEdW1YTkkvd1RnSEErRDV3RTRkODc1YVBnaUlBSWlrSTJBQlBac0tOV1FDSWlBQ0lpQUNQUkdZQ01BeHdGZ3BGSzVIR1YrWUI0STRNKzk5UzdmamY4THdNdEt6ZjB2Z0djQXVEYmZiU3BiK2xjQTczVFUrQ1NBM1R2cWcyNGpBaUlnQWlJZ0FpSUFMQXZnSWdEOEhsUXVud2V3SFlEZnpERW9DZXh6UFBrYXVnaUlRTGNFSkxCM3kxdDNFd0VSRUFFUkVJRTJDS3dMNEhNQVZuUTAvbnNBendad1JSczM3cmhOQ2V3ZEE5ZnRSRUFFUktBbWdhY0ErQUtBWlR6WC81dTFNcXZadkM0VGdiOFEyTnJZNHAwUHdLVnI3QXpnbERubkpJRjl6aGVBaGk4Q0l0QWRBUW5zM2JIV25VUkFCRVJBQkVTZ0xRTDhQS2RZOFhiUERTaXU4MGZXMkk5S1MyQ1BXMEZyRys5OWJycTBXZWh4ZTAzcEJnOEVjRHlBcDdWNTR4cHQvOEJhQzkxWjQxcGRJZ0lpVUkrQUJQWjYzSFJWUElHL3N6WXdXemt1NGVjVC8zM3MzM3ZpYWJoclNtQnZTbERYaTRBSWlFQWtBUW5za2FCVVRRUkVRQVJFUUFRR1RtQUZjMFQ2QWdBYmVQcjVPZ0R2SGZnWVF0MlR3QjRpdE9qdlBodWJ1S3ZqYXJrc2NSNEU0RHdBbThVMTBWa3QyUVIwaGxvM0VvRy9FcERBUHAzRlVDWFM1aHBsSGJzMzVwaTVFTUFTams0b2VuMFJGQW5zdVZhbzJoRUJFUkNCQUFFSjdGb2lJaUFDSWlBQ2Z3TmdlYzhQRk5GeEU3Z1B3RjBBK044aGxSY0NZTEpOMStmN2JkYXIvSHRENm5CaVh5U3d4d0dUd0w2UWt3VDJ1SFhqcThYY0RudFhOTUZFZ3R6YzY3b3NaMC91OFBQTFZXNENjTFNwODd1dU82YjcvWVdBQlBicExJUWhDdXlNWGovVmVxeVhTU3Q2ZlRFUkNlelRlUTQxRWhFUWdZRVRrTUErOEFsUzkwUkFCS0lKTEcwRXovMEFyQlY5eGZ4VzVBOFAyampNU3VoSDhQeVM4by84eHlacWFtTUFGSzJIVkxoWmNoS0FIVDJkNHJ6dkJlQ1BRK3AwUWw4a3NNZkJrc0Mra0pNRTlyaDE0NnNWRXRmNjh0TCtlK08vL0NVQXEzczZybmx2TnU5TnJ3NTl0K2hyM1RRZDF6eGVIM29INUdDU0dzSHVpMTVuUXZjZEFKeVpvMU1UYUVNQyt3UW1VVU1RQVJFWUJ3RUo3T09ZSi9WU0JFUWdUR0NvMWdUaG5uZGZvMnp0RVBvUjNIMFBoMy9Ib1Fyc0pGYzFuNmsvWUljMkV4TFk0MlpFQXZ0Q1RwOEY4SHdBOThiaFU2MFNnWkM0MXBkUUtvRjkyRXMxOU4yaXIzVXpiR3JEN0Yzb0haQ2oxeW5mVDZxaTE3OENZRmNBdjhuUktVOGJ2eGpSeVJnSjdDMHVCRFV0QWlJZ0FrVUNFdGkxSGtSQUJLWkNRQUo3L0V4S1lJOW41YXM1WklHZG4rMUhBamlnMVBsekFMd2V3SGVhRDcrM0ZpU3d4NkgzQ2V3L3J5RUs4SFRRU283YnVqellsd1N3Q1lBVkE5MWtuZ0N1eFhKNUZ3Q0tJM1hMWXdDOHpmeVAvU2dXVjEvcjNtTWVyd3VKYTMwSnBSTFloNzBhSmJBUGUzNVNlaGQ2QjZTMDVhdWJJckJYMmVIbDZFdW9qZWVaWUlaelE1VUc4bmNKN0FPWkNIVkRCRVJnK2dRa3NFOS9qalZDRVkxWHVnMEFBQ0FBU1VSQlZKZ1hBaExZNDJkYUFuczhLMS9Oc3NBK05Jc2lDay9iRnJ6WXJ6WkhwcTlyUHV3c0xUVHhSWmJBSGpjRkxvRTlSYndvM3NVbmtqVVJyWDAvK0p1S0ZtMzBOWTc0dEd1RnhEVUo3Tk9lLzdxams4QmVsOXp3cm5POUEyZzE5MFlBMzYvUlhkY21hK3huMUxJQUxqSjVIemFxY2Q5Y2x6VDlyTXJWajVoMkpMREhVRklkRVJBQkVjaEFRQUo3Qm9ocVFnUkVZQkFFSkxESFQ0TUU5bmhXc1FLNzFsODgweWEreUJMWTR6Z1BYV0RmRThCeGpxRTBGUzBrc01ldGo5UmFFdGhUaWFrK0NVaGduODQ2Y0wwRFlnVnhGNFVtN1RHUHpMRTlvMjM2V2RWbDl5V3dkMGxiOXhJQkVaaHJBaExZNTNyNk5YZ1JtQlFCQ1p6eDAxa1cySjlnRTJNdUY5L0VLR3N1RCtDQm5wNHpXV2xLNHM4ZkFYZ1JnRHRzZTFwLzhVdENBbnM4cTdvMWh5Nnd2d0hBNGFYQi9SYkFaZzB0WWhnVnlmVkZmOTVpNlN2Q3V1NzhEZTA2Q2V4RG01Rng5RWNDK3pqbUthYVhUUVR4bkFMN2FnQXVBN0JtVEtkYnJDT0J2VVc0YWxvRVJFQUV4a3BBQXZ0WVowNzlGZ0VSS0JPSTlmN3RraHpmc2E4QThKeUttOUs2NHdPSjRtN1RNZHdDNEpxbWpZendlcDh2ZFE0L2RRbnM4UXRDQW5zOHE3bzFoeXl3ODcxNElvQmRTb083Mi9xMzMxQjMwQUI4UXJBRTlnWlFLN2pPV3UyTHJ6elltODFyMjFkTFlHK2JjSGZ0RDBGZzUyZkhZZGFXcHJ1UnUrOGtnYjN2R2REOVJVQUVSR0NBQkNTd0QzQlMxQ1VSRUlISkVIaVNqYlR4UlliL0hzQ3pBVnd4bVJFUGV5QVMySWN4UDMwSzdBOEFzQUlBL3JkdTJkdnpBLzkwQVB2WGJiUjBIYU81ZjltZ3JTRUw3RXlBeWpXd1RtbDgzN1lSN0hjMkdMZFBZSDh0Z1BjMWFIZmVMMVVFKzd5dmdIcmpsOEJlajlzUXJ4cUN3RTdQZFVhdkwrTUE5RzZiM0QwWE8yb2svd0dBZGpUbHdzK296UUZjbit0bUxiY2ppNWlXQWF0NUVSQUJFWmdSa01DdXRTQUNJaUFDN1JDZ1JjR3BBTGFyYUo0ZXhQdDFITDNlem1qSDBXcWJBanV0WjQ0SDhMUVdVZkNVQmlNMlhTWFY0c1pubC9NSDg0UHlaeTJPZ1UxZkJXQVBBUGZXdUU5VEQvWlF4R3VOTHJWeVNaTUVvdXpRa0FYMlRZeVFmamtBcnVkaU9RUEFTeHErRDl2eWRtOWxra2ZVcUFUMkVVM1dnTG9xZ1gxQWs5R3dLMzBMN0R3bGVDYUFMVDNqT0FyQWdRRCszSENjczh1cnhQeTNBVGkwNXIzNnNHUWt1NGQ2dVB3Q3dHOHlNWXRwaG9FRHV4cUx4Vy9GVkZZZEVSQUJFUmdiQVFuc1k1c3g5VmNFUkdBc0JFSkptSDVnSXRlZkJlRG1zUXhvQXYxc1UyRHZBbzlQSEs1amNlTmowVlRZYlp0RFNHQm5WRFQvUjdIVzlVTmJBanR3YmVJazVVNGMrbVl6TjI5eTlDR0h6WWh2WFkvcE9IL2k5SFJTWFFKN0o1Z25keE1KN05PWjByNEY5dEIzNnB4UjVWVmkvdmNBYkdHQ0JHaTFXS2VFbm9rNmJZN3BtaWFKY2NjMFR2VlZCRVJnVGdsSVlKL1RpZGV3UlVBRVdpWEE1RXRmcUlnMjVzMTNzejdFclhaRWpTOGdJSUY5TVk2cENlek1jL0IwRXhYTnlETGF2K3hrUmZieUl5Q0J2VitCL1dIbWFQM25BRHl1TkRGTU1QeE1ZNWwxWmNOM0ZoT25Nb0Zxc2VSSW50cXdXNk8vWEFMNzZLZXdsd0dFeE1RY20ycTlER3dPYjlxbndMNnUvZHlndlZoVjRTbENDdkVwQ2V0ZDdkRlM3RDJlR3pYOTdoNTZKcWErdENTd1QzMkdOVDRSbUhNQ0V0am5mQUZvK0NJZ0F0a0ovQTJBazR3MzQ0NFZMWjluQlVBS1B5cmRFWkRBdnBqMWxBUjJScXJ6bUROdGIyYUZ4NUMzQXZEbDB2S1N3TjZ2d082TFFtVFNaYzdYUFExZUI3N2txZnBCM3dDcXZWUUNlM09HODloQ1NFeVV3RDZlVmRHWHdCNWp0emlqK0NjQVc1dk45a3NhWU4wUXdFVUFYTG1UY254M0R6MFREYm8raWt2MWVUeUthVkluUlVBRTZoS1F3RjZYbks0VEFSRVFBVGVCbHdJNG9RSU9oVDhlTC8wZkFleWNnQVQyNFF2c205cEVaYlF4b1RoT244N3ZtK1NoZDF2TEY1ZEZqRzhoM1dUOVduOVVxQ0NCdlQrQi9aRUFQZ3ZnMFk0SmU0djVOMXJITkNtKzVLay9BYkF4Z0Z1Yk5EN24xMHBnbi9NRlVIUDRJVEZSQW50TnNEMWMxcGZBWGhWTjdzTHdGUURQTmZtTjdxckJhRmw3OG8zMmplV1M2N3Q3NkptbzBlMVJYU0tCZlZUVHBjNktnQWlrRXBEQW5rcE05VVZBQkVUQVR5RG1HQ3RGM25mWFRJNGs5czBJREZGZzU0a0hKdno4NzRqa29rUHdZR2QvdVVGRUs0ODZTVXBETThqa1Z5ZVdLakZmQVpQSDNnN0FKN0F6aXQzMW5ZYUM3b3NLa2RHTWh0dmNQSU5NU2x1MzdHK0VZbTRFbE11bkFKeVYyT2oyQUhaeFhOUFVDMzlvU1U2NWJvNEI4RXJIV0hONTUvbzJON2xXdHdIdzY4UzVVZlhGQkNTd2F6WFVJUkFTRXlXdzE2SGF6elY5Q094VjBlVFgyNFRwcnM4VTJvUzlNL0Y3ZHRWbkZJbS9Ec0I3TTZBUFBSTVpiakhvSmlTd0QzcDYxRGtSRUlHbUJDU3dOeVdvNjBWQUJFUmdFWUdxeUpjWm83TFlKM2JkRWhpYXdNN1A0SU1CSEdFVFpqRVI0OWNya1BRdHNGT1UvcUJKelB0eUkzaGZER0JuRzFtZWN4YjV3NWcrMnNYeWVRRGJtUis0di9FSTdQekI5bnJydis0NjF2MVJBUHNBK0VPbWp2cEUvanBpVVZ0V1BVTVQyRjhNNEdUUEpzaFJaZ1Brd0lJWXNyUjluL0xVUXN5YzBYTi9kd0RIbWJWRGthUmNqamJybEpzaUt2VUpTR0N2ejI2ZXJ3eUppWFhlbWZQTXM4K3hkeTJ3cnd6Z01nQU1YQ21YbVJYTURkWU9wcHpUZzk4SkdBaEE2N0dZVXZ3dTVxcWZ3eHBtMXE3dm1XaFRlSzU2ZjdlVkFMeVBjY2JNdGVxSWdBaUlRS3NFSkxDM2lsZU5pNEFJekFtQjBKZHpZdkI1UXM4Sm9rRU1jMmdDT3lPclR3V3doS1hESDFoTXp2a1pENjArQmZaVmJGK0xrZHRYMlA3K0xPUHN1c1RyWWpTMzYrK3pINlpyVjlnejVUdzVJb0Y5MFlUSFJ0ay8yNGdrcDNrOGJXOHpJc296QUh5dnNJWTJBWEM1MlRCWkVnQ0ZGTmJoNWdyRmt2OHJyVFZ1YkRMQnJXdGpoVlY1c29IUjZ4ZG1YS1B6MkpRRTlyaFo1K2JRUTB0VnVZWmpONHZpN3BLbmxxdXY5MWxyRGY0M1I4a3RzRC9JUkJFL3VOQ3gzUDNOTWVhcHR0R2x3UDdOaWhOUDVGdmNsUFdkWEhKWnhQbm1wdnhkckZndnBaMll1ZTlEZUpiQUhqTXpxaU1DSWlBQ0dRaElZTThBVVUySWdBak1QUUZHZ05BYVlpYVV1b0RrRlBqbUhuaE5BRU1TMkgxSG55bkdIR0IvWEZJY0xKYStCSFlLMTR6Z2NubG44NWoyQzBvQ2FjM3BBY1VUM21lelVnT0hBSGk3L2JjcWdiM3FSem01Y3ZQaWpMcWRLMXduZ1gwUmpCaUJuZFkrM0REeUNlQ3VZL2VQTUlucXZnUmcxUXh6VlR6OWtLRzV1VzFDQXZ2Q3FlZnZKNzZQR1NWTHYyZHVDcTBlV0IwOGpmRTFzNjU1b29idk9WcGVkVlY0eW1NOUFDOEV3TGxrVkhEVjl4WDI5ZHMyZ3ZoMDIrL2YxZWhzVTRGOUJmdjVRaHVRSjN0T3FMQmJUSExOVTFVZnQ1dHpNU2RmYWd4bnJpOXh2UVArQ09DTk5rOUtLcHdON01tejRuWGNMT2ZuUDU4cm51eHpGVzdzc3kremhOaFZTVkJqVHE5VjJkRGsvTjR3RzRzRTlrV2I2c3l6b3lJQ0lpQUNreU1nZ1gxeVU2b0JpWUFJZEV4Z0RYdEVkYTJLKzA3QkdvWWlBdjJpK3k2TUJLUzNKazhFcEphaENPeWhOWE9qVGM1WlRzcllsOEMrclkxZVg4WUQvQllqd0lUc2JXTG15amMrUnFpZFpCdW9FdGo1ZzQwUnplZDZQTkpkMGRJeC9TclhrY0MraUVpVndNN3ZseFJCYUF2ald6ZVhXTUdQMGVuRlFpdWlzd0c0RXMybHpOZnZUYTRBUnM5VGtGRnBSa0FDK3lKK3E1a1RGWHNDZUpYWkJGMnBHZEsvYkNLOXhpWnpMbSttTm16NnI1ZFRvS1o5MW41R3NLUVEyYVR3RkFndFhiNlIwRWhkZ1oyYmJHKzFkbVFKdC90TDFWOVowZmRqQUg2YmVySHFld21FM2dFNTBGRmc1enY3bnozNU9ud25RWjlrTjROY0c3bFZ3UzFyQWpqZmZML3dmWDl2SXpCR0Fyc0U5aHpQaXRvUUFSRVlLQUVKN0FPZEdIVkxCRVJnRkFSaWZOZW5ZZzNqRTZlN25xZ2ZHN3VIamExdFJPcTloeUN3aDlaTTFYcnBTMkFuNXlxYkQvNmRpU29wc2wrZE9pbUYrdjlveGRDaUJRQWo1SjVwazZxeWFraGdaNTJxaUxRY20xMCtnWDB2RTlYNjRjVHhkK25CWGpmYThESFczNTZXTGNYaUU5anBnODV4VVNEemxkQ3hlNHBqVFA1YnQxU2RCS25iNWp4ZkZ4TFgrdkxTOXIwVFozT1Y2d1RET3VZVXh2dnR4bWZ1ZGZBaEs0TG5UQnBOTVoyaSt0c3FvcjdyakNOMW5sTUZka2JhTTEvR2V6TDBtNTlGVENCOWM1MkI2cHI3RVFpOUEzSWdtOW05K1U2alZTVWFmYTFkTjY1KzhMcjNsWktlaGdJZFlxTGY2NHhaQXJzRTlqcnJSdGVJZ0FpTWhJQUU5cEZNbExvcEFpSXdPQUo4Zng1bUk2V3FPbGYxZzJCd2c2cm9rQVQyNXJORmNaM0M0UTZlcGtMSGtmc1UyTm5sa04wSE53ZDJOSFlKbDlaRXhWTVNqQ1lyRnA1WW9QMENrNW14eEFqc3JFZXgrMWhQUDVoSWxhY2c2a2FOK2dUMk9zbkN1aFRZYTA2TDl6S1h3TTdJMDA4RW9zOWpOaDBaSmN5a3BYWEs5MjJFTVgzYzY4NXhuZnRPK1pxUXVKWXF2T1ppMWJiQXp0d1RGTURiUHIyVk01OEZMYjNPQkZCTy9KaURlZW84cHdqc3hTVGFPZnJLTm41Z0UyVFBQajl5dFR1UDdZVGVBVG1ZRkJOOWxvTVJRb0ozbFZVTXYxdHhzNFU1Yi9pWkVJcGN6N0VSNytNaGdWMENlNDVuUlcySWdBZ01sSUFFOW9GT2pMb2xBaUl3ZUFKVlNaRm1uYWZQS24yZnAzQk1XUUo3c3lYSnFONWpQTWVlMlhKSVhHZWR2Z1YyOWlFa3NvY1N0VlpSUE1na3NIdHZxUUo5Z09uSnlnaDVsbGlCbmJ4cEswUEJ2MXhPc2ZOUXRpYUptV0dmVHp5dm5XZUJQVFppbHQ3SUw3RUNZQlh2elkzTkQwV09LcC9vNHZWczl6TDdqTkhLUWg3TU1hczV2azVJWEVzVlh1UHZYRjJ6YllFOU5PNWM0MkE3T1VTOTBFbWpwdjFObmVkWWdaM2lPamZVYUFlV3UvZ3MxM0xmWitydGRmRXNGQVYyOHB4Rm1kUHVpNzdzZHdRZ1YwV2w4enNXVDBWOXhmajVuK1BKS2NQbVE2ZXJtczZ6QkhZSjdFM1hrSzRYQVJFWU1BRUo3QU9lSEhWTkJFUmdzQVNxTENobW5XYlNMZjRnWVFSVjhkL3FKQW9iQWdnSjdQVm5nV0x2QjJ4VXRhK1ZHSy9QSVFqczdIOUlaSThWVWNzc1hMWWdqR2puWnRic3VZa1YyTm4ySTYxb05Vdk95bjR4c3AxdDNGZHpPaVd3THdZM2kyQmYwU2FQWmVLeXF0Sms4NlhZN3RJQUhtci9nZk40VjRQNXJMa001dTZ5a0xpV0tyem1BamdsZ1oxTWFPbHlhTTJURnpIZlM1cHlUNTNuR0lHZDFoMVZtODlOKzh6cktkN1RNb2MyV1NyMUNJVGVBZlZhWFhoVldXRG5YMmtKeU0vL3IwZmVJUFFjVUdqM2Jkem15aWRUMVZVSjdCTFlJNWV5cW9tQUNJeVJnQVQyTWM2YStpd0NJdEFuZ1pCdlkxWGY2a1M0OWpuVzRyMGxzTmViQ1lycjd3QkFmMUJmZVl2eG16MDhJdXAyS0FJN3h4RVMyY3RIc2tQMGZJa3Rqd2F3ZitIaUZJR2RsNzNZSnRyOGp2Mi82ZTNhcEVoZ1gweXZhQkd6UG9BTEFGQnNkeFVLRjl3b1lmU2d5dmdJaE1TMVZPRTFGNEcrQlhiYUhURWg3MmRzc3RMYkM1dUJIQ1BmLzl6bzQ4YmVxeU1TamJvRXhoaFdUR2JLNTIrRFFHV2VwdnVJdFNxak4zbnhGQTkvRXk0UGdEa1hHQW4vTXZQdWZHeXB2ZFI1amhIWWYyTHVlWUtqMy93TU9kM1llWndJNEg4S20yajBhV2RTUzBhNzAyNHQ1cFFMSTZCNUtxWkpqcENZZVpoeUhkYzdvR3E5dXI0ek5zbWhrOEkyNW9ScHViMFk2N0tVUHZqcVNtQ1h3SjVqSGFrTkVSQ0JnUktRd0Q3UWlWRzNSRUFFQmttQVB6NzVnNDlKRit1VUtRcnN2a1NIZGZnVXIvSDlDR255QTYzckpLY1VWdzR4MFlodnFvQVI4aFV0WGpva2daMzlDdGtScElqc0R3TndsZVBZZGpseGFLckF6am5Zem13SVhBd2dSeEpCQ2V5TFYyVDUyZmRGRHRMNmdtTFl6NXErRkhSOWJ3UWtzQzlHei9jYVJkOGpiRzZJV0ovL2h3RGdoaUdGNjZyQ2FHNUdXOGUyeTdhcWNrN003c1djRkJUSWY1V3dpaWpjMDFhRHVXUldzdGR6M0xFbEpMRFRyb3VmSStXTnVRL2F6ODVRWDhtVStUUzRlUkVxZGJpRzJweW52NDlKWUtlK2NiQjlSbVBtcUN0eG5YMlJ3QzZCUFdaTnFvNElpTUJJQ1VoZ0grbkVxZHNpSUFLZEV5Z25YUEoxNEZyN0JkcjE5eXFCblpIeGpMYmxVZWJRajhyT0IyOTg1TnRLeHVnYnk5Z0Y5cGpJOWVPdGtCTHIwVDgwZ1oxenQ2MU5ITGFNWnlKbnZxY1V4cXNFSTlkODh6Zy9ON091TExTZEtyRG5mbFpvVFVLeG5oSGJ4ZUxxYTh5OTIzcXVYTzNXalk3MVBZdXV6YlZpNUNBdGVTak1VZGlxYThrVHcxQjEyaWNnZ1gwUll3cS9iN2EyUkhXb2gzSnhzRTFHZEc4SzRJZVJOK0IzazR0TUJQdEdGZlZqTE1pcWJqZkxzY0RQS200U3hKYVF3RjV1cDA2aTdGZ3hOWlZyN0JqbnBkNTZ4Z045NzlKZ3VSNk9CTURURU9YU1p3UTcrOEpualhaTGJ3eE1FTmNjdjhkd2c3K0xJb0ZkQW5zWDYwejNFQUVSNkltQUJQYWV3T3UySWlBQ295SVE4Nk9ZQTJJME1uL29Nc3JkVlh3Q085dm5zZTJYQS9nK2dGZVp4STZYSjBhd3RRMjBMU0hRMSs4eEMrd3hudXRNeE1oa2ovY2tUTndRQlhaMi80VUFHSW5JY2J0S1RDUTcyemlqZERFam5wOWV5bVBRdDhEdW00TzY0blZiejFWZkFqdS9WMUpVcDlqM2NSdGR1bHpDR20rcjZ0dnQ1bVZiN1UrOTNaREFUdS93RC9VQVlXVUF6TlB3Y00rOVAyOVBzTlJKYU13bVorT210UkUvbjVsMHVXbGhuNW1RZDkyS2huYTI3OVNZZTlFV2h1T2tDTzRxL0U2eWZVL0oxbE1FOWlaUnhMSGYwVks0eHJCWEhUK0JQZ1YyZmc3eFpNU25LbXpMaWozblpqRlBqWFFSM0NLQlhRSzczaHNpSUFJVEppQ0JmY0tUcTZHSmdBaGtJUkFUaWN3YjBRYUIwWnRNOUhlTzU4NCtnZDExdlBzczZ6MTlhNVpSTkcra0xTSFExN094Q3V3VU9Samh4MlAxdmpKYkt5bmlPdHNhcXNET3ZvVThUME1pT3ozbzMxQUM5bFVUVmZZY0FFd1lQQ3NTMk9PZTViNEU5bUx2VXNTMXVGSFZyNVhxSFYzL1R0TzhNaVN3RDNYVVRRWDJiZXhwbFhkbkZxajNEVVNDbDNOUFZQSGQxVnJXK09yUW51bWtuaVlvOWgzQXo0ZWRISnVzS2QxZXpXNWNyRmx4VVFyWGxIdXI3djBKOUNXdzB6YUkzeWY0aktVVWl1djhMbjVxeXlldUpMQkxZRTlabDZvckFpSXdNZ0lTMkVjMlllcXVDSWhBcHdTWVRPdjFBQmo5V0ZWdUFyQWxnQjhWSXQ1YzlWMEN1OCszbU5mVFlvSEhXL21qTU5aR3BDMUFFdGpEWkhsVS8yTTI4WnF2Tms4bU1ESGIzZUhtN2xkanlBSTd2MDlRSUdIRW1DL3BuRTlFV2RKR2ExS2tMeGEyUlhHb2FDM1R0OEQrQ0FCZk1xZFZWaTMxVlJIczkxL1FzZUphalVjaCtSSUo3TW5JRmx3d3J3STd2d1B3dlpYaWh4NUQrdEhtTzhNWHphbUtWVHlWdVFuNy9NaThFYUVFNUgzbWZvbDlCeHhsVG5NZG1JRXo3WHVxY3A0MDNYQ0ptVnZWV1VTZ2E0R2QzMEZvS2NmVG9FelVXN2ZjYUlOYmVNcWtEV3N6Q2V3UzJPdXVUVjBuQWlJd0FnSVMyRWN3U2VxaUNJaEFMd1JpZlQwcHJqUEs3WHUybDFWQ1JQbUhicXl2TzcvdzA1LzltNzJROFA5WTRsK1U1SFFSSHdvbGpIeWlkNjZ2WEdGRjZMckpIb2Nzc0hQTU1jOE1ONDFvalhObUFSSVQzRkg0V0tjRTdyVUEzbGY2dDc0RmR0K1BZL3I3Ymd3ZzljUkpXeHRYaW1CZnVIQ0dLTER6ZE5RL0FuaWtpYmE4MDI3Yy9LN0hkM3pWcmVkVllHOXJPcGEyMGRyODd1QXFQekM1SHA1bWtuZmVIdEdCc1F2c3Q5bVRmN1B2VUJGRDlsWUpDZnBOa3FRMzZWZm8yakc5QzBKam1mMjlTNEdkRzk4ZnNGWklvZjVSTk9mR1dhaDhIUUMvZy9DN1NVNmhYUUs3QlBiUTJ0UGZSVUFFUmt4QUF2dUlKMDlkRndFUmFJMUFqRkRJbTdzOFExTUU5bjFzMHJUWWdUREIyaUVkK1VTVys5U1dFT2diKzVnc1lwWUNRT0dYd3JHdjBPNkVQcmlwQW15eHZhRUw3T3hyekxQem4wWTRlaldBLzdPRDg4MDF4YWNMU2tDSEtyRFhGVzdhZXE0a3NDOWNPRU1TMkdlblBSaHBTVHVEV1JseVVsZ0o3TEdmMHZIMUtBalM5OWxWWFBrbmZDMkhCUFkrMTM1SThPYVltQVNaSEhLY0V2QWxvWjZ4KzdYZEJQOUcvRFMxV25OTTd3SnVBaXhmT3FGRzRma3Vqd0RkaGNBK1M3N0xIQkMrSERERjkrc3JiSTZrdDloY0lUR1QrM1B6WGVYZjdTbTdlMk11Q05TUndDNkJQY015VWhNaUlBSkRKU0NCZmFnem8zNkpnQWowUlNCR0lHVGZhQWxCUzR6UGxEcWFJckRYT2RKS24waDZydksrT1g2UXhuSnVTd2owM1g5TUFqdkg4RUNiUkpHV0p1V1NRMXhubTB5T3gwU2dhNVJ1UUdzaTJxdmNFVHVaQUo3cmlmYTZCc0R4Q2UyNHFsWWxlZVVQVy9xalVreWNGWmVITUMxME5qRW5OMjRvM2FCdmdaMkoweTYyR3duRnJrbGd2LzlLOEQzRGJTYkVmS0tKQ21mK2luTEN4ejVGeGpLWjF3QTRzdUlaNDd1V250OWR2dDlEajd3RTloQ2g5TDlYQ2VNcGxsTWhEM1ltYU9YN25rSm8xeVVrc1AvUjJucGNtYWxqL0U1MUlvQmRQTzJsY00zVXBjcG14dlF1Y00xbDFlZGVtd0k3STlENS9adldRaXRGVEJTajBYa0s5THUyYnAzdjNyU0tZbko2V2taK3VmUWRKcUlMZjYwaWdWMENlOHA2VVYwUkVJR1JFWkRBUHJJSlUzZEZRQVJhSlJEcnVWNlZrQ3RGWUo4TkppVUtaM1pOMTBsUUpiQ0hsNTRySVc0dWNUMTg5MkhWSUF0R0pyN1Nkb3ZQekFIMjM4ckM0ZXZzajlaaUJKb3J3U21iNmx0Zzl6M2ZGSWdZY2M4SXlaVFMxbk0xNUFqMk5zVnVuM2pSNWoxVDV2dFJBR2dWVmZid0w3YkJrMUcwbXJvdXBlR1c2MHBnencrNFNoaFBFWUpESWpaNy9sRUFQREZYM05qTVA2TDd0eGpxMjdjQmJHWXRrbkwxSnhUUjM2Y25mWEdNWTNzWERFRmc1M2NFQmhNY0FXRDF5QVZEVDM1ZmttSUdScnlqNGlTSjd4WjhqbWh6OXdrQW53T1FZdTBsZ1YwQ2UrVFNWVFVSRUlFeEVwREFQc1paVTU5RlFBVGFJT0FTUjEzM29WREk2Q2o2YmJzaURPc0k3TFA3MElPYVg5ZzNpQndnditUdlpVWEhuQjZScnR1M0pRVDZoanEyQ1BiWk9JclIyMDA5MXlPWHdXQ3J6WElNUE1PZXVqaTlJaXFYMzBkb2diTUZnQmZZYUh3S1F1Vm5MRVZnNTNGMkNwV2hvK01wQUpsRWJXL0hCZDhCd01qc2xCL2FiSWEyUWE1b1M2NGRXa2o0eXRWbTg0Sys3NzRpZ1gwaG1hRUk3S0ZvNDFtdlhma0hVdFpwN3JvaGdaM1dDWFVTTnpmdEp4TWs4NzNoSzBOTGFzbE4vQlZzdmdsR2xUT0p1cXVrQ094OHoxNWs3TFEyQ3NCazRsUnVlUDZ3S2ZTRTYwTUNPMDlrMFZxTmtleTVTdWdaRzRyQUh1cm4wTjRGZlFyc0ZNSzVUaWlHeDBTc2t4MVBicnpjUkxwekV5ZFUrTjJiSi9lWVI2Vk80ZWMvMS9JcFpnUGdXNEVHSkxCTFlLK3p4blNOQ0lqQVNBaElZQi9KUkttYklpQUNyUkpnQkRtUDdPOFp1QXZGOVQyc29PMDd2dDlFWU9mdCtRT2N3dUo3RW9SQi9wQ2dOY25zK0dzYnNDU3d4MU9sb010MTh0OW1BNlJ1UXRQNHV3MjdKajJtbVFBMjE5cE1FZGhENHM2d3lWWDNMaVFTU1dCZnlHOG9BbnNvdW5iV2E0bzk5QXNlU2drSjdIM3g5ZVdsbUhIclEyQ2ZlVld2YllWMHZvZjR2eld0bFZqTW5LWUk3R3h2WHlQY0h4M1RzTFV5Tzh4ODMyRnkwYlpMNkIzY3hqb1ByZFhRdTdOdEpyUDJ4L1l1NkVOZ1g4M2tPcUtORG5PMmxHMi9mUFBFd0pNMzJ1Zmh0d21UT2JPTjRjbTd4eVZjVjZ5Nm03VW9xcnJjOTB6d044WFo1dnMvUGQ5ekZ5YlMzdExUNkNWbUkrTG0zRGUwR3lIUGQ5anBwYjdiV3VpYW1oUUJFUkNCOWdoSVlHK1ByVm9XQVJFWUJ3RkdmMzNNSE1mZklkRGRLb3VMNHFWTkJmWlpXL3hDL0NrVG1mYlVTSXgxZjFSRU5nOEo3TEdrM1BXZUFPQWtBTXMxYTJaUVY5ZnhmbTg2QUFuc2l3aUdSQ0lKN0F0WFdsOENjSG05Y3hQM3VJaUhZQ2o5blhVMUpGcjIxZDgrQlhZSzZmOWdMVTRZUGM3L1BTSkJSSzlhQnFraUZQTnpYQVpnM1lpMU5hdENtemtLa2N4ejBaYmZmMGhnYjJQZGhOWnE2TjJaZ0xCUjFiRzlDN29TMkpjR3NKV3hNem9rNFRUbmJDSk9BM0JRdzJUeURIS2hEUTF0WldKdGFIai9HNDFkek9abU0rRDJ3S29JUFJPTkZ0VUlMazU5dDQxZ1NPcWlDSWlBQ0N3bUlJRmRxMEVFUkdDZUNmREhNSDlrcmgrQUVCTzVIaU5FcFA2d3F4UE56bVJPUEhvY2N5dzJaZTRsc0tmUXVuL2RLZjZvcXB2WXN3bEpDZXlMNklYZUpSTFlGNjZ5Tm9TOE91djQ4ZGFEdldxajdmZFdxS0VOMEZCS1NMVHNpMi9YQWp1dEttanJ4SHdTb2U4TlRlYXVqZ2kxb2JXS1NkM0UvYjYxdDZJNFNhdWZuQ1gwdWRmR3VnbXQxZEM3TStmNHE5b2EyN3NnaDhCT0hqdzU0Yk1FWXY0SjJzRFFIbTNGaElsSXNZT0piWmJmdjdjRDhNN0lpSFltY0g5elJPT2haeUtpaVZGWHFmTnVHL1dBMVhrUkVJSDVJaUNCZmI3bVc2TVZBUkZZVEdBOUFPY1kzMFVlUWEwcUtlSTYyOGtWd1Y3c1UybzBPNit0U3V4VVp4MUlZSzlEYmZFMVUveFJKWUc5Mlpwb2NuVklKSkxBdnBCdUcwSmVuZm5qOTI3YWtWR2c5WlcrRWxKV2pTY2tXdmJGdHl1Qm5WWlgvMkhuTFdkT0J4L3p1aUxVdGpZL3pESTFGaWUvNnpBSERITko1UEpwRDMzdXRiRnVRbXMxOU82c2dhN1dKV043RitRUzJLdGdjZDB6NlMydFJYaTZJbFFZTlU1THhjdGJQSVhCZWVMbUZjWHpyVDBkU2tsTUhYb21RbU1lKzkvcnZ0dkdQbTcxWHdSRVlFNElTR0NmazRuV01FVkFCUDVLZ084OS9nQTdHVURvUnlodFY1aFk2Y3dFZm0wSTdMdzlmOVRUaS9Md0JHOTJScWJ0YkpNOUpRekJXVlVDZXpPQ1UveFJKWUc5Mlpwb2NuVklKSkxBdnBCdUcwSmUzZm1qbHpEZjR3YzZHcURBU1QvdDNKSEVkZnM2dXk0a1d2YkZ0MjJCbmQ4WGRnTHdFUUFVMmJzcVRVUW8ydGFjV01OZW96ZzIrakx6KzBiVGszQ2h6NzAyMWsxb3JZYmVuVjNOTWU4enBuZEJWd0k3azZMZkVyQThvckRPdFhPZTJmaTZyOE1KNC91R2d2NnJTc2xXbVdTWUoxdGlQTjlEejBTSHcrbmxWazNlYmIxMFdEY1ZBUkVRZ1JRQ0V0aFRhS211Q0lqQTJBbFFwS2J3OU5hSWdUQWlaVWNBbDBiVUxWWnBTMkNmM1dNZDYrWE5DUHpZd29TcGgwWisrZmUxS1lFOWxyYTczaFIvVkExZFlKOGxHMXlpMmRUOTlXcEcxakV2UXRWM3AxOWIrNWJ2WkxxbnI1bGZHSUhoZHhYM2tNQytFRTRiUWw2VEtlWWFXZ3ZBQzJ6eXkrL1pwTWczdFJpSjJhUy9JZEd5TDc1dEN1eDhmOUFIbXFmQmNoUStzM3huWGdQZ3k5YS8vZldlaHB1S1VMUzM0TVlBL2Y2YmJBelFObWIvQnNtNlE1OTdiYXliMEZvZGtzRE82Ui9MdTZCTGdmMWFBQzhGY0VMcCthQUY0bXNCTUhseGw4SjYrVEhsODhXY0N6eUp4UHhOZXdQNGNPUkxJdlJNUkRZejJtcE4zMjJqSGJnNkxnSWlNQjhFSkxEUHh6eHJsQ0lnQXNEeUFIajAvb1VSTUJnOXd4OWgvREtmV3RvVzJOa2ZSajBkQnVCMUNaMWpOUHNlOW9kSndtVi9yU3FCdlE2MXhkZlE1b2NScTV3N1grRWFaUlNVU3hEbWhzL1pBT2pQM0ZWWnloN1Y5bm42ZmhQQUZnRHU2cXBEQUZJODJITjNpMUhIYjRob2REL2pIL3ZCaUhwdFZwSEF2cEJ1RzBKZW0vTTN0TFpEb21WZmZOc1MyUG43NkdEenZqNGljU0orRHVBcUFOODEzeUcrWnNTMzY2em45TjJPalpNcXBybEVLSHJHTStLVzloWlZuejFWdy95VnpldnltUnFiUHlFeHNZMTFFMXFyUXhQWUU1ZFliOVc3RnRnZlpDUFV1YkY5b1EyTytWYU5OZGcyTUg1UFlwSmdubmlOS2I1bkl0Y3o3K3BERjc5THl2ZnRZNXd4L0ZWSEJFUkE1OXE4bkFBQUhaRkpSRUZVQkZvbElJRzlWYnhxWEFSRVlDQUVOZ0J3Um9UZk9ydDd2WTBxWkVSaG5kTGxGMW4rOEdDRVQ4aEh2amlPdXRIc0V0anJySWEwYTVZRWNMU0pGdHpMYzltcmJVUmlXcXYxYW9jRUpncitXOWxJekhwM3FIZFZYd0o3OGNkK3FPZU1VQ1diZTBJVlcveTc3M21sQUZnVitlN3EwdEtsNC9Dek9wODBYczI3VjR6Qjl3TzdEVkZ0MW8wKzd0bmlOQTZtNlpCbzJlYWNWa0ZvUzJCL2tmVXlENTErNGZQMG53RDRMRkJVanhYWk9LWXVCUFlaTzRyclBKSEhrMnlQcWJtcXVLSC92a1NCVXdKN1RkZ0R2Q3lId000QWdkTXJMTEJvc2NJY0ZUZmI4Zk9VRHordkdQVHlCSHQ2TXpXSmIyNlUzRUJqc0VwZEc2OCtoT2N1ZjVlRVBvdmIzRWpJUGRkcVR3UkVRQVNTQ1VoZ1QwYW1DMFJBQkVaRWdNYzRHYjFGVVRrbU1kbkYxck9jMFdaMVM5ZGZaQm4xekdQZy9QRWNXK3A0czB0Z2o2WGJyTjRhQU9oL3l4K1c1ZEtWcUIwUzE1a01qL1lEM0xUcXV2UWxzSWVFb2lJSFJyTnRZNlB1dXVZenU1L3ZlYzNabjdvQ081TW9maWhuUndwdFBSSEFXWTVvM2I0RTRKYUcyWG16OHlTd3J4endmeVo4Um5WekkvVFVCbFlWWFFyc3N3WERkL3ZhTmhxWUZoeWhEWVRpUXF2ejNnKzlOOXQ0TGtOclZSSHM5VjRmT1FUMkpyWnlvYlZVYjFUcFY5R2VaanR6Z3ZRMzZaZis1UW9KN0FCOTlta0RwQ0lDSWlBQ2t5TWdnWDF5VTZvQmlZQUlXQUtyV0U5RS9waUtLZlJQcElWSFRKS2lxdmE2RnRqWkY3N0xYMndpMlkrUFNOdzY2enNqN1RhM3g5bGorUGdFdXlzQWZDQ21nY1E2akxLakVNZW83bUpwOGdQTk40WW1iU1lPSzZwNlZmUWtlWE9OdFJVZHpiWEVxR1N1SlovNFFvN3ZUb3hrakJwNFJLVytCSFphTExpOG1EOW1QSldmYSt5blZpMzFuY25YdUFuUjlIMFNnY1JaWmNnQ2U5MHhOYm11RFNHdlNYL0dkbTFJdE95TGJ4c1I3QlRPajYyWUlQcmtjd090N2ltM1dkTjlDT3pGWWRFK2hodnpid0d3ZXVTQ3ZOTitiK0JKdjVnU0VrWGJXRGVodFNxQlBXYm03bDlIQXZzaUpoTFk0OVpQSHhzSmNUMVRMUkVRQVJGb2tZQUU5aGJocW1rUkVJRmVDUEM5dHEwOVNocVQzSXRSV1FkWnorUWNTWlA2RU5obm9Pbnp6U1NNVDQwZ2Y1VGRVR0MwYlV6cFFyQ0w2VWNUTVh3c0FudklLb2E1QkhneUk4V09JSVp0akxqZTFyMWorc2M2ZlFqc3k1cG42aUtiMUt6WVR4NTFmcFpOZFBhUzBnRDRYdG5hbmthSUhWdk9lbDA4cjNVajJIT09NN2F0Tm9TODJIdFBvVjVJdE95TGIyNkJuVllxUEFGQml5ZFhvY1hGczgxeno0M09wbVhQQ3N1dkxtMFVlTktQbTdyY05JMFIybzh4ZVRlWVp5TG11NE1FOXFhclpEalhTMkJmTkJjUzJPUFdwQVQyT0U2cUpRSWlNREVDRXRnbk5xRWFqZ2pNT1FFSzZ2U3dmbGtrQjBaak1mTDdzc2o2TWRYNkZOalpQd29FVE03R3FEUmYrYXo5UVowU0JkMkZZQmZEZHg0RWRuS2dxSHN1Z0UwOVVISkhrZlA3QURlYWFLZVVjOTNFekdsS25UNEVkaVpHcG05cytUdlR6R3VkRzFybk8vN2VaeFI3RjgrckJQYVVsVHZ1dXZNaXNOTSs1VXB6S292V2E2NUNXeXh1cHYweHczUldQYU5kQ3V5em9jUW1ULytKL1Z6NllRUURDZXdSa0VaU1JRTDdvb21Td0I2M1lDV3d4M0ZTTFJFUWdZa1JrTUErc1FuVmNFUmdUZ253WGNhb01rWnZyeGpKNEdxVGxHeVhRaktseU11QzFmb1cyR2NkM01KNHJYN2F3YU91ajNjWGdsMFFMb0I1RWRqSllrTWJPZTFMNmxVbjZaeUxNZk1USE9LeFFKblZ2eHpBRGdDYTVDZUltZDlRbmE0RjlxcUlWbTVpMFRyR0YrSE9DRTh5T3pNMHFCYis3bnBlMlorenpla0hKbVpNS1NzQmVMNWpBMEVDZXdyRmNkZWRGNEdkZGsvY0xQTVYyc2ZRVHE1cDRYZVdFKzEzRUZkYmZRanM3RWNvLzhhc3I3VEl1U0FDZ2dUMkNFZ2pxVEpVZ1owSlVabTNKbmVoaFJJL3Y1Y3FOU3lCUFk2MEJQWTRUcW9sQWlJd01RSVMyQ2Myb1JxT0NNd2hnUldzWDJwS2trOUc2Ujdha2oveVVBUjJMZ1dYRC8ycks0NmxWeTBmQ2V6OVBGeFZmdXkwSWVFbUVSUHR4UnpYZDQyQVB5S1pKSmNKNzN5RmRnajBFLzlaUHdnVzNMVnJnWjAyTDY3b2RHNVU4WFRCZGJaMys5clRNMlZFOUNybVp0Y2RIYk56UGE5MVJUdmZEK1c2QXZ1OUxXN1VMQTJBR3dMbDBwZUZTY2ZUM3RydDVrVmdyN0p0WWRUNk0yMkVlMVBRREFTZ1VMZU9wNkc2ejJyVGZ2RjZiaXJ5TTRXSkhIMGw5bm1Td0o1alJvYlJ4bEFGOXREblVGMTZQdnNwQ2V4eFJDV3d4M0ZTTFJFUWdZa1JrTUErc1FuVmNFUmdEZ25FUmx3UnphOEE3QXJnTXcwRXlSRGlJUW5zN0N2OVZTbit2YzhtcnF6cjNTMkJQVFR6N2Z3OXRMNHBzdTlodmNsVFJYWjY5cDhHWVAyS3JnOUpYR2MzdXhUWUgyVFkwT1psTXdlZlV3RHNWckNLV00xYVRhM3BxTXRrdmR6UVM1MmZKaXRxeUFKN3JEaFhaL3krSC9WdDNyTk9QOGQyemJ3STdGM1p0dmcyN21icm9rK0JuWDNnOXlSRzJQdksyKzJwcDlBNmxzQWVJalNldjB0Z1h6UlhFdGpqMXF3RTlqaE9xaVVDSWpBeEFoTFlKemFoR280SXpDa0JXbHd3OGRZcks4WlAzL0dYQTdpMVpVWkRFOWhudzMyc1NXcEt6L1c2VWNnKzRZSGUxUHUzekxUWVBCUFIzZ1dnVGtMYXNTUTVMZVBrK240SGdOZFdjT2JZM3B2QXhXY2hWTHpGeFFCMmJqSGF1TTZ5NlZKZ1oxVC9DWTVPVWlpblJjS0ZwYi81MWxmT3hJaXh6SElLN055SU9kQkd0aGJ2VHcvNjR5czYxSWZZM2NjOVkrZGt6UFVrc0FPNVJHOG1zZVo3cFp3WXViZytjdDJyN3BvTENlTjg3bDhSMFhpb25UWTJ2a0pyOVhrMnYwbEU5MVdsUUVBQyt5SVlFdGpqSGdzSjdIR2NWRXNFUkdCaUJDU3dUMnhDTlJ3Um1HTUNhMWdmeHJWS0RQNWdJNjNlYi83TC83dnRNbFNCdmVtNGZlSmhXOGR6bS9iWGRmMVlCWGFPSldZVDZVaTcxbjliQVM4bUNTNHY1OFlKQlpTVVJMaHR6Rm01emE0RWRvckszSlI3dEdOUXZoL1lWVkhzTndIWUVzQ1B1b0Ewa0h0d3pUSlo1QktsL3Z3YXdHOWE2bU1mOTJ4cEtJTnFOaVJhdGlHVXhnRHcyVGpNcmswVncwSW50V2paMVRTbkF0OEQzSndyUHhmRjhRNWRZSStkYnduc01hdDRISFVrc0MrYXA5UjNTbmwyK3hDZSsvaGQwc2M0eC9Fa3FaY2lJQUtUSmlDQmZkTFRxOEdKd053UktDZUYvTG85NnZ6dERrbjA4VVcyaStGSllPK0NjdlU5S0k0ZmJTMWhmRFdyVG1yUTcvY2tBT3NGaHNKSStIL3ZhRU1xbFdvWEFqdEYyby9ZRXkvbC9vVVNseklKNHJHZVFYM1VKQml0YTlHVXltbmU2dE1LaStJbnhmdVk1SXZ6eHFmcGVPZEZZQTlaby9DazNINE43SjU4Z1FEbCtVa1IySm1Fa2NFRE9TMm9YZ2pnaklwRnc5TTkvQ3dKRlFuc0lVTGorYnNFOWtWekpZRTliczFLWUkvanBGb2lJQUlUSXlDQmZXSVRxdUdJZ0FqOHhVYmpjT3Q1VERHeUtwcTNEVndTMk51Z21xZk5NVWV3endqRWlPemxYQU84aHFJUXZjQXBIdnRLRXovM1BETVVicVVMZ2IxS0pBLzl1R2JTWlFxOEczaUd3alg0N3N4aVdKamFJanVLbzZ5TkVPMGRhTE0waEVKZS9OOTNHM1NHRzBlZnNNenZCTEE1QUNhWFZjbEhZRjRFOWsxTXpvWEx6YnVTTmk2dVF1R2I5bHEwUjBvdHkxclIrbGtSRjZZSTdQek93eE0zaDlnOE14SE5WMWJoWndURmMxL2krSlMrU1dCdk9odkR1VjRDKzZLNUNIMEhDTTFZSDhKekg3OUwraGhuaUwzK0xnSWlJQUt0RTVEQTNqcGkzVUFFUktCakF2eHh5Qit5RkZyNktIMThrZTFpbklwZzc0SnkzRDI0eGo5Zy9QUXBCRmNWSmpCbE1zNTNHYy9meHdUcTNtSWpnTDhTMTRYZWFyVXRzSmRQd1JRSEd1dWxYbVVCd1UyTVhRQ2MycUhJemcyV3N3QnNWUmpNbHdBd1VTR3RLbUt0czVqSGdTTGV6NDNGeStzYTlKL2ZQZGNHUUpzSkpvcTkwZHJucE9iSG9EMElrOGVXbndPZTRtQTArOURzalhwN2FETGNlRjRFOWxYTld2d2lBRWFhKzBvZHU2ZVloTkxGKzZXSTJMUFBabTZzTWxmQ3lRMENDL2hzN2dUZ1V4VVdOdHhjNExzazV2bVN3SjdoNFJ0SUV4TFlGMDJFQlBhNEJTbUJQWTZUYW9tQUNFeU1nQVQyaVUyb2hpTUNJdEE3Z2FrSzdCU3gzdUNnUzYvdWczcW5IdGVCS1VTd3owWktrWjNqZVd2YzBDdHJuUU5nendZSmNETjBJYnFKTmdYMmtIM0RjZllrd0I4RHZXWDBLMC9QK0RaQUtMSlR4S3F5WUlnR0VsSHhxU2FxKzNOR1VLZVZSTEZ3dzREUjNsZFh0TUh2aWR4MDREcmp4Z0ZMaXZoWGJ2cnBaZ09VdVFMS0VmNDhYVUd4UE5ibUlzUzRyNU1DRWRNeHlpcnpJckJ6dmZQWnBaVlRWZUVHUGpmS0xnMnMyUWZhZDhaaHBkTkRmQWZ3cE11Mm5wdWtQR1BsenpXZTJxTk5GZlBPY09NMHRqekVudjdiTjNBQk44Vk9qR3hVQW5za3FCRlVrOEMrYUpJa3NNY3RWZ25zY1p4VVN3UkVZR0lFSkxCUGJFSTFIQkVRZ2Q0SlRGVmc3eDFzaGc1TVNXQW5EbjZHNzJDUDgxZFp2L2pRZFowQU9NTVVvaTJCUFdUZjhBTUF0SGE0T1hJUWo3QkpseC9ucVUvMnRHMXBtakF4MUowcXdmQWlBTnRYUkx2UzEveERBRjdsdUFsUFJsQm9DMjAybEMrbGQvTUpqdmJxV0x1c0RPQXlBT3M2Mm10aTVSRmlPbzkvbnhlQm5YUHIyNUJ5emZ2M0FYd2N3RlVBdm1NclBBakEwd0E4RDhBTFBKSGd6TWZBNTQ4YjFLN1NSR0F2dG5lSDNRVGdjL0l0aCtET3hNenIyOCtSelFLSlY5bnVKUURveng2YnBGZ0MrM1RlRmhMWUY4MmxCUGE0TlMyQlBZNlRhb21BQ0V5TWdBVDJpVTJvaGlNQ0l0QTdBUW5zdlUrQnR3TlRFOWhuQTZYZHhua0FIcDJBdm84RXdBbmQ4MVp0UTJDbnVQNHhLeks1Ymx3MzRyektLb2Izb2NqT3BJb1UyV0lqdDFNWlBzcHNERndCZ05ZWDViS3p0UkNxYW5OVEs5QzVvdCtmYmR0TzZSUEZSNjVWaW5ubFFoOTFpdm14bGpXOG5pSW03VytXY0xUSGNmTjlIR05sa1RLR2VhdzdUd0k3Znh2eGxNVUJMVTMwekJMcFNRQjRlc2hWY2duc09ZZFF4eHBIQW52T0dlaTNyVFlGZGdZSTBQS0w5K0FHRjcvTDdHMyt4dzJpV2ZHdHBVOEMyTDBGTk93UHJkUldMN1V0Z1QwT3RnVDJPRTZxSlFJaU1ERUNFdGduTnFFYWpnaUlRTzhFSkxEM1BnWGVEa3hOWU9kbitCTUFIR0YrQ0c2ZGlKM0N6cjhEdUtGRmNUZXhTMUhWY3d2c3RIQ2c5UXNqcTMyRjBhYTBqRWdSZnRrVzUrZGdPeisrdGluZTAyTHBnd0R1aXlLUVZ1bk5abjdmNUxpRVNVQ1pyTEVvWUxoYXJrcDRTS0djVmplcGlhUzVWcyszZklyM2pQVzRMMTRUc29xaHJkVTdSN2JHMDJhNG05cnpKTENUYU9oRVMxM3FQQW16blgzdlZqRWRtc0JPcXhsdVpuRmpOcVZJWUUraE5leTZPUVQybjlwVFV3K3pKeWRvR2Zaa2s0RDdvYVdodTBSc0NlejExMGNmdjBza3NOZWZMMTBwQWlJd1lnSVMyRWM4ZWVxNkNJakFJQW4wOFVWMmtDQUcyQ21LYlljNyt2VmprK3h4WStORGZ0c0ErK3pxRWtYaEhZMDl4eHNqa3BlR2hzU2twdlRYVGtsMkdXcXp6Yi9uRk5oRGtlc2NSOU9FbVJTb2p3SHd5Z0FVUm0vVCsvamVqUEJvLzBCcmlEVWRiZTVuUmYyWTIvbWkyTGs1UUxHY3RoRXBoVWxYbWVTVlFtTzUxQkh0cSt4NFpCV1RNalArdXZNbXNKTUUxeFZQUjlCQ0pVY3BpdXRzYnl3Q2U1TWNIUkxZYzZ5Y1liUVJLN0JUVzFqZWZqOTVUYzJ1UzJDdkNjNXpXUisvU3lTdzU1MUR0U1lDSWpBU0FoTFlSekpSNnFZSWlNQm9DUFR4UlhZMGNIcnNLRC92bUppTmllbktaUXdDTzRWYUpwdWtxSjRhclI2RG5WSElQR3BOTWZqYkxVVlR4L1FqVkNlWHdMNktGWGtwSHZ2S0wyMlU5LytFT2hYNGUydzA3RmZ0eGttc3ozdW9XNzRURzkrejQ0cE5nTmhHRkx2UFBvZFdPY3dya09wTi8ySUFKenVpNHNsSVZqR2hsUkwrK3p3SzdLVEN4SjlNZXZxeU1LTEtHcWZacE1kM0YycmxFdGk1OXYvVG5KVGh4bFhPOG5Ocms4UE5zTHFuYXlTdzU1eVJmdHR5elNVL0l4bTRRQ3N5UnFJLzBYeUhXQ2xETitkUllPZDNNT1pFK1dZR2Z1VW0rSG5MNzA2dVFudWQxRTN5bUM1eUxYQ0RzdnhlU2ptZEUzTWYxUkVCRVJDQlFSR1F3RDZvNlZCblJFQUVKa0JBQXZzd0o1RkhrajluUEtkZFNTZUhLckRQUkhWR0d6T3hYR29pVXliZ282MkpMOUdtYjZiNG8vblRBQmhWZlcwTmE1UTJWMEFPZ1oyZTlSUndxN2p3UnlEdFR6NlRhVEJyMkIreGF3WGE0MzBaN1U3K2RVVXQzcUxLZS8wdHBnS3RZMUpLbFNDK2pUMEJrZEplVlJUN05RQzJTdlJPcjlvRVlMOWVCK0M5S1IxVTNRVUU1bFZnSndUK1Z1TG01dnZ0U2FlVXBjRVRRbHg3M09RcDUxbklKYkN6UDF6LzNIaWwyTW5UV0UwS2ZhZmZudWxVa3dUMkpqUFI3N1hNbDdHYzJZaGVCd0JQUTNGOXZjaXppWm03cC9Nb3NPZG1PTlQySkxBUGRXYlVMeEVRZ1N3RUpMQm53YWhHUkVBRVJPQ3ZCQ1N3RDNNeDdBWGdXRS9YaGlTd005cjVPUUJlQVlCSkpGM0pHME9FbVVUdjMyd3lTZGFsRlFmRnhjZUVMblQ4blRZZy9MRkx3ZmRTQUl5dWJpTDgxdWpDZ2t1YUN1ejBIZWRZVnF6b1NOMmtwcUd4cFNTanBTMERmZDl2RFRYcStEdS8yeDFtVHp1VS8vd1RZM3ZEcVAwZkpyWkxRWnpSYUJTK3krVWlHM21YNnNWZWxRUjJOM3ZpSktXYjY5cE5OTmZjM21uK3RyazVJVUR2ZVJVUnFFdUFHN1Y4bnpKQk1JVkhKa0lzRmtaOU13S1ZFZXZNTXhCN1NxUnVmMXpYTFcwamlibmVuMllqaTNsaXg3VkJTMXMwZnY3eEdiN2NKblg4WGM3T3FLMVJFdUFhT2dNQU4wLzdLQkxZKzZEZXpUMGxzSGZEV1hjUkFSSG9pWUFFOXA3QTY3WWlJQUtUSlNDQmZWaFR5ODg1emdudEk1YnhkTTMxWTY2clVmQ0hMSTlXODVnL3JURWUzdURHakR4OExRQkdBSmRGY0lvcmpENWpRdFRWRzl5RDRqT3RUT2paVGtHR1NlOFk4ZDVWcVN1d2MveTBUS0hmZkZYaCtBNndWam5saU5NY1kxelB6RGZGYzBZRWhncFBIOUFTaUJZVktlSTFQZGUvNEJEL2VMODYwZXV6ZnZxU2s3Ymh4YzdJMytjQ3VDc0VxZlIzbnkwT3ExSDAzSFZnSnpJU2g2ZnFJaUFDSXRBSkFWL09tdHczNXdZUHY3dndleGkvVzN6WDg1M0NkeHFDbS81dFdKd3cxdzIva3kxVkduRFQ3NHVoVXgyNStRNnRQUW5zUTVzUjlVY0VSQ0FyQVFuc1dYR3FNUkVRQVJHb1RGejJQQURuaWxFU0FRckNqQmI4R29BNzdKV011dnRXb1pWZk9YekRlYnlaMFhzdnQ1R3JWVGM5M2thTUozV3NabVgyaTBuekdMMUx3ZnV4TmR1WlhVWng4emdBNzR5TWxueUFQZXI5TmdBVWUzTVU5b0VKL0NqcVhtWG5oajk2S1k3bWpuYXZJN0F6V1NIdGJwNFZNVmphT2J6UFllY1FjV2wwbFpSSWRqYWE0b1hNNzNWSDJrMkNjb2ZxUnEvUDJ1SHBDa2E2YnVRWWFWM3gyaWZhOHhaMW90aFhNUDI3d0ZqN2JPRG9JemRNK0M3aENRWVZFUkFCRVJBQlB3R2VvTHM0b3lVTVA4ZjQvWUQvKzdMOW5zQ2NCTEViMlVNUnBpV3dOM3RxSkxBMzQ2ZXJSVUFFQms1QUF2dkFKMGpkRXdFUkdCMEJSYkRubmJJOXJZQ2N0OVdGclQzZlJoWG52Z2VqcGg5cGhYNnVDOXFUUERUVFRSZzVUdHNYMm5iY1c2Tk5mdjVUNkdYRTcwdHJXdEhFM0paUjJEK3pVV2tVNFpsZ2svOWxSRFk5OFZQN25pS3djek9CSndNK1duRjZZVGFHdGlQWHk2d28rblB1dU5rU1d4anB4L25pMFgxeWRaVXFFYUpKOVByc1hsd3JKemh1L0h1N2tYVjE3R0JzdlNycm1icFI3TnpJSkZ1WHZSSXRZdmdjempickVydXI2aUlnQWlJd0Z3UldOWUVBWHpRSmRKay9KS1UwRmRKOTk1TEFuaklMdzYwcmdYMjRjNk9laVlBSVpDQWdnVDBEUkRVaEFpSWdBZ1VDRXRqekxvZE5yQlhKa25tYi9XdHJ1UVEzUnFaVFRIK0c2ZTlteHErYy9XNWk5K0lhTG4rNGZzUllmM3c0TWxvOUZobVBRdTlvZmR1YlJ0VEgzcE9pTnozR2ZVS3hyNTFZZ1owQzlqSG01QVBGMWxCaEgyZ2RjbnBDTkYyb3paaS9MMi9GZnlhd1RTbE10c2hJZTVjTjBFbDJMc3Z0Y1dPRHduSlRUK2lxWk1HbjJLanpQNllNQnNCTHJJV1Q2ekpHbkxQZGxCSktlTXJURzRkMlBOY3AvVmRkRVJBQkVlaWJRTWlIL1JmMlpDRkZlUDZQcHdxNWNabjcxTnFNdzlRRmRrYnluMjFQclBVOTl6bnV2eElBQnErVXRTWUo3RG5vcWcwUkVJSEJFcERBUHRpcFVjZEVRQVJHU2tBQ2U5NkpvMUJLZjA1R1U3VlI2dGhRbFB2QkNDOTZnSzdWUWdmcGIwNVIrVU5HQkw2cEExR1EzdUFVTlY5Vk15bHFEQUtPZ3hZNVA0cXBYS29URXRnWnRjNitIK1ZKNmxlK0paTmZNc3I5c2hwOXlYRkpyRGY4N0Y1Vkd4TlZrZHRNZWt1N3BSemx6V1lkdnNuUkVOY3FFNmhlbDNpVEt1c1ppdXU3QTJDRWZFcXBFbU5vQVVSLzRmOUxhVkIxUlVBRVJHRE9DTXp5bHRDaWp4WndQS0YwTFFEYTlLVnVqamRGTjNXQmZXckNzMisrcGpiT3B1dGExNHVBQ0V5TWdBVDJpVTJvaGlNQ0l0QTdBUW5zZWFmZ3dRRE90eEhoZVZ0ZTVGMitmNllmaWxYaVptcS9md3JnUkpNSWs5N3dYWWpxdnY0eFduazdZL0d5VjZLVlNkVjQ2eWJFbkxVWkV0aFpMM2JEZ3duVkdMbFB2L2krQzZQTDZRMitZa1ZIUG10OSsrOXgxS255SHIvUjJyZmNubW1RanpkKzlsY0FXSzdVSGdXWFhleEpnTlJiN1d1VHVjNnU0NmJhYTZ4WGI2eEhiL0dlL0g1N21FMFNPL3QzSnBkOXZkbEErazVxNTFSZkJFUkFCRVNnVndJK3dYWm1RNWU3Y3p3MStmZU9SdHZ5WUorYThDeUJQZmVLVkhzaUlBS2pJQ0NCZlJUVHBFNktnQWlNaUlBRTlyeVR4YzhwaXMwVTduSVYvaUE3eEFpRXROcklGWVhsRXZSaSswdlJtVC9hYU85eEhvQmNRbWpzL1dQcThiajRFNjNBeTRqdlZGL1cyVDJhMm5QRUNPeThWMGhrWjlKVGlycXBIdkF4ck9yV1djV2VWTmplMFVBbzZwOUhzZWs3N3ZwZTkrck1lUXdvUE5DSG5kWXVMTFF1K25kcjVWS1hKemR6dUlId1hTdUszNURodEFaUFkvQmtBcG53Vk1QbEdkcXNPN2U2VGdSRVFBUkVvRDRCbjJEN1NYdktxWDdMN2lzcHJuT2pkL1hTbnlXd3g1R1d3QjdIU2JWRVFBUW1Sa0FDKzhRbVZNTVJBUkhvbllBRTl2eFQ4QUVBKzJWb2xoWVdId2Z3SG52RU9VT1RDNXFvaWlJdTM0dmU3L1RiL0pRVkZYTUovYm5INUd0dkpyaHZEdUE1MW51ZWRpZFZwVzdTeW1LYnNRSTdyOWtRd0VXbFNHdEdpZTFobzhYclJFYTN6WmZmeTNheVh2c1BzVGZqdXQzS1JuTlgzWi9yajJJNjdVK1lQSlFsQjNQWFBiYzIvMGlybUxjQ3VEQ1Q3eTdYMU84eUErWkdDMzJCbVZSWFJRUkVRQVJFWUp3RUpMQ1BhOTRrc0k5cnZ0UmJFUkNCVEFRa3NHY0NxV1pFUUFSRXdCS1F3SjUvS1RDQktLMWlXUGgvcndzZ051a3BmWmEvQ1lDMkdoUXEyeTcwb0w0VXdGS0ZHekZDblhZa0ZDTFBCZkNOakpIemJZOG5wWDNPelRyV1RvYUpYaWx3TS9wckNldWgvV3hyTFpMU1pybHVpc0RPYTE5aytuU3E3UVA5WTNrU1lnaVdNQ0VHRk5jUE54dEJlMXBQL0ROQ0Z4VCtUbkdkUHZxMFNLRUYwcGtKMTZxcUNJaUFDSWlBQ0F5TndGUUVkZ1lpTU1FNXZ4Y1ZDNzhuM2oyaDc0YnpNczZoUFNmcWp3aUlRTThFSkxEM1BBRzZ2UWlJd09RSVVFUmtsTFNyL0lzVlh5YzNhQTNvcndUNHVVcTdqQ2RiTWYxS0sramVOOGVNS0x6L3JmM3gyRFJxbk5Ibkc1VllNanI1U0k5d3p2bll4OVkvTmxPa2RaZFQrVURqRzg2bys2YmN1dXl6N2lVQ0lpQUNJaUFDT1FrODBnUktIRmc0blRWcit4cWJyeWJudmRnV2M0d3dPVGpGOEdLaFhkdlJMWnkyeXQxL3RTY0NJaUFDSXRBREFRbnNQVURYTFVWQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJNWlBRQUw3K09mdy83ZGpCeVVBQUFBSXhQcTNOc1loTElFNGYycEFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQW9HQWd6MUFGMG1BQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQy93SU85djhOTlNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQ0JRTURCSHFDTEpFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBSUYvQVFmNy80WWFFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0VBZzRHQVAwRVVTSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQXdMK0FnLzEvUXcwSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFJQkJ3c0Fmb0lna1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRURnWDhEQi9yK2hCZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNBUUNEallBM1NSQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlQQXY0R0QvMzFBREFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQWdFSE93QnVrZ0NCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRK0Jkd3NQOXZxQUVCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUJBSU85Z0JkSkFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBajhDempZL3pmVWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FDQVFkN2dDNlNBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQlA0RkhPei9HMnBBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFvR0FnejFBRjBtQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUMvd0lPOXY4Tk5TQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUNCUU1EQkhxQ0xKRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUlGL0FRZjcvNFlhRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdFQWc0R0FQMEVVU0lFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0F3TCtBZy8xL1F3MElFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBSUJCd3NBZm9JZ2tRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVEZ1gyQnpPTW1tZkR3L1VBQUFBQUJKUlU1RXJrSmdnZz09Ii8+PC9zd2l0Y2g+PC9nPjwvZz48L2c+PGcgZGF0YS1jZWxsLWlkPSJobWkiPjxnPjxyZWN0IHg9IjU1MyIgeT0iMTEzIiB3aWR0aD0iNDAwIiBoZWlnaHQ9Ijk1IiBmaWxsPSIjZWFmMmY4IiBzdHJva2U9IiMzMzU1NmYiIHN0cm9rZS13aWR0aD0iMiIgcG9pbnRlci1ldmVudHM9ImFsbCIgc3R5bGU9ImZpbGw6IGxpZ2h0LWRhcmsocmdiKDIzNCwgMjQyLCAyNDgpLCByZ2IoMjQsIDMxLCAzNikpOyBzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDUxLCA4NSwgMTExKSwgcmdiKDE0NCwgMTczLCAxOTUpKTsiLz48L2c+PGc+PGc+PHN3aXRjaD48Zm9yZWlnbk9iamVjdCBzdHlsZT0ib3ZlcmZsb3c6IHZpc2libGU7IHRleHQtYWxpZ246IGxlZnQ7IiBwb2ludGVyLWV2ZW50cz0ibm9uZSIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgcmVxdWlyZWRGZWF0dXJlcz0iaHR0cDovL3d3dy53My5vcmcvVFIvU1ZHMTEvZmVhdHVyZSNFeHRlbnNpYmlsaXR5Ij48ZGl2IHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiBzdHlsZT0iZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IHVuc2FmZSBjZW50ZXI7IGp1c3RpZnktY29udGVudDogdW5zYWZlIGNlbnRlcjsgd2lkdGg6IDM3NHB4OyBoZWlnaHQ6IDFweDsgcGFkZGluZy10b3A6IDE2MXB4OyBtYXJnaW4tbGVmdDogNTY2cHg7Ij48ZGl2IHN0eWxlPSJib3gtc2l6aW5nOiBib3JkZXItYm94OyBmb250LXNpemU6IDA7IHRleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICMwMDAwMDA7ICI+PGRpdiBzdHlsZT0iZGlzcGxheTogaW5saW5lLWJsb2NrOyBmb250LXNpemU6IDIwcHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtNaWNyb3NvZnQgWWFIZWkmcXVvdDs7IGNvbG9yOiBsaWdodC1kYXJrKCMwMDAwMDAsICNmZmZmZmYpOyBsaW5lLWhlaWdodDogMS4yOyBwb2ludGVyLWV2ZW50czogYWxsOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3b3JkLXdyYXA6IG5vcm1hbDsgIj5ITUkgLyDnu7TmiqTkvJror508YnIgLz7mnYPpmZAgwrcg5Y2g55So54q25oCBIMK3IOWuoeiuoTwvZGl2PjwvZGl2PjwvZGl2PjwvZm9yZWlnbk9iamVjdD48aW1hZ2UgeD0iNTY2IiB5PSIxMzcuNSIgd2lkdGg9IjM3NCIgaGVpZ2h0PSI1MyIgeGxpbms6aHJlZj0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUJkZ0FBQURVQ0FZQUFBQ1B0VUhVQUFBQUFYTlNSMElBcnM0YzZRQUFJQUJKUkVGVWVGN3R2UWZZUFVWOTluKy9hbmd0d1lMOUwzWkpVRXpFUkxFTGlvZ2lzWXVLb2w1aVJ5VFlZb3N0Tm9JVjdFWmpncjFBVkFRVUM0cUtqY1NPaVEyakJpdUtKZm9pNkg5dmZuTmszV2RuZDNaM2RzK2VjejV6WGU5TC9EMnpVejR6cDkzem5mdjdmMFNCQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VDZ000SC8wL2tKSG9BQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFFQUk3R3dDQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0VBUEFnanNQYUR4Q0FRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQWdaMDlBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaERvUVFDQnZRYzBIb0VBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJSUxDekJ5QUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNQUWdnc1BlQXhpTVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUVIyOWdBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQW9BY0JCUFllMEhnRUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlJREF6aDZBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ1BRZ2dNRGVBeHFQUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRUTJOa0RFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBSUVlQkJEWWUwRGpFUWhBQUFJUWdBQUVJQUFCQ0pRSTNFblNMU1VkS2VuYmtuNC9FcDAvbGZRZ1NSK1U5QlZKNTNib3g5LzcvMXpTZHlUOXFzTnpZMWIxbUhhUXRGMmxrOTlKT2xQU2I4ZnN2S0Z0ait1dWt2NVgwdkZMR2dQZFFnQUNFSUFBQkNBQUFRaXNDQUVFOWhWWktJWUpBUWhBQUFJUWdBQUVJREJMQWhlUmRJeWt2Y1BvdmlIcEZaSmVMK2tubVVkOEcwbnZsK1R2OEwrVzlLK2huMU5ieE9nZEN5SDdDRWwza2ZRYVNRY3RVYnd1SS9HQndiR1NkcTl3c3JEdEF3dlBhK3BTWnZXenNLNmZubm9RTStudlR5UTlVdEsxRzhaem5LUi9tOGw0VTRiaHd4d2YzSXgxQ0pZeUJ1cEFBQUlRZ0FBRUlMQm1CQkRZMTJ4Qm1RNEVJQUFCQ0VBQUFoQ0F3S1FFYmlMcHBKb29iQS9peFpJT3pUUWFmMjkzaEx6RjhXcjVYakdHUFNSOXZmS0hDMHE2WnhEVkwxcjYyd0dTM3BCcFhFT2FtWlBBYmxabSszeEpGcFlYNVd1UzlnbzNFNGJNZFJXZmZWZzRMSXFOL2N1U2JpM3BoeXN5T2I5VzN4WFcrSEJFOWhWWk5ZWUpBUWhBQUFJUVdBRUNDT3dyc0VnTUVRSVFnQUFFSUFBQkNFQmdsZ1NhUkcvYm5OeE8wb21aUm41MVNTY1hZdm1WYXRwN1dSRXRmM0JGTUxTZy9rWkpkNjZwUDVmSTdMa0k3RTJzak0rV1BIY3JEa3ZPeXJTV3E5RE1icExlVnh3U1hiSmhzRStWOUt3VkVLcjlPcjE3ZUQwc0RrOGVLK21GS3pEMlBudkZyNnZ0aTRNRS8zZVg0bUR1MHBMK092ejM0c1ZCM0gxSHVGM1RaNXc4QXdFSVFBQUNFRmdiQWdqc2E3T1VUQVFDRUlBQUJDQUFBUWhBWUdJQ1RhSzN4VWxic3RqS0pVZXhWWWNqMkt2bDdCQzlma3JOM3l3S3YwM1NCV3IrWnJIK2I1WXNHczlGWURlZUpsYisreXZESWNZNU9SWno1bTFjTlJ3TTdkUXl6dHlIU0dOZzhjMkV4MGc2ck5LNHgzNklKQjlPemRrdXBweW5ZQ0dZWDZpd2g3cEdjUXZsV3BJdVVkZ3MzU0RjdXJoQzVmWkZIYzlsMmkrTnNiNjBDUUVJUUFBQ0VKZ0ZBUVQyV1N3RGc0QUFCQ0FBQVFoQUFBSVFXRUVDTWRIYmd0MCtrazdJTkNlTGFCYnNiMVRUM2xzazJmS2xUdmoxZC8wWEJTR3hiaWpMRm8zbkpMQ2IxVE1MamsrSnJKa0YyZjBrdlRQVG1zNjFHZTgxejNIUHhBSE8yVUxIMGVyUERRSjczWFM4cHZ1SFE2aXhSUFlMUzdwVXFmTXJTN3BLK04vL043eW1YY2NIQVk0eWQ5SmZINGhkTVhJd2xyZ3NqZFZzL2ZPcUhBM1JCZ1FnQUFFSVFBQUMyd2dnc0xNVElBQUJDRUFBQXVNUk9EQWlpTGxIUjdWYStEcDl2TzZqTGU5YWVPWStvcUZmSjJ3OHZ1ZTRMQlRZcXFJdDh0SE5ueWJwcFROSnR0ZzAzVHRLMmplQng2Y2t2VGFoWHF6S1hQZkxnQ24xZnJTSitjY2wvVXZ2bHZNOTJDUjZmeVRzbVY5bTZzNVdNMDRtV2YzdTd1aDFKejUxTkhxc2VKenZLV3hPYmxGVFlkbWk4WndFZHVOcEU1Zm5ZcTJUYVZ0dGFjYUN0Q082SDl5eGc3bGE2UGoxWWwvOWx6U0kxWDFlQTdjUHQxUEtvdmdDbWZkMFdWRHZpSEtTNms3QS9NQ1pSKzVQQW9KT0lBQUJDRUFBQXJrSUlMRG5Ja2s3RUlBQUJDQUFnYTBFTEFMZUx3Sm1tZGUwYlF2eDdvWUZlMExOZGZyVTlZMEpablhQTjFsYnBQWTNkcjBtRWJYYTk3OUt1ditBQWMxMXZ3eVlVcTlIbTVqbmpnenZOY0R3VUV6MDloanQ5M3owa01aTHoxcjB0SmY2UFdyYU96WkVWYmZaMERqeS9VT1N5b2xPRjgwdE13SjViZ0s3bWJSNWo4OVZUQjY2M2Z5NzhIRXQ3LzIrSldGN2tycnltaUJtLzNib1FESS9uekt2cmlLN0Q3WGV2OExCYWwrUnRMdWtIMmRtVFhNUWdBQUVJQUNCalNXQXdMNnhTOC9FSVFBQkNFQmdBZ0p6RlV6bklyQjdDZXFTTTA2d05NbGR4RVRVdWdZUTJKT3hObFpzWXU1YkFuc3YyVGZjZzdmSWVKU2tlOVhNSlBjWWIxSjRySjhrYWJ0S1gxME9HL3lkM3dkbno0bVFYNVpWekJ3RmRpT3laL2Z6RzNhcEk2SVBYYU1JWU84UDI5KzhxU0hTMndjTEQ1RmtTNkliTnV5alI4M3dWcElqelIvZnNQODlIUjk2bThGN0U5N0dkaXdTR0g4eWtuQTQ0ZkdsVjFubUFmL1NKODhBSUFBQkNFQUFBbU1RUUdBZmd5cHRRZ0FDRUlBQUJMWVJRR0J2M3duZkM5WVYzMnF2T25tTml3UnYzaFI3R0E4T2dYMzRFalVKMTI3ZDlrTzJGVnAyc1ZmeVJ5TVI0ZmNPSW1TT01mcTd1aE9iMnVhaVdyb21VVzJ6aXZIQnhvazVCdDJoamJrSzdHMnYvYmRMZW5peEgzL1NZYTV6cnRxVzROVVdSQmFmdjU4UTRmOTNrZzZmNGVGRGl2Mk5MWUR1SU9rVExZdGxLelQ3MUR2UHdwektHU0VYdzM4VnQrZStLY256K2ZmaVpzS3ZKSDJoT0dUN2phUXpaM2dBTWllR2pBVUNFSUFBQkNEUWl3QUNleTlzUEFRQkNFQUFBaEJJSW9EQW5vUnBOcUpwZGJTeHlPSFlyQkRZMDlhN3FkYTFDMC94ajRWRWY5VjZjem1NYVJLOWMwZXZYemY0cTEreUFxTkw5SHI1VWZ1d2Y2QW1HdDUxUGlQSjN0SlRpc1p6RmRqTlk1ZHdjK0F5SllBL0wwUm1KNGg4bTZSemgyLzNXYlJndXhNZkdGVDMyR0p3ZFJaQzk1VDA1Z2FMbE1kS2V1RUtpK3krSmZQcGx0VjVrcVJuVDdTQ3B3YWgvSE5GL3BRZlN2cC9RVEMzemRvdkpPWEs5VERSZE9nR0FoQ0FBQVFnc0g0RUVOalhiMDJaRVFRZ0FBRUl6SWNBQW52YVd1UVdKZE42YmE3VkpLSWlzT2NnWE4vR0kwUEVkdDFmNTJJbmRLMFF2WDdGbWtIbWpsNS9aaEdSK3BTYWZ2b21VZlcrZG5MbFEycmFkS1Q4RTBPMDYzZ3IvTWN0ejFsZzkwZ3RwcjhpRE5uSm41MGMybEhjNjFKdUdpeFJZdUo2TEtscld6UzRQYzI5eC95YTlXSFFuRXBiSWx1UDFkN2tQbXo2Yk1QQS9YY25IcTRXUjRzN1N0ekZmdlJ1NDZ6d3Z4Y1I1ZmF5ZC9scTZVRExlUlJzUFZTWHQyVklYcFE1c1djc0VJQUFCQ0FBZ2JVbGdNQyt0a3ZMeENBQUFRaEFZQVlFRU5qVEZxRnZORzVhNi8xcU5ZbW9zUmFKWU8vSGV2RlVVM0pUQzFLM0N0SHR3M29aL3ZUVEM5SHdhVFhONUQ0b2l1M0JvVWxVcnh3U25ycDlGMGV1UDZDd0FISGl3Nm5MR0FLN0U3cDZqam1LcldLODFyNVZZVy91bkdMeEtaSjhLMk5aSlVWY2I3SkxhUk9xNXl5eVh6WFlJZTNVQU4rUis3YUErWHFramc4WmRnalI1QmJPYzVUWWR3WUU5aHgwYVFNQ0VJQUFCQ0F3SWdFRTloSGgwalFFSUFBQkNHdzhBUVQyOUMzUTFVODZ2ZVYrTldNaWFsTnJDT3o5V0MrZVdvWGtwbGNQbGkxWHFreDFxT2hkUnk2MkIvdEdyNWY3dUsra2Y1TDAxSEJqd05Henl5aGpDT3hONzd2TG1HT3N6enRLZXMrU0J0Um1DK1BJYXlmd1BicGxmQ2xDdFQzWlh6QkRTNTNkSlBsekp4YTk3Nm5YMmVPTXVXUUk3R1BTcFcwSVFBQUNFSURBaUFRUTJFZUVTOU1RZ0FBRUlMRHhCQkRZMDdlQXZXVDNrT1Nvem1XWHl3ZnY1WjA3RGdTQnZTT3dVdlZWU1c0NnB1aGRwdGNVdmU2bzJoUDZvejd2U1VmZlhpd2tRUnpZMUtESEVkZ0g0ZXYxc0tQUzdTRi8wY2pUamp4M1FsTW44VXdwenB0d2JKSGsrUm9ObFo4Ui9Nb3QzTStwcElqc2ZxM2RmU0xySkFUMk9lME94Z0lCQ0VBQUFoRG9RQUNCdlFNc3FrSUFBaENBQUFRNkVrQmczd3JzUkVsN1JUak94V1Bia1p0TzRGY3RUaVpuUDExYmxkUVZCUGFPTDVCUzlWZ3lUMWVaUzNMVHFyWEtZdmh0RmtjK1BIaWxKQ2ZJUEZ6U0dTMlkvUDA4NXIzZW4vQjRUOWJ0KzEyRFgzbGJyeGI2OTVWVVRpVHFaOHowWFpKKzFOS0FJKy90S1g5NnFSNFI3UFhRdks4c0ZMOHhITERVMWJLNHZuOFE0THZZNGFRSTFXOEludmIyS0o5VGFVclkrcDBpdWFodkdqaTU2QlFGZ1gwS3l2UUJBUWhBQUFJUUdJRUFBdnNJVUdrU0FoQ0FBQVFnRUFnZ3NHL2RDczhMeWUvc2JWd3RjeEJTWXhHMUhxdkZkUXQrVG01WFZ4RFkrNy8wbXl4NTVuTHdZcXNMNzk5cWNmU3VJMzVqTmlzM0NUY2l0Z3NQT2xtbUU1ZWVGdkgwN3VQLzM1Lzg4Q2ZyOXYzZlNIcjM4S1piVy9qZndrLytscEpPTGRWRVlOK0t6Yi81RGdwSk5DOFFvZHBYWEY4MDEyWTc0M29uaDlmS25CTEZ4aEsyTG1Pc0NPeXRMM2txUUFBQ0VJQUFCT1pKQUlGOW51dkNxQ0FBQVFoQVlEMElJTEJ2WGNlSFN6cTRpSkM4VG1TSi9iZVhMbkg1bTN6QUxTUmFqTGwzWkh3STdQMFdyc21TWnk3V1FUSHZkWXVTM2pPK21WRlhtcXh2bkRqVEVjVS9LRDNvNythT3lENmtIOHFsUElYQTNnLzdWQjdzZnM5NnJxVEhOQXh6cUxpK2FMck5mc2IxSEJWK3Q1QmN0eCs1L0U5VkU3WXVLOW9lZ1QzLzJ0SWlCQ0FBQVFoQVlCSUNDT3lUWUtZVENFQUFBaERZVUFJSTdGc1gzcEc3MXc4Q1M5MjIrRlRodzc2M3BMT1dzR2ZhZk1BZlVVUWQyMDVnOThqWUVOajdMVnJNa3NldHpTSDViWk5seTl1TFJJajNrUlR6bHE1R3I1Y0p2YVRZNTRkV290ai9XdEpIRy95eCt4RWU5NmxWRWRqdjMzQVFNaWFoSThKQlNyV1BLUVQySFNTOVJ0SmRKeERYdTRqc2ZyMDhWcEp2cDV3N0p2d09iVHRoNi9HUzNpVHBzSWJYZEljbU8xZEZZTytNakFjZ0FBRUlRQUFDOHlDQXdENlBkV0FVRUlBQUJDQ3duZ1FRMkxldTZ4TkNZa1Y3VXNlS0k4VGZzb1F0MGVRRGJrc0RSeXBiRkVWZ3o3YzR0Z3F5WllvUFZlcktzdlpDZVN5N0JJdVhxazk0blQxSitibW1BNXR2Rm5ZWmUxYTh3eDFwYkgvc2UrVERPMGxMcXlLd1R5Rm8xd0dQZlE2TVBSNG5IejI2ZUM5dFN0YnNQV3g3by9kbTNpa3Bkakh1MGdkVUQ1TjBadWIrK3pabkd5ZUwvMTM4NS92MjFXV3YrSFBUb2o4RkFoQ0FBQVFnQUlHWkVrQmduK25DTUN3SVFBQUNFRmdMQWdqc1c1ZlJRb0c5bVcyUDRlakt1cktNcU9VMmF3NEwvbytXOUlFR2V4c2kyTHUvYkpzaXZMOWFDTnQ3VkN4VXV2Y3c3SWxGZ3RJRGE1cXBpMEF2VjJ1YW02MlNxb2RNVHY1N1FwSGd0TTRqKzM4azdWTWtEdjFoeittNGJiOGZWY3V6SkwyOFo1dUx4K3c5LzdOS0d4WllYNWZRcnVkNnhjaWNuZS9nTnkxdHVGL2ZJUGhpcWQ2eUJPM1lVS2NlajkvTDdJSHZSTTBYYmVCbmRqN004WHZhR01YNzMrLzExWU9wYWw4L0RvbFZQWTVsQ2R0anpMOVBtMFN3OTZIR014Q0FBQVFnQUlFWkVFQmduOEVpTUFRSVFBQUNFRmhiQWdqc1c1ZldBdnNMSkIwbHlkWWdkV1VadnRzeGoyMlB6NktQeGMzUEYxSHNueXlFdzZ0RXhvM0EzdTJsN08raFI0YmtpM1ZQUHFQNFJ5Yy9YV2E1UlJBZ0Z3bEtGMk01SXlUWC9IcGtjRTNSNjU4SmlYSi9VbnJXSHREdmtlVCs2c3AvRitMN2pTVzUzejRsbG5SMDJaR3hzYVRDYmJjRG1oaE1MV2kzcmNlVTQvR05rR2NHKzVXbWNka0gzUkgwbjJzYi9NQy9PNHJlU1lDdmtkRE9LNG9ERmUvSG55ZlVYZGNxQ096cnVyTE1Dd0lRZ0FBRTFwNEFBdnZhTHpFVGhBQUVJQUNCSlJKQVlOOEtmeUhvTlNVVDlWUDI1blhDMDZraUdoOFp4TjY2N2JMd2hYYzBLQUo3dmhkVTA2R0dvMnN0Tm44cFgzZWRXN0pZK1RaSis5WTgyU1pNeDRSNTcyY25OclYxUjduWUpzTUNZNndnc0tjdjM1U0Nkc3FvcGhyUDFZSi91Q1BIbThxWEMySDl6cEppaDBNcGMrcFM1d3JoZFJRN1BDcTNaWEg5SWFIK1ZPLzlYZVl5ZGwwRTlyRUowejRFSUFBQkNFQmdKQUlJN0NPQnBWa0lRQUFDRUlCQXNHUzRYNFRFa0FqTm9YQmowYXlMZHR2RXc2YitZeEdwaTJjV1VkNk8yTFVWekkwaWpYMHZDS3pmR2pyWmhPZmJ4bUtoLzZYQnlnS0JQUUZvWXBXbVF3MWI4aHdnNlp6RXRzYW81c1NRNzVCVS9iNXNnZkxXRFhZdFRWN3FqdWExNTdWdFZSYkZ3dWdIVzZKOEVkalRWM2dxUVR0MVJHT1B4L3ZUeVpkZm01QWM5LzJTbk5kZ2FzL3ppNFgzMEFja1FyTzF6T09Mc2Y1bll2MTFxWWJBdmk0cnlUd2dBQUVJUUdEakNDQ3diOXlTTTJFSVFBQUNFSmlRQUJIc1cyR1hiVlR1RzZ4aVlrdXlFTGJIWGpKYjFkaXZ1SzZVZmNDdlZ5U21QTG13dU5rK1VoZUxtUFNWYWpyVVdGankySTk4V2VWeWhRWE1oNG9rakU1d1dpMFcvdC9RTUxDWWwzcmRvWnF0Wkd5VDR3ajJwb0xBbnI0VHhoYTAwMGV5cmVhWTQzRWVDM3Y1cHlUR2ZaV2tReXVITzEzbk1xVCtCU1g1VU8yRkVjLzl1clo5c1Bua0dkakd0QjBjRCtFeWgyYy9FbTdxL0hJT2cyRU1FSUFBQkNBQWdWVWtnTUMraXF2R21DRUFBUWhBWUZVSUlMQnZYYW15Q0gzNUlvbmxTWkoyaml4b1c2UndqbjFnRzVCakpPMGRhYXpzQS83WFJlVHlSeHVpUkJIWTAxZWt5U0pvWWNselZucHpXV3Y2KzdGOXJKOVMwMnBkQkhxNVdwT3RURjFTMUtiRXB1VjJFZGpUbDNoTVFUdDlGT2ZYSEdNODNxTytDZkhxUXJDK2VNdWdmaGNTTkZ1c1ByZlBCREkvNDlzZmIwMUlmcnJvOXJlU25ob09vbjZWZVN5cHpTR3dwNUtpSGdRZ0FBRUlRR0JEQ1NDd2IrakNNMjBJUUFBQ0VKaUVBQUw3VnN4VkVkcEpMSi9Xc0JxMk03QmR5RmpGZnNVVythdEpMTjFmMVFjY2dUM1BLdmo3NStza3hld2lwcnE1RUp2TjlVUDAraVVyRlJ4Wi8xeEovMUg1ZDBlaC81VWsxNzlzOGZjNzFkaktmTE80L2JCbk1lZlRTODlldXJCSU9sN1NEUk93SXJBblFBcFZ4aEMwMDN2ZldqUDNlSGFVZEVTUmRQa3VDWVA2Y2JDUDhXMk1PUlg3c3ZzV2lGOFRxY1cyU3Y2OGNINk9xWVYyQlBiVVZhSWVCQ0FBQVFoQVlFTUpJTEJ2Nk1JemJRaEFBQUlRbUlRQUF2dFd6RldCL2JyQmRxVXFaaTZldEUrN2hhU3laM1d1eGJNd2FudUZBeU1OVm4zQUVkanprRzlLYmpxbDkzNXNObmVVOUs0OFUvMURLdzhQZTIzeEQwMVI4blZkSTdDbkwwaHVRVHU5NS9xYXVjYmoyeEUrZkhxV0pQdjh0NVhQQnV1WThxRk8yek5UL3QxenNHV05ENjB1MEtGamZ4YllWdWtmQ3g0L3FYbHUxeUkvd2lNNnRGZXQ2aHROUHZncUZ3VDJBVUI1RkFJUWdBQUVJTEFKQkJEWU4yR1ZtU01FSUFBQkNDeUxBQUw3VnZKVmdiMU41RDY3aUREZm83QndPV1dFUld3UzkyMnJZQnVURTB2OUlyRG5XWVNtNUthdmwvVEE0bGFEbzhXWFZhNGg2ZU9GSU80bzJ4ekZ2djFPTEZ5MnZMbUZwQTlFYms3VTlZbkFucjRTdVFUdDlCNmJhdzRkajMrdjNTcll3Vnd6Y1ZBV2lOOG82ZjhsMWw5bXRhdElPcWdseVc5c2ZFZEplbDRScFg5YTZUMmpMWWwzMjF6cmtud2pzTGRSNCs4UWdBQUVJQUNCRFNlQXdMN2hHNERwUXdBQ0VJREFxQVFRMkxmaXJmTXBiN0pwY1F1MkJIRGtabTdSdGNtZXBpNXlIb0Y5K010bDdzbE5QVU1mK3ZqMnd0MkdUMWQxQnpWTjFqRGU0M1hmenhIWTB4ZGpxS0NkM2xOYXpTSGo4VzJQRnlUYXdYZzA5aXQvVU9IUC9wVkNsSGZpeW91bURYR3B0VHhPSjJuMUxRL252T2hUdmhHZTlldldCNlB2N3ROSWVLWk9ZTCtZcE5kS3V1bUFkbE1lOWFGZTNlMEVXK0tjbWRKQXp6cWZDRGU1cHJiZTZUbGNIb01BQkNBQUFRak1qd0FDKy96V2hCRkJBQUlRZ01ENkVFQmczN3FXZFFKN1c2TFJNV3hEMmhLczFubS9JN0FQZjIzT09ibHBlWFlQclZpNjlKMjVSYm1IRlFsVHp3a04rTHYzaXlRZEVtbndGWkpzVVhPbHl0OFIyTk5YWUlpZ25kNUxlczArNC9FaGpBOEFmZHNqdFh3dStLMy9sNlMyOTZyVU5xZW9aNEY5WDBtL2xIUWRTYjdGa3BLWG9EcTJ2NU4wZUdncnQ4QStCUWYzRWRzcmRhTC9WR09pSHdoQUFBSVFnQUFFRWdnZ3NDZEFvZ29FSUFBQkNFQ2dKd0VFOXEzZzZnUjIxN3FYcERjM2NNNHRNRmowdEpoWlY3NGFiR2wrVVBsam0yZ1ZtMXZxOXBucmZra2RmMXM5UjRiYjBzRnJYVmVXbmR5MFBDYmJCNTBnblJlQi9yK1NQaFhzTnI0dXlRbExYYnhQN0FGOVpVbnZDUDh0dDNGR2tTejFscEw4ektJNEt2NXRFYy9wTDB1NlQ0aSt0VzFHdVNDd3QrMnU4Ly9lUjlCT2I3MTd6UzdqdVdDUmI4SkNzY1gxRkovMXhXaWNLTnJpOGlKWFJkdDdWZmRaalBkRVdXQjNMMmF3WHpqZ3VuaGl0OGVHWnp6L01TeGlFb2N4dUJvQysyQ0VOQUFCQ0VBQUFoQllEZ0VFOXVWd3AxY0lRQUFDRU5nTUFrMkNxWVVBSisvOHdoSlE3QlVpNVdKZER4R3oyN3hxWXlKMGsyMkd4eGtUdmZ2Z2E3SXBjWHUyS2JEQVZTMXRvaFVDZS9OcU5IbmVqM0ZMb2MvZTZQcE1VN0xTeHdaN2ozS2JCNFFJM1dwU1J3djVmai80VEdGeDhVbEpWWUc5NjdpbXFqOVUrSSs5WC9oUXc0Y1RwL2FZU0JkQnUwZnpuUi9wT3A3ZEpObWlLcGI0dVR3QVc2TTRTYk5GNm5KcGU2L3FQSWtSSDZnSzdJdXVMSzQvT3lHSy84ZmhRTlFIVkM0STdDTXVGazFEQUFJUWdBQUVJRkJQQUlHZG5RRUJDRUFBQWhBWWowQ1R3RDVlcjhOYlhvYkE3bEUzSmIvMDMrdHNXL3JNdHNtbXBDN3FlTkZIbTJpRndONjhHazJlOTJQNTdQZlpIMTJldVg0aEJIK29SZ3kxVUg3N0VPRmVicy9mdlI4bjZiQktKNjhNZVFZdWk4QitIcGxORnRnOS82YWJEb3V0YzJSeHErS0p4WDZxODgxdWU2L3Fzc2ZIcmhzVDJCZjkyamJteFVYaVlSOE0xeFY3dC92MTA3WDRwb0FUcEZiTGtNKy9ybU9vMWllQ2ZTaEJub2NBQkNBQUFRZ3NpUUFDKzVMQTB5MEVJQUFCQ0d3RUFRVDJyY3ZjSkVJN29kL0pOZjdUaTFicUVvOTIzVWh0TmlWTlFtK2JhSVhBSGwrTkpzLzdzME1FNmlsZEYzUEo5VzNoOGNhUW9MRThsTHJFcHVXL08ycjc2SkpnK0xYd2YzOWIwaFVSMk05RDFTYXdtNzBqdlMxRVd5VDlZUWx3MTRqeHNiZFJuL0UwZWZVN2F0MkhqVDdFaVpVZEpOMmlvODNNMkJ4aTdUc0MvV09sUEFWMTljekQ4M21KcEYxTEZVNHNib0hkTmZpM2R4MC9BbnRYWXRTSEFBUWdBQUVJUUNCS0FJR2R6UUVCQ0VBQUFoQVlqd0FDKzFhMlRTSzB2NWM0S3ZPZ3lKTGtFR0p2VW9pNUowbmFycWFQdHZZUjJQdS9WcG84OW5NY25QUWZXZjhubll6MG1Cby9kU2RwZklpazN6WTBmVlZKRmdldkZjVFN0NGE2Q096YlFOUUo3RDZrY1RKTSs5VHZIcmpYV2RUMEViVDc3NEwySi91T3gxWlc3eXdPSGZjTVhYZy9QU1c4Unk2ODF0dDdYNjhhOW1lL3RhUWpnbzJTLzIvblIraFRFTmo3VU9NWkNFQUFBaENBQUFScUNTQ3dzekVnQUFFSVFBQUM0eEZBWU4vS3RpM0t1MDNFSG1JbDBpYmd0d205YldOcm0xdmJUbHZYSktjWENVTDAzaEVBdWF4LzJ2am0vSHNzWjBDVHhWQzFmMGRmN3lIcDBTVXhIb0Y5R3lVTDdMZVM5QXRKRHlnU3hkNVgwdjlYczREckxMQjd1bzdTZDdKZEh3bytTdEozYzI3aUZXN0xRcnNQWFB4NiszM1BlU0N3OXdUSFl4Q0FBQVFnQUFFSWJDV0F3TTZ1Z0FBRUlBQUJDSXhIQUlHOXU4RGVadUhTUmNDczl0NW1RZE1tOUNLdzkzdXROTjBheUptOHR0L291ai9sNzgvMmFYNU96YU5kL0tBdEVqclphVG5TUFNhdy82d1FuUjh2NmFmZGgzdmVFemNNejFjZmYxTTQvT2paN0huKzN4Wi8rMFpVTnlWRnRuRGE5bHZGQXJ5dFF6NWZta0RmaVBHK0ROcWVHenFleXdRdi83NUNjdHY0TnZYdkNPeWJ1dkxNR3dJUWdBQUVJREFDZ2JZdnJTTjBTWk1RZ0FBRUlBQ0JqU0dBd041ZFlQY1RUVWxJL2ZkbkZQK2ZFMloyTFRGQnhlM1lac0FSMW1jMU5JckEzcFg0Tm9HMHlmYW43MXAySDBtK0oyS0pUWWY0UVM5R0Z4UFk2eUsxdTh6b2J5Uzl1K2FCWlNaMDlIQzJMNkswajVOMDh5NlRLZFd0czVKWmxmZGRXd3k5cCtlOGVXdzRBUVQyNFF4cEFRSVFnQUFFSUFDQlFBQ0JuYTBBQVFoQUFBSVFHSTlBbTlEem95SVM5amZqZFI5dDJWR2psMnJvZDRqbzFoU1I2aTVUYkZUc1BXeTdsaHRGeHRnbjZya3B5YWE3T1ZqU1MxdldBb0c5KzJadHVqWGdxR3hISDMrcGU3TkxlOEoyTjI4TFh1RGxRVmpvSGVJSHZXaHJFd1Iydjc1dkdielVuYURTQ1V2N0ZnVDJ2dVI0RG9HZFBRQUJDRUFBQWhDQVFEWUNDT3paVU5JUUJDQUFBUWhBWUF1QnVYcHF4NkpaRnhOWXRzRHVjZGh6K2FpR1BkVm01MUo5dENuSjV2ZUMwUHN0QlBic3IrSkhoZ2oydW9iZkl1bUFJbkhqT2RsN0hhL0JoeFhlejYrb2FmNVprcDQ2d0E5NjBlUTZDdXdXMFA5TTB2MGszVk9TRTd6bUtEOE1oeDNQTEJJais3RFM1Y0loTWVnK09Ub1l1UTBpMkVjRzNOSThBdnR5K2RNN0JDQUFBUWhBWUswSUlMQ3YxWEl5R1FoQUFBSVFtQmtCQlBhdEM1SVN3ZTZuMmlMTzJ4S1NsbnR1UzdLWm1qaVZDUFp1TDdDbW13ajJrN1lJNmdTT3ExSjJDWDdqOXNRdWx5K0g2SFVMdmtQTE9nanMvbjFoRWQyV1N3K1VkSVBnTlQrVWpaLy9yS1JYRm0wZUsra0hOUTIyM2FESk1ZWmNiU0N3NXlMWnJ4MEU5bjdjZUFvQ0VJQUFCQ0FBZ1JvQ0NPeHNDd2hBQUFJUWdNQjRCQkRZdDdKTkZkajlwSDNXbnhaWm5yTUxzWE9QUXNRN0pXSDU5Z3BDcmhOS1Zrc1hteElFOWdUWXBTcTNrZlQrU0tMS0ZNLzdicjJOVzl2QzdkR1N2SmZLNVhkRmdzMjdSUHpOKzR4b0hRVDJ0aHN5WGJnNEFheTV2ejRjYnJSWmFpR3dkNkc3MlhWekN1eStwYkZEaG9Pa0l3ckxyTHZYTEl0dnlMeDg0SEw1dmVyTVNsTGxnVTN5T0FRZ0FBRUlRQUFDQ3dJSTdPd0ZDRUFBQWhDQXdIZ0VFTmkzc3UwaXNGOVgwc21TTGhsWm9wVEk4d3NGcXhsYnhOU1ZMallsQ096cHI1VzI1S1lwbnZmcHZZMWIwM041bktURGFycHhOTFhua3N2bVpoMEVkaWNzL2JBa3YvYjZGdk84VThqRmNHNkhScHhid29jNmpwb3ZGOStZZUZmSlNxWkRrNE9yK2xEbWFqV3RFTUUrR08yZ0JuSUs3RzJmRFlNR211bmh1bndGbVpxbUdRaEFBQUlRZ0FBRUVOalpBeENBQUFRZ0FJSHhDQ0N3YjJYYlJXQzNRR2NCODhESUVxVkVuemVKOUYxdFN0cEVsQzV6cTV2U1hQZExuMWRJVTNKVFIxRmFoRDJ0VDhOTGVPWnV3ZXU3ZWdQQ3lYWXRubjQzNDVqV1FXQy9YamdZMjM0QWw3NWlZSXhmMy9ZR1RPRVBqOFplMXlrQys1V0tRNGFiNUJqRW1yYmhHMHpPb2RHbklMRDNvY1l6RUlBQUJDQUFBUWpVRWtCZ1oyTkFBQUlRZ0FBRXhpTXdWOEcwemNKaERrbE9GNnRpY2Vra1NkdjJvT0ZDQUFBZ0FFbEVRVlJGbHVrWnhiL2JTaVpXbW14bXV0cVVJTENudjFiV0pibnBUc0ZlNkJxVnFUZFp3L2o3dGUwaWJGZnlsNUt1TEdsWFNXNWpaMGtXZ2Q4ZzZmNDFPTmRCWUkvTm9UcmRUMHA2dGFSSDFFU2M5eFhFemZqanhjSGNGU3FkOVcwdmZjZkhhdzRSMk52ZXEzT01iNVhiU0Rta2lNMFBnWDJWVjU2eFF3QUNFSUFBQkdaR0FJRjlaZ3ZDY0NBQUFRaEFZSzBJSUxCdlhjNnVVZDV0Q1VvZFJXd3Y5cnFFaDAxUjFCN1p3ME9FZk9xbVEyQlBJN1V1eVUyZHFQTkVTUmJacStVZFFSeStuS1FiU2JwSzRjUCtWMEZZdjFnQ3BpTUxQK1JIcmFuQTdzajE0OEl0aGZJVWZTamhwTGFldXcvTjdLY2U4MHp2SzRqSFhxT09jcjV4NXRzR0NjdDhYaFVFOWxSUzNlc2hzS2N6Ni91YVN1K0JtaENBQUFRZ0FJRU5Kb0RBdnNHTHo5UWhBQUVJUUdCMEFnanN3d1YydDJELzlEYzNyTmE5aThoZ2U2bFhTMU1VZFpNd0grc0tnVDN0SlhPN0lMRFdmYy9zZW1zZ3JjZjh0UzRyNmUyRmwvanUrWnMrcjhYWUxaRjFpR0Mvc0tSM1N0b25KRlIwa3RMWEJWOTJKeTB0bDl3QysrM0QzcXN1MjM4SGdmMk1rZGF6cVZrZndQZ1dRN1drMkpzUXdkNjhZQWpzNlJzYWdUMmRGVFVoQUFFSVFBQUNuUWtnc0hkR3hnTVFnQUFFSUFDQlpBSUk3RnRSZFkxZ2R3dVhMcUtFajVkMHd3ajU5MG02aTZSZmwvN2VGRVh0YW0zV01uVmRJYkMzYi8yMnBMS3JrdHowMnBJK0ZpTFMyMmZkdlVaTUdGd0hnZDAwN2xIa1R2aU9wRk9EeUI0amxGdGd2MCt3MzZuMjl4RkorMHI2WmZlbFd1b1RDT3lyTGJDZkxjbTNYWDQxNFM3Nms3RFhMMVBwRTRGOXdrV2dLd2hBQUFJUTJEd0NDT3lidCtiTUdBSVFnQUFFcGlPQXdKNUhZSGNyVGRIb0ZqRnNFK09JMEVXNWphVDNGMEo2M1hlZGxPU29DT3o5WGlkTlNXVnQwM0dMd252OFcvMmFudlNwUzRYOWM0TVJlblZ5M2RzV0Zpb2ZxR203eWIvYzBkZm45QnlQaFd6UHFWb3MvRG5wYk4veWJVbE9BdnZEbmcza0Z0aWZKT25aTldOeFJMMXZ3dlRsMTNONmd4OURZRzlHT1BjSTltWGNuTWo5bWhxOGlXa0FBaENBQUFRZ3NBa0VFTmczWVpXWkl3UWdBQUVJTElzQUF2dFc4bjBpMk4xS201LzZ5eVE1T3RyaXBiL2YyT2Y1b01qQzIwN21nQjVpR3hIczdhK2twcVN5NVRWcWIybTVOYnlIbkloMC80ekQrSkdrL3dtUjhjK1hkSHBOMjZrSlFqTU9hMUJUUXdYRTNHSmc3RDMzdFlYLytvTUd6WFE1RDE5SmtoTTlqMTFzcmZQQWhrNzhmdnJSc1FmUm8vMFVtNTFZczFNa09SMzYrdWlCSkh0ZWd6NWo0QmtJUUFBQ0VJREF4aEZBWU4rNEpXZkNFSUFBQkNBd0lRRUU5cTJ3K3dyc2JhSjVPVHE2U1l4M3RMdWoyMC91c1E4UTJKdWhYVDRrcjl5NXBscmRMWU1lU3pEcEk0K1c5SUlPUFZwQS82YWtmdy9XS0xaSStZb2szNWhJdFNaQllOOEd2SStkUlN5NXF0dDdqS1FYZGxqTFRhcTZTM2pkVmkxRkZneGVFdzRycS83NXE4NElnWDNWVjVEeFF3QUNFSUFBQkdaRUFJRjlSb3ZCVUNBQUFRaEFZTzBJSUxEbkU5amRVcHZBdlVoMjJwUVV0YzZ2UFhYanRmWGY5L0JnMGY5Yzkwc3FuN0c0cC9hZnUxNmR6WkJGOUM4RUVmM1RoZmYvNXd2eDBmOW1FVDFIUVdEZlJyR1B3TDZqcEU5S2N0UjN0UXl4RXNteHJuTnR3N2txYkoreloyU0FUZ2E5VnhIOS85MjVUbURBdUJEWUI4RGpVUWhBQUFJUWdBQUUvcGdBQWpzN0FnSVFnQUFFSURBZWdia0twbTIrdmsrUWRGaFBMREhMaDBWelEwVG90Z1NhRm9vZUlPbXRrdmFKakg4aHd2ZVpIZ0o3bk5wRkpCMVQrT0R2UFFMM1BtdVY0eG1MM1hlV2RGcmhNLzdGNEZWdUM2SXhDd0w3TnJwOUJQYWJTL3F3Skw5UGxNc3ZndmUvRDBNbzV4UHc3MEMvMXo4bkFzV0hSbjQ5K3lCcEhRc0MrenF1S25PQ0FBUWdBQUVJTElrQUF2dVN3Tk10QkNBQUFRaHNCQUVFOXEzTFBFUmdkMnUzazNSY0pIbnA5eVU5WE5JL1M3cGt6UTV6TkthVG9mNmc1KzVEWUkrRHMwLzBTWVZZdDkwSTNIc3UxMG8rRmhQWUxYWStYdEpQZTg3cWh1SDU2dU52Q2djalBadVZrNlI2M1gvZHM0R2NIdXdQbGZUS21uSFl0dWVtQTE3M1BhYzIrOGVjblBadGtpNVFNOUxmRmZaRys0WG85cjRUOGU5TXQzMXUzd1pHZmc2QmZXVEFOQThCQ0VBQUFoRFlKQUlJN0p1MDJzd1ZBaENBQUFTbUpvREF2cFg0VUlIZGxnYTJlYmxSWkRHL1hpU252RmJrYjg4by90MUpPUHNXQlBaNmNtMysrRU81OTEydlZYd3VKckFQVFpZWXU3VXk1TFpLRHI2NUJIYnZ3ZGVGR3l6VmNmbEF6bUx5YjNJTWVFM2F1TDZrRDBVT0lqMUZpOCtIaDZUUmZhYnM5YmgvT05ReGU5OENtVnRCWUovYmlqQWVDRUFBQWhDQXdBb1RRR0JmNGNWajZCQ0FBQVFnTUhzQ0NPeGJsMmlvd080Vzd5dnBxSTZyWDA2QzJ2SFJQMVJIWUs4bjE1UlUxcEhYdDVEMHBiN1FOK3c1QlBadEM5N1ZJc1lKT2o5U1JHUmZwMmEvMkFMbHlSdTJqNXFtMithN1BqU3A2UVZEVXRtRnpkaVBpNXdGOXNBL1pXWnJnTUErc3dWaE9CQ0FBQVFnQUlGVkpvREF2c3FyeDlnaEFBRUlRR0R1QkJEWXh4SFlMeDlzS1hidXNBRmVKdW5nQVJHWjdncUJ2Ujc0SXlVZEdWbUx0MGc2UU5JNUhkWnFrNnNpc1BjVDJHUCs2MjdOK1JpTzMrUk5WWnI3bjBqeWUrR0RJencrR0tMOXorckp5KzM3TU9OcGxlZDkwSFlQU1IvbzJlNFlqdzBWMkM5Y3VoVVIrMndZZXZPa3o3eHozUXJwMHpmUFFBQUNFSUFBQkRhV0FBTDd4aTQ5RTRjQUJDQUFnUWtJSUxDUEk3QzdWVnU5VkVXYzJKS2VIYnpYaDBaUUlyQnZKZHlVMU5ZSlFTMXVuakRCYTIxZHVrQmc3eWV3eDhSUzUyVzRtU1Q3c0c5NjhlKyt4elVrc1A2YXBMMGtmYnNuS0NlWGZiR2tneUxQLzFiU2ZTUzlZK0JCWjgvaGJYbXNyOER1Q0gzYjM5eFlrbjMvL1Q2SHdKNXJWV2dIQWhDQUFBUWdzS0lFRU5oWGRPRVlOZ1FnQUFFSXJBUUJCUGJ4QlBiclNqcTV3VU80M0xNOTIrOHlJQkhqb2kwRTlxM3IyWlRjOUZPRkxjVGVrdnBHdzY3RWl6enpJQkhZdXd2c0Z3bUpXcjNYcXNVUjJYY3FoR1VuWTkzMDBwVFUxRFl1dDVmMDJZR1FkZ3M1TXVxU1RMdHBKMDg5SkVUUlc1aGVadWtqc0Y4ODNOYTVYN0FrMmxmU0x4SFlsN21NOUEwQkNFQUFBaENZQndFRTlubXNBNk9BQUFRZ0FJSDFKSURBdm5WZGMzaXd1MVZIUzc1UzBvRXRXOGNpenQwbEhaMWhpeUd3L3pIRXR1U215MDZnbVdISlIyM0MvQ3hFL2x6U3VhRW5CUFp0SUxwNHNEY2R0ckVIdC9HOHFhVDNSZzRrYmQvaXc0bFBaOXJ0YlNLN3U3RzQvWUxTdnMvVWRhZG11Z3JzZnlucHJaSVcxbVQyL0VkZzc0U2N5aENBQUFRZ0FJSDFKWURBdnI1cnk4d2dBQUVJUUdENUJCRFl0NjVCTG9IZExUZEZUeTk2emhsRmpjRCt4K3RKY3ROdTd6RzIwM0VTempzRVFmT3ZDb3VKTTRMVmhQL3Jnc0MralVNWGdUMldBOEMrLzdlUzlMRnV5N1IydFpzRWIwZVU3eWZwblpsbm5TS3lQMFBTc3d2UGRsdkhMS09rQ3V5MmhMSHR6Zk9MOGRwamZsRnNPK1NEaXg4UXdiNk01YU5QQ0VBQUFoQ0F3THdJSUxEUGF6MFlEUVFnQUFFSXJCY0JCUGF0NjVsVFlHK3lobGowN01TbUw4MjByUkRZL3hna3lVM2pHOHNKRUs4bDZaYVNibHVJdkxlUmRMR2E2dFVraUFqczJ5Q2xDdXlYQ0pZa042cGhhN3NUcy85cHB0Zi9Lalp6MWNLRC9rUkpPMFVHYjVINThKRTgwWnVpNWhmRDhTMmtSeTFKWkU4UjJIY01kalozYkhudDRzRytpcThPeGd3QkNFQUFBaERJU0FDQlBTTk1tb0lBQkNBQUFRaFVDQ0N3anl1d3UvVjdTWHB6Wk9kOVQ5SXRpb1IwMzhxME14SFl6d2ZaSkd4dVduTFRxcGh1VWYxU2lYdXVIQVhyUnhEWXV3bnN0NU4wbktTNjN6VFBLWVRiSnlldXd6cFdheFBYbnlUcEgwZTJhVWtSMlY4cnlRZWh2NTU0RVpvRWRuTnhaUCtySmRsM3ZhNzhJbnkrZko0STlvbFhqdTRnQUFFSVFBQUNNeVNBd0Q3RFJXRklFSUFBQkNDd05nUVEyTWNYMkM4dDZmakNYL2lHTmJ2bVpVRzR5WlZNRDRIOWZNaE53bVpPVzU2NXZSblk1dVZxcGNqMExtSjYzVnpLUHM0STdPY1RTb2xnZHg2R284SWhXNVh0MlpMMktLeDRUcG5iQnBwb1BCYlg3Ym0rUzZTLzF3VGJreW5zV1ZKRTlqZElldGpFeVdoakF2c3JpdndlVndpSnNadVd5emNqYkVHRXdEN1JwcVliQ0VBQUFoQ0F3SndKSUxEUGVYVVlHd1FnQUFFSXJEb0JCUGJ4QlhiM1VHZFY0c1I5amw3L1VzWk5oTUMrRFdhVHNPbS81N1RseWJoOG5acXk3L0xsQ20vcXZ5Z3NObTRXUE5PZFRMUE81cVZUdzVYS0NPelNzWkoycjNCSkVkaWJjakM4THdpa1UwZEZEOWtMdVo2MXJja3hrbTRRYVhBWkVlTzJTSHA3Sk1ucVlwanZrUFFnU1dmbEF0SFN6aEhodmFwUGR4K1U5SUJpdk44TkQyTVIwNGNpejBBQUFoQ0FBQVRXaUFBQyt4b3RKbE9CQUFRZ0FJSFpFVUJnMzdva09UM1lGNjNYSmR0OGk2UURKRG5SWWE2Q3dMNk5wSVhta3lOaVdXNWJubHhyMTZVZDI3dTh2MEdnN05KV1cxMkxpaGJxZmhVcXhpeGlmR0QwK0FGKzRyN2g0ZWVyNVUxQmpHMGJaOXZmdnlQSk54ZTZGdDhJNkNPdys1REgvdDBIUmpxOHR5Uy9CMnhhdWJha280dTU3eHlaK0FraDRuOHFFZnVTa3B3cncyVlBTUmIzdDJ0WWxLbEVkdHM2T2JIclBoMDNpQ1ArSFdudnovWnpTOC9HUGh0OGs4SnpXcnkrTzNiWHE3b1RzZTViNUI2NVRPWHBsRU9yWGgzeUVBUWdBQUVJUUFBQzlYNkZjSUVBQkNBQUFRaEFBQUlRZ0VDTXdOT0xwSWhQaS93eHR5M1BNbGJCQVNpdkM4SjN6djUvS09rRFFiei9XTkgrNlRYKzF6R0JQZWM0eG1pcjc4SFo1WXRFcEorUWRJMk9ZcUJ2cDVobG5WajcxV0FQODRNeEpqclRObjNqNHY3aDBNRUNhMTF4MVBYZFdpTEVMVHlYOHdmWWdxc3MxbnVkbkx4M1VmeS8vNnowdjNmSWNNdGpDcEhkNC81NHNJSkpYVkxiRGUwZlhyZlZaOW9PWDFQN0dMTWVBdnVZZEdrYkFoQ0FBQVEybmdBUjdCdS9CUUFBQVFoQUFBSVFnQUFFa2dsWUVEMHBFaUc3VHI3WDl5bUVSUHRDOXkyT1dQMWtpQ2IrcUtTdlMvcE5RbU9iSnJEZk15UXBydjRtYVJJREhSSDl0aENsVzRmMEdjVS8raEJvRTRxNTdTYnB5RWdlaWdXRDM0VzlhUEc4TElqN0JrRnFRdDRwZVk0dHN0Zlppc1htWjNaT2x2dVNoa1NzQ094VDdnNzZnZ0FFSUFBQkNNeVFBQUw3REJlRklVRUFBaENBQUFRZ0FJR1pFcmhYRUVUcmhyZE92dGRkQkRQYlJ2eTdKTS9maVNXL0l1bVhQZGR2WFFSMko0bDBjc3N6SmYxbllHRkxqWitFcUgwTHUzZVY1SVNTRjYxaFphdWhHNWM4cnN0VjdodVNtOVloWGdlTG9wU3Q0OTl3ZTB0NnJxUmRVeDVZd1RwamlleE9VdXhvL3VxdGlUcEUzeWoycisyR1B0UENyOHY3eGJLV2dnajJaWkduWHdoQUFBSVEyQWdDQ093YnNjeE1FZ0lRZ0FBRUlBQUJDQXdtNE1oaEowKzBzRmRYMXNuM091YkQ3bWpXTHdkN2t1T0tLT3JQU3JJL2VxNnlMZ0w3OVlKUC8vWTl3ZGhDeC83WXY2ZzgzeWFPUGt2U1V3c0xvOS8zN0hkVkh2TnZ1R2NXT1NhZXNpb0Q3amxPM3lLeDUza3VEM01mN05pamZxK0U4ZGoyeUFtYmY1NVFGNEU5QVJKVklBQUJDRUFBQXV0TUFJRjluVmVYdVVFQUFoQ0FBQVFnQUlGOEJHNFM3R0Uyd2ZmYTM1R2RSTk56dHRmM2laSk9sZlNqa2NYYkpvSDlqTXhKZS9QdGpHMkpIQjlkYXRBSkZqOVNXTGxjcDJjbmRUWXY5aFovWTNIQWNZOUltN2JodVhXUitOUUpWemVoWEZuU2h5cWU2S3MyYngrRXRQMGVmVTN4dWp1b3NHbnhUWkdoeFh2SWVTSWUzTkNRKzNsUXVDV1JlbENEd0Q1MFpYZ2VBaENBQUFRZ3NPSUUycjdRclBqMEdENEVJQUFCQ0VBQUFoQ0FRQVlDL3M1b24yY0xYWFZsazN5dk0rQ01OaEVUMlA4N1dLWllaRitGNG1TWjd3eFI2RjNIKytPUXBOUTNCUmJGKys5eGtnNXJhT3poNFZDa2EzK3JYUC92SkQxdnlSTllIUHpZZ3VSVGt2NWZPQWp5Z2RSWllXeE9QR3Q3SUJmZlNsaFlLS1dzcTUvSktiTHZHQTdNeXNsYkZ3ZzlUbHNYbmRhUmFVeGdYOGJyMWxINngwcmF2VElITEdJNkxpclZJUUFCQ0VBQUFsMElJTEIzb1VWZENFQUFBaENBQUFRZ3NKa0VyaDRzUDY1VU0zMWJwTnhDMHBjMkUwM1dXYStMd0c0b1J3U0xqYTZBTEJvZlhya3A0TWhqLy9zL1JCbzd1YmhoOERjbFFiZHJuNnRhLzNJaGluMlhnUlA0YVJDOUhiMXQyeU1MNDA3S3V4RE1MWnAvUVpJVEdaZTk5QWQyZTk3anFTSzdFNDM2Z01YOUR5MSt2L0xObFBKdG5OZExjdkxUUG5ZMENPeERWNFRuSVFBQkNFQUFBaXRPQUlGOXhSZVE0VU1BQWhDQUFBUWdBSUVKQ055bnNLS3dIM0pkZVl1a0EyWnNYeklCbm14ZHJKUEEvdENPRWVVV2QvODJKRDZ0cytidzd4YUw2Ryt1SkVhMTZIdWJjQUNVYlNGV3FLRzZwSy9PRmZCTlNaK1E5SU9RaFBlY1FrRDI3WUJGMHRseUpQbXlwOXRtM2VMYkRIZVdaQnVnSE1WNzZRbUZ3UDZjd3JQZnJHeHY5TklCNGowQ2U0NVZvUTBJUUFBQ0VJREFDaE5BWUYvaHhXUG9FSUFBQkNBQUFRaEFZQUlDVGNsTkxZUTZHZVVKRTR4akU3cFlKNEg5OXBLY0NMYXBMSkxHL29za1J4QXZiRVNhbnJsaHNKK3hCN25McGlRMmpURlpXSUxZNy82ZkE4Zi9HaUFXTCt0MUZoUFpmVHRodnlMWjZmY3pEK3dTNFREbm44SXRnQ0hOSTdBUG9jZXpFSUFBQkNBQWdUVWdnTUMrQm92SUZDQUFBUWhBQUFJUWdNQ0lCSnFTbTM0bGVQMDZNcFl5bk1BNkNlekRhY1JidUZZUTd5MjZicUkxVEpYTVJZUDNlUTc3bERIWHJhMXRpOTcyN3Q4elZIVHlYQ2NjWFhpNXR6Mi9yTDhqc0MrTFBQMUNBQUlRZ0FBRVprSUFnWDBtQzhFd0lBQUJDRUFBQWhDQUFBUTJuc0FGaTJTeWx5Njh4djNmY3NudGU3ME9vSzlRZUxWZnJMQW4rc1k2VElZNS9JSEFWY09ObUk4VXd2cWhoZmYrcjFlQXpkWENXSDNicDF6T0RFbG9uYWRpcXVJRXd3ZEwycW5Tb1RtK1NOTHBVdzJFZmlBQUFRaEFBQUtiUkFDQmZaTldtN2xDQUFJUWdBQUVJQUFCQ0VBQUFoQ1lONEYxaWNpZk4yVkdCd0VJUUFBQ0VJQkFOZ0lJN05sUTBoQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaHNFZ0VFOWsxYWJlWUtBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUMyUWdnc0dkRFNVTVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQ3dTUVFRMkRkcHRaa3JCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlaQ09Bd0o0TkpRMUJBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJREFKaEZBWU4razFXYXVFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdrSTBBQW5zMmxEUUVBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNtMFFBZ1gyVFZwdTVRZ0FDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FRRFlDQ096WlVOSVFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUliQklCQlBaTldtM21DZ0VJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBdGtJSUxCblEwbERFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdzRWtFRU5nM2FiV1pLd1FnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDR1FqZ01DZURTVU5RUUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0F3Q1lSUUdEZnBOVm1yaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJSkNOQUFKN05wUTBCQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBcHRFQUlGOWsxYWJ1VUlBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnRUEyQWdqczJWRFNFQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFZRklDRjVSMEUwbGZsSFRXcEQzVEdRUWdBQUVJUUFBQzV4RkFZR2NqUUFBQ0VGZy9BbjV2MzBIU2RwV3AvVTdTbVpKK3UzNVRaa1lRZ0FBRUlKQkE0RXBCaUt0Vy9aV2treVQ5T3FHTnJsWCtKSHdtWGFEeTRMbVNmaUxKLzkyMGN1Rmk3Z2RMMnFreWNYOUdQMC9TenpZTkNQUHRUZUE2a2w0djZZYVNYaVBwSUw3bjlXYVo4dUNmU3RxK3BpTGZzVlBvVVFjQ0VJREFHaE5BWUYvanhXVnFFSURBeGhMd2wvOWpKZTFlSWZDL2ttNHA2ZFNOSmNQRUliRDZCRzRqNlhVMTA3QWdkNThRd2JqNnMyUUdZeEg0RzBudnJtbjh2eVhkV05JWkkzVDgxNUkrS3VtaWxiYkg3SE9FYVdSdE12WTV2Y2xNc2dMZWdNWXVMdW5aa2g1Wm1xdEYzdjBrdlhPRjUrL2dFQWVDL0g2bWMvaTdjQWhXSFI3ZnNXZTZZQXdMQWhDQXdGUUVFTmluSWswL0VJQUFCS1lqZ01BK0hXdDZnc0RVQkdJQ0tUL3VwMTZKMWV3UGdYMGU2K1lJMk9NazNaeERoM2tzeUlxTllpOUo3NUJra2IxYWZOaTZ0NlJQcjlpY1BGemIzTHhMMHZNbEhUNVRrUjJCZlFVM0ZrT0dBQVFnTUFVQkJQWXBLTk1IQkNBQWdXa0pJTEJQeTV2ZUlEQWxBUVQyS1dtdlgxK3JKckJmU05JNTY3Y011cUtrVHhhM1VhNkN3TDZHcXp2K2xLNHE2Y1FhaTZGRnp4OHNialBkYllYODJLMUozTDJZenh1THFIeGJTcms4dGpoQWVPRU1SWFlFOXZIM056MUFBQUlRV0VrQ0NPd3J1V3dNR2dJUWdFQWpBUVQyNWcxeWUwbDNHV2tQMmIvNFJaSk9MN1Yva2NMYmVJOGlHdXRpSS9YWnA5a3gvWmI3aklkbjBna2dzS2V6b3VaV0Fxc2tzRjg3V0YyOFN0SkwxOHlyUFNhd2Y2eUlQTjVIMGkvWXZCQm9JWEJIU2NkSXF1WTJXRHoyTEVsUG5hRkFYWjJXRTdRK1J0SmhsVC9ZN3VZUVNTK2IyUndRMkhscFFnQUNFSUJBTFFFRWRqWUdCQ0FBZ2ZVamdNRGV2S2F4SDBjNWRrS2RUVWRNU01uUlg5ODI4UG50UzI3NXo2Mjd3TzZJUlVjeWJtTDVkb2c2L2VHSWsxOFZnZjFhd1VKbGtRVDA3WkllRmhKMWo0aG5zcVpqbndzZmtiUnZFYjM3eThsR1FrZXJTc0MzTzQ0TXI0dTZPVmlnZGpCQlhjNkZ1Y3paMGVyUERRSjdiQTc3UzNyYmpFUjJCUGE1N0I3R0FRRUlRR0JtQkJEWVo3WWdEQWNDRUlCQUJnSkRCZmFZQUpOaGFLTTAwVlVzUm1DWHVqSWJaZUZvdEJlQmRSZlkvMFhTL1hxUldmMkhwbmhkcm9MQUhyTy8rS3FrdTBvNmJmV1hXckhFcndqc2E3QzRFMDdoY2tYeStnOUoyaVhTcDE4ejltdi83b1JqNnRLVnRZaURKTDJrSVJKL2JvbGJFZGk3ckRCMUlRQUJDR3dRQVFUMkRWcHNwZ29CQ0d3TUFRVDI1cVZHWUVkZ1grVTNBd1QyVlY2OTVyRWpzRXNXMTkvYklCajZsdEM5SmIxblJoR3RmWGFrazV0K1dKS2prTXZsWHlYZHYwK0RQTE94Qkpxc1l1ekZmdDhpeXYzN002WmpQZUp4TlJZeDVTSFBTV1JIWUoveFptSm9FSUFBQkpaSkFJRjltZlRwR3dJUWdNQTRCQkRZRWRqYmR0WVVRbDdiR1BoN1B3SUk3UDI0cmNKVFU3d3U1eDdCdm1Qd2xiNUJ5NEw5ZlJEa2Zyc0tDMXN6UmtmaXY3UG0zMjM1OGFnVm5SUERYZzZCT3F1WW53ZnJHRnVybkx1Y1lYWHExVDdzajVmMG5JYW5mTGkyWHppQTY5UjQ1c29JN0ptQjBod0VJQUNCZFNHQXdMNHVLOGs4SUFBQkNKeFBBSUVkZ2IzdDlUQ0ZrTmMyQnY3ZWp3QUNlejl1cS9EVUZLL0xaUWpzdDVIMGZrblYzeDJ4K1RvaDlDdEQ1RzNUdXIwaGlJaE8ycnhxSlNiU1BhRWxrbmZWNXJudTQ3MmFwRU9MTlhNeTgyVVdlL3JmSWJ6R0hPMTlkSkVnOUtmTEhGRG8rK1dTUHBjNER2dXhPNkhwZ3h2cS95ek04eE9KYlk1UkRZRjlES3EwQ1FFSVFHQU5DQ0N3cjhFaU1nVUlRQUFDRlFJSTdNMWJJdmJqeU5lc2JUdVFVbUtDa2YxTzk1RDBnMUlqc1dSMlUxZ0J4UGJDRkVKZUNrZnFkQ2VBd042ZDJhbzhNY1hyY2hrQ2U1OCtMYlk5dWJDQmVWckw0bjAySkhLY3E4ZDAzZkQ5Kzh1SEEwN2VXQzFkUG9kV1pWK3Y4emhqWHZyclBPY3VjK3U2bjFORjlyMGxmYnJMUURMV1JXRFBDSk9tSUFBQkNLd1RBUVQyZFZwTjVnSUJDRUJnRzRHaEFydkY0OWRWWU80Z3lWR0YxZUxyK1ZONWUxNUJrbjk4VlV0WFVTcUh3UDVzU1UrcUdZdWpydzZ1ZUFNanNQUEt6RWxnVXdYMnNRNmtZanpIVERZWkUrVzZ2cGYxMlZkOXhPNCsvWlNmNmR0blNnSkU5L01kU1JieVVpTmxIVzNzZzlDNno3U2hjMDE1L3NLU25pTHB6eXVWenduLy9vMlVSa2FzNHhzQkowbjY5WWg5ckV2VENPek5LOWxWWUhkcmx3ajJTWHMyTlAxalNiZVg1QU8ycVFzQys5VEU2UThDRUlEQWloQkFZRitSaFdLWUVJQUFCRG9RR0NxdzEzWDFhRWt2cVBuRG1DSlV1VHQ3akw1RjB0MXF4dUFmV0xmdGNCMTZxTUIrcVdCM1VQVUkvbjBZeHdjcVkwUmc3N0I1cWRwS0FJRzlGVkduQ3VzZ3NDOFNaVnFnYlN0OXhlNjJkcHYrUHJSUFcxL1lTL3FpRFozWU91SWVrcXJ2djNXUHhONlRoOHh4blo2ZDRxQm5YWGdoc0RldlpCK0IzUzA2MmZHSmtuWnFhUDVyUlJUN1BvV1YxTmNuM2t3STdCTURwenNJUUFBQ3EwSUFnWDFWVm9weFFnQUNFRWduTUliQUhoTkl1b3JiNmJQNDQ1cmJTenF1RUU5dVh0T0FFOFhkcTRqOFN4R1gvUGhRZ2QxaitMQ2toYWkxR05KWGluL2ZYWklqcThvRmdiM3Zxdk5jSFFFRTlyejdZcFVGZGtkZys3M1BpUUZ0cFdMZjhyWXlWT3h1YTcvTG51MGk1TjVFMHJzbFhhWmhBRTZDNlBmZ3RxaFdCUGJtVmV5eUxuMzJ3em85ZzhEZXZKcDlCWGEzdXB1azkwbTZaRU1YRnRuM2t2VHRDVGNWQXZ1RXNPa0tBaENBd0NvUlFHQmZwZFZpckJDQUFBVFNDSXdoc01kRTVhbCtpRGNKSWtkS2VsUWFtdk5xRFJYWW54N3hCWTZOQTRHOXcrSlF0WlZBVENEMURZcDNTZnBSYXd2VFZMRHc0ZGZFYnpwMjl5K1M3bGZ6REJZeDUwTzVlSGpQczAzVklybWlvemh2SGV4U21wRFBTV0QvWm5FYjZLYVZuQlZOWTk4MWlPeFhqbFR5ZS92aEZZdXV1cW9JN00wdnlxaysxenUrTmN5eU9nSjc4N0lNRWRqZGNvcklmb0trdTB1YUt0a3hBdnNzWDRvTUNnSVFnTUR5Q1NDd0wzOE5HQUVFSUFDQjNBVEdFTml2Situa3dpYkdrZVRsOGd0SnR5aVN6SDArOXlRcTdUWDlpSDJZcEZkMTZIK0l3RzV2VUVkVTNhalNuNlBuYnlYcFl6WGpRR0R2c0RoVWJTVVFFMGhiSDV5NFFsLzdLQVIyNll5R3RiSmx3a2VMYUhYbnBLaVdKeFNDKzJFdDZ6d25nYjNQSHJtV3BIK1R0RXRsbnE4cERwY09LaEtqT2k5SVcwRmdieWFFd042Mmc4Ny9lK3k3U1orOW5kN3J2R3JHdm5ONmxFTUZkcmR4enlKZndac2wxZWtXWGZNdjVDQ0h3SjZESW0xQUFBSVFXRU1DQ094cnVLaE1DUUlRMkhnQ1l3anNNVUVpNWp1ZWV4R2FvbmJ0djU3aXU3c1kweENCUGZaanVza3FCNEU5OTI3WTdQWVEyUE91LzZwWnhOaWF5bFl3QjlaZytGNDQ4UHhXQTZKVkY5Zzl0UjBsSFNOcGtRZmpneUUveDFtSld3T0JIWUU5Y2F1MFZrTmdsOFlXMkozYzNnbmtIMXhaRFFkOTdDZnArNjJybExjQ0FudGVuclFHQVFoQVlHMElJTEN2elZJeUVRaEFZSTBKMkgvU2tZazdKTTdSUDBiMnJmR3E3V0loOFd0Skw1SjBldWl6NlFlVUU0OGVuVGkydnRWc2hmRHNtb2ZQREw3c3AzVm9lSWpBSG52V0hzaFBqb3dCZ2IzRDRsQzFsUUFDZXl1aVRoVldUV0QzNU94SGZsTGh2YjVkelV5ZlVmeWJiYXhpWlJrQyswTWovdkJEb253ZHdlL0VwMmQzRk5mTjVZS0ZmZEdsdzM4N2JaYUJsVzNuOC9wd0NOTFVsRCtyRDREeXdVMEFBQ0FBU1VSQlZKN2djelUyaG5PTC9uOGl5ZitsTkJPWWc4QisrK0lXNFYxcWh1bERxT01uV01DeEJYWlB3YmNIblc5bnp6Q2ZOeFRDdW04dlRtVUxVOGFJd0Q3QnBxSUxDRUFBQXF0SUFJRjlGVmVOTVVNQUFwdEdZQm5SZGs0V2QwdEpwd2JZL3J6d0Q1cjlhK0JiV0xiQVBGWnA2cnRQa3RXK0FudnNSMlNUUFl5WklMQ1B0VE0yczEwRTlyenJ2b29DdTZQWWp3b0pUcXMwMnFMWWx5R3d4OTV6aHdqc25yZVR2Rm9zLzNuZUxURmFhN2NMeWJwVGZuLzlMSGpxLzhkb282SGhIQVRtSUxESFhsOHBsbEU1R0V3aHNIdWNWdzBIQm04S1ZsZ3BkbEE1NWxkdEE0RjlES3EwQ1FFSVFHQU5DS1I4d1Z1RGFUSUZDRUFBQWl0TllBNEN1d0U2Z3R5UjVOVXlWdkxCUlQrWEtoTGh2YjlrQjFEdTN4Rk45NUpra1R1MTlCWFlyeHQ4Nkgyam9GdytKV2x2U1RGN0FnVDIxSldoWGdvQkJQWVVTdWwxVmxGZzkreWF4TnFtS1BaMUV0alRWM241TlIyQis1NkU2UFh5U0x0YTN5eC9scHMzQWdUMjhTMWl5cnZLdDNZc3JQdVd4N0lLQXZ1eXlOTXZCQ0FBZ1prVFFHQ2YrUUl4UEFoQUFBSU5FZEJqd3FsR3NMdXYrNFFvOW1xL1E2TVEyK1p4N1pBOHRNNGlwMC8wZkYrQi9aR0ZyY0NSTllOdHMyU0lDZXkyM3pteGJmSUQveDZ6Q3lLSjNVQ3dTM3c4SnBEYTFzazJBVjlZNHRqS1hkdTZ3eFpPWFlVUWtwdzJKemxkTUxiZGlDMGdmTGhYTFY4UDBjOU9BRmd0Y3hMWUxTRGZhVWsyRDFPL1RCNGo2Zm1SVGg4ZFBQV3JpVnRkdlV2eTFxbm5SSDhTQXZ1MEF2c2M5aHdDK3h4V2dURkFBQUlRbUNFQkJQWVpMZ3BEZ2dBRUlGQWhNSmNJOXR1RVNQTHFaOGZZWXEzOVJZK0w3SXA5ZW5pTTloSFlMeHo4UDkxZlZVVGNveEM1VG1uWXRjdFl2N1lYMGRocjF0WS9mKzlQSUNhUTFoMks5ZTlsZVU4aXNLY0o3RjRoMzk1NWMyU3A3T0g5MHBxL3pVbGdIL3YyMC9KMjhSLzN2RnZobS84K1NkWGJUNjYxT0tDMnIvNEpraTVRTTJoL1poM2U0N0JxTHZOZjUzRWdzQ093TC9iM3Vud0dyL1BybGJsQkFBSVFHSlVBQXZ1b2VHa2NBaENBUUJZQ2x3dmlydjBuMjRwL25GdlFyZnVSN21kL1ZDUk0vVTFiSTVMcy8rcUk5UytXNnNZaXljZitVWkV6d2FtbjAwZGdqODI5elI3Ry9TR3dKMnc0cWlRVFFHQlBScFZVY1ZVdFlqeTV5NGRrcHp2WHpQVExJWXI5aDVXL0xVTmdQeUlrN2F3T2N4TUVkbjl1KzZiU1RqVnI5THR3NitUZGt2eWI3Sm1GM2RsVEl2VU9rZlF5UlBhazEvU1VsUkRZRWRnWCsyM3M3OEpUN212NmdnQUVJQUNCSGdRUTJIdEE0eEVJUUFBQ015WndtUkFSZDUyYU1RNzk4dC9raFg0M1NVZVB3Q1VXT2U2dVBpYkpFZVcvNk5odkg0SDlvWkplV2ROUG16Mk1IMEZnNzdoQVZHOGtnTUNlZDRPc3NzQnVFazh2Uk5lblJaRGNXOUpiS245TEVkaFh4ZWUvYVNjTS9iekxzY3ZzdSs0OElYdEdHbnU5cEljRVQybFhhYXB2TWQ1Snh0K0d5SjVqYWJLMWdjQ093TDdZVEhONHo4bTJzV2tJQWhDQUFBUzZFMEJnNzg2TUp5QUFBUWpNbWNETkpYMVkwb1ZxQmpuMHk3L2J0RmhqTWIxYW5sT0lCUFpEejEydUpPbmprdXFpOSsySC9xZ2VIWFlWMklmWXczaDRDT3c5Rm9sSG9nUVEyUE51amxVWDJHUEpsMDNKdGlUMjViYy8vNklnc09mZFA3SFduUC9DRWVjUGpsUTRROUl0SmRrdnYxemFJdDRQbEdRYnBhNjVEYWFaTmIwc2cwRHNPODBUSkIyMmpBR3RlWjk0c0svNUFqTTlDRUFBQW4wSklMRDNKY2R6RUlBQUJPWkpJUGJGMzZNZEtyQzdqWmhkaXozU0xieW4yTTkwSVJmemZYY2I5eTJ1M2IreFMyT2hibGVCL1JwQjVMOUNwYThVZXhnL1FwTFRIb3ZFSTFFQ215cXdqNVVVK0dyRjYzdXZHdG8vbG5Sc0tibzQ1NWE4YkVqdW1TT2ZoUTgrandwKzdOVXhPdEZzTlVjRUFudk9sYXh2eXdsb2ZRQnNNYnl1T0JwOXZ4RGRYdmQzZjVZNlVyM082czNQWWhjei9ocm02TUdIODc3NU4zWjVSTVJhNkZtU1hqNTI1OFYrL09rSTMvMG1HSGJ2TGhEWWU2UGpRUWhBQUFMclRRQ0JmYjNYbDlsQkFBS2JSYURKVHNVa2NnanNzWVNqM3l3U29ONVUwZzh5STgvdHYrN2hkUlhZN1VYL2hwcDVwZGpEK0xHWXdENkYvL0NmQnBGdzk4cjRTWEthZWFOTzJOeW1DdXdUSWw1YVYzMWZsN2NMaWFEcnZ0YzdpdG9KVHhjUnp3anM0eTd2eFlLZG1BK0FZK1Vsa2c1dGlFTDNPbHFBZjFORFBwVVhTSHJpU0FkQTR4TGFuTmJYd1dvcFpiWHVLT2s5S1JYWHBBNEMrNW9zSk5PQUFBUWdrSnNBQW50dW9yUUhBUWhBWUhrRVlvazRGeVBLSWJESCtqaW44SDYvVmZCRnowV2c2Y0RnSTVMMmxmVExIcDExRWRoanRqaDFrYUd4b1NDdzkxZ2tIb2tTUUdCZjM4M1JWMkJ2eW8veFBVbTNrUFN0Z0EyQmZiejk0MXRPamp3MzcxajVZTGp0ZFZiTE1Qd2I3WEV0RmgvT2UySUxtalBIbXhJdER5Q0F3RjRQenpjVFh6ZUFxeC85bVNRSFAzd3gwbzd0Qlc4eXNJL1k0N2JkY2o2RWF2SDNZQ2NwL3NZSS9mNjJ5T1Z3TXEvMUVjalNKQVFnQUlHTUJCRFlNOEtrS1FoQUFBSkxKaEJMeExrWVZnNkJ2VW5JZVZnUnJmMnFqQXlhRGd5R2VMNTNFZGlIMnNNWUJ3Sjd4azFCVTBKZ1g5OU4wRmRnTjVHbVpLZGxPeTBFOW5IMmoyOEoyYXJueWczTnA0cnJpeWJzNCs3Y0pyRWt0cTVuTWMvSmJEOHp6clJvZFFBQkJQWjZlRG00dEgyZnpkSEhnS1hQL21qYmZMTjNTSU1RZ0FBRUlOQ2RBQUo3ZDJZOEFRRUlRR0NPQk5yc1lUem1YRi9RL3luaUxmdk80QVBzS0o0Y0pXYk5ZcXVEMjByNlFNOU91Z2pzUSsxaFBFUUU5cDRMeFdPMUJCRFkxM2RqREJIWVU1T2RwZ2pzT1FrM0pYbDJkUDJOSlgwM1o0Y1R0MlcvZFVlYTJ6S3NxWHcySkp6dE90Y1VrZDNSclJiaVg0eGx6TVNyMzl6ZHVvbThzZGwydFlqSndhWHQrMnlPUHVhMG1kcm1PNmV4TWhZSVFBQUNHMHNBZ1gxamw1NkpRd0FDYTBhZ3pSN0cweTEvUWZkVmRrZkZQVS9TdHp1eWlJbk9PWDNZbXhMM2VidzNLNjdHVzV6cFUxSUY5dGdZdXRqRGVId0k3SDFXaVdkaUJCRFkxM2R2REJIWUxmUWVJMm52R2p6bDkvNnBCZllkSlgxU2tpMGJxbVhvWWVteWQ4SjFRcUx0WFJNR2NrcXdsWEN5M3E3bGdzWG45K01sK2VaV1UzRVV1MjhyL0ZmWERxZy9Db0YxRTNsamtCRFlSOWsrZjlRb0F2djRqT2tCQWhDQXdHQUNDT3lERWRJQUJDQUFnVmtRZUtTa0kxdEdzdmlDL21OSjc1VzBTK0ZoK1RWSit4US95ci9lWVJiWEMxNlEyMWVleVNtV1hEMzBVU2ZLdkY3U0F4c1N4TFZOSlZWZ2o0M2g4OFhZOWl3U0IvNmtyYVB3ZHdUMlJGQlVTeUt3cVFMN1dFbUJZenlINUhsb1c4aS9sdlJSU1JldFZCd2lzTHVwZTBsNmM2Vk5pNjVQS0hKa2VEN25TbEdMb2FGOXgrWWNtK3VpdmlPdjI0VGpOcDVULy8zaWtwNHR5Wis3WFlvanpXMmw5aTloTGJvODY5OXNCMGx5Z3RRTE5Eem9QdXdEN2U4RHYrN1NBWFd6RTRpOXR6eEwwc3N6OXZhSXNPYlZKcWZxQjRFOTQySkdta0pnSDU4eFBVQUFBaEFZVEFDQmZUQkNHb0FBQkNDd2RBSk5rWXZsd2ZrTCtzTkQ1THE5eFJmRmtlZE9HSHBhNGt5YWZOaUhlS09YdTY4VGloWi92NU9rZHllT3RhNWFxc0IrTzBuSFIvcDVyS1FYSkk0QmdUMFJGTldTQ0NDd0oyRktyclJPQW52NVVQQ0VRbUQxZTUyVEFQcndjMUdtam1DL3ZhVGpHbGJEZjd0YmNRandtK1FWVzE1RlI1THZKK21Wa2l5eTl5MithV0JSOVBzZEcvRHZOcStmRDFHcWh6UFZwbnhnWXVzYVc3ZjVZSVV5UFlIWWE4MEhYb2RsSEU3c084MVUvWFFWMkxza09iWDk0V1ZyV0xVSnp1dDJlNkJ0dmhtM0UwMUJBQUlRZ0VCZkFnanNmY254SEFRZ0FJSDVFTGlKcEpPS0tNRHRFb1prb2FYdXZmODdrdndqNlhNSmJiaktFVVVFOThFMWRYTkVmWTVwRCtNaHB3cnNmeXJwYUVsNzFjenpaMFVFNnEwbC9VY0NMd1QyQkVoVVNTYUF3SjZNS3FuaU9nbnNmbSszV0gycXBHOUZaaisxd0I2ekZGc016eUt6TGI5ODBEdlhZbUhkNy9ldktCS1pYak5oa0JiRGZDdnNMeHZxK2liWi9pR1hTUGtBSktGNTJSTE9uMDA3SjFUMlovcGpTamNZRWg2aFNpWUNDT3pEUWNadXdMUUp6aGJtSFF3eVJvbmRHUENOa2J0SStzSUluZjVPMHBua1dCaUJMRTFDQUFJUXlFZ0FnVDBqVEpxQ0FBUWdzQVFDZmgvM1ZYQmZIVzhyL2hIdkh5VVhpMVRzSXJJN3V0dVJoOVhQa2JZZlBXMWo5TjhkWGYveElrclFQdkhWTXRRZXh1MmxDdXl1ZXpWSkh3eGpxbzdseE9LSDFGMGwvYkpsVWdqc0thdE9uVlFDQ095cHBOTHFyWlBBbmpManFRWDJKd1U3bGFheERiMlZsREx2UG5Vc3JQdDJsM09WcElqWjdzT0M5ajNEQVljL2EvNmhwV1BuUWptOGg1M0xEb1d2L1d2Q1oxREszRHd1VzhmNFpnTVI3U25FaHRkQllCL09zSy9BUHJ6bmVBdXg3NUE1dnYrT09XN2FoZ0FFSUFDQmtRa2dzSThNbU9ZaEFBRUlqRXlnemlmY1VUVCtmLzRCWGk3KzhuLy80SGU3VTJSY3FYWXg5a2EzQ0g3Vm1uYUdYa3VPK2NuN2dNQis4UllJaHBRdUFydjdzVmppSy9sMW41bTIzTEZkUUZOQllPKzNXaGEzL2l6a0N2aTVwRTlKT3F0ZlUydjFGQUo3M3VWRVlOL0djd3dQZHI5bnZpRkVhamV0MnN2Q2phaXVrZHg1ZDhMNXJkbDI3UjVCSEw5S2gwN3F4SEpIdnI5VjBtVWEydW1iQU5YdmtUNWNmMzV4aVBFbmllUDhVVGp3K0tmQ1F1WlhpYzhzdTVybjV0d3ZQdkIyNUwrVDVxNkNwUkFDKy9DZGc4QStuQ0V0UUFBQ0VJREFSQVFRMkNjQ1RUY1FnQUFFUmlKUUowYmJOL3lTa213ZFV5N2xKS2VPdm82SjdDbUpULzM1OFRwSkQ2aVpsNFhRdlh1S29aY294djIrd3Z2OFJqWHRma1hTN3VFSDloQ2NYUVYyLzdoL2RXU3VaMGk2WlV1UzJKakE3bVIwWFQxNHU4N2J5ZkRjZnpVcDNoaGlXdGV4TmRYM09yKzJ4bzdCUXRKVGUwUjc1aHhiVzFzKzJMcEZCOEdycmIzcTMyOVkzRVI1Zk0xRDU0UUkxVzkwYmJCbmZZdHp0cWJLblVqUkNTRHZWek1ta3B6MlhLaktZMU5Hc0RzUnRtODYzYnhsNkxuZTI0Y1N1cktrdncyNVNpeXlweFlua3ZWbm9lZFJWeXdNdjEzU0RSb2E5Q0dpN1hTY2dMenJRWU1QSW4yUTRmZUcxR0xMQ1I5V08xbXJQN1BuR05YdTd4bjJ2UGZuYjluejNwK2R6b1BpZzVrNWpudXhCZ2pzcWJzeFhnK0JmVGhEV29BQUJDQUFnWWtJSUxCUEJKcHVJQUFCQ0l4QUlDWkdQelJFREZxa0xKZnk5ZFhkZ3BCdEliNnVXR1MzOS9pM0c4WWRTMFJxb2U5V2tqN1dZODR4NnhrMzlZemkvM3Q2anphcmozUVYyUDM4dFFvUDNvOEdzYnJhM2t1S3c0UkRHMFNSbU1DZVlTcTltNWl6d0c1UndvbjVZaEdadGtWdzFLWkZsam1XbUNBd3g3RU9HZE5ZZXdpQlhmTEIzVmhsU29HOXllNnJQRDhMeXJjTmZ1Ump6VHZXcnQ5bi9Mbno5eDBGYXJkblVkeENydytiMjRSZVc3TzlOSEpRV3g1YjMwTkV6OE9IQXhiTVU2UFpGLzM2a013SFdCYXNmVWpRTnBlcDFzanplVkZEWi80c3Q3MU8xd09KcWNhUHdENmNOQUw3Y0lhMEFBRUlRQUFDRXhGQVlKOElOTjFBQUFJUUdJRkFuUmh0UWR6UjQ2OEswZDdsYnF2K2tIZVE5RFpKRjQyTTdlUVFQUmFMc202eWllbHo1YjhwdWFtVGlqb3ErRXNaT1BZUjJOMXQ3TG0yc1NHd3B5OWEwdzJHUlN1NXJJTFNSOVd0SmdKN04xN1YyZ2pzNnlPdzMwYlMreVAyV3RWMWYwNXhhUGJrWVZzbitXbGJxMXluRU1nZkhhTEd1d3JTN3NoaXVjZHJrVDIxdUYvZk9udGh6YTJpY2hzZkNJZmt0blBwV25ZTVNjaWRiTEZQOGNIbHU0T3RqZGR1V2JaY2RmWjMxZm0wZmZiMm1YL09aeERZaDlORVlCL09rQllnQUFFSVFHQWlBZ2pzRTRHbUd3aEFBQUtaQ2ZqNnVzVnhKMkFyRnd2YlRpcm5IOGhORWV5TForNFcycWxhaUN6KzdnU2ZybFAzSTdzcHdlcjNnaUQrclE3enZxNGtpL3AxVWZWdmtYUkFZWUhoNlBpaHBhL0Fmcm5DRHVaRHdSTzhPb2FtQXdVRTl2UVZzNVhFaHlYNXNLV3AyRDdtUWVuTlRsb1RnWDBZYmdUMjhRUjJmMjQ0S2ZhQk5VczB4bzBFQzlndlNOd09VOWpFWExQd0hYOWN5S3NSdTczVk5seC90dHFpNlQvYktqYjh2YzJYM2JlMUhJbmU5NWFPUDV2L1FwSjkxcnZZeGxTSHZNd0ljZHZsMlBhbXJUd21IRmkwMVZ2RzN4SFloMU5IWUIvT2tCWWdBQUVJUUdBaUFnanNFNEdtR3doQUFBS1pDVGlhMjFGdTI1WGFYVVQyMnBybDJFU0IzWjhERmh3T2F4aGZreVZIazZYTHdTSEtMMlhxVFdKOTdvamx2Z0s3NS9Fd1NhK29tVkRUZ1FJQ2U4b08yRlluSmtoVVcvREJ6NTFtbXFRUGdUMTl2ZXRxSXJDUEk3QmZJUWlXZTBhV0o3ZkE3a015SDR6NmdEYWxUR0VUczB2SUc5Q1VjRFEyVnVjdHNXVkp6R2M5Wlk3bE9yWWQrN2VhQTl1Y0ZsaU9tTGVZZjBTeEZqdDNIR0RPY1hUcytyenFzYy9wYWx0elBteU5mWjZkS3VuZiswQ0pQUE5Ya3Z5NVV5MVQ5WFBIb3YvM1pKeFB1U2tFOXBIQTBpd0VJQUFCQ09RbmdNQ2VueWt0UWdBQ0VCaWJnSyt6djFIU1BTb2RMWktMMmo4MVZXQjNFMjdQRWRnUGJoaDRMSkt0eWRMankrSEgvUThUZ0RRSkh4OEprZnEvVEdnbnBjb1FnZjN5UWFDcEV5dGlCd294Z2QzUitoWSs2b3F2OSs5ZitZT3RDRHoySDZkTU10UzVjRWg4K2VlVlozS0xhUjJHMUZnMTFWSmlySVNYT2VhQndONmZvbjJxMzFYY1pLa1RnVzNIWVJ1UjNDVW1ndVYrM3ltUE83Wkh4bnBkT29yWmVRMmN4RE5XY3ZmdDk4cFBGTjdlOW1HdkZ0dXJPSTlDOVhkSUgydXhydnNoZGtnYWErY1lTVThjR0xFZWE5c0prZDhjL09kZHArbkdXTmQ1bHV0YmFQZU5OdDhtMkRXaG9iSEdrZEQxSDZvNGw4d3JFeDU0UWt1QVFFSVRvMVZKUFRBZWJRQVROWXpBdmcxMDFZWnhJdngwQXdFSVFBQUNjeUdBd0Q2WGxXQWNFSUFBQk5JSk9Qbm9DVFVlcmd1QjkwODdDdXp1MlVLNUJaZzZZY3MrcHhiekhURmZWK3dwYTl1QnVtSmJsN1pyM3Y0c2NpS3pReUp0M0R0RVFxWVRhcTQ1UkdCM3kwNjArclNhTGhZSEhGVTduWmpBM2lRU3g0VG1yaXhpZXlHM21KWnJiWm9PTU1wOWRPV1FhM3dwN2NURTAvK1J0SStrbEFPbmxINm1xdk9Ya2l3eTJsNmtYTWJZUTdIOTZuN0hFdExXV1dEM2U2dmZnMjBWMHVZem5uczlZM1pQenVteG42U2pKRjIxc3FmNldJdDFmUjE0angwZGtuakhudjFkRUhlZlY5anBmS2RyQngzciszWGx6ejhMNEw0UjFwUll2R1BUVzZvdnJHTjhZODE5MVJWLzNqdVB5NmVIZGpidytTYkx1RVhUWnhjSDNuc1U0ejFsWUY5alBZN0FQcHdzRWV6REdkSUNCQ0FBQVFoTVJBQ0JmU0xRZEFNQkNFQWdFNEdZOTNwWm1PZ2pzSHQ0Rmp0OERYNm4wbGdkTFgzN0lvTDhzdzNqYjBwRzlwbncvRThhbm0rSytJMkoxa053RGhYWXUvN2c2eU93MjhMQUViUk94RmN1WGIzb0hjSHVnNWZ5bXJxOU15VlpQTElQc1NOSm43WEVaSGJWdFd5TE1KMURkR1hUL3BzNk9ubklheUhsMlNubmc4QXUzVmg1TEdMOFdXRWY3ME5URmxsU2JvRTlkaERwOXpWSHZMNUUwZ05xeGpiRjRWbWR4WnFINHFTaVp1WURpVjhsY3N0UnpZY2Z2cjFoY1h1cWN1bmd4Zi9ZNGdiYlpVdWQrbituK3VhUE9kYTJnM2Yzdld3Ym03YjVJN0MzRVdyL2U5ZnZXKzB0RHE4Uit3NUpCUHR3dHJRQUFRaEFZS1VKSUxDdjlQSXhlQWhBWUFNSjNGWFNPMXF1MXZjVjJJMXpOMG52QzhMck40TTF5Mmt0bk50K0NEZEZzY2ZzYmhaZGppRzJEQlhZbTBSQWk4T3ZxdkRxSTdESFBPa3R3RmdjK2xLR3ZWOU90RGNub2NKMkJyNFY4Y0thV3hvVzErOWJlT0U3Q25hdVpVcEJlZ29HVTg1bisrSTk2TGppdG95am42dkZYdDZPUE01ZDFqR0N2YzF2dlk1aFRvRzk2VDNTTmorMis3SElianVnYXZIbmp5MnlmcDE3b1V2dFZUOTNmQ1BzSDRyRFlCL28ybUp0N0dJeDNYdmNTYlA3SmpMTk5VYS8zOTZndUZuemlPSW1ta1gzZTBuS1pjYzJkSXhOaDBTdkQ1OFRVeDZFZEowUEFudFhZbHZySTdBUFowZ0xFSUFBQkNBd0VRRUU5b2xBMHcwRUlBQ0JEQVQ4NC9kNFNmYlRMWmZxTmVraEFydmJ2V2Z3K3ZZMS9xOG5qcnZwT25lVEYzdk03c2JkanVXQlBGUmc5OWdjNWZpa0dqWnZDZ0t3RS9ZdFNoK0IzYy9HRXNnK28vaWpvMFA3bHBpQUhmUFo3OXZQME9mc0YyMUxGZi9BUGtQU3V5VjliaUlCYk1qWXB4U2toNHd6OWRrcDU5T1VFUGorNFlaTjZyaFQ2L2s5eUlsVnErV1R3VjVsREFGdlROdWQ4c0ZaS2dQWHl5bXd4L1pNT1pIcGxRcWJsby9YMk1STVpmdmhOZkFOSVgrbVZtMjl1bkRyV3RkMmJJNlF2M3M0TUhMdUU5OG9vdFFUOEc5VjM4QzZjMkUzNThTdy9rN2k1TEJmSzZ6YXlwK3pjK1FYRTlqOW5wSnp6ZTNsNzBPYmFwbXFIenpZdDVFbmduMk9yMExHQkFFSVFHQkNBZ2pzRThLbUt3aEFBQUlEQ2NTc002b1JmME1GZGd1d0YrZ1lXUmVMdUY1TTJSWWtUNjM4SUk0ZEdQZ1ovM0JlQ0JBRHNXMTVQSWZBN3BzRTlxeXZsbzhGVWZnWHBULzBGZGhqQ1dTSCtCVDdSN2dURE5aWk05aDMySWNxZGZQS3ZRYnIzTjZVZ3ZRVUhLZWNUNVBBUHNWY2w5M0hFSkc3NmVaSHlyeUc5RjF0UC9ZZWEzL3hteFVKdGYwZTVzK00xMFhlaTE1YjNGTHg1OTA1S1FOZm9UcCtUN2ZOVjluLzNBZlFGbzlURDdOWGFMb2JQOVNZd0o0N24wVHM5VFpWUHdqczI3WTZBdnZHditRQkFBRUliRG9CQlBaTjN3SE1Id0lRV0JVQ2p0ejZhR0UvWWdHcVhDeEVPOHJYVjl3WFphakEzcGZKTGtYQ3NaTUtBZGYrNGRWaWF4TkhWdjVIK0lNL2Yvemp6M1lCZGVYWUlQYU9ZUk9RUTJEM0xRSkgyS2NrZnV3cnNKdEx6TWU0encvbnEwbDZlN0FEaUszeFhCTGM5ZDJEYzNodVNrRjZpdmxPT1o5clMvSWhsU015TjdIMEZibk42NVVoR1hVVE4rZlNlR05JcWxtdDE3ZnZhanV4ZzBIWHM2M0hBMHNIcmJGYk9qbXRzTWJjUnplUzVKczIxV0xSdkdxdDVqV3l2ZHV0YXVvNzE0bHZqdGt5WnN6aXoyWkg2eS9ibG1iTU9jNnBiUVQyNGF1QlJjeHdoclFBQVFoQUFBSVRFVUJnbndnMDNVQUFBaEFZUU9CQ2hUZnFrU0dpcjlwTW5ZM0tzZ1IyZjZZOHM0ZzZmRXBrcms2ZzZzaHYrN3VXdmQ2cjFjZU9Bc29oc085WVJDSGFRc0kyQitWU04vWWhBbnZzME1LV0tiZE1qSHIwdXR3aENHc1hiOW1IcDBqYXY0Z3FQWDNBZnQzMFI2Y1VwS2RnUGVWOG1oSWVUekhYWmZmUlIrUzIxY2xiaThqb25Wc0diLzk2MjVFNGd0eDJTOVhTcCsrNkxtOGo2ZjAxZVVKYzkwNlZ2bVBKbkYzWFNWQ2RvSFhPTmlDMkZycGZEWVM2QTlEZGc3V0pFMHZYRll2ZUQ1SjAxQWh6OXUwR0o3UCt4OEtTNTU4TGU1SkhJYkpQOGxKSFlCK09HWUY5T0VOYWdBQUVJQUNCaVFnZ3NFOEVtbTRnQUFFSURDRGc2N2ZIMUNSOGpObW9MRXRnOXhRZHplY29QRWZjMXhXTDIwNm82ZVIyVHRaWlYrcnNaQWJnMi9Kb0RvRTlKcHJiMHNBUmlvN0NYWlFoQW51VDlVNktBT1VJZXg5NlBMWUZvTzFobkhqUWJZNXhheURuK3MyOXJTa0Y2U2xZVERtZkpuRjJpcmt1dTQ4dUlyZEZVL3ZTTzNMZFNUdWJ5b3ZDNjl1djdaam8xNlh2V0Y5TjcxZGZMVzQ0N1NIcEI1V0hZN2QwSE5YdCtvNEduNnI0d05TSmxEOGZoR2pmeVBwTlErZGRCSFkzczJzNFlLaUxlbDkwOC9mRnphakRNZ3JnUGxUMUFYMzVJR0J1K1RhbVd0K3ArMEZnSDA0Y2dYMDRRMXFBQUFRZ0FJR0pDQ0N3VHdTYWJpQUFBUWdNSUJBVElHSkpRSmNwc0h1YU1hOTQvODBSM2w4S0VleDFTSm9Tb2c1QStFZVA1aERZdHkvbWNKeWttOWNNcXVwSE9rUmdkL05OUHpCdHUvT3BDSmcvQzVHdEZuV2Fpb1V2MnhOOElSZmdEVzluU2tGNkN0UlR6aWNtU0UweHp6bjBrU3B5MTRtbWRlUDN3ZGtoa2w1V2lvb2VVMkJ2c2duekdBNnVpYzV1U3BDZGNvaVljOTM4M3UzRDMwVXh2dzhVMW15dkt0NkgzMU1qZW5jVjJOMnVENS85MmVIRW5iSGkvaHk5UC9TdzA1Wkx2cmxRdmQxQXZvMmN1eWJlRmdMN2NNNEk3TU1aMGdJRUlBQUJDRXhFQUlGOUl0QjBBd0VJUUdBQWdUb0J3aitRN1Y5cjI1VnFXYmJBN3Y3OW8zNnZqblAybk80U3NTL28yRlJqOVJ3Q2U0eXhPODR0c05zaXlGR3FCOWJNcW15N3MvaHpsOGhXUnpZK1VkS3ZjZ0xlOExhbUZLU25RRDNsZkdLdnpmK1U1SnN0VGRIRWZWazRuOExqYXg0ZXM4OXJodm40dFYwdUtRSjdxaVdNZmN6dkVRVGljaDlqQ3V5eHcrQ3pRelM2TGFpcXhReHNpM0t2bXI5TjdjVitSRGdFcUE3Rmd2amRhdlpmSDRIZGJkdGl6TGZTYnRDd2FlM1hic3NZZTZiM0tmNk45N2dRRFYvM1BQazIrbER0OWd3Q2V6ZGVkYlVSMkljenBBVUlRQUFDRUppSUFBTDdSS0RwQmdJUWdNQUFBblVDaEpOVjNpZHlqWHpaQXJ1bmV2MWdGUlB6bTYzRFlSSFpFWTYyV1JtejVCRFlZMUhwSG5kdWdkMXRObmxUMi83bEJRR1loUnRIaW5vTVRlVWJRYkQzTFFoS1hnSlRDdEo1UjE3ZjJwVHo2U3B3NXBoL1RBU0wzUkRLMFdjZnBnc2Y3ZWNuV01MNFZvcnpYVlFUYlhyc1l3bnNWNWQwY2sxZUN2ZjV2bkI0R292SXRsMllJOFczcTRIcnhLZ1B5V2laRWx1L0pqOTRmeTY5dE9iQnZnSzdtN3FDcExjMVdLVzVqbm51Vjl3SyszN1BUV2ZySUg4ZTJIdS9ybnduZkZaOHJtZjdQTlpNQUlGOStBNUJZQi9Pa0JZZ0FBRUlRR0FpQWdqc0U0R21Hd2hBQUFJRENUaGEzVkYwZnQ5MjVKbXRRZjRqMHVZY0JIWVA3VEdTTEFhbGxDbXNZUmJqeUNHdysrcTlmZFozcUpuY0dBSzcxOTAreXJaN3FCYnZoMzBrV2VDeXYvMUZXNEMvb29qRWRCSytuNmNzREhVNkUrZ2pubmJ1Wk1JSHBwcVBEeExmRWlLRnE5UDcxK0EzUHNhMFYwVmdieE5MRjJ5Y1lQVGVSU0xMTXlPd3hoTFlZOUhySG9iSDQ3V05GZWVLY0VUMzNqVVZtbTVyNWR3UE1mLy9waWo2SVFLN3grN1BEMGVxTzI5SHJIdzJIRTU4dCtka0x5SHBuWVZZdjJmaythK0YyMmJmN3RrK2o4VUpJTEFQM3gwSTdNTVowZ0lFSUFBQkNFeEVBSUY5SXRCMEF3RUlRR0FnZ2NzWFYreWRjTTFlcW0xSlFPY2lzS2NLUWxOZlZjOGhzRmU5ZWhmTG16dkphWG5iMkx2M280VWZzS1BuK3hSSEt6NUEwb2RyZkpEN3RNY3o5UVNtRXFTbjRqL1ZmQzRseWVKd25XMkdENFNjK0hHTXNpb0N1K2QrYVVuSFM3S3RUVjBwSnpPTnNScERZRzk2Yi9wTWtTZmk5c1h0cEorMExGNzVFTGxhTmJXTklmc2pkbnVpS2ZwK3FNRHU4Vm9BOStHRDV4OHJQa3ozQVVEZG9jbE5pOFAyTzRVSWU3L0gxNVdyQmp1NW1PKzdFN3ZhQXFldkhjMFE3dXY4TEFMNzhOVkZZQi9Pa0JZZ0FBRUlRR0FpQWdqc0U0R21Hd2hBQUFJWkNEdzcvSkIyOVBvUEc5cWJpOER1SVRycG5hKzVXenlMRlNkMGUvaUVvdTlRZ2QwSEIyOE0vc2JWT1ZrQWNlTFRzalhEMENTbjVUNmFFc2cyYlRHaTFqTzhBQk9ibUVxUVRoek80R3BUemVjYVJTVHR4NE4xUm5YUTl3MnZ1Y0dUcVdsZ2xRUjJEMyszWUxsU3R0OXlsUGVqZzhoNmJndWszQUo3MCswYUQ4WHY3YmIvYWl0TlVleCsxdS9iaDQvME9kSEhIc1pqeWlHd3U1MG1rZDBIMEhlUTlJa0l3UEo2K2lEQ2pIemJyWnBYbzI3ZmxKdjA3YWVESnJEaWFkc0g2L1QzVFVuYVhMMjFsM01OeHhEWS9SM083NWx0NzVXeGVjUytRLzV2WVkxNHk4S0c2OVNjQUdnTEFoQ0FBQVJXaHdBQysrcXNGU09GQUFRZzRCL0kwU2ozOUFBQUZteEpSRUZVRmxVYzVkbFU1aUt3cDNqTUx1YnhwTUxhNUI4SC9PRHBzanVHQ096KzNMUW43cHNrWGFDbVUxL252MjFoNWZMVDB0OXlDdXdXb2V6YnUyL2loTzIxYnY5aW90WVRnV1dvTnBVZ25XR29TVTFNTlI4ZlRIbWZWaE4vMXQwS1NScDRZcVZWRTlnOUxSODRPREdvU3l5WmFXejZ1UVgyRzRWOEczWFdWRjJ0djV3WSs0VEllK3VZTjUxaTBmTjFCNlpscnJrRWRyZFpKN0tuek5rSEs0c2NISXV4V1R4OGNUaVVLT2MwdWFla053ZXJ1YnI5TWVZaFJ1TExjYTJxSWJBUFg4NmNBdnZpKzV2M3VRK3R6dWc1UEFUMm51QjREQUlRZ01DNkUwQmdYL2NWWm40UWdNQW1FcGlEd0g2MUlucmRpVmpyN0I1aWEyS1I0SWtUUk5ERmZodzlTSktUaEg2bDhEVC9kTEEwK0dVWXJCTU1lazVPS09vbzhsZzVzcmpHLzZqS0gzTUs3RzdhdHdKc0YrU295NmJpcEh4UHhtdDk4cmVBcVFUcHFTWTIxWHdlR29sMGRvTEhtMG42NWtnVFhrV0JmV0cvNWVTZ3NXU21NVnc1QlhaLzFod2RQTHpyK2t1TlhsODgyM1E3eUhYR3NETHhiNkhYQmZ1czZoeHMzWEpBUStMdG5BSzcreTc3cGY4NFdPdjQwTGFwK0hEYXQ5dXE1YldTL0psV0xtMjJiUmJtZllCc3ozYktjQUlJN01NWjVoTFkvZDNPTmxCM2tmVGZ4VUhlalJIWWh5OE9MVUFBQWhDQXdCOFRRR0JuUjBBQUFoQllQd0xMRnRqdEQrd2Y2RmZ1Z2ZZTlFjQ3VYbS92MFZUMGtaakFiZy9hL1NOSkZsUDZ0empoUkhJV3Y4c2x0OER1dHRzaUVmK2hzRko0MmtoMkNpa3NOcm5PVklMMFZJeW5tRStUeUZsM0t5VG4zRmRSWVBmOExaYWEyOWtkWWVRVTJKc3NxL3I2cHNmMjIyS2FMeW04d2cvTitON201TkMyTWJ0U0RjZTI1S3k1QlhZUHdTSzdvODg5ejg4bHJHM1hNYlFsUFUySm1rOFlGbFVLcXhBRTl1SGJZS2pBN3VBSWYxOHFKNEFmYXVWQ0JQdndkYVVGQ0VBQUFtdEpBSUY5TFplVlNVRUFBaHRPWUZrQ3V6OVQvSVBTVjlEcjdBSlNsOFdDMmoyS2lNTFRVeC9vV0svSkl1YmlraXp5OXltTzJMOVBUUVQrR0FKN1NpVGlJWkplbGxHSTZzTmtFNStaUXBDZWt1c1U4Mm55d0xZZGt5MVJmai9TcEZkVllPK0xJNWZBZnYxZ0RWUDJnbCtNeVllTmpoUjlkNDlCK25Qa21VWFUrRk1peithT3NuNWtrVHpXTjQrcTVhdkZZZWtlaFlmOER4cm0wRlhjN29HajhaR0xTWHBYT05pdFZtenl4VzVMZXRyVjJpZjN2TmFsUFFUMjRTczVSR0MvVG5IejhQVTFTYUVSMklldkN5MUFBQUlRZ0VBTkFRUjJ0Z1VFSUFDQjlTT3dESUhkM3VBV1JXeWgwbFQ4dzhiKzVIWFJndVhuZmg3RTZ2ZU9JS3cxQ2V5K091eG94dTA3Ymd0ZjU3Y1lZMkdpV3NZUTJOMUhXeVNpNnp3ajJBZjh0dU44cU42ZndCU0NkUC9SZFg5eWl2bkUvTmM5MnNkSWVtSDNZU2MvZ2NDK0RWVVgyNFMyOTU3WVlXUHFvdGpPNFVSSk8wY2V5QlZsN1htOFQ1Sjk1S3ZGaDVNSHQzeitMRnRnZC9KdzUyU3BXckdsQ0lpK3NlVjhIblc1Uk15Q3BLZXB1elZlTC9iZTRrUERZNFkzLzRjV2ZKamwyM2ZWTWxVL2MwdHk2dStqZnUwK0s5ejBxVU85VC9HNlA3N25HaERCM2hNY2owRUFBaEJZZHdJSTdPdSt3c3dQQWhEWVJBSlRDK3oySnZjUHVadTB3RjRrNDNOa29IOWNwdml6UDEvU1U0dGtiYi9PdUpCTkF2dkhJb0pGVS9kdFhybTVCSFpmZFhaeTArOFdOd1ZPRFFOcWkwUjB0U2xzZHpJdXo4bzNOWVVnUFNXa0tlYno5R0JwVkozWDJBbE8zUjhDK3picXFRSjdXNFI1MDJGamwzM2JKZ0IvTFhpL2Y3dExvNVc2c2VTbXR0M3hnZWtwTFcwdlcyQy9Sc0hnNDBYdUFpY1VMNWZ2Qlk5cGYxYkVpdGZ4Y1pJT2E2aEQwdE1CbTZ2aHZlVUpMZHk3OWhyN1RqTlZQM01SMkwybmJ5WHAxVVVTNkd1MlFQVDdpL05IOUNrSTdIMm84UXdFSUFDQkRTQ0F3TDRCaTh3VUlRQ0JqU013bGNEdXp4QjdXenFaV3BzbGpNWDFPMGo2UkZnTlJ5aW1pdXpma0dRdlhIdjY1aWhOQXZ0N2lrU24veVRwd01TT0hLbjU2Q0I2eHg0WktyQ2JzNU1aMnBOMzE1cUkzdDFDRkdhZFZjTmlURDdVNkpvTU1SRUIxU29FcGhDa3A0USs5bnlhb29pZDJQU21MVFlkUTFrZ3NHOGptQ3F3dHduZnZzWGtoTlZEUzVzTmx0djNiU01uNVhRaTNLN2xRb1VJZDVTa2U5VTg2S2gyUndXM0hld3VXMkNQM2Z6d1FiRWpkSC9SQXFVdFNXMXVPNTZ1YTdUcTlXUHZMVk1KMzFQMU13ZUIzZlorVHZacnk2ZTI0aHQ5OXl0dXlEaUpjWitDd042SEdzOUFBQUlRMkFBQ0NPd2JzTWhNRVFJUTJEZ0NVd2pzanBoN2VSQWgyZ0IvUjVKL2dGVVR0cmtOWDFHM2VKeFNYbHI0bXorNUVMUnRIek9rdEFuczk1ZjB1c2pWK1IrRlF3SUw4ZjlXWEVQK1NjSkErZ3JzL296K0MwbXZDdEdJaTY3cWZqUmJoTFNkVHBQSTdoK1ZUa3BvVWVqY2hIRlRwUitCc1FYcGZxUHEvOVRZOC9ITkZ5Y0czcTVtaUJaQURpajh1QjNKUGxaQllOOUdOa1ZnYnp2TXM2MkxEL0orbVdteFVtN29mRmpTM1NXZDJiSFA2d2FCdnU0OXN5MjU2YUtyWlF2c3p2bFJsek9rUzk2Q0pzYTJtdkZoODF0SHNHcnJ1RndyV1IyQmZmaXl0WG13KzN1bEQ5bGVXVmlKV1dSdks4NExjVkJMVUVSYkd3anNiWVQ0T3dRZ0FJRU5KWURBdnFFTHo3UWhBSUcxSmpDbXdHNmJraTQvWnV4SmZ1Y2lTZUhYSThRZHZlcUljUXNrS2NYaXVrVmlDL045UmVJMmdUMWxIRjNxOUJIWW5aenJ4Y0VDb2RwWExDcnROcEljVWQ4a3NydXRIRDh3dTh4LzArcU9MVWhQelhQTStmaDdxQk5NV3ZDb0swNXUrc2FSSjR6QXZnMXdtOERlSm5ibnNvYXBMdmRleFFIakNRMWU0YTdmTlpLOWFkK2xKRGRkakhIWkF2c1J3V3U2eXN3SDBjL3A4THFwdTVYQXJhY09BSmRjZFNxTG1HVk1zMGxnZjBUNDdMaGh3c0J5ZkhkY2RJUEFuZ0NjS2hDQUFBUTJrUUFDK3lhdU9uT0dBQVRXbmNCWUFydEYzOWNYa2RJcFAyYk0yUDZXRDA2SUxMUVZ3SE9EOVVucTJqaHE2WkFnclB3KzlhRlFiODRDZTVPd3ZwaW1CY2xIUmVhY0tySTdtdjBwUWR4c3MwSG9pSGZqcTQ4cFNDOEQ3cGp6dVhwNERkY2xQYmJ0eDgyS3EveTJpUm16SUxCdm85c2tzRnRjOXcyWlhTSUxNYWFWU0lwWHVJZlZkcGhiSHZxMUpIMjB1QjNrdzg5cWNXSm81d1JJS2Jha2VGSk5SWXZiRnJuSExMSFBlZmZaTllGajFWZmZuL08yMnZqVm1CT2c3V3dFMWxsZzkzY2FKL0lkb2xuOGF6aUlHbnI3Y2JGZ0NPelp0aTROUVFBQ0VGZ3ZBa00rck5hTEJMT0JBQVFnc0Q0RWNndnNYYnd0RnhTN0ppZjE1NUd0SUJ6TmJzRTl0WHhTMHQ4V2dzS25PMXhobjV2QXZyQ0NNVE5IYTdZVi8xaTBqVTJzMktmZFVlcFhibXNvaUdwT2RQZk9BVGNDRXJyWnFDcGpDdExMQURubWZDemkrY0Nvcm5oUDJoOTdUSHNZOTdzTWdUM21uZDBXUlo1ai9XUHpqZldkWXVWbGU0YURSMXlyRkQ5MnM3RWRtYU94bS9KMU5DVnBkYTRRVzVaOUtSRjA3TE1rMWNNOXNadmFhckhJZmx2bGVIK2QxckZ4M3lielo4dTdzQkhyU0c3NTFkZFpZSDlvc0gvcFE5bjVleDRpeVRaU1hRTXhtdnBEWU8rekdqd0RBUWhBWUFNSUlMQnZ3Q0l6UlFoQVlPTUk1QkxZdTlyQkdMUTlXKzFmYTQveVBqOW9IQjMvNWlMNTNEVTdycHFGOXNkSStsU0NVRHkxd0g1dFNVNDZ0ME5sVHZiSmZWbElDSGpqeFBrNkFzc1dNYTlwRWJPdUZ1eGlicERZcnUwQTNPNnhDZndTbTl6WWFqRkIya0RPR0ZHRUhBdjRoWXQ5ZXRtYXhvZUt3WmNQM3VzN1J3YWU2b005ZE43TEVOaGpvdEZRcGlrc3VnanNLZUw2QjRPb2ZWWks1d1BxV0FEMm9jdWVMVzM0ZG80VHJmcTl0YzVHckNsNnZhdm5mOHdEZmN5SWZrL2Zjeml1c0UvYXFZYkZSeVR0MjlNSDM0bGZ4ejdRR3JBRmVEUkNZRjBGZHU5SHZ5WjlhTmExK09EMmlTUGR3a0JnNzdvYTFJY0FCQ0N3SVFRUTJEZGtvWmttQkNDd1VRU0dDdXorYkxpVnBGZDNGTHBQa2JTL3BOTUgwcllRN1lqSWUvUm94eEZMdGo2eEVHT2hwYTVNTGJESG9sVzdUTS9DK2xORGhIL3F0ZjArSEMzdy9YMFE1N0dPNmJKQzU5ZHRFdGo3dFRqUHA0YUt3YkhYb1dmYnhRZDdLSjJwQlhZTHhUNkFyRXZ1UEpScENvdFVnWDFIU2NjVWgyNU5oM1JmQzdkdXZwM1NjWVk2YlQ3dzVTNDhkbnMwMjJxb1hHNFg4bHY4ZWVYZmZTQnNheFg3dmFlV3B0ZTZENXNmSHZLRi9DYTF3Wlo2M2p2T1YvTENob1NPWFN4dU1nMkxacFpNWUYwRjlxWkV4REhrL2c3b3c5bW1XeXhEbHd1QmZTaEJub2NBQkNDd3BnUVEyTmQwWVprV0JDQ3cwUVQ2Q3V6K1ROZ3RXRGFrK3F3dlFEOU4wdUdTY29teWpwNi9aNGpVdm1pUDFmUTQvQ09vem41aWFvSGRmcjdtMDZkNEhuN2UwWmlwd25xNUgzTzBEWWNGbVF0MEdNQVBKZDFXMHVjN1BFUFZiUVFRMk50M1FsTVVzWitlVWlUc0k3RDdkZlYvdzQyZDl0bWVYOE9pdFYvTGQ0dzg5SlhDem1EMzRqWHJoS0ZqbFJTQjNiZHVmSnZsR2cyRHNKM0szc0dlYTZ5eDFyVnJ3Zjk0U1pkSjZOUUhrN2FJY0ZMczZvMHFXMmpaWHN3aStFV0tRK1Ura2Q4V3ZHMEhjNk9Xc2Z5MFowUjV1Vm5mSm1pelQ3T29mOHZDOXVqVUJEWlVXUjhDNnlpd2U2ODd5T01CSFpZcDkvZlFXTmNJN0IwV2hhb1FnQUFFTm9rQUF2c21yVFp6aFFBRU5vVkFWNEY5SWF5L3VJamVTN1VxV2JBY08xcklncFFUcnJYWkFsVFgxZ252N2lDcExySnlTb0c5VFVpTTdVbEgzNzlFMGo5SXlwR1lxNHYxanZ1Mjk3V1QxRks2RTBCZ2IyYm05NXNYaFNURmRUVXRMdThSa2xaMnA5LzlpVDRDdThWZEM3Sk9TdXhpU3hEYi8vaS9pL0kva3I0US9zZmxpa1I5TjQxWTdaUkhQSVh2Zkp2QWJuSDlyUzBDOXJMZkkzd1FiR0g3a2kzTG5XTFZZaUhQbnhXMnVMRlhjOWZ5TUVtdjZQclFTUFhIOXNJZmFkZzBPNURBdWduc3RvYXhaWjIvLzZRVUo3MjNYWk1QS0tjb0NPeFRVS1lQQ0VBQUFpdElBSUY5QlJlTklVTUFBaEJvSVpBcXNBOFIxajJFcWFLRnVuckJ0OWtXVENXd3Azb0dWNWZUSXNremcyQ1hjN05mcklpNmZXNUlSaGhyTjBXUXlqbW1kV3dMZ2IxNVZXUEpHUmRQK1dEcDBKNDVIUHJzcHo0Qyt4QnY0S1l4T2xIb1MvdE1vc016c2ZsK3IvRDJma054VThaSmo1dHV1OHpsUGFJdGt0M2pQREFrN095VER5UVZxVDl2ZlJpWmtxQTZ0YzArOWFieXd1OHpOcDRabDhDNkNleW1kZC9Db3ZDb0JHeFRmUTh0RHdXQlBXRmhxQUlCQ0VCZ0V3a2dzRy9pcWpObkNFQmczUW1rQ3V5TzNMTmR3WU03QXJHM3BhL3RUaFV0dEJqZXhZc3I4czhPbGlleElhZllGa3dsc0R2UnFFV1BKcHVGOGp5Y3FOV0MwTmhjYlVIeDJvaS92dG5ZNm1kTVFhcmpkbHU1NmpHQi9XeEo3K2hwOWJOTUNFNXdlcWZDdHFYNm5iR1BYN2dqdVQ5VWVQenZFcG5RMU5IckhrWWZnZDNQUFNtOEgrVmFHd3ZjOW1YL1ZxNEdJKzAwUmJBZkl1bWZHeUxEcHhLdFV4SHNLdW5keGZ1WjdWNnFaY3Izc3BSa3NLbHo2bFBQbnpNV0pLdCs4MzNhNHBuVkk3Q09BbnZiOTFQbjZiQ040T0tXMEpTcmhzQStKVzM2Z2dBRUlMQkNCQkRZVjJpeEdDb0VJQUNCUkFLcEFydWI2eEpsYmFzU1g0ZTNuKzI1aVdNWm81cHRHV3diVStjVGYwQ0l3bXpxZHlxQjNXTzRXK0RWRkJGcW14MzdCTnVlWUNwaDI1N0RqcFo5VnNuWDl6V1NEbXBJRGp2R1dxNWptekdCdlk4Z1BRYytPZWZUSnBwNFB6cVo3MVN2QS9QdEs3RGZOU1JUenJWR2o1WDBnbHlOTmJUVFpoRmpLeHUveDFmZnN5eXVXNEQzb2V5VTY5T0d4QWVaYjY4a1kxM0dlNW5mVTUzdnd2a0QvSDlQVWZ6WjRZTWVXd3N0OHpONWlyblNSNXpBT2dyc25tMHNxZkh6dytkRXJwdy9YZmNXQW50WFl0U0hBQVFnc0NFRUVOZzNaS0daSmdRZ3NGRUV1Z2pzVFQ5aXl0QnNXL0RrVEg3Z09SWmpZUnRqT3dsSDJMcWtpaXBUQ3V6K25MWGx3bUUxazdhUDhWTkNJdFpsL1ZDOGRERXVKMUg5c3lKeWZyL2dRNXhqZlRhNWpaeUM5Qnc0NXA1UDdGRFBFWW0yMmZqdXhKUHVLN0RudEFLeXNQN0VpUTYzMmdSMlIwRlgzN1BtRnJsZTNTSTdoUGQvSDNvczJ5ckZoMGpYazNUcjRyRFhPVGo4V2VXOTRqRU9LZjh1eWNtbmYxTWtvUDZFSk45NGNvNlJPUjEyREprZnovWW5zSzRDdTRrNElmUXg0Y0RQQjBxKzVlZjhGOHNzQ096THBFL2ZFSUFBQkdaTUFJRjl4b3ZEMENBQUFRajBKTkJWWUsvK2lDbDM2eDgyajVuQXRxRG5WTStMRkh4UWlCUzNRR3dCb3ExTUtiQjdMSFdDNGltUzlpK3NkazV2R3l4L1h6a0N1UVhwWlFNWVl6N1YxNFJGd251SDVKcFR6N2V2d0g3RklISmVaY0NBZmFqZ1d5TlQzbDVwRTlpZHJMVjgwOEFIZ1U0Z2FIdWpPWXU1SHJOdFVteEJWSmZjZXNBeThTZ0VaazFnblFWMmF4VU9BdkJORmQrNnk1SDBmZWhpSXJBUEpjanpFSUFBQk5hVUFBTDdtaTRzMDRJQUJEYWFRQitCM1o4SEx3b1dBSVpubjNVTDExK2N1YWpTWjZHbkZ0Zzl4dkpWNTFlRkpJN0xpbHJ2dzR4bjBnbU1JVWluOTU2LzVsanpLYjhtYlBsa215U0x1Vk9YQzB1NlZFMm45c3cvcytIOXo0bE9iMTRrSmIxTTVWbm5YSERrY3F4WXdQNXNZVTF6YWtoa1BMVm9uU0t3ZSt6MnkzOXI4Sm4vd05TTFFuOFFnRUF5Z1hVVzJKTWhURmdSZ1gxQzJIUUZBUWhBWUpVSUlMQ3YwbW94VmdoQUFBSnBCQ3dZT2RKbnAwcDFDN29XMFdOUjB4WlVuT0RTQ1RCUFhrTmhmWUZqR1FLNys3Wmx3RjhHU3hqOGN0UDI4aXJXY3FUZG9UVSt6QlpybnlmSmlYaFhxWXc1bjkwa3ZUQkVTQk4xUE0ydXVKS2ttOVIwOVN0Skowbmk0RythZGFBWENPUWljTzFJNHVndkY0bEFUOHZWQ2UzOGdZQ0RXTGF2NFdFckxYL09MK09nbU9XQkFBUWdBSUVaRUVCZ244RWlNQVFJUUFBQ0VKaVVRT3pIMFUrRHYrMmtnNkV6Q0d3NEFVZUNuN1BoREpnK0JDQUFBUWhBQUFJUWdBQUVJTERDQkJEWVYzanhHRG9FSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWdzandBQysvTFkwek1FSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWlzTUFFRTloVmVQSVlPQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDeXlPQXdMNDg5dlFNQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDSzB3QWdYMkZGNCtoUXdBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBd1BJSUlMQXZqejA5UXdBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBd0FvVFFHQmY0Y1ZqNkJDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUxBOEFnanN5Mk5QenhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUxEQ0JCRFlWM2p4R0RvRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFnc2p3QUMrL0xZMHpNRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFpc01BRUU5aFZlUElZT0FRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ3l5T0F3TDQ4OXZRTUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0swd0FnWDJGRjQraFF3QUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQXdQSUlJTEF2anowOVF3QUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQXdBb1RRR0JmNGNWajZCQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlMQThBZ2pzeTJOUHp4Q0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlMRENCQkRZVjNqeEdEb0VJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRZ3Nqd0FDKy9MWTB6TUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaXNNQUVFOWhWZVBJWU9BUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUN5eU9Bd0w0ODl2UU1BUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNLMHdBZ1gyRkY0K2hRd0FDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0F3UElJSUxBdmp6MDlRd0FDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0F3QW9UUUdCZjRjVmo2QkNBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJTEE4QWdqc3kyTlB6eENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJTERDQlA1L2lHNkdpTHY0RXY4QUFBQUFTVVZPUks1Q1lJST0iLz48L3N3aXRjaD48L2c+PC9nPjwvZz48ZyBkYXRhLWNlbGwtaWQ9InJ1biI+PGc+PHJlY3QgeD0iMTA5MyIgeT0iMTEzIiB3aWR0aD0iNDAwIiBoZWlnaHQ9Ijk1IiBmaWxsPSIjZWFmMmY4IiBzdHJva2U9IiMzMzU1NmYiIHN0cm9rZS13aWR0aD0iMiIgcG9pbnRlci1ldmVudHM9ImFsbCIgc3R5bGU9ImZpbGw6IGxpZ2h0LWRhcmsocmdiKDIzNCwgMjQyLCAyNDgpLCByZ2IoMjQsIDMxLCAzNikpOyBzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDUxLCA4NSwgMTExKSwgcmdiKDE0NCwgMTczLCAxOTUpKTsiLz48L2c+PGc+PGc+PHN3aXRjaD48Zm9yZWlnbk9iamVjdCBzdHlsZT0ib3ZlcmZsb3c6IHZpc2libGU7IHRleHQtYWxpZ246IGxlZnQ7IiBwb2ludGVyLWV2ZW50cz0ibm9uZSIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgcmVxdWlyZWRGZWF0dXJlcz0iaHR0cDovL3d3dy53My5vcmcvVFIvU1ZHMTEvZmVhdHVyZSNFeHRlbnNpYmlsaXR5Ij48ZGl2IHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiBzdHlsZT0iZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IHVuc2FmZSBjZW50ZXI7IGp1c3RpZnktY29udGVudDogdW5zYWZlIGNlbnRlcjsgd2lkdGg6IDM3NHB4OyBoZWlnaHQ6IDFweDsgcGFkZGluZy10b3A6IDE2MXB4OyBtYXJnaW4tbGVmdDogMTEwNnB4OyI+PGRpdiBzdHlsZT0iYm94LXNpemluZzogYm9yZGVyLWJveDsgZm9udC1zaXplOiAwOyB0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiAjMDAwMDAwOyAiPjxkaXYgc3R5bGU9ImRpc3BsYXk6IGlubGluZS1ibG9jazsgZm9udC1zaXplOiAyMHB4OyBmb250LWZhbWlseTogJnF1b3Q7TWljcm9zb2Z0IFlhSGVpJnF1b3Q7OyBjb2xvcjogbGlnaHQtZGFyaygjMDAwMDAwLCAjZmZmZmZmKTsgbGluZS1oZWlnaHQ6IDEuMjsgcG9pbnRlci1ldmVudHM6IGFsbDsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd29yZC13cmFwOiBub3JtYWw7ICI+UnVuIC8gUmVjaXBlIC8gT3BlblRBUDxiciAvPjEyMCBEVVRDb250ZXh0IMK3IOmAu+i+keiDveWKmzwvZGl2PjwvZGl2PjwvZGl2PjwvZm9yZWlnbk9iamVjdD48aW1hZ2UgeD0iMTEwNiIgeT0iMTM3LjUiIHdpZHRoPSIzNzQiIGhlaWdodD0iNTMiIHhsaW5rOmhyZWY9ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFCZGdBQUFEVUNBWUFBQUNQdFVIVUFBQUFBWE5TUjBJQXJzNGM2UUFBSUFCSlJFRlVlRjdzblFuNE5qVjU3dStqbGtQMXFJQnJpN2piZ3REYWVuQkZCZHhROUdqZEZVV3RDdTY0WXF0eXhGMHBpa1hjdDh0V2NCY3JiZ2d1Vk1IZFZsc0JkOFY5dDI3Vld1MDVjOWRNTzd6ZkpFK1NTV1o3NzF4WHI4L3l6MlNTWHpKNWt6dFBudWQvUUVrRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSQ0Nad1A5SWZrSVBpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSVFBSzdCb0VJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSVpCQ1F3SjRCVFkrSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQVIyalFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJ5Q0FnZ1QwRG1oNFJBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVFuc0dnTWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpa0VGQUFuc0dORDBpQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FoTFlOUVpFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRUlJT0FCUFlNYUhwRUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCQ1N3YXd5SWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlRQVlCQ2V3WjBQU0lDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0VoZzF4Z1FBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRZ1F3Q0V0Z3pvT2tSRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVaREFyakVnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0Foa0VKTEJuUU5NaklpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUNCWFdOQUJFUkFCRVJBQkVSQUJFU2dKSUhmQWJBYmdBc0ErQkdBWDVZc1hHV0pnQWlJZ0FpSWdBaUlnQWlJZ0FpSXdKd0lTR0NmVTIrb0xpSWdBaUlnQWlJZ0FpS3dYQUsvMjFUOWlRQWU3Y1QxdGlVdkEvQVhBSDY0M0thcDVpSWdBaUlnQWlJZ0FpSWdBaUlnQWlMUVQwQUN1MGFHQ0lpQUNJaUFDSWlBQ0lqQVVBSzBXbjgrZ01NOEJiMEh3QjBBL0hqb2kvUzhDSWpBZnhMWXBmbm1MZ1ZnYndBWEFuQmxBRmQxYkw3VmZHLy9ET0RYQU00RzhEMEEveUp1SWlBQ0lpQUNJaUFDSWlBQ2RRaElZSy9EVmFXS2dBZ01JL0FuQUI0MHJJai9lcHF1Q1Q0QzROOEEvTVJ0Tkw4TDROOExsYTlpUktBV2dVc0FlQXlBWFh0ZThITUF4d0g0V3EyWEI4cTlZaU9TUGdJQXJaV0hKb28vbjNDaUs3L1Jmd0x3SGJrVUdZcDFrdWR2RCtDTkFFSnJ5eWMxTmFPRnU1SUkxQ1J3R3dDMzlyemdMQUIvVS9QbGxjcStJSUEvYU9iTC85UE1rL3pXcmdtQWgxb3BpZXVlOXdONERZQzN1YmsyNVhubEZZRXhDZXdNNEtFQXJqYm1TelBmOVhrQUp4UmF1L3lldXdWMjBVQmRYZ3JnWTVsMUhmcFl5WDc1QW9BdnVRcDlCZ0FQQm5uVDdmOE5yYVNlRndFUkVJRXBDRWhnbjRLNjNpa0NJbUFSNEFieUZDdlR3TCtmQitBdEFPaTY0QndBdnhsWW5oNFhnZElFN3VxRWtMNXkzd1hnZG8zYmpWK1VmbWxFZWYvYmlUUVhqc2libTRXSFlPOEV3RTNrUjNVZ2xvdHgxT2M0bDk3WGVPT1pUWDhlRE9Dbm85Wk1MOXNtQWhjSHdQbnhPajJOcG1qRDhYZnFnb0RzMFZpZVB4ekFmWnpGZXNtcWY3R3hmSDlxWXdIL0JnQTh0RlVTZ1RrUitGL3VJR2ovT1ZYS1U1ZS9kNGQ2UHl0UTE0YzRzVDVVMUdzQkhPcHVxQlI0WlZJUnRmdmxQeHFXSHdmd2VnQnZBc0Q5bWdUM3BDNVNaaEVRZ2FrSVNHQ2ZpcnplS3dJaUVDSXdoc0RlZlQrdlR2K2xFek9uRUN3MUdrUmdrd0N0dzk4TTRDQVBtcnNCNEFacmlqU0d3TjV0RjcvSnB6ZEJNNS9yYnFGTTBXYTlNMHpnSXU3QThpWUdxSzgyNHVaMW5aV2FtSXBBRFFLM0FQQU96MDBLM21iam5Mb0VOMFYvQ09BWjdpQzFCcWZOT2Zab0FNK2I2TkMyZHZ0VS9qSUoxQlp5UzFJcEpiQmJhNysyenQ4R3NGL0grcnRrVzZ5eXh1NFhIZ1FlNWNSMjNUNjJla2QvRndFUm1KU0FCUFpKOGV2bElpQUNIZ0pqQyt4dE5iaUlPeHpBKzJRdG9iRTVNWUhyQVRpakVaWjM2cWtIcjlFZU1PSDEvckVGOWhZQlhUdzl3RmsxNmNiSnhBTzA1L1YwdTNGUG8xcXlZSjlmdjYycFJ2UkQvaW9BdlAzVGwraHVnaUx5bk5QRkd0Y3ZUd05BSzlheGs5WkFZeFBYKzBJRXhoWnloL1JHS1lFOXRQYmJyTjlVODlsVS9hTDVhY2dJMWJNaUlBS2pFSkRBUGdwbXZVUUVSQ0NSd0ZRQ2Uxdk41elF1S1I0dlM2N0VYbFAya2dSb3JjM05VMSthMm8vMVZBSjd5K0prRjBpVGZqcVY1a01nNU5Lb3JlWFVZM2MrdEZTVEdnVDJBc0JEbk4xNkN2OEdnQnNDK0hLTkZ4Y29rM3V5bXpaKzFsL2RIQUpjc2tCNVE0cDRnWXYvSWJjeFF5anEyYUVFcGhKeWMrcGRTbURuNGRyaklpc3cxWTJjcWZ0RjgxUGtBRkUyRVJDQjhRbElZQitmdWQ0b0FpSmdFNWhhWUdjTlQzVFdzdHBnMnYybEhHVUpYTVpacisvWlUreS9PSkhvMDJWZm1WVGExQUk3Sy91QkpuYkNuWnR2bE5la2xlWkJnSnR1SG43Y3pGTWRCckM5RllDdno2TzZxc1VLQ1lSOEZ6L2ZIVnJPMFpjdmc1WCtCWUNuektoUDZBT1pjVDcwdmM2b1U3YXNLbE1MdVNtNFN3anNvYlZmWDExKzVXNHpmaWlsb2dYeXpxRmZ0QVlzMEpFcVFnUkVvRHdCQ2V6bG1hcEVFUkNCNFFUbUlMQ3pGUXl3K0dBRldCemVvU29oaVVESUVwZ0JuL2ozWHllVldEYnpIQVIydHVnOUFPNndFSC9LWlh0Z3ZxWFJGenY5Um0vZXZtQVF4U04wSURMZmpsdEJ6VUxCVFRsZkh1aXMyK2ZXVlBwYzVxMjUrMmRXN0VjQVBnZUFCMWliaVV5dURlRHlBQzZRVWY2WFhPREdjek9lMVNNaU1KVEFISVRjMkRhVUVOaHY0MktaeEw2VCthWTRPSnhMdjJnTm1ESlNsRmNFUkdBVUFoTFlSOEdzbDRpQUNDUVNzQVIyWHFGbUFNallkT25Hci9yK3p0S0QvenNsSGVxczJWT2VVVjRSeUNWZ0JiaWFNcmhwMnlaTFlLZGxFVjNjeENhS1FOZHZyTklaSVBNS3NRKzVmRThGOEFURlRFaWtWai83emdCMmRhLzVLWUNmMVgrbDNyRGxCSllZM0pRSFVpOENjSS9Fdmp1MStiNk9kd2NHTWQ4VzkzdWNXM25yaDNGbXJwTHd2czhET0xpcDR4Y1NubEZXRVNoQmdERVZibERBWlJKdllod1NxRkRxbnFLdnFPKzc3ekhYK01HS0grR3IvaFF4ZVN5Qm5UY3RId09BaDM5V2FnOEI2WHQrNzR5RFFCbENXWVQxZHhFUWdWRUpTR0FmRmJkZUpnSWlFRW5BRXRqL0VzQXhrV1Z0WnRzREFKOW5zTVFZaXk1dUttOE00R3VaNzlOaklwQkNZTTdCVGR0MldBTDczeloranUrVjB1aE8za3Mwd1ZzZjZIeVE4ckRCU3Y4SzRFWUFQbUZsMU45RlFBUldTOEFTcDZZS0JoZ0NUcmN3dEQ0OUxMSlgvdDJKNnM5c2JvajhJUEtadm16Yys5R3EvUVFBMTRvc2h5STdYVCtkRjVsZjJVUmdUZ1RvZm9uZmpTOE4yVk9VYXVjK3p2WGRMajBGOGdZSkE5NzdEc2JHTnJ5d0JQYXZBcmh1Y3l2blc0bHdMdGdFc2I5NmN5RC9hSGZvR0xOSG84c3Z0djkxaWU5U2RoRVFBUkdvUWtBQ2V4V3NLbFFFUkdBZ2dab0NlMXUxS3piV0VuUmJzRzlFWFJXWUx3S1NzZ3dtd045a2loNTBTOVNYNWpJT2F3cnNiYnNacEpDV1NiZVBvUHBhQUx4cGttczVGdkVLWlJFQkVaZ3hnWkE0TmNmZ3BwenJqMHd3RkRqRi9TNlU5SWZPT2pBbXdra0FMaGJSdDNMSEVBRkpXV1pKWUFrQ2V5aCtCSTBXZU51Rkx2SDYwdGl1QTJzSjdOMjJYYzdkaE9UdEF5dWQ3UXlodm10bDFOOUZRQVJFb0RZQkNleTFDYXQ4RVJDQkhBSmpDT3lzRjY4bWNtRksxeFNoeEdCZk40Kzg3cGpUWGowakFpUndKV2ZCdEhzUGpqa0VOMjJyTlliQXpuZkZXbmd5ME9sK0FPZ3ZXRWtFUkdEN0NEeXhjUk4xdEtmWlUvZ290bnFBMXVCMDgySlphUDRIZ0VjMkxqS2VCK0EzVnFHWmY3OXNZelg2ZWhjODJ5cUNRdVd4Y3NsbFlkTGZaMFpnN2dKN0tINEVVZkxHTFcvM1BjM0RkZXoxNFJnQ081dEtpM1llUEJ3WE1WZnk1aVBkYlNtSmdBaUl3S1FFSkxCUGlsOHZGd0VSOEJBWVMyRG42K21YOVBUR2l1dHFnZDZZYzRBMERhTDFFQWhaTU0zSlNuc3NnWjA5RzNzSVJoL0d0TVJVRWdFUjJDNENsMm5pcTV3QllNK2Vadi9LeFY3NTBJeVEwREtUYTQ2KytuYXJTWmN3ZHdmd3hoRUViYzZ6THdOd1I0TVRlZDdVSFFUUENLbXFJZ0pCQW5NWDJPbG4vbjBBNk9wcU03VnU4QmpUNURRQVB1MW16QnVPWXduc1pCRjcyK2RkQUdqdC9ndDlDeUlnQWlJd0pRRUo3RlBTMTd0RlFBUjhCTVlVMkZtSHV3SjRqZEVkajNKV0ZPbzFFYWhCSUdUQlJCK1REREpIaThjNXBERUZkclkzNUplKzVmRnlBUGViQXh6VlFRUkVZRlFDb2QvdnVZa3UzSGM5cDdrTjl6Q0RFQzNYR1pDVU4rekdTckdIbVg4UDROWUtYRHhXdCtnOUJRak1XV0MzWEFOK0JNQkJBQ2hxbnhVSUJOL20rM0VCWGxZUll3cnNyQXZmZDdLTEErR3IydzlkUUZ6NnExY1NBUkVRZ2NrSVNHQ2ZETDFlTEFJaUVDQXd0c0IrU1FEY05ESzRqaThOQ2R5b3poWUJpOEF0bXNCejcvQllKNDI1Y2JMcXliK1BMYkR2N0lRbUhqTDRra1NmbUo1VEhoRllGd0VHUW42ekU2RDZXaloyOEQrTHJqVjN0czlQNVlvbDVrWWY2OGlZRnlkYWpkWGZSV0FtQk9Zc3NOTWxZRWc0YndPd1drTDhtSVlZWXd2c0hFYWhOWEk3ekhTVGNTWWZuS29oQXR0TVFBTDdOdmUrMmk0Qzh5VXd0c0JPRXM4RjhGQUplUE1kRkN1dUdhOEZ2OHJkcE9ockpzY2xmZkRPSlZraVVZM0RxUHNiL2pXLzJsajRYeGZBdCtZQ1NmVVFBUkdvVGlCMHUrVXp6ajNNZDZyWEl1NEYxanpmbHNMZ3pneDBUUmN4VTZRYk5wYWc3d2F3VStEbEh3Tnd5MmJOOUlNcEtxaDNpa0FpZ1RrTDdLRWJPSnUrMWVtZUtlUW1acXg0RTFNSTdLMkxuSDBEZlg4Q2dDTVN4NGF5aTRBSWlFQlJBaExZaStKVVlTSWdBb1VJVENHd1d3S2VMR1FMZGE2SzJZSEFQczZuN1M0OWJMN2hnczk5ZVViY3BoRFlyWTJsQlBZWkRSQlZSUVJHSUdCWmRJN3BremltdWRhOHlUSjRLTUFBcUYrUEtiQlNubGczTm5PN0hWQUpoNHBkQVlHNUN1eldEUnplYXJ3RGdGKzZQckJFNXJIV2kxTUk3RVJnR1VKdDhsckIwRlVUUkVBRWxrWkFBdnZTZWt6MUZZSHRJRENGd0c2OVV3Sjd1YkYzUVFDWEFNQi8yL1NqemlhaTNKdVdVZElUbXlCMlIzdXFPcFpGVWdvcFN5aXFZY0Z1dlhOTWdaMHVhN2pSN2FhbGpGK3UrM2Jyc1U1bFlEQmF5MjFENm1Pd2hQWXZlZHpWR0ZkWGNnZVRkTEd3bVRZdFAydThQNlZNNnpDQVpkSEZBMFhyMTZVVVhDbnZWUUc4SDhEdkJjcWZnMy83cFg3THYrUG00UXQwK1A1MGdYN3RsN0tXbTZ2QUhqS3U0TkRvYzNrU1dpLzZuaWs5VFV3bHNNc1FxblJQcWp3UkVJSGlCQ1N3RjBlcUFrVkFCQW9Rc01UdTFpZGhnVmY5VnhIV08zTUU5cjdOUjdmT05UWlVmUnUzb2UvMGlYSnR1Yjlxcm1VeXdCQUZncjdFT2wwYndHSHVXdm1sUGZsNEpaNmIrbGM2djdvL0w5bkJNeTNyTW8wYmd6TUE3TmxUUDNJOW9QRXYvS0daMWQwU3U5Y2tzSFBzMHk4eHJjZ1lkSkRYazd1aVNMZHJHSmp3Yk9lYitQVUF6Z3Q4RTJOMEtlZWZQd0RBdWUzMkFMaVp2NGp4NHUrNWIvRHZBSndPSU1XOXh0QjV3bGUxUG1HNW05YzYzT0Q4Y3lDQVE0ejVoMlYrMGZuNzV4ejBPUUMvR2FPamV0Nng1SEUzRnJLSE5BZTFkQW5RbDE3ci9JVC9lcXpLR08reC9Deno4WncxUnEzbWNmdzlHY0JSZ1JmOEs0QWJOZlBMSnhJcXNZM2ZNdkh3ZDU2QllYbUFRbWFjazN5cDVodzBkSTVlNmxwdXJnSjdTQ3ozV2FOYjY2OHhEcjZtRXRpdGZkcVhHaGM2MTA5Y3R5Uk1YOG9xQWlJZ0FqWUJDZXcySStVUUFSRVluNEMxaUZxS3dFN3JydzhEdUx3SFlZMTJXSXZ2bkhkYWkybWZNTURyci9jRDhGUUFGMHNjUmhUYmoyK3MzSjhDNENlSnp5NHBlOGovNWhnYnBSeFcxaGhiZzhCT2NacUN5RE05aHg4eDNPanVnZC9iMjBZV2Fuazc1REVBRGdmUTUzWW9wdTV0SHZwYXBxdU5VeVBha0R0UFdQV3hmZzl1MHdUZWZXdFBJVHhNb0M5cmloaWNpMUlUYjBVYzZRVDNzWVQySlkrN1ZMNUQ4bDhjQU9mSDYvUVVNbWF3djlnMmNJeStKWkNaZGI0amdKTmpDeHdobjJWZHl5cWtyaWUyNlZ2bUhwdUdCWC90NG9Qa2RCa1BQTW40TlFCNHkyWm95cDJqbDc2V202UEFicmw3OFIwU1dtNWxjZzYrVXNlVk5ZNXEzU2k4QVlEM05Yc0t4clBvUzdYZW04cEgrVVZBQkxhWWdBVDJMZTU4TlYwRVprekEyb1NsYnVwaW12cElBTThPWkh5VEMwS1pZaEczelFMN3RkeW04Q294OEFONWFNMUZxeThLZld0TDFrWnByajV1cHhEWUdWQ1AvalY5NmVNQWJnNkExc3hERThjdUR3bjZiaFhrbE0yeHk2dmV0SWl1bVhpSTlUUUF0T3d0bVdJM3JkYW1POWRDMS9vOTJCVFl1YmFsei81WE44R0JMMWtBeEZqOXQ5UnhWd0J4Y2hHM2NQTkIzejdtSTgydG40TUEvRGk1MURvUHNJNnZBSER2a2VhdlVxMndmcC80bmxTZng5dnlMVi9SL1lZd1lHeUp4SFhRZmQwdGh5SGw1Y3pSYTFqTHpWRmdEODFoN09QYkFqakYwOW1oMnp0OHBIYjhDV3NjeGE0WlVzZXlOWC9VZW05cVBaVmZCRVJnaXdsSVlOL2l6bGZUUldER0JLeEZWR21CUFdZRC9IUUFqMDlrdG8wQ08xa2VDdUJseGpYb0ZKVDBwM3NuQU85T2VXZ0JlVU5DTmEyZjZSNG14VVhIV0UyZVFtQzNOc2c1QjJDYnZIajluZS9oclluU2lUY3k3dDY0YVhsakJiY3gvT2JvdnVZbEdUZEZZdG9adTJtMU50MWpDT3kxK3BCV2dUendvcVc4enhWV0RNdStQTFhxekhmVkhIZTU3UjM2blBWNy9kRG1ZT1Y1UTE5UzhIa2U4bkRzWHoxUVptMUJMTGM1bHMvamJ6ZXVwUFlEUU5jTU1jbGEyM1VQeTJwOUZ6Vy81UnJybnk1WC9qN1JFQ1QzUmszS0hGMmpMVk90NWF6MVErazloZlV0V0hPWXRmN2JxemxFUHRQNThlOTdsL1c4VlQvcjc5WTRpbDB6V08vWi9MczFmNURKd1FEb2ZsTkpCRVJBQkNZaElJRjlFdXg2cVFpSWdFSEFXa1NWWGd5SC9HQzNWUTFaay9pYXMyMENPMzJtMHlVRFhidjQvRlRuRG41dXpHaVYrTkhjQW1iNFhNai81bHdGRjJJY1cyQ1BzYVFjT2lmUW5jaUxuS1Y1cmFGQ0grMFBBOERBdGFWRVdyS2gxZm9qYWxVYVFPeG0yZHAwMXhiWUtjZzlGOEFES3JGZy8vRWdnNGM1cGRKU3gxMnA5dWVVRXdwdTZ2TmJuUE9lVXMvUUFwaGozK2VtaUxmaUdDT0E0dERja2pYWHM3NFV0TjRaV1hGcmJkY0s3RXY4bGxsbkdtSDRBcFpISWpLelVXQi9yRHM4TXpOdlpJaWRvOWUybHB1YndCNmF3OWhsVm5CN3VraDVsYnRWMnpjR2Fydkpzc1pSN0pvaGRmeGFCMzd2Y1piLzJ4Qy9LWldkOG91QUNJeEVRQUw3U0tEMUdoRVFnU1FDMWlac3FKaTJXWm1RSDJ6bXpkMjBiNXZBVGdHY3dSMUxpK3R0ZnpIb0lvTTEvaXhwTk0wemMraFFad3dmbWtPb1dLSkxhUi9zMTNPQllIZnlWSHBvTUZqNmM2YS9VMTdacnAxS2lyU3NOMitLMEhkenpSUzdXYlkyM1RVRmR2cTVwNy8wWTJxQ0FNRCs0empoWERRMExYWGNEVzMzME9kRDdoRVluUFkrQlErd2h0YVZ6L1BteW9tQmdzNXAvQXJ2MzdoMituNkpseFV1SThiNlBtVTlacTN0S0xBdjhWdXVmU0N3MmEwVWpJL05HT2V4Yy9UYTFuSnpFOWhEY3hqRmNicTdzMjVzV3Z1V21vR2VyWEVVdTJaSW5hNTRnTTRiU3I3MGNoZjNLYlZjNVJjQkVSQ0JZZ1Frc0JkRHFZSkVRQVFLRXJBMllTa2JPcXRhbHdid1hnQjdCekphMWlTK1I3ZEpZSCs0ODhmS05tK21UenJyWUhMdWl1TjdBTGdEZ0Q5dkxIWXVaWFdVK3p2ZHo0VEVpc2hpSnMrMnhPQ21MYlF4QlhaYWZmTFFoZ0ZIZldsSU1GZ0tJL3krRDRzWUVXY0RlSTZ6MXZ4V1I5ell1Um1UVndYd1p3Q09pQmpMRk5Mby9vZmw1YVpVY1piQ01EZnNaRWtmMVQvWWVERy94WDNkdDhoL3V5bDJzMnh0dW1zSzdEeDg4UjN1TVRnZ0QzMFlaUEtmTjl3cnNOMzAxMDVSTmpaZXhPY0IzS3hoZFY1dTV6bjNXVXNjZHdPYVhPVFJwUVUzWmFNdFVZaXhBaGlqb2RTdGxpS2dYU0cwbEtWUXg5OXBYMG81VUxYV2RoVFlsL1l0Y3k4ZGU3akh1WlRmUFcvQmZLVXpGL0YzaUg3Yk9hOHdIcEExRitVZTlNWE0wV3RjeTgxSllMZHU1TVhHa05pOUdTOW5BYmlDNThOTWRkK1VNbTlZNHloMnpaRHlUaXNvTE12aTdiVVhweFNxdkNJZ0FpSlFtb0FFOXRKRVZaNElpRUFKQXRZbXJKVEFIaU91RGJHTzNSYUJuUnNDQnBTajFVMDNNUUFhTjR1Zk5RYkZCUUhjeTRudzdKTlFpdDE4bEJpSHRjcXdObGh6RFc3YThoaExZSThWTG5KNXhaYlBBSE9ITjFhbTc0c1F3ZGkzdExCNnFoR0RnRmFhZERkQzhUYzF4Y3hiYlprL2NkOGdSYkxZYTlOMFc4S1lCM1JUZFBrRnVJaWhleHd5di9JR1NHN3lLYXhRektJdjhsRGlXUGdqZHlPQUxqMnNSRXRwamdtcjNMNXlsanJ1TENaai9IMUp3VTNKZzRkdkhIOTBvK0pMcGRZenRmZy96cm1oOHBXZmNuQm1yZTJXOWkyVENROGZySnQ3bkljcC9qR2Y1VCtkNnlIK050QmxHUU5YK3hJUGFHOE00THNKSFc4Sm8ydGR5ODFKWUxkdTVNVzZCK1R2eUFuT0xhTnZDTlNLUjJHTm94b0N1OFZ0eUY0dDRSTlNWaEVRQVJHd054UmlKQUlpSUFKekkyQnR3a3BzU0dQOVpYS1R3MFVxL2FTbXBtMFIyRGU1MExxS3dqb0R6Vm1ieWU2ejF3ZndkZ0M3QkVEWDlpMloyc2M1K1VNYmhkckJxWExxdS9uTUdBSTdONDg4ZE9HVjM1RExvU0Z1ZzI3b3JMcDlybWZZN3BPZGRmc1BFOEZaWTVuam1LNWRXSDVxb3JVci9hOWE2WVVBT0ZkUzNNbEpuQ1B2NHF3ektXelNhaitVckUxM2loRFhmWS8xZTBDV213WWp0S3JsdkozYWRoNlFrTmtUakxibVdwQ3kyS1dPdTV3eFZQSVp5Kzl3TFRGcFNCdGlyQzY3Z1QySHZLdldzeVZkM0t6dFcrYk5wZmMzVnJOOU4vZmEvdmk0TzdDa3hYcEtZdGswVXJoYTRLSFV0YkExUjIrK2FpMXJ1VGtKN0l5WndrT3J2cFRxSHBDM3IwN3IrZjFyeTg3OXpiWEdxVFdPU2d2c1hJdWM1TDRqWDkzV1lIeGpjZGZmUlVBRUZrQkFGdXdMNkNSVlVRUzJrSUMxQ1V2ZFZHd2kzTTFaQjlGS001U0d1Z0xZUm9HZEc3TDdBdmliQ0d2ZlB2WXgxbUM1TG52bThDbFpWa2V4MWt0VHRxVzJ3RTZSODhtTk82RkhHNDBjRXZqMkVzN1ZTOGhhbWVJK1Jic2NLM05XM1JyTE9hNXRZZ1Nkb2QvZ0puWWVlTkg2M2JMV3RqYmR1WnQ5Ni9kZ3M3NFVMLzRxOFhDdlcwYXNoWG5PTFlTbGpyc3A1NXYyM2ZzQStJRG5BRFkzVGtydGRsbHJnRlJCclhaOSs4cS9wUk42ZmU5T0VkUFc5QzNIaUg2ODljU0QxTlFEMnBiMXRRSHdkOEpuZEpCNklHL04wZDArSHZvN1l2Mys4VjFqcmVYbUlyQ0hZdStRUitxYXdEckFxMlhWYlkyamxEa2haazZMR1V0TFdEdkh0RlY1UkVBRUZrNUFBdnZDTzFEVkY0R1ZFckEyWWJrQ084VU5pcitQTjY3ZUV1c1E4YTd0Rm10em5kdU9VTGRiNG1mT082M0ZkTGMrRkxlZW1TbXVzeHhhS2ZMV0FQdkpsMmdSUm5jMFAxcmcrTCtTRTRub1AzTXpjY3pSdXZYVE0yK1hOY1pTZlBKMm03cnBtaVNFWVdpd1VGN1hwNFczTDczSENlUjBmWlNidU1haXovYUhlUXBJM2Z6R2ZCdER1ZVMybGM5Wjg4UVlBdnRMM1pWNTZ6REFhbWVNRzU3VS91TTdsemp1TEZaai9mMkp6ZS9LMFo2WGpTWFVwYmIxR202K3Y2am53WnAra2xQcjZzdHZ6ZmNVajIvUTNIWTVOK0tGMXRxdVc4VGN2Mlg2U3o4MWNNTnFxSUZHeThLYU0xSmNwRmx6ZEpmL210WnljeEhZZVZ1RnNVQjhLZWNXVG1oZTVIdHF6STNXT0NvcHNGdUhUR3pqWEE5WUk2WkVaUkVCRVZnYkFRbnNhK3RSdFVjRTFrSEEyb1F4S05pYkk1dEtVWW9MTkFxeW9VQ20zZUlZaEpCV1d4UnloNlJ0RTlocFhjaStHeUpLa3JmbGEvR25Ub2orMUpET21lalpoemkvbVgydnA1OXNCbkhOY1VjMFpuTXN3WVhqZ0lIOVloTjlYOU1GQ1lOcmh0ekJ0T1ZSUEdXUTJCejNLaXpEc2lJckVZUzByYXRsY2Y1MGQrQVh3OHI2TGxnR2hZUmpCeHh3eGRURGw4ZmFkTmNXMkVzY2luVGJadlVkODZiMDMxTEgzWkF4VWVyWkVMdWNnNDVTOWJMS3NlYktra0tVVlpmY3YxdHRTTEhDdDlaMmJSM24vaTFiY1ZTR3VKRGE3Q2ZyMWd0OS9QUDNNR2JkWU0zUjdidlh0cGFiZzhCdXViaEtPYWpxamhGclhaQjZ5eUZtbnJER1VhbDVqVEVHWHRlNG03eWtVYWtjdzZHWWRpcVBDSWlBQ0NRVGtNQ2VqRXdQaUlBSWpFQWdkaE5Xb3lvZkFuQUlnRlIvbVgxMTJTYUJ2YVJ2ZEd2eFR0Wno5MXZiTng0dTdxNEFYNmZuanlYNTFmZ3V1bVZhZ2t2Tjl6UGdLQzMyUGpiZ0pSUWpYaE40dnVSbWpldXNWelR6eWIwOTc0dTlqV0c1Rm1MeFEvelJEOEQ1WDQ5YTMyMU5nWjBpSy8zUlVoZ3FtU3hoSnJiL1dLY2xqcnVTTEllVUZXS1g2bFpoU0QxU243WG15bEpDVkdxOVV2SmJiU2d0c0MvaFc3WkVUYm9YbytWNWpPZ2QweGVoZVNqbEZvUTFSN011SmRjaU1lOGJZeTFuemVNbGYvTjkvYmxYOHh0MVptTjhRQmVWZlNubG9LVDd2SFhZdzd3cHR4eGl4cVBWcjBQbk5SNHEwVEtmQmlsV0tuVVlaTDFIZnhjQkVSQ0JLQUlTMktNd0taTUlpTURJQktZUTJPbG4rZjg2eTl1aDdnVmFYTnNrc0pjT01CUUtCRVcrajJyYy9CdzM4cmdjK2pwYWFUTm9XZDl2YjJsK1Erc2FldDRTWEdxOG14YUJKemhyYi9vRHowMDdBK0JHOW1CUEFWOW9ndGJSYXVwcnVTL29lUzRVSkREMk5rYkl0UkJmV1V1VVNzRmdiYnByQ3V5MWJuOVkzR1BGeGFXT3U1VCtyNVhYRXBCS2kwY2wyMkVGSVJ3cVJKV3NxNjhzYXgwVCt3MncvSmkxM2R5L1piYURON1RvenFNdnBmQ0k3VCs2NEtFL2QxcEI5eVgrbnIwem9qQnJqbVlScGRjaWMxakx6VUZnRDkxZUpQY2g4NWhWZHE1NDd4dFMxampLbWRmNEczbk5KcGo2L1FFd2tIdk1iY1lTcmp3alBodGxFUUVSRUlGNEFoTFk0MWtwcHdpSXdIZ0VZalpocFdwRFlaM1gvTGxoK2ttcFFsMDUxc2EwaHRXTUpYN212Tk5hVExPNU9lV0djRnRqZ0g3MDJXOUxTZGIxNEJ6Zm0xTzEzUnBqSmV0RllaMCsrWi9hYkx5K1ZhQmd5NHFNSXY0UkJkN1RMY0x5dzh3QVhwYTdtNUJJejNmVkVxVlNVRmp6UkMyQnZhVEY1V1o3K2QyU0xmdklseWdHbkdTQVd1cTRTK24vV25sRDFzSTEzQitVYklmMU81WWpSSldzWDB4WjFqb21SVkMyZUN6aFc2YTdDczVsVi9mQTR5RTY1NHRmeHNDTnpFTVhTUjhFY0dWUC90ajFrRFZIcjNVdE43WEFIcnE5U09ibk5UZlE5bk8reENPSHhQbXlXYjh2cGVQN1dPT0lCLzV2ZE1IUnJmWndUUDl4NHl2K1VsYkdqYjlQR1c4bXNhcktMZ0lpc0UwRUpMQnZVMityclNLd0hBTFdKbXhvUzdnd1kzQ3E0NTFWVUNtTDljMTZXUnZUMHFJMDMyK0puem52dEJiVHZBWjlvTHYrT3JSdjJ1ZXRkdVFHMGl4VnY5Unk5bkh1SzNicGVYQnBBWnFzdmtsbDA1Zi93KzZHQXNXS0lSYnJtMldIaE9vYTQ1anZIem9QV0NKdlRWRXFwUyt0ZWFLV3dINU9NNC92MzF3bnArLzhHb2tXZFR6azhhVVlQK3hMSEhjMVdLYVdhYmx0S3ZwaEFBQWdBRWxFUVZSR2VsSlRJRjBKekRWWmxzZExFTml0K1Q3MkZnNzd5RnJiTGVGYnR2bzA1c0F0ZGJ4YWMydnNlc2dxcDhadm9EVitZdXVleXF5YmYycUIzUm96UXdPUldnWWNaSkd6OXZjeHQ4YlJrTDZLZVpaN09McnlmUDFFOFdaaTZxZzhJaUFDVzBwQUF2dVdkcnlhTFFJekoyQnR3b1pXLzJ3QUQzS0NKOFdwV21tb3NKWlRMMnN6azdQSXRoYlRLVDVBWTl0MHVTYndKVVhXM1QwUGpMRXBpNjFyVEQ2S1FFZDdNZzdkWE1XOHYyUWVhNHdOZlJmSDA4T2NLNWZmREMxczQvblExZjR2QWJnK2dPOFVmcWYxL1ZoajJiSmVuSXNWcjlYT1dnSTdnMTVUMUtvMWwxdmlTTXoxK3lXT3U4S2ZRVlp4SVJjOXBhMHlzeXBvUEdUTmxXc1EyRlBhWUszdGx2QXRodzdjVWc0YlVzZmIzd0M0cCtlaDJMblZtcVBYdXBhYlVtQzNEZ2xMSFpCYk1UNUt1djZ4eGxIcTJFN0p6NFAwdXdCNGI4cER5aXNDSWlBQ1l4R1F3RDRXYWIxSEJFUWdoWUMxQ1VzcEs1VDNGT2Z2ajV1S0dtbGJCUFlhVm1jV08wdVVyTkdmdVdWU0lEMmpjVFd4WjA4QnZFcDdBQUFHMTExS3NrU2pVdTM0cE50SWZhNVFnUmNCOEpibVlPMG1udkpxWE8zbnE2ek5xQ1hRWHN1NUpLQXY2cjVVVzVTS3hXKzFNMVlFMm55ZjlYdVFjMmdZMnlibXN3NzdySFl0ZGR5bE1LcVZOK1JiZUE1dWtheDJXM05sVFVIV3FsdnMzNjM1cDZUQVB2ZHZtY3hlMXNUb3VLOEhYbzIxVVB1cWtNQWVHMnpabXFOcjFIOE9hN2twQlhZYWlad0Y0QXFWeDR6MW5sSkNmc3lhSm5adVNjM0hkVEl0MTcrUytxRHlpNEFJaU1CWUJDU3dqMFZhN3hFQkVVZ2hZQWtxbndEd0Q1NENMOWdFZTdvT2dMMGpYOGhnaHJjQlFER3ZkTEkyRmpVMms5YUdQdWVkMXFiTUVwaHl1RnJzbGlTd2h5eUwzZ1hnZGdBWUMyQXB5UnBqM1B5Y0htZ01mWkx2R3huRWl2NTk3d3pnN1FYZ1dKYmdkQlZWNDdDTndibzRubjFCdTZ6dng1b1A1eEx3dDlZOFliVS94b2Y5a09GampSdExsTEtlbit1NEc4S3N4TE1odjhVbHhhSVNkZldWUWYvQ0ZOY3U2OG5BZVovdWpUNVdzeElEeTdhK1Aydis2cjdlS212dTM3SjFXRWJYRll3VnduOUxKNDZoMy9FVUdudklVV3VPRHJWMURtdTVLUVYyeTdJOHhzVll6Rml5TE9WWlJxbmJrdFk0aXFsdlNoN0d4M3FBY3dsVCtsWmpTajJVVndSRVFBUk1BaExZVFVUS0lBSWlNQUVCYXhNV0l4SnpJOFNGN1hITi8xM01hTVBubTAzd3pWeWdvWkxOdFRZV01lMUlyWThsZnVhODAxcE1wMnl3WTl0anNWdUt3TDZ6YzNWeXNLZmhkM05CRkdPNXpDR2ZOY1ppK29aQ3dhMGE2KzVuQWJpSzBTaTZnamdJd0VjSE50NFN1d1lXbi8yNDlmMVk0Z0FQQ04rYS9mWnlEOWFhSjZ6Zmc5cnR0OXBsaVZ0TEhYZmxSa1plU1RkdFhEYWRCcUJ2cjFMUzNVRmU3ZUtlc243SFdFcHRVVG11cHY1Y1Znd0M2d1pPdCtTbGY4dTd1akhKQStJNUpXc09hdXRxeldYV2IxRk9tNjF2SUdhOWtQUGU3alBXYjJqT3VqaW1UdGI2ci9RTnhsc0E0RTA4bjc1VEt0NlBOWTVpMk1UaytSNkF4N28xY3NsWVBESHZWaDRSRUFFUnlDSWdnVDBMbXg0U0FSR29UTURhaEtVc2hpbXVueER3WGRrMjVUMXVvL3ZqZ20yek5oWXA3WWl0bGlWKzVyelRXa3l2ZFZNV3l6eVVMeFRjZEM2K3MxUGJhWTJ4bEEwejNaNGMyV3dJR2F3d2xFb2NnbG4xVHVWUUtyLzEvWVQ4ZDlQQy8wWk44RURlNnBrNjFab25yTitEdVF2c1N4MTNVNDRueXhyem9RQ2VOMlVGSTk5dGZSTXM1dkVBYU1VNjF4U2FmMWhucnErT2lLejgwcjlsYTAwWGlhRjROZ25zWWFSVENleWg5UjlyL0UwQVJ3R2dxNmdTNmFJQW5ncmc5d09GbFFqQ0d6T3Y1YmFITWJMb3lvOHVrYmp1cXhWYkpiZCtlazRFUkVBRWdnUWtzR3VBaUlBSXpKR0F0UWxMRllscExmdU1aaEZMVndxaDlGSUFEMjQydkx5eVh5SlptN0hVZHNUVXlSSnpjdDVwTGFZdGdUQ20zcHQ1TEhZcEltN08rMHM5RXdwdW1pSk1sS3BQaVhLc01aYmFOMXlMOExzNzNuQWJNL1FRektwM0NUWTVaVmpmVDhqM3JnVDIzN3I0cW1uQmI4MS9scmkxMUhHWE01WkxQUk1LYnZwREFBdzhlMjZwbDFVc2gzUGJpYzV2c084MUtSYmdGYXZhVzdSbGdjdUhVZ1E3YTIwMzkyL1pXcGVNM1QvdCs2dzVxTTFueldYV2IxRk8reXhtcWV1Rm5EcE1KYkNIMW44NTdTanhUQW0zaE5ZNDRxM0R4elRCNm44VVVlRmZBNkNvem5tZC95ZEJQUUthc29pQUNNeVhnQVQyK2ZhTmFpWUMyMHpBMm9UbGlNUVUyZWwvOExBQVdQck5wTDluYm5oTEpHdGprZE1PcTE2V21KUHpUbXN4dmRaTm1jWGErdnZhZ3B1MjdiWEdXTTZHbWVzUldySWZZMERsUnZuWXpFMllWVytyUDJ2OTNmcCtKTEFEREVqdFMzTVg1Wlk2N21xTjk1aHlseDdjdE52R1J3SjRkcURSNXpVeEsvWnIxaVowM3pDM1pBWDRwVGgySUlBekl5dHVyZTNtL2kxYmE3cElETVd6U1dBUEk1MUNZSityTzZFU2gvTFduaUIyUEJiL0VGU2dDSWlBQ0V4TlFBTDcxRDJnOTR1QUNQUVJzRFpoT1NJeDM4T2dhUlRQYnhMQVhzSVZSVnU4dFJuTGJVZG8xRmhpVHM0N3JjVzBKUkRtakhLTFhZNkltMU9QSWMrc0xiaHB5OElhWTdsOUUzTUlOc1FmdTFYdklYMDk1Rm5yKzVIQVBxM0FiZ2tsbHBpdzFIRTNaRXdQZVhZTndVMjc3US81a21jK1dtemV2TEhLZi9jUWFKV2V0ZXIrcGNZbitmVUJmQ2Z5L2RiYXJyYkFQdlJidHRZbGtSaUtaN1Btb1BhRjI3cVdtMEpndC95aEZ4OEVDUVhTSlIrdDYzT1ROWTVpeDJQdSsvV2NDSWlBQ015V2dBVDIyWGFOS2lZQ1cwM0Eyb1RsaU1RdDBHc0Q0QlhKWFFLRVh3U0FQbDVwblRVa1dadXhJZTN3MWNzU2MzTGVhUzJtTFlFd2g2SEZMbGZFemFsTHpqUDBMZjVtRjV5ejcva2xCamR0MjJHTnNTRjljNFhHbXZOMEFGY0xRT2ZmYncvZ1o0a2RZOVg3QXdEb2IzanM5SDFuQWVxYmJ5U3dUeXV3VzNPUk5mOHRkZHlOL1IyMDd3c0pVMHNKYnRwbHQzc1RSUDBzQUp6YmZJbTM2N2ptbUp0N0JNdi9lcXA3RzJ0dFYxdGdIL290Vzg5LzF2bkEvdVhJSHc4RFFKNEI0QmZHZTdkMUxUZTJ3RTU5NVJVQTdqM3lPSWg5M2RENFA5WTRrc0FlMnhQS0p3SWlzRG9DRXRoWDE2VnFrQWlzZ29DMUNjc1JpYnRnNkl2OVdRRlNkQlhEVFQ2RnZDSEoyb3dOYlVkZjNTd3hKK2VkMW1MYUVwaHlHRnJzaG9pNE9mVkpmZVo2YnNPN1U4K0RRemMzcVhVcG5kOGFZMFA3aGlJTER5Y3VFS2o0QXdId0lDd2xYYU81dlVJUm5ZSEErdExRZXFmVUpTVnZTR0JQZGRHUTh0N1V2TFhtQ2V2M29MWW90NWM3QU5uTkE0U3hBVzdidURpaXlOV1hsanJ1VXZ1L1JQNExBWGdWQU43KzZVdExDVzdhclR2YjlGb1hSTjNIYUk2L0NTRVhaMjA3SGdEZ3hRa2R2L1J2bVV3K0NPREtuamJYV0FzbDREV3oxcHFqUXkrZXcxcHViSUU5RkVQQzdLUVJNdkFnNzJBQXAyYSt5eHBIRXRnendlb3hFUkNCNVJPUXdMNzhQbFFMUkdDTkJLeE5XSTVJM09YRUsrZ01pbmZEQUx5UEFiaGxZMVgyZ3dHQXJZM0YwNXVBcW84ZlVIN2ZvNWI0bWNQT1drelgyRlJhN09ZcWhySlArTnZLQUtZTTNObVhobDdQTFR4a2tvdXp4dGpRdnFHcm1KY1kxbC9mQW5DakpzRGVGeEpxYjQwcFN5aE5lRlhSckk4RDhMUkFpWGNBY0hMUk4rWVZWbXVlc0g0UGFndnNscHNNYTd3dmRkemxqWUpoVCszakRzSDZicGpSUnpsL3M3ODg3QldUUEgzL2lBUEJuRVBEbW8wSnVUamplM09DelM3OVc3Ym11RlNYT1RYN3I2OXNxLzVyWGN1TkxiREhmTzlqOS8zbSszam9kMmptVFYxckhFbGduN3AzOVg0UkVJSEpDRWhnbnd5OVhpd0NJaEFnWUczQ2NrVGl6ZGZkekZsdmhLeGtLV3c5YzhDMWJVdFlzWVNabkVIQ1E0RjNCQjdNWVdjdHB0ZTZLY3ZoejJkQzFrdjBJVTZSNk5PNWhjL2d1ZG9DTzV1NHQ3c0JjTWxBZTE4SjRQRG1rT3JmSTVsWS9uZlBBYkEvQUxwc21WT3lOdXMxRHVweTJsOXJuckIrRDJvTDdGYVFTbXRPWGVxNHl4a0RRNStoWCtDalBZWE0xWTFLVEp0akxGcExIT3JIMUNVbWorWGlqR1hrQ0hSTC81YXQyd2c1aHc0eC9WRXFUNjA1T2xTL0tkYkJtL1VaVTJDUCtYYjRtLzJQcFRyVlV3NkREejhvOEk1dnUrREtQQlJLVGRZNGtzQ2VTbFQ1UlVBRVZrTkFBdnRxdWxJTkVZRlZFYkEyWVphZ0VRT0RHeVc2bUxodklEUEYwQnNQV0FoYkc0dFhOeGE0OXhnZzRQZFYvZTRBVGd5MEtZZWR0WmlXd0g1KzRBOXhGdXg5M1pBalNzU001ekh6akNHd3N6M1dwcGl1bkc2SHNIL3VMcGVsaWlPV0JUVVAxR2pGUHJiZjM4MHhWMnVlc0g0UDZQTHJ1RW9mZ0RWbStGcGV0WDluNFAxV0dYTVg1U3FoM2FIWWtFdVNYelVIYmdjME1TMCtORlpsQ3IvSHV0WFV2dTdSalF1clp4ZCtkMDV4akhIeFJuY2JxKy81WEJjVFMvK1d5WUszaVdoODRlTXkxNEMxckcrdE9UbzB4cXgxY0ExRGs4MzZXR3VKbkhXeHI4MGg5NEI4Wml4M1VER0hlcmt1dDZ4eEpJRTlaOWJWTXlJZ0Fxc2dJSUY5RmQyb1JvakE2Z2hZbTdCU2krR3JOZ0w2K3hzZm90d0ErTkxiQU53NUluaFUzL09XNVdJTllkb0tTcGJEemxwTTEyakhIRFpsT1I4VzNROHhpTzUxZWg3T0ZTVnk2bEh6bWJFRTlrczQ0ZkphZ2NhYzdRN0J2aHZaNEpBNHdpSjQ0SFZTWkZsalphTy9Yd1pKdkt6bmhYTVJhR3ZORTlidkFXOHkzS2Z3UVdXTDJncFFHV3NGdU1SeE45YjRidDhUY2tuQ09aV0hhVllReDdIcm5QSStTM2hqV2J3OXc0TUV6bXRUcFVzMzdyZmU2MjRSK2VxUUcyeDJEZCt5WmNRd2x4dEZmWDFYYTQ0T2pkVTVyT1hHRk5pdHVYNnNtemhXUEF2MldlN2EzUnBIRXRpbm1yMzFYaEVRZ2NrSlNHQ2Z2QXRVQVJFUWdSNEMxaVlzUnlUMmdXYVFyaGNhdlVBL2hTR3JjTi9qMWlLVVBtV3ZDK0RyaFVaQlNOeHRYNUhEem1wSDdpSjk3cHV5bkc1aGNGeGFGUGY5dnVhS0VqbjFxUG5NV0FJNzJ4RGp5dW1wQUo0UUtiQmFMcFRtZU1OZ1p3QnZjcGJTdm43TnRVUXJPVTVxelJQVzcwRk4xejZXSCtyWTJ3TkxISGNseDRaVmx1Vlc0VzdPSllsVnpwei96dGdTUEx5N2sxRkp4b0xnalpRZlQ5QVkxcEVDNEdIR3UzUDdZdzNmc2hXMGVNNi84N1htNkxtdjVjWVMySzNBd0dNYldZVFdvK3l6M0p0QjFqaVN3RDdCNUsxWGlvQUl6SU9BQlBaNTlJTnFJUUlpY0g0QzFpWXNSeVQyTVk0SmVFb2ZoVGRwZ2k1K0piR2pPTWRTbUQvRTh4d1gyeVd2RThkWXlPV3dzeGJURXRoLzI4R1d4ZEFjUk5ERUlkeWJmVXlCUFNiZzZiODZLM1lLRzFheXJNSG5ZRUhhMXdaTElFaTE1TGM0NWZ5OTFqeGgvUjdVRWkwczBaZU1Zci9wcFk2N25IR1E4MHpvdDJzc2x3bzU5VTU5eHBvNzIvSmU2b0preDhhWFNLMUhYMzZ1VjQ0RWNJeFIySkRmK3pWOHk5Yk5STG91bzdCNWVvbE9LVnhHclRrNlZNMXRzbUJuUEpDM0JHRFVQQXp1ZTYwbCtQT1pISXQ2YXh4SllDLzg0YW80RVJDQjVSQ1F3TDZjdmxKTlJXQ2JDRmlic0J5Uk9NUXZ4a3FXL3RvcHB2dzZzU1BvcTVOWFJuMnAxSFhpR0oveXJFTU9PMnN4UFdURDdlTXloMDFaWWxkam4rWWc1Z01BZHVsNWtMY1ZHTnoweTZtRnpqQy9KUktWOXFrYUUvQ1VZZ2I5QnYvTTRHVWRndkR4Rkl2NHNib25OTGJhT3VSODJ5WHJYMnVlc0g0UDJJWWFMa1FzNjcrVWdNVkxIWGNseDRldkxNcy8rWk9hQnhuOGRBMkpiWDF5czQ0NEtxSXhQRlE3TnZKbVRrUnhaaFphemIrK3FWOG84RHN0WGhrVGdyOXpPV2tOM3pMYkhRckd5NysvQVFCZHlZeDVRQkxUSDdYbTZOQzc1N0NXc3c2b1MveDJ4c3p4cGRiN01YM2Q1ckZjMXVRY1lGcmpTQUo3U2c4cHJ3aUl3S29JU0dCZlZYZXFNU0t3R2dMV0pxekVZcmdMSzBhY3pyVktvdWhIOXc2K2xMTzQ3U3VMUHIvcE4vWEN4aWpJWVdjdHBpV3cveFo2YU5PZFl5VTAxdzk2YklHZEhLd05Ndk04MEFVdXRyaFpiajlTTE9LdGQ1WDZlOHptbllMdlFZMHJtWStXZW1saU9iWG1DZXYzb0sxbXJpdXZ2bWJHK1A5UGRTZTB4SEdYT0FTeXNvZUM4YVVjWW1TOWZJS0hZc1pXV3kwZUxsQWdxeW5VY2k5NEx3QXZOOFIxMW1ubzRlTmF2bVhydGlCdjFkQ056dXNtR0YraFY5YWFvMFB2M0JhQmZhL204T2xNQUx0NVlOQTQ1MENYWjh4aFlZMVYxaVhWNVpNMWppU3dqOW5EZXBjSWlNQ3NDRWhnbjFWM3FESWlJQUtPZ0xVSnl4R0pMYmd4QVU4L0JvQytkSDlnRmRiNXU3WG9adGFoN1lseGM5TldLZWRkMW1KYUFqc1F1b3FiNitjeVlaaU5tblVLZ1QxR2xQcFdjOGgwb3laUTZSY01HakZCL0Q3di9MK2ZWNEhzUlZ6QXhqYzNMaGwrbmxBK2IwQzhHOEJPZ1dkcTF0dXFhcTE1d3ZvOWFPdFY2b0FoeGc5MWppWHZVc2VkMWU5RC8vNFFBQ2Q0Q2trOXhCaGFsN0dldjdhN2RkRjMyMm16RGljN24rZ01abHc2Y1M3Nkt3QVBpaWk0aEcvNHRYekxkQjlGYS85YkI3aVZtby82WHNFNWlyNzhlWE1uWlQxYWE0NE9EWjl0RWRoRDh4ajVUT1diUDhiVkdZMkFlQUFjZTBQWEdrY1MyQ01tVkdVUkFSRllKd0VKN092c1Y3VktCSlpPd05xRTVZakVNVXdlQmVCWlJrYTZmSGxtd3JYdG1NWHRrSTBZTjhoMFgzT1BtQVptaXZuV1lsb0NPeER5dlZuRGZVVmtkMWZKTm9YQXpvYVFNVVhwa0F1RFZ3STRQTUxpTXlhNE1kMGczQm5BdHd0UjVKcUxGbXd2Y1lHTktjNVlMbTI2cjQ2NWFjUDhqQm5Cc3M4dFVPK0xBYUJ3UU92Vzd4amwxWm9uck4rRGJyVys1c2JKSnpQYlR1SHE4YzM4ZnJUeGZLNExpQ1dPdTB5VVVZK0Z4a3d0My9wUkZSc2hVNHhMbHJZYVAybm1JWTRkaXJxL0tWQzNDN3E0RlF6d2ZwV0k4a29kM0szcFc0NXhMVmh5TG02NzZlb0ErRHZIUS8zckF1REJjbXlxTlVlSDNyOE5BanVOWExqTzQwMVNYNXJTMVpVbC9xZmVGTExHa1FUMjJDOVMrVVJBQkZaSFFBTDc2cnBVRFJLQlZSQ3dObUcxQlBZWUsxa3VSRzhNNEI4VFNGdUxXeGFWSXd6eEtpcURvZEVOVFd6S1lXY3RwcmRkWUxmY2Q2UmV2NDN0eTZueVRTV3dVL3c4eVZudStkcE9WMDYzQTNDS0FTZjIxZ2UvUzdvZTRSZ2ZrdjdRV1lyeWtJQXA5NXU1WXVQTG41YWtESm9aU25SemM1aHpVWkFqeUZHQTQrRUNEKzg0NThVSU9iWG1DZXYzWUpNRDI4NXY3cTBKQjZFc2c0Y0p0S1MrcDhGMlNDRGNwWTY3SVdNLzlHeklmY0ZVRnArMTJycFpibXhRMGU1emRDbjNXQUJ2anpoRTdHdkh6bzBMcVlPZDI1azlJeHM2eEFCZzh4VnIrcFpqQW5Dei9aeVA3dXZtWWg0YTVTWUsxVTl3Qnkwc0kwZkVyRFZIaDlxMERRTDdEUUM4endXNjcyUEJNY0RiZFovSTdmeUJ6MWxCdGxsOHl0N0FHa2M1WTNOZ0UvVzRDSWlBQ015RGdBVDJlZlNEYWlFQ0luQitBdFltTEdVaG1NbzJ4aXJwYlU1OCtrVms0U0VmczkwaTZHZVZHeWlLUENIWEVkellVZng2Z1JPRnVtVzhCY0ROQWRCeXZpL2xzTE1XMDdsaTRkdzNaWkhkR3d4dVNoY2orelZpSjRPY3JpVk5KYkNUWDB6QTA3UGRJZGgzRGVBcGJob28yRlBZb2xWNHJFakMyeVVVczQ1c0JMRnJiZFJseURlVFl2bEtRWTRXMmU5b050Qy9qQmlBRklCNVFFRnJ1OHU3L0xHYjVWcnpoUFY3NEd0V2JKOXhycVFnLzV5ZStiU3Y3RmhmLzc1NkxYWGNSUXlmcEN4V2NOT2MzNnFrQ3N3Z2MreU5pYzJxOGlDUjdxSmUzZnplZjlCWk1XL2VoaUZmSHNMVFF2MEFBSnczOW8zd3M5NTlGOFgxVzdsM2xNQzF0bS81Q3Mzdk93TnNYeTBDRGwwTVB0eTVDb2s5OU9UNDRLMm5Sd0JnME9WdWlwMlh1OC9VbXFQbnZwYXpZcmdNbVd1c2VZeHNwcjdGYUJtQnNJNHBCNXJXT01vWm14R2ZrTEtJZ0FpSXdQd0pTR0NmZngrcGhpS3dqUVNzVGRpUXhiREZNOVlOUTJwQVBXdUIzNjBYTjg4VTRON1krRWJ0aW9RVXYrZ0RubGF3M0hodEpycTBvREJHWWNrWDdEU0huYldZSGlJVyt2cGpEbFpQMWxocC83NHR3VTNiOWs0cHNMTU9NZDlTVERDK0hBdFNDazQ4eEtLb1FyY0p0SEJ2MHg1T2FMaytnSnNBb05XNkx3MzVabkxxelhwODNGblovY09HcjlYLzZhenJHQ0NWZ3RGbWl0MHMxNW9uck4rRG81eHdkVWtQN0c4MndpSVBSZC9mSEpMOFd5Y1ByZm9vV3UyZklEcnl4dENETTYySDIxZm45TjhjeGwzc2ZCaWJiOXVDbS9xNDhMWUkzZE1kRXd0dXBIdzV0K3FzcXEzdFcyWjdVdzQ4bVorR0ZGeWp2Yk81SGZYRjVuRHZzeDFvdkVXNVQvUDNhenBoblFjaXZoUTdMM2VmcnpWSGgvcDlEbXM1YTgyUXN5NXUyN3g3RTYvbExNOXZaNXZub1FDZVozMGNsZjhlY21QSVY2ZTQ1TExHVWM3WXJOeDhGUzhDSWlBQzR4Q1F3RDRPWjcxRkJFUWdqWUMxQ1J1eUdJNnBTVXpBVS9yV3BJajJsWmdDRyt2SVdOY0FrY1h0a0syOXhrM0xLQXBKRXRoelNhWTl0MDNCVFZzeVV3dnNNYTZjZUNXYnJweG9sUlZLdVJha2FhTmt4OXhEQkhhV2xpUFM1dFk1ZHJOc2JicHoyMno5SGxBNFlPQlgrcWNPK2VmUGJYLzczS2t1RU55UGh4YmtEa2hqZkwwWGVOWDVpc2p0ZzlMMVlIbmJHTnpVeDVIZk04ZjVhd0svM1RYNndGY20zVkF4cmt1cCtCUHRlOWI0TGJQdjd1WGlWTlNjZnpiN0tuWmU3ajVYYTQ0T2pjMjFDK3dNRHNydjFwZFMvWnZYK3M1RGE5WDJuYzl2Z3VieU1NQzZwV2VObzV5eFdhdmRLbGNFUkVBRVJpVWdnWDFVM0hxWkNJaEFKQUZyRTFaYllHYzFZd0tlMGo4eEY2Ty9qbXhYaW11QXlDTC9NeHN0M3VreTVrMk4zMkZML014aFp5Mm1hNGcyYzlpVXhmUkJhSE0xOWJYZ21Qcm41TEhHMk44NndTR243TmhuWWdLZTBzcWM4UW1zUUtKVGlPd2x2aG11NFdoTmZYeGxZVGwyczF4cm5yQitEemdXYUtGT1Z6eTFySUI1bStoK2phdUdFdUo2TzhhWE91NWl2OUZRdmxCUXdCUkx5aEoxbVZNWmpMRkF0eS8wVFQ5Rm9uVTFEMzcrZXVBdERWL2QxL290VHlHeXg4N0wzYjZvTlVlSHh1b2MxbksxTE5nWjA0RHJicnFDOHlXNlorTXRoeGdYYmJXLytlZTZQWXZ2UFhSbGVNTm0vZlpsb3lMV09Nb1ptN1hicnZKRlFBUkVZQlFDRXRoSHdheVhpSUFJSkJLd05tRTVJbkZpRlJCakpVdGhteTRHS09URkpsNzU1ZFZnbnp1RDJITGFmTFRVcGJqT29HZE1sdmladzg1YVRKY1FDemZiUFlkTm1kVVg5TjM4WmdCMHJkR1gxaGJjdEcyak5jYkdFTmhqQXA2eXZySCtzcmtldW91elF2VGQvckRHUSt6ZjZZdjMzczEzZTA3c0EwWSsrbmVuQlIxOUxkZElzWnZsV3ZPRTlYdEFnWjBCVFd1NTJqZ2F3TEdOYTZMWW1Cc3BmYkRrY1pmU3pzMjgvTjJrOE5TM0QwbnhCVHlrRG5OOXRnMHd6SU96UzQxWVNmNldIZEVjSkgyOTRqdlgvQzBURzkxTnZhcjVIYUc3c0pxSnJtVU9keTYvTEd2amJqMXF6ZEdodHM1aExWZExZS2M3SDdwbTNDVUFnRGRCR0p4OURpa1VWTHF0WDB4OXJYRVV1MmFZQXhQVlFRUkVRQVNLRXBEQVhoU25DaE1CRVNoRXdOcUU1WWpFT1ZXTENYaEtzWXgrMFgrUThJSlNWbXA4TnhmRG4rdTgyeEkvYzloWmkrbHRGZGhEbXhVR2wyUmd1ZThrakl1bFpMWEcyQmdDTzFuRkJEejlsdk12L29WSXVKZHJBbDBlQitCT2tmbFRzbkZNOFB1anRYVnNrTHZZOG5uWXc5czA5RDNmRjU4aHRwek5mQlJ5ZUVqeDNvZzYxNW9uck4rRFZtQm4zYm11dmFtekFoNTZpTW4rZW9DTGg1SExML2E1cFk2NzJQWjE4MWtCOStiZ3J6aW5YYVdmNFRmTmVlZ3BuWUREcGQvQjhpaXNNNEJ6MXhkNGpmZXd6RzM0bGkvbTVtSGVMaXJ0TXVaNzdqZUVCNm81QjM2MTV1alFlRm16d0I2S3YwTW1kTEhFSVBkMEtUbUhaUFUvNnhoejg5SXFSd0w3SEhwYmRSQUJFWmlFZ0FUMlNiRHJwU0lnQWdZQmF4T1dJeExuUUtkUTlSSm5iUnA2L25FQW5obmh0N0JiQnEzVWJ1MmUyek94Y3R4a1BjTDVIT2FWN202eXhNOGNkdFppZWhzRmR2NStudUJjZFBSMUg0UE5jdk8xeG1TTnNiRUVkdllCeC9QVERjaXZkTlorbTk5SzZERUdZT1IzVGQrNlF3UnIrbDk5SFFCZXpUNDNjWTdJR1RzWEFmRG5MdWhucmtVN2IrYlEzL2pUbkEvNzJNT0FXdk9FOVh2UUZkaGJaaFM1YUkzTFBxUlFtWko0Y01udmx3eGkyNTVTL2hySFhVcjdRMWFmc1M0S1V0NjM5THljNS9aeTQ1bTNiRUxXc3JGdFpjQmpXc2p6NWtkSnQwZlcrN2ZwVytZdHlNZTQzNTRoZmNiZnJaUGRid2h2ZHd5Wmsyck4wYUYrWDZ2QXZpdUEwNW9EODFBZzJ0YzJnV3dQVFhBamFYMC9KZjRlaW4zQjhua3I5a2JOWWRnbkFpK3p4cEVFOWhJOXBUSkVRQVFXU1VBQyt5SzdUWlVXQVJGWUdRRmVKNllQUjFyQzAwODdOeVRkOUhNQW4zYVdKVnl3MDJKOXlDWnJaZmdtYVE0RldGNE4zcjNuN1hNSmFqVUptSlc5bEFkaGYrQXNMMjhPZ0lkaC9ENDNMUk1wU3ROYW51NFZQdXJHeGxudXY2VmM0UytKajBITmVBdm5RR2RGUnl0cEN2RGQxTmFiMXRvVUMyaXAvcWxLL3BkejI1WWp5clh2NHVFSUQ0VG9yb211bks2OGNXQkM4ZXByamF1dkR3UDRPOGRnVE1IUngyVEo0ODdxNTVEVloyeVFQZXNkYS80N2hWdXVFL2hkVXdqamQ5MDNKNUVCRCtOLzZBN0tLTTd5TUp6cmg1VER4cElzdC9GYjVsNzdDbTcrNFJydm1nQXU2em00NVcvSWQxMS9mYkM1alhObVkrRHhGYTMzU2c1QmxTVUNJaUFDSWlBQzlRaElZSy9IVmlXTGdBaUlnQWlzbDBESUNtaU9Wa3ZyN1FtMWJPMEVob2h5YTJlenRQYngwT2NNZDFDMVdmZGZPYmRhSDFwYW8xVGZhQUw2bHFOUkthTUlpSUFJaUlBSWlNRFNDRWhnWDFxUHFiNGlJQUlpSUFKVEU3aTR1MDF3blo2SzBGcVp0eEhvWGtKSkJFUmdPQUdKY3NNWnpxV0V1N3FBdkgzMWlmSDlPNWQycUI1NUJQUXQ1M0hUVXlJZ0FpSWdBaUlnQWdzZ0lJRjlBWjJrS29xQUNJaUFDTXlLd0MyYUsvcnZjQUVWTnl2R2EvaDBSVEVITnhPemdxYktpRUFtQVlseW1lQm05aGg5NFRPZ0p1Zkh2a1EzUHJ6OW83UmVBdnFXMTl1M2Fwa0lpSUFJaUlBSWJEMEJDZXhiUHdRRVFBUkVRQVJFSUlIQWhRQzhDZ0F0TWZ2U1F3RThMNkU4WlJVQkVRZ1RrQ2kzamhGeVBlY2VacWVlNWpBR3dBRUF2ck9PcHFvVkhnTDZsalUwUkVBRVJFQUVSRUFFVmt0QUF2dHF1MVlORXdFUkVBRVJxRUJnSHhmQWNwZWVzcjhCNElZQXZsemh2U3BTQkxhVmdFUzU1ZmM4OXhzbk5FRTNIK3hweXBPYS84N2dwMHJySnFCdmVkMzlxOWFKZ0FpSWdBaUl3RllUa01DKzFkMnZ4b3VBQ0lpQUNDUVNvQWgwdE9lWjV3T2dCVHY5c0N1SmdBaVVJU0JScmd6SEtVdTVranVZM0wybkV2L2lEaVkvUFdVRjllNVJDT2hiSGdXelhpSUNJaUFDSWlBQ0lqQUZBUW5zVTFEWE8wVkFCRVJBQkpaSVlGY0Fwd0hZdDZmeXYzSXVEajYweElhcHppSXdZd0lTNVdiY09aRlZ1enVBRXoxNTZYZjlVQUMvaml4TDJaWkxRTi95Y3Z0T05SY0JFUkFCRVJBQkVUQUlTR0RYRUJFQkVSQUJFUkNCT0FLaDRLYnZBbkE3QUwrSUswcTVSRUFFSWdsSWxJc0VOZE5zb2VDbXZPMXpNSUJUWjFwM1Zhc3NBWDNMWlhtcU5CRVFBUkVRQVJFUWdSa1JrTUErbzg1UVZVUkFCRVJBQkdaTHdBcHUrZ0FBTDU1dDdWVXhFVmd1QVlseXkrMDcxandVM1BRY0FQc0QrUDZ5bTZqYVJ4TFF0eHdKU3RsRVFBUkVRQVJFUUFTV1IwQUMrL0w2VERVV0FSRVFBUkVRQVJFUWdXMGhJRkZ1VzNwYTdWdzdBWDNMYSs5aHRVOEVSRUFFUkVBRXRwaUFCUFl0N253MVhRUkVRQVJFUUFSRVFIdmVQOUVBQUNBQVNVUkJWQVJtVGtDaTNNdzdTTlVUZ1VnQytwWWpRU21iQ0lpQUNJaUFDSWpBOGdoSVlGOWVuNm5HSWlBQ0lpQUNJaUFDSXJBdEJDVEtiVXRQcTUxcko2QnZlZTA5clBhSmdBaUlnQWlJd0JZVGtNQyt4WjJ2cG91QUNJaUFDSWlBQ0lqQXpBbElsSnQ1QjZsNkloQkpRTjl5SkNobEV3RVJFQUVSRUFFUldCNEJDZXpMNnpQVldBUkVRQVJFUUFSRVFBUzJoWUJFdVczcGFiVno3UVQwTGErOWg5VStFUkFCRVJBQkVkaGlBaExZdDdqejFYUVJFQUVSRUFFUkVBRVJtRGtCaVhJejd5QlZUd1FpQ2VoYmpnU2xiQ0lnQWlJZ0FpSWdBc3NqSUlGOWVYMm1Hb3VBQ0lpQUNJaUFDSWpBdGhDUUtMY3RQYTEycnAyQXZ1VzE5N0RhSndJaUlBSWlJQUpiVEVBQyt4WjN2cG91QWlJZ0FpSWdBaUlnQWpNbklGRnU1aDJrNm9sQUpBRjl5NUdnbEUwRVJFQUVSRUFFUkdCNUJDU3dMNi9QVkdNUkVBRVJFQUVSRUFFUjJCWUNFdVcycGFmVnpyVVQwTGU4OWg1VyswUkFCRVJBQkVSZ2l3bElZTi9pemxmVFJVQUVSRUFFUkVBRVJHRG1CRzRLNEJXQk90NEh3THRuM2daVlR3UkVBTkMzckZFZ0FpSWdBaUlnQWlLd1dnSVMyRmZidFdxWUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaEFUUUlTMkd2U1Zka2lJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUtySlNDQmZiVmRxNGFKZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FqVUpDQ0J2U1pkbFMwQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lyQmFBaExZVjl1MWFwZ0lpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpRUJOQWhMWWE5SlYyU0lnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQXFzbElJRjl0VjJyaG9tQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNOUWtJSUc5SmwyVkxRSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlzRm9DRXRoWDI3VnFtQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJd0FnRXFLM3NBK0NyQUg0OHd2djBDaEVRQVJFUWdSa1JrTUErbzg1UVZVUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUmdSQUovQk9CWkFONEQ0QXdBNXdENDJZanZYOHVyL2plQTl3TzRNSUJUQVR3SHdQc0EvSHVsQmxMTDJRM0FUajNsL3dqQUx5dTlkMjdGN2c3Z2VwNUtmUXJBNStkV1lkVkhCRVJnblFRa3NLK3pYOVVxRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRWJBSTNCM0FpUnVaZmc3Z2J3QThhb3VFV290VDZPKy9DK0QxQUc2OWtla1hBUDRXd0xFQXZqamtCVDNQL2k4QWIydEUvUDE3L25ZYkFHOHQvTDY1RnZkL0FKemlxZHcyY1poci82aGVJckExQkNTd2IwMVhxNkVpSUFJaUlBSWlJQUlpSUFJaUlBSWlzRmdDRkRFZkN1QlhBSTRIOFA4VzI1SjVWZnk1anV0bXJVNEFjTVM4cWpyYjJ0d0R3S3M4dGZ0K2N6UGdBQUJuRjY2OUJQYmZBcFhBWG5oZ3FUZ1JFSUU4QWhMWTg3anBLUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFnWEVJWEIzQVNRRCtCTUIvTkc1TTdnemdUUW12dmlDQVN3RGd2MHRQSmQxL2hFVGEyd1lzZzVmT3NHVDlyK2pjNjF6WlUraWhQVGNFU3J4L2JJSDlRZ0IrWGFMaWhjdVF3RjRZcUlvVEFSSElJeUNCUFkrYm5oSUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVhaExnRmJyRHdQd05BQVg2THpxWHdBY0JPQ2prYS8vUFFBZkJuRDV5UHh6emxiUzdjVmVBTTUwdnJ5N2JUNFB3SDRBdnBFQllzNnMveExBTVJsdDhqM3lPd0NlMzNBNnpKUGhwUUFlWE1rUCsxZ0MrMFhjRFlmN094YzRwUzN4aDNZSDYvVWlUeUVsdjVXaDlkVHpJaUFDS3ljZ2dYM2xIYXptaVVCQkFyVDRlU0NBUnpTYkhDNG1Qd2pndmdEb28zSHF0RE9BeXdENDQ4YkhJUmVCMXdTd2kvTVorUkZYUnk0R3Z6WmpQNUpzd3g0QTluWVdWZ3lVUkV1UlR3TDRMb0RQQVBqQ2pPcy85UmpRKzBWZ0RnVGFnR01VRi9aMEZXTHdPUDcvVEJTRS9zRlpnUDJrRTBpTy8xMUpCRVJBQkVUZy9BUzREbm9oZ1B0NXdIQnRkMk8zVHJMWXpWbjB0ZXErK2ZlU29pSExla3RQQlhnNzRLNlpGc3R6WmwxYVlMK0Q4NzNlUGZ4cGNUSzQ1czBBOExDaVJxb3RzSE8veDVzaUx3QndNZGVBTnpSQlErbXp2MWJnMWh4T2Z3SGdtWjRIUzM0ck9YWFRNeUlnQWx0RVFBTDdGblcybWlvQ0F3aHdVVVUvalBmc2xQSDN6b3JoWndQS3pYMlVjOWZWbk1CUG40ZS9uMURRTjkwMXpaZTdxUEpUK3Uva1ZlVjdPNnVYUDR4c3cyY0IwQnJtbFkwMXlROGluNWxUTmg0azBIOHErMjlvK2hhQWYzYUZ0R0lsaGNvcHhtU29MVHlJdW80bkE0TmZQYWNaQjE4WkNpUHhlYXNmZnVnMkt5SGhsOWYwSDVUNDNxbXljM1BJdzZyU2ladlBhd0M0SFFCZXBlY0JXVTZpdTRNdkFYaUhDMHBHYThKZjVoU2taMFJBQkVSZ1pRU3UwRmhTbng1WU44UmFDTTlaOUUzdHNwS2lvYy8vT3RmWGRNbVRrK2JNdXFUQUhocWJqQk53VXdBZnlBRVkrVXd0Z1oxR1ZRelcrdXpHci94VmV1cFN5K1ZOWkxOM3lDYUJQWmVjbmhNQkVTaEtRQUo3VVp3cVRBUldTWUNSNlNsR2J5NndwaERZdWVCamZiamdvN2czTk5FcW5BdnR0d0g0emREQ0VwN254dU1KQUI2UThNeG1WZ3B5dkpKNkZBQ0t5MHRKb2MxQXFUYlFxb1pXd3U5eVZrV2ZtOWpTNW04MkRxZTY3ZnhYQURkcUFqUjlvbFRqSTh1eCt1R3JBSzRMZ0ljWXZoVHllUmxaamRHeWxSUWp1SGJpTFJrR2ZxTUEwV2UxVnFKaGRHWHc5S1lmVHAxNC9KWm9pOG9RQVJFUWdTRUVhQVhNdWRBMzMxSmdPOVlJZWpwbjBUZVZUYW5mdEYwQm5OYXNnL2ZkcUFBUDJXOEE0TnpVaXJuOGMyWmRTbUMzWE1QRWpFbmlvZ3VrbXpkQlVNOW9iZ24vT0pGM2FZR2Q2NXNidWdEQ29YMFcxNFpjdS9KbTdSeVNCUFk1OUlMcUlBSWlBQW5zR2dRaUlBSStBclJhcDcvTGgzZ3lqQzJ3LzRHelBMOVdoUzc3bUJQS0tNVFdURHdndUpmekU4aUZlWW4wL1dZRGRKZG1vZnZlRW9XTlVJWWw3TmFvQWc4anVERS92am1nZWQ4RVlxVUU5aHE5bWxabUNUR2l0ZWppTmVUVy9VdGFMZEp6VDNVQWsxNVRQU0VDSWlBQzlRaHd6M3Brd0hkMmpMWHduRVhmVkhJbGZ0UDRUdDdBb29YMVJUY3F3TnRVZEgyU2U1UEt4NW8zRWNhNnNVZVhrWGRzRHFwMzJtaGJLWUdkYSsvWEFMMTZDdHQ1KzRnYmxkM0F2YkUzTWJyTktTV3c1eGd3OFNidDRST3NxZnUrbFpEQWZuQnppL1NkcVIrWThvdUFDSWhBRGdFSjdEblU5SXdJckpzQUYxbjB0OGRnTWEyL3ZiNFdqeVd3c3o0TUR2UXM1L3U5Rm4wS1dYZHo3aGxxdUkyaGhRcGRnVEFRVCtsRUFaa0J3R2pSWHFQdUplczdoY0RlclQ5ZHN0QXFtRmVpeDdMOGw4QmVjZ1RsbFRWRWpPQmE2VUQzZlkwbHJMZXRsTUNlMTk5NlNnUkVZSDBFdUg0NDJmbTA3bXVkNWUvYUovckdDSzYrWjJOK1c0WTh5M2c4N3dkdzRZMEd4N3czWmdUUWwvYUpQUmw1dy9MRk1RVjQ4Z3hwODREWG51L1JJZjF0MWVHcXJsL2ErQ3JkL05ZNFpGNmZFUk5qWGZtQ2RmYlZhYWpBbmlPc3N4NjhLY285elpObkVvdkxKN0JyRFdXTlpQMWRCRVNnS0FFSjdFVnhxakFSV0RTQlZrUjZpY2ZmM21ianhoRFlhNHJTZloxVlM2aW1GUTBYekhRblVUTTl1bG0wSHpkemtYMXFnYjNsejgzQlU1dGd1SDg5Z3RBdWdiM21xSThyTzFlTTRDYVlGdXZjOUU2UnREbWNncnJlS1FJaU1GY0NJV0dUZGFiTFB4cUo4REI5TXcwUlhJY0l4a09lclNtd2M5My9DaGNMcU11S3NWZm9KdVRUQXdiQmtEWVBlTzM1SGgzUzM2RTZYQndBQThEZXBDY1Q5eEczY0RFRGZHWHM0bHdZWHJzbkE5a2ZCT0Nqa1JCeUJYYmVvdVVOaFdPYU1YRDV5SGN4RzlmT3ZBM0tkZEdjNGtCSllFL29SR1VWQVJHb1IwQUNlejIyS2xrRWxrSWcxdC9lWm50cUMrd1UxeWxLZHdPcnhqRGw0cGErQVdudFE5K1NxWW5QYzNQR3hYT0paUGxvN0h2SHp4di96dlIveVlWelNodEsxNzFFK3pmTG1JdkEzdGFMVnV5ODR2cjZpZ2NURXRocmpLUzBNbk1FZHJxajR2WHZ2Z0JmYVcvUHp5MkJQWi9kM0ora1NNTTRCcng5ZExRTGNEdjNPcXQrL1FUNE8wK3hqQUc4ZnpUaGdkeTI5RS9JTlFjWitIeGZEeEZjaHdqR1E1NnRLYkR2M3R3R09Bc0FBM1YyRStQWE1IQjMzeUZGN0JnYjB1YllkMWo1aHZTM3IyenVtWGpqZ1RjaCsxS3MzL1ZRVElHekcrdjRHemRCNUw5ck5kRHRFM2lveFBoVW02bHYzVU9qQWQ1T2VMeHhTM216ckRHTlVpS2F2VU1XQ2V3NTFQU01DSWhBY1FJUzJJc2pWWUVpc0JnQzNCRGVDc0F6TXYwSjF4YllZMzFsZnRJSjhmUkJUcitPWEFSMkV3WGRQM1pDUGNWNkN2ZFdvbC96QXdCd2tUczBQY3E1dDdIS29iL0dwelI5UW4vd1haK1g3Q2Y2YUdRNWgxcUZOTzM4a3JPcUdjdkhaVVNWZHVnUDMyWWd0YXlTK2QvZ05oMDgyQ2lkSkxDWEpwcGVYb3JBenJVUi9iYWVOTUF0RlVVMnhuVDRKMDlWcit5KzY3N3I1ZDFISkxDbjkvV2NuN2lNdThsMFdITjQ4NGVkaXFhTXp6bTNiNXZxdHJPek5IMFFnSnQyZ20vK3JZdTFzazBzeG02clpiamc4OGMrUkhBZEloZ1BlVFpIWU9jNmwydFkzcDRNSmE0dG45ampRNXpySVJvZHBDYXVuYzhFOE92R3ZjeVFOcWUrMTVkL1NILzd5cVRWTjluMEJkdE44YUhPZFFiZHF4emxlVkZzV2JFVzdGZHk3N3AzWW1EMktkd3E1dlMvQlBZY2FucEdCRVNnT0FFSjdNV1Jxa0FSbUQyQlBaeFErL0RHcC9DbEJ0UjJTb0dkbHRxMGJ1Y1Z4YThsdElHYkRWcVljVkZyQlJubEJvTytLVGNGKzRUWC9hZEZHeTJCZUIzVWwxaC9MbmdaZk5QeW44NkRndGRGSElpODNJbkYzT1RNTFZrVzdMd2UreGhuQlJoVDl6OXlHemtLbHVRelpFeXpMN2g1NGlGSHliUldnWjNXYjljYkNJbzNOUDRxOEkya2pnZGZkVDRFNEJzUmRlVzZpREVmZUFXNmJ3UHRLNEwxWkQrLzJvbnFzWUhoK0Q2S0FMUlc0d0ZhVjZqanV5U3dSM1RhQXJKY3gvbU8vbjFQWFNXd0w2QVRYUlg1ZTg2YkxYUUQwWmNrc0kvVGw3UzZwbUhDMVR5dis0enoxZjcxenQrSENLNURCT01oeitZSTdMRUdLcVY3cXJzdkdOTG1VdlVhMHQ5OWRRaXQ2Ymx1dkdXaTI1U1FxeG51QnhnWGltditVQXF0cVdrb3dNT20vd3VBTi9KUzB2ZWNwVDdudWlFM0dWTGVPU1R2NDVwOTNkTjZDdEFhYWdoVlBTc0NJcEJNUUFKN01qSTlJQUtMSkVDcnVUOEQ4SWdOcTdraGpabEtZSDl6NHo3bENBRGRUVk5xTzdqUXBBc1lIamI0VW93ZnhkQjdhVUZFSzVkYkJ6SjkzRjNEVFduTDVRQ1F3YjZCY24zV1c2bWNhdVMzQlBhdkFyaXVjL09UODM0R2JMcWlFeXJ2WjNEcUs1K0xjYm9JZW52T3l6M1ByRlZnTDRISUVnS0dqb2VVT25KTjlNaklHeWR0dVI5MnQwcyswbXhpZjVQeU1rOWVIdnhSdUdzM3hOb2NGb0E2Z3lMb0N1YVVRRDBrc00rZ2t5S3JZTTFaRXRnalFSYklGckltWnZHYlZzQkRCTmNoZ3ZHUVp5V3c1dytVSWYyOStWYjYvbitINTBBbjFXOTZ0K3lRYUI5em05WmFVNmZTNDhIVVk5MGFlSWlCVWVwN2grYjNyYk8xaGhwS1ZzK0xnQWdrRVpEQW5vUkxtVVZnc1FSQ0FwK3ZVWFNQOGpNQXRMenJTMk1MN0Z4b0hnTGczUkdXM2pFZEZXTmQva29BOThsODMrMEJ2TEhuNm0xYnQ4ODc2NnJ6WWlxN2tjY0s4c1hzSlN6d002cG1QbUp0QmtvTHFyUVFvaS9SSnlVRWN1TGhDc2RhS2Ivc0V0ajl3OElTcTBxUGg5QUF0Y1NhN3JOZmRMNzdZMjZlbUIrRkp3TmRpTkJQNm5NQS9HTnVJWHB1RmdRa3NNK2lHNHBVd3BxekpMQVh3UnhWaU9VcWh2TTBBMGJ5WDZZaGd1c1FrWHpJc3hMWW80WkNiNlloL2QwdE1IUmJZbWpzSTJveFI3cGdvMzJONEMwTjdpZTRIK3RMMXBvNmxsNXBZNEhZOTViS0o0RzlGRW1WSXdJaU1JaUFCUFpCK1BTd0NDeUdRS3JBM3ZxanByRGpDekk2cHNEK0FXZFYvTzNDeEsxQVdSUy85NHQwTGRHdG1yWGdIYm9nNTd2dTBRUmZmRldBQjYzWTZZT1RyakhtbEN3MnRRUlZXclpUUUQwMlVtZ3YwVWN0ZHducy9oRm9pVlcxeHNObWpXSU8zTnBubmdYZ0NRdTVOajJuYjMrYjZ5S0JmVDI5YjgxWkV0akg3V3ZlV0hzUEFMcUo2eWIyQTEwQ01wQjVtNFlJcmtORThpSFByazFndjVkejdUUEdLTG0wc3pyZmRNM0ZJS1hIUkZaZ3IrWW1KT01HYlk2djl2SFlvS2FoMTNGZGZMSXp1dW5MRjNxSHRhWU92WmZyM0JOZHdOYlBSdkRnRFZyeU9HT2crOHlJVnlWbjhhMnp4MXBESmxkWUQ0aUFDS3lUZ0FUMmRmYXJXaVVDbXdSaUJYWnVSQTd2V082R25odExZSCsvOHlmKzh3cmRTamN1ZExkQ0M2ZStSQitJTjNkVzh5bXZwNHNIWGlYMXpiRWxyTXRqRnRWUGR4YXdLWFd2bmRlcWQrM0ZNUHVjUHZnZkhkSFFJZGQrdThWTFlQZkR0c1NxMnVPQk5iTjgrYmExNTFWaitrUjlhK2F0bG9naHB5d3JKU0NCZlQwZGE4MVpFdGpINyt1dXNjVG1PclpibTIwUjJDa3MwdzBpZjl2NjBvV2NOZi9tMytnU1pJZ2h5d2VidUVqM2JTeXl1VjYzdnBQeFI4bC92ekZXWUdkc0ZQcEF2NlNuc3JHQlNHUGErcWNBM3V1SlJ4TmFpMXByNnI1Mzh4dWh2M0xHYS9wQlRPVmNudmF3aDN1Ymx3QjRRUk9yaXJkeHJmaFJDYS9JemlxQlBSdWRIaFFCRVNoSlFBSjdTWm9xU3dUbVM4QVMyTG1vWmxDL3AyeFkrMHd0c0IvbUxJNXJCdGk1dnd1WTZ1dTlSd0U0THFGcnVYR2haZmxkUGMrVXRDem5PeGlBeUpmT2FZS243ZytBN25YbWtxek53QmlDS2xsWUc2ZVcxeEJYUG0wWkV0ajlvOC9haE5jZUQzUXhjQktBT3hrZkNEZTR6RU1YVlVvaWtFcEFBbnNxc2ZubXQrWXNDZXpqOTEwN2orL21nc2I3NHRwc2k4QnU5UUN0a004RVFGN2RSRmQ2VDdRZWp2eTc5WjFFRmxNbG15V3cweENEYmx2SXc1ZDRhNEszSW44Y3lNUDE3a1hkMytueWpVTDkvM1N1TjNkdUJHb2VoRnpUQlZRbnIxQmdkZDdrNWUvSTV2dXNOWFczZWd6RXluM2VxWmtXNkF6Q2Z0cUc4ZEEzM1I2SlludmZYbTNPNDZESzRESUtyVzJjTmtXYjlFNFJFSUVPQVFuc0dnNGlzQjBFUWdMZmk1eEY3N2Q2VUV3cHNITis0bUt6Uk9EQVVDOWZBd0FYcnUwaWVETXZMVHdZTERNMlhjbVZ0N3ZuZ1hjNW4rQWxEZzBZdkpaWE5mZjB2Q3ZYQWorMnJUbjVyTTFBYlVHMVcrZFEwS3B1dnFFM0RpU3crMGVLdGZtcVBSNHNOMUdzdWNUMW5DOWR6M1FKU0dCZnozaXc1aXdKN05QME5VVjJ1cndJclJrbHNQKzJiL29NUzBvYWYvQWQxbmN5elNqNTdWc3RnZDB5dlBtM3h0WGdLd0RRb0lhcEZjcjV2N25HM2JWUzR4NEg0SmtiRnVQV21ycDFBME9YT09jT3REYjMvWTd4c09iZ0p1RDdUM3ZhUGVkeFVLbWJnc1ZLWUorQ3V0NHBBaU1Ta01BK0lteTlTZ1FtSkxBcDhGSGNQUUhBWHhuWEE2Y1UyTWZDUlpHYTExcDkvaFZUTjh0M2R6NE5mZlduNzNSYXpKWkt2T2JKUmJjdnpjMU5qTFVacUMyb2JuS0tkUTl5cU5Hdm9mNlV3TzZuWTIyK2FvNEhib3A1Slh2dlFPZVY5TVZmNnB0WE9jc2pJSUY5ZVgzbXE3RTFaNld1R2RaRFp2NHRrY0FPMEhLYTdtTW9pSGJUUjV5N3hKQkZka29QVzk5SlNsbWw4MW9DTy9jRFp6VzNXeTliK3NVRHk2T2JPdDYrWkYrMUtiU21acEIwM2s0dTVXTFR0NytoTmY5dFBlK1o4emdZMkIxWmowdGd6OEttaDBSZ09RUWtzQytucjFSVEVSaENvQlg0R0NXZWdtdnM5Y0J0RU5ndHdUZGxzOHc1bFZZdDkvWjBGbjFiTW1qcWw0WjA1c2F6ZlZjMnUxbm9DNTdYV0g5WjhKMURpcko0MXhSVWZmV09DWEI1dHR2WWZEZWo4UkxZL2RDc3pWZk44Y0RBWWJRR0N5WGU4R0dndkY5bjlMc2VFWUdXZ0FUMjlZd0ZhODVLV1RPc2g4b3lXaUtCL2JmR0pIM2ljZXNlaGpjQjZEcW02NjZFdHdMb3F6dmxScW1QTlExNzZLcGtqRVJMY3I1dmw0MlhXUUs3NWVweGpMcjczckhwS2lhMHByNk5peGxUcXI2K05WTm96clBteTFKMVcwbzVFdGlYMGxPcXB3aGtFcERBbmdsT2o0bkF3Z2pRRlFaOVVxYUtyQkxZZ1pUTk12MHJjdkYwZGMvNHFDRjIweFVOTjB1K1lGYmZhQTVVcnV2NmZ3N0RkbzRDTzdud1pnRjk1NGVTdFNuelBTdUIzVS9WMm56VkV0Z3Q5MHFzOFpCRGxUbDhhemwxNkJOWFdNNlBNbjQvY3Q1ZjY1a0xOcmUyTHRING4rVy9iUnF6VFVzUjJHbmR1dW5lWUV4T3RmcS9aTG5XbkpXeVppaFpMNVZsRS9EMTNTY0EvSVB4K0VVQTNMRXhVdGxwSTkvcGpWSEZWeW8rZXlsbkhieTVaODhWVC91c2tMdnVZZHBBbGhmdXRDbm5kOWpIT3JmZWR1L3VtR1BJZ2NvdEFIRE5Qa2V0aEVMM3NjN2R5NWdDKzNPZHdjRW1hVnJLMDNpckwxbnpaVTYvTHZtWkd2dkFKZk5RM1VWZ2RRVG0rS094T3NocWtBZ3NtSUFFOWpTQi9WcE9ZR2VBcEw1VXcxMkw3N3B2KzM1YTNoN29BbHJOWVNqT1ZXQm5uNzBld0swRGtEN1QrTHcvQU1CM0VrRktZUGNEc3paZk9SdjdtTzU1aUhPVDVjdkwrQVVVVTA2T0tXeWhlVGgzM01BRlRxTzdBRm8yaG9LczBWME9iOTl3Zy9oV042ZWtIdHJHb3VMNmxGYVVtMkpXK3p3Rm9SOEcvTW55b0lBM1V4Z28rNWJPUjI3ZnV4bmcrLzBBWGduZ3pRT3YwdE5LMGpmMzN3d0E1d0ZmdWxkenU0bENuWlZ5TEVsOVpaSXhEMlo1dytuT0FQWU45RC83bmdkT0o3cDU4cndCdm55dHZtVjlTN2F6Ylgrb2Y1aW5PNmI2RGhyYWN1aGFpdC9BNzN2QXZyRVptMGRZSGVuK3JzT0xTRkNGc2xtL040VmVNMG94T1VJMUxiTmY2Nzc1YmlXNzdtRWtzUCtXVE13aGZFNUhjeTVsekN2Kyt6bjNtOHAxT2c5NTZKN25KODE4Zkk1YmEvSTNvKzgzbVhGaDZDcm1INTNQOTdjQjJMK25NamxqSlBSN3dmbi9rSjRNRDJoODdyL1k4K0NhdnJtYy90NThSZ2V3SlNpcURCR1lNUUVKN0RQdUhGVk5CR1pBWUJzRWRtdnhSMS8xc1p0bHkvODZSYXgzVnVoWHl3OTdhYi92UTVvd1Y0R2RiYnBoSXppK095RHFNYy9kM0FZMWhZRUVkajh0Ni91ckliQlRCS1dZZWxDZ0U5ZDZqWmZyUGdyUFR3QkFDNzJRb0c2TjhUWjRHZzhPUDJ0bFR2eTdOVS80K29kOXk2RFVUd1Z3c2NSM1VteW52OXFuT0pFajhmSC9GTkR2bWZwUVl2NFMzd090K0htUVNQZEl2Z0RaVnJWNDJNZ2JQUlIyVXR4R3NGeU9RVDdyczNoa250SUhYREh4RnJweE5xd2JCeGFmMkwrWEZNQmkzN25OK2F6Zm15V3h5Ums3UHZjdzNkdDVwUVQydmx0RDVEdm1vWkt2RGd6RytiT0l6bjVpTXhjZGJlVGo3d2JkUDlJL09nOHFHQUQxa3dEb1RyQVZ5emxIcHJhYmg4UXZDYmljNU56TGcxRzJjUXlCUGZTYkhOcmI4RGVaaGltOEFWSXIrVndCOFgxY20zQTlVTXNZb0s5TlYzSHZiSVBnZHZOSVlLODFDbFN1Q015RWdBVDJtWFNFcWlFQ015V3dEUUw3TlFEUXArRkZQWDN3cUVhb09TNnlmM3pYSi9rNEYvUVVjRDhWV1ZaS3R0dTdvRlcrWjJwWXpxZlVyNXZYRXM1S0NFaTVkWXNSWG5PdWQwcGc5L2VJSlhqVUdBL1hhelo4WjFRNFNNa2RkMk05UjlkVnROVG1UWnZTaVFjV1BJaWtLN0lTeVpvbitnUjJ0dXMxamFzbmJtNkhwQys2ZzdSVVA4RkxFTmpKaUJ2OFhHRjlreXNaOFFDWGxwZ3BpZTU2ZU5nY0dvc3NtN2NQNlB0NVNJb1I5TjhBZ0Fma0ZNdVlKTEFQSVQ3Zlo2M2ZtL25XZk1lYTVRanNmVVlnRkladjVDeW8rWlpTQXZ1U1dQcnF1bGNuQmd2RmN3WUw1VTBlaXZPcGdua09Ed1pnNTFxRjdpZTdpWWZiYlFEVHNRUjJXdlIvME4xMDY5WmxjL3prdEhQb002SHZlZ3BqaWI1dnFHMmpCUGFodmEzblJXRG1CQ1N3ejd5RFZEMFJtSmpBTmdqc3Bhek9MVmN0ZEsxdy9RejNJakZEZ0c0ZTN0ZFlUUFJaUy9ENVZ6c1JoRmFCVXlkTE9Lc2hxS2EwK2E1T3BQTTlRN2NVNUgxdVFxRVMyUDJ3TE1HanhuaXdncHZtdWdKS0dCS2pacVhsMkRNOHZsTkxWb1RpSkszSEdjdGc2RnhqelJQZFRUUFhzclErZmhrQVd2MlZTTHlDZnlkM295VzJ2RGtMN09UQ2NVL3IvTktKL2M3ZlVicEdTZWwzdXMxaHdQWFFMWW9IQW1DZzRTSEpKMUsxWmRKZEF3WEdMM1JlSW9GOUNQSDVQbXY5M3N5MzVqdldMRlZnOTdtSDJSUWdKYkRQYXhSc3JsZG9IYy81bG01a21FSy9sU0hYTGFtdDVHSERtYzUxVy9mWkdtdTAxTHBKWUU4bHB2d2lJQUxWQ0VoZ3I0WldCWXZBS2dpc1hXRG5ob05pRUVYVnZwUWlwbG9CVG10YVVmZ1d2bTJiYXI0N2RhQmJ3dG5VaTNVcmFDemJtK3B5UndLN2Y1Ullna2ZwOFdBZGhMR21LVzZoVXNmLzJQbXZDSURXdWZTdlBWWjZkbk5OL3JFZGErQ2M5MXJ6UkR1bjBhTHd3YzYxeXhCM04zMTFwTWhPTjBJZmpXekFYQVYySHJCUXBPYThWU3ZSb3ZKaEFKNmZJTEp6RC9JYzk1eXZYaFM5Nld2NGE1a1Y1OEhDU2U2d3hGZEUxelZNbTBjQ2V5YndtVDgySk1qcFZFMHJGZVEweGowTTI1Z3JzRE5tQm05cGxqcmtISlAzOTUxNFRGL29jMHV0ZXl1dTgxdXI5VjkwS3NsNTFPY2JuVGZXN3BNd0o0ZmE3b3RiUTlHZExtSjRTM2VxZExuRzVkMkhBWEQ5dnBtbU1EQUtXYkN2YVgwNVZYL3J2U0l3YXdJUzJHZmRQYXFjQ0V4T1lPMEMrMVZkZ0R0dXV2cFNpakR0Mjd5MDVkYThGbWlKbERXdDUxTUhxU1djbFJaVVUrdm5zL0xxbHBPNlFKYkE3dThGYSt5V0hnL1dkMG9MM0pzbldpNm5qckd4OHY4SmdGTUE3REhXQ3p2dmVha1R2bHVYRzZsVnNPYUpkbTZtQU03Z3hLWEY5YmErRER4S0Yxd3gvbnJuS0xCZjNNV01vTC85Mm9raU8zMEN2eW5oUlJSR3lEamtzb2IrY3hreklNVTZ2cTJDWlNXLzZScW1mVTRDZTBJblZzaDZVd0N2eUN5WEFYZ1p1SmMrc0RlVDcvZW02NFBjOTFxT1ZmcTZwcHUvWTl3dHRwd3htZG9zbjFpWGFzSGVkMXVUaDRnVXhUL2RxVlN1d0I0U0ZWUGJQSGIrbExYKzJIWGorL1p6TG1sYXEvWE5PdkQyMW4xN0t0WjNPeWVuL2d5R3pYbjZhajBQVHlGZ2IxWmpiaTVaUXZXSm1XdHkra2pQaUlBSXpJU0FCUGFaZElTcUlRSXpKYkJtZ1ozejM1TUJIQlZnbjdJUXNqWVhOZjJnVzJKVWFaRnl5SEJkUWwwZjJmamtweFd1TDcwSHdHMmRQODRZRmhMWS9aVEdGdGdwM0p6bUFpMzIxWXJpRERlejM0anAyQm5uQ1cySSs2ck5RR0E4QktTUDFjMkFwZnhtNmQ2S29pTkZuVmdMUlY1dFB6WlRHTFhtQ1FvaUQyOEN0akltUXQ4QkthL1IwMnI3dlJ2aU9BOGJLTDc5ZVdOdFRjdlFtTlJuNGR6MzNOd0VkdllUTGNvUGkyZ2svUXJUbXB4KzBTbkt0TUloYjN6d0lQclBuSTk5aXhrdFFSblFqdVhGcHJzNHQxeStQVWxPbVh5MzVlYzlKRDVKWUkvdHZUcjVodkFQclhkeUJmYSs5U0pqQk5EbEV0MGM1UjRreHRBckliRDdEQWZlMVJ3WTNLNXhIOVcxaUpiQUh0TXI4OHB6LzRBcnJZODNNVElPYWR6S2ZENmp5dndOdVZYakZvYnhwWHdIOVNuN3BJd3FSRDBTMm4rOTNMbXVpeXFvVUtiUS9EVUhYb1dhcVdKRVFBVDZDRWhnMTdnUUFSRUlFVml6d0g1dEFOeGM3T0lCMEdmWkUyTEZZR3dVZTN5cDVxTEtFcVBtRUlTbzVXTFZkUTZIQVpZSW0xcEhDZXorNzJKc2dkMDZQTWtKWWp1M1h4RmFMZE9LK0NZUkZlTVZjaDQwZmpraUw3Tnd3MDByNVJjMHdaOHZaanlUWTlFY08wOHc0TnlQM1cyRGJqWFlmK3pqelVPQ3phb3lNTnk5bkNoaEhSandYYlNVNS90Q2liOGxESlRjbDJoSnpYbkFsMWdYaHR6N29BQUFJQUJKUkVGVVdnaGE2VGN1NkNmL0RTV3U3NDkwbHJhaGZBem9lcmlMNFdGWjQ3SnREMjFpZmRDaVBNU01WcjRjSTEzUkxsUUhsdlVTQVBjT1pLSklRbi9DS1M0Y0dLRDhXWUV5UXdjblBGalkxZk1zWFRad25QMis1Ky8wUmMrQXZ6RnBqRUNKTWZXWVc1NWFBbnR1TzYvakR1c3UzRlBBV1FCdTNSejRjYzA0MStSekk4anYrWGtibFpiQXZtTXYwdFhhSXdMemUrMStaeEJ4SG43NjBqN043LzBIQXZzWlB2YzlBTDlNcUNnUFpYeTNlOXRpZnVVT1ZEK1VVRzZOckhNVHRPZFdueHJNVmFZSWlJQ0hnQVIyRFEwUkVJRVFnYlVLN0RFQ1ZPcUczdG9RcHZydFRoMlpjeFJ4Kzlxd0JJSGQ4bW1mZW1BeHg3NlpTeitNTGJEN3JsSzNZelhWL1UvcWQxbzdQemZGYkFQRnlGQ2lUMnNLakxRRXowa1UxL21lZXhvUE0yQXN4ZVd2Sjc3RUdwK2J4VkhNcDdCT3NjZ1NuN3ZQMGpMLzdZWXdRZUdaUG1acHFacWJyTitIVkhjUFZqM285dUhkQUhZS1pEelpXYmN6MWtoS3NwaVIxeDBCc1B6WVpMbHJvNUREZzArS1NESEpLcy9uR2lhbWJHdk9xdWtPTHFaK2E4aGpmUytoTnFZZWdGdThPQmR4TEhNZTY1dDNhQUZPVjF4elRuMFd6ajRqRWduc08vYWtkVU8xZHQ5YkJqcFdQS2xhOVJzeWo1YXNFOTI0K1Z5VDhhRDF1Skl2aXloTEFuc0VKR1VSZ2JVU2tNQysxcDVWdTBTZ0RJRTFDdXd4MStaVEJWVFN0aXhqU3dzb216MDhSeEczYnhSYXdsbnB6WEhPbDJBSktMU2lQTkFGeFlvcGY0NTlNNWQrc0ZpWEhBOHhBVTRwVEw4NHBsTm5tc2Z5T2MxcTAzMEhyMzNUSGM2UXhMbVVRZGVPTmdvNTNsbi9XUmJTM1dLczhkbk5TM0dkL21mNW5hVzhveTJETG1Nc1ArNTB0VUpyejV6eStSNUxNQ3o1KzJDNVJtRjllSURNOXNSYW1XOTJzY1dzei9XRU5kYjQ3YjB3a0NuV010NDZaQnJxbDlpYXN5U3dXejF0LzkzNlhrSWxsUHpONEh0Q055R0d4cHF3U1F6UHdac250SURtTFp4dTh0M1d5aFhZKzZ5OCtkODJEeVk0aDc3RldWUVBiMTI0Qkw2YmRlaW1yL1RjRnFMN0ZCNFkreXk4NXk2d3MzMTdOOWJrWnpTSHpKZXNEZFdWVDJia08zUWRVYUs2ZEVmM1RFOUJKWDliWStzYW1yOXFHMXZGMWxINVJFQUVLaEdRd0Y0SnJJb1ZnWlVRV0p2QVRrSG9HVzdERk9xaW5LQnFvUVVlMzFWN2tXZjUvNjM5L3RnaGJ3bG5wVGZIc2ZYcTVydW9jd0Z3ZzhEREtUd2xzUHRCV21KVnlmRlF1bDl6eGxiTlo2eHZpKzh1dlNtT09iRE04YUVkMDVhVzVlUGM1anBYL0tZZ1MzL3RmVUhpMm5mUWp5MkQzOUtsUjA2eUJNT1UrY1I2dnlWVU00WUVCWExMNVUzb1Bkdy8wR2Y3d3p5WmNsd0hoQ3lGK1pwWXkzakxlditCQVgvRkZsdiszWnF6SkxESFVBem5zYjZYME5NbGZ6TkNyZ1JMejZYRHFmV1g0SE1mNGp0TXpoWFkrOTdlMTQ4NUJpeTViUHJXWGpuZjV4SUVkaks2bnJ0TlVWdGtaNHdUeHM3NFhHN0hGSDZPUHVKNVlMeVpwZ3BhSDVxL1N2N1dGOGFvNGtSQUJFb1FrTUJlZ3FMS0VJSDFFbGlUd0U0aGlJc3d5M1ZDcnZnUUV0akhXT1JSWkhwYVlDak9aVkZuQ1djbE44ZTVYNlpWUjVhYndsTUN1NzhuTExHcTVIaXcza1ZyM3YwYjYyNEdyMXRpNGpWcCtuLzJyZTFTM1d6RU1vZ0pxUHFrcHJBbnhoYlkrTTZPK1FaWkhGMkdjRE03UkN4dWhRbGEvL2xjcXZ3VUFJWGJUeVcwb1p2VkVneFQ1cE5RRlM3anJCajM5R1RLT2V6d3ZjOXl3NUlUMlB0UG5hOXJYMndVZnB1TWQvSURUNlVza1Q3V0NqN0UySnBIY2dTOHpHRzExWS81K3FIVWJ3WmRDYjdWZmZlYm9IbHJaZ211WVZqdnZyWHB0MTB3N3kvMWpDQUo3RHRDV1lyQXpwclRmUnVOaEI3Y3hGZTVRT0VaZ2pFN0dMT0ZybUZ5Yno4VnJoSjhBWHo1bmpFUGMySi83MHY5MXBmbXFQSkVRQVFLRVpEQVhnaWtpaEdCbFJKWWk4QitFV2V4eHF0NW9VU2ZsRGNHOEk4Wi9Sa1MyTWRZNUUxdFFSK0x6QkxPU20yT1krdlRsOCtxSTU5SldTUkxZUGYzaGlWV2xSd1AxcnZHK0U2SGpNdlFzekh1YjNKY3RjVFdsM1BycXdLWlV5M0FZNzdCRXI3UjJ5ckh2Qy9sbTk5RU1aYkFmbGNBcnduMGcrWExON2EvbVk5N2lGY0VncE9tOW5sYkp1dEljZDZYUWhib29YRlk2bkRCbWtlV0tMRHpZSWJXMmd6K1MrdFV1bjNJdlJHU01vYUc1SzBwc0ZzM2N5aXcwOVVRL3gwejNjZkZWb2g5Snc4SjZLNkpRVnE3aWY2cU9WZjBCUTJXd0w0alhaL0F6bURhRkxOVGdvZUcrbzdCa1htUXU1bHk1bTJ1Q2Y0WXdMNEEvaVIyd1BUays0S2JFejRST05nY1VQemdSME0zRTB1dUgxTXFPamVYTlNsMVYxNFJFSUdCQkNTd0R3U294MFZnNVFUV0lMQmZ6dm1mNUNJemxDaXUweS94QnpQN2RHb1JWUUo3WnNmMVBGWmFiSnQ2YlBTUnNkbzQxc2JFRXF0SzFvTnp3WWNCN080Wktrc1cySDF1QU5xbUR2VTdiWDFkbHVWMDZpMGVhM3l5UGg5eGZvV0hXcSszYmVNTklONEU4cVVod2RMR0VOaXRReFlLSlR4QVpvRGJVdW51QUU3MEZKWnI5Vy81a0tmVjdVMGFZWisrbEx0cEQyZjlUc3Y2dmpUVU5VeGJwalZuTFVsZ3Z5eUFGemhyN0M2ekR6WHVIdzdwWVZ4cTNKUW9wNmJBSHZLN1hxTHV1V1drSHZMUlpVamZ6Wnk3QVhpdHB4SVMySGNFNHhQWUdTVDgxZ0IrbHR1aEc4LzUxb281QW51aEtzMittTkI4bkhQSVc2TEJFdGhMVUZRWklyQlFBaExZRjlweHFyWUlqRVJnNlFJN3hZVFhSUVQ5K1hkbnpYUHlBSzVUaTZnUzJBZDAzc2FqTWVKZXlrWjM2ckhSUjhacVkwbGhPOVF6bGxoVnNoN1dOZThsQyt6M04veEtEdzNTR2ZOMVdRSjFpc3NRYTN5eVBxVkZCMHNFWjBEWGtHVjFpSkZWZHNwODRudlBYaTd3OG02ZURBemlSd3ZKa3VrYXprMFByUWo3RW4yOTUveXVXbjdVTjI5amNEOUQxd1ZIZWVwUndqVk1XN1ExWnkxRllPZUI0OXVkbFdzZnRybjdHSzhsc0lmOHJwZjhkbkxLU3Awbit1YmtiemdyNlM5N0tpQ0JmVWN3RXRoelJ1czR6NFRXZGI1QXZyVnI1dHVQTFhtTldadVp5aGVCMVJDUXdMNmFybFJEUktBS2dhVUs3THplK3dnWDBOVHlRY2dGejUzZFJuTUl4S2xGVkFuc1EzcnYvTS9HaUhzcEc5MnB4MFlmR2F1TkpZWHRVTTlZWWxYSmVsaGk0RkkzUHlFZnBHU2ZhajJlK3lVeEtQRDdtaXZ6ckU5ZlN0bnNXdU9UcmcwT2RJSnlibjAzbjdNT1lJWUlwMk1JN0NGcjhocTh5TS82Zm5NUFFhd2dxcHZmYXFqdlNybUdXWnZBenBnSVJ4c2Z6eGdIYzduZmJ3MkJuWWRVUEl5NWNtNmxLaitYc3U1Z29FdGFXRjk5bzA2MFhEL1U0eDZHV1NXdzc5aUpjeGJZNmRhSnQzNzRiemZSZmRFUEFkQ0FhTTJKc1dmbzhxZ3YxVGhVam1FcGdUMkdrdktJd0VvSlNHQmZhY2VxV1NKUWlNQVNCWFphWmIzU1hTRzNNSERqelEwTHIwTVBUUzlycnQ3ZjExUElHTUtkSmJBZjNQamhmT2ZRUmhaNDNoTE9TZ3FxdWRXbHV3dTZDdkp0c2xNRlN3bnMvcDZ3QkxxUzQ4RjYxeGpmYWU2WUREM25FMUxhWitoUGVUOEF0RnlzbWF6dmhxNDlyZy9nT3hHVnNPYUpVSkMraU9KN3MxZ3VoT1l1c0RPSTkwTTlqVTlobjhMUDZxY2h6TmdmcHpldUxId0JXMS91Z3BielFQMzF6bFZEWDkxTHVZWnB5N2Jta1NGdFRtRS9KTyt1emJkNG12UFBIQ3FuMXJnWlVuZXJIM0ovTTJLQ05aZW85NUF5VWdSMjY4QndTRDM2bnUzNy9ldzdXT1JoSDIrYU1HQm03ZFRuMHp6bis1eXp3TzZiajVhNm5ra2RFNkdiY3c5b0RvRmZuRnBnZ2Z3UzJBdEFWQkVpc0ZRQ0V0aVgybk9xdHdpTVEyQkpBanZuTTFxaXZ3VEF4U0x3MERmZm5RcjZHQTBKM0ttQ2JFVDFkOGd5UnhHM3J4MldJSk83T2M1aDVudkdFdHBTTnk1ejdKdTU5SU1sVnBVY0Q5YTdmdEZZWU8vZnhHTDRXTW5CTkVKWmxtVitpdVg0a09veW1QUmJBb2ViS1Q2NXJmRjVqdXNySHBLV1N0YjR5QkZtMnJyVnRtQzMyTmNhQTFZL2hZSXB4dlFiWGN4UVBPKzdpZmFyeHIvMEFjNksvbzB1Nk9wbW1TVmR3N1JsMXh3bk1VeEs1TEhhMEw0ajVac3RVYStVTWtwYXNETVlLTWNxZmZ2M0pjYnUrT2VVeW1YbTNRbkFiUUhzNG5sK0RRSjdKcHBpaitYTTR4TFlpK0V2V2xBbzdzZ1kreTVmWTN4ci90UzlRMUZZS2t3RVJHQWNBaExZeCtHc3Q0akFVZ2tzUldDbnVQQzhSaXkvZHlSb1dyZy9CTURQSS9QSFpMTXN5Rk0yUmpIdjI4d3pSeEczcngyV0lGTlNVTTNoeUdldTVhNVcvNjZuQUZvQ1h4ZkExeU5mTU1lK21Vcy9XRUpQeWZGZ1dWaXpPMnQvcDVGREppbmJMUUZRUVBXbEZOL25TUy91eVJ3YTZ5bHVTcXp4V1RxNEhKdGlqY1VjWWFaRlZGdGd0OFkyM1FUUTZyOTBvdkJOYmo1WGJFUDdpZGJwUERUMy9iYnpNSXp1RWZwdUc1VjJEZE95cXpsT1N2ZVByenpyMWt2N1hNbjV0M1RiU2duc2xyaitua1pjNTBGUHFXREtQZzdja3g4SjRCaFBock5ka09MdlJvS2Nxd1Y3WlBXclpjdVp4eVd3LzNkMzBBRGxPQUNNdTBFanBWSUJYbk02bkFIcnp3TEEyeWVicWNZdHQ5ZzYrdFpCVTlZcHR1N0tKd0lpTUpDQUJQYUJBUFc0Q0t5Y3dCSUVkdnJNWkJBMTN6WHliaGZSZW9CdVhCajRsTllOSmRPY0JYYjZZYVIvNUhOTE5qaXpMRXM0bThPR1B1VFRrYzArRXdCZDd0QzZMeVpKWVBkVHNzU3FrdVBCR251czVhUGM1akdtWCtlU3h4cXZZMTZUTGpVUFduMDFWTGp0Nnp0ckxPWUlNKzE3YWd2c0ZKZ3BORngyTG9QUzFhTkVQMTIxRVJiZjc0VDhsT2FWZGczVHZydm1PRWxwMzVDODNQL1JQL0dEalVJc2Y5MUQ2akQwMlJJQ084VjF0dkVXbnNxTUdlZzFkRnVEL3JSdkIrQ1VCR2dTMlB0aDVjempQcGE4MlVCLzlxV01kZWptNjQ0OTFRN0ZzaGpMUlF4dkJqL1Z6Um50Z1dxdE9UWjJtSWZpdnFTdTAyUGZHWlBQdCtZdnVaNk5xWWZ5aUlBSVRFQkFBdnNFMFBWS0VWZ1FnVGtMN0p5L0tGcThCc0NGSTVqU3ovb2hCVjNDYkw0eUZHQ09lV3VLWEpaN2dEa3Q2aXpoYkE1MURma3labCsrR3NBOUVnNXBKTEQ3UDFCTHJDbzVIcXhnb0t3bC9UcmZMMkkrbVZPV1VxSjJpVGFWcW9zMVQ1UVFiamZiYTQzRkhHR21mVWR0Z1gxc01TMTJySlRxSi81K3ZqRDJwUzVRSlYzRzBlMVQ2VlJ6bkpTdWE2aTh2UnNYTzJjMHQvOW96ZDZYL3FXSlQzTlFjNWo4MFRFcmxmQ3VvUUs3SmE2UDJmNXJBM2hYd0RYTThZMEYvU01TMWh6RU9QYWNFT3VEUGFHTHEyVE5tY2ZIWnJuWjhDa0ZkZ3JyRDNkKzgzbWpxSnRxM1JLSzdmalFlbVBLdFp3RTl0Z2VWRDRSV0NFQkNld3I3RlExU1FRS0VwaXJ3TTVGSGhkV1Q0bG9LeTEvSGd2Z09RQjRUYjVXc2dTVTBBSjVhSjBzTVdwS1M0N050bGwxTFNtbzVuQzE2c2N5VXc5TFFwdUFGTGNaT2UzeFBXTzFjNngrc01TcTB2V3dEay9tOUszRTluY3BVVHYyZmFGODFqd1llMFBBR3ArbGhOdHVXNnl4bUNQTXRPVmJYSWE2SnBwYUFQS05pVkw5UkhkZG9VQ21ZNG8rTmNkSmlXOHdwUXk2UTZQdjhUMDJIcUp3ZGhjQTcwMHBiT1M4UXdUMjNRRFFiLytCbmpwejNjZ0RHcktwbmF6Z3Fya3VhcmhPWmp0OTdwdDg3ZnBqQUc5dVhOVjBYZVI5MDkzYUM3bW5JVFBlbHV5dXMvdm12VEg5VVBmdFlYTG04YW5uMXlrRWRocnU4SWJMRXpmR3d1YTRlUU1BR2hqVjNGLzFqVlZyalVBam1KTnFmN3c5NVlmOHdwZGV6MDdRUEwxU0JFVEFJaUNCM1NLa3Y0dkFkaE9ZbzhCT3E2T1hlYTVSYnZiV1o5d204WjlHNkViTGIzZE5hd3BydzE4cndGME9WbXRSUFBVQzFOcEk1UWppY3hKQTJ6NnorbUVzb2RrYXU2WEhnM1hUWklrK011YzB2aXdoT2ZhZzBScWZwWVRiN2h4bWpjVWNZYVl0MytJaWdkMytOYkhtNXJZRUNrSlBzb3ZMemxGem5HUlhhc0NERk5KdTNMZ1l1cGtyNDNRbnJKZHllekdnYXNGSGN3VjIrcENtZ0x5dnAvUStjWjNQN0FPQWJINVRzRUdXMEQrbUZYM2JyTDd2TFBkM1dBSjdtY0V5cHNETytZQzMrSjdjdU11ajlYcE1vcHVjRTJNeUZzekQ3L0VEbmxzZlU3ckZESzFkUGc3ZzVnQitWSkNEaWhJQkVaZ1pBUW5zTStzUVZVY0Vaa1pnYmdJNy9jdlNpdTJHRVp4ZUFPQXhCWDBqV3Era0wzaUtrdHd3OVNWYVF0MjF1V1pKZ2JaMHN0NWRVOXhQYllzbG5PVnU1RkxyNGN0dmlaVTVDMlNyVFBwZVpSeUJNWk1WRkxHR2dOblhQa3VzS2owZXJJTXcxbkVxeTZmYy9yZkcxMUR4TnFWZWxqLzQyTHBZODBTTjhXbU5SUW5zS1NQaHQzbEw5aE52UHp3cm9ncGZhb1NYbTFSMEIxZHpuRVEwVDFrY2dSeUJuV3VsdDNtQzRySllpdXVNMDhPMWJ4dW5weHNFbGRia0RMZ2JHK0E4MUZsV2NOVXhyZWk3OVpUQXZtT3Z4Ujd1MWZvNHh4RFlLYVlmQWVCeGhzWDZaaHQvQXVBaHpsMW5qZjFOemxxOTVPOU9hcCtHMWk1VDFpdTFIY292QWlLUVNVQUNleVk0UFNZQ1cwSmdUZ0o3ckxqT3hSNnRWTitlNks5eWFKZGFnbVZOaStCUW9CKzJLOVl0dzFBR01jOWJ3bGxwUVRXbVRtMmVTd0I0WnpOMktNTDYwdE9icTdDUFR5blVqY2VRZFUrc1ZXL2lhNFBaYVpISEFGMjdlM0tsK3BuUHJac2xWcFVlRC9RM3pFM08xUU1Wbm5OZ3Y3NXF6MGxnTDFVWGE1Nm9zVkcxeHVLU0JYWmErdEU5MHRpSnJrYjQyemRVZUxGOFZHKzI2NVVBRHEva3RxRG1PQm03ZjViOHZsU0IvVmJPUU1NWHM0ZUM5c01BUEg5RFhOOE1na3BYR0VlNUlMRzVQdjR0eTNYMkMrZlNZMGRleC9LOUV0aDMvQ3A4QWp2bk54N1lsSEtQd2xza1YrejVLR3NLN1B5T09KN3ArakRGblJESFBtOEw4WHNaKzdZTEQ2Y1lzK0E2bmdrc1o1MWVhaTZVd0Y2S3BNb1JnWVVTa01DKzBJNVR0VVZnSkFKekVkZ3RTNThXQjYyTDcxVFJjaTJFM1FvMCtnMEExeTFrK2JSWmo1RGJDMXBoOFVyaXUwY2FNOVpyTE9Hc3RLQnExYWY3ZDFvdXZ5cnd3Sythb0hBSE5JSGZHREEzSlZudUlZWUlkeW4xNk9hMUxMSk9jTlpNdWVYSFBtZUpWYVhIQTljOXIzQldpTDQ2OGxvK2I4bDhPcllSRStkN0pJQm5CK3FRR2pOZ1NITkNBbnZLWEdUTkV4TFl6OTlMMTNEWDVTL3E2YndwNXBnaDQ2ajdiT3p2Zi9jWmpyVzdBWGhkcVVwMHlySG1yQ1d6cm9DcldwR3hBdnNGbllYdGNRRUJzYzl5blQ3TUtSNGU1bW5CSjkzaCtUbUpMWXd4Rm5tUisvMHRKZHltVkZFQys0NjBmT3VsMHI5RHZqMVhhWUdkNjZBL2FpelZqMmtNTFc2Uk1qaGM0T2lwaFBXMnFxd3pYVi8yNlZnNWJod1RFUVN6aDR5dFNvK1hrdlZXV1NJZ0FvVUlTR0F2QkZMRmlNQktDY3hCWUxjMk9TMTZCakdsWlhHdVJWR0pMcVJ2ZUY0djdrczFGMzJod0kxejh5bHRDV2VsQmRYWWZyMjA4enU3ZCtBQldzemNMbU9NV1dKMnpkc052dVpZcmp6R3V2VmdpVlUxeGdOZE5iM0dHQmowNGN4TjVCS1NkWUF6cGpWWDZEY2pKYmlkTlUvVTJLaGFZM0dJY0dyMVVhenJITjk0dE9wTzF4YTNuY0RTY09qM3czMEt4U1dPNGI1RUlkMjNsNm5sS3NaaVBXU2NET1cxVGMvSENPdzBmSGllY2FCS2NmMFFaOTNldW9VaFI5NXlla3ZqVy9xcUJsUzZMWHBDNUxxQVpmMGRnTkE2NDZVdXVPUVU0anFiS29GOXh3NWZpOERPL1JSdmNqd0R3SjZKa3dWdkIzT2NjNTh6dHNWNnQ2b012c3NZQ2dkNTZwL2p4akVSUlRCNzZQZGhySnVoSmR1anNrUkFCQklKU0dCUEJLYnNJckJsQktZVzJEbEhIZW1zTEh6bys2NzFUdFZOOXdkQXl5TmZxbUZKYWxuT1R5SGVodmhid2xrTlFkVWFENWFJdytlNThUNjR1WVZ3cWxWWXo5OHRkeXhUSElJOHpmbmE5SWxXWTkxNnNNU3FHdVBoU3M3YTErY2VoMHkrMVJ5NDNLanh4LzZGalA0ZSt4SExyM3pOK0EvZHRscHpFUVhQNndQNFRnUWdhNTZRd0g1K2lMczJiRThMQkc2a2xlMytqU1V2WFJvc0tmRW1DVzlmN2RSVGFSN1lNTGdlclRCOUltZ05WekhXbkNXQmZad1JGaU93VzY2Rk9JYnU3RndLOXRXYVloNkRQVDdhYU5JWG5YRUY1eVZmWWlCWjNxaWdtekpmb2lzNXJoT25GREFsc08vWU8wc1gyUGNBOFBEbXQvZUJpZjdWU2VKNzdwQ1RSZ2xUR2pDMXZVSTNPbHlIKzl6WlRHMGNFZnA5MEcvRE9MOE5lb3NJVEVwQUF2dWsrUFZ5RVpnOWdha0ZkdnJYZXk4QW44OU1XdmpRR25Yc0FKRytqcHRDNkxveWdMTWFZWi9YanZ2U1dLNCtZZ2V6Slp6VkVGU3R1b1ZFblBaWit0bmtSanhuZzJHMW1lK2dPd1A2ZWgwaldmVVpVL0MzeEtvYTQ0RnJIMzRYRHpaZzg3RHNvUVg4UjlmdVUrc0E1endBK3pXdUR1aW1xbWF5NnNFcjNRem8rOHVJU2xoalZBTDcrU0ZleU0wZjVOdVhmdGdJMVl6VmNXNEUrN2xrc1c0VkhRL2dFUzZZK1RNOWxhN2hLc2Fhc3lTaWpET0NZZ1IyMW9UZnhPdDdCRGtlTnZIbWlPWHlqYjhYQnphK3NYbFlRNkV5bFBpNzh0Z05nVHpHUlEzTG5JTzR6bnJVRnRqNURvcTJNYjhEUTBjUzE4VzAydTZtbk85emlRSTdiODN5ZGdVRFBvZmlDdmtZZjhhTlpjYXptdW8yeFdiZDZDN3NyYzZGWDErOTUrRGVMN1FueXhsN1E3OEJQUzhDSWpBeUFRbnNJd1BYNjBSZ1lRU21GTmd0Z1lXVzZ4UThhWjA1bDJRRlVLd2hkSEdEeUd2TWZXbUkxWFV0cGxhLzFoQlVRMjI1UWlNK25nN2dhb0ZNOUwxK1UyZjFuTXNsNU1hSFpZNFpXTk55V1ZORHZQUnhzOFNxV3VQaGVvMC8vVE04bHJGdFhUbkgwQ1hRS2JtZFB0SnpsdVY0aXUveklWWG1OMElyYXQvYU1zVlZqVFZQMUJpajFsZ2Nzam11N1NLRy9SYTZsY0svTThiRVNVTTZlTVJuZVdCQXNaTFd2SDJKTjB0b0VmdzFBSllRWDlwVlRNMXhNaUxpeGI4cVZtRHZHMHRuQS9penhCdEtERXpLUTFmRytRa2xXclB6d1B4alRXRGgyR2VtOUxtKzJaWXhCUFlwQjEvT1BMNUVnVDJYTWRmRGRJLzNFUUMveVMyazBuUDhQWGhob093eDE5Rythb1RXMTNNemVLclVUU3BXQkxhYmdBVDI3ZTUvdFY0RUxBSlRDdXlXbjJRRzB6dld1ZTZ3MmpIVzMyTUNLTklQYmluQmpodEhCdVVrcTc1VVE5QWZ5dElTem1vSnFuMzFqaEhYK2R4VG5lL0pybi9XVkE2aGd4Q1dOWmJsRGNjb3I3d2ZGV2hBaWhDYXltRXp2eVZXMVJvUDFyZlQxdlB6elEwUlhrbm10elRuWkltckROWkhhL3doWXpqVWZ1dFdRS3JJYjgwVEV0aDM3STFidXNCdnZuNmFnL2dRK3cxeHZxU2ZYWjhiQUxxR29jVnZteGhUNG8yQnc1MlNybUtzT1N0SHdJdmxvbnovVFNCV1lPY1QzVUM1dlBISXdLVzgxWkdhYUkxK0x5ZTBiMXBHYjViRnRSbURvbHRXNzF6TE1rajFYTVRNSElHZExIaVlzSmR6QWRiZWxMRU9GbFA1bDhpZjgzMnVYV0NuTVFIblNLNTF2MXdDY29VeTZBYnMvUUQ0M2ZjbEdzTHdlN051cEZTbzJ2bUtEQW5zb1dDMXRldWw4a1ZBQkVZaUlJRjlKTkI2alFnc2xNQlVBanMzUXd3b1NSY3hmZWtEQUxody8vRU11VnBDYWttUncvSWxYVnRVeThGdkNXZTFCTlhOdW5JalNMY3Z2TTRaU3FYR211WEtoM1Y0dWJQWTVOWGVXc25hcE5RTXh0dlhKa3VzcWprZUxFdit0cjd2QTNESFRFR21Wajl1bG10WjVOTWRBamVmdE55c2theTVLTlVIdURWUFNHRGZzUmV0T2FiMkdDZzFycXlEeno1M1hSVDRhSjN2c3k0dTZTckdtck55Qkx4UzdMYXBuQlNCblZ5dTRlYkFGeFJ3ZWZFSHpwLzZud3dBVHJjYmQzY0hRN1VPUG5PcTEvZTcrRTBYZzRhSEFQczBSaUxYQk1EdmRGOTNnTkE5Yk9nR1NKZkFudFlEdmoxWFNKaTE1cU5RRGVpcWg0ZnpVd2N1dFNneEZnTGRQTjA2a0xIazNzcXFUK2p2SVZlaEV0aUhrTld6SXJBUUFoTFlGOUpScXFZSVRFUmdLb0dkdm1JcGF0SEtkRFBOMGUxSnQ0NlhjYTRuOXZUMEdZTnFNWGppSndyMEthOXhIdTBwWnk3V0hKdlZzNFN6bW9JcTY4TGZ2VnM1TWVaaVJoL1FxdnlnWm1QNTBRSjlGV014VFN1aVd6aVhOUVZldVVNUmx0c0ZQc0Jyd1d6eldJZFgxdWF3NW5qZ1dIZ09nSWRGd0o2N3lHNGRTcktKTlgzSzB3clQ1d2ViNzA0TlBHYk5FMnNUMkV1NGI0bVpZMHJjeG9uNFhMS3pVS2pqd1RBdGpQdFM2UGR6Yi9mYjZ3c2lXY3BWakRWbmpSVlVPQnZ5U2g1TUZkaExONXVpSDhWSnhnRklUZlJ2ZlJjQS81VDZZS1g4dXpUK3Vqbm5YcjF4T2ZpbnpwSzViLzBkODNvYW1kQlBOcE5QWUYrTEQzYXUyUmdRbmYrV1NIMCs0MWx1YVlHZFFVS2ZrdUVHaGpjNGVLdG9USi9zWEtjZDZZSloreGlYM0ZjTjdjZlFvVkwzOEdub2UvUzhDSWpBVEFsSVlKOXB4NmhhSWpBVEFsTUo3Q0YzQjZtV2tGT2dEQW5mck04Ym5PWFNrRVdxWlluTUd3RDBINTBUbExNbU0wczRxeW1vVWxDbkQ4UjdSalN3UmdCZGl1Y005Qmo2N2EzcGtzUVg3SzJMZzI1RW5oZkJwMVFXUzZ5cU9SN1lCc3QvYzdlZEgzY1dzbDhwMWZqQzVWaitTV3ZGcmJDRXpSekxhV3VlV0pyQUhqbzA1akI0ZkJNUGdLNlpoaWJMdFJxRkNQb3U1MEhhSEJORng5Y0U1c2pRQVFIblZRcFJJWTRsWE1YczZtSU4wSHEzTDUzcHJIMS9Pa2ZBSzZyVDFBSTdVWExNVVZEam1MMXdKRnZlY09EdjdFOGk4dy9KUnVHY0J3Ri8yUHl1OCtDSnQxeTRkdVMvdE1MM0NicTU3OXk4QWRjbk5vNHBodmJ0WVhKdW1NVGVkc3ZsWmoxWFFtRG5vUWFEbnZLbTVBK3NGM3Irem0rT3Y3MTB3OEtiSUZ3VDFYWnRGTE51bmRQQmNVaGc3eDQrWlhhQkhoTUJFWmc3QVFuc2MrOGgxVThFcGlVd2hjQnVDU3V2ZHNIYTVuU2xkck9YZUlXV3JrVzR1ZWxMUTYrclcxWitMSjh1TGVocmRHN0o2dDhhZ3VvbEFEelkrUjIzL0thU1Z5MGhNc2JLbU8vbnBvV0hJMTh2MkhtMDJ1Y1YyNUFJUUtzNnVoSDVUc0gzV2tWTkxiQ3pmdGQyTHFsODMydTNEUlJGZUszLzdSWDltYmZ2NDRIUVk5eUIzS2Nza0pHSEJTVnZaYkJLWGQvR3Zpcm1iSDZ0ZVdKcEFyc2wwSlN5ZW80NU1LcDVpTWVBdTV5NzZELzk1eEZqdHB2Rk9qU21leU1lRG53M1VLN1YvcUcvdlh5MU5UYS8zZHhDMnE4NXlLWEZ2Rkk5QWxNTDdOeEQvMUhqRS9yRkFLNGIwVXdLeS9kMXJtVnFybC81RGZDUUp4UzRQYUs2V1ZrMnhYTUo3RmtZZDNnb1YyRG5XcGJXNmpSYUtoRzBkTk1OR2RjVDNDZFNiT2Z2U3VseEhiTTJpL2xkS05NTGNhVndmZGlORDlKOVNnSjdIRVBsRW9GRkU1REF2dWp1VStWRm9EcUJLUVQyeXpWdU1qNE1ZSGRQNjBwWit0V0VGK042SWxmb2lya3UyZWVqdG1aN1U4cTJ4SWxTQWp1RmRDN09qM0NIRGI1Z2VadDFyMkc1M24ySFpXSGE1djBhZ0hzN1YwbEROaTI4MHZzUUFNY0ZBZ2EyNzN5Z2N5T1MwcDlEODg1QllJLzVwamJiU1FHUjEzMXJCQVRqZ1JBMzFIUmR3L0dZNGxLS3JrWVlYQytVT0xab0ZmYXhnWjFIY1oyK1czbVk1MHM4dEdHUTJOVERJbXVlV0pyQWJ2MnVmUVBBRFF1Tkorc21BL3VLQjhCM2JtSStVQXd1a2ZnTkhRamdKYTZ2NlN2M1p3a0ZXejUyVXc2TnJZQ25RMTNGc0swVVVBNEp0Tzl1QU9nVFdLa2VnYWtFZHY2bU1qNFFBNVBHQ09za3dOOExya1ZTNThFY2V0YmNtVk5tN0RPY3g4aWtiYWNFOWxoeTRYdzVBanR2cis1ZjRIZStXelBmUVhHTlEwWGVFSHFudTNuaG8xUGJyV0pPNzRYYzVSM3MycFJUcnA0UkFSRllDQUVKN0F2cEtGVlRCQ1lpTUlYQUhnb1FRd3hMQ1JKaldlT3hMWFNkUUl1RzJLajNNV0pwcm5BLzFoQ3pObjg1QWp2THBQVXgvWWR5UTNIYnh1cVhiaXRTVTJwL3BKYlAvSmFRdEZubUtjNksrYk9KTDJ0RmdMOXVySzM1VFZucDlNWWZMSVdwRkZITUtqUG03M01RMkZuUEhKR2R6K1g2TXQxa1E3R2ZPcW5kQUFBVS9FbEVRVlQ2NWdBT2I2d1BiOXI1WStwMWVpdllZMXMwaFhzS3NaempjNjU0ODF0alVNbFFrTDhoTjBHc2VXSnBBdnRGblhzb3VvcnhwUnhMLzc2eU9KYm9BNW1DZlNqeG9PVlFkK1UvNWx2MTVhSDdpYjl5djJYTWs5TTNQS3lpK3dKZlNuR3JGdk1OREhVVjh6aG5GZXFyTHcrdmJqbkFGY09RL3RpV1o4Y1cySGs3ZzBGMGoyb09NYThTQ1prM25qalA4dlpZemp3YitacnpaWXM1QU1vcGw4KzBQc2Q1eTQ1ck5WcEZVMVRuK3VSSHpmcjhseHNGcjExZ243TVA5dFMxUTh5WThBbnNPZXYyMFB1NHJ1RGFkdytqVWhTemo2MWdPUi9Ed3BmSEo3RFg2SThoOWRTeklpQUNsUWhJWUs4RVZzV0t3RW9JVENHd2gvelhFU3V2bmY5d0FyNzA2OG9nZ1NrcHhwS1E1ZEhuTmYyMmgvd2lYc2xaVFBINmZTak5jY0hacmE4bG5LWHdMWm1YaHh5MFNCekR2N2JsczdxdlhWOEU4QW9BNzI3cStUa0FQRWpwSnY2ZTcrYXVyRlBZK2ZNbVdPQ2xJZ0hsK01pT0xOck1OaGVCblJXbE1QY01aNWx1Vm53akF3VnJiZ2dwYkg2d2NVbEVmNmViZmNSSDJuNWlYM0d6U3F0ZkJwVzlndWVGT1pzeWxzVURreGdYQWJRd2Y2eHplUk1URTRJYlhvcUxuTnVzTkVRd3R1YUpIQkhYcXE4MUZuTjg5M2JmK1Z6bmV6bFVEd2F0cG1EUUZ6dURoMlk4UVB3SHo5anFsaHR6dGI3TnozSExNWEJ1Z2xCQnNaSFdlQXcrdDNtQWw5bzNWbDF6NWlkcmpoM3FLb2FIWUtjWjhUVGU0MjRoK2F5V2VVakZlcEM3VWpvQjNwS2dhNldkTmg0dEtmWnh2dDZyK1I2NXJ1THRvTmliY0JSZUdheVhZdndZdnRZMzZmRm1FZDNSNUNRSzVZd3owRTJibHVteDVhNWRZRStkNnl4dXZqMVhqZ1Y3enRyQnFwOXZmMVl5N3NUMTNGcktGNnk2cmVOY2IrcjYrckJHZjFqOXBiK0xnQWhNUUVBQyt3VFE5VW9SV0JDQktRVDIrMmNJMldNZ3piR2N0M3lsYjlhYmkzVmFPblY5ek5MbklhK2JoeXhGMjNKZTZueU54d2hsWXpEcmU0Y2xuSTFkTDI2RTZYYm8rSkVEd3NZRWJocURCUmY5ZEJWQm4rSlRKRXZVTENtV3hMU1BJaWF0YVkrSnlUeENudi9mM3IyRlhGT1ZBUnhmRjFFV1ZGUVhTYUVZWWtVWFdsTFlpUXJzQU5sRkJCRnBVV1FGWlphVkZYUVJWRWhGQnlNdnBJTjAwemtyTzFEV1JWb1FaS1VrVVJjUzJFRTZrWVZJSUVIUS9QM1c0SGErbVZscnpheVpkKzkzL2d2a0U5N1pjL2l0MmJQM2Z0WmF6elAxUjFrcWFOazlkZDRIUEg5SUhmS2J6aCtaRVUzdWE0S0s1UGZOYVhPZlJhbm5STzNBQnRlVXVoZm5CdGh6aWh4ekhnek9VRFNSUVQrS0JqNmdxUkZBMElIUEFRTHZwR0Q0YTZJVHBxeklZRURvMjNGd2hueTZ6SEJ2R3dNckROZzhzN2xIem85RkU0ZE9vYVJ2Y25MNFQvbnN6U2w0T2lkVnpLT2JlaFUzTm1sZ25wam9COTVYMThYVkMzZkZiWGMvMDgzSm0vTTB1ZjgyOUMyZldkVGo2UXQ0VHcwR3QwZGgvOXpyQktoTEJxcmIxN1BhNGgwcnBZTVowaHRMVTBFQW5jL1ZtK04vdjI4OGZ4Y0g3VmpCMWpkTGVlcm44RDRIMkUvWkdVaGdrSVpWcHd5Tzl3MXVEczNjTG5uVzVkenBoeHBnWnpDUmxhT2xkVGQyVFVvS0JpOVpSeVNubjRhMkdWdXB0a1FhblRubjZtc1ZVR0FoQVFQc0M4RzZXd1dPaWNCUkJOakhmaGdjSmV1VUgvbWM3Nmt4YUo1YXJqLzMydmlDUzlDMi9SRS9kMzlMdlQ0Vk9GdnF1SDM3SmRjL1A2TDVjYmwyU3dVSjFqaWZvdzZ1YzQycG9PYlVIL1p6L0VwKzZNMDVUczVycHdiWTJUZkJVQVpPY29xMzVweEw3amJYTnNHbDE4OThGcVdlRTdVREd6bjM0dHdBZTI2UjR6SG5rdmNEQTd3TUhqSXJmczJXMnpjNVFmQTVxVlpTQlU4eG1aTXFobFZuYzIwTnNKZmRtZHd6cjJsU1IxeVRtRTFldW5xR1lDdnBtNmduOFlxSnowenlyTE1TcERTZFc1bEEzdFlNNWwwZXY5dVF4b1dBSkt2Z1dQMlpxdW15endGMlBoY0lZcmFOZWlXN2cxd01YaEVvYnh2MVA4N0lJN3UzTUN5cmN1N3UyZDRBK3dtVW9kOW5jejhiYzlKZnR0MnlyOEYxem8vVkx0eEhyRkRzTmdaMCtVNzI5OHo3MGMwVVVPQkFCUXl3SDJqSGVkb0tyQ1JnZ1AwKzZLa0JkdlpBeWdZQ1hWUHlndWQwZGUyQ2RUbkhuTHBOS25BMmRiOGxyL3QxTENDSlcrckhac2wrcDJ4N1FSeUFlY2lVRjg5NFRhMUNsek5PNGQ2WDdtT0F2YjBtQ2xNU2dHUEc3bEcxT1FGMnpqazNsMm10NjdzeUJuWDdaZ0dXSENQMW5NZ040cFljTTNVdnpnMGljQzRFVkFuRTVhYWE2SjUvU1lDZDF4NUZrRDIzYnhoMEp1VlZOOFZIZTgwMUN0aWxDcDdPU1JYRDg0RlVUS2xaN0dQM29BSDIvSGNvdjFrdmlhdk5VdStmVlAwSG5pOFVVU1NkR2dIMW9SUmRPV2ZIWjhRSEtoVW96am5lMHR2VUNyRHo3S0dvTzgvTjNjYXFIRkxuL0xGSkJYSnVaekRqN0taUThtTjJOaVpRU1RxcU5kcjM0eVNWYmg1NWptMkEvVVFQWEJGVHhIWDdnNEZjMG1oT2FmUXZhVEpmbS9GaTBvWHhucVVHd0Q2MnQ0UVFyaG80c1Jxei9QZnhtajBuQlJUb0NCaGc5NVpRUUlFeEFRUHM5K25NQ2JDekYyYXlmMkdCWUIwLzd2aFNOMmRwNXBydmdsVGdiS2x6NFFjMy9xVCtLTWsxdk5UNTdPNlhHVllzZHljTnhCcU5IN3lYSGxGdTJPNzFwWUthcFFIRjJuN01yQ0lkQVNtRWNuUGExendIN2xXVzJUUDdjR29qU0VIOUNBcjBMZFhJTTN4UkhFaXNNV2lWZWs3a0JuRkxyamQxTDlZSXNFOUozYko3RFZQZUR4eVRJQ0t6ZnBjZXlHUEdPWUdTMUtxZ25ObmxuQys1L2duSVRXMDVCVS9ueklnc1RjWFV2UTREN0hrOXl6MU0ycFd4UXJqZFBaRXFqd0R2Tnp0L1lGOE1CTDR0NzlDOVd6R0FTRUR4Nm1OWXlMWTB3TTU3bEg1Wkt4QStvOXRHWHpyMmZEZkFmb0p1NkRjaDlRa29lbDdhR0ZENWF1WWc1YjRIMS9rZVR4Q2RWUlI5amNEN1cwdUIzRjRCQlE1UHdBRDc0ZldaWjZ6QW1nSUcyTy9Ubmh0Z1owLzgyTDhzemdMaC8rYzA4dlMrcm1KQWE4NjVsTHcyRlRncjJWZHFXd1lkS0lSRWNkQWJtcG0xKzV5Ym5rQXVLWDRvY0hoNjZzSW0vcDJVT05RNElNZDJqU0RveE5PNDM4dFNRYzBwQWNVYTU5WGRCKzlYK29mVUEyY3VjWURPUHVrclpvVVJTUDVmaGVQeGZZK0NxaFRlbXpQanRuc3FTeFh6U3owbkRqWEEzbjRPc05UK2d4UDZkYzc3Z1JuWG4xaG9vSVZpdVh4RzhyeE4zYS9rbENmWU1GWW9seHp6ejJrS1M1SWZlbTVMRlR4bC8zTnFCbENmZ0NCUnFpaGYzM1VZWUUvM0xwK043NTQ0UTVibjB4dmpTcVRkK3pMbm51ZzdNd2FRZU45ZXYrZmZKOUtxdzF1VUJ0aUhDbC9PT1llamVPM1lMR3dEN0NFTWZTYnpYZktGY1RWU2JyL3hubVkxQ2dNek9iK0ZXSEhKczVMVnAvdllHRnhpRWdNRERVTnQ2aURFUGw2djU2U0FBaU1DQnRpOVBSUlFZRXpBQVB0OU9qVUM3TzNleUJ2SkQwWm1FVCs0OEJaa0ppdkxrU21rTlRjTlErR2hxMnllQ3B5VkhvUWYwQVJqS001RnJ0SGZObmswZnhHL2lGTzA3OUFhUHp6T2k3UHJ5QWViV2dxZnVqNEdZajdUcEdMNWRLZG9ZZXAxYS8zOVVBTHNyVWRiQU8vTnNlaGtidEhQbENmM01la3lQdGZrNmZ6UnpQemxZOGRxN3krQ0NlVHBuWHAvL1NYTzZtZVc4WjJwaTV2dzk5Uno0cEFEN0hCTUhmQ2c4Q2tCclRubWo0dkwvTWxsblJQY0dPbytucThFbGo5VnVDb29KMDNPbXlvV084L0o5WjVLS1pLNmhhY01YdkQ1L2FKWVdEaTEvNjMrUFNmRkVZUG41TUpucHZyUUlBZHBtWmc5ZWtlRTVKN2dleFNwU2xLdGZkYnhmWGdMK1pPM0ZHQnZ2ei95THlzU0NKTDJ0WDBPc0ZOd21lS3NmVE9ueVNuL2c5UU5udmwzbm5FTS9EKzJzejA1NjBuM2RXdkJmaGpvNTNNZ3A1RzcvQ1h4TXlabis3VzN3U1YxUFJSZXh1ajJ0VS9PNHltZ3dQb0NCdGpYTi9lSUNpaWdRQ3ZBajBlK3VKT0NnbGx3RkdmcUxyTWxlRXpBbUMvSlA0eDVLL2RsOXJFOXVhd0F3VkNXblQ0L0ZrY2k4RTVBOXhFOWgyVjIvdDlDQ0xjMVAxeHVpVFAydVcvbUJPS1d2YnJqc1hjS2lKTG5uTm5oejJwUy9UdytGcmdhV2k3UCs1bkFHamxFbWZYN3N6Z1l4RURJMnU5cm5qL254SUF0NTg3TWRnWTh1a0gzZjRjUS9oRm4wek1JOE5PTkJKcld1RVBiQVp1WGhoRElGODZQOWJZUGR0L1RETHBjRjRzVjFycFBlTDV3dnhLd1p3YmlVUCszUVNpQ2t6eFRxRjNCZmN1OVhPdGMxckJlNHhnTW5wTWptUDRrZmN4dURtbThlQi85T003MHgzR2ZWMVd0NFRWMkRKNVBIMnFLVHI1elpLUGQ0dTZzaUNCbHkxRERtbHpQckJLakwvaSt4Yk9NOTF1M0VWVC9mQnp3SkZmNGx1N3owZ0Q3MCtKblErbGtrWkw3cTMwV3RxL2hldzZCMTdiUm42ek1heHNweTBoVFJTb2dKaXJzdGltcHZ0WUlzUE5aUUJyREMzdGd4aWI0akExR3Y3L1pGOFdZYXpUU0xYMjVaMGU1eFR2NXZDRlZHYXVGY2xPVjFhNHZ4ZmN5SmdWUWJKVHZ5VHlQZCs4ZFZvZ3hXNTdHNXg1RmdmdWUwWHp2ZTFKY0Vjck05TlJFaFJycHptcjBvZnRRUUlFVkJBeXdyNERzSVJSUVFBRUZGRkJBQVFVVVVFQUJCWklDQk5kWkdUR1dScWdiZk9NMXpDUjlRM0x2SjFKTnNLcUxORVN2ak5zejZNa01adEljYldHbStoQlRhWUI5S1BqY0Jpa0pZQktzSkZDSjhWM3h3THVCVGVvc3NQcVFsWWkwLzhiZzV0eUJqYjVWdVBzYVlEOHREcjR4OE5OdFl3RjJVbTU5SmFhdzY3Nk80RGRGMnYrUThaNFkyNFFpd0JSMFBxdG5vN0hpc08zbUJLT3BGOFZnVEc1YnFyN1UyTXJzM0hNcjJXNXVvZnFTWTdtdEFncnNnWUFCOWozb0JFOUJBUVVVVUVBQkJSUlFRQUVGRk5pNFFFNmdmS2d3TGJPb3llOS9jYUVoSzRpWXRYN3pRQTBCQXNEOHJRME9EKzErZHdac2Q1c25qS1N3SVVoNmJnaUJtYkY5N1VFeGRkelF6TjlUWXFGMGF2ek1iYVVCOW9jMTVxemN1Q2NlbUpRaGJhQjg3cm5NZmYyaEJOZ3haUFZGMyt4MURGSzFHcTZJYWIvNnZFZ3JTVXBLMG91VnRnZkc5Q3lreitFYyt4cC9JK1ZjWDJQR09LbVpxRjJUbXVYZHZwN0JHQW9hczlva1ZjK2o5SHJZbm4xL2ZNb0xKNzZHYTMvZnhsYkJUS1R5WlFvY0R3RUQ3TWVqSDcwS0JSUlFRQUVGRkZCQUFRVVVVT0NRQlFpd2YzR2tHQys1LzhsZFQ3cWl2cGFUV3VhUWZmck9mVXFoeVNHRDBnRDdQbHNlZFlDOVRaL0RBRWs3a3g4dlVvOHdZRU5qRzRydURnV2djMlpBUHlPRWNHT1RSNTZBK0pxTmxRYlA2d25la3c2RzFKZXNDQmtLelBlZDV6OWpHaG5TYUMzVlNPSEZyUHMxMm00S3F6V081ekVVVUdBUEJBeXc3MEVuZUFvS0tLQ0FBZ29vb0lBQ0NpaWdnQUxoQlNHRTYzdUNqcW5nZWt2SDc5c0xZcUMrSk1CM3FQVGtHMzl1Q0lFQTVkeG1nUDFrd2FrNTJNY0trT2IyMDAxeFFHbHM5UVFyTjc0V1o1dm43cmZHZGw5djZvSmMxSk9uZkN5bHpOQnh2eE56bWxOTGFNazJsdEtvNW5HcG0wTDZLUVpUYkFvb3NDRUJBK3diNm13dlZRRUZGRkJBQVFVVVVFQUJCUlRZWTRHK2dDR3BJNWdWKzQyQzh5YTRUb3FLOTRZUWxpekNXWEJLaTJ3NmxxYWo5SUFHMkU4V214cGdKM1VQOSt1TFN6dGhaL3RYeCtLbnFWMDhKZVp3SDBvemxIcDk2ZCtIMGpTMSt4a2FKT3NlaDl6OGw4ZjZDVXVraE9rZWo2TEdQdzhobkY1NndRWGJmeXltaGFHZ3ZVMEJCVFltWUlCOVl4M3U1U3FnZ0FJS0tLQ0FBZ29vb0lBQ2V5elFEZEM5SjRUdzBZbTVqTWtGVFpDVC9NdFAzK05ybm5KcVEyazZwdXlMMXhoZ1AxbHVhb0NkUFkzbFIwLzEwV2REQ0pmMHpCQWZldDJUUXdqWGhoRE9UTzE0NXQ5SmZmS3FwZ2p4Mkd4ellrenZhZ2EyUGpKeXJGL0cvZHcyODN4S1h2N1FtQ0xtMlNVdnl0aVdBVUFLczVKei9mYU03ZDFFQVFXT3FZQUI5bVBhc1Y2V0Fnb29vSUFDQ2lpZ2dBSUtLSENBQXJ1ejJFc0RqV09YeTZ6aXMwTUlUNDJGUTg4TElWQTg5TlFtR0VyKzlrTnJQNG1wUVdvVkZqWEFmdklkTUNmQS9yTENWUmZ0MGFmT2d1Wjk4L0s0YW9QQ3VyWGFmNXIzelBkQ0NGZkcrZ2ZrL1UrMW9ZTEZ6RnFuTU9vbkN3WVBVc2ZLL1R2di8wdWI5RkZuN2J5QW5QSDA4U056ZHhMUCsxY3hsejQ1NDI4OWdtc3BPRjAzVlVDQnRRUU1zSzhsN1hFVVVFQUJCUlJRUUFFRkZGQkFBUVZ5QkpqRmZsa0k0Y0lRd2xnTzZweDl6ZG1HQU55alFnajgyMjJuTFpodTRrOGhoRDhuVHB3MEZPU21yOVVNc0o4c09TZkFmazRJNFVzaEJHWk9wOW90VGFEM3V5R0U2NW9nOEoycGpUUCtUb0Nib1BGUUFkV01YZHk3eWQxTkdwZXBBemdQandNTTU4ZURmU3VtYmJvajkrQnVwNEFDQ2h5U2dBSDJRK290ejFVQkJSUlFRQUVGRkZCQUFRVVVPUDRDQkxRSkRqTGoxYmFPZ0FIMms1M1BhQVo0M3Q2VHg1ODg1RmVGRU81WnAyc085aWpraDc4NnpxcS9ZV0thcDRPOWVFOWNBUVcySldDQWZWdjk3ZFVxb0lBQ0NpaWdnQUlLS0tDQUFnb28wQlhvQ3liL0s0VHc0Y296NWRlUXZ6aW1BZG85MWswaGhHdldPTGpIVUVBQkJSVFlub0FCOXUzMXVWZXNnQUlLS0tDQUFnb29vSUFDQ2lpZ2dBSUtLS0NBQWdvb1VFSEFBSHNGUkhlaGdBSUtLS0NBQWdvb29JQUNDaWlnZ0FJS0tLQ0FBZ29vc0QwQkEremI2M092V0FFRkZGQkFBUVVVVUVBQkJSUlFRQUVGRkZCQUFRVVVVS0NDZ0FIMkNvanVRZ0VGRkZCQUFRVVVVRUFCQlJSUVFBRUZGRkJBQVFVVVVHQjdBZ2JZdDlmblhyRUNDaWlnZ0FJS0tLQ0FBZ29vb0lBQ0NpaWdnQUlLS0tCQUJRRUQ3QlVRM1lVQ0NpaWdnQUlLS0tDQUFnb29vSUFDQ2lpZ2dBSUtLS0RBOWdRTXNHK3Z6NzFpQlJSUVFBRUZGRkJBQVFVVVVFQUJCUlJRUUFFRkZGQkFnUW9DQnRncklMb0xCUlJRUUFFRkZGQkFBUVVVVUVBQkJSUlFRQUVGRkZCQWdlMEpHR0RmWHA5N3hRb29vSUFDQ2lpZ2dBSUtLS0NBQWdvb29JQUNDaWlnZ0FJVkJBeXdWMEIwRndvb29JQUNDaWlnZ0FJS0tLQ0FBZ29vb0lBQ0NpaWdnQUxiRXpEQXZyMCs5NG9WVUVBQkJSUlFRQUVGRkZCQUFRVVVVRUFCQlJSUVFBRUZLZ2dZWUsrQTZDNFVVRUFCQlJSUVFBRUZGRkJBQVFVVVVFQUJCUlJRUUFFRnRpZGdnSDE3ZmU0Vks2Q0FBZ29vb0lBQ0NpaWdnQUlLS0tDQUFnb29vSUFDQ2xRUU1NQmVBZEZkS0tDQUFnb29vSUFDQ2lpZ2dBSUtLS0NBQWdvb29JQUNDbXhQd0FENzl2cmNLMVpBQVFVVVVFQUJCUlJRUUFFRkZGQkFBUVVVVUVBQkJSU29JR0NBdlFLaXUxQkFBUVVVVUVBQkJSUlFRQUVGRkZCQUFRVVVVRUFCQlJUWW5vQUI5dTMxdVZlc2dBSUtLS0NBQWdvb29JQUNDaWlnZ0FJS0tLQ0FBZ29vVUVIQUFIc0ZSSGVoZ0FJS0tLQ0FBZ29vb0lBQ0NpaWdnQUlLS0tDQUFnb29zRDBCQSt6YjYzT3ZXQUVGRkZCQUFRVVVVRUFCQlJSUVFBRUZGRkJBQVFVVVVLQ0NnQUgyQ29qdVFnRUZGRkJBQVFVVVVFQUJCUlJRUUFFRkZGQkFBUVVVVUdCN0FnYll0OWZuWHJFQ0NpaWdnQUlLS0tDQUFnb29vSUFDQ2lpZ2dBSUtLS0JBQlFFRDdCVVEzWVVDQ2lpZ2dBSUtLS0NBQWdvb29JQUNDaWlnZ0FJS0tLREE5Z1FNc0crdno3MWlCUlJRUUFFRkZGQkFBUVVVVUVBQkJSUlFRQUVGRkZCQWdRb0NCdGdySUxvTEJSUlFRQUVGRkZCQUFRVVVVRUFCQlJSUVFBRUZGRkJBZ2UwSkdHRGZYcDk3eFFvb29JQUNDaWlnZ0FJS0tLQ0FBZ29vb0lBQ0NpaWdnQUlWQlA0UDVITWhBTlovQ0FrQUFBQUFTVVZPUks1Q1lJST0iLz48L3N3aXRjaD48L2c+PC9nPjwvZz48ZyBkYXRhLWNlbGwtaWQ9ImZhY2FkZSI+PGc+PHJlY3QgeD0iNTUzIiB5PSIyNzgiIHdpZHRoPSI0MDAiIGhlaWdodD0iMTAwIiBmaWxsPSIjZWFmMmY4IiBzdHJva2U9IiMzMzU1NmYiIHN0cm9rZS13aWR0aD0iMiIgcG9pbnRlci1ldmVudHM9ImFsbCIgc3R5bGU9ImZpbGw6IGxpZ2h0LWRhcmsocmdiKDIzNCwgMjQyLCAyNDgpLCByZ2IoMjQsIDMxLCAzNikpOyBzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDUxLCA4NSwgMTExKSwgcmdiKDE0NCwgMTczLCAxOTUpKTsiLz48L2c+PGc+PGc+PHN3aXRjaD48Zm9yZWlnbk9iamVjdCBzdHlsZT0ib3ZlcmZsb3c6IHZpc2libGU7IHRleHQtYWxpZ246IGxlZnQ7IiBwb2ludGVyLWV2ZW50cz0ibm9uZSIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgcmVxdWlyZWRGZWF0dXJlcz0iaHR0cDovL3d3dy53My5vcmcvVFIvU1ZHMTEvZmVhdHVyZSNFeHRlbnNpYmlsaXR5Ij48ZGl2IHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiBzdHlsZT0iZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IHVuc2FmZSBjZW50ZXI7IGp1c3RpZnktY29udGVudDogdW5zYWZlIGNlbnRlcjsgd2lkdGg6IDM3NHB4OyBoZWlnaHQ6IDFweDsgcGFkZGluZy10b3A6IDMyOHB4OyBtYXJnaW4tbGVmdDogNTY2cHg7Ij48ZGl2IHN0eWxlPSJib3gtc2l6aW5nOiBib3JkZXItYm94OyBmb250LXNpemU6IDA7IHRleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICMwMDAwMDA7ICI+PGRpdiBzdHlsZT0iZGlzcGxheTogaW5saW5lLWJsb2NrOyBmb250LXNpemU6IDIwcHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtNaWNyb3NvZnQgWWFIZWkmcXVvdDs7IGNvbG9yOiBsaWdodC1kYXJrKCMwMDAwMDAsICNmZmZmZmYpOyBsaW5lLWhlaWdodDogMS4yOyBwb2ludGVyLWV2ZW50czogYWxsOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3b3JkLXdyYXA6IG5vcm1hbDsgIj5EZXZpY2VTZXJ2aWNlICsgUmVzb3VyY2VSb3V0ZXI8YnIgLz7mjInlv6vnhaflrprkvY3otYTmupAgLyDlrr/kuLs8L2Rpdj48L2Rpdj48L2Rpdj48L2ZvcmVpZ25PYmplY3Q+PGltYWdlIHg9IjU2NiIgeT0iMzA0LjUiIHdpZHRoPSIzNzQiIGhlaWdodD0iNTMiIHhsaW5rOmhyZWY9ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFCZGdBQUFEVUNBWUFBQUNQdFVIVUFBQUFBWE5TUjBJQXJzNGM2UUFBSUFCSlJFRlVlRjdzdlFuOGQ5MVk3MytkZEJ4SGgwZ2tDWWt5TmZrcjh6d2RROGN4aTBSRVNSR2lFMUxHekpLaGtoekhXSWhqQ0NFYzg1QUdHVUlaU3NhUTZkQ2c4OTl2ejlyc1p6OTdyV3V0dGRmZTM3Mi92ODk2dmU3WC9UejNkKzgxdk5mYWE2LzlXZGU2cnY5Z1NpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQXNVRS9rUHhIYnBCQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFVEFKTEJyRUlpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaEFCUUVKN0JYUWRJc0lpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJU0dEWEdCQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkNCQ2dJUzJDdWc2UllSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUmtNQ3VNU0FDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0ZRUWtzRmRBMHkwaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJSUZkWTBBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVLZ2hJWUsrQXBsdEVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFLN3hvQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJVkJDUXdGNEJUYmVJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBUjJqUUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUnFDQWdnYjBDbW00UkFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUW5zR2dNaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlVRUZBQW5zRk5OMGlBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWhMWU5RWkVRQVFPUWVDL21ObVp6T3dyWnZhcDhQY2g2cUV5UlVBRTlrdmdkR1oyTmpQajc4K2IyUmYyMnhUVlhBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVlLOEVKTER2dGVkVWJ4SFlKNEh6bWRsVHpPenlnK3AvcmhQR2Z0SE1uaVNoZlorZHFscUx3TW9FRU5UdllHWVBOYlAvUENqN0pXYjJzMmIyd1pYcm8rSkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUk9NQUVKN0NlNDg5VjBFVmlad0huTjdPVm1kc0ZJdWI5a1pnOHpzLyszY3IxVVhEc0MvOUhNem1GbUZ6V3pNNGYvL3NGQjluL1JDYUNmQ1AvL2QyYjI5MmIyR1RQN2Nyc3FLS2NqSjhDNjVlNmRzUDZRU0R2ZloyWlhON01QSFRrSE5VOEVSRUFFUkVBRVJFQUVSRUFFUkVBRVJHQWpCQ1N3YjZRak5sd054REVzQXVlbWZ6T3p0NW5aWjBOR2Z4MkVOcmtIbVV0MkgvZC9vNW45ZGllbzNqWlIzWDh4c3l1WjJSdjMwU1RWMHN6T0VQcnNabVoyclNDbzE0RDVvcG05eWN5ZWFXWXY2cXlUUDE2VGllNDVFUVQrUHpON1RXZTlmc1pFYTMvZnpHNXBacngzbEVSQUJQSUljTUxzTHFOVElYbDNudmFxNFpydm44M3M3V0ZlMTJacUxWSGRKd0lpY0N3RVdEdi9mTUxncUxTZGYyTm03eDk4WDMvWXpQNnBOQk5kTHdJaUlBSWlNSitBQlBiNURJODloeDgxc3hjczNNaVBkQ0xkcTgzc2Y1dlpLNE5QN29XTFZQWXJFL2cyTTN0RDV4N20vRTY1OXpLekI2MWNOeFZYVHVCN3pleWVadmJqWnZZTjViZTdkN3cxZkh5ODJiMVNGNXcwQW5mdDRqYzh3bW4wUDVqWnBjeU1qMHdsRVJDQlBBSTVtMWQ1T2NXdjRnUVRycHgrMTh6ZVltYi9PamREM1M4Q0lpQUNPeU5BSENxTVNhNjRZTDJaV3pGR2VMS1p2WEJnNExaZ2tjcGFCRVJBQkVSQUFydkdnRWRnRFlGOVhBY0U5OGVaMlZPREN3bXZqdnA5K3dSK3dNeGVHd0ticG1xTGYvWmJiYjg1SjdhRzV6YXozelN6NjY5QTRIOGszSUNzVUx5SzJDaUJKem9uWWFqMi8rMDJhNjhRVGsxdHRCbXFsZ2hzanNBYUF2dXcwVjhLRytxOFU0akZvaVFDSWlBQ0o0SEFHZ0w3bU9QenpPeVh6ZXc5SndHdzJpZ0NJaUFDaHlJZ2dmMVE1UGRUN2lFRTlpRWQzRWI4UXJCMGttL3UvWXliY1UyL1BiZ0FPWS9UQkZtd2I3T1BDU1RKY2RZSG1CbCsxdGRJRXRqWG9MeS9Nb2pWOEdDbjJySmczMSsvcXNhSEo3QzJ3TjYzR0hIOVo4enNXUXAwZnZoQm9CcUlnQWdzVHVBUUFudmZxTWQySjRmNDF0S201dUxkckFKRVFBUk9JZ0VKN0NleDE4dmFmR2lCdmE5dDd6S0NJOFVTMnN2NmNBdFg0NE9kRXduNDZvNGwrV0RmUWsrZHRnN25OTE9uZFNjUXJycHk5U1N3cnd4OEo4VmRPcmdVTzMyaXZ2TEJ2cFBPVkRVM1JlQlFBbnNQNGJsbWRqc3orL1NtcUtneUlpQUNJdENXd0NFRmRscnk5MloyUXpQajIxcEpCRVJBQkVTZ0lRRUo3QTFoSG1sV1d4SFllN3djY1NQbzZzZU9sUGN4Tit1SGdvLzlzMFFhaVZzZ1Rpc29NT0YyUnNGNXpleVB6T3lpQjZpU0JQWURRTjlCa1d6V1BTWll2RTVWOXgvTjdHcWRHNk8vM0VGYlZFVVIyQktCUXd2c3NNQ1YzRTIweHR2U3NGQmRSRUFFR2hNNHRNQk9jd2lDZW1NemUwWGp0aW03N1JFNFhYZEM3Q0ptZGtjeisxWXp1N1daZldGNzFWU05ST0E0Q0VoZ1A0NStYTElWV3hQWWFTdkgybTRSaEQ5WnN5L1orKzN6L3A1Z0RmM0RnNnp4dy9vcndiZTNBcDYxWjE2YjR6ZWIyUjhXV3E3L2U3ZGdmMmV3aW5sYnR4bEdRTHRoK2o0enc0ODdRZzZMdlpTN0dRbnN0VDEzL1BjeGJ0aU1lK0JvRE9GU2pCZ083ejErQkdxaENEUW5zQVdCblViOVNiQ3UvR3p6RmlwREVSQUJFVGc4Z1MwSTdGQkFaTDltY01ONmVDcXFRVXNDckpOL0pMajN2TUZncmZ4L3pPeTZFdGhib2xaZUluQnFBaExZTlNJOEFwN0EvZ3d6dzZvOEp5SFk4UUgzVFdaMlNUTTcvMHgvem84S2Z1UVFhSlgyUlFBcmR2eDZJOGh5SEZ6QytyYjZqNFVaSndvNHJwK1RYaHI4cytQQ3FhUXZ6MlptVnpHejJ3ZXI0MkZaRXRoenlKL3NheGluMzJKbTMyQm12QWY0V0ZRU0FSR29JK0FKN0ZpWEU1QTBON0htdTB6WXBPVTBWRWtpM3NkOTVCS3dCSm11RlFFUjJBa0JUMkJuTFhNUE0vdE1abnM0MlhkeE03dWltVjBpcklreWIvMnFtNWhyZFVMc3AzSnYwSFdiSm5BR00wTWY0YnVLdGZFNFNXRGZkUGVwY3NkQVFBTDdNZlRpc20zd0JQYTVJaGlMakV1WjJZM003S1ptRm5NZkVtdmxjOHpzcDh4TWxrN0xqZ1BsZnJJSVhMMTdMaEhOcHhablF4SllHaUxDZjZBQkhzVDJPNWpaUGNQbXk5eTVwVUdWbElVSWlJQUluQmdDbnNEK2xIQkNwQWJJZUg3Mzh2aS9uVXU1SzVnWko2R1VSRUFFUk9DWUNIZ0MrOStGYitPUFZqUWF3NFBybU5tdm05bUZNdS9YZWpzVDFBNHU4OGFXQlBZZGRLS3F1RzhDRXRqMzNYOXIxSDVwZ1gzWWh0NUgyTjNON0pZRmpYdFZFT2dWR0tzQW1pNFZnUWdCVGhad0tvVmpvNmwwMytDaW84UmlQUWY2bVVPK0h6U3pSK1Rjb0d0RVFBUkVRQVJtRTFoU1lPOHJ4NG1UM3pVempxeDdTY0dLUFVMNlhRUkVZSThFUEJGMGpzRGU4K0NiK3VmTTdKRVp4akwvMExubXVud2pZNWs5OXNjeDFka2JXeExZajZtMzFaWk5FcERBdnNsdTJWU2wxaFRZaHczSFQvUDlReUNPSENEeTJabERTZGVJZ0UvZzBtYjJhak03ZmVKU0JCS0M1YlFXMTRkRmN1UlZBVy85L3RJVklpQUNJdENDd0JvQ08vWE1kVUZHTVB2TG10bjdXelJPZVlpQUNJakFSZ2g0SW1nTGdiMXY2ZzI3bUVmUHloRFpmOXpNbnI0UlBxcEdQUUZ2YkVsZ3IyZXJPMFVnaTRBRTlpeE1KL3FpUXduc1BYU0NZVDdUekw0N294ZldFUDB5cXFGTFJHRFhCQWdjaVp1V1dQcnJUb0MvVXVmTzVlTzdicVVxTHdJaUlBSWlNQ1N3bHNCT21ibEJ0Q1g2YUl5S2dBZ2NHd0ZQQkcwcHNLUDFjREw4SVE3RVB6U3ptOG13WmZkRHpSdGJFdGgzMzhWcXdOWUpTR0RmZWc4ZHZuNkhGdGdoUUZEVXgyWmFzLzlTZC8zREZCanI4QU5ITmRnbEFaNjE1NGVnZExFRzRCcm0xM2JaT2xWYUJFUkFCRVFnUm1CTmdaMDY1SnlXK3IwUVowZTlKZ0lpSUFMSFFzQVRRVnNLN1AyRzVoK2IyU1VUQURrcFJGQnFHYy9zZTVSNVkwc0MrNzc3VjdYZkFRRUo3RHZvcEFOWGNRc0NPd2p3SlVkRTlRYzVQUDdGeks3V0NZU3ZQVEEzRlM4Q2V5VHdiV2IyQmpNN2Y2VHl1R3k1Y3ZlTXZXNlBqVk9kUlVBRVJFQUVvZ1RXRnRqUFlHWllUVjQ3MFNjU0F6UmdSVUFFam8yQUo0SzJGdGpoOTlObTl0c0prQW9zZlJ5anpCdGJlcWNlUnorckZSc21JSUY5dzUyemthcHRSV0FIUis0eHQ3ZWEyYlhNN0ZNYllhaHFpTUJlQ0NDc3Y3NWJoSjh6VW1FdHdQZlNrNnFuQ0lpQUNKUVJXRnRnenhGOWxoQ2F5cWpvYWhFUUFSRm9TOEFUUVplWTl5NGNqR01JTkIxTC84M01YdGkycWNwdFpRTGUySkxBdm5LSHFMaVRSMEFDKzhucjg5SVdiMGxncCs2NXdiSHU0T3pVbDNMUTlTSndFZ2g0QW9zRTlwTXdDdFJHRVJDQmswakFtLytmWW1hM2FneUdFNGN2Q3dZVVUxa3ZJVFExYm9LeUV3RVJFSUVpQXA0SXVzUzg5NjNkQ1ZURTFZdElZQy9xcTcxZDdJMHRDZXg3NjFIVmQzY0VKTER2cnN0V3IvRFdCSFlBbkszekkvY1NNeU1BYWl6OWpabGR4Y3orZmtWaUhIYys2Nmk4ejVqWmwxZXNnNG9xSjhBOGlFWEg2VWUzZnNuTS9xazh1NlozbktVTFRQU2ZCemwrSlp6TTRPOGxraWV3SExQQXp1WWQ0K0FiQm1BL2IyWmZXQUswOGp4S0FsUHZnSDgzczArYjJiOGVzTVY2TitYQmo4MS9Td2pMZVRWYTl5cHYvbCtDZzFmbUVrSlRqT3BlbnBPcGVpNjlOcWdaaVZ1ZEQydmFvbnZxQ1d4MUhCenllZmRFMENYbVBhOU1lbmh0Qy9ieE53NTF3TlVyYTZiL1Z6L2tUdlNkWGo5dlJXQ2YrdlpXMzUvb29YczhqWmZBZmp4OXVWUkx0aWl3MDlhcm05bExSMkxZbU1IUGgrQ29TN0RoMlRtdm1kM1F6RzVpWnBkSTFBV0I1WjFtOXJUT2N1QlpadmFoeW9YRDFHSncyTFkxUHJCNGNaOHBBVFFsU2s4Sm1NT3MxaEF6OGVYL1BXYkd1TDZCbVYwc0JORk5qWkZQZHBzMXJ6R3ovMjFtTDE4d0FCQjhFQnQrek15dUY4WlhyRjVmREVjOUNRQ0g5ZDluR3czeWJ6ZXpONW5aZVJMNU1lYWYyNmk4UTJhRHYvbnJCdDVYQ0tkall2WDUyK0FyK01sbTlsNHphNzNCTWZXUjBkY2w5Vnd6RDNIc0Y5K2Exd3krOHhsSHBJOEdmL29FZlg3em9HR3hEYVUxbjBXZVF6WksrWHNxZWFKMExhK1c0KzJiell4eHcvTkFYSUxVTTBPNUNPenY2amFHLzhqTW5tZG1mN21RNkg2SWQxTkxyb2ZNU3dMN0tlKzZNMFk2NFpnRTlyMDhKOHlSUHhqV0s2eGJMdXFzZS90NTVwWGQrdVk1bldEMlp5c1plV3gxUHZUZU5VdXNPNWRZNjNydjdaUXdCUU9DVzk3ZXpLNFkzbFVZRXZDZVJjaEZjTHVmbVJIa2NtN2E2ampZMnZQdWlhREhKckQzL0ZtbjN0ak1MajVoa0RZZWV4aW9NWDg5dXd1SVRZRFcybTluYjB4N3orc1NobkxlOTd4WFpxck8zMlJtVCswMGtrdEZHczQzM2kzTmpPOUlMN1djSDJuemxjenNac0dON3prU2hkTit2bTM1NW5yMUF1K3dPZno1ZHZueDhPMkludEFiVmxKbnZnK2YwSDJMc1ZZaVpwblNDU1VnZ2YyRWRueEJzN2Nxc1BOeWVYcDRVY2VhZzZqRXk3eVYrRWc1TEZRUjVSNXNaaGNxNERpODlLKzdsOFgvNkVUNUZ4VUtkWmNPTDVxeHBYV2ZOOWJXbHplemQxVFd5N3VOK2VKSlpuYnJ4SVdJdzc4ZitkMnpWSVBKUTd4S1ZQN09DNUVndVh4Z0lNN05TZmo0djIvWTRHa2h0SjY1czlhNFUyZTFjYytSdFhwSkhSSHNmcmw3NGIrbjVLYUphMWtvc0toaHd5aVc2RjhXWjN0Y1BEQ0dmNlFiQTcrUldIeDZDTmx3WWF3KzA4ellVR3FSL2xmM2Nmc1RrWXhpSDFvYzgyWHhtVHJKUTViajUrb2J3K0tiUlc0c1BhNDdLY0VHNVZJV1JONWM0TTNkTmJ4YTlCUHpQd0xGQTJlTW43NGVqSjNmTXJPSGg4MlF1ZlU3NUx0cGJ0MjNjcjhFOXVNWDJQZnluUFJyRnViaDRTbTJtbWNGWXhUZUEyenF0VXl3L0svZFd1RGVHNXdQKzNaNlJnTkxyRHU5OTF0Tm1aNGdPMldWeW5xSHpWOEVuKzkyT242TzViTGVpK1ZQbGRlZnh5S3c4MzN6TTJaMjUyNGNucXNjMDZudXdOQ0ZqU0FFOTFacmJ3cndudGM1ejBhc3laNjI0cFhwMVhrbTZxL2RYak5YamN0bUR1WWR3VGdZbmhET3JTTWJnUVRuZlVDanRUTGwxdkJuTExQMi96bW40bHM1SVpETFY5Y3RRRUFDK3dKUWp5eExieEpxTWZuV0ltTmgvK0tFNzA3RW9XdVkyU3RxQ3hqZGg1REZybVN0c0Q2dUJrSXR1NkRzZU9Za1BySVFVdGswaUtVbCsrTzd6T3kxWnZZZGtjTFpPR0IzK3VPUjM3MEZ3UkoxejMwaDV2QWZYdE5pOGN0SENiRUNIdHJnQTdxdjIyT0MwSjVqbVREVlp0NEpuTFM0ZVFJSWJtSnd2elMwaWk3bGQ0anJ6eGVlWHphaFdpUVcrN2NOMWw5ejh5c1JqT21qTzNaV0U0L09YS3hPUFZmZTNJbWwwR1hON0IvbU5peHkvNjkxNHYydkp2TDJUaCtWOEdyUmhCS2hvclM4RnZQZW9kOU5wVzNlNnZVUzJOY1gyQWxJenpvdWx2NDByT093RHB1Yjl2Q2NzTTVqL2tOTTZFOGp6VzAzOTdlWVovcDZMRGtmVXNaanU5TTk5ekt6enpWbytFa1YyQms3djI1bWQ4dGs2QWw2c2ZWaXJvQ2ZXWTJ2WGRaaXZHNzVlVCtFd002cHpUZUVrNDVUL1lIUkRQMzV1dExPbXJoK3FYbU1vcGdYRUdzNUVkN0N5TW43TnExNU5qeUVucmJpbGVuVjJTcy85L2M1enlGamdMWCtMMlorcTNoMTRuUVc3d1VNcE9hNlhDemx6eW15RjVqWmQzcVZETitFR0dMS3ZXZ0dyR085UkFMN3NmWnN1M1o1azlDY3lYZHVMVG1LeUxFeGpqN0dFb0lqMXNGekVndlZYK3FzMSs4L0o1UEl2YndrYmhHTzh1WllpN0p6U3B0aWFjbWRVeXhlc2RxTkpheTZlWm5Ha3JjZ2FEbVdtTnR3M1lQbERpSjc2elJYWUQ5bkVMS3YycnBpd1IzUmYrODJiNGhEVUpOd040SzFRQ3E5cWpzcGNhUGdKN0dtakRYdllTeGdjZi9FeG9KRjN3Ym1oa2ZNWE9qbkNzYTA1ZTZGSnoybW5pcyt0RGgybWRvc3hFMFJDOHJXeVp1M0VmWFpCUGxBb3VCY1hpM3F6clA2K003Njgvb3RNcHZJWTg2OHQ2VjMwMEo0VnMxV0F2djZBanZ6SnljQ1kra1B3NUh5T1NlbTl2S2M0TzRMOTJ1dGpEaUdUT2ZNTThOOGxwNFArN0wrMGN4dTJybmh3dFhObkhRU0JYYkdPNmZRYmxjQXpoUDB4bGt0UFE3bWpOYzlQTytIRU5pOWI3Q1BCY09LdWE2Q09PV0grMHJ2MUVUQjhKeTg5RStDa1JyMW5wTThMcVhQUms1ZFBHM0ZLOU9yYzA0ZGNxNnBmUTZYZkpkeHlwclQ4dmpwcjAwbC9EbjFqTmFVZS9wOVNSMm10cjI2YjJVQ0V0aFhCcjdENHJ4SnFIYnliWVhDK3ppYmEvMkVMelBFUml6Tmwwb2NmK0w0SEF0aVQyVDNyTWlYQ2tMcHVaWEEveVBXNjI5TVFQSVdCSzNHRXJ2bUhPTzZ5MUlkRnZ4VzR0OE9QOWVsaVlVSDdvSE9YM3Bqd2ZVRTkyV0I5aGNGOS9TWGVtT3N2NDdUREd4aXpGM2NWbFF4K3hZK3RMQjRTRmxMWjJlV3VCQ0JIUmM5dFZZVnVZSXhmY29wbHBKamxySG55ck1peC8zTWJUTG1wRkorbnF1ckhCZEV1YnhLNnphK0hnczRCTDRjcTVYYXNtcm52YTI5bTJyYnY2WDdKTEN2SzdDdmNTcHZMOC9KMVlMcmc5eVArTkxucG5hZUdaYXp4bnc0TEs5a2JSempjUklGZHF6V2NUMVdranhCYisxeFVEdGU5L0s4SDBKZ1g5cEFpMU81bFBISXdqVnF5VGdkWHp2blc2ZlB5L3MyTFhrMmN0dmlhU3RlbVY2ZGMrdmhYVmZ6SEM3OUxxUE9hRHNZdlh6WWEwRGs5MXorNXc2eDEwbzJ2U1d3VjNiS01kMG1nZjJZZW5PWnRuaVRVTTNrMjdLbWwrdDg0bUpOaXdBOGxkamg1SnAzVnhTS3BTVmlEKzRVbGs1OFNDQldJdWFra2lkMGMrOFNmWUlZL1BwdXN3R3JsYW5FN2k0dnU1UmZQRzlCMEtMZTlCbVd5bGhYTDVscUxkanhiZjZTN2dqMHR5NVp1WkQzKzBJd1lOeDlsQ1RlQzQ4S216N2VmVmlaNFU0R04wemU1cENYVit2ZkVkZC9NeHdsYlozM1ZINXM5aEZRdElaRGptRE1VVmlzK1FoeVY1Sml6NVVuZEMvbEpvYk5MK0lOVENYWVhUdkVOMGkxTVlkWHplYlhzTXpyaENQSXNZQ1BKWDJRdXJabTN0dml1NmtWajBQbUk0RjlYWUhkbTROeU51NVQ0MlV2ejBtcGhWek5NMUl6enh4aVBtejliajFwQXZ0NXcrbTAwaldtSitqMS9hTDM0aWtrY3IvWllzL3EyZ0s3ZDNLUWVucW5rRlB6VHFsTG9wbzVMSFlQOGNkd25mcVd5a3k5YjlQY1o2T2tlRTliOGNyMDZseFNsNWJyMHhzRTNhU2xlN05ZL1RqQmNNUEtPSHM1L0RHRXkvMFdIdFpSQW51cjBiZmpmQ1N3NzdqelZxcTZOd25OWGJUUGJZYm5VNDc4RVd3UU5VdFN5UkhMZDRaSm1ESVFkWHFCalNqVkYraXNpSEhYZ1p1YXN6c1ZRS3pFQ3B6OFVzbnpuK3dGQ0N6aDBGL3J1UTFKQlRmdDgvQVdCSFBIVXVuSE5BdGtoR0g4K01Ic1V5TXdXSzBpaVAva1JORFBHb0dkRDUrWGQ4RjVMNWpSQWM4SlJ5enhoVGowNDRaMUczWEM1UW1uS2p4TFpoWUliTnlVQmdSaTNMN0d6UGc0elVrRWE2VC9XdmhNelNuUHU2YkVsUXA5eWVrUk5yYytPSEQxd2h5QTMvYXJkKzI2YThaeFY4WVR6eVo5WEpweUJHT2V3UnBML05oemxXTTltdk5jbDdTVmozNFdud1JvblVxNWMxY09yemtDZStsSHdrZUN5eWNXL084YXVRc2lLUFhGd3djZ0xnL0dGcXFsODk2VzMwMGxZMkdMMTBwZ1gwOWdaLzdoM1l1djBsaksyYmlQM2J1WDU0UmdwcXdkdldEVnZNTnhlWWNCQWUrcDRicUE5OTIzaEhjVTFvTUV6UDdlRVpqU2VXWjRlK2tHQU5hRi96TllHV0poT2t5MDl3ckJDQUpYRXQ0YWhudm5pSmtuU1dESHlBVjNacWtBNXJIbnhSUDB1RS92eFZQVHkvMW1tMksrdHNDT3ozTFc2YkdFU0kxcnZuZFV2SmhMMXR0a3owbFBYR0g5N3k3WTVOc21mRlV6ZDdIdVJqd2R6Mk94NnRVYUZKR2Y5MjJhODJ5VVl2TzBGYTlNcjg2bDlZbGRYL0xleUgxUDBQK2NrT1hQbjNYZmpsOE9oVE9PMEVsdysvdXptY2FOeEtMaXRIcXBZVk1PZjU1dlhHbXloaTlKRXRoTGFCM3B0UkxZajdSakd6YkxtNFJLSnQrRzFmcGFWb2pZQ0dPSTZDMWVFT1NSdTFnZ3lPSHRnd1c5TjdubkJuekpFVVE5a1dxdTFkZVlveWZFZWNGTisveThCY0djc1ZUeU1ZMElqR0RLNllUY1lLQWNPNzF4c1BBNFQ0V0xHTVIveHFubmN4MzNIMnpHNUJ4NzQrZ2FGdHFlYjJnQ3FYbysxYWVlSGNSQWZPN252aWZneWtLSGUwb0YvZFp6QXd0enhKdlV4M3RKb0NTT3ZySlJBY2VVVDM4Mnh3Z0ErNG5DQm5tQ01VSTM3UmtIR0daejRFSGRCOElMQjV0NzFCVlJnYzA2am9venpoOFNxWSszY1pianJxV2txZDdtb0JmY3RDL0w0MVhydm9uOGN6OFN1QllmOWJnRzRvU1U5dzdvM3kyNGlHS3VZNU9NVkRMdmJmM2RWRElXdG5pdEJQWjFCUGJjY1Z5N3daZWIvNkhXY01PeDd3bGZYRnV6Z1kyUVRSQnVBc3doV3BUTU04UDY1Um9HSUpvZ2R1QlBmMnlzRUh2V1dWY3g1OTh2SXo1S3JaWHFTUkxZQ1dyS08ya3NDT0Vxa0hVQ0orRDZ2aGthRUhENkR0Y2VyQ05pU2UvRmFUSTUzMnhUZDY0cHNPZjAzWnkxWHM1Nkd3YXNWeGxyZkF2bHVsUEVaU1V1R0wzdkhQS3Z0V2oydmswOXNidG1MZU5wSzE2WlBMOXNxazU5NHpDdlByVTdDY282ZUNxOUthdy9jNzUvUDU4WnJEUDNQVkVTd0JwREhFVDQxT1p6cldHVHg1OHh6VGYvZUxPU2NjdDM0TzkwcDdmZk94akh2ZkVibTl2bkNvYVZDbkphODJRY3lUMjV3c21STkZmTnFDRGdUVUsxaS9hS3FrUnZRV1Jra1I1TFQra0M1dDJxb0VCMjhiRnNUdTFhc3Z0T0FLSFNJQnVYNlY0V2Y1UUlsb0ZJZzNzVDhrOGx6My95bktOKzQzSXYxZ25EK051TytRYk5EU1RyTFdMbWpDV3N1VmxRZUtubVEzV1lKNHNhaEdjQ1RTSVc1bGpKTXMveUFYbnZST1ZZSkNENnMvakFGVWh1UWt5OVIvaDRpdDFEc0ZORTM3RWxtVmRHN1pGUFJBdUVYVDQ4U3RyaTFTZjM5eHpyZXl6c1dEeGhDVmlTeVB2RnppbUVtbkhzQ2Nac1d2QmgwcWZjOGNMNDRMbU5DUjZldi8yY2dLTzUvSGdPbUN2dUdMbWh4SjJYeDZ0V1lNKzFKdVZadW5YbTVtcU1EK3gvdzh6ZVVCQzBkZy92cHR6eHNNWHJKTEF2TDdBekQ3QWVJd2hlYWdPVWswQll6Tlo4cE83bE9jbHgyekRIOVJqUFdHL2N3YVkzODI5SlFnUmtMWW8xYVNvaDRMSXVRbkNvU1JnTElLUjRCZ2cxWStLa0NPeXMwWEhyTm93WFJVd21OcWtRemxNYndJd1IzRThpcGswbHZSZmozeis1MzJ4anJtc0o3RGt4bjlpODRodmh6eXNlM2g4S0d6ZGU3QWhPVnZDdGtpUHFqcXZCTzRPVE9jL0ljSy9KaGlLQ2ZFbnl2azA5c2J1a3JQNWFUMXVaVTZZM3RscGJXUE90K1BUd1RSVmprVHNYamU5bmJ1Szl4V1p4TE5XMHgrUC9LK0U3ZGppdWMzV2ZzNGE1ZEU1Zzlwb3hwWHMyUkVBQys0WTZZNk5WOFNhaEdqR3BkVk85UUtmc2xyTUxtVFBaNVN3aytUQkUwSysxMHZWMiszT09SWHUrUzNOZExlVDBSWXB2aWJXOHQ0aXBIVXM1Z2lxQ0pDOW9oTGtjUzFPUEN5OWRGb281VmhqZXh6NTF3NDg1RnNvMWRjdXgzcysxREI2M3UxWmtKeDgrdWhIYVdmeXNKYlRuTFBTSTJjQW1WdW5tV00vR3N3YktQZEV4WkowU2pGbVlJcEQzZ1RiNWY2enAyYWlibTNKaU90UmFrWTdyaHZVOWNSeXdkSmxLSlJaVVN3anNPUnRoMUx0bGNGOXZBMlRJYVMvdnBybGo4cEQzUzJCZlZtRG5ZNW5OWmtTUVZLcTFWaWJQUFQwbldPYnhmb1RMVk1wWkN5NzV2T1JZMTc4MHJLOC9PN01pdWNFcFMwL2tuUlNCblZOenJIOFFkMGd0Z2orU2o5NkxwN2dxU1oySXJIbE9QUkcweGczbDhCR2szL0NYai9DWk9uWEpQYldiZURsdXZzaWYrWjdBcHpYZk44TTI1V3dXMUxqdDhiNU41NGpkc1duUjAxYm1sT21OclJwQk9qVzlld1p1dk04Wml4aVQxQ1R2QkhodTdLWmgyUjcvdDNlYnk5OC91SUZORzA2cjVuenoxN1JSOXh3WkFRbnNSOWFoQ3pUSG00UnFSZEdXVmNYS0tSVWN0T1JsNG4xUTFCNUJHeTk4VW9FemNrUnJ6MjBMbXdsWDduYjk4ZUU5SjNrV1ZpVUxTMjhSVXpPV0VBZzVycFhhM1o3anYzTU9PKzdOV1lEV0xtNkhkVHVIRXdCenpvWUxJaURIaDFrZzUvaExIVE5iVTJqSDBvNFAvbGc5NS9ocEhMYkxteWRLUmVtVVlEd3NkNG14N0xsdEtkbWdURDB2YkhKaWlUK1ZTaGZJU3dqczN2eEV2VnZNLzdWemlqZm1XdFROQzNDYzgyNnFiZDhXN3BQQXZvekFQbmF4bHVycnVYUGNucDZUVzRUWURURWVDQmNJWklkSWJPamlVZ1FEaGxocU1lY004L2FFRks0dGRjTjJVZ1QySWNjNUcxVGp2dFo3OFpSTmhybmZiR091bmdoYUs3Q3pYc2VITmFlY3ZaTW4xT2wzdzZuQ0d1R1FiMi9pUmFXMHBCYmZOME4ybm9FTDE1YjY1ZmJHK0J5eE96WjNldHJLbkRLOXNWV2lpWGp2SHUvYmMrNzd2Qy8vb2s3dzVoSURIZkwwK0EvYlBlY1o4ZmpwOXlNbElJSDlTRHUyWWJPOFNhaEdGRzFZdmE5bTVkVXg5MlZDd0ZRQ1dsd29Vc0dhbmZGWVd6MnJhL3dsM3NzQjVmbFB6c25ENnd2UFVyNUVTUFFXTVRWanlhc2Y3V3U5d1BPWURYLzN4TXRhLzQxVGRVaFpFYlRZY0NFZ0dXNTRla3ZxRWc1Y2k5Qis1MkFCUE5lU1phcHNiOU9wMWxmZlZGbWVsV1NwS0owcnNDK3gwUE5pT255c0M5eDYyUzV3M3Z0TE8zeHd2V2NwWDdvQjFGcGc5K3BIVTFwdHp0UmczTnU3cWFhTlc3aEhBbnRhWU9mMEJpNzVjdE8xTjY4REFBQWdBRWxFUVZUM0JWZHFCT2JPMlp4RjVHRWp6bk9SRnl0L2I4K0pkL3B5anNpUzIwZXg2N3k2NFI2UFlLVzRvR3VaY2dTMGtuWG5TUlRZVzYxNTlWNzgrc2h1OGMwMmZFNDhFWlJORWx5cWZDYno0VUxvdkVad3BjS0daazdDT0ltWVR6WGl1bGQveW45MnQyNWlFN0VtLzFqOWMrSnJsTG8yOUw1Tmw1aUhQZDFpVHBsZTMrUnFJamxqQ09PcmxPdXgwczJPVkwrblhLMldmcWQ0L1B0NkhITGRuOE5mMTJ5VWdBVDJqWGJNaHFybFRVSTFvbWpyNW5sMXpIMlpwQ3dzcVhQTHR2THNQU240OFozaWdZOW9Ga3VweFpYblB6a25ENjh2SG1obTk0eGMxSG9SVThyWDgrbE10V3Q4ZG5wTWNuLzNQazV3OWNFSDZ0dHlNM1N1ODF4d3ROaHc0YWdwUWN3NHBsMmIzaHJHL2J0cU00amM1MjIyNE5vSjY4WWNWMUU1VlVzSkVLV0x2UnlCZlNsQmc3WjZNUjNtV2xLZVA3aUhPV2NFYkduTWlOWUN1eGRuZ3MwWmdtd1JRTzRRYVcvdnBrTXdhbEdtQlBhMHdONkNjU3dQWW5jZ25QSitxRTE3ZTA0OEVYdU95RkxMa1B1OFRWZXVLWFhWa2x1ZkhKY2tKUnZZSjAxZzUvbTVWa0dnMlZTLzZMMzRkVG90dnRtR3JEMFJOUGQ1cWJrT3dSdTNMWStiNGI0Um4rZ3ZTMWl2dHpSSUc3ZlJNM0RoK3BJMXF3VDJtbEZrNXAxd3I0My9GYXVOMTA4bGZlN3BSbjBkYnVtY01xc2pwN3VPbm9BRTlxUHY0dGtOOUNhaFVsRjBkb1VtTXZEcW1DT3dueUc0bWJsMnBJS3RYeFFVa3pvZVRMQWhmSGYvWlFLWUorRE90VnIyUHJKWW5PSGJPOWNhMlhzNWxvNGxiNE1CZHdZc0FyRzZPMFRDWHlBdWVvajBQcFZhQzc2TUI0N0o0Uzl5S25HYyszcVZRWWFHK2ZIZXdQM1FFenFMOXUrZUFiWWttbnhPTWFsZ3g2MDNNNmpQNVVLUVM3aFBKZWFTbCtSVVBNUUdJUHA4S3JXeUJKa3F3OXVjS0JFMHB2SlBuYmJCVW91NTdoMlpyTGlzdGNEdWJUQXNZWW1WMjl3OXZwdHkyN2ExNnlTd3J5K3dzM21GQlJ3bjltb0M0UFZqYUkvUGlTZXdsNjZKV2oxUDNzbTdsaUx1VkowOVliY2tJUFpKRTloYmJuem92WGpxMFRuM20yMlkyNkVFOWplRklOTzFBWWxwUTQ1eDB3UE03RDRGMzRlbGM1ZG5PZjNpOEMzMDVZeU12Vy9USlRZNlBkMWlUcG5lMk1yUlJES3dmZlg3T3JYSjB2cjlSWHdKeXVORTNGVGltL3FuY2lxZTRmbUFiRXJka1dVV3JjdE9BZ0VKN0NlaGwrZTEwWHNKdEo1QWEycnIxVEhuWmVLSm9Yd0FjcFN1WmZxQklQNmVLWklwUXFsM1ZOcjdFSnBUNzFUZU5iNTR2VVZNNlZqeS9KZVcrbVJyMmJma2xSSVYyWlRnaE1JckdoZDZWek1qR010VTRzVEJwYm9GeUljYmxVbEFMWUp0UGo0amlGS3N5TStGalNZQ2R1WnUxRXpsNVcwR2xTeTJjL0hnam9DZ1BWaG5UeVVFSTA0TjVDVFBncjNtZWNzcHQ3L0djNjlUSW1pTXkvWHlybmxPV3dyczNxSjlhZlplUCszMTNlUzFhNHUvUzJCZlQyQkhXTWRGQVVJTXAzUG1wajArSjk0YVpta2hPOFk4dFZuTlBiVkIwM1A3MkRNV0lKOWNhOFdUSkxDWG5pcE45WWZlaTZlbDArS2JyYy9WRTBGem41WGM2eERXZjhITTNqSnpyVTE1M25xN3htZ2l0eDM5ZGQ2cHlKSlRwTjYzNlJ5eE85WXVUN2VZVTZZM3RuSTBrWnorU0wwbjVud3pwTXArWWlMbUdnWnRHRFpob09nbGp6LzNsNTZzOWNyVTd5ZUlnQVQyRTlUWmxVMzFKcUZTVWJTeUdzbmJ2RHJtdkV4U0h6cHpMY0ZqbFcreDhQY1dPcmpod0hjMngvVktrbWVoVUJMY3RDL1hXOFNVakNYdkE2dzBhR0lKbTV4cnZmcTFjTjh6VlkvVXM3Q0VGVGQxd04vakhidi93Tm9KTWJVbVBUa0VVcTIxWVBTc3lYTS94a3ZxN2kxaW54SXNoWEx5OUFUMm5Ea3NwNXpVTlY1TUI5enIvRTVGSVNscnhOcm50S1hBN28yZG1ybXVBbFAwbHIyK20xb3l5TW1MRFQ5T0MrWDQrbzdsOS8xbTlyeUplWXhBYm5NMzJML1VDUndJRDF0TzNqdTZSZDBSZWdpWXphWm43WHcvVlk4OVBpYzV2SmVJdTVIcVIwOVlYVW80R2RmSjIzeklOUjVwc2M0dUhmZGV2NWFzZGZ1eXZmVUcxN0dPdWswREFaVzg5RjQ4YmErM0hFczUvVms2N3NiWGZ5UzRnU0YyMHQvUHpXeHd2emMybGpCb0dWZmYrOFlxTVdMeW50YzVZbmNNdTZkYnpDblRHMXN0dmllODk4VGNVNjh4YnFsVFh5V0JnVDMrUzMwdk4zd01sZFdXQ1VoZzMzTHZiS051M2lSVXMxQnMzYktVMVM1bDVienNVenV4QlBlN1RPZHo4dU9OSys2OUJITUZ1dFF4enBKRnhyQjVuai92R3JITlc4U1VqQ1hQZXZpdnU0QzFWMXFnejNLSGdMZnhVWEtVTGJkTXJ2TVl6MW0wZWZYQVB6c2lGRDc3YTRSMk5oMXUzUGxuLzZCWDBNVHZLWEU0eDkxU1JaRmZ2U1VsOUpZc1lqMkJQVmRNcUcwSDkza3VsM0xtMGFueVV3dmkyZzNBbGdLNzkvNVkybHJUNjdNOXY1dTh0clg4M1p2N1dwWlZrMWZ1Kzd3bTcxYjNMTTBRcTBJQ1hmUHgvWlZXbFE3NTdQRTU4WHpZOW9odzczYTdic1AyQTQyWlRXWG5uUVFvZWEvTnFhNW5MWnpyOHE2bEtKcmJIdTg1S2xucjltVjYzd3RjVjdNdWo3Vko3OFhUa3ZINm9HU085L0xLSFd1eDZ6Z2g5S2h1dzVuQWtKd1ViWms4WTR5YThWMVRQMitNM2kxczVucDVlOC9yRXQ5Tm5yWXlwMHh2YkxXWXc3MzNSQzU3cjIvR3Y3Y3lJdlA0MTM2YmxMWkgxeDhwQVFuc1I5cXhEWnZsVFVKcnZVaFRUVUxRSXhobkxIbUxIaXh3bjkrNWE3bHFKSU5hWWNuckJ1OGxtTHNEN0MwT1NuMmxVKzlVc0xEYVk2aGVQVXZHMGc5M2ZzQlpKTVNFM0dlRUk4UnozSTU0L1pmNjNmczRiUGtoTkt5SHgzZ0pTKzR4QjRSMmpxTGV1M3N1c1NvdFNWalpzTEQ4aTVLYnpDeDFiSERKaFZKSzZDMDVwZUFKN0d2MG14ZkVxK2JZcnljZzFSN0JiQ1d3MCthbm1kbk5JK01OcTJOT0FNMEp2Rmc0bEU5MStkN2ZUWFBhWG5xdk4vZVY1dGY2ZW04ZDBycThtdnpXWXNqOGZ0UHV1WnZqQjNqWXZqMC9KNTR2NFdFN2NhbURZTmJDcFU1c2ZCQWdrelZ2TEsyeDJVdlpuaEZGcnVITFNSSFlXNTYwMVh0eGV2UzMrbVlqZHkrdm12bDc2aDRzY1c5clpuL1E2R1FEWmFUVzI3VkdYVFh0OWVhcVhFTW03NzAzUit5T3RjdlRWdWFVNlkydEZnSjdpdjJTWXlERnJXUU85UGpuNmk4MTQxYjNuQUFDRXRoUFFDZlBiS0kzQ1pXSW9qT3JNbm03dHhEa0pzOFhzcmVRSitJNmxsZXRFMGZaV2Z6SGpyVG52Z1E5SDhlbDF0eGU4TlFhd1I1MjNpS21aQ3g1NDNLcDNmUGNNZUF0L0Q1alpsL0l6YXpnT2dLOW5UMXhmUW5qZ21JbkwwVm8vNVZnc1ZnaXRMOHYrTkVqc0hCTzhzUVZMSGtRSlBpN2RUcG5ZaE9oNUxoaVNqQXVXVFRPYlo4WDA2SFVtanNWUExWR3NPL2IxMHBnOXo1RWNrV2N1ZHhqOSsvOTNiUVVsNmw4dmZmTG1uV1pLdXNZQkhaT0Y3MDhBWktOWlFLUTVianBRZmdoaGdmeE4rYW1QVDhuNXpDelY1clpSUXNnNE1hSURleDNOeFROK3VJOXE5QTFObnVwaXpjMzUvcFlQaWtDZXk2UG5HSG1zZGQ3Y1pwaTdqZGJ6dmdtOWd1dXlXSnV0SmczQ0RMSitqY25FWnZwbDd2dlliNW41eVJ2dmQxeUhIcjE5Tjc1dVNLcGw4OGNzVHZXQnU4YmRrNlozdk5iTWs1ajlmZmVFNTgwczV3QXMxNGZqMytuYmJpbmlhVmNiaDUvNG1laEhTbUpRQlVCQ2V4VjJFN1VUZDRrdEtaZ053V2VBS0ZZMitBVExwYThZS0Zlc0pSRGRYakpTOUFMcUVuZ2o1ZG1OaVRGWTA3QVAyOFJVektXVW00bmFHYnVTellUU2ZGbG52L1E0Z3diM1ZEQ3VGR1JkbTR6dTMvbit1WFdCUmx5L0p2bjlyTVo5M2krQURPeVdPU1NWZ0w3a2k1dXhnMzNYQnVWK2lQblpCRW5qS1pTVFhEVFBwOVdBcnNudnBUTXdVc01vbU40TnkzQlpTcFA3LzJ5VmoxaTVSeUR3SjdUQmpaVHI5TUpwQTgzcys5Mm9MUEpkczBRZUc5Ty8rejlPZmtSTTJOdVBVc2hoTDhOUVdLZjNkQ2ZmZXBFNkpLV2lWTk5UODN6dVQ1eXZUbCtpVFdSTnhmVmxPbUpaaTFGYjQrWjNvdlREMm9KRjY4L2M5YVBhRGk0NnZqMThNM2pUUjk4TnoxczVxYWM5ODI5NUluUmNmdGFqVlB2ZVYzaWU5TFRWdWFVNlkydGtuRWFHMU9wdGIwM0RwZjhQWmVieC8vUVJucExNbExlS3hDUXdMNEM1SjBYNFUxQ05RdkZsa2c4UDJBNVIveTlsMnZMK3Bia1ZmSVM5UHdubDFpZHA4VDZONGNQNGh6aGM5eFdqM1BKV0VyNVc4Mzk4Q3JwaTlKcnZRMkEwdnhhWFYvQ3VGV1pmVDRYQ1VHNGNPK1RreDdkQ2V4M3lmZ1k4QmJaT1dVdGNVM09CMUpmYml2QnVFVTdVakVkU3F6T1BiSCt4OHdNa2IwbXRlTGx2VDl5Qk1XYSt1ZmU0ODJadWZtMHZxN2szZFM2N0ZoK1cyWFYxL2ZRWXltbkh6eUdKVzNnWk4zZHpRdzNVS25FaWFXcm05bUhjaW9ZdWNhcjk0eXNaOTFhOHB5d0tmRXNNenRqUlltY3ppTEE1UU1hK0dsdklXcFhOR0h5bGhaMThkWUhTNnlKdlBGWVUrWWFvbG5mQ1hvdjFvM2drdWZkNjgrUzlTTmFEdGJzdU1aazNSVkx6Qk9jR3NLeXV6WjV6MU1KZzlvNjlQZTFxb3Yzdk9hS3RpWHQ4YlNWT1dWNlk2dEZIM2x1TFV0WXRMdzJsOXVTL0Z1MlIzbnRsSUFFOXAxMjNJclY5aWFobW9WaXkrb3ptZUkvUFpaeWR0TzlsMnZMK3Bia1ZmSVM5UHduNTdxSjhkek5sTHFJR0xiWDQxd3lsbHA4ZUpYMFJlbTFFdGluaVdIZENCc3MycjNFYVFrK0dsN3JYT2d0c3IxeWx2cTk1QU9wbFdEY29pM2VjNW83QjZUY3plVE9SN0gydE9MbHRiVkVVR3pCZnB5SFY3OGx5c3pKcytUZGxKTmZpMnUrejh5ZVhtRUZQQ3c3NW1LcmhaczRqdnR6ckhyTHlSdHZwYzhENjVJN2RrZTYyU3hOdVkwcE9iRTB4YytyOTZHWWx6NG4zeE5pUXVSdVFrKzFDeGMreEVCaDdWdVR0clMyOHRaUm5NeDh5Y3oxUWNtNk01ZW5OeDVyeWx4RE5PdmI1OVcvZEI3STVaWjduVmUvM0h4YVgxZnl2SHY5V2JKKzdOdnhnMmIyQWpQN3prVEQ1cDRhOHRiYkpRem04dmNZNXA3cThNWlRybWhiMGg1UFc1bFRwc2VsUlI5SllDL3BiVjE3NGdoSVlEOXhYVjdjWU84bFVMTlFMSzVFNUFaUFZPYTJIQjlzM3N1MVZYMUw4eWw5Q1hyK2s2OFhGbCtwZWx3c0NKcFRSNVZyZzV2bUx0cEx4dEtXUGdLbmVIb2ZocVZqb2RYMUpZeGJsVG5PaCtmMlJrRU04M3l6NTdnUjhSYjhTN1hEeTdma0E2bVZZT3pWS2VkM2I1TXRaMTZpandtR2g3ZzJsV3FEbS9aNXRlTGx6ZjBTRXFiN0wyY001SXkxclYwVEd3K0hIZ2RyY1ZyaWVXQXV3Skw5SVU0ajVyZ3Y4T3E5RnI5eE9UWFB5ZW1DbFNrQlRZbGpVcHR3RzNPbml2aEJXMXBiZWV1b0hCSEtXeDhzc1NieXhtTk5tV3VJWnJscjlVUFBoeDdmMm1kbTduMGx6N3ZYbnlYcngyRzljOXhOemRuUTlKNm5FZ1p6ZWJkaTZJMm5uSG1tdEMyZXRqS25USTlMaXo2U3dGN2E0N3IrUkJHUXdINml1cnVxc2Q1TG9HYWhXRldSaVp1K296dGEvSG96TzI4aXc1eUFUTjdMdFZWOVMvTXBmUWw2dnFnNVFud2J4K1ZHNm9PbXhNM01WRnM5emlWamFVc2ZnVk50OVQ0TVM4ZENxK3RMR0xjcU01WVBQdFk1RXAreWJNeHhTZUl0K0pkdVJ5ei9rZytrVm9KeHE3YW1ZZ2prdUdCS3pjMDVmZXExb3hVdmIwNlNrRERkRTZYdkpxOC90L0s3QkhhejF5VGNsTlErRDJ5a3NuNjRYYUtqNTFoV2VzL3hvY2JYbk9lRVlJSnNVT0t5aTAzUG12UTVNMk11SjVBcy90TnowcGJXVmlsLzhEbnZJZHJyclErV1dCTjU0N0dtekRWRXMzNThlUFd2blFkeXhsL09OVjc5Y3ZKWTRwcVM1OTNyejVMMTQ3Z3RPV3ZyMmcxTjcza3FZVEMzRHp4LzhMbDE4Y2JUSExFNzFrWlBXNWxUcGplMmNybWsra2NDKzl6UnEvdVBtb0FFOXFQdTNpYU44MTRDTlF2RkpoVXpNOFR6cHlZeXk0MW03cjFjY1ZHQnorKzEwejkyTGpKZVoyYi9WbEJ3eW44eVBrNHYyMzNrWW9rK2xiNDVCTnE2NU1TUExZSmJlWnhMeHRLV1BnS25XSG9DKzBPN1FIQnZMZWpYVnBlKzA4emUzU3F6bWZudy9ybGZONzd2N2VUek05MUg4dThrcnZFVy9POEp2bW1YaUdpZnF2b1h6ZXpWblVzYzRrQjRxWlZnN0pXVCs3c1gwOEY3Vm05bVpzK01GRVpRYWo0QTUvUkhLMTdlbkxSMUlXRlA3NmJjc1hmSTZ5U3dMeU93MDZjWVF1Qys1SUtKRHViM0c1alpGd29IZ2ZjYzcvazVRVnkvc1puZEp5Tm9iQXpiTDNiVzhJL01GTm0zdExacVVSZHZmZUM5eXdxSDRsY3Y5OFpqVFpscmlHWjlXNzM2NjcwNFBTcEt2dG04L3B3anNPZHVhRjdGelA2OGNJQjd6MU1MOFRhM1NxM3E0bzMzT1dKM3JDMmV0aktuVEc5c3RlaWoxTnlNWnNGM0hVRzQxMDV2VEdnY3c3b3N5WC90TnF1OERSS1F3TDdCVHRsWWxieEpxR2FoMktLSlp3dStGMU8rS25QY1MxQ1hId2h1VWRnTm4wcUhYa3lXOFBJV0NxbkFncGNPZ3VEcEp3cWNFOXcwZDlGZU1wYThsL3VWdytaRUNidVcxK0pyOXhHSkRPY3NubHJXODlCNTRTdnlsWjNmMlFza0t1SzVlZm8yTTN1RG1aMC9ra2VMeGVUU25Gb0p4cTNxNmJuZlNzMEgzeGcyUGhIWnA5S2M0S1o5ZnExNGVmT2xOL1phOFk3bGMwenZwcVZadGNoZkF2dHlBanY5dzN2dmVjNnBwVHVZR2U1UlN0SkplRTZZa3drK3llWTl4aVdwazE5amRpWEJEWjlvWnJlTndHOWhhRkhTcjZsNS90Tm1kcmtNZ3dGUGhDdFpkK2JXM1h1djFKUzVobWlXdTFiWGV6RjNKTVN2OC9wempzQk9xZWNPRzVvWFNsVDFSY0VkVlk0UlNKK050OTdPaVhzMm45NHBPWGpQZHE0eGgvZThMdkc5NW1rcmM4cjB4bGFMYjZMVWV5TDNkRkdyY1ZDVHo1TDhhK3FqZTQ2TWdBVDJJK3ZRQlpyalRVSTFDOFVXMWNTcTliY1NHZkVoUUFDa2wyWVU1cjJrOFZlSC8zSXNVcmVlUFAvSnFVMkhCNW9aUjNLblVtNWd3eFFmYnhGVE1wWlNSNGVwQXhheXp6MWdaM25QemQyQ1Jka0JxN2lab2prZHd2aUtKVTV4OEN4L1BuS0J0NWpNRFhSMFNDQ3RCT09XYlVqRmRDQUE3WlhNREd1UmNXS2pBOWRkNTV6NGJXNXcwejdMVnJ6NENIMlRtZUhTWmlwNVk2OGw3Nm04anVuZHREU3JGdmxMWUY5V1lNZXk4Z2xtZHV0RVozMjAyM1M5UWljaS8wMUJoNTYwNXdUM01WaTFFOHZpUEptY3NLNWx6dVlVV3lwNXArOXkzQzVtVmlsNW1mZGV6eFVndmJIeElETzdWNHNLRC9Kb3VkYnRzL1Y0dEJETityTDBYbXc4SUNheTgvb3pkM3luYW5yVGNKSXdwZlhjTWdSV3ptMnhWKy9jaytPNTVhV3U4NTZ6WE9NNEw1OGw1anp2RzNIckFydjNuc2dKUU4xaUROVG1zU1QvMmpycHZpTWlJSUg5aURwem9hWjRrMUNKS05xcWl1Y3pNMFR2bU1VcTVmeXhtVjAvMHoyRDU3dDh6UjM1Rm94Uy9wTmpnVXEvMWN4WW9GOWtvZ0p6ZzV2MldYcUxtSkt4OU5PT2xkc1NIMDBsZllObDFhczYxeVJZODA0bEFrQVNnRXpwRkpjQVdFVEZrdmVoQVdNMmp0aFVtVXE1bG02SDdJdFdnbkhMTm5qellpeFFhZXJabkJ2Y3RHOWZLMTZwZVkreTF2eFluT283cncvMjltNXFPVDZYeUVzQys3SUNPMzEyMFhCU2ptY3Zsb2dYYy90TytQelh6RTQrcWM4SkFWRjU3ejBzVTJqUGlhUGp2WS9YV2x0NWxySzVoaStld0o0cndtVU94YTllZGkwenczbzJsa3JXdW4wZW5yRFpVbURYZTdHa3QrdXU5ZnJUVy9mbWxJckJGWEdPcnB1NEdBT1VxM2FibmgvTXliRGIxRU0zZXBxWjNUeHlQZTVCMWpwQjdEMW51WVpNTGI5Tk16SGFrcWVjdmJIVllxNUk2UXd3OEZ4NzVuSmE2anBQMjVxendiRlVuWlh2amdoSVlOOVJaeDJvcXQ0a1ZMTlFuTk1VTEtDZUhxeDNZdmx3SEJiclMveDU1cVJqRU9pRzdmVDhKMCs1YUxpYW1iMHNMSjdHekhLQ28rWndicm1JU2RXWHV1UWVEY3lwZDgwMUtTdmVMZFN2cGsxTDNlT05pNXdQamRUcGk3V1B0ZGR3YWlVWTE1U2R1aWNWMDJIS1Rjd1p3bVlKMWl2ajFQTFlhQ3RlcWZwUy8wT1BuV043TjdVZW42M3prOEMrdk1CT24zbldiNnpoTUpCNFFXWUhuL1RuQkNHTmVDYjRXaytsSEdNSjNDNGl3TVFDcTdZUVozSzYxYXRIcnBHQ0o3QS9JN2pjeVEwQ20xTjNUM3lxK1c1YVF6VHIyNmIzWWs0dno3dkc2OCtjZFc5T0RiejFOWG5na290VHBMbnh2cndUeERYak82Y3Q0MnRTOVNoWnUzbU1PT0hDeG1MTGxQcG1vWnc1QXE4M3Rsck00WHMzSXZPMHJUbjhXNDRUNWJWVEFoTFlkOXB4SzFiYm00VFdlcEhTWk1icjNidUYvME9jOWovYnpGamc1bG8va1ozM3NsdmlpTmhTM1FnblBqN3VHQ2xnN0NZbWRYMkpxeDJ2UGQ0aXBtUXNlUUwyb2EyV1BZdTZRMXZHZW4yMTV1L2V1TWo1MFBBK2FOZXl1cXZsMWtvd3JpMC9kdC9GUW55S3MweGNNT1VtSm5WOXlha2lyeDB0ZVhsemY2NlE0OVc1OW5ldmZudDZOOVV5V09zK0NlenJDT3c1TVhSd1pVSVF2azlrZHY1SmYwNXkxOGZlMFgzUGNueXR0WlYzU2pGMzN2UFdZaTNFcHZFUTlkemVsYXgxKzd6WEVNMkc3ZkNlSjcwWE15ZW15R1ZlZithc2UzTnF3THpBNWh0QkoyT3AxQ2pOc3h4Znc4REoyd1FxK2NieXZpZGJuM0x4Nms0L3pSRjR2YkhWWXM3em1QMXBGeHZyR21iMm1aeEJlb0JyUEcxckR2OERORWRGYm8yQUJQYXQ5Y2oyNnVOTlFqVUx4WnBXNW40ODFQanZwRDdlZ2lFM1lHcE4yNWE0SitVL2Vienc0SVBxMVoyYmphbGdPQzJDbS9idDg0VFVrckdVczBCcDRUZCtUdCtrZ3NDUWI0dGdqM1BxdDVWN3ZkTUlPVzR3dkNCM0xjZnhFdHhhQ3NZdDYrZkZkQmh2WFB4YzJOeWJxa1BMOGQ2U2x6ZitXdm1OcisyWFkzczMxWEpZNHo0SjdPc0k3UFRsMVVPTW5GU3d6Z2VZMlgzQ1NSS3YvL1djbkdKMTdybUU4TlpaM21rQSttSHB0WlgzM2lrUitUMnhDYXYrUzVuWmg3MEJsdm43TndjWGxaZE1YTy8xd2RTdFhqdGFpR2JEY3ZWZXpPend5c3U4L213bHNGTzljM1J4TFY0WjNIUEZxdnZXOEIzOHFZejJlT0xxUDNWdVhDOXZadS9JeUt2MmtwUXhCM21XaVB6ZUtaZldzWGk4VStiVWY0N0E2NDJ0Rm5NRmNVQ2VIOXdMVGZWaEtrNVRiWiszdk0vVHR1YndiMWxQNWJWVEFoTFlkOXB4SzFiYm00UnFGb3FsMWNjdERFZTBmdFc1RVd0clJKdy9LQzBnK0hPUEJlWWp1OXdBVVJWRkwzS0xaN1V6dFA3aFJjS0xjaXExL0pCcUtiQlRWKytZZWFrRlhPdU84S3lxWDJSbU44bU1FOUM2Ymx2S3o3TlV5L0cxNm8zM1VndWR0Zm0wRkl4YjF6MDFqb2RXS3FsRmZXdVJ1aVV2QXB3eTk1ODNBZTRPVHN5SDFzeUgrWGtmczN0N055M0phbTdlRXRqWEU5aHpBcDdpVmdvcmRqWkl2YVRuNUJSQzNyb2o1elRYelVKd3hCanpwZGRXbHc1R0g2ZVBWS0JFUFBOOFJwZTRrdkRHSUw5N2RlZWFtdSttTlVTellmdjBYc3pwN2ZwcnZQNXNLYkJUeTV5QXA3aGNlWERHaGlhYmNFODFNK2FKV0hxMG1kMGxJNjlhZ2luM2hlUlo0Z1A4VEVHUXgrM0pWQ3JaME10cGp6ZS9rc2NjZ2RjYld5MEVkdXJvblhKWmVnemtzSTVkNDJsYmMvalBxWmZ1UFJJQ0V0aVBwQ01YYklZM0NkVXNGRXVxK3kxQjJMaHh4azIvRzl5aWxMaUc2YlBOV1RDVVdGTmxWSGZ4UzFJTEVJSks4cEwvU2hjYzYwbGRnSnRiVDlTbTlhS2l0Y0R1V1REVWZzaTA2aGpQU29FZGZxeUVYdHVxd0FiNW5ER01pWDl1a0ZkT0ZqbldjcmxIa2IwRmQ0M3JxSncydExpbXBXRGNvajdEUEZMamVCalFLdlY4NS9aaGJ0MWI4dkpjYWxHbnZ3bEMzOS9uVnJEaGRjZjRibXFJcDJsV0V0alhFOWpwdUp5QXA4VFNJZkRtRjV5ZTFuTnlDaUJ2bmZWN25iWDJUemtzdmJVTHQrUHYvUkZObjc1VE1xTWY4UWw5MjBUZXBhZWhQSi9ST1pzT09VM05xWHZ0dW5RdDBheHZwOTZMT1QxZWY0M1huNjBGOXB6VExWaWVzNkg1NXhuTjhrVGlrcnd5aWp2VkpkOFpMUEl2RUxreEo5YkU4Rlp2RTQ1cmMxMVNlVzN4K3IyL2Y0N0E2NVhSeW4yTHQ1bFk2MUhBWTlqaWQwL2Jtc08vUmYyVXg4NEpTR0RmZVFldVVIMXZFbHBLWUdkc0lqNFNnSWlJOWw1NmFSQ01QK3RkbVBqZFd6Q1VXRlBOcUVhelcxTUNkTzhtQmlFMVpyM1oyaTJPOStGWE9wWnlQcWhaNUYzVHpON1NqR3ArUmpuMVExem5HWnN6YnZOcjVGOUpIOTIvODN2N3M5Mm15d2Y5eTJkZndURnFqcTRpN01mUzlUS0QzWG1MdlRrblhHWTMxTW1ncFdEY3VxN2VoM1l2VHNST2xDeHhWTFExTDIvc3dIVE9CdTdjUGptMmQ5TmNIa3ZkTDRGOVhZR2RmdlJPb25GTjdna1NQU2Urd0o2enptTE9mMVRuUC9mT2lRZHRxYldWNXpxb3hucWVEUnFNU21LcDFRbXJuUFVNZGNqcGczRmRQZEdzbFZYcXNGeTlGNWQ2MDVoNS9kbGFZS2NsM2pjWTErU2VyTTF4TzhQcDB4czIvcjdKbVp0cUxLZTlUYmhXTVlSeVRoTFFEM01FWHM5d3FaVmJyQngzV0U4MnM5c1h4c1JiN3FuN2VzNmV0aldIL3hyMVZ4a2JKeUNCZmVNZHRJSHFlWk5RelVJeDFhelRtUm1MMU44d3N4L09iSCtybDNqT2d1Rjl3WGZvaHpMclZuSVpQczJ1YjJiUDY0SzVmckhreHNpMW5oOUxoRXVzMUY4VnJJYUcyYlFNYnRybjZ5M3Vhc1lTZnY1ZTBVVjRqeDBscHV3bCs4enJKdTlqa2Z1WEZPNitwOXVrNGcrTDVwelU5eEhIOXdtS2hPWHhsM0p1ckxpR3hSa2Z2VmROM0Z0aWlaSnJvYlBVaGd2TU9HbkRRanpIaitXdzJhMEY0NHJ1U042U2l1bkFoejN6RnVPWWo2bHhhdlZoc2lRdit1N3BvZjlTSUJBREg3YmdzZWRZMmNmMmJtbzlQbHZsSjRGOWZZRTlKK0JwcmlYYzNwNFQxaTJjdUdTOTFTcDVZbkt1SldiTzZZTFdheXZjZEhGaTRZSUpHTGMwczZjVndycHdaN0NESDJWT3hNWlN6ZnB6bUJmcm1SY0czOU5lOVdySzhnVFpKUVIydlJmVFBUbm5tODNyenlVRTlweUFwN1E0OXhuRERjdHZPWU85OWZjTmEwemlUTVJpZCtTK0s4YlY5bUlPTUVmZnlNeWU2ejNjaWQvUDE4MFA2Qlc0TS9QU1hJRTM5VTB4UEhucTFjUDdQV2NNTExsdXZtSTQzZlkycjZLajN6MXRheTcvd3VybzhtTWpJSUg5MkhxMGZYdThTYWhtb1RoVlN3SnRzdkRIVXVtN0M1clJ3bko5V0Z6T3l3S3JZM3huWXdYZUl2RWNYdG5NbmhBQ0xWMDM0emgwYnJrcGl5N0VVNnlCT0k0N1Rrc0VoVnhDWU04OWt2dCtNNFBydTNQQkphNDdjK2VUbjJDT0hMWCt1Sk5manVoTEZ2Y04vdXhxM0J0TlZZRnk4WitQVzZOZk1iT0haTFo3M0VlZkMwSG1DTmphWXRPbnJ3WWZ1czhNVWVaVFZTdTFSTW5aMEdnNUZ2cTZYOFRNc05SZ0hpTmdHb3Y4a3JSMWdUMWxxY0ltSFFJN0gxcHdHS2ZTNC93NTNKYmc1YzFQZmIxYVBhdjl2RStBTGNSOUx4M2J1OGxyN3lGK2w4Qyt2c0JPUC9NeGkyRkJLdUJwcmlYY25wNlR1M1h2RFVRWFlnenhycDJiUEVHVVU1aFg2RTdONVlnUnVXSWM3Z2JZV0o1NzR1M2NZUXhjSWdFaDExM1FPQXZQMklUcjUxamtJN1N5anVZYkppZlZmRGQ1Z3V3U0FqdHQwWHZ4dEQzYTRwdk42ODhsQkhaYXduUEdjM1NoeEVCbGpZemhpL2RNNTJ5T1VneW5ZWmpqNWhyclhDZUk2NmtUcjdXdXExaTd2OXJoTW1kRDhaeWg3aGlGNWFTNUFxOW5rYzg2RnJlYWMxUE9wall4c0hENXhicTkxV1l5MytINGdPZGJ2SWFWcDIzVjVEbVhwZTQvSWdJUzJJK29NeGRxaWpjSmxTNFVzVkRucGN5a2pLWDZ0Y3dNNjBnV3FLWHBkMElRbGJrdjdXRzV1VllvK09KbGw1OUY3WnowdloxN2pJZUdGd1Q1dEY0a3AzeHBzcE9PcFMyYkJlTlUycTg1REx5RmVtMlp1VllCZkZ6ZUxnVEJ4ZmQ4YVdMc3dvb1BLVDdHY29YVTNHUERMK2lFV1FKK3p0bTRvWTVzSk9BYnRkK29LdUVhNnlNV1NNL3BMTUIrTTdqYnFkMElRQUNBNGVQTmpHUU84TGtBQUNBQVNVUkJWQVZTS3RVRWI4d0puRWVaakFVV2ZBUkVuclBnUXh5OVR3aW9STDYxSDBWTENNYWw0OXU3UHVYakhnWjM3OFlkd2FLR2laTStsKzJlTzA0aXRFeEw4R0k5eExPQ3l4c3Y4YXplTVd5SWV0ZE8vYzVITHM4U0d4TzV6K2V4dlp0cXVDMTlqd1Qyd3dqc25qQk12L01PNG5uaDJVdWxQVDBudlhzY3hIVUNBckxwWEx1ZVpmN2kzWXBieGRoR1JhbmhSSzZBeHJ2NjV1RTBZZW43dEJjcjJVREJ0M0lzelJIQXlSTWhCcU9TVkdKZGo3RHlGd1VURGNZQ1dPbHljaUEzNWM3NXcvdzhRYmIxdDBOZnR0NkxwKzdWVnQ5c1huL1dyaVZ6eGlBYlFRUXBUU1crY3pEU3dkbzVsWEpPRVhNLzM1dkUrdnB3VGdWSDE3QkJocnNxQk5YVUp1eWMwK3llSzhTK1Ntd284aDRxYVFmZnFNU0FTbTBlanJITUZYaTlrMHkxbHY1VDNaZnI5b2J2dm52TU5OWmlMR0MwdzZaTi93MVp3OHJUdG1yeXJCamF1dVZZQ1VoZ1A5YWViZGN1YnhKcVYxSitUb2g3N0ZJL0xnUmt6TDh6NzhvZkNXNGV6cEp4T1I5N3Z4d3NvM00vTE5oTXVIWVFwTVp1Y0ZvdmtsT0xCajVZOFAzTnNkeGg0dDlaTkwwam8vMGxseXdsc0ZNSDc5amdzSjc0MjhTYTRzV2R1UFhsakFid3djNkNpaDMvODRUclN4YS85QUhpWTQ0Vk9XTWJxM1BHZG9tYkVUNU0yZkQ1aGU3ZXM0L2FWUEl4NS9VUldTTjBzTWhFNUh4TnNIS0pCYUNqN2RTSFRRYjZDQUdBQlZKT3FyVkV5VGxtM3BmLzFzQU00U0YzMHdVeGlCTW5DQ0pzRGc1VHliZ1kzcmVFWUp6RHVPU2FWRXdITENJWk8rUEVPT1lqTFhkdXpLM1BVcnh5M0JiMWRlUTU0Q01VbHpGc0pIaHRaUE1MQzMvbUFwN1ZQcFU4bjhmMGJzcnQ2eld2azhCK0dJR2RQczV4U1pMcmYzc3Z6OG5ZL3p6aU9pZUJjSkZZRWxCNWFNMlhlbDV5WFQ4TTh5aGgrU1l6d3lvLzUzM0syZ0RYTGI4K01EQnBYZmRoZmptQlc3bWVOUmdieG9qeHFWTjdLV09CNTRmVGViRzFUc21jMzdmQkUyUmJmenNNMmVtOTJQNmJ6ZXZQMnJWa3p2c3k1MlF0Nnh2V3QxaTdwMUxKOTAyL1pucHc1dnpHTTRiVitzTXpUcmEzRUl4ellnN0FnZzFSNGxUaHFpWmxiTVMzUHV2ZiszV2JBN1JsdUhaRWNFZVlqcVc1QW0rT1d5eStoYW5EMnlPVndCQ0VQOHpycVVUYldPdGp3T1lsMk4yMU95bEFqTGZjVTlHTU1keUd3UngvN3VONXRZYVZwMjNWNU9tMVhiK2ZJQUlTMkU5UVoxYzIxWnVFS3JPdHZnM0xrbHQwUXQyN3FuUHdieXhaTVBTNUlVcXpxR1l4d2pHeTRjY1I0aWN2aDh1RVkzZFlRTVRTRW92a2xQL2txWHEwRG03YWwrR0p0elVmSFgzZU5YM0d2UWpGK0tEL3M1R2x4bjhLUjZueDF6M2VnT0MrMHNWdnlRZEszNmIzQkIvbGlNQUlDNzJJM1F0MUYranFqdis1YTNRZjVLbk5vQkt1WGgrbG5wN1BqRndiY1NSeXVLajBuN3l2WHpIWGIyUEpoZ3Vsc2tobXMrd2xuZmo1dDUyRkJPejdoQlVmNHZMRmc3Q2Vza0lwSFJkOUdVc0p4aVhNdld0emp0a1A4MWdpdU9rYXZFbzJhSWJ6Lzh2Q0NhUlBqRURpYjVObkZOY01VODlEeWZOWk04OXQrZDNramJtMWYvKys0SzVuUEo5eWVvZVB3bU5QM3Z6L0ZETzcxWUlRY2dLZXNnR05BSnJhME5yTGM1SnFML01JOFdVSUF2NVhFNElVNjByZVJmZ0ZaaDJRc3V5a3kycmRxM0J2emZzVUE0WTNtQm51Sm9hSjA2dk1oL2c4emoyNTJzcUhiODc0NnV1S0dNaDZuR2QvT0tlemx1UGtMUUxNMUh5T0MwbU1NVmhQeEZ4WmxNejVmWDA4UVhhSmI0ZGh2K205T0QzeDFYTDMrck4yTFprN1BYdHpQZm53N2NGWTk0eDlTZ1RXdm40ZjZVNEI0K0tWT1FKRHIySGlQY3gzSy9PYk42OXgzOXpUTFgzWnVTNUgrK3VIM3czRE5qREhwZVpsVHVzUUY0dTVKWmJtQ3J3bDYzWEdNSnNGL1R4SC9UR0c0cjJTTzFmVnpBOThmN1BSZ090V1JINitHVWpFSnZuK3NBR0xib0pCWXVwYnNvYVZwMjNWNUpuNzdPbTZFMEJBQXZzSjZPU1pUZlFtb1puWlo5K09aYyt2bXRsalp4eWh6UzRzVE9aWU9WUG1tcWwyc1phcVkwNms3LzcrSllLYjlubDdDN3JjRjNtc3JUVWYxYlY5VzdQNExmWEJWMXUzOFgwbFhMMCthbFduVkQ0RU1NT1BicTUxdzFSZWpBV0VJUHprNXl6UVc3V3JabHhROWg0RWR1cVppdWt3WnJoRWNOTytqS1Y1MVh3czFJNmhrdWVUTXZqUU9KWjNVeTB6M2JjTUFXLytYMXBnejNGSmdudXZxd1FyNlJTRlBUd25KWUx2bkI2ZjR6dVljblBjejh5cFgrcGUzTjF4U3JUV0xkMHc3MXozUWJWdDZZVStUc054dXUrWUJIYVk2TDE0MnBGUis4MTJhSUU5TjhZQ3ZyeXhPUGRPNkNIb2N1b0QxNHRySnQ0SGlNRi8xS2pRWEplanRjWDFjekVDY3NyZFdRdUJ0MlM5SG10UHlmb1VxM2syRG5LQ3VOYnltN3F2aHBXbmJkWGsyYkpOeW12bkJDU3c3N3dEVjZpK053a3RYUVVXMVFRNnZIK2pJRkFsOVQzRUIxcnRZczFyVjhwLzh2QmVUZ2F3YTQxUHpkYkorM2d2ZVpISDZzYWNobTlreHN5U3dtcXRrSG9Ja2IyRXE5ZEhyY2ZFT0w4K0lHdUxqK2xEaU95MTQySnB3YmhWditVZXM2YzhOa21JazdGRVdvTlhUdEM5Rm0wcmVUNzc4bzdwM2RTQ29mSm9ROENiLzVjVzJHbEZUc0RUWEd2c3JUOG5hd2pzTlg3Rlk2TXBKOGhnbTVGNGlpczZUbzFnVkpQcnZpMm43QktYTnpuNTlkZFFYNFMrUDh3SURGb3o1M3VDN0ZMZkRtTUdlaStlbWtndGQ2OC9hOWVTSldNMkorQXBtMFpzYVA1NVJzYk10N2g4d2szVUdvbTVqZE0xV05xM1RLVW5kbkxMSGxyYWU5cEtDNEdYTWZaY003dDZiZ1Vucml1ZHF3NGhzdGV3V29QL0RPeTZkZThFSkxEdnZRZVhyNzgzQ1MxVkE5dzBjQlNZNDBOekxGbm4xbzluQkI5bFdNS21JcGZQTFlmN1dTUVFCR1lKOXpjcC84bkR1cmVLTEQ3RncvdDRMMzJScDVqajI1NkFZWDJnenhiOU04eGp6dUtYWTlFRXRzV2YzTktKajFPc1hmRjdsNVBnOWNKd05DL24rbGJYOEx4aitUSTNhUEJVZmRnd0lxQlRLb0JhaTNiUUJ2d0Q0bkxJcy9ZWmw3ZUdZTnlpamJtQm9BaHFTaHlIRDdRb2RDS1B0WGhobFlYL1RPSUJMSlZxNTcxamVUY3R4Vlg1bGhQdzN0RnJDT3c1QVU5cDJSMUNEQVN2bFZ0K1RwWVcyRnNFVGgvenhjS1RRS3I0SzE0cThTNGxrRjFyNGF5dkw2NG5jQWYzclkwYU1MYWk5WjZqbWpuZkUyUnJoZDRhQkhvdm5rSnR6amViMTU5enZqRksralFuNENsV3lXd2U1UVJnWnI1bEkrN3BneUNVSmZYSnZSWnRBQ09PVCtmZVVIZ2RRVUp4bDFycjVuSmMzSGlqMDlOV2FrVGpxU2JPUFhWU00xZGhTSVp4RFcxWU1tR0lkZTl3Y2lKbmJBN3JzaGIvSmR1dnZEZE1RQUw3aGp0bkkxWHpKcUdXMWNUUE5COXdDS01sQVo1YTFpR1dGenY5ait4OFlkOTRnY0lJTk1KTGpFVk1TMHVkWVZWei9MRXRGZHkwcjhjU0h4MnA3cUROQkpoaG82YlZJb255K1BqajR4N2ZxTFg5eGR4TG9Fd0N3MXhvZ1RIMXZIQ3NldWhMUExjWXVESE84WE83MUFaRlh4YytJaEFac1BwcVliVWVheU5CNEJnSG5HNW9mYkxoaytINVpkNHFYZVQxOVYxTE1NNGRBNm5yY21JNkxCWGM5RkM4Q0U2SzM4eHhVT3E1UE5rQTQzU1I1K00wVmM3ZTMwMXpHZXIrZGdTOGQvUWFBanV0eVFsNFdoclVib3ZQQ2NZYi83TWc4SGR1VC9OT3VuUHdxMXU3UmttVlJSd1lCRGRPQ282RHF1ZldjZXE2TlYxQnR0b29RR1JGcEh6dm9FSGVjMVFqV25tQzdKb0NlOTlVdlJmcnZ3RzgvbHhMWU04SmVFcC9sd1pJWG1yTnpmY3k2L2dhUTViU3VhbVZvUmJmWXhoVWZXeFFBVTliYVNXd1V5Ulc1Vml5MTN4cjFzeFZsTG5VTzRLOCsyQzVmTk94RHFoSmEvS3ZxWi91MlRrQkNldzc3OEFWcXU5TlFxVlY2QU1oc2hqRlVwc0FKMi9yTExjL3VMREFWbHJQMlBXNFNNQW5IZjZkNTRpMmlObC9ZR2EvR1FKOGxGcTgxclRIODhlMlZIRFR2cTVMZkhUa2NNQmkvQ2U3UURpL01FTXc1b1ZPUUo0SEJ0K3ZyVDVhV1lSZ1lVMitsOHBwVE9JYXhIU0NneUlFemhIc2hrVjhXeGNJOXJyQm1pd1dwTEcwMnYzWVI0UmxEbWpGTXFjZStQaTlSN0EwVHdXRzlmSmlNNEFGSzgvdm14dTBZVThDdXhmVFljbmdwbjIvSElJWDZ5V0NiM0VpaEFCV3RSczFCUGRDbU9KVVZLdm5GQzU3ZmpkNXo1dCtYNGVBOTQ1ZVMyRG5XZVBEL2tGT3MzblhjV3FvWkhOMmE4OEo2MGcyTFZsWHpsMER2Q2t3WTYxU3dxUjJkTFdxTzJzWC9EeXZmV0tWOVJmckc4b3VGWi9ZeExoTDJNUVlzL2Flb3hyUnloTmtEeUd3TTI3MFhxeDdlcnorWEV0Z3AvYVhEQVpEcVZQYUJDdSthdmhXTDJreGEyNU9wN0xoZDY2U0d3ZlhMdlg5bFZNZE5pQTRUY01jVWJxWnlHYkFuU0xHV0o2MjBsSmdwNTAxR3g1d3YwMklFWlhEYXVvYTNoRzQzTUdRNUh0ck13bjNFUlNWdFRNYkZuTTlHNnpOZjJiVGRmdmVDRWhnMzF1UHFiNWJJY0RDL0h1NnpRRW02V3VFeGZtM1Q0Z3V2S0RZWWYxd0Z3bjdMZDBDNWJXZFA3VFhoMzliUTFUZkNxK3QxQVBCR0g5MFdJOWYxc3l3YWtPQUg2YSt6MWdjdlN3c2p2NXloUS9XTTVqWjVVTEVkSHdlc2hpZFd0Q3hzT0JZNUorWkdmWENrb09GeHhjV2hzejc0bHVDeUFnL1BrZzVhbjNXOEdkY2ZGOVBOdE9vSy9Wa000MFAwME9QZmRyQzBjbHJkZ0w1dGJwZ1F4ZnYzQTF3ckhGcTA0em45eE5CU0dkRDhIWGhJMlBOallHRnUxYlpGeEpnblB4QW1QK1pSN0RrWS80Zkp6YVVHVHVJSDY4SWdlOCtYbGhXNmVWNk41VVMwL1Vua2NBV254UFdBQVMvdTFLMzlyaE14bnNKRVk1ZzByeGJFZGUvZk1DTzdOY3ZySWZaakQ5UFpFN2svYzhtSXljQThhWFBPL1d6QjZ4M1h6UXU1SzRkMWdQNGFSL1A1NnhuM2hGNFk0ekN1a1pyZ0ZOM25ONkxHeGpJRzY3QytQdnJIQlBmRG9mNi92S3c4YzF3UVRQNzcrR2JuM2w2L0gzR2VvOXZIZHhQY1NyM1F4djQxaG0zaSs5ZHZpOFJ2WEhqT1B4K1kyN20yNUwxS2lmcW1hUG5DdG5EOGpITzRkM0FwaWFHWlZQOXovVnc1QS9mdFh3enZ0ck0zbjdnOTVzM1B2UzdDSnlLZ0FSMkRRZ1JFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVScUNBZ2diMENtbTRSQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFRbnNHZ01pSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaVVFRkFBbnNGTk4waUFpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaExZTlFaRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVvSUtBQlBZS2FMcEZCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkNTd2F3eUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJUUFVQkNld1YwSFNMQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNFaGcxeGdRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUWdRb0NFdGdyb09rV0VSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFWkRBcmpFZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaFVFSkxCWFFOTXRJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlDQlhXTkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkNvSVNHQ3ZnS1piUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUN1OGFBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNGUVFrTUJlQVUyM2lJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFFZG8wQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFYWdnSUlHOUFwcHVFUUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFSjdCb0RJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWxCQlFBSjdCVFRkSWdJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSVMyRFVHUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJLQ0NnQVQyQ21pNlJRUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVFrc0dzTWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpRUFGQVFuc0ZkQjBpd2lJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FoSVlOY1lFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUlFS0FoTFlLNkRwRmhFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSR1F3SzR4SUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSVZCQ1N3VjBEVExTSWdBaUlnQWlJZ0FpSWdBaUp3d2dpY3pzek9iR2IvWkdiLzc0UzFYYzBWQVJFUUFSRVFBUkVRQVJFUWdTZ0JDZXdhSENJZ0FpSWdBaVVFTG1KbWR6Q3orNXZaSjBwdTFMVWlJQUxOQ1NCNDNzVE1mc2pNN3RYOStkZm1KV3dud3pPWTJlWE43UDFtOWtFeis4cUtWYnVpbWQzQ3pPNXVacDlkc2R5dEZYVTVNM3RWRU5kZlkyYlBOck5YSEtBL3RzWkY5UkdCUFJQNHoyYjI4MloyY1RQN1NUUDcwcDRiczNMZFlmZGpadmFmek95M3RmRzRNbjBWSndJaUlBSWJJeUNCZldNZG91cUlnQWlJZ0ptZHhjeitoNWw5eTRqR3A4M3N3Y0Y2Y0cxUUNPdS9ZV1pYRHdVL3dNenVzK0dQaVVlYTJZMUdrTEM2UkNUN3E1WGcvWXlaM1hPaXJPZVkyVjFYcW9PS09VNENyTit1YkdhUE03TUxoU2Ira3BrOWJNUFA1TnllT0g4My83eStFekhPMmMwOS8yNW1mMnBtVDFwWTRFVThRVlMvYjZqODc1clpIVGUya2ZFalhkMSt6Y3grc2R0c2VkZGN5TTc5akRIZVFlUDBoMloyTXpQN3Q0WExYeXA3M3JsZjNGaS9MdFZXNVNzQ1BRRTJhRzhZM2h2bk9TSHZrVmE5L3gvRDV2YWp1dmZ3MmNPNi9KcG05cFpXQlNnZkVSQUJFUkNCL1JHUXdMNi9QbE9OUlVBRWpwL0F0NXZabXpyeHFQL2c2VnY4ZDJaMktUUDc2SW9JeHNKNlgvVC9OYk1ybU5uYlZxeExTVkgvcTdOMC9ZblJEV3ZYT1NaR1BjWE1ibFhTR0YwckFvRUE2N2J2TTdNbm10a1BqNmdnT21QTmp0aDVqT20vZFpiNno0ODBiQW1CbDdudjZXYjJnNk15dDdTUmNWNHplM2xYend1R1RRZE9NVHg2SVF0VU5odWVaMmFJU09PRUJlZnY3M1RRWGNMTVhtSm1iK2plclQ5dFpoL2JhVHRVYlJFb0ljRDg5dVNKOXdpR0NCS0s0eVNuTmlYNnEvOGtiRmljNUZOT0pXTlExNHFBQ0lqQTBSR1F3SDUwWGFvR2lZQUlIQUdCclFqc3ZDUHUxMWtsM2p2Q0ZQY0FXSVJ2MFMyRkJQWWplQkRVaE5NUStIRXplMnFDeTdHS0k4eEZqd25XNDFQTmh3dGllSXVFZ0lLVitzUE5EQ3ZGY2RyS1JzWTNoODJVcTQ0cStMZkJaY0ZiVzhBWTVIRXhNM3R0T0dFMXpQb2ZndXVlRHpRdWI0M3NoaHNVbFBmM1FTQnJ6VzZOdHFnTUVjZ2xjSzV3OHVmQ2tSdDR6bi8waEx2RGlySGtGT2RMdTdYeE4wUXUyTklHYk81NDBIVWlJQUlpSUFLTkNFaGdid1JTMllpQUNJaEFRd0piRWRocDBuZDJsdXF2TkxNTFRMU1BJSGU0WVhsdXc3YTN5a29DZXg1SlByQXZtbmRwOVZXSVZtOGUzZjFOM2RqNlBUTzdUSFd1eTl5SWYyL0c5RDh1ay8zc1hCRjhjUXR6dTBSTzd3dXVuRDQwdTdUdFpQQ3RuVXVjLzJObVdGMk9FeGJIbHcyKzJWdlZHTGNyZnp3aEp2ZjVIM29qZy9VN3Jtc2VrbWd3R3hLL0hGeWZ0T0FTTzVHREZleHRkdWlhYUN5dTk0ellNUDZwc0pHbFFLNHRSbzd5MkNJQjRsa1FQK0gwa2NwdDNRM2dvWmgrWTlqc3hRWGdWT0xkY0JVeisvTkRWVkRsaW9BSWlJQUlISTZBQlBiRHNWZkpJaUFDSWhBanNDV0JuVHJ5SWZGYmtjcGk2WGV0TGtEV3B6YlduUkxZOHpva0pwcmwzWjEzMVpSTG5QOWlaaS9xQWlZU1BISkxDUkgzdXAwLzZ5OXNxVktqdXB3amJIcWxOa2FPN2FoNkgxd1RjV09jbG5BUFF4azNOYk5uZHY3WFkydmxkd1loNVJEQm5oa0R4SEpBSkVzbHJObHZHelluNWd4cHJPWFpjTGprS0JNRTZHc0hpODQ1K2E5OUwvRk40RWNjZzFqQ3R6SXVkM0lDUHJMeFJaNHhxOWExMjllcVBFNXJFUHRsaTZmVVdyWHhwT2JEdkVhc253ZEZBT0JTRDZGNHZEbCtVbmtOMjMyK2J1N2xIVXRja0tuRTJnWjNiVGx6aDNpS2dBaUlnQWdjRVFFSjdFZlVtV3FLQ0lqQTBSRFltc0IrdHVDamR1enp1UWQraHk3dzRHOXZqTDRFOXJ3T2tjQithazU3RU5pcHNXZGh6VFZiRE1pWk55cFBlOVVESXdHRHVYSXAvOTg1cHdVT3lYZ2NnRFhGRm5jM0JLV3VGWHorYXpmbVhqeXgyWUQ0aHIvbXZma2NoaDFqNmk3T2dFUkV3LzJRNTVmOS8rdkV5TmVZMlJsckIvaEc3MXM3YnNrYUdJamx3Q2JxVkNLSU1tdUhrNUxZT0h0aFlxTk9ybUxpSXlGbGVNSmR0K3hPZmo3dHBBd2t0Vk1FUkVBRVJPQVVBaExZTlJKRVFBUkVZSHNFdGlhd1F5amwrL2x2Z3FVVHJrQzJraVN3NS9XRUJQWlRjOXFMd0U2dHZROThyamtHZjdBeDYybmF0N1QvNzVpZjgrR29PVFJqVG9IZ2x4OTNYcW4wMThFcS8rMTVVOFBYcnVMVUFQbmZiT0krNG5BOHF6Qy9wUy9uWk1HN013cmhHd2hmK3dTRlRWbWV3KzBHVHA0UzJET0FiK0NTMUZ5eTE5TVljN0Y2cm1KK05uR0NjVzdaZTc3Zk16ekIzUnp4TVQ2NDUwYXE3aUlnQWlJZ0FtVUVKTENYOGRMVklpQUNJckFHZ1MwSzdKNUxqL3QyWUg1dERUaVpaVWhnendNbGdmM1VuTEJZdlY1RHY5VjV2VkIzRlJiV1QrZys0RzhkdWYwdnpPek9JVERsbm4xSlg5ck1YaDN4RmZ6N3dWTHczK29RWnQzbG5SYkFqUVlXM2kvUHltMlppM0JQd2ltaUd6dlo0K29EdHllL1VlRDJZMi9pTVc0dlVyN3B4NGl1RXpZSlV0Ym4rRldHTFQ2cnA5TGVHT1dPd21PellJK2R4SURIWGs5ajVQWmw3RHEwQU53aDhhNFlKdHhMM1MyNGN2dkszRUtPOUg0djRDbHo4cytiMlpMdnB5TkZxMmFKZ0FpSXdENEpTR0RmWjcrcDFpSWdBc2ROWUlzQ084U3g0c052N2RTN1kybEwwdEllbDhDZVJ5d21zSCt5ODgvNjVid3N2bmJWR2JvQW5HZWZ1R2ZLQnp0V3NmalZKbmhsS3VHVzZCNFRGenpVelBEL1g1dSsyOHdJNGpiMjZUMVYxOW95MXJodktsRGpzUWtqYk56OTZnVE1OUzFPdmRNQ1d3Z3Nlem96dTFVUTJ0bDhTU1dFNHB0M0Z0dzg1Nm5FWEUrd1ZDeTk5NUpLQlhiYXhTYk9DNXo1aUkwVS9ObnpiaGx2V0VsZzMvN29TSjNFb1BZSW9ZL2Rmak1XcVNGQjdIRnh4Tm9UTjFMTXQ3Q29kU20xU0NVM21Dbno3Tk1URzV2L1ltWlhDNXZjRzZ5K3FpUUNJaUFDSXRDYWdBVDIxa1NWbndpSWdBak1KN0JWZ1IyL3RjOExQbmVIclVTWVFBUjl6L3ltTjh0QkFuc2V5aW1CdmRacU1TWXl6Ukd0ZnpRSVgrUFc0RWNYMzdHMXFVVmRZODlwYloyTzRiN2FzUk5yKzFuTjdHV2RGZVVsSmk3QWRjZVZ6T3pqSzREemhCU3E4Rkl6dTlFR1RqOTh2NW45Z1psZEtNRWwxM2Y4SG9YakdvRWRWQmNPMXJxeHdJVTlUazVyNGI5OUdQaHpqNXh5SHB2V3ozTk9tVXRkUS8rK0xnU2pIWmR4U0FNQk5tM0d3WU9YWXBES0YydnM4NWpaY3p0cjlzOGNvZ0tETWg5dlpwekEya1B5bm4wRlBOMURMNnFPSWlBQ0l0Q0lnQVQyUmlDVmpRaUlnQWcwSkxCVmdaMG1EbzlZNHhMaEY4enNYUTNiM2lvckNleDVKTGN1c1A5MEpJQ3VCUGE4L2wzN3F0YUNITlovQ094VDY5VUhCWGNuYTdWeGFPVTVMaFBYUXJqcStmQmFsWEhLT1hPd1BQK0ppZXVvNncwekFwTmk4WXVMQXdUQVBhVmFnWjAybmp0c0lrOXQ2QXdaL0U0SWtOcGIrTGJZc1BNWTB4KzRSS0x2eG1uTnpTYXZubHY5L2VmQ016RlZ2OGNGQy9aRHVOS2FXcXRzbGVGYTlacjdmbCtybnBRVGM3SERiMnpDM1MrNDRQbmltcFZTV1NJZ0FpSWdBb2NoSUlIOU1OeFZxZ2lJZ0Fpa0NMUVEyTTloWm45b1pyaVFhSm40eUtkK2ZEaDhyR1hHbzd6ZUVJU2QybzhTQ2V4NW5iTjFnZjJld1ZwMDJCcEVMUUk3em5FUmcrc1pBcHB5S21PWVNzUTVXYkNmZG95MUZOaFQ3a2s0ZW8vMStodnpobm16cThhdVlwZ0grVGZtbTYzNUtjWmxESzVkSHQ0OVE3M0xtQkpYTnFuZ2h4OHQ5Q3RNREE5T0k0eFQ3WHNFbi9QZkZPbFYrZ01CdkRhZE0vaGtwLzJ4UkVCdmZMZi9WYmhnRFlFOVpZRjlrdDJiNVBSektyZ3Avckd2SEt6YmMvSnFmWTBFOXRNUzNaUEFUdTNIbTYrNGsyTFQ1dDVtOXJuV0EwYjVpWUFJaUlBSWJKZUFCUGJ0OW8xcUpnSWljSElKdEJEWTl5NytJWDVlMTh5K1VEa01KTERuZ2R1eXdNNGE1V25CVi9Td05aOE8vdHZmbmRmRXlhdGlybWNrc00rQTJybUthaW13ZjFzSWJqcmw2dVNQemV6NkIvQVJqRkNNQ3dYY0tlQWFDd0Y3SzFicnNaNWpNNG5OMWpNRjkxNXZ5ZWhpQkVsY01FMkp6TTgyczFzVUJFbWx1RmlzaDVMbnJhODJtMkxQQ3UrSGNWUCtwdk1sZlpWdWN4WUJmRTZpL1ZpTGMySnJuTWdiQVhEb3dtSU5nVDEybXVlUTdrM21NRjd6M2kwSE41WEFmdHFSc0RlQm5SYjBzVUtlM0cyMi9zb08zZ3RyUG44cVN3UkVRQVJPREFFSjdDZW1xOVZRRVJDQkhSR1F3SDZLZGZFaEJYYXNQODltWnZ4ZG0zNDJXRENON3lkUTdKMXFNeDNkaHpYM1A4M0lhOHNDT3dGUUdRY1hHYlVQbDBSWXNQL2pqSGJIQlBhN21ka2pNL1BkK3laV1pqT0xMbXNwc04vTXpKNFpLWDFzc1lzUDQrOHNxbW45eFQ5a1p0OFRBajR2YWJYTytNWm5OQmEyY3hOVzJZelhQOC9NaU9jQXkvZHhxZ25hRjNOdFVtczVuQkpMYXdUN0dCSkU5aWNHdi9yOU5WUGlPcjh0TGJBVFFKcE5rbXRQVkJhZjhJaDdTdE1FdGg3Y1ZBTDdhZnN0VjJEbkpBdWJnRjVRNXpXZURkYUx6Qm52WDZNd3A0eDNtdGtjQTRRTk5FRlZFQUVSRUlGOUVwREF2czkrVTYxRlFBVDJTd0FMU0N3SlV3bjNMaTgyczNPTkx2cEkrTUQrUk9MbVhuRGR1L2gzYUlGOUwvem1CQkJsR0cxWllMOWNKNlMveXN3UVNJWUpvUW54ZFk3dzJNSzNlMnFNZk5MTXZyemZhY3F0ZWU4cWFueGhLNEU5RmxDWjhxWXNkbzlScEpvN0I3cWRHTG1BRFlSWG10bFpKbjdIcXZ1V2hjL2VkM1FXLzYrZmNGZFdzMUhHKzVPZ2dXeXdqVk1yNi9WaHZyaWh3US85ajRjTnZXdDFHNzkvT2xIMjBnTDd4Y3pzdFJOOWdxdWVLM1QxbysxSzB3Umk3R0p6eWRvY2ozSHVtc3N3VjJEM0Fvek9yY2RlNzIrNTBiaFhCcXEzQ0lpQUNCeUVnQVQyZzJCWG9TSWdBaWVZUU95b2ZDc2t2ZUM2RjRFNDF1NjU0cExuSWdhcmFQNGcxazRGTnRzTHYyTVcyUHNqMStNeDB1TGpNZlljNW43WVU2ZllHR2tsTXJlYUU1YklaK20ycDRTVHFZQ0V4eWhTelowRGEvb2RDMHpteEt0TzNGdzdybm1tbmorUkg2NFViaE9aZjJOMXYwRTRPVEQxL2RKaVhwZ3FGNUdkZ0xwUDd6YTRZKzUxbGhiWVl3RTZIeDJDclI0aU9HZk4rRHJFUGJIM0NIVTVaSERUbm9XM1Zqa0VzN1hLak0zYnVlOWhDZXpUUGJYVVhMald1RkE1SWlBQ0lyQmJBaExZZDl0MXFyZ0lpTUJPQ1d4QllQL01ETi9tcmJISGd0WE5GWmRpSDYzWE1MUExkbGJSRHdqdVgyNFNCS1Z4dXlTd203MnRzTE5iaWt3eC85dTFiaVhHVFhtZ21SRkFkWmhLMkd3b2JBQUFJQUJKUkVGVWc2Y3VMVElYNGwvMThxWGJIaFBGWXNGTkpiRFA3MzYrQ1JCbUVKT25FblBtZlFvRmNWdzNJRXpmZUNMRG13WmY2cmsxVHdXcVhNSjZQYmRlWE5keTdodVhHMnMzTG9RSTlJczdDS1ZwQXFrNERvY0tsRHl1cVFUMjAvYWRCUFo1VDdRRTlubjhkTGNJaUlBSVZCT1F3RjZOVGplS2dBaUlRQldCTFFqc3VSOHZWUTBzdkNuR1l3bUJIU3MvTmhjUTlmdUUvL0pyVGxnbVNtQS9yTUQrTTJiMld4Tmo2YzJodno1Yk9NNkdsOGVDcDVaYTZDNHRNczlvNHVLM0x0bDJmS25qb3VRQ0U2MklCVGVWd0Y3VzVRamY5K2lDbGI1dklITGZNUHozTjB4azlkY2hzR3RwUUZmOEk3K2lFKzFQUDVIblc4ME1seXVmeXF3NmJscWVHcm4yMElMU2tnTDdwVU93M3pIRExWaGZaM2Jkd1M1THhYRTRWS0RrTVl4YWdaM3g4SytGRzE0SDY0aEl3YkpnWDZaSERqMGZMdE1xNVNvQ0lpQUNPeUFnZ1gwSG5hUXFpb0FJSEJVQkNleW43czVhZ1IzaDVsRjJpZ2pNc2YyLzZud0QvMjBYUFBUVDRZT3pSSEJEWkxxNm1YMW9VRFVKN0ljVDJNL1hCUzc3RXpNNy84U1QzeUtnWHl4NEtyNjlMMlZtdVNMaWtpTHoxaWU5SmRzZWM0Y0JreDh6TS95QTU0aFVXMmZvMVcvdUptTXMvNkZmOFg3RGltZU9lQWRubmJpSmpVbTQvNEZYNGRIditORi9WZ2hXSGJzMTE4VUpBUVJmWW1ZL1BKSFJvYTNYcWRLU0F2dHZkcHNRQlBVZEpqYUdlUWUrbzdCUFR0TGxxVGdPcWJsa2JVWTFBbnNmT0pqTmw2ZVpHZTZXM210bVN3WmRYb0tMQlBZbHFKNXlFdWtoeTJTdFhFVkFCRVJBQkZJRUpMQnJmSWlBQ0lqQXVnUWtzSithZDYzQWZvdndZVG5NN2YxbWRoa3orN2laeFQ3Y0VJdW0zbjBJdWxodzlwYlJmSnh6L0I0eHFqYmRLWWdnNC91ZllXYlBLOHowK3QwSDlNMG43amsySCt4WTFtS1plYnVKdHJaeWlSQ3poSDFkQ0NMOCtjeStXVkprenF6Q3dTNWJxdTBwTnlCWVVmTk04bnlQMHlYTkRNdjNZMHFNZDhia25HQytZeDRJNmMvdUFvVmVZdkFEUVV0eDQzTGxMckQyRXpvcjhlOGUzWVI0ZC90Z0xWdkM5MjVtOW5EbmhuODNzNWlicnVHdFdDSXpiNjdwZTcya3JhVUNPNEhNOFhWL1hxY1FUaFB3ckkxUEZjQ05BS2Y4M1NyaEQ1L1RCc2VTWXBiL3RDODFsNnpkL2hxQmZTcHdLeTdPV0Evdy9zVGdZQTlwcnNET2ZIYVhUa3htdlhhSWRQR3d1VFl1bTNVbWNTY0lkbjZJeFBxU0RVa2xFUkFCRVJDQmxRbElZRjhadUlvVEFSRTQ4UVF1M0FrY0YzVW9ZRVg0VURNN3krZzZyTlk0MW8rYmsxajYrKzdZUFZhSktRdnNIQmN4MzlWOU9Md3dDRHg4c0wxcklldW9Xb0VkLzluNDBSNm1vY1ZuN0tNVmZ2Z1NIck1sbjkvdFBvanVXQ0VreGZvaTl2RllZMTBVNDNSc0FqdCttWjhaRWRMRzFxNW42RTR4SU1oeWFvR2o4bDQ2blpuZHlzeCt1eHM3Q1BuajlKZ3VMelpGY3ROU0luTnUrWWU4YnFtMi8xY3plM0drLzVleTZENGt4N1hLWnIxL3RTQlNjNEpqbVBEaGZSVXorMFFRcXU3ZThlZWtDSWxOU3dLZWZyQ3dvajlpWnJqZ21KcG54MW54WHNOSHV5ZnVZc1YrMnk1K3lDOTJJdUxaUXlhMTF1dndPS09aZmJHd1hiSExTd1gyTFo2UXlsa1hOTUsxZURiMEwvTTU3L09wMU9Ja1ZLdEcxQWpzcFRFcVd0VzFkVDV6QmZiVzlTbk5MN1l1SzNVM1YxcXVyaGNCRVJBQkVkZ29BUW5zRyswWVZVc0VST0JFRTRoOWZQOWRjR0dCNVpxWDVncnNZOStsaUNCOEREMCsrTzNGUXFkRnFoWFlwejdNaG1KejZxT1ZUWTZZTDEvcTg3QkdmazBsc0o4eVFuSTNBUkFBc2E2ZEV1VVk4MWN3TXdTMVBsMHV1TFhndUh4djBmbUZzTUgwejZQQmlSQlBnTnVZNE1kNHZuYjNmTDIwWUZBdkpUSVhWT0ZnbHk3UmRzK2xnd1QydXU1bU00bDU3ZjZKMjltd2ZQQmczdnYrOE54eUQ1YldKUW5mK1d5U1hMRGdKdDR2MSttZTBUZGszRU43MklpNVgzQVhWT01LZ2ROS1R3cldyOHpUYzExclNHRFA2TGdWTDhGQTRMWGRwdmwzVEpTNU5mYzZwUUo3S25EclZ2ektyOWpWQnkxS0F2dEI4YXR3RVJBQkVkZ2VBUW5zMitzVDFVZ0VSRUFFRGkyd1l4bU1xSUxnT0pVZWFXWWMvMitSYWdUMi85SzVPSGhSSjY1ZWNWU0JlM1hCOUI0VS9pMzEwZnIyaEJ1U1hKY0ZPVzJYd0g0S3BSeUJIZGMrZjVRUXdMRmFmY1FJK3JrN29lMU5FUkVscDMrRzE5U0l0MHVJektYMVB0VDFTN1NkT0Foc2NFd0YyYVNkTlgxMEtENWJLWmVBenB6TXVZRlRJVGF1Y0JHVEczOGdsaDJibDh6TlUvRVQrcmtBVno2VU5VNVlmZUl1aG5sZ3lUUzJybWRUajZES25JU3BUUkxZYThrdGMxOHFqZ014SEhDTDFOTDEwcHhXc09rN2RuSENPaVIyTWl2V3R1RW1NU2M5Y0p1MXgwUk1IRTRmZkhrSGxaZkF2b05PVWhWRlFBUkVZRTBDRXRqWHBLMnlSRUFFUkNDUHdLRUY5aW4vbm4zTlcxdC8xUWpzTVQ3NDFzYVhNTW16Q3NPaUdSYzRCSW9icHlscjZieWVPL1ZWRXRoUDRaRVMyRm1IL0dod0M0UExocW4wOGlBUVlwMCtUUGpIeDg4cExpem1wSDhKN2pPd2VDeEpDQ080KzBIRUhDWjg0UktBdDlTdFJrblpoNzQyNWtPYStZSDRDS1UrZ0xGSzV0bkZWVWdzN1YxZ1o2eXplVERYV2pxMzd3a0l5a2FwNTV1ZStCUE1uUi9MelRoeUhUNnZYMkJtWXhjMC9lWDR2V1lUQlZkTlBOTlRGdTRJaTNmdDhuanNRcHhpcm10d3JZWlYrMXNyR1VoZ3J3UzN3RzJwT0E0MUo1VVdxR0oxbHFtMjlRR0xpU05URXVTOXVqSUwzYmluZVY0QyswS0RRTm1LZ0FpSXdGNEpTR0RmYTgrcDNpSWdBc2RNb0lYQW5nclMrY1l1aU9RL0pBREcvSHR5UzJ2cnI1aFArbFNBdng4SXg3L1BOR2dEMW1oWVJSSVVrT1FKN0Z5VDhoTThEbnBhTTk1aUg3bFlTLzVPWVlacittQ0g1YjA3SzcrL0xhd2p3Ukh4YjQvTGxtR0tDZXc1cml1d1prT1UrMUNrTGs4TWZwa0xxL3ExeXhIMDdoeE9OTFJ5ZTFSYmw1TjhIeHRkK09BK2ZRTENYT0dGTlMrbkhwaGIyQVJaTytHdWdqWVFRNE00QUZoNlR3VnNuVnN2Qkd4OFR4TmdkQ3JXd0REL1grbXNaM0d4a2hQRElGWXZMN1lCOTdIeGNzM3VWTlJiUWlhZWozYm1qSi92eFBiUHpZVXh1SitBb2pGaG44dm1pUHV0QkhZMitYNnpZWnVuc29yTjA4ZmlnejBWeDJFb1FpK01lWkhzT1lueW5FaU1panVFZVNXMi9sbWtRZ3RrT25lZVg2QkswU3dsc0s5SlcyV0pnQWlJd0E0SVNHRGZRU2VwaWlJZ0FpZU9RQXVCdlJaYXlrSUtBWUtQVjBTS1E2WnJCUisvd3pwd25CcWYzTzhPLzVnanNITXBZdmR2UlJvejlrdGMydWFXQWJ6V0ZOaEwyK2xkUHlXd0kzUSsyYkUrSDR0eVUrWDg5RUJVOE9veC9wME5oTnNIUCs0UzEwdnB0YnMreDNxZDBtcUVGOWE1Q0tzL0Zmb2E2MnA4OFhzQk5kdTE3dXM1RFdNRzlQLzZFVE43V25nVzN0dkFhcHZURklqM3FaTUFsTTBtdzgwRGh6bGpuK2NZUWZqNkNXQXh0MXRZakQ4cjRSSUlxL0piTjN3K2Z6QlkySHNXL2MvdE5xQnZWK2d5cHBYQW51Tk9hKzdZak5YMUdBUjJubmQ4NnpOdXBoS2JOcHlPMkdOS3hhamdkTWlWQmh0MnNtQmZwNGNsc0svRFdhV0lnQWlJd0c0SVNHRGZUVmVwb2lJZ0FpZUl3Q0VGOXBUMTExWUNhT0ZDWU95UCsxM0JKenZDRVNsWFlFK0plMWpySTdTTVhaUGtETVdZbjNqdXJSRXlqa1ZnUnlSQTVNRFNQV1ZkaTBVdGdYWVJ1MUlKVVlIVEJqRy8zZU43eWZlVndXSWRmOTl6TEhkenhvR3U4UWw0dnRmN0hFb0U5di9VaVUxWWRON2R6TTQxcXNMandoaWNJeXo3clRydEZiRm5tQ3M1VVlRVi93ZHFNZzczNEJMbW1WMEFaeXlVVTRubkJRRnlqci8xM09jWWNSMS8wTXpIWTk1OGcrQnovUm5POC91OFR1eSswOHo2OWp6T0dUWTBQTGRTYkw3OVdJSExHQW5zTXdadXcxdFR3VTFiUEdNTnExcWNWV3B0TnQ0NGtNQmVqTGZxQmduc1ZkaDBrd2lJZ0FnY0x3RUo3TWZidDJxWkNJakFmZ2tjU21ESHRjZFRnN0E1UlEvQkFkSDUwR25LTGNpTGd3L2RQakJXcnNCT1c4NFhSTm8rTUIraUs1YnQ1RkhyTDFrQys5ZEhTVytWaWZVd1BxR3Y0QXlnVnNFT0NkWjcxbEFXL2ZpcEdmM1pWem5WcjRkK0xyWldmczVHRWtJdFZzelh6YWg4aWNDZW1zdkcxcDRaUmMrK3hBc2N6WFBCaGxKTjRFVTJxdTVpWnIrZXNkRkViQUNDUWRlNnlNRWRESmJuRCtzc2hjL2pVR0VleFI4L0xpMWlteGw4aDl3bytOLzMzTmxnbVg4L015Tkd4cHpFbUh0Z1lKYktoL3B6OG9GM29yY1pJNEY5VG8rMHV6Y1YzSlFUVTdmSjZNdDJ0V21YVThwNm5RREZWK2syc2pqeDBTY0MwZk5jdFVyTVgyZVBaUGJKeGdGSjN4QTI1YjdZcXZJTDVpT0JmVUc0eWxvRVJFQUU5a2hBQXZzZWUwMTFGZ0VST0hZQ2h4TFlFWmhmMzdrWXdNcHZuTGJpdXpRVzJQSXh3Y3F4cjNlSndNNDlOdzNXbis4Si8vMzJtWU5NQXZ2WEFRN2RIbHpDekY2U0NJUTROOWpnekc1emI1ZkE3aUw2MmdVNUFudktwL0M0cEJLQm5Yc3BueUM0VStsNndWMUlmbXZtWFptYVc4bDVHS0M1cEtRY1Ywdmt4NllWRzZRRWR2YkU0cW55bVhkeE8zUGZER0dkKzB1Zll5OUE2ckJPQ040UER1N0FhdHBDWG13VUlNWWlSSHFuWHhCbXVUWWwrRWxnTHhtMXkxeDd6TUZOVTlickJOb21qc0tTYWNxOUZlVVJHUG15WnZiK0pRdmZjTjRTMkRmY09hcWFDSWlBQ0J5Q2dBVDJRMUJYbVNJZ0FpS1FKbkFvZ1QxbC9UVU1vSFhJL3Z1MnpvY3lGazY5dFhsZmwzSGcwRktCSGV0SnJHaGY1Z2dwdVcyWHdQNTFVbU8vd3JFQWg3aXVRR2prbzMyclNRSjdmczk0QXZ2WndtWUxyazF5VXFuQXpseng2dTdVellVbU1tOGRyTm1yZjByc3J4R3BXTDlmSjFoK245a3BISXQ5TmpMNitCUmVYZnZmS2VPQ1p2YXp3WDg5VnJRNTZkbmhCQkJ4TVVwUzdtWkJueWR1WEhBMVJYbTExcTVZL3Y1QllzT3ZMK3RQd3diREJ5TU5rc0JlMHRQTFhIdXN3VTFMcmRlWG9CdUxkVkk2Snk5UnQwUG1LWUg5a1BSVnRnaUlnQWhza0lBRTlnMTJpcW9rQWlKdzRna2NRbUJQV1g4ZHdxVkNiQkJNQ1JtNFZiaXltYjF1Y0ZPcHdONTYwT0dhQkxFZWkrMWhtcXByVHRscittREgyaFUzTG0vTHFkamdtaEtSYVJqZ0VGY012eGo4b3RlNjVDbXNhdlhsRXRqejBYa0NleXJBOEZRcHBXSU9hMXhPdHR4eElyTzEvVEVUQ0JRL3lWT3AxRDBNZ2pvVzNHeDZlb25OTGNyOW5IZmg0SGVDZ0dMdFRnQmd6NS83TUZ2SzRCNWMvdFJhbGlNbTNqbTRjUEVzeTRkbEU3VDJDV0hPL1d4Qlc3bjB3aUhXdzlSR3pEQXI0bnR3MG9rWUR1TlVNdmR4Yit3ZHJ5Q25oWjBYTHZmYzIrMDV1R25xbE04YTF1c2dubkxMeDc4L0tMaWNxdXUxL2Q4bGdYMy9mYWdXaUlBSWlFQlRBaExZbStKVVppSWdBaUxRaE1BaEJQWkRIMEhPQmNmSEpvTFVNRTFaZ0I1YVlJLzFZYTE0Zld3Q08rc1BSUFZMZGk0bm5oUUV3N1BrRG9JRnIwTXd3TmR6TEVsZ3o0ZWZFdGdSY1JFcUw1Q2ZuWlVLN0dSOXRTQzZUcTEzYTkyeUZGVDVxNWZHTnR2NmZFcnFjVVV6KzcwTTRadmdvZ1NEZm14RzNBRk83L3hBc05DbUx1T2dzRG50cFJ4OHU1Y0krYWw4TDlMRnhzQTFTKzdwaG1GZXVQbmlIVUh3MVBkbUJqTE9EWDc2OG5BYVlCejR1cFhBL2xvell6Tm15Y1NtQ1piL2lOTEQ1RzJJTFZtbnVYbGZ6TXhnTi9VT1dYc3piVzViaHZlblR2bXNaZmh3SmpNanhnMXVZc1pwYlZkYkxkbTJ5RXNDZXd1S3lrTUVSRUFFam9pQUJQWWo2a3cxUlFSRTRHZ0lyQzJ3cHdJTmJ1M2psT0IwOXh6MU5NZjNyOUZaUG41bThPOFMyUE1laDZrUHhOcE5nRktScWE5aDdMNjhGclM5eXJNSWxNQ2V6enNtMkxIMkpOZ21sc3BUNlMxZGdPSHZtZ2lxVnlPd0UxaVgreEJzeDZuVWNqeS81YWUrTWpXK2NhT0NjSlhqdmdWM0xhK0p4TWdZbHBpeXRKNXF3L0EwU1drYmNjL0NIUEtCMGhzenJzZFArazNDaHBmbkJtY3F1Mzh5czJ1YUdlTXBKK0Zubm8yQ1cwY3VmbDhYbytUcVp2YWhpZDlMNTc3WU96Nm5ua3RkczJlQi9kZTZVeE8vR2dIenVIQ0tvL1pVeFZLOGMvSk5uZkpaeTIxZkxINUVqV3VybkRidjZSb0o3SHZxTGRWVkJFUkFCRllnSUlGOUJjZ3FRZ1JFUUFRS0NaUUk3TXpqNXpVelJCSXMvajdWL1gwK003dExGL2dxMTJmdXQ1alo5U1BCM3ZBNWk5WGVvUkxCVmJIWUpHRnhoKzlrMmpwTVdDcGllVG44Z0Q2MHdJNC80VGVaMlhlTTZsb3JYaCtiQmZzUXk1NEU5a005QjdGeVUreTJLcGh4YWdIcjlUTk9OSXJuNDJaQjZEelA2UGNhZ1owc1l1NVpTc1R0T2YwZTgxOU1ubGlHTXA5OU9iTUFUd3ozZklWUEZjTTc1TzZGZ1JJSk5NcG1KOWJpU3lmRTlWOHdzM3QzWldKdG41dHFCRWp5WjY2OS82Z1FUNnlYd0o3YksrMnZTOFZhK0pjdURzT1Z1bzJXTjdZdmR2RWNVNmQ4M21wbTF3cnJ2YVVyRWpzRlZEc2ZMMTNmTmZPWHdMNG1iWlVsQWlJZ0Fqc2dJSUY5QjUya0tvcUFDSnc0QWprQ096N1RFY1VSSFRqeVBSU0x0aVJZenUyOG9VL2FtRFhxM2N6c2thT0NEaTJ3eC9xQUV3R1hNck1QRjRLUndGNElyUEp5ejRLOU10dkZidHVid000SmdPY0dTK0FwS0k4MnM0ZUZRTWF0QkhZc3hGODE0UktEOHNmQmtWdDNGT3RzWENERnJLSkx5eWMveGlpdWpNYnA4V1oyajhxQW4xNi9VTmFYZ2svN2g2NGs3STNiaDlCK3AzQ0N5ZHM4eHJMK0ZwbnVZY2Jsd1BoV1lXTVhQL0NJNnpmdVRocmc1ejJXSkxDM2ZuTHk4Mk5EN3BtUnkvODRySk1ZdTN0S2pNSDdoZlhkVkwzWDhOWGZseHRiZTV4MC8rdndrY0MrcDZkS2RSVUJFUkNCRlFoSVlGOEJzb29RQVJFUWdVSUNNWUg5STBGYzRJTVNuK25ETkxTTVBsYUJQZGF1YTNlK3ZGOHk0ckZWZ2YzdmdzRCswY0l4SVlHOUVGamw1UkxZSzhGbDNwWnllY0F6UVhEZEw0YlRINjBFOXBRUDlGSUw4c3htZnUyeWxIVnRyUVU5bTZ1NHQ3bHFLSVVnd1QvVmJiUmlWVDdIRFFZbm9UaXRoQ3VhWVVKWTVoVEFTeXNGNjFKbTN2V0k2d2plOTRuNG9uOS9ZTVBwcXprSnkxMlkvdHhFM0k5eHZoTFk1NUN1djVleDhMemdDbWdxRjRMMWN1cHRiOGxidzYwbHNNZE9EY0x6cFB0Zmg0RUU5cjA5V2FxdkNJaUFDQ3hNUUFMN3dvQ1Z2UWlJZ0FoVUVLanh6NHF3Z2g5eXhCRHY0NnlpU2dlN1pmZ2hpVVhpMDBZMWlZbFVoeGJZWThlcUpiQ2ZkaWpGeGl1QitMREtYU0o5ZnhCbXhwYXdFdGlYb0gxS25oZnQzRFc4dW5QL3drbVVxZFM3OUlqTmYzTmNFa3pGYnFBT3RTSjNMcVZVa05VNTRuNHZocDhodUpqQlpVU0xoSTl4NnZVT00zdEU5eTU1WWVkdTdMTXRNbDRnRDc1aExoeXMybjlpNEJMdGxoUHZpZHJpVHg4MkZieU5pOWdjaG5zek5qL0dLVGJHMTNESmR2WWdqbzYvQWJmcVVpclZkNWNPY3dyOU5FNXJCUUd0SFZ1eCsxSXhjZnA3Y2dYMm1yVms2L2JrNUxmSHNVZTdKTERuOUs2dUVRRVJFSUVUUkVBQyt3bnFiRFZWQkVSZ053UnFQNHJ3ejR2N2hXTVYySDh4dUVZWSt1R2RDbkJLUng5YVlQOVJNM3ZCeEloN1hSZDBENHY3enhlT3hwTm93YjZrMkIxN1JwWXNzN0RMc3k3Zms0dVlCd2RCWXFwaHJ6VXpuaG5FM0NVRTlrTzVpWWtKK3pBb2RROHo1bmFKTGc4Q0RVNjVtOEx5bERiSE5qTmlnNHZ2QXNUS2Y4NGFmWWU1NkowVFFXRjVKL0FzSUxpekNZdFYvNXFwZEQ2SmpmRmM0WFJPMjJKMTNadkl5Vmg5akpuZE1RTGp2dDIvRS94MGI0bDRNcHljU0tYY2NWSzdsbHliV1l1eFZ4cDdxRVViTHg3bW5YRmViTWc5dnh1Ym4yeFJTR1llQkdIbWVjaU41NUdaclM0VEFSRVFBUkVvSVNDQnZZU1dyaFVCRVJDQlpRa1ExQXJyT3o0WXoxVlJWQzhPSHF2QURoTGVXM3cwWHNYTS9ydVpmU0x3R2xzWWxnanNCSG05ZkdFQVBhOTdydHpWN1djbkxpSW9JSmJacFI5QitOdS8rVVIrQ0pPNGI0Z2xncnZoOXoyV3BvVDcya0NzcFc0UytqcVZpbE1lKzV6ZjF5N3pmNXJaZFlKdjhiODBNemFHM201bUg2OFlDOFAyN1VsZ3Yxam51b1B4ZXBaUkIvMTdjSG5WQjFOZVFtQS9oSnNZL0pxL3FQUC9mc1dKQWJtMDVYeXE3SnpuWTh2WGJIRVRMTGFoR3F1ckJQYjVJK3k3d253eURpUk96dmpONTUzT1NZdzlKVVRpUHpHejh6dVZsc0IrV2tESHRPNnRHYk56VG5qVmxLZDdSRUFFUkVBRUpnaElZTmV3RUFFUkVJSERFcGdycXZlMXgxTG03c0Z5TzZkRitQRWxBTmdsSnk2ZUV5QnVtQjNXaEZoc0kyQVAwOUNkVFU1ZGE2NHBFZGlQK2NQTXN3eVR3SDdxMGJXRWVKY1NPK2QrRk85SllNZXFHc3RNWWtnTTAyOTNRVE4vdmd2bzkyL2hINWNRMk1tYWpTaktHYWVseE83WS9FZjVTd2RmbE1CZTg5YW92MGNDZXoyNzJqdnhqWS9GN2xUQzd6ckdDdjJjVWx2R212ZHhDdU54M1liNDdUSUtsY0IrV2tqSHZJN0xHQkkyZHkyUlU0YXVFUUVSRUFFUmNBaElZTmNRRVFFUkVJRjFDVER2NGo4WHY2dy9XV21wM3RmNFM5MzlUd2grcWprZTZ2bUpIYmIwQm1iMm5HQVJQdnozZitsRWNmd0dZMms2TnlIdWNreDJuTENvdmxURXRjSGNNdnY3SmJDZlFrSUMrL1NJV3RPQ0hUY2RmUHhlWktJcXp6QXpYQUtVUEx2RGJQWWtzRk52Z2pQajQ3dGZmMDRGcEZ4S1lFLzVRNS9ycm1WcWxFM0ZqT2l2UStoL2JLdkpiaUlmQ2V3THdwM0lPaWF3eDhhVkxOam45VS9LUUlDNUZEZHNCT1hkVThMRjM3UE03QnN5S2kyQi9iU1FKTENiWGRmTXZwQXhmblNKQ0lpQUNJakFRZ1Frc0M4RVZ0bUtnQWlJd0FTQm01b1oxcHBqRndtbHNQaHd4TTNJV3lwOXpSSkU2M2xtZHMySmduRnBjSlBPVnpMaS9aekUrK1ZKWm5icmlVem1CUGZMclpNRTlsTklTV0NmSGpGckN1d2M5Mzk5OSt5ZmM2SXFEK3FlNFh2bER1cUo2L1ltc0ErRk1ZU3dIK3Y4WnYvQnFGMUxDZXlwalk3V2MxSnEvbHZEZllVRTloa1BWY1d0c1JnWnNmbFhBbnNGNU1FdHFjMnlONGUxelZhRDgwNjF2QTlhZk1GTUxITUY5amNGQy84dlpwYlg2akxjNXQxN0lqTnZuWkpUdmdSMkNldzU0MFRYaUlBSWlNQ2lCQ1N3TDRwWG1ZdUFDSWpBcVFqYzFjd2VNWVBKUnpyWEFwYzJzNytia1FlM2pxMUkrK3hhV241OW01bTkyc3d1TkZIWHBhMDNLVklDK3luZ3ZROVh1WWc1OVFCZHdrWE1Ed2NMZGphMnhnbnI5YWZQZUo3M0pyRFQxTjYxdzVQTjdQWVRtNFJMQ2V5cG9JaXQzY1NreFB5bDNjUEFXQUo3M1VORnYzR0s2M09GdDB0Z0x3UTI0M0l2dU9rYTY0c1oxVC9OclNXdVlmcWI1d3JzaDNJblV2cWNsSENXd0M2QnZXUzg2Rm9SRUFFUldJU0FCUFpGc0NwVEVSQUJFWmdrRUR0R25vc0xZUjNYS2gvTnZXSGl1cFQxZWt2aEorWWVwamFBWm1tVEpiQ2ZRa3dDKy9USVdkT0NIWGRNZnpoUkRmd0RFd3lYT0FXMWFZOENPeGI5aU9zLzBaMXcrZUJFdzVjUzJQdm5ZY3B0RmIrMWRCT1RzckJkUXdDTUNleHJ6YisxNDNsNDM5UWN6dTlMYklMMTViSUovcXRtZGhjemUyYkJTYTZTOXcxbHlZSzlmb1NrZ3B1MjNpaXJyMlgrblp4c1pLeVZmSk5MWUQ4dDN5V0MxWHU5R0FzK3o3c2RTLzIvOVRKbytQcy9oclhFbnVJT05HeStzaElCRVJDQmJSQW9lWmx2bzhhcWhRaUlnQWpzbDBES2tuWFlxajgxcys4M3M5T1BtdHBDWUU5WnI5K29LL2U1RGZER2dobVM5VnFXVXlXQ0J4WmtmSnpsK0Q3TndYTkZNOE8zZHVvZCsva2dmcjhuSjhNWjEzeW1FNlMrbkxoZkZ1eW5ock9FZVBmQXppcjJuaE45MENJV3dSNEZkdVlIVHJqUS9xbTBwTUQrSGNGZER5NFp4b2xORUFLd3RoQW9ZbjIraG5zWTJpV0J2WHpTWkw1K21wbmRQTnhLNFBDSG05bnZkY0Z4UDVYSWp2Rk1VRTE4YUE5VGFqTWpOc2JMYTkzdURtOHp0bDFKODNJNnB1Q21GdzBuL1RnNU1VNy9IazQzRWF4MW5DU3d6eHREcmU2T1dlVHZhU096RlF2bEl3SWlJQUlpVUxoYkxtQWlJQUlpSUFMekNQeEFDQjU2cG9sc3NIVEJyL3F6emV6TW5Sc1hmR1NlWjNUZFhJRTlaYjNlVXZpK1dHam5sSy81TmF3M3dWWWlzTS9yMWRQZUhSUFh4bGV1eFNMVlBnbnNwNmJUV21BL1E3QmVKK2plT1AySm1WM1B6T2I0d1UwSjdBODFzN2UySHR5Ui9ONXBadTl1Vk5hU0FudHE4KzlqWm5iWnpyS2V3S3R6VXNvOVM4dFRRcWs2U21Bdjc4R3ptdG5Mek93U28xdlpETDI4bWYxbEpNc1k2OVQ3V2dKN2VmOXd4ekVGTjZVdGJPcGROWUtDZUQwdmo1eCtrc0JlTjM1YTN5V0J2VFZSNVNjQ0lpQUNPeWNnQy9hZGQ2Q3FMd0lpc0NzQzQ0OXFMSlN3bUh0SUVLZndnVTZLZlh6UEZkaHhWZkdjeU9ZcXdRYXh3cHViMXZSem5LcnJvUVQyRXQvSFd3akdGdnRBeEhvelpmayt4UjR4K2V3VFAzaGl3SnJ1V3ZycXJWVW1sdHB2TURQY29velRZOHpzVGpNZnVLMzRuVzI1TWJHa3dBN3VXNFI1ZHdyOVhKLzQ1Sm5hWUd6SktUVjAxaERZWXk1Y1dsbENyKzBpSnJZQi9pNHo0MVFTTGhpbVVteThwdTZUd0Y0MzhjVk80SkhiRnQ2bnVhMWluY1JjUUpEcnFmVFgzVW1icTV2WkQ1blpDeXJlcWYwdFM4K2x1ZTN0cjF2U0IzdHBYVnBjTDRHOUJVWGxJUUlpSUFKSFJFQUMreEYxcHBvaUFpS3dlUUpZcnIrb0U5U3hKTDkvNTAvOXBSTUIvbWpFRWdKN1N2aHQrV0dhT3ZLTWdNOXg1eFl1R0x6T1BwVEFYaUo0dGd3cTYvR0kvUjc3UUt6TmIrcStXb0dkRXgyUGIxbVJRVjY0WUhwZWVCYUhSYlFXUUpjTWNFcTlTOGJiUWlpL21tMUxia3VMUW14MnZON016amtCcE1VYzlkTmQzbGlmanRPYWJnTWtzSmVQOWxpc0JNOTFVRXlZVDUwS2s4QmUzaitwMHlma3RvVVRZYm10d3AzUXN5SnU2VEM4WUNNQjYvVlkzQjd2bmRyWFkrbTVOTGU5L1hVUzJFdUo2WG9SRUFFUkVJRmRFWkRBdnF2dVVtVkZRQVIyVG9BNTk0d1pMaUdXRU5peHpIeHFoRjhyNjNVK2dCR1dianRSenZDamNZMXVQSlRBL21zaFNONjRqVS9zTE95dVpXYjRnQjRtTmx4dVVoQk1yelc3TFF2c3JkdWFrMTlMb1pqeWxoWmJKYkRuOU9xcHIwbTU3Y0V2UE81QVBsQ2U3VmZ2aVBuajVyZVdicmk4NmtsZzl3aWQ5dmVZYTYrN2RXN2JIcG5JTGhiUU5pV0NTbUF2NzUvVXlaQzV6MjE1YmVydndDcjlsV1kyNVVLUFhObFl2ayszam1BRFhnSjdQZWMxN3BRRit4cVVWWVlJaUlBSTdJaUFCUFlkZFphcUtnSWljR0lJdEJiWXp4RSs2TEF1SHllc0toRjRzYWIveWt6Q0NGT3ZtQWpPU3JacitSN3VtM0FJZ1QzbUh4YkcrRm05Y3dpaU9NUzg5c2JEdUlzbHNKK2FTRXVCUFNXMkVzajRHdDJZSUFqdG5DU0J2WTVlYXR6akYzL0tMVU5PU1NucitKWmp5NnZMMGdKN2FtenYwVVZNYk5PRjAxWlhOclBYSllESE50SHVsWEFCRW52SDQ4TE5jeHZGKy96RlpuYXVVWjF5N3VXVzJPbWRWdjNtamMzYTMyT2IxK1QzdUdEQjNydlpxeTFqamZ2bzMwZEhDaUl1QjlidG53Mi9TMkJmbzBmcXk1REFYczlPZDRxQUNJakFVUktRd0g2VTNhcEdpWUFJN0p4QWE0SDk1OHdNZjgrcGhNOVBCQ0FzcW11RWRzVGxGd2JyejNFNWgzQ0ZjZ2lCUGVianZuZkJjK2tnakl6ZnZZZTBZcGZBZnVyUjJsSUU1YlFDcmtqT08vSGcvWjZaL1ZTRGVVb0NleDNFRkxjbm05bHRnZ1ZwYWU2SWxNK2Z1R2xOOXpBVXY3VEFIc3MvUjVET1picW1EL1p6aDhEaTR4TkdId3FCYjdHUWpxWGZET0x1K1BlVVAvL1lPejdIOWNlY2U2bGpiT3h2V1dBbmxzV3J1emd4RjVyb2hIL3BmcnVTbWIweGQyQWQrTHIvR0RZRWJqZXF4eitaMlZXNndOZmJvWFVBQUFBZnIwbEVRVlIvUHZoM0Nld0g3aXluZUFuczIrNGYxVTRFUkVBRVZpY2dnWDExNUNwUUJFUkFCRndDTFFYMmIrMCsybDVqWmhkMlN6M2xBZ0twOHRHQTM5bC96YnpIQzloMUNBRjViWUVkdi9yNDlMN21CTFA3ZHYrRzlWM013cDBOaUJ0MWxvWFB6ZVRkOHJLcEQwVHFnMGhJb05PU1JJQlRySC9IYXd0UE5OcUtTRXhiV3dyc3FZQjhyZHd5cGRnOTFNemVXdEtCTTY1OVp3alVQQ09McjkyNmh0L2dzNXJaeTdvTnhVdE1WSmpOUmdTN2p4YzJobkgvSkRPNzljUjlhN3FIb2ZoRENld3ROeExXRk5oamJsNndGTWVpT0JidytadkNYTWtKcFdIeU5ocE8xMjE2bjYyTHhjTGZ3L1FsTTBOb1RhVzVBanNDNzdkTStQL21ORTFwWU92Q1I2VDY4cHVaMlRNamQ2OTlPcTY2RVlNYnh3WUpuR1RqSkNIcnJtRmFTbUFuWUMvcnN0dzFYb3MyazhmRnd3YlBPTDh0Yis2azJpNkJ2ZFhJVUQ0aUlBSWljQ1FFSkxBZlNVZXFHU0lnQWtkRm9LWEFEaGpFWHdTOUIzZVdVNGlnT1FseDlTNGhFSmYzRVpaeURZTjFHZUxGYTNNS2JYak4yZ0o3VEV4RkxJSFBPMExiWXFjSkVDaXhYdnRFUXdZNVdVMTlJTmFLWkRHeHQxWmcvMkxuTHVIVE9ZMm91QWFYRUZQUFFpdUJuZlVWcDBidU9GRzN6NFV4OGZhS2VvOXZTUW5zZXhVdDFoRFk0Uml6UEdhRENmYzl1THNxU1NrcjIxYmpLcmMrU3d2c2JOeXlhWENSVVlWcTU0NnBkcTBwc04vVnpCNHhVWW1VbXhjdWoxbStmeXhZdnI4L3Q4TUtycHNyc0JjVXRZbExVNXZYVkxEVlp1WGFqZjJSNERvUFgreS9HOTRWNDdYV1VnTDcybTMxeXR2cnUwb0N1OWV6K2wwRVJFQUVUaGdCQ2V3bnJNUFZYQkVRZ1YwUWFDMnc5NDNHY2cwcnFVYzFGTnB4Zi9GeU03dGdoQ3krUmhIcTEvYU51cWJBSGhPelFQTDdablpMTThPaWtmU2R3Ui8rQlNaNERZT2JyVFZRdHl5d0x5bEt4b1RwVm1XbXhGYjZ0bFZmUzJDdmYxSmlWc3ZreU9hSTV3dDdYSElzdjVhaWMyNXJseGJZWThJeUo2QXUxUVgzL1dodVJSUFhyU1d3eC96SjUyeTBYTTdNWGhXQzJ3NmJncy8yYTV2WjV3czRFQUQ5bnpOY3ROVUs3Rml0c3hIODdBTllMaGRnT00ybHVGYkRQY3pwSnpLcFBXMHlwejR0N3lXQUxuM0NDYmJlNy9vd2Z3bnNMV20zejBzQ2UzdW15bEVFUkVBRWRrMUFBdnV1dTArVkZ3RVJPRklDU3duc1BTNkVkbzY5UDZSemFYQ2VUSVpURnUwY2MrWkk4L2g0ZkovbCt6b2YxRmMzTS96WXJwM1dGTmp4dGZ2VWlRYkdmTS9IUHNvT1llM2ZVbUEvWDloTXdlSndtUEJCajgveFdGcGE3SjRxZCtreVV5NE5xQTlIOUhGRHdzbUZPVWtDZXoyOWxJLzhtaUMwTVl2NHRkM0RRR1JwZ1QwMjdyRFl2a3lGZTUycFhseExZSTlaNCtkWW9jY3MzNTloWnJ3WGNqZVc2UzljaEdITmpJdWhkeVdHZGFuQXpyY2VnVnFKTGNBR0wzUCt3d3JxVnYrRXpiOHpkUktJM0h2M2EvTkxPa3dPck1YWU9PQzAxbFNTd0g2WWZza3RWUUo3TGlsZEp3SWlJQUluaElBRTloUFMwV3JtLzkvZStjZisyOVZ6L013ZnNjYXQxcVRKUmlXSk5Gb1d0Y1JxdU5PR3BDYmNUSXB1NUVkbEUySWxSUk1tNWI3WmJLbzFTVVQwUTdwYnNaSWxQMXJwRmtLbDRpNHN3Mmh6UGR6bmF1L3ZkWjl6cm5QTyt6cnY5L3Z6L2p6Tzl0MjkzZTl6blIrUGMxM1grL04rbnRkNXZpUWdnUXRGWUxUQVBzUFlSMmovclJnSnYwelVOYmVkOHhROTFFSWNTbUJIVlA2REVNS2RFeFBMQ1d1bEtQWmpia29jYW0yVy9lUThnWW4rL1BDZ1FZM3NjODNTWUo0U213N2ZzWE82b1dlcUN1dzkxRzYrSmhlNXpHZHJIdHJMWG5NaUxmVzJPaFhSTXRQUkFudE8rTnR5TStGUUF2c1hSTHViNWNZZzczVnlTdVRFejlMOVEyVHlzeG9XYkxsSisrd3B5aHg3R3V5a2xxVkZZR2RPVDVuZW8wL1lhZVRZMzgwTldNS2RvcjNjTXZrc2JTenQxMXJhdlNoMUZkaFBlNlVVMkU5N2ZSeWRCQ1FnZ1lNVFVHQS9PSEk3bElBRUpMQks0RkFDK3p5UUh1dVlqeVFTdE8xTzdCZERDTis5cDNpNENxcFE0UkFDTzl5dXp5UTFYRXRjaXJENjNNejRjMzZzKy9EdzJwc0prRlNRMHh1STl5OGZCS1ZrYWJEYkpVSVg5Z0JZTFBVV0JmWmVjamRmOSswaEJONVZxZElTSFh0SzlqRE1aYlRBL3FRUXd0TVMwTmJ5TGJTczFxRUU5dHc5OEJOUjVNNk5PWGNDb25WekpyZEppN2grVFV5aXVqdUdXb0VkeXhuc1lMQ3FXUmJFYVJKeXY2bGxRWTVRTjVlemhLRXM3ZGVPTUx6aFhZNFMyUG51d2NhSi94NnlZRk5FWXVCbDBZUDlrS3RnWHhLUWdBUWtNSXlBQXZzd3REWXNBUWxJb0p2QW9RWDJlYUJ6TWxRODJxL3FIdjNORWQySW1DbFAwVDJhYmJyMEVBSjdTU1JmaStTOFhSUjRpWjVNbFdNZDQ4ZmFCTjk4RXY0UllYMVRFL1Z4bGVIRnZ4djM2SUtFak5na3dId3JpNWJsY05Zc0RaYjE5ejJ4b01DK3h3MFJRaWp4VzN1R2QzdEdiRVowWHBhV052YWJ5WlZYanhUWVNSQ01OVmhLdU4weVd2OFFBanZQNi9Pbjk4b2pFL0NKWHYvdHdxTGtFbHRqaVhhL0VNSjdLaGFVVGRwZm1PcW1Ub0xoM1UvaWF5eTJka3V0d000MXU0azB0MzczVkV4dnJ5cWwzQ1k1KzdXOU9qekJpMGNKN01kNkwrVWl2aFhZVC9EbWMwZ1NrSUFFSk5CT1FJRzluWmxYU0VBQ0VoaE40RmdDK3p3dmhQWnZpNGtZVzRYMmZRWERyZGlPRnRoTHdrV3RsenIrOUsrWWp2Qi9UR0xTUkpZaCtyem9nRjY1S1d1VE4wNGVzVVJ5TXM3L3FWeWN1OFhJVDN6N3NTYW85U0ZlTnMvZktIZVBGaHNraWlXaEhjemVYVG1PdVJyUDA1T2pIY3Z1cFNNMmd1NFJMUTN3VXE0dCs1eFlVR0N2cFp5dWQ5dkpNL3hWSVlSN0p6N0dUNXdvMzNldWRGRnFveVVLZnIrWlhIbjFTSUdkWjVJa25rU2pMZ3VpKzFZblF3NGhzT2VzZlQ0WVFpQ0I2ZHN6aTFMYVNHUHpnWTNLT2JGMWFWM1ppT1lkbi9vT1lNUG1HWW4zWjR2QVR0K1BDQ0c4Y1BJclQvM21HL0VPM09vK0xwMEVZdE9CWi9PWW0vaGJ6YlBVamdMN0lTajM5NkZGVEQ4N3I1U0FCQ1J3bGdRVTJNOXlXWjJVQkNSd3dRa2NXMkNmOFhHVUY1c1hQRnlKdEtzcEpHMjhOb3FNdmNKcVRUOXJkVVlLN0o4V2JUM3VtaGxFclQwT0hyNC9ueEIrNTJZUDdaV2JFelRZTUNBaDV4c0swUGw3Z2sySHAwWVJuS3BFWUg1eENPSE5hNHVWK0p3SVVFNVNMQ1A4Znp5SzViWDMxaHJqTFU4SzBCZHIvNmpNZk44eENWMXNQcVJLN3pnVTJEdHVyc1VsdThsSlNXN0tHaUlTWTZGUWM1OGh4TjRRUGQxM202NTVidllmZmJxRmtRSjd5YmFEZDlhTDQra1htTlJ1eXFWbWNRaUJQZmY4c0lIQVpnRldVcW55eWRNNzhiV1RUY2xuSlQ3a1pOTjFGUXRiK2g3NWt5bHkvZXJNQ2FKV2diMFVKYzh3OTluZ3E1aG1WNVcxazBCYm5wVG9HdUNCTGxKZ1B4RG96bTRVMkR2QmVaa0VKQ0NCY3lXZ3dINnVLK3U4SkNDQmkwemdWQVQybWVGOVk1Um55anN6eDVuSVo0VEd0eDFwSVVZSjdKOFk3UkVlbUprWFVhOTg5cTdLZVg5cUZPdFRRZzFOSUZBUkRmbVN5dlo2cTVVRWpWZUdFTDRtaFBDZm1jYnhOWDlPQ09FeGljOTdmWEtYU2YvbXBudXNYVzQvQ2Yydm1meUlQeWN4dnB3TlF3L0grMDlScjYrZUl2NXZsYmdZc1phSVMwNERQQ1R4T2NMazkwUzdpQnBSZDI1Q2diMW5wYTY4NXA1VExvVlBpWUxwZjNVMGw3T0hPV2FVN1NpQnZaU2dlWWx1WDdIOUVBSjd6bitkamMvSEZlNEZMQzFlbW5tZjFHd3Fsa1R2dFJOUXJRSTd3MXo3M3VyZDRPdDRYS291dWV6SlRXZElDdXhWdDh2UktpbXdIdzI5SFV0QUFoSTRUUUlLN0tlNUxvNUtBaEs0M0FST1JXREhNZ1RSRHdFcGRZUzlacFZJc3ZiOUhiWWVOVzJYNm93UTJCRXBmam1FOExCTXg3MFI1eVdyR0xwQ1pQK0dHQm5hSXI2Mk1Dd0pHbDhmRThxVjJzdUp5MnRpVWE3Tmt2OHVQdXFJK1MzUnNRaGl2NW01ajE4L1Jka2paT3hqTjhDemd0VkRTanhuanZnc2N4b0VIM2dpWDdHbVNBbVNyU0s3QW52TFhiNTkzWnpGQ0QwZHl4Nkd2a2NJN0d1UjBDVzZQV0w3YUlHOTVML09CdDhMTWhQaXBNcno0c2Juc2txdHQzVnVBNUgyY3RZd2MxODlBanZYbGlMbVdSODJVVXVlODlzL1Bma1dMM3R5MDVtTUF2c2g3N3IydmhUWTI1bDVoUVFrSUlHekpxREFmdGJMNitRa0lJRUxTdURZQWp2ZkRWODZSWFZlUHdrSmQ5bUFJVC9lRVJoL2VCTGIvMzJEOW1xYTJGcGdKM29mNndpRWtWenBQV29QN3llR0VINnkwRFlNMmFoNGRnamhJelVBR3V2ODJHU0g4YU9KYTdEOElkSGVCMWJhUTN4RGtQcTZSTDJYVFNjWkhsNklnTTgxblVzaTJDUGFyMW5GcklsYWF6aExDVy8vTllUQUJzUmJZeU1sY1kwcVdPUDhVQ1V2QmZhMWxSbjcrWVBpNlo3bDM5UEh0SWRoeGxzTDdEemZUNThzVXg2L0FjNVpiTWVhNTAyRmpiTFJBbnR1Y3dSYkdKN1hQOC9NdFpSbm9jYTZwSlMvbzJhenIxZGdaem9sei9kVHlaL0NSamFucHU2VDRIOVprcHZPVTFkZzMrQ0ZNN0FKQmZhQmNHMWFBaEtRd0VVa29NQitFVmZOTVV0QUF1ZE80RmdDKyt5anpmSDRwZmQxaWpsMktQemdyUlhoRWRjUjJZa0N6OW1OYkxXMld3cnNhNUhyakhuZlpIRzEwYUZFYnhQZDl4OWJnWnI4a2t1MkQwUmRJK3JYbEZ3VU80SWFZdm52MXpTeVU2Y1VGZDRqMnBmc2VQYXhpc0Y2SmhlVnpuUitib3FPLzc0ZFArK2F0Y2FER1NIK3hoVm1DdXlOTjlXRzFVdTJTc2UwaDlsd2l2L2ZGTWxNMlR4ODZOWU5SM0dkamJsblJUdXhFWnVIdVdIbnZQUHg0Zit5NmZUV2h4SVhsdGE4SnVkRXlhcUZqVGhzcE5oMEtKVjlCUGExemR4OXY4ZTJ1RVZ5RzZ1MGZVN1BWUTByQmZZYVNzZXJvOEIrUFBiMkxBRUpTT0FrQ1Npd24rU3lPQ2dKU09DU0V6aTB3STZIOWdOQ0NNK29GTlpabmxub3hiT1k2R1NpdTYrcVhMZS9DU0U4TnZwaWp4SlV0aExZN3hDdFB4Q1Bjd1ZoaENqdnQxVE9QMWR0elNkM3ZnNEJpRWp4V3AvM3RXSGxmaVMrTTg3ckg5Y2FpSitQaUdMUDJlZXdzWU5WVDZzMy9TT21SS012bk93N1VuLy8xRVNQTGxHc3JSbmU2M2d5dzNLM3JGMUhYU3h3U09yNnM0V1RId3JzbFRmbmdHcWxSSmZIdElmWmFxcDhMOVM4MjBrSXkzdzV4WUdWVlcxQzdPVTRlWS95M2lhZkE5SFVvK3l3NW41ei91dDh0MzFycHYvU1p0cGFyb3ExamJVbmhCQit1bUx4OWhIWWFaN1REYnczZWJlbXluSkRzR0pJbTFVcDJlL1FTY3VHNzJhRE9tSkRDdXhIaEYvUnRRSjdCU1NyU0VBQ0VyaE1CQlRZTDlOcU8xY0pTT0NpRURpVXdJN3RDUWswT2ZyL1NaVndpRUpIUlBuZGhRQ0J1UDY5TVVLOVZtQWhTdmRiQmlWQzNVSmd2M3NVSW5JSlNFRkcxQ0lpRkR5MktDV2YzTjMyNmZmUklZUmYyOU15cHVTOTNpTVNsZ1R4QjRjUVh0RUlxUlRGM2hQTldOb0VZR2kxSWhkMStSc0tTd2dTbCtaS3lUS2lSbVNuWFU1NzBNZHpKNEhwcGtWSEN1eU5OOVNHMVhsM3NsbXpMTWUyaDlsM2lnanJSQkd6dWZONUs0MHRiVVY0dnJBWDQ4UUdiZlNXOThhVEg3ekgzOS9iU09FNmhGd1NNR09ac2l4c0ZGeVgrUDg4NzlnM2tTY2hWVXE1S3RZaXgxdnlTdXdyc0RQMlQ0K25ydTZjbUVodkxwRXRscWxrdi9PZWFOM3pkMXQwZEVIYVVHQy81VUo5M1BSdXVPMkpyTisxOFcvZTVYRDR6aWFud1YrY3dEZ0pZdUh2aGxIQkxDY3dSWWNnQVFsSTRIUUlLTENmemxvNEVnbElRQUl6Z1pFQ08rSUozcVo0UENPQXRDUXZKVWtrUHlqZVYxZ3FiRGp3MXVYSFJXM0Jnb1R4Yk9uUHZxL0FUa1E2NG5VcUdlVThyMUZDQk1JK0ZpZ3A4V1BKbEtSMDM5bVpSSmEvQVo2UytZSFlLMllnaUhPZllIV3dMR3NSbnJuN3BaUUU5cHRDQ00rdnZkRml2VklVNnI5TWRpOWZNcDBRd0h0K3JaVDhqTG1XRGFTckU2TDRicnZZYnlEU1lrbFJVemk5d0drUm9vYUpqci9YZE1yZ2RTR0VXeWN1SnJIcjc5UTBlbUoxY3UrL1ZBTEpZNGt0dkVlSjlFM1pwbkR2Y0xwaW42UzV1MHVDVlFrbmhVWVhJdksvT1c0eTFXeTRybG1hc0lITFNSczJtZTYyeCtEL0xFWjI4MTdaeWhycmpsTUU5eC9GeEorN1EvdmZ1RUh3aDRueGxqYXovaXErTjNLYkFWdDZuMjhoc0RPOTBwaGEzb043TE8wdExzM2xBcUhpbkNoNjlNbUdMZWV6YjFzSzdMY2ttR095TCt0enZmNGZwc0NHTDR4L0w1enJISjJYQkNRZ2daTWhvTUIrTWt2aFFDUWdBUWw4bEVET0c3YjNEMlhFb00rT1F1dzFVekpOUk5DV2duaUFpSHRENWJIOW5pU3BpT3RFUFNJMmJ1SFAzaXV3RTRISnNkK25yZ0JDWENlU2tSLzlJMzd3RXptS2VJNC8rbHJCU2dSdmU3enpXOWg5UmhSbkVXeVdwU2Q2Zlc0ajU2RTd3b3U5UnNSTzhjc2Q3YWJ1cjhkVEduRE5sYStNMWtFcFladHJXdWFLRU1rbUU2YzVXZ3JqUStUTWlhR0lwYTIrOXkzOVUvZFcweW1QZTA2bllENDJjU0VSK3R4aldOeTBSQ0czQ095WFFXd1p0VkhDZTVvVE01ekF3UktsUlFUSE5vcHhJWDdYRk41aldMSThwdUcwVktwZFRzQVFXVjlLamxvem5seHlXdktLM0RkeHY1Wk8wdEJmNmFSS0thbHBUKzZIclFUMnRjVFBoL1pqTDFrdVhmUlRJVFgzWktyT0tJR2Q3eWMyYVBudklRc2J5bnpmTFV2TE8rNHl2UE8zWEpQZTN3MWJqc0cySkNBQkNWd2FBZ3JzbDJhcG5hZ0VKSEJCQ0pSc0k5NFd2ZEtKTGxzclJIWVNpWXRvUjVSbHJXM0xicnYvSEVYa0YzVWVMMFdVd0RNVlFhUzJmL3paRVdGcXhmd2NoeDZCbmVoN2p1by9jQTF1alBJa01kOEljWDN1dmlXU25XdGExcXRrZDlBYnZUNlBtM3VZYUhWT1NpeExqWGlkd2w5S2ZOY1R4WDY3R0FXZVN1YkxtbUwzd0FtR1ZFR0F3eExvTm9YN2hDaHo3bjBpWW1zS20yQUk0bHhYKzZ6VXRIdnNPdGh3c0Q2MUhCaXZBdnVWcTlZaVBwWFdtL3NLYXhCTzV4QlpUbTZBbm51Tlp4Z2JsUTkyM0Z6ekNTbzJKNG55YnpsQnRkc2RHNGxZSnJHcCtQY2Q3K0duaFJDZWxCai9iMFRidE9YOXluenBMMVZLdVNyV0xML1k2SHRtNC9qNVhpRENIckZ5dC94cWZJZTBMRXZwUFVnN01DSTN5OGp2dVhtOE9jc2xQdTg5L2RUQzRoVHJqaExZVDIydUxlODRCZmEyMVZOZ2IrTmxiUWxJUUFKN0VWQmczd3VmRjB0QUFoSm9Jb0RkQ0RZSENFZ2Zub1JrZkdaM1BSb1JKckdLeUFsM3Z4ZVBkYWZzQWhBdUVFKytPZ29FOTI0YTJaV1ZFV3FKSmtkWUwwWHgxbmJSWXh1REhjRGpPcTFQR0ZlTHdBNDdrbC8rVXNacVkzZWVveVBYbDB4aEI0dVc5ZVFIRmNJTllsRnUvVXAyQi90RXI4L2ovOFlRd3ZNU04waHZKR0xKZXFZM2lwMGY5YkJOaVh6WWZDQkVmbUF4aHhweFBYZHR6ZlBTODZ6VXRIdXNPbDhWVDJLMDlLL0FmaVd0RnZHSkszbWZJWnh5YW9ub2FlNVovdFhZdnBUV2Fhdk56N2tQSWxteEVudDhoZGY3MnJqWXhFWDRyN0dRb2QrWFpqWlNVNUhvcFFoMHhwV0xYdWY3bnZjTEo5SlNoZThiVG9hMWZNZVdiTDNJMDREVldtdGhJL1ExaWU4K291dlphTVJtYXJUQVhucS9NNStTdjMzcmZDOVNmUVgyVzY2V0FudmJIYXpBM3NiTDJoS1FnQVQySXFEQXZoYytMNWFBQkNUUVJLQ1VXSzJtb2RRUGFJUVRmTFI3b3hGMys4VUs1Z2RqZEc3TGovNmFzZmZheHBBdzcwOXJPbGpVcVJYWUVUU3hlVUhFV2lzd0ljSHJpdzhnT095T2hVaEZ4SmlVMzNOcHpGaHprTFJ6bWR5cWxPaXpGSTI1eG1mMzg5SngvNTZvWnRvdVJUajJDREJyQ1U4UjdaNjhzOVpydGpDTWNjMlh1b1loejhyOW84ZjNXcExKbXZhT1ZXZk5sem8zTGdYMks4a3NCWFkyWUJFa3NYUkJ4UDNjdUxtS1VNcjdMR1hCc004OXdJWXJJdkpXOWwycHNXQWhRNUxzeDNaWW1PMjJoNFVNOWw0a1FNNGw5U08zQmY3cmQxZ01CQkdaRGU1WDcvei8yMGZ4bWJ3TnFiSzJtY1lKR1RZNmwxWmZLZnNWeHNQM09SdCtuRko3eDZKRHhzSTY4QjVNRlRZMVg5Q3gwS2tFck9SNjRKVER1enJhNjdua2k2WVRkNitObGxQTDYzdmZJejNqT0xWckZOaHZ1U0lLN0cxM3FRSjdHeTlyUzBBQ0V0aUxnQUw3WHZpOFdBSVNrRUF6QVJLQVloM1JXbktSdjJ0SDBHdjZJY29PRCsrM0gwQTR2bXF5SmVCNC9uZFZESXdrZ2tUUzkwVFByUW5zUkhsaVJVTWZOVFlKQ0I1RXVSUHBkNHhTNncwL2o2MFVIVm1LM0M1NUNiZk9PNWV3RGhFYUFmbXRqUTJXckdjUTdiRlk0VGxwS2FWSWZpeUFzRWo0NzlqZ1dpUXIxWG9zSDNMajVXODB4Tk9uZHlRa2JtRXdxbTV2VWtJRjlpdFhaQ213bDU3ZkxkZVNreUdJMVlqV1cyKzQ1c1k1VzhqOFNMem5lK2F6ZHFJRmZrU3dMd3ZXV0NRRGZIZjhnUHdDZkkva0JPMDFLNm01ZllSekVqSFAxbU4vUFFuOEpHN0cybWEzNUt4ZmFoaGcxME9rUE4vaFBXWFhtdTQ1SVlRZnFEd04wTlBYOGhyZWMxajlFTTJmS2x1Y3FOcGluTWRvUTRIOWx0VFpkTDcyR0l0eFFmdmszWURORTM5M1dTUWdBUWxJWURBQkJmYkJnRzFlQWhLUXdJSUFpZDd3V1c0dEpVOW5oRitpQzF2ZTZSejN4MU1Xei9HYldnZXpRWDBpK3hqelhUSnRFYldHQ0RHTEhhMWRyZ25zdEZlN09YSG9hTDdTWExFdHdSdWN5TlZjS1NXbkszbnViaDBwZUk5SlZIcDl3dklJc2U2UjhTUkE2N3F5TVlNWU01YzN4c2hYa2g3MmJNU2tMQmRJTG92QXRJd2dwYytjOVEyZjlWZysxTTUvenFtQTJIZDFDSUZvMWxNdXJNV0RvempiT3M0V2dmMHlpQzBJbnJ2SlJOZE9YclR5M3ExUHRQcjFrNDNaZFNFRUVwa2VzL0N1ZWxROGhWTnJiNE9GRjdZelBNTzVrdHZrNXIySnBkR3V6UXhKZXJGbXUydWlNYjQ3MmFTdDJYeVlOMGp4bnVja0RPK3JaYm50Rk1IK3FrWTdzTG1OMXB3UEtUWThTM3dmdjZUelhkcDdyOXdwZmsvY01kRkE3MlpzNzFoTzdicFJBanZmYlp6UVN0a05qbVRBczhsMy83SzAybUNOSEtOdFMwQUNFcENBQkxvSnRJZ3gzWjE0b1FRa0lBRUpmSlJBei9GV0lnZ1IxdjR0dzNITnYzUytqTVJ3aUNjSU5rVFI5UWlTV3k0bDQzN2l0REZBaE5wdXFZME1MSTJsUm1EbitqV1JIUkVGVWJmRzIzZExOcVcyaUloa0RmbXh1aXk1Nk1pNUhnSVNKeFpTMy8vWU0vUnMvdVRHaWlVU1B1eHpCQ2ppSFJaRVJKdjM4c1I2QmlIc3hnMVBYV0Rmd01rRW1Ld2wyRVVvSXpMNzBZdEpselkxUnR3WENPNk1HK3VLejQ5NUhlZ0g0ZjFlaFE2eG4wREE3azB1V1RzWG9uUHZOM0VpS3JpMXRBanNyVzJmUy8zU3lZdldPV0p6UW9KTWNtNzBKQXh0N2ErMWZrdFUrMW9TWmV4em5oMUN1Q2J4RE9ROHpGTWkrOXA3TmpWSDNpKzNMcno3K0p4STk1UUFXV0xXTTViV05SaFpIOXMxNXAwcXZYWmlJOGQ3eUxaSENlemtBbnBJekFWMHlQbHd3b3RvNm1WUllEL2tLdGlYQkNRZ0FRa01JNkRBUGd5dERVdEFBaEpJRW1nUlJoQWs4VmNubW5BdFN1NHJZcVRkOHIyT3FJNTQ4aXZURHlvaXNYTyt0TWRjcm1VMCs1cElValBXV29HZHRsTFdIeVI0STNxU2FQRmpiMFRreEpxSHh3MFRiSGNvdGY3ZlJJWWlwbU4vd2lZSFpjMVdvWVo1cWc3M0pWWXhzOVhFRnZjZjR2TFdrWGRzdEpEUWxPZGxyWkJNR0VFZEwyZktvY1gxdGZGZDlNOFYyTmRYa1BmOHo0UVFpSWh1TFFqcVdLVHdqeVRiV3o5THJlTnBxVitLYXVlZFRTNlNOMWMweUR2a3krUG02WU5pL1ZKQ1h1eGJYaGFmZWFMa2VmZmlyYjUxeVFtUXVYN2VFTWZTZTlKcjYvRzN0bGNLRHRqbkZFenJPRTYxdmdMN3FhNk00NUtBQkNRZ0FRa2tDQ2l3ZTF0SVFBSVNPQ3dCRWxiaVAwMGtMTkdtdTBrTUVVaEo2RWwwNzF0Q0NQL1VJSWp2K2xPL04wYUVFWDFOcE84V291Wm9Ta1FXL3RUa3kvMndFQUkyS0loQSs1UVdnWjErdmpaR2NCTFppMmhCRk9HaEVyenRNOC9aMHg3cklSSjl0b2craUJ0Y3d5Yk80Nkkxd0Q1anVVelh6clpNaUhtY0pMaW9BdGNwcnBrQ2U5MnFFRm45dXAzVEM4dXJFSUwvTnA3T3VDRnVvdkZPdXdqZkIyc0VVbEh0dlRrN0VOc1I1dCsyOGh5ekVjdHBNaUp3bnpsbzR4V3hIMHVhWEY0UTFwU2toYTg4OFUzenRmV2JQeThsTjJVOUhoQVR2dGEyZDI3MUZOalBiVVdkandRa0lBRUpuRFVCQmZhelhsNG5Kd0VKWERJQ254bHRaTjUvUWVmTmR4SVJpaVFVM2JjUWZYNmZSU05FSnhQMW1STE82WHRPc29ZMy9VVVRvZGlnSUlMekZLUHQ5MTNMVTd5ZXpRa1N3dUs3cnJpKzdRcmRKckpsTTNLM1lJV0IvLzVGaXJqZWxzeVZyYzM1QTNodklicitjZlQyL3N1NHNYcFprdHJ4blVIMCtjdmpwdlJJNXRneXZhL2lSTm5JTWRqMjVTSEE1Zy9lL012QzN6STF6emNiVVR3Zi9IZTNrQXljNUplSC9udmg0ME1JbjVDWXo0ZDhyMStlbTlxWlNrQUNFamhuQWdyczU3eTZ6azBDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVNHRVZCZ0g0YldoaVVnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTT0NjQ1Npd24vUHFPamNKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaElZUmtDQmZSaGFHNWFBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJSUZ6SnFEQWZzNnI2OXdrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhnR0FFRjltRm9iVmdDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVRPbVlBQyt6bXZybk9UZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0NCWVFRVTJJZWh0V0VKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEk0WndJSzdPZTh1czVOQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFaGhGUVlCK0cxb1lsSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWpnbkFrb3NKL3o2am8zQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTR0VaQWdYMFlXaHVXZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0NCY3lhZ3dIN09xK3ZjSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJWUJnQkJmWmhhRzFZQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFenBtQUF2czVyNjV6azRBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnZ1dFRUZOaUhvYlZoQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTT0djQ0N1em52THJPVFFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQklZUlVHQWZodGFHSlNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJNEp3SktMQ2Y4K282TndsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRWhoR1FJRjlHRm9ibG9BRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnZ1hNbW9NQit6cXZyM0NRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0dBWUFRWDJZV2h0V0FJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQk02WmdBTDdPYSt1YzVPQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUlGaEJCVFloNkcxWVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRWpobkFncnM1N3k2emswQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FTR0VmZy84M3k0TFpCQUROSUFBQUFBU1VWT1JLNUNZSUk9Ii8+PC9zd2l0Y2g+PC9nPjwvZz48L2c+PGcgZGF0YS1jZWxsLWlkPSJlMSI+PGc+PHBhdGggZD0iTSAyMTMgMjA4IEwgMjEzIDI0MyBMIDYzMyAyNDMgTCA2MzMgMjY3Ljc2IiBmaWxsPSJub25lIiBzdHJva2U9IiM4Nzk2YTUiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBzdHJva2UtZGFzaGFycmF5PSI2IDYiIHBvaW50ZXItZXZlbnRzPSJzdHJva2UiIHN0eWxlPSJzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDEzNSwgMTUwLCAxNjUpLCByZ2IoOTksIDExMiwgMTI1KSk7Ii8+PHBhdGggZD0iTSA2MzMgMjc1Ljc2IEwgNjI5IDI2Ny43NiBMIDYzNyAyNjcuNzYgWiIgZmlsbD0iIzg3OTZhNSIgc3Ryb2tlPSIjODc5NmE1IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgcG9pbnRlci1ldmVudHM9ImFsbCIgc3R5bGU9ImZpbGw6IGxpZ2h0LWRhcmsocmdiKDEzNSwgMTUwLCAxNjUpLCByZ2IoOTksIDExMiwgMTI1KSk7IHN0cm9rZTogbGlnaHQtZGFyayhyZ2IoMTM1LCAxNTAsIDE2NSksIHJnYig5OSwgMTEyLCAxMjUpKTsiLz48L2c+PC9nPjxnIGRhdGEtY2VsbC1pZD0iZTIiPjxnPjxwYXRoIGQ9Ik0gNzUzIDIwOCBMIDc1MyAyNjcuNzYiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzI4NjQ5NCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIHBvaW50ZXItZXZlbnRzPSJzdHJva2UiIHN0eWxlPSJzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7Ii8+PHBhdGggZD0iTSA3NTMgMjc1Ljc2IEwgNzQ5IDI2Ny43NiBMIDc1NyAyNjcuNzYgWiIgZmlsbD0iIzI4NjQ5NCIgc3Ryb2tlPSIjMjg2NDk0IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgcG9pbnRlci1ldmVudHM9ImFsbCIgc3R5bGU9ImZpbGw6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7IHN0cm9rZTogbGlnaHQtZGFyayhyZ2IoNDAsIDEwMCwgMTQ4KSwgcmdiKDExNSwgMTY3LCAyMDgpKTsiLz48L2c+PC9nPjxnIGRhdGEtY2VsbC1pZD0iZTMiPjxnPjxwYXRoIGQ9Ik0gMTI5MyAyMDggTCAxMjkzIDI0MyBMIDg3MyAyNDMgTCA4NzMgMjY3Ljc2IiBmaWxsPSJub25lIiBzdHJva2U9IiMyODY0OTQiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBwb2ludGVyLWV2ZW50cz0ic3Ryb2tlIiBzdHlsZT0ic3Ryb2tlOiBsaWdodC1kYXJrKHJnYig0MCwgMTAwLCAxNDgpLCByZ2IoMTE1LCAxNjcsIDIwOCkpOyIvPjxwYXRoIGQ9Ik0gODczIDI3NS43NiBMIDg2OSAyNjcuNzYgTCA4NzcgMjY3Ljc2IFoiIGZpbGw9IiMyODY0OTQiIHN0cm9rZT0iIzI4NjQ5NCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIHBvaW50ZXItZXZlbnRzPSJhbGwiIHN0eWxlPSJmaWxsOiBsaWdodC1kYXJrKHJnYig0MCwgMTAwLCAxNDgpLCByZ2IoMTE1LCAxNjcsIDIwOCkpOyBzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7Ii8+PC9nPjwvZz48ZyBkYXRhLWNlbGwtaWQ9ImxvY2FsIj48Zz48cmVjdCB4PSIxMDMiIHk9IjQ1OCIgd2lkdGg9IjU0MCIgaGVpZ2h0PSIxMTAiIGZpbGw9IiNlYWYyZjgiIHN0cm9rZT0iIzMzNTU2ZiIgc3Ryb2tlLXdpZHRoPSIyIiBwb2ludGVyLWV2ZW50cz0iYWxsIiBzdHlsZT0iZmlsbDogbGlnaHQtZGFyayhyZ2IoMjM0LCAyNDIsIDI0OCksIHJnYigyNCwgMzEsIDM2KSk7IHN0cm9rZTogbGlnaHQtZGFyayhyZ2IoNTEsIDg1LCAxMTEpLCByZ2IoMTQ0LCAxNzMsIDE5NSkpOyIvPjwvZz48Zz48Zz48c3dpdGNoPjxmb3JlaWduT2JqZWN0IHN0eWxlPSJvdmVyZmxvdzogdmlzaWJsZTsgdGV4dC1hbGlnbjogbGVmdDsiIHBvaW50ZXItZXZlbnRzPSJub25lIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiByZXF1aXJlZEZlYXR1cmVzPSJodHRwOi8vd3d3LnczLm9yZy9UUi9TVkcxMS9mZWF0dXJlI0V4dGVuc2liaWxpdHkiPjxkaXYgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiIHN0eWxlPSJkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogdW5zYWZlIGNlbnRlcjsganVzdGlmeS1jb250ZW50OiB1bnNhZmUgY2VudGVyOyB3aWR0aDogNTE0cHg7IGhlaWdodDogMXB4OyBwYWRkaW5nLXRvcDogNTEzcHg7IG1hcmdpbi1sZWZ0OiAxMTZweDsiPjxkaXYgc3R5bGU9ImJveC1zaXppbmc6IGJvcmRlci1ib3g7IGZvbnQtc2l6ZTogMDsgdGV4dC1hbGlnbjogY2VudGVyOyBjb2xvcjogIzAwMDAwMDsgIj48ZGl2IHN0eWxlPSJkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGZvbnQtc2l6ZTogMjBweDsgZm9udC1mYW1pbHk6ICZxdW90O01pY3Jvc29mdCBZYUhlaSZxdW90OzsgY29sb3I6IGxpZ2h0LWRhcmsoIzAwMDAwMCwgI2ZmZmZmZik7IGxpbmUtaGVpZ2h0OiAxLjI7IHBvaW50ZXItZXZlbnRzOiBhbGw7IHdoaXRlLXNwYWNlOiBub3JtYWw7IHdvcmQtd3JhcDogbm9ybWFsOyAiPkxvY2FsRXhlY3V0b3IgLyBMZWFzZVN0b3JlPGJyIC8+5pys5py6IGFyYi5kYiDCtyDov57mjqXlrojljasgwrcgU2Vzc2lvbkdhdGU8L2Rpdj48L2Rpdj48L2Rpdj48L2ZvcmVpZ25PYmplY3Q+PGltYWdlIHg9IjExNiIgeT0iNDg5LjUiIHdpZHRoPSI1MTQiIGhlaWdodD0iNTMiIHhsaW5rOmhyZWY9ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFDQWdBQUFEVUNBWUFBQUFiTUlPYUFBQUFBWE5TUjBJQXJzNGM2UUFBSUFCSlJFRlVlRjdzblFmNEJVVjU3dCtyU0N4WHhZcUp2U3YyWEFVc0lCWUVrY1Fnd1c1TXhGNWpTMkxIRWdWN1FKUllFbTlRSWNZU095b3Fpb3FvbU5qMXFpaXhvcUtpR0l6MTdpdHp6T0ZrZDZkc09idm4vT1o1ZUZEK3MxTitNenRuZHI1M3Z1OS9pUVFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQXdNWVQrRjhiMzBNNkNBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUNBRUFnd0NTQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUpiUUFDQndCWU1NbDJFQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSUlCQmdEa0FBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFTMmdBQUNnUzBZWkxvSUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFRQ0RBSElBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaHNBUUVFQWxzd3lIUVJBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnZ0VDQU9RQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaERZQWdJSUJMWmdrT2tpQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFJRUFjd0FDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNDd0JRUVFDR3pCSU5ORkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQUlCNWdBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQmdDd2dnRU5pQ1FhYUxFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFRQ3pBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSURBRmhCQUlMQUZnMHdYSVFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFnZ0VtQU1RZ0FBRUlBQUJDRUFBQXR0QTRQOUsrck9HanY2SHBOMGxmWHNiUU5CSENFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBWUhzSklCRFkzckduNXhDQUFBUWdBQUVJUUdDYkNDQVEyS2JScHE4UWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUJBTFFFRUFrd01DRUFBQWhDQUFBUWdBSUZ0SUlCQVlCdEdtVDVDQUFJUWdBQUVJQUNCWVFqOGIwbS9MK2s2a25hUWRMM3cvMTNienlTZExPbS9KUDFTMG1jbG5TbnBERW0vR3FZNWxBb0JDRUFBQWhDQUFBUWdBSUZ5QWdnRXl0bnhKQVFnQUFFSVFHRGJDSnkvT3VSNm1LU3JOM1Q4QjVJT2xmU2piUU5EZjJkQllDaUJ3QTBsUFhoTkJMNGs2WWh3S0wybUpsQXRCQ0FBZ1kwaGNBRkpqNUIwbFpvZS9WclNpeVY5YWsyOVBWalNiZzExbnkzcEJaSyt0cWEyVVMwRU5wWEF6cEwybDNRM1NYdEtPbDloUjc4bDZkMlNqcFYwQXZ1MlFvbzhCZ0VJUUFBQ0VJQUFCQ0RRS3dFRUFyM2lwREFJUUFBQ0VJREFSaFB3clptM1NycGxReStKNDc3Und6Lzd6ZzBsRVBnalNXOWVFNTMzaDRQcnM5WlVQOVZDQUFJUTJDUUNOdzNHdXgxck92V0Y2bTk3U1RwOVRSMXUrdzM3ejJDOFBHVk5iYU5hQ0d3U2dmTksybGZTVXlUZFpJQ09XV3owRDVJZUwrbDdBNVJQa1JDQUFBUWdBQUVJUUFBQ0VFZ2lnRUFnQ1JPWklBQUJDRUFBQWhDUWhFQ0FhVEJuQWdnRTVqeDZ0QjBDRUlEQXNBUjhObUtQTEE5cHFPYXAxWDgvWk5nbXRKYU9RR0NOOEtsNkt3aDREYmlWcEpkS3V1ckFQVWJVTXpCZ2lvY0FCQ0FBQVFoQUFBSVFpQk5BSUJCblJBNElRQUFDRUlBQUJNNGhnRUNBbVRCbkFnZ0U1ang2dEIwQ0VJREFzQVN1TE9sRVNaZXRxY2Foay9hUTlKbGhtOUJhT2dLQk5jS242bzBuY0RsSmgwczZZS1NlSWhBWUNUVFZRQUFDRUlBQUJDQUFBUWcwRTBBZ3dPeUFBQVFnQUFFSVFDQ1ZBQUtCVkZMa215SUJCQUpUSEJYYUJBRUlRR0FhQkI0ZzZhaUdwamh1K0wway9YS05UVVVnc0ViNFZMM1JCRzR0Nlo4bFhYTEVYaUlRR0JFMlZVRUFBaENBQUFRZ0FBRUkxQk5BSU1ETWdBQUVJQUFCQ0VBZ2xRQUNnVlJTNUpzaUFRUUNVeHdWMmdTQjdnUXVLdW1QSkQwaXhJeCtlL2NpS1dITENGeEEwaHNsN1ZQVDc5OUkyay9TY1d0bWdrQmd6UU5BOVJ0SjRFNlNMQUE2MzhpOTYwc2djRjVKdTRUUUtCWTQvTG1rczBidUM5VkJBQUlRZ0FBRUlBQUJDTXlVQUFLQm1RNGN6WVlBQkNBQUFRaXNnUUFDZ1RWQXA4cmVDQ0FRNkEwbEJVRmc3UVIybG5SUFNmZVRkTTJsMXZ5eHBMZXN2WFUwWUc0RWJpcnBCRWs3MWpUODQ1SnVWd2xRZnJqbVRpRVFXUE1BVVAzR0VkaFYwanNsN1pUUnM1OUsrb2lrejBrNldkSi9MVDM3ZTVKMmsrVGZwOTBsWGFHbDNDNENBWXNaM1BhSFNiTEFZU0Z1ZUwray9SRUlaSXdtV1NFQUFRaEFBQUlRZ01DV0UwQWdzT1VUZ081REFBSVFnQUFFTWdnZ0VNaUFSZGJKRVZpWFFPQTE0V2JxRUVDK0wrbURhM1o3UFVTL0tCTUNUUVJzZkhtRHBEOW95SUJBZ0xtVFM4Qm5Ja2VFRzdoMXp6NjErbytINUJZNlFINEVBZ05BcGNpdEpYQkZTZStXZFBVRUFtZFhSditYaEhYaXRNcFRqYjJLcENUZjdyK1NwQU1sM1YvU1ZaY2VLaEVJbkYvU0MwSlo1NmxwQUFLQmxGRWhEd1FnQUFFSVFBQUNFSURBN3dnZ0VHQXlRQUFDRUlBQUJDQ1FTZ0NCUUNvcDhrMlJ3TG9FQW44ajZiQXBBcUZORUpnaEFZY1NlSE5MdXhFSXpIQlExOXprSzBzNlVkSmxhOXJ4STBsN1NQck1tdHZvNmhFSVRHQVFhTUpHRVBBNXFBM3REa3NUU3hZSFBWZVNQUWQwU2E3ejJwS2VJZWtBU1NVQ2dkaDNHQUtCTGlQRXN4Q0FBQVFnQUFFSVFHQUxDU0FRMk1KQnA4c1FnQUFFSUFDQlFnS3hnNm4vQ0M0MXYxMVlQbzlCWUVnQ0NBU0dwRXZaRUJpSEFBS0JjVGh2VXkwUERUZUQ2L3JzMk9UM21vaVhGZ1FDMnpRcjZldVFCSzRiUkVGdG9RVXNEanBJMHZFRE5HU1hLcXpCQzZ2d0JJK1RkRXBHK2JIdk1BUUNHVERKQ2dFSVFBQUNFSUFBQkNBZ0lSQmdGa0FBQWhDQUFBUWdrRW9nZGpDRlFDQ1ZKUG5XUVFDQndEcW9VeWNFK2lXQVFLQmZudHRlMmtWRERIS0hybGhOZGlPK1h5VjhQRzRpa0JBSVRHUWdhTWJzQ2RncndGTmFldkZyU1hlVzlQb0JlK3F6V0ljSitGVkdIYkh2TUFRQ0dUREpDZ0VJUUFBQ0VJQUFCQ0NBUUlBNUFBRUlRQUFDRUlCQU9vSFl3UlFDZ1hTVzVCeWZBQUtCOFpsVEl3VDZKb0JBb0craTIxM2V2cExlcnZwemtaTWw3U1BweklrZ1FpQXdrWUdnR2JNbWNERko3NUowNDVaZUhDbnBZWldJd0NLaEthWFlkeGdDZ1NtTkZtMkJBQVFnQUFFSVFBQUNNeUNBQjRFWkRCSk5oQUFFSUFBQkNFeUVRT3hnQ29IQVJBYUtadFFTUUNEQXhJREEvQWtnRUpqL0dFNmxCenRJT2xyU1hSc2FaQVBoaTZiU1dFa0lCQ1kwR0RSbHRnUnVFTUlMWExpaEJ6K1h0RmNsRGpwcGdqMk1mWWNoRUpqZ29ORWtDRUFBQWhDQUFBUWdNR1VDQ0FTbVBEcTBEUUlRZ0FBRUlEQXRBckdES1FRQzB4b3ZXbk51QWdnRW1CRVFtRDhCQkFMekg4T3A5S0F0RHZrM0plMGg2YXRUYVN3Q2dRbU5CRTJaTTRIYkI2OGhUWDM0dUtUYlNmcmhCRHNaK3c1RElEREJRYU5KRUlBQUJDQUFBUWhBWU1vRUVBaE1lWFJvR3dRZ0FBRUlRR0JhQkdJSFV3Z0VwalZldEFhQkFITUFBcHRHQUlIQXBvM28rdnJURm9kOGlpN0c4U0N3dnJsQ3padEQ0QjZTWHRYU25Ta2IyV1BmWVZOdSsrYk1JSG9DQVFoQUFBSVFnQUFFTm9nQUFvRU5Ha3k2QWdFSVFBQUNFQmlZUU94Z0NvSEF3QU5BOFowSTRFR2dFejRlaHNBa0NDQVFtTVF3ekw0Uk8xZHV4RStRZEsyYW5relZ4VGdDZ2RsUE96b3dBUUovTGVsUUJBSVRHQW1hQUFFSVFBQUNFSUFBQkNDd2RnSUlCTlkrQkRRQUFoQ0FBQVFnTUJzQzJ5QVFPTCtraTYyTXlLOGwvVURTTDJZelV1YzA5SHlTTGk3cFBDdnR0dHZVbjYyaEw5NTN1ajA3cnRSOXRxUWZqZEFlQkFJalFGNWpGVHRKdXNCUy9iK1NkSVlrLzN2cWFXcnY2cFI1elVrZ3dMaE9keWJkVmRJeERjMTdwNlFESlBtM2FVcHBrd1VDYzFxLzUvUmVuMWZTSlNUNTM4dHBYZnZBMWZlcGJsOW9nWTczM0w4WjZPVkRJREFRMkpwaVY5OXJaeGw2Zk1mcjNYQTFyZU85R0s0M2xBd0JDRUFBQWhDQXdLUUpJQkNZOVBEUU9BaEFBQUlRZ01Da0NHeWFRT0Npa3ZhVWRLQ2tXMG02UW9TMkJRS2ZrL1EyU1crc0RBaWZuSkJvd01LR1cwaXk4V3cvU1ZlcEVRWXNkOCtpaDFOREhOYTNTUHBnejZJQnQrZjZrdTRnYVI5Smp2VjhvUWpmYjBseVcxNVo5ZU9VQWRodW0wQ2dUdXl5T2dRL2tYUldqNnRNaytHa2I4T0U2L2sva3U0bTZZNlNydGpTaDUrRytmMEtTZStTZEdhUC9TMHBhc3gzdGNrNHRHaDMzK1B2Y21OeklLWE9PcVBDb3MxN2gxanNUZXp2TGVuZENRUFR0NEJrekhGTjZONy95TkxHdEkyRnp3dXVMZWtCWVMzM2I0dkgyT25iVmF6dUQxZHIrM01rblZ6U3FEVTlZeUdSZjhQOTIxU1h2SzRjdTZhMnRWVzdLUUtCT2EzZk5xN2ZUTkwra202ZHVMZjZiSEJoLzFwSnB3MW82SzZiSzVjUGU4Q0RKTzJlc08reTV5L3YvLzYxMmcrL040anFocHo2WGlmM2ttU0J6dTBsWGJxbE1vc1kvSnZ0UGFHOWZmUWxiSTJKekw0WjJIMWpTQkF0WmJmOWhub2ZmWFJvWDEwUkg1RjBMMG5lOThSU3ltOXhySXpGMy8wNzRYMlkxMVRQdlQrc0VWdXZsdVh4L1lTa2Y1RmtVZGFRNzBxWGZZbVpXekQyNStHNzVsS2hJMmI4WlVsK3oxL1FVVkEyaGZjaWRhekpCd0VJUUFBQ0VJREFoaEZBSUxCaEEwcDNJQUFCQ0VBQUFnTVMyQVNCZ0ExbSswcDZZc3NCV3lwQzN5NThpYVRuQmtOSjZuTjk1Zk0rN25xU25oWDZ0T29wSUtjZUN3WWNrL1dabGRIMWl6a1BMdVgxQVp6WlBydzZjTDV0WVJtTHg4eldiVGxjMG84N2xyVjRmTnNFQWxlUzlKNWcwR2hDMkhlODJnZUdkNktwdm84Rm80QnY5cGVraTRUNTlmZ1Zid0U1WmRrdytMZ084enlucmtYZWRiMnJ2MSs5a3pZWU5JbWYvcWJpZUZoSmgxcWVzWERqQTVJdTJKQW5wYzYyZDdXdjV2WVJFc2ZqdXF1a0owOWtEVzVqVTdMKzdSS01jemVKUUU4WjA3N0dyWTl5YmhvTWpxdmViRnoyRjRJQjgvUStLdXE1akxrTEJPYXlmbHNVWUdQZ2d5cGo3RlU3anFIbms5K1B0dzdvemNaN0x3dGRuOUZEZTc5U3RmTkp3V2o3eTQ1OVgzN2N2MFhlZDN1UFVMSlg5UjcxcU5CSEM1TzZKSXRwMzFlVnRVTkxJZXNVQ2NWK1E3djBmZm5aUHRadHY5TWUwMGRJK29PT0RmUGNlMXFZZTMxN2I0a3hyV05oSWRuRHdweGJpT0xxdXRobEx6R2w5NkxqOFBFNEJDQUFBUWhBQUFKekpZQkFZSzRqUjdzaEFBRUlRQUFDNHhPWXMwREFleDU3Q1hocER3ZW9kZVJmVk4xNGYwS1B4dXpZNktZYWJtTGxyUDc5bnlUNUJtNU84aUhhZmNNaG1nOEwrMHhmRDdlaGJNanVta29NWkNsMXhtNmo5WEVJbTlLT3VqejNETGZOMnA3M2JUT0xRN3FtbUNEQmJtVXRIRG14b0NJTGUyeXNlWFlIWWNCcXRVY0VvVURLVGJ1Q0p2L3VrWFcrcXdnRW1rZXV5NkcrU3gxcVhGMjJSU3dXV3ZWNWd6Vm4vZlB2NVVPcUc2Qi9sMmpNVytjYWwvdHV1bTkrOTkyL3V2VFU2ajhla2x2b1NQbm5LaENZeS9wOXVjb1YvOU9ET0tEdklYMXo4TUx4blI0TEhtcGYyNmR3MFB0RHYwK1BTVnhMWW5qc3ljdDc3UmQyOERMbGNiWnc3ckl0bFhtZjRyM2RPandPeFl6Wk1VYXBmKyt5YnFjYXoxUGJzcHpQb21DTERud3p2NjhRVVRHbXF5dzhSL3c3Zk9PRURwVHNKYWI0WGlSMGxTd1FnQUFFSUFBQkNHd2lBUVFDbXppcTlBa0NFSUFBQkNBd0RJRzVDZ1F1VTdreGZYRndFVGtNbVhOSy9iNmt1d1EzclVQVlkxZVg5aGpnV3kxRHBCeUJnUGVSZHc2aWk3NkZBY3Q5ODgyeGc0TmI4UzR4YVhNTVpEbHNweXdROENHa0QxbnRIcmtwMlIyeVhTZC9ONmZUSzNrOUYreGkxYmZJbXBKdk4vcW1kZTRZK3YyMWdPRTJIZHJYMXZjL0NXNWkreTUrQ3U4cUFvSG1VUzA1MUhkcFE0L3Jvc1UyaEZsNFpYZlN1ZTlNWGE5VDF6Ky95NC9OOUN6UnhkRFU5M3NYSzg5R3dRODFoQ1g1VWVWMVpROUpuNGtWc3FhL3oxRWdNSWYxZTZ4MzJtR2QvRnY4K1I3bWo5dHNZYW85SGZTZCtoSUlPRFRKRzZwd0hkZnF1NEVoOUlCditmK2dvR3k3YzM5OUNNWFE5cmc5RlZtVTJKZVJPcldwTVdOMmFqbXhmS1hyOWkwbE9XUlRWKzhhc2ZiWkE1WkZybjJJYW1KTWwxazRWSUxERkYwOTFzRHc5OXk5eEZUZmk4VHVrZzBDRUlBQUJDQUFnVTBqZ0VCZzAwYVUva0FBQWhDQUFBU0dJekJIZ1lCZEkvc2cwSEZaeDBnMlp0dEllbVJQUnAzbE52dUd0bU4xcHR4b0tlMXJqa0FnTmg5SzIxRDNuTGxhak9DeExFMnBCckxjOHFjc0VIQmZyaFBjYVYreXBXT2xCOFdMSW0xVU83NEtDMUhuc3R0NVNrTUwrQ0RWcnBrZDkzeW9aQzhWZnl6cDMzdXNZQ3J2S2dLQjVrSE5QZFIzU1dPTTYycUxueGM4WFZndzBDV2xybjkrRjN4ek1zY05lTmYxbzB1L2NwOTE3UE5qR2g0Nk5uaXM2ZE8xZW03NzJ2TFBUU0F3bC9VN1pqenNjd3kvVkFsVTlnN3gxa3ZMdGVqQ3dqLy83ZzZSK2hBSTJGdVE5NnM3RGRIQVVPYkhnL0MzeE5OSzJ6cXczR1I3RlBuYkR0NEtTcm8vMW56TVhiZnRDZVNoa3A2ZitmdFF3bUR4VEYvN3N4alRCUXQvMTFqVTRuYzBOZVhzSmFiK1hxVDJtWHdRZ0FBRUlBQUJDR3dRQVFRQ0d6U1lkQVVDRUlBQUJDQXdNSUdZUVRqbmtHVGdwdjYyK0R1RVE5U21XTmhEdHVHdnE1dW16K2xSSkhCRFNYWlJPN1RRWWFvQ0FZK1Y0ODd1MmVHMmQ2cUJMSGRlVEYwZzRQNDhXdEp6V3pyV2hXM01TMEZwYUFFTFlkNVIzWkpzRXpia2psVlQvajZNTm91eXAvU3VJaEJvbmlHNXYxZGpqV3RkaTE4V1hPSjNFUW1rckgrK0tmdmVJQ3JLZWJkeURVMDVaZmVaMTJ1VnhRLzdOQlI2eC9BNzIyZWRmWlkxSjRIQW5OYnZtUEd3enpGMFdUYWMzNlBRNkh6UklKUWN3cVBPb3A5ZEJRSjNxcndHV0d6VEZyZTlMNmErWlg1Z1FTaUFTMmVzZGE3RG5ocEtoQWdsL1J4clB1YXMyeDVMZXkvelhuTHNaTTh1WHJNLzJxSGlHTk1GQzRjMmVFbG1QYWw3aVRtOEY1bGRKenNFSUFBQkNFQUFBcHRBQUlIQUpvd2lmWUFBQkNBQUFRaU1RMkJPQW9GZEpiMHo0L2FTYnlMOVkrWCsxZi8yalpYbGRJbGdtUDVUU1hhdG1YS3pzbzhiNzRzMjVCNjArekR0bjBQL1B5SEpCdHBGOGcwZ3g4NzI0YkpkZC83QlNsLzdGZ2lZcHcvRFQ2aHVabjRsdUlOZGRwZnQyMlZtNnBpeTl2WVFTM1pyNmdPOGtodWVLUVl5RzhwejB4d0VBallxdkNWeTQ5RHh4aDlaSUdyeFBMSWI5S1pVRWxvZ3g4WHI2NEs3Mnc5V2NZN1BXbXFFNTViZm5YdUZ1UjU3YisycHdGNHF6czZkQUV2NXAvYXVJaEJvSHN6VVEzMlhrRE1mbmYrTGxkY0xyNlVmRHY5N3VSWCtIYjFaaUcvdDIvcXBSclN1b3JPVTllOEIxZnYvbElMNW4yTm9LaWkrdDBkdUduNkw2anlkZktINjIxNlNUdSt0dHY0TG1vdEFJT2Q5bWNMNkhUTWVXcGhqZ2FaL1EvMU9lNSt3L0Z2amZaWFgycnRYLy8weGxRZXBTMFdHM25zZzd5ZDlVemtuK2V6dWFkWCs1NGtKRHgwbnliL3A5dDVqTi96TCt5NnZRVzZ2MXlHMzJiZWFsMzhmdXdnRVV2ZmVadnJLOEkvM3FUOExmWElmelcrM0t1elJneVh0bTlEWG9mWXV5MVgvcDZUN2hiMzEwQ0VIWXZNeEFVbFNsdFIxT3pmc2pNZldjL3RmcTkrNVUxYmVGVGZzbXVHR3ZvVWQvdDhwcWF1SU04YlVMT3lWNDBSSkRrT1RrMUwyRW5ONkwzTDZUbDRJUUFBQ0VJQUFCRGFBQUFLQkRSaEV1Z0FCQ0VBQUFoQVlpY0JjQkFLcGg5TSt4UExCNHFHU3praGs2TGl2RHd1SHRESERUaCszWGxMNzR1YjdJUGd2SloyY0VUUFZIZ2xzRkxiYlVQZW5ENEdBaFFBMkNsc1k4Tk5FcnQ2VCtwRDZOWkViNDExaVJLY1l5RFpWSU9CaDhJRzdid2MzZWRUd0FiZzlOUGhBTnpWZExzUnFiWW94WEJKYUlQV0dwRzhDUHp6eFZwL2JlWGh3Ujl6V3R3ZEpPaXExOHl2NXB2aXV6bFVnWUhHSGIzdlhKYnYrOWJ2Y2xPNGQ1bVJzR0czazhib2ZNL2FremtmWFo0T1hEWGhmalZVZS91NDExNktVRjFkdW15OFNlYWFyNkN5Mi9qbWV0dzBrcThZUkd6K2VHWXlqWGg5dGFGd1lSRzFROTQxUzN4WStMTEhQNjhybTM1Z2pnaWVHdWpiWWxmZ2g2MnBjWXIxekVBaWt2aTlUV3IrYmpJYzJzajg5YzAvbGRldXhranlmMnBJRnJBZGtDdEpTd2dVNVZJNjlFM3d1Y1U0NW05Y2hHK0tmRklTYXBRS0IxTi9BRndWUjZJOFQybWhCcTlmVk5nR3AxMGEzMzNIamM1TDcvZExnSFNEMU9lOXAvQTNnMit6TG9vdlU1MVB5dVYwWGJ4QWoreHZFZ3N6ZEd3cjZTQkJGcHV5OWYxSmp2SzhyMW9aOC96YkVSSmIrcmJDUXphSEFVcjNkWEZtU3crajRYWWlsVW04UkxqZEZJT0IzdDA0Z1o5N2VGeTRMV2Z3OTdMbHBnYXdGMS81K2FmcCttTnQ3RVJzSC9nNEJDRUFBQWhDQXdJWVJRQ0N3WVFOS2R5QUFBUWhBQUFJREVwaURRQ0ExZnFRUFVlOVMzWjc2ZjRXOGJIRDBvV1hNemFzUExPMVdjdm0yV1dxVlBpUjh0YVNESWcvMGNiUEpYaEo4RU80RHNyOUliT0RxZkxBd3dBWldHNkZqUnJlbUtsSnUyWlFhY21JR01oKzRickpBSU9YMllZN3I0MWg1SmFFRlltVjYzdGdZOEtoS1NHSWpRODQ4czFIenI0S3hzMm4rZlZuU3JXdThpTVJlaWFtK3EzTVZDTFR4am5uczhLMTgzL1R0SSswUWpNcjJXdEtXN0hYR25pcHNXQ3RKRmdmWWVQMW5rWWQ5eTkwQ2lSSlgxN0gxNzVoZzNGazBJZlU5ODN0bFFVZXF5SzZFVHgvUDJCRFZkRHUwaS9Dc2o3YWxsakYxZ2NCYzErOVY0NkhGQ3hhK3BBcDlWc2N2NWNhMWZ4OHRzRGtwZGZDcmZCYXd0SG40NkdKQWRUUGM3bHNGZ2NFak12ZXRLYitCM3F0YWlPVDFPY2U0N24ycDE4ZURXMWlWaWhxOGwvZDQyL3RQVHJKSENlOG43QzFtekJUN0RpdmwwTlNIRzRVOXZkZjR0bVNSbTNta0NCUHEzcGNVZ2JDZnM0Y09Dd3B5VTB3Z1lBSHA3U3F4MjdMWTFSN1EvUDMxdFVobFp1TisxNGtpNXZwZTVQSWxQd1FnQUFFSVFBQUNNeWFBUUdER2cwZlRJUUFCQ0VBQUFpTVRpQjFNcGJoWkhMckpLZkVqZlN2c3JnVXhTMWZiN3BzOHZsWGlHeVJ0cWZSV2NzeDF1K3M4dFFxTHNIOGxkdmg4RDJDOUw3UlE0UHVKWlMzbWc5M1UydVd0RDNDN3VHZGZWQnNiUTN0SWNEelNNeFBidWNnV001QU5KUkN3TndVZm52YVpiTHl6MitEVVcxcUx1bU54ZDNOdTRzVU9qa3RDQyt3aDZmaktpRi9uQXR4OWNQdnNFdG0zMlhJTURJdisrN0QyeU9BcXVHazhmRHZRNG9PY05OVjNGWUZBemlqK3o3dzJ4dnYzb3UzbTVHY3I3eTEzcUlSVnAzV3I2cmUzZUIxcUplYml2OVNkZHN5NGJBTy9QY280MlpCbnp3WnY2OWluS1QxdUx6bitqYXBMOW9CZ2dVZEo2Sm94K3hnYncxd1BNSDIzZmE3cjk4SjRhSUhnL2F1d1IrOHIvSDFaNW1tanRuK252RDlyU2psaXh3dExlbnYxKzNpTGhzTFdMWEtKL1FhNmZWNG5IYUtoSk1VOFUzZy9zRjlZcjNQTEx4VUp1SjVjcnpHNWJWdk5IL3NPNjFNZ2tES0gzVDRiN1ovZnd6dHo3VXFvNFZCUFYybUI1TzhUQzJ2OHU1dVRZZ0lCaSs4YzdtQnhQdTdRSi9jdCtNNVliZE9jMzRzY3Z1U0ZBQVFnQUFFSVFHREdCQkFJekhqd2FEb0VJQUFCQ0VCZ1pBS3hnNmwxQ3dSczNQRHQ5YXUxY09sNncycTE2TmlocGZQN0lNdTNrcitiTVY0cGZla2Frek9qT2JWWlBSOThrOGNHMTA5MUxXenArWjFEbk9nbXQvVTJqUHVRUEZjVXNTNkJRSTlvZmxkVVNUaUF4Y08rWWUwYmMwMUd6NVFENXRpdHFKSTVuM0lZM1RVT3V4bkVSQks1QXBRcHY2c0lCTXJmdnRqdm5VdnVldzFPRWJDVUdramExcjlsU2wxREdaUVRIKzVKLzA3YnBidkRyS3ltTG9iRjRWcGNYL0tVQlFKelhiOU4ybUszKzJTNHZVOGRkN3U5dDFHLzZjek5mN1A3OXA4bEZHaWo2WWNxVWVwbEd2TGFyYnVGcitzUXVjUitVL3RhVTJJaEZyb0lmZXpTLzJYQjQxZkNjUHlQTEdNSkJXSy9TeW43dDlUKzJmdVpEZVZ0WjhaOTdNbVcyNVBpUmF4RUpCY1RDQ3kzb2EvdnhFMTRMMUxuQ3ZrZ0FBRUlRQUFDRUpneEFRUUNNeDQ4bWc0QkNFQUFBaEFZbVVEc1lHcmRBZ0VmVkIzYXdzUzN3M3pEem03RSswd3BCMXAycStyRHk5UVVjeVhyMjFpK1JlODRxT3RLM2tmYXlKemo1ajIxclg4cjZmRXRtWDFUN0IycGhZVjhDQVRPQVpIaU50MjNhVi9Wd3JkTlpKRGpoV0M1aXBneHhUZkxmS3U1RHk4VmJiZTZiR0N4bStVUEpzNnZLYityQ0FRU0I3RW1XOHc0VWhKQ0k2VTFLZkdLYzI0ZUwrcE1GUWpZU1BhUUF1OGtLWDFiVjU2MnRTVlhFTFN1UHJqZUtRc0U1cnArbTZ2RFpQaDNxOFFyVGR0OHVKaWtkN1c0cjdjSEtIdGdPajFoVXNVTW5QOVVoVVM0ZDBJNVEyUnA4ODdoK2tvTXVuWHRqSVd3K0k2a213ZlBXaVg5dEVEcmtaS2VGZkVhMDFhMmhRSlBLZ3dEazlMbTJIZFlYd0tCV0QxdWEwNUlxcFMrT1U5S2VJNXZTcksza3B3UUlMSDNaOUcrUHIrdE51VzlTQjA3OGtFQUFoQ0FBQVFnTUZNQ0NBUm1PbkEwR3dJUWdBQUVJTEFHQXJFRG8zVUtCQzRaNGovdjBzS2wxTlYvREhYczBOTFA1OXp1aXQyZ2QzbWxjVGhqZlpuSzN4MlAxQWZyVFh0Vnh3ZTJTOU9jaEVEZ3YybGRxVHBnOVMycEpsZXViUjRBSEliQzRveWJOTUF2TVFaWXRIQjB1QUZaVjJ3WGp3bDE1VjAyM01hME1iWXVQVFBjSm8zTnI2bS9xd2dFWWlOWS8vZnpoelhiUXFTbVZETFBVMXNUYzB2czJNaU9sL3pEMUFJanh1VkZNVU9KNkRLYTJYdlcyTnBTRWxLazkwWW1GamhWZ1VDTThWVFg3MFRzbmJJNXRybm5XRjM2U1RCMGZqS2hocGlCYzEwQ2dUYnZITzZXQmJuMm9QWDFoRDZtWklseDhOcjU2cFNDV3ZMNE84SmwzTEJET1E1VDVKQXhQKzVRUnQyanNlK3d2Z1FDc1QxNHFTZWJGQnl4UGFiTHlCM24yTHhadEtza05GWmRuemJ4dlVnWk8vSkFBQUlRZ0FBRUlEQkRBZ2dFWmpob05Ca0NFSUFBQkNDd0pnS3hnNmwxQ2dSaXQ5YytKdW4yMVVHdDR5d1BrYTRyNlVSSk96VVVudU1XMzI1aWoybHA1TkI5R1lKUGJwbU9SZW9iM0hiN1dwZFNEYmpMenlJUU9EZkptQkhTSGh6c2tXUDFWbVdicDQ2UzBBSnVWV3k4WHlIcGdUMjZUN1pCeXg0OTdONjVMbGs4Y1VkSlA0MU0zS20vcXdnRWNsZWVjL0xIMXZPaERla3g0WW5mU1FzRWpzL29Yb29IZ1NGRkR4bE43VFZyMjFpVzNFVHR0WEdaaFUxVklERFg5VHNUZjFIMkIxUmhBWTVxZURMSFcwM013Tm1YWVRpM2t6RkQ4dDlJT2l5MzBKYjhNYThNM2lzNGRuelg1SkFaRm5iWVlHelBBaVhKNGdEdlcxN2JvNmV0MkhkWUgvUEFaOFJIQkU4eVRmM3V5NURlVkg3czluMU9lQTdYRVh0L25LZFAwY09tdmhjbDd3SFBRQUFDRUlBQUJDQXdjUUtsaEtuVEFBQWdBRWxFUVZRSUJDWStRRFFQQWhDQUFBUWdNQ0VDc1lPcGRRb0UybTVwR2VIUXR3UmpCa2UzSWVYR1MwbzV1ZUVLSmpTRmtwc1NNMnlXM0paRElIQnUvRDcwOWkyNWd4cEdwZTZ3OUdyVmJjQVBTUEw0cktiUzBBSXVwODJJVW1JTVRabG9qNUwwdklhTU5oenVIbkVUUElkM05mWWU5VzI4U1RtSTcxcm5IMGw2YzhzQU8vekZXMUltUUV1ZXR2bm94NDRNdnlsOXV5UmZibElzekVxdVNDb21FSERJaEwycTBEVW5kV1EzdGNmYlFvQ01NWTU5OHBpcVFHQ082M2VmNDlKV1ZsL3JsYjM5ZktnU0cxeW1vYktoUXA3RU9MWHR2WE9Fc2JGNmx2Lys4c29qd2NFTkQxaFlhczh2OXM3UVIvSnRkcThoTmxpWEpxK3BkNWYwdGRJQ2xwNkxmWWYxSVJDSWVXU3pHMzY3K1A5TUQvMXBLaUkyMzNQRFNhUUlCQ3dhZFhndEMzZTZwazEvTDdyeTRYa0lRQUFDRUlBQUJDWkVBSUhBaEFhRHBrQUFBaENBQUFRbVRpQjJNTFV1Z1VEc1J0RlFoNVNydzNXUFNOeDIzOGg1ZUdTTVk0ZGlYd2hHbkpTWXRST2ZUcTNOaTQwcEFnRnBUMG1uZEJ6azYxVHo2UVJKUGhDdVM4czM5MjBROTAzSXBvUDUwdHZITVVON2lUdjFGQ3h0aHBzVWw5aHplRmNSQ0tUTWhIUG5pYzNIb1FRcnF5MjloYVQzVlRkWTNaNjZsSHVETWlZUTZNT3dsRTk3MkNmYVBESE1VUkF4UllGQTdIMlo2dm85N016Nzc5Smo3M0dxb0NtMi8zYU5YNnBFQkh0TE9tMmt6c1gyYVRtaHRYS2EzT2JGYUtqdmtDc0hUd2hOZ3NwWSszOFJQQnM0bEZJWFlWbHNIdlN4anNmbWJPNXZUNHhOM2Q5ajYwcnU3M0NLUU1CZW85ckVoNm45MktiM0lwVUorU0FBQVFoQUFBSVFtREFCQkFJVEhoeWFCZ0VJUUFBQ0VKZ1lnZGpCMUZBSGN6RU1NZmUyZlJ5WXhkcmd2OThnaEJtNGNFUG1GTGZsRG9QZ3c3ZW1OTGNianluY2x2TjRqdG1vNmNNODM5cTZaa01CY3hJSTJFMjlSU3A5SnQvZ3NpRGwwejBVK21oSnoyMG9aOWxRYnNQRGNaTE9VNU8zTkxTQWk0cmRWdXZMWmZCcXMyTUh4akhEelJ6ZVZRUUMrUzlJYkQ3YStIWnpTZll5TVdTeWNmdkRraXhFcVV1blNycVpwRlN4V0V3Z2tDSmdHN0svUTVUZEZnTGtuWklPa0hUMkVCVVBWT1lVQlFLeDkyV3E2L2RBUS9UYlluM0c1dkJJVjVWMHErQ212a25vRS91ZFdXNW5temVNUlQ1Ny92RXQ2SGYzNk5hK2lWVnM3KzI5eGZNSEFOMVYzTmVsU2Q2VFBpdXNIU1hsdkVEU0V6cXNPN0h2c0Q2K2QySWVkTHA2QVVybDF1Ymx5V1hreksvWWZxOVBJZmsydmhlcFkwbytDRUFBQWhDQUFBUW1TQUNCd0FRSGhTWkJBQUlRZ0FBRUprb2dkakMxTG9GQXpGQTNsdUdqRDRPTzQ3N2J0WFJUY3N6ME4weDBmcVEyYTZmS1JmZWxncUJpVjBuWHFFUVIvbmVkMi9xbU11Y2tFQmpyTURXVi8ycStpMHJ5VGIvYk5CUmd0NnNQcnNicmpkV041bHZXNU9rU1dzREZ4WVExanVINzk2V2RhM2t1ZG1BY0N3a3loM2NWZ1VEK3hJbk54ekZ1VDdyVkY1TDBwcGIzMGk2MDdlYjVrNGxkakFrRVl2TTlzWnJKWkhNTWNhOVorelMwYUk2aGVxWW9FSWk5TDFOZHY3dE8xUE5XY2RydGZ2NUsxZS9uOVlLbzhRL0Rmc1kzaUZOVGprRGd1a0dFNmoxVUxIMHNoRUg1YU1jYjYyMzF0TzI5YzI5NHgvcXovUGMyZ1lEZHcxdVU0VkFEUXlZTEJaNHR5ZU9YbTE0WHZBbWNtZnRnSmVhTWZZZjFJUkJvQytFdzVMaXU0b2g5MitXSWoyTDd2VDQ5bld6emUxRXdwWGtFQWhDQUFBUWdBSUYxRTBBZ3NPNFJvSDRJUUFBQ0VJREFmQWpFRHFiV0pSQ0kzVElaeS9BUjQ1TVNNN1BOQUpCckVGcjN6UExodVEzL1BxejF3Zmt1bVNLQXR2WWpFT2gzZEhlVDlON3F3UHVDTmNYYUZmZnhJYTV2WGEybG9RVVdaY1VPZ1g4bzZheCt1L3ZiMHM0ZmhDcE5SY2VFSFhONFZ4RUk1RStjMkh4OFpyZ0JtbDl5L2hOdGN5elhFTlpuV2ZrOUdmK0ptNGJ3S1R2V1ZEM1hVRDFURkFqRTNwZXBydCtwTTlKQ0FJc0E3SGJkSGp2OFcza0ZTVGtpZ0xhNmNnUUNQcnZ6RGZSSHBEWmVrdWY2NHlTOXJWcTM3T2ErenhUYmUzOVAwcy82ckRDVTViMTJHLzhjcGwyYjUzM3RDME5vaDV5eWJOeCtXSUVuZ2RoM1JsZUJRRXlZbHZJZGs4T2hMVy9NcUo4VHdxTFBzbUw5NDcySUVlTHZFSUFBQkNBQUFRaE1pZ0FDZ1VrTkI0MkJBQVFnQUFFSVRKcEE3R0JxWFFLQnRwdThZOTUyOGVCMU9jQ2ZLdC9VU2VsOXBWMXJQbHpTWGFwRDA1UmJicWxscitaRElGQktydjQ1ajkzVEpEMHhzOWd1b1FVV1ZUbFV3cXN5NngwamU1dEFZQzd2S2dLQi9KbHlwK0JSbytuSm9XNUUxOVhYRm12YitYTU1ZWE1RdE9TUFZ2TVRod2NEWEYyT3AxYi8wZTdhNTVhNjdDK0c2dXNjMSs4WWkvTkoybGZTUTZ1YjZMZHRDS3NUS3lQMTd6bnZzTXVNZWZ4cHF0ZWhORjRTak5sZlQyMWNKSis5WFhuL1BiV1V5N1JyKzcxL3NqY1hpeVZ2bUZHWTEvZm5aSHA0aU8wOXVnb0VIQ0xOWG5Jc2lLbExud3VlcEJ6S1l1Z1UyNy9rOURVbUVNanhSaERyTis5RmpCQi9od0FFSUFBQkNFQmdVZ1FRQ0V4cU9HZ01CQ0FBQVFoQVlOSUVZZ2RUNnhJSVRPblF2RXRiWXJGOGN3N0R4cHhJcFllalhkcUlRS0FMdmZwbkx4MjhDRnduc2VpdW9RVVcxY1NNb0luTjZUMWJtMEJnTHU5cTdJQTk1aVdoQkdyc0lMNXJuVzN1cGQzZXJzYWgySHpzV240TzB6N2IwdmJidEs3Zjdod1dPWGtkN3VjRVNkZXFlZWhId1pqM21ad0NKNUszeS81aXFDN0U1dWhROWNiS0xWbG5ISmJpdnBLZUlla2lzUXA2K252SmVuSzVFRDdqeG9WdGNQZ0I4L0dlOGxlRlpmaXhXTmlTRGtWM2VyU0VhYWNLdzhQMk5uRm5TVWNsenArU1BWVHNPNnpyZDBKc3o5QzEvQnpPZmJabDZIM0pjcjk0TDNKR21id1FnQUFFSUFBQkNLeWRBQUtCdFE4QkRZQUFCQ0FBQVFqTWhrRHNZR3BkUm9ZcEhackhEc3YzcTF6VXZxTmh4UHM4REJ0clVsMUcwb3VyT05nSGpGVmhxQWVCd0REQTk1WjBYT0tOeWE2aEJSWTlpTDB6dy9RMFhtcWJnV2t1NzJxc25TVkd0Qmk1b1EvaXQwa2dFT3Zyb3l0RDFQTmpBeEwrdmswQ2didEtPcWFCaTIvSEhqaVE2L1BFb1NqT05xVzl6cHpYNzdvQnVLVWszeUsrYXZIb2xEMVlhc3kySy9obnRYakpTR21OOSt5UERSNVRTb1FDR0VMcktYdGZiSzlJdDBrWUJJczFIS2JqaklTOHpoTDdEdXRxd0kvdEdicVduOWpOMzJhTDlmWFVFUGJqOUlSQ2g5NlhMRGVCOXlKaFFNZ0NBUWhBQUFJUWdNQjBDQ0FRbU01WTBCSUlRQUFDRUlEQTFBbkVEbXNRQ0VneFkyZmJZZkNVRHVaUzVxTERDYnhWMGxWU01rZnkrQ2JWdHlWOXZCSWJmRkxTbDRLNysyczJQSWRBb0Fmb05VWHNFRzYvSFJ3cC9sdVNIT1BiNzN6WEZIdG51cFpmK2p3Q2dUSnlReC9FeDR6bXBRYTNSVzlqODdGcitUbFVZMzNORVhoc2kwREF0OERmS0dtZkJ0QjNxendMSEpzekNCUEtpMEFnZlRCUzN3MmZoOTA3aUFQT2sxNThZODZmVmw0SXZsRVpmVThPLzlobHV6MFMrTGUxTG5WZFQzYVI5RXBKTituUTlpOUljdWdVRzM5ekVvYlFabHBlaDE1UTdXc2ZrQUEwWjAyS2ZZZDFOZUJQNlRzazF0ZWNiODZoOXlYTHc4eDdrVERweVFJQkNFQUFBaENBd0hRSUlCQ1l6bGpRRWdoQUFBSVFnTURVQ2ZSNVdOTm5YNmQwYU81NHJJNC9XWmYrczNMaHZxZWtVeHIrUHFXRHVkajRYRkhTdXlWZFBaWng2ZSsvcU55dk9uNnArKzkvdmh6K3YyT1ovbXlsbk5oY1F5Q1FBVDRqcTEwWGUxenJYSE92RnVPNWZtaG0vTnk2cHNRTXNobk43elVyQW9FeW5FTWZ4TWVNNWwwTmJySDUyTFg4SEtwM0NyZDdtNTdKYWN1MkNBUXNYSEo0Z1Ixcm9Oa1F1cGVrbEJ1bk9lTTBWdDRwN1hVV2ZZNjlMMk94V2EwblZTQmdieEt2VGZTYXM2ampoMVVvazArRS9ZdUZBQlkwZmkzY0FsKzlpUjliRDNQZTRTYVdkbTEvYTBtSEovNTJONVh6WEVsUGxuUjI0cUJoQ0cwSGRUNUpSMHE2WDRUbk80TVhyaFR1c2IzeEpna0VMSzZ4eDVkYk5QREw2V3ZzUFV4ZEwxSmVEZDZMRkVya2dRQUVJQUFCQ0VCZ01nUVFDRXhtS0dnSUJDQUFBUWhBWVBJRVlnZFRPYmM1K3V6c2xBN051N1JsTGdLQml3YWpWWXI3MU9NbHZUVEV0azkxb2VxNUVadHJDQVQ2ZklQT0tTdjFNSHRSc3dVdk5rcllRTklseFF4TXo1WmtON3hqcDg5SytueERwWE41VjJQdDdQTlFmSUZxNklQNGJSSUl4TjZOSE9QaU5nZ0VmTFp4aEtTSE5MeTNUNjMrK3lGakx5UTkxdGRsZjlGak04NVZWR3lPVG5IOVhuUmcxOG9Uam8yek8wWGcySERyUFlmL3NUQmdWZERZOW5oc1BjeDVoMk5qNlBudlBubU83eHZMM1BCM2h4aHlpSTR6RTU1dm00Ky9ERjZndnBKUVR0OVpUcXFNOHQvc3U5REM4aTRSd29xMWVYajRRVENDTiswM2xxdU83WTF6ak9aMVhZcnRHYnFXbjRPeHo3YkUzc00rOTBLOEZ6bWpURjRJUUFBQ0VJQUFCTlpPQUlIQTJvZUFCa0FBQWhDQUFBUm1ReUIyTUxVdWdjRExKVFc1UlArTnBOdFZoMjgyVkkrUjJnNkdZb2VBc2NNd3U5OTNYM3g3YlozSnJtaGZFbW1BWFR3L1BMamFMV2xyYks0aEVDaWgydjVNeVUzS0V5dHZFRGJZcGhnVG1tcC9sS1RudFRTdFR3TktYOVRtOHE3RzJ0bm5vZmlDN2RBSDhVTUxCR0x6MGV2ZjMvYzFrU0xsdEJsZmMzL2J0a0VnY09VcTdyZlhwTXZXY1AyUnBEMGtmV2Frc1J1aW1pa0tCR0x2eXhUWGI0K05YY0RiYzhEK0xRTmxyMGRQREtLVGxOdmRkVVhGMXNPaCtOZ3c3WDN4WTZwYjdKZktuSXd2Q3lJYjk3OHR0ZTI5WXg2ek1wczA2K3oyQlBNNlNXMW5yL2VzUEhLOU9xR1hzYjF4VndQK3p0VjN4b2RiUW9mWkM5Z3RKZG56MTlBcHRuK3hkd0h2VzFNRU83SDNzTSs5RU8vRjBET0Q4aUVBQVFoQUFBSVE2SlVBQW9GZWNWSVlCQ0FBQVFoQVlLTUp4QTZtMWlVUWlOMWdTejE0NnpwNFhmbkUzR242UnRUdUhZenVYZnZuNXk4ZHZBRmNwNlV3dTU3M3JjRlZWN3M1OWNkWUloRElvUm5QZTZYS2VQYWVsa05oR3lPYnZodTZoaHFJR1h3ZkxlbjU4UzZNbW1NTzc2cUJ4QTdZbnlucENUMlRHL29nUGpaZnVocmNZdVVQd2F4cENQbzBDRytEUU9DaHdaaGJ4L05ZU2ZlcURMNisyVHpYMU9kODZJdEI3SDJaNHZydHZ1OWQ3YWQ4Vy80OERTQXNLTGxETUpaMllSVmJEN3V1VjdHMk9mekFibFVtZXhWd24xUFRneVFkRmNrYzIzdnZGMjdQcDlhNXFma3VLY21HKzExYU91amZZZisyeEZKc2I5eFZJQkFyL3p0VkdLcWJTem8xMXRBZS9oNTdkM0srQTJKbDlTa1E0TDNvWWZBcEFnSVFnQUFFSUFDQjhRZ2dFQmlQTlRWQkFBSVFnQUFFNWs0Z2RuQzBMb0ZBTEU3eldBYWQyTTBiRzJEdktPbW5EUlBoL01GMXZ3OVY2NUlORzdlUzlNRTFUaVM3cmZXdG5hWTk1TDlVOFhqdlVSa2RZemZQWWwySUhham1IQXd1NmhyS1FCWXprUFI1OEJqalZ2SjNoeGJ3emJXREdoNStoYVN2U25wR3c5KzdoaHB3Zk5uM1ZlWHYwRkMrWFliYkc4V1UwaHplVmZPS0NRUkszcVBZT053K3JCRk4rYnErRDdIM3JhdkJ6YTZnYldUeERlTzY5UHJnZ250b1EvT0ZKTDJwdWhIZkZNckZCcHFiU1RvOU5pRGg3ME90ZjRuVkQ1N05vVy9zTHQ3RzBOVmtnWk4vVjIwUW5uT2Fva0JnanV0M0xCU0Y1NGpGSksvcVliTGN0bnBQMzlXeVorcTZYdVUwMFFicUZ5WUtCYjRnYWEvSSt1SzlYaHVqTWIydDVIQVlPNi9ubXpuZHZhWGkxTi9pMkhkWVY0RkFySzFqZm9mRTloSTU0cU14QlFLOEYyTy9ZZFFIQVFoQUFBSVFnRUFuQWdnRU91SGpZUWhBQUFJUWdNQldFWWdkVEsxTElCQXo2SFE5TUVzZDVGZzdVZ3lkaDB0NldFdUY2ejV3Yld0Zm53ZUhReGcyaHpLUXhReVdYUTJpcWZPdk5GOWJ5QWk3a2JXUjRNZkJjOFRWR2lycEVtcmdLcFhCNGtQVmJjWExOSlNkNDBhMmxFSEpjMU4vVjkybjJIdjBHa24yc0dJRGFsOHBkamplOVgySXZXOWREVzZYcStKM2Y2VEJUYjBablJadVVBNGQ0enJXanR6M1lxajFyNjk1MDdXY052SGF5WkwyNlJnS3BXdjcrbmgraWdLQk9hN2ZNUUZpbitHY2hsNnZjdWVWei8vc0djR2l3SXRFSHI2YkpIdmVhRXB6Rklmazh1b3JmK3hXK1ZRRUF1NnZ2VUw5YlV2SHUvNkdwekp0YTBkdWlKMHhCUUs4RjZralRENElRQUFDRUlBQUJDWkJBSUhBSklhQlJrQUFBaENBQUFSbVFXQ3FBb0hZemYwZlNQS0J6ZWNIcHZ5QWlFdldsRkFITWVOYXJsR296eTdIYnJUMkdaczBKclpJUFV4ZDd2OVFCcktZQVdDc3c5U1NzYjVSTVB6djFQRHdjdHZiaEFTTFErVkRDNHpORndzM0xHL2MwSVl4WGRybU1Kenl1N3JvUjR6dEVPS3BtSENpNi9zUWU5KzZDZ1JpNjF5dVlTSm5UaTNuamQwOHp2V01NOVQ2VjlxL1BwK3o5NUdqZzJlSHVuSXR1bnRSbnhXdXFhd3BDZ1JpYTh3VTErOGJWSjQ1TEdwenFKaTZsQ0xtVEowQ01XTnIxL1VxdFIycitYWU5IamVhZnZ1ZDM5NkQ3dHRTUVV3YzBxZlFvclNmVTNsdVRnS0IyTTM5TWI1RFlsNmFjdGVWTVFVQ3ZCZFRlZXRvQndRZ0FBRUlRQUFDU1FRUUNDUmhJaE1FSUFBQkNFQUFBcEttS2hDd2NjQzNuQTVzR2FXaERRUjJSLzNHY0V1eHJobXBJb1ZyaHhBQ0YyL29pK1BpN2lIcE0ydVlrYkZiZDMyNjNvNkpMUkFJZEo4QWZwL2YwT0p1K0dPU2ZGQjhScWdxOXY1M0NUWHdja2tIdDNRcGRwT3hPNDM4RXFiOHJpNTZFeHN6MzRMZnZUSUNmU08vKzdWUHRMbDVYend3ZFlHQTIrbmJremJzTmFVamc2ZVhQajB2TE5jVmM0RmVJbExZWklIQWRZUEJ0ODdZNlRudTMweUhTWmw3bXFKQXdFem50bjdIeERjcFlzNlV1UlF6Y3JxTWRRa0VYSGRNOUJjVGtNWEVWRDhQSG9oT1NvRzE0WGxpd3JsVVVVcnNOejAyWmltWVl3YnVNYjVEMnRaMDl5RlhwRENtUUlEM0ltV1drUWNDRUlBQUJDQUFnY2tRUUNBd21hR2dJUkNBQUFRZ0FJSEpFNGdkVEswcnhJREIzVlhTTVMwRVB5dnAxcEsrT3hEbG0xWUhvU2RJMnJHaC9OVERyQmhqRi85M2xhdmtSeGJjMU83YTlaaTc4aEtqZlYyYlltSUxQMU5TMTFBR3N0aU41cTRHMGE3alZ2ZTh2d0VlVzhWWlA2eWg4RjlYYnRidHN2dmRLMyszb2UzNGxubGVHbW9nZGh2L3JaTHVMT25zSVdBVWxqbmxkM1hScFZnODRSSkRjeHV1MkRyb1o3dStEN0gzclErRFc2d2ZpOUFiL2wwWklsMDVHTHd2MjFCNGliZVdvZGEvSWZxZlcrWWgxZS9oVXhvZUdsck1rZHZXTHZtbktoQ1kyL285eGhyaWNZNFpPWjJuai9XcWRFN0ZETUVwSGdCaVlxcDE3VmRMbVF6eFhJcFE1TkZWeUlmbkoxUWUyM2YwSVJDSWVXUVo0enVrYlUxMy9ibmgxc1lVQ0xoOXZCY0prNWtzRUlBQUJDQUFBUWhNZ3dBQ2dXbU1BNjJBQUFRZ0FBRUl6SUZBN0dCcW5RS0JtRUhGZkI5VHVaUjkzZ0NnZlpoMlZJODNvQjhxeWJlSm1wSnZhdThwNlpRQit0Slc1RmdDZ1poeHptMUVJTkJ0OEdQdWhlMWEyQWV3djF5cHh0OE9MNUQwaUpicWZmTTZOOVJBN1AzMVRVVGYrclFBWVVwcHF1L3FNcU9ZaSt0Y1YvVk4vRlBXUVQ4N3RFQ2dqOXUvS1o0UXZPYmJNODNxTzlMSC9JeTVvMzVxVllrTktEbHBVd1VDRGpGa2NkNjFhbUJzMmczbXFRb0U1cloranlVUWlCazVQV1hYS1JDSTdlbFByY0wvM0V6UzZTMExUV3kvOXUyd1gvMXl6bUkxY0Y1N0dqbHpSSkZ0VElpUkk5U0xqVm1LcUNNRmIweDBiUzhDRmwzL1cwcGhtWGt1SDBKZlhhM2h1Ukt2TUdNTEJPYjRYbVFPRTlraEFBRUlRQUFDRU5nVUFnZ0VObVVrNlFjRUlBQUJDRUJnZUFLeGc2bDFDZ1JTREpjKzBOcEgwa2Q3UnJWMzVhYjdPRW5uYVNnMzEzdEI3TERkMWJ3bmhGVHdJZWRZS1NZUStHREZkajlKUCtuUUlIc1BlSzJrL1NObElCQW9oMnpqNTF1QzIrMjZVbUlIK2xjSzg4K0gzbldwSk5SQXlvMjFVdThFNWFUaVQwNzFYVjF1K1owa09meEhVL3BDY0FQZFpnU0trNUIyQzRmNkY0eGs3aW9RdUlXazkwbnluS2xMVDZnOFhGajAwRFhGM0cvYnk0YTlXclN4TFduRGRZTEIyeUZkNmxLcDk0Sk5GUWkwR2JMZUtlbUFpWGtlS1prVGkyZW1LaENZMi9vZEV3ajBzWWJFM3VQRm1FNVpJSkJ5R3oxRlRQVktTZmVYOUlzdWs3L0haMzFiL3pLU25qekMydUJ2RS8vbXRmMG1uVlo1YTdxNUpCdStZeWtXVXEydnNFR1hEci9ubnNkTmFZanZrSlJ2dVJLdkZHTUxCT2I0WHNUbUhuK0hBQVFnQUFFSVFHQkRDU0FRMk5DQnBWc1FnQUFFSUFDQkFRaE1XU0RnN3FZY3lINHB4RnozZ1Z3ZjZZckJEZnZWV3dxN2w2UlhaVlRtL2RuVHFwdXBUNHc4OHpKSkR4bngwUFZpMVcyeWQwbTZjVU83dXNZbGpibTlYNjRXZ1VER2hGckttakszSGhROFlyVFZFRE9lbGhqelkwSWJ0MmZJT1g4TlNmN0g0UXhTVXdyUG9kc2RhK3UxSys4TEZ1OWN2Q1ZqVjZOOVRIU3lYSFhYdW1JSC9UYlkyMmpjOVdaL2lvR2tiOUdaT2JyOXQya1pxMmNFdzVadm5lYWtUUlFJeE1MUjNLM3lMSEJzRHFTSjU1MnFRTURZNXJSK3gwUkdYWVVsS2UveFlxcWxDZ1FXZ3FpdTY5cnlGTDljRlVyb0k5WHZhbE1vazlTMU5MWWZjSjMyaXZLY2dXN3QzN0x5RUhaV2hsZXRoWWVXcndUaGdnVm51ZXRwNmxJUjg5YmtjcnhHK1RzaGRXemIxZ0dYY2F2d201L2F4cVo4S2VQYTk1N3N3Q0FTYmhKY3h3U3NUWDJKN1J1NjdrdnE2azNoTjZYM291dDg0WGtJUUFBQ0VJQUFCR1pLQUlIQVRBZU9aa01BQWhDQUFBVFdRR0RxQW9GVVk1MWRjQjRrNldzZEdmcHc5WTB0Qm5NWDd4anV2c0hydzh1Y0ZIT3h1U2pMd2dNZlF2MDBwL0NHdkx0SXVrTTR4SzNMRXJ1NTVHZTYzQlNMSFF3dXR3bUJRTm1BeDR3NEtUY0dYWE5zTFhDZTNGQURxZDRqN0Y3ZDhWMzd1bzNvZXUwcTNvYlhKMGs2TEJQdEZOL1Y1UzdFaktqTzI4WFFmYUVnS0xGci81VFU5U0ErWnRRcWNUL2MxRzczNmVoSXA3NGV2TGw4TEtYekxYbHNWSHk1cEQ5dHlXTnZEMzZIdjFGUTF5WUtCTnFNUG4xNXhpaEFQZGdqVXhZSXpHbjlUbkg1Ym5ISlB4ZU01UGtrSFZuZEJyOWY0ck9wQWdIUDlXZFZhL1ZmVnA1TFBwZFlkaXhiYkgxTFhhdFR4RlQydUhLd0pNL2h2b3p4RndsN0FZZjZTZVZvSnFzaFhQNjk4bnhscndMZS8vd3FCaTNqNzNZei8yWkpUZDVnWEpTNTdCdStGVktMam9VTktnbEJVMWYzSlNTOVE5Sk5JZzF6MkNsNzNUZzd0UU1OK2Z6OVlROWliVjZJU2tQRnJVTWdNTGYzb3VQdzhUZ0VJQUFCQ0VBQUFuTWxnRUJncmlOSHV5RUFBUWhBQUFMakU0Z1pCZGNaWW1CQkkvVkF5MjZhN3k3cCtJTERTdStmZkVQSHhuQWJCNXRTRjZPYnk3eUxwR01reGZaclB0eThSNGRENCtWRDFwamhQUlliZTNING1uTlQ3THlTZk1ENy9KWXdEYXVNWSsyc0c1T2hER1F4ZDhXcGgreER2OUUyckZxd1VoZXIyM1U3WHZkdHE5dkx2djJma3ZZSTc4K09EWmxMUWcya3VxbjNvZnNES25ITWQxSWEycERIODg2aExKNVhHWUd2R3ZLVWp0VVUzOVhsYnZ2OU9pTEN5b1p1RzFtOG5xUW1leVh3RFVLTG9GSlRLZU5GK1JlVzlQWnE3dmtXY0ZNcXZXVy9XcDZOZmE4T2dySzIvbG1zWXFHVzE1Z1NBNVBGV2E3bmhpMlZkQTFwTU5UNmx6cnVRK1JyaS9IZWw1RnNpSGFYbGpsbGdZRDdOSmYxTzdhWGRWOUs5bThsNjJHcVlYdlp3SGxVOERMbDI5U2x5Zkhkdlk0MmViL3lmbUN2S2l6WFNZa1ZwUDRHdmxqU1gzVVV0VnFNWWdHSERkUGV2enFsY25UZXBuM3M5eVM5TkFpMTdHV3NWTWpnN3hDdlRmN2RqU1Y3TEhLb21oemplaXhzVU9rdCs3cTJ4dlo1aTJjY2J1RFBDOFZySHM5SEJMRkhrK2NBMTlNbHBNRTZCQUp1ODV6ZWk5aGM1ZThRZ0FBRUlBQUJDR3dvZ2RpQjg0WjJtMjVCQUFJUWdBQUVJRkJBSU9WUXRhRFk1RWRTQlFncExqMFhsZHE5cW04T25aeGcyUEcreWU2NmZZdkxoNUd4bEJ0YVlMVzgzSnRvOW1id2xDQVVpQm1wM0JlSFIzaDRPTVIwWFU0eHcvdDFnd0Y1cDBqblhZNXZaZis0SlovYmNMMXdHTHQ2UStsVGxTY0QzMHhlR0c1WGk0bTFzNjdhb1F4a01ZRkFiSjUwL2JzTjhYdEczT3VtektYY3VLNHBzV0p6UXcza2hKbXdVZGFHWU4vV1BDTURva1U5ZmpkOUUvTlNLOCtWR3E5VCtDNVhOY2E3dWx6ZmxjTjcyK1JLZXBIWFRCMlgyV0tDTnE4azdxK05HamIyTEF3MGl6TGVKT2wybFNjR0gvclhwVkxHeTJVZEh0YVh0bUgzV21paFVwM2h4ZUlRdTZYK1JEQUV0cFdURWtabThieHZyVCt1dW5INXRrUVBGNTZMdmcxcWNVRXNkUlU5RExYK3hkbzkxTjkzcmd5WUp6UUlubExXeEtIYU5XUzViV000WkwwdU80WHBuTmJ2Rk5GVXF2Q25iVDEwdUFLSERGbUVDRmdkcDFURGRwMkI4emhKVDAvY3Z5N3E5ZHJudGRzaWc5VzFlN2x0L3hLRXA2bWVlbkorQTcwdmZGUndyWi9xL2NwenkyS0dCNGV3QUt1L0w2a2MzY2NVb2F2YlplTzl3eXo0KzhCRzl5WVc3dnVWSk4wNkNCZjgyNUtTTEVMeE0vK1drbmtwVDByWUlQOFcyVGp0dlhSZHNtQjA0WTJucmZxY2Q5b2lOcytyUXl0dkVSWWN4cEs1Mld2QWMxdjIrb3N5dW9vZTFpVVFtTk43RVJzdi9nNEJDRUFBQWhDQXdJWVNRQ0N3b1FOTHR5QUFBUWhBQUFJREVKaUxRTUJkejNGWDcvdysrUE50cWc5TE9uV0ZuZDFFMnVEbDI5VTJXcWVrdnVKSzVzU3lYYlNyUzE5aWhuY2ZjdHZsdG1OOHg1SVBDMThYd2pDY3NoUm00WnJCVGJZUEwrc0VBRDQwdFp0dHUzdHZPbWlOdGJPdWJVTVp5T1lnRUlpOUQxOE9COVVwaDdyTGJIMG83bHRkZHRuY2xISkREWlRNK1MrR2czeTdlZi9zMGx5ek1jUzNzMzFiMG5QSjczR2J1S1dMOGJxazNVTytxNnZqa1dJVVdUempkOWZ1bHYzK2ZuZXBJUGZ4OWtFZ3RSQVZMZGRqUVlodmJ0dkRRNU9iNEM2TUYzWFpKYlBYNjlpM3JHK0UyZ3VMYjhFNk5yUFhMN3Q5OXUxVEN3ZDJENGFmMkZxV0l6cHpXUXQrNXZIcGxjTE4wRVloLzU3NHR5VWw5UkhuZWFqMUw2WDlRK1R4YjVESHRpNTFqU0UvUkh2N0tIUHFBZ0gzc1dRZFhNZjZuU3FhY3ArOGp2eGorSzJ6ZTM4TE1PMDV4K3VDRFp3MnVOY0pvdnpiYUVGcDIzcVlhdGh1TTNENmQrUURrdDRWUE1BczJyaVljOTY3KzNtdm0zZU0vQWI2bVZMRGRZNllhdEUyaC95eUdPSHp3Wmh0endWTzVudjlJTXE5bWFUOXFodm1kYjg1aTNKU09UcC96bS9oNm50clE3Vi9TNXo4ZS9MN2hTOTJGNDh3S1dHREZzM3k3N2pkOWk5K3gvMmI0L25xL1ZEcWIzR09rWHRSNzdlcTMxY0xXUHhOZGVZS0l3dURQUmR2bk9nMXJNU2J4K3F3ckVzZzRIYk01YjBvbk1vOEJnRUlRQUFDRUlEQTNBbkVEbFhtM2ovYUR3RUlRQUFDRUlCQWZ3VG1KQkR3SHNlSFlLOUpQSURxajlJNUxzdDlpelQxNWxXczdwSUQ5MWlaVFg5UE1ieGZKOXpjYkl1cldscS9uM09NMGI4UHQ3Y1FDTVJKeG01MnBoanh1M2k3OE8zbmw3UTBzeVRVd0dYQ29iYmQyNDZaVWcvTW05bzB0WGQxdVoxdTIxc3FJOWRRVEJlSCtEYWUyVmcxcEVEQWZiRVIyQzdOUzFPcVI1cEYrVFpTMlROQXpIdEthWHVhbnJOSTQ3NDFScGJjZWpaSklCQXprRmtBY213dW9CbmtuNE5Bd0JqbnNuN0hmcnU2VEltRmtkMHUwOXZXdzFURGRzekEyYVd0eTg5Mk1WeTdITjl1OTgzN050RmdYMjFkTGllVm81L3BJaERvbysxbWZIQUlTVk1heHFCTklKWGF4cHo5anRkY2V4Wnl1OGRNM2ovNlc4Ni92VjFTN1AzSllWSFNqam04RnlYOTRoa0lRQUFDRUlBQUJEYUFBQUtCRFJoRXVrUlQ0RHdBQUNBQVNVUkJWQUFCQ0VBQUFoQVlpY0NjQkFJTEpMN2Q1ZHN6VGNhcVB0SDUwTTl1VTErVUVLNGd0MTRieEY0ZWJ0Ym5QcHVUUDBVZzRQSmlOOUp6Nmx6TzY5dkhmMXZkdXZzOUJBTEpDTnNFQWlreDFFdGk0QzQzTG1WZHlBMDE0UExYWVdUcTQ1QjRhdS9xOGxqbDNvUlBuWVRMUnFXeER1SnRFSEtvaHJhWXhXM3R6eFVJdUt3Ymh0dkFEZzB3Um5LTTdTZGt4cWR1YXRjbUNRVHNCY0xoQlh6TGVEWFp0YlpqcDU4K3hnQ05YTWRjQkFKeldiOUxia2FuRExuRkFRZEpPajdjM0orTFFNRHJ1R1BCTzJ4UHFlSGFmTlpoREoyTFFPRDd3ZlgvZTFNbVVrc2U3N3ZlRUx4eGxSYVZ1OS94KzJLUEdBN0xOa2F5Unl0L2E5Z3pWTmMwMXI2a3JaMVRmeSs2TXVaNUNFQUFBaENBQUFSbVNnQ0J3RXdIam1aREFBSVFnQUFFMWtBZ3hSQTRaTE5LRERwdWoyOVEyNU9BalFwRHBhOEV0OVY5SEdRMXRkSHUwaDhTNG5XMnVWcnQwc2RVZ1lEM2tHNkw0OWFYR3VoVzI3a1FCOWp6UW15dXBiWnp1WTZoREdSVERqRVF1eUVaOHo2UU9wZDhLOTNHa0RxRDNhS01rckFiRHVueDdCQjNPTFV0cGZrczdMRXgxdkdSdTZZcHZhdXJmYkZiMzNkVVFxYStQSUNzM3ZBYjZ5QStKelp5M1hpVy9wNWNQTVJadGdGd3FPUTVlSTl3YTdLTG9XNk05VzhvQmszbGV0eDlrOVcvUDNYSnZ5T0hqTjJva2VxYmswREFTT2F3ZnZjdDZGb1dCNWhCYkQxTU5Xekh5dWs2QlcyTXRTY2h1NlR2STFuZ1owOVE3dCtReWZ2Rko0WTF3V0ZqVXBKdjMzc1BPZFErdXFrTkZyUTlXTkozVWhxWmtLZkVkZjF5c2JrQ0FUL3I5ZGZDNjFkTHVraENHMHV6T095RTk2OC9LQzFnNWJuWSsxUENvcVJwVTM0dlN2ckRNeENBQUFRZ0FBRUliQUFCQkFJYk1JaDBBUUlRZ0FBRUlEQVNnWmpSZHVobWxCcDAzQzRiN095bTBnYnRTL1hZVUI5SVBpVjREVWc5bk94YS9lVWtIUzdwZ0s0RnJUenZ3MHZmRFBwcVlybmVSenFPdHNVWFhZeU5kY2F3MkZ4RElQRGZnOVJrNUwrUkpOOVNhM09KL293cVh2cVRPOTRXWEJ3YSs3YXpieDgycGRJNHNwNW50d3EzR3ErVk9EZHpzbm5lT3lTSTQyRDNuYWJ5cnE3MnF5L1JsQVZSOTVUMC81WXFHUE1nM2dZZUMwK2VYakJ3WFg1UGhwcVR2c0hyMjdzMmVQVWhWRm5HTXBSQXFnQjlwMGZhWXNkN2piRlk2VE9kYXBqdXczTVRDQ3grRzZhK2Z0dDkrbU1yNDZmRkpWM1NTZFZhZUhkSlg4dFlEMU1GQWxjTk44YXYzNldCTmM4T3VlWU10ZTkyTjl6dW95UjVEL1B0QWlhL0g4SlpQVWlTeDMvSTlPNVExNmQ3Mkd1dHR0TzMwdTFKb0dSdjFNVW9ibkdBMlZ1bzFaZEkySDJ6QnhpWCtiNmVXWTI1TDRuTnBTbS9GN0cyODNjSVFBQUNFSUFBQkRhUUFBS0JEUnhVdWdRQkNFQUFBaEFZaUVETWFEdFF0YjhydG90QloxR0lEVXI3U25xOHBOMDdOTmpHeEVNbCtaYkxUenVVMCtWUkcwb2VJK2t2T2h4dzJxRHlENVVSK1lWVmJGSGZJQ3RKUGloOGVHQ2FjOUJxUVlWdmdqcWt3S294TERiWEVBajg5MGpWQ1FSUzNNOSt0b3FOZk92cVJ0dDNTd2E5NWhrYm5kOFRpVDNzdjl0bDdKa0ZkZnBROVpaaHZuUjVkMTIxMzkrWFZkNUZYaW5waklLMjVENHlsWGQxdWQzbXVYOVl4M0tOQzkrcnh2Q1JJWHlMYjNBdXA3RVA0a3VOOVRibTJmdEhsL0UzdzkyQzV3bi9ycFFhU3I0VnhHdXY2TmlldG5tNUtRS0JoNGJmamJxK0hodHVRZjh5OXdXZFNmNDVDZ1FXYU9ld2ZsOHp1RkRQRlYvYWc1VDNsSyt2Q1M4Vld3OVRCUUxtNkxYT0JtR0xHZXhocE1zTitESFduT1Y5dDMvMzdkbkRqTHVrajRlMTBzSytQdmJlbnBmWENFSzNPMVo3K3V0MGFkelNzNHM5eHF0R0NIZFNZcXkzd09JK2tyeW1kRW1YcUw0ZERnN2kwRDhvTE1odE9TN3M3VTRlSUVTYm14VjdEN3VJSlFxNy9kdjNkNnJ2UldtZmVBNENFSUFBQkNBQWdSa1NRQ0F3dzBHanlSQ0FBQVFnQUFFSTlFTGcvSlZiOUZ0SXVsMTEwM3JQeWxCK2hjb2xxbThWclNZYnczeVk2dHZZdmduMDRVSURaeStOcmlsa2NjQnBZOWZOSk5tRnVQdXhhcXp5WWFyak1uK2t5dmV1NEVyMnRCNXY2Zml3eTRkd2Q1TzBqeVRmbnJhTDRVV3lJZkhVS3RURE95VzlTWkxqMHE4YUY0ZGlSTG1iUldEeDd1NFhSQTQrbUs3ekRPSTVieGUxbjZnOGJud3kzRXF6Z2VHc05lR1l5cnU2MnYzTFN6TEwyMHZhdFdZZE5FZmZ5dmE3YXlPc1BRYjhhazBNbTZyMWQrM1ZKZjJKcER1RjlXZXhEbnFkc1Z0bnQ5dHIzNzlXQnJZdjliajJ1VTFlLzI0UVJBYzNEemM2NjliaEh3WlJqbDE1T3l5SDQ1TjdYU2JGQ2RnZHZPZWdSUm1yeWFFWVBJZHRhQ0pObThEVTEyL1BNKzhMN3hLRXBLdnZzZDlocnlXK3VUM0VXcEl5ZXY0dHNTalBlMWp2WDczbVhMb3lubCtzNXVFcHJUbG02L1phbkdiQlgxdWIzVzcvWHA4aTZZUnFYZitVcEorbHdPbVF4K3U0eDl0cmpMMlI3QklFQkhZTlh5Zkk4UGZCVDFiYStiazE3VEc4MzdibzAwWm50OTF6WVRFZjNFN3ZoZnk3ODlid1BkT0h3R0laOWM2UzlnNGVuNXJtbzhVQTl2aGdUd0grTGZaM2xmZG0yLzR0TVBYM29zTXJ4YU1RZ0FBRUlBQUJDRXlkQUFLQnFZOFE3WU1BQkNBQUFRaEFBQUlRZ0FBRUlBQUJDR3czQVh0cGVIdTRTYjFLd2pkUExVd3I4VTZ5M1ZUcFBRUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoc0pRRUVBbHM1N0hRYUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBd0N3STdTRHE2dW5sNjE0YldQa3pTaTJiUkV4b0pBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ1lBQUVFQWhNWUJKb0FBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FRQzJCNjRhd05EdlYvUFdid2FYMlYyRUhBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FRQm9CQkFKcG5NZ0ZBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0F3UGdFRHBIMGxJWnFqNVJrRHdLL0diOVoxQWdCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSmduQVFRQzh4dzNXZzBCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFTmgwQWp0TE9rSFN0V282K3ZQcWIzdEpPbW5USWRBL0NFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQW53UVFDUFJKazdJZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUTZJdkFYU1VkMDFEWU95VWRJT25zdmlxakhBaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQXdEWVFRQ0N3RGFOTUh5RUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUF2TWlzRVBsT2VCWVNRYzJOUHR1NGUvejZoV3RoUUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlySmtBQW9FMUR3RFZRd0FDRUlBQUJDQUFBUWhBQUFJUWdBQUVJUEEvQ0Z4WDBvbVNkcXBoODRVUVh1QjB1RUVBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0NRUndDQlFCNHZja01BQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0F3UElGREpEMmxvWm9qSkQxOCtDWlFBd1FnQUFFSVFBQUNFSUFBQkNBQUFRaEFZUE1JSUJEWXZER2xSeENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUlIL1FRQ0JBSk1DQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ3NBVUVFQWhzd1NEVFJRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFDQWVZQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFZQXNJSUJEWWdrR21peENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFRUFzd0JDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBd0JZUVFDQ3dCWU5NRnlFQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSUlCSmdERUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdTMGdnRUJnQ3dhWkxrSUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFRQ0RBSElBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBbHRBQUlIQUZnd3lYWVFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFnZ0VHQU9RQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkxhQUFBS0JMUmhrdWdnQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQkFJTUFjZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNHd0JBUVFDV3pESWRCRUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0NBUUlBNUFBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFTmdDQWdnRXRtQ1E2U0lFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQWdRQnpBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUxBRkJCQUliTUVnMDBVSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ01DSUJNNHI2ZGVTZmpOaW5WUUZBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FRQUlCQkFJSmtNZ0NBUWhBWU1zSVBGL1NuOWIwK1Q2U2p0OFFGcnRKdXZ4S1gzNHE2UVJKWjI5SUgra0dCQ0FBQVFoQVlGOUpMNVYwb3FSM1NmcWdwSzlKK2hWb2VpTmdRL2ora200dDZXL1lSK2dpa2g0bzZUSGgzMi9valRRRlFRQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlOQUxBUVFDdldDa0VBaEFBQUliUmVEL1N2cXptaDc5c2FTM2JFaFA2L3I0SDVKMmwvVHREZWtqM1lBQUJDQUFnZTBtNEcrOUl5UTlwQWJEcHlYZFc5Sy96UWpSOVNTOVd0Sk9LMjErbmFSSHJhRWZGNUIwTjBtSFNycFV1Q2x2Z2VXMkdzU3ZMT21KbFFEbHp5V2RKNHpIeHlUZFh0SVpheGdmcW9RQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VDZ2dRQUNBYVlHQkNBQUFRaXNFa0Fnd0p5QUFBUWdBQUVJOUVQQTMxdDNrUFQ0WUV3K3JaOWlrMHJaT1hqR3VWWk5icmZqNXBLK21WVFNOREw5bitxVy9nY2tYWENsT2Y4VXhBNWp0dkx1a2w0aS9mYTIvSEw2YlBBazhOMHhHN1BtdW5hUWRKU2tneHZhOGFEdzl6VTNrK29oQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRV0JCQUlNQmNnQUFFSUFDQlZRSUlCSmdURUpnT2dUK1M5T2FXNW15U1o0L3BVRzl1eVJEajhiOGx2VlhTTFJ1cWZYOXdYMzdXSEFEUnhuTVJ1SGd3akI0VS9xdkgrYzRqdXFCM2VJRzNTNnI3NWp1eXV0WDlzSm5GaDUrU1FLQ3BMUjVxaHhrNGJNdmVoYjByTDB6SExYa09XTzcrbDRObzR1dGJ4b1R1UWdBQ0VKZzZBZTlCTHh6Q0R0blRDK0dIcGo1aXRBOENFSUFBQkNBQUFRajBTQUNCUUk4d0tRb0NFSURBaGhCQUlMQWhBMGszTm9MQUVBYnBqUUN6cGs0TU1SNElCTlkwbUFOV3UvQWFZSGY0cXpmTS8xclNjMFl3ekxlRkYvaDU1VmxnTDBrbkRjaGdpS0tuSkJBdzM2Y0ZsL3FyZlhXb29qMGwyVEMrTFNubVJXQWJSUlBiTXZiMEV3SVFtQitCSzBteTk1MDlscHIrWTBtUGtmUVBDQVhtTjZDMEdBSVFnQUFFSUFBQkNKUVFRQ0JRUW8xbklBQUJDR3cyQVFRQzVlTzdtNlRMbHo5ZTlLUU5QSE55RVYzVXlTMSthQWlEOUJiajdOejFJY1lEZ1VEbllabGNBYjY1L3haSk5wcXVwbDhITHdLdkg3alZsNVgwSVVsWHJLbG5ybDRwcGlRUU1GYi8zcjlYMHRWcUdQK2RwRWVPSUFRWmVCcGxGZC9tVlFFdkFsa295UXdCZVcvdys1S3VFMzVMcmhmK3Y5SDhUTkxKa3Y2ckVpbjlVcEpEbTV4WmVZWGhCamdUSjRXQTl3WHZsblQxaHN4akNSbFQya3FlNlJHd0hjRWVzcncrTFVKWXhkYW5IMGp5UDcrWlhuZG9FUVFnQUFFSVFHQzdDU0FRMk83eHAvY1FnQUFFNmdnZ0VDaWZGMDNzeWt1TVA0bUwrVGlqT2VjWXdpQTlaeDdyYnZzUTQ0RkFZTjJqMm4vOS9zWjZnYVJITkJSOXFxVGJTUHBhLzFYL3JzUzdTanFtb1h5SEZualJnSFVQVmZUVUJBTHU1d01sdmFTbXcvOFp2QWljTWhTTUNaWWJtL2R6OFNKdzIzQ0Rkb0tJUjJ2UzZ5UTlhclRhcU1nRWRnN2hoTzRXMW83ekZXTDVWakQrSGx0NWlqa2hpQWtLaStLeERTUVE4L2JpTHMvVnk5QUdEdGNrdXVTMXlQc3ZyMDEza0hUVkRxMzZucVFQUzNxSHBIZEtPZzNSUUFlYVBBb0JDRUFBQWhEb2dRQUNnUjRnVWdRRUlBQ0JEU09BUUtCOFFCRUlsTFBqeVhvQ1F4aWtZVjFPWUlqeFFDQlFQaDVUZnZLaXdZdkFzdnZlNWZhK1I5S0I0ZFpuMy8yd0FlQm9TUllKckNaN25IR2J2dHAzcFNPVU4wV0J3S1dERndIZjhsMU5OdERkSzl6d0hRSFBKS293QnhzbEwxblRtcmw0RVlpdDg1TUFQWEFqbmlucENRUFhRZkhTZVNYWjQ4eFRKTjFrQUNEMldHTjM4WStYWk1NY0NRSVdvdGhBZTVVSUNyLy9YZ2RJMjBuQWE1TTlJM29lZUkwNnowQVlmbEY1c25BNHJxTXFnZFRIQ1cweEVHV0toUUFFSUFBQkNMUVFRQ0RBOUlBQUJDQUFnVlVDQ0FUSzV3UUNnWEoyUEZsUElHYW93SVBFdURObmlQRkFJRER1R0k1WjI2N2hodFJPRFpVK1E5S1RCN2c5NVlOL2h4ZTRURTI5UjFadXFPMUJZSTV1WHFjb0VERGlld1pCeGlwdXgzTytsYVJQakRucDFseFh6SXZBSEx4WHhOYjVOU01lcGZxNWVIc1lCY1lBbGZnOThkcncwbzYzY1ZPYXRvM2VURks0Ykd1ZUcxUWVqRTZVZE9FSWdIK3FoSVQzM2xaSVc5enZDd1JQQVlkS3V0VElIQ3hpZXJBa2U3QWhRUUFDRUlBQUJDQXdFZ0VFQWlPQnBob0lRQUFDTXlLQVFLQjhzQkFJbExQanlYb0NNVU1GQW9GeFo4NFE0NEZBWU53eEhMTTJmMnM5VnRKaERaWDZkdWVkSmIyKzUwWTlWTklSTldYTzNXMXdWNEdBUFN2Y291RjJlNWNoc0tIRllvOC9XQ3JrazJFTUhCZTh6M1NTSkh1QmFFdFhxanhUUExLYWR6N29YMGR5WEdLN0lhNDdhL2lPcExlUGZFdnc3QkR5SXpXa1IyeWRYd2ZUc2V0RUlEQWM4Y3RWOGJzUGwzVEFjRldjcTJRRUFpT0Jua2sxWHA4L1VubVd1RUtrdlhnUW1NbUE5dFJNZXd6d2Z2VHYxaUFNV080Q3dwU2VCcFJpSUFBQkNFQUFBcWtFRUFpa2tpSWZCQ0FBZ2UwaGdFQ2dmS3dSQ0pTejQ4bDZBakZEQlFLQmNXZk9FT09CUUdEY01SeTdOby92RzZvYi9YczNWSHhxZFp2dk5wTHFqSmROQnZHeCs5QlhmZjhoYVhkSjN5NHNzS3RBSVBhdUZUWnIxTWRTMXZ4Tm16ZGRBZWNhU0dQcmZOZjJ6T0Y1QkFMRGpOS3RKZjN6QUNLbHR0Ym16djloZWs2cFV5SFFGb0pvMGNhNWl3bW53bm91N2JCbzZaVmhMN3J1TmlNUVdQY0lVRDhFSUFBQkNHd2RBUVFDV3pma2RCZ0NFSUJBbEFBQ2dTaWl4Z3hON0U3cDZHTDRRcEwrdElvRnVXTk56U25HZ3ZJZThlUzZDY1FNRll6L3VDTTB4SGpFakpidnIrSnk3aS9wckhHN1NtMDlFbWlMeSs1cTNpM3BUalZqdkdtR1hnUUMzU2RWeXBxL2FmT21LN1ZjQTJsc25lL2Fuams4ajBDZy8xSHlHbitzcFBQMVgzUnJpYm56ZitUbVVkMGFDTnhJMG5zbE5ZVS9jaWlpdjVUMHl6VzBqU3JISTJCN3dGMGt2VUxTQmNlcnRyVW1CQUxuNE5rNWhLL3krWS9ETHZ6YlJNYUhaa0FBQWhDQXdBWVNRQ0N3Z1lOS2x5QUFBUWgwSklCQW9CeGdFN3V1QjYxdDdpQlRqQVhsUGVMSmRST0lHU29ZLzNGSGFJanhRQ0F3N2hpdXE3YW1PUFdMOXZ5MXBPZEkrczFTQXpmTjBJdEFvUHZzUzFuek4yM2VkS1dXYXlBOWYrVm0rV0pkSzYxNTNtTFBvNE1YamRVL08rYnl3d2VvczYzSVM0ZHdEOHVoTVJiNXUrNWJSKzdLNUt2YlZkSTdXd3l5ZFIzNGFYQUYvemxKSjB2NnI2Vk12eWRwdDJCRXNsZVdObmZ4dWZOLzhqQnBZQzhFcmlIcFZaSnVzbFNhdzdFOEtZVEErRVV2dFZESVZBbFlxT1F3RWs4cGJLRFhweTlMOGlVSS8rL0ZHclZZbS93NzZ0K1lHMHZ5T2NaNUV1dlpWb0dBYlROWGxIUmZTWCt4RkxLSzlUdHg0cEFOQWhDQUFBVEtDU0FRS0dmSGt4Q0FBQVEybFFBQ2dmS1JSU0JRem80bjZ3a01ZWkNHZFRtQkljWURnVUQ1ZU16cFNSL0d2bHJTUVEyTjlpR2czVS83a0hXUk5zM1FpMENnKzR4RklKRFBjQ29IN0cxci9UcU1JbTNpVXd1YXZGNlJ1aE93MGNkZVlxNmVVSlFOdEMrUmRFUmxKRHB0UlREVzlyampoMTlKMG9HUzdsOEpVYTY2bEhrcTh6K2grMlJaQXdGN0ViaUFwRjlYSXFVZlZFWmpoQUZyR0lTUnE3Ulk3YWh3UXoybjZ1TXJ3L1ZMZy9lSk0zSWVET0lvaXdYOEhlVmI4WFhDTkJlNWp0L0N6SzcwbnQxZUhEd2VkUjQ5V0w5N3gwMkJFSUFBQkNDd1NnQ0JBSE1DQWhDQXdIUUlQRDk4TUsyN1JaZHBjSC81dzRtNHVMNlBKSCtnZGtsMWh2eXVoZ3UzQjRGQWwxSGgyVG9DUXhpa0lWMU9ZSWp4UUNCUVBoNXplL0pxbFFqZ0ErRTJWVjNiUHh0RUF0OE5mMFFnY0c1S1RUeFNENVI5S0c1WHVqZWIyOFJaYW0vS0htalQ1azNYNFpyS0FmdWNCQUlwUXBTdTQ3SU56L3U4N1FXU0hwSFEyVU1rUFRmY3hrM0kzcGpGZFY1YjBqTWtIU0JwS3ZPL1M1OTRGZ0lRNklkQXJqakFvcVZuQnVGU3JpaWdyY1dYbDNTdkVNcmlVa3NaVS9kei9kQ1lSaW4ySUhab1ExTll2NmN4UnJRQ0FoQ0F3RVlUUUNDdzBjTkw1eUFBZ1prUmFESXV6NndiZ3plM2owTkxCQUtERHhNVjlFUmdDSU4wVDAzYnltS0dHQThFQXRzMWxXS2hCbnlMNkdFaDlxOXZoRDR5M082TFVmS2hyMjlsN1ZpVDhZdEJtQkFyWStpLyszYWlEMEYvdEZLUmI3OWVRcEwvM1phdUwrbU5OVHhTM0xQN2tIdTEzbGgvemRLM0taZkRQc1NleWZtN3Y4VWQ5OWZ1ZWZ0TVRRS0JQb1NRZmJhejc3S2ErajJWQTNZRUFuMlArUFRMdTY2a0V5T2hCYnd1MmJOTVYvRnpIWTFkcXJwZldJVW5lRnh3QlQ1OVlyUVFBaEFZaW9BOVdSMHA2WDZKRmJ3b2hDSDRjV0wra216ZTkrMGY5b2JYMmxJUEFnZ0VTbVlPejBBQUFoQ0FRRzhFRUFqMGhwS0NJQUFCQ0hRbWdFQWdEZUdxUUNCbVhFc3JOUy9YKzhQSDdGa3JqK0ZCSUk4anVlTUVoakJJeDJzbFJ4T0JJY1lqdG9ZMXJUZU0wandKMkpYdmE4TnZ5R29QdmlMcGJwSStWdEMxZlVNODhkWHZPeHUzOTZ2aW5oOVhVT1pZajdTNU91K3JEVG0zMG54Z2ZlOXc4OWMzOWwvZlZ5Tld5dGtqakl2YjlqUkozKzZwSGdRQzV3YUpRS0IrWXJXOWQzMkljWHVhenJNdXhsNEIybUo4MjYzN25RZGNZd3pQdndtTy8vMnJXWk9rOFJDQVFCY0NYZ2NlV3drc0Qwc29wTXRlTktINDJpemVkM2t0M0MxNEZTZ3RaNDdQSVJDWTQ2alJaZ2hBQUFJYlJBQ0J3QVlOSmwyQkFBUm1Ud0NCUU5vUUloQTROeWNPY2RQbXpWeHpEV0dRbml1TEtiUjdpUEZBSURDRmtSMjNEZGVSZElLa1N5NVZheU94UFFlVTNOVGFvWW81ZmJTa3U5WjA0MlJKKzFTZUNNNGN0NHRadFUxSklIQzVjTVBPdjYxT3Z0MXJmaC9ONmxFODgwVWx2VVdTUlFKTzlsUmdsK0MrN1ZzeUI1WnJSQ0J3YnY0SUJPcm40dzNDN2ZZTDEveVp2V1g4SFk3bHVGZ1Z6dVJka2h4M3V5bjVOcS9YL2FHOGxNVGF5TjhoQUlIdElIQmdFS2RhTE5TV3ZHWlpxR3FQVDZSeENDQVFHSWN6dFVBQUFoQ0FRQU1CQkFKTURRaEFBQUxUSVlCQUlHMHNFQWljbXhPSHVHbnpacTY1aGpCSXo1WEZGTm85eEhnZ0VKakN5STdmaGtlSGVOTTJCdDlEMHRzNkdJbmEzRmcvU0pMREZrdzVUVUVnNE8vaXUwaDZSWEQ3djh6clM1TDJsblJhVHhCZDE5K0V1TDZyUlhvK09LekVNWkljRnFFa0lSQTROelVFQXZXenFHbWUyRmg5dTRGYzNwZk01N2srMHliQWNKOStYZ25GOXFvRVNDZk50WU8wR3dJUW1BV0JxNFV3VTk1cnRhVlhTWHJnQUdHUFpnRnBqWTFFSUxCRytGUU5BUWhBQUFMbnVCc2pRUUFDRUlEQU5BZ2dFRWdiQndRQzUrYUVRQ0J0M3N3MTF4QUc2Ym15bUVLN2h4Z1BCQUpUR05ueDIrQWI1QllKdkZUU056cFczK1RHK2d2QkFIVjZTL24rSHJ4NFphemVzU2JQVHlTdGh0THAyTlRheDZjZ0VIREQybTdZdlZMUy9jTk4vNjRNN0VMM3ZUVkNoRVc1TDVQMGtBNTF6VkVnNE5BYk5wWmVxQWF1RGFqZlRJRGUxRzhFQXZYd3BzNHJZY2dubmVYMklleExVeU0vSG9RWVA1eDBMMmdjQkNBd1p3TG5rL1JxU1FkRk91RXdWUFpDTldWdlUzTWVoN2EySXhEWTFKR2xYeENBQUFSbVFnQ0J3RXdHaW1aQ0FBSVFHSmpBUFlONzRwUnFwaFlQTzJaY1MrbFRicDRtQmswaUQ5OFVUSW41MTlRTzRzVG1qdERtNUIvQ0lMMDVkTWJ2eVJEakVWdkRwcmJtamsrZEd0c0lYRG00Q2I5c1RhYW5Wdi9ONG9HMjFEYi91djUycFk3Y1ZBUUNzUmk5UHNSOVRnZFBEK2F4R2xwZ2xkRjdnbENoeXlIOUhBVUNmZXh6cG03d2JudlhIR0xrM3FrdlRFLzVwczZycDI2dXJSaDdodkdOM0tiRWIvdmFob2FLSWJBMUJPNGs2WFZxdnh6WXg3NWphNEFPMEZFRUFnTkFwVWdJUUFBQ0VFZ25nRUFnblJVNUlRQUJDR3dxZ1V1SG0yeU9pWnlhN2hVNTlFb3RwNDk4anIxOGk1Vll6bTNsMmhYemsycytsQjFuK0s4a3BkemsrYjZrRDByNjVVcEZDQVQ2R0ZIS1dDWXdoRUVhd3VVRWhoZ1BCQUxsNDhHVDBrTWxIVkVEd3I5VHZwSDkyUWlrS1FnRTJtNlBMemYvcXBLZVVmM2ozLzNsZEdMbEJlSHdTRCsvTHVua2hBbmp0cnhXMHY0MWVYOHQ2YzZTWHA5UVRsMld0dEFDenQ5WEtBTUVBdWVtandlQitnbUxRS0R3UlU1OHJNM280eUlRQ0NTQ0pCc0VJRkJFNEJLUzNsR0ZzTHBKeTlNKy85aEgwa2VMYXVDaFBnZ2dFT2lESW1WQUFBSVFnRUF4QVFRQ3hlaDRFQUlRZ01CR0VJZ2RWamQxMGdhSFcwdjY3Z3dwTkgyRS9ZZWszU1Y5dTBPZkVBaDBnQmQ1OVB5U0xyYVN4OGFhSDNSd3d6eGNhL3NydVcrRGRKMDdjY2U1OWdIUnRpUWJSQys4MU5sZlNUcERrdjhkUzMyUGgrc2JRaUN3K3I1c3c3c1NHN3ROL1B2T2xRamdCRW5YcXVuY2tkVzhmbGpDYmZjcENBUlN4NmJKb05uMzdlc3JTbnAzNVpiMzZqVU5PN1h5MkhBYlNWOUxiZlJTdnJiUUFuMGUwaU1RT1BmZ0lCQ29uNnhOdjJkVDRWWHdpazNxa1cwV0NPeFVlVTZ6MkdxUmN2WlpZdzVpM2JmRnV0czZ4VGFOTlNhYitxMTMza3JJYVdPOS83MUl2cER3czRIQnBuaUlmSkNrb3dadXgxU0xkL2dGaDlnNnowb0R4eGliNVNybklCQ29Pei80ZVRpSCtjMVVCNWgyUVFBQ0VJQkFHZ0VFQW1tY3lBVUJDRUJnVXduWWE0Q05DNWNzNk9CWXJvY0xtdGI0aUc4ZEhodmM5NjVtUWlEUUorbnlzcnczc2F0aEMxQWN2OVhlSWE0UUtlNFhrajRoeVhHYjN5cXBMZDUyU2N1YURoQVdaYlhGNlhZODVRTXFZOUtmUzdxK3BFdUZoMzRxNmN2aHB1b0xKTmxJWDVlNkdxVGQ5bHRKdW52Z2FZOGhUZWtyNFdic0s4Sk4xazM0NFBkaDNJMUQvKzlRaFZMeERlU21aTUdUYjlvNEpyeHZHdGNKQnJxT1IxM2RmUWdFTGg5dU52dDJzL3U3ZXRpMXFOZnp6dDVQUE1admwrVC9UNW92Z1FkS2VrbE44MzFvWis4Qmp0MGVTd2dFNmdrZEdOYm51bmVweEIxdjIwMitycDRKVm51QVFPRGNSS1ppOEo1YWlJR20zN052QnNIc04yS0xCMzl2SlJEYkwyd0taKzh6dmViY1RkSWRKVmxnMVpTVzl5RHZHam5ldWZlRE41UmtsK3NlVnhTMWV3QUFJQUJKUkVGVUczOEROKzJWM0g1L1czd3VlTm16aTNaL1ovUnQwRjFYbTdwODEvVDEyanZjenA3aG05emZLU25mZWg2UHQwbDZZL1Z0OWNrQkJlSjF4dERsZnNjTW8rYTdxNlQ3UmI2OVBNYytJT21Wb1U5OTdzbk45NTNWZDQyRmlVMXBtN3lZZUE5MnMrQWR5bWNNVjRtOC85NlgrVUtNdzhUWXE5UnBDWUxiSnM2eCtmVGd5aXZsRXhzZTl2bUF6eEUrbGZEaXhlWmxRaEcveTJLeGpyOGo3cHB3Zm1CQmhkZHp6Mk9mSy9hOVR1YTBtN3dRZ0FBRUlGQkFBSUZBQVRRZWdRQUVJTEFoQlB6eCt1cnE0K2Vnd3Y2a3VpOHVMSDZReDlwaU5TTVFHQVI1Y3FFMmNENUEwdjJYak9qSkQ2OWsvRWgxSS80dmc3dkVQb3pjVGNhV1JiVjFZaG5mblBMdFhidkQ5cnZXbEdMekxuYkEvTWZWd2V4YmFncTNNT0VoMVg5My9QSGxXMXlwVEw5UWZlQzdYeFpjcE55c1R5MTNySHdYa1dUajZXTUs1OVAzcW5Bamp3aUhRc3Y5THgyUHRuNlhDZ1M4ajc5ZUphajUrMkRNeVdYcnd5L2ZHdkljN2VJNUpiZGU4dmREb00zZ2JDR2NRd0d0aHNHcHF4bUJRUDE0K1AyeWVNdnJRRjN5MnZLOHhLR01sZVhiWTgvcGNQaTgyZ3dFQXVjbWdrQ2dmcUkyL1o3RjlpV0owMzdyczFuZytyNmFrQ2pMWUd4VTkzbzl4K1I5MXNNbFBiNXduK2srMjlEN3VFcGM4TVVCQWZpMzBpSGt2Q2N2MlE4dk4rMjRzRGUyY2JwTFduZWJTcjVydXZSMzhhd0ZFZnNHWTZpOTluVkpOcHhhSVBuY0FmYXdwZnR5ejYvN2huMjEzNCtjWkxIQTMxVmVCcDR1NmNjNUR6YmtOV2NMZ1p2Ty9QMTl2Ri8xL2VBNXZhbko3NWtGK3ZhUzBDWVFUK2wvbCsvaTJIeEtxVDhsVHgrQ0QxL1NzRmpCMzlCdEFxcW05dkJ0bVRKUzVJRUFCQ0F3TVFJSUJDWTJJRFFIQWhDQXdJZ0ViRmowd2N6eTV0OUdvdTlJdWxGTk8yd29YSTNKYTZXd0RicitxSjFEY3AvZjFORFFQZzVFQ1RHUVB3dDJrZlJDU1h2blB4cDk0c1hoVUxEcmpZemNnN1RMaFhmTE43bGpLVGJ2Y2czUzN0dmRWdEpyQ2oyRHJMYlhONUR0ZmFERW5YYXM3MFA4M1llUHZrVnZ3M2Z1NFZ4ZGUzeFQyQzQ2dlM0NjVZNUhTaDlqQjBkMUJ6N3VtK1BPLzFsS0JaRThYcjl0N0xSTCtqbUtRWHBBTU1zaW1sekgrbkRPQjhOMmtaK1NFQWcwVTdMSGxmZUdtNmJMdWJ4MzhvMnZ4Ym9RNDF5MzMxbzhZNUdCRFdSejJVZkYrbHI2ZHg5S1c5eFhkNHUwU1FoWFd0ZTZucHVMQjRIWXZtUmQvT1pXci9lQ250T1hiV240aVdGZmNlYU1PdWQ5bGcxdXorN0I0TDdvdHZjelhnZTc3dGVYTWFZS2RYUFJkL0dnTjVVMjVYN1g1REphemU5dkUzc0pzSWV1cm9iYXVyYThxUG9OZlVKUGhuV1hYN0l2djRta1kzcm9uNzI1V1RqMHNRN1F6ZHZ2bElYaVRjbWUwdllaMll0SGh5NWxQZXExMTBJTGl3UDZUbThPRnhwUzkzOHA4Nm12Tm5ZUkNIaHQ4cVVDZncrV0NBTlcrK0E5cmQ5Sm4vRnMrLzYyci9HbEhBaEFBQUtERVVBZ01CaGFDb1lBQkNBd2FRSk5oOTYrU1dyWGtMNTV1SnJ1RXc2RS9BRzhTRFpFMk8yWlA1YW1ubUlmeTMwY2lDSVFTSjhGbDVGa0E3N256NURKaDY4MkdPZDh5SysySitjZ3JTMTJkVjAvWS9NdXh5QnRUd1craWVwRGtUNlRiMSthb2QxNlRqblphNElQQ2ZzK0VITE1jWXVqUGo4UmdjQzFxM0FWYjJpSU85OWxmT3hDMXplZjVtU282TkxmT1QvYjVqM0FMbVc5cmphRkxWbnROd0tCOXBsZzhacHYyUG5BMUxmNmZLdks3bVpUeFRSdHZ3a09pK01EZkE1UHp3a3RoRUJnM0ZXcEtlNXhiRjh5Yml2blc1dGROTDgrM05KdDY0VnY0TnZZbnJxbXJKT0k5KzUydVgyYkFScGhkOTUvRXNKdmRTMStxSDJTMjFVcUVKaFNtM0srYTdxT3hWamZlL1pzZUpjZzZ1dmE1aHlCZ004WGZHN3k4b2pIdUp3Mi9TaDRlRHcrNTZHbHZCWWxmU2dTN3NNZU5mek50RW5KMzRIUEN0NUNodXpYOG5kaFNqMngrWlJTUmtxZVVvSEFrR3VUUXc5WThQS0RsQTZRQndJUWdBQUUxa01BZ2NCNnVGTXJCQ0FBZ1hVU2FISjE2MWlZZTFRTnMzcTQ3bGFxYjNBNW50M1JLNDMzZ1k1anVUbCs5NVRUSmF2YkMvNXc4bzMxdXRUSGdTZ0NnZlFaRUROOHA1Y1V6MWtTTDNxNTFOU0ROQjhBMkhDYjR3MGhOdTlpbkJZM0t5ME9PRHdZcitKRThuUDBIU003dndYdFQrUjRiU2lwKzB0aFhLOGZFVVNWM0hTTkhSd3RIL2pZSzhVN2V2SU9VY2VoNjd0U3dwWm44Z2swZVE4b2NSbUxRS0NkL3c3QjdhOE4ySGFublJPWDNldXliMHpXaVpaNDE4N05IWUdBZE8vOHBhRFRFMDBDZ1E4R28vWlBPcFhPd3liZytNMitWUnhMVDYyTWkzODdjYkdRalVqMkp1ZlkzVU9scjB2eVB1cmZPMVJnTDFyL1V0MWMzYWxER1cyUGxnZ0VwdGFtMU8rYXJnaDlxY0FpR1llUkd5UDVXOFZoZ2V3UnEwdUl1ZFI5dVQxZVdPVG4wQUI5M0xwZVptU1JnRy80ZjdRQW5PZWJEYk5ONS8wV3pkKzhPdSt4b1h1VFVteGU5OW5YeFhmaGFRbUZ4dVpUUWhGSldVb0VBa092VFc3NHg0TndPV2Yvbk5SaE1rRUFBaENBUUQ4RUVBajB3NUZTSUFBQkNNeUp3UEp0dU9WMkx3NDhtb3pjUHJENWdDVGZUdHh0cGNQMlBQRGtqaC9qUXpPTWZTekhETFVwN1VNZ2tFTHBuRHd4dzNkNlNXazV1OHpSMklIRDR0M3h6VkxIdzh4SnNYa1g0K1QzMGdlMmo2MWN2UjZXVTNGQjNpNkhWUVhWSlQ4eXREaGcwUkM3YkhkWWxWZTN0R3hJZ1lCdmpic05WMDhtVTVhUlc4MzUzUHo3OGcvNWovMzJDWHR1ZUZUR3MwMGVnRnhFeWVIZ3Bnc0U3RFoxTDBtK1dWYWFiT2kzNFNIM2h1K2VEVGZaL2l2RTdmYjZYNUxzY2NEZWNUYnBSaFlDZ2VrSUJFcldrWko1dkEzUHRLM1hxLzIzYU1oaW9pa2FVWVlXSnk2enlERzhyVExjTlh5bkRpVU9jSDI1QW9FcHRpbjF1NmJMTzNxSDRHM25nbDBLS1h6VzRxZm5kRGlYaUJsMEYydWtEZmoyS05TM09HRDV1K05PbGR2M3N6STVXR3hrenlSTnlhSU5pNWQrbVZudTFMUEg1blhmN2JjUTZSNEp3cTdZZk9xclhibS8zWjVieC9ibythS3RINGhpK3hwbHlvRUFCQ0F3QUFFRUFnTkFwVWdJUUFBQ0V5YlFkRkMxN0FXZ1RTRHdGa24rbUxCQlkvazM1T2NoN3JrUHJLZVlZdUVGM09hWW9UYWxYd2dFVWlpZGt5ZG0rTFl4K2szQnJiMXZUNXhlSGNyOWJLbDRHMnl1Rkc3TU94YXFqVUJ0eVc3eWJhdzVKYjJKdjhzWk8zRHdZYUVQaUR6LzIyTE4xbFVkbTNjeFRqWkk3OWh5UUdVMzQvOFVXSDU2eGNEbEd6MDJiRHA4U0dwTTBDNEh0d1hvbzQvWXE0a1B1bExkM1g0eDhMRGJUdDlVV3lUSDFMMVJPT2p4R3VmNVZaYzhmendmbXRKUUFnSGZHTGM0b2FtZnZtMW53NzVGWEdjc05jNXp3NGZUZnhyK1NUM0U3SHE0R2gyNERjc1FlMC9idXV2M00rZm04RU5EYk5tNk11M0cwNGQ5T1duVEJRSnRodWNjVGxQSzIrWDNiRXI5V0c0TEFvRzhkYUNQY2JUWElidVpYazI1Um9ZKzJyTEpaVFI1ZktucnM5L3QrMG42NXdKQjBsQU1jMEpuK2Z2d0ZkWGUwbDRvbG8yYU50aGJaR0JYN09ZUjI0dFkrT3JRVnFtaGN0ejN0dEE3eTJ4Y3BqMjcyQ1g4MTFiYTZlL0ZpNGM5c2ZmSDlxaDN6Uld3T1FLQktiYkozVW41cnVraU9zNFZSZmlHOFQrR204YkxlL1BGdVByN3pmdllXeWJNSFQvVDFldFp6S0RyTmZJdnEvMzEyM1ZPZUp6VjVEMzVVU0hjd2ZKNzRPK3VBeVg5UmVYbDRGS0pMNnpmR1lmMVNFMHBvVTBlTGVuNXFRWE9LRjlzWGx0YzZiQ1lQcy82c0tSdnI3ei8vaGIwZU42OSt1K1BTUmdqZTZud3ZMVDN3TFlVbTA5OUljNzU3VTU5UjgzTTM1Lys1eE5MWnpGZUt6MkhmV25vd1ZXSXFIMFRPbUZQRzQvc0lOeEpxSUlzRUlBQUJDQlFRZ0NCUUFrMW5vRUFCQ0F3VHdJMmVObmxuZytlbHRQcXgwMU1JR0JEckkyaGpzbTluRDRtNmZZcnhxbXBrTnE1dWtGNFFpUm1kOHhRbTlJWEJBSXBsTTdKVTJkUTg0R09EMEY4S09WNDc2bnVJUzhTREdaMW9UR1dXK1Q1NzhQdzFISVh6OFlPSEh4WTZQZmlLVFhkZDBnT0h4SXRmMVQ3b01DaExueElhb092RHlGOVNGR1hZb1pIZjJpN1Q2c3VYeDByMngvc2ZsZGo4YTI5SC9SQmdkdDV3NFFoOUNIQi9SUEtUU2lxVXhhMzIreWZtVkRLKzhKaG5rVVNzZkgzV0xwL0xqZjM1dE1RQWdFTFQzeVFaYVA5YW5xakpCLzBmVFdCZ2Q4VHp4ZDdlNGtkenR0STRkQXhKeWVVUzVhNDRLbU5VWTVBd0lmTDc2M1d5YXZWRk9peDhtMjJNek1IQklGQUpyQUpaRWNnTUlGQktHaEMyN3VXc3c0VVZGMzdTTk9lMVRmOTdsaDVKckw3YkZKM0FtMmhScHBLOXplVjkzWVd5TWIyTE4xYjJGeENxZ2pUZTVIVUVDejIrbVJ4eWdHUmhsdjg2MzFwYWtyeDRtVXZYOTQzZW8rY21temtQM2pKWUpnakVKaGltOXp2bE8rYVVvRkFxcURFM3lZMkdCNmFjWFpnVDBCK0w1NldjT3U1aTllem1FSFgreTN2dFc2M01va3NHTEJIS0l1UjI1SU4wUmFHZW40M0NaSVh6K2Z1N1h6bTRXK0dwbEFnOWhwd3F5RGlTWDBINXBLdmFWNGZKK25wNFpzbTFST1V2d1h0bmMvaFg5cVNQV3Q2TFdzVE15MkVSeFp0MXlWL3J6K3g0Vzh1MStWL0ttRVFmR0hIbnFWaXZ4bXA3K2lMcW0vOUp5U3VsejdYOFBtQXc0bzBKWi96V0VoZ2IzZ2tDRUFBQWhDWUVBRUVBaE1hREpvQ0FRaEFZR0FDVnF6WHVjRmJ2YVVSRXdpNG1YdEk4ZzNjMVErZHFTcURVMktBTGdzRS9NSHZBeXpmWm9oOVpDMFBHd0tCOUVtOGF2ajJSK2doR1lkRXF6VTFDV0NXODMwenpOMFVZK3J5YzdHRE5COTBlczVjYStraDM0WTVLTnhPYXFQaVcxVStoRzh5NHNjRUFwNmZxL3M1R3hwOGdKWnpBT28yK2pERWJpbHRSRzVMVS9uQWIxcUhsdHZ1dHRyWTcwT0wxRU9oeGZQMlVHSDNrYjcxbHBxR0VBalVqZkgzd3cwWHI4TTVhNVQ3a1JvVHR1UUdYeXFuVGNzWGUwL2IrcHRxR1BSNzdrUHhwa1BFM0Z0bWl6WWhFSmpmYkVRZ01MOHhjNHZuSWhCSVhaUG1PUXJyYVhWcEtDVGZkdjJyQklQakVMMksvZWE0VHUreGJCRDFIajVuajJVRHFmdlZKdkQ4Y2hBcXJ0NG9yK3VyaFF4MUlmQ1c4M2Ixak9ROXN2ZldOdGdka1FCOGltMWFORHYyWFpNamdsaEc0VFhPdDZrZHpyQXQrWWI5WGFwOTdQOUw0RmlYeGU5VG0xZXR4VE0yUkphNDZJOEpCRmJiVlBvZTNDeDR5bXNMaWVFOS9uNlNiT1JPU2JHeC9VNWxvTDE1NVIzajFKVENacFpudGU4NUl1cTZybm9OaklYd3MxSGVZYXhPNnNES2E1T0ZNbldwNy8yZXowc2NLczluRkUzSmRkb2ptVDB0NUh4amVvMzAybWhCVlZQSzhYTFFBU21QUWdBQ0VJQkFEZ0VFQWptMHlBc0JDRUJndmdSODI5Q3VwMWZkNEZsZDcxdWkvN2JVdFJTQmdIOC9YaURwRVN0SXVycjBHNEx3RHNIbHNnVVNiV2toRVBqRHBaaUpqdC8zN0l4REx3UUM2U080TUtqNWxwUmpybjR1L2RIR25DbXhYa3RjY01jT1c3NFFYSkF1OWxWMnNYcmZncHU4ZFIzTE5UejZwb09OL0RHdkFVMFFmWERnMndKMTNoQ1duMW0zOFRqbDhNNE1MQTZLdVg1c20zbys0TFhMOWhUWGlTNW5DSUhBYXZ0OHFHY1BMdmF5VVpxdVhRa2ZQSVpOTjR4YzdsU0VJS1Y5SFBPNTNQZDB1VzJweHJqckJFODRsNnpwV0JjUFBnZ0V4cHdwL2RUVjk0RnhQNjNxVmdvaEJzWU5NZERtaGpwMVRlbzI0dHYzZEtsSXdLUnNETFZBTEZmZzJvVnlUSVRwUFlKZGNWdDhubU5FV3JRcFJkaHJnN3pGQjdGazRhTU5UMDNoeGxKdStjYnF5UDM3Rk51MDZFUHN1NlpVSUpEaU1jR0didS9OYzcwZHJmSzNOd0hmd0xjM3RyYVU2NG5DWmFWOFl5enE5SHRnZzZqUEFFcmVnNllMSE10OXl2R0FaMitPOW1UUWxDeGd0Nmo5aDdrVGVnYjVGL1BhWHZrc0RyZjN1Skl4V2U1cWsrZk01VHorOXZZbGg5STBwa0FnRnZMR1o0TjNDRjRvU3ZvVDh6cVRLM2dwYVFQUFFBQUNFSUJBSmdFRUFwbkF5QTRCQ0VCZ2hnVGFOdW8yZ0Z1eHZQenhsQ0lRTUFiZnJyVWIwbFVEMDlSaWxGODN4SVp2VStlN1B4WUkyTEJxNGNPeVcvSG5TWHBjb3NFVmdVRDZDK0xiRUw2Wi9aek1HS094R3RyaWMvdFpLOXZ0QmpVbnhRN1Nsc3Z5TytIRG5xNEhYNHN5Y3d5UGprSC9rTVM1MnRiL2xNT1FQbTVNNUl6QmF0NllWeEN2YVJhRE9JNXYxK1ExMUxjb2ZGZ2VTME1MQkxxNFRGMXR1Mjk0K2FDMkxkeUF4UkcrbVc2WHBLUm1Bam52NldvcHFjYTR0Z05FaTJGOEs2d2tlZnh0bksyYkIvWnVZbmVsZlNYZkZzMXhHYjFhYjlOYTNNYlF3ckhYVng2QjdGSjFVNUxYZ1h0VXZ6VU9tYkpJYysrbnhaeDFzWnpkUHhzeWx1TTRkeG5IT25aZHlzdDVka29lQktiVWxoeUdjOC9yK1BiZXEvbFdjMGthU3lpUXNnL3NlaVBmL1k4SmUxUGRxM3M5Ykl2VGJxT1liODJPbWFiWXBrWC9ZOTgxSlFLQnRoQklpM3I3L2thS0dTTmQ3MmZEWllqdlpneCtqa0NnN2l3bG95cjV0OC83b3JaYjF6bEcvZGk4MitRUU1qZXF6blB1aytFV1AzV2NMQkszNktMSmZ1Sy8rZHYvWjZrRnJ1UWJTeUFRVzIvN3V1alRKbWgyMS9tMkxKd29QQVlCQ0VCZ0tBSUlCSVlpUzdrUWdBQUVwa0dnelQxazA0M0RWSUdBZTloMFU2RHZBNEF1Tkszb2p0MkdYcFJmNThyYmYzdkZrbHZKdHJZZ0VFZ2ZLYnNYOVlkb1YyWC9hbzBXckh5b09teTVURU5UU2c1R1lnZHBpNnI2Tk40dXlrdzFQUGI5enNVKzd0MCtHL3ZzYldEc2xISnc1ME4wM3g0cDlhU3cycWZkUXV6M1pmRlFYYitIRkFqMGRYQ3phSGVUSjVqbGZtMnlLOUt4NTIzVHU5eUhRR0RzdnBUV1YySjBXSzZyUkNCUTJ0YTVQZGQyQTM5dWZSbXl2ZXYwdmpBbG8veWNQSWNNT1IvV1ViWnZ6anVVMDdNaUFyMjJ0bm1QODZUS1c5VTNCdXBBekNEV3B4ZXB0aHV0cWZIUzJ3eHNSbFN5Tit1S2RvcHRXdlFwOWwxVDhsc2Q2Njl2ZGU5WjNmaDM2SWcrMDY0aHZFVGJSWUJjNzNFcDN4bnV3NG1TdkxmcktncS9hZkFRMVJTai9pZEJwUHpKQkhDeGNVamRjeVpVTmJrc1E1MHRYRXpTdTFwQ3p0bXptOE5GbkY1SVpDeUJRT3dTUlYraFFtUGhhZmkyTEp3b1BBWUJDRUJnS0FJSUJJWWlTN2tRZ0FBRXBrR2d5VzFkbSt2b0hJRkFXNnpCUG02V2RLVzRjL2pnWG80TmJ5T3VQK0N1dVZLNG1WajUzV1FBVEhFYmowQ2c2NGgxZjc3TmJhNUxML21Jangya0xWcjlqRXIwOE9TZVJROHBBZ0hmNXI5dE9LanFUdkNjRW1JZjk4NlRjNk9scjNhNW5OaEIyaENIa0NuR2RMZXQ1QkE2OVNEeVg4S3Q0YjVFRDI1dlUvaVo1ZkZheDgyN3R2bmlBOEJyU0xLSTVjZVNmTU93NitGc24vT3pxU3dFQWxLSjBXR1paNDVBd0w4Rit3Ulh1bDZYeitocGtIM2I3K1ZWWEZwN1Y3QUhwcFQ0MkQxVjNWb01Bb0UweWdnRXp1SFVObCs2dnFkcEk5RTlsMjhQVzd4M2tYQkwyUEhNZjlXOTJORksyQ1hjYXI5aGh4cnRmdDlDVGY4VzlwVzh4aDBkM01EWGxkbjNPM1RaSU94dDh2S1NJa2FOR1VWTDltWmRlVTZ4VFlzK3hiNXJjdGNBaHo1eWlBZlA2YVpVNHVvL1pReFN2bGZzUmNpZXgxSzlZYVhzeS90MGxaNVNYK29janMyN3ZnVUNRM2d2T2kzY3lNL3grcEF5Vjdya09UeGNGcWtySTBmQVVmZjhHQUlCLzE0NjFJcC9NK3VTaFRzT085clhuamEyeGt6dDI3TEwzT0JaQ0VBQUFyTW5nRUJnOWtOSUJ5QUFBUWcwRW1oVDFMY3BoSE1FQXE2OHFaNitiN3VXREhXZFV0b2ZSM1pWYS9IRWNuS0lnUWRMZWtubE1jQnVFdXRTTEc0aUFvR1NVZXIvbWJhUCtCTFZldXdqMXozNGZpVkcyU3NjVXZmWm94U0J3RkN1K21MaE9mbytKRTdsMWphK0xtTUlvWWJMamZGd250UUR2T1crcGh3TURoWFN3ZDhDRHJ2aDBCUk55VGNWN2JLemIyOGZxZU85bk8rV3dhUExWVmNlZm00UTU1eGRVdWhJenlBUUdGNGdzQkFGK0xmY29pbUhUZkJ2Kys2U0xCenFJNjBLbE95TnlmRm52VDlZcDNFU2dVRGE2SzdyZDh1dG01SUhnVFp2UzduR3dUVHkvZVZ5N0hIZnZuZDgrdVgwbFJCYXlPL2tYSkpkK2JzZjNyZllzMEJKc2pqQUh0MWUyOU1hZE8xcS9meWdKSWREcUV2MnF1YjZVbzJ0c1Q1WmtPQjk3T3AzMmVLNUZNOWZNYVBvT3ViMEZOdTBZQnI3cnNubEZmTTQwZVMxTURZM1V2OGUyNTg3Vk5JdEpIMCtzY0NVZlhscStJdkVLbjhiNXREaENwclNveXN4MVBNVENvdVYwN2RBWUlpOVI5Lzd0Z1JzMFN3UGFBbVJsZXJwcEttU01RUUMzaFBiQzBLVERTajNuWThCaTNsZDhPL0lmV09GOEhjSVFBQUNFQmlIQUFLQmNUaFRDd1FnQUlHeENmZ1d4cnVybXlsWHI2azRGb3N2VnlEZzN4Si9WUGlHeDJvYXd1VjZLc3NtcGJRUDRtNVMzU1QvczVXQ0ZoK2p2c255RGttK0RWR1g3RTd3emczeG5oRUlwSTdPc1BuNi90Q09IYVM1TjBNWjZXTUNnVDV2c0t5T1N1elExdm5IdmdFUU8zRHdtck9IcE04TU1NVjhrUC9HY0N1NXFmaWhCQUlXTmgwZ2FRZ0R1QTlOMzFjWktEemVkV2xkbmlKVzIrSjN3YmZBbW93b2p1dHNvVU9mSGhiNm5FWUlCSVlUQ0h5dUNpbnlyU0FLV0IyelBnK2FQZmNjeC9xZ21vbmhXMWUzSDBBa2xqb0hoemlrVDYxN1R2a1FDSnd6V20zR2dwTGZzYkhtZ0ExM05vVDdYYXRMNi96dTZNTGdFdFhERG9sbVlYTnBPa25TM1NWOXJiU0E4RnliSWN4N3p0dFZ4dGJqTzlheCt2aWpKRDJ2b2N4dkJwRlhXemlGV056MW9RM1VkVTJmWXBzVzdZeDkxK1FhQzJQQ1hYOTcyOXZGVUtudjc1VVVnVUF1bzFqZlk5OTc5aFJTZDlheVdtN1RXY1FpSHdLQjJFalUvejAyUGwxK04vcyt0NmpyUWRzN21pdWdTU1ZvYjFzSE4yUzJDRzAvU2ZhK1FJSUFCQ0FBZ1RVVFFDQ3c1Z0dnZWdoQUFBSURFTEJoM0VhVTI5U1VuZUtLUEZjZzRHcmE2dnhTNVRweWIwbDJGemRtc2l2QlkxWXFYQmdQSDlzaUVQQXR3MWc4UXh2TWJLeGJQYXhDSUREbUNEZlgxWFlvVjJJY2lCMmt1U1YzbFBUbUFib2ZPNUN3WWN5M3F1M0JZSWpVZGxEcytsSmN2L2JacnRoWURHbElkejlpTjNOS0RvaFNEaUo5Vysvdit3UzVWRmJNTld5SjE0MitteHB6amVuNmhoVEw5TkdmcmdJQno0RzIyMldsYmZRdGV4dVgvZS9WWkRmNlBqanNLM205T0twRFliSDN2NjdvUHVldnhVYzJqTlhGQ2U3N1ZtMHVwaUhjL09hMm9VdCtHM2c4RCt2U0Q0UG5weTdsTDU3MVB0QjdoRS8zVVZobUdWUHlJTkQwV3phVUFUZ1RWV1AydXIzOWF1YWg5d0Y5OWFXdW5DdExPcXhCaEpSU3J3Vnl2cFhwRUFFbFhuOWlodGFoQklOdGU5MlVmWHZLYjhQWUlzSXB0bWt4aDJKdHl6Rit4NFM3UXhrZlY5K0htQ0REM3JJZW52SVNSYnk5dUlpdU44YnJtaEViazFURGZreXNrVnBPSXFyV2NEV3BaYXptNjFQWVdkcUcxZWRpWXVxUzc3OUZIVU1MQkdMdmFHNElqbFNtYmYyYTRoaW45b3Q4RUlBQUJEYU9BQUtCalJ0U09nUUJDR3c1QWQ5dU8xTFMvUm80ZUtQK25NaWhVWWxBd05XMUdkWHRIdEt1SThlS0U5MWtUSHA3YUljTmJVMGVCQlp1aUV0RUFnZ0UxdmNDT2k2NWIyQTUvcVZ2bHYxVlExTlNEaHBYSDQwZDJneDUrQlVUQ0x3bTNPSXZPUWhPR2EzWWdjaFFod3BOYllzZEFLYmVzRW5wZTEyZU93VUJWdFB6SlFkRU1ZR0F2UVpZQkRLVTIrU1lRV0NJZzlCYy9yRjV1Q2h2eWk0cnV3b0VjcG1sNW0rYmZ6bEdndFQ2U3ZKNWZiOUdPTnkzYUNubkc3Wmt6YTlyb3oySStPYnkvalYvOUw1aHoyb3RkZ3hYVWhtQk5nOElKZXRxV1N1R2ZXb3FBZ0dIMFhxdnBLdlZkSGZJL1V4WHVySGZxa1g1WGVOQmQyMW5IODlmTTRSUnNCaTVKTDJnOHFiai9WQ3UxNkdZWUhDbzM5allQanUyQnFTSUNNM1IzNlArUnY1cUNkVE1aNmJZcGtVWFlyeHpmdnRqSVNuZUgzNDNIZDV2eUhTRDZuS0V2ZnhkdUtHU2xGQVZpMGRqKy9JK2hZZUxPaThuNlNQL3Y3MXpnZDd2R3UvOHM0eWxXYnFZYU9zeVlseXFjVzFSaTJZUTE1U2dabHJHZmFvTW9rMjFJaWJNdENYQnBKY2dKQ2dxbExWY3d0REV2V2diUmhDMEtpNGw2ajR1RVhWcHExMlRHbWJOK1l4OS9GOG41NXhuWDg5N2Z1LzczV3Y5bHlXL2ZmYlorN1BQT2UvZXovNCt6Mk5tUkRJY0s3RUgrMTVxaTloMll1ZXFSZlNpdFJ3ZXM5WWsxUXBwemU0Y1VzRk1SVnZ6dmxGelBGc0xCTHgzTkRaOVJld3owZGNyRlg2bDNrLzFSVUFFUkVBRU1nbWtHRmN5YjZITFJFQUVSRUFFRmlMQU54M1BlRHhQeGdvcEJ6amM4amJvdVFJQjdza0dnMXpRWTJWSno0MHBENk1IaFZEd1kyTWMyNHorUWpnUXVPTElnQWduekdid3d2QzNPY05saXFGbGpOMCtHTTVqWGhNRU1HelUyZWdpQk1EQXhUK00zT1NralNrNWgwV2VJYTJWUnhYajhRUUNwYytXeDJ3dVR6SFhMbVg0Ni9zNTU4Ry9oT2VqTng4NUJpTFBFTG1Fb2F4RlpBVHYyVXI1dThlOWJ5dkZBSnh5L3hwMUpSQklvOGpoQ29mdWlJSll1K1RtNSthdWhERWxkVkJKb1Erdm5SQW5IRjhZR2FHa1g3dHk3VDZzYzlZZ0VQQ0V4QzNYTTZYUHF2ZGJ1ZGwralhlK3RMODFya2NvOExTdzMwaHRqKzhWMFFSU3hObmVJV3VyYUViZU9qc21uUlhwR2ZBU2p5bEVzbm1xbWZXaThKaHJjdXFzc1UrTXcrT2RzcmRBbEkwQWY2cWtlTzduTU82dnVYcVgvdUs5WnNhK1pheDh0c3ZCZmxzenV5VGlKdDYzcGtYME51K2dQZlpnM3hNSTlNNFNsMFp3aUtuaTlUdW1qV0dkSmZZOS9UMTdCNFByZGdMd253bnZ4aTJES0JYUCs5aVNzLy9yMjI0dEVKaDdSMXZ1bmVmMmJtc1FuOGZPcmVxSmdBaUl3TTRUa0VCZzU2ZFlBeFFCRWRnakFuam80OTAyRmlZNEpjeC9pVUJnenNPT3FjQWdRM2kvbGptaThTTG5JT0RXZzdrbnhjSHRPczhSY2xuR0NnUm9Zb3dyNGR6WmJHRkk3VXRMTDh4OU1KeHZUaGNHYkx4RjhabytLdnpEc3lKV0JERDMycmNRQ0xUMG92Y09Sa3NNRWpHZlI4L2cxc0pJTnRVdnozdHdDYy9IRnZQaEdTS1hFR0hNNWY5bFBsb2RDc1E4ZzlTWnk1ZTkyVWFzQVRYMnZqWHJTU0F3VDdPUEVvREhMQkYrT0JnckxWOHhzNWVZMlJtRmFWaW0xaFgwTDFaOFdUcVdYYjkrSDlZNTJ4WUlzRVpIREhiaXpNTzAxR0ZlenZOOFdJamd3K0YvN1hWZVRuK1d2QVpSTE44eFVyYWxGRHoreWY4ZUcwbkFPK3l0bWU1amN4ek03VlZuQmhaellFMmFGU0pqM0RRQjBMbGR1UGdubXRrbk1sTXllTGRhWTUvb2MwMkJnTGQrakJGM2VCeGovdTZ0cFZPOC9yMjJXcXpMdllQMjJQV3RseHF1ZHQrOWZzZk0zYkJPQzRFQWEweEVBRVFrUXlpQ2ZlSGFacFlpQXBnYlM4bCt2TFZBd0h0SC84N01hZ2xHTmhueEhzM3hMV0dXODF6cEdoRVFBUkVRZ1FrQ0Vnam8wUkFCRVJDQjNTQ0FaOXVySmp6cy9xK1ozZDhKaTcxSm9VUWdRRHZYQ1Fiekl5ZlF4cVE1S0prVkRyS2VQOUlBcVJjd2txR1VUaEVJOEZ2NVVEUER5SWI0Z3Z5MXgzWWVpUjhZM0dQT21JREk0SnlDUWUyRDRaekRmdzZHVGpDeld4V3c4aTV0SVJCb0ZYS1ZzYlE0a1BZWURUZjNid3BpamJIcldoaHhwdnJuR2V5VzZFdUwrZkRHVmR1WU44YlhHMWVNY1Q3bHVVcXRpMURsbmQzdjNJMmNDL3NvTWFudEwxRmZBb0Z4eWh3TW5SN0NQcGRFQ2VoYlJ4VEE3ejNwVnhBRzFraS9NaFVkaWQrVHUzU0N3ZmN2OFFBMXZBY2htUm5MOXhyZXcydDZIOVk1dVFLQlBwb0dERDlpWnQvcEluWVJSdCtMQ05ZejUzcldWMDhKQnlKVGMwRzdkK3JXdUJkNGs3WEZ2OGQ0WlBNK3NrNVA4WnpmNHBDaWI4MSs1UGJkZ2N1WlpuYUw2S3ZNVXZaZFhocW5oTnRXclJxN0J2RlAwNnFHQUFBZ0FFbEVRVlRTdzAxMTZqTWhmUGhydW1oOC8xeTE1L01wK09adTFiSlBOUVVDdngyRVIyTmphZW1kUEhhL0tSc0dkVlAyZjl0WWwzc0g3YkVDQVc4OXY4UmV5WHVGUEw2MStzaWE4dTZkUUpUZkRZVEdZMDQwWGw5ai8xNXkyTjFhSU9CRmlZc2RZKzE2SmN4cTkwWHRpWUFJaU1CZUU1QkFZSytuWDRNWEFSSFlFUUtlTVNURk1BU1NVb0VBYmVEaDh0YVpqVmhxbjJLbmFpcXY2dERvbVNJUTRONTkrZ1lNVkd3MGgrSUE2c3h0ZGtzM1FMdHNPTDl5ZHlqeHBDQU1xSEU0NUQwcktRYWl2cTJhaGpTdmY4Ty9lNGFlMG1mTDY4OVNSaHl2SC96ZGkyYXdob1AwblBud0dLOWhYTEhHK1poNXpLMHpKZjdxMnlPOUFHS3N0UjRLU1NBd1B2T0l3MTdmNVE0K0p2ZkJNTE4vRE9tVlhtWm1wUC9aTEhpTTRUR045M1JPUWNEQWN6V1ZhdWh0bFVRSUtYM2pBQlJoV28xQ0txVlhod2hQdjlVNHd0TmNmM2Q1bmRPUE8xY2dnQWZlMngzeDVKUUg0RFVTMG5NZ0JrUlFIT3R0WHVQNVMyM0Q4OGhPRlVXbjNuOE45ZkdFWlo2SXlzWWEyaXN3WWU5Q3RCT3ZlT0hKdmV0Yi9UMWxEVEtYSHM3ckg2eGVHc1FDbi9NcUoveDliWDJxdWErcGRTaWZnSE95YXEyK2JHTmRYa3NnNE0xdHpqNjR4dHhzdHVIeExSVUlzTjRqdmNxcGtkL0lHdVBMMmYvMTkyMHRFSmg3TDJxTVBiZU5FbWE1OTlSMUlpQUNJaUFDSXdRa0VOQmpJUUlpSUFJSG00QW5EampMekI2ZGFQQ3RJUkRvRDlSUG04RjdVcmRwZTJaRnd6cjNKSjhrb1NLSEJZOFF2R0w2MUFhcEFnSGE0L0NhZ3d3aUNJeVZ1Y1BMMGczUUxock9tUzhNbkM5Y2NQUE92T1VZUmp4alM0cmhNdldMSTRIQUlXS2U4V3dOQitrNTc3cG5LRnZEdUZvKzQ3SHZCSWNpZUFIeHV6SDBBa0ljUUJoYlFzaXV0VWdnTUQwenBjYkxPYzg2Ny91OTF1ZGxybCt4bm9SemJmQWJmRjh6ZThYR0FYSk96dkphL0haeG5UTmtreXNRWUs1ZWJtWVByZ1Y3cEoyREZBMEQwUS9yK21HMEtkYjRIQW9oRktvUk9hUWg3aXBOSS83Z3VZZ1JWLzFsU0kzMkRlZk91eUFRWUlpa0tZUE5NTjFjQ25nRUZZL3Q5aXFrMHFwUjF0UW43M2N4WmMxWDYxQytCbVB2K1NVOUNXa0l2YktOZGJtM3g0bjkzU2NsMy92TTdJaVpRWlpHTnZUNGVYLzMrSllJQkVoUGlJRHkrbDRuS3Y4OVovL1hkMEVDZ2NxVG9lWkVRQVJFUUFUU0NFZ2drTVpMdFVWQUJFUmdUUVJ1M0JuSDhQYjV5WWxPWFJROCtiK1UyT2thQWdGdXlZRTZZWDZQbTdsL1RaSEF6NGJjazRjUDdvZVJFSU1BRVEzNmtpTVE4REJPYmV4ekRxU0g5OW8xd3puUHh1OTBCdHhUUEtpUmZ5Y25Lc1lFdkNxSjdvQVI3Z2tUMStiTVIwMURXdVNRZmxCTkFvRkR4RHpqMlJvTzBuTU1SSjZoYkEzalNqRVdwejdqcWZXSkZNTTNuZmZ5WWpON2c1bGR1T1h3NkRGamtFQmdtdEpjaU9MTnEvQnNIb3NFSUlGQXpCTjRxTTR3ZGRMbTFlY0g4ZDdTWXB0ZFcrZU16VWl1UUlDMnZCekNhVS9BWld1M2l1eFYycStwNjFsSEVtNGZ6M2k0dmpjYy9Ia0g0SzM2czYxMitSNCtxL3N0Sk8rNFYySlM4SGdIck40OVd2MDladzJTR21saHF1K0lVUjVUU1lDNGxqN1YzTmNjSklGQTdCcDlHK3R5YjQ4VEt4QWdaZEJiek96b21aZnhPZUdaYnZXK2V1MTZmSE1FQW5QckdxOC9ZMzhuMVFnMk5Hd0wvSU1yRVFrdVA5Rlk3TE0xZHJrRUFqa3pwR3RFUUFSRVFBU3FFWkJBb0JwS05TUUNJaUFDaXhMNHFiRDVPM0xpcm5pNWszOXpMQlMrMTlGYUFnSHVROTdUUDNHOFd6Z1llRnJoNFE2R1Fyemc3amN5dUxIRHRSWUNnWnQzNDhTd3pnWnlzNUFuRmlQbWh6M3dNMy9mSmNONVRIU0pNUlNFejhVQS9MZG05dGVkNStQSHd1SGdOMGM4eGVZTzFTVVFTSHNRdmRER09VYWN0QjRjcXUwWno5WndrSjVqSVBJTVpVdU15OHM3bkdPY3o1M25YYjFPQW9IcG1aMDcvUHhLRUJ2aUZVeDQ4WGVOaFB1WFFDRCtyZUUzR043UG1MbmtienJSelM5MVVUaytIZDlzY2MxZFd1ZE13U2dSQ053anJQdUxRWTgwd09IRTZZWHI4QmI5VXB0eEJHSUUyYlJFT3BSN095a2tka2tnME5NaitodlI5SjVja0dxR05EYXNrOTVjS1RyRnR2dTBxd0tCT2JGaHl2NXZHK3R5YjQ4VEt4RGd1WCsybWYzbXpPZmpyN285OWQyNjlINEk3TGRSUEw0NWUwdWlJdnlQbWZTV1krTmsvTmdVaUJLQ0NPQlRadmI1amgxQ3MrOE5MdkRlbVp6OVgzOExDUVMyOFJUcW5pSWdBaUlnQWo4Z0lJR0FIZ1lSRUFFUk9IZ0VQSEZBYWY3Tm1nSUI2RjRuNUwyY0VqTlFCOE5rU2U3YkI1aloyV1kyL0YwamVnQWhkTThaVEhNTGdRQmhMRG5JRzNvMzVteHloMC9sTGhuT1l6ZndDQUplMGtYSXdDQ0NLS0JQRHhIenhrb2dFRU1wcm81bnNGcmk4THJ2NlJyNjBpS2lnMmNvVzRLeGR5aFFZdmlLZTlKMnY1WUVBdE56UEdURDk1LzBNMzlrWmwvY3VHektRQ3VCUU5yN2M5dHcwRFdNdUxUWkN0eDU3NG5Pc1VUWnBYWE9GSzhTZ1lCM09KRXpSNTh4czBlWjJUc3FIWHJtOUVIWDFDSHc0eUdDd2x4SWZRUzFlQlYvWXVhVzNsb0FRVGZwQ3BZdWlKYm0raDNUSC9abkNNbFBMZ2cvWGpQeUhYM2VWcCs4NzBtS0tIUk5FUVJxOVdVYjYzSnZqNU1pRVBCRXY5OHhzenQxemlRWHhMdzREZXA0ZkZOdEoxN0t6WDRJUktHQ0kvOFFCbHlhTURidm5TblpKMjFUSVBEZGtKNlQ5Y0RTaGVmdnkwdmZWUGNUQVJFUUFSRzRMQUVKQlBSVWlJQUlpTURCSXVDbEZVQWNRSTVTRk5TNStUZHJDd1FnSExOeEkxZmtyNWtaSWQxU0NybEl5VDg5bG1waDZtQ3RoVUJnNnZDbmhrcC9Wd3puZUgrZTErV092ZW5NQk9PbHczUEFNenhVNzhjK0Z4SUl4Skx5Ni9ITmVYZm5qZkpqRTFWNTkzNHg0NzMxNzN6WkdwN3hiSW1EOUYwVkNIamVSckY1VzNQbWRWK3VrVUJnZXFZNTFDS004K3U2S0FIUEMxNWNZMnVZSElFQWE0UVRFejFIU1ZOREh0dGhvVSt2Nzd4UkVURGtGanhIRVM1ZVlhUUJjbDdqdmVZVlBOM0lzVnRTYmhIU2M1Q3lZNm9RamVvWFF2U2VrbnZGWExzcjY1eTVzWllJQkx6ZnZ4akdmWjFQZHMvZjc0VjNqZ01UbGQwZ2NCOHplKzJJV0hwemRMOGNJcTVOamRoTFpWRnlDTFlXeXRoQVdkdHlLQWVQeXlWMHJGU0VQM1dycGZ2a0hYYW1DQVJlMUFuNUhqRXhNSDR6OFZULzh3VEdKVlhuQkFJeEFwbiszdDRCZG92OWh2ZU5UeEVJZUhzM3hzbHZBT24rdGxFOHZpa0NBVVEyMkF6dU5UTVFuQXllYUdha1Zzajl6ZlBlbVpKdlkydUJ3Tnc3bWhKWll4dlBpdTRwQWlJZ0FpS3dBQUVKQkJhQXJGdUlnQWlJUUNVQ25qaUEyOVRJSWRwQ0lFRGZZanpIT1d6RVdKT1MrL1pKblhIbnFTT01NVXB3cVBYV2tiKzFFQWhNYmU1cUhLRHVpdUdjZy8vbno3d1BoUFpqemtyREdrc2dVT21qMDRrRGZ0N00zajVqY0U0eFdKWDJhZzNwRGp5dm5Cd0RrV2NvYTJHSTNKeUx3MElxR042OXNTTGpVZW1UKy8zclV3VUNHRDN4OE9KQXVXVmgvakdjM25Ea0pxODBzM01iM0J6dmRBNjUrMEplWmc1ZVBHRmpqa0FndGZ1a1JucGpTQTAwdlBhbHdlTTZKYUxOc0kzYmRQUDZ6aEdCQU91ZTI1blpaMU03WEZEZmkwaEYwN3ovOXc4UkJ3cHU1VjY2Syt1Y3VZR1dDQVFJSTM4SE0rTjNFRUVzY3hkYjhKTHN3eWQvSk5Gck12WWVxcmQ5QWo4UklwbmRaS1lySEFoeU1EaFZQQkhrZnpHeloyNS9xTlY2d084clVRV2VZbWJYam16MTYrRzNtYWdHTGNvU2ZmSU9PMU1FQWw3VUNVK1VVb3VodDVaT09YVDIybXF4THE4cEVQRFc5VERIYzVzVWlKK3JOUUVKN1hoOFUrYnFyc0hXTXlYMHFTVjA5TjZablAxZmo2eTFRTUI3UnlVQ1QzaDRWVlVFUkVBRWRwR0FCQUs3T0tzYWt3aUl3QzRTaVBIME9pdmtXQ3d4WE1PdWxVQ0EzeHh5UUo3cGVHdGNaR1o0d2NTR2tpUmNKdUZSTHorWWVMd1JPY3diNDlGQ0lEREZEUysvUnhZK2xMdGdPT2V3aTRPbVl5ZFlFTzZRdytqekMxbHgrYSthMlFzbTJzazU3UFNNQWltR3ROVGhlY2JhRW9ORVRGODhiN0tXWXgvMnp6TW9mVHNZdXo0Y003RE1PblA1VFdreVp6NjhjYlV3Ukc0Ty8rckJRM2dzQ2d2MVVneDFtVmozNHJKVWdZQm5MRDdJMEhLRlJhMEZBcXhUK0thTkhhQnhjSDlNcElmLzFOelFQaDVzcklXRzVWVm05cEJPckVHNDF5WEx0Y0p2ODYxbWJzbzZpdlVVM3NtZWlDTzM3N3V3enZIR1hpSVE4TnJXMzBXQTd3dlIySWdrTjFXOGIrL1VucXB2aisvWFkzWVFOU0kxaE94UGp4UUsvR0hJOGQ3cWV3amlsbjJxdWE5aHovNG5NOC9FVXA3cTNsbzJSYkMvalhXNXQrYnozdDNoRkhpQ1p1b3Z1WWZiN0ovSE4zYmZNYmVtNnUvSHVvcnZZbW54QlBNNSs3KytUNjBGQXQ2emdBTUhLYjFVUkVBRVJFQUU5cFNBQkFKN092RWF0Z2lJd0lFaUVKTXJGcU10aDlEL1VHRmtyUVFDZEkzZm5jZDNvWDVQYy9ySkllNkRnaGVmWjN6QjIrOXRYZTdOb3piYTlBNkJhd3NFNWphNk5UYmZKWVp6K29aSUFVWm5GNFRXSzMyMHZIQ0hHSmNlV09sd3BQWkd1NlloTFpXakp4Qm82YzJGNklaREs0eW1VMlZwcjRPNThLSDBrWFFIYjBpRkhGay9oa2VPZ2NnemxIRXd5ZS9BSlpIOVRLM21IUWlrR0ZWVDc3MVA5U1VRT0RUYnFZYnUvc3JXQWdHODZRaUZQQmIrdjRhUithZURDTzd3d1lOZlV5Q1g4MDVkSTRUb1pmeFRoUWdQaEpIbUcreXR5M0w2VUxMT3libmZOcTZSUUdBYjFQZnJucDZucVBmdFJTajRuazVreXpkaHJMd2xyQWxUY25jZnBCbEF6RXhVdXBPY1RpL3BmZDJpVHpYM05hUUlRc2hLUDhkS2E1RnJmMCt2SHluaUZtOWQzbUpNdFFVQzF3dnJqU05tbnVXTFEyU2Ewc2g5cWUrNHh6ZFdJT0JGVGFtUjVyRWZtN2NmejluLzlXM1h0bHNNNThQYjU2VzhHNmx6cmZvaUlBSWlJQUlIZ0lBRUFnZGdrdFJGRVJDQnZTWkE3bGZ5cWwxeGhnS0hOeHpnMVJBSGNKdVdBZ0hheHlQaUNVNkl5MzY0cEE5QVRPQkZSZmlONEpYWFgzZHFGNjc0NUJramRtMkJBQjU0N3pPenNVMTRqUVBVRXNQNVpsaDI4dTRSNHYrTXp0QlBpT2NseXozTURNUGlWS21sWHZjOHFEenh5RmovYWhyU1VwbDdCZ2xDWGorODBZRU56ek9HNHV0TWRIb2JJYkU5RC82V1JnNlBCNWh5REVTZW9Tem5tVTE1enJ3RGhhVzh2MUw2ZkJEclNpQndhTmE4UTZxcCtXMHBFTGhhWnlnL3I4dkxmdE9SbTlkSUxURG42WWFBNzk1YkZQQXg1QjhMRVFMdVBQTnlJUkk0d2N6d25xMHRFaWhaNXh5VTc0RUVBZ2RscGc1dVA3M2ZjKy9iNjZWeTJzYTZiK25aaUJXejE5amZ4WTZ0ZHA5cTdtczh6LzF2ZHNJN0RpaGpJd1BHTWhuV200c2VSOTJVVkFmZXV2d2dDQVFZODVPNzMrcFRIS0ExMWplcGMrYnhqUlVJM0R5SUlLNDAwWUdhZTBKdi81bXovK3U3M1ZvZzRBbS9hZ29wVXA4RjFSY0JFUkFCRVZnQkFRa0VWakFKNm9JSWlJQUlqQkRnKy96UTRQazlsVk9OeXdpdGY5OHUzQ09iNzFxbHRVQ0FmcEpMbFR5WTNxYVZ1Z2dnSHRaRlNQalN6QUEzdmRQSkNYa1hNL3ZhVFAzYUFvR3BzSE8xUXA2WEdNNm5yaVVITWg3N3JieVNVd3czaEZUbVVPTGRGUjVpejVzZzU3QzFwaUV0ZFlpZVFPRGozWGZnam1aR1R0VGFoZWVEcUJOVHBZV0J6QnVESnpUWkpnLzZubU1nOGd4bHRGdExRRFBrT3hhQlpWaW5aVlFHYjc1MzZlOFNDQnlhVGUrUWFtcmVXd2tFV0pOdzZIM2N5STFycEJhZzJhbm9CQnkwYzlEMDFoVTg3TnNVQ1pTc2MxYUFMcW9MRWdoRVlWS2xBZ0xQRHFIdnA1cUlPVEI3VVlnV010VUdFZDZJTHJYTEJXOTRCUHIzbWhsa2pRaHhLUXhyOXFubXZpWW11dFp2bXRselV3YWJXTmRMWTVjcVV2RFc1UzMyUDdVakNJRHdwenFieUx1NjhQRzBQVmM0b0NhOVJtM2gzOVE5UGI2eEFnRXY3SCtLS0dTT3oyRWhqUVpydGFtU3MvL3IyMm90RVBoUk0zdDlTSk0xMW4raVdOMnBTd041UWVKN3Arb2lJQUlpSUFJN1FrQUNnUjJaU0ExREJFUmdwd2pnWVUvWWNDOE1QMnBmUE03bURzNXp3Q3doRUtCZktTS0Jmd3o1Yjk4OHNYbnRqUlB3dUx1Wi9aa3o4Tm9DZ2FtTlhhM0R5aExEK2RTMXNadnZuR2RvN0pyV205Lytuc3cva1FxbTFqaTdKaEJvZGJqa0dkdmd2YlJ4bEh0NlhoRHdRRFIxVHEwSE43UVR3NE9xT1FZaXoxQkd1NjA4akwzMzVRdmQ5L1IyM2NFcDRYUlZ5Z2hJSUhDSTM5b0VBa1JoNGpCb0tNamtlOEpoMkt2THB0NFE0cnd4aUFTR1RiM0p6TzYvNWVnQm0zMmlyNlQ4T1dabXpDMGlDWlNzY3dxblo3SExKUkJZRFBWZTNpam1FQ3NtTFpXWHIzcHQzNnhXaysxeDJFWjBwVnA5cWlrUWdMOG5LSTRSNzVmTTQyMjZBMDZFNzJQcGdXZzNOVFdHdHk0L0tBSUJ4dTVGRmFFT3YrbXNRL2p0WDZKNGZHTnRGSjZJUG1kUE5qYitxZlJRbTNWTDdyV0VqZVIzell3b0NGUGx6QzRhNllrTGlrU1dlTTUwRHhFUUFSRVFnVWdDRWdoRWdsSTFFUkFCRVZpSUFJZFF6ekl6d3VUTkZUYmFwQi9nOEtaMldVb2dRTDlUMGcxUW4vRDRIRW9pR0JpV0I1alp0YzNzR1JHYm01b0NnVG1ESEJ0dGpDWjR5SmVVRXNQNVZQaTlwY1BKTGJINVJTanlzc0I4aXZldUNRUVlad3REbFhkdy9QZmhzT3RqSlE5MnhyVXhCdkFXUE80VHdtOTdhK2NjQTVGbktBTlRDK0ZEak9nQnIybzh2NWJ5S3NwNEpBN01KYWtDZ2FVR052ZjhiVU1FTkRmdUZoRUVmaTRJY0E0ZnVmSDVaa1lFalc4VlRBYmZERGh5bURRc2VHM2hBY2Q5MWxTMkVVbWdaSjJ6Sm5aemZaRkE0S0RNVkoxKzhrMGgvZHRTdjU4eEFzcTdkZUhlLzl3Wm5wZTdmSzNmclRxemRxZ1Y3eEQ5eFoxSS81RzFiK3EwVjZ0UFhqdXB2LzNlTThPd1RqS3oweHZ3WXUvM2dzcFJMN3gxZVl0OVJvc0lBdUQrY1RQN1V6Tzd0Y09lL1RFaUFad3hXaGVQNzlvRUFqR3BHbkwyZnozbk9SdEpyU2lMbm9qbTRpN04xaDI2VkJ5ZmJqMzVhbDhFUkVBRVJHQjlCRHdqNS9wNnJCNkpnQWlJd080U3dDQjdscGx4RURWWFB0WGxCYi9yUUJ6Z2JmVFhSRzI0Z2VLMzZISGhZRCttbjU4eHMwZUY5QXFiUmpjTUJKU1l3L2lhQW9FNWcxeXFnV1ZxL0NXRzg2bG5vNFZ4WTI3K1BBOEdQRGhMdmI1NUx3alRQSmVXWXhjRkFuQS9QaGpJWXQ0aHIwNk1NWW53c2crSmZOKzgrNlgrM2NzeldwdkhkVUpVa2lNak9wcGpJUElNWmYxdGEzdGdFWG9UUWMxVVVjakppQWxQcUNLQlFBS3NpYXExQlFLeDN2SXZEMUdkeUtHY2V0ZzNGWjJBSWE3Wlkrc2FJYW9DcVJHbUNsNkhqekF6MWxTcFhJWnRscXh6eXArc1pWcVFRR0Faem11NUM5NzZ2RWNuTHhBaFpFNkkxUE9JalFnVUk3WkYxTVJ2R2dLSVhTM2UzcnJXSGkrRlg2MCsxV3FuN3p2UEh3NE9KOHdNQm1IeHNWMUtuUStrRERpaXJyZjN5MWs3ZSt2eUZudm9WZ0lCRUU2bE9CcmkvVDlCOU1MZW9QUTNmVzdxUEw2MUJBS2tzeHdUWjBZOFZqK29jdE1RbllJVWhuTWxaLy9YdCtkRkJxbGhJNGxKS2ZmU1lHUGpPVkFSQVJFUUFSSFlJd0lTQ096UlpHdW9JaUFDcXlaQWpyalhtUm1ia0xreUZUbkEyK2l2YWZCakd5aCtqeDVxWm5oanpCM3VNZzQyTFhqbGx4d20xeFFJVElWVnJLWDRac3dsaHZPcC9IeXY3RlRpSEJDMk5BQnNQbmZlNXJmVVV6bjJFSGRYQlFLMURHOXp1Ymo3K2VSUUtDYVZSNnZ2VG95blVpMGVlTmtUdVlUdlUwekpNUkI1aHJMTit5SWllM1Q0RHNiMFo2ck9uTmQwZjgyK2hCRXU0Wmh5clFRQ0tiVEc2OVlXQ05BZTc3Zm5XZGYzQm9IaXFkMWE3VFZtOXM4Unc1bDd6eTRLWXMvYWFhSWl1aFZkaGQ5VnZBbm4xcWI4SHBEZTZRM1JyWTVYTEZubkZONTZzY3NsRUZnTTlTcHUxQXRqcDRUTk5Uc1o4NXVlSXV6MERsM3BlNjMxeUJpSEc1Z1ovMWlIeEJSQ3k3TS9yTG1uUWJBL0YzTGR5MisreGo3MUxEMjdRWTc0SWVZZ2RjekpJV1orcCtyRTdQMFFNeVB5U3luZXV2eWdDUVN3c3p3K0luMWx6NGcwVUVRUEc0dlltTUp4cXE3SE4xWWdjSFJ3R09tZFJJYjNLMDNQRmlNaTdlK1pzLy9yci9WU0pkUktaL0pyWWMwN040ZjhiajI5OHJlMHY5OGR1MGdpLzlTSnl6NVk0eUZTR3lJZ0FpSWdBdlVJU0NCUWo2VmFFZ0VSRUlGY0FqL1RLYnYvd3N5dTZqUXdsMWJBMitqbjlxM0ZkWE1iS05JbWtBZjRpaE0zcnBVanI1WkFZTTdMNXVQZHBwV04wTmNyUUN3eG5FOXRPcGNPamVsdDRqbTR2NHVadlQrRFY4b0dmbGNGQW1EN29wbnhmbDJZd1pCTEVBZmdiWEdLY3oySFl3ZytVajBNcmhYYTVyQ2RlL0UrdjliTThMSkxPU1JqL2ZyVUxuckJFNTErZnRiTTdtVm1lUDNtRk1RQnozSENsZzdielRFUWVZYXk0VDBJMGZwYkdmejdkbTRjak81RVA1a3EreEpDT09lNXlMMUdBb0ZjY29ldXF5MFFvR1crSjd3VEhJaHdrQkJUK0haNVVRVnVFUTdOLysxSWc5c1dXY1dNc2EvakhjQ1FyZ2lCUU1vM2ZPeitKZXVjbFBGc3M2NEVBdHVrdi95OWg1R3pXSnV4M3VGdzhYc1Z1MFBvYUFRNmN4NnVxZDhjMWovc3gxaER6WlduZE9zNWNsdW5yZ2VuMnVTK0hFd2l4SHBTd29FbVhLOGIxckExRGpWWm83N0N6TzQzMGRHWXZjUWErOVFQeDdNYjVBZ0VZdGZtL0diQTlmT0Y3d0I3aW5PNzlleXRadHI1c3hDWmtVUEpsT0t0eXcrYVFJQ3h4d2pBTnhueEh2MTYrQTdVZXIvN05kZlBocmtqTmVSWWlSVUl4S1JWZVZDM3hudDF5dVNIdXFtOGN2Wi9mYmNRcWZKTThmMGJLOWhHaUw1UkdySGxhbDBhZ2ZNaVJKKzFJa1AxWTdseStKMzRqV0NuZUdQR2ZPZ1NFUkFCRVJDQmhnUWtFR2dJVjAyTGdBaUlRQ1NCZjlVZElyTmdmdWFNOTd4bmdQVTIrcEZkV2FTYXQ0R2FNcXJYRWdjd3lGb0NBUTRWM20xbXBJY1lGc0swUGJ5U0FydkVjRDRWamozSCtGUHlnQnpSZVV1K3g4dzRiSmdxT1o0bEdBUTVzSjR6RUczZUw4YW9OK3lmOTM2MVpPbDVGUXo3eXZnd2hyRDVUdkdrWXZQT1lmaXZPSk9NWno1Q2pnOGxQZ3pNRHprd3h3ellPZDcrUkYxNVY0aXVNZGNWQkRvUERqbDNVM2hnZU9RZFBtYlFPRzNNclorOTc5dFlYejFENU5nMVJGQTV6c3krbVRBUDlKdUlJa1FQOFVKbGtzOFZJMzFNeXBhRUx1eDFWUWtFeXFlL2hVQmdzMWVrVjhFd2lsQ0tiMkpNd1RzWXNSS2VwcjBSZmU1N1I1c3RQYlJpK3B4YVoycGQ1cTFOVSs1VHNzNUp1YzgyNjBvZ3NFMzZ5OTk3S3JYVzM1blpDODNzUlNGZFhNcmFaUGk5SWpjMmUwaXY1RVFFT2lvY0prMkp0dnQ3SWs1Z3IvRlZyeE16ZjJjdmpCZ0JBZVQxUTcyVXRYWFBta1BORTgzczdJSzBEcXlWeU1YT1dta3FxbDNNZ2QwYSs5UlBRYXQ5VFV5S012cVF1emJuV3VibnptR05QaWJBNjhlWXM3Zm9yL1hXNVFkUklNRFlFTlR6M2Jsdndydks5K29ad1haeVNjSjF3NnFIaFVOdTFsZGUxS1pZZ1lBM1QvUWg1em1JVGZ1NU9jYWMvVjkvUFh2TzkzVlJXYkNWVEpXY1NCaGpiVDBnZkIrOXM2RG5tZGtUSXFObFRmVVp3UU0yQ2RLUDlHdnFFazRGajU4dUZRRVJFQUVSbUNQZy9TaUluZ2lJZ0FpSXdESUUrQjZ6V2NOYkFjWHlabmxIK052Y1FaQzMwVjltRkhGM2lka1lrTE1UNzd6K2NBNXhBSWQ4ZUxQa0d0STJlMWRMSUlCUmprUFZzY0tHaUhDZU5VcUo0WHpLUUZram4xM0sySGpHWVVWNDlMa1NhelQ2MFhDQWlTZjU1anZEczhKQk5ORW94c3F1Q3dUNk1XT3d4Y3ZjeTVrOXRubWZtNStjZzYwWWcyRk9qdENZVUluOVdCQ1IwUGZQT2MvZjFIUEZaVHliWndUUHRxbG1ZcjV2dzJ0akRGeGo5OE1RL3Jqd25mSENuZCt3aTh6eXRPQzU0YjIzT1VJZHIwMzkvZnY1bXNmQ3NCUEtOVGFGUlF1T2M4OWZ5Z0ZOaTc0TjIyd3RFT2p2eDI4S3Z5Ry8zNzFmTjRvYzJQOE9vVnMvMWdsd25qc1RDYWxsV083SXJtWlZHNFl3SndjNWgyZ2xoNEtiSFNsWjUyUU5hQXNYU1NDd0JlaGJ2T1hVK251elMveDJjM2lQd0loRDU0dG52UEg1TGlHS1JhVEpIb01vWlRFbFY5aVpFcFljY1JSZS82UUwrMFpNcDBJZERuZzUrSHJzU0NTOWxOK2ZJZXYrZTh5YWplaGFzV1hUMDNYdW1wakR1algycVIrVFp6ZElZVC9rRkpQdW9yK0dRMUVpTGZEc2UxRTErbWcvL0M2ejF2Wkt6QnhOdGVHdHl3K3FRSUR4NW9nRWVrNWZNTFBYbTlsYnpleWpZVjkwNlFoRXhBQlg2UTZpMlhzZzVyaG5ncENmNW1JRkF0U2RzOFgwWGVQN3hKNFIrOC9jYzhZM2xuVU5oK05Ea1NqcENyQkxUYVV6eU5uLzlmMkRGNzhCY0pvcTNoall6OTh1T0s2TXpVbmZia3BraEpSOVp0OCs3K21SSWZyRW8wYWlJcFJ3OHQ1NS9WMEVSRUFFUkNDVGdBUUNtZUIwbVFpSWdBZzBJb0IzSndkWmg0ZjJDYi85eUlpUVlpaWRiejhpTHNqcDVtTkNXOE5yT1Z6Nnk1d0dCOWRjMEhtK2ZqbWlIVFk2aEszRWl4VnZFSXhPTmNRQjNMcUdRR0F1VEJ2all6Njh3OGdJRFArL1NvbmhmR3lzdE1rbWxJUDBKUXRoVU45cFp1VGw5QXBlbVg5c1p1L3RES0dmREpVeDJOdzJHSVorYWNLemg4TVhOdkc4TzJObDF3UUMvejI4SS8wM1l6am1yd1RqTTk3Mi83THhSOEl5M2owWW1LYzhwSVp0NVI1czNjUE0zdUpOdUpsNStWeUhUV0Rrd0F2dllSRnQ5MVY2NHhiZm9VM3ZlRks5ZUFhczQ4TzNheTdYZG83aHd6TkUwbGRDc1hJZ01GWVF4V0NzeEdCSFdvVysvRWpuL1hlSDRKVjN6VWhHT1o0MmtVM3ZkYlc1ZEJVU0NNUS9Ha3NKQlBvZXNWZm1zQU12WGI2WHBZVjBVb2p6U3NQRWx2WWo5M3I2amxDVDd3MmkxcFFJSnQ0OVM5WTVYdHRyK2JzRUFtdVppV1g2RVNNUW1Pb0pRb0YramNLQkZPOUhUaW1OdnBhU3dxdnZIMnQyRHJ2WU15TCs3TU83RXlYZ0pwMEFuQWhRaUJ2dXRySGZIUnRieWlIMUhPdXZoU2hTaE5ibVVITW9HRUNrUU5RWHZtbjB5MXNUeDRhdFgyT2ZlczR0QlFMY28vK3Q4RmoyL2VId2szMENlNzdOZFN4L1o3L05zNEtOQkJGdlRNa1JNMisyNjYzTEQ3SkFnSEd5SnNXcm04Z2ZheXdwQW9IcmRRZjNDQmJudk8vN01SSU40U1VodFNlcElCRUxZSk5nblljb0ZISEFXSmgvMW00SVU5ai9UVVZVeWRuL2JiS1BFVHBRSC9zSUtSUDZTSDdzOWU0YSt2NkJzT2Z6VW1wNHFhUEduZ2tpUm1HanhQSGdJMlpHS2pvSy9HNFdVblZobzJFdlBYUjIybXl2bE5NYW4xZjFTUVJFUUFRT1BBRUpCQTc4RkdvQUlpQUNPMGlnenlXSlFwdkRjYndnbGl4VEI4cmJXTkR6TzhVbWhrTzlXdUlBV05ZUUNIQ1krYktKaVNGeUFKNEx0Y0p6NXhyT3B4VHBPWWZrTlo1QjVoT0R4QWsxR2h0cDQ2S3dTU2EzNGRRaGJzN1lXeHZTNW5CNEtRWjRMOW1jYzJnVGE0akx3Vjl5c0JWckpQKzlFTm83cFg5OEg5N3M1Rk5NYVcrcWJpK080SkJ3YVlFQWhraStOMk1wRDJxTXJXK2o5Q0NoWmw5MnFTMEVmSVE3eHNBOVZqQnM4cDV2NjlCWUVRVGluallPa1Rpd3dnc3Q1MXRiMitNK3J0ZDFhL0ViamdjZEIzKzFuOWZjZFU3ZEViWnRUUUtCdG56WDFucnMycWRWdi9sTnI1RkxtcWh1ckRFUlBpOVphZ2tFYXZZNUpjTFNVdk9mMHFlZVJldDlUVXlhaHByenN0a1dhU3FJb05hbi9NbTV6NjRMQkdDQ1lJZW9mcVFQbUR2UXplRlhlazJLUUlCN3BVU1VTKzFiSDRHRmRSOWkrMVlDZ1JTaHc5UVlVb1FycE1ra2VnME9BMHVXYmRnVGx4eWY3aVVDSWlBQ0I1S0FCQUlIY3RyVWFSRVFnVDBnZ0Rjd1lTZExOcmU1bU5Za0VNZ2RnM2RkcVVCZ0xtUTZRZ2JVMDNqejFpcTVodk1yQlkrTW93Y2RJY0xCdi85bEhRSUFBQlNyU1VSQlZPdWlVM3lwVmdjVDJzbnhSb3BwSG84VDhwZWliSjg3Vk45RmdRQWIvTWQzWGcrbnhZREtxQk1ieVdTcTZWZ2phWTVBZ0h1MkZnbVE3Z1RqRTkva0dNSEdHeE1aeHhvaStlN2d1VWJveHRxRjl3TFBHY1FXS3ZVSTRDbjV1Z2dCeTR1M0pBaGtwQklJcE0wM0hveEVkaUtQN2xVVExpVmQxQk1qUXlrbk5Mc3pWWFBYT1FjSmdBUUNCMm0yeXZzYXUvWXB2OU5sV3lBbEVybW04WnF2VWJZaEVsaWJRSURJQXh4dVhSZ0pkSW41VCsxVDMvWFdBb0grUG5obEl5NlpPbFNOUkJsVkRVRU1hYmRJOGVPbEsvQWFqRjJYZTU3YTNuMDIvejczRzBpOVZ0R21pT3FCQVBuV0taMXRXQmNSOWhNMm9nZkczQ29sYkg1TWUzMGR4QUgzQ3hGSXZIZW14c0UzNlRZUWJPU1dGSUVBOTlpR1NLQUdwMXcrdWs0RVJFQUVSR0NDZ0FRQ2VqUkVRQVJFUUFTR0JDUVE4SitKT2FVNmVSU1ByZXhkbDJzNHYxWVhGcG44anNPd2U0U0p3NXYxVy81UW05U2dYK2NtNWlPYzY4aW1PSUI2K3lZUTRFQWE0d2pHU0ZJTzFDd1lLazR1akdSQ1dOQzNtNW0zN2lTRVB0RTNjZ3JHYXc3eThXNnRXWWg0d1VGZ0g4bGxtd0lCREpFWWM4NUp5SXNldzRKd2xiQ3ZrVUltNW43N1VnZGpLMkdXOFR5UEtadENsSmo2dGVwSUlKQk9raEMwRHpXejU4emtvNTFxbFJDM2VEZnlyVU4wcFBKOUFybnJuSVBFVHdLQmd6UmI1WDE5WURqVVc5bzdsL1gxcjNmQ3hxK1dEK0dIV2tBY1JibzUybTVkT09SbDdVVU83SmpTK2pDZVEwdkNzYWN3WFdPZmVwYmVZV2VLT01PYm4rdWEyU3U3OUc5RVNHeFZhcTlqOTBrZ3dKd1FUUUNSOEptSndzZGE4NG00Z3pVd1F2RStyV0JxMnpnZ3ZDaWtDa205ZHF6K3BqaUF2M3Z2VEkyRDcxS2hRNnBBZ0hHeGYvNmpJSDZxd1cycURaeWVFTW15Ymw0Nk9tckxjYWx0RVJBQkVkZ0pBcDZoZGljR3FVR0lnQWlJZ0Fna0VaQkFZQjRYSHFHRW1KdktCMHBhQ0F4Yk5jdFZ3Z0VyT1RLSFpTNXZPK0hReWVrNC9MM252NUVmOHRLYW5VeHM2OHBoay9ncmlkY05xNU1QRDhIR1ppN2tmUlFJd0lWNXhsdm5GV1lHMzVKQ3VnYTRZbXdvTFJqYU9OUW1SK0pVNFhENkhwMFg5VGNLYm9aaDViR2RXT0ozSzRUTHhDajluNEpIL1daNmsyMExCTUJEeVBvWEJLK1dBbHlHUVE1RERVWjRIVlNXa0x6c3RibGVjNGkzOEZiNmZOM3V6TFltZ1VBODdENTZ3Rk1yZkdOckdNVGplNzcrbWpjUGVZU0pmRFFzTlF6dmF5QWdnY0FhWm1IWlByQlhPTW5NanAvSWJWMnpOMFFZNGw0ZnJaeVdiYk9QckRQdjNCMGkvbUZsb1dKL0Q4UU5DS2hTRHdtSmxrQnU4Ykg4NFNXTUVYU1JGZzB2K0ZTdjlEWDJxV2ZoSFhiV0ZBaHd6MVlIMEJ3MG5oTDIzVFVQSGZkTklOQS9GN3cvckVFUmhsKy81TVdKdkJaaHg5UE5qRWgxSmZ1L3pmNFRVZThwa2ZlZnFuYUJtVDE0c0JiMzNwbGE2eFRXbWRpUkhwWXhoaHlCUU12M2s3Wlo2N0puUGJVVFdWMmNNU1pkSWdJaUlBSWlzQUFCQ1FRV2dLeGJpSUFJaU1BQkl5Q0J3UFNFY1FENXdwbE4yNmM3OGNCZHVweWZoSHlzV2VZTUZSanBFQ1ZzSG1KeTc4dUhEUm41UjRlRmNOYUVTTjUyWVIzeWMyWjJSa2g1a05JZkRwUXhoSkxYZVRqMmZSVUk5UHdRQjNEb3kzT1JhaXlGSzRZVlVtU2tHa1BuNW84MEFGUGg4WE5EcEU3ZGoxRDhoS2ZNR1QvR1lLSXc0SVV5Wm14Y2cwQ0FjZlB1a0ErWUNBK3BZVUVaMS9QRHRUTFdwSHgxL0xyTUM1N2xmR09uOHRTVHpvRnc4NGdJeGdwL1A2NkxGdkhxeXUvZ1ZPOGxFUERubFNnUUhKZ2dtcHFhVjcrVjZScDhkL251OE4zZFJtcXBrcjdYdWhiait1c25HcXRsZUovcUsrOHR3cXNyMUJyTVJEc1kvbDgyc2Q3aGdPUXhqZTlmcTNsK1EvQ3VWSWtud0FIcERjd01VZTh2UnFTZGlXMlpnL1N6Z3ZmdEpiRVhWYWpIZU80WUJKbWtMQ3NwL1JnSWMxNXlTTWdlRFdIMGIyZnNLWWI5Si9vYTNzeWwzK1ExOW9teGVvZWR0UVVDUGQ5YVBIaG0vcUI3anhDSnR4QzQ3cXRBb0o4bmZoTkpaNFlOZ1cvV05VdGU4STFyV2QvZ1pIRjJGMFdROUhpdHZsazNOTFBmTjdON0ovWWJ3UUxmRDZKL0RmZkEzanRUYzUyU0s2Z2hNdFYvTG5BQTRmM0VnZVRKM1J6QnNLUWdlQ1lpQmFLdkZ1OW9TZDkwclFpSWdBaUl3SUNBQkFKNkpFUkFCRVJBQklZRUpCQ1lmaWJ3Qm1GVE8vWDcyY3FnTW1lb3dFakxRZE43TjdwTi93Z1ZTRWpIc2NNTURqa0lKN2VtY25VenUxY0lkVTQreEdHRUJnNXVQeEtNUVVSQXFDM0NXQk9MV24xaG84OGhNc1pvMGw3ODVNQ3pIa01OSERHRWtpZWROQUQvVU92bUkrMzB3Z1dNVGN3dmg5T0VsTVRqUHphTWJFcjNHRDllcVJpSWVFZXUzUmtyaU1heFdmcm5pckhENEZNTlBlOVMrcDVTbDhQTGV3YXZuNXVOaEFkbGpLVGhlRnNJYS82M0N4MDhwNHhoRityR3BQbm9RNWJpNVlPNEN5SEFWQ0dLQjU2VWIyNThhSHlRQkFKSEIzRUZBcmpOMGlJM0wwS2orM2FHVGJ6UlVqenA2QXNpSzhKUnA0cVVlRmNSL1NBd0tUa29PMmp2RTBJMlBIUlpBNHlWbW9iM3NmYTl3NkNEeHJOMWYxdThiNjM3dkxiMitiMWdIWFJVV0tleDdrVkFRTGpuc1pRRWZCdSszYjBqSExwODBNemUyYTN6UDk0SlpXdm1RTTlsZEZpWG81dHZNK3NRUk5JY0psNTFwREVPaVlqMjlkZmR1dXpENFZ2T2VGcU1nVDZ4SHJwVHQ3YTlyWm5kY29ZdGE5SC9GZFpJaVBkWUU3ZUlzTGJHUHVYT2VZM3IrdWVHbEhkM0NHdjBzZWg4UFB0ZjZlcWNGNFRHN0hkYjdsVnFqRzNYMnVBM2tpaUdSQTloWDhYN2hLZ08wZHRZNFoxQ1NOWi9yeTQwTS80eGwwTlJmMHRXcEIzZytjSitnNUNKNTJ2VExrS3FSZlpFUkxsYjR4NFFvY0F0T3Z2SGZjSSs5bW9iOXBITjcrbWZob2lSTlcwanNPTzlaRjJHR0l4N0QvZlF6QjBNK2JmNTI0Uzlwc1UzdE9Xem9yWkZRQVJFWUs4SlNDQ3cxOU92d1l1QUNJakFLQUVKQk1ZZkREemRPV0E3Zk9LNStadGdHUHRhbytjS2orYXhhQUQ5N2RpTWZ6ZjhINHd1WThZNS9veDNLaHMrREl3cUlpQUNJaUFDNVFRNDRIeFdPQlNlYW0yWXp4VGpHMTVLeHppM3g4aEs1QnBFWGZzdTdzQ3JpWERDdzFMandKSjlNWkZPRU5jOVBNTjdDcyt6UjRWRHI5NEFucHVTb0U4L2NGcG4yUDdFd2diMThyY2hyUVc0SThKZ3JHTmxpVFdMQkFKcGMxYmpmVXU3bzJxTGdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FoVUp5Q0JRSFdrYWxBRVJFQUVEandCQ1FRdU80Vno0ZEg3Mmc4SjN0Q3RIZ0R5b2VOdFhWb1FPZUJSWFROWFkybWZkTDBJaUlBSUhGUUNIQzcrY1lqZ01EVUdEbnc1ZUVZUXNGbndGc1Z6bWtnZnNZV0Q2UGVZMmZ2TkRFSGF2NFRvS3QrWmFJQXdxWGlqNTZZTWlRbS9qcmY5aldZR2dNYy9IbWViQWpzOFNCRTlJR3pySXdMMElyZXhwbjQrUkpBWkUra1JDcHEwS3FtRmZ1TmR5dThyWGxKVDNuQno3Ukw5NU1RUVhXanFkN1hQNjBzYUFTS1pwSlJXYVY5Uyt1RFZ2VklRSDZZK1kwUS9lWklUU1FNdmFielh2dTUxb3VEdkVnaWt3Wk5BSUkyWGFvdUFDSWlBQ0lpQUNJaUFDSWlBQ0lqQUtnbElJTERLYVZHblJFQUVSR0NyQkNRUStHSDhNVjZlNUZZbi9GdUxNSmw5YjY3WGVacWUzK1VhUGFMdzZYaFFDRE5lMkl3dUZ3RVJFQUVSQ0lmYjVCVi80QVFOeEFFUERrS0FzZENxL01ad1VFNEkxSDBxbTc5Rk56YXpkNGVRdFlRcTdYOUxDVVZOS0dFT2lCSHFUWldZdERrY0FoUEdtNURUaEp3bDNHeU9JS0R2QThLQWs4Mk02RDZ4K1ZVSkY0c1FnZHpKYzRLS3NYRVNtcGQwTENuM1crcDVlblpJcDlEZnJ3OTl1M2wvNWhKQkN3ekk1VHVXOG1Xc3Y2VGlJRlZEeTdERUVnaWtQU2tTQ0tUeFVtMFJFQUVSRUFFUkVBRVJFQUVSRUFFUldDVUJDUVJXT1MzcWxBaUlnQWhzbFlBRUFvZndjM0R6cWk0ZjVkMW5ab1N3MGVUYy9GRGpXZU0zKzcrWkdaNlN1ZVUxd1ZPUzNQTXFJaUFDSWlBQ2RRamNKdVNFdnNKSWMvKzFPNGgrdW5QQXlhSHBRN3NjeVMrWXlEOWRwNWZyYVdXWWt1Y251dHkyL3pNYzRLZjJrc2dKSFBwZk1MaVFYTG1JTnNqeGpUQmdMSzkzNnIyb3owRTl2OFZuRjBUaVliNFJQWndlOHN1bTlBUEJ5WDI3UE1EbnBselV1QzRDeVdGMGpCcTNuSnJiR20xdnRpR0JRQnBSQ1FUU2VLbTJDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNLeVNnQVFDcTV3V2RVb0VSRUFFdGtwQUFvSHY0OGV6OExXT09JQjZKd1VqL3hLVFJwODRRUHJsakpzUmZZQVExMS9OdUZhWGlJQUlpSUFJVEJNZ1JQNVlGSUd6dWdQbFIzZmg3Mk5GV2RmcVBLd0pRLyt3SFllTlIvaHpOOFo0V0RoZ3ZtZkd1RW0xY0d5SU5MQjVPVjdxN3pLeksyYTBPWGJKVzhQY2NML1VVUHBUWGNnUkNnekZGWldHVjlUTXJZUEFnMVFLTmN1cElVcER5K2dCOUpmbmoyZnl5SnFkMytHMmVBZGV2TVBqMDlCRVFBUkVRQVJFUUFSRVFBUkVRQVJFWUM4SVNDQ3dGOU9zUVlxQUNJaEFFZ0VKQkE3aCtvOGhMUFRsSmdpbUh2NGtUY1JFWmJ3Z2Z6VVl6YThhMFNBNWtVOEpoekZUK1pFam1sRVZFUkFCRVJDQkdRTERLQUovWVdiOGhoQWlQN1dRbS8yeFpuYThtZFUrZEUzdFMrMzZYemF6MjNjUkV6NDNhSmpRK1k5SXZCbmU5UGMyc3plTVhNYys5MWxtZGtKaW01dlZQeE9pUHlBVy9FWkJPOTZsOUJVbVp6b1JCVGdvSjNyQU9WNkRDLy85MzNSaXl2ZUZ0QUcxYnYzeVR0Qkk2b2pZOUEyMTdxdDJSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSR0F2Q0VnZ3NCZlRyRUdLZ0FpSVFCSUJDUVFPNGVKMzhuRm05b3dSZ2lXSFAwa1RNbEdadm1HVXgwdnlSMGJxZkxjN25QcG81NG42K1lyZWpqWDZyVFpFUUFSRVlCY0piRVlSZUVjNHlQMW00VUR4TUw5QkNKV1BsL3d0SzRiS0wreGE5dVZUT2VWSnhmQUhpYTBTd2VlWk0ra2JiaHBTUDVEQ0lMWjgwc3dRLzNGQWZVbnNSWlhxZVVLQnRhWUpxaG1pbjJnYnYyTm1aeVJFM3FpRVg4MklnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUl3UDRRa0VCZ2YrWmFJeFVCRVJDQldBSVNDUHd3S1g0ckg5OTVjWjYyOFo4L1pXWjNOYk12eEVKVlBSRVFBUkVRZ1owbmdHRHJlU0dkUzZ2ZkI4S2hYNlVMZDQ5NDRDYmRBZm1WWjZoZUxTTEgvYzNNN0pwbWhwamhnNFdDTW9ScHRERVhOZUVDTXlPS3dMRDgrNGxJQUdQRHV5aWtia0NJTVJkK250L3Y1NFM2VTVqd1VIOVRGMTcrRlNFbFFVN0VoOW9QOWxqcWdiL3YrbmNYTS90UTdadFZhbTlxN1JqVFBKRWcvaXJNMWJtS0doQ0RUSFZFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFb0l5QUJBSmwvSFMxQ0lpQUNPd2lnWDBRQ09CeFNKamV6Y0poRHVHZ3Z6WXlxWVQxeCt2eHVDNEU4aGZON0QrWTJZVzdPUGtha3dpSWdBaUlRRFlCb2dpUUV1RGIyUzNzNzRWSG1CbHBHdWJLMThOdkw0ZmxzZVduemV6OHppUDk4SERCdDh6c3ZFNDQ4YnJ3dnhjN0lvUFkrN1NvaDFEZ1htWjJ1cG1kSFZJTHpRa2lXdlFodGsyaUNGd3B0dkpHUGQ2VmY4cTRUcGVJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FnVUVKQkFvQUNlTGhVQkVSQ0JIU1ZBRHVDalJzYUdWK1ErSDRyLzY1QnFBSEhCSjNaMDdqVXNFUkFCRVJBQkVkZ2xBb2cyampZenhBV2ZOck5MRCtEZzJMTmZyakM2d3dFY3Ryb3NBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUxRaW9BRUFxM0lxbDBSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJXQkVCQ1FSV05CbnFpZ2lJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaTBJaUNCUUN1eWFsY0VSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVZrUkFBb0VWVFlhNklnSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFLdENFZ2cwSXFzMmhVQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkNCRlJHUVFHQkZrNkd1aUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpRUFyQWhJSXRDS3Jka1ZBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUmdSUVFrRUZqUlpLZ3JJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0l0Q0tnQVFDcmNpcVhSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJGWUVRRUpCRlkwR2VxS0NJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0xRaUlJRkFLN0pxVndSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJXUkVBQ2dSVk5ocm9pQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBcTBJU0NEUWlxemFGUUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVJRVZFWkJBWUVXVG9hNklnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSVFDc0NFZ2kwSXF0MlJVQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkdCRkJDUVFXTkZrcUNzaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpMElxQUJBS3R5S3BkRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFVmdSQVFrRVZqUVo2b29JaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUl0Q0lnZ1VBcnNtcFhCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJGWkVRQUtCRlUyR3VpSUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ3JRaElJTkNLck5vVkFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRZ1JVUmtFQmdSWk9ocm9pQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWhBS3dJU0NMUWlxM1pGUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVZRVVFSkJCWTBXU29LeUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpTFFpb0FFQXEzSXFsMFJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUldCR0Ivd2ViRzg4OFRtMkNJZ0FBQUFCSlJVNUVya0pnZ2c9PSIvPjwvc3dpdGNoPjwvZz48L2c+PC9nPjxnIGRhdGEtY2VsbC1pZD0iYnJva2VyIj48Zz48cmVjdCB4PSI4NjMiIHk9IjQ1OCIgd2lkdGg9IjU0MCIgaGVpZ2h0PSIxMTAiIGZpbGw9IiNlOGY0ZWYiIHN0cm9rZT0iIzMzNTU2ZiIgc3Ryb2tlLXdpZHRoPSIyIiBwb2ludGVyLWV2ZW50cz0iYWxsIiBzdHlsZT0iZmlsbDogbGlnaHQtZGFyayhyZ2IoMjMyLCAyNDQsIDIzOSksIHJnYigyMSwgMzIsIDI3KSk7IHN0cm9rZTogbGlnaHQtZGFyayhyZ2IoNTEsIDg1LCAxMTEpLCByZ2IoMTQ0LCAxNzMsIDE5NSkpOyIvPjwvZz48Zz48Zz48c3dpdGNoPjxmb3JlaWduT2JqZWN0IHN0eWxlPSJvdmVyZmxvdzogdmlzaWJsZTsgdGV4dC1hbGlnbjogbGVmdDsiIHBvaW50ZXItZXZlbnRzPSJub25lIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiByZXF1aXJlZEZlYXR1cmVzPSJodHRwOi8vd3d3LnczLm9yZy9UUi9TVkcxMS9mZWF0dXJlI0V4dGVuc2liaWxpdHkiPjxkaXYgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiIHN0eWxlPSJkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogdW5zYWZlIGNlbnRlcjsganVzdGlmeS1jb250ZW50OiB1bnNhZmUgY2VudGVyOyB3aWR0aDogNTE0cHg7IGhlaWdodDogMXB4OyBwYWRkaW5nLXRvcDogNTEzcHg7IG1hcmdpbi1sZWZ0OiA4NzZweDsiPjxkaXYgc3R5bGU9ImJveC1zaXppbmc6IGJvcmRlci1ib3g7IGZvbnQtc2l6ZTogMDsgdGV4dC1hbGlnbjogY2VudGVyOyBjb2xvcjogIzAwMDAwMDsgIj48ZGl2IHN0eWxlPSJkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGZvbnQtc2l6ZTogMjBweDsgZm9udC1mYW1pbHk6ICZxdW90O01pY3Jvc29mdCBZYUhlaSZxdW90OzsgY29sb3I6IGxpZ2h0LWRhcmsoIzAwMDAwMCwgI2ZmZmZmZik7IGxpbmUtaGVpZ2h0OiAxLjI7IHBvaW50ZXItZXZlbnRzOiBhbGw7IHdoaXRlLXNwYWNlOiBub3JtYWw7IHdvcmQtd3JhcDogbm9ybWFsOyAiPkJyb2tlckNsaWVudCDihpIgRGV2aWNlQnJva2VyPGJyIC8+5pys5Z+fIExlYXNlIC8gVGFzayAvIFF1ZXVlIC8gT3V0Ym94PC9kaXY+PC9kaXY+PC9kaXY+PC9mb3JlaWduT2JqZWN0PjxpbWFnZSB4PSI4NzYiIHk9IjQ4OS41IiB3aWR0aD0iNTE0IiBoZWlnaHQ9IjUzIiB4bGluazpocmVmPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQ0FnQUFBRFVDQVlBQUFBYk1JT2FBQUFBQVhOU1IwSUFyczRjNlFBQUlBQkpSRUZVZUY3c25RY1lOVWxWcHI5RllCR1dOR1JKQ2lKaEVNT1NrY3d3cEVVSmtoR1VLQ0NTVlVDU2dJd29TUkFrS0NzZ1VaQ2N3NUtqQ0V1U0tESklEa05lNHZibjFHVXVsKzQrVmQzVjkzYmYrOWJ6L004Lzg5L3VDbTlWVjFlZit1cWMveVlTQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSjdUK0MvN1gwTGFTQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWtJZ3dDQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJSEFBQkJBSUgwTWswRVFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlJQkFnREVBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUU9BQUNDQVFPb0pOcElnUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUNCQUdNQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdjQUFFRUFnY1FDZlRSQWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBQ0FjWUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBNEFBSUlCQTRnRTZtaVJDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUVBb3dCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQXdBRVFRQ0J3QUoxTUV5RUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlJQkJnREVJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFnUU1nZ0VEZ0FEcVpKa0lBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRUUNEQUdJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWdkQUFJSEFBWFF5VFlRQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRZ2dFR0FNUUFBQ0VJQUFCQ0FBZ1hrUitGK1NYdEJUcFd0S2V1Rzhxa3h0RHBUQS81VDBla2tuNzJqL0gwczZaZ1NiazBnNlF0S0pKSDFGMG5kRzVNV3RFSUFBQkNBQWdiRUVUdE84MTM1VzBuY2xmVm5TajhabXlQMFFnRUIxQWxPdlQ2dFhtQXdoQUFFSVFBQUNFSURBTGdnZ0VOZ0ZkY3FFQUFRZ0FBRUlRQUFDM1FRUUNEQTZsa0pnS2dPc04xL3VKK2x1U1J5dzR2RkVTWCtVTm1XV3dvaDZRZ0FDRUlEQThnbGNSTkkvU0RyZldsUCtROUp0SmIwTW9jRHlPNWdXN0JXQnFkYW5ld1dKeGtBQUFoQ0FBQVFnQUFFRUFvd0JDRUFBQWhDQUFBUWdNQzhDQ0FUbTFSOXpyODNKSkoxZTBnVWtuVXJTcVJzUEV6YU1uamhWL0Y4bGZUNzk5NGNrZlNGdHNIK3ZRc09tTU1EYWE4QmpKTjJxbzM2dmxuUWRTY2RWcUQ5WlFBQUNFSUFBQkNJQ0Y1WDBja24ySHJDWmZpanBlcEwrS2NxRTN5RUFnYTBSbUdKOXVyWEtVeEFFSUFBQkNFQUFBaERZRmdFRUF0c2lUVGtRZ0FBRUlBQ0JtSUEzK3Y1QTBubmlTOE1yN0lyN2JaTCtueVNmY1BvWXJsQkRabk81QUlIQVhIcGludlU0azZTakpQMldwS3RJT3NYQWF0cGwvNzlJZW5iYStQamtnQk9RVXhoZ3J5M3BPWkw2dmxQdTM3VFpIZ1pJRUlBQUJOb0kxRnhQZmFZUkpmM2ZWTWpYbXMzZ0QwajZhdVBoNUJ1Z1B3Z0MvMFBTaXlSZHRxZTFuNVowYVVtZk9BZ2k4Mi9rTFNSZHJFSTF2eS9wWFVtUStNWDA3SDlKMGc4cTVFMFcweEtZWW4wNmJZM0pIUUlRZ0FBRUlBQUJDT3lBQUFLQkhVQ25TQWhBQUFJUWdFQUhnUndqNUJoNFB1WDBUa2wvbldMWWN3SjNETTNwN2tVZ01CM2JwZVpzendBM2xIUjNTZWVlcUJIZThQcTc1b1RrSXlSOUtyT01LUXl3RGlOZzQzNWZlcU9rcTBuNmVtWTl1UXdDRURnc0FsT3ZwMHpUWGxnc3N2TEo4bWRKK25ENnQ4TWl2Zit0L1JWSmI1QjB5cUNwOW16ejNQM0hzWWdXL205SnZ6TmhUZDh2NmU4bFBWWFM1eVlzaDZ5SEU1aGlmVHE4TnR3SkFRaEFBQUlRZ0FBRVprb0FnY0JNTzRacVFRQUNFSURBUVJMWWhrRjdIZXlUbTFNd2Z5cnAySU9rUGQ5R0l4Q1liOTlzdTJabmtYVHZGT1A0UkZzcTNER1diNVpaVm0wRHJMMGhQTC9aakxsaVVMNjlvbHhja2svMmtpQUFBUWhzRXRqMmVzcmxXNFRwV1BTUGJFNmJ2eGF4d040TXlxdEtla2xHYS81WTBqRVoxM0hKOUFTbUZnaXN0K0NWalVlUk95WHZBdE8zakJKeUNkUmVuK2FXeTNVUWdBQUVJQUFCQ0VCZ1VRUVFDQ3lxdTZnc0JDQUFBUWpzT1lGZEdMU045TDZObS9LSFN2cjJudk5kU3ZNUUNDeWxwNmFycHowR1BGRFM3U1Z0U3hpd2FzMHVCUUt1UTQ1aEh3OEMwNDA5Y29iQVBoRFkxWHBxeGM3cnFRZExlcFFraHlVZ0xaZEF0Tkc0YWhrZUJPYlR4em5yaU5xMTlkckpZZUo0M211VEhaWmY5TndpNkJuR2xic2dBQUVJUUFBQ0VOZ3pBZ2dFOXF4RGFRNEVJQUFCQ0N5YXdDNE4ycStXZEpQbXBQSm5GMDF3UHlxUFFHQS8rbkZJSzd3MnY3d2tlL2M0KzVBTUt0eXphNEhBRFNROVBXakgvWnZmNzFlaHJXUUJBUWpzSjRGZHJxZldpVG9NZ2NWZUR0M0N4dUV5eDlxcFV4aUp2cGoybjVaMDZjYjd6aWVXMmNTOXEvVXVCQUtHK0NGSjE1YjB3YjBqdXJ3R0lSQllYcDlSWXdoQUFBSVFnQUFFZGtBQWdjQU9vRk1rQkNBQUFRaEFvSVBBcmczYUg1RjBsS1JQMGtNN0pZQkFZS2Y0ZDFiNHp6YmVBaDRnNlc0N3E4SHhCZTlhSU9CNTBIR2NQUmUxcGZkS3VqcWhVWFk4U3VvVmY2WWtUcnV1cE50SmVuZTlyTW5wZ0Fuc2VqMjFpZDdpZ0Z0TGVsYmp0ZWxIQjl3dlMyMzZOU1U5cjhlano1MlRDR1NwN2R1M2V1OUtJR0NPWDVWMHRLUzM3eHZVaGJVSGdjRENPb3pxUWdBQ0VJQUFCQ0N3R3dJSUJIYkRuVkloQUFFSVFBQUNiUVRtWU5DMkp3RzdTVDJPTHRvWkFRUUNPME8vczRLUFNLZm1yenl3Qm81OS9SL0pJTjMyN1A1M1NUNzllTFltbk1ncGdqSjJMUkJ3OVZ6SFAwL3VldGVyKzJ4SmQ4VFR5Y0JSTW8vYi9QMTV6a2JnY2N0R2pQYTdrbjR1VmV0YmtpNGo2VjN6cUNhMVdEaUJPYXluMmhCNkRydHRNNDk5ZWVGOEQ3SDZsMjA4K3p4SjByblhHditGOUo1QytER3ZFYkZMZ1lCSklMamUvWGhBSUxEN1BxQUdFSUFBQkNBQUFRZ3NnQUFDZ1FWMEVsV0VBQVFnQUlHRElSQVp0SDBxNVI2U3ZwSkJ4QzVSTHlucGlta3pKdU9XSDE5aWQ3ajM0WlJiQ2JLcTF5SVFxSXB6OXBsNTA5NG5FeTljV05PM1NucE1zNm42R2ttZktYaGVUOWFjMEw5UUVnSTVyTWhxZzNaVi9Cd0VBcXU2dUs2blRmL3o5Y2E3d2pjS0dYSDV2QWhjWDlMam1wTzJwMm1wRmdLQmVmWFYwbXRUY3oxbEZyOHM2U3lOaDVWenBmbnpEQ01BZlNyTnYrOFlrUWUzN29hQTdXY1c5SjFVMGc4YWNjQ1gwdCs3cVEybGRoSG9Fd2g4WDlLOUpYMHNBNS9GbGY2V3Nqamt5SXpyMXkreEdPakdraHhtaExSOUFnZ0V0cytjRWlFQUFRaEFBQUlRV0NBQkJBSUw3RFNxREFFSVFBQUNlMHNnTW1qN2hQREYwMlpnQ1FTZnhuVmNiNS9JelRGcVc0amdXS3J2S3ltRWE2c1JRQ0JRRGVYc00vSko2aGNYR0o2LzNXeE1QRmpTWTlQR1JJMEducjF4aVhzblNiOHZ5V0VPNWlRUXFORSs4cGdQZ1QrUzlKQ082aUFRbUU4LzdVTk5wbHBQcmRqOGpLU2ZsM1NsNUEyalZPRGw4WDY5TlAvdkEyL2FBSUU1RWVnVENBeDkxNXdraFRmeXQ5VDVNaHJyVUNKWGE3N2JYcFp4TFpmVUo0QkFvRDVUY29RQUJDQUFBUWhBWUE4SklCRFl3MDZsU1JDQUFBUWdzRmdDVXh1MHZmbjNvQ1o4Z0dPbFJ1bit6UVgzaXk3aTkwa0lJQkNZQk92c01yV1hqMzlLWGo1eUt2Zm81aVRhdlNRNWx2VVV5ZlBERGRQcFdBc0djaElHMkJ4S1hMTWlnRUNBc2JBdEFsT3ZwemJiNGZuOFdwSzhkanBIWmlNZEd1WkdrbkJQbndtTXl5Q1FTV0FLZ2NDcWFJdUQ3aURwWVpKT0ZOVG5HWTJuZ3BzMkhndnN0WUMwWFFLc1Q3ZkxtOUlnQUFFSVFBQUNFRmdvQVFRQ0MrMDRxZzBCQ0VBQUFudEpZQnNHYlJ1MkhLYkFwNUQ3MGpzbE9SNTZUamlEdmV5TUhUWUtnY0FPNFcrcGFKOUVjM2lBVzJXVVp6ZTQzcmlmb3p0cURMQVpIY2dsUHlhQVFJREJzQzBDMjFoUHRiWEZhNnpyU0hwb3BsREFJZ0Y3RXJCWWpBUUJDTlFoTUtWQXdEVzBIZFhQN1Q4R0lvSFBTcnFVcEkvWGFSYTVGQkJnZlZvQWkwc2hBQUVJUUFBQ0VEaGNBZ2dFRHJmdmFUa0VJQUFCQ015UHdMWU0yajdwOXNJVVJxQ0xndU45Tzh6QWUrYUhhZTlyaEVCZ3Y3dlk2Kys3Tis3OGo4bG81bk9UaU9ETEdkZnU0aElNc0x1Z3Z0d3lFUWdzdCsrV1Z2TnRyYWU2dU5nanl3TWszUzBEbk1NNkhkMjRJMzk3eHJWY0FnRUl4QVNtRmdpNEJoWjZQbDdTellQcU9NekFTK01xYzBWbEFxeFBLd01sT3doQUFBSVFnQUFFOXBNQUFvSDk3RmRhQlFFSVFBQUN5eVN3VFlQMkRTUTlQY0IwelNRa1dDYk41ZFlhZ2NCeSt5Nm41aGJldktyeDRuSFM0T0tuU3JwdEl5YjRaazZtTzdvR0EreU93QyswV0FRQ0MrMjRCVlo3bSt1cFBqeFhrUFJNU2FjUEdINUUwbEdTUHJsQTFsUVpBbk1qc0EyQmdOdDhDVW12QzlaemY1d3BDSjBidzZYWGgvWHAwbnVRK2tNQUFoQ0FBQVFnc0JVQ0NBUzJncGxDSUFBQkNFQUFBbGtFdG1uUVBsZGpqSDZUcERQMzFNeHVjbjJDbWJSZEFnZ0V0c3Q3bTZYbGVPOXdmWllnRG5BOU1jQnVjL1Fzdnl3RUFzdnZ3NlcwWUp2cnFZakpMMHA2aWFUekJCYytXOUtOSlgwdnlwRGZJUUNCWGdMYkVnaWNWdElySkYyNHB6YjN5Z2pyUm5mV0o4RDZ0RDVUY29RQUJDQUFBUWhBWUE4SklCRFl3MDZsU1JDQUFBUWdzRmdDMnpSbzV4aTFPUFd5bTZHRVFHQTMzTGRScWowQ1BEWW82TlVwaHZWeDI2alF5REl3d0k0RWVHQzNJeENZWjRjZm1VN0IrcFQ3RnlWZFZkSTc1MW5WN0ZwdGN6MlZVNmx6TnJISVg1a2hFcmhwRW9qbDVNazFFSUJBTzRGdENRUk9MT2taYWMzVzFSZi9JT2xtZE5UV0NiQSszVHB5Q29RQUJDQUFBUWhBWUlrRUVBZ3NzZGVvTXdRZ0FBRUk3Q3VCYlJxMG83TE1tQkFEdXhscENBUjJ3MzNxVXM4dTZUWE41bzlQazNZbHg2SzJTK3AzVDEyWlN2bGpnSzBFOGtDeVFTQXd6NDYyVGVEaGt2NHdWVzhmM04xSGE1ei9rSFJ4U1ovWllwZGN0SEZKL25KSnAra3A4LzNwSGZENUxkYUxvaUN3YndTMkpSQXd0NzZ5L0R0aTY5Mk1MdGFudStGT3FSQ0FBQVFnQUFFSUxJd0FBb0dGZFJqVmhRQUVJQUNCdlNhd1RZTjJWSlpCWDAzU1MvZWErQW1OODVyb2lKWTRvdCtXNUUzYmJhWkRFQWg0ZytSbjE2RCtRTktYSlBudmZVMTNrUFRYUWVOK3Z3bjc4YmdGQVRnVUEreStqTmVUU2JMM21GWGE5bk9IUUdDK0QvZTZGd0hYY3VraWdXaU5zd3VCZ0xuZVJOSlRnbUd3N1EzRnR2WFBkeVY5V2RLUDVqdGtxWm1razZTMTY0azJhSHlsMlpqK3pnNEp0ZFhyNjVLK3NhVTZ6VWtnY0ZkSkQ5dFN1K2RRek9aNnlYWGF4WHh5Q092VHpUV2RXZS82MlovREdLUU9FSUFBQkNBQUFRZ1VFRUFnVUFDTFN5RUFBUWhBQUFJVEU5aW1RZHV1aFArUHBBdDB0TW1HdkV0TGVzK0FOcmNaaDFiWjlHMUllVjF5L3VaRTMyMGtIUzNwWE1uNDZYdDl5dS9Oa2g3YXVEOSsyNEE2cmQveU01SitTWkkzNHE4dDZZSk52cWNJOHZ4Q2M2cnY5WkwrT2JrSi90eklPdlRkdmcyQmdCbWNUcEwvN2tzMWpIbzJGTnRRZDhQbVpQeHZTcktyNWE3MFRVbHZsUFNrRk5lMXRwdjlMbVA2cWo1OUJteVBrV3RKdXJta0MwazZRN3JKZGY1bzh5dzlLNTNDdGFoa001MHB1ZkErWDAvYi9UeGVZNHNHOUJwRGVBb0RiSmRZWjFYZkdtT3lyKzM3TWw3ZHhsT25lYzVqOWpKcjgrbG0rMzFhMldLd3g2ZjVkYWhRSitxNzIwbTZkd2Q4UHpkK3Z0NmJNVENuSGdNWlZkaTdTemE5Q0xpQkRqUGdQamwyZ2EzZDVucXFCSStGY1g1WGVLN3ZTaDlxM2hlWGt6VFZPc09iU3M3L0JpbWN4Qmw3NnVMTkpzZFlmM0o2aHczZGRIWi9uTEtubkcwODAzMXJVMWV0Ny8zZnRoRzMzcHh0Yk1xNURyK1I1blFMZUwxRzNoUUdyTmZwaDVJK0x1a2x6UnJzaFdsdE5iVC9vakh1Tlk3SHROZDVmZThhNS9NeFNmK1V4dFNISnhLR2Jrc2c0RDV4Vzl3ZlhXbW8ySHJNbVBQNjNtSWs5NGUvZDFiQ1FJOVRNL2U3M3FFUHZoOTFiTS92Zm1kNFBlL3Z0ZCtXOU9zYkFzUzJXMTMrdjBoNmR2S204c2tKUlVoVHJFODMyeFN0ZVZiWDF4QmpybmhmUjlMMUpGMjQ1L24zczI5dk5FOU43NXZhbktOMjk4M24vdTY4bUtSYlM3cXNwSE9rZHJqT0Z1NzVXK2dCYWU0YU1UeTVGUUlRZ0FBRUlBQ0JYQUlJQkhKSmNSMEVJQUFCQ0VCZ2VnTGJOR2g3STk0YnNUNDEzNWE4TVhEbGRCS2h0T1Y5aHJtdVUzc1dLdGdBZlpHZ3NERW42ODdTYkw3ZXJURkEvRjdnNGplbnZlK1FkUC9HUmZITEpqQnVUaTBROEFib295VGRObWlvUFNmWThQZjJIQ0F0MTV5cU9ZRjR4K2JrMEQwM3ZBV1VaUGM4U1gvU0dEbi9yZVNtbm11SEdBeTlvZk1Ia2g3WXM4SHFJdnRPcEY0bEdlbTcxdDQrcFhuZFJuanczRXJ0M0ZZMlEzaEdkWXZtd2FtRUZQc3lYczMzYkkzNDU4K1NtQ1hpdmZtN3gvSGQwNlpIcVZBZzZydlN1blJkUDlVWXFGVy9wZWJqOENjV3d2bGR1VXBMRlFsRVkzRlhIZ1RNMWVMTFY3VjRMRm9mTjk3WWMyenptc245YW9HTzMvMTlHOHRkWlhvRHh4NXUvQzRzRGMxZ01jTFRleG96dFNnaUdnL2UwTEpvNGkwZGRaeDZYZGFGeG11R1g1YjA1NUs4amhqU2I2dTgzWC9lTUh4d3BUV1Y2K2F3R1k5STRUcUdqRldMYjcydTk5aG9FMWNPeWRQM2JFc2dFSW10UDl1SWlpODFjTE56eUpqek91WkJrdXl4cWkrTmVZZTZETThoRGtuemMwTTdLTjFuc1lnM2d5MFlxTm4vem42SzllbDZjejMrN3lMcEx3TUdmdTY4b1c4aHlaRGtEWFdMYng3U3ZCUDZSTVo5ZVh0KzlYUDJva3Jmck5GODJqYSt6T3Z5U1p4eTdnQUVJUTZIakJUdWdRQUVJQUFCQ0F3a2dFQmdJRGh1Z3dBRUlBQUJDRXhBSVByZ3JtblFqb3kxTmlEZWEyQWJTd1FDWG92Y3ZqbDE4c2hNdytjUWdVQ3V3V3hJYzIzYzhpbUkxMVk4QlRQRUtKaGJkL1AyNXQ4eHdRM2ZTZ2F0RitkbXZIYWRqVmwybGY4WEk0UUJtOFhhTmIrRkFqNnRQeWFWR2d5OTBXcVJnay9xUktucitUeHhjaW50WjY0cjJTdUd4UmkxUFNaRWRSNzdleW5QblBLaWVYQ01ZYnV0L0gwYXIyNkw1MU1ickMwRUdwTnNzUGNtZ04yTTU2YW83M0x6aWE2clBRYWk4ZzdwZC9mNVl6Y2E3Sk9JVjVma1U0aExTZEZZckxtZUttVmkwWm5mSzU3enU1SlBmZnVrYUkwVDN5N3Zma2tnT1dhRGVWWFg3Nlgxb1RlRy9kODVLY2VMamowTXZTQW5zd0hYWENKNVFEaHB4NzB2VDk0eXVqWXBwMXlYZFRVblZ6aGJpc01ueDI5V2V0UEc5VCtmVHFCYjdGSWplUzE5aTNSNnVFWisyeElJUk9QS204SmUrdzA1cVY4NjVuNDFQVDluendBNDVCMmFLNWJOS1A2bkx2bGFXbS9ZdTBxcE1MR3J2Q25XcCt0bGVYNTJmU012SGhaU1BHYmdONkpGODM1ZWh3b0ROdGxZM0c3UEV2WWlNU1pGNzlmTjhlWDFxRVZPRHJlUmt4QUk1RkRpR2doQUFBSVFnRUFsQWdnRUtvRWtHd2hBQUFJUWdFQUZBdEVIZHkyRHRqL1VuNVpjUXJaVk96cEpGVFUxVnlDUXUxbTlYbDZKUU1ENSs5U0dYV2xhSkRCbHN2Y0RuOWdadTRIdE9wWWFCVXZhbFd2UUducmE1Y3pwaE5vVlN5cVZlYTAzcVg0cnVmUFB2T1duTGlzeEdOcDE2aXViWitVOG1ZVjFQWjlubGZTbUlMU0NQUlE4T3JPY09WMVd3ak8zM3RFOE9NU3czVlgyUG8xWGg4RHdHSEk0Z1ZycERXa085U25JbkJUMVhVNGVPZGZVSEFNNTVSM1NOUTVMNFUydHpUbmNyc3A5aXZHREM0RVJqY1ZhNjZtaE9DS1Jwb1U1ZGljL2xyZTlSZGt6VGEwTnB2WDJPdlNBUFIza2lJaThIclBRendLbXJ1UjFsRDA4MmFOTzdXU0J4SDE3TW8wOE5reTVMdHVzbHVkeWI2WjVYVEJGR2lNUWNEL2V0UEZTODhRS0lyUzJ0djFSRTRyaXJ5cHNFbTlESUdBV1B2M2VGVGJIN1l2R1ZWLy9sb3c1ZTNLd3lNVmhOSEpTNlR2VXJ1QWQraXM2K1oxVGR0ODFyMDRiMkxscmpyNjhwbGlmcnNyTDVlM3g3TkI0cFhPYXY5TjlyejFCMVU0V2RkMjRDYS8zbkFIMVd0VWxlcit1ankrM3hRS0pXeFUwQklGQUFTd3VoUUFFSUFBQkNJd2xnRUJnTEVIdWh3QUVJQUFCQ05RakVIMXcxekpvKzhQYnA5ZTZUajNZQ09SVGhFTk92SmhHcmtBZ3FrY2IyVnlCZ0UrNjJNM21uZXQxVDVoVExWZk1KVWJCc0ZKckYvZ0VxRSs3bkx6bkpydkN2Rkc2cnRTZzVZMEl1NjkwWE55cDBxZWErS1VlTi84NnNJQmNnNkdmUlcrcUhGVlFUdGZ6ZWFVVXc3bHIzVjFySTZpZ3F0VXV6ZVZaVW1BMEQ1WWF0cnZLM3FmeDZrMWRiOWc0VEVYdFpJTzloVVU1M2kyaXZxdFZ0MXBqb0ZaOTlpMmZyczBQaDUxeHJHbTd4NTk3aXNaaXJmWFVVQTQ1d2pHZjlMU1ljMmp5dThlZVFISTNEWWVVVTdMdWlVNWIyME9GM2JGL2VraEZldTd4L09qTlU4ZTlia3N1enlmaFA5R1R4MVRyc3MwaWZUTGZmWmJqdFdnb3BxRUNBVy8wMmJOWW45QmlhSjNXNzdOQXdCNmpjcjFUdEpXNURZSEFyMGw2VGMvek5mWTlsVHZtN09uS1l0WVNFVkJ1M2V5VnlPTG5oMlY2ZWF2Ui8yUFgrYXM2VExFK2RkNjVuaG9jWHMyZTFFbzlJbGdnNUZBdW52K25TdjdXRytQWklIcS9ybzh2ZXcySXdqQnN0aE9Cd0ZROVQ3NFFnQUFFSUFDQkZnSUlCQmdXRUlBQUJDQUFnZmtRaUQ2NGF4aTBvMVBSWDB4eFdIMWFlMmpLRVFqWVlHTEQycEdGaGVRSUJLYmNMSXVxKzVHMHFUekdGWE91VVRDcXkvcnZ1YWRkN3BZTWdhWGlBQnV6WDlxY1lIWTgxcW5UR01hNUJzTTJOOXRSdTdxZVR3dFZiQ2pzU2pWZFNVZDFyUDE3THMrU2NxTjVNTmV3M1ZmbVBvMVhHKzVMVDJlVjlJZXY5YnpnVFpzb1JYMFgzWi83ZTQweGtGdldvVjdYWmRUM3hvTGpMdHRiUmVuR3h6WlpSbU94eG5wcVRIc2NldVlaU1h6VGxZOVAzTjl4WUNIWFR2bVBEVFdTVTN5dWlDamFxSGRaVTRRWnNDY0doNEV5ODdiaytkT245ZnZXUFZPc3l6YnJrcnZ4bU5NbmZkY01FUWg0SEQwcWlZZkhscDl6LzlDVDE2dThweFlJZEhsYVdaWHZlZklxYWVNK3A3MXQxK1NNT1l0eUg1NDJlMHZLeVhtSGxycUZMeWsvdXRaaU5JZGdlWHQwWWMvdlU2eFBvMi9vVlhXOHdlKzV1MVRrNG5IbDk0TEh6dFRKWTNTb3Q3am8vYm9hWCtiMXVnSGZoZ2dFcHU1OThvY0FCQ0FBQVFpc0VVQWd3SENBQUFRZ0FBRUl6SWRBOU1FOTFxQWRuWmdkWXl4WXA1Z2pFTGpOd0ZOSWtVQ2cxSldoalZEUFRLZkwvcVhaeUhWNGhWWHl5WmxmVG9ZYW44ejl1Y3loa21zczc4b3V4eWo0d3N5NitMSmNnOVpRZzJ4dS9xNkxYVnJhUThVYm0wM0hiNnkxd1NjY3ZXbHIxN1UrTlJQRlNiWlIxSWF0cm5qQlhYaHlESWIyc21EWDZqN2hXWkxhbnMrVEpYZmRWK3ZKS0JyVEpYWFk5clU1UEk4cHJGUTBEK1lZdHZ1SzNMZng2dE92VDJscHNPZHpQMjlQYlRiZDNyMjJtZXQ1elNjZi9aeDVYb3VlTldmOW1VYlFkWm1NOEI1UjN4VU9oYzdMeDQ2Qld2WFk1M3lpZDZsanhmczlYc01WOUJRY283RTRkajFWbzg0V1d2UUpiN3lXOElaNWFlaWlYRUdnTjYvczF0OS92UDc1VG1xVWJVUm5TQ2Z1YjVlNVdmWEk1TEVwRWhmNk5MS0ZEMTNKbTJOZUJ3ejFZTldXcnplMnU5ejE1NGJVcXIwdTI2eG5xV2d0V3J0ZUlJVUo4VHkvdVhZdEZRaVVoQVB6YzJYQmhjT1UvUHZhZThmemliMGoyQ3VUeDMza3FuN3NCdnVVQWdHSEp2STYwVjRudXRMUTlmUjZmamxqenFKdWI4Q2V0SEJDaXQ2aEpYM3VvajJYMk92V1B6ZGgwdDYxc2I3MzcrZE5mVzl2UlA3dm5EUkdET3o4YTY5UEkxSElxazFQU0tGVVNzVUIwVHQzblpsRi9CYUdXSmp0OWRscTN2VTN4eSttY0d3V0tIZ2U3MHRERHdWRTcxZVByMnRKK2h0SkRxZFRtaEFJbEJMamVnaEFBQUlRZ01BSUFnZ0VSc0RqVmdoQUFBSVFnRUJsQXRFSDkxQ0R0dDN0LzI3akJ2TVJRY3pRR2dZdEk0a0VBbzdKYWVQYTVnYXMyL2ZneHFqanplK1Z3Y09iV1dkSlhnMThvdEhHNDY0Tnh4S0RsbDNVT3o4Yk1YSk9RVHB2aXdYc3h2c2lHZjArMUVEa3JIT01ncmtDZ1J4RHBzdThmd3JKVUdyUXlqV1lPYVNGalZYSFpyQ3p1MVFiOUcxYzZrdS9uOXh3Wm1UNTQwdHlESVorWHRwYzZIb1QxcWVDMWpkUy9NemFFRzhqdkdOMjI2V3p4KzRxblVuU20zdkNMdGlvZCtXRnVPeHU0NXpEYzA0Q2dYMGJyOTdZOHlrN3o1R3I1STBWeDBXMjhmaHJ3Y054cXJSWjl6c1pENUhuQ01meDdrdWVKNC9vMmF6d1ptTlh2R2FMZmZ6TXZ6ZWpMdDdVYzJpT2FETXlJNnZzU3p3dlhLNkpKMnozdjRlUy9JNTJMSFMzdlMxNWZObmJpdC9uT2UvUmJYS2JhajFWc3cxUitKa2hhNzVjQVpROVFOaGRmRFJIdUwxK3gzbXU2VnY3NUc3b1dxaHFnYURuaWJhVTQrNi9wQS84RHZZR2FwZjdkWWNlOEx3VGlRMXJyc3MyNjUvYlo3N3ZIWkx1Sk9sdEJjL2MyWk40dytJTWIwS1dDZ1M4cWV0bnZFOU1WaklYZUYxdmdhZlhVMzRIZFNWdmdsNUIwdWRMT2p4ZE80VkF3UFcyWU9kdmd4UFJZOWIvNjAyTnhwejd4U0ZmTmpkZ3ZZNDNXOWZ6dzJ1bjJGZENYTC92TFJyNXJaYU4vRlg1T1gzdWF6MUgrZHZSZ3BEYzc0ZGZTTUtvYUkzdi9NY0lybXV1VDNQZC9sdVE2WGRpcWFncjkvdjFZNUp1blR5aVJPc2Z2N2N0akhwZzhPMC9SSEFkdlYvOWJlMjFnNFdFbStJVmYzLzdXOTllQkwrVUJ0eTZnTWpqeVhOVjduZnVnT21CV3lBQUFRaEFBQUlRV0NlQVFJRHhBQUVJUUFBQ0VKZ1BnZWlEdThSWTdJL3RYNUprUTVERkFkRXBBbitRK3lSYkRTTi9KQkI0ZWpJb3Jjam51aXkyY2M0R3JwVkJZYlBuZk9MQUc5RjlSa3lYNWRpbTNqekxOV2F0bCtNNjNDd1ozL3BjOTdvY0c3OXNIQ2xOa1ZFdzkyUkY3bWJvVUZlWVhrZDZJN0pydzgvdHp1M2JUVWJtZkk5a1JPcmk5OUZrUEhhODB0d1VHUXd0VFBDRy9mcG1nbU1zMndqcjAzQjl5V1BUUnNIMWNmVXJ5UnZCS1R0dTlDYW4zUjkvTUxjQk03c3U0am5FTzBJMEQwWW4zN29RN2VONDNXeXJud1ViOXIySmxKdHlualhuOWFHMFFmNjUzSXhicnZONzVpRWQ5MzhyZVNudzZjTTVKb3N3M2lycEhIT3MzSTdyVkNJQTIxWlZvM21rWkQwMVZaMmp6ZkxTWjhKcmtxZWw5MVZYbloyblJacmVmSWsybU5iejhHYVRULzdmb2dkR3p0eHNOLzhXMi9XZEtuWDlMQWF0a2V5cTIyRjh1dXhlM3N6elJtcVVhcTNMTnN2SjZUUGY0MzY3VmZKNE5YU2RmanBKZjVZRVAvNHV5RWsramZ6NkRSSGE1bjI1YTZUTis1eTMrK1k4UFJVWnNvWndkclVFQW40LzJ2T0IzNnZlbUkwOEgzZ3MzVGxEY0pMRFBocHpmNXFFemw1N3JwSlA4WHVjZUczWmwwN2IzUHYxRGs4ZDlqRGt6ZHYxZk51UmZPaGtBQUFnQUVsRVFWVHk4dWx3cjlOTE44T2RsNTlIQzZUK01jUDlmRzZJbzgwNjFscWY1cDdzZjFtYTE0N0w2ZHlOYSt5TjRsV0JKNGpjdnQwcy9wS051T3ZGUGYzcDk0QzlTVG4vM0JTOVgrMkZ6YUgyTEo1ZXBkeDNqOTgxZms5NGZKSWdBQUVJUUFBQ0VOZ0NBUVFDVzRCTUVSQ0FBQVFnQUlGTUF0RUh0N1B4NmVUSTlhcnpzZkVuSjNsRDZlYVpweEZ5OHZNMWtXSE9HL3crMGVSa2c0RlBFdGw0TVNhZE1SbTBqdXpKeEJ1M05rcVhHRUc2c3JOaDY5bUJBVzNvNmFmSUtKZ2pFTWcxYUkwNTZSUVp0Q3dPdUZFNmVWYXlFYkZpbnRNR240N3hTY2pjRkJrTXZRbHE5NmVyTmJKZHROK3lNZmdPTWZpNVR0RUowUTgwejk1bG05TXlkdk81eEJUeEhHTGNqK2JCbkUyb05wYjdPRjdYMi9seFNkY1lLRGJKZWRiOEREdFVobzNnUXhNQ2dhSGtsbkZmeWFuMHFWc1V6U056RUFoRW9oT3Y5UzZmVHR6bjhQSm1URnU0a2RXOWRrdC85ZVRWSmllL3pXc2kwV0h1SE9GMW1JV2lYYWxXbUFHL3gvOHVyWEhieWlyeFZsQmpYZFpXaDZqUGZNK1l1WDJ6VERPeFVDQm56WkVqWG5odDJseU1OcVM3K2pvS2h6RlVtTmIzSGVLNmZHRXRwRVpYM2V5dVBSSlhyKzZ0SWVEWXJFYzA1dXh0NTBKck4xbmtiUUgwRVBIektodHZ6dHBiaE5jU2ZjbWI5ZzhyRkJtMTVSZUZ2dk05UTkzZzExaWY1cDdzSCtQcHdNK2pRd1gwZVdoeGFEWi83MFNlVHJyNkxQSUlrZXRKWlpWLzlINjExdy9QSHl0YmhHME4vbmExOXdBU0JDQUFBUWhBQUFJekk0QkFZR1lkUW5VZ0FBRUlRT0NnQ1VRZjNEWGgyTWhnRjM4K01aM2pZcmFrN01nd3Q4ckxHOGdXQjlnMTVkalV0L0hrdkd1V3RhcHJaSER4ZFVQYzRFZEd3VWdna0hzaWVLZ3JUTGNyeDRoWUkyUkZKUHl3bTEyN1dNL2R3SThNaHV2amNJekJiNVhQdFlQeFBYU3plK3p6VXV2K2lPZGNCQUw3UGw2OU9XRlh6SDRlaGlhTHRueHEwS2M2dTVMZkdYWkxQalFoRUJoS2JqbjNsYm92bjZwbDBYcHFEZ0lCZTVieENXcDdrZWxLMGZ0K2RWLzBycXkxQnJJSTB5NzdUOTlSNFp6Ti9janQvMmNsWFNwdGpJOFpIM1psN3BPc20rR3NWbmsrSm0yNjVRZ1l4NjdMMnRxUk0rZU9qY00raHQ5UlNSRFc1WldyVnQzc3hlR3hQUlVkNGxFaTl6dGtEQi9mNitmS1hyanN4bjA5dk5UWWZIMS9OT2JXeXhnajlsM1B4MnRXQzJQNzdNUTExdmJyWlVZaUVWLzd5T1NaSWVkWlhlVTlkbjFxQnY1R3RaZURQczkwbm1OOG5lZXRJU2thL3pXK1Jkd1dlODc3dzQ0S09teVRReWk5SmJNQjBmdDFQUnNMMC95ZDl2Yk12TGtNQWhDQUFBUWdBSUV0RTBBZ3NHWGdGQWNCQ0VBQUFoRG9JVkR5d1QwVTVGZWFVelBldExNYjJpRnVJWFBLelRYTTFUSm81UmhaYmJ5N1Q0WFRMdXZ0enpsMVc3cUI3ZndqbzJEZmhzRTJUcnU0anBIYjNpRXhMYnZHVnQ4SnU5SVRscEhCY0ZXSFdnYXRTTGhpdzZQYlYyTDB6SGtHdDNWTnhITXVBb0Y5SDYvM1RLNzd4NDZqK3pWajhiNDlnOGVHYXNkZ0h2cnVRQ0N3clNkemQrVWdFTWhubjdQbXl4VUlPR2F6UXdCMHBTRWJiRzE1UmFGYWNqZjNMVTcxaWRpKzk3N1hxV05TbjZlQzBnMnhNZXV5cmpaRTgyMnRkY2dRaGhiVk9YU0lOL2Jha2pmRy9WNTk1WkRNTis2SlRsQmJST3krakx5bnJXZWIreDB5dFBwdXY5K1ZGalowaFQwYm12ZnF2bWpNcmE2ckpkVEltWS9zT2UzR0k3MFViSExKK1c0cDhmYXh5bi9zK2pSSEJENldmU1NXR3VvOW9XM3NSZUZDU2dTZ09XTmxWWWZhZ3BLeHp4WDNRd0FDRUlBQUJDQ3dRUUNCQUVNQ0FoQ0FBQVFnTUI4Q0pSL2NZMnR0RjVRK0xXcTNoVDdCTm5URHA2MGVPWVk1bjdTNVRMTTU2amp5WTlOdDBnbWVybnlHdXZyUHFWZGtjQ25kd0hhWmtWR3diOE1neDZBMTlqUktGRU80Tkc1eXhObW4vOTRrNlp3ZEY1WVl0U0tENGFxSVdvS1NTQ0F3bDgyMHFBKzZmbzk0emtFZ3NPL2pkYWdMNXJZK2pmcHo3S2xyQkFKRG43VDUzK2MxeGIzVEp2VlFOOGcxV3htdHA4YU81UnAxamVyb01uSUVBbmI5YnhmUkYrdW9sTmRaOWpCaU44ODFValJQV1BRV2JlNWZJbmtpT0dsSGhZWnNDcTluNVhuZjNneThKbXBMcGVMTk1ldXl0dktqalVIZk16VDJlbzAranZySDN3NCsrVnl5YWQ5WHI3NTNRNjdvWkQzL25PK1FHcHdzRkhpbnBNZEwrdWZLWW9Gb3pLM3FmOVBHODQ4OWdvMU5VVWlzbXB2Vm0zV05SQ0srUG1kZVdjODNtcWY2MXFjNVhnM0dpZ05jMXlqY3lwQTFkTmM0aUVLdWVCeGZ1ZkV5NElNRVVjcDVkem1QZHpTZXJhNWErYm1JNnNidkVJQUFCQ0FBQVFnVUVrQWdVQWlNeXlFQUFRaEFBQUlURXNqOTRLNWRCUnU0N0dyMS9wVSs0bk1NYzdWT3MwV25uTXlxbHZHc2pidlhVajYxZC91ZVR2SHZkeXpvdE1nbzJMVmhrR1BRc2dIb1dwS09MYWpQNXFXT0dmckdKanpGRVIxNTFEWWNSNGIra2xQTmtjSFFUYXBwQlBYSjdnZjFzRVlnOE5Od29ubXdOQ3pEdm85WHo5cytpVm9qT1Y3c0t5UmR1Q096cjB1NmRET0h2R2RnWVFnRUJvS2IrVzArYWV4MzNKajNTdTBtUnZQSVBna0VvbzI5bXB0TTdxZG9udkFhNEpaQmgwYWloaUdid3V0RlJ2Tyt2UmM4dW1EUURWMlhkUlVSYlF6dWVtT3R6OE5EYlJHb0dUbk14bXNiVi8xZTc3V2xxNlU0N2JsZGx2TWRrcHRYeVhVK1llLzMzQ2RLYnVxNE5ocHp2cTJXQURyblc2YVdjTFlMVGVRRnhXSjJDMzYrazhrMld1OTN6WXNXSTlzenhubDZ5ckhZeXQ5aS81cFpsN2JMVHBaQ2tIbHN0Nlhhd2k2WFllOFBYV0tTa3ZWZDlINWR0V2RJbUwwUlNMa1ZBaENBQUFRZ0FJRWhCQkFJREtIR1BSQ0FBQVFnQUlGcENPUitjRTlUdW1TajM2MGtQVlBTRDBZVUVobm1TbDI3OWxVbE1nTFhQRjNiVlkvSXNGbHlLc05sUkViQk5vRkFqamlneG1rWDE2L1BZNE5kblBzRXlxdEdqSisyVys4aTZhODY4clRyMFl0bmJrNUZCa01Ya1JORE9iZDUwYk9BUU9DblNVYnpZS2xBWUovSDZ4UWJOWDFqMWlmREw1dE9oZVUrQSt2WExWa2dZREdhWS9TZVlrakRGM3JQT1NUWlE4dC83NmoveHlUZE9tM3NqUTF2VVJ0Uk5JL3NrMENnYnpQM3kybno5WU9WQVQreDhVaHdpNDQ4TFNEMHBwYzNuUHBTdENIb0UrcC9PN0RlZlhrUGNWYytaRjNXVmZWSTlPajdicGpXSWdPYlArcTIwMHZ5ZS9ZQ0hibVVidFRtVk1ZZUZkNHM2VndkRjk4cnpVVTVlZm1hYU8yVm04K1E2eXk2ZG4wdGhCN2pUU1VhYzY1YkxZRmcxT2NPZDJGeDRQdUdBTW04eDMxdmIyRm43cmkrVkRRVXJmZmJCQUk1NG9CYW9UK2k3OWRTY1hrTzVsK1I5SWJtZStxVUhSZGJnUEhjakl5aTk2dXpHRExQWmhUTkpSQ0FBQVFnQUFFSTFDYUFRS0EyVWZLREFBUWdBQUVJRENlUTg4RTlQUGY4TzIyUXZmTUl3MVprbUN2ZDRPdXJlZDlwQ044M2hZRmxzejdSYWJwU0EzMWtGTndVQ09RWXRDd09zTUYrYkVpSHlMQmRLb2JJSFpWOVRFbzJTU09Eb2V2akdPc3Z5SzFZY0YzZkpvcHZSU0R3MHdDamViQmsvdGozOFRyRjh4YUZ4Y2h4ZWQ3MVdDeFpJRkJwU2xoTU5oWkVQS3R4bjMyTmpocDc3dklwN0svTnRFWFJQTEl2QW9Gby9USFdWZitRWnptWGJiUkJOblFqT3ZJc1pZOVpIcnNsb3BiU2RWbmZZeEZ0aEc1RDJOcFh2MGowV3VycVBXZUtpSjdYMHJWUzlCMlNVNmV4MTlnYmo0VWUvZ1lZa3FJeFY3TDJqY3FQK256b3N4aVZ1LzU3dEY0ckZTQkg2LzFOZ1lDOW1uaSt2R0pQcFMwT3VIb1NzNVMwcmUzYXZ1L1hJZUhwY3VwekZrbHZsV1R4WDF2SzlUWVRQYS9PKzhtU2ZxOXduczFwQTlkQUFBSVFnQUFFSUZDWkFBS0J5a0RKRGdJUWdBQUVJRENDUVBUQm5XdDB0ZHRDRzQwZDIvWFgwNmtQYnc2ZnQ2QnVUMGh1OHgxWHVEUkZocm1hbS9aOUorZGM3NXFidlgwY29vM2dFdmVva1ZGd2ZZTXV4NkJsbC9tT0Flbk54TEVwT21XVTQxcDRTQjBpUTEvdXBtV1VUNm1ZSTJwTHRObGFhdlNPeXR2Mjd4SFBYR1BqZXIyamViQkVJTER2NDNXS3piOXJKeU41MTFqS2ZkYmE3a2Nnc08wbmRGaDV0aEhjWGRJeExiZDdUV0QzOFUrWnVlRS9ta2R5MTFQRENPYmRGWjJhenRrUWl6Ylo3eXJwWVhuVkticXFobWpQRzRJZVIzYTMzNWFHdm8vNzNrczVUTnZxVXJJdWkwQjZQZVlOMTY0MFJNQVFsVm55ZTUvWG5SSTM1Q1ZsK3RxK2I0ZVM5MzZVVis3RytrbFNLQzMvYlc4S2wwcEMyNjRRUEczdGRRZ3NuOG8rcmhSR2hqZXhEeVNQUGw3amowMTlmZTY4aDZ6bGh0U3B6MXVZOHl1WnowcldwKzVqUDNmMm90ZVYvTzd6WEpWendqNm43WDNmcng5dndqMWRVdExuY2pJcXVDWjZMK1orazBUNXVFcGpQTUFVTklsTElRQUJDRUFBQWhBWVN3Q0J3RmlDM0E4QkNFQUFBaENvUnlENjRCNXIwUFptOG5XVHNmaFVHZFgyWnM1REIyd0NSQUtCV3FlUDdPcjUrVDJuUFlZYWx6UFEvTlFsTlkxYXVZWm85NmZkNFYrbHA4SzFYR0d1aW9qY1UwNWxFSW9NZmJsaktzcW45b25zU0NEd2o0MVhCOWU5NUNUamtQRTUxVDBSenlGRzVXZ2VMTmtvMlBmeFdsTnN0Um9qdWZQUGtER0ZRR0FJdGUzZmN6RkpyNUYwOG8yaUhYZlptMTJPano3M0ZNMGpZOWRUTmRwL3RuU2E4NndkbWVWc1pQWnROZy9kRE05cFc5ODhVWEw2MVlJanIrTzZray82UHpxblFtdlgzSzk1cDk2MzQ1NjNTVHA2d0ladHpYbnhucEllMU5PbVhEZmZoVml5TCs4VHZOYmNsTjZzVU4rM1ErbmFyQyt2bk9lcUQ1WkYyQmI5L2tVamNEbDNCdFdoZ3V0b3pOVVVDUGIxK1pUenlDYStTRHhUSWtMT1haOWFIT0ROZW4rL2RDV0hqYmhlSUo3TUdBby92aVQ2ZnAzS1kwUDBYc3dkVTFFK0plK0FFbTVjQ3dFSVFBQUNFSURBQkFRUUNFd0FsU3doQUFFSVFBQUNBd2xFSDl5MUROcDJ2L29BU1hjTDZ2bGRTVmRLOFFwTG10Um5tS3RwTkloTzM1VWFGRXZhdUhsdFpNaHpIR2ZISk0xSlVWNDJxTDhzNDdSTFRWZVlxM3BIeHJ1dk5PUHFHem1OTEx6R0J0a3o5TnlUdXhFZEdReHpqV081MVkrRUl5V2IzYmxsYnZPNmlHZHV2NnpYT1pvSFM1anQrM2dkd2pjYUh6bnp6d3VqVERwK1J5QXdFTndXYnp1ZHBKZEt1c2hHbWUrWDlGc1Z3dFJzcXluUlBGSnJQVFdtUFdicytjeHJzcmJrR000WGJ6dzJITnRUU1BTTytVSnordmM3WXlyWmNhLzUybE5WVjhyMU5PSjEzT3Nhc2VQNU9qSjZ1YVJyRllTOHNuRFM5MWprMHBhR0NBNmNUODE1c1crTlBPVUovWnhoRUcxY2VxUDBNNUw4ZCszazJQUGVyRzFMcGMvcmxBS0JWZjErSm5sYSs4dWVlcSt1dmFta3B4WUNpOFpjeVhkRlg5RlJuMzgyZVUvd3FmYXBVN1NtTEZtalIzbDUvV1NSUjVlM25GVmJQZFp2bEVMdTFCTHpSdCt2OWxaZzdyWFRpU1E1eklEL2JrdTU2K3ZvL2JyTk1WT2JFZmxCQUFJUWdBQUVEbzRBQW9HRDYzSWFEQUVJUUFBQ015WVFmWENYR3NqNm11bzF3TTBrK1RSR2w2SEE5NzhvblpyNGRnRzNiUmsvbzlOM1U1M0FhRU1SR2FKeTNUWTY3OGdvNkxBSk5xYTN1WDllMWEyMks4eFZ2bjB4TXd1R1NQVkxjemRLbzM0cU9aMlUwNGlvTDZkeUk1cFR0eHJYUkR4eisyVzlMdEU4bUd2QWRKNzdQbDZIOEkzNlBScXp1UnQvYmVVZ0VJam83L1ozcndzOHByenh0Sjdla05ZQlUyeFlUTlhpYUI2cHVaNGEyb1lvbk1jYjAwbGxieHAzSlo5RTk0bjB1YVdTZWFMUDFiYUZqcGR1dkYrOUw3T0JmYkhVTGJod1hwL0l6R3Y5c2xyejR0ekhwVVVmcjJqVy9pVnU5QWZnTEw2bDlIbmRoa0JnMVFnTHFaOHQ2VFE5cmJMQTZncVNQbC9ROG1qTWxiamI3eXYybENua2haK2R0alNsMTRqTjhyeDUvVlpKNStpb1M4bjZMMmQ5K3RHMDhkLzNIV3d4dmNPMDFCSUh1R25ua3ZRbVNSYkZ6Q25sOG8zbXNhVi8yOHlwVDZnTEJDQUFBUWhBWUhJQ0NBUW1SMHdCRUlBQUJDQUFnV3dDMFFkM3FZRXNLcmhyTTJEOVBuc1J1Rnpqa3ZVdFVXWnJ2L2NaNW1xMklUTCtsR3pLRnpTdjlkS2FkWW1NZ205dmpIa1g3YWx3YlZlWTYwVkZMdlBIY2h4NmYrNUdhZFJQdWZuazFyTnZzOEo1N1BxMFlHNDd1cTZiZ21jMEQrWWFNRjFueG10NUQwZnpUOG5HMzJicENBVEsrMk9iZHh5WlRuT2ZmcTNRMTZiUVJBN1pzNlFVelNNMTF5SkR1ZlJ0akR2UG5CQTBVVWlub1hVYmUxL0pQSEdKTk81TzJsRm95YW4vUHFZT3llU1QzUFprVlpwcXpZdCt0dndPYzB6N3RsVHlmaXR0UTg3MTBRWnRUaDVUWEZQNnZHNVRJT0QyWGwvUzB5WDEyVmR2bU1LQzVmS3BOZWFpOHFJKzMrYVlyRm1YYUgzNlhrbm5EN3cvREEyMUZ6R1A2aGJkUDlYdnVYMGR2Vjl6ODVtcUhlUUxBUWhBQUFJUWdFQUJBUVFDQmJDNEZBSVFnQUFFSURBeGdlaUR1OVJBbGxQZE02Wll3OTRZNkVxbGNhNFBVU0FRR2JWZUxja24vNytaMFNtUlVUREs0djZOa2RKL2FwNTJXWlhKaG10RS95ZC90L0hScDBDUDZMbHQxL0dHeTFyMGsxZEhSczRoZ290b0hpd3hQREpleTNzM21uOUtOdjQyUzBjZ1VONGYyN3JEZGdHLzYyKy9WdUJTeFFGdVFqU1BUTEdlS3VtcnFIN095ekd4L3piSWRCOEVBaEdMM0RBRGZlRUt2QjV5M0hpSFp4cVNhczJMMFZxeDVQMDJwQjNSUFZIOW92dW4rcjMwZWQyMlFNQmhRcDRsNlJvOUFFcTltdFVhYzFHZlJIMit6VEVaelFVbEo5T2o5V25FeFlLUDM1WDAvNklMQi93K3RtNERpc3k2SmJldm8zN0t6U2VyVWx3RUFRaEFBQUlRZ01DMEJCQUlUTXVYM0NFQUFRaEFBQUlsQktJUDdsSURXVzdaMFNiYU95VmRXWkxqeStja0JBSS9UYW5FV0JJWkJhTStzRXZlb3h0anVEME4xRTdSV0tsZFhtNSt1UnZSa1ZFdU41L2NldVc0NjYwVlJ6YTNUald2bTRKbk5BK1dQRXVNMS9MZWp1WWZCQUxsVEpkd3grYXp2TVN3QXV1Y28zbGtxdlZVYmw5SGM2ZFB1VjgrQ2N6Njh0d0hnWURiZDRja1VHbHI2N2NhSWV0bG12Qkw3d3JnWGlXNVNtK3pjYjB0cll1T3krMmdqZXRxell0ejJveHRReEhWYnlDKzBiZVZQcS9iRmdpNGdYNDNQcitucGFWeDJXdU51UWgrMU9jbGE2Nm9yT2ozbXZOMk5NZEdkWm5TRzl2WXVrVjFIL3A3Ymw5SC9aU2J6OUI2Y2g4RUlBQUJDRUFBQWhVSklCQ29DSk9zSUFBQkNFQUFBaU1KUkIvY3BRYXkzT3BjSkxrODlRbVl0bVRYd25hVi9zSE1EQTlSSUhDMkZEZnpyQjJNU3NJZFJFYkJ2NUowaXlEZTZWUWlBVFpjTXgrQ2RKblgyaytWZEtPZTIwb0ZPR1UxbVBicXlNZzVSSEFSellNbGhrZkdhM24vUi9NUEFvRnlwbk8vNDhSTkxPVEhwZmVLNi9xUkpqN3lVYzNweVUvT3ZlSTk5WXZta2FuV1U3bklvcmtwOTcyd0x3S0JLQ1ozOUM3eHUvYnZKTjI4b3dOS3doUzBaVkZyWHB6VFpteGJPNlA2NVk3djJ0ZVZQcSs3RUFoRTN3SDJZbUd4OWFzeTRkUWFjMUZ4VVorWHJMbWlzcUxmVDVsRVB2N21iRXNsZFluV3AzK2Z2bTNQMDFPcHFVUUNVZDBpVGxQOW5zczNlci9tNWpOVk84Z1hBaENBQUFRZ0FJRUNBZ2dFQ21CeEtRUWdBQUVJUUdCaUF0RUhkNm1CTExlNmtYRW85eVRicXJ4REZBaEV4cDZhQWdGdjBEbFdyOTJabnFpbmsrMkswKzVPYzRVZE9lTWwydFQ0QzBudnlNbW84alh2ejJ4bjFFL1JKc1NRYXQ4bWJiNTEzZnZkSnY3eTVaclRqVzhaa3ZtTzc1bUNaelFQbGhnZUdhL2xBMlRLVFFsQ0RKVDN4emJ1dUtBa2V3dzR6WjZJQTh3c21rZW1Xay9sOU5mcEpMMVVrc1daWFNuWHMwemZlc3RydDN0TCtsaE9wU3BmNC9mWnB3dnl0RWpsS1pKdTBIRlBOTy8vUWhyRGJTTE5VcEZyV3hWcXpZdlJlanRxWndIU1FaZEc5ZnMzU1ErVTlKMUJ1USsveWVHNVhpZnAyNWxaN0VJZ0VNMDVydnBOSkQwdHN3MjF4bHhVWE5UbjJ4eVROZXVTc3o1MUdCMkhNUEc3cnl0WmNQM2JCY0tPaUxkL2orcm05L0dqY2pLcWZNMFhrOWNhdnp2NlVqVFd0emxtS2lNZ093aEFBQUlRZ01EaEVVQWdjSGg5VG9zaEFBRUlRR0MrQktJUDdxa00ydEdKRFJNck9UVzZMWUhBcnlTRHNPdmZsa3JqZlk0WkdaR3h4N0dkNzVoWlFJNVI4RVdTN2k3cG1DRFAyaWRCN3lMSkhneTZVc2s0eWNSUjliS29uNllRQ0VSbHVvR1BrZVFUamo1aHRxUVV0VzBJejJnZUxERThNbDdMUjFQTy9QUEM4bXovNnc0RUFnUEJjVnN4Z1dnZW1XbzlsVk5SYnhKNk03d3JsWWpHbnJqbStXRXp2MXpYL0RsMTNzWTFmUzdhSXlZV0ZqaG1lRnQ2UmlPU3VHa2psb2cydmZyYVdHdGVqRFpBY3oxSFROVWZaMnBPdWI5WmtqMDZ0S1dTOSs5VWRjekpkeGNDZ1J5UFVTVnJvbHBqTHVJVjlma0hKRjIyQ1FQaXplT3BVL1I4bEh6WDVhNVByNU1odUs3dGxTMzZmaTBSbFUvZEoyMzVSKy9YcGN3VHUyQkhtUkNBQUFRZ0FJSFpFVUFnTUxzdW9VSVFnQUFFSUhEQUJLSVA3cWtNMmxHNTdwS1NqZDl0Q1FRaVE5STJEYTJSSVc4S282RFhjVGtpQVordXYzb2xkOUZSTys4cTZXRXpmb1p6RFlZMW0zRHFkRUxwWWoyWitxVGxwU1Y5b21iQlc4aHJDcDdSZkZSaWVHUzhsZytDaUZuSnUyQ3pkQVFDNWYzQkhjTUlSUFBJVk91cHFMWm5sUFFhU1VmMlhPZ1RyZGZLUEMwZGVVbTVXdkpXRU5WckRyOTdvOUtueE0vWFVabjdOLzkrdjViZjdIM0FJZ0J2OUcwbWkrN000R1VqRzFoclhvd0V1VjRMWEZ6U3NTUHJPL1QyNkxteFo2cExTdnJjMEFLMmROOHVCQUp1V2hUeVk0cHZnYkZJb3o3L3JLUkxTWExmVDUyaU5XWEp4bm1VMTNwZjVJZ0VMSkM0YXVPWnpkK1dZMVAwL2ZwcVNiL1pmT1BaYzhZY1V6Um1TdGJwYzJ3ZmRZSUFCQ0FBQVFnY0ZBRUVBZ2ZWM1RRV0FoQ0FBQVJtVGlENjRKN0tvQjBaTEkydFpGTm9Xd0tCcU43Yk5HcEZKNVZMalBRbGh1aVRwTlBudHdyR3R0MVZYaytTbVl4SmpndHFsNXcyeUxlbEVrOEpZK294OU40U2crSFFNdHJ1ODZiR2ZZTU03YmIzUGd2eklqQUZ6MmdlTERFOE1sN0xSM0hKL0ZPYU93S0JVbUpjUDVSQU5JOU10WjdxcTY5dEw5NlVjdmlBcmxTNm9YMWpTVS90eWUrMmt2NTJLTVFkM1BjZ1NmZnNLUGR0VFNpZW95VWR0L0g3K1pOYjdDTmE3dXU2cDdScHRlYkZrMG42cHlSYWFLdERhVWl2MG5aRTEvZUpMWHh2alhBTlVSMXEvTDRMZ2NCU1BRaEU5ZDdtbVBRR3ZMMEVkS1VTRVhMSitqUlhjRjByZE50cEc2SE5LeVJkdUtPaDIvVGFNT1I1aTk2dkpldjBJZVZ6RHdRZ0FBRUlRQUFDRlFrZ0VLZ0lrNndnQUFFSVFBQUNJd2xFSDl4VEdiU2prd3cyV0YrNUlQN2l0Z1FDa1ZITDNlRVRHQzhZMlMvUjdWRTlTZzJxcFlab24xQzN3Zm1LUVVWOUlzV25aRGFONjFINzFuKzMyOWszU1RwengwMGw3ajlMeXExMWJZbkJzRmFaem1jOXhuZFh2blpoZW9WbXpMNjdac0VUNXpVRnoyZ2VMREU4TWw3TEIwRHAvRk5TQWdLQkVscGNPNFpBTkk5TXRaN3FxN085eEx5cUVRaWN0T2NpaHcreW1DODMxdnJTUlZDYktDNlJ2QWkwTWVvS00zQ2JaazN5dUE2bUpTZTIrL3F1NXJ6bzJPSU9LZFNWZGkzcTZCTnBsSDRQakhtR3g5eTdDNEZBTk9lNFBTVjlXM1BNUlN3dHluRy9kNlZhejlHWWVwU092ZEwxYWE3Z3VrYm90cVVMY2FLeFhySk9qOFlFdjBNQUFoQ0FBQVFnTURFQkJBSVRBeVo3Q0VBQUFoQ0FRQUdCNklON0tvTjJaR0QrZW5KLy9wN010bXhMSU9EcVJDZjN0M0dpL2ZTU2JBeTVRQWVmMGxBSFE0eUNQam4zbktZZWx3LzZ5RzUySGF0M3FFZ2dPdld5VGE4Tm1jUHhKeTRyTlJnT0thUHRIaHNESFhQYTdQdlNLeVZkVzlJM2FoVThjVDVUOEl6bXdSTERJK08xZkFBTW1YOXlTMEVna0V1SzY4WVNpT2FScWRaVFhmVStaK09tMi9QN2VYb2E1ZzN3S3pWaVAzdjh5VTJSQ0twMC9aRmI3bFRYL2F5azV5VlBBVzFsYklZWjZMdmVvanVMTXQ1WG9iSTE1OFhJNjhPdWhaWlIvZXdCNDE0Vm1FNlp4UzRFQXRHejZQWk81VTFzTE12bzVQNDJ4bVRrWGFQMCsyTEkrdFR6aWI4YmJ4RUFyUkc2clUrSTQrSnYwcnd2bmphMll5ZTZQM3EvbHF6VEo2b2kyVUlBQWhDQUFBUWdrRXNBZ1VBdUthNkRBQVFnQUFFSVRFOGcrdUNleXFBZHVUOHZkWFc0VFlGQUpHNzRVSE1hN1hJVHgwdTlTbktKMmJXdUtoVXBERFZFNTJ4QWVCUS9LWjFleXoyaHVEbnlueGdZejI2WTRnRlAvOFNVbHpERVlGaGVTdnNkZlNjajErL3dKdXBERnhKcVlBcWUwVHhZYW5oa3ZKYU40S0h6VDA0cENBUnlLSEZORFFMUlBETFZlcXF0N3JudjVpRmhaazRoNmZrOUhvUzZUdDNYWUR4VkhuZEltM1J0K1c4S0h2cTg4enhEMGswbDJVWDYyRlJ6WHV3TGllQjYxaFEyREduM3J5U1Jpc040dGFWYVlSdUcxQzMzbmwwSUJDd0FmWHBQQmFmMkpwYkxwdTI2U055d2pURVplZG9xRlNrTVhaL21lbVZ6dUxYcnByQWJROWhIb295YTg5ZVErdlhkRTcxZlM5ZnB0ZXRIZmhDQUFBUWdBQUVJRkJCQUlGQUFpMHNoQUFFSVFBQUNFeE9JUHJpbk1HaWZLYmx6UFY5UDIreSszb2F2WENQck5nVUNOdVM4WE5MRmV1ci8rejN1WjhkMmFYUXl2TlFscHVzenhoQjkwY1RqTkVIRG5pRHA5czBwc084TkFCQ2RMaXQxa1R5Z0NvTnZHV293SEZ6ZzJvMGVLM2FESEoxTStxR2tHelVlS1o2MUFKSEFGRHlqZWJEVThNaDRMUnU5WSthZnFDUUVBaEVoZnE5RklKcEhwbGhQdGRYZG04RitKM29EcmkvWmE0Q2Z2U0hlZmFLVHFJOXM4cjN6QXQ0bkt6NTltNVdiOGRDNzVoU3Z2WHhhMjE2VGFxU2E4MkkwTmwzZlhmWlo1SG5IYXhRTFkrMFJZNjVwMndLQnlQT0ZPWlY2ODZnNTVxSitpcjVsdGpFbUk3RjZTWGdHMTNmTStqUlgxRFVtZEZza3l2aGlFcmpiVzhIY1VqU0hsYTdUNTlZKzZnTUJDRUFBQWhBNEtBSUlCQTZxdTJrc0JDQUFBUWpNbkVEMHdWM2JvTzExZ09OSzJsMW9YeW85RWI1TmdZRHJIUm1WN0VYZ0tFbkhUdEQva1FGcXlFbXJzVWJCUzBwNnNhUklKUEJYa3Y1a2dFamdGOUxwc3JOMjhCemlKbm1Dcm1uTk11cXZxZU9zSHBrRU9RNUwwWmVXSWhLWWdtYzBENVlhSGhtdlpVL1gyUG1ucjdRK2djRG14bDlacmJrYUFqOUpJSnBIYXErbk52bDdmWFgxNUNMNlZFSG4rSFR1MGMyRzl0c0hkbUxrbmVZemtpN1R1S3orNk1EOHQzMWJ0Rm01Y25IZjE4ZWxucStpTnRhZUYvdThKTGd1MzBwOTlxNm9ZaFA5SHEycm55M0o0cnNoSXRPSnF2d1QyVzViSUhEOTVEMmd6NzY2R1I0ajRsQjd6RVhsUlI0UVBFOWRRZEs3bzR3Ry9INzJacnkvUnRJdmR0ejc2UlF1NUJNRmVZOWRuN291OWxyUUZ4YkcxWEY0dDFzT0VIZEY4NXp6SHVKVnBnRFI0RXVqOTJ2cE9uMXdSYmdSQWhDQUFBUWdBSUh4QkJBSWpHZElEaENBQUFRZ0FJRmFCS0lQN3RvRzdldWtVOG9uNm1uQUVCZjkyeFlJNUd5Nmpqa3gzNFhISjRaOHl2c2FQZnlHZUMrb1lSVE02VnRYZTRnNyt4eWoxcGpUa0xXZXA3Wjh4aG9NYTlUTnA2QWVtNUdSUlFKM2tmUm9TVC9JdUg0WGwwekJNNW9IU3cyUGpOZXlrVkZqL3VrcU1mTG00SG5ydVdYVjVXb0l0QktJNXBIYTY2bjFTbGdRNE5CQ3Y1UFJOOTVnOWNiY21IR2Y0MG5weVpKdVBlTU4zVTFVZmFHYlZpZXhmUUwzOVpKTzNzSzVkRE0yNnFyYTgySWtYSE45eHB4T2p0b1QvUjZKVHV5aHdlTGhaMFlaN2VqM2JRb0VjangzRFhIUlgzdk1SVjF4eHJSSjcyK3FyalRGbUxSTit1R1MvckNuM0NFZU5XcXNUM1A2MXRVZStvMFppVElzRkxJb3cyTHpPYVhvL1ZxNlRwOVQyNmdMQkNBQUFRaEE0Q3VFamNRQUFDQUFTVVJCVk9BSUlCQTR1QzZud1JDQUFBUWdNR01DMFFkM0xZUDJ6MGk2dWFUSFMrb1RCeGpWa0JQVjJ4WUk1QmlYM0pZaG0rRmR3OFZsM2wzU01UM2o2UjJOVWNjeEpyOVVPT1pxR0FWejZyZXExaEF1OXNoZzE3MTk0MmVvd1N3SDF5OUo4aCs3Ymk1Sk5ReUdKZVcxWFhzU1NZK1JkS3ZNakh4U3o2SUN4NitkTW5uTVhENmQwdkxtU2s2YWdtYzBEdzR4UERKZWMzcnorR3RxekQ5ZHBVVjVyMDRHNTllV0t5SFFUaUNhUjJxdHA5WkxQMTBLM1hOdlNaN25vMlFSMlBVa09ZelQySlFqUEJ2eXJzK3QxMlVsZmFPWlAycWRlTzhMZjdVNlhlL1FXRTl0cWVDUXpkaW9uZEhjZGMzR3Bma0xvMHpXZnZmNzlnRk42QzZQbGI0MDVUcXFyOXdjQWV4WXp4ZDk1ZnY1K2UwVU1xdDBEZTE4dHlFUWNCOWVXWkpqeFVjZXU1NlUxbkc1b2RxbWZoZDNzYytaUjJxUHlValFQTlFEU3EzMWFWUy9GY3NoWEhKRUdSOUpYdkErV1RDLzVGNTZDa25Ya3ZTODVwdjJtN2szU1lyZXIwUFc2UVhGY3lrRUlBQUJDRUFBQWpVSklCQ29TWk84SUFBQkNFQUFBdU1JUkIvY05RemE1MjFPVy8yRkpCc3pvK1M0aHo2NThQbm93bzNmdHkwUWNQRjJCZW1UWkdmcHFXdXRFOWxlUDkwK3hZanQyaUIzV1RhNnZLQ1FYVTJqb0EyczkycmlEdDgzcUlQcmVvdGtVUFdwc0p5VVl6eDJQdDVvZG56a1dtNW9YZTRmSkxlYmZ4b0lOTnJhVWN0Z21NT283NXJjK0thclBMN1dQSWUzU3g0cmFyRmM1VzNCa0RkM0hITGlWNXRZMmY4ZzZXYVpEWnlDWnpRUERqRThNbDR6TzNSaWdjQkZHaEdLKzgvOTBaYUdoR1RKYnhsWEhoS0JhQjZwc1o0eVQ3OW5mY3IwanBLdW15RzZYUFZCRGM4QjYvMlpzOUUwNUYwZmpSbDdTL0E3M2k3elN6ZkpvN3o3M054N0k5TW5uYjBlMkV6ZXNMMXBzL2xlc2hrYjFhVzJRTURsUlc3VlYzV3lDTUx0TGRuQTYyclBCVkxvaTRkR0RVNmJrcEVROU9QSmk5WUhNL0xMdmNSMXRNY0xpMFF1THNrYnhLVnBhb0dBdnpYdWsvb2xxdHZRV1BKVGpMbW9yaFk1dmJRSlUrWjNkVi95aVg5L1gzdzd5akQ0M1dGWTdJbXR6UXZJNnRhN3BmVnBhVkcxMXFmKzV2T2EyQ0tQU0ZRLzVKc25SNVJocjJ3V2szMjJGRUxIOVN0QnNBOEtPUHllUGVGWjRKV2JvdmZya0hWNmJ0bGNCd0VJUUFBQ0VJQkFaUUlJQkNvREpUc0lRQUFDRUlEQUNBTFJCL2NRZzdhTjF6K2ZESDAyWUZzZ2tKTnNTTGFMMTFmbVhMeHh6UzRFQXE3Q1RTUTlKYU8rM2dDMVVkbWJycVhKeHZDSFNITG9nTDQwNUNUSktyK2FSc0hjMCtwRFRqSmVMTGtqN1RQc3VVMFdTZHhtcEdITG05ZzJZSGtUKzl3SjFCRHZGclVNaHFYanB1MzZVcEdBOC9oQ2MzTG5MNU9oY3NpcHVsVTl6Tk1lR094SjVIY2Jqd1puV0t2Z1Bnb0UzRHpHYTk2b3JUbi9iSlo0dHVhOTh0YkdIZTlaZTZyaWpiMjJVOEY1dGVjcUNCeFBZSXIxbFBQMFNXRnZZRnBVOVp0cGs3cVV1VGNNdlpuK2x0SWJnK3R6NHFBN2k3OXBZdHpmWStTR3MwVStkakh2alVLdmk1eHFDd1Q2M054N1U5R2JtVmRzWWVKK0dTTE83TU03MWJ5WTIyZi9Lc2toV2o0d2NNeXNDemx5My9GZVAzb0QwZXVFdm1TUERoYVpPdHhBcnNpMExiL05UZmNoM3p5cmZHc0xCTHhtY3YwdWx3VENGaTdrcGlHaHhwejNWR011cXZlbEpiMUswa21EQ3gxdXdHUERHOHlseWZPSFF3cFlYTlMzNlQ0bXBFSE45ZjZVWHRrY0lzYmVSOHk5TDMwcUNaKzgrVDRtYlI0VUdMS1pINzFmaCtRNXBrM2NDd0VJUUFBQ0VJREFDQUlJQkViQTQxWUlRQUFDRUlCQVpRTFJCN2VMODBtYW5GTlJqcnZkZDVvK3FycFBiRHhzb0xGdlZ3S0IzTTF3dDkyblh1ek8yckhnY3paYTdZYlJzU0xOWkdVTTcySTROTFRBS3IvYVJrRWJuK3pDdU0yUXZ0NkcwaE9OSlFZejUvM0E1Rm8vaC9lcVhqNWg1dzNETzIxc1l2djNwUXNFM0FhZjJQZEdodHRabXY0dDlhdEZQRDY5NXhBRWJkNEZUdFo0dXpodEVnZjVwS3RkNGw2bXh3VjI3dWFCNjF2VEFMdHFmelFQRGpVOE1sN3pSbGp0K1dlOVZJOUZ6MFZYNjZtS3g3QlAxUGs5OG9PVzY3eXhjQ2xKYjJ6bWdPL2tOWW1yRHBCQU5JL3NDb2xGQVRkcU50YitmWUlLbEt5QkxKQzhTM0tQbm5zeTNYUG9lWkkzbTF1M2VBS3BMUkR3czI3WDEwZTNzTEs3YmE5dE5sMjdmeWh0NG42dU10K3A1c1dTUG5PVHpNTmVvU3dVYUpzZjE1dnQvcklRMGVKZ2UzaFloYjBvZWNlWENCbTk5dlZhelo1Z29ycXQ2dWs2T2JUUm5aTW9lYjMrVXdrRVhJYkZsam52RDI5ZSsxc3FPam5lTmR3ZWwvZ1A4ZncwMVppTEhvMlN0WkxGeFc2amhkUGV3STZTKzl0ZUF5eDBYWWw5dSs0WkdscGdsVi90OVduSnMxcjZEZTIxK2NzelFsVzRiZjVtK0pPMDdzOFY1UGdiMXVzdWg4YmI5QTR4WkUwZHZWK0g1Qm1OSFg2SEFBUWdBQUVJUUdBaUFnZ0VKZ0pMdGhDQUFBUWdBSUVCQktJUDdnRlpEcnFsMUxDeFdjaXVCQUt1Uis1bStIcWR2ZEhxVXlwdmJvd3UvMi90QjRzc1ZodXFkbVdiazJyRWlwekNLT2lUdXpZc1h6aG9oR1BLT3U2clR3L2xwS0c4dlVsb1k3TERXS3pjV3ZxRWxrOW1PbHlFVDJkNkk3c3ZydXMrQ0FUTTJPMzk1NEVuVVhQNnFQU2FrczJEMmdaWTF6V2FCOGNZSGhtdjhXaVlZdjVaTDlVYlZYOGRWME1mU3lkUzM1MnUvZS9KRTQ3ZDdMNTlnRXZjakNLNVpJOElSUFBJdHB2cWpUUzc1SDVrQmJmY2ZYVXYyZEJkNWZQTzV2M3o3TFRoOUY1SjMwMC8rQVR4aFpybjhQeVNMcGsybUZhYnpHMTFxQzBRY0JtNTg4V3FQbmJ4N2RBRXRkT1U4K0tROTVJM25GK1MxcTEyODcrZUhHN0M2NmNyU2ZMRzRHWXFlY2Y3M3R3WTdLdHlYRGR2WXRwVnZlZHhyN0ZYeVY0Zkx0ajgvdXRKR05DM0pwMVNJRkI3ZkxUbE4wWWM0UHltSEhOUiswczJ3MWQ1L1djVEVzSWhLZnd0ZGR4R0FiK2NCQ0R1N3h5eGhiOUZMQXp5dTM1b21tSjk2bWYxaVNtY1RGKzlTc081bElneVZ1V2EwZk9UcHo5L2U2NExOQ3c2dHBqTDg3YkY0WDNlQTRlc3FhUDM2NUE4aC9ZejkwRUFBaENBQUFRZ01KSUFBb0dSQUxrZEFoQ0FBQVFnVUpGQTlNRmRzYWpXckd6VXUyVnkwNTk3S3FFdG8xMEtCRnlmSXhvRDVIT1M4WEZxWnV2NTJ6aGpBN2xkd1k1SlV4a0ZjemNPU2cxelowNHhSQ1AzbUdPWXROMjdMd0tCMVpoMVdJcHIxNFkwSUwrU3pZTXBETERSUERqVzhNaDQ3UjhVVTgwL3ExSi9vVEZZTzU1dVg1aUJhTmlPSFFOUi92eStmQUxSUExMTkZqcXNobDJ3RDNVUFgxcFhiK2kvU05LNVNtOGNlZjBVQW9HUytjSnJGNjlEM2pleUhXMjNUejB2RGhFSkRHMW15VHZlWlpURVlCOWFwN2I3bGl3UStOUEd3OFl4SFY2ZGNobE5QZWFpZXRpRGg4VjhucnUybVJ5eXdrTEFGNDhzZElyMXFhdVUrNnlXaG02ektNTWlNbnNJMldZYXNwNkszcTlEOHR4bW15a0xBaENBQUFRZ0FJRTFBZ2dFR0E0UWdBQUVJQUNCK1JDSVByaW5yS2xQY3p1V1pBMEQ5cTRGQWlzRFRzNHBqMXBNZlFMUEorOXJ1QTJlMGlpWTY4YlNNWkt2MnB6U2RidHkwaTQyWGZkSklHREc5cUJ3cytTdXRlK1VaazUvakxtbVpQTmdDZ05zTkEvV01Ed3lYcnRIeUpUeno2clV1eVlYdzBQSGFZMHhNTFJzN2xzR2dXZ2UyVVlyTEJaMG5HMExZc2FJTG9mVWRSY2lnU2tFQXZiazlKUVU0aW5pNEJQMVB1MmU0em8reW12ejkyM01pN21uazB2cnZubDl5VHQrZGU4dVJBSkxGQWpZWTRMRGI3eTJ3ak8valRFWGpTV3ZSZjlja3QvWjIwZ1dXdnNaOWpmcDJEVEYrblJWcDF6QmRXbm90bDJJQklhc3A2TDM2NUE4eC9ZMzkwTUFBaENBQUFRZ01KQUFBb0dCNExnTkFoQ0FBQVFnTUFHQjZJTjdnaUwvS3c2bkRkalBLb2daR3RWakRnSUIxOUVicnJkUEcxRlRicmc2bHVaOUtyb05udG9vNlBpZjd1K1RCeDFwbDVXT1dmblJxTVBUNzNabCt4Y3BQbkhtTFlNdmUzUTZhZU00eWlWcFNvTmhTVDM2cm5VNGlJY2x3VW10UEV2eXVYY1RxL2hCbVRkTXdUT2FCMnNaSGhtdjdaMDg5ZnpqVW9lNEwxNnZiYTB4a0RuTXVXeUJCS0o1WktvbStkVG9VOVBwNFE5VzJDUWNVMDhMb2Y0MmVUWWFrMDkwcnpmQi9ON3dhZU52UnhjUCtQMHF5WjErWkx1Nm9hUm5ETWcvNTVadHpJdmJXcmNPRVFpc0dEbjhrd1ViZG1FK1pScTcwZDczSFRKRnZUM3VmZkxiYTlOYXo4QzJ4bHpFdzgrZHZ4dWUxcXhOVHhWZFBPSjNoem01cmFRdmo4aGovZFlwMXFmcitmOXFDcVVSUFF2MmJHSitEcjJRazh6NytzMHo5cVNNNzdTYy9QcXVHWG80SUhxL3NrWWIyelBjRHdFSVFBQUNFTmdpZ2VnamE0dFZvU2dJUUFBQ0VJREF3Uk9JUHJockFyTEwyd2VuZUpFMjd0Wk1jeEVJck5vMDFZYnJWRzZEdDJFVXpJMHBhNUhBVVpJK21UbEF2TGE4dktUSE5JYjY4MlhlVTNMWjh5VDl5VVpNMjVMN3B6WVlsdFFsdXRhdWxiM3BZczhlT1RGYm8vejZmcmNCOC9GSjRQR2xnb3ltNEJuTmd6VU5qNHpYbis3c2Jjdy9MdFVDRFcrbWVIeVhwcHBqb0xSc3JsOEdnV2dlcWRtS2J5YVgvbitYVGc3WFhsT05xYXVGa25iWC9jam12WHlHTVJtMTNHc3hoT09zUDFEU1p5cm52WjdkbVNTOUxsaFRmS2k1NW5LU1BqZFJQYlkxTDY2dld4OGw2VnFWMitNMWxFK0RmMkpFdnQ0a2RwOWJnRnQ3YldMUnNyMURQWDNrUnZ1MkJBTC9KdWtoa3J5NTdYbWdadHIybUl2cVBsVy8rOW4xV0tyaGRXRzlEVk9zVHpjWjVYcGxLdzNkNW5LbStuWjEzbWJ1NTh5aGFINFFkWHpMNzlIN2xUWGFBS2pjQWdFSVFBQUNFTmdWQVFRQ3V5SlB1UkNBQUFRZ0FJR2ZKaEI5Y0E5aFpnT3VEYmMyQnJ3cEdXQzhzVDJGQzlaVi9lWW1FRmpWeTZjODdpVHA5eVNkWmdqTUZFL1VwMmdlMnB6d21PcDA0RGFNZ2w0RDNqMmRjb3hRT015QWpkVEhSaGV1L2U1TkNaODA4MG4waXhmYzEzYXBEYkJQa1BSa1NTV2IxMjE1YmNOZ09MSzVQM1c3TjFMdHljR2VQaTVSMFNEL24rbWtxN2wrZUtDUmNBcWUwVHc0aGVHUjhYckNzTnZHL0xNcWJlam1wVThKLys3RTc3SGF6ekg1YlpkQU5JK1UxbWExbHZwR0UzN25iWTJIbC9jMzgvTGJKVG1NZ0RkLzVwN3N0Y1BDd1BzMW02L25IVmxacndrc09QQm1jKzFOMGE2cXVkNTlzYm52bjlvMnNtbWR0Mjl6WGx5dmhJV0NkMHZ6bldQQ0Qwa2VueGF2UEtLSkoyOFg3clhTNlNUZEk3blVIN3FtZGwwc3FIbXVKQXNpL0d3TjJiRGNiTk1VQWdGL1N6bnN3ZXZUdDVSUGhCOVhDMlpMUHJzYWMxR1QzTyszU0d2U240c3U3dmpkOCtuTDBqZENyVDdmTEdxSzlXbGJjM0lGMTM3MkhJYkY3NHlTNURuZ25pa0UyUmh2ZUo0SG5wbWVzN0hmcjlIN2RZcDFlZ2t6cm9VQUJDQUFBUWhBb0lBQUFvRUNXRndLQVFoQUFBSVFnTUJlRVBENngvRWpqMjRNZlZkb1RsQmNXSkpQcUhramRqM1phUG5aeHFEekw1SmVrUXlDUXpkUzl3TGN3RWFjVE5KdnBFMXU4N1pCc2Uwa296Y2E3RnJVdk4rVGVIc2p3aHN5cE9NSjJEajQ4ODE0dktTa3kwaTZWSEw1ZXBZT1FDdW1GZ09ZNjd1U0FkNWhJNllVQ1MyNXZ4aXYyKzg5Q3dYc3J2ZmF5Ulh2R1J2WDZLc3h2VDR2dkRTNUdxKzV5Ylg5MWxJaUJIWkx3TEh1L2Y2NFJoTHkrWGs3YlV1VnZ0SnNBdnFQMzhOK2QvZ1UvM3Q1ZCt5azh6eEgvbExURDk0MDl2dmY2MWJQa1pzbitEMWYyb3VDaGNCZXQzcWp6aDZnZmpSaHJkZlgxRmR0M0s3L2V1Tlp3dUV0MmpZenZjbisrYlFPOFFiN0d4c3ZNdjllU1JRd1lSUEp1b09BdjUzc1pjeWV3N3dlYlp0TDFvWHFIcE92U1d2OE9YbGFXVUlIcjg4QlYwNGVWZHJtZ0JWdmk3b3RZbnRET2lEZ1oyL0tlV0FKREtrakJDQUFBUWhBQUFJdEJCQUlNQ3dnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0IwQUFnY0FCZERKTmhBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDQ0FRWUF4QUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVEb0FBQW9FRDZHU2FDQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUVBZ3dCaUFBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJSEFBQkJBSUgwTWswRVFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlJQkFnREVBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUU9BQUNDQVFPb0pOcElnUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUNCQUdNQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdjQUFFRUFnY1FDZlRSQWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBQ0FjWUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBNEFBSUlCQTRnRTZtaVJDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUVBb3dCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQXdBRVFRQ0J3QUoxTUV5RUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlJQkJnREVJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFnUU1nZ0VEZ0FEcVpKa0lBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRUUNEQUdJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWdkQUFJSEFBWFF5VFlRQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRZ2dFR0FNUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJBNkFBQUtCQStoa21nZ0JDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaEJBSU1BWWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDQndBQVFRQ0I5REpOQkVDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNDQVFJQXhBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRURnQUFnZ0VEcUNUYVNJRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFnUUJqQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlIQUFCQkFJSEVBbjAwUUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQWdIR0FBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRT0FBQ0NBUU9JQk9wb2tRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkJBS01BUWhBQUFJUTZDTndXMG4zYkxuZ3daSWV0MkIwNTVkMDVFYjl2eWZwRFpLK1BKTjJuVWJTSDBzNllxTStydDlESkgxMUp2V2tHaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0N5RUFBS0JoWFFVMVlRQUJDQ3dJd0ovbERhak40djN4dlV4TzZwVGpXTGIydlV0U1plUjlLNGFCVlRJNHl5UzNpcnBIQnQ1L1lla2kwdjZ6TWEvbjBUUytTUjlRTklQS3BSUEZoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDT3daQVFRQ2U5YWhOQWNDRUlCQVpRSUlCQ29ETGNpdVN5QmdBY0JsSlgxeExTK0xBeDdWaUFadUkrazVrdXo1WVM2ZUVBcWF6S1VRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoTVNRQ0J3SlIweVJzQ0VJREE4Z2tnRU5oZEgzWUpCUDZQcEd0SStrYXFtdC9sZDkvdzZQQXBTVGVWNUd0SkVJQUFCQ0FBQVFnY1QrQi9TWHBCRDR4clNub2hzQ0FBQVFoQUFBSVFnQUFFUmhING41SmVMK25rSGJrczNTdmxLRGpjREFFSVFBQUNFSmdEQVFRQ2MrZ0Y2Z0FCQ0VCZ3ZnUVFDT3l1YjNJRUFtM2lnRldOZnlqcFR5UTlYTkwzZHRjTVNvWUFCQ0FBQVFqTWhnQUNnZGwwQlJXQkFBUWdBQUVJUUdDUENTQVEyT1BPcFdrUWdBQUVJTEFmQkJBSTdFYy8wZ29JUUFBQ1V4RkFJREFWMlRqZkhJSEF6elNoQnU0ZzZXR1NUdFNSNVhNbDNZcVFBekZ3cm9BQUJDQUFnYjBuZ0VCZzc3dDRLdzA4amFRelNEcFMwb2tsblV2U0w2YVNQeVBwLzByNnZxVDNTL3FDcEs5dXBWWVVBZ0VJUUdEK0JKZy81OTlIdFdxSVFLQVdTZktCQUFRZ0FBRUlURVFBZ2NCRVlNa1dBaENBd0o0UVFDQ3d1NDdNRVFpc2FuY0ZTYytVZFBxTzZuNUkwclVsZlhCM3pla3QrZWNsM2JrSmsvQ3pIVmU5VGRLVFpscDNxZ1VCQ0l3bllMZnVEcDNTbHQ0azZYK1BMNkkzaDZ0S3V0YkVaZFRJL3R2Sks4eS8xOGpzUVBOQUlEQnR4Ky82V1o2aWRSWmovbElLVCtHMTFLOUxPa2xoUWZia1pEZkxUNWYwSWttZks3eWZ5eUVBZ2YwbmNKRWs2bTVycWIvbEhpM3B1d3ZEd1B5NXNBNnJYRjBFQXBXQmtoMEVJQUFCQ0VDZ05nRUVBcldKa2g4RUlBQ0IvU0tBUUdCMy9Wa2lFSEF0ZlhMdG45TnB0clphZjB2U0RWTnM1Ui90cmxtdEpVZkdnMytRZExPWjFabnFRQUFDZFFpY1d0TExKVjJzSlR2UFZWZVQ5TEk2UlhYbTB2V3VtN2pZNHV3OWoxK20yYWg4Vi9HZDNMQWlnRUJndXJFd2gyZTVadXZPM3B6OHY1T2szNVBrRTY4MTA4Y2F6d01QYk5ac3o1YjB6Wm9aa3hjRUlMQklBdlpFOGhSSk4raW8vUjhrZ2NCU0dzZjh1WlNlbXJhZTBUZitIemNIQkk2WnRncmtEZ0VJUUFBQ0VJQkFId0VFQW93UENFQUFBaERvSTRCQVlIZmpvMVFnNEpvZUlla0p5VnRBVzgxL0tPazJrcDY0dTJhMWxod1pEeEFJekt6RHFBNEVLaEs0aXFTWFNHcjdMckgza0tNYkR5UEhWU3l2TFNzRUFoTURubEgyQ0FTbTY0dzVQTXMxV25kZVNYKytKYThpOWdweTM3VHg1LzhtUVFBQ2gwbmdncExlMENGRytyU2tTemRpNlU4c0FBM3o1d0k2YVl0VmpMN3hFUWhzc1RNb0NnSVFnQUFFSU5CR0FJRUE0d0lDRUlBQUJQb0lJQkRZM2ZnWUloQndiZTJtLzBISlpmOW03ZCtaRE43SDdxNVpyU1ZIeGdNRUFqUHJNS29EZ1VvRTVuSmlEb0ZBcFE1ZFFEWUlCS2JwcExrOHkyTmFkNnEwZnJyRG1Fd0czbXVQQXJlVzlOcEdNREEzTDA4RG04UnRFSUJBQVlIN0piRlEyeTJQa1dRUEFuT2VHNWcvQ3pyN2dDNk52dkVSQ0J6UVlLQ3BFSUFBQkNBd1R3SUlCT2JaTDlRS0FoQ0F3RndJSUJEWVhVOE1GUWk0eG83M2VOY05sMzBma1hTVXBFL3Vya21kSlVmR0F3UUNNK3cwcWdTQkNnVE9MK21OeWZ2SlpuYmJQREdIUUtCQ1p5NGtDd1FDMDNUVVhKN2xJYTJ6VGVSS2t2NnhPY2wvK2lFWlZMem5ieVRkZzdBREZZbVNGUVRtVDhEenp2K1JkSUdXcW41WDB1VWFiMHB2bVdrem1EOW4yakV6cVZiMGpZOUFZQ1lkUlRVZ0FBRUlRT0J3Q1NBUU9OeStwK1VRZ0FBRWNnZ2dFTWloTk0wMVl3UUNycEhmOGRkTEJ1K3ZKVGZkYjUrbXFxTnpqWXdIQ0FSR0l5WURDTXlTZ0UvcS9uVkh6Ylo1WWc2QndDeUh4eVNWUWlBd0NWYk41Vmt1YmQxSkpQbjUvN1BTR3llOGZxN2VuaVpzTWxsRDRLQUo5SVZuZVhueS9qYkhFQ1RNbi9zemJNOGs2U2FTcml2cGRwTGVYYWxwMFRjK0FvRktvTWtHQWhDQUFBUWdNSlFBQW9HaDVMZ1BBaENBd0dFUVFDQ3d1Mzd1RWdqOGg2U0xTL3BNWnRXdW5Ed0t2RFR6K2wxY0Zoa1BFQWpzb2xjb0V3TFRFamkxSkJ1K0w5WlN6UGViMDNTWFQ5NEZwcTNGOGJrakVOZ0c1WG1VZ1VDZ2ZqL002Vmt1YVoxRE1qMjhXVS9kcHVTbXRXdS9JdW5Ea3Q3YmNyK1pYRlRTT1NTZGFFRCtINWQwRFVrZkhIQXZ0MEFBQXNzaEVJVm44YWJ0MDJiWUhPYlBHWFpLUVpXOEYzQk9TYmRzdkF2K3JxU2ZTL2QrUzlKbEpMMnJJSysrUzZOdmZBUUNsVUNURFFRZ0FBRUlRR0FvQVFRQ1E4bHhId1FnQUlIRElJQkFZSGY5WEVzZ3NMc1c1SmNjR1E4UUNPU3o1RW9JTElWQTM0bTV0eVd2SjhkdHFURjJqMzdreUxMT0xlbUJ6UjhiKzl2U3Y2WGZ2ek9pbk85SmVvT2tMNC9JNDlCdlJTQlFmd1RNNlZuT2JkMHBKRDB1blpqTXZjZlh2VXpTSTVONDZSc1pONjQyWWV6UjZkYVNQRS9rSm9lR3VscFR4NC9tM3NCMUVJREE0Z2hjTUwzWFQ5TlM4MjJHV2lvQngveFpRbXQrMTE0L3ZmL2F4aHdDZ2ZuMUZ6V0NBQVFnQUFFSVRFb0FnY0NrZU1rY0FoQ0F3R0FDdDVWMHo4RjMxN3Z4Q0VrMkFteW1iODVrZytMQjZRTzN0TVZ0d29lY0QrSm9JN3UwSHJ1K1BxZk4yNmhqeEJXQndEWjZnVElnc0QwQzBZbTVQMmhpZ1Q5NmU5V3BVbEkwanptK3NFOEU1MndxVnFrUW1iUVNRQ0JRZDJBczhWbTJXMnlITUxsVkpnb0xjeXdLZUlpa0wyWGUwM2FaYlMvMkt1Q3dLaGZKek1jaWdhT2FFNTZmekx5ZXl5QUFnV1VSdUorayszWlVlWnVobG5LcE1YL21rcHJ2ZFgxZXMycmJCcUsxTVI0RTVqdE9xQmtFSUFBQkNCd0lBUVFDQjlMUk5CTUNFRmdjZ2FXNE85NDEyS0VmbFFnRWp1KzUya2FBb2VNaE1oNGdFQmhLbHZzZ01FOENTend4RjVHTTVqRUVBaEhCN2Z5T1FLQXU1NlU5eTdaLzNGM1NNWmtZWGlEcDlvMGI1bU16cjgrNXpIVzRlbkliZnFxTUcxNHQ2VHFTdHVWUkphTktYQUlCQ0ZRZzRManZyNU4wdnBhOHZ0djhkcm5HbTlKYktwUlRLd3ZtejFva2Q1c1BBb0hkOHFkMENFQUFBaENBd0t3SUlCQ1lWWGRRR1FoQUFBSS9Kb0JBSUc4d0lCREk0OVIxRlFLQmNmeTRHd0lRR0VaZ2FTZm1jbHFKUUNDSDB1NnZRU0JRdHcrVzlpejdOTDdEQkp3b3dQQkRTWGRKbmt4K1VCZlpqM003czZSblNicDBSdjcrTG5ob2M5TDRSeG5YY2drRUlMQU1BamVROVBTT3FyNWMwclVrZlh0R1RXSCtuRkZuaktnS0FvRVI4TGdWQWhDQUFBUWdzRzhFRUFqc1c0L1NIZ2hBWUY4SUlCREk2MGtFQW5tY3VxNUNJRENPSDNkREFBTGxCSloyWWk2M2hRZ0Vja250OWpvRUF2WDRMKzFaUHB1a1YzYWMxbDJuNHBBQ041YjBuQzFzeUo5YTBoTWxYVGZvRnA4bXZsS0tWVjZ2QjhrSkFoRFlGWUdmbGZTOHhrUEEwUjBWdUdFelZ6MWpWNVZyS1pmNWMwYWRNYklxQ0FSR0F1UjJDRUFBQWhDQXdENFJRQ0N3VDcxSld5QUFnWDBpZ0VBZ3J6Y1JDT1J4NnJvS2djQTRmdHdOQVFpVUUxamFpYm5jRmlJUXlDVzEyK3NRQ05UanY2Um4yWGFQaDB2Nnc2RDU5aHh3UFVuL1ZBOVRtSk5GQWk3dmlzR1ZoQ2tKVVhJQkJCWkQ0Qklwdk1CSlcycjhvUlJlNEhNemFRM3o1MHc2b2xJMUVBaFVBa2syRUlBQUJDQUFnWDBnZ0VCZ0gzcVJOa0FBQXZ0SUFJRkFYcTl1V3lCd1JISUZlNUs4Nm8yNjZtU1M3dDI0bmp6dlJpNWZsWFNQeHNqOWxWRzVIMyt6VDhtOWY0YVl3UUFBSUFCSlJFRlVRZEtYSytRMUpvdG9ZKzBmSk4xc1RBSGNDd0VJeklMQTBrN01sVUNMNWpFMjkwcG9UbmN0QW9FNmJKZjJMRWZQNTRyS3JsejVuek41TnpoUDBEMDNsZlRVT2wxSUxoQ0F3STRJMkE3NzE1SnUzMUgrL1p0L2QvaVd1U1RtejduMFJKMTZJQkNvdzVGY0lBQUJDRUFBQW50QkFJSEFYblFqallBQUJDQlFsWUJqb2I1S1V0dUpoczJDUGlycENwSStWYlVHMDJmVzltRThsOVAwNjYzLzM1Sitad09ITi9OL1E5SUhwOGUwdFJJaXd4TUNnYTExQlFWQllGSUNTem94VndvaW1zY1FDSlFTbmVaNkJBSjF1QzdwV1Q2eHBLZElzc2VEdnZTRXRHRm44ZVF1VXM3Nit4MlNyaXJwUzd1b0lHVkNBQUpWQ1B4Q0VtaWZ0U1UzQzhFOUY3eXZTa25qTTJIK0hNOXdiamtnRUpoYmoxQWZDRUFBQWhDQXdBNEpJQkRZSVh5S2hnQUVJREJEQWo0UjlpeEoxeWlvMndNbDNXY0xjVm9McWhSZXVtU0J3QnlGRENIdzRJSm9ZdzJCd0ZqQzNBK0IzUk5ZMm9tNVVtTFJQSVpBb0pUb05OY2pFQmpQZFduUGN2UnNtb2hkZWg4bDZkanhlQWJua092R2UyNnh5UWMzbUJzaGNLQUU3cEE4Q0xRMS94bVM3Q25rK3pOaHcvdzVrNDZvV0EwRUFoVmhraFVFSUFBQkNFQmc2UVFRQ0N5OUI2ay9CQ0FBZ2JvRXJ0KzR0SCs2cEpMM3d4ZFRuTVQzMTYzS29OeE9JZWxKa2k0WjNPMVFBYjUyTTMxQjBuZDY3bjF6NHkzaEZwSytPYWgyNVRlMWVSQkFJRkRPY1pkM09CeUZ4OXVKMWlyeGRVbmYyR1dsZXNvK2pTUUxoZGJUZDFNWWloL05yTTcvUTlJcFoxeFhod2s1N1ViOUhCcWtiNDZaR2VLcTFWblNpYmtoRFkrTTZMc1NDQ3psbWZhNnczUGxwdmVpMnZNbEFvRWhvL3NuNzFuU3N4eUpHZHd5djl1ODZmN004V2hHNS9DTGpXZXUxMHM2UzA5T0w1ZDBMVW5mSGwzYTRXVFFOci9NZFcyemI3Mnl0SFh3MVB4UExjblA4TVZhQ3ZKY2REVkpMNXU2RXBuNU0zOW1nbHJZWlVzWENHeXVhNWMwbDdkOUcvNHdmV2Z2eW52UndvWXYxWVVBQkNBQWdkb0VTamFBYXBkTmZoQ0FBQVFnTUM4Q1o1VDBHa2xIRHFpV04rVnZPNFBURHQ0d2ZKR2t5dzVvUTg0dDI5N2dRU0J3Zks4c3lZUEFtWklIRG04MlhFYVNEYU5kNldPUy9rblNreVY5V05JUGNnWmhwV3RjcjErU2RIVkpWNWIwNnkyYjJadEZlWFA3RmFtK3I5dnlScmZyYTVlcnY1bnFmTzZBZzBVOGRzOXFJNnk5b3BqdmxJWVhyNmtkUS9vNmtxN1h6RU1YM2hDRnJGZlhoaUFMcWh4SDJuWDc1TUk4c0F3ZGdrczZNVGVramJzV0NDenRtVDVkY3BYK1d5bFUwYWFZWnJNUExPQ3pTTytGemNiS1N5VjladUJ6c3cyQndNODBwMFBkUHYvZGw1WmsxRjV2eDVLZVpidndmbE9hbjd2Nll0dHJ1NzR4NFhmSkE1cjE5TDE3TGlvVmlrYmpzYllJeDFWdjJ4UmViOUlVWmE3bjcwMll5Nld3RWc3SjRHK2NyalRsMnFaTnlMaXFoOWQ4RGhWUmUrM1hKZ3FidXN4MXRrdFpCdzk1ejllNDV5cVNYdEloeG4rYnBLTWxIVmVqb0FwNU1IOGUveDd2ZTU5UE1aZU5uVCs3QkplcklYRzdubmVNaFdjV29MMDNZL3prckdHaXRmRWZOOEwwWTNyS01uOS9VOTBvZlFQNlc2c3IvV2RhSS81OTh5Myt6Z25tMWd3a1AzR0p4VUMyQmZqYjhQS1N6aEZrNE8vVUQwaDZzYVRuTmYzd25ncmZydEZZY3BYYzV3NXRVaXRGejR6TG1lSzVxVlYvOG9FQUJDQndjQVFRQ0J4Y2w5TmdDRUFBQXEwRWNneVNmZWk4NFdXRHh5dDN6QmVCd0k0N1lHRHhrZkZnN2dJQlB6OFhsZlNJNXRUUHhRY3k4T2FYalNUMjRESFZxVUIvc1B2RTBoODJtK2ZYN2RuQXptbUNuL25IU1hLSUVXL1VUWlY4VXRVYkpUZXZVRjl2eVArcHBQK29XRmt6ZFVpV2gwZzYzOEI4N2RyYWZXOXhVKzJOZ29GVnFuN2JrazdNRFcxOE5JOU5zUW01dEdmYTliV0F6OC9MUllhQ1R2ZDV6clJSK1c4SzU4eXBCUUkyeGo0cWlTYjdtbWhqckRlQzNqNlN3N1p2WDlxemZFMUp6KytCNUJPN2ZoOCtkOXNnZThxN1lJcFA3bzNlcmhSdHFxemZaMjhFYiszWm5DakpLeGRUTkI5T1VhYnI1clo2eldEUjhycm5wdHg2MTE3YjlKM1U5VnJFYThiYWE2ZzJjZkdxL1ZPVnVaUjFjTzQ0bU9xNkUwdDZTaEt1dEpYeEI1SWVQVlhoQS9KbC9qeCtUbG5hL0RtMVBXUTFsSExXdFVQZkJWNUxXWEQ5Y0VsbkdEQjJ0L0ZkM1ZZdHIzTnRFL043YUtoTllKV3Y3UUdQbGZTWEk5NFRYck5aV0d1UmZWZjZhQkxxZm1vQTU3WmJISzdKWGxDNjNzRis1MWs0NFhKSkVJQUFCQ0F3QXdJSUJHYlFDVlFCQWhDQXdBd0kvRnJ5SHJCdWpMUXEvQTNObnl1MjFPL1Y2VU5qM1JXd3I3WGhmWmVuSHFiK0lNNzVFSzdablErU2RNK05EUDJ4NkEyV2Q5UXNhTWQ1UmNhRE9Rc0VmajU1T09qNzhDN0JhNjhDRG1QaHNWWXIyVmpoMHdzUHpUaTlVRnFtVHpLNnZuYk5YRE1Fd2FtYUU0Z2UvejZwV2pQWjJHbERTWTNrRFU2UHphSENnTTA2K0ptK1NmSjJVS04rYzhwalNTZm1obktMNXJHYTc0OGxQdE1YU041SHhnb0QxdnRueUdiWGxBSUJmMXZmUFRnTjUvcDczclRoMjZmRWxwYVc5Q3k3UC80dUNjeTZPUHVVb2IzbytCVDVYSkxEL1BqMG9BVWtYY2tua1AxZXp3bFpzOFFOcnRLK01MUDdOZUdiN2paUUdMQlpuazl5M2lzSlA4ZDRIem9FZ2NBUzFzR2w0Mm1xNi92RVA1OU8zOWFmbUtyd3dueVpQNDhIdHNUNWMycDd5R29vNWF4cm83VnhtMWpzUXVtN3NzYjNsYityN2RWdmFydUpueGQ3Q1hoOEl3S0t2TndWUG9yL2RibUZRMzRuZlczQXpiWlJ2S29saE5kNlZoYjgzNmZDdDN5T0lPR215WXZlZ0tad0N3UWdBQUVJVEVFQWdjQVVWTWtUQWhDQXdMSUkyS2htTjljK0JidWVucDNjeS8xWlMzTjhDdGNmYjcrOThac05jMysxdytaUC9VR2M4eUZjcy9sZGhzV2FtNXcxNnpzMHI4aDRNRWVCZ05kUS9zQjlZaEJHWUNnVDk3MmZwYkVueWkwbWNRaVFLWXdWNjIyN2Y5clFIMk5JWCtWM2hXUVlPdjFRZUQzMzFYaDJmS3JGL2RNMk40NnRzdm5kV05KektoaHB4dGFsMXYyUmtYbHVKK2FHdGp1YXgycTlQNWIyVEUvNXZNeE5JT0FOVzYrbitrNHUrNFN5eFFFT0w3TzB0TFJuMmU4UVAzY1dwM1Fsdjd1OHNUeTNkSnZrcGFlclhwOXR2SFpkU3RMSE15cSt4QTJ1akdiOStKTHpKdzhRTlRhVE5zdDFXQ1Z2TG4yNXBFSnIxKzZ6UUdBcDYrQ0JYVGZKYlgzajRURk55QW12aDJxS2JjYzBndm56ZUhwTG5EK250b2VzeGxYT3VqWmFHNjhMQkthYVU3enVzdmM4UDJOVFBGOW5UdDZzSEpwaHl2UkZTZGRQaDNwS3lqRlhlMkl3ZzY3a3ZCMld4eUh3eGlSNzc3SFhnNjVrKzZLL2MydllDOGJVazNzaEFBRUlRR0NOQUFJQmhnTUVJQUFCQ0xRdDVPMDl3QjhKZHY5bFY4Q2J5Ujl6amdXOHFVYXU5WEV4dEZkT2tUWkRMeGxrY0VSem10clhiaWE3bytzN2plVTIrN1MwNDV0dkl5RVFPSjd5M0FRQzN2Q3lpdisrRXc4Q0N3VCtaT1JIZEorcjJkclY5M2kxbDRLaHhoZXZTMitXbnVFaHJvRnoyak5XSU9CNXc2RVZmTkovcWpTMUlXdXFlbmZsNnpBUjlqRGpXTGFiYVc0bjVzYXdpWXlnT1liVW5QS1g5RXhQL2J6TVNTQnc5U1FPT0hsUEovclpkaHhkaXdpR3pwTTVZMlNxYTViMkxOdGJoWjg3QzJIYjB2ZlRpYjgzVGdWc1JMN1JmT0tzcjlhRURYcHBSaGxMM09ES2FOWi9YWElsU2Q1dzZBdkhrSnRYMTNYMk11R05uMk1IWkxTdkFvRWxyWU1IZE5za3QvU0ZaMWw5ZDc5bGtwS0haY3I4ZVR5M0pjNmZTeFFJK0J2d0xzbWQvckFSRzk4MTlqdTFyUVEvSnhaOG5qMHV2c29WUTc4Uno1aUVCVWYyMU1JSENtd1g5TnBvU1ByRkpsVEI2OU16MDNZL29RV0dVT1VlQ0VBQUFsc2dnRUJnQzVBcEFnSVFnTUNNQ2ZnajRYV04yN0xOazdxckQ0Uzc5Z2dFdkhuWkZrZHhDY3JnTm9PZFhmNWFFUEd1alA2eVFkSnVhMnNsbnhiMlIvRm1xaUVROElhdFB3b2RxL21ETTkyVWlBemhjeElJNU1hWHJqVTJ4aG96dHJtWmFBT25udzF2Qmc5Sk9hZHZoK1M3ZnM4WWdZQ051ODlJc1NYSDFpTzZmOG1uakRmYjVqQVJmOTNSNENkTCtyMlp6a3RSSDIzK0hzMWpTeFFJakhtbVBWZjZ0TmF0U2tFV1hEOFhnY0JGSmIwOFk1UFNYcFlldHVEeHZyUm4yYWZVbnRvem5qNlFRalpaM0RxM2xITjZ0ODAxYzFzN2xyakJsZE1mMTA3dlpNODFVeWVIVnZNYXBUU00yajRLQkphMkRwNTZiT1RtM3hlZXBkYjZJTGN1T2RjeGZ4NVBhWW56NXhJRkF0djRCcXo5YlpVakRNMTUxb1pjTThRKzRHOWdoeS9xRXVHUFdmUG5lQ2tndE1DUW51WWVDRUFBQWxzZ2dFQmdDNUFwQWdJUWdNQk1DWFNGRmxqM0F0QmwyRm9aSmJzMlJPYitBVEJXSUJERk1DN3Q4cTROY0JzLzI5d1ErL1R5MHpJSzJUUXcvMnVLTC9leWthZlNNNG91dWlUYVdKdUxRQ0EzdnJRYjc0MHJiNDY1Ly81OUxWU0FEYXVPMTNwVUVvVkVydjl0ekxCUjhaVkZSRSs0T0JJSS9GdXFvL1AzWnNtWE5zSWEyTWowYTVMdW1ia3hQdFRJR1owNldMWElYajRla1U0TWZtckQ0NGZqc3A4dXVaTythanJsLzNNYjNJWUtCRW8yTysyZTBhNGNmYkxUcHlWV0o0VlAxbXhXdVoyLzFiZ3J2bU16UHM0UTlPbXVQYklNSEhJL2NWdmZpVGx6OFFsWXowZjdrS0o1Yk9penNjbG1LYyswMzFNV0VVYkpjV0V0WlBNcDdzOXZ6RDkrWnM0a3lSdndOaDc3bmJpK0dUZ0hnY0E1MC94OG5xQ2hRNHk1RWJ0dC9yN0VaL2xSeVdWM0Y2ZC9UTytKT1hwek9ISGEvUGE0NzBxNWE2TWxibkJGWXp0WGxHTTN4aGFpK2MrL3JLMFp2Sjd6Ty9oaXpieHp1OHoxelNNYmdjQ2RDd1UrK3lZUVdPSTZPQnBMMi9qZHozT2JxSDVWOWh4RExURi9IdDg3UzV3L2x5WVFlRzJQeU5MZndUNUk0VDl2Yjc1SHZZbTlTdjdtOCtFT0MxRi9OZk5CL3Fxa28xTmVtYmUwWHBiN0RscmRiRTgwZjkrRTlQVGYvbjVkVDZ0MlhEZUpGbk84NkEwUk8zajkvUGpHTG5Iem5vYS9LSVhCK25ZaG5FdTNlQlpkejJJSkI0Z0ttOHpsRUlBQUJQYUhBQUtCL2VsTFdnSUJDRUNnaEVDZmdXZjlSRklrRU9oU0M4L2RoZGhTQkFKZFFvVGNVMk5kcDFVK2t0enEycjMzSEZLMHNaWnJCSis2TFRtbkc3NlczUFBaaGZRUGdncDVROXV4cU8yeS9sUTkxM3JEK1FwcDg2eTBqVzJiaWQ1ay84dmt5dCtDZ054MElVblBiRFl0K3VMOER0bjB6VGwxWUVPSXd6cllRRjlpdExETHh6dEordjNrWm5xSVFDRFhJUDR4U2JkdWpEczJkRVViVGhabzJTRDh3STBOejgyK0dHcW95ZTNUcWEvck96SDN0bVNrS3oyUk9YV2RoK1lmeldOVENnVG05a3pudURLMWdkUkd5cHpuWmRVbm5qTzlvZmVuYVVOdjF3SUJ4NTMxWEcvRGFGOXluUHNIelV5WVZ6ck9sL1lzVzF4aWdaNUZTRjBwZHkxVnlxclc5UmJtZWR4MHBkdzVaWWtiWEgwTWMwVTVqMDdyQnEvTG9uU0JKQ0t3dStpdU5FU3d1VzhDZ1NXdWc2TyszOGJ2RjB6ZXRkcENZY3d4MUJMejV3bWpZb256cDc5YkhFN3hwQjJEMjZLb2UzZjg1bThzaDFSNWI4YUQ0YzM2THdmZlBOSGEyQjRPSFJweWN4MWxjZGQ5a2dleW5OQ081MDBlbXZyZSthc20yZE9kYlN4RHZ6OXkzMEZ1Zzc5YkhhNHo5M3Zib2JuOGZmaUE0UHZRYlJraWR2QWhCWHZFT1ZkSC8vcjcxVUtGNTJiMC8rb1NDMUo4dlE4L3RLVzUyd1VMbXNxbEVJQUFCUGFUQUFLQi9leFhXZ1VCQ0VBZ0l0Q2xldDdjaUl3RUFpNm42K1R2bkRlMkRrRWc0SGU4M1hyZnZtVXd6TTJ0ZDJROG1JTkFJT2VFdTA4Ri9IYnlHQkE5Zyt1L08rK1hORjRoK2s2Z0R0M0lXQmNJMkVodW81QTN0R3kwR0pKeWpDSjJ3Mjh2SXJreERQdmlXcnVPUTA1SmJMYk5BZ3h2dFBoVXYxbVhwT2hVaFBPeVljUW5XR3dvSzBrMmlyMjR4elg1RUVOTlNmbFRYcnZFRTNOamVFVHpXTzVtWGxTSEpUelRONUQwOUo2R1dLUm1RK0lubzhiMi9PNE5QVys4Mnh1SGpZKzVLZklBbENzaThvbDZiMEJmTVNqWUFqRFhjZWljbTl1dUthOWI0ck44Mm1iVDRSV1NMdHdESnJldnAyVGJsM2N0Rjk5TDNPRHE0dUlUa1BhZzViVldWM0xJc0J0S2VtR0dXRzg5RHd2M3ZHNitSVS9lcGZQNFBna0Vscm9PM3RYenUxN3UvWnF4ZU4rT2l0amJtRGNFSTJIcE50dkIvSGtDN1gyYVAxZXQ2cHVYU2tJdTVvekphRzNzY2IrNUwrRU5iQXRJajgwcFlPMGFpMGdkQ3NtaG5LSlQrQmFPZTMxV21xTE44RlYrOXRwNGZVa2ZMaTBnWFgrMkpGcUwxcGoyQUdqdld0OG9LQ2Z5OEdYUFh2YkVseXRxaVBLYnUyZlJBblJjQ2dFSVFHQS9DU0FRMk05K3BWVVFnQUFFK2dqWWpaazN5VFpQeVhnVHpvcnhGNnpkbkNNUThPVzNiZHdBUDdhbDBMbTYxRjJLUU9BMzB1bEtHK2ZYMDRQVHFhaStmajVyc3dIenBzYWRuVGQwMTlPUUU5NVRQMUdSOFdEWEFvRWNnN1JQd1ZweFg3cEJ2R0lidVNyOGtLVExOU2ZoUDFmWUdhdk54SktUZEZFUjN0aXpXL2d1NDB2cGFhaXVVQnFyZXV6U2VObzFYNjR6ZWxJeTdwWjRObGkvUHpxUjU5am1ucHVINWgvMTUxUy9MKzNFM0ZnTzBUeFd1ckhVVlorNVA5UCt2blRjOXh0MU5HRFg3NkFhQW9IY2tDTlBTQ0s5SllzRDNJMUxmSmFqVFozYW15Qmo1NCsyKzIyZzd4TzA1WHJRaUZnTUZTRDJ0VG1hRDRlV0dXMUUrRVNsNDBLL2VXQ0hSTUtmMHZsclh3UUNTMTRIRHh3SzFXNXptSnpYZFhqZjhnbHNyKzNmVXEyME9obEZjd2J6NXdtY2g4NWx1NWcvVjJYT1NTQ3d5Y0hyUjl1VmNyd0d0REgwR3ZSbXlVdGVuMGhncUhlK0xwdlhlbDM4ald5aDdGQVBCYXU4N0UzQUlnYS85L3BTcWRpaEs4em9laG01ZVZySVlKRkNsM2RCUWd2VW1aUEpCUUlRZ01Da0JCQUlUSXFYekNFQUFRak1qa0NmVWR1bnl1MGVlOTJRblNzUXNFSE5KM1UyM2NNTmNYMjJEV2hUQ0FUK003bXlkUXpscnVRUFBjZWd2UGpHQlYwYjRGMEcxcHdOODY0VG5ITjA2eDBaa25QYU8rVzRpVGJFYTV5R2RmMGpvNE5QeFBsMGZrbHlLQUZ2TUwrcTR1a2tHeGFlbDl6RHQ5WEZCdlFycHpKejZ1cVQvWGFsM0pic2hlRHlLVDU1VGw2MXI0bjZ4S2Rjdk1FL3hnZ1VoVmlZcXdFNVlyMjBFM05SZTZMZm8zbXNsa0JnN3M5MGRQTFFubFk4UDN3bEFqclI3Mk1GQWo2aGRvL0dkYStGZW4xcHJKRjdvdVlQeW5hSnovS3ZKSmZlcCt4bzhXY2JvL2FsSkgxOEVKSHQzQlROS1JZa1drajZ3YUE2MFdiZlVqYTRvdEFsTmJ3TkdlV1JhVVAzOUIxY1M3d2s3WXRBWU1ucjRPMDhyZDJsOUhuVW1hc0FsUG56aFA3Y2wvbHpmWVRPVlNCUTQ1dks3WXkrcTFZc1NyK3JIYmJ1TmNsN1p0Y1RYNnNOcS93ajBacXZHeUoyK0xYVWxyYXdKODd6b3ltOG9jT0JkU1Z6ZGlpRXJuQVZYMHdDS05lUEJBRUlRQUFDTXlhQVFHREduVVBWSUFBQkNFeEFvT3ZrVFZkc3NGeUJnS3ZhWlR5cXRYbGFFOGNVQW9HY2sxeDJTK2ZRQzVmZGFFeHRnVURmQnE3ZFdQbzArWnhTWkFUZnBVQWcyZ3dmRXBPMmkzMTBXdDN1ckcxb3pIWGQ3M0xzZmFMayt0eHhFYmsrdm10eThaaVQzN3JMOU0zcmQzbEtxZS9VbCt0WjAvQVJ1ZTdOOFJxU3czcGIxeXp4eE54WU50RThWa3NnTVBkbk9qS20xK0l3dEwvR0NBVDg3WHgzU1k2WjI1ZHFHNGlIdHJYR2ZVdDlscVBuTVdmTlZvUGZtRHlpTnVTK0g2Tm5jaWtDQWJ1T2RnaUFydVJZejNldUlJYU1OajFLeENYN0lCQlkranA0ekRNNDl0NklYZWtHNWRqNjVONGZ6VDNNbnllUVhNcjh1ZDczY3hRSTFMWVhSWUl5OHlqOXJ1N2o1dnk2N0dtNXoxM1hkWkdYUWQ4M1pDN3h0N3BGeDEzcGdVMll2L3YwdkZNamtVR3VGNEt4ZkxnZkFoQ0FBQVJHRWtBZ01CSWd0ME1BQWhCWUVJRytqNHV1Qlh5SlFNQ2JGamJjK2NUdFpwcWJtOTJsQ0FUc3R1MnRraHd1WUQxNTgrRTNlOXp2ZFJsMlNsMi9iMnQ0UjRhb1hRb0VMcEZPa3AyMEE0YmR5M3ZNMTlxRTd6TStsQmlscCs2Nzg2ZFQvVWYwY0xsbFppWG1LaENJNHFqWE5BcDZUZjUzS2VabUc3WmRuN3JPN01vZlg3YkVFM09sYmR5OFBwckhkcjB4SHJXdjFqTWRiVWJ1bXNNWWdVQVVEc1NNOTBrYzRQWXM5Vm1PbmtjMnVFNllFV3EreTFhNVJ2eEx5L1FwU3ArMnZsakhSSlp6MmpHYUE5ZC9qK3B2d2ZYVE1qTGNCNEVBNitDTWp1NjRwSS9kME5CaHcydVRmMmMwL3BrL2x6Vi9idmI4SEFVQ1U4U3BqMExTbEh4WDI2T00xNjhYNkhtTXB0b1FqMFJycmxLcDJNSDNkSGtBWFRXeFR3Z2ZoWjN4Z1pqckxUQThYdjRzeVpVUWdBQUU5b2dBQW9FOTZreWFBZ0VJUUtDSGdPUFFPejdZZVZxdTZWdkFsd2dFbkhWZk9jN3JvUlZPOXRUbzZLVUlCTG8yV3FJTmxpNTN3THVNNWQ3WGI1RWhhcGNDZ1VlbCtQSnQ5Yzg5dlZjeVp1MHUrTFhwNUgvYmZWZHJET1F2TGNsd29tc2pRMG1Kb2FKUElPRHFXd3p6Z29uYTBaWHR5Wkt4eGJ6YlV1M05DSmZSNTVYaDZ5bUV5M3UyekdGSWNVczlNVGVrcmV2M1JQTllORytQTFgvcy9iV2U2VWdnOE1uazJ0MkN0VjJrb1FLQm5CTmNGdkpjUzlLeHUyallCR1V1K1ZtK2txUlhKRmZEYldpV3NNRVZQVXU1YTVBb245TE4rcHloRnMySHBXVkcvVm1hWDlTR0tGU0t4YUU1SXNoOUVBaXdEbzVHUy92dnRyVmFPSC83anR2djMveTd2OWZtbUtMbmpmbnpoRjZyUGZjNDU5cno1K1lZbTV0QVlLcndoNUVuT0hQSi9jYThpcVNYOUt3cDNpSHBxbzNONEVzVFBkQVhUR0dUdWtJQzVJWWMycXlldzRNNkRHSFhRWWkyRUtUTzQ5cVNudFBCbzZhSHZZbHdraTBFSUFBQkNLd1RRQ0RBZUlBQUJDQ3cvd1Q2WXBkRkMvaFNnWUJwWGwvUzAxcytHR3JGQnEzUlkwc1JDSFJ0MlBTZEp1NzZHSjV6SFBQSUVMSXJnVUMwWVdaRGdVK1VmcWZHb0V4NXVQL2VMT2xjSFhuZUt5UDJkY1hxZEdiVkZTNWpkVVBKWnVpREpOMnpwOUxQVHB2bjM5dEd3MUlaMFdscUczM3ZXTGsrVWN4WGo3WG5WaTV6aXV5V2VtSnVMSXRvSGl0NUpzYldaY2o5dFo3cGFHUE5kWnZpcEZodW00Y0lCSExFQWJYZDQrYTJaOHJybHZ3c1IvM01CdGNKSTJjSkcxeDltOVJETjBhaVorZUprbTdSY2RFYkpWbEFhUEZlWDFxNlFJQjFjRFJLdW4vL2hiU2h0K2tGem5kOE5ZayszemM4KzBudlpQNDhBZTgrQ0t3MkI4dmNCQUpUaGorTXZqRnpRN2oxdllQTWQ4bzJPSDk3Nm54R3NqdDBQZnk1bm0zVzc0KzhFN1NGVW94Q0lrN2xTV0hTU1kvTUlRQUJDQnd5QVFRQ2g5ejd0QjBDRURnRUFuYi81VlBqdCtwb2JHU2tIeUlRNkN2VEJwR2pHNlBhMjNjTWZ5a0NnYTRObXo3RHR0M2RQN2FGcjEyeittVGp0M2ZNdnEzNGFHTnRWd0tCNkRUL2tBL3hDSCswU2JjckZwdjFqZ3dWSlp1aDE1VDAvQURNdGoyUTlKM21kemlKeTZjUUMxRi9sdnkrQ3lOa1NmMXlybDN5aWJtYzl2VmRFODFqSmMvRTJMb011Yi9XTXgyRnkzRGRkcmtXaURZK1BCKzljQTFnbjJlazFXVVdCM2l6MEo1RjlpVXQvVm1PM3Q5TEVBaEVjMHF1WjVsZHZGdWl1cGVJRWlMUlVZbkhvcExuczhibWZvMDhTdXJzYS91OE1wV08rK2c1T3VSMWNOUXZkMGdlQk5xdTgwYWZ2OEZyaFNlTDZsTDZlOVR2cGVPb3RQd2ExMGR6MEtITW4yMHM1eVFRbUVyZ3RXcDM1QTBqNS8wUnZZT21ic09xTFgzZnByNW1xSGo5akpKZUkrbklqZ2R2OC91bGIvd1FXcURHN0VVZUVJQUFCTFpNQUlIQWxvRlRIQVFnQUlFdEV2QWNmM2RKeDNTVStZVGs5ckR2Vk80UWdZQ0w2ek9veitHVTNWSUVBbDF1enJ0aTVuWEZhUDFSMnJ4NDJSYkhYMGxSa1JGblY1dml0NUgwdUk2RzVCcVdTamlzcnUwejd1NTZrOUZqMGw0T0xwVG1GN3NtYkVzbDlldzdaYldldDhmQlhTWjAzN2hlVnQ5SmtZODNycXN2S2VselF6cTM1NTZsaUVQNm1yM2tFM05qdXpPYXgwcWVpYkYxS2JsL2ltZTZMMjc5cW01ZWUvaVVrWi9yYlhvSEtSRUk5SGxnV3JYRG5wanNWdGFlZmZZcExmMVpqcDdIZmRqZ3ltM0QwZ1VDa1VlZnUwcDYyQVFQWDk5Y2tSdmVZZWtDQWRiQnd3WlcxL2VZYzV2N041bnJ5UHg1UXI4dmZmNXNHOEZ6RWdqa2VtTVo5aVFlNzVIdlRjMzMvSms3TXVqenlyaTZKWG9IYld0OUgzbWFlM1VLbWZETkFiQXNqbjJlcEJPMTNPczU2N3JKaTUxRkJLK1RaTzh5bXlueVREcWdXdHdDQVFoQUFBTGJJSUJBWUJ1VUtRTUNFSURBYmdqWUhmV3pPaGI2SDJvK2xvN0tpSk03VkNEZ0Z2ZDlhUGdEeHZVN2JqZG90QlNCZ1BHMGJSWjNHU2E3NHVOTkZkdXZWdmRGaHFoZENRVDYzTXQrUU5KbEpmbGp1SGJxRXdqa0dETEcxc2NiMVhZZmFCSEFoUnVYaHVkcjRpN2F4Zlk1T3VhVHR2SktqQ1hSU2RYMS9MMlIrRUJKajJqRUFsOGIyOUNPKzArUlBCcGNzZVAzS1VKTHVLaElJSkJ6eW1VaUpOblovdi8yemdWNG02U3F6NmVBYk1CeUNRaW94VVZBUkJBd29DVUNMcGZsa2wwUklpNlJsWUFvc3NaRVY1RVYxcXBsVVM3TG5RQUJRU0dvSVdFRkZGeFVBc3NkSWxjaElKQ0ZWUUdCRXVRbVFmQVNLa0lxOCtQcnlmZG1uT25UdDVsMzVuMmZydnBxS2Y0OVBUMVBUL2ZiMCtkM3p0bXl4MXp5UTA1VTlOYXhuRGxSMjVmaDlVdlA2WlM4cjMwZlA5S0Y2WmFCVDE1SFgyMzk0Q1B0cFFvRVpPQ1JsNmQrVjZmS1BpTWh6STFxNjNQWm00OXppdnhhamMydHUyZzFXamV1TXRIZ3NRZ0VKTURSNys1WWtlSGlqSkJEdVJYM3ZwM1lXcEVhU1dqckFvRmozUWZYdmt1eGZPVnIveWJUczdOK25ud0RFQWpVelFidlhacjdHOS96L2svNUhZMzlCb2xPcWVkK0xsa3ZEV0dOZ04yTE9xcDE2eDdCOFdncTlRNnBCWEpIbFBvUWdBQUVWa0lBZ2NCS0JvSnVRQUFDRUdoTUlKWXZOK2RBdTBZZ29OK1lwNXZaejA4OG03elo1V1c0RDVIQWxnUUNZNTdNWXdlaU9rQ1c4bHNwSEliRlN5WFIrUFhMYm03Zmh3ZGpIZmFNeE1ySjl5a3owMzliRjNrNTZFTjlyS1FjWktUMlIwWkRDUUFVTGw5ZUNmcmZPZ2diOHg1SWJiT3ZsMnNNalhra2pOMWIzQlhkNFlsZGp1Qy95TzJjVTk4N2dKRklRVkU4V2hkeGovSFBaZHE2ZjE1N1cvZVk4NTdQKzd1M2ppMHhmbXVhMDFQcGJxWTRmczdNTGdoRytSTHZKMjk4K3IrbkNBUzBQNG1sWjFKYjJrdnBzUFJ0cVRmZVVMMURtTXVlMTZEU0xVbms5NjRWajR2M3JxYXVLVnMzY0NseTBGTWo0NlMxNDhzempLUFdVeG1YcHNvd0hjbFl2UzBMQkk1aEh6ekRhL08xWE9FdkNOKzRZKzNQbmF1OHhUT3hmcDZrdVBYMU0zZGRTbzJPa3ZxZWVYdmpuSFF6cWZmY3JlZXRZeW5wQWJ6Zm9EbFNyWXc5cXlja240b3dtY3J0Qm1ZbUp4N04vN0dpZElEYWw0eWRFNUJhSUpVeTlTQUFBUWlza0FBQ2dSVU9DbDJDQUFRZ1VFbEFScjVMSjBKL3FlbWNYTjQxQWdIZHl3dlBtNUxtb0JMSDZPVmJFZ2hNamNId1lGSVJJV1RVR0g2MEtWckU2VE9FUTI4NUx0N2h3ZHplQldQUDRua2N0SHorbkxacUJRTFg2NFFOQ2huN0UyWjI3WndiWjlaTk5WenNOaHVMZWhLN3ZRdzhGNFgzdjBXb2N1OWdOQk5GcytvbFRKdmRQS0doV0o3UExYak1KVHhpdElxM2pzMDFmbXVkMDU0MzBoUk1pWDh1RGw1S2w0ZHd6TFZqczN1OVozUzlWNGlhTXBXZVNXMXBuWkhBOFpLV0hWdFJXNGN3bHoyampuRHJOMmZOWXhnTDc2NytwMGFWOFZqTVlhRHgxc09jZXo3T3pCNitvdm5SZCtYUUJRS0h1ZytlKzFXS2hTUC9aR2VBVTJxdWo4N2RpY3IydlRXRDlmTWs0SnkxTEhWWVdxNmZZL2NqWWJyWEFBQWdBRWxFUVZSY1U0cUJPZmdObnprV21TOUZFS0hmSC8wT2paVTVvOWlNM2EvMldieDNVR0lIQ1p4eUNxa0ZjbWhSRndJUWdNQUtDU0FRV09HZzBDVUlRQUFDRlFTdWIyYXZOYk1iVDdTUmE1Q3ZGUWlvRzU1bmNHNmZLdkQ4djB1M0pCQzRmekNXREo5N04rZXFEREcvWldiM0dZR3pCVThWN3lCa0h3S0JsTU94RnU5aWJodWxBb0diaGJEOEVwSXNVVXFNb2RxWG50dDU3RDJqTUlxQlBFSVY1dkhKWnZiNWlvZjAzc2VLcHFzdUxXRmFkY09NaTcwMEVWdFloekllZDdTcTk5NjBIcjh0ekdtSkJCV2lXcmxMUzRyU0R6d2lHRUpiaUgvVUIwOGc4TTZRVW1XcXZ4SXduQjM2VlBKTWE3L21VT2F5NTJtbmNialF6QjYvNGdFWml5QzEyOTNVc01iZWZtWU9BNDIzSHViY00yWVEyZWZ3SGJwQXdIdHY5c1crZEIrOFZIOWo2VmtVbVViN0lSa1YxMXhZUDArT2pqY1BjdGF5MURGdnVYNk8zUk9Cd0VrcUtRS0J1WTN5cWUrRjZzM2RGMFdrVklyU2UyWjBpdFFDR2JDb0NnRUlRR0NOQkJBSXJIRlU2Qk1FSUFDQk1nS2VPRUFodytRdGxSUFN2NFZBUUUvamVRWXJWUGlEZzFkZTJkUG5YYlVsZ2NCVTNqc2RhdXR3VzBYZUtLL3JEcnBQR1dENHNKbmRaWVlRN0htMC9kcmVRUWdDZ1pNTWN3OUdGVnJ4Q2VGQTBoK0pkalZxaktFSysvd2JuUWZEalNxNjgvd3VuL2t2bWRrbkN0cnczc2VDSnB0Y1VzTzBTUWNpamR6UXpONXNadGNacVpNU3ZuUHUvaTNSdnZmZXRCcS9yYzFwQ2RnZUVyeXZwbEtuZU9QenBTQVVrTmhBUXFDYTRna0V2TFlmYldiNnQzWURqL2NjVTM4L2xMbXNjdzVGb3JoZkJFU3FCMzRweTVycnJoeEVLRDhRYVNRMXJQSFdEVndJQlBMZXBCaXZuRDJrOTk3azlhcGQ3WnhuYUhmWHRKYTg5Q3huaE8rMXROYjJWNHYxOHlSN2J4NGdFSWkvcDk3ZWVBNSt3eDdWR3RWcnIyODVrMlBpRHQxSGV3WkZFcTBwbm5QUGJ0dWtGcWdoemJVUWdBQUVWa0lBZ2NCS0JvSnVRQUFDRUtna29KemxVdnZLVUR4V2xDdFhodUkvenJ4UEs0R0FmbS9PRHlHRHA3cXdwRWhnRG9IQVg0YVBzczlHR011d283QnR0eDNVaVJuQXB6NnMrMnRpU3U4bFByb3pYNm5SNnQ3aEFRS0JrOWh5RGthOWRTRjM3RDdWZWM1KzBNemVFLzc5VEdUTnFUV0c2cjJXbDlWak84TmlxVkZSbnI3eXNKU1FKaWVudWZjKzVuSnJWYitXYWF0K2pMVVQ4NWg3c1prOW9EUHdmbVhPRHF5Z2JlKzlhVEYrVzU3VDF6VXplVVNmVlRGV3lqV3VkVUg3blZJRGZhMUFRUHVwTTd2ZmUwVWFPTVJ5U0hQWnl4djg4UzdxMW1sbXByRGZheXVhTCsrWUVGMnByMXBQNzJ4bWIwbm8rTllOWEFnRUVnWjVwd29DZ1R4ZUxXdC9meGVCNXBXZGlHenNuSFZycVpaWVAwKzhHVnRmUDhmZWJ5SUluS1N5dFFnQ25rQWdKYkpOeXBybjNVZHQvTytReHZMdEtRMVNCd0lRZ0FBRTFrc0FnY0I2eDRhZVFRQUNFRWdsOEExbTl0SndVRGgyVFUwNDNGWUNBZlVySlIreHZJWjErRi9ySWVpeG0wTWc0TjB6OXZlWUFYd3FIM3B2YkxwZHlMMStoY0VOdGhJOVFOMzJER3NJQkU0T2JxcEFRRjVNOG82OGE4YUxxYlhpejgzc2JWMjZpZytZbWZKL3Z6K0U2Ly9ia1haaWg5QXRqS0c2NVRVNlErQWpRK3FCNFR1ZSttZ0tVLzZ2emV4ZGlSZDQ3Mk5pTTgycnRXTGF1bU9leDV5OFdWN1YrcVlyYk05N2Iyckg3eERtdEw0OXY3TTdjSC91aUZBdVowaGZZbWIvcm9zOHBPZ1V1Y1VUQ0R5MWk3cHpUcGVTNVdxUmhnOVZKSEJvYy9sdVp2YWFDV09kaG5mcDNNRTU3NnJYZC8xV2Y1K1pmU2FoMGEwYnVCQUlKQXp5VGhVRUFubThXdFcrVWhDQjMzZWl3YTJsV3ZMV0lOYlBFd005aHhqZjIwL1czdk9ZQkFLYWx4SXFLNXJsV05tYVFPRGhJU0pYNmJPa3JIZEtNWEtKbWFXa0pWVEV2cDlhTUFwb1N2K3BBd0VJUUFBQ21RUVFDR1FDb3pvRUlBQ0JsUkh3eEFIcXJqNENuMUxvYmRkU0lLQytwQmc0SkhiNHljeFVDTG5Ec2lXQndEY0ZnNjJFQXJ0Rm50ektEL2VmekV3aDJZZGxTd2RSM2tISUdnVUNmeHE4MjcrYysvSlYxcGNuL0pzY0VVMktHS2Z2eG52TjdGa2hIS0VpQk9SNDVTNGhFT2o3ZWRWZ0VIeVltVjJyZ0tIeWwrdlFWZ2NlWHZIZVI0WFNseWYwMHVXdmdyZm8yanp4RDhsanJtWk12ZmVtUmlCd2lIUDZKcDMza1E0NkZTYTlSUHdqRWRNOXpFeGU0RG5GRXdqSSswcnBlaFNsSU5ZdkdXajFHeXdoMWFHVVE1dkxTbm55MW02ZnBCUmNVMld0T2NIMUc2TjkzRlRKU1k5d3lBSUIvUjQrb290U0l5SGcwa1ZlazE3MGlaZ2hMbFh3bWZ0Y1N3a0UxcndQem1YV292NHRRcXFsTVhHWjNoTkYrZnRvaXhzdDFBYnI1d25RVzE4L3gxNlhZeElJeU5pdE1QaGpaeVZpazdJT3J5bkZ3Tng5U1luNnVmdE82ZHhBSXZ6ZlhtaGQ0allRZ0FBRUlEQURBUVFDTTBDbFNRaEFBQUlMRVVnSk5hekQ5eWQzdWJpL1d0aW4xZ0lCZFVNSHRhODFzeHRIK2lRRDNObWRRZkRUaGYzMkx0dVNRR0RxdzFac25oZnlyQStmVjRZVHBaU0lwVHZ3R0MzNWQ4K3d0ZytCd0pRd28rZFNZK3libTYwVS8vTFlqaG0zNUUzL3dKQXlvTFEvU3dvRStqNWVzUk16M0NhODl6Sm01WlJVcjk5YmhrUGVVeWNhMzhmN21QT2NTOVk5TkkrNUduYmVPbGF6Wmh6eW5GYnFuZnNFSTkrTk1nZmc5Y0VyN0lzWjE2VUlCSFNZN0tWRjBpMC9GRHlzY2tVS0dkMWRyT29oem1YUGMxQncveVNFeUUzeHhGOXFNTFQva0JEd3BwRWJLb0tHSW5Ha2xLMGJ1SDQ5UlBVWWU5WVU3ODhVUm5QVjJiSkFZTXY3NExuR005YnVvMExFcTdFNmF4VWl4WjZIOWZNRW5hMnZuMk5qZkV3Q2dXdDJVVGExLzc3WnhNdWVFbzBuOWh1MGRDU04yTGUzb21yZHZsSzQrcjFtOW1vbml0WVFwUmdxWXVISDlySHdjazhJUUFBQ0VLZ25nRUNnbmlFdFFBQUNFTmdIZ1JSeGdJekg1MWFHL0pwRElDQmVLUjhmT3JTOWQrVkh6dFRZYkVrZ29HZVkraGpVUituWWIvbFBtOWx6OXZGaUZ0N1RNNnp0d3lEcmVSeWtIQ2dVNHFpNjdDckI4MVdlclZPbFZTcVBmUWdFZHA5SjZRY1VDdnhDTTFPRWdaU1NJcDd4RGdObGxMeFhaMEJVTklkakw0Zm1NVmN6bnQ0NlZpb1FPSlk1cmQreTd3amhlaCtRTVJEUDZDSU9uWmNSL1NSRklQRHk4TnVhSWhJb2pXU1E4WWlMVkQzVXVmeHZFL1pEYTlzektkck5peUtqbm1zRThIN1RIaDkrUjF1K2FONTZtQk1pMjh1RnJEUTJsN2JzZk1PMlluMlgwUGUwa05xcDRTMG52eGwwanhSdjJiNHZXOTBIdDJTWjJsWk0xTFBsUE4yc243NUFZTzNyNTlnN2ZFd0NBZTByMzlKRmZsUFV6YkdTc2pmM2ZvTVVDZXUzVWhlTGlucmVtcHl6dm85MVE1RSt0ZjlWdEpPeE1uWHVwTHFrR3FnWVdDNkZBQVFnc0c4Q0NBVDJQUUxjSHdJUWdFQStnZXVhMmN1NmNHbmZFN20weEtzdTV3TXk1MkJ2cXBzS0Rhd1F2bDhYZVE2RjFQNFJNM3REUHFib0ZYTUpCQlNpUFJiK1d4N2RPcWdkZW5aN0J2Qll2cm5oZzhvei9PNGhiM3hqYkxNMTV4MGtlM3ptNkpqbk9aTjdRRDlISDhmYWpCbDVWTC9WKzNIbExwZTRRaHpyWUg2c3BCeTR0R0lpQTZyU2tqdzJVU2pncGQrNGVzaGJQYlhHS3IySFFsVnFmVHIyY21nZWN6WGo2YTFqcFhQaUdPZTA5amtYaFNnbjNwZ29Nb2dPTXkvektvYS9wd29FVkQwMXRjUGNVWThTSDYycTJxSE81UnVHaURBS2x6MVZXdjB1VmcxQXVGaS9aOXJqbnhscFRQbVVKYUpKVFRmakNRVG0yR05wSC9yS3lEUGtmRWZjMzh3dWpyU1ZFMDJoeFJqbHRMR2tJVTc5VWtTVzN3L2VuR1A5ekRFZ2JYVWZuRE0rcmVyR1JEM3l4ajNMU1EzV3FoK3QyMkg5OUFVQ2ExOC94OTZKSmRjbGIyK2M4MXRROG41N3YwVXA0eWVIRlgzelRwVTVSQ0pqOS9LaXV0UUkyR1ViZWt5STVqVjJiMzNES0sybC9vM1prVWcxVVBKMmNnMEVJQUNCbFJCQUlMQ1NnYUFiRUlBQUJCSUpmRnM0Y0l1RjUvL3Y0U0RpRTRsdHhxck5GVUdnditlL1NzanorMy9NN0JkQ252VFNWQW5EWjV4RElKQnk2RGFsL1BZK1RyMFAwLzc1OUhIMnc0bDUxaHU4SHMyYThBNFBQRDdOT2pKbzZIRWhSL1pZKzB1SEZFeDlScy9icDVXWGcrZkZVR29NVFgzT3NYcnlEbEhrRElVcmo1VS9Dc2FYcWJEa0hJcW5qY0toZXN5bFBmMC9ydVd0WTZWejRwam45SzJESjdXWGV1RFIzWERJd0oxU2NnUUNhazhlVlRvWVZ2alVXR2tsekV4NWh0WjFEbmt1Njd6alYwSkVyUmkzaDVuWlUxdURMV2hQKzcyWFRoekFxem50UFNUTVV4cWgxT0lKQkY1b1p0b2JxTzFXeFRQcTV4aUZGREw1alowSVVML05ZMFhqKytCV0hXL2NUc3dROTcrQzJGQUNsVmJGRXppbWZLdnM5bVdMKytCV0xGUGI4VVE5eXM4dFVjOFdDK3VuTHhCWSsvbzU5dDZ0U1NDZ3FIWVNlYzlWWW11WTd2blFUbHorTk9mbTJvdHFENis1UGxaSzkvZTV6K3oxbythM01KYktUR2R4U3V2MzlzNUJTU200SkpJZks2UWF5QjFSNmtNQUFoQllDUUVFQWlzWkNMb0JBUWhBSUlIQXJjenNEOHpzZXBHNnJmUGh6aTBRME8vUTJXYW1qK3RZdm5ROXNrS1gvV3lqc043N0Vnakk2MXJleTBPQmh3eVcra0NlS3Q0SFlYK2RQdHJFVTRlT1d5cWVZVzFmQWdIdmdIc3BqNEdjc1l6bFNXd1o5VUFldnU4d3N5bXZ6S1VPUzRac1VqeCsveVo0SEw4dkF0WTdVR29sdE1nWjI3WFZQVlNQdVZMTzNqcFdPaWVPZlU1ZnZ3dkQvZHFSMzgzZGNjcnhtc29WQ09nK0VoL0phSHRuNStXUTBWYnpZa3A4VlBwdXpYM2RvYy9sMjVuWm04enNsQWhJUllRNXZST1lLV1hFdnNvM2hvaFpONDkwd0JPNGpWM3FHWTFMMTZZWXAyZUcvZTVVblJ5QndMZWEyVnM3QWFEU3E0MFZDYVBQTUxNdjdHdmdJdmYxOXBFL0dFSTZ0K3E2RjA0N1Z5RGc5WCtOKytCV0xGUGJpYTB2U3BlbmRlVXpxWTJ0c0I3cnA5bHJJcEViMTc1K2pyMVNheElJek1HdmYyWlB6SzRvUE5yWEtRVkJySGllK3kyL3IyUDltRXN3ckc5NjdiTnZPbkZ6blZFcFVvOTR4WVFFdXB4VUF5dGN4T2tTQkNBQUFZOEFBZ0dQRUgrSEFBUWdzQTRDZHpPemw1aloxU0xka1RoQVhrVWZidGpsdVFVQzZxcCtpMzQ4R01nOWtZQU9XcFJ5NFAyVno1Z3JFT2h6STM4NTVBcVZVVlFISnJ0RitjaDFBRDJIY2Q0enhxb2ZmOThkTE4vUnpONWR5V1lmbDN1R3RYMEpCRzRaUWhPZk9nR2w1S0IrVHI1ZTJQK1doK2hhazNSZ05yV1huUFBBeDJPWVltVHhEdVc5a0pTNUlaNjlQbS90NzRmc01WYzZGdDQ2VmpJbm1OTW5Sc003a013eGVwVUlCTlNIRktHQzZ1a2dWVUxBT2ZZQ3BlOW03THBqbU1zU2ppay9zQmRkWnA5UklGTEViUnJIRW05a3owanl5UzRpd1cwN0w4NFdrY2ZVUjBYZFVGajEyMFJldkJ5QmdCYzJmODA1M3IzMTVzSk91Q0lqZTZzU0Uvdm9IamxycGVwdmJSL2NpbU5xTzU2SGZVNTBtOVI3TGwyUDlUUHVOYjMyOVhQc2ZWbVRRR0JPNDdvbmJ2bDRaeGcvemN3MGhySGlSWmJUdFY3NnV0cDU2KzNWU2pucTJSUjVRQUtBc2FMMG1UcGY2czhYVlYvUitzNlpxRStxZ2RxUjVub0lRQUFDZXlDQVFHQVAwTGtsQkNBQWdRd0NXcWNWTWw0SG0vcEFueXAvWVdZeWVMMDNvKzJVcWtzSUJOU1BISkhBUDVpWlFzRSsyOHhLVXc2a0NnUVVyVUY1WGgvUzNlOWFJUVNyeG1McElnTzFjcmtxek9wVWVVYm50WGhlNHhDeFN6Mm5aMWpibDBEQTg3cnJRKzVKZGIrRzRoa0JTZ3lVWTgvbEhZanFtbGIzS3VWYUd3SEE4MWhjZzdkcEtac1cxeDI2eDF3SkkyOGRLNWtUek9rVEkrR3R4WjhPaDd3S2Irb1Z6MkFYRXc5OWJ6Qjh4c1NhdXYvelFraDc3VmZXWG81bExudnpzeCtuZll5ZGZsUFA3OElYUDhsNVdVcldFRFdwOWk4MnMvdE50Tjg2WlpKbmxGRTNjZ1FDcXUvOXBxOTFEK3hGQU5QZVh1bldKRUN1TFRMY3ZDQkVNWmxxSzFjZzRLMjlhOXNIMXpMTXZmNkdRVWc4RmszcnIwTzBxc3R5RzExaGZkYlBiYStmdzFkcVRRSUI5VzBPNDNyS3Q2cTgzUitVZUhiaWlhOFVmZWd1WnZiWm1lYXY5N3RhK2x2aXBmdjg2U0FJMkgwc3BUejlRenVSZm1Pc2tHcGdwcGVBWmlFQUFRak1SUUNCd0Z4a2FSY0NFSUJBUFlFcmhyeG8zb0doREZYeWRwVjNjT3V5bEVCQS9jNUpONkQ2U3Jkd2JxSEhVMHdnOExFZ3l0Qmg3VER2Y2U2QlpzdnhpSVdaVm1RRmVWaDYzbC82Y05VaHBEemZTOFVWTForcGI4czdlTnFYUUVEOVUxN3JSMFllV3BFOUZJSjFEWWFncFl5SnNRUFJIbFdwSWFQVisrVVpBYjJja3lrSDdZODFzMTlPUEZocTlWeHJhTWM3ZERzRWo3a1N6dDQ2VmpJbm1OTW5SK0kvZHhGOGZteGlZRkxTaHZTWGVtdURGMTNrKzh6c0ZVNUVKOTFMK2V3dldNbHZ3OVQ3ZkV4eldjLzZtQzVFN2lNU0pyZjJpRTlaY0czM0R1alZaWG5KSzNMUG14UDZQMWJsNGNISVBuVjVxMUR4bm5kaGYvL2MvYlJuSEJsNk9SWmlhbjZaRndFc1I5emtkYzc3RGRMMXVRS0JyZTJEUFVhdC82N1VkL0srSFN1SEZHbUs5Zk9FU0dtcjYrZXczekdCUUdyWS9kUzVsTEl1eVR0ZFp4UnllR2xWYmhGK0w2Y0VuUkxHS2ZLbVVrT2xsSlJ2WHptd2FPL1h1cVQ4cnBaRUYvSWlZOFcrV3hSeDROY2lEMHFxZ2RadkFlMUJBQUlRbUpFQUFvRVo0ZEkwQkNBQWdRb0NDaU9tRDFGNWhNZUt2QlBPN0Q1dzNybFRTV3BlNVFiL2xvcjdMM1hwMkFIaHZic2NhRHBVaVVWTTZQdjNwUkFTN1hjeURkNWpIOGI2VVB5Y21TazgrVlRSSWRDRGw0SXp1RS9NZTBwUkR1UWQ1cFgrdVJYNitEOTJ5dS9uZGg1bGY1Ykp6cnRIeWQrOXc0TjlDZ1M4UStrMWhkTHpqSWt0d21CcTcvajBMdGZ2enpzRFhXSU1MWGwzcHE2cE5RS3FYYzliUkdrOWRLQWx3YzB4bFdQeG1Nc2RVMjhkSzVrVHpPbVRveEFUQ09RWXZWcXNEU2tHWGZWOGFVTno3anQ3YkhQNUdsM1krMHM3Z1llOHVyMGlvWlAyWFhPSy8zS2laOVVLMHJTMy90M0lRN2ZLbGE2MEFtOHdzNjl6QU9jS0JGTFNGcXpSSUpFU0FheUY5NnkrbWJTdmY2RERQV2V0N0p2YTBqN1ltOWN0L3g1N0ozT05qeTM3TlZkYnJKL1RaTmUrZmc1N0xtRjc3TnhBZTV4TEdyMUkzdDY0djAzTEtEQXBhVEZ5MHdTbWZQK09uY3Uxd09pbDJTcUpYdUQ5Wm5paVJLMS9MdzlSVXNhZWNVM25JeTNHZ0RZZ0FBRUlIRFFCQkFJSFBidzhIQVFnc0ZFQzMyQm1Mekt6TTV6K1QwVU8yTHBBUUk4dEx5bDVabnRoZkZWWGF1Mm5aWHA2eFpUek1leHpHYW9WTGVJR0lZWEFlN3B3by85ajBJbFlXT08zQkFXOFBDaTlNdVpCOW5kZGFvb2Y2dTc5T3UvaUdmL3VIUjdNeFQzbGtTVFdrUURsbnBIS2N4MEk2SmI2Z0ZmZVpPWHovYnpUWVM5SFlvc0R5MVREV0k0eFZIbldXNFRYM2NVVDg1Wk05WTZSV0VpR2pwdEh1SDhvUk85UUhzdldSWG1YeitweUFMK3NDeit0ZWJxV2Npd2VjN204dlhVc1owNzA5OTdpbk5idjJSVWFHMVk5STVzaUtHblA5SVdFUVdzaEVFZ05DYS91ckZra2NJeHpPVFZOaE1aT0JwSi8wd2xEbGR1M2RkSDYvdVF1SFBIUEpEVDgraENHL29zSmRhZXFmRWUzdDlaK1VkOFlVeVhYYUQ5c3h6TVk3Tll2dVpmbnNUajNmTHRUOTgzeHQyYjI3c3h4ZUdZSW9UMTFXUXZ2MlI4SjM0N2UrVjZKUUdCTCsrRE1vYW1xL3YwaC9kc1k4MXpqWTFWSEZyeVk5WE83NitkdXo3MTlVS3VJTXJxbnR6ZnUrNlYwSldjN1FyYVVWejExZnpZV090OXJYOStEYnpLemEwWXF0djR1OUx6ODFaVlVSNUhkYnY5b1NFa3o5U2dwZ2cxUHVFQ3FBZStONHU4UWdBQUVWa0xBKzRCWVNUZnBCZ1FnQUlHaklYRHRjTmh3UytlSlkya0ZEa0Vnb01lL1ZVZ2pjTDBJaTl5RGR4MWV5b2lna1BFeG85L1VMVXNNUE1PMlpQQ1ZHRUJoaXU5b1pqcHczRTFsTUF4djdCMjQ1b1FuSGZQQWJKMTd0bVN5ZW9jSCt4UUk2SG04RDJEVjBVZXdSQVNYbHdDWXVPWm0zYnNpajdodjZrSWczdGJNRkVMWEsxNmVYb1VuMXNGUWlhRWg1MkF3WjY0b1JPRkhRNWhXUmJlb0xaNlhrNHo1cDNXR0gwVlU4RXFLUVVKTWRhaWx1ZGlpYUg5KzUrQU5xTFFoZXE5a2xGaERpWG0wdHhDZ3JPRVpTL3ZncldNNWMySzNEMXViMDlxRGFNMStRdmY3OXNaTThkNFUrenNFRWRzcEV4Vnk4c2g2QitOZWlvRytDL290djlCSlFhTzZPdlEreDh6MCs2czVzcFp5ekhNNVZlaW1zU3FOVkRVMXpoTFFLUEtNZnZlR2FhekdybWxsYkpDUlYySXpSUjJiS2pWaVJ3a2VubU5tTWpxa2xCS0JRSXBvYjQ3NWR0VVFUVUtDbXRUMVlaZEJ6SkRjMTN0ZVNKdFdFckVpUjFSZEloQlFIN2UwRDA1NS8ycnJhSi8ybTVHSURTMmlRdFQyY2E3cldUL0h5YTU5L2R6dHRhTG9hRStxMzRXeDBsTGc0dTJOZCsrdnlHejZubElhcDVLU0dwWG5YU0U5cHllOEgvWWhOZFdHUktzUzl5dHRaVTFSaWhyOWJuOVBwSkhYbXBraUJPVjhKM3BDaDFUUldrcnFnelZHOXFrWkU2NkZBQVFnY0pBRUVBZ2M1TER5VUJDQXdJWUphRjNXNGJVaUNFeUY1MVIrTmgxUXZYZmlPUTlGSUtESGkzMFlwWW9EWkN5VWg3d01mYkVQTE8rMWtZZTk4c3JKa3p2MWtGOEg4QklEOUVLQTIzZEdQNGxBWW1YMzhGRUdpR2NIRDdiWU5mY0tZZ3J2R2NZRUF2b1lWLzl5UGFLOGUrWDgzVHM4MkxkQXdBdkQxeityV01vUTlOc1o3OGdZSjgxaDViYlhPNnVTYzZDcjkrZjNIZmk1QjlFcDY5THdsam5HMFA2OS9JaVpQYlNicC8rMUl1MkZqQysvYUdieWZwa3FPWGxoUFlGT2Z3K3R5L0xnMEhQWGxKc0VyMUtObzBvT3g1cjdwbDRiQ3pYYzhrQXh0VDlycXVldFk2Vmp1YlU1dmJzSCtZTXdILyswWXFEazhmelNJSnFaYWlZbjkyb3JnWUQ2a3ZvYjNjb3pyZ0xqUDdyMG1PZHlxb2ZoTGpTRmtMNGdHQzVLakxpS2xLTjh4eEw4M0RSeElHc01UbU8zaUVXTTJQMHRpMzFqakxXck9hcDloWXdVcWFWRUlLQzJVejNsZnpXc1BUWFJkMlE4MDlxaXRFb1NDYWlVQ0FRazhwVFhxVGZ1K3NiUU81YjZmcFhzelhMMms3dGp1YVY5Y09vN1dGTXZscDVGNGxPSjJpUjhQY1RDK2prOXF0NFp6YjdYei83K09sOVJPc3JyUkY3UUVxLzBzZWE4dmZId0d1MlhmcUh6MG45VzVyZWcxdXZ6elV6cGdXSkY3U3M2bS9hbkpjVVRvZmR0eXBubmZrSGNtbnB1MUYvYkM4VmxYSTg1eXBUc0VYUTJwZWhJRW4xTmxaeXgvN1pPOVBpSFhkcEs3ZjNIQ3FrR1N0NHlyb0VBQkNDd01BRUVBZ3NENTNZUWdBQUVFZ25vNEZZZkxzTVFadklrMGdHamxMMVQ1WkFFQW5wR2VTWHBJM0UzcjZiQ2h5czA2MWNuSU9oalNvZDZEK3JFRmpLNGxSWVpMSjhTakJNeGxia096c1JkSDhFYU94bmNieEg2bm52djNjUEhGTzlsdFovaVBhbkRhZVdmMWZ1elcwb1BDM09mSzFZLzkvQ2c1YjNWVm9vQUlTWEVYOTh2ZVNZOEpPU21uM3BIaDgrZ2QwaGU0K2QxaHpieU5pc2RvOVNEYUlVczFweVNoM3FzNkJCVWg5WTZUTmt0aXBpZ3RCWlQwVTV5aktGRDRjcm56T3pmZDRjaXY1R1FWbUczVHpyd1VpamZZVjkzNjNnNUZjZFk1RVJPMExxdEEzNUZra2c5RU5JYXAzbXBnNjFoYnV3Y2pxM254YkE5ZlRmOFN2QnlITHRYcWNGbjduNHYxYjYzanBXTzVkYm05TmdlUkd2aVJWMGtsRmRsR3IvNlNCb3hUK3RjVDdDV0FnRzlXeElSNmJmMXJzNkxKcVBmZlJ2bTlhMTVyNW5MSjhRZEtSRWdocHhsWEpCZzlJVmRSS3EzaGNnK1E4ODk4WlhSWE8vdDZTRTlnQVNxU3IyUldrb08vcjIyWTBiTjNXdjFya3FrcVBVK1ptQVhRM2w3eWhqZkc5RDdkaVJVVk1TdUtRL1YwdCtMVkZHTytxSG9EekkwU1JTWUtoVFEyTjA0cEg3NHFaSCtsd2dFMUpkSEpVUWJVVDJ0Wno4WlVvM0Y5aEJUZXpOOUp5b2x4bTBtWG9hYVBmOVc5c0hlUEdqeDk1allKdVdickVVZjl0bkdGdGJQZTRRMXVoV25RMWcvZXhaVFp3TEQzd0dkUStnYmJleGJWbXU3b3JFcGRVMHNUWnkzTjU0YW45UnZhUW5ERldsTjM2b3BVWGx5UmZLMTM0VVNZa2o4TGhHMWR5YWczeCtsQTFJRXJsNG9IbnQvY3d6NWFpZEYzQ09Sdm43WGN5TDZlZWRWcEJwb3RRclJEZ1FnQUlHWkNDQVFtQWtzelVJQUFoQm9RRUFmQ05xa2YydG9TK0hLWlBqeURIcjZZTk9CcEl4T3RVWDNrL3A1V0hRd3FwQm50ZVVEaVNIWjlmR253eGdaRFpVVGJjckRSb2Q1U2gvZ2VlbkgrcTBQSW9WKzFjR29RcEh2SHRDcEh3cHgrcDNobzFnZnh2Kzg4L0svVmkySW5ldjdROU1jbzJTS3Q4cFVPT0djM00wTkgvUC9hNnIwOEtCVmYxSUVBcnBYVGxoTjFkY2h1d3pHbDNiZTVSS2I3SHJSeWdOQklwTHZEc0tBV0hTTDNBUGQxSU5vOVZHR0RoMmU2K0NpRjhGSVlLTTFSQ0licGZvWWx0NGJWb2NYUHpZeENEbkcwTEhJRm4yem1vT0syaUh2aFBlTkNBWWtBTkpjVVNqSGxBZ2hDb0dzMEs5ZnlYaDVVZzVVaHMzSnVDTURpVUkvNnNCZVhrVjlFVjhaSUpSbVJFYkZtSWdwaDJQR0l4VlZqUjJPNm5ubE1YZFpVY3VIY1pHM2p0V001WmJtZEV5a3FMVkR2emtTQ3VpLzd6Y3ppWGI2b2hRQ1doTzEvdnh3d205NWlTZFlhNEdBK3A0U0JsYjFORSswVm1uZDNXZGhMcCtncnoyZER1NmZ0TS9CR0xsM2lSZHE2aU1vK3RZVEV5dHJmbW5kVWdTUHorNWNJMUhNM1lNQlE0YkNZVkhhSFhseGF2OHpGUTJ0VkNDZ2UrVVlxdnUrYWIxNVNmam0yRjEzdE9ab0g2OXZMdjBtUzZ3MzlreDlPNlVDQWYzdXY4SE01RzJaVXY0eWNILzdZTC95WFdFdk9yWnY2RDAxOVF4VGU3UGMvZVN3cjF2WkI2Y3dMcTJqOTEvNzBqRVJ4akdsV21MOWpMOUJhMTAvKzE2blJKUlJYWDIvS2pMZUg0Y0wvMm53UHBjUitaMEphZEM4dmJIT1hDUUduWXF3b24zVEs4UDZ1WnNlVCtjeEVxRjVhL2J1S0VrY3J6V3NKTTFlaTdWUXp5RmhvUXptdTZWL0ZxV0xTVDIvUzQya3VYc2Y3MnlwTktwa1NyUTlVZzJVL3VKd0hRUWdBSUVGQ0NBUVdBQXl0NEFBQkNCUVFVQUhTYjhYRHVaMFdDNnZrQ1hMMUVGaXpjRmVUZjkxd0tZODMxUGhOKy9mSGI1ZFhIQURmY1RMWUtIUXI3c0tieDM2NndOYWhrY1pMYTVlMEhiT0pYcXVCd2VEc2d5TE1pS21GaS9Fc3FKUjZLQlhlZTEzaXo1VzliRWNVLytuOXFHMG5uZDRVTnB1Nm5XcEFvSFUzSWFwOTAydGwzdWdtNUtuTi9YZVkvVjZJN3M4L09jV0NOVDBjM2h0emNGUXFiZFViZjlyak1xMTl4NWVIenRNekVuYjBMcGZhMm5QVzhkcXhuSkxjM3JKS0VZbEI2UnpDQVQwRHFZYUxlZndETStkQTh6bGs4Ukt3clRuOHM2cHI5K3BIdzE3M1p6clV1dW1IT1NudGpWV3IzKy81U2twWWQ4Y0FnSGRkeWlpcnVsenpyV2xBZ0hkSXpVOVFrNS9kdXYybnJHL1BxTkFZQ3Y3NEZLR0tkY3B5cGUrbmNiT1VvOHQxUkxyWjhvYmsxNW5xZlZUUFVxTmlCRHJmY3ErMXRzYjYwenBqVUYwYzdWMFZOazFKZFpXV0gwSnoxc1V2ZnNTU2NocEppYzZVSXQ3NTZhajBUMVRmdnNmRzZJSHBVYkEyMzBXc2RWWjJoUUxVZzIwR0huYWdBQUVJREFUQVFRQ000R2xXUWhBQUFJTkNad2F2RWR5UW4yMXV2M2FCQUxlYzNrZm9jUHI1ZEV0VHlwNUZZMkZIMDBON2V6MWErenZYd2lIcDFLU0t6ZnBud1h2UWk5Y3NVUWlDbDA3TFBKbVVjU0hxZmRreW1nakk2L0NtZTZ6NUk1YjY3Nm1DZ1IwMzMwY2p1WUtCTlJQejB1Z2xLRUVPQW9scVBrUzgveFBPVFRxK3hCcnA3U2Z3K3RTSTdERTdyY1BrVUFPeDFhc3h0ckJZODZuNjYxanRXTzVsVG05bEVDZzVJQlVvemlYUUNCbjNmTWFSWVlBQUJHelNVUkJWRlZ1V25sZ2ExMWF1akNYeDRuZklCejBLMDNVUHN0N2d5RlplOEs1eWx4clNSOWRTQ2szdlBXd2hkQjRIeUtCR29GQVRucUUzTEhmRlVERzlsUWwrOGxoWDdheUQ4NWxtRkwvU2wwWTh4ZUVkREZqOVJXaFNtbnhqcTNzZS8yVXdGNHBZLzVEUmhxajBqRTZsUFZUejY4SU9vck9XRnBTOXJXcHZ3VzUwVWx5K3R6aUczRHFma3BsOFRzUk1WeE9QNzI2K28xVjJoeXRNVjY2Z3QyMnRHWS9wanRQZkVUa0JvcnFlWmRCdENDdlA3dC8xOW9vQjRKekloZVJhaUNIS0hVaEFBRUlMRWdBZ2NDQ3NMa1ZCQ0FBZ1EwUzJKcEFZTXBMZmhlOTFQbS9HUTRSZHNOK2p3MlBsNmMzZFVnVktsUWlBSVVYbFhmSmh5Yzg5blZ3TDg4ZlJZc1lLd3JicWdnRFNqMXhuVUVGTDdmNjFBZDZpMFBhVkE1VDliekRnOXIydmV0ekJBSjlXM2NLaDRTS2FqRm5VV2hIcGM2UWQwV3Vvci8xb2NXdU9FRFB2QldCZ1BJai8ySkdEdUxZZUdwTmtCZWdoRFZUbnBHdDNnZmwzM3hnNTZIeXdWWU5WclNEeDV3UHoxdkhVZzVTdmJ0c1lVN1BMUkJRQ0ZRZFFDcmtiZTZhS0w1ekNnVFVmdW9ZeVp0Tm9YRzFIMWl5TUplbmFTdGt0andDbGNxcVplcW8zUEdWc1N1Vyt6bTN2Ykg2aW95bDlFZmFON2NvbXBkaTk0clFtTGNldHRwN2ZyT1pQVGN4WDNQTmMycE1aRnhSK3JFYXdiWkVBczhNNDF2VG45MXJsUUpDUXQ4K2JQYmNBb0V0N1lOYk1lN2JVV293Zll1TmVUcW5wSHRyM1o4MXRiZXY5Vk1wRC9WdDdLVmdiTW5xVU5iUFd0RlN5cjQyOWJkQTMxY1BDT2Nnc1RRdnVlTW9KeEQ5bnM0WmhYTUpnWXpPQXhRdFV0K0d1U1hGdTE5blQ1ZmtOanlvcjhpbmloeWs3NENwMGtlNm1Zb0dXdGtGTG9jQUJDQUFnUklDQ0FSS3FIRU5CQ0FBZ2VNaHNEV0JnSDdYWk1TODMyQ0lwbElJcEl6azdZTnhWc3JvbE5LTEFWNFQ4c3g5TE5HYndmdEk3OE1PdmlmaXZhS1BZS1ZaR1B2b21ucU9HbStvRkI0cGRiekRnNVEyYXVxVUNBUjB2NnVhbWNMeG5UdERlTUhQZFNJU0hhQy9xUEl3V3JsMVpVaWJ5dTJZd2szdjA4TTZnOG16Qng0THJRUUNEKzl5UVY4MEE4TS9DV05USXE3d3VDajl5Tk5DUG5HdmJ1N2YxVytOdllSQU9SNGl1ZmRKclkvSFhCb3BieDFMT1VoTnVkUGE1N1FNSi9LbTBvRms2NkxmT0hsUDFSZ0M1aFlJNkpsVFBlRmFoN3oxZURPWFBVSW4vbjZWc0xicmQrbGIwaTZacGRiY2hvMVdSZzBaTEpRV1lUZnFnYmNldGhJSUNQeWNoa2w5UDhnclVudTlUelVhWmZWWCswWjU3dFlZd3FhOHBwY1NDR3hsSDl4bzJMN1d6S002WWRvakp4clVIbGtSQkVxRWF5Mzd1TysybGxvL0pReTRvRE9hS2hyZ1BzcWhySi9LZVMrUGRBbVNjMHZLdmpiM3QrRFc0ZHYzUnJtZEdkVFhkN1Rtby9halM4ekp1WDZISkVqVG1xTXhLaEduNlh0VmFTdGo1d0N4ODZQY1laQVk0OWNpRisxR0dzcHRtL29RZ0FBRUlEQVRBUVFDTTRHbFdRaEFBQUlIUW1CckFnRmhsL0ZBb1lkVnBMYldvZDVVQ29HVVlZcUY0MVdhQUVVRmVIbW1HR0I0WHk5MCtmQmo2ZzVtOWpvek8yWFFrT3JKTzFBZmdzTnliek5UMk5mZG9nOU5lY0tYcU5GVDJLWFc4UTRQVXRzcHJWY3FFT2p2ZDQzZ29TNVAvNXI4aVRyc2xYcGYzbVdLTk5IS09LekRPbmtkS0oxR2psZWszcWZuaDRPSk1ZTmNLNEdBT09xQTZqN0JNSDZUMG9Ic2NpZldpSUZLYnFzY25oSTQvSGpsUWI4RVFCSnlhT3d2WCtnd0svVjU4WmhMSStXdFl5a0hxV2wzT21IQVhQdWNWblNWaDVqWmd5clh4WnlvUHluOGxoQUk2QnY3L003US9LU0VEczBaK25aNGUrWnl3b0RzVk5FNEtveTl2Rk1WT2FibTk3MXZWbUY4TlRja01Fd3BpblFscjBxdEgzTVVHVFh1R2ZZSHVVSkNHV0RPQ3dhWW9URFZXdzliQ2dSNkx0cExTNXdqSTI3TlBrTHRhVjRxa29TTWtHTXB5RnFNaGJ3c0ZaVkFCcFhjSE5iNnJ0RTMya2RIT3JLa1FHQXIrK0FXNHhWTE82Y29icWViMmR0YjNPaEEycGhqL2V6bnBiNjcrNGdaKzhSMUtPdG5xWEg3eFdiMkV4TlJFZnR4S2ZrdDBCNVhVVkYrS2ZPN1ZmZlUyWS9DNld1TkxER28xNzVQK2gzU1dZeStEVzliMFppWEJqT2xhWWxDRmZWR3Z6RlRSU212dEhacGI5S2k2TnhNODFOblZWTmxhWEZzaStlaURRaEFBQUlIVFFDQndFRVBMdzhIQVFoQW9KckFGZ1VDK2hBOUs0U28rM2dqUTVzNDZDUDFIY0dBcS9CcFUya0NjcUhybzF6aHp4OGZ1VkQzZjhyT3MrakRXWWVXWjQ1Y0kyTy9jaHQvZnZBM2ZhZytidkQvS1J5bVBsNXJ2REZ6bi9lUTYydGZkZjB3TGhxRDcrNDh6eFQrZHN4RFRKNW9udzFDZ0xlWjJWczY3dzFGbTJnbENoampySGZ0MjRPbm44Smd5elB5NmpzVlpWeFhmbG9aSWlRbWtmaGxyb1B4Mkh2dzlaMzN2TUozM3JrVHU1d1d2QjUwa0Q0OFFGZC94VkVlOTRyWW9mNitMekZpUit2M3NHY3I0K01aQ1gzV25IdG5DRlg3MXZBY1MzaTRsRHczSG5NbDFKYTVaZ3R6V3V1aTVxL21zZzRoOWQ5clR4ejZhcjM1VFBpdDFaeldXdFRxZDN5WkVWbjNYWmpMZGVNak1hRHlUK3UzNlk3ZFBsT2VlV08vVGJxTGpPY0thU3l4bi83cFhaYUh2UXpwSlo2bjhpRFVQbkJPZzRlRUMwcDdvZjJMbm5NWUpsano4ekl6ZTNYM0d5ZkRrSjVuemoxTHpXakpTS0V4a3ZoQlF0aHZIT3gzK3JZbDlOVS9HUjdmSGRLQnZkOHhlTlgwYSt4YTdSRmxURkZmbFFOYVlab2xtdHd0MnB0cG4vaDdZYit6QnVQbzJMT3NmUjljTTNiM0RaN05ZMjFvVHVqYmM4NzVXZFAzTlZ6YmF2MWN3N09NOWVFUTFrL3RLVzlsWm5JcTBIZWkxczMrZDBEcnYzN1RGTWxRNldsZTJhVjc4bEkxMW83VnNEL0R0YkgvRHRUNkxhTzBJcTlwRDdtV2N1WE9vVU1SSFBWZHFOOGpmWGVQaGQvWGZrRVJLUFVkS3ljUG5RdXNkWTFmQzF2NkFRRUlRQUFDRFFrZ0VHZ0lrNllnQUFFSUhDQ0JMUW9FdGpRTUtlS0FxVnh0c1R6Q2lwcnd5enVDQWluSWRaZ3J6NnJkb3NOR0hRYi96WmFnMFZjSVFHQXhBbmpNTFlhYUcwRmdWZ0xNNVZueFpqY3VvYWU4SEpXK0o3WElPMWtwdENRbXBFQUFBc3NSaUFtejFRdEY5TkYzRmdVQ0VJQUFCQ0FBQVFoQUFBS2JJb0JBWUZQRFJXY2hBQUVJTEU0QWdjQjh5TDIwQXJyejY0TlJmMHhGcnNNcTVkV1R4OUd3REZNU0tBejZtODNzT29PS0x3emU1R3YxWEo2UFBpMURBQUlwQlBDWVM2RkVIUWlzbndCemVYMWpwTE9ZdTNXUmZiUVh1MlppOS82Kzg5bzhKNlNrWWUrV0NJMXFFS2drY0xzUVhXS1kyazNOS29xVm91T3N5WE81OG5HNUhBSVFnQUFFSUFBQkNFRGdXQWdnRURpV2tlWTVJUUFCQ0pRUlFDQlF4czI3U3VLQUozU2UrdytOVkZRdU9JWDNVM2pscWZKZElSemRXRjVjaVFTVTIxUUh6NG9tb0R6UXczS2hrOXJBZXc3K0RnRUlIQzRCUE9ZT2QyeDVzdU1pd0Z4ZTkzZ3JWY0h6T3lIblhUTzYrVis2VkZJL1oyWmZ5cmlHcWhDQVFENEJuWmtxai9lNUU1Yyt1dnYvbGI2RkFnRUlRQUFDRUlBQUJDQUFnYzBSUUNDd3VTR2p3eENBQUFRV0pZQkFvRDF1NVJWOVR2RGNuMnI5UTJiMkx4eHhnSzdWNy9qNVp2YWtnbTdLODB3NThWNVhjQzJYUUFBQ2gwOEFqN25ESDJPZThEZ0lNSmZYUDg0U2NXZy9KMk5qYXZsSUNHMytydFFMcUFjQkNHUVRtSXJDcG9iK3VvdjJkZ2N6dXl5N1ZTNkFBQVFnQUFFSVFBQUNFSURBQ2dnZ0VGakJJTkFGQ0VBQUFpc21nRUNnN2VCOGMwZ0xvTU9rcWZMbklXM0E1WW0zL25venV5UUlDaEl2K1ZvMVJTWTR6Y3crbVhNUmRTRUFnYU1nZ01mY1VRd3pEM2tFQkpqTDJ4cmt1NFQwQWFrcEJ4UXQ2Z0l6ZTdxWi9jTzJIcFhlUW1BVEJINDJSQkFZNit5THpld0JYY1MycjJ6aVNlZ2tCQ0FBQVFoQUFBSVFnQUFFQmdRUUNQQktRQUFDRUlCQWpBQUNnWGJ2eDZsbTlvcmdhVExWYXE0NG9HL24rcUh0bTJkMDk5a2hQQzA1YkRPZ1VSVUNSMElBajdrakdXZ2U4K0FKTUplM044UVNrMTZjbVhMZzlXYjJRRFA3eFBZZWx4NURZTFVFL3BtWnZkck1ialBTUTMwLy9ZQ1p2V3ExdmFkakVJQUFCQ0FBQVFoQUFBSVFjQWdnRU9BVmdRQUVJQUNCR0FFRUFtM2ZEeDM2UHRmTWZuQ2syVkp4UU45VWpramdyOHpzZERQN1FOdkhvelVJUU9CQUNOdy9HS2pHSGdlUHVRTVpaQjdqS0Fnd2w3YzV6UC9Fek00enN5ZVkyUlVTSCtGTFpxYnhsaGdWOFdjaU5LcEJJRUxnOW1iMlJqTzcwa2lkUHpLek03dDUra1VJUWdBQ0VJQUFCQ0FBQVFoQVlLc0VFQWhzZGVUb053UWdBSUZsQ0NBUWFNOVpoNzdpZXRGTzB6TFUvNUNaZmJqeWRqRUJRdCswd3RHZWJXYS9XM2t2TG9jQUJBNlRnSEpodnl3Y2ZBK2ZFSSs1d3h4em51b3dDVENYdHordVZ6TXpqV05xMFI3dmY1SnVJQlVYOVNBd1NjQkx6L0p6WnZZcytFRUFBaENBQUFRZ0FBRUlRR0RMQkJBSWJIbjA2RHNFSUFDQitRa2dFSmlIc1g1Ly82V1p2YWo3Nzd1RHdmN1RqVzUxUlRPN3A1azkwY3h1T21qekkyWjJqcG45dDBiM29oa0lRT0R3Q055dWl6RHlKak03WmVUUlB0aDUwOTNKekJTRmhBSUJDS3liQUhONTNlTkQ3eUFBZ2ZVU2lLVm5rUWhIMFFVdVgyLzM2UmtFSUFBQkNFQUFBaENBQUFSOEFnZ0VmRWJVZ0FBRUlIRE1CTzV1Wm1lTkFKQjM2YVhIREtiUnMxL1h6TDVnWm4vWHFMMWhNL0k4dTVXWm5ScUVDSjhpN094TXBHa1dBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJTEFCQWdnRU5qQklkQkVDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNCUVN3Q0JRQzFCcm9jQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaHNnQUFDZ1EwTUVsMkVBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJMUJKQUlGQkxrT3NoQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0d5Q0FRR0FEZzBRWElRQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBclVFRUFqVUV1UjZDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBd0FZSUlCRFl3Q0RSUlFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdFQXRBUVFDdFFTNUhnSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJTEFCQWdnRU5qQklkQkVDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNCUVN3Q0JRQzFCcm9jQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaHNnQUFDZ1EwTUVsMkVBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJMUJKQUlGQkxrT3NoQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0d5Q0FRR0FEZzBRWElRQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBclVFRUFqVUV1UjZDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBd0FZSUlCRFl3Q0RSUlFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdFQXRBUVFDdFFTNUhnSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJTEFCQWdnRU5qQklkQkVDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNCUVN3Q0JRQzFCcm9jQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaHNnQUFDZ1EwTUVsMkVBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJMUJKQUlGQkxrT3NoQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0d5Q0FRR0FEZzBRWElRQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBclVFRUFqVUV1UjZDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBd0FZSUlCRFl3Q0RSUlFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdFQXRBUVFDdFFTNUhnSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJTEFCQWdnRU5qQklkQkVDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNCUVMrRC9BdXMxd2xxYmlHSkxBQUFBQUVsRlRrU3VRbUNDIi8+PC9zd2l0Y2g+PC9nPjwvZz48L2c+PGcgZGF0YS1jZWxsLWlkPSJlNCI+PGc+PHBhdGggZD0iTSA3NTMgMzc4IEwgNzUzIDQxOCBMIDM3MyA0MTggTCAzNzMgNDQ3Ljc2IiBmaWxsPSJub25lIiBzdHJva2U9IiMyODY0OTQiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBwb2ludGVyLWV2ZW50cz0ic3Ryb2tlIiBzdHlsZT0ic3Ryb2tlOiBsaWdodC1kYXJrKHJnYig0MCwgMTAwLCAxNDgpLCByZ2IoMTE1LCAxNjcsIDIwOCkpOyIvPjxwYXRoIGQ9Ik0gMzczIDQ1NS43NiBMIDM2OSA0NDcuNzYgTCAzNzcgNDQ3Ljc2IFoiIGZpbGw9IiMyODY0OTQiIHN0cm9rZT0iIzI4NjQ5NCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIHBvaW50ZXItZXZlbnRzPSJhbGwiIHN0eWxlPSJmaWxsOiBsaWdodC1kYXJrKHJnYig0MCwgMTAwLCAxNDgpLCByZ2IoMTE1LCAxNjcsIDIwOCkpOyBzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7Ii8+PC9nPjwvZz48ZyBkYXRhLWNlbGwtaWQ9ImU1Ij48Zz48cGF0aCBkPSJNIDc1MyAzNzggTCA3NTMgNDE4IEwgMTEzMyA0MTggTCAxMTMzIDQ0Ny43NiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjMjg2NDk0IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgcG9pbnRlci1ldmVudHM9InN0cm9rZSIgc3R5bGU9InN0cm9rZTogbGlnaHQtZGFyayhyZ2IoNDAsIDEwMCwgMTQ4KSwgcmdiKDExNSwgMTY3LCAyMDgpKTsiLz48cGF0aCBkPSJNIDExMzMgNDU1Ljc2IEwgMTEyOSA0NDcuNzYgTCAxMTM3IDQ0Ny43NiBaIiBmaWxsPSIjMjg2NDk0IiBzdHJva2U9IiMyODY0OTQiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBwb2ludGVyLWV2ZW50cz0iYWxsIiBzdHlsZT0iZmlsbDogbGlnaHQtZGFyayhyZ2IoNDAsIDEwMCwgMTQ4KSwgcmdiKDExNSwgMTY3LCAyMDgpKTsgc3Ryb2tlOiBsaWdodC1kYXJrKHJnYig0MCwgMTAwLCAxNDgpLCByZ2IoMTE1LCAxNjcsIDIwOCkpOyIvPjwvZz48L2c+PGcgZGF0YS1jZWxsLWlkPSJsb2NhbGlvIj48Zz48cmVjdCB4PSIxMDMiIHk9IjY1OCIgd2lkdGg9IjU0MCIgaGVpZ2h0PSIxMTAiIGZpbGw9IiNlYWYyZjgiIHN0cm9rZT0iIzMzNTU2ZiIgc3Ryb2tlLXdpZHRoPSIyIiBwb2ludGVyLWV2ZW50cz0iYWxsIiBzdHlsZT0iZmlsbDogbGlnaHQtZGFyayhyZ2IoMjM0LCAyNDIsIDI0OCksIHJnYigyNCwgMzEsIDM2KSk7IHN0cm9rZTogbGlnaHQtZGFyayhyZ2IoNTEsIDg1LCAxMTEpLCByZ2IoMTQ0LCAxNzMsIDE5NSkpOyIvPjwvZz48Zz48Zz48c3dpdGNoPjxmb3JlaWduT2JqZWN0IHN0eWxlPSJvdmVyZmxvdzogdmlzaWJsZTsgdGV4dC1hbGlnbjogbGVmdDsiIHBvaW50ZXItZXZlbnRzPSJub25lIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiByZXF1aXJlZEZlYXR1cmVzPSJodHRwOi8vd3d3LnczLm9yZy9UUi9TVkcxMS9mZWF0dXJlI0V4dGVuc2liaWxpdHkiPjxkaXYgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiIHN0eWxlPSJkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogdW5zYWZlIGNlbnRlcjsganVzdGlmeS1jb250ZW50OiB1bnNhZmUgY2VudGVyOyB3aWR0aDogNTE0cHg7IGhlaWdodDogMXB4OyBwYWRkaW5nLXRvcDogNzEzcHg7IG1hcmdpbi1sZWZ0OiAxMTZweDsiPjxkaXYgc3R5bGU9ImJveC1zaXppbmc6IGJvcmRlci1ib3g7IGZvbnQtc2l6ZTogMDsgdGV4dC1hbGlnbjogY2VudGVyOyBjb2xvcjogIzAwMDAwMDsgIj48ZGl2IHN0eWxlPSJkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGZvbnQtc2l6ZTogMjBweDsgZm9udC1mYW1pbHk6ICZxdW90O01pY3Jvc29mdCBZYUhlaSZxdW90OzsgY29sb3I6IGxpZ2h0LWRhcmsoIzAwMDAwMCwgI2ZmZmZmZik7IGxpbmUtaGVpZ2h0OiAxLjI7IHBvaW50ZXItZXZlbnRzOiBhbGw7IHdoaXRlLXNwYWNlOiBub3JtYWw7IHdvcmQtd3JhcDogbm9ybWFsOyAiPuWUr+S4gCBXb3JrZXIg5YaF55qEIERldmljZU1hbmFnZXIgLyBEcml2ZXI8YnIgLz7lm7rlrprlvZLlsZ7nmoTni6znq4sgVENQIOS8muivnTwvZGl2PjwvZGl2PjwvZGl2PjwvZm9yZWlnbk9iamVjdD48aW1hZ2UgeD0iMTE2IiB5PSI2ODkuNSIgd2lkdGg9IjUxNCIgaGVpZ2h0PSI1MyIgeGxpbms6aHJlZj0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUNBZ0FBQURVQ0FZQUFBQWJNSU9hQUFBQUFYTlNSMElBcnM0YzZRQUFJQUJKUkVGVWVGN3NuUWY0QmtWNTdjL0Z5RldJQmJFbHNVVlJzU1FhWTBGRkVGQVI1Y2JZU3pRUXU4RnVOTEdpUm8ySVl1OGxSdXlpUmxCQlVDQmloZWhqeHhaTExJaTlKU0cyM0QxaFZwWmxaOTZaMlprdDMzZm1lWHhBL3J0VGZqUGZUbm5Qdk8vL2daSUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlNREdFL2cvRzk5Q05WQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJBQVNDR2dRaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpTUFXRUpCQVlBczZXVTBVQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUWtFTkFaRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFWUFzSVNDQ3dCWjJzSm9xQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQkFJYUF5SWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlLd0JRUWtFTmlDVGxZVFJVQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBQ0FZMEJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVkZ0NBaElJYkVFbnE0a2lJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlJR0F4b0FJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUliQUVCQ1FTMm9KUFZSQkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSR1FRRUJqUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVMyZ0lBRUFsdlF5V3FpQ014QVlHOEEvdzNnWXdCK21WaitWUUg4RDRBdkpyNm54MFZBQkVSQUJFUkFCTGFYd0EwQS9OU3RIMzQ5TVlaOUFaenB5azVkOTB4Y1ZSVW5BaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlLdzdRUWtFTmoyRWFEMmkwQjVBaGNCOEI0QVBLai9EWUNqQUx3U3dFbUdXT0NDQUI0QzRLbE9XSEFBZ0IrVXI1NXlGQUVSRUFFUkVJR05KN0N6bTN0dk5ORFNwd0Y0eVlZUjJBWEE4UUN1NjlZYWJ3UHdPZ0R2Qi9DVHltMzkzYWJjZHpickhJb2ptVDRMNEIwQVhpL0JRR1h5eWw0RVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSQ0NMZ0FRQ1dkajBrZ2lJUUlEQUxRRzhHMEQvKzBLeHdQMEJ2THozTHAvYkI4RExBRnlwOHpjK2QwaUdCd0oxamdpSWdBaUlnQWhzTzRHKzBickw0KzhBSExaaGdQWjBRc1RmR1dqWGNRRHU3THdMMUdqMm56b2h3azREbWY4cmdGczBBc2dmMVNoWWVZcUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0loQURnRUpCSEtvNlIwUkVBRWZBUjdNSHduZ0xnTVBuQUZnTHdCZjd2eU56ejhMd0lNSG5tZVlnYnNDZUpOd2k0QUlpTUJDQ1B3L0FFY0g2dkpuQUk1WlNGMVZqZTBtc0cwQ0FYb2Zlb3lueTUvVS9QY25WaHdPRHdUdy9KbktydGdzWlMwQ3N4STRQNENMQWRqQkNXek9tclUyS2x3RVJFQUVSRUFFUkVBRVJDQkVnUHZQQ3dGZ3FEZDZnNTA2NUp0NlJ3UkVRQVJFSUlPQUJBSVowUFNLQ0lpQWw4QTFBWndDNEtJRFQ3eXdXU1ErQ0FBTi85MTBmUmVTWU9pZDd3TzRxWFBYSyt3aUlBSWlNRGNCQ1FUbTdnR1ZIMHRnbXdRQzNmQUNmVDQvQm5BVEFKK0pCWmY0M0FVQXZCWEFyUWJlKzRWYnczdzRNVTg5TGdMYlRJQWh4eWpvK1JzbkRtaFp2QUxBM3phaTRoOXVNeHkxWFFSRVFBUkVRQVJFUUFRV1J1QUtBRjdqOWx4dDFYN3Exbkt2a2xCZ1liMmw2b2lBQ0loQWo0QUVBaG9TSWlBQ0pRbndRTy9RakVQeVJ3QjRwcWNpSndDNFhiTzQvSG5KaWlvdkVSQUJFY2dnSUlGQUJqUzlNZ3VCYlJJSTNBekE4UU9oalFqK2pRRHVBZUJYbFhyaGFnQSs0RzQ2OTR2NEtJRDlBZnlrVXRuS1ZnUTJqUUM5QmxCUWZCOVB3OTRINFBiNlRXMWF0NnM5SWlBQ0lpQUNJaUFDS3lWd2VRQThzNzJ5cC80VWR4NCtjRkZzcGMxVnRVVkFCRVJnOHdoSUlMQjVmYW9XaWNCY0JDN1YzSlE3dVRtTTMzMmdBdThFY0tmbTVzOS9lU3JIMjBKdkJuQ2dGcFZ6ZGQraXl0MjVPZng5R0lETEJXckZ1TTR2bjNDandmQVlkdy9VaDNVNWJRS0t1d0o0RkFEZW1QV2xGd0g0eEFSMTJjWWlKQkRZeGw1Zlo1dTNSU0RBdlF6ZCt4OHkwRTMwV01TYi9jZFY3TUw3QVhpSkovKy9BM0JZeGJLWGt2VzFBZngxZ2NwUXhQR3hqdkgzODAyKzM1V0wwZ0prMTVNRkJjRkhlY1ErYlN0cWh3eFpENjM1YThvYmcxeXZjeDluSllhTW84Qmp5WW50ZUVoekMvS0tFWlhVV2pzQ2toNFJBUkhZQ2dJTXNlYzd4L3NnZ0grYWljSzlBTnlnUU5uMFJ2WnhKemIrNytieTBxZmNXcFgvZmRzVFE4WnlIMFRXdmlTUGF0cytTdFIrRVJDQnhST1FRR0R4WGFRS2lzQnFDTkI0ZXVSQWJXTVA2SGNEOEg0QXZ6ZVFCeGZmdklWMzZtcG9xS0pqQ0hCdW9pdXlnd09aZkE3QTNnQVlocUoyaXFrUERWUVBybDJSNXFacTZLWXNpNmZyM1QwQm5ENUJYYmF4Q0FrRXRySFgxOW5tYlJFSS9BRUFIajd5OWtvLzFiN0JId292VUR1MHdaSkdwZlZkTEZIWGJ6c1I2ajhET05HSkJrcmtxenlXUllCaEJFS0h6S3d0UFhaUStQT3paVlY5SzJ2enAyN3Z0bE5FNjJ0L2p5T3FZRDV5US9lZDJkRjhFcUJCN0ppSTUvU0lDSWlBQ0d3eWdZdTRjS0ZEaHZqWWM4QmFmQ2hNK010YW1RUDRqUXVGK2w0bmJxU0k0S3lLNVMweGExNFMrMUNFc082eEFKNjJ4QWFvVGlJZ0FpSWdBb0FFQWhvRklpQUNKUWlFTmdZcEIwSStrUUhyS0xlaUpYcHFQWG53NE8wZGdlcnlwdUUrN3FDNGRxc3UzcFQxTDQyWGk2c0hDcHJxd1BveEFKNGFxQWZyU1FXL1FuTFVHUldXSVV3SHhuVzRLOWQwQXRzaUVMZ0xnRGQ0OER3Z2NMcy9uZWg1MzdnbWdGTUFYSFFnczNjN1YramJjRkJvZlJkTHNPN25RY0VBWGRGVG1QcU5HZ1VvejhrSjBIc1UxMzM3R1NYL2UrTVZaQThBWjB4ZVF4WFlKNUFpRUpqYlVHVDFYc2diemRDN1d1OVpSUFYzRVJDQmJTQndTd0JjOHc3WkZsTE9BV3V3cWkwUUdLcnpSd0FjNFpqOFI0MUdMU3pQYTdtOTBJV01lcjBHd0VFTHE3dXFJd0lpSUFJaTRBaElJS0NoSUFLYlErQ1NBTjdxdVVXWDJrcmVmUHVMNW5ENzA1RXZoallHZDNVeGdHT3lza0lOMERqNjlBbmR5c2ZVV2MvVUlVRDNucndWZXVsQTlsTzViK2FOL0pNQTBJV2FMMDF4Y3o5MFc3V3RGNVhaVkdncjFTRmdHY0owWUZ5SHUzSk5KN0FOQWdHdUdkN3VQQXoxQ2RFOS9VMEJuSm1PTHZxTkI3cndCa012cEt4OW9ndGM2SVBXZDdGMnRYa1krMURuWllwR1NLWDFFb2c1eko5S2tMbGVpdFBWUEVVZ3dGcTlFY0E5bkp2bTZXb1pWOUkxblBjQWlvSmprdFo3TVpUMGpBaUl3Q1lUNE5rSWhab1U2dzZsQndGNHdZd0FZdFlVdGFwSDd3SjB2ZitVRFJjMDB2c3IxK0doMEtCa0xBOEN0VWFhOGhVQkVSQ0JBZ1FrRUNnQVVWbUl3RUlJeEM3T1lxcjduNDBMVjhaY1p5eFlLNFdNK3A5dFhFL3U2MkxJV3ZtMGZ3OGQwQ2pVUUN6RjlUOFhZd3lmNm9ibTN6cGhpa1dWSGpCZVp6MDA0dStXYUlLR2tWczBJUWJvNWs2cERnSExFS1lENHpyY2xXczZnVzBRQ0lSdThOZU9VeDd5blBTdHh1dlJUWnFiTWw5Tjc3WlZ2bUY5RjZkcTFHbE42QUVlUmpNY2xZUUNVMUV2VzA3SUkwaGJVdTNmZHRrV2JYWnVxUUtCSllkZWVXTHozVGcwb2J1MDNrdUFwVWRGUUFRMmtzRFZuRGZIaXcyMGJnbHI0VGtGQWwwa0ZBbzhlVU9GQXBaSWhCeCs0VVRiSDk3SVg0RWFKUUlpSUFJYlFFQUNnUTNvUkRWQkJCeUJ1UVFDb1hpTnVhcmhSd0I0cHFkbmVmdUU3cW00MEZUYWJBS1dZZjQ3QUc3Y3hKYjdTa1VNSVNOYnY5aFhBN2huUmNQRXpRQWM3M0hoeDdwODNmSGdobHlwRGdITEVLWUQ0enJjbFdzNmdXMFFDUGdNT2xNWW9VSnJIN3ErNS9wblc0elUxbmN4ZmZTT2U0TmVKZjRhQU5jSVN1c2l3Ty9XMnhvUFVqZjNWUHRUQUc0TjRKdnJhdGJHMWpaVklFQVFTeFI0TUlieXlZMkhnOTBUZWtycnZRUlllbFFFUkdBakNZUThhUzFoTGJ3VWdRQTcvNWZ1RnYxejNMOXYwb0Q0aytaeTJZbWVrR3RzSjhjQ1BYMHhSS2lTQ0lpQUNJakFBZ2xJSUxEQVRsR1ZSQ0NUd0J3Q2daQmlkSXg3WDk3TU84YmR3R3R4Y0ZIOU9PZk85Nzh5R2VtMWRSRUlHV0RhbHR3R3dORVZteFZTeHZlTC9Wd1RpbUJ2QU4rdlZKK25Oc0lZaHRud0pZWVk0ZTA3YmI0cWRVRGpWY1V5aE9uQXVCNTc1WnhHWU5NRkFpR0R6aXNiNC9EOUszNExRN0dxdC9HV2pQVmRUQnU1Wlo3K3FRdVY5YTR0RW1xVUlUZC9ManNEK0FjbnN1blc1aTBBSGl6aHgvd2QxS2xCamtCZ3pQNndWdVBwQVl4dXNsT1MxbnNwdFBTc0NJakFwaEVJZWRMaVdjUSt6cnZBbk8xZWtrQ2c1Y0JiOUhjRDhMVTV3VlFvK3lvQVhndmdlcDI4ZVdiN2VBRFAyMEJSUkFXRXlsSUVSRUFFNWlNZ2djQjg3Rld5Q0pRbU1JZEFJSFF3TkRZK1BHOFBIZGU0NDlyQnhSam1vYUJ1REpVZU5jdk9ieGQzWS82NmdXbyt6YW14YTdYa0w5eG1KeWIvbXB2aEdFOEdOSWk5TkthaWVpYWJnR1VJMDRGeE5scTlXSmpBMmdVQ1Z3RHdNQUFNWXpTVUx0dkV2THlsNTI4bmpEaDQrNUlUSXA0VjZBL3J0dWtaRmNVSnJCWTlKSEJ1K25UaE1aT2JuZlZkZkwxYng4WGt6d05ucmkxcEpMNEJBSWJXT1gvTWk1NW5udTNXQ0JLV2pvQTQwNnNNTmNWMUlOUFBBUHg4cG5xb1dEK0JISUVBYzh2MU1GZWpMMEpHcmxCNVd1L1Y2QTNsS1FJaXNCWUNYSU16M09PUVRlR2pBUFp2MXZFL21ia3hJWUVBejIxNCtlamZJdXZJOWVodUFDN1p0UHY2elprTHoxNXpFOE81M3RWZGlObzBiMk1YZFh1MzN6U2l6aDlLR0pBN1JQU2VDSWlBQ0V4TFFBS0JhWG1yTkJHb1NjQW5FT0ROKzVDYlZjWU00MEZzTjNIUnVsZHpXL1pqZ1FxSGJ0QjlHY0MrQUw0eG9zSDBUdkNveGdEd2tlWlc5a202QVRhQzVMcGZwZUtZQjRtKzlDOEFEcXgwY013eC9xckcwSFJ3QXNLeHdoaGZVZHlVZmhEQXBUMFB4UHhtRTVxaFJ6MEVMRU9ZRG93MWRId0VhT3lrVVh1cVJPTWFENzZ1T2xCZ2lzRzJSSDI1RGpuRkhSVEY1cGRyZUlyTmY4eWNFaE1uZld3OVF1L3p3RzFQQUtmWExDUWhiK3U3T0haZXBOaGxEd0IzYU5wODU0QUxVMStWajJvRXB2ZGV3RUYxQWxJOUtnS3JJSkQ3blY2SzhZaVFRMGF1VUNkb3ZiZUtJYXBLaW9BSVZDQmd4WjFmaWdnc0pCQVllM2JDY3lLZXYvTE04eDZOdHdTR2d1VEZwdGhFQS9wRG5QdjlUUk1KeERMUWN5SWdBaUlnQWdzaElJSEFRanBDMVJDQkFnUjhBb0hYQURnb2tQOVFuUGVZQmZNMTNZRS9WYUw5UkpkWnZNRzNwTVNZdE1jdXFVS3FTeFFCSHNDOUkvQmtUVVBKeFJ2M2VCUWdYRDJxcG1jL1JDWDk3UUdFYnA4bVpQZmJSeTBPL3dyZ0ZzMUc4MGM1bWV1ZGFBS1dJVXdIeHRFb3QrN0JKYnE1bktvVFl0WVUvYnJrR3A3R3Rza1NuZEdqQWRjVHZCazFWL3AzWnpDbnA0SWxKT3U3T0ZZZzBHM2orZHljL0VoM0lCdmJmZ3BOS1REZ21rRkpCRVNnRElIUWQvcTdBTTRFOEVjRFJkRVljaXZuS2E1TVRmSnlDUm01NktHRjMzdmVHQjFLV3UvbE1kZGJJaUFDNnljUU9nZjhsZ3NUK3RVRk5MT21RS0RmUEFxenVUZDRJb0JySjdTZDRTT2YwYmppLzNYQ08zcFVCRVJBQkVSQUJJb1NrRUNnS0U1bEpnS3pFcGhTSUJEeUhqQXJoRURoSlErb2w5ckdUYXlYZFhPZWJXYnMwTmRWYUR4dmFOS293QVBFMkVSdkhUY0c4SlhZRnlLZnN6d3BQTi9GNW8zTVRvOWxFckFNWVRvd3pnUzdCYTlKSUJEMlN0UWZBa3NWQ053UXdNa0FkcHh4ekc2elFLQ0wvVElBL2o3Qnk4LzduSUJ2YnBlM013NGRGUzBDUlFtRXZ0UDhUbEUweS9CWFErbU5UdVJETjg5enBWRDlqMnoyQUhzM25zUXU1Nm1jMW50ejlacktGUUVSbUpzQWplQ0hlaXJ4UXVmOWNRbTM0cWNVQ0xRNGVFNTZreVpFMG5NVGhBSzhzSFc0UEtiT1BheFZ2Z2lJZ0Foc0x3RUpCTGEzNzlYeXpTTXdwVUFncEJwZUtsa0pCSmJhTStGNjBUalBRMFRleXZlbFZ3TzRaNFZObFcvenkxakd2S24vK3dNVjRtYVlOL25mV3hCM0tKWTRpMW5LVGF5Q1RWNXNWaElJTExackZsOHhDUVRXTHhEZ2ZQU1NKbnpTdldZZWJSSUluTHNEcnRlRTBuZ0RnQ3RGOU12TEFSeWltS2dScFBTSUNOZ0VRZ1oyM2lKOWZCTmE1NVdlR05VL2RrYVV6OWpGVkhuQ0Vycy9HQUNOTm4vZ0tWMENnU3Jkb2t4RlFBUVdUdUJTVGlpNyswQTlmOUg4N2FiTlRmb1BMNlFOY3dnRTJxYlQ0eFhYbTg4RWNINkRCOE1OM0tueHVQUFdoWEJUTlVSQUJFUkFCTGFNZ0FRQ1c5YmhhdTVHRTVoS0lMQ1VBL0xVenBSQUlKWFljcDYvbnpQSytHcjBPWGZMNS9zRnF4d3l5cDhLNEQrYThBUDdlTXA3V21OOGVHekJ1bHl0aVd2M0FRQVg4K1Q1ZGVlMWdJZXhTblVKU0NCUWwrOG01eTZCd1BvRkFrc1JSMG9nY040dnhjNEFYaERwVFVBM3RUYjVTNnUyVFVrZ0pCQmdhQm1LZDUvVHJPRXY3YW5VazVyL1RqSHVIT2tQWGFpOElRRUF2WUU5dFBFZThLckc5Zk5PbnNwSklEQkhyNmxNRVJDQnVRbmN4WWt5aCtyeEhnQzNiY1JWdkV5eGhEU25RS0J0UDg5eDN0WmNlQmtTVkhRWlVUVEhFQVU4WjFJU0FSRVFBUkVRZ1VrSlNDQXdLVzRWSmdKVkNVd2xFSmpMN2U5WWVCSUlqQ1U0My92V21LTjdVaHJyYVVRdmxVSkdlYnBNcFl2aXUzb0tzMkpZcDlieEw1b1lxSzhOdkVTMU9UZnJjN3BwVFczVFdwK1hRR0N0UFRkL3ZTVVFLQ01RK0xhTFhjMzQxbVBTelFHd1Qvcko5LzNtbnVuSnpYZjJjUVB2OE9iUExSdWgxZ2xqS2pUd3JtL01TQ0F3REpxM3RSN1ZoSCtnU0MrVWVNUHRaczQ0V0xqTGxKMEliQlVCU3lCQWoxcU1yM3dyRDVVNVkxVS9FQUREY3cwbHJxdDU2NU5oU1NRUTJLb2hyY2FLZ0FnRUNGd1F3TnVkSVh2b01aNk4wUFBqVXRJU0JBSmt3VXNlUndVdWw3UzhUZ053UUJPaTRRZExBYWg2aUlBSWlJQUliQWNCQ1FTMm81L1Z5dTBnTUlWQWdPNnhHT3Y5amdHa1BDRC9XZ1p5M3Y2NncwQmNYeDdrY2tITkc5dGpFamN6eDQ3SlFPL09SbUFYQU1jRHVHNmdCbzhBY0VUQkdvYU04anhRNUJoL2xxZThIelloQnZZRWNIcWgranpQeGZMelpjZjRyaTh0VkpheUNST1FRRUFqSkplQTc1Q0szNUxTaG1YVzBUZW44bSs1ODdUVjlrc0F1TTJBTzJuZUpOMExaUVFDcFl6anZ0K3lUeUFRdW0xYTY4YVVCQUxXaUR2djM3bTNmU1NBdzR4WGRRaWJ6bFp2aUVDZmdDVVE0SGVmYTNlR1p2R2xCem52SDFQU3ZXUXpKNTBJNEJxZVFtbmtvbGN5N2oxODUyWHlJREJsajZrc0VSQ0JKUkM0b1FzdnNPTkFaVDd2d2d1Y3VZU0t1am9zUlNEQTZsekVoUkRZeitEekZBQlBxQkE2YzBIZG9xcUlnQWlJZ0Fnc2pZQUVBa3ZyRWRWSEJQSUpUQ0VRNEkyNzQ1cGJkRHNFcXBsN1lPS3JmeWxqUUQ1WnZia0VBcGFSdk9RdGVzNk5kQ3Q2c0tmaGR3ZEFFUUE5Q2ZnU242R1labXl5eEJFNWhyZXhkZHJtOXlVUTJPYmVIOWQyM3lIVmF3QWNOQzdyd2JldkNPQ0RIdGZPdWZPMFZVMmZzU2puTytYTHE5U2FJRlVnUURmWWh3NEErQjhuYnFUNzBOTEpOMmIrRlFCdjV2Nm9kSUdaK1ZuZnhhazlPRkhNK2tJQTl6SGE4d0REY0ptSlE2K0p3TllRaUJFSWNMMThDb0FoVi80RTlWRjNHNVdldWFaS0lSZlpyWkhyK2dDT0RsU28xanc2RlFPVkl3SWlJQUlwQkhnK3drc1NoM2hlbWpOa2pLOGRTeElJc0k2WGR5THRLd2ZBVTV4MjArWkMxbWRUT2tmUGlvQUlpSUFJaU1BWUFoSUlqS0duZDBWZ1dRUnFDd1RvVXV6TkFBNDBtcDE3WUNLQndMTEcwOUpxUTNmQW9aczhYMjgyWERkdURBSjBWem8yWGJ4eEFjZGJwRmNmeUtnMWRORXc0ek8rOGJWWHU5aXJOQjZOU2RkeUI2c1g4bVF5cGFIb0FnQW9XT2dtdXRibTRlOHZ4elJ5UmU5YWhyRGM3OStTRUZ5MHVYM0w3MzJiZnUxY0hmS2ZTdmtFcGhZSWhBdzNkUGRjdzZQT3Bnb0VRdDREYWhxM2ZHT21kQmliL0ZGOTlwdldkM0ZxZ1FEcnRLc2I0OWNMTk83TEFQWUY4STJ4QUJMZUg1cEh1WjQ0S3lFUFBUb1BnZjdjeUZyUXl4blhRR1BYZW1OYU5PZWNIU01RK0xoaFZDSTd6a2tVb0UrUkxCZlpyWkhMK3E1TnVkN2ptUjFkVlBkdjdUTE9OK05XcnlreEZBeS96L3hubTViNkRWemp2bWRvckN6aE81VTdSaW40NDlqdlhrNzVHWUNmNTJhbzk3SUpoTmJDL0E3ZHBCSE1maVk3OXpvdkxrMGd3RmFTMDNzSHZ1ZGRBcThFUUErUkNoOVpaMXdzSlZmdENaYlNFNnFIQ0lpQTEyV2EwSWlBQ0t5UFFHMkJ3SjBCdkNIZ2FyRWxsbnRnSW9IQStzYmNsRFhtelNNYTVLbThIa284WU9TTlNtNjR4aWFHQnpnSndPOE1aTlFhNUdrUWYyZnozTjZld2o3bi9rWVYrSmdVQ25YQWZLbmtmL0NZQWp6djBnMGVYY1BlM3NYTHU1eFJCbm13emU5eXNRay9XVkUwNERzb2Jhc1lPZ2pqZ2VRTkFOelg5US9ieFVNbkNoMTRNNW1HTjhZWi80cW52Vk1jR0E4ZG5nNVZwOFNCSHcvZWVNQlBkN3AwRGUvN2ZiRjhobm41QUFBZVdsQ3NVL3EyMzlBaFlMZmRvUU5CdXRPL3JmUDY4Y2ZON1dHNnVtL3JUQ01neFczUEJzREQ5TG5TMUFJQjMzY3M1elovTExOTkZBandlOE52d3VNOEVHckdXNVZBSUhia0RUOFg0L1dxcG50empoMStVem1QM3NtNVd2ZDU0T0ljeE50aXIzWGZLNG9lYzR6T01mTkhiV09jOVMwUGljN0d6Ty9qUnNzNWI3Zjl0cjhMcVhhZEFYRmt2eXd5cFNIOExRQVljaVMzLzZ3MkxHbk9abDFEQWdIK3ZkMFRodHhTOHpuR3JMN0hSTWFRVUYyNlJxNHAxbnREL1UyREFkY3h0M2FlRmE3cFFnYUZ4c2EzbTc0NHhvbVRQMVo0L1QzMk44a3hTMjhNOU9qQzJOb003ekNVdUk5NHYyc0R3d0tPRFMxby9aYTZmMmNiZVE1QndSanJ5UFZUekw2SHYvbVh1LzNnWEc3Vk9WNTQyNWhlTVRqbi9YNmc0Znd1dmNtdDQ3L2ttV04rdHdtaDV4T2xUeUVLdjVTN2pNSzFGZmVoSEQrKzlHL09aVHRGK1Y4RVVGcklQQ1FLYSt0aXpXTlhBM0EvOXh1bVI2KzJIV2MwNXhVZmFuN1RoenZ2S1NuamRPNW5IK2pPSFlicU1lVTNQSVhERWdVQy9ONXdUL3FRUUVOeUJSZHpqVmxyM1JmYXc2OTkzUm83SHVmWUUvanFObVplSDN1V0ZzdEx6NG1BQ0V4TVFCNEVKZ2F1NGtTZ0lvR2FBZ0VyVm1PM1dSSUlWT3prTGM2YXhucHVQbm5RN2t0UGF3N0ZIbHVBMFZPYlcyR1A4ZVRUTmNpSG5xUGlleDluVU0ydGtoWHFnUG5TcUJ0eWdacFNOaGY4dDNTR3NEMVNYaHg0bG9iWUZ3TjRabk5Bd3NPUWtvbUhWeUZ4eHREdFdySmtmN3dNd0pXTXlvUytZYlVQakxuQlpqZ04zaG9JSlI0YzBIaHhhaWJZQ3p0aENjZDUxMXRBU25ZOHdIMTBJeTc0UXNwTGdXY3RROFBRTFdUV25RWSt4bXNNSFNLV2Nrcy9wcWxUQ3dSOFk1V0hOTHk5UWhGUDZiU0pBb0hkbk5HQ2E2eCtxdWs5Z0dWSklEQnVoUEtid0ZBL2R3eGtVNk1QT1pmUzI5YlRtM1hMN3BsTm9KdHpmdk00MTZVWVBTanVvNEdhUWpoZnFpbUtZSm1jUTk4UktEOWtTTWlaM3pNUm4rYzFDczN1RGVCUmhwRXRwandhcmlnc29tQ2doREJ0aVhNMk9WanpkcnVlc242THVjYVFtTDdvUHNPOXhKSE9tRHIwTGtPVDhQZEJjYzdERzBQcHN3SUY1TzUzaDdJa0g2Ni9LZmlseDdReGllT04reUd1Slg4NkppUDNidTV2a3Vzei9wNjRQdVA0VFVrVUN6eTM4VEx3OTRYYTRDdjdzczZJUzlGd0t5eE5xV2YzMlk4MDNod2U2dGJsT2VLdTFISXYwMXphb0xjTGhzTUxoWDcwNVh1YUcrdmNSM1RyKzdkdTdocDZyNWJBbEhzMGlraWUwM2dTeWQxL2ZzL05tYnpNVXVLYnkvYUhqTXUrZlFXOUQxS3dFUEpleEx6bjhLeVVPc2E2ejRmV0ZsTjdnVWxweHhJRkFxeC9hRy9SdGk4blpNTmNZOVphQzRURys5clhyZFo0bkhOUDRLdGJ6cnhlNml6TjRxVy9pNEFJekVSQUFvR1p3S3RZRWFoQW9LWkFJTFJaN0RjbDk4QkVIZ1FxRElvTnk1SksvSmNFMmxUQzdiSzFZTzRhNUsyd0I0OW9Ec1dPR05FSG9WQUh6UFk3THF5Qzc3WjdiTkVwQy83WVBMdlB2Y0FKTjBvY1ZESmZxNC82NDRBSHIvOEFnUDBSaytZU0NMQWZIdGtZN0E4ektza0RPdDVHcGJlRzFNUk5LdU51UDJPRU1LQmZKa1V6RkFxTXZlMlZlcmpBdzFHS0ZLNGJBV0ViQlFJKzQwWk5GcHNtRUFqZDh1R0I2QjJhbTU1dml4aC91WTlJSUpCTDdwejNhSFI3ZDhEN1ZVbnZReXlWUm9IWGpCQUc5RnRNSTg3ZDNlM0lXQnFoVzM3TW84UmF5VmNYeXdCckdSSlM1L2RZSnFIbllvVm1xV1dWTUtZdGVjNG1EMnZlN3E2bnJOOGlEY0lQeS9TY0VkczN2STEvU21PSTVDM0xmcUpYSnQ3RS9yRDdnN1gzemQzdmRzc2RZMFMzMnN6UUtmVEt3Ti83bUpUem0rUjNrSVphUzVCcjFZdENHOTRrNTNld1pLSVJsOFpvM3Jndm5WN2tSRVpqMThTK2VuSE1VSHowTjRVcVRpSDNFenBHOWFrRkFsZHdjeWFGcXlVU3g4eTlDb3g3MWlYRjJNcjE0aUZPMkJJajJGaWJRQ0QwL2E0aHRDd3hGcXcrTERGSDU5YVQ0NFg3WjQ0Wlg4cnhSam5YbUxYV0F0WjRYL082TlRRR2xyQW5HS3BmNnJ4ZThpd3Q5emVqOTBSQUJDb1RrRUNnTW1CbEx3SVRFcWdsRUxoR2MyQnlNZ0FhSzJOUzdvR0pCQUl4ZExmN21kREJIc2t3RGl6ZFFwNCtBaE5kQXRLTk91TWQ5dE8zM00zYnI3by9XR0VQM3VwdUtlWEdqN00yV3pSNjBLUENtTmpGbDI3Y2ZmSXdpKzdaYXlhR1dtQ1lraE1MRkpLeXFlR0doamZDNk5vME5zMGxFR0JmMGhWKzZHQ0o3ajBwRHVEWVNrM3NhN3F2M2kvMXhZam42UnI3enh0REZ0MzU1eVpydkhjUEYraTIrNFRtZHZDVkl3dXJhUlNQcklMM29KSEd4SU5pTTBsNGpyY0hlUk95bjlvd0tYU0pYVHB0bWtDQXQ3RDV6ZHBwQUZSTkkydGJuQVFDNDBkb3pNMmtFcUY2T05mUXNNSWJyNlVUYjlNeTNOQlJrY1pUYTYxVTgxQThGS09ZWEN4RFFzcjhYb0l6dzBReGJNNVlRK1pRWGNaeVh2cWN6VFpiODNaM1BXWDlGdnRyN0JMOTI4L2ppYzF2NkZCUHh2Uzh3YlZ3ZS91NHBrQ0FaM0JjeTlHclZlcnQraFF1WERQU1dNcTVKUGRXZThwdmt1MmlLT0VWaGxlbmxEYlF1d1M5d0pRSUlUZlZub2NpRlBZdmhkd2xFL2VvRkNYbWVxYngxZVU0dDE5bDZMQ3BCQUkxeGtxM2ZXd0hQWUNrZU9EcDg0azF0c1lLdkx2NVd3YlRrdU5tYkY2V1I4UGFYb25HMUgrcEhnVFlKaXYwVG82QWRhNHhhNjBGclBHKzVuWHIwUGhjMHA1Z3FINHA4M3JwczdReHYyZTlLd0lpVUpHQUJBSVY0U3ByRVppWVFBMkJ3S2ZjNFFYZDE4VW1DUVJpU2VtNVZBTFdZcGI1OGFZZFhRcm5KaDdDMDRnNmxQb0dmeXZzQVdNOTNyZ3hUdlBRTXlkWkhoT3N6WlpWSmxYTmJCTmRiRTZSZUZESmVIczAyT2NlVkxLZTFqam9HdTdvTllDM1kxS2w2ZVFOQUFBZ0FFbEVRVlRTSEFJQnhwcWxPR0RJRU5uV25menU1cDVMNWNkRFJicXFaaHpNV29tMzFjanVFNWtGeEI0dXNQOTVRSnB5ODJ2YkJBS2hiMU1KWVpHdml6ZEpJTUJEWmY0bTZTcStuL2hiNUcwcWlsUnFKZ2tFeXRDMURIMWpSVE4wVFUvdlJseC8xRW9wODZkMWk1OTFITHQrOExXVGNiQjVjOWlYTEplNUtmUDdHTmE4bWM4YmEvVHlGSFBiTTZlc01RS0JOY3paWkdMTjIvMzFsSFZMc0thaGlXdGRDcjdvMm5rbzhhWTZ3MSsweWZwdTVPNTNtYjgxem5QR20rK2RNY0xTbUxxMmEyN2VtRSs1UVozU3hyRmh0ZHF5ckRCaEtYV3lubjJmRTNIVDZGNGkwWmpJa0hLeEZ6WlN5MnpyeXhCbkRJOHpsTVo4MDdyNTBlREVrSUErc1U1cTNYM1BVeUJBRDJjVTJlV2tXR01ydndYMGFKWXlsOVNhZzNQYWFiMFRFdjVOSWV5eTZoZjYrNUlGQWpIelFHcjR6TG5HckxVV3NNYjdtdGV0L2ZHM3REM0IwTy9ER25zMXo5TEcvSjcxcmdpSVFFVUNFZ2hVaEt1c1JXQmlBalVFQXJ3aG5icmh5VDB3a1FlQmlRZk1Tb3Q3S2dER1RmZWxNVGNCTFlVOEQwMWUyaXM0Wk1UUFVYNjMyYk11RkNyUUlEeVU2SlZnSCtmdElLY3JZd3pTT2ZuR3ZNTkQxOE5IaUFSaU56VzhaWjdpL2FTdCs5UUNBY2JkNU0yMUlaZTNYWjUwSjBwalJxbzRnQzc0ajYxNHFOaXQ0NWVjNFo3aW1OUVVlN2pBMytHTEV6UGZOb0hBTGdDTzk0UmY0RzFaeGdXdWtUWkpJTUJ2SkEyZFEzc2x4aFdubUN6MzBEbVd2ZStncjViWGlkaDY5Wit6akM3V3dXQnV1Ykh2MGJQUVNVMHNiQjVBRHFVeDNvZDRLNXBHUlFwR2FxY1VRNTlscUsvaEFjTVNUY2JFbVkrZDMzOCtBbmFxcTlUY29uS05hV3VaczhuRm1yZjc2eW5MU0c5NW1NanRDNzRYRWlmUUM5SytBTDdiS1dCVEJBSnMwaG1OT0dLdlRDOVBzYi9KL1NPOFlJM3BQd3J5YnRlNDFoL3oyN2ZtcWpIMUczcjNLYzU5ZitxNnZaOVg3RDVoYlAwWjVvTmVEeGlXYlNqbGZ0TzZlZkg3U3c5WFhNdFBrY2JzT1dPTXJSU1RVbmhFajVzcGFlNTFVVXBkUTkvT1Z3TzRaOGJlTktYOE1jOHVXU0RBZGxubldxbWk3cm5HckxVV2lCbnZhMTIzZHNmblV2Y0UvZDlRN0x4ZTR5eHR6TzlaNzRxQUNGUWtJSUZBUmJqS1dnUW1KbEJhSU1EWXVqVGlEVzE0NkM2Y3J2NjRrT3NuQ1FRbTd2Z3RLKzVtenZEbG03L0czQVM4bERNb0Q3bHU5QjJLV0J1aVZPVjMyNTI4SWNJRGZNYkpIRW81Y2VuYWZGSVBtc2owSDV1YnRQd25iNGwzMDY3dTBKSGZDN3JxamJrOWtXTGtHR3A3ekthR2JtSVpPbUhvRzJYOVpLWVVDTVM2eXM4OTRJck5uMHpvdnByR1k0Ylk2QjdBVXJoQWd3WGR4dktHck5YSDlGUkExNnF0bTE2TGQvdDM2N2ZFd3dYZTZLYnJWb3JYVXRLMkNRUkNvVkxvVllOQ2t4cHBVd1FDRFBmQjhUWVU0N2ZFQVhrTSs5QjNUZ0tCR0lMblBNTzUvVU9HQjVWYk9TRlZTczRwYmpkcGdIeTJLNFBHdXRaZ2RBRjNvNWtoV2g3Y2VOaTVoRkVCcnI4Wko1MzVoVkpvUGNQMyt2SFdVOXJ0ZXpiMDNlRTdGRkp3SGdtRlhZcVozK25WSTlkSW1HT2NzdFpBREVYQ09ZL3IwKzc4bVBPdFdOT2N6VDYxNXUyaDlWVEl6VDkvRi93dDB1VjV5V1NGTnhqeVhEQzNRSURqam1JMENsMFpWNTFDcHE2aG1Xc3pycnQ1RTVzZXdhekU5UjJOc3FsaHoySitrdzhGUUVNV3p5TDZpVjZsNkdHRlJ0VHU3NVppRWM2MWZ4WHgzV3Z6NVBmRDUrWE5hai8vYmdrRUtHSjZSOFB6WGMwNFBCWEFtYjB3YnZ4K1hNRnhmQUNBQ3hxRjVud0QrbG1tZkJQNExubS92Qkc4dkw4Sk0vV0RUbVk3dWpCNVpOai9WcldQY1gvR3VlV1BQTzBhMjU0VVYveGN0OVBqSEQzZGZhMFRLcUR0QTNvUmUzaEVlSmd4SHA5aWpLMjhLSkRqQ1NIR1lCb3pwbXMvRS9wMjF2cGVsMnpUMGdVQ0I3aHZwNi9OWDJuT3ZXN2t2a1V4WE9ZYXM5WmFJR2E4cjNYZDJ2YkxrdmNFL2JFVE02L1hPa3VMR2NkNlJnUkVZQVlDRWdqTUFGMUZpa0FsQWlVRkFqVHM4QllIRHlHSEVoZDVURU11NkNRUXFOVEJ5dlovQ2RBdytNSEdZTTBEazZFMDV2QWlKRDd3Q1E5aUZ0ZzVoOW5XamNkY3hYN3NRUk52eHZJbUNYL2ozUU9tMERDa1N6VWVzajQ1SXZib0dIZWhNY3g1KzRXdU9Ia2cxazA4T0tOb2d3ZVZiYnU2aDAwOEVPWk5pV004RGJVT0YxTytmNHlGU29QM1RZemZObDB5ODRaQjZtMWxIdXJ3WUcwL0kzOTZpYUZoNnBzUjM1akx1SnMvM0RTR0VnOU9lU0Nja21JT0YzZ1lPM1FRZDZRcjcrT2R3MXlPRXdwc0tHb2dBLzYrYVppYkswMTVHNXpqa0lmYy9UVEdxMGtNdDAwUkNMVGZiSzZybnRDNzZWYnFScURGVXdJQmkxRDgzMm1FNTdlUWhrZGZpam04N0w0YmEraWdZZSsrem9PQmRZdVUzemZPb1J4am5KZDhLVmFFeFZ1YXpNK1hMSGYvOFlUUGZqSjB5ekRXa0JBenYrZXNxVmkvMkQ3anM1eHYyUTgwVU1XdWdkaG45Q1RCTmRDMUFhU3VSOWMyWjVPVE5XOFByWW1zV01NeFFwTFVzY2wrb1FGNzZPekw1eUo3RG9FQXZ4Y2NkeFFHMEdWL1RHS2J1TDU1dmVFcEtzYUR4MUI1MW0rUzV3VjBvMytMM3N2a1RRUHVGNHhHTU56SFFXNE5GL3J1TVp1eEhpYUcxdkEwSUZOMGNCaUEweE51UWw4WUFMM1cvYVhSUG41RCtCMjJ2djgrOXJFaHRiZ3Y1TGZucXhHRGh1SnVDblg0elU1SnFkKzBmdDRVaEhEZkV4SWEvOVN0dWZnY2IrZUhFc2NPeFZuY2I3QS9mR25JUTBoTXV5MWpLOE9Tc0o1OTBUTEZEZHhyY2kvWkNnSlpWNjRwZWJaR29TNi9jeHh6UzAraGIrZlkzK01VYlYrNlFNQVNWcWIrNXVZYXM5WmFJSGFOdmNaMUs4ZHg3UHB5emoxQjkvZG16ZXU4cEZUckxHMkszNzNLRUFFUnlDQWdnVUFHTkwwaUFnc2xVRklnRUdyaWFjMEduV3BYdWlpV1FHQ2hnMkdEcTJXRkFXRFRoMElCeENBSnVYa0xoUzRJdlpmcnVwaUhhb3lkNkVzMGVyNHVwbEdkWjJKanQ5T0lmdWNtdk1FWEUvTnZINmNSbVFkVmxtRTYxMTJvdGFuaERYTzZ1Ty9HZytZR213YzVQS3dKSGRMUlFFTTN5VC96dEwyVVFDRFdFTUJETHhydlU4VUIvSjN3b1BCeGdUN2tvU2pIMlFzaUR1RzYyZkNRNjFIdThNdVgvWmVkdTk2K3g0blFrTElPRjNob3dBUG9yb2NQQ25mdTZHNFhoZkxtVFRzZXRxZHl6UHdKREw0MnBVREFkOEJDMTdFM2JnNjBlU09sUnRvMGdVRDNtMGFtVjNJaE5McHVxQ21NNGdFMUQvRkx4UnBtdVJJSWxCMmgxcUZqcWxjR0Nydm9TYXN2UXV2V21tUGlQdTdtYjBwcmVGdU1OMWg5WVdjNGg5RnJEL01QSmNhczV1MWpYeDFMSHU1ejdxVFlqRzdHaDFLczF5TnJmaDhUR2lHbXoxaDNpZ3NaU3oxR05EZlVWczZSZEZmL1RPZDYrV01SbmIvR09adk5zdWJ0SVlHQUZXczQxU0JpNGVYWXBCR1B3cEtoNURQZ1Rpa1FvTkdBd2txS1Z5MmpxSys5TWQ3QmNrUkIxbSt5WDUvY3RhWDEzV001c1VJakg2UCtHcDdyWHhyS1kwVkEvWHhqYm95T2lkRWVFMUtMWG1VWWpvN3pVYW9JZ1o0bktKNmpONGVZTk9hM3VadnphakRrWmFJdE8zWk4zNjhyODZZZzVjcUJSc1FhS0x0WldNWldocUhpZDZKTnNXT2Zjd1RuOTl4eEY5TlhKWjZ4dnRWRG5sZEtsRnN5ajZVTEJDeVBrV1NSY3ZsZ3JqRnJyUVZpZjM5clhMZXlqMkxXbDNQdkNicS9LMnRlcjNtV1Z2TDNyYnhFUUFRS0VwQkFvQ0JNWlNVQ014TW9LUkNnQndIZXlLUUlvS3Z5NXNhSE4wZDVlT1k3T0tIUmo2N2dVaE1QMlhuZzJUL0lwQnRVdXI2T3ZVa3hWQzdqWXRQQWUxWnFwZlQ4SWdrdzluUEl4U1FQTytoYVBzV05wclZRdm8wYjkwTkFyTEFIcWNaOEs0NXZydWdnNXFDSmJsM0picXloaTc5bkdyZTdSdm9oZGprM3phMitvdkdPaDNhTXc4NUVJelUzMXhRK2pFMGxCQUl4QjRxc0oxMkUwa2lSWTlTMk5xcjhsdk5Ba1lmbXFRZUtyRnRNRzFJUGpxekRoYzgzTWVHdjJya0J5SG1CYzlUWXNUcDJUTVMrUDVWQUlPUU9sT0VqZUl2YUo0Q0piWXZ2dVUwVkNMQzlRd2U2VndId0puZGJlTXp2ZFlpbkJBSmpSK081MzdlTWZTbnJCdDYrUE5adzYwMTMzdndHcG9aYWFXdHQzYlI4ajF1UGgvSzMzS3FYREROZ2ZiOWpEWlBXL0o0ckVJanBNN0xQOWRnek5GcDNjdk5WelA1bGpYTTIyMnoxdTgrd1liVjN6SzNyZmwrRURBNmgzNEQxelVneDJ2VHIxSTV6R3NVcDVPUWVOZmRiMGMzYld1Zm5pSUtzMzJTM2ZLNHQ3d1dBNjUyY3RhWDEzV05aWThaR3U0Ym5aWWVERzNFZmhVdGoweVVqWXRCVG9Nd2I0eWtweHFCZVluOFRZMXh2NjUwckVPQ2VnYUoyQ25wOTZTUjNEc1E5Yms2eUJETGNRL0QyUHNOR3hDYkx1RXdEZnl1dUlCdUtSU251MjVRVTh2WXlSdmd5SlIrckQvZHFRby9FaVBocTFUbm0rNXB5am1TMXQ5YVl0ZFlDc1FLQk5hNWJZOWFYUzlnVGRNZXdOZTVxbnFYVitpMHBYeEVRZ1pFRUpCQVlDVkN2aThDQ0NKUVVDTFFiUUJyWTZPYXd2Y1hFZjZkeGxnWXI2K0JrUVdqK041WjczeVVwRDFFZXM2UktycUF1ZEUvSi92LzB6SFcxM0xIeDlqaHZ5WEx6R3B0Q2VWcTNicTJ3QjZuaEFLejhjZzdJZVlEQm0wazhDUEtsOTdsNG9LVU1yakczNUhQY1BscWJtbTc3eG9ReUdPSTBWaUFRYy91ZTVWSUF3MjlVakdHaFgwL3J0aHlmNS9mNzhNd0QzTFk4NjFBMDlTRGFPbHpvdHJQMFdJMzlUb3g1YmlxQlFJampKeHVoREdPZDU0ajRZdHEreVFLQmJ2dTVmMkljMzFmMFhNR1grRjIxNVVnZ0VEUGk0cCs1bmJzcDZYc2paVjYxakhBbHZrOGNZODhHOEJCUGhXT04reUczLzh5YWJwQVp3M3hzQ3NXVlQzRnRiczN2S2YzVWJWUE1ucVhrN3plRjUxcm5iTGJSbXJkOVJuVEw0MFFwNHhOL1J6UytVMnc1bExyNzJ2N2ZyVEV6VmlCQUwyRTBkbjhxWmJBWXoxb3huSE1FeHRadnNsc2w3cXZwWFRCSEhNQjhLSkNtdUpnaUExL3loWHlMd1VpQjVIWGQrcmVFSUtNdDAvck9ocnpRK2VvZCtxYnlIWjdWMEZNSjE5cGprMlZjYi9QUEZRamNIQUFGNkw3UUFyekl3V2U0ZngrVHJMazVWYWdSTXJaMjYwbGhETVVCRkJwdVVncU53VEZDblNrWldRYnp1UVVDbktPNDU2ZG8zNWRpamV0OGY2NHhhNjBGVXRwZ2ZVK1h0bTYxdmp0TDJoTzBZeXhsWGk5OWxqYmw3MTlsaVlBSUpCQ1FRQ0FCbGg0VmdZVVRxQ0VRb0tLMmRmbkgyOWhVWHRPZ3gyUWRuQ3dKMTlDQjRwcnF2eFNXdVFjRHBldHZMV3B6NG15SHZCTFFiU0Z2dGZnOFVGZzMvbE1Qcy9aMDhZcVo3MURLMlJoWjQ1MHhFcmxKcG12NGtpbm0wQ24xd01icS8yNzlTeC80anhFSXhNYW5HN3VSRE1XTEpKdlkrTlV4NDRDM0d1aHRaaWh4enRpbmlZM0xXK3N4eVRwY2FQTlk2MFoxS29HQWRhaE1kN1FNSVVMQlVPbTBEUUlCR3JaNE1QcFhBL0JLSGhLSHZuTTVjMERwdnU3bVozMFhVdzRHYTlYVHFtT3M0ZGt5d1BIMzFWMHJqMm1QZFlNMFpoeFlnc3JVOWNsUWU2d2JYeWt4NWEzNVBiYWZ1dlg4d3lia0VkMmw5dU5FZDU4cDdRRWtwZC9YT21lempkYThIVEtpMDFzVlhYVDdVcW9Yb3FGOFFuMXZ1YXUzMXMxakJBSmNEOUpZbWh0T0lEUytRbUhQK0I2TjVQU0FFcHVzMzJTYkQzOWovTTZPRlJsYkxxYnBBWWtlS0NoNFRFMFU2WEtlemhVdytNcTdZbVBnL21BamJyaTA1d0d1NittSkxsYjBHL1BOR2l2RzZGYzF0SjV2bjgwNUI3REVRT3dQZmdQcGdYSnNzbTd5cG5nS1lsMWlqYTF6emg5am1mbmVENjExWWdXS3RlcVdrdS9TQlFJeDR5eGxEVDNYbUxYV0FpbHRXTk82ZFcxN2d2YTNFenV2OC9uU1oya3B2MTg5S3dJaU1DRUJDUVFtaEsyaVJLQXlnVm9DQVZhYlJyN3JBSGhwWjFOdEhaeFVibTVTOWhJSUpPSHlQcHh6TUZDbTVQUG1ZaG5CVWpZaW5BdGY1ZHhORHRVM0pxLzd1VnN2USsrbmNndjl0bkxFRHpIeDdYSmMvY2YwYlV4YzNkUURtOWhORFYySUhsQTR4cU5sWkFvZEdNZTRUaDByRHJEaVJhYU9SYXVQTFc4WE1RYXN0Z3pyY0tGOTdpbk5BZThUS2h6d1dtMGQrL2NwQkFMV1FVWGJCbm9CWW5nR2lqdEtIcFJ2ZzBEQUV2cVVFckNFdm5NeGM5TFk4WnJ5dnZWZFhFSjlyVHJHR3A0dG8yYkp0bHBya3hqanZqVW5wQXE1aHNhRkpXcE1FUUZhODN0c1AzWHJhZDFHbyt0cDNsNzlac3FnTC9TczFUOUxuck9Kd0pxM1Eyc2lhNzVLOVVJMDFDV2h2WUtWdjdYUEhTTVFLRFI4QnJPeHdwNDlBc0FSQ1JXd2ZwUE15aEpiSkJTSG1QS1d4djRDN3ZZNHhSZEQ2U3Z1d2tXc2Uzc3JsRjZOL1UwTTk1enZrU1g0b090dDNzQk5DUXNZR2sraDM2M2xFYkNmYjR5eHRaYkFQdVUzVStQWjBGb25Kc1JSalRybDVDbUJ3SG1wMVJpejFsb2daVzFzcll1V3RHNWQyNTZnSFEweDMzcytXMk91eWZrZDZ4MFJFSUVKQ0VnZ01BRmtGU0VDRXhHb0tSQVlhb0oxY0RKUnM2T0trVUFnQ3BQNVVNN0JnSmxwNWdQV2diUjE2NzliYk1qSUdic0pzVFpHUFB5Z3dNWksxaUZUVHZnRTYzWmE3Y1YvS0lZaGVhUzZQSTNkMU5RUVBWaEdKdCtoWll3bkJScDdianZTU0dHcDdrc2Z4Rm5lTTFKdVRWbS9JWTZWa3JkenJkOWk2YjlQSVJDSXVRSFdiUmRkbU5POWVDbFh1OXNnRUNBL3h0TjlXVUJVVnNKZHJnUUNaWCtCMXJjN3h2QnN6Yy8wd0VPWHo0d0xYU3FGREVXeE4ybXRBOHdVSWRkUXU1N1hDUEY0MjNzb3BjWjl0dWIzbUg3cTFzUHlic0JuR1M2RUxuN25TR3VlczhuTG1yY3RRNjRsaUtYQmxhN0pjNUlsUUxBOEZGajdYS3R0T1hVdThZNDFwbEovNzladmtuVzJ4QmFwN2JLOElLU0tIRkxMejNrKzlCMU1NVXhiOHd6clZtTi93M3l0dVNMbkhDREVKU2MvcTIrczg0RVVEeG94QW9Ibk5sNHpIbFpZYkd1MXNmYmZMYThQS2FLLzJuVzE4cGRBNEx5RWFveFpheTJRSWhDSStSYWx6bU45Q2lYV3JkYTNlcWw3QXJLSW1kZHJ6alhXNzFaL0Z3RVJtSUdBQkFJelFGZVJJbENKd0ZJRUFqOEM4UE9NTnRMUXhEWU1KU3BkeHlqTFArVGlHWFpkKzFrSFB4bE4yUGhYYW16a2M2Rlp0K0pURG1OQ3QyMCsxN2o3MzlzWkprTjEzYVc1SFhLOGkyMDU5RnpzTGZuTE5LNFdQeEp3aFJ1YlQ3Y09vVTBRbjdNT1NYUDdxSDNQTWlMek9SbzJYeGRaVU15bXBsVDgybjZWTENQVDBJRnhqRGlnaEVHUmRRMTVzc2p4UGhIVEpROEh3Rmk2UTRuOXNFZWs2TUU2WEdEK0thNnFZK28rNVRPMUJRS1dhMVZmVy9uZDRtRWZoVHBqMDdZSUJNanA4czRsN3BVOTBNWjZBN2xRNDcySlFqY2VkdmRUNmtIYjJINjEzcmUraTB1b3IxWEhHTU96WlhqTGlUTnRzYjJXYzQvUDhUQ1U2Sm5tYlVZbWxxRTBkcDB6Vkl5Vjk1T2FsM2lMT3paWjgzdE1QM1hMc294RnBRMmJzZTFzbjF2em5NMDJXUE8yWlVTM1hLbS9CUUJGTXZSNms1cEN4czZZTmFLMVQ3VGFsbHJmVXMvN3pnUGEvRjhENEtDRXdxemZKTE1xL1kyM3Z0Y1VOdEpBdEtRVUdpOHArMmNyWEVHT1VEeVdrK1VWTEtVZExOUGFxNmVJK1dQYndEbUo1ejdrT0pSU3hvNGxFRmlUcS8xWWZud3U1UFVoVmZTWFVtNk5aeVVRT0RmVldtUFdXZ3VremhIVzJuSUo2OWExN2drNEltTG05WmgxVW8zZnJQSVVBUkdZaVlBRUFqT0JWN0VpVUlIQVVnUUN1UWNtdnZyL3V6TXdVU1JRTWxrSFB5WEwycFM4VWc4R2FyYmJjcjNMc2hudjhlaUlTb1J1cXJ3YXdEMGpid2FFRFBHeEJ6cVdhOUJZVHdSdHN5M2hRdXJ0L1FpY2c0OVk3akpURENzeG01cVVma3RwazNWbzJmLytXVVpFbGsxeEFHKzBVR2srSmxsQ2pCaDMxRG5saDVpa2ZET3N3NFdVMzNST08ycS9VMXNnd0J0MXo4eHNCQS84YmdmZzlNejMyOWVtRUFpd3JMR2lRZWJCN3dpL2ovMlVZb0MweEQ5ajR0S0dqRHlwQjIwanU5VjgzZm91THFHK1ZoMWorajAwajhWNkd6Smg5aDZ3akgyeGJFUHJrekhpc1pDSElvYmJZS3p3enlRMDJwcmZZL3FwVzV4MUU3bTJRRExVOUxYUDJXeWJOVzliZTBLdTVibitPOFFES3RlWVlZMmpHT0dLdFUrMDJwWXc3SXMrYXEzN1N3c0Vhbno3ckhHVjJvYWlnRDJaaGVhSGxMVXd4OVU3QWhXdXRiOWhrZGFOMkpSMk1EOUxvSlVpRG8vdFErdTNuekoyTElGQTZud1UyNFk1bjdPK3lUSGZ6am5yM3k5YkFvRnpFNmsxWnExdmR1eGF0VnZicGE5YjE3d25zTDZUN0llYWM4MlN2aEdxaXdpSWdDTWdnWUNHZ2doc0RnRUpCTkw2MGpyNFNjdHRPNTVPUFJpb1RhV0UwZGxhSUtjY1hvUU9kV0lQNEVPSDJUbjhMWFZ6clkxaXYrK3RXNUFwcnVpdFBtUFpxVUtLMkxGcUdabTZCOFowYlV5UEQvc0ZNcWZML0FNQTBIZy9ObGszZFJoZWdISG5TeWZyVUNEMkVOM0taeW94UzJrK2JYNDFCUUxYQUhDeXU2MDFWUC9IQTZBeDZ0QkE0MmpNdTJOem9QdmVFUUNtRWdpTXFLTDVhc28za2Z1b1J3STRMSkFyMXhxSFI0ck11dGxJSUdCMlZkSURJVThuekNqbUptUG9zREkxeG5SczVhMzVMdGJZWWNXQlRoSHB0WFczaEpveFRQc2NyUGFtL0Q1M2RvWTIzeHljSTJDSTdiZVk1OVkrWjdPTjFyd2RNLzliWS9PRnp0TVYxOUd4cVlSd3hkb254clF0dHI0bG51TnZoL01HKzRSZU82N3F5VFQybTlHK2J2MG1VenkyeGJiVDhxYVcyb2JZY2xPZk8xOGpjS0gzcHF1N3RmeWpQQm1rN044c1VWUEt2alMxUFh5K1pFaUFrSWVVMkJBNU9XMElHWVZUNWhCTElKQXpiK2EwWjhwM1FsNWQ1cDR6Y3pnc1hTQmdyVlBZNXBRempibkdyTFVXeUJFSVdHdURuTjlmeVhYcm12Y0UxcnllT3U1eWZwdDZSd1JFWUdFRUpCQllXSWVvT2lJd2dvQUVBaVBnNmRWVkVyRGNNTWJjbUE0WjBGTU5rbFo5ckhocDFzMk5IRmU0TkQ3emtONlhjalpYT1lQRmN2bVlZbHl4TmpVMWJqTzFiWTRWQ0ZBY1FIZjRQS1QySlI2MDdOOTREemcxQitqQU81WUlJK1dBSWFWSzFxRkE3R0dtbFUvTTd6bWwzbE0vVzBzZ3dOOERYWXpmM05PZ05nYmlOOTB0VGNhZTNNSHo3RzhBUEFRQURUSXB4cGcydTIwVENMRGQ1d2Z3TWdBSGU1alNNTUM0OVB4K3A2U1FRQ0QyTjVWUzNwaG5yZTlpenNIZ21Qb012ZnVZcHE5b2VQRWx5K0JrSGVMbUdNTmoybWpOZDdGaGg2eDhjdHdHVys3aGMrSVVXL1ZNTWU1WVJzWVBPTzg5TkZUTmtkWStaNU9aTlcvSEdOSDVEV1dJS1FyVWhsS3FtMXVLNFk1MDhkU0g4b3NOVmJSRWdjQkZtL241RWdBNGR1akI1aXJ1bjc0UWZVUHR0NzUxL1hlczMrUVlWOCsrMzUzbE9TVzFEV04rM3h5ZkZ3UEEvU0tGQUJ6ei9OOXVqZmlQODBKTWloVUlXRjVGYWhyVjIzYVVDcFhBL0Y3aFFqd09NYW94YnRweVFrYlNsTDJFWld4ZDJsb3NaaXhhenp6UWVYVVo4KzIweXBqeTcwc1hDSVRDaWJXY1l1YlJtTEhQWjJxTldXc3RrTE1Qc09hZU9kZXRtNzRucUhtV051WHZYMldKZ0Fna0VKQkFJQUdXSGhXQmhST1FRR0RoSGFUcUZTZGdHZFJqRG1SQ1hnamVBK0MyQVA0cnN1WldmYXlEN2JFQ2c2RnFXcmNtYTIwVSszV3hObmtwTjVCSzVoWFp0Yjk5ekRLRWNSTi9uRE93M2llUU9jVUJ0M1p4TWxQcjRIdmVFb1A4Q01EUFN4WFd5WWZqbmdmV3ZoUjdLR0FkTHNRYXdpbzBzVWlXTlFRQ01UZllId0RnSmE0RmZQNE96aGpEUTI5ZmVoYUFSMmZFZmQ1R2dRQVpXcUZFR0VhRUFnNkdtb2xOSVFOSnltRmhiSGxqbnJPK2k3SGZnREYxQ0wzTGNmOWFBSGNMUEdURkpiWkVib3lSem5tc2RLS1loMlBCSitxeDFoWGQrb1FPL2lrSVlxZ2J6bCt4S1JUalBlZmdsdVZhODN0S2U2MDVwWlpYblZoK2E1K3oyVTZMY2V5M0tuVGpuK1draElLNFp1TzU2UlFBTktiM1U4bzRuMU1nd0Z2cEZBRHMwNFJLdTQ0elRLZUlBRUpqTU5XNFh2STNHZnZibUVNZ3dEVVJCUmQ3QTdpQit4OUZSckVpZ0ZEYll2YWpmTjh5RnFhSXFXTlo5NThySlJDd0RHZ1VwREpjRlA5Wk9sM2FpVGVIOGswSlhSa3lMbStpQVkzaWRwNTljUHlQK1hhVzdzOHgrUzFkSUdBSkdYa0d4Vy9TYVpFUTVocXoxbG9nZHgrdzFIWHIydmNFMXJ5ZWNpNFhPVFQxbUFpSXdOSUpTQ0N3OUI1Uy9VUWdub0FFQXZHczlPVG1FTEFPOEVJR2NPdVdVYzVtSmxRZnl5TkJpUkFGL1o0TjNacU1EWHRRYXJTVTJxUmJtNXFhQjJpV0lldzJqZWVBM1EyWDR6UWswYkRDVzk4bGt4VnlvMlJaS1huRi9vNnN3NFc1alRrcGJSNTZ0b1pBNFBhTjRlRE5BZU1oalNRY3N6L3BWZWhtQU43aU1hQzBqeDdsUWxMMDN3MXgyRmFCQUpudysvMzJRRjh3akFyN0s1YW5CQUpqZjNIbnZHOFpYZmdrK3liMFRiWUVmT1ZxbTVaVGlzSGNDam1VNHNyZHV1bWFHNmZZbXQ5VDJtdk4xN0Z6VTFxUHhEKzk5am1iTGJYbTdWaUJRTWd3eFhKaVBXanhiT3ZaemhQT1VFK2tDSCt0L1VWczIySkdCT3ZOMytlREFkelptSnRqOGdzOUk0SEFPWFJveEtZUW5KNlRyanNXYk9EOVdJR0FKWXhJK2Y3bE5xZVVRR0FYQU1kWDVwclR4bElDZ1NtOE9lUzBiOHc3M0J1d3o0WnNCTEhmNERIbDEzaTMxTmxEamJveHorczFRakQrcmkvb0tZQWVkUFpvOW1QMEFoZVRRdTJ0T1dhdHRVRHVlbXVwNjlhMTd3bXN0WGJOczdTWWNheG5SRUFFWmlBZ2djQU0wRldrQ0ZRaUlJRkFKYkRLZHRFRTlteVUxU2U1K05wREZYMDFnSHQ2M0dYL1FYT3I4NFB1OW1mLzNkeWJBVlo5YUVBKzJrTTBGSGVTTjA5dkRJQWJ4WlMwcEkxeHFicFltNXFhQjJpV3dZSGhBbmpyeTVkNFUrWk9BSGdidm5TeURyTkxseGViWCt5aFFLM0RoZGg2MW42dXRFQ0FIaWdvRHRqSlUzSEx0VDBQdzQ4RndEall2a1JYckR3OGp6MlkybWFCQVBkVVR3Ynd1QUJQL2tZUGp3emZJSUZBdVYra2RjQVljMFBMK2o2VnEyMWFUaW56blNXS1RMbjFIMkw2Q3dBM2JVTG9mRGl0S2YvN2RNbjVQUlQvbW1XVk5QQm1OQlZybjdQWlp1dDNrY0s0eEUzQmttRXZyUDVKYVp0dmZIRGV1QWtBaHY2NWRzNGd5bmhIQWdIZ3dnQWU3NFFCSVc5S0dYZ0hYNGtWQ0ZoejFldWRpL0NjRUZDeGJTa2xFTERFRHJIMUtmMWNLWUZBU2o2bDIxQWpQMzZMR0hid0VFL21LVjVjYXRRdk44OVNadys1NVZ2dldldVUxRkJJb2ZiV0hMUFdXaUQyTEtEUGE2bnJWcXU5VnIvWCtudnNucURrV3J0V1c1U3ZDSWpBeEFRa0VKZ1l1SW9UZ1lvRUpCQ29DRmRaTDVZQWpWdGNERE11NUZBS3hUZ01LZVZ6WXlOYTllSG1temVFK3NsYXFPZTZWMS9TeHRnNmJLVjdZeG9zcldTeGl0MGNXZVVNL2QwU0NGaDU4bFlsLzFmamNNL2lhOVd0MXQ5akR3V3N6WFpzUHJYYU1UYmZrZ0tCR0E4QU1jWm9Ia2EvRXdCdlF2Z1NieEVjMk54cVBEMEN3QlFDZ1ZJSFhMN2Y4cGp2QjIvQkh1TU1Qa080VWdSQ29kc3BKUXhURWQwWi9ZajFYWno3dHh2eXpzTkd4c3ozMXZjcEdsYmhCMVBIcStXcEtEYk1RTWlZbTNKTE8zVXRsTkplYTA2YyszZGsxYS93VUluT0x1WDNhdjB1VWhoZkZzQ0pMcmI3VUdWanhsVm9YS1lJWUZpKzFUOHBiUnRxRDkyZ3Y4aUo4S0k3cDhDRDJ5d1E0TmtuUmJvdnc5a2lnYWxTckVEQStqMmw5bDFPK3lRUU9JZmFYTWJXbkg0YiswNUlYR1Y1UUJ4YmRzMzNsM1FPMG04bnYwZXZBbkJ3QUlEdjNNajN5bHhqMXZwMnBhd3IrbTFiNHJyVmFtL05NUjNLTzNhTlBPZFoybHhzVks0SWlJQkJRQUlCRFJFUjJCd0NFZ2hzVGwrcUpmRUVMTVY3eUJOQTZNWit5UE5BcUhiV1pvODNjbS9SM0ZwaFBQaHVzbTZOM0wrSlEvelNlQ3kvZlhKSkcrTlNoNjF6Ym1vc1E1alZSVDl1YmxYdTM4UjZwcWVCMHNuaVc3cTgyUHhpRDl0NEhyd0FBQ0FBU1VSQlZBV3N6WFpzUHJIMW12cTVFZ0lCZmwvdUFPQjFnZmlxYkJlTi9qd0U1ODFvSyszV2VMMTRkNVBubFFNUGZ0L2R0clZ1QkcrN1FJQUk2VUdFaHF5aCtOZjgrNWNhenpVM0IwQ3ZNS0VVK2oyTU5VeFpZeUwxNzlaM2NjN2ZyalVuczYweEFqenIrNVRLck5UenNZZUJiWG1NbTNxeUM0VXpWSWVZdFE5ZDRUS2NCdWV5b1hUWEp2ODNaamF3NVB4dXpZbHovNDZzK21VaUhQMWF5dS9WK2wya01uNWlJNkE4MU5NQ3l6T0ZGYVlnTmV5RjFUK3BiZXMySzBhY0Y5dVJiU3gzN2k4KzZlWVllcks1cWllRFZDTnp5ZDlrYkp1czIrZXBiV0M1OUJUdzJNRDRpcTFiK3h6M2NSUXMwdlU2MS9SWEFmQW9UeVlTQ0tUU3JmZDhpc2gwTG1OcnZkYjdjdzZKcXppZjM2UHhrTVV6bGJXbEpaMkQ5Tm1GUEZtMno0WkNaUTcxeFZ4ajFsb0xwS3dyK3UxYTRyclZhdTljdjVQWVBjRWM4L3BjVEZTdUNJaEFKQUVKQkNKQjZURVJXQUVCQ1FSVzBFbXFZaFVDMXUzQW9VMkp0VEJPM1pCMUd4YUtLK3M3SkFxMUlmWmdLWFdqT0NiZm5JNThUSE5BUjFIR1VFcXBpOVYzc1p1am5EWllockJuQWJpWEVUKzJsa2pBT3N6T2FXK0pkMklQQmF6TmRtdytKZXBjSTQreEFvSHpBZUFCM2hHQk9QZXNkNndCdXR2R3l6aURYeWdHTDMrakZCMjhLd0JIQW9Helk3Yytzb2tuZWxpQVU0eUFveVRMR3VPNW02ZjFYWnp6dDF2cUFOYjZQdFZtN01zL1o3NGJHODRveENMMWxuYS9YU1huZDJ0T0hHUGdMZEhmVnYxS2xKR1RSOHJ2MWZwZHBESytKb0JUQW11b0Z3S2dxK3NoTDB4M2FZemliL0EwbUNJM2hyMzRiQUlRcTM5UzI5WVdmZmttWk5nSmhpaXZYODFmT2s4bkh3UEEvMzNaL1grMjY2emV3OVp2S05XNGJ1V1g4dzJ5dXFHMFFDQm1YaDZxMC9jYVVmZUhBSHl4RVVsK3ZCRm9mZ2JBR1kwbk9ONm83by9CMER3WXU4ZXhmaytwZldkeEh2cTdQQWljUTJVdVkydE92NDE1SnlTdTRqaVA5U3cwcGc2MTNsMnlRTUE2di9xT0N5OUpUMjZ4YWE0eGEzMjdVdFlWUTIxZDJyclZhbTlzZjVWK0xuWStubU5lTDkxVzVTY0NJbENZZ0FRQ2hZRXFPeEdZa1lBRUFqUENWOUd6RWdpNVltYkZlRHYyOXIxRHROQ04vYkd1OUhLOEFUelBIWG9PZ2ZSNUhZaUJ2cVNOY2FtNnpMbXBzUXhoM096djZHTEQ3eERvb0JTMzdUSDl6R2Vzdyt4bkFEZ3ROck9Dei9GQWZveDcrcllxWXc4WENqWXBLNnN4QW9HZEFiekFjRVBKU3RGWWNFQVRFb0Rmak5SRWQ4ZHZEcmpIWjM2OHFVZ0JETnN5WktBcGFkVDI1WlZ5K3l2RW9FYUlnYlk4SHJieVZ2cCtnUXBZSVNCS3Nrd2RDNm5QVzkvRk9YKzdGUHNkR1doUTdBR3NkUmhJb3libjhha1RmL09NVVp0eXMrK0d6b3NBNTZxaGRCc0FSd2NhRXJybG5lb090MTlNeWZuZG1oTnpEYnlsK3RpcTM5TG5iSEt3ZmhlcGpLMTR3OTl5YzlSWGU1MWdlYlVJQ1F0OC9XbjFUMnJiV0U3TTNORFc1NzNPRlQ3REx2d2dZZEJadjZGVUk3T1ZYNnhCSXFFSktDMFE0QjZRNjV2UXVwejFveURnSDV1d1MyUkVVUUNGR2JGSkFvRnprN0w2OEFzQW5qSWdjSW5sbmZ2Y2Y3ajVMOGJEMWx6RzF0eTI1YjUzUzNkV01tUWJvSWNNZWd2NlNXN21NNzlYNnV5aGREUG8wWVRlNE80WXlEakd1MVgvOWJuR3JMVVdHTHNQV05xNjFXcnYwdmNFYzh6cnBYOUR5azhFUktBd0FRa0VDZ05WZGlJd0l3RUpCR2FFcjZKbkpYQUJaNHlod24wb0RSa0FRcmY4eHg1MldZdnUvb1p2RndESE4yN0JmYmQzeHh5NHY4SVo5SWE0ME1ESGNBYzhoSndpaFRhdEthSU1pKy9ZL2d1eHNBeGhQRERtN1dEckJqSEx5TG5wSGFyYnd3SFFnNEV2NVJ4bVR6RXUyaktzemZiWXc0VXAyekpVVnE1QTRJOEJ2Q25nRXJ3dHE0Um5paGlSQU11ajRZUmo3ZGU5aHBZMGFxOVpJRUFzVnFnQnE3OUtzcXc5OXEzdjRseS8zVjBCSE50NHZiaGVBRUNzNjl4cnVadk5GL0xrbFdwMHE5MG5vZnl0T1RURUpIVFQwSElCSDlObXEyNHA4N3RsNEIzaktTcW1MZFl6YTUrejJUNXIzczVaZDl6RXJVdDlBaFo2RUtCZ3JwdEN4b1BjY1dtTm41eTJNVnpZaTQyQndmQWREd2J3VFdzQWVmNXUvWVpTdjFWV2ZpbS95ZGdtV2NibGxEWmNFZ0JGRnRjSUZQNVRBT3diaWdqNjY1cllPa3NnY0c1U2RBdE83d3NVOFErbEd1TW10cTlpbjV2TDJCcGJ2eExQV2FLc29lOXRpWEtueW1PcEFnRnJuaU9mbkhCTmM0MVpheTB3ZGg5Z3pVTlRyMXZYdmlld2VLN2grenpWTjBUbGlNRFdFSkJBWUd1NldnM2RBZ0pMRVFqazNuaWhrWlR2OXVQMjhoQ2RNZjM2TWR0VHVqVG5obFZLL25wMmZnTFdRUjdGQXpRVU1IRXp6STBFYjVRTXBhZTVPSlZqV3BYaUNzM3lPR0RkNWd2VjArSXkxUUc1dFJGSnVSVnM1VlZ6VTJNWnd0b0Q0MWgzcHJ4ZGYrdUllT1F4WTlHcTJ5T2NlL3FZdk9aNHB2Ymh3aHh0NnBhWktoRGc3WktIdXJBYy9QZFE0anpKV3lnbHhENFhBM0FVZ0gyTU1oblBtZCs1N2cyN2trYnR0UXNFK0EzZ2dSam5rNkgwRm1lUW9EaHFLSlZrV1h2c1c5K2VzUWVEdWZXM2pIRXBybk10ZzlYN0FIQ3U1dTNFTmFSUXZHSGZMVzIyYTA4QUo3bDFWTCtkNzJsaW9OKzJFUkRGM016ME1TbzV2OS9PaVVkOVpURWV1ZS8zT1VVZldyK2JwYy9aWkdUTjJ6bEdkTXNid05DTjFwQVhydHh4YWEyZlU5c1dZNmhtS0M3dWhYT04xT3dUNnplVVlseVB5YS9HbXR2NjNxYTB3Wm9IS05ibEhwRmhHOGFrRWdJQnkraFVnM1cvemFIZlVteW9oSmh4UTA5cU53Snc1aGpvbGQrZHk5aGF1Vm5ueWo0VTFpVzBGcGl5am1QS1dxSkFnSE1jeFVnSEJocVdHNjVwcmpGcnJRVks3QU9XdEc2MTVxaWw3d21zZGNJVWM4MlkzN1hlRlFFUnFFQkFBb0VLVUpXbENNeEVZQ2tDZ1ptYUh5eFdpNXdsOWtyWk9sa2JrNjdSUHhTVHVOU3QrcHM1cndCRDgyeS9qSkEzZzFqM3h6NmExZ0Y1Q1RGRVRFOWFOMGxTTmxKemJtcXNBLzN1Z1RHTnVuUnJleDhERU4zUU1iWTcrM3BNQ2hsdW1POFlUeFJqNmhYN3J2VWJMbkc0RUZ1WEdzK2xDQVN1RHVEVnhzM250bzRVQjFCa3dwdGFwVktzU0lCZUJCN2RFUW1VTkdxdlhTREF2dUJ0NjJONllSdDR3TTV2QXIxQ2hJeEF2bTlOeWdGOXFmRmc1V045RitmNDdWNmg0YzU1eFhkN2tXMUtNUnhhbm40KzF4ak85M1poUGl4ZVMvaTdGWnJKZDNNdFpEekt1ZTNXWjFGeWZnK3R3MWh1anZ2ZWtuMjM5am1iTEt4NU85V0kzdks5QzRBM2VHRDNoVDFjWDU0YzhMS1RPeTVMQ3dSQ2JyelpWSXJHdUI5SWNXcy9oT2ppamNDUCsxNnVJNFpTaW5HZDc1ZjhUY2IrZml6alMyd2JMTEVKdlV2d084RjErTmgwUHdBdjhXUVNPMjliN2E1dFZMY0U5TEh0SUFZcnJ4VFBjV1A3SnZmOXVZeXR1ZlhOZVM4VU1pZ25ORXRPSFdxK3MwU0J3SjNkL0JheXhlUjZicGhyekZwcmdSTDdnQ1d0VzllK0o1aGpYcS81TzFmZUlpQUNCUWhJSUZBQW9ySVFnWVVRa0VEQTN4RVNDQ3hra0Zhc2hyVlE3NDZCMEtIeDF3SGN1REhnVURVL0pvVkVDTXkzZTNNdEZBYmczYzdUd1ZtWmxhRnJaYmFkaDJSRGFhcmZobFdQRk9QMW5Kc2F5eERXUHd5UGpUZExReFk5V295SjhXaHRuTWVPcGN3aEdQM2FGSWNMMFpXcDhHQ01RT0RDN2xZK2IwbkVwRzhBNEpqN1JNekRpYy9FaWdSNElFNTN5RFJxU0NCd1hzaGRONklmYnVJYTN3M0ExeUw2d3ZldDRkeTB4d2ozMHhGRkp6OWlmUmRMSEF5bVZDb210dXR2QU5CZ2QwSmt4cHRnN09nMjFYSXJQT1N1TldSNExMVjJLam0vVzk2WjVoWjFySDNPNW5peTV1MWNnWUJsOU8rT3o1Q1k0RFFBQndENFFlVHZ2UHRZYVlGQVNGenpLK2UxNXdNWjlleS9ZaG1aWTQzcmJiNGxmNU94elN2VkJ1c2JVRklrRkJvdnNZWjFockRoV3AzaW9hRVVtMDhzNS81emxyZ2t0ZnlRTjcxU2d2emN0c2E4TjVleE5hWnVKWjRKZldkelE3T1VxRmZKUEpZbUVOZ053UHNCOEJ2blMvUXV1QytBNzJhQW1Hdk1XbXVCRXZ1QUphMWIxNzRubUdOZXp4ak9la1VFUkdCS0FoSUlURWxiWllsQVhRSVNDUGo1VG1VRXJkdkR5dDBpRURwODY5NVVDQjFZbERvc3NqWU9yYkdXaHZ2am03ajExL1UwYnV5R3lycTVQOVVOanRETkdqWTlKZFRCbkpzYXl4QTJkQmdlYTJnOURnQVB1bk5GQXBaSVpxdzNDdXYzTi9idlV4d3VqSzNqbVBkREFvRjdPeThTTDJyQ1FGQWtFSlArMWJuenpvMVRIRk5HN05oOU9ZQkRBUHl4Ty9qYXFaZDU2cUV5WDk4RUR3SnNCL2RhVDNjR3FtY24zQTcxZld0U3dySEU5SEdKWjZ6djR0aDVMS1dPc2VGZGNtN3JodFlPcWZOWVNwdHFQUnU2MFR6a1dqajBmS21iaGlYbmQydE9uTnRBWmRWdjZYTjI2RHZkanRsY2dRRGZEeGxjMi9GSmtkeVJidTAwOUR2SnZZVnBsYysvcDdSdFp3RHZhRzZxNytmNU1aY1VxMWlDM0cwU0NGQWN3djJXTHpIOHdFc0xmR0E1Nzd6V0NRQ0hzb3RkQTFuNU1POVNkUjZxcDdVT2oyMUhtM2ZJUXg2Zm1jcUxYVzRYejJWc3phMXY2bnNoY1ZXS2g2WFVjcWQ4ZmtrQ2dkaExBL2R3MzVNY1RuT05XZXZiVVdvZnNLUjE2NXIzQkNYWDJqbmpWTytJZ0Fnc2tJQUVBZ3ZzRkZWSkJESUorQVFDdk5VWGNsMU5Bd0FQTHJvcFpnTm8zYXpJYkVhVjF5UVFxSUoxY1pueXNJNEhjTDdFRzlvMHhyL1R1UUllZXE3a3dVdklLTjRlL1BLQW1Fcnl2a0dOZFN0eG84Z1NLckNjTVFlb01ZUEFjdkdaS2xLWWMxTmpHY0o4QjhhWGR6ZFZyMndBZTZYcmo5d1l6aUZ2RkN3NjE5VnVURCtQZldhcXc0V3g5Y3g5MzNkbzgzcDNTK1NoQ1Jrei9BQzlERXdSNy96U0xsWW1iOElQSmQ3RVpvZ01pcXZrUVNDaEU0MUhKUkJJWnhrckRqZ0R3RjRaTWFjdFk5UFFyZnYwVmt6M2huVkx1eXZjSTF0NitxRVFxSjlLM2pRc1BiK0hoS05zUnlsaFEyNnZyWG5PWnB1dGVUdkZpTjVuK0lmTzlUczljZzBsanMrUE55N2llZXVlZTlsK0docy8yOXJucHJUTnVwbGRTcHhNQnBZZ2Q1c0VBaUVXSmZaWTdaaXoramZtWEtYTnl4cDNOUTIzSVhmenJGOUtPL2o4dGR4dm1KNFJodEpIQWV3L1FoaWQrOTJOZlc4dVkydHMvY1k4WiszTmw3eGZUR24zVWdRQ3NlS0FIUEZxbDhkY1k5WmFDNVFTQ0N4cDNicm1QVUhwdFhiS2IxTFBpb0FJTEpTQUJBSUw3UmhWU3dReUNGanUrRkt5ak5rQVdodllsUEpxUHl1QlFHM0N5OGpmT2t6a1RRVWFZRC9ZeEltazBhdWZZc1o5U2t0RG02WDI1aG8zT3J4MU1wUkszU2dLM1JCZ3VXTmMyY1h3dUtHTEQ3dWo1K0ZVMS9kemJtcHlCUUpzK3ZWZHpPdUxHdERhMjlnNWNXaXQyem9VeDlDWW15dEFpT252M0dlbU9seklyZC9ZOTBJZUJPaWlud1lDMyszQ3RteU9DWG9iNEkxSmZrT21TcGRwRG5yZlB1RHBoT0tBaHpnakcrc2pnVUM1SG5rNGdHY05aQ2NQQXNPTUdWYUFvWHNPTmJxQTQ1UUgzMi9LNkNyTEpmejNtN251cG01T3pjaCtsbGRpUFNxRndpYVZORmlWbnQ4dDRlamNmYmJtT1pzRDFwcTNVNHpvL1I5QVNKVENaemxuY2oxL2hPZVhNMWI4WWUxelU5cG03ZEZUamZhK2o0Vmw5T043cVdXVi9rM0dmT2hLOFNyaDlqK212cUZiclh3L1pYOFpDb1BIdkVvS3NycHRzd3h2cWUzZzg1YVhsTlJRUHpGOVVmS1p1WXl0SmR2Z3l5dTBOLys4Vzh1Y09VVkZLcGV4QklHQUpiUnVFWHpGN1FOandwRDVzTTAxWnEyMVFDbUJBTnU5bEhYcm12Y0VjOHpybFgvcXlsNEVSR0FzQVFrRXhoTFUreUt3SEFMV1pqcWxwakViV2QrbU8rWEFwRnNuWC8yWGVCaWV3bExQVGtmQXVpM1B3MFFlalBtOEROQmw5eTBhZzllUENsWFpPaGlodDRKcnVCdmpRMFh5bHZBOUN4Z0NMZUVFeS80Ymp6RnFMQXIyQ1dPVTN5dVFVZW90aFRrM05XTUVBa1J3SXdEdkFtQ0pCR2dZZkhTQ08vSVdyOVhYUEZqazRlTXBZenUyd3Z0VEhpNVVxTDZaWlVnZ2NCQUF5OHRFU3Z4NnN6SVpEd3pWait1QXd6dmZLQWtFTXNCNlh2R3RzWGlBeU8vSWtnNXVyZTlpeVlQQklWeThQY3g1NW80UitNY0lzS3o0cHl6K0tRQ2VVR0Rlam1oS2tVZENSb0t1aS91UW9iMms1NlhTODN1TTBZdkNVYmFCTjRxblRtdWVzOG5LbXJkejk0UnRQNFRHSi9lcTlLSnppWUZPSzJGRVhhTkF3QkxrRXBVRUFtY1BtSml6anBqdlFjeThrRkxXWE44c2E3em5Nck84RW95OU1SM1RSN25QekdWc3phMXY3SHVXK09wSlRVYnN0MDFJY3dzRUdQTGxEWTJ3KzBvR3pLNDN0akhjNXhxejFscWc1RDVnS2V2V21HLy9VdmNFcGRmYVk4YXMzaFVCRVZnSUFRa0VGdElScW9ZSUZDQWdnVUFCaU1waTlRUkM3aVRwU1lLdVNIbkxjQ2pWaUlVWWNtLzdqd0F1RjdnMTNIWHZPNlpqT05jejlqVnYrdnJTajUyYngxUEhGRFR3N3MwQkhBZGdCMCsrT2Q0TDV0elVXSWF3bU1Od2hycDRjNEJKaTZwdmZJM3BtcGpOS3NVQmJNZFBZaktjOEprcER4Y21iTlp2aTdJRUFuendCbzNyOHhON0lVZm9OZUJ4enIzMzNKNGZkblB4ZkJrcTR6Rk5QWjhCNE5jZG1CSUlsQnRadnNQNkpYcEVzcjZMSlE4R3U0UTV0MUh3eERBZGRQRnNKYzVGOUtnejV0dG5lZVNoSVdoZkFIU2R2SVprM1RqbU9vUjhYd1hnNElFR2pYWGozcyt5eHZ4dUdhaEtIY3puOVBlYTUyeTIxNXEzWTlaRUlXNzBEUEs2U1BGUE41OFM0VDRzZzJsSzI2dzlPdmNtdHdMd3M1eEI1TjdoYjVscnl3T05QQ1FRT0FjUTErTnZHOEdjcjFyN0hENlRJaEN3akxmTWo5K3Myd0k0ZW1UZDI5Zi94SzA5TGZGeVNqdmF2QzNSeWhpdlBvV2E3ODFtTG1OcjdYYUZoR2s4RDJCSXNjL1Vyc1JFK2M4bEVPRDMrSkVBS0xhSVNieW9RVzg0WTczRHpUVm1yYlZBeVgzQWt0YXRhOTBUMUZocng0eHpQU01DSXJCZ0FoSUlMTGh6VkRVUlNDUmdIVDZrWkJlekFaUUhnUlNpZW5ZcUFxRU5DcjFSZkJYQTNnT1ZhVjMrdjdkd1JVTzM3bmdqbURlZmFIVHJweDhDMkJQQTZZWHFRMDhGSnh0R2xDKzVnNjZ2RnlyVHVoSE5ZdTRSQ0xIZ3E4YWNteHJMRUJaellCd2JKNXZ0enhFSnhCeFdqcmxGYXcyUHF6UUdKZjZQNFF4UzBwU0hDeW4xS3ZWc2pFQ2dQemJlNTR4eTN5eFZpUUw1WE5jZFROUG8xZytESVlGQUFjQXVDd293NkVhem55UVFBTTdueERUUGFUeXk4SFpXVE9KdmljYWdNZUlBbG5OSlowamhuT3BMcGVmU2Jqazd1OThmUTM3dzluU0o5RUFuUUJyS2k1Nk1lSEJOY1FWLysvMDAxbzE3UDc4YTh6dlhXTzhId0gyU0w5VVNTY2IwejFybmJMYk5tcmRqMWtRV0k4dDllLzk5cnVkcGJPZVlIWk5LQ2dRc2oySmpqWElwNjhwdEVnaFlJVHpHZnI5aTlqa2NnekhuS3QyeGFoblYrV3lwZVlZZWVJNENzRS9FanlXMUhjd3lScmhTOC90TGtSRzlDekVVemc4aTJ0aDlaQzVqYTJJMWt4OFB6ZmtseEZYSkZhcjR3dFFDQWE3UmFEU21zZi9Da2UzSzJldjdzcDVyekZwcmdaSUNBYlo5S2V2V3RlNEphcXkxSTRlN0hoTUJFVmdxQVFrRWx0b3pxcGNJcEJQd0NRUjRnRTgzb2I3RWpTRVhzOTBVc3dHVVFDQzlqL1JHZlFLaFF6aTZIUDJweDBoT28vaU5BZkEyWE1rVWlrL0czeVp2anczTnhhV05RQ3pqeWU0bWNxaDlETFBBZzVReDhlK1l2eTltZWJmc0V3RGNyakUrL0R3UitKeWJtaElDQVRZM05sNDJid2t4UEFNMy9MRzNDbUlPNDFnSDNtcWdBYkp2NUUzc2p0OCt6bklmNUZ4c1A3NDVGRHdzTWFPcER4Y1NxemY2OFJpQlFEczJudTV1SURNc1N2ZUcvdWhLVk01QUFvRnlnSDNqcGZUY1VLTEcxbmV4MU1FZ1hTL3pSdnNESXR5MWR0dFZ3bk5BTnorNm8zK3hBWTZlV3U1a3JMOVQySE1PcHdIblpRQW9HT0l0NGRTNTAxZGU2RGJoNXh4dkNoSzRYK2ltRW03YyszV3FOYjlieGw3V2cwWXFybjlLQ0VVNUgvNlZDK2Z6YWFPajF6cG5zMW5XdkYxQ0lIQVJaOXlqaDUyWVJPOGQreGNRQTFsakpxVnRWZ2cwdG90aW5QdG1yc2xpUFZPeG5HMFNDRkJvZlpMYmF3Mk5uVEVlWHpndXVVYmJMMkpReHB5cmRMT0ovU2FNbldkU3hBR3NYMm83MmpiRmlLQVlQb256V2lsaFBNdSt1dnRkY2Uyd0I0QXpJdnFxKzhoY3h0YkVhaVk5SHBwalM0bXJraXBVK2VFcEJBSVVyWEtzSFFMZ0w1MG9KclpacFR3SHRPWE5OV2F0dFVDcGZVRGJ6aVd0VzllNEo2aTExbzRkOTNwT0JFUmdnUVFrRUZoZ3A2aEtJcEJKd0NjUXNBNENoZzVBWWphQUVnaGtkcFJlcTA2QVJrL2V2a3hKUE9TaDRydDBETm9MdUFNazNtWktTVFhDSGV6YTNMbzhOdUxHNWZjQjNNMGRrc2NhcGR1MnRVWU1IblJlTnREZ01iZEY1dHpVV0lhd2xBTmppZ1I0ZStrK3hzREljWDg4NUtwK3FCaTZKMlZZanBDSXpCcTNQQmpob2Q2ek9rYTduSU9BcVE4WHJIYVYvbnVzUUtCMHVWUG1KNEZBT2RxKzhjS2I4TGNwZUh1OFJJMnQ3MkxxOTREZkZNNVh2Sm5EYjlrQkFIaUx1QzltamFuN1N4dEQ0Y01hYnl3bHczUFFNSFNNYzhNYnFzTTNuSmNjaWpyR3BLdTZjQjZjWDVoS2kwUkNidTdwOHZ4d0p6RHN0NkYwUFpoL3Jmazl0czg0M3pJTTFYTXp4MHhYeU1GOTJWNU5TSitQUlhUK0d1ZHNOc3VhdDFQV1JDRk1vZHVDL2Zjb1ZIeEJCSFBya1pJQ0FaWmw1ZGMrdzk5YjdOcWIzMHF5NFcxVlh5aXZmanV0YzRIKzg3VitreUgrbGxmRTJEYjhRZU1aN1lNQWVOUGZsM0p1NGw4QndGczhYbFdHeW9rNVYrbS9SemZ2RkN2dGFBelV6emRHOVRzM2d1dFBXUU82OS9jL0J2QW1BTHYzL2p2SG51K01PS2Nkeko3N0hZcmJoc0xVZEl0bi9oUkZzMTZ4djRHaFpuUDhQS0haMjlCd3gwUVBnaElJbk0waTVKMmlsTGdxY1NoV2ZieTBRSURuT3J5TXduWFo5WjFuS25wWGl2Myt0bzJsT0o4ZVR1aTlZOHhZNzhQYkZvSEFrdGF0c2V2TEplMEo1cGpYcS83UWxia0lpTUI0QWhJSWpHZW9IRVJnS1FRa0VGaEtUNmdlY3hOZ1RPTGpBd2NjUS9YaklRSU5DVFZTektGZ3Q5eGE0UTVZQmplemRMTm94Wm5rc3g5cDRxRSt3dDFrdG00eGN6MXhOUUQvQUtBMVlvUlk1b1FXYVBPYmMxTmpHY0pTRDhOamJ5RHhJSUVDbHRoWXFTbnVacG4zVTV4WUljWDlKZ1VnN01lSHVsQVozZjVPTlFqeVhjdlFrSk5uamQ5emJwNFNDTVFaeWxxK3Z2R1FlOURiN3pmZmI3bUcwVE4xeklSdW04WWFSbExMSFBPODlWMGNrM2Z1dS95dThXWVdSVmpXL0pWVFJzcGNTaUhXbzkzTnlOaURZSW9oS0N4a0ROdCtHSVVhWXpUa3hwMEdidjRlKzZtVUliYWJiODM1UGFYUHZ1ZjZqSWYzTVdFcGFEVGdyWFdHWHJtMmExQ0tNVzJOYzNiTXZKMjZKdkw5RnJuZU9ORVRrcXY3enBlYmNCTDdOa1pHSHNTUFRkYmFQYlZ0MTNRZUphejFONy94L0czUjQ1a3ZjYno4VWVPdDZ4VUQzd2NhaXZuOXVKTG41ZFE1cE9adjB0ZStVZ0lCY25xK3U5a2JHZyt4d21oeVpkL1FJeHVOM20yaXNJZ0M3RnQ3Q2tuNUZyUlpzTzdQQnZDUWlJSE0rWTZpSm5xZnN0YngvQzFSUk44YXo3dlpmN2J4cGtmdmJselhENldjZHJUNXhJWmo0UE9udVRyUVlCMDdmN00vNkdXSGdrRE9aOTJVdTI2Y3k5Z2EwZVZaajFpL2g3WHZzNGFnaFBvd0MyS0JsLzROd0YzZE9DK1EzYm15bUd2TXpyR0hYOHE2bFIyUXNyNWN3cDVnam5tOTlGaFhmaUlnQW9VSlNDQlFHS2l5RTRFWkNVZ2dNQ044RmIwb0FqRTNScm9WSG5QZ0VkTndhOVBVejZOV3VJTzJuQlJYcEh5SEIwL3ZCdkNoeG5VZVhVQjJFMjk0M2dJQVJSbXh0enZIeHRxYmMxTmpHY0pTRDR6Sk1pWWNBNTlMZFg4Y0t6N285dWNYbk1jTEhzN3hvTEIxWWQyNlQyUXM1NzFkbjRjT3VYTU9tYXpmU1U2ZU1iL1BxWjZSUUVBQ2dkaXhGdnJHcFJwM1lzc2M4NXoxWFJ5VGQ4NjduM0EzcytnZXYxWktNZWkyZGVBMy9CM09BTU5icTEwakpvMDJWMjdFalRkeUxxdDVPODJYYWdnRTZJTDU1SUhicEw0Nk1Cd1RiN2grdFREZzJ2Tjc2dnFIemVPOFNNOGRYQVA5ZDZlOUZQTHdVSmhyb0dzTWNFaGRXNjV0em1hVHJYazdaMDNrRzFJVVh4eHFqRGVHVHVKekpWSnBnVURveG1PL3ZqUTRVNXpDMEI0VTZMUnJNWDRYNks2ZE44YUhCQUQ4eHR5aE1hb3l6QlBYYWtNcGRRNnAvWnNjcW1NcGdRRHpEdDJZN3BkTnc5MnIzRytkdjNzbXRwL2ZaWTdsUC9mY0ZINjVFMSt6ejRaUzZyZWd6U1BubThCUWNkeXpkVU9idE44cWlzNThjd3ZISEExdTEzRkNnNUx0YVBOSy9mNXkvMGxqR3NVWDdKdTJUNWdmdlF4UmRNUDZVaGpBVzl5K0pJSEEyV1JDYnRuNTdlQ2MvcGtTSDg4RjViRTBnUUREVTNFL0d4S0FqY0czVFFLQnBheGIyVjlyMnhQTU1hK1BHZGQ2VndSRVlBSUNFZ2hNQUZsRmlNQkVCQ1FRbUFpMGlsazhnWmhZbjkxRzhEQ0ZCN3cvcXRReXVxS2pSNFBRNFVXMzZGcmhEdG95T1Bjek52THJNMXppalVWRU4vUzhTVGttN3YyY214ckxFSlo3R0I1N3N5WTFOTU9sbTdpSWI0NXdoVDIyWC92djV4anpMVU5EVHA2bDJ6VW1Qd2tFSkJDSUhUOFhjZ2Y4akovY1Q2bkduZGd5eHp4bmZSZkg1SjN5THNNSTBJQkk5K0lsUXdyNDZzQWJpM1JIYnhrdFU5b1E4MndOZ1FETGpUSEF0dldqWndiZXBJMzFpQkRUTGo0enhmeWVhcVNLclh2L3VSeWo0SnJtYkxiWG1yZHoxMFJEekswYitLVU5YS1VGQW13VGhTUVU0bHc4ZDFBWjc5RnJDcjJodlZNQ2dkK1NTcm1KbjlNdGRQRlAwY2FmT0dQMlVCNDUzNEkySHdwemFmQ25nS3htYXNYYmo2b29FR0JmSE5TRW9Idmx4UHRQQ1FUT0hqbWhVQzF2ZEY3aFNvZGFyRGxtWS9KZWlrQ0EzNGxEbXUveVNSWFdUVjBPMnlRUVdNcTZ0ZVcvcGozQkZHdnRtTitubmhFQkVWZ1FBUWtFRnRRWnFvb0lqQ1FnZ2NCSWdIcDlvd2d3cnZwTElsdEU5NU1Qam53Mjk3SG51Y1AwbVBkcmhqdm9sazlYbURRZTd4UlRxWkhQOEdiS3c1M2hKdFpkcEsvSU9UYzFsaUZzekdGNHJIczZ1a0psVEc0S1cyTFNIQWFISEdPK1pXakl5VE9HejFUUFNDQlFSaUJBSXhBUHNNY0t1dWkybmZuMFV5M2phOG80bzFjUmhuaWhONXgrb2tINmFTbVpUZkNzOVYyc1hZWFd2ZkxmVjd5VjVXdkRIQWVDdGNabzdFM2JtbUdRcHByZnAxai81Qm9GMXpKbjh6ZGh6ZHRqMWtUOTM1eDFBNyswZ2F1R1FJQnRxaVZRb2ZlRXB6YWh2djZ2QkFMbitWem4zTVNQbWJmb1ZlMUFGejRtTkEvbWZndmFPakJzQ1cvUzA5Tk1qZFQxN0JZYTkyUGJ3YnJQSVJLUVFBRGdiNEFoQm04d01JQTRwOU83eEhFMUJ0Zk1lYzR0RU9EWVk2Z29YdjRZZS80UmczTGJCQUpMV0xkMisyVXRlNEtwMXRveFkxYlBpSUFJTElTQUJBSUw2UWhWUXdRS0VKQkFvQUJFWmJFeEJLN1d1TDMvQUlDTFJiVG9Ob0ZiSHhHdlJ6M0NRMUs2RnJiU0R3SHcxdWpwMW9PRi9uNEY1MG1BRzZ4YXFYU3N2VGszTlpZaGJPeGhlS3pSZ3U2cGVaakRlTHN4aWVFZm5nSGdyMk1lSHZrTWIrL1NpSm5xUHRFeU5FZ2dNTEpqSm5qZDE0YzVoOHJXZUtqVm5GckcxNVQ2Y2c3Z0xTTWF4UHBwaWI4RDY3dVkwdmFVWnptM1BLVzVsZnVXNWdEMlAxSmVMUHdzOTlOMCtjMWJrYlVGZHd6L2NuRGpCYWhHK0lRTE9wZm0reHQ4R0JlYXoveWtNRWRtTitYOFhudjlrL1BkYTVHdVljNW1YYTN2OU5nMVVYK0kwUVgyZXh1UjFJNjlQOVF3Y05VU0NQQjd3WnVrakJtL1E2SGZVQ3NPb0ZqSytnMmxlcUd4OHFzeFo1WU1NZEFpamczbkZkc2xYWEVBMzZrcEVHRCsvRjV4cm92MVJoZlREbzZYZXpmaEtvN3MzR3F1TFJCbzY4VVF0OEsyRVFBQUlBQkpSRUZVR0N5M2x1aWhMWWZyaFB0bTN0eWV5OWdhMDNlcHo0VGl0ZGVjMDFQcldmcjV1UVFDRkZ0UXRFcTJVd2dEV201empWbHJMVkJyNzdLRWRXdC96SzVoVHpESHZGNzZ0NjM4UkVBRUNoT1FRS0F3VUdVbkFqTVNZQ3h3cWxQcHFycWJHQStQTjNkTEo5OEdNdmN3eUhjWWtLdjZMdDFlNWJjdUF0YkN0MjNOZDVwNHdEY0d3SU9lbXVtS2pRdktEelplRFhnekxKUnFITFJaN1dKOGVZWWM0R0hsSmF5SEUvNWV5OTJ6MWJjMUdWcUdzTnp2WHhkcjdPMHlpZ1RvMXZUcmtYM0NOUi9qZE5JMTlPNlI3NlE4eGxpNURCL1JqUkdhOHY1Y2h3c3BkUnp6ckR3SWxQRWdNS1lQWXQ2dCtmMklLWi9QaEZ5OTM3MXhOZnk2Mkl3bWVzNzZMcGFzeG1jQjBNRDFCZ0RmS0pseGdieG9nRG9Dd0IwTDVOWFBndTVwZWNCSzErRTFENXRETG9qYk9qRzBBSVZnTmRMVTgzdTcvcUhIcVFzWGJCQUZjaFRrMFV0VGJraWxwYy9aeEdYTjJ5WFdSTjF1OFJrRGVEUDJ0b1ZEaTlRU0NMQTk3TnViT1lIdW1IQURIR2QvQWVCZEhRT3Y5UnZhVm9FQXVmTTNUcTl4ZnpueXQwNURQYjI5VWRUZHB0b0NBWmJEOGY5a0FBd2xNVGI1eEdaVENRVGEvcURJajRLWlVtS1psc3YzM0p6SnRVSnV5S0c1aksxais3Yi92dVY5cGVhY1hyb3RxZmxOSlJEZ1BIK2lFNG95Sk1oY290VzV4cXkxRnFnbEVPQjRtSHZkNmh1VFM5NFRXT3VFSmV5RlUzL3JlbDRFUkdBa0FRa0VSZ0xVNnlLd3hRUWtFTmppemw5SjArbHE4ekZHWGJtSm8wSDJyTXB0dW9BVDhQRFdkeWpSZFRSdlg4K1I2QmFOTnd6SWJJOFJGYUNCK09rVmIzWE91YW14REdFbERzTzVOcU03d3NNaStvQmhCbmdvL3MySVo5dEhhQkRoelIzK1BzYjBNL05qWDcrOHVkbjA2aWFFeGc4UzZqRDA2SnlIQ3lPckh2WDZOZ2dFYVBBNDNoay91bEJ5YnRKYTR5RUtlc1pEY3grS01ON3crNXM0MGhSTjlsTk4xKzRacUg3N2l2VmRUTTJiNFNOK0R1Q0w3cWI4aDVyYm1SOXJiczUvYllTeE5iVU9ZNTcvUXplUE10WXk1OVhjeEhBYWIybzhJVEZFRWIwS3NmOXJKOWI5RkU5NEM1YjlMUUM4eGYzVlNoV1phMzVuUDlHYkZOZGZkT2VkbXhnYWhPczQzaDdNRlFiMHkxN3FuTTE2V3QvcEVtdWlQbys3T0lGUTk3L2Z0UkUrTXNSQXlWUlRJTkRXa3dacmhqamp1cHZHMzloRWd5Y04zVnpIOWIwMVdiK2hiUllJa0MvWDJBenA5WnlNTlRDTjZqVE84eHZaL3g1UElSQm94d2NOVC9RYVFXOHlxWVoxdG9IdjhoczFKRFlMamZ0YW92cGRYY2duM3ZTL2FPeVBZT0E1Zm5QZjV1Yk1FamUzNXpLMmprQXcrT28xM1pnZFlsdDdUaS9kbHRUOFNnc0V6bkNDRSs2L0tkems1WTlQTkNJWENsS21XS05aN1o5cnpGcHJnWm9DZ2JuWHJWYWZMSEZQWUswVDV0NExXMHoxZHhFUWdRb0VKQkNvQUZWWmlzQ1dFTEFPVHBhSW9lYmlkSW50VloxRUlKY0FCUTEwYzMyTFJoRy9GNERMZVF4VzNCQi8yNm5tVDJpZXB5R25odHZoM0hib3ZUQ0J0cDhwWE5rWHdPOTd2RWp3SmdSdlNuMjhFU1I4MHJucTVPRUlqWGhLY1FTMlFTRGd1L2t1Z1VEY0dHR01XSTRUR2lxSFVxM0QrYmphNmFsVUFqVHNYc1c1bnVaY1NzOHRGSDcwRFRxL0FjQkRad3E5VG5VSCtUeDA1bjlid29GemFydlgvangvaDF6M1VEQkpEMU5jLyt3eTBDajJENzJjOGZZNlE0SlFIRENGMkpSck04M1pheDlsNTY0L0JTbzBzRkRvd1BBZE5BQXp6RVNiYVBpa3B6T09OWVlybzRHNmxBQmxzMGltdGVaU0FBNTAzSzgrc00vaEh1ZFRUdkJNUWZuU3ZOYTBhM2lLRTRiR0RXbndPOFY1NVJqbmdlWk1BOUZjQmtaV2kyZlQ5SVRKdGh6UWhQKzdqdk84TnlTMFk3dSs2MXk0YysvSnNJSVVFZGIwc0pNMnVwYnpkTWdyRmIzSzBZT0ExaHJMNlMvVlpETUphRSt3bWYycVZvbkF4aENRUUdCanVsSU5FWUhKQ1VnZ01EbHlGU2dDSWlBQ0lyQlNBcHN1RU9DTlBCb3ZobTRvNVJpMnJkc290WVpCeXEwSjN2aGtQWGtvL2YyUnhrSGVNS0UzanYwQ0Radks0MDB0dHNwWEJFUkFCRVJBQkVSZ21RUXNiM2Mwd2xPYzlMTmxWbCsxR2lCQUVjekpudEJ5djJqK2R0TkdrUEZoa1JNQkVSQUJFUkFCRWRodUFoSUliSGYvcS9VaU1JYUFCQUpqNk9sZEVSQUJFUkNCYlNLd2RJSEFQczNOclg5MHJqSjVLK3RYenExNzZ4R0VyalNId2tqUVRlSGRBVHc2NEU2ZDNpWjRnNXF1NDJPVFR5REFBODJqQ3NUM3ZFTGpHdlRtQTVWSkVRZ011V2pralVNZW5yUE5aTWRiYnAvdWxjTmJ4MHk4bVh4SkFIL1YzT3k3YmdTWUdtNjBJNHJWSXlJZ0FpSWdBaUlnQWh0TzRPSUF1QWFpTjRXaDlOYkdyVHBEZkhCOXFMUU9Ba01oV2RxYVU5VExNSFVNV2FJa0FpSWdBaUlnQWlLd3hRUWtFTmppemxmVFJXQWtBUWtFUmdMVTZ5SWdBaUlnQWx0RFlPa0NnYXM1RjYwWHE5QWpqSlhNT01zcHlTY1FvSEY5RDJkNFQ4bXYvNnd2WG5DS1FJQjVNajQ4M2JQV1Rvd2JUSmU3UXlLTjJtVXJmeEVRQVJFUUFSRVFnYzBtY0MwWHZ1SkNubVkrclFsdDhkak5SckJScmFPWHE3ZTdrQTFERFpQb2RLTzZXNDBSQVJFUUFSRVFnWHdDRWdqa3M5T2JJckR0QkNRUTJQWVJvUGFMZ0FpSWdBakVFbGk2UUlBeHRvK1B2TWtlMjJZK2wrdkNkQzBDZ2I4QThOb1VJQm5QTWtZOWIza2RuZkd1WGhFQkVSQUJFUkFCRVJBQmk0QzFucms5Z0xkWm1lanZpeUZ3UXhkZVlNZUJHdEVyR01NTG5MbVkycW9pSWlBQ0lpQUNJaUFDc3hHUVFHQTI5Q3BZQkZaUHdDY1FPQWpBQ1F0dEhkMysvbnloZFZPMVJFQUVSRUFFTnBmQTBnVUMzQlBRMEgyM3dsM3dhZ0QzYlc2ZC9USXgzN1VJQlBZRWNCS0EzMGxzWDhyalhHOGREdUIvVWw3U3N5SWdBaUlnQWlJZ0FpSVFRZUFDQUJoQzRGYWVaMzhJZ091ZDB5UHkwaVB6RStDYW50NjdEdkZVNVVuTmYzL2kvTlZVRFVSQUJFUkFCRVJBQkpaQVFBS0JKZlNDNmlBQzZ5VGdFd2o4R1lCajF0a2sxVm9FUkVBRVJFQUVxaEJZdWtDQWpYNE1nS2NXYlAxbkFkd2F3TmN6OGx5TFFPQ0tBRDRJNE5JWmJiUmVvYWppb1FCZUxIR0FoVXAvRndFUkVBRVJFQUVSeUNUZ1czTzEyYVdHWDhxc2hsNHJST0FQWGJpSVB4akk3OGNBYmdMZ000WEtVallpSUFJaUlBSWlJQUlySnlDQndNbzdVTlVYZ1JrSlNDQXdJM3dWTFFJaUlBSWlzQ29DYXhBSTNNN2RJQ3NCOWkwQTdnK0F0ODV5MGxvRUFoY0h3SVB6cStjME12QU80OFkrR3NBWEN1ZXI3RVJBQkVSQUJFUkFCRVNnSlhCK0FDOERjSEFBeWQ4Qk9FeklWa01nRkM3aWpRRHVBZUJYcTJtTktpb0NJaUFDSWlBQ0lsQ1ZnQVFDVmZFcWN4SFlhQUlTQ0d4MDk2cHhJaUFDSWlBQ0JRbXNRU0J3TXdESEE4amRIM3piZVJCNm5uTkRPOFlsZm0yQndMVUIvUFZBLzM3SnVXVTlLN0x2NlpiM1FRQ3VESURlQks3U2VZOWhCMzR2TXAvdkFmaVE0L2ZQVFo0L2lIeFBqNG1BQ0lpQUNJaUFDSWhBTG9IYk55TEhOd1BZd1pPQmJwem5rcDNudlFzQ29NaDAvNEhpdVM1bkdJbmo1cW1hU2hVQkVSQUJFUkFCRVZnaWdkd0R3Q1cyUlhVU0FSR1lsb0FFQXRQeVZta2lJQUlpSUFMckpYQkU0ODd6RGdQVlB3ckF3MWZXTEJyRmQrblUrVWNBWWczcXNVM2xqYmFMRFJ4WS85b1p6L2xQSlJFUUFSRVFBUkVRQVJFUWdUd0Mxd2Z3SGdBWERieXVHK2Q1Yk9kNjY0WUFUZ2F3NDBBRlBnZGdid0RmbjZ0eUtsY0VSRUFFUkVBRVJHQjVCQ1FRV0Y2ZnFFWWlzQllDdnd2Z1FnT1ZyV0VvV0FzVDFWTUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFY2dqOENZQ0hBWGhxeFZCRDlLUjBOSURMQmlyNG53RDJBdkN4bkVib0hSRVFBUkVRQVJFUUFSRVFnZVVUa0VCZytYMmtHb3FBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDR3cyZ1c2WXBSTUFQTDV4RFg4cWdER2htMXBpNXdOd0VJQ1hOQUlFZW1zS3BlYzZvVUtKY2plN3g5UTZFUkFCRVJBQkVSQUJFVmdwQVFrRVZ0cHhxcllJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpTURHRU9nS0JOcEdmYnNKNzBTRC9UOEJPRE9qcFJRRDNCckFQd0RZUGVMOTB3QWM0TUk2UlR5dVIwUkFCRVJBQkVSQUJFUkFCTlpJUUFLQk5mYWE2aXdDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJckJKQklZRUF0MzJmUmZBc1FDT2MrNy9md2lBLzJ0dit0Tkx3SzRBTHVsQ0JOekJ4WjdmSVJMU2p3SHM3N3dXUkw2aXgwUkFCRVJBQkVSQUJFUkFCTlpJUUFLQk5mYWE2aXdDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJckJKQkN5QlFNMjJVaHhBVHdNZnFsbUk4aFlCRVJBQkVSQUJFUkFCRVZnR0FRa0VsdEVQcW9VSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaU1EMkVwaExJUEFOQUxkdkJBSU1MNkFrQWlJZ0FpSWdBaUlnQWlLd0JRUWtFTmlDVGxZVFJVQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRUZrMWdEb0hBMndIOE5ZRHZMSnFNS2ljQ0lpQUNJaUFDSWlBQ0lsQ1VnQVFDUlhFcU14RVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRklKbkFKQUU4SGNNL2tOOU5mK0R5QVF3Q2NCT0IvMGwvWEd5SWdBaUlnQWlJZ0FpSWdBbXNtSUlIQW1udFBkUmNCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFZGdrQXJzQ09CakFBd0JjcVhERGpnUHc5d0ErQ3VEWGhmTldkaUlnQWlJZ0FpSWdBaUlnQWlzaElJSEFTanBLMVJRQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRWRncUFoUUw3QXZnendIc0NlQnlDYTMvRFlDdkFIZzNnR01BZkFEQVdRbnY2MUVSRUFFUkVBRVJFQUVSRUlFTkpTQ0J3SVoyckpvbEFpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlLd2NRUXVDdUNDQUNnZTJMM1R1bDhCK0N5QW53UDRtZnZueGpWZURSSUJFUkFCRVJBQkVSQUJFUmhQUUFLQjhReVZnd2lJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBZ3Nub0FFQW92dklsVlFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJNWVRrRUJnUEVQbElBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFLTEp5Q0J3T0s3U0JVVUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRZ2ZFRUpCQVl6MUE1aUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpTURpQ1VnZ3NQZ3VVZ1ZGUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVZRHdCQ1FUR00xUU9JaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lyQjRBaElJTEw2TFZFRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFSUVDQkM0TVlHY0FaeFRJUzFtSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSXdDb0pTQ0N3eW01VHBVVkFCRVJBQkVSQUJFUkFCQURRMEhNb2dGTUEvTE9JaUlBSVZDRndRUUEzQXZBWkFHZFdLY0dmNmU4QzJBdkFKNXhCOTM4bUxsL0ZiUTRCanVNSEFuZ1NnSzhEdURtQWIyNU84OVFTRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVlnbklJRkFQQ3M5S1FJaUlBSWlJQUlpSUFJaXNBd0NYVU1QLy8zSEFQWUhjT295cWpkWkxmNFd3Tk1IU25zTmdJTW1xNFVLMm5RQ2V3STRDY0R2QVBnMmdOY0NlQXVBVHdMNFplWEcveW1BOXdQWXlaWEZmMzhEZ0dNbEdJZ21UNUhGTzVzKzNMdjN4cjhEMkdNTGJ0S2ZEOENCQUo0RjRFb2RCaThIY01nRVl6aTZvL1NnQ0lqQTRnbnNCK0RPZ1ZwK0RjQnpBUHpuNGx0eWRnVTVyelA5YWlYMVZUVkZRQVJFUUFSRVFBUkVRQVFLRXBCQW9DQk1aU1VDSWlBQ0lpQUNJaUFDSWxDVndQa0IzQW5BaTV6M2dHNWhYM0kzUW5remRGdVNCQUxiMHRQenR2T3BBQjR6VUlYZkFQaTd4bDM3NFJXcjV4dmpMUEpwalhIM3NSWEwzcFNzdDFrZ2NFVUFid1J3UGMvNDVYenkxazNwYUxWREJFU2dLb0ZyQURnWndNVTlwWEJPdkNXQUU2cldvbHptRjNPQ080cW9iZy9nSitXeVZrNGlJQUlpSUFJaUlBSWlJQUpySUNDQndCcDZTWFVVQVJFUUFSRVFBUkVRQVJIWUVjQS9BYmhMQU1YN3R1eVFVd0lCL1M1cUU5aWxDUzl3ZkhNRC9ib0RCZjJpTVpiY3RQSGU4ZUZLbGFCM2tMYzc3eUQ5SW1xWGJUV0pkWHNpZ084MllxVWptbEFudWFFUHVCL2ZBY0N2clFKSC9IMmJCUUtYYkVKVW5OaDR2S0JoYnlodG83QnN4RkRTcXlLd3RRUXU0c1JFOUNEZ1M1d0xidzNnUnl1Z3RKc0x6ZFYrRzQ5ejYrdE5GQWxRWEV3eEJQOTVkZmZ2MXdHd2E3UEd1RllqakhpWUMxVzJnbTVURlVWQUJFUkFCRVJBQkVTZ0xBRUpCTXJ5Vkc0aUlBSWlJQUlpSUFMckljRERvcHU0QTZQMTFMcGVUZWtxL0JRQVA2eFh4T2ljTCs5dVpsMDVrTk0ydVkyV1FPQ2NnYkF6Z0ZjMnh1d2JqUjVsNjgyQU4rcGZVcmo2M2ZBQy9hemYwNFFadUMyQS95cGNacHZkMVFCOHdCM205NHY0cUJNT3pHSE11QUtBMXdPNG9hc1VmNGYwb3BBcUV1QmUvSkVBYmdmZ25vMTNsTTlWNHJqTkFnRWkvVE1uTktFUVl5aTl1Z21kY1YrRkdxZzArcFN0Q0t5ZkFBM0xMd1J3bjRpbVBOY1puRlBuZzRpc2l6M0N1ZXZvQVU4SVJ3RzQ5d284Q1hCT3V4QUFlajZnd2YvQ0FDamdZRWlpLyt2K3lUMGVuNlBJMFVyMGhIU1k5WkQrTGdJaUlBSWlJQUlpSUFLYlNFQUNnVTNzVmJWSkJFUkFCRVJBQkVRZ2hrQTN0blhNODV2K0RPT2w3Z1hnWXd0djZNMmJ1Tm04NmVRejlyRDZ1UWE3aFRmOVBOV1RRT0FjSkQ0ajZOcjZkRXg5YXh4eVB3L0FnenlWdXF0ejN6Nm16cUYzN3hjUVBEeXBlWkUzK0tkTTNEc3o5alNGS0R2MUNzNzU1dHpBM1c1djh6clVDUTFLQ3k2MlhTREFHTnZQQjNCL3oyQ2hXM0NGR3BqeWw3U09zbWg4NUExakNvSXU1MksxODlieFJWMzF6Mmc4Rm4zYS9mdjNBWHdCd004QS9Id2R6Vk10SXdtMFFxNVlBL0xTdnlmMGNQRG1nVG1zeGNINWpYTis2WG1vemIvOVhmR2ZUSnlmNk1XQTMybW1Qd0x3ZSs3ZkdTTG1LdTdmYWZDbkVMUkdlcmZ6UG5aV2pjeVZwd2lJZ0FpSWdBaUlnQWdzbVlBRUFrdnVIZFZOQkVSQUJFUkFCRVNnSmdFSkJNNU5keTBDZ1pqRDJxVWYwSllhMXhJSW5FTlNBZ0dndEVEZ1VpN2U4dTREQS9iekxyekFtYVVHY3krZkN6aDN6cmNheUgrdWJ4VnZLaDdyaklYOWF2R2JjemRuZUltNU9lcnpodkp2QU80RjRGOEtjdDEyZ1FCUjBzakxFRFEwT0EybGJRODFjSUR6QmxKdzJGWEppa2JMWndQNFdvWGMrYzJoeDVUL0IrQTJBUGdielVuMHhrUnZJTzl5bmlzK21lbWRndldob1Ria01TbTJmbDhHOEJYM01ML2RGRGZRVzFUTXR5cTJqRTE5N3ZidXV4NFNwZmJiL21QbjRlYlVCVUs1dHZNZWNObEEzVkk5Y2ZIN1NqZjlETDNUTmVxekNCcitXNFAvQW5IOGI1VyszbmdudTNIakllSmJTNjJnNmlVQ0lpQUNJaUFDSWlBQ3RRaElJRkNMclBJVkFSRVFBUkVRQVJGWU9nRUpCTTdkUTNNWjNYTEdDUThoZVFQcXdNRExTejZnelduejBEdXhBb0UxR005cEVHVi81dDYrWEVNYlMvVzdMNS9TQWdHNlpuK0hwN0RhTi9oRDRRVnFoellJOWRQMW05QUNMTCs5UmR4OU5sYVlaTG1yZmtEaFVCRVNDSnpkUzNjSGNHU2djeG1lZ3diWlg5WCtvUzR3Zjk5Y3NyU3FsbDZuOEJielBzM04vMGNBdUdXbHh2SzdRSzlIVHdYQTBDaS9qaXluOXB6R2V2MnJXMHU5MVJsSkpSZzRkK2VFdnZkOGtneDl3b0VsaTQ2c2RyRnRLU0tCaXp0UkcwVjBhMHdjOTdkb0JFTHZYV1BsVldjUkVBRVJFQUVSRUFFUkdFTkFBb0V4OVBTdUNJaUFDSWlBQ0lqQW1nbElJSER1M2l0OThGNTdiRmczUWhsWCt2Rk5QTlZ2MXE3SWlQenBZbnpvRnRkbkcxZm1wMGZrSzRIQU9aQjh4aFRlNXZ4T0JNczFQVUtEQkcvazlRMFRKUVVDdlBWSFkrcGRCc0RRbmZaTkFYQ2Mxa29QZEc3aGgvS25xL2lYMWlvNEl0K1FjY1VTSmxrZVVGS01NaEZWL2Q5SEpCQTRteFE1dkEwQXc5UU1KUnI3YUNRK0lSYnNCajIzYlFJQmlnd1pJdVhwVFd6NVMwelVqLy9lQ0FYMmNMZjNZNHFzTFJEbzE0SGVTeDduUExkdzN0ejJ0QnNBdXA3M2VYRGd0NTdmQ3dvYnlXMG9jWTZrUzMvZVVGOWF1cEh6Y2pFa2RtdnIraXdBajQ3d2dNRjU3YlhPaTg3UzJobGJuNUxycDlneTlad0lpSUFJaUlBSWlJQUl6RTVBQW9IWnUwQVZFQUVSRUFFUkVBRVJtSW1BQkFMbkJyODJnUUJyUCtUNjlXZ0FqM0x4Z0djYVd0SEYvbFBqOXZjdkI1Nk9QYWlVUU9BY2VENWp5bXNBSEJUZEkrdDQwTmZXMkhFVDA4cHJBampGYzFQK2hlNm1kYTNicGpUZXZkMjVhTzdYbFM2QWI5TDA2VmRqR2xIeG1aRGI2ZEROMGRCN05DYnRDK0M3aGVzdGdjQTVRQ25LT2pFUWYvdTA1cFkzM2UzL29IQWZMRDI3YlJFSTBHUEFuUUE4ZDBKaFFOdjNTeGNJdFBXa1VPQytBRTdhNGhBRXZoQXdMU09LQSs3b2JweGZ4SWtxOXZQOHlCbmFoTi85bnl6d0l4QVRQdUV4emZmeUdSR2VMKzVYMlBOTkNWdy9jbDZwR0U3alk0M1k0Yi9kUDlrWERMWEI3L3pQUm5pdUtsRkg1U0VDSWlBQ0lpQUNJaUFDc3hLUVFHQlcvQ3BjQkVSQUJFUkFCRVJnUmdJK2djQkhBTndEd0gvTVdMZmFSVDhQd0IxNmhhUUtCQmlubDhaNHBYTUlwTHJKbDBBZ24xMS8zRWtnQUpRVUNQaHU4UC9DZVEvNGNNVWYvZzJiTWs0R3NPTkFHVzkwMytlNTNjRG5lQUxnamRUM2UrSXhXNTRIeHVDV1FPQWNldXczeHJCL1NBQW9EV0s4V1Y1TEFET21MMnU5dXcwQ2djczBvZ0NLbXhnNlpZNjBGb0ZBeStaRlRteTV5V3Zob1hGd2FSZDJnVUswb1RRVVNzYnlhTVVRRS9UR3MxYVJBTDhQaHh2ZnhPdTVNQU1VK05WTzlHTDBUZ0Q4VFgzYUZkWWEvTGxHb1NCZ203N2Z0WGtyZnhFUUFSRVFBUkVRZ1EwbUlJSEFCbmV1bWlZQ0lpQUNJaUFDSWhBazRCTUlwQnA1MTRoNXlEQXRnY0Q0bmt3ZE94SUluTU04bFYyL3R5UVFLQ2NRNEkzSTl3RGdiZXQrNG4rL0xZRC9Hdjl6OGVid3hPWncvOUNCdi9MQS8xWXVubmZGNHFPelByOHpPTjdIODhiZkFLQ0xacWJRTGRNaGcxTjBKU0llbEVEZzNKQXNZeDdqc2Q4VHdFOGoyRzdLSTVzc0VPQ1pGOTI4dnc3QWhXZnNzTFVKQklpS1htVG9jV0hUd3ZUNGhzSEZBQnpWR0xyM0NZd1RuN0hjdW8zUGZPKzlRSkdBSlhaclVYQStPeUpnZUw4VWdBOEJ1R0tQSGVlM013RHduMHhmYkR4bmZjWDlPNFYrdk5uZkNpZG8rUCtDKzl1dkFUQU1BcjBKOWRQWTllS01ud0VWTFFJaUlBSWlJQUlpSUFMTElpQ0J3TEw2UTdVUkFSRVFBUkVRQVJHWWpzQ2NBZ0hHL09SdFh4NUdkaE5kVXorLytkdFpsVEZJSUZBSGNPcWg1VlFDZ1FzNGwvQytXTHAxYUF6blN1UGNVQXp3VkhiOTNDVVFLQ2NRWUZ4bHhsN3U3eFZwb0tmbkVjWnhyNVZvWktEM2dOMEhDdmlvQ3p1d3BGdVlJY04vNnhXQW9RTmVBdUR1SG1neHR6UEg4SlpBNEx6MDdnL2d4YjMvdk0ydTFUZFZJTUNRQW84QWNOaUlIOUQzQUh5cVk5VHNaL1hIemloNkNhT01OUW9FMktRbHU4Z2YwYTNuZVRWR0hCQnl0eDlqYUYrcVNNQVN1eEVXRGZ4M2M5NFZobTducy8xa3lOOGNYZmZUd0Q4MitUeVZqVjB2anEyWDNoY0JFUkFCRVJBQkVSQ0JqU0VnZ2NER2RLVWFJZ0lpSUFJaUlBSWlrRWhnVG9IQTd3RmdLSVBMOWVvODFhR1hCQUtKZ3lYeThkVCttMG9nRUZuOVNSNnJkZUFyZ1VDOFFJQXgxdWtGd0pmMkFuRFZnVC9TZFM4TkhMa3VwM2tUOEZoamxQbkVDWHp0bHhQY1pPVU55SHNsdHZGUFhGeDdDci82aVRkd2VYdVN0M0NIMHNzQkhPTGFWdXNIS0lIQWVjbnU2c1lpM1dKelhEM09pZk5xZXNhbzFiOGw4cjBhZ0d1TXpPaEtBSjdTL085M1BQbndaakQvUGtZQXliN2liNG91eEsxRW8rYy9PSUdBOVd6Mzc5OTI0aEYrcjNqYm1XWEdKQnBHS1lDN21ic3BmdDNlUzZVRkFoUWdQYW9KbDhFNDYxYWlrT242aldjWWhtOWhQKzlndmRENyt4VGZxY1FxRlgzY0NpdkF3aWp5ZXJBeEhtSU03Y2MzdCtUdkdqbUdpemJTeUN3a2RtdGZyZTN0cGwvRld1dkZLYm1xTEJFUUFSRVFBUkVRQVJGWU5BRUpCQmJkUGFxY0NJaUFDSWlBQ0loQVJRSVNDSndicmtJTWpCOXNFZ2pZREdzZCtQcU1vRFJvODFCL2s5TE9BSTVzWE8zdjBXc1V2WkxFM0pTZDY3YXdWVDhhRnRrdXhtcWVLOUZ6QWwxRnB4b3g2UjJBZFU5SlU5M01sVUJndUZjbzJtQmY4NGI1TjFNNlRzOE9FdkN0cWRxSFUrZkhNWmhwcUgxZUl5aWlwNGpZUkVFQWhTS25GNHBmenUvMEhWMmVGRStVRmdpazV0ZHlvSkRoNmdEb01wN2ZyUml4QUcrTTA2ajlwbGlZSzNydU1zNk5mVi9RMFcxQ2lrQ0MvUjd5R01OOGx4cTZJVVlrUUVFS1F6Qjhjb0krcnJWZW5LRHFLa0lFUkVBRVJFQUVSRUFFMWtGQUFvRjE5Sk5xS1FJaUlBSWlJQUlpVUo2QUJBTG5abHBLSU5DUE4xcSs1K2JQa1FhM1hRYXFrV29Ba1FlQmN5Q21zdXZqOXhsQjV4OHQwOVhBTXNDM05WbXFRT0Nhem5BeWRCTi9Lb3F2QVhCUVJtRTBTRExHT1EyQ01ZbmhaQmhxNCt1Qmh5bVkyQlBBeFdNeUREekRFQ00wZlBhOVFxVGNRQTVWZ1I0bEdCWWk1dmI5a3NLZGpNUmE1WFhlakg4NkFQYk4ydEpTQkFJeHJ0NjdiRThEY0hEajVlTnpsWUN6UHJ5OVQ0TTh4V3IwS0JLVHJEa3RWeURRTFp2R2NRb3BRaDVsMnVjWkttVmZBTitOcWZ4S250a053RDhiM2pOZTZVSTB4WHpmMm1iSEdOcS9BdUJBSjBoWkVpNTZ3YUI0N1lvRGxlTDYvaUVBWGxoSVJHTzFXd0lCaTVEK0xnSWlJQUlpSUFJaUlBSWpDVWdnTUJLZ1hoY0JFUkFCRVJBQkVWZ3RBUWtFenQxMXBRUUNZdzI5YXhoUXBRNHRKUkE0cDdmSGpodkxtTEtHY1RXMmptc1hDRHl4TVRvY09oYkN5UGR6QlFJc2xxNjdhU2kzRFBvMC91NFA0RlNqcm1zWjB5bUd5clcwYWVRd3luNDloV1YySVpWZVhJcEFnRjRoM2h4eE01NmhBMmkwcDdHelJMejAwbGl0MzBxcHNVS1BBZzhFY0VRRXN3ZTQyL0dsMnpwSGZ0Y0djRFNBeXdZS3p4RUh0Tm5GaEMzZ1hFQlIyWHZuQUJBb2MrZzNORWRkUzYyMUY0WlgxUkVCRVJBQkVSQUJFUkNCNVJDUVFHQTVmYUdhaUlBSWlJQUlpSUFJVEV0QUFvRno4NVpBSUg3OGxUcTBsRURnSE9ZU0NNU1BQOStUYXhZSTBFaHpJZ0RlNkp3empSRUlzTjZXZDRhVUdNNldnWEJPVHQyeVV3eVZhMm5UWEd4VFdNNVZSMSs1U3hBSThLYitld0JZWGtpKzRjSkwwSHZBVXBQMVd5azVWbUs5THBBdHZRMmszS1pmSXQ5Yk94SEpUb0hLalJFSHRObkdoQy9nblBEd1JsajJnZ1VKVmZyallTNXZCNlhXMmtzY2c2cVRDSWlBQ0lpQUNJaUFDQ3lDZ0FRQ2krZ0dWVUlFUkVBRVJFQUVSR0FHQWhJSW5CdTZCQUx4ZzdEVW9hVUVBdWN3bDBBZ2Z2ejVubHl6UUlBM1dKOC9Ic0hvSE1ZSUJMaTN2aWNBeHFzZTJtZlRFSFEzWjVoaVRHOHJXUVpDNi8ycC9wNWlxRnhMbTZaaTF5OG5oZVZjZGZTVk83ZEFZRmNBeHdLNG5nRm1MbU5uYW45WnY1WFNZNFhsdmMyNVlYRzhBQUFnQUVsRVFWU0ZQdkhWbFNFd0dQYms5TlRHTE9UNVdHOEpKY1FCYlpOalJBSjg5aTBBN3QrRW9TRGpKU1NHemFGM0RZWWF1SHRUdCsvTVVLbFNhKzBacXE0aVJVQUVSRUFFUkVBRVJHQWRCQ1FRV0VjL3FaWWlJQUlpSUFJaUlBTGxDVWdnY0c2bUVnakVqN0ZTaDVZU0NKekR2SlpBNENnWDl6bStkNWYvNU00QWpnU3dSNitxWXdVQ3BWZ3hwdlVkQmpENjZoY3k3TldJZS8xN0FENEM0SElEZGN3VkNIQmZmUWlBNXdiY2ROTkY4MDBhTnArSkhHS1dnVEF5bStxUHBSZ3ExOUttNnRBOEJhU3duS3VPdm5MbkZBanc5OGZ2eTlNTUtHc1JCN0FaMW0rbHhsaTVKWUIzZXdST0xWb2FpMSszdE1FWFVSL09tLysvdlRNQnZxWW96LzFUcU1TbFZCUVZFOXdqeGkyR3NrUmNncUlRVVdKcGNFR0lvbGJVcXdiQkdKZUttcmdsb29pYXFKQmdvcm1XK3hMMXVnUUJFYm5CZlVsTVhCTWl4SExGTlM1Y2pCSHZuZWZhUjg1L21KN3BudWs1TTNQK3Y2NmlQcjd2OVBMMnIzdm16Sm4zNmZmMUtmMkhkOVI5a2FTblNuSUtpbElsSmQyQXgvcWlwS01selNXeXhlVURnSitXQXBIWlQ2bG43Y3hocVE0QkNFQUFBaENBQUFSMkR3RUVBcnRuclprcEJDQUFBUWhBQUFJN0NTQVEyTWtEZ1VENkZWTHFwU1VDZ1V1Wmp5VVE2T3Z3VGQ4Tm02OXBSNGRQT042cE5yU2RZNmNtbUJNTGcxK0tWZTYrUGtyU0d5SjJIeGVjT2duVFNxNVNXaURnVTZsUGxIUmlnZ1hQcnVvOEs2R2VxM1E1Q0JPN0diMWFqcU55S1hNYUhWcGtnQnlXVTlrWUczZEtnY0N0SkoxVDNTdXUxUUxGQXAzREpIMXNidUFpOW5SZEsyUHNsV3RVM3l0blNycGRDeU5IZWpsK0lReFhadDRvbk5Cdm01ZnIrdjc4M01MaWdKVU4xd3pmYy9kSVlQZE1TU2R0UVNxSGhLbTJWaW4xckQzVUR0cERBQUlRZ0FBRUlBQ0JyU1dBUUdCcmw1YUpRUUFDRUlBQUJDRFFRU0JISVBDSUtuVHRnUVdKMnNIbkU3WjcxdnI4ZHZWaTl0MkZYMDYrUFlUZFhSK3F5WUdIUUNCOWdVdTl0TXgxcE5ZdEhOdlJtMDRrdldZcGR2VVJZODZVVWs3djlCbk92K2JZK3lablgxODk1QXh2dXIvK3U2UzdTM0srOEpLbFRTQmdrY1hUTXdaekdPYm5CWUZBU3JNdlZJN01neVZkbUZBNXRxZHpIWU9sK3JISlRXdWJZNDlQcERwRWVac2pOd0hOMWxhNUtEaTZsNWpqZlNxQmdQZVVoVkYrVG1zclQ1TGswK0ZMS1ZNSUJNekdFV0FzeklvVlJ4aTRmeFd4NGNjTEFPbjNuYjhkSWg1Y3JjVmVwMzk1ZkFpcG41TCtwZS9VL2V6dnZlb29ERjNsVTVJZUxPbHpYUlczK1BPeG5oZTNHQmxUZ3dBRUlBQUJDRUFBQW5rRUVBams4YUkyQkNBQUFRaEFBQUxiUXlCSElCQnplQzJCUmxOWWJ3UUN3MWF1MUV2TEhFZHFrOFZqTzNxSFVXcHVYWXBkdmZkdEZRaGNzUXBiNzFPZHEySlIwVzBxcC9RdmhYK3dnOTJuWjUwcjJPR0pVOHJZK3lablg3ZEZEOGc1Ylo4eTcxV2ROb0ZBYXBvRzkyWDJyNGlrVTJpenh5R2szNWhnY0NuSGZxbCtiUEpRZ1VEQ3RLbXlVQUpUQ1FSdUxlbGNTWHUxY0xQdzhzaUZuY2llU2lEdzZJNUlORU9qL1d4cWUxK3BTdmZ5SEVrV2hyUVZweEt3STk0cGRzWVVCNnhzc0tqTUlqUkhDVWdwanRqZ2xBY1dEKzIyTXRiejRtN2p5SHdoQUFFSVFBQUNFSUJBbEFBQ0FUWUhCQ0FBQVFoQUFBSzdsUUFDZ1owclR3U0I5Q3VoMUV2TEhFZHFrM1ZqTzNyVGlhVFhMTVd1UHVJbUJBSjJRTm5wMEZSK0xYSXEyazVrMzJ0V3VYeFhiYThqNmJhMWppd0d1SFk2eWgwMUh5UHA1WWx0eDk0M3FmdDY3eERkNUlBR3U3OHE2U0JKRnlUT0thZGFDWUZBU3NocVIwQzRhWU5oYjVWa1lVUlhYdWRTanYxUy9YZ3FDQVJ5ZHRydXFqdUZRTUR2cyt4QVBiWUZkZTZ6elZ4V2JTcUJRT3c3ZXNYbC9KRGVKaVVLeWxRc2J5YnBUWkwyN3pEQVVidnVVNldlK1BDR0RmVytQU1lJekN3WTZDb1cvem1OallVdWwzUlYzcUxQeDNwZTNDSkVUQVVDRUlBQUJDQUFBUWdNSTRCQVlCZy9Xa01BQWhDQUFBUWdzRndDQ0FSMnJsM3VTM1MvZVAzOWh1VS9MN3l3WDBMNDJiNjc5MUJKZjl2UStFTWh6SEhxU2E5VVIyck16ckVkdlgzNXRMVWI2NFZ2aWtEQUlhamJUdTI1ai9YVCttUE1mNncrVTUzT0huL3NmWk82cngxbStUVVJJR05GRC9Cd1F3VUNUbnRnNTFOYm1QeW5oWnpYem91K2IyMk8zNUIwWjBsMnRMV1ZVbzc5VXYzWVZnUUM3V3ZtUE9NVytueHRyQXQ5eHYxT0lSRFlKNlJrdUhrTGwxZEtzb0NxUzVBek43UlRDUVNjQXVUOURhSzJGWitjbENLYlpucTVJQlo1b2FRdXgvdG5KZjFPRmU3ZlFxNnBpc1Z4L3U2K2ZxSUJINWYwOEpta0hZZzlSeVJPWmRiVmNuOFB6WG95R0FjQkNFQUFBaENBQUFUYUNDQVFZSDlBQUFJUWdBQUVJTEJiQ1NBUTJMbnl2QkRiL0pXUTZraU5XVGEybzNjTUlsTUtCTG9jSDJQTWQxTjlmaWs0blgzeXZxdU12VzlTOXJVaktKd2QwaVBVN2JYRHhrNzRMM2ROcE9mbmZRVUNkajQ5VHRLTHE5RFZlMFRHWHM5bDdTcXgwODMzclNKSXZMUEQvbEtPL1ZMOTJOd3BCUUxPMzIxSDhEL1AyTm03Q3MvdS9PSE9kLy8yWFJRYWZBcUJRRnVLRXUvWG4xUUNnb01uT0NIZTg5YTBvOWxVQW9HdUNBSnpGUWc0YXNCckpUVkZwS212eDlza1BVclNkMHNzMU1BK3JodnNQaVNqSDk5WEhGRmdqQWc3cVdZZ0VFZ2xSVDBJUUFBQ0VJQUFCQ0F3WXdJSUJHYThPSmdHQVFoQUFBSVFnTUNvQkhJRUFuWUlQYUNnTlE0M2JpZFZ2ZGk1OUhWSi9yTlVPYUVobjJ5VGt3ZUJRQ25pNmYya09GTGJlaHZiMFpzK2svU2FVd29FZkpMN2c1SnVtRzd1WW1vNmQvSTlKSjJWWVBIWSs2WnJYL3MzNkI5SjhyMnBxZml6RXhQbTBiZEtINEdBVDRhZkt1bUJMWU0yNWJLK3A2VFRKTlYvZDFzNGNIekhCRW81OWt2MVkzTTNMUkF3dDF1RXFCZU9PUEdEa0hyaU0zMFhmOFIyamh6ZzA4Q0gxOFk0WGRLZmgxUFozaVBiV2pZdEVQRGVjQ1FmbjZpT2xUTXFRY2tSMWY2NWVJSFE1eW9RK0VEWTR6K2NDVk9uL1RtdWluandad2xSQTJ6eW40VHZsemxkaTQ1MjRPL2xQODFrK3BiUWJncWhBQUtCek1XaU9nUWdBQUVJUUFBQ0VKZ2pBUVFDYzF3VmJJSUFCQ0FBQVFoQVlCTUVjZ1FDcGUySk9hait0NlI3Uy9wUjZRRnIvU0VRR0Jsd1l2ZGRqdFN1YnNaMjlIYU4zK2Z6S1FVQ01RZGVuM2tNYmZPOWh1djgzMnBoNXgwUys1T1N2cjgybUU5dnJwK3N0NU1tOTM0eDlyN3AydGUzQ21IQm0wTDBPK3l6b3dkOGN5amdsdlo5QkFJM0RZNysvU0w5T3BmMWcwSlVoUFVxc1JEb253aUNEdStEV0NubDJDL1ZqKzNjbEVEQTBRSXN4dmpqS2czRnI5WUFqWmwrWXNpMnM1REJ6bE9MU1pyS21jRlpiVEhlTnBaTkN3UjgvL0F6MHkxYllEcTF3TXNYQ25zcWdjQXFDa1lNMi9za09RSkthaXFsc2ZEN1hlYmRKUDExd3oyaWFVeGZkMGRMZWxlVmFzaUN1am1XdTRhME82a3BCMVp6c0FqSjMrdWZicGpiWGtHUUY3c3ZkWEdJcFExRElOQkZqczhoQUFFSVFBQUNFSURBQWdnZ0VGakFJbUVpQkNBQUFRaEFBQUtqRUVBZ3NCTnJTZ1NCTGdmQUtBdTF3RTVUUS9CMk9WSzdwajYybzdkci9ENmZUeWtRc0wzUHJjSk9Peis4aXgwY1RTR0dmYkxRRHR4MXgveHFybzd3NFpmdzlXSUg4YitHZjN4cFE4U1JzVS9GNTZ6RjJQdW1iVjg3R29zZE9yRlR2OGVFY01zNTg4bXQyeVlRdUU5d0lEWDE2Y2dUNzVWVUZ3bTA1YktPblhLMnNPT2dFQzQvWm44cHgzNnBmbXpucGdRQ3NjZ0x0bUhzRkJTNSsybFZ2OHV4NmxQT0ovZnRmQUh0dXA0UFNnc2d1MUxHK043dU9wOWZBTHNtRTZjU0NQajd5M3MxVmw0cDZaRVRNNzFlSmNTeG5ZNE9rVkxPbC9RWElVSlhTdjBwNjF3NUNCbDhEOHd0VG0zeURFa1dES3dpSkxSOTM2WDBIN3R1RVFpazBLTU9CQ0FBQVFoQUFBSVFtRGtCQkFJelh5RE1nd0FFSUFBQkNFQmdOQUlJQkhhaVJTQlFicXNoRUlpem5Gb2dVRzZWNHowMU9WRVJDUHc4cmNEcnF4Ty9iNjRjR0hkb3dGZmFnUmhib1RaSFpwdEF3UDN0TCttZGtsWW5QRk55V2NjY3gvZVg1UGF4VXNxeFg2b2YyN2twZ1VDWGMzUnV6bmFIT1hkZThNTWlpN2wwWjNYS2ZYUFRBb0V1UWNhbTdpY3BiUHJVNmJvR1VwOHpjc2EraGlSSHVyaGRTNk1wb3pJNHNvaXYvZWNrcGhQd05GNGw2YW1TM2xpbCtmQUovYmtYUDR2YlRxK0Z2eStiSXUxMHpjRXBOZjVLMHZNQ3A0OVU2VGh1ME5VbzhubnNPdkkrV0lrdGUzYmQyY3pYZ0RuVXl4anAyTmJIK0U5SkQ0NklRVHVOcGdJRUlBQUJDRUFBQWhCWUVnRUVBa3RhTFd5RkFBUWdBQUVJUUtBa0FRUUNPMmtpRUNpM3UxSmYzQk5CNEZMbVE1MDVNV2ZLcXlVOXJOelNKdldFUUVCNmFBT3BsVWpDdjBGdkwrbGxrZzRJOVg1U2hXYy9WTks1U1lTSFZSb2lFUERJQjFZT3RIZExPaW5rbHUvS1plMDVlbi9iaWJ4ZVRxaE9lVDY5WlNxbEhQdWwrckdwbXhJSWVLeWpKTDBod3VlandSbmZGT1ZqMk83bzEvcldZZTg2bkhkVHNYUFMwVEdjTm1SYnk2WUZBcStvMHEwOG9nV203eS9ITHhqMkZBS0JPNGIwTDN0R3VQaytmWEIxN1gxNHcxeXZJT2xJU1g4cDZXcUpZL3VaMXZ2alRkVzkyc0lDMzdPWEloQzRTMGd2NUxrNjZ0SGpFdWU4WHMycElDeENjMFNDTVFRQ1BVektiaktXb0RUYkVCcEFBQUlRZ0FBRUlBQ0JiU1dBUUdCYlY1WjVRUUFDRUlBQUJDRFFSUUNCd0U1Q0NBUzZka3o2NXdnRTRxekdldUdMUUNCOWYwNlpZdURFTlRQWGMwamJlZk9FV3Y3a20xVW43RzhqNmEyRmMwWVBGUWpZN3IwcnA0M1RTcVNVV0lqbjA0SUQ1OGVSVGtvNTlrdjFZek0zS1JEWUp6Z3JiOTdBeHpuRUR3K2h0RlBXWU93NmR1RFpJUjByem4xdWtjQTJsMDBLQk96d2ZVY2x5amlrQmVpVUo5MUxyUE9tQlFKMndyOU8wZ05iako5Q21PTlVMSy9OUEFGdjU3alQySHdsektXTFpZbjFLdFZIMDdQNExVTWtoSldncm1zc2Z6ZFp5T0gwTjJPbEdPaXlvY1RuWXowdmxyQ05QaUFBQVFoQUFBSVFnTUJXRUVBZ3NCWEx5Q1FnQUFFSVFBQUNFT2hCQUlIQVRtZ0lCSHBzb2tnVEJBSnhsbU85OEVVZ2tMNS81eUlRV0Zuc0U0NytYWHBSK0FmLy80T3FNUDdPZFgzRmNITFVJb0ZTWmFoQUlOZU9tRFB6YytGRWEweG9VTXF4WDZvZnozdVRBZ0dQOTZ4S0hQTE1DUEM1bk1ydlNpL3doZUNzdXpCMzR5eXMvaVlGQWc2NzdxZ2NkcHcyRlF0STdpSHBySVV4WERlM3k2bWQrcHlSaXNDbnpaMytaWStXQnM4TzEyUnFueVhxWFQySXhOckVJS3R4SE0zRlVWbitvdnB6UGJKTEY4c1NkcGJxSS9Zc2ZybndYWGhxUWhTRngwcHlQUmNFQXFWV2huNGdBQUVJUUFBQ0VJREFGaEpBSUxDRmk4cVVJQUFCQ0VBQUFoQklJb0JBWUNjbUJBSkoyeWFwVXVxTCswMm5HUEFMWnA5ODlwOVRsZDhLVHNiNitGT2xHSGl4cEFjVWhuSGRodnpJZG40N0Qzbko4cUVRUW5ubFdFL3RlMjRDZ1hXNzdVdy9PWnorWFAyNzh3RTd0L3ZIVWlmWVVXL1RBZ0diMDNTdGQrV2xMK1hZTDlWUGJCNnA5N3MreTllMlZ0NFhQbDM4bVQ0ZEYyelQ1UmhmZXFqN1ZGUmRISWJlNDlmdHVGNEltNzV2eExpVTU1blVlVTFWcjh1cFhmSzZjOHFYTXlySGVpeEZoaGw4TlZ4dkYwd0E1SWFTM2x0Rk9OaXZaZXlQUzNxSXBIOXJxTlBGY29JcFJZZnMycnRPTy9BbmtoN2Y4SnpoVGgyTngra1lMczZjMUpTL2lXS21qaVVvelVSRGRRaEFBQUlRZ0FBRUlMQzlCQkFJYk8vYU1qTUlRQUFDRUlBQUJOb0pUUGt5TEhhaXArUUw5TGJaTnptcnVsNUt6bkUveFJ5ZEpWK2Nqem52VFFzRWhwNGtHNVBGMEwzZk40SkFiQTNHbkd1cHZ2c3ltNnRBd002ZmQxYWgySnRDeXA4bnllS1NMeFdBRjd2M096LzgzU1I5b01BWTYxMWNSOUxaa201VjY3ZnJsSE1weDM2cGZteitwaU1JZEozT24rSkVjMzE3dEVVNW1DcG5lK0V0bk5UZEpnVUNYV1BabVgySHRSRHpTUk9ZV2FVdXAzYXA1NXk3UzNwVEpjeHlWSWEyOGtlUzFsUEViQnFYNy8rbk4wUTRjS1NBSjBrNnBYS2NYeEl4NnZKVk5JbmZUSmpqcHVmVU5KN25jMjZDb05BaW1UOXRFTk41UGYrcHgwU20vRTBVTXhlQlFJK0ZwQWtFSUFBQkNFQUFBaERJSVlCQUlJY1dkU0VBQVFoQUFBSVEyQ1lDVTc0TVF5QlFaaWNoRUpDZTM0RHkxWkllMXZEdkNBUXVDd1dCd0tWTVl2c205MnJ0SzN6cENpWHR2TklPZy8zOVhJTnE5V1AzL2pGRVVuWk0rUVM1ODZFM0ZaOTRkZDd2cGxMS3NWK3FIOXU0YVlHQXh6eEswaHNpaktZTzMrODk2NVBYQjBiczZ5dmlHYmpGSjJuZTViUXZ5YUpyckZMTzgwbEFoa0hIRmdnNG1wREZMWTlMbUtRZDFuYldEcjMzSmd3VnJlSjNsMCt1aVJUZVhqblNqMSs0RUdRSUU3ZTljV0R5UUVsUHE5THkrSm5RNHJQY011VnZvcGl0Q0FSeVY1SDZFSUFBQkNBQUFRaEFJSk1BQW9GTVlGU0hBQVFnQUFFSVFHQnJDSlI2R2RZblJMbWRSbmJXMXN2UEpIMWRrdi9NS1g4bjZROHpHaEJCSUFQV2lGWDdPbEpYSnVXZUJFY2djTm5GUkNCd0taT3BCUUsyNUVaVkdHc0xBVzRTdWU3K1J0S3h0ZnpTdVpmb0pnVUNYWG05blMvN2hNZ0VTam4yUy9Wak02Y1FDT3dqNlp4SVpBbmJkSFQxMlJ0ek4wR2grajZWL0g1Si9rNXZLc2VGbEJtRmhwdDFOMTFPKzVJQ2dRT3FhQi91enhFbW1nb0NnV1l1VjZ5aXROeTJlczU4ZEFqSHYwZkNqaXFkNGlWaHlHaVZsWWpNM3hQL0kxeDdmWnpoUTJ5WWE5dHJWNUVVZnRRanRjQnFQcVYrRTVYa2cwQ2dKRTM2Z2dBRUlBQUJDRUFBQWcwRUVBaXdMU0FBQVFoQUFBSVEySzBFU3IwTW00T0RNZGV4aDBCZ0hyc2VnY0NsNnpEVWVWUXl4Y0RySmZsa1l0L2lFNDNPamI1ZWh2WnBoOWhUYW4zMlpaWXJMTW5sTUhSZmR6blZiZjlKUFU5SmVpNHg1MkxwQ0FKT0tXREhkbHZvN3JaN2R5bkhmcWwrekc0S2dZREhiUXZqN3hQOFJ3eHdqT1h1NzFWOXYwdHhkQWdMVnByS2xEbmIrODVwU0x0TkNnUmlqc09WL2J0QklPRDBGUmFIWHBTd2FCWmMzYVlLdzI4bmNrNnhXTlg1N04rYTAyamt1bGVWNUhRd0Y0ODh6bTdydnRSdm9wTGNFQWlVcEVsZkVJQUFCQ0FBQVFoQW9JRUFBZ0cyQlFRZ0FBRUlRQUFDdTVWQXFaZGhDQVNtMjBHa0dHaE9NUkE3bFV3RWdjdnUxYWJyZDJpdTVUSDZiSHBSWGxvZzROekgzeWh3T1Y5WDBoVWEra25sMmhSS2VyMjdvVTZybU5PaHBFQ2dLMTNDYWo2T2xuRGZpSk92bEdPL1ZEKzJlU3FCd0sxRFh1NjlHdmFWSGFVSFMvcHdnYjJiMDBWWFpJTlhTZnE5QVVLV0hGdm1VSGVUQW9GN1NUcXRaZEs3UVNBdzlwcjdQdnU3a3Q2OGkvYncyRXpuM0grcDMwUWw1NGhBb0NSTitvSUFCQ0FBQVFoQUFBSU5CQkFJc0MwZ0FBRUlRQUFDRU5pdEJFcTlERU1nMEw2RDdKUzJJOVBQblIrUzlOSHFSTnJud24vZmtYVEpnQTI0MndVQ0w1WGtFTmIxRW5QRVhxNDY4ZXE4dy81enF2SmJ3Y2xZSDcrdnMzdlZUOGtJQXFtTzdCakRwUW9FeHQ0VE9WeTdIT3hEd2w2UExSQ3dPT0lVU1k5S0FQb0JTWWRMK21GRDNWS08vVkw5Mk1TcEJBSU9qZTVUekdiVlZNemI5OEpOaGhzL1N0SWJJdmJZRHR0NmVzSWUySllxbXhRSWRJMkZRR0RZcnZxMnBBZEpPbnRZTjdSZUVJRlN2NGxLVGhtQlFFbWE5QVVCQ0VBQUFoQ0FBQVFhQ0NBUVlGdEFBQUlRZ0FBRUlMQmJDWlI2R1laQW9IMEh0YjNJejNFWU5vMnkyd1VDUTBPNVQzSHRqL1hDRjRGQSttckdycHYwSHZyVnpMM2VuV2ZhSit3ZEhydXBuQ3ZKKytuN21lYkU5cUNqSjl4WjB2bVovYTFYNzRwK1VPKzZ6WkVaMjlOZkM4N25ieWJhZVJWSnI2bWMxWGVvMWMvdHg4MHRTbnBBclo5Tk9XUGJIUEtiRHVkLytjRFVOalVWQytFTzY3RTNFNWQwbHRXNm5QWkRSV0Ryays0YXkvdkIrLzByc3lTVlpsVHMrazlyM2IrV0kzRTRjc0IvOU8rQ2xnc2tVT28zVWNtcGovVzhXTkpHK29JQUJDQUFBUWhBQUFLTEpvQkFZTkhMaC9FUWdBQUVJQUFCQ0F3Z1VPcGxXSk9UMXFkYm5TLzhld1BzYTJwNkRVa3ZrRlFQczl5V3g3cXBueWFiUzRiWFhoL3pVRWxuaGdnQ2RWdWNhL3h0QXhnaEVKQWUyc0R2aVpKZVBJRHJtRTNIZXVFYmM2YkUwaTJzNWpqR2FmOHgrdHhFaW9FeDE5MTk1d29FM01iM0NJZTQzaU5pM04rRUhQQk9qNUJhWW50d3FLUGJ2NjJkai80bEVYdnRjTFBvWWIyME9US25jaENtY2x6Vkc4b3RkYnl1a1A2T0lIQnlhbWNENjdXbFBIRFhtN1JsNEZTS05lOXkycGNVQ1B4R1NEbmhmUFJOWmF6bm1XS3dFanJhOVBYL2d5ckZ6R1BDL1haSVpLZUVxVkZsaGdSSy9TWXFPYld4bmhkTDJraGZFSUFBQkNBQUFRaEFZTkVFRUFnc2V2a3dIZ0lRZ0FBRUlBQ0JBUVJLdlF6YlpNamxXQTc1T1FzRUhpenB0UTNyOU5NcTljRGRKRG5FZHQreW13VUNiU0czN3lQcFhYMmhqdHh1ckJlK01XZEtsMU42REdmK0dIM3VWb0dBVDJxL0xEaXVZbHZUOTRHVE1zTExqeVVRYUJNeldNaGdSL3FmMWliUjVzamN0SU93NzZXL0tZR0E3WXVsVmZGbm16eTEvN2l3TDV1WWJUcWFRZDkxSzkxdWt3S0IyTFBRK3B5YzR1RTlwU2U1d2Y0MmRmMS9TOUpUSmIxUjBrVWJuQjlEell0QXFkOUVucFhmTTE5VDBwNERweGhMU2ZVUlNjY1UySzlPN2ZPamdUYlNIQUlRZ0FBRUlBQUJDQ3lhQUFLQlJTOGZ4a01BQWhDQUFBUWdNSUJBcVpkaENBVGFGK0Zwa3A3YlVLVkVPTy9kTEJCb2N4N3NSb0dBVHhkL3FDRWNmUitCZ0owazN4MXdiN2x1dGVlZGgzNjlETzNUNiswSUl1dWw3NG5jcGFRWVdNMTE3K0RvT3lDeUpvN1k0bkR1SDB0Y3N6RUVBdmNMRHJiNnV0c2twMG13ZU9BUVNXK3QyWWhBSUhIUlFyVTdTam9uNG5qNnZ5SDF3dWw1WFdiWHZycWtNNm85ZVdDazVTa2hnb0R0MlUxbGt3SUIzd3NkbWVoMkxZRG5IRWtuWlYrTUtSRDRyS1IzU1BMejYza1o0cW9VdTZtelRBS2xmaE41OW1QdTNaSjB1NTRQUzQ1Rlh4Q0FBQVFnQUFFSVFHQ1dCQkFJekhKWk1Bb0NFSUFBQkNBQWdRMFFLUFV5RElGQWZMSDhyT25vQWM1bld5K2ZxQnk2OXhpWWhtRTNDd1N1VlVWZ3NJUDRsald3Y3crdFBGWUVnZGlKMHE0WHdFM1g3d1p1UDBXR0tDMFF5STFFRXB0RWpHblhXclJCc1RQMjdDckZ5cFVqbGV6azhtbkRMeVdRalVVMTZYc1N2azBjc0c1WGJPL0hCRDFMY2JMMDVaYXdWSmVwY2lWSmJ3K0NrS2IyUGdYdGs2V09VRE5XdWFlazB5SnBjellsVWhocmJrUDYzYVJBb0MyQ3ptb09yNWYwa0FVN3Y3dXUvNXhVVnI0ZUxBcXc4TTMvTFZXODR1di80Q3BpekZXR2JOUXRidnZsRUVtbHp4UkwvU2J5MkYxN3Q0OTlZN1FaOGt3eWhqMzBDUUVJUUFBQ0VJQUFCRFpPQUlIQXhwRXpJQVFnQUFFSVFBQUNNeUZRNm1VWUFvSDRncmFkOGl2eDhuNDNDd1JpRG5HSFREMUkwai9QNURxcm16R1dRT0I2a2h4MmR0L2FnRjNSRkJBSVhBcHN6Z0lCLzI1OXNxUVRXL2Exdy9nZksrbS9PL1orcWZ1R2JUcFNrdTlsZXpTTVdZOXNjSy9nV0s1WFJTQ1FkN05xQys5djVyNy9mU2F2eStUYVhuT252UEErYXlxYlRIT1FiUFNHS201U0lPQXBPVEtSSXhURlNna1I0b2JRTlE3VDVXVGRwREJuU2c3clk2ZWtscGlMclZQWU1lUTd2TlJ2SXMrN2ErOU93YVpwVEFRQ2Mxa0o3SUFBQkNBQUFRaEFZRElDQ0FRbVE4L0FFSUFBQkNBQUFRaE1US0RVeXpBRUF2R0Z2SVdrRDRSY3BQVmFKY0wveGh4OU9TZnJobTVET3lQUDdSbVNmc2hKNjlqK25idlRZQ3lCUUl3SEFvSEw3dkRZZFRQRXViQSt5cEI5M1hZOU9yUzdRL1E3Vkgrc1BGYlNxUjBYZFd6K09SRVovRHZhVHVLWFJNUUJQd3ZpZ2ZXVUFybDdOT1prK1ZvSXBmL054SnVYVDl1K1J0SWRhdlZ6KzRrTmQwa1ZVdjg3a3Z6bkpzcE5xbWdSSDZ6VzJhazhtc3B4a2s0ZXlaQWJoL3Q5WFlpMEdtN01zVWVhVXJGdU55MFFjT1NPZXNxTzljbjQxUHpkd2pOSXNVbHVzS011Sit2Y3YrdkhRSVZBb0ozcWtPL3dVcitKYkdIWDNoMWpiL1RwRTRGQUgycTBnUUFFSUFBQkNFQmdxd2dnRU5pcTVXUXlFSUFBQkNBQUFRaGtFQ2oxTWd5QlFCeDY3TVNzdzlzNnZjQlpHZXZWVkhXcVhPcnJ0Z3dKNlQvRWtYcG95TUZjZjU2Zis2bkpzUVFDdnlucC9aSXV2N1k0RjFmL2RsZEpIMi9aWjAxcjRCUGhEbVBldHh3ZlRqR3Z0eC9hNXdHU25sSXpLTWVodmQ1MHFRSUJ6K0gySWYvN1hwSEZxWi9hejdsdnBQSzhRaFdsNE9sVm1PNW50bXdRTXo2cEZzbzc5cDN6R0VrdmIrZ3I1bVRKZFF5VzZxZnY5VkM2bmE5eEN4Nk9pblE4NWluK3R1Z0ZYdzNYL1FXbEo3eVEvall0RUdnVElLNlFQYnY2bjJjdGhGL2R6QzRuYSs1OVlLRVlkcGlOUUtCOUZSRUk1TzF5QkFKNXZLZ05BUWhBQUFJUWdNQVdFa0Fnc0lXTHlwUWdBQUVJUUFBQ0VFZ2lnRUJnSjZZaGp1NFljSWYvZFJqZ2V2bUdwRHRMT2o5cHBlS1Zkck5BSUpaSC9YMlM3bHVGWTc5b0lOdXhtbzhsRUdqcU4yVlBOd2tFaHI0MEhxUFBwdm1sT3JUcmE3bGtnVUJLcWdGZkEvZVg5UDNJSmg0U1FjQ244UjJod0xuTjIrNTdMMmc0VVIvN3pvbnR0MUtPL1ZMOWpIVlA2TlB2UFVPNmhxYjNHUmFnSFY1RlREaTlUOGN0YlJ6QjRneEpCMGJxbkZKRlVuQUVnYVhtZHgrS2E5TUNnUzRIdXVmemhaQ3ovc0toazV1Z2ZkZjhFQWhNc0NnekgzSUpBb0gzU3ZxUERYTzhyU1RmbitwbDZMUGVocWZCY0JDQUFBUWdBQUVJUUtBOEFRUUM1Wm5TSXdRZ0FBRUlRQUFDeXlDQVFHRG5PcVU0VTNOVzlvb2gvSzhkTmZYUzE3Rlo3MmMzQ3dSaStaZUh2Q0RPV2QrK2RjY1NDUHlocEJmVmpKcktnVEtHUUtBdjc2WjJTeFlJZUQ1MjFMNnJJVXFEUDNQS2p5ZEpzck0yRnZLK3IwRGdScExlSXVsMkxZdmhQZmpVWUVlOVdxNUF3UGRRTzV6M3EzWDBYVW5QbCtSb0NTbGxHd1VDKzFTTzMzTWszVHdDNEkyU2pwSGtNUE9sU3BzbzRTZkJFZjNoVW9NdHNKOU5Dd1NNeU5FQjJpSjV1TTdSMVQ3eGZsaGFRU0J3MlJVamdrRDdMaDd5L0ZmcU41RXRiTnU3WFdtZnhyaE9ZOS81Q0FUR29FMmZFSUFBQkNBQUFRZ3NpZ0FDZ1VVdEY4WkNBQUlRZ0FBRUlGQ1FRS21YWWFRWWFGNlV0anpSSjRRUTNVT1hjN2NLQkJ4aTJ3NFBuNUt1bDdtLzhCeExJTkFrbVBoY1NESHc3YUViTGJNOUFnSHBvU1B2VFovaVBsdlNsZGZHK1pRa1I5Ynd1cmVWV0dxUE51R1MwNlg0bXJ0YVM4ZHQ0Z0EzaTRWRUgvdWEzVWFCZ0htK05BZ29tcGJFSWdxbkhmbDg1clVicTk2VjF1RGQxYjQ3VXBMVG11eldNb1ZBNEk1QktMSm5DM1NubVBIMSs1MkZMUXdDZ2NzdTJKV0NFTWVSWE1Zc041RGs1OVJmaWd4aUlaRHZQeVVGU0NYbTgrVnFyenZGU3A5UzZqZVJ4MFlnMEdjRmFBTUJDRUFBQWhDQUFBUW1JSUJBWUFMb0RBa0JDRUFBQWhDQXdDd0lsSG9aaGtDZ2VUbDlTdWdka1pWMlZJSDNGTmdGdTFVZ2NDMUpkbWJlc29HaFJRTnZLOEIyckM3R0VBakVCQk5UcFZ0QUlEQytRTUMvWTU5VE9XaitPR3pVRjBwNlJxS0ROaVlRZUgxSUhkQVVJdDdPZlR1QkxYeHFLczUxYnBHS0l4akVTdXowNjVJRUFwZXJ1Ty9STWMreDdoMzFmcnVjdzQ2K2NISWhZMjR0NlZ4SmV6WDBOMVpLZzBLbWI2eWJLUVFDZGhpL1hkSmhIYk4wVkpGNmhKbU5nZWs1RUFLQm51QUdOdk9lZXJPa2UwZjZPVmh6Q0lNQUFDQUFTVVJCVkUvU2IwbjYwc0J4NXRhODFHOGl6d3VCd054V0Yzc2dBQUVJUUFBQ0VJQkFoQUFDQWJZR0JDQUFBUWhBQUFLN2xVQ3BsMkVJQkM2N2cveU0rVEpKeHpac3JxK0cwT0FYRk5oNE1ZR0FRMjgvUmRMM0NvelIxWVVkZ25ZYytjUnFib2s1S3JzY2hyOFJ4cnhxYlVDZlhyMnJKSitZbkdzWlF5QmdEcWVGRThQcjgyNEt0N3UvcE44ZkdZNmRCdzVIdjE0K0tla2ZSeDdYM2R0NTRXdnZ4eTFqTFQzRndHcHExNUgwdDVKT0NvS1pWTHl4NjY0clBITk1KR0RuNDRzVGNzOHZXU0JncDlrRGd3akRvZjBmTTRQVHMwNDFjVVlsTm5NMGlhYmlrN1IySEg4L2RXTzAxR3NMWlY5eW5BS21UdGJGRkFJQlQvWW9TVy9vbUxXZkNlNHU2WjhtbzVNL01BS0JmR1pEVy9qWjljbVNUb3gwOUROSlIwaDY1OUNCWnRpKzFHOGlUdzJCd0F3WEdKTWdBQUVJUUFBQ0VJQkFFd0VFQXV3TENFQUFBaENBQUFSMks0RlNMOE5penFhdmorQkE4VWxwTzVucXBjdXhWYS9mWlBQL3FVSjIzMFdTSFpsRFMxdCs2UGRLK3AzS2dlL3hocGFZbzNPcTNQTzU4K2tyRUxpZnBMYzJER2J4eFIwa2ZTWFhrQTNXSDBNZ2NEMUpINUcwYjIwZVRVS0wyUGdiUkREcVVHMWg4bGNEYjR0QW9DL0l2Z0lCajNmNzRKVDJTWEtMZzV6UzRPOFN4QUZ1dTBTQndONUJiT1hUK0JZSnVQd2toUGwybU8ycFMxc1VtVkluKzl1K3p6ei9rcEVLcHVZNVpQeXBCQUpkUXBIVm5CeFJ4aEYyU2doR2huQktiWXRBSUpWVXVYcE5xV3ZXZS9mOXhvSzBwaWd6NWF5WXBxZFN2NGxzUFFLQmFkYVFVU0VBQVFoQUFBSVFnRUEyQVFRQzJjaG9BQUVJUUFBQ0VJREFsaEFvOVRJczVtemFKS2E1Q1FUdUdVNTBOejFyMnJsMGFEZ0JQNVRSYmhVSXhISnZUeFZTUDJjZHh4QUlPTmY0K3lWWlFMTmVtdEl0SUJDUWRyTkF3TG1ybmZya2tJWk5tM29mOWI1NmlYNmVSdUhzak0yL05JR0FyNmRUSlQyaVlZNXZDZUtJdHBRS0dXaDZWMjBML2U5T1R3a08vQ0VPdllkSWVrM0V3cElSY1hwRG1FbkRxUVFDbnI1RmN4YnFkTDNmZW1YWUQ0NjJNL2VDUUdDekszUkRTUmF3N2hjWjltOUNWS3doOXp6ZlUzKzYyV2tsajFicU41RUhSQ0NRakoyS0VJQUFCQ0FBQVFoQVlGb0NYVCtncHJXTzBTRUFBUWhBQUFJUWdNQjRCRXE5REVNZ3NIT04vQUxVemhTSC9ZMFY1L0krTWpGZmVOc08ySTBDZ1d0SU9yUEtoMzY3QmpBT0xYLzhlSmRNa1o3SEVBZzhPamd5MXcyTVJjUkFJTEM3QlFKdGpnczdEeCtac012OUcvb0s0U1I5UXZWZlZMbEpsYnY2ZzlWZXZXNnRVVmRLa1p3eG11ckc1cHdTYVNYMlBlbFEyeGFDMmFFMlplbktRVC9VZ2Q5MU90MUNrU2RzNlluaTNIV2RVaURRbFRkK2ZTNUxFUWtnRU1qZGdmM3JtL1hicXZ1ejB3TTFsUkxSSjV5aXhwR2ZYaURKdnh1R2lKYjZ6elRlc3RSdklvK0FRR0NNRmFKUENFQUFBaENBQUFRZ01BSUJCQUlqUUtWTENFQUFBaENBQUFRV1FhRFV5ekFFQWp1WHUrdEVwMnY3eGVnRHdndlpJWnRsTndvRTJwd3dQdW42dWlGQU45QjJESUhBS3hwT09aOWZDU251Sk9uQzJweWF4bmRVQzU4K3ZhalEvTzFrdUZHdEw2ZnUrTWRDL2ErNnVhMGs3NGYxUW9xQmRzaHRqb3V4SGZXeGEzZnNjWWNJQk5vRVg2V0VYa012aXlhQjBIcWZRMUlBdEVYRGNWNzdnNnJ2c3M4TW5jQ1d0SjlTSUdDRXQ2cFNYNXdqNlZvSlBPME1mbFFscVB0dVF0MnBxaUFRMkF4NXZ4TjljcFZDNWNUSWNPY0Y0Y0NYQnBoelIwbnZYTnViZm5aOWthUkxCdlJadW1tcDMwUzJDNEZBNmRXaFB3aEFBQUlRZ0FBRUlEQVNBUVFDSTRHbFd3aEFBQUlRZ0FBRVprK2cxTXN3QkFJN2wvcFpsUURnbVFtci8xbEpkNWYwellTNnNTcTdVU0FRYzRiRlRzd1B3RHRLMDlJQ2dWaEVoZE5DdnVrZjEyYlJOSDdLU2VvY0dFMzNoRlFuc0UrbTM2RUttZjB2Q2JteW0vWS9Bb0gybGJwcVNIL2l0QlQxa3JwR09YdGh2ZTRTQlFLMjM4NHRPMTczckUzY1FxL0RxLzE2ZWw4Z2hkckZJak9zdWo5RDBoRTlJdFowblVwL282UmpaaHd5dkJEZTVHNm1GZ2pZVUtmL2VMT2tQUktzL3FLa295VjlQS0h1MENyWGsvUWtTYzlyRUszRitrWWdNSlI2V3Z1MlBXTVIwR0hWZmU1amFWMDExbkpLTGFkazJhdjI2Yk9yU0RUUGxUUWtaY0VBc3k3VGRPaHZJais3T0xLTVJROElCRXF1REgxQkFBSVFnQUFFSUFDQkVRa2dFQmdSTGwxREFBSVFnQUFFSURCckFrTmZocTBtMStRTTlFdkZwMGo2WG1FQ2RvWTZQR245UldOcTd1dzJtMHM0bVBjSmpxU2JKODU3YUU3WDNTWVFhQXVuL1FsSjl4aGh6eVV1WlhLMTBnS0IySFY4UXZYaS9la05WczFWSUhDVkVONytPWkt1VmptUkh0dVFOcUUrSFFRQ3lkdnVGeFYvdVFxTi94RkpOMmhvaWtDZ21XZGJGSUcrenZmOGxZdTNzSDEyMXR2UjExUWNJZVRneXRIMzRjeEJZOElJZCtNKzdmZzdON1BQYmE0K0I0R0FuWlNuaE9nQXFheFByaXBhMlBpZDFBWVo5VzVjT1UyZkllbmhrbktGYUFnRU1rRDNySHI3U2dEbGUxajltZHJkMmRudFZGaE9DOUMzK0huRDdiMHZtOHJMUTRxU2kvc09VTERka045RXQ1RjBVb2prOUJVRUFnVlhoYTRnQUFFSVFBQUNFSURBeUFRUUNJd01tTzRoQUFFSVFBQUNFSmd0Z1NFdnc5WW4xU1FReUgwUm5Bb3A1dHlhaTBEZ2NaSmVsanFaQWk5Z2x5NFF5RUQxLzZ1MnBXOHc5K056TzV5Z2ZtbUJRQ3lpd24xRFNOLzZGT2NvRUxDVDR1enFCYnRGQXF2eTd5SEN4cGRiMWdpQlFQNEdiaE1JUExFU1o3dzR2OHZrRm5Zb255bXAvaHQ4N0hHSHBCaFlUYzVwTXh3cG9INHl1MVM2bUdTSWtZcEhTWHBEdzJlMjJkZkpwek56ZnJlSklqek1ISVFSUTVtVmJqOEhnWURuMUVja1lHZndhME9ZK2M5bjdwVTZSd3NsN3kzSnowUDdyMzJZKzF5SVFLRDBEdDNaM3cwbHZiZEt5N1JmWkJoSGZQRDNnZTl4ZmN2VmcwRGdrSllPbk43b2tRa1JnL3Jha05xdXoyK2l5MGw2V0JBek9oTENYU1E1blJJUkJGS3BVdzhDRUlBQUJDQUFBUWhNVEFDQndNUUx3UEFRZ0FBRUlBQUJDRXhHb00vTHNDWmpFUWo4bk1yMWc1UHpwZzJRZk5yeVc1TDJiZmhzU0FqWDNTWVFhRXZmRUhPSVQzYUJSUVl1S1JDSW5SeitSdlhpLzg2U3ptK3dZWTRDZ1Znb2M0Y2c5cHJIQ2dLQi9OM2RGbzcrUHBMZWxkOWxjb3NIQnlka3ZjSFk0NVlRQ0xSRkwwbEphNUVNcVdkRm45VDJhWDUveC9pNzVvWFZkOUlyQjV3S2J4Tmp6VVVVMFJQVmFNM21JaER3Qk8yWWZZV2tCL1NZclo5SjNpSHA3ME5vZVVjVytGRkRQM2FPN2kzcE9wSU9ESUl1aTREODk2YUNRS0RIWW96VTVKcVY0TktPK2J0Rit2ZDNxMC9FRHhFSHJMcE9FUWxZT09aMEY5OGRhYjRwM2ViK0puS2tJd3RUSHhvNlg0OUNoa0FnaFRoMUlBQUJDRUFBQWhDQXdBd0lJQkNZd1NKZ0FnUWdBQUVJUUFBQ2t4RElmUmtXTS9JUjRlWHcrdWQreWZkOFNYN1JYTEk0REtyRFlQdmw1bnI1YUhDR3BJN1ZKR29Za21MQXo1UU9qZjdIRVFPY2Y5VWgzMzFhNjFvTmRYeEsyazZ5VDZWT0lOVGJUUUtCdHZRTlg1VjBVSFdTNjRKTWZsTlVMeWtRaURsNzJ4eVdjeFFJZUIyYVRtaC9QWnpJY3pTQnBvSkFJSDhIdHpreHgzYlVPOS8wMDJvbTJ3SGwxQ0JuNVU4bHVVVUpnWUFIdTZlazB4b2lJTXpCWVc2eGtObjY5S3FqQmpnUGR0L2k3ek03dm82TmRPRHZXK2NsLzM3ZkFiYTAzWndFQWtac1VjdWZTM0tVbVRrVUJBSnpXSVdmaTBjYzlqOTJxbjlvNnF1bVdYYU42VFlXT0RtbGdRV09VNVNjMzBRSGhJZ3R2MW96OVBEcTk5QjdpQ0F3eGZJeEpnUWdBQUVJUUFBQ0VPaEhBSUZBUDI2MGdnQUVJQUFCQ0VCZytRUnlYb1l0ZjdZN1oxQmFJSENyS3Nmek9SSG52NTFIZm1sb3A4MWpKUDFWQkdZZmtjQnVFZ2pFUW1nYnAvTnZIMU1KTkg2NmdJMWFVaUFRTzVIZGR2SityZ0tCMkFudFB3czVySnRPTWlJUXlOL3dkbXhZUUdMZTlUS21RT0NLd1NubGUrRjYrV0VROS94ei9sU1NXNVFTQ05qSjVkRDZQaTFkTDNPSUlwQU1wS05pMi9lWm0vcGU2M0QwbEowRTVpWVFzSFUrNWU5US93NFZYMCtQc2VuMVF5Q3dhZUtYSGE4ci9jVDdxblFrOXg5Si9OTVZ0Y0RXZmxiU2IwdjYwZ1NvVW40VCtYdno4VlVhRDR2ZG1xNm4xWGNvRVFRbVdFQ0doQUFFSUFBQkNFQUFBbjBJSUJEb1E0MDJFSUFBQkNBQUFRaHNBNEdVbDJIYk1NK21PWlFVQ01UQ282L0dYYy9WN0plenI2dGVnajR3QXRaUkRCeG0xV0crVTBLNzdoYUJRSnRqemlqTnpDS0Jlbkc0N1R2T2JCUGJRZnVVQnB0eUhZd3hoN3BGRWc0Yi9JSEl2TWNTQ1BpRitGWERtQzl0Q0czdFUzWC9JY2tublYxdUkrbFh3di9iY1hDVmlMMXRVUVJLQ3dSOGd0RzJEeTNIQjZkM3ZSOUhQemx4YU9jRDI5OHZPT3JyM1Z3czZhNlZjK2JqQS91UE5ZOUZ1M0FhakR0SnVuQ2tjZDN0RUlIQUtvejZucEp1S2VsQmtuNnZ3ZFk1UkJFb2dkRHZSM3pxM0U2d3BtSUgzdDBsZmJQRVlGdld4eHdGQWl2RXZ0KytxZnFldlBtRXpCRUlUQWkvY21wM2lRUGVINzYzeHd6em55SVNPQytJYW1PUmc4YWkyUFdieU04ckZrYjVHUzVXbmhqRU9BZ0V4bG9sK29VQUJDQUFBUWhBQUFLRkNTQVFLQXlVN2lBQUFRaEFBQUlRV0F5QnJwZGhUVGxuRnpPNURrTkxDZ1Rhb2dMOExJU2xkbXFCVmJsaFNEV3dYNHVORHUvOFZFa1hkY3hqdHdnRTJxSUhmS0dLM25Cd3hNRVlPNjAveDMyY0t4Q3c4TUZSSyt5NFhDK2ZDQ0hidnhlWlpLcEF3UDM2NUtrZFN1dk8vRlczMXcwT2gwMndmRWwxb3ZFSkRhS1owZ0tCc2VjeUI0RkFVNWgvejN0SWlwVVVidDVMdnEvVmkwUDIrOFRxajFNNjZWa241cXh4Q2h5TGRYeXQvTHFrWDVaa0ljUE5xaFE1am5odzdjengxc1ZnbVUxblU3MHJlc0J4VmFTY2syZGo3YndNbWJOQXdLUXNLdk4xNkFnelRSRkV4cWJwNzZzak1sSlB0VGxaYld1dTRHRHMrYzI1ZjRzRExIN3o4MnBUc1ZQZWFYNDJjWEkvUlNSZzRkaTlLMEhXNXpjSU5YYjkrcG5LOTNaL1Y1aGpXN0d3eXB3UkNHeHc0UmdLQWhDQUFBUWdBQUVJRENHQVFHQUlQZHBDQUFJUWdBQUVJTEJrQWdnRWRxNWVId2ZaN2NPTHc3MGlHK0V0a2h3Ry9yOXJuM2UxYy9VdlN2SnBwSGUzNUpQZURRS0J2VU5PMTlpcHJWTWsyV25WRkhGaFd3VUNiVG5DMjlJTGVGK2xDZ1JjOXhXU0hqR0RtOXkzZ3dqRXA1ZlhDd0tCdk1WcGk4VGh2TTkzbG1USFRPbHlIVWxuUzdMenVWNUtpQ2JzdExIVHlTR2ZmeTJrZXZHWSs0Y1E2NzUzZU95eFE2eXZwNU1welhBVC9YVkZEMmdUWTIzQ3ZybVBNWGVCd0lxZm83VThzbm91ZVhvUEVVenVHbGdrNmZSS0ZqeCtPakV5MG1vTUJBSzV0SnZyKy83NHZQQTgyVlJqaWhQN0ZoaStPUkpwWjJWam43UmJRNGdkV2tXek9iTVMwUFI1Uit4bmxOK1ZkRmJZNHdnRWhxd0ViU0VBQVFoQUFBSVFnTUFHQ2ZSNStOdWdlUXdGQVFoQUFBSVFnQUFFUmlPQVFHQW4ybHlCZ0oxdFRnVndVR1NGdXZwTEVRbTRhenRsL0hMOTd4dUVCdHN1RVBDenVoMklKMFFZK3dTdytYOG04dm0yQ2dSaXAzeC9FaHpwSDI2NWErUUlCQjR0NmRUUjdrQjVIZitacEdmVUhFd0lCUElZUGtUU2F5Sk5QaGRTRE5qUlViSzBoYldPcGNPdzRNb25uTzFrOFY1M1dncWY3TDlwNWVqNnBVb3dkS0NrS3dkUlFDdzFSY2s1NVBSbFFkZVJrcHl5b1Y1czkvVnpPdHR3M1gwcTFyN09Zb0kzcHduNTJ3M1o1SDNvTkNuZUkwc3BTeEVJckhnNmZjYnR3cWx5cHowcWRTMVpFUGsyU2E4S1VXNzZSZ2RCSURCODUzdE5IZkhqNFpHdWZKM2RxenF0NzFQeW15aU96SEtOTUpCRkFvN201ZWd0c2JKSmtVRGY1NTFYQjVIcUQ5WW0wYlozSFZITTZaWTJXVzViL1Y3eC9hbGVTZ2owTmprUHhvSUFCQ0FBQVFoQUFBTEZDU0FRS0k2VURpRUFBUWhBQUFJUVdBaUIyTXZzZncxT2dyNHZkWmN3L2FZYzRWME8vZlY1ZGVWeWRkMG1oMmFkamNQRXZ6T2NlTzNpdHY3UzNZNFRwNERZZG9GQWw0amlqVldraFdOYW5FamJLQkJvTytXYkV1SThSeUF3NUVSZGZUOS9heTJNL0QrdTVUQzN5TU4vWHprQy95dWtOUEQxczE2K1hwMUN2NHVrOWJ6RUNBUzY3aHFYZm00SGdaM1hEcVBmVk41YWlaR2N5cVBOSWV2N25oM3ozMDhjMWs1K3B6Undlb2ltOGxGSmg2MzE5N1JRUDdIN1dWYXpTTWZYemJrTjFqV2x0cG5sSkdaZ1ZHN0tsUm1ZdkdnVC9MM2lsQnArTHJ4YnVOYzY1M29zbFl3akEvaWU3T2NRWDhlTzd2SXhTWi9LU0NHd2FHQUxNTjZwZ2Q0VTBnUTFtZXZ2WHQ5L3ZXNnhZaEdKb3pqNVR4ZW5IbksvRm1xNVdDanJQV01SMStydkZwMnNRdkgzU2RWU3QyVVRJZ0hiNytkSnA3dEpMUllFT0VLWXhidjFDRlpkNHBiVU1jYXVoMEJnYk1MMER3RUlRQUFDRUlEQTdBa2dFSmo5RW1FZ0JDQUFBUWhBQUFJakVlZzY3VGJTc0xQdE5sVWcwQld1MVJQMHkvSzdyemxCMnlaOWkzRGF6cm5lYzRyelp2dGxiZE9wdjY5VkwzMFBUeHcvWjh4NlhiODRqdG50RTc4WFZRN0psL2M4QmVvWHozWmFIaEl4c085cCtTSHpIYk50cWtQTXA1QWRydDJPMm5vNU9yemtick16UnlEZ05meGdjQkt0OSttOVo4ZVE5OW0vaFBYOVpIRDAra1NpUlVZdXJ0ZEhhT1NUek01WHZiNjNIRW5qWVRWbnhqWUxCUGFWNVA5ODB2QTdMV2xHdXZha0hUdk9MZTNJQWRkcXFlemMxTDVXMjhyMUpIMGtpQXljLzl1T3BRdURnOURDanZYaXNQN3U4Mm90SFQ2MkZxSENKMWxQNjVyUXhKK3Y5cjV6ZGQ4cGtyWWdKbHhDSUpDK2VLbjN3L1FlcVFtQjNVSEFJakJIMi9IOXQ2MDQwcENkNytzT2ZUdktZeUt5S2VtTkxSSzRkUkIxeGFLbjFPZHVZZSt4VmFxT3IwU2dJQkNZY3Jjd05nUWdBQUVJUUFBQ0VNZ2dnRUFnQXhaVklRQUJDRUFBQWhEWUtnSUlCSFl1WjRwQXdNNjJwN1NFdkhlUFBsbDNSSWdNa0xwaDdFUjdXWlgvKzZHcERSWlNMOFZoM1RTVmxBZ05yd3d2d0pjVWd0cHpqVVUxU0hHSSthV3pRemZiNFZzdkh3K2hndTFNYmlzNUFnR2ZBTGNUMUtmMjdlai9ia09haTdHMjRyT3FVM25QREE3cFB3ak82UFZUZXY0ZDk5cVE5M2ZkaGhTT3NjZ2Jkc1k3L08vUTR2VzVVVU1uT2FmMTZ2Zm4xWWxkQ3pBc3hyZ2tuTmI5NXRvNHZoWXN6bkFZZTk5VDdLUjNXZ0dmQkc0clh3MnBPaTdvcUhmVjRNRC96YUdBSWlLcTN3aE9Hbzh6UmZHSmFQTTBYMTlIam16eGpjRDBoMEVVczdMTGpqU0xMaHgxb1Y1aTRpVUVBdW1ybW5JZHAvZEdUUWhzUDRGZkRkK1pqcXEwaldVc2tZQ2ZOLys2SlEzRE9rdEg4bnBTRlczamxBN1JIZ0tCYmR5QnpBa0NFSUFBQkNBQWdhMGtnRUJnSzVlVlNVRUFBaENBQUFRZ2tFQUFnY0JPU0YwQ2dSUnhnSHQ4U1FpcFhRODUyclVrZmk1MWFGKy9xUFNMM3FVWG43QzlzeVE3SDNPS09UeTV5a0YrWWtzak8wa1BEazdHbkw3blVMZXZRS0NMUy8wMGRteXVPUUtCS1huNXRMdGZzc2R5OVRvZi9UODBuSFpNQ1pVZkV3ZzRsN0NqRkF3dE1VZHdqa0RBODdlVDlKWkRqVWxvbjVJT1pkVk5DU2QzVEVRMTFweFg0Z3FmOW5URUN3dGV6cStjKzQ1SzRkUVhmWVV2OXd5Q2lhWjNDbllnSFZjTFBWMkNYY0p5YmtVVkJBSmJzWXhNWW9NRURwSjBWb2dzdGNGaE56cVU3OXYzbHZUNWdxTStzWHJXZUdGQ2YvNitlRkQ0RHVtcWprQ2dpeENmUXdBQ0VJQUFCQ0FBZ1prUVFDQXdrNFhBREFoQUFBSVFnQUFFTms0QWdjQk81RzBDZ1pTMEF1N3RmU0dIYVdxTzdxWkY5Nm50UjFZNVhlMjBhd3ZQdmZFTmt6bGdrNE1zcFF2bmdIMXpKSFQzcXIxemxUKy9JZTlyU3Y5VDEra3JFTGk5cERNa05ZWEFUWTBlNExuUFVTQ3d5bk5zKzdyQzZmdjMyNjlMc3JOMS80YkZkQ1NPNHpzV2VRa0NnVDQ1a2Z2c2JUczlIUEVnRmlxNTNxZXZ2ZWYyR1dpdGpmbWYxSEQ5T2wrMUJSNU9qNUphMnB6L2pnYlF0WjlTeDJtcTV6UW92aWFkOXFOZW1rUk1DQVRTYVNNUVNHZEZUUWlZZ0w4elRxM1NCanhpNFRnc3JtMTdUM3RlK002eUNMVkVTWG5tZkpXa3g0VzBXU2xqSWhCSW9VUWRDRUFBQWhDQUFBUWdNQU1DQ0FSbXNBaVlBQUVJUUFBQ0VJREFKQVFRQ096RTNpWVE2RHE5N1o3K1U5Smh0UnpwUXhiV29nUy91SFNvOVY4YjB0RUViZjJDMTA2KzB6UEg5Z200czhPTDdsalRFaUtNVExPS1Z1OGpFSER1ZDRlK3YzbkVFb2NVZHJqOWxESkhnVUFzZFAwcTMvdjZ2SzVaT1pldjBqSlJoOVIvWFFlSUpRZ0VQQVU3NHUyUUg2djB1V2M5T0dPdjFlMjJNLy94SVR4ekxNSktmYzdyWWY4dFl2aDBnWlAvSlhuYWFXUlJTbE41ZHJoL3J6Nno0NjVKVEZEU25tM3B5MDVBYzNWcUV3b0VJSkJHWUE3UDlldmYyMDdUc2txRHM0cmM0cGxZUU9WME9DNU95ZUlvTHF2dmhEWXg1SXBDU1pHQWhSVysxenltQWJGVENsaXc2M1F5T1ZIQjJnUUM5NUgwcnJUbExGWXI5c3lURTlXb21ERjBCQUVJUUFBQ0VJQUFCT1pFQUlIQW5GWURXeUFBQVFoQUFBSVEyQ1NCMkl0RXY3VHo2ZlZ0ZmpIdkU4WjJScStYcmhRRGR0amI4ZmpBaGtXeTQrdkljUHAxakRYY0o0UlZQYnB5b04rbGNoemFsamtYbjBwMkNvQUxNNDMwdko0ZTh1ZzJOZTNqME13MFlmVHFmUVFDNXVLSURJOXFzTzdkWWU5ZG5HajVIQVVDTnYybElTUjc0alFhcXptZGhhL3JDem82V1lwQVlJZ3p2b3ZqRnlVOVFOS251aXJXUHI5WENLdWYyVXdmQ1NkYlA5ZlIwSTRWQzBic1pGckNkOUNOSlowcmFkK0dlZjJ2S3AyQkJTc1g1Y0tpUGdRZ0FJRWVCUHgrODgrREVLdEg4MTgwc1dQOEcrRnYveFpTc3Zpdi9yNVlPZno5bk9jSUxTNmw3OWNwSW9GenduZll5b1loODkyN0VtKzlSOUlCYTUxNGZ2ZnJtYzRBZ2NDUTFhQXRCQ0FBQVFoQUFBSVEyQ0FCQkFJYmhNMVFFSUFBQkNBQUFRak1pa0JNSUxBYlF2czJoWHJ1RWdoNDhXNFlUbkx2VjF2SldNanNzUmJjWWVadlZna1diSWRQcERvMHQ4dHRKUDFLeTZDdWQrMnhqRnJyMStGWWZ5L3p4TldxdVozaGRoYlhUM09OTGNMWUFKYi9QNFFkaVhkc0dNd242ajRnNmFjUlF4ek8zT0hYRDFuNzNIdjI3cEkrbW1IOFhBVUNKWnpoVDZxY3l5OUtZTEVVZ2NDaGtzN3NDTGVjTU4wZFZTd2tPU0ZjWXovSWJWeTFjd1NIMzVkMGc3VzJUZmNkNzgwUFNucC91R2ZtaW9WNm1EWkpFNzlQOE9uVFk5ZEc5MmxUUjBKWW5aQ2R4REFHaFFBRWRpV0JtMWJQQmY4ZzZaZHJzLytXcEE5SitscVZhdWlUa3B3SzY3OHFKL2kvaEZQODlaUDhVOE5yQy8xdkFZT2ZHZjZ1NTNObTA5ejhMTzBJVmxldW5xWGZGZ1Naam16UXB5QVE2RU9OTmhDQUFBUWdBQUVJUUdBQ0FnZ0VKb0RPa0JDQUFBUWdBQUVJeklJQUFvR2R5NUFpRUhDTEIxVWgvOSt3NXJUYnREaGdGcHRuWkNPYVRzekRXYnBSZFVMZUtSWnVFdmozWVRKWGdZQlA3bG1jZEtXZWU4dkNnS2RXRVNqc09PZ3FZd3NFWXFIazN4NU9LWGJadC9yYzYvMEVTWFkyK0g1dDUveXErTit1a2RDUmhUWG5COGVIQlNaMjJLY3dTdWlhS29HQUJUOTJLTDI2Y2k2OVlPMVVMWUFnQUFFSVRFSEEzM0VXZ3RtQi9qK3JpRTQrYmIrRWlDeDFWazBpQVVlU2NpU3Zzd3FEOWJ2aFB3eUNXOS9IaDN4UEloQW92RGgwQndFSVFBQUNFSUFBQk1ZaWdFQmdMTEwwQ3dFSVFBQUNFSURBM0FrZ0VOaTVRcWtDQVR1di8xclN3OE5wNVZTbjVOejN3OXpzV3o4eGYycVZvOVpwSVlhOHNKM2IvUHJhczNwaGJrZXYvOStuQUhQS1hBVUNUcVBoMDQwcjhVUHFuRTZ2S2o1TDBzY3lUaEt1d3RqWHgvRHBlanNmS0JESUllQjNDbnRJdWlTbkVYVWhBQUVJakVUQXo2bStMemtxd0pLTDUvRGtTamg0WXBqRWx5WGRwMGRxbkUwelFDQ3dhZUtNQndFSVFBQUNFSUFBQkhvU1FDRFFFeHpOSUFBQkNFQUFBaEJZUElIVjZkVDZpZDN6UXNqa0paNDJTbDBVaHhLOWZxMnluYy9PSlowU1V2UVc0U1hsaTNGYXB5THZWYzhwSGV6UWZqbWNmOEh2OHBVVCt3OGt2VVhTbDNwUTNUK0VpRjl2NmozLy9JbWQ0LzVkNWhQeWV5Yk95YzVZNXg3R0tac0lqR29RZ0FBRUlBQ0JoUkZZUlpTNlV5VU0rQjFKLzc0QSs1M082N2lRQnF4dTdsOU9JSEM0bDZRakdyamxSalZhQUhwTWhBQUVJQUFCQ0VBQUFua0VFQWprOGFJMkJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUlHeENXeExSSVN4T2RFL0JDQUFBUWhBQUFJUWdFQW1BUVFDbWNDb0RnRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFRmdpQVFRQ1MxdzFiSVlBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoa0VrQWdrQW1NNmhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FJRWxFa0Fnc01SVncyWUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUJBSmdFRUFwbkFxQTRCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhCWUlnRUVBa3RjTld5R0FBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlaQkpBSUpBSmpPb1FnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCSlJKQUlMREVWY05tQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQVFDWUJCQUtad0tnT0FRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFXQ0lCQkFKTFhEVnNoZ0FFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0dRU1FDQ1FDWXpxRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdTVVNRQ0N3eEZYRFpnaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnRUFtQVFRQ21jQ29EZ0VJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUZnaUFRUUNTMXcxYklZQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaGtFa0Fna0FtTTZoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBSUVsRWtBZ3NNUlZ3MllJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQUpnRUVBcG5BcUE0QkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQllJZ0VFQWt0Y05XeUdBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJWkJKQUlKQUpqT29RZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFDQkpSSkFJTERFVmNObUNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FRQ1lCQkFLWndLZ09BUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRV0NJQkJBSkxYRFZzaGdBRUlBQUJDRUFBQWhDQTNiakFMQUFBQUlWSlJFRlVBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDR1FTUUNDUUNZenFFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ1NVU1FDQ3d4RlhEWmdoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdFQW1nZjhITDdRSjBobDR6cE1BQUFBQVNVVk9SSzVDWUlJPSIvPjwvc3dpdGNoPjwvZz48L2c+PC9nPjxnIGRhdGEtY2VsbC1pZD0iYnJva2VyaW8iPjxnPjxyZWN0IHg9Ijg2MyIgeT0iNjU4IiB3aWR0aD0iNTQwIiBoZWlnaHQ9IjExMCIgZmlsbD0iI2U4ZjRlZiIgc3Ryb2tlPSIjMzM1NTZmIiBzdHJva2Utd2lkdGg9IjIiIHBvaW50ZXItZXZlbnRzPSJhbGwiIHN0eWxlPSJmaWxsOiBsaWdodC1kYXJrKHJnYigyMzIsIDI0NCwgMjM5KSwgcmdiKDIxLCAzMiwgMjcpKTsgc3Ryb2tlOiBsaWdodC1kYXJrKHJnYig1MSwgODUsIDExMSksIHJnYigxNDQsIDE3MywgMTk1KSk7Ii8+PC9nPjxnPjxnPjxzd2l0Y2g+PGZvcmVpZ25PYmplY3Qgc3R5bGU9Im92ZXJmbG93OiB2aXNpYmxlOyB0ZXh0LWFsaWduOiBsZWZ0OyIgcG9pbnRlci1ldmVudHM9Im5vbmUiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHJlcXVpcmVkRmVhdHVyZXM9Imh0dHA6Ly93d3cudzMub3JnL1RSL1NWRzExL2ZlYXR1cmUjRXh0ZW5zaWJpbGl0eSI+PGRpdiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiB1bnNhZmUgY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IHVuc2FmZSBjZW50ZXI7IHdpZHRoOiA1MTRweDsgaGVpZ2h0OiAxcHg7IHBhZGRpbmctdG9wOiA3MTNweDsgbWFyZ2luLWxlZnQ6IDg3NnB4OyI+PGRpdiBzdHlsZT0iYm94LXNpemluZzogYm9yZGVyLWJveDsgZm9udC1zaXplOiAwOyB0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiAjMDAwMDAwOyAiPjxkaXYgc3R5bGU9ImRpc3BsYXk6IGlubGluZS1ibG9jazsgZm9udC1zaXplOiAyMHB4OyBmb250LWZhbWlseTogJnF1b3Q7TWljcm9zb2Z0IFlhSGVpJnF1b3Q7OyBjb2xvcjogbGlnaHQtZGFyaygjMDAwMDAwLCAjZmZmZmZmKTsgbGluZS1oZWlnaHQ6IDEuMjsgcG9pbnRlci1ldmVudHM6IGFsbDsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd29yZC13cmFwOiBub3JtYWw7ICI+QnJva2VyIOWGheeahCBEZXZpY2VNYW5hZ2VyIC8gRHJpdmVyPGJyIC8+5YWx5LqrIFBTVSAvIENBTiAvIFJTNDg1IC8gUExDPC9kaXY+PC9kaXY+PC9kaXY+PC9mb3JlaWduT2JqZWN0PjxpbWFnZSB4PSI4NzYiIHk9IjY4OS41IiB3aWR0aD0iNTE0IiBoZWlnaHQ9IjUzIiB4bGluazpocmVmPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQ0FnQUFBRFVDQVlBQUFBYk1JT2FBQUFBQVhOU1IwSUFyczRjNlFBQUlBQkpSRUZVZUY3c3ZRY1lOa1Y1N244ZlZQNktSdy9ZRFJic0tDWnFZa0ZGRVJDeGNHSVVlNGxHTkJZc2FOVFlOUVlMc1hkaWl4RVZld0VMb2dKUnNXQTVhcXl4UncyaWdtS0pSRkgvZTh0c3NxeTc4end6Tzl2ZTk1N3IrcTRQdm5kMmR1WTNzOU9lZTU3NVgxQVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSSFllQUwvYStOTHFBS0tnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaEFBZ0UxQWhFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkhZQWdJU0NHeEJKYXVJSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUNCZ05xQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0d3QkFRa0V0cUNTVlVRUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSa0VCQWJVQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRXRvQ0FCQUpiVU1rcW9naUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FoSUlLQTJJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSmJRRUFDZ1Myb1pCVlJCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJDUVFVQnNRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFnUzBnSUlIQUZsU3lpaWdDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNFZ2lvRFlpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWpBRmhDUVFHQUxLbGxGRkFFUkVBRVJFQUVSRUFFUnlDSndQUUEvQmZCdkFINlRsVUwrUS9zQ09EVzgrOWY1eWVoSkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVmZ2ZBaElJcURXSWdBaUlnQWlJZ0FpSWdBaDRDSndmd0NzQTNLQWo4bE1CSE9GSlpFVnhkcW5LZWh5QWF3T2dnZjZ0QUY0TDRJTUF6aGk1SFArN2V1ODdBZXdkM3ZNRkFPOEE4RG9KQmtZbXIrUkZRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVlNTUpTQ0N3NFJXczRvbUFDSWlBQ0lpQUNJaEFJUUp0bzNVejJVY0JPTHpRZTVhU3pGNlZnZjRFQU9mdXlOQ3hBTzRZdkF1TWtkOC9DMEtFblRvUy95U0Ftd0g0OFJndlZwb2lJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBS2JUVUFDZ2MydVg1Vk9CRVJBQkVSZytRVCtMNENqSTluOGN3REhMTDhZeXVFV0VOZzJnY0JUQUR5bXAxNy9ydnIzSjQxWTV3OEU4SUtaM2oxaXNaUzBDTXhLNER3QUxnUmdoeUN3T1hQVzNPamxJaUFDSWlBQ0lpQUNJaUFDTVFKY2YxNGdYUFYyMmd4WHZxbDJSRUFFUkVBRVJHQ2pDVWdnc05IVnE4S0pnQWlJZ0Fpc2dJQUVBaXVvSkdYeDl3UzJTU0RRdkY2Z1hmMC9BWEFqQUo4ZnFWMmNGOEJiQU55eUkvMWZBYmdKZ0krTzlHNGxLd0tiU09COFZhRW82SGw0RUFmVVpYdzVnTDhGY1BvbUZscGxFZ0VSRUFFUkVBRVJFSUdWRXRnTndLdkRtcXN1d2svRFhPNlZFZ3FzdEZhVmJSRVFBUkVRZ2NVUmtFQmdjVldpREltQUNJaUFDR3daQVFrRXRxekNWMXpjYlJJSTNCVEFjUUM2NXNxdkIzQjNBR2VOVkpkWEJmRGhjTks1L1lxUFYrS0FBd0NjTWRLN2xhd0liQm9CZWcxNEVZRDc5QlRzQXdBTzBqZTFhZFd1OG9pQUNJaUFDSWlBQ0t5VXdHVUJ2QS9BbFhyeVQzSG5Nd0Q4YnFYbFU3WkZRQVJFUUFSRVlERUVKQkJZVEZVb0l5SWdBbHRJZ0tkRUh4UlorS1Fnb1p0Y0dvNytDOEMvVjhhcnI0Y1RjVm8wcFZDY0o2NEVBdk53MTF2VENXeUxRSUR6WTdyM1A2UURFZnRVbnV3L05oMmYrNG43QWppaUovYWpBQnp1VG1tOUVhOEo0QUVGc2s4Ung2Y2F4dDh2VituK29CcDc1YUswQU55VkpIRmJBRy91RWZ2VVJSajd5cENWb0ZwRU5ubGk4S0ZWUDBldkQxWjRRM1d5a0FLUEpRZVc0eUhWS2NqTE96TDVZZ0NmY2NSVEZCRVFBUkhZZEFLOFl1L0Fua0tlQk9DZlp3SndNSURyRlhnM3ZaRjlPb2lOdVgvenVUQlg1Yjl2ZXpoM1dBZVJkVitRUjdWdGJ5VXF2d2lJZ0FpSVFERUNFZ2dVUTZtRVJFQUVSQ0NaUU16WWxweFl4d08vclJiV253eUdMdDVocnhPbkphaVdUME1DZ2ZKTWxlSTRCTFpGSUxBckFHNCs4dlJLTzR4OWdqOTJ2Y0RZVnh1TTAycnlVclg2eGJ4VXovblVmMVRYTlp3STRPMEFqZytpZ1JMcEtvMWxFZUExQXJGTlp1YVdIanNvL1BuWnNySytsYm41TXdBZkJMQ1RvL1JqOThlT0xKaFJyaC82bVIzTm1BQU5ZcHl2SzRpQUNJakFOaFA0UHdEZTIyT0luMEtvRzJOUFljSmZqbGc1M0wvNUFvRDNCM0VqUlFROENMSk40ZUlBUHVJUTFqMFd3Rk8zQ1l6S0tnSWlJQUlpSUFKakVKQkFZQXlxU2xNRVJFQUVmQVRHRmdpMGMvR3E2cTYyeHdQNHJpOTdpalVSQWNzUXBnM2ppU3BDcnpFSmJJdEE0RTRBanVxaGNmL0k2WDRUb0NQQzFRRjhDTURPSFhIZkhWeWhiOE5Hb2RVdk9sQW1SNkZnZ0s3b2o2d015dDlKZmxvUExKSEErUUc4by9xbTlqTXlSODlMZXdJNFpZbUYyTEk4cFFnRTVqWVVXVlVUODBiVDlhem1leFpSL1M0Q0lyQU5CRzRPZ0hQZXJ2M3F1WVZoWXdzRXV1cjNZd0NlSFpqOFlnc2F3RFhDV3VnQ1JsbGZEZUFlVzhCRFJSUUJFUkFCRVJDQlVRbElJREFxWGlVdUFpSWdBbEVDVXdzRTZzdzhNZHpaOWt2Vnp5SUlXSVl3YlJndm9wcVVDUURiSUJDZ08raTNBVGlnbzhicG52NG1BRTRkc1RVOE1IaDk2WHJGblFHOGZzUjNMeWxwcTE4Y082L2NqRDIwT2xWK3N1NDNIUnYxNk9sN052UGxRV0QwYW5DL0lFVWd3RVRaSjk0OXVHbDJ2MlNpaUhzRTd3RVhjYjVQOHowbktFVVRBUkhZV0FKMEwwK2hKc1c2WFlIWE03NXd4dEo3NWhSalpZL2VCWGdGMldFYkxtaThKQURPd3k5amdKUUhnYkZhbXRJVkFSRVFBUkhZS2dJU0NHeFZkYXV3SWlBQ0N5TXdsMENBR0hobjY5MEFmSDloVExZeE81WWhUQnZHMjlncWxsbm1iUkFJeEU3d2ozMVBlY3lsNnZlcWZ2dEcxVW1aYnk2emFSVFBsZFV2Rm45aFQ0S2ZxSzRlNEdhMGhBSlRFUy8vbnBoSGtQcHRZMy9iNVV1MXVTbW1DZ1NXZlBYS2t5cUJFVVc1M3FENW5wZVU0b21BQ0d3cWdhdUdhMzh1MUZIQUpjeUY1eFFJTkpGUUtQRGtEUlVLV0NJUmN2aFZFRzEvZEZNL0JKVkxCRVJBQkVSQUJLWWlJSUhBVktUMUhoRVFBUkg0UXdKekNnU1ltNjlXOTJ6dkQrRGJxcHhaQ1ZpR01HMFl6MW85ZW5tRHdEWUlCUG9NT2xNWW9XSjNWZFAxUFEzVmRLbTlEY0hxRjZkbVFLOFNENUNvYm1yc1JkN0hmdXV0WWI3VGxlRG5BTnhLMXk4VllWMGlrVlNCQU4rNVJJRUg3MUErc2ZKd3NIc0NGTTMzRW1BcHFnaUl3RVlTaUhuU1dzSmNlQ2tDQVZiK3I2cy9QRVgvM1BEZm05UWdyZ1hnK0o0cjExaE90Z1Y2K2pwcmt3cXRzb2lBQ0lpQUNJakFIQVFrRUppRHV0NHBBaUlnQW1jVG1Gc2d3RHpRazhCQkFNNVFwY3hHd0RLRWFjTjR0cXJSaTFzRU5sMGdFRFBvdktJeUR0OXZ4STJvMkYzVjIzaEt4dW9YNS9nNGYxb0o2KzRLNEYxYkpOU1lnL01ZN3p3L2dLY0ZrVTB6L1RjQmVMQ0VIMk1nejA0elJ5QXd4ZlV2cVFXaWx5NjZ5VTRKbXUrbDBGSmNFUkNCVFNNUTg2UkZRL0Erd2J2QW5PVmVra0NnNXNCVDlIY0I4SzA1d1l6dzdpc0RlRTAxNzc1T0kyMWVrZmw0QU0vZlFGSEVDQWlWcEFpSWdBaUlnQWpZQkNRUXNCa3BoZ2lJZ0FpTVJjQVNDUERFNmlNQi9OaVJBUzZvYndCZ1B3Q1hkY1J2UnVFOWRrK1F3U09SV3Jub2xpRk1HOGJsV0N1bFlRVFdMaERZclJKRFBSVEErWG93WExxNjgvTG1QYis5YjhER0c3MjF2QURBbVJIODFtblRVMFlVSnpCYkhHOW8vUDdYWVUyazJOTld2L2c2QUR6Vjd3a2NIMmwwcEpINGVnQXVEK0E4bmdkNzRqd25uTmppSnFYQ3VnaWNGOEF1SWNzL0EvRHpkV1YvSzNLYkl4QWdtTG52cFc1V1RzeklGYXRFemZlMm9vbXJrQ0lnQWowRU9BZC9kK1VWcG11Zit1TUFEbGpBb1lhWVFJQWloc2NCK0xxemhqa2Z2U0tBaTFYbHZpNkFTenFmNjRyMm53RHVYTTEzajluQVBaMmR3OXJ0dDVXbzgzUUpBd2EwRWowcUFpSWdBaUlnQWgwRUpCQlFzeEFCRVJDQitRaFlBb0YvQjdCbnh0MXlOSUx3emwyZWxydW9vM2hUdU01MlpHTnJvMWlHTUcwWWIyM1RNQXRPWXllTjJsTUZHdGU0OFhXVmpoZW1HR3hMNUpkdU5UOFVOb3E4NmVVYW5yenA5OFg3RndBSEdzWkl6ejNwUS9NUmU1NGJibnNCK05LWUwwbEkyK29YSDFWdEZoNmVrRjQ3S3NkZmpxKzNxOHA4eDRnTDA3NVh2TGx5U1gvdkJXeFVEMENnUjBWZ2tRUnkrK21sR0k4SU5XYmtpa0hYZkcrUlRWS1pFZ0VSbUlDQWRlLzhVa1JnTVlFQWpmUTNCdkNwVEY3Y242ZElZTjlLWkhEM3lsdkNUUUhza0pBV0RlZ1BDZTczdCtWS3NnUThpaW9DSWlBQ0lpQUNJdEJGUUFJQnRRc1JFQUVSbUkvQVdBS0J1a1E4SmZ1VWNHTFdLdVVTNzIrMThyd3B2MXVHTUcwWWIwcE5seS9IRXQxY2xpOWxkNG81bTNDNWhxZWhaYklFQXV5cmVScWVKNlBtQ3JtQ3RMSHlhL1dMUXdVQ3pYeWZDOERWQUR3aWJNaDZ5M1JDRUJoUVhLRWdBaUpRaGtDc24vNEJnRk1CL0hISHEyZ011V1VsL0RtMlREYXlVNGtadWVpaGhmMDlUNHgyQmMzM3NySHJRUkVRZ1pVVHVIb1EvdkswZUR0OHI3b1c4VVlBdnJtQU1vNHBFR2dYajhKc3JnMmVCT0NhQ1dWL0RJQi9xRnp4L3liaEdVVVZBUkVRQVJFUUFSSFlVZ0lTQ0d4cHhhdllJaUFDaXlBd3RrQ0FoYVRoZzljVVBOVW84U2NCM014NW5jRWk0RzFRSml4RG1EYU1ONml5Q3hkRkFvRzBVenBMRlFoY0g4Q0pWVCs5WStIMmtaTGNOZ3NFbXB3dVZZMmJmMTlkSjNGUEo3d1BWTmN5SENSUEFrNWFpaVlDTm9GWVA4MStpdTZuNzllVHpPdUR5SWR1bnVjS3Nmd2ZDV0J2QUpmcHlaem1lM1BWbXQ0ckFpSXdOd0Vhd1ovWWs0a1hoV3RrbG5BcWZrcUJRSTJEKy9ZVVNEd3ZRU2p3dDlYVldzL1l3T3NHNW02bmVyOElpSUFJaUlBSWJCd0JDUVEycmtwVklCRVFnUlVSbUVJZ1FCeThDNVgzMFhGaDJSZDRGeTkvLyt5SytHMUtWaVVRMkpTYW5MNGNFZ2lzWHlEQTA2WkhBRGg0K3VaempqZEtJSERPQ3JoT2RaWEdVUUN1NEtpWGx3RTRSSGVpT2tncGlnallCR0lHZHA0aWZYeDF0YzRyZXU2b252dktMTzZ0dkNEMEIxMGxmVEFBR20xMjdjRWdnWURkUGhSREJFUmc4d2hjUEFobGQrOG8ycStxMzI1U25hVC82RUtLUFlkQW9DNDZEMzV3dnZuTXlrdmtlUXdldkc3Z0RwWEhuYmNzaEp1eUlRSWlJQUlpSUFJaXNGQUNFZ2dzdEdLVUxSRVFnYTBnTUpWQWdEQTk5MXRyWTNLZVppZUJ3RHpjTitHdEVnaXNYeUFRYzZrNlpSdVZRT0FQYVo4ZndBdWQzZ1IwVW12SzFxcDNiVEtCbUVDQVY4dmNDOEJ6SzJIVkpYb2d6SGxsMXVXQ2krd3VBY0QzQVJ4YWVROTRaZVg2ZWFlZXZHc2V2c2t0VzJVVEFSSG9JeERicDNodmRZRGhOcFc0NnBjTHdUZW5RS0JHY0ZVQWJ3WFFKYWhvWXFKb2psY1VuTHdRZHNxR0NJaUFDSWlBQ0lqQUFnbElJTERBU2xHV1JFQUV0b2JBbEFLQnl3TTRLYktoU3VoMGs4ekZwc0swQkNRUW1KYjNKcjFOQW9FeUFvSC9DSGRYODM3cklXRi9BS3lUZHZnWEFBY0MrSG5yQjg3RG53emdjUjNQOE9UUHpRRzhiMGlHT3A3dGF6TVNDSFNEOWw3VHd4TnVOdzNHd2NKVnB1UkVZS3NJV0FJQlhvZkYrNVZ2MlVObHpydXFIeGc4Q0hSbGphYzRlZXFUMTVKSUlMQlZUVnFGRlFFUmlCQTRINEMzQlVOMlY3UTdWNFp3WGgremxMQUVnUUJaWEFqQW13SHNZNEQ1QklCYlZGYzBuTFlVZ01xSENJaUFDSWlBQ0lqQXNnaElJTENzK2xCdVJFQUV0b3ZBbEFLQlhRQWNCK0RhRWNTUEFuRDRkbFhCSWtvcmdjQWlxbUdWbWVqYnBQcldDSVpsQXVLSjZ0c0IyTEdERmczWmZHL3BjRkVBdCs1d0o4MlRwRGRHR1lGQUtlTjQzN2ZjSnhDSW5UWWQ2OFNVQkFMcExaVHJwVWM0eGtkdHdxYXoxUk1pMENaZ0NRVFk3M011eTZ0WitzS0RndmVQS2VsZXJCcVRqZ2V3Ujg5TGFlVDZVWmlMOSszQnlJUEFsRFdtZDRtQUNDeUJ3UFhEOVFKZGE0c3ZoK3NGVGwxQ1JrTWVsaUlRWUhaNGpTVEZaL3NaZkE0RDhBUUF2MXNRUjJWRkJFUkFCRVJBQkVSZ0lRUWtFRmhJUlNnYklpQUNXMGxnU29HQTlTNVdnRFltNTJtR0Vnak13MzBUM3RxM1NmVnFBUGNZb1lBeFR5Umo5Ujk5eHFKTkVBZzhxZHFzZTJKSFBYRURqMEtNTVR5NjlMV1pUd0xneWR3Zmo5QnVjcEswK3NXcEJXMjg2L1ZGQU81akZPYitodUV5aDRXZUVZRnRJdUFSQ0p3ZWNlVlBWaDhQcDFIUG1CQmN6RVYyYmVTNkxvQ2pJM2thYXh5ZEVJTmVKUUlpSUFKdUF0eVBmZ0dBUTNxZW1QUEttTDVDTEVrZ3dEeGVOb2pDcnhTaFRuSGFUUUI4d1YwemlpZ0NJaUFDSWlBQ0lyQTFCQ1FRMkpxcVZrRkZRQVFXU01BeTJwYzYxY3FpVys5aUhMcHJmYzhDT1kyUkpZNS9kTTNYUHEzQSt3MTVYOStVd1RLRWJjS0c4YzdWNlZ1NmtLekRiNEtyUS82dGtFOWdhb0ZBekhBelZ2K3hxUUtCbVBlQU1ZMWJmVzJtejh0QmZ1c2M5cVRWTDA0dEVHQnBMaHpHeU90RWl2WTFBUHNDK002dzRpYzlmVjRBOUJMVURCUjZuSm1VaWlMUFFhQTlOaklQdks2Q0J2QTVUL3JOT1daN0JBS2ZOb3hLWk1jeDZkaUpLdFZ5a1YwYnVheCtiY3I1SGtWUG5BZnZzQUY5QjYrQ1lmL012K3V3MUQ2d3E3L21sVUw4NW44OVVYdE5mVTNYbW1rSi9WUnFPZXI0WFczL1p4M1hRT1dtcitmOEJHSnpZYTdIYjFRSlpqL3ZUMjZTbUVzVENMRFE1UFQrSGc5dk5aUlhBTGhmZGEzWldaTlEwa3ZtSXFBMXdWems5VjRSRUFFUldERUJDUVJXWEhuS3VnaUl3T29KV0ViN2tnS0JpMVIzMU5FQWRMVWVhdHdZNGVMeXN4bFV1emE0NjJSaWhtQ09RVmNGY045dzBvdW5rN2xwdzNCS2RacjFJNVZMODJlRWsyQVoyZnJ2UjdoaGVPWEtGVGszWm05YjNkZDM5ZUFxUFpibUR5c2p6d2NCdkQybzhzZDBiVGpGaG5IWDVtbFgrVXRzK0xFT3VjRlBkN3AwRGMrVERYM2hGOVc5M1I4R3dFMExYb0ZSK3JSZjN3WjRuWi9ZaGlEZDZkK21jcHQveitvazk1OVVwNGZwNnA2QmVhWVI4STJWYThmbkFLQ29aSzR3dFVCZ0x3QW5BRGgzcThBNXAvbTl6RFpSSU1DKzc4blZKdDNqZWlDTWVkK3FCQUxlbHRjZGIvOWdkR3diMVpxeHgzUnZ6cmJEUHZVZ0FIY0lydGI3OGtLakUwK0x2U2IwVjkvT05EcDd4byt4alhGV1gyN05OYm9FZ1hXZGxSajNyRlpWMTlzQlZaM2N2anBGL3FjZG9vNTJHbVJLUS9pYkFQREtrZHo2cy9LMnBER2JlWTBKQlBoN2JVU1B1YVZtUE41WmZmZUpqQ0d4dkRTTlhGUE05N3JxbThiekd3QTRNQWlZT04rTzlXR2wrbzYrdHRjbjB2VitrMnl6OU1aQWp5NjhXNXZYTzNRRkd0dzVsMzlWdU9PYzg3ZXBBc3Q0eWNDYmVlVDg2VExHeTVsZmZ2TXZxL3IyZHdJWWMrMFJ5d29OVER4dFRLOFlIUFArS0JLWi9kSWJ3anorcXoxakROZTdGK2hKWXdweHhNVkQyK2ZjaWxlVTFHdk5yaXg5UGJoc1o1djVOd0NsaGN4TFh6TlA5WDNVNzNsZ0VIdDF2WGZLUGp5bDNFc1VDTEMvNFpyMElaR0M1QW91NW1xejFyd3Z0b1pmKzd6VjJ4N25XQk9NTWE2enZxNEg0SytyZllhOXcxakpPUXJIQis2SGNnK1Q2K1p2ZU1Fb25naUlnQWlJUUJvQkNRVFNlQ20yQ0lpQUNKUWtNS1ZBZ0laNEdtSzVTZDRWaHJpWGppMlUrMFFPRkNwdzh5VjJFcFA1SEhKS2xCdHpENjhXRnZjQ3dNWHRrTUM3cFhrQ2pLZlJTbThXamIxaHpBWDI4OE9wZ1JnRGJoelFlSEZ5SnFnTFZpZWdIbHlkZm54TXkxdEFTbkp2QS9Eb1NsendsWlNISW5FdFEwTlgrK0pKUUJyNGVGOWpiQk94cElBbnQ3aFRDd1Q2MnVvUWdaRlY5azBVQ0Z3eEdDM1lSN1hEbU40RCtDNEpCS3dXRi8rZGZjSnJnNUczTCtZWWRjak5NeHIzbmw0WlBuZlBMQUxkbkxQUG8rRXBaUnpqSGJjMFVIUHpyaStNS1lyZ08ya1Vma2ZrL1RGRGdqWFhHdE43Qm9WbTl3YndTTVBJNXFsU0dxNjRRVXJCUUFsaDJoTEhiSEt3eHUxYUlHQjlpN25HRUU5ZE5PTlFNSGRrTUtaMlBjdXJTZmg5MEt2Qnd5cEQ2Yk1pTHlqcFFZQ2lBQW9jZWUzSkZWSUwxWXFmMjNmMHZUYjNtK1Q4ak44VDUyZHN2eW1CeHZmblZWNEcvcjZxaDUrbVBKZ1k5OUpCK0V4RFJ5MHNUVXppdjZOL3JQSnFkbWlZbDAvaFVlUlNZYTNEZGhNVGtQU1ZoMnNsdG5XdUk1cjUvZHN3ZG5VOU41YkFsUHVjRkpFOHQxcTc3WmxaQVJTTGM4dzhxbENmRzV1RDhiYzUxOHlaaUFZOUZwdGJUTzBGSnFVZ1N4UUlNUCt4dFVWZHZwd3JHK2JhNTdIbUFyRTlvclhQVzYzMk9PZWFvT1M0em41Nm4ycCsvRkxIUEtYay9NamlxOTlGUUFSRVlPc0lTQ0N3ZFZXdUFvdUFDQ3lJZ0xWQlZ0SUFHYnNibFVpZVdybTJmR3dtbTVTRkk4Y2QzalBJVFRyUDVsT09RSUNiaGs4QndGTUpwUU0zNkxucHgxUFVwVGJyeGhRSWtQY2pLb1A5NFFZSWJ0RHhOT3E3TW9CeGtjb042SDhZSUF4b3Y1YjNVVklvTVBTMFYrcm1BamRIS1ZLNHRvTkR5ZS9UOGJyT0tGTUxCUHFNRzJPeTJEU0JRT3lVRC91VTIxVWVLOTZhMnlBY3owa2c0SUJrUkxsNVpYaDRkMlZJNlZ0SHNSNXZGdHk5RG4vYjJVSzZWdzhRQnJUelFDUE8zY0xwU0cvK1lxZjhtTWFZUm5iTEFHc1pFcXk1MWhoNTl3ck52UHpyZUNXTWFVc2VzMWxPYTl4dWJoSmIzeUxubWc4dE9GL3JxaTk2cGZwUWp4Q1YzaWw0RXZ1ajRjR1lvWlJSU215QWN4NURJemlOdktYRDBjSDQvZjJCQ2VkOGsrd0hhYWdkS25iZ1BKNG55ZGtQbGd3VVB0TVl6UlAzcGNPTGc4aG82Snk0TDEvc3J5ZytvcWk2UkhobWRmTHpDUTJqK3RRQ2dkM0NtRW5QZUNVQzI4ekJZWndibXQ3UzFzeER5elBrK1ZqL1BZYlFja2hlbTg4dVZTREFPU25Yejl4bjZRdGZEQ2UwZjVRQVk2NDJhODBGckQyaU5jOWJZOVd6aERWQlYvNVN4M1dLUEo4RzRHK2NiYkhFL01qNUtrVVRBUkVRZ2UwaklJSEE5dFc1U2l3Q0lyQWNBdFpFdXBUUnpUcGwxZDdBVENYa1hUaDZqZFhOOTF1THYyWmNwazhqTjFYSXFTZUxVc3RNN3dkY2VKYllyQnRUSUVBMzFIU0ZiN21TSmJlM3BFSUFjSW5ndm5xL2pHZXRSK2dhK3krQ08zOHJidC92S1pzTGROdjl2dXAwOEpXY0x5djFmVHBmMXhsdGFvRUFQVkh3ZEZnN0RQRkFZcFYvMHdRQ1BJVjlmQ1dvMmFtajRHTVlLdHV2a1VEQWFuSDI3NTZUU2R5a3BVZVZJWUZqTncwck5QYVZEanhOZTlmcXlwMDNPNDJuTVNNbzgxYkNjTjFYeHRnZHhYekdNaVJZYzYzUzN4M2RvL0xhbktHR3pDNGVRemt2ZmN4bW1hMXh1N2xKYkgyTDN3dlhaMzJ6OUFmVVNPOUoxVGYweEo3MDZYbURWeFhWSGgvR0ZBalFXd1UzMjd2RzZKTEZwNHRmZWpQNTBvQkVVNzVKenUxNVZjVExEYTlPS2RtaGR3bGU5Y0U3dTRjR2ZsTTA0TE9leHd3VW9YQ3VQbFNjMGM0alBjeFJsSmpybWFhdnpQUzRSbkU2cnc2YlNpQXdSbHRwbG8vbG9BZVFGQTg4YlQ1TFdUT1AyVlk5YWJPdVhoa1JNbzN0bGNpVHg3NDRTeFVJTUwvVzFUczVBdGE1MnF3MUY3RDJpTlk4YisxcWUwdGFFM1RsTDJWY1oxbm9YWW5YQkhtREJBSmVVb29uQWlJZ0Foa0VKQkRJZ0taSFJFQUVSS0FRQVdzaVhjb0F5UWsxVDBYM0dZbTVrWDIvQWZlMGVoZU9WajY2c0ZxTHYvb1pubjZoMXdDZUZKc3EwQ2pLRGNIdkRuemhXQUtCV3dWeFFKY2hzczR5NzNhN1M0aVg2aEdCbTRwMFZjMjdiTWNLM3drbjZqNlQrUUx2NWdLL1JXNlFwcHo4S3ZWOVpoYnQ5NDlOS1JEZ0tWNjY4YWJvcEIxNG1wci9mdWFRd3ZROHUwa0NBVzRxVTdCRDQwbzc4RnZrYVNxS1ZNWU1FZ2lVb1dzWitvYUtabWpzT3lLYzlDK1Q0KzQyeC90cXVVbG45Zi9XS1g2bTdoMnZVOHRqZVVDeVhPWmFjNjFTQWdHZXpLZHc4TmxPRDBtcEhCaC9pRUJnRFdNMnkyaU4yKzFOWXV1VTRKaUdKcnFUcCtDTHJwMjdBaytxYzl5c2c5VnZETmtBdDdqbHRMZStaM2pYUE9kTHZIOCtKM2kvU1lwd1U3eU9wZVJsNkxWYTlidXNPWHhLbnF5NEh3aHpMUnJkU3dRYUUra1Y0aUlsRXV0SW84NHYxNWk4SHFjckRPblRtdW5SNEVSUGVIMWluVkpGcEVDQUhzNG9zc3NKUzFnejUrUzc5RE14NGQ4VXdxNGg1Vm15UU1EcVcxbnVWSytSYzdWWmEweXo1cHhybnJlMjIrZlMxZ1JkMzQvVjlwcHpiWG9Ob0tlWmxEQmtmcFR5SHNVVkFSRVFnYTBrSUlIQVZsYTdDaTBDSXJBUUF0WkV1b1FCMGpvVlRSZHpkSC9LMDlxNXdiTndwR0dNbTZoN0pMN0VXdnd4T1o0ZzQ4a2l1dWFlT2d6ZEpHVityYzNGbkFVUjc5M2t5YldkRFNCMEowcGpobVVjYWlkREYvenZHWEZUc2ZtK0lZeTltd3Zjdkh4Sll1TXA4WDBtdnZJUG9rOHBFTmdGd0hFOTF5OVFaTVI3Z2NjSW15UVFvR2lITHBLNzV0KzhWNXdudW5NM25iM3NwMnd6M2p4MXhiUDZSYy9ZTU9UOTFyTjdoYXRtdUFIWkZVNnZUcWN5VHM0cFc0NXBOQ3BTTURKMm9EREY2MEhHTXRTWE1yUTN5eHdUSmpHZTU1NTVhNjVWSXQrcHJsSno2elhYbUxhV01adGNySEc3UFNleWpQU1doNG5jdXVCek1YRUM1OVg3QXZoQjR3V2JJaEJna1lhTVdkNXY4Z0NIRjZ3aDlVZEIzbTByMS9vL0g1Q0lOVllOU0xyejBjT0MrLzdVZVhzN01lODZZV2orZWMwSHZSN1F1MFZYeU8zVG1tbXgvNldISzg3bHB3ajhqcCtSc1haaTN1WmVNMC9CeC9PT1dOOUpMMzMzeXVUcmVmZlFPRXNXQ0xCc1BERHhtRWdoVTBYZGM3VlpheTdnV1Flc2RkN2FyTDZscmduYVRjdzdybk52OHNTTVBhU2MvYkNoMzdxZUZ3RVJFSUd0SVNDQndOWlV0UW9xQWlLd1FBTFdSSHFvQWRJNkxaWmlHSWpoOHl3Yzc1dDVxc05hL0tXNktLTXg0UTNCZVA3cGFnSE42eFhxd05OL2Z4eU1NaFFiL0pHenpRdzkwV050THFZdWlDeFJTRjJzM0EwdWIvcDhEOTFYMDNqODRkWUdMSVVMTkZqUWJTenZ3bzVkZ2NCMDZLbUFScXphVGEremFreERBOXNYVDNUVGRldXUza1JEdktIZlorTHJPcU5QYWV4bGY4SjZ2RkJIVG5nU2dFS1RNY0ttQ0FUb1lZSHRyZXVPM3hJYjVCNzJzVEdIZDl6Znc1UElSSEdzZnRFYUc4Yk81c1VCZk1Ud29ITExJS1JLeVV2S21FWUQ1SFBDTzA1cGJLYWZONXhvNWhVdHZPYmdva1lHdkVKQmxwbWJlbjJ1cUlkZVY5U1Z6Vmkvdy9nVVVuQWNPU3RTUm11dU5WUWdrR09jb29lSmY2cThpZkJ2ZXNwcGhndFhkY3FyU0RqbTNiUTFQdWIwRldzYXM4bkJNZ3AwellsaWJ2NXBTT1czU0pmbkpZTjF2VUdYNTRJNUJRSVVuL0cwK0RHaDcyS2YwVFNNY3c1OHllQlZpdU9VMVcrUUsrZks5TDZVR2p6ZjVLRUFhTWhpbnRxQlhxWG9ZWVhDNDJibzhUTzdBQUFnQUVsRVFWUVpLQmJoV1B0WGp2elhhYkwvZUUxcUFScnhyYkdLNjQ1M0FIaFgxUTVQQm5CcXk5c1MrNC9kZ25INy9nRG9FUzBXY3ZxQWRub3BmUUtmSmUrWFZZS1hEMVpYV0p6V1NHekhjSVVIR2JiN3Fqb2ExNW9jcTdpKzZncER5NU55ZlIzbjdmU1l3eXZWdnRXNEtxQ3VBM3JGZUpqamVwZ2hIcC9tWERNUGFPWkZINDMxbldQMTF5VUxzSFNCd0MxQzM5bFhabDRUYzRQUUYzbTR6TlZtcmJtQVp4MncxbmxyWFM5TFhoTzAyNDVuWEtmblRWN0pRK0ZHYWtqZEQwdE5YL0ZGUUFSRVlLc0pTQ0N3MWRXdndvdUFDTXhNd0pwSTV4b2d1Ym5FemJIbkd2ZDE1aHFJMjlpc2hTTmRyTklJMnpiQXNueDBjOGZOeXRxNFVXOVEwcXNCalk3Yy9EKzhwNTVTTm9XNHVjWDBhQWp3M0IzSnRMbVpSYzhFMTNHMEUyNmMwUTFxenVsZmEzTXhaVUhFdTFESitrWkdudW1TbVNjTVV2UExUUjF1ck8xbnBNOHJMV2lZOGx5L2NLbHc4c2U2djVVYnA5d1FUZ21lelFWK0wxMHVTWThNNzZPUXBIYWR6Mi8yYWtIVVFBYmNFR1hiblN0TUtSQmdPK1FtZHp2azNHZVp3bXRUQkFLOFZvQ0dEQm83bnRBNjZWYnFSS0RGVlFJQmk1RC9keHJoMlJmUzhOZ1hQSnVYeldlOVk5clhBZngxOEdCZ25TSmwvMFpESmRzWU54cjdnbGVFeFZPYXNUdk9MWGYvZnNKbng0eWRNdlFhRXF5NTFoQ0JnTGZPV0JhT3Q2d0hHcWlhUnJZWUU5WVpQVWs4R2NBMU02NFlXTnVZVFJiV3VOMDFKN0x1R3ZZSVNWTGJKdXVGQnV5dS9aUStGOWx6Q0FRb2pQaDdBUFNrNEpuL2tnUDdqVWRVWmVQM0hBdjBWTVc1VzZwNDAvb21tVmU2MGI5WjYrWGtUUVB1VjR4OGNTMUJ3UnZuakxGK2o4a005VERSTlllbkFabWlBNjVmNkVYRzZxZnI0bHdRd0FzQS9LVlJQdlloN0llOTZUYVRTN2xTaXllNTJmZDgwL0Z4VU5oRW9RNzc3SlF3VkNCQVFRalhQVEdoOFUvRG5JdnhyRytBYllmaUxMWWQxa2RmNlBJUTRpbjNYR3RtVDk2bWloUHJPNGQrajFPVVlla0NBVXRZbWZyTnpkVm1yYm1BZDQ2OXhua3IyN0YzZmpubm1xQTl0bkF0c1hmUFI4aTVOajNKVUtoSWNWa3pjSitPZTRJVS9kWHo0Nlp3aTNNbmppM2NNMVFRQVJFUUFSRVlnWUFFQWlOQVZaSWlJQUlpNENSZ2JaQ2xDQVE0aWI1eTJGVHluSnpoUkp2M0tGb2JKWjZpV0F0SHV0VG0rK3JBalROdThMM1FlRDgzYVhqU3ZHOGpuWnZFTkVUSE5vWDRMdDRWeVZPV3FjWnc1dGU3eWNqM2NKT1VpNTdVVUVvZzREVUVjTk9MeHZ0VUhwd3pjS1B3Y1pFQ2V1dTJuUVE1UHpJc0R2dVMvMXB3MTlzK2JSbmpiVzB1Y05PQUc5RE5FN0U4MFhuN2NMb29samJiSnUvSFRlV1kyajVpOGFjVUNQUnRzTkIxN0EycnZvY25Vc1lJbXlZUXFCblZ3cGdyaEx1Y20yNm9lZGNrTjZoNU1yUFVYY044cndRQ1pWdW90ZW1ZNnBXQndxNzNkMnljTlhQTk5uR2ZxZy9uRlFZcGdhZkZlSUsxNzlvWjcybGczbGxOTHdMdHpiMDZMeVUzOTJtazVCaFBOK05kNFl0aEk1SWVFR0xCbW1zTkVRaDQ2b3g1NDl5QUlrS1BhSzZyTEJ3ajZhNmVkN2JTOWZLbkhKVy94akdieGJMRzdTNkJnSFhYY0twQnhNTEx0a2xqSTRWZlhhSFBnRHVsUUlEZkRvV3hIdU51VnhrOHhvbGNyeUhXTjluT1QrN2MwdXIzK0I2djBLaXZUYlRuOEZ6YjBGRHVGUUcxMC9XY0dCMXlSN3ZuU2kzMnFYY0o0MUdxQ0lHaWFvcm42TTNCRTRaOG0xY01YZzI2dkV6VTcvYk82ZHQ1WmRvVXBGd3BVZ2l2Z2JLWnhGeHJaazlkVEJISDZxdTdQSzlNa2ErVWR5eGRJSENSY0NDQ2d2YStrSEw0WUs0MmE4MEZ2Ti9mR3VldHJEZlAvSEx1TlVHemZWbmpPcjAxZmpzY3NxaWZZLy9QZzBRMC9NZkdHczY1MkhmOExPVkRWVndSRUFFUkVBRS9BUWtFL0t3VVV3UkVRQVJLRTdBbTBud2ZUeWZIWE9jeUR0UGgvZUNlUU9QcVBaMG5EejNwTVk2MVVPWW1XYjFSeElVQURWODBWQXdKRndzcTR6MGlpZEJ3U3hkbU9lNVAyOG55cERqdlcrMHpyakIrN21tU0VnSUJ6NFlpOHpqRTA0RzFVT1VHTGpjVXVXbWV1cUhJdkhuS2tMcHhaRzB1ZkxtNkUvNHFqUk9BdkJMaDNvV05za1BhdWZYc1ZBS0JtRHRRWGp2QVU5UmpMZG8zVlNEQXV1MFNRVkhveFd0UWVGcDR5UGZhMVhZa0VMQytxTFRmTFdNZmpTUWNnNnd4bkcvbDZjdjNHQjVyZUYwTCs4RFUwN3AxcWF5VGxwN1R3SlpiOVZ5RFlSZDVxLy8yZWl1dzVscTVBZ0ZQbmJGY3VSNTd1cGpzRk1Zcml0T3NzTVl4bTJXeTZyM1BzR0dWZDhpcDZ6YnJtTUVoOWcxWWZVYUswYWFkcDVvYjF3MWVEeU5XRzdLRUVIWDdwa0U4SlZqZlpETXR6aTBQRG11Tm5MbWwxZS94WFVQYVJqMkgvMFJZWDFHNE5EUjQxamcwcXRBelJrcndHTlM1VG1RNzVJbk8zT0F4cnRkcDV3b0V1R1o0YlJEMDl1WHpoSEFOUnFxZ3JrN3Z1dUZLdXI2MUg5Y1E5SGpIYXlPOFlZNDFzemR2VThTTGVYc1pJbnlaSXUvMU82dzZ2TEZUeERkV25qMzlLNi8zNC9makNWWjV4OWpuWWI2c3VZQlhJTERHZWF0bmZybUVOVUd6L1ZqdGprSjQ5dHYxbm1XSnNjYlRmaFZIQkVSQUJFVEFRVUFDQVFja1JSRUJFUkNCa1FoWUUrbVNyNlZCZ2E2N2VPS1JyaFpMaHRqQ3Nma2VidkpSSEVDanlkQmdiYktXZkZlZFY4OG1ZNDRiL0tFQ0FjL3BlNWFCN2s1NWNzaGpXR2pYajJlVHVNU1ZGZGFtYU9ycFZHdHpvVm5PRDRTN2EwdWUyQjdhenEzbnB4SUl4RGgrdHRwSTVsM252TTkxakxESkFvRW1MODdKZVk4dnJ6VnB1a1F1OFYzVjc1RkFvR3dMdmEweG5xVVlucTFUblNYNko3WXhldE41U0E4R3IzRS81dmFmU1hPdThkZ0NxR1AzeXZOZWJ4cUVQKzk0anpYWFNxbW41dXVzZVFqamx2eCtIVVg5N3lockhiTlpBR3ZjN2pPaVd4NG5TaG1mK0IzUkRUdzlRblFGaWtudjJ1TmR5R296UXdRQzF3cmVKZmp0bFp6bng5eUJzL3c4WmMzNWNYMFZrNmVkV3Q5a000M0hBSGg2cHZDVTZmRFVJVDFuVVdUUUYzaktuTjZrZnV6SmZDc09CWkxYQnZDTUFlS3RydGRhL1N6YklMMkJwWVJZbjhwMGFLeW5weExPdFljR3k3aGVwNThyRU5nZkFLL1A2UE1pOTlYZ25Za25Wb2NFYTJ4T0ZXck1zV1llVXY3U3o4YmE0QkNoVHVsOHh0S3pET1p6Q3dRNFJuSE5UOUYrWC9BYTEvbjhYRzNXbWd1a2xNSHFUNWMyYjdYNm5TV3RDZW8ybGpLdWN3NVA3MkFuVC9uaDZsMGlJQUlpSUFMOUJDUVFVT3NRQVJFUWdma0lwRXlrYzNQSnpTNHVvS2dTenpFTWU5N3JYVGlXT2cxTGJ3UzhvNHduVlByQ0dIZDZlMDY0cHhxd21mOGhBZ0dQQzFpK1kraEMwdG9nOXQ1ZjdXbFBQTlZ3WkU5RW5zVGRCd0JQclh1Q3RibFFwN0hXaGVwVUFnRnJVNW51YU84WXZrdFB2YVRFMlFhQkFBMWIzQmpsOVREdFVGTHNGQnR6U20yT3BkUnRMSzdWTDZac0RKYktVenNkSzQ5ZXcvUEZnOXYrNWxVbnpYZngrK0lwUlhxcEdScXNFNlNlZG1EZGJ6dkUyRmFYenpyeGxYS252RFhYOHRaVGsvM2xBTkJkNnE2UkNpazE1OG1wODdXTzJTeXJOVzdIak9qMDJNRnJyZnBDcWhlaXJuUmlkVys1cXg5VElFQ3hLTWVMbkZQMnNUYkcwMzdIQlNONFZ6eGVMMFJYL2ltbnFLMXZzbjRQdnpIMnMwT0ZtNWFMYVhwQW91Q0lnc2ZVTUJiM3kxY0c3cE1xY2NNbGVqTEVlZjJ0RTlaMm5qNXJxQmlqbmRYWWZMNk9teU1Rc01SQS9BN1lCNzR2dFRJNzRsc25lVk04QlRINXFkZk1CUkFVU3lJMjEvRUtGSXRsWmtCQ1N4Y0llTnBaeWh4NnJqWnJ6UVZTeXJDbWVldmExZ1QxcCtRZDF4bC9MdkhzZ005ZWo0cUFDSWpBWmhPUVFHQ3o2MWVsRXdFUldEYUJsSW4wMEpMUTNUNk42blJIeHRNK0pjVUNub1VqWFo1U1VjOTc1SWVHKzRiVFFIM3A1THI2OStUTE1xNmtHckQ1VHN2SUZOc005M2cxR0NvT3NPNkx6Tm5jaTdHbXdZV2JvcGZ0aWVReFlOV1BXcHNMZGJ3eEJDV2U5alEwemhRQ0FXdWpvaTREK3hoZXowQnhSMGtEeFRZSUJDeWhUeWtCUzJ6TVNkbG9HOXB1UGM5Yi9lSVM4bXZsMFd0NHRveWFKY3ZLdHZiSzRBcTdxeDQ4eG4xclRNZ1pCOXQ1MlN0Y2hjUjNkWVdVVTV2V1hNdGJUODE4V0tmUjZIcWFKMXkvNjJuc2hlTlk5YlBrTVpzb3JIRTdOaWV5eHFzY0VXZTdlbUtDT1N2OU1RVUNoWnZST1pLajl6R0tLN3BDam5IZCtpYjVIa3Rza1ZKZXovdUdlRzlJeVlzMzdubURoeHA2S09nS3FjSU1lclhncWVLK3dDc1NibEhWTTkyRmx3b2U3am45a1NYNDRGcVhKM0E5MS90NHlocjdicjlmQ1JGdUNJRDE0UWxUcjVrOWVab3FUbXl1NDduaWFLcDhXdStSUU9BUENaWGM1NmxUdCtZQ0tYTmphMTYwcEhucjJ0WUVkWDE1K252R0hXT3NzYjVaL1M0Q0lpQUNJbUFRa0VCQVRVUUVSRUFFNWlQZ25VaVh6aUZQVnZDMEt1L0ZMYkVSNU5uc2VGNTFBdWloQlF5SDFxa1JzcUtiN3RnbTJCQ2VsbXRacHAzcTl0TXlNdlZ0V25yY2Q5TFljNXVCUmdwTGRWOTZJNDZMZUo0T3BmaWhLNlNjbXJJMkY1aCt5ZE81UTlwV3pyTlRDQVE4SjhDYWVhY0xjN280enIwbnZjMWhHd1FDTERNOWxMdzBZcmd0NFM1WEFvR2NyNnovR2F2djloaWVMU01RUlhWMCtjeTdPa3VGbUtISWEreXpOakJUaEZ4ZDVZb1pKRlB2ZmJibVdwNTZhdWJSOG00dzlqekVhZ2RySHJOWk5tdmN0Z3k1TVdQZVVLT3pKVUN3UEJTc1ZTQVFFK2JtR0Zhc2I1THR3QkpiV045QisvZW5BT0FKK2I3d053Q2VuWnJveVBGai9XQ0tZZG9hWjFpTW5DdlNQTVczeG9vY2dVQ01TMDU2Vmprc3dScEZITyt4RWdtL1Q3bG1kbVpwa21qVytqMUY5RGRKaGlNdmtVRGdEK0dVMnVkcHBtek5CVklFQWt6WDZvdVdNRysxK3VxbHJnbkkxek91anpuV3pOMHY2UDBpSUFJaXNHb0NFZ2lzdXZxVWVSRVFnWlVUOEU2a3h5b21OMUh1QStBTkFINHo0Q1hXWmtkSnQ0SFd4bmVxNFNDbjJOWkdrZWNFWnZPOWxwR3BhelBjSXc0b1lWQmtQbU1idzl4czU3MnQ3ODhCR1hubVlRQ2UxZk03N3hIZTB5bDZzRFlYK0lvVVY5V0Zpems0dWJFRkFwWnIxYjRDMEIweE4vdE9IMXpDZm1OUnppWndYM3Y0OTlDbWVBSm1TT2o3bHIwR1NIck5vRXZjSy9Wa1lxZzNrQXNFRHpMc3c5b2hkYU50Q0NmUHMxYS91SVQ4V25uMDFMczFwcVVLemp4c3J4SGM0N005ZEFXS3M5NXFKR1FaU3I5WWVRRFlPd2l3UEhscXhySFNwcmlScDdpOXdacHJlZXFwK1M1ckRsRGFzT2t0WngxdnpXTTJ5MkNOMjVaQXdIS2wvaVlBRk1uUTYwMXFpQmtZT0RlaG0vcHZSaEpkcTBEQTZ1dXNPbWtqc2I1SnhpL2R4MXRsb0xDUkJxSWxoVmg3U1prRFdkY1ZmRHVjZ21jYkxoMHNyMkFwNVdEZUxsSmROY1krKzJvOUdhV1hQSTVoWnhZc0NNZWtqd0FneDY2UTBuYW1YRE1YUkRBNHFaalhoeW5XN29NTDBFaEFBb0Z6MGl5NXo5Tk0yWm9McEk0UjF0eHlDZlBXdGE0SldHK2VjZDB6VHlyNXJTb3RFUkFCRVJBQkp3RUpCSnlnRkUwRVJFQUVSaURnbVVpUDhOby9TUElmdytuKzNCTy8xbVpINnVaN3JNeVdpOHd4akNudC9GajNzZElvU2dQQ2w1eVZaMjFhdGpkZUxTTWlYMHR4QUUrMERMM1N3VHJObnlxR2NDS0pYcnVRc3Bsb2JTNHdQN3pEOVdodnhoWVdiMnlCQUUvVVBUT3p6Tnp3dTIzQ2Q5RDNtaWs4Q1BEZEZBY01kVWZMUHAzOVF6dWs5SUdXK0dmSXZlYVhyTzdsL1ZqbFl2NHlIWGxNM1dqTGJCYnV4NngrY1FuNXRmTG9xZmZZbUpaek10Y0RPTllPK0x5WGJld1U1eER4R08rT3BwR25hNTNLNnpab2hQMjhwNkFoampYWDh0UlQ4M1hXU1dUckZIbEMxcE9qcm4zTVpvR3RjZHN5Umx1ZW5uS05HVlk3OGdoWDFpb1FzRVF4VnAyMEc3TEZjb3krejJwWHI2N0VIZmRJL3VMR2ZTQTJQcVRNaFZrLzc0aGs5VlVBN2xYQXkxdlhLNndUc1NubFlQcFdXNlRYcTljV3JoYXJ2YWEwblNuWHpJVXhaQ2RuOWNtZXZqUDc1U004S0lIQU9hR216cUc4VldMMTJkNjVhdk45UzUrM3JubE5ZUFdUckljeHh4cHZ1MUk4RVJBQkVSQ0JEZ0lTQ0toWmlJQUlpTUI4Qkt5SnRQZFVLemRmYUpUYXNUSjAvbW5ZUEtkeCtDb0pSUnRpZExJMk8wb2E3V01MT3haM0ttUHZ5eXVYendkSCtLYTRtN1NNVE0yTlY3bzJma3QxK25PL3lMdnBNcC8zaU5KNFB6UllKM1Y0dlFEdm5TOGRyRTBCNzJhMGxVNnFtS04wT1llbU42WkFZQThBSjRiVFdsMzVmRHdBR3FPZUdDa0VqWG0zSCtoaFlpcUJ3TkM2aUQyZnNubkd1ZmtqQUJ3ZVNaQkdwbWRrYk9aTElGQzJsbU9lVHZnbXowbkcySmlXZXNlMHQzVFczTU5yN0xEdWdjNForOW4rWHhtNWFzUER0TTNCS20vSzkzbitZR2pyRzROekJBemVldlBFVy91WXpUSmE0N1puL0xmYUpxL1pvcENEUWhadktDRmNXWk5BZ04vaWhRQmNvVHF4dlU4MTNoOFd4dnd1WHA0NmFUNW5mWk1wN3ZPOTlYZXBJSkRqaWZhdTRPMzN2Ty9MalhldTZxb3llbS9pQ1huTzVSL1prMUNLWWQwU05ZMWhWRzltdStTVkFERVBLZDRyY25McUpyYldUUmxEcGx3ejU1UnpqR2RpWGwzbUhqTnp5cnQwZ1lBMVQyR1o3d2VBQjBROFlhNDJhODBGY2dRQzF0eGc3bm5ybXRjRTFyaWUydTQ4YlZOeFJFQUVSRUFFQ2hHUVFLQVFTQ1VqQWlJZ0Foa0VySW0wVnlEUTkyb2FrMjhYN3RTOG9DTi91VVluYStGWWF1UEpXdkJPYWV5MURFTXBkNWw2QlFLc1Q3ckQ1eVoxWCtCR3l3R1Y5NENUSGZYdGlXSzVvazdaWVBDOHI0NWpiUXA0MjVTVnpsZ2VFRkxLT2lUdVdBSUI5azEwTWI1L1QrYnFPeEMvQytDUVNxREV1eWQzNkluN1d3QVBBVUNEVElveHhtb0xLWnZqVmxwRDZzRHpiTXJtTWRNN0Q0Q1hSb3lrTER2dnBhY3I4NVFRRXdoNHY2bVU5dzJKYS9XTE9SdURRL0xUOVN6dnM2YmhwUzlZQmlkclRNc3hobnZLYU0wOUtFS2pLM1hMbzRhVlRvN2JZTXM5Zk00OXhWWStVNzVQeThqNDRlQzloNGFxT2NMYXgyd3lzOFp0anpHYWZTaFBFVk9nMWhWUzNkeFNESGRrK0M2NjB2TmVWYlEwZ1VCdGpONnRFcC8rY1dCUG9mR1ZlN3poOUxWcFQ1MDBuN1creVNHdW52dnlhSGxPc2Zycmt0OHoyeWZGRjNRblRTRUEyenovWExFUy8zRmM4QVR2SE1qeUtqS21VYjB1UjZtckVwaGVUS0E5UnJ1cHl4QmI2NmFzSmFaYU0zdmEwRlJ4SGxpSlhtaDRIZEozVHBWWHozdVdMaENJWFNkV2x5K2x6NTZyelZwemdaeDFnRFgyekRsdjNmUTF3UmllZ1R6ZnErS0lnQWlJZ0FnNENFZ2c0SUNrS0NJZ0FpSXdFZ0Zya1RKVUlGQm4rM3lWOGU3SkFCNXVsSU51VjI4YTdpWk9LWEpzNFZoeU1XRGRBWm15UVpOU3ZxNjRsdkdLOTVqeVRrcFBzTkxpSXY3WVlHQzlUeVJCaWdOdUZlN0o5THpYRTRlbmwyaWs2Z3MvcnRyVnp6MEpKY2FoVjR5TFJwN3hiZ3BZbXd0ZVExaGk5aWVMUG9aQXdIT0MvZjRBamdpbFpId0trV2lNNGFaM1gzZ1dnRWRuM1B1OGJSNEVhbjdXVlNLOFJvUUNEdDRkN0EweEEwbktacUgzZlVQaVdmMml0dzhZa29mWXMyejNyd0Z3bDBnazYxNWlhMHpqSGVrOFNWczZVTXpEdHRBbjZra3htTWMyL2lrSW9qY2RqbC9lRUx2alBXZmpsdSsxNWxvcDViWEdsTEc4Nm5qNXJYM01aamt0eHQ2K0tuYmluKzlKdVFyaTZtRnV2SE5IUmFTMDg3a0VBaFFDVUFSQTkrdzNBSEM5Y05WTTE1VTQzcmJXak9ldGsvcVprdCtrTjc5ekNBUTRKNkxZWXUvQW5Od3BNdktLQUdKbDh3b0VMR1BoV0o1cW1ua3ZKUkN3REdnVXBQSzZLUDVkT2x3aU1zZE5XYTlQdFdZdVhmN2M5Q2h1ZjI5by8rMDBVdnJPM1BlUDhkelNCUUtXa0pGWFNySlArb1FUemx4dDFwb0w1SzREbGpwdlhmdWF3QnJYeC9BTTVHekNpaVlDSWlBQ0ltQVJrRURBSXFUZlJVQUVSR0E4QXRaRU9tWER3Y29sKzN2ZXJjbk42ejZqQU5ONEo0QTdBT0RpMFJ0aUM4ZVNKMU9zQmU5WXB5MjdPRmlMMXBTVFNKWWhqTmNtN0c2NEhLY2hpWVlWbnZvdUdXSjM0WlY4VDJwYTNrMEJxNTdtTnVha2xyc2Rmd3lCd0VIVmliWTNSdnFKRHdGZ216MmpsUm1LaTk0RW9NdUFVa2Q5YzdpU292MXNqTU8yQ2dUSWhFYVh0MFhxNGdNQVdGOWVuaElJRFAzaS91ZDV5K2pDbUt5YldKOTgrVXJrY1ZJbHRxSGhZVWtoeFdET0U3QThOYy9Uc0YwaHhaVzdkZEkxOTU1aWE2NlZVbDVydlBhT1RXUFY5OXJIYkhLeHhtMnZNVHBtbU9KNzZJR0ZIcGVzL3BQejUrY0VUemhkOVViajEyMmM4K1lwQlFJMFRsTWtRV01JeCtmWTNIOW9lL1RXU2YyZWt0K2tOKzlUQ1FSb3hHWjdvT2VrYTNzemx4SFBLeEN3eXAzUy8yVms4L2VQbEJJSVVOQnkzTWhjYzhxWXNsNmZhczJjVTQ0eG5tSGZ3enJyMm5mMjlzRmo1R3RJbWtzWENGeW51aGFHM3pVUGlIUUZldERaczFxUDBRdWNKOHpWWnEyNVFPNThhNm56MXJXdkNheHhmUW94bXFjOUs0NElpSUFJaUVBSEFRa0UxQ3hFUUFSRVlENEMxa1E2WmNQQlV3cjIrVnhNOFhSN1g2QVhnWnRVbTZZZjlTUVk0c1FXamlYTFlDMFVVNHp5Q2NYcmpGb3lMNWJCZ2RjRlhEZVNZWjZVb2FpRHArRkxCMnN6dS9UN3ZPbDVOd1dzZXZLbTQ4M1gxUEZLQ3dUb2dZTGlnSjE2Q21LNXR1ZG0rSHNBOEI3c3ZrQlBIOXc4OTI1TWJiTkFnSDAydmI4OExzSXo1V29ZQ1FUS2ZhSFdCcVBuaEpiVlA1WExiVnBLS1FZankvVjZ5cW4vR05PY3VVbGRhbXV1bFZMZTJQM1hmRitxb1RTdFp1ellheCt6V1VMcnUwaGhYT0trWU1sckw2ejZTU2xiWDJ1Z1VlamVBQTZycmhqelhDOW10eW83Um1xK1MzNlRkdTdPam1FWnlvZXVJY2o2OFVFWUVQT201TTJ2RmM4ckVMREdxdGNCNEJWRE9WZEFXWG1zZnk4bEVMRHEwSnVmMHZGUzFycFRyWmxMbHpFblBjNWhlYlVBcnlMckNpbGVYSExlUDlZelN4Y0lXUE9VMUt1UTVtcXoxbHdnZHcyLzFIbXJWZDZ4MnJPVnJuZU9QTWU0YnVWZHY0dUFDSWlBQ0RnSlNDRGdCS1ZvSWlBQ0lqQUNBV3NpbmJMaDRNM2V4UUFjWDUzMDNTUHlBQmZ6RC9ZbUNHQ3FoYU8xY0JxNnVaZFFaSE9qa1NkN2VmTC9GNDVFTFlHQWxRUlBWZkxQR0p0NzFtYTJsYmV4ZnZkdUNsaHR4cHZPV09VWW1tNUpnWURIQTRESEdNM05hSG9pNFVtSXZzQlRCQWNDK0pJRHdCUUNnVko5YmQrMzdOMWM2Y0xCVTdESEFMaFJENnNVZ1ZEc2RFcXFnY2RSZFlPaVdQM2kzTjh1ZWIwalVrTFBYY2hXL3pRSTRJQ0hVOXRyakVXS0MrR1lNVGZsbEhhNzZOWmNLNlc4MXBnNDkzZGs1VzlBc3hqMGFNcjNhbjBYS1l3dkhlYTh2TnU5SzNqYVZheGRwZ2hnK0g2cmZsTEsxbFVldW8ybVo2UXJES3F0OUlkVDgxM3ltL1RtMWpJdTU2NGh1SjlHa2U1TEp4UmtzTXhlZ1lEMVBlV1cyOHZkYXZmZWNqQWRxdzVUOGxReWJzb2NjcW8xYzhueTVhWVZFMWVkSHE0ODhhd0RjdDgvMW5OTEZnaXdQM29sZ0h0R0NyL1VmWjUybHEyK0syVmUwVTU3aWZOV3E3eGp0V2NyWGU4Y2VZNXgzY3E3ZmhjQkVSQUJFWEFTa0VEQUNVclJSRUFFUkdBRUF0WkVPbVhESVNWNzFnWWxUL2plckRvRncvdmxQV0dxelE1cjRUVEZKbGZOdzlxazhpNm1tSjVsQ0xQcTRDZkJUUzQ5RFpRT1Zsc3AvVDV2ZXQ1TkFhdk5lTlB4NW12cWVDVUVBcHdMM2c3QWF5UDNxN0pjS2RlUDBCakRLeit1RkFIeW8zRGExdkpXc3UwQ0FTS2tCeEVhc3ZxdWIvaHE1YXArZndEZk5ocGc3SHRJTmZDTTNkYXRmbkhPYjllekFVdVBMcnoyNWF3SUtLdC9HcHR4WC9vcDR4ZlQ0TDJwSjRhcmNMclNmQldBZXhraU5wNTY1blVhZFBuZUZlNWNwZi82VENEV1hDdWx2TmFZT1BkM1pPVXZFK0hneDFLK1YrdTdTR1g4cEtydFBiR25CSlpuQ3V1YWd0UnJMNno2U1MxYlhTenZOV0xlaXFTNGxWNSs2QUtjZjNpbENqMFM4T1JsVjBqTmQ4bHYwbHNtYTk2ZXM0YWdwNERIUnRxWE4yOTFQSzY3dVBZamM4N3ByMXdKQVI3Wms0alhzRzU5VHpubFRpMlhQQWo4RDdHcDFzeXBkVFJHL0ppNGl1UDUzWTA1MGhoNUtwSG1rZ1VDdTRhcnF5NGJLU2c5aG5ETjV3MXp0Vm1yNzBxWlY3VEx1c1I1cTFWZWIzMlZqdWVkSTg4eHJwY3VxOUlUQVJFUWdhMGxJSUhBMWxhOUNpNENJckFBQXRaRWVpeUJnSFUzWGFxcWY2cUZvN1Z3bW1LVHEyNDJsNnJ1ZHYwWUFDN0V1MEpLWGl4RDJMTUFIR3pjN1Q2V1NNRGF6SjdyTS9KdUNsaHR4cHZPWE9XMDNqdFVJSEN1Y0QveHM0MzdpYjBHNkdaKytZM1E0QmU3ZzVjYjNEeDU5NjVJUVNVUU9QdnUxa2RVOTRrZUh1SGtFWENVWkdtMXphRy9XLzNpbk45dXFRMVlxMzhheWpEM2VlOW1ZRFA5cHdCNFRNOExLVnk1SVFEZWU5c1hZaXhTVDJtMzMySE50VkxLYTQySnFZYlMzRHJxZTg3S1grbjNlZE5MK1Y2dDd5S1Y4ZFVCZkNneWgzb1JBTHE2N3ZMQ1JKSFBVVDJGcE1pTlYzSjl3UXRoUkE4Q0I0WHJnWFpJeUF1TjBaK3V4bUI2TzZGQm11UDh0eW9XcDFXdThuL1RTcWQwblpUOEpyMUZMaTBROEl6TFhYbjdZU1hDL2dpQWZ3djhQdy9nbE1wekc5ZGU3VFlZR3djbEVQRFcvUGp4VXRiclU2Mlp4eTkxL0EweGNWV0taNkc1eTlIMS9pVUxCQ3p2VnQ4UDh6RjZjdk9HdWRxc05lNmt6Q3U2eXJxMGVhdFZYbTk5bFk3bm5TUFBNYTZYTHF2U0V3RVJFSUd0SlNDQndOWld2UW91QWlLd0FBTFdSRHBsd3lHbE9OWW1HVTg4N2dPQWQ5UjV3bFFMUjJ2aGxHS1U5NVFyRnFka1hpeERHQmY3T3pvMmYxUGN0bnZMYnhrYi9nSEFKN3lKRll6SERYbVBXMHFybm9adUxoUXNVbFpTUXdRQzV3ZndRc01OSlRORkk4Z3RxaXNCNkZra05Wd2l0TnMrOS9oTWp5N3lLWUJoV2JvTU5DV04ybjFwbGVwcng3aGlvR2JPelZhZVN0OHZVZ25XRlJBbFdhYTJoZFQ0VnI4NDU3ZkwwMWRIUmdyazNZQzEraWNhTlorZkNxNUFmSDd6SFA5ajNnL2FyN2wrOENMQXNhb3I4TXFkb3lONWk1M3lUbldIMjM2Tk5kZnlibjR5WFd0TVREVmVGNml1Y3lSaDVXL3BZellMWTMwWHFZeXQrNFlwWE9FWTljMVdaVmhlTFdMQ2dyNTZ0ZW9udFd4OGorVmhwczdMTDZ1cmZ6aFA1aDhLQTg1TWFIeWw2NlRrTitrdGhyWDJTVjFEZUVVWkZBVDhVK0JPVWNDdnZSazJQSXhKSVBDSElMOFNQRjJrdE8yRTZ1aU5TbzhiOUtMRGI4d0tVNjJaclh5TS9mdk5neWV4cnYxbUNwTG9MZWlNc1RNeFV2cExGUWpRb3drOUE5dytVbTZQZDZ2MjQzTzFXV3ZjR2JvT1dOcTgxU3J2MHRjRWM0enJJMzNpU2xZRVJFQUV0bytBQkFMYlYrY3FzUWlJd0hJSVdCUHBVa2FyZG9ucEtwVHV2L2VLb0VqWnBKeHE0WGlOY0FxTStlOEtMQk0zN0tiWUdMSVdjU2tHRGNzUXhycmc2V0RyQkRHWjVKejBqbjBSRDZ0Y3k5S0RRVjlJYVNkemZIbFdQUTNkWEppalRNMTM1Z29FL2dUQUd5SXV3ZXQzbFBCTTRSRUo4SDAwbkxDdGVVOHVlamZIbTd6V0xCQmdPU3hEa0ZWZkVnZ00vMkl2RE9BOWxkY0xldUxwQzE3WHVkYVlsbXF3R2w2Ni9CU3MrVXlNU2V5a29lVUMzcE5qSzI4bEJRS3BybnM5K1UrSnMvWXhtMlcxeHUyY2VRY0ZBTzhQWXNzdW52UWdRTUZjTThTTUI3bnRzclJBZ0NLR04xWUN2Z01qallRRzZjY0I0THpVWThEc1NxcDBuWlQ4SnIzZlIwbUJ3TVVBSEE5Z2o4akxmd3JnZnFGKzJ2TWFiNTdsUWVDY3BPZ1duTjRYTHQ4RE1LVXY5OVpCNlhoVHJabEw1enNsUFV1VTFkWGZwcVEvZDl5bENnU3NjWTdjY3E1cm1xdk5XdVBPMERXOE5RNU5QVzlkKzVyQTRybUcvbm51dmtYdkZ3RVJFQkdONjJRQUFDQUFTVVJCVklIWkNFZ2dNQnQ2dlZnRVJFQUVZRTJreHhJSVdPOWwxYVJzd0U2MWNMUTI5M2pDK1dZQTZEWjE3R0FaOVZNV3JWWmFkVjE0M1pueWRQMnRIUGVSZXhoWmVmc2JBSFJQdjlRdzl1YkMzT1ZPRlFqd2RNbWhBT2hXa2Y4ZEN6UTI4eFFLalNwRHc0VUF2RGw0Sm9tbHhmdWNtYmZtQ2J1U1J1MjFDd1RZQjdCdmVXb1B4RGNGZ3dSZEZYZUZraXlIdGducmVhdnZTZWxqclhlbC9FNkR6MHNpRDZTNHpyWEd0QThBNE1sN25rNWNRNGpkTjl4M1NwdmxvbGp4aEo3N3pkOEw0RFlEREp0TTM1cnpwR3hhM2paNDh1aXJEOTVIM3ZkOVRsR0gxbmV6OURHYmpLeHhPMlYrV2pPM3ZBRjBuV2lsOXc0YXNycENicnNzTFJEWUg4Q3hrU3VDT0k1elBraWo2cEJRdWs1S2ZwUGVjbG45YllvZ3l4b0hLTmE5SllDdmVUUFhFNitFUU1BeU9xWDBmN25GaVgxTEtXSlBxOTNRazlvTkFKeWFtOUVKbnB0cXpUeEJVWHBmRWJ2V0pUWVhtRFBQS2U5ZW9rREFJeGJMdmE1cHJqWnJqVHNsMWdGTG1yZGFZOVRTMXdSVy96ekZXSlB5SFN1dUNJaUFDSWhBZzRBRUFtb09JaUFDSWpBZkFXc2lQWlpBWUswZUJLeDhlOTA2bDZoeDY1UWVOd1o1eXRRVHJBMzk1bVk0amJwMGEzc2ZJMkc2b2VQZDdtUXlKTVFNTjB3M3hWUENrSHprUGp2RjVrSnUza284bHlJUXVCcUFWeGtubitzOGxUSXFOTXZvRlFuUWk4Q2pHeUtCa2tidHRRc0V5Sk9uclk4SkxyRnJ2dHhnWjU5QXJ4Q3hrNHA5ZlUzS0JuMkpkdXRKdytvWFMyd01ldkxSakxOYnhaMGJkSDJuRnhrM3hYQzRTMlhNT0s3eUVIUHRub3p3YnZDOXd6VWZxWG1kSXo2NW5BU0FYa082UXQvSnRaanhLT2UwVy92ZDFsd3JaZFB5cHFITyt0YlFPZTU3UzliVjJzZHNzckRHN1J5QkFOTzlFNENqZW1DM2hUMDhxVXlYNGJzbnRtV3JMa3NLQk5nR09RYzdKUExTdXdONGpaVXB4KzlXdTArdGs1TGZwQ1A3djQ5aUdWKzhBZ0ZMYkVMdkV1VEZlZmpRY04rcVB6MmlKeEh2dUcyVmUyeWpPaytUOHlRdVBieDFCVzg1K0t5VkZzV1I3QU05VjVBTnJadmM1K2N5dHVibU4rZTUySlZCT1ZlejVPUmh6R2VXS0JDNFl4amZZdnY3dVo0YjVtcXoxbHlneERwZ1NmUFd0YThKNWhqWHgvek9sYllJaUlBSWJCVUJDUVMycXJwVldCRVFnWVVSc0NiU1l3a0VyTTBpYnBUeUpMNzM1UEJVQzBlT1dkem92RXVrSHExN2prczBBU3NmcVJ0VWxpR3N2ZkhxdVl1YzVhUWhpeHR5USs1NHRCYk9VMTdya0ZOM1Uyd3U1T1NyMURNZWdjQUZ3Nmw4bnBMd2hPOEVEeUtmOFVST2pPTVZDWEJEL01GQkpDQ0J3QjlDYnJvUi9Xam9FNy9scUl1K3ZvWW51dllFOEYxSEdsTkZzZnJGRWh1REtXWHgzTzM2V3dDOGQvZDl6b1Ezd2RqUkxLcmxWcmpMWGV0RktzOGlOTkJUd05RTzM2NVkzckFTdjdCOURnbldYQ3RGSUhEVnl2ajNZUURzeTdyQzNLS090WS9aWkdxTjI2bkc2THFlTEtOL3MzM0d4QVNmQUhDTHlydkFhUm1Oc3FSQUlQYnRNR3NsdldwWi9YRnFuWlQ4SnIzVllLMTl2QUlCcXc4b0tSS0t0UmV2WWQwU1YzdlQ4WEp1eDdQYWFlcjc2V1hxTVQyWlNWMi81cFpweUhOVHJabUg1SEhJczdGK052ZHFsaUg1R2VQWnBRa0VyZ2pnZzBFRTFWZGVlaGZjRjhBUE1vRE0xV2F0dVVDSmRjQ1M1cTFyWHhQTU1hNW5OR2M5SWdJaUlBSWkwRVZBQWdHMUN4RVFBUkdZajRBMWtSNUxJR0NkTVB0Wk9KMzZXU2VhS1JlTzFzbjlLVTYwVzV0ZHFadXlPUnV2WGtNclhjOXlvenRYSkdDcDJhZjAydUJzanVlSU5zWG1RazYrU2owVEV3amNPM2lSZUhGMURRUkZBcDdBdGt0MzNtTWFpcjF0OTJYaFpPU2ZoSTJ2blZvRlNOMVU1dU9iNEVHQTVlRDgvZW5CUVBXYzFwVU1zWHJ1NjJ2R0dtczhiYTR2anRVdmx0Z1k5T2JQZTcwTHIzaTRhMEo5OFAweFl3ZC9uL3RPZXkrak9oNEZFaFNPZGEweHUxd0x4K0tYT21sb3piVlNCQUxXbURpM2djckszOUxIN0ZnL1hiZXhWR04wc3czSERLNTErNlJJN3Nnd2QrcHEvN21uTUpsV1NZR0E1VHErNUh5WUJsbjJWWDBodFU1S2ZwUGVQcXFVUUlEaUVQWnhmWUhYRC95ak4xT1JlSllZMlRzSHN0SmhGa3JsdWFzNDFqemNXNDQ2Ylk2eE1hOFl2T0tGVjcwc05VeTVacDZEUVV4Y2xlSmhhWTY4ZTkrNUpJR0E5OURBRUc4eWM3VlpxKzhvdFE1WTByeDF6V3VDT2NaMTd6ZXJlQ0lnQWlJZ0FnWUJDUVRVUkVSQUJFUmdQZ0xXUkhvc28wM005UjlwcEo2QW0zTGhhSWtiY3UvWFMya0ZzWVVrMDBuZGxMVU1ZWDBicjVjTkoxV3ZaR1QrRmVFZTNWK21GTElSOStVQURvNDhXOElGZEdiV3pNZW0ybHd3TXpKU2hMNXY3M1hobE1paENlL2w5UVAwTWpERmZlZDBRZjdHbHB2OFpsWjVFcHRYWlBBa25qd0lKRlNpRVZVQ2dYU1dYbkhBS1FCdW5ISG50R1ZzNmpwMW4xNks2WjZ3VG1rM0JROHhGK2tsVHhwYWM2MFVnUUJKeHE1RTRPK2xoQTI1dGJibU1adGx0c2J0VkdOMGsrUGxndXYzWFh2Z3NuMStPdUlsWXVqOTJTVUZBcGJiLzFMaW92T0dzWmhYWi9XRjFEb3AvVTE2dnBWU0FvR1kyLyt6S284bys0VDI0OGxUTEk0bFJrNHhyRnZ0Ymt6RHJiWG1UQ2tIZVZuQ21JOERPR0NBTUhwb3ZWblBUN2xtdHZKUytuZnIrbzBscnhkVFdDeEZJT0FWQitTSVY1czg1bXF6MWx5Z2xFQmdTZlBXTmE4SjVoalhVNzVieFJVQkVSQUJFWWdRa0VCQXpVTUVSRUFFNWlOZ1RhVEhFQWhZaXlEU1NIV1BPZVhDa1l0aGJtUmRMMUp0OTQvYzJUbTB0aTFYZERtbkIzTUZBaXpMZFFPUG5ZMkMxYWV4ZjUwQndEcXQ4ODVnek0wVklHUmt5ZjNJVkpzTDdnd1ZqaGp6SUVBWC9meVc5elBleVRaQmJ3TThNY24yTzFXNFZMWFIrN2FPKzljcERuaElNTEl4UHhJSWxLdVJQZzhzWTR3MVEzTnQ5WXVsTmdaaitlUzFBanlKK0VTak1HeW4zUGgrUTBhaExaZndQNnJ1UXI4SkFMcUhYVXVJbllCcXppOW9wRDBKQU1WdTdWRFNZR1hOdFZJRkFqU0d2aU5TR1hQWDJackhiR0sxeHUxVVkzU3pxbUtpbEhyK3l6YjU3Sjc2SFNyK3NBeTFLV1d6K3NpVXRHSjl5OVdEcUNJMnoweDlWK2x2MHRNM2xoSUlsSEQ3NzhtdkpVWk9NYXhiWXBLU2dxeG0yVHhyenBSeU1HM0xTMHJxVlQrZXVpZ1paOG8xYzhsOGU5SzZmalZmT1JIQWpoMlJweER3ZS9KWUlzNFNCQUtXMExvdTV6ZkNPdEJ6RFZrZm03bmFyRFVYS0xrT1dNcThkYzFyZ2puRzlSTGZzOUlRQVJFUUFSSG9jZjhvTUNJZ0FpSWdBdE1Rc0NiU3BZMDIzQmpsWW9ydUYyTWhWZUUvOWNMUk9vM0NUWWo5UjNLVGJpMVdjMDZ1RE4za3ZRR0Fkd0d3UkFMUEF2RG9SUGZYYkNmV2lUdHVMSEx6OFVQVGZEWkpiN0hxcStUbVFsTEdDa1dPQ1FUdUVReHZ2QSs5ejh0RXl2MzFoYko4am1TNnZHQnc4LzBaRGJHQ0JBTGx5UGNaTnJpQnlIN2sxSEt2R3B5UzFTK08vZTN5S293aktzUDg3UjBsR1NMQXNrUm5mUDFoQUo0d3NZREhVZXplS0RFalFkUEZmY3pRWHRMbHRUWFhTaFVJZUl4ZTlOekRNdkJFOGRSaHpXTTJXVm5qZHFveHVzMC8xajVwcktRWG5ZdDJWRm9KSStvYUJRTFduSnVvVXV1azlEZnArY2JXSkJEd2pBc3Bodlc1K2l5cnZiUGVVc3BSMTdQVkpvZWVtUGEwcDl3NFU2K1pjL09aK3B3bHZ2cTdLa0hXMnlhRXVRVUMxd0Z3VkNYc3ZvSUJzK21OYlFqM3VkcXNOUmNvdVE1WXlyelYwL2N2ZFUwd3g3ZytwRjNyV1JFUUFSRVFnUVlCZVJCUWN4QUJFUkNCK1FoWUUrblNBb0dEZ2x2dkhTSkZ6bEg0VDcxdzNDT2NVS0Q3emI0d3hHRFRseVpkSjlJdCtvR1I5K1o0TDdBTVlaNk5WMC9kTXR0dDQ2dW45WHNXcXhRSHNCeG5lQktjTU02VW13c1RGdXUvWDJVSkJCaVIzamFPQjdCVEk0UDBHdkM0Y0IzRzNKNGZyaGp1ODZXSWdmY2Mvd09BM3pUeUtvRkF1WmJWdDFtZmFpQXRsNlArbEt4K3NlVEdZRE1YWEJ0UjhNUnJPbUpqVFAzTXNlR3U4aUY5WCt6T1hyNkhCcFI5QVZDQXRvWmd1Um1tNjNQeWZTV0FlM1lVYUtnYjkzYVMxbHdycC8xYkJxcFNHL001OWIzbU1admx0Y1p0ejV3b3hvMmVRVjdyRlA4MDB5bHgzWWRsTUUwcG05VkgwdnVKSlFpMjJwZG52czAwVXZMTitHTjhrMVpacGhBSU1BK2NqNy9WeW96eE8wWE9IRnRpNjdVVXc3cGx2R1YyMkdmZEJzRFJBL05lUDM2dE1QZTB4TXNwNWFqVGpobnpHR2VJVjU5Q3hlOU5adW8xODlqbHFkT1BDZE4rRXE0VSsveFVtUm41UFhNSkJEaTNla1IxeUk5aUMwOTRlUENHTTlRNzNGeHQxcG9MbEZ3SExHbmV1dFkxd1J6anV1YzdVQndSRUFFUkVBRUhBUWtFSEpBVVJRUkVRQVJHSW1CTnBFc0pCTTRWTnVGZmFtdzJzWmc1aTYycEY0NGN1NTRUM0pESHFpYkhHTjZYbnVjZTZrOVVCaHplSFhkYVludXhObms5RzYrZS9OWFp5dUhpMmF3Y1E1UlI1L25LbFVHSmYzaWRRVXFZY25NaEpWK2w0bm9FQXUyMjhZSFFIM3kzVkNZS3BIUHRzREZObzF2N0dnd0pCQW9BRGtsUWdFRTNtdTJRWXlBdGw2dnVsS3grTVdlc2l1V1o0eVRGTk0rdFBMTHdkSlluOEZ1aU1XaUlPSUR2dVZnd3BOQVkxeGUrR2p6amZOdVRzY1E0NXcvZkg2Lzg0T25wRXVHQlFZRFVsZGFyQUhEam1nWXdmdnZ0TU5TTmV6czlhNjZWMC80cGJQb2dBQm9kK3dLTklyd0wrK1FTUUJQVFdPdVl6V0phNDdablRtVGhzdHkzdDUrbmdlV1dvYzFhYWNkK0x5a1EyQXZBQ1pXSEVRcEN1c0xRYXpxODkxdnozYWwxTXNZM2FkVkxLWUdBZFlYSDBQNnJ5N05TVjlsU0RldVdVWjN2S0RYTzBBUFBtd0hzWTFWS3BnY0JqMkI3elA2WElpTjZGK0kzbHJybW0zck43S2lDSWxGaVkzNEpjVldSVEJaS1pHcUJBT2RvTkJyejZwc0xPc3VRczlidlMzcXVObXZOQlVxdkE1WXliMTNybW1DT2NkMzVPU2lhQ0lpQUNJaUFSVUFDQVl1UWZoY0JFUkNCOFFoWUUra1NBb0dyaEJPNTNMeXpBdTg0NWluRkgxZ1JXNy9Qc1hEMGJNN3pOQXp2M0g1aDYwUnlZdkhBc2ZLUTZ0N0w1MFVFRmtOTzNsaUdNTy9HcS9lK2JPYjE0T3JxQU5hYjkxU0Jaek9PWEhtcWdRYkl0cEUzbFhrZG4rOTlVSEN4L1hnQWh5Y21OUFhtUW1MMkJrZjNDQVQ0RXJhTnA0Y1R5THdEdkhsQ2YzQW1SazVBQW9GeWdQdmFTNDZCdEZ5dXVsT3krc1ZTRzROMHZjd1Q3ZlQrWXJscmJlYTBoT2VBWm5wMFIvOFNBeW85dGR5aGNsMVBOLzBsQXNjMkduQW9IcVJnaU41eGZsNGlZZU5xbWk4RzNoUWswSkRVRENYY3VMZUxZTTIxY3R1L1pleGxQbWlrb2lIcC9RVzRjano4cTNDZHo3OGE2YTExekdheHJISGJPeWVLSWFMeG04WTlpb0k4SWVmNnFLNTByVGFUVWpicnJ1SWhwNmc1WjZDaCt6NGVPRnNtRUxDRUdVTTh2cVNJTWxJRkF0NCtZZWc0a3lJT1lQTktMVWZkSkQwaUtGNmZ4SEh0Uzg1MjdJbDJOUUFVdVhIdXNDZUFVendQTmVMTXNXWk96R0p5OU5nWVcwcGNsWnlwRVIrWVFpQkEwU3JiR3ZjZi9ySmEvL0w3OVlaU25nUHE5ODNWWnEyNVFLbDFRRjNPbUJlTXFlZXRhMXdUakRYWDlyWjd4Uk1CRVJBQkVSaEFRQUtCQWZEMHFBaUlnQWdNSkdCTnBITUVBdHpVMnkyY05IeHdkVWNkQlFLZVFLTXhUMVR4dnZMVU1OZkNrVWFkSXgyWmZYVXdNdi9VRWJjZGhVcDlHbFpwUElxRklhZm5MVU5ZeW9heGQxTTN4LzF4bDZ2NkxpWjBUM3JmZ1VZc2JveHdVKzlaRGFOZHprYkExSnNMR1UxczBDTmVnY0NnbDh6OHNBUUM1U3Fncjczd0pQeXRDNTRlTDVGanExOU03US9ZcDF3NG5OWm5YMFp2THh6emVESXJOZnhqNVRYZ29kV1ZMU1d2NTZCaDZKamdoamVXbis4QXVIdGwyS2RSZTBob2l3ZHpqZVI5ZVlpNXVmOVp4ZjBabGVEdXlSMFBsODRIWDJITnRYTGY2YTB6anJkMDkwNlJZVTZiYVFvNWVBcjZ4dFdWUHA5eVZQNGF4MndXeXhxM1UrWkVNVXl4MDRMdDV5aFVwTmgwYUNncEVMRGFOZk9hYzRxYUJsN09hVytiVU5qVU9ySHludnROeHJKY3lvUEFydFVhNnlRQVBPbmZGM0pPNG5QdDlxWWVyeXBkNzhreHJOOG9pSlYyTk9xVzE4M2RzV29EbjB0b0E0ejZKd0RlQUdEMzFuTTBFdmZ0TythVWc4bHp2VU54VzljMU5jM1hNMzJLb3BrdnJ5aTZxOWhzUDArbzFqWTAzREhrck5INTNGeHI1c1NxVElvZTgwNVJTbHlWbEtHUkk1Y1dDSnkzbWgvc0V2WnNyaHM4VTlHN1V1eUtrYTRpVXB4UER5ZjAzakdrcmJmVG5xdk5Xbk9CMUhXQTFTeVdORy8xemkrWHRDYVlZMXkzNmxTL2k0QUlpSUFJT0FsSUlPQUVwV2dpSUFJaU1BSUJheUxOVi9Ka3dsbU9kM05SRTNOMWF5VXhSRzArMThMUmF3eG4yYmtwejd0WWVVTFQ0dzR5eFoxZjd0VUNkWjFZaHJEVWpWZnZDU1J1Sk5CbG9mZXUxSlJyREpqMlllRUVtb2QzemVMU3dmaDFhUFhzUlZ1Tk5tY2pZT3JOQmVzN0svMjdCQUkrUTFuTnZhODk1RzcwdHV1ejcxc2V3OWlSMnBZNFJ0RE5LMTNpdHdORlZQZElUWERrK0ZhL09QTHJPNU5udjhheGtpZHJ4L0RDd1kxaG5tcTI3bXhtNWlqRWVuUTRHZW5kQ09hNFJqZnB2TU8yZlkzQ0dHMDA1c2FkQm01K2orMVF5aERiVE5lYWF3MHBlMHFkL1REVUdUZnZQZGRTMEdqQUt3cDQ5Y28xUTRGU2pHbHJITE5aVEd2Y1RwMFQ5ZlVWbkc4Y0Q0QWVxV0xoYThHN0ZqZmloNGFTQWdIbXhTTnlZTDlGb3libkM3RitpM05xZWloNWNZY2JhL1pMKzBXdU0waXRrekcveWI0NktpVVE0SGYxZ25DeU45WWVmZ1RnTHNFZ0grdWoyUyt6MzZOZ2luVlFCd3FMM2dQZ1ZqMHZTZWtMNmlTOFY3UXhQdHNOUlUwVVNWdnplSDVMdk1Lb05wNDNzMHp2ZEJTZmMxN2ZGWExLVWFmanZZNkI4YmxXWXg1b3NQYU8zNndQZXRtaElKRGpXVFBremh2bldqTVA3YnY2bnJlK2g1eTEyMWg1TFpWdXJBNUx2U00xbmE4RHVITm81Nm5QV3ZIbmFyUFdYR0NNdHJXVWVTdnJKR1YrdVlRMXdSemp1dFYyOWJzSWlJQUlpSUNUZ0FRQ1RsQ0tKZ0lpSUFJakVMQW0waU84c2pQSkllSUFKampYd3BIdjlockRtd1gvU25WS2t5ZG1QMUp0MXY5WDR3Y2EwTGdZdTFsMWlpZDJGM1F6clp4VFF1MUtzQXhocVJ1dlRQOVNBT2krdWV0KzUrYjdVOTBmNS9LbVczdHV6bkdqc0haaFhidFA1T2I4M29GN3pEQ1dzeEV3eCtiQ1ZOOXQ3TnRib3NFM2w0czhDT1NTTytkenNmRm1pZTNGNmhmTFVQR244cGx3TW90dVJzY0tLUWJkT2cvc3c5OFJEREFjajVwR1RCcHRyZ1RnQnNHNEYvTW9OTVJJM3NlRExwaFA3RGhOMmhmL2U4R0R3amNMQTdibVdrUExUdEhOR3hOUCsrWE9RMUtOYVdzYnMxbjExcmlkTXlmcWExSVVYenpSYUcrOE9vbnhTb1RTQW9HWVMrUjJmaWxRK2Fjdy8yVS9SaU1wVDVKejNrc2pOTVVCWFc2c09WOStXaEFsN2RRREliVk94djRtdTdKWlNpREF0R01ucHR2dnB1SHVsV0hOd2UrZWdlVm52MHh1ZjlIVGQ5Q0xBNFVaRkJSMWhkUytvRTRqcDAvNFpOVk8zbDBKREp0WG05UnJKb3JPK3NhVzJqdmRud2FoUWNseTFHbWw5cjhVUHRDWVJ2RUY2NmF1RTZaSEwwTlhyMzVuZmlrTWlLMmhKQkE0dXdaaWZSRG5KL1JhOGZrU25lZUMwbGlhUUlDSEg3aEd6dkdVNk1FNjF6NlBOUmZJMlJld3lydVVlU3Z6dWJZMXdSemp1bFdmK2wwRVJFQUVSTUJKUUFJQkp5aEZFd0VSRUlFUkNGZ1Q2UkZlZVk0a3VVbHk3K0NtMzNzQ3NTdFBjeTBjNjd5azNuZFppaXNOTWR6Y28rRm9TTEFNWWFrYnIzVmV2Q2RyVWwzUVhpSVlRN2pwTTJYSTJRaVlZM05oU2lieUlDQVBBdDcyZG9Hd3djLzdrOXRCQW9GK2l2UStRd01pM1l2bnVJZjMxazhkanljVzZZN2VNbHFtcG12Rkgyb2s3MHZmWTRDdG42Vm5CcDZrSFRJZjZjcUhOZGNxVWZaVUk1VlZIMzIvNXhnRjF6Um1zOXpXdUowN0orcGlTbU1nNzF6dkV5ZVdObkNWRmdpd1RKNjdpblBiRzh1L2J6QmdmeENBQkFKbmswdzVpWi9Ebmk3Kzk2L0VYOWNLeHV5dU5ITDZnam9kQ25OcDhLZUFiTXpBOXM3clpCNDVva0NBZFVFUFNLOUlGR2tOTGJjRUFtY1RqSGt4b2RjcVhvbms4WVE0dEQ2bWZINHBBZ0gyRTRkVUl2c1RScGczTlhuT3RjOWp6UVZ5OWdVODdXUUo4OVkxcmdtbW1HdDc2azl4UkVBRVJFQUVNZ2hJSUpBQlRZK0lnQWlJUUNFQzFrUzYwR3M2aytGcGJ0N2JXT0kwNUZ3THgyYkJlQ0xtNWRVcGhkdU5DYTJSTmsvVDNMNWkrSzBDN3h0TElNQ3NlZDNUMFJVcTcrUm11VHhoRG9ORHprYkFYSnNMSG9ZbDRrZ2dVRVlnUUNNSU43Qi9QTEJTNkxhZDZiUkRDUVBrd0t6OTNxdkl4NnE3cFhsL2NqdlFJTTByV0pZVXJINXg3THpXN3BYL2ZzUlRXWDFsbUVNa01GWWI5WjYwcFNpQTNudmVQMExGV25PdFVtWG5LV3g2RXVnem9wWW9XcTVSY0Mxak5obFo0M1pKZ1VEc3ptSG1wYlNCYXd5QlFNcDFXeWx0c09saHFuU2RUUFZOTnN0YjBvTUEwODA1aWUvaC80MXFMbjVndUQ0bU5nN205Z1YxSG5odENVL1MwOVBNR0tFV0I3QnZqN1g3b2VWZzN1Y1FDVWdnY1BZM1FDOFgxK3RvUUt4M2VwYzRkb3pHTlhPYWN3c0UyUFo0VlJTOTgzbXZ5eGlDYks1OUhtdmN5ZGtYOEhCWXdyeTFtYysxckFubUdOYzk5YWs0SWlBQ0lpQUNEZ0lTQ0RnZ0tZb0lpSUFJakVUQW1raVA4VnE2R0gxSTJNUXV0YWljYStIWTVrT1g5VlRTUDdOMWoyZHBqa3ovQ1FWUGsxcUdzS0diNFY2akJkMVRjek9IOSsxNkF1OU4vUWNBRC9CRUhoaUhwM2RweEV4MW56alg1c0xBNHJvZmwwQ2dqRURBRFR3ellpa0RaT2JyZi84WVBRZndsQkVOWXUwdzFpYmJrUHhhL2VLUXRHUFAwdVh3WWRVMU0yK3FObUIvTWRaTEhPbHlqWGJIY0NweVRJTXpzMUpTTU5ndUdsMlc4N3FiQTR3eTgxNW94am5Ed1NZMWlqWFhLdmw5N2diZ2RjRUZlV28rUGZHSEdOUFdNR2FUZ1RWdUQ1MFR0VG5UR3hLRktYUzMzd3hqR0xqR0VBZ3d6NlZGc3UzcnAwclh5WlRmWkYybnBRVUNUTmQ3blpmbjIyYWNwamlBL3orbVFJRHBzNy9pV0dkZFIrYk5QK04xZWFjYld5QlE1NC9YbFIwNW91aWhmZy9uQ1grZGVYSjdLV3ZtbERydGl4dTdyMzNNTWIxRTNvZWtNWmRBZ0dJTGlsYkp0dFFlam9mRFhHM1dHbmZHV3Jzc1lkN2FycGMxckFubUdOYzk3VmR4UkVBRVJFQUVIQVFrRUhCQVVoUVJFQUVSR0ltQU5aRXUrVnFlSE9VSlVTNHV1WGxUTXN5MWNPd3JBemZzbmgxTytKY3NKeGtlWE1qclFqTmZsaUdzeEdhNDEvMHhSUUowYS9wdEp6ak9JM2hQSjExRDcrNThKaVVhRFV1UGJ0MFJtdkw4WEpzTEtYa2NFbGNDQVFrRXZPMG41akx6YnBXcjRkZDZFNW9vbnRVdmxzekdGd0R3bW9XanFqNmVWOGNzS1l3MW5yR01kRS9MRGRaM2pyelpISE5CWExQbTFRSVVnbzBSckxsV1NZRUE4MCt4SXU5elA2S2FpMXl3WUlFb2tLTWdqMTRLY3VkeFN4K3ppY3NhdDB2TWlaclYwbWNNNE1uWTJ4UVVnL0tkWXdrRW1EYkx3Vk9sZnpld3pYMFV3RjFhSHJKSzE4blUzeVNSakNFUVlMcjh4bDlRR2ZmL2NpQjNHdXA1WGNUcGpYVEdGZ2pVN2ViSkFCNCtNUDk4dkU5c05wVkFvSzRQaXZ3b0dOK2hRSm1hU1ZCa3p6R1RjNFhjSzRlV3RtYk9SV1I1WHhselRNL05jNm5ucGhJSWNKdy9QZ2hGZVNYSVhLTFZ1ZHFzTmU2TUpSQmdPNWw3M3RyWFZwZThKcGhqWEMvMVRTc2RFUkFCRWRoNkFoSUliSDBURUFBUkVJRVpDVmdUNlp5cy9SYkFLV0hqLzZSd3VvR0c3VE56RW5NK005ZkMwY29lM1dZZUN1QmVrZnRsclRTNE9LZmhqSGRvZm1ta08vNHNRMWlKelhDTzk5dzRQdHdxY0xobWdKdmkzM1hFcmFQUUlNS1RPMCtwUkNoN0pqelhGZlVybFJ2MGwxVW5tMTVWM1VkOTJzQzA1dHhjR0poMTErUGJJQkM0S1lEamdndlpKcFNjazdSV2UzQkJ6NGhVMmdDWm1nWGVOOHo3bzJrZ2FZY3hYYnVuNXJNWjMrb1hVOVBtOVJFL3J3eGYveFpFWGgrcFRtZCtLaGpCY28ydHFYa1lFdjl5QUI0VDdscW11OUhjd0pQQmJ3RHcvQkhIdEhiZW1IZmU4OTUxdlFYamZnOEFUM0YvTTdkUXhuUFdYR3VzNzVQMWRPdmcvWWJ1dkhQREdBTFBwWTdaWkdUMTB5WG1STzI2dUZNdytqWC8vYzdoaW9IY2V1dDZia3lCUVAyK3F3QjRXaEEzcE9TZHA2TFp4M1M1clM1ZEozTjhrMk1KQk1pWWMyeGU2ZlhjakRrd2plbzB6ck9QNUhqc0hRZHo1a0N4OWtEREU4VWx2SDR1MWJET012QlppdEM3VGpiSDJ2MzNBZHd3ZUU5SWFhOVczQXVISzU5NDBuOW5LM0xrZDg0UDNockd6QkludDVlNlprNUZkUFhRWnJ2WWpqMm1wK2ExZFB6U0FnSHUyMUJ3d212K0tOemsvczFuS3BFTEJTbnRQcUYwV1R6cHpkVm1yWEZuVElIQTNQTldxMTZXdUNhWVkxeTNPT2wzRVJBQkVSQUJKd0VKQkp5Z0ZFMEVSRUFFUkdDMUJEaldYVGE0TDk0M3VOSzhlR1gwcDd2ZFp1QW1FRGVxUGgwTWtuVEhUV1BTbEc3OFZndTVrZkh6Qm5mbXZLNkF2UCtvOGpCdzBZNkM4U1FFVDBxUjkyZURtSVdiSXpUaUtmZ0liSU5Bb08va2U4N211TFhaNUtPZUhtc3NBNlFuSjNROXpYWkNRMlZYR0d0ejNwTTN4VWtuUU1QdWxZUHI2WnNGenkwMGZMVU5PclZZa0VLdms4TkdQamVkdVJHOWhBM245Skt2K3dsK2h6Y0dRSmZNTklaZEJzQXVIVVZpL2ZCK1laNWU1eHhrYklFbnM2QXhlOTF0cXkvM2JIUHNJM2hWQ1lXYjdYNkNvaW5PY1duOGZEc0FlcEJTM3pDOExYQjljV0RsK1lvQ2s2dDFDUE5vOVB0Y2NPM1BVOEZMODFwVDl3Y1U2ZkhhRndvSDJ1c2w5bE1jVjQ0SkhtaE9OYkROWldCa3RwcHJ3RnNBK05QS3U4c2xlcTZpWTdsK0VGeTRVMFQ0NFNBaTFEcndEeXM0NXBXS1h1WG9RVUQ5eWZEK1JDbUlRSXlBMWdScUh5SWdBaUlnQWtVSVNDQlFCS01TRVFFUkVBRVJFQUVSRUlISkNXeTZRSUFuOG1nbzZ6cWhsR1BZWG9OQWdHNmltYzl2VlM0dWZ6VFErd3RQbU5BYngzNlJsa2tEQmE4Z0dkUEx6T1FmaGw0b0FpSWdBaUlnQWlJd093RUtEdWlWZ3FMaHJrQWpQSC83MmV3NVZRYThCQ2lDT2JIbmFybGZWYi9kcEJLWDhLb1NCUkVRQVJFUUFSRVFBUkVRZ1JVUWtFQmdCWldrTElxQUNJaUFDSWlBQ0loQUI0R2xDd1QycWJ4My9GTndsY2xUV1djRnQrNW5oTExRbFdiWE5SSjBVM2czQUkvdU9lWEZ4K2x0Z3FjamVRclNHL29FQXR6UWZIT0IrejEzcTF5RDd0K1JtUlFQQWwwdUdubmlrSnZuTERQWjhaVGJ2N2JldzFQSEREeVpmREVBZnhXOHBWaHN4bkNqYmIxVHY0dUFDSWlBQ0lpQUNHdytnWXNBNEJ5STNoUzZBc1VEdk9LRDgwT0ZkUkRvdXBLbHpqbEZ2Ynltamk3ekZVUkFCRVJBQkVSQUJFUkFCRlpBUUFLQkZWU1NzaWdDSWlBQ0lpQUNJaUFDSFFTV0xoQzRhbkRSZXFFUmF1OEYxUlVWRDA1TXQwOGdRT002WFREVDhENGswQ1h2MFIwSnBBZ0UrRGp2aDZkNzFyRUQ3dzJteTkwdWtjYlk3MWI2SWlBQ0lpQUNJaUFDbTAzZ0d1R0ttd3YwRlBPcEFCNjcyUWcycW5UMGN2VzJjUDFFVjhFa090Mm82bFpoUkVBRVJFQUVSRUFFdG9HQUJBTGJVTXNxb3dpSWdBaUlnQWlJd0NZU1dMcEFnSGRzSCtjOHlaNVNQN2t1VE5jaUVMZ3JnTmVrQU1tSXl6dnFlY3FyUzlDUWtad2VFUUVSRUFFUkVBRVJFSUZ6RUxEbU03emk2SzFpdGhvQzF3L1hDK3pZa1dONkJlUDFBcWV1cGpUS3FBaUlnQWlJZ0FpSWdBaUlBQ1FRVUNNUUFSRVFBUkVRQVJFUWdYVVNXTHBBZ1BOTUdycnZVaGp2cXdEOGRYWHE3TmVKNmE1RklMQVhnQk1BbkR1eDVoSDIyUUFBSUFCSlJFRlVmQ25SL3hiQU13RDhMdVVoeFJVQkVSQUJFUkFCRVJBQkI0SHpBdUFWQXJmc2lYczZBTTUzdnVSSVMxSG1KOEE1UGIxM0hkS1RsYityL3YxSjgyZFRPUkFCRVJBQkVSQUJFUkFCRVVnaElJRkFDaTNGRlFFUkVBRVJFQUVSRUlIbEVGaTZRSUNrSGdQZ0tRV1JmUUhBclFCOE95UE50UWdFTGcvZ0pBQ1h5Q2lqOVFoRkZZY0NlSW5FQVJZcS9TNENJaUFDSWlBQ0lwQkpvRy9PVlNlWGV2MVNaamIwV0NFQ2x3dlhSZXpha2Q1UEFOd0l3T2NMdlV2SmlJQUlpSUFJaUlBSWlJQUlURVJBQW9HSlFPczFJaUFDSWlBQ0lpQUNJbENZd0JvRUFyY05KOGhLRlAxTkFPNEhnS2ZPY3NKYUJBSVhBY0NOODZ2bEZETHlETytOZlRTQXJ4Uk9WOG1KZ0FpSWdBaUlnQWlJUUUzZ1BBQmVDdUNlRVNTUEFuQzRrSzJHUU95NmlOY0R1RHVBczFaVEdtVlVCRVJBQkVSQUJFUkFCRVRnOXdRa0VGQkRFQUVSRUFFUkVBRVJFSUYxRWxpRFFPQ21BSTRiTU9mOER3REhBSGgrY0VNN3hDWCsyQUtCYXdKNFFFZFQrbXB3eTNxbXM1blJMZStEQUZ3SkFMMEpYTG54SEs4ZHVLUXpuUjhDK0VqZzkvWXF6ZE9jenltYUNJaUFDSWlBQ0lpQUNPUVNPS2dTT2I0UndBNDlDZWpFZVM3WmVaNDdId0NLVEEvb2VEM241YnhHNHRoNXNxYTNpb0FJaUlBSWlJQUlpSUFJRENFZ2djQVFlbnBXQkVSQUJFUkFCRVJBQk9ZajhPektuZWZ0T2w3L1pnQVBteTliV1crbVVYeVh4cE0vQnVBMXFIdGZ5Qk50RityWXNQNU5NSjd6YndVUkVBRVJFQUVSRUFFUkVJRThBdGNGOEY0QU8wY2UxNG56UExaelBYVjlBQ2NDMkxFakExOEVzRGVBSDgyVk9iMVhCRVJBQkVSQUJFUkFCRVFnbjRBRUF2bnM5S1FJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlMSm5BdFFBOEZNQlRScnhxaUo2VWpnWnc2UWlJL3dSd1l3Q2ZXaklzNVUwRVJFQUVSRUFFUkVBRVJFQUV0b0dBQkFMYlVNc3Fvd2lJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSXdEWVNhRjZ6OUQ0QWo2OWN3NThNWU1qVlRUWEhjd0c0QjRBaktnRUN2VFhGd3ZPQ1VLSEVlN2V4SGxWbUVSQUJFUkFCRVJBQkVSQUJFU2hHUUFLQllpaVZrQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBZ3Npa0JUSUZCbjdEK3E2NTFvc1A5bkFLZG01SlppZ0ZzQmVCcUEzUjNQZndMQUxjSzFUbzdvaWlJQ0lpQUNJaUFDSWlBQ0lpQUNJakFtQVFrRXhxU3J0RVZBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUmdQZ0pkQW9GbWJuNEE0RDBBamczdS8wOEh3RC8xU1g5NkNiZ3dnSXVGS3dKdUYrNmUzOEZacEo4QU9DQjRMWEErb21naUlBSWlJQUlpSUFJaUlBSWlJQUpqRXBCQVlFeTZTbHNFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUU1aU5nQ1FUR3pCbkZBZlEwOEpFeFg2SzBSVUFFUkVBRVJFQUVSRUFFUkVBRTBnaElJSkRHUzdGRlFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFWUMwRTVoSUlmQWZBUVpWQWdOY0xLSWlBQ0lpQUNJaUFDSWlBQ0lpQUNDeUlnQVFDQzZvTVpVVUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRUNoS1lReUR3TmdBUEFQRDlndVZRVWlJZ0FpSWdBaUlnQWlJZ0FpSWdBb1VJU0NCUUNLU1NFUUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVJR0ZFYmdvZ0tjRHVOY0UrZm95Z0VNQW5BRGdkeE84VDY4UUFSRVFBUkVRQVJFUUFSRVFBUkhJSUNDQlFBWTBQU0lDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNLeUp3WVFEM0JIQi9BRmNvbk85akFmdzlnSThEK0UzaHRKV2NDSWlBQ0lpQUNJaUFDSWlBQ0loQVlRSVNDQlFHcXVSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFWU1FRUtCYllGOEJmQU5nTHdHVVM4dnBiQU44QThHNEF4d0Q0TUlBekU1NVhWQkVRQVJFUUFSRVFBUkVRQVJFUWdaa0pTQ0F3Y3dYbzlTSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJd000R2RBWndQQU1VRHV6ZnljaGFBTHdENE9ZQ2ZoYjluenFwZUx3SWlJQUlpSUFJaUlBSWlJQUlpTUlTQUJBSkQ2T2xaRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFVmdKQVFrRVZsSlJ5cVlJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlEQ0VnZ2NBUWVucFdCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJGWkNRQUtCbFZTVXNpa0NJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ1F3aElJRENFbnA0VkFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRZ1pVUWtFQmdKUldsYklxQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWpBRUFJU0NBeWhwMmRGUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVZQ1VFSkJCWVNVVXBteUlnQWlJZ0FpSWdBa1VKWEJMQTd3Qjh2MmlxU2t3RVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVGa3hBQW9FRlY0NnlKZ0lpSUFJaUlBSWlVSnpBK1FBOENNQmhBRDRJNENBQVp4Ui9peElVQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUWdRVVNrRUJnZ1pXaUxJbUFDSWlBQ0d3RmdXc0NlRUJIU1g4SjREa0F2alVTaGQwcWcvaERBZEJRM2d4anYzZWs0cmlUNVp4bkh3QXZCWENGeGxOSEJNSEFXZTZVRkZFRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVWa3BBQW9HVlZweXlMUUlpSUFJaXNIb0MveGZBMFIybCtFOEFOd2J3cVpGSytHZmg1UHhPcmZUSGZ1OUl4WEVsUzBIQXN3SDhlVWZzM3dLNEE0QzN1RkpTSkJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRllNUUVKQkZaY2VjcTZDSWlBQ0lqQXFnbElJREJkOVYwWHdIc0I3Tnp6eWxPQ0tPTnIwMlZKYnhJQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQ0I2UWxJSURBOWM3MVJCRVJBQkVSQUJFaEFBb0ZwMjhIZHFxc0Zqb3k4OGdNQURxcXVYemhqMm16cGJTSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUl3SFFFSkJLWmpyVGVKZ0FpSWdBaUlRSk9BQkFMVHRvZnpBSGdwZ0h0R1h2dTNBSjRCNEhmVFprMXZXeUFCdHBlTEFkaWp1cDdpZ3VHL3I5bkk1MmNBL0NEOC83OEQrQTZBSHdNNGM0RmxVWlpFWUFnQnJoY3ZCT0NTQUhZUENmMXgrSC8rNzArcTYxcytEZUFzQUQrdHJtejVJb0NmaDM4ZjhsNDlLd0lpSUFJNUJEUis1MURMZTRiancwVUJjSDdFY2VKUGc3Y3VldVQ2Qm9BdlYvUHViNFV4SWU4TmVrb0VSR0NUQ2Z4dkFCY0c4Q2NBL3IvV2VvdnpTbDY1U1BFKy8vc0w0YjlQQS9DYlRZYWlzb21BQ0lpQUNJakFsQVFrRUppU3R0NGxBaUlnQWlJZ0F2OURRQUtCNlZ2RFpRRzhEOENWZWw3OW53RDJCZkR4NmJPMjJEZHkwL2NCQlhKSHd6bTUvbGZEaVBpakJSblV6d3ZnSnRWbTlwMnFmTjRpYkZEbEZQc1hBRDRHNENnQTd3UndhazRpQUhhck5zRWVDdUI4UGMrVDVTc3kweDd5bU5VZTNnYmdQVU5lc0pKbnVabjVTQUM3ZE9TWGJlRFpRVFN5a3VLY0k1czBybDBEd0cwQTNEcUlaSExLOGR0Z0lIbzNnR01BZkhqRzc1M2ZOZnYydmtCRDF2TUEvREtub0FXZXNiNzMraFdmci9xbUY0ZU44Z0t2VFU2Q2ZTUGJSVmNndStjRVkyQnl3aXQ3Z1AzeVF3QmN2aVBmYlBlc284L05WS2FEcXo3NGVvWGV6ZXVYL2pXa1JTSGMxd0djdmtBUjVkTEc3MEw0ejVGTXJNMHg0cFRmSDhlSWZjSTNjSE1BT3pnSy9COEEvcWtTbHYzalJHT2pOVmR4WkRrcENyK0xwMitSTUc2cGN5RDJCUStLclBOU0tyVVd1ZkFaQ2wzWUgwN1IvMW56Z2JubS95bnMrdUxTL3NDMStBR1ZzZi8yNFhvLzlpYzU0WWZWdk82RGxUanA3V0Z0bjd2ZXlubTNuaEVCRVJBQkVSQ0JqU0lnZ2NCR1ZhY0tJd0lpSUFJaXNDSUNFZ2pNVTFtOFJ1Q05rUTNOVHdRRE1VOG5LUFJmaFZHS0RVL2gwNkQ4K3NwQWYrSU1Cc1NyQUhnTUFGNUI0ZG5rVGkwMzJ4TTNLMU5GSjM4V05yNTI2bm5ocXdIY0l6VXpCZUwzOVZ0MTBvK3FSQTJIRjNqUDBwT2d3Wmtpa0s3dzNtQkVuY3ZZbk1PT2EwS2UvSHp3aU44QzgwWHh6Rk1CSEF2ZzF6a1p6WGptNHFGdnFiMGZkQ1h4cXlBUSttaEcraVVlc2I3MytoMDBQdE1nUjZIYkhJRmVkbWdFNndvVTJOMDRuUGFiSTI5VHZ2UDZvVTN0MlBGU0dwSW9OcHZMV1BIUGxURG5MMGVFd1RiNFNRQ3ZDK1AyWE9Wa0VaYzZmbytCZi8vUWIvYk5VNmI0L21qSXUwTVFBdEZyUUc3Z09FQWhDNzNOakJXc3VVcnA5MUpBczJjd0lwZE9lNG5wTFhVT3hOUG9GT2Z1UFJLMHV2L2pPdkl0QUw0OWdtREttZy9NTmY4ZmdwUWVxUDZxRXRBY0dqeU9ERW1yNzFtS2tDajBwSGhhYS9neENDdE5FUkFCRVJDQmpTVWdnY0RHVnEwS0pnSWlJQUlpc0hBQ0Vnak1VMEhucmx3WnZnREEvVHBlVC9mWS9IZHUvTWgxNGRtQXB0eGs1Y2JicXdBY1ZobS92emx5ODdoVTVRNzMrWkhUc0NWZm4yTTBYK29Hb2RVZWNzcGFrdlVVYWZFa0p6MGw4QVJVVjdoek1KeE5rWmVoN3poWFpldzdNQmg5WXdiMG9lOXBQaitGSWF2NVBoclU2Y1hBV3ZkU3VQRFlrZ1ZOU012NjNwdEp6U2xpazBEZzdIYkVPY1FoUGZYN2Q5Vy9QeW1oN2t0SEhWc2cwTTR2amIwMCtwdzhncUdzajgzU3grL1NkV3FOT1h6ZjJQMHEzWCsvb1hITlRJa3l2akQwdVp4N2x3NzNCWEJFNlVRajZXMlRRTUJxajNQT2djWVdDTFNiQUwycVBDNklCVXFKSHEzNXdKb0VBaFJ4UFcyaXRWWmROOXV3RHBtd2E5T3JSRUFFUkVBRXRvR0F0Vkd5RFF4VVJoRVFBUkVRQVJHWWc4QTJDZ1RvOXZiU2M4QnV2WFBYc0dIUmROLysyYkRwejNzT2x4QjRwMzNxcWZNeDhtMFpoTWQ0SjlNY2ErT1lkYzRUL1JRaDVMcTFUQzF6em1iVlVqY0lyZmFRVTlaVW5uUEhYL0xwWVM4YnJnSHBJdnBGaFEwK252ZVBiY2hxNW9HQ3NDUEQxU0ZXM3VZOCtXMTk3KzI4cy85NndvUUcyZnI5RWdnQWx3UHdJUUNjUjdURFR3RGNDQUN2Z3BnclRDMFFxTXRKMFJROWtIeDN4SUt2WmZ3dWplQzJBTjVzaUp6RzZsYzVWdHdkd010SG1qT3gzMlg1dmxRWVdxeXZLdnlxM3llM1RRS0JKYytCcGhZSTFHMkpRb0cvcmp3WG5GQmdYTGJtQTJzUUNGREV4YXUyZUkzQTFHRWIxaUZUTTlYN1JFQUVSRUFFTnB5QUJBSWJYc0VxbmdpSWdBaUl3R0lKYktOQVlLNk42OFUyZ2tqR2xySUJaQm1FeDJSTGtRUTNwditsMEVzdUFlQTFsWEZudjBMcGVaUEoyYXhhNmdhaDFSNXl5dXJsdUpSNDlEeEJrVWxYbVB2MHNJZlJCWVBIZ1B0N0lvOFFaeXhEVmxkV2VVZjhTZFZKVW43N25qRFh5VWZyZTIvbm5RejNuVUZFSm9FQUVEdVp6S3R5T0dhZDVXbHNJOFdaYzU3RmRzbHY2SmdDUnJJMm5qV04zeVdybG5lOTh4cW02eGlKanRHdmNxL3dZUUNlV2JKQUhXbjlLRnp0eGFzclNnVmVIZldVVW9rNTB0a21nY0NTNTBCekNRVHFKdkxpeXB2SEl3SDh3dEZtK3FKWTg0R2xyQSs3OGsrdlZIZXNCSFF2QTlCM1Jkb0FOSzVIdDJFZDRnS2hTQ0lnQWlJZ0FpTGdKU0NCZ0plVTRvbUFDSWlBQ0loQVdRSVNDSlRsdVdtcExXVUR5RElJajgyZDF3N3dybG9hUFg0MzRHV1hyVGJZM3dWZ2p3RnA1RDZhczFtMTFBMUNxejNrbERXWDZ4elB4ZTZ6WDhMcFlZc0pqVXhIVmFmcXIyQkZIUEgzTVF4WmZkbDlZUEFNNHkzT1hBWmU2M3Z2eXY4SEFCd0VZRXF2TjlzdUVJaTUxdWI0ZE10d1Q3eTN2WTBSYjA2QkFNdFRhc3h1c2xuYitGMnlYbm50MVVzY0NZN1JyN0ovNFpWYk96amV6eWcwaXA0ZTR2SVozanZ1ZmZhcmxaaHIvM0NudS9OMTBXaFRmd2ZiSWhCWStoeG9ib0VBR3lVOXpOeWh1ckx1KzVrTjJab1BMR1Y5MkM3ZWhjSzFIbk40RFdqbVpkUFhJWm5OU28rSmdBaUlnQWlJUUQ4QkNRVFVPa1JBQkVSQUJFUmdIZ0lTQ016RGZTMXZYY29Ha0dVUW5vSW5EUTdjYkh0TDVzditUM2cyeFhNQTMva0ZBTHp2KzFNQWZ0QjY5eDlYTG5mcFFwTWJlVmN6WE8vbWJGWXRkWVBRYWc4NVpjMnMxbGtldTFNd3NIZTluTzJUdjg5NWVyZ1BDdGQ4dHdQdzJnRnVvbjhNNE44cWQ5Q2Y2M2tKVCt2elc2QlJLQmJHTUdSMXZTL0hVRENYeU1QNjN2dDRQaHpBc3liOEVyWmRJQkJ6cmMzVHp6Y0R3TzlrempDMVliU3JyRVBIN0dhYWF4eS9TOVUvcitRNnZ2SjhkRVZIZ3FYNzFXdUZkKzlzdkp1RzhTY0M0QlVUYmJFU3h4MktPM2oxQk1WYTFyVk83d3h6dlY4NnltdEZtZm83MkJhQndOTG5RRG5qdnRXV2NuNGZJdUN6NWdOTFdSODJ1YkNQZXZzQUVmYXZBWHdqZUVYNnJ3N2dIQWV1SGE0cHRQcVJUVitINUxSSFBTTUNJaUFDSWlBQ1VRSVNDS2lCaUlBSWlJQUlpTUE4QkNRUW1JZjdXdDY2bEEwZ3l5RDh1ckF4N09GS28vbzFxazNuR3dQWXhmTkFJdzROZHdkVUp6UlBUbnlPRzBtOFovMCt6dWVPQmNEN3Zma2VibGg1QTkwQTArVTM3eUM5YWV1aG5NMnFwVzRRV3UwaHA2eGV4blBIaTUwZVp0N21jazl2Y2VGNjc1RHFtM3Rld21sT3BzbHZqa1lXZnVNVUJaeHB2U2o4enZkUkpNRHZnZTdXK1QwMFQ1R1dObVQxWlN0bXpJMFZoZGRIdk5CWjFsTFJyTys5N3oxMHpYMlRJR1lxbFpkWU90c3NFR0M3ZmtINGxyb1lMZVY2a1poaGxPS2x4MVhmSmUvTDlnYU8yemNNNDdabG1HbW1lVXA0NW12ZUYzWEVXK3Y0UGFESS8vMG8yOXR6S3NISlE1eUpsZXhYT2RiUmM4Q0JrWGR6ZmtTQkV1ZFh2M0hra1lKS3h2MXpJeTdIREY0Rk5TVEVqTVFVSDl3bUluVExmUzhabk9aa2tmdU91Wjlid3h6SUVnaHdYc01yQUR4Q0xocWxyd3VBY3dsNkgvTjZ3NmpyaVc3Mk9mZEtXVXZ3V1dzK3NKVDFZVjNPYXdJNE9oanZ2VzJVSWpLdXQ0Nm9oSFVmQ2QrTzkxblc4WjVCOU1yckROb2lwazFlaDNnWktaNElpSUFJaUlBSUpCR1FRQ0FKbHlLTGdBaUlnQWlJUURFQ0VnZ1VRN21SQ1MxbEEyZ3NnekEzM3JoSlMyT0YxOTA1M1hZeVB5a3V0ZW15bHB0UTFzWWVUL3RRUlBETkFxMkpZZ0hlNzg0N2NMbWhtck5adGRRTndySGFRd0hzb3ljUk16aC9PUmhxVHgwOUYya3Z5TGxEK21NQS9pYWM1UElZZnF3YzBjaDM4OHB3OHZod2ozWkpRMWJmdXkxakxrK3E5aG0vUGg3RVNDbjlqTVhBK3QzNjNtUFBsengxYStWem13VUNsd3V1bzNmdGdEU1g1NG11K29vSkJJWjhlN3hiK25yQll3V05NNTd3aXNyTk5sM2s1M3BWV2V2NDdXRmp4VW50RTRiVWJUc3Y3Sy9mRGFCdnI1RHRuVzdFMzI4Vm92VTd4NEtuaGZHbDc5RVMvVy9NU1B5OVlGejhibUxlRmYxc1EvbUpBSGJzZ0xHVU9aQWxFTWoxOU1EK2p4NlNLSXE1bTJOTlFVUzhkb2JDMFRja05oN3IyMS9LK3BERjRxbis5MVNpeW9zNHkvaERBSThHd091Y2VDWEowTUErNnFvQU9EZXA2eVZuelRVMEgzcGVCRVJBQkVSQUJGWk5RQUtCVlZlZk1pOENJaUFDSXJCaUF0c29FRmh4ZFcxdDFzYzJDSFBUamRjSDhCVEpCUjJVYVhoblhFK3dUanZWYWZEazUxTXlUdmxZZVdCNW1PNjNNdHlBTDNXRGNPejJZREdkNjNmTDRMeVUwOE50UGlsM1NQTlVNVDFnbkJBMnRzZGdmWlhxTzN0c09CbjcvOFo0UVVnemRrL3l6NEpZNFptVnQ1QnpkK1NCeHN4OUtzOEhIeDR4Zisya3JlL2R5a3FKVTdmV08vajdOZ3NFNkNLZEhnUzZBbzBkcklOY1E3aUh2VGZPV0FLQit2M3NDemtPSEFWZ0p5TlR2d3JDcVk5Nk05K0l0K2J4TzZPNDUzakVjNEsvL1k1U0FnSDJpVWVHNjNLNnlqSDArZ2pMS3dTTnFyY013czVjanV6L2VTcVoxOTYwUTY2Qk9EY3ZtL0xjV3VaQVl3a0VtdlZJYnhqUER5Sm5xMzU1VlJtOUtiV3ZLWXM5WjgwSGxpSVE0UFVoNzZ1dXJycVNCU0dzcnlnSTV4aGE0Z3FScmxkeXpYVm84QTdSTjFZN3Nxb29JaUFDSWlBQ0lyQjlCQ1FRMkw0NlY0bEZRQVJFUUFTR0U2QTd2UWNNVEdZM0FEd2QxUTdjSEh0SDVaYVFLdnN4d2tVQjNMcmpaRkNwOTc0WXdHZkd5TGpTbklYQVZBWmhmZzl2Q3FkUllnVk4yV3p6dUJqUGRRR2FVaG5jY0U4MUhDMTFnM0NxOXBEQ2Q0cTRhems5M0dSQjE3anY3WEMvMnNXTHh2SW5qTGh4TzBVZE5kOFJ1eWY1aStHazJURUF1azZETXgyNnd1WlZBeHdYcHdqVzkvNXlBQWRIVHZUeTd0NzlnaGhwelB4dXEwQ0FIbS80TGZFRWZkZWNiYWhCczJTZGpTMFFxUFBxN1YrZUdrUkJxV1ZjOC9pZFd0WjJmTHJOcGdBalphK3VsRUNBUnZXVEtpSG1KWG9LTWRRckJKT2xnWldHeGQxNzN2RXFBUGNhMFAveWlodDZ3cmxNUi9ycy8vY0d3T3RaRlB3RTFqSUhta0lnUUdvVU4xTTA5bXlITjRFVVlUUFR0dVlEU3hBSWNFeDhTNWgzV0sySUFyRzdUREEvc2ZLaDMwVkFCRVJBQkVSQUJIb0lwQ3c2QkZFRVJFQUVSRUFFUk9Cc0FwYVJiSnM1OFg1UkdsNFVOb09BMWRaTHVuTDBuRVpKT1YzRzAvdDA4OThYbHVJU3RTdC9TOTBnbkxJOUxPa0xXc3ZwNFpxWjUxdGlYQnFWNkFLWGZmWlV4dkN4NjVXQ0hKN29wdmVFcmtEakV3VitidzRuVmJ2aTBBMzFqUXBkT2VJcHIvVzkzelY0ZDZCaHF5K3dYUFFBa1hyZnNTZC9kWnh0RlFqRVhLNlhjSW1lVWdkVzNLa0VBc3lIeDBQSko2dlQzRGR6M3ZuZExOdWF4Mityam1LL1c4Ynp2bWRMQ1FRNGg2ZEl1U3VVdkVvak5xWU9OZUxIUkE3L0VxNlgrZm1RU3RyQ1o5Y3lCNXBLSU1BbXdMMzBSMVJYaVIxdXRBZUt5M2lsbXZma3ZEVWZtRnNnWUhrQmFlSjRUaENJZWN1K2haK1dpaXdDSWlBQ0lpQUM4eE9RUUdEK09sQU9SRUFFUkVBRTFrZkFNcEt0cjBUbGNpeUJRRG1XUzBqSmF1c2xCUUlzTDl2UDI0d1RPWFFkK1dBRHp2bkRKamRQMWZhRnBicUZaMzZYdWtFNGRYdFl3amV3cHRQRDVNWE4yOWVHTzZKai9ITHZrVjVDbmNUeWNQVndWL3pPUFpFb2lLQ0FJR2JzNXFOMXZDbkthMzN2N0dlL0drUU5mZXQzdXY2bUVlTG9FVE84alFJQnkrVTZQVTI4Y0VUbXFVbFBLUkN3MkREdnZOS0RZcHZQSmhSazdlTjNRbEhQRVpYZk5nMXFEK2xJZ05jMXZLVG5OMFl2SlJDZ3FKTGlqSzd3N2lBS09UTzNnSTNuWWtiOG5EYlR6RktzUC8xQThLSlc0djd6QWhoV2tjU2E1a0JUQ2dSWWVYemZXM3M4QXRhVmV6cUF2UUI4eVZuYjFueGdib0hBM2NJMUpGWnh4cnErelhxdmZoY0JFUkFCRVJBQkVVZ2tJSUZBSWpCRkZ3RVJFQUVSRUFGNUVJaTJnUklDQVJxNEx1UncyN2kyeHNoTno3V2RXcHJhSU95NWQ5aHpJakYyQnkzYnpSejNqS2UwMTZWdUVFN2RIbEtZalJWM1RhZUh5Y0Rqbm5wVHhRRXNmOHlJL2UzS3RmVU5BZEJEZ0NVa1NEMzFONlQ5V2Q4N0JRSjBaV3dKUCtnVmhWY1hmWGRJWmlMUGJxTkFJTlpPcHZZMDRhbldLUVVDek05TkFSeG51TU5QblJldWZmejIxRk5YSEFvcDNnOWd4NDRmNmRxZkJucTY5ZTRLcFFRQ3NmYnoyQ3B2dkRLaVJJaUpRSWJPejY0RGdKNENPSjlzaDdtTnF5WFlUWjNHbXVaQVV3c0VXQmN4UG5WZDBhak84ZHNUclBuQW5HMlkxOEZSWkVPQlR5eElIT0NwYWNVUkFSRVFBUkVRZ1lVUWtFQmdJUldoYklpQUNJaUFDS3lLZ0dVa1cxVmhDbWMyZFNPNDYvWFc1a2poTEUrV1hPblQ5bE5rM0dyclk1U0o3clJmRXltYzV6U09kWTl1cWMzMHNlckErZ2JtMmlDY296Mk14ZGlUcm5WQ2RtbW5oeThHNEhnQWUwUUt4NVBtZDRnWW1qeGNsaG9uZHRLUmVYNFJBTllacjFNNGIyREErK083UWtsMzJoWXY2M3V2KzlrckF2Z2dBTjZ4M1JlZUIrQ2hJMTBac1kwQ2dTZFZMSi9ZQTd2Wm5xdzZudXIzcVFVQ0Z3bkcyS3RGQ3BnNlQxajcrSjFUMSt5N2VOVUxSUUx0OENNQU53bEd1VDRQSWFYbU5MSDJrMkxrOURDSXZXdklXaUkyVDVscjd1VGhzY1E0YTVzRHpTRVEyQ1dJcEs0ZHFVQ1A1N1A2Y1dzK01GY2Jqbms0YVJiOVpRQU9HZm02b3lWK0s4cVRDSWlBQ0lpQUNLeVdnQVFDcTYwNlpWd0VSRUFFUkdCR0FwYVJiTWFzemY3cUladDYzczJSMlF1Wm1ZSFVUZkxNMXhSOXpHcnJZNVRwcXRXcHhBOEhMeEpkaGFGeGozY2E4NlJkWDdBMjJFcHRwaGVGM1VqTXl2OWNHNFJ6dElleEdIdlNYZHZwWWN0dFBzdDhSRENTODVUbXBvWFlTYjZ1ZnNNU0kwMTFEWW4xdlRmNzJmc0ZWK045ZFVkWDVEelYvYUVSS25mYkJBSTh5WDVpZFNYRjdoMHN5WmxHMjQrT3dIbElrbE1MQkN5aERjdVNPayt3dm9lbGo5K3A5V2ZkWlU2My8wOEhjR0RrQ3BGU1RNWXkybmN4R2V0ZHNYbEtTUzhJcWZXOHh2aHJtd1BOSVJCZ3ZUNC96S3Y2NmpqbGVnNnIvNXRyL20vbGkyVWYyNHZSR3I4aDVWa0VSRUFFUkVBRUZrOUFBb0hGVjVFeUtBSWlJQUlpc0VBQ3V3SzQvc0I4MFFYbUl6dlNvTkhtY1FDK1BqRDl2c2V2QU9DdzZnOVBoVFJEcWZkeXM1eHVkNGNFenliRWtQVG5laloxazN5dWZEYmZPNGRCMkhNaTBSS2lXRzJvMUdiNldIVms1WCt1RGNJNTJzTllqRDNwcnVuMGNNeVlXWmYxQzlVSjlIMEIvTUJUK0pYRjRicVdwL1I0Y3EwcmRGMU5jcmxnU09lWTduMW1EQ3pXOTk0Y08rZzIrNDNCV05pWGwwOEF1RVZsc0RpdGNHYTNUU0J3SndCSDlUQ2M4Z3FLbEdxY1dpREF2TVhleWQ5VDV6N1c5N0QwOFR1bHZoajNXc0h6eTg0ZER6Yjc3Tmo0VzRySnl3RWMzRk9BZzhKOTY2bmw2NHZmMTI1K0NXQnZBT3pIY3NMREFEeXI1OEhVdHBqei9rMTZaazF6SUhLZlN5QnczeUMrN0t0N1hubEJnWS9ubWptci81dGovbS9OcjFodWVxZWlTUE45bS9RQnFDd2lJQUlpSUFJaXNBMEVKQkRZaGxwV0dVVkFCRVJBQkpaSW9HK2pyOVFtWDErWit6WWV4bjV2U2gxWW15TXBhUzBwN2hvM0p1Y3dDRnNiZkt6VHZ3bDNjdmZWTDExd2Z3ekFaU0lOb1BSbWQ4bTJabjBEYzJ3UXNueHp0SWVTWEZQU1d0dnA0UWNHQTNsZkdYbUMvbmFGRFR3cFBNZU9heG43dTd3QmNDMzhTZ0QzN01rY21mRUtnbU5IenJ6MXZiZkhqcGhCc2M1cWZlcVlaU2dWdGtrZ1FDSEcyeW9QQVFmMHdMdHo1Vm5nOWFYQUZreG5Fd1FDYXgrL1U2cVQ4NTIzQXRpLzQ2RjJuejJGUUNCbVhDOTUrdjc4bFREaUhaVkFhNytPY24rL01qTGVFTUEzVWtBMjRzYjZxZExYSkdSbWNSV1ByVzBPUktqVyt1SGZxL0Y4VHdDbkZLNEJhMjdNdG53REFLYzYzbXZOQithWS84YzhTZFJGZWdVQWVqamFSTzlVam1wVEZCRVFBUkVRQVJGWUx3RUpCTlpiZDhxNUNJaUFDSWpBdWdsSUlOQmZmMzJiSXp5ZHdFMGQvcjNrd0EwcTNrblpEaElJK0dxTjNpMW9lS0VCdnk5WUxEMTNndklkZDEvb1p0WVNOd2haRjlZbXFGVXZ2aGF3akZock9qMXNHVE5KTk9VRTJ6SnFJQzBYc2VzQ1l1N2dZOWNTTUFldkFuQ3Y2aDc2a29iMmRzbXM3NzM5WFZrdXlabitUNEszaVArWGhqRWFlNXNFQXZRU3hlc0ZkdXdnUWpmS3ZGN0FZK3dwaU4rVjFDWUlCTlkrZnJzcUtrU2kyUEhTU0lGb0FBQWdBRWxFUVZTWlBRKzhDUUQ3dFYrSDM2Y1FDT3hWbmQ0L29jUExHTFB3LzdkM0pzRDNGZVdaZmt1TklUZ1l3UTBIRURjeUtFWW5HVkVURlZ6QmJYUndJeW9heDExUmlRdW1GSGNSZFpEZ2dqdGExaUJ1STFocVZBUkZGR1Z4eVNRVmQwa1FsN2dCRG9xaXFLazViK3lyMStzOTNYMldQc3U5VDFmOWxhcGZuejdkVC9jNXAyOS83L2Q5VGNLa3B4amNvQkpGZktyeXV0NTFUY1d1MzZwWXVQZFU5S2xVdjdmcDczUGFBeTNtWlN5QlFPeTVjZCthQ0JOUys0RXhCQUlwQWVxVW5BeTI2UmxsckJDQUFBUWdBSUZlQ0NBUTZBVWpqVUFBQWhDQUFBUWFFMEFnVUkrczduQ2s2NkZoNDBscWVVSGQzTTdSZURxR1FUaDF3T2RwU2JIMEh2ZXRraDRVbVVNZmFEbmMrcmt0NTdua1pWTThJUFI0eDFnUEpUblh0WjB5dUUvTmV6aG16RnlNY1dwOTduTmVVL01WKzNha1VqTTRaYzd0SkozZlo0ZFgya285Nyt2ZWQzOHM2ZjJoYjNWZGM2amYrMlNHTmM0WjNyWUlCRkxobE5kRm84amhOMFNkb1FVQ01VL3d4WGliZW0zUC9mdWRPOCt4U0NBWEJoR0tVd3dzeWhBQ2dWaUtKNHVPL0M3OGZPNEFJL1ZpQnNmVS9pNTErOWd6NElnd0gwbzF3TitWK3FaT2RUK1IrdjNReEZEZlpCbWs5c1pON3B2YUR3d3RFUEJld3lsMWJoVUJNbVhCZFpONXBDNEVJQUFCQ0VCZ0t3a2dFTmpLYVdmUUVJQUFCQ0F3QVFJSUJPb25BWUhBQkJabzZFTHEwS3ZyUWU2NmthWU8rSHhOVG5xQVZFNVF0Mk5QT1lkZHYzZzZ5UCtqSjFNN0lNd3hVTGhPaWZVd3h0VEUrRS9SZXpobXVEVy9LZmE1ejNsTlBTOVBsSFJjNUlZeGoxTmZscnErNjFoUy9hOTdybnhnZjdxa0hTTWRlRndpTjNLVHZtK0xRR0MzNE4yODV4bzRmUnBKbTdEUHJUdTBRQ0RHeW4xMnVPazdTUHBrN2dCQ3ZUbC92M09HYXFQYlNUVWg5bjM5MHlRZHM5TFFFQUlCM3pMMm5QY1JSbnoza0tkODd3TFBWMHhjZ3BkenpzcjhkWjI1N1lFV0kwdjlmbWhpcU0rbmxSYlArdjFuY2NxUE14cE43UWVHRmdpaytqTlVLcVlNZEZTQkFBUWdBQUVJUUtBTkFRUUNiYWh4RFFRZ0FBRUlRS0E3QVFRQzlRd1JDSFJmWDMyMU1JWkFJT2JCdGhoWGpoZFlLaWY1b3EwekpUMmd5cDNwdkxkVEtha0R1YUVQQ0JkY3hsZ1BZOHpKODZxUThzK3R1ZkhVdklkM0NJWW1QeE4xNVZXVkNPWkpZNEFjNko2eCtjb3g2S1lpTU5oNzdxREtjSFpab2ZHa252YzZnWUIveTcrZ01zSStLOUl2cCtYWlQ5SjVQZlI5V3dRQ3NkRGFVL2VVSEZvZ2tFclJjVUhJSis5SUhFM0tuTC9mcVhHbVVvUjRUK0p2N1NVckRRMGxFTmdqQ0k5dXRHWWdUdkhsL1pMRkRXM0tIMGg2dGFSSDFWejhpbXJjVCs2UTBpVm1JRVlna0Q5amM5b0RMWTlxTElGQVN0RDBVVW4zbHZTVGpDbEk3UWVHM3Yrbnh2YkZTbXk5dnlSSFBhRkFBQUlRZ0FBRUlEQkRBZ2dFWmpocGRCa0NFSUFBQkRhQ0FBS0IrbWxFSURDZEpUNkdRZmpHd2R0d2x4b005c0J4bU50L1NtRHlQdmRZU1lkbDRQVEJsdE1SZktURHdYVEdiYktyVE8yQWNOSHhNZFpETnJTZUtzWkN6ay9Sd0JETDVXd2s5dTQ2SUt6dG5oQk5xcGxVaW9DY3ZObXBFTHFYaDNEZlp4Y2FlZXA1ajBYbXVIb0ltYjF2cEcrcnVjemJEbU1iQkFLcDBObzI4cnl2TGNBQnJodFNJSEFsU1NkVUVVb3NxS2dyYlFVVmMvNStwNlk1RnZramx2cG9LSUdBKysrMEVKN2JkY1dpcTN0VTM1V3pVZ05kK2J2RkFVZEV4SGRmcXlKMzNFV1NSU1Z0Uzh4QVhNcDd2RzFmcDNyZDNQWkF5eHpIRWdpa29oQTU4c1lqTXljOHRSOFlVaURnZDd6ZjRZN2FWbGMyWFlDYU9XMVVnd0FFSUFBQkNNeVhBQUtCK2M0ZFBZY0FCQ0FBZ1hrVFFDQlFQMzhJQkthenRzY3dDRDlZMGxzakNKcDRxOWdEN2hPU3JwT0o5TFVoVFA2UE11dVhxamFsQThMbE1ZNnhIa294cm1zMzVqMWMycE84elZqdkxPbFVTWFcvNjlwNjhMYnB5eGpYcER5WWMzTWxwOUkwSEJXTVd5WEdtSHJlVTZrN2JGUTdwWW9tY0lXYXpsa2tZZzd2N05qNWJSQUl4S0pKekNGVng1QUNnWngxNThnbVhwdHR5bHkvMzdHeHBnUTlSMHA2VG8xUWNVaUJRTXJUMzBLR1I0UjNpdDh2cVhKVlNUWWtQclNtWXRmSUJJdG12ZGM3UjlKMTE5d0hnVUJxbG43OTk3bnRnWlpITllaQVlPZXdCN3RGQk85anE5OGhyOC9EUDZrVVl6a1IzYVl1bXN2RVRqVUlRQUFDRUlEQTloSkFJTEM5YzgvSUlRQUJDRUJnWEFJSUJPcjUxeGxMZk9qM2tNd1FqV1BPcmcvTmZVaS9XbEpHbmpIN1hIZnZvUTNDSlR3U0Q1YjA5b2dCZFhYc0ZnYzR4SzJ2S1JWU1BEWFhLWVBoa0I1RXkzMGRlajJrT1BYOTk1VDNjSzZ4dWU5K3hkcDd5cHBjMWN2MWN6em9oK3h2bi9kS3ZTOGMxdHpSUnM3UHVPbE5xM3pnRHUxOXRacTZKWTNEcWVjOTllM0k4YmJ1d3p0MzB3VUM1bWdqNXFFMWEyQnE2VVhXZFhNb2djQ2VJWS84WHBGbjYxeEpCNjRKbFoveE9QNm15aHkvMzNYajgvdks2OHZHd25YbE01THVKdW1pbXI4UEtSQndGeHhaeGFrRTdoU1pzTk1rUGIzeU1QNW5TYjlhVSs4cXdlRDhkNUlzRXFncmZyY2MzVU1FcDVoQXdKRVAzbHQ1Uk84dDZUL1hkTVRDQjYvYkwxUTU0ejh0NmJPU0xtMnlZR2RlZDQ1N29HWGtZd2dFVWltS21rWWdTdTBIaHR6LzN6enNpM2FxV2RjWFY5R3BiaXZwU3pOZjkzUWZBaENBQUFRZ3NOVUVFQWhzOWZRemVBaEFBQUlRR0pFQUFvRjYrS25Ea1JHbnJkT3RVMGFlVG8wWHVuaG9nN0NOZVE3emYrWEllSm9hYWUwSjkySkpUMjNJNkYvQ05YOWZjL0Rkc0xsRzFWUFB3SkFIaE1zZEgzbzlOSUxXUStVNWVnOGZIenc1NjRhL3llRmZVK2tWM2lMcDRabEdweDJDTWN3ZXozV2xsS2RjNm5uUCtYYnNIZ3kyTm43VmxkZFZ4c2NuU3ZwbHkyZGwwd1VDc2J6M05pNzYrL1Q1bHV5R3Vtd0lnY0N1a3Q0VmVOU055eDdoQi9XUWptR08zKzg2Smc3VGJXN3JJbjNZaU9ob01CWXAxWldoQlFMdWgxTTlXU3pwTkRXeDR0enFGdkgrYTZoMHhTcjFpVk1wN0pPeDhQMWVPYWFuZlZZcVJWVkdkMzZ2eXI5SmVrVVEvbjZ2VFFNenVtYU9lNkJsdkVNTEJQeCtPckVTbE53L01zZE5oVktwL2NDUSszOExsaXd5clN0Tklyck42REdncXhDQUFBUWdBSUh0SW9CQVlMdm1tOUZDQUFJUWdNQjBDQ0FRcUorTDFPSElkR2F4V1U5eWpEek5XaXhmZTBpRGNJNjNXaE9QNEdVNmJZME1idU1mZzFEZzR6MGRZT2ZNV3VvWkdQS0FjTG0vUTY2SEhFNTkxcG1qOTNDT1VidEphTnMrZVE3UjFoT0NSKzY2ZXpuc2RkUHc1cW4wSm0zenFhZFlwSjczM0c5SHpBRHBQdGhvNjVRTTl2cHRVelpkSUJCYlQ2WG12czA4eEs0cExSRFlOeGlNYjVqbytCdERKSVpmOUREQXVYMi8xdzM1ZXBXZzRxT1NMR3BhVjU0cDZTVUpNZE1ZQWdIMzFWRUFqcFAwc0I3bWNya0pydzNuWlQ4aFU4U1ZjL3ZVdXpTbmpWaWQ5MGg2UnBXeTVTdGRHNXJnOVhQY0E2MWlIRm9na1BybXVuOU5JOCtrMXZDUSsvL0hTTEt3c0s1c2NvU3FDVDZpZEFrQ0VJQUFCQ0JRaGdBQ2dUSmNhUlVDRUlBQUJDQ1FJb0JBb0o1UTZuQWt4WGFxZjg4MThreXAvME1aaEZQNWJoZE1taDYwTGJPMFI1c05RQTUxVzVlck84WitTS0ZBNmhrWThvQndtY2xRNjJHTVoyQ08zc01PKytvRFdvZDRyU3Yza3ZUK01ZQVd2bWZLRU5BbUpVQnNEWGc0cGJ6SVU4OTc3cmZENzlFM0pBeDVEcDE5UjBuZmJ6RS9teXdRc0VEdHc4SHJlUlZORzdGSkM3eTlYRkpDSU9BekkzdG1leDA2elZPcTJCQnV3OWtscVlvTi9qNm43L2Zxc1B5dU9sbVMwMCt0SzdtOHhoSUl1TTllQXc4STc1ZFlxb0RjS1hVNmhVTWtmVFgzZ3N4Ni9oWitUSkxUT1pRc2pzeGpvWUFqSjJ4S21lTWVhTjJ6NXFoZis5ZE15amNrM1ZyU2QzcVl0RnVHYjBaZFdpTGZvbzJvT2JVZkdITC9iK0hTaXlLc2h1eExEMU5HRXhDQUFBUWdBQUVJckNPQVFJQjFBUUVJUUFBQ0VCaUhBQUtCZXU2cHc1RnhacXo3WFhPTlBOM3YxRjhMUXhpRWM3M1R6Z3VHclc5MkhKNFBEdTJ4dGtmTGRpd1VPQ3lFQXJiaHFFUkpQUU5qSGNvTnNSNUs4TXhwYzQ3ZXc3Rjh5eDd6WmVHZzNNYVlUU3Vwdkw5dFVpdllxT1IzdzE5RllEbEV2NzFwK3l5cDU3M0p0eVBscWV4K0gxbEZFM2hPQzYvZFRSWUlPTEtDeFRicnprZWFob2p1YzIwMGJTc21FSEJxaVdkVlJuNm56OGtwRmsxWVRPTFE5OWZLdWFBeXZwMFNucDgreFFITHQ1N0Q5M3U1djE1UGgwdDZhUTAvaTQ0T0RQbnVVNGpIRmdqOHFhU1hTN3BEcXFPSnZ6dVN5YkVoOWRORkhkdGF2VHkxUituemRoYWgzV2VEOHEvUGNRKzBPcDhwNFdCZkFnRy9GOTlaN1FXdWtWaFFUYjdkaTZaUys0RWg5Lyt4NzRuN2UwU1ZFdTZvUGg4cTJvSUFCQ0FBQVFoQVlIZ0NDQVNHWjg0ZElRQUJDRUFBQWlhQVFLQitIZFFkanZoUTBWNGYvdjhwRng5UTdieW1nMjBPaXNZZVorcXd0Y3VZN0JIb1E3YlhWa2E1VkxoaUcrSWZHQTdrK21CaUR6aUg4MzFjaDhac2RIWElYZWZnN0x0TTZZQndlV3dsMTBQZkRKdTBOMWZ2NFpSQTRLZVM5cXUrTjU5ckFtTW1kVjhweWNiNmRjV0dVQnV4UHRsaUxERkRzWnNyWVN4T1BlOU4zN1AyekxYUW9hNTRYZmpkNjdFMEtac3FFRWdKUTBxSVFwcHdiMUkzWmRCcDBsYlR1aThMd2hNTGswcVdxWCsvbDhmdUNDNE9TMThYdGNoN2tGZ0k3OXp2YjhsMy9lNlMvTDQ5cU9kSmRZb0JDMVlzNXVwcnpkaGdmMUxQL1l3MWQySDFIbldlOXM4T2VNOFN0NXJySG1pVlJXbUJ3TldyR3o0dlJDTkx6Y09aNGJkK1U3RlVhajh3SllGQTA3MUppaGwvaHdBRUlBQUJDRUJnQkFJSUJFYUF6aTBoQUFFSVFBQUNDQVNpYTZEdWNNUTU0TzhwNmRLSnI2QTZJK29jRDFMNk5naDc3Mm1qcHR1MVYxMUtHTENZNmo3ekdTL2FkRjlzUkhSSTd0eCtyRnQ2OWlhMkY4MlBlbHlYVXpvZ3pEVlF1TjRjMTdqN1BWZnZZUnR1enBHMFc4M2FLMmswNm5HNU4yN3EycExPa0xSM3paVmRqUGlwdHJ1SUQrb0dtbnJlbXo1WFRqVndvcVQ3UjhpMk1WNXNxa0RncGlFaXpMcFEwVzFDUkRkZTBEMWVNSVpBd0o3VWo2MitwOTZqRFZXbS9QMWVNTmhUMG1uVnM3aFhEWlMzU0hwMHRYK3dvVHluREIxQndJeWRVdUw0S3N5NDN5bWxpcU15SGR4VHVvSGxkOVE2VWJHL2lmNCsvRHhFeGZqek1LaGRPNHh4RTBRQ2M5MERyYTdKRWdLQkhTUjVuVHdtcE1YSVNWSFdKRExJNmhoUys0R2hCQUorL3Q5YVBaY1Bpano0VGZjbXBkNGh0QXNCQ0VBQUFoQ0FRQWNDQ0FRNndPTlNDRUFBQWhDQVFBY0NSQkNvaDRkQW9NUEM2dm5TbEVEQW5zbi9rSEhQUHd5NW5XL1E0aEEyTno5dlJqZldWdkhCdDNQcnZrWlMyOXk2RmdjOFdOSUhXb1R0WHRlcHFSd1Fydll0dFI3bWVGZzRaKy9oMURyWlZJR0FVd0M4dmVDaGRTdzZnVy83NmhDOW9LOFVJNmw1YlBOYzdSTkVGTEVReUUrVGRFeURGK2VtQ2dUc0VmcmNHZzU5ejNVRDNLMnFEaWtRc0REQWE5TTV2My9WcXJmZEw1cmk5OXVqc2tlMlBkbnZWRFBFcjBtNmk2UUxHaUFZVWlCZ3JpK1c5TlFHL2V0UzFRWlZDNW8rMHFVUlNUWVFXOFQxc3hidDJCQjhNMG4zcmVibGYxYnYrV3MyYUtPTjRLcEI4MFdyem5rUHRBb21KUkM0WE5LN0s0SHlUektJK3ZlSzEwT1RkZUJtTFV6eGI0cTJrU3hTKzRHaEJBSXBsaDVybTcxSkJucXFRQUFDRUlBQUJDQXdKQUVFQWtQUzVsNFFnQUFFSUFDQjN4SkFJRkMvR25hUmRMczFobVI3NlRoa3RBLy9wbHpzemV2ODJLdmxDelBNVlpveUNKZWVoNDlKdXAra2kwdmZTTkpWSkIxYTNjZkdvajlxZVQ5N0JEcVBhODdoWSt3V1V6a2dYTzFqYWozTThiQnd6dDdETncrZXp6dlZMS1pORkFqWW1QR09ZTVJaTjJ3Ym12ejkrSHpMWjlpWCtmM3RDQVZYcm1uRFJyM2JTTEozZVI4bDlieTNmYTdzMWUwVUxuWEYzOVRiVjRZNWY1dHl5aVlLQkdJUkkyeE1NcCt6YytCTXBFNXBnWUNmTDkvRGdqb2J1ZnNTeVhURk42WHZ0OC9ZWGhEQzU2OGJsdzJJOXRoMmRJRW1aU2lCZ01VQkZrbjUvWkVxOXY1M0ZLVVBoeFJneTBJUkd4aHYwc0RnM3NYck90WFBwbjkzQ3F4YlNYcDVKZnpjTi9QaUkwT0tqYWs4RTVuZDFwejNRS3RqekRGcTUzSnBVOC9QdGozdTM5WGgzWmphRHd3bEVQQTc5YjBSa1pQNXROMmJ0R0hMTlJDQUFBUWdBQUVJRkNLQVFLQVFXSnFGQUFRZ0FBRUlKQWdnRUdDSnpJRkF5aUJjY2d4OUdkdWI5dEZSQko0azZaa3RoUUxPUld0UHVLODN2ZkZTL2FrY0VLNE9JYlVlNW5oWU9HZnZZYWZyY0lxQjY5YXN0VTBVQ01TTUdjWmdRNVZ6WlhmSmFSM0x4N3hBL2NBZ1ZPandtUC9tMHRUejN2YTVzckhrNU9DcFhOZFBlMy9iMnpHSDF5WUtCR0xSS1BwWVMzMnNqeVp0bEJZSW5CQytqZDlxMHFrQjYwN2grMjBQZEJzSTYwS1Irems2dW9VQmNRaUJnTThIbmY3cHBZazUrMHkxeDNsWTllNzRZdWJjNWtaNmFDcGF5cng5NjJvV0NqajlnZE5jN1pob1pXcDl6eDMwblBkQXEyTWNVeURnK2ZkYU9UMFhmRTI5MUg1Z0tJR0F1NWY2bnJUZG0zUkV4T1VRZ0FBRUlBQUJDUFJKQUlGQW56UnBDd0lRZ0FBRUlKQlBBSUZBUGl0cWprY2daUkF1MFRQbjQzWG9hNGQySGl0c3NjZGxROFBmQkMvQXB2bDN2MW1sWHJpWEpIdlh0U2xUT2lCYzduOXFQY3p0c0hEdTNzTXBnWUNOdnZ0THNqRm5VMHJNU08weDJ1djE5VDBNTm5XZlBvM0hxZWU5eTNQMVo4RmdjYlVJRStjWmQ2N2hWTmswZ1lBanhieW5paEJ3WU0zQSt4U0JwTmoyOWZlVVFhZVArOWhMOWhsVkdQMWpKZmw3UGNVeTF2Zjdsa0drVlBlOE5SSGtySElkUWlEZzZDc084MThYUGNWei81UVFOYUROL216WDhLNnBTNzNnTVpkT0s5Vm12ZDZpaWlqd29XcmNzWlF0YnZmNTFmL1k0RDZYTXZjOTBDcm5zUVFDampManlBRmRoTUdMc2FUMkExTVNDQnhSdlN1T21zdGlwNThRZ0FBRUlBQUJDS3duZ0VDQWxRRUJDRUFBQWhBWWh3QUNnZDl5ZjBRSTVUbk9UQXg3VnhzamZNZzRsNUl5Q1BjOUR2T3g5LzZVdkJOdGFIaTJwTVBXcEwySWpkL2hsKzh1NmJ3V2tLWjBRTGpjL2RSNjZHTEliSUdwOHlWejl4NzI0ZjVaa3B3cnQ2NVlxUEwrenFTbTBVREtzLys3SWZUL3YvYlEzVlNrZ2o1U0dTeTZtWHJldXp4WC9yM3Y2Mk9IK09abGcxM0t1TEZwQW9GWUtva3ZoL1FDMyt0aExRM1pSRXdnNE5EbkRobjlnNW9PK2ZseVNvVnJaWGJZdWJ3ZktlbVN6UHBqVkJ2eSs3MW5TQnV3VjgxQXZTZTRTNVhmM2lsSzJwVFNBb0dyaC8xcFhVajlQc0tuZTl4ZVo4ZUg5RkYxSEN3U1BhWU5wSUxYcE1RZnZ2WGMzaHR6M3dPdFR2ZlFBb0VmQlZHaUk0YTBFY3lzVzY2cC9jQ1FBZ0UvcC82TlhsZUc3RXZCUjV1bUlRQUJDRUFBQXR0TkFJSEFkczgvbzRjQUJDQUFnZkVJSUJENExmc2hQTjdHbStuZnZYTVhRODhZWTBnWmhQdnFrNFVCejZyQ2MzNnBSZGpkdnZxUWFtZDNTUzhNWVhWVGRSZC9iK3NKTjZVRHd1V3hwdGJEbk5iM0RwSk9DaUtPZGZNNUIrL2huTVB3cDFiUk1QNHVkOEZPdk42ZEpaMWFlV25XL1laOWh5Ujd3Lyt5aDNHa3ZNdDlpNzY4UlZQUGU5Zm55Z1k1aTBUc0hWeFhuTkxsMFFtUDhFMFRDRGpQK2hOcmdQUTF0ejBzeFVaTnhQWlR1U2xIOWdocEJISnkwRHYwK3FFVGppU3dnRmY2KysxbnpOK1RPczk0QzRvY3FlTFRqV2J6ZHl1WEZnaDR2bDhiNlYvYjFBanJta3p4K2s0VitXUy9sZ0xMRG9pVGwvcDcrckpJTFl0d0RnaFJHSktOalZ4aEUvWkFxd2h6OWtSOVlMZkl5bEZVdk9mNFNSOE5McldSMmc4TWFaUlBSVkx5YjV4N0YyRFFNMUthZ3dBRUlBQUJDRUFnUmdDQkFPc0RBaENBQUFRZ01BNEJCQUsvNVk1QVlKdzFtSFBYbEVFNHA0MTFkWHlnZG9xa2QwcjY0TXdPbDI0aXljYTBPaSs3MWZHK292S3dmSEpENGNPVURnaVh4NU5hRDEwTm1XM1hVNXZyWWg3aWMvRUN2Rkk0b0hiTzY3cnlwdURsMjRiUmxLN3g3OVpYQldOa1hiK2NXc0Roc2ZzcUZpUThKdExZWjRNeDZJY2RiNWg2M3Z0NHJuSkNoeDhrNlgyUnNXeVNRQ0FXV3J2UDZCQWRsMGJqeS9zUUNDeHVlclB3amQ0NzBZcytEY2VOQjl6d2doTGZiNmNnY2txa1J5V2VuYU1iN2dOV215c3BFSWc5RCs3SGFaTHVVNlYvdXJRaDcxajFXNFgwSnp2V1ZKcWlTQ2NWWmNGRG1Vdlk5VTNZQTYwdW5aSUNnUytFQ0N4K3h6b2FpTVVnSlVwcVB6Q2tRT0RCaWZSRGpqNzBsNUxtRm1tbnhMelJKZ1FnQUFFSVFHQzJCQkFJekhicTZEZ0VJQUFCQ0F4TUlLV2lIN2c3czdoZHJsRURnY0IwcHpObEVINWJ5T0djTTRJTEpYMmxDdFZ2WTlyUGNpNlljQjBiQlB4T2NFU0JWTGxja2cyTlo2WXFMdjA5bFZ2ZW5vb09EZHVIcDNTRGJpbTFIbktmK1NiM0xGWFhlWUtmVzlPNERkRk9kVEdIRXZPQ2R2OC9HYUlrL0hnT2c0bjA4ZnJoR2RwdFF1T3dnY0JwUkN4MjZsSlNCb0Urbml2LzduOUJpTlJTMTFjTFl4d0N2UzdGeXlZSkJHS2h0UzFhcytobWp0K3BQZ1VDWGlmMnZIZUVIK2RncnlzT1BmK0E0RUhmNVRrWTZ0byt2OTkrcmc2WDlOSkk1L3VLc2xCU0lCQjdIdnA2ejYwaVNvbStwaXJVZTBJUXE5Vk51ZmZGaHhRMElQZjFuR3pLSG1pWlIwb2dZUEhYMDhQdmtCUkg3Njh0Q3JnNC9Dc2xDRmp0UjJvL01LUkFJQlcxNlRKSiswdjZUQW9tZjRjQUJDQUFBUWhBWUxvRUVBaE1kMjdvR1FRZ0FBRUlUSXNBQW9IbTg1RnIxRUFnMEp6dFVGZHNra0c0YjJiZVI5OVAwb21TYkhDSWxhYWh6MU1DZ1k5THVtZlAzbnc1ZkZMcndVYTFrM01hR3JsT3pGdlNnZzduNFQ1NzVEN20zajdsNGZYZHl2dnpOcExzNlRYbmtocm5XR056TkpHSGR6UUdwUXdDdWQvU0ZBUG5sajlkMGo2UmlyR0lKNXNpRUVpbGo1aERlcEc2S2V4YklPRDc3Qms4eVBlS3JCdDcxRnBjY2tGcUVVN2s3MzE5di8zTmMvN3hLOVNNcTIyYW9YWE5sUklJbU1XYkkrbVR6ZzNwRVM0cE1IZC9VWDF2ejVCMDVUVnRUelZjZitwOVBkYityTW4wYk5JZWFIbmNLWUhBTnlwQjM2MnJ5RUJPWVRIVmtscGZRd29FYmxDOTF6OGxhZGNJTEl0aC9EdUlBZ0VJUUFBQ0VJREFUQWtnRUpqcHhORnRDRUFBQWhBWW5BQUNnZWJJYzQwYWo1RGtVS056TEx0SXVxdWtxMlIyUHBkSlpuUEZxNlVNd25NYlR3bGdLUU9CNzlrMFpIVktJRENXVi9oVEpCMFRnWGl2a091OEJPYysyNHg1UzM1WWtrT3Qyek5xRHNXcExteVFzTkd6cnN6OUFEZGwwQjF6bnI0dHllSDd6Ky9RaVpSQm9NLzNySTI0am5oUVo5Q01SVHpaRklGQXpDZzVWYS9sM09WVlFpRGdlOTlTa3QrTlY0dDBwQzlQK2R5eDlsR3Z5L2M3eGNRRzdnLzBhSXk4WGhCaHJCdTM3L1hlS2dXTGM2UFhGWC9UanEyRUFGOWZxWENOOEExeCtvVjE1YWdRTnI4UDNxdHQ3RnlGS0Q4MUVxRmlpdUg2YlZ3L1M1S05wK3ZLSE1LdWI5SWVhSGtPRUFqMCs1VHVGTkxBM1RiUzdGZ1J6Zm9kS2ExQkFBSVFnQUFFdHBnQUFvRXRubnlHRGdFSVFBQUNqUWdnRUdpRTZ6OHE5Mm5VYUg3M01sZllVL3ptVmRqSiswczZPSGpXTmJuVDNKZ2dFRWpQYms3b2JyZnlXRW5Pa1o1VFVvZm1ZM2xCUGJPS2x2Q2ltZ0hNSmRSb3l0ZzhOKy9obEhISDA5VTBna1hPR2gyeVRzcUFQbVJmMXQzcmlaS082OUNKMVBqNi9HNWNLWVRIOXZ1b3JqaGM4TjBrWGJSU1lSTUVBcW13NWxQTWU5NWthWlVTQ09TRTBuZXFBWXVyM3Rla3d5UFg3Zkw5bnR2dmdwOVdFVVQyay9TNUZlYmUwem9Ga28yQjYwcnB5RUN4TlR0RjQrUGNqZENidGdkYVhyTnpueHVQSmJVZkdES0NnUHVUU21QVmgwaHk1TThBdDRjQUJDQUFBUWhzTndFRUF0czkvNHdlQWhDQUFBVHlDY3p0SURCL1pPVnE5bW5VS05mTGVNdmVLem04N29FaGpMVHo4Tlo1WHRhMTVFUHpqMVM1Zkk4UG5sSWx3clNXNG9OQUlJL3NIaUYwOTQwaTFac2NkS2NPT2VzTyt2TjYyNzVXN0NEZmVWcnRaZlNsOXMwUGN1V21lUStud2tNYmF0TUlGb05NUklPYnhISWxOMmltV05XdVVTZFNCb0crdjZYT0szOWFKUnpaTzBMRVlxQ1hyS1JPMkFTQndQV0RNWFMzTldPZiszUGlJWlVTQ0xodGY1ZWNRc1pSS09xS2MzYmZVZEwzaXoxdC9UZmM5dnM5dDk4RmRmdUdXSjd4SVlSL01ZNVRETmVmMnArTkplRE1mVEkyYlErMFBPNjV6NDNIa3RvUERDMFFjR1F3UnllSmxhNGl5ZHkxU3owSVFBQUNFSUFBQkFvUVFDQlFBQ3BOUWdBQ0VJREFSaEt3dDUwUHpDbjVCQnlXOUhYNTFTZFQ4NCtEbDVWelhqdlBlMjc2Z09VQjJORHdUa25PVDIxdnJWOU1ablROT29KQUlKOVh5c3VtYVZxQW1LSEh2U3J0MWJjNjhsU28wVG1FMWQxVTcrRll1T0RGUE03Vk16b25Ra0wrVTFxbXBzUHkzNzRTa3AzZHN2bVVRYUJ2Z2NEaS9SSExuZTV2bUlWeG4xNGEweVlJQko0UUlpaXNtNnE1Ujlyd21Fb0tCTnkrMDBHZExtbkh5Rm8vVXRKelZzUWxMUitOd1M1cjgvM2VGSUZBYko4M2hCZ3h4dkd6VlRqL0F5VDljTENWa0w3Um5JM1FtN29IV3N6YW5PZG1NWWJVZm1Cb2dVQk1WTGZvODdsaHZ6QW5BWHo2U2FjR0JDQUFBUWhBWUVzSUlCRFlrb2xtbUJDQUFBUWdBQUVJMUJKdzJvQS9rZlRRbG1rREZnMzdJTk5SQXV4TmVzSE1Ec2ZyNENBUXlIOXc3aVBKVVFMcVNsT3ZzbGc0ZjkralpGN2dkV053dnQxUFZhS2ZYV3NHK01FZ1d2aFpQckxCYTI2cTkzRE9BZTUzZ3ZEcHZNR3BkN3ZoWFVNTzNMcmZyZlpZOXJOZ0kzMnBZcU9EQlJiWGpkeWd5L09ZTWdpVUVBajR1L2VHS2gvNXd5SmpjcFFCdjljdURYWG1MaEN3K00vZlp4dTVWNHR6dU45ZDBpbWxGdEZBN1pZV0NQZzVkQjc3d3lManNWSFpVUVJzTkpwTGFmUDlSaURReit6R09FNVJlSmd5UW45UjB2NlNMdXdIVDYrdGJPb2VhQUVwTlRkTjkrRzl3czlzTExVZkdGb2c0TFJFSjBpeUVEVldIaUxwclpsanBCb0VJQUFCQ0VBQUFoTWlnRUJnUXBOQlZ5QUFBUWhBQUFJUUdJekExU1g5RDBtUGx0UW1iWUE3NnFnQURyZnJLQUZuU0pxeVliUXRXQVFDK2VSU2gzcE5EeVpUN0lmMjJFbUZHZTFpSU0ybjNLM21wbm9QcDd3Q0Y5UWMwY1doWUgvWkRlTmdWK2NjVEE4VjJqYVY1dURMSVlyQTkxclFTYjA3U2dnRTNFMm5SUG1FcE90RSt2eTRwVWhBY3hjSXhNUW1RNzlQV3l5VHJFdEtDd1RjaVp5US9LdmlrcXpPajFncDlReXUrMzV2ZzBEQTM0bzdTSElFcEZJbEpvYWNZb3FCYTFkUkRjNlNaTkhrdWpMRlBpLzZ1YWw3b01YNEVBaVVlVXBUUWszZjFYc2dwNS81VnBrdTBDb0VJQUFCQ0VBQUFxVUlJQkFvUlpaMklRQUJDRUFBQWhDWU1vRzJCN3VPRExCSUhmQlZTYithOGlCNzZGdktTRjNLY05WRDF3ZHZvbzJCSWRiSkc0ZEQrVjFxS25VTmE5NEVVRTZlKzN0TGVsK1RSZ2V1dStuZXc3Rzh3Z3ZVL3k3cG9JblAwL0t5U0VXdEdESm5mQTdmdHM5QTZ0MVI4ajE3U1BBT3JIc2M3UVhyOUFtTzFEQm5nVUJLYkRLVTBLVDBhMjhJZ1lESGtGbzNyck1zTGlrOTdxN3RwNTdCZFFLQm9WT1AyZmk1YzJTZ1AwZ0lWZjIrZE9xc2YxNXBJelYyei9XSlhRSFhYTy9uMHFrOW5ESnBYZm1vSkw5WGYxTG8vbTJhM2JjU1RWZ0U4RWMxRjcrcE1wSStzazNEaGEvWjlEMlE4U0VRS0xPSVltdG4rWTV6RTZHV29VV3JFSUFBQkNBQWdaa1JRQ0F3c3dtanV3UTlxekFBQUJ4T1NVUkJWQkNBQUFRZ3NQRUVybGpsYnJVUngrRnVLZVVJNUFvRVBCY2ZDYWtEVHBXMGJma1ZFUWprcjhFN1MvSWFxZHRmTncwN216cm9kTTllSFR6Q1M3OHZVcDdHMzVWMG15cE5oOE1CVDdWc3V2ZHd5Z0M2bUpldkJTOHZpNTJtWG1MZWp1Njd3OFZiOEhEWkFBT3hNZWc5SWM5dTNlM2E1ckJQR2VoS0NnUThybmRKdW1lRTRmOEpoa1UvUTNVaW9DRnlsWGVaNXB0S09sUFMxZFkwOG0xSnQ1TjBmcGNiVE9UYW9RUUNPZXRtVG1sTit2NStsMWdPc2YxWWwrZHZkMG5uU05xdHB0T3ZrdlNrRWdPU2RJMWdiTDlKVGZ0VE5MYW5majlZT1BMNlFyeTZOTHZwZXlDelNlMmJtMGJ5NnNLNzdiV3AvY0RRS1FZVzQzQ0tnYmNuQnVYZnpBOUlwRnRyeTRYcklBQUJDRUFBQWhBb1JBQ0JRQ0d3TkFzQkNFQUFBaEJvUWNCZUtmYlNlWFk0c08vYjZPZWNtRzdUaCtSOXQ5MWl1S05lRWp2Z3M1ZlZJa3JBNTBJcWdWRTdPK0xORVFqa3czL01VaWp1ZFZlMThZUjdVWlZiM2VGMzYwb1hvMER1eVB4NzRRVlZXUHBuUlM0NEtlUW5uV3JvK3BUeGZGTzhoMU1IeTRzcC9KaWsrMVZHbjR0ekY4RUk5VklIL2U3UzBJYVlsR0NoYlVTRDFMeVZGQWlZNHo0aFRZNk5kZXVLOXdzUGxPVDN6VndGQXJFVUVVTUpyWVo0aklZU0NIZ3N0NUowdXFRZEl3TnpDaWFuY25KS3BpbVhFdC92dnNkYlNpQ1FldGQyU1orU1lwQUtYVDcwT3o3Vlg2Y24rNUFrLzE1YlY0YllrNlg2dU83djI3SUhTcTFsQkFKdFZzK3ZyMG14WGJUc2ZkQTlRaHFPOW5malNnaEFBQUlRZ0FBRUJpT0FRR0F3MU53SUFoQ0FBQVFnVUV2QVVRTU9yWDU4djB6U0g0UUlBbjByOEc4WnZDM3RQV2N2U0hzRGJYT2V3RHFCd0pSemg0N3hDTTFWSUdDRGhkTS8vSHdnYUtrd3VlNUdHeSs4bkxEbWZ4ODhka3A1VWY5Wk1BS3Q4N3hkNExYeDBON1RVeTNiNGozczMzYkhTam9zWXlLbUxoSklyZjB4b2xha1VoNFlleHV4eWRnQ0FmZjdxV0VQVXJkMG5HTGdHRWx2cnFrd1ZjT1l1K3VjNFdkVTc2aTkxL1I5eUZRdEdZOWw1eXBEQ2dSeTNqZHQwcHBzeXZlNzgyU3VORkJLSU9EYnBNU0lKYjd4L3IxalVmVDlaL1JPc1dEaHRaR0pQVGRFbVpsYXRMRnQyUU9sak5nSUJMcTlsZTRpNlpSS05IeUZSRE9JQkxweDVtb0lRQUFDRUlEQW9BUVFDQXlLbTV0QkFBSVFnQUFFZm8rQTg0czdaOS9xQVZtZllmcjJyTUovbjFZZHhPMjFkSGQ3YzlrajJFYkxVb2JGNWNIR0RxMVpGdXNKbFBZYXplRStWNEdBRFc0dmxQUjRTVi9QR1dqSE9qbWVsRzN5aytlRU5YZlhMWGc1dWtCa0VPY2RkWFNBTzBYNGxQUXU3RGd0djdsOFc3eUhQZUJyQlVHSHZjSlQ1YlBoMnpQRU01THF5K3JmWHhtTTdYWFhqUkcxSXVXRjZiNjJNUkJOUVNCZ3c4ckpJZjFFSFhOSFFiRndZNTNIK0pRRkFySFF5RU9tcVdqNkRMU3BQNlJBd1AzYkk3eHZuSWFtcmxoY2NzZnFlL3o5ekFGdHl2YzdjN2paMVVvS0JGS0NyS1p6bURPbys0Wm9hWFhHeHFrSmRwZUYxblhqYXlNUXkySFZ0YzYyN0lFUUNIUmRLZkhyYzBSaGl4YThKN0N3NlAwRmZwdVVIU1d0UXdBQ0VJQUFCTGFNQUFLQkxadHdoZ3NCQ0VBQUFwTWk0SkQvSjRRRDFuVWRzeEhmQjlzK3RHOWJVZ2ErZnduaFgrMU5Xakx0QUFLQjVqT0lRS0E1czhVVkM0T2JQZFJLQzJGU3o1ajcxQ1hIZFc3ZVQzdU5PMVIyWDgreHgzVjhDRVVmbTRtcEhvZ3YrcnhOM3NPTE1lY1lNaFoxZnhUeXkzK2d4N1ZUdDE2dVdvV3BmM29WMHQ0NTdmOHBzcWhpYzdhNHJJUkhhODRiSnhVUzIyazI3aURwa3ptTmhUcFRFQWk0SzAzV3plcndwaW9RU0ltc3hscEhEWlpIbzZwREN3VGN1VVBDWGpiVzBTT3I2RmpQeVh6SGJOTDN1OUhrSlNxWEZBaWtuaE4zN1kwaDJsa2Y2U0lzWVB0Z0ZaSGt1cEV4TjkxYkxDS3dPWHBVMzJXZDBIcjFIdWNGSWN3Mys3NTV4L2EyYVErRVFLRGpZc200UE9jM3ozSXpqbzdvZDM5cFp3UkhZM1QweFowa3ZTRmpIRlNCQUFRZ0FBRUlRQ0FRUUNEQVVvQUFCQ0FBQVFnTVQ4QUhjWWRMZW43R3JYM29mcCtRSGlDait1OVU4V0daRFlhUHlyand1Q3BIN0JHU2JDd3FVUkFJTktlS1FLQTVzOFVWcXdZM3Iyc2ZVTm5nL1pQMnpmN2VsWTRBOHZZcTErWUJpVFpmSWVuSm1jYVIxYVo4R0djdlYwY3BTQldIdnZXNjZmb2NYeThZY1crUnVHRUpyOExVR0p2Ky9WNlMzbHR6MGFaNUR5K0c2ZDk0L3NhOHRBRXNwNTV4bVBuekcxeVRXOVY1bTcwdUxXS3hjV2svU1orTFhKd1N4WFFSM09UMnVhNWVqbmloYVU3N3FRZ0V2RzQ4VDBlMWdEUlZnVUNNN1J5aW56U2RpakVFQWpuUko3dytIRVhBRVRaU1paTyszNm14TnZsN1NZR0ErK0hmR3UrdWZwdkV6Z2lkWnVRWjRUM2VwTy9MZFc4c3lhbVJuTEtscnJUWlc1alBzNnVvVVErckRJVmZiTnU1TmRlNXZ4WnFyMHRSc2x6OWNTRWlYSSszN3FXcGJkb0RJUkRvWmNra0cya3FKclF6Z3ArUDAwUDZ0K1FOR2xUd1dZZWprWGkvYThIUkZINDdOK2crVlNFQUFRaEFBQUxqRTBBZ01QNGMwQU1JUUFBQ0VOZ3VBamE4dlMyRTZjMForV3VDeDJVYm8rWlZKTm53NzhPeW5HS2pvdk5ydnF2QUQzZ0VBamt6OEx0MXBuRElNZWNVQTU5WUV3cmJxVHQ4QU83dzVaL3VjTWp0QXlsN3F2ajV0RmQwckZ4WTViKytmUlhLM1FmZWJVdHUzayszNytmWVlnUUxGNXA2N05pUWUyaUl1dUF4eGtxYjNOSnR4OS8ydWxSSStFM3pIbDdtMUVZazRPdWRYOWJwT1d6STYrS0phV0dMaFRPUHJyenA3N3pVc1pRaDJYUDJqbkRnV3pmdmI1SDA4SmFDbTdacmFmbTZWTDd1QzZxMFByY0prVU55N2pjVmdZRDc2bmx6U09EYjVYUzh3YncyYks2MzZySFEyaFpwK3UrYlZNWVFDSmlmMTh0SEtuSEpsU013bmVyS1J1aExFOERybm9lNWZyLzdXbCtsQlFMKzVwKzRKdVhaYXYvZkora3gxZStGN3pZY21MOUo5d2ozU08yYkhpTHByUTNiWCtaandadUZERjlwMk1aeWRYc2tIeHdpSjZ4THE3SmMxK2xYYktTOHBNUDlTbHk2YlhzZ0JBSWxWdEg2TnB1S0JOeUtoUUtPSnVNb1VtM09OUlk5OGJ2SzN3bWZienkwRWdmWThXSlJwdkRiZWJoWjRFNFFnQUFFSUFDQkhnZ2dFT2dCSWsxQUFBSVFnQUFFTWdqNG9PbXZnM2RKeXZEbTV2b0srK3h2dmNNZE85emVEVFA2NlNxZktlQ0JnMEFnRS83RURqazJUU0N3UEFzMk5qZ0h1OWVteFFUT3cxNW51UEJ6ZE0zZ3hlOURZSXNEbGcra1lyUDd0Q3JrcGIzdXVwUW1lVDhYOTFrWVV5eUlzTEgzTzJzRUVUdUVGQ2QvR2NKRUx4dHlVLzN0RWhVaDFYWmZmNytwcERNbFhXMU5nMDJOdUgzMWFjaDIvSzE1Y1lnTTBQUys5dlMzSWNqRzRyTXE0Y2dQSlAyL05ZMTRiVHFTaHYvNXdOYmZtd01sT1NUenVwSVNDTVRtek8wNWhjYmRnNUNoNlpqNnFwL0sxKzM3TkJHZlRFa2c0TDduR0h0WFdhYm10Uy8yVGRxSlJYdVlZbitiaksydTdsZ0NnZHh2Vkk2WGRlcDU4TmpuOVAzdVkxN2RSbW1CZ085aEViT04zVEh2ZnRmejk4R0dQa2RMdVNneFFQLytjUVFrNzROdW5RSERBakFMeTVxbU1sakh4NzluanBaMGFnUGp2Y1hWOXc5UjNtSXBFQlpEOFhmUjBUSCtiOGJZaHE2eWJYdWdiUkFJbEY1RC96dWNWK1RjeDRJZk94V2tCRFRyMnZMdkx3c0Z6Z2kvdi93ZVdTZEs5Wng2RDMrVElMeDBtaWRITjd0Q1RRY1JDT1RNSEhVZ0FBRUlRQUFDU3dRUUNMQWNJQUFCQ0VBQUF1VUo3QjRPMFJ6bU1hZllLR012M20vbFZNNnNZMk9td3p2Yjg3SHVSL1Z5VXo2WTZ6TjN1My9jNXhwVU00ZlVxZHJqdy9oV0d6bW44bkN3NTFJWHo0Wk9IVnU2K01jWm5uWjkzYXV1blUwV0NOU04rWWNyM0hldG5wc2NVYys2OXZyTTJkczA3MmZKdFdIUndTTWJITGlYN0V1czdaajNjTk13OEdPTm9ldDliWnh4Nm9BbTZRYTYzak4yZmNvdys3ZVNYaEpwWUFwaDRWTkdDSGUvU2ZxS2xFRjA2QVB2WEdQdjhqU2w1clhrbXFwck81YXFvc244ak5IM3R2Y2NTeURnL3U0UlFramZLTko1QzlXY1lzVDUydXRLNm5tSXNabnE5N3Z0ZkM1Zk40UkF3UGR6bEFkSGNjbmQ5MWhzWjFHQmhXVExIdlFXR1ZoOGFFRlhibHVPdEdTam85dHNXbEw3MWU4SFkrVEhKZm0vbDhzZmhuVVpFN2V0NjQvRkFSWVRPSHJHRk11MjdZRlMzK1p2QkpHSzMwTlRMVjNlZjMyTXFZbEF3UGV6WU5MbkZ0Zm80K1k5dERIMGZxbUhMdE1FQkNBQUFRaEFZRndDQ0FURzVjL2RJUUFCQ0VCZ3N3azBDVTlwRWpiSzI5dllocXN1b1oxalZLM0F0M2ZPdnBub0hRN3dFWlZYcUEvVU5xblVHYUU4em50T3dEQS9GZGFwQTllcEhzU01mY0RtK1hONFhLZnM2Rk5zWWk5dEcrZnRwVDFXbVlzNElPWTlmSGxJKzNEMldCQUh2cTkvOC9sWmR0cUpOcDVlZlhZM1praTJDTWFHVzN1YjFwV3BDRHVlSU9sVmtYN2FjR1JQL005bndFdTlyOFo0ejE0ckdIdjN5ZWkvcTB4TklHQkJvc09NMitDM3JqU0o4SkNKWUJMVnhoUUlHTUFoVmJTcUV4SWtVaDdpcWVkaENOQWx2dDlkK3oyVVFNRDlkS1FrZXdibkNJcTdqbXR4L2Rja09aMVNHM0dBMjBqdFYvdnE1Nklkdi9NY1Rlb0RmVGZjVTN2YnVBZENJTkI5OFRRVkNQaU9qanppYUFEMjdCKzdqTEZmR252TTNCOENFSUFBQkNEUWlRQUNnVTc0dUJnQ0VJQUFCQ0JRUzhCUkEzd0llcWRNUmc2RDZZUFZyMmJXNzFMTm5qeC9FNklKNUhyMUhGY0pHSTRJcVErNjNIc3ExeUlReUp1SjFJSHJWQTlpeGpZd1BEdDRiRGNOa1pzekt6YWlIbDhaSHUrWFU3bm5Pc2VHOThCbFBiZGJvcmx0OUI1T2NXejZYVXExMStidk1VT3lVMXc0RkhUZGIxU25GemhnSXQ2YU41YjB5WkJhb1k1RGJvNzcxUHRxclBlc294N1p5SjVqSkp5YVFDQ1dCbUlLVVNqYVBEczUxNHd0RUxDQjd1Umc2SzNycjlNREhCUzhUdGZWU1QwUE9SeTYxQ241L2U3U3J5RUZBdTZudythL2N5RFBZRWNnOEcrZzczWUFsTnF2ZG1qNjl5NzlaaEJSK0xmYlZNczI3b0VRQ0hSZmpXMEVBcjZyUlhtSGg5UWMzWHZSdm9XeDlrdnRlOHlWRUlBQUJDQUFnWkVKSUJBWWVRSzRQUVFnQUFFSWJCd0IvMEIrWXNqTm1XTjg5MEdwRGUvTzV6MjAwYzJLLzdlRjhJQTVFK0VEc1lkSitsaklBNTF6elZUcklCREltNW5VZ2V0VUQySnVHSEtuMjRnM1pCa3E0b2Fqa3pnTnljc2FoTzd0d3VIQ1NyejBvR0NZdFpGMjZtVmJ2WWR6NXNWcngxNlAvdVpjTStlQ251dDhLWGg2K2xsWkx2NWRhbzk4cit1NjRweTFGZ2c0alBqWTVVckJVOXBHbUs3OVRSbEV4M3JQZW95ZUUwZENTWlVwQ1FSU2F5bFh1SkVhOHhUL1ByWkF3RXdjT2NNaDE2OGNBZVJROGpaQXI0WjY5eVdiL3YxdXUyNkdGZ2k0bjBPSXlwNHI2ZWdlZmdPbDlxdHR1YTllWjA5cHZ4TXY3cXZCQXUxczZ4NElnVUQzeGRSV0lMQzRzeU1Wdmlta2N1amVtMll0V0pUOTBKQWlwZG1WMUlZQUJDQUFBUWhzTVFFRUFsczgrUXdkQWhDQUFBUjZKM0N6NEcyemQyYkwveWpwd1pXeDVvdVo5VXRVczdIb3J5Vzlyb0doMFljSEZrSDhxRVNIQm1vVGdVQWU2TlNCNjFpR3E1emUrNERVdVdHZkV3d09PZGUwcmVPOHBsNVRKNFZVSVczYmFYcWREKzlmR0lRN1RhL05xVy9Sa25QWU9xeDduNmtTY3U3ZHBjNjJlZzgzWVdZQm04TklIem5BOCtGK25SUEVjRTdqc2k2Rnp2V3JpRHRuU3RvdE1vaWpRaHROeGxteXJqM3MzeHU1Z2NVMHpyOTlTcUlUVXhVSXVOdDdTanBOMGw2Sk1VeEpJQkJiUzAxU1A1UmNPNlhhbm9KQXdHZE1qalp6V0dLUWZ2ZjQrN3hPZExZTjMrK21hMkFNZ1lENzZOOEovbGJZaUgvZHBwMk8xSGQwa21kSStrcFBiVG8xalNQUVhMV245bGFiOFRmTTBkYytQUU9SOUxidWdSQUlkRi84WFFVQzdvRy9BWDhhSXFuZHRYdVhraTM4VzVVKzYzK0Y2R3B6K3EyU0hCZ1ZJQUFCQ0VBQUFrTVFRQ0F3QkdYdUFRRUlRQUFDbTA3QWgxRXZrdVNjeERsbHpLZ0JkZjFyNmlWa2NZREZEYzY5T1FlUDR0VnhJeERJV2FucG5LNVRGZ2dzajlDNVdPOVpIVVE3Ny9SK0RjUXdNVW8yTkRuOHJvM25Gdm1zTTNybVVlNWU2K3BCSlBDNG5veTk5djU4WlRCc2xraVQwSDNFOVMxc3MvZHdHNjdtWmVQdjQ4UHo0ZHp6ZlJSLzU3eU9uQTdEUnB0TEVvMzZlK0s4MzNYbGNrbTNyM0xLbjkxSDUzcHFJNWJqZVhFTHB4cDZlT0k3T1dXQmdNZHhzS1MzUjFJL3VNNlVCQUxlaXpueXdicnlEa2tQa2ZUTG50YkExSnFaZ2tEQVRCeWh5bUhqYnhBQjVEWGpLQUxuSmlCdSt2YzdkdzJOSlJCWTlNOUNnZjJEVWQvcFlOb1U3NXZlTE9ubGtoeVZyTzl5bFNBTTlkNzB2L1RRdVBjL0p3WnhoS1Bmek9IM3pqYnZnUkFJZEYvMGZRZ0VsbnZoM3lkT2lXYkhnbjI2ZCs4M0xWaFk1SGZKdXlSZE1KTm5zOGZoMHhRRUlBQUJDRUNnUHdJSUJQcGpTVXNRZ0FBRUlMQjlCT3lCNlZETnIybmdzZUo4bFE3VFAyYlVnTHFaYWhPMmZBNmhOdGVORjRIQTlqMnZpeEY3Lzd0TDhHNjVReFdLMGhFL2JsR0ZYTjg1L0ZzbFkyOFVoNUw5cXFSL0NDazJQbGVGUXYvQlJBK2tmRUI2NnhDSy9jL0QrSzVUazBmY1kvRFliS0R4UDN0M2U1eHpFd1VzejlrMmV3LzM4VlJmVGRKL3JkYUNuNDNiVkdsby9pUThMemE4ckN2ZkNhR2hIZjdmdWQwL0pjblJjYWI2ZlBUQmlEYW1TK0NQcTdSSkg1WmtiK0xWa2h2UllicWpvMmViL3YyZXl3enZJTWxSMCs1UmliWU9ES2tJVnZjWlRnWGpmL2E4dDBqTSs0c2hEWG5lQzNsdnQvd3QyelVpRVBXK3g2SUZmOHRPRHdLM3I0OHMvbXl6SHRnRHRhSEdOVU1ROEh2alJrR29iYkdSbjgrZEl1bXUvUDY0TlB3dThibkpXVldLS3YvKzhuTTU1OThwUTdEbUhoQ0FBQVFnQUlGc0FnZ0VzbEZSRVFJUWdBQUVJUEFiQXY1KytzRHBEUTI4ZGYxRDlsbkJxODFodTZkY2JCQ3lKK2UrbVoyY1d6U0JXTzVvSDJEYTA5d0hFaFFJUUdCK0JMYlplM2grczBXUElkQXZBWWN6L21CTnRBT0xvR3pNVEVXejZMZEh0QVlCQ0VCZ09BTHNnWVpqelowZ0FBRUlRQUFDRUlEQTdBa2dFSmo5RkRJQUNFQUFBaEFZbUlCRFZqclBuWE1QNXhhSFdYWFVnRy9sWGpDQmVzNy9lbmgxeVA3OEJuMXhXRUtIRUxSZ1lNckZub1gyRHRweFRTZmZKdW1RaVhxR1Q1a3BmWVBBRkFqZ1BUeUZXYUFQRUJpSFFFejg1eDU1ZjNMY09GM2pyaENBQUFTS0UyQVBWQnd4TjRBQUJDQUFBUWhBQUFLYlJRQ0J3R2JOSjZPQkFBUWdBSUZ5QkJ3Njh6bVNIdHZnRmphVXU3N3o0NDJabjd4QmwzK3ZxcU1JT1Bmd0RUTWJjWGpPdndwaEFETXZhVlhOWG9MT0oyOVBRSHNGL2p5RXQ3NG90R2JlL3U4RmQ2ZFA4QnphK1Avc0duR0FMejJxQ2x0NFJLc2VjUkVFSURBMkFieUh4NTRCN2crQjhRamNWTktaVlg1enA4bFlMZCtXZER0SjU0L1hQZTRNQVFoQW9DZ0I5a0JGOGRJNEJDQUFBUWhBQUFJUTJEd0NDQVEyYjA0WkVRUWdBQUVJbENGd3k1RFhkdDNCODdvNzJrdk5odWFwZTlQbjBMcHFTSTN3MEl6S3prZTlYMldJUHkramJwY3FGaTQ0SFlBakhmUlZuSi80Z0pCM3RLODJhUWNDRUJpR0FON0R3M0RtTGhDWUtvSG5WZEYvbmx2VHVWZUhDQUwremxNZ0FBRUliQm9COWtDYk5xT01Cd0lRZ0FBRUlBQUJDQXhBQUlIQUFKQzVCUVFnQUFFSWJBeUIrNFpvQUZlSWpPZ3pJWjNBRnpkbTFMOGVpUGNNQjB0NlU4VDcvdDhsUFVEU1NRT01mWGRKNTBqYXJjZDdrWis0UjVnMEJZR0JDZUE5UERCd2JnZUJDUkc0dHFRekpPMjlwaytYVjMrN3ZhU3pKOVJmdWdJQkNFQ2dUd0xzZ2Zxa1NWc1FnQUFFSUFBQkNFQmdTd2dnRU5pU2lXYVlFSUFBQkNEUUN3Ri9Odyt2dk5aZnVxYTFUVWdua0FQcGVwTGVWa1ZUK0lzMWxmOVcwdEdWQjk4UUhubzdTZnBnNWUxLzI1eE9aOVN4dU1HaE9VL0xxRXNWQ0VCZ2VnVHdIcDdlbk5BakNBeEZ3S21ObkE1cFhmbXdwSU1rWFRaVVo3Z1BCQ0FBZ1lFSnNBY2FHRGkzZ3dBRUlBQUJDRUFBQXB0QUFJSEFKc3dpWTRBQUJDQUFnU0VKL0NkSkowdTZ5OUpOTnltZFFBNUxoL1czVU9MNVM1WGZLT25RS3EzQ0wzSWE2S0dPUTJtK1E1S2pPblF0N3ZPREpiMTdJSEZEMS81eVBRUWc4THNFZHBaMHFxUmJyQUdEOXpDckJRS2JUU0MxSDNoZzJDOXNOZ1ZHQndFSWJDc0I5a0RiT3ZPTUd3SVFnQUFFSUFBQkNIUWtnRUNnSTBBdWh3QUVJQUNCclNSZ0wvcVBWdmxzTDlyUWRBSTVrK285eEoxRE5JRXZTZnJ2a2k3SnViREhPc2RMZWtUSDlrNlI5TlFxTmNLbXBZVG9pSVhMSVRBckFvNys0WWdpNjM3YjREMDhxNm1rc3hCb1RDQVdXdnZMSWIzQTl4cTN5Z1VRZ0FBRTVrR0FQZEE4NW9sZVFnQUNFSUFBQkNBQWdja1JRQ0F3dVNtaFF4Q0FBQVFnTUJNQ3puZDdvYVJmemFTL3BicDVIVWxYbFBTdFVqZUl0SHUzRURaNHRZcjc4OThrN2JMeWg1OUtPbGVTRFFVZmszVFdDS0tHRVRCeFN3aHNOQUY3RDU4Z3lTSEcxNVhIU25yOVJoTmdjQkRZYmdLeDBOcXZrdlNrN2NiRDZDRUFnUTBtd0I1b2d5ZVhvVUVBQWhDQUFBUWdBSUhTQkJBSWxDWk0reENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUlFSkVFQWdNSUZKb0FzUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQ0IwZ1FRQ0pRbVRQc1FnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCQ1JCQUlEQ0JTYUFMRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdkSUVFQWlVSmt6N0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFnUWtRUUNBd2dVbWdDeENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUlIU0JCQUlsQ1pNK3hDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FJRUpFRUFnTUlGSm9Bc1FnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCMGdRUUNKUW1UUHNRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFDQkNSQkFJRENCU2FBTEVJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFnZElFRUFpVUprejdFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ1FrUVFDQXdnVW1nQ3hDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FJSFNCQkFJbENaTSt4Q0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBSUVKRUVBZ01JRkpvQXNRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFDQjBnUVFDSlFtVFBzUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQ0JDUkJBSURDQlNhQUxFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ2RJRUVBaVVKa3o3RUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdRa1FRQ0F3Z1VtZ0N4Q0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBSUhTQkJBSWxDWk0reENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUlFSkVFQWdNSUZKb0FzUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQ0IwZ1FRQ0pRbVRQc1FnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCQ1JCQUlEQ0JTYUFMRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdkSUVFQWlVSmt6N0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFnUWtRUUNBd2dVbWdDeENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUlIU0JCQUlsQ1pNK3hDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FJRUpFRUFnTUlGSm9Bc1FnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCMGdUK1A1RmxOb2ZXNXNjUUFBQUFBRWxGVGtTdVFtQ0MiLz48L3N3aXRjaD48L2c+PC9nPjwvZz48ZyBkYXRhLWNlbGwtaWQ9ImU2Ij48Zz48cGF0aCBkPSJNIDM3MyA1NjggTCAzNzMgNjQ3Ljc2IiBmaWxsPSJub25lIiBzdHJva2U9IiMyODY0OTQiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBwb2ludGVyLWV2ZW50cz0ic3Ryb2tlIiBzdHlsZT0ic3Ryb2tlOiBsaWdodC1kYXJrKHJnYig0MCwgMTAwLCAxNDgpLCByZ2IoMTE1LCAxNjcsIDIwOCkpOyIvPjxwYXRoIGQ9Ik0gMzczIDY1NS43NiBMIDM2OSA2NDcuNzYgTCAzNzcgNjQ3Ljc2IFoiIGZpbGw9IiMyODY0OTQiIHN0cm9rZT0iIzI4NjQ5NCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIHBvaW50ZXItZXZlbnRzPSJhbGwiIHN0eWxlPSJmaWxsOiBsaWdodC1kYXJrKHJnYig0MCwgMTAwLCAxNDgpLCByZ2IoMTE1LCAxNjcsIDIwOCkpOyBzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7Ii8+PC9nPjwvZz48ZyBkYXRhLWNlbGwtaWQ9ImU3Ij48Zz48cGF0aCBkPSJNIDExMzMgNTY4IEwgMTEzMyA2NDcuNzYiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzI4NjQ5NCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIHBvaW50ZXItZXZlbnRzPSJzdHJva2UiIHN0eWxlPSJzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7Ii8+PHBhdGggZD0iTSAxMTMzIDY1NS43NiBMIDExMjkgNjQ3Ljc2IEwgMTEzNyA2NDcuNzYgWiIgZmlsbD0iIzI4NjQ5NCIgc3Ryb2tlPSIjMjg2NDk0IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgcG9pbnRlci1ldmVudHM9ImFsbCIgc3R5bGU9ImZpbGw6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7IHN0cm9rZTogbGlnaHQtZGFyayhyZ2IoNDAsIDEwMCwgMTQ4KSwgcmdiKDExNSwgMTY3LCAyMDgpKTsiLz48L2c+PC9nPjxnIGRhdGEtY2VsbC1pZD0ibGVnZW5kIj48Zz48cmVjdCB4PSIxMyIgeT0iODAzIiB3aWR0aD0iMTQ4MCIgaGVpZ2h0PSI1NSIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSJub25lIiBwb2ludGVyLWV2ZW50cz0iYWxsIiBzdHlsZT0iZmlsbDogbGlnaHQtZGFyayhyZ2IoMjU1LCAyNTUsIDI1NSksIHJnYigxOCwgMTgsIDE4KSk7Ii8+PC9nPjxnPjxnPjxzd2l0Y2g+PGZvcmVpZ25PYmplY3Qgc3R5bGU9Im92ZXJmbG93OiB2aXNpYmxlOyB0ZXh0LWFsaWduOiBsZWZ0OyIgcG9pbnRlci1ldmVudHM9Im5vbmUiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHJlcXVpcmVkRmVhdHVyZXM9Imh0dHA6Ly93d3cudzMub3JnL1RSL1NWRzExL2ZlYXR1cmUjRXh0ZW5zaWJpbGl0eSI+PGRpdiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiB1bnNhZmUgY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IHVuc2FmZSBjZW50ZXI7IHdpZHRoOiAxNDU0cHg7IGhlaWdodDogMXB4OyBwYWRkaW5nLXRvcDogODMxcHg7IG1hcmdpbi1sZWZ0OiAyNnB4OyI+PGRpdiBzdHlsZT0iYm94LXNpemluZzogYm9yZGVyLWJveDsgZm9udC1zaXplOiAwOyB0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiAjMDAwMDAwOyAiPjxkaXYgc3R5bGU9ImRpc3BsYXk6IGlubGluZS1ibG9jazsgZm9udC1zaXplOiAxOHB4OyBmb250LWZhbWlseTogJnF1b3Q7TWljcm9zb2Z0IFlhSGVpJnF1b3Q7OyBjb2xvcjogbGlnaHQtZGFyaygjMDAwMDAwLCAjZmZmZmZmKTsgbGluZS1oZWlnaHQ6IDEuMjsgcG9pbnRlci1ldmVudHM6IGFsbDsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd29yZC13cmFwOiBub3JtYWw7ICI+5a6e57q/77ya6LCD55SoIC8gSS9PIOi3r+W+hOOAgOOAgOeBsOiJsuiZmue6v++8mumFjee9ruS+nei1luOAgOOAgFRUTCDliLDmnJ8g4oaSIOmalOemu+aguOafpe+8m+i/nuaOpeehruiupOmAgOWHuuWQjuaJjeS6pOaOpTwvZGl2PjwvZGl2PjwvZGl2PjwvZm9yZWlnbk9iamVjdD48aW1hZ2UgeD0iMjYiIHk9IjgyMC41IiB3aWR0aD0iMTQ1NCIgaGVpZ2h0PSIyNi41IiB4bGluazpocmVmPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBRnJnQUFBQnFDQVlBQUFCSmhwVnJBQUFBQVhOU1IwSUFyczRjNlFBQUlBQkpSRUZVZUY3c3ZRbjhSOVc0Ly92OGNZMDNaTDRuc3lMS2RLN01DaUhoSHFlSVNISmtPSVk0SWZkUVJ6aW1WRElVbWJyK3B6S1dib1ZLcVM0eVQwY3lUOGxVaE1qUjZmQS9kNzlaVzd2VldudXZ0ZmZhdy9mMy9helhLK1gzWFhzTjc3WDIybXQ2UHMvL01BVVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUnlDRHdQekxpS3FvSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJbUFTdTFRbEVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFTeUNFamdPZ3VYSW91QUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDRWpnV24xQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVFnaTRBRXJyTndLYklJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUVydFVIUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVzZ2hJNERvTGx5S0xnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWc0QXRjMHMvODBzeitKaUFpSWdBaUlnQWlJZ0FnNEFsYzJNK1lJdjF0aEl2ZHc1Zi82Q3RkQlJSY0JFZGdZQk81alp0Y3pzMCtaMllVYm8wcXFSVUVDLzV1WmNlL3Iwb0pwS2lrUkVBRVJXQm9CMWhlM01yUHZtZGwvTDYxd0tvOElpSUFJaUlBSWlJQUlpSUFJaUVDUXdMWE03SVptOWtQeEtVS0EvWjhyNlY1R0VaWktaSDBJc0hlNmlabjlXdnNKNjlQb0k5U1VmblFkMTQ5ME4yNEV3RXBTQkVSQUJFU2dHSUdybTlrbHhWSlRRaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJd2dJQUVyZ2ZBMDZNaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaWtFRUFRODY5ek94Mlp2WTBNL3V2akdlWEZ2VXFabmFrbVcxdlpnZVoyVHRIRUZ6YjBjeDJDbFQ4eldiMmxSWWdHQmh0Wm1ibnlsQnRhZDFHNVJFQkVSQUJFVmdEQXZjenMxUE03RnVWNGZqQlpuYWNtZjEraGVwOUl6TTczY3h1YTJiN21kbWJ6T3dQSzFSK0ZWVUVsazZBZCt4WU03dUZWOUJqek94NVN5Lzh4T1dyeDZPdFhMNFhtTmxKanQvSHpleWlpY3V6cXRuOW4yWUdMNXd2Tk1NL205a0JxMW9wVis1ZHpld29NenZhMWVVYmhkZkF0Nno2MmQ1VjJ0ZndPSDNXN1FHMDRlTWRwOC9xRzdyaW5VekZGNEVXQW5jeE04YllENW5aK1NPUnVvT1p2Y3Zsd3g3aENTUGxNMGF5N0FPelgzcnZSdUsvTWJQZHpPenNNVEtzMWk3WGQrdXY2NXJaYVdaMnFwbDkwY3grVWZqN01GTHhsYXdJaUlBSWlFQ0V3SVBNN0lqQWI2OHlzOE5GVFFSRVFBUVdSb0E1NlF2ZG5Ram12OXVhMlhjWFZzYlU0ckRtZWFZWCtUdnV6R0JLNGJoNlhjUlp5MnZXWUc3L2Y3dDZiclI5dk5SK3AzamxDUHlkbVIxdlp2L0x6TDVnWmllYjJZZk5ET2UyRjVmTHBuaEszSGZDNlNXaTluVkFXQmtIbUZNS0xIT3Y3ZFZtZHV2S0FlZEQzRjV2OGNxdVFJTE5NZWxIWnZaSmR3N09mdGl2VnFEOEtxSUlpSUFJckNNQjlzYzVCK1o3Mmd4enpPV240Rjkvcys5VmZhZllRenBuaWt3TDU2SDVUMkdnU2s0RVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRTVpWWdnZXU1VzBENWk0QUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWJIUUNWNjZNcEI3akRNMnY3U3FMRWN5QksyeUF1SFVsYnYwSk0rTkNlQjB3Q1B0WE0wUHNxb1JoRlFKM0NHUDZBVU8wRXlPZGhzdk9HRm54TEliOVhGYi83VWJ2WUN0UXY1dVoyYzlYWE5SOUJUQ3JpQ0lnQWlJd080SGFBUWFDbTNYQWNCeEIxbWM1NXhPekY3S2xBSnlkTTNkQUlLZ08zelN6eDVyWlY1ZGNjSlZOQkZhSXdQOWhacCtweExsdTdwWDUzOHhzanhXcXg5aEZaVHg2dVJQYTkvTzYxQm1uc2g1VDZDYXdVUVd1RVoxRzJHaUhCb0x2bWRrcnpPd0RoWnhMM05tdCt6ZkpmRjhmYm1idk43TnZPeUZYUkdNVVJFQUVOaDZCVjVyWmkxMjFmdW9FOXhHajV0MGZ1aS9JR01kMzhBVU5iSWhQUEhnRjFoUjFrZjkzSi82OVhhTU8vK0VFL2hDZEhpT3dEbnVQbC9CL205bkRuSkRYR0hrcVRSRVFBUkVRZ2ZFSi9GOFJKdys1VG50Q1RtVlRuTmZFYXZnL3pleUozbys1WlJxZm5uSVFBUkdZaXNDdEtoSFpsNWpaazd3TTJhUEF5Y3NxT3Y0T2piLy9YeVdVKzRpSnhIRlpGKzFqWmk5elREbHI0YzRKemdNM2NwREE5Y1p0WGU1Tklkak91ZHZZWXdMNzZ6Z0k4Y2NrNkI3bVJQaFpMeTh4aFBhekVWYStwNW45Yk9RQ3crM3UxVDJ3MTd2ODZ1eldkWTdIUFNlY0ltL3VjVWZjbXZGNGljNGRwM3pQUXQweHRuWnB1K2MzY3JmK2EvSlhkV1BQVXQvOXFUak1rYzhkbmFQVzVoMVR5dkVwTTl1ejBIbldIUFZTbnNzbEVMdVBNT1ZjZm13NmZMTjV0dzV5NXlaMWZrditSclV4MGZ4bjdCNmo5RVZBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJnWWdJU3VKNFl1TElUQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkZZR3dMc3Z6N0FHVWh0NmRYNk4wNkk2bk1yU3VPbGxUajMvb0d5djdNU012N0hTb2p0andYcWxXdjRBbStNUEE5bzVIMmVNMW83WTRYRnhBdWduQzBKaktlZWJXYXZNelA2QnVLbVl4c3J6bFpaWlN3Q0lpQUNJbUFoQnhoZ1FTd0hBYzZMRnM3b0hzNVErWnFCY2o3S3pENjQ4UEtyZUNLd0NnUmlCcVZ2TXJQbnJFSUZKaXJqL2N6c3RFcHdINE43UHlCZ2pHQ1FqUERUR21PakNsemZ5OHpPRFBTUjc1clpBeXRSQU5iQ1EwTWZRWG9FVUU1cE9NTkNmR2xmTTN2RFFnVS9oakxTOHlLd3JnUkM0czJ3K0lpWk1XKytaQUNZNjdsMG1Kdjc0V011L2FXdkt5ajMxQUxYMTNlT2hiYnhvRzBrMFk0QjNVcVBpb0FJaU1CS0V5Z2xjQjBTREIzaWJFb0MxeXZkclZSNEVTaEtBQWZVYjRzSXliSi85ZWdWM1Z1ZlUrQ2EvWlYzbTlsdHZKWmE5VHNtS1IxUEF0Y3BsRll2emszTkRLZFkyMWQ3aExUeGdTUHZiMjlXaVQyZVpXYTM4RkJ4ajRrN1hKOWNNTUk1QlI1amV3dS9yUGFpNzI5bTV5eVlXK21peFp5UXN0LzlVRE03dFhTR0JkSzdscGtkNnB6SnNpZi8yZ0pPNkhLTGxYdlBMemY5UHZHWnAveVRtYjJ3Y21pOXMzUHEyU2NkUGRPZlFPeWNUdnVXL1pubVBzbDd3TDc3N2MyTWJ5Ujc3emlkUU1ULzFTTi9rM1BMV2lMK09naGNQOFBNM2h5QnhXK0hsd0E1WVJxYS8wd0lXMW1KZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJd0JRRUpIQTlCV1hsSVFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpc0s0RUVIVjV2NWxkS1FEZ0UyYUdjY2NxaUxJMGkzOHpkOEY5YzY5Ty8xSDlmZHVxVGw4czFOaTVoaTl0ckJITWUxRWxnUDM3UW1WVE10MEVybUZtcjZ6Njk5Nk5xRytYeUhVM09NVVFBUkVRZ1JVbHdMa3ozMXVjR2ZqaGNXYjIzb1hYNnpwbWRxd3pydmVMdXFwenRvVWpWL0hXbEVETW9QU2ZQVWMxYTRybno5V09pVWp3MitjcnB3RTdtdG1GNnd3b3MrNGJVZUQ2S3M0d2VjOEFpNUx2VXE3QU5ZSXhDSHRzRVNnWGZmY0padmJ0elBaVGRCRVlrd0RqNlU1alpyQ0F0UDlnWm9kVVFuTS9MRndXaERBUWcwSVVveGx3ZXZmV0FubTE3ZkVobU05ZTA5SWRQVXd0Y00wWWU2VEhmcFhGQkF0MEl5VWhBaUlnQWh1R3dFWVR1STZ0MFVvMm1JVFNTdEpjZmxvbDUvVTRhc1JoTCtGQlpuYkU4cXYvNXhJKzJUbEttN080M0J2NGVMVWVZQy9CRHdpaTRvenJnamtMMkNQdk9RV3V1L1pZTnZMK29BU3VlM1RXQlQrQ1EvUTkzRjRtNHBvRTdoVXhKakRtamhYK3pzeU9EeVMrQ2c1NTV4UjRCQmtDd01lWW1XOXZ6UGVSZlI5RXd0Y2hiT1VjVE43QXF5eEM3VStybkRyKzE4SWczTVRNanZMT3VWODhnOGgxN2oyL3NUSGUxbkdwSGNKOXB4Sy9mN0NabmRzejQrdFdqdjA0Zy9IM1JIc21OL2d4eEcyL01qaVY4Uk9Rd1BXNGpLOWVPWm5kMUowdmIybG10Njc2UFhQek81a1pEaWFZbjRmdUxWT3FqZXJBWUIwRXJ0dnVFL3pNM2VIR0tmS3FCTTEvVnFXbFZFNFJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJTQ1FnZ2V0RVVJb21BaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBajBJWUtSMW1KazlOZkxzSzh6c0pTc2d5dElzL3JPZGdLVmZKZXE1VjhHNjVCcStiT2VFWEJEZ0RvVnZtdGxqSzRPc3IvWm9SejJTUndCakhzU3NNWDd6UTQ3SU5VWVk5S21RUUZwZWlhYUpmWnlabmRRaks0VHA3dEhqdVZWNnBDa0tzRXJsVmxsWGt3REcwaGp6SUxTUDBkYlZHdFg0a1ptZFoyYS9NN09MVjdONlZ5ZzF4c1FZcUk0Uk1HQitYbUxDTVFHTFZSQmo1Y3djWTlSWEJlbzZoYUY5SW1KRkU0RU5RUUNqMnJNcVFRdU03WnVocENqdktvTmlQSHA1SlJLeG44YWpZczI0RVFXdXQ2NkVLbkMrZ0poQ003RG12YitablYrSVhxN0FOZTgxd3JZSXlJUUNvaC9NVy82bm1mMnBVQm1WekdVRUVCeEdlR1ZKQVhFRVJKQloyMy9Jek5pM0dTdjBjYm9XRXMwYXEzeHpwZHVIUzBwWmQzUGlNTTI0djZwRTllNWI3YjE5SXlXQmpqaDhEL2VKT0wvNFgyYjJHT2VjcGtCV295VXhwY0Qxalp3elFuOE1rTGpuYU0ycmhFVkFCR1ltc0FybkJuM1BDa0pvSlhDZDMrSDBEY3hudHNwUGxKelgvNXNUWW9WSDdOMWJJaXZXNFNjdW9HQ3MrZDhTS2NjcTNvbVlVK0FhakFod25od1JKTXc1YjE5QTE4Z3FnZ1N1czNBdE9qSk8raGdUbmhJbzVWQ1IyYmFLa3k4T29IWU5ST0x1eWFHTHBtWTJ0OEFqZDl5T05yTmRQRTZYT3VjUDdFdHY5QkJ6TUxsVUlWajJoVDlZT1p0RzJOWVBqS2tIRnJ6SDE5WDJ1ZmY4dXRMcit6dHQrSnhxWC9vMVpsYUw2OWRwZmN6TWNLNTNVWS9FWTJjbVBaSXE4c2hTNW9CZGxaSEFkUmVoSy83TytSLzNuZGhqWnMrWFBuMUhKMWJOV1R2aTdmeUdzUFhROEFFelk3OS9hY0w5UStxMURnTFg4R2xiTDZ5YVl3ck5mNGIwZUQwckFpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0Fnc2tJSUhyQlRhS2lpUUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lyQ2hDTnpDekU2TmlQU3VtaEZRVERCbERFT2VQb1l2S1lKYUwzQ2k0eExVR3U4MXUxWWxXbmk0bVQwaGtnVy9ZVXpVWlJ3UkVnTWFyOVREVSs0cnpJakEyeE9IWjcvb0ZKcWlBSXN1YUVMaE1CeEN0T3NHZ2JqZnJ3VDl2cFNRUnFrb0NLUEhSUDAvWFRsWCtFbXBqSHFrRXlzYmdvdWZLaXhxZUdNemU0UVRuTmcydzRpTE1ZajJ3bURyV0RNN2QwTGp6aDVJbzQrVUZQRHdNMGw5ZDlzRVdYY1BpTitWckgrSnRPNVh2ZGVuVlFMWFZ3MGtobmc0eHEvLzNmaHRxZDhuaWZlVTZBMUtZMndDRzFGc3VDUXpqT3JmSHhHdW1WcUlvR1M5NWt3cjF1ZStPUEc4RGVGWHZpZS9HUWlEYis0aFp2YmNRRHJQY091d2dWbjg5ZkZjZ1dzZVJDeGk3OHJCeUtzai9aZzR6TDBRdllLSlFqa0NZODRKKzVheW5wdnd2QVN1KzFJYzl0d1lBdGN4b2FoVHpHd25NL3ZEc0NMLzllbnJ1SFhhOW9IMGZsWUpPclAyKzI2aHZNWklaa3FCNjlEN3ovcmwwVTdnYUl6NktVMFJLRUVBSjRtc3gzMnhxUkpwRDAzRDMxZGJvaU1KNnZqN3lzSEptUjFqNzVMM0QvdTIwMUwzWlpyMTZYdFdFR0lpZ2V2OG5xSTlzbnhtcS94RXliV1FCSzZIOVFUbThBaHQ4MzMzd3hoM0NZYVZ0dnZwdVFXdTJ4eHpVdnJTKzBEZFJLYUpJWUhyYVRoUGxjdGRuVU1tMzFFZitYT0hDb2ZwcFIwUzM4bzVCOXpNcXlUbjVveFBQNWlxOGozem1WdmdrV0xmeTYwei9ITlQ5dmR3T2xacTc2Y25vdEVmaXdtR0x0Vlp3OTJyTm1OZkx2U2VBV3ZLczZVKzkvekdhdEMyODdhK2JTbUI2MzZ0dFk0QzE3VkFOY1N1WEozOTNzSE1ydTN3Y2ZmMkx1Ni9tVC9memUyTmxSS3N6bTBsSEVvKzFIMlhjNTlkYXZ4MUViaG1UL1Z0WnZha1FFT3MycDEwelgrVytqYXBYQ0lnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUxRazRBRXJudUMwMk1pSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpa0VHZ3pYRGk4MmEybzVsZG1KSGVYRkYzTmJQM0JESi9neE94YW9vL0RpMGpBckpubUJuQ09jM1FKUXdnUWEyaDVNczgzeVpFUkE0SG05bUxPa1N1VjBHb0lxZHZ4c2hLNExwTW41c3FsYTJkVWF4dklNajQ5ekF6TzNtcWdwaFpXOS81T3lja01HRngvcG9WZ3RPSTYyd1p5SHl2U2h6ODBBS0ZRa2gvRnpQYno4eHVVeUE5a3ZpRm1SM2toQ0YvV3lqTktaSXBLZURobHpkVjRIcHpNL3U0bVdFbzFneXJNTWRwYzBUeU1UTmpEbmVSVjYrbGZwOGszalBGRzZjOGhoS1F3SFdjWU50NHhIaTYyd2hpSDdIUy9Ock1MaG5hMkF0NVB0Ym5waTdlajZwNTRqM05ERkhXSVNFbTBISk85UzErb0psZE1DUng3OWxOemV5anpyaSsrVlBLOTJhN2FvNTJaSXN6bHUrWjJlUE1qTDZ0VUliQW1IUEN2aVdVd0hWZmN1V2VHMFBnR29Hb3M4eU03MVl6bEZyck5kUGN5cTB0UXc2bVluUDFjdlNHcFRTVndIVnNMWVpEaGVQTkRDR0xQcUdVWTRZK2VldVo5U0d3bEhsYWlMaS9yN2JFN3l6bFRwbGpMblgvY0VoUFgrcStUTE5PWGVkWU9mV1h3SFVPcmIvRVRWbXo1S2VxSjVaS29PUVl2VkVFcnJFUnc1RkV5S0hqMk8ySWd4bzRodXpVMkNmQW9lVFVUcWlaRXpPL3piM0hNTGZBTlczVmR0N09uSCtINm16eWMyTTM2c1RwUytCNll1QVRaSWRUZE43L1VCaERlSmQ5OUtNQ21SMVczY2xpN3lKM0xKZ0EwZVd5V0lMQUkzZTBjRnEvcDFmNU9lNURUTTMvK21aMmtwbHQ0Mlg4UXpQNys0TDc3d2pLOG0zQ0lYZUowQ1Z5L1lKS1hQZDFFL1QvSlFsY3R6a0xoVDlpN1RoQnp3a1N1TTZoZFZuY1ZSZTQ1bTRZYTN6bTEwMUI2cnFHakpuK1BabCtwT1o3NmhObXh2dnIzNHVacjBURGNsNFhnV3NvdFoyaHJKSmpDczEvaHZWNVBTMENJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNpeU1nZ2V2Rk5Za0tKQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlzQUVKSUxyOE5qTjdVcVJ1cnpDemwweGdURElFTFpmMFQ2bU1lZTdoSllKQTE3Wm05dDBoaVFlZUhTcCtoN2pYK3lvaDFaQUlEdGxKVUt0d2d3V1N1NG1admQvTTdoZkpDaVBtMTdZWU1xK0NVRVd6YW4xRkt5UndQWDVmTEpuRFM2dXhldjlBZ3Qrc2hMZnViMmJubDh5c0k2MmxDdFRFbkNGZ2JNOTQ4TFVCaks1ZGpSbi9ZbWJQTlRPK3JXTUVERW41THIvZXpGWkI2THFrZ0lmUE0wWGd1czA0OUsxbWR0b0lqWVNJNXpjS3BIc045NTE2UkNDdE5uR0lwWDZmSk41VG9GTW9pZEVKREozamoxN0FtVExvY2c0emRiSG1kSlJSdXE1TEVVNU1FUjlNcVh0c0xycDdSTGdsSmMxWW5OajNMdlY3dzNvUU1SbkVyVUtCT1JmQ0dvakxUQzF1TllUTFVwOGRjMDdZdDg2cktIQzloNW1kbWxGaEhPOGcwb1NBZlIwK1UrMDU4VTcrUGlPZEJ6c0hSczFIY3N2Q3MyK3MxbHVQYmlReWhzQTEzd2lFazV1aHhGb3ZobXRxSWF5TVptdU5Pb1hBZGRkKzg1QzZsUHB1RFNtRG50MzRCSll5VHd1UmxzRDFzdnZmVXZkbG10VDhzd0lFc2RpSGFnYm13RGkrN1pvTHI0dkFOYzRIK3poYW9qL2duS2NaVXRjc3krN3BLbDBxZ1pKcm9lWisrSVBNN0lqVVFzd2M3OG5lUHZ3cWpKTlRJdXM3Sml4QjRCcE9iYUtsWXpvWnZiMFR6SnV5cmNockp6Tjd2SmZwdTgzc3VLa0xZbWEvTkxOUFZzNTIvemhEM2hzcHk3YTFLeUt6dFBrSmhTck1mSXUrZ3ZoN002eVNNUE1TQkI1aEYzUDZmWWladlhERTl5STI5eTNVUmY2Y1RPeTd3SmszOC9oWGxjd3NrdFlZZTNZNGJlWisxcFVDZWZLdUlWak8vWkl4UmQ1REF2TmoxRFcxaVRoN096RnlaNjNQWGNlTktuRE4zSEdUQU5UZkZYSzhPNFhBZFdqTlRaVktPUFJkV3J1bjl2L2NlTTl3emcxeW4xdGkvSFVTdU9iYjlmTHF1N3hmb0NFWTd6a3YrdUFTRzhrcjA3clBmMWFnaVZSRUVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVjZ2pJSUhyUEY2S0xRSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSjlDV3h1Wmg4M015NVJOd1BpbWYvb0RFMjZETm43NWwzaXVaMHJJNlpqek16ZlZ4NUxuTHVFK04wdEs4UExENWpaM1NJQURxOEVCUFlhMGZpcUJQZFZUK01XVGh4cWkwaEZNRHcvTUdKRXRXb0cyQks0anZmV0ZKSGNWZWpyTWFGL3l2Nnk2bjhRSEp3eUxGSGcraXBPNEEyUmF6Kzgxd205OVRFRXY3S1pQY1laVkNGeVBVWEFjQjBqZWdTYXh6VDBIRnFYa2dJZWZsbFMzdDJ0S25IM00xc2NTZ3l0WCtqNXZ1TnRNeTNtTS90VTRrSUhSQXJZSmhTNjFPOVRYNkdPTWRwSWFZcEFqTUEyVGp6QUYvYmFTSUxLdWEzZlpuaWFtMWFwK0J1cFBaWWluRmhDS1BSbWxYT3AweXZSYVBZV21tRXNNYU9oQXRlVWtYZjlsV2EyZDZSejRpUUdZZDhmbCtxOGE1ek9tSFBDdmxoWFVlQTZkL3dMdlNkOTVtUWg4Wjdjc3RCTy9ocXh0SUFNMzZ3M21kbXp2RTZCUXp3RXFmN1F0N08wUEljUTF0Rm10a3NnemtmZG1nMXgwREhEWGN6c21aa1pVRzRjNlRRZDc3R3VSQndjQWMrYzhCM0gzUmY5cEk4ZzNCVVNMc3BKUHhTM3hIZHJhQm4wL01ZbnNKUjVXb2kwQks2WDNmK1d1aS9UcE9idlhZWDJjVlBIMm5VUXVCNHlaMW1LQU8yeTM1cU5YYnJRV2lobC81aTFLbzU0Mjk3ZFZTVzNDdVBrbEd6N3JORW8zNUxHbCtlYjJVRWVOTWJPcHpxSDMyUGNNVm5pUHNPVS9ZYTgrdmFkcWN1NUN2bTEzUmxoemN2KzRMbUJpbHc5NE1paXJiN3NteUtXamRCcE0rQTRGNEhIaXlhRTFWY1lkb2pBNDQ1dWY2WkVOZGtEUWlpY1BXa0NleHJzVFgrL1JPSm1GdHZybUZQZ3VzMmhRS0ZxL3pXWklmUGZXRmxvTXh6bXZiTkY1SnE3RDRoZ2ozWDNJZlR0R0tPdU9lM1IxcTRmTXpPRXdWUEhocGhvYmg5SGhUbDFDRGxaNVBrKys4ZWhmR1BmL0pRNWRVbzlwaEM0anQyZEtzRm9Jd2hjNDR6elYyYjJVelA3cXBraDhINjJtWEZuK2V0dVg1L2Z4eG9iVXZwSnlUanJKSEFOdDlqNU1iOGQ2ODVRTGkwSmVJUzAxbjMrTXdKU0pTa0NJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUM4eEtRd1BXOC9KVzdDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJakFlaEZvR2dYOFZ5V3N2SjhUS0JsREFLWWsyWmdoN0UvTTdINlZrY3dQU21ibTBpb2hjRTFTR0hvY2FtWlA4c3FZYTZneVFoWFhKc2syZzZIL1pXYlBOYlBEQW9ZU3NYNDN0bkZRU3NPODBSbEJOdVAyTmU0SkdkcGdXSUNnUEVZbUpRSmk3eGlHK3VIVTZ0MzRZWWtNWEJxOGJ4aUhYdFZMTTBVa3QyQXhSa3Zxb1diMmtZRFEvMi9jV1BpMTBYSU9KN3hFZ2V1dHpld1RBY05oREtFZVptWW45MkIwUFNkc0hSSTA2NUZjOWlPSG1ObStJNG0xWlJjbThFREk0TERQTzljbkhRVE5jUmF4WjRtS1pLVFJkN3h0Wm9HeEtnYThJVEc0dHp2UlB1WnFvY0JZaDNId3ZUUEtYQ0lxaHZ3M2JFbElZZ3NsS0N1TkZBSzVvaExOTkptUDhQM3l3eExtZHlsMXIrTWdHb09ZWmdueG1MYnhLS2RNSmVPV01QZ3VXWjRoYVMxRk9ERlZ2SzZ0cmpHUmdjZVpHWTVFU29jU0F0ZVVpYnRwT0k1NFJ5VjJqZUJySFpoREk1THl1ZElGWDlQMGFLOU5NdXJ1cjJrLzQ5cXB1UWIxeDJ6MnJoQXhSZ0FoSmJDdUhVTVVJU1JPMEVjb0pmUk81WTUvNnlad2ZXUG4zR1pMcndQZ3VPK3RLWjJpWnh6ZnFRN3pkUEprVGxIaVc5eFZyQ25FbGRyS0VKcm4zOGdKUzhGbWpGRGl1elZHdVpUbXhpS3dsSGxhaUtvRXJwZmQxMWlUNHJnMDVsUXpWUHFRNDRFNjNzL2RubS9KYndvT0NFNXFGRVFDMTVmQkNMMzdmZVp5ZFlwTEVxQmQ5cHV6Y1V2WFIrQTZOSS9ITWVjRHpPeVRHd0NWQks0djM0aDk5ODJYTkw3UXBoOXNuUFh5blhuT3lBN0RKSEF0Z2V2U3cySGJQamhPNjNlcnptUDljN201MStOREdQUTl5eHdpOExoSzcyMXNiSjZpelVONTQrajhSSGZuWTBpN3B6NDdaUDdibGtlWGcyZnVaK0ZVSE1IVE1jSVNCYTY3bU9EdzVEV0p3cjR4MGR6Y1BlVmM5ckc1WGFsOEpYRGQzaUpMRmJoR3BKbzF6TGVkOHdITzNMNWtaamhKeExIRHhkVjl6Ris3LzUvYjUxWTkvcm9KWE5OZXozWjMwT3UyWTM5L0h6ZmVsOXp2R3F0dnJQdjhaeXl1U2xjRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVppTWdnZXZaMEN0akVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJDQkdRZzh5TXlPbUNIZk9zdW1NQ0dYeUxsTVBtWGdNanVHWVdkblpycXpFOXYxOTVUN0dtV2xaSDk3WjBTTXNHa3o5TW56eW1iMmZETTd3Q1gwSFdjQWVtNUtRUlNuQ0lFMmc4V1lFZFhZUmpwREtoWVNwT2pUTnluREVIR0wxRHJFREFGTEdUelY1WWdaaWZRUjIwMnQyMVR4RVBJOTBzeDJEV1NJb0NDaWZSZ1BUUm1XS0hEOTBzcjRiLzhBaE04NkFjT0xNZ0h4TGNCbzN4ZFF5MHhtY1BTUG1obmlrUWowTFMzMEVhWU8xYUZQT2ppNU9DMGdhajgybzc3amJWMnVOc2NMUzNXQWdXRTF4c2JiUitDT2JaQThkcHNxL2RVaU1JWEF3TktKbEJKOWJCdVA1bVJRZW80NFoxMUtPVTZhc3c3a2ZUTW5aTHE1VjVBMWdUUGlBQUFnQUVsRVFWUytJazBwOVdIL2dtOFBUa3Fhb1crZTl6S3pFeW9IVkRjd00zMjNVbHBnM0RqK1dpTFVydjU0UDVid1NtNU5KWEFkSithM2ErazJDemw5UWhUMFBrNUVJN2N0YytJamFQMFdONDQ4YTJRaE43OWNjODk5L1BlVC9ZazNPWkh2SElZNWNVdk5kWEx5Vk56MUl5Q0I2K0Z0bnZLdUxuSC9jSGpOODFObzI4TmlYL2VvL0NTem5oaHlCaEQ3RHNYMngrYitib1hBTk5lWUVyak82anFLbkVDZ2o4QjE2QXo2NjJhMlhTVU05c3VFUEpjZVJRTFhaZll4K2dwYzkzSEVrTktuYW1mR2lCbmlSS0drVUIxblg0aDdjcGVrRHFza2xKdkNyMCtjdm50Z2ZmSmFoMmU2MXJMMHVRTTlrZGtsem10UzI2cnZXZWE2Q3p4TzBlYit1ODA5dUpkWGR6MzJTMjNjQXZGSzc5azFpNFJ6bjhQTTdLbVJjcEkzSXRjZkxsQVBQNGtsQ2x4VFJ0OVJSTFBjbkZXdzUzbHFBZzhKWENkQUNrU0o3ZitVL003RzlqNUtuSGVPTFhEZHZEK01RUFVGN3U3WkY4Mk0rMVcvcmQ1WjFpck0vWDQzdzEzamZxMCs3MU5UQzF3eng3bXZPLytjcSthY3ZYSXYrdHJ1RElWN2pMN2prS25LZHA2WmNVY3dKNno3L0NlSGxlS0tnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUl3RW9Ra01EMVNqU1RDaWtDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJbENJd0JUR01JV0tPa295Zll4a1lrYXc1NWpaQTkzRitqRUtHN3Rzdm04bHBQbXFIaG15SDA3N3Y4SE1IbHVKZEgydVJ4cDZwRDhCK08vVEVCbjNVd29aVVpVVXVDNlpGbVdYd0hXNEwyeGtnZXV0SzJIWlQ1alpkYjJxLzdjVC9UdTUvK3ZSKzhtbENkVGMyTXpPakloUjcxVVo4eHlhV2RPN09NTWJCQjFUQXNhSGlDMGpSRTViblc5bWwzZ1BNaGJRVCs5dFpvK3ZIQ25nK09KS0tZbFg0aFpubU5takZ5aHkzVWVZT2xUbDNIVG1GTW5vYXhST3ZkdkVaQkV2dWIrWk1jZFpVdWd5UkpaSTZKSmFhejNLc3U1cktsbzVSVWl1cXplMGpVZS9IL2w3dzdlUDcySHNHMWpDNEx1ci9sUDl2bEVFcmtQZjZSemhoYjY4US9QTlQ3cjVMNGIwdVFFeHB2YzdCMXErWUUxdVdvby9qSUFFcnMxQzcxWHUrQmVhRS9jUjVnaDlXM1BMRXRxcjZMTVBHT3RaN09zZ3FveTRkRE5NNWZBSmh5OTNyQnduZmJxd2tGdkttelQzM01mdlV6RW5jbDh3czRNem5XK3hKbjU2QU1LN3pPeHBNNHBncExTTDRxdytBZDdwb3dON2JhazF3ekhtdFNLUmg4Nm5uK3oybU9ya0VkbC9jV3JCdkhoZGMrOWZCUGF2VXJQQ2dTZGpBdUpIc2JDMC9jUFV1cFdNeDc0S2ZXMlhRS0lmY3VKdWZ5aVpZU0F0Q1Z5Ym5laTRTT0I2NU02MmhzbjNFYmpHR2JRdmJNOWM5emtiaE45WUFzdXJpZ2ZIMTdTdmYxN1VWWisrQXRkem5wMTAxU24yZTJpdlV3TFhabjNXOTMzYllGMmV1NmtUa1EwNU5rWmdmUWZ2SHMvYzYvRWg3ZEwzTEhQZEJSN1pwemlpQXp4Q29weHYrQUVIQUNrT3lUOWxabnRXOTVkWU54SmkreXpzUWIweE1jMVlrZTlxWmk4eU05OSsrNXRtOXVBUkhiaDFPVTRPdlc5RCtudjk3RklGcmlrZmJYRjZaQStDdVFMdHdScTdMVWpndWw4djJhZ0MxNXpSTWU3dzcxcVl1aWJFTzhiZjZqR0pleWpmY2o4U0grY2ljNGtQOTJ2RjFYcHFhb0hyVlp6L2o5bWkvMlptZTJSbXNPN3puMHhjaWk0Q0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ3l5Y2dnZXZsdDVGS0tBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaVVJN0FLaHRBbGFEUVI5aG1aeWMrNWU4blA4UE1EaTlScUVnYVl3bmxZdFNiYThBNllqWFhLdWt1Z2M2Zk9HSFI3em9xSlVXcFM2WkY4U1J3SGU2Nlk3MjNTM2hSWG1wbSt3Y0s4bGxuYkh2UkRJVmNta0ROcm1iMm5nQUgzdTM3VlFZc1A4aGd0SGtsUlB5UlNueG1pNFJuTUx6SFdQTFlIa1pnakVzWXJSNVFHY3ZlUENHdmo3bjRjN1IzckhpNXd0U2wwa0hjNlMyQnhHZ0hSTzZHQnVZZFR6R3pod1FTNHUvdjdKRkJXNzlhcWtnMGZSVGphWGpId2d2TTdIWFZHSVhndm9JSVRFRmczZGRVTUI0cWNIMExKK1FSK3M2bEd0SVBhZXVZWUFOcDRyU0RiL3FTdm5WRDZyb1JCSzV4OW9Id0F0K3hacGhDakcrSUVGK3MzZmkyOGQzOTA1Q0cxYk9EQ1VqZ1dnTFh1WjFvczBybzVTd3o0eHZXREk5ejgvL1llSnVienhMaSt5Sm1jODk5bXVYQlVRRHIwbHQ3b0M1MURweHc5cFFhYnVTK0wxdDVEeURNc3EyWjFmdHpxZWtwbmdoTVRhQk5kTEd2bU53WWRXZ1R1ZWx6WHBOYnhxWHRIK2FXdjBSOGhNcFk1L2dPZnFiZ1g1ZC95THc2OWgySzlmTzV2MXVoTm1zNjdwREFkWWxlclRTYUJISUZydGwzUmpqelNSN0dSenFIbXpHNmlHbmV0M0xrZVlNWjhaOW5acHhKVFJWd0pNSDhFeEhPS2Rmd2R6Q3p2emV6UTZxem43RWRFTFN4WEhlQmErWXdtNHpZMmE1c1pzODJzeGNHaEYrN3N2MTFKVUw2RHhNNE5HZWRoUUNsemw2NldpVHY5OWpjakZRK1g0MXpPNXJaaFM3SkpjNXJVbXZiZDAwaWdjZHV3dHZZWHdUb3I5R0l5bDRKMy9KYXRMbzdsYi9FaUozVmxIQ0tIRXQ3TEhGcHY4NDNjYzRtdWFjUkNtT1VZOGtDMXpDSTNXL2d0N2M3eDM1dG9zTVN1RTU5c3k0ZmI2TUtYTXNSUnIvK01NVlRFcmllZ25JOER3bGN4OWxvM0ppM2J5cDNFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQ0JDUWxJNEhwQzJNcEtCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUmdkZ0tyYkFCVkFsNnV3ZjUxek93VU03dUhsN2x2V0ZhaWJINGFjd2psSXJURnZqbkdpZ3JqRUtCUElYNjZ2WmM4Qm1LSUhIeTY4ZmVTb3RRbDA2S0lFcmdPOTQ4NTN0dHhldXJsVTcxeEpiNStaaVhhdFdVZ3M3MHFRWU5EcHloRUlJOGxDZFJnUUhxY0UvdjJpM3BZWllnTXAxUUQ4SnM2MGM4UTcyYmFHQmZpYkFIam1EWkR3NVRtd1pCK0QrZTRnVzlCVzBneGJrekpzMVNjT1FTdVk2SnExS25VT3hFemRPdzdCMmtUazZYY2NEd3dvNStXYXIrMmRGTEVyWmRZN2luWUtJOTVDYXo3bWdyNlF3U3VHWTgrYkdhK21DVHBqaUVvNFBlV3U3czEzblVEM1dpSmpoeUc5dmFOSUhBZGNyVFNSOGkwRDhzaFFueDk4bU05ZnMwZVFpUjk4bHIzWnlSd0hSYTRmcTBUVTBydEh6aFIyNjl5OUhPN3hnUGZNck5YWkRwWFE1Z0hVYTlteUMwTHp6N0hPUmVxMDhuZEIyeXJkOGloRVVKMzk2L1daZWViMlVZV3VFN3REODE0b1gyb29lMFIyMU1qWC9yY1N6TFdNNHkzaUcyOUtsQzVzWjBhOXVHcFowUWdSRUFDMTJuOVlrbjdoMmtsTGh1clRXQThaK3hrM01ReHdBVVpZMjJ6SmtQbTFSSzRidThUZlFWb3kvWTBwVFluZ1Z5QmF3U3FFWlZDUkxrT0tVNDYyOGFUcWVyZlJ5aHNTTmxxRVVqT1g0NDJzN2VhMlJjTG5NZUV5c1E0ZTBjek82aHlySVA0TFdIM3l0blhVVU1xTVBEWnZ1UExFdnBLYnRXSDdIWG01a1Y4eE5NNVcvV0Y1bkdJOXVPQVExb0VyVGYxTWlMdWk1d1ErdEF6d2o1MTBEUDlDZkMrSTJELzNFZ1NiNmljTCs3dDVsd1BjazRKdW5ManZmUDdDTS9RTjM3ZTlmQkl2N1BlUHJ4SDJrTUVybnRrVi9RUjJoYW5NbU03UlhoNmdDMjg5ODJzVGRzK3k5QnZFR2U4ZkR0M0NaUUp4OFVIWjVhMWIvU3U4L0hTRGxlWExuRE5XUEhCeGx6RDU5clY3aEs0N3RjVEpYRGRqNXVlNms5QUF0ZjkyWlY0c3MrNlZmT2ZFdVNWaGdpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0Fnc2lJQUVyaGZVR0NxS0NJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lqQTZBVFdYWXd0VjBqbENXWjJwTmNxQ0pRKzJobDloQm9Na2RDclZjSTg1RFVrYkdKbUh6R3orM3FKOUxrRVRSS1U2L3BPaEFEUjFGdFhSckdiVi9XNGt6T1M1SEk3QVpIbEU0Y1VYTTkyRXZDTnFMN2dETHQrNkQxWlVwUzZaRm9VVXdMWDRXYmVxQUxYSVNFdkNLU0lIblMrRUFNaUxFbWc1bDVPQlB5cVhuMFFYMFR3ckNsZTMxWmxqRDBSeEg1cUI1Zll1REVBNTU4ZnZiMzd2bldKYXk5SjhHdHFnZXV1TmpySHpCN29CSC82dGtmTXVCVEJncDNNN0lUTWhQbmVNNmZZSXZMY2l5c3hUUVFFeHphNHppazJvdkVZK0dPa0hRc1N0ODRocXJnbENhU0tTb1R5dkltWmhSd0ovS3dTQ1AxanlVS09uTmE1WnZhb0htTWQ5WCsvSno1YUY1VXg3akhPR2N4WXhXOFRNeWd0WkpCVGh6MERUcFZ5bm0rTGUwTXplNlJ6Wk5TTWh5RFRsMHBsMGlPZHM5eWFvdXRSdm1FZnIwU2s2dlZxSGYrZGxUZ0xRbE94OXdhaElOYmtxUTVHWXVYZ0cvbEs3OGNob2tjSXF5TWN3am9jZ1VBTWx2K20rcmIvYlNWS1VvOFBmZGY4WFN6MSsrVUpTT0E2TEhDOTBmcEo3ajVnclA1WHFSdyt2ZGQ5KzVweDN1UkV0Zm1iQks0dlQ2KzB3SFhiT3V3VGxkQWdlOTRYWlhSZ0hHM2d5QXVCeDJZNDFjeDJOck9MTTlKU1ZCR1lpNEFFcnRQSUwybi9NSzNFWldQVjRxeCtxcW43VjloWjNLOFNURVJvRVRGYzFzT011N2xoU29IcnUxUnIxV2NHQ3NpY20rOTFNM0FtdzlqZkp5QkFpeE84Wm9pdHM5NXNabDl4RVVOemhpRnpscjRDdEgzcXJHZVdTU0JYNEpwejV6TXFCeUhNY2V1QVkxN09nZHIycHBZZ1dseHF2Znc2ZDliZmJGRmZpSlUxKytrQkIyMmx4YTRaWjNIRzlub3p1NmZYeFdKak5XTTcreFhOY0l5WlBTK3hpKzdvemhtNm9qUEcxV0xiZFZ3Y05uK29SZVNiL2JYL3g4d296M1pkR1N6bzl5RjdQYm5WdUcxMUZ2YytNK043MVF6MHJkMnF1eW0zcWU2YXZOcjdEZEZhM3M4REFwbmhGSlU3TGQvT0xZaml6MG9nNXV5WU9RRjd4ZlNSbkgzTmtJTkFLdmc0dDU4eGEyVWJtY2Z1VWd3dFg4NWNpam50RWM3cEw5Ky9rb0YzY2Y5cVR3RUJaOGJLTWM1ZCtXNVFmbDhnbnpPQW5QUGp0bjJXb2M2dUtlTStrVEZyYU5wOTJxdk42ZW03ek96WkJSMU9MbDNnR241M2RYT2NrQk5Zbk5CeXorSExFZEFTdU83VEErUDd4amlkZVVTaGZjalkza2VKTzZCVGl5WDNvenpOVS9jd3M1dE5rOVdnWEhCNndmMGYvejN2NDV3MFZCRG1yZXdOL2NyOXVJUzE0aUJnaFIvMjE2MmEveFFHck9SRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVlCVUlTT0I2RlZwSlpSUUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVTaEZJQ1p3emFWbWpOODJVa0FBOHZGZWhYSU1tMktHcXhnaUliejJod2dzakpZd2dzRmcvV1ZtZG1GUHFMSEwzeUhqWGZhNnIyZG1QSU5RRnBmcE1ZcEV4QnFSVWk1S1h5bXhIUDhjTVRSS2ZGelJFZ25VUmxRWVJ5TmtXMS82Yno1ZVVwUzZaRnFVVVFMWDRZYmVpQUxYaU13ZVZ3azA3eENvTWtMTWUyVWEyQ2ErSWtuUmxpSlF3eGlNc05tekFxVSt4UWtGeEw0Wi9pTWh4d3Arbkk4NmcrVFF1SkVFcmlNUzN4UEVCeDdRRWc4UkE0UzdFVmlZTzB3dGNJMmdLK0tzYmQvVm9kL1M1MWZmOUlNQ1lEL2dCQTR3R0VzTmlKWXpkMkZPRUFwekdCSjNsUjFSMHNPZEtFTXNyc1N0dXlqcTl5VVN1TG9UYjM2WVZ6aWNGanpFekg2OXhFSVhMRk9YdVBWem5aT0hIT0dPbk9LMTVZL1JQbk9keitVa1dEQnUyNXltWURhTFNpcmxXOGtjQzJjSDlJMW02SnFISUlxTmFPbDV6bEhDMlFQbXE2RjVSa3owaURVWGpxcHVaMmFiT2RIeUcxZmY0YnVaR2YvbSs1WVNTb29hcE9TM3JuRWtjQzJCNjV5K3Y3VVRiR2dLUXZqT2pDUndmWG1pcFFXdVkrdXdQdDl3Ukp5T2RzN21tcVh1RXZISjZUT0tLd0pURUpEQWRScmxwZXdmcHBXMmJDeUVTVDhXMkJOS2NhRFdGTFp1Q25CeWpvZ3dhdTY1MTVRQzEyMTdTYS94Zmh3aWx0djNqRVFDMTJYN3VWSUx6K3ZiMXR5aDd3ZUN5Vy90Z0xrRTBiSWg3Mnl6ZWludmI4eEJRRE9kV3V5YXZXejI5M0tFVEhGTS9kQkthUHdWQWFIalpoNzdCUnh2RFQwVGFadERESDJuMk5QZ2pzYWRBODVrdXRMbS9zVXVnVWpNMCtGd2ZsY0NBMzcvdmR0TFNqM0w2NU1WYmI2SE8vdndIU0JTUitwK1duVUhKU1phejMyZTNjM3NIUUVIaXZSRkdIRldPV1lkK3RSYno4UUpJRHJLR1h4OTNvaXpaTzQzK1U3UnV4aXk3OGhlcU8rOHVPKzhyU3UvSWIvUEtmREluUWZ1TlREdThnNzIyVTlvcTd2dnFCSCtUNm1jcFEzWm13N2xoNk11eGxxRXV1dnc4OHBweTMzTTdQdUpqZE1tUUYzQ0VTZ09jaGpQZk1mZ3JFM1kzOGx4VUpaWXBjNW9vWDBseHR1RE03L2ZYUm10Z3NBMWRZamRSV0JNd2xrUWZTb1VKSERkMVFQQ3Y4ZjJqVXVlQlVuZ3VsL2I1RDYxanVlNUlVYisvV3ZPUDNGTWZPOWNvQnMwdnU5OFNQT2ZEZHJRcXBZSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSXRCR1F3TFg2aHdpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJd0RvUmlBbGNZengxNGdZRE1kUndKUFE4NGpVUGNxSTJJVnpYcjBTc1RqS3piZHlQQ0FVZ0FOdEg2RHBtS1B4MVo3RDBOMmIydDVVUkpFSnR2aEhra0tia3dqbUdWZ3JqRTdoRlpSeDBRWXVoYVVsUjZwSnBRU2JGK0R1VjRCQnhpOVE4cGhyN05xTEE5YjJjVWF4dmdPaUxlYVcyUmNsNFN4R291Wlg3TGlCazZJZkhWUWJGNzAyc2RFeDBwdm40VklhZmJTS2dkWG42aUMwbm9zaUtObFRNb2M0c0pSM0c3Vk1yTWJRdE9rcllKYnpaOW5qdEFLRXBua2Y4UG1raVFIU0NjM3dSeXZOa005dDFKa1BpR0lPdXZzZmNhbXdSM0t3T3FNZ2lrRUVnTmg4cmFjQ2NVWnhKbzk3VWlYVWc5QnNLWTR2V1g4ZUppMjhmeUJ3alhBUjBQandwa2N0bnRvNEcwU2tDMXpHamYwUklYaElScmVZZTJNdWRxRTlOK1RNRGhLNWord3J2Y2V2d2UxVE9yWENPdFduQi9vTVFDVWJnWXdvM0ZTenV5aVlsZ1dzSlhPZDAzcGRXWTg3KzNnTytNNk03T3RGa2Z4NmZrMDh6THZPRzJOanlzMnFjKzJQZmhCT2UrMVRsSkdCUE0wUGtyVzhvS1hEZDVtVG9HVTRnTHFlY3ZvaFkvZXlMelF6aDA3R2NiZVNVVVhGRklJV0FCSzVUS0lYM3Nlc25OK0s1V0YyM21MTVlma2VJRlhHL3RtOUoyeHFxYlQ0ZWE1VWhad0N4dmYyVU5VV3pQQ2w3ZjJtOTZpK3grcDZSU09BNmg3TGlwaENJaWVFZUVIZzQ1SHdOZ1UrRUtML1drVmxzWHd1SGJSZW5GRFF6VG1nK1BKWEE5VlVxeCtBUGR3S1AzQXRJY1NLTnFERGxlNk9aZmFObFRvbjRHK2Z3KzFaM0NHN1l3dVMzMWI3OTNwVVRMZllmZk1IaW9lUFoyQUxYaitqUkozeGgyQ2FhUG5QK3pPNDJldlRibXRsUmpUc2t6UXkvYVdZN3UzN0QzN3ZlYWU2aEhCczU5L21lbVQzTnpNN1F1bWIwTmkyUkFYZDgzbGFKRWovUnpGN2tIUDNsT0xpdHl4QVQ1R2UrZDJpSmdoWk1ZeTZCUi9adkVadmtlOWNNSmNTY1NhOXV5eWNGV1BHK01vNzlvaERIMEZ5Uyt3T1B6TmpIS2VsRXpLOVc3Q3k5Rk91K0dKdm5CcHdKY1llRE81S2w5NENHM2xQc1c3L2M1L3oxSG1NUFl3bHJuRGFISGJGM2VLejVZRjB2NW1MazdjL0pTcTNwWTNPajNEVm5yQjBrY0ozYlE1Y2JmeDNQYzBPdDRRdGNMN2ZGbGxFeXpYK1cwUTRxaFFpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FoTVNrQUMxNVBpVm1ZaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJekU1aEs1SFhtYXY0NSt5R0dJekVqU3NTZk1lcUlHZjdIak1kK1VnbkUzdC9NdmhzQWc0RXU0amQzY0lhc0NHVGQyTXdRdUx4NW90RnNTZDRZV0NGMk9hWlFUc255YnVTMFVrV3A2VE0zNndDQjBmcCtsU0gwN2J4NHI2Mk10RC9mOFN5Q1JtZDZCdFI5eFJ0Q1dRMFJ0MGh0LzZuR3ZvMG1jTTA1MnBzcWc4dG5CVUQ3WWw2cGJWRXkzbElFcnAvdE9QbDF3eWlkc1Q5Rm5MQk5kS1pPZDJyRHo3dWEyZW51R3hWcU40U0dIK29FbjB1MmEyNWFROFVjNnZ5NjBta3pUc2I0MVQ5MzdpTUFqakVweHJTK2dUVmx6QlZ4UUlEai9XWjJ6UWpRTHJIME81c1pRaFN2YTNIRWtOdFdYZkZ2YjJZZnFvUkFiaDJKU0o5RGFJOTN2N1RCY1ZmWjlMc0lsQ0F3NWp3QlFmdG5lb1ZFL09ZUU0vdGhpY0lQU0FOQkE4U2p0NHFrZ1RPZ1YxYkNQbjNFTzFLS3hmaU4wNkduQmlJenJpQnV6UnBvenJDT0J0RmR3Z0MwMjlGbXRvdlhNS3lwSDFoOUQ4NkxOQmo5akxYTERRSy83KzdFaFB5ZnlPdDZaa1pmWlEyT1NDMmk3SWdPc0RlQStOU1U0ZWZWL09vK2xiZ05RdGNLNHhHUXdIVjQzeXhsajJDOFZobWU4bk84dVhRSm9RWDI2QmhYdHZTS2wrUE1LTGRtc1RHUWRIQ2d4SGkyOUgyN1VnTFhNUWRBc0hpNzI2L0ltVVA0emducnRtRnZiTWRLOFBYQzNNWlNmQkdZa1lBRXJ0UGdMMlgvTUsyMDVXS3h0M1NhbWZsT0MzUDJGemwzWUcvUTMxdmkrOHFjL0xNWnhSMXlCaUNCNjNiUUlUN3I0RWdyby9zbFIyVnZkbHN6dTFvbGV2Z3RNenM3K2NsNUkzYUo0VFpMeDc3cldjNTVjdjMzMVA2U2VtWlppa2FvYjA4bGNOMnNBK2VyblBQOFF5VUMvdWpFYzN0RVRCR3RmYXZiditEc2dMMXYydW9KSFdud0xIc21JV0hydWx4ZFp4bGRiYkEwZ2V1MnN4Zk9DOWk3ODBXK3UrcTRsTit2NFp4SzRCd2k1TEQ4ZzI3UDhsZU5BcWU4MHpnS3BYOGg3QmtLT0dyOXA0b2RqdE1WbGsyQXR1VDd3M2VuVCtCWnp1eVp0elVEOTVPWUQvNmdKVkhXd0R0NXY5TVhjZnlFODRNeHdsd0NqNHpEKzVoWnlQbEQxM2xwQ29mSHVuRTdaS1BjWisraUxjK25CeHg5dmNvNVRrZ3BhOXMreTFCSHBMSHh2TS82SWFVdXVYRjRYdzV5Wjk4NG94Z2pETG1uT0VaNTJ0S3MxM3ZudVBuSnR4TUtNTlk3bkpCMU1Jb0VyaS9ERXR2N0tNRW8xdTZwNjRpKzdidkU1OWJ4UERmVURpWE9YWmJZdm1PVmFheXhzNnNkTnRMOFo2eTJVYm9pSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpTUJvQkNWeVBobFlKaTRBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJTEpEQUVKSFhMY3pzWWpQN1djRjZoWXltU1A3Tlp2YVZnZm4wTlJ5NWlqTUlRa0N4R2FnM2hzMGhrV3JpeFFSditBMmpSZXF6bll0M056UGIxUDB6c0pyRkh6L0J6QjVmR1hnaGFxd3dMNEZVWS9HeERTaCtaR2IzOU41OUNWeUgrOGFZd3BWejlNWmJtZGtuS3RHb3pRS1pqeW5tbFZyWEpRalV4QXlIcVFPQ25TOU5yRXliR0NOSlhHcG1EM0x0a1poa2tXaUlMUnpaa3RJU3hBV0dpam5VMWV0S0orYkVBaUh6dlIwblgwd3pKcVFaUXRvbXdKckQrY3BtaHVnNnd0UlhpclRkR1U2TW95bWEwSXphRk5UN25wazlyWnJEOE14WW90S2MyVE5IUmJRakpzaU5jUlpDRm9qa0tvakFxaElJaVFoUkY1eEpJTWc1SklUV2VWMUdqVVB5UzMyMlM3aitZRE43MFlqaTFtMkdtOVJocUdCREtvZXVlR1BQNTd2eW4rTjN2cXNJOGNUQ3ptWjJUTUNCUk51M3RjMDVDM05haE5UdjNSQ3Z2bEZWQnVidlN3dUlXVzIvUW1KcVMrTVhFdndQbGZIQlpuYkx4ZysvZEk0Mm1rSzUvRTY4T2pBWE9yNFMxS1dOdWtLSmZhMVlIcUYxWjU4eFB6VC9MU0Y0NFplYi9UVmZhT200Nm04bmRVSHM4YnMvbnZiaDRtZUxFemptcWMyUTQ4eW9SelgrTEVJVkVpVWxyWDByc1ZLRWk1WWVTZ2hjc3hkOWNzUUJUbDhCcWxDL1g0cnpwcVczcWNxM1BBSVN1RTVya3lYc0g2YVZ0RnlzbUpnL2N4bjJkTitYbUJYemEwUldROThkNXRlc1F5OUtURXNDMTVlQndwSE94NzA5c0NGekZnbGNKM2JDaEdnSTBlSXdFS2QvUzNHSWxWRHNvTVBubUZPcDNRS09uMUxQTVZMUExGUEtuQkpuS1FMWHpiS3liNDR3NkY1bXhyNUZTTERZcjl1NTdnODQxV29Mbk1YeWJjY0pXNWNEbDY2empDNitTeE80WmgzS0d0RS96MkNkanJnNHdwczVnWGJoN0k3bjV3cWMwM0NlY1hoMVZuUHRRQ0VZWTlnVHhUbWgzOTRwQXRja1NSNDRLRWFzTmRZWDRVbytmY1dUNStLbmZOTUo0SWo0STRFOTFEZTRzOHUyYzcxUVh3dmRDMGt2VFhmTXVRUWVLUm5mTVVUbG0zdDlkWWw1VnhuYit6Z1RZLytRUFlxUTg5NitleGN4a2poZDREdnhzRVlFMnZnaGJoK3Bxd1c0cDhaK1hNZzVKT01Gd3ZoZDM2QzJQSjdzN3NiNWNUZ0g0dHc2OVp5Wk1aSXo3Q0ZsNldJeDF1L3ZjTTZhbSttUC9WNzFyUXZydlRzNFI1dXBqaVRHZW9mNzFxSFVYblpzYnRUbHFEVzEzS0UxSU0rV0ZJaVd3SFZxYXd5THQ0N251U0ZpUS9Zd2hyVkEyYWNaQjFtRC9LbHNzbGRJYmF5eE02VWROc0w4WitUbVVmSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlNQTRCQ1Z5UHcxV3Bpb0FJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlMSk5BWDRIcm01clpxV2EyWlNVQTlLN3FjdS9MemV3SEJhb1lNeElvWVlUUVYrQWFneWJFVTN3anlpN0RoVmhkTUxwOGxETVl4bUJvem9BQjBNL043RXVWV09WUEt3R0NMMWJHTmVkVkJwWmZyNHlWZnVNRXpPY3NuL0srUElGVVkvR3hEU2drY0ozZU16ZWF3RFVpdVlodSttRnNNYTlVNGtzUXFJa1pEak9tSWtyMnRjVEtJSVM5ZjB2Y0ZFUGt4S3l5b3NYR29Ub1JoTGNSR1BoMFZxcGxJdzhWYzZoTDA1WU9vaFdubU5sMXZhSmpZTHVUbVozbzVrYjdlYituQ2pDMENiQiszNGxjL2pBUkcrWEJRRHNXRUNCQ1dJSDVRQ3lFNWtMLzVveTdmNXRZanRSb0NNY2dPSXBJZUN3d1YyRXU5Zm5VUkJWUEJCWktZQnRuckV5L2I0YXVkVVpLZFpZb2NJMWpoZzhFeHM2NlBtT0xXNU1QWXdmaVZDSEIvNldJVzFQTzBKem1NMmFHbVBPcU94NUNkT01JTjE5bzl1VzJOVC9DMDZkWC9RY0hJTTNRWmV3ZkV3bW9oVXVaczd3NDVZVWFPUTdPczFoamZkVTUwUHEyRTJ0Q3RJTi9Vb1UrUmk3bXlpWWYyL2VhdWtJbDlyVmlaUzRsY0QwVms1SU9zcVlxYzUwUDMyd0VmbmJ3TW1adXZNZEloV2tLSzRheWVIYzFkdUNJYU9salJRbUI2NWp6bnU4NFFhcGFMREMxS1dLT3BZWUlXYVhtclhnaU1BWUJDVnluVVYzQy9tRmFTY3ZFYWhPbGZyc1R3c3dSaW91SlpWUGFGNWdaNjdxVUlJSHJ5eWhKNERxbHg4d1hwN2t2eWg3L3d5dlJ5RS9OVjV5a25GUEZjQmtmV0o4L3FaRXFRcDRQcUp4cmZqSWhwOVF6eTRTa2txSXNVZUM2V2ZCYTdCcW5kWTl1Y1RiWlZWa2NaSE91d04yRVZHRzFvV2NpT0tUejkxeEM1ZVFjWVJmdkI0U1NjZXg5U2FSaW5JblFuMUpGWXB0M1VQd2tjeHlJTnAvbFBVYndsM09iNXhlNjA5TFZqdlh2ckdFZWFHWnZkUGRxUXMvaFZCU0hFN0h6anRSM3VrNGJjZEtqelF5SFg3SEFQUisrMjJldndGb3lsYlhpbWNYMkxGTFBxT2NRdUU1cHQ5QmNxWlJBTU00R2VCOXdxTlVNZlIxYk5CMEcrM1hydTNmUnhpamtSSlc3WHRzbGlQcHY3c1pHdis0cGJUSjFuQlRCenFuTGxKcGZhTjN6TzNkdjVOOVRFMWx3dkxGRVd2dFd1ZFFldkFTdTIxc2cxdTVkWjNaOTIzWEp6NDE5UDNQSmRXK1diWXB4bXZYZ1p0VS83R1dscnBOeStQRU54NWtvNjJQT2V1alBjd2JOZitha3I3eEZRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVZQVFDRXJnZUFhcVNGQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJXQ3lCUGdMWFYzRUNwLy9vMVFxaDYzOHhzeDhQcU8zU0JLNWp4dm9ZR081WUNUdGVHS2tyeGtBZk56TXU5VGNEWWpNWUtCNWJHVEcrMXdtc0RjRFYrU2hDV1JjNDRXb01UR3Vockl0YzJjZTQ4TjFXcUdzNVVUWU1lekY4Zm84VCtvNXg3S3pnbWtWSU5SWWYyNEJDQXRmcEhXOGpDWWRxcURRQUFDQUFTVVJCVkZ4Znh3bjYzaU5RL1pkVmYwT1FlZTR3dDBBTjM4Y2p6V3pYQUFqR2ZJenZVNHo0YjF5SlBwN1pZdXorWFdjUWo4anZIQ0VtNGwyWDVUQW5mRHlYd05wUU1ZZTZIckYwWGhJeGR1YTVwaEJhVEl6elkrNzd6N2M0Rm1JQ3JIME1xdHZlM1RPYzJBYmltYkhRSm1yK09pY0lVYW9mM3RiTTN0Y2h2UEFGSjZLUkt2QmRxbXhLUndUR0lOQm5MWlphamlVSlhITVBoMi9nT3lvQmU0eERRNEc1Qk9MMk9jSnFxU3pxZUloUUlXNTl6Y0NEZllUZGN2UFBpUithMDVRd0RNY3hBd0xxMTJzVTVnOW1ka2hsc0R2VnVKcTZwcW1MU1AvQm9aYnZOQUtuR29pbTQ2Z2hGTnJFUk5pN2VKcHo4SEJVVHNQMGlQdHJNK01mdmw4SXIrSmNDbWNWek9QNGUwd0Fxa2RXU1k4Z3JJVEF5Wjd1ZTN0YXRXL3hWalA3eGdZV05KTEFkVkxYbURUU0tndGMzOHV0MWE3cUVSdFQ0SHBuTXp2R3pHTDNXaEdMZTFnMUwwY2NaK3JRNVFDcGRIbHFrUm9FNGxnMzNNQTU2RU53L0hPWm1mR2RlSnNuNkVnU3VRNkZNck5WZEJFWWxZQUVydFB3enIxL21GYktjckZ3dU1lY3ovOTJEUkhZWXp6RzRZUHZPQ2pWc1J1MWs4RDFaVzBzZ2V0eS9YMk1sUHkxSlNLaGZlWWVZNVF0bG1hcUdDN2lZR2VaR2VLZWRXRHQraEMzWHUwcWMrNzZ2aXU5cnQrWExuRGRMRC85Qm1FMEhNWmVyYXRpN25mTzdKL3V4c2VVYzZSbXNxWE9STnFLeXZsWDZHNURpZjJxT3QvWUhSUityL2R5Y3ZjT1EvMlVjeHoybXJoSE1WWmcvK1VSWnZhYWxyTSs4ajdVQ2VtMU9SSk5mYWViZFVIb2VDOG5QaDdianlVK2d1cWNlU0dvbnN0MktEdmRHeGxLOElyUGg1elZFaXYxakhvZEJhN2hFNXZiOHMxbi8rSExHVTJGQXpMdUN2aGhyUGtEZHhLNGM5VU1qSmRQN3RqcmpRbDdrdzRpcFRpcEREa0p6VUJSTk9vVXdxbEZDOXhJTExUdTRRNEY4eTNXYWFzZVl2ZWhPUHU0ZU1USzBUL0oyKytuRXJpK0RIcHM3Nk1FSXdsY2o5aTVDeVhkZGFaUVoxTnlMbCtvNk1Ga212ZW4rTTQ5dTdCRGFPYkxyMjdjZmVKZTF2UGNYSDNxdTlVMWdERUZybGQ5L2pObVgxUGFJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJakFhQVFsY2o0WldDWXVBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDQ3lRUUI5UnRaaUJUMTI5SVVhQlN4SzRacjhZOGE5WGVlM0dKZWFkek95RVNIdkdCTGlJL2lFbm9vV0lHQUp1THk3UUp4RDJRcEFOUVp1ZlZ3TGFDRm5QSVpUVlZaWGJtOWtIQTBhY2lCNGdGbzdSdEVJN2dWUmpjUWxjZC9la1BtTmZkNnBYakxHUkJLNWpvc1lZWkNLVThyVStnQW8vTTdkQXpkWk9aQkh4eUdiQVNCSEJNUXpFVXdMZjJlTmJJczR0S040bW1FeXh2MW1KdnQzZnpNNVBxZXdJY2RvRW5ZWm1oM0Fkb2dmazRZZHpuS0V6amlYcUVKc3p0UW1wM3R2TVBteG1majhpVGZJOXNJY0FaY2pBK2FQTzZVYWJ1RFY1eG95eDRiQnQ5VHVDNjBNRFlnL1BxcHhmSE5RaWZrc2VDUHM5eGN6YXhNR0hsa1hQaThDVUJFTGpGZXNFeEdkeHFETWtMRVhnR2pFVjFqMTdENm5NQ2oxYlNtaGhMSUhyME55MFZKbFRtd2t4VWd5bTcrQTlFRE9xeDduSzZRRmg4cVpUaVZEZU1TRy9wdWplZmF2M0RXY1BDQ2dORFNjNVIxYk1BNzdxdmxYTWs1Y1VFQTVDT0FtUkxUKzh3TXh3WERHWGc1SXhPVW5nZWt5Ni9kSmVWWUhyTm9kR1l3bGN4NXptTk1tekYzZ2ZKOHpjcjBYNlB6V1h3RFVsWnA4Uk1ZdFRJdU5hVjYxb1Q5OHhJYzhnNmdiVHJvRFRBb1ExbXV1L3JtZjB1d2lNVFVBQzEybUU1OTQvVEN0bG1WZ3g0Ym8rRHRTYUpZbzVDU0RPQjh4c3R3U1JUQWxjWDBZMEpGckV2Sno5NFYvMDZBcTNyRVNMRWJoc2hsVVJyZXBSM1VrZThkZVhyUFZ3b3ZXcFNYTFB6eVJWREJlblVld1JOKzJuRUdSK1RtS1dxV2VXaWNsMVJsc0ZnV3VjbC82OTJ3ZTdYV2VOd2hIWUczeExkVDd3ZXVjY0t5V1pLUVN1UTRMb2xLM2srQkp6L0RuRUtVUHNmQU5CNlFjNFIyUXBqRlBqc0JlNmk1bjlxNW5kdk9XaDd6bm5hK3hMZGUzRnBMN1RvZXh3S29wenQyMDZLdENuMzZVeUNjWFR2WkVoOU1MUHhwejljWmVJTTl0UEoyUzVyZ0xYYmZlN1Vwd1cxMmkzY2s3UjJQOXVCdmJmSCtQT2ZoT2FJVGtLNVQ0aXNDZnl5SmE3YkhYaU1XZWd6SEgrd2N6ZTBER0dKUmV5VU1TcHp6QUtGZnZQeWNUV24zeWZqaTZaMFV4cHhlNURsUkJSYnF2UzJQUFEyUDRLZDBnUEtNQTZ0QVlzUGErYVErQzZBSnBGSjFHcS9jZXVaTXFaUWwyR2tuUDVzZXJGdXBXOXB1YjlLZTRZTStjdTRieVpPZFFicXpPQmZ3eFVZQXd4N1ZST1l3dGNyK3I4SjVXZjRvbUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJakE0Z2hJNEhweFRhSUNpWUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlqRWlBUzhBWXZmamh5V1oyV3VEdm01alpjWldBNS9ZZFpVSU1CS01YalBjd0VFd05Zd3BjY3hIWkY1VEdRQWRqKzdNREJieTdFMG54QlNhN0RQVGJESmNRZ3Z5aXk0dDhNU2dNaFZwTTVkdG14ajg4ZzJBS3p5TTgxUXcvcWtSVDcra0VOMU01VHgwUE1kUVRuUWh1S0cvRVVERzQvL0hVQlJzaHY2dWIyVjZWTWRJV0dXa2pMdm9hTStzU1FFczEwcUhQWWtEYkZoQTNPOUwxbldhOFBTcGhwRk03bnYxVFZjY0x6WXgvMTZHa1FGVW9MZGk4MEltM1o2Q05Sc1dRbC9UODhOb0NncExOTkRldHhQaEkweDlIeGhLL0tzRW1sRWFia05kSG5LalRKV05sbnBIdTNBSTFMNjBNMGZjUGxQZnJUcXdVUWNXdUVETkdyWitiVTd5c1dmWm5teGxpRjZHQU1mNURJdk9JcnZxWCtIMXNnV3NFbGc4enM2YzJDc3NZdFVNbFpQNDVyd0lZUS9seDZ5Z2hzZXJZM0lObjJrU3h1N2o1b3VUTVA1Z1gvYjdqd1pzNVVkSE5BL0dlWVdhSWl3NE5DSnhpR05ZbHNFQSt6SS8yYzMwUHdRVUZFVmgxQXUrb2hHcjI5Q3BSYXB4ZmdzRDFUZHg2cDJ2dHVPcnQyQ3gvS2FHRmpTeHdIUkk4K0tNVEZjSnBVelB3L1RvMnNQL1E1V1NCdGREN0t5ZEtqd2gwcnFZQitxMnJkZWhaMWZlTXZob0s1TU02blBVNGpxUytiMlpYYzk5a2Y3MDF0bUREMFBjazVzQ3JUcmZMa2RmUS9PZDhYZ0xYWWZxSUhQQitJWHc1ZGVDZFk1N2NETXhMdXh5dmpGVk9ITnVsekd0akRvMG8xeGhyL0s3M3R1WXg1L3ByVG9GcjZzOWVCVTd6WWs0SXgrb3pwTHNLKzdGajFsOXBMNU9BQks3VDJtWHUvY08wVWc2UGRWTjNsbmUzUUZKZHptSlNjbytkZy9GZGVyUnpkdHFXemxJRnJoRkg2am9maWRXTE15N0VwWnNoUlFBckptNlcwZzZwY1ZaQnRDcTFMblBFWTE1MlNIVSs5ZHhHNXV3SEk2Z1ZPa3VmbzR6TlBGUEZjQkh4NGp5ejc3d3k5Y3l5RkkrbENsejNFYlZtckV5eFcwTUUrUlZPMEsxdEwzOEtnZXVZazdCUzQwdWJVNFkyeCtOdC9Zc3hHWEZhOW4vOHdKbkUweEljTXFUMlgvYTd1TVBCdVVuYkdYMmZNNDdVZHpwV1ZoeU1za2QyY0hVMzREWUpGV0lQakhzTDNBa2F3OW5vT3QwYlNjQmRMRXJNMmQrSG5MaHl5cG5hdWdwYzB3alhOek1jR1BwbmxUam1mVW5sZ0xpTFgyd2ZlNmhqbWJZT0VuSTg4Qk4zSitzSENUM3JMbTQvaGJOZ1FsMVdISGg4UmdMWENRVFRvc1RXbi91YUdYdVNxeDRrY04ydkJTVnczWS9iM0UrbHJPL25MbVBxbVVKZHpsSnorYkhxZlcvbklNSy9jMGwrM0wvRHFjTlF4MU14aHpoMW5VcUthZWR3R2x2Z2VsWG5QemtNRlZjRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRUZrVWc1YUxRb2dxc3dvaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJakF4QVF3eXNQZ0ZZTktYNURHTHdyaTFnZ1JJdDdXWmZURHMyTUtYT2RnaWhuV2NUbjYvcFhSOGptUnhCQldRUnpBRjZvak9yd3dmc0pvbFhCN3h4R0RlVVNzU1JNalFWODR1SmxWU0JRYkl5VUVycGNzRG8yUStrYzdqSFVSMm54clRpTXRORzRmY1o5VVVaeVN4dUlsMDZJcHhoYTRYbWh6OXk3V0dPSlh2UXVUOEdDYmtOZmp6T3k5Q1dsTUVXVk9nUnBFRE02c1dHd1pxT2pMcXI4aGZwMFNibEFKUEdKRWhPaHZLTUI2OStyYmloRGtuS0ZMZUFXRFRBd3o1d2hqQzF6akNNQTNWQTZKVmRkMVIxQUlZWnhRMzJnKzEyYWNoUWpEb3dhS0NleHFadSt1QlBkZjc5cW1hMTRXRW02cDYvU0pTdXdUUVpFaDRnYk1KeEdGZWFXWlhTbXpvekMvWk42QWVHblQyVUptTW9vdUFyTVN3Tm5JOFFIaDNoeW5DRzBWbUZ2ZytxcHVmc2pZRXdxSUpTQVk4ZkJaVzZGODV1c29jTjEwcm9NUVNQMjkrM1RsRElLMXFoOUNvdEloYm0xRzJGMU9GblkyczJNQzY4L1BPeUZVMXR3RTFrVFBOelBleHk4NUFldnpuRk9kbVBPV21DZzIzK2tQbHU5U3hWTHNtbU9TMFpJYzF4U3J1SnV6K09LM0lVRnlmeTBSTXV6M3g5YllPeDhhZzhjVVFROEppWFNOUnpIeGtaTHNWeVd0RkdFS3hpUWMvRHdyVXFreDF2aDNkYzVtUXVJTmZqRVl5MTQzQS9BK2UyQkRpaGw2aitZU3NVL2R5eHRTWHowckFya0VKSENkUm16Ty9jTzBFZzZQaGFBbmpscEQ0dGFjUXozUU9YSVprbFBiZkQwbGo2VUtYQTloRW5vMlpaN1J0Yzlhb2t4TEY2MHFVY2V4MHdpSjd6TG5mb3dUM0JvNy81ejBVOFJ3UTJ0RW5CRnpCbjUrWW1heHVXQ0tJOTNFTEM0WERSRjV4bzVtS0RVUHp6bmpaUHlqUCtBSTh4L003RzhTSzhOKy9Odk03TTNWR1EvQzFiZHo5eUlRVkV2Wkh6L1pPUmIvYkdCUGZBcUI2OWc4bzhUNHduMFQyRHdwd05LL1g1R0krODkzV0dMT1I3dnVlK1RrOGRES1dkTnp6SXk3RUYwQndXamk1dDdwU0htbnUvTG1kODVrY0Y3TG1XV1hvK3c2dmErWTJhSFZuQUtSNU5TeG9hc3M2M1J2cEl0RnFkL3A3MGM3eHd2Tk5MbVg5TERxTGhIalIwcFlaNEZyK0RSRndobW51ZlBGR05jVitDN3NVNzFYQndRaXRwMGZkNlhiOVR0bkwrL3hJdVhlSStCNzl1RnE3WUR6bXJxc09LYnpCYTR2ZGZ2dFhZNlRLUTVyRWI3WnpaRGpSSWIrakNnL2M1VTZoUFk1aHpqdlF3eVY5azJwVDFjN3RQMStkZWRna1BmUUQ1elpNd2VvN3c4T3lXZk9aeVZ3M1krK0JLNzdjWnY3cVpUMS9keGxqSjBwTUk0eUp2bnJqaEp6K2JIcTNIWi9panlaMy9BdEhISm5pWFQ0am5QR3dEZjFtcEhLc0g3Z2JJS3o3Nm5DRkFMWDFHWFY1ajlUOFZjK0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lsQ2NnQVN1aXlOVmdpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FodVV3TFdkS0NHR2NGMEJBeURFVmpCK2F4TWlYSUxBTmZ2RUwzZkMzSDY5YXNPYks1c1pGNG12MTRqQUpYQ01OMEpHcUJnRlk4U1RhN0RvNXorM1VGMVhPOGQrVHhFYmZhY3pCdTZieDFLZTZ5UHVreXFLVTFLVXVtUmFzTTh4L3U1cXF6YVJrYTVuVitYM1VrYjNVOVdYY1I0eEx6L2tDaDZNWGQ0NUJXb3dZa2NVMEQ5ci9JMHpDUGxhWXVXM2NjYXlNZU55REIweFVwNDdiT0xxZTk5SVFlWVVTRXo1NXZUbDEzeDNhMUVUaE0wUnV2dXZsa1R2Ym1hblZPTFNJWEc2RjFUaTFXZFhqaS9lRi9uOU8yNE9jVzdmUXJ2bkVCM0ZDSXkyU1JHRmJob3lOYk5HbEpiK2ptaDNuOEFjQ2hIUUE4M3M1bjBTYUR6RC9QSnBabmJHQmpBQUhvaENqNjhnQVJ3allFU1BXRzR6bEJvL1E0NXh1c1JPUzJQa1c0YUkvZDVld3JVQUZPc21YM1MyZEJtbVRxOFU0OUNjcG9TUmNVaHNBSUdsblNvallPWjFkekt6cXpsb2QzVHJXLzR2WWhGLzYvNk9VeWZTNlFveE1kK1FRVzZJVyt3NzFCVFQ0UDI1clZjUTF1Z0lWdnVCN3hmMUhOcm5Zb0lOU3pkc1R4SE4rNzZiSzVRU0xPcnFJMVA5bmlvMkxZSHJxVnBrZWZta3ZMOXRUcCtvVWVrMVBuczJpT2I3Z2tEa2hmQ052KzRzSVlxRGdCRGpKMnZZMUJEYVcwTHNnZjFmZjMwVUVpaWlMamo4K0VVZ1E3NDdqRjNOSUlIcjFKWlJ2SFVsSUlIcnRKYWZjLzh3cllUOVkvRjlRRFNTNzBKVEVLNU9rVEYraDBybzhITWRXZFJPYkc3bTltNVlEOXlsc1M1Zy9OKzBJNDBYVitKSnIyblpyNUhBOVdVQVUrYnEvWHZGWDU0c3NaNGNXb2FOOER4N21qamNhNTREczlaOG5oT0FUZGx6bllKRGloZ3UrL3JzcWJMR3I4Tzd6T3pKR2Z1c2ZjNURTOWUvMUR5ODY0d1RNVGpFdnhGZ3hxbFdsd1B3WmowUkNjVWhLQUpzb1RNRTV1RHNWM0NQZ3JHMkt6Q1c0MUM3ZVdZM3RzQTFlM3lJTS9NTjhjUFE4YVZOR0hhSTQ4L1ErMXFYblRPWmc3dEFSMzZudkZ0VWppS2U2YzRtVW9TaWNiaUc4M2krdjMyRVRGUGU2WnpxY01mbm45eGRtSnkrL0ZNek84bzUwZmozampPeHR2S2tuT0Z0bEhzak9lMHlKQzU3QjR3eFEwVXIxMTNnbXZmN0lEZkd2eWhEL0RpMmovMzJoUFBqdnUzTzkvdElKK3paVEtPUFkzSUVyZS9qOXMzNVRvWDJ2MVB2TTFHVzBGNXN6dmM2Tkw4SW5SOE1jZDQzOU51VjJtNXRjNlZQT2dINjM2VW10dEI0RXJqdTF6QVN1TzdIYmU2blVzNFI1aXhqMjVrQ2V6UTRrUGZ2NTB3MUh1WnlZVzhMeDIweDU1OUQxZ214c25CWDcxZ3pZeThzRlBoRzR1U0k3MitmT1gwdWc2a0VybGRwL3BQTFVQRkZRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVZRkVFSkhDOXFPWlFZVVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRmFBd0IzTURLTlhMdnAyQlF6NE1QNzhlaVFpRjZvUlFmTkRUQnlySzcrK3Y3L1JHUnIyZmI3NUhKZWFNU1JDdUhKb1dGV0I2NURBbnM5aVgyZmdPNVRSM00vM01laE9OUWdyS1VwZE1pMllkeGwvNTdTTEJLNXphSTBmOXpwT21QY2VnYXhlVnYzdHBlTVhJVG1IdVFScVlrYWtGUHk5WnJaN1pTait4OFJhdEkyWHZ6SXpoQ2Ura1pqVzJOSGF2cFZ6Q2lTR0RMQXhOdnE1QnlUbW1BSnh0VXNpOEk1eGdpWDF6d2pVWHB4bzVJekIyRnN5R3lWVmVDZ3oyYzdvdlBjbk9uRjJQL0xoYm82VTJxZnI1em1IUnl6MUhRbHpSZ3lWbVJkczY4UTl1Z3JjTmIvc2VsNi9pOEFjQk81c1pwK294RlJ3R05BTWlOTThwMENCUW1QaEVQRmwzbUZFelM3SU5OcmtPYjZEdlBzSXBweG5acXp0dmhJUk9paFE5Vm1UR01LNFdmQVVnZXRhZEk3bmNHS3dwVXVBZVFtaW9MWFJiMU1FR2tHbUcwNUVLT2FVNDVaTzlKejFTTzAwaXU4ZGN5QWNQdFFCNCtXUEJrUmMreGFmUFF1Y0lyUTVwRWhKZTFVRnJ1a0haNWtaZ2lXeHNGRkVOZno2U2VBNjNPSkRSR0JTM3BWVml0TWxUTUczak84elRtMWlJVWVvcDR0Tm04QWI0K1YrWnZiYTZwOXJOaEppbjNVN00wTmN1azlBbE8wUWx3Yk9iRktkNjRUMmxtS2lHS2tDUlhYNVEzTVpDVnozYVYwOXMwNEVKSENkMXRwejdSK21sYTUvTE1aWnhuTEVkbUlCNXduc1ZlSjhyRjR6MU01czJoeTQ5aWtWM3lURVlNK0pQQ3lCNjh2QVNPQzZUdytiNXhuVzI4d0wyZWYxQS9OQkJHeC9PMC9STHBkcmloZ3VaL0djeVRmREl6T2RRdlU1RHkyTnA5UTh2TzJNazdreXd1YVB5Q2c4amhseDhNaDV3b1VaenlHbWh2RHdNOHdzSnB3Y2NrQTV0c0QxN1NzSEN1d1pOQjEvMTlVYUtvb1hjdzdLMnVlQlp2YmxESDUxMU5vNUtVTFVmdWdqaHNjYWpUVDV4ckszbExxM2hqTTU5bmxQVDNRNkdxdnFqb0Z6RWdUSFQrckJwdmtJUXRlVWo3RWdSYWk3K2V3UTRkNTF1amNDTS9ZNGo4aHNxOUJlYVN5SnRqRXFWK3g0b3doYzR5d0FFZm9wQXZQcWh3WDJYRGxEUlNTeno3d2c1ZjBPN2ZXeWw0TlE5VThHVmx3QzF3TUJOaDdINlJEZlNlNVUrb0YydW1mMWJmbHh1ZXl1a0ZMbys1R1MzWnZkR1Y1S1hBbGNwMUM2WWh3SlhQZmpOdmRUWGVjSWM1Y1Boems0YXZBRHppaFpZekFuWFFXQjY0ZTc5VmZ6L0tOWnB6N3orZFMydWFsejdITzNsZ2ZZZStNdUV3Nmt4d3k1QXRmck1QOFprN2ZTRmdFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUlIUkNVamdlblRFeWtBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkdBREVzQndCOFBPZzgzc05oMzFRL0I1SnpNN1BoQXZaRURLaFdCRVdoQXZuQ29nbUJJcVg1Lzh1U2orbUVJWG0wT1hsK0g1a0VyMDlMUStoWnZvbWEwcU1ZTXp6UXdEbmxDNDFJa2RmSHFpOG95WlRSK0RiZ2xjWDc1RkpIQTlaZy9OVHh0eHE0OEV4QVV4cnIyZm1YMHRQOG5SbnBoTG9HWnJKMUphQzBuV0ZXUjh4cWoxNUl3YXQ0bEdMMDEwOE9tVndTNWl4Nkh3TzljLy9qMmo3cVdpcG9vNTVBcXNEUzFmbTFCZEtPMjV4SzNieW9sdytmYVZzNUlmWnNMQWNQZjFsYkRtZ3hPZU84R0pCOVlHdlRtT1ZERDZScEJoVEdQZ2hDb29pZ2drRWNDd25PK3JIeEJKZW12amo3eVRHSEQrUGluVnl5S1ZGcmhtUG8vaEt3SzVmZDR6aER3UUJrV2dwM1k0TUxiem5ySFRMODI0MmNSdEF0Y1B5QlNjeXV3NnhhSTNEYjN2V2dubEhPQ0V3SmdYcFloTWIrYjZHd0pDUTBPWHVGNU8rckgxWGlseCtweXk1TVJORWVSYW12T2FuUHExeFpYQWRTbVM1ZElwNlNDclhLbmlLYVdJVHBZUzFxTVVNWUUzZmtONERNRisxb2FJR2RWaGlJTUZuTnZnaU9MUkxyRXZ1SDNibERuMVVnV3VTN1lIV0lhS08wM1JUNVdIQ0VCQUF0ZHAvV0N1L2NPMDB2V1AxZWFBcjMrcXc1NzhnSE5rRTVyL1MrRDZNcmFodVFibm9weWpmclZIRTdEL0J0OW1HQ3BBMjZNWUcvWVI1azRJVnJKSDZnZEVqUkVUbmZJOE93UzZTK0I2VStkUXFpbmExVWRrc2M5NWFPbU9VV3JlMTdWRzJid1NXLzY0bXhmRzZ2RFRTdmo0c09xZXhKSE93ZHVRdXVJa2pyTzVmd2s0aXp6RmpROU5RYlhVTTVHK1pXbzdDeG95dnNTRXFCSHg1bTRGNzFwdWdOM2JuTU4xLzlrK1p5N3N5eDVkQ1gzK2ZVWkJFTFptWDR3N0luL0tlRzZ1cU5jeXMxM043TldKNHQxOXo0bnErcTNUdlJIcUhOcVg2bXJybkRWKzdCei9zMmEyUStWbzhLS3V6QnEvYnhTQjZ6N01NekNOSGpWRlFQWFpicSs5V1JpY2kvS040SDVDU3ZpT1M4TjMrangwRHlURVArZDduWHArUDhSNTM1QnZWd3JiT2s1YkdSRkI1NnlIUGI2eFF0c2VRVnVlSVFkenNmZ1N1TzdYZWh0VjRQcGJadmFLRm1meS9XZ3Q1eWtjZUgxak9jVzVYRWxpWndyTUtYQWF3NzNVenl4YzRKbzdFWnhSTVBkbVRoOEtaN2c0dnhxeEhmenprbEJXT0dobTdUOW1PWElGcnRkaC9qTmlzeXRwRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJpZmdBU3V4MmVzSEVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkRZdUFVU1Q5bklYMW1PWGpUOW1abytLR0ZPRkRFaHpETGhLa1VVa0J2RzJtd3hNRUVOSkxvcC9lV0E2OWVNeEk0Y2NBNU5DUmNsS3BrdlVFNEZVK2cxR1BLc2VFSks0YjR1WU53THdHSFFRcnc0U3VMNThxNGZHQVVUUWora2g3aGpyVDdlTUNLMmUya080dGEzUFloU01BY1pWdlVnNVJueHp2aE50d2lqdk5iUGRGL2JlemlWUTg5TEtXSFQvUUVQbEdnOWYzUm5zSTRvZENrdnJONGlWWXJnVE9sK2QwL2xDcXBoRHFvRnN5WGVRdVJFaUYwL3RTSlQ1dzhNckJ4YWZLcGw1WWxveDR6ZmFGQ090OXlXbVE3KzRvNWtkbENocy9kdEs5QlpoMy9jSFJCOXdwSUtnQmZPRmEzZmtqMmpTRzh6c1g4Mk1OQlZFWUtrRUVLaDhwVmM0Zit4RTRQMmRUdUFhZ2FvTE1pb1RHZ3N4c21TZW1tdDh5M3lBOTI5UGx6L3YyWDVPL0tBcHBwTlJ2RDlISFZ1QWV1ejBKWERkM3VKTklZNW1XOUJubU5Qd1BmeDZpOUFQL1k3NUpuc0hROE1MbkRPdW9lbndmRXpBYTJuenRGQmQyMFJ6RVY5aW5Fa1J0QzNCY2NvMFVnU3VtYmNjWldhUGJ4UXNKSFRpcHhYYnIwckprNnlZKy9BOUdCcDRYeEFUYVlZNTl0SlM2OUVsSHBlYXpoVHgvRzlnTE05U1l3RGlDU2M2WjBGK1hwOXczMDZjWG9UR1I5OUpSZ3FmbTVvWlRtS2E0b1k4MTdaMzIweFhBdGRtUDBzQnJUZ2lNQkVCQ1Z5bmdaNXIvekN0ZE1OaTRZd1FSNmorWHZTd1ZQcy9qVUFwb292c3VmdGhxUUxYUTc3cGZlYzRvWE8vSVhPNTBGeDBLaEcvWmp1emQzeEUvKzZ6NkNldloyYWMvY1RDb1pWanAzMW4zSnZzRXJpK3MzUFl1WWxYQVo0N01FTVljNTBFcmtIRmZQc3RIck5hMVByZFpuWnVCcnVjRG40ek0vc241elNPTTZTUVU5WFVNNUdjZk91NFhlZFdmY2VYTnJGNDl2ZjM3c0d6Nno1Q2JoK3ZHYVFJbkJPWHZkdnJ1Myt2NHAwSDFyODRQN3BueTVsTzdqbFJxTTkxdGROR3VqZEMvZnVJRGFiT0E5ckdZYzd6MkR2SUNSSzR6cUUxWHR3dWdXdkdUNFNzN3pHd0NMSHhXd0xYQThFMkh1OXltdGRuTHkrbmRCSzR6cUYxK2JneGRzejUyRXNkR2tMM0JrbXpwRUEwem9yWkkvQkRpZnVsTVdIenZ2UENvVHpYL2ZtMmVUWDNVMS9pN2o4dldlQ2ErZUVlN2w3RWxTSU5tbnBtVWFJL2NLOEw1eS9QYjBtTWM5V2RlOXk3U0MyZkJLNVRTU21lQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0t3SUFRbGNyMGhEcVpnaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFLTEpuQmJKdzYwalZkS0JCdDNxSXd2UHhjcC9WSUVycnVNTmV2aS82SVNJMEo0bDh2N29RdldDQlc5cG9jQlpxeHhFWjdod3ZsbVhvU3hERjhRbE1RUUV6SGdzODFzaUlBZCsrK0lVNzZwRWpPN29Tcy82ZjJMbWIyeE12WkdLRzhkUXU0RjlDYVRtSkZpYllCeWV6UGJLaEVpZlJ4aHd0dDU4VjliaWFwK1BqRU4yZ3lCSmNRUys0bzNoTElhSW02UldQU29NV2tKWTU1bUdXS0dQVU9FTWxMcldDTGUxcTZOcitzbGhnRnp5SWkrUko1RDBwaERvT2JHWm5abVpTUzhaYURnQ1BjalpwRWFFSlQ0aUJNZkRUM1RaZENhbWsrcGVGMUdtYVhmcDlSeU0xYjY0aHg4YjVpRGRJMnBxVWJqcVdVSnhidTNFNjFEQ0NVV1htZG10UGZVMzhZMlFiMTNtZG5URXNyRTNHRTdOLy94NTRHeCtxYUt2aUJ1alNEd3N4TWFBSEhyWnpyQjdLazVKaFJQVWRhY1FFeTQ5K2VWOE5kOW5DTWduQ2MwKzNydXVxS2tHRVZNSk8ySFpyWnRKWHg5WHMvMkhGdUFldXowNXhLNHZrczF6cDdoT2N6cDJRUkpqeUZLaDNnbi95WjhxU0cyenJlVi8xK0w5bURNZTZHTDl6c3p1OWo5OS9NQ0F0TVlJait5dzRITjA1MjRlbHRCRVhwbFBSSVRHS3NGWVM5S3FtMTNwSkFRTWs4eGgwT00rNUx1SkxKak1CZG5MK0RYbFpPTW4yUS9mZmtIMkt0aHpveFlVUjArVURGRTdJQXhhQ09HRkxIcDBGcjdXRFBiMVhQb1Uxcmd1cS9JU0VvN1RUR3ZUU2xIS0U3Si9ZTytaVWg5TGxVb3RNUWF2ODBaanIrZkd1bzdvVDdiVmsrK0p5ZFVvaEVJNW9YQ3llNGRhQnMvVjFYZ21uRVZKNDNOd0JnYkc4T0hpanVsOWpmRkU0R2hCQ1J3blVad2p2M0R0SklOajhYWWh0Z1daM0JUQk1aTzV2eXNDUkRNNVJ6SkR6R0JxeUZuQURHaHlOeTkwOUtDc0gzbk9CdFY0THFQb09jVS9YYXFQTnFjK1kxZGhpNkJhOWExaDFScnpPZDZCV0VOZ2RObUhIZW1oTmlaSmNKa0lXSDdsRFRiNHVDVWlmZXNHVXJNdzBrdjVmMWw3L3g0Snc3M2RuY1A0dnlobGNwNG52VUNjL2l2QmM3clM0OW56V0p4OXZ4SnQrOFNLbTRmSWNPMnRjOFE0VHJFWGs5M3pnTDlzdEluRWFDcjk2b3kwUDg1S25zK09PY00zUWM1MHAySFhOUE00TUcvVnpYVTUzcXNFOW1YNDB5b3Z0ZEJuZGhEMmkzaG5LaXIvdXQwYjZUUDl6QjFUK2NKWmtiLzh3TjNQWFpzN05OMm9TbHpvZ0FBSUFCSlJFRlV0VWY5ZThremhkUThVK0xsM3EvcHd6eWxIRlBGNlpyVDRrQ0d2ZWloOXMrckxuRE4ydWYrSFU1SGFMT1F5RytmYjFlZjltOXpGazU2T0xoOVNwK0VFNS9wdS9lY2M4Y2pkaDlxclBsZ1hYV2N6VEQrTmM4NStDMm43RzBZKzdKTGJKcFpvNVZnSklIcldadndjcG5IMW5aRU9zZXQ3M0RDc3VRMjQzNFJRdElIdEdCTk9hc28zU3F3ZlphWjRYd25KcnI5eTByZytyRnVEVkk2ZjgxL1NoTlZlaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUl3TTRHaEI3d3pGMS9aaTRBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUVCUkFoaUY3RzFtSDNJQ3g0aWFwZ1l1SUNOb2ZMaVpJVWhJd0FqZ3dCYkI1NlVJWEZOV0x2VWpXUHI5U2x5T0M4bmZjblh3QlU5aXhwSjlEY2ZhK01ZdW5IY1pPYldsaVJFcFltQVlxTjZoRXQza2dqVC9iTjR3QmtvMW9rdnBHK3pEa3gvOUEvR3pQNlU4dElIaTVGNUFiMWE5UytCNmFpT2JacjlJTWY1T2JjWWg0aGFwZWNRTUcwc1k4elRMc09vQzE0aHI3aCtBaXNBQlFpbWxoQUpUMjYwcjNod0NOWWpldlNkUU1NUUhFVVA3UVZlaEc3L0gra3NkQlVQbG96UFNHenRxVjNtSGZKdkdManZwaDhiVWt0ODd2dzU4YjVsVHZickZBS3I1RFBPSUoxVnpxYTlQQWNNWlFyL2NPVC93czJRdXRIMVZIc1JzWXdGRDBsMnFkRjVtWmpkUExIUGZPakpmUVhBN1JVRDdlMDZFQVRIWW5IbHNZaFVVVFFSNkViaUJFenVoTHpjRFlqR1BxOVlnNzNWQzE4M2ZXSTlnckk4eGFrb29KVVlSbTM5U0JndzZHZGY2dmx0akMxQ1BuZjVjQXRjNHFQbDRvbGdPQXYrMWFESC8vUTB6UXhEcXFvMU9oRGoxUGs0SUQrZE5oRGFSejVUKzU4ZDVSeVdFdnFmM1J4d2ZJUzdSRm01VHJjZWY2TXFOa1BWWG5ZTXAzM0ZGekVFRDlVRkVBcEhya2lFMDV4d2lpbEd2a1psYklReklIZ1BqdzUwOEVhR1NjNnZhSVVqcHRpN0p1VlJhS1FMWG9YRTVKSlFtZ2VzeXJWSnkvNkJNaWNLcHhMNkJmUGY4TzZZbGhQVVFRbUJ0R2JxLzZ1K25oZ1J5em5Yemh5NGhmTktuTDVOWG0vQWE4MjJjYlREK3hzS3FDbHlIK21EYmZwQUVyc2Q4MDVSMlNRSVN1RTZqT2NmK1lWckp5c1NLN1ZYbXBJNWpWeHpXZk1HZDRYelIvWnYxS0tLOU9KanhuWW0xQ2UzdDdvUmdtMlVZY2dZZ2dldjIxZ3p4R2JKZXllazd6YmlyTGk3WnQ5NytjempIM0NuZ2ZMRlUrcUYwdWdTdWVTYTJqczRSQWU0NnN5eGR4MUNmS2pFUHA1eXJza2FKTVIxVDRKbzFBWHM0c1ZDUEx6aVJRUWo1eXgwTno5MFRuRml5cCtpSDc3aDlLOVkyaEhxL3BON0hRblM1UG51Z0QzUG1qaU5CN2h6dzMreWxjQTdqaDVUemphNys2b3NIOHEwOHlJbVQxczdldXB6Q2R1V3hoTi85ZFJGczJhZENFUC91cm4yK1c3Q2c2M0J2cE0vM01PV3NFaWYxQ0xxemYraUhJNnAyTzZsSE8vRzllcnozSEE2M1h1ajJpM3NrK2RkSDJGdmdtOGkrYm03SXZWL1RoM2x1bWNhTTM3WUh6SmlIcUM5ei9xRmgxUVd1VSt0ZmVpOC9OVi9pNFJEZ3FKWUhPQlBFcVR4cnJ6RkMzL3RqT1hlbXV1NkxqRkd2dGpSenl0NldUbDkyVTllM1QzNGxHTVhhZlV4SHNIM3F1ZzdQeEp5dzRMU1lmWnJhOGRCU0JhNVpHK0I4Q2NjcXNYQ01jd1l3MS8zRWh6dEhON0d6RkZoekJzNzNwdStkaVZEZE5mOVpoemRZZFJRQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVZnckFoSzRYcXZtVm1WRlFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFRNkNDQ21pWUVNNFN1VlljWHpuUmhiamlneDR0YXZxVVE1dHpDelI3Y0lvaUtNZUx3VFVHd1dDMEd1K3ppaDZhVTFHTWE3SDNUR2ZNMnkrUmZGUzVVN1ppejhUbmVaTzViUDFjME13U1lNTys5aVpsczVZOFNiTmtTczI4cklCZXlIbU5scHBTcXl4dW5rWGtCdm91b3lGcC9heUVZQzE5MGRlWlVGcm0vc0RFMFIrdmZEWHRXWWNtaDM5U2VQTWJWQURjWTJ4em14YjcreWgxWENMM0RLTVdEcE1nQXNZV3hXc2xHNnlsdFNoTEZrdWV1MHBoUzR6aEZrOXV1S3NOeS9WTi81SDQ4Qm9aRm1tL0ViRGt1T0RlVFAyVG9PTXZqK01HZThVbUlaRVoxK2hqTyt6NWxUTnBNUE9WSnB5NTUzRlNIVnNUa21JbEMwTlNjUUV6dXA1L1FJRUo4Y2VLZjQvUjhySVhvRWlidENLWUZyOG50TElMTnZ1alhRa0hkcWJBSHFzZE9mUytBYVVSK2NhTlNDUFQrcURHZlBjMjNFbU5ybVJDajA3VTRSVE9ucWIyMi9iMUlKNEdEVWZsOHZVa25ISGV4VElDcmtoNkVpN0xGNmhkb2VzYVI3VjkrMzh5TVA4ZDFDZU9hVzFUZjFqazU0NlcvTjdOYWVpSFVieXhSUjhDRnR0VkdmVFJHNHBoM09xaHkwM2FRQllkOUtEUDVWSHBSMUU3akdPVmx6dkNuVlI1aVRrVzR6dk51dHJVcmwwVXdITVU0RS9uTkRjMCswZnBiOXZyY0hCQmVHQ3VzaEZIYUttU0VLNXdlY0RqSWZiNHBBYmViNjdDMGFrVmw3SW9yREhDSVcrSFl3aHYxclN4enErRHkzNXUrYXEwdmcydXhudVIxTDhVVmdSQUlTdUU2RE8vWCtZVnFweXNWcTI5UHRJMXlkV3JLMmZWSyt4UTgwc3dzYWlVbmcraklZb1QyQ0llczBDVnluOXRwcDRyRm12MmMxZjV4eXpwQWljRTN0WXc2YzJiZkZlZlU2aGRDWWhCZ3JndjZyRUZpN2NjK2lHWWF1VVVpcnpmRmRuUmNDcVloZ2MxK0NQWStudUxzbG9iTXhmbWZ0ZDY4STFOcTVqbCtYSVczQStpWjJ2cEdiTHZzNm5IdHgxb0FqWUgrOXRCRUZybk1aS2Y0VkNYQlBaOU1XTUp3Rk1BWTFROG84b091TWRtbHRNZVI3bUh1L3BvdjUwdGo0NVVIcytPSklJYmQyemh4RCswZTU5WkxBZFp4ekxzdFlmQnc2dkxnbE1lWVpuSnYwMmJkTUtlT096dEZLTEM2T0tSNFpjTGFYY3lkbGFXTlJUdG5iR0U1OTl5NmxQVXZGS2NGb2xlL0JsZUs0aEhUYXpoVDg4OUVsQ2x5emhzRUpKL2VSWXdFbkFkeFZxTmNKbkxWeUo4bDN1bGFpUFZqNzRJaWM4NVg2M0wxT2wvWExDZTd1ZFN5dmx6bEhQcVhLcHZsUGlWWlZHaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUt3SUFJU3VGNVFZNmdvSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDc3hKQS9QaFVNL1BGVFJFenczZ1BnWlV1b1pPNkF1eTlJcUp5YVV1TllrYVNRNHlkeGdZWUUzekQ4QmRoMHhUeHVad3lZb3lGd0NTQ05jMkFNZWhUblREV25aellKQmVkNzJabU4ydUluK1hrNWNjdEtVQTJwQnlyL216dUJmUm1mU1Z3WFU0RUlDVHlBT3NTeGp6Tk5sdGx3NTVkblRHSi84Nzl4SW1SL1dDQkwrUFVBalVZc1p4WkNkOGhOTmtNZk92dVh3bGZmenFUVVpmeGUrbittVm04SzBUSElQdWo3bHNUU2tzQzEyYUkrenpYR1RLbGlqK0hXQ0xDd056aUZTT0pvU0FzOFRFbnN1bm5qNERmc3p3ak1jU1M5bkIxKzV1TWpzU2NiaDgzbDBtZFEzWWxqeU1WRElRUjBlZ0tjRVI4ZnI5S3RPKzNYWkgxdXdpTVNHQTNNOE1nMHcrc0xkN3E1dTVIbTlrdWdlL0xnNXlBUVZmeDN1aldJODE0dWV1cTJOaUFRQTBHbnUvcktrVEg3Mk1MVUkrZC9sd0MxekZ4aTVUbUNNMU5FVXpkenN3K241SkFqemdoMFkyU3dnMDRiMkkraGtPblppZ2h3aDZyN3RNRFlsL01rUkc0dnNRNWxycE5KZXlOY1RtQ1lUZnZFTEpKeGNwZUFIUDAwdnNNcWZtdmFyd1VnV3ZHVnVhMXpYdURvVDJRZFJPNDdscWZyRXFmNkxNdWlYMERQK0MrZjhkNGxSOGlIb2RJTmZ1dk9BYjB3M2VjUTRsenZSK3VVdTNYdnRmTWNGTFRERzFDK0FoR01MZmZ1YVhoZmxtSjZqeldPYUpKYVY4SlhKZmJwMHJoclRnaTBFVkFBdGRkaFA3eSs5VDdoMm1sS2h1TE9Tam5Rc3lKRWJWbS90MGxzTU04aUc5RmFKK1Q1MU9jK0QzVU9iZHB6cWsrNHh4RG5PMmxJWUhyeTlwY0F0ZGwrLytTVWl2aDVLOVBmVklGcm5sWFgrNzJTcHY1Zk5lSjB2dWlYbjNLc2lyUHRIMGJWcVVPZmptSHJGSHF0R0puWU0yODJHLzhUMjg5ZzhQT0E3eHZEMDdRdWM5UU8yeWJpaXZ2dzRHSjM3R2haZG9JYStpbG5VTU9iWk5WZUw3dkh2YlNSR1c3V09lZVRUVFRTNzFmZytnbDk2T1kwNTdVVmFDRTM3a3Z4ejR3NHBzSUVLZk1oeE9TN1IwbDl0MnVFMnhqbkxOL0UrcGJPZTBYNnRNNTM2VFNEcXBEMy9pWXVIZnZ4Z2s4R051Nzg2TWlNSTFvNmh3aDl0M0srUllzYlN6S0tYc2Jjd2xjdC9mSVZiNEhOOGU3TmthZWJXY0tuUGNpY0k5RDVEb3NUZUQ2OXM1QmpuOG52Y25xNEdxZDhhTEdtdUlPbFVPZGQxV0MySjh5czcxSCtDNDM5N1FRdWNaSmFOT3BEV1htcmp3T2MyT0I4bkZ2cVJia0h0TDJtdjhNb2FkblJVQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJHQ0JCQ1J3dmNCR1VaRkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUW1KOUJsSEVPQlNvc1VidUtNMysvcjFUYkhXR1pLVUp0WEJyNGZyMFRvdUFUZURESHhtUkpsdTY0VG84RUlkT3JRUnhCbzZqS3VRbjZwRjlCRGRaSEFkVG5oSUFsY3Q3OHRpUEllVndrMDd4Q0loamdzQXY1ekczR0dhakNsUUEzZlNjVERFUDcxd3lsbXRwT1pJUmlaRTlxTTMvK2pFaG5iMXN5K21KUGd5SEZqWTFLZDdWemZEUVFTTUY1dUNrci8yZ2xPTnBHVU5wQnRwbzBSOVdNcU1jczNPT2NUc2FaQWNQbDVab1pBM3B1ZHlINVhzMkZNaFZHbEx3elU5VnpzOStzNHdlbnRBeEVRNjd5bm1mM1kvVWE5NlBmUHlNeU11UnhsUnBpelMxQXBNK20vUnE4TjJyWkpTQUJ4NnllYTJmRUpjUlZGQk1ZZzhBNHoyOU5MMkJjWmpuMFRNSnhrZk9uNnhnd1JDNk5vR04venZpTzY3UWVNTTU5VzRIM3VLOTZSMmlaanA3OVJCSzdoeWR6dTBGU3dHZkg0SmpOM3hCbFRNNVFTa0NEOWtCZzgzMWZlRTc0N3BRTk9wMGliZDJ6cVVJcmIxT1dlTzc4VWdXdi9mVVpFL0FGbTlrbXY4Rk1JWE9QUWhIbGhUcmlSMjA5ck9oNHBzWDdZQ09KY2NNeGRsOFMrZ1lnLzQ4Z0lBUU5mZUNaSHFLZlp0bTF6Y2NZeTFwVXhrWnVRMkQ1Q3BwVHhmSzhEcFFoRzRLRHA4V2IydzR6T2x5T1FsTHYrQ24xblF5STFmWVNUUXZPa05nR2NvZUpPR1VnVlZRUUdFWkRBZFJxK0tmY1AwMHEwakZpeGZiNmNPV2d6RFFTVm50S3lmelZrelJyYjI4Lzk1b2ZlbWI3ZmRGb3hWS2VVTWtuZ2VobnZRTWxTc1ArSmd6MzJWYnIyYjBybVc2ZVZLbkJOZk1Ud1Q2OGNzWEhtM1F3cGZYZU1zcytWcGdTdXIwZytkQWFHVU51MUVoc0pKMzRJejlYdlFPeGVSV0p5dmFLRm5IZjZDZDNIekhDaXlibkwwSFBQMEhoTy9WblhmYlZYRGNaN0tMU1BRRzZsaEVISEsvbkdTN252SHZiU1JHVzdXbWJJbmErMit6WHMxZkE3ZXlRNEZtVy9lTWg4cmxtUDV2ZjBLMmIyRWpkV2pIWE8yY1h3VnM3NTZXYVJpQks0RG9PWlMrQWFoNXlzcFRpL2JndHR6dXE2K3NUUTN5VndIU2NvZ2V2MjNpV0I2NkZ2MzdEbjI4NFVmdVB1K1gzT3kySXBBdGVzTVpqNzREemltaTBZWHVhYzNQUE54ZUVFWXROUGN2RzV3M1EvTS92Qk1JeVhlenAyUnhLblZkeUpZTTFNb0N6Y3BjU2hSaXpnVEJkSDRUaUxHeEkwL3hsQ1Q4K0tnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUl3QUlKU09CNmdZMmlJb21BQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDRXhPNEk1T3ZCbEI1YTdBWmQ3blY1ZDNFVnY3VTFma2x0K1hjcGs2cFFvWVJyMnRjWG02ZmdiRFJ5NHB2eThsa1VBYzlxZ1I1YnhOSmRTMWhabmR3eG04M0tsRElMTm5ka21QWWF5S3NPVWJlNGdzSldXd1pwSEdGTGhHUUFLaCtLa0NZa3RjeU1lZ29LOTRRNmlzUThRdFV1c3VnZXQyVXZlcVJMSE9OTE9yZXRFdWRXSlpDRjh0TVV3cFVOTm1STXAzNEwwOUFMVUp5UG5DcHoyU0wvN0lVZ1d1UXh4RFJ2bTVBbXNwQVBtT1kweUZzUFZkT2g1Zy9rUmZRZkNIZ0hqMFk1MGppelpqcmpyWm43cDg2UGUrZ0YxS1dZa1RFeDZ0bnc4WlErY0lVVkEzeEZBdzRCMHlSMHl0RHd6M01MUERYZDFpejlYaWhPZWtKcXg0SWxDUXdLWm1obUdqYi9qNGRUUGJ6c3pvbndUR2swUE03TGxlM3F3M2NIYnp3WTR5RFoxUFBkaUpOVFNkQlpEbHo1ekRoZThXWU5KWHZDTTE2N0hUWDBXQjY5aTNHNE5uUkUzcG02WEdhMFN5RG5EZk9yL05YbFd0SWZaTmJjaVdlSHczTVlMMjczb05GV0dIRS9zVFcxWE9FTzVhemV1MnJNU0Q3MjVtTi9jY2FCU29RbElTckx0NDkzQ2l3dDRMN2FXUVRxQkw0QnJSY3NUUUg5WkkwbmZ5VWY4MGhjQjFIeUc1MEg2YUJLNHZhOUJjcHJGdklPTGppQms5b3BEQU5hSUppTmo0VGkvcWt2T2RPYkJGWkMyMDdtR2VRRjlHbksyZVQ2UUlSakRuWUZ6T0ZXQ1V3SFU1UjJ6cG81cGlpa0NjZ0FTdTAzckhsUHVIYVNWYVJxd1NBdGZVQkNjaHpNL1A2QkFLSGJKbVhRZUI2OSs1UGNaLzc5RTlRbnh5aE1wN1pCbDhCUEZGemhrMldxQi9JOTcra0VqRmNFNkNVOHphWWVBYzljOFJ1S1o4b2ZnaHh5bGQ1d0Z6MU5YUHM2K0FxZ1N1cjloNi9oa1lhdzFFcTMxbmVQL3B6alp3Rk9RSEhIdnl2bHprZm5ocDlXM1lmNktPOHJIS3ljS2pHbm1Ic2tXZzdsUzM3NE1nTGc3Z2NJN1pONVIyV05DM0hDblB4ZTdsU09BNmhWN1pPSDMzc05kZDRKbzdDMmU1TXhYL0RLT0V3SFhzSGdCM1l4NWtabDh1MncyU1V1c2FROGNVdUthQTdFL2pGTEFyTUYvZ0hLd1p1RS8wODY0SDNlKzBKLzI3MmE1RDlqbm5Fcmkrc3hNazc3cS85UVUzcjhSWjk5UmhUSUZydnE4NVR2Unk2ODRkQi9ab0VSSnZobFg1anNYWWwxeTN4ZWEzSlJoSjREcTN4NWFMMzNXLzV3WFZ2ZEdEQTlrdDRVNDJaV2Z0aVZoMUxIQWV5bmtKL2JjKzYvaC9BM2QvRU1EbXUxZ3E1TnlSNUY0MzZ4ejJ2MktCc1Iwbk4wUDJCVUxqeERyT2YwcTFzZElSQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRZ2RrSlNPQjY5aVpRQVVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkJaQ2dNdk4remxEUmQ4b0tGUkVqRjB4MnUweVhJOVZEeVBDejFUQ2poZzlOMFBKQy95bDBBNFYwa0k0SE9GTGhLeTVrUHkzWm5iYmdLRlBxZkoycFlPSU5TSjFYM1QvSUxEM2pZWjRjZGZ6K2oyZHdKZ0MxK21sS0I5VEF0ZGhwcXRvMk1OWkdTSmJqT2QrUUZRUEk0eGMwYXZ5UFM2YzRwUUNOYzkyblB5U2hJUWZVdXZmSm5CTkdpV016VkxMa2hJdkp0SmFQNXNySkplU1owcWNPUVN1ZVc4UXZueDlKU1ozejRSQzhvNjl5TXo0L3ZxQitSQk9KWGpYVWdOaTJUamVRSndSWTlFVWNWTEt2SThUSDQzbEV6T0dma0kxaHpreThoQkdaMGU1ZEpsTFlIZzJkZWhpK0F3bmdqMTF1WlNmQ0VBZ050YnovdTdxQ1FURUJPVVJqOSt4RWwyNU1JSTBKTlpLVk41SEJKaE82MmlLNjFlT2RrNHlzMjBDOFhaMzczaUoxdXdyM3BHYTk5anByNkxBTmV6NHhpRFlFd3A4bHhEcEdCcENJaFoxbXFVY3B0eXlFbnhEck9qV1htRy9Yd2xIYko4Z25zQjd3anUyZFdNOXpyZWMrZnNjZ2U4bjM5M1BWV01CODBtTW43L3Ezdk9MNXlqUUJzcXpTK0NhUHZDSmFoN1hkUEQyRVNlRWRZbkhJWlJXYUZ6c3lyTk9ObGQ0THRZc04zTHp3RnMwSWlDRXZsdFZqN01IdEdYb20vVXRNMFBvMldjeklKdWlqektIUnJDL0dYTFdKVGlhT1M0Z1dNaDdpZkExZ2dTaDlzMFZUK29Tb2tnUjdva0pEQ0x5LzJRelk1eDd1WmtoYWhFTENBd2hPTWZjdnMrOFhRTFhFcmd1K2dJcnNjRUVKSENkaG5ESy9jTzBFaTBqVmltQjY5VGFMRlhnR3BHaTU2Uld3b3ZIV2d1SFZMbnprQ0ZuUnFHaUxrWGd1aWZHeFQrR1krTFR6Y3gzVU1pOEN1RmYrbmJLM3V5WUZjMWRaOFJFUEgxSG5odFo0Qm9STmRwMmpNQSt3OE1EenJuWUgySE1DWjBSNUphRGV3YU1KYzJRdTBieDgvVDdFV3NpSE9NZ2N0ME0zT05BWU83OUFaRko0dUZNamI3RWZsT2I0OWhZbld1blh6Z0Y1QjREYTdLdmRRak5mOGV0Mzg1dEFSbGFrNTNubkp2M3Zlc2lnZXZjbnF2NEVPaTdoODArRnZzZGlDeVdDcUd4cE5SWXhSandtcDZPKzdyT3ovMzZ2N3U2KzhRNVpwOTlEdExpL0pUOUZPN0srZUdkN251Zkl2UmNxbDFJQjJlU3pEL1l6NDZGc1FXdVM5WW5ONjJVZmJKWW1uTUpYTE12eTNsNU0vQSs0VWloS2NvOHBHNjVIUDM0WXdwY2ozMnZKVFl2SFR2Zm9jenI1eVZ3WFlya2VxWEQvUFhWemhGdXFPWnZkL2Y4V0p2NllXNkJhK1lybEcvbmxpWmpQSHhNZFQvaHc0MDROemF6TTUxRG11YWpPS205bjVuOW9FQVh3RkVQNXlQYzAvRERCOXc1bTgvME9tYjJqc0FlVVBONXpxc1I0dWZPVkorZytVOGZhbnBHQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkJaTVFBTFhDMjRjRlUwRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkdBV0FseHlmb2t6MUVrcEFJSnJpS01nb3BOak5CUzdtRHZVQUNtbHpEbHhoZ3Bwa1JlWG5ER1duVEpJeEhwSzJ2Rzhob2dWTE5sSVJ3TFg0VFpmUllIck5nTnpYOUJnR1cvVlphV1lTcUFHWXhYRXZrT0NCeGp5djdRbm1EczdjYjFOSXM4dnpTQXYxci9yNG1NOGZIUlBGa01lbTFMZ0dpTXl4Q2t3Sk5zeW9kQUlVZlA5Ui9TaExYQm0vUUFuV28wempKeUFjUlZHWGdqWklZd1pDNDl5b2hOdFRreGl4dENoN3hGMVErd1FJNjhTb2h3NWRRN0ZoU0Z0UXgrOGRpUENoNXhoM0ZLRitvZldXODh2bjhEVEl3THJpQ0Q1QWpGdFFncHRRdTE4UnhCbnZXOEFCd0w3YldKZDVJa3d4cXNDejVaK2YvcUtkNlMyOHRqcHI2ckFkYTVCYkNydjFIaUhPNEh0SVNJZ2ZIOXg3UEFrTDFQMkg1aXZ2aStoTUlqRTg1NU1HU1JpUFNYdHkvTHFFcHRtN3I2L1Y3VFluRDQycmh4UXpTOXdGRllISEFTODBFc3pOSmZQRlo2Ym1tQm92RmlpRTdvbWx4Sk1mV2RHL3RneVZPQ2FNV3pmUUw5cjFpTlYzQ2JVZnhGM1FPU2J2VndFLzJNQmdUb0VKZm9LTEpEdVJoRzQ3dUlkV3Z1MkNVZE4vYTRxUHhHb0NVamdPcTB2VExWL21GYWE1Y1NTd1BVNGJaSGlhR1BJbVZHbzFCSzRIcWN0U1JXbmVxY0c5b0VSeFdXdmxmUHhKWVRjT1hITTZhbnYrR2NqQzF5UDJXNmhPVHY1dmNITTlzNjhTeEVyWjZqTmh3aGNoNFRrRG5OaTFjZDdoYWpYaUlpdW51QkVXUDF5NGxRS3NicWZWei80UEg3bW5IMzkxQWxZWCtET05kaS94N21mTHhqZjViZ1RaMDg3dURUYjJqWG16SnhuV0JOUzM5d2dnZXRjWW9vUGdiSDNzSE1vaDhhU3VkYSt2T3M0Y21Qc3dJblg3VElxTW5UdmFpdDN6dG9VSVNaN3hxdHRLL0hzNzJhVXBWVFUyTGVrbWI0RXJzTzA1eEs0RGprYXhha2wzMFMrLzgyQVE5SkRTM1dXakhSV1dlQWF4MzV3MjhLcjc1dXJNeUljTlBJdHgzSG9Xeko0VEJsMUNvSHJtQU1YR0gxbFlHVlg4Ujdjd0NyUC9ualhIQmlId0t4Skw0cVVkRTZCNisyY2dEVE9HbUtoYlUwZCt3WnlONGt6a0p5NzZhSDg3K1crKzFmMWZ1Uk05NkZ1RHlEMDNMWGNuUS91eGNVQzMyYk9vNXZuaDIyZFNmT2YyVjgxRlVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRXhpTWdnZXZ4MkNwbEVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJDQjFTYUE0ZTYvQmtTa1lyVTZ6b21uL1RpeDJnOXlocEgrUHUwN25XQjJZaktqUmtPRUJxSEVYYnhjY29TMGVQUjVabmJ3Q0NVTmlWaHpTVHBrQURwQzlrb3lnY0FRc1lKMUVMakdFT25ZeXZENFlSN0w3MWZqdzczTjdQd0V4aWxSUXNhaVBGZGFRSGdWRFh0OE1hK2FKK0pYOXkvWUJpbnRsQnRuS29FYWpGZ1FkL0MvVnhqTzM4L012cFpiY0JlL1N6QTZKSDdhTTZzaWp6RXYrSXlaYlJaSnJmVDdsRnJvS1FTdUVYall3d25UTmNXVFkyVkVkSG8vTTBOWU5rZFkrY3JPZUJ1eGl4dW1BcWlNcEQ3clJCeGlCbXgzZHlMdDErMUlzODBZK3NHVldBVnpOSVF5Y054eGJnSGpzWXdxSmtlbGZlRCtSRFBqSFgyZ21YMDUrV2xGRklHeUJHTHpuRFpSeFpqakNVUVU2TThZZlBxaDdYdkMyZ0JEMGw5R3FvYnpodFBON0pyZTc4Um5IbkJPUVNSamkzZU1uZjZxQ2x4M0dVRVhiT0lySkhXeW1lM2FZbUNkbWpmR3drY0dJci9Meko1V2ZaLzU3bmFGTHNjaVhjL0hmbytKV0xPT3VhUnZvbnB1RUlFMmdldVFhTmVsYnJ6N2RDRFhJZjFHQXRlRG1qSDU0Vnd4djFEQy9yY1hCeTY3TmNhV0lRTFhxV053bCtCeVhlNlkrRUlYTU9id2lNRDh0aXRpeCs4U3VQNkx3SldDQ0N5RmdBU3UwMXBpcXYzRHROSXNKNVlFcnNkcEN3bGNqOE4xamxRNUgwYnc5cWxlNWszaDNqbktGY3F6ejV3NGRFYVBHUEY5cW4xVnp1Y0lFcmpPYitIWXZsN3BmYmJTQXRlY1JUVUZJYmtIOFJBenU0WVRzVzZTYUFySjN0N01jSkIzNndBcVJEMTNjb0xWcktrUTRmdGhRTUM2alRMbkpUaVRDam5tNHpuV1VZamhmcmlqcWRyT1I3NWpacHg5Y042Ukd5UnduVXRNOFNFdzloNTJEdVc1QmE0NVArRU1ndjNqUjVwWjF4bG1yRzY4eHpqL1JEQS9OMXpGaVZVaURPdUhOcWVqdWZua3hNZUJ3TWNyQjZtYys3UUZDVnlINmN3aGNMMnB1L3Q0TjY5STd6WXp6akJ3cE42OFo4TC81eHVaYzRjZ3B3L0Y0czRsY0kxNFBZNTRENm51Z3FiZUowMnBML04xNWdFSU9ITS9JTlhwUlVyYXBlTk1JWEJkdXN6TjlHTG4wRXU2M3p0bS9hZE91K3RNSVdWdE1ZZkFOZDlVNXU2djdBREdPb0Y3Mkt3TlFtSE1OUlZsNUx5WnVZY2ZVaHgvc3o3aUxsSm8za0I2T05PbC9tM24xcHIvVFAxR0tUOFJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJtSW1BQks1bkFxOXNSVUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVWb1lBRjRjUlo4YkFvaTFnUklqb0dpS0xLUUd4bUtNQ0VWTU13RlBTTHhISE4raXMwOHdSMHVLWkhaMDRhcDh5WWRSeU5UTzdrdmZ3dmkwR25WMzUzS1FTcDBTbzlJc0xGYWZzS3Y4cS9TNkI2L2JXbWtwSVF3TFg0WGE0ampPb1E5elNEeGlNTTg0c09Vd2hVTk5tNElJNE80WXZmK3dKQ1lHOVQwV00vMGx5eURqZnMwaXRqOFVNNzNpSWJ4VUNxcDhmSStPT05JY0lYTk4yQ0ZGL0w1TEhMOXp2Q0g2a0JnVHhjR3d4eEVDek5zakUwRE5GNkJxeHVrTWpCVXdWdCtieE5tUG8xUG92SVI1M0FCN2dqTDl4VktJZ0FuTVJRTnpsckVvZ2dibDNNMkM0aVVqTXJ5TUZpd25WdmNMTVhoS1l2N2VOendqUzRFZ0VvV0UvTUE4NDBUbHI4SC9iUGJKV0c4SnliUEdPc2ROZlZZRnIyb3h4RVVQL3R6bEQveUh0bVBKc1gwY1BvYlMzcW9ST3pxeStjemZ3ZmtSd2Evc1dBMmcvcmE1NVYxdTlFTEgrVHlmczFJejNTZmQrL1M0RmloZUhiejNDWWV5ZlRDMWswYU80Sy9WSW04QjE2RDF1Y3hTQ3NUck8zSGJvUVVBQzF6Mmc5WGlrajVpZm53MWo1QkhPd1Y5SUhLS3Z3SFdYR0Z1ekhLa0MxN2w5a3ZHWXZVM1d6bi9xd2RkL1pHcVJ3OUI3bE5zZUlZY2pYYnhEQWlBYlphMVVvQnNvaVFVUmtNQjFXbU5Nc1grWVZwSmx4WnBxWDc2dWRhZ2RVc2ZXMk41KzdsbGkyenRUcW5WU3lqVGt6Q2hVemhDZnBnQnRxYnF0V3pyTVExZ0xOTTltajNFT21tTk9CdWRpMUdkT3pCcWJmbklIcjlBSWpKN2cvaFlhSnhBT1JMUXN0cWMxSmdQRUkxL3JDYUNtamlOamxxdVpkc3loN1AvUDNudEE2N09VZGJydlVoYzZ1RkFVQ1pjZ0dVa1N2Q0E1aVVSWlE1QWtlVVNYdzBhQUFBQWdBRWxFUVZSQXNpVFhrQVZFVUpJZ2lDUmxLVG1LZ09Rd0JFRk1DQklFRkJoQVFRUkU0TW80T1BmMjQ2bStwMCtmcXU3cTlIM2YzdnVwdFk1LzNGOTFWZlhUM1JYZXF2ZjNsbXg2Yzl2RnN6bFQ3MkpzQ3p5ZnFlbHNLZmdkOXBjMnRiWkxCR1BiOTZIOXJkKy9sRVN1bDRyQll6ZGhqK3lSaFJ2Q1ZvT3RpMzI2b1lUOWt6ellrUHFKTWdodys1YXAwRkorQmE1bmdqdmhsMjF0dzU2Q2Q5Y0MxOWhmRUxyOTJiUy8zaGNEbnRKMjdCM3MvejByblhtcUNZQ1lLNTlBMW05dHpsMmRvZmNqL2NMTkl1S2JVeHExUWw0WXNUZDgzMTVaQkNZbjRCWjduMjNhVXVDYWdJRE1lNzVWY1UvblM0RUN1bGtSTGEzdFcrbnZiOVN6LzQvWmJZYWF0UStCNjlJZUhUWTVCRlBaSitUZGI5UFNJT29WanlXYlpSOEMxOTF4ZUsxOUkyeXV2RE9jWTcxZzcwNEoyc3U1MVRtQzkzTzUxbHgzMUFXdVMvdmRwZlV2WjZ5WVIvYjM5V3BZN1RvUC9SeDdrSWV5VDhjNHdGbWpKeFpBMEg4Z0RzM1lOWlQySVhCTmU2NmNncytVZ2xiVXJxbC9wYkFPbUhwZXU4K29OTzVQV1Jjd2JqMHQ3YnQweS8rZEpPYmZuNU00LzluMVYyMTlFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUU9oSUFDMXdmeUlHeUdCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa2NOQUVzS1grZUNPSy9Oem1JUExsQ3kyZDZwejVrSWg0YktZc0hKcGVkUUEwU29LUVU0VzB1SlZMTjQ2VE9ITDJuVTNiMjhRUkdBY2toSlUra0lRMlB4b1JYNGtJaEZoZWszRzhmRkZFM0c2R1FEVmlPQzlMRGg4NGhUN2hnQTdxSDhCalg3MEpTOFFLY3M3akpSRlozaE9jdTlkTUhPRC9hdU5BbkhNSXpEbUcxWWczOU51M0t5RU5CYTd6YndhTzIzK2NSQSs3T1hCYXZHWWo1UGErTlYrb0RjcmFoVUROSlZQL25YUEErYm1JZU1tQyt4b1RCNXZienk5bzB1Q2xROEVhdnBoRUdoa2pkNTJXQ0Z5UHRaVitqZlQ0c1l5TkVNTDdJK0xPamFnQzQvZGFDUWROdmxQbVdKY3BGUHFGSkU3NzZjenZYSU1BeFhrcUczUm9naUNWelRhYkJBNldRQ21nejFnUUNiN1p0emNDMHhmcTNSa0NCbGR2MWdDZjZ2MGRvWVVoTVJlY1BYKyt0MjVnZlVjZlIxdjZDYUYrMmo1WEZLTDBRTFlXNzlpNi9GMExYRzh4RC9qK0pNaDhxMllPeUhvWDhYVWNjWmNtSE1DL2xNYkNQMHp6eXhyeGk3RjZTeUpFQ0xjekQzdnBXQUdkMzduMzNMcTZ6Y0w3L3JsbW5ZeUlFNEdnUHRhSW1Id28zZGUzazBNNWdnbmR4Qmg4eFpsQkxkcGdXbTlMb3JwTEFtTk13SEFpc3BZRXJwbW41c1RTaHdLRkFHeEtzSkF1NE9NaWNNMGNsNkFIYTN6VFc3eUE5MGdCYWJwbHo3Rk5NT2QrZlVUY3Mra2JFU0xvcHFtQ3lsdzdSZHlhL0ZPRWUwcWllWDIraUI4eFI2QS9XeXVOcldIWHFxY3RadzJCNjF5YngzZ3JjTDMyazdTOHJRZ29jRjFIZGhmMnc3cVdIRmF1WGRubDI3dFc0UHJVNTA4Z3ZUZjNiUEpMYkhJS1hLLy9iWjBsSXQ3UTJ3OG5ZRFBydUVPY0Y4OFJ1RVowanIwTjl1UzdxV3V6eXZVVFErOHErOC9NVmRuSGZNYkUvV3VDVWlGZS9kdHBuNXgxZno4ZCtoeU5lMkROZWRGZXc0ZnM5K3UvdmROTHpBWDdmbFJUREtKeXRmMUxmeDlpcWJnMTd4SUNyM2NyM0E3NzE3ZEo1eDF5NzBwN0dUWXYzc1c3Rk1yaDIrR2N4RkFaUTBSemUxTmpRVlduUDZGMXJzZ0p4Rk55YnMyMVRvMldVaUt3dFExN0N2bGRDMXd2dFNtMG90YlliYkRodG9HOGNxTC9OUnpPR0JIUDZZbEdjeDNuSkJBUDNVVlFaKzZCTTJIdHZaUkVjTEZmY2s3dkRwMGIyMUxnZXNyY2RJN2RyUHQ4NXRodGhwN3ZQZ1N1YzdZNnhnTUV5Ykd0NXVaY1l6YnBtbmQ0YXA1ZEMxeXpEL21nSm5Eb3IvY2FTdUR4dXpiQjA5OHhjUXpHM29wNE5jS3kvZmxXdHdxK2EyeThhKzl4VHVYZHpYL1VCYTVMN1MvWjRaZjI5MHRZVDcxMlNuODN0ZXlwK2NmMkZHb0R2RkR2dmdTdXFaczFKdWVTdThHaStQdkRVMzlRODIyZVA1M1RPMWNQNGhRaDZqNy83bm5wL205VHowYjBSYTZIK3AybDM4TkptUDlNL1ZiTUx3RUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VqZ1NCQlE0UHBJUENZYktRRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1J3SUFRNVQzN0lSMG4xcTR4QjQxazZiUHBJY0NmNnBzcDNZWm5FR3h2bXdtMW9uai9kVWxyTlZ0ck1sVWJsTDlDcVljbGk4ZXlubElUckhBZWUvVElKWkgyNkVyRDdUYzFncTNROE9Hamk0ZEJOT1c5ZU5DTVN4YTFQT2dRUkJMWVN5RVNjMXJVOWdiWUhya2doUFNjQjV5UjBOQ2Y1c0xYQ042REpPRDRqSnJaRVV1RDQ5UlFRTS9pQWlicDBCL0thSXVPa1JFTC9maFVBTlR2d0VBK2dueE1JUUFVZk1jVWthdW9jNS9meVN0b3hkZS84bVVFTmYyTEc5WnA5dDNWcmcrdmNLYzRMMjNuRndab3dtUU1WY0lZUXg5b3pmRjJ1K1Naek5HYk83em1BNHhTSTZ5QnlxbThiRXJiL2NtOHR4YlkwREgyTHZPQ3YrOEZpajkvdzdZaWdmM0hNYnJQNWtFeWdKQmRGUE1JZC82d2lla2xnZDY3RDc5Zm9iZ2dZUlBLaVVja0k2VjB0dE9FUHZvam5CZkdxZmRHaytSbisweHB3UEI5RmN3SmUxeXFmZlF5UzVtOFlFTW12WUVLaUd0ZUlOZTVsL1B5THVXRlBBTWMzRDJJZVkwWDB6OXpkWG9PREppVE9CcGJCaE1FNFFtT0tmSzk3Qm5BamRYUHRGWHpDWitoRWRSOWpldEp4QXJxOUIvSVh2NmRxOTRna1lnQ2dHNHVaRDZZSkpSQm54LzFwUitPTWljTDM4aWV5K2hEa0MxNGpSSWJpQ3lBS0NmTjAwVmFpSGQrUnhFZkdBQ2JjK1pUd3BpVHQwcTJNdS9Nc2JDREF1RldPWWdPUS9zeXB3UFpXWStVOGFBUVd1NjU3NEx1eUhkUzA1ckZ3S1hKL3lQRjdSQlBtOHo4eEh3Nzdkelh2WDFzeERhZ1ZqYTV1MWRubTE5UjduZkgyUnd1Y2wrMjkvbm5nb0RPWUlYTlAyWENEcWJyQ3RXb0hyL3RtQmYybUNwMTR2MmN0ckdYV1pFN0NSdWV6ZjlpNCtkSUhybkZBMHQxRFRMOVJ5V2p0Zjdqd0V6dys3NGQ5TUVMaW1YYTJ0Zy9NUG5DV1plKzRBK3h0Mkg0TDE1Rkt0dUhWSlZMTXRrL01SN0VOL2ZRSFVrdGpqZ2lKM2Zxa0MxenRIbmhXT24ySVRXTFBGdXhhNHB1MURjL09oZXh2YXZ4eGFGNjNKYTR1eXV2ZUZQZW1GU1Z5N1cxZDdGZzlCZmdXdXg1L0NyZ1d1RVV4OWRacjdkRnZIdnNNMTB0NERBUnY2QWZYWW8yQyt0R1FjR3FkeDJoeTdGcmhtaklGTlgrUzJiUlcvc1JZYkMvN0ptTTdjaFAzUlVrRHdQZ3ZPVG5BbTlWQ1NBdGVIOGlSTzM0NmE4ekc3YUQxandFTUxaOVBhK3FjRVo5bW53SFYvSHM0OGg2REZyNTE0bnFvMHZuTSs2d2JwdlBXVVo4TTVLODVJOXRQY2VWZ3JjazNBY214RFEvMjU4NS9UVWorVTcyN0srMk5lQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUtUQ1Nod1BSbVpGMGhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNDSncwRUhQODFZakFjUlVoVkJ4T2F4UENZMitPaU12MUx2aHFJN1IyMVViYzZXTzFCVzJRandQSXo0aUl1MlRLcmhYU1F2enhJdW4rRUVIN3JRckJyS0ZieVRtODRCaDZsY2FKQ1JHNm1vUTlISWRTbkpQN0RpUUthdFVRbkpkSGdldGhiaVduaWlYQ0Vya2FyNU1jSnZ1L0lYTDJsbm1QTm5zVnp1Q0ljNSt6OStzaENoUmVJQ0xlMnpqVG5TTnpKemlYSUpwNzZHbHJnWnJTV0FXWFJ6WC9CL0hycFdsSU5Qb2J5Vm52cjVkV3NzTDFwY0FVYmRFSWN5S1czaGRaWHFIcTBTSzJGcmorOVNRcTNYZDJlbjlFL05MR3d0YTVtMmRld2J3THdieExSY1RQUk1RYmV4bXZsT1psUDFLZ2h6TVljd0dFOTdxcHhwR28xRytQUHFnZFoxQ1lZY2ZBcmU1MEJCQ2xKMmhQWHd5KzY5UStoTzA4U2V3V3A4aHU2b3JNOFBkYW9VbldiazlQQmEwZHpLZjI4VzhSa0tXMjdxM3l6WFY2N2JhbjlBd1BjZjY0RmNkY3VZZ012U3l6ZHYxa000ZGxidi9aa2NZZ0hNNTN4RHpoc2hIeHpCUmdhdTQ5bEw1cEhLSVJIcWxOZk5Pc0Z5NmN1UUJoWGVZZC83dTJNUE5sQ2VUNkdteE51ZUFjYXdtTjVlcFU0SHAvTCtoYXo3VzlneWtDMTloTEVlZkhqbGRLQk1aQi9LMmJwb3duck0yd005NHpVOEcvUmdSQzdLK2ZLQlpSKzdScTV4MjE1WTNsVStCNmpKQy9uM1FDQ2x6WHZRRmIydy9yV3JGK0xvUzk3ckdnV1BiQmJ0U3NFL3UySS9hS1hyZGdUc3E4Ni9HTnpZeTFhemZsbmtPTkhZb3lTbXZKcVdOKzdwdFpzdTZhR3dSMEYydmovNUdlN3pjWHZDTW45ZEsrUFFaaFBJU0x2M1hBUU9ZS1hDTWdqRjIvbTdydlRxM0E5YU5Ub0podU9lOU8zMjZOYUdQSlR2V1l0QS96SDZuZ1F4YTRMdDNEMUFEaHUzN05jdTlPTjZEbVZBSDk4MFVFL1E1anlaeUV6ZVFQSTZJZmdMd3RDM3NKKzFDdnFpaThaRmZpMGxyYjBsZzFDbHlQRWZMM0hJSGNkelhGSnJBbTFYMElYSThGNitUK0NCTGE5L1U5Q1FMWEJFQjhjZWJlNzU3RWtmdHp6eUVtdVRHOE5EL01qYTlUQWx0UHNadmwzdDljVzVkOEU3c1d1TDVrRTFTUmVROW5CTHVKTTRmc3kvRSs1L1lXNWdiUFhOSUg3RnJnK3R5TlRaNmdRSnhyS0NYRzlvY2xXMmMvbU13Y1lXc0MzajZ4MlJzaVFNMVhLbUNWMXRVSWtGUEdXbW1YQXRjSS8rYVlMd2tPbmdzQUM1dlMvdGl1YmNoTG5sT3RYV0pKSFdQWDF1d3BQQ2tpSGp6QlZyTlBnV3Z1dHoxN2pUZzk2ODQ1NThCTGF5eks1N3o2SXlic2dkQWZjVGIwb3BtSGtRc3VQdmJNMnQ4NU04KzVxN0Y5WGVjL3B5VjZDTjlkN1RNMm53UWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNDQjJRUVV1SjZOemdzbElBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1FRSGdLK1ZoRkRIRHV0MmNaWEVvYVk0eW15Qkg1dnhnNUtvVkwvOGp5Y2hyYytuSDhpTFFOSUZrNUQxTlJxQnlTdEd4SS8yTGtSUW1rUDlPSzdNVFloK3Y2TTVvUDA5blFJbzc3cU5JUGhiS3dzZGN1UkViT0I2U2FTenNqaXpWUkpZSW5DZGN6Z29PWE50SVlvdzVEZzJWN3loaisyb0NLVldQdTVpdGlWQ0dVdnJMbDEvcitRb2x1dnJyaGtSWDlxcTRoWEwzVnFnNXZwSmdMQy9uOWdYRjExeVN5Vm5zTFpNeERPZXRhU0NsYTVGN0FiSDE0c1h5cHNxS0xOU3MvNnptRjBJWEhlZDhGNmRIQzF4d2xveXRxL0I0QWNqZ3I2Nm5ZUHhyakllNEFCOXhrSUZiYkFPeE5VUkhPcW1Ha2VpbzlKdkszQzl4aHRtR1VzSWxNWlpCQ252VTFsd1RtQUM0Y3FiZHdKMGxOWlYvU3B3eG1hK2o3QVFvcHFzVVZqSGRGTnRNSi9LNXA4dTJ4YnoxYmx0V2V1NkpVSUxiUnUyRkxqbS9laUxBaUhLOWM2STZJc0ZkSmtnU0hTL1psMk1VM1UzTFhHQW44S2NkL1JOR1ZHSS81TUpyZ1UveGlibUF6aEtFd1NLK1FyTzAyMzZRbHFydDJ2NUtXMXA4NVlDbjB6NXBzK2J2dDJjdURYMThNMC80UURtRjNQNEhOSTF1YjZHb0NRRU1ldCtEMnNLalNsd2ZVaHZRTVRhYTVOYW9SNXNoSXlsQ0RhVUV0ODU5c1hYOURKTUhVOElhRU5mZm9aZU9WdUxXZWJHckp3UWFrazBsZlVUOTQ3WVRELzlST3JMdTMvZlN1QjZMSmpVSVlzbkh0YlhabXYyVFVDQjY3b25zTFg5c0s0VjYrYzYxUFZWeWJha3dQV3A3OEF1bnQzV2M0TDEzK2pES2JIYnQ3NHRJdGhiclJGcDN1Y2R6Qlc0enUxTmRQZnBhd1d1UzJKaHRhSmo3S0gzZzB1eS9tZC9waHVnZHVrY2JSZmYzajdmZzdGNWRMOXRpRW0vSzlsVTJ0K1lyOSt3RTFCenFzRDFrdnYvcVVZQTlLV1p3QXR0bWV6TDNhTHlYRVRKcmtSWmE1NkpVT0I2eVJNL3VkZWVkSUhyVXVCbjlqa0pJdmc3eVRiSzJhanVQdWRKRUxpK1hFUzhvZGNQL2xsRUlGYUxVTzh1QmE2bnpDVnI3V2Fsci80UUJhNFJMRVd3dWtZZ21ZRG9qOHpjM0kxVE1HcCtZcCtGOHdYczBYVlRWd1I3RjczaXJnV3V1U2RZM2pKOTJ6OHdjSk84NjNkcThoSWttR3M0ZjRtZ0x3TFVOWWxnNEFSSFlTKzBEWTVTYzExcGZyajIrYTVkQ2x5WGJFVkx6azZVT0pYS1ZPQzY1dTA3SlUvTm5zS2MvZnQ5QzF4emIrMFpad1Q5NTZaUzhJZC9id0tOczU0bHdNQlk0Z3dWUVVudm04bjRqMDNBOGFzMzU3by9OVmJJd3QrZC81d1dZTTI1dElYSXZWd0NFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUXdQNEpLSEM5LzJkZ0N5UWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUlHVFI0QkQ3bjB4RnlpOHNoRjZ1WFVqSExua2NQTVNtaVVSYUJ3Nkg1ZmFkZW1JdUhKRW5MV3lvbDlyaENjZldwbTNsQTNuNFBjM1Fqbm42bVdnWE1vZlM3VDM5Um1CTUs2YjRoQTZWbysvbjU2QUF0ZkRiOFVGR3VINDl6WU9UZWM0NWkvUDJnNVFTM0VoaW90bzRCVXlCVDJxK1J1T2VFY2hiU2xRZzdNTm9ncU1TZjMwa29pNC9VcGpGZjA2M3dDQ2g3bjB4MGxFNDl0N2ZpQkRRdHlNMlFTN2VNK2UycmhFNEpxMlA2eDVubjlYYUR2Q2h3aFprM0FDdzFFS1oxYUV4eCt5aC90bHpMNXQ4MDU4dUZEM1JkTDdoQ0I1TGoydmFmKzlrNmhwenJteHhwRklnZXM5UEhpclBISUVTdVBzMUFBMTUybWNLdDhlRVFqT0lQRHdpQlNjQW9IaU50RW52S0JIaUhweVoyRitMZ1VtSWpzTzlmUUhpQTBoUXRrVlN0Z0srSEVVRXBvcVNKcGpXeEpPcmwzckRUMnZ1WDM5VXFHREpVN0xReUxRYjI3RVQxL2JyRzB2bjlia3JDVytxK0tGWFNPUUZ0OFUzOXB0ZXZVeC8wSDhDYkhVb1lTVCtpdlNuQ21YanpuNFl6dEJLeXB1eXl3RkFpV3g2YjlLUWlLSXhlVEUwcGNBUGM0QzF6bng0aVdzMXI0Mko0cThENEZyQWdPOFBBWEFLOTFqSzJKL280N0FUWnQzNm5qQ09QNnlpS0NzZm1LdDJwOGJyTVU5SjA2U0V6MHFqU05EOTVrYnM3WVN1QjViOXl3VlQxeUx0K1ZJWUl5QUF0ZGpoRTc1ZlV2N1lWMEx0c2wxcU9zckJhNGpmbjNra1E5OXUydTlMVk5FQ2RlcTh6aVVjL1lVUk9TaVRRQ2xveUp1RGZlNUF0ZGorNWUxQXRlMElTYzh4dHdQMFdLRUJrdnBMRW5NazNWK056MC9JdTdhV3lNdm5hTWRhcis1eGJjekptQllFbm5yQnNpalhic1F1TVl1eVR1TUtHVXBmUzd0azJHL0hFdGp3Y1VlbUFReng4cXArVjJCNnhwSzV1a1RPT2tDMTkzN3h6Nkh2ZlJwalgzMUE1MCtmMng4NmpQZHhkeHFxemU1UDNmdUN2U3p6ME93MDFlbHloVzRybnNLdWZYZmxMa3hOamZzOUFSbjQ0emdVQ3J0N1h3MkJlSWs4R2FiY2tGeDF3eXFYa05uNmI0UGRaVE9DWXpOUFJDM0psam9IVVlhK29mTlBpWnpjZjRiU3dSeHBjemZxQlFqejVXbndQVVk1Vk4rdjFzU0tlL25abThNWWY1K0tnbGMwKzhqS015LyswaWNTK3dHeDZVTlkzYmlMZHRaczZjd1I5eDY2RnVkMGg5dWVlKzFaUS90ZzN5eU9SdDFuWWlnengxSzlFOEVHY2p0SjkrOThHN1h0cTgybi9PZjA1TGE1M2RYKzh6TUp3RUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoZ01RRUZyaGNqdEFBSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWpnaUJBNGN4SXlPNFRtUGpvaWZpSFRFQVRXZm5zSERmeVA1T0RBdjIyNlhuSU9PdVBLOWE4aHJQTjlTZndiNTRCdXFoRSs3VHBCOVc4TnA0RmJwckpYdm0yTFN3U21PdUJ4R1k1UUNLVDlhRWI4dVhUSU8rZDRnMFBnZlNZOENad0hjWkpyMDVEd1VNNHhiTTY3Zmh5Y2Yyc1FINXJBOWZVamd2Nmp2MCsyYXllNkduWkRlYllVcUxsa1JMdzdFeGdBWjFMNjRqY3ViWHk2SGdGSUJMTUpzSkJMaC9CTWVFOXdEcnhub1kwZmpZaHJSQVRpZC90SVN3U3Vwd3JKdGZlM0wyZnBzZllPQ2JNekpqRDMrbnE2aWJtaXB3cGM3K010dDg2alJ1QktTUkRwREwyRzkwVmlhdTRMVWV2THBEbmQ1M3NYbE5ZSWY1VEVJUHBqUzg1cDllSVI4Y1NtWElKYklDS3haVHFPUWtKai9YSU56MUsvbXB0YjQ4aUxjT2s3RzZIbFQxUVVQcmV2WHlwMDhJQVVEQUtuOTNkRUJQT25tZ1FMQkF4WXc2NloxbkxZempueGZ6VWlydG9KaUpGck42TDNCUE82ZHVHbTVqcW9yOG5vT0pVMUpEYU5nQUdpd0I5UGMxdUNCNnlSanJQQTlWcmZ6eHFjYzJYTUZmT2IwcDdjOCsydThSSGo0eHNuTUVVcEVSd0hzUlhza0d1SldaWFc5YnpmQ0R2MDV3MVQ3bmxKWGtSQ1hoZ1J0OGdVc3NhNE9mWTgrdFhPRVVLY2M4MFNabDRyZ2JrRUZMaXVJN2VsL2JDdUJkdmtPdFQxbFFMWENseHY4OFpiNmhDQnVYUGlzZjNMS1FMWHBUbmdXeUxpWmhIeHpjSU4zQzRGR3UzK2pPamQxU1BpVTcxcmxzN1JEclhmM09MdEhoT1p2RnBqeTNockUwUzdiN3ZzQzd4dExYRE5HcDNnUENWN0NXd0lRbnFUelB1UTQwYkFjTVRyQ0d5VlMydmJYM0xmRUdLYk4yM2Urdzl0OFdBWGxIbTJ0Qzk4emw0WlkrL0tnaXE5dEVCZ0xadkFHb0RuMm82WDFFMmdNdW9sSUM5MjQ1eHRibXg4NnRkL2cvVGQxYlFMa1YzMlRkb0FqZTAxWDB6ZlNQZjhXRTE1NVBuK2RNYW0zNmQrcGhFNVpod2NTdGlXSHg4Um5BZG8wNVdiQUkrdlQ5Y1M0TFJsdEpYQTlhWFRtWWd6ZGRvd3hSNDQxVTdUNTVHYmJ5eXhIeTBSdUNaSTVZc2o0cm9SOGFKbTdHR2VNclMzVWJMTlBTTUZtTzFlZTdFVUxKdzZ1bW1Yd2VlWDd2dlE3cmtDMTF6TG1ST0Nwais3bWY5ZHNQWUR5K1FqNEFXQk1UaXZzOVMrcjhCMTNZUElqUmREMzJsSjRIcEszMUxYc21tNWN2M0R2b1IyQ1FUMDBvZ29CYTduenBiTVhVdmY2cjZmd2JRbmRrcnV5NmFBNEp4Nzc2ZGNZS1J1bnFIZ04yTnIxVGx0TFYzai9PZTBaSEx6bnpWNVc1WUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ2dZTWdvTUQxUVR3R0d5RUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFuc2dNQ1FJLzhPcWorb0tuSUgxSEY4UXZCMTdiU1dZK0JqSXdKQm5HNzZiT1BZZEpXSStFS2gwYTN6VSs2UU4rTFc5NDBJbkd0cUJjZldabk1TeXB2aWdNZWVCUTQwaU5ueDNuRFEvbDJOQ0ZKWGRIMkt3UFZVVWVWK0g3RUxnZXVmam9nM1o0U1dqOXU3TWZWWmJIbi9Rd0s0Q0Mwam12aWRMUnV3WXRsYkN0UWc5UG5JVEZ2bmlKT08zVExPcVRqeGx4TEJIeEE0M1ZkZmZmN2sySHF1UWdNUnY1NGlwai9HWStydkNseWZsbGhPV0JjSHoxdDN4SzI1WXE3aituYzNndWRuYVJ4SCtYZEp5Z2txckNuKzhMVm1QUDMya2daNnJRUm1FaGdLQ3JDMm8zb3BHTU12UmdUcmhINHdpN1dETkV4RmxITVVYL083bjlxZXFmbnYwY3lSSHRhN2FJblFRbHZVQlRKQmJmZ044UVFFUXR0RU1BbUVQM0Q4ZjFzUzRtaURGcFR1Wlc1ZnYwVG80QkpKZ0x0MXlrWllpSGxDamREcTJSdnhpRCtKQ0ppc21kYWFpeU5ramZCS1h3RGx4aEdCc0h3dUlWaEJrQW1FRzNLcEg0Qml6ZnMrcVdXTmlVMGpOa04vdUZUOG9zdDNyTTQyNzF6aHVWMDl5OXkzZitpQ0I3dGdXaExxdVZOYVB6ODNJaEQwSzZVSFJzU1RPK3U1dGNTc0NIcUFZUHVOTWhVL3RabjczMjlQYTBqc1dmVDkzNVZwMXhyajVsVGhwSnlZeDN0UzRDcUN5K1hTVXZIRVhYMnoxaU1CQmE3cjNvRXQ3WWQxTGRnbTE2RUt0U3B3UFM1d1RhRFJlL2RlaTc5bzlvVCtjdWFyY3I0VTNLSjcrYUhQNFdiZXFwY1ZDTXlkRTQvdFgwNFJ1S1pwSlZ0Q1h6UzV2UTNzdzIrUENPd0kzVlRLdjNTT2Rxajk1aFl2OXREWmhKTGdJSUZ5cmhrUlgrbzBhQ3VCYSt5blA1UHNYb2pObHRLcm1qTVFkMm5zU2dpZ2phV3g0R0xZMU9oN3NVV3VsWEx2L0Jwcm5yWGExeTFuaVNEcEZ1MDV5V1ZPc1Frd3hyTzJaLzIvUlVKc2tmZTRtLzQ5MlRLL3RWS0Zjd1FNeDhhbnVVMmo3M2xLT2lQVkxZTnpVN2RNd2N2bWxGMFNPZTdiOTZlVWpjQXlBUjgrM0xsb0s0SHJIRzhDdWJHdlhITm1aS3FkcHMvaFVBU3VFYUJtM0xsb2F1Q2ZKNkZyOXB0emllOFMrOWYxZWorVzl1RktaM1E0NjBmZ2lVOVBlVUZtNWwyeTc5Tld1Y1o0d3RqUCtjZDdUYmdQeHU5bk5zSHBmek1pUGpmaHVyR3NDbHlQRVRybDk1eGRCYnNxNys1Zlo0cFE0THJNbFRNMnZQdnNGK1RzNSsyVnY1UDJWdWZ1WXgwbmdXdkc3d2MxODZGZkwyQmxQZnlFekY3SVVDQk9Ba3NnTXY1WGRaL0FUbkk1LzlrSlppdVJnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpMQTdBZ3BjNzQ2MU5VbEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFMN0phREE5YW44YzA3Mk9Ld2djSUlBMVJvSlJ5anF1VU1TQmwxYVprNkFHK2NZbkp2ZW1pa2N4MUNFYnJyaXlOMXNmWUdkcGUzeitqeUIyZ1BvSEt6bjBQMWowbnR6eFlpNFhFWW9yU1JNc05SeGpOYnZRK0Q2cERpVXJ5V3F0OFozVmhMRDNMZm81Wng3MjBxZ0JuSEZkM1ljR0x0dHd3SCs2WE1hTzNETm1JRDBQeWRoZ1krc1hHOXRjU1d4YjY3SDBSblJnL2ZWRnJaQlBnV3VUd3UxNzFDYkU3Zm1pcm1pcDJzOXdweFQzYUdLUDZ4MXo1WnpNZ2oweFgzYnU4WlJFa2ZmdjFrSkEyZGRIcDBSWEc3citYSmhMTnVueU5VVThZNlZNSzFhVEs3ZlhLUGZHaE1WS0RuNzQ5ek12R1JJWkdKdVh6L1dwaExZa3RncUR0Z0lWQ0VtTkpTK0x3bUozSERGSjhlM0FDdUNoU3hOSlFIdVVyQ1BjeWVSQzlaMXVWUWFvNWUyODZSZlh5czJ2U2FuMmpybkNzK3QyZGFoc2hTNHp0TXAyVnRlbCt4dUphYWx3SEpyam9mWGlRajZrcjRZQnVzMEFvcTllMWN2VDZxSFFEaHZpSWpMRitwdHg4MFBKUkd0UDR1SS81all4cW4ycjBzbkRtZnExRE0ySDFvcW5qanhsc3d1Z2RrRUZMaXVRN2VWL2JDdTl1MXlYU1lpQ01Jek43RWZRWkNFTmpCTld3NTJTTWE0dVNKS0pSSEQzSE1vaVdIMzc2bTBoMENnMEpMQVVZNUw3cHRaWXJmUDNWTk5tK1plVjNyV1d3blF6bjIzdkc3M0JPYXVNM0lCYUQvYUJIWWl3Qlo5d1ZTQjY1S3Q2bE5KUEt3dlJraUFOb1FLdStrdEVYR3ppUGhtQnVQU09WcnVXMW5TNTIzVmowNTVnNzYvc1RYZVBDSUk1TlJOUXdMWEpZSE5uTEQ0RnYwTGRxN0hKenZSMEwwaVF2dlFTa0ZxeEswSjRJdkliQzdWQm9xYndwNjhDbHhQSldaK0NFeXhDWlJzdEVlSlpPMThyM3RQdGVkcnBuSW8yVkNlRXhIM25Ebi8zYVZvOFZZQzE3bjV3SlE1OGxRN1RmKzVIWUxBTlNLbkwrMnRqVmpYRVBEeVk0VVhqZjArenVuMXgrQ2hZT2tsTWZTMWcrT1d2bzI1K3o3ZDh0WVF1RzdMNndaMUhmcWVPY2Q1azJZLzdDdFRQL3FLL0FwY2owTXE3ZHNOOWU4S1hPZTVNZzltUDVGenhFUHBTUkh4NEpualVsdnVjUks0NXA1NHB3aEN3RmplVDdsQUZXT2kySnlaaHZNaEplYy9oL1EwYklzRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnZ1JVSUtIQzlBa1NMa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCSTRFQVFXdVQzMU11WVAyUHhRUmIwNml3bE1lNkxjaUF1ZGNIRlUra1A3OWZFUWdMcmRtdWtCelVQdTlqVGpYT1hxRjlzVzBzSHZmTVltSDlRVnUya3NWdDE3enlReVhWWE1BSFZGMUhPZHcyaVo5b1JFb1F1RDZscGtEOWErTWlGdG5oT3lXT281Ujd6NEVybk9POS8rV0hPZ1JPbG9ybFJ5VGhweTg1OVJkY2hLWjRnUTRwOTRwMTVURWlvZWM3YWFVdjh1OFd3blU4STI5T0hNamZKczRLMzU2NVp1azM2WXZ4M20ybEo0ZkVYZGQ2TVEwcDlrWGFzUW4zaFVSdk51NTlLYUl1R21seU1DYyttdXVVZUQ2OUpUdWxzUThYeEVSdnhBUlg4K0FuQ3Q2V3ZOTWF2SW9jRjFEeVR4SGtVQnBuRVZrNWZZallzUlQ3cmNVSEtIYkw4ODdObzhBQUNBQVNVUkJWSmNFNzJqSEM2WlV0bExlS2VJZEsxVzVhakVFSEdMTTZ5Ym1yUWp1ZkdaQlRUa3UzZm53MlNMaTdSR0JlSG8zNVJ4Mis4MlkyOWZQRlRxNFhVVDhRWVlGYTJORUl2NnFndE5qbXdBYUQ2bkkxMmZCR3AvMStGK2tmeEhsUXZCZ3FuRHFVTlVJbHZBdC8yd3ZVMWNBclAySkFGb0lBN0tPenlYRnJTYys1QW5aYzk4VU5oS0UwclpLT05Xek51bW0zRnB6cnZEY1dMc1JsMGVjRWxzVWdZdm1KZ1d1OCtSSzlwWUhGZnBuU2tFVTlMWVJ3WHk4LzB6V0hBOFIxWHRoUk53aTAzUnNLb3hkVzRpLzVFaXhya1hVODljR1hrQUVyaEd2WVV4QWtCUlJpcnRFQktKQnRXbXEvV3VPVU5OUzhjVGFlekdmQkpZU1VPQzZqdUJXOXNPNjJnODMxNjRGcHhTNFB1VmRRSXoyTlUzd2hXdjNYZzNXVW96cGM5SVdBclJ6MnVFMSt5TXdkNTJSdTY0YkNHU3F3RFVFenBQbXlPd3J0UFBpaDZYOUQyd2RiZXJuNCsvTUZaa25zbGVWUzB2bmFHdC9LeVZoeTEzYTNlYUtUUFlGTmdtdUN2dC82b0Zma3hucmhXdEZCSHRkUFA5UzRqMjRjeElhclZuZkltNzkzQ1QwblN2emswa0k3N01iZktJS1hHOEE5UVFVT2NVbW9NRDFxUy9FSEtIczd1dDAzbVFidkhEdkhWdmFSNVNlMGErbWdJczEvVmp0YTcrVndQVlVPMHUvdlV1djM2ZkFOV01UNXpPZW1na2V4MzNlT0NMK0tQT0FodXh4UThIU0diUFl3N3RDcjh4L2JPWlBWMC9uRG12Zmh6bjU1dTc3ZE91YU8vZm90NWQxRVVIVS96SWk3dDhFTitFTTQxQWlLTWx0a3FqNG10K1ZBdGZqYnhMN0Rxd1JMdDdMK3VjUmNkMkkrRnFtaUYzYkc4YnY0cFFjUyt3U3RYV1U4bDBxelc4dk9sSVFhelNFbDVmdWJSNDNnV3V3bFlLTTh4djcwT3lSRUhpQXhEN3V5d3A5Kzc3TzNvMjlRelhuaThmSzZQOStIT1kvVSsvWi9CS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRURvYUFBdGNIOHloc2lBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkxBeEFRV3VUd1ZjY29EQ0FSS255VnppVUQ3T0ZmejN2dlR2bHhyeGxtOXYvTnphNHI4dkloQTN2bUd2dnE3VEFJNDBISFovekVDYkZMZmUwUU5MMVl3ZFFNODVNZUM4aXdNVElsdzRRSFZUWDlDOC9XMnA0eGpsN0VQZyttbVplMnp2SDNHNnRaSUMxNmVRUEh2aktQYk9ScGd2NXpRejVHeTMxbk5ZdTV3dEJHb1FoM3QxMDg5Zkw5UFlaNlQzZFUybnViYWFTemJDSnUrT2lETVhJTldJV0s3TmQ4ZzVrN3Jnd0ppRVFPTSswNkVJWEhmRlA5YmdzVVFjQWVGYlJLNlpEeENJSTVmbWlwNnVjVytVb2NEMVdpUXQ1NUFJbEVTbjErNHZPZWZ5NkVZc0c0R2dmdnJGNXZ0NlZ2cGpxVDBsMFpxdFdVNFI3OWk2TFd1WHp6TTU0MENmTzFRZnp2czRLM2NUUXA5WGpZaVBwVCtXUkpQR2hBL205dlZ6aEE2R0hJdW5pRHNoeHZySEJXQUl4aUltdlhWd3FhSG4xUWFSNk9iNVRoSnBlay82STZKUUwwMkN3N215RkxkZSt3czhiWG1sdGQrMnRaNis5RjBLWExmZjdDZlMyTUE3TmtjQTRUZ0lKL0VrRUZsR1BIbXROR1J2eVFuNzk4VVUrdTFZZXp3Y2VtNEVVME9vaC81ejYzVFpKR1pZV3ROU1AvYWUzMDdDTlcxUXZzOGx3WW5hSUdkVDdWKzVmdnVoSTBMY1M4VVR0Mlp0K1JKb0NTaHdYZmN1YkdFL3JLdjVzSFB0V25CcWlaQlVhWDZYRy9OL1BBbEY1OFlqQW8waXBOWk5qSkZmblBtb0NFYUwvYlNic01QMUF6Y3dOeUR3eFljYjhieFNvTjBsZ1RqWEZLQ2RpY0xMOWt4Z2pzRDFXUnB4eFRkRXhPVjdiWDllQ3BqSW4rY0lYSFBkdlpLZ05mc3M5MG1CZVBxSWNtMGVFd05kT2tkYjgxdEJvUEsxS1NCcTk5NElkRVh3NHE2WWQrbjFvRC9DOWtOUXM3bno5YmtpazMyaHdwTGRaaTFtNTQ0STlvUDdnZVA2YkQ2ZWdrRzM5ckN4VDZ0RzNKbzlMQUtWYjVHVzdPRnMwWjZoTXVlK0s3dHU1MG1vYjRwTjREallhZVlJVTQrZHI1bjZuakJmWTQrZkFGdmR0SFR2dmJTUGpoQXZ3cjNzdzZ5WnRoSzR6dTFQVEprak0xOWdqdHROVTY3SFBrUWYxZHFKS0dmSmVhSGN1aU8zaDgrWkVJSnQzcS93a0dqRHpaSWdkVDhMd1E2eHYzYmJUSjZhWU9udFBLbGZKaUxidEdXTGN5aHRYWFAyZmZydFhEcWVFT1RpbHlMaTd1bGVPUmZIdWJCYThkK2grZVdjNzAyQjYzRnFCSEY5YnhOY25mVnZON0dQaDRodzdzenNydTBONDNkeFNvNGxkb25hT3ZyNXZqdlo1NStZc1IvMCswMEMxeE5FZUkxKzREZ0tYTU5yU0xnYTJ3dm4vRmg3RUt5NGI2L2grcVdCTGVhK0J6WFhPZitwb1dRZUNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFKSGlJQUMxMGZvWWRsVUNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJWUJFQkJhNVB4VmR5cEVMMDVIRkp2Sm9EK3Z5SDQ5RS9MWEF1WGZUUWVoZm5ISDViTVMyRXZoQ3V3Y2ttbDNEUVFyeWI5MkNOdy9CcjN0ZHhMcXQwQVAzS2paanR0WnVEOVlpcTl3L1Y4MHh4cEVHTW5EemQxQlV0N1A1OXFzQlBqdm11QmE2L0p6a1Y0SURRVFhNY0hjZmVJUVd1VHlGMDY0aDRjUVpXamJQZEdPTjkvTDZGUU0yVmtnajRHWG8zOU8vSkdaVUFCMXNrOWl5ZkVoSDNIU2k4ZGNqNXdCWU42SlZKZXg0MElndzNSYXhoeXlZcmNEMlA3bHpSMDNtMW5mNHFCYTdYSW1rNWgwU2dKRENIR0M4T2xWOWZxYkVsSWVIK2VENDB0b3lKQnEzVTFOTVVNMFc4WTR2NnR5d1RaMjJFalJBbklyZ0E0Z2ExNGtTNWdDOS9IeEdzRndpb1JCb1NOWDlMV2dOK00zT0RjL3Y2cVVJSDNQK3JtdlV6d2c3OTlQeUl1T3NFSGhkTC9BZ3d4WHFjQUNBSUhDRG1uYnZITFo5cnJ1d1NtMStMaUVja0lhOG5aOFF0MnJKZTBBam9zYVlyQmFEWTlmMGN4L3BPc3NBMVF2dWtMemY5MFJPU2tQQ1VkKzA0Q0NkeC83c1V1TzZMZFNEV2pFRGxCd2MrcnJYSHc2RXhBdnZmenlYUi9TMi85OUk0UVAwMTUzTVpNMnNGUEtiWXY2aWJmdmMydlp2SERzVzRWVXBMeFJPM1pHM1pFdWdTVU9DNjduM1l3bjVZVi9OaDU5cTE0TlFTSWFrcEF0ZUhPSi9wQ3ZUbHhoaUVjSzhSRWJYQkh2cHYxbG9DdElmOXh0cTZJUUlsc1doRUczT0Njd2c2RWt3M0YvQ1pBQzR2VEpYTkZiakdOb0tBTm5QajNINzBoU0xpWFVuTXNyMnZtbUJzUytkb2EzNHJEMmdFd0JHcDZ5YjJid2g0OVZjVnIrdjVJdUxsRVhHNVpyNzhxQ1N3V1d0SDZoYS9SR1NTOStNaEVURmtWMXJLakhlTjRMcllJWE1DYzkxN0lSRE9MMCt3bHhDMGdQM082eFo0SXpCTEVEVUNoVytWRkxqZWl1enhMbmVLVGVBUTV6VlRuODZjY3g5ckN6em1ncE54SDB1RGd0MHE5VU45dThkV1FzVmJDVnpuOWllbVB1ZTE4Mjh0Y0kxUUwvYWkvbG1zOWo2dzYvRjhDU2JZVDBON0lUWDdicVhBdEp4RitlbTBIN0kyejdhOHFmcyt1WGJNbVhzZzhIdUZKaURqd3lQaStwMUMrOCtaZVFQblU1Z2JEU1htVEp5bFE3aCtUcERIYnRrS1hJKy9iYnlYYjg3WWVMdUJjWExmQ1dlSldPZDIwOW9CNDhkYmY5b2NTK3dTVStzaVAwTEx2S2ZzRnd3bDVxMzBPUVMrV1NzZFY0SHJzWE5zN2ZvenR5ZXh5L04yYzU2ajg1ODUxTHhHQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrTUFCRTZnNVFIL0F6YmRwRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVNPQkFHY0ZqbTBmWmRNYTdjV0RUMFNnQ29iV1hJNGVVZHlCTDVvb1J3Y1EyNFpFYTh2L0g2UmlQaUpKTW8yUmZ5b3N0a25PdHZsSXdJbkRaeHgyc1NoZVVUYVNnNVQ1RU1FN3BHTlk5MjVPdGR4RUI5SDNiZG1pRTRSK0NrOWtGMExYUDlRY29UQmdidWIzaE1STjR5SWI2ejQ1aWh3ZmNvNytPb2tzTmxIUy8rTWsvbFJFNzlmVzZDR2ZVT0VIZTZaZWZmZUZCRTNqUWdFUjdaS2lCcThMU0l1TUZEQko1TjQ1R2UzYWtSeVRtUE1lTkdBT0NQakNtSU5pTGJ1T3lsd1BlOEp6QlU5blZmYjZhOVM0SG90a3BaektBUktUdW0wRDJISmw2elVVTlpWQ0EzZElsTmV6bm0rSklhOWozNThpbmpIU3JoMlZzeVBwRG4veFZPTk9OanpuQkE2SmhCUnlja2UwYWZYWk5ZRnpBZHUzQlAxUVJ6cURjMmFqdlZGUDlHbkkyYmJuOHZON2V1bkNCME1PUlB2WXQ2eXM0ZWNLaW9KQVNMV3dyUHVDalQwMi9ha2lIaHdRZXliZDRINUYyczlSTUJNOHdtY1JJSHJuTWpFSENHWTR5Q2N4SnV6UzRGcjZpUFEzQ3VTblljMTQrZEhYdDh0eHNPekpRRU14djErMmxxNG9UUU93QVNiRmtHazJzUTR4YnRKbjVkTEJFVzQxNGlvM1JUN0YvVVRMT0c4bmNxKzJ2UzFWMjFFUXo0MjhKeVdpaWZPNzhHOFVnTFRDQ2h3WGNkcmJmdGhYYTJIbjB1QjY5MDlvKzY4TERmZittSWpNSHVWaUNEUTBaeTBWSUIyVHAxZWMxZ0VjdU1CY3lBQ1p6RVhaTDNLbmlTMmlVdWwvZUNjMkhBL2NOcVl3UFhRT0xRbW9kK1BpRHVtZmZEM1I4U1BkZ3FmSXB5NjFyZnlrODBjbC8yaU0vZHVzbVNiNldaajdrdzdFR1p1QXhUeE8wTFR2ekZEcEhHT3lHVGJIdWJFcjB5Q2U2Vjlucm5NdU05clJjU3pJK0tDSXkvRHYwYkViZE1aaHRvOVNvUkpYOWJzcDEydFVQYldhNkMyMmx5ZnpoNGk2OElQcmZrUnJGQVdhOFkvYnA3Sk9YdGxJYmhJMEQ3VDdnaE1zUW5RVnlQbS9sMGJOZThlRWZHd1h0bi9rTTVwL05OS2RUTDJmR1ZpLzdhbXdHT3B6MmI4b0orYU8vL0N6a0NBZ0F2M09GRWVaNEErc3hLL2JqRmJDRngvWHhvTE9KdHpTR21PWGJOdGYyNzkxeFhWSmNBbVFjOUtaK3ZHYkZNbHdYUUNkRjQ5SWo0MUFuSW9VQjNCUHVrajFncVcyMi9LbEgyZjBtMU1tWHRnLzJNdkU4SHE3dnl0TGJ2MG5KbXZ2blRnR2JYWEV5RG9UbWxmWnU3N3E4RDFPTG43UndSN1cvMUV3QmYyUUhOcDEvYUc4YnM0SmNldUJLNFJkV2UvNzNjYVJqOHcwamdDL2R5a291K292Y2MyMzNFVnVPYitoczZnbHpqOW4vUk1XUDhjYW5MK2M2aFB4blpKUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcGhKUUlIcm1lQzhUQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQkFKWUVod1N1SzRFQTN3cXJmcVN6dkpHY3JPUUVNTWZubjVKejZ2b0ZNT0xFaWtvMXozQXNpNHJjajRzOG5PcHFkNU9jeWRPOVR4YlVRTTd0OU9wRC81aVEwMjVZL0pIUXdSZUNuMU41ZEMxempQSWFZTlk2WjNZUkR3YTFYN2hNVXVENUZWT3FkRVhHR0h1K2pIR1JnYllHYVhZbVREdlVadDByaUJrTjdtRGpIM21oRWtHdHVuMHk5aUVVOGI4UmhHc0dGeHgrSUtMb0MxL09lOWx6UjAzbTFuZjRxQmE3WEltazVoMEJneUNFZEIrc2JKQkdITmRvNjFYbCtuODd5L2Z1ZEl0NnhCcXRkbG5IdVJ0Z1lrYVZ1Y0JycVowMUZnSnF2RlJwejl1YjNQOGtFdDJBYy9vWE1OUWozSUlEY244K1ZoSHZtOXZWVGhBNnVFeEZ2ek13YmNCWkc3Qm1oaitPVzVvaDRjUTBpQUNXeDgyN3dIL29OQk1zUkhqSUExZlMzWitvYWZIb05kVmZrUktKeTc4NGFZc3k1ZTBhYzdvb1ZZc3ZkdThsOSs5aVVYbGNRWnE4anNXMHVnclhSN201YWcybTN2REY3QzdhNk95U0JqSnB2ZHF2eHNOUWZjeThFSEVDc2FFeGtaODdUeW9sRjhkNXduNndacjlFcEZPRWEyb0g0RFAvbEVtUG5rRkQ0MlBQb2xzbDNTQ0NKYnVxS0dwWHVWNEhyT1crQzEreURnQUxYZGRUWHRoL1cxWHI0dVhZdE9MVkVTS28wdjh1TitZY1lzS01yM0phN0Z3TGxNRjR5ZnM1SmN3Vm81OVRsTllkSklEY2VQQ1VGTzIwRGNkVzAvS21Ob09MOU9qWi9CYTVQVCswSGt4Qm9QNEF4Z2NwK3RrS1Fja2lNclVZZ3U5K2lLU0tUL1d1eFEyQ3pRaWk2SkN3OXAzL2huVU1jTkJlZ3JkOEdndklpc012K2QyMGFFeWFsTDhVV3k3cGk2M1NJWTg3VWUxYmdlaXF4NWZtM3Nnbk1hZGxjMi9HY3VxWmNzNWJBSTMwMkF1NGxNWHdFNlovWkJDejR6WWtCQjB0akFmZDQ5M1QrYmNyOTF1YmRRdUM2SDdpenRpMWI1OXRDNEpyKzdwcVpJQlB0dmJDZmdaRHYwd2RzK0VQQnluTUJhRXVjTHRRRUVuOVhDdDdSenpOblBsRDdQS2JzKzVUS0hKdDdzQ2ZKV00xOXNKODVKdENQblpEQXJ2MzBYNXBySHgwUkQ2eTR1U2RHeENObUJxcFg0SG9ZOFBla0FNN01jN3VKdVNQelNQWXJjMm5YOW9hSzErUS9zeXl4UzlUV3dYN3gwNUo5ZSt3YXhQYnZFaEVFWkZ3N0hXZUJhMWdOamNVNWxsdjJyV3M5TytjL2E1RzBIQWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNCMEpBZ2VzRGVSQTJRd0lTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VqaVdCTERCM2pJaVhsUndYRURjNlc2Tm9OZnZIN0JZenFFOW1DbGlXamh2M3FJUmpmbk15RTNrbkRZUTVjRWhBY0UxMDN3Q2o0MEloR0JyMGgrbDd3RkgzdHgxaUVIajRQT05UR0ZUQkg1S2JkbTF3RFVPeG9pMjlkT3ZOZjNCUTJ1QVRjaHowZ1d1Nll0L0t5THVtV0gycHVSY2d4UG5VVXRyQzlUY0szSHFjL2g0Y25qODBnNEFEUWtjZEt2LzEwYWs3TGFOU01EclZ4U1ovb0VrUUliejdWQ3FGV3ZZQWE3L3JFS0I2M21rOSsyNHJzRDF2T2ZtVllkSjRCSXBpQVJpQVAyMHBxQkJUa0N5clcvSWVYN0lXYjR2WHJRbDRVTVM3MWo3UGt2Q0FNeDFjZnorZHFIQ050QVFUdUxkOUl1TnVNR3pNdGRNRlN5ZjI5ZlhDaDJjTndsWVh6alQxcVBnTER6M1BaZ2lZSVFZeDg4bE1aV1NZQlR0S0RtYkkrTHd5TGtOUGFIWDVmb2FBcmhzS2JhT3NEQnJrMjdhcGNBMWRqV0N4M1VUUVhHdTNBanJURm5ENU43dEdqSGdmYjVxVzRtR2QrOXBEWHZMV0hsTGhIdmFzaGtqRURLOGIrR0JJSExOdS9yWkZSOFlnaDE4V3hmdGxZbjRET01ZNHVoOWdldXJSOFNIa3RETll3cHRJZmdiNHllQy8vMVUrenhZVzc4dzJVVzdaZFRZbkJTNFh2RWxzYWhOQ1Nod1hZZDNiZnRoWGEySG4ydlhnbE5MaEtTT2s4QTFlMFhzL1hUVDJMcHg3RzJhSTBBN1ZxYS9IeTBDdWZIZ3dZMkE0NDhOQkJYcDN5RjdJTXdWUDkvNVFZSHIwMUlxN2QyVWdvNlYzcUloTWJhcHRwUXhrY21sYi9LVS9nWGJGb0VIU25QOGJsdlkzOEwyaGJoMktSQllydTAvMVlobXZyUVJIODNaWU52ODcwNW5VNmFJWnMvbE5NVStOTGVPcmEvYmxjQTEvY252TlNLbVY4amMwSXZUK25EcmV6MlU4Zy9KUmo3WGRydzF5N1VFSGkvWkJLUjhUZ29BTjlabTdBLzBYd1J5L044RG1ZZjI4YkdQM0t3UjVQM21XR1V6Zjk5QzRMb1VrUDRmSndTajUvc21hRUkzd2JDMkgwWUFtZkdzSzRTOHhFNldXM2Y4YVVRd1BwVEVrZ21PUUJEeXQ4OTg5Z1NVWTR6Q25sV1Rodlo1dUhmS29zMXJwOXA5bjZGNkw1MVlucW1YNlRZUjhiM05lL093aUxqZ2hJYVBqVVBZRlFrSU8xYm0zMFhFWFJzNzVEc21ucDFSNEhyNFlSSFU5NzNOR001ZVlEZnhmVitsQ2ZySUhrUXU3ZHJlVVB2S0xiRkxqTlhCK1BCTGFiM1AveDVLQ09xelhzT1dQelRtak5VNTlQdHhGN2ptM3RtYklHRE81VVpBUFNvOWw2MVlMM2xPM1d1ZC82eEYwbklrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDUndJQVFXdUQrUkIyQXdKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVamcyQkhBL29xSUVNNEdYV2VVM0kzaXlJaFROM20vY3V4SXJIdERPR0xoZkhQbWtXSmZGUkYzaVlpdlZsU2ZjMTdqT2dUWFBsWnhmU2tMRGcwY3lMOTh5b0JUQ1hYUnRpRnhyd1ZWSHRTbE9Da2pIcHh6MXV3MnRPKzhVTG9PZ2VMN0ZPNHc1M2d6eFhHTVlzL1JmSWRkUjRzaHg3R2M0d2VPeTc4KzRRbVV4TDl2bDBTSUpoUTFtdldrQzF5ZlAvVWJPQ0QxRTRKN0x4a2xlSmdaMWhTb0dmcGVjWGo1bFIwaUdCSTQ2RGNEaHgzNmhhN3d4TlNtZm5jU0QzdENSUHpveU1WYmlLSk5iVzgvdndMWDh3anUyM0ZkZ2V0NXo4MnJEbzlBU1R5UmxpS0tRRUNQTmRZM1EwTENPUkdpUGlsRVk1Nlp3Y2M4bElCRXI5d0Iya01TNzFqN2RrdHp6YUg1TzIzSWlkSitKeUt1RlJFRXQ4bWxzeVdoQllUVit3bXh0TWQzMWxweisvb2FvWU9oK2NyV1loNXJQNytwNWYyWDVEUjl2WkVMaHdSYWErWXo1Q21KbmRlMm1UVWU2NjQ3SmJzTVFXMmVsZ1JiQ0dwMUhGUHVleHdUeWxqS29iYk9yY1NZYytYT0VhWlc0RHIvSnRRS0t0ZStSMnVNaC9SRFA5elkvYjdRcTNSc0xmbVJabjd5TXl1SlhKZEVuYkJaY284STFaVUVydjhpSXNic3h0aTBDT3IwaXA0TkVidkdsWHIzVFgvYkYvNjVXbVBYZkd0RW5LR1hsM0xwVzdFbmxNVDA0SHZOaVBqK3pyWDBtZTlzN0pwSE1UaFk3YnRwdnFOSFFJSHJ1bWUycHYyd3JzYWprV3ZYZ2xOM3p1eVRzQWZGK2dWeDJLRTBSZUQ2a09rai9vb2RuaUFPM1ZRVGZHRXFuemx6d1VObVo5dUdDWlRXR2V3WnZLQUNIbllsQkRuNys4RUtYSjhLajducmd3cDdvSWhsUHFtQ2N6ZExhZDZPblk2QU5jK28zRWMvSklGcjdvLzdvcCs3L2dBUGdwN2ZPeUk0RzFLYjRILzdSc1R1dWIxOTdOTDFyQSt3QTN5d3RvS1orUlM0cmdkWEV0R2xoQnRIQkVIQVQwcGF3eWF3RnF1NXR1TzE2aStWczViQVkxcys1eVFRM1czdG8wUHRaODNQUHNwdlpzU0tzWU04cmdsRy80Qk1BUWhDRTlBTG9lT3QwaFlDMS9TVnIrazErTThqNHJyTmVQUzF5aHRaYWpmTHpUZldGcmdldXBYU1BLaC9EWE40QWpQa3pqN09DWFI3bnJUUFE0RGFmdHJxUEViTnZzL1lZeThGakIrN3J2czc4eDNtcUp3dFkvNDVkbmF3TmtnN2RmRDljbTZ0ZHA2aHdQWHdrMk5PUjBDbXZ2N0NXSkNtWGRzYmF0Ky9yUVN1THg0UnorK2NqUjFxVDQyZ2Z1MzlET1U3N2dMWHZKUHNwY09kL25Rb01jOWtQNzQyOE1JYS9PZVU0ZnhuRGpXdmtZQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNSd3dBUVV1RDdnaDJQVEpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnZ1NOTEFDRVFSSlR1TitNT0VPdkV3YWpHa1dGRzhUdTdCQWVuaXlUaG1HdEhCQTZ1SDE1WSsvbWFNbCtVRVhMcEZ0c1hTNjZwRW9kUUJBYTY2YU1SY1kySTRIRDluRFRrNElPekhFS3FZNDRxYytvOXBHdHVGUkV2empoN2ROdVljMTVBcUFmUm5MNEl6NUNEWjhueFpnbVBMUVd1dnk4SktkNncxMENjQm5udkVJUmNNNTEwZ2V1U294bGlXSWcrZlhwTjJEc3NhMDJCbXBKejFyOG5ZYXYzN2ZDK3FBb2gwOWRIUkU2OE10ZVVQMGlpQnppZGxrUzYrdGVkUFFXaVlIdzZhOFg5MFY4aDFFb2RoNVFVdUo3M05QYnR1SzdBOWJ6bjVsV0hSd0FCQU5Zdk9hZDJoRmRxaElURzdtcElySkw1Tk1FcVhqcFNDR1c4Tm8zNy9heUlpU0hVKzRHeGhpejgvWkRFT3hiZXl1a3VMNGtMRG9rVGw4VE5tSjlkY1NSNFJlbTlZLzcrVXgyUno3bDkvWmpRUVVuVUZEQmJpUy9NZVdhY0NXTzhnY2xOa3REcDc4d3BxSE1OdG81SHAvWDlVRkZUSGFhWll5RUswRTE4MzRpSklOQTZKdzBKNDc4dENldDlmVTdCQjM1TnJkajBtcmRSVytkV0F0ZTVkUkcySTRKSFRiRzdLSENkZnl1V0N2WDBTMTB5SHJiQ0RjK09pUGVtOVZ5Ly9Nc21nWnhTWUR6NmFXd3hTMFNYU2dKL3JKOS9PZ1hZcWhVb1FuQWJnYUF6Rmo1S3Zoc0VBMnZYdVJSRFgwMlpOeHI0MEYrZWhLNXJBZ091MlY5WWxnVFdKS0RBZFIzTklmc2hBVm9KenJKbVluK0d2Z1ZCL1VOT2h5bzRsV08ybGNBMTR4bjdXQitLaUU5VVBpd0U2QWdzaXhqYjFER0VJQTJNMzh6VHUybXBzR2VPandMWGxRLzBtR1FyclRQZW1PWmxaeXJjSi90eEJPWmlQejhuQWpnbWNNM3ZwYks3VlJLb2kvWHVPVHQvZkg4U0xLNEp2RVE3c1YzbDdNbi9NOWxRRUJZZFMzTy9GV3dnRDIzV1ZvL01WRUJBRndMSHpRbUNVbHF6TTQ3Y0pzMW54OVp6aHlad0RhS1NIWk1nMkhkdDlvRGZNWEdkT3ZmTUNUWXliS2JZUThjNGpyMDdwZDhWdUs0bmx4UFI1ZXFqdms5ZFQrRFVuRXRzQW5QcUc3cG1ydTE0N1hiMHkxdGI0TEV0SDVGYzdQVzErK0tzRXdpQVRVQXR6dTA4SlFsazl0dTdxeUNpV3doYzV3TFNUN1VwTHJXYjFkcVBhdCs3b2ZWZnY0eFhwYm45Mkx5ZU5jQzcwbHlrWDBZYjZHMk9uYjBVbUpZNkVHMWwzRnh6WFRtMjd6UEcrQ3hOMEtJM1ZJcjQ1c3BpTHZDcnpma1hiSEkxYzhCdUdhemRzRG55ZnY3SVNFT3hlU0o4V3hNZ1hvSHJNa3lZczFhNFp5WUxJdUtzaVV2cFVPME5hd3RjODAwd1RuQWVyeVpOM1Rlc0tiT1U1emdMWERPZTgyN2VZUUlnMXJ2MHVld1pUTmxubUZERjRxek9meFlqdEFBSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQW9kRlFJSHJ3M29ldGtZQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEk0K2dUT25ad3RFSFZla2o0ZUVROU9BcDlyT20wc2FkUFF0VjFCYTV6aUw5Y1J1aHNTQ3E1cEQ4NmI5MDdPSHRSVFNqalEzcXh4NXNWcHVUYVZoSVp4TnVZK3ZsMWJVQ2ZmK1pQVE5BNzd1YlF2d2RnWnR6TDdraUV4c2JaUVJHSnZFUkdmNmRYeXRQUzh1My8rWWlPMmNaWG1nUDdmRjFwMDFBU3VMOVk0SUwwbkluNjRkejlMaGRWTEQrd2tDMXpqVFA2bXh0bnNDaGs0ejBqdjJsYk8zYk0vb01vTDF4SzRSbUFTZ2VoYlorcUYzVTFuQ2hSVTNrWXhHK01wb3FtTUo3VUpKMXI2RnB4dCtlOS85Uzc4OGFiTVN5Y0h3Tyt2TGJRSmd2QzVpTUFCL1lNVHJ0bFZWZ1d1NTVIZXQrTzZBdGZ6bnB0WEhSWUJCSHJlWGdoR3NKYVlGSDAxZ3J5SWxPYlNjNUp6Y2MxNmlia0E3YzBKU081Q2xQaVF4RHZXZkpNNGQ0U1FPZUpEM2ZTZDVFVFBuRGVYU211bW1uVVlhMExFVGUrVUtiZ3JxREMzcng4VE9rQ0FqVGxLLzh4VlgyQjdUYzQxWmZVRnJRbGcwcDN2akRuZEQ5WFJGWlc5NEVoamNPeC8rRVR4aWJ1bGI3MWJOTUlhVjAzQnYycnV2NXRuYUg3YjVudFU4ejl3dmo5dXFWWnNlczM3cnExekM0RnIzdkhYTkRhWXZnM3UxNUlJMjVUN1ZPQTZUMnVwVUUrLzFMbmpJZXREN0VXc1QwbERjNDJob0hOY3kvcU9QSE9EaTVYS1I2VG1FVWxBYm9wQUVZSGVFUGpJQ2RRd25oS29nUEd0TmpGdllvMC9sdUJBUUJKWW1pUndGQWtvY0YzMzFLWUluTldWT0p4cjZWN1FHbTJvS2VOUUJhZHliZDlLNExvZHo5Z0RxeEZCN2U3NXpCbExFV1I3YzI4ZHRXVE8zN0thSzlwYjg1Nlk1MmdRS0swem1EdGVNd2xMTTlkbm5ZamdINEx1SDBsN2swUDJwREdCNjFvNk9UdndITHZaUGdTdTJjUEU5c2JlZXovOVEwVGN2TFBIKzJPWitTeTJ3OHYwTHJ4VVIreWI4blA3TkxWaXFZY29jTTN0ZHZlMk9MdUFPUGpUWit5ejFRVCtabjl6eUNkd1RzQ2MybmM3dDRhbVBhelJ2MXhieUk3eThaN3h2dmFEYTdQdmh3ajQxaWtub2t1ZHIweDdzNno3VGtxYWF4UFlnczljMi9FV2JlbVd1WlhBWTFzSHRuWHN4Z1F4N1BmUnVYdmplMFlZczJRVGh1TVROaFRUYjl1MGRGM1RIM3RMNjRFSFJNU1RKenprcFhhektmYWpzV1lSZUlQOUZXenFZd25CY2dKWWpBV3BHQXBBdTNRL3BQUU0yclpqdjZmL3JObi9HN3RmeHNxZlQvT2EvcmhaTXhZTUJUMGRxNXZ6aTN3bkgxN2hPMkh1eEo0cDUreHlxVFlvY0h1dEF0ZmxwM2YyWmkzeHpvaTRhQzlMelhuUFE3VTNyQ1Z3WFh1R3QwWEhOMHh3QmM3bjdVcGMrVGdLWE1QOUY5TFphVVN1NXlUMlE5aGI1Mnpxb1NYblA0ZjJSR3lQQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJSUdGQkJTNFhnalF5eVVnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpKQUxmN3JFK0NnQUFJQUJKUkVGVUhSRjNUTTRFUXlMTU9IeitVRVJ3OExnbTRTeUUwOGJ6R2lIV3I5UmNzS004SE1pL2VFUWc3c1YvbHhpb2Q2NlRPa3h4c3NjaDZrY3I3NHREOFUrcXpFczJuZ1ZPOVgwQjFkK0tpUHRNS0tlYjliWko1RzNvY3B5RkVGdzZydWs2U1dqOHV3bzMrUHlJdUZkRWZLdjNlMG5vYnN6Qjg2Z0pYSmZla1JjbEFjZTFCWmRQc3NBMURwbzQ4dlgzeEdvY2p3NzkrMXhMNFBxU1NTenJ6SmtiUnR6a0pYc0VnWlBlaXlQaXVudHNRMG1NZjQ5Tk9rM1ZXd3BjTTU5QlpJMjVTTGUvempsOXp4SGxHR0tZdTY4MVJaTDI3Yml1d1BXaGZFRzJZeTRCUklHWUwvOWlwZ0RHV0lTcnBnZ3g1dG94Sm01TlFDRG1uSit2dkFubUFnOXExbUdJNytiUzFpTFhoeVRlVVltc0tsdHBQVFVXb0liQUdvengvVlFyd255aFJ2RHpYUkZCZjlxbXY0dUl1MGJFTzVKUXdOeStma3pnbW5lSmQ1eTVlMWVNZEZkaUh1MzlNazRqZG9Ud0tZSUdWMjlzQjBPMkNMN1haMVU5MWRObVl0My9tK2w3cTduOExVbjg2cHMxbVZPZW5ORFBrdUEvRjJqYSs5N0dQbk9PZ1RZZ3ZuN0RpUGpHaEhZZWhheTFZdE5yM2t0dG5Wc0lYUE1OTWcvbFBlMm1PZTk3NmR0Zms5VXV5cXJ0UjJ2YnNsU29wMS9QMVBHd0pKanhoY2J1ZE1YQ1BHQnN6S2ROQ0dzZ0NJRVE5QlFiekUrbUlGcjk5WE0zd0FMbFR4VW9RbFFLa2V2ejlJQk5IVnN1bXdKNjVOYjNwV2RPVUFMbVIyc0lCdFcrVithVHdCb0VGTGl1bzdoVUNLNnVsbE56cldtN21WcjNsUHhiQ2s2eGxvWERsUEZscU8xYkNGem54ck9oOFNBWDBIU3FTRlV1c09rYTlrUUZycWU4K2Njejd4YnJqTko4N24rbU9lZy9Ua0I1VkFXdTJadDVheU5XelB4eUgrbGZrcTJETnBUU29RcGMwMTc2elZ1bGN5UHNyMHhKckdkK0ppSmUySWlzRG9uWEVYRHV2aEh4a01hMmdTQnJLWlgyNUtlMEtaZDM2ejJjcGUzclhyLzF1ekxVMWxLd2RhNGhPQkhQK2FRa0FvQy9MaUt3MjNYVHZ1YVBjMjNIV3ordnJRVWUyL2JUMS9CTUNOYlZCaE9iZW0rY3kzcndqdXdKUzljMS9YbG5qdk5ZME00Y242VjJzNm4ybzZGblZHUGJKSWdFWXdkQ3MyUHJsVEZSWjhhZngxZVVNOVRtb2NDMFhEZlZMcGFyaTNmOS9vMnQ3b21GaHZ5M1pwK0ZzWElvVVFhaThBK3IvRWhZS3hIY2dyT09VK2FOTmNWempwSTVCa0ZJK2dGOXB3UUZwaTRGcnN2RVMzdVlmeG9SMTR1SXJ3ODhyQzN0RFRYdlNDblBVb0ZyM3IxYk51ZHNuOXIwSVdldGJBaUN5c3gzQ0RLMHkzU2NCSzZubkoxdSsvVXh6UkNFOHVuVDF1NmZsanhqNXo5TDZIbXRCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lJRURKREJtckQ3QUp0c2tDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSUhSUUE3Szg3Z0NMeGRmcVJsT0JvaXNvUFRDQUpVajVrZzNNdzFYSThvOHQvdW1BRDN5T0YwbkVzUW5MNUJSSnh0UWh1bU92eE9ZZHB2eGo5SHhEVWJ2aCtwYkY5SitHcUpRK0dRdUViYnJOOVBndWlWelR4eTJYaUdpQ3IxUmJ4NWozRWV3cG5uUHpKM2hlZzEzMUkvalluczVoeHZjQnBDV0c5dXdua2FJZW9QWndySU9YN1Vpa2dOT2JMT0VlR3F1YitUS25ETmUvaTdFWEduREtRM0pXZk5mNnNCZUtCNTFoSzRMdlZaQ0lmU24zNXB6L2VQOHlSdFpNemNkYUkvd2pHM0w4YS82M1lNMWJlR3dQVUgwN2orNHhGeGxmVGZUNlFnRURuSGNnV3VsNzhCQ2x3dloyZ0oreVhBbXVCbGpmTmpMcGdKVHBIM2JoeTlFUU9ZbXhDbFplMXo3VUlCek5Od0lQN0F4QXArTUNJSW5GSXFselhFVFJwbjIwOU5MTGNtKzFSQno1b3lEeUVQSWhnSUJTTjgxRTFENHNFSXBDTW9pb040TjAwVmtHRHUvTXhVUUc3TW5pdFNNaVp3M2JZWmNXbEVycStVeEFUdXViR1l4NVFnVTdsMzQ3OUd4R3NudkRTTVZZOG9DTm1QRlhQM0pPSTBsby9mZVI4SXFFSy8wazFqUVk2R3lxNFI4NWhxcDZpNWwwUElVeXMydldaYmErdmNRbml1Wk5OQnZQd05FMit5NXIyWldPUmVzdGZhSm1vYnQxU29wMTlQN1hqSWV2NWFFZkhzWnN5NFlLYXhZMk1HNjBpQ3l6MXk1RWF4enpGdnFSR2RJemdlNzFVM3VBSEY1K1lsY3dTSyttSmZVMFZwbUQ4eFA3dGE3NTRKUHZLYTFNK1dBdEc5TFltTkxMR2oxYjVUNXBQQVdnUVV1SzRqdVZRSXJxNldVM1B0UzZCd2FqdVhDRTR4eHJEK29kOW1qR0lPZ1IyTmVRbjdhR3NIVWxsYjRMb2tMZ2xENXVVRWdPamFRZ21hZ0JnbE5zTmNxaEZPUFh0alozNW5VLzVGZXdVOHF2bi9mMlhxdyt2bFYrQjZJY0JqY1BrVzZ3eXc1UHFKT2V2SW95cHdEUU8rejdINTlKYXYwSmo5YjJ2UjRuMzBMd1JKK0kySXVNY0kyRzVRQWtUdkVMZ3VCZldqcUMzbSt3cGMxNzM5NTQ2STl6ZTJ3M1Axc284RkI2d3IvZWprSWxqZ3k1c2dlcVZnVEs5SWM1QWh3ZEMxNzNhdTdYanRkdlRMMjVYQVk3ZGUrbE9DZzNKV1p5aUFZdmNhUkV1eHYzRStheGRwNmJxbUwzQ2RPNWYwMlRUbkphaGFiVnBxTjV0alA4cTFEVHZhVTVKNGRhbnRyTlVRcDMxOXhjMk5CWTlqWE1HZXYvU2JMWjByYTVzNFJaQTdkMXVNa2IrY09iZld6VnNiL0hac2Y1RXlzUyt5cC9MY0had3Y2ZTVQVWZmVW9NQmNvOEIxL21NZzRPS3IwejUwUDBlTjdYMkp2YUhpODV5ZFpZbkE5VFhTbmw5L1RWOXFET2Mxc2MwVFBIY2ZRUldQZzhBMTR6RkJieERueisyUDlObHo1Z3Z4ZS9vcUFreVBYVVAveXBrT0FsMGNndEMxODUvWm43WVhTa0FDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoSTRUQUlLWEIvbWM3RlZFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUXdPRVR3TDZLRUNRSGlhOVQwZHl1bzJHYkhXY0tEb0UvS1NJdVUxRkdtd1ZuSVE3TjQ0U1RFd21lVUZRMks0ZWtMNUxhZHJPSXVQb0VSNlpjZ1ZNY2ZpK2VEcmpYTVAxL0l5Sm41NTdpVElNejNadDc1U0I0eTNPQjg1eUVjQmpDTVVNSlI5TW56eW44Q0YzVGQvREJFUmxoOTdjVzdxRWtjbERqU0xiVWNXd3ExaVVDMTVkc1JCWGZuWEhnaEE4aVJIOHp0VEVWK1UrcXdQWDVFK3UrMHpESXhrVFRLN0R1UGNzYUF0ZDhwNGg5RThDZ245WVFHRmtURXVNRGdpbGp3U1RXcVBQdkl1S3V6Vmp3amtiQWdiSG1rTk1TZ1d2dWl6RVBKNzFTeW8zaENsd3ZmeU1VdUY3TzBCTDJSK0M4alpQL1d5TGl3cGttL0gwU2ovN01ndVlodHZXcWpQQlZXeVFPbHpqaEkzNDdKdzIxbi9JK0Z4SE01M0VFWFRPVjVtTnpSRmpYYk5mU3NnZ0lneGg1UHowdmlaTGt5aS9OaHorYTFtRzFvaGpNWTNDOFJlU2FhL3RwcmtoSnJjQTE5VEdHM2pTSlFpd1ZjK2kybjNVdVl3VWljamd3VHcweWxlTmVLM0Q5QTQyZEFmdkZmU3ZzQUtVMStaZ0lWYmQ5Q01WaTIyQ3UxMDA0di9jREp0VytyOHovM3hzUmZPK2xoTjNneGpzUW1xaHQ4MXI1YXNXbTE2cVBjbXJyekgyVFM1NHpkZWRzT3Q5SWErdS9ubmlUQ2x6bmdhMXRiNmtSdUVZQTdHbXBmeDE2akdOQndyQnZQaU1pN2pMeUx0U3MvNGJFUUIrWWJMdmRhdVlLRkxYMWZIcWlVTkNReUU0YmZPU3lhZjUwbmdJUHhsOUVNTjQrOGRzeHV3VDJSVUNCNnpyeVM0WGc2bW81TmRkeEVMaG0zc3dZd255Y3RRdmkxY3dyQ1hSQUh6b20ramRsUDZ5Rzc1b0MxMFByNGFIOUc4VFRFS1dFUVM3OWVkcjdLZGtDQ0c2RXdGSTNFWUNCNElydnE0RXdrR2NmQXJRTG0remxLeE5RNExwT2tHek90MUt5MzZ6OENBZUxHeEtkUEc0QzE1eE53SjQySkVhSFFDQ0JDQWdjMTkyN3dvNTB4M1I5S2FnTmR0c2JOWFArajYzMEFEa244OExlZnZkUThPaVZxcDFWRElIYnNTWDM3VVEvUDNCdVlWWkZtWXV1bXZZYUNmRFdUWCtjMW56ZlhxdWlBeTJuNXQxc200Nk5tWFgrcm9JT3o3VWRiNDE2SHdLUDdUMmRKZlV2MktKckVuczFQRGNFOXVsYnR0eFRYN3F1NlFwY2w4Um41d1JjWEdvM20ycy82ajhmemhseER1c01oUWZIdmhlQzFEVm40UGh1MllNanVHZHVUS0d2LzZuR3R2NVhOUzlKUlo0YTRXaHNiNXl2bS9LT3NXNTdYQW9DTWRZTXpvVGNQQ0srT3BLUmRSSDdDZ1EzNnFZdnB6T2NySGs0ZTdHcnhQNFU0dlQwWjlkUFo2T20xSzNBZFo0VzUxWGZtSG4vYTgvMEhVZUI2NTlNNThwS2dTcTZKRm5qM3lZaWxwd1ZtUEllNS9LV2dqUDNneDBzcldlTDZ3bDRndzJGL29zZ2FqV0pvRVJQNlBRLzdQTStOZ1d1cUxtZTk1MSs1TU1UKzltYXNtdnpPUCtwSldVK0NVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFKSGhJQUMxMGZrUWRsTUNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJNEdBSXRLTFVqNjhVMmZ6WGlFRDA2L1VEaDRDbmltVzNNSENVUjNnS3gvSzVUaExVellGb3hFMXhhcnplaUFqVTFBZnhrZVQ0OHBTQk5rNjlmNWdpUFByRkpFNmRjOUo1U0VUd2pNWWNYTzRXRVFpOWRCTU9ubGVPaUM5TnZkbVVIeWRKeEdBdVViZ2V3UmdjOTJGejNGUHI1SUFqMEpEVExPOEFvdTA1QVRQRWlPNDk4aXlYT281TmZRNUxCSzUvcGJrWG5BdjZDWkZoeFBIbWZzdEQ5M0JTQmE3dkZSRy9sUUh6OGZRTnp2M0dwNzR2VytWZlErQWFSemVjcVB0N2hyWE9XVnZkVzZuY3VZRWhhdHZKdTBGZjlMcU5Ba2pVdG1OS3ZweWpEMlBiUHliUm1VczN6NWkrR0xHSE9VbUI2em5VeHE5UjRIcWNrVGtPazhDUW96bnpiZ0pJdkhSbTArbmpFV0poYmw0U0RFTXdBYWZZbDFYTTg0ZWFNZWFJaXlnYjkvTGFoZlYwMjFDYWo0MkpjODdFdVpQTG1ELzhidU9rZktkTWJiZExJamU1aHBUbXc4emI3ck5peStlS2xFd1J1RjZydVRpOEkvQ01tRFh6TTRUalNvSkVVK3Y4cDJhOS80YW12RWRIQkd2ZFVrTEFoSGxRamJBMVpmQzhDUGoxaW9KdGhLQSt2UGRqd3Q4bFIvTWw0dSs4bTlnZ3VKZFN1bnZHRmpDVjdTSG1yeFdiWHJQdHRYWG12c2s1d2pIZHR1ZHNPbFBGOHR2eWN0OCs0dzd6YXY0OXhQVERqWEFCZ2dmZHhIZU1zTkJhYVcxN3k1REFOZUoxdFFMN0JLSmd6WStZL1ZCaVRvRllOdVB0V0hwT3N0Znd6THRwU055YWErNFpFUWpOZGRNU2dTSUV2aEU1cXczNGNJNDBOMExNcUord1BTSTZ4RmhBNHAyaHpRUTBMS1Zja01ZeGR2NHVnWDBRVU9DNmp2cFNJYmk2V2s3TmRSUUVyaGtiZmpTSjhWMXg2ZzFXNUY5YjREbzMzNkVaVThkOHhwZFhGMFNxR2NjUVVDTFlWQ2t4NTJDOXpsb3ZseGkzRUFmdkMxYVh4TDMrTk8xSGpxMFh4cERQRWUwZEs5UGZqeFlCQmE2M0U3aEdOSkYrZzdNRFN4UENqNjJRTDN2R2Y5SFpnMkUvNmkvVDNqejd3ZjFFTU5iSFpQWnNqb3ZBZGEwQUhmdFhCS1Q1VU9GaFlBdEJuQlBSNlpKdGRTd1k5ZExuN1BXbkozRC9URUFrY2gxbG0zRHRjK1k5cEkvbSs2MU5DTWRpYS81ODdRVUw4czIxSFMrb3N1clNmUWc4dG1LYUNBalRKODFKMkdrZWtVUmgremFTT2VYMXIrbXZhd2lXZ2wyNlZoQWRteFAyYk1haUt6Vm5SZDZaRVlPZTgxMHV0WnN0c1IrMWpOaGI0MzFHekRTWHNBM2RwSm5IZjZyeVFTQ0V6UjVjYm45aWFRRGFVaE1JeXNZWnV5SHgzQ2RGeElNek5yaGNtVlBzZ2UzMUJPM2h2TlpZLzlQbHc3ditzUFJ1YlhIT3EvS1JCVUZFdnpKalAxT0I2OU1UNXQxaExuV0xEUHlYUk1UdG0yZituWkVIY3h3RnJybmxvYjZCM3puTFN6OUsvL0VmdFMvdlJ2bXdUYndtVS9ZaEMxd1RVQTA3RHd4cjk0Y0pXc0M4S1JjRW1yWEJ0U0xpMlNNQmRMcVlDQVNLVURiakszM0tMcFB6bjEzU3RpNEpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFqc2dvTUQxRGlCYmhRUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkhBc0NDRDJkT2VJZUdBU2hLNjVxVGtPV09kUGpqODVrYkJTblRoS0lBejh6SmtIakJGNnlUbU0xdHhqTncvT0xEaDlJRkNFb1BjblJweExjTFJCV0J0SGxGb2hnYWMzWlQ0MEhZei9udVFvVWhLcHdZbUhnOWNsa2V1U0lCdGlyeHpNYngxdHAzSWdmMGswYnl1SG56bHQzTlUxVjJtY1BEZ0VqeUI1S1NFR2poTVpqamZkVkN1eXU5UnhiQ3FMdVFMWE9DVGdtSFdoVElWOGc3emZXNlNUS0hDTkFDZWk0ZlF4L1lRelBNS0tSejB0RmJpbUQvMkRKRjdTWjFIcm5MVXZodlRmRjI1RXV1NlJ4RkNIbkIzSDJrZy9BOHZmYmdKUzROdzZGaGhockx5dGYyZnNaRTVDTUlXTFJzUzFHOUU5aEc2MjJ2ZFY0SHFiSjZyQTlUWmNMWFZiQWpqMUVuamtMb1ZxU2dLUE5hMUNtSkYrR09meFVtSWV6WHFNUG51TnZuck1FWmQySU42TEtNTWFqdWxYalloM1JBVGpiemNkc2pQdDJMTmpuc1hjOW95OWpBZ1ZjYjhmeXhUQWVoZmg0M1AxZmtPUWdpQkFmVEcwc1RZTS9UNVhwR1FmQXRjL25ZSTNyVEdlZnpZNWJpUFEvdjdHaHZITkVZaFRuYWI3RHRNNGlpTjRsWE80eGliQ3R6WWtXcGR6TkI5NmgycmZpU0ZCL2lYOVZXMzkrOHFYVy92OVJpT2V6blBiS2wwK0luNjVWempQbFhld20zTGlqRitJQ0VSNVB6MmpjU1d4dGJrMm5keTNmK2g5OUZaaWZ0M0hzYmE5SlZjZTQreXpJdUxuSzRTVTVnaGxNSWQ1WEVROG9PSTlRNWlHc1IvUkkwU1NMaE1SZnhRUjlKWDlOTlRIclNGUVZOSGM0UHZERHB0ckgydGR4QWcvMEN1SU5TWGk0QWhYbGNReXVHZSsyU0ZiWGszN3pDT0JMUWtvY0YxSDk2UUpYRE9mUnN5Zi85aHpPR2ZxeXk4VkVRZzhZNCtwRlFxcUkzejZYR3NMWENOVVIwRFhmcG9pY0QwVURHSEtuaFZqS3Z0enVRQ2V0STl4OUJlU3pibGR0eE5VQVhHay9scG5TdnVIbmdYbE14WjIwNkhQNGVhK1cxNlhKN0RWbkRnM241dnpmZWZzd0hQZTBWdzVVOW96Vnd3ZThmc1hKL1J0QUNDRUgxdVJaUVJOMjJBcXRPZHpLUzkySHRiMlUyeDRmZHNqOVNFT3pONXBUaVR2cUF0Y015Ky9aUW9lTUNZb1M3Qnp6a1BBZEN4aFl5Si9hZDlzYlJ2cldIdE84dS9ZZ2RsdnhUYldUV3ZZdlE2ZEt6WWJncyt4cnN3bEFtUHdIL3VjL1RSbjNUK0h4MXpiOFp5NnBseXpTNEZIYkFtL0ZCRUVBdVNaclpHdzhXQlR3UjY1cGpobWYxMHpaUXpzM2hmZkpVRmIyR3RhNDd0Y2FqZGJ5MzVVc24zVmlqYTNMTWIyemNiTzRDMTVoOGJxcG13QzhyQkhPVFFlOGk3ekR2YWZjZHMyNWk0RTNyaE9wckgwU3dUWmZldklPY01IcGVBK0JQLzV6SktiM3ZPMUNseWYvZ0h3WHJ3eFl6ZVlzb2RaRXJqKzIyYVArRmNYbmtWZDhzb1FZTGdmSUhGS1g4cWFubmMvRjF5emU1WjNTUnZYdUpZK0FKSHRHMlVLbTdNT1c2Tk5wVElJTUlHWU92YVJINXRRMFpTNUVqdzRqOHE3VndxQ2s2dWEvV1gyRDk1Y0VjaDRRdE9MV1ozL3JFSFJNaVFnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpIQkNCTlJ5akR1aDJiSW9FSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdnVlVKY0pENGhzbDVzbGFBbVFaTU9VaGNhakJPbVE5THpvcTFEdmM0SkQ0L0hVcWVJZzZVRTVTcUFZbXorcnVTa3lRT0hqaHU1QnhNKzJWeFlCcm5GQTVQWDdDbW9pVEdoT2ozUjN2NUVTVjRTOEg1RFI3M1RVSjhPUWZhc3lkUjViN2pIQTc2Q0lZdlRiVHR3WTJvMlBYVElmRS9hWndnSHAyNWg2WDFIUFhyaDV3TG5wZStnZThjMEUyV25GRnJCQmxLd2l1MVF0NXpNZXhLNExvazNQajdTWVI0YnZ2blhNZDNoN0JaZnk5c2E5WnoycnF2YXk2WkJDYjdUdTcwbDR4OU9HNGRsWVRnTTRFRnJoVVJGMmtFeUg0aU9aMjFvald0OEFMLy9tVWpvUHJYamRQaWV5UGlMMVoycnQwRnI5czJJdmt2MkVWRnFZNlBOR1A5VDNWRUt2aHpyaTliMnhrczU4RDAvelJDcWxkUHoyMHBnbHJIOVZaUW5IL1hUQWlVMDBjaHROUW1uTDRSOTIzRlFkYXFqL2NlUjEvbWJTWUp6Q1V3NUxSS21RUUl3T2tYWWQwcHFWYkloZmVYL2c5UnJDbkNPR050cVhHWUoxREx6NjBnRHN2YUFHZlF2ckF6YlVUc2d6WElHa0xhWS9lOHh1ODhONTQzZ1RMNkFXb292elFtOEI2eEhtS2QyMDlyanlPbDhhckdXWHNmQXRlOEY4eE56anZqQVRGV3Z5Yjl4eGhTRTZpSlovSGp5UkdkZVhOTkt0azV4Z0pQOGQwaWNwY1R1YVlkaUUzY3M5ZUE5NlQ1NkRkcUdqYVFoN1htZjR1SXV5YVJ3MzlJUWJEK3NOSjJzYkQ2dlZ4ZVd2dnR1akU1Z2V1U2tQdGN3ZkZTSDQ0OWh6NTFhbExnT2s5c3FWQlB2MVFFNmdoME56VXhGM2hxUkR3bTJWMm5Ycy9ZaGNCMVRvQ2pYMVpYR0xvVUZIQnM3ck9XUUZIcFByR3RJa0tGNkdsT21LSkdySlIxM2tzTFl6bjFJazdJZDdhbFFQN1U1MmgrQ1VoQUF0K1hna2V5cDNPQjlMLzVGM3NnSXM1VHhIcTJvcm1tL1dvb2lDTjlOQUp2WTJsTTNCb0JOOFNmYXRmYXpPR1p2ek11bC9ZdWI1L3NsOWhzMzlBRXhDVWdRemV0YWFOSC9KdnhzSnUyV0YrT2NmYjMvUkZRNERyaUh5dnd6eFc0cGw4bGFBQnIraHA3UTBWVEJyTzB3YXF1bE94eEJFNHE5VTlIV2VENjR1bE1SNzkvN01OaEhZU3dOY0t1TldjdzJ1dmhSOUNhbk4ydXpVTXdZUHBQOXcyV3ZyWGw2K0hQbU1UejdpWUNOTE1YZEZSc3dWTUo4UjAvTnlKdVhyaVF0U1oybzYrbGN6NEVOTTZsanlmQng5ZE5mUDlyMjh1MzFROGl3djRHYzZ4V3VMKzJyRFh6NWV4bk5UYnQyamJ3ZkhqL2FzVTA2U093NTlNZlA3QTVFOGFacmRyemE1dzFZSnorOElTNVp1aysxaEs0THRuK0NaaENVSWVwNTVLVzJzM1d0Qi8xQTBXTTJhNjZySm5qMzdFSm9NYjVyTkx6bld2RHJYMDN4L1loMjNLRzl1dzQ0NG1BT2NMVHVVVHdWWUpMZk85SS84TVlTa0JIQklsekNUc2p0cmZhTlZRdGcxM25LKzBsd0FtYjZGcUpjNkdjRCswSEFONUM4Sm4ralRWdVArWDJLL3A1U3NMVTVHTXM0dDJwR2J1SHlsbUw2VnJsVEIxZit2MU1QeUR1R3UxaW5NS3VNbWVPeXA0Zzg5djdGUnF5ajdPTC9hYkFrSE50bkdkbWY3WjJUS1djZm5ET0tidzVwOERlQ3VQNDFFU3dCT1oyekdHWksyM1I5em4vbWZwVXpDOEJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSTRNQUpLSEI5NEEvSTVrbEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJN0o0RG84WTJTcytEbFp0VCs5Q1NrZy9qVEd1a0hHbEhDK3lUbktnNWkxeVpFbngvZWlFSjlvT0pnTVFJQWlHbmg2RDZVNWdwYXQyV2VKNG12M0wwUmxLbTlGNXhUeVAvMkFjZTFxMFVFQXR0bktEUytKQmlIMDlvemU5ZHdDUHU2cWJ4YTF1YWJUMkRJU2VtZkd3SHlhMFlFZ20ySGxFckM2THhQenhwb0tPOC83L0dGTW5sZUVoR0lQa3gxbUt2bHNndUJhNXd3bmwxd2hzQVJEbEc3WFNVY294QmN4QW14bjdabXZhdDdYS09lWDJuR2gwZG1DdnJUaUxoZVFZUndqWG90WXhtQmt1UHRzbEpQY1lZaWlBVHpBWndXRWYvR3lUd25XcEVURGVtS2lDOXRDOWNqV0hUV1hrRnJDZ1RWQ2x5WFJETFd1TWRkbGJFbXQxMjEyWG9PajhEUW5PM2ZJd0tuUS9xTzJrUjVPRzgrb3hDb3Bsc09jMEljajk5WFcvakVmRGRyMnNEOFlFd0lqVUJDcks4K1A3SDhOanY5R2lJSkJKSElKZnBoaE8vM0taNVJjMnVzSFFrMk1NVHIzbzJBRHV2aWZycEVDakNVRTlkQlJKem5zR2FxN2V2N2RlNUQ0TG9VUkNmSFk0NmdkVnNPQWcrM1NLSWt0Y0dtYWh5bVM4SjFiYjA0UDFNdlFiRzZxZlJPSUhxTkhjUTBuY0FoQzF5ZlA0MFZPYUYvUkVNZWtlYWpROElGakIvTXp4QkpScVNnNy95L3hLYWp3SFgrZlZzcTFOTXRkVXBmMTczdTFhbFBtRHNHdDJYeC9uQS9MNDZJTXhZK3I3NHdkRTVZb1N1QVhmcEsxeFFvNnRiUkJpaEFVS0lraHNjOTFJcVZuaThGTGl6WndQa2VzZWRnWTlsQ3VHSjZMK2NWRXBEQVNTZFFDcGl4VHk2SU03S093NmJLWEIyUkx0YkhCQnRia2xoekViUWpaNytsM0JxQnJqRng2enNuMGRTcGZUempFYUtWTDh5c0RidkNkd1NYZUdJR0FyWUExbzFUNiswWFZWcUh2Q2lKMmkwdGY4bno4OXJkRVZEZ2VsdUI2OTA5eVZOcm91OUMySzRrS3RubXZGaGpreVJBRmdMY2JXS2ZGWnNqZjErYTVvcUNEOVU3UlZnT3dVQUVPajh4ODBZdWswU3UyWjh1SmV5ZDk0cUliM1V5d0pPekYyTzIwcG5OT3BLWFlaZit3b3lXbDJ5TU5VR3paMVIzRUpjTXpUMW9JTGIrR3pUbnNiQVZrbXJlVThSRUVhVGtQNElZNzBKc2YxOHdTOEVBcHdxUWR0dFBtUVJWUkpqMTV4dWJ5STlOdURuc2RkamdPTFBWSnVaZnZNTUljOWIyRTF5UFNEYjdJM01FUzZsN0RZRnI3RktJSHpNSDdxZTUreE5MN1dhNXMzcEw5blZiOFZsczhaejM0THpnV0tvSkN2ZTJKUDZlQzJJNVZ2NlUzL3ZpdVVQWHNrNTZRa2R3ZUV4Y243WGF6M1FDOVJJOEhiSFdmakQ0YnAzTVJUaHZpTUE3QVVXTzIvcmlVUFlTcHJ3amMvUFdySitaZDJFRDdTZHNyUWdSY3c2M0poMW5nV3Z1bjBEdTlLV2N0eDA2eTF2REtwZW5HOFNLT1dvYnlKMjVRNzhQK21DeXg5Q1hNdS9pblI0Nmp6eDJybk51bThldTQ0d0E1MSt4ZzB3VnRhYnNwY0UvdSsxakh2QzRGT3hpck4yNTMza21CTEFna0REUGY0MiswZm5QbkNmaE5SS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRURweUFBdGNIL29Cc25nUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkxBNUFRNldYekU1WTk4MEhjU2VVK2xTd2JPeE9oR2lRbERrMFJHQjZIVnQ0akEzemtJY0x2NlB3a1Vsc1RVTzZYTkEvSGVUNEROaVZLVXlTdTNCQVlYRDJZaFRJVDVRbXhBSXYwZEV2S3pDeVdsSWNLK3RENmVwWDA2aWNkekRIZEpoKzc3VDFXY2JwNFNyekhSU3JMMDM4NTFLNEdmVE0rNkxVcEhqVjVQQTFTRTVDZUVJZ2RoYXp1bHR5Q0dHZDVSdmwyK3huN2cvaEE3NVJyZEtVd1d1VytkbEhFWVJ2RzIvZXdRc2NSN3BQaE8rb1l1bis0TkJMdTNhVWZlU1NVU2s3NHkyQzlaYlBjTzF5eTBKdFZOUFNaUnk3VFpZM2p3Q1B4UVJiNDZJT1VFNHFIR0trSFdwaFRuUmtIbDNNKzJxSlE2OS9acHFSVThWdUo3MmpNeDl2QW1VSE12NW5uQWlyNW16TVNmQ2FaejVWRW1Vc1VzUnAvazdMUkNWcm4waVB4VVJMMjFFbVhQQ3k5MHlXQi9odFB2NEZBU2d0dncySDJMYXI0aUk0M3hXQjVFQWVQYUZ1bmwvRUQ5RFdLR2ZQcDRjZTcrVWZzREJHQWZtcFlrNUxldm9mc0xaZGlpd1RDN0lBbVVnWFBmTnBZMUsxeU9PZXR0R0ZPTERuZkx1bHQ2dmZoV3NVWGsvRVFENTBBd1JGOTQzUko5WWs3TU9yZzAyUlRzUUtpY295bGNxN250TUVJSTVDR3M4Z2dMeGZsdzZpY3hlTkZQMmpaTUlVMFcxWnVrUk9CUlJpdHo2ZUNnUTBWb1Bja213SGdXdTgwOWhxVkJQdDlUU1dyMzAvTEhsM1RVaTNsRTV6Nmg5aitnVFgxVUlzdEdmMXlESVRoQWd4S0JJZlFIc1VwMWJDRndqUHZFYlNkQzBWQzk5TGVNTDg0MmF1Um5sTUZiUzN6UG5LcVdjOEYwdGIvTkpRQUlTV0pOQXYxOWVzK3lodnBVZ2NPeVZzWFpoRHMrL3JDdjZ0dktoOWlEbWlBQVE2eDc2NjY0NEUyVzFhd1BtVE15dG1VK1ZndEo4STRtUC92VkFoWXhkcjI4Q0dSQlVwcDhZenhBbFJHaTZkcnpJVmNXZTM4czdvbkNNUCt4aklqcFZXaC9VMlBldzY3TnU0VDVMYXpERUZaK1dnanIwMjJiQW5GMThHWWRUeDBrUnVNNnRWOWkvdTBZU2pCMTdJbHVJTlkvVnVmWHZDRFB6dlhkVFRSOVQyNjQxbWRGbkljUjV6MHlncG41N0dDUFlUK2JlMktkZGtnaTZURUM5Q3c4VXduNFR3cTV0WUlhdGdxd3V1WTk5WDFzamlwbHJJMnV6RjJ6NGp1NmJTNzkrempBaGlFeFZZQlFrQUFBZ0FFbEVRVlMvbEV1bFlGR3MwVi9YQ0ZnalRsbVRFRllrQUJZMm9QL1Z1UURoNi83ZnV1V1JGOXNxNXgzNmlXODBaNk5zODMxdlJGd2hCZWN0dGZGU1RURHdjMlorcEs4bUNCWGZHUGJxS3lYaGV1WTRmT053SWJFMngzNkwvYlIvZHVidm03M2hLNmQ1NUJnanhJcloyMFJJOHlacFRsa3JSTjJXelJrejVvb0ViU25ORlhuZXRCYzdmcTI5bWZ1bGI4TzJVV052N3Q3ckdnTFgxMGxuY3ZwOCsvc1RZNHk3dnkreG04RVFnVmplajI3aVhibHFSSHhzU2tNNmVYbVhlQmMvV1hGOWpVMkk5d0NCOUM5V2xMZEdsaWtpMXdUczVoa3cvaE5BbGJPSnVRUUxuajk3TGQyRTREVm5Fa3VCOExwNVdVUHhMZjVKNm52NGRoSGRIOXByV29NSFpTRGV6ZmpNV25Fc0lUNzhFeWtUZ3N4M0wvUjdaRG1VdllTeGUxcmo5N0d4bkNDQTdFbm54aUxXdkl6cHRRTDl4MTNnZW8zbk1WVEdWdThsM3l4QlhQNW02eHRJNXdBWWk3RURzZWM5OTJ3WFo2Y2ZtL2FPK2Q5ckp2WWFDS3AyKzRXRnRtZkxPZlBLUGc2MnJiNnR6UG5QL1BuUHdzZmo1UktRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUU5a2ZnT0R2TjdZK3FOVXRBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBS0hTZ0NiNkZtVDh4SEN1amd3NUp5TWF0dmZDcHpoWklRRCtpNFN6a0U0R1NLcXhyM1Vwdi9aaU5RK1BEbWI1NXdoV3pFdEJNbGVGQkd2U1k1VnRRZjB1KzJBTTQ2U0NGUWpSRlByMEVRWkhNakdhZk81RTUwMmNYTGg0RFhPb1VzU0R2Mkl1eTV4Nmw5Uy8wbTZka2dBclNTTXR5YWZ2ckI3VitpT3cvWTRRM1VGM1hFYXVtNUhyS0hibGpGQkNSd2UzMTV3akhwVFJDQ3V2OVJKZVlqTlZJRnJuSFlRY0RySENzRDVsdUQyMWhYS3FpMENFYjVjWDdCRTdLeTI3cU9TNzlaSlVMRGYzaThrcDU1UEg1VWJPYUh0Wkl6TUNlMTNjYlJPbHU5S2pwYTgvd1NxV0VPWVU0SHJvL1hpclNucWNiVHUzTlp1UVlENUVDSzcxMDZGUHljSnM0eXRHZHFnTndUOHVFeGx3eGpMRWM3ZWNvN1ViUXJPeXpncDF6cVpNcmRCVEF1SHpiSDdiK3RoWFlTei9JMHFHUnkxYkl3OXpHc1JNdWtuSEhnUmE4aWxmbkNOZlkwenUrU2Q2NXNSYzNsUEVrUjRkUkluZmYrQ3NSdGhscHRIeElNR2hQRks5enczZ0ZkZjRHNE8weVdDSW5QcU8yN1hiT1g4UDVWVFNUQUNBUUg2enpOTUxiQXlQODc0ZmZHb0o2ZHZZYXlJbkxnOS9ScTJBdjQ5eEpRVDhrZm9xUlVtSzdVNUo3SmZ5cnRFcUtkYjVoUnhHbmhqNDN2cWh2TUFCSHdRVk1KMjJhYmN2QWJoR0FSeXNDUFRMdFpoaUNxTjJRM1hFcmhHbUFweE1PekFZOEZCL3JrUlA3cFZzajlOZlYrcEI0RkF2cGRjRURyS1E0aVZRQldzSzAwU2tJQUU5a1dnMnkrdjJZWXZKN0V5Qk1yWUZ5RElBb0p5akttMTY3Mng5aERnQlhHNE00MWxyUGg5ek00OUpCUzVscmgxMjB6RUZoSFNoaHZqSmVMV2ZkdEI5NWFlbHdTZWhvVGdFRXBFeEttYmVFWUlWNUpLUVluYS9BYk1xWGlKamxHV2t5Qnd6YndmQWZscjlaN2IvMGcycGhxYi81cGl6VnUvUGdSb2ZXQmpjMno3WnVyRFZ0Q0tvV0x2NEt3RTlvNithT3RTVWREdXZhM0JER0U3emoxZ0Z5dk5zN3QxL2xrS1BJTWc3bHBwS09CQlcwZDNycS9BOWVuSmo0bGlscDVWYmk5dnluZTcxanV3eTNKS2R0MnhZRkdjU2NDZTArNDc3TExOVzlmMXFLWUN6aTZRNXA3QlFLaWVlVlk3RjJyYnpKem9QRW40bGpFQ2ZxVUFLVFgzaWJEMUE1cnhodmUwZTA1bTZGcnNLd1E0WWU4SHdlYmFoUDJiL3BFNTk1aU5oVEtYQ2x3emRyeWhZRnRaRXZ4N3lHN1dYYnYwZzJjeUpqQkc1TVlHK21UTzEzRE5scWxtVDR4elc0aEE5NFdodDJ3WFpmTmVFV3oyZGdNVnNVN2p6QXRCN0lZRWhVdmkrbTNSMk50ZXZQRGIyWnJIM1BLWmZ4Qnd0SlFPWlM5aDd2MU51VzVvTEIreVc4ODVaNkhBOVpRbmMvcThXODFGc2ZHemY3U1ZLRDNQbmVBRTlFdllKQWpjTlRkaGsyS001RXpHV2phcFVsc1lpMWg3SVlZLzVYejMwTDBSM0kzMVdqdHZjZjV6S3EycDg1KzU3NURYU1VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaExZT3dFRnJ2ZitDR3lBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtzQU1DSEI3R0lmb1NsYzZEWTAzQ29mS0pqYk1RanRpdE0rWFlOV3YvemdIN1d6YU80aytaS0hTTmdQUnRrc041dDAwNFA1SDZUbEZ6MjQyREZlSnROYzZhMUFIVC81NGNSK2FLMkMwVnVmNzNpTGhtUkx4djdrMTdYVFVCaEEwUnZzUGhycCtHaFBHcUs2ak1tQk5LcUx6ME5ObUdCQ1dHeEJ4dzFrTjBEcWVyTGROVWdXdEVObkNVeFBsaWFkcTFRQjJPNys5c0JLZ3VtbW40RXVmRXBSd082WHFjVW5DYXVGNm1VWXI4SDlLVEtyZmx0ajNoUG9KWUlJQ0p3ekZPcjUrSUNKdzF0MHI3RWg2ZDQwQllZcEM3QnpoZXNSZTBCSWN1MlA3b1ZqQjNVTzZhM0hiUVhLczRBZ1FRUlhsTFJQRE50T0pWcFdZamx2akxLZEJPclZNa0lncjBjMnNLdWRSaXpZbGREbDM3dXJRbW03SitRYXlEZFJJaXI4Y3AwZGV3UGtYWXJKOFFjbnRISTFUNlE1bmZjb0Z0OWpYTzdQSjU1UHBtdnBjek5pSWlCTTlaSTdYZktzR25hdEphQWJ5V2lseDNSVjlxMm0yZTB4TElyZjN1bVBydHJWZ1JQQTZSbVc0cUNVWndWaEVSc2wvZm9ER2xvQXQ5QVp3TnFqNXlSVTZaSDY0bGNJMUFFcmJVc2JTRm9GdXBUdDVIK2l3Qy9mMzF3THptL2lub3huMGJHeXhyNWhyaHBTVUMxM01DQjJMTHhONjdWSHdhMFNMbUtZeEh1WVNJTnQrM3R0T3hOOW5mSlNDQkxRbTB3VnFuMU5FR3JXanRaaDlJZlQvN1VsdmEwTHB0eEc3OUowblljRXJiYzNtSDdOeFhTbnN2UDVLNWNHMXg2N1lLN0djRTJXRC9jVWdjakhHRVBUaldnVU5waWREYXJ2Y2psajVMcjE5TzRLZ0xYTE1QaDgwRUVVeFNWOHlkLzUrLzg0M2xVa253TkpkM0RiSG01VStycmdUc1IyK2VFSVN1VytxYTRzRkxtUDFZQ3RxRGlGNU5vdjlFaEpLNWVLMm9iRTI1Ylo1enAzM0JVbUMvcmtqb1ZxS0NVOXA3YUhubkNGeVg5dHFQdTkyTHN4OEUvYjVRNXlFeS8yQzl5dnM5dEo3R05vcDlHVkhiS1VMSmgvYStkTnREMExTck55SzluMHAvbk51L2NZNnFiMHNyQmZ5ZXc0TWdub3luSDY2MGVlVHFZUDhITVVzQ2RKMjFzaEU4YSthMVc0bU50czNBenNLNU91dzYvY1N6K2FrbW9Obm5LdHZjenpabU41dXoxL0ZiVGFDZCs4eHNUKzFsQ0tJalFEcjByYkYySXFEcDUyc0xYVGtmN3hUUGpmVmZQK1ZFODIrV0FvSjBmZVc3NDl0UTgrQkFnQjJDdngyWFZCUDBZOG02NjZoeEdockwyYTlsN0dybjQ5MTdJd0RqL1NiMmpTV0JhOWJEN0N0dkxWaGNlamJzNHlCczMwMjU4ekg3ZnJaYm5NLzVaRVJ3LzF1SjlUUHZlZGZBdXEyR0tmMGF3VDRZNzJ1RFA5U1VXNXVuRFZiKzhJcEFtME5sNWxnNy96a3RzVjNOZjJxZnZma2tJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNXeENRSUhyVGJCYXFBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkhCZ0JEaWcvYllWSE1keDdIbE1SQ0JtdTRWejRSeHNIREJHV0k0RHpqWGlpMHNkZEdyYk9PUWsxQzNqN3hxSHBZZEZ4Q3RYT3NTUDR4dE9KMCtlSUs3ZHRzY0R4TFZQZDNtK2l5WEhqUXRraXZyVmlIakVSQWVSdVMyNlFSSnlubnQ5ZTkzZGs3TmxycHdoUWI4NW9vaHoyanBWNEpvNjFoSUJHMkl6NTE3R3JpR2d3WXN6bWI2UWhDUS9QVmJBQ2ZnZGtSTkV3TS9RdTFkRi9vL093Ly9oUm95QXZnVXhHQVF2YWdUVzFyeTdPYzY0YTlRL1JZaHZyTDVhZ2VzenB3QWNNRCtxQ2VGZEhJQ1hpdDBkMWZ1MzNkc1F1R0FTci9waVJmRS9HUkZ2aWdpK3A2R0VReS9yQXB6M3B3aEdWelJoVWhiV01UajNQenNpdU05Uyt2dUl1UGJNYnd2SGZFUXBIcHpFdnlZMThBQXpQeitKbUplRURrb0NaNlZnTC9zYVozYUpkczB4YmFqZE9HeGp4eGdLUE1YM3huZjNHeXNHOExwOFd1UG5BaG9OdFJjeE90cThMOUdNWGI0RFc5V1ZXL3ZORVdLYTByNnBkZEluSUFyeHVCbDJtMUs3Y0xySExwWVRoMWhyYlR1RnlhSG5uZElIalFuMTFON3IySHlBTnQwbElsNjZCNXNyQVM2d0p5SXFsMHVJWUorem1SZjh3WVMxMXhLQmE5cHd1MVRmR044dDVrOURRZWxvRCtNS3dkb1FNalZKUUFJUzJBZUJrdkFtWWtDSU15RmV6YndTUWJZUHBUbnVOL2ZSMEY2ZGpEZXZTZXZJSmMxNWQwUXdQbjg5VXdnQkRRbW1tUXRVQUo4N0o3di9WcmJFc1dBbUJCeEY5SENzL2lYaXFydmVqMWp5TEwxMkhRSkhYZUFhNFdFQ0xKNXJCbzZjNEdtcG1DVml6VE9hdHVnUytoTEUzUkRFblpyV0RIUTdsOW5VUUF4UFQyTFlwZlhJVkFhbC9LV2dlMzJSMENWOThGcHRQYlJ5NXRoVk9Bdnhub2pvN2kwaDRvdmRtYjhmNTlUdmwvbi9uMUF4L3JkTUVKcEY4UDJoeDBEb3VoOVlHdkhVbDZUelhiWHZRRjhrdTcwdUp5WmVXeWI1T0tmMXpFYnNGTnYrVjZaY09KSVh1eDlDNWV4TERnbGRsKzVyeGFiOC8wWGRNQ0plVzdCRExwMDdqdG5Oc0NrUnRLSFdmN3MySU14U1RxeE5PQitIL1NtWFdIUHdIR3YyQUplMlplaDYzaWY2RU01cGRsT3VYK25iNG5JaTJHTnRKVUFGYXhhNERPMnBqSlZ6Q0w5ekJwT3pVME1DOHJ5ZnYzc0lqVjJ4RFl5N3ZOLzlORFNXbC9ZdzUrNERsd1N1MXd6RU1nZFpicC9rRUFXdVMvem0zRFBYMEs5eU5oUWIwWmFwMXA3ZmJ3UGpNZWRrWDM1QTluYm1HTC9VMk5oK3Z1SjhSL2QrU3YydTg1OVRLZTF5L3JQbCsyN1pFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUkdDZFJ1a0k0V1pBWUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFnZE80RlpKOUhTcVhaUUR6azl0aENSZmZVQUhpWE9vRVdKQjZCcm5zQ0doNjlzbnA5QmRQSzRmVEtKV0NMLzEwMXVhUC96S2htTGgxNGlJNTQySTBuWGJoQUE2L0hLaUFMdGdkUkxyeUlrYjdmbzVJQkNMYzlhWkZqeUE1elFDcy9jY0VXam4zWHBaendrS01XRWNocWgvNnpSSDRIb05ZY0VhTm12ZU8yS1I5TlVJZWZSVDM0RjB6WHFQVWxtTWdRZ1k4czcyRStLak45MnpxT2hSWW5tUzI1cnJIeERoWUk2eGxzalpwZEwzekhmZHBpbENmR1BQcDFiZ2Vxd2NmNWVBQk9vSTVPWkM3WlU0T3pKT0kyNjl0WkJMWFd0UHlVWC9neWdPVHFVNE4zZlRITWY0WE4zZjF3U2R1R1lqd0liQUFuTmp4RE9QUXZyTFJtVG9FMG1ZQVVHV2IxYzBtclVoNGgzWDcrUkZQT091bVhuMEd2UFFpaWJ0TmN1YVk5clFqUXdKek9HNC9zZ05uYVlSVHZydE5MK3NnZjB2YVI2UElLRnBQb0dwWXRQemF6cjF5cmwxdGs3eUNHM002Zjl3L0tkZllRekJLYnlVRkxnK1Baa3BmZENZVU0rVWQ2ZzBIL2lqdEVZOVR1TDJTd1d1UzhJcVhkNS8xZ1RhdUZNak9QVFJLUStoTWk5Q2k5aFhMdGZMLzhrVWlPQ3psZVdZVFFJU2tNQVdCRmhiSU9xS2ZmM1FSS3pIN3ZlNVNXUjZMRi9wZDRMZC9VeEVsUHJoSWZGU2hHTFpveGdUbDU3Yk5xNWpIYzNjN0w5bENtSGNRbFNxUmtCeHJ1RHZvNXIxKzJOWENxYTdoSVBYN3BiQVVSZTRuaXQrUDFVQWM2NVk4MjZmNXFtMTNiL1p1MzNTeE1xbjlETTFSYzlsVmpPWHAzN09TaUFjdDhWOHZuUi9pRDYrSW9rc2t5Y1gvSURBOFFTbDZ1N04xUEE2em5td2IzMXc0ZzBpcEVsZ2kyNWkzbkxkaVBqYXhMS09XdmF1OFBLU3N3S2NmMkpOeXJ5Qy9ldXpIVEVRcGNEU1QwdjdEalczTTdZUGNhKzA3MTlURm5uK0lTSitMeUtZa3pLZjNISmVPQ1owdlZSWXV2YWV5Y2Y2Z1hzbVdGYzNyVEZ1ak5uTkx0RFlVZDdiaUVrelR4OUxZODk3N1BxcHY1Zk84ekZPL01JQm5aMWpqd1BPQkxrbmtNOVF2M0t6Tk01eHpWUngvUzQvNW1mczJ4RWc2S29Gd2VTcHZIZWQvK2VTN1h6WDllNjd2dEwrNGxpd2l0ejNNTGVmVXVCNitWdXd4cDdPcnM4Zk1PNjlNQ0p1VVhIN1gwNkJ0cC9WOURPZnE4aS9yeXpNeFM2ZTltN3VVTEUrNEV6Rkl3cnpDK2MvcHp6RnVmM0t2dDRCNjVXQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrTUp2QVZDR1gyUlY1b1FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0NCUFJQQUNRL243UnVOdElNRHptOU5EaTV2UGlDbmpWcDhRMExYL3lQZC96ZHJDMXNoMzJVajR1MFJjZVlrbXZyTTVuLy81bzRPYVBQTWNieDVlT05VZjlhQmUwRkk1MjRSOGNVVjd0Y2lwaEhvaWh2dFF5VG43STBqNlo5RUJJNWxVOVAvVGtLTWlBWC8yOGpGT1dFNWhQTnhFTjdTY2JCdDFoeUI2OUkxTlp6Z3dYZUhnd0tjZHBXdTFJaEV2ak1penRDcnNPUkF1cXQySFZJOTUwK2k2dWZLTk9xa09ya2Qwdk01S20zSk9RYXVQY2Y0dnlQaVhjbFJ0ZVV5UllodmpLVUMxMk9FL0YwQzZ4TDRuaVMwOEl1ZFlsbDMvVTRTa0I0U0psMjNKZE5MKzRHSXVFOGpudmFRanVQbUVtR082UzA0UGxkMEhjVDNNZmMvUGlTbjNRbk85SzlLZ3FSYytjYUllTXlHd2FhNnJXTWRkTFdJZUdKRVhINmcyVGh3RXlpRCtZUnBHWUc1WXROTGF0MUhuVlBhaXoxS1lhN1RFbU1NL21ybGVuMU1xR2ZLczZCUGVIU3lwYlRYWVR2NDljcTJUS2xyMzNtWENselQvdk1tMGJzTDkyN200MGxVNGgwYjI1VDZBbEFHSXRqM1cyWDlFcERBY1NBd1I3Q1YrMGI4aURrOHdueGpleEY5OFZMczh3UVVZVTJ3aTRTbzAwTlRNSjIydnFuQlBuOG9CVlRxQjFvb3RaL0FlOWo2Q0NhNmkvMldYWEMwam5vQ1IxM2dtanVkS240L1J3QnpybGh6L1pOWU4rZlVQY3IzTlVMUnQyek9CYXdaTkdjSnM2RWc0QWlxRWxTUEFGLzc2TE82NDhRUzhjOTFuL2p4SzQyQUM5aVR1K25YMGhoNS9PNzI5SGVFOFBKTlZnNHdUN0RJSDBsQ2k5anNTWHhyN0NleS8xQktCTlNkRTFpdFh4NTJsTDlvemtEOFIrVUQvUHVJNER4SWYrNVdHOXlSdFQvN0tVUDJVczY2Y0RiaW9vVTJNVjV3UFlLYnIydEVGYjlVMmZZMXMyR1Q0d3pDNHp0bnR0WVFscDdheHI2TkF6WUU0eVRZd0pMRW1Rdk9xSFFUdHU0L1RYK29uZGRpczMvQWpvTWUwTVQrMm9IZ0VnOCtVRHZkUlNMaWdhbDlwYUE1UEdlQ3VuOG8yYzdXT3F1RW5lOHN6WnFLL3VSNzA3TkZkUDh5RTE0ZTh2L0VoUHhMc2pJZjRpemVJZSs5THJtL29Xdm5DbHhUWnRjV1M1L0ozSEpzL1oxcml3TFh5NS91ajZlZ0JQL1hqS0krbGNaRytvR2FBTTB6cWloZWNvbFVOL09WZnNLMmpuQTNnVlBZSTkvSE9tREp2WEllblg2WWdKdTN5OHl0c01ld2Z2cDZvUkxuUHhIN21QOHNlZVplS3dFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhnRVFFRnJoZmg4MklKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVamdpQkhJaVNWeUM1K05pSmRHeE1zajRxOFAxRmxqS3VxKzBQVlVCL0twOVEzbHYySGpmRTk3Y01wWnk0RmtTdnZhUTlZY3BPWWR3Q24rRzBsNEcyZXV2enlDQjhlbjNQOGg1MjNGRHErZEJOZjRGbmVacVArcXlSbXlYMi9KSWVtRHliRU0wWVFwemhCZFlRY2NFcSt6c3FQMUVEY2NQbkdlNjZldkRkd0R6bXlJMGRIdUd1ZFF5b1lORHRuNzZFZlo4MEpzL0o2WisxeGJlSGVYNytqYWRlRlFES2QrNHR1N1NrUjhZZTBLTGU5WUVsRGcrbGcrVm05S0Fwc1R3UG43RFJGeHlTWVlCV0llQkw0cE9hRnYzcGdaRlh4L1JOeWltZWZjTk0wMzFoVE1tZEdjSTNzSkR1S3ZUSUZlY0hZMTdZYkFCZFA2QTV2SHZyNDdCRmRZQTdIR3VFSkVuS2tSRVdGTjllcEcvUHIxTTRVQ2RrUHZhTldDcU1ZOWVrM0dZWjYxMmxacEgzVnVkUytXZTNvQ2F3cGNVM29yOUliNER3SkhyejJtTnJrMUJLN2g5VjlUUC9sZDZUdCtXTEt2MWdwcUxYMm5FYUo2U2hKMElXZ2tRZUpNRXBDQUJDUXduMEJPQUcrb3RIOXVoTWsrbkFKVFRCRS9hb1hxQ0VETE9wYWd2cnRNMk9vUjh5YlFEV21xZ0NyWGN3L2RRSmFNclloRnRRS1cvNXIyYVdBMFpaOW1seHlzYXpjRURsM2dtdm5VTlNNQ3UxS2JlRy9mMHdSKytVNzZBMEdZQ1FKWGs3Q2xJSGo2MFpyTW5UeEx4Sm9uVnJWS2RrVHQyTU1uWU5GUVluNktRRGpCWDlhZUl5OWwxZzlZdzdvYzhWTDJMTmR1NjFUb3JNc0lSUGEyWTdvZW04cGo3ZnpzeTJQLzVJeE1teGpIcjd1SE1YbnRlNnN0ajc2UE1ac3pPYWJURXFCdkdBb0UrTCtTa0RiQ3REWHp2KzQ0eUZrc2dnZS9PZGxiUG5FQS9VMTc5NjNROWVPU01PWlNZZWs1NzFVMytNQXVnOUhUMWxJQVBzWUQ3UFg3SEJkNEo3SFIvMlpFL0VIbGV6ZUgvNjZ1UWZDZDc2Y2tzcnFyZGxqUGZnaGNMSzBiKzdVVERLWG1MQlMyMkdlbE1meXZadDZDQXRjendSMlR5MWlyY1FhQzlBK05jUHJ2cGZVS1ovSnF4dldqZ3FIZDgwWHNtck1mTjB2blJVdnRkLzV6aWpENFB1WS9SK1dkc3AwU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcERBTVNPZ3dQVXhlNkRlamdRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKREJJQUp2bzB4cUhJQndTWDVPY2VoQlUrdVl4NXRZS1hlUEVnWkJjNnl4N2pHL1pXenRpQkhCbTQ3K3ZIckYyejJrdVRuTXZTczVoSGxxZlE5QnJKQ0NCUXlCd2d5VHcybTNMSjVONCtscUNNdWRMNHFlTUQyMzZ0eVN1OXBrVklPQllpTEJtTngyQ0UvRUt0MllSRWpob0FvajVFSGhuSDBGdkRock1DV3NjSW1XOEE4ZkprZmVFUFVKdlZ3SVNPRUVFY2tLY240dUlQMTNBNEJ4SjZQcHZGNVJ4NkpjaWFIYnZScFR2d2d2WE13UWRRL2dBM2gvYjA5aEpHM2htUEhlVEJDUWdBUWtjSFFMMDNhekIvMjVQVFc1RnJpL1U3UDNjUnp2QW5wN0N5YWcySjJMM2tUUjNXa0lnTjU5akgvUHhFZkV2U3dyT1hGc0tVdHZOK24vU1B1cGNtMXF1RG14MDNKUDJtZndEL2VtSStOM2VUd2hxM3praXZsWDVEbkFtQmNILy81NEUzMlJkQ2U2SVp6dDNDdXJHZXJwTmlOSmZJeUlRdURkSllFMENCQVZoTEdUc1czdDhXck9kYlZuWUdCalQ5aVhvREMvc05ZZzVLNEI4NmhOR2tONnpoRnU4OFpaNTFBaXdqdjJ4aVBqNGdvYnpQVjAxSW42a1YwWS95TTJDS21aZFN1RFo4L1N1WkU3N1RnUFF6dUpadW9oelNGZFB3U3ErdEdySkZ0WWw0UHpIOTBFQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRd0lFVFVPRDZ3QitRelpPQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNPQllFVUIwSHFjOW5aaVAxV1AxWmlRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFpZVBnQUxYSisrWmU4Y1NrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTR0FSQVFXdUYrSHpZZ2xJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrY1BJSUtIQjk4cDY1ZHl3QkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJCWVJVT0I2RVQ0dmxvQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNKNCtBQXRjbjc1bDd4eEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJWUJFQkJhNFg0Zk5pQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNSdzhnZ29jSDN5bnJsM0xBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVGaEZRNEhvUlBpK1dnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUluajRBQzF5ZnZtWHZIRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoZ0VRRUZyaGZoODJJSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpIRHlDQ2h3ZmZLZXVYY3NBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFXRVZEZ2VoRStMNWFBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWllUGdBTFhKKytaZThjU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUxqR3l3MEFBQVk5U1VSQlZBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTR0FSQVFXdUYrSHpZZ2xJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrY1BJSUtIQjk4cDY1ZHl3QkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJCWVJVT0I2RVQ0dmxvQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNKNCtBQXRjbjc1bDd4eEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNPRC9hK2NPQ1FBQUFCQ0c5VzlOaUVzV0FNSHdFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlKQUVIMTRsUG1BQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNEd0orRGcrbTl6alFrUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDU2NEQmRlSVRKa0NBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBajhDVGk0L3R0Y1l3SUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlCQUVuQnduZmlFQ1JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUovQWc2dS96YlhtQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQ1FCQnhjSno1aEFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ01DZmdJUHJ2ODAxSmtDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdrQVFmWGlVK1lBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlQQW40T0Q2YjNPTkNSQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFKSllDcmlFRW1VNTV2aEFBQUFBRWxGVGtTdVFtQ0MiLz48L3N3aXRjaD48L2c+PC9nPjwvZz48L2c+PC9nPjwvZz48c3dpdGNoPjxnIHJlcXVpcmVkRmVhdHVyZXM9Imh0dHA6Ly93d3cudzMub3JnL1RSL1NWRzExL2ZlYXR1cmUjRXh0ZW5zaWJpbGl0eSIvPjxhIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAsLTUpIiB4bGluazpocmVmPSJodHRwczovL3d3dy5kcmF3aW8uY29tL2RvYy9mYXEvc3ZnLWV4cG9ydC10ZXh0LXByb2JsZW1zIiB0YXJnZXQ9Il9ibGFuayI+PHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgZm9udC1zaXplPSIxMHB4IiB4PSI1MCUiIHk9IjEwMCUiPlRleHQgaXMgbm90IFNWRyAtIGNhbm5vdCBkaXNwbGF5PC90ZXh0PjwvYT48L3N3aXRjaD48L3N2Zz4="><figcaption>å¾ 1ãç»ä¸å
¥å£ä¸çä¸¤æ¡ I/O è·¯å¾ï¼æ´å¾ä¸º V3.0 ç®æ 设计ã</figcaption></figure><div class="table-wrap"><table><thead><tr><th>模å</th><th>èè´£</th><th>æç¡®è¾¹ç</th></tr></thead><tbody><tr><td>RunService / RecipeScheduler</td><td>å建 DUTExecutionï¼å¼æ¥çå¾
ï¼ç»ç»æ¥éª¤ãèµæºéå忢å¤çç¥</td><td>䏿æç©çè¿æ¥ãä¸ç´æ¥å¼ç¨åå®¶ SDK</td></tr><tr><td>DeviceService / ResourceRouter</td><td>é»è¾è½åè§£æãæéä¸å¿«ç
§æ£æ¥ãè·¯ç±ãç»æåé误</td><td>䏿 ¹æ®ç½ç»æ
éèªå¨åæ¢ Local/Broker</td></tr><tr><td>Local ResourceManager / LocalExecutor</td><td>åæº arb.db é¢çº¦ï¼å½å Mutex è¿æ¥å®å«ï¼ä¼è¯éåä¸ç´è¿é©±å¨</td><td>åªæ§å¶é
ç½®åé
ç»æ¬è¿ç¨çä¼è¯ï¼TTL è¿æä¸å¼ºæ¢</td></tr><tr><td>BrokerClient / LeaseAuthorityClient</td><td>å½å管é请æ±ãååºå
³èãäºä»¶è®¢é
ãæçº¿æ¥è¯¢</td><td>æ çå®é©±å¨ï¼ä¸æå®¢æ·ç«¯ UI ç¶æå½ææ</td></tr><tr><td>DeviceBroker</td><td>æ¬åææãä»»å¡è°åº¦ãä¼è¯ä¸²è¡ã驱å¨çå½å¨æã饿µåå</td><td>䏿¿ä»£ RecipeãMES æå
¨å¹³å°å
¨å±éæå¡</td></tr><tr><td>DeviceManager / Driver</td><td>ä¾é
ç½®å®ä¾åãè¿æ¥ãèªæ£ãéè¿ãå议解æå读å</td><td>ä¸å³å®è°æç产/ç»´æ¤æé</td></tr><tr><td>ConfigurationService</td><td>è稿/åå¸/çæãææå²çªæ£æ¥ãçæ¬åå</td><td>è¿è¡ä¸çå¿«ç
§ä¸å¯çè¦ç</td></tr><tr><td>Supervisor / RecoveryCoordinator</td><td>å®¿ä¸»åæ´»æ£æ¥ãé离ãè®¾å¤æ ¸å¯¹ã人工æ¢å¤è®¸å¯</td><td>æèµ·è¿ç¨ä¸èªå¨æ¢å¤è¾åº</td></tr></tbody></table></div><p>ResourceManager ä¸ DeviceManager äºä¸ç´æ¥ä¾èµï¼ç±åºç¨åè°å¨ç»åãBroker å
ä¹éç¨åæ ·è¾¹çï¼ææç©çåå
¥åªè½ä» Dispatcher ç» SessionGate å° Driverãçæ§è¯»åç¼åå¿«ç
§ï¼ä¸é¢å¤å»ºç«åä¸è®¾å¤è¿æ¥ã</p></section><section id="routing"><h2>04ãLocal / Broker éæ©ãèµæºé®ä¸ç²åº¦</h2><div class="table-wrap"><table><thead><tr><th>设å¤/è¡ä¸º</th><th>æ¨èè·¯å¾</th><th>ææèµæºç²åº¦</th><th>ç©ç串è¡ç²åº¦</th></tr></thead><tbody><tr><td>ç¬ç«åéé TCP çµæºï¼ä»
å Worker 使ç¨</td><td>Localï¼è¥è¦è·¨è¿ç¨ç»´æ¤åç»å宿主代çæåæºäº¤æ¥</td><td>psu/PSU001/ch/1 + parent permit</td><td>PSU001/session/main</td></tr><tr><td>8 ééçµæºï¼å
±å SCPI/串å£ä¼è¯</td><td>Broker</td><td>æ¯è¾åºééç¬å ï¼æ´æº reset å parent exclusive</td><td>æ´æº SessionKey</td></tr><tr><td>CAN/CAN-FD å¡ï¼å¤ä¸ª DUT å
±ç¨æ¥æ¶</td><td>Broker</td><td>bus permit + åéè§åï¼UDS æ bus/address/session æä»</td><td>SDK 线ç¨å®å
¨åï¼UDS ä¼è¯éå</td></tr><tr><td>RS485 å¤å°åæ»çº¿</td><td>Broker</td><td>ç«å°å/åè½ï¼å¹¿æå½ä»¤å bus exclusive</td><td>ç©çä¸²å£ SessionKey</td></tr><tr><td>温箱ãPLC 温度/èé</td><td>Broker åä¸é
æ¹æ§å¶è
</td><td>chamber æ§å¶ææ Run/groupï¼å DUT ä»
订é
</td><td>PLC/温箱çå®è¿æ¥</td></tr><tr><td>å
±äº« DMM + ç»§çµå¨ç©éµ</td><td>Broker ååä»»å¡</td><td>DMM + Matrix è·¯ç±ç»å</td><td>忢â稳å®âæµéâéæ¾çæ®µ</td></tr><tr><td>模æè®¾å¤</td><td>Local æä»¿ç Broker</td><td>沿ç¨çå®èµæºé®ä¸çç¥</td><td>ä»¿çæ³¨å
¥éå䏿
é</td></tr></tbody></table></div><h3>4.1 ä¸ç±»é®</h3><p><b>ResourceKey</b> 表示ä¸å¡å¯æäºçæå©ï¼<b>PhysicalSessionKey</b> 表示å¿
须串è¡åççå®è¿æ¥ï¼<b>AuthorityId</b> 表示ç¾å䏿 ¡éªç§çº¦çå¯ä¸ä¸»ä½ãå°åå«åå¿
é¡»è§èå为åä¸ç©ç身份ï¼ä¾å¦ä¸²å£å·+设å¤åºåå·ãIP/端å£+仪å¨åºåå·ãCAN éé
å¨åºåå·+ééï¼ä¸è½ä»
ç¨å·¥ç¨å¸èªå®ä¹ DeviceId é²éã</p> |
| | | <p>æ¬çæ¬ ResourceKey ç»ä¸å°åãåºå®åéç¬¦å¹¶ä½¿ç¨ Ordinal æåºï¼é
ç½®ä¿åæ¶å®æè§èåãå¤éé SessionGate å
å¿
é¡»æâéæ©éé + åå
¥/æ¥è¯¢ + 读åååºâè§ä¸ºä¸å¯æåçæ®µï¼é¿å
两个穴ä½ééééã</p> |
| | | <h3>4.2 ç¶åèµæºå²çª</h3><p>æ¯ä¸ªééææç¬å éé令çåç¶è®¾å¤çå
±äº« Permitãæ´æº resetãæè¿ãæ¹éä¿¡åæ°ãç»´æ¤æ¥çº¿éè¦ç¶è®¾å¤ç¬å ï¼å¿
é¡»çå¾
ææ Permit å½è¿ãç¶ Permit ä¹è¿å
¥ç§çº¦éååæä¹
å表ï¼ä¸è½ä»
éä¸ä¸ªå符串åç¼ãV3.0 ç DDL ç»åºæä»å¶èµæºåºçº¿ï¼ç¶å
±äº« Permit 使ç¨åºç¨å±å¨åä¸ BEGIN IMMEDIATE å
æ£æ¥/æ´æ°ç <code>parent_permit</code> 表å®ç°ï¼ä¸ä½¿ç¨ SQLite çè¡çº§éå设ã</p> |
| | | <p>è·¨ Authority çå¤èµæºç»éç¨åè°å¼é¢çï¼Prepareï¼ææéãä¸å¯ I/Oï¼âå
¨é¨å夿åâActivateï¼ä»»ä¸æ¥å¤±è´¥å Abortãåçåè°å¨å´©æºæ¶å
¨é¨æé¢çæé失æè¿å
¥æ£æ¥ãå®ä¸è½å®£ç§°è·¨åºååäºå¡ï¼è¦æ±ä¸¥æ ¼å
¨æå
¨æ çå¨ä½å¿
é¡»å°èµæºæ¾å
¥åä¸ Broker åï¼æå°æ´ç»å¨ä½ä½ä¸ºä¸ä¸ª Broker Taskãç¦æ¢ææå A çè¿è¡ç§çº¦æ éçå¾
å Bã</p></section><section id="configuration"><h2>05ãå·¥ç¨å¸é
ç½®ä¸åå¸å·¥ä½æµ</h2> |
| | | <p>æ²¿ç¨ DeviceConfigViewãDeviceDebugViewãDeviceMonitorView åå·¥ãé
置工ç¨å¸ç¼è¾è稿ï¼ç»´æ¤å·¥ç¨å¸ç³è¯·ç»´æ¤ä¼è¯ï¼æä½åå¯å¨ç产ã管çåå叿éä¸èªå¨æäºè®¾å¤åæéã以ä¸ä¸ºé
置工ä½å°å段å®ä¹ï¼ä¸ä»£è¡¨å½å UI å·²å®ç°ã</p> |
| | | <div class="table-wrap"><table><thead><tr><th>é
置页</th><th>å
³é®å段</th><th>æ ¡éªä¸åé¦</th></tr></thead><tbody><tr><td>è®¾å¤æ³¨å</td><td>DeviceIdãKindãDriverType/Version/HashãTransportãEndpointRefãPhysicalIdentityãHostId</td><td>驱å¨è½åã使°ãå°å/ç©ç身份å»éï¼åæ®åªä¿åå¼ç¨</td></tr><tr><td>æ§è¡ä½ç½®</td><td>ExecutionMode=Local/BrokerãAuthorityIdãBrokerId/OwnerProcessIdãPhysicalSessionKey</td><td>åä¸ä¼è¯åªè½æä¸ä¸ªå®¿ä¸»ï¼BrokerId ä¸è®¾å¤åä¸è´</td></tr><tr><td>ééä¸èµæº</td><td>ChannelIdãCapabilitiesãResourceKeyãParentKeyãAccessPolicyãConflictDomain</td><td>ééå¯ä¸ï¼æ´æºå¨ä½ä¸ééå¨ä½å²çªå±å¼å®æ´</td></tr><tr><td>ç©´ä½ç»å®</td><td>SlotIdãCapabilityãDeviceIdãChannelIdãGroupIdãMappingVersion</td><td>120 ç©´ä½è½åè¦çï¼æ 缺失/éå¤åçééï¼å
±äº«æ å°é¡»æ¾å¼æ 注</td></tr><tr><td>Broker Task 模æ¿</td><td>TemplateId/VersionãOpCode ç½ååã卿ãdeadlineãSafeStateProfileã订é
è§å</td><td>ç¦æ¢ä»»æ C# / èæ¬æ§è¡ï¼å¨æè½åä¸åè®®/çé¨çå¹é
</td></tr><tr><td>仲è£ä¸æ¢å¤</td><td>TTLãRenewIntervalãWaitTimeoutãMaxTaskTimeãHandoverTimeoutãRecoveryProfile</td><td>Renew ⤠TTL/3ï¼è¿è¡è¶
æ¶ä¸è½ç´æ¥è§¦åæ° ownerï¼å®å
¨é
ç½®éå®¡æ ¸</td></tr><tr><td>åå¸é¢è§</td><td>åæ´å·®å¼ãåå½±åç©´ä½/RunãHashãéªè¯æ¥åã审æ¹äºº</td><td>è¿è¡ä¸å½±åè¿æ¥/è¾åº/æ å°çåæ´ç¦æ¢ç´æ¥ Apply</td></tr></tbody></table></div><h3>5.1 æ¹éçæ 120 ç©´ä½</h3><ol><li>éæ©æææ¨¡æ¿ï¼â120Ã1 TCPâæâ15Ã8 å¤ééâï¼è®¾ç½®å°åè§åãç©´ä½èå´å设å¤ç¼å·åç¼ã</li><li>çæèç¨¿åæ å°é¢è§ï¼æ¾ç¤ºå
¨é¨ 120 æ¡æ å°ï¼åç¹è¦çä¿çæ¥æºä¸å·®å¼ã</li><li>ç¦»çº¿æ ¡éªèº«ä»½å²çªãè½åãéå¼ãBroker åå驱å¨ä¾èµï¼éè¿åç³è¯·ç»´æ¤çªå£æ§è¡è¿æ¥æ¢æµãéé寻åå读åã</li><li>åå¸ä¸å¯å ConfigVersionï¼ååå°å宿主 Prepare 并确认åä¸ Hashã</li><li>忢åå½±å Runï¼æ¤éåæéï¼å®å
¨æè¿ï¼å宿主 Apply å¹¶èªæ£ãå
¨é¨æååææ´æ° Effective æéï¼å¤±è´¥ä¿æåç¨å¹¶æä¸ä¸çé
ç½®æ¢å¤ã</li><li>åå»ºæ° Run æ¶å¤å¶çæå¿«ç
§ï¼æ¢æ Run ç»§ç»å¼ç¨å Hashï¼ä¸å
许éé»åçã</li></ol> |
| | | <h3>5.2 é
ç½®ç¶æä¸å¤±è´¥å¤ç</h3><p>Draft â Validated â Published â Prepared â Effective â RetiredãPublished å
容ä¸å¯ä¿®æ¹ï¼åæ»ä¹å»ºç«æ°ççæè®°å½ãå¤ Broker çæéç¨åæºçªå£ä¸ç䏤鶿®µåååæç»ç¡®è®¤ï¼å®ä¸æ¯è·¨æºå¨æ°æ®åºäºå¡ãè¥é¨å宿主 Apply æåãé¨åå¤±è´¥ï¼æ´ç»æ è®° <code>ApplyFailed</code>ï¼é»æ¢ Run å¯å¨ï¼ç´è³ææå®¿ä¸»ç»ä¸å°æ§çææ°çå¹¶å®æè¯»åã</p></section><section id="config-example"><h2>06ãé
ç½®å¥çº¦ä¸å¯å¨æ ¡éª</h2><div class="codebar"><span>JSON / é
置示ä¾</span><button class="copy">å¤å¶</button></div><pre><code>{ |
| | | "schemaVersion": 3, |
| | | "configVersion": "CFG-20261103-001", |
| | | "topology": "15x8", "slotCount": 120, |
| | | "authorities": [ |
| | | {"id":"broker-b01", "host":"IPC-01", "pipe":"aging.b01.v3"}, |
| | | {"id":"local-ipc01", "host":"IPC-01", "db":"arb.db"} |
| | | ], |
| | | "devices": [{ |
| | | "deviceId":"PSU01", "executionMode":"Broker", |
| | | "authorityId":"broker-b01", "sessionKey":"psu01/main", |
| | | "physicalIdentity":"serial:TBD-PSU01", |
| | | "driver":{"type":"MultiChannelScpi", "version":"TBD", "sha256":"TBD"}, |
| | | "endpointRef":"endpoint/psu01", "channels":8, |
| | | "accessPolicy":"ExclusiveChannelWithParentPermit", |
| | | "safeStateProfile":"PSU-SAFE-001" |
| | | }], |
| | | "bindings": [{"slotId":"S001", "capability":"Power", |
| | | "deviceId":"PSU01", "channelId":1, "resourceKey":"psu/psu01/ch/1"}], |
| | | "leasePolicy":{"ttlMs":30000,"renewMs":8000,"handoverMs":30000}, |
| | | "taskPolicy":{"maxQueuedPerSession":128,"defaultDeadlineMs":5000}, |
| | | "note":"åæ®µç¤ºä¾ï¼ä»
åä¸ä¸ªè®¾å¤åä¸ä¸ªç©´ä½ï¼å®æ´120æ å°è§ç¬¬17ç« ã" |
| | | }</code></pre><p>JSON éç¨åºå®åºååè§åï¼UTF-8ã稳å®å段/æ°ç»æåºãæé¤èªèº« Hash åæ®µï¼è®¡ç® SHA256ãSecretsãè¿è¡ç¶æãå½åç§çº¦ä¸å¾è¿å
¥å¯è¿ç§»ææé
ç½®ãSchema æ ¡éªåè¯ä¹æ ¡éªåå«è¾åºå段路å¾ãé误ç ãå½±åç©´ä½ä¸å»ºè®®å¤çã</p> |
| | | <p>å¯å¨é¡ºåºï¼è¯»åææçæ¬ â æ ¡éª manifest/å
Hash ä¸é©±å¨ä½æ° â æ£æ¥ Authority å¯ä¸å®ä¾å epoch â æå¼æ°æ®åºå¹¶è¿ç§» â å 载设å¤èº«ä»½ä¸è¿æ¥å®å« â è¿å
¥ Recovering â æ§è¡æ è¾åºè¿æ¥æ¢æµ/ç¶æè¯»å â æ è®°è®¾å¤ Ready â åå¸ HostReadyãRun å¯å¨æ¶è¦æ±ææç»å®èµæº Readyï¼ä¸å®¿ä¸»åæ¥çé
ç½® Hash ä¸ RunSnapshot å®å
¨ä¸è´ã示ä¾ä¸ç TBD ä¸å
许éè¿ç产åå¸é¨ç¦ã</p></section><section id="database"><h2>07ãæ°æ®åºè¾¹çãå®ä½ä¸ä¸è´æ§</h2><div class="table-wrap"><table><thead><tr><th>åº</th><th>å¯ä¸åå
¥è´£ä»»</th><th>主è¦å
容</th><th>ä¸è´æ§è¾¹ç</th></tr></thead><tbody><tr><td>aging_system.db / config.db</td><td>ConfigurationService / RunService</td><td>ä¸å¯åé
ç½®ãRun å¿«ç
§ãçæ¬ç´¢å¼ãç¨æ·/审计ãç»æå½æ¡£ç´¢å¼</td><td>é
ç½®åå¸ä¸ Run èµ·å§è®°å½éäºå¡ï¼éæ ·ä¸æ··å
¥é
ç½®åº</td></tr><tr><td>arb.dbï¼åæº Localï¼</td><td>åæ§ Local Lease Storeï¼å¤è¿ç¨çäºå¡</td><td>æä»èµæºç¶æãç¶ Permitãè¿ç¨èº«ä»½ãç§çº¦åå²</td><td>ä»
åä¸ä¸»æºæ¬å°ç£çï¼PhysicalSessionKey Mutex å¦è¡å®å«</td></tr><tr><td>broker-b01.db ç</td><td>å Broker åä¸åå
¥å¨</td><td>æ¬å fenceã任塿¥å¿ãäºä»¶ãç»æ Outboxãæ¢å¤æ£æ¥ç¹</td><td>æ¯ä¸ª Broker ä¸ä¸ª Authorityï¼å
¶ä»è¿ç¨åªèµ° IPC</td></tr><tr><td>æ¯ Run aging_data.db</td><td>ResultWriter</td><td>æ ·æ¬ãä¿¡å·ãæ¥éª¤ç»æãè´¨éåæ¶é´æ³</td><td>æ¹éåå
¥ï¼ç¬ç«èåï¼éè¿ RunId / DUTExecutionId å
³è</td></tr></tbody></table></div><p>SQLite ä½¿ç¨æ¬æºç£çï¼ç¦æ¢æ¾å¨ SMB/NAS ä¸è®©å¤æºåæ¶å WALãææè¿æ¥æ¾å¼è®¾ç½® foreign_keysãbusy_timeoutï¼WAL åªå
许ä¸ä¸ªåæ¶åäºå¡ï¼å¿
须缩çäºå¡å¹¶é¿å
å¨äºå¡å
æ§è¡ I/Oãå¯ç¨ WAL ä¸çäºä»»æåå¹¶åï¼ä¹ä¸çäºæ éååãè·¨æºæ©å±ç» Broker æå¡éä¿¡ï¼ä¸è½å
±äº«åä¸ä¸ª arb.db æä»¶ã[E1][E2]</p> |
| | | <p>å
³èå
³ç³»ï¼ConfigSnapshot 1:N Device / Resource / Binding / TaskTemplateï¼RunSnapshot å¼ç¨ Config Hashï¼ResourceState 1:N LeaseHistoryï¼BrokerTask å¼ç¨ Config Hash å¹¶å¨è¯·æ± JSON 䏿ºå¸¦å®æ´ grant éï¼Task 1:N Eventï¼Task 1:1 ResultOutboxãå岿¥å¿ä¿çèµæºååå¿«ç
§ Hashï¼ä¸è½è¢«ä¿®æ¹åçå½åé
ç½®ååè§£éã</p> |
| | | <p>UTC 毫ç§ç¨äºå®¡è®¡ï¼å®¿ä¸»çåè°æ¶éç¨äºæ´»è·ç§çº¦å deadline å¤å®ãepoch + boot identity 鲿¢éå¯åæ²¿ç¨æ§åè°æ¶éï¼æ¬å°ç³»ç»æ¶é´è·³åæ¶åæ¢ç»ç§/交æ¥å¹¶è¿å
¥æ¢å¤æ£æ¥ãSQLite datetime('now') 䏿¯ç¬ç«å¯ä¿¡æ¶éã</p></section><section id="ddl"><h2>08ãSQLite DDL ä¸ç§çº¦äºå¡</h2><p>以ä¸ä¸¤æ®µ DDL åå«ç¨äºé
ç½®åºåæ¯ä¸ªä»²è£åçè¿è¡åºãå®ä»¬æ¯æ°å¢ V3 schemaï¼ä¸ç´æ¥å¯¹ç°æ data.db æ§è¡ DROP/è¦çãè¿ç§»ç¨åºç»´æ¤ schema_versionãå¤ä»½ååæ»æ è®°ï¼ç产è¿ç§»å¿
é¡»å¨åæºçªå£å®æã</p><div class="codebar"><span>SQL · é
ç½®åº</span><button class="copy">å¤å¶</button></div><pre><code>PRAGMA foreign_keys=ON; |
| | | PRAGMA journal_mode=WAL; |
| | | PRAGMA synchronous=FULL; |
| | | PRAGMA busy_timeout=3000; |
| | | CREATE TABLE config_snapshot ( |
| | | config_hash TEXT PRIMARY KEY, version_id TEXT NOT NULL UNIQUE, |
| | | schema_version INTEGER NOT NULL CHECK(schema_version=3), |
| | | content_json TEXT NOT NULL, author TEXT NOT NULL, |
| | | published_utc_ms INTEGER NOT NULL |
| | | ); |
| | | CREATE TABLE effective_config ( |
| | | scope_id TEXT PRIMARY KEY, config_hash TEXT NOT NULL |
| | | REFERENCES config_snapshot(config_hash), revision INTEGER NOT NULL |
| | | ); |
| | | CREATE TABLE resource_definition ( |
| | | config_hash TEXT NOT NULL REFERENCES config_snapshot(config_hash), |
| | | resource_key TEXT NOT NULL, device_id TEXT NOT NULL, channel_id INTEGER NOT NULL, |
| | | parent_key TEXT, session_key TEXT NOT NULL, physical_identity TEXT NOT NULL, |
| | | execution_mode TEXT NOT NULL CHECK(execution_mode IN ('Local','Broker')), |
| | | authority_id TEXT NOT NULL, owner_process_id TEXT, |
| | | access_policy TEXT NOT NULL, safe_profile TEXT NOT NULL, |
| | | PRIMARY KEY(config_hash, resource_key) |
| | | ); |
| | | CREATE TABLE slot_binding ( |
| | | config_hash TEXT NOT NULL, slot_id TEXT NOT NULL, capability TEXT NOT NULL, |
| | | resource_key TEXT NOT NULL, group_id TEXT NOT NULL, |
| | | PRIMARY KEY(config_hash, slot_id, capability), |
| | | FOREIGN KEY(config_hash, resource_key) |
| | | REFERENCES resource_definition(config_hash, resource_key) |
| | | ); |
| | | CREATE INDEX ix_binding_resource ON slot_binding(config_hash, resource_key); |
| | | CREATE TABLE broker_task_template ( |
| | | config_hash TEXT NOT NULL REFERENCES config_snapshot(config_hash), |
| | | template_id TEXT NOT NULL, template_version TEXT NOT NULL, |
| | | operation_code TEXT NOT NULL, parameters_schema TEXT NOT NULL, |
| | | required_resources_json TEXT NOT NULL, max_duration_ms INTEGER NOT NULL, |
| | | safe_profile TEXT NOT NULL, |
| | | PRIMARY KEY(config_hash,template_id,template_version) |
| | | ); |
| | | CREATE TABLE run_snapshot ( |
| | | run_id TEXT PRIMARY KEY, config_hash TEXT NOT NULL |
| | | REFERENCES config_snapshot(config_hash), recipe_hash TEXT NOT NULL, |
| | | driver_manifest_hash TEXT NOT NULL, dbc_hash TEXT NOT NULL, |
| | | uds_hash TEXT NOT NULL, slot_set_json TEXT NOT NULL, started_utc_ms INTEGER NOT NULL |
| | | ); |
| | | CREATE TABLE config_apply_ack ( |
| | | apply_id TEXT NOT NULL, authority_id TEXT NOT NULL, |
| | | config_hash TEXT NOT NULL REFERENCES config_snapshot(config_hash), |
| | | phase TEXT NOT NULL, readback_json TEXT NOT NULL, utc_ms INTEGER NOT NULL, |
| | | PRIMARY KEY(apply_id,authority_id) |
| | | );</code></pre><div class="codebar"><span>SQL · è¿è¡åº</span><button class="copy">å¤å¶</button></div><pre><code>PRAGMA foreign_keys=ON; |
| | | PRAGMA journal_mode=WAL; |
| | | PRAGMA synchronous=FULL; |
| | | PRAGMA busy_timeout=3000; |
| | | CREATE TABLE authority_meta ( |
| | | authority_id TEXT PRIMARY KEY, epoch INTEGER NOT NULL, |
| | | boot_id TEXT NOT NULL, schema_version INTEGER NOT NULL |
| | | ); |
| | | CREATE TABLE resource_state ( |
| | | resource_key TEXT PRIMARY KEY, generation INTEGER NOT NULL DEFAULT 0, |
| | | phase TEXT NOT NULL CHECK(phase IN ('Free','Active','Draining','RecoveryRequired','Disabled')), |
| | | lease_id TEXT UNIQUE, owner_id TEXT, owner_type TEXT, group_id TEXT, |
| | | process_instance_id TEXT, epoch INTEGER NOT NULL, |
| | | expires_utc_ms INTEGER, handover_utc_ms INTEGER, updated_utc_ms INTEGER NOT NULL, |
| | | CHECK(phase <> 'Free' OR lease_id IS NULL) |
| | | ); |
| | | CREATE INDEX ix_resource_expiry ON resource_state(phase,expires_utc_ms); |
| | | CREATE TABLE parent_permit ( |
| | | parent_key TEXT NOT NULL, lease_id TEXT NOT NULL, |
| | | mode TEXT NOT NULL CHECK(mode IN ('Shared','Exclusive')), |
| | | owner_id TEXT NOT NULL, epoch INTEGER NOT NULL, |
| | | expires_utc_ms INTEGER NOT NULL, |
| | | PRIMARY KEY(parent_key,lease_id) |
| | | ); |
| | | CREATE TABLE lease_history ( |
| | | event_id INTEGER PRIMARY KEY AUTOINCREMENT, resource_key TEXT NOT NULL, |
| | | generation INTEGER NOT NULL, epoch INTEGER NOT NULL, lease_id TEXT, |
| | | owner_id TEXT, event_type TEXT NOT NULL, reason TEXT NOT NULL, utc_ms INTEGER NOT NULL |
| | | ); |
| | | CREATE TABLE broker_task ( |
| | | task_id TEXT PRIMARY KEY, client_instance_id TEXT NOT NULL, |
| | | idempotency_key TEXT NOT NULL, payload_sha256 TEXT NOT NULL, |
| | | config_hash TEXT NOT NULL, epoch INTEGER NOT NULL, |
| | | template_id TEXT NOT NULL, request_json TEXT NOT NULL, |
| | | state TEXT NOT NULL CHECK(state IN ('Accepted','Queued','Running','Succeeded', |
| | | 'Failed','Cancelled','Expired','Unknown','RecoveryRequired')), |
| | | priority INTEGER NOT NULL, submitted_utc_ms INTEGER NOT NULL, |
| | | deadline_utc_ms INTEGER NOT NULL, started_utc_ms INTEGER, finished_utc_ms INTEGER, |
| | | result_json TEXT, error_code TEXT, |
| | | UNIQUE(client_instance_id,idempotency_key) |
| | | ); |
| | | CREATE INDEX ix_task_queue ON broker_task(state,priority,submitted_utc_ms); |
| | | CREATE TABLE broker_event ( |
| | | cursor INTEGER PRIMARY KEY AUTOINCREMENT, task_id TEXT, |
| | | event_type TEXT NOT NULL, payload_json TEXT NOT NULL, utc_ms INTEGER NOT NULL |
| | | ); |
| | | CREATE TABLE result_outbox ( |
| | | result_id TEXT PRIMARY KEY, task_id TEXT NOT NULL UNIQUE REFERENCES broker_task(task_id), |
| | | payload_json TEXT NOT NULL, state TEXT NOT NULL CHECK(state IN ('Pending','Acked')), |
| | | attempt INTEGER NOT NULL DEFAULT 0, created_utc_ms INTEGER NOT NULL |
| | | ); |
| | | CREATE TABLE recovery_checkpoint ( |
| | | resource_key TEXT PRIMARY KEY, epoch INTEGER NOT NULL, status TEXT NOT NULL, |
| | | physical_readback_json TEXT NOT NULL, approved_by TEXT, |
| | | evidence_json TEXT NOT NULL, updated_utc_ms INTEGER NOT NULL |
| | | ); |
| | | CREATE TABLE operation_audit ( |
| | | audit_id INTEGER PRIMARY KEY AUTOINCREMENT, correlation_id TEXT NOT NULL, |
| | | principal_id TEXT NOT NULL, owner_id TEXT NOT NULL, task_id TEXT, |
| | | resource_key TEXT NOT NULL, action TEXT NOT NULL, outcome TEXT NOT NULL, |
| | | detail_json TEXT NOT NULL, utc_ms INTEGER NOT NULL |
| | | );</code></pre><div class="codebar"><span>SQL + äºå¡ç¼æè¯´æ</span><button class="copy">å¤å¶</button></div><pre><code>-- åæï¼è¯·æ±èµæºå·²å±å¼ãè§èåãå»éãOrdinalæåºï¼å±äºåä¸ Authorityã |
| | | -- æ¯ä¸ªå¶èµæºå¿
é¡» Freeï¼Expired ä¸å±äº Freeãç¶ Permit å²çªä¹å¨æ¬äºå¡æ£æ¥ã |
| | | BEGIN IMMEDIATE; |
| | | -- åºç¨å
SELECT å¹¶æ£æ¥å
¨é¨å¶èç¹ + parent_permitï¼æ è·¨å/缺项/å²çªæç»§ç»ã |
| | | SELECT resource_key, generation, phase, epoch FROM resource_state |
| | | WHERE resource_key IN (@r1, @r2); |
| | | -- 对æ¯ä¸ªå¶èµæºæ§è¡ä¸ååæ°å UPDATEï¼å¹¶æ£æ¥ changes() = 1ã |
| | | UPDATE resource_state |
| | | SET generation=generation+1, phase='Active', lease_id=@lease_id, |
| | | owner_id=@owner_id, owner_type=@owner_type, group_id=@group_id, |
| | | process_instance_id=@process_id, epoch=@epoch, |
| | | expires_utc_ms=@expires, updated_utc_ms=@now |
| | | WHERE resource_key=@resource_key AND phase='Free' AND epoch=@epoch; |
| | | -- ç¶Permitå²çªæ£æ¥åæå
¥ï¼åªè¦ä»»ä¸æ¡å¤±è´¥ï¼æ´ä¸ªäºå¡ ROLLBACKã |
| | | INSERT INTO parent_permit(parent_key,lease_id,mode,owner_id,epoch,expires_utc_ms) |
| | | VALUES(@parent,@permit_id,'Shared',@owner_id,@epoch,@expires); |
| | | -- åäºå¡æå
¥ lease_historyï¼COMMIT æååæè¿å Grantã |
| | | COMMIT; |
| | | |
| | | -- Renewï¼ä¿æ Generation ä¸åï¼ç¦æ¢è¿æç§çº¦å¤æ´»ã |
| | | UPDATE resource_state SET expires_utc_ms=@new_expires, updated_utc_ms=@now |
| | | WHERE resource_key=@resource_key AND lease_id=@lease_id |
| | | AND generation=@generation AND epoch=@epoch |
| | | AND phase='Active' AND expires_utc_ms > @now; |
| | | -- ç¶Permitåäºå¡ç»æï¼ç»å
ä»»ä¸é¡¹å¤±è´¥ => åæ»ç»æãç»æ´ä½å¤±æå¹¶é离ã |
| | | -- Draining ç»æèµ°ä¸é¨åæ¯ï¼ä¸éä¸å¾è¶
è¿ handover_utc_msã |
| | | |
| | | -- TTLè¿æï¼ä¿çGenerationåownerè¯æ®ï¼è¿å
¥æ¢å¤ï¼ä¸ç´æ¥æ¸
空æå è¡ã |
| | | UPDATE resource_state SET phase='RecoveryRequired', updated_utc_ms=@now |
| | | WHERE phase IN ('Active','Draining') AND expires_utc_ms <= @now; |
| | | -- åªææ¢å¤åè°å¨è¯»ååæ ¼ãæ§I/Oå·²é离ãç¶Permitæ£ç¡®å½è¿åå¯å为Freeã |
| | | -- æ£å¸¸Release亦须å¨SessionGateå
宿æç©ºå任塿¸
çååç½®Freeã</code></pre><p>åå§åæ¶ä¸ºå·²åå¸èµæºå建 Free è¡ï¼generation=0ï¼å é¤è®¾å¤ä¹ä¿ç fence å¢ç¢ãçæå·æ°¸ä¸å éæ¾ãé坿æ¸
çåå²åéãæ¢å¤æ§æ°æ®åºå¤ä»½åå¿
é¡»æ´æ¢ Authority identity/epochï¼ç¦æ¢æ§ token 忬¡ææãSELECT ç»æçåæ¯ä¸ changes() æ£æ¥ç± C# å¨åä¸è¿æ¥äºå¡å
å®ç°ï¼ä¸ä½¿ç¨ SQLite 䏿¯æç SELECT INTO / FOR UPDATEã[E1]</p> |
| | | <p>æç»æ°æ®ãä»»å¡ç»æãOutbox ä¸ Event å¨åä¸è¿è¡åºäºå¡æäº¤ï¼ACK ä»
卿¶è´¹è
æä¹
åæåååéãOutbox ä¿çå° ACKï¼æ¶è´¹è
æ ResultId å¯ä¸çº¦æå»éãæ¥å¿æ¸
çä¸å¾å é¤å°æª ACKãUnknownãRecoveryRequired æè¢« Run å¼ç¨çè¯æ®ã</p></section><section id="csharp"><h2>09ãC# æ¥å£ä¸å
¼å®¹è¾¹ç</h2><p>以ä¸ä¸º V3.0 å约åºçº¿ï¼å¯æ½åºä¸ºç¬ç«ç±»åºãä½¿ç¨ Task åæ®é类以éé
å½å net472ï¼ä¸ä¾èµ TimeProviderãPeriodicTimerãrecord æåç await usingãåºååå·¥å
·åºæ¾å¼æ å°åªè¯» LeaseGrant æé å¨ãToken æ¯ææå¼ç¨ï¼æå¡ç«¯è¿å¿
é¡»æ ¡éªè¿æ¥èº«ä»½ä¸ ownerï¼ä¸è½æå¯è§ token å½ä½ç¾ååæ®ã</p><div class="codebar"><span>C# · å约</span><button class="copy">å¤å¶</button></div><pre><code>using System; |
| | | using System.Collections.Generic; |
| | | using System.Threading; |
| | | using System.Threading.Tasks; |
| | | |
| | | namespace Aging.ResourceContracts.V3 |
| | | { |
| | | public enum ExecutionMode { Local, Broker } |
| | | public enum OwnerKind { Production, Maintenance, SystemSafety } |
| | | public enum TaskState { Accepted, Queued, Running, Succeeded, Failed, |
| | | Cancelled, Expired, Unknown, RecoveryRequired } |
| | | |
| | | // Broker/Storeç¾åï¼å¿
é¡»ææä¹
ååæ®µè¿åï¼ä¸è½å¨ååºååæ¶çææ°LeaseIdã |
| | | public sealed class LeaseGrant |
| | | { |
| | | public string AuthorityId { get; } |
| | | public string ResourceKey { get; } |
| | | public string LeaseId { get; } |
| | | public string OwnerId { get; } |
| | | public long Epoch { get; } |
| | | public long Generation { get; } |
| | | public long ExpiresUtcMs { get; } |
| | | public LeaseGrant(string authorityId, string resourceKey, string leaseId, |
| | | string ownerId, long epoch, long generation, long expiresUtcMs) |
| | | { |
| | | AuthorityId=authorityId; ResourceKey=resourceKey; LeaseId=leaseId; |
| | | OwnerId=ownerId; Epoch=epoch; Generation=generation; |
| | | ExpiresUtcMs=expiresUtcMs; |
| | | } |
| | | } |
| | | public sealed class AcquireRequest |
| | | { |
| | | public string OwnerId { get; set; } = ""; |
| | | public OwnerKind OwnerKind { get; set; } |
| | | public string ProcessInstanceId { get; set; } = ""; |
| | | public string ConfigHash { get; set; } = ""; |
| | | public string[] ResourceKeys { get; set; } = new string[0]; |
| | | public int WaitTimeoutMs { get; set; } |
| | | } |
| | | public interface ILeaseScope |
| | | { |
| | | IReadOnlyList<LeaseGrant> Grants { get; } |
| | | CancellationToken LeaseLost { get; } |
| | | Task ReleaseAsync(CancellationToken cancellationToken); |
| | | } |
| | | public interface IResourceCoordinator |
| | | { |
| | | Task<ILeaseScope> AcquireGroupAsync(AcquireRequest request, CancellationToken ct); |
| | | Task<IReadOnlyList<LeaseGrant>> RenewGroupAsync( |
| | | IReadOnlyList<LeaseGrant> grants, CancellationToken ct); |
| | | Task RequestHandoverAsync(string resourceKey, string reason, CancellationToken ct); |
| | | } |
| | | public sealed class DeviceOperation |
| | | { |
| | | public string OperationCode { get; set; } = ""; |
| | | public string ParametersJson { get; set; } = "{}"; |
| | | public string IdempotencyKey { get; set; } = ""; |
| | | public string ConfigHash { get; set; } = ""; |
| | | public IReadOnlyList<LeaseGrant> Grants { get; set; } = new LeaseGrant[0]; |
| | | public long DeadlineUtcMs { get; set; } |
| | | } |
| | | public sealed class OperationResult |
| | | { |
| | | public string RequestId { get; set; } = ""; |
| | | public TaskState State { get; set; } |
| | | public string ErrorCode { get; set; } = ""; |
| | | public string ReadbackJson { get; set; } = "{}"; |
| | | public bool PhysicalStateKnown { get; set; } |
| | | } |
| | | public interface IDeviceExecutor |
| | | { |
| | | Task<OperationResult> ExecuteAsync(DeviceOperation op, CancellationToken ct); |
| | | } |
| | | public sealed class BrokerTaskRequest |
| | | { |
| | | public string ClientInstanceId { get; set; } = ""; |
| | | public string TemplateId { get; set; } = ""; |
| | | public string TemplateVersion { get; set; } = ""; |
| | | public DeviceOperation Operation { get; set; } = new DeviceOperation(); |
| | | } |
| | | public sealed class BrokerTaskTicket |
| | | { |
| | | public string TaskId { get; set; } = ""; |
| | | public TaskState State { get; set; } |
| | | } |
| | | public interface IDeviceBrokerClient |
| | | { |
| | | Task<BrokerTaskTicket> SubmitAsync(BrokerTaskRequest request, CancellationToken ct); |
| | | Task<OperationResult> QueryAsync(string taskId, CancellationToken ct); |
| | | Task CancelAsync(string taskId, string reason, CancellationToken ct); |
| | | Task AckResultAsync(string resultId, CancellationToken ct); |
| | | } |
| | | }</code></pre><div class="table-wrap"><table><thead><tr><th>ç°ææ¥å£/ç±»</th><th>V3.0 è¿ç§»æ¹å¼</th><th>å½±å</th></tr></thead><tbody><tr><td>IResourceManager</td><td>ä¿çæ§åèµæºæ¹æ³ä¸ºè¿æ¸¡ Adapterï¼æ°å¢ IResourceCoordinator</td><td>ç»æãç»é¢çº¦ä¸å¼æ¥ç¶ææ¥è¯¢ä¸ºæ°æ¥å£ï¼ä¸å¡è°ç¨ééé
</td></tr><tr><td>ResourceOwnerToken</td><td>ä»
ä¿çä¸å¡ owner å
æ°æ®ï¼I/O ä½¿ç¨æ¯èµæºç¬ç« LeaseGrant</td><td>ä¸ä¸ª owner 坿æå¤ä¸ªä¸å generationï¼ç¦æ¢å
±ç¨å¯å Generation</td></tr><tr><td>IAutoDeviceFacade / IAutoDeviceLease</td><td>LeaseScope 注å
¥å¿è·³ä¸ LeaseLostï¼æ¾å¼å¼æ¥ Release</td><td>Dispose ä¸å¾é»å¡ UIï¼éæ¾å¤±è´¥åºå¯æ¥è¯¢åè¿å
¥æ¢å¤</td></tr><tr><td>DeviceService</td><td>éè¿ SnapshotResolver + ResourceRouter è°ç¨ IDeviceExecutor</td><td>å·²æ raw command ä»
çåæ§ç»´æ¤å
¥å£ï¼ç产ç¨ç±»åå OpCode</td></tr><tr><td>DriverFactory / DeviceManager</td><td>åºå宿主驱å¨ä¸ BrokerProxyï¼Proxy ä¸å è½½è®¾å¤ SDK</td><td>使°å²çªç SDK ç¬ç« Broker è¿ç¨ï¼IPC åçº¦ä¿æä¸è´</td></tr><tr><td>DebugSessionManager</td><td>ä¿å sessionãgrantsãhandover 䏿¢å¤ç»æ</td><td>ä¸è½éæ°æé owner token ä»£æ¿æ¢å¤æä¹
å tokenï¼çæ§ä¸åæéåå¼</td></tr></tbody></table></div></section><section id="execution"><h2>10ãæ§è¡å
¥å£ãçå½å¨æä¸åæ¶è¯ä¹</h2><h3>10.1 忬¡æä½</h3><ol><li>æ¥éª¤è§£æ Slot/Capabilityï¼å¾å°å»ç»çæ¬ä¸çèµæºéåä¸å®¿ä¸»ï¼æ£æ¥ Run / DUTExecution ç¶æã</li><li>ç³è¯·ç»é¢çº¦ï¼æå¤ç¨å·²æ Scopeï¼ï¼åå¾å¶èç¹åç¶ Permitï¼å¯å¨ç¬ç«ç»æä»»å¡ã</li><li>DeviceService æ ¡éªå¨ä½ãåæ°ãéå¼å软件èéï¼æé OperationCode ä¸ IdempotencyKeyã</li><li>LocalExecutor æ Broker å¨å
¥éæ¶æ ¡éªï¼åºéå¹¶ææ SessionGate å忬¡æ ¡éªå®æ´ grantãepochãConfigHashãdeadline ä¸è¿æ¥èº«ä»½ã</li><li>æ§è¡ä¸å¯æåçéæ©éé/å½ä»¤/ååºç段ï¼è¯»åæ ¸å¯¹å¹¶è®°å½è´¨éãèéæ
éææå¯ä¸æä»»å¡ï¼å·²åå¨ä½æç¡¬ä»¶è½åå¤çã</li><li>æäº¤ Task ç»æãäºä»¶å Outboxï¼ç»æåå°æ¥éª¤å¼æï¼ç±å¼æå¤å®æ¥éª¤/产åç»æã</li><li>Scope éåºå
åæ¢ç»æååå°ä»»å¡ï¼æç©º I/Oï¼å读å/å®å
¨äº¤æ¥å¹¶éæ¾ã失败è¿å
¥ RecoveryRequiredï¼ç»ä¸ä»
è®°å½æ¥å¿ååè£
å¯ç¨ã</li></ol> |
| | | <h3>10.2 伪代ç ï¼SessionGate ä¸ææææ£æ¥</h3><div class="codebar"><span>C# · æ§è¡ç®æ³</span><button class="copy">å¤å¶</button></div><pre><code>// æ§è¡ç®æ³ç¤ºæï¼ä¾èµçStore/Driver䏿¯æ¬æå·²å®ç°ä»£ç ã |
| | | using (await sessionGate.EnterAsync(sessionKey, ct)) |
| | | { |
| | | await authority.ValidateAtDispatchAsync(op.Grants, principal, ct); |
| | | ValidateConfigAndDeadline(op); |
| | | await safety.CheckAsync(op, ct); |
| | | // 忢éé + å + 读ååºä¿æå¨åä¸Gateï¼ç¦æ¢ä¸ééæ¾ã |
| | | await journal.MarkRunningAsync(requestId, ct); // I/Oä¹åæä¹
å |
| | | var result = await driver.ExecuteAtomicAsync(op, ioToken); |
| | | await journal.CommitResultAndOutboxAsync(requestId, result, persistToken); |
| | | } |
| | | // æ¯ä¸ªä¸å¯éåå¨ä½å忬¡æ ¸å¯¹leaseï¼ç»æä¸è½æ¢åä¸è¢«é¿ä»»å¡å ç¨çè°åº¦éåã |
| | | // 交æ¥å
å
³éæ°å
¥éãåæ¶å¾
æ§è¡ä»»å¡ãçå¾
å½åååçæ®µç»æ¢å¹¶è¯»åï¼ |
| | | // æªè½ç¡®è®¤ç»æ¢æ¶ä¿æé离ï¼ç¦æ¢ä»
å Generationå¢å å°±å¯ç¨æ°ownerã</code></pre><p>åæ¶åä¸ç±»ï¼æéåæ¶å¯ç¡®å®æªåéï¼æ§è¡ä¸åæ¶é驱å¨ç¡®è®¤å®å
¨åæ¢ï¼ååºçå¾
åæ¶ä»
忢çå¾
ï¼ä¸è½è¯æç©çæä½æ¤éãè°ç¨æ¹ç CancellationToken ä¸å¾åæ¶ç»æ/审计æä¹
åï¼ç»æä¿åä½¿ç¨æççç¬ç« tokenï¼å¤±è´¥åé离ã</p> |
| | | <p>ä¸è½å¨åä¸ä¸ªé线ç¨å®å
¨ SDK ä¼è¯ä¸å¹¶ååé SafeShutdown 䏿£å¸¸å½ä»¤ãå®å
¨ééå¿
é¡»æç»éªè¯çç¬ç«è½åï¼å¦ PLC 硬线ãç¬ç«æ§å¶å£ï¼ï¼å¦åçå¾
ä¼è¯éåºï¼è¶
æ¶è§¦å硬件çç¥å¹¶ä¿æé离ã</p></section><section id="tasks"><h2>11ãBroker Task 模åãæ¨¡æ¿ä¸ç¶ææº</h2><p><b>Broker Task</b> æ¯å®¿ä¸»æ§è¡çæç设å¤å¨ä½æå¯ç»ç§è®¾å¤ä»»å¡ï¼å®ä¸æ¯ C# Task 对象çåºååï¼ä¹ä¸æ¯æ´ä¸ª DUT RecipeãRecipe ä¸çé¿ Delay ç卿§è¡å¼æï¼å¨æ CAN åéãTesterPresentãéé订é
çå¯é©»ç Brokerï¼å owner ç§çº¦å宿主çé¨ç约æã</p> |
| | | <div class="table-wrap"><table><thead><tr><th>Task ç±»å</th><th>è¾å
¥/èµæº</th><th>宿æ¡ä»¶</th><th>失æçç¥</th></tr></thead><tbody><tr><td>OneShot / AtomicSequence</td><td>ç±»ååå½ä»¤ + grant é + deadline</td><td>åå
¥åå¿
è¦è¯»å宿</td><td>è¶
æ¶æåéè¾¹çåºå Expired / Unknown</td></tr><tr><td>PeriodicTx</td><td>CAN 帧模æ¿ãbusã卿ãæç»æéãowner</td><td>Stop/å°æ/ç§çº¦å¤±æå¹¶ç¡®è®¤åæ¢</td><td>卿é失跳è¿è¿æ¶å¸§ï¼ç¦æ¢éè¿å追补æ§å¸§</td></tr><tr><td>ProtocolSession</td><td>UDS å°åãä¼è¯åæ°ãæ»æéãç¬å é®</td><td>ååºå®æææ¾å¼éåº</td><td>TesterPresent ä¸ä¸å¡å¨ä½ç»ä¸ä¼è¯è°åº¦ï¼å¼å¸¸æ¢å¤åè®®ç¶æ</td></tr><tr><td>Acquisition</td><td>éæ ·ééã卿ãç¼åçç¥ã订é
ID</td><td>åæ¶å¹¶ç¡®è®¤åé/è§£ç»</td><td>å
è®¸æ°æ® Gapï¼è´¨éæ è®° Stale/Disconnectedï¼ä¸å¯ä¼ªé è¿ç»æ°æ®</td></tr><tr><td>SafeState</td><td>å审å®å
¨æ¨¡æ¿åæ¢å¤ææ</td><td>ç©ç读åç¬¦åæ¨¡æ¿</td><td>失败维æ RecoveryRequired å¹¶æ¥è¦</td></tr></tbody></table></div><h3>11.1 ä»»å¡å段ä¸ç¶æ</h3><p>TaskIdãClientInstanceIdãIdempotencyKeyãTemplateId/VersionãPayloadSHA256ãConfigHashãRunIdãDUTExecutionIdãStepExecutionIdãOwnerIdãGrantSetãPriorityãSubmittedAtãStartDeadlineãMaxDurationãAttemptãStateãReadbackãErrorCodeãResultIdãCorrelationIdãè¶
æ¶å为æéèµ·å§æéåè¿è¡ä¸éï¼ä¸è½æ··ç¨ã</p> |
| | | <p><code>Accepted â Queued â Running â Succeeded / Failed / Cancelled / Unknown / RecoveryRequired</code>ï¼æªå¯å¨ä»»å¡å¯è½¬ Expiredï¼åæ¶å¾
æ§è¡ä»»å¡å¯è½¬ CancelledãAccepted å¿
须已æä¹
åï¼ä½ä¸ä»£è¡¨è®¾å¤å·²æ§è¡ãRunning è½çåæå I/Oï¼è¥å´©æºå¨è½çä¸åéä¹é´ï¼æ¢å¤æ¶ä»æå¯è½å·²åéå¤çï¼ä¸è½æ¨æµä¸ºæªåéã</p> |
| | | <h3>11.2 å¹çä¸ä¸å¯éå¨ä½</h3><p>åä¸ (ClientInstanceId, IdempotencyKey) ä¸åä¸ PayloadHash è¿åå·²æ Taskï¼åé®ä¸åå
å®¹æ¥ IDEMPOTENCY_CONFLICTã客æ·ç«¯éè¿ä¿çå ClientInstanceId æ¥è¯¢ï¼ä¸çææ°é®éåãè·¨éå¯ä¿ç Journal ä¸ epochï¼æ§ epoch æªå¼å§ä»»å¡å
¨é¨å¤±æï¼éæ°ç§çº¦åæ°ä»»å¡ãå½ä»¤æ§è¡ä¸æ°æ®åºæäº¤ä¹é´æ 硬件äºå¡ï¼å æ¤ä¸æ¿è¯º exactly-onceãSetVoltage çå¨ä½è½å¦éè¯å¿
é¡»æä»ªå¨è¡ä¸ºå读åå®ä¹ï¼è§¦åãå¤ä½ãç§åã计æ°å¨ä½é»è®¤ç¦æ¢èªå¨éæ¾ã</p> |
| | | <h3>11.3 ç¤ºä¾æ¨¡æ¿</h3><div class="codebar"><span>JSON · 模æ¿ç¤ºä¾</span><button class="copy">å¤å¶</button></div><pre><code>{ |
| | | "templateId":"psu.set-readback", "version":"1", |
| | | "allowedOperationCodes":["SelectChannel","SetVoltage","ReadVoltage"], |
| | | "resources":["psu/{device}/ch/{channel}","parent-permit:{device}"], |
| | | "atomicSession":"{device}/main", "maxDurationMs":3000, |
| | | "validation":{"voltage":"within channel and recipe limit"}, |
| | | "onUnknown":"IsolateAndReadback", "retryClass":"ReconcileFirst" |
| | | }</code></pre><p>模æ¿å
è®¸åæ°æ¿æ¢ï¼ä¸è½æå®ä»»æé©±å¨ç±»åãå°åãèæ¬ææä»¶è·¯å¾ã模æ¿åæ´åä¸é
ç½® HashãPeriodicTx ç卿/æå¨éªæ¶å¿
é¡»ç±çå® SDK åè®¾å¤æµéï¼Windows æ®é Task/Timer 䏿æç¡¬å®æ¶ä¿è¯ã</p></section><section id="broker-runtime"><h2>12ãBroker è°åº¦ãéåä¸é¥æµ</h2><div class="table-wrap"><table><thead><tr><th>è¿è¡åå
</th><th>è°åº¦è§å</th><th>èåä¸éå¶</th></tr></thead><tbody><tr><td>IPC Accept / Auth</td><td>åè®®æ¡æãç¨æ·/è¿ç¨èº«ä»½éªè¯ãæ¶æ¯è¾¹çåé¿åº¦éå¶</td><td>è¿æ¥æ°ãæ¶æ¯å¤§å°ãè°ç¨é¢çéé¢ï¼é»è®¤ 1 MiB æ¶æ¯ä¸éï¼å¾
åæµ</td></tr><tr><td>Control Worker</td><td>Acquire/Renew/Release/Cancel/Queryï¼ä¸è®¾å¤èæ¶ I/O å离</td><td>ä¿çæ§å¶å¸¦å®½ï¼éæµé²æ®é请æ±èå°½å¿è·³å¤ç</td></tr><tr><td>Session Actor</td><td>æ¯çå®è¿æ¥åéåï¼æ¯æ¬¡ä»
䏿®µåå I/O</td><td>éåä¸é示ä¾128ï¼æ»¡è¿å QUEUE_FULLï¼è¿æä»»å¡ä¸åé</td></tr><tr><td>Task Scheduler</td><td>å®å
¨äºä»¶ä¼å
ãç»´æ¤è®©æ¸¡åè°ãç产æ owner 轮转</td><td>åä¼å
级å
¬å¹³ï¼è¿ç»å ç¨æ¶é´ä¸éï¼ä¸å¨ä»»æå½ä»¤ä¸é´æ¢å </td></tr><tr><td>Protocol Worker</td><td>CAN 忥æ¶å¾ªç¯ + è§£ç /订é
ï¼UDS åä¼è¯è°åº¦</td><td>æ SDK 线ç¨å®å
¨è½ååç»ï¼bus reset å±å
¨å±å¨ä½</td></tr><tr><td>Journal / Outbox Writer</td><td>ååå
¥å¨æ¹éæäº¤ï¼å
³é®ç¶æå
æä¹
å</td><td>ä¸å¯ä¸¢åæä½å®¡è®¡ï¼ç£çæ»¡åæ¢æ°å¢å¨ä½å¹¶é离</td></tr><tr><td>Telemetry Fanout</td><td>忬¡ééå¤è®¢é
ï¼æºå¸¦æ¥æºãè´¨éãåºåå·ãæ¶é´</td><td>UI ææ°å¼å¯è¦çï¼çäº§æ ·æ¬ä½¿ç¨æçéåï¼Gap å¿
须记å½</td></tr><tr><td>Watchdog / Recovery</td><td>ç¬ç«å¿è·³æ£æ¥ãå¼å¸¸éç¦»ãæ¢å¤é¨ç¦</td><td>ä¸è½å 为å¿èæ éç»ç§ï¼ä¸å¾å¾ªç¯å¿«ééå¯</td></tr></tbody></table></div><p>Session Actor éæ¾ä¼è¯éåçå¾
稳å®å»¶æ¶è¿æ¯ä¿æéï¼åå³äºè®¾å¤è¦åï¼å
±äº« DMM/ç©éµé¡»ä¿æèµæºæå©åè·¯ç±ä¸åï¼ä»ªå¨å¯ç¬ç«å®æ¶è¾åºççµæºä»»å¡å¯éæ¾æä½éï¼ä½ä¿çééé¢çº¦ãéå串è¡åæ¬èº«ä¸æå³çå
许å¤ä¸ª Run åæ¶æ¹åå䏿¸©ç®±è®¾å®å¼ï¼æ¸©ç®±æ§å¶æå¿
é¡»ç»å®å
¼å®¹ç Run/groupã</p> |
| | | <p>硬件 Safety 䏿®éè°åº¦ç¬ç«ã示ä¾å
¬å¹³çç¥ä¸ºæ¯ owner 䏿¬¡ååçæ®µå轮转ï¼ä¼å
级åªå³å®ä¸ä¸ç段ï¼ä¸ç»è¿ç§çº¦æèéãæç»éé/卿åéå ç¨é»è¾æå©ä½ä¸æ°¸ä¹
å ç¨æ®éè°åº¦çº¿ç¨ã宿¶çº¿ç¨æ°éç±ä¼è¯/SDK è½åç¡®å®ï¼ä¸è½æ 120 ç©´ä½å建 120 轮询线ç¨ã</p></section><section id="ipc"><h2>13ãIPC åè®®ã身份ä¸äºä»¶æ¢å¤</h2><p>åæºåºçº¿ä½¿ç¨ Windows Named Pipeï¼æå¡åå« Station/Broker/åè®®ä¸»çæ¬ãç°æ PipeClient å¿
é¡»å
ä¿®å¤ååºä¸å¯è¾¾ãserverNameãåæ¶åçå¾
é®é¢ï¼åä½ä¸ºåéåºç¡ï¼ä¸è½ç´æ¥å®£ç§°ç°æ SendMessage 为å¯é 请æ±-ååºã[E3]</p><div class="codebar"><span>JSON · æ¶æ¯å¤å£³</span><button class="copy">å¤å¶</button></div><pre><code>{ |
| | | "protocolVersion":3, "messageType":"SubmitTask", "requestId":"req-...", |
| | | "correlationId":"run-.../step-...", "clientInstanceId":"worker-01/boot-...", |
| | | "authorityId":"broker-b01", "expectedEpoch":42, |
| | | "configHash":"sha256:...", "deadlineUtcMs":1793673605000, |
| | | "body":{"templateId":"psu.set-readback", "templateVersion":"1", |
| | | "idempotencyKey":"run/dut/step/attempt-1", "grants":[], "parameters":{}} |
| | | }</code></pre><p>Body è¿éåªæ¯å¤å£³ç¤ºä¾ï¼çå®è®¾å¤ Submit å¿
é¡»å«å®æ´ grant éï¼ç©ºæ°ç»è¢«æç»ãåºçåä¼ RequestIdãTaskIdãBrokerEpochãStateãErrorCodeãRetryAdviceãServerUtcMsï¼å¯¹ä¸å
¼å®¹åè®®æç»è¿æ¥ï¼ä¸èªå¨é级å®å
¨å段ã</p> |
| | | <p>帧åè®®éæ©â4 åèé¿åº¦ + UTF-8 JSONâå¹¶å®ç°ç²¾ç¡®è¯»åãæå¤§å¸§éå¶ãåå
ãç²å
ãååºå
³èä¸åæ¶ï¼å³ä¾¿ä½¿ç¨ Message 模å¼ï¼ä¹è¦å¤ç IsMessageComplete åå¤§æ¶æ¯ãæ¯æ¡è¿æ¥ååå
¥æ³µãå读åååå¨ï¼å¤ä¸ªè¯·æ±éè¿ RequestId å
³èï¼ç¦æ¢å¤ä¸ªè°ç¨æ¹åæ¶ç´æ¥è¯»åä¸ streamã</p> |
| | | <p>管é ACL é嶿宿å¡èº«ä»½åå·¥ç¨è´¦æ·ï¼æå¡ç«¯ä» OS 身份æ å° Principalï¼ä¸ç¸ä¿¡ body ä¸çè§è²æ OwnerKindãOwnerId å¿
é¡»ç»å®å·²è®¤è¯ç Run/DebugSession/è¿ç¨å®ä¾ãè·¨æºæ©å±éç¨ TLS çç¬ç«æå¡ç«¯å£ãåå身份éªè¯åç½ç»ç½ååï¼Named Pipe å®ç°ä¸ä¼èªå¨åæå®å
¨çè·¨æºç½å
³ã</p> |
| | | <p>äºä»¶å¸¦æä¹
ååè° cursorã客æ·ç«¯æçº¿åå
Query æªç»æ Taskï¼åææå cursor ç»è®¢ï¼è¥ cursor 已被ä¿ççç¥æ¸
é¤ï¼è¿å CURSOR_GONEï¼å®¢æ·ç«¯åå
¨éä»»å¡/èµæºå¿«ç
§å¹¶é建订é
ãè¿ç¨ PID å ProcessStartTime/éæº ProcessInstanceIdï¼é¿å
PID å¤ç¨è¢«è¯¯è®¤ä¸ºåææè
ã</p></section><section id="arbitration"><h2>14ãèµæºä»²è£ä¸ç»´æ¤äº¤æ¥</h2><figure><button class="zoom" aria-label="æ¾å¤§å¾2">æ¾å¤§æ¥ç</button><img class="diagram-image" alt="å¾2 V3.0ç®æ æ¶æè®¾è®¡" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPCEtLSBEbyBub3QgZWRpdCB0aGlzIGZpbGUgd2l0aCBlZGl0b3JzIG90aGVyIHRoYW4gZHJhdy5pbyAtLT4KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj4KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHN0eWxlPSJiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IGNvbG9yLXNjaGVtZTogbGlnaHQgZGFyazsiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2ZXJzaW9uPSIxLjEiIHdpZHRoPSIxNTE3cHgiIGhlaWdodD0iODc4cHgiIHZpZXdCb3g9Ii0wLjUgLTAuNSAxNTE3IDg3OCIgY29udGVudD0iJmx0O214ZmlsZSBob3N0PSZxdW90O0VsZWN0cm9uJnF1b3Q7IGFnZW50PSZxdW90O01vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjA7IFdpbjY0OyB4NjQpIEFwcGxlV2ViS2l0LzUzNy4zNiAoS0hUTUwsIGxpa2UgR2Vja28pIGRyYXcuaW8vMjguMi41IENocm9tZS8xMzguMC43MjA0LjI1MSBFbGVjdHJvbi8zNy42LjEgU2FmYXJpLzUzNy4zNiZxdW90OyB2ZXJzaW9uPSZxdW90OzI4LjIuNSZxdW90OyBwYWdlcz0mcXVvdDszJnF1b3Q7Jmd0OyYjMTA7ICAmbHQ7ZGlhZ3JhbSBuYW1lPSZxdW90O2FyY2hpdGVjdHVyZSZxdW90OyBpZD0mcXVvdDthcmNoaXRlY3R1cmUmcXVvdDsmZ3Q7JiMxMDsgICAgJmx0O214R3JhcGhNb2RlbCBkeD0mcXVvdDstODI0JnF1b3Q7IGR5PSZxdW90Oy0yNDgmcXVvdDsgZ3JpZD0mcXVvdDswJnF1b3Q7IGdyaWRTaXplPSZxdW90OzEwJnF1b3Q7IGd1aWRlcz0mcXVvdDsxJnF1b3Q7IHRvb2x0aXBzPSZxdW90OzEmcXVvdDsgY29ubmVjdD0mcXVvdDsxJnF1b3Q7IGFycm93cz0mcXVvdDsxJnF1b3Q7IGZvbGQ9JnF1b3Q7MCZxdW90OyBwYWdlPSZxdW90OzAmcXVvdDsgcGFnZVNjYWxlPSZxdW90OzEmcXVvdDsgcGFnZVdpZHRoPSZxdW90OzE2MDAmcXVvdDsgcGFnZUhlaWdodD0mcXVvdDs5MDAmcXVvdDsgYmFja2dyb3VuZD0mcXVvdDsjZmZmZmZmJnF1b3Q7IG1hdGg9JnF1b3Q7MCZxdW90OyBzaGFkb3c9JnF1b3Q7MCZxdW90OyZndDsmIzEwOyAgICAgICZsdDtyb290Jmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90OzAmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDswJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7dGl0bGUmcXVvdDsgdmFsdWU9JnF1b3Q7TG9jYWwgKyBEZXZpY2VCcm9rZXLvvJrnu5/kuIDkuJrliqHlhaXlj6PkuI7liIbln58gSS9P77yI55uu5qCH6K6+6K6h77yJJnF1b3Q7IHN0eWxlPSZxdW90O3JvdW5kZWQ9MDt3aGl0ZVNwYWNlPXdyYXA7aHRtbD0xO2FsaWduPWNlbnRlcjt2ZXJ0aWNhbEFsaWduPW1pZGRsZTtmb250RmFtaWx5PU1pY3Jvc29mdCBZYUhlaTtmb250U2l6ZT0yODtzcGFjaW5nPTE0O2ZpbGxDb2xvcj0jZmZmZmZmO3N0cm9rZUNvbG9yPSMzMzU1NmY7c3Ryb2tlV2lkdGg9Mjtmb250U3R5bGU9MTtzdHJva2VDb2xvcj1ub25lOyZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSB4PSZxdW90OzYwJnF1b3Q7IHk9JnF1b3Q7MjQmcXVvdDsgd2lkdGg9JnF1b3Q7MTQ4MCZxdW90OyBoZWlnaHQ9JnF1b3Q7NjAmcXVvdDsgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7Y29uZmlnJnF1b3Q7IHZhbHVlPSZxdW90O+mFjee9riAvIOWPkeW4g+acjeWKoSZhbXA7bHQ7YnImYW1wO2d0O+S4jeWPr+WPmOW/q+eFpyDCtyBIYXNoIMK3IOi3r+eUsSZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MjA7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2VhZjJmODtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7JnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IHg9JnF1b3Q7NjAmcXVvdDsgeT0mcXVvdDsxMjUmcXVvdDsgd2lkdGg9JnF1b3Q7NDAwJnF1b3Q7IGhlaWdodD0mcXVvdDs5NSZxdW90OyBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtobWkmcXVvdDsgdmFsdWU9JnF1b3Q7SE1JIC8g57u05oqk5Lya6K+dJmFtcDtsdDticiZhbXA7Z3Q75p2D6ZmQIMK3IOWNoOeUqOeKtuaAgSDCtyDlrqHorqEmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlYWYyZjg7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSB4PSZxdW90OzYwMCZxdW90OyB5PSZxdW90OzEyNSZxdW90OyB3aWR0aD0mcXVvdDs0MDAmcXVvdDsgaGVpZ2h0PSZxdW90Ozk1JnF1b3Q7IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O3J1biZxdW90OyB2YWx1ZT0mcXVvdDtSdW4gLyBSZWNpcGUgLyBPcGVuVEFQJmFtcDtsdDticiZhbXA7Z3Q7MTIwIERVVENvbnRleHQgwrcg6YC76L6R6IO95YqbJnF1b3Q7IHN0eWxlPSZxdW90O3JvdW5kZWQ9MDt3aGl0ZVNwYWNlPXdyYXA7aHRtbD0xO2FsaWduPWNlbnRlcjt2ZXJ0aWNhbEFsaWduPW1pZGRsZTtmb250RmFtaWx5PU1pY3Jvc29mdCBZYUhlaTtmb250U2l6ZT0yMDtzcGFjaW5nPTE0O2ZpbGxDb2xvcj0jZWFmMmY4O3N0cm9rZUNvbG9yPSMzMzU1NmY7c3Ryb2tlV2lkdGg9MjsmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgeD0mcXVvdDsxMTQwJnF1b3Q7IHk9JnF1b3Q7MTI1JnF1b3Q7IHdpZHRoPSZxdW90OzQwMCZxdW90OyBoZWlnaHQ9JnF1b3Q7OTUmcXVvdDsgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZmFjYWRlJnF1b3Q7IHZhbHVlPSZxdW90O0RldmljZVNlcnZpY2UgKyBSZXNvdXJjZVJvdXRlciZhbXA7bHQ7YnImYW1wO2d0O+aMieW/q+eFp+WumuS9jei1hOa6kCAvIOWuv+S4uyZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MjA7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2VhZjJmODtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7JnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IHg9JnF1b3Q7NjAwJnF1b3Q7IHk9JnF1b3Q7MjkwJnF1b3Q7IHdpZHRoPSZxdW90OzQwMCZxdW90OyBoZWlnaHQ9JnF1b3Q7MTAwJnF1b3Q7IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2UxJnF1b3Q7IHN0eWxlPSZxdW90O2VkZ2VTdHlsZT1vcnRob2dvbmFsRWRnZVN0eWxlO3JvdW5kZWQ9MDtodG1sPTE7ZW5kQXJyb3c9YmxvY2s7c3Ryb2tlV2lkdGg9MjtzdHJva2VDb2xvcj0jODc5NmE1O2Rhc2hlZD0xO2V4aXRYPTAuNTtleGl0WT0xO2VudHJ5WD0wLjI7ZW50cnlZPTA7JnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHNvdXJjZT0mcXVvdDtjb25maWcmcXVvdDsgdGFyZ2V0PSZxdW90O2ZhY2FkZSZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgcmVsYXRpdmU9JnF1b3Q7MSZxdW90OyBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyZndDsmIzEwOyAgICAgICAgICAgICZsdDtBcnJheSBhcz0mcXVvdDtwb2ludHMmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgICAgICZsdDtteFBvaW50IHg9JnF1b3Q7MjYwJnF1b3Q7IHk9JnF1b3Q7MjU1JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICAgICAgICZsdDtteFBvaW50IHg9JnF1b3Q7NjgwJnF1b3Q7IHk9JnF1b3Q7MjU1JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICAgICAmbHQ7L0FycmF5Jmd0OyYjMTA7ICAgICAgICAgICZsdDsvbXhHZW9tZXRyeSZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTImcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7ZXhpdFg9MC41O2V4aXRZPTE7ZW50cnlYPTAuNTtlbnRyeVk9MDsmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc291cmNlPSZxdW90O2htaSZxdW90OyB0YXJnZXQ9JnF1b3Q7ZmFjYWRlJnF1b3Q7IGVkZ2U9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSByZWxhdGl2ZT0mcXVvdDsxJnF1b3Q7IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICAgJmx0O0FycmF5IGFzPSZxdW90O3BvaW50cyZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAgICZsdDsvbXhHZW9tZXRyeSZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTMmcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7ZXhpdFg9MC41O2V4aXRZPTE7ZW50cnlYPTAuODtlbnRyeVk9MDsmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc291cmNlPSZxdW90O3J1biZxdW90OyB0YXJnZXQ9JnF1b3Q7ZmFjYWRlJnF1b3Q7IGVkZ2U9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSByZWxhdGl2ZT0mcXVvdDsxJnF1b3Q7IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICAgJmx0O0FycmF5IGFzPSZxdW90O3BvaW50cyZxdW90OyZndDsmIzEwOyAgICAgICAgICAgICAgJmx0O214UG9pbnQgeD0mcXVvdDsxMzQwJnF1b3Q7IHk9JnF1b3Q7MjU1JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICAgICAgICZsdDtteFBvaW50IHg9JnF1b3Q7OTIwJnF1b3Q7IHk9JnF1b3Q7MjU1JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICAgICAmbHQ7L0FycmF5Jmd0OyYjMTA7ICAgICAgICAgICZsdDsvbXhHZW9tZXRyeSZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7bG9jYWwmcXVvdDsgdmFsdWU9JnF1b3Q7TG9jYWxFeGVjdXRvciAvIExlYXNlU3RvcmUmYW1wO2x0O2JyJmFtcDtndDvmnKzmnLogYXJiLmRiIMK3IOi/nuaOpeWuiOWNqyDCtyBTZXNzaW9uR2F0ZSZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MjA7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2VhZjJmODtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7JnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IHg9JnF1b3Q7MTUwJnF1b3Q7IHk9JnF1b3Q7NDcwJnF1b3Q7IHdpZHRoPSZxdW90OzU0MCZxdW90OyBoZWlnaHQ9JnF1b3Q7MTEwJnF1b3Q7IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2Jyb2tlciZxdW90OyB2YWx1ZT0mcXVvdDtCcm9rZXJDbGllbnQg4oaSIERldmljZUJyb2tlciZhbXA7bHQ7YnImYW1wO2d0O+acrOWfnyBMZWFzZSAvIFRhc2sgLyBRdWV1ZSAvIE91dGJveCZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MjA7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2U4ZjRlZjtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7JnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IHg9JnF1b3Q7OTEwJnF1b3Q7IHk9JnF1b3Q7NDcwJnF1b3Q7IHdpZHRoPSZxdW90OzU0MCZxdW90OyBoZWlnaHQ9JnF1b3Q7MTEwJnF1b3Q7IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2U0JnF1b3Q7IHN0eWxlPSZxdW90O2VkZ2VTdHlsZT1vcnRob2dvbmFsRWRnZVN0eWxlO3JvdW5kZWQ9MDtodG1sPTE7ZW5kQXJyb3c9YmxvY2s7c3Ryb2tlV2lkdGg9MjtzdHJva2VDb2xvcj0jMjg2NDk0OyZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyBzb3VyY2U9JnF1b3Q7ZmFjYWRlJnF1b3Q7IHRhcmdldD0mcXVvdDtsb2NhbCZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgcmVsYXRpdmU9JnF1b3Q7MSZxdW90OyBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtlNSZxdW90OyBzdHlsZT0mcXVvdDtlZGdlU3R5bGU9b3J0aG9nb25hbEVkZ2VTdHlsZTtyb3VuZGVkPTA7aHRtbD0xO2VuZEFycm93PWJsb2NrO3N0cm9rZVdpZHRoPTI7c3Ryb2tlQ29sb3I9IzI4NjQ5NDsmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc291cmNlPSZxdW90O2ZhY2FkZSZxdW90OyB0YXJnZXQ9JnF1b3Q7YnJva2VyJnF1b3Q7IGVkZ2U9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSByZWxhdGl2ZT0mcXVvdDsxJnF1b3Q7IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2xvY2FsaW8mcXVvdDsgdmFsdWU9JnF1b3Q75ZSv5LiAIFdvcmtlciDlhoXnmoQgRGV2aWNlTWFuYWdlciAvIERyaXZlciZhbXA7bHQ7YnImYW1wO2d0O+WbuuWumuW9kuWxnueahOeLrOeriyBUQ1Ag5Lya6K+dJnF1b3Q7IHN0eWxlPSZxdW90O3JvdW5kZWQ9MDt3aGl0ZVNwYWNlPXdyYXA7aHRtbD0xO2FsaWduPWNlbnRlcjt2ZXJ0aWNhbEFsaWduPW1pZGRsZTtmb250RmFtaWx5PU1pY3Jvc29mdCBZYUhlaTtmb250U2l6ZT0yMDtzcGFjaW5nPTE0O2ZpbGxDb2xvcj0jZWFmMmY4O3N0cm9rZUNvbG9yPSMzMzU1NmY7c3Ryb2tlV2lkdGg9MjsmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgeD0mcXVvdDsxNTAmcXVvdDsgeT0mcXVvdDs2NzAmcXVvdDsgd2lkdGg9JnF1b3Q7NTQwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMTAmcXVvdDsgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7YnJva2VyaW8mcXVvdDsgdmFsdWU9JnF1b3Q7QnJva2VyIOWGheeahCBEZXZpY2VNYW5hZ2VyIC8gRHJpdmVyJmFtcDtsdDticiZhbXA7Z3Q75YWx5LqrIFBTVSAvIENBTiAvIFJTNDg1IC8gUExDJnF1b3Q7IHN0eWxlPSZxdW90O3JvdW5kZWQ9MDt3aGl0ZVNwYWNlPXdyYXA7aHRtbD0xO2FsaWduPWNlbnRlcjt2ZXJ0aWNhbEFsaWduPW1pZGRsZTtmb250RmFtaWx5PU1pY3Jvc29mdCBZYUhlaTtmb250U2l6ZT0yMDtzcGFjaW5nPTE0O2ZpbGxDb2xvcj0jZThmNGVmO3N0cm9rZUNvbG9yPSMzMzU1NmY7c3Ryb2tlV2lkdGg9MjsmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgeD0mcXVvdDs5MTAmcXVvdDsgeT0mcXVvdDs2NzAmcXVvdDsgd2lkdGg9JnF1b3Q7NTQwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMTAmcXVvdDsgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTYmcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7JnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHNvdXJjZT0mcXVvdDtsb2NhbCZxdW90OyB0YXJnZXQ9JnF1b3Q7bG9jYWxpbyZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgcmVsYXRpdmU9JnF1b3Q7MSZxdW90OyBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtlNyZxdW90OyBzdHlsZT0mcXVvdDtlZGdlU3R5bGU9b3J0aG9nb25hbEVkZ2VTdHlsZTtyb3VuZGVkPTA7aHRtbD0xO2VuZEFycm93PWJsb2NrO3N0cm9rZVdpZHRoPTI7c3Ryb2tlQ29sb3I9IzI4NjQ5NDsmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc291cmNlPSZxdW90O2Jyb2tlciZxdW90OyB0YXJnZXQ9JnF1b3Q7YnJva2VyaW8mcXVvdDsgZWRnZT0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IHJlbGF0aXZlPSZxdW90OzEmcXVvdDsgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7bGVnZW5kJnF1b3Q7IHZhbHVlPSZxdW90O+Wunue6v++8muiwg+eUqCAvIEkvTyDot6/lvoTjgIDjgIDngbDoibLomZrnur/vvJrphY3nva7kvp3otZbjgIDjgIBUVEwg5Yiw5pyfIOKGkiDpmpTnprvmoLjmn6XvvJvov57mjqXnoa7orqTpgIDlh7rlkI7miY3kuqTmjqUmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTE4O3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNmZmZmZmY7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPW5vbmU7JnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IHg9JnF1b3Q7NjAmcXVvdDsgeT0mcXVvdDs4MTUmcXVvdDsgd2lkdGg9JnF1b3Q7MTQ4MCZxdW90OyBoZWlnaHQ9JnF1b3Q7NTUmcXVvdDsgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAmbHQ7L3Jvb3QmZ3Q7JiMxMDsgICAgJmx0Oy9teEdyYXBoTW9kZWwmZ3Q7JiMxMDsgICZsdDsvZGlhZ3JhbSZndDsmIzEwOyAgJmx0O2RpYWdyYW0gbmFtZT0mcXVvdDtoYW5kb3ZlciZxdW90OyBpZD0mcXVvdDtoYW5kb3ZlciZxdW90OyZndDsmIzEwOyAgICAmbHQ7bXhHcmFwaE1vZGVsIGR4PSZxdW90OzE2MDAmcXVvdDsgZHk9JnF1b3Q7OTAwJnF1b3Q7IGdyaWQ9JnF1b3Q7MSZxdW90OyBncmlkU2l6ZT0mcXVvdDsxMCZxdW90OyBwYWdlPSZxdW90OzEmcXVvdDsgcGFnZVNjYWxlPSZxdW90OzEmcXVvdDsgcGFnZVdpZHRoPSZxdW90OzE2MDAmcXVvdDsgcGFnZUhlaWdodD0mcXVvdDs5MDAmcXVvdDsgYmFja2dyb3VuZD0mcXVvdDsjZmZmZmZmJnF1b3Q7Jmd0OyYjMTA7ICAgICAgJmx0O3Jvb3QmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7MCZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzAmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDt0aXRsZSZxdW90OyB2YWx1ZT0mcXVvdDvotYTmupDkuqTmjqXvvJrlhYjmjpLnqbrjgIHpmpTnprvkuI7moLjmn6XvvIzlho3lhYHorrjmlrAgb3duZXLvvIjnm67moIforr7orqHvvIkmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTI4O3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNmZmZmZmY7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yO2ZvbnRTdHlsZT0xO3N0cm9rZUNvbG9yPW5vbmU7JnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHg9JnF1b3Q7NjAmcXVvdDsgeT0mcXVvdDsyNCZxdW90OyB3aWR0aD0mcXVvdDsxNDgwJnF1b3Q7IGhlaWdodD0mcXVvdDs2MCZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtmcmVlJnF1b3Q7IHZhbHVlPSZxdW90O0ZyZWUgLyBSZWFkeSZhbXA7bHQ7YnImYW1wO2d0O+WFgeiuuOeUs+ivtyZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MjA7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2VhZjJmODtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7JnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHg9JnF1b3Q7ODAmcXVvdDsgeT0mcXVvdDsxNjAmcXVvdDsgd2lkdGg9JnF1b3Q7MzMwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMDUmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7YWN0aXZlJnF1b3Q7IHZhbHVlPSZxdW90O0FjdGl2ZSZhbXA7bHQ7YnImYW1wO2d0O0dyYW50ICsg5ZGo5pyf57ut56efJnF1b3Q7IHN0eWxlPSZxdW90O3JvdW5kZWQ9MDt3aGl0ZVNwYWNlPXdyYXA7aHRtbD0xO2FsaWduPWNlbnRlcjt2ZXJ0aWNhbEFsaWduPW1pZGRsZTtmb250RmFtaWx5PU1pY3Jvc29mdCBZYUhlaTtmb250U2l6ZT0yMDtzcGFjaW5nPTE0O2ZpbGxDb2xvcj0jZWFmMmY4O3N0cm9rZUNvbG9yPSMzMzU1NmY7c3Ryb2tlV2lkdGg9MjsmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgeD0mcXVvdDs2MzUmcXVvdDsgeT0mcXVvdDsxNjAmcXVvdDsgd2lkdGg9JnF1b3Q7MzMwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMDUmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZHJhaW4mcXVvdDsgdmFsdWU9JnF1b3Q7RHJhaW5pbmcmYW1wO2x0O2JyJmFtcDtndDvlgZzmraLmlrDlhpkgLyDmjpLnqbrniYfmrrUmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNmZmYyZDk7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzExOTAmcXVvdDsgeT0mcXVvdDsxNjAmcXVvdDsgd2lkdGg9JnF1b3Q7MzMwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMDUmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTEmcXVvdDsgc291cmNlPSZxdW90O2ZyZWUmcXVvdDsgdGFyZ2V0PSZxdW90O2FjdGl2ZSZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHJlbGF0aXZlPSZxdW90OzEmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTImcXVvdDsgc291cmNlPSZxdW90O2FjdGl2ZSZxdW90OyB0YXJnZXQ9JnF1b3Q7ZHJhaW4mcXVvdDsgZWRnZT0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHN0eWxlPSZxdW90O2VkZ2VTdHlsZT1vcnRob2dvbmFsRWRnZVN0eWxlO3JvdW5kZWQ9MDtodG1sPTE7ZW5kQXJyb3c9YmxvY2s7c3Ryb2tlV2lkdGg9MjtzdHJva2VDb2xvcj0jMjg2NDk0OyZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyByZWxhdGl2ZT0mcXVvdDsxJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2V4cGlyZSZxdW90OyB2YWx1ZT0mcXVvdDvnp5/nuqYgLyDlv4Pot7PlvILluLgmYW1wO2x0O2JyJmFtcDtndDvpmLvmlq3lkI7nu63lhpnlhaUmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNmZmYyZDk7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzYzNSZxdW90OyB5PSZxdW90OzM4NSZxdW90OyB3aWR0aD0mcXVvdDszMzAmcXVvdDsgaGVpZ2h0PSZxdW90OzEwNSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDt2ZXJpZnkmcXVvdDsgdmFsdWU9JnF1b3Q75a6J5YWo5Lqk5o6l5qOA5p+lJmFtcDtsdDticiZhbXA7Z3Q76K+75ZueIMK3IOi/nuaOpemalOemuyDCtyDogZTplIEmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlOGY0ZWY7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzExOTAmcXVvdDsgeT0mcXVvdDszODUmcXVvdDsgd2lkdGg9JnF1b3Q7MzMwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMDUmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTMmcXVvdDsgc291cmNlPSZxdW90O2FjdGl2ZSZxdW90OyB0YXJnZXQ9JnF1b3Q7ZXhwaXJlJnF1b3Q7IGVkZ2U9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyBzdHlsZT0mcXVvdDtlZGdlU3R5bGU9b3J0aG9nb25hbEVkZ2VTdHlsZTtyb3VuZGVkPTA7aHRtbD0xO2VuZEFycm93PWJsb2NrO3N0cm9rZVdpZHRoPTI7c3Ryb2tlQ29sb3I9IzI4NjQ5NDsmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgcmVsYXRpdmU9JnF1b3Q7MSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtlNCZxdW90OyBzb3VyY2U9JnF1b3Q7ZHJhaW4mcXVvdDsgdGFyZ2V0PSZxdW90O3ZlcmlmeSZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHJlbGF0aXZlPSZxdW90OzEmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7cmVjb3ZlcnkmcXVvdDsgdmFsdWU9JnF1b3Q7UmVjb3ZlcnlSZXF1aXJlZCZhbXA7bHQ7YnImYW1wO2d0O+iuvuWkh+eKtuaAgeacquefpSAvIOemgeatoumHjeaOiCZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MjA7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2ZkZWNlZDtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7JnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHg9JnF1b3Q7NjM1JnF1b3Q7IHk9JnF1b3Q7NjEwJnF1b3Q7IHdpZHRoPSZxdW90OzMzMCZxdW90OyBoZWlnaHQ9JnF1b3Q7MTA1JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O25ldyZxdW90OyB2YWx1ZT0mcXVvdDvmo4Dmn6XlkIjmoLwg4oaSIEZyZWUmYW1wO2x0O2JyJmFtcDtndDvph43mlrDnlLPor7fmlrAgR3JhbnQmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlOGY0ZWY7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzExOTAmcXVvdDsgeT0mcXVvdDs2MTAmcXVvdDsgd2lkdGg9JnF1b3Q7MzMwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMDUmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTUmcXVvdDsgc291cmNlPSZxdW90O2V4cGlyZSZxdW90OyB0YXJnZXQ9JnF1b3Q7cmVjb3ZlcnkmcXVvdDsgZWRnZT0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHN0eWxlPSZxdW90O2VkZ2VTdHlsZT1vcnRob2dvbmFsRWRnZVN0eWxlO3JvdW5kZWQ9MDtodG1sPTE7ZW5kQXJyb3c9YmxvY2s7c3Ryb2tlV2lkdGg9MjtzdHJva2VDb2xvcj0jMjg2NDk0OyZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyByZWxhdGl2ZT0mcXVvdDsxJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2U2JnF1b3Q7IHNvdXJjZT0mcXVvdDt2ZXJpZnkmcXVvdDsgdGFyZ2V0PSZxdW90O25ldyZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHJlbGF0aXZlPSZxdW90OzEmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTcmcXVvdDsgc291cmNlPSZxdW90O3JlY292ZXJ5JnF1b3Q7IHRhcmdldD0mcXVvdDt2ZXJpZnkmcXVvdDsgZWRnZT0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHN0eWxlPSZxdW90O2VkZ2VTdHlsZT1vcnRob2dvbmFsRWRnZVN0eWxlO3JvdW5kZWQ9MDtodG1sPTE7ZW5kQXJyb3c9YmxvY2s7c3Ryb2tlV2lkdGg9MjtzdHJva2VDb2xvcj0jMjg2NDk0O2V4aXRYPTE7ZXhpdFk9MC41O2VudHJ5WD0wO2VudHJ5WT0wLjU7JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHJlbGF0aXZlPSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgICAmbHQ7QXJyYXkgYXM9JnF1b3Q7cG9pbnRzJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICAgICAmbHQ7bXhQb2ludCB4PSZxdW90OzEwODAmcXVvdDsgeT0mcXVvdDs2NjIuNSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAgICAgICAmbHQ7bXhQb2ludCB4PSZxdW90OzEwODAmcXVvdDsgeT0mcXVvdDs0MzcuNSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAgICAgJmx0Oy9BcnJheSZndDsmIzEwOyAgICAgICAgICAmbHQ7L214R2VvbWV0cnkmZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2xpbWl0cyZxdW90OyB2YWx1ZT0mcXVvdDvlvILluLjot6/lvoTor7TmmI4mYW1wO2x0O2JyJmFtcDtndDsmYW1wO2x0O2JyJmFtcDtndDtEcmFpbmluZyDotoXml7YgLyDmo4Dmn6XlpLHotKUmYW1wO2x0O2JyJmFtcDtndDvihpIgUmVjb3ZlcnlSZXF1aXJlZCZhbXA7bHQ7YnImYW1wO2d0OyZhbXA7bHQ7YnImYW1wO2d0O0Jyb2tlciDph43lkK/vvJplcG9jaCArIDEmYW1wO2x0O2JyJmFtcDtndDvml6cgR3JhbnQg5YWo6YOo5aSx5pWIJmFtcDtsdDticiZhbXA7Z3Q7JmFtcDtsdDticiZhbXA7Z3Q7TG9jYWwg5pen5a6I5Y2r5pyq6YCA5Ye6JmFtcDtsdDticiZhbXA7Z3Q74oaSIOS/neaMgemalOemu++8jOS4jeaMiSBUVEwg5oqi5Y2gJnF1b3Q7IHN0eWxlPSZxdW90O3JvdW5kZWQ9MDt3aGl0ZVNwYWNlPXdyYXA7aHRtbD0xO2FsaWduPWNlbnRlcjt2ZXJ0aWNhbEFsaWduPW1pZGRsZTtmb250RmFtaWx5PU1pY3Jvc29mdCBZYUhlaTtmb250U2l6ZT0yMDtzcGFjaW5nPTE0O2ZpbGxDb2xvcj0jZmZmZmZmO3N0cm9rZUNvbG9yPSMzMzU1NmY7c3Ryb2tlV2lkdGg9MjsmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgeD0mcXVvdDs4MCZxdW90OyB5PSZxdW90OzM4NSZxdW90OyB3aWR0aD0mcXVvdDszMzAmcXVvdDsgaGVpZ2h0PSZxdW90OzMzMCZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtsZWdlbmQmcXVvdDsgdmFsdWU9JnF1b3Q75a6e57q/77ya5q2j5bi455Sz6K+35oiW5oGi5aSN5o6o6L+b44CA44CA5byC5bi45Yiw5pyf5LiN55u05o6l6L2sIEZyZWXjgIDjgIDmnKrnoa7orqTnmoTlt7Llj5Hlkb3ku6Qg4oaSIFVua25vd24gLyDmgaLlpI3mo4Dmn6UmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTE4O3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNmZmZmZmY7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPW5vbmU7JnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHg9JnF1b3Q7NjAmcXVvdDsgeT0mcXVvdDs4MTAmcXVvdDsgd2lkdGg9JnF1b3Q7MTQ4MCZxdW90OyBoZWlnaHQ9JnF1b3Q7NTUmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAmbHQ7L3Jvb3QmZ3Q7JiMxMDsgICAgJmx0Oy9teEdyYXBoTW9kZWwmZ3Q7JiMxMDsgICZsdDsvZGlhZ3JhbSZndDsmIzEwOyAgJmx0O2RpYWdyYW0gbmFtZT0mcXVvdDtkZXBsb3ltZW50MTIwJnF1b3Q7IGlkPSZxdW90O2RlcGxveW1lbnQxMjAmcXVvdDsmZ3Q7JiMxMDsgICAgJmx0O214R3JhcGhNb2RlbCBkeD0mcXVvdDsxNjAwJnF1b3Q7IGR5PSZxdW90OzkwMCZxdW90OyBncmlkPSZxdW90OzEmcXVvdDsgZ3JpZFNpemU9JnF1b3Q7MTAmcXVvdDsgcGFnZT0mcXVvdDsxJnF1b3Q7IHBhZ2VTY2FsZT0mcXVvdDsxJnF1b3Q7IHBhZ2VXaWR0aD0mcXVvdDsxNjAwJnF1b3Q7IHBhZ2VIZWlnaHQ9JnF1b3Q7OTAwJnF1b3Q7IGJhY2tncm91bmQ9JnF1b3Q7I2ZmZmZmZiZxdW90OyZndDsmIzEwOyAgICAgICZsdDtyb290Jmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90OzAmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDswJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7dGl0bGUmcXVvdDsgdmFsdWU9JnF1b3Q7MTIwIOeptOS9je+8mjYgV29ya2VyICsgMyBCcm9rZXIg5Z+f77yIMTXDlzggUFNVIOWfuue6vyAvIOW7uuiuru+8iSZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9Mjg7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2ZmZmZmZjtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7Zm9udFN0eWxlPTE7c3Ryb2tlQ29sb3I9bm9uZTsmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgeD0mcXVvdDs2MCZxdW90OyB5PSZxdW90OzI0JnF1b3Q7IHdpZHRoPSZxdW90OzE0ODAmcXVvdDsgaGVpZ2h0PSZxdW90OzYwJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2htaSZxdW90OyB2YWx1ZT0mcXVvdDtJUEMtMDHvvJpITUkgLyBSdW5TZXJ2aWNlIC8gU3VwZXJ2aXNvciZhbXA7bHQ7YnImYW1wO2d0O+mFjee9ruW/q+eFp+S4jue7k+aenOe0ouW8le+8m1Jlc3VsdFdyaXRlciDni6znq4vokL3nm5gmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlYWYyZjg7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzUwMCZxdW90OyB5PSZxdW90OzExMCZxdW90OyB3aWR0aD0mcXVvdDs2MDAmcXVvdDsgaGVpZ2h0PSZxdW90Ozk1JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O3cxJnF1b3Q7IHZhbHVlPSZxdW90O1cwMSArIFcwMiZhbXA7bHQ7YnImYW1wO2d0O1MwMDHigJNTMDQwIMK3IDLDlzIwIERVVENvbnRleHQmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlYWYyZjg7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzYwJnF1b3Q7IHk9JnF1b3Q7MzE1JnF1b3Q7IHdpZHRoPSZxdW90OzQwMCZxdW90OyBoZWlnaHQ9JnF1b3Q7MTAwJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2IxJnF1b3Q7IHZhbHVlPSZxdW90O0Jyb2tlciBCMDEmYW1wO2x0O2JyJmFtcDtndDvllK/kuIDlrr/kuLsgwrcg5pys5Z+fIERCIC8g6Zif5YiXJnF1b3Q7IHN0eWxlPSZxdW90O3JvdW5kZWQ9MDt3aGl0ZVNwYWNlPXdyYXA7aHRtbD0xO2FsaWduPWNlbnRlcjt2ZXJ0aWNhbEFsaWduPW1pZGRsZTtmb250RmFtaWx5PU1pY3Jvc29mdCBZYUhlaTtmb250U2l6ZT0yMDtzcGFjaW5nPTE0O2ZpbGxDb2xvcj0jZThmNGVmO3N0cm9rZUNvbG9yPSMzMzU1NmY7c3Ryb2tlV2lkdGg9MjsmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgeD0mcXVvdDs2MCZxdW90OyB5PSZxdW90OzUyMCZxdW90OyB3aWR0aD0mcXVvdDs0MDAmcXVvdDsgaGVpZ2h0PSZxdW90OzEwMCZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtwMSZxdW90OyB2YWx1ZT0mcXVvdDtQU1UwMeKAk1BTVTA1JmFtcDtsdDticiZhbXA7Z3Q7NSDlj7Agw5cgOCDpgJrpgZMgPSA0MCDnqbTkvY0mcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlYWYyZjg7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzYwJnF1b3Q7IHk9JnF1b3Q7NzI1JnF1b3Q7IHdpZHRoPSZxdW90OzQwMCZxdW90OyBoZWlnaHQ9JnF1b3Q7MTAwJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2UxYSZxdW90OyBzb3VyY2U9JnF1b3Q7aG1pJnF1b3Q7IHRhcmdldD0mcXVvdDt3MSZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHJlbGF0aXZlPSZxdW90OzEmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTFiJnF1b3Q7IHNvdXJjZT0mcXVvdDt3MSZxdW90OyB0YXJnZXQ9JnF1b3Q7YjEmcXVvdDsgZWRnZT0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHN0eWxlPSZxdW90O2VkZ2VTdHlsZT1vcnRob2dvbmFsRWRnZVN0eWxlO3JvdW5kZWQ9MDtodG1sPTE7ZW5kQXJyb3c9YmxvY2s7c3Ryb2tlV2lkdGg9MjtzdHJva2VDb2xvcj0jMjg2NDk0OyZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyByZWxhdGl2ZT0mcXVvdDsxJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2UxYyZxdW90OyBzb3VyY2U9JnF1b3Q7YjEmcXVvdDsgdGFyZ2V0PSZxdW90O3AxJnF1b3Q7IGVkZ2U9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyBzdHlsZT0mcXVvdDtlZGdlU3R5bGU9b3J0aG9nb25hbEVkZ2VTdHlsZTtyb3VuZGVkPTA7aHRtbD0xO2VuZEFycm93PWJsb2NrO3N0cm9rZVdpZHRoPTI7c3Ryb2tlQ29sb3I9IzI4NjQ5NDsmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgcmVsYXRpdmU9JnF1b3Q7MSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDt3MiZxdW90OyB2YWx1ZT0mcXVvdDtXMDMgKyBXMDQmYW1wO2x0O2JyJmFtcDtndDtTMDQx4oCTUzA4MCDCtyAyw5cyMCBEVVRDb250ZXh0JnF1b3Q7IHN0eWxlPSZxdW90O3JvdW5kZWQ9MDt3aGl0ZVNwYWNlPXdyYXA7aHRtbD0xO2FsaWduPWNlbnRlcjt2ZXJ0aWNhbEFsaWduPW1pZGRsZTtmb250RmFtaWx5PU1pY3Jvc29mdCBZYUhlaTtmb250U2l6ZT0yMDtzcGFjaW5nPTE0O2ZpbGxDb2xvcj0jZWFmMmY4O3N0cm9rZUNvbG9yPSMzMzU1NmY7c3Ryb2tlV2lkdGg9MjsmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgeD0mcXVvdDs2MDAmcXVvdDsgeT0mcXVvdDszMTUmcXVvdDsgd2lkdGg9JnF1b3Q7NDAwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMDAmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7YjImcXVvdDsgdmFsdWU9JnF1b3Q7QnJva2VyIEIwMiZhbXA7bHQ7YnImYW1wO2d0O+WUr+S4gOWuv+S4uyDCtyDmnKzln58gREIgLyDpmJ/liJcmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlOGY0ZWY7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzYwMCZxdW90OyB5PSZxdW90OzUyMCZxdW90OyB3aWR0aD0mcXVvdDs0MDAmcXVvdDsgaGVpZ2h0PSZxdW90OzEwMCZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtwMiZxdW90OyB2YWx1ZT0mcXVvdDtQU1UwNuKAk1BTVTEwJmFtcDtsdDticiZhbXA7Z3Q7NSDlj7Agw5cgOCDpgJrpgZMgPSA0MCDnqbTkvY0mcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlYWYyZjg7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzYwMCZxdW90OyB5PSZxdW90OzcyNSZxdW90OyB3aWR0aD0mcXVvdDs0MDAmcXVvdDsgaGVpZ2h0PSZxdW90OzEwMCZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtlMmEmcXVvdDsgc291cmNlPSZxdW90O2htaSZxdW90OyB0YXJnZXQ9JnF1b3Q7dzImcXVvdDsgZWRnZT0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHN0eWxlPSZxdW90O2VkZ2VTdHlsZT1vcnRob2dvbmFsRWRnZVN0eWxlO3JvdW5kZWQ9MDtodG1sPTE7ZW5kQXJyb3c9YmxvY2s7c3Ryb2tlV2lkdGg9MjtzdHJva2VDb2xvcj0jMjg2NDk0OyZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyByZWxhdGl2ZT0mcXVvdDsxJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2UyYiZxdW90OyBzb3VyY2U9JnF1b3Q7dzImcXVvdDsgdGFyZ2V0PSZxdW90O2IyJnF1b3Q7IGVkZ2U9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyBzdHlsZT0mcXVvdDtlZGdlU3R5bGU9b3J0aG9nb25hbEVkZ2VTdHlsZTtyb3VuZGVkPTA7aHRtbD0xO2VuZEFycm93PWJsb2NrO3N0cm9rZVdpZHRoPTI7c3Ryb2tlQ29sb3I9IzI4NjQ5NDsmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgcmVsYXRpdmU9JnF1b3Q7MSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtlMmMmcXVvdDsgc291cmNlPSZxdW90O2IyJnF1b3Q7IHRhcmdldD0mcXVvdDtwMiZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHJlbGF0aXZlPSZxdW90OzEmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7dzMmcXVvdDsgdmFsdWU9JnF1b3Q7VzA1ICsgVzA2JmFtcDtsdDticiZhbXA7Z3Q7UzA4MeKAk1MxMjAgwrcgMsOXMjAgRFVUQ29udGV4dCZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MjA7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2VhZjJmODtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7JnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHg9JnF1b3Q7MTE0MCZxdW90OyB5PSZxdW90OzMxNSZxdW90OyB3aWR0aD0mcXVvdDs0MDAmcXVvdDsgaGVpZ2h0PSZxdW90OzEwMCZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtiMyZxdW90OyB2YWx1ZT0mcXVvdDtCcm9rZXIgQjAzJmFtcDtsdDticiZhbXA7Z3Q75ZSv5LiA5a6/5Li7IMK3IOacrOWfnyBEQiAvIOmYn+WIlyZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MjA7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2U4ZjRlZjtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7JnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHg9JnF1b3Q7MTE0MCZxdW90OyB5PSZxdW90OzUyMCZxdW90OyB3aWR0aD0mcXVvdDs0MDAmcXVvdDsgaGVpZ2h0PSZxdW90OzEwMCZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtwMyZxdW90OyB2YWx1ZT0mcXVvdDtQU1UxMeKAk1BTVTE1JmFtcDtsdDticiZhbXA7Z3Q7NSDlj7Agw5cgOCDpgJrpgZMgPSA0MCDnqbTkvY0mcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlYWYyZjg7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzExNDAmcXVvdDsgeT0mcXVvdDs3MjUmcXVvdDsgd2lkdGg9JnF1b3Q7NDAwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMDAmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTNhJnF1b3Q7IHNvdXJjZT0mcXVvdDtobWkmcXVvdDsgdGFyZ2V0PSZxdW90O3czJnF1b3Q7IGVkZ2U9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyBzdHlsZT0mcXVvdDtlZGdlU3R5bGU9b3J0aG9nb25hbEVkZ2VTdHlsZTtyb3VuZGVkPTA7aHRtbD0xO2VuZEFycm93PWJsb2NrO3N0cm9rZVdpZHRoPTI7c3Ryb2tlQ29sb3I9IzI4NjQ5NDsmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgcmVsYXRpdmU9JnF1b3Q7MSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtlM2ImcXVvdDsgc291cmNlPSZxdW90O3czJnF1b3Q7IHRhcmdldD0mcXVvdDtiMyZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHJlbGF0aXZlPSZxdW90OzEmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTNjJnF1b3Q7IHNvdXJjZT0mcXVvdDtiMyZxdW90OyB0YXJnZXQ9JnF1b3Q7cDMmcXVvdDsgZWRnZT0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHN0eWxlPSZxdW90O2VkZ2VTdHlsZT1vcnRob2dvbmFsRWRnZVN0eWxlO3JvdW5kZWQ9MDtodG1sPTE7ZW5kQXJyb3c9YmxvY2s7c3Ryb2tlV2lkdGg9MjtzdHJva2VDb2xvcj0jMjg2NDk0OyZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyByZWxhdGl2ZT0mcXVvdDsxJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2xlZ2VuZCZxdW90OyB2YWx1ZT0mcXVvdDtDQU4gLyBQTEMgLyDmuKnnrrHmjInnnJ/lrp7niannkIbkuI4gU0RLIOWfn+WbuuWumuWUr+S4gOWuv+S4u++8iFRCRO+8ie+8m+WFseS6q+iuvuWkh+S4jeWboOWIhiAzIOWfn+iAjOWkjeWItui/nuaOpeOAgiZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MTg7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2ZmZmZmZjtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7c3Ryb2tlQ29sb3I9bm9uZTsmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgeD0mcXVvdDs2MCZxdW90OyB5PSZxdW90Ozg0NSZxdW90OyB3aWR0aD0mcXVvdDsxNDgwJnF1b3Q7IGhlaWdodD0mcXVvdDs0NSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICZsdDsvcm9vdCZndDsmIzEwOyAgICAmbHQ7L214R3JhcGhNb2RlbCZndDsmIzEwOyAgJmx0Oy9kaWFncmFtJmd0OyYjMTA7Jmx0Oy9teGZpbGUmZ3Q7JiMxMDsiPjxkZWZzLz48Zz48ZyBkYXRhLWNlbGwtaWQ9IjAiPjxnIGRhdGEtY2VsbC1pZD0iMSI+PGcgZGF0YS1jZWxsLWlkPSJ0aXRsZSI+PGc+PHJlY3QgeD0iMTIiIHk9IjEyIiB3aWR0aD0iMTQ4MCIgaGVpZ2h0PSI2MCIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSJub25lIiBwb2ludGVyLWV2ZW50cz0iYWxsIiBzdHlsZT0iZmlsbDogbGlnaHQtZGFyayhyZ2IoMjU1LCAyNTUsIDI1NSksIHJnYigxOCwgMTgsIDE4KSk7Ii8+PC9nPjxnPjxnPjxzd2l0Y2g+PGZvcmVpZ25PYmplY3Qgc3R5bGU9Im92ZXJmbG93OiB2aXNpYmxlOyB0ZXh0LWFsaWduOiBsZWZ0OyIgcG9pbnRlci1ldmVudHM9Im5vbmUiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHJlcXVpcmVkRmVhdHVyZXM9Imh0dHA6Ly93d3cudzMub3JnL1RSL1NWRzExL2ZlYXR1cmUjRXh0ZW5zaWJpbGl0eSI+PGRpdiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiB1bnNhZmUgY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IHVuc2FmZSBjZW50ZXI7IHdpZHRoOiAxNDU0cHg7IGhlaWdodDogMXB4OyBwYWRkaW5nLXRvcDogNDJweDsgbWFyZ2luLWxlZnQ6IDI1cHg7Ij48ZGl2IHN0eWxlPSJib3gtc2l6aW5nOiBib3JkZXItYm94OyBmb250LXNpemU6IDA7IHRleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICMwMDAwMDA7ICI+PGRpdiBzdHlsZT0iZGlzcGxheTogaW5saW5lLWJsb2NrOyBmb250LXNpemU6IDI4cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtNaWNyb3NvZnQgWWFIZWkmcXVvdDs7IGNvbG9yOiBsaWdodC1kYXJrKCMwMDAwMDAsICNmZmZmZmYpOyBsaW5lLWhlaWdodDogMS4yOyBwb2ludGVyLWV2ZW50czogYWxsOyBmb250LXdlaWdodDogYm9sZDsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd29yZC13cmFwOiBub3JtYWw7ICI+6LWE5rqQ5Lqk5o6l77ya5YWI5o6S56m644CB6ZqU56a75LiO5qC45p+l77yM5YaN5YWB6K645pawIG93bmVy77yI55uu5qCH6K6+6K6h77yJPC9kaXY+PC9kaXY+PC9kaXY+PC9mb3JlaWduT2JqZWN0PjxpbWFnZSB4PSIyNSIgeT0iMjUuNSIgd2lkdGg9IjE0NTQiIGhlaWdodD0iNDEiIHhsaW5rOmhyZWY9ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFGcmdBQUFDa0NBWUFBQUJpWk9xdkFBQUFBWE5TUjBJQXJzNGM2UUFBSUFCSlJFRlVlRjdzdlFuMFJFVjE3dnRkTmNUaFJSSEhYRFU0Sm9vbU1ibmdFQWRRd1BtOVJGSEVtZVZzQk1lWUY0YzRJa28wR2hXVnhKaGxMcUJHUmVLRUlvZzhuSWNreG9oRFVDTlh2YzRhSEo0K1JYbm4wK3JRTmoxVTdhcHorblQzcjlaaW9meXJkdTM2MWVrNlZYV3F2djNmUklJQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FRQUdCLzFhUWw2d1FnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUJBQzF6d0VFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWtVRUVMZ3V3a1ZtQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRU3VlUVlnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRWlnZ2djRjJFaTh3UWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNDRnp6REVBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRZ1VFVURndWdnWG1TRUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFRdU9ZWmdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFQ2dpZ01CMUVTNHlRd0FDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0NCd3pUTUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnVUVRQWdlc2lYR1NHQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUVFPQ2Fad0FDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VDZ2lBQUMxMFc0eUF3QkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQ0F3RFhQQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdFQVJBUVN1aTNDUkdRSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUNCYTU0QkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFnU0lDQ0Z3WDRTSXpCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNHMHJnMXlYOVFOSjNOOVIvM0lZQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQXFNaWdNRDFxTG9EWnlBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBSUZFNE9LU0xpYnBKMnNpY210SmQ1SDB6NUxPVHhmY1B5bnBwK21mYjZWL3I4azlxb1VBQkdZSVhGTFNBWkorby92bjc5THZGa2k3UmVEL2tIUk5TVGVWOUp1Uy9rclNWM1lMQWEyRndGd0N2eUpwcnpTdmlpRHkzSWQ1VDRRY1pTQ3dtb0RQYS9qMzZYOXVLR2x2U1crVjlMblZSY2tCQVFoQVlLY0pUTTl2cmlEcCtta04rRjVKMzl4cE1qUWVBcHREWURJUCttMUo1MGo2OHVhNFBscFBMeUhwbHBLdUdQRHdBL1JCZ0JwRklBQ0JUU2JnOWZkcGtxN1N6U09mSXVsdkpmMXdreHMwSXQ4dkpjbnZwTzhON0pQZmYvNU81RzhDM3M4a0RVZkE2ek4vbS9rZmtyNGo2ZFRocXFZbUNFQUFBaENBQUFRZ0FBRUlRQUFDMVFTdW5MNHhmYnZhRWdiV1NlRHlhUy9DWjcwM0pYa2Z3MzVIMDg4aytibGQxeG43cU4rVWd3QUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdTMG5nTUQxbG5jd3pZTUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBd0FZUzhMN2xFeVE5VWRMREpiMU8wZ1VEdHNPWHIwK1dkUHZNT24xWjJnZWpmVkQ0bzVKT2tmVDNtV1czTmR0bDB3WHlIMnhyQTJuWEtBaFlmTUpDOUI0bjlrMGUvVGdKWFZ1WVo5ZVR1VHdwQU9IOWtoN1VqY05qL2YxT0Mxbi9RU2RFY2d0SjE1WmtFWVhwZEdRbjZuUnNvUDBVZ2NDMkViQ3d5Rm1TTGgxczJQK1NkRE1FNDRQMDJoWDd2enVSbnVjR3pPWDJYOVQrLzVUMGdJQmZ1MUprY2lIeHR5UmRWZEx2SnhGcnoxczhqN25NSEJCL0p1bVlYUUZFT3lFQUFRZ2tBdDZIc1NqcjVaSVluc2ZMUFNYOWFncGc0M21NeDlRcnJTREdHdUNpZ016UmZLT0pZQ2RSY3VYbG9tdjRCM2EvbjlQTHF4dTBoSCsvMTVEa05ieURDdTR2NlRwVEhyeTJDL0J4UDRLVlZmZUo5MHNjTE1WOFM5UC8xWWxTdnFXMEVQa2hBQUVJYkNnQjd5T2ZLT2tlVS80NzBOUWp1dmZVR1lnamgzdlZnWXNQN1lTWlhpVHA0NUlPa1hSZTJGcDV3WWQxZXkvSHBXSm5kL09PZHlZUjh3K240SDNsRmlreGo0RFhGemZ1dm9YZlJOTHQwbDdYdEJqWC81TysyMzBmZkQvL1pyWEhpTCsxMFVVUWdBQUVJQUFCQ0VBQUFuRUNMNUIwOThMaVl6K0xWZGljcmNqdWRldzlKYjJpT3lmc2M0WkRyMk8zQXVJSUduRjFTZjVOL3BHa2UwazZhUVErNWJyd2YzYnI2amZuWnA2VDcvOU4zMXorcWNJR1JTRUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUN6UWtnY04wY0tRWWhBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFDQlNnSStMRzVSNjRzbE94YWJmcFNrTDFYYXpTMSs4MDRnOTh4MDZUUzN6Q1FmNHJxU0Q0Mjd6M3loMllmR1AxSUtrZndRV0VEQTN6VDJsblJ2U1krVTlOOFg1RU1ZNlJkZ29tS2xZeEVneUJXeVh2U0QrVkFLVkRDa2lBWS9YZ2prRVBCWVppR1E3dzRrbUlQQWRVNnYvQ0pQVkJCdWlFdGowVEVkZ2V2OC9tK1I4M2VTbU5JMUpmMTYwT0Nwa3U3YXZjZC9HQ3hQTVFoQUFBS2JTTUNpLzk2SHVYNmw4Mk5aeTFRMm8ybHhCMkM3ZjRYRlR5YXgzRzlXMktCb0hvSG9mRzlNd3NSZTYxaUkzcUtIRGtibGZ4d3NaMTVRajJrcTdLZm1QU09yY2tYWE03WTdwdWRvVlR2NU93UWdBSUVhQXBNQXU0c0NTL2w3MXVHZFVMUG5RS1I4QXZ0SWVwV2svYWFLV09qNnNRTUZNTDVFdDVid2R5Ri9YNTZYSEtENG55VzlNYTA3M0w4SU1DL3YzMG1BRXU4dDM2WUxvSGpiRkdoMDh1MStVZWxkbjlkWjFOcmkzdzYrZExja3JFWWdsL3l4aEp3UWdBQUVJQUFCQ0VCZ1V3aEU5dDM1ZmpHdTN2WDVWcTlqRDV4eXkwTFhQby9vTlNScC9BUWMzTlZycjZPa253Y1ljdkszckFPNm9HWU9mTFVKQ1lIclRlZ2xmSVFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBSUZpQWdoY0Z5T2pBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlOQWpnZXQybDJUUG1pTUlaeEhJaHlmaDY1LzJXTC8zVEYrU0RxdEhxdGwxUWJxOUpMMGhYWFkydjU5SmVxS2tGM0w0UC9JNFVTWmRRUEFGZW90SzNET0p3cTRDcytzWDZDZDhvdUpZWTdoVVZSTm9ZTkwrQ3lUZFR0THBxeDRZL2c2QmdRbGNUZEw3a21ELzV5UzlTOUpiSlZtVS9SczlpTDRnY0ozZndWRkJPQVN1OHhsdmU4NXJkWmRnM3lQSnYvTm8rczl1WExpVnBFOUVEVkFPQWhDQXdJWVNlSG8zRDNwYXBlK3NCWDhab0VYcFRwSjBwd3F1WTFnZlZyaS9VVVdqYS9oMUN4TmZ0Z3ZjOCtjcFFNZDFLb2dUckt3Q1hpb2FYYys0K0xxZm8vcldZd0VDRUlCQUhnR1BkdzdRdWtxa2QrakF1M25lankrWEJjRmUwQWxIM1dPT2EvNCtlR2lhai9idCtmUithMjVkMzBuZm85L2VDUktmSXVtTHVRVjNJTitmU1hwT1JUdWYwWlgxK201WDBoV1NBUGlESlIwME03Nnd6N2NyVHdIdGhBQUVJQUFCQ0VCZzF3Z2djTDI1UFg1eFNROUlRYXNub3NqVHJmRSsvZk42T0xlenVjVEc1N243MFBzTkRxemxnSnV6eVdld0hBRHJ2UEc1ZmhHUEVMamVnRTdDUlFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUNnbmdNQjFPVE5LUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBdjBRdUZ5NjZIemdFdk45WHlwZkpMQ2QwMktMcVZvMDZCMDVtYmN3ejdMKzg4RnhDeFIvYVF2YlRaUGFFL0N6WkdIaWVaZkJjMnRER0VtS2ltT05RY0RNbDRoT1hDQ01rZnNNT045TEpSM0p4YU1TWk9RZGdJQkZMdDRwYWQ1M1dndS9uQzNwTFpKT2svUXhTUmJCcUVrSVhPZlRpd3JDSVhDZHozamJjMTVDMHZHU0RxdHNxTjlkeDFiYW9EZ0VJQUNCVFNOd294UWtZTTlLeDNkTlRHMFpydWpjWnRybUdOYUhsWS9FeGhTUHJ1SFhMVXpzZFkwRDJ6MjZrdlFRYytwS0YwZGZ2T1kzdis3bmFQUndjUkFDRU5nS0FudW4vYmJyWmJiRyszVGVYMzZLSkFmaEpWMUk0RkpwMy8yb0ZLUjBFWnV2U0xxMXBNLzJERy9aZm10TzFhd2hmcGxTN2RyTWdSeHZ2eUZpWWpuUHgyd2V6N2x1MWdXbnUzc0s4bkxsRlVaNHZpS1VLUU1CQ0VBQUFoQ0FBQVRHVFFDQjYzSDN6eUx2cmlucDFaSnV2c1Q5dm9NMStUekJMYnV6QUZmY1RJUS85OXBubWo2MUp2LzNrZlFxU2Z1dHFOLzdGVS9kZ1BPQ0NGeXY2VUdpV2doQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRU9pWEFBTFgvZkxGT2dRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJSkJId0dLbXZpaitrSXpzdmtqK1VFbXY2K0VROHRNN20wL0w4R0ZlbGwwVy9iRWdzUVdGNzdDRW5mdnRQdDBCODdjRitzMlhnMCtTWkFFQ1VoNkJOM1NpQzQvTHl6cXFYQTlJRnhGcW5mcXhwQU82Uy9RZnFEVzB3ZVdqNGxoakdjczhucHl5UUFRNHQxdk83VVJMYnRHOVc3NmNXNEI4RUJpQXdJdVRBRXh1VlQrUmRGWVN4VDVWMHNjTDM2TUlYT2VTbHFLQ2NFT0k4VVhIOVArVkJGY3NLTFFzUmUzL1QwbCtkNU11Sk9ENTdnbVZRUHorTzBUU2p5cnRVQndDclFuY1FOSU5XeHN0dFBlRGJwNS9wcVFmU3JxNHBDdWtmeGVhMllyc3ZtVC9iVW1lSzJ4RGFoVWs0S01wWU5KM3RnRktaUnVpYzV2cGFyMFg0OEFONTFmNlF2SFZCS0x6c1RFSUU5ZUtJRTdvRUtScTlYT3lMRWZOYjM0TXoxRmQ2eW05YlFSMmZaNDM1djdjMURsb1RvRGRSZHo5YmV1eGtsNlQxaUZqN3ArK2ZmTnYwL3NWejVQMEc1bVZPUUN1eTV5WG1UK1M3ZG1TbmhRcG1PYTV0NUgwM21ENWJTeFd1emJicHU5enZtdjE2K2s3MDUwbDNWSFNLa0hyMldmaTArbDc1ZGUyOFdHaFRSQ0FBQVFnQUFFSVFHQkhDU0J3dlZrZDc3WHNJeVU5ZjBXUXBrbXJISVRlUVhzKzNFTXphL1p3ZTNBblpQTFBKQjBUS2hrdmRQWHVlL0N6SkIyZWFhSnZvZkpNTjFabVErQjZKU0l5UUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBd0NZU1FPQjZFM3NObnlFQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdzRjBFdkUvNWhNREI1NU1sL2JHa3J6YkNjUTFKWjNTQ2ROY04ycnRYRW5rT0Z0L1lZcGVSZEp5aysyYTI0SVdkQU5lVEM0VUFmSG40Z3dVWDVqTmQyZXBzbXlvNGVTMUo3NUYwdFFhOTg4cHVmSGo0RGd0eFJjV3h4aUp3YmRFUmkvbmV0UEpaMk5XeHVSSWJ4WHNpY1Bra1ZMMXYwUDZySkQwUWdlc2d2ZFhGb3BjSkViaGV6WGFYY2x4YjB2dTYrZkZWS3hwdHdkcGJTdnBVaFEyS1FxQVBBdEg1WlV0ZnBvWDdkMzJkT01UN3AyWGY1ZGhxRWVUR1Fzd0kxUDJDOWhVN0ZsN2Y3Wk1EZjBHZVRkMWJxR2p5Mm9wR3g5Z3hDQk5iQk5GN2d3K3FwR2Zoa0Z0SitrU2xuVjB0SGwzUG1OY1lucU5kN1RmYVBaL0Fycy96eHZ4Y2JPSWN0Q1RBN2pMMm41UDBpUFFkOGFkajdxU2VmUE9jMG51VCt3WHNlNTVqVWV3TEFtVlhGYW45anZCSlNmdEwrdWFxaW5iczc3VnJzM1VJbnRWMmtjOHJYRW1TQTBZZTNJbWVINVNDZkYyczFuQWFPenhmSmtFQUFoQ0FBQVFnQUFFSWJBZUJvUVd1ZHpVUW1JUG4rTHQ1elZyeU4xTnc2dEsxN0RscFhYQnU0MGUyWmcrM3NTdGhjME91OXk0bDZVaEpSMldLazA4M3FxOCtESU9iVXhDQjY1WTBzUVVCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUtqSVlEQTlXaTZBa2NnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlMQ3pCQTdweEhaZUp5bHlRZlM3a3U3VFhhaCtXK1ZoZHNPUENzbTQ3SWNrM1Y3U2VUdldpMUZoZ0k5MWduMzNsUFR2bWJ3UXRNZ0VOWlZ0azBXb250NzlucDlXM3VTTGxOaEVzWTBHemY0dkU5RXhiU3dDMTI3SUVaSmVVZ25sdFpMdXQ4TkM1NVg0S042WXdNMGxuU2xwajZCZEI1TTRzYkNzQlRuT2tuVHB3bktUN05OQ29rRVRHMU1zZXBsd2lQZE5kRXpQN2Irby9VMmViL1QxWUY1UzBrbVM3bFJaUWVUM1hsa2x4U0d3a2tCMHJGaHB1Q0FEQXRjWHdocmkvVlBRTlUyeTFvclRUWnc0T2dYV2F1TFVCaHRwc1pmQ3UzNjRCeUE2eG81Rm1MaDJyVE1oL1l6dWYzaGZpRlJPSUxxZWNVMWplWTdLVzAySmJTWFE0aDIycld6VzNhNU5tNE5HQSt3dTQrd0FuWGZ2QXZCK2ZkMmRNVkQ5VjVmMExFbUhWOVQzc3k2SXJRV1RUNnV3c2FobzdkNm52ejg4cWdlL050MWtiYURHTVgxbm11MExqd3Q3U2JxT0pBZWl0TUQ1elhvT3NyeXI1d2cyL1hlQS94Q0FBQVFnQUlFK0NGeXRDL1R1ZlRSU1d3SS9TT2N3ZnRqVzdFSnJRd3RjNytvK1NjMjZ3bWRhSDlPSklqODdJSXc4NmZoM1NmSzU1cGJuZ1d2MmNBZDZ2RmRXTTRUQXRVWGR6ZDdCc241anBVZUxNN3hWMHFIZHVmQ2h4b1pTVnhHNExpVkdmZ2hBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFTmdJQWdoY2IwUTM0U1FFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJMYVd3RTI2aXh1blN0cXpzb1V2bCtURDB4YThqcVJyU2ZLbGRGOGsyZldVSzE0VUZiZWU4TFVRd29Nay9VT0dPUG11WHRTb2VSWnorN0dtanI3SzNpajlIbXZIQmZ2M1VrbEhaanhqZmJWbG5YYWo0bGcxRjRSYXQ3ZkYyUHhsU2JlUzlCK3RuY01lQkFJRWFnVDh2OXFKd054QzB1Y0w2NjBWZWNrVlNDNTBhNVRabzVjSmh4QjNpbzdwdWYwWHRiL0o4NDArSDhLSFNUcXVzZ0lDTkZRQ3BIZ3ZCS0pqUlV0bkVMaStrT1lRNzUrV2ZaZHJxMmErTktuam81SnVKK2s3dVpWdWFiNFdleWxEQ0JWc0tmN2laa1hIMkxFSUUxOUswc2twQUdCeDQ2Y0tzSWFQMDR1dVoxempXSjZqZU9zcHVXMEVXcnpEdG8zSldOcXphWFBRbWdDN2k1ajduVzJCcFF2RzBpazkrK0c5OWRNckF2Wk4zRHRIMHNHU3ptM3NiM1FPWlRmY2gxNDN1SDJraXhLb1dadjlaL291ODRrMWdiVVkyaFVrWGJtYm8vNnVwSnQyd2JiM2tmUTczWGZESzYzQkp6OXJEb2IzampYVVRaVVFnQUFFSUFBQkNJeUxRSzJZNmJoYU14NXZjcitKdC9JWWdldFdKSmZiaVo1Zjh6cmdEV2xOVXV2cEt5UTlzZ3VxK3BOYVE2bDh6UjV1SXhlcXpRengzY2pua2srVWRJOXFiNlV4NytQVXZoTTJiWit1UVhkaUFnSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJEYUJBQUxYbTlCTCtBZ0JDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ2Uwa2NEbEpKM1ZDdGdjMmF0N25KTjFMMGtjSzdYbWY5Sm1TbmxKWWJsdXo1d2dWK2hENWN5UTl2Z0dFVjBrNlF0SVBsdGhDMEtJY2RFNC9sbHNkcHNRbEpCMHY2YkFHMWEzN0VuMkRKb1JOUklVZG9oZUV3bzR1S2VqeCtTWHBzbENOZmI4YkxCUktnc0E2Q1hqZTQ2QWVGdE9JcEZNa1daVG5SNFdGRWJqT0J4YTlURGpFcGJIb21KNTdtVGRxZjVQbkcvbFBSbm5PMnQrZGE3VGdrMFh0TGZKSWdzQllDRVRIaXBiK0kzQjlJYzFsN3g5ZjN2ZCt5OTR0NFE5a3krL2p5emVvNnh1QmVWT0Rhc01tTExid3VIRHArUVV0NU9aZ2JyOVdZWGNJb1lJSzk3YXFhSFNNSFpNdzhSMGtlZDFTZXliVmdjcU8zYXJlSGFZeDBmV012UnZUY3pRTUxXb1pPd0crQjR5M2g0YllBMm5WK2xZQmRxZjlhUzFzMWFxdGZkcHArUTIxTmIrYWQ1K1pmVnJTQVpLKzFpZkFEYlpkRzR6MjRaTCt1c2YyWHliMTMxVWxlUy91djB2NmZVbDdkU0wwL3R2WUVzSHN4dFlqK0FNQkNFQUFBcnRHd0djVDd4bG85UC9YelM5ZUxNa0JXMXFrV2pIVEZqNXNvNDNjYitLdDJvN0FkU3VTeSsxRXo2OTVIZnNFU2NjMGNyT2xRSEx0T3JaUms2ck1EUFhkNkxxU3p1cldsZDRuckVrK08zcjdMdWpRaDJ1TTlGUzI5cDB3eG4yNlAwb0Jua3FSZlYvU0N5UjlxYlFnK1NFQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUdCOEJHb3ZFNHl2UlhnRUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJYkFJQkN5Uy90Qk5zZTBoalozOG02WW1TWGlqcEo1bTJiOWhkZ0QyekUwNjVZbWIrYmMrMlNxanc0cEwrVk5MUkRVRjhMRjBrK3ZjRk5oRzBLSWU5cWgvTExRNWJvcFVva3IzMldHTnhwQXVHYmNMYWE0dUtZNVZlRVBMbG14ckJ0RldnTEFac3NUZVBQZEgwUmttUGx2VFRxSUdNY243L2ZMdmczWk5oa2l4YlJ1RG1hYjZ4UjdCZFVaRzNXcUhkb1MrREJ2RTBLUmE5VERqRXBiSG9tSjdiZjFIN216N2ZhUExnekRFU2ZaYW1UWG5lY2p0SnAvZmxKSFloRUNBUUhTc0NWUzBzZ3NEMWhXaVd2WDlZUTdkODZvYXgxY2M3dFhZZTZKWTdzSmt2bEpQNkp4QWRZOGNrVEZ3YjFHZEMyY0VMNzlqdDVYeXJmK3dyYTJBOFhZbG84QXg5akplRE40SUtWeExndDdjUzBkb3lETEVIMHFKeER2UnltcVRydFRDV2JMd3lmV2Y0WVVPYm0yTHFDbDNRdnJkTDJxK0J3L2VUZEVJRE96WlJPOS9keG05SE41YjB4NDM0ZWgvN0R5WHRHYlQzaGZRN0RCYi9yMkwremZtN3YrMU5wOXIrci9XcnRQeW1qSitsN1NJL0JDQUFBUWhBWUJNSTFBUy9hU2xzYTFhMVlxYWJ3SHNkUHVaK0UyL2xHd0xYclVndXQxTjZmbTNhV3N1enlUK1dkRkFLS0ZyYjhoYm5DR3A5cUMwL2xNQzEvYnl2cE9OckhaWTBwbThPMDgycGZTZU1jWjNwNzBRT3d1ekFFcVhwWFpJT2tYUmVhVUh5UXdBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBd0xnSUlIQTlydjdBR3doQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUk3QUlCNzBzK1FkSXhQVGIyelpJZUp1bXJLK3J3WWZhLzZTN0ZIdDZqTDV0bWVwVkl5R1U2TWZCamUyRG1BOWYzNmk2a3YyV09FREdDRnVWUDBhcCtMTGM0YkltV0Z6cSsyWW5LSGlEcDdHR2JzUGJhb3VKWXBSZUVvdldzSFZCakI4WjRhYVJ4RXpGWFNlRFprcDRVdFBHZmttNGw2Uk9COHJWQ0gwTmZCZzAwc1ZtUjZMdG5pTjkvZEt6TjdiK28vVTJmYnpSN2VPWVlxdm5OVDh3NW9NeVQrM1FTMnhBb0pCQWRLd3FyV1pvZGdlc0w4U0J3M2ZMSldyK3RQdDZwdGZOQVV4bVRlUEw2ZTZsZkQ2Smo3Tmo2NkFoSkwybUF5bnVFcjIxZ3A5WUVlNUsxQk51WDcyTzhiTzhsRm1zSjhOdXJKZGhmK1NIMlFHcTlyeEhTV1ZRM0FqdS8ySnQwRUs1bzhMNEpXKzl6M3JZVFR2NlgybzZXRkowL3VXb0hGcnVUcEhjMDhHTk1KbXJGc2NiVWxva3ZpOGFkRnV1ZG9kdTdqYUxxUXpPa1BnaEFBQUlRZ0VBcGdacmdONitROU1qR1FjNjNjYjVXMmlkOTVNLzlKdDZxYmdTdVc1RmNicWYwL05xc3RaYjdBK2RJT2xqU3VaVk5qNTVKcWF5MmFmRWhCYTU5dHZ2RTdzem5QUnEwNExnVXVPejhCcllJVEdLT0FBQWdBRWxFUVZSYW1haDlKNHgxbjI1czc5NVcvWVVkQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlReUNTQXdIVW1LTEpCQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNUUW44cHFRVEpPM1gxT292Ry90aUV1TDUySkk2TEFKenNxU0w5ZWpIcHBuT0VRbng0WEZmSEg5V0Q0MTdZUkx5KytHVWJRUXR5a0huOUdPNTFXRkxIQ2JwTlkycVBFclNVK2VJcHpjeVAwb3pVWEdIMGd0QzBYcEdDYTNDcWJGZUdxbG9Fa1ViRXJoS0o3Ui9aaWZRZHYyZ3pkTGY1WFExdFVJZlExOEdEU0pxVWl4Nm1YQ0kzMzkwck0zdHY2ajlJZWNidFpmN21qd2tHRmxJWUd6aW1uUlZQd1NpWTBWTGJ4QzR2cEFtQXRjdG42ejEyK3JqblhwSFNhZFVObzN4dlJKZ1FmSG9HRHUyUHJxV3BQZEl1bHBCMitkbFBWWFNYYnY5eCtuOXdVcVRvZUxzU1lhdzlWcW9qL0d5VjRjeEhpTEFieStFYlpCQ1EreUIxRFRFMzY0c0lQdVFHaU16WlZ1SldEVjBhUzJtZk9mRTMrOGUzYUQyRm9MaEZpcnpmT0dtUVg4K25RS2pmaTFZZnF6RnRuSC9iSnNFcnIrY0Fsbit4MWdmSVB5Q0FBUWdBQUVJYkJtQnE2Y3pnZnNHMnZVUlNkNWYvVmFnN0xJaTJ6aGZhNHdvWkM3M20zakkrSnhDQ0Z5M0lybmNUczA1bVlubDYzWkJsczZTNUwybTJ0UmlMZnRyNmJ2TkxXdWRXV1A1SVFXdTNjd2Jwdk5XVjZ4czg4OGtIU3JwcEVvN0xZdlh2aFBHdkU5M2lLVFhCYy9sKzN2WjgzYnNuRy9MNXdwYkVJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFUV1RnQ0I2N1YzQVE1QUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRR0JuQ1Z4SzBoTWtQYU1uQXFzdW5WOVowaG5wRUhSUExteWsyVnlSRU84djMxM1NpWklzR3RBeStVTEFmU1Y5TlJsRjBLS2NibTQvbGxzZXJrU3RJT3kwcDEvcGZ1KzM3cDZyenc3bi90cHJpb3BqbFY0UWl0YXpka0NOSFJqenBaSEdUY1ZjZ0lCRjU5NFVLRGNwVW5OQkRJSHJmUEFJWE9lem11UWNjcjVSZTdtdnZIV1VLQ0V3Tm5ITkV0L0ptMDlnRFBNK0JLNHY3QzhFcnZPZjNVM0kyY2M3dGZiZGViNmsyMGg2N3lZQTNBSWZvMk5zNlR2WXdqd1dqdTRyZWIvdzlwS3VVVm1CeFNZY2xQRGJsWFp5aXI5TTBxSUFpZXhKNWhBY05rOGY0K1d3TGFDMkhBTDg5bklvclNmUG1QZEEvWjNxT1pJZTN4RE5xdStNRGF2YUNGTXR2NnMrU2RKeks4U0tMQWIyYmttWENKS3pFUHFSRmZVSHErMjlXTzBhb0hjSEF4VnNrOEMxbSsvbjd0Z0FCNHBBQUFJUWdBQUVJRkJHd09zRG4yZTdSMW14bitmK3o3Uy85ZUZBMlZWRnRuRyt0cXJOUS93ZGdlc2hLQTlmUituNXRVVWUxZ2p0enRwOGhhUkhTdnBKRU1jMjdIblZuRjhLWXRQREpiMDhXbmlxM09lN0FKMEhTdnBDQTFzdFROUytFOGE4VCtkdlJYNVdqZzZBR3FNWWVhQVpGSUVBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdzTHNFRUxqZTNiNm41UkNBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUUdBdUIvU1VkMzBENFpMbzlxeTZiZUcvMG1aS2VNaFlJSS9LalZDUmtQMGtuTmU0LzQvaWlKRjh3K0lpa2JUamNQM1FYeit2SHkzVDk5RXBKZnpDME14WDFYYldoZ1BwM0pIMi93cGVoaXI1QjB1TWFWQllWeHlxOUlCU3RwMEVUUjJWaXpKZEdSZ1ZxQjUyeHlJcm5PWWNGMis0NXphMjZvQktmQ0paSDREb2ZIQUxYK2F3bU9Vdm5qZVUxWEZpaTluSmZUZDJVWFUyZ1ZGeHp0VVZ5akpIQUdPWjlDRnhmK0dRZ2NEM0dYMG5jcHo3ZXFidzc0LzJSVTdKMW4wWEgyTkozY0xTZUhDYWJtbWNaUS9Za3g5ZXJyWDk3NDJzaEhwa0F2NzN4UGdkajNRUDFOejhIMUQybUlicFYzeGtiVnJWUnB2emVkQkNLaTFWNi9lTXVrTXBCbmJEVWV3SjIzTjh2U2FKaWdlSzZRTkx0SkowZUtUenlNdHU0QnRnMmdlc1BKY0hNODBiK0xPRWVCQ0FBQVFoQVlKTUoxSzRQSGlIcHVKNEFiT044clNkVVJXWVJ1QzdDdFRHWlM4K3ZMV3BZNjNQQzk1TjBRcERpTnV4NXJVUGcybWQ1M2lqcDRDRDM2V0t2bDNTZkNwSHlCaTc4bDRuYWQ4Slk5K2ttRGJ4Y09sZHVVZkhTOUJWSnQ1YjAyZEtDNUljQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUlIMUUwRGdldjE5Z0FjUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUNBdEpla1YwaTZXd01ZUDVOMGFEb2N1OGljaFNKOWNYbVBCdlZ0bTRtSVNNZzFKZm53OTc2TllWaDA1M25keFNHTEhIOVEwbTgwdHIvTjV1YjFZMVM0YzVzNWpiRnRrZC9ndkhaRVJhdEtMd2hGNnhrait4cWZ4bjVwcEtadGxLMGpjS01rMUxKbjBNeXBrdTRxNllmQjhnaGM1NE9MdmllSCtQMUh4OXJjeTd4Uis2M2VXVG05Vkh1NUw2Y084c1FKbElwcnhtdWk1RG9KUk1lS2xqNS9OQW1ST1hqTk5sd0NyMkdEd0hVTnZmR1Y3ZU9kT29iZjdQaEl0L09vZFo5Ris2djBIUnl0cHgyNThWbEM0SHA4ZmJMTW85YS92YzFxL2U1NHUrdnp2REgzOUJCN0lKSDJPMWpxNnhxSUxrL3F0cmoxbmJ1MXgvc2p6bXg1bVYrUjlGSkpEMm5RenJNbDNWYlMxd3R0WFN2dHQxNnRzTngwZGdzbG5WOVJmdWlpZmhZZjFBbTUvMkJGeGR1NGY3WnRBdGZ1d250SmV1M1FEeEgxUVFBQ0VJQUFCSGFJUU0zNjRGV1NIdHFqOE9rMnp0Zkc4R2psZmhOdjVldmZTN3Avb2JIU3MxalQ1bmQxbjZTRzJXejMxQWp0enRxcUNZajF1Mms5KzJ1Rno4K1lzcTlENE5ydHY0a2tuNStLbnIyYVp0aG5JSU9TdnFwOUo0eDFuMjZhd2U5MVF0Vm5CUHZ0WFpMOFRpZEFWTWxUUlY0SVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWlNZ2dNRDFDRG9CRnlBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBSUdmRTdpNHBDTWt2YUR5RXZwRUZQbUNCVnl2bkE3TjNoRHVjd2xFUlVJc1V2NmFKRGJXQXUxMFArN3FSWTBhamdoYzE5QmJiOW5vYjNEVzY2aG9WZWtGb1dnOTY2WGN2dlpOdURUU3Z0Vll6Q0h3ZEVsUHk4bTRJTS9ET3dIUHY2NG9qOEIxUGp3RXJ2TlpUWEsyZW1mbDFGeDd1UytuRHZMRUNaU0thOFpyb3VRNkNZeGgzdmRxU2ZmdDNxMWU3Ky82T2hHQjYzWCtHdHJYM2NjN2RReS8yZmFreG1PeGRaOUYrNnYwSFJ5dFp6emsyM3VDd0hWN3BuMWFiUDNiNjlOWGJNY0o3UG84TDA2dS81SmozQU8xRUxYRnJTL2RxUGs1UVhSYlZIVXBTZDZMK2tZTFl3UGJjTkJiaXd4ZHUwRzl4MGs2c2xCcytyRDBQYkpCOVJ0akl2ZTd6VGJ1bjIyTHdMV0YzRStXOUlZVTFQbjdHL1AwNFNnRUlBQUJDRUJnc3doY3R3dWljbGI2ZmxEcStUbVNEcFowYm1uQmd2emJPRjhyYUg1dldSRzQ3ZzN0V2czbnJvTnluV3dwa0J3ZEx3NlM5RTVKbTZ6cnNDNkJhek56M1VmbmR2aVNmQllwZDhDdGYybGdxOFpFN1R0aGpQdDA4M2o0M052TGc2Q09rdlRVZERZZ2FJSmlFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdNRFNCVGY0UU1qUXI2b01BQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBU0dJYkMvcE9NbFhTTlFuUzlVSHlMcHZBVmxmMFhTU3lVOUpHQjdWNHJVaUlUNFF2NExKVDJzRXRZcnVrdjlqNVQwazJRbkttamh3K2gvS3VrN2xmNU1GL2UrK21NbDNUeGc4OTJTWGhZb0Z5bnlSVWtmbWlrWUZlNk0xRStaT0lHYTMrQjByVkhScXRJTFF0RjY0b1RHV1hKVExvMk1rOTcyZW5VVlNXZEt1bjZ3aVYrVmRBdEpudytXZHpFRXJ2UGhSZCtUUS96K28yTnQ3bVhlcVAxVzc2eWNYcXE5M0pkVEIzbmlCRXJGTmVNMVVYS2RCS0pqUlV1Zkg1K0NZdG1tZzFlZEpHbnZsaFZza0MydmQrL1Q3WUg4Mnh5Zm8ydm9EV3IrMXJuYXh6dDFETC9acmV1b3FRYTE3ck5vZjVXK2c2UDFiSE5mSW5DOVdiM2IrcmUzV2EzZkhXK1p5NHkzcjRmWUF5bHBmVXR4S3RkcmNldDdKOEhzUlVGMFMveGJsTmNDMFE3ZWN3TkpGdWgrZnd1akE5dHc0Q0YveTYxTlpuNVhTVy9PTk9UdmtCWUp2bjFtL20zSmx2dmRaaHYzenpaVjRQcnNKRngzQ29MVzIvSXpwQjBRZ0FBRUlMQUJCQzZYdmhrY0dQQjFxRUEzMnpoZkMrQnVYaVQzbTNpcml2KytPOE54LzBKanVYUDZlV1ozZFora2h0bWk3dkYzeHVjWDl0Mmk3SytTOU5DcDg2MDVabjJtMW9HZU5qbXRTK0Rheks0ZzZlMlM5bXNBOERSSmQ1TzB6dUJEdGUrRXNlM1RMZW9XNytVNE9OMWRBdjNtOS9NZHVyTno3aThTQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJYkFnQkJLNDNwS053RXdJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNPMGJncXBKT2tGUnk2ZVFjU1FkTE9uY0pLNHRmKzdEc3hYYU1aMGx6WHlMcFVTVUZadkphUlB6SmtwNFd0REVyYm0wejBZc2FmVnhndWFJa1g2RFlwN0I5RmtPNGs2UjNGSlpybVQwcTNOblNCMnl0SnRCS3FDY3FXbFY2UVNoYXoyb1NtNVZqVXk2TmJCYlZ6ZmYyTUVtdnFXakdOeVc5dGZCQzNHeDFWNUwwaDVLaTM0Vi9MT2tOa241UTBZN1dSUzFpNDB0cnJWUDBQVG5FN3o4NjF1Yk9oYUwyVzcyemN2cXk5bkpmVGgza2lSTW9GZGVNMTBUSmRSS0lqQlVPV3VTQURmUFNYcEl1VTlBZ3I2bHVKK24wZ2pLN21qVzZodDVWWG1Ob2R4L3YxSWpJeGhoWWJJb1ByZnNzTXNhYVZlazdPRnJQcHZSTHhFOEVyaVBVMWxlbTlXOXZmUzJoNW1VRW1NdU05L2tZWWc4a3QvVTNUcUxJa1dDNWkrcndlL0o1M2ZldHZzU3R2VDkzenk3QTd5c2xYVG81NGNBMW15aHlYU05PTk1zLzUvdnVwSXlEenpxZzRCNjVEOHFXNU12OWJyT04rMmViSUhEOXVmVHQySUdPL1h4K1JkSlB0K1Rab3hrUWdBQUVJQUNCVFNIZ3VmWVRKQjBUZERnaVZCdXBhaHZuYXhFT3JjdmtmaE52Vlc5azd6MTNUai9QeDEzZEo2bGh0cWl2VzY1bFhVZkpQb0xIcWIrVGRIandRV3o1blA4UFNXZE43VTJVdUxST2dXdjc2ZlBoUG4vYjR2eDNTZitWTU1yTlcvdE9HTk0rM2FvMi81NmtNeVR0dVNyam5MOS9Pdlg3bHdKbEtRSUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSnJJQkM5eUx3R1Y2a1NBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUTJERUNQbEQrYkVtUHpXaTNMNERmdmhNUS92Q1N2RGVSZEdyd2tHeUdDMXVSeFVLYUIwZzZ1N0kxM250K3BLUVhGUjRtOStGemk0R2VOMU4vOUtKR3k0UDlFNWNPa3ZUT2dGRG9oOUl6T3R1MlN0UkZ4YVBDblVXVmtMbWFRQ3VobnFob1Zla0ZvV2c5MWFCR1ptQ1RMbzJNRE4zV3VuTzVOTys0NmRhMmNIME42K3ZDWFBROU9jVHZQenJXNXM2Rm92WmJ2Yk55bnFiYXkzMDVkWkFuVHFCVVhETmVFeVhYU1NBeVZpd2JKN3plZjFKQmc3N2NYVmkrbVNRdXI2NkdGbDFEcjdaTWpyNEk5UEZPalloczlOVytiYlRidXM4aVk2eTVscjZEby9Wc1l4OU8yb1RBOVdiMWJ1dmYzbWExSG0vSFNpQzZuK0QyNUs3Yng5cjJkZm0xdDZUVEpGMnZvUU45aXhwZFZwSUR6TjUvanMrYktuSmRJNGcxaTJGZThOdlpQSmVRZEp5a0J6WHM5MDB4bGZ2ZFpodjN6OFlrY1AwTlNSL3ZoTFhlbC83NU4wbGZSOHg2VTM1RytBa0JDRUFBQWx0T29PWk00T2NsSGRpSnpuNWhBRWJiT0Y4YkFOdktLb1plVzBmMjNuUG45UE1hdTZ2ZmZHcVlMWHRvcnB2RW5jMjFOdjFNMGgzU0hzVXFXNWRQWjA3M1haVnh3ZDliUHVjMTYvbSt6dXZrWW1tNU41Qno1anpYcjBpKzJuZkNFR2VWSXUyYVY4Ym55ZjNzSEIwMDZIUG92a2ZRVjFDNm9Gc1Vnd0FFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFnVVdid3BDQkFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSURCV0FoZVhkSVNrRnl3UlN2WkI4VU1sbmJTa0VTMHV1MzlVMGw5S09qOFRsZytsLzBWUVVOc0hlZjhsczU3WmJEN0U3WXY0Tnc2VVAwclNVeHNkQlBhaDVMdDNBZ01uZGtMbHY1TGh5N3NrSFRKSDNOcEZveGMxV2g3c256VGh4WktPekdqUGJCYVhPVFpRcm1XUkdxR05sbjVnYXptQlZrSTlVZEdxMGd0QzBYcTI3VG5ZcEVzajI4WityTzN4SmJaVEFnRVJ4dHFlTWZuVjE0VzU2SHV5NVBkZmUwR3R0Qjl5NTBKakdNdFh2ZitHWmxmS2V0ZnpsNHByN2pxdlRXMS9aS3hZOU51K1pGckQzNmtBaHRlTWZ5anBCd1ZsZGpXcjkxS3VJTW4vWGtmeWZzQTkwdnIrREVrL1dZY1RTK3IwSHNQVEpGMU4wbjBYN0VNTTdmSVBKZmtpZmF2a1BqaEIwcjFiR2NUT1JRZ3NtN3RZZExFMDBNM3ZTN0tvUkdteXVHZXUrTTdMVXZDMTU1WldzdVg1RWJqZXJBNWV0VzdZck5iZzdiWVFpTzRudVAyNTYvWnRZZFdpSGY3ZTl6WkpOMnhoTE5sNFJncTQyOWU4ZFg5SngwdTZ4aEtmTjFIazJuUE9aM2JmVFovU29DOXl2dlhlcUJNZWZFL3d1MnNERjlkcUl2ZTd6VGJ1bncwdGNHMFJhNHRjL3JPa2YrcStYVnZFMnZQdGJ5Rmt2ZGJmQUpWREFBSVFnQUFFbGhGdzRHbWZHYlJJZFNROUlnVlNpWlF0TGJPTjg3VlNCbjNrcjFsYlh6T0pwbDZxd0xHREpibGNTZnFtcExkbWZpL3hQdTdIcG94SHowMlcrRGZHdkxucm9JanYvamJrZFhwdCtsd0t3bVJmVjZWYlNucTNKSi90amFTYTUzeTJ2azBXdUhaYldvcVVMenV6SE9tbmtqSzE3NFNTczBvbGZ2V1YxOSt1Mzk3dDYrMFhxS0JFVEQ1Z25pSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDRFFrb0FQRnBJZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0l5ZHdFSGRaZlhYTDdpMGZGd1NIRjRrUE8wTENDOUpoOG1qN2Z5eEpQdmdpOU81eVFkeGZYaTk1QUtFYlg5VjBpM1M1ZG5jdXFielJTOTRmMWJTYlR0T1g0eFV1cVRNc3I2YkZEdGIwcDBsbmJ2QVR2U2lSc3VEL1hidEtwTE9sSFQ5UWthZjdzb2RJT2xyaGVWYVo2OFIybWp0Qy9ZV0UxZ20xR1BoK2ovT2hCY1Z4OHE1VlBWdFNSYkVzdWhHUk9nd3N3a2JsVzNUTG8xc0ZOd05kTmJ2L3BPVGVOd0d1ajk2bDBzRnJuTUZCaDJRNHk1ZFFJb3JGaEs0UU5LYkpGbjhaRkdhWEVLdHZhQlc2RnEyVU5ZWXh2SlZRblZEc3l0bHZldjVFYmplalNjZ01sWXMrbTE3YmZWK1NkY3VRT2QxL2FNSzhwTjFmUVIrVDVLRnJmZE1ZZzBPZk9YQVpaOWNzeURZWmJzMXpHT1NBTjhrRU5jcnVuZjRJek5GSmRaSHRMeG0xdi9sekVwTExKdTcvSDIzcjNmL1VvTUQ1UGY3ZXArMG5oK2d1bzJwWW96ekdBY284TmowL016QWdVUENkb0NBNTNYN1FSYm1KMEVBQXI4Z1VQUGViZjBOWTl2N1pDOUpiK2krdmQybVlVUDduQTk2ai9BSlhRQThDMmpucEUwVXViNXltdnZYQ281N0w5WHJ2Uzh0QWZYMEZLZ21oK1cyNWNrVmR0dkcvYlBXQXRlVHZkeVBKL0ZxZnhQN2pLVHZTZnIrdGowNHRBY0NFSUFBQkNDd0l3UWUzcDNuZW5td3JibnpyS0Q1aXhUYnh2bGFLelkxZG1yVzFqVkN2elUrTHlzN3h2M0t2dHE2THJ2K1J1UnZWdzdXR2szSGR0K1duaXpwdTVrR2F0ZTBMY2VybXVlKzlMeE9KcDdpYkRWai82UXk5NTN0dkc1TjN5OXIzd21iZUZiUjQ1djNnQzVXM09QU1J5VGRNUVdnQ2hTbkNBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNBeEZBSUhyb1VoVER3UWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUZCTDRBYVMzam9qZ1BXdTd2THBJWkxPVzJEY2g5RmZLdWtobFpVZkplbXAzY1ZwWDNyTlRVY2tZZTNjL0pOOHA2UTIvYWkwWUhkSjNudStGdjJ5QUVwcGVvUWtpNFgza2ZhVjlQWUZncEhuU0RwNGliaTEvUm1Md1BVZEpMbC9TdmZXTFY3Z1N3cnJUalZDRyt2MmZaZnFYeWFTVlh1eG9SWEg2Y3RoRWFIRFZuNk15YzRtWGhvWkU3OXQ4OFh2dFhjRUwrUnNHNHMrMmxONllXNE1Bb09UUzZoRGorTzVsM25ITUpZamNOM0hyMlU0bTF5MEhvNzFPbXVLakJXTGZ0dVJpOVAzVFpmTkZ6R3dzTnBKa3ZaZUo2UWU2MzZncE5ON3ROL0t0RVg4ZkJIY1FTTm1rNE5CL0pXazQzc0lyclhNZi92MFlFbmUyN0hJOVd6eXMyMngxcEk5bjFhOCtyTEQrcjh2c2hmYVJlQzZmOFpEMVRDMmVjelYwMzYyL1JwcnNwREU0U2x3d1ZoOXhDOElERW1nNXIyYnUyNGZzajFqcmV0eWFiNS9ZRU1IK3hTM3ZxYWtWMHU2ZWFHL0ZybSt2YVFQRjVaYlovYTdKZUh4MG05bjl2bHpraDRxNmQwcjV1UFhTa0dJcjdiT2hxNng3bHdoczVJZ3FZdWE0Mi9yUDJuVTF1bUFnaCtROUltQVhRZlZlR0UzOS9qQ1RObkl2b0pOOEMwbjBBa1VnUUFFSUFBQkNJeVl3SFVsblpYT2xaVzYrV05KQjZWNVptblphUDdhYjhWajI4ZUtjcGhYcnVhYmZzM2FPanF2Yk5uMldWdmIzTTk5Y2l1MTdVQk5ad1lDb0g4eDdZMnVXc2RPKytQQXY2N3IrcVZPVHVYM045RER1aUN1NTFmWW1CU3RlZTVMeitzMGNIZXVpWnI5T0Jzc0ZTanZveDIxNzRSTlhOL1dpc3YvaWFTLzdLTXpzQWtCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUx0Q0VRT0VyYXJIVXNRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCTW9JV09EajVFN28yb0xKcTRTUnZmLzVCRW5IbEZWeGtkeG5kNWRoYml2cDZ3VjJMSjVrUDMwSnZUVFZIQUsvVWJwNHMyZGhwUllsdWFPa2J4V1dLOGsrVDZEY0IvNTlLZU5qS3d5TlFlRDZFa21FeXhjRlN0S1hKZDFLMG4rVUZPb3BiKzNCL3A3Y3d1d01nVTBUdUk1MDRHV1N3TnlUTzlHbUt5MHcwSmZvL3JJTFNoWWtmbFkzSG41STBrOGpEYU1NQkNUVlhzWUI0bW9DcFhPbG1zdXdxNzNKeTRIQTlXcE9DRnl2WmpUbUhGeTBIblB2dFBPdHBjQzFCZEI4RVRzM2ZTK3RxLzUxU1lIb3VqSFhoM1huMjVUZm1ZWElMV0M5S24xRzBuUFQzc21pb0dXcmJLejYreXBoNjBuNW4zVWlyWWNXUHBPcjZsNzMzMzh0QmVpNjVib2QyZUw2RWJqZW5zNGR5L2g2OFRRV09RRGhQREgrc1JHMzhPVlRVckJGQzArU0lMRExCR3IyM1d0RXVIYUp1Y1d0WHl2SlFVaGJwVmQyMzhTT2xOUjZEUE8zeVh0S3N2MUxCNTNkTkpIcnlINW82WHNrR2xRNDJBV2pLNVlyY0IxMTNQT1FtM2JmUmY1Y2tyK2grTHY0WjZQR3Bzck5pcVo5VU5MakczMkRpUXF5YmFJQVdJT3V3QVFFSUFBQkNFQmdLd240SEpmM1VSNFViSjNuN0E5dkpCYWI2MEt0bU9sWTlyRnkyMXVTcithYmZzM2FPanF2TEdsYmFkNXQ3dWRTRm4zbjl4anc4b0pLL0YzQWV3bmZMU2pqckxuZnpwYVpQYm9MUnVSemRpMVN6WE8vNmx4SEMvOXliZmhNcm9NRDc1RmJRTktZZ2pmV3ZoTTJkWDFiOC94OVJkS3RHKzFaRkR3MlpJVUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FJRVNBZ2hjbDlBaUx3UWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSURBR0FyN0kvaGZwY3ZpSHB4eXlZT3BqSkwxRzB1ZlRSZmUzU1BLRmxtaXl5SkV2eko5V2FPRG1rczRzUER3OXFlS3RTY3lrOUZLOTkzdGZJdW1SaGI0NisvMGtuUkFvVjFya3VrbGc2WHBkWDVWYzBJOEtsZFZjWUpsdDI3VWx2YSs3SEhYVndrWS9vOHYvOU1JeWZXV3ZFZHJveXlmc1hwVEFOZ3RjKzdmc3dBTVdvN0RveGJKVU1rYmtQa2U1Rnh5L0llbjU2VDNUcC9CL3J0L2syeXdDa1F0VW05WEM5WHVMd0hWK0grVE9oU0tpdGZsZTVPVmNkUkd5OW5KZm5oZmtpaExnb25XVTNHYVZpNHdWaTM3Yno1YjBwSUxtZjFMUy90MDg4cHRMeWtUWGpRVnVyRFZySDc4ekI4ZnllM1d2d3BaOU80bFRlODQrbmE3WkNaRy9TNUxYenlYSmw4OWZMTWtCWnl4MFY1c21BWFdlV1NBUzYwdmdGcmwrMjRMS0w1bEVDN3lmVVpLOHQvTkNTVjhvS2RRZzc3Yi9IaG9ncWphQndIVTF3dEVZNkdOOExXMmNnenErcWd0Y2VHQnB3VWI1LzBtU1JTVWk2WE9TSHRxOXA5OHQ2WUtJQWNwQVlBc0kxT3k3NTY3YnR3QlR1QW4rSnZpM2t1NGV0bkRSZ205SUFSaGJCMXJ4UFBUWWJ1NTNlQU5mKzlnZmIrRFdRaE1sNGtRT0VQeW9yZysrbE9uUVZkSTMxK3RuNXQvR2JIMEpYRjhoQ1VMK3lVd3dVZ3RGV3JUdC9BcVl5NzdIZVA3ZzlkcnJLMFRtUzU2NTZXWnNxZ0JZUlZkUUZBSVFnQUFFSUxDMUJHcSt5M3UrN2ZLZkdKaE83ZmZPTWV4ajlZVU1nZXNMeVc1elAvZjEvRVR0ZWsvbmpkMlowSU5YR1BEM3lYc25NZVhTUFZDdnU5N2VmWC9hTCtwa0tuZEk4clhTek0rTFI5ZFRMdHZYK2pUU3J0eHpnTFp0VVhJTG1yK3VDKzcwMDBobFBaU3BmU2RzNnZxMjVweTd1K0ZGa2g3TDk0Z2Vua2hNUWdBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaEJvUkFDQjYwWWdNUU1CQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaXNqWUQzT1c4ajZXOGtYVWZTUkZCNDlyOUhIRHhLMGxNTEQ4UFdIc0MxbnhZT2UxNWh2VGZxUkZEZUk4a0NWU1ZwNkVQbmV5Y3g3ZWN1RVk2YTlUOHF6TlJTSE1LQ3ZCWVFMMGxma1hSclNaOHRLZFJqM2hxaGpSN2R3dlFNZ1cwVHVQYVkrTnVTamtrQkEwbzYzT0o0dnFEVFNtZ2tjc0hSSW52UGt2U2hFVjF3S1dGSTNtRUpYQ3BkaHJyTHNOWHVYRzBJWE9kM2VlNWNLQ0phbSs5RlhzNCtCYTUvTE1uaVZUL0ljMlVuYzFtRXkySmhld1JiejBYcklMZ05LeFlaSytiOXRpMFVmSktrT3hXMDMva1BXeUd1RlYwM0ZyaXgxcXg5L002aXpPYTlYM3lKM0d0bVh3NlBKZ2NaYy9DdGwwbjZhR0QrYlpFQXp4TWVuUkZRWjU2UHkwUUVvK3ZwZFYwdWovWnR0Tzkyc1J3QzE5dlQ2MzJNcjdsMHZJYTBlS1Qzb0ZjRkFsdGwwM3V0dDB6L3JNbzcrM2ZQQXcrcUhNTS9rZ1JkSFpTQ0JJRmRJeENkSjVoVDdycDkxNWhPMnV1MXFvVjI3OXNRZ1BkN3ZiWm90ZWM4N2RyRkpmMXB0N1krdXBHL0Z0QzZZNW9iTnpMWm14bC9CN0JnOFZPVzFCQU5pdUExeHN0Nzgzd3pETGY4bHB2enpjWjdhWjRiK0x0ek5PVUlwamtna05lUkRteGRHbXcweC80ODM5ZTFSb3R5cEJ3RUlBQUJDRUFBQXZNSjFINlhYNWM0WnEyWTZUcjNzZnArRmhHNHZwRHdOdmR6Mzg5UnhQNU51L09kWjNUcmtrc3ZLT3pBUEY2WE92aHJKTFZZMDdwdTcvMStLdUxBbkRMUjlaUk4rVnZlSFNTZDFzaVhXalBYbFhTV0pIOFhXNVFjak96SlNlUzZ0cjZXNVd2ZkNadTh2cjFoQ21aMnhRRFFUVzUzb0xrVWdRQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNDd2VRUVF1TjY4UHNOakNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBNEVJQ2wwMFhYKzgvQmVYVDNlSFhBeVI5TGYwM1gycDVjQklLY2Y3YzVFdTdQa1JjZXNtOTVnRDR4RGNmQkQ4MGlYN2wrT3U5M2hjbUVhZWMvTlAxak9uQStTTGZvOEpNaThRaHpHdXZBZ0UvQzFTOFd0SytKWENUOElLRmNTOG9MRmVhL2FmcDRyZi92U3pWQ0cyVStrVCtPSUZ0RWJpMm1JZkhGNHMwM1RpTzQrZmxTd01Oekt1dTlvTGpOeVE5WDlJckEwSUxGYzJuNklZUk9GaVNSWEl1dG1GK2I1cTdDRnpuOTFpdVVGWkV0RGJmaTd5Y2ZRcGM1M0xJODNRN2MwWG4yeE1hWExUZXp1ZGl0bFdSc1dMZWIvc3FrdDR2NmRvRjJITEcvdHJudU1DZHRXVHQ0M2NXWlRadlhHMDlEN0xZOU4rbFBaOXpsNnlydmI2L1FSSzJ2bCtEbmpsSGt0dmlPcWRUZEQyOXJrdlcvbjI5cjl1WHVHb0RKcGlZVDJCVEJhNGRoTTNDQWFYSnZ6WHZyOTZ1dE9DYy9BNWE4Tm9HZGxxWitJQ2tMN2N5bG1uSGV5YmUrN1dZMHBVeXk0djZRcmdBQUNBQVNVUkJWQ3pLNW4xa0MvdjdtWHl6cFAwRDl2eU84VnIycFIyTGh3VEtUeGV4RHhaMy9VeWxIWXBEWUJVQmkvN2VkVldtZ2Y1dWdYb0hPNHNJc293dElKUG5RaGFiL2RGQTdKWlYwNGU0ZGV1QWl2UDg5L1BRWWp5ZDJONGtrZXRySkZFd2kwdE5wNThrNFdzL1d4WTBMa2xYVGpZajg1ZVNlc2FldDRYQXRYOVQ5MGg5NFlEUnE1TEZ5dTRtNmZ1ck1zNzV1d01nSFovRTVIT0xuNXg4czJCYnpuZlY2UGY0ZGEzUmNqbVFEd0lRZ0FBRUlBQ0JQQUkxKzlHZVkvdGM0ZGw1VlRYTlZTdG0yc2QzZ3FZTnJEQ0d3UFdGOExhNW55c2VrZDZLTGdyWTlGMUpEMDFCN25QV0tQTWN6QkZmem1sWWl6WGhkRDNSOWRURWh0ZFZqNUgwSmtrK1R4ZmxrOVAybkR5THZtR1BQU2hqN1R0aGs5ZTMwZlB1aytmQjV6Y3RIbjkremdOQ0hnaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VCaVdBQUxYdy9LbU5naEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUtBTmdZa0l5SEdTNW9sV0g5bUpDUnc3VTVYelBWdlNFUmt1V0VqcDlwSStuSkYzT2t1dGdPcTBMUjlBdHRESjJ6Sjg4S1hrNTByNjQwSlJ6ZGRMdW84a1h5NGZjMm9wdXVWMlJvV3B4c29vVjdSeDI5bzkxdjZvOVd0YkJLNnZMc2tDQ05ldkJHS2hwaFpDL1BkTmdnbzE3cFFHSDZpcGk3S2JSOEJ6QUl0d2VQNUE2cGRBanNqcHRBYzFsMkZidFdSeUNiWDJnbHFwUDdsemhJaG9iYWt2cS9JamNMMktVTDkvajg2M0oxNXgwYnJmL2htTDljaFlNZSszdlo4a1g4VDJ1ek1uK1ZLMEJWVlBYNUc1OWpuTzhXV2RlZnI0blVXWnpiNWZMaWZwVkVrMzdRblE1eVM5WE5LcnBvTE5XRGpRNjRSblZnYlVtZWZ5WHliQjdPbEwwZEgxOUxvdWw5ZUtFL1RVbFZ0bGRsTUZydDhTN0lWV3o5UWlFZmxsYnQxQzB0VlNJTUJWd2QyQ3pSdXNtTS9yM2lvSlc5Y0VBNXM0N0QxZDcrMitRWkwzaDk5YUlYRHRaOFB2Wm91UFBxZ0JFZThKL1huYVgxKzN3RW1ENW1CaWhBUWljOU1STm1OMExyVVdUSW8yY0ZQRnJTZnRiZTMvRnlWNVBmQ3hLTkFCeTgzdXczdS85RkZkb0l3dkJYMndXSkhYQXJ1ZWFuNmJEcVp4dEtRSEZuNURObk1IRVRvaEFOL3pIYS9oOXdpVTlYUHVNZjZkSzhwRzU2ZnJXcU1GVUZBRUFoQ0FBQVFnQUlFRkJHclA1am5nMkdQWEpNaGErNjI0ais4RVkzblFhcjdwNTM0VG45Zlc2THl5VDI3YjNNOTljcXV4UFJ0Y3lXdFpuOFA5YW9YUjJyRnF1bXF2Nlo1YzRjdHMwVDZmZXd0ZU8zRGFYbW5QZXJwdWl4STdrR2JyZElYdUcrWGJ1M1BXL2didFpIRnk3eWU4cnR1akh2TTNoZHAzd3FhdmIyOGs2VDJTOWd3OEVKdmU5a0NUS1FJQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBWUhNSUlIQzlPWDJGcHhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnTUF2Q095VFJJMG1CNUxuY2ZsUUVwZzhiODRmYzhvL1FwTEZzMHVTOTF1ZjBBbUJIRk5TYUVWZUMyM2ZJMFBJYTJMR2wrYnZsUHhZeHNmNU4rbVFieXZSclFtbnFEQlZ3NjV0YXFybW9rNVRSMVlZODhVRkMrVDhUWGRaYk41dmMwaGZGdFhsMzlEbEs4UVcrbTVEN2NXR1Z2N2xQbk8rZE9WTFB4ZXJyUGpUa2c2dTZKZFdZdHQrTHppQXdyVFFYV1hUS0w1RkJPNldSTVg0L3RwL3B5SnduYzg0ZDd3ZWd6RFlKZ2xjKzNkK0hVbi9NZkNGU0lzZ2VpN3dzaW1CMS95bllYbk82SHg3WXBXTDFxMTZZdHgySW1QRnZOKzJoVGhMQkxKOGVkemlwcDlmZ2FmMk9SNDMvVjhJMmtXRmFSZTFMY3BzM3Z2Rmw4ZnZub1JCZnF0SG1CK1U5SmtVRUN4WEpEM1hIYTlkbnBqc3o1YUo3aU9zYSsrbGhUakJYMGo2U0M2OEhjeG5vVW52UDg1TE5XSXNmYUtNamlNV2xEOHg3VkhXK09lZ1VYZVY5T1lDSTlQQ0ZONGJlR1FuNFB6dU5Ra1FGYmg5a2F5ZVA5NmtFMnI0SzBrM3F6RTBWZmFia3U0cDZZejAzNkxqbEl0UFB4dnU3eGNuQVpBV3JycmZQTFk2aU9QWWd5eTJhQzgyaGlNUW1ac081OTNtMWxRam90dXExYTNGb2UzWHV5UWRNdkIzQ1FlQk9ha1Q2am13RVJpdmgrN1NqZjJmYW1Tdkx6T1Q5NUgzNUI5YStkNitpcVF6R3dUUjdLdXRROXF0K1czV2lLcWRMZW0ybmJEYjF3c2FXMU9mcThrTk5CcGQ4NnhyalZhQWtLd1FnQUFFSUFBQkNLd2c0TE1qN3dpZVEvRTVQQWZqK01TYUtOZWUrWW51NzYycHVVWFYxdXlwNW40VG4rZFFkRjVaMUxqQ3pOdmN6NFVvQnMxdTdxK1E5SmdHd3NndHp4SC91RnNiSDlDZGhmNUFReHJyZXU0ZEZNdmZHdnBJUHJObFFXc0h5YklZdUVXdXg1NXEzd21idnI3MTc4UUJOLzNkSjVKZW1zNXhFbUF6UW84eUVJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFSNkpNQUY2eDdoWWhvQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaEJvU3VDeWtwNHQ2WWhNcS9mcUxqMi9ka0ZlQzNYNE1McnQrWDlQSng5VTk2SFpVc0VOaTVTYzJnbVY3Sm5wWDI0MisyRUJzRGNVaXJmNDR2Y0RKUDJKcEN2TnFleEZTWGlxNVFIZmk2ZUx4eTF0MnZXV29sdTJWeVA0a3R0dlErYXJ1YWd6bEo5WFRaY0lmRkhNUWtRV1B2djJVSlZuMW1QQkNZOFp0MHZDT3k4TWpBT1pWWVd6MVY1c0NGYzhVekQzbWZQNGFrSHp3eHRVSEJXWDlyY3c5K1dqSzMxWWh3aEtwY3NVSDVEQXRPamFnTlh1YkZVSVhPZDNmZTU0UFFaaHNFMFJ1TFpJajljUVhrdjRXWHhlNFJ3OXYvZCtPZWZzT1BPcTd1TCtNNVBJZHRUbWRMbm9mSHRpZzR2V0xYcGgvRFlpWThXODM3WkZNeDAwSkRlOU53VnkrdDZLQXJYUGNhNC82OHJYeCs4c3ltelYrK1Vha3U2WHhzcDUreEhyWWppdlhvdW5lVXc5YXNXWUd0MUhXTmZsOG9Na3ZWTlN6ZGxBQjFCNys1ZzZhNE44cVJGajZiT1owWEdrUmpSb3VqMlJkZjNEa3lERnRCMkwwVCsrNFR5b1QrWjlDRnZiWDR0R1c3QmpXdVEwT2s3WjN1eXo0ZjBjaTRBOHJTR2NINmErdE1pM0JlSkpFS2dsRUptYjF0YTVDK1ZyUkhSYjhQRWUvZCttN3djdDdObkdPcjlIN0owRS9tL1lxREhucExYUlp4dlo2OHVNZzUxNjNQYy9OYW5GNzl4emh0ZGtPR0ZoOWVNckExSDRtK3hwR1hWRnNsalF6Ti9Vb3Q5ZmE4VExTdmRpYXdOQjVuNm5qN1pwWFd1MFNMOVRCZ0lRZ0FBRUlBQ0JpeEs0UkpxM0hSYUU4OG9VMUd0ZFFjMXJ6L3hFOS9lQ3VBWXRWck9udXVxYnhiS0dST2VWZmNMWjVuN3VrMXV0Ylo5Ny9WVkpYalBVSmdmWnN0anl4V29OU2VwanIyWWR6NzMzQ1Bidk1iQ3E5N1M5citUQWtKdVNhdDhKMjdDK3ZYa0ticlpIb05QV0hiUWk0REpGSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWpzQm9HYVN5eTdRWWhXUWdBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBdXNtNE1QamgwcXlDSXBGcm5PVHhhYnZ1dUlDOWRVNzhlZVhKaEVQMjQwS21ONVkwcHNsV2NTcHIvVG5rbzRKQ081NkgvZ0dIUWRmQkw5dk9qai9GVW0zN3Y1L3kwdndQaUR1Zy9rZjcwU3VuOXJnNHZvMHg5YWlXeldDTDMzMWI0M2Rtb3M2TmZYbWxwMG40dkRSOVB2OFVxNlJudk5adk1CampIOGprK1R4d01MTVkvSFJmdFZlYkdpRnNlU1p1NjZrczVKUWZVMzlGcDd6bU82eHRpUlpWUDEwU1pHTEVKTjZmQ0hpdHBMK3BhUmk4dTRVZ1htaWF6c0ZZT0RHbG9xcTFGeUdiZFcweVNYVW9jZngzUEc2aFdCUUxhdE5FTGoyMnNFaXFBZE9OZGJzK2hhNTltWDlsNlFMOTdPY0xmRDRSRW1mcWV5QTZIeDdVaTBYclNzN1lFT0tSOGFLMmQvMkpTV2RsRVRaY3B2dDUvOVJHWmxybitPTUt0YWFwWS9mV1pSWjd2dkYrem43cE1CYmsvMkl0VUtjcXR6QnhCejQ2N21kNFBxM01weUs3aU9zNjNKNTdaeGpYWDVuZE1WR1pCbkQvSE1lcU1nNDBpcVl6OWxwWGYzMWdoNjhadHFydmZhQ01zY21FZWJ2RnRnY0txdkZOTzdjQ2FJOHB3dW1kdjNHbGI1UjBrUG1CSTZMamxOMmI5Nno0VDFsQnl1dzBPeHNnTWphSm4wdXphRWQwREZuREs2dGovTGJTU0F5TjkxT0VtMWIxWWRvVXE2SEZrWDJ1SENiM0FJWitkWXBiajF4ejk5SExIcDh2UXgvYzdKWTVOckJKODdOeWJ6QmVmeTk5UXhKL3I0UVRRNEljWUNrcjJVWXFIbVBUc3hINWxvWnJqWEo0dmU2QTZVOUpXQ3Q1SnR5N2R6eDgybmY3UXNaZmtZRjJWanJaTUFsQ3dRZ0FBRUlRR0RFQkc3VXpSZmVJMm5QZ0k4T0d1TDU0UWNDWlZzVnFkMjNIZk9jczVaUnpaNXE3amVMZVQ1RzU1VzE3VjFXZnB2N3VVOXVZN0hkVXR6YWJmSWU3UW1ORzdlTzUvNlRTZUI2a3dTb0cyTy9pTG5hZDhJMnJHLzk3ZUZFU2ZjSXduNUdWKzdwd2JJVWd3QUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdaNElJSERkRTFqTVFnQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWswSVdBakpJbkw3QmF4WkRQVU82ZUw0c3VJV1hMcG5KOVR4N0U2YytXNEJBVk9MUjc5VjBpS3hsWURyQzRzc0VqREpyY01IZ3MzRW9tS3Z6eTJVa2M5MkxSUnVjUlVuaXhmNzBISE9CZVFNODJvdHV0WGlvbnFPMzBQbHFibW8wN2VQeTM0ZnZxaCtsKzczOTZtK25WaGhmL2I1bmM1dWthVDdkR1BRMnlSZHNHWS9YWDN0eFlaV1RTaDk1bHFKLzFxUXd1SWR1YUxqRnQ1L1N5ZUlaWkhyYVBLN3hFRVdMTVJJZ3NBOEFxMUUzS0diVHdDQjYzeFd1ZVAxR0lUQnhpeHc3WE1WQjBsNnRhUXJ6dUQzZStMUmFTN2MxMXdoNXhLc3hiTCtSTksvQmVjczBmbjJCQWNYcmZOL2w1dWNNekpXelA2MnJ5THAvWVhyWndzaisyTHJxbFQ3SEsreXYrNi85L0U3aXpMTGZiOU1NNXZzUnpoNFYyU1BweFgvYjZUOUh3dTIvcURBYUhRZllWMlh5MnZYanV2eXU2QkxScDIxUm95bHo0WkZ4cEhIUzNwK3BWTVdEL0pjeXVKRHVXbFpnSTlwR3ovczVqNVA2K1pvRnJ2Mi8xNTNzcWpqZzlLODdFcU5uZkc4MDRGTlhyZ2dBR0owbkxLYnk1NE5CL3o2aHpuejRGYk5jNkFXdCtrZk13VklXOVdMbmMwbkVKbWJibjZyKzIvQnVnU3VIVkRLQVp6MmJkakVNWWhiVDVwekUwa095aHNSNFp1SFpOdEZybXZFbUtkNWxZZ2MxYnhISjNWRzVsb05IL21WcG1wRXd4MGM2TEVaZTA0MTM0SzhyM2F2Tk85WTJaanUyMDlVa0kyMVRnNWQ4a0FBQWhDQUFBVEdTOEFpbHQ0TGlpVFB5UjFVZloxN1NMWDd0bU9mYzBiNlpWS21aazgxOHMxaVVtOTBYbG5UMWxWbHQ3bWZWN1Y5ay8vdXRlemQwemZOVmdFRFN3STNsYkR6UHN3SEpWMnRwRkJsWHArN082d0x2SFIrcFoxdEtsNzdUdGlXOWEzUHM1OGlLYUozMHRkdlpKdWVNOW9DQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRR0J3QXBFTjM4R2RwRUlJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQmc1d2hjTmdrT0hWSFo4dGRLdWwvbXdXZ0xwNVFlb081YjRHTmU4NzhwNmQ2U1RzKzRTRnlKTDZ1NDk1bWZJT21ZbWR3K1FPMkx5QmFYclJYN2F5MjYxZUtpZWhhY2dUTFZYTlRwMDhXYlMzcnpDZ0djTHlZUm5ZLzE2Y2dTMjh2RXJhZUx2VXpTbnhZS29QWFJwTnFMRGExOEtuM21XZ2hOVDN3L1R0S1JtZU4xQ3lHdWt2cGE4UzIxNCtmNHlsM2dnaHRLOHZ2VC9mUHZrdjZ6MUJENWl3bjRIV2doTG92YjFpUmYxblN3akQ3U2RTUWQxZjNqZVU0aytUbnkrUGVkU09HZXlweGRHQnloNWpKc3F5Wk1McUVPUFk3bmp0ZGpFQVlicThEMXBTUTlNNGtVTG5vZUxEYm8rZm5yR3N4N1ordTRaaGVvNFYwRllzQytpUG9ZU1I4dTlDVTYzNTc0eTBYclZxUEZ1TzFFeG9yWjM3YUZqUzJhNTk5V1RyTFF4UDZTUHBLUk9mb2MvMU8zSnZubkRQdXRzbHdtWFhEZm85QmdINyt6S0xQYzk4dWlKbHJvL0FFOUNjQXVxdE5yenFkS2VzY0NZZGhWM1JIZFIxalg1ZktIU2ZKYUpwcSsyZ1dNdTRVa0I2WWlsUk1Zdy94em50ZWw0NGpYbUdjMkVEWitVaGRzNzdtRmN4TUhxdkxlWis1WStibE9IUGtSa3M2UTlOUHlMcXNxNFhXaEE3ejVQZW1nREJlcnNqYS9zUGZQdk1mdGQraWlGQjJuYkcvVnMzRlZTU2QwSXVVSDl0QzJhWlAvTzlYandJei9HaHl2ZTNZUjh5TWlFSm1ianNqOTBicXlEb0ZyQjQrenlMM2ZPNjNTbU1TdEoyMXFMWEx0L2JFN1N6cTNGYlFSMldreEIvRzMxQU82WUx6bWxKTnEzcU1UKzZ2ZXB6bCs5SjBuS2tDZHc3TTJFS1FEWGorMDRQMGZGU0pjMXhxdDc3N2RGUHYrbnVXOUNQZWZ2eVB2bllJYitMOTd6amtyQk9qQVZOL3V2bEc0M3o2VWZ0UGU5L1FhbjI5Z205THIyK21uMTRGK2xuMWU2RFpwRDJXdkxoRG1iS0NqcjBqNmVoZkErWDFwZlgzV0JnZjI4ZS96Tjd1OXRadDFBb1NlMTl3MDdSZVl3L1E2Mk45TDNPN3ZwOSt0ZjdzZmxmUnhTVC9henNkaGJxdjhqUGg1dUhINnQzbGRNbzFmWHZ0Nmp2S0ZndmZlRHFGYjJsVHZLM3V2NnZwQklEN0Q1bk9FNjB5MTM0bzNZYzRaNVZ1enAxcnp6U0k2cjR5Mk02ZmNOdmR6VHZzM01jL0ZKZm1jOHdzYTd3OTd6N3ZtVzg4aWxwZVg5TTdHZ2NaVzlkdVR1LzMrbzFkbDJyRy8xNzRUdG1WOVcvczhqdUg5dm1PUExzMkZBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlMQ2NBQUxYUENFUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSURBbUFoWTVPckJTWWpSSXAyMXFhOUR2SDBkU2k5cDc4bmRoYzVIZGJ5K1ZGS29jZDVGNHRiVDFWajQwd2ZVTFV3V1RhMUZ0MXBjVkkrMnBZOXlOUmQxK3ZESE5pMnNZSkhIUzJkVTRBdkk5MGpDUlJuWm0yWHhKVXcvbTAvTHRHaXhKQitJenhIWHl6UlpuSzMyWWtOeGhRc0tSSjY1ZzVPWVhJM1EwM2VUeUtnRngxZU5LUzFFTUN3b2VvaWs4MXFCYTJqSDQ2OHZEejlkMGgwVzJQMkdwT2VueTA1bVIycFBvRlIwYlo0SHZ1Ujk2MDRJN2JQdDNmdTV4ZG9MbVpIZmUwOU5DWnV0dVF3YnJuU21JQUxYcTBtT1VlRGFZZzMva0FRSVZyWEFvZzJIU2pwcFZjYUN2M3V1Y21LYUp4VVUrM2xXaTd3NDBJUEZ5WEpFSHFQejdZbGZYTFF1N2FITnpCOFJFWno5YmQ4bkNWZm1FckM0N2g5a0NyOUVuK00vbXhPd0tkZS9TTDZvbjMzOHpxSysxTTRQSEFEbmRrbTg3S0FJeE1JeTNodDZscVJYZE1GeXZsVllkcEk5dW8vUTE3N1VxbVpFZnEvVE5tdjdlSlYvMi83M01jdy81ekV1R1VkcTVpSFRkVWZXMVZmb2hMTGVMc2xCRVVxVDkyd083K1psbnl3dEdNaHZQeDgwZ0ZpL3haNHRSbWxodjJVcE9rN1paczZ6NFgxN0J6bDhSb0JWdEloRjBOeit0NlZBWGorSkdxTGNWaEtvZmRkdEpaUUdqUnBhNERvblNHWnBzeUx2bnRJNm92bTkxK3p2SmpWNzVOTjF2eWZ0UlRnNHliWWtCK216ZUpmZnNUWHBwU2xRWm00QTNwcjM2TVRQblBkcFRadGFsSzJaWnkxaldoc0kwbXQvQjlLdzBHZHVpdTU3cjJ1Tmx0dXViY3ZuWjhNaTF0NDN2WC9qWUFZV3YzYmdVSXVqVyt5MGIrRmNpOU5lbzBFSGZVRFNseHZZbVRiaHNmT1dsY0dKek5NY1YzMS96WFc5aFU4ZUcxWUZwWE93b2RvZ0dWNW4rSjI2YXMzbHR2c1pjRkF4Qy9MUGlsbm5zckc0OFlzMjVQdXRBL1hkTlFYNjNUZTNnVXZ5ZlViUzMwbDZUZmV1ZHlDbm9WS0wzMi9PYjJRU0FNdHJaKytEejRyMno3YjNuUFRidFFnNktZL0FZZW41eWN2OXk3a2NHTVlCL1ZxUHdhVysxSjc1MllRNVp5bVRTZjZhUGRXYS9lem92RExhenB4eTI5elBPZTNmdER3KzQveVNOTjl0NmJ2M3V1OVk4VjFybFM4dlR1dm1WZmxhL2YxT2FkKy9sYjF0c0ZQN1R0aW05YTNQUCthZTRaM3QrMVBUbkxYVldtWWJuaTNhQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUJnclFRUXVGNHJmaXFIQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVFZ0h2VmQ1RzB0OUl1azVqS3FXWG1GZFZmL1h1c3BwdCtqTEJ1cE9GOU95TGhVV2lJazAxYmNpOWpHOUJBWXZMUk1XNFc0dHV0YmlvWHNPdGRkbWFpenF0ZmZGditRSGQ1YzVYRm9vMCtPS29MNk85c2JWREMremxpTFBQSytyZjNPTzZDOExIWm9wRnRtNU83Y1dHVnY1RW5ya2FZUXFMZEQ0MUNXVG5pQm0xRU9LeThQcHRKZjFMSzJnTjdleVZMajFiR0Q0bldkemFGNjB0bnBJcjZKRmpkOWZ6K0YzaU1jdmk3VFhKNzNCZjFPa3IxVjdJalB6ZSsycEwxTzRMSk4wOW83REZoVHpuaUlnTVdWQittWURHQXlzRE9VU0Z1M0w3TDJwL2xTaDFCdmJzTERYdndGd09FMmNjek9hUktVakFLZ0dDNlFhMEZybTJRTFVERmRTa1QzZlBwc1Y3TGZheVRPZzZPdCtlK01aRjY1cGUycHl5a2JGaWRwd292U3g5U2dvNGtpTlNGSDJPRWJpV2ZxUHdNWXlNcXc0YVlFRWNDMXI5Vm1GOUxiT2ZMc25QNFR1NmdFYzVhNHRKM2RGOWhIVmRMby84WHFjNWwvWnh5ejdhQmxzV1pMUjRVbTc2L1JTWUpqZi9kTDdUQ29RQUhTeks2K3VjZE04a0dGUnp2alN5cm5aOUhwZVB6bkZ5U1o1SHBIVnpwWm1MRkxlNGw0VTRMRllWRWVBdThjZmp4ME5Td0pXY2dDWFJjY28rbGN6bDlrLzdmcTMzOEhQWU9QaWN4YTQ5aHY5VE4yZjNPb3g5amh4eTI1bW45bDIzblZUcVd6V1V3TFhIZTYvekxXNllFeVF6dDJVZUgveWRZWXdCQzkyRzZQZVRaZTBmczZCM2JyOU41MnNSVURBeUI2OTVqMDc4TDNtZlJ0aTBLblBmN2x2ODhRRmp5N2g2N250RzhQZnNkN21EeXpySVhFbUs3bnRIbm84U3Y4ajdDd0pEQllPWjV1MTNnSU5iZmFpbmI3Z1dOYllBZjIxeThPWGE5YzZzRHo2LzhzRXVzTmZWS3B3N1A1M1hlVytGamVtaVYwekJGL2Vwc09meHlnRWdsNlVXYzhLY2NjR00vYTBwOTl0c1RyTzlML1dVSklnNU5qRSs3OTA5SiszbDViUWxrc2VpblY3LzV3YnBqTlF4S1ZNam1qdXhzV3F2ek0rNkJmZEw5Z3BXMmF4cDh6YVc5WG1UMTZidkJaSDJ0VDQ3R1BIQlpXcStkMGJyM0lWeU5iK25hM1pyeU1kMmdWQWQzQzBuUmZkeXY1bSsxK1o4bC9pUEx2Q3I5emRKdjB6QVF2VStxenEyd0FBUDdzNlovSFh3bk1taVB2WTZ5V2RjK2p4SGVRZEovZzViOHcwZzl4bDFJQkVIWlBsVWJvRTE1WXV1TTlmazd1RFY1c3libzA3ZEtBV2QyVE5nd04raXZKLzBpVUJaaWtBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0VBUEJJYjQrTkNEMjVpRUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFdG9oQTVLSlBTZk45UWVDQTdyTFoyU1dGNXVUMVJZWWpKUjBscVVUb3JyTGFyT0lXMC9PRnl1ZEsrbUpXaWZwTU41RjBxcVRjUThYdUI0dmorSUp6YVlvS2xTMjZ3Tkxpb25wcEcvck1YM05ScDZWZi9sMzRFcWt2RDBlU24yT0xRUG1DWVovaU5GRng2K2sydlZtU0x6Si9OZExRaWpLK21Ienp6UElXajd0M1p0N3BiSjlKNDl3eUVjRWZkT1BxbVYxL2wxNjJ2V0VxNTB2Tk9lbmtkTEhYRjF4S25vbW9RTVBFcDlZQ3BUbHR6YzJ6ZHhKek1zdlNaQ0hsWnhjSytaWFdzVXY1SHk3cDVaVU4vbXdTVXUvejNWMTdBV3NzNzVoSzFGbkZvL09EUGk5eFRSeVBpalRrOWwvVS9qWUtYUHNTODZzTDNyZXpENWVmaDBQVFdKMzE0QzNJVkRyWFhsWFhLcUhyNkh4N1V1K21pRGl0NHNUZmx4T0lqQlhUNDRSRlFkL1VYVTQ5c0FCMGllaFA5RGxHNExxOXdMWFhYTzRQQjR6eDNOei9IdHMraXRjeURySm13ZDl6TXRZYlk1NG56UHRKL1cxYVh4ZjgzSDRwcXdXdExPTDd2YWdCeW1VVHFCWG42ZU1kN1BtUXhUS3ZuZDJLK1JudkorbUVRaHMxNG9pVHFqNmYzalZmS0t4N1VmYkxTYnBkQ25oMnMwWTJWNW54dnBNRHJwUUVDNHlPVS9hbDlEbTZiTnBmT0dKVlEzcit1L2VLL2tpU2VaRjJqMEJrYnJwN2xNcGJQSVRBdFlOS2VmeXdTR1FreU5paVZyMmhHemN0S2pWV2NldUozeTIrVDh3eTJCYVI2MVlCQlMxODZIbUl4VnB6VTgxN2RGSkg2ZnMwMTdmVytXcmE2dUMyM2hlZlp1dnY1dzZ1ZVplZ294WURkWURPSEtHLzZTcWkrOTVEN09VR1VXeEZzV3QxNHBESE5CWUJMZ1hqZmRCSHBUTUpPWUZpY3UxSG43bForeVhCM0hKOU8walNPeHVJRS9yM2JYSEdGdWwzazBEZHJ3V041WW9ndHBnVExoc1hoamdqNUVBK0Z2cTM0UE82azRXdC95S3RFWWZ5eGUwK3ZQdXU4c2tlSyt4VDRMcG1icHY3RGE5SE5CdGwrZ2FTdkdmcFlPQ2x5ZnNIM3R0eDhNTjFKd1N1KyttQm9YNVBOWHU1SmV0dG5wUDV6OGxRL1Z6NmxQWVJ6Q3E2VGlyeHZXWnRXRktQODM0MGpjUGZLUzA0Y1A1V2MvNkIzUjZzdWo3WDA1NTMrNXpvN1lPdEdmcDdmOUJOaWtFQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRMkEwQ0NGenZSai9UU2doQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlqSkhBMVpNUXJpOHI5WjBzNnZuMFlDVStQT3NMWlMvc0x0eGJ2S05WZXFPazYzUUhjMzI1cjJYeUJUQUxETDhqY0JrNDF3OExySjRtNlhxNUJWSStpOFkrVHRLeGtrb3VsRWFGeWhDNEx1eWdpdXdXcTNPL3R2ZzkreUxxWHhZK0k3bXUrN3VJQllKZTFFQTh3Nkx0RnBEMkpiZ1M4ZVZjWDJ2elJTLzBycnBVOWR2ZGIvL0VBbkg3NlhaWXNNUy81eHpoRW90bysvSnlhU3FwWTVGdGoxVmZrZVIvUjVNRlZUemV0VXdXMVRxcFVCUnl0bjQvRjg4YjZUUGJrbFhmdHE3YkNUV2VsWjdubXJvZWtRSlUxTmhZVmJiMkF0WllMd211YW5mazc5RUxmSDFlNHBxMEl6cW01L1pmMVA2UUF0Y2xRUjVtK3o4bk1FTkxvWXIvN01Rbzd0eGQwbngvNUVIczFoMHR4dnRGVlZzczQvR1Mzam96MTNMN0hSVEljN3BJK29Da0wwY0tVbWFqQ0VUR2l1bHhJckt1czhEdTJ6TXBSZXpiOU5BWFhxTis5aUdXRnZWbDl2MWlJUmZiOGpoaW9WSDdPalpCNjJXUGtjZEdCelB6eGVsRmdvaGpuaWZNYTF1dGNNK3FkV0htejVKc0dRUXNBUGNlU1o3clJGTHJzY0cvWFl1LzErN3Z2Q0x0djVRSUZYb085SlpPWFB0V0VSQlRaV3JYV2Q0Nzh0Nm5nNVk4VUpJRnZvWkszMDJpa1JhSkxOazd0WC9SY2NwbG84L1JmaDJmMTZROTdxRVlUZGRqOFVLL2U3NjJqc3FwYyswRUluUFR0VHU5QVE3MFBRZG8rUjFoR3FjREtsaVUwK3YvVFVoKzM3NDQrZHpLMzAwUitGN1czdHJBbGJiOTQvUnU4RDVGU2FwNWowN3FpYjVQUy94Y2xOZml0bjlYWU1qQ2tORTlJSDg3bVJhNHZxU2tLeFhVUFp2VkFtZmZ6eXgvOU5SK2VzMis5emU2dllCbFFWNHozUWxuNitQN1VkaVpSZ1hIRWdCbHVqbXRSWE12bjBTazk2MWs1b0E4ZjlCNER1dmd0aytxOU12RkhmalJZM0dMNzk1M1M5ODBvMjdsemtsYXpBa1hmZU81YWdyYVZCS3NMOXBlcjUzdkk4bmpRd3YrcFg3NCs4QVRPcEYwbjZ0YVYzcUpwQ2YyTkorcjNTY3prM25mMjJybmRMbmY4TmJWSjJPcjF3SG9qd3M2WlFIMS9idEFPejdqcys2RWNIRS9QVERVNzhsN3VPOUxlNGVsTGNsOXQ5a3V6OGw4dWtQMWMybmZPci8zbEwyZjdQbFV6cG00WlhXMER1QzRySzdXUWJjWDFkVnluaG5wbjl3eU5ldk0zRG8yT1YvZlo2TnEzdlVsWSt3bTl3RytRd0FDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoRFlDQUlJWEc5RU4rRWtCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFTMmlvQXZPUDY1cEVjUEtIaDBqcVRiRklxdVhVSFNnenFSNkNjM0ZyWjJaOXFmZ3lWZFJkS3BRYUhZVlErRkw4RlpSTnNYd1Q3Y1VPeTZoZURlcTdxTFEwY1VYRTVySmJvMVlkYmlvdm9xL2tQK2ZkMFhPUHE0Z2lJK0x3QUFJQUJKUkVGVTNHbUJhMTlnTEJGQ1dzVzg1V1dTNmJxZTN3a2hQMVhTRDFjNU1QRGZveGQ2VngzNDV6SkhYa2UyRm4zMTgrdEFDMzUzMXFTK0w1dlUrTFlwWlZzSnZsbGM0WTZTdnRWencydC9zK3QreC9TTTU1Zk1SK2NIUS95dW9tTjZidjlGN2JjZTY0YnM3K202OXBIaytha0YrbG9saTF6ZlBzM0RTMng2dkg5bUp4VDBsSkpDZ2J5TGhLNERwaWl5UXdRaVk4WDBPT0hmbU9lYUZrekpTUTUyY2t0Sm44ckpuQVNXUDlpSmV2MUdadjVKTmdTdXk1bE4zaThXRUR4ZTBsMGFYTmd2N0xiZXNqdFltSU9HZldoR1hIYk04NFI1TUdxRmU5NGw2UThMOW0xNjY1QWRNR3doeERkVnRMTzFrR0lMWWNuSnZ1ZTVCZTFxdGVaMVFENExxZVdLSk02NmFKR2FkMHJ5L0hEbzVNQngzb2UyeUhVa1JjY3AxMVh6SExVTUZGUGE3cHFnbHFWMWtYOThCQ0p6MC9HMVlud2VyZG9icnZING1wSmUzd1ZjcWhVR25mWGhsZDMrMnBFajNKOWZ4Y3A3akMvdHZscytaRlhHZ3IvWHNQRDMwSnNXMUJYSjZtOG8zdVArd3B6QzE1QjBSaWNrNnNDQ05jblBtQVZDUzc4dDFieEhKLzdXdkU5cjJ1eXl1eUtBTjcxK3I5MzNybVZlVTM1YjlsVE5ZUEx0MVVGeVdnWUtyK0U3Vy9acEtmQnJpKys0RGs3Z2QwNU5zaDhXV2ZVM29oYXB4ZmcxOGFPbEFHeXQ2SGJ1ZmwyTE9lRzhienczU0VFaXI5Mmlrekp0T1BDeWhURWQ3SGpJOUp1Uy9rSFNqWWVzZEVGZEg1VjBqd1Z6aFJyM2F2ZkpYUGZzOTdZV2M3bmNiM2cxYmQrV3NnNm80ZCtHQTJKR2tzL05QU3BTc0ljeXV6SnY2d0hkVXBORC9aN3VJT21VTkFjcWJXUEplcHZuWkQ3ZGVmM3NNemQzTGUyTXd2emU3L1k0c2lwSVRvdHppZXVZRHh6UzdZYzc0R0t0TVBjeXJJdm1kdDRyZW16QnQrUENydnV2N1A3bTV6MlRWV21UMTVtcjJ0Ymk3MzJmamZJYy9MMWRVRGdINVNwTmZmdFc2Zy81SVFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWpzTkFFRXJuZTYrMms4QkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUUdKZUFMUGcvclJLMTltVzNJQzQ2K0hIaDRkeG5NRi9KV0pmdm95d2krMkhMUXFzekJ2OCtLM2JVUWpzbHh4WmZCZkxIN2JaTCtQWEM1MjNWY1J0SnhrdXh6YmJJL3ZtRHdwUXhEWXhHNHpyMUltZEdraFZraWx6Q0h1cWd6ejJsZmRIeHpkd25BNGdPdDAxK25Td3d0TGh6YnR6NHZaSHlzRTk2N1ovcHR0ZVlRdFJkNWxselhxa3RWWE9iSTY1SFdBZ1cvSmVrc1NWZk9xMzVwTGd1bitBTCtCUTFzN2FJSkM3MzRkL0tyRlkzM3BUVFBOeXkrMW5lcS9jMnU4eDNUTjV0WisxRWhpQ0V1U2tYSDlOeitpOXB2UGRZTjNlZGVrM2h0NHNBcmZhU0l5TFhGa0U3dStRTHBkRnMvM1YzRzlSejNyVE5Dcm4zd3dPYm1FNGlNRmRQamhFWEdUaWpBNERYajdib0FIOS9KTEJOZE4xcWsyV0xhUTZWTEpESHUwdnI2RUV1TE1wdCt2MFNlaTlLMlQvSmJuUDk1blpDQUE1STlwaE1FdkZMVVVFWTVyMFA5amppbUN6cHd2cVF4enhObW0rTzlHd3NtSDVqUnprVlpOdjBkWDlIMFFZdjY3S2FGTVI1WlVXdkxzZUVtRFFMeFJkYzZMZlpzUEMrL2JSS29yMENxcDNmclpZdmdEWlZLOXE2SDhpbFNqOGRtcyt0cmJqM3IweERyc0FnSHlneEhZTWc1eUhDdFduOU5xL2FHSXg3NmZXZHhydGRJdW5URXdKSXkvbDdsNzNtbFlzYkwzTmh6Z2JDUzU0TTNsT1Q1L0hUeS8vLzlCWUZzdlpmcnY4MG1pMFo1THQ2SGVOUXIwdHlpbEVrTDRjZFYzYnRvN0c0VjZDSTZEN0hmMGZuK2RKdGJ6c3RXc1p6OSs2NEk0Q0Z3WGZwazlKdmZhMDhIYWZFNWpMRW5CM0h5K1lhdlZqcGFHNkJvVXIxOU9iSFNsMG54R2hHNFdSZGF6YkZyaFdpOUQrUGc5UmEzVzVWYXpBbG4yOTNuK1lkVjdZbDhVMWhsYzlIZis1eWpSWDF5dVcrbUlFd2ZxREV5VTdiRlBHZjJlOXZqdS9tREE2SFhwTnh2ZURWMWJFdFppODIvcnp1dmR0VkFnM3dtd3Q4WlRnK1U3YVBJcnN6YittQzN6T1pRdjZlYVlCY2w2MjJlay9tOVBhK2ZXOHdGVmoydkpYMVhLM0x0OXZnNzJORG51Ynl2N29BWFYxd0ZJL2ozUmV2bDJ2Tk11ZTdrZnZNYXlwOWN2OGVXcjlWNllWRzdIRXpUWjJVY1NENlNoampiSGZHTE1oQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRWRvNEFBdGM3MStVMEdBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDYXlQZ1M5N0hTenBzSUE5OGVmdFBPc0VqQzNuK2RFbWRGdC93SWUwSEoxSHJQaTZVVDZyMzVlcERKWjAwNVk5RnRaODhzSENLcTdjd2xBL2d2ejhKdjFobzJoZm1GaVg3YVpZUGFkaC9YMHlpd3haeVdaWmFpRzVOMjQ5ZVZCL2lFSFRrNHNWUUYzV21HUTV4NGRIaWR3K1haTUc1Mm1SL0xSajFvcDVFSSt5ZkQvRS9LRjM0R1BxaXlUdytrV2ZKZGxaZHpPRXlSOTdUbUhzNUpzL2FMd0pFV0xDbFJUcTNFMWErUlRlZWY3bUZzUjIxc1kra1YzVkJJL1lMdHQ5bEg5cFlmR2VSSzdXLzJYVzhZNEpZcTR0RjV3ZDlYK0p5dzZKamVtNy9SZTIzSHV1cU96SFR3TVhUbk56amFwK0JkNzZiMWo1dnovVHJ2NmNMOWhZbEdUcFo2TnFpWUdjZ2REMDArbzJxTHpKV1RJOFRwUmYvWDVuVzZibVFvdXZHWFB2cnp0ZUhXRnFVMmZUNzVWcWRrUEo3SkYydEowQVdtdjZiTHRETHl5U2RNM1dwMzJPNUE0LzhwYVNiOVZUMzlCN0FtT2NKczgyUCtqcHRaMVBmOFQwOUNyMlp2WXFrTXlWZHY2S0dWbVBENWRKK1pZMHcrbVRlV2lyQXNYY0svbk85Q2c0dWVwU2twellRLzdoUkd0Y3NjTnBuOGx6UisxNnYyN0w1bHdOMC9VVVNKT3VUMzZrcGVHS3J3SGg5K29ydGZnaEU1cVlUVHg3UU9PaVlCVDc5N1NzeUovbmZrdTRrNmVzTk1mMU9Fb094S0V4cFdyVTNYR3JQYSs3blNucEVhY0dNL1AvV0JhQjdUdHJ2OTd6UVlwcXp5VUo0dnpubnZ6dHZuOEZTTXR6dk5Zdm55RThzM0h0c0lmeTRxbEdMOXRCdWxmWkQ5bGhsWU1YZkhiekwzMkFqNzRZV2MraFc4N0lJaGwwUndFUGdPdkowOUZQbTZ1bGRzMjgvNW51eDZuTUovcDA2YUhFMGVlL0RBcXRldzlTazBqMnZaWFdWQnBSYjVYY0w4VzJ2ZFgwR3hlL2hTSExnK3YyVDBQR3E4alZ6d29udDZmZFRxL1hwS3IrWC9kMW5aKzdZQlN2K1ZvMlJGV1dIT0R0UjQzNXJvZThXODV6cC9kRGZTOTlTYXZjTmNyL2gxYkRjbHJJMUFRYkdkalppVitadFF6OTdRL3llTFB6ck5iUFBpa1JTeVhxYjUyUSs0VTBRdUxiblVaSHJhTUNxeVBNNHI0ejN0M3grK2srNzczSSt0OUFxTFR0UFUzdWVLZGZIM0c5ZVEvbVQ2L2ZZOG8zNWJKUlpuWkxPb3Y5b2JPRHdCd0lRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJREFyaEZBNEhyWGVwejJRZ0FDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VCZ3ZRVHVrQTZTOXIwM2VYSVNhTE5vODNSeXZSWndzckRubmRQRnNDc1BpTVFYN09hSnZQUWhIaDF0MWpjNmR0OU9vdGUrRFA3NlpNamMvckhydjV0RURTOG9aeUZ5WDd4OHd4SUJtaGFpVzlQVlJ5K3FJM0Q5QzRwK1h2MHNQNnZ4c3pCdExpTEFrT09PeFdndE1IK05uTXpCUEJhdVBhS1JNSGZRaFo4WGkxN29YWFdwaXNzY2ViMlNlemttejVyMHQwbEFQVGYvc254RFhEaHA0ZWZZYlZoVTBjTDV6MC9qWXE2LzMreEU3QTZRZEhadWdjcDh0Yi9aSVM2RFZqYXhXZkhvL0dDSTMxUjBUTS90djZqOTFtTmRzODVjWU1ockFjOWxYMUloVUovcjR3Y2szVnZTRjNJTFRNMjVuNUxFRHZzTXZMUElMUXU4UERxSk9vNGhZRWNoUHJMM1RDQXlWa3pHQ1YrS2ZsUDNiSlVJcDFyMDg2OEwyaFJkTnhaVXNkYXNmWWlsUlpuTnZsK2UzamhvbDRPRHZVUFMwWjNnNDRjemhQbTh2bnRNRWs2TUNEbk82MWdIZzdIUTNuK2tQNDU1bmpEcmY5VFhhVHRlMXo1cHJVLzh1Q3IvWGhkRTcvczl1TlJpbjdURjJOQnFYL0pkU1R6Z3ZBSldyWVMxV3dxQWVjN28rYUxYZTMybTcvVDBYUFhwYzY1dHoyUDlqdWx6UGxzNlQ4ajFuWHliUXlBeU41MjByc1hZT1UycTV0MmJ1MjR2NlptYXZhQlZlOE81Zm5nc3ZVMEtWSEtkM0VMa2EwcGcwZmZJUlpXMEVINWMxWUI1ZTJpZUM3d2x6YjFYbFYvMmQ2OGhQTGM2TFdpazVuZmMxOWhTMHBSZEVjQkQ0THJrcWVndnI0UHorUXhCVkx5NFA4OVdXNjRWelhWQTk5ZW1kYy9xMmhibmVHOEtjT0cxWmszeSsvYnZ1ajNvdzJ1TXpKVDFmc0FES3dNSCtYdTg1eFRSUFpvU0gycm1oSk9tVDk1UG4yMFUrS2xGZC9SNUxzWFB6ZVBTOTgwV3Z2WmxvL2IzT3UxWGkzbk9aTjV1dnh5bzZpNE5HdDdIV3FDQlc2TTBVUm84YzdvUlBoOTBtS1R6UjlLeVhabTNEWTE3aU4vVFFaTGVtY1NMSSswcldXL3puTXdudkNrQzEvYmU3MXNIV0hOZ2s1dzkwc2plZXVRNXpDMXpoVzZ0N3YwbG43SDJQbThrK1ozNXo1TDh2Y0NCUHVjRm82clp3eXJ4S2ZkY3kxRCtsUGcrcHJ4RG5JMjZaUmZzNXQxZFFGT3Z2VXJUVjlNeisvblNndVNIQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCdGdUNkZwRnA2eTNXSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFnVTBuNEl2S3AwcTZhVThOK1p5a2g2WUxjM3RLOHNYNTMrNHVHUHlCcEZ1bmk1WTVoOGI3Y084Wm5RRG1zNWNJTS9tQ244VlRIdFJINVFHYjh3NGs3eVhwTlpKdUY3QzNxc2lmZDVjY2oxbkFwNVhvMXNTSDZFWDFQaThTVG55TFhNSWM0cUxPeEQ4L0E2K1FkTGRWSFZyeGR6T3d3UFZQSzJ3c0szclZKSlJuSVpPKzBxY2wzYlBqOVBHK0tzaXdHM21XYkhiVnBTb3VjMlRBNzk0M3VaZGo4cXhKTFM3ZVR0ZlZXc2dudHgzYm1PK2FrbDdkelc5dW50bTRQMGxqWEdiMjZteTF2OWtoM3pIVmphMDBFSjBmREhHSkt6cW01L1pmMUg3cnNhNnlDNWNXdjdva1g0Qy9hNStWSk50UFMwRnQ1bDNTekszZWwwWTk5N1RZdEVVbmgwNFdpWHh3SjlieWI1VmlKa1A3VFgzOUVvaU1GWk54d3IvQkQzWnJpYXRsdW1peENRdmlXZkFuTjBYWGpibjIxNTJ2ai9sYmxObnMrK1ZHU1JqZit6QTF5Yy9JQzFKZ3RCOEVERmxJL1I2ZFdJa0RCZFFLS2I1VTBwRlRZK0NZNXdtenFLTDlHa0MrTTBYNjJBOXFKYUpjT3piWWp5ZWtQYm1hRHYxSzJudTFJRmh1YWxWM3JhRGxQSCs5dnJQb3hoNjVqU0hmb0FSbWd4QU1Xam1WallaQVpHNDZjYjUyN0p5RkVKMG4yRTd1dXIwRWZNMWUwS3E5NFZ3L0hGeks0MmhVMkRLM0h2SXRKMUFpY3QxNi8zbWVaNHUrT3pxWTZoOVhkcWFEOVRxWXJvUHFSbExONzdpdnNhV2tIYnNpZ0lmQWRjbFQwVS9lVFJhM25oQ3BGYzE5bUtUakt2RzJFbDY3WXZxdXUwK2xQOVBGUDVyT2dqZ2dUelI1UEQ0aFdsalNmU1dkbUZtK1prNDRxY0x2cC8wbDNiYkIyampUN1pYWitscnpsSXB0cm5TMDV3d09GdXgrK1hwbFBTM21PWk41KysrbXZjc1c5M0g3V0F0VW9ocGw4Y3NuVWVGOWc5Nk5MVURXcnN6Ymd0MFZMamJFNzZsR2FOME5LMWx2ODV6TWZ4UTJTZURhTGZDN3drRVVYN1JDNU5ydnV6dExPamY4QzlqY2dqVjdXQ1d0emozWE1wUS9KYjZQS2U4UVo2TnExemgvS09uTlk0S0dMeENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVkcEZBaXcvcXU4aU5Oa01BQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSnhBcjZRZG55OCtOeVNGako1Y2pvUWJpRzVneVc5WThYaDhNWXVMRFdYSzlocjhicm5TSHI4a000dHFPdTFrdTdYQ1VOWldHdzZXVERLbHpiZGo2M1RxeVFkMFFucnpBcFpSY1daRmwxZ2lWNVU3MFBRYUpaaDVCTG1FQmQxN09kK1NlQzhWaWhzMFhQajM3RUYzbjNCOElMV0Q5ZU1QZi9Xek5yQ0NYMGxDeW40c3B6YjA1ZFk5ekxmSTgrUzdhMjZWTVZsanJ3bkp2ZHlUSjYxOWdMWGQrcUNUYnc5dDNMeXJTVGdNZVV4S1pERk1pSGFkM1Zpc1lkSU9tK2x4WFlaYW4relE3MWoyclU0YmlrNlB4amlFbGQwVE0vdHY2ajkxbU5kdlBjV2w3UlE5TlBUSExNUCs5TTJIV3pIY3htL1MxdWxkUXRkbjViR3QwKzJhaEIyTnBwQVpLeVlqQk8zN0lSaTNpM3BFcGtFZkluN0ZwSXM1cEtib3V2R1hQdnJ6dGRhaU5IdGlUS2JmYi9VQ1BWK0xBWC9lRXZET1pMOXNhaWl4Lzg3QkRydXg1MGc0d0dTUGpCVmRzenpoTmttUnZzMWdHcG5pdlFoaEdQQi8vZEoycnVTWXUzWTRQWEo2eXIzVUwyZmMyZ1haUENrcWJaWThINVcxUFMzSkZtY1lKTDgvNTlaV2JkdEhTWHBxWTMza3V6N3lkMDRjUHZLL3FGNFB3UVc3VnYzVXh0V3gwb2dNamVkdEtWMjdKeGxFcDBuMkU3dXVyMmtIMnIyZ2xidERlZjY0ZjB4QzFNNitBaHBmUVQ4anI1M2V0ZXYrdWJTUXZoeFZVdVg3YUU1S0pLLzF4eSt5c2ljdjN2K2ZsQUt1aE1vL3ZNaU5iL2p2c2FXa3Jic2lnQWVBdGNsVDBYN3ZGNjdlSy93ZXUxTkQyN3huSFNlSkNJaVdQT2VuVFRVWTdJRGlwOWUyZkxTL2JhYzZyNG42Vlpkb01oL3pjbThJRStOQUdpcCtIZk5uSERpdnQ5UEhsK2VLK25TRmUxdVhmUVpuVUh2YmJWTUxmWUFXdnFUWTh2QjF5ME9HZzFpNFRwYXpITThiN2ZZdG9QaXRkb3I2R010a01OMDAvSTR1SUlEWWU0VmNIeUliN2lsYnUzS3ZLMlVTMjMrdm45UHRZS3JibC9KZXB2blpQNFRzV2tDMTI3RnFpQ1BOZlBTMnQvTkdNcTNtRnZudENQM1hNdFEvdVQ0UE1ZOFE3eFgvWnR4c0J6dlowWFMwZWtlUWFRc1pTQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFLQVJBUVN1RzRIRURBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUpCTjRDcWRVTkNaa3E2ZlhXSjV4bytrQzgvVG9tc1d6YklJc3dYbTFwbDh5ZXJCU2RCNzFlWHhpWjhYVHdKOEwyZ2c4Qkp0K3p3eHAybGJmUXB4dnprZFVKNFd1WTZLTXlGd0hYMENmcm1jdnlWWTdQeHZPL0hXWmNLdE5iWDVBTHpGa041V1k2U3dyTnZsUzBHdjZmbXk2dXVUMFBXM0MvMnJ6UjY5MEx2cVVoV1hPZko2SnZkeVRKNDE2ZG1TbnBTYmVVVytGcGZURzdteWRXYjJTZUk5TjU3VE1vOXp2dmo4b1lGYlhmdWI3ZnN5Nk1BNGxsWVhGYklaNGhKWGRFelA3YitvL2Raalhjdm40YkpKbVBrcFBjNWZwdjAxaXlNbGZiZGxJNlpzRGQyZTJXWjRQdk80Ym0zenBaN2FoOW5OSUJBWkt5Ymp4TVBTR2oyM3BSOU5Rai9meVMxUUlkWmNVTVZhczdZV1luUmpXcTYxYjU3MmV2YklvR1JSNjJNbC9XTTNkbjRySTM5TkZnY0tlRVNhUzgrSzdTNnkrOWEwUG5VQXRVa2E4enhodGgzUmZxM2h2TzFsKy9qOUhaYjJJMnJaK2FLL0JiaG5nOFhsMkwxekVyd2NrNEJYanQvVGVid3ZmTWVleHBMU2QxZXA3K1NQRTdoWDkyM0JJdGVrM1NZUW1adE9pTFVlMTZQekJQdVR1MjR2NmUyYXZhQlZlOE1sZmpqUXlDbEp6S21rSEhuYkVwZ1hpR0plRFMyRUgxZDVuck9IZHEwVUFPZXVxNHhOL2IxRjRJT2EzM0ZmWTBzQmdwOS82L0wzMVcxUENGeXZyNGN2bHdMYUhMZytGNXJYSEExSWVubEo3NVMwYjZWSER0NXU4YldhMU5lYXhZSE9IYWdpa2h3cy9VMWQwSUhvcytLNWcwV1lmNVJaZWMyY2NMb0tCNnYyT1oweEpaOS8rdi9aZXhQWURhcnEvUCtKMng4MUx1Q0NLVkJVdEhWcnRRYkVEUUZSUUd4Q1ZFQlVYQ0lxS29vVnhLUzRJQXBXUkxBdUtMalZSQVJrODRjTHUySkVWTkMyMmxiY0ZRTlVVUkRYeU0vdDk1OUg3dWc0enJ4enp6bDM1cDMzL1Q0M0ljRDN2Y3U1bjVtNTI4eDV6bzdWdDBQWEZUTHFYdFY3eWsrbjg4QkNWVTVTRGRjeVhCZEU1cmtTNnh5dTJ3OUp6MGJPK1djT25ESDJBam50cmxxZUo3YUNxbG5zTC8wY1dkcnV5N3RSMW0wbFdGbnFHUHQ1S3JHL3RleTNkWjkwWC8xVkZMaG1UN2pHZUhuSDJ1OHJBSGhHN3dtNlluays1cHczY29abDZWZnVkeTFUMldPeGZVNTVjODUxU3RnYjJlZHduN2VuODUxWkNkdFZod2lJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0Q0YTFUMGdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpS3dKQUt2QVhCNHNHMkt4MUhBNVRRQWREaHJwMlU3YUYyVm5POG90T0pKZEZiN0FJQ3RQSVdEWlhLY3dmbnhQUjI0amc2MjFTemU1Mmp2RldlU3dIWDg0dEFKbGNKano0cFgxVnNEbnhXS2lsRGtiQm5wN2dBbzJoaDFSRjVrKzdjQlVIekhPeDU0dUhnZGVvZWNxdVRNa1hjMWNwMWo4bW9EU2pqTTFXMVJZSGszQUQvTmJWejVUQVFvbkhobzlSNzJpRllwUHBQSFZPdWYzSUFYcGtZWFpJNCtzMk03ZzVicVo0bDZ2RUkyVXpoeGVjZjAzT3ZucmIvMFdGZmlPbElJK2lDamtHbWtYZTVKbnBhQ2RFenhmQzliNkpyclF1N2x4aGFralZ3VGxSMlBnR2VzcU1lSlk1TkllcTUxZko3MkFuQldib0dBV0xPaGlhVm1MUzNFeU02VTNHdHpEZlRodE03c0F2VjVBQXprUlJHb1pheERHYXlKYStwWFZXUDJkZ3V1Sk8rOVBRQ2MxOG96NTNWQ3V6dlI5ZDlTYi9TWk5sNzYrV05nUHA2OVViU3JSR0pRZ0wycnM1c3JEWld0ZzdqMTJFR0VLTEI1Q1lBdERGeVZkWHdDRkh4NUJJQnJ4bTlLTGN5Y2dHZHRXbmVwOUxqdVhTZlFudHg5dStWeVJOWUNRMmZERmpzb2hubytnTzB0aFpSM0ZBSS9TV3VGaXhiVVhrTDRjY2g0eXhrYUF3bSt0MXFYUDNTZ1VrdWRpNnFLUE1kampTMURQSnUvYnhRQlBBbGNXKzZLY25rWk1KanZQRXArRTFET3VsaE5EQ3o3QnNkN203ZW1ZSWVSMXM4RXdNQkh2M1ZXVW5wZjJUVGpiZW1NM1dQYWx0WDVDOCtBdlB1bzVuT2UwMzVrVFpoVC96THo4SXhxVndDTDV1OWMrOFlRcWVmM0QrOUx3dFBOOXdVTU52ZW9hcy8yM0NxNFhWZEE0RnlibS9taXdhMUtySFArdHhMYS9uSUtzdVhwUTFlWk1mWUNwV3liVXoyUlFPRFJzWFlNRGh0bDNUWUd1MFYxanZrOGNTM0V1ZkhBWUtjcysyM2RKOTJ3VjFYZ21yM2hPNnJqMC96SS8rZTU4ejdWdDg4L0NONVhxMTQ4Y29abDZYdnVkeTFUMldPeGZVNTVTNTNCRFBYcGtWV2dsNHNCY005alRYeHZ3TE1rQlc2M2tsTitFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFU2hJZ0MvWWxFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUmdhZ0lQU0I5cTM5SFpNRVdUS0Z3MzlDRXFCWmpmNUd3alVveGl1UlRmL25Ha2trcjhpUUoyZEpKNFJyQWVTL0ZmQTNoTXVqNUQ1WGpHL016a1pINnpvY3dadi9lSmY1WVUzYUlaSlJ6Vk03b3pXWmF4SEhYdW13VGw3ak5pVHp3aVRHT1lNNFdROTI4QXZDdzVySFNKOHBmdWw5ZWhkOGlwU3M0Y2VWY3ExemttcnphQXpzRG5Eb2p4NWRiMTRpUmNuNXRmK1h3RW1vRXFQcEhFNjVZaDVoaDlac2VhWTN4VXh5M2xYUjhzY3VMaVdvbHJwSHJjNTlxWEFnMmJHYnZ5WUFDOGx0YVVlLzI4Y3daRkZDKzBHdFhLVDlGOUNoWkYwOVRDMXJTWGU1SVhMc254bFAybFNPdExra05zbEorbFBOYzBSd0w0MTBxd21BTGZTaHVIZ0dlc3FOZEVPeVF4bGxzWmNGRU03d2tBZnBWWnhydHZ6S3grNmRsS0N6R3lRMTVtZmZNTEJmOVBTcVE0VmxDZy9QMEFQbFhOZnpjdW5lQk5CbkJ1NWw2WDkvTithWjV1bXRZWERHYU1kY0pZU0tMcnY3SHNXdVY2U3o5LzBYUFJMcGJYQVhoeUpTTDF5UUhRZkFhZUR1QTlTMWhEbEw0SHhnNGlSRllVNnhvejZGdHBKcXRjSC9kVkZQZmpPbmRSNHJ6eWJJY0k0U3F6a2UzZEJEeHIwN3FtMHVPNmQ1MUFlM0wzN1piN0lMSVdHRG9idHRqQnZDOUs3N2lzNVpTL1BBR0tYRFBvNGVVOVZaY1FmaHl5MmlxRXhMbDQ1L1JPcGU4OTFWdXFBRG92TFRBdlJKN2pzY2FXSVo3TjN6ZUtBSjRFcmkxM1JibThERlRBZmNadHlsWDVGelg5Q01CL1ZkOUVmS2Z4eTEwQlBDU2RYWXpWdERkb0R0Y1Nad2VOdXFJU2JlTjdKTzdsUElrQzBwY0MyTnBUZUtETVoxTHdyNTg3Nm82STBYRS93SEdmN2VlbXlKb3d0NDA2SCsvVHoxYnZCSDZZL25EUFN0eVo3MjQydFZaa3lCOFJHMjgyVS9LN0tRcGJ2eUNOQzBQZlBEQndGQU1mOG93M210am1DYzVLcGxqbmVFd2JZeS9nc1dQT1pUWUJRSkZxQmlUMHBGY0FlTDJuNElobE5zcTZiVVNFblZXUCtUeVZDb0puMlcvclB1bStnMVpCNFBybTFUa0l2Ky9pdjl1SkFTZjREbzNyUDM2MzlZdXBINVFKMnVOM3gveGVPamN3ZU9RTXk5S2QzRy80cHJMSFl2dWM4bHJQZGJ5MlI0TG1lUFlVWGp0VlRnUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVvSWVBQks1MWE0aUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNDeUR3QzJTODlIK3hzYXZTcUlpRjJkK0NGMVNFRFRIVkFxOFVkRHA0NW4yNWRSWk8zQy9DOEEyT1FXQ2VUNEdZQitEaUJpYmV6eUEwNEtPcmU4R2NDQUFpbUMxVTJuUnJSS082a0hNUll1WGR0U2hrd1dGeStrZ2VNdWlsdjU1WlJRN2UyNEJJZmhTSnJMZkZOdzRya1BrckZRYnJLZVVBUDZRVFY2SDNpR25Lamx6REpHLzZmZGM1NWk4Mm03SzlhUTAxa1lDQ253QndPTXFaNm5yTFEwcnI1c0FoYmxlV3drTS9Gdmx2UDFsZHkyeGd0Rm50dlFjRSt2TnVLVzk2NE11Snk2dVFibk9aV0FEL3Z1anlYVHZtc2JiODl6cjU1MHp2SFkxeTBYSFM3S211TTJVUXM5Yzh6T1lEZGUvUXdJT0pSZ3Rxb1A5UHp5dG95UHpnOGRPY3FDSTFDbkd2WU9uTFpXWkJ3SFBXRkUvNDl4WGZCREEzb2F1MFBtWndoWG5aWmFaZW96Tk5LdFl0dEpDakRUTXk2eHZmbUY5RkkzbXVjSTNaakJHRHNGbm9LUG5WT2NRRkRxNVM4cmNGd3ltNURwaHlLN283OXRWZ2xEYzE5MDZXcEhLLzVFQXh5SUdIQ3FWWHBQbTcxTDExZlg4dmdvK2NYQUthTlMzUm5sMUpmUitST21HbDFDZjUvelNZK2J1bGFqZU9Va2N2Njg4UmM0WXdJMTdiU1UvQVk1YmV3S2dnQ25YMmp4ajd6cVhaSjZQK0p0UnlUVWk0Rm1iMXQwdnZhN3lyaE5vVCs2KzNYTHBJbWRCUTJmREZqdVlkL01VN0dUTUlKcFdtelp5L20rbVBkYTNPaUJNSWZ6b0ZVTGl1eHUrdCtRN3EyWWdoTzlYNHBxUHF2WWdYZjJ4WHVmSWN6elcyR0xwdzBZUndKUEF0ZVd1S0pPM3hMUFJad25QZXloU1B4UVVpMnZDKzZXOVRsZWdxbWhQUFhzTENodFRYUHB1Z2NhOVkyTGRKQU9XWHpDd1YvR2FSMUZDQ2xWLzFWSEJBUUVSWW8vb2QyUk5tTk05bm9FZmxZSjA5cjFiNVJrOXhaY1BHK0VzaG52TlhhdjNIemZrR051VDUvN3BPYnR6b0k2NktBTU84WHVLWHhycUt2VU54bGNBUExvaE1HNHdBVk9zY3l6MjFIbkgyQXQ0N0poekdkNjMzS053SHZDazBtZDZIaHZhWlRiS3VxMEVLMHNkWXo1UHpjQ2VGcHZhZVMzN2JkMG4zYVJYUWVEYSs5NHRjbS9OcWF6bFBxZmRrVE1zUzc5enYwbVp5aDZMN1hQS0c5M0Q1UGFGNzI4WlVHaVgzQUt0Zk53Mzhyc0VKUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRZ1NVUmtNRDFrc0NyV1JFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVR3c09WTGRLcFBGMjVQb0VKM0lMSWxpQlI4ZVdiQ1dvc3hIQXZqWHlyblNhbDl1WHloTTlCUUFiMjQ1Y09lV3o4bG5GUkJyMWtrblNncjMzakdub1ZhZVR5VGgxcC8ybFBWKy9OL253REttTTY2aisrRWlKUjExS0E3d05nRFBDRnUxdUFMZXh4UVIrOVhJN1hpcXAyUGtoeXBCcUJKT25uM3RmenM5enhRYkhpdDVIWHFIbkUza3pKRjN4WEtkWS9KcXV5bGlTbDlFQUFBZ0FFbEVRVlFYMytzZFdqbEhIMjBwMU1qN0V3QzdWU0ltbHp2THE5aHFFb2crc3lYbm1Ma1Q5SzRQYWlldS82cWNySGRPZ3I4VXdxc1R4ZWtaMUlISnU2Ynhzc3U5ZnQ0NXcydFhzNXgzdkx3SEFBbzBQcXVFRVlZNnVLODRxQkpFdmRwUVpvcXN2TGZJZzJLQVV5ZXVheWpnOGNrVkVMT2RtczI2dGVjWks1clB1UFVNZ1B4T0JmQjBBTC9OZ0RuMUdKdGhVdEVzcFlVWW8vTVN4ZVJ5cmt0UkNDTlZ4aUJzdkgrWUtGUjdZMGM3RENMQVBOWmdBbE01ZXpkTmx2aEYyUnVsOURXY1F1aHowWmxMUkd5c0xGbC9iUlRuZkN5QTcvbXJ5QzY1NkhwOUthMi9LTXpIOWI5RWw3T3hkbVpzbjBkUnlQQWhWWUF1Qmg1NFloSzd2Z2JBRGxWZ3Z1L0dtbExwTlNIZ1dadldYUys5cnZLZUo5Q2UzSDI3NWJKRnpvS0d6b1l0ZHRSNXh3cnM0TEZGWllDK2VYUUs0Y2ZvdW9ydnJ5Z3lTbUZOcHFiWWNmVGFScDdqc2NZV1M1ODJ5aDVBQXRlV3U2Sk1YZ3FEZmFCTVZYK3NoZTlHZWFaTE1XTnJhbzhEMXZKZCtmbDl4RjZOTS95Y09ubU93RE1ybnYxSFVrUjRqZU1oQlpYSFN0N0FNdTlKUVQ4OWR2RWJCWjY5VzFKa1RUalVEczgxdVIvSi9mNkhndWNuQllUNHV1eUppSTJ6UHQ2ckRCREJRS3pSZEN5QWYrNEpXRDlVZC9RZGQxMC92NWZpczJkTlU2eHptalpSQVB6YUZBenJGMG04azkrZXRNOFd4OWdMV05uTVBmOTlBWHdHd0dZT1EzK2V6aENXRllTNnorU05zbTV6WExKUWtiR2VKMzZyeVhmRC9NNG1tdmhPaGUrNytENlY2NDlGU2ZkSk54MEpYRWZ2d3ZITFc4K1ZJbWRZbHQ3a2ZwTXlsVDBXMitlVU4zcXVZK25MVzlOYTNGS216dXZaVjNqYVVSa1JFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFSUVlQWhLNDFxMGhBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpS3dMQUs1VGdBVVRLUERGVCtBOWlTS1lYd1F3TjZld2dObGZwOGN3aWh1VFVlRUtSSzVQYWNTajNzVmdMc1VidkI4QUU4SWlBNXZDK0Jjb3pCd2ppaU5WNmhNQXRlMkcyUTdBS2RVanNyYjJJcVpjdk9aT2JpNlJ5aFkvenRUeVdrejN6MEp0dk9lSGl0UkdKOGlsSFNvSElPRjE2RjN5Tm1Fem9NVUUrTFlXaUx4WGRWTGdUOEVQYWpUSmNtUm5NSkZRNDVkSld3WW80NnJBRncyUXNYa3ptdjdPbVBkdElmaVBSVGdVdHBZQktJT1dHTTVnODd4S25pRmJDanVlV0VWdUdXblNvQ2U2N1IyYWdxdmVOYzBYbDY1MTg4N1ozanRhcGJMZFNaa21adFhhODN0cS8rZ09CWkZEYWRNRkxGNEhvRFRaajQzYlpubWlLbUZ2M2t0SXVJMFUxNUx0ZVVuNEJrcm1zODRCVlVvaXJTdndRUUc2T0RhODM4eXlqRFlFc2RjajloRlJ2Vkx6L0tPRWRaeVU4OUxTNGU0QkFPbWRQYXV1eWZ4aTdJWHV2UTE1QmpJczVleEU0UEpVU3p0QjYyRzdsbXRveTZ0empNcHZMV0tpZWRLUEx0Y0pDYk5ZSW84Y3lsMW50QVVVbUQ3RkN4ajRLbXZOdHJRY3hlL214YWRSL0VzaEh2YnY2bitPWG1OQWl6RXFXM3NHanhyMDVyWURRQW9ORmNxZVFOaDFPMlhEaHl5U2VEZDBkRFpzSWZaQXlxaFI1NzNlb0tqZXRwVG1XRUNYVUZucHhCK0xMV3U0dGtIUmE2UEEvREQ0ZTVtNWZDZUN6WXJMeTJlbjJWNHlyUkY2eDJMcGV5aXZKc0NlS1B6K1dXNTBrRmV2NUxXWUxRNWV1NWRpcEduSHN0NXFLZitVbVh1VU4xWC9IYUE1N0dsRXI5djRGcWE2M1Z2NG50RnJyKzVyN3FOdDVKV09jODNFaVdDQjNtRjEwcU1XVVBvUExiZHJncFNjdzZBUnc1VjN2TzdSMVE3c2laY1pDYkZ3em1PV2QvaDg3azVzN0RJOVI3cEd4d1AxbEpqNWJ1cm9IQUhCcDlkdmovais1Vi85SFFrbFNGYm5xdFlnKzVOc2M1aDBMdzNwVzgvS0c3ZGxUaCs4VHlXWXhpRFduT3YrOUFKdnpVTG9GOWEwY2NBdUNBRkFyY2E4WjJxN01PVDJMaTE3Smo1bzJkSXkxeHpqc21GZFVlZTFkeDM0dFkrZUFLM0RyV1I4ejUxclBWOWwyMDhRM2hsdGJiNjJ5SERlMzduV1IxRndLZElEQ0R3cWRaM3JXT3RCWnI5c1p5VmJQVDNiaFpXWkZ4cXJUSjAvK1h1d2ZpOUtMOWg3UHJ1WjZnTnorOXNML0xkQzkrQm5KMkM5M3JhdDViNUZRQUdXTDNTV3RDUlA3TGY0cDZFd1lpNkFobzdURkVSRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkt3RUpYRnVKS2I4SWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUVCSkFrT2lMb2NET0NZZ3VGemJldi8wZ2Z1ZEN4blBqM1ZmRCtDZEFLNHZWS2UxR2pvNzdaNkVyaWxNWENJOUJjQ3B3WXJ1QytCakFDaVlNNVFvVnJZYmdNc0hNbm8vL3BmQTlkQVZ1T2wzZnBSUEI3b2o4cks3YzFHOFlCOEFIM2ZYTUcxQk9xQytweExUMjJ2a1p0K2Z4QmpvaUZNeWVaMTRyTTRtVVp2dmtRUk82S0RWVGh3alBnU0FqUDQ5NkRRYnRYTk81ZmwrYjJjQTc4b1VwS2VnL0NzcWNYbUtzeXI1Q1ZERVlTdC84YVdWWk5BQ0J1S2dxS2duOFRsOE9RQ0tQNjFDK2h3QWl1TjcwbGlpRUZ3ejhobGs4cTVwUFAxaG1WeG5YdStjNGJXcldTN0htZkMyS1ZnTm5XdkhETVRSMXgrdStTbWF1MHJqS0oyUUtjQkJSL2VwRWgwb3VXNDZhNm9HMWM3a0JEeGpSZnNacDFqMVJkVittdUtqdVluN0ZBcmJLNVVuTVBXOFZMNEg4Nit4bElpZnBhZFBUR0pLbGpMSzIwK2c1RFhNRGZaWDZucFF5SWZDVVJSaXJwTW4yRUFwZTByVXc3bUlaOFY5NHRVOHl6a0R3TThCSEZRRkNieTZRS01VVTNwTGF2ZjA2Z3l0Ni93bUtrNVV3TXlWcjJMcTg2aVZCNllPL0NFQTNCdkVvVGlCTVo3RlZaOTdpa09lU1lVODYrQmNXUXRFUnNUa2NydFVjbDJWMjJadXZoTG5ndXNvTmhqWk00N05ZeW9odE54N3lKSXY1enpVVXQ5WWVZZSs0N0MweTBBeEw2a0NNQnhmTUJBTkJjc29sc3RBRTlIMDZ4VEFrdThYY2xPSmU1QUJCeWpxYkgxSHpPOHhQak55a0RmUG1pQVNVSW5CbVI0QmdQdFlTeHBqVFRpMDd4eXliK3NVRlBYZVF4a3pmejhrQlhYSXpQN0hiSHlmVEtGeUNsTkhFb1ZZSDFmb3V5alAyWERUZHU5OU11WTZoK01iM3dIeTNJRGZrZVVtWHArL1MvZDh5ZUE3dWUydlNyNm5wVUJqSG51OVk2eW5MVXVaNkJuUzJHc3NTMTlLNTQwOHE3bnZ4QzAybHhwSCs5cmtkMUFNL2xIaS9OTFNyM2JlNkY2b0dldzdZb2UzN0JocmdiWXRsblZSWkEvbFpUQ25jaFpXdEx2RW1qcW4vM1BkZzBYbmhEbWZzK1JjbDBWNXVQNmtVTFVuZlJIQXJpdjBuWnVuanlvakFpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FyTW1JSUhyV1Y4ZUdTY0NJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ2EwL2dyZ0ErQ1lBQzFNMzBKUUIwVkxtaUVBR2VoZktEZWdvTVJoS0Z1TjRLNEx5WkNhMVNjUFBweVRudHI1d2R2Q3lKVGYvVVdiNVo3RjRBL2svSGRXM21vYU1YeFk3UHpHalArL0cvQks2SDRmNU5jZ2dySlpMZTErTFhBRkJrcXltcXhMeDNyNFNMK2JFK3hSUnFJWVZocTh2azRMaEE0Y2Vya2tQMTd6cXFwWkE4bldGZVY2YkozbHI2K0VTYTlUcnhERG1iM0R3NWkvOG1ZbHlqck1VcGtRNElKeVFSL1dzTHRiL0sxZkJhYkF2Z3FXbjg1cHhLTWEvdkErQTlkVW9haTVjVmlHR1YyWGJaSG5Hb1hEY1djKzVQeEtrMzZyelp4NlhwTE9kZDAzaVo1enJ6ZXVjTXIxM05jb3VjQ2YrL2FuMUFVV3ZheHpsNTZ2UnRBTThEY0hGQjRaVXArMUFMSkRCZ3g5aHJQZmFMUVc2NHZyZUlPRXpKUTIzRkNYakdpdll6N2hGMzVicG1Kd0JhLzhXdllidUdxZWVsOGoyWWY0M0xjQzczUEt2eko3azhDMHRldzRlbEFId1drZjlvejd1Q2paVVVxb3ZhWnluLzduVDIyWGNld2JYUGE5UDZrZlV5SDllU0ZQUWFlMzBTRmFLd2NGalh2RVBuVWV2YWIvWExUMER6blovZG9wSmpQWXZMbUFQSEliUWV0WjRJNEtXdCtYR0tzOCtTNjZyU1Y2TEV1V0RrWExKMGYwclZGOWt6anMzREs0VEdRQ2xuVit2S0h3MUF1a3NTSHZiNFcxMEk0TW9GOWZPZC9IdExYYVNSNnRra3ZjUGZvMUQ5VWNIZ0xqTjRiUmpBK2VoQ05sSjgrOFdHYytCTkFWeVEzdE41VGZDSzlWcmVyZklkQVlPQ2NpNjJKSTl0REE1RUpwN25odUoxRkMyLzBXSmtlbmRRTXVoSnFUUHUvYXBnblI4dzlxVXZPOGVMNXpqcVdoUmtPcmM2ZnRPemV4THN6aTJ6S0ovbmJMaGRIOWwrMEdqTVdPc2NCZ25lT3dWME5KcWs3SmtFRHF2ZUR4NlZtYmVkYlYzRlRNZGVZemx4RnlrV2VWWnozNGxiREMweGpnNjFOK1g1Wlo4dDBiMlFCSzcvbkd4a0R6VjB2NnpDNzlaekplKyt6c3BpWGVlRU9aK3pXSzlSTzMvazN1RCs1NkV6Q0NBUVphRHlJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJckN5QkR3ZmpxeHNaMlc0Q0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWpBTEFtOEtBbU4wRGc2U0wwQ3dGdEdFQjdwRTlOZUJJWDJVTlNhb25CMHhpc2gvanptUmVDWjc5WkpXTzRaQXdMVGJUdGVrSVJqUzltM0pZQVBMM0RxdERpeWVqLytsOEIxLzlXa01PNkJBTjQwZ1dEa0p3RFEwWkNPc0hYaXZVcnhId3J3M2dJQUhWNHZLWFh6WmRaRFlmMVBBYmh6SlE3OHVTUVMzT1Z3VGx2M1NvNlNZNHByMHVsZ2Z3QWZNamhQTCtxcVYrU2xkamFoK0JQSHpiK3JSSklmVkkyQkQwLy8wS20vbE5OY3hJbVZEcU5rOVc4QUtIemRKVkNlZVNzb213aGtFWWc0VkdZMW9FeEZDRVRHcDZqelpsOEhPQS91V1lsdC9CS0FkMDNqaFpQcnpPdWRNN3gyTmNzTk9STStQd1hDS05GV2JoMXpjQ2JPdFRVbkg5ZDlqMDRjdDhrcDRNano2eVd0NXh5bXFraUFnR2VzNkhyR3JjS3FGSitpb0JJRFRTbVZKVEQxdkZUVyt0V29iUm5PNVo1bmRUVm9Mc2ZLM1BYVWtIVTgrMkRBSnU3N3AwNDgzenk0T3Y5NGU5bzdid0hnMG5TR09MVXQzdmEra3RZelAxeFFBY1hRVGt0QnVaclpwZ2hhNGhXNDV0bkxFNnFnY1AvbEJUUERjZ3dPeVhNMGE3S0tuMWpyVi83MUk2RDVicHhyT3RhekdEa0hIcWVudmxwNXR2UGpLaER1WmdCdTY2dmlENlZPQnNDelJnYjViWjlyOC84WnNMRDk5MUpDcnE5S1lyRHRnQkZjbzJ5ZjJhY0hBNkRRa0RVdFkyMmNhMk9KYzhISXVXU3VuVlBuaSt3WngrYmhGYnZLdlErOTlmTWFqZDMzS2U2REI2VDN0bmNzMEJqUHg3bFdIK003Q3o2N1oxWDdtOGNXc05NVFlJMXJYNHBpZXhQUHZIWjFpT1B5MjVYY3ZTWG5kZ3E2ZTlib1BJODcxOUE1N2p1UE5lUnZaaVZIN2xtdHFlU2FrTytlZVk3K24xWWpPdkp2bnI1RHVFK0J1aGd3bnVlcDFtRGhCeFQ0L3VkMEFCUlVMeFg0bWppaTE4d2orRDNHTzE3ZUw3dFY1OWFYRjdqR3FxS2ZRT1RhOGR2RDE4OFFydmNNcWU3S09xd3oraTVMNUhxWE9zTnQyaFlkcnl5M0grMW40QTZPK1ZOLyt4VGRDMG5nK3MrdmRHUVBaYmxuNXByWGVxNTA5eFNBaStkR1E0bm5NRnpUZWdLSURuMlRNdFQyV0w5SDU0VGMvZTFZOW85WmIrUlpXbWN1WXpKWDNTSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSlFqSUFFcm91aFZFVWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSk9BdmRJRHBKMHJLTnpGQjI2eDBwUFRvSzZmV2VqRkh5aFlNcEhrNFA1TndvN2E0M1ZyNzU2TjZtY092OCtpU3J5ZzJnSyt0NnNJN1BIWVRPbkwzZEx3akk3dERLL080a3I1enJDZVQ5WWxzQjE5MVdpK1BqN3ErZHVsNXlMR016ejVpUmFUOEdlT3RFcDRhamtvRkQvamVMV3ZFZkhjRzd1NmdMSEFOcjJrc2FQdkI5ZkJ1RDRIb2VoN1pJejBWWkJKa1BGUzRuTmU1MnRPQTVTcElQQzMzMnBsTlBjdzVKenI4ZjVwTGJ0eUNvNHdxc0xpWUlQWFJ2OXZyRUpSQndxTnphNWFYc2ZHWitpenB0OVBXMDY4WG5YTkY2S3VjNjgzam5EYTFlejNKQXpZVW1Sa2h4N0dhRGxJQUJYNTJSZXNUd00xTEZQRmNEaUhRQnVYOWgyaWtwUWpOd3FzbEhZREZVM01nSFBXTkgxakhzRVhyaC9lYmJXZk1XdjhOVHpVdkVPckVDRnkzQ2k1bjc3c0JWZ3N5b201cTZuaHZwVFVpQnVxSzIrMytzem1odFRzRUVHUGx1RmxDTWFkYTlLaU96VEthQk1YNSs0em50aEt3QmJxZjU3aFNpV01VYVU2bk5mUGQ2OXMxWDhaT3grcVA3NUUvQ3NUZWZmcStWYk9PYXphQTEwTXlZTnppMHZUNEtmZkNmNGkxWmpET0xFTTNJS2ozYWw2UDNuRlFEanZwN3ZMNTdyZ01QM0g4OEI4SUVDK3lwdi8rYzg3NVU0RjR5Y1N6b3U2U1JGSW52R3NYbDRCYWh6NzBOdi9id3dZL2Q5aW90ZlFoaVhkazRSRkkvaTFneUsxdlVOaElXVlIyeWExL3BzU3lNZGVRK3B6bXFQTTlTeGFRck12bTFtR1FwbFVyQ1o3MU90aWNLd0ZJak5TWHozZmxJS0tKMlR2NWtuOTdrY1kwNXUxc2s1bGtMYmZmTy90Vitsem1jODZ6TitKOFJyVDVGeWJ4b3I2T0FqQVZ5Y2dxQjdiR1BnYXdyRDMyQW83TjJuOWpWQk5rOUp3YmdOWmlpcmtVRDBQdVk3cXhPTmJVNlIzWHVHVk51MkR1dU1QczZSWjdYVUdXNXRtK2M5Vm9uNzV3c0Fualh5dDdOdE82TjdJZS8rdGdRdjFrSDdiNWRSMlYwQm5BUGdyekx5dHJOWTV1TElIc3BoMnV5S1dGaFpqWSt3SGZvbXhXcExxZnpST1NHeWppN1ZoN0hxNFhQTlo1WnJSMCt5QnV2eHRLRXlJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDUFFRa2NLMWJRd1JFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVZTmtFZUU1SjRkai9CdEFVd2EzdDJoL0E5b1dNcElqcW5nRHUyS3FQZ3E1MG92cGVqN0J0b2VhWFdnM1ovaXVBbjFYT2JIOVhmUUQ4a0VySW04NjVkSDU4RjRDalI3SnVNd0JuQU5nNTFmK0o2bG8veVNoazdQMUFYUUxYZjNsUmVUMHVxcHh0LzJHazYxMVgyeWVXOERmSjBlOUJIZTJYRW5iTzZkb2l4L1RQSmVmYkt6c3F1bnNsRkg5NmVtNXkyckhtc1lxL0w2cmZLektSWTNNSnB6bU8vVzlMWXZjNWJYYmwrVllsWVBWb0FGZDVLMUE1RVRBUWlEaFVHcHBSMWlDQnlQZ1VkWkRxTTcyNUh2R3VhYnhZY3AxNXg1d3pobXpQY1Nia1h1Q1RBRzR6VkZuZzkyOERlRjdhRTVRU3NBaVlNMnJSMnlhaGp0ZFdRVWNvamhWTjExVUJLM1pLZ1lLaWRhbjh2QWw0eG9xdVo5eXpEdVJlL1JHVmtOczFEVVFSc2FsNWs4NjNMakx2c1pXcDU2WDhucTFQem1VNGwydmRXdmIreVYxUExXcTFLOGhXV1N2emF6c3JpV0x5WEpEaUFIUC9mcFJudGd6UVFXR3V2blNIOUh0T0lEZWVpMUxnNkxUQ1o4QmVJWXBsakJINWQ0c3ZwM2NNR2xQOHhOY1RsWm83QWMvYWRPNTltb045WXo2TGQ2cmU5WjJiM2dkMjlaVWloUlNhcHJEMHY2ZHgra3RWY0lJZnBzd00xSHA5K204R2M2V2dxUGVjZ0lGMmR3VEEvYXduUmUrL2lBQ1laZDZyKzBaQjc3M1R1eUZQZjl0bHZQMmY4N3dYRlhVam8raityTVMxS1YxSFpNODROZy92bVVEdWZlaXRmeDN1aFZzQU9EVzl6NC9lVTN5bnlnRG51VUd2UGUweHNES0QyZXptS2R3cVl4RjBadEY3QXJnVUFJTitlOVBKQVBZemlDcGI3MDIraTJVd2h4TWNCbkxQeU84NkdDUnBLREZ3TXRjUjl4dksyUEc3UjdDNHJzWTdKN1hOb0JnN3o3ajVuVUNwOUpna1JoN2RkM3Y0bExnM0wwdlBWZWtBNVF6Ry9ua0FXemhCL3lDZEUzL0hVTjY3VCsxcllvcXh6ZEM5dGMwYVhaK052UmJ4Z3ZlZUlkWHR6YlZmWGg3TmNwRm50Y1FaYnRNV3pzME1EclNzOVBZVVpJSm5tV09uNkxNVzJkK08zYmRtL1pHOWplV3NKTkxPbER6R2FzdkN5bXBEaEczT055bFdlMHJrajg0SnVmdmJFclpPWFFlL2FlSFpYODU3bnk3YjFubStuUHBhcUQwUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUk1CT0lmaWhoYmxBRlJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJNQklJT0xBWUd4cXJiTXY4NE5tT3R6VEVYYWJ5c256c1VsSTNBTGIrNEc2Qks2N0tWUEU2UHdPb1hmTE5WbVVsNklRVDA1Q2xIVSt2by9nMzk2N1FIUmlLbkZFQ2psK01BazY5UFdEanRZVVBPTDQ4N3RXSnQ3UDd3R3dWeWxncVI2UCtIdmJCSXIzMzZWeTVINWdFdW5rOHpaR0t1RUVjSS9LQ2VHU2dQTXEreldsS1BvWUhGWG5haEhRZW1RMXJwZG5mTm9Ld0Q4QmVQWkljMlBUMmQ2N3B2SFN6M1htTFNVQzRiRXp4NW1RNndpS01iL1MwOEJBR2M3NXJKZENIMTNCZGtab2NqWlZVa2ppZFFDZUZiVG9TQUN2Tm9pd0JKdFQ4U1VTOEl3VmZjLzRJNU9nUEVXVGNoT0RWWDJra2RrcTZKUGJ6aXJsODh4N3pmNU5QUyt0RXR0U3RpN2pMT2E0RWZhcnBYZ3NveDRHK3FJanZEZmxycWNXMVU4UnprOEJvT0RYSEJMRnNWNEk0UDFPOGJFcCs4QzU1NWdGNnd5ZThSeWZSTHN0ZG4waHJZRW9jRm9pZVlVb2xqRkdsT2p2b2pxOGUrY3h4VS9HN3JQcVh3NEJ6OXAwT1phdVZxdGpQNHRjdjNJdjhCOEFLRXJJd0lVVXRzNFJ6bXlTak80Rm92Mk0zbjlSQWJDdEsySEhDNnYzSFBmT3VMM0krUityOXpOZnpjaWJtOFhiL3puUGUxRlJON0tMN3M5eStVK1pMN0puSEp1SGR4ekl2USs5OWEvRHZVRFJXWW8yYzZ5SkpBWVIzQVBBZVpGS01zdStLSjN2Wm1idnpjWjN0VHgvK21WbVJadWtZRHZzcHpkWnhZc1BNSXBWODMwMzk3VVVxN1ltQnBwN0tJQ3JNd3J5M1RUZit6S1FxRFh4YlA0Z2E2R1UzenNudFp1elhvY2NjMHVJVExNZHo3a0V4MkFLQWthU1ZmQTl0NjFvc0ZtT0xic2FBM2Q0OTZsZGZjcWRSM0o1S0Y4L2djMnJhLzNaRkV6QXlvbnYreGpRaHVjL2MwdmVNNlM2SDJPdnNaYkpLL0tzZXNiS3ZyN3ltekIrVThjQXpNdE1VNzNEanU2Rm92dmJxUmhIOWphV000UklPMU94R0xNZEN5dXJIUkcyT2Qra1dPMHBrVDg2SjZ6N3VpUXlMNnpLMkZUaVBsSWRJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJakE3QWhLNG50MGxrVUVpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUl0QXBFUFZRWHpUd1NXL1VFenhZVG9GSEd0NDZKNFAxQXZMWEE5eFlmUEhpZE1qNlBPa3lvUm85TXFzY2liT2E3SG9pSjAvdHk3RWdtNnNwR0oxLzd0bWVLSnB3TjRHZ0E2Nm95VktQcE1aK3FjdnRPUm1hS1BiY2RkQ2lqOUM0QkRDaG1aSzI1TlIrbE5BZnh0RW95bmcvMkRrMU1maGEyblNpV2M1cUxPNW5SR2ZCeUE2NmZxdE5yWjhBUzBIbG1OV3lCM2ZPTGN4UG1Ld3NZTXdERm1hcTdCdkdzYXIzMjVhd1RQK3NOclU3dGNyalBoWFZQd0RBcEVsa29uSk9Iczc1ZXFjRVhydVY4U3VOek9ZZjlYQUR5NkVzbjhvYU9zaXF3ZUFjOVkwZmVNYzAxN0FZQnREUmdveE1wZ0JCUXhZWXFJVFJtYW5YWFczSG12cnhOVHowdXpoam1TY2NzK2l4bXBXeXRWN1Z1cmZlT0xBeFovSm9teS9keFpCNy9QZkhNbDN2a1NaL2t4aXRWQ2wvc0JPR3lNQmdyVlNkdmUyQkY0cks2ZWJBOEZjSFNnUFo1WHZRTEF6d0oxc0toWGlHSWR4d2p2M25sTThaUGc1Vlh4bVJMd3JFMW4ycFZabWJVcXp5TDNyN1QxMWs1NjBYNUc3NzhTNzVweUFwbFNhSFNmS3Bnbmc2K1ZUTjcrNTh4N0RPSkpQZ3hTTW1YaU94OEtnVWNDa2xCMHZQbHViRXo3TDBzQlpkdHQzQmRBeWJNejd0MjVIdU4xc1NhV0t5VXF5Zk9udGtpNzkwd2c1ejVrWDczMXMyeDByMjVsWFRxL0p5aFpsdzFmcXdMOTdPVDhOc0RhcDhqMWFyYVZlNTdlTEJOOTM4bTk1ZzRBdnB6UmFRYUtZMUJ4dnVmUFNiVVE4SStjNHRNV0llRW5Kckh2SEx2YWVkcEI3U3gxZU9la2Roc1JrZTArZTZOQ3puVzludnN5ZWhaaXVmYVc2OFc4VVNGVjFzSHpEQVkwejAzZWZXcFgvWHdHbjE2OVgveHRidVBLNXlZUU9idk9uZS9keGdVS2VzK1E2aVpYZloyeENGM2tXZldNbFgyMjdGdDlrM1ZLNEJxWExQcXQ5QjZXd2FHYWllZWlISXY0ZnBhQkZhMUJvNXAxUmNmbEV2dmJrc3o2Nm9xTUtaWXpoRWc3VTNBWXV3MExLNnN0RWJhNTM2UlliWXJtajg0SmM1N3ZvbXhZUGpJdnJNcllWSUtUNmhBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJDQjJSR1F3UFhzTG9rTUVnRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUmFCR0lmS2dxbUg4aXNNb2ZORC9RNlhRcGdlditKNkNFQ0ZDN2RnbzJVUlRvVjQwZi9oN0FoeXBuMi9zWUhrWTY0WnhreUcvSmVpY0E1d0t3Q0RoU2JQdjU2YVA1M3pVYUk4TURLOEhwdDJTS1pmZlorVTBBRk4zKzNvS09SSncwTEh4eTgwYWQ1dTRBNFB6cVdteWYyMkFySDUxcTl3Sndsck84aW9tQWg0RFdJeDVxMDVkWk5ENVJxSWJpUHhTMTNuMWkwMnE3cGg3UGM1MTVTNGxBZUxCYW5Ba3BrbkVHZ09oM0RwelBYdy9ndnp3R3IybVptd05nc0l4L01vcStqN2x1VzFQVUs5MHR6MWl4NkJtM0NxMWNBV0JIQU5jbGlxWEVpMWI1b2tUWDVWUFBTNnZNMm12N0twL0ZlUHM4dDNMUmRYeFVrSUVDZ3hRWmlZZ2xsbVQ2RXdDN1ZhTGRsMWY3OG9jbDIyNjFvQUVHQXFGbzB6Y0FVQmliWWlrVVZQeS9hVHorZWxxYk1WalpHNExuSTAwejNwM09YQllGUUNzVnZPMjRBZ0hNdkVJVTZ6aEdlSis1NkxOVzhqbFJYYXRCd0xNMlhZMmVMZGZLVlhrV3ZlTnVUVGZheitqOVYwcGtaOUZjeUhjc2ZLL3h5eEZ1S1cvL2MrWTk3Vkh5TGxqZlh0dDdiZkphWFY2dXJtZkdleWFRY3greXA5NzZXVGE2VjE4ZTZadGFQZ0FBQXdOR1V6dFFXYlMrUmVVOWdkUzY2c3U5UDVwbEkvZEtYUS9IODV4M25sdFU3NVF2QmJCMUprd0dPSGhFQ3VqRHVZK0JEcTJKNy81NWxqNlVqbklHVUxvbUNYeC9kNmlCbnQ5TGpYdWNNMDkwMnRCWHpDcEkzbGRQN251ZXVqd0R2SjVkZlYrelM2QS85YjNEYzREU2llOTN1RTU1YXFCaTYxckt1MDl0bThodkZQWkl3ZFFENXF0b0pvRXRxL2U1bndmQXNjK2FMTUVEckhWSDgwZjNNcXUremxqRUwvS3NXc2ZLUGp1aVlzL1IrNk5kL2dVOTZ6S2VOVGZuZHA3UnZxK2E2MDlMMzU3VmdXSno3SW4yMlRvbTF6YngrNzFuQWVENjY1MDVoZ2J6UlBhYWxqT0VTRHZCTHM2aXVJV1YxZUFJVzhzM0tWYTdJdm1qYzRKbi94S3hkK3F5a2JYK2V3RThaMnFEMVo0SWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlNQk5CS0tPbitJb0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FtTVRpRGd3akczYkt0Vy95aDgwZXgxREpYQzkrQTZsME9lL0ZCRHhvZGdRUHdqL0FJRGFTWVlpaWM5TWpqWnN4NUlvbnZRb0FOK3lGTXJNZXdpQU4yWG1iV2Y3UkhLdXVicjF3K09UazlCdEhQWFNLZlFmQVh4MW9HelVvY2hoMnNJaU53RDRSYURTVFpLSVpxQUsxQ0pia1RyR0trdEg3eExPLzJQWnAzcDlCTFFlOFhHYnVsVGJxWmZ2d3luMjhHSUFkQUM5OWRRR3BmWnFjWVNJMDUzSDlGeG4zb2hqbU1ldVpobUxNeUd2SHgxek9YY3FsU2ZBNStlaTlMd2NDV0JvRFRlbWcycjUzcW5HRWdROFk4V2laL3d4QUM0d2ZMdEVnZFdkQVh3bWRjYTdUeXpCWWk1MVJNVXM3Z3JnVElNdzB0ajlqdXdUZnBTRWQ4ZTIwVm8veFlRcC9QdmYxb0xLWDR4QWRCMGZtZSs0Rm1Vd3NKY1U2MDJzb3FhNE5XdmlXUVBQU2ZqOC9CQUExNDVYcGNCbHpKdVR1RjZnNE5uaE9aa3o4L0Q4aFFKdlAxMlFuNEZyR0RqcmpwbDE5bVg3UWlYWS9iaHEvWE45c0I2dkVNVXFuOWYySWZNK2M1Rm5MWGo1Vkh4RkNYaldwaXZhMVdDdCsrb0FBQ0FBU1VSQlZFbk5YcFZua1FHd3VJNzFwcE9yOXcvN05kNW5XT3VKM245ZUFiQzJuWDJCVEkrdGdsSDhjelZITHdvVVllMXpNNyszL3puejN0Um5aeEVPeXl3cmdXdS9BSFhPZmNockd6bHppTzdWbDNsdnNXMXJRTEkrZThjUURPNXJxNVNRTU91M1hyOFM0dHA4cjhoOTFWQ3lucVZ4YjdWbkNsQjBhdHBuRGJYUi92MmNWSTdCanZvU3ozTTRMMVA0MTVwWWJ0OFVXTWxhbHZtOWMxSzdMZXQxejdYVnV6OXExcC83bnFjdVUySXUvZDhVTEpZaXdXT2tnNUt3dWJkdXEyQmhpZXRBV3htd25LTHhGR1pYR3A5QVpDNjJQamZqOStaUExYalBrT29heGhxdnBtVFExMWJrV1MxMXpVc0ZXeTdCYzlHNTVhSTFBZmVCREp6QllDTU12TGhvRHFlZDBlL1JMUHRicmhrWWZKSHJudTBTcEs5VmR1NVVmY3R4YlFsb0MrcUl6SStXczVKSU95TWptS1I2Q3l1clFSRzJsbTlTckhaRjhrZm5oTno5YmNUR1paYU5yUFhuZXMyWHlWTnRpNEFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpTUJrQkNSd1BSbHFOU1FDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJdUFrRUhGZ2NEYTVsc1ZXK1lObXIrTVNoYy9vU05sMnZQTTZaMWljTXJ3M2tlZkQ3SWlqRG9XSWpxK2M4SjdyTkpqQ1J4UWRvbU5Oblc0UDRHMEFudUdzazhVK0JtQ2ZKS29VcU9iUGl2NURKWno5eWFENEVSMkI2QWg4YnN1b0J3SDRDSUN0RE1hMmhhVVdGWTA0Qmh0TVV0WkNCS1lZS3dxWnFtb01CTFFlTWNCYVl0YTJVKzl0QVp3TllKY2wyc1NtNmFSSmtZcUkwNTJuQzdsckJNLzZ3Mk5QVnhtclk1bDNYVmpLM25XdXAvbjhiSm5FYko3UTArSGZBOWk5RW5PNGNKMkJxRzkvUWNBelZpeDZ4cmNBY0tsUlhKbENyTWNseXpRZTJFV1g1bjViVS96cW5RNGpPUlpSZUNJU2hNZlJySXFzQ0lIb09qNGl5UENBYWgxNlNmQWNvaFJtbmd2eW5PWGpwU3BNd1dNbzRIMUF3VG92QnJBWGdCOHZxSk1CYlBqYzN6dllydVZjWnFpcGlCREZYQVg2aC9yYzkvdmRNZ0tsZEpXTlBHdGVXMVZ1dFFsNDFxYXIzZU5wckYrVlp6RjYvYTFuRVczNjBmWkxuaDgzMy9Gd3I4N0FHbnpuVXdjakhlUE84ZlkvNXozbDFHZG5ZL0Nab2s0SlhQc0ZxSFB1UTE3RHlKbkRLZ3RQbGhLS2JnY3BtK0s1T0FyQVlRVWFhcDQ5NVZZWEZRWFBFWkdtTGRZK05vV3p1Vy96Qk9mTkVmVGRITUJuQWR3ekYxZ2pYMVFJM1Rzbk5VMzlGWUFkVzk4N09MclNXWVQzSks5YkpPVys1Nm5iaUl4ZkVUdW5MR3RkeTBYUGh1cStSUVhacDJTMERtMUY3bVhyY3pNbHI4Z1pFdTFjNVhYR0VPZklzMXJpbXQ4aEJkVGJmc2pRaVg1L09vQ1RldHF5ckQyK0R1QjlLWWcwNS9YMlh0SDdEV1Z0MnREKzl1YlZOM1preXIwcXozMXYxdEducHdCZ01JNHhVMlN2YVRrcmliUXpaditucXJzT3NQTExFUnFNc0xXdUhVWXd2N1BLNkp5UXU3K2RxaitsMjRtczllZDZ6VXN6VW4waUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaU1Fc0NFcmllNVdXUlVTSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FnMENFUWNHZ2Z3VGdWWCtvTm5ydU5UbllPQjF6aGh5eWloeHYzayt6STQ2NnR3MUNUL2YzOWdCQ2pyVEdmWUhqWEowVEhrVGdIOHkxdFdWblN5T0tTVEV3R3QrVmlXZzk5aWdYZCt2V0QwS3dMYzY2cms3Z05NcmNlNXRNOXFnVVBhK3lhYU03SC9Jb3JFd2w5VHk4MDB4Vml5L2x4dlBBajJEcTNITnU1eDYzd05nL3lXYlh6dFAzUnJBVHRYOFJ1RnRTNkxJOEZNdEJWTGUzRFdDWi8zQkppallTQWZhU0dLd2pNc01GZkFiQndvcDBnbDJLUDBNd0N1VE9BVURjaWd0SnRCK2ZzaDZad0R2QXJCTnF5alhQRStyeE51NXBsSGFPQVE4WThVaTUxRlBFSmVtaUloM243aE9WMnlkeEN6dUJlRFRLUmlFNVJyeHJPUFJ4cm5FVXIveXJqNkI2RHIrNU9vTVlEL0gyUVNGNFNnZXR1eDFLSzhneFM0cGJzMHh0RlRhRE1BcGxZalpycVVxQlBDVlNsRHM4UUFvdE5LWEtEVERmcFFJWUZQeTNDa3FSRkVRNDhwV1pSR0tXZGxPeXZDaUJEeHIwNklHckdsbHEvSXNSczk2bW9LZm5rc1p2ZjlLbng5emZ2eTNLZ0RuZXdzSHMraGo0KzEvem52S2lHQ1Y1MXF1YWhrSlhQc0ZxSFB1UTk0WGtUT0hWZDZyZTkraHQ1OGx2anQrUkJVTStUc1RQbVJlQWVlMmlaNHhtdGVjZ1RhOTZSb0FEd1Z3OVlJS3JOZUc0cFhjcjEyVTZueGtkVTdPZ0VMY3ExcFNqbGo1ZHRVNU10Y1FmUDloU2JuUDQ2STZ2WE5Tczg0U2RwU2VNNXYxNWI3bnFjczhEZ0JGMDljNVdRVUxvMmRETmNzNm1PMDZzNTFUM3lKenNmVzVtYkxmMFRPa1ZWNW5ESEdPUEtzbHJqblBnRDh3Wk9SRXZ5L2FtOTg1emJ2M005clNYaHZVeGExcmpIYXpYV3Nudm1ObWNNSVhBbmhleGhyaGZBRDhIb0pCSjhaS2tiMm01YXpFOGowSXY3RjhidU9zbTlmb1h3RDg1MWdRQnVybE80UzlnMjJQS1ZZZXVZYld0VU1RUTNieDZKd3c1am8ydXhNalpqd1l3TEhPK3VkNnpaM2RVVEVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSV0MwQ0VyaGVyZXNsYTBWQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJnSXhLSU9EQnNSRjU5ZlY3bEQ1cTlIM05MNERyL0NYZ0lBRHFNM0RHenlLc3FCNVNqZTBRTnZjSms3YVovQW1BM0FKZG4ydFNYamU5Q0RrMzJCcXZDa0ZOempzQ1RWMWlxaElOdXRQOHFuMGRnNkQ3SnEwVzU1a1pBNjVHNVhaRnVlN3FjZWlOT1R5VjYvYU5xdnFUVCsvc0EvTTVab1hjT3lIWG05ZGEvTEtld29iVUduVjlmQStENGFnM3dTd1dKeUw3citwemliNWxFTWQ4QjRQWUFWbmxma1ExREdUc0plTWFLb1hIaU1BQkhHWGhma1VUcnJ3dUtUUm1hbkhYV2RSR3pzQVF2YUY4UTNrTnZjSWdQei9yQ3lyaWlCS0xyK0tGeHJNL1lIWktRMksySzlzWmVHYzhnR0NqbHRJTFB5WDFUd0s3NzJNM3BMZkhORkpSc2tiZzExeVJjMzFIMEk1bytsdFkzcFVSVHZHZVgwWDZzVTNtTFVNdzY5VnQ5OFJQd3JFM3IxaTRFY0tXLzZiOG95ZkhwSHdGUVpNcWFmZzNnakxSM3RaYnR5MytYU2d4cFR3QWVINEZWZUJZcHpIa3FnRWdncStqNWJlVCs0M1dMdGwvcVh2SFc0KzEvem5sQ1JMREsyNTlWTENlQmE3OEFkYzU5eUhzaUlxcTV5bnQxcjJCaSt6bktQWmN1K2Z5VldwTjc5b0QzclBZemwxWkJqdTdtN0ZDT2lMUzFEZTZ0S0RKTzhXeW15TFU5cERvWFBtNUIzeGdJOFNSSDM3K1lSTGh2Y0pTdGkzam5wR2FUdWVPQ3g4d1M5bG1mcDFMUGdxZS9VNVd4UHFmUnM2RzZYNnM4dms5MWJVcTJFNW1McmM5TlNidUg2dG9JeitnUWd6RitqMTd6T3dFNHR3b1l4S0FOeTA0OHo5Mjltc2Q1ZHRHVnZFRXJ2cFlDY1YvYnFyU2t3UFhtQUo2WkFsWC9sUUhrbUhOeGJVWmtyem5HV2NuZnBQVlQrNTVqZ0hHT0V6ODE4Q3VSOWU0QVBnR0FhMDV2R29OVDA1YklOYlN1SGJ3TXJPV2ljOElVejQ2MVR5WHpSL2pNOVpxWDVLTzZSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSR0MyQkR3ZnI4NjJNekpNQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJnTFFtVWNqWmFTemlHVGszOVFmUFdBRjRFNEQwQXZtNndzeXVyOTJObENWemJ3Rk1RZ29KSE4xdFFqRUp5VHdid3lZR3Fudy9nbmJibU8zUG5DQndOTldNVjcrNnI3d3NBSGdmZytvRUdiMXM1TUo4QVlMK2VmSFJrUGNZaExIVkFxbmVvdi9wOStRUldYYUJrK1FUbmFZSFdJL084TG0ycnVwekxId1BnQXFld1U2VFg1d0Y0WFRWM1hCWVF0cTdiOTRvZzVEcnpldXRmcGxOWWw4MFVLSHc5Z0xjQytGbmo0dW41emJ1VGg4UVpHTWlEYTV5ckFWRFU1UC9sVmF0Y2EwVEFNMVlNalJOY1g1OWpZUFR6eXNHYW9yRmZEb3BOR1pxY2RkYWg1M2JXeGplTTJ6N3RNVzlqTkRoM2oyYXNWdG5YakVCMEhUQTBqblhodW5VNlg2SFk2ZGpwV0FEN0x3aFk5cklrUkZacTN1YmErblJEZ0xTYy92UHNaNC9xSE9WYkN6S1hGTGN1Y2RiVU50VjdkcG5EWjZQa0dWc0FaYU53M0VqOTlLeE5hejZsMTFBUk1hamNmYnZsMmthRTRGYmhXZHcwbmZOc2E0SFN5c3QzSVdjRnlrZnVQemE3NnVmSDN2N252S2VNQ0ZZRkx1bktGWlhBOVUyaWJ4OXhYTG1jKzVEVlJzYlMwdk9NbzV2dUlxV2V3V1hNSjk1N29nM0xzd2ZjQk1DWmFWL2poYzkzNnljdUtNejc2bXhENWJSblh3QVV6MmFpN3lCRnFCa0F5WnJhZGJYTDh6eit4ZFpLMDFrK2c0TkdrbmRPYXJhWk95NTQ3Q3hobjNXOVdLSk5UMStuTEVNQlRnWjBZWURUbkJROUcySWJmUCswSXdDZVJ5cE5ReUF5RjF1Zm0ybDZkRk1ycGVhcktXMWVoYmFpMTd6VU4yNGxXUEhzbGNFamZ0TlRHWVBHTXZDbk5URndJT2ZyOWpseDVFeUROalQzdDF4N25HSTFMT1Uvb3ZvM0ExaVBsU0xyM0pKclc3NDc0SFU0c2dvQXpEUHZydlNXU3VENnBSTytpNDhFb2EzdDUzMjFWL0NzWmVqYVI2NmhaNDAvWkUrSjM2Tnp3cGpyMkJMOWk5WVI0VFBYYXg1bG92SWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlzQklFSkhDOUVwZEpSb3FBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJakFoaVpRd3Rsb1F3Tk1uWi82ZythbW1DU2R2T2pRd0EvK2YrZTRHSFRjb01PbE5WRW9qVUlGTjdZS1JwMHpySGFNblQvcXFGUGJ4M2NHaHdJNHVzZGdPZ28rSzRrYUR2WHBEcFh6OTBlVCtOeFEzcUhmM3czZ3dBWE9PNHZLYnduZ1FnRDNHV3BrNFBmZlZ5SjZUekE0eTlNSjVWK1MrR096YWpvWnZkSDVIRVErMmc5Mlg4V05CRlpkb01UWTNRMlRYZXVSMWJqVVhlSWg5d1h3bVVyMG1PSzhZNmRhWUpsQkhvWUNJbGhzOFFvUzVLNFJ2UFV2MHlsc3F5U0dlcThrTE5BbGJGMHoxdk9iZDdmbGlPOXd2Y2hnS0o0MWZaNFZ5alZuQXA2eFltaWM4SXpSOWIwYUViaVlNMmVMYlRuUHJhVytaZVQxQ2dIL3VwcmZlZTV3eVRLTVZwc3JReUFpNEZWM2NtZ2M2NExCd0dBVThwamkyMHlPQTF4M2ZyeERkTm9iWUt1clR6ZFBnZXlPR3dpTVpyMDVjc1d0S1hwMnVMWHlqdnpXODUzY0puVm1rMHVxUDE5Sm9aaTROYXBoRlFoNDFxWjF2MHF2b1NMdkczTDM3WlpyRWxrbnI4S3p5RFAvendQWXdnS2xrWmVpUzdzQ3VNaFpuc1VpOXgvTHIvcjVzYmYvT2U4cEk0SlZnVXU2Y2tVbGNPMFhoOHk1RDNsRFJNYlMwdlBNbERkb3FXZHdHZk5KcVRXNVp3OVlZbTU0UDRCbkx4QXl0SXBJZHdsbWU0TXBYNUdFZlJrSXU1MFkrSm5DMjdzWWI5UVM4M0VKN3F3amQxd3dkdkVQMmIxelpyTXQ2M3F4Ukp1ZXZrNVp4anJHbEhoSE5PWjlNaVc3Vldvck1oZGJuNXNwdVpTYXI2YTBlUlhhaWx6ejVqdm5NZnY2L1JSNGd1MzFwYUd4SmhMd2lZRUJ1Z0xFUk00MDJ2dmJ6UUY4eXZtTjN0ZXFzanNCdUhha2l4Qlo1MXJubmI0dTNBOEExM3piRGZTUlo5ajdwQUFxSStINHMyb1pXSmhuSkxjS05QYXhaRE8vbHhrclJhNmhkNDAvVmwvcWVxTnp3dENZTWJiOVk5Y2Y0VFBYYXo0Mk05VXZBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBck1nTUlVVHhTdzZLaU5FUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJXbGtBSlo2T1Y3WHhCdzZmK29QbGdBTWUyN1A4UmdEY0JlSzlSOU5IcmhOZjNvWExVT2FQZ1pTbFNWY1JScDIxQW43Z1lSWVNPU1FLU3VVYVhjSUNvMi9LSU1sRmsrbmdBejgwMWVFRStPcGc4enlpeVRmR25ReHFDNFJHaGJwb1djZUFyZ0VCVkdBaXN1a0NKb2FzYkt1ditBTGFmc01jVUJkZ3I0RVJHMGNjenFzQUZ2M1RZZkJjQWRIRDB2a3VteUFFZDJIN2phRHRhNUIwQXZ0U3FKT0xvbVdzUGczbThEc0I1SS9YYnV4YktYU040NjErMlV4aURvTndad0hzRzduWHRKL0x1NUZVVzM4bnJvWEpGQ1hqR2lxRnhnczh3SGNQcDFKMmI2cldXMXNmQU9qeTNYaUhndHdCNDZRTGhwOXo3U2ZuV20wQ0o4eDhHMGFDNGNtNjZhd3JDY2YvY0Fpa2Z4YjA4Nis5NkhLRGcrK2tOa2VzakFCeFZhRzNLUURFbkFOamIyS2VoN0RuaTFrUEIySWJhYVAvdU9WL0thU01pdEpCVC8wYklVMG9vWmlPd1VoOXZJdUJabTlic1NxK2hJdk5ON3I3ZGN0MGo2K1JWZUJZZldZbHNYZ3pnRmhZb2pidy9UNEU1dit3c0g3My9XSDdWejQrOXoxL09lOHFJWUZYZ2txNWNVUWxjK3dXdWM4ZmR5RmhhZXA2WjhnWXQ5UXd1WXo0cHRTWWZPc3ZxdXg0UFM0S09YbUhBTDZZQUREZDBOR0I5eDlFMzNucnY2OTlXNTNjN3AwQ2liZk84Z1NlK1Z3V3Bma1QxSHYrYTRBM3VuWk9hemViTVQxNHpTOWlYTzI3Vk5wWm8wOXZmcWNwWng1Z1M3NGg0cno0ME14ajhWQnpXdlIzdm1FVXUxdWRtU3BhbDVxc3BiVjZGdHJ6WG5HZVByNjJFcDE4NVFTYzVkdkY4OWVVQVh0YlQzdEI3RCs5K2VORzhHem5UNk5yZnZpWVFxUEFwbFRqMnFTTmRpOGc2MXpydnRMdkFiekVQcmM3L2VXYWZtL2pORFFXL3Y1SmJ3Sm52RHRYM2lCOU41eVRPS2pCVlFOcklOZlN1OGIxTWNzdEY1NFF4MTdHNWZSZ3pYMlJkTzlkclBpWXYxUzBDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDc3lIZ2NZcVlqZkV5UkFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFWUVNUUtPRnN0Q0ZBRFhSeXlnK2FlZlo4RW9DbkxyQ0pBcEFVZ3J3TXdPOEdiS2NnejJHT2l5aUJhd2MwQUZ0WERxVVhBcmczQURwTThEcGU1QkFPSytrSTlIc0Erd0E0TTdOTEpRV1F2bCtKVXowS3dMY3kyMjVtb3gzUHJQalJ5ZWdsVHFIWnVyNzdKc2RoQ2tzcHpadkFxZ3VVekp2dXhySHVnUUF1cVlKRjNNN1paYThUSjV1TE9BeXpmTlRCejlubDNtSVVQS0lqNUpOS1Y1enFtMktONVhYY3lyMFB2UFd2aWxPWTloTjVOLzhxaSsvazlWQzVvZ1E4WThYUU9MRkpXdVB2WVRDdXJqTTZYeG1hbkcxV3ozTWJkWmFlTFl3Vk1XeUtkY09Lb0pqRXpLZzRCNDIwN3U4ZUIrQWNZKzkrQXVDQ2RPNWhMUHBuUXZlUHJ3SUduRmFkNTN3UXdJR0Z4SzE1Rm5GV3RaNitqOVd3Z2Z6TEVMZjJCQy9MN2JiRzFseFMvZm5tdG8rTTkwZzFqRTNBc3phdGJmS3NvUmIxSnpMZjVPN2JMVHdqNitSVmVCWVo3SXJ2bjd5cEJQUEkvZWRaWDNqN09sWTViLzl6MXNJUndhcXgranZIZWlWd0xZSHJzZTdMVXMvZ011YVRVbXZ5b2JPc1B2WldFZXAyUFQ5Tzc1Ty8ydEdBZFc3dkU4djJCSnFyelhrK2dCTTdiUE1LYmZLZC83NlZvQ2pGc3lQSk95YzEyOHlabjd3MmxyRFB1bllwMGFhM3YxT1ZzNDR4SmQ0UldhL0RWQ3pXdVIzcjJOZGtNZWZyVldxK1d1ZHI3K21iOTVwVDNQZDhZNkJ6Q3Q3L0w0RHRqSWJXWXhjRGxETlk0Y2twa0hOZFRjNjNhVzhGOEdKanU4ek9jOUZuOTN6M0Z6blQ2TnJmUnA1ZFhvc25WRUhOZnVYbzQxQ1J5RHJYT3U4MGJlRjljZ3FBYllZTTdQajlFK2tibDU4Nnl1WVU0VGVOZlAvQklKK1JOQ1RNSHFtN1dUWnlEYjFyL0ZLMjk5VVRuUlBHWE1lTzNmZWMraVByMnJsZTg1eCtLNDhJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJckR3QkNWeXYvQ1ZVQjBSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJnN1FtVWNEWmFlMGdaSFp6eWcyYUxjeVNkRXQ2VkhDSy8wU04yN2IwSCtBSCtLenJZUkowek1uQlBtc1hycUxQSVNJcDhIQUJnZndBL0NQVG1UcFVqMExrT3g1NnVKaW40dEJ1QXl6UHNvWWdwUloxdWxwRjNLTXNMQUp3d2xHbUMzeU9PR2xIemZnUGdPMG1Rbm5VOUkxcmhtcGUzQ3FDdE9RNTF6MGtnNHZqSEppTnpRN1R0aUlPZkU5ZGdNVyt3ak1HS0FVeXh4dkk2YnVYZUI5NzZWOFVwekx1V3pMbis2NVNudE1qYk9yRlJYMjRpNEJrcmNzWUo2ek5LaCs0OWs5anFwd0hjSnZNQzVkakNxdmd0RlFWZHVhYmJDY0NqRGNGdUtJYndrYXJzalFEZWt3UnJjeDNQUFU3TW51ZlcwMDRtWW1YTElEREZ1aUhEakEyVHBjVDVqM1YvNXdsT3hXQXMvd1BnU01lVmFZOERXNlZ6SE83akk0bGo0ZFBUV0hiTFNFVWRaU20yUnFHU3F4ZlV5L1lQQnZDbVFtMVRVUHV4QUw1WHFMNTJOUnBiNDJEbnVJK005MG8xakVuQXN6YXQ3Zkdzb1JiMUpUTGY1TzdiTFN3ajV6cXI4Q3g2QmIxcWhpWDZHTG4vYUlkMWZXRzUvbFBrOWZZL1p5Mjh6UGNnVTdBcjFZWUVybjFuRk9TZk8rNUd4dExTODB5cCt5YW5ubExQWUlteE5zZmVacDVTYS9MYzg2TXUrNkp6RkFQQThiMTZPL0dkdmVWZDlkc0FITlJSRC9kWjd3UHdMQ3ZjSk1LNVg0Y3dwdFcydXVrK3dXeXJhZDQ1cWRsT3p2eGt0YXZPWDhLKzNIR3JaSnZlL2s1VnpqckdXTStmdS9waHZRNVRzVmpuZHJZRThIa0FXemc2K1hNQU8xVG5UMTkybEIyN1NLbjVhbXc3VjYxKzd6UHFDWlI5UElEYnA3TlRDNmYyMkhXMzlLMGsxNDVNUS90RXk3ZVliYnY0VG8zdnJycFM1RXlqeSs1YkEvaHcrcjdQd29kNWY1M2V5MzNPV2pBamYyU2RhNTEzYW5QNHphcm56TC9ablhjWERHYlp4c1J4OHFKSzRQcFdHZno2c3ZCYndsMnE5ZVdWZ1RweWkwYXVZV1NObjJ1ZkoxOTBUaGh6SGV2cFQra3lrYlgwWEs5NWFVYXFUd1JFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJtU1VBQzE3TzhMREpLQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVNnUVNEaWJNU1BweTljSTVwM1NVSmVuclBkS1Q5b2ZtRDE4Zm9sQUc1blpFOEI0NmNBT0s5UmJoTUFaMWFpeG5Ub3RLWSs1NCtvYzRiVmpySHpleDExeHJhcnJyK0VRMFJkVjQ0ZzBVTUFuQS9namdVNnlQSGppUUIrVWFDdWFCVlQzYmNVd2VJelJ5ZVd5NUlUU3JQL1VlZUtLSWRWS0Qva2VMWUtmWkNOeXlmd21DU0s2Wm56YWYwVkFIWUVjSjJqS3hIeERqYm5kZkJ6bUpwZGhHTTV4N1l4MGhSckxLL2pWdTRhd1Z2L3FqaUZSZllUWTl3emM2MXpsY1YzNXNwMDNlenlqQlU1NDRTMVhncWo3Z3JnbnBYNGRFbUI2NXRYZ2htN1YwSTloN2NDOUx5M0VvdWw2TTV2TXk0bzU1c3pra2gybmYzclNUeUlBWGdvclByL2V1cnhyTE05ejYybm5ZeXVLMHNtQWN1NmdmZmRZWm4xYnZSc3owNTcyRGFIRXZ0bzYvNXUwN1NPM3piem92dytqVDBQQnZDR3pETE5iSjV4WUtnWkNyUlFFRzJNNEZZOEw5eG5JSmdhOTBDSEFqaDZ5TkRNM3kwQjB6S3IvSXRzR2x1OTVQNVVibzc3eUhpdlZNT1lCS3hyeURISHpzaDhrN3R2dDdDTW5Pdk0vVm1Nc0s0WjV1eFJobmhIN2ovV2JWMWZETmt6OWUvZS91ZXNoU09DVlZOeldHWjdFcmoyQzF6bmpuT1JzWFNNTmZwVTkxdXBaL0F6NmQwK0JVYW5TcVhXNUJRaVpCQnRUK0sxUDl0VE1KWHBDdDd0RWQ1Y0pHTDVOQUFuT1d6c2UrZkVBRzhNbUcxSlA2NzI4SThFOEZWTG9aNjgzam1wV1YzTy9PUTF0WVI5MXZWaWlUYTkvWjJxWE81WVh0dFQ0aDJSOVRwTXhXS2QyNG5NU1dNKzExSG1wZWFycUIzclZqN3lqUElNbnNHeWMxSXR3TXl6ZSt2WmFkZll4Y0NDSExjNVAvTzkxMVVMak9EN3EzTmE3NTl5Yk9aN3FVY0F1S1luYzNTZjNiVy8zUmZBS1RuR2RlUTVvdnJiYTV4bEZ4V0xqQ25XZWFlMm85VDNrcnhIamxud2Z0R0RhK3YwVGZXOVBZVWJaVjVnRE1RU2FTNXlEVXVjQlVWczd5c2JuUlBtUE4rVjRHVVpuOXZ0OVFYOUtXR1g2aEFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJnZzRIV0lGbGdSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSbUlwQXhObG9yaDhuZTlsRm5HbW4vS0RaS3lMNXF5VEcrWVVHb0lnanhTRUFqdXVBSGFuVGUrM0dMQmR4MUJuVHJycHV2b3VnUTR2WEdiaHRJd1h0bmdEZzZnN2pId1RnSXdDMkt0QXhDaUE5dWhLVi84OENkWldvd3VQQTdHbDN5REVuNmx6aHNXblZ5cXk2UU1tcThWNVhlNzF6YWMxajZGbGV4QzJ5M21DOWtiYkh1cDdiSmJ0dVBVSURVNnl4dklJRXVXc0ViLzJyc3RhTzdDZEd1R1ZtVytVcWkrL01GdXFhR2VZWkszTEdpUU9NenMvMTJQWlhoUVN1YjF2dExaNERnQUpHRENyVlRoUXNZT0FKaXJJdVNqbjdUTzR4UGdUZy9RRCt2V3FUd1dYcTVGbG5lNTViVHp0cmRpc3Z0VHVXZFlQbm1WdHE1NWJZZU4remtQTmNEcGxOc1pJVGh6STFmcmZ1M1JtZ2kyY2NCODFFNEpyclpvcVBiR1BvYzI1V0JnRGdlUHZUQlFVWWJPRGxCYytRS0NCT1FlMnhndDFFeHZCY2Joc2wzeHoza1J1Ri9hcjJNekpQZXRaUTBYVmdYL25jZmJ2bE9rWE9kZWIrTE42M1dwdFROSFV6QzVCVzNyNzNScFlxSS9jZjIxbjE4Mk52LzNQV3doSEJLc3MxWFBXOGZYdnQwa0Z5dUxibE5mR2tHd29HaitYN3hSTmFSbmpQKzNMSHVjaFlXbnFlOGZEM2x0bThFbGY4YkFvcTVxMkQ1Y2FZMzRic09iZ0t2bjNzVUthTTN5TmpOSU94WFZyZHIzZkxhS2NyQzBVcm4xVE5FemMyZnR3aTFVa1J3cHowZ3lSaStaMmV6TjU3dTJzTVo3Qnoya3l4YWt2S2ZRNXo2dlRPU2MyNmMrYW5IRnU2OHBTd3ovbzhsV2pUMjkrcHlsbnZJZStjMGV5UDlUcE14V0tkMjRuTVNReFd1WFBhTzh5TmtjN254N2tpa1dmVThsMUdmWmJMdFdrSmdXdlM0RGQxdDZrQy92MXlBUnJtb1ZqcmdRNThmQi9GQUpGOXdWZWpaK2hkYXljK3Y1OENjQitIdlYrcnl1NEU0RnBIMlVWRkludk5uSG1IWXVXdnJkYlIzS3ZWUVR4NDNmaTNWeGJveTh2U043QjkxOUhTeEIzU2Vma3Vsa0lkZVM4RXdPZm5GOEY2Y290SHJtSE8rK3BjTzBybWk4NEpZNjVqUy9iVFcxZGtEUmZaMTNudFZUa1JFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFSUZFUUFMWHVoVkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBVG1UaUR5b2VwY1AwNzJNdmM2SExLOUtUOW9QZ3JBWVk1T1hwRUVycTlybEkxOG5ENm13SkdqZTZNVmlUanFqR1pVcStKU3poRjF0WjlJRHI1TlVTUTY5dEo1NHQ2Rk92VUNvOUJlb1dZWFZoTVpEM1B0RzNMTWlUcFg1TnF4eXZua0pMSEtWMjgrdG5NZTVYenFUUnduOXh4d2hPeXJPN0xlWUoxRDQ0aTNUNUZ5V3dMNFBBQ0tRWlJPVTZ5eHZJSUV1V3NFYi8ycnN0YWVZdjRzZlY4dG83NVZGdDlaQnErTjJLWm5yTWdaSjZ6cnl4OG40Unc2L0g4Nk9mN25YSSsyTFhjQzhDOEE5cThjekc4MlVNSEhra0FxZ3pMMXBkMlRxRS91dDFqdE9xMGNhSWZudWZXMGs4TlhlZklJV05ZTm5tY3V6NHIxeTlYM0xOdzVyVTN2RitpeTV6bXpyT1dmVWdsOW5BckFlNzA5OW5YaFlDQ1lReXRCbFNNQ3JCWVZwVWo0UzZ0K0xocEhLUUxDY1puQ282VVN1UjZ6UU1DbFZEdmVzWldDU3hRNCtYWXBRMlpRRDhYYWQzRFlNY2Q5cEtNYktqSWhBZSs0NlYxRExlcGFSQXdxZDk5dVFSczUxNW43czhoNTcyd0xqRlplQ2tIdFd1MG5MZ3JVd2FLUis0L2xWLzM4Mk52L25MVnc1SjFnOExLdVZQR2N2WGFKRGtXdVI2bDFhbGMvdU84K0NjQlRIWjFrNEpOOXF6VVkxMkdMVW1Rc0hiUHZqaTZiaWtUbXRHWkQ5ZGxOTGU1bk1zS1oyZnQ5UXJ1NXlQWGJKSWtGN3VIc0EwV3BIOTRTZEtSNDlNVUFLRGlmazdwRXNwdmxOcTNhdUFEQXRqbVZ0ZkxzVjcySC8yRGpiMTVCYjRyV005QmNpZVNkazVwdDU4eFBYbHRMMkdkZEx6NHRqWkZlbSt0eTM4OFlvNnJBYlFBQUlBQkpSRUZVSzZOdGVNdFRpSjludW92RVlKdDFsM2hIWkwwTzNyNnAzSjhJUk9la3lIZys1blh3bmlHTmFkTTYxQjE1UmkzcnZ2b3Mxek91UlBiYjFvQVh6V3ZLYjBZK3N1QWlSNSsxcnYxdFJKQ2JwdGFjUzk2YmtiM04wTFhqMlRvRnlMay8yUkhBRnhxRzgzdkpqenJQUzV2OUx4WElrZGVHMTR6cnNVaGlRTi9kQUZ3ZXFjUllObklOcDlwREc3dUU2Snd3NWpyVzJwY3g4bnZHMnRxT1ZUOTdHNE9uNmhRQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJDQnlRamtPbFZOWnBBYUVnRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVJRVdnY2lIcWlVL1RxYkl5bVlad2xkOUYvRFhBT2pNU1FkNmI3STRWYlRibU9xRDV0c21nWUZkSEozc2NpcjJPa2F5ZVRxUG50dGhSOVE1dzlHMVVZdEVISFZHTmF4VitUOEErQ1NBT3hacXRDbHlYVnJjK25RQWRQNzhUU0ZiUzFXVDR3UjdReEw2bzVQTVRvNkdoeHh6SGdUZ2habjEzaVVKN0hyZVIzSE00cGh3WTJaYlE5bnVEdUN4UTVrVy9FNWgzUC9PTFAvaG5yRW5zN2l5aWNBZmhBb29jdmVrQUl2SUdpaXkzcURKUStOSW9GdnVvbVBPL1ZPc3NYTEcveTQ0dVdzRWIvMlIrOHg5TVIwRkkvc0pSM01yVzJTdXp2NHJDM1FORGZlTUZUbmpoTlY1dHg1M2lUZ2ljTTM1OW9Ra2hqSjB1YmlQcDBQOWgzb3kwbm1kYTBBNmMrY2tuZzg4QnNBbGpjeFdEaXpxZVc0OTdlVDBTWG55Q0ZqV0RaNW5McytLOWN2Vjl5eEVCQTlxU3A3bjdJbHBQenRFbWtJWGp3TndmVUFvMDJOZjJ5NEtnTDhmd0haREJqdC9meFdBb3dmT1dEaU92aG5BQWM0MnVvcTlHOENCRTUzdGVNZFd5NWhRRU0yb1ZYblgzblBjUjQ0S1NwVjNFdGdld0ZhWmJKN2dGRFpsOVc5c2lRMWxOdG1ialdLV0ZLdi9XMGRGRkFSNk9RQ2U2WlpLMjFRaW1FY2FoRENiN1g0OWxjMDVrNzJxbXNjdUsyVjBSajFSZ1N3MjhZTXFTT1lqQUZCQU5KS2k2N1JWRjlueDlqOW4zdU9hZ084MStLNXh5aFI1am1zN1M0OHRpL3B2ZWY3NDdEQkFWSzRJYUxQZHlIbzZkNTE2OC9UdTNmSStMbkxXbTNOT1FRYVJNL0xjdms5NWorZTJWZUxkQk51aWdQak8xZG5IWjNJYkR1YWJrOTNlTVpJSUdCQ29MWXBvclM5bmpubFA1bmxZKzdLOEY4QnpHbi9rMlJiRnNpM3ZnVXNGbTZqTnNQTHB1dFZ5NWlmdkxWckN2dHozUExXTjN2MXBzNC9XTnIxOHBpcm4zYWV1TTVPcDJFZmFpUVlOZUQ0QUJseWJXeXJ4ak02dFQzT3dKekp1YlY0RlFxSndQcjlQWEpTK2x2WXExd0x3akN1UnN5OEdhRG5GQWZwN2FROTh6WUt5a2JVMXErMWJlenlzNHZXcFNrajVWZzY3YzRQU1dLcU83RzBXWGJ0YTNKcUJGNWk2OWdJUEFYQitnZThsb3lMWFhMTWRET0JORm5BOWVSbms4dzNCNzZDdFprU3VZZTQrMEdwVE5IOTBUaGh6SFJ2dFc3UjhkR3hhNVgxNWxKM0tpNEFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpTURTQ1ZnK0pGbTZzVEpBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJnUXhMd09BWFVvRXArbkJ4eFpLVTlKVDYrajlndzFRZk5Xd0tnRU93V2pydjFFQURIdGNwUlhJZU9BblFJc0tSRi9ZMStBRzJ4WTRxOEVVZWRLZXhydGtHeDF0TUNRdkZ0ZTg5THpqSVVwTDUzb2M1OE13a2gwOUZuYm9taTJ5YzFqS0xELzM4QU9DczVCbDBCNEJmcGQ2L0RiTVNwcXMzck5aVXp5K0ZPaUM5SWdvUE80bjlXekNKZTJOVWVoV1oyQVBBL0pZeFJIU0tRUVNEWGlYSlJWYSt2aE54ZWtkRldWNWJJZW9QMWxSeEhuRjNvTExaSXRPSENKSEQxNnZTOFc5cWRZbzNsSGROejF3amUra3V1dFMzTXJYbnBVRXFodENuVGc1TVFqcWROaW55Y1hRa3kvc2hUT0ZEbUhRQytGQ2l2b3V0UHdETlc1SXdUajZ6RWV5NDJDUENWRXJqbUZidC9Xa2ZmT2VQeU5ZVm8yOWtwWm51R1FkQ0h3dG92VG9KUGRWMGVKMmFQYzY2bm5Rdzh5cEpKd0xKdThEeHptV2FzWGJhNUNWem5ycWM1RHJ3OVhRM3Y5ZmFNQS9VTndMTTIya0FSVkFiMks1MTRaa0h4c3c4TUNGMHdRQmZYNm5zVk5LQVpGSzFndGIxVmVjZFd5NWd3UlQ5S3RPRTl5NS9yUHJJRUU5V1JUOEI3LytTM29Kd2xDZVNzOVV1Mnh6VTd4d29HWnZBbUNxMHlNT3JQdlJVRTUrMjYyUnp4MGFDSm94YjNybHZtUE8rVmVHOFlXWmVOZWNIcVFNSVVRK1A3SlFyVThqMVlUa0RtaUlEWUVBOEtXL09kNFRGSkxOOFNkRFppRjgvTWVYWStsSExYOUYzMURQVjlxTzFsLy83V3RFK0kyakdsc0dpSk9ZTDlMUkVJd1hyTzFlYmM1R1lWZDgwVmoyNi9iODY5MWwrc0JFQjNiUVRtb0VEaXNibUZVNzRjb1UxTGxkNDVxZG5HbVBOVENmdHkzL1BVZmZKK1g5Tmt3clVTMzQxLzJYSXhacHkzeEQ3RGVoMW1qR09sVEl0Y3U5dzVmMm9nM2pPa3FlMWN0ZllpenlpRDYvQzk3QzREblQ2aStwM2ZRREY1N2szdjJSZS9kK0w1S2tXdXJZbEJEWjg5c1BhUDdvWDY5cmVSZXNmNFJpdXloK2k3ZG0xeGExNmZMaDdVY0RnMEJZRzBYc04yZnA2NTgxN2dkNExXVk9xYnphblAzdXQrUnE1aDVBenI5a21vL1RvcjhJejgwVGxoekhWc2h2bWpadGswQmRQWjF0Rks3cjdJVWJXS2lJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUk1QkNRd0hVT0plVVJBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRllKZ0dQVTBCdGIrVGo1SGFmb3g4VVI0UW1hMXNpenJSVGZkRHNkZHI4YlNWT3NETUFDZ3cwazVmN2p3SFFscTkyM0x3Uko0cGxQZ3Q5YlVjY2RhYnVEd1dUamdmdzNLa2J6bXlQRHY3N0pFSDZ6Q0tUWnFNNDU1TUJVSWoxOHNyQi9Qb0ZyWHNkWnIxT1ZXMVQ3Z1hnMHdEb1lHSk5pOFFEclhVeGYyVHNaUG56S3dmZUp3RDRsYWR4bFJFQkJ3SHZYTnBzS2lJZUVYMW1TbzBqRG5RTGk3VEZGamptMDZtVGduN2ZCZUJkSC9TdHNieHJtSkw5emwwamVPZU1rcmJXZGEyNnlGUGRqd2pUcWRidFkxdy8xYm5lQkR6M2RjNmUzRHJ2bEJTNDVuZFRyNjJFcGwrWmVlbTZnckJZNTQvdkEzZ1VnRysxMnZUTUd4N1JMRTg3bVhpVUxZT0FaWXozUEhNWkpxeGxsakVGcmltQ2VhNlJXazdBbXE5VkF2czdBYmcyMWUyOTNwNXhnRTFTSEpScllRcGZqWkVvOXNEemkwOE9WSDYzRkFpTndsbWwwaVhwYklmaWRGTWw3OWhxR1JPbTZrdTBIZTlaL2x6M2tWRWVLbThqNEwxL2JLMG9keWtDT1d2OVVtMnhudDBCbkdNSUt0UFY5dHNBSEZUQUtPKzhYVGU5Nm1jZjN2NTc1ejJ1VjdoMjRSZ3hWckx1NjdyczhLN0x4dXBUWFMvdG9tQmZNMUV3N2tOcFBmanZWYUJFaXFSMXBZaUFXQitQcHJEMVh6Y2F0UVE5ZldBbFFNZzEzKzBjOExxQ0xYZFZZejJyYU5ZeDEzc2hGOWNCaFFMUTVnZ3E1dG8wbEM5eXZacDFsd2lFRUJGaW95MFVvV2VnSUtaYW9KNzdwcHlVS3g1OTMvUk54bVk1bFRieU5MKy80SmthUmZPZmFxeWo5SDNoblpPYVpudm5wNXl1bDdBdjl6MVBiWS8xdnVucmgrYzhKSWZKTXZLVTJHZFlyOE15K3JtT2JSNVdCV1U3eXRteHFmY3J1V1o2ejVCeTY5K28rYUxQNktKQTJXVGFmcS9qR1ZlOFoxL2VlWnNDcnh6THp4dTRLYUo3b1VYNzJ4Y0I0RDdjazVxQzRwN3k3VEtSdlUzWHRlc1N0MjZ2NVpvMjhIdkpEd0xZdTBCbitKMEwxMkNuWlFZdVlwT1BUL2x2RTJ5ZmU4bmQwamVMd2FyTXhTUFgwRE1uY0wzTGI1bTVmajJ3K3Zid28yYUxod3RFNTRReDE3SEQxbytiWTh2cUxQRHpBTFp3TkxQT1hCdzRWRVFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFcGljZ2dldnBtYXRGRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCR3dHUFUwRGRndWZqNUQ3cm9zNW4rNlVQMVcyOS8vUGNFZWZNcVQ3Y2JZdEg1dmEzeitIU3kzMlI4MHJVT1NPM1QxUGxpenJxVEdWbjNjNGRrb0QwTGxNM25ORWU3N2RqREE0Z0dWVXVMWXYzMmZFNlZUVTd5dmRQYndid0VrZnY2V1MxRjRDekhHVzdpcFJ3RW5vS2dGTUwyYU5xUkNDSHdHdXFjZWp3bkl3OWVmZ2M3Vm9GZXJqSVdVZGt2Y0VtUzR3anJPZTJBQ2g0OGpOblA5ckZIcGVFa0NoV3o4QWo3MndGQ3ZDdUR5UndYZWdDcFdwV1hlU3BwdUdkaDFsK3FuVjcyU3VuMmpZQ0FjOTluYk1ucDFnWjV3NDZnK2Vra2dMWGJPOGVTUmdyeDBHV290U1BCbkJWdzlBbkFqakRJTFRYSjlybGNXTDJpR1o1MnNtNUxzcVRSOEF5eG51ZXVUd3IxaTlYMzdNUWNZQ1B6TWxjeDFKRWNORzVSM3ZONDczZTFuR0FZeTMzNmhRSHV0bEl0OElYazFESGxRUDFVNXlGZS8vN0ZMVGptd0FlQzREbmpGTW03OWhxR1JPbTdFK2tMZTlaZnFsOVpNUjJsVjArQWUvOXMzekxONllGT1d2OVVtUjQza3hSTEFvS1JkS1RDcDA3ZStmdDJ2WlZQL3Z3OXQ4NjcvRzZjNDQ5SmUyNW5obTUrQU5sdmVlQ3pXcXQ2N0lSdS9QSHFzbndmUUNldGFBeGlxUHhISm1pZmhjQStHa2piMFJBck0yalQ5aTZibzVDYWR4di8yY0dtTWNrV3oyK1VMblhLWEpHbnR0R1JsZVhrcVZFQUU0YTNnN3FNMlpuU29seU44V2xJL2ErdFhyMzhHSm5CVTJSN1M2QitrWFZubGx4MzdjSzVNYkE0b3RTUklTNy91YkZXMGVKYjJhYWZmUE9TYzA2clBPVDVkS1dzTS82TFlqMzJyVDc5WXIwTHMzUzM3bm1MYkhQc0Y2SHViSllOYnVlbHNUMFBYWi9vbHBYN0FuZ2w1N0NJNWJ4bmlHTmFOSmFWQjE5Um9mV0VzZW51WjNmWVRCNXhoWHYyWmRYSkRwM0xSYmRDeTNhMzBhQ0x2Q01tZCs4M0ZEb0RvM3NiZHJYcmsvY21xWXVHbnUyQm5CaDlmM3d2UXYwaWZ1NC9kTzlXTitYZmRWeS8zUTZnRHNXYVBkbFZhQ2hZd3ZVNDZraWNnMnRaMWkzQi9DR0trQXAzK2t5UFIvQWlSNmpCOHBFNTRReDE3RWpkTmRVWldSUGZrMGw3di9RS25EUTFhWVdsVmtFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUktBWUFjOUhYY1VhVjBVaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaWtFSEE0eFJRVjJ2OU9MblBuRnNrY1ZNNnYzc1NoUlIzQlBBRlQrRkdtY2lIdTFOODBNd3o1NU1BUE5YUnozTUFrTytOcmJKMHFPWUgrZGJVZFA1c2w2V2RtMVVPZWJleVZ0cVQvNFdWbytnckhYVWRDZUFkam5MdElyOUxBcDM4OTZxa2trNGJwZnBNSnhQZWcwM24vVkoxTDZNZXI4T3MxNm1xMmNmSVdQVXhBUHNBNExoWklsSFk2cnlBY0JmSGJZcmlYbC9DR05VaEFoa0VHQVRnZkFEYlorVHR5L0xqU3BTRUloUmZkZFlSZVliWlpJbHhoUFhVemx3ZlR2TXMrelBrbkxlb3kzY0hzRzNGOXR3ZVoyYXY4NllFcnAwM1drK3hWUmQ1cXJ2bG5ZZFpmb3AxZTltcnB0bzJDZ0hQZloyeko3YzY3NVlXdU9iMXN3U1hPQ0xsWjdrN3BYbUZJdDA1aVk3ckZNVCtSVWRtS3dkVzRSSE44clNUMHpmbHlTTmdHZU05ejF5ZUZldVhxKzlaaUs1ckxkZXJUWFhSZVZhWFdMNzNldWVPQXp3TDJ4bkF1d0JzTStJdDhINEFGRjBaRWcraWVPR0hBTnk1b0MzWHBmMDd4VSttVHQ2eE5YS1BUZDNIM1BhOFovbWw5cEc1ZGlyZlBBbDQ3NTk1OW1iOXJjcFo2NWVpWUFsSzA5ZG05THlzV2E5MzNxN3JLSFgyd2ZORGlnWmZCbURLOTBQZS9sdm1QUWF1WkR1dlM5REd2dCs4NTRMTit5SjNYVmJxdWNpcFozTUFueklHRlBrNmdPZFZZdE9mcmdTOElnSmlOWThoWWV0bVAzTGZEdzBKRVBheHNieXZqK3dsNW5ndjVOd3ZkUjRHQUxzVUFOL2xSaExQOHZkSTcrZ2k5UXlWcGNBZzN5SHNOcFF4NC9kUzRzdFdZZXFtYVQrb2hBOGZBZUE3MWZjTVZxRnNpL0NldGU3YVJnYWNPS2phenpGZ0ViL0g0RGNYdWFua1hGeTM2WjJUbWpaYjVxZmN2cGEwenlyYUd2bG1wOWsvdnF0OFFzRjM5bFoySmZPWDJHZFlyME5KK3pkeVhaR2dGaHhISDE2SmsxNDdNNERlTTZTWmRXTjI1a1NmMFVYM0dnT3g3QURnZnhxOTlvd3Juck92eUxjajladzlkTEdpZTZGRisxdCtiL3VCRklCanlJNzI3NlhYa3BHOVRmUGFjYTlLd2ZQbjluVG9pdlNOTU0rcXU5SkQwdmRBSmNTbVdmK3JxZ0RDUndQNFRVOTdqd2R3R29EYldDOUFSMzZlL1hPdjJOZFdnU1lXVmhHNWhybG5DbHhIY1R3NHVmWHVvdFE1VHJ1RDBUbGh6SFhzMk5kenFQNEltOUlDK1VPMjZuY1JFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFSUVXQVFsYzY1WVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSR1lPd0dQVTBEZHA5eVBrNGNZVUd5Rkg2dmZieWhqeisrbEhHY2l6clJUZk5BYzRmU0tTbkQ2OVMxK3R3VndOb0JkSE56N0JMTWRWUTBXOFRwT2p2WHgrNkRCTThsUTJta2owcTF2VnM3YUZFTCtYcVNTbVpYMTNwY2VwNnBtMStuTTgwRUFlenQ0bEI2bjdncmdrd0R1NzdDbEx2SUNBQ2NFeXF1b0NGZ0o3QTZBYzFqa1BXN1VXU2V5M21CL28rTkl6ZXhnQU1jMkFINGJBSU5Ebko0aG1HZmx6dnhlNTAwSlhIdG85NWRabC9XUmR4NG1tZEx6WWRrcnBObzJNZ0hQZloyeko3ZldPNGJBdFVVdzcvdlZHdk5SQUNoUVMrRWpPdWZuSk5wTlFWZUt6M1VsajZPdVJ6VEwwMDV0THdXNnI4enBiQ3NQaGZmKzNsanU5MG1naXVKSDFyUnBFaEsvV1U5QkNsTHdyT0hYMW9vYitSOE1nR3NtYTdLTThkWm53MnJMT3VXZm84QjFleTNiNU4yMTN2RmU3NXh4WU1za2pFWmhxckVTbjFuMitlMERBcHZjNXp3VHdIc0RnYWk2K3NEbm1vSjJsNC9Wd1lGNnZXT3JaVXhZVXRmTXpYclA4a3Z0STgwR3E4Q3NDSGp2bjFsMVlnTVprN1BXTDRXRHdSTW96aFZKSmQ4WmVlZnQydjVTWngrMUhad0gzNWNZOFIxSEpFQmNEbU52LzNQblBZcWx2anV0Nld0N1NsNi9yajU2endXYmRlV3N5M0w0bHN6ak9XdHVDdEJHQk1TNDltU2c0V09xKy9PdkRaMTZlZ3FtdktpSU56aHlVemg0eUtUSUdma2M3NFdoL2paL2p3YitidFoxS2dCZTA5OWFERERtZlZnU2NvOEd0aTRwdm56UEpCSitOMk5mNnV3VUJxZDROTWMrQmpQTlNibGpiRjBYQTdDZG1WTnhLdzhEUnUrWnpzWm9ueVdOc2ViM3prbE51NjNzTEgwdVlaOUh0SFhSbVVTdS9UdzMyNm5hYTM4dXQ4Q004NVhZWjNpdXc0eVJySXhwSGpIOXVuTS9UNkxFWDU1WmI3MW5TSFUzVm4yZHNlaHlSSjdWNkRPNjZGN2pPU2FEU0RUWE14NWJQZk9nZDUxRFd4bnNrT3VKb1JUZEN3M3RiejE3a3RwbUNpby91OUFlTjdLM3FhL2QveDBRdDZiZE9XTVA3NmQzRGwwWXcrOWRRU2Q1RHI5WCtuNlAzL0ZGMHh5K3E0eGN3NXd6ck51bmM1Vm5kTURpT1BDY0tNU084dEU1WWN4MTdBamROVlVaV2M5eW43UHZ5UHRRVTJlVVdRUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUTJHb0dJWS9SR1k2WCtpb0FJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlMSWVBeHltZ3RqVG40K1NjWGowR3dBVUJzY2xTSDgxR25HbW4rS0RaYXgrZDdYZXRIRFF2YWwyTXphdS9meFlBblVDdHlYcnQrUkg4THlzeG5wOVpHd0xnZFV3Y2N2S29UYUVRRWZNZUI0Qmk2ZXVVbmxRSng1OVdXTlRJeW1mWklraFdlM1B6ZSs5TGoxTlYweVlLaFovbnZLYkhBM2h4SWVja091aXd2dWZtQXV2STk1VWtRdmpEUUIwcUtnSVdBaFNPb0VnbUhXMGlLZXJvNTUzUGE1dWo0MGhkejF2VG1OQm1RZkc4a3dBY0RlQ3JoY1lNdHVGMTNwVEFkZVJ1L2N1eXVldWpzcTJXcjgwN0Q5T1NLZGJ0NVh1c0dqY0NBYzk5UGJRdnUzVVNNYVlvYVc0YVErQ2FiYittbWxNT3p6RGlDd0FZQk9VcVl6QVZCbWw0OVlKNXkrUEU3Qkd6OExSVFkvRzA1dzFzOUJZQUx6WE84L3dPanFJTjc2cldWTnNNWE1zakFCd0Y0RGNaMTd3cmkrZDVzSTd4M2phY1hWcnBZbk1VdUg1Y0VpTnJnNlU0UHNYdU9ZWTBrL2Q2TDNvdU9jWnlqODN4cDRTSVJkOU5jbDIxTG45eUdoTVgzVWkwaDg4ZG4rMlNpZWM2RExMVlBsY3MyY1pRWFpHeDlVZlZ1ZCtOUXcyczBPOFU4ZlBjYjZYMmtTdUVTcVoyRUlpOEN4TFE2UWtNcmZWTFdjVDNSSjhDY0o5Z2hTWFBHN3p6ZHQyRlVyWjBQVE1NRUVkQjRUT3FkY0QxUVdaOXhiMzl6em52b0xEY1dSM1hlK3g1d25zdTJHVGsyUytOZEluK1VDMzNSeFNHUDlEWXlQa0FLRTc5S3dBUkFiR0RBUENmZXhuYjUzdFFCajd1QzY1ME82UG9iN1A1S3dEc0NJRHIxNkVVT1NPZjI3MHcxTmV1M3c4b0ZQeVZBcm44enVJU2p4RVpaZmhPaFVGcTk4L0lPNVNsZWU4UDVSMzZmWk1rSGsyaGFrODZCTUQvTVlwa1d3T2Zla1ZqNjhEdXp3THdCbVBuZUJiRDg3ZVN5VHNuTlczSW1aKzhOcGV3enlQYVNtSDBpNnZ6QUQ0amtWVHkzWDNFam1qWkV2c016M1dJMnEzeXdKMVRZT1g3T1dGd0hEN1hXWGFzWXBFekpOcTBEdXVNUHJhUlp6WDZqUGJkYTMxemhNZFc2NTdHdTU0blh3WmE1WHUzbjJiY3lORzkwTkQrTnJLbnZ5WUoxWDgzb3g5RFdTSjdHMTQ3ZnQvSWMzYUtVdytsb2JHbnhQZHNiUnU0RnVRWk9mZFJONitFdHJtZTVQYzBKZEpjdnF1TVhNTkZaMWg4MXZaSjd4WXBjdDJWVGs1Qmowc0hGSXZPQ1dPdVkwdmNPNUU2UE9OczNkN3JxL2UvcjRnMHJySWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUl4QWhLNGp2RlRhUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFnZkVKUkQ1V0xlRmdIM0VZcU9rTWZjeWZTekhpVER2RkI4MVBTNEtUdWYycDgvMEF3Q002eEpzZm1CeGU2YXhzVFJibWROYWd3L3oyeVJHQmdzdS9NelRvZFV3Y3NyRXRSUFNKNURDUjQ0QmlNSCtwV2ZsOEhWclFxY0xhR1lxazBrbUJJdlRybHJ6M3BkV3Bxc2t0NnZqRXVpaU8vYnJrY0dWNUR0dlhyNFI0T29VTDZSaXZKQUpURVlqTTgwMGI2VlIzWXNEb3FCMlJjYVEyTzFjQWdtSndid0xBOWVLMWdUNnpxSGNNazhCMUVIeXIrTkQ2cUd4cjQ5WG1uWWRwMFJUcjl2RjZycHJYbVlEbnZoN2FrMU1ROVJSak1LbGFxT0N2S3BIWVR3TzRUU2IwSVZzb3VzWDY2Q0RkVHZWODg5NkdTSnlGUjA3Z0ZJOFRzMGZNd3ROT3pjUGEzaDNTWG92aVpKYVV3NnRkSDUzT0taejdJa05EdklZVS8vTTRwRnV1ZjlNa3l4anZiY09BWUcyeTl0MmJmU0xUdVIyUENLUDBuV2xSY1BydEhRWjRyM2RYM3kxaTc3a3Mrdkx4ckdxLzZqeU5aM3VMRWtXUEdhVEdPaDRNMlVlUmVnWUk0cm5lTWxOa2JGMm0zWE5xdThRK2NrNzlrUzArQXBGM1FiNFdWU3BDWUdoOUhhbTdXWmJuWE84TVZtWlpnK1UwNVoyMzY3cExuSDNjRnNEWkEzTXJnL053dlh0T0N2Q2EwN2VjUE43K0w3b09YTDg4SGNCN2VnSWxSTlpsT1gzeW5nczI2N2J1bDNMc2l1VHhDc2sxNzgrSWdCaDViT0Y4ZmhjRlBHSlE1RXVyZHpkY1gxb1QxNjU3Wmo0UGtUUHl1ZDBMVms3TTd4VS83bXFMNHRaY0w0L3hmanNTZExkdGEvUzlTcnMrNzFqSmVpaE96KzhWTEFMRkxFTlIrZHprSGZkK1hBVVhvbmd5eDRwbjVEWUc0TGNwS05sbkRHVnlza1k0MS9XWFhpYzA3UzVobjJjT2pJb0NOOWt3U0JlRlVsYzVsZGhuZUs3REtqT2JpKzBVYVQ4MWZTZmxzWWtDcjhkNUNvNVlKbnFHdEE3cmpENjhrV2MxK296MmZadkErNC83Rk01anplU3gxWHIyZFkvMHpTVFgxTlprQ1NyaFhSUFVOdVhzYi9zQ20rZjBxOVFhTGJLMzRUejQzd0NlazJOd0V0YWx3TzZpNUgxL3RxaE9CdkpoNEJjR0xHSXdrbExwWlFDT0xWVlpvSjdJTmV3N3c5b1NBTzlQTWx1VXJNOXZiamVqYzhLWTY5amNQb3lSTHhMWWl2YnduZFVIeHpCTWRZcUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDT1FSa01CMUhpZmxFZ0VSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJXQjRCajFOQWJXMEpCL3VJd3dEdEtPbXNGM0dtbmVLRFpqcWU4ME41YStwektINWlRSGpZOHFGeVd5RGhjd0NlV24zc2YyVm1SN3lPaVgxT0hqZFBvc3NVMXFWSVZ6TWRDZURWVGdHdXpPNU1udTJXQUk0SDhOekpXd1lpZ21aTE1OZlVwUGUrakRobGxCQWJxVHNaRWExOUNJRHpBZHpSUk96UE0xUDhnMkpvMXdmcW1LTG9WZ0QycU1RWTZWeThiUkwvb0hQNUo2di8vMWh5ZUtQZ2w5TDhDZEJCbCtPK1p4NXQ5cTdFZkI5WmI5Q1d5RGhTOTJWVEFCZWsrenIzNm4wcE9kWjlPRk9rcEYydjEzbFRBdGU1Vnlndlg0NFRiRjVOeTgzbG5ZZHBkWW5uZUxtOTk3Zk9vRGRjQTN6RFg0Vktqa2pBYzE4emtNd2JLd0dBYjFjaU8xeWoxRUxDZE54K0lRRHViMjVtdFBtTEFIWUZRRkdya2dMWC9JYnF6UUJlMHJDbkwvaktJakhzZG5jWVZJZU8wUjhaNktmSGlka2padUZwcHpiZDBwNTNuL2RyQUk5SjY5amNXNE9Pemg4SHNFTnVnWlNQMTRackw1NDdXVVd1UGMrRGRZejN0bUhFc0JiWisrN055UDFPTUJGaGxDNHhxVVhpN2Q3cjNlNDdSZi9mQWVDWkkxOVpQai8vbk1iTm9UM25kdWw4ai92WGttbE9RY3VpOTFwSkxxdGFWNGw5NUtyMlhYYi9pVURrWFpBNFRrK2d4UHUzSWFzNWQvQ2NrK3Z2U0NvOXhuam43Ym9QSmM0K0xHZG5uRE81dDZGb01NVlNoK2J1SWRiZS92ZWRkekRZSzRQVnZIUkJ3MzJCY29kc3pmM2RleTdZck4reVg4cTFLNUp2OXlSdWJ2RVhhbCtqaUlBWWVmQis0M3VLSFkwZFdiUXZaTDBVZC9ja0JxM0tGYVdMbkpIUDdWN3dzT0w3aWcra1lES2U4dTB5NzY3Ty9BNHNNUDQwNjkyNkNxQjlZU1ZjZHU4Q0JsNlR6aFMrVzZDdXVncUtRRnNFcXB0Tjh6enRaT04zRWhSdkh6cDdhbmZQSXpiSmNZTHZUL205Z2lXQTBSVnBMS0R3WXNua25aT2FOb3g1SGwvQ1B1L1poT2Y2ZGwyYlZYbG52dWkrS3JIUDhGNkhrdmY3UnEzcnNMUlc5UFNmWXltL0hiT2UvWHJheWkwVFBVTmFoM1ZHSDZ2SXMxcmlHZVdlaFBkYm5SYk5EeDVicmZ0U0J2TmtBQXRyc3M1cjBiMVF6djcyWVFBK0JlQlcxczZrYjcvNGp1MVhqckxOSXBHOWpiVnBydVVZbExFdGpONnVaek1BWjZRZ0lOWTJwc28veGpyZWEzdmtHcmJQc1BodExvTXdzMzg1Z1pUSFdzdEc1d1RyOCs1bFAzVzVTR0FyamhVOGcrQWFWa2tFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkdCSkJDd2ZyQzNKUkRVckFpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlLd3dRbDRuQUpxWkNVYzdLTk9aN1g0MWcwRnJtUEVtWGJzRDVvdHp2UnRGSyt2SEZwZjBjSEg2NmhFNXlRS25sMlV3YnhQbUl3Ty9xOU16aUpEVGhMZWU2VEx5ZU4rQU41ZmlYTlIvS2NyelVtOEp3TnZkaFlLM0owS2dBNzNVNlU1T1dHTTBXZnZmV2wxcXFwdHYzdmwvRTJ4ZWpvWmxFNTBPbmhkRXVFWUV0KzRieEpNaU5qQjU0ejNJaDNqNTVvNFZ2d3JnTWNPR1Bpek5KWXhBTUhRV0RiWHZtNFV1M2d0S1RSakZmbHM4N2tNd0c2VklNeFBBK0FpNncwMjZ4MUhtaVpISEphODdYdWROeVZ3SGJqWk9vcm1PTUdXYlhHYzJyenpNSzBaZTkwK1RvL2p0VEs0RGRlRG5PdWZBdUNqTXhNZGlQZHc5V3Z3M05mblZzRnM3bUlNV0RCRTZod0FUd0p3ZjZmQXRYZThIN0xMODN2emVmYzRNWHZFTER6dDFIM0xiWS9mb3gwSzRHZ0hGSjREdk1IeC9IdUQzSGozMko3bndUckdlOXR3WUYvNUluTVV1TjRraVpFeElGR2RubDRKZEo3VVE5dDd2YnY2WGxMb3JjdGNCaTJnT0R6WDNZc1NSU0lveEhML29iazlBQUFnQUVsRVFWUmNnWDFPdXgydUZ5Z1NjdFpNN3Q3STJEcVRMaXpkRE84K2J1bUd5NENpQkNMdmdvb2Fvc3F5Q0pSNC83YW9vYTRBTkZtR2RXUjZNWUMzZXd0M2xQUE8yM1ZWSmM0K3Rxek9zRDlmaVRGdFlld1gxNzhVME9MOGZMbGozYzNtdlAzdk91KzRXMW9mRFlta2ppMVFWR0tmbUx0Zk1sNHlWM1krUCsrckF2ayt5MWk2UFI5SEJNUnFIdDV6Yndwajc5UHhYaU1pMkhwSXV2ZHpzRVRPeU9kMEwrVDB0UytQUnlSOVVYdEhKSUhTb2ZkOE9UWno3RGpORWVpcXIyNEdBS0RJZmtrQjFLNmdSemw5WXg0K2k1L3ArWDZpcXc1dkVBQ3ZZRHlGNGcrdXJnSGZWZVltZnYvdzdNS01JM05TMCs0eHorTzljMmJUUHE5b2EwUk10SDFkK2Y2U2UvREl1OGZjZTZYT3h3QVlYTU54RGVBUmVHMjJWMktmNGIwTzFuNHIvMThTb0tnKzN3bDQwbGlDcEI1YjZqTFJNNlIxV1dkME1ZdzhxeVdlMGFlMXptNFpIT1g1UFNMRkhsc3RaMThjQXhuVW05OTlXTlA1S2VocTd2ZEIwYjFRenY2VzN3VFNydTJ0blNuNDNqeXl0N0dhYlJsN3hqN0x0OXJlek05dkFQaytkc3I1ZjVHOWtXdllQTU1hK2phM3k0WVNZMHhYdmRFNVljeDFiT1RlaVpabElPUUxBSGowVDc1WGZlL0pvT29NWXFRa0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpS3dKQUtlQTk0bG1hcG1SVUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVOaWdCajFOQWpTcnFZRjlDc0pYT1ZnY1Z1bllSWjlxeFAyaW1xQ3dkTFRkejlIVlBBQjlwbGVzU0FzcXQrc2VWdVBVakFYeDFvTUF0QWJ4cndNR2JvajNQQTNEeEFvZExyMk5pMDhuajlzbXBsOEkvUSttYlNkU1dIMlN2VTZKRHk1a0Fob1FNU3ZTWmpraTFRMlNKK3VaWWgvZSt0RGhWMWYyK1JYSXNwWFBYbUlrT1dIeG0zd0dBejBIYjBaeUM5WFJ1dkhmUWlCUFMvZkhiWUQxakZPZTdQWXFpVWJDYVkxaHVvdVBSZnBVREhwM2NsZVpINEU2Vk14OEZRUHVDRzFnc3BrakVheXdGT3ZKRzFodXN6ak9PdE0zZ1BNNjVsK09MTlhHTXA4Q0NOWG1kTnlWd2JTVzlPSCtPRTJ6WkZzZXB6VHNQMDVxeDErM2o5TmhmSytjMkNoYWQzQksvZkZVU3h5MGhldU8zVGlXYkJEejM5UWVxUUNVVU9IMXFRWlIxZ0NUcmZGV2ZEM2pIKzRKZCtHTlY2eXB3VFlkM0NrMVpBM2RFbmVXOTdmNGtDVVZRNEM4M2VaNEg2eGp2YlNPM0QrdVVyMC9ZSmNvd0tsclFGTjhiV2lON2JlM3JlNG5nVDEzM0NNZFNucWN3bU5LaXhQTkJCaFpqQUl2U2FXN2kxdXhmVklpaU5LTlZyRy9vR1ptNlR4UVNla2tna0J1RHBwMCt0ZEZyMEY3a1hkQWFkSC9sdWhCOS96YlVZYThvYnJ0ZXIram5JdnU4ODNaZFo0bXpEK3QrcU4wZnJyMzVidTZYUXhlaTQzZHYvOXZuSFk4RzhLRktmSndpc0RtSjYvMnhnbHVVMkNmT1NXendIdFc3dGtzY0F1anRlek1pSUZiejRIdU1Ed0xZTytjaU4vTHcvYzllcldzZUNiWnNDWTVNTXlMUDJKenVCU1AyUDh0ZTRybG90OC8xRWQ4bDhsMitOLzE5R2p2dTQ2MmdWZTQ2QUR0VjkraFhDdFZYVjhNelQzNG5jcUNqWG9vaWNwem0zaXNuMWNIZ2JzekozTWpqRFRUS2IxOWVWZ25wLzdXaFBiNmo1RmhRT25ubnBLWWRZNTdIbDdEUGV6WVJFVWZ0dWs1ZlRHUDVsYVV2WXFzKzJzMEFtRyt1Z2hMd0c1b1M2NllTK3d6dmRSZ1oxNGFvUHZJdDJwalB0eGQrOUF4cFhkWVpYZndpejJxSlo3VDVmUUxmR2V4UXJVZi9wK2RDZTJ5MW5IMUZnaFJ3clhXaTRRYU5ydmx5eCtuSW5GamlHNWpJM3NhQTh3OVpyV1BQdHVsN29keTlzZFVlVDM2dWpSOFBZRTdmcGthdUljK3crR3p3dlBjb3gvdEw2elhOWlI2ZEU4YXlLOWYrc2ZKRnhndnYzbWlzdnFoZUVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVkaVFCQ1J3dlNFdnV6b3RBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpdEZ3T01VVUhjdzRtQmZRckRWNml3N2RHRWl6clJqZjlEOE5BQW5EWFdnNC9jK01lck5BWHpXS1NMeUhRQVBCM0R0Z0QxUEJuQUtnSnl6OGc4bm9mS3JPK3IwZmxSTko0L2prcUFmQlh2cG9KZWI2QUJNNXVzaytFZmh1MmNtQVdQKzkxaUo5d2NkbGE4YXE0R1oxT3U5THkxT1ZYVlhTNG1OV05CUmZQN0lKQlpFRVk1UzRsMXpGcERuV0hVd2dEZFpRRFh5enRFQnlkbVZ0U3JHNi9wYUFLOHMwS3RmcC9IdGM4RzZJdXNOTnUwWlI5b21lOWNWck9lUU5MOWFNWGlkTnlWd2JTVzlPSCt1RTJ6WlZzdlg1cDJIYWNuWTYvYnl2ZlhYeURHUTZ6OEswM2NKNFZLNDZybEIwUnUvZFNyWkp1QzVyN2tuLzNweUZpNUZkSS9rNkcyZHJ5UndmZE1WaURoTDU0aG4wT0dkNHRhM01WNXdqOGgwdXdtT0tZY21jWHhqODZDZzFlTUFVS3duSjNtZUIrc1lUM3Vla0dPTTh2d2hDTktYT2poNHIxTmRGUU81Y2N6NXVaTXg5Mi9IQXZnOWdOMEJVUEMyTDNsdFhmUmNQZ1RBK1FEdTZMUy9XWXlDMWx5amYzeEJBTGc2LzQ0QUdPQmdxd0x0ZGxYQnN6Q0txUjBQNEhjanRXR3ROaksyV3R0YTEvd2w5cEVsMlhqRi9tb2J1Z0k2bHJSdlhldUt2QXRhVnlaejdsZmsvZHRRdjdaTzgyWTBrQ0hiT1RVRkRDd1p6TkE3YjlmOUxuSDJFWjE3SXNGNXZmMnZ6enU0Ym1Pd1Y3NGZzd1RGS2NHdDc5N3puZ3MyNjh2Wkx3M2QrNlYrM3plOS83VFUxM1VlRlJFUWEvTHdDdlR4blFhRjBIK1lPbUk5QjJqMjN5cDJIMmxyVHZlQzVSN295c3VBTldka3ZrdlBiWXZCYkJtODdKMlZnUFAxdVlYUy91S3dKRXhuS0RhWWxlOGFYNTJ4enhtc3FDTUQ3NFd6UFFYVFBqSjNqUFNPajk2eGp5S2lXeHJHY092elowSG1uWk9hYll4NUhsL0N2b2hvYStsbm1QdHh2cy9rT29MUGNzbkVNNFIvcXI3eGVVRjF0a2VSNjVMcnBoTDdqTWgxS01scEk5WjF1eFRrbk9MRG5qU1d3TDdIRnBhSnJ1UFhhWjNSWmhoNVZrczhvODJ6b0xjQWVPbUM5WUhIMXR5enIwaVFqR3VTTVBkM0RUZW9kejFnSGFjZmtJTHdlTTZxK2Q1bTEwcWMrQVpEdjlwWkkzc2JUN1BXc2Fma1diN0gzbWFadVg0M0Y3bUc3QlBYMXRzNDRaVCtCcncySXpvbmpMbU9kYUlLRitNMyt6ekxZNUF6VDZvRFpYdktxb3dJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUVBaEFqbWlIWVdhVWpVaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaTRDTGdjUXFvRzRvNDJQTWpXWW95NVRvT2RuV09qcmVQcVJ3dDZiUlhJa1djYWNmK29QbXRsUlBxaXgyZDdCTUxvblBTeFpXQUxUOWF0cVpQQUtDSUNFVnYrNUpISUtIUFljL3JtRWhuMC84QWNKN3pQcU9ZRDRXU1ZqM3hYY1VPQU9nZzlLQ0pPa09IeThNQnZIMEU1OHVKdWpEWWpQZSt6SFdxcWcyNEZRQTZsTCs4NVd3NmFHQ2hEQlFLdTZoNmpoNXFGSW52YXA1MTdRUGd6RUsybGE2R3p3bjdTdWJlOUxIVXg5Sk94MTU3Vk80bXA1em9lcVBtU1BFNmlpQkdyMjlrdlVGYnJPTkkxMzNnWFZkRUhNdTh6cHNTdUM3N0pIdkZPTXBhRWEvTk93K3o1YkhYN2ZIZWxhbUJhOEFEMHhwdzBaNkxUc3Q3QTdpeVRMT3FKVURBYzE5elQwNGhuMUxycSs5VlFuZVBxSVRQNmFSdm5hOGtjSDNUeFk4NFN3K0paL0Q4ZzhHWVBBSUZwZmEzdDB5aXR4VEh0eWFMMDc3bmVkaElZN3lWL1ZqNXZXdksycDdvdXBZaTVlZWs1MklvU0puM25ocDZMaGtBanFMVW51ZXk1c0NnYnkvTU9OK2tBQlZGNW84WTY0SzI2bjEvRXNkY2RQNDNrU21oc1hVcUcrZmVUdlI1SzkwL3pta1hPTVVjUFdKQ3BlMWYxZm9pNzRKV3RjK3JiSGZrL2R1aWZ0OGg3UjkyS1FBbko4aUVweG52dkYyM1ZlTHNJMnJEOHdHYzZPbDhkZmJvYlp2bkhUeTdQQUFBQlRldGFheDdqblo0endXYmZSaGFsMW43NjgzUE5SblhiN3NaSytnNlc0NElpRFY1OEYzdkNWWGcyZjJOTmpFN2hVNVpsc2w3NzdHc1ZSVFBldVl3eDN2Qmdmc3ZpdkIrNHZ1TGZ5eFJXVWNkdkM0OFI3ZzhCVWhqQUJzR3grWmN3SGRoZjV1Q1dqOGovWGRwTTc0R2dFRjh1d0pjbDJnckdqUWx4d1lHY05pNStpYUYzMXg0MGxIcFBhK25iRzRaN292NUx1ekczQUtHZkpGeG9XNW16UFA0RXZaRlJGdEx6RzlkbDROQnNJNEdjRElBbnRmeTNadzFNZUQ1M2RPOThld0Z6M2lKZFZPSmZVYmtPbGpaS1A5ZkVvaWM4Zkg4aVBlWTV6NGQ0MXBFenVkcHoxelduR093aVR5ckpaN1JUZE5aMEJZQUhnWGdXd3M2NmJFMTkrenJIa2tJbW5aWUV3TUM4dHROeS8wZW5TdHl4Mm52UG9VTTJCOEdvdVQzbGQ0VTJkdDQydlNNUFNYTzhqMjJOc3VVQ0VZYnRhR3YvTlRYc0cwSDE3TU16bDB5UmVlRU1kZXhKZnRwcVl0ajM2VUErRzIzTlVXK0Y3TzJwZndpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJTENFamdXcmVIQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWpBM0FsNG5BTHFQbm1kblI4Q2dJNjhFZkdYSnRldko0ZDhPbmg5QXdDRmtqMHA0a3c3NWdmTnRaUEh0bzVPdmExeVZEMm9vOXpCQWZIbXZqcnJaaWg0OWE1S0pPOVpEbnQvblVUTEwybVU5VG9tMHNuampaV1Q3cHNCdk1SaEM1MEtIbDJKZWYrbm8rd2NpdkFkQlo4MVhxL3RsbVFRblM5ZkNlQTlCUVJobDlTRjNtYTk5Mld1VTFXN1lUcWhjZ3lnNk5WK1R0SDJaVE9rU0FLZHZlZ01QcmNVZFNwcjl1Y3BBRTZkV3djM3FEMmwxeHU4ZnluY0gwMlI5UWJiOW80anRkMmJwSFVUblJTdGlVRkZLSHo2SFd2QmdKQ05CSzRkc0JjVXlYV0NMZHRxK2RxODh6QXRHWFBkWHI2bnZocTVEdVI2LzAyWnhhOUtRaGRmeU15dmJPTVE4TnpYM0pOemJ1TGNRT2YxYUdvNjUxdm5Ld2xjMzBRLzRpemRKNTdCWjNvdkFCOEV3UDIyTlpVS3dzSTE4KzJTRU5aSlNRVGRhZ3NEWnRGSi9hY0RCVDNQdzBZWjQ2M014OHdmT1ZPa1hkRjE3UVBUdXBhQkdvYk9icnozVkk2b2pUZW9EczlNbnBjRTdZWkVVZjRHQUorN3FjOTM1aElJSXpLMmp2a01yRkxkMGVldGRGOGpaOU1NN0xIdlRNK1hTbk1xWGQ5eGFVMlJVKzltQUc2Yms3RWp6dzBBZnVFc3V3ckZlSzV5RjZlaEZJVCtQZ0QrZXlpZGtmWjFRL2tzdjBlQ2xYUzFVeW9ZWEx0dTc3eGQxMVBpN0lQdk5EeGl3YlFoS29ZYTZUL0ZhL2t1d1pQNkF1WjY2bXFYS1hIK25yTXVLMkhyVUIwUFNJSjQxbmZjWFdmTEVRR3hOZyt2WFJRVzVMdFFyazM1VEc4L0JLRG45L2RXSXNiUE1aUzFuamswcTU3THZXRG83c0tzLzFDSlBINnk0SGNUcGV5SzFqTkYwTnZJdTQ3Yy9sMVJCUTNmc1FyK2MxMXVnVmErT2pDVHMzaFdzUkx6WGw5RGtUbXByblBNOC9nUzlrVkZXeW5pN2cyNG5uT0JHWFRxODBtSThMOHJJV0hheS9QOFp0b0t3RjhEb09qNy9kTjd2RzF5S3ErRTBVdmNQOUh6SVpvYXZRNlozVlcySGdLY1d4bEkwNU9pNDZTbnpVVmxvbWRJNjdiT2FMS0tQS3NsbmxFR1plRjNOSHdYU1JIL1JjbGphKzdaMTJzcVFlZkRIVGVlVndRNnVoZXlqTk1NZGxRSHI3RjIwU1BlM1d3anNyZXgyc3I4MWdBN2RSdVJRTEllTzV0bDVpeHVUVHVudm9adG5wWjdQZmRhUk9lRU1kZXh1WDBvblM4U2VETHl2VmpwZnFnK0VSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVkalFCQ1J3dmFFdnZ6b3ZBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpdEJ3T01VVUhmTUkzRDlJQUFmQVVBbnF6RVNuU1hwdEVEaHAzT1RXTUNRU0V4dFI4U1pkc3dQbXU5YmlUN1RzWnlpRXRaRUlWeXlhS2JhYVlRQ1BKNzAvT3FqOWhNWEZId3lnRk1BZU03STMxSUpYYjIwY2lacFhqT3ZZMkw5NGZ0ZGsyTXduZm1zS1ZkOHkxcnZtUGtwWHJBN2dDTUI4SG1iUS9vVmdOY0RlR2NsY0h6OUhBd3FZSVAzdnN4MXFscGtJb1ZJZUkxZnRRUnhLeSs2dVQ5TEVRZU9OcE94aEYyODdEZHF1YTByQis0THF6bnczb1VBZkEzQVRnQ3VMVkJmWkwzQjVxUGp5T1lBUHBzYzNhM2RpUWpkZUowM0pYQnR2VXFMODQvaEdGald3cnphdlBNd2F4OXozWjVuL2JpNXVCWjhlVnA3V1ZvaWwzMnF0Y1hITFlXVXR5Z0J6MzNOUFRtZmE0cWNVTVFra2hoc2lIUGQ1MUlsMXZsS0F0YzNnWXM0UzNlSloxQzQvTFdWU09UTG5CZjNmNU9RNWM4cjhZajd0T3FnNk0yOUduKzdRd3FxVTR0b2MrNW13SzNTaWFJL0ZDWmRKSEx0ZVI0MndoaGYrbHBFNnFQb0tZVnZkZ2xVVW1KZHkyZU9ZbnBEWjMvZWV5cEgxSWJuWDRkbUNMTTBVWEhNcE1naGhRUVhKYzdyQjZhZ0ZSNkIrOERsK1dOUkNybVJRejAvbEtqVFdrZGtiTFcydGE3NW84OWJTUzU4WmlqWS9sUm5wVU5uMDg1cVZheEZ3RHR1c3BxY3NYT1ZnVnZYeWMyK0x2Tlo5TXhYaTY0VDUxNEdZVGxyaElzWnVmOW9UdlRzSTdyT3VhWVN1bnhvSmZaN3RaTk50UC9PWmhHMWUxRzczblBCWnAxekdWczhnbmcvQnZCSUFGOXRRWW9JaUxWNThCbG53RnV1SGEySjd4UDVUdjNpNmp6cFZ0YkNLYjkxZm82TXBYTzVGNXlvT29zZFlnaFVWN0xkTWV1YUt1anQyR1BtK3l2aDNXZG43RG43V1BMczVkSktiUEp1SThHT0JsVVlNcXNFM3pIUDQwdllGeFZ0NWJjM0hIODVEcTVpaXE2YjJPZklOMmMxcytoMVdFWDJjN0w1SGltQXh4WU9vOFllaDZ3bVJjK1ExbkdkVVRPTVBLdWxudEZucEtBQVB4eTRzQjViYy9iYi9FN2lVeDN2U25MdXM4dXE4OUhkTW9KM3R1dUs3b1VzNDNSazNmRzlGQ0NCKzBKUGl1eHRQTzFSYVBkUkFMN3BLUHp3OUQ3Y0dyVEkwZFFmaTFEY21vRTZMNHBVTW5MWnFhOWh1enZXb0VrNU9LSnp3cGpyMkJ6N3g4aHpGSUREbkJXZms0SVkzK2dzcjJJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBS0ZDSGpFT3dvMXJXcEVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVJSXVBeHltZ3J0Z3FjUDFvQUI4Q2NPY3N5OHBrNGdmaUZOdzVOVGtwTFByQWxnTFNPd0R3Q01iOEpqbjgwRW01ZEhwYUV2Mncxa3NCSy9ibnk2MkNkRXFpSXlYRlA2MXB5RG1KNGxpZnJnU3crZEc3TlZFODlMRWRUdjlleDhTbWt3ZnJwWWpXemF4R0FXRDd4d1FjVngxTnVvcmNQamxPVXZqc0xxNGF4aTlFQVhvSzJCeWRIUG1IQktqR3Q4amZndmUrekhHcXNsaDFKd0Q3SjhHN3VWNTNPaFR4R2FSRDFGd1RuVGZveEZFaTlZbFZsS2hiZGVRUjJCTEFoNU5BWTE2SjRWeEhWRmtvWGxJaVJjUTcySDUwSE5rdTFVSEJUR3VLT0pWNW5UY2xjRzI5U292elc1eGd5N1pjdGpidlBFd3IxdEVSc2FiTGZjd3JxblhyNFU3Y1hLdTlwRnBMSHI4Q2ExOW5GMmRkekhOZmMwLytJZ0IwS0tWWVZpUnhqS2NRQy9kOFROYjVTZ0xYTjNHTE9FczN4VFA0UEQ4K0NWeHRFN213TXkzNzdpUzh4ck9VcnVSNUh0WjlqSi9icGFUNCtRWEJOZmZKd1AvZjNyMUFiMVROK1IvL0xzM2ZvT1d1djl4bjNITVpabGFFWENJcGFmMWRTbFJ1LzNSQmt2dWFrYnNTaW9ZWWQyT3RrS1Q2Q3hHcDFoQUtneUdGM0ZZTVJSSDZheXptLzk4ZjlqUHpkSHFlNSt6OTNYdWY1enpQOHo1cnRWcjFPMmVmZlY3blBPZXl6OW1mYlJxWWJZaTJBZTh4bFJwcWszb04vcDZaSFJEREEvdTJXODgxQ2xNckNSR3ZkZHpvdDdxZm1SMDcwUDdxMXJ2azNGckxZTlhMS1gyT3JMbjlKZWNQdGZXcnZmdWJOU3RFV1ZXdnhTb3M5ZHk1cXZTNTk4blQyN21zMzZMNk16eTNjbmhxeTIzeFhyY24xcVZ0SDZXaFRocnM4WkZoQUl3cm5BZDU2Zlk3Vi91blo4RUh4d0YzdldYTVc4N2JMamhkM2hqT0xkNUFQTDJqZnVMVTgvWmt1MHFPdFZrZWQ0dnZxbk9EMm40YUJqMzdWc0Y5cHdhNWZWQjRodjFTeG9GVGNpNGR3N0dRc2FsSnMrcDVRdTF4K3lmTlBmNlpoaHowVnUxaENtZFh5SENMS1RlOHZWdUgwa0VUK3JaSnYxMzkvalF3VVl1cHhqV3BaWHQ4amZyVkNHM1Y4N3NHM2UwT0x0ZGluOVF1cy9TK1NmVXArZVpzc2owMTlrTnRtMDBxVCtkUTNhL3M3dHhvRFhhdmQxTmptRXJia05ieFBtT3lYMHArcTdWK296cldKdStnRmgwdm5ycW1QS05xNE0zam5BZXFCaXQ4czJQWjBtZWhuUE8wZk5WK3ErMzBUSHZGYzRGbjJaSm5tOXoxWFJUYm5yNld1K0RVL052R1FYNkcrSVpaejB1UGlkK3RGbFM1K2FKRDdzTlpHOU1pUExuMG10RHlQcmI1RHAyeGdwSjJlUlZYK215MGpHMW1uUWdnZ0FBQ0NDQ0FBQUlJSUlBQUFnZ2dnQUFDQ0NDQXdGb0tFSEM5bHJ1VmpVSUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRR0N0QkJTTXVwMXppODR4TTRWZzlVM3FsUGtjTXp2Q0dURGNWMzdPMzg4ek13VnZmU2lHcmZhRnllU1UzV0pldFRPL3g4eWU0aWo4eTJiMnNCQlM5OHZPc3VxUW85QnZ6L1N6MERsdmV6UDcvb3lGcjI5bUp6bzdRQ3RNYjgrNGZMZG9iOGZFNlU0ZTZzUnhUUHpRT25lN0ZaeXlzNW1kbTd2Z0FQTnZFWTdsdThSd1k0VkNlUUs4QjZqbXpGVW8xT2t3TXp1aElPaGhXWFhYZXIzSFpVcW5LczkyNlZqUXVmd2xacmFMcDRCR3k0ejU5ek85eVo0T2N2UElkRjNSdWZmMFJxWVV1MWlnUmJqMVQyS0ExZzhxNFplRWQ2Z0twZWVSQTgzc2JjNXRLZW13NU8yOE9VU25NZTg1UGJVenI3ZjgzTUZrbkx0MUpSZnptbXBqaHppbWxvR3FaeTQ5YnoydndzbzE4TVByd24zRkh5dVVSUkhwQXA3ald1Y0pQU3RxRUptOTAxZDF0VGxuRFVpU2U3MGk0UHJQckNXZHBhZkRNM0w5QzNiLzBoWmROSmlVNS9ld3p1ZjRwZTJrQlN1K2JSdzhiZXVDeWcxNXIrTTlwbkpDYlJhRjBpa2crc1d4YlVxQkZvc21QZDhmRkVOSVBZUHdGZXlTM2tWZmIyYi9FRUtMNW9YVDl4YmduS0hrM09wYzVkb3RWdm9jV1JOa214aWVxc0VtYzZjeGJVZHUzVmR0ZnU5NVU5dVpjKzVjTlJmVnQrUStiUm5Ic0s0cmVrN1VvSk8xSnJWLzdtRm1KOVVxc0ZOT3lmR25vbklDd0dadFFzbmdjQ3BQNzZLZVZXQlR1djBGcTI0V1Z1UnRGNXplbGpHY1c3eUJlUE9DNGtvQ3hHWjU2SjJ5amovZFM2Wk9lbGQzVkJ3c3pYdHY3d25ZTFRtWGp1RllTUFhObWEva1BYdk9lbHJQTy9TZ3R3b2wxUFZWNzh0clQ3WGFrVFhBcnRwYlcwd0tSbGZnWnF0dlhtcGNrMm81enZLclViL1U5eng5KysvZVpuYWFtZVVPTXRCWGJ1dS9sOTQzcVg0MTNyUFgyZyt0dmRhNS9IM2lld2JQTnVyYlFYMVRkYmxuNGNyTGxMWWhyZXQ5UnVsdmRlamZxT2U4MHZlOFhmSk1VakxnV3NsNnRkOXl6OVBlWnhhdGE5N0FQQ2svMDVKbm01VHlKL1BvdTk5SGhZRXpMOHhaYU1hOGZ4MEhtSGw0WVRtcGkvODh0cXZMMkRzWVZ1cTZ2UE1OdFEvbjFjL3pYTm0zcmFYWGhKYjNzWDExYi9IMys1clpXV1oyVFVmaEplZEJ4K3BZQkFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRR0NSQUFIWEhCOElJSUFBQWdnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2dnc09rQzZrejRYak5UaC9DeFRmcGcvR094ZnZwNDk4cXhWZERNYm1obW53cjEzTlpSTjdudjIrblE2T25jUEwzcXo0V2c1MTFESU1Kdk92VlJ1UzhvQ0VsUVhRK1lFNURqN1pqWTdlU2gwTk5QaHc0WmQzWllhcm5IaENEcDN6cVdiYkhJcmN6c2lXYjI3TkRoWXFzV0t4aTR6RStHWS8yTjhTUDZNZjRPWjNGNGo4dStUbFUxNkc5c1pocTg0UGxMUGo0V0JkZlgyTTZhWlhnNnlDMWEvenAzZkt6cFhyc3NoV1FwV01kem5sOVVsOXhPZzMzYlZSTGVvYkpMemlNbEEyY29pTzlCWnZhbHZnMmM4M2R2NTgwaE9vMTV6K21wblhtOTVROFordWpjclV0YnpHdXFDZzl4VEEwTm8vRExOemtIYzVsWDEyVUZXQTV0TjZiMWVZN3J5WG1pSkNoSHZ3a05OdlR4RGtidTlZcUE2ejhEbG5TV25yNkgxQ0JOeDVxWndnaldkV294ME5VNm51UEh1djlMZ2pJbTJ6VGt2WTduSEt0NjVqN2J6UXFsT3ptR1hQNDRZV2VPdVIxMVVuMDljKzBmdHVteWhPMnBOY3UxWWh0cHJmSTJzWnpmeDMzV0t2Z3V4MVRCTWFmbUxEQTE3NnREKy9HaHptVlpMRS9BZTk3MG5EdnphcmI4dVhQdms2ZHJYTkttNDlueW1nTWhUYTlmNzlYMERORTNhSU9uemxxbTVQalQ4cVZ0ZVNYaGZscS9CaU45djNmaksyeC93YXIvTktqeGZpVUZ6Rm5XMnk0NFhWenVmVm50emJpMm1lbStUdUdOT2RNRjRkM1hEbVoyOFl5RlNnTEU1bm1rbnFOK2JXYlBpQU5DNjlyNnNweU42c3c3NjMxMFgzR3A5WnhWenJLUGhiNXRLL2w3aXdFOFMrcVR1NndHeU43TnpNN1BYYkJnL3BKM0huMnJuVGVZZU45eTNiOC9OSDd2MGFKLzRTUE43SlRjQ21YTVgzcE4xcXBhdHRYVXFGL3FlNTRVdHQzamVYV1ZCaVV2dlcrU1M0MzM3RFgzUThxK1lwNnJDNVFNWnFjMkI5M3ZmR0VFc0NYdDg2citrK04zWlNQWWxPcFYwSHRFRFZUa21ZYitqWHJPSzMzUDI3dkU5aWpQOWJnaytMbjBXU2ozUEszZzVzK2EyUzBjTzFydHZmZDMzc3VWUE51a1ZsWGJwYmFJbjZVdTBKbFArMTdmRkIxbVpvOTJsbEc2bUFhT2ZMT1pIUjIrNjd1b3RMREt5dyt4RHhkVldSNDYvblMrcVRXVlhoTmEzc2ZXMnNhY2NsNWU4T3l2Z1Z6MHUyblZGcGl6SGN5TEFBSUlJSUFBQWdnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2hzdklEbmhkZkdvd0dBQUFJSUlJQUFBZ2dnZ0FBQ0NDQ0FBQUlJSUlBQUFpc3ZNSVlQd2oySTZxU29UZ2tubXRtUE9zSFFudkpxTEZQU3dmZHBadmIyVGlWdUdrT0V2ZUdmeDhSUW51NjJsWFRXVTJmWEhjM3NoM1BBdkIwVFozWHllSnlaSFdkbW52WjdoUVVyNkc5WmsvYWRnaEdlSG9MT2JyZXNTalJlcndMT1RqZXpkOFdPdnBjM1hsOUo4ZDdqc3E5VFZVbWR1c3R1WVdiYmhmK3BEZ283MVN3NG95eUZsOHZxR3lNNXA4NnJ1cWVEM0x5eVNrT0FNM2laZFVyZ0lhRXoydkdoTTloTktxdWNaMllxKzVLSzVaWmMyMVVOWFRmdk55Y1VwYSthNnNoNHRwbmRwbS9HR1gvL1ZneTQvb1ZqV1MzaTdidzVSS2N4N3prOXRUT3Z0L3doUXgrZHUzVnBpM2xOVmVFaGpxa2hZWFM5UHlvT2ZGSjd2UXEyT3BpT2lyVlo1NWJuT2E0bjV3bHZBTnU4Y0d0Vk12ZDZSY0QxbjNkdFNXZnBia2pYQStMejBUVUhPd3FIWDlHdllrRGN1WjFWZTM0UDYzaU9IMzZQcEsxUmd5cDlvc0pnZHJuaEhHbTFtejJYOTVqeWhPZnBYbHNEcFNuUVNvTzVuWm53UEt6QXhFUE1UQU1XckVJUWx0cFFIN3VnTGE5a1g3SHMrZ3U4S0I3cnVWdjZoekRnMDRQTlRBTXdNclVYOEo0M1ZUUFB1YlA5RnRWYlErNTk4dlNhaDJ3YnZsRUl0SHBuSExpejN0YWJLYnhPUVowS2xtbzFsUngvcWxOcFNMUGVUMmdBU2Mra3dXRjFILzkxejhKeG1kTHQ5Njc2TStIYS9wUVFjSjB5S0VmdU9yenRndFByV2ZhNVJlOVk5TDRqOTE3dEZXRWo5STVtMWxRU0lEYlBRNE1sdlczQk1heEFOUTA0K3lvelU4aDFTUURlWkpzOG9lNGw1OUpsSHd1NXgzL3UvRnZIZ0Z5ZFMxWnAwcnVVUjRWMzJSY3VvZEkxQm1DYVZlMTUzMFhrYm1KSmFPeWlkU25jY2Z2NHppaTNUcW56MTdnbXRXeVByMUcvMVBjOEtXYjZCa1hCbXg5d1hDOVN5bTh4VDQyMm1ScnYyV3Z1aHhaT20xQm02WUNMWXhtUXFxUjlmaFAyczNjYmgvNk5lczRyaTU2M05maVRCaUZTZTJidXBNSGlkbzNQQXJuTGF2N1NaNkhjODNUcGIzbld0NllwMjYzZ2FMWFpxUzJpeGZUaE9CaVQ1enRDdlV2WFFPNnZxZkJPbythMmFXRDVJMlB3K2hVMUMzYVdWVUxzSUNFQUFDQUFTVVJCVlBKODZsemxmeTJtQVJMMmJ2QytvZlNhMFBJK3R0UXNkM2tOenFxUWFuMUg2cG4wellqQzJaa1FRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRVJpRGdDY2dZUWJXcEFnSUlJSUFBQWdnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2dnNEJMWU1uVGFmclNaUGMvTTd1a3FZVHdMS1dSSlFabnZEUUZWWHpFemRmaGR4blJnN0lpY3UrNTVIMWp2RWorTTk3WmZ6K3FrUEFudXVVTnVKYzFNZ2NicTVLZFE4WG1UdDJQaXJFNGVKWjFXRk9pNVErandvZzY2UTB6cVlISEhHQ2dnOTVzUHNkS1JyZVBiWnFhZ3ZKTkRSNGJ2bU5rZlIxUS83M0U1WklqSk5OZXRZdkNsQXRJVm5EWDA5RDB6Tzh6TVRqQ3pNWFRNNlc3L2N5c0cyUDhrZEc2N1Q2TWdrS0gzMnlxc1QrZjE1NWpaRVEwNmk2dXo0bDd4ZnFDbVJVbDRoK3B4V1FpN3ZMK1puZStvbE1JL1B1SllUb3ZvV3EyZ0NJV0tlU1p2NTgwaE9vMTV6K21wblhtOTVSTndYZi8rVUNVT2NVeDVmaU1seTdRTXZpbnBNRnl5VFp1NHJPZGNNVGxQUER3KzUrVzQ5WFVXenIxZVRlcHlyUmlNbnZwOHVKV1pQVEpqRUNJTmpLVGcySlJKQTQ4Y0hUdEVlem94ZTBLelBPdVpiRXQzZmJwdjE3UFF6aWtidThMenpBcTU5dndlMXZVY1A3WmRxL3Z2dDVqWi9oVXE1Z25DODY3V2UweDV6Z09xbzRJOGRBN1NQNHNtdGM4cHNQY2RLemlZMlVWaE1Dc05lS2NnRGlZRVVnVVVzcU1CSm5YczVFNmxneTdscm0vVDUvZWVOK1htUFhldWl2bTl3cmxiYmJ5ZU50YWgyb2IxWGtIdnQxcThwMU13cnRyaTFHN1dhaW81L2xTbkV1Y2J4c0UzdDNWdW5BYUJlRmdZdU9LWHp1VzFXT24yNTY1YTd6ODF3S3Z1OFZxOWcvRzJDMDV2eXpMUExkNlFPQVhDNjcyaW5yOW5UU1VCWW9zODdoc0hPKzRPbHFUbnkyZE52YnZRdmVnclEzdnZpM01QbXFuNXZXM1Z1VzBPWXprV0NxaXlGbFg0bU1MMjk4aGFhbmt6S3lCZnozY0tYRjdHMUNwQVd1MVZwMVRZSUxXVjZmMkt3akZyVHFmRysrb3JheGJhS2F2R05hbGxlM3lOK3FXKzUwbGwxcmxWdjEwRnFhb05aZXhUYm5EcXJPM3hCTkYyeTZtOUg4YnVQdGI2bFF3WWNFRzg3N2w0eVJ0WDBqNi81S3FQZXZWRC8wWTk1NVZGejRIejdvOVQwTStKNzJnOHdjb3F2L1JaeUhPZUx2a21SQUc0K3ZhM3IxMjdhNmVCc0Q2VjhhNHZ4WDR5ejl0ak8wUnVuVFJRcHdhdjB2T3Uza1dPZGRLM3N4cE1TZTB0R2l4eldkOG9senlmZW0yMXJRcFYxMisrUlh0RTZUV2g1WDJzMTh5N1hNbHZWTzl4TlFEVE43MHJaemtFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQ0J1Z0xlZ0pDNnRhQTBCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVDZ25ZQTZXS3F6OWdGbXBnOWgxM0hTaCtTbng0NmsraGpmMjJraDE2WjI0SWZhck44VEE1Tno2Nkw1WjMyMHJmMnZEcGs3ZWdvMHMzZWEyVUU5SCtkN095Yk82K1J4MTlpeCt5YU9PaXVjZDU5R25RbTBmOVJaUU9GMFdzZURHb1MxT2paNU5Jdm9kNmh3Q0Ixdkg0K0IxOHZxMUNFVTczRlpFcTVSc2pOMGZHMFRDbmg1Q0dsL2JFbEJoY3RxUDc3UHpGNGRnb01WWUQ2VzZXN2hQUFpaTTd0QmhRb3BxT21KQlNIQUZhcXdNVVhjTWc1RTRiMEc5VUcxT3VlWGhIZE02dXdKQTlRMSs2T3g0MUhmdHMvNnV3WXdlWU5ud2JpTXQvUG1FSjNHdk9mMDFNNjgzdktIQ3JqZXpzdzBFTUlxVGVwWXU3ZXp3Z3BwVjNDUEJsOVlwVWxoU0JwRVlkNmtJTTNqNHJOWjdlMVNwMW9GR3d6MUhGUzcvcXRTbnVkY01UbFA1RnhidEQ5MVQzaHVUeWhkVHBreTlwNnpobHFQcHhPekowRE5zNTdKTVRwcmZhV0RWSzNLOGY5ZE05dkp6SDRVSyt6NVBXalJJZTRiVnNXMFJUMTEvNjNnUXgycnBaTkNNZFdlcVBhMklTYnZNZVU1RDZSdWp6emZGQU5EVXBmeHpuZUptYWtkN0JyZUF1WXNwOStjQnE1VE93MFRBaWtDT2c3Vk5uYVhsSms3OCtqOGMzRGpVRjFIdGRaMkVlOTVVeUF0ejUxakFGZmJ2ZG8zUFZQcnRtRzFBZXQrVk0rRzEvRlVzR2NaaGRicG51M0hEY3FlTHJMaytGTTVmYUhDaTZwZmV2K3RRWFAzTFR4WGxXNS96dTdSUUJWcVo5UUFveTBuYjd2Z2RKMldlVzdKZlc2ZDFMc3ZIRTd2YkQ0WEIwZko5Vi9rMFIzc1YvdDV2eENFKzQzT3NWbnl2alIxRytkdGw5ZDBFNjR6RTdPV2czdm1IbStMNWo4cURHajlVa2NJWXMwNnRBaVFWbGozOW1iMi9Vb1ZmVkVJT3o2OFVsbVRZanlCbDdsVnFIRk5hdGxXVTZOK3FlOTVjdTAwS0lxK2F4ajd1NWNheDVFbmlMYnIyV28vNU82M1RaLy9wdkZicWpzN0lOVFdweUIvdlg5WTVsVFNQci9NZW85OTNVUC9SajNubFhuUDI5N0JhaWI3UkcxUmJ5N1lRZnBkZlQ2OFE5T0FISjdKYzU2K1JYaDJQOXZNYnVOWW9UZkl0c1kxZVZaMVh4SHZvVksvRDlROXRBYVUxTUJjZXI1ZnRXbFozeWpMcWVUNTFPT3NRWEtlMHJpTnFmU2EwUEkrMW1QbVhVYnRoY2ZFYjdROVpmQWRwRWVOWlJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFnWVlDQkZ3M3hLVm9CQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUZpS2dEb0kvbzJaUFRKMGhOMDlkSlMvMDFKcXNkeVZLcFJWUWRFZml1Rkw2cWpUWWlycGNQQ0IyQ2w5dW01L0hRTmNWYTVuVXJpd3dvZCtHUmRXcHdBRmkrenZLU3lFT0hjRHJPWVY0KzBFc2FpVGgwSTYxZUUyZDVMblh1R2ovdU56RjV3eHYvenVHSU9zSDJObUR3eWRNdlQvbU5JRkZINm1nQUFGWWluMDhhZG05c2YweFl2bTlIWkViaDFpMHQyb0c1dlpIbWIyQWpPN1hkRVcxMTlZb1FxdmlwMGNVenNqMWEvRm4wdFVwN2EzbWRsVEMxZWc4QlFOOXFDd2JLWjJBbHVZMmVQaUlBa3R3bnBVYzRVV0tEajdodzAybzBiSE1QMStOQ0RDcFluMTAvWGxDRFBUOWM4ektSQllIUUVWdU9LZHZFRTJRM1FhODk1cnBIYm05WmJ2RFl2TjNVZWVUc0s1NjJEK2NvR1VJS2N0NC9WTTRWUzFwelBqUGNWbHRRdW12UDhTOEp3ckp1Y0pEZEtoNXg4Rm5YY25uY08vRXE0YjU0Um54QXZEZkZjbW11ZUdUWG5QV1VPdHg5T0pPZVYzMStYMHJHZFN4cXoxYVlBS1BmTm9NSUoxbjlTWlhlMU1DdFAzL0I3a004Ujl3N3J2aCs3MjZmdkhPNWpaTTgzc2FSWGJMWFE5dVgrNHJ6OS9JRkR2TWVVNUQvUnQwclZqU085aEZUMFhyZlBvTUZEYm9XYjJrTmlXV2ZzWlNxRWJoOFEyd2xadHBIMm0vSDExQkJUeXByWXgvUTV5SjcyUE9DVjNJZVozQzNqUG0xcGhpM09uZTBNcUwxZzZpR2pMdHVIcm1kbHJ6T3pwbGJkNVVwek85eHBzYW9qZlljbnhONm12WitBNm5adjAzbSszQWtQUG9IVGQxV2tBRElXb3RaeTBQM1YvOE1hQlFtbTk3WUxUQnNzNnQ1UUVRZWw5b29LZzVrMEs4L3BuNTQ3dTgxQ1ltd0tzdEo4VnNOcDlkOVlOd1haVzQwL0hxaWZ3TDdjdFlBekhndGVvZERrTkRLTHdmTjFIalduUzRJRjZwNlpyMnhpbUd0ZU82ZTA0TmJaUnBMYWo5Um5vM2FFR1VxL1Z4M0NvOW84YXJpM3JXcU4rcWU5NSt2YnhyTCtyclZidm41YzUrSFJmdlQzQnFkMHlhN3hqYXJrZitnejQrMVVGTkRqbXk1d29Zd2pBTEdtZmQyNzJSaXcyOUcvVWMxNlo5N3o5UDhNQVVLK0xBeWZuZnBPbmdZY2ZZR1kvS05qTHBZTW9lYzdUcFcwWHVRT2Y2MW42NVBEZDNzNEZUck1XMVhYKzlRbmZBZXI3SWQwelB6ZDhpNnBCeVhMM2MrVnFWeTFPM3lqcmVVN2ZBV3RncXBiZjF0VytYNTBIb1czUXV5Yjl6bHQvNDFsNlRXaDVIMXYxUU9rcHJQU2JjZHJsaDl4YnJBc0JCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVnUXFQWHhTY0txbUFVQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFS2d1b0EvQTlhSC90ckZEdHo1RXYwMzF0YXgyZ2IrS1ljZnFXS3JRc0pvZmtwZDhPSzRQd2QvZW9WVVlrVG96ZTZkM205bCtjV0cxZnlzdzk3WE93bkxDRUx5ZCtSZDE4bERvN3llY25ZRXZNTE9kZ3NXUE03WmR3ZkMzQ2gxWDd4ZER3bmN3czV0bkxMK3NXWDhkTzkvLzd4WHFBUEx6WVB6NStNKzVadmF0R0FCYnMxT0V3cERWT1UvaGE3bFR5eENUU1YxdUdzL1orczNmTTdlQ1M1ai9kMmIyMWhnNnI1RHlaVTI2dm4wNmhyZDU2NkFPVmtlR1RwK0VlbmtGKzVjYklzeEIxNmc5WTBleC9ocmx6M0V6TS90aUdDemoxdm1MWG1VSkJRb2QxSE05MHZWYWdkbzZMbmN0V0ovT3BROEt3WWEvS0NqakpqSHNRdnN3WnhxaTA1ZzNCQ0cxTTYrM2ZHOVliSTZ2NXZWMEVzNWRCL09YQy9RRkYwM1dvRTY3dW4vVzgwRHRTUU00NlB6NHM5b0ZVOTZmQkR6bmlwYm5pZHl3S1c5ZGhscVBweE56NnU5dStoRDJyR2V5L0x6MVBUNE1MbmJjQnZ4T05HaVJ6akY2MXZiOEhrUTB4SDNEc25lRkJoNTdoNWxkWTZvaS8ycG1sOHlvbUVMdE5YQkw3cVJnZGYwMi95NysweUlRb2p1SVdtNGRjK2YzSGxPZTg4Qzh1cW1kVmNlNHdxMFVRdHA2MHU5Qm9Zb2ZuWHBHVlJ1Qm5pUFVSbFY3ZWtWb096cThjdHRvN1RwUzN2SUZGREx6UGtjMWRQKzV2Zk9jNWxnZGl4UmNpNFZYODl3NXRwMXhWek03SzRTNXFvM0RNODBhbU5SVFRuY1p0ZG5vL1UzTEFRNFZoUHljZ2RvOVMrNnBwMjBtZ3p5by9ibHYwblg2aFdiMjZyNFpGL3k5eGdBZUplOGVVcXV1VUZyZEkyZ0F2YUdtVlE2NHZsc2MwRklEUytWTWZRTVVscjZQNkR2WHFsMVl6d3p6M28xcEFFazlaNWIwZDlJN2NnWCtmVE1ISnM2YjJ4WXd2WXErYlhkVVovU0xEUDBzc1FoRTc0NWZiR2J2R2lnZ1AzWG5hQUFsRGRDbjgyaU55Uk1tdVdpOUpRT2J6eXAzcUdkcTc3UDBkSjFidHRYVXFGL3FleDd2Y2FYenJBYVFWVnRPeTN1MTNQcHB1L1c5ejZ4QkVITExxdkdPcWZWK3lOMm1UWjdmZSs4anM1SjdnMXJtdFo0bGF0Vm5YY29aK2pmcU9hLzBmWXVsK3lsOS8vcU1NQmlzQmlhYWJsK2Z0NS9lRWdjZjhuNy9vM1oydGMzcW50azdlZTlKZE0vOGtjeVZmdExNWGhVSHpNMzV4cTdrM241V0ZmVzlqZ1pTMFhFd3oxN3ZMTFJlRFJyMEpPZGdlcGs4bzVqOXZMaGZ0Vy8xRGM5dks5YXF4bjFWWDNVMDBLMzJXYzQzdDMxbEx2cDc2VFdoNVgxc3lYYmxMbHZ5elhoZjIwWnVYWmdmQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFvSUpBeVFkZkZWWlBFUWdnZ0FBQ0NDQ0FBQUlJSUlBQUFnZ2dnQUFDQ0NDQVFKS0FQdnErVVF4QVZPaWdPc1BmcDBMd1l0TEsxMmdtZldCL2V1elErYW5RMmYveXdtMVRLTXlMSEdYOElYYVMrOXpVc2lXQnpwTmkxTUhqL2ZFL0ZPejdvY1FPSDdNMjRUQXplMmxDR0lJQ2Q4NEl3U2UzZHpqMGRmSlFTTFU2WjZSMFd1bXVmbGFZZzk0SjZIZWtqb2wzaUdIV0NsNVIzYmQwMUgvWmk1d1FneEVWeXZCWFpxYndqZnN1dTFJRjY3OGlkcEE0eDh6VTRVT2RpTTUzbHJkZFBDNnY0MWkrcjFPVm8walRPZnlPc2RPT2ZxZXJFSjQrYnp1OUhhWThick9XVVljMmhkOTdRbW9VVXZZc3dyeHE3WXFybFhQTDJKbE9uWjFhVDYyRHloVkNyeUQrMjFiYUVBWDdYem1uckswckRWQ2dnVHoyVGJodUw5cWtYY3pzVkVkb3loQ2R4cnlkOVZJNzgzckw5NGJGNWg1YW5rN0N1ZXRnL25LQm5QQWUzUnNjR242ekx5dGY3ZFZLSU9TNkFXb3Mwbk91YUhtZXlPMlE3cTNMVU90NWpHUHdpcHpmM2VUSUtPa3NQVzk5R25oTXo4VUtWQnpUcE1GcDFQNHdtVFRnbHdLVzFCYnl3QkNXZHFlTXloNFYyd2dtNFlPZTM0TldOOFI5UThabU5abFY5NUJuaDVCazNlZXQ4alE5aU5vUTIrRTlwanpuZ2U3MnFMM28zbkhRdVhzTnNiSHh0L2pZRUJieHd4bnJVenZWLzJsMFR0Rmdld28vN1FzU3ZYdHNZOHdOaWh5SWo5WEVnRmUxYzlTZXZBTVpLblJOQXo1TVgzZHExNDN5cmlyZ1BXK3FsQnJuempIdUQ3WDlmemkrZS9IV3ozdlBQRzk5R2pCQjc1RVVWTk55VWdDUjNnbVZ2dk5LcldQSlBYVjNIV3E3VVdpMTJueDEvOW9kcEZhRGsycFFEeDN6T25aTHBocHQvN1hiRGJ2Ym8yUHdZRE5UUU8yUTA2b0dYT3MrVGdNSGE1REIzRW52MlBTY2MxRm5RUVhyYVlEakl3cnY2VXZPdFhybnA5OTFhZnYwYVdiMjZJUjd2MWwydVcwQjAyV1ViSHZ1Zmh6Yi9OZU9BZld2TWJPdEJxNmMza1BvbXFOZ2E3MXpIZHZrSFdCejFuYk0rdGFpZEh0MXZkRTliY2xBcE5OMTBMbEo3eVJiVHlYM2hKTzZ0V3lycVZHLzFQYzhwZFk2Lys5bVp2cjkzcm0wc0lMbFc3eUxyL0dPYWFqOVVFQzNNWXRxb0lCajR6TzRaNk0xQU5yTFBRdFdXcWJtczBTbEtxMUZNVVAvUmozbmxaem5NVjJYZDQ3SHFnWUVuRFg5UGd4d3RVT1lUd056ZWlaOWY2dHZMT2VWbjFwbTM3ZVA4OHBKSFZ4REF5RHBHODZUbmMvOE9tZW9EVkdCMURVbVBiTnJnRHkxdjNURHJmWHQ2MFBDdDMvN3hXY3F6L2VlTmVvNHBqSjBYLzdGK001SWc3MG85UHJTQlFNZHphdTduak4wRE9oMzBXTFNmbjErZUlaUmFIeE9lSHBwWFVxdkNTM3ZZMHUzTFhWNUJlM3IyVjNmdW5vbXRTRzkyYk1neXlDQUFBSUlJSUFBQWdnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2kwRXlEZ3VwMHRKU09BQUFJSUlJQUFBZ2dnZ0FBQ0NDQ0FBQUlJSUlCQXY0QTZTZW5qYnYxYlFjRzNOak1GSStuamVmMWJuYlpyQlIvMjE4WTN4OWRpWFZjeHNQWGJablowREkyNU9IUHpTenA3ZnorR0swK3ZVd0VneDJYV1lYcjJuNW1ad3BwVnRrSjU5T0d6TjRRbU5ReEJnUkh2TkRNRmtYbW12azRlSlowczFKRkZIZEFWOEtkSkg0TXJNUGtCbm9xT2JKbGZtTm5lTWF4OXVyT0l6aU9QaS92RUUrdzhwczFVa0lVQzF5Nk1sWnFjS3hYcU1DOGtWclBxZktyT0R5WEJBem1kcXVhWnFiUFYzOFRPVkFxc1Vpanp1azNxS0svd0I0V2VxZlBOa0ZOdW9QdXlPdUlNYWJMTWRlbDNwNEJXaFlnTTBVRk4xeDJ0cXh0MlU5T2c1QnBmc3g0NVpUMHkzRGVla3JQQTFMdzZ4LzV0R0VqbGVHZG95aENkeHJ3aENLbWRlYjNsMXc2K21yY0xQWjJFblljRGl4VUk1SWIzNkxmM1BETjdiY0U2NXkycUFGc0ZHUDI0UWRtYlhLVG5YTkh5UEpFYk51V3R5eERyOFlhUzVmN3VkUHlXZEpaZXRENkZGaXE4cUhUU3dGeDZIdEsvL3owOGIvOWJMRkRQUVJvTTZEL2lmK3NhTngzRTlwdlErZnkzR1N0WGdPNi9tTm5OZXBhWjkveXB3Q3hQSU1JUTl3MFpERTFtclIySzFhU1NDWVh1RlFLZFBwZ3dYNjFaUE9kWXJkdHpIcGl1czRMZVgxY2hNRFBIb1JzWVAydFp0UWRyNExvVzdWZ0tIMUhJeUtJUTFOeHpmODcyTTI4ZGdiNTJWYzlhTkFEZ1IwSjc2bzZPaFo4V3Jpa0tVR2NhVHNCNzNxeHg3cXk1bFFxQWZrRm96LzNMY0M3KzE2bVE5TzY5anRhcE5uOE45amhwRTU4TURIdWIyRjUrUUhpK1V1QlB5ZVM5Wis2dVU4OTdlOFlRS1cxankrbFhNVURxcXkxWDBpbTc1SjU2d0dwZWJWVTF6cDE2NzZRQmRHdjNRVkZicDY3UENpdnNob1FOWVZhalBiVDB2c3l6bmZlSTd3R3Y2MW00OFRKZUQrMkxrMElBbWdZQkxwMUs3dWxMN2dlOTIxNjZ2V05hWHRjQmhTYnFYY2FUS2x5ZjVtMmJ6aDBLWmxSb29kb0Rod3lqeS9YV2VmTTlZWkNmR29Pa0toaFFBOEtyemFMbVZISi8xYTFIeVR1Ym5HMnFVZWVXYlRVMTZwZjZuaWZIYmRHOE9sYTNpUUhsTFgrL2t6cW9EZkQwR0U2dmU0d1dBNWJVZU1jMDlINm90VC9YdFJ5MUYrbTR1YVpqQTM4UzI1dCs0RmkyeGlLcitpeFJZOXRibGpIMGI5UnpYdkY4aXpVNUp5dmdXZTg5cHllMVhUOHhmaWYzdm5EZk5SbDBYTzBHWDFsd1g2VDJCOTFIcUMyaHh1Ujl6bHgwYnpTNXh6c3liTi81aGMrSStsNU45alcrSTlROWc5bzZQaDdoOU94eUh6UGJJKzRmZmV2TXRGamd2TmlHYzBrbTFIM0RONGhuT2MvN2ZhdjZVdmcrOHdtaGJlMDdmVE0yK0h2cE5hSGxmV3lEeloxWlpNazM0OHUrcGc5bHhIb1FRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUlHVkU2ajljZUhLQVZCaEJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFQmhVNEg0eEhFWmgxdXN3VFFlaWFKdlVVVlloQXJkYndZMVRjSlE2UEx3M2ZyRGQxd0gwYnJIVHRDZEUra1F6MDhmSmY0aE9DbDlXSVBWMkJXNm5tdG51Wm5iVEVIVDk2ZENaOVE0RlpYMHlXaWhNV0dGYUNvN1E5TXZZQVVUaHNncnRWWWZFa25DR2xFNGVkNDBmNk4vRXNUMXlVUGoySk9TcnBKT1hZL1ZORm5sekNIVTkxTXkwYitaTnR6U3pOODNvM05Pa1FvMEtmYjZadlg2cTdCcmhDcWxWemUxVXBicnBONkZBN29mRmY5OHdkV1ZyTUo4NjNlcmNxWERPMG81Vk9Sd0tzTkU1VHgzWjVsMXpWRGVkMHhXK1RNQm5qbTdhdkxydTZ6eXVFS3NoZ3ExVnE5UUJHTksyWVBGYzN0REdHdXZPTGVOSGNaQUxkVjdxVGpvZnFVTjh5NkQ5SVRxTmVVTVFVanZ6ZXN1dkZYelZ0ODg5bllUN3l1VHY5UVU4NFQzNlprVkJOMjlzY0M0bDVMcitQdmFjSzFxZUozTERwcngxR1dJOTNrR2FQTCs3a3M3U2k5YW5lNk16d3IyeGdxTzcweVMwV3Zla2VzWldnUFUzNG5PZFFwa1VWcURRaFpZRGVNejZSZWgrV2dHNjgrN2xOSGpHZ2VGK1R3TnFUVTlxZDFCSCtqczdmbVpEM0RjNHFsVjlrY05EVzhxTHFwYzZYSUhMNkJUdk9jZEt4SE1lMEhKcU8zbFZwWEMxMUQwekx6QiszdklhV0U2RDRhbXRvZmFrWndTMTQrcmNNMnZLUGZmWHJoL2w5UXVrdEt2MmwzTFZPZlM3K0dJWVBPOFdtUXR1eXJrOWs2WDU3Tjd6WnNtNXM4VkdhWkJMaFZMcHZtUU1VNDNmbGdKTjFTWjVyd0UyU1BlWkNwZlNPNmNocDFXOFR1ZzkxdzVtOW9VQ0tPL0FQSDJydkNDK3kxTDcrckttR3U5Z3ZQZGxwZHVzWjdGbm05blRNMEtFOWI2ejlYc2NqNGVPTVlYKzF4Z01yZlNldnVSMzd0bjIwdU5nek10cnZ5cEFjZWN3Y05YREM5OGo2dGpWZ0JBbnhHRFRINDQ4MUhyTSs0VzZJWkFpTVAzNzFmY3hmMWQ0L1ZEYm53YXNQenNPUFBlNTBDN0I3emhsVHpCUFYwQUQrNmhkZHpjbnpjRm1wbStQbGpHVnRNOHZvNzZyc3M3VWQrSzF0c2Z6N2pyM1c2eHVYVFZZNTR2ajl5azZQKzhhd3BYMWZhT2V2VlYyNllCWFhwdVNkZ1RkTjJ1d3VjbWtvR0cxV1d1N2FyMHZVcnVMQm1mVmR6MGxrd2JYMHNBUEtrOERlZWkrbGtEclBGRzE0U2lvUFhmZ2VuMGY5NDVHN3pMMFBaMkMxSCtYdHluVjVpNjlKcXg2dTdUT1d5ZkhaMFVQNml2Q1FpLzNMTWd5Q0NDQUFBSUlJSUFBQWdnZ2dBQUNDQ0NBQUFJSUlJQUFBbTBGQ0xodTYwdnBDQ0NBQUFJSUlJQUFBZ2dnZ0FBQ0NDQ0FBQUlJSUhCVmdkSk9KbVB5VktDcFBuNi9Za2FsVmpucyttTXhFS0R2dzIyRlBMM051VU82blJ1ZUVBSmFqM1dXTlZsTUhaQStXaUhjV3NIZVd4VFdKWFh4MUU0ZTNyQ08veGREZ0U2UEZkSTdnYU5EVVBjaHFSVWMwWHpxM1BEQ0VENzA3Y1E2YVZzZkhEczRyRnJndkRyc3FDUE1wWjF0OVI0SGlXVC9OZHVzNEw5cmhRNStDbGxYT0lrQzZ4UkdyMzl1YTJicVNNTDBaNEh2bVprNlR5aVVwbFpucXhUYkc0ZnpuOElXcGdQM0ZRYnluWUhya1ZMWFZaOUgxd2NkK3k4Sm9WZTdETHd4NTVuWkk4eE1ZYzVEVFB2RThQWWgxbFc2RG9VbTdSdkMzSFhkNjA2Nkh1aWViZS9TbFN4WS9qY2hmRnlEU0h5OTRUcTgxNERVenJ6ZThyMWhzYmxVbms3Q3VldGcvbklCYjNpUGZxZFBOck4zTndpNS9teDh0dW1HMDVadjdXYVc0RGxYdER4UDVJWk5lZXZTY2oyNnoxWUl3VCtHMzRCbklERFA3NjZrczNUZitqUlFqOElVdm1KbVh3c0RRK24rNVpJUjM1UHEvUFBLR0FveC9hdld2YnkyNVMwemdySzBqSjdsWCswOERTaGs3VDRiTUFETlErTWdJNnY2YmFMMnZkcVpadDFmT25kOTcyS2VjNndLN2Z0ZGRsZXNJSlNYVmdqMDZOMmd6Z3dLb0ZNNzZyeEE2WG5sYVZBOERiNnpSKzRLRStaZmRKK1FlKzVQV0IyelZCWkliVmZOV2UzOXplek1HRlNUczF4cFFGSE91cGozdndXODUwM1B1Yk8xKzNNN2d4MjJYdCtpOGhXMGZaS3pBc3NZUEVIM2JHOFkrSm90SGcxNDh2bllQdTdrR255eEd1ZXFGdGRIdGVzOWM4NjcxaUdSVmpuZ2V1S2tkelZxUHo2aVp6QWVCV0NwTFZYUG9WczNRdFk3NWdlRit1aDlWK3BVdTMybzlKNis1SGpQdlVkUE5WcW4rZlN1UmUrMmRMK3Z3WjRWRkRocjBtRFphbHU0UEw0MzdSdWdlNTJNMkJZRXhpb3crZjBxMUxOdjhMZi9pSVBkWGJta3dlM0dha2k5Nmdqc0ZFTndQUU5SYTRBVkRmNXljWjJxWkpWUzBqNmZ0YUlObXpuMW5YZ3RGcys3NnhyUFpLcS83cUUwNklBR0J0UTlrcjdsVXRuNm5tc1pVMGtiblFhWlU3dXh2bFhWZDZNWE5kb0F0VmQ4T3VHNk5XLzFDcmZXczVZR2pLbzFJRStqVGYxVGVML3VyVXNEdlZ2VVQ4Ly9CemplR2ZZTlZ1dXBxNzd2MHdDWU9jK3NudlgwTFZONlRWajFnR3Q5ZDNkcStOYlM4eTVSZ3lrLzBNd3U3RVBtN3dnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2dnZ0FBQ0NDQ0FBQUxEQzNnYWZvZXZKV3RFQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQWdYVVNVQUNnQW5ldnVjSWJwV0RMMXlaK2NLMk83Z3B3Zm5yNEdIL3NRYnUvTnpPRkVDbmdaZEdrRCtFVjRLb1B5SE9uYnVpeU9yNmRFVHV2NXBZMW1WOGRDWFJjcVY0S1F2WUVnNm1zZDRadCtvYVp2Y2xia2N6bFVzTWlQRWI2QVA4cElkRHZXNTA2bFhiYXlOekU0dG5Wc2V5Z0dDN2pDWlpTQjhzOVl4ajdkUGh2Y2NVYUZmQ2ZNVFJYSFd1Nmt6ZGtKN2VxM2VBL2RTdy9LM2FLeWkxcjZQblZBVVhoRFk4ek0zVm9YTWFrY0U1MUZGS25lNmIxRWRneWhETStJM1pXMjJvSm0vWGRlRXdQRlc2dFRkd20zQk44TGx3VGI3U0U3YzFacGE0TkNnYjk1SUtGU2tLdlV1b3lSSWRaN3phazFzMWJ2amNzTnNWMWVoNVBKK0hjZFRCL3VVQkplSSsrWGRFOTJ3Y0l1UzdmRVExTDhKd3JXcDRuY3NPbXZIWHhya2NEN3Z6emdtTmFRV0lsZzhWMG42MVRkMzFKWittUzMzbHEvVnJPZHdjenUwZGN3YS9qODdLQzdEUVlodmF6cHArYjJaUGlNNUJDZUhRdnBQWXJ6WGUvK0h5cUVHL3ZsSHB0OXBZL2x1WFU5dkRGME02aWdJcFZtOVEycG9BYmhWVU1PWG5Pc2FwZjZ1OVN3U2N2aThld0ovakhhNkhmbWtJclBsUVFQcW9CRTQ4SkFTZFA5Vlppd1hKZkRnUFZQSHBHNkh6dXViOUIxU2l5UjZBa1BHZGUwZDRCSFRYb3dhSHNzY0VGdk9mTm5IUG5VQnMxVkx0djMvWjRBbWtuWmQ0d251djFmbW1vU2NmQWtRWFhsNUo2YXFDYUUyT2JWRWs1UXk2cndUc1VkT1dkZEQrczhQTmE3ZTZMQnBYeDFyRmt1WFVJdUo1c3Y5cFk3aDZlWVk2YXM3LzBmbmYvMFA1N2ZNTmoyQk95VlRPMHpMUCs3dkZUY2orWWVvOWVjc3l5TEFJSUlJQUFBcHN1b1BZaXRUZnQ1b1FvdlQ5MnJ0WksydWU5Njl5RTVZWnVkL2U4dTY0VmNOM2RueVhmY05ZNE5sYmwzdGNiaXY4TE0zdDRPTmVvSFZtVDN1dTlQNGFNMS9DclZVYjNPMUVGbml0UXV1UjlWcTI2cVp5U01PTHQ0cmZGMTZsVUliMHYxalZBN3k2V1BaVmVFMm84K3k3TFFOZnhrOE83dUoyZEZUZ3NEdWJxK1o3WXVVb1dRd0FCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFZ1ZJT0E2VllyNUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRS0NXd0ZnLzlFN1pQbjNZdkUvNCtQdmp6azd6WXcrN1BpRnVuenFXTDVyK09vWmdlNEtLZmhKQ0tPOFRnMlBVUnEwd0VvV0FsRXlueFRBYUJUQW9KRXpoVkR0bXp3c3krQUFBSUFCSlJFRlVGbmllbVQwa2htUC9pNW5WK2loK1hqVnl3OGdVa241c3dqWXA0RmZCUVdjdU9FWVYvbnVjbVkzNUhZRTZINzBnaGtUOE1XRzcrMlpST0syQ3NsOGV3dW4xZ2Z4WXAwVy93WnVZbVRvOHFSTkt5NmtiRUtUajVKVWhzUG5GTFZkYVdMYk9XYXFmQXE5MEh0QjBweGgycmFDcW9TWjFiRklRbXM0blRPc2xvSHNYRFg2ZzhQS2hwM21CYTYzcnNTcEJQZWZFRGsrWEx3QlJoOE5URzRKcE1Ja0htWm5PQWEwbWIzQlhhbWRlYi9uZXNOaGNKMDhuNGR4MU1IKzVRSTBPekkrSkErbVVoUDdPMnBMUHhNRjVGcDByeWdYV3Z3VFB1YUxsZVNJM2JNcGJGKzk2Ymh2Q3hNNk96Nmd0am83THd1QmhDa004UDdQd2tzN1NOWDdubWRXdE9udnV2cXk2OGxpWTd1MGVabWEvYkZINGlNcGNsWHZKV1dUTEdyVEljNDVWL2Z0K2x6ZUx6OHQ2bGhreTJGcDFVemlCQmdyNldZVmpVL2NHYjRsaGpCV0t1MG9SejR4bFQvL1BNWnd2YW0vbnVwWFhJdUQ2WFk0ZzlkdzIzblhiRDh2Y0h1OTVNK1hjT2ZSMjZUMkw3aHR2TS9TS08rc3JiZDlRL1RWd293WVZhVDI5M3N6K0lYRVEybFoxMGZWRDdkR3JNT205bkFhSi9VRkJaYThmMzlma3ZudWJ0Y3FMNGpPNkFyakdNcTFUd1BXMHFkNlR2QzdlTStyL1R3L204cUlRem5aNG94MlEyaVk1V1gzdDlpQ0ZlRCt4Y0NEU2t2dkJ2bnYwUnV3VWl3QUNDQ0NBd01ZSjZCNzM5RGhBWWU3R1h4aS9FZE85NlpCVFNmdjhrUFZjdFhYbDNuK1dicC9uM1hXcmdHdHRpKzdyZFgrL2pFbURrWDlpR1N2T1hLZStmVHM2dkpzNUpHTTVuUjkwYi8rMXpqSi9GWjZ4OWU1Wjd3R1hQZWxiWnJYOUsvQy8rMzNsRm5HQTZUZUc5dSt0bGx6UjU1dVoybkk4ay9hZHZpRjlyV2ZocVdVVUJxMUJORFhZMDFoQ2tVdXZDYXNjY0sxMmdBODd2MTllMWpXODhCQmtjUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQVlITUV4aHhlc1RsN2dTMUZBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUJnOHdUdUcwSkF6M0oyTWxtV2xrSlpuaFdEbVd2VVlXeGgxOU9kbXZ1MlR4L3ZmNlJ2cGpsL1Y4RGs3aUhZK3NwUXh0K2EyUmxtZGdObldaUEY5S0grMjZmS1VJQ3hPbTg4SjdIY1g4Vnd6SFBOYktnUVlZWDdiRzltMzArc1kxL24rbGtCdi9PS2xvODZOdXlXdU80aFo2c2RiTjJ0Ky9YaTcxZ2RlOFlXZE4wWGpxeDNPZ3B2Mzd2eER0SHY4NlRPT200VmY2dTNiN3h1VC9GdkRrRW1oNXFaT3UzTW1oVEkvMUl6ZTRxbjhNeGxkRnk5WmtRZFlUS3J6K3c5QWkwRDFlYXRXcDNpTk1CQmpVQTR6dzdlSlFaRGovbWQ4c0hoMnEzendLSnBHelA3WEFncHY1RUhJV0daNlh1YmhObGRzM2lEdTFJNzgzckw5NGJGNWlKNE9nbm5yb1A1eXdWcWhmYzhJdDZyMWh4d1JzZjRrVnlqaTNleTUxelI4anlSR3pibHJZdDNQYTBEZnIxQnlTV2RwV3Y5em9zUFJtY0JOelN6VDVuWnRzN2xheXgyb3BrOXZqQm9yVVk5aGlpalpXQmVxL3IvTkR6N1BqRGNnNnR6L05DVDV4eXJPdmI5TGhVMnFvSDY3anJnQmluNFE4L2dpd1pmODFTbnhjQkQ4KzRSY3MvOW51MWhtVEtCMmdIWDE0M1B2eG84SW1jcURRVE9XUmZ6WGxYQWU5NU1PWGNPYmQzNnZqRjFlelNRZ05wWlNrSitoZ2k1SGtPNHRVenZGZ2VDTFgyL2xicC9TdVpUbUpYZWw1WHNXNjIveHY1ZDFtQitmWDU5NytENmxoL2p1V1ZTWjdYdDN0M01OSkRERDZjR09tNDVLR0JPZTZuYW9EOXFabitSZ3B3d3ozK2FtY3BVNEg3SlZISS8ySGVQWGxJdmxrVUFBUVFRUUFDQi94YlEvY1BiSElOVlRVcW8zYmFRc205SzJ1ZFR5dC9VZVZMZmlkZnk4Ynk3Ymhsd3JhQll2WHNZZXZwTkhFenA2ME92MkxtK0c4Y3c3bnNsTEQ4djNIcXlxTDZ0MDdlWFF3OHFPVjMxdnUvbEp2UHErMGdOMHZXS0pYMHJxY0d0OVB4NWFZTDd2Rm4wYnVBZEJkLytLYVQ4Y2VHYnkrOFUxS0hGb3FYWGhGVU51QzV0ZzNsNnZQNjMyQ2VVaVFBQ0NDQ0FBQUlJSUlBQUFnZ2dnQUFDQ0NDQUFBSUlJRkJCWU15ZGtTdHNIa1VnZ0FBQ0NDQ0FBQUlJSUlBQUFnZ2dnQUFDQ0NDQXdFZ0ZTanVaRExsWjN6T3pBeHFFc2t4dmc4Smo5NHJydWQyUUd6ZTFybmVIQUUwRlJmK2haLzFxVno3R3pBNXkxdlBWTVl4V2l5dHNXR0d3K3VqWU8vMGtkcGI0UWFjQTFmT0pzY08yUG5LZk42bER2K3lQanpNTUZTTHM2Yml5azVsOWNrYm5DRS80ZWtuSGJPKytXclNjT2hLOE9HN2ZIMXVzb0ZQbWxpR3Nmcjk0TEc0MXdQcFNWbkZZREdKZUZESnhZT01QOUM4ek13WDVuRCtqd2dyWlBUWmxRd2FhNTcxbTlwS01RUWR1Rm84eG5lZGFkREE2ejh3ZVltYVhETFQ5ckdZNUF0ZVBIUU4zSEdEMU9zYlZ5ZXlLQWRZMWJ4VmpIaEJCZGI0Z0RKaXlRN2lQdUxqSHFIV1k1ZlM5VGF2ZDVRM3VTdTNNNnkzZkd4YWI2K1RwSkp5N0R1WXZGNmdaM3ZQUUVNUjVRb1dCY0xSVnp3L1BIVytvRU9SVkxyVDZKWGpPRlMzUEU3blBOTjY2bEt6SFk1WjZwT2hlWVYvSHNWM1NXYnJtN3p4MU8ydlA5NllZM0ZpNzNOVHlocmh2U0sxTDYvbDBMbGVnK0twOG42Z2d2RDJYRkFTaWZlRTlYNlQ4TG11RVVhWWVMNm1oR3FubGRlZXJHWEt0UUE4TmtLZEI0N3BUN3JuZnV6MHM1eGVvSFVKMVd6TTdPN1M3YloxWkplLzFPSE0xekQ1RHdIdmVWRkVwNTg2aDBYVSswdUFReTVyVUpyMXJiSjh2cmNNOXpld1VNOU43cjlyVG9uTjM3WFgxbGJjcTd6bjdCdGJzMjg3dTMwdEN2TWJRM2psdmUwdkRsY1o2YnBuZTNpM003Qy9OVEFGWW1sb09DcGh6blZhOW5oemZmUzE2bjV0NnJINHMzdGYvTG5XQk9mT1YzQStPOFRwVHlNSGlDQ0NBQUFJSWpGWkFnN3FkRlFaRXZvbWpoc3NZN0s2a2ZkNnhpUnV6U09vNzhWb2dubmZYbnU4RVUrdDdqemdBa3dad0czTHlEc1E2WkIyNzYzcEErQzd1ZERPNzVvSks5SVZiYTFFOXUyaWdzUDJYc0RGcWMzbGgrTjcxMjVucjFuZTZ6NDdmenRWNDlrcFp2ZHFiOWpDemsxSm03cG5IKzU3am42TFhNcis5bXJkcHBkZUVWUTI0THZrR3RVWmdlb1hEa1NJUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRmdtc1NnY1M5aUlDQ0NDQUFBSUlJSUFBQWdnZ2dBQUNDQ0NBQUFJSXJKOUFTY2ZRSVRSK2JtYlBNYk1QelFrNmFWVUhkZnBYTUxNQ3BHL2VhaVdkY244VlE2Sy9tYkMrbThiT1FYZE9tSGZXTEFwSitNVFVIOVJPclkrMWp6T3o2empLVkdlQmd4ZUVldDByaGhQTkMxTjRaN1NlRHJONXJwbTkzbEdYbkVVVXhQRHluQVZpNTRqM205bGo0M0lsNGV0eWYyWHN0SkJaamFxeks1eGJ3ZFlLVkY0VTdGeDFwVk9GcWNQR0x0RkN3UnZMbWxMRGtYVThxOU9UUW1kYlRLZVoyYU5Ec05hc2p2OEs5dFhmdDJ1eDRzUXlGVGoyTmpOVEdMZzZHM3FtRzV1WndoVU9pYjhwVHhtemx0RjUrMzIxQ3FPY1VRdmN5TXcrSEg2TEQyNVVTeDNudWc0cEdHNkl3UCsrelNqcEZOeFhkdW5mVTM5M0xRZXZxQmtBdGNqREc5eVYycG5YVzc0M0xEWjMzM3M2Q2VldWcvbkxCV3FIOTlRSXVTYmN1bnkvVHBmZ09WZTBQRS9rdGlsNDYxS3lIZzBlYzJhNGYxWDRYYzJwNVBwVDBsbTY5dSs4cGtscVdkcUdqNlRPWEhrKzdiZUh4ZkNFeWtXUHNyaGJodWZ0TDVyWkxVWlp1NnRYU3VlNEk1ZlVOcUhhZU02eFdpNzFkM252K0V4L2cwYjdRNkVDVHdsaGd0OXFWUDUwc1RWQ3JtZTFCMDZ2SS9mY1A4Qm1zNHFPUUU1d1pncmV3ODNzMUpRWk8vTThNZ2I1T2habGtVSUI3M2t6NTl4WldNV3N4Uit6eEVFV1ZORkY3Y0paR3hKbnJuM2RVWHVaMm5QMVBtZ1o3eEhtR1l5NTNXeFNad1duYTZEWldtNXFaM3RCZUVmeDJzd0RRNE5WYXBsWkEwdGtGdFZrOWswSXVPN0NLUVJTNzV2dVVsblVHNnAreHpnWWNjbTd1dCtibWRxVFBsdGhtMHJ1QjFQdjBTdFVreUlRUUFBQkJCRFllQUhkbjZxTlFBTUxlcVkzeG04RGE5MHY5OVdocEgyK3IreE4vbnZxTy9GYVJwNTMxeTBEcmx2ZDIvZDVIV05teitxYmFXUi83L3RlTWlYY2VySkpmeFcrdC8yTW1Xbmd2Q0Vtdlc4NTBNeStVZmlNcjZCcjdUZTFGN1Q2L25EaVVXc0Fva2w1T2UxTmFuL1l6OHlPTGZScXVXOUxyd21yR0hDdGI3alBDTjlZM3Q0QnEvWkJmZWY3YWNleUxJSUFBZ2dnZ0FBQ0NDQ0FBQUlJSUlBQUFnZ2dnQUFDQ0NBd29BQUIxd05pc3lvRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVF1SXFBQXA0VVZQclVrYmtvTkZpQnV5Y3V1YU8xMm05dkV6KzBQaUIwM04rcW9WTk9oeDExRFA2VW1YbmFsMzhXUGpEZTNzeStQMk5iOU5IL0NXYTJiY1oycXFQeURtYjJoWjVsdG83QnN6dDI1bE1uZzkxRFo2WExPLysvWkJ0VHFwOFRLTjR0N3dGbWRsSU1YVkpIa1ZsQnhDbDEwRHdsSDR5bnJtUFdmQXFQUHlxcy85MGhuUHpTa29JcUxxdmplWnNZS1BXRUVIaDlqWXBscHhTVkd0S3FnUG5QTit3Y3M1ZVpmWEJCaFJXMG9tQmZ6KzgveFdIZVBMOE9ZZFNIVno1bWFnWmR0K3lJVnVMR3N1MEVkSDFXaDVrN1ZGNkY3a0gwTzFRNDNKaW1SOFFCUHp3RFViVGFqcjVBdXU1NjFUbFA1NUhhMHdYeFh1VGkyZ1YzeXZNR2Q2VjI1dldXN3cyTHplWHlkQkxPWFFmemx3dTBDTzhwQ2JrbTNMcDhuM1pMOEp3cldwNG5jc09tdkhVcFdVK3IrL2R6d25Qd3pqT2VaVlAyZWtsbjZSYS84NVE2MTV4SFFRTm5oL1lvdFJNTVBRMTEzekQwZHMxYjM1WXhUTHpiRmpPVytrM1hRK2MzRFhTMnpBRm1QT2RZYlVQTzcxSnRZQnJJcjJhYmg1N1hueGJMSGRKUElkY0tPZDNmY1VDbFBFdmtudnNkMVdDUlFvSGFBZGVlWjhaRmJkMkZtOGZpQ1FMZTgyYnV1VE9oS2xWbWFUMnc0YUpLMWd5RW5WNVByZllraGZYc2FXWWZyeUpkdjVBVzE5ZGF0WnozRHF5MGZJVkI2ejNWVGdrRktYeEk3NEhWdGpOVWFHQkN0YTQyeXlZR1hGOHJ2Z3ZYd01RMXA1eDN6dDMxNmhsQ0F6OXE0QlRQcFBmTSsxUjZ2MTl5UDVoemorN1pUcFpCQUFFRUVFQUFnYXNLNk51UFQ0Um5CajFYNVU2dG5vZm0xYU9rZlY1bFBubU5nejNmWkdaNzVPN0FPSC9xTzNGbjhWZGJ6UFB1dXVWM1JhM3U3UmQ1cldLdzdtUjdybTltSHczaDFQb0djM3JTWUQwYUJPL0xHUWVLdmpGVWdITExTZDhtNmIxM2FiQjF0NDU2L25xOG1SM1I2THZrRnVmWDFFRzNGRlN1OXBxeGZYdlYzUWVsMTRSVit4MXEveDBkQjdIei9HYmVhMmI2am42c2c2ZDV0b2xsRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQ0J0UlFZT29CZ0xSSFpLQVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCd0M1UjBEbld2ZE1hQzZtRDl5UkR3OGtvek8zZUVuYXpWbHFzUXpXZkV6aW8zcUxqeFB6V3pCNXJaaFlsbHFrUEp3WW56ZG1mcjY2eVIyM0g1TkRON2RHTEljN2RzaFd3clpPbUhNN2FsZGVCVlNlZHVIUXNLOFZFbmdCcVRRb2plV3FPZ25qTDBHMU13c3JaZFlXeERoaDdsYnA0Ni9pZ3M3bEJuQjdqYzlYMHNCblNraEpXMzdKVFU5L3ZVZGwwN2hsYnRscnVSenZuVjBlUlY4ZnpjcW5QQzljenMyWEZnQS8yMmNpY2QyN3VzY1NmQ1hJOU5tdi9lWnFiclVLMXJza0kzZFgxVlFOd1lwNGVFZ1FDT0R3RWpOeGxCNVhROTJTOHoxRk1kRVU5dFVQZmFvV3J6cXVnTjdrcnR6T3N0M3hzV203c3JQSjJFYzlmQi9PVUNyY0o3Y2tPdWRXMCtKSVplamprOHExeDgrQkk4NTRxVzU0bmM5Z1J2WFVyV280RzlOSUNNT2xIWG1uU002em40RkdlQkpaMmxXLzNPblp2aVdxeEdjSjFyeFdZMjFIMkR0MzR0bHRNQUl3cU5IZXVrd0lxOXplejBFYlFGZXM2eGNzMzVYYWFHUDZUc0x6Mmp2OVRNTlBqYUZTa0xOSmpIRTNLZCtpeVJlKzV2c0hrVTJTTlE4NXpxdlY3ckdWUFgrQ3ZaVzBzUjhKNDNjOCtkUTIzY3pVSWI0eGZON05aRHJYQnFQYkk4c3RHMXNEVDhXUU9FYU5ERjg1ZmdrcnJLbXRmWDFIV216SGRlQ0hKU3lQaVBVbVoyekpNeUFPRFl3OG1uTjd2R2MwTE9mWm1Edk1raUplOThaMVdvUnFpNmZsTWFGUFpkOFgxbzZvWnJjR0cxWVg4MWRZR2UrVXJ1QjFmeFdLakVSakVJSUlBQUFnZ3NUVUNEcitpN1A4L0FiZ3FQMVhQSGJ3ZW9mVW43L0ZpZloydXhsYndQVG4wbnZzeTZwbnlUVlZLL29kdmlTNzU5TE5uT1dzdHVGNzZYUGNQTUpvTzg2M2xDM3dycXUrR2NxY2F6NUx6MUtUaGIrL1hiT1JWeXpMdEZHQ1JBSGhvRTlENk81ZWN0b3ZlamVyYjdROFV5VlZUZmV3RTlseXA0WElNVGpuMHF2U2FzV3NCMTkzZVhzMzhXZmV1ZFV3N3pJb0FBQWdnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2dnZ0FBQ0NBd2dRTUQxQU1pc0FnRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVRtQ2lnODRtMW05dFFsR1gwdGZweDk4aExEV0hJM1hSK1YzOFhNRGpLeko4WEEyZHd5cHVjL0xBYlNwSVMvcVUxWm5kYjFRZisrWnJadFp1Y2doZDQ4cTZleStnaGRnUW9LdFYwMHFiNjd4ZzVLcWRzdnUyZWEyYXVqM1lsekZyeHVETUc4ZjJyQkdmTjkxOHpVc2FwVnFFQkdWZjQwNjQxREo0VlBOQXh5VmtqVW0yTUk3Q3FHdmNqblVmRzR1V2N1YnNMOENpcFhhT05uRSthZHpOS2lVMUpPUjUyU2pvRXBtL252TVFqOTNTSHM5OUtVQlNyTjR3MjZWajBWRkYrN1EwNmx6YUtZeGdJS2lmblFWS2MzeitxK1oyWUhtTm1aallLRVBIV2F0OHd0elV5aEp3clZYTlowZEJ5QUlHVlFnT2s2M2lPZWEzV05yelVwS0VpaEtaZlVLbkJCT2Q3Z3J0VE92Tjd5dldHeHVXUjZWbEJuTjZaeEMveFR1Ry9TODFXTEtmVjhTN2gxQy8zL0x0TnpybWg1bnNnTm0vTFdwWFE5QjhaMmoxcDdSMjBvR2hURGUvOVowbGw2WFVLNldqeFQ5ZTFmRGQ2akFUZUdmTWJwcTlNUWYxY3d6THkybHlIV3YyZ2RhcXZRd0ZaakdXREdjNDdWOXVYK0x0WHVkb1NaUGE5Z0I3dzNERnoya2pEb3pJOEx5cWkxcUFiaVVudGpTdHR5VHVCaTdybS8xdlpRVHJwQXpZQnJEZVNra0NHMXVlZE1hZzk2ZTg0Q3pGdFZ3SHZlOUp3N3ExWjhUbUV0QTVFVzFmK2Q4VjFUcThFRlM4S2Z4ejRZM0xTck41QzMxYkYxa3BudEg5N0hYZFpxQmJGYzNZZm8vZXFzRUVHOWM5Q3ovT2NiMTZGVzhUVitnN24zWmJYcVhsSk95Ym0wdTk3YW9lcjNpczhTdDByY3dKejMzU2xGbHR3UHJ1S3hrR0xDUEFnZ2dBQUNDSXhaUU44ZnFvMUl6K3FlNmVtVjIvSG4xYUdrZlg2c3o3TWU3MW5MRUhCZEpybVBtYjJ2cklqa3BYUGFXWk1MSFhqRzZmYUswdWZYQjhSQk5LOVpZUnQrYm1aSG1kblEzOHhOcXE3bnIyZkg3NEp2VUxBOXJZT1g5ZTJTQmllNGM2ZU8rZzNvT3JDc1FUbHp5VXF2Q2EyZGM3ZG4wZnpYajgvNE96b0sxWGZpZTVuWjhZNWxXUVFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQmdDUUlFWEM4Qm5WVWlnQUFDQ0NDQUFBSUlJSUFBQWdnZ2dBQUNDQ0NBd0ZVRTdtdG1aNFhRNFJvZmVmZlJLdkJNZ2J2dk1yTlBtZG5sZlF1TS9POEtwYmwzREkzZUl6TnNXcHYyRXpQVFIvWS9jRzZuMW4vSEdCYjlCRE83ZVU4NXU1dVpPdGIzVFdxN2ZuTDhXSDlXeDNndGYxb00yTXdOdU5TeUNpMVJxTlNpVUc4ZEl5bmhPSDNiTXYzM1g4UkFxeS9uTERUQXZBcWMrckNaMVhobm9DQU03V09GSGVsM3ZZcWgxdlBJOWFIOXcwS0EwMzR4bEhyZXNabXp5enpoeUxVRHdyVFBIcC80MjlTMjZYZi9mak43Yk02RzlzeXJVT3QvanVkbWhiK25CTzVYWFAxVmlzb0p1dFp2ZW9kZ29lQUdwczBWMExWTklkZWVjOExZUXZWUzlxS3VGYnIzK01jd3lNUjlVaGFvTk04Rk1YREpHd1R1RFN5YlYvMmNnUUZxRUhqRFp0WWw0THFHSVdXc3ZvRHVnVDRZNzBWbWJZMmU5WFQvcmc3d3k3eVhXSDNwK1Z2Z09SZDVRNlZUSEhQRHByeDFLVjJQQms3UzlVc0JHNldUd3EwMWFGUkpBR0ZKWitsMUNlbXEvVXpWdDEvSDJoYlFWKzhhZjI4eHlFaEp2WFN0VUh1Rnd1KzhiV0VsNjErMHJPY2NxL0k4djBzOTE3OGxCbC9tYk04cFp2YkNFQ1R3N1p5RkJwaFg3VFZxeDFQYjZMeEo1Mkg5UFRYbzgrNng3YU1reEdPQVRkL29WV2dBUTEwWGEweWVjOVVxaFlmVU1CcGpHZDd6cHZmY09ZUkJTWmlYcDM3ZVFjUnkxNVViY3EzQkp6UVluTnJiVnUzWlR1L0x0QitIYkRPYjNoK3lVNUNUN1A2WXU2TWM4OC9idHhmRmU1UldnMkE1cXRxN3lLWUdYSmM4SDA2anRtcm4zanFHOVBVRllMVVlpREMzTFdEYXczT1AzbnVRTWdNQ0NDQ0FBQUlJOUFyTUN6enRYVEFNZWovVXR4K2w5MS9yZko5UjhreWMrazQ4NVZoSW1jZFRWdzJ1dHB1Wi9UWmxCWTU1TkVDTTFxRUJBVnRPK3VaUkE2S1BZZkREMHUxVXUvSUh6T3c5aFFOMTZ2M2ZzZkhiTzIrZDlEMnpCcHYvWk9FN1FPLzZ1OHR0RVFjZ1B5UzJxK2QrRCtYNUhqSzM3dnB1U2Q4UFQ5cndYMjltL3pBU3Y5UnRLYjBtckVvYmRXN2JZTmV2OVFCOXFmdUwrUkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVNCV3FFVlNTdWl0a1FRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUlHWkFqVSs4bDVFcTA2dEg0a2ZwSDlueFQ1aXpqbGtGRTZ6U3d5N2VtamlnbjhmT2phOE5uSGVsTmx1RlVKdTlqS3pmYzNzVHAwRkZDQ2pZSy96VXdxSzh6d2lkc1MvVG1jWkJSSnBXeitkVVZidXJNODFNMzM0WG10U01LZEN0SEsydjlhNis4b3A3Yml2UU9MalkwaVVmbU5EQkNmMGJWUHJ2MC9DM2ZjMnMwZWEyVjBkSy95cG1UM1F6QzdNWExabXA2VHZ4U0JJZFhMS21SU01yODQxSlFNVHFOT1Rnb2crWm1ZWDU2eDhvSGtWZFAwU00xTm5IZTN2V1pOQzBWNjZna0VyQXhGdXpHbzhIWEZPanRmclZlLzBkMk16ZTFTODlpdTRaOHZLZTEwaDBycStLQUJmNTR5UzY4dTFZcWZFWFN2VVVlZE8zZTk4cVVKWnFVVjRnN3RTTy9ONnkvZUd4YVp1Ti9NaDBCV1lONmdBNGRiREhDdWVjMFhMODBSdTJKUzNMcVhycVRISWdnS3RGVlNuMElTUzY2R09sSkxPMHVzU251RUpNdlgreWhUcTl6Z3owN1B5Sms0MWp2OVN0K25CN2s0MXN5dEtDMnkwdk9jY3E2cDRmNWNLN3pqUnpQckNBcldPTDVyWmdXYjJqUkUvL3k3YW51K2EyVTVtcHZZckpnUm1DWGdHUGpqSHpIWmVnd0UwVi9tSThKNDNTODZkcmIxS3RpbW5ibXJYVUlDMGR4Q3huSFZONWswZFhHRWQyc3pVVnFpQkVvNkk3N0Z5UTZBOHZ0cW5yd3p2S1U0d004K2dzSjUxVHBaUmVKb0N0UlhVcG1rVnc2MVY3OUwzWkdNK3R5emF2M3FmckFHaFBYMktMb25oMHhvSVVmdTkxYVJqN1BCd3pYM09uQlcwZW1lYzJ4WXdYVDN2UFhvclE4cEZBQUVFRUVCZ2t3VFVCcVNBV005OXVPNm45Mm44WFdGSisveXEzbk9tSG4rZTBPaEoyYW52eEZQcjBqZWZwNjZ0QTY0VjhLNTIzRnYwVmI3Zzc4ZkVBT0d4dHJGN05rM2Z2ZWtkWE9rQVc1N25CejNMdnpWK2IzbXBwL0lETGFOdmJYWXdzNE1UMnpuMG5ZKytLL3ptQVBWN1h2aE82Y2l3RHc4MXM5ZFZlSWM2UUpXdnNvclNhOEtxQkZ4M3c4aHpuUFhOdGE3dHEvNTlYYzQyTXk4Q0NDQ0FBQUlJSUlBQUFnZ2dnQUFDQ0NDQUFBSUlJTER5QXA2UDBWWitvOWtBQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVCaWRRSTJ3VkczVUw4M3NYMkpuWEhVTVdPZEE2MFU3VWFFdStnQmFIM0hmYzg2TSt2aFhINSszQ3BhOWFRanVmVUlvLytsbWRyc1lUUG13dUk5eURzRDdtZG5IemV3R1V3c04wYW5vNFdhbTRLUFM2ZWRtOWlvemU5Y1NnZ1Z5NnE0Z2x3OG5kbUpYSUpCQzR6OXFacDh6c3l0elZyU204MDRDcnhYS0xzdS9XeENLUENId0JzemZMSFpLdW5XQlplbHhxZTE5djVrOU5xTU9rK05HWWJYL3VrTEh6YnlnYXdXVFA2UnhjRU1HTDdNdVdTQTFwR2NWZ3VGS0tMY3dNNFZlNjk4S2hWSDR2d1l5eVpsMGY2TE9lN3FucTMxOWVWUHNkSmRUbitsNVM4K2QzdlZxT1cvSVZXcG5YbS81M3JEWUVndVczV3dCZmVPeVp4eThhQkpPb0NBakRUcWlRSzNTenNlYnJkdS85WjV6UmN2elJHNW5jVzlkU3RlamErRUhRekNzQXRwenAzODNzemZHZ1dGK25idnduUGxMT2t1dlMwalhFS0hMQ2laNGNRd1FWampDcGs0bHgzK3VtZTdWZFArb3RzQnZtZG5uNDRBa1AxeVJVQVBQT1ZaR0piL0x2dzBEYjUzUmFYT2JkbCsxNTVjYnhiYXRCMDl0Qk9IV3ViK2t6Wnhmb1prdnl0ejBWOGZnbE16Rm1MMmlnUGU4V1hydXJMZ0pWeXVxNUQ2dHIxNTZidnBDSFBCVVlXL0x1RDlaTkJqQkwrSnpuUVpWWEtmbk9yVVphbkFWN2R2dHczUHJYY3hNN2Z1bGs5ck4xTWIraVhpL3FiYjNaYnJkSmc1SXE5QXIzWnRva0pkVm16WTE0RnBoN0hyWE0vME9WZ01XZjZWekQ2MzNJZDgzTXoyWDZsNWJ2OW5hYmJlTGpobTFCejNaek40OUk2eXkxVUNrdVcwQjAvVXZ1VWRmdGQ4TzlVVUFBUVFRUUdCc0FwN0JxYWUzUWQrNGFhRDJWbFBwYzk4NjMyZDRRcU1uK3luMW5YaXQvZXFwYSt1QTYrdkc3eHp2WDJzall6bHFQOUQycWkzc0I1WExYcWZpOUM3a1dETjdmTTlHNmQzUk84enN1Qlg5M2t6dEhIcFdla29jM0hYNldYS3k2VytKMytVTTBVNHhxWThHcHk4ZElIZ1p4MlBwTldFVkFxNXpCbHZ0N2dPRnBXdVF5WE9Yc1hOWUp3SUlJSUFBQWdnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2dnZ0lCZmdJQnJ2eDFMSW9BQUFnZ2dnQUFDQ0NDQUFBSUlJSUFBQWdnZ2dFQTlnV3VIVHQ0bnh3OVNVMHE5SW9RbnF6UHQyV2IyMmRqUjlxS0JPOU9tMUhNTTg5ekt6SjVvWnM4MnM2Mm1LdFM2VTg1a1ZXcUh2a1A0TVA5T01SRFpZN0p0N0tpdkVDcDl1S3hRMmE5NkNzcFlScUVET3JiVUFTUm5Vc2NPZGU1V0tQZEpzU1AvS254QVA2L3ovaVFvUWR1aThIajk3b2JzdEo1alA3WjUxWW5qampGSVhrSHQrbWZ5R3p3dkhzZVhPQ3FkMmlsSjUwa0ZFZWlZL0hJTWpEM0h6TlJwcWtiZ3hhS0JDYlJPQld5Y0ZuOEwvN1lHeDQxQ2UxOW1aZ2ZGQUFXZFY5L24ySDhzc3I0Q2l6cmxLQmhPMTJGMXVobWlFOWY2S3BkdDJUNkp2OXVmaGtES1A0d3NITkViM0pYYW1kZGJ2amNzdG14UHN2U21DK2o1NHJraFNQOG9NeVBjZXRpandYT3VhSG1leUEyYmFsbVh2ajF4WUNjVVkzS3ZQbGxPZ2J3S0M5TTFTTSs2ZWw1bzFjWlIwbGw2WGNJelNrS1g5YXp6czg0TzE3T1BudTIwLzlST3BUQTREZGpCaEVDT2dPY2NxL0pMZjVjSzM5Y2dFWk9CSTFUbXA4M3MrU0dZL3hzcitQd3lDZGhVVzZUT282c2FzcGx6N0RCdm1ZRENXRThNeit1N1poU2o1M29ONUtnZ1hxYmxDWGpQbXpYT25hMjJXdThrUHVCNEo2SDZUTnFBTDQrVjAzMkp6dU1Lb2RYN0N0MmJqT0U5eGZSNWVsSnZEUXB5ek1nSENHMjF6OWVwWEEyMnEyTk14OTBxVHBzYWNMMXErK3FoWVZCRkRZSThDVkg3VEJ4TWFuTHVxN2s5R2p4Rjc4RVVtSlk3YVVDQm4rUXV4UHdJSUlBQUFnZ2dVRTJnTkV5ejVUZHBKZTN6WTM2ZXJiSHpQS0hSay9XbXZoT3ZVVStWNGFscjY0QnJiNzBtSnBOdkpCU1lxMi9MSnQrWDZmM1ZNZ2JKcXJXdmhpem52dUVid2JOQ0dQZzFwMWFxZDluNlprK2gxaDh6czR1SHJGRGpkZW1kdmRwNUZFQzhiOWcrZmQrclFaSDBIUFhOeHV0ZWwrSkxyd2xqRDdqV01mTDNNU0RmczgvVS9udmtDcjZuOG13cnl5Q0FBQUlJSUlBQUFnZ2dnQUFDQ0NDQUFBSUlJSUFBQW1zbFFNRDFXdTFPTmdZQkJCQkFBQUZ4YmNJNEFBQVR4MGxFUVZRRUVFQUFBUVFRUUFBQkJCQkFBSUdWRm5pTW1YM1l6TlJ1T1FrTTBrZnkra2ZoUU44enMvT25BbHRYZW1PWFVIbTViaE5DQXZUaDcxM003QkV4Z0drSlZYR3RVcDNqVHpHenQ1clphd2I0Y0ZtaDZ6dUVqNlMzWEZCYmhWOHFlT3kzWnZiN2VHeXVjbkRwVGlHUSsxR0V4cnVPejlTRjlEdFVwM2dGUFNpczNUTk55cGp1RUtOeWZsZFFwcWNlK28wb0JHdjdHR2F0SUxjelk2aTdkOXM4OVJoNm1adUZ6a2U3aGREKzQrSnZmK2oxczc1eEMzUkRlbzROQVJpSG05bTN4MTN0amFtZGdzdHUyTm5hVmJsK1B5M2NhN3pJc2FjMG9JRkNDL3NHVlBDV3IzdDNCUTB6SVRDMGdPNkhEZ21kWmRWaFhRT3hNQTBqOEhBemUzVG1xdFFCL3QyWnk2VE9uaHMycGFCVDFXZlRKejFiUDhPSjhFL3hmdCs1T0lzaGdNQUNBZS85bUlJalNrSjJkVTE5UVd4cjB5Qk82L0Q4Y25zemUyKzhUOVVnUTB3SUxCSzRhUWlyL3J5WjNUYUQ2WUxZYnJ4T2dUUVpteithV2ZXdTQ2N08yaEE4Nm9TcnROaTk0NkNJYWxONFpSd2twRkxSRklPQVcwRHRoZ2ZIQVh1OWhmQzg1SlhMVzA3bmY3VUZiVDNRZ01oNXRXTnVCQkJBQUFFRUVCaUxRUGU5ZlU2OVdnNmlVZEkrcjIxWTUzdk9wNXJaZGprN2FtcmV5Mkw3NWxEZktyMGhCUGp1a1ZsWHRUOXBHelVBYXF0SkEvZGNkMEhocS9KdFJDdWYxdVhxT3pxMWRlajg4eEV6T3ptOFYvMzZCZ1dFYjJGbTE0dmZMcTd5OTdPdGo1UHA4aldJMDNzS1ZxaHozajRqSG14czFnQ3JxWnY3VGpNN2FJTitQNmt1ekljQUFnZ2dnQUFDQ0NDQUFBSUlJSUFBQWdnZ2dBQUNDS3lFQUFIWEs3R2JxQ1FDQ0NDQUFBSUlJSUFBQWdnZ2dBQUNDQ0NBQUFJYklhQ1BuUC9TelA3dlJtd3RHK2tSVU9DSXdxUmJkdmJ3MUl0bEVFQUFBUVFRbUFqOGpaazl3TXcrR0VKUkxvVUZBUVFRUUFBQkJCQkFBQUVFRUJpNXdEcTJ5ZjZGbVdsZ09pWUVFRUFBZ1hFS2NKNGU1MzZoVmdpc2lvRENyVFVZNlZkWHBjTFVFd0VFRUVBQUFRU1dJcURCZFU0enN4czQxbjZZbWIzVXpBaHBkZUN4Q0FJSUlJREF4Z3VNZGFDSmpkOHhBQ0NBQUFJSUlJQUFBZ2dnZ0FBQ0NDQ0FBQUlJSUlBQUFrTUlFSEE5aERMclFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQWdkWUN1NXZaaDh6c0dwa3Irazh6MjlQTVRzeGNqdGtSUUFBQkJCRFlkSUhyeCt2bmpnNkk3NXJaVG1iMkk4ZXlMSUlBQWdnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2dnZ0FBQ0NDQXdFZ0VDcmtleUk2Z0dBZ2dnZ0FBQ0NDQ0FBQUlJSUlBQUFnZ2dnQUFDQ0NDQUFBSUlJSUFBQWdnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2dnZ0FBQ0NDQ0FBQUlJSUlBQUFnZ2dnQUFDQ0NDQUFBSUlGQW1vNy9RTHpPeTFqbEorWldZN205bTVqbVZaQkFFRUVFQUFnVTBVK0I5bTloWXoyOSt4OFJlWjJmOHlzNjg1bG1VUkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBZ1JFSkVIQTlvcDFCVlJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUtCSW9DUnM4ek5tdHJ1WlhWNVVBeFpHQUFFRUVFQmcvUVVZVkdMOTl6RmJpQUFDQ0NDQUFBSUlJSUFBQWdnZ2dBQUNDQ0NBQUFJSUpBa1FjSjNFeEV3SUlJQUFBZ2dnZ0FBQ0NDQ0FBQUlJSUlBQUFnZ2dnQUFDQ0NDQUFBSUlJSUFBQWdnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2dnZ0FBQ0NDQ0FBQUlJSUlBQUFnZ2dnQUFDQ0NDQUFBSUlJSUFBQWdnZ2dBQUNDQ0NBQUFJSUlJQUFBZ2dnZ0FBQ0NDQ0FBQUlJSUlBQUFoTUJBcTQ1RmhCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRXNnUUl1TTdpWW1ZRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRS3VPUVlRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkxJRUNMak80bUptQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFQ3Jqa0dFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVN5QkFpNHp1SmlaZ1FRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQXE0NUJoQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVzZ1FJdU03aVltWUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUUt1T1FZUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJMSUVDTGpPNG1KbUJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUNyamtHRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFTeUJBaTR6dUppWmdRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkFxNDVCaEJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFc2dRSXVNN2lZbVlFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFLdU9RWVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCTElFQ0xqTzRtSm1CQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVDcmprR0VFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRU3lCQWk0enVKaVpnUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJBcTQ1QmhCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRXNnUUl1TTdpWW1ZRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRS3VPUVlRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkxJRUNMak80bUptQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFQ3Jqa0dFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVN5QkFpNHp1SmlaZ1FRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQXE0NUJoQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVzZ1FJdU03aVltWUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUUt1T1FZUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJMSUVDTGpPNG1KbUJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUNyamtHRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFTeUJBaTR6dUppWmdRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkFxNDVCaEJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFc2dRSXVNN2lZbVlFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBQVFRUVFBQUJCQkJBQUFFRUVFQUFBUVFRUUFBQkJCQkFBQUVFRUVBQUFRUVFRQUFCQkJCQUFBRUVFRUFBZ2Y4UHo2NTlWanp4bE5FQUFBQUFTVVZPUks1Q1lJST0iLz48L3N3aXRjaD48L2c+PC9nPjwvZz48ZyBkYXRhLWNlbGwtaWQ9ImZyZWUiPjxnPjxyZWN0IHg9IjMyIiB5PSIxNDgiIHdpZHRoPSIzMzAiIGhlaWdodD0iMTA1IiBmaWxsPSIjZWFmMmY4IiBzdHJva2U9IiMzMzU1NmYiIHN0cm9rZS13aWR0aD0iMiIgcG9pbnRlci1ldmVudHM9ImFsbCIgc3R5bGU9ImZpbGw6IGxpZ2h0LWRhcmsocmdiKDIzNCwgMjQyLCAyNDgpLCByZ2IoMjQsIDMxLCAzNikpOyBzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDUxLCA4NSwgMTExKSwgcmdiKDE0NCwgMTczLCAxOTUpKTsiLz48L2c+PGc+PGc+PHN3aXRjaD48Zm9yZWlnbk9iamVjdCBzdHlsZT0ib3ZlcmZsb3c6IHZpc2libGU7IHRleHQtYWxpZ246IGxlZnQ7IiBwb2ludGVyLWV2ZW50cz0ibm9uZSIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgcmVxdWlyZWRGZWF0dXJlcz0iaHR0cDovL3d3dy53My5vcmcvVFIvU1ZHMTEvZmVhdHVyZSNFeHRlbnNpYmlsaXR5Ij48ZGl2IHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiBzdHlsZT0iZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IHVuc2FmZSBjZW50ZXI7IGp1c3RpZnktY29udGVudDogdW5zYWZlIGNlbnRlcjsgd2lkdGg6IDMwNHB4OyBoZWlnaHQ6IDFweDsgcGFkZGluZy10b3A6IDIwMXB4OyBtYXJnaW4tbGVmdDogNDVweDsiPjxkaXYgc3R5bGU9ImJveC1zaXppbmc6IGJvcmRlci1ib3g7IGZvbnQtc2l6ZTogMDsgdGV4dC1hbGlnbjogY2VudGVyOyBjb2xvcjogIzAwMDAwMDsgIj48ZGl2IHN0eWxlPSJkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGZvbnQtc2l6ZTogMjBweDsgZm9udC1mYW1pbHk6ICZxdW90O01pY3Jvc29mdCBZYUhlaSZxdW90OzsgY29sb3I6IGxpZ2h0LWRhcmsoIzAwMDAwMCwgI2ZmZmZmZik7IGxpbmUtaGVpZ2h0OiAxLjI7IHBvaW50ZXItZXZlbnRzOiBhbGw7IHdoaXRlLXNwYWNlOiBub3JtYWw7IHdvcmQtd3JhcDogbm9ybWFsOyAiPkZyZWUgLyBSZWFkeTxiciAvPuWFgeiuuOeUs+ivtzwvZGl2PjwvZGl2PjwvZGl2PjwvZm9yZWlnbk9iamVjdD48aW1hZ2UgeD0iNDUiIHk9IjE3Ny41IiB3aWR0aD0iMzA0IiBoZWlnaHQ9IjUzIiB4bGluazpocmVmPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQk1BQUFBRFVDQVlBQUFCNlFsOElBQUFBQVhOU1IwSUFyczRjNlFBQUlBQkpSRUZVZUY3dG5RbjRmK1djOTkramNxVXNDY2tUSWx1V0dUT1BMVXRralNSamEwcTJTMk9aeWI0azFUQ05aU1RMMENMcklFdWltZ3JKTWpVbFVuZ3NKWU15d3BNdFpLdUh5blBlM0YrK2ZUdkxmWi85bk8vclhGZTY5THVYei8yNjczUCt2L3Y5L3l4L0lSNElRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ015WXdGL01lRzBzRFFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNRZ0RqRUVBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRak1tZ0FDMkt5M2w4VkJBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJSUlCeEJpQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVJtVFFBQmJOYmJ5K0lnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUVNQTRBeENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFLekpvQUFOdXZ0WlhFUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNDR0NjQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FJRlpFMEFBbS9YMnNqZ0lRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQkRET0FBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnTUNzQ1NDQXpYcDdXUndFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUFoaG5BQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUdEV0JCREFacjI5TEE0Q0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBWXd6QUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlEQnJBZ2hnczk1ZUZnY0JDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0NBQU1ZWmdBQUVJQUFCQ0VBQUFoQ0FBQVNhRW5pWXBPTkxCdGxGMGdsTko2RS9CQ0FBQVFoQW9DNEJCTEM2NU9nSEFRaEFBQUlRZ0FBRUlBQUJDQ3dJSUlCeEZpQUFBUWhBWU5RRUVNQkd2VDBZQndFSVFBQUNFSUFBQkNBQWdVa1FRQUNieERaaEpBUWdBSUgxSllBQXRyNTd6OG9oQUlIMUlMQ25wTHNOdE5SanM3bFBIR2h1cG9WQUV3SU8xZHE1WUlEVEpiMnJ5ZUFOK3JiNVBsOG82YXZCbGdza25TZnBwNUorMzhBK3VxNDNBUVN3OWQ1L1ZnOEJDRUJnOUFRUXdFYS9SUmdJQVFoQW9CRUJYOVNmMEdpRStwMzNrWFJnL2U3MGhNQWdCSzRqNmFRQzRkamkwRTZTUGphSVpYOFUzcnA4bjYvSWhML1BTM3FmcENNbC9YQ2dkVEx0TkFrZ2dFMXozN0FhQWhDQXdOb1FRQUJibTYxbW9SQ0F3Sm9TNlByQ1hJWVZBV3hORDkzRWwvMWdTUitWbFBjNzB1Y2s3U2pwNG9IVzJQZjdmSWFrNTJTaTM1bDRoZzIwNDlPYUZnRnNXdnVGdFJDQUFBVFdqZ0FDMk5wdE9RdUdBQVRXakVEZkYrWmx2QWhnYTNiWVpyRGNEU1VkSVdtM2dyVThVOUloQTY1enFQZlo0Y3pQa3ZTOUFkZk8xT01uZ0FBMi9qM0NRZ2hBQUFKclRRQUJiSzIzbjhWREFBSnJRR0NvQzdQUklvQ3R3UUdiMlJKdksrblRramJQV2RmM0pXMHY2ZHNEcm5uSTkvazNrbmFYZEFMZVlBT2VnSEZQalFBMjd2M0JPZ2hBQUFKclR3QUJiTzJQQUFBZ0FJR1pFeGp5d293QU52UEROY1BsUFVQU3dRWHJPbFNTUGNDR1RCSS81UHRzTE00UjVrVDh0bU5JRGpNOGVyTllFZ0xZTExhUlJVQUFBaENZTHdFRXNQbnVMU3VEQUFRZ1lBSkRYcGdSd0RpRFV5SlFsdnorTWtuM0RkNWhRNjVweVBkNXNXNkxZTHRLT25wSUVNdzlTZ0lJWUtQY0ZveUNBQVFnQUlFRkFRUXd6Z0lFSUFDQmVSTW91ekQ3VXIrL3BQTTZRbkNPcEhNN0dwdGhJZEEyZ1RFbnYxK3N0ZTMzK1M4bDNWUFN2U1Z0bEFEMHd0RG5Xd2w5YURwL0FnaGc4OTlqVmdnQkNFQmcwZ1FRd0NhOWZSZ1BBUWhBb0pKQTJZWFpPWDE4OGYxQzVTZzBnTUM4Q1l3OStYMk1BTmJrZmQ1QTB0MGt2VmJTZHBGYi9YWkpUODlFZEF2cFBCQXdBUVF3emdFRUlBQUJDSXlhQUFMWXFMY0g0eUFBQVFnMEpvQUExaGdoQTZ3QmdUdElPazNTWmpsckhVUHkrNjRGc01YNC9yM1FJc2I3SlcxU3NlKy9sYlNEcE0rdXdmbGdpWEVFRU1EaU9ORUtBaENBQUFRR0lvQUFOaEI0cG9VQUJDRFFFd0VFc0o1QU04MmtDZnh6bHRUOXBRVXJHRVB5Kzc0RXNNVThkNVYwVW9FZ3VJenBsWkwybS9UT1kzeWJCQkRBMnFUSldCQ0FBQVFnMERvQkJMRFdrVElnQkNBQWdWRVJRQUFiMVhaZ3pBZ0ozRER6WkRwRjByWTV0bzNOeTZuUDkvbFJrbzZTZExXU1BmdThwQWRKK3RrSTl4V1QraWVBQU5ZL2MyYUVBQVFnQUlFRUFnaGdDYkJvQ2dFSVFHQ0NCUHE4TUU4UUR5WkRRTHVGa0w4OEZQYUNlb1NrUzBiQ3FjLzN1U292bXBIOFV0TDJHYU12ajRRUFpneExBQUZzV1A3TURnRUlRQUFDRlFRUXdEZ2lFSUFBQk9aTm9NOEw4N3hKc3JvNUVyaUdwR096UEZZN0ZpeHU5OHd6N01nUkxienY5L2tCa2o0dXFlejN4VjBrblRBaVJwZ3lIQUVFc09IWU16TUVJQUFCQ0VRUVFBQ0xnRVFUQ0VBQUFoTW0wUGVGZWNLb01IME5DZHc5aEQ5ZVBXZnRYdzlKM244NElpNTl2OC9YbC9SZldTams3VW9ZN0NQcHdCRXh3cFRoQ0NDQURjZWVtU0VBQVFoQUlJSUFBbGdFSkpwQUFBSVFtRENCdmkvTUUwYUY2V3RHd0w4REhTeHByNEoxSDVEOWR5ZkhIOVBUOS91OHNhU2pKZTJFQURhbVl6QmFXeERBUnJzMUdBWUJDRUFBQWlhQUFNWTVnQUFFSURCdkFuMWZtT2ROODQrcjg1K2RtMHRhOWhweXN2U2ZacFVFZno5aUFCWXpycnRpbjVPWFh6cGltN3MwN2VhU1RwTzBWYzRrUHcrNXJjN3Uwb0FhWXcveFBwZk42U1gwNlFHMldlWnQ1ckRWeFhPNXBJc2srZDlqZS9MZXR5dkNkK0ozWXpOMnlaNXJTcnBXVGNZSVlDUGVXRXlEQUFRZ0FBRUVNTTRBQkNBQWdia1RHT0xDbk1wMG95QW9GVldiYzZMdFh4VU11bWxJVXY0a1NYOGw2UWFoM2E4bGZTdFVzWHQ5d3lUbXZzanVJUDBoV2ZwREpHMVJza0FMU3M2WjlNNFFXamVVdUdTUmJtdEpydVMzcTZRN2wxVHo4Nlg4SEVudkNieStNM0loTC9WOEZiVi9SdkFBeS91NTgzNDlYdEpsYlUzVzBqaER2TTlEQ1dEK0x0eEprdk93UFR5YzV5S01mdDgvTGVudDRmMjd1Q1hlTWNQNFhidVJwUHVGNzhPOUpOMjBvcU1Gc0M5bTR1dGJzM2Z6dzVLR0NyUGRJSHdiSGl2cG9aSnVVV0wzanlTZEtPa3QyVG8vVnlBNk5oSEFxdjRjc0dsOUNQYXJBdUFxa2o1c2lEbDN0SUVBQkNBQWdSb0U4QUNyQVkwdUVJQUFCQ1pFWUlnTGN5b2VYM0pQbGJSSlFjYzhEeE43Z1R4VDBzc2wrZUpVOUZ3Z2FUdEpGNllhRlM2MSswdDZlb2w0VkRhc2hhWERnNDExNXE5aHNueWgzVm5TcTdMazdkdldHU0FUK3B6N3lzeDlNUitqWjAzTlpWMnAyM1VrdWNMajNYSUdzeGVmUS80KzFzWkVMWTh4eFB2Y3R3QjI3Y3hMNmxtUzlsM3g5a3BCNmNJR0w4N0VzLzlPNlpUWTlpYlpkK1Zwa3A2NkpMd25EdkduNW1kSWVrNTI3czdzU1h3MlkzL1hYbERUOWg5bll0U3pnMkMrL0kxb0lvQ1Z2Wk1MVUsrVXRGOWR5Qkg5cW9waWZEOTRobjQ3WWl5YVFBQUNFSURBQ0FrZ2dJMXdVekFKQWhDQVFJc0Vocmd3cDVxZktvRGRPRlR1czFkVDFWTkhBUE1seUxtZmZEa3M4a3FybW5mNTUvYjI4S1h0MzdKL2R4bjZkQmRKNzI0Z2ZLMnU2YXpNaSs1eGtyNlJzdGlKdEgyd3BJOFdwSUt3ZDR1clF2YnBSUlNMcmUvMzJSNld4Mldob3Zjdk1kQm41TDJ4Q3locFovSDJIekloL05VTmhLL1Y0WjNqelVLWVBjVGFlbHdRd08veUE5c2FjR21jd3lUdDNiSzl5MmFhc1QxQ0xjeGJCR3Y2ZkNwOEkzNFFCbW9pZ0htSU1xOU0vL3p6a2g0VVBNR2EycDdYL3c0aExOcWh0bm5Qb2VFdlhzWWM2dDRGRjhhRUFBUWdNQnNDQ0dDejJVb1dBZ0VJUUNDWFFOOFg1anJia0NLQU9henZFOW1GKzFhUkU2VUtZTGZOUWltUGFWRkVXamJUb1pFTzUzS3VzRFlmZThDOVNOTEwyaHcwakdYQmJnOUpIK3JKTTZXREpWeGxTUC91OHc1SkRwdk5lK3haZUVnZmh0U1lvKy8zMmZuUlRpOEpQM1NJNkgxRCtHR041ZnlweTVZaEJMZE1hS3M3dnNONy96YUVSTmNkdy8xc293V3FSelFaSktLdjg5SlpwRnFJU2hGZG9wcFl6UFM1TGpyM1VZUGtORG8vZUoyZUs2bXBBT2J2cjBOWm5XTXg3N0h3WkFIc2szV05yZWpuNzZpOVo0dm1IcXRuYUVjNEdCWUNFSURBL0FnZ2dNMXZUMWtSQkNBQWdXVUNmVitZNjlDUEZjQ2NtOFhpVklyblJZb0E5Z0JKSDh5OE80cis5ci9PMmxiNzJJUEJGK2p2dFRHWUpGOXE3YzFoTDV5dUhvZHlPdHpKM2c5ejhId29TMzQvOWhDbnZ0L25Nazg1bnpmbmk3dW5KSE9yKzFqMGNManROblVIaU9qMzNTem4xaTZaRVBhbGlMWkZUYXJFblFaRFg2V3JQYXVjdjY4dEw4UVVyOWs2Ni9obStDNDdEK1B4SlFONEQwNG8rZm1HV1I2eUkwSyt4YUptOXVwemlHemJUMVVJNXBnOVE5dG13WGdRZ0FBRVprc0FBV3kyVzh2Q0lBQUJDUHlCUU44WDVqcllZd1V3NTZ4NVUrSUVzUUxZSXpPdkx5YytMOHNubGpoMVlmTzJMcmUrc05sbWl4UmRQeGJCN0pWeWROY1Q5VEIrV1ppVml4YzhlY1JDWDUvdmM0d1kwYlJZZ01PWW5WajkrajNzKzBLa3NXaFg1K2xUQUxOOXptLzRraGJPWXRmaTE0S2xQWFA5L3BTRncxWUpZQjZyU25SMWprSVhKV203Y0lDTEY1eWNjZmU1ejN2RzdCbGE1enpUQndJUWdNQmFFa0FBVzh0dFo5RVFnTUFhRWVqendsd1hhNHdBZGxUSXplS1FySlFuUmdDN2EwaUlYdVg1NVhCQVgvRDhqeXU0TFNvOCtzOVNWNTkwUXZWL2pCU2szcEI1ZHp5M3dlWFdRcDA5c3A0U0FjTWhZSzZFYWFIQnlmZ1hYbHl1Ym5uTEVCNW1qNHBGQmMyaUlYOFNMcDRlYjZyUFZKUGZMM2ozK1Q3YjA5S0ZBSXJ5NERVdEZwQVN6dXdRWEZkNGRIamNja1ZZdjdNVzBWeXgwMTZRVlRuNzdHbG1JZmVTR2dlNFNnRDdlY2lYOXBHUXpONEN6WElWV0wrek53dko1NTNyekxrR3k1N2ZTTHAzRmxiNGhScTJMcnI0dkZ1MGpnMHRkZEVBNXhGMGlLRzk1aGFQYzRmOVRRaUg5bDhXRlAxRmdXMzE5N3pvaVJIQXJoc3FlUmJsZUd4NjdvcHNlMlBJNzVYM2M0ZXRXeUJ6bUNjUEJDQUFBUWhNbUFBQzJJUTNEOU1oQUFFSVJCRG84OEljWVU1dWt4Z0J6SmZGbCtiMGRyaU1Rd0NYQlNtSFNqcFJ0Uy9FdnZnNXRMR29DbVBzSmR5NWM1ekkvaGNSaS9UY0ZzbWNsTDdvc1VlVlBSM3NOWkg2K00vdUYyWVg2QU1yT3A0WEt0VFpxNkVxZERHMnFtWVRBU0YxblYyMG4ycnkrd1dMdnQ3bm1QZWlTVWhZckREamFvNFdaMk5DaHUzcFpCR2pLa2VYeFNkL00xS2ZQQUhNNy9GN3dydG9jYVRxUFZ2TTZRVDBEdVY3UW9VUlRaS3UrenZoYXE2dW5GajErQnZoS3BSZmpWaUR2eFd1Zk9seGl5cjNGczBYSTRDNXI0dVE1SDN2RitNMjRaSm4ydzB6Y2YrVWt0eVBUVDBkcS9qemN3aEFBQUlRNklrQUFsaFBvSmtHQWhDQXdFQUUrcm93TjFsZWxRRG1TNjBUSDIrN05JbHphVDBtUytqOFB4VVQyMFBFRmVEeXFpL2FpOEhoT2g2bjZMRVhoaFBYTzI5TjdPWFdZL21TNkF2dW5pVmovMWRJSHIzczBSTERjZnZnb1hIMWtzYk9sV2J2c05TRSsvZkloRHQ3c0JSNXc1bkJvME11dGhoYng5U21LcVJ2Q2lGT2ZielBUdlp1ajB1ZnM2TEh3bytGcHJKOFQwVjkvYnZudjBqYXYyTDg1NFdrN1pjbkhDSjdLcm1LWXBubzh5MUo5MXZ4Y0lxWllsVUFzeWh1b2VhaW1NNDViV0s4T0p2a3BJdjVUbmdmTFdaWnNFL2g3T1hZbTgwNUUyT3E4UzZXSHl1QVZWVmpiQ1AzM1BLV2xBbmpYWG1jMVR3MmRJTUFCQ0FBZ1NZRUVNQ2EwS012QkNBQWdmRVQ2T1BDM0pSQ2xRRG1uQysza2JUNE04dmhVSC9mUW9Kb2U0alpnNnpvY1VqVFF6UHg3VE0xRjFqbDVWTG5Zblc5RU1wWTVsM21VREdMT1hYQ3ZMeFVKOSsyQUZJVVRuWlNFRC9xamw4VForTnVaWmZxSmtKRFk4TVNCdWo2ZmZhNWVuLzJYdHlpd3FhM1N0cXJRRml1V2s2Vk1HTlI1ckhoREthSXpvdDVZNFNsT21MblFnQTdLMVJTL0ZyVlFpTit2a1VXNXZpZm1aQjArNUsyRnVEdGdaVHkyQXZXM3ByM0tlbmt2eFRZcmFHWW5acUhNRllBcXhLcnZhdzZYUEp3Vk0zVnhOTXhaYzlvQ3dFSVFBQUNQUkJBQU9zQk1sTkFBQUlRR0pCQTJZWDVzdUNGNFZDNU5oL25pbkt1SG84ZjgxUUpZTXRqdEpWQXZ1cmkyVmJTZDE5c0hWcFRsT1E3TmJTbXFoQkFHM3o4dTRGemhybnlZOTd6MjVBTDdMTXhtenVpTm1WaFZXMkhWSFcxN0M0RU1PKzNLekU2WE02NXRLcWVKbWZNbnBFV1YzY3VtZVJGV1hYVGd4STlMbGVIcTNxLzY0Z2FPd1Z2Sjl2V3B2aGJWcFRCNjZwVDlkRENsb1hNb3NmQ29nV2tEMVJ0ZHNUUExZTFpRN2JNWTNBeFRLd0E1dlp1ZTF6Si9LbmZ6cUtoeXFyQ3VzOEIyZi80MjhFREFRaEFBQUl6SUlBQU5vTk5aQWtRZ0FBRVNnaVVYWmk3QXBjYTJoY3JnTmtqYThlUVlMcXA3VldYenFaSjZoZjJWWVY3L1NETEEzYlBMQmZRK1JFTHFzcFQwMmFTZWlmSFAxWFNqUXJzY29pWmM2Sk41U2xqTnlWQnIwMUIyOEtGUXdHZEk4K0NVY3pqcFBnV1Z5Nk9hWnpUcHFyQ1g1czU1c284UEMzTzN6Y0k5YkZMY1hpbGhmRTZYbWxsYzJ3ajZmUXNMNWxEVC9NZUM0NFBENkhjTWJiR2VIODU1TkdoajNtaDRURnpyTFp4QVJCN3NsWGxCRXNSd0txK2QyMTViZTRSOHJqbHJkdC81bGpZTzdzT0ZQcEFBQUlRZ01ENENDQ0FqVzlQc0FnQ0VJQkFtd1RtSklDOVBMdUF2cVNGQzJoWkpVQ3pyNXNqcUdqZnFnUStYOVNkaTZ6cXFmTHFzQWRQVldMOHFqa1dQL2Z2Qis4SW9WNTVmWnlEelhuWmZoWTc0TUR0eXRoTkthUnppUGQ1c1hXdkNlOWZYZStucWxDek5xb2VMaDh6VjR5MXNPU0Uvbm5QV0VSY1YyTjFwVVo3bU9VOUZzZWRtODlWSldPZXV3ZXYwNkljZ1M0STR1cVMvczYxOVZSNWpTN21TUkhBM0tjcUdYN3N0N05vblZYczIvSXlhNHN6NDBBQUFoQ0FRRU1DQ0dBTkFkSWRBaENBd01nSkRIRmg3c0lEckUzdkpudThmSHdwcDlqcUZyWXBKSG5zNjRiNWlwSkZPMmVYYzVxVlBWVVh0YlpGTzl0UzVobnh5K0FaOGVXUm4zK2I1N0E3VnhPMDkyRGUwMVl1b1Q1UURQRStPd2VmUTIvOVhqZDVIR2JwME9qTkN3YnhlK0I1WWtPbnEyeXg0R1lCd3pudDhwNVV6NnFxK1pyODNJVStuSmNzNzBueEVuWC9zckg4ODdiK0ltSFYxcXJFOVc2ZktvQlZqV25oME9KMjNUTlRObjZkSEkxTnpnQjlJUUFCQ0VDZ0J3SUlZRDFBWmdvSVFBQUNBeElZNHNMY2hRRFc1dC9FbDEwUVhUWHhYcExPYlhuUDNsWlNFZEtpZ0wwL0xDb1ZQVlhpUVowOFFWVkx2S09rMHlSZHE2Q2hoUVZYbXh6N1UrWVJZM0ZuaHdUdm1xSFgydWY3YkRZV2d4MldtRm9oTUkvVDA3SXd2OE1MQUZwc3NFZmhKMXNHN0VxU3J5MFkweUYwMjJYaTgvZGFuclBPY001NzlxcUNqaW1lY1ZWaWU1Y2hmVlZDczVlWEtvQlZqZG4wZTEzR2ZXcmZoanJuamo0UWdBQUUxbzRBQXRqYWJUa0xoZ0FFMW94QW54Zm1CZG91QkREbndEbStoYjJydWlBMjlTZ29Nckhzb25WQnVJZzdOS25vS2ZQR3FwUFBLQWFsODMrZGtZVkMzclNnY2R1ZWNqRTJwYmJ4N3prV0IxMnhNTytaV29McnJ0OW5DeVNlNDdETUEvQ2JMWVFiTDVoWGVXTjFGVks3cU55WXQvY3B3bExxdVV0dFgvWitwOWhaRlc3ZGRianZLeVR0VzdMNFZBSE1RMVdGZnR0cjhNMnB3TE5DSDFXaDhGUDdOdFJBUUJjSVFBQUM2MGNBQVd6OTlwd1ZRd0FDNjBXZzZ3dHpIczIyQmJDbWY4dS9iR09WSjlYekpiMnVneVBTOUNKZTVyV1dtaU1vZG5sVnliVGZMZW1Kc1lNTjFLNnN3bHVYM2pCZExiZnI5L21JSUdDMDdSWGxLcWorTHR5dUFFeE1HSEFkcGxXQ1VCMUJwbzRkZVgyY1ZQOTZnY2xESk8xZE1IQ0tBRlltcEhsNEY2NXc3ck91bmtlR2ZHWkY0OWZoWFpVTXY2Nm9WK1laT3NWdlExZDd5cmdRZ0FBRVprVUFBV3hXMjhsaUlBQUJDRnlGUU5tRjJXRkhMalAvNDVhNTJYUEVYamVYUm81YmRVbHQwenZFRjgyUEZ0alZWUmlXcHlzVHdLbzh1RFlOKzNUL0FydTlIb2NqeHZLTzNCWlZDV0JkZWN2RjJoZlRycXphWjV0aHRURzJ0TkdtYXdITU5yclM0WXN6RDVuWHQxZ2xzQ3FjdHE0WFR4WFRxbTlMMHlUcVZmTnZGSEtlV1hpMytHZDcvSStyclBxOWpubFNCTEF5RDZ3dXYyK0xkWlI5NTl5bWpnRG1mbVYvQVZCWHJDcGpOWVZ2Vzh6Wm9RMEVJQUFCQ0t3UVFBRGpTRUFBQWhDWU40R3lDM1BLeGFwTFNsV1gxRFl2STJVNWdieEdpNEZ0QzBrZTEyS1N3eStMbnJLTG9UMGdQaU5wbTRMT3Y4dVNoenRSZHR2UDFiTFFJb2RCK3Q5NVQ2cW5YOXYyVlkxWEZ1STAxUVRYVFFSdDgzQytzeTJxd0lXZmZ5Z1VaN2c0c24xWnN6TGgyZjFjVGZSWExjeXpPb1NMUjl5Z1pOeTJ3bmd0ZE4xYTBuMGszUzM4YytNRWthdHM2YkhmNmFvdzB6WTlhWXZzN1VvQXE2cHM2UUlDaHlTY255cXZzaWtWeGtoWU5rMGhBQUVJUUFBQmpETUFBUWhBWU40RTVpQ0F0UmtlVlpXalpxalRVQ2FBV2ZnNlBVc2d2dVZReGsxVUFDdXI5dm01VUJXeURYR256MjFwNDMyK1NRaHp0TmRWMWZQV2tEL05JbXVUcHlvMHI4bllUZm8yRWNEc3dmV0lUTHg3ZGxZb29LakNheFBiRm4xakJiQXFqODJZWElOTjdlMUtBS3RLaHA4cXhqODRlQUxuM1lOSWZ0LzBGTkFmQWhDQXdJZ0pJSUNOZUhNd0RRSVFnRUFMQk5xNE1MZGdSdWtRVlI1Z1RTNnBxeFAzRVVKV2gxZVpBRmJGcDg1OGJmUkp2WFMyTVdmc0dGWEo3MU05Um1MbjdicGRtKy96WDBuNmdLUnRLNHgyQVllREdpYkVMeXNDMFRXenN2SHJmRnV1blZYRi9LY2dmTm56cStzblZnQ3I4aFR0NDMzdFNnQXo0N0prK0xHTVBJNi9EZStROUtTQ2pTUDVmZGNubXZFaEFBRUlERWdBQVd4QStFd05BUWhBb0FjQ2JWNll1ekszU3VDcGMwa3RzaFVCckwxZDdPTkNYZGZhc3VUM2ZZU0MxYlc3cWwvYjc3UEQ5STZ0OEdCeVRyQmRLNUtiVjlrOUJ3SE12ek9idzF1eVFoa1d3ZnA2WXNXZHFxcXRmYnl2WFFwZ1plKzA5eUpXdUNvYko1WjFYM3ZQUEJDQUFBUWcwRElCQkxDV2dUSWNCQ0FBZ1pFUmFQdkMzTVh5RU1ES2swTlg4ZWxpVDJMRzdPTkNIV05IWHB1NUpiOWZyTEdMOTNsclNaK1FkS3NTMkM1czhVQkozNm01SVZNWHdPenA1UXFLTDYyNS90VnV6bm5ta0VTSDRwNFo4b2MxclFJNWR3R3N5cXN6TnF5NUxCeTNia1hKbG80RncwQUFBaENBUU5jRUVNQzZKc3o0RUlBQUJJWWwwTVdGdWUwVlZRazhlSUJKcDByYXBHM3dEY2NicXdBMngrVDNYUXBnSHZ1dWtuejUzNnprVERUSkJ6WmxBY3kvSzc5UTBvR0o3NHNMYXJoNHhUZXk2b2RmbEhTMnBBc2wyUVBSUlJpV256TFBxVml2cExrTFlPWlZsZ3ovdDZISXcyZEw5c2xGRVZ4VVphZUNOaVMvVHp6a05JY0FCQ0F3TlFJSVlGUGJNZXlGQUFRZ2tFWUFBZXpLdk1wNFhDWnBmMG5ucFNGdXBiVXZiZDh2R0tsS0lEeE4waHRic1NKdGtKOUkrblRHek56RzlKUWx1STcxRWhuVGVwWnQ2ZXA5amhGNUhBcnBwTy9IMTRCVEpZQzlXdEpaTmNadDJ1VWNTZWRXRFBJb1NVZVZWRU5kZExmZzllOVp0ZFozQjlFcnBYQUFBbGpjVGxZbCtuOWw4TlFyR3UwT2t2eTl6Qk42U1g0ZnR3ZTBnZ0FFSURCcEFnaGdrOTQrakljQUJDQlFTYUNyQzNQbHhBa05xZ1NlTmozQTNpWnB6d0xiWWowdEVwYldTdE03aGt2YnRRcEc4NFg3aWEzTU5QMUJOcFIwUkVpWW5iZWFxU2EvWDZ5bHkvZlo0c0l4SWRTeDZDUllNTHFmcEI4bEhwWG5TWHB0U1oreUloQ0pVN1hhZkF0Si95bnA5aVdqL2tLU0sycGFKTHU4NXV3SVlQSGd5c0tidnlicFBwSXN6dWM5WlgwUGxlVHZ3NnAzWHJ4bHRJUUFCQ0FBZ2RFVFFBQWIvUlpoSUFRZ0FJRkdCTHE4TURjeWJLbHpud0pZbFNlS1EyTk9iR3RoTFkxVEZkcjBLVWtQejhLMGZ0M1NmRk1lcHN6RHd4NTIyMmRpNGJjbnZNQ3UzK2U3QmNHbkxOejI1Wkpla2lnVVZDVkhmMzZXV1A1MUk5d1hDMXR2S3JITHVkSDh6ZmhXUTl2YkVNQ3VLK25qSlFVTm5ITnN1eENHMmREY3d1NWwrYlhjcVEyaHN5eUp2Y1dyQjBuNlpJNkZaYUhSTWVHVFhURmpYQWhBQUFJUTZKRUFBbGlQc0prS0FoQ0F3QUFFdXI0d3Q3R2tQZ1d3cWd1YUw3eHZibU5STFk1UmRiR3Q4bnBvMFpUUkQvWFBKWW5LNStEaDBmWDc3TjhMWHkvcDJTVTdiVTlKZTRFNW5EVDJ1VmZtbVhPeUpIdm81VDBIWjdteG5oVTdXRS90cmhFcVpPNVlNSjlGa3djRTc4eW1KajFOMHVFRmc4UjZwbGFGQi80eUNNQmZibXBzU2Y5OUpiMmk1T2R0Q0dCVnlmQ0wzdk95L0dFa3YrL3dVREEwQkNBQWdURVJRQUFiMDI1Z0N3UWdBSUgyQ1hSOVlXN0Q0ajRGc0NsZXhDMGFIQ25KdVlqeUhpZlY5cnFxY2htMXNWZGpIdU9HV1JMc1V6SlcyK1lZT1JjUGp6N2U1NXNFTDdCYmxteTJxMFkrVXRLdklnL0VObGxvNWVtWnlMTmxRZnVQaHZOOWFlUjRmVFM3YmNoeHQzbkJaRTZtdmx0TE9mREtQRk5qQlRDYldYWSsvSE43aXRiSjRSYkR1K283NVRIYUVNQThUbG1ldjZKY1hoYm1MTkRsUFkvTHFxQytOMmFSdElFQUJDQUFnV2tUUUFDYjl2NWhQUVFnQUlFcUFuMWNtS3RzcVBwNW53SlkxVVg4OHlHRTVtZFZSdmY4ODdMTG0wM2hBdmRITWVMOUJmc3lGdytQdnQ1bm55Zm5VaXQ3L3FIRWEybTFYNVVYNHc4azNWUFMrVDIvVjJYVFBTU3JqbWxocnVocHkxdlV2NHUvSjB1Yy85aUNpVklFc0NvUHJDNDk3YllLSXVmV0pjemFFc0JTSzcxZVg1S3IxdDR1eDdZNWhFYVA2TFhCRkFoQUFBTGpKb0FBTnU3OXdUb0lRQUFDVFFuMGRXRnVZbWVmQXRpbWtvN0x3cGJ1WDJEd1dEMkZxaTdqOWhCN2ZFdmVLRTMyY3FpK1ZlRnF1d2N2dXFIc2EydmV2dDVuODNSUzk1MUxETDh3OHhTN2QwTCtxN0lDRko1bWJIdFVGcGJveXFmM0RSNWlUZmUyVEp6eDJDa0NXTlYzb3N0dzZUSUJlc0dvTFFITTQ1VWx0SCtucENjdjVha3I4eGliUTJoMDB6Tklmd2hBQUFKclF3QUJiRzIybW9WQ0FBSnJTcUN2QzNNVHZIMEtZTGF6eXB2cURaS2VtNWprdThuNlkvcFdlYTY1NnRrT2tseWxieDJmc3Z3K1JTRlJVK1RVNS9zY2t4RGZRc05USmYwdUFtWlYvcjBQUzlwVjBpVVJZL1hScEsyd3hDcGJ5OFNaVkFHczZqdmhKUEdQRHRVK3EreEsrWG1WQU4yRkFGYTIxdThFajBKN2QvbXU4dzVKVDhwWjBGai93aU9GUFcwaEFBRUlRQ0NCQUFKWUFpeWFRZ0FDRUpnZ2dUNHZ6SFh4OUMyQWxZa2xYa09xWjB2ZGRhZjBjMzRkaDZUWnk2TG9xVk9kTDhXR3NiYXRTb3A5UUdhNGsrUFA0ZW56Zlk1SmlIK0ZwRWRFNXBVcXE5N252V2t6cVh3YmU5MkhBQmJ6WHFkNGdHMHN5Ym5KWEpteTZIRW9vRDM3WXZPM3hiQjBQcmdQQmJHcHJIMmJIbUJWN0JZZWhXWG5yZ3NXTWJ4b0F3RUlRQUFDQXhGQUFCc0lQTk5DQUFJUTZJbEFueGZtdWt2cVd3QXJ5eCt6V0VPS1owdmRkYWYycXdveHFsT2RMOVdHTWJZdnUrRCtQRlMrTzN1TWh0ZXdxZS8zT1NZaHZyME9YUlh5UnhYcnFSSXMzUDAwU1EvTFBEQXZyc0dtN1M1bEFwam5jbEdLWXhwTytrQkpINU4wdFpKeFVnUXdEMU1XdXJtWUppVi9XOVVTbmZQTFJSRnVWZFd3eFNUNGk2bkt2T2NXWVpCL1Y1SWI4Sm1TRG9td215WVFnQUFFSURBVEFnaGdNOWxJbGdFQkNFQ2dnRURmRitZNkc5RzNBR1libmNENlRSWEcrZ0o4VUVlaGtQY0pIaGhmU0FDMlJhak9kL3VTUHQ5aDVyS3RBQUFnQUVsRVFWVE1FbEg3VXUwUW9MWWY1MCt6dDgreGtuN2Q5dUFOeGl2TEJUUzMzR2hEdk04eENmRmp2UTlqQkorM1N0b3JNcXd5OWRqY1dwTC9jYmhsMVZNVnN0azBkMVNzY0pRcWdGVjUybm5kRm9aM3pEekZ6cXlDVVBGemh6NzZPL3JFeUhIYTlBRHpsR1YvbWVGOFo4N1RkbUJCK0NQSjd5TTNqV1lRZ0FBRTVrUUFBV3hPdThsYUlBQUJDRnlWd0JBWDV0UjlHRUlBaXhHVEhONjFweVF6ZE82Y05wNXJoeHhrRm0zcVhBWmpoRHQ3MFRpWGtpdnJ0Zkg0ZHdWZkpOOGk2WHNkaEU4MXNmR2FRY3l3b0xqNmVNOGNDbVlQbTdrOFE3elBabXhQSjR0WFJVK3M5MkZNY24zUDRiQlY1K3FMeVMwV3M3ZWUxOTQrRnVyK0tZZ2lWZjN1SmVua3JJODkxL0tlMkRYbjliVnc0MURGb21JY3kzMVNCVEMvci8rU0ZjVFl2MktCcnJqcFVNaHpxMEFVL054TVhWWFMzOGpZcDg0M3IycHNoemUvTktlUkN4WFkrK3RsQmRVZm13cVlWWGJ4Y3doQUFBSVFHQ0VCQkxBUmJnb21RUUFDRUdpUndCQVg1bFR6aHhEQWJPTWlOS2JxejhMRHNrcHNlemYwZXZKbDBUbHBYaS9KSXBpZk9wZEJYNXhQQ0dGOVpaeS9HNnBDT3NkTmsrYzJrbDRkYlBVNFk4dVpVNWJQN1hQQnkyVU00WFJOOW1DNTcxRHY4L2FTUGlucDZpVUxjUmljYzBGVjVaYUtTYTd2YVk0UDRYeE5oTndOZ3NqejJpeUgzaTJDN2Z0RUNtQmJaYUxmNlpMc3FWWDAxUEc0dkpta0QyYkM3WjBqRDBXcUFPWmhiNW1GcFo0cTZVWVZjN2g0eG1QRDNxYUkvRGVXNUJERFZRSFBZNVI5VCt0ODg2b3czU0dFem02VzAvQWpJVHpYMzkvbHgzWStLS3k3YW54K0RnRUlRQUFDTXlKUTlVdi9qSmJLVWlBQUFRaXNKWUdoTHN3cHNJY1N3RGFTWkMrQXAwUVkrd3RKejVQa2tMclk4RC8vR2V1OE9QOFlLdVd0WHNMcVhnYnZLdWtrU1hrWHZ0V2xXRVI0Y2ZEeWlMM2dPdFRSbmxNdmxIU1hsUUhISklCVkpiK1BGVG9pdG44MFRZWjZuMk1TNGh0U1RHNHBqK1d6NWRDMHFzY2VZUGJhOG50NlVWWGpwWjg3ZDluanMxQy81MlI5YjdEU0wvWmNWSjJ2eGJDeElwTGZLM3VoMlR2TDM1N0ZZMC9URXlVOXRHQjlkUVF3RHhYakxicVkwb0tjUTc2L1hjRzRhQTN1Wmc3L0Z2YXJhSmk2Mzd3eXMySnl5NjMybjZNNG52QjYwQlFDRUlEQStoSkFBRnZmdldmbEVJREFlaEFZNnNLY1FuY29BY3cyeHViaFdWN1A1NE1IaDBPSHZoS3ExL25uOW83NUswbTNsWFNQSUNJdFgzUlhtZFM5REtZSUNJczVuZlBudUpDczJsNHI5aEJiUEJZTExOVFpabnQwMk91cjZCbVRBTFpPeWU4WCt6SGsreHlURUQrMmdtcEtDT0JpN2Y4ZHdnYlBrdVRFK3d0UE0zdDUzUzU0UFRrVTFwNDlaZUp3ckFEbWVhc3F4aTYvSitkSmVrYzIvMmN5YjAvYjZzZmhvMzZ2L0s3L2JVR3llK2M4czZEdEtvcDVUMTBCek44ZWh5MC9LZUZqN055Qi9rNThOZ3VoZEFqaDR2bkw4RDByODFxeitPbThXaGJkaTU2NjM3eXFKWGhjMngzN2tQdytsaFR0SUFBQkNNeU1BQUxZekRhVTVVQUFBaEJZSVREa2hUbDJNNFlVd0d5akJTc254ZDRtMXVDVzJqVzVEUHB5dTE5QjdwdVd6TXNkWmt3QzJEb2x2MTlzeHREdmMweEMvTmdLcWx0bXd0VlJFZUc4YlovbkZBRXMxdk90cm8xZkQ3blYvcVpFT0tvcmdOa21DL3dPQXl3cm5GSFg5dVYraThJRnJzbzRoQUIyUTBtblpCNjYyMFlzaHVUM0VaQm9BZ0VJUUdDdUJCREE1cnF6ckFzQ0VJREFId2tNZldHTzJZZWhCYkNoUkxBbUFwaHRIa0lFRzRzQVZsYjliWTdKNzhjaWdNVWt4SGRJbjZ1Rmxna2hpL1VNSVlLbENHQzJzNDYzV3N4M2J6a0ovY002RXNENkVNSGVFOEl0SFJwZXRnN2IwdlNiVjhhMUtCbithcCs1VllhTk9XdTBnUUFFSUFDQlFBQUJqS01BQVFoQVlONEVFTURpOTllWDhUY3ZKWHlQNzVuVzBubU5YS0hORmRRdVNldDZsZGIrYzl6Si9OK2VKYXZmcE9GWVZkMGRldVp3cXE5Vk5lemg1L1kwK1doQnd1MDU1L2Nady9zY2t4RGZJWXIzeS9MZi9TamlMRGl2bEFzdE9GZGUxODhod1hQU09mMVNIaWQ5UHpZaGNYM1YyS3NWR0xzVXdHeUx2MjBXcW1LcVRsYlp2dnh6Ri9Xd0orcmlPemFrQUZhV0RIOWg4NXpGOFpSOW95MEVJQUNCdFNXQUFMYTJXOC9DSVFDQk5TRXdoZ3R6RmVveGVJQXRiSFErb1YwbHZTRW5lWGJWT3FwK2JzK1l3ME9TYU9kS2F2UHhCZjExV1c2a3g3UTVhQmpMWVZyMm1uR1k2T1Vkako4NlpGWFM2em5uOXhuRCt4d2JGdWprOVMvSnduUmppaTk0elB1R1pQY3hZV3lwWjhiaWxZdEJMSEp6cGZaM2UxZHZ0V2o5aERxZGwvbzQ0YndUMVA5MDZiOTFMWUI1S251TXVpakFLMWFTOE5kWmpnWEVQVUo0NWZMK0RpbUFiUnh5eExtQVI5RXpaM0c4emo3U0J3SVFnTURhRVVBQVc3c3RaOEVRZ01DYUVSakRoYmtLK1pnRXNJV3R2aXcrS3ZzL0Rxc3BTd3BmdFRiLzNFbnpMYWo1RWg1YlFUSm0zTHcyVGd5L2IxYk43WWtOTDdsT212OEJTVzlNckNCWjErNlVmbVdlSG5QUDd6T1c5L2xtV2U2dVQxWGt6WFB1S251QldYU0lmU3hBTzVHOVJacnRZanNWdExQWTVkeFV6a21XVWtHeWJGci8zdXdxcks1Mm1HcWZQU2hma0hsaG5aWWpDdlloZ0MzV2RUMUplNGVLbEt1VmFhdVEvMWpTeXlTOXJjQjdkVWdCekxidmxuMnYzMSt5aU5UdzF5b2UvQndDRUlBQUJDWkdBQUZzWWh1R3VSQ0FBQVFnMERzQjV3QzZkeVprN1J3dTUxdGtndFoxYzZ6NG1TVC9ZOEhyQ3lFcHM2dEVYdHE3eFpLRmhGdUhuRHl1aW1ldm1odmxWS0d6VjVxOTBiNlhWWGs3TTF6T1R3Ly9MY1p6WjRDbC9VR1VmR25CeEllR2kvMVliUitDMTFUbnRFZlB2VUwxUVF0cC82dkFLOU9pc3IycHZwamxIdnR5OW82ZUhON0JSWlhJcnRidnhPditKdXdlcWxENi9WcCtMQmI1L2JmSGw4TjFseXV2ZG1WVHlyZ1crZThZOHJVOU5LdGdlZE9jNzlwaURSK1g5QitaMTVjcnlJNzUzU29yakdGUjMrRzdaNmRBb2kwRUlBQUJDTXlMQUFMWXZQYVQxVUFBQWhDQUFBVG1US0NzMnR0dk05RnhCMG1mblRNQTFnWUJDT1FTS0N1TTRRNGt2K2ZnUUFBQ0VJQ0FFTUE0QkJDQUFBUWdBQUVJVElWQVdZalRTY0dicFdsaGdhbXd3RTRJUU9EUEJNb0tZNUQ4bnBNQ0FRaEFBQUovSUlBQXhrR0FBQVFnQUFFSVFHQUtCSnl2eUhuVWRpd3cxcUZvOXZMZ2dRQUUxb3RBVldFTVY2NTFicm1mckJjV1Znc0JDRUFBQXFzRUVNQTRFeENBQUFRZ0FBRUlUSUhBM1VOZXRhdm5HT3RLbFE1Ly9PRVVGb0tORUlCQXF3VEtDbU40b2dPeS8zSHVRQjRJUUFBQ0VGaHpBZ2hnYTM0QVdENEVJQUFCQ0VCZ0FnVDgrOHJCa3ZZcXNKVUw3Z1EyRVJNaDBCR0Jzc0lZSkwvdkNEckRRZ0FDRUpnaUFRU3dLZTRhTmtNQUFoQ0FBQVRXaThETlE0WEtyWEtXelFWM3ZjNENxNFhBTW9HeXdoaHVSL0o3emdzRUlBQUJDUHlKQUFJWWh3RUNFSUFBQkNBQWdiRVQyRVBTZXdxTTVJSTc5dDNEUGdoMFI2Q3NNQWJKNzd2anpzZ1FnQUFFSmtrQUFXeVMyNGJSRUlBQUJDQUFnYlVoVUpiOG5ndnUyaHdERmdxQnF4QzRqaVJYZjcxYkFadlBoYUlaRjhNT0FoQ0FBQVFnWUFJSVlKd0RDRUFBQWhDQUFBVEdUS0FzK1QzVjNjYThjOWdHZ1c0SlBFN1NFU1ZUL0lPa3c3czFnZEVoQUFFSVFHQktCQkRBcHJSYjJBb0JDRUFBQWhDQUFBUWdBQUVJYkMzcEU1SnVWWURpTEVrUGtYUVJxQ0FBQVFoQUFBSUxBZ2hnbkFVSVFBQUNFSUFBQkNBQUFRaEFZQ29FSFBwNGRGWVk0LzRGQmpzMGVuZEpINWpLZ3JBVEFoQ0FBQVQ2SVlBQTFnOW5ab0VBQkNBQUFRaEFBQUlRZ0FBRW1oRzRtYVFQU3JwenlUQWZsclNycEV1YVRVVnZDRUFBQWhDWUd3RUVzTG50S091QkFBUWdBQUVJUUFBQ0VJREFOQWtjSW1sRFNjZEorcXFreThNeWJpL3BDWkllWDdHc24wamFRZEk1MDF3K1ZrTUFBaENBUUpjRUVNQzZwTXZZRUlBQUJDQUFBUWhBQUFJUWdFQXNnWGNGb1N1Mi9YSzdLNExubDhNamVTQUFBUWhBQUFKWElZQUF4cUdBQUFRZ0FBRUlRQUFDRUlBQUJNWkFvSWtBOWlKSkIwbHlEakFlQ0VBQUFoQ0FBQUlZWndBQ0VJQUFCQ0FBQVFoQUFBSVFHQ1dCdWdMWUFaSmVJZWwzbzF3VlJrRUFBaENBd0NnSTRBRTJpbTNBQ0FoQUFBSVFnQUFFSUFBQkNLdzlnVlFCeklMWGN5UzlDYyt2dFQ4N0FJQUFCQ0JRU1FBQnJCSVJEU0FBQVFoQUFBSVFnQUFFSUFDQkhnaWtDR0JuU1hwU2x2ZnJhejNZeFJRUWdBQUVJREFEQWdoZ005aEVsZ0FCQ0VBQUFoQ0FBQVFnQUlFWkVIaURwR2VWck1PSjdqOG02VjhrblluWDF3eDJuQ1ZBQUFJUTZKRUFBbGlQc0prS0FoQ0FBQVFnQUFFSVFBQUNFQ2dsc0lHazYwbTZtYVNiaHBZWFpONWUveVBwSWttWHd3OENFSUFBQkNCUWh3QUNXQjFxOUlFQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ1lEQUVFc01sc0ZZWkNBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJMUNHQUFGYUhHbjBnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUprTUFBV3d5VzRXaEVJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBblVJSUlEVm9VWWZDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ2NrUVFBQ2J6RlpoS0FRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdFQWRBZ2hnZGFqUkJ3SVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRR0F5QkJEQUpyTlZHQW9CQ0VBQUFqTWs0RCtIYnlIcDI1SXVuK0g2V0JJRUlBQUJDRUFBQWhDQUFBUkdRUUFCYkJUYmdCRVFnQUFFSUxDbUJPNHE2U1JKcDByYVM5TDMxcFJEMDJWdktPbkoyVDhYU1BxMHBGODFIWEFOKzE5RDBnNlNObDFaKzYrei8zNktwRXZXa0VrWFM3Nm1wQTlMdWsvTzRQdElPckNMU1JrVEFoQ0FBQVFnQUFFSkFZeFRBQUVJUUFBQ0VCaUd3QmFTL2xQUzdjUDB2NU8wdjZTRFp5STJiQ0RwYXBLOHJxNmZiU1NkTG1uTE1ORjNKSDFBMHJzbGZhTW5HN3BlWTlmajMwalNHWkp1dWpLUlJjWHRKRjNZdFFGck1qNEMySnBzTk11RUFBUWdBSUh4RVVBQUc5K2VZQkVFSUFBQkNNeWZ3RWFTRHBYMGxKeWxuaWZwcVptSHlNbVNmajlSRlBZbWVuM3djbm13SkF0U1hUNjdTWHAvd1FSUGwvVG1MaWVmeWRoekZNRDhlNjdmdGQrT2FJOFF3RWEwR1pnQ0FRaEFBQUxyUlFBQmJMMzJtOVZDQUFJUWdNQTRDRHhmMG10S1RQbStwTzFEYnJCeFdCeHZ4ZVpCakhwUTZIS09wSWQyS0lJNS9QRUlTUmJCVnA4ZlNMcW5wUFBqelYvYmxuTVR3Q3g4L2F1a1IwdjYyK3lmTDQxa1p4SEFScklSbUFFQkNFQUFBdXRIQUFGcy9mYWNGVU1BQWhDQXdMQUVGbm0vTmlzdzR3cEp1MG82ZWxnemE4MStTMG4vc1JUV3VSams4NUllMFZHT3M1dExPazNTVmprV202R0ZzY3RxcldhOU9zMUpBTHVPcExjRjhjdTcrRjFKdTR4RUJFTUFXNi8zaXRWQ0FBSVFnTUNJQ0NDQWpXZ3pNQVVDRUlBQUJHWlBZT3ZNSStrVGttNVZzdElYWlluSUQ1cGcrT05mU3pwZTBrMEsxdWFRVG52ai9MVGxYUzRMZjl4ZDBwRXR6emZYNGVZaWdOMVkwckZab3ZrN3IyeVV2UUIzbG5UdXdCdUlBRGJ3QmpBOUJDQUFBUWlzTHdFRXNQWGRlMVlPQVFoQUFBTDlFckJYaWoyUzdsOHk3VnRETmNnK0VzZTN2Zm9pNFdGNW5rOUplcFNraTF1YTNPR1BGcmc4NXVvejVURFNsdkFrRFRNSEFleDJrazdNU2VTL0FERUdFUXdCTE9sWTBoZ0NFSUFBQkNEUUhnRUVzUFpZTWhJRUlBQUJDRUNnaUlDRkdsZDNkRUwyb3FkdGNXaUkzWWp4Y0d0em5iZVY5R2xKemp1Mityakl3RE1uNkVrM3hMNTV6amtJWUdYRkpSWmN2eWxwSjBuZnFnRDl1cVVReWpiM3hKVlJ6ZHIvWG4xKzNZR0g1UEljVDViMHlUWVh3MWdRZ0FBRUlBQ0JLUkZBQUp2U2JtRXJCQ0FBQVFoTWxZQTlsSTRxdVBSNlRiNlVQN0REUlBGOWNuTWVzSTlXaEhsK0tNc0g5dmN0ZUlJOUl3aUxxK3R6OVV5TEhCL3JjK0VUbjJzT0FwaTNJRllFcTNyZjNwVVZUM2pDeFBkMDFYem5RVHRoWm10aU9SQ0FBQVFnQUlGb0FnaGcwYWhvQ0FFSVFBQUNFS2hGb0NycC9jOGw3WmdKTm1mV0duMmNuYXJXYkt2ZkhqeTBMcW01aExKUXNzOEZwbTJGV3RZMGNWTGQ1aUtBR1hwTXVIR1Y2SXdBTnFuamk3RVFnQUFFSUFDQmFnSUlZTldNYUFFQkNFQUFBaENvUzZES0c4cmkxMk5tR3BZVUk0STF5WGwyZDBtblNMcDZ6dWJzSStuQXVwdTJwdjNtSklCNUN4MFdhMC9EKzVic1oxbDFVZ1N3TlgwUldEWUVJQUFCQ015WEFBTFlmUGVXbFVFQUFoQ0F3TEFFcXZKaFhTRnAxNUFZdjIxTHI1OTVWMTAwZ3Z4WFZhR2ZYdmZoV2Q2alowbEtTZnp2MzErY1UyMnZISEFXRmJmUDhqZWQzVGJVbVk4M053SE0yMVgxRHJwTlVVNDZCTENaSDNpV0J3RUlRQUFDNjBjQUFXejk5cHdWUXdBQ0VJQkE5d1JpUXJCZUpPbWdsa1VxLzduK1JFbHZrZlJpU1U3azdYeFlRejIyNTRVUjNsajdTbnExcE1zakRiMTVWazN6TkVsYjViVC9VcGp2c3NpeHVtN214T2IyVkVzTjlkd3pxMmg0dDY2Tld4cC8wNUQwZmRXajdyZkJrOHJyNk90eGVLSUZ6a3RibURER0U3SE53Z3hWSmxNRnNvb1FQNGNBQkNBQUFRaDBSQUFCckNPd0RBc0JDRUFBQW10TElDWUo5d0Zac3U1WEpIbzlWUUgxdlB0bGd0ZExseHErWUFRaVdBd1BtNXdpQ0JZbHY2OWlOTVRQTDhpUzhXOG42Y0xFeWVmb2dSU0w0TDhrN1N6cFY3RWRLdHJGZUNJMkNjZE5NUk1CTElVV2JTRUFBUWhBQUFJdEVrQUFheEVtUTBFQUFoQ0F3Tm9Uc05qenI1S2VYMEtpaTR1MlBjN2VGang0bHFkMm1PV3pKUjA2c0NkWWpBaG1XeDhXS2tpV0hTU3Y5YVNldmFPYUhHd0VzSFI2YlF0Z3NaNklld2V2ekhTTDQzc2dnTVd6b2lVRUlBQUJDRUNnVlFJSVlLM2laREFJUUFBQ0VGaGpBakdYYkNmbC9udEpiVlluM0RBTEJiU285cVFDOWhhV0hpdnBxSUZGTUF0WEo0VDhYSG1tdmphRWJWYmxBbnR3RU1tbThqc01BbGo2UjZGdEFjd1dsSW13ZmtlZUorbVFoRERjOUZYOXNRY0NXRjF5OUlNQUJDQUFBUWcwSkRDVlh4NGJMcFB1RUlBQUJDQUFnVTRKK005VFg2QmZVekpMbDNtR3FwSjlkNWx3UHdWc1hqNG0yK1o4Vnc3NXE4cFhackh2Q0VtN3BVdzZjRnNFc1BRTjZFSUFzeFY1dWZsK0U0cFJmQ1RkekZvOUVNQnFZYU1UQkNBQUFRaEFvRGtCQkxEbURCa0JBaENBQUFUV204QWk4ZnpiSlYydEFNWEpJVHp4cHgyaW1vb0l0cHlQeVJVYkh5UHBrNUZjN2g0U3lxOG1hby9zUGtnekJMQjA3RjBKWUxaaytUMzV1cVJIU2pxM3hFUVhCL0M3ZlkvMFplVDI4RGZDRlRmenZoVXVOTkQyTjhMdjJCNlN2dHFTL1F3REFRaEFBQUlRbUN3QkJMREpiaDJHUXdBQ0VJREFDQWo0ejlGZEpiMnZSUHc2UjlKREpYMm5CM3VyS3Q3MTdlMlN0K1JGcUtoRE5pMkdsWWtQeS8zdC9YVjQ4QlpiSGRlVkNoOGg2ZjhrTUg1ZzhEcGI3ZUpxalI3ckt3bGpsVFYxWmN1TGFvVFc1U1hCOS83ZE84dVY5b1dXYkZzZXhxTE1HWkp1dWpKMlhRRXZ4c1NpT2JzVXdHelhMbGxSZ3FlRnMvU0RDa1BMUExaaTFqaDBteTdQek5CclkzNElRQUFDRUlCQUVnRUVzQ1JjTklZQUJDQUFBUWo4aVVDTStQVk5TUlphK2hDL0ZvWlZpV0QyQ0xFZzk1a0I5M0tESUJoVzVmdGFOdkVPa2s2VHRGbU8zUjhNWGk0cDR6bmgvdkU1WTQxRk1FQUFhNjhLWkpPampnRFdoQjU5SVFBQkNFQUFBaU1pZ0FBMm9zM0FGQWhBQUFJUW1BeUJzWXBmQzRETFlZWjVVQzJDN1NqcHpJa1FOKytESmUyVlk2L3podTBrNldPSmEwRUF1ekt3ZGZJQVN6a3FDR0FwdEdnTEFRaEFBQUlRR0RFQkJMQVJidzZtUVFBQ0VJREFLQW5FNVB5eTU1ZEZtVzhOdEFMYmFMSG9EU1dobWQ4Tm9XQmZHc2pHbEduTHZML3Foc3NoZ0NHQXhaeEJCTEFZU3JTQkFBUWdBQUVJVElBQUF0Z0VOZ2tUSVFBQkNFQmdOQVJpaEtYekplMmNrTnVxcThVdGNtMGRXRExCRUNHYXFlc3R5LzNsc1hhWGRHVHFvRmtlTFFRd0JMQ1lZK1AzYUhOSmJSVmVjRko5VnpMZExtZnlsMHM2TE1hb2hEYXVzdXJFK2luaHdRbkQweFFDRUlBQUJDQXdIUUlJWU5QWkt5eUZBQVFnQUlGaENUaHYxZDdaUmZpVkpXYU1SZnhhbUxpUnBFTWxQYVhFNWo2VDlOZlp3YkxLajU4TG9ad1gxeGdZQVF3QnJNYXhhZHlsektOc0gwbGxnblhqeVJrQUFoQ0FBQVFnc000RUVNRFdlZmRaT3dRZ0FBRUl4Qkt3a1BTdmtwNC9JZkZyWWVwMUpCMmRKWkMvZjRudG53b1ZHZXNJU2JFTTY3UXo5L2RLZWt4QjU3cmVYeDRPQVF3QnJNNlpiTm9IQWF3cFFmcERBQUlRZ0FBRWFoSkFBS3NKam00UWdBQUVJTEEyQkN3Z3ZVM1NveWNvZmkxTXZyR2tZeVhkZVdJaTJDN0I3cXZsMk4zRSt3c0I3S3BBU1lMZnp5Y05BYXdmenN3Q0FRaEFBQUlRdUFvQkJEQU9CUVFnQUFFSVFLQ1l3SzBsZlVEU1g1ZEFHanJoZmV6K2JTM3BFNWxIMWExS09ydzFKTThmUTc2ZzYwazZVZEpkQ3V4dDR2MkZBSVlBRnZ2ZXROME9BYXh0b293SEFRaEFBQUlRaUNTQUFCWUppbVlRZ0FBRUlMQldCSzRoNlptU25KVGFZWGhGVDFmaWx5L0oxMXFaMUlMUXRpdi9iWXNjY1c0YlNSYnVGbys5cCt6ZGsrZEZsYmV1V0JGc00wbk9XZVFFNFhVZjh6czRHK2ZTbkFGZUpPbFZCUVBYcmZ5NFBCd2hrRmVHTzBVUHNJZElla1ROdytmRThENWZQMS9xNzdPOGZjVTdYM082UDNYYldOTCtrbTZUTTlEN2dzZGowem5LK3Y5RTBxY3pHeTdyY2hMR2hnQUVJQUFCQ0l5UkFBTFlHSGNGbXlBQUFRaEFZQ2dDRnJzZUZSSlIzN1RDaVA4bmFWOUpGNnkwc3dCMXk1eStxOEtVbTZTS1UzMXhzZmgwa0tUZmwweFlKSmlrMkZna1pEbGs4K1FDanJiSjRhakhwRXlVMHhZQmJQb0NXSmxJV25VOC9ONjZFdU9GU3czdkpPbFVTWnRVZFo3d3o5c1FqeWU4ZkV5SEFBUWdBSUYxSm9BQXRzNjd6OW9oQUFFSVFHQ1p3SU9EcUdMdnIzVi9ycEMwcDZSM2xZaGdYUXBnNXIrbHBNTnlQSHcrTEdsWFNaYzAzQ1FFTUFRd0JMQ0dMeEhkSVFBQkNFQUFBbE1pZ0FBMnBkM0NWZ2hBQUFJUTZKTEF6Yk5LaWFkSjJxckxTU1kwdGtVd0MwMnVJSm4zZEMyQWVjNE5KRDB4RThNT0QyRnB2ODNDdHg0UTlxa3BTZ1F3QkRBRXNLWnZFZjBoQUFFSVFBQUNFeUtBQURhaHpjSlVDRUFBQWhEb2xJRC9USFErcXIwNm5XVmFnenMvMG82U3pzd3h1dzhCYkRHdEUrRmJpUHRJeU0zV1J2NGlCREFFTUFTd2FYMlBzQllDRUlBQUJDRFFpQUFDV0NOOGRJWUFCQ0FBZ1prUmNCamtSeVhONGM5SFYzTDh3Y3IrZkZIU2o1YittejJzZGdyaGhrVmIrVjFKdTBqNjBrcURQZ1V3VDcxSXR1L2s1VzA4VXhUQTJsajNGTWFJelZQVmRnNndtMGw2YnBZRGNNNWgwR1dGSjZad05yQVJBaENBQUFRZ1VKdkFISDdCcjcxNE9rSUFBaENBQUFSV0NGeEgwa21TN3RZem1SK3ZWRUw4aHFUemwyeXdKOWJYUXRYRnZPcHhCMlRoZ2krVGRIa051KzhhMXV5cWprV1BMODBQbFBTZHBRWVd6MXlaMHYrdWV2NHhWTDViYlJjcmRGU05YK2ZuQ0dCMXFQWFRwODF6TVVSMXkzNG9NUXNFSUFBQkNFQUFBa2tFRU1DU2NORVlBaENBQUFUV2dNQXpRaWhrMlZKWHZhdityNlN2TEhXd1lHVnZLNHNzajgwWjZOMGh0MVVLem10S2NnTDQrK1IwMmlkVXJrd1piN210SzE4ZUZhcFNGbzN4cVZBaDgrSWFreFI1NnJRcGRLU2FoUUNXU3F5LzltMmVDd1N3L3ZhTm1TQUFBUWhBQUFLakpvQUFOdXJ0d1RnSVFBQUNFQmlBd0RhWnQ5UHBRUXc2UlpJdjQ1OFAzazhPdjdQNEZmc1VDVDlqRThEOCs4QUxLMFMwcjRkUVNIdURwVDRJWUtuRS9saUI4d25wM1diUkF3RnNGdHZJSWlBQUFRaEFBQUxqSW9BQU5xNzl3Qm9JUUFBQ0VCaWVnUDlzM0VpU0t3NDJmYVlpZ0htZFh2T2hrcDZTcytpUFM5cGRVdDM4V3doZzZTY0pBVXo2VlRxMnEvVEFBNndGaUF3QkFRaEFBQUlRbUFNQkJMQTU3Q0pyZ0FBRUlBQ0JzUko0bTZROWM0eHp0Y2xuSlJyZFpRamt3aFRuUUhPMXhmc3YyZmI2ek90dFAwbVhKTnE3M0J3QkxCMWVuZ0RtNnBmN1N6b3ZmYmpLSHRlVjlHcEpxN25nSE02N3Q2U2ZWWTZRM3FCb3pqRjZnRDFBMGp2U2x6aElEKy9aSGxuSThsY0htWjFKSVFBQkNFQUFBaU1sZ0FBMjBvM0JMQWhBQUFJUW1BV0JJaStlT2ptNytoREFESDFyU1orUWRBdEp6NU4wU00zaytrMEVzRDZxOFhrT0ovWmZmWDR2NlRoSkxrelF4WE5zVm1UaHhJaUI4ODdPYnlUZE84c3Q5NFdJL3FsTmh2Q1VLcHB6akFKWVVjNjRWTTU5dE8veW5QUmhQM05BQUFJUWdBQUVPaUdBQU5ZSlZnYUZBQVFnQUFFSWFPUGdUYlZURG9zeEMyQTIxOEtRZjBkdzZHTWJUNm9IMkowa25acDVKRzNTeHVRakd5TjI3eEhBeGhVQ2lRQTJzaGNKY3lBQUFRaEFBQUtwQkJEQVVvblJIZ0lRZ0FBRUlCQkhvTXhqeTFVWGo0a2I1ayt0K3ZJQVN6UXJxamtDMko4eElZRDltUVVlWUZHdlQzSWpQTUNTa2RFQkFoQ0FBQVRXZ1FBQzJEcnNNbXVFQUFRZ0FJRWhDTnhRMG1ja3Vhcms2ck9McEJNU2pVSUFTd1EyMHVZSVlBaGdYUjlOQkxDdUNUTStCQ0FBQVFoTWtnQUMyQ1MzRGFNaEFBRUlRR0FDQkN4OG5TNXB5eFZiblV6K1BwTE9TbHdEQWxnaXNKRTJSd0NibHdCMlJsYVU0UEdTZmozQWVkczB5OVYzaEtUdFZ1WkdBQnRnTTVnU0FoQ0FBQVRHVHdBQmJQeDdoSVVRZ0FBRUlEQk5BbmVSNUdUZTExZ3gvNWVTdHBmMDVjUmxJWUFsQWh0cGN3U3dlUWxnYlNic1R6MnlSZDhFQkxCVWtyU0hBQVFnQUlHMUlJQUF0aGJiekNJaEFBRUlRR0FBQW84TVNmQlhwNzRnZUd4Y21HalRPZ2xnaVdocU5TOUthajRXOFlBaytOTklnbzhBVnV2MW94TUVJQUFCQ0VDZ2Z3SUlZUDB6WjBZSVFBQUNFRmdQQXZ0S2VrWE9VdXRlbUJIQTJqMDNDR0JYNWxtVWtMNnVZQnV6VzNOSWdsLzNmWTdoVTlVR0Q3QXFRdndjQWhDQUFBUWdzRVFBQVl6akFBRUlRQUFDRUdpZndJYVNqcFRrYW8rcnovc2tQVTdTN3hPblJRQkxCRmJSSEFFTUFjeTVzMkk5TVl2T0N3Sll1KzhsbzBFQUFoQ0FBQVE2STRBQTFobGFCb1lBQkNBQWdUVW1jUDJRLyt0Mk9RejJrL1RLR213UXdHcEFLK21DQUlZQTFvWUE5dCtTWGk3cDBuYVBaOVJvRzB2YVg5SnRWbHFQSll3M2FoRTBnZ0FFSUFBQkNQUkZBQUdzTDlMTUF3RUlRQUFDNjBUZ1RwSk9sYlJKenFMdEZYWk1EUmdJWURXZ0lZQkZReU1Fc2h4VmtXQWFEYmpIaGdoZ1BjSm1LZ2hBQUFJUW1BNEJCTERwN0JXV1FnQUNFSURBZEFnOFRkTGhPZVplSXVrK2tzNnFzUlFFc0JyUUVNQ2lvU0dBSVlCRkh4WWFRZ0FDRUlBQUJLWklBQUZzaXJ1R3pSQ0FBQVFnTUdZQ1pmbS92aFlFc0ovVVdBQUNXQTFvQ0dEUjBCREFFTUNpRHdzTklRQUJDRUFBQWxNa2dBQTJ4VjNEWmdoQUFBSVFHRE9CbTBzNlRkSldPVVllTFdtM0xHL1BaVFVXZ0FCV0E5ck1CRENmRytkOE9xOWRGSDhZN2JwWnlPNnJKVzIyTXZiUEplMHQ2V2M5enRsbVl2bTJoRDFDSURzNEFBd0pBUWhBQUFJUTZKTUFBbGlmdEprTEFoQ0FBQVRXZ1lBRnJ2Y1hMUFRwa3Q1Y0V3SUNXRTF3QmQybW1BUy9YUUxqSFcxS0FwaTlPVDhzNlhjRDROeEkwczZTWEhSaitTRUgyQUNid1pRUWdBQUVJREIrQWdoZzQ5OGpMSVFBQkNBQWdla1FLQXQvYkhvcDdWTUEyOTU0NCtzQUFBM05TVVJCVkVEU0ZaSiszeEw2RjBsNlZjNVliUW9kcWFZaWdLVVM2Njk5bStlaWF3K3dObTFOSlZ6MFRXajZyVW0xZy9ZUWdBQUVJQUNCU1JCQUFKdkVObUVrQkNBQUFRaE1oTURkSlowaTZlbzU5bjVPMG82U0xxNjVsajRGTUZleFBFN1NoeVFkSnVtYkRjV3d0Z1N3elNVOU9IallOUlhuRU1CcUhzUWV1clVwS2lHQTliQmhUQUVCQ0VBQUFoQ1lBZ0VFc0Nuc0VqWkNBQUlRZ01BVUNQalAxSU1sN1ZWZzdBSFpmLy9uQmd2cFd3QTdOY3NKdFVtdzk4ZVMvbDNTT3lWOVE5TGxpZXRvUXdDN3JhUmpKUDFLMG9OYXlFbUZBSmE0aVQwMlJ3Q0xnNDBIV0J3bldrRUFBaENBQUFUK1FBQUJqSU1BQVFoQUFBSVFhSWVBdmFhV1JhUGxVWjFJZkh0Slp6ZVlxazhCN0FHU1BsN3dlOEorbVlmYkt4UFgwVVFBOCs4cUZxdWNWODJDM0U4bDNVdlN1WWsyckRaSEFHc0lzTVB1Q0dCeGNCSEE0ampSQ2dJUWdBQUVJSUFBeGhtQUFBUWdBQUVJdEVUZ0dwS09DZ21wODRZOE1xdmM5L2lhMVI4WDQvVXBnSlZWdk50SDBvR0ozT29LWUU3eTdiNHZXNW52NFpLT1Q3UmhEZ0pZbDdtZDJnb1ZUTm1Xb2puSElvQTU1TmFDcTUraWQrS004RzcvT21YaExiWGRWTklSa3JaYkdhL0xjOUtTNlF3REFRaEFBQUlRNko4QUhtRDlNMmRHQ0VBQUFoQ1lINEcvQ3g1S2VYK3VPcG04ODFaOW91R3l4eUtBN1NMcGhNUzExQkhBTEQ2OFZkSWpjK2F5QjVvOTBabzhVL1FBNjFMWVFBRDc4Mm15b1AzQzdKemJxOVB2OXFVbEFsaVRNOWhWM3k3UFNWYzJNeTRFSUFBQkNFQ2djd0lJWUowalpnSUlRQUFDRUpnNWdadGw0WTJma3JSTndUby9MR25YekpQcGtvWWMraFRBbmlmcHRRWDI3aVRweE1TMXBBcGdkNUYwdEtTYkZNenpVVW1QQ3NKRW9pbC9hbzRBZG1WeUNHQi81T0gzK1gyU1hOQmkyUk90ekN1eTdobnNxaDhDV0Zka0dSY0NFSUFBQkNaTkFBRnMwdHVIOFJDQUFBUWdNRENCNndTaDV2NEZkdmdpZWo5SnJnRFo5T2xUQUNzU3JPcGVyR01Gc0Ewa1BVUFM2eVJkclFUWUR6S1B1bnRLT3I4QlZBUXdCRENIRGw0WU1QanMyZHZMWG9lTDRnK2ZsbVRCOTVkNGdEVjQwK2dLQVFoQUFBSVFHQWtCQkxDUmJBUm1RQUFDRUlEQTVBZzRQOVdoa3A1U1l2a2JKRDFYMHU5YldGMmZBdGdiSlQwengrYTZ3bE9NQUxhbHBEZExjb2hsMmVPUTBoZExlbjBXQnZtN0JsekhMb0JaQkh6MHl2cGNUR0dQelB2dHF3M1dYZFIxQ0Erd0xZS0F2UFdLVVorUnRHY1dodGhHWHEyWWRUbmM5bkJKajFteDQ0S1FYOHNpR1I1Z0hSdzZob1FBQkNBQUFRajBTUUFCckUvYXpBVUJDRUFBQW5NaFlQSExJdEhUU3hiMGRVa1BsUFM5bGhiZHB3RDJyc3k3NmdrNWR0dmo2aDZTZnBpNHBqSUJ6SUxYdlNXOU4vUDh1bmJGdUdacUw1MnZKTTZmMTN6c0FsZ0xTMHdhSWtZb1NocHdKSTNMMXVXemZMc1E4bmo5SEh1WEJkK2k4MkpCMWdLWi85MzNZeTlKcjIvVlc3S3VwMmJmOWpNZkJDQUFBUWhBb0ZjQ0NHQzk0bVl5Q0VBQUFoQ1lBUUZYWHJPM3lPTksxdUxMOENOYXFGUzRQRVZmQXRqR3dTdkhvVityVDkzcWZFVUMySmN5TDZleksxZ3ViRGhNMHQ0dGVRVjVUQVN3SysvdXVnbGc5cVk3dGNMamNGbElLam92ZGQrSk5qNkZSZDhFQkxBMjZESUdCQ0FBQVFqTWpnQUMyT3kybEFWQkFBSVFnRUNIQkJ5bTl4NUpSVG0vRmxPL1BQTUllVWxMb1krTE1mc1N3SzRseVVubTc1WEQwY25CTGZ5bGhuUVdoVlRHYkpVdjg3dUh5cE9wODVhTmp3QzJIZ0xZSGJQMzliU3NxSVBQZGVwalQ4T0hCaTlPQkxCVWVyU0hBQVFnQUFFSWpJd0FBdGpJTmdSeklBQUJDRUJnbEFUODUrVURTa0tsbG8xMlJVaFhLTHk0NVpYMEpZRGRXTklaV1RMd3JYTHNmMldXZDJ1L3hIVnRLT25Jd0NTeHF6NHI2YkdTL2llMVkwUjdCTEQxRU1BZUdUd2FJNDdFbFpxOFZOSkJTOVZiRWNCU0NkSWVBaENBQUFRZ01ESUNDR0FqMnhETWdRQUVJQUNCMFJGd1hxcFhoT3FFVmNhZEV6eEd2bFBWc01iUHl3U3dveVh0SnVteUd1T3Vkbmx3OEFETCt4M0JPYytjcUQ3bGNXNGxoNGs1MTFMSzR5VDNGdHN1U2VtVTBCWUI3TXF3NWhnQ2FmSDFpUEJ1eEI2Tjg0TEg0VmtySFJEQVlnblNEZ0lRZ0FBRUlEQlNBZ2hnSTkwWXpJSUFCQ0FBZ2NFSmJDQnAxNUR2cXlvNXU0Mzlaa2g2MzRYNDVmSExQS2wrSW1tSHJJcWRCYmdtejNXQ3QweFJpS2Z6Z3AyWU9FR1pvSlkzVkZjaGo2dHpJWUROWHdDN1U4anp0VW5rbVQwNFZCak5xejQ1UmdHc1NMUWtCMWpraHRNTUFoQ0FBQVRXaXdBQzJIcnRONnVGQUFRZ0FJRnFBaGErN2hlcVBHNWIzZndQTFN4K1dSejZWbVQ3dXMzS2NtazV6NUhEQmV0V25keEMwcHV5Q29zT0djdDdsaXZpeGRxZjZvSGpLbytlLzl6WUNScTBRd0NidHdCV0plWXVyOTRDc3QrZFQ1Ymt0eHVqQUhiM1RQZytSZExWVjk0REJMQUdId2E2UWdBQ0VJREFmQWtnZ00xM2Ixa1pCQ0FBQVFpa0ViRHdaVzhsSjdELzY0U3VudzhWSCtzS1R3bFRhUmRKeDVWMGNQWEpEMHM2U2RLUElnYTJRUFcvc3hERisyYjk3bHpSM29ueG5kdnMwb2h4RjAxczc3R1NyaGJSNTUwaHpEVFAreWFpZTNJVEJMQjVDMkRQRENKMjFjSDRvQ1NIOXY2MG91SFlCTEROSlgwb3ZMdXJwdGNScTZzNDhYTUlRQUFDRUlEQTVBa2dnRTErQzFrQUJDQUFBUWcwSkhBOVNYdEtlb0drR3lTTzFiZG9jOFBnOFJIcm1aYTRuTUxtcnI3NGFFbkhKQXg0eTVCTDdGWVZmU3phUFUvU0laSXVUeGkvYVZNRXNIa0xZUFlBTzBIUzlnVUg1WGRCK0hwWDVMbnJTZ0N6U1B6a0pjSDZ3a3hvL3VxS3piL0l3ckcvRnV5OFRhalErcXlTNzVWRitRZEorbG5UbDRUK0VJQUFCQ0FBZ1RrUlFBQ2IwMjZ5RmdoQUFBSVFTQ0hndkY1dnljTHQvaTZsVTJqcnk3TUZzME1qTDg4MXBpanM4bnhKcjJsendJaXhMUFE5TlV0SzczWEhQdmFpTzE3U1RVbzYvRHpMVy9hWUVIb1dPMjViN1JEQTVpMkFlWFYzRGQ2UW02MGNtaStGOS80YkNZZXBLd0hzTHFGSXhEVVNiS2xxNmx4bUZzaDRJQUFCQ0VBQUFoQllJb0FBeG5HQUFBUWdBSUYxSnVDUXZxTWlRL1FXbkZ3ZDduRlp6cUNVeTNPYmpPM1pjbVFJMTJ4ejNLS3hUZzdlWDFVaFlubjl5MFN3NzBwL0NPbTBHREhFZ3dBMmZ3SE12K2UrVU5LQlMwczlUTkxlMlg5UERiWHRTZ0N6VitkbkpHM1Qwa3RBL3ErV1FESU1CQ0FBQVFqTWp3QUMyUHoybEJWQkFBSVFnRUE4Z1kyQ0Y5ZFRJcm80RE1tNWdpeVk5Um1xbDJmYXBpRms4RWtSZGpkcFVsWVZMM2JjUEJIc2ZFazc5NVRzdnNoT0JMRDVDMkJlb1Qyci9NNjZzSVZEblQ5UWt1aSs3RXgzSllCdEhDcXZ1b2hHRzgrTEpCMVVjNDF0ek04WUVJQUFCQ0FBZ2RFU1FBQWI3ZFpnR0FRZ0FBRUk5RVJnYTBtZmtGU1VxOHBoZjA2TS8yOVpyaXFMWUdONS9HZjRiWU9IeXg2U0xPYTE4WndqNmQ4bE9lenhvallHREVVRkZ1R1FEbnZjTWF1YWVXWkxZOWNkQmdIc3l1UnVsSGtWbmlIcHBpdEFMNUMwblNUbnBwcnFjMzFKRnBxYUZLcm9TZ0F6MDFkSTJyY2gzQ0hEc2h1YVRuY0lRQUFDRUlCQVB3UVF3UHJoekN3UWdBQUVJREJ1QW5taGtKZEllbVdvSkRjbTRhdUk1RFVsWGFzQjV0K0dTbmhPZU4vRlkwOHdlK0s4T0hpOGRERkh5cGdJWU9zamdLV2NpNksyWFFwZ0ZyRGZVOU5JVjN0MVgrY0ZuTEpJV1hQNWRJTUFCQ0FBQVFqRUUwQUFpMmRGU3doQUFBSVFtQzhCZTA4NUliNURDcDNqNjJXWjE4dkhFcE8rejVkT2V5dTdlbURhbGNpV1lpa0NHQUpZeW5sNVFPWWQ5NDZjRHM3ZjVkREsxSnhpeTBQWk8rMjZLY2FFTUd4N2FBNGRqcDFvTnMwaEFBRUlRQUFDd3hGQUFCdU9QVE5EQUFJUWdNQzRDTGdxcElXd3RzTCt4clU2cklGQU9RRlhTdHduODNqY2ZLV1ppeCs4U3BKRFYza2dBQUVJUUFBQ0VJREFaQWtnZ0UxMjZ6QWNBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBSUlZQUFsZ01KZHBBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVRKWUFBdGhrdHc3RElRQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCR0lJSUlERlVLSU5CQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBd0dRSklJQk5kdXN3SEFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFDQ0dBQUpZRENYYVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRXlXQUFMWVpMY093eUVBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFSaUNDQ0F4VkNpRFFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdNQmtDU0NBVFhick1Cd0NFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFnaGdBQ1dBd2wya0FBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoTWxnQUMyR1MzRHNNaEFBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVZZ2dnZ01WUW9nMEVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSURBWkFrZ2dFMTI2ekFjQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUlJWUFBbGdNSmRwQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlUSllBQXRoa3R3N0RJUUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkdJSUlJREZVS0lOQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQXdHUUpJSUJOZHVzd0hBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQ0NHQUFKWURDWGFRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0V5V0FBTFlaTGNPd3lFQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUmlDQ0NBeFZDaURRUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnTUJrQ1NDQVRYYnJNQndDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBZ2hnQUNXQXdsMmtBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaE1sZ0FDMkdTM0RzTWhBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFWWdnZ2dNVlFvZzBFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlEQVpBa2dnRTEyNnpBY0FoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFJSWJBL3dmRkRpUEZIdzUwOVFBQUFBQkpSVTVFcmtKZ2dnPT0iLz48L3N3aXRjaD48L2c+PC9nPjwvZz48ZyBkYXRhLWNlbGwtaWQ9ImFjdGl2ZSI+PGc+PHJlY3QgeD0iNTg3IiB5PSIxNDgiIHdpZHRoPSIzMzAiIGhlaWdodD0iMTA1IiBmaWxsPSIjZWFmMmY4IiBzdHJva2U9IiMzMzU1NmYiIHN0cm9rZS13aWR0aD0iMiIgcG9pbnRlci1ldmVudHM9ImFsbCIgc3R5bGU9ImZpbGw6IGxpZ2h0LWRhcmsocmdiKDIzNCwgMjQyLCAyNDgpLCByZ2IoMjQsIDMxLCAzNikpOyBzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDUxLCA4NSwgMTExKSwgcmdiKDE0NCwgMTczLCAxOTUpKTsiLz48L2c+PGc+PGc+PHN3aXRjaD48Zm9yZWlnbk9iamVjdCBzdHlsZT0ib3ZlcmZsb3c6IHZpc2libGU7IHRleHQtYWxpZ246IGxlZnQ7IiBwb2ludGVyLWV2ZW50cz0ibm9uZSIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgcmVxdWlyZWRGZWF0dXJlcz0iaHR0cDovL3d3dy53My5vcmcvVFIvU1ZHMTEvZmVhdHVyZSNFeHRlbnNpYmlsaXR5Ij48ZGl2IHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiBzdHlsZT0iZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IHVuc2FmZSBjZW50ZXI7IGp1c3RpZnktY29udGVudDogdW5zYWZlIGNlbnRlcjsgd2lkdGg6IDMwNHB4OyBoZWlnaHQ6IDFweDsgcGFkZGluZy10b3A6IDIwMXB4OyBtYXJnaW4tbGVmdDogNjAwcHg7Ij48ZGl2IHN0eWxlPSJib3gtc2l6aW5nOiBib3JkZXItYm94OyBmb250LXNpemU6IDA7IHRleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICMwMDAwMDA7ICI+PGRpdiBzdHlsZT0iZGlzcGxheTogaW5saW5lLWJsb2NrOyBmb250LXNpemU6IDIwcHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtNaWNyb3NvZnQgWWFIZWkmcXVvdDs7IGNvbG9yOiBsaWdodC1kYXJrKCMwMDAwMDAsICNmZmZmZmYpOyBsaW5lLWhlaWdodDogMS4yOyBwb2ludGVyLWV2ZW50czogYWxsOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3b3JkLXdyYXA6IG5vcm1hbDsgIj5BY3RpdmU8YnIgLz5HcmFudCArIOWRqOacn+e7reennzwvZGl2PjwvZGl2PjwvZGl2PjwvZm9yZWlnbk9iamVjdD48aW1hZ2UgeD0iNjAwIiB5PSIxNzcuNSIgd2lkdGg9IjMwNCIgaGVpZ2h0PSI1MyIgeGxpbms6aHJlZj0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUJNQUFBQURVQ0FZQUFBQjZRbDhJQUFBQUFYTlNSMElBcnM0YzZRQUFJQUJKUkVGVWVGN3RuUW44ZjlXYy8xOWorN2VJVUxZa2pDVmhiQ1ZVbEVnSUV5SkxzZzRqTXZaMXJGTjJSbWt3bHFFeTJXSUtLWklvbEoyL2ZTa054aklxRWZWUDhiK3ZPaDgrWGZmY2MrNzIrZHpQL1R6UDR6R1BuK2w3N2pudjh6em44L25jKzdydjVXOUVnd0FFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlEQWhBbjh6WVRYeHRJZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQ0FFTUE0QkJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0F3S1FKSUlCTmVudFpIQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBQ0dHY0FBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBWU5JRUVNQW12YjBzRGdJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUJqRE1BQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ01Ha0NDR0NUM2w0V0J3RUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJSUFBeGhtQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFtRFFCQkxCSmJ5K0xnd0FFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUVBQTR3eEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJVEpvQUF0aWt0NWZGUVFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNDQ0FjUVlnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUprMEFBV3pTMjh2aUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQkRBT0FNUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNreWFBQURicDdXVnhFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWdoZ25BRUlRQUFDRUlBQUJDQ3d1Z1N1S0drVFNSZEpPalA4dTdxcndYSUlRQUFDRUlBQUJDQXdFQUVFc0lIQU1pd0VJQUFCQ0VBQUFoQVlrTUQxSkIwcWFhZTVPWDRqNmVtUzNvNFFOaUI1aG9ZQUJDQUFBUWhBWUNVSklJQ3Q1TFpoTkFRZ0FBRUlRQUFDYTB4Z0swa2ZsM1NqQ0lOblNYcVZwRCt0TVNPV0RnRUlRQUFDRUlBQUJDNUZBQUdNQXdFQkNFQUFBaEJZYndJM0xVTG5uaVRwY2hFTTUwdDZ2YVFmcmplbTBhemUrL1FtU1krdXNlZ0NTVHRMK3R4b3JNWVFDRUFBQWhDQUFBUWdzR1FDQ0dCTDNnQ21od0FFSUFBQkNDeVJnTzhERHBhMFg4S0dGeGQvZjlFUzdXVHF2eEM0aHFUUEZ1R1BOMGhBZVo2a0F3RUhBUWhBQUFJUWdBQUVJSEFKQVFRd1RnSUVJQUFCQ0VCZ2ZRbFlURGxSMHRZSkJGOHNSSmZkSkoyOXZxaEdzL0piU2pvcEpMNnZNOHI1d2ZZZGpkVVlBZ0VJUUFBQ0VJQUFCSlpNQUFGc3lSdkE5QkNBQUFRZ0FJRWxFdGhiMGhFWjh6dVgxRDBsSFp2Umx5N0RFcmlXcEZPS1JQZlhUVXlEQjlpdys4RG9FSUFBQkNBQUFRaXNHQUVFc0JYYk1NeUZBQVFnQUFFSTlFVEF1YVRlTGVuK21lTzU3ejZTTHN6c1Q3ZGhDSGpmRHBOazhUTFd5QUUyREh0R2hRQUVJQUFCQ0VCZ2hRa2dnSzN3NW1FNkJDQUFBUWhBb0FPQm00ZFF1azB6eC9pcHBKMktzTHJUTS92VFRYS0k2Y01rUFVEU0V5UjlwU2NvdDVaMGdxVFkzaDBpNlo4UUszdWl6VEFRZ0FBRUlBQUJDRXlDQUFMWUpMYVJSVUFBQWhDQUFBUWFFM2lXcEpjM3ZNclZJdC9ROEpwMTZ1NzdxcTBrUFViU0l5VmRPeXorOTRWZ2RTZEpYK29SeG8wbEhTNXB1N2t4ejVQMHo1SU9rdlNISHVkaUtBaEFBQUlRZ0FBRUlMRHlCQkRBVm40TFdRQUVJQUFCQ0VDZ01ZRXJTenBPMHZZTnIvUTFlMHF5MEVLN05JRUhTWHBUeEN0ckNBRnNOcnU5d0RhVTlFZEpaeUY4Y1N3aEFBRUlRQUFDRUlCQU5RRUVNRTRHQkNBQUFRaEFZUDBJN0M3cG1FZzE2TTlMdXI2a3pTdXdrRnNxZmxicVBPcUdGTURXNy9TeVlnaEFBQUlRZ0FBRUlOQ0NBQUpZQzJoY0FnRUlRQUFDRUZoaEF2N3RQMWpTZnBFMUhDRHA3cEsyamZ6OXdNTEx5QlVHYVpjbWdBREdpWUFBQkNBQUFRaEFBQUlqSm9BQU51TE53VFFJUUFBQ0VJREFBQVRzM1hXU3BDMHF4djVURUw4ZUlla2hrYm0vSTJsblNiOFl3TFpWSGhJQmJKVjNEOXNoQUFFSVFBQUNFSmc4QVFTd3lXOHhDNFFBQkNBQUFRaGNpc0JEUS9MMEtpeG5TTnBCMGg0aG4xVU0zWU1sdlJ1dWx5S0FBTWFCZ0FBRUlBQUJDRUFBQWlNbWdBQTI0czNCTkFoQUFBSVFnRURQQkp3cy9ZUEJ5NnRxYUl0YSt4UjliaW5wMDVJMmlzdy82M2Roei9hdDhuQUlZS3U4ZTlnT0FRaEFBQUlRZ01Ea0NTQ0FUWDZMV1NBRUlBQUJDRURnendSdW14QzI3aXZwNkZCVnNFNG8rN1drblNSOUE3Wi9Kb0FBeG1HQUFBUWdBQUVJUUFBQ0l5YUFBRGJpemNFMENFQUFBaENBUU04RVhpVHBoWkV4eTdtOUhwY0lnM3lTcERmMGJOOHFENGNBdHNxN2grMFFnQUFFSUFBQkNFeWVBQUxZNUxlWUJVSUFBaENBQUFRdUpuQ05Jbm45aVVYdXJxMGpQRndaY3YrNXY5MUEwbWNLRWV5YWtmNm5obERLYytCN01RRUVNQTRDQkNBQUFRaEFBQUlRR0RFQkJMQVJidzZtUVFBQ0VJQUFCSG9rc0x1a1l5UlYvZlk3bDljdWtrNmVtKzl5a2c2VHRIZkVocXByZWpTM3Q2RXVMK21xa2k1VEd2RnNTZWYzTmdzQ1dJOG9CeHRxQTBsWEdmZ2NER1k4QTBNQUFoQ0FBQVFnMEkwQUFsZzNmbHdOQVFoQUFBSVFXQVVDS1RFcjVzMTFIMGxIMVN6d0VFa09oZnpUU0NCWTROaFIwcjBsM1ZPU3Zkakt3dGU4cVgrVWRGb1FCajhVQk1DWUtPWjdKZ3RwVjRpczlRbVNuaC81MjNtUzlwVDA5UXhPRnhTZWVHY2xtTVpFdmRud3Y1VjBibVN1eTBxNm1pVC9HMnQ5aTRQbGVWTDJYMVNjcXpNbCtkKzJ6ZnUxbGFUN1MzcWdwRzFyem9MUHdUZERkZFQzU25JMTFMR2M2YmJyNXpvSVFBQUNFSUFBQkVvRUVNQTRFaENBQUFRZ0FJSHBFMGlGTTc2NFFPRDhZT1dXQ3B1MFVMQ0RwSjh1RWFIdlpXNGg2V1dTN09WV0ozaWx6TFFRY25naGNoMG82YnVsemxjc1JKUVBTN3B6YXBDT2YvK1VwRDFxQkN3UG55cG04T3lpa01FckluWmNXZEp4a3JhdnNYUG8vRzRwWWJWTGxWRUxlK2IzOHBwdzM5UVdPUitlR1hxL3U0aHdxWG40T3dRZ0FBRUlRQUFDQ3lTQUFMWkEyRXdGQVFoQUFBSVFXQktCSnhaZVA4N3hWZFYrTCtsT2hkZlVseXIrNlBzRVg3ZGZqZDBQTG9RR0N4YkxhTnRJZW9lazdYcWUvRkJKKzViR25Jb0E1bVhWblFmL1BVZUVhNHM4NVkxb3p5dDc3eDNiWWdLZkErOWRMTTlkMHlHL0lPbGhrcjdYOUVMNlF3QUNFSUFBQkNBd1BnSUlZT1BiRXl5Q0FBUWdBQUVJOUVrZ0pkellHOGpoZVE3VHEycDNsZlN4U080dzkwOWQzK2RhWm1OdEhEeSs3S2swUkp1NkFIWnpTU2RKMmpRQ3IwNFU3Y3I3K21IdUxTSUR0U211NEpCS0Z5RjRhVmZqS3E3L2c2U0hTbm8vWVpFRDBHVklDRUFBQWhDQXdBSUpJSUF0RURaVFFRQUNFSUFBQkpaQTRBNmgrbU1zZDFVcTNDMFZNdmRyU1R0SitzYUMxblk5U2U4TE9aMkdtbkxxQWxqS0M4dGM2OElvdTNCM1VZVWphZ2FJaGVQR0xyRVkrcWJncWRYRnJycHJIUnI3WkVuT2VVZHVzS0VvTXk0RUlBQUJDRUJnWUFJSVlBTURabmdJUUFBQ0VJREFFZ21rUWhpZGJOMUo0Nytkc05INXdWN1lvMmpSRnNtdEpCMHRhY3UyQTJSZU4zVUJ6QmhTUXRRUVlaQVczaHd1NjhUMFZhMnBtR3B4MXVNNTk5dlF6U0tZaytrZk9mUkVqQThCQ0VBQUFoQ0F3REFFRU1DRzRjcW9FSUFBQkNBQWdURVFTQ1d4ejAwMm5rcTYva1ZKdXhWZU1xNGVPRlJ6RmIrUFN0b3Njd0tMS2U4SklacGZsdVRxaXJQbVJPbk9IN1pyOEJ5NmRtbk1kUkRBVW1mRHZIYVc5TGxNM2puZGJob3FiYnFhWmxYTFBZKysxbUdQOXNoNmJNYkVydkQ0dW5CK2ZqYm54ZVdxb1RlVTlQZEY1YzM5aS9FMlQ0ejFxOERFNDlFZ0FBRUlRQUFDRUZneEFnaGdLN1pobUFzQkNFQUFBaEJvUUNEbDVaT2J3SDVEU1I4c3hKQzdSK2J1a3JnOFp6bGJGZFVtUHk3cFJobWRuYmo4bnlRNWwxUnVCVDk3bEQwbEpJZTNzRklsZ1BtZXljSk5MSlQwQ1pLZUg3SFArZFdjWiszckdmWmJlTEpuWGwyb1hVcVF6QTFmUEVoU1hSNjFwdUdJcWVYVkpkOXZjb2E4Rjgrb3FYUTVzK09Ia3Y2aHFOejV5WXpRUlo5eHMvaVhJSzdGMXVMS2tQWUVpK1hNU3pIZzd4Q0FBQVFnQUFFSUxJa0FBdGlTd0RNdEJDQUFBUWhBWUdBQ3FYQ3pNd3BSYVlmQ2crYW5tWFk4THVSYWluVjNOY1pIWlFnTm1kUDl1WnNGcVhkSjJpdHhvUk8zMnh2SVhsKzV3bGQ1eUt1RlJPb1dReDdaMEZBbllYOTU1SnErazhyM0pZQ2w4c08xU1VnZnc1WVNVYjlWQ0ZWM0xrUkllMW1sbW5QT0hWOGpSdnI2RDRUellER3hTYnRqVVZYMEl6VUZBaXpVUFNDTTMyUmMra0lBQWhDQUFBUWdzR1FDQ0dCTDNnQ21od0FFSUFBQkNBeEVJRlhweitGajluakpUZXA5QTBtZktVU3dhMGJzdFpCbVllTDBudGZ6TUVtSEpjWThUZEllR2JuTWNrenp2WkdGc0J3aFpuNjhWUlRBVWdVTytneURUSWwydWQ1bTNodUh3bTVYczVsdkMyZTdyWmVXYzVTOVY5SmxJbk1zby9KcHp0bWxEd1FnQUFFSVFBQUNOUVFRd0RnZUVJQUFCQ0FBZ1drU3FCTmttb1NiemVqa1ZBNU1WWlJzU3RxaGlTZUVQRTJ4YTc5ZkNITjNLenkyN05HMnpMYUtBcGg1MVlVbCt1OEhTbnBlRDJEckNpazBTWDcvZUVsdnJMSG5FeUhKL2prZGJQYjlzWE9HdWZKalZldFRHT3hnSnBkQ0FBSVFnQUFFSU5DRUFBSllFMXIwaFFBRUlBQUJDS3dHZ1pSblQ1TndzL2tWcDNLSzllMFprNm8rYWVIRWVjaytQNEp0V1ZVQkxKV1l2bzhDQjZuem1KdjhQcFc0djg4azlVNk8vMmxKMTRxY3JiNkV3UkVjWFV5QUFBUWdBQUVJckFjQkJMRDEyR2RXQ1FFSVFBQUM2MFhncnBJK0ppbjJPOS8yNFQwbFFQVHBHWk9heXp2NmRFbXZHY25XcnFvQWx2THN1MURTTHFGNlkxdlVPNFpFOUo2cnF1VVdZMGdKc0xuSi8zUFc0Yy9PMnlVOUl0SzVEMkV3eHc3NlFBQUNFSUFBQkNEUUV3RUVzSjVBTWd3RUlBQUJDRUJnSkFUODIzNndwUDBpOW5RUnFWSmplOHEyNGxyWjNKVFk0V3FQOXloeVBaMDVFdTZyS29BWlg0cDExejJ0cXpiNUhVazdTL3BGWWg4M2tIUms0ZTEzejBpL0h4UWVXM2VSOU9NZXo4TkRpL0Rid3lQai9UYmt2UHRhai9NeEZBUWdBQUVJUUFBQ0F4SkFBQnNRTGtOREFBSVFnQUFFbGtEZytwSk9rclJGWk81UGhZVHg1N2EwTGVWZGxpdG8xRTJmcW1EcGEzTzlobG91cy9GbHF5eUFwYnp0Mm9iTUdtSnE3TnprOTZsUVRZdSsremZldGZvTGJoaytTNXRFdWpsWnZxdE4waUFBQVFoQUFBSVFXQUVDQ0dBcnNFbVlDQUVJUUFBQ0VHaEFvTTVyeGNOMFRWU2Z5dWZrT2U0cjZlZ0dOcGU3cGlwTzlpR3lkVEN2OHRKVkZzQzhvRG92TFJkTjJFM1M4UzJnN1M3cG1FZzRicFBrOTNYbnVvOHd6YXFsT2YvWEtVVW81SFVqNis0ejVMSUZXaTZCQUFRZ0FBRUlRS0FKQVFTd0pyVG9Dd0VJUUFBQ0VCZzNnUTBsZlRBa2hxK3l0SW5nVUxmU1ZITDYzS1Rtc1RrYzJtalJKTllPQ1VLZWhabXh0RlVYd081UWhDS2VXSVN3WGlFQ3RJMkhWU3FQbHZmWVhsVG5aMnhpblVCM1dwSHo3bzRaWVpRWjAxeXF5eFVsZmJqSVgzYm55SVdIU3RxMzZhRDBod0FFSUFBQkNFQmdPUVFRd0piRG5Wa2hBQUVJUUFBQ1F4QzRiYWhjdDFGazhDYUNRNTE5cVhtNkNtM1BsWFJBalFGakREMWJkUUVzSmZhMDhicExoZVBtaHJGdUxPbW9JaHh4MTRIUGRYbjRGQlBuSkhQK05IdWcwU0FBQVFoQUFBSVFHRGtCQkxDUmJ4RG1RUUFDRUlBQUJCb1FTSGxtUFV6U3V4cU1GK3VhOGpUemRWMUNMZDhwNmVHUnljZWFmSHpWQlREamZtSW9vRkNGM3Q1MlRrQi9iSVB6VTVkY3Y0bWc1anhpbjVYazBOaXE5Z2RKUDI5Z1YyN1h5MGh5R0tUL3JXcGQ4K25sMmtFL0NFQUFBaENBQUFSNklJQUExZ05FaG9BQUJDQUFBUWlNZ01CbWt2eEF2azNFbHArR3FuV245MlJyblZqaUtVNE5vWmpuTkp3djVYWHozNFVJYzN0SlAyczQ3dERkcHlDQXBSTE5Od2s5VFJVeXlFMSs3MzFMNVlRYmVtOWo0eU9BTFlzODgwSUFBaENBQUFSYUVFQUFhd0dOU3lBQUFRaEFBQUlqSkZDWGJOem1mbFhTSzNvTTEzS1Z5WmNWWTlvYnJLcTFUVXllRXZMR0tqcE1RUUN6YUhWWUNPdXIydE1tWGx0MVl0b0ZSYjZ4blF1QjlIT1puNk5VeUczbU1MMTNHK3RaN0gyaERBZ0JDRUFBQWhDWUFnRUVzQ25zSW11QUFBUWdBSUYxSjVBU0xwYkZwNG5IME16R1ZPVzlzWW9PVXhEQXZBZjNDZm0ycXM1TWt6RElPZy9CNHlUdEtlbTh6SU9KQUpZSmltNFFnQUFFSUFBQkNNUUpJSUJ4T2lBQUFRaEFBQUtyVDJDc0lXSm5TTnBCa3NNdmN4c0NXSnBVU2hCNmR2RDJTNC8wMXoyY2I4dlZJTGVPWFB3T1NZK1NWRmVCTTVVakxqZjUvY3lFMUhyYnJMT1BhOFlxeHZheE5zYUFBQVFnQUFFSVRJNEFBdGprdHBRRlFRQUNFSURBR2hKSTVlTmFKcEttWWdjQ1dIcTNVb0pRRndITXM3c0NweXR4VnJVY1ViUE92aVpobEFoZzZiTkFEd2hBQUFJUWdBQUVNZ2tnZ0dXQ29oc0VJQUFCQ0VCZ3BBUlNTZU9YYlhiVGNEY0VzUFNPRFMyQTNTRjRnVjBoWXNwOUpSMWRZMlpkTmRLREplMmZYdUtsZXFUV2U1S2tneHFPMlVmM1gwazZ1Y2U4ZW4zWXhCZ1FnQUFFSUFBQkNFUUlJSUJ4TkNBQUFRaEFBQUtyVFNBbFZpeDdkYjhPMVNlL2tXbElTZ0Q3b3FUZEpKMmRPZDZpdWswbEI1aDVwVVRWZDB2YUp5TDhYRm1TUmMvdEs4QTNUWDQvRytLV2tpeHliUkxaekVNbDdidW9qV1llQ0VBQUFoQ0FBQVJXa3dBQzJHcnVHMVpEQUFJUWdBQUVaZ1RzK2ZLa2tlTjRjV0dmdllKeW1rV09ZeVR0R09uc2ZHSzNsL1NUbk1FVzJHZEtBcGl4MVlYVmVnOTJLa1NuMHl2NGV0OCtLY21GR2NxdHFUZmc3UHFVS1BvSlNmWksrOTBDOTV1cElBQUJDRUFBQWhCWU1RSUlZQ3UyWVpnTEFRaEFBQUlRbUNPUVNsaHVqNXZuU2ZyUndOVHNEZVRxZ2JIV3hHdHJBMGxIU3JwblpMQUxKZTBTUXM4R1hsYWo0YWNtZ0tVS0s4Unl1OVVKc2szendjMDI0Q3FTUGlacDI4aU9mS3NRM2U1Y2lIWU9TYVJCQUFJUWdBQUVJQUNCU2dJSVlCd01DRUFBQWhDQXdPb1MyRnZTRVRYbXQvVzRhVW9rRllicGlvRVd0STdOSERqbDFmWjRTVy9PSEd0UjNhWW1nTm1ENnpCSlBtTlZyU29NY3JOQ25IUmx4RzBxTHNoSm5oL2JLOXZpK2U0ZjZYQlc4Qmo4OXFJMm0za2dBQUVJUUFBQ0VGZzlBZ2hncTdkbldBd0JDRUFBQWhBd2daUW80RDRPalh6REFuRFY1WDJhVGY4T1NZK1NaREVzMVI0cTZmQ2FUZzZSdEJoeWZtcWdCZjU5YWdLWTBlMGV3bEdyN2hlcndpRHIraDhTem1QTy9sZHRXMTFsU3ZkL21LUjNMWEMvbVFvQ0VJQUFCQ0FBZ1JVamdBQzJZaHVHdVJDQUFBUWdBSUZBNE9ZaE1maW1FU0pOazg5M0JWdVhNOHBqMStXTktzOTkweERpZU5XUnJDMkh6UlFGc0ZTSTdiem81SHRLVjNqY3J3SlcyK1QzODBQZEk0aHhzYjJvUzh5ZnMzLzBnUUFFSUFBQkNFQmc0Z1FRd0NhK3dTd1BBaENBQUFRbVM2Qk9jUEdpRiswbGxSTGtiRk91UjFxcUNxSEhlcjJrcDJSNmxDM2lFRXhSQURPM09zOHI1MnB6aUtUenNtMGg2VE9TdHFxQTNVY29iaW9ubWZOLzdTenBtNHZZYk9hQUFBUWdBQUVJUUdEMUNDQ0FyZDZlWVRFRUlBQUJDRUFnSitSdzBTRmhPU0daVFlTUWxFZlo3eVhkU2RLWFJuSWM2Z1N3dmhQMzMxYlNweVZ0RkZuN3N5VzlvaWN1ZGZuZGZpNXBCMG1uaFNJSVIwWG03Q05uV3lvbm1hZitGMGt2R0pFbzJ0TVdNQXdFSUFBQkNFQUFBbjBRUUFEcmd5SmpRQUFDRUlBQUJCWkw0SzZoS2w3c2QzeGVtRmlrWmFtay9FMUM0YTRmUWp6dFdSUnJud2k1d001WjVDSWpjNlh5bGpsbjJRZDZzbk9SQXRpR2tqNG82ZTRSMnkyMC9xZWt0eGZWUmg5UjBhZEo2R3NLVCtwOFdSUzlpNlJUVXdQeGR3aEFBQUlRZ0FBRTFvOEFBdGo2N1RrcmhnQUVJQUNCMVNaUWwydHB0ckpsNVVOSzVZeXlmUWRLZWw3R0ZuaWRMeW5DNjU2ZjZQdVdrSGZxRHhsakR0bmwzcEtPcnBrZ2Q5MDVOaTVTQUxNOWRkNTRMbTd3OUZEaGM5c0s0N3NtdjU4Zjh1cUYxOThKa201V0ErbjdSU2ptM1NTNTZtVGZiV05KZXdaQjhIZDlEODU0RUlBQUJDQUFBUWdNU3dBQmJGaStqQTRCQ0VBQUFoRG9tMENPWjlTREpWa0VXM1RMRWVlK0UzSTEvU0xEdUMyRDRISERSRjlYakhTWVhSK2l4RGFTN2lYcFZSbjJ6WGZaVHRLbml0QkRlMHhWTlhzbDJZdXFEMisxUlF0Z2RXZnVXNUwrTVloQzVhSUZUVHorY25GN245K1k2SHlTcEFjV1o4S2VrSDAwbit0ZEpQMjdwSjlJMnFNUS9jN3RZMkRHZ0FBRUlBQUJDRUJnY1FRUXdCYkhtcGtnQUFFSVFBQUNmUkJJaGRyWjg4VjVtUng2dG95Mm82UlBGdm1ZbkxNcDF1NmI4SmFhdis1QmtvNlFsTHBuK2Fva3M3RWcwNlpkS1NSOHQ3ZlRvWkwyYlRqSWRTU2RFcExCeHk3ZFI1TEZ1cTV0MFFKWVhmNnQzd2F4ME41NjVXWkJzRyt4eVBudlBpUnBwd1RFSDBzeWI5dlFwZDJreUxYMnlwRGp6T01Nc2FZdTluRXRCQ0FBQVFoQUFBS1pCRkkzazVuRDBBMENFSUFBQkNBQWdRVVFTT1Zqc2dsOWhweTFXVkpPZ3Y0bUlacVhEMnQ2YktZeHpsZjF3aUNFWFpTNHh2ZEJybHE0ZndqejgxeHViUVN3RFNTNUt1STlhK1owbUtZOW1ONHBxY28yNzYvRnk1TWxuVjh6enFJRk1KdXllNmdzV25YdjZFSUV0cW5jY3F0K1ptN3RuN3ZkVHBJTEtteWFjYUhEVXA4ajZkc05rdU03MU5INytBeEo5dXliYndoZ0dkRHBBZ0VJUUFBQ0VCZ2pBUVN3TWU0S05rRUFBaENBQUFTcUNhU0VqeitGQi9kamx3eXdyaUtpVGZ0MThPRDVScWFkRnRVc0x1MmEyZC9kTERZZEkrbXpvVXJoL0tYT0piVmJJVFM1bUlERmpuSnJJNEI1akZUbHl0azhQNVQwSGtsZkNmL2gvNFM4VlE3YiszeUcxMVRxSFBSWkJYSm1jMDUrdDNtT2ZTYS9MKytQNzE4dFRqV3BkT2t6NXlxVkh5ODhCWjBuekI1aXMrWlEyeHNWaFNYdUdNNll2YjVpRFFHc3dZZVFyaENBQUFRZ0FJRXhFVUFBRzlOdVlBc0VJQUFCQ0VDZ25zQ0xnbmRUckZlVC9GcERzcjU1cU9CWTU2SFQxRHVvalFqV2RvMXRCYkNjL0d3cG0zSUVsbVVJWUxZN2RmN20xemEwSjZLOTlWeE13ZDUraTJ3NSs3TkllNWdMQWhDQUFBUWdBSUZNQWdoZ21hRG9CZ0VJUUFBQ0VGZ3lnYzFDL2lFbmFZKzFnME00MzVKTlZVNDRZSnVrOEJiQjNpcnBBUU12c0swQVpyT2VKdW5WSGV6TEVWaVdKWURkb1NoZ2NHSlJ5Zk1LaWZYWkU5RWVkc2QzNEpCejZUSkVzSno5eWJHZFBoQ0FBQVFnQUFFSUxKZ0FBdGlDZ1RNZEJDQUFBUWhBb0NXQnVoeE1IdkxDVUtuTythUEcwUFlPeWV0anRyUzE5N0tTOWdzaTB5eG5WOS9yN1NLQU5jMVpWclk5UjJCWmxnQ1drNFBPNjJramJyYmRROS9MdWxEQzI0cGs5UnUxSFNUenVpOUlla1NIUWd1WjA5QU5BaENBQUFRZ0FJRWhDQ0NBRFVHVk1TRUFBUWhBQUFMOUVxaXJ3amViNll2QjYrYnNmcWR1UGRvV1JWNnJ6NFFrODdGQnVvVEp1ZXJpUVpMMmJHMWg5WVZPb204dnJ0TTdqT3U4WW04SVlrblRZY1lzZ0hrdE9Ybk9tb2EzTm1WVTFkL240YldTOXVwanNOSVlEaTEyWHJVUFI0b1hEREFsUTBJQUFoQ0FBQVFnMERjQkJMQytpVEllQkNBQUFRaEFvSDhDTndoaTBqVnJobjV4OFRmbmFCcEw4ejJHUXpMdHJSVnJaNFNxaDA2WTNyWTU3OWJUSlQyeVNJcHVENlUyelFuUzMxNVVGZnpYVW5MME5tUE5yckdubXBQYXY3Nm9Zcmw1ZzRGY0lkTnJHVnNWeU5rU1Vubk9oa3grbjRQUjlqMjNFREQzbGRURlE5Qm53b1VLTExJMnFTQ1pZeU45SUFBQkNFQUFBaEJZQWdFRXNDVkFaMG9JUUFBQ0VJQUFCSG9uWU1IcHhwTHVIYXI1YlN2cFdwSXVVNXJwZDVKK0llbVVvdC9IUWw0MUMzSE9XelZFczEyM2tuUS9TZmVTNUFxVXRzdk50cHdsNmN1U1BocXFWczVYSnh6Q25uVVpjLzQ4T0IvWjFwSHo4RWRKUDVQMGsxQ0I4NlFnTnZ1L0RYVW0xbVVQV0NjRUlBQUJDRUJnVkFRUXdFYTFIUmdEQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZzBEY0JCTEMraVRJZUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0F3S2dJSUlDTmFqc3dCZ0lRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUtCdkFnaGdmUk5sUEFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FJRlJFVUFBRzlWMllBd0VJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUJBM3dRUXdQb215bmdRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ295S0FBRGFxN2NBWUNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFnYjRKSUlEMVRaVHhJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkVaRkFBRnNWTnVCTVJDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSjlFMEFBNjVzbzQwRUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWlNaWdBQzJLaTJBMk1nQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRStpYUFBTlkzVWNhREFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFHQlVCQkxCUmJRZkdRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ1BSTkFBR3NiNktNQndFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlEQXFBZ2hnbzlvT2pJRUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaERvbXdBQ1dOOUVHUThDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VCZ1ZBUVF3RWExSFJnREFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWcwRGNCQkxDK2lUSWVCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBd0tnSUlJQ05hanN3QmdJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFLQnZBZ2hnZlJObFBBaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBSUZSRVVBQUc5VjJZQXdFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQTN3UVF3UG9teW5nUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNveUtBQURhcTdjQVlDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ2I0SklJRDFUWlR4SUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJFWkZBQUZzVk51Qk1SQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUo5RTBBQTY1c280MEVBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFpTWlnQUMyS2kyQTJNZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUUraWFBQU5ZM1VjYURBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRR0JVQkJMQlJiUWZHUUFBQ0VJQUFCQ0FBQVFoQUFBSVpCRGFRZEpXS2Z1ZEorblhHOVhTQkFBUWdBSUUxSTRBQXRtWWJ6bkloQUFFSVFBQUNFSURBR2hDNHZLU3JTcnBNYWExZHhaRk5KVDA3akQwLzlLbVMzalp4cnRlWDlCWkpINVgwRGtsbkxubTk5NVowZElVTmgwcmFkOG0yTVQwRUlBQUJDSXlRQUFMWUNEY0ZreUFBQVFoQUFBSVFnQUFFT2hHNHJhUlBTOXFvTkVwWGNlUmFrazZSZE4yZXgrMjAyQVZkL0VSSkI4L045UVZKQjBnNnJoQUZ6MStRRGZQVElJQXRBVHBUUWdBQ0VGaGxBZ2hncTd4NzJBNEJDRUFBQWhDQXdGUUpYRkhTSmxOZFhJTjFYU0RwTEVsL2FuQ051NDVWQUx1Y3BCMGxiZFp3UFcyNy8wclN5Wkl1YkR0QXVPN0tRZWphdm1LY3J4UnozRFhzVThkcEdsMk9BTllJRjUwaEFBRUlRQUFCakRNQUFRaEFBQUlRZ0FBRXhrZmdXWkplUGo2ekZtN1JweVR0SWVuY2hqT1BWUUN6c1BsaFNYY3pnMUFkQUFBZ0FFbEVRVlJ1dUo2MjNkdnlLOCszdTZSakpGVTlPK3dqNmZDMkJuYTRidDBFTUlmZjJ0TnVHZDUySGJhSlN5RUFBUWlNaHdBQzJIajJBa3NnQUlIRkVIRFNYTDk1MzBiU2xTVDVyYllmbFB4VzN1MEhrazRMLzl0dnpyOHI2V3h1T0Jlek9jd0NBUWo4bVFBQzJDVW8yZ280Q0dEZCtNMS9GRGNzZmpQZkc0VEk4a2ZVWVpEM1dGSStzQ2tKWUxPY2RiNHZ1Wm1rRzB1NlNiZy91YmFrelFQNHB4WDNMcTh0YllLZjU1enY3Z29qK2Y2OEtKd0gvMHVEQUFRZ01Db0NDR0NqMmc2TWdRQUVCaUJ3alhEVC9tQkp0NWUwY2NzNS9pRHBXNUpPQ0cvQkhWTENXOWlXTUxrTUFoQklFa0FBNnliZ0lJQjE0emQvUU84ZzZjU0l3TElzN3kvYk4yWUJiRjZVc3RlZlJTMi9hTHVGSk9lUnUzcVJ3UDgyaFplblg4ck54SzNrbDBKeC9aR1M5aTZGdEM3YXF6Qmw1MytIKzYyZnBUcnlkd2hBQUFLTEpvQUF0bWppekFjQkNDeUN3TlVrUGJydzNIcXlKTDg1SGFyWk8reDFrdDYvcExmZlE2MkxjU0VBZ2VVVFFBRHJKdUFnZ0hYak4vc0UrRm5CaWUvM3EvaEl1UExsM1NXZHM2U1B5eGdFc0NjVXVjLzJueXUyY00yaU1JQzl1WVpxZmhIbjhGbDdxTThhQXRoUXRCa1hBaENZSEFFRXNNbHRLUXVDd0ZvVGNMakF5eVR0dVFRS0RnOXhoYXovWGNMY1RBa0JDRXlQQUFKWU53RUhBYXdidjlrbjZvYWhtcWE5bHVhYml4SThRTklIbHZqUkc0TUE5amhKYjFvZ2cvT0NBT2JRVXdTd0JZSm5LZ2hBWUJvRUVNQ21zWStzQWdMclR1QTZJU2ZHWGtzRThmc2lQUEpPUlVqR2w1Wm9BMU5EQUFMVElSQVR3RTRxOHYwY05KMWwvbmtsMjBsNlpzVzYxaVVIV050MXpwQlpvRHBGMG5WTERMdU8rNktpQXVjTEsvYmx1UEN5eVlKTTAvYk9JdGZtdzV0ZXRJVCtPYi9ycnVqNXliazhvb3N3OC9GRkdPV2JFY0FXZ1pvNUlBQ0JxUkZBQUp2YWpySWVDS3dYZ2N0SzJqZThmUjB5NUNDSGFzNk5jczQ0OUlFQUJDQmdBakVCN05Ed3ZUYzFTakZ2bnJZQ3pxcDVnTFZkNTVBQzJKWWg3Nlc5d09iYkh3dXh6VlVoUDk3eUVFNUpBUE1MT0F1UFc3UmswZVF5NXlMOWVaRWMvNGp3L1RDN2xoRElKaFRwQ3dFSXJEVUJCTEMxM240V0Q0R1ZKdUE4RzM0RGVwK1JyQUlCYkNRYnNlSm11Q3FwaFFEbnI3UFh4VEVydmg3TWIwOWdXUUtZSy9wVmhaRTczOVBiMmk4bmVXVmJBU3htcnhPTDMxZFMrVjczUngyRUd5L0NoVlFjK2xldXVCY2I5NndpMGZuTEpmMDZFSWlKRldNVXdCelc3L3hmNWZZK1NRK1ZaRUdtVFp1U0FPYnpjSlNrWGR1QW1MdkdpZU10cERtZjJsY2wvVktTLzl1UEM3SExYbmF6ODFNMVRaMEE1cGVFYllYSzFKS2N5TisvVWVWY3F5VEJUNUhqN3hDQXdOSUlJSUF0RFQwVFF3QUNIUWpjVk5LSEpkMmc1Uml1VFBUNWNJUDVneUlVNDdRd2pzZnptMjU3bHRsN3dLRWtWOG1jQXdFc0V4VGQvb3FBSzVVK1ROSmpROW43V1FlTHV4K0MxOW9TV0pZQXRxeDUyd3BnWTgrVlZoWURWa1VBczdqaHFzZXVYampmTHBCMDEwTHdjU2h1MnpZbEFjd01adXVaZVdqNXYzMHYzRnRjR0ZJaldOaXk1OXh6aXZ1WGJVdmd1Z3BHZFFMWWtMOGpzYkRicnV0cGU2NjREZ0lRZ0VDU0FBSllFaEVkSUFDQmtSSHdqYmZmUG0vYXdDNG5wditQUWpCejZKQnZTcHU4dFhabzVmV0tKTUIza2ZTZ2tIejJNaFZ6STRBMTJCQzZYa3hnKzVCQU9sYXBkTWdIRjdaZy9BU1dKVVF0YTE0RU1Ha1BTZWUyUEpwOTV3QnpucWszVnRoaUwwRC96Y0pPMnpZMUFTeVhRMHlvNmlvWUlZRGw3Z0Q5SUFDQnRTZUFBTGIyUndBQUVGZ3BBazNGTDRjVFBFMlNRM2N1Nm1tbEZzUjJLY0lVbmhKeW9NeUdSUURyQ2ZBYURSTjc0SjhoUUFCYm84TlFzZFJsQ1ZITG1oY0JiRHdDV016NzYxZVNkcGIwelpxUDVnYmhiK2ZYOVBFTHJBMTcrSGpmTFhoZmxZZDZ2NlQ5ZXhqZkhsc09ZVzN5MHF4dVdnU3dIamFGSVNBQUFRaDBJWUFBMW9VZTEwSUFBb3NrY0R0SnJqcVY0L24xUTBuL0VDb3p1VlQ3VU0xdjNKOGYzb2I3WnA4cWtFT1JudWE0Q0dEVDNOZStWclVzSVdwWjh5S0FqVWNBaTNsLy9Vc1J4dmVDSWo5aDdIZlZ6eFd2QzcrL0I0WnFwYi9wNndOUk1VN3N6SXkxVUFRQzJJQ0hnYUVoQUFFSTVCQkFBTXVoUkI4SVFHRFpCTFlLU1Z4dmxHSElxOE1OZXB2UzdCbkRWM1p4RmFpWGhwdjlyN1FkaE92V2pnQUMyTnB0ZWFNRkwwdUlXdGE4YlFVd2t1QmZjcXo2Q29HTWVYODVkNlpmOGpodlpxdzVYOWlKa2pZTEhldzU5ZnBRQk9ETVJxYy9yek1DMkNXY0NJSE1PeS8wZ2dBRUlQQlhsWEZBQWdFSVFHQnNCRndWNzhpTUNrdSswWFpWS29jK0RPbjFOVFkrMkxPNkJCREFWbmZ2Rm1INXNvU29aYzNiVmdDTDdZVUxtWHhhMGthbERsMjlnMkpDVSs2NFkwK0NINnY4K093aWJQRVZOUWQvNXYzbENyYmw1Z3FHRnMvK2I4OGZIQVF3QkxDZWp4VERRUUFDVXllQUI5alVkNWoxUVdDMUNmZzc2aVVoekxCdUpiNjUza3ZTOGF1OVhLeGZNd0lJWUd1MjRRMlgyMGFJc3ZlT1h4allhN1p0dTZxa2pTc3VucTl3MTJac2YwLzdKVVZNQkVFQVczNEk1SmFoOHFPckljKzNMeFM1Tk8xcFYrZkZWZmIrbXI4K0ZUclo1ano1R2dRd0JMQzJaNGZySUFDQk5TV0FBTGFtRzgreUliQWlCSFlLb3RZVmF1ejFROW5lb1pyZWlpd0xNeUZ3TVFFRU1BNUNIWUUyQWxqTU8ya01wRk9GUWhEQWxpdUF4VjQ0MmFQNkFZbmZXRjk3c0tUOUtnNmFReVpkUmZuSEF4eENCREFFc0FHT0ZVTkNBQUpUSm9BQU51WGRaVzBRV0cwQ2RUa3RaaXR6aGFZSEJvK0gxVjR0MXE4akFRU3dkZHoxL0RVamdGM0M2bE5xSnd3UkF0bU1YOHlENjhQaGQ3WXVyMmFNdFMzNFIwbHZ5ai8yalhvaWdDR0FOVG93ZElZQUJDQ0FBTVlaZ0FBRXhrcmdZWklPU3hqM2x2REd1YThTNVdObGdWM1RKSUFBTnMxOTdXdFZDR0ROQkp3eWR3U3dmSDZYbC9UdmtoNVJnbmlCcExzV09UaFBxam5VbHdzQzE2TXIrdVNFVG5iNXZDQ0FJWUIxT1Q5Y0N3RUlyQ0VCQkxBMTNIU1dESUVWSUhBMVNSK1Z0RjJOcmQ4TVlSVy9YSUgxVE1sRVB5ZzVSOUJsU29zNlc5TDVLN2JReXhaaE96NXIvbmZXRnJrT0JMRDRnUmxLdkZpbEk0b0FsaS9nVk8zclVHZG9pa253N3lQcGd4WGY2NjdnK0pSRVlaazdoTXFQNVZRRjl0RGVQVlJ3OXY2OE5vUlM5dmtadEtmNFZTb0c3SnF2TG1ialo0dFFUZ3Q5djJ1NWlKaG4rMzlMdXIwa1Y5cHMwNmdDMllZYTEwQUFBbXRKQUFGc0xiZWRSVU5nOUFTYzArdUlHaXR6Y3BLTWZwRnpCbTVhVk5mYU1HTHdSU0h4c1A4dE4zK0gzN1M0YVg2Y3BMdEx1b0VrQzFSdXZwSDJ6ZnFyaXVURnA3YUVZWEhvamlIOHlEbGNQSDVaK0pvZjJnODhGaVlQbC9SZVNXZjBYSkhUNjdYNEZzc0paMitGczJybU5KdmJTWHBzU09qc2hPRlZ6UTlQcmg3M2p2QlEyUFpoeDJQWDdlM2RKTDJ6Wm0vMm5YdDRyTnZDdWpQU2N1dVhmdGxRNHNYU0Y5YkFnRFlDbU0rYnEvWDVjOUsyM1VhUytaZmJqekxQWTJ4ZWg5QzlydkF5OGpoVmpSeGc3VUk5Wnl4andsd3FoTlRmZ3lkSWNnamtmUE52aUNzM09vZFhyUGs3OVYyaENFMjV6L3RDMFlPWmg3YS82eDdlOWxDTzVMb1V5NVNaQ0dBcFF2d2RBaENBd01BRUVNQUdCc3p3RUlCQVl3SVdndndtMm9KT3JCMG5hVTlKZFRsSkdrKzh4QXZxSGd4aWI0YTNDUUpOblplY2w1UXFYVjlldGtVdmg4RTRiOHZmZG1UeW5UQy9jOGhVQ1hoTmgwL2xoWXM5blBoTVBVYVNLNUZkcWVHa2ZuaXpGOFJMSmYybTRiWHV2b2lIdnE3ZUF5MldOZmdsQ0dCU0d3R3NqNDFaMXJ6ckxvRDVCWUpGSi8vYnBqa1UwU0pZdWRXSk5uV1Zsbk55ZDFuRVA3Yml4Y2l2Q3Erd25jTUxrWms5aS9ndWJNT3R5VFZsbG40QlZSWU82OGJiSUZTMXZrbXBreXVrUGxPU1BaQnoyK2VLbHprL0RaM3hBTXVsUmo4SVFHRHRDU0NBcmYwUkFBQUVSa2ZnNWlIZmlEMFpZdTNCa3Q0OU9zdmJHOVJFQVBQM3RpdHRXWlNwODhhYVdaTXJnRjBuaUR6bEhERHRWL1dYSzQ4T1htby83emhZR3dITUFxRzlDYnVLZVQrVTVIUG5uRFpOMmlJZStoREFtdXpJNnZSZGxoQzFySGtYSllCMTlXVGJPSVR5bFQxUkQ1VmtyODFVUzMyUHBhNXYrdmM2QVN3bVlEbm5sL2ZqbkRCWlZiajRSdUVsekk0VkJ2bGx3d3RLM3JpTCtDNXN5cVpwL3pMTDJHZWw2Ymh0K2p0czlVUGhRZ1N3TmdTNUJnSVFXRXNDQ0dCcnVlMHNHZ0tqSnBDNm9iUlhrZDhzLzJMVXEyaG1YSzRBNXUvc1p4VGhrcTlvTUh4S0FQUEQzTXVLTU1zbk5SaXpUZGZUUWlqbHQ5dGNuSEdUN3k3ekR5ZG10WStrdDg2RmhYYVkrdUpML1paK0wwbkhOeGhvRVE5OUNHQU5ObVNGdWk1TGlGcld2SXNTd0lZNkFxc21nUG03LzZqaWhkT3VQUU9KNWVkY3hIZGh6MHY1cStGV1VRRExEYVZ2dzg3aHM4Y1VCUlN1WGJwNGlyOUpiZmh3RFFRZ01FSUNDR0FqM0JSTWdzQWFFM0I0d0pHUzdsbkQ0RUJKejVzWW8xd0JMSmFvdUE1SFNnQ3JLMS9mTitidlM3TEhnWE9EdFdrcHo0blp3NGx6ZGpYeGttdGlpMFV3aCtkK1B2T2lSVHowVGZGaGd4QklRaUJuSDdHMmVaY1crZDFtVzFkTkFMUE5CMGg2YnVaM1dVNDM1K2UwcCt4N0tqbzdlZnoyT1lPTW9JOS9wNjVYWWNjbkpOMTNMZ2wrNm9YZGtFdko5UUFiMG9iWTJGUDhUVm9HUithRUFBUUdJSUFBTmdCVWhvUUFCRm9UY0pMMXp4UWwxYThaR2VIQ3dzdG5sNklzKzhtdFp4am5oVGtDbUhOb1ZTVXFUcTFvVEFLWWJTMG5SazdaUC8vM1hBSE1BcFdUOE9lRWlEYVpmOWIzNDVMdUorbmNqSXNSd0RJZ1ZYUkJBRU1BbXgwTEJMQjJuNkVjZm5jdENwMThURkpmendQTzkvakFGYy9QNlp4ZUowcmFyQUo3T2YwQ0FsajEyVVFBNi9hWjVXb0lRR0JBQW4zOTRBMW9Ja05EQUFKclJDQjFNKzR3T2xjbG5GTDRvN2MzUndCenBjY1h0amdMWFFVd0o0RjNEaS9uR25GVlNTZHBuaGQrbkJ2R2laY2ZVdnozcDB2YVBHRmpsd3FlT1FMWVA0V1FqS3BrMEY4dHhOVTNCU0Z4ZmcxYlNycC80Wm4yeUF6N1o4dHplS1dyWGFZYUFsaUtVUFhmRWNBUXdISUVuTHJUdFdvZVlOOE5oVHJPYi9lUjBWVWt2VEpVbnAwZm9rNUF2RVlRZTdadU9lZjhaYjhQVlNPLzFNTll5eHJDVlMzL1BSU0NLZHRReFJFQkRBRnNXV2VWZVNFQWdaWUVFTUJhZ3VNeUNFQmdFQUpQbGZTYW1wRWRIcmwzVVVYSm5tQlRhaWtCekcrZDdkRzBSV25SZnN2cWtGQ0xVeGFtTEM3TkJDbm5TWHRhS0JaUWx6TXM5cERveWw2dWZIaHFnd3FPcnJib0hHVXZUbXhPMnlxZUtRSE10anBwODI2bCtaMmp4R2ZMRDVoMXpleWNMOFVpbVIrRTZwcm5zcWZaTEVsMHJLK0xPWmhMVlhPWWpmYysxbkp6dDlnNzhNd0crN1FLbngwRU1BU3cyVG50MndQTUNkNFA2dkFoaUFsTlhVTWcyNjV6dGhTTC9xZEl1bTVwYmFrcWtHK1BDRDd6dzdnNm9WOGEyS3ZXODFSNTExWWx2bStLMlhuZ2JoaStnNXRXZVhaT3M3ZUZsMlR6OC9yRmpjTXZIUnFmYXJFMEE2N011YnNrZS8vT04vOG1iWklhTlB6ZGZkOGxxYXB5OC8rRTFBKy96QnpMM2J3bk03RTA5ZHZZWU5oZXV1SUIxZ3RHQm9FQUJJWWdnQUEyQkZYR2hBQUUyaEpJZWN0TU1mK1hXYVVFTUZjeDlKdm1XZlBOdUFXZE55UkVEd3M2Rm1Bc2pzUmFXV2o0WUJET1RtKzVpVG1KK2k4SWhReGN4cjFKYTNxVG44dXBiSU85REQ5UzRVa3gzODlpbzNQVldTaHMyMkpKdjJmanplZDRhVHZIcWw2SEFKWXZnTjFEMHA0OWJ2UnRDbEhkL011dGEvWEU4bmpPQ1hqdzNFUDhvcExnNXdwVk1hUXhvU2wzM05qMzJESUVNSy94VHBKY2Zkbml5MitLRU1admhkK1YzMWFFZWNjK2w3SEU5MDJPcGNQS1hkM1pMeDljZGZjZkpIMnlWRW15YnJ5dVhKM1FQWlptb0V2by9zem11Z3JYWFFXanByK05UZmFsVGQrdTYya3pKOWRBQUFJUXlDS0FBSmFGaVU0UWdNQUNDT1JVcEhwWWVJTzZBSE1XT2tXZEFPYXdFZ3RZRHROejgvL3ZIQ3NXYVBwb3N3Y2FlNUExZmVDSXpXK1BKM3VzN1ZGam9MM0VYdFJ3QVUxdThpMSsrYTIvMlZxc2F0b2NFcG5LSTNaSXFKN1pabnpiZ3dBVzN4VUVzSHdCYkpsaFdFMC9WL1A5eTRJUEF0Z2wzNWs1dVFXcnVMZnhBR3V5ZjdIdjlTNWg3YlA1YnlmSm5zRitZVFBmL0VKbWYway95VEMwaXdEbTU2R1hGTjdsejYrWTUxZmhoWTFGdmk3dGlVSHdyUnFqcTJCVTk5dVk2MG5jWm0xVWdXeERqV3NnQUlHbEVrQUFXeXArSm9jQUJPWUlPS3pFeVhpM3JhRmlqNXVQVHBCYXl2TnR0bVNMT2hhL0hBcmFWN3UxcEVlRnlwcCsrOTlYYzdpSVF3OWp2elArbTBXbUp2bHVtZ2hncm16MjhwYmlseGxjTG9UaFdFU0x0UytHY0V1SG9yUnBDR0J4YWdoZ0NHQ3owOUhXTTJxb016UTFEN0RjN3k2L2dEcXNvbk5YNzZpdFFtamhqU0tHK0hmcDhlR0ZoTU85WTYyTEFMYVRwT09MbEFKWHFCaThqOUJPaTRjVzh4dzJYOVdHRk1DRzlDU09mUmE2cmlmM1ROSVBBaENBUUdNQ0NHQ05rWEVCQkNBd0VJSFlqZFJzdWlrazJJMmh5eFhBM2lKcHYwS3NjbUw2dnByREpDMnN0ZlZpaXRtUkVqVGJGRFRJRmNDYzQ4ZmlVaW8vVjRyaEhVS0M2S3FISWwvckVDRS9PSDB0TlZEazd3aGdjWEJEaVJjdHQyb3BsOFU4dThxaGRuaUFWVy9QVUdkb0hRV3c2eFhmZForUTVFck44NjBQN3lqL0J2bDM3ZFdKM0lzV2tKNVFpR0UvajN3YTJ3cGdkYUdQZllSMjJ0eTY4RWYvdmF0Z1ZQZmJpQUMybEs5dkpvVUFCTVpLQUFGc3JEdURYUkJZUHdMTEVNRDhWdG1lUW4wMjV5bHpFdlVtTFVjQWM0aWljN1g4b01uQVMrN3JSTk5QaXRqUVJqektFY0Q2eU0wMU16bG52aTRQRndoZ0NHQjFIMUVFc0V2bzRBR1c5MFUrVkFpa3ZXR2RxODIvbCtYbXlyOTFoV3Z5TEwrazE0MGx2VWZTcldvdXN1RG1pc1AyMWlxL3RHa2pnTld0elMrR25GdlBWWkM3dHJyd1I0K05BTmFWTU5kREFBSVF5Q1NBQUpZSmltNFFnTURnQlB4bStUT0ZlSFROeUV4RGVJQU40VG54N0tMcVgxM1Z4YXJsNVFoZ3J5ODhtcDR5Z0tmV2tCdjd1Qm94MEpVOGQ1RjBjZ01EY2dTcDNPcU11ZE1la0JCSlhXbnp0Ym1EbGZvaGdNWEJEZVc5MDNLcmxuSlpyZ0EyaEpDL2lBV1hxL09SQTJ5Y09jQmNyZGJGUHNxVkgvdnl0SjAvYXc0VmRDNHVDMnQxN1ovRDcreThOM1RzOTZFdTNMNHUxMk5mSHRjNXYxc0lZSXY0eG1FT0NFQUFBalc1V1lBREFRaEFZTkVFWWcrOE16dldXUUJyV3pWeDBYdFlucTl2Z1NmblFhS05BRm5IS2JXRzV4VjVZK3oxMTZhbHh1N2lYZGJHbmpGZGd3Q1dud05zVFB2V3haWjFFY0NHOHRRYVl0eFllS0Ivais4aXlTOGMrbTUrT1gvWHdpUHNQNHRLeDV2VkRPNlFUT2NsbTRWRVhxUEl5V2hSdFJ5bUdhdk9lYVhndmVZY21HVnh6eFZLTGZ5ZDBjUGlVcUgwbm1KZUFQUDZyeWJKM202NWpSRElYRkwwZ3dBRTFwNEFIbUJyZndRQUFJSFJFTGhwOEFhNmFzU2lkUmJBMm9ZQUxYdHpkd3hsN0IxbVV0V2FDandwQWF5TlYxbUtVVXFZalQxY3BjYjEzNmNxZ0YxZWtqL0g1WWZLSENhelBuOFhra2JiSTJTK3ZUOVVoV3N5VnJudmVaSiszV1dBQlYzNzFsREp0RHhkbHpPM0lOTmJUWU1BTmk0UHNMcnd3RDRTdzZjT2liM0IzeXpKdnhOVnpaOWhKNVgvZlBoajI5eHMvcjZ5TjdJOXJGMjhwZTlpTTNXcEFHYnJtZ2xndnl4eVM5cXIyQldTTGU1OUlBVXAvQjBCTEJNVTNTQUFBUWdnZ0hFR0lBQ0JzUkJZUmc2d1ZRbUJkUDRWbDRKZmhlYmZGWXNmZnhzZUt2eWd0Q2dCeko0QU8waHlndjIrMm5XS2g2SlRKRzBSR2JDTEdERlZBU3dsR3ZhMU4yM0g2YkpuYmVkc2MxMHNOSHBWN0crNjVrVUpZRTN0eXUyZnV5OURlR3JaeHI3SGpZVUhmcUh3L0xwSGtkL3h6Rnd3RmYxdUorbGRoZGowZ2tSMVI0dFRGcVplVmhMVXEwU3F0Z0xZdkhsYkZ0V0xiZHRSa3Z4Q3BXdXpWOXFKa3JaT0RHUUJ6Q0xjTXlVNWRZQ2J3enYzemhUQkVNQzY3aFRYUXdBQ2EwTUFBV3h0dHBxRlFtRDBCRklDbUJQZTdoYVMzL2ExbUZVUndQd20yQThMWTJtdTJ1VVFEVmNHdTRVa0N4NjNDVW1NWGYweHQvWHRBZmF0d3VQc3pnMURSMUsycHM1bDdrTnYxVHdJWUNuNncveTl5NTROWTFIMXFBaGdsM0JwNndHN2FDRTI5MXoxTFZUTlRrK2Y0MjVWdkV6NGVQRzdjNlBTMGJUd1pDOHAvNjF0SzQvdDZvNSt3Zk9UbWdFZGJ1a0UrYk9RU1A5MnY2cVVFN01QQWF6dG1tTFhXY0E2SW1OUWU3aC9JNGh2ODkxelJUQUVzQXpJZElFQUJDQmdBZ2hnbkFNSVFHQXNCSHhqNndlZGJXb01haXFZcE5hMkNnTFlFR0Y5S1M2enYxdm9zc2psVU1ZN1N0cGUwblVsTlJHNTZ1WnF1cCtwRU1pMkQ4cDFOaUtBNVo2V3YvUmJ0UERRMU1KY29hTHB1SDMzandsZ3ErUVIyb1FKSG1EakNJRzhjdkZpNDBoSnUxWnNYdGRpTExHeExRQTlOb2hjRjBVT2pYK0wzaWZwSzVMMkN4NVM4MTFqaFhUNnpndVplNllkdm0xeHoyR2FPYzNpWWxYWXVOazhVTkpIYWdaQkFNc2hUQjhJUUFBQ0NHQ2NBUWhBWUVRRVV1S0dUVjNXamV3OHBwVFhUaHNiNjZwQS9sYlNUa1U1OXE4dGFLOGNjdUkzL0M3YjdrVEVYZkk0cFV4R0FKT09yb0hVbEUrSzk2TCtqZ0RXRCtuWTkwS2I3NWgrTEJwMmxIVVh3Q3c2MldPb2JlaGRIeDVnZmpIK2pFZ2w0MitHeFBmT1U5VzJ1Y0tqS3pqR21yOFBMVzdGdk1GbTRmUlZqR0xmTzh2NnZPUWt2NTl4Y0Fqa2t5WDloNlJOSytDVTg1MlZ1eUNBdFQyUlhBY0JDS3dkQVR6QTFtN0xXVEFFUmsyZ1RnaXk0V1B3M0ZpMEFOYTFQSHJ1aHZ0dDlXT0tmRjNPMmVYcVdJdG9UUVdlbEVpS0I5Z2lkaTA5QndKWW1sRk9qNjRDbU1PVEhUcGQ5VUNkTTM5ZmZWeGw3L2lNd2RaRkFJdDVLblg5ZmV0REFJdmwvZW9qOU5GSElKYlRhLzU0L0ViU1E0UEhrMU1mNUxiWTk0NlR5cjgyZDVDZStsbW9lMU5GRVF1TGgvYm9zamZiZkp2OXp0OHNlTGsxRmNFUXdIcmFPSWFCQUFTbVR3QUJiUHA3ekFvaHNFb0VubHZjSUI5UVkvREpSY1duZXhaVmt1d1Z0YXcyUlFITWViUGVGaExYTDVJckF0ZzBQY0Q2RUY0MmtMUjV4V0YwVGh3WE8ralNYRW55cVYwR1dOQzFYUVd3c1FpUnVaL3pSUWxnUXdsTnVlUEc5dVdrb29DSUt3YTJiUTVOZjJXRjRKbjdZc0Fldnc0eHJCSmZjcXMrV29oeGZraFhjWFZsWjYvVlF0QW5TNHZhTG9SWk91bDhyUDFiU0FyL3Uwd2dzZk9UZS80eXA4bnFkdk1paE5UN1dXYjVyMFdDL1Z1SFhKWHpBODIvNklxSmtPNy8vWEFQOUlPU0ZRaGdXZHRDSndoQUFBTGtBT01NUUFBQzR5Snd2M0JUSExQcXJKQ1A2dHRMTkh0S0FwaGZndXdieEs4K1FoMzlvT0xRbFZQRC8yMFNQTW9XVlFVeTkwR3Z5ZkVoQjFnVFd2MzFqWWtFdVNKRGY1WXNaNlNOUXlXNnFqeE11U0ZkQ0dEU3B3dFJhS1BTRm5ZOVExMlRyUzk2WDNLK0Y1M2owVG1tcXNRdkN6biszWE51TG4rblc3UnlMa2dMM2E2UzYvVmNPeUpZRzcxZlduMjA0bVBrYXNGdmtlVGYvVmo3b3FTOUpQMG80Mk00RmdITXY2dXZDeUdOODJaZklNbGkzSE1TQWxoZEdPcE1CTHVicERQbUJrY0F5emdnZElFQUJDQmdBbmlBY1E0Z0FJRXhFZkFiWTN0NStjWTQxcFpkRVhGS0FsamRtK1lZLzdPTG0vZ3ZGMGw1WFhIUlFwZmZTUHZoNU16d2dEUi9YZXBCcittYmVVSWd4L1JwSGRhV2RSZkE2czU2N25kZzZ2TTM3QTcrWmZUY3ovbTZlSURaKzhtaWxNUE9GOUZTQXBnOWdQOXJvRkJaaC92ZHFSRFF2aFJaYUU1STVLOGtQYWdZNTRRRXJLcWlOcW41aCtEdk1NWVQ1eXBXenVZNFR0TERpMEkvNzAwSVlPNXZMdllHZkh6RXdFOUk4dS8zT2VIdkNHQkQ3Q1JqUWdBQ2t5U0FBRGJKYldWUkVGaFpBZzdoK0ppa2JXdFc4RzVKKzNSSUZOd1Z6bFFFc050SjhnMTVLai9RZVNIM21yMG1MSHlkM3dCZzZnRTg5OEY0TmlVQ1dBUDRLOTRWQVV6NmNNV0RzcmMxOTNPVCt2d3Q2b2prMnJzdUFsanFONlR2ZlVrSllJOExZWXA5eit2eGNyMjI3eElxUUxvYWRGV3oxN2RETlArbnhrZ0xSazhxL1QxMy9yN1dIdlArOHZnUEx1NXQvSm11K2x4WDVmcTBDSFpJcUk1WlpaOUR1WjIzMHlKWTNXK2p3MksvME5jQ1MrUEV3bTRYbGJ0MG9HVXhMQVFnTUdVQ0NHQlQzbDNXQm9IVkpGQjFFenUvRXVmLzJhRjRrM3Jha3BhWGVuakpEVSthTjc4dStmOFFONUwyUFBCYjZEMXFHRHJYMHZPTGZDNEhTN0lJMXFhbEhzQnpINHhuY3lPQXRkbUYxYnhtM1FXd3VwY0J1WitiR0VONzFQZ2gzSi94UHB2RHNzckp2VDErcnIwSVlIM3V4bC9HU2dsZ1EzcWtOZm45OHRseERyTHlDN0JVQlVTdjFNOHpoMHQ2U0FsaGsvbjdvQi96L3ZwTzRSVzJjMUZoMDJrQ2NnVXcyM1BsSXNUMFE2RVNkTmsrZjQ0dENycENkT3Ezc1krMU5SbGowZHliMkVaZkNFQmd6UWtnZ0szNUFXRDVFQmdoQWQvUTJRdXM3dnZweFlYZEwxcVM3Vk1Rd1B5Z2VxeWtXTjR2UDNEY1M5Sm5PekpHQUtzSG1EcEx1Y0pCeDIwYTVlWHJMb0RGOGt4ZFdJVFA3UkpDeFZNYkYyT1lFa1JTNDhiK0hoUHljOC94dWdoZ01ZOHJoNWVmMnhaK2tXL1J1Ulo5YnNvdHRkL1hDTi8xcms3WlIzUEZ5SjlKc3VoakwyTy9STW4xSExiZzgxWkpEd2lHZUt3SEpuS0R1cXR6a3gwVGNvVE9yeUcxOWo3V094c2pWdm5SZjdkbjJodHFoS282d2FqS1c5dHNuVHR0bGc4VkFhelBuV1FzQ0VCZzBnUVF3Q2E5dlN3T0FpdEpJQ2NNMGhXUUhETHg0eVdzTUNWYWpOMER6Ti83ZmlEWnI0YWRRMHo5TnIxclM0bVp1US9HTXp0U04vbERQT3lRQkwvcktXaDNQUUtZZEVwSU5qNVBzRWxPSXdTd2NTYkJyOHBWWlM5YjUrTHFFcW9XKzY1S2ZTKzY0dXFSSVZsOTdxZjFmNE1YdHNQaW5kL3JoMFdJMzNlTHhPOFc4WExGcnRoY0R2MTdXYWpVNnQvVFYwbjZVOEl3SitQMzUyV0xVait2YSs4RnBVellxUkRnanBkMGhaSU5QdzBlWEtlM0ZNQTgzSHkrVHVmL2NoN0ErV3E0cWQvRzNIM3RxeDhlWUgyUlpCd0lRS0IzQWdoZ3ZTTmxRQWhBb0FjQzl1NTZZV0tjM0xMc1BaaHpxU0ZXWFFCempoVS9FRzBUQWVPcVc3dUZCNW11N0ZLc0VNQ2tvMnNnTitYVGRiL0dkUDI2QzJDeDlmODJQRXc3N0NuVkVNREdLWURadytuUnBjMXJJbXpHOXIydEFPYnhEcEQwM0xtQloxNWMvajM0WGlHT2ZUNkUybG40c29mdzBPMnlSVlZLaDJaYVhNc0oxZDJ4RUJBL0diemc1bTA3c0xqK2VVTWJHd29heE5JS3pOK3J4SVNxbEdEazU3V25GM25TWENqSTNtUU9wWnh2Q0dBTDJHU21nQUFFcGtFQUFXd2ErOGdxSURBMUF0ZVg1TkxyNWJlNTgrdjBBNE85d0Z5SmNKRXRKZXFNM1FQc2xvR3RRMGFxbXIzRDl1OEpxQitvL0dBVmEwMEZudFJOZnNyVG9jMnk4QUJyUTYzN05RaGcxZUpONmtGNW52dzZDR0QrVG9oOWwvMmRwQTlXVkZ0MDh2QXUzM0ZYRCtGMjF5NGQ4OWk0RjgxVnlZM2xxdW9qdDJVWEFjeS90YmNwd3VxK0htenRFb3BaOWVtM29IVTFTZjUzaUdhUEtDZDdMN2NuaDd4aWZjMDV2NWZ6WTNyK3d5b21jU2lvcTJEYWE5MnRyUUNXc2ovMTI1aTZ2dSsvTi9tZTZudHV4b01BQkNCUVN3QUJqQU1DQVFpTWtZQy9tMTRTa3JEWDJmZDlTYzVuZGNZQ0Y3SHFBbGdxTE5FMzh1L3FnV2RPV0crUER5VUFBQlFJU1VSQlZBMENHQjVnc2FPMjdnSlk3SHZtV3lGVXpnbXdVMjBkQkxDcWNNSVVsMFgvZlY0TUdFb0E4WnE2Q0dCRE0wbTlTQmg2L3I3R3J4SjJuTHpmWVlsVk9kVEtudXBEN1grZEFMWnZVVGpvNDMwQktJMFRFNE1Sd0FZQ3pyQVFnRUIzQWdoZzNSa3lBZ1FnTUF5QkxZczNweWNVdWFodW1CamVONTdPaitGUzRJdG9xeTZBcGV4dktrckZtTjg4ZUpwdFdyTXBUZWRLdmVYR0Eyd1JuNERGekxIdUFsZ3NVWHFUTTQ0QXRwaXptcHBsWGd5SUpaeHZzcSt4K1JEQVVqdlIvZTlsWWNmNXlnNlI5TmlLb2N2ZVgrNnlEQUdzNmU5c0UwcXhNNGNBMW9RaWZTRUFnWVVTUUFCYktHNG1nd0FFR2hLSWhSV1VoM0hveVdNV0pJS2xCS1N4aDBDbTdPL3JaamtuajF2VHVkWk5BT3ZMRzYvaHgyNFUzZGRkQUN2blpKcHR5bitHQk5pcHBPRHVqd0EyaXFPc2VUSEFPWnhPbG5UVmttbE45aFVCYkhuN1doWjI1cFBUbDYycXVoZEFBRnZlM2pFekJDQUFnWXNKSUlCeEVDQUFnVEVUOE50VmgrUHRsV0ZrVldXa2pNc2FkMGtKU0tzdWdEbGhzQk1IZDJrM2szUmlVZmJkQ2ZmcjJyb0xZTEhFelRObWZleEZsMzFjNXJYckxJQmRUdEs3ZzJkcmVRK2FKUFZHQUZ2bUNmN0wzUE9pU1N3RXZjbStJb0F0YjEvbjk5TFZIcDM0L3I0VjVud3o1Q2o5WmVsdkNHREwyenRtaGdBRUlJQUF4aG1BQUFSV2dzQldJWC9GalRLc2RWNmNoNFJTNURrZUVobEQvbFdYVlJmQVVxTExjVVcxcnowbG5kY0dqcVFyUzNMcCtWMHpybDkzQVN3bVVNelFtZVBlUlM2OEN6TllUcTNMT2d0Z2RaVmFIMS9rZW5wejVtWWpnR1dDR3JqYnZHankxQ0pwLzJzcTV1dkQyNU1ReUlFM1VycVVONTluOC9mekVSWFQ3bE9rYnppODRyOGpnQTIvUjh3QUFRaEFvSllBSG1BY0VBaEFZQlVJM0U2U2habTZmRkx6NjNEbHI2ZEpPcjNueFcwY0V2UGJ5eXZXeHU0QjVrUzluNUYwemNnQ0xCdyt1Q2kzL3A0VzdPcnlvVlFOdCs0QzJIVWtuVkpUN2ZTblJYTGxuUVk0eHkyMmR1R1hyTE1BRmx1N2hkQmRRZ2hkem9hc2d3Q1d3MkVzZldJVklQMnk0YzZTdnREUjBERUxZQjJYVm5uNWhzRURhNCthd2I4cTZhR1NYRHhpaU9hY2J2WjIzbnB1Y0NlY3Y1K2txa3FhQ0dCRDdBSmpRZ0FDRUdoQUFBR3NBU3k2UWdBQ1N5VndyM0N6dTFFREs0NlY1Q3BNbjVmMGh3Ylh6WGYxOTZTOTBKNGs2UjhsK2FhN3JvMWRBRXZsMGZMYWZpM3A3b0ZiTGpibnRIbEx1UEhQdldiZEJiQk5KQjFUZUN6YUt5L1d5bFhFY3RtdWVyOTFGc0JpQ2ZCL1huakQ3aURwdE16TlRYa1laZzdUdVZ2dTV6em1YZHRIZ3ZqNVJmajczS0ZwVGJ4Yy9Udmc3MFFMS3Q2SE5pM20yZWY5dkdQeCsvS0xOb1BPWGJOdUFsaHVqdEEvRnIvL0RpZC9mY005ejkyTytYeVh2dytoajZkR0xrWUF5NlZLUHdoQUFBSURFVUFBR3dnc3cwSUFBb01RYUNPQzJSQ0xYNStXOUlId3I2c3puU1dwSENicDcwUUxPZjQvUDVEc1ZvaEE5MnpnZWVhNXhpNkEyY1luU2pvNHNVTm01bkNyZDBxNnFLYXZ2YjRlS09uZkpGMnAxTTllZXc2RmRFNmpxcGI3WUR5N05pWGU5ZjJnN0hsakQ1VXptdzR0UExSY1pyNXRPeWlJcTNYWHYxRFNxeUlQYjVjTjNpTmZEc0psV3p2R2R0MjZDbUIxK2IrYzU5RDVobjZYdVZrSVlIOE5hdVpOL08wUUx2K2pESmIrWGRndkNDajJ5blI0bTc5cm1yYllmbGdFZHpMMTg1c09XT28vRmdITXZEWVBSUmp1Vm54MzJYUGFvWis1NXpZSFExT3ZjSTlwRDd0SERPQU5Ocit2cVJjV0NHQTV1MHNmQ0VBQUFnTVNRQUFiRUM1RFF3QUNneEM0ZzZTak14S3NEeko1eHFDcklJQmR2eENtVHFvSnZadGY1djhXSG5EL1VZVGkrZUhiWVNRV3c1ejgxdzhnRmlRdGZsVjV4Ym4veThKZXhiejJFTUNrM1lNWFdPcjMyUHZnWERPZkN6bkJMSlQ0cytCd1ZYdXkzRjZTaGQycHRGdUVBaGpsc0dkWGZQWEQ5RlJiWFlpeVJldjlHeXdjQWV6U3NNcjVKSjB6OGtHU1RxaGg2cytsQmU2M1NicE02R2VQSXAvQk55UmVEcFNIZlpha2wxZk0xZVkzbzhya1pRaGdaYkhMU2Y1ZEJHWEd5bmIyL1dLaVNWN1FNaWUvMkxFMzJMOTI4QW92aituZlA2ZGQ4SXV6ZXhRdk5NNnNPVThJWUEyK3dPZ0tBUWhBWUFnQ3FSdnVJZVprVEFoQUFBSmRDVnhQa3N2R1d3QVlXMnZ6TUdNdnE0ZEhGbEl1dTk3WGV1M2Q5Y2ErQml1TjR4REt1NFNISUh2ZUlZREZRYnRvZ0QzbHR1K3dGME9ka1E0bWNXbExBczVYVkpVODI4UForOHZpZjI1REFQc0xxVmh4ampveHEwcjhtbWR2aitMSEJtL2kxSjdFaEkrbWVkM3E1aGxhQUxPM3IzOTdmYTZjaTg3ZXZYK2JXcmlrcmw2eTgxTTRkNlVyTHpvM1lsVjduU1R2cVhPQTFqVy9TSERCbkJ3UHdJd2xYdnd5eUM4cG5HNmhyaUdBNWRDa0R3UWdBSUVCQ1NDQURRaVhvU0VBZ1VFSitLMnI4M0k1NU1BMzVzdHV2NUgwbE9DbDB5UzNqTzFlaGdEV05HRjlMbCtMWDN1RlNweXBCM0E4d0M2aGFnNzJJSmozbXNqbDdYNElZRTFvamJmdnpKUEV1YWJLclUxQmhOVG5iMUVrY2ovblErVUFzL2oxN3FMZ2hMMHRxNXBEOHl4Z2xNTWF2UitIU0hwa0RhanZoTHlIRHFtc2EzNVo0MlRwOXA2ZGIvYXFkUUo4ZTZOMWJYMEpZTE5VQVBiQ3RLZXZVd0hjcGdnQnZVcExBL3NTd0N5K3ZVL1N0aEU3N0hYc1VOSnpBbE43N2RVSmRMbGgvaTJYWFhrWkFsaWZOQmtMQWhDQVFBc0NDR0F0b0hFSkJDQXdLZ0t1cFBmYUlMb3N3N0FmRnNMRlM4S05lVlBoYTJidk1nUXd6KzBIdzdkS2VrQlA0T2JGTHcrWmVnRFBmVENlbVRmRkhHQmVtMytMbjFHRWtyNmk1VDRnZ0xVRU43TExZaUtKelR4UzB0NGgvRFhYN05qbjc3dmh4VUhYbkZPNWR0amJ4Z0plcWcwaGdLV0VmbnNMT1l6YmZLdWFjK3pabTZqdXMrbkU1dzVGL2xCRlhzblo1OXZocTg0alZtNU53MXJyR0xZUndEWW9jbVArWFJDVkxNUTVsUHE2cVkxcStQYytCRERiZGxnUmlycGxaTzZxd2kzT1NXbStNZS9xMlZCKytmQ0VEc1VObXVCQUFHdENpNzRRZ0FBRUJpQ0FBRFlBVklhRUFBU1dRdUFta3A0cnlaV2gybnJTNUJydWh5YUhLVG54K3hjYjVvR3BtbU5aQXBodHNaZUR4WmNYNXk0KzBxOHFwQVFCTEIrcUg5U2RJK2lsK1pmOHVTY0NXQXRvSTd2RTkyTXhrY1NtV21DeEYxT1RGdnY4OVoyVHFZbE5kWDM3RnNCeXhDK0h3VG1rcmx3UVpkNU83NDF0Y3c2K3VpckUvdnkrcHVMMzRPWWg1Mkk1bjEyZjRZKzJ0NDBBbHZxTzdtTnYyNlFGbU0zcjM2Y25GMTdlQjlUOHJ0ZUptTjQ3NTNtek4xamQzdG1EMitISEgwbWNoYTQ4RU1DNkV1UjZDRUFBQWgwSklJQjFCTWpsRUlEQTZBaTQ0cFFyTno1R2toUHk5aVdHblNIcHFQQVE5S1VlRStnYTRESUZzTmtHV2tCMDB2bzlHKzZvUGVBc1BOcURvbHd0TXZWd2hRZllwV0g3TjltNWRSeDJ0WFdEZmJENDZBZjB1dVRMRFlhajZ4SUl4RVFTbStMdm5oMHl2YWptVFY4MUFleHhrdDVVd2I2TllHZnh5OTluc1Z4UUZrMHNyUGl6VmlkK3padXpYZmllaTNraHVlODdRcFhkV2NYRE9tSHoxS0tvaGNOZEhiTFhSMnNqZ0RtczhXTTFZWVZON1RMWGI0WVErSThYMzB2K3JYUnVyRnpHOC9QWk0rMDlpZS9DbEFmZmJMemN2S0YrcWZYTW5pdFd6cThKQWF6cGlhSS9CQ0FBZ1o0SklJRDFESlRoSUFDQlVSRncrSXB2Zkhjc2J2THZHQktOWHoyOEthOHkxQTh0WjBuNm41RE0xZzhvWHl1OHluN1FRNG42VVlHcE1jWmhrYzc1NHJmbURvZnhROVc4aUhoMmtUejRlMFhZakJOQS8xZngxdno3TFI5dVZvWEhNdXowYi9PTkpQMTl5Qy9rTU4vWlBqaHZ6Yy9ESHZqQmxUMVl4ZzcxTzJmSys4c2lqZk1kTmhVUlZra0FjMVZUaDdnNXpMUGNtb2JRcGNRdmoyOXZyVmUxWUhyRDhKbHpwY05ZczZlZUswZGVrQWdEOTU2NmttUmY3WmJCMDJ5VDBvQXBBZkdnY0w3YTJHR3h5OTlEWGNXdStibjlmV2ViVWk5akxIN2xlUEROeHJZM21kTVZQRDJ4VUwvVXNjZmxGOW9BU1Z5REFEWUFWSWFFQUFRZzBJUUFBbGdUV3ZTRkFBUWdBQUVJUUFBQy9SS284NVMwaUxKejRTbGtMNyttYlpVRU1DZW9kL2habGNldXc5ZnMwWnZUaGhTL1p2UFhWU0tjejBWbHdjWGhsWHRVR042bXFFRnEvVThNWWJUbGZpa0IwZXlQQ2JrSTYrYndpeUVMWGQ0bm44ZWY5UkQrUHovZjlZc0tqaThvS2pNK0lyWFF3a3ZMZWRlY3U4MjJOR2wrN3JGbnVLdEliMVp6b2NXMTV4UjVNbDFWMGk4ZCttcHRCRENmNmFzbXZObnQrVzRCMlMrdHlzMWlyUGR0aU9ZWGlqNDcxeTRON3JOaVQveGZWa3pxN3pTL2FHd3E2QTloUDJOQ0FBSnJTQUFCYkEwM25TVkRBQUlRZ0FBRUlEQUtBbjY0ZlZkTkVROVh2WE51b2pZUDRYNW8zcW1pU3E0ckRwN2NNS0YrQ3BZZndQMWcyOVJPcjkvZXBtK3V5ZEgwK1BEM2xBMGV5NTVEN2g5ckR0ZCtaUS9DVFZVQkVZdGZyaWI1MlRDNTdYaGp4QkRuWEh4UmFrRU4vcjU5cUNSclQ5RnlTeVhhMzBMU1p5UnROWGVodmFGUENaNis5aUN6MTIvVHZjMHgzMTdhdHYyZmE2cDBsc2ZKcmJ4Wk4zOXVTS1FyUzFxUSswbk9Zakw2dEJIQVVxa0VNcVlkVlplVVIrS29qTVVZQ0VCZ2VnUVF3S2EzcDZ3SUFoQ0FBQVFnQUlIVklPQThlSzVDVitYNVpFSEozaW9ucmNCUzdsZXFwRGdMMVowMzNWNGZ6Z25sWElFV2tHNFhLZzdXNVdtMHA4K2R3blYxR0N6QU9YK1lpNkRFV2wvaTEyejgrVG05WG9kdk9qVGM3ZGFGM1NkSUtpZSs5OS9zT2VVMU9iUytyamtubXZPWW5SdkM4cjhlT3Z2Ni94dit0ejF3N0FubEtvbXhaaVlXV1dQTjRhY0hCb0hMbmtJdTdPSTVoMnhYay9Ub0VJNjRlWU9KN00zbTBGRW5yZS9hN0tIbjVQcFBTUXpVWjRKOEJEQUpBYXpyeWVWNkNFQ2dFd0VFc0U3NHVCZ0NFSUFBQkNBQUFRaTBJbUR4d2lKSkxKOVVGKyt2VmdaMXVDaVdmNnJEa0JkZmVseklCWFZlelVEMmRIT0ZSdWN1akxXK3hhL1pQQlpSWGgzMjBZVkEzQ3p1K1gvdkdqRW0xL3ZMNHFmemEzVzVWM2UrUUJkUU9LM3JSdlJ3dlVVdjV6VjBxT2F0R281bnIwWG4renErNTlBNXM5MUgwbHNyUENYTEp2YVJJQjhCREFHczRkR25Pd1FnMERlQkxqK3FmZHZDZUJDQUFBUWdBQUVJUUdCZENOUUpKYm1lVDJOaDVYeEs5dXpZcGtlRG5JZkorYW5xOGhjNVlibzk2TFpkZ3ZoVk5hWERNRjIwNExFUmU1dzAvaTZSM0VqbFMyNGFRbFV0OExWdHJ3OGVUc3ZLdCtTaUFZOHNQTmJ1WDRpVXJqVGNwcmxRd1BONjh2cUt6WjlUNGRQWGZqV0U3RG9rdEUxREFFTUFhM051dUFZQ0VPaVJBQUpZanpBWkNnSVFnQUFFSUFBQkNEUWc0THhMRm5oYzlYTytMVnU0YUxDRWk3czZqTTdWRHkxMDlOVlNsUnBkN2REaVY4elR5bmE0NHQ5cmUvWWFpcTNQOTlUUGtQU0tTQWVMVUs0dStKNU1RRjFGUlZmb3ZWc2hRSjJST2Q4UTNlcENmRlB6MlFQeXFUM20zMHJONStJR2h5Zk8wM3lSZzlSNFZYOUhBRU1BYTNOdXVBWUNFT2lSQUFKWWp6QVpDZ0lRZ0FBRUlBQUJDRFFrNEZ4WUR2V2I1WXR5dUpwRm5SODFIR2ZaM1IxbTZKeEtYWnZ6YVZtNHNpZVY4NFhWdFpnSG1MM0huaHpHV0tUM1U1MG5VZE9RVnVjWU95b2h5TVRZT0kvWFhpTTRReFpHbllTL3JqQkJlUTJ1WnVoejlOMnVCNm5GOVhWNXdYeW1uRzl0RnVyYVluaTFFY0JpeFN6YXpEK0dhNFlvd2pHR2RXRURCQ0N3SWdRUXdGWmtvekFUQWhDQUFBUWdBSUhKRXJEbjFIdER2cWNtWGtKakFsSk9oTi9VTm52WHZEM2sxSEtpOTl4bXp4MnpjOFZMTndzVlRyRCt6Z1Y1ZnBYdGROamZmNVZ5dTdYMXh2SWFIcDRMSW9oR1RtaHZzYTB1YjFxRElUdDNkY1ZGVjFPOFFjMUl0dFZDbVN0MG50bDV4bTREK05sb1AwbjJ3cHdWYVBDWmNnNHluN011Z21vYkFhemJhcmdhQWhDQUFBUXVSUUFCakFNQkFRaEFBQUlRZ0FBRWxrdGdGajduUEVuMmxyRVgxS3ExRFFyUjRDcHpSanZwK2RhSlJmdy9TYTV1ZUk0a0MyQnQyOHdUekRuSTdLWHprYllEOVhUZHZHZGFWODhoNXhXekYxQmR0VXpQNFNxYll6MDNQdE52ckdCN2JGRTA0SFZGRmN0UGp0QjJGeUd3a0dqUHpGUTRidTZ4UVFETEpVVS9DRUFBQWdNUlFBQWJDQ3pEUWdBQ0VJQUFCQ0FBZ1FZRUxodEVqckdLR0EyV3NwU3U5Z1J6WVlGbGhNNVZMZGoyT04rWHhiaFhkZlFjV2dyUUhpZTFHUHBSU2JjTmxSeGRkZkdZSW1mYTczcWNZNGloWElqZzdpR1V0by9QcFVYaUoxWGsvTE40K2ZLT0l2QVE2MmRNQ0VBQUFwTWpnQUEydVMxbFFSQ0FBQVFnQUFFSVFBQUNJeUJnN3kxN1o2VnltWTNBMU1GTnNEanA2cVo5Q0VtREc4c0VFSUFBQkNBd1RRSUlZTlBjVjFZRkFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdFQWdnZ0hFVUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ1pOQUFGczB0dkw0aUFBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRUXdEZ0RFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQXBNbWdBQTI2ZTFsY1JDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSUlZSndCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdVa1RRQUNiOVBheU9BaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVFTU00QUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0F3S1FKSUlCTmVudFpIQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBQ0dHY0FBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBWU5JRUVNQW12YjBzRGdJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUJqRE1BQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ01Ha0NDR0NUM2w0V0J3RUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJSUFBeGhtQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFtRFFCQkxCSmJ5K0xnd0FFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUVBQTR3eEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJVEpvQUF0aWt0NWZGUVFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNDQ0FjUVlnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUprMEFBV3pTMjh2aUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQkRBT0FNUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNreWFBQURicDdXVnhFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWdoZ25BRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCU1JOQUFKdjA5ckk0Q0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRUXd6Z0FFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlEQXBBbjhmMnYydk9PSUtZalVBQUFBQUVsRlRrU3VRbUNDIi8+PC9zd2l0Y2g+PC9nPjwvZz48L2c+PGcgZGF0YS1jZWxsLWlkPSJkcmFpbiI+PGc+PHJlY3QgeD0iMTE0MiIgeT0iMTQ4IiB3aWR0aD0iMzMwIiBoZWlnaHQ9IjEwNSIgZmlsbD0iI2ZmZjJkOSIgc3Ryb2tlPSIjMzM1NTZmIiBzdHJva2Utd2lkdGg9IjIiIHBvaW50ZXItZXZlbnRzPSJhbGwiIHN0eWxlPSJmaWxsOiBsaWdodC1kYXJrKHJnYigyNTUsIDI0MiwgMjE3KSwgcmdiKDM4LCAyNywgNSkpOyBzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDUxLCA4NSwgMTExKSwgcmdiKDE0NCwgMTczLCAxOTUpKTsiLz48L2c+PGc+PGc+PHN3aXRjaD48Zm9yZWlnbk9iamVjdCBzdHlsZT0ib3ZlcmZsb3c6IHZpc2libGU7IHRleHQtYWxpZ246IGxlZnQ7IiBwb2ludGVyLWV2ZW50cz0ibm9uZSIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgcmVxdWlyZWRGZWF0dXJlcz0iaHR0cDovL3d3dy53My5vcmcvVFIvU1ZHMTEvZmVhdHVyZSNFeHRlbnNpYmlsaXR5Ij48ZGl2IHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiBzdHlsZT0iZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IHVuc2FmZSBjZW50ZXI7IGp1c3RpZnktY29udGVudDogdW5zYWZlIGNlbnRlcjsgd2lkdGg6IDMwNHB4OyBoZWlnaHQ6IDFweDsgcGFkZGluZy10b3A6IDIwMXB4OyBtYXJnaW4tbGVmdDogMTE1NXB4OyI+PGRpdiBzdHlsZT0iYm94LXNpemluZzogYm9yZGVyLWJveDsgZm9udC1zaXplOiAwOyB0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiAjMDAwMDAwOyAiPjxkaXYgc3R5bGU9ImRpc3BsYXk6IGlubGluZS1ibG9jazsgZm9udC1zaXplOiAyMHB4OyBmb250LWZhbWlseTogJnF1b3Q7TWljcm9zb2Z0IFlhSGVpJnF1b3Q7OyBjb2xvcjogbGlnaHQtZGFyaygjMDAwMDAwLCAjZmZmZmZmKTsgbGluZS1oZWlnaHQ6IDEuMjsgcG9pbnRlci1ldmVudHM6IGFsbDsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd29yZC13cmFwOiBub3JtYWw7ICI+RHJhaW5pbmc8YnIgLz7lgZzmraLmlrDlhpkgLyDmjpLnqbrniYfmrrU8L2Rpdj48L2Rpdj48L2Rpdj48L2ZvcmVpZ25PYmplY3Q+PGltYWdlIHg9IjExNTUiIHk9IjE3Ny41IiB3aWR0aD0iMzA0IiBoZWlnaHQ9IjUzIiB4bGluazpocmVmPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQk1BQUFBRFVDQVlBQUFCNlFsOElBQUFBQVhOU1IwSUFyczRjNlFBQUlBQkpSRUZVZUY3dG5RY1lMVlY1cnIrTDVhSUdGYXl4ZHhHTkxmWUdkZ1dqc1JIc1hORllrV3VzRjdzUjBkZ0xpdld4WUVQUnF4akViZ1FMZ3NZT1JrV3hvNElpRUxrS2V1ZmpySzM3ekpteVptWk4zZTk2bnVQQnMxZDkxNXE5Wjc3NXkvOFFCUUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0N5YndQeGE4TnBZR0FRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVoZ0hFSUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQlpOQUFGczBkdkw0aUFBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRUXdEZ0RFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQW9zbWdBQzI2TzFsY1JDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSUlZSndCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdVVVRRQUJiOVBheU9BaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVFTU00QUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0F3S0lKSUlBdGVudFpIQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBQ0dHY0FBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBWU5FRUVNQVd2YjBzRGdJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUJqRE1BQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ3NHZ0NDR0NMM2w0V0J3RUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJSUFBeGhtQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFXRFFCQkxCRmJ5K0xnd0FFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUVBQTR3eEFBQUlRZ0FBRUlBQ0JPQUlYbFhRQlNYK1FkS3FrUDhjMVczeXQ4MG5hU2RKMmtuNGo2YXpGcjVnRlFnQUNFSUFBQkNBd093SUlZTFBiTWlZTUFRaEFBQUlRZ01EQUJHNHM2VzJTZGw0YjkwZVNIaW5weUEwV3dpd0dQbHZTRTRQNHRjTHpSa2xQQ1NMaHdGdkZjQkNBQUFRZ0FBRUlRS0NZQUFJWUp3TUNFSUFBQkNBQUFRaVVFN2lKcEk5S3N2Vlh2dnhKMHA2U0R0dEFnTGI2T2tqU3cwdlcva2xKOTVaMDJnYXlZY2tRZ0FBRUlBQUJDRXlRQUFMWUJEZUZLVUVBQWhDQXdPQUVycFE5cUQ4K3VMZDFIZnlya240Wk9yR1YwRW5CRXVhUFhUdW0vZUFFL2tiU2h5WHRXakh5VHlYZFd0SVBCcC9kdUFQZVM5TDdKRlhkU3o0bm02SXR4Q2dRZ0FBRUlBQUJDRUJnZEFJSVlLTnZBUk9BQUFRZ0FJRUpFUGg3U1orVmRNRWU1K0xZU0I3amNFa2ZrZlR6RFhhZDZ4RnowcTZ2Sitrb1NUdlU5R3BMcC9jbkhYbjZuZG5OY1orYWFSNHRhWGRKcDA5L09jd1FBaENBQUFRZ0FJR2xFMEFBVy9vT3N6NElRQUFDRUlnaE1JUUFscC9IYnlXOVZkSnJKSDBYTVN4bW13YXZjMWRKUjBTTSt0VE1ldkNGRWZXV1V1VkNrajZZaVlPM3IxbVFMU0J2RnNUZXBheWRkVUFBQWhDQUFBUWdNRk1DQ0dBejNUaW1EUUVJUUFBQ1NRbU1JWUN0TCtDRUxIT2VSUlM3MjUyVGRHVjAxb1ZBN0xuWVJBc3dpN2NQcm9HTEJWaVgwMGRiQ0VBQUFoQ0FBQVNTRWtBQVM0cVR6aUFBQVFoQVlLWUVZb1dPdnBmMy9jeGQ3QWtJWVgxamp1Ny9JaUVBL2swcldteHFETEM5SkwycmhpUXh3S0tQR2hVaEFBRUlRQUFDRU9pYkFBSlkzNFRwSHdJUWdBQUU1a0JnS2dMWWl0V3hraDRvNmIvbUFHL2hjN3k3cEE5STJxNWtuVTZlOFBLRk15aGFuaE1FT083WkhVdlcvblZKZTBqNnlRYXlZY2tRZ0FBRUlBQUJDRXlRQUFMWUJEZUZLVUVBQWhDQXdPQUVwaWFBR1lDelJqNVIwa0c0UlE1K0h2SURPZ3ZrbXlSZGRlMkRYMG5hVjlLaEd4eS96YkhBRGd3YzFwbTlOOHQ4K2poSnZ4aDk1NWdBQkNBQUFRaEFBQUlRQ0FRUXdEZ0tFSUFBQkNBQUFhbE9BSE1td0ZkR2d2cWZXWlpIdTh4WkhIQy9Wd3YvSGRsOG0ycTJzbmw0SmlpYzJyWUQyaVVoNEh1bW5TU2RQd2lTcHlCTS9vWHI5cEoyRFAvUEdSL1BTRUtjVGlBQUFRaEFBQUlRZ0VCQ0FnaGdDV0hTRlFRZ0FBRUl6SlpBblFEMk5ra1A2YkE2Q3dUWGxlUmc2WFp0dkV6RHZvNlRkRS9jeVJwU296b0VJQUFCQ0VBQUFoQ0FBQVFDQVFRd2pnSUVJQUFCQ0VDZzNnS3Nxd0MyenRpL3ZWY01MbUtQbFhTK3lBMzRycVRkTXdIdGU1SDFxUVlCQ0VBQUFoQ0FBQVFnQUFFSUlJQnhCaUFBQVFoQUFBSi9JZEMzQlZnWjZndG5iblRQa0xSZnBCQm1FY3hCeDA5aTd5QUFBUWhBQUFJUWdBQUVJQUNCZUFKWWdNV3pvaVlFSUFBQkNDeVh3RmdDMklyb2xTUzlVOUxOSXhCL01yaFNuaFpSbHlvUWdBQUVJQUFCQ0VBQUFoQ0FnQ1FFTUk0QkJDQUFBUWhBWUZnWHlETGVkb1Y4aXFSL2pkaVFOMGg2VE1nVUdWR2RLaENBQUFRZ0FBRUlRQUFDRU5oc0FnaGdtNzMvckI0Q0VJQUFCTFlRR05zQ2JMVVAvbDNlTTFpRGJWZXpPUS9LTWt3ZXdnWkNBQUlRZ0FBRUlBQUJDRUFBQXZVRUVNRHFHVkVEQWhDQUFBU1dUMkFxQXRpS3RMTkZIaXFwU2dUN3VhVGJFQlIvK1llVEZVSUFBaENBQUFRZ0FBRUlkQ2VBQU5hZElUMUFBQUlRZ01EOENVeE5BUFB2ODVNa3ZiQUc3U3NrUFY3U24rZS9CYXdBQWhDQUFBUWdBQUVJUUFBQy9SRkFBT3VQTFQxREFBSVFnTUI4Q0V4TkFETTV4d1I3aDZUN1ZtRDg3MkFGOXVYNW9HNDEwNHRtWXVBRmNpMy9JT2xVeEw5enFXd3ZhY2MxUHVkSU9pWExNT3EvTjduNFBuY25TZWRmZzNDNnBETW1DcVZvdnB6emlXNFcwNElBQkNBQWdma1JRQUNiMzU0eFl3aEFBQUlRU0U5Z2lnS1lWM2x0U1orUmRQR0tKUitVaVIzN05oU0NMSzVaR0NoenNhd1NDUzRrNlo2UzlwWjBYVW1YQ0hNN003aGoyblh6WlZsQS85KzMyQ2JQNnhxUzlwQjBKMGszekFrN1JWMytSdExISkwwbHNEcXJ4YmhWVGZMaVVyNnV4Mjg2WmhmK0h2OGlrdjRoN0lIZFlOMWZVZm1scEk5SWVyMmtZeElMWWtWaXpmb2MyZ28zUldMbnF0ODZZZTg4bWV2d0xwSWVKdWtla3E1WXd1VlBrbzRMc2ZZY1I4OWk0UmpGWjJzM1NYdEp1bU8yVDVlcG1NUkprdDRqNlUyU3ZsdHl2ZitOcEIwcTFtekIrSTlqTEpReElRQUJDRUFBQWxNZ2dBQTJoVjFnRGhDQUFBUWdNRGFCcVFwZy9wMStycVNuVndENnFhUmJTL3BCQTRoMTYzMXFnZnVsTGJBc3REMnZRbkR4Rkg0azZXYVNIS01zcGxpMHVLbWsvU1RkcHlidVdWMS9GallPRG5PTUhiK3VUd3ROSDZxb2RQY3NpY0xoZFoza1BtL0QzMTFjTG1RSnRmall0SGhmN0ZaN1dDSWh6R0xMaHlYdFdqS1IvOGhFcHJ1MXNMWjZxNlFIbC9SWmRyWjhoaHczNzBXU3J0QVVUQkJQbjVFSlp6OXAwYlpORSsvamM0S0FXWmZzb3FqL1k4TzErS1djRU9Zc3NpOG9tZENtV0l1MjJRL2FRQUFDRUlEQWhoQkFBTnVRaldhWkVJQUFCQ0JRU2FCT2tIaGJKakE5WkNTRzE1RjBsQ1JieHBTVlIwcDZYWVA1MWEwM0w0RDVnZjBEbWVCeG80Z3hZZ1d3cnFKRjFWVDhzTDlQc0pqcEdoOXRDZ0tZV1QxRzBvdHJ4TWVJN2RGN0pmbTgyQnFvUzVtS0FIYWxZTWwxOHk2TGtmUzd6TExxQVpMK3ZhRTFaWk5oTFNKYjBINWlrMFlWZFgwZW5ybG1iWWtBbGdnczNVQUFBaENBd0RJSklJQXRjMTlaRlFRZ0FBRUlOQ05RSndpTktZQ2RWOUxiZzV0VTJhcU9DQll3c2E1NGRldGRGOERzUnZieExCN1oxU09SeGdoZ3RocXlLOWRWSS90c1c4MVdOZ2QwZFBzYVd3Q3p5K21yZzdWUVd3NzVkaFpVOTh5RXNGOTA2SEFLQXRqdGdzaFo1U0xjWkltMklMUndhaXUwcnNKcGZ0eHJaUzdENzVlMGM1TUpSZFE5TW53M25KWUpZUWhnRWNDb0FnRUlRQUFDbTBzQUFXeHo5NTZWUXdBQ0VJREFYd25VQ1VKakNtQ2VwZDNzUGxpeFlSWXlicG01anAwWXVhbDE2MTBKWUJZNS9ORHUrRVN4SlVZQXEzSnppeDBudHA1RkFidkd0UlUweGhUQUhPdnJqY0UxTkhhOXNmVStHVVJUQ3lkdHl0Z0NtT1BFT2Q3Y0JkdE12cUtOUlRDTGczWVZUVlZzbldZMzJsUkNYWDVlcTcyMFpSOHVrS2wyalg0Z0FBRUlRR0J4QkJEQUZyZWxMQWdDRUlBQUJGb1FxQk9FeGhiQXJwS0pVSi9MNGx0ZHVtUnRGbmNjTlA0VGtXdXZXKzlLQVBNRDlXc2orMXhWbTVvQTVtRHNkd2h1cEEyWGNtNzFzUVN3bDJZSkJwemc0T0Z0SmgzWnhxNTRMNG1zbTY4MnBnQjJlVWtmclhFTGJybXNjNXVkRUVUZkZESEJidEx6WEZmcmZFV3c2RHV3Wk9IRUFPdHlJbWdMQVFoQUFBS0xJSUFBdG9odFpCRVFnQUFFSU5DUlFKMGdOTFlBWmpjNFc0RGR2bUtkVDVCazBTU20xSzNYQXBpdGErd3FkOW1ZRHRmcXBCREF2aE1zY094NitlMlFwYzhaQUZmRjRzc05KTzB2NlM0Ujgyc2JrTjFkanlXQU9ibUJYVi96eFJaSzc1UGs3SVgvdVJiUTNuSEN6T1NCRFpJSk9GR0FzMGgrTDRKaHZzcFlBcGd0djk2Y3hlcTZjY0djdng4K3M3WFZlbWJIaXdVcnlvYzJjTHQxc2dmSDEycHJPZWpwTlhVZi9tcDJ2YjFCMG1kejh6OS9TSFR4b0NEbUZnWE85N240Vm5iZC9GM0pYaUtBdFRqa05JRUFCQ0FBZ1dVUlFBQmIxbjZ5R2doQUFBSVFhRWVnVGhBYVd3RHpxbDRaTXIrVnJiREpIT3ZXYXdITUFidWZWVENZUlJsbld2eUtwRlhNTVlzaHV3VHh4U0tkTGE2cXNqQVd1VUQrS2dSNWQyeXdkZkdpYmtldkcrSkFWY1ZXc29peGU1YWQwdkdTbXBZeEJMQzNTTHB6bHRqZ2I5Y21hNEhEQWRSZkZnSzJWNjNqd3BKZVZaRk5jYjJ0NDZROXV5bVViSy9HRU1Bc0N0cktNWitRd3NLUnJSWHpXUkh6eS9KOXI4L21PeVBjRWR0a1YxMGZyNG43c1BmYmV4dVR5ZFZpbnZmcnNRMzNEQUdzSVRDcVF3QUNFSURBOGdnZ2dDMXZUMWtSQkNBQUFRZzBKMUFuQ0RVUmw1cVBIdGZpRVVGNEtxdmR4TXFwYnIwVzIreFN1UzRxSFpkWm1OdzNDOGIrdzVycE9sdmxtVFdCNTljRk1HZmZlM1N3T1B0akhJcHRhc1ZZMnJ4YmtpMW96bTQ0eGhnQ1dINktQdzd4dW81dE1IZGJoRDFaMHZOcjJ0amRiemRKSnpmbzIxWEhFTUNLcG1oQjhHbHJtUkJqbG5FMVNVNGNVWmZZWWQrUWdDQ216M3lkR1BmaFgwdTZmeEQxbWxxYTJRTE9jY3JzRGhwVEVNQmlLRkVIQWhDQUFBUVdUUUFCYk5IYnkrSWdBQUVJUUNDU1FKMGdOQVVCckU2SXNVQmwwZW8zRVd1dVc2OUZrV3RLV3QwbjJPWHVZWkxhQmt6UFQya2xnRG03b2NVTGkyQmRpd1AxMjhLcnlEM01mYmUxNktuajdnUUZoemVjZkIzLzllNmMyT0J1a281dk9JYXJueThpamxoYjY3Z3BDR0Jkc256R3hPWnluTEY3TmhUWHpOMENtOTBZMXkzNDh0dG5VZE5ueDlacmJVdXNrT2YrRWNEYVVxWWRCQ0FBQVFnc2hnQUMyR0sya29WQUFBSVFnRUFIQW5XQ3hCUUVNRnQ4Mk1yTHJvbEZKU2IyMXFwZDNYclgrKythTGJCb3JpOE9nY0h0enRiVThxVnNtODNsQThGMXNLaE8wMFFCcXo3R0ZNQXNXdHhPMGpFZHpyWXRoRDRWUkpteWJtd2xaaUd5U1JsYkFMUGI0RC9YV0JyV3JjY1pRc3V5SnJwdDAreXFxL0hzb2xqa1ByejZQTVcrcnZxS0VmSmNGd0dzN2pUd09RUWdBQUVJTEo0QUF0aml0NWdGUWdBQ0VJQkFCSUU2UVdnS0FsamRIUHNRd0g0YkJDWEhWa3BaenR2Q0ZURm0vQWVFNFBCbGRac2tDbGoxTWFZQTVpRC9GbWk2aW9SMWdveEZ6bnNFMTlVWXpxNHpwZ0JtcXpqSG1xdHp4NjFieTVVakVqMDRkdHhINmpwYSt6eW16MVQ3dWhyV2lRK0tFaWFzVHhzQnJNRW1VaFVDRUlBQUJKWkpBQUZzbWZ2S3FpQUFBUWhBb0JtQk9uRnBVd1d3Rkpud211MUV0OXJYeW9LY0g1MGxETmlwcEJzSDJMY3JaNU15bGdEV05qWlgwZHJxem5jVDhYVFYvNWdDV0pmWVhPdDhmQi9zakpKN1Z4d0lKNFI0WVlNRFV5ZkNPbzdiWFJzbWVxZ2J2bTR2M0I0QnJJNGluME1BQWhDQXdPSUpJSUF0Zm90WklBUWdBQUVJUkJDb0V3ZzJVUUJ6Z0c0SFIvOVdCTCtwVkxsNGNCTjFSc3FpNHFEaGV6VzBQaHRMQUd1Ym5iRm8zVHRLK3Bpa0c1VndPVjNTcmJONFYxOXJzSkYxb2t1VHBBenJ3eFpsQ0YzL3ZHMHN0N0tsMVFsV1RVVFQ3VU5nZWx1TmxaVkgxU1N6YUxBRlcxWDF1WDVYUldNRXNMWmthUWNCQ0VBQUFvc2hnQUMybUsxa0lSQ0FBQVFnMElFQUF0aTI4TnBtVGV5d0RaMmI5aUhLakNHQTlTRldWQWxMdjVlMHE2UW1XU2I3WU8wRFVDZUFPZmJYUXhPNGhhNE9XOTIxLzA1SmRqR01jVU85aXFUUFpRTFhwVXRPOGttU2Joa1NNblErN0xrT0xodkdka2JVb3RMSG1VcTlCdnFEQUFRZ0FBRUk5RW9BQWF4WHZIUU9BUWhBQUFJeklWRDNFTHlKRm1DT0NmV2htZXpmYXBxT0xXYmg3dDRsODI1amxUU0dBTllrbzJmc0Z0VUZmRythelhJc0FjeGkxRHRpRngxUno1a2F2NWk1UWw0aHdaa3h3dzlXakpsYXZGc2Zxczc2REFFczRqQlFCUUlRZ0FBRWxrMEFBV3paKzh2cUlBQUJDRUFnanNBY0JEREhEVHFpWWpuZkRsWThkbDJzSzNYclBWWFNyU1FkWDlmUlJENzN3LytsSkYwM0MrVCtwT0RPVnpTMXVRaGdiVncxNjdiaVhzRTlyNnplSEFTd3N6TVgxOXVHT0c5MTY0MzlmSWR3WGZtOGR6MHpCMGh5Z1B1eWtscTh5NC96eWl5Mm1PT2pGUlVFc05nVFFUMElRQUFDRUZnc0FRU3d4VzR0QzRNQUJDQUFnUVlFNmdTaEtWaUExUWtZVGNTZHV2WDJZWUhVWURzS3E5cmk2R0pCNUhJc3E1MHo0ZUltd1hKbnU4ak9tekJhZFRtR0JkaXJKRDB1Y2syeDFWS3ZZd3dMc0Q2RTJWVHJxTE0rYkJObkxYWnZWL1dxclB3UXdKclNwRDRFSUFBQkNDeU9BQUxZNHJhVUJVRUFBaENBUUFzQ2RZTFFGQVF3VzViWXdxU3NOSWxWVkxmZVBpeVFZcmZGZ29RRkxsdjZYQy84dDkzVVlrV3VxbkhtSW9BMXpUd1l3M1lKQWxpYmJKVjFiRklKWUhXV1pDZG1pUWh1SWVua3VnbDErQndCckFNOG1rSUFBaENBd1BJSklJQXRmNDlaSVFRZ0FBRUkxQk9vRTRUR0ZzRDhlMzJJcFB0WExPVnBrcDVmdjlSemE5U3R0MG5tdThnaEs2dGRYdElqSlAwdlNaZEowV0ZKSHdoZzVYRG40QUk1WlFFc1pTeXh0cGNBQWxoYmNyU0RBQVFnQUlHTklJQUF0aEhiekNJaEFBRUlRS0NHUUowZ05MWUFkdkhNSXNyaXpTNFY2M0RnOS9kSDduVGRldnV3UUNxYW10Zno4aXg3M1IwajU5MjFHZ0lZQWxpZVFDb0xzR3VGMkdRN2xTQnVZcUhaOXB3amdMVWxSenNJUUFBQ0VOZ0lBZ2hnRzdITkxCSUNFSUFBQkdZdWdOVUpWazFqSTlYMTE3Y0FkaUZKQjFZRTdPN3J3Q0tBSVlEMUpZRFZYVk5EaU9nSVlIMTljOUF2QkNBQUFRZ3NnZ0FDMkNLMmtVVkFBQUlRZ0VCSEFsTjRlSzFhUXRXRHJkczFEVnBmdDk0K0JiQkxaNVpzaDFaa2FteTZsVCtYNUF5WVh3bC9IcjJBTEpCOThDY0dXUEhKU21VQlZuZE5JWUExdmJLcER3RUlRQUFDRUVoTUFBRXNNVkM2Z3dBRUlBQ0JXUktZd3NOckdiaTZCM1MzYyt3dnh3Q0xMWFhyN1VPQThkd3VJc2tCOW04Zk8xRkpmNUxrQU9LZmwvUXRTY2RMK25wbVBYYUtwRE1LK25sclZ2L0JKZjFqQVZZT25oaGd4V3hpejB6ZE5ZVUExdUNpcHlvRUlBQUJDRUNnRHdJSVlIMVFwVThJUUFBQ0VKZ2JnU2s4dkpZeHU3V2tUMlFpMS9sTEtwd2RNaVllM1FCNjNYcjdFTURPSitrZ1NRK1BtT2RYSmIxYTBrZXk0UGkyOFBwelJKdFZGUVN3WWxoWWdCVnpxUk9ZRWNBYVhIeFVoUUFFSUFBQkNFeVpBQUxZbEhlSHVVRUFBaENBd0ZBRTZnU2hJYXczaXRacTBlZ2RtZVhUZlN0QUhDUHB6cEpPYXdDcmJyMTlDR0FPZEgra3BPMHE1bm1zcEwyRFMyT0Q1V3hWRlFFTUFhekoyVUVBYTBLTHVoQ0FBQVFnQUlFWkUwQUFtL0htTVhVSVFBQUNFRWhHb0U0UUdrc0FpeEdOOWczV1VrMWcxSzAzdFFCMmdSRDM2MjRWazN4VENJci8reVlMS2FpTEFJWUExdVFJcFJMQXJwZTU5aDRsYVllU3dXTXR5WnJNUFYvM2xSV0pKZjViMG0wa2ZibkxBTFNGQUFRZ0FBRUl6SmtBQXRpY2Q0KzVRd0FDRUlCQUtnSjFndEFZQXBqalpSMWVFeXorQkVtN1NUcTVJWWk2OWFZV3dLNFR4SUdMbHN6VGxsOTNEWEc5R2k1bHErcmJoeGhqdXljVUlWSzdEbnBxUS9QM21LblhrVW80eW05VmxZRDVvOHlLOEdiQkxiYkxPVmx2bTJvZGZ5dnBpNUt1VURJeHg3RzdSWXRyTlhhZDU1WDBia24zTG1tQUFCWkxrbm9RZ0FBRUlMQllBZ2hnaTkxYUZnWUJDRUFBQWcwSTFBa1NRd3RnL24xK3JxU24xNnpoVVpJT2JyRE9WZFc2OWFZV3dCNVJNODhIQmxmUEZrdlpxa2txTVdPOTA5VENFUUpZOVM3UFZRQ3o1ZGNSV2J5K1c0MGtRRjA4aXdWb0s3TmRSaHEvNjdWTGV3aEFBQUlRZ0VEdkJCREFla2ZNQUJDQUFBUWdNQU1DZFlMUTBBS1lyVGdPallpWDFkWnFxbTY5cVFXd04wcmFwK1FjbkJwRUEyZDM3Rm91RjZ4d0xsdlNVUnMzTkFTd1lwaDlpSTBlYWE0Q21PK3BENUYwLzRwRC9FaEpyK3Q2eUV2YTExM1RXSUQxQko1dUlRQUJDRUJnUGdRUXdPYXpWOHdVQWhDQUFBVDZJMUQzOERpa0FCWWpmdjFCMGgyQ1cyRWJLblhyVFNtQTFia2xIaWZwVHBKKzAyWWh1VFptOGpGSlpmYzNDR0Rsa084ZVhHNWp0d0VCYkZ0U1Q1SDBnZ3FBSDVWMFQwbGQ0OXdWRGZIc0xGdnFzeXJHUmdDTFBkblVnd0FFSUFDQnhSSkFBRnZzMXJJd0NFQUFBaEJvUUtCT0VCcENBUE52OGtNa09SaDhWYVpFTDJ2LzhLRDk1d1pyWEs5YXQ5NlVBbGhmUWtsKzZlYjNLa21QcVdDQ0FJWUFsaWVROG56V0NiQVdyaDJ6N3dzdHI5dXlacGZLK3YxTUZnTnNad1N3eEdUcERnSVFnQUFFRmtVQUFXeFIyOGxpSUFBQkNFQ2dKWUU2UWFodkFjeFpFaDN6NjRrUjgvOWtDSFI5V2tUZHNpcDE2NTJqQUhibFlCRlg1djVvRmdoZ0NHQjlDbUF4UXBRRmJydENudDNoK3MwM3JiTThjMzBzd0JJQ3B5c0lRQUFDRUpnbkFRU3dlZTRiczRZQUJDQUFnYlFFNmdTaFBnV3c2MHA2VDQzMXhtcTEzNUswaDZTVE9pNi9icjFEQ21BL0RabjlmdEpoVGI2ZmVWbm1ScmxmVFI4SVlBaGdmUXBnTVZhSWZ3cHVrQi9xY043WG05NUEwcWNrbFdWWVhkVkZBRXNFbkc0Z0FBRUlRR0MrQkJEQTVydDN6QndDRUlBQUJOSVJxQk9FVWd0Zy92MjlscVFESlRuMlVrejVycVE3SmhDL1BGYmRlbE1LWU9mTnhMMTNCNnUxb25YYWpYUDNUQVE3TWdaQ1NaMll1R2x1aWdDR0FOYW5BT2ErYng3Y0VjOWZjWjVUWGNzN1NYcGZkcTV2RzNIdElJQkZRS0lLQkNBQUFRZ3Ntd0FDMkxMM2w5VkJBQUlRZ0VBY2dUcEJLSlVBZGhGSnppcjRCRW5YajV2YXViVlNXWDZ0aHF4YmIwb0J6R01lRU9LV2xTMzVxTUNsalZ2blRUTFJ3Y0hGNnl4Z0VNQ2tLcXNqZ3VBWG44Nm1vcW5kbVozQjlXNDExN2ZQL0o2Wk8rUXZHbndQckZkdEluNjVIUUpZUzlBMGd3QUVJQUNCNVJCQUFGdk9YcklTQ0VBQUFoQm9UNkJPRUdvcWdQbjMxUStvL3VPKzd5THBycEl1MldLS3ptcDRQMG1udG1oYjFxUnV2YWtGTUlzckg2eVoveHRDQVBzL1JxN1RqQzBtdmt2U0JTUGJOQlV6M0szSFNDa2N1YytoK2ZleGpwVEI0OWUzNzYyU0hseXluejhLN3JJL2o5enZtR3A5ck9QV2tqNGhxY29LekhNN1FkSS9TZnA2ekVUWDZwUzVUZHVhc3V6ZUhnR3NJV1NxUXdBQ0VJREE4Z2dnZ0MxdlQxa1JCQ0FBQVFnMEoxQW5TRFR2TVUyTEYwdDZwcVRmcCtudUw3M1VyVGUxQUJZVEhOeVRjNEQvdlNYVnhRTnp3UHVYaEZoSzYyaE96S3pyVHBkMHZSSmVDR0RsQndrTHNHSTJiYzVNYkV3NmoyakI5eFVocStzcE5kZjU1WU1scFlQbzU0dXRSRDh1NlgrWDlJRUFsdmhMbE80Z0FBRUlRR0IrQkJEQTVyZG56QmdDRUlBQUJOSVRxQk9FMG85WTNlT1BneEQwYVVtMjZraGQ2dGFiV2dEei9KK2RyZVZaa1F1eDlZempoaDBqYVNVSytPRi90MkFOVitRKzZ1RGlkaW16a0ZObVFkUkd6TUFDckhqVCtyQ2M4a2hMc0FEek91enVmRmlXbWZUMmtXZmUxWTZUZEVRV0wrOGJhMjBjUTg5dXZvNlRkODJTdm56MmJXVjZ3eUNrRlZWREFHdXdFVlNGQUFRZ0FJRmxFa0FBVythK3Npb0lRQUFDRUdoR29FNFFhdFpiKzlwK2tEMUkwdE1sL2E1OU43VXQ2OWJiaHdCbTkwOW5xN3QyN2V6YVZUZzRFOHYybGZRbUJMQkNnS21GUEFTdytuTjZ0U0JvWGIyK2FxY2FUNUgwb2l6TzE1TVJ3RHB4cERFRUlBQUJDQ3ljQUFMWXdqZVk1VUVBQWhDQVFCU0JPa0VvcXBPT2xkNGk2UmtSN244ZGh6bTNlZDE2K3hEQVBHNlRnUFZOMW5sSUZremNibUZuMWxnUVlRRldUaFVYeUdJMmJjN01laysyVm5RTU9Wc3c5bEZXNHBjdFJmM2ZMeWdaQkF1d1B1alRKd1FnQUFFSXpJb0FBdGlzdG92SlFnQUNFSUJBVHdUcUJLR2VodFd2SkRuT2w2Mlc2dUwvcEp4RDNYcjdFc0M4aGoxQ2xyell3UFYxNjE0WHYxeTN5b1d1alppUjJuSnFMQUV5OVRxd0FLczdtWC85L0VxWjVlTjdKZDBvdmtsdFRjY09lNWlrdDYrNVNTT0ExV0tqQWdRZ0FBRUliRElCQkxCTjNuM1dEZ0VJUUFBQ0t3SjFnbEJLVWlkSmVrOFF2YjdiVTR5dnV2bldyYmRQQWN4eks4dGlWemZ2OWM4dEFEd3h1SXllcy9ZQkFsZ3hSUVN3WWk1OUNYbjUwUzRnNmJuaHpEWTU1MFYxancweEFyK2QreEFCckN0WjJrTUFBaENBd0tJSklJQXRlbnRaSEFRZ0FBRUlSQktvRTRRaXUvbExOYnZpblNycFoxbFE5cTlJK25JSTZQNDlTV2MxN2F5SCtuWHI3VnNBODVJc0NOd3Z1R3hkb3NFYUhTZk43cUlPcUYrVUxSSUJEQUdzd1hIU1VBTFlhazZYay9TY0lHQnQxMlNpbWZXa2hTKzNQVEp6bDE0WGZWZmRWQWxndjhpeVJONHlpNC9uVEtrVUNFQUFBaENBd0VZU1FBRGJ5RzFuMFJDQUFBUWdBSUhKRURpUHBHdEllbUJ3ajd5Q3BCM1habWZCNjBlUzdMN29ySG9PcEcrQmtRS0JPUlBZWHRLdE1uSGNsbmwzbG1SaDdFSzVCZjA4eS83NHBTeG0zK0daKytTSEpaMWNzK0NoTTJqT21UOXpod0FFSUFDQkRTU0FBTGFCbTg2U0lRQUJDRUFBQWhDQUFBUVdSY0NDbWdYaTNVdFdkWFQ0N1BSRnJackZRQUFDRUlBQUJCb1FRQUJyQUl1cUVJQUFCQ0FBQVFoQUFBSVFtQ0NCaXdjcnlWMUs1bVp4YkM5SlowOXc3a3dKQWhDQUFBUWdNQWdCQkxCQk1ETUlCQ0FBQVFoQUFBSVFnQUFFZWlOd1BVbEhTZHFoWklUblMzcGFiNlBUTVFRZ0FBRUlRR0FHQkJEQVpyQkpUQkVDRUlBQUJDQUFBUWhBQUFJVkJCNGc2WkNLeisrZFpWOTlQd1FoQUFFSVFBQUNtMHdBQVd5VGQ1KzFRd0FDRUlBQUJDQUFBUWpNblVCZC9DOW5wSFhBL2VQbnZsRG1Ed0VJUUFBQ0VPaENBQUdzQ3ozYVFnQUNFSUFBQkNBQUFRaEFZRndDZnkvcHM1SXVXRElOWjFDOW02UXp4cDBtbzBNQUFoQ0FBQVRHSllBQU5pNS9Sb2NBQkNBQUFRaEFBQUlRZ0VCYkF1ZVQ5SHBKZTFkMDhGUkpMMnc3QU8wZ0FBRUlRQUFDU3lHQUFMYVVuV1FkRUlBQUJDQUFBUWhBQUFLYlJzQ3h2UTZWdEYzSnduOHI2ZGFTdnJscFlGZ3ZCQ0FBQVFoQUlFOEFBWXd6QVFFSVFBQUNFSUFBQkNBQWdma1J1SW1rajBxNmFNWFUzeTNwUVpMT250L3ltREVFSUFBQkNFQWdMUUVFc0xRODZRMENFSUFBQkNBQUFRaEFZTE1KM0VEUzR5VWRJT2s3UGFHNHZxUVBTYnA4UmYvL0xlazJrcjdjMHh6b0ZnSVFnQUFFSURBckFnaGdzOW91SmdzQkNFQUFBaENBQUFRZ01IRUM2MEhwUHk3cEdaSytKT25QQ2VaOUhra1BrWFJ3SnJBNS9sZFZlVVVRNGxLTW0yRHFkQUVCQ0VBQUFoQVlsd0FDMkxqOEdSMENFSUFBQkNBQUFRaEFZRmtFaXJJeS9reVNCYW0zU2pvUE14ZGlBQUFnQUVsRVFWUzV4WEl0ZHUwaDZVQkpPMGUwUDFiU1hTV2RFbEdYS2hDQUFBUWdBSUdOSUlBQXRoSGJ6Q0loQUFFSVFBQUNFSUFBQkFZaVVDU0FyUS85UzBrZmtYUmtjRTg4VlpML3JDeTFiT1YxTVVtWERDNk05NUcwYTBXZysveXlIUGorenNIcWJLQWxNd3dFSUFBQkNFQmcrZ1FRd0thL1I4d1FBaENBQUFRZ0FBRUlRR0ErQk9vRXNENVhZdkhMbG1LZjczTVErb1lBQkNBQUFRak1rUUFDMkJ4M2pUbERBQUlRZ0FBRUlBQUJDRXlWd0ZnQzJJOGwzVHNUd096K1NJRUFCQ0FBQVFoQUlFY0FBWXdqQVFFSVFBQUNFSUFBQkNBQWdYUUV4aERBUGlEcDBaSitrVzRaOUFRQkNFQUFBaEJZRmdFRXNHWHRKNnVCQUFRZ0FBRUlRQUFDRUJpWHdDVWt2VURTUXdlWXhnbVNIcFBGQ1B0MG9peVRBMHlaSVNBQUFRaEFBQUxqRUVBQUc0YzdvMElBQWhDQUFBUWdBQUVJTEp1QUE5bnZuV1Y5ZkpTa3F5WmVxZ1BvLzJ1VzZmRVlTZWNrN3B2dUlBQUJDRUFBQW9za2dBQzJ5RzFsVVJDQUFBUWdBQUVJUUFBQ0V5SmdNZXgya3Y1UjBxMGtYYUhCM1A0azZVUkpSMGc2WE5MUmtzNXEwSjZxRUlBQUJDQUFBUWhJUWdEakdFQUFBaENBQUFRZ0FBRUlRR0I0QWhlVmRBRkpGc2QyWGh2K2JFbmZrblNHcE5QRDM4UFBqaEVoQUFFSVFBQUNDeU9BQUxhd0RXVTVFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWxzVFFBRGpSRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFnc21nQUMyS0szbDhWQkFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlJSUJ4QmlBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUVdUUUFCYk5IYnkrSWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFRU1BNEF4Q0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUtMSm9BQXR1anRaWEVRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0NHQ2NBUWhBWUtvRXppdnA3S2xPam5sQkFBSVFnQUFFSUFBQkNFQUFBaENBd0h3SUlJRE5aNitZS1FTR0ptQUI2b3FTZmlycHJJRUc5M2ZTMzBsNm9hU0xTcnFicEZNR0dudU93K3drNmRhU3psY3crVzlKT242T2l5cVk4K3BjUEVQU3l5UjlmaUhyWWhrUVdBcUJzdStpSDBzNnBvZEZYa0RTYnBJdWxPdjdqNUtPa25ScXpaalhrblR0Z2pwOXpiY0hCSzI3dkhERzUzR1M3aS9wN3BLKzE3b25Hc1lTK0J0Sk94UlUvbE00cXo2M0ZBaEFBQUlRR0lBQUF0Z0FrQmtDQWpNbGNGbEpud3NpMkVtU1BpanBjRWxmbEhSRzRqVlp3TmxEMG9HU2RsN3IrMUdTRGs0ODFwSzYrM3RKbjVWMHdZSkZQVFVJaVhOZXIzK2picEtKb1MrWGRMT3drUDhJd21qcU16aG5Uc3dkQW1NVEtQc3VlcHVraC9Rd3ViOE52MFZYeVBYOTM1SnVJK25MTldNK1JkSUxDdXIwTmQ4ZUVEVHVjaVY4N1ovOU5saEFkUG13cEQwbC9iNXhielJvUXFEc3ZNV2UxeVpqVVJjQ0VJQUFCQ29JSUlCeFBDQUFnVElDZDVEME1VbjU3NGsrQkFnL2lQZ0dNVi84WnZwMmt2eFduckl0Z1NVTFlINVllMThtd3Q2eFlPTWZKT2tRRGdRRUlEQVpBZ2hnazltS2JTWmlzZXRaa3Y2bHhGcDRxZCtudm9kNWM4bTJQRlRTSndiY01nU3dBV0V6RkFRZ0FJRXFBZ2hnbkE4SVFLQ01RTmtOMi9NbFBTMHh0c3RuYiswL2xZa2FWeXZvOXpuWnZ6MDc4WGhMNlc3SkFwajM2SUdTM2w2d1dVc1NSdTFxN0VLOHU2VmNsWnU1RGdTdzZlNjc3L1h0T3I1ZnlSUi9IcXptbHVZSytRK1NQbFN5WnJ0KzJxSjlxTElwQXBoRFYxeEMwdldDOWJhdE1lM21lVTlKSnc4Rm0zRWdBQUVJSUlCeEJpQUFnYVlFdHM5aWNSMG1hZmRjUXorazMxYlMwVTA3aktqL1NFbXZMYWkzMUp2ekNDUzFWWll1Z0RsdWlsMTBkaTBnOGJ6c3h2cVptV1hEbjJzcFRhZUNyeXVMdmJmSTRwamRLY1F3c2l2WFAxWThxRTFuOXN3RUF1VUVFTUNtZlRxcVhqSjU1bStTNU4vZ0pRbnhDR0JwejZURkxWc1QraXpaOWZncWtxNlpDWW0rOWk4VGhLK3lFZStYaGJkNGQ4bUhWYkZNVTY3Z3pPdzM5ek80KzZaRVNsOFFtQ2NCTE1EbXVXL01HZ0o5RS9DTmplTi9YVG8zMExlREdQSHJIaVp3eVdBRlZoU1llSTVpUncrSXR1bHk2UUtZRjJ3WHlDTWxiWmRidmMrZ2cyQTcyUCtVeW5ra1hVelNsU1JkWGRKTnc1dnc2eFFFN0Y3Tit5MlM3SkpUSmVhVnhUeWEwdHJIbWtzZmJ0bGpyV1d1NHlLQVRYL255aXhxUFhOYjZkeEYwc2VudjR6b0dTS0FsYU5hL1U3dEl1bmlvWnJ2d2E0Zi90djNnTmVRWkF0bC8vWjBMUmEvN0dwYkpMQlczY2QwSFhlOS9ZOUNMRkcvVktWQUFBSWJUQUFCYklNM242VkRvSUtBM1FNYzlENWZEc3F5TXU3Ym85Vk4yUTI2TTFFNjIrRVAyTFd0Q0d5Q0FPWUVDZS9JaEs3N0Z1ejlFRllMdHRyYWNXMXN2L0gyQTRNZkRHNFlzcFZlTjd3QnQyQmNsSkd6N3RnNnljUXRROGJWc3JvSVlPVVVseTZBK2Z2WUdYR0xpbDlVdkxYdWdBM3dPUUxZQUpBN0RtSHJuVU1yenBLeloxbzBPcTNqT0ZOcGpnQld2aE5ELzU3OEl2ekduVmd3SlFTd3FWd3h6QU1DRzBJQUFXeEROcHBsUXFBQkFYOHZ2RXJTWTNKdGJKMWlsMGhiNC9SVmJEbnpFVWszTGhpQVdHRGJRdGtFQWN5cnZubHdYVGgvRGtIcURGb1dFaDdjMStHdTZmY2VOVzZRUXord2pJU2gxYkJMRnNBdWtwMy9qd1pMd2p5Y0liNlRZemNFQVN5VzFMajEvQ0xKd2QvejM2V3JXUzBwOHpJQzJIUUVNTS9FTDA5ZmpRQTI3aGNBbzBNQUF0dG1kNE1KQkNBQUFWdTMrSUhTcHZIckpjWktKUVc5TWl1d0U0TExHNEZVLzBwNVV3UXdXMXNkbkdVRDNXZnRnTmxseC85bTk5aFVMZzFqQ21CMWJwQUlZT1hmTGtzV3dPeVdka1JCTmw3VE9FYlNuU2Rpc1lNQWx1TFhyLzgrL0YzcUYxeU85MVZVbHZRN2l3QTJMUUhNYnBBUGtmU0gzTFN3QU92L3VtY0VDRUJnalFBV1lCd0hDRUFnVDhDcHd6OVc4TUMxZWtDL1lBaVk2MERlZlJTN25EbUxVRkg1amFReitoaFUwbThsUFVEU04zcnF2NDl1NXlLQU9YanVVeVU1MkczYllnRm9qM0F1TFg0NWc5Y3YyM2FXWmFuNlFMQTJYTzlpVEFIcytKQ0pyU3krSGdKWStXWXZWUUN6V09Fc3FIdVZMTDNNb3FMRFpkRzZLUUpZYTNTRE4zU2NUUWNEWDhWK1drM0E0cGUvcDUxNDVKekJaNVYrUUFTd2NxYXBmMDkrbFoyZHN5UjlSZExQTWxmYUw0ZmY1NitIZTdaVEswSm5JSUNsUC92MENBRUlWQkJBQU9ONFFBQUNlUUlIWkcvbzlpL0FzbkxScXNyTU4yZWFxZDNwaG1BeEZ3RXM5YzEyQ3JaKzBIdGhycU0rQmJBL1psWVhqb1BpQndRSDQ3WDFqbVBiV2ZqeXc0RS9yeXBWRFBzVWhsT3dUdFZIV1l5MXBRcGcxd29aZDR1RTQ2bkZSVVFBaXp2bGQ1VjB6N2lxdmRYeXZiOHRCNTNOYjFXK0V4TGZqQ2w4dlNiTGlQdlZoS3RHQUdzbmdLMStUL3liZEZ5d01MVzQ1ZCtzL3hkK3YzNGNMTG1xaEszWXJVejkzVkYyajBvUS9OZ2RvUjRFRms0QUFXemhHOHp5SU5DUWdJTjkyL3JyUnJsMjYyNFJDR0FOb2ZaWUhRR3NQZHhVQXBpdDBleUNhY3RFUHlBNGdMVC8vcDJrbUxmZnNTdW9Fc0FjSk4wV2NVc3ZaUUxsVWdXd3h3WjN0YUo5N1RzaFNkT3psUG9odG03OHN1c2g5a1hHVXlTOW9HQ1F0d1UzcmJyeDIzNWVObTdiL3BiVUx2WDNHQUpZY3dHczcvTmZOS1BVM3gwSVlFdjZWbUF0RU9pQkFBSllEMURwRWdJekpuQXJTWjhPR2U3V2w3SCtzSVVBTnAwTlJnQnJ2eGV4QXBndEl4eG56Ry9BTFdwOU83Z0huZDZqTzI3UnFoREF0bVE3TEVwU3NFUUJyQ3I0L2RsWm5NYmJCdXV3OWxkQTJwYXBIMkxyWm9jQVZrZG9mcDhqZ0EyM1oyWFhEd0xZY0h2QVNCQ0F3RWdFRU1CR0FzK3dFSmdvZ1ZlR1REM3IwOHRuR2tNQW04N21JWUMxMzR0WUFXd3E0a29YQWN5QjFGOWZnT3BNU1U0NjRYZ3RjeWliSklETkpmajk2dHdnZ01WZFFWaUFsWE5DQUlzN1F5bHFJWUNsb0VnZkVJREFMQWtnZ00xeTI1ZzBCSG9oY0trUUdIZm5YTysyZU5sVjBpbzR0NzgzSEpPbUxJMTZMNU1ib0ZPN3NzWEVZaHBnS3RGRHpFVUF1MERJNEhtaDZKWDFYL0ZiSWY3VytraEZBc3NTQkxDeXVINk9JM1V6U1QvcEgzZVNFVFpGQUp0VDhIc0VzR1pIR3dFTUFXeWRRS3pMYnJOVFZsOGJBYXllRVRVZ0FJR0ZFa0FBVytqR3Npd0l0Q0JRWm5Idy9DeEE5OU5hOUxmSlRhcXM1Rks2R014RkFLczdDMWNLN29SbEdSRHIydWMvUDU4a3UvTitTWkt0bkdMTEVnVXdaMVU5TEdPeGV3R0VUMHB5Y29zbWpHSlo5bEZ2VXdTdzYwZzZTcEt6cCtiTEdNSHYreFJ0VnBhWXFUTEJ4UW9LZmEycGJ2eSt4dTNqZWh1NlR5ekFoaU9PQURZY2EwYUNBQVFtUmdBQmJHSWJ3blFnTUJLQk1vdURQd1RMblMrTU5LKzVEb3NBRnJkekZxb2VMK25BRUh2dTNpR0lmRnpyOGxwK2tQcEFFTlVlS2VuUUVMZXJydDhsQ21DMjdQeThwS3NVTFA1Vm1kWGo0K3FnVE9qelRSSEFuaTNwV1NYY3h3aCszNmRvZ3dDMlphUFhZdzFPNkpKTFBwV3JocGlLdnVmSUZ3U3c1TGhMTzV5U0FGWVdlN2J0eTBLQzRBOTNqaGdKQXJNa2dBQTJ5MjFqMGhCSVRzQVB4NStUZE9sY3p4OE5LZHQvbjN6RVpYZUlBRmEvdjVlVDlKYk0wdVgyYTFVUERqSG9IT1M3YmJta3BFOUp1dlphQjg1aStwZ2dzam1tWFZsWm9nQjI0eXhndXQwNDdZYWFMNDcvOVk2Mm9FZG90d2tDV0prcnVuR1A5VUlDQVN6K3NMZTFBSnVLcTNYOFN0dlZyTEwwUXdCcng3Uk5xeWtKWUdYWk90dDZIeUNBdFRrUnRJSEFCaEZBQU51Z3pXYXBFS2dnOEZoSnRnYkpsMzBsdmJvQk9idGI3ZGlnL3BCVno4bkVsVk1pTFlHNnpnc0JySnJnNVNWOU5oUEE3UHE0WGh5SGJjL2dzdGRtRC95Ylpvc1MzemdYbGRjRml5Y0xDVVZsaVFMWUl6SmgyOEppdmxqVWRteS9ZOXVBSHFuTkpnaGdlMGw2VnduZnNWNUlJSURGSDNnRXNHcFdDR0JiODZrN0wvRW5yMW5OS1FsZyswdHluTXA4ZVlLa2x6WmIxcm0xRWNCYVFLTUpCRGFKQUFMWUp1MDJhNFZBTVlHTFNQS0QxVTF6SDdlSk5WUDJKbThLN0g4VUFuNy9mSURKSUlEVlEvYk43WXNMcXYxVzBwMUQvSzc2WHJhdWNaTndsb3RpSjhYME8yVUJ6R3V5dU9jRUZQbnlHa2xmTFlIMVJrbjdGSHgyb3FSYlNEcTVLZVFSNjNzZCtlOHBUK2U3UWNBL2E4UzVwUmphVm5wMjNmWDVMeXIzay9UdUZBTTE3QU1CTEI1WW5hQlJ4aElMTUFrTHNQaHoxclhtVkFRd3U4TDZPODNoRC9LbDdYbEFBT3Q2T21nUGdZVVRRQUJiK0FhelBBaEVFQ2dMZnY5T1NYYVJxbklaeTNlUEFMYUZDQUpZL2NGei9DL0hNM3A0UVZVSFoyOGFEOHpNMzUrNTh0NnhvTDlZeTdJcEMyRDFSTGV0c1lPa0kwSkNnUHluL25jem5ydG8xSWJMVk52Y1BHVGlMY3F3YXpmZTNVWVNMSytWY3lrdTRsY1cyOG5CL0Y5WkFYeVZqWFhUZytDbkVzQ2NhZmVod2JYWldZMjdGajhuK0h2QzJhRDlwMnZCQW14cmduV0NhVmZlWmUybklvQmROb1RmdUdKdW9xZEx1blVXZ3VOckxRQWdnTFdBUmhNSWJCSUJCTEJOMm0zV0NvRnRDWlFGdjNmTk5nRklFY0MyTUVZQWk3dmFmTlA3OGV4aDdlb0YxVjhSQXVUSENyQU9kdi9ha21HZkorbVpFV0x1MGdTd3N0aCt4dFEydmtyY3psS3JLUUhmajlrTjNiSHFpc3B6c245MGNQeXBsakpobzgzdlNNd2F5eDdnWXdXRk1rdXN2dWE3V2xPZkZtQjJLWCt2cEJ1RkxLSjJKLzlGRE15S09oYS9uRVJrdXhBT3dSbWhmOWVoVHdTd3JlSEZudGNPeUF1YmxsMC83MHVjR01WQzFoa1ZreTk3QVd1eDFTNzZiVEpESTRDbFBpMzBCNEdGRVVBQVc5aUdzaHdJTkNSUWRUUGE1a0VBQVd6TEJpQ0F4Ui9FVmNaR1AyQ3RsMWlyTGJkeHdQdlBaQTlvRnk4WXRvazEyZElFc0R0a2JvNGZrMVQwVzIrTGsvK0szNlpKMUhUY3NwZEordUVrWnBOMkVsY09vb1V0SXZMRjdydTJodmhtMmlHVDlvWUFGb2V6THdIc2RwTGVrL3NPUEM0a3NmbEozTlMycVZYa1VtN3hxMGxtM1h5bkNHQmJFNW1hQU5ieXFKUTJXMlY1TGFwUTlRTFdDWEpzeVJqN0FteTlmd1N3MUx0SWZ4QllHQUVFc0lWdEtNdUJRQU1DZFJZSHFRUXdaL1I3dXFUdk41aGIxNnIzekI3dTc1L3JaTk5pZ05tRjFmR0UraTQvbG5STWgwRjhEaTFxN0ZmUWgrTlVPVXRrbGVEaHVFbTJVTGhiUVh2SGhySkw1RW1SODF1YUFQWXZrbDRTdWZZNVZCdnJZWEVJTm1XSlNEeTJZK1E4S1BzZTdaSWR0ZTgxSUlERkVVNHRnTm1WL1BHU0RneFdXdmxaMk1WMGp3YmZnYXYyVmRhNXJ1UGtHWHUzY0l1Y2lnQm15K01oaGZRYlN2TGE4OFVDendjenk4OWZ4UjJmcUZveEx3cktMTUNpQm1oUXFVb0F1MDRRL1l0aWRuYUpkNGdBMW1DRHFBcUJUU1NBQUxhSnU4NmFJYkNGd05WQ0pqN2ZDQldWVkFMWUdBK3RSUThabXlhQURYWE8yNXlUL053dUtlbFRCWEdHZkhZY2g2NUt5Q3R6Zll3SmVwK2Z4NUlFTVArK0gxSWdCQTkxTHZvWVo0enZrajdXa2UrekxCR0o2L2tCZWZjc2djZVJRMHlrd3hnSVlISHdVZ3BnVG9qeEJrbjNxaG42ZUVtMkJ2MVozQlRQdFdBdWk2ZVk3OEtKVE94ZWJ0RWxwa3hGQUl1WjYxenJ4SHhQamkyQVdiaDlmUkJSODV6OXd1cVdXWHhRSjJKcVU4b0VzRGxtUG02emZ0cEFBQUkxQkJEQU9DSVEyRndDamlmenJJcmx0eEUyaWx3Z1kyN0dVdThDQWxocW91WDl0VGtuUmIzWlVzc1ArU3RYeUM4RThhYnFMWDJaNjJNVDk4bjF1U3hKQU5zeHVEODZIdEJTeWhqZkpVT3dLNHVENDdGdFhlbXNrS2NOTVpFT1l5Q0F4Y0c3YTNCTHpOZHVtc25VOFpIZUx1bnlOY1BhUXRmV2czWjVibEoya1dRM3RCdEhOTEoxOXo5bk1acytIZUd5NWpobHRsaXo1VzYrVkdXempaakdObFdtSEpLaHpYcGkyOFI4VDQ0dGdLM0hsc3V2cTJuOHozejdxc3lTc2ZGQVkxbFREd0lRbUNFQkJMQVpiaHBUaGtBQ0FsWHhabGJkdHhFMkVNQzIwSnRDRExBRXh5U3FpemJucEtoajM3UTZDTGd0dW1Lc0NxcXNGQ3lBdmlqaVlTdy9qeVVKWU03Y2QzU1dnYzlXSWtzcE1ROTJjMXVyNzhQZVhHSUo0YlhzRzRLUFQzMWRDR0REN0pDRm95ZGxjZjJjRktHdU9QNmhMV2piQnNMM1dENS9GZzFzc1ZOWGJLbjdPRWx0WTQ3VjlkLzBjd1N3Y21KakNtQkZzZVZXTTNYUWUyZTd0ZXR1bCtMTXN6NjdSZVZnU1MrdENNNXZVZG5meTExQ08zU1pPMjBoQUlHZUNTQ0E5UXlZN2lFd1VRSjExbCtlZGh0aEF3RnN5NFlqZ0czaFVHYnRVSFpaWENLek9yQ0ZnSU0zMXdXLzlVMnFMV2Z5eGE2UGpxbnloOGhyenc5dEh3bDFseVNBbWYwUmtRem1VbTJKQWxqVnl3aTdBRG40L1E5bXNFRUlZUDF2a3I4Ykhkdng1aEZEMmJyYkx3RmlYUk9ydXJ4Y3NBWnpQTWE2NG12MDRTRWcvemwxbFh2K0hBR3NISENaQU5ibXZxL0pOdnJGeklleiswdG5LQzRxcVN5MEhoQkNBRFNaMjNyZHF0aGxiZnVrSFFRZ01CRUNDR0FUMlFpbUFZRUJDY1JZZjNrNmJXNkVFTUMyYkNRQzJCWU9aZkZ1Qmp6dXRVT3QzK2d1U1FBN0lCTUI5eTlZdlI5UTc1SGdEWHN0MkI0cTJMWDFWRWwvN0tIdnNicXNDbjdmSlJQYTBPdEJBT3VQK0hray9WT0k5M1hCbW1Gc1FlTUVNSitJZUluUVpNYWV3NTZTYkQxejRZaUdiWVBrUjNRZFhRVUJyQnpWR0FKWVVhYlM5Um1lRUpMV3BMQWdqTDNQTFNQa3VJdXJGMlBSQjQ2S0VJREFQQWdnZ00xam41Z2xCRklSOERYLzNKQ1ZzYTdQVkFKWUgxbU82dVplbEhGcDA0TGdueG5FZ2pwV1hUOS9ueVJuR3l3cUNHQmQ2Ylpydjcya3cwTHc5SHdQMzg1aTlUaCtrQitVS2VNU1dFTHcreFZCQkxCK3pwS3RydzZTZFBlSTd1M3k2TXlNS1FTRXN1RThIN3VYT2ROeVhiRlE3UXpRZG0xUFlZbFdOMTcrOHlvQjdDRlpvSFZuZ2x4aWlYbFJNS1FBWnNIVUwyUXM5cGNWejlsbjZrT0pOc1QzdW42NTlmd1cvWjBlTEcrLzFxSXRUU0FBZ1JrUVFBQ2J3U1l4UlFna0pGQ1grWEY5cUZRQ1dNTHBkK3BxMHdTd0taandMMEVBKzJJSUltMUJjYWp5bSt6bS9hd09nMTFLMHVkTDNFd3NqTzJWUFppZTNhRi9tcVloc0lUZzl5c1NDR0JwenNTcWw2WVdWeWxkSHV0VzBuUnV0dXl4QmR2WDZ6cE8vSG1WQUxicEZqNURDV0MyTnZhOVpKM1ZZTnU0blZWSHhpOFkzaWpwUGczUEZTK0pHZ0tqT2dUbVJnQUJiRzQ3eG53aDBKNkFyL2VYU2RvdnNnc0VzRWhRQmRXbTRBS0pBQmEzZjNVdWtIRzlwSzFsYTQvRE8zVHB6RzNPK2xhVWFlMXBMZCtLZDVnT1RRc0lPT21Ecy9oWmpDd3Fjd2wrMzFZQXUxaEllSEdJcEpOYW5KQ3lCL2pZT0hGbDRueWIzNzBXMDY5czBpVG1WdHNzanlubTNNUWF6T1BGSkRkSk1hOVZIMlVDV093WlNUbVhxZlUxbEFCbUVjb3ZYYXJpeDcxRTB2L3B5Ylc5YVNJSDc1TmpaenBMWlplWFVGUGJiK1lEQVFpc0VVQUE0emhBWUhNSWxMMmhkN0J3cHkrL2N3NUZtd2VCS2NmY3dBSnMrTFBlTkFqKzhET1U2b0xnanpHbnJnSllWUURnVGJkOEdHTS9pOGE4VHZaUWVKU2tpeFo4T0tmZzkwMEZNRnVDL08vZ0dtY1h1ZHRJK25LTFRWbWlBTmIwWWYyOVFVUjBYTHl4U2xOcnNPOUx1cDhreHdqcnV5Q0FsUk1lU2dEekRLNFkzRTJ2WGpBZFp6TzFlMlRmY1IwZEZ1QldtV1gwblVxK2M5ZW45aWxKNys3N2NOSS9CQ0F3SGdFRXNQSFlNeklFaGlUZ0ZPYnZ5QUpmMzdkZzBEZUZMR1BPdnJOZUVNRGE3eEFXWU8zWmpkbXlLQWorR1BQcEtvQ1ZwWUQzZzdJZkFvNGZZMUdNdVJXQnFreThqdmxrQzdDNlRLaFRRbHJuQW1seDUyR1MvRHV6Y29leUcrNXRKUjNkWWlGTEVzQjhMMjRPcjgrc0FxOGF3V0pLbVJaWDAyMFNxOHh0aHJBR1F3Q2JoZ0RtV2R3a3kxNzYwVFh4eVlLWHZ3OXNCVHVuNzdtSXk1TXFFSURBMUFrZ2dFMTloNWdmQk5JUXVKY2tCeXZQWC9PL0RjRSs5NUQwZ3A0RXNESGNEWXJjVzdBQVMzT1d4dWpGcWRPdm5SdllOOUMyb0VscC9iQUVBZXhDa2o1WTRuSnlYSGdEN2hoamxQRUlPRWJiWnpJcmc1MExwbUNMM04weWk5d3ZqRGU5VmlPWENXQjJmN0pMa2QzdmkrSUFyY1RlNjB0NmRJT1JmYzRkMitmOHVUYXh2emRsTHBBLzdCQWMvVFdTdnRwZ0RhN2ExSTF3aUVEM0RaZndsK3EyQm5Od2VXZUs5RXUzdXRLM05SZ0NXUGtPREdrQnRwcUYzUW9QemJLVS90ZElNZUhxemlPZlF3QUNHMElBQVd4RE5wcGxialFCeDFweE9tZkhCY3FYVjBoNnZLUW5JNEFsUFNOWWdDWEZxYUtIMWRnSDNTWXpXWUlBNWdkcUIrNi9iTUhDM3lucGdieHhiM0lrZXFucnVGL3ZLdW5aVmhMT2hqWkcxcnd1aXkwVHdPcjZmRUltakwwMGM0Tk01VDRmKzczUVI0S09KcGFiVGQwZExmZy9NV1NFUEtjTzZzaWZYME9TWTdzVjNYTVVUYTJ2QVA0SVlOTVN3UHpNdVl1a0UyZjQvVGJ5SmNYd0VJQkFTZ0lJWUNscDBoY0Vwa2VnS2hYMHowUDhsZTlsTnlORkR3TnRYQ0FkWjJISEhJYVlsTnlweVZtQTJpSFhxUjhhVHBFMHhNTURBbGphSFIxVEFITXcrYnRsRDU5blJDNnBTRVNMZlNpUEhLS3ltbDBjSGRQUFFkYnpaU1UycEJpSFB0b1JzUERodUhQNW1JdXIzaHdmYVk3eFo5b0tZTS9QNHY4NE1jT21DR0JOWTJiNVhEaGVsb1ZyVzg3TXBmaWNQeW16T25lTXA1aGl5emxuaWt5NVJnU3djdkpqV0lBNTNtRlJZcGFZODlGSEhWdmIyb0ljRjh3KzZOSW5CQ1pNQUFGc3dwdkQxQ0NRZ01BTk1wSExBVDJMQWkzN2JiS3o3N2lrRXNBU1RIa1JYU0NBcGQxR0JMQjRubzhJTGtqNUZyN0pkd0RnVDhSM1JjMGVDTnc4dUQvbVhmYzgxQW5CL2ZIa0hzYnR1OHMyQXRqdkpPMFQzUE9YTG9DdDRudzV2bHVSNjJ2Ui90anF5K0xneXdjSUV0N1grZGcxeEhtNmZNUUFxYTNjRU1DbUpZQk54Y0o2UmFYcHk2MklJMHdWQ0VCZ0RnUVF3T2F3Uzh3UkF1MEpPQmFISDRqenhXK1VuYUhQRmxFdUNHRHRHUmUxUkFCTHl4TUJMSjduRzRPb0VOOWlmaldIdEtoTFNjZjNYSytTOUppU1RtMHQ0K0Q0Y3lxTzYvWElJTlFVeGZncVdvdUZyNmRuOGE5OFZsZXVua3NWd0x6bkRnRHVmWTkxQ1RReng0Qzd2eVRISkp0NzJTbUk4a1ZKZUlyVzluNUovN3gyZjlKMi9XVnVyblA5L21qTG9haGRtUVdZWThVK0x1RkFqamQ1VnVnUEFTd2hXTHFDQUFUYUUwQUFhOCtPbGhDWUE0RzdoQURFNjllNlhSTDk3eDlmVzBDTUFPYWd3ODRZZVlzNUxMemxIRStTNUVDdHYyelpmdFVNQWF3andGeHpCTEI0bmxON3lJaWZlWHpOdVQ3QVhqa2tiaWlLejdaS1NQTE5lQXlqMW5Sc3lhZEsyaTh5NExrbmE3SExBcCt0b003TXpYN0pBcGdEdy91M2M3dUlIYk00YUVIUndjS0hjTmVQbUZLU0trMEM1UHY3L2tVSlhOTVF3TXEzcmt3QVM3TFphNTJzeDhXYjJtOFRGbUNwZDV2K0lEQVRBZ2hnTTlrb3BnbUJsZ1F1RWxKUDMzU3QvVnZDMjFXN0c2eEtqQUJXSmVxMG5ON2ttcVhLRklrQWxuWnJoeERBSERQTHNaY3NnSzZYcGpmSlk4Y0FtOXBEUnRxVHNLVTN4MjF4ckxQaisraTh4ejRmR3l5QmlvYncyWHRRWmhsMWRvL2pwK2phSXA2dHQvYU9GSFE4cG45cm5oZGMrU3p3RkJXTGduWVBqUzJPTmZsdkJlNzlzZUpvbVRqaXpMS3ZqSjFFcnA2dHRuNWEwTmIzMm50S2NoS0tLaEhzdFVGVUxHUFVjbHFUYW5aZFNlK3BjQU45UTdDUVhMOC9hYnVBc2oyZTYvZEhXdzVGN1JEQXBLYS83U241MHhjRUlEQWlBUVN3RWVFek5BUUdJckQrMExVZStINTllQVN3TFRRUXdBWTZsQTJIR1VJQUt4TXRtOTRrSTRBMTNOd1cxVk5kcHkyR2J0Mms2R1hFcWpQSFo5dGQwcEd0ZSsrMzRjcU43MThsM2JIaFVMWTB2bytrMUtKTzJRTjhWd0dzVGZLWEdDUm1XR1lKOXYzd1V1bzdXWnkrejB1NlFreUhNNnl6WW10cjhsY0hFWFY5R2Q4TjU4dVcyQ2xLbVFBMngrK1BGRHpXKzBBQVF3QkxmYWJvRHdLeklZQUFOcHV0WXFJUWFFM2dXcEtPenQ1cU93NkhMUXljbmp4ZkVNQzJFRWwxWTR3RjJOWW43QTdaUTkyYlc1L2dMV2ZYRDAzNThxdTErQ0pOdTNmMk9jZklXeFVFc0tZRXg2dWY2am9kY2dXK0JqNldaY1VydXU4NkptU0ZQRzNJQ1VXT1pWZkh3eHRhWjYxMzNaZWdORGNCekV5ODk4Nk0rTUlBeUtMZzR5VzlLN2lIRGlWS1JHNTk4bXJyWjhFc2ZEL2lPSERuazJRWFlHZEcvVkxDVVErUXRIOUJmM1A4L2tpSTVkeXVoanByNnk2UTYxa2dIUy9RVnEvWHp5M00xbm5PdXB3eTlwMFRTUlRGWGZ5a3BIc1V1R09uWmsxL0VJREF4QWdnZ0Uxc1E1Z09CSG9nc0hMdGN1eXZCNVJrazBJQTJ3SSsxWTB4QXRqV0J6bFZmSitVbDRmakY2MGVSTjF2Mlo0MWZZQWYyd0xzcGNIaUppV3JzZnE2ZEVsOHFSTkRMTUs1WkV1c0MzNi9iN0NJR1l0ejFiaVhDbFpKVjJrNXVhYlhUK3d3Y3hUQXZEYUxQV2J5NjVBNFlOMHliaWhSSXBaeDZucEZaOEdKQVJ5VzRabVNEa3M4NEJ6ZHdmTy9TNG1SL0tXN29jN2F1Z0NXWDB1WlFPa1llSzlMdFBDcXVJdFQvdDVOdEh5NmdRQUVpZ2dnZ0hFdUlMQVpCRzRyeVc0RmZuQXNLbDBFc05SWmc0YmFFYnZ5K0FaNXZTQ0E5VU1mQVV5NmphUXY5NE4zc2IyV1BjQTJkVXNkRzFEVlE5alU0eEhGeG40OEliTmt1bWFCaFJzQ1dQenBHMHFVaUo5UjJwcGxaOEVCOHYyQ3pxN0FLUXNDV0RuTnNyUFcxL1ZhTkpNeXE5aVBTcnJuV29iWUxtZWl6QTNXc2ZwdW5ia2wvNkJMNTdTRkFBVG1TUUFCYko3N3hxd2hrQlFURmg0QUFCbUhTVVJCVkpwQUZ3RnN5QnVtbE9zdUVtVVF3RklTL210ZmN4REFVajBRakcwQjFzOE9qdFByVWdTd09RZS85MzJpM2VidlgzSUVQaVRweWNHQzhyTlpZUG9MNXVyMTlmc3dWd3V3cWl0cFV3V3dQcjVkN0RML3dTenI2dTM3Nkx6SFBzZTJBT3ZyZWkxQzVrUVdkZ3UvVWU3RFAwamFMWE9KZFZLSkx1WHlrajZWZlg5ZHJhQVRKK1d3MVdGcTBiWExmR2tMQVFnTVJBQUJiQ0RRREFPQmlSTkFBTnV5UVFoZy9SelVPUXRnamgvaWVHR3hCUUVzbGxSOXZUSUI3SWlRcmZPcytpNUdyekhuNFBjcmVJN1R0RStPNUJjbFBTTGJoMitFaDhpL2w0UUExdTI0SVlCMTQ3ZmVPdFp5TWQySWFYcmFKQUhNeEo2ZGZYODhxd0RkUVpMc290aFdvUEx6N1hORHh0cDg5MlhKb05Mc0lMMUFBQUtUSjRBQU52a3RZb0lRR0lRQUFoZ0NXSjhIYlh0SmZ0dmJ0ank2NEViMjk4Rk40dXN0T3oxZDBobHJiYStYV1FzY0pXbUhYSDlOSDBnUXdGcHVTSzVabFFYSGtGWUtYVmR6RjBrVzdPWVcvSDU5M2V1L0QxK1Z0Ris0VnRZZlRoSEF1cDZVWWRxWHVZVEZaczhjWnBiZFI1bXJtTmowOTZZdHFWUVd6MjNIWDdXN1R2Z3VjWUQ4OWVLa0NIWlIvR2JMQVc0UXJML3kvYm83ckw5YVFxVVpCSlpDQUFGc0tUdkpPaURRalFBQzJCWitXSUIxTzBkOXRTNDZuNmtmMkJ5TTJiR2xMcEJieEwwbHZiL0J3aERBR3NDcXFEcFVJb2swc3kzdXhRbEkzaTVwcjVKQjVoS0UrVjZaYStPL1NYcFVlS2c4cDJBOUNHQjlucVIwZlcrS0FPYWtEWi9MTXYwNmtjYWN5cVlKWUZYZmtXMnR3SnhvNGgyUzdsdXc4VmgvemVscVlLNFE2SWtBQWxoUFlPa1dBak1qZ0FDR0FEYmxJenVFQUZibXBybTdwSTgwZ0lNQTFnQldTd0hNTHFsMlRaMTZLYk51OEx6bkZJVFpENVFPVWw0a2ZLMzJBQUZzNnFkeHkvdzJSUUFyZTZGaEJrT0pUR1Vub3V4YUdYSnVVN0VBODVyTHJHVGJ2dVI2WUhqeFVNVC9pWm1WOTB2bWNha3lTd2hBb0M4Q0NHQjlrYVZmQ015TFFBb0J6Sm1jTGliSmYwKzErQ0hPV2RmK21HWGtJd2orK0x1MFU4ajBaSGZHcWpLRUFKWnFEQVN3Tk9mcTRzRWliNWVDN3NaK2dJMWRZVmw4RzdkdmE5MFFPL2JROVJEQWhpYmVicnhORWNCc3RYaFlDYUttVnIzdFNKZTNRZ0RibW8ydHJqK1FCYjIvY3dHeTkwcDZRTGhuaTltSGEyY0I5RDhqeWI4ZitYS3NwTHRtc2NWT2llbUlPaENBd0hJSklJQXRkMjlaR1FTYUVJZ1J3R3lxZnF1Q0c0c2ZaemNWeDBpYVE4eU45VGVLbDVWMDh4eWtNOFBOVTUwZ1U4ZDJLUGV0S2R4STE3RW8rM3gxMCtzOWNEWW1COW8yLzZMU1JKeHl2eFllZmlucHBRMkM2QllGK3JhVnpzMGsvYVRCSWhIQUdzQ3FxRnIxZlRJSEFleFM0YnRrNTRJMXBzcHlsb1owbWw0UXdOSnc3THVYVFJIQTlwZDBRQUZNeDYyN1UzWXY4NG0rUVZmMFA0WGY3U2xaZ0JsVm1SV1k5K3Qra3Q0VHNWOU9PR0xSc3lqenAxOStlb3lQUi9SREZRaEFZT0VFRU1BV3ZzRXNEd0tSQkdJRXNMcXU1aWFBMWEybnkrY0lZUFgwTEh6NVRlMzVRMVZiNWIxQzBnc0szdERHQ21DN1NucFQ1djV3VlVrV08yOFh4Tm02MlpRRlhEOHVQQ3o5cHE2RHRjOFJ3QnJBYWltQWpXM0JFYk5DeC8xNlYwbkZqNFlFRGwyRjlwaDVERlVIQVd3bzB0M0cyUVFCek04MmgwaTZmd0VxVzREN1JkN3gzVEIyYW8wQXRpMCt2N2c2Vk5MZENzaCtONHZuZGtkSkoxVlF0NXUycldvZlhsTG40SkJWOHV4T08wZGpDRUJnRVFRUXdCYXhqU3dDQXAwSklJQjFScmhWQndoZzFUeXJBdC8rMy9ERzk2eTFMdW9FTUF0WUI0WWIzUFdSVHdnM3puVVdYR1hpcmQ4bVc4aG9jdE9jVWdBcnNsSk1lMUtuMGRzWFFreXM5ZG1VWmVWMG5idExPbndhVXkrY1JaVkxqeHZZb3VIZEU1NS9tNmtoZ0xXaE5ueWJUUkRBbkhINFk1SnVWSUQzMjVMOG91VFh3NlAveTRnSVlNWHduZlhSbG5tcmwyTHJ0ZDRnNlRFbHJwQitsbjFTbHNEbWhTVjdHbnNmTU9LUllHZ0lRR0JJQWdoZ1E5Sm1MQWhNbHdBQ1dOcTlRUUNyNWxuMkFHQjNCd2VkUHpMWHZFNEF1MG5tem1xcm1xS1U1MVUzenF0aHlnSW10d20ybmxJQUt3dk1uL2EwanQ5YmthQlZkVWJHZG1HcUk1YTNibHl2NzRleDNiS01paWZYZFRLeno1c0tZRlVpUUplbHh3Yk9MaE9DdW95OTNuYXFicnFiSUlCVm5hMDJMelZTbllsVlAwc1Z3UHhNNmJpZS91TllYRGZJaEg2N2dGdUl0RXU0aGYrcUZ4ZHUvekpKKzVVQTk5bDlVVUZZQTFzRTIzcHN1NEoydUQ2bVByMzBCNEVGRUVBQVc4QW1zZ1FJSkNDUVFnQzdaSWkvY01VRTgzRVh2cG14WlU3K3BzWTNORTVsN2IrYmx0K0dnS3JmYU5xd1lYMEVzSEpnL3QxNVZYaWJtNjlWNWhwV0o0QzVueWRJZW5IQnNERXhSQjRoeVM0UytkTEcxUTRCck9IRlVtTFJWU1pLeGdvY3pXZVJwa1hWK2ZZSXo4bit4ekhxbGxZUXdMYmVVUVN3OFU1NDJmZTVaK1Rzc1g2eE1XYVpxd0NXRjdpdUVZU3VtMHJ5L1o4dDc2cEtURVpsM3o4NlR0ZlZDenJ5L1pzRDVYOXA3Yk03WkhOd29QeWlsMSt1VmlhYWpibi9qQTBCQ0l4TUFBRnM1QTFnZUFoTWhFQUtBU3oxVXNwRXBQOEljU0xPU0QxZ3d2NFF3TXBoWGljTFVudFV3UTFybWZYWDZpYldzY0hXUzE0SXFZb2hZc0gwTnBLK1Z6QXQvdzYrV2RMZXVjOU9sMlNYaks4MVBCY0lZQTJCbFFoZ1pkWnZiZmVsK2F6YXRiaHlPTjkyWDgwWFA4RDVUSDJ6WGRlVGJvVUF0dlgySUlDTmMxenRYbS8zWXIrOHlKY3BCTUQzbktZc2dMMHZ4Tkx5OTVlRkxWdHVyU3k0SEdxZ2JXbnk0cUxLb3N1dXE4N2s2UGljdDVEMDd4WGlWOU1Na20zWFJqc0lRR0JtQkJEQVpyWmhUQmNDUFJGQUFFc0xGZ0dzbUdjYjZ5LzNGR01CNW5wVktkQS9MR25Qcks5ODRIR25TN2VvdWt0dXltMWp4U0NBTmIrV2lsd2d5d1N3SDRYTW5CWTFwMWdlR3l3Y2krYm1CL01ITll3cE44VTFGczBKQVd4cktnaGc0NXpjcTJSeEh6K1hXZlJldW1ENFgyVFdSYmVVZE9JNFUvdkxxRU1MWU5zSDZ5emZsL2czOG1KQmlMZExZbEc4clQ3d05CSEFMR0xhU3Z5UkpSTnhVSHk3UXY1YmhmZ1ZFemkvajNYU0p3UWdNQU1DQ0dBejJDU21DSUVCQ0NDQXBZV01BRmJNczJuc3IxVXZzUUtZNi91bStiVWwyL2xFU1MvSmZXWVhDZ2RNenY4ZXZrWFNRd3ZpamRTZEZBU3dPa0xiZmw0a2dKWEZLcHF5QUZaMTNWZFpPRFluTnIwV0NHQUlZRk00bFZVQzlCSEJNbXc5d2NvWWN4NVNBQ3Q3d1RQMHVwc0lZSjdiUlVKSWpkdTNtT2lQZzFYeFYxdTBwUWtFSUxBQkJCREFObUNUV1NJRUlnZ2dnRVZBYWxBRkFXeGJXSDZyNnpoYit4UndMSXY5MVVZQXEzS0ZMSW9oY29Day9Rdm05TUFzRHNrN0d1ejVxbXBLQVd5VHMwQ1dDV0JUZG9HdUNuNS9USWhmYzFxTE16V0hKazBGc0w4TDExZFo3SjY2TmZ2N3hERWk4eVgyUWJ2c2ZQMHhFOUZ0S2RTMU9NNVVVVnpCcnYxMmJiL2tJUGdXVGZ4Yll0ZTlvdUtYSTYvckNqQkIreUVGc0NxWDBBUkxxZTFpZFQzOVp3aHUvOFBhRm4rdFVCVVByS3lib3QvNEJrTlNGUUlRMkFRQ0NHQ2JzTXVzRVFMMUJCREE2aGsxcVlFQXRpMnRzaFRuTVZtYW1saUFlV1Jubi9wVWlYdkVKNE1WZ0lXSXNyZmpwMmJwMkc4bDZmZ21teDdxcGhUQVdneS9tQ1pGSEwyNHFRcGdkY0h2cCtvU2wrckFOQlhBdW81cjhldUxXZnkrSytRNjZpcUF2VTNTUTdwT2JzTHRseXlBM1VXU3JieUtubTJtRkg5dlNBSE1SL0ZmQ2l5ZlV4M1IzMGo2WlJhWHl3Sy94UzBuR0hLbVcvL2JLWkxPNlRoUVZZYm5mTmUrOWgzbXdISEJLQkNBQUFSS0NTQ0FjVGdnQUFFVFFBQkxldzRRd0xibVdXV1ZWUmFiYTcySHBnS1lmOXNzT0pSbCsxcGxobkpHcWFJSHBpNGlDd0pZbW11cFRBQ2Jxa0N4cWNIdlY3dU5BSmJtM1BmZHkxSUZNUC9HZkNCWVdSWXhuSXI3bytjMnRBRG1sem1mbG1ScnNLYkZGbHgyS1hUUWVRdGJ0dVQ2bGlTL0pQSWZ1M2IzWFI0dTZmVTFnNXlkSlJlNVQvYnk2NE45VDRiK0lRQ0IrUk5BQUp2L0hySUNDS1FnZ0FDV2d1SmYrMEFBMjVybnZTUTV1MVQrTitjUGtoeUR5MWtocTBwVEFjeDlPZER2UjdLM3dUZk9kWHhzbGczUzdvME9oUHoyN0taK3I0S0J1MWpySUlCMXY1YUd1bjY2ei9TdlBXeHE4UHNWQVFTd2xLZXB2NzZXS29DVi9jYXNTRHJndTVOUVRLRU1MWURabGQ2SkFleFNXRmY4Vy96TVlQMXNnY3NDMkZqbFBNRWEwNjdFNTR1WXhCY2szVDlZb2tWVXB3b0VJTENwQkJEQU5uWG5XVGNFdGlhQUFKYjJSQXoxQUQvMGpYUWJTbVZDbFB1S3pZclhSZ0J6L3c2dWJxdUE3YktiZXJ0YVBpM0xodldLa0FueU9rRjR5OGNnNnVvcWd3RFc1cFJzM1diSGtKamdSZ1ZkZFJFbnU4K3N1SWVxMkVOTEQzNi9Jb0lBMXRmcFN0dnZFZ1d3cXQ4WTA3UGwwbTZTVGs2THNuVnZRLzl1T3d1a1JhU2RKWDBwdUN1YWhYK3JMcE5ieFZRc2JDOG42YUR3Rzk0RXRBVzdwNGNza3ZtTXowMzZvUzRFSUxCZ0FnaGdDOTVjbGdhQkJnUVF3TXBoV1NDeGUwV1RjcUZnWFhTemdrYTJoSHBjazg0cTZsNDNDRHhGODN1ZXBOY2tHcWRKTjdicVduZU5lSUtrRnhkMEVCdXJ4MDNiQ21CK2EreEE5ZzY0L1UrU3ZoN21VUld2cVM0Z2Z4MExCTEE2UXZXZlh5dXpERHhhMGs0RlZYMmVYbHJmeGFBMXFtSVBMVDM0L1FvMEF0aWdSNjcxWUVzVHdPcmMzUTNxT2RuL1BMczFzZlFOaHhiQWlsWlFGa052YkFITTl6TDdadTZhdm4rSnNmb3EyNTN2Uy9ybjRQbzVoSnRtK2xOQ2p4Q0FRRzhFRU1CNlEwdkhFSmdWQVFTdzh1MHFpMFUwcXcwZWNMTHI4Yk91bmIxNS8wd0lOcCtmZ2kyeEhoOFpRNlN0QU9ZeGJSM2d0UGRucmsyZ3pQckxWYnE2eWlDQWRUOXNWZTZFdHVvN3ZQc1F5WHB3WEoweVYxb1A0b2U1VnljYmJib2RJWUJOZDIvV1o3WTBBYXd1U1ByUHM0UW90OG5jM3I4M29lMUJBTnQyTS93OGV0c1E2K3VxQ2ZmS2lUSWVFWUx6STRRbEJFdFhFSmd6QVFTd09lOGVjNGRBT2dKVEZNREszS0M2QkNodlF3d0JyQm0xOWYyNW5xUTNGTVRoYXZwUTBrVUF5OC9lZ29YZFFmWXBXRllLVnhrRXNHYm5KVis3eXAzcGRFbk9KdnExYmtNa2JWMGxwdjQwelBjSFNVZWNabWNJWU5QY2wveXNsaVNBMmZYNHNNeVYvZllWNkcxSjVKaFdVeEkvRU1DMjNyQnJTdnEzQnU2T3o1TDBYa2x2a25UenlNdk9RcGl0aDIyUjJ6VXpaZVNRVklNQUJLWktBQUZzcWp2RHZDQXdMSUVwQ21CbGJsQUlZTU9lamFhajVmZW42TTF1MHpoT0IwamFQemVSSmk2VTYwM3ZLT25JRUJjc3Y3WVVyaklJWUUxUHpGL3IyK1hGY1YrYzlhdW9PQlBablNUOXB2MFF5VnZhdGNvUFpFWEZhN0VGMkpRZXZwTURDQjJXWlpycnk2V3F6SVVyOW51aFRBanFhNzdHWkhkNmYvY1Z1ZmIydFMvNWZtOFlzaERtLzkxbjFCbjBmalhVUkFyR3NUaGhVU09tK0VYR3F5UTlzcUx5VkFWb0JMQXRtK1k0WC8rYUJhM2ZPMmJESmYwNkJMbi9SUGhPdGJ2a2N5VTlNYks5cS9sOE95U0R6OWtwRGRwUkZRSVFXQkFCQkxBRmJTWkxnVUFIQWxNVXdNcmNvTjRac3ZnTjlWQ0pCVml6ZzFVbVVEcWowNTVaOXNVSGgvMkx2Zmtzc3dpS2ZkQmRuLzBsTTNlWVQyVnZqKzJhbVMrcEhwWVF3SnFkbDFYdEM0Y0hXcCtQc3VJSDNsVHg4OXJOY3V0V2x3b3V2ZzR1blMrT2hlZkEyODVNdGduRmJrYTJyTXlYdmdTbE9RcGdaWFBlaFBNUnM4WW1aK1hla2c0dGVaR3hHdXRSSldjeVppNTkxdGwwQWV6S3dTb3ZWdmp5WGppWnphTXp3Zk1YQlJ1emF4QzBtcnBPMmlyTThTUS9sb1ZqT0szUERhZHZDRUJnV2dRUXdLYTFIOHdHQW1NUm1Kb0Fkb2RnNHA3UDBHYytRejhFSTRBMU81V3hGbnEyOXJFTGk2MTV5bHdTbkV6QTFsLzdGVXpCTjhLM3pBUzFFeU9uVjJjeDBOUXFyV3pZcFF0ZzV1anNuZmZNWXF2WWxmV000RmJ5LzBLY25kVisrUDg3NllDRm9MSnlma21PNFhPZjhNZlpPc3ZLRkFXbHZTUzlxMlRDWFpNcFJCN3JTVlN6SmNlSHM0ZFV1enpuU3hOUm84bGlFTUNhMEpwSDNkaXpVaGYzeTZzOVN0SS9URlRZMkVRQnpNK2IzamRiZk5rS083YjhMbGo1V2V5c2NsMzB2Y0tCd2VJMnR1LzFldCtSNVBObks4ai95akpHTzVza0JRSVFXQ2dCQkxDRmJpekxna0JEQW4wTFlLOExONk5uWjNFZXZwSzl5ZnRsbUo4Zm9MK3hOdGVyWkdtNmQ4OHk5L2lOWGxsNVlNanMxM0NKcmFzamdEVkRGeXVBNVYxY0xZUlpURmtWaXlGK3lDMFRSWndsMEdmRmNhRmlTcFhGZ0FNazN5NkxDL2JqbUk1cTZpeGRBUFB5N1k1cVlYTElZcGNWdXp2NU8yUUt4ZTQzdGtxNGM4bGt1aVpUbU1JYVBRZG5VTFZyc04yUFhKeFF3cTVxRmpoZGJpenBmMld1cTVjb21YQmZMeXdRd0taeVF0TE5JMFlBdTFvbXBCeVIzUU5jdldKWVd3ZjcrOXpuZElwbGt3UXdDMVAzemI2M241NGxDMmxxb1ZWbDlWVzJyN3RrcnNZdmJ5aXlGZlZsSWV4QkRlNHZwbmpPbUJNRUlGQkNBQUdNb3dFQkNKaEEzd0xZQXlRZGtnRDFxWkljYStiNEJIM0ZkbUVyTkQvc1V1SUkyRkxIKzFUbm9tcjNzYzluYjEwdGVyWXBUZUoxMVZrTStFWTN4Zm4wT2paQkFMdFhDRDdkWnQvYXRMRlZtUU5kLzdCTjQ1N2FPUGl5TTV6YWlpMWZVaVJUNkduYWpidnRlcDMyOWNJQ0FhenhWazYrUVowQWRzWE02dmZqTmVMWDZuN21SUkcvUVdNQldib0E1bkFITndvdWk3NytxeXg3aS9iZ3E4SHEyMVo4ZGZjUlJlMzliT3RrS2M0MGZmMFdtL3piOEdMalN5M2EwZ1FDRUpnQkFRU3dHV3dTVTRUQUFBVDZGc0JzSldETG9LNUMwdFNzUUFiWW1zVU80VGZEZnN0YWxjR3JiUEcyUm5GOHBXOUYwbkgySndlK0xTcCtvTEtnczI1OUZ0bHRZYlZORU1CU1hjOHhuUDB3WWdzQ0J6NmVTdkc5a3kyYkhsTXlvU2JpN0ZUV1ZEYVBMdGRwcXJoNlJYTkRBSnY2eVdrK3Z6b0J6TWtEM3BmZFM5eTJvdXRQWmxibHR2YWRja3luSlF0Z0Z3d1crdi9ZZlB2UERWRHZjQWQxN282eFhWdUlzemZCQ3dveVVWZjE0YUQ2TDRrZGhIb1FnTUQ4Q0NDQXpXL1BtREVFK2lEUXR3RFcxWXJBYS81dU1Hcy9xUThBOURrS2dUYnVwWDhLd2ZRUGF6RGpzdXlDRmxmc0t2T2ZEZnFxcTdvSkFwaGpQam1BOEdYcllIVDgzQzZwZnBnOXRtTS9xWnM3aUxPdEU0clc3ek5sNjROdnBoNTB4UDdlbUxrSDc5TmlmTHZLK3VHempSVkgzWEJ6Rk1EOEFzakN2VVZGeXJZRWZMM1h1UzFlT2dna3ZzYnlaUzczQ0VzV3dMd25WOHErQXkxRXhscDNPODdYNDBNOHhkLzNjR0g0V2RjaEY1NFhZbGRXRGVGWWhrN1cwOGM4ZWxnYVhVSUFBbTBJSUlDMW9VWWJDQ3lQUU44QzJQYkJaY294bTlxVTQ0SVZ5SlJjb05xc2d6WmJFeWc2ZDFXTWZLTnNkOXAvYi9GUTdZRDdGczNXTGM3NmVOTzdDUUxZamlGemx0MWMraWdPUUd6M0ZRZE05cDVQclZTNWREdEJnRjFxcHhLckxBVzdwdGVweDdTbHpzTjZ0TVNab3dDV1lpL29ReXB5aFp5VDI5clNCVENmMFpnc25iYjRjdklaSnhJWlNuQnlWbWtuWFhsU1FVeXlQbDZJY2IxQ0FBSVRKSUFBTnNGTllVb1FHSUZBM3dLWWwvVEtGaGw2TEh5OU1MaktrWlZuaElQUjg1QjJQWFRBMnFyaWVHS2ZDMmZnMHgyek02MC9PTDBodUxDbFBsZWJJSUJaMEQ0NFdNK3Q5cTR1YVVIZFVmcFppTzlqQWNteHRSeHNmWXFsS3ZpOUxaMHM4aDg1eFlsM21KT3o2WDBvc3IwZlpKOGw2ZFU5UDlRaWdFVnV5RUtycmNkMWJHTVZQQ2FXVFJEQXlxeXV6ZDBXdlhZVDkvZGtWV2JIUHZmSXo3KytIN0JJN3lRZWx3a1dZczlzOFhLdHozblNOd1FnMEFNQkJMQWVvTklsQkdaSVlBZ0I3Ryt5dUFvN1JMS0pEYVFlMlIzVklQQVhBamVWOUdSSkQrM0pPbVVUQkxBdXg4a1BSbzdsWThITVlvbmZ1cytwVkFXLy8zYUlPYlBLbURpbmRWWE4xV0tENHpNNXZrKytXRUQyaXdxN3B2dUIxcTZocVVYbG9ya2hnQzNsZExWZmg2Mk1MSmcvTFhNcm5YTFErL3dLTjBFQTg1clhYU0V0VWpyUmpGOW9Pb2xSSDI3UjdVL1NsdDhrWjdZOXMwc250SVVBQk9aQkFBRnNIdnZFTENIUU40RWljV3FPRDZkOWM2TC8rUlB3NzU3Rmw3SGVQTStmSUN1QXdQZ0VuSjNYN2xOK2NGMHYvdDE2V1VURzBMdVd4QU55RENvblc2Rk1uOERLaXNmaTY5UUVsU3A2Nnk4Qjh2Vk9UNWlRcFdvT0RoQnZkMEQvbmI5K1VyNlVjQkQ2Q3dkeGZBaGhmUHFubGhsQ0FBS2pFMEFBRzMwTG1BQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUJBbndRUXdQcWtTOThRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ294TkFBQnQ5QzVnQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FRSjhFRU1ENnBFdmZFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQXFNVFFBQWJmUXVZQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdFQ2ZCQkRBK3FSTDN4Q0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUtqRTBBQUczMExtQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQW53UVF3UHFrUzk4UWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNveE5BQUJ0OUM1Z0FCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBUUo4RUVNRDZwRXZmRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFxTVRRQUFiZlF1WUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnRUNmQkJEQStxUkwzeENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFLakUwQUFHMzBMbUFBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQkFud1FRd1Bxa1M5OFFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDb3hOQUFCdDlDNWdBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQVFKOEVFTUQ2cEV2ZkVJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBcU1UUUFBYmZRdVlBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0VDZkJCREErcVJMM3hDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBS2pFMEFBRzMwTG1BQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUJBbndRUXdQcWtTOThRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ294TkFBQnQ5QzVnQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FRSjhFRU1ENnBFdmZFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQXFNVFFBQWJmUXVZQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdFQ2ZCQkRBK3FSTDN4Q0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUtqRTBBQUczMExtQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQW53VCtQdzNNbHhETlQ4Q3RBQUFBQUVsRlRrU3VRbUNDIi8+PC9zd2l0Y2g+PC9nPjwvZz48L2c+PGcgZGF0YS1jZWxsLWlkPSJlMSI+PGc+PHBhdGggZD0iTSAzNjIgMjAwLjUgTCA1NzYuNzYgMjAwLjUiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzI4NjQ5NCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIHBvaW50ZXItZXZlbnRzPSJzdHJva2UiIHN0eWxlPSJzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7Ii8+PHBhdGggZD0iTSA1ODQuNzYgMjAwLjUgTCA1NzYuNzYgMjA0LjUgTCA1NzYuNzYgMTk2LjUgWiIgZmlsbD0iIzI4NjQ5NCIgc3Ryb2tlPSIjMjg2NDk0IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgcG9pbnRlci1ldmVudHM9ImFsbCIgc3R5bGU9ImZpbGw6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7IHN0cm9rZTogbGlnaHQtZGFyayhyZ2IoNDAsIDEwMCwgMTQ4KSwgcmdiKDExNSwgMTY3LCAyMDgpKTsiLz48L2c+PC9nPjxnIGRhdGEtY2VsbC1pZD0iZTIiPjxnPjxwYXRoIGQ9Ik0gOTE3IDIwMC41IEwgMTEzMS43NiAyMDAuNSIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjMjg2NDk0IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgcG9pbnRlci1ldmVudHM9InN0cm9rZSIgc3R5bGU9InN0cm9rZTogbGlnaHQtZGFyayhyZ2IoNDAsIDEwMCwgMTQ4KSwgcmdiKDExNSwgMTY3LCAyMDgpKTsiLz48cGF0aCBkPSJNIDExMzkuNzYgMjAwLjUgTCAxMTMxLjc2IDIwNC41IEwgMTEzMS43NiAxOTYuNSBaIiBmaWxsPSIjMjg2NDk0IiBzdHJva2U9IiMyODY0OTQiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBwb2ludGVyLWV2ZW50cz0iYWxsIiBzdHlsZT0iZmlsbDogbGlnaHQtZGFyayhyZ2IoNDAsIDEwMCwgMTQ4KSwgcmdiKDExNSwgMTY3LCAyMDgpKTsgc3Ryb2tlOiBsaWdodC1kYXJrKHJnYig0MCwgMTAwLCAxNDgpLCByZ2IoMTE1LCAxNjcsIDIwOCkpOyIvPjwvZz48L2c+PGcgZGF0YS1jZWxsLWlkPSJleHBpcmUiPjxnPjxyZWN0IHg9IjU4NyIgeT0iMzczIiB3aWR0aD0iMzMwIiBoZWlnaHQ9IjEwNSIgZmlsbD0iI2ZmZjJkOSIgc3Ryb2tlPSIjMzM1NTZmIiBzdHJva2Utd2lkdGg9IjIiIHBvaW50ZXItZXZlbnRzPSJhbGwiIHN0eWxlPSJmaWxsOiBsaWdodC1kYXJrKHJnYigyNTUsIDI0MiwgMjE3KSwgcmdiKDM4LCAyNywgNSkpOyBzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDUxLCA4NSwgMTExKSwgcmdiKDE0NCwgMTczLCAxOTUpKTsiLz48L2c+PGc+PGc+PHN3aXRjaD48Zm9yZWlnbk9iamVjdCBzdHlsZT0ib3ZlcmZsb3c6IHZpc2libGU7IHRleHQtYWxpZ246IGxlZnQ7IiBwb2ludGVyLWV2ZW50cz0ibm9uZSIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgcmVxdWlyZWRGZWF0dXJlcz0iaHR0cDovL3d3dy53My5vcmcvVFIvU1ZHMTEvZmVhdHVyZSNFeHRlbnNpYmlsaXR5Ij48ZGl2IHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiBzdHlsZT0iZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IHVuc2FmZSBjZW50ZXI7IGp1c3RpZnktY29udGVudDogdW5zYWZlIGNlbnRlcjsgd2lkdGg6IDMwNHB4OyBoZWlnaHQ6IDFweDsgcGFkZGluZy10b3A6IDQyNnB4OyBtYXJnaW4tbGVmdDogNjAwcHg7Ij48ZGl2IHN0eWxlPSJib3gtc2l6aW5nOiBib3JkZXItYm94OyBmb250LXNpemU6IDA7IHRleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICMwMDAwMDA7ICI+PGRpdiBzdHlsZT0iZGlzcGxheTogaW5saW5lLWJsb2NrOyBmb250LXNpemU6IDIwcHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtNaWNyb3NvZnQgWWFIZWkmcXVvdDs7IGNvbG9yOiBsaWdodC1kYXJrKCMwMDAwMDAsICNmZmZmZmYpOyBsaW5lLWhlaWdodDogMS4yOyBwb2ludGVyLWV2ZW50czogYWxsOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3b3JkLXdyYXA6IG5vcm1hbDsgIj7np5/nuqYgLyDlv4Pot7PlvILluLg8YnIgLz7pmLvmlq3lkI7nu63lhpnlhaU8L2Rpdj48L2Rpdj48L2Rpdj48L2ZvcmVpZ25PYmplY3Q+PGltYWdlIHg9IjYwMCIgeT0iNDAyLjUiIHdpZHRoPSIzMDQiIGhlaWdodD0iNTMiIHhsaW5rOmhyZWY9ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFCTUFBQUFEVUNBWUFBQUI2UWw4SUFBQUFBWE5TUjBJQXJzNGM2UUFBSUFCSlJFRlVlRjd0blFmWUJWVjVyZGRGSlVSangzS2pSalIyVFRSV2JLQllFRU0wS05qYkZWdkVjcTJKSlhhTnZSZXdYU0tnV01CckNjV0NCdFNJaXIxZ2pUVldWQlFFalpvN0sreHpHY2JaTTN2bTdKa3pNK2ZkejhPRDhzL3M4dTQ5NS85bm5lOWIzLzhRRFFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNDeWJ3UHhhOE5wWUdBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFaGdIRUlJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkJaTkFBRnMwZHZMNGlBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUVF3RGdERUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFvc21nQUMyNk8xbGNSQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlJWUp3QkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFnVVVUUUFCYjlQYXlPQWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFRU1NNEFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBd0tJSklJQXRlbnRaSEFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUNHR2NBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQVlORUVFTUFXdmIwc0RnSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFCakRNQUFRaEFBQUlRZ0FBRXhpUGd2NzEya1BTNzhZWmtKQWhBQUFJUWdBQUVJQUFCQkRET0FBUWdBQUVJVEpYQTdTWHRKdW5Ga3I0ejRDVDNrM1JGU1crWDlCV0VpUUZKMC9YVndubittYVI3U1BwUGtHeUV3TGtrWFZTUy8xMXV2NUgwVTBuL3RaRlpNZWpVQ1Z4RTBrMGxuYWN5MGRNbGZWRFNHVk5mQVBPREFBUWdzTzBFRU1DMi9RU3dmZ2hBQUFMVEpIQkJTY2RLdWtHWTNzZUxsOVduU3pvbXMyand4MEg0MmpPTVkwSGlPRW12Qy84K1pacDRtTlhNQ0Z4WjBuTWwzUzdNMndMTHZwS09uTms2cGpqZDYwZzZ2dUI3M3Nyay9rSFNjeUlUL3ArU1BpcnB6eW8vLzFkSmUwczZiWW9MWlU3SkJQeCtjM0ZKUDhvc1pzYk8ycmVMMzAyN1N2cCs4Z3pUTHJ5NnBETWxmVDN0Y3E2Q0FBUWdBSUUyQWdoZ2JZVDRPUVFnQUFFSWJJTEFiU1FkSmFuNmU4cmZzUDk5RWIzeHNreVR1b2FrRTRxb25BdlY5SGVpSkF0anAyWWFpMjYyajRDampGNHU2UzQxUy85Q0lkenNFVjdTdDQ5TXZoVWpnT1ZqdVpTZTdpanBUWklPS3I0d2VZS2tYMlJhMkZnQ21IL3YzVlBTYTBQMHMwWFpMMlZhQTkxQUFBSVEyR29DQ0dCYnZmMHNIZ0lRZ01Ba0NUZ3E2eTBoRXFNNndWK0Z0TWlUTXMzOElRMWkybE9MTVo2U2FSeTYyVTRDL2p2clJaSWVIbG4rNHlVOU8zT1V5cmFSUmdEYnRoMXZYdThkSkIxZVNsTjA5TlQra2h6ZHQyNGJRd0R6Nzc5bkZsKzhQS0kwMmE5S3VtMlJOdjIxZFJmQS9SQ0FBQVMyblFBQzJMYWZBTllQQVFoTWljQk94Y3V3Ly9uNWxDYTFnYm5jTVBpcDdGZ3p0bE1USHlUcHR4bm1WVTEvTEhmcFBiRFh5K2N6akVNWDIwM2dDaUZGejJsMzFmYVQ0cXpmVEpLandlYlVMQ2lzMHBOenpkdmVXeFlEdTM3K3pWMEFjNnJlRVpJdW13dmtCUHQ1bHFRRFI1alg5VVBxZkYxRTcvTWxQV2xObjY2aEJiQkxTenE0aUVxK1JRMHJSTEFSRGhCRFFBQUN5eWVBQUxiOFBXYUZFSURBTkFqNDg5WUd1aFpkYklSOUdVbitZL3BLeGJmVlZ5bFNOZnh5N01wdzc1ZGs4M2ViNnBiYm4wZzYvelNXOHQrenNJbTN2VWx5dDNOTE9pU1NNcFpiTEdnUzJoeEI0QlNVSEVKYmJrYjBOejhDajVMa0YvQzY5bFpKZDgvc2JUYzBvWCtXZEsvTWcvVDFVWnE3QUJiekk4dU1kNlBkTmZteDVaclluMHA2bjZTck5uUjRjcEZLZUdkSm4rMDU2RkFDbVA4K3VHWHg5OEFiaTVUcG5Sdm1aaEhzVnBLKzFYUCszQVlCQ0VCZzZ3a2dnRzM5RVFBQUJDQ3dCb0dWS09WS1loYTFMaENNZDY4bDZZOUNoSVN2V1lsYktVUDlRTktOaTVmTGIxUXV0dStWb3lPbTBtem0vYTRCSnRNa1NqMGpmSU9mcTBLYjB4dWZYTE1HOSs5MEV4dnUwOVluNExOaUQ1dTY5bUZKRmxPVzN1d0ZkclNrNjlVczlQZUZJYnM5Nzk0N0l3Z0lZUGsyQ3dFc0gwcy9YNDZtOHhkTXNlWkNKL1lGYzNYaHJsVlloeERBL0tYWVl3cS9TNmZjdHpWL1FlYnFzZjQ3Z1FZQkNFQUFBajBJSUlEMWdNWXRFSURBVmhHd21PWFVEWCs3N0daQjY4SURFckQ0Y3V2d1RYWjVtRzBRd0J6OVpkWk9yNm8yVjlmYUxhTUh5aVZDbXFXajc2b044L3Q4Qjd4YXpiUGM4N1lKamZZbWVsdE5ZUWN6Y1pYVHZTVE5wZW9vQWxpK1p3UUJMQjlMOStSSTY5Y1VVVjUrM3BxYXhhVDdTUHB1aCtGekMyQ09BRDgwSW95WHAyV1IvSEhCVDdDcmFOZGhlVndLQVFoQVlQa0VFTUNXdjhlc0VBSVFXSStBMHlrK0ZQNm9YcStuOUx2OTdiUTlVOHB0R3dTdzJNdUZPZVJPb1hGVTBqc2lXL0xRVUxrdmZjZTRNa1lnVnMzVDEyK2IwTmhVM01FOC9tNGtuNlFjcHhVQkxBZkZzL3BBQU12SGN0V1RvN0pkNE9TRndWb2dOb0tyUXo0Z0ZGMUppU3pPSllCNWZ2Y096L3Q1V3BadkUvKzdCcEU4UHlsNmhBQUVJTEJsQkJEQXRtekRXUzRFSU5DWmdLTzkzaVBwdXAzdjdIL0RVWkpjeHIzc3NiVjBBYXdwK3NzRzRYdEkrbEYvcE9lNHM4bG56RlcyUE5aM01vMjF6ZDAwY1RhWGJSUWFYVmpCUGtWMUJSN21kUGJxQkxBdUluV2Q2SU1IMkRrL0xTeklXS1QvOFl3K1JLNGR2QzJyVSs1eU5uSXUxNS9sYjI3eDFmSjROcDYzWUZiMTNxek9KWWNBWnFQN1YwanlsekJ0N1EzaGM5SkNIUTBDRUlBQUJESVFRQURMQUpFdUlBQ0JSUlB3NTZSVEZPNDIwaXFkNnZlVm92cmd2c1VmNURaOVg3V2xDMkJOM2w4Mm8vY2U1R3JYS0twc25WQjR3TlJWQ3JNUGk3M0JhT3NUYUlxZS9GNm9zdm52Nnc4enF4NGM3WEZZVWZWeHY4aXNYeUxwRVlVM1hVbzB5aVlYamdDV2ozNHNBdXhYSWUzN3BIeEREZDVUN1BmVXBnUXdMM2dYU1M0MDBmUWwxdU1sUFZmUzcxb0lyU3VBMlp2cytEQ25wcUVzZUxrd3hyL000TE5nOEVQRkFCQ0FBQVJ5RWtBQXkwbVR2aUFBZ2FVU2VHUlJnZkVGYXk3T1ZSTS9HY3p0TFhKOVRwTC95UDJpcE44RTc1K21QNzVqTHhiMkZIclltbk5ydXYybFFZeXJYcFBUQkw5SkZQalhZS0IrV3FZMSt2ZmVpNG9xbGcrdjZlL25RWlQ1ZktheHRyMGJSMVM4TEFMQkVSQ09BSnU2MERQRUhqYWwrczVGOUVBQXkzY3lFTUR5c1l6MWRMNlExbTdQcjJxelg5Z0JpWWI0NndwZ0h0dlIzVzlwU00xOFo1aFBGMit5NFFreUFnUWdBSUdGRUVBQVc4aEdzZ3dJUUdCUUFuOGp5WCtVdWxtOCttMGhPdjFVa3IrWnQyamwxQ1ZYYmZSL2Q4cUZYK3lyYlYzQktDYUFPVVhDWGlKRHRaalh6N3JyS2MvWFpkMWRjWEdIeWlLR3FJNTN1UkQ5ZGFrYVlJZExjclNaOTVHMkhvRW04M3Z6dlhudzFsdHZsSG5lN2IrOUxBejZwYnV1T1ZyRjBSOVROcnNlVXdEek0rdG96VTlGZU1WRWlhYW9vNWpvbENxNDd5bkpndm5ITW9pNENHRGpQTWQxdm1CZHhDL1BNb2NBNXVmZlZSK2ZVMW0ybi9jSGhhcTRiWkZvNHhCakZBaEFBQUlMSklBQXRzQk5aVWtRZ01CR0NjU0VxblVGbzZVS1lFM0c0UFpsc1VGeFRpR2dLU3BwVXdlbnIvZlJwdWFiTWk3bTk4MlVyaDZxa081Y2M5a1F3bS9Lbm5XNVptZ0J6SCtmL2tVUUNYeVdtcXBramkyQWxTdklmalJVclhVa2I5K0dBTmFYWEwvNy9qcEVZTmxyODM1Rnl2R3BIYnJKSVlCNU9FYzlPd3IyL21Ic1BoVXBPMHliU3lFQUFRaEFZRVVBQVl5ekFBRUlRQ0F2QVFTd2JqeGRxdDVwbk5YZlIvWS91MW5obFdRRC9GeXQvT0thcTg4Yy9TeE5BTVA4dnYxVU5LWGkrdTdVU0tUMmtZYTVZaWdCN0VhU2JCTCs0aUlxZE5mSzFHTmVnR01MWVBlUWRFaGxibzRRZm14UnJlL0xQWEFqZ0tWRGMxVkgrMk91Mnh4UjZDSXo1VUl6S1gzdVZBaFhGNHRjdUlvT1QrbkgxNVQ3Nm5wdjNSaXVISDFnNnVCY0J3RUlRR0JiQ1NDQWJldk9zMjRJUUdBb0FnaGc2V1F2S3Vub3d1ajNlalczUEVQU2t6S2tGNVc3cm50eFRaL3RjRmN1VFFCcktqSXdkL043aTNzM2lWU1ZjK1hRRXpzY2s2WW9NSGVUdS9oRGg2bTFYanFVQUdiUnl4NUpkZDV4c1Npd01RV3dwcytzdmdVTUVNQmFqOXYvdnlDV2twL2V3M0t2M0dTaGdlVlNaV1VRZ01EaUNDQ0FMVzVMV1JBRUlMQmhBZ2hnNlJzUVkrV29MM3VwL2FpbEsxZlVPaWo4OCs2V0NsNU5MNjdwTXg3bVN2dkhPZkxsaDhOMFAzcXZycUw1NU1pb2N6ZS8vNU9pbXB6UDJ1NDE2K3ZxeDljV0JaYjZISXkrd2NHbjZGNlZnYnU4Z05lSlBpc2gyQ0xqY1VYbDF5dlVMT3l1a3V6VlYyNWpDbUF4RVgyZGlGVUVzUFFUakFBV1o5WGwrVXNuenBVUWdBQUVGa1lBQVd4aEc4cHlJQUNCalJOQUFFdmJBci9jdWh5OFgvN0t6VlVCL1pMNzVwWnUvUHZyYVlWaC9SUERkVitYOUtnZ1R0UVpDRTgxK3N2VG4zcTZXOXFPbm5WVlU1cXBxNTA2cmZYZnVuUTRzV3R6Q21CZVdsc1UyRlJmYW9lTUFITTZXRXhFZFlTZERlakx2azFqQ1dCRFJILzVEQ0NBcFQva0NHQUlZT21uaFNzaEFBRUkxQkJBQU9OWVFBQUNFTWhMQUFHc25hY2pQT3hWc24vTnBha1Y4R0lDV3AwUTF2VGlhb1A5SDdSUE9jc1Zsd3pteDlYT2xpU0EzVVhTbXlLMGpwVzBqNlF6c3REY1RDZTVCYkMyS0RCWG1IVTBwTk1ycDlTR0ZzQ2FCUExiaHFxeEt4NWpDV0JEUkg4aGdIVTcxUWhnQ0dEZFRneFhRd0FDRUtnUVFBRGpTRUFBQWhESVN3QUJySjNucmNJTDdBNlZTMzhlWHZZLzFkSkZtMmhRclI3cDB2S3ZpdlQ1ZHlNYUI4ZGUzcFlpZ0xtaTU5dERoRTRkN3JyMHRmYlRNcTByY2d0Z1hsMlRaNXAvUG9RZjNycFVoeGJBL0l6YkIreUFtb2xXaGRReEJMQ0xoN1JNUit4VlcxL3ZyMVUvUklDbG44YllaK2g3SlgwenZadFpYM2x0U1Q3ejFUYlZhTkZadzJieUVJREE4Z2dnZ0MxdlQxa1JCQ0N3V1FJSVlNMzhtNkt4SGw5VXhucDJndkY5N0lYWEkxZTllSnBlWE1mMldGcTZBSGJESXNYeGc1SjJyRGtDSjRmMHg3bjduQTBoZ0RXSlBYVm5lck9mY0dlTlByUUE1akZpNTZtYVNqdUdBUGFRaURHLzB6VjNrK1JJdmI0dEpvRDE3VytLOStVU1oyS2ZvYmNyUktGM1RYSGhBOHdwOWpkR0xzWURUSmt1SVFBQkNFeUhBQUxZZFBhQ21VQUFBc3NnZ0FBVzM4ZXFiMWY1eWxpRnQycHY1NUYwbUtUOUlzTThXdElMU2orTDdZY3ZHVFA2eTJzL1ZOTGRhdWE5aEFpd05oSG5xY1c2N2VzMDl6YUVBR1ltVGFLdWY5NDN5c2lGSXV5cjk5M000TWNRd0pvaUNsOVhwQzQ3c3ZPM0RleWFCSUdZNkZUM0xPNGk2ZjJTTGwvRE1NZTVSZ0JMUDV3SVlCSUNXUHA1NFVvSVFBQUNmMEFBQVl4REFRRUlRQ0F2QVFTd09NOGJoRFNpODFZdStiMmsyMGh5R2t0YnUwT1JNdlkyU1hXL3YwNlE5RGNsZyt5WWo1REhHRHY2cTBrNGVXTVJRV0ovSVFzVmMyMlhrMlQrbDZwWmdGTmJieXJwODNOZFhHbmVRd2xnOXNVN1JKSTkxS3JOMFhNUEM4OU9YWUdINnZWK052NUMwdk1sT2QzWVZTdnZsTmw3YlF3QnpPdUtlY3FWejlTUUVXQk42ZGE1L05tMlZRQzdZcWowK1Q1SjltSk1hUWhnQ0dBcDU0UnJJQUFCQ0VRSklJQnhPQ0FBQVFqa0pZQUFWcy96Z2lGRnhVSkl0ZGtRLzZFaG1xTnBONXJTSjUwV2Rjc2d3cmdQQ3dyMkVIS1VTRjI3WjRqSXlydjc4ZDZHRWs3R21uL2JPTEVVTWQ5M3VDVHpkclRPM051USsxaE4rV3VyYkZwbGVTNUp1NGMwNHV1VmZ0aEZZRTdkbnpvaHdsNWxyMHpzd0tuSlIwbjYwOUwxM3k2OEFYZVY1TFRDVld1cUtycUt2aHBTQUl1SjlwNWZyZ2pTYlJYQTdoNCtnMzhSUHFzUFNpajJnQUNHQUpiNEVjTmxFSUFBQk9vSklJQnhNaUFBQVFqRUNWd2tSSzQ0N1M2MXVjcGRYWnJiY3lVNXpTKzF1ZXJiaWFXTFk4TGFHeVRkTzdYVEh0ZmxlT0h3N3hxbkl6MnJabnhIdHpoS0pTVkZxOG5NdnBvaVpxSE5rUVYxZmxTcDZaWTljRVZ2R1ZJNHlUblBQbjFaM0xReHVjV0Nhbk5VVzdWcVg1OHhocnpuZ1pLZUZnejgvVHg5c2ppdlowWUdISElmbmZMM2x1QXA5WWhRVGJOTHhVeUx5QytOekR0M0JjNGhxdkhWQ1dCZWpsTm5ueHo1N0xpWnBFc1h4VE9PbDFTTkxGMDNCWEsxSDN2WGpKM3pNMlJiQlRCN1BqNnp3dFpjN1FOcFA2KzZxTEFjdjQrRy9Dd1pvMjlTSU1lZ3pCZ1FnTUJpQ1NDQUxYWnJXUmdFSUpDQlFKc3ZUNFlob2wxVWhhMDVDMkF4TWNxUktVN05PaUlCWkZNNlkxVkVzMGh4WkJEVzZnU1pmY1BQRTRiTmRzbVF3a20yU2Zic3lPbXJqdWFwKzV2Q0l1NmVwYlRVbmtNTWV0dHJpOGlUL1NzamZDSlVEdlZ6V0k1Y0czb2ZMWWFjTHNsUk1WMWJVN1JVYmlGeVRBR3NxYmlDSzR0K2RTQUJ6R25KVGtzZCtqTWtKb0Q1M0QyeGlKNTBKT0JjV3V3TG9Lb1k2UWhkUjRiZXNXWmgvaXp4ZjY4VG9ic0lZRTZIZitkY3dFWG1XU2ZpSW9ETmZGT1pQZ1Fnc0ZrQ0NHQ2I1Yy9vRUlEQXRBbk1RUUN6SDViOWdZWnFqaWl4WUZSdHFWVzNMaHU4dmV6M1VtMnZrWFJBZ3Y5TFV6cWpYK3o5RXZ6bVV1ZE5rV0pEK0NHbHNCOWFPRW1ad3hEWCtPK0kxMHU2VDZSelJ5VzlmSWlCTS9WNS9pRGUzYVNtUHd1ejlxQWFVd0JiZDFsTnFhZzVpeTJNS1lBMW1lRmJMSEZrNlhzeVI0RHQzR0I4LzlaQ2RIUDZYcXB2VmR1ZXhnU3dYNFZvd0pQYU9walF6MVBGbVF1SFBidHV6ZHk5bjArSXJBa0JqQlRJQ1IxM3BnSUJDTXlSQUFMWUhIZU5PVU1BQW1NUm1JTUFOaGFMUGdLWVUwZGZJZW4rTlpQOHRTU253RGp0eWMwVjFoemxWVzEvVkFob055NGlNZjQ4c3REcXkyaFRwRmpWSjJ4TWRrMENXTk1MMzVoejdETldrL245OTBJSzhiLzM2WGlrZTN6dVBpenBralhqK1NXOG1yWTdkU0d6TFFvc1YvVGptQUtZdDhacHF2WUtyTFlmRk5GeWp5elNJQjNGbHlzRjhtOUR5dVgvcmhsdkNGRnFHd1d3cXhhZWpSOHFVblp0TTFCdFRwaytPdkw4STRBaGdJMzBxNEZoSUFDQnBSSkFBRnZxenJJdUNFQWdCd0VFc0RqRmxBZ3dWd1MwdU9Bb3NDSGFUeVRaQThnVkhkMHN1TDI2SVJycGRjRVVmeE5tN0UwUkQwMWVSVU53eTlsblU4VFJ3WVhBZWQrSlY3ZmNLMFNBVlprNHN2RFd3VWV1L0xPcEMyQ2U2eGhSWUNrbStIVkc5L1kwYzVyY1oyc09vU3RjbmlLcHJ0SmxWYWgwK3JURmRSdmg3ekpBQ3FUbjRPaEZHL3VYUFNEOS81K1UrVXd2U1FCTC9XeUpQWGNXTlAyRnh6Y2lIVjFJa2lNQ3ErMW5OU21UUzAyQjlHZVFJMWVyN1plU1RrdmRBSzZEQUFRZ3NLMEVFTUMyZGVkWk53UWdrRUlBQVN4T0tVVUFhL0o1U2VIZmRrMjFDdHVkZzNGNDNlKzJxbGpXMW5mdW56Y1pYYzlWQUp1NytiMzN1TTZJMi84OTlpSStCd0ZzakNpd09nR3Nlbzdyem56ZkNDcC9sdGlQeTk1UUxuaGhvM1NMWlc1RFZvRzhVcWhVNktxYUZ0cjNrUFNqekI4TzJ5aUF4WjY3bkdtNlN4WEFNaDgvdW9NQUJDQ3dYUVFRd0xacnYxa3RCQ0RRallDLytYZUt4ZzZKdHpsbDVyR1JhMTJwOGIySi9mZ3lSMHI4dkhSOXpGdWxRNWRaTDAwUndEeGdMSFZwM2NtWTVSMUszM2czZVkxNXJFMkxURXNVd09adWZ0OGswTVpleE9jZ2dQbThEeDBGOXNJYWIwQ25pNWJURkhNS1lGNlRvOEFzWkZjTEJBd3BnSG5jY3dYaHpSRTJzZFM4ZFQ3UHRrMEEyeWtVUG5HcVk3WGxUQWVQQ1dDYi9sMVFkMVpTdmRQV09XZmNDd0VJUUFBQ2tZcE5nSUVBQkNBQWdlNEVtb3lhM1Z1cVlCUWJlYTRDMkJCUmRCWUdIWW54cVJJc3Y2VHVYYVNHdktER0wremprcHh5czRvWXFUTDIzdDBncEd2bU1yYXVqckUwQVd3VmtXT1QrTG8yZGZON3o5bVJVaDhKd2twMURTK0xGSmVZaXdCMm1jSkEvYmlJcjU3VE8zTjVnVFY5VXVZV3dHSmpEUzJBZGY5dDBPMk9XQ0VHcDJyZlBIaGxkZXR4MmxjMytlN2RQbVBsUmdTd2FaOERaZ2NCQ0VCZ0l3U0lBTnNJZGdhRkFBUVdTT0Fha2s2UVpJK1N1amFVQURiMUtwQk5nb0Y5VzFhZUpaOHNwUlo5clVobHZITHdqNnBqK2VnZ2ROWDl6RUxZblVLYTFNVUt2eDU3QlRsU0tSWjlkelZKaDBtNlZoRjFaNUh4ZVpuOWZWWnpiQkxBN2hIbU1LZkhvdW04ejhIODNxeGQrZkVEaGMrVHhieHFpKzNKWEFRd3IrY3B3Y3k5N2x6bFREV0xuVnNFc0xRbnV1bE0yZVBNKzdpVTV2ZU9weFdWVlo5WXM2QTIvNit1REJEQXVoTGplZ2hBQUFKYlFBQUJiQXMybVNWQ0FBS2pFR2hLT2ZJRWhoTEEzaURKNlpWRHRTNVZ0Mkp6c0xoa3NjdFZHS3VwblhYM1hEb0lWbGVwK2VIN1F6clNxUzBMZGxTWG81QWM1V05ocTJwODc1OC9KcGhvcjdwcUU4dldZZHdrZ0sxN050YVpWOTk3bThRVm01T2J2U09OcHR4aTZibE9kYnRwWWRiK21ackp6MGtBYTZyUTZiMXhDdG94QTI0UUFsZzZYRmV4M0wvbWNrZTc3bG5zMWNmU3U1cnNsWDduOE84cUZ5T3BzeFU0S255Mm41bHBCUWhnbVVEU0RRUWdBSUVsRVVBQVc5SnVzaFlJUUdCVEJOclNIejJ2ZFVXT1dBcmtIQVN3THZ2aWFCeW5uejBvOGpKWVRYM3MwdmZxV2tkOXZTT1NIdmJWSWhYeVZwSysxYWZqaG5zczZuMVVraXRqVnR1Nlp5UHpWRnU3YXpKWnQ4anB5cHovMXRyTFppL3czeitIU3JwYnpUUStFU3BBV3JTdHRqa0pZRTNSTmw3WHNhRWlvMFhwSVJvQ1dEclZKcTlFZTU0OVV0TGhoV2gvZW5xWGs3blNubDh1SXZDUDRiTTFOckc3aGpYbW1qZ0NXQzZTOUFNQkNFQmdRUVFRd0JhMG1Td0ZBaERZR0lHMjlFZFBiRjJSWTFzRU1ITjZleVJDb0NuMXNjdm1XOFE0c3VGbExEWEtyTXVZVFY1bzY1Nk5MdlBJY2ExOXY5NFU2V2hvVVNYSC9OM0h6b1cva3RNQUxZWldteU5VN2hjWmFFNENtSmR3OVVLUS9HQlliM1ZKUTBlQklZQ2xuOWFyQnE4dkYxMXBhaGJBZnByZTdjYXZ2S1FrRjVOcGEwTlUyRVFBYTZQT3p5RUFBUWhzSVFFRXNDM2NkSllNQVFoa0o1QmlVTCt1eUxFTkFsaFQ2bU8xNnVPNm0zaUZ3a2ovZUVsK1NhOXJ1ZjNBbGlLQXRVVTc1bzdpV0hlZlkvYzdJc1VDbU5kVGJVMmViSE1Ud1B4M25pTXFENGlBZUhmd3pFdU5BdHRGMGlNcTNDeklQTHRTdGRiRElZQ2xuMTd2MDR1S1ZQR0hwOSt5bUN1ZGVtN2Z4aU15cndnQkxETlF1b01BQkNDd0JBSUlZRXZZUmRZQUFRaHNrc0FGUXlxUnF3ZzJ0YklBWnFOOGY1UGZwZUxnMGdVd1J3bllPK3IrTlJCL0V0THFIQ1dRczkwNVJETFYvUzdNL1ZJV0U4QXNQT3d1eVpVcTU5QnVHQ0tLZHF5WjdNbGhuMzQ0ZzRYRVVzNStWVlJQM0UzU1NaRTF6RTBBOHpLYXhGZW5yTjR5RlBCSTJiYTZ2cjVkZUludEt1bjdsUTdtS0lCOU9uaHUvU2dGUnVacm1yNEF5RHpVcExyTC9XWERhbkV4QVd4U2kyK1p6RDhVWXZOejVqUmg1Z29CQ0VCZzZnUVF3S2ErUTh3UEFoQ1lPZ0cvUEw2bk1GTnYrenhkQ1dBV0VPdy81Vys3SDlaQkJGdTZBSGJISWgzdExaSFV4M3NHdjZiY1o2RkpkUE5ZT2YzQVlpSkVtK0NTZTgzcjlOY1dUVFNYaW5YMm1iT2ZrczljdFRYNWYvbmFPUXBnWHU4aGtweTZXdGZNd3M5WXRWQkUzYlZURk1CdUw4blZjS3ZWUEp2RWc2YWlGUDVpd2xVS0hUbVhHaG0zem5OVnZ0Y2ltRlBBcjV1cnd3bjNZODVPTmZiWkhLSmdCZ0xZaERlZnFVRUFBaERZRklHMkY3Wk56WXR4SVFBQkNNeUJRSnNnVUY2RFg5TCtTTkpoSlUrVUF6dUlZRXNXd0pyU0VRK1c5SUFPUW1IWGMzUFpVSEh5aXBFYmM2VmVMa0VBYTZvcTZHcDFycHo0K2E0YnNJSHJYWWpndzVLODk5WFc1UDgxVndITTgzWmhCMWQ4ckt1KzE2Vnd3WlFFc0xhcWduMEZzTldaK0hyNDdQbkFRQUpON09nN0xkZkNrRTNqTDdhQjUyUG9JZjFaOFdwSnp5MnF4WjR5NEdBSVlBUENwV3NJUUFBQ2N5V0FBRGJYbldQZUVJREFGQWcwQ1FMVitkbHY2aVkxTDZDcEl0aFNCVENua0RvYTdoWTFHNW96QXF2cHZEUVo3L3UrSENrNmUwazZxbVlTYzRvQWUwaUlpcWxqMlNXS2FOUFBycDlEaXhyVmlDSFBxOG4vYTg0Q1dKdDNtNFUvVjE1dGl3SmJWd0JMMlh0N3MrMHQ2YlNHaXgyOStVK1NIdFZ3emJvQzJLcHJSMlE1V3ZlN0taUFBlTTI1Sk5senpYNTFOeXA4MWx4TmNhN042YkdPcm5ScXNmLzNFQkZmVlRZSVlITTlMY3diQWhDQXdJQUVFTUFHaEV2WEVJREE0Z2swQ1FMVnhmdkZzdTZGMjllOVFOTGpXcUtjbGlpQStYZVFYMUtmVlhOUzdNRzFqNlIzam5DSzJneW91L29rMVUwNTlqSTJGd0dzeWV0dTZHcUN1WTlBN0ZteW1idkZzUzgxRERqSEZNalZjcHFxZDZaRzhFMUJBSE9seE5kSXVrUEx3YkNnZDFEa21xWVV5THBiTnBrV21mdjhiMHQvQ0dEYnN0T3NFd0lRZ0VBSEFnaGdIV0J4S1FRZ0FJRVNnVlR6KzlVdDk1SjA3MGlrazY5cGl6SmFvZ0RXNVB2MURFbFBHaWxTd1B3dlhwaWZIeWZwNnBGVHZtNDBXdXhsTEdZZ1ByV0hyY25yN3NSZ0hIN3ExQ1pkTXg5SDBUamk4TFkxUC90UStPKy9YS2dBZG9sUXdPQXFrZlc5SkZSNGJJck8yYlFBNW9pb3R5WjZaRFZWM3UwcWdLMlFiU290Y2pXKy8yNjNBRmhYaE9KbnhSY0taODdnR1J4cmlrTlVnUndxbFQzMit4MFQvTEZPQytOQUFBSmJRd0FCYkd1Mm1vVkNBQUtaQ1RqNndNYkw1YzlSdnpnNnpjTXBLOVhtbHpGWCtyUFJ1NzJTNmxxVENMWTBBZXo2b1hxbUsySlcyL3VEUWZuWWdrcVRUNUxuNktpVEEzcjZrYzFaQUd2enVudW9wSmRuZnI2RzZ1NnFSZFZEQzEwV0Vhck5wdWRPZFd0cWM0NEE4N3Fhb2xhL0Z6NmIvcjBCd0NZRnNEMGt2Yms0YXpzbkhvNGhCTERWMEc4by9LdDg3bitST0pkY2x6V2R2NmIxNWhvL0poeE9NWklWQVN6WHJ0TVBCQ0FBZ1FVUlFBQmIwR2F5RkFoQVlEUUNNVDhkUjhKOE1FUnpWU2V6ZWpscE1sMTMydC9kZ2toV2pjSllrZ0RtNkxsM1JZVEFueFFNYnlicEM2UHQ1dGtEdGFWQytzcStGU25uTElBMWVkMmxwQTF1WUN1alE5NjlvYUtvQzFXMHBkek9YUUJyOHkxc3ErUzVDUUhNWGxnVzdsNFlNZkd2MjJ5bm5OODhpSjExUDQ4Sk9ZN0kvSFZSckNSV0ZLUGNsOFV2cDFuNlM0M2ZqWFRJWStldmJiMjVwamNuQWN4UnE2K3ZXYmhUN3UyOTJhY05GUUhtYy9UNHpIUHRzejd1Z1FBRUlMQjRBZ2hnaTk5aUZnZ0JDQXhBSUJZcDVKZkhNd3F6NG1mWGpGbitkcjRwK3NraTJKMUNtbGE1bTZVSVlCWVBIV216ZncyajJOcGpXK2dYNDRzV0w2QlhDLy9zWGhqTm02MEZ0ajFEeEYzWDdXOUxoZXdyME1YMmJ3NHBrRXN4di9mZlBINGh2ay9Ob2ZoQlVRMzB4cEsrMFhKZzVpNkF0VVh6blJ3RTZCOUdPS3dyZ0hXTkZEcGZpQzZzMjdPbXJXb2JKeWJrMklCL3YvRDU5TXhFd2MwUnE1N2ZHQ2I1am43ekhQMlpWMjV0NiszNk9SaTdmazRDV0s0MWwvc1pTZ0FiWXE3MENRRUlRQUFDTlFRUXdEZ1dFSUFBQkxvUnNJRGpiL3hkcGF6Y1ZpYlNmNTBnZ1BrK3AxQzZjcDZybVZXYis3S0E4N0hTRDVZZ2dIbXRyNUIwL3doeWZ5dnZ0S0p5SmJxVjU4MmZoNmlNR3dTUjYwcVNMaHpweDZsY3U2N3hRdHFXQ3ZuZXNIOU5WZXFxVTR2dDN4ZUxpb1FXN2l5c1RiRXR5ZnkreVFQTEZUcnRTZGZtb1RSM0FjeG43SVloVXJYT1I4by9iMHBwSFZNQVMvSDc4dk5qOGVlNmxZZW5MVEt4U1FCYlZhQzB5SFNZcEdzbFBKZzJ5WCtDcEJmM1RKRk9HT0svTDltMEFMWHA4Vk01RFhVZEF0aFFaT21IVnBxVUFBQWdBRWxFUVZRWEFoQ0F3RWdFRU1CR0FzMHdFSURBWWdqRXhCR0xXVTZQZTFTaUFHWWdUU2J3MzVIa3FMRlBCM0l4QWVXRXdzL29wUVBTdFNkU25XZFpWNzhaLzc1NWpLVG5ST1o2VWtnQnVVeVJIdW1Yakd0TGFoSzVtcFpzSDdaYlM3SXBkSitXa2dyWlZyU2dPbTVzL3h6TnNYcmg3alBYb2UrNVRTRTRXaHlxKzN0aFR1YjM1dFJrNUo5cU5yMEVBU3lXd3IwNlMwMzdPb1lBNXJQbXZYcGppOStYUC9zY1NXcHZQb3ZJNWRZV1daa2lnTGsvcy9MbmxxTjdVOXBySmYxZFJjUlB1Uy8xbWswTFVKc2VQNVhUVU5jaGdBMUZsbjRoQUFFSWpFUUFBV3drMEF3REFRZ3Nna0FzK3N0K1hhNHFkMHp3LzJwTGdWekI4R2V3WDd6dFNWTFhIaEVpQ3Z5em1JQ3lLYkJkQkRDdjg1R1Nuai9TWkoyU1pEK24wOWNZNzlKRlNwd2p2V0lWOCtxaTlKcUdtNk1BZG01SmgwaTZTMlJoY3pLLzl4SXNGSHZPMWZhYmtQYjNid25uWlFrQ21KZnBQWDFUdzNydkdpSlVxNWNNTFlBNVN0VFB5dE5iOXNJRlNPNFhVaFRmVXhNQjFsYlJNMVVBVzAzRGhVM015NUdvc2ZiOW9wTHNicEsrbG5DTytsNnlhUUZxMCtQMzVaYnJQZ1N3WENUcEJ3SVFnTUNHQ0NDQWJRZzh3MElBQXJNa1VGZjUwUXM1VnRJK3dmOHJKblRFQkNPbm1CMGg2UllsSWs2bjhjdWR4WWVWR2Y2Y0JiQ2R3aG90RW83UlhLSHQzaGtHYW9yUWMvY1dWQnp4VjA3WmpBMGJFMSttSEFGMmplSmNPc3FtcmxKblNzWEFERnVRclF1bnk5WUpKUjZnUzhUZ1VnU3dwblRRNm1kYWVST0dGTUF1R1FvVWxEOEw2dzdBUVpMODVZRDlGbU9DVEZ0S2ExY0J6UE80UUlqdWRZUlh0WFgxTCt4N3NEY3RRRzE2L0NvM3A4bjZMUGpMcVRIYXhjS1hLOVgzSi8rZWZrZFJKZmpIWTB3aWpQSFY0S2ZabHJZOTRwUVlDZ0lRZ01EMENTQ0FUWCtQbUNFRUlEQU5BalpiUDFxU0l3R3FyUnd0MFZVQWMxL2x5cEQyZ3JwekVVbHdYR1dRT1F0Z1hvb05wZXVxWEEyeHUzNUJkbFd0ZFp1alVWNWRZNXIrZFVrUEtOS3VQbEFTS052Ryt1ZkNZUDFlTlJkTldRQjdTckcrSjBjV1ppODNSMU5WcTVXMmNkalV6MjhTOXN0UmJkWG1vZ3hPOVUxcFN4SEF2TmJZL3RvSTM1R3A3NjZwYmppVUFIYUY0RXQycVpaTmNDcWlQMHY4SllGYkxDTG5kZUZMaEZoM2ZRUXc5K1cvbSszemFHOHdDMktyOXBJZ3hBejlQRGd5OWFORjJtZVZVNXZuV2NyWlRybG1hZ0pZYlA5VDFqTDNhNmI4dTJQdWJKay9CQ0N3WUFJSVlBdmVYSllHQVFoa0pXQkI1VlUxUFg1YzBsNkZHSEJLK0ZrZkFjeTN1bnJoQzRLdzhxV2FjZVl1Z0ptUm96SnlOWC9UL3RtaVlxWk5zTzFaOUJsSlRrSHlpMkRPbDFDL21COGZJazA4OTVjSHMrdGZkRnhJVEFETEZhM1djVHF0bHpkRkNIVkpHV3dkYUtRTG1zUThwOHUrTTNFZVV4YkFyaW5wY1NFcXhBVTBWaUpSYkduVkNEOExYeFlDTGI3L0xuTFRVQUpZbTBlZ0k2d2VIb3BvbEovdnY0bnNYWnVuVzE4QmJJWEZRdFRCSVhMWEtkZU9GajAxOFF5dGMxbE04R256UEZ0bnpQSzlDR0M1U0s3ZkR3TFkrZ3pwQVFJUTJFSUNDR0JidU9rc0dRSVE2RXlnS29LVU83RHgvYUdsLzlCWEFHdWIxTndGc010TCtyQWtwem1sTnB2WWZ5VlV3MXlKWE4rVlpQK3RNWnZGVHdzRDlrMnk2TmFuelUwQWEvS0lLcWY4OW1FeDlqMU5sU3k3cG5KT1dRQXJpMEZPRDdSZzcraTJiMFZFWVVmRHVYaUhmYTJjeXVzWDZwand0ZHF6b1FRdzkrK0l5MzhLY3ltZkVRdDVkNWRrMzYrcXVPMm9Va2VFVlZ1YlIrRzZBcGpIYzlxZFB4c3NHRnFBanpVYityOCswNkYzT3JuVDhPcWF2d0JJU2NkZVp5bytNMlpYMS95bFJJNTBQSjlYQzRvL1NwZ29FV0JTbDJyRUNVaTVCQUlRZ01DeUNTQ0FMWHQvV1IwRUlMQStnVmdhbkh1dVJuLzV2NDB0Z1BtbE1EVjlxdzhOZTFmdFczTmoyd3RtOVpiekJZK1VxcitQSXpzY3ZlQ0lGVmVDOUw4ZDFlV0l1cmFYOFQ3cjZYUFBLbTJ1Nzh0bGJPMmV5eFFqd05xcUJNWU0wdnV3SGVPZUc0YjB1aDFyQnJQL25zVysxTDJkc2dCbWthZ3N4cStXK3grRk45RUJrdjV2emZyUFcwU04vYnJEc3pha0FPYnArZlBXNmJYM0QzTzEyTDJmcFBmVnpEM21MZmlyWUVidno1Tll5eUdBcFo3ZFdKUmE2djNiZGwyWGFEWUVNQVN3YlhzK1dDOEVJTEFtQVFTd05RRnlPd1Fnc0hnQ1RVYm8xZWl2VFFoZ1F3c29zY2lscmdLWTJkZzgrbHFsaUs1TlJITnQ0c0JPV1RTcDQ5RWtHRGxON21iRlh2NXdFeUI3anRtVS91Z0lIbnZHcGJZcDcyVlRsT2c5Z205VjZqcGoxdzB0Z0huY1ZXR1FLMG55NTh5bkk1T3hENWFqU3UyaFdHNHBBZ29DMkxvblliajdVL1p2TlhwTUFIT2F0cjhjV3FjU2NOMEtOMkdDYjZQL1c5Vk1oaFRJNGM0Z1BVTUFBZ3NtZ0FDMjRNMWxhUkNBd05vRXl1YjAxYzVpZjN5T0hRRTJKd0ZzN1EyWmFRZE5vc2tUSkQxclF1dnkzd1ZPbTNQRVVGMnpDYmtGcGJrMFJ3bTl1UENIZTJETmhQc1loMDlaQUh1dHBQMXIxdW0wd1Z0SG9xaTY3dU1ZQXBqbmRKRXdNZTlSck4wbStBcFcvNWExSjVkOTNackVEd1N3cmpzLzN2VTVCTEF1ZlhSWldVeHdTNGs2N0RKTytkcFlCQ0VDV0YraTNBY0JDR3cxQVFTd3JkNStGZzhCQ0xRUXVLOGtWeE9yTnFmdCtlWHJ2VFUvUXdEaldGVUo3Qno4bGE1V2c2Yk5ySHRzbXBjcmpMMVBxS2t5NTNrNEhlMm1SVXJzNThlZVZJYnhYTVhWNHRDalN4NUtmYnpNcGlxQXJmeThITEZhYlgyRXZoanlzUVN3dGkxdkVtcFRxbnJtRk1BYzJlcnpaYysxVlRHVUZBR2piWTNiK3ZNdTR0WFlSUUVRd0xiMVZMSnVDRUJnTVFRUXdCYXpsU3dFQWhBWWdFQk1ESGhyTUdXdXE3S0dBRGJBUnN5OHk5akx0cGMxTlFIc0lTRUNyQTY1RGRPZDlwdnFselhGYmZQZlBWY05YbjJmQ3RGaFhlWTVWUUdzYVY3ZmtIU2pUR21yVXhIQW1xcVVwbFQxekNtQWxTUHZqcEgwOUZDWmR1VmhtTXNFZjRkZ1FPOS9WNXNMaG94aGhqNFhFL3d1SWxxWDV4OEJyQXN0cm9VQUJDQXdRUUlJWUJQY0ZLWUVBUWhNaGtCZGxJR2pZUFlvVW16ODhselhFTUFtczMyVG1jaGNCTEFtRWNWcGRMZVY1QmY4Ylc1VEZjQ2F6bGhLU21EcW5rNUZBSXRWS2YxQkVabDdZMGtXL1pwYVRnR3N6aWZSRlJGZDhPTnpxV0FUcm12YTR6NmVqQWxEL3NFbHNUa01tUUxZTkU4aXdNWVJQdnVjRmU2QkFBUWdNRWtDQ0dDVDNCWW1CUUVJVEloQTFSRDg4WktlTGNtQ0FBTFloRFpxd2xPNVprZ3JQSC9OSEoyeWR1UkU1dDVrZm4raXBEMGxuVHFSdVc1cUdsTVZ3SnJPbU5PNDc1Y0oyQlFFc0tZcXBVY1ZvcE9mcVROSEVzQmlsU2hUaGJndTIzSVRTUitRdEtwS3U3cjNqT0svN3g2cUVuZnByOCsxQ0dEUzhaSmNQYlhjaGhRQThRRHJjMUs1QndJUWdFQ0VBQUlZUndNQ0VJQkFNNEh5QysvSGk5U1d2U0krTDZ0ZWlBRGpSRlVKeEtJVWZOMVlrUnR0dTlKbWZqKzFWTTIyOVF6MTg2a0tZRTZ6ZTQra3VyL3J1bGE2YkdJM0JRRXNabjd2ZWFkV3U4d1ZBUlk3RHpuVFRsZjdFYXRtK3IwaU1uUFhRdVIwVmQyaEd3SVlBdGpRWjR6K0lRQUJDQXhLQUFGc1VMeDBEZ0VJTElTQWZaRmVJTWt2bVRZSWIyb0lZT052K3Jra1hWelNYMGk2VnZBN3N1ZlJ2MGo2WCtOUDV3OUdiQklucGlLQUxkWDhQdmYyVDFVQWM1WExBMnNXbTdNQ3BMdlBMWUNkSi9oYTNTQjh2anB0OEp1Uy9qYmlhZFhFMzBLUWl6VDhlOEttNXhMQTdFWDJFVW1YcjR5WnUwSmZrK2RaYXRSYkFwYldTeERBRU1CYUR3a1hRQUFDRUpneUFRU3dLZThPYzRNQUJLWkN3T0xBYnNWTHpoc2FVaDlYYzBVQUcyN1gvTEpzb2V2cXdlZkhhVjhXdWk0V0dYSXFVVXV4RkJaUDI3NWFSdytITExubnBadmZKNE5vdVhDcUF0aExpOGpVaDliTVBYY3Ezcm9DbUFzby9KL3dITWVlM1NZRGMwZXp1ZHBpWFh0RllCQkxUeS9mazBzQXUzUlJFZmlqTlZWVDN4aWkwVkxta25JMm05YnRmWDk1U2ljWnJrRUFRd0RMY0l6b0FnSVFnTURtQ0NDQWJZNDlJME1BQXNza2dBQzIvcjVlU0pKZkxGY0NsMDJ0cnlEcGZCMjdub29BOXNnUVFWaWQvcEMrTVYxUVhWRFNzWVVRNXlpY2FzUDgvcHhFbWdTdzNGRS9xWHNZODZIeS9aOG9JcFJ1TGNsVkFuTzBOZ0dzSEkxcGdldHhrbmJzT0hCTUFQTm5nUDJYTE1Lcyt5emxFc0JpNmMzUGt2U0VqdXVPWGQ2MGJoZGxjZFRiNXpPTjFkWU5BdGo0QXRnekpkbDd0TnB5RnJkbzIzZCtEZ0VJUUdBeEJCREFGck9WTEFRQ0VKZ0lBUVN3dEkxWWlWelhrSFR0OE05Zk5rUnpwZlY2enF1bWtGNW93K3JEZ3pGM2RRMi9EQyt2bittenVJejNOSGtxWVg1L1R0QVdZZDhSS3Z4VnR5QjN0RlhxRnZzWmNtcTJuNmxxTzFqU2ZSTWlWMVBIcWhOOGZpUHBxNUwrVk5LRlV6dHF1SzVPQUxOSWUwU0V1N3V5MGIranBCeGhsdEp5Q1dDeDZNNWN2bXU1MTUzQ3B1a2FCTEJ4QmJCZGl0OFJGcnFxS2JiZUkwZWszM3ZkRGVWK0NFQUFBdHRHQUFGczIzYWM5VUlBQWtNVFFBQTdtN0JURmwxWjhJckJPOGhDbC8rUWo2VXM1dDZiS1FoZ1RlTEVFRWJaWFJsYW9EdEUwbDBpTjQ2Wlh0VjE3cHU2L3A4bDNXc2l2UHgzM05NSzRlZUprZm1zSzhSY1N0THR3L05yOGV2UE1vbGNUWHRYRmNDOHhzZEllazdrcHA5SXVwbWtMM1E0RUxrRXNGaDBaNDdVWm91dDluV3pzWDlkMjBRRUtRSllmd0hNMVV2OURObmo3bmNoS2pOV3JkUlJuVDVETHk3RTNjdEU5dDhSaG80MHBFRUFBaENBUUFjQ0NHQWRZSEVwQkNBQWdRUUNDR0JuUTdwcVlXejlJVWtYU2VDVys1TGM1dDk5NW1jQjhOWEZDODk5SWplUGFWNGRtMytUUU5mRlZMd1BuN25lRXhNOXZCNm5wTzFadkx4K2JJVEYrVys0TzBteTM5UU9OZVBsRUVpYUtwam1YT0ovRm12NW9xUVBTM3BmVWRYd0dFbG5oS3FXQnhTaTIwc2lhL1FjbkI3MjdJNVJiakVocDRzb2JmNnZyM20rYzBSMitqUHpUU0Y5TmNiNUdaS2UxSEhkNis0WkFsaC9BYXdwZXJUcnZremg5MXZYT1hNOUJDQUFnVWtRUUFDYnhEWXdDUWhBWUVFRUVNRE8zc3p6UzdMSWM1TUI5L2Yza3I0ZnZJNmNTdmlwRUFueVUwbitKNWNKZGRjbCtOdCtlN2M4b3VIR0tYaVVQYVZnOU9USUhMdVlpbmZsTStmcm02cDZlbDNmS2Y3WnZ5aWNjVnlJOUJoaXJZNEtzZkRqQ0s5WXkrRkp0ck1rOTNPMWpJdHdoSmVONDkydlBjb3NmSjFXMDMrYndPZGJQaTVwcjhMOC9wU084M09xNW5za1hiZHluMU1vYng2RSs3WXVZOTVjWFVTMHVqR2NDdjdtSW5YNktnMFQ2THZ1dGpXMS9Sd0JyTDhBWnJheFloVnQzS3MvSnpXOUt6R3Vod0FFSUJBSUlJQnhGQ0FBQVFqa0pkQlZBUFBuc0wvdGJ6T0tmbkFremVsdGhkRHpzTHhMT0Vkdi9vTjkzNXIrN1QzeTNwci9ia0hLd3BNak90eGVHOFNBZGFkb0UrOVBobjhjWFdPeHk4SlgzWXR6MTdFdUlla0RraTRnNmJ1U1BodjYvbHhoNHYzcjhQL3RjK1MwRmI5bys5K3hkbEZKOWdWNmFrZ1hpMTAzdG5sMTNUeTg3ZzlHWHJTOVhxZVYvVnRYbUZ0d2Zhb29kSHFJWnZwUlJpYjJoTEtnYkwrdHRuYlBvbmpFb1cwWHRmemNuMC91NDI0OSt2SDZiYzd1QWd1TzdQTHpaQlpOejg5cUdJL3J6eGg3ZTlWRnQvbTZkYUx0bXFKeC9rWFNuWXUwUzg4LzFwcTh1ZnBHZGxvMGYzZ1F6bU5yWG5mZFBiYnhITGNnZ0swbmdOMDl3elBwMzdIMmJhejcvYnZ1L25JL0JDQUFnY1VUUUFCYi9CYXpRQWhBWUdRQ1hRV3dwcXB5STA4OXkzRFZ0S3V1Zi9EL3VFajcrVWo0NTlNZFg1cjdMcUNwaWw3ZlB0dnVzekcrQllwVTArNjIvdnI4M0w1ZlRyT3FheFl0OWdscGFIMzZYdm85c2VkOEt1dTJLYjZGMkZNelRPaUJ3WXVxcWF2VmMrdW9LbGRxdE05UlgzSGFxY1BtKy9TV3VmdWE1NjBSNWRrVWpXTS9zVmNHd2E0NkRVZG0rVXVIbUpkaFY5ODhWODdjUTlLckNqKytQMjlaczc5WThITjdaSVo5N2RNRkF0aDZBdGoxUXVTanhjNCt6ZUtYbzB2dFE3aXA2T1krOCtZZUNFQUFBcE1oZ0FBMm1hMWdJaENBd0VJSUlJQkp1eFV2M3llRi9ZeDVDSzJpUS95eTdPZ3JpMTJwMFNGREhKVllxZmtoeHVwajJwMTdIbjRCZTN2d3E2cnIrNjZoZW1YdWNaZlNueVA5anBia0Y5cXB0WFVpbytyVzRvZ3pQNk11bU9EMjlmQVM3MmZYWXJYRnJsWEU1N29zSEEzN21pTHE4ZzR0SGZrYWU0T3RNMjVUOWRPKzYramltMmZoYSsvZ1g5YVU3cmlheTZiRkw4OERBV3c5QWV6U0lmM1h4U1c2TnFjTlcveHl5akFOQWhDQUFBUjZFa0FBNndtTzJ5QUFBUWhFQ0NDQW5WTUFzMURnRkNxblJkb1R5ZDRsNjBTSERIWHcvTUo5eEZDZGwvcjFOL2cyTGg5anJLYmx1RHFuMHgvclVtOVBEdW1QUHh5Qng1eUhzSCtVUlRDblJFNmxPUUxUNTh0cGZMbWF4ZEliU2ZweVNBMU9TV0hzT3JiL0hyVzNtZzM5MjNqYUlOOVJVT3RHdHcwaFlxWVkwM3RjQ3htUDdsQVIxNks1MHpMOUdickpOalVCYkpmZ3MxaU5xUEx2R3hkR3NCaWNzOFcrMEVrdE9PRm9ZMGNJdWpLeW02c2lYeWt5d2E4VXFjZit4eUt6MHgzNVBNNjVrL1FGQVFoc0xRRUVzSzNkZWhZT0FRZ01SQUFCN0p3QzJFQ1lzM2Q3VFVsT0c3TngvMURONHBjOWZtd3V2OG4wRmYvdWYxbUlvS2xicS8zTGJJNVBheWZnbDFjYmxsK3IvZExCcjdBeCtqM0NTL1BnZzJVY3dKRmxGaXNlbGREbis0dTA2RHRtRUw5V1E5MHVSRUkyZVc0bFRPdS9MMm1ibTFNbW5lYm8rWGRwTGhTd1gvamlvTXQ5UTF3N05RRnNpRFUyOWJtdUFEYjJmQmtQQWhDQUFBUXFCQkRBT0JJUWdBQUU4aEpBQUp1bkFKWnFiTjczdERodHpHbUZGaWsyM1M0WHhMNjZOSndwbVBOdm1rL1g4ZTFaWlZIRDBUOXRIazVkKzA2NS9uMlMvaW1rSlE0Um5aVXloM1d2dVd5SWNsbEZ4dFQxNTRJZjk4c29mbmtNL3gzc0loK0hGZWJ6M3NlK3paNWM5dytScmsxOStKeThwY0hZdjNxdks3VGE1K3lNdmhQTGZCOEMySG9wa0ptM2crNGdBQUVJUUtBckFRU3dyc1M0SGdJUWdFQXpnYTRDbUtNZjdMSFRsdll6Ris3MnFYRWtsVk5RNXRTR01NSjN4SmZGQ1p0dE8yMXJLdUpFVTJHQ0taanp6K25jVk9mcW9oWk9qYlM0ZUlNaXNzbm5LbmV6WDk1L0ZGRkJObXJQNmIrVmU1NWQrek12cC9pZHQrYkdnMEtxMjFCQ2tMMlpIaGVxWFY0b2NlS3I1L3M1SGNSSC85MzlHRW0rcDZsWktML1BCUDJlRU1BUXdCSWZEeTZEQUFRZ01FMENDR0RUM0JkbUJRRUl6SmRBVndGc3ZpdGQ1c3dkQldJajduSksxSlU3Q3BTL0dLbDZaWjhkYURLL2Qxcm1iWU5ZMTZkdjdvSEFPZ1RxeENHTFRJOHNucitYanlnZ1c4UnNTNFcyRU5mWFg4cWZNVTZEZHNSWXRUbFMxS21nN3g1eHZWMzJEQUVNQWF6TGVlRmFDRUFBQXBNamdBQTJ1UzFoUWhDQXdNd0pJSUROZkFNWFB2MG04M3RYRjl0ZGtnMjNhUkRZQkFHTFE2OE8wVS9mS1NwTzNqTkVWMjFpTGtPTzZZZ3pHNXV2cWorNjhNUS9URmo0V3JGQUFFTUFHL0s1b0c4SVFBQUNneE5BQUJzY01RTkFBQUpiUm1BdlNmdlVyUG1Wa3B5NlJJTUFCQ0FBZ1RnQis0RzU0dUdCUmZTWG95bVgycHdxNjBxUXp3b1JvNXNzakpISzJPbWhGdW9jSlZ0dWpvaDcwVVNNK2xQWDB1ZTZXTlhKYlZsL0gyYmNBd0VJUUdCU0JCREFKclVkVEFZQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQWdOd0VFc054RTZROENFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUJnVWdRUXdDYTFIVXdHQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUlEY0JCTERjUk9rUEFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFZRklFRU1BbXRSMU1CZ0lRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUNBM0FRU3czRVRwRHdJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFHQlNCQkRBSnJVZFRBWUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFnTndFRXNOeEU2UThDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VCZ1VnUVF3Q2ExSFV3R0FoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFJRGNCQkxEY1JPa1BBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBWUZJRUVNQW10UjFNQmdJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFDQTNBUVN3M0VUcER3SVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRR0JTQkJEQUpyVWRUQVlDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBZ053RUVzTnhFNlE4Q0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQmdVZ1FRd0NhMUhVd0dBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBSURjQkJMRGNST2tQQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQVlGSUVFTUFtdFIxTUJnSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQ0EzQVFTdzNFVHBEd0lRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUdCU0JCREFKclVkVEFZQ0VJQUFCQ0FBQVFqTWhzQk9raTVjTTlzekpQMThOcXRnb2hDQUFBUWdBQUVJYkFVQkJMQ3QyR1lXQ1FFSVFBQUNHeURnMzdFWGtiUmpaV3pFZ1Exc3hrS0d2SnlrMTBnNld0TEJrazdaOExyK1J0STdhK2J3QmtuMzN2RGNHSDQ2QkM0cjZUeVN2amFkS1RFVENFQUFBaERZUmdJSVlOdTQ2NndaQWhDQUFBVEdJUEFua3Q0dGFmZktZSWdEWTlBZmY0eVY0UGxyU2FjTk5QeERKTDJzMVBmSEMySGhtWktPbFhUbVFHTTJkWXNBdGdIb014cnlYRUVJUFRBSVlQOG82VG1TL25OR2EyQ3FFSUFBQkNDd0lBSUlZQXZhVEpZQ0FRaEFBQUpyRWJoVUlTVGNzTktEWDlST2tQVFRIajB2UVFCejFNYi9MQ0tPYmlEcGtpSDZhQk5DU3cvODJXOVpDVnlPNnJ1NnBDdEp1cktrNjBqNnMxSXE0TDlLMm5zQUVleUNRZWp5WGxUYnB5VGRzdWM1WFFjVUF0ZzY5Slo5cjU4VEMxLzdWWlo1cUtRSFNUcDkyY3RuZFJDQUFBUWdNRVVDQ0dCVDNCWG1CQUVJUUtBZkFYL2JmbEZKL25mdTlwdndjdjFmdVR1ZVVIOTFML08va3JTYnBKTjZ6SE5PQXBqbmFxSEx3czVmU2JweGtkcDI3WXEva3oyZGJpcnA4ejFZVFAyV2xaZVZuNStyU0xxNHBHdEp1bndRdWl6K1dReE1iZmVVNUJmOW5PMDJrbzZTVlBlMzJ4RGpwY3dkQVN5RjB2WmQ0NmpYUXlSZEpyTDBZeVRkUmRLcDI0ZUdGVU1BQWhDQXdDWUpJSUJ0a2o1alF3QUNFTWhMd0FMR1IwTTBTdDZlcFZoVWkwV0NCK2NlYk0zKzdMSDFJa25mN05qUFVnV3dsVEQ2eDVMK01vZzdqbHB5Qk5QVmd2Q1ZpdW9mUWdwVDZ2V2J1cTVzenU0b3JaMkxNK0VJS3EvN2o4Sy9IYUhpZjg0M3dDVHRkYlNIcE85azZ0dDc5NVlRV1ZidDBtbVFlMjNJRDJ4S0FsaHNMcG0yWU5iZGpQbmNXaWorKytLTG1LZTNFRU1FbS9XUll2SVFnQUFFNWtrQUFXeWUrOGFzSVFBQkNOUVIySVFBTnNXWHpyNVJXMU1Td000dDZiZVJZKzZvQ2dzNXZzYk5nbzdUNGl6NldPenl6eXpzT0txcnJrTGZPay9QaVpMMkhEaHlvMW84d0d1eVVIZUJNUEZWZEpiL3IwV3Q2NGJvTEsvL1l1c3NMdk85ejVEMEpFazVvaWFkbXZ2Qm1vSUtudkttb3I4OE5nSlk1a016VUhkakNtQ3JKVnhQMGhFTlVXQyt6Z1VkRHNBVGJLQmRwMXNJUUFBQ0VQZ0RBZ2hnSEFvSVFBQUN5eUdBQUhiV1hnNHBnUG4zNXZXTE5MU25TbnA3RVQxMVVNUHg2WnNDZVlraTFmRDlraHpaODdUQ1JQcmZLMlA4czZSN2JlallXcFM3ZWVFMzlhSEU4UzlVbUxQNzVkdUNuSnZGSzZkV2x0dlVoS3ZFcGJWZTVwUlJSNEhabjJ1ZDVqTm40M3NMQmRVMmhpRFpOSGNFc0hWMmRyeDdOeUdBZVhWT0hYYmtvbE9uWTgzUllzL0xKQlNQUjVTUklBQUJDRUJnbGdRUXdHYTViVXdhQWhDQVFDMEJCTEN6c0F3aGdIMDZWSE44UWZDRzhqZ25GMUU1TjVQMHc4aDU3Q3VBMlNENlZhVStMYlE5VWRLWHdrdmlKZ1V3VDh0aXpNTVNuOEVoejJUaUZEWjYyVnNsM1gzTkNKY3JGRUxhOFRXcHFvNHMyN2RJYXoxeWd5dEVBTnNnL0E1RGIwb0E4eFFkcFhsNGtaNXZEN3U2OW50SmR3clJZaDJXeEtVUWdBQUVJQUNCN2dRUXdMb3o0dzRJUUFBQ1V5VXdwTmdROHdEYmxoVElYNGRxa0k1b0tyZW1GOHMrQWxoVHBUOTdyVmtZRzBzQSsxbmg3L2Fqd2wvS1VVWVcrVDVaUko1OW8waTUrM3FIZ2doRG5za3BQWWRtZFZwZ1pHWVdUUDN2TDBqNmlxVGZyVEhacHhUQzU1TnI3ajlXMGo2RjM1STk3N3Eyc2M1UTEzbFZyKzhpWmsveHMyamQ5ZWU2ZjVNQ21OZmd6elduUTk0aXNxRHZoMklqOXM2alFRQUNFSUFBQkFZamdBQTJHRm82aGdBRUlEQTZnWmpZNEZTc3gwcnlTM3BUOCsrRVIwaXkzMUMxT1NYdjlqV2w2NmY0MHRubHBibTh6aVlQc004VTZUd0hGcWJtKzFmQU5KbWQ5eEhBWXBYK3l1T3NLMTQ0NHNJdm5EOEoxUzIvSytsejRmOS9XZEl2ZzVpVDR3RFBXUUJiaVZvV3NDejgrVG15Q0hpNnBNOFdxWjFuQmlId1AzT0FpdlJodjdmamlvcVNqZ0lyTisraHo4cDdlNDY5N2hucU9Xem4yN284eTAyZlJUN3ZNVSs5enBPYTZBMzJCUFR6VnRjMkxZQjVUazZEZmx0SW9hNmJvMy9IM0hGZ2Y4R0piaDNUZ2dBRUlBQ0JzUWdnZ0kxRm1uRWdBQUVJREU4Z0pqWjhXOUt1UWZSb21vVU4wOThUVE1XcjE5bnp5cEVvMVJaNzZZeEZqT1drRUZ0dmw1Zm04bnphVFBCalJ1U3hsOHV1QXBnci9UbmQwU2J6MWZaM1FZRHpmNCtKRno4TzR0VW53a3VrUlRNTE54YTZMR3c1VXNnaXpwaHRLZ0tZUmFvZmhJV3ZCQzBMV0k1dWMzU2ZueEZYYkhTazFpbHJSbXpsNVB1UWtISmE3WFBkMU1wdEVzQlNQLzl5N3RzbSttcDYxcVlnZ0puSlpZTm9lOFVJSVB6QU5uRnlHQk1DRUlEQUZoRkFBTnVpeldhcEVJREE0Z21zSzRDNWVxQzloczViSWRWa2ZMNU5BdGg1SkIxV3BMWHRWK0VUaXdMcktvRGRxaEFxanltTTczZW85TzgwT3B1cE82VXVKb0QxRmYyR2ZpaHlDbUFXK0N4YXVmMUhpTUx5L3k0TFdSYXpISjMxbXdtS1dWMVp1MkNBbzcrdVhyblJhN3RsU01udDJ1ZnFlZ1N3dnVTbWU5OGNCRERUY3hFUnArOVcwOG45TXd2MC9nTGdZOVBGek13Z0FBRUlRR0RPQkJEQTVyeDd6QjBDRUlEQU9RbXNLNEE5c0JSbFZPN1pFVVczanFSUWJwTUFaaWF4Rk1XSFNucDU1VUIyRWNBYy9lVnFhWHZYSE9wN0ZpbHdoNWIrZTUxNE1VY0I3TG1oMHFXWDlvdkNDUHVMbGNncnB5Q3VCSzl0Zk5hcnhSQldERjVYUkxQNVordWs5Q0dBblgyaS9MZndpNE9mV3ZXY25WUlVZYjEzT0o5VFA0TnpFY0RNK3pHU25oTUI2clRlTzJSTXc1NzZ2akUvQ0VBQUFoQVlrUUFDMklpd0dRb0NFSURBd0FUV0VjRHNIK05LWGZaZ3FiYW1xbi9iSm9ERlRPcnJLa0oyRWNCaTBWOTFxYVJMRWNCdUorbGRBejhUYyswK0Z2M2xkRlpYSG5WVVlLenRGSDdRSkI0NitzYWk2N3JONTlibnNkcnM5WlJhS2JScER2WTYrMmxpRmMzWVoxRmJDbVJUNnZjYkpkMGpWRjlkbDlYUTk4OUZBRE9IV0RUdGlsRTU1WHRvYnZRUEFRaEFBQUpiUkFBQmJJczJtNlZDQUFLTEo3Q09BSFlwU1I4T0hpMWxVUDlWcEtQY05xVG0xUUhjTmdITURQeENmRWdOakdvVVdLb0FGb3YraXJGSEFGdjhvL3pmRVY2dStGbHR6NUQwcEFaQnhuL1h2YWhJRVgyQXBHY1Z4dU12SFRoNktmYjh2eUZFVG8yNVUzMEZzS3NXS2FVZkNpYnQxZmsrU3RJTHgxekVHbVBOU1FEek1uZVJaT1A3eTllc21hcVFheHdFYm9VQUJFdnprQmNBQUNBQVNVUkJWQ0FBZ1RnQkJEQk9Cd1FnQUlIbEVGaEhBTE9ua0Ezd3E3OFh2bFdZRnQ5WTB2Y2ltTFpSQUx0RUVZWHp3U0ppN2lvVkpsV3ZybFFCTEpaVytlNGlMZkJPd2J5K1BCUUMySEtlMmJxVnhLSy9Va1FCKzRYNWJPNGNPcmI1LzBza1BUdVkrK2NtdHdRQmJLL0NsK3FvR2pBV29KMzYvYjdjMEFicWIyNENtREhjV2RLYmFuN3YrR2M1VW4wSFFrMjNFSUFBQkNBd1Z3SUlZSFBkT2VZTkFRaEE0QThKckNPQVBiTXdEbjk4RGRTRGl3cDU5MjJJT05sR0FjeVlYQkh6eVRXOHluNWRLUUpZN0pvbW8zTUVzR1UvL2JIS2oyMlYvRmJSWHcrdndXTno4ZDJLRk9mUFpVYTNCQUhNbjN2Ky9LczJWdzIxK085S3FuTm9jeFRBbWxJaG5mN3FMd2ZzQ1VhREFBUWdBQUVJWkNHQUFKWUZJNTFBQUFJUW1BU0J2Z0pZVElUeG9wenU1OHFIc2JhdEF0ZzFRaFcrYWlXekUwTVZzMU1scFFoZ3NYVEtwdWdIQkxCSlBHNkRUT0l5b2ZMakZTcTlmMXlTSTVWT2FSaTFHdjFWdnJRdGRiTHZZdVl1Z05rdjdZaVE1bDFsNExSSXAzLy9zaStja2UrYm93Qm1SRTNudHM0RGNXU3NEQWNCQ0VBQUFrc2lnQUMycE4xa0xSQ0F3TFlUNkN1QXhUeHdVaUlndGxVQWM5RUErNERkcGViUTNUVVVGR2dUd0dKaVI1dlJPUUxZTXA5MC8wMzJ0S0s2NHhNcnkzTXEzcjZTam14WXR1OTFzWW9EYXE3NW1xUTlKSDFuQUd4VEVzQ3VKZW5CTld1MGliNVRRQjBGVjIxT1ovNUl4SWZLSXZUOUJtQTJWSmNXNHgwbGVKR2FBZDR1NmVpaEJsNnozNllpQk82NldnVjN6ZUc0SFFJUWdBQUV0cGtBQXRnMjd6NXJod0FFbGthZ3J3QjJkMG1IMXNDd0w0NnJRalpWazl0V0FjeTRZdDVkeDByYVI5SzVKTm5IYS9jS1d4dUUzeWNpZHZqU3RtZ2RCTENsUGJsbnJTY1dDUlB6Z2l0VHVFNGhjaDB2NmJ3MWFJYXNxRGNsQWF6UHFiaWVKRWNaMVZYRWRDR0NnL3AweWoyZENGd3pSTk9lUDNKWDFWdXhVK2RjREFFSVFBQUNFQ2dUUUFEalBFQUFBaEJZRG9FK0FwaC9EN3crQ0RKVkVpa3ZnTnNzZ0YxUWtzV3VHNVRBL1NKRThMeTJSUUN6VDlOYmlzcWJ0NnBBUHpuOHQrODJIRXNFc09VOHM2dVYyQXZwMVRYUFlaTVgzT3BlUnlNZVdFUjQ3VitESlNWMWNoMmFjeGZBWXVML2J3dGg3T2FoT3VRNmZMaTNuVUJzRDhwM0Rpbml0cytRS3lBQUFRaEFZREVFRU1BV3M1VXNCQUlRZ0lENkNHQ3VGdWNJaUt0VitQMHFtR2FmMU1KMW13VXdvMWtabHBlRnJ6TUNzN1lVU1A4TzlrdjJLMG9WSlZQU2ZSREFsdmV3MzA2UzA5UjJxQ3pORlJ3ZjBWQ0V3cGZmTUZSKzNMRnliOVZFL0lVaGxUSW5QWjl4cDdCVm02dFBPb1U2ZDNPNm9vVyswek4xL05MQ1YrMmhOWDFaQUxNM21KL3JPYld2aGxUWXBxamRLYTJuS1pXOFBNOGgwM2lueElPNVFBQUNFSURBd0FRUXdBWUdUUGNRZ0FBRVJpVFFSd0M3U1pHaTk0RWk3YzR2SXVXV2FqNjg3UUtZbVR1TnlwWEtWc0xYaW1PYkFMYTZ6cW1TZDVLMFgxRng3bDZTVG1zNU0wc1J3TzY5cFJYZWZsWkpLNzU0TUw1M0NtUzVmVCtJMEg3NWo3V21LbnB2bGVUb0dvdFJiblhuWnNTUHB5eERwWDR1cFF4MlBrbnZLTkx2YnBGeThVeXV5Y2xuakNWZnFvaDQvYkNreXlZTTFsWUZOYUVMTG9FQUJDQUFnVzBuZ0FDMjdTZUE5VU1BQWtzaTBFY0ErL3RnRUYzbDhOVGlQendsQWM2MkMyQk5pRklGc0FUTTU3aGtLUUpZMTNVdjVYcEhlNzByTENabWZPOGZwNlI5T1lYMm1KcklzYnBDQ2doZzV6eEJseTU4L0Q0cXlTTE1VdHJjQkxCYlNucVBwSlQzRWFMQWxuSktXUWNFSUFDQkRSSkkrWVd6d2VreE5BUWdBQUVJZENEUVZRRGJLYVQ1M0xZeVJoZi9Hd1N3K0FZaGdDbWFsdHZoV0MvdTBySUFGaE93VHBEa1ordlVzSHBIQ1Y0MCtNcXRnTmp3L21CSmp1S3N0cnBDQ2doZzU2UVVpMzZkODRHYm13QVdTMEdON1FGUllITStuY3dkQWhDQXdBUUlJSUJOWUJPWUFnUWdBSUZNQkxvS1lGY05KczhYcVl6L0NVbTNsdVJVcmJZV0U4QWNnZUxxZGF2MHE3WisrdnpjS1V6N1NxcDZINlg2bDFYSHJGdEwzNzdjTndJWUFsamR1VjRKWUVPbDRNV3E1aUdBblhNM0hoaUtCL1Q1N0pucVBYTVN3R0wrazAxc2lRS2I2c2xqWGhDQUFBUm1RZ0FCYkNZYnhUUWhBQUVJSkJEb0tvREZxbSs5VE5MREVzYnpKVEVCTFBIMlFTN3JLMW9oZ09YZmp0aVp6RC9TZkhvc1I0QTlVOUxqTTA3OXZ5VGRWZEtiYS9xMGVYeTVZbW5HWWJOMzVjaTRYV3A2ZmIrazIyY3l3WGVsMXJyS21ka1hNMktIY3hMQW1pTHc3QXQybzBocXBJc1d2SHhFcGd3RkFRaEFBQUlMSW9BQXRxRE5aQ2tRZ01EV0UrZ2lnUG56Ly9XUzdsT2g1aGRvUjMrOUw1SG10Z2hndjVGMG1LUUxKWEx4WmE3bzV6MnBWdmJyV2lIdldaVklGVHpBT216Q0JDOHRDMkJkUEpCU2x1S29TeGRVcUJaa1NMbDNLdGU0R01BSEM1SERFVUxWWm5IdjhBd1RkZVZLZTA5ZHQ2YXZENFhQUlF2cGMydituUHBwUzlYUXFhd3BsdjVvN250S2VtTDRkM1crSnhmbjQyYUZSOTRQcDdJUTVnRUJDRUFBQXZNaGdBQTJuNzFpcGhDQUFBVGFDSFFSd0dMcEoxMWZMclpGQURQNzR5WFpkMm5zVnZXOXFSUEFMRnk2b3QyUFI1aWNYN0NmTGVubkNXTTFSWUM1Y3VZM0UvcFkyaVd2bFBUcHNLaExCTEhuS2hrVzJUZnlNY1BRMmJwd1ZjdFgxd2p6SGlCbmRGTXMvZHZqZEltQXpiYndMZXVvNmR5ZkdJU3Z2U1M5S2NJbHBVREVsaUZsdVJDQUFBUWdrRUlBQVN5RkV0ZEFBQUlRbUFlQkxnSllMUDNFcHRyMzdSQkJnQUEyL05sSUVjQ0duOFhaSTN5N3FEeTRxNlR2Snd6YUpJQ1ZJNkVTdWxya0piRkl6T3BpN2NkM1drTlVvYSt2TTc3dkNzM1A4eFZDeEdIWEtESjdtcjB1cEs2VngvMUlTRFU4UFdFeVBoTnZyNG1hL0gxUnNmRTJraXlhNW1nV1Y0NktkSFNQRU8yWll4ejZxQ2ZndlRUL3V2Y1FSN3crUWRJRkpSMGJTZHRkaVdTckloRndoZ0FFSUFBQkNDUVJRQUJMd3NSRkVJQUFCR1pCb0lzQUZ2TWVzci9PT3p1c0ZnR3NBNnllbHlLQTlRUTNrOXQyazNRTlNUK1M5SXNpaGZHTGtuNG42WmRCOUNvdjR6cVJTTVNZOFgwWEJIY0k2WVdPd3ZxNnBBZEkra0FITVR4VzlDRTFjdXZpa282VDVCVElhbnVySkhzVzVpcXFZZDgxZndaV20wVy8zU1Y5dkFzNHJ1MUU0TnlTRHBGMGw1cTdxaFdJSHhJaTh1b0d5SlVPMjJueVhBd0JDRUFBQXZNbWdBQTI3LzFqOWhDQUFBVEtCRklGc05pTHF2djZlMG5QNi9EU0d4UEFVbDk2MTluQjJIcjdwb0kxbWVCN25sTk9nVnlIWTlkN2lRRHJTaXpQOVg4czZTMlM5cTUwNS9SWFYwTTljbzFocmgraWJhb2VkNDdHY2tHTTd5YjB2WTRBNXI5SG54WjhuNnBEdWFLc1BaOHM4dVZvRm1Ec0kzYkhtczYrRVNMWThKZktRYnErajh0THNzbjlKV3QrWEkzc2FrcVZIT04zekhBVTZCa0NFSUFBQkRaQ0FBRnNJOWdaRkFJUWdNQWdCRklGTUVkNHZFTFMvV3RtWWZGb0QwbCtFVWxwMnlLQW5TTHBFWklzUXJTMUM0U1hhNzlvMXpYN1huVko1YklJY1hTcG96b1BzTFk1NWZ3NUFsaE9tdWw5T1RYUGtUUFZ0bTUwMUdYRGVieGlaQ3FPU250UUVOOGNtUlpyNndoZ053MkZOM2FzNlR4SGFtZTUyNWovb2E5eFdwNkZzVFBUdDRVck94Sm9pdXA2YXRIWFV5cjkrZjgvdVdhTUhNSnZ4Nmx6T1FRZ0FBRUl6SjBBQXRqY2Q1RDVRd0FDRURpYlFLb0E1anN1R2tTVjY5VUFkUHFQUFhJcytyUzFiUkhBVG1vRFVmcTVVM3RpNXMyKzdBMlM3dDJoditxbE1RSE1CdmlwTCs0WEtTTDk3TmxVYlNsOWZDdUlCRTdaYTJ0NGdMVVJTdnY1THBMZVg1d2RSOCtVVzQ3b3FITVZ4Uk1Pa1BUOElpM1E0bmlzV1loOWNDR0cvU0J5UVY4QnJDbjFNVWRxWjNXNjE1UjBncVR6MTZ4ajVUK1Z0aXRjMVpWQWs2OVhMSExYbm5TT3Z2Vm5TYlVSQmRaMUI3Z2VBaENBd0pZVFFBRGI4Z1BBOGlFQWdVVVI2Q0tBZWVFM0NKNDdkWlVON1pIalNuLytscjJwSVlDZGs0NGp4Q3dVN05rQWJRZ0JyR3ZhcDFOZHZiL2wxcldQbEljSEFTeUZVdk0xamlSMFpVSkhZVlhib3dzaDV3WHJEL0hmUFZ4SjBwc2xYYXVoUHd0dWR3dlJXdFhQaGo0Q1dOUGFiSHkvVDBkUHdoUVU5am83SW5LaG83L1dTU1ZOR1grYnIya3l2N2ZodmZlN1duekI3eW8rL3hacHE0MG9zRzArVGF3ZEFoQ0FRQThDQ0dBOW9IRUxCQ0FBZ1lrUzZDcUErWGVBRGRZZDlWQnRQdytwa0o5cVdTc0MyRGtCTmFWeXJhNUVBRHVMQkZVZzB6NUlibFZVM1R5bXBqS2lvNWo4L09Xc2hHY0IxMTVjRnRhYTJqOFc2Y0RQcVpqU3h3U3dwclJDQzA3Mk5kdWhackRYQk5FamwvSDlhb2hZQVJBWEhmRHorNW0wYmVHcWpnVGF2aHhvTXJWM2tRaWY5NnBIbmFkQUZGakhqZUJ5Q0VBQUF0dE1BQUZzbTNlZnRVTUFBa3NqMEZVQTgvcWJVaUZUdklVUXdNNCtSVTNWemNwbkRRRU1BU3oxc3llV0h0alZxeTkxUEYvbnZ3MXZXVVNFdlZHUy9iSml6U21aOWlWYnBVVGFzUHdqTldtYXNmTnVyenhIcjkyM1JnRDdhbUdVYnVIUDZiWTUyMDRoK3V1Mk5aMjYrcVlyUURyS2paYWZ3QTJMWWdZZkxMNXdxZk41T3prVU9vZ1ZIL0JuNjRHUzlxK1pGbEZnK2ZlS0hpRUFBUWdzbGdBQzJHSzNsb1ZCQUFKYlNLQ1BBR1pNVGdsNlczanhMV056Q3BKVFZwb00yeEhBemlaMm5jUktrU3RCNE1hUy9HTG5DSVl1cmM0RHJHdjZJaW1RWFlodjV0cW05TURjeHZCMUszU1Z2b05DcEY3ZHp4MGw2bFRmajRVZnhqNS8yZ1JmKzQ3ZFBCU1o4T2VOUDNmdTFKQ211TTV1eEVTNmRmcWM0cjFUaTRwcSszS2d6dnkreXJWSlFPdmlXem5GL1dKT0VJQUFCQ0F3RWdFRXNKRkFNd3dFSUFDQkVRajBGY0NjbXVJMHBMMXI1dmp1OERKYTlXVlpYWW9BZGhhSnBnaUZLbFpYOGp0TzB1c2t1Y0xlZnNGVEtmV0lJSUNsa3ByM2RiSDB3Qnd2KzllWGRGZ2hOajJwcGJxanhTbFhQLzJuU3BSV25ValZWd0FyNzlKbGlrcU1udHM3SlAxMmdPMXI4cVFiWUxpTmRUazFBYXhKdkxLUTZ0VFR6N2ZRYWhQUjdpbnAwSTBSWjJBSVFBQUNFSmdGQVFTd1dXd1RrNFFBQkNDUVJLQ3ZBT2JPWTk1VmJWRmdDR0JuYlUzZEM5NlhKZjJ1RUJpdVZ0azlwK3lVZi85V0kybmFObnNKQXBnRlZhZWJXY3loL1NHQnk0Ykl5eXRXZnRUMlBLYXdyUGJ0b2cwUGsvVGRocHYzQ0FiNXE1UklSeEErcjFJa0k0Y0FsakwvZGE3WkZnR3N5WGR0SFg1OTdtMFRyZzZYWlBFcVJmQnNFdEtHcUJqYVo3M2NBd0VJUUFBQ0V5YUFBRGJoeldGcUVJQUFCRG9TV0VjQWF6SW9ibnBCUVFDVEhDWGphQnBIY3BYYkV3cFBwRnNIb2FkdEs3dUlZSE1Td0M1ZmVEbDl1UER2Y1RwZHVYVk4yV3pqdDZTZlh6Q2svOTJpWmxFdkNSRlpiZFZaWXp4aWZYcy83aDlFTG91MmRXMFhTZllGZEdFTVYrU3JtdFBIOXRxRk5teVlQNFcyTFFKWVc5cnBtSHZSVkJqa044RnZ6Z2IzS2ExTlRFdXRYcHd5RnRkQUFBSVFnTUFDQ1NDQUxYQlRXUklFSUxDMUJOWVJ3QXpOVmZtY2VsUnROcm0yWDlVM2FuNkdBSGFXV1hlMVN0LzNDbThrRzIyL05GRUFNMW9iZi91ZXI3V2M0RGtKWURGZnREWUJ6Q2JzcjUvcGsyd3g4KzZTUHRkai92Njc3REVSd1NoSGhJc3JQTHFDWTZ5OU00aGJzV2d3Q3hCdWRkRTZzYjFHQU90eEVOYThaU29DV096TGdkWHkybExzNnpBMGVTMjZnTUhOaWk4ai9LelFJQUFCQ0VBQUFuOUFBQUdNUXdFQkNFQmdPUVRXRmNCc0VPMHFYVmVwUWVKcWI0NXlxclp0RjhBY1VmT3VrRUphWm1OVDUrZEw4Z3VlVS8zSzdjUkNHTHRJd2JPYTN1WnJVcXJmYllNQUZqdFhjM2hhMjhTOXBqWEVmTDl5cEQ1NjNKaW5WM2xPOXFXemdQY3ZsUlRITnZZeFllSlJrbDdZZHZOSVAzZFZ6U01rT1ExMDdzMWlwRC96NjVyOUJlODNnUVhXZlRtd21sYmZNOTNtdDNpd3BBZlVSQ2hPQUFkVGdBQUVJQUNCVFJOQUFOdjBEakErQkNBQWdYd0UxaFhBUEJOSExEMjBaa3ArYWJ4TFRlVEh0Z3RnZnJtMzBGVnUzeTlNN25lVDVNaTVPZ0hNMFJtdktIekRqcFYwb1JyV0h5Z01vZmN0ZkpsK0dqa2FkUUpZVTVSZVhUZGpWWUc4U1NFQWVqMnJ5S0hWWEw1ZFJNM3RLc21zNnRvMkNtQ09lbk9LWWQyWlNLMzYrQ2VTTGlycEw0dDB4cXNXNHF4RnFRUERIcFE1WHk4SVFUYWRqN1ZYU25wc0VaRjJldUpIVkd6UEhGbHFrWmlXbDBCVE91Y1VvdTU4RG84dWhGU2Z0YnJXSi9wcjFjL1Z3NWMxSzArNmN2OTloYlc4dTBOdkVJQUFCQ0F3U1FJSVlKUGNGaVlGQVFoQW9CZUJIQUpZTEEzeWl5R1N5U2ttNWJiTkFsanNKV3psMDNTK0JnSHMza1dLWEN6YXgzemZIMzUrYXMxSnFCUEEyZ1NsYWpkakNXQ3g4OUUyMzIwVHdHNFVJcTdxeEMvN0k1bUh2Ym5PWDFRUHRXajFaNFdBOVJlU0xoMUVyajh0Uk5XTFJUNDFuRlpySWFMYUhJWDRHa2wzYVBpMCtVVHd0dnRtd2ljU0FsZ0NwSXlYVEYwQXEvdHlZTFg4ZFVVcXY3KzhTTkxESXp4elZFck51RlYwQlFFSVFBQUNVeUdBQURhVm5XQWVFSUFBQk5ZbmtFTUFjOVRJaDBLS1hubEdzYlN1YlJYQVhEVGdMWkwycm16Ykt2ckxQbDZPeG9sRmdGa0FhL0o3Y3JjV0orck14dWNrZ0ZsY2NmUmd0ZGxQenFMUER5UEhmcHNFTUtmSS90OUk1TmU2bndwdDZaZ3BLWkVXdmU5Y1JEVWUxektac1VUVmRaa3M1ZjRtQWV4QlJYcmtRUnRjNkJVa0hkK1FvdWxJUjZmWlZnc3BkSmx5MnhnWTRuZWh5YlVRZ0FBRXRvUUFBdGlXYkRUTGhBQUV0b0pBRGdIc3dvVXc4WjVDdUxsdURiRzZTSktZVU9HWFpvcy82N3pndEcyYUk2eWNLcmhqNWNLMmwvNVl2M1ZyaWZYbEY4eFgxWFJrNzYrbmhQL2VKb0Q1TWdzUVRvZDBCYjY2WmxIaGVTVXZwbGlmYlJGVjFiN0hFaXZxeHZGYy9qV0loNmQxRk1BY09XS1IwZi9lZE5zcEVuWFY5Znc5TUtRcERyRWVwOUU2RGZWTExaM3ZFU3BBMXFXVStWYmY3eFROLzJqb3B5NTlPblg4SWRhKzlENnZLY25SZ1k0S3JMWk5wcDM2TSszVmt1NFQyWUN1ejBmVFBzWStYM3hQbDhxNlN6OHJyQThDRUlBQUJBSUJCRENPQWdRZ0FJSGxFTWdoZ05tcjZmQ1FmbGNsVXhkVk1NVkluYjR2V0trQzJQVWovbDBuNjZ5S2tLc0tlaWtDbUJuYlNOOVJVcmVJSE1XeUNCYnIwMUY3RmloL21YaWN4eExBbmluSmtSalYxbGNBYTdzdmNmbFpMdXRiNGJJNnVEMlN2QzVIRmVadVhZVFJYWUlIV1ZYOFRoRVMvUGZrb1pMdVZsbEFsL0Z6cjMzcC9UVlZROXlrQU9ab3dUZUZDTmU2UFZpbGlQOVhoZzFxOHhsclNpWFBNRHhkUUFBQ0VJREEzQWdnZ00xdHg1Z3ZCQ0FBZ1RpQkhBS1llNjlMc2ZOL2YwSVJiZldzeXZEYkpvQTFpVlgzRENMQUNsR3FBT2JyWFpYdXZaSEtrSzdNNlVpM1U0cW9NMWZxL0lpa3kxZjJvYXN3TkpZQUZqdExMZ1RnTk5CWTIyUnFiZXBuVEM0QkxMYW5xZk9vWHJlS2tyTWc2MElMTDVOMFptSm5QdCt2RGVmTnQ3aXZPMFhTV010ZE9ncnBxQkJ0VnY3dlhjOWw0alM1TEhpL09jM3d2QlVhdnkwRTFadUhWUGF4UVZsRXRlaFUvWHhhemNPcHp4YjZVenpsVXVmdU5PdTNOUWh1MVNqYTFINjVEZ0lRZ0FBRUZrZ0FBV3lCbThxU0lBQ0JyU1dRU3dDTHBaWFVpUmJiSklBMXBTdGF2UEtMV0RtbHI0c0E1a05iRjFubXFCcEgzcTBxOGRuMC9LT0ZQOWlsS3FmOGpaTHVVVXFWYkhzSXhoREFZdXYzM0Y1WFJNcmRyMkdTMnlTQU9aWFNFWUNPNEV0dFA1WmtNZUdUaFVIK1NaSytMdW5MaFNuNHp6cUlYYkd4Zk03L1NkSWppNzVjVGJDY2dodTdKM1l1WTlWalU5ZkpkWEVDVGtsMXVucjFiL20rRWJEcnN2YTVPU3dVVFlqMTlYY0RwUHUyalpzU3dianUycmtmQWhDQUFBUm1RZ0FCYkNZYnhUUWhBQUVJSkJCQUFEc0xVdDhYd0tZVVNBc05qeW5TMUo1VHN3OGV6eDVLSjFaKzFsVUE4KzNseXBBdmtQUzRpbzlhTE9xb1RWQ3FUbnNNQWF3cHNzbkNTaDNMMVR5M1NRRHptcXVwb3Fzb0xsZGgvRW9oam4xTTBtZUtvZ2dXdnZ4Q1AzUTdWMUdWMHFtWkZ0ZFNmUHpzTS9ZQlNVNmhMamRIakRweWxKYWZRT3daNmZ2NXQ4NE0yd3A2dU8rNkx3bldHYk44NzErRklnMTFWVlI5SFZVaGM1R21Id2hBQUFJeko0QUFOdk1OWlBvUWdBQUVTZ1FRd002QzBmY0ZzRWtBYzJxUHF6N3VVSFBpWXRYRytnaGdGaENlWDBSenVZcWt6ZkdyUGpteGw5NDJRYWs2N1RFRXNGaEZVYy9GUXQrUkRVL3Z0Z2xnanVpN2RoRkYrTm1RNmhvckR0RDNBOCtDbHYyUy9POGhtcU1QbjF2VDhjT0RyMWl1TVg4WCtQamYyOTVpejhqM0pPMWE4aUljZzFQTUYzRTE5dEJSV0g2ZjhXZGdOVVcvdlBaWVZkMHgrREFHQkNBQUFRaE1oQUFDMkVRMmdtbEFBQUlReUVBZ2x3QVdNeTd2a2dJNWh2ZFBiTDI1QmJESEZwRXR6NUJVRjEzZ0tteCtFVDIxWnYvNkNHQnR4OEJwYVk0TXE3WTJRYWw2L1JnQ1dDeEZLOFdqYU5zRXNMWjlYL2Zuc1dkbDNYN0h2cjlxcW4rRElwMzJNbU5QWXVUeG5QNXNIOEF6S3VQR1BndkdManpRNUYrNG12SVlQbHh0aHZpZVM5V25jZVN0WkRnSVFBQUNFTmcwQVFTd1RlOEE0ME1BQWhESVJ5Q0hBTlpVQlhKYkJiQ0RKVDI0WnB2YW9ocUdFTUJzVUw1L1pTNHBndEltQkxEWUMvcFBnMW42bHhxT1BnSll2czhGOTdSVUFTeFdaQ0V2dmMzMkZoTzBZbDZOWHl6U1VYZVg5Sk1ScHQxV3dkWlRHTE1TNDAyTHo1YjNGWkZnTzBiVzN2YVpQUUl5aG9BQUJDQUFnVTBTUUFEYkpIM0doZ0FFSUpDWFFBNEI3SEpGbFM1SE5WVk4xajNUdWpTN1RRb1ZZMFdBdVFxZTB4S3ZVdG11UjBlaXNWYVg1UmJBWXBYMmZsRDQ2OXc0bUtLbm5xaWhJOEQ4OTRVTi9POVdNNkdVRi9STm5xdFVocm1xUUthT3Q4NTFDR0RyME52c3ZURUJ6S25YanRhdHRqR2liejFtVTFHUTFad3NPTmtmOFZNaklmVG56dE1rUGJGaHZLOUt1cFdrYjQwMEo0YUJBQVFnQUlFSkVVQUFtOUJtTUJVSVFBQUNheEpZVndCcjgxR3BTN1BicEZBeGxnQzJXMGh6ZkhKcGZ4d1Y5b0FXZy9EY0F0amxpeGUzRHhkVjFDNVpPU2MyU3I5MXFBQ1llb1NHRnNCMmx1UVg4YXZWVENpbE11QW16MVVxUXdTd1ZGTDVycXVLUWRzY0FSWmJ1eU91YmwrcUhKdVAvdGs5cFpqZTI3L3dycExlUE1RRUd2cE1TWVVjTXlwdDVPVXpIQVFnQUFFSU5CRkFBT044UUFBQ0VGZ09nU1lCek9MVjU0c29yak1qeS9XMytROEprVTUxUnUreHRMVk5DaFZqQ21DL0RwRng5Z0ZMalNESUxZREZQTFhlV0pqbTI0UzhhcGpmZExLSEZzQmlWUUU5cHhURC9rMmVxOVJQQkFTd1ZGTDVya01BTzV0bFRBQ3JTMVhQdHdPUzN4MGNGZXZQbmJyZkZhdXhObWs2MzJiSzd6bStyU2dVY0wrSWYyTk9YdlFGQVFoQUFBSVRJb0FBTnFITllDb1FnQUFFMWlUUUpJQzlNd2hjTmxTMm1QWEp3dGZxUjZFcW5GL2tIYWxqRVN6V2pwVzBUNDBSOHlhRmlqRUZzTThVS1pDSEZ5TFlMU1R0S2VsakNYdVZXd0NMRlNkNGxLUVhKc3luZk1uUUFsak1ueWpWcjJ5VDV5b1Y1WndFc05RMWRibnVqME5sMUwwYmJ2cDBJUmpmdlJCTW5QWTZSTnZXQ0xEWVo0c1pEeTJBK2N1VVdFWGMxUjV2T3NJcUpVTE5jOTJrU0RmRTgwQ2ZFSUFBQkNEUVFnQUJqQ01DQVFoQVlEa0VtZ1F3UjNkWndEbHZqK1U2c21oZlNVZlczTHRKb1dKTUFld2tTZnRKK3Iwa3AvQ2x0SndDV0t3djc0M1RIMjM4M0tVTktZQTF2WnpiZDhkK1pkOXJtZXdtejFVcXgyMFh3QngxZUVnQ0xEOHpUNUQwa2hvQlBlSDJ4a3UydFFwazB6T1dFbUhabC9zZHd1K1JwaTlMdmhHK0tQaG0zMEV5M2VjNUhoWSt0NXU2UkFUTEJKeHVJQUFCQ015QkFBTFlISGFKT1VJQUFoQklJOUFrZ08wbHlkRVMxMDNyNmh4WHZUdWt2Snl4NVFKWVYzUTVCYkJybEZJd3kvTklGWlNxY3g5U0FJc0pRNTZEdmRQdW01Q3VpUURXOWJTZGZiMy90cnVZSk8rRHpiN1BKOGtWT1IzOW1hdWxwSmhWeC9xNHBQc01HQTJXYTIxejZLZXBxTUZRQWxpSytQV3I4THZpWHlZQzhiS0Y0UDdlUWdpN1lzdDhYaWZwb1FNSXRCUEJ3RFFnQUFFSVFHQkZBQUdNc3dBQkNFQmdPUVRhVFBDZkxtbi9qc3Y5Z3FTL2JxaVl0VW1oWXV3SXNJN29sRk1BY3dUZnkyb21jSlFrcHlURnZOMWljeDVTQUh0S0lYQ1ZDd2FVNTJCVGJFY2l0clZObnF1MnVhMStQb1VJc0tyWVpaKzRxMWU4bVhKWEJVd1ZGZW80L21lSUJudHhTd0dKMUQzWTF1dWFCTERiRmVMbnV6S0M4Umx6QkxDanFab2l2eHpwWjIrdzFBalpqRk5zN0NwVnJNVVRiS3dkWVJ3SVFBQUNHeVNBQUxaQitBd05BUWhBSURPQk5nSE01ZWdQN1REbTJ3dWZzQWRMK2tIRFBac1VLclpGQUxQWGt2ZkMzbVBWOWlCSkIzWFkwOVdsUXdsZ2w1RDB3VUxrdWtyTm5McEVxMjN5WEtYaUhGc0FzL2l3UzRqc3VubElNL3Z6aE1ubTlJUnlCVkw3UDkwME11NkxRcHF3ZmVtYTJyOUp1bHNSRWJicE5Ma0VmSk84cENuS01xY0E1dmVFQTBMNmFwUGh2U0g1TStWNUNkR2Rtd0NhNGx2bWVaMFFSTHltMzNtYm1EOWpRZ0FDRUlCQUpnSUlZSmxBMGcwRUlBQ0JDUkJvRThBdUxjblJJQlpVWXMwUkd2YjY4b3VzamQ3YktndHVVcWpZRmdIc2hrRlUyckd5YVU0MzJrMlMvY202dHFFRXNDWmZxRmVFTktPMk0rVzFiUEpjcGJJY1NnRHozMllYS1NKcC9rS1NvMWZzOFhidFFvUzRjT3JFS3RmbEVzQXN2cjIxSVkyNmJIeSt1eVNubFRVSmRQNnNzWURyMU96ZjlWemJ0dDRXcTdLNnptZENsYVVGVjN1M3hhSTV5OWNmV0JSWGVkaUVvL3BTVGZHOXB1K0VxRnFuN05JZ0FBRUlRR0JoQkJEQUZyYWhMQWNDRU5ocUFtMENtS3MrK2lYV0w5Ym5McEZ5WlQ2bk92NVkwczg3RXR5a1VERjFBY3lNL2FLNmM0V3BYN0JPVE9UczM5Tk9mWFFVUnJXdGs5bzJoQUIyUVVtdUZtcGo4bXI3VFNIaTNheUlZblBrVDByYjVMbEttWit2eVNHQTdWUUl6bjhaUkNXTFJydEsrclBVQ1NSZWwwTUE4OXhzZUgrWnlKaiszS2hXUjcxQU9MdjNhcGxuU3FScDRsSzM1cklIU3JMb1ZHMi9ETkY1cmxxN1RyTUFhM040KzM2MXRibVl5RnZRc3doLy83WUZoU2pHeDRVdmdpelUwaUFBQVFoQVlDRUVFTUFXc3BFc0F3SVFnRUNSQ3RjbWdIMS9BRXFiRkNxbUxvRGx3SDBGU2NlSHZhMzJaOVBtbC9jY1pBZ0I3QzZTM2hTWmo0V3hmVHFZVEcveVhLVWl6U0dBTmFXeXBjNmo3YnAxVE5FZExmcnd3dnZwbVJWZnNmS1lUZDVQL2p2enppRWFyS2tDN1M4azNWMlN6ZE5USWdUYjFyemtuemVsUkg4N2lLanJmTlpmTlVRQjE2VXhWN25PelR6ZUlyMDl5bTZSZUVBbzNKQUlpc3NnQUFFSXpJVUFBdGhjZG9wNVFnQUNFR2duZ0FCMkZxTythVUF4MGNXUmNWMU41dHQzcS82S1o1VWlPL3c3K21tU25saHpxU051N01QMCtaNEQ1UmJBTGxwRWZoMWRDQmpYaTh3bjFmeCtkWHRzTDM1U1JFdTVLdWtVb2pKY2FmSDJrcXAvUzNVNWYwNXJmRS9QNnF4MXFDMUdPWnJ6ZmFINm5kTmpmWDc3aUVxT1RIdHp4TTl0TlhhcThia2pUOTlZUkFnNm5iZXB2Yko0ZmgrYnVXSmx6MGRrc3JmNXVmZitWbE9pUFdHbm9mcE05cW40bVNwV3JzRFlUOUlwckgzRzJpUmNSN2ZaOE40K2Vxbk5YelE0SGRSQ0xRMENFSUFBQkdaTUFBRnN4cHZIMUNFQUFRaFVDQ0NBblFXa2l3QlJSaGdUWGNZOGFPVm9uYWJvbkd0RzNnQUFDZWhKUkVGVUwxZFN2R2NoampsOXRVL0xMWUQ1UmZoVmtZazQzZFBwY2FkMm1PZ1U5cUxEZE05eGFkZno5OUxnamRablBJdGRGdERlRzd6ZytvcGQ1Ykh0RmVnNU9XS3ZxVm44c3BHOVRmRlRCRFpITGxuUWZYUkx2MStYWk1FVUQ2WS9CTlZXZ2RNQ3VvV2FyaTAxWFhYVjc5d2l2Nm84Zk1hZGVudmREcURPS0VSSDgvV3pnUkRXQVJ5WFFnQUNFSmdTQVFTd0tlMEdjNEVBQkNDd0hvR2NBdGlsRXFJMVBGdEgvRGhpbzlxK1hQaU1QV1BneUNsSHp6eFgwb1VxZzFzVWN0U1VYNlRyV3N5RGF3cWl5MG9BczMrWXZiOHNMRldieFliYkZxbE94Nnh4WEhJS1lJN3VjZVRKNVNQejZScjk1VzZtc0JkOThYWVZ3RzVUbU4wZlZSTkpWaDMvUDRMUTVUUkJlNms1elMybmVmemxDdStqSnhXVkdlK1RzSEN2OFU0aFpUSGg4djkvaWYvdXZHV0lCcXQ2NDVYN3NiaUdCOU01eWJaRjVQbHp3UVVUSEIyVzJyd2Zqb1E2dU1IZnJkclhDOExlVENFS00zV2RkZGUxVlRTTjlXM3ZOYWVmOS8zeVlaMDVjeThFSUFBQkNLeEpBQUZzVFlEY0RnRUlRR0JDQkhJS1lITVdJTnEySkdZS1BvVTFyd1N3cGpTbnJuNWFkVHh5Q1dCTlFwM0g3UlA5dFcwQ21NWG1EMHR5ZE0rcU9hM3NvOEdMeWNVT3ZqSlEydWU1UXRHQ2Z5ekdzeENYMGs0TzV1aGZTcms0Y2sxcVNxU0ZWUXR5MzExanJMRnZ0UkRzL1R4L1VSbnhwNUlzWEg0MkNDWk9TVjFGUWpxZDExOFVORFduRnJ2U3E0M2JyOVZ5YmRkbnpYdnZpTHpIZHdEa3p3MExZRG1GMXc3RFo3L1U2WkQyTGJSd21OSk9DT0o4bDJqV2xINjVCZ0lRZ0FBRVJpS0FBRFlTYUlhQkFBUWdNQUlCQkxBMHlGTVh3RjdiNEtmbEtJOTlnekNTdHRyNnEzSUpZTGNLa1dnNzFBeXp6bHluSUViMjVkczFBc3dpb2xPckhGSGpWTVpQRkdtQ3AvVWRQUEUrQ3l2N2gzUkVlNW1sTmo4N2puN0prUUxtbEVpYjZ6K2laZkM1R2VSYitISkVueXZBanRYNlBtczJ2TGVuWGl4NmN6Vi9uMDBYS2JCM1ZrcTY2MWpyempITytVSXhrYmJJeDdwS3B6bkdwdzhJUUFBQ0VCaVJBQUxZaUxBWkNnSVFnTURBQkJEQTBnREhCTERVdE0rMFVmcGQ5ZFhDdFB5QUVQRlIxME9PNkMvM20wTUF1M2dSblhLY3BLdEhsdW9YYTZmSjJUdW5hOXNtQWF3cm03N1hXL1Q2VzBrUFNZZ21xbzdoYUNYN2ZUbTlMcWNBNHI5RDdXVm4wZmM4TFF1YmkwRysxMlNEZVBNYXF6bUY4UUU5b3dTdlg2UzcrM09sbWtxK21ydFR4dSs0Y0U4Mm56MS9KajQ5c21HcHhSN0cybS9HZ1FBRUlBQ0JuZ1FRd0hxQzR6WUlRQUFDRXlTQUFKYTJLVEVCTE8zdVlhL3lpNlpOeGVzaXF2d1M1alExUndtdDIzSUlZRTJHM0Yyam9LcnJpUWxnVGdmY2U0UUlxUlMrMTVGMGZPRkRkOTdLeGV1dVBXWHMxR3RjU09GL0JRSGp5cWszVmE0Ym93S2V2UVNQU1BDaCtyU2tPNGVVMEo3TEdlVTJweFU2dW0yTTVyUThDODAvV0dPdzJPZU9VMUR2c1diZmEweHIxRnViL09uOGVmbTh6T0x2cUl0ak1BaEFBQUlRT0lzQUFoZ25BUUlRZ01CeUNDQ0FwZTNsVkFVdys5RTR3dWF2SXN0dzVUV2I0dWN3WDg0aGdIbWFzZWdSRjBDd29YcmZhQ0VFc0xTejNIYlY3VUsxdXpwQnRlM2V0eGFwam84YzBYL0xwdVNPbkxwRnc4VG1rb1oyaHlEb3RURmU5K2RIaG1oUmU0MnQwL3crWVA5QnArS3UydlBETTl3bmduT2R1V3o2WHAvRGd5VDUyWEY3VFlqS25idnAvNmE1TWo0RUlBQ0JTUkJBQUp2RU5qQUpDRUFBQWxrSTVCVEFza3lJVGpvVGlFVlZmU01JQTkvczNHUDlEYmtFTVBkZWpSNnhTYnE5d2RZeExrY0F5N1BSYlVVSzZrWTVKRVF2dFJtMDU1bmhPWHRwOGdXYlV4cWEvYjgrVUZUQ05mOGgycmNsUFNhSWJMa002UzhZK3J2bVFPbXVRM0FZcWs4WENIQlUzWU9MUWdXdVlydk9aOWxRYzZSZkNFQUFBaERvUVFBQnJBYzBib0VBQkNBd1VRSUlZQlBkbUk3VHFocFRPNHJLTDJGdjd0aFAwK1U1QlREL0xmRWlTUTh2SWtZc1V1d2o2WjFyemhVQmJFMkFwZHRkY2RHcGJFMUc1NDd5ZVZtUnp2bmN3dVQrbEh4RDkrcko1OGsrZUM4cHBRTDdYTmxUeStuQmZhTUtlMDJtNTAxWGtuUjRZYTYrYytuK25TUjFLVGhRSHRyci80S2tkNFVvT1ZjRnpTVjhsY2R4OUpNalRPMzVSb01BQkNBQUFRZ3NqZ0FDMk9LMmxBVkJBQUpiVEFBQmJEbWJYMDR0SENJRng2bVU5aWtxTjZlWHVkTGI1M3BnWEVXUE9GTE40c1c2NlVJSVlEMDJvZUVXNy9lcmFuNStUQkF2SGEyMDdwN2xuYkYweTZMQWd0TXdiYzYrVFI1TWZ5TEpsU1RkZmxha0pwNlpHeXo5UVFBQ0VJQUFCTGFWQUFMWXR1NDg2NFlBQkpaSXdDK0s5bkd4bDFTNTJSL20yWklzY05EbVE4Q3BoUThzSWovMmszVHFES2I5NTBWYTF1bVpETE5qRlRrZG1mS2hURDVvNnlMMWMzYlRtdXFGRnBKc1RMNnVMOU82OHl2Zjd3cVFSeGNSUkRidXQ4K2NxeTRlRmZZcjV6aTUrM0kwNUo1RjVOUXJKaWpRNVY0ci9VRUFBaENBQUFRZ01EQUJCTENCQWRNOUJDQUFBUWhBb0NjQi80NCtUeEdwOVp1ZTkzTWJCTW9FSEtYbkNwVlRpL1JpbHlBQUFRaEFBQUlRZ01Bb0JCREFSc0hNSUJDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBS2JJb0FBdGlueWpBc0JDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0F3Q2dFRXNGRXdNd2dFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlEQXBnZ2dnRzJLUE9OQ0FBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlqRUlBQVd3VXpBd0NBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnc0NrQ0NHQ2JJcys0RUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFxTVFRQUFiQlRPRFFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDR3lLQUFMWXBzZ3pMZ1FnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ01Bb0JCREFSc0hNSUJDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBS2JJb0FBdGlueWpBc0JDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0F3Q2dFRXNGRXdNd2dFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlEQXBnZ2dnRzJLUE9OQ0FBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlqRUlBQVd3VXpBd0NBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnc0NrQ0NHQ2JJcys0RUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFxTVFRQUFiQlRPRFFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDR3lLQUFMWXBzZ3pMZ1FnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ01Bb0JCREFSc0hNSUJDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBS2JJb0FBdGlueWpBc0JDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0F3Q2dFRXNGRXdNd2dFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlEQXBnZ2dnRzJLUE9OQ0FBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlqRUlBQVd3VXpBd0NBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnc0NrQ0NHQ2JJcys0RUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFxTVFRQUFiQlRPRFFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDR3lLQUFMWXBzZ3pMZ1FnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ01Bb0JQNGZXR3lJV3hMU3pya0FBQUFBU1VWT1JLNUNZSUk9Ii8+PC9zd2l0Y2g+PC9nPjwvZz48L2c+PGcgZGF0YS1jZWxsLWlkPSJ2ZXJpZnkiPjxnPjxyZWN0IHg9IjExNDIiIHk9IjM3MyIgd2lkdGg9IjMzMCIgaGVpZ2h0PSIxMDUiIGZpbGw9IiNlOGY0ZWYiIHN0cm9rZT0iIzMzNTU2ZiIgc3Ryb2tlLXdpZHRoPSIyIiBwb2ludGVyLWV2ZW50cz0iYWxsIiBzdHlsZT0iZmlsbDogbGlnaHQtZGFyayhyZ2IoMjMyLCAyNDQsIDIzOSksIHJnYigyMSwgMzIsIDI3KSk7IHN0cm9rZTogbGlnaHQtZGFyayhyZ2IoNTEsIDg1LCAxMTEpLCByZ2IoMTQ0LCAxNzMsIDE5NSkpOyIvPjwvZz48Zz48Zz48c3dpdGNoPjxmb3JlaWduT2JqZWN0IHN0eWxlPSJvdmVyZmxvdzogdmlzaWJsZTsgdGV4dC1hbGlnbjogbGVmdDsiIHBvaW50ZXItZXZlbnRzPSJub25lIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiByZXF1aXJlZEZlYXR1cmVzPSJodHRwOi8vd3d3LnczLm9yZy9UUi9TVkcxMS9mZWF0dXJlI0V4dGVuc2liaWxpdHkiPjxkaXYgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiIHN0eWxlPSJkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogdW5zYWZlIGNlbnRlcjsganVzdGlmeS1jb250ZW50OiB1bnNhZmUgY2VudGVyOyB3aWR0aDogMzA0cHg7IGhlaWdodDogMXB4OyBwYWRkaW5nLXRvcDogNDI2cHg7IG1hcmdpbi1sZWZ0OiAxMTU1cHg7Ij48ZGl2IHN0eWxlPSJib3gtc2l6aW5nOiBib3JkZXItYm94OyBmb250LXNpemU6IDA7IHRleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICMwMDAwMDA7ICI+PGRpdiBzdHlsZT0iZGlzcGxheTogaW5saW5lLWJsb2NrOyBmb250LXNpemU6IDIwcHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtNaWNyb3NvZnQgWWFIZWkmcXVvdDs7IGNvbG9yOiBsaWdodC1kYXJrKCMwMDAwMDAsICNmZmZmZmYpOyBsaW5lLWhlaWdodDogMS4yOyBwb2ludGVyLWV2ZW50czogYWxsOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3b3JkLXdyYXA6IG5vcm1hbDsgIj7lronlhajkuqTmjqXmo4Dmn6U8YnIgLz7or7vlm54gwrcg6L+e5o6l6ZqU56a7IMK3IOiBlOmUgTwvZGl2PjwvZGl2PjwvZGl2PjwvZm9yZWlnbk9iamVjdD48aW1hZ2UgeD0iMTE1NSIgeT0iNDAyLjUiIHdpZHRoPSIzMDQiIGhlaWdodD0iNTMiIHhsaW5rOmhyZWY9ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFCTUFBQUFEVUNBWUFBQUI2UWw4SUFBQUFBWE5TUjBJQXJzNGM2UUFBSUFCSlJFRlVlRjd0dlFmY0JVVjU3LzljVFl3bFVjRjZZeThvaWliNmp3cDJWS3hnUSt5aTNHREhMcGpFRnJ1ZzJGRVUwV3VpaUtKWXNLTWl3UUtpUm1NaVdGQlJzYUdJR0x3aFJKTC9mbVZXOWwxMjJ1NXNPZWY4NXZOUmxIZDJ5bmRtOSt6ODlpbi95MVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVZSTBKL0s4MW5wdW1KZ0lpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSW1BVXliUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVZSzBKU0FCYjYrWFY1RVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJDU0FhUStJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaXNOUUVKWUd1OXZKcWNDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUJERHRBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUWdiVW1JQUZzclpkWGt4TUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVpBQXBqMGdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlLdzFnUWtnSzMxOG1weUlpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDRXNDMEIwUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQk5hYWdBU3d0VjVlVFU0RVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFDbVBhQUNJaUFDSWhBYVFLWE5iUGZtdGwvbFc1WTdZbUFDSWlBQ0lpQUNJaUFDSWlBQ0loQUh3SVN3UHBRMHpVaUlBSWlJQUpkQlA3WXpKNWlaaTgwcytlYTJjdk43SCtFU2dRbUpNQWVmSUNaN1dwbWp6T3pzeWJzZXhPNzRqM3lGbWIyR0RQN1d6TTdmUk1oYU01RkNGemN6SjVvWnR1MVd2dWltYjJsU0E5cVJBUkVRQVJFWU9NSlNBRGIrQzBnQUNJZ0FpSlFoTUExemV5ZFpuWkwxOXAvT3lIaXlDS3RiMDRqTzFhSHZhc0ZwdnM5TS92bnpjR1JQTk5MbU5tRHpXeC9NN3VDdStxWjd2K3Znd2g3UlRQalhycEdpOGdYekd4dlozR1pES3RBeFl1YTJXNk83L2F1UFFTd0F3cTBQVllUUG9Zdk1iTTNqdFZwb0YzZXdiYzFzNHQ1NnZ4SDlVSGgxek9NYTY0dS85VE1QbXhtdDI4TjRCL043QkZ6RFVyOWlvQUlpSUFJckJjQkNXRHJ0WjZhalFpSWdBaE1UWUNEOEQ1bWRxQ1pZWDNUTEJMQjhsWURTNXBQbUJrdXBGM2xPMloyWnpQN1FWNnphMTBiNGV1Ulp2WWlNN3QwYTZiL3o4enVhR1pZa0t4NitkOW1kb0taWGIwMWtYOXlRdFRaRTA3d3RtYjJqbzZ4L05MTWRqYXpiMHc0bHB5dWZBem5FdTZ1VyszUDQ4eU1jYlVMejg2N21ka25jeWE0NG5VbGdLMzRBbXI0SWlBQ0lyQUtCQ1NBcmNJcWFZd2lJQUlpc0Z3Q056V3pZd0tpRFJZTWR6V3pFNWM3aFVXTURNc2VEcnR0OTU5NmNGZ3gzY2ZNamxyRWFKY3ppTXVZMllmTURGR21xM3pXek82NUJxNlFTeExBc0ZEa25rZkFhUmRjMVI1clpyOWJ6aGI1dzBpV0pJRHgvdjBxTTN1eWg5T24zUDFPTE1WTktSTEFObVdsTlU4UkVBRVJtSkdBQkxBWjRhdHJFUkFCRVZnVEF2Y3pzeVBNN0NLZStjaHlLYnpRV000ZFltWjdSZmJEdW9nNXBiYzk0aGVDZ2MrVmJGOHplMFhwVGlkdWIwa0NHRk4vbUptOXZZUEJ1V2EyaTVteFY1ZFdsaVNBL1pXei9ycWtCeEtDTnk2OTcxNGF4QkhISXdGc1JMaHFXZ1JFUUFSRTRId0NFc0MwRTBSQUJFUkFCSVlTNExka3YwajhIMks3RUp5Y3VEWXFGeEJJWWRmazlXYm5jcW9NbXhkUStTTXplNTJ6UE9yYVd6K3RMSlp1VjRrMnA2end4bHVhQU9ZVEswQzgxSHQ5S1FJWWd2ZGhsYXZvL1NQN0VWZFNYSGczSmJHQUJMQVZma0JwNkNJZ0FpS3dLZ1FrZ0szS1NtbWNJaUFDSXJCc0FoeGUzdWRpVlBsRytqZktESGtoTkRIcnVTNlc0bmhoS3FGNFN0UW15RGtaNXBib21wZHlaeTlOQUdQTXhLUDdlSWZsSjlaTGU3am5RY3JjcHFxekZBSHNnV1oyZU9KSGFHTGJrVkYzSFJJNXhOWlpBbGlNa1A0dUFpSWdBaUl3bUlBRXNNRUkxWUFJaUlBSWlJQWpFSXRqcGFENFc3ZEtIL0dMRnVENEVPZDJ1Z2tINDlRYmpOaFRCM3NxTDlrMUwyVitTeFRBU0VDQTZ6UFpJTnVGeEFQRS9qc3JaWElUMVZtQ0FIWlZGK3V2enB3Wm0vbzZKWEtJelZVQ1dJeVEvaTRDSWlBQ0lqQ1lnQVN3d1FqVmdBaUlnQWlJUUlPQU1obW1iWWNZSjVJSGZNdk1kdlEwSnpIeHdtQXVWL0g2bUpuZDNNUHNQV2IyVUROYlJmZlJKUXBnWVBiRlgxdGkwb2E1QmJCUTRIdnVaOFRDYlRyMjdoU3gvM0RMM0RZUXh6SHRxVGFzMXFWY1hMbWRXczI4MTh5ZU5LenBJbGYvdTVsTm1XMjF5S0RWaUFpSWdBaUl3RllDRXNDMEkwUkFCRVJBQkVvVGVMcVpIUmhvOUNEbmpsYTYzMVZwNzJaT3FMbDhSTndpc1B1UlZVRHhPM25xSVpMdGFtWmZXSldKVHpETzNjMk1BM1BYK3cwaXc5MmNCYzRFUXluYVJRa0JEREdWREk0bEMvSFhjTW05U2FQUkg3bWtBejh1MlZFVk00dVlXQ2NQYUhOdUFjem5Nc3FVM3ViaWduM0VrOHhoYkZmSVdGRCtBZGpYNXRLL2pjUzVYSnVKYWlJaUlBSWlzTTRFSklDdDgrcHFiaUlnQWlJd0R3RmZWa01zYjU1bFpxOWVVU3VjRWpRUkNvNktDQkhOR0Y4eHQxSkVNRnpOVGl3eHVEVm93K2RHOVl2S3d1YXB6bVZ2VXkzQS9zSE1IcjdDYXp4VWdKaFRBTHRpbFlqaEdEUGJvWU4vbmFUaHUyYjJLak43Y2tlZHNTMCtKWURGYjR5aCt5L2VnMnFJZ0FpSWdBaU1Ua0FDMk9pSTFZRUlpSUFJYkNTQnRuRHpKVFBicThvRWVkSkcwamgvMGluaVYxZVd4OWgxRXNHMmJpcXN2RDdxck1CK1V3VytmN2FaSGJyaUdVaExXSUJKQURNN3djeXUzbm9HalMxczhFSGc5V2IyS00rejczRXVTUU4vRHNVSSs0NUxQUENERVo2aEVzRGlVTWZlSi9FUnFJWUlpSUFJaU1CZ0FoTEFCaU5VQXlJZ0FpS3dHQUkrNjVmRkRIQ21nUkJJK25abTlwV1orcWZibU5zamRUNXRaZ1RHN3dvY25oSXpiQzUzU0lMUFAzTkd0dTJ1Y2N0RE1LS2N1YkM0UFM5cGlCMDV5Q1NBbVEwVklPYXlBQXNsdS9odzlWSGdBUzF4TmxRLzlJekkyVS90dWhMQTR2U0c3cjk0RDZvaEFpSWdBaUl3T2dFSllLTWpWZ2NpSUFJaU1Ca0JDV0RkcU9jV3dIYXBYSjhJd0g3WndFNUlPZGdpY0pGMTc1S2VkcGduaDJuaUNFMVpjTm5jZjhvT1Y3aXZ2b2RvQ1dDcktZQ0ZoT3ZhOWZHVTFuNk9XWXgxV1lrT3ZTVWtnTVVKOXIxMzR5MnJoZ2lJZ0FpSXdHUUVKSUJOaGxvZGlZQUlpTURvQkNTQUxVc0E0emQyRHhmY21rT3RyM3paek81clpxY2w3SkNRZFFpWEV5dG9ielBEM1kxTWZGTVVDV0RwbFBzZW9rc0lZSzkwK3pGOXRNdXEyZGQ2cnA3RjFCWmdsekd6RDdsTW1XMlMzSnNQTnJOM2V4Q0hYQ0c1cEJrbmNGbXJGQi9OSmN6c3hTNG1YN3kyLzVuT2N3NStVejNuK281VjE0bUFDSWlBQ0N5SWdBU3dCUzJHaGlJQ0lpQUNBd2xJQVBNZmxxWjJnYnlvbVQzQnpCQWRMaEpZVnpMYllkbVZFOWNuSm9MUjNYTmN4cklwQXI1TEFFdS9jZHNDR085aDIzb3kvelZiSllnNmNjMyt2TlVWTWEzMk5MUGZCb1p3cnBuOUtsTW9RTEJGVEQwdmZXclpOUzlsWmxndFRpVmdUQ21BbGJEaWlyazk3K3VlTDFQeHkxN2dqZ3V1YkdidjhHUzJKY2JabjNURWFPUFppSmpZWlVIN2p5NmpNTEgrVkVSQUJFUkFCRVFnU2tBQ1dCU1JLb2lBQ0lqQXloQ1FBTFlNQVN6VndxR1ArRlhQTUVVRTQ2QkpmSzZRT0ZKaWMwc0FTNmZZRnNDbXVHZi95Y3gyUzR5Rnhuc2hMcnVIbWRtQlp2YnlrUVNxNjVyWnNTNHUzek1xYTZodnBTUGNVaE9oQ1FFeEpETFhGL2hFeEJlWjJSc1Mra2NNUENOQkZJVGhmazZBN21yMm15NllmY3ppTTlZT0F1VkRuRnYwS29oZ2QzUVdXNWZ2Z1BKWlo3bUtlK2Z0VzM5SDVNTEZtbmhwMSs2NGx1eVpqNjZ1Kzh4SWV6VmhhNmlLQ0lpQUNJakFxaENRQUxZcUs2Vnhpb0FJaUVDY1FPZ3d2YlJnNFBIWjVOZTRlSlZ0N1FvZGwwMFpBeXhrNGRBY1dvN2JvNC9FN21iMnJzcWRLT1JlK1RVemUyQjFVUDUyUHM3a0t5U0FKYU82VUNEM0pRbGdsM1pDQTFrSktRZ3N4SlE3TW4xNlNUWFpyNGU0ckxEMUJXK3NSS3dYbUJseHNYTEtsTEdyZm1obU8wWEd5SHMxek43cEVlVnlNN2JHTE1sV1FRVGpnd0JyaThWYVYzbHY1Zjc5U0Njc0luSjFDV0NQcUpKSDhHd2xCdUp0UGUwY2JPZkhpWk0xV000ZHBMb2lJQUlpc0dFRUpJQnQySUpydWlJZ0FtdE5JSFNZdnBlTFI3UE9BSHlINGFrRU1BNXViemV6cTBVZ1krM0FJZmxuQlJZakpjQSs4eWZlRVBHSVZzRlNwQUNXbFdsaUtRS1liKy9tQ2pZcDRCRmtEemV6OWpzbzdycFlZNzA2UThSWW1nQVdzOHpzRTdzTDl6OUV5RHQ1NE00Ujl5OWxuYW5Edm5wTDlWeThqdWVDVjVqWjM1a1phKys3RjdBQVF3Q2o0RFo3VUVzOGJUYU4rSVhWSzBMWm1PNjdxZk5YUFJFUUFSRVFnWVVSa0FDMnNBWFJjRVJBQkVSZ0FJR3BCVEFPWm45aFpzUWhtaUxXVkF6TlhBSllhcnd2eGw5Yk81d1ZtMHpHMzI5cFprZFZCOE11MTZKbU03S1F5SUE2VWRXbENHQ2hlRk1JdHZlc2dwYVgyTFBYckN4NHlIamE1Y29HOHBSc3FNMmxXWklBZGl1WGdkV1g3WFZJOXNacm1Oa25LOWZVN1FMN0VuRU5RV2tKd2cvV2hBUzZKdzVpVitIM0Fxc3ZQaGpVb255S0FFWmJQRzhSeExBYTlGbS80bWE2ajl3aUozcUtxUnNSRUFFUldDRUNFc0JXYUxFMFZCRVFBUkdJRUpoYUFLdGQzL2pxem1HSEwvM0V5Sm1yekNHQTRaYnpKalBEd2k1V1hsVUpoYytxTXJqOVI2eGlqNzhUVStrRFpyWkQ1RnJpNVdBTjlxVWVmZWlTOGdTV0lvQXhzNUQxMGhEeHBxYlc1ZnJZSkVvUTlEdG5Kb1JZaWdBV0MxaWZLK3gxN1RUdWNSSWhoRVN3cGtWVitkMGFieEYzUjRRdExQa1F3Ym9LNGhSV2dGOXYvVEZWQUtzdjQrTUxXU0MzRHd5TGp6T1BxZmIydjhyNk5iNTRxaUVDSWlBQ20wQkFBdGdtckxMbUtBSWlzQ2tFcGhUQWNQTTdwc3JveGFHc1dUNWUvWi9ubWRtSk14dzRwaFRBNm1EaHhQcUpXVjdob3ZRMDU3b3pwblZHYXZ3eDF1dDF6dlZvN0FENVErNDlHSk81NytjVFdiVmcwZmpzS2d2ZFc2c0Qrc2xEQnA1eDdSK1oyVzBTOXRBMlp2YXlqa3g0Qkk5SGJEZ24wT2N2cThEMm42dm05cnZJdU9DTlNQdGtUNzArN252TnBueXVqOVRwNjJxNUJBRXNKbjcxRWZaOFMzVXpNL3RZWkwrOHo4d2U1VEovWm16RlFWV3h5aUxSQWdLY3o5MlJEa0paRzNNRk1OckRKZktsTGhOa2FBSll6eEdEVEVMWW9HWFd4U0lnQWlLdytnUWtnSzMrR21vR0lpQUNJbEFUbUVvQTQ3ZURvTWFJQlYyRjdJWmsvRHA5NHFXWlNnQnJCd3NQVFpQNFc4VDcrc2hFTEZJelVES2NwV2RQd3lLSklQOWtzOFNWYWt5eER2R0x2dTVtWmt1TW1ZWVFpRFhMMVZ2N0tDZkRZOG9XRE1XYmdndjM5UmRUR21yVkNiaytqaFZzdnprRUVtUVFSK3NlSFdOdlorYk1tVjdNN2JHdnNCY2FRMHh3NDFxc3JFaVNNYmFRaS9ERm5uaHR4QklMSzJFeU5SS2J5eGVIc0k4QXhsejVQYnFEUzZ3UUV0K29TMUlRZnJmNFVEUG14NGljUGFTNklpQUNJaUFDRXhLUUFEWWhiSFVsQWlJZ0FpTVRtRW9Bdytyck9HZWQweldsUFoxb01mSjBMOVQ4MkFKWWZkQjZXMEtnK3lrUG9XMFFqSk0xT0RTU0liSys3djJWdGNpVEt0ZWwwNlplc0VCL3U3ckQ4aVZkSGJKbTNyOEtmbjNxQ0dQYzFzVm00eERkTE04eHN3TVdFdDl1S2dHTStZY0VsajdXVExnK0h1YldyMnY1aGxxV3BXeUpxem9COFNvZGxmc0tZTEVFRkdNS2V5bVdZTVRaSWlEOFA0d2c5dFFXWC90SGhDOXdwejVmK2dwZzlaTEc0bzQxbC80WFZkRDlBeGZndHAreWQxVkhCRVJBQkVTZ0lBRUpZQVZocWlrUkVBRVJtSm5BRkFKWXpFMnF0RVZLRHRJeEJUQU8wRmc1M0RkeFFJaGtZMXN0eFlaeWMyZjFFc3RLV2JkRGRqVmlsR0d0TVdmeFdkWDh5TVdwS2htL2pIWGxnSTZnMEZYbWNDZnJHc2VVQWhqOUk1eVFOS0dyRUh6OGlRa3VsZlcxb2JaS3hCWkwyYXVJVlVkM1pKN2sybHdCakdmZ0hrN1U4d1ZocDkyeGhiMmJ1T1FYc2Z2N1BXNDlmNVVDS2xJSGw4TUhPYmZESzBUcXBsaDlOWnNZS29EVmJkM1F6SGorOHZ4TEtWaUR2ZEJaTnNvcUxJV1k2b2lBQ0lqQUNoT1FBTGJDaTZlaGk0QUlpRUNMd0JRQ1dDam16cmxWckNFT21tU05tNk9NSVlCaDZZQUxJNGQrWDFEbjVsekh0THJvd3hUckprUUczS0ZTQ2dINmllSDIrcEZkRG4xamlibVV3ZmZlTGc1U3lueGlkVGpNRTVjb0pHUk01VTRXR3V2VUFoaXV0TGlyRWRlcFdSQWZIMlptMzQ2QmRYKy9xWXNWMkpVWmNZeU1xTDVoa2FUam1aNC81Z2hnUEErZTdpd0RRd2pHRnIvcXZtOVFpYmNmRG1UVnJPc1JCKzRoVmJ5NVQvV016WWpJQmlmRXpJc2tySDBmTWIyVUFNYndjcC9iWE1Pejd4Q1gxSVQ5TFRFc1lhRlZSUVJFUUFSV2pZQUVzRlZiTVkxWEJFUkFCUHdFK0RwUEprWkVoSGI1YTNmNEdjS1BnTjBJUVh0N0dxRnZEa2l4WU50RHhoQzY5c2JPS3FOOTJDWU96ME5kQU9UVXZ2bDl4QldNWVBHcGxnUys3R2FwZlk1Vmo4UGdQczdsSnlUME5QdkhldU81em8xeXpOaGJ6VDVqNGhkMTJXTllINVhNcEhsTFowa1RTbVl3ZDF5d3FRVXdXSk5SOUZnWGNCM2hrZGhKM0ErcDdFUHh4RXBrUlV5OVgyS1pObE1GTUo2dkNEdDdSVHFlT2hOanpJcXhPZHhVZDBTdVliN0VUTnN2NHhsSW5EcCtIMDVLWFp4R3ZaSUNXTjBzUWk3UEN4SkZwRDc3dUpiZkRESk1Za24ybFlXNFFmZEFxa3RFUUFSRVFBVGFCQ1NBYVUrSWdBaUlnQWlrRXJpdEU5RXUxbkVCRmdZN1YzRitDSUMvNmlYWDNaSDV2cUVLbnY2TW1heW1Vbm5qR2tRc0pseW5VZ3RpQjZJSEdRalBTTDJvUjcwVThZdGcrQWlzWXdoeUJHbkhWY3puQ3NtVXBzcm0yWVZ2RGdHTWNXRHRST3cxQlBRY1VZUDNTNFNsbDNSTXBrOGNzUjViNmcrWHhESkZwZ2hncVJsVytVQkFQRDBFd3lrTFlpTXgvM0ROakpVZnUyZjFLUjBWRWN1NUJ4N3ZMUDFTckwxb3BrUkNqVEVFc0hxS1dPOFMwNDhNcHpsQ1dIM2ZZemtIWHpJZmova2NqSzJkL2k0Q0lpQUNJakNRZ0FTd2dRQjF1UWlJZ0Foc0NBR2ZTMVE5ZmI2d1l6SGt5L0MxQ3BnNEpERVByS1ZTRDM1RFhZdW01c0k2WXRIeC9CNGR2OTNNQ0hwTlpybVM2eHdMSnM1UXAzQ1hTM1VYblNPK1d4OEJESXZOMnpnTHJoN0wvZnRMYUlPU2E5VjVmWmNwdG4wZnNXOWVXcm14ZnJYdmdNenNlRE5EeEVrdGozR1dxNzc2TVFFTWNmYURDUnpuRXIvcWVTSHM0SHBKUEN0ZjZRck1qK2lGT001ejcrR1ZleWZQaU5UeVEvYzhJY1BtVUpkQk1uVmlyYlZkcTNPeWptTDVXYUpjemdtemZZU3d1djlYbTltK0JlWmJZajVxUXdSRVFBUkVJSk9BQkxCTVlLb3VBaUlnQWh0S2dCaFNpQkJkdnh0WWZkMnhzaG80ZlVYWjRPckQ0WS9ZVnptSFAySkhjV0NiTzJoOEgreTVnYUtiZlh6QXVaVGlGamkwdExNOWRyVTNoZmhWOTR1SWdFQ0Q1Vk9va0pXU2hBaFRaYzdzSTRERlhQK0dydDFjMTkvTHpENlUyRG1pQ3VJTXJueStFaFBBZUQ0Z2JoSDd6RmRlVmJrTXZqeHhUR05WTzlQTS9yTnkyYnVubVIxZVdXM1dHVlNiL1RWamsySEpTMXcweEtDdUdHMmhjU0o4MFJac3A3WjJLOEdQangxWWs1TDBJeVcyWTkwbmJ1NTNudkMrTHpGWHRTRUNJaUFDSXRBZ0lBRk0yMEVFUkVBRVJDQkdnSy9tSHd2RWdkblR6SEJQVzdXQ2RjdWpuRlZUemlGbzFheStmT3VDMlBPVXlpV0lBT0dwYmtHSVhvaWRXR1VNS2J4L1BNSlpkb1NzN2FZVXYrcjVNRFlFMGRkRUxBSEh5RXJwWXlvQjdBSXlPUUlZUWVJL1YyVnd4YnJQVjJJQ0dOZUZYQXl4cHNSTkdESG85a051aW9IWE5ya3diektZYnQ5b3N5dmpKbkVPUDVFcGdCMVZ0ZnV1RlJXKzJvaDU3aUdPM3FGS0ZuS1ZDSCtzNXhDOW1iK0tDSWlBQ0lqQWloS1FBTGFpQzZkaGk0QUlpTUNFQlBoU2ZyQ252MCs2RElOblR6aWVVbDN4RzRnNzRBRVpEUklFK3lkbTlyaU1hNVpjOVF2VjRMQjhJMVlUaDd0WUtaSGRMaldUM3BneHYyTHo1TzhwMW1sVEJjZVhBSGJCaXVVSVlESDNSMXF0QlRDc1A3R0lJdWc1Vm83dDBnN3FqeUNDOVJRWlU3RVNJeHZqVWdRd3hvNm9qekNIVzJQSVN2ZUJ6bUlzZENZZ3VEMUNIeFpUdU5XdVUrRWVadDM0Sjg4M0xQMjZSUGt1QVhHZE9HZ3VJaUFDSXJBUkJDU0FiY1F5YTVJaUlBSWkwSnZBMVZ6ZzMrdDJ0SEJ1WlYxQi9LYlA5bTU5L2d0anNjM3FFWDdKWlg4akVEaUhKR0poclVQNUp6UGJ6UVdXSjRzbWdaNTlXUzlMWk81TGRURWNJOXRqbi9XQ0JaWTkzQWVod3A0Zys5L1FPRWkrUGlTQVhVQW1WUUJMY1gra1ZRUXdzaU9TOVk4RUVXUUF4TXF4SzA3Wk5jd00wWitrQ1dTV3hVS1J1R1pMY0RmdDRzSjdQa0l1TG90Zjkyd3U3a2xFUEt4aG13V0JEeEVhY2Z4YkM1bGpuM3M0ZGczQzErMmM4RWxkeEV3K0J1QUdYU2NNK1Y3MU8zZW42amZnMUZoaityc0lpSUFJaU1DeUNVZ0FXL2I2YUhRaUlBSWlFQ05BN0phY3VGV3g5dHAvZjZxemt1cTZqc1BmMDNvRXlNNGRRK242Q0hlL2FnUnlSOXc3enN3UUdkcUYrRjVZd0IzUkVEZldVUUNyTGZpd3pycWZpMmQwOVFhTUVxNlBLYkdVNkhMdVlPTHRQY0Qrd0NKb2g4aEdmSk9aY2IrUU9iTjA2U09Bd1JzaGtTRHU2MVRJU0VsV3ZsaTVrUlBuWS9HdGNPZEYvRzNHekFxSnZjVFB3MzI2S1NndFZRQ0xNYXIvVHVaYmhEMWNKc25vU0RJUXNxSTJNNjR1WVk2cDg4bXAxeGJBbXRkZXlWbUU4ZUdETUFBcUlpQUNJaUFDSzA1QUF0aUtMNkNHTHdJaXNQRUUvc0c1dUd3OGlBd0F0ZFZUMDIwVHR4ZXlIRFlMN282NC9MU0QzSyt6QUZiUEgxSDF3VlhzSTRKNzE5a3hoMlQ1NUlDTmxjM05JdXVFbXhVeHlacUJ0Ym1XQU4vTnczakdjaWRWWmI3Y1M4VDFPdERNZnRxNjZzcE9CTDF0cExXakhUY0UxcEtsandCV3N2OVZiS3Q5bjJMWmhZaFRaN2FzNThUZTJxWmpnamt1YjBzUWgxSXQ0M3hyZVQzSHhwZmxkUWx6SEdNZmhnU3dNZnBUbXlJZ0FpSWdBak1Ta0FBMkkzeDFMUUlpSUFJRkNFZ0F5NGZZSllBMVhTR2I3bzVkclcrQ0FOWVV3bkFISXdiUUdmbW9mMzlGWHpkQ2hLOFh1bUQ1RDNHQnQzc09JWHJaTGMzczJNcmRpOHg0bEk5WC8wVnN0Qk1ibG9LaFFPak5Ec2dRZWYvQzdsSTVBaGd1YlFRM1I5UkZ3UHgyZFBicEZaNWpaamV0ckQ2ZmJXWStvU1M5dGZGcXNsWUVkOSt4MFFVQ043R2VtcGFOL0JuUjlhK2NLM0I3UktreDd4RFZpSTExK2ZHbUZHMzUrTXFOOGNmUld2MHJTQURyejA1WGlvQUlpSUFJTElTQUJMQ0ZMSVNHSVFJaUlBSTlDVWdBeXdmWEpZRFJ5blpWTEp3cm1Ca0hTZUw2K01vbUNXRDVkQys0Z25jTU1vUVNWeXlVWlpKWVEzczdDeXk0STBZKzBibGgxZGZocG5iWHlzWHdyQ0VEOGx5TGVJSGJKV05vRjl6QkNCSk9ZSFFLWTBOVUlyaDZxR0JKaGtYTzF3cU5OeWFBL2FjVHZlQzJ1K05kMnJMbFdzNmxzTTZXQjVzWE9GZTVNZHcraDZDN1c4WGpvNVc0VmIvbnNxLzJjb0pxV3dBakJoaFpEWEVCNUJuUUxDVmNmNGZNWTBuWCtnUXc0b3Z0MUdFMXVhU3hNeGJmK0V2ZkowdWJ0OFlqQWlJZ0FpTFFJQ0FCVE50QkJFUkFCRmFiZ0FTdy9QWHpDV0Q1TFpXOUFpc1VZcEUxWXhIVlBReDFieW83MG5ockNFVzRNaElUSzFRNGZENmdzaEw3aUt2MEYwNjRxRVdXK2xvRWpEM003SDN4cnJOcmhHSkZZVkdEMitQM0c2MGl5dUVhKy9lUm5uQzV3eElzSlY1VmJOQStBYXdPYm42UGpzeDFKUS8ydkM4aWRtSDUxUzY0cGlLNjRmNjVoSUtnaWJYWGd4cUQrYVp6VGYxZ2h3VlluUVdTZXd3MzNYWUd3TytZMlozTjdBZExtTnlNWTVBQU5pTjhkUzBDSWlBQ0lsQ0dnQVN3TWh6VmlnaUlnQWpNUlVBQ1dENTVDV0Q1ekhLdUlFUGVPeXNYTk53S1ErV1h6a29LaTd1NmhOeXN4bGczM29PdzZIcXlaNkM0eCtFSzJTNWNSd0lJNG9XRkNySE1tdGtDY3pnMjYvb0VzRkI3dnpPek8xU1pXai9YdDlQR2RhRkVFV09zeTVBaGR3bWFaRGw4cVpsOUlTQ0FoVVMrdDVuWm8xdXg2WWFNa1dzdjV4SVUzTHNhMDF2ZDJJYTJPZWIxRXNER3BLdTJSVUFFUkVBRUppRWdBV3dTek9wRUJFUkFCRVlqZ050V004N04wSTQ0YU8vYWNCMXF0b2RGeVpGbWRzN1FUaUxYWTJHem15ZWVEaGtjeVQ0NUpDQTZGaDJ2bTJBZXVaaFczUUtNZHdyMnptRXVjSDVvL3QrbzNBUHZVOFdwT3FXakVwWTdoM3N1SmpBLzdtcWxTa2pZUWFEYnViTGlZcXhkaGZudVV3VlFmMDJIMVZDemZ0dkZNMmZzOUhFTkY4K0wrRnQxakxMVU5rcFlEb1pFUXU3SFhaeHJaT3FZeHE2SFlObTB6c042RUF1NWYzR3g3THBjSUE5d2d5SjIySWVjMVY5N25QdWEyU3NHRGg1eEdDSHVubFdtVmJKMDF1VWx6cW93dDNtU1N1QitTcHkzWnVLSTNIWlM2a3NBUzZHa09pSWdBaUlnQW9zbUlBRnMwY3Vqd1ltQUNJakFwQVFRbmc1eHNYSzZPbjZtbWUwZmlZOVZZc0R0V0VQTk5vbnJjNzhGaWxjbDVyM0tBaGd1ajdqSUlSTEVTaXhUSXBZeEgzUEI4OXR0a2FEZzdnTUM4amZiQzFuOFVBOWhDeGZPVUR3NDJzQ0ZFNHUzdHV0YzNSY0NHQlptV0NHRjJxcnJYOXdGVk1mbGsvaGpsNDBCRGZ6OTZaVVkrY29CMTNOcGFGK21NQnJZZmRibFZ6T3pZOHdNWWJNdXVEOGlaTEkrSkhNSUNXQmN3d2NGMm1pN0lwTXRFb3M2aExTK0JkZmV6enRSczlsR0h5czZYRDBSZzNrZXNzZHd0Y1gxazFobVArODd3TUIxRXNCR2dLb21SVUFFUkVBRXBpVWdBV3hhM3VwTkJFUkFCSlpNd0JjRGh6RmpCVU0yd05Nbm1NQVRuSVZXVjFka3RzUENhQjNMS2d0Z0JLZ25QbGRYL0xMbVd1RnVTUHlzV05CMDFwbkRmRmQ1bkF0YVAzUVA3T0F5UDNabDdvdFpmN1g3Um9RNHdpT0N4VElKMWxaZU1IeWttV0hWTTdRUWYremRsWlhSeTZ0RUJBU3I3MXNReGJuZmlHWFdMZ2hMeE1ZNnJXL2pJMXpYOWV4QWVDUTV3SlVUQmJBdVlSU0JDWmZYZzh6c3ZNYTRzUmk3aTF1M3Q3ZzlFSnBXVTdScTF2dFpKVnpkMnN5K2w4SEVKNmJSQk1MWUk4d01DNzFTUlFKWUtaSnFSd1JFUUFSRVlEWUNFc0JtUTYrT1JVQUVSR0JSQkVKV04yTUdJRzlEQ0kyakt5RDVvaUFPSE13cUMyQk1QU1FDK1FRRUg3TFFQdmhwWmFGek80LzdaT29TaERJLzBrWWZ5eVlDd1NNOE5ETmV4c1F2QXJBVFdMN3BEcGM2aDNZOVJDOWlBcjdKdWNRMWhacStiZnBFY1o0SnVLTWlzaTJsWE1rSm10czNCc1E0RWFpd2p2TEZVYXVENERmbmNVVm5CWVpJaWhpS0pSNVdZUlJFTHl6NkhsSzU2bDYvY1JIdTRianZFbnN0Vkh4WlpJa0ZkbFFHek51WTJXZXFiS25zNVhaQjhFT3NLMWtrZ0pXa3FiWkVRQVJFUUFSbUlTQUJiQmJzNmxRRVJFQUVGa1dBM3dJT2djU2g2U3J2Y1lHOHg0NHhROThoeTUvYWtpUEZqV3hSZ0JNSHMrb0NHUHRvUHpPcjR5blYwMjRMQ0lrNGdudmhqYzZxSnlZMitQb2lzeU9pU0ZkTXJTRUNXMU1FZTdPTEVSYTZidzQxTStMNDlTMjBEUXZFRG1MYk5lOE5YQ2U1cjdmdDJmaEZYZXdzTEtmYUJiR05qSW9sTFl4U2hobUszOWRsL2ZWRk04T3k3cXhNQVl5eElQNDl4cTBQRmxwMVFRRDdSRWZzeFZRckxwOXdSVnpDSjZWQWNIVjhRbHJKN0ovTjRZUVNWSERQOUwwWE02WThxQ291c0lpZ2JWZmxzWGdOR3F3dUZnRVJFQUcxbERWSEFBQWdBRWxFUVZRUkdJZUFCTEJ4dUtwVkVSQUJFVmdsQWpkMTFnMWRzWVk0Nk9MNitOVUpKaFN5K21FY2lCYi9Oc0U0NXVwaTFRVXd1Q0dhUEtNaHBuN1p1YytkMmdOcTZNQ05SZGw5TXkxbTZpSFFMdTZhdU85MWxTNkxvSnpoWXdtSEVQWjRKN3lFcnZXSkdLbjloV0pIOWNrY21kcnZYUFY4OCsyeS9tS016YlhNc1FEald0NlJFVXU2TE9sZVhJbC94RVJzbDVRa0RiamNNbzhidGk0bVd5ZkIrdjg5QVM1eDRyQTRvMzY3OUlrbmx0Q2xoZTdIbE91WFdrY0MyRkpYUnVNU0FSRVFnUkVJU0FBYkFhcWFGQUVSRUlFVklrRHdjbUlYa1hXeHEwd1YrSjYrQ2RoOW9HY2N1SmJ0dVFKV0JrT1dmaDBFTU9hUEN5RFdMSDlTdVk5aGxUTWtZeWNpMWNjOXNiWDZ4cUFLV1JsT0dlc09WZ2hsQ0JteGdxVlZsN1dhQkxEenlYVUppVzNSUEZjQUM2Mkp6NG9yNVRubGl3UDJLNWY4NE9UWVpqQ3phN3RnK2wzV2VVTUZYRi8zRXNBU0ZrWlZSRUFFUkVBRWxrMUFBdGl5MTBlakV3RVJFSUd4Q1N4RkRDQnIyM0hPUmFVOTUwMzVRcjh1QWxqSlBSdkxUSnJpWnRnY1QyaWZ6UkhYaW95V1pEYnRLblZNcnpjNEVmRUxIUmtNSllDZG4vR3g2OW5SRnFOS0NtQStLNjRmdUdEMnhDc01GUUxxdjZLakF0YURXQ2ZHQ3U2WnVLQzJDMElwR1MrUGp6WFE0KzhTd0hwQTB5VWlJQUlpSUFMTElpQUJiRm5yb2RHSWdBaUl3SlFFUW1MQUVCZXozRG1FTXMzUlZwK0E1TGxqV0VKOUNXRGRxeERLMXNnK2ZVQ2lGVlZzbjAwWjY2NmVhWHZOeVk3NWoxWGNydGRXZ2RleEJLcGpldm5FbTAwWHdIaVBKYk1vUWVtYkJXNjRCMkk5V0plU0Foajl2dFhNOWtyb3QydFhENDBEeHY0ZzBIMjdOR09lbFg2bVNRQXJUVlR0aVlBSWlJQUlURTVBQXRqa3lOV2hDSWlBQ0N5Q1FNeXk1Z05PV0pnaThQMWp6ZXhnRDVVaEFja1hBVHBqRUJMQS9MQkM3ckZZU2hIby9NUUk2OUErSTFBL2xqTzRRRTVacnVxQzhXT3hRekI3WXFaMXhaenFJNEQxQ1lKUFA3dTYrRmR0RHArc0JKOCtzZHpxZG5qbTRHcU45VlM3ZktVS092L1BDZURiUWZCOXlRd0lVaytNT0FURnVwUVV3R2lUakkrSGQ0dzVKWmc5NjM2Q21WMmxkWDFLSExCdHpPeG9NN3RaUjkvUHIvN2Q4eEk0OXFuaUU4QzQvNGo3ZDJhZlJpZThocmhwWkZ4dFp1NmsrMDJ4TUo0UXRib1NBUkVRZ2VVU2tBQzIzTFhSeUVSQUJFUmdUQUlQZEllMzBPOEFCelNFQjZ3S3VnN2xKY1ozQzVkUnJTc0FQKzN2NjNFVkt0RjNUaHREZzVYbjlEVlgzYkdDWjVlWUQ1bjNpSlYxSjA5am56V3pld2FDemk5MW40VUNyVGVuMmtjQXkrVWVFc1ZqZkZQNnVsYTFmclRURm4zSUhuZ0hNMFA4eVNtaFpBWmR3ZWhMQzJDK09GeUltSGVKQ0VLWGNpNk03ZjJjRWdmTUo1VDM1WmpLM0NlQS9iQ3l0TnVweXBqSng0b2xGOS80SllBdGVkVTBOaEVRQVJFb1RFQUNXR0dnYWs0RVJFQUVWb0RBTmF1TWlwOTJnWlJUaHZzTE0vczdNeU9tenBDQTV1MitybEhGeThHcVpEdlBJUGdiUWNMUFRobmt5SFVrZ0kwTU9LSDVtSWpsaXdjVzIyY2ZkdGFPVFd1aGhPRk1XbVVLQWN3bmlpTVFrQWtXSVh4SUlTRUMxbEh0MHRkdGozZFkydHVuMWVDWHFyRVNXKzJNMXI4dkxZRDVNakdteHVIeXVUSGl1dm14QU9qSE9HdkJkcFVVNFczSStra0FHMEpQMTRxQUNJaUFDQ3lDZ0FTd1JTeURCaUVDSWlBQ2t4TGdJSWdyQ0M1aEY4bm9HWGZJZzF6TW5SOWxYTmRWTldiUmcxc05oKzZ2RHV5bjFPVVN3RXFSSE5aT3lCV1NsZ2tzamxoYnUrN0c5dG1xdU5pT0xZQ0Y0Z0creU15ZTI0aEgxbWNGcjFTNW1CNWJpZWpiZDF4TWR0ZDM5R20wc2g2OXBXdTNtU0hUMTE1cEFZd2grNTRMS1prWUgrcVo5MHVxL2Zzc0R3OWZCa21xaDY3cmlYZkxaUkxBU2xCVUd5SWdBaUlnQXJNU2tBQTJLMzUxTGdJaUlBS3pFcmkwRThFNGJQRy9jd3JCcFlrMVE5eWxPbEIzNnZXSUVvZWEyUjZCQzRZY2lsUEhrVk5QQWxnT3JmSHF4bUxYMWFMRXk4ME1zZUQxWnZZb3ozQnlBdWlQTjZPMGxzY1V3QzVoWmtlNCtGenQwWlJ3ZmFSTm4vWFhOMTNzdForblliaFFMWjRseFB2YTBmM0ZaLzNGbjhjUXdIekI3TW5zU1ViSGN3THp1bm5sK29uYk1meWJKWFF0N3FPZk56T3NHcHRsYlBkSCtwSUExbk9UNmpJUkVBRVJFSUhsRUpBQXRweTEwRWhFUUFSRVlDNENpQW9jMXJEMHVFN21JTDdyck1tSXo1UVNNSi9ZTndUN2ZsaWdINThyVytiUWlsYVhBRllVNTZER1lpNk5OSTZvUzdEMXB3WjZlcWFaN2Q5RHdCMDArSjRYanlXQThSNjRYeVhDSE5BeHJsS3VqeUhyTWpJWllsVTZwTlRpR2tJOG92cjdQSTJOSVlCaDJmYUZEbmZ5bjFYdTNiYzJzKzhGSnVhN2xtdHVaV1pkb3VBdUxnQisrLzE5YlBkSENXQkRkcWl1RlFFUkVBRVJXQXdCQ1dDTFdRb05SQVJFUUFSbUozQlJaMG1CR3hsQmpYTUs4Wk53d1NHYll6djJUdDBPMWhyRUVidGJvR0Zpa3lIR25aWFQrUVIxaVNsRVZya3h5eFVxbDg5N2o1U0JMMlhjN1F4N0tkZk1WU2NXRHl3MnJxWHVNOSs0eHhMQVFoeExDSVFoaXoweWJ1TG1mSHBzc1NKL3Y1RUxyazhRL1FlME1qODJMeDFEQUF1NUpISXZIeFVZdXkrR0dNL1MyMWZaT0xGbWF4ZGYzTEN4M1I4Wmh5ekFCbTVVWFM0Q0lpQUNJakEvQVFsZzg2K0JSaUFDSWlBQ1N5UEFiOE1ObkVWWXJ1aURXeG54ZkRpUWZhc3hNUUx2djhmTWJoYVlMQUxNbmMzc0Iwc0RNdEY0Zk5uZDZQNWVadmFoaWNheEt0MGdsT0s2bHhQSGpybXQ0ajRiUXdBTFdkSmhoY1M5R0xKZ1N0a25vV3l6cGR5Y0VXYmU3YXo1Y05uMGxURUVNUHJ5QmFVblFQK1RJcEI4Z2hZV3NvZTFydDNHV1grMW42RlR1RCtHQkREaU5UNGprdlV5WmErTVhRZkJrZGlYMTI5MXBDeVFZNU5YK3lJZ0FpS3dJQUlTd0JhMEdCcUtDSWlBQ0N5UUFJZEdYS1J3TThLYUk2ZWNZR1lFTGVmZzhUWXp1MXJnWWtRSnNwK2RrdFBCbXRXVkFKYTNvQ0gzUFY5THE3clBTZ3RnM011aCtHZzFQMkw5dmRCbGdEd3ZiM2tzWkYxV092TW1ZdDRQSSs2c1l3bGd2amhneFBmYUxaTEYxaGNJdjBzODZ3cjR6NUpNNGY0WUVzQXl0OFhpcWtzQVc5eVNhRUFpSUFJaU1CNEJDV0Rqc1ZYTElpQUNJckJPQklZRXpJOXhJS01rRms1ZmkxVmM4NzlMQU10ZjRCd1JERXVWdTdyRURmazl6WHRGYVFFTXdlZ05UblJPbWRrdktoZTRBeXNSK3kwQkYrZG1PeUhyc3JreXZJNGxnQkZyRHJIcmhpMlF2ekl6eExHVEE0Qjk0aGt1dXJoUS9yWnhyUzhPNGZPck9pUWtHYnY0WENESDduZnM5aVdBalUxWTdZdUFDSWpBZ2doSUFGdlFZbWdvSWlBQ0lyQUNCTWhZZG45bkZYTDFBdVBGeFFvcmlkQWhzVUEzSzlHRUJMRDhaV0kvUHJteVRueHhnaXNrUWl0dWQ0Z1ZxMVpLQzJEMS9MSEtKRkZBam9WbnpDcnNxbWIyL29DNzgrTmNJb3lwMTJBc0FTd1VCNnpMbGJFNTcydTdySTVYYnNINHNZdkRlSnI3OSt4em1DTGdOc3U1TG92bThSUEFsQUEyQVdSMUlRSWlJQUlpTUM0QkNXRGo4bFhySWlBQ0lyQ3VCQWlZVHpCN01rZmVwT2NrVjlVZHJlZDBvNWRKQUlzaTJsSUJpeHZpSk9YdVB5eVpuaHNJbHA0M2ltbHFqeVdBMWFNbk95dkNOdFpFcWNJMlZtRUlqNGMyTEpXdy9QcElGZTl2QncrV09UTzhqaVdBTWRXbm1SbkpROW9GaTdsSEJyYUlMNjRYYk85VUpRVDVWM2R0SGVqL3NxMjJ2dWhFc1NtU2hrZ0FtK1plVnk4aUlBSWlJQUlqRXBBQU5pSmNOUzBDSWlBQ0cwQ0EzeEZpL1JBbmlLRFp1YVdPRThaQkxqZkdVRzVmUzY4dkFTeHRoWERIUlhqQmFxbHYrYTZaUGJyS3R2ZVpTTnlvdnUyWHZtNXNBYXdlYjU5TXNIWGlDNFF2eEVWZnJMKzVNMitPS1lENVhCbGo4YmxxNnpHU2pXQ1pTREQvVDVuWnFhM25vUy9RL2xUdWord1BDV0NsNzJxMUp3SWlJQUlpTURrQkNXQ1RJMWVISWlBQ0lyQjJCSEI1ZXFXeklPazdPUVFKTW5RZGFXYi8xYmVSRmI5T0FsaDRBWEVEUS9UaTBNLy9MbEdPY2huc21obExTN1JidW8ycEJMRG11TW1XOTh3cU1RVnVmTG1aTnR2elgwTG16VEVGc0tzNFYwWXM0Sm9sSmI3VW4xVjdrSHErRHdBa0VlRzVTSktRM0xaTDdrT2ZBRWJ5Z1oycWJKZy9MZG5aQ0czNXhwK3lSaU1NUjAyS2dBaUlnQWpNUVVBQzJCelUxYWNJaUlBSXJBY0JEcFM0a2oyMjRIUzYzS29LTnIvb3BpU0FkUzhQWXRlRHEyeWkrMWVaQzYrUXVJTHZjOWxIMjZLQjczS3lsTDdBekw2ZjJQN1UxZVlRd09vNVhzN01pTnVGR05aSGVGeEtuTDh4QmJBdWtRcFI5YTN1UDc4Y3NHRnVZR2FmTTdOdFcyMmtaSmtjME8yRkxwVUFWcEttMmhJQkVSQUJFWmlGZ0FTd1diQ3JVeEVRQVJGWWFRSlloanpMQlJRZmF5SllnUjFrWmk5ZkFjdUNVZ3drZ0cwbFNWeXFCNW5aU3pPRUw2dzU5bmF1WkZndDdlUGM4djQ0Y1pFSU5QNTNsZUMyTkl1d09RV3dHaDBNNytmaS9sMG5rU2ZWdnVHWUVqeC9UdXZPTVFVdzVzbkhnRnU3bUdoSFY4a0ZTc1hsOHJrL1B0RTlJek9XWWxCVkNXQ0Q4T2xpRVJBQkVSQ0JKUkNRQUxhRVZkQVlSRUFFUkdENUJEajhFdlQrT1ZXUTY1dG5EaGZMbmY5MHJtWjlMRWplN21JK0xVMlV5TVFRclM0QjdIeEVDQlg3T3F1am5QMkNPeU9DVjUwNXJ3Wk9zSHdzdkhMMjdaZGNYTHU1Ulp0NkRrc1F3QmdMTWNMdTdiSTRwbHJqMVhQNER6TjdpWmtkYkdablJPK0c4aFhHRnNES2o5ak01Lzc0YXpPN3JabjkyeGlkZXRwa0xJaHUyN1grL2l0bm5jbVlsbHg4NDJkZnZzckZYVnZ5K0RVMkVSQUJFUkNCQWdRa2dCV0FxQ1pFUUFSRVlFMEo4QnRCVEJzT1BiaEE1WWdSSUVGRTJNdk1Ubko4c09naEl4cXVaZ1F5enkwRXpIOUtGUXZueEJVSlhKNDd2MDBXd09yZzZ3aXNDSzA1NVRmT0RmZUlRQndsOWk3N21LeWxxZFpnaklIRE1ZTE42OHpzQnpQdXU3a0ZzTnI2NjRDTUxKR2hOVVJZZk43RTkvSXFDbUMrN0k4ZmRkWjQ1K1RjS0tvckFpSWdBaUlnQXB0T1FBTFlwdThBelY4RVJFQUVMa3lBTEc3RVhDSkxYbzZyVTkxU1RKRG9FOU9wT2Nwdm10bmZtdG1IMXl4ejVDWUtZT3kxUFoyd21XdFJSUGJCMTd2a0NleTVsRUxDaHRlYUdWbjNjZ3VKR2c0eHM4TXJOOHNmNVY0OHNQNWNBdGpRK0YreGFjTVVVZkk5WnZiYldPV0JmMTlGQVl5a0Q0aXY3VUppZ3NNRzh0RGxJaUFDSWlBQ0lyQnhCQ1NBYmR5U2E4SWlJQUlpY0NFQ1dIZGN6OHdlN2pLKy9YbFBSc1QzNFREN2FqTkxFU1NHV3BVUU1COGhERUVDUzUxVkw1c2lnQ0dxN0ZIRlNIcHF0WGJFayt0VEVFeWUxdUh1bU5JVzd6NjNjTUpDamx0a3MrMmZtTms3ek93ZnplemJFOFMydXJiTE1uamwxZ1RIQ0lTT3BTYkpBL2JMZEJ2OXRNdlNlVmNYSXpCSDBLd3Q3WGgyakNVdXJwb0E1b3U1OVdQbi9yalVoQTBwOTZEcWlJQUlpSUFJaU1Bc0JDU0F6WUpkbllxQUNJakFyQVJ3Tjd0bWxWbHNGek43b0puZHZuSkxKR0I0MzFKYjRqeS9aMndmeGtOd2JRTGVYNzNISU9yWVFsajJwQWh2dmk3Z1FkYTJ1UW94YW55aXdabFZYS3l6NXhxWWk5MzB4Z0g5WDhuTWRuTUN5VTBHdEVPY3IyY1VDbExQdnJ1anN3amJmc0NZMlA5ZmRudm5VeTZXMEhrRDJ1dTZsR1FBQ0wzdFVrb0FxOWVIaks0M3l4eDdsOFhuRUhFYjk4Z1htdGtYQzF0NDloWEFzRmpkdVhvK0lReE9XWGhHdjdpNjl5N1c2dlI0RjdQcWYzb01obXNSME9yQ1BZQWd6VDlWNGdTNHI0bGZWL3IranZlc0dpSWdBaUlnQWtVSVNBQXJnbEdOaUlBSWlNQ2lDV0JKUUNEd1hWMThKUTY0UXdTdmVyS2xnMXB6Q0VNa0lXaCtIMEZpYU9iSWU1b1pBb3ZLaFFsZ2FVZjhwOVJTeDQ5N2dKbjk5UUJMcjdxL01STWhETjEzYlNZSVltUSsvRkNWRmZDVFp2YTF5c1hURnlDY3Zya1hROWtSYitEY2ZiRUNhNWNqWGFiTTM2VXVqS3ZITTJFblo0bUhPK2dWTTYrbmVvckZKL01qcGh1V29ibkNKKzZSeEF2RTJxK0VoV2RmQWN4M1hROWtzMTl5TDdjdjY0R3MwOXltZ1B0RGQ5LzhkSXJPMUljSWlJQUlpRUI1QWhMQXlqTlZpeUlnQWlJd0Z3R3NMampJN2xBZHZHOXRacmdpRVVTNXRPWEMySEY3U2dnU1pQM2o4SnpqSmlRQnpMOXpVd1N3eTVqWjdjenNvV2EyZTJhdythNmVhN2U0QTgxc2lnTm5IWWovRmU2UVcvSStSaXdpR1FReHhQaFBMVmhkM3N5dzRrS2dKZ1lXR2ZVb3VGVVNkSDlIZHovN3hrSjhxQ2RGQm9wbDRYWGQydHpGL1hPYkFaTmpMcTl4UW5WcU5zZmE3UlFYUjRTM25NSStZSjR2NjJsaEdoTjdZbnQ3blVRaUNXQTVPKy9DZFNXQURlT25xMFZBQkVSZ2RnSVN3R1pmQWcxQUJFUkFCSW9RK0NNencwVnQ3eUt0WGJnUnJGcUllWVFWME1rVFpjTWI2cUpHRnNxN1p4eWFKWURsQzJDSXEzL2o5bDNmMkhIdFhzY1dXRk51a1d1NTRQcGtNUzFoTFVtZjN6T3pPemtYeVhvTWlGTlljUkZ6cTA4aFdjVzdXaGNpZXBQQWdqaG5KUVh3RXE3R3ZIZmUyTXdRTmUvY1k4SXhzU3JVcEN6QXpDU0E5ZGgwalVza2dBM2pwNnRGUUFSRVlIWUNFc0JtWHdJTlFBUkVRQVNLRVFnRlVlL2JDU0lTc2JrK09rR1dOdDhZK3doaENIYTRYdUdDbGxva2dPVUxZTHhIRUN3OXh6MnlxNWM1Qk5hVWZZSEFoNHZnMDN1NDhEWGJaMzY0Z3lKMnRRdXg2NTZZTXBoV0hWOHdkREpySHVPc3ZubzBlNkZMZUFZUWs0dllYQ0ZYelp5KytnaGh2M1N4dUhBdjdWTWtnRWtBNjdOdm10ZElBQnRLVU5lTGdBaUl3TXdFSklETnZBRHFYZ1JFUUFRS0V1Q1ovaW96ZS9MQU5nbm9qWXNUTVl6T0d0aFd5Y3R6WENPeGhrTlV5SW1OSkFITXYxb2h5eHRjSDlrcnQrMngyRXNRV0ZPSGpiQzBaeFhQNnltQlpBVyt0a0w3a1d5V3VGM21sbjBEMXhITS91RGNCaHYxeWJDS3V5S3gxOGJLeWxoM2gvc25mY1Vzd29aWWY5R1hCREFKWUFOdWlkOWZLZ0ZzS0VGZEx3SWlJQUl6RTVBQU52TUNxSHNSRUFFUktFeUErRi9IbWhteGhWSUxzWWMrWEdXR0pHNFcxNTZUZXVGTTlXb2hETkhnT2gxaklGNFVzYWhPbVdsOG05Z3RzYXF3T3Jwa3d1UnhjVVNjd2FYMjV3bjFsMWFGZDZmdG5Odm4vMGtRdzJLdXVIMkVWd1ExWW4vNUxMS0lCY2g2OER4SUxUOHhzLzlyWm9lNitHTjlzZ3ltOXRWVkx5U0V4UmltOU50WEFFdHBlMVhyekpYaGNsVjU4VnZKYjJTSnBBeXJ5a0RqRmdFUkVJR1ZKaUFCYktXWFQ0TVhBUkVRZ1FzUlNMRUM0OUI4WEpXWjcvQXF5UGJIWElEeHFRKzdKWllPSWV4K3prWHo2bzBHSCtmaW9aWG9RMjJrRVdEZmtYVGcyWjdxaUY0RWYyZlBqVzFSbERiaU1yVmkyUzdKL2tneWloTUQzZVc0TG1PWmhZWG5FV1oyWG1RS1QzREI0MzNWZUE0Z2tpRkU0aXE4QkRHeXl6VVM5MUhjVUlkbWFKVUFWbWJQcXhVUkVBRVJFQUVSV0ZrQ0VzQldkdWswY0JFUUFSSHdFbWhiZ1dIWndRSDNJNVdiMGVkWFdQRHlUWmpzbDhSWHd2M3pheTRENGRuYUg1TVR1SndUVkcvdWV2NldXNU1QTEVSY21RSUlRZTEzTnJNSDJmbnVadnM3Z1RZa01HL3IzRWZaeDc3eUc3ZTNFY0JTeGVvck9XdVY3VjJqV0srY1VGbUZ2Y2ZNUHVXQzhjZEV0Q21ZZGZWUlo0MGsrK09wTHJQbzBQaGpFc0RtV2szMUt3SWlJQUlpSUFJTElTQUJiQ0VMb1dHSWdBaUlRRUVDUE5zUkljNTBoOGVoQjhlQ1F4dTFLZHg1K00rdlJ1MUZqWWNJM05RRlh6OTZZZkhqTm5YVmNFMUZNRHZKekZaUkZPWlpSaGJPRWtMZFpTdjNidUtJSVRnMnkvdWRjTHVwZTBUekZnRVJFQUVSRUlHTklTQUJiR09XV2hNVkFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFnYzBrSUFGc005ZGRzeFlCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJDQmpTRWdBV3hqbGxvVEZRRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFSUhOSkNBQmJEUFhYYk1XQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUWdZMGhJQUZzWTVaYUV4VUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkNCelNRZ0FXd3oxMTJ6RmdFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVJR05JU0FCYkdPV1doTVZBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRZ2Mwa0lBRnNNOWRkc3hZQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQ0JqU0VnQVd4amxsb1RGUUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUlITkpDQUJiRFBYWGJNV0FSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFnWTBoSUFGc1k1WmFFeFVCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJDQnpTUWdBV3d6MTEyekZnRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFSUdOSVNBQmJHT1dXaE1WQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUWdjMGtJQUZzTTlkZHN4WUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkNCalNFZ0FXeGpsbG9URlFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVJSE5KQ0FCYkRQWFhiTVdBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRZ1kwaElBRnNZNVphRXhVQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQ0J6U1FnQVd3ejExMnpGZ0VSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUlHTklTQUJiR09XV2hNVmdTSUVMbXRtbCtobzZVd3pPNmRJRDJwRUJFU2dKbkFqTS91Z21mMnJtUjF0WnY5a1p0ODJzLzhTb21JRWVBKzZoWms5cG5xRy9hMlpuVjZzWlRXMGFRUXVhbVk3bXRrcnpPeHNNOXZEek03YU5BaWE3MmdFcm1abVB4dnArWDhsTS91bG1aMDMydWkzTm53VE0vdVJtWjB4VVgvcVJnUkVRQVQrUUVBQ21EYURDSWhBRG9GL01MT0hkMXh3THpQN1VFNURxaXNDSWhBbDhBUXplMTFIclIrWTJUNW05cEZvQzh1cGNFVXpPOUxNcnRFYTBoZXFnOURlWnZiYmlZZUtXTEdibWUxdlp0dTd2aEhBRHBoNEhPcHU5UW44Y1NWUzM4L01YbVJtMTJsTVoxOG5ocTMrRERXRE9RbncwWEcvYWdEUGN5TDl5ODNzZndvT2lHZnpNV2JHUDNrR0htNW0vMUd3L1haVGx6R3pUeml4K0d0bWRwQ1pmV0FCWXRndVp2Yldqbm0vMTh5ZU5pSVBOUzBDSWpBeEFRbGdFd05YZHlLUVFlQlNadmIvQ3Ivb1pIVGZXVlVDMkZDQ3VuN1ZDTnpjaVZCUE1yTVRKeHc4aDU3M205bGRPL3JrdVhBN00vdktoT01aMnRYL05yTVRxZ1BHMVZzTllkV0dFSVhGekZUbHRtYjJqbzZ4WUFHeHM1bDlZNnFCcUorVkozQWZNK04zOGRJZE05RitXdm5sblgwQzF6U3pkMWFDMFMzZFNQN2J6QjdnUGlhVUd0emZ1QThCZFh1L01iUG5tdG1oSTMyWVlDN0htdG5GV2hQZzk1VVByTjhxTmJITWR1NXBaa2QxWFBPUFp2YUl6TFpVWFFSRVlNRUVKSUF0ZUhFMHRJMGx3SDI1cDVrZDRsNUNTbi90R3dKV0F0Z1FlcnAybFFnZ1FMMmdFbWF3NHFBZ2l0eHhRaGM1M0I4L2EyYTRIYmNMWDgvdk8vSlgrdEpydFNRQkRGY2lMQjZ1MnpISnQxUnVSbzgxczkrVkJxRDIxcElBZStnNE0yTi9kNVgzbU5sRFIzSmJXMHVnbXRUdkNkVHZnWWhRV0JnMnk2L2RoNUVTSDJSQ3owS3N3QjVtWnU4cnZDYXZyYXk5bnRqUjVqZmRCNGlmRis0dnRUa0pZS21rVkU4RVZweUFCTEFWWDBBTmYrMEk4S0x6VWpON2VtTm1mSjFiaWdnbUFXenR0cHdtMUVFQXF5L2NRSnJ1VEZSN3MzTTluQ0lHbDgvOWtYRTh1SExiZTllS3JkeVNCRERRY2JCN2V3ZkRjODBNVnhqRXg2bUxqOUhRY1RSZDFIMkh2S0Y5VEhIOUQ4MXNweXBlMjArbjZDeWpEd1RUZ3ozMWNWVWpGbGhwRVNGamVLcTZvZ1J3cXoyaStoQnpFWTlZZEdjek8yM0EzRGdEOHBIbjJaNDJFS1NHOXRGdW1saGpXSC9WYnVmTnZ6Ky8rais0ZWM1VnhoTEFlSy9IY20rcStHcHo4Vk8vSXJBeUJDU0FyY3hTYWFBYlFHQmJkOERldldPdVdLRzhjZ0h1a0VzV3dEaUVQSE1EOWtucUZCVzNJcFhVMW5vN3VCZjB5M3N1bjBLUS9sTXorN0NaM2I1akRNVC91cldaL2JqZjlHYTdhbWtDV0lneDdIRXpHak1PVHRkQ1NBQUxiOCtsQ21DaHZjU01wclllbmUwbVY4ZEZDWEJHZTVXWlBkblQ2dEFQTXFIZk9nUWJySXk3WEFLSFRQSkI3dU5TdXcxRWJkejZUK25SK0ZYZFIyS3NMWWNJeldNSVlGaVNJMklpL08xVi9hNmMxR04rdWtRRVJLQXdBUWxnaFlHcU9SSG9TUUR4NjZNdUtHaFhFN3lNOEJMMCtwbEZzQ1VMWU8wNEZqMlhZbTB1VTl5Sy9rc1pzdWdnL2hhdWtGL3MzM3owU2wrTUZDN2tHWUQ3U01rZ3lORUJGYWl3TkFHTUtXSGQ4UEVPQzR1NXJIWWtnSzJtQUJiYVMvV01sR0Nod0VOazVDYjR5SWkxM3B3RjkwWmNac244U3lGZ1BNbEQ3dVFaVk44UE1tT0xhMTNERGNXMTdQTzdSbnY4RnBKOEFpdXJvYTZoWXdoZ2JVdGpBdjQvcXdxcVQ1dzFGUkVRZ1prSVNBQ2JDYnk2RllFT0FyamQ4QVdySytZUDFSSEJIdUsrSnMxMStKVUF0anBiVndKWS83WGlaWm9ZZkh5eDdTcmZjZUlKMWxoakZOeEEvcjZqWWR6ekNOSisvQmlkanR6bUVnV3crdXM4UWZqYkJZR1RCQVJuamN5bDJid0VzREJzbndVWUZsaC9OdUU2ZFhYRk0rUFZ6bXFtNis4RXhNZWk1cnN6ai9QZkowNDRNZk4wczdyM3ZkOWtOVEt3Y2xlQ2s1dTZtSVZkNzRaOVA4ajhsWXRkZDhtTzhYN1BDVzZuRHB4TCszTGZoNTArdjJ0L1lXYnY3bkNsSEdKdFdWb0E4OFVIUlB6QzdaVDRibE5iR1JkZVVqVW5BcXRKUUFMWWFxNmJScjIrQkVJeEg1ajFHQm1BY21oS0FNdWhOVzlkQ1dERCtGK2pjalg4cEpsdDUybG1yT0RXMjVqWjBaVUw1TTA2K2wzRjRQZjFOSllvZ0RFMk1rSitxaU1qR1I4WnlQQlgyZ1VvdENzbGdQVVR3R1Q5bS82c2t5V2FuOVZTQlRCRzdJdFp5Tjl5UlIvRTJzT3E2KzdmZ1lMbkhqRW1FWmRLRnM2YnIzTXhOTnZ0OXZrdERWbHA5M1VOTFNtQXhUNmlFV09TL3FiOHdGSnlQZFdXQ0t3MEFRbGdLNzE4R3Z3YUV1Q2UzTS9NRGdqTWpRRGN4RkdJeFRvWTQ2czQyWHU2WEFSSUVZMVlVTHJ3ZFF5ejlwU2lROUJXU2hMQVVuWk51RTVNa083cmZoTHE5VzdPSGJycjkza1ZnOS9YY3kwaGdPMW9abVF0SzFuK3FQb0t6enJlcE5Ib2p5cUxvbGVNRUdlTmcrckpnY0g3R0JIUDcwa0prLzQvbFN2UWkxdjF1aXhLRXBwYXFTcDY5cWN2bHdRd1A2c2xDMkFJS3JnSlBzb3ovQnpSeCtmNlRkTnZNN05IajVDMTlGb3VzY2hWV3VOSGNMdUhjMFZQMzhYbnV6eUdlUFQ1YlM0cGdJVUV5Nkd1bWptY1ZGY0VSS0NEZ0FRd2JRc1JXQjZCRkJHTUg5QmR6ZXdMZ2VHdnc2RWdSOFJaaC9tVzNJMDU3RXIydTA1dElZN3cxWnF2elYwbDVINHlsalhQWEh5SENpa2xCTEFsSEZDSDhJK0pEejVHS2ZjeWU1WE1vSWkyemZMbDZuZmlMbFVNeVRPSERIemgxK3Jabjc1QXNUMlkzdEw2MVZ6Qzh5WDBuQTFaSmFkNkI0UVNOb3psK3NoTzhibjFEN0ZxSnZnOUgxNjdNa3IyRVpsS0NXQSsxOGY2anVranpxM2YzYVlaaWNDTUJDU0F6UWhmWFl0QWdFRHM2eGFYeG43ZzErRlFrSEx3YTc1VTdOL0JkS21adzByY0FLR1gyUngySmNheXJtMWMwY1ZmSVdOV1YvR2xpcGNBdHBXV0JEQ3ptUGd3UkFBamEray9WVEVpYjlqYXBBaTRLZFpqcTN6L3JzTnYzVlQ4WTN0d3FuRXNzWis5T3hJUi9YOW1ScnlzWnNGcTZZT1ZPOTh2RWlmUjFRYVhJdDYwNDJ4aDlVN21SMS84clpCVmNrcHNTcDlsMGxpdWo4eVRESWpIZGdoVkpaS04rRnpZNlRlRlIzTUpTd2hnb2JpUzlEVlhodUhFcmFwcUl1MlFYdmNBQUNBQVNVUkJWTEFaQkNTQWJjWTZhNWFyU1NDVy9hZitnY2Q4dkN0MTlEb2NDbkpFSE45OEpZQ3Q1djVmMHFoREw5bU1zOHY5UkFLWUJMRDJIbzZKRDBNRXNOdVkyV2VxakdoWWdqWEx2U2VPWXpiSGZic092M1ZUY1l2dHdhbkdzU3I5ZE8ydFhHdFkzLzY4VnlXdWZTZ1RSTWdxR2RkdFFsU2M2R2t6WkRFMWx1c2pRM21DczZSdUQrc25MaGc4aVJseXltK2RvSVpZR1BPWXlIRU5IU3FBeGNhU0s4amxNRkZkRVJDQkRBSVN3REpncWFvSXpFQWdGb2k3RnNHSTZkRE9TTGNPaHdJSllPRk5Kd3V3YVc1S2ZpdGY0RjdXdTNycytub3VBVXdDMkpRQ1dOZnpudCtFVzQ4UXkyeWF1eTY5bHpIaVhhYjN2bG8xbFFVeWI3MldKb0F4K3E3M1F0NlZubWhtWkJqc0txSGZzREZkSDMzV1gzbXJzTFYyKzZObTdHUHg0OHpzalFrZERoWEFpRkY1akpsMVpkWk1kVkZOR0thcWlJQUlEQ1VnQVd3b1FWMHZBdU1UdUlXWkVTZWhLd1YyM2Z1blhleVhaa1laQ1dEbjA1RUYyUGg3ZEJONnVGemxIdk14TTd1NVo3Sy9yTDVLNyt3eWNsRkZBbGg1QWV5Vm5pUWNxN0wvWGhJNWlQVzFBTHU0bVIzcGdrazNXZkR2U0pqeXV3Z2dFZ0E4ZmtFUXNaVEFkZk9jR2NhRW1QWklNenVoeXRMMmxSR0NnYWRNNmZyVklmcGxadlpkTTN1Nm1TR3dxOHhEWUlrQ0dDUWVhR2FIVi9zRFFmT2gxZS9TUnlMNzVLWk9uR20vUjQ3cCtzZzRmZFpmUTFhejY1MHU5SjRjQ3hkU2oyV0lBQmI3V1AxTU15TkVoKzdsSVN1dmEwV2dFQUVKWUlWQXFoa1JHSmxBTEJzZGgyOWNYWnBCOGNmNEtyNktXU0FsZ0kyOE9UZW8rWmdySkRGZGRqZXpzNTFnamJ2UnRnbDhpUG0zbTVrUng2bGRmdWF5UXA2WDBNNllWWHl4YVhpUFlJNFhpM1JPTExXUG10bWZ0K29oTk94WlpiL0ZyY1ZYenEzaVdQMHE4L0FBVTc2Nmo4bnRVbWFHTzFTcFEwMWZBZXphWnZiNVNseTdjZ3NneVJ2ZWxMQXBmQWUvaEV0SHFVSXNNKzRIN3FPcEMvY3ZXVGZaMTJSY0p0c3lZaHh1WmZ6L01RdngyMTVkclNVVzNaUlFrbzB4eDZHMkx5Q3dWQUdNNXhzeHk0Z3BkVnBrd2FoN1dQVng1djRkOVhKY0JIUDNCUmw3c1lnaUtIeko0bnVuUXl3KzBOUFJaeXRCbStkYzh5Tnh1MnBmQVN3V3M3ZnJBM1ZKSG1wTEJFUWdrNEFFc0V4Z3FpNENNeEVJeFJiNGhwbmR4eE1IclBSd2ZWbVMrc1N5S0QwMnhRRGJTalRIZmJUMFdxeHJlOXlIQkNoK2NzY0VjVDFKK1JMZnhlWkdMa1Y4bDVVbmJpMEhMUmhveUEyMzFMQnpCQkhXYUJkMzRPTXc5UEtDQWxWelBoenFDT3lNbGRBenpPeGJCU2JiVndCajM3MmoxVCtDSVhIQlRrNFkxN29MWUYyV2c3aUg4bUhwOUFZZlhLbXd0c2FWcVYwUVV4SEcrQWhVVWd4anYySzlndkMxVTBlL3ZxRFpCR1kvcnNQZFNzLzloQTJmVVdXcEFsakdGUDVnTGRZKzg0MFpreW9XTmlCbi9PMjZQZ0VzNWdyNW1rb0FlMnJnOTZDUEFLYTRYME5XVXRlS3dFd0VKSUROQkY3ZGlrQVBBbDFmbWZnNi9TaG5IZEdqeWV4TEpJQmxJeHYxQXNVQUd4VnZaK05kV1NINXdydFh3cGQ0MzJoOUtlSi9iR1pZblgxLytta205N2drQWV6U3pzMkVtQytVc2VLdThDdyt4SzE1RFlvWU04U0orMmt5dVF0WDdDT0E4UjczMXRaWWFEbEhORngzQWF6cmQ2dnJFSTI3S0c1bHNZSWxHQlkxclBtWGUxb1pYclJ5czd4YmxiVGdSV2FHQzZxditETGxTUUNMclZLWnYwOHBnR0ZSK2hZenUxV1pvZitoRlN4RGVXYTFDL3NZQytPY2dnajh0SVFMeUpyTUI0SXVxK2FFeTROVlFsYjlzVGhjOXcwa0Jla2pnR0d0K2ZIcTJYK1JqaEdQOWZzemxKK3VGNEdOSnlBQmJPTzNnQUNzR0lIbUY2N25WeTgxTDU3QUxhT0pTQUxZc2phTUJMQjUxZ09MeC9lN2crKytadmI2bm9kZ1JoOEtFaHo3WWozUDdMZjJ1aFFCN1BabTl2YnFBSW5iVGJPa3huL0pZVm5IMzJtL1EzR2dSTkRBbXNjWGpEclVUeDhCakFNbVloZnVjODNDN3dQQ2FrcVJBR2FHSVBXa3l1MlMrN250cGh0aWlHc3dWbGM4QTA1S2VBNGdjaEJqN0ZuVk5WZUlMQTU3Q0lzVlJEbjZhUllKWUNrN2UzaWRLUVd3S1o2bFE0bWtXQmlTcVJKeEdCZk5kbm1YYzNtUHhTWHNPODZRNVJuM0UyTkN4T3NxdVFJWWJ2KzhFeU9jZHhYMnpsZ1d5SDM1NkRvUkVBRVg0MEFnUkVBRVZvc0FxYXh2VUxtM2ZHb2sxNTRRRFFsZ3k5b3JFc0RtV1ErK3B1L240cTk4ZmVBUWZGWW5DRGRZZi8xYnBIM2NKaS9SVVljRE0yMk1YYVk0dEtWWU00V0NJS2ZFZjBubGRNMXFYYkQ0SSs1V1Z4a1M3NldQQUlhYjQyY3E0WTFEWjEwNFhONmhjZ1g5WE9La2ZBZS9zVjNiZlhzblpiMFRwL2I3YXFrV1lIV2JpTklQYzliVkJLUlBMZHh2V09NUk13d1h5MlpzT05vaEVEYnRkbG1MTlB2Z29QNXNNenUwUS9pcTYwa0FTMTJWWWZVa2dHM2xseUtBK2F5aWlHbDNPK2MyUG14VndsZDNXV25Ic21UU1lxNEF4alc4Q3lCU3Y3UjFYNy9OekI0OThRZnFNWm1xYlJGWUt3S3lBRnVyNWRSa1JHQjBBaExBUmtlYzFZRUVzQ3hjaTZzY2lqbVUrcVhjZDArbUhGUktBRm1LQU1aY1FzbENTZ1I3N25KOWJESWNHbE9uandEVzVUNkxKUklXY1NSSFNTa1N3UHlVeVA1S2pFMnkyWVZjRmRzdGtNSHg0TXJpNUVmT3FzeVhQYlo1M1MrcXpKY2t6dWl5K0dxM0x3RXNaV2NQcnlNQkxFOEFDMlZMeGpyMnVSTjl1SzJ0dEFrZmdCREZSNEpZc3BJK0FsaE5oL3ViKy9ZNlZTelFvYjhEdzNldFdoQUJFUWdTa0FDbURTSUNJcEJEUUFKWURxM3g2MG9BRzUveG1EMFFBNGpNaU8zZlltS0g4RGV5U3NiSzNBSVlsa2RZSWNWaXZXeFRCZXgrbWN1TzJad1R3ZU01R0owVG1DaENEdFpNTWJlWlVKSUNtaC9xa3VKemZhVHRFcTZXdVFLWTcvN0hBZ2wzdnRRaUFTeU5GSUkxck1nMmx5T0d4VnBITE1QaTY4Z01peEVKWURHcVpmNHVBU3hkQUFzRmhEK2xTdHB3UnljSWwxbVpjQ3QxWnVXakl4bUdtNjBNRWNCb0IvZG1CT3dQdXRpQVU4eFRmWWlBQ1BRZ0lBR3NCelJkSWdJYlRHRGRCVERpd1BBRmszL09WUkEveU9CR1BLRllrUUFXSTdUY3YrTzJTQnl4dTNZTWtVeDBCT3R0eC8zcG1zM2NBbGdxWVorNFU5cmRMWlFKREJjY0RtRmZUQjEwbzE3STliRlVzT05jQWF3cmV5aFdEdmR3Z1psVHB5a0JMSlhVQmZYNG5kakR1VC9sdUVrMmV6ckJpV25zeC9NeWh5QUJMQk5ZeitwVENtQWxndUQ3QXQ2ZldWa2ludDJUUWZPeVVCRDhtMVl1anNkMGZPVGdlaEtURUJkc3lXV29BTGJrdVdsc0lpQUNEUUlTd0xRZFJHQzlDSFM5ckszNkRGUGpSdmptSHNvWTFHYmpPNEJPeVRCMXZveEpBdGlVSzFPMnIxRDJxQWViR1M2UUtVVUMySVVwaGVLQjlYRlB3WnFBckgvMzl5eklVTXV5dXRsY0Fld3hIWWRLWWsvZHVvcGZSUWJSMUNJQkxKWFUxbm9JRm9pTkpLUFpMck9KT3BNa1FiSlBUbkRQYWpjdkFTd1RlTS9xWTc1VGpSRmpiNjZQbEtFUEQxZ3k3MTVJZ0dzdkl4OG1pTUhWRlFjemQ4bHBpOS9sZGprMTBSbzdwVDgrZW4wc3BhTHFpSUFJakVkQUF0aDRiTld5Q014QllNeVh0VG5tUTUrcGdwQUVzSzByTkZVTXFMbjJ4U3IzR3hKVXNBYkJLdXlzeEFsS0FPc0c5VmdYZzZucnIxZ2lQREhCcGJLK050UldpZGhpZFQ4NUF0akZuY3NjQWt5ekVIejVyek1GRlFsZ2lUZWJtY0Y5WjdkL2NGT09CYlJQYVpuWVh3ZFdHVXpmVXJWN1Jzb0ZaaVlCTEJIVXdHcGp2bE90a3dDR3l6VlppOXZsM01wOWZSY3pJeEhKR01WM0g0elJWNGsyY1pFOG9FUkRha01FUktBL0FRbGcvZG5wU2hGWUlvRXhYOWJtbWkrV0REdFZxZU5QaXd4QUF0aFdRQkxBNXRxeDhYN0o3a2dXVjlLb3QwdXVxNGdFc0c3ZVdBUWNVY1ZpMmEzMTV5KzVUSHpmamkvVDcydUUzSHB3QjNwa2hsZ1o2ekpIQUNNTDVlY3JDekJjbnBvbHgzcXd2azRDV0hobEVMMFFwUi92RHZNNW9oZmkxaFZpQzkvNE8vdnpoYzZGTmVRR0x3RXNBK3FBcW1PK1U2MlRBSGJkeXIzOE9EUGpHZFlzaUdKWWFNVUMwUGRkSWdsZ2ZjbnBPaEhZWUFJU3dEWjQ4VFgxdFNRdzVzdmFYTUJTWFJnbGdHMWRJUWxnYyszWWNMOGg2Njl2T3V1U24yY01YUUtZSDlZT0ZjOWpYWUIreEFRQ2pSTWdQaVcyR3EyRzNIbys3YkpPcGxycXBTeHBqZ0QyVURON1I2dlJuem4zeCsrbGROYW80eFBBSGxIUTlhZHJTTGdRdnQxOTRHait2WFJjdUs1N0pQYTdjaVVubm1MOWQ3Tk1ubTJMTHVhSit5ejdqeXh4S1lXNGNxd3YxaUpkTHBJU3dGSW9EcTh6NWp2Vk9nbGdrSDZZdTU5cjZ2eWVFUkQrSWNPWDRROHR0R09RU1FBckNGZE5pY0NtRUpBQXRpa3JyWGt1alFCZmxNbUsxcWRnVWs2UTlLNHZhbU8rclBVWmE0bHJZZ2VWdWc4SllGdHBTd0Fyc2Z2S3R4R3kvc0l0NzZETUxpV0FoWUdSc1EveEFiZkFrekxZOG42RXU4cExPcTdwRTBjc3BldFVBWXpNbXdoSEQybzFTaFpCL2wwc1cyWjdMRDRCTEdYTVk5U1pRd0FqOGNuMXpHd3ZkNUQvODh5SklWaHhPTWZpeFJmVW5qMUZyREFzeVI2ZEViY0lRZTBwMWZqZTJSaVRCTERNQmVwWmZjeDNxblVUd0pwV3Q5d1BKSEs1UWVVMnZIOVA5bDJYdGQ5ckpJQVZoS3VtUkdCVENFZ0EyNVNWMWp5WFJtRElnU04wT0xpN2UrbFkybnhUeGxPbnJiNThxM0xxWVdoTUFlelhWU3l5WjVnWm1aUktGUVRRbDNWa1RFcU5lY1k0RkFSLytHcmMyQVU0djJ5UHByNVFwWFhmT3lQTnVzOHRqNjc3cG9sZlp3RU1vZWMyem9LcngvTDgvaExhb09TS1FtVDJlMEZIakNjK1BMelV6TDdhZDBDVk85M3huaUQxcVFMWXRWeE1uYXUweG9BRkJzSDZjOHVRMzZQY3ZsTHFwejd6VTlxaVRzd0NERGRTTXEvK1JXcURqWHE0TEJMSS9xTVp6d0V1NS9lT0dHTFBNYk9iUi9wRlRLQXV3Y1RySWdHc3gyTDF1S1RydllKbkNkWjgzMDFzRHlHb3l3cHEzUVF3Y096b01rSHlITnJIeko0Mmt3REdQZk5UTStPZmM1UnRxK2NDbHAvdG9oaGdjNnlHK2hTQkZnRUpZTm9TSWpBUGdTRUhqbEtIZy91WUdUL1NoMmU0QkkxSnkzZjRTNTN2bUFKWXFoVmFEaC9mZkNXQTVWQWNYbmZJRitUVXZWbVBra01zQitXdTM5N25WNVdlMTJNNjZ5eUFoUVRlSHFnV2M0bnY0SnNxZ0dIbHhYTzdXYkFLUml6RVhTNjNEUGs5eXUwcnBYN3VmUlZyTXlhQWNYMG9LMnU3L1c5VjdyR3ZjaFpmcVVIclEyTzhtclB3SXY1ZlZ6WTd4RGxFbEticnJnU3cyS3FYK1h2WGUwWE9ielNqOEwyYnJLTUF4bS9iRTh6c0tETWpJMjFwQzdwVUM3RFN6NURjM2VTYnR3U3dYSktxTHdJakVKQUFOZ0pVTlNrQ0NRU0dIRGhLL0xBM0E1Yit4Z1VwN1N1RVllSk9ySjEyOFZrNStQQmN0ZnJLZllLWnRhMGFpTFZ6NzRTdjZ4TEF0cEtWQzJUQ2pSaklwcFp5ZGM2OUdCSnpTUFNBYStUM1V6cHQxWkVBMWdQYXpKY01FY0I4N28rMXl4RUh6OXd5NVBjb3Q2K1Uram4zVlVwN0tRSVlYSWtQUjh5dnJvTG9SY1pQNG5MbHhPaExHVjlkcDhzcURJdERNbjErdk5XUUJMQWNzdjNyU2dEcno0NHJKWUJ0NVNjQmJOaCswdFVpVUlTQUJMQWlHTldJQ0dRVEdITGdHSG80OEFYaEpzNElQODY1UWxpcHI1dERYK2dsZ0czZGhoTEEwbTdMcVN6QTJnR0NtNk43VWVXcThkeWVtYklrZ0tXdDg1SnFEUkhBZUcvYnp3VkhiOCtKb05OWU1zVXk1cmF2OC8wZTRYSjM2b2pnaHJxOXB3NHRSUUNqcld0V1FqUWZYTWl3U2ZtYWk4bjM0UkZGTDk4Y2Fxc3dQbGFSOE9Cc0NXQ3B5MTIwM2lvSllJaTQ3M0xKT2RvUXhyQTJTd0hkRlphRHJLaDgxR3lmUWI5aVp2OGNhWlQ0ZW05cDFQSDlmZzk5VDA2Wlc2aU9MTUNHRXRUMUlqQWlBUWxnSThKVjB5SVFJRENuQUJZNmlETmtoTEFubTlrUlZYeVM4eEpXMGZkRG54dVBCdmVkenpSaTl0UmRwd281RXNDMkxsWXF0NFFsWHVzcVV3aGdWM1J4VWJvc0pZbFRjanNYQTZ3UGFBbGdmYWpOZTgwUUFZeVJoektKdnRITVNLYVFFL1BNOTNzMDlxSFpaeFZaK3ZDYUtvREJGbXNyWXZjY1hWbEdsOHp3V1hySERmMWdWSG84NjlyZUtnbGdJU3Zqc2UvbG5QWDM3ZDArMWxFU3dITElxNjRJaU1EdkNVZ0EwMFlRZ1hrSTNNUmxnZ3Ixemt2NEhsVVdzb3UxS2cwNUhGemF4UzNCU2lCV0NQQktCalcrZm9lRXNGSmZ1bnlITUxLd1BTczIySUNwZlU3OExsOE1ucHcyRW9iNit5cUtBWlpLYXR4NlV3aGdJY0Y3YUxCZUFuZ2ppTFRMZjFYdVhEOHJpSzZkZmo2MzZUNHgvbmdHOHJYL1ZybWRMYncrR1NrLzFUSEcxQmhnWE5xMlZxcWI2d3FZSHNQaCt6MTZnN09DaWwzZjkrOWtRMGFzSXpOaXM1QmxFM2ZFYy9vMjNMcXVTd0Q3aVJPN1RpL1V4OVRORUxELy9SMHh3L1Robyt4S3JJTUFSdXk0MjVzWkNSdVdVSllxZ1BsK3AvdThjNWQ2TDE3Q2Vta01JckIyQkNTQXJkMlNha0pyUktEUGdURmwrcVI3djZPWkhXeG0xMG00QURjUUxNSSs2M0hSS3ZWRC94Z3p3M3FoWFZLL0Nzb0NiQ3M1SFlRU05uZGlsYUZmbVlkWWZDWU9jZlJxUS9mVFdNK3owU2MrWVFjNUFoakRlcUJ6V1crL3kvVTVzRTA0emNtNzhsbEpUajZRQ1RvY2VwOU9NTVNWNm1JZEJMRGNvUDFqTDVBRXNMRUpxMzBSRUlFZ0FRbGcyaUFpc0Z3Q1l4OFlFY0llWUdhdk1UTmlNc1FLOFdDZVVsMXpVcXRpS1FGc2FEc1N3Sll2Z0xIbnJ1ZVNKcEI4Z1hnZVMzWXpxb2xLQURNYmVyRE9lWjVoMFhhTHlpMFVOMnF5N1gwNzluREsrUHR6ek95bWxZdmdzMTNHUklLTUw2WGtDbUJrRE1SVmZiZU9DZXpwQXJZdlpXNXpqa01DMkp6MHUvdm1IdjlMWjhuNFM1Y0FwNVRGWDhuWlNnQXJTZlA4dGlTQWxXZXFGa1ZBQkRJSVNBRExnS1dxSWpBeGdad0Q0NUNoY1lqQ0RZVkEzRjJ1Vk8yMlgxaTVUeisvNFJZNVZMaXEyMyt0RzBlN3YvdVoyZnNTSmlnQmJOa0NHQzRZdUxPMXJRNFBkQUhnY2ROWWFwRUFOcjRBOXA5TzlPSlp0THQ3RnBXMlhMaVdzMlN0TTgzaTV2MkNTcEI5VCtWQ3ZZVDlseXVBY2IrUVBSUjN5cmFyUE81T0JLQStZNmszMVlUamtnQTJJZXhJVjV3NytQQjJpSmtSa3FFdXVHenZXMzJNZTMxaTdOR3BaclJLQXRqbHpRenJ6eHUyNEpSK2pnNWx2Mm9DV0orUFA2WGVpNGV5MXZVaUlBSWRCQ1NBYVZ1SXdISUpsQkxBdU04dmt2QlN5Y3ZvaTgzc0NRRWs1NXJaTHU0UVdWZnovZEFUUCt5VkdYaDloNVRVNEswU3dKWXJnT0VDZUdSQVlIMXpsWHhobnlyV0c0ZWdKUllKWU9NSllNVFgrN3FMeDhSenFsbEtIdHg0RGlKMllmblZMcjkxb2h1QnorY3NmUVF3TXIrOTNjd2UxREh3Qjd1c2NNMC9oUUpsenpuM1dOK3BydkJkN1VnQWk5R2Q3dTlZa1dQVjZTdjhqcis4WjBiY01XWXhoUURtdSsvSG1FL0pObFBmemRwOVNnQXJ1UXBxU3dSRUlKdUFCTEJzWkxwQUJDWWpVRW9BZTZ5WnZkUloyUnlhWU9uQTE4TzNtZG5OTzJhS3UrUlRXeStuUHVHcDc4c1IzVjdXQmZlOVhCVi83RXd6KzNFQ2RRbGdXeUgxK1dxWmdEbTd5bVhNN0JObXRtUGdTdHpReUw3MjhleldwN2xncUFDR2FQeldrWWE2NmtId1ExaklaSGlIU25UL1hBRjIxNjFpSHg3bmtrKzBtMXRLekt3K0FoaHp1YVdaSGR0aEJjWjlkOS9XTTM4VEJUQSt4SkJRWnV5eXJjc2cyZFVQdjJObkZ4d0FDUVM2UWhjczVibmZOZFcyQldaWG5WODdxOFovSzhocVNGTVN3UHowK3I3alNRQWJzaU4xclFpSXdHQUNFc0FHSTFRRElqQWFnUklDMkE3dVlJUnBQSVc0UzFoQXhJU3dPajRZUWVsck40VnZ1T0Q1N2F4Wll3aGdmYUJLQU50S2JTa0hvZHRVR2FnK1U3bllZcWtTS3JoSFByTFB3azl3elZBQmJNd2grcXhibHJMK3ZHZGN3OFh6SXY1VzIxVXZ4cWJ2SWF2WkxtUEE2b1JrSHUzU1pkVWFHOU5ZZis4cmdPSEdUa2JBdTdZR3h0eDJydjc5OFkxL3Y0a0MyRmpyMVd3M0pQVC8xTXh1VjkwRHB4UWNpTytadEpUN3ZtdXFEMDJNUzVkclBWNFE2NFdhNm5xdndGMGFZUm5MMVpUeWVJL2xhZjFza3dYWStSVDdXSG1XL0czMkphdnBjMC9KQlRMbHpsQWRFWmlKZ0FTd21jQ3JXeEZJSURCVUFBc0ZTRVlJdzVMcjhJaEZXTzBXU1liR1hjMk1RUGp0SWdFc1lURTdxdmpXTjhmdEszU1k3ZlBTMW04bTRhdFNNeUIrMnN6dWJXYTRveTJ0bEh6SkxqMjNKUXBnV0tjZ2ZHSjFRNlpDTERyN2xoS0hZZC82TWFZdXE5YStZeDE2WFY4QmpINTlXWFNKMS9pOHhzQWtnQTFkcGU3cjcxYkZzUHRvRlIrejY3MjZ2UVlsUnJDS0FwanZYYUhOWTBrZlExTEgzR2ROSllCdHBTWUJyTTh1MGpVaUlBTFpCQ1NBWlNQVEJTSXdHWUdoQWhpdWp3ZEhSdnNMWnhWQkpySHpBblczTWJOL3I3NWk0cExVTHI3ZzlTVXNOM0pneXdKc0s2MmxDR0M0L3hGYktmWjdzNVR4ZHUwNUNXRGhPN0cyOHNJQ0NTdSttK1hjdUo2NnVFSzkyOFVESWxoOTMwSmlqOFBNN1A0ZERYelR6TzVjamZtMHZvMFh2bTZJQUhZRDV5cUtHMTZ6dE4wN2ZRSVk4ZmQrVm5nK2ZackRVaFFPN2RMbmNOeW4vejdYaFBZWVZsOTNOTE1mOVdrNGNNMDEzVWNzUG5RMUM1bDFFWkNXV0h3aTdaTFhXZ0tZZnlmMWZjZVRDK1FTNzA2TlNRUTJpRURzUUxKQktEUlZFVmdjZ2FFQzJQWE43R1ZteGt0S3JIREFmRnpscG5GTVFyRDhkbHREZzlmSHhwYjZkd2xnVzBrdFJWQzZrblBEM1Q2eWtGMEJ1MVBYZnV4NkVzRDhoQkVtY0t1K1ZJRkZRUFRpZWZJbU0vdDJqMmRSMXhCNC91RWUyQTZ3VDl3NTlod2kyMUxLRUFITUoyd2hhdDNhekw3bkp1bXJGM3RlOEw1NFJUUERCUjUydWFVV3RoQWJROWY3R0N4WkFQUEZZSU1SV1UwUHlvVzFwdlZ2NUJMb2hDeEN1OXgyNThReGhRREdmVVdTR0Z6Rmg1UlFERHJheFJXMzZ5Tm0zejcvMm1XZ3JhOVBqYlhuaTErSDlmZXZFZ2J6aFVwUTN0dFppNWY4YlpZTFpBSjhWUkdCZFNBZ0FXd2RWbEZ6V0ZjQ1F3VXd1SENQMzlqRi9Pb0thdDltOXlVejI2dEtVMzVTQnRRdUFheGs4T3JVb1VnQTIwb3FkcUJONVZxaVhzd2FFZmZIKzFVV0RXZVY2R3lFTmtxK1pKY2UzdHd1a01RVDVERFN0MkI1Ukt4QlJJTHZ0TVFSRHNvSUgyMnJwdFMraUdWSWNnVVNCYlFMWXRzSHpZd0Q5NVNGT2I2dW10YzVIWjBPRWNCb3Jzc2F0LzBzN2lPQVhkVzFqWnNmVm42ZjdRRU1rWWo3bklRR1pBTDAvY2FzbWdBV3lzTHBpNXZaQTk5YVhCS0t4VmRQY0drWmdhY1F3RW90N2pOZEp1K3U5aENXY0VzL3VWUm5IZTFNbFcyMWFkVmE4cmRaQXRpSW0wTk5pOENTQ0VnQVc5SnFhQ3dpc0pWQUNRR3NicEY3bld4cWg1alpkUkpBdjZjS21QKzBCTmNnckQ0NFJONnAxV1pPSEt1RTRTUlZrUUMyRmRPU0JEQ0VpQ2RVQ1JYNFF0eTJ4T0ZRL0xDRnVGLzVObHJKbCt5a3paeFJhVzRCYk9nQk1aU0JjVldEUTRlV3I4OThVKzlsbjRzWjR2TDczS0J5QkREYzY3QmdlbEYxc01iTmo5TEhiWlRmSDBTL2ZScGd5RFJNVW9TMisrbXFDV0NoK0hKN0pnWjl6N2pkVjc0cWUrckZ6bjJ6UFJuMkJMOFRTNG9ET2ZUNUZscXd2aTZFWFcxeWo3MmpzcHg5U0tERHNhMFJWMTBBOHowL2VYWTlLZlBPVXhEOFRHQ3FMZ0pURXBBQU5pVnQ5U1VDZVFSS0NtQjF6MTNaSFgyaitxWExJTVpYYkYveEhhWWtnTVhYZWxPQzREZEpYTTFaNUhCb3hCM2pLRFA3V2lGWHR6angvalVrZ1BuWjdlN2NkMkowc2JUcXlnRFpSeENLOWJYa3YvZVpiNm9BZG5jWGlMMDkvNmI3WUk0QVJnS0NBenRnNWxycCtGemZFRHFJajNWaW80OVNBaGpXZyszNFdLWDNCYituSkZIZ0htZ1hyS25KZW5oMjZVNHoyaU51NTV6OSs0YksyV083NnRsL24wcTB1YTdManZtQkRndlFqS21PVnJWTHlNaDl2NWtpVVJCeFdvbTFHWXEvK0FtWHZaSXNsbU9VVlJmQVNvcFdKZHNhWTYzVXBnaHNOQUVKWUJ1OS9Kcjh3Z21NSVlEVlU2NnpPL0sxMVZkU3NxUDV4dmhETTl2SmlSeFRZWllGMkZiU3FZZm1xZFpubGZ1UkFPWmZQWi9vd2hWMVRLODNPS3NPWXJkY3ZkVlVIMEZvbGZkU24vbW0zc3UrZmZxc1NueDhpWU9XSTRCZHhvbWJiUXZmLzY1Y0dCK1FLSHlHM042d05FWWt3ZzIyTHFVRXNLa080MHZlaTB1T203WmticzJ4cllvQTVrdUMwWnpMMlBIVnBycm54bktCTENsYWxXeHJWZTRWalZNRVZvYUFCTENWV1NvTmRBTUpqQ21BMVRpdlpXYXZjRjhGbTRoVFk1ZjRYcm9JdUh5cktyRCt6eWRjdHpFRk1LWlJPb0NzTDl0Wnp0ZGwzMkdXOGFZZW1pZGNvcFh0U2dLWWYrbmFiTEF1WU84Umo0cDRNM1hBOHo3UE03bEFuczg5OVY3MlBZK2IxK2NJWVBSOVd4Zm91bTI5bCtvS3VZTkxnbkg1MWhieVdSaExBQ3YzbUpRQU5wemxxZ2hndUZNU2ppSldYdS9jbXZza3NvaTFUU3pJSFdPVnpPd0tabmJ2anN6UVg2bVNOdjF6d3ZYTk9Jb2xmNXRMaWxZbDIwcEFvaW9pSUFJNUJDU0E1ZEJTWFJHWWxrQ2ZBMk9mRWZJYzRHcys4Y0d3RE9Qci9uMmRlMXFzUFlLcWZxYUtFWU9ZMHl3aEs0ZFltMzMvUHJZQTFuZGN1ZGRKQU1zbE5uNzlraS9acFVjN2R3d3dBcVIvcWdxT2Zyd0xadjlsajB0cm4rZFpueUQ0OUxOcngrRUs3cCtza255Y09tQUJpSU8xV3hXd3Z5M20wR1NmdzF0N0tFT0Q0S2Rjbnl1QWhTeTRZbGJDb1dzSjJMMS9SMFpJQ1dBRE5tanJVZ2xndzFtdWlnRFdsUUNqYS9ZL2RxTDI5NGVqNmQyQzcvZTB6MzR0K2R2c1MralNKMWFiQkxEZTIwTVhpc0Q0QkNTQWpjOVlQWWhBWHdKOURveDkrK0s2MmkyUy8vM1V4SFRadnFDaDczU0J6Y2Y0eXVpYm93U3dyV1JTclVhRzdKbE51VGIzSlJ0QkdIRzRTeWdwell6Z3ZGanB0QXVaK2pnVWxTNVk3cERKait5Q0ZONGpTR3h3WHFTaktaNW5DRlFJK1dTeTdlSkJscThobVVheG1JWHJWVnFObDhwNm15SmdoVENuWEo4cmdORWZzZnVPY2ZHYW12MGoxaFBENjR1ZVFmbXN2NGlQaGV2c0dSM1hTUUFyZDhmMkVSVEs5YjRlTGEyQ0FKWVMvNnU1R21NSHc0K3QvRklGTU4vSEpBbGdzUlhWMzBWZ3hRaElBRnV4QmROd040cEE3b0dSZ0x5WE16UCtPVlhCZmZMQkhaMjl6TXhlWFhBUVdLV1J4cnNaSzZiZHZBU3dyVVFrZ0pYYmdMa0NXTWcxdGR5bzVtbXByM1ZuN3ZPc3ord2VhR2FIZDFoL3hZU2ExTDZJbVVoR3NIWkJBTHJyUUhHTk5sTUVyTkJZZmZ2MExWVzJ4VWU2Qy9zSVlGeEtwdGEzZDNUK1lXZEIzQTZzM1pYNWtjdDVsdC9OV2VOMXpVVUNXT3B1ak5lVEFCWm5GS3V4Q2dMWUxaMmJjZHROK1Yrcjl6Q3NhQkd3bXdYMzVaMG5EbEhSN0grSkFwZ3Zvem5QdGR0WFZzV0k5amxGRm1BNXRGUlhCQ1ltSUFGc1l1RHFUZ1F5Q09RZUdOY3hYazZOSzhVdFVBTFkxczBsQVN6alpvdFVsUUIyQWFDbENtQmtrenZPaVVqdDVYeFJKYnc4dDhQZExtZUhYTWtkTXJmdnVHalB5anJxSFRtTmVlb09GY0JLWjRGc0R0TW5uUDJpc2dqY3BjcUUrUFhXbkh6M3pCdGRES0xhZ3JDTllrd0JMT1YzSkxhTXVQemlTdHZlQnptaEEySjk1UDRkeTBZeTZyYUxCTEJja2hldXZ3b0MyUE9xWjl2ZmU5WWZhMVVzdnRybGNjNWxmVGloL0JhV0tJQmhyYzF2MncxYjB5R1RLaGJXLzVJNVRRbGdtY0JVWFFTbUpDQUJiRXJhNmtzRThnaElBTHVBVjhyQlpVd0JqT3hKNzNXWjdQSlcwVitiTDQ1N1ZObloybDl0VStaYXQ2b2crS1ZXSTl5T0JMQUwrQ3hSQUx0RWRYQTV3c1huYXE4a0xvdERYUjlwMDJmOVZkS2FZb2dBNXJPNFl1ejNNN1AzcXFxSUNnQUFHMnhKUkVGVU9UQjlMY0M0L001VmR0K1BPNWRYckhFUkZiR0krMjBMT2k3QVdJczlxUFh2U1k1Q1JzbFFITFlsQzJBd2ZrSGwvdnZzanNmRjI4enMwUkVyNWJHZVZoTEF4aUpydG5RQnpDZmMxTzhSdkY4YzIvR2VVZks1bFV0L2lRTFlYenIzOWo5clRhWnZSbk1KWUxtN1F2VkZZRUlDRXNBbWhLMnVSQ0NUZ0FTdzVRaGdmVitDUWt2dVcxOEpZSmszeWdUVkpZQXRWd0RqUFdZL016dWdZeCtVY24wTVdaZVZqS2N6UkFDN2habDl3cms4TlZHMFhYaUdDR0FJamU5eThkNklQWGVhNTk3elpZNU1zWlJic2dCR2hqdGlvVjJ5Tlc4eUJOK3VjaE05SmZGWnhKNkZCYkdGeUp3M0pDNGRYVW9BU3dUZm85b2NBaGozS0JhUzV5U01GM2ZpajNhNGZkZHUyWHk4ZTc5ejBXNDM1MHRFa2REdG9DcExGTUFlNnJIaUpkN2xQY3dNUzdDY0lnRXNoNWJxaXNERUJDU0FUUXhjM1lsQUJnRUpZQkxBWXR0RkZtQXhRbVgrTGdGc3VRS1lUL2hoeENVT2VLSEErdDl3UWVCUEw3UE52REhBeUt6NWQ1V0ZHLy84ZGFzdllqNFNpSjQ0WCsxWVAxVGxtcnVZMlpudXVoUUJqTGhCaUYxZDVVOHFyaHlxZlFsT3NEZzUyQVc1YjE2UDJ5Qnh5SHh4SEJrZkIvNmxDbUNYTWJNam5RVmJtMHVPT3htV3Z3YzFFalZnVVllbDNCQVJUQUpZb1J1d281a3hCYkI3VjFhVm42LzIxWTByOTdzN1ZLNjF0NjRzTEhjeU0vWUlNZmNPaTB3clpQbjYvT3BhWENNcHV6c0w5dmFaajRRbXhBTGpPVFpsV1pvQUJwZTNlcEtuOUUzb0pBRnN5aDJsdmtRZ2s0QUVzRXhncWk0Q0V4S1FBSFlCN0JTcnFERmRJR1VCTnVIR1gyQlh1UUxZbEZQd1phNWFXZ3k0M09kWkNzTnJ1SGhNMjNWVXh0ME9sejMrT2FUNEF1dlRab3BGVTA3ZlBrYmZxa1FsWXBBaFRGRVFpODQyTTF3TnVTWlVtZ2RoNnFVSVlMNDlsVE9YM0xwMXByVWxDbUFoSzBOZkVvQ3UrVi9Uek41alpqZHIvWEdvQ0NZQkxIZTNwZGNmVXdBTGpTSWxmcHZQMGhLUm5MLzltK3NBOFJiclVDd1kyNFg5aVBWVEtNRlFPcTIwbWtzVHdIelpmWm5OMDZzTTZhOU1tOWFXV2hMQWVrRFRKU0l3RlFFSllGT1JWajhpa0U4Zzk4REkxMEMrNXZIMWNPeHlVMmVSMEg2R1lCbndyRWlNbHo1ajQrV01XRDVrZ3ZRVkNXQmJ5U3hOQU9tejdrdTVSZ0xZOEpYSWZaN0Zlc1F5Ni9WbTlxaElSY1NGRjFZV1NiZ0VuUmRydFBYM2tIVlpqdkNSMnEyUEVaWkhDRmRrbXN3cFhhNTVFc0RNdnBJRHNYSXg4KzJEWEF1YTBINGl4aVFXY24wc3dTU0FaUzVvUnZVK0FoaEM5ZlhjKzlpdFhKS0kzUGV5bDdoM0tkOVFlZjVoSVhiL2pncTRLU1BPTnhOTllHVklodHl1VWxySWorRmRtZ0RtaSsvSTd3VXhDNGw3bVZza2dPVVNVMzBSbUpDQUJMQUpZYXNyRWNna1VQckFtTm05dHpvSEtBSXFZMTNSTG54bHZLK1pFWGRtNmxKQ0FKdDZ6RVA3a3d2a1VJSnAxMHNBUytNVXFsWDZlWWIxMXh0Y2ZKYVUwWkd0OEVEbktuaEd3Z1VoNnpJc0xIQTcvR3BDT3psVlFqSEFUakt6L1hNYU03TXUxendKWUhrQ1dHZ2Y1TGcrMWt1M3EwdlkwSTRqeHQ5eFl5V21YTzd2cHdTd3pCc2pvM3BJQU1NeUU2cytMS3NRdW9nRGQyMlhKQ0tqaTg2cXNROVl6WVFVelFad1RTWm1GY0ovczRTc3dISmoyQTJkMjVJRXNNdFY2L2N4TTd1NVoxSy9jUlp5SDhuTUlpd0JiT2d1MGZVaU1DSUJDV0Fqd2xYVElqQ1F3SkFENHpZdWFLY3YxWHpmb1lWY1FXanp3UzVJY3QvMmgxd25BV3dydmRnTDlCRFdtM2F0QkxEaEt6N2tlUmJxbmJoWFQzVlpHckdLU0NreHE3Q3J1c0RSYlZlMXV1MCt3a2ZLdUVJQzJKdk43RFBPN1RHbExWd2ZYOXpoMmlRQkxGMEFDOFg5R3VJNlJsWk9zcFplcEdNaFdlZDlNbDNTSklDbDNCSDk2dmplS3hDYXhqeERoYkx0c2k4LzVOd2MyN09xZzk5M1dSTDZZb0hSeHFkZHR0ZytGb2k1Wkpja2dCRnJqWXkxc1VJaWdWRGlqL2IxRXNCaVJQVjNFWmlSd0pnUDd4bW5wYTVGWUMwSTlEa3dFaENabDJkY1pZaGRRNXlZa2lYMDRrNC9CRHAraXBsaHJUQjFrUUMybGJnRXNISTdVQUxZY0paOW5tYzV2ZUppaERzUXdzL1ZFeS9FS2d5UjZOQXFrK1J2M1RWWS9QQzFmd2RQRzMwRWlzVGhlQVBBY3k4VDBKK0EyWXd2VkpqVFg3czVkQVdxVHhIQXNHanBDcWpmMVM4ZlcxN1drWDJTZi9lbDFJbFh2MW5IVis2c1AxNVFFUHdyTzVHS1dFcnQ4aDFuQWYyRGpQazFxL0x1emUvMGF6d2kyQnZkWVRzMUxwTUVzSjRMMGJyczRtN2YvNlZ6ZThXaTYwWVRoWlZnS0R5RFRxaXN5WTUyTWJ1KzdyRTZJaTRWMXF4ZEplVE9HQXFhVDFzbGtvYWtyTVJTQkRDczl4RCtzTnBMS2R5UHp6YXoxeVZZYVVvQVN5R3FPaUl3RXdFSllET0JWN2Npa0VBZzk4RElDL3ViWEdyMWR1YXZoTzZpVlVMeFM5b1h2NjJLdC9PY0txYkphZEZXeTFXUUFMYVZwUVN3Y250TEF0aHdscm5Qczc0OThoRUFBZWNWTHFOYVNqdi9iV2J2Y0tJUkIwdWYrRE8ybFVUSUF1d3hab1l3Z3VzbEIvVXJtQm5qeG4ySkR4MjRueFBqaC9oV0llRWtSUUJMWVZiWDhZMjVEbXFmMHhaMWx4QUUvd2JPelgvN2pzSEQvQUV1STJSb2J1MU1tdXpMRzFZQnRTL3RMdUw5bTVoZlpPanNLdnlldlR6UjdVb0NXTzR1dTNCOUFzSHpESml5SUhaaFdYU3MrMmlZOHNFeTlCNkc0SHozeW8wMjVPSk4vTlpqT2dScjVwMjZ0NGN5R2lLQWNmL2N4OTEvOVVlTFB1TkpqU0haMWZZMzNRZG1CRW9WRVJDQkZTUWdBV3dGRjAxRDNoZ0NxUWRHN3VOZHFxQ3JwR3UrdktOVE9tc2g3ZVB5VVdjaFMxa0VEbUY4NFNZQU5YRVV4aTRTd0xZU2xnQldac2R4Y0gyR21SR1V1RjFDYmlwbGVvKzNzc2xaSUdOMHJ1K3NHbkJ6NlhJM2kxM2YvUHRRcTUrVXZrSUMyQ05TR2tpb0l3SE03d0xKYnludXJhK3VMQU45N3JTMTZNZy9LU21aT0JPV3BiTktxZ2dtQWF3djRRdXV3K3FMUkR0L05yeXA1Qlp5UmVLUVN5N1dubnM0NFRZMEFQWTRHU2E3ZnMrNGpvemJDTHhZd1k1VitnaGdXSzhSWXVOVkx2YmliZ005SEVKV2RLbnpQc2dsS3BqaS9UWjFUS29uQWlLUVFFQUNXQUlrVlJHQm1RaWtDR0M0L2VCcTh2aldHSEVsMmFtQUJSYlBDRXpxY1JGS2phL1R4c1hMQVdianRKRWIzRGNIdlFTd3JiUWtnT1hzbnU2NnZIVHp3bzMxVFZmNW5zc1NkZXJ3cm5xM0lBRXNqbzVBeHdnYnVQaXdwcm1GZGViQWRYTHVoWm4xSllETmF3SEc3eDN1VGJnbkxxR2tXdVJJQUJ1K1dyank0bnJvaS91WDJnTnJoZ1UrY1FhSjJmYzE5L3ZSbGNBaVJ3Q0xXU3psWktVTnhSQmpuaVQ1SUl6R2lhbVR6cXlYSTRCeFQ5N0J6QTZwWW5WZHgvVXo5TU5UTEpRSGZmR2IvcUtFRHlmZk5iTkh1N1h1Y2puUFJLUHFJaUFDVXhDUUFEWUZaZlVoQXYwSXhBUXczRFJ3ZWFsZkNwcTk4QldQK0JXNTZkNmJiV0Jxem1IZzRmMkdmNkdyZUZIZ3F4c3ZhcVNYTGwwa2dHMGxLZ0ZzMkE3YjF0MWZQaGVsdW5VT09YeDUvOVd3N25wZkxRRXNIUjJIU0E0L0hHeTZucHUrbHI1aFpuL25EcldwY1puU1IzVkJUUWxnOHdwZ3JNUXRuVXZheGZvczRBalhwSWhnRXNDR2crYzg5TlpLK05ncm95bldobWZEcDF6OFU5NjNpTUhYRmtKODd5YXBBbGdzK1ZDZnJMU3hrQlpqaW1DcEFoZ3V3MlJHNVdOdXMzek9aYnI4OTR5MXFxdkd2QmxZVDl6TVQzY3V5NFR6OEdXSWJIYVBoOFJqWjN3UDZJRkNsNGpBNWhLUUFMYTVhNitaTDUrQTd6REUxOFhqS3JmQ3B3V213QXNZQjNkZXpISkwxeGMzWHh1ODJMM1hCV1M5YjJKSHhLa2c5c20vSnNZM1NXeldKSUJ0SlNVQkxIWG5YTGdld1hGNW9VMjFCc0IxQnJlUm4vWHZzdmVWRXNEeTBPSFNlbThYVDRzNFdqa0ZDMVpjaHc2T3hObkphYk5aVndMWS9BSVkxakhFVXlPTzNGSktUSXlRQUZabXBlbzRlNzdXK0lpSGF5RFdYVDZ4cSt2YW9RSll6R0lwMVZXMk9iYVlxRVpkOWgySlJmcThSNFpXSkNhQWtZV1gwQmsrTWJKdmlJOWRYV0tMUzNvR3g0ZGp4Qzh5YWRZRmkrRW51bzhtTVM4SXZCMndCaVBEcTZ6Qnl0eVRha1VFUmlFZ0FXd1VyR3BVQklvUThMMGtwRFRPaXhxQ0ZDSlRUdUhGNDdYdTJ0aDF6VXhWT2FKWjNXNXVXdW5ZZUNTQWJTVWtBU3kyWTdyL2ZoTXpPeW9qQzE3ZHlvK2NkVkZPNXJ0K0k5eDZsUVN3TklxMTlkY0JHVmtpUXkxekNINmVjeE1xZGRpUkFEYS9BTWFhUDhGWlA2ZnRMSDh0cklIT2NYLytpWmsxZzJiakdvZVZTVjBJckgxRkY5eTdIV3NUcTBNeWUvcUN0RXNBRzdwUzUxK1BwUS91ZFlnZXZFT1I5QUx4aHd5bEpKdm9hN2srUkFDTFdTeVJlWHYzbnZHd1ltNlZNR0h2a1NDQUQ1Mmxubk8rL1lxYktCOFpDSmtSRXB0eVEzencwWU43K3BVUmw4YVFrSGc5ZC8rbFdJUHhia3RZa2prK2lKVzVFOVNLQ0t3NUFRbGdhNzdBbXQ1S0U4QTgvb005WnRBbk1DY0hyK2M2RSs2VUxwOWZ2YUM4dUNQYldNN1hNdnJCaGVEMTdvVm5hQ0JSMzB0bXlueldzWTRFc1B4VmpSMDIySys0OEJJUHFpdW9PbjkvbGt2K01HYTh1K2JNSklDRjEzbG8vSy9ZTHVLZ2pFc2xGb05Ec3BMUmp3U3daUWhnMTNJQjBhL2lGdjlNTStNL1dGK2Y1ZUk2MWVJVjFpaUkzNVJ6blF2VUVLR2diZTJUWW9VakFTeDJsNmI5SGRIbFNsVzh3SjlITXFtbXRYWkJyYjRDV014aXFVUU1Ta1JYc2tMdUVKa1VXYjM1ZUZEQ0JSenZCYkwwOWkzY2k4UUYrNWVFQnByWjBVUFZmZSsweld0eTNtOWxEWmF3T0tvaUFuTVJrQUEyRjNuMUt3SmhBbjJDOFhJUTI5dDl3VXpsZXpXWEVZallCU2xaMGpqZzB3ZUg3dEJMZnE2Z3hzc0NZOEIwdlBSWDFsUVc2MVpQQWxqNmlxWWtlNmozL3R0ZExEc09BNzZDNVFjeG85NVZRQlNKeldKVkJMQnJtOW5uSzlkRERpVE5NalNnY1JjZmtvUGNvMksvWDJMOGxyb05MRDZ3RkNBQU5FSm1qb3NrZ2lldWtXUVFyQVdSMk5xMS95NEJiQmtDR00rRDdad0wyQmtEZnBOeTE1LzZUZGUwMU9RTEVzRDZrSjd1bWx3QmpEMUFYTW5ESXRsSWNicy9zc0EwVXEyZTMyZG1qeG9ZNXdvUkNRc3Buckc1SlNlek9GWmY4TUZUZ1hpMm9kTDBaa2daMDErWTJidXIzL2Z0RXlyTEdpd0JrcXFJd05RRUpJQk5UVno5aVVBYUFiN0dIV3RtbDArcmJqbFdYN3dZRU44RTk1MDdKN1pQdFQ0dVhnUXhUUTBpU2g5RE11cklBbXpyWWtvQVM5dmMzQThrWndnSldtM2hOOFYxaE42NURyY2xoQkZpeHBUNGVwNDJxK1hWZXBCTEt0QWVXU2tCRE1zTkxQTVEwbE5qdDlWajZSTGdoN2hNNGg1SkRCdGl5ZVFJK2hMQWxpR0F6WDMzc1BmSVJJbmIyV2tKZzhGRnJjczk4bThqejdXRXBsV2xBSUVjQVN6bDk0Z2g5WW43RlpwS0xDaCtmUzN2Z2NUbUl2bExIMHRIM2psNVBxWjhjRzJPRjVIcUJjNFZOVFFQenJYTWhRUk9LZTZLV0tMeHNTcjN0eGtoai9Ic203QS8rSDNoSGlWK1hCOW1DVjJvaWdpSVFBNEJDV0E1dEZSWEJLWWhRQkJldnVyZEthRzdYNXJaUTF5Y2l0Z1BLOVplZTFaZnRaK1NhZG5BTURqQTh6TGR4MDB4NTB0Y1BlVSs4Y0VrZ0VrQVM3aGx0bFQ1SStmSys0ekloVjJIRGF5TWVDbC9XRWFueEFFaWd4VmlHTllkdjNOWnhNNzJ0SUdBUm5iSjNKZnpablBFRStKbDNWZisxTG0vd01KWGJ1emM4K3EvNC9iMUttZmR4djNOWVNZMFJqTFc0anFLRlZpNzhLeERISU5GVG1IY1pBZkRVb0o0aDdqeTVCYkdqUHNpVmx1K1p4dnp1NXVyaDZWRVRrSFE1NUNFZTJTS1M2d0VNRFAyQ3ZjSVdWaWJKVmZNNmJLTUxKRWRPV2Y5cDZqTGZZdFZLdmRRdStReW0ySzhtOWhIcWdDV21uazcxMklwbFhrczJINnpuWnlQcnZWMTEzRFpNckd1VEMyOEMvS0I2dnVSQytvUHV3aGE3YXlSdmt0WkYrcm5mS1JvdDNWN2QvL3hmaDByZkpRa29INmY5K2hZMi9xN0NJaEFCZ0VKWUJtd1ZGVUVKaUxBMXlneWpjVktTdHBsckNMdVU4VXRlV3BsZlhIOVdJTWRmeDlpa2RWdWpwYzc0b2JoWXBSYWNsNnlKSUJ0cFNvTHNMUmRoaVhrM3dlcVB0UE1YdVo1U2NaU0F3RWxKcUNsaldSMWFoRXZCVzRVckZTeDRzTGFreGhZQ0hhVWI1dlpENXkxYVNpK0RGL3FueFNaK3NVckM1ZnJWckZxYnVleTIvTFBiUWJncWwxcENMcU1pMXRLcVMwTEVNdFNEMWgxdTRoZnpKTjlGT3B2MHdVd0dDUGFkUDMrNVlvNXF5NkFJZkQrbVlzOVZnZlNiKzlURHYxWTR4emlzYWhCME1CdFRXVmVBaWtDV0twYjNadWRkZUNRanlJaEdqa2lHTTk2NG1aK05SRXZ6MXRZcEJTU3lTQVduUml4bXVKREZKa3FDWngvblpTR25RQlYwaUlMc1I1UmtuSEV5bEFMdWxqNytyc0lpRUFDQVFsZ0NaQlVSUVFtSmhEN1NzYUxEMjQrdk9DM3YxenhRbnhObDQyT3JGRjlSQytteXhjcVhpZ09UYlJjeUVHVStxSlh0NWthSHl3a2dKSEJLZGZDSkdkT2M5WEY4b1pEYzVjN2dRU3d0RlZwQjd4dVhwVnkyT0IzbEVQQU96TmNsdE5HdHN4YVdKM3U3Q3pYR0NIaUZGWmN4TnpxVXg3c1lxVTFyNzJSU3llUEt3di9tME5PaVlJUWhiaENwdHUrWCtGWmJ5emlEc3gwSWEvSEh4SnkxbFVBdTNWbHdmRUk5d3pHK3BGQTh1M3lKNjZPenkwL1Y4eFpkUUhzTWU1UTNlVFV6Q3JKdnllZW5pOWJIbnNkNjVTcHM5S1d1RS9YclkyUUFFYVd5U2U3ajRNeHQ4QzNPRkVveFpxMEwwT2ViOFRPNHZjc05wNWNOOHdVNzRhVTl6MStjL2dOZ2h2V3VUbUZPSStJeGltdXhUbnQ4dTdOTXc0aExKVEJzbTZURHlKODdCNmFPQ1ZuaktvckFpTGdDRWdBMDFZUWdXVVNJQU1rcHQvdEZ4QlNwei9RV1ZjMFI0NGJCQzhqV0xLay9QajZabDNpZ0poQ05DZWJEdTFoaGNQWHc1Q2JwKzhsRTNjdExEWVF3ZGF0WUNXQWF4a0huWGFSQUphKzJsMVdZTHdvYytqdU9xeDN0WXlGSTVteWVDa2ZjZyttajNxZW1tUnQ1Y3Q4ODE1RVVPTGY1UmJTMmQrMnc3MEZkeEl5azJIMVZhSWdBaENUaTlnenBTd24rZ2hoYmZHd1BiZDFGY0FRaUk5MkFkNzdyQ2NmTDhqNmhtdGthbGwxQWV3MkxzNVN5RFU1eElMNGN3UWFUMzErcFhKVnZYd0NJUUdNakpPZnFOeXdjVlVQbFRjNVMvNHh4YTltLzdFTWxDSEw2TkE4K0VETGIydVhPN3pQNHA5bkxSK0cyYytQN0JIamtmR0VQaHpucjZqL0NseTRzYnBNQ1pEUFBjcUhvOXBxdXVRNDFKWUlpRUNBZ0FRd2JROFJXQ1lCN2sxaTdIQ1lyc3Nibkt1Vjc0c1JoOFhqV3JGNlVtZkhsMlhjRTdING12S0wxRldkTlFZeGZId2xWWWlRQUxhVm9BU3cxTjF2MXJZQys0Nno3c0dGTDdkY3ptVktKVGh1VGhiQjNIN21xSCt1Ky9KK2ZLdnp2bW50WVVRTWxxNkNsU3V4Qi9zV25tbTRLeElmcVc5V3h0UytjZitrcjFoU2taZ2IzN29LWUw0TW9LbDgrNGc1cXk2QThkdDRncGxkSlJWU3E5N2pPaXpJZWphbHl3WVNpTGxBeGdMUTQzTE8rMWtwOFQ1MU9yYzBzNk02TEp0VExLTkRmYlRkTFBtd2kwdmlTWjZMWW54aTh5RVJFeCtuU2x0OStmckZZaGwzOThjSEJrWjh6MUpaUEdQejE5OUZRQVJhQkNTQWFVdUl3SElKWUM3K0lXZTl4RmN2RG5LeFFQYzU4UnVZK1JpV0VibEVlUTd4ZFo4NEp1MFlEbGh0RWUvbmxJUkdKWUJ0aFNRQkxHSFROS3JVVm1DSVgzeVZUZGx6b1I3cXI5YmNrM2QzOTNFcFY3NjhtWldyamFVQ1luWGJDdUdlN3FDVTAxTXNrRE5CN2JFQ0M4VVBhL2RIa29ILzY0Ujh4TXZZOHpKbnZDbDFRMElZejFyMndTYkdBQ09XMVVlclpDMVlOZlVwSkcvcHluSVlhbXZWQmJDUWRXK01ZZXBIbzFnNytuc1pBakVCakY2NjN0MFFTZmdJaXRYdDFNK3lldVo4V1AxQTR6bGNZbS94MjdpZnkxREtmYzNIanRpSFZ3TGg0M2FlVXo3cGtqNzVoTFdjdG5Mck1rZWVXM3hVN3JJSXozVWZ6ZTFmOVVWQUJBSUVKSUJwZTRqQXNnbGN6OFg1SWhoOVN1R0hscGVsUndVcWMzakZzZ0tMaGJFdEkxTEdYTmRwQjhuUC9VSW1BV3dyYlFsZ09idlBETGU3STl5Qmc4QzdZeFR1VHdMbTR0cE1mRDRDeVBzS0F2aGZWVUgyUXk1UVdOYndqQ0M3SFZZeS96bHcwSHlKUHozUXhqY3FGK3lUTy83T09MRSt2V1JDLzFobWNhaURkU3o3RmdremlKWGlLMWhFSUpKeGlPS3dnenZSM0tYTE5aSm5HY0loMWhTaHNxNFdZTXk1UzVCS1dTc3NCSW1WazJ2OXN1b0NXRjltV0x0dzM4UUVoUlQycWxPR1FJb0ExaFNGNkJWM2FjSmQ4SHlidS9DYmhkVVhIeU9iOFIrSGpJc3dHRHdUU2VhVWNtL3oyOGxIVXVKM3hRcmhRM2htZkN0V2NZSy9kN2xFRHJXZ20yRFk2a0lFMXB1QUJMRDFYbC9OYmpNSjREckJZYkFaZzRBRDJIdXJ6R212Y1FmbDJNRnpUbkpZVWZBU1Q3Qms0Z3FsQnEvbkt5SnhLZG9GU3hDK3JvWU85blBPZDBqZldCUVJHUGRXSFkydzNyaW1xYVFUNEVWZjhUalNlZFUxNFVZc3IxRHNNNEliSTdBaGdLVmFNNURGOXRqR3M0eERQVzVoSEpvSUhuMXFnb2lXUDVzeVY5UlpJeEh3R0NjdVByR0QzaW9LWUJ4a09SUzNyUnR4a3lYR1cxMXkzV1N4bU1ORjlyTVorNlc1Y3VzZ2dQSDdoNlZNclBETStxQ3pObG5TUjYzWXVEZmw3eWtDR0N6cUQ1aDgySGhZWlJuMXN3VUJZbXdrWFpoemY0VVNSUEc3Z29VWTcwT3BtWDJud3N2SFhYNEhIdTdpbitYRUZwMXFqT3BIQkRhS2dBU3dqVnB1VFhhRENCQkVIMWNnRG9xMW1CUTdmQzBKRDg4bXJHU1dMTlF0aVpmR0lnTHJTbUJISjREZ3huTDJDazR5NTFubUU1TTRkR0xoVjZLUVFRMWhaYnRXWTdUUDRYR3NRci9iSkRaK3BwbWRrMWpYVjQyZzR2QnNGajRFSVJhdDBtL2hRQXk2ZkFFRWNHZkZEYmhkdXZZNTJRVFpwNmtmQ1JZd3ZVbUgwRXdReFgxOG1JdDE5K1dGdnkreXJ2ZHh6L0dwWXBGTnVqRHFUQVJXaVlBRXNGVmFMWTFWQkVSQUJFUkFCRVJBQkVSQUJFUkFCRGFQQU9kV1hFT3hxc1ZMUUdMMjV1MEJ6VmdFQmhPUUFEWVlvUm9RQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRllNZ0VKWUV0ZUhZMU5CRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSZ01BRUpZSU1ScWdFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFSUVsRTVBQXR1VFYwZGhFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUUdFNUFBTmhpaEdoQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVZneUFRbGdTMTRkalUwRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSR0F3QVFsZ2d4R3FBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUWdTVVRrQUMyNU5YUjJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkFZVGtBQTJHS0VhRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJXRElCQ1dCTFhoMk5UUVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVlEQUJDV0NERWFvQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkNCSlJPUUFMYmsxZEhZUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVCaE9RQURZWW9Sb1FBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJGWU1nRUpZRXRlSFkxTkJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJnTUFFSllJTVJxZ0VSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVJRWxFNUFBdHVUVjBkaEVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFRR0U1QUFOaGloR2hBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFVmd5QVFsZ1MxNGRqVTBFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJHQXdBUWxnZ3hHcUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRZ1NVVGtBQzI1TlhSMkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCQVlUa0FBMkdLRWFFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUldESUJDV0JMWGgyTlRRUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFWURBQkNXQ0RFYW9CRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQ0JKUk9RQUxiazFkSFlSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRUJoUDQvd0g3YkxhSW5XSTVVZ0FBQUFCSlJVNUVya0pnZ2c9PSIvPjwvc3dpdGNoPjwvZz48L2c+PC9nPjxnIGRhdGEtY2VsbC1pZD0iZTMiPjxnPjxwYXRoIGQ9Ik0gNzUyIDI1MyBMIDc1MiAzNjIuNzYiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzI4NjQ5NCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIHBvaW50ZXItZXZlbnRzPSJzdHJva2UiIHN0eWxlPSJzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7Ii8+PHBhdGggZD0iTSA3NTIgMzcwLjc2IEwgNzQ4IDM2Mi43NiBMIDc1NiAzNjIuNzYgWiIgZmlsbD0iIzI4NjQ5NCIgc3Ryb2tlPSIjMjg2NDk0IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgcG9pbnRlci1ldmVudHM9ImFsbCIgc3R5bGU9ImZpbGw6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7IHN0cm9rZTogbGlnaHQtZGFyayhyZ2IoNDAsIDEwMCwgMTQ4KSwgcmdiKDExNSwgMTY3LCAyMDgpKTsiLz48L2c+PC9nPjxnIGRhdGEtY2VsbC1pZD0iZTQiPjxnPjxwYXRoIGQ9Ik0gMTMwNyAyNTMgTCAxMzA3IDM2Mi43NiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjMjg2NDk0IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgcG9pbnRlci1ldmVudHM9InN0cm9rZSIgc3R5bGU9InN0cm9rZTogbGlnaHQtZGFyayhyZ2IoNDAsIDEwMCwgMTQ4KSwgcmdiKDExNSwgMTY3LCAyMDgpKTsiLz48cGF0aCBkPSJNIDEzMDcgMzcwLjc2IEwgMTMwMyAzNjIuNzYgTCAxMzExIDM2Mi43NiBaIiBmaWxsPSIjMjg2NDk0IiBzdHJva2U9IiMyODY0OTQiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBwb2ludGVyLWV2ZW50cz0iYWxsIiBzdHlsZT0iZmlsbDogbGlnaHQtZGFyayhyZ2IoNDAsIDEwMCwgMTQ4KSwgcmdiKDExNSwgMTY3LCAyMDgpKTsgc3Ryb2tlOiBsaWdodC1kYXJrKHJnYig0MCwgMTAwLCAxNDgpLCByZ2IoMTE1LCAxNjcsIDIwOCkpOyIvPjwvZz48L2c+PGcgZGF0YS1jZWxsLWlkPSJyZWNvdmVyeSI+PGc+PHJlY3QgeD0iNTg3IiB5PSI1OTgiIHdpZHRoPSIzMzAiIGhlaWdodD0iMTA1IiBmaWxsPSIjZmRlY2VkIiBzdHJva2U9IiMzMzU1NmYiIHN0cm9rZS13aWR0aD0iMiIgcG9pbnRlci1ldmVudHM9ImFsbCIgc3R5bGU9ImZpbGw6IGxpZ2h0LWRhcmsocmdiKDI1MywgMjM2LCAyMzcpLCByZ2IoNDIsIDI4LCAyOSkpOyBzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDUxLCA4NSwgMTExKSwgcmdiKDE0NCwgMTczLCAxOTUpKTsiLz48L2c+PGc+PGc+PHN3aXRjaD48Zm9yZWlnbk9iamVjdCBzdHlsZT0ib3ZlcmZsb3c6IHZpc2libGU7IHRleHQtYWxpZ246IGxlZnQ7IiBwb2ludGVyLWV2ZW50cz0ibm9uZSIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgcmVxdWlyZWRGZWF0dXJlcz0iaHR0cDovL3d3dy53My5vcmcvVFIvU1ZHMTEvZmVhdHVyZSNFeHRlbnNpYmlsaXR5Ij48ZGl2IHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiBzdHlsZT0iZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IHVuc2FmZSBjZW50ZXI7IGp1c3RpZnktY29udGVudDogdW5zYWZlIGNlbnRlcjsgd2lkdGg6IDMwNHB4OyBoZWlnaHQ6IDFweDsgcGFkZGluZy10b3A6IDY1MXB4OyBtYXJnaW4tbGVmdDogNjAwcHg7Ij48ZGl2IHN0eWxlPSJib3gtc2l6aW5nOiBib3JkZXItYm94OyBmb250LXNpemU6IDA7IHRleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICMwMDAwMDA7ICI+PGRpdiBzdHlsZT0iZGlzcGxheTogaW5saW5lLWJsb2NrOyBmb250LXNpemU6IDIwcHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtNaWNyb3NvZnQgWWFIZWkmcXVvdDs7IGNvbG9yOiBsaWdodC1kYXJrKCMwMDAwMDAsICNmZmZmZmYpOyBsaW5lLWhlaWdodDogMS4yOyBwb2ludGVyLWV2ZW50czogYWxsOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3b3JkLXdyYXA6IG5vcm1hbDsgIj5SZWNvdmVyeVJlcXVpcmVkPGJyIC8+6K6+5aSH54q25oCB5pyq55+lIC8g56aB5q2i6YeN5o6IPC9kaXY+PC9kaXY+PC9kaXY+PC9mb3JlaWduT2JqZWN0PjxpbWFnZSB4PSI2MDAiIHk9IjYyNy41IiB3aWR0aD0iMzA0IiBoZWlnaHQ9IjUzIiB4bGluazpocmVmPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQk1BQUFBRFVDQVlBQUFCNlFsOElBQUFBQVhOU1IwSUFyczRjNlFBQUlBQkpSRUZVZUY3dG5RWDRQMHRaOXA4WDlJZ2dMWWpTZmVpUTdoQ1FVQ1NsUVFsQmtBWmZ1cnVsODBYcGx1NlFscEFXNlJacEtVRUVlZmR6L3JPd1o4LzB6dTUzOS91NzU3cTQvb2ZmZDNiaW50blptWHVlNTM3K2p5a0pBU0VnQklTQUVCQUNRa0FJQ0FFaElBU0VnQkFRQWtKQUNBaUJQVWJnLyt4eDM5UTFJU0FFaElBUUVBSkNRQWdJQVNFZ0JJU0FFQkFDUWtBSUNBRWhZQ0xBTkFtRWdCQVFBa0pBQ0FnQklTQUVoSUFRRUFKQ1FBZ0lBU0VnQlBZYUFSRmdlejI4NnB3UUVBSkNRQWdJQVNFZ0JJU0FFQkFDUWtBSUNBRWhJQVNFZ0Fnd3pRRWhJQVNFZ0JBUUFrSkFDQWdCSVNBRWhJQVFFQUpDUUFnSWdiMUdRQVRZWGcrdk9pY0VoSUFRRUFKQ1FBZ0lBU0VnQklTQUVCQUNRa0FJQ0FFaElBSk1jMEFJQ0FFaElBU0VnQkFRQWtKQUNBZ0JJU0FFaElBUUVBSkNZSzhSRUFHMjE4T3J6Z2tCSVNBRWhJQVFFQUpDUUFnSUFTRWdCSVNBRUJBQ1FrQUlpQURUSEJBQ1FrQUlDQUVoSUFTRWdCQVFBa0pBQ0FnQklTQUVoSUFRMkdzRVJJRHQ5ZkNxYzBKQUNBZ0JJU0FFaElBUUVBSkNRQWdJQVNFZ0JJU0FFQkFDSXNBMEI0U0FFQkFDUWtBSUNBRWhJQVNFZ0JBUUFrSkFDQWdCSVNBRTlob0JFV0I3UGJ6cW5CQVFBa0pBQ0FnQklTQUVoSUFRRUFKQ1FBZ0lBU0VnQklTQUNERE5BU0VnQklTQUVCQUNRa0FJQ0FFaElBU0VnQkFRQWtKQUNBaUJ2VVpBQk5oZUQ2ODZKd1NFZ0JBUUFrSkFDQWdCSVNBRWhJQVFFQUpDUUFnSUFTRWdBa3h6UUFnSUFTRWdCSVNBRUJBQ1FrQUlDQUVoSUFTRWdCQVFBa0pncnhFUUFiYlh3NnZPQ1FFaElBU0VnQkFRQWtKQUNBZ0JJU0FFaElBUUVBSkNRQWlJQU5NY0VBSkNRQWdJQVNFZ0JJU0FFQkFDUW1CTENCelB6SDdiekg1bVp0ODFzMTl1cWZGcWF4RUNmMkptcjRnODhhZG05c3FpRXBWWkNBaUJBNHVBQ0xBRE8vVHF1QkFRQWtKQUNBZ0JJU0FFaElBUTJCUUM1eld6ZnpDend3ZXQvcktaM2R6TVhpY2liRk5qbWR0WUVXQzVTQ21mRUJBQ1NRUkVnQ1VoVWdZaElBU0VnQkFRQWtKQUNBZ0JJU0FFZG96QStjenM5V2FHOWRjNC9hK1pYZFBNWHJMak5xcjY5Z2lJQUd1UHFVb1VBZ2NXQVJGZ0IzYm8xWEVoVUkzQU9jM3NyNnVmUHZLRFB6V3pmemF6L3phekg1alpKN3F5djJsbS85T29mQlVqQklTQUVOZzZBc2N3czc4eHM5TTM2c2huemV6enJxeC9NN092bXRsL05pcGJ4UWlCdVJENEhUTjdsWmxkUEZMQjE4enNvbWIyaGJrYW9YSjNnb0FJc0ozQXJrcUZ3SDRpSUFKc1A4ZFZ2UklDY3lLUTJvaTBxUHRMWnZaeU0zdGFkNlA3cjJiMml4YUZxZ3doSUFTRXdBWVJ5RG40VCswV2x3NXZON05uT2kyZDcwOHRVTThMZ2NZSW5NUE0zbUZteDA2VWV6VXplMm5qdWxYY2JoRkk3VHVsQWJiYjhWSHRRbUJUQ0lnQTI5UndxYkZDWUJVSXBEWWlyUnY1TFRQN3YyYjJQRFA3U2V2Q1ZaNFFFQUpDWU9VSUxFR0FqU0Y0V1dlWmV4Y3orOVRLc1ZIekRnNENsemV6MTJSMGwvM0NRekx5S2N0MkVFanRPMFdBYldjczFWSWhzSE1FUklEdGZBalVBQ0d3T1FSU0c1RzVPdlE1TTd0WjUvN3dWb25jemdXeHloVUNRbUNGQ095Q0FPdGhlRnpua240MzU2SytRbWpVcEFPRXdCODZLOFZqSnZvc0M3RDlteFNwZmFjSXNQMGJjL1ZJQ015R2dBaXcyYUJWd1VKZ2J4RkliVVRtN3ZpajNJRk0xbUJ6STYzeWhZQVFXQU1DdXlUQTZQOVh6QXhTNGYxckFFTnRPTEFJSE5jSjRKOC9nb0Ewd1BaemVxVDJuU0xBOW5QYzFTc2hNQXNDSXNCbWdWV0ZDb0c5UmlDMUVWbWk4ODkySWM5L3ZFUmxxa01JQ0FFaHNFTUVkazJBMFhWRThxOWhabS9hSVE2cVdnaEFkT0NlZTdRQUZMZnJJa1ErV2pEdEhRS3BmYWNJc0wwYmNuVklDTXlIZ0FpdytiQlZ5VUpnWHhGSWJVU1c2dmRUemV5V2loaTVGTnlxUndnSWdSMGhzQVlDckNmQkxtZG03OXNSRHFwV0NJQUFVU0NmYm1hbkhjQ0JWaWlSVWw4b2lZUzluQ1NwZmFjSXNMMGNkblZLQ015RGdBaXdlWEJWcVVKZ254RkliVVNlNjI1b2N6RTRzZHZRWHNMTStPK1NkSDB6d3hwTVNRZ0lBU0d3cndpa0NEQ3NzKzVzWnQvTEJPQTN6T3pjYnQwOVQ4U2F4bGNjYnBDSWtYOG5zeTVsRXdKeklNRDU1UVJtZHBpTEVzMThWTFRvT1pCZVI1bXBmYWNJc0hXTWsxb2hCRGFCZ0Fpd1RReVRHaWtFVm9WQWFpTXlKUUxUeVYzRXg1dG5Ic28rMjRuaVhzcHAxS3dLSkRWR0NBZ0JJZEFJZ1JRQjltVXp1NENaZmIyaXZ0L3N0TDJ1YUdZUE1yUERNNStmc3NablZxRnNRa0FJQ0lGZklaRGFkNG9BMDJRUkFrSWdHd0VSWU5sUUthTVFFQUlPZ2RSR3BNWGg2RlJtOWlJend6b2hsZTdUWmJoM0twTitGd0pDUUFoc0ZJRTVDYkFla3FPYjJhM003SkVabHc4U0d0L29SRkt6aGNCR0VVanRPMFdBYlhSZzFXd2hzQXNFUklEdEFuWFZLUVMyalVCcUk5S0NBQU1oSWo2OXhNd3VuWURyQTJaMjJRTDNuMjJqcjlZTEFTRncwQkJZZ2dEck1TWGFJenBLSVpIeFB0LzF6T3c1QjIwZzFGOGhJQVIyZ2tCcTN5a0NiQ2ZEb2txRndEWVJFQUcyelhGVHE0WEFMaEZJYlVSYUVXRDA4WlJtOXNidW9IWDZTSWQvYm1hWE5MTjM3aElVMVMwRWhJQVFtQW1CSlFrdzlvVjNNck9ISlByQzVjUzF6SXoxVjBrSUNBRWhNQ2NDcVgybkNMQTUwVmZaUW1EUEVCQUJ0bWNEcXU0SWdRVVFTRzFFV2hKZ2RJZEQxdk1TL2JxRGM5MVpvUHVxUWdnSUFTR3dLQUpMRW1CMERPdmIxNXZaK1NPOS9MeVpYY2pNdnJFb0VxcE1DQWlCZzRoQWF0OHBBdXdnemdyMVdRaFVJaUFDckJJNFBTWUVEakFDcVkxSWF3THNkenNMcjMvcTNITE9ITUg4SDh6c2hnZDRUTlIxSVNBRTloZUJwUWt3a1B3ck0zdFNCTkwvTXJPTG1ka0g5eGQyOVV3SUNJR1ZJSkRhZDRvQVc4bEFxUmxDWUFzSWlBRGJ3aWlwalVKZ1hRaWtOaUt0Q1RCNi8zZG05amNSR0NESXJtUm1QMW9YVkdxTkVCQUNRbUF5QXJzZ3dNN2szTXBQRUdtOURwMlRoMVlGQ0FFaGtJRkFhdCtwdFNnRFJHVVJBa0xnRUFJaXdEUVRoSUFRS0VVZ3RSR1pnd0JMV1NPSUFDc2RSZVVYQWtKZ0t3anNnZ0RMc2J6Vm9YTXJNMGp0RkFMYlJpQzE3OVJhdE8zeFZldUZ3S0lJaUFCYkZHNVZKZ1QyQW9IVVJtUU9BaXhWNTVJRTJQRTZnZWpmSG96a0x6cnJ0TytZR2YrdVBmMW1aMDJIUmNjNHd0djN6T3luSzJqOEdGdWE5RE16KzY2Wi9YSUY3ZHVuSm14NUh1L1RPT1QwWlJjRVdLcE8ycjNVb2RPM2J2MXc1UmEvdmphdlpaM05tWFBLczI0RXRyaCtzNlljdTNMdmxOb0RMclVXclh0V3FIVkNRQWhrSVNBQ0xBc21aUklDUW1DQVFHb2pzazhFR0llWVB6U3phNXZabFYxVXl0QmsrTEZ6R1hwNkp3NzlCalA3L281bnpUSE03Q0tkUmcvamRRVXpPNDJIK0JvMjhYL05ER0hyMTNSOWZxWHJ5MXlrR044ZUlueGV6c3l1WVdibk5yUGpKL0RpOFBndlp2WWlKOUQ5cFFha0dCakY2bDJDM0J3ZkNzWXcvTVRNL25QaVhGclRQRTVoSGlNSlRtaG0xM1B2NHhrR1k4Y3puemF6cDNUekhEM0FZV1JDSDZrNmhITUpndlhvWmtiYitkZVhVbTFJa1ZGZk5yTUxkTHBkWDU4NFQ0YVBwK3Fja3dEN1BlZlN6cnFMemhqek41UStaMlpFcEh5bW13Tzd1SWpvMTdPckRkYXpVSnYveDYxamozUHJyTzg3a1pvdk5XdENiSjJaYTUyTHZYdTFkVTVaUDBKektIUXgxT2VQa2EzSE1yT3JtTm1Oek96c1puWWk5eEQ3Z2M5MjJxVXY3SUpLUE1yTUdMUGF0S2IxTzdjUHpPSHpkTy9rZGN6c2ltWjIyc2lEMyt3Q2JyeldyZC8vSExoTVRPMDdSWURsam96eUNRRWhJQmRJelFFaElBU0tFVWh0UlBhQkFEdE9aM1YwNjg3NjZLNGphNjhTc0Y1bVpuZnBEdXVmS25sb1lsNE9ZbWN6c3dlWjJSOG5DSzlVVlJCaXp6YXpCemJzQTdqZTNNeHUwMjEyL3lEVmdNVHZISHp2NndpeDJzUEZCYzNzYlYwZkR3dlVCZkYwVVRQNytNUzJoaDVudko3aERrK2hQSkFBejYrc2Y0M3pPTFYrK0E0eTlPTUJabmFyQkE0K1M5QlVGTm4vTUxNTE8vSzNFdWJrWTd5TEVNdWhTOGY3ZENYY08xSktpb3phQndJTWJNNW5abzkyWkY0U1ZFK0diM1dXckh4L2lCcGN1eWFVMU1zaEg5S0xOVEoyd0ErVnlScjcrSTZ3dmJ1Wi9XQ1E2ZmU3OWZ1OTNkcHdpc0NETlVGZi90Yk1IaHdvYjQ3NVExVi8zNzFYTjJoY1o4MzZrUnBUTHJuZWJtYkhER1QwN1dtd0FrZVg5UDRKZ25ZS3RtdGN2MU5ZOXQvNE93N0l3TlF6dzk5NWg5a2ZRQndPeWV3NXhyMmtYY29yQklUQUhpRWdDN0E5R2t4MVJRZ3NoRUJxSXpJSEFYYjd6blQrRVpIK1lRSEFRWGRvK1ZFREJ3ZWFXM1FiNFlkT0lMN0c5VDdXRVdIY0NNK1ppSktKRmNSNUcxZFNjOWdhTnlIM3NGRFRkQTZPa0dyakRYTk9XYlFMb2hKTHRGQ2FZejczZFozYXpONWhaaWNOVlA1dkhVRjNpVzVPZmlPbk00TThhNTdIcWZWalRJQ2RzN01RZklXWm5Ud0RBeDhCaGpVUkpPZmhrZWV4S250T1J2azFXZGhuc1FiY012QndEc202Q3dJTTNON3RMRWQ5VFdldHZhU3pGSzNCWmZqTXFaemxIbVJ6aXdRNWZtTVhQYmhGZWI0eVdHY2gybXFJcjNGNXJHSFg3ZGJ1Vnp1clZoRmc0VkVyWFQ5eXhyK1VBRHVaKzI1ZzRaUktOUVRZbXRmdlVIOXA4elZkNUZoSXNLbnB6YzdhbHdzSzBoempQcldOZWw0SUNJR05JaUFDYktNRHAyWUxnUjBpa05xSXRDWU1jcXhrdUlHLzIwUk1UdUlzbmk0OXNSemY0NTh3c3o5ekxoR3RpOGNGQTR1dldKVE1LWFZPSmNBdTNwRVh1SVcyT0NqRytqSGVNT2YyR2FzaUNJcFFtbE5mTG1XZGxMSU04clY1N2ZNNHRYNE1DVEFzZ2w3ZldRWGhTcFdUUW1PVmlpS0xkUmFXUEhPNC9FSnV2aXZpUGszL2NLR0tXU3p0Z2dCTGtRSXRMT2RZMjY5dlprOUxXTkhrakwwdkQxWlBYSnkwZEl2RUhZMXk3MWZicU1CeldJTmgrWUpGR08rd0xNRDhRSldzSDdsRGxKcnJ3ejBOcnZ0djdBanowMmNXWGtxQXJYMzk5bldiUFFndXZiaUJ0a3hJTWhEZCs1TWl3RnJDcXJLRWdCQVFBYVk1SUFTRVFDa0NxUTFvYXdJc3g0SURmUzZzUkdyVG1UcTlpbGRGckIxcXl4MCs5eFVuR3YzaEZvVzVNckNjUUJNcjV5YTZ0dHBhQW93YlljaWxSMDUweFN4cGR3M0dLU3VzLzNJNlJCOHNhVWhHM3Qvb1NNRm5PY3RGWDNaMG9iRCtlazlHV1gyV0xjemoxUHJSRTJCWVdYRFFqRmx1amFFSkVXQXBWMWVDTEtDWHgwR3JkVXFSbkRrdXJyc2d3T1ltaGlHU3VMUzRWMnZBUitWQmdPR0tqdmJXMUlURktIcE9SQ1dlSTBHQ1lVV0Q1WjBJTUQvQ3VldEh5ZmprRW1DOGh5L3RDTzNMRkJSZVFvQnRZZjBlZDczRUdxNEF0bDlsL1l6REczMjEyQjVQR21BMTZPb1pJWEJBRVJBQmRrQUhYdDBXQWhNUVNHMUFXeE5ncVFQazE1eE8weGNxK3dSNWhBRHI3MVkrWC9KWXY1bER3SDFxS25FTm0xSlhEUUhHNFJhcnREdE1xYmp5V1Z6S2NHbDhYK2J6S1NLS1lsclBhY29rS0FHV1FkejQrMUtPWmREd3VhM000OVQ2d1VFR01ocWlBWXVZa2hRaXdISmNYYkdneElxaFpXSnVvZCtHZFprdjVicTRMazJBSGRkWjNwMC9Ba2FOZFdKZkhPc0RWbm00TGkrUnNOaDYyTVNnR2JRWjY2eWJ6dHhnMWk5Y2NwOGdEVEF2MGpuckIwRmNTbEl1QWNaOGZXSkp3V2FXUzRCdFpmMGVkbjl1OHF1dmk0c1E1QjFpYnVvaXdBb25wcklMZ1lPTWdBaXdneno2NnJzUXFFTWd0UUZ0U1JhY3VMTytlVXRuNVhTV1NGTTVsSEI0L1dWRmQwcmNHVjdzWFBuZWFXWS9HdFNGZXhhYlYxeDVPTGdjTGRFT0R2ZmM4azhSYVM3ZExIT29lb0U3MUJKSkVldWlQbUdwaFg0WXJwKzBmeXhPWDBxQThWMjVVNmVoOXBETThjQXlnMXYxZit6Y0hMQ3lHbUpMRVdkME44Q1FDUHgzVGlvbEdsTWk1VVNtZ2xSckdka1RLNUluUlRxVFl4blVQNzZsZVp4YVB6aklmRHNSbkNBRVc4eGRGWTBsZ2pxRVVpbmhtRE1Qc2VoZ3ZUaEJJRE91dHdUYlNLV2xDYkRVUVQ5SHR5elVwNUwxQWZLQTlSMk54eThPWEJraG83Qit4UklIZmNpVWV6V1dWYnpqSEtSclVrbWJLUjhoYi9UQklHSndmeDhtdE96K3FDTkcvakxTYmpUTTBBRUxpYktYcnNuVUx4SDg4TWpuRUdCb1RNYjBHa09sNXhCZ1cxcS8rMzVDa3ZOZTVrcEdFQXlJZWZ1bVRwOFBTKzArc2Y4NGw5UEF1MnJFRlpxOUFlTVVTaUxBYWxZMlBTTUVEaWdDSXNBTzZNQ3IyMEpnQWdLcEEyd3JBaXpueHIzR1RheDBBNGRJT29mVXIyWmd4bzBvbGcxbytzUVNRdnN4OGlQMmJNbG0rZjFtZGxzekM0VVc5OVhEQWUxMnpuMlJNU2c5YkVGVWNWaElFWUVjRERpVXNZbk9kVS9DWFJHWHBoUys5QXROTU5xU1ExcGgvUWQ1QWhIb1MxUG1tYSs4bEVWU3JtVVFaZWNlUk5ZeWoxUHJCMk4yRFk5cktIT0VkK2JKWnZicHdaenBDV2lpelVIZW9yVTNKbEhCS2VYcU9vWFVDYjJ2TVRmQ2tqbTFKQUdXbzd1R1ZSdUVmMDNRa1p6MW9TU3dSYTc0TmtUVXBjenNteG5yK0RnTGgydmVuOVNhQm5HRjFTdVhIQ25kc1Q3cUpTUm9hZUNTMGpXWi9vZ0FDdzk4RGdIR211MXoxOFdOblhXSmk2VmVRNUQzbFc4SkYwb1FSQkNlWHc5VXY3WDFtMjR3ZDlubm9iMmFTbTkxZTVDUFpWeFNndkhOWExraDhqZFVud2l3MUVqb2R5RWdCSDZGZ0Fnd1RRWWhJQVJLRVVnZFlGc1FZTG42TUd3OHNmNHFQWWl4OXQzWGhaOFA5UityQWF3TGNJdEtIV2FHWlhBZ3UzTmljL2haZHhnYjNvVG1qQU80NEFZQVFSQkw2RmJocW9QVlYwbmJoMldlMEFrOXN5bjlpNXpHdVp0Y0xQWlNvdVc0OTRCUlRXUk14bzREeFhNejNGWUp4UjZMSGpyczFyMFRla1JUWEw3RzhKM1ZXUk9FY01xMUROcmlQRTZ0SC9kd0pNSVFHeXdFbWM5b2RjWFM4YnRuZnhoWUQxTFJHQ20zeGRyVnR5OUZjcFpZbkMxRmdPVm9FRUVVUWlSOUtITk5HR1k3WGZmczI1MTFVK2p4RDdqMURZdXZra1RaQkRPSWlaUFhqRyt1RmgwdVdoQ2VwV3RhamFpK0NMRHd6S2doUWxJRUdKZGFseDNwRWViT1U5WXg1b1R2a21lTDZ6ZklFNjBWUzY3RElpOG8reWZJTE42TDBqMUlqYlpwemJpWHJDL0tLd1NFd0I0aElBSnNqd1pUWFJFQ0N5R1FPc0RXSERLR1RjZGRDR0lyUmZLVXVya042MGh0NE5pOFhjZFpNdFc0VnVaWXI5Vm9EbkdqekkxekxBMGpKMDJkRW53aklNSndTVXNsRHZ4WWZoRzFLWllncFJER3I4RjFXRzdPWVoxMkl5US9ka1B5dFM4bGxON1NEVEptalZGaUdiVEZlWnhhUHo3YXVjUWllTnlubGlMbVM0NXhxcTRTRjllNUNURGU4eXM2Y3YwNGlmZTNWazhyaDd6SFd1VHFHVVJucUlrcDY3VVN5MHJxeUNFb3lBYzUvb0FDUzlaeCswdGRMRVdBaFNkcERSR1NJc0NZTjdqZjkyY201QkJ1a21sZEhIdWR0cmgrcDlZaStndlpoM1lyRnhlMUNjczRMRTF4WGM1Sk5lT2VVNjd5Q0FFaHNJY0lpQURidzBGVmw0VEF6QWlrRHJDMUJCaEV5NDFkWkxEVUlheFU2SHdJU1E1UlUzdklHOWFUMGk4ckpWUndUY1M2Q2t1SFVKcENDazZkTnVoM2NEQ0lmVmRhNERwc1orckFTOTdIT0pmT0ZPR1dzdGpCeXZDU1R0TnBDbFlwZ2ZGY3k2Q3R6dVBVK2pIRTlxbWRudEl0SnhBTDQzRktIZDVLeU1mVUhJaFpGSllHN2tpMU8wZG55TmRlckZVUnVxZXRPWkh0cG93SDViOHU0a2JZYXUxSzZaZVZFSTg1Rm10VE1CbU9TYzZsU1o5ZkJGajQ3YXNoUWxJRTJMQzJFdGY2MkJxeDFmVTdGWlNJN3l6dkdOYm5VeFBmU25UMElBcFRxV2JjVTJYcWR5RWdCUFlVQVJGZ2V6cXc2cFlRbUJHQjFBRVcxelQwVW5JU1VkSWdNWEF2aUFuZEQ4dkNxdWZ5bmFVUkxnZzFLU1Y0M2tLa3ZtOVh6R0tybEZCSnVlaE5JUVZyY0J3K2t6cWdrL2RGVHVnMlYrOHJwMDA1bGhNbFpFTkttQjdOazd2bE5DeVNwNVZsMEZibmNXcjk2S0ZyUllpTWh5S215MFhlRnE2dXVHSyt3UVhIOEUyRjBzQWRxZmVMZHgrWDR1OWx6azNJZWRaY1hJbVBsZmtNVnJsb0lkYTh2eWx5ZWFwSS9iQUxYS1FRMVRla3E0WG1JSWY0SExmNTFKcUxaUkRFWG80K1pBN01xYmIzWllnQUM2TlpRNFRrRW1BdHY3RmJYTDlUNnhDamdzc2pybzgxNjRSdlZDSG91ZmhMYVlMVmpIdk9PNms4UWtBSTdDRUNJc0QyY0ZEVkpTRXdNd0s1QjlnNW12RWU1NXBZcWcvVHR3WENEUmRDRGtDK2hIYld4Vncwd2hidFAybDNRSHFYbVNGYzcwdTVoTXJ2dWFoNGgwY2FWYUozMWFKdnd6STRTSFBnRDMxVFNsd1JTOXVXYzJpRWlJeUZVTy9yVEFtbFE3cENIT1FTRGI2KzRDcDExMEFuYzhtNnJjNWp1cDI3ZmlDeUhvdmFXRHBQbGh6ajJQdFFZMldXYy9Dc3hTUDFIQWRaMWhaSXUxSXRuNzdzRk9uN2REUERjaXVIbEVxMWw5OWpMc2IvMFVXRHZMQ1o0U29lUzZuQUdEdzd4eHpOc2FRVkFSWWV1Um9pSkpjQXU3K1ozYk9CKy81VzErL1VlNHpRUC9zbk5FNWJKZllVaitxK3ViZEpGRmd6N3EzYXFIS0VnQkRZR0FJaXdEWTJZR3F1RUZnQkFya0gySlpOL1VsMytFSWNHekhhS1RlTDZFYTlzeXNIblRGZmFuMFFZNk9MamdXUnozd0pkNG9yWndnbnA5d09pUGFJVmR4M1dvS2VXVmFPdUhpcmcwT29TU21ySHNTeEdZTStTbGVvbk5UQnBOUnFiMXhQNmxDZGF4bTAxWGtNSGpucng1U0lmYWxwbTVxdlU4YzRWWDZ1aSt1d0g3c2l3TjVyWmpkMFVUZFR1TVorWjkxRzg5Q1hXbDg2VU1kRnpBdzlNZDVuWDdxQ3N4S0x0VGxsb1ZQcXdwNkxYOHBGbW5KRWdJWFJyQ0ZDY2dpd2xwYzRXMTIvWSs4eEl6TFhkejRWTklhNmE4WTk5NTFVUGlFZ0JQWU1BUkZnZXphZzZvNFFXQUNCbkFOc3EyWkFmR0VseGNickJ3MEtqYm00b1YyQmRRL1JqVm9tSWttR0loRmk4WE9CaEF0TmlrU2pyU1c2TmkzN1Jsa3BVZ2UzRVRROFB0NjY0a0Y1cDNHV2RpY0oxSkZyOWNIanFZTnZib1JHWDFOaVpaZFlCbTF4SHZkNDVLd2ZMZHdRcDVBYlU4WTRaZlZaRS94aWFRSU00dXUyWnZhK0J0WXVxZlVobDV3dVdUNndtSDEzUnhTeEx2Z1Nic3g4VjJJcGRkaXZHY2ZjUHNRczJDaERCRmdZeVJvaUpJY0E0eUlMaTc4V1ZvcGJYTDlUYnQxemZ1ZFRMdFRNaHBweHozMGZsVThJQ0lFOVEwQUUySjROcUxvakJCWkFJT2NBTzZVWjZNRWdsb3g0T2JmNFV5eStodTFJRVVrdDNOdDgvWTdobFdQOWtDSjNTaU9iVFJrYjM3TXBhNHM1RHJqamRxVEd0b1RjVEIzWS83V2JseGZQakl3NWJHY3J5NkJVWDljNmozTUpzSngzWXVvY1RsbloxSTR4N1lwWmErYTZ1STc3dHdRQjl1L096UkVYOGE5TUJYandmR3A5eUhWUExtbFNDcThVZ1hUc1RwdVNkWXUyKzlLY2gzM3FTN21VcDlydmEzT01WS3NOb3BBYWs3L3ZYRTF2RU1oVVcyZHEvMUZEaE9RUVlGaHF2eUxWNFl6ZnQ3cCtwekNxc1d6TmdPdFhXV0xTQVdTcUdmZVMrcFZYQ0FpQlBVSkFCTmdlRGFhNklnUVdRaUMxQVozYUROeWYvdHJNM3RIQSttRFlsaFN4Z2Zzam9jMWJwOVRHTWJWeHc3V1J3MWdvNWJyTnRlNVhYMTVLT0w0MkttaHBlMk9XZHBSMUJ6TjdaR2FoTWZIckVqSnRXRjNLTWdnTnBDZG50RytyODdqdldtcjltRUkrWmNEM3F5d3h0MW5HR0RjNWlQaVNsSEtoclgxWFU0Uk9TUnQ5ZWJsMFFHZm52bzBzYllkMXhOYUhIenJyMEk5TTdZRG4rUmo1OGs5ZEVKVXJkZHBtUHdyVW03cDB3STJlK1VINzUwZ3BGemtSWUdIVVU5OVQzNU9wYi9SM0hSbjZ5UWFEdmRYMSs3b0pUY1ljcThvcDhLR05Sd0NMVUtvWjl5bnQwYk5DUUFoc0dBRVJZQnNlUERWZENPd0lnZFFCdGxXenVHM2w4SVQ3V290MERrZXFjYnZ2UzdrRVJHbGJVcHZybEFVRWd1bmNmb1lTMmxZdkxXMVV3L3hQNnl4R2Jod29yNVlzcW1sZWlpZ3NJVGhUWTFaRFpMU3lETnJxUE83SE5MVitsRVRwcTVrbi9UTXBrcUZtakdQRXlSUnRzYmtKc0I0VHJPOTRsMS9ROFBJaHRqN01TWGJHQ0xDVWxXVEtBcXRrTGFtWm83L2Z1V0xqaG5xS3dNTWl3TUtvMWhBaHFmVStOVjlLeG5pcjYzZk1BbXVKNzN6cXUxRXo3aVhqcHJ4Q1FBanNFUUlpd1Bab01OVVZJYkFRQXFtTnlBYzdjL1IvQ2JUbDZKMzRNR0d0ejVMWlZseHgyTmg4T0ROL0xGdUtJQ0d5WDhnaVlFcjF4K2hjaTA0VUtTQmxJUlU3eU0xcFFaSFQ1Mk9aMmNzN1l2SFNnY3dsMmxzNTljWHlwQTR4SmNSS1NuT2sxTzIwcFdYUVZ1ZHhMZ0dXR3hsMTZueEpqVW5wR05PZW1GWFpGTkgwRkFHR2Z0eUxJOEUwVHV6YzZuaGZjeEthaFhkcDRINmVXaCt3UENOeUhQKzJUdWdCL21hZzBKVDdYY3JhWmE3TGtyNjVJc0RDc3lHMS82Z2hRbHArTzFMemVJdnJkOHB0czZXRlhBaS9PY1k5TlZiNlhRZ0lnVDFGUUFUWW5nNnN1aVVFWmtRZ3RSRkpFVG8wallNUkZqRzRwQjBuMGRiUGRBTG5sekd6TDAzc1UrcFFNN0g0NnNkamVLVU92cW1EWEhXak1oOU1hZVhNYWVFeGJtTHEwSmh5ZXhxWGx4SXFMbkdSaTFrR2xZamYwOFl0enVNaHRxbjFvOFJWTlhPYUJyT2xBaDZVNlA2a1NOTXBvdWt0MWdIMmUxaTlQY2hkS3FTd1F6UHFZUk10d1ZMQzJhazJ6UFY3YXQxTWlkRFhrQ3dsZlVtdFpiSUFDNk5aTXpZcEFxeWx4ZDhXMSs4VzYwL0ovUGZsVFgwM2FzWjlhcHYwdkJBUUFodEZRQVRZUmdkT3pSWUNPMFFndFJISkljRDY1a04rRVhFdEpKVGI1M3V6bWVIcTkvMEovVTRkYWlZVVBlblJHRjRwdlpCU1VtZFNRejBQcHc1cVM3YXZkVnRPN1Z4bTBlN3lwUklYdVJpWlZtb1p0TVY1WEVLQUxYbVFTWW5oUDlQTS9qS1RCSW9kb212RjczdmNXaDVBMmZmaDR2ZGNGOEUxdENaZ2xYWE5oTzVPYWoxSnZaT3A1K2Y2UFVXQXhkdzJsd2pTa01KTkJOaXlCRmpKbmlZMVo3ZTRmcWVpcWk3eG5VL3RPNWY4YnFUR1dMOExBU0d3Y2dSRWdLMThnTlE4SWJCQ0JGSWJrZExOSW00cVdDVmcrUkZMVHpXelcwNXd5OW5peGpOMUVGcGk0eGtia3pXMUwwVVNmTjdNTG1SbTM4aDhwL2crUHNQTWJoVEluK3NpMTlveWFJdnplSzBFR08yS0JUd29JYTVpNVpRUWFiN3BscHJiS1VMSFYrWTVYVlM3azBmZUI2SWRYcTRUZkg5ZjVqc3p6cFphSHlxTG5meFlDcStZMjdrSXNIejQ5eVVLWk9tZUpvYlFGdGZ2MUh1OHhENGt0ZThVQVpiL1hpcW5FRGp3Q0lnQU8vQlRRQUFJZ1dJRVVodVJtczBpSkJnV05UZU50R2FxUllJMm5zVkRuWHhnRFJ2anZwRnprQVF0WE9UTzZpekpqdWRCczRSZzZSL2Y0anhlTXdFV0d4L2FmVzB6ZTM3aVRZaTUrdFZHbEJ4V09jZmNwdnp6bWRucnpjdzNOL3Y2cDFqZnB0YUg1QUl6VXdZUllFY0dOb1ZIN1RDSUFEc3FjbHRjdjFQdnNRaXcyamRFendrQkliQVRCRVNBN1FSMlZTb0VObzNBSEFRWWdPQ09oRkI1U0ZDZFBGUDB3TFR4YkQvdDFyQXg3bnVWMGlPcjJhU25OSXh5TEh0aTg2N0VqVklFV1B2NVM0a3BNWHpJcit1YkdWRWNReWtXTmJEVXhkVlh4MXdFR0hYaFd2NUNNenRhcEgrMWVtQ3A5V0dlRVUyWG1pSjhaQUdXeGpBbmh3Z3dFV0E1OHlRblQycmZLUXV3SEJTVlJ3Z0lnU01RRUFHbWlTQUVoRUFwQXFtTlNJMEZXTitHSEl1RUo1a1pndEt4QTZtdlR5a0M3S0ZtOXY1U01CcmsvNFNaZlRKUVR1b0FXVVBxTkdqeXI0cFlVL3ZtYWt2TXRZM0FEQmZ1TEJleDVQS2xtTVpVYmVqNExjN2pJVGFwOVdNWEJ4bnFKSnFwTDZVaW1iS1BRc2NROTJ4Zm1pSiszNWMzSndHV1kzMkxLK1Nsek96a3VyRWNBQUFnQUVsRVFWUkRoWXRINnAzOFZFZEEzdC9NZmxwWTd0VHNQemF6dDVuWlR3SUZpUUNiaXZDaDUwV0FIUlhITGE3ZnFmZDRpWDNJR3I4YmJkNFNsU0lFaE1EaUNJZ0FXeHh5VlNnRU5vOUFhaU15aFFBREhMVEFIaDVCQ1ZkSVhOUGVXSWprN2Mzc0VaRm5kbkh3VG5VaHRmSDhnSmxkMXN5K2x5cG9wdDlUNHJocmlnTDVHbWZ0VW5yWVRrVUlpN25JWGRBZHRBL3o0RjlyR2JURmVUenNmbXI5Mk1WN3lEeUdFRGs4OEo3YzNNeWVIUGd0OWl6RTBVWE43T01UMzc4NUNUQ2Fkakszbm9iNlQ1NVhPVkg4RUduazYySnFmVmppNEZ3RHZRaXdHdFNPK293SXNLTmlzc1gxTzdVUFdlSTlYdU4zbzgxYm9sS0VnQkJZSEFFUllJdERyZ3FGd09ZUlNHMUVwaEpnV00yODBoMGNRMkJocVhYNXpoTHNPd1ZvcHRvTjhmYklndktXeUpweTY4UHk2QUptOXRVbEd1T3BJM1V3VDFuUHRHeDJpcWlxaVp4RysxSWk5akVYdVFlWTJWMERuYXkxRE5yaVBGNDdBVWI3WXBaK01mTDBXbWIydk1BWTU3aFA1cndEcWZjczVkS1hVOGVmdTM3RTlvVzRnajQ3cHpDWEo5WHUwc0FVQlZWUHl2cDN6c280Vk1nVnpPeTFrMnFJUDN3YU0zdVhtWjBra0sxbUxZdFpIczIxVG9zQU8rb0Fibkg5VGtrQnRGaC9VcS9UZFJOcnp5NHVUbEp0MXU5Q1FBaXNGQUVSWUNzZEdEVkxDS3dZZ2RRR2Jpb0JSdGN2MHhFN3Iwdm8wa0FzUE5qTWNDWExTUmN4czdjNnpSOWZmdHlZYnAxVDBJSjVqdUYwMFRodytSSnVvSmMwczNjdTJLWmhWWHhET0JCZlp3WHRneENGcUFpbEtRUm5iUE1kRXJMLzNXNXN1QmsvczZkQk5lTDNmVEZibk1kRENGTHJ4NjRPTWpFeC9KQWxWMHcvcklYNGZZOWJpa2hxY1FDRjZFVUw3RXFSZHdqQ0NvM0dMMmF1TitBRENZak9tQzk5MTh5WXp5RVg4TXhxbW1kTHVhbkZMQUpiTk9hOGJ1MWdUSHlwTlFFMlIyVExZem0zNHBDbVorMmNuV1A5U0YyZXROalRiSG45VHEwL1AzUVhsaDlwTWZrRFpiRGY0MElwbEhiMTNaaXh5eXBhQ0FpQnVSQVFBVFlYc2lwWENPd3ZBcWtOYUl2TklnY250TDV1SElHeFZKY21kYXRlNnlJMzkwaW5yQkhtUG95bCtwZmFtTGFZRDZrMjhIdXNIYlY2VzMyOXAzYVJIRThhYUlqUERUSW1qSjRqbmgvcTgxYm5jZCtmMVBxeHE0Tk15dExQWjdFWEc0dVc3c21wQTJndG1UQ2VZeWtpZ1B5bEdvd3hLOGlwNzJYT3VsQ1Q1NnJ1NGlIMDdOeVhKU2xybDlZRUdHNnRGMitzZ1RtWDFkQWM2MGRxM3JmOGhtMTEvWTVaOC9HZVhObk1YbEh6c21VOGt5TFNLV0pYMzQyTTVpdUxFQkFDYTBOQUJOamFSa1R0RVFMclJ5QzFBVzIxV1R4ZEo3ejg5azU3Qi8ySlVDclJwVWx0eU9keUE1azZvcW5EMEs2SnU1VGwxUkx0UzFuS1RSM2JsTkQ1Mk5VdGxuK3FaZEJXNS9IYUNURGFGM05uZkwyWlhXVWtuUDVYamhEeXZlUDM2ZjZJVzJXTHRCUUJ4cnk5YnhkZzVPNlJScGRxTUtiV3J3ZWEyZDFhZ05Td2pKUUZWa3R5Yzl4c3h1QVpuWlhkalNMOXFTSEFVdVBRbWtBNGs3Tk1Qa0dnSDdXa2JXci9VZE9QSlFtd3JhN2ZxWXV1T1VsaExwNXdDVDVsNUoyb0dmZUdTNGFLRWdKQ1lFc0lpQURiMG1pcHJVSmdIUWlrTnFDdENEQjZpM1hURXhQZEx0R2xlVnJDcWl3bWFMNHI5Rk1IaVZaQzI3WDlTOTFvTDlHK21Qc2EvV3BCd2hGNGdYSjgzODB4d1JZVFJxOFZ2eCtPenhibjhSWUlzTmk0amQzRVloWmpyZWY4VWdRWVkzUmlNM3VMbVowbHNpQ1VhRENldzFsUG9tZm9TeTNlaDlxMUsvUmM2c0Q5c3k1b3dpWE03RDJ0S3phelZOMVVXVU9BcGI3YmtKQ1FrYTFTakV5bWpvTktnTkgzTGE3ZnFZdXVPUVBlcE9ZU21Jb0FhL1htcWh3aGNBQVFFQUYyQUFaWlhSUUNqUkZJYmFSYkVtQTVndmdsdWpTcFcvQVNpN0xHc0FhTFN4MStlZkF4Wm5hN0FqMjBsbTJQNlNEMTljemR2cGlBT1cxbzRTYWF1cm0vbnBrOXgzV1l6ZmpMQXlEWGl0OFBpOXZpUE83Ym4xby9kbjJRaWJuc0RkZTJtTlZJSy9IN0hyUFVHbEJMSm9UV2dSeEIvRndOeHRSN1UycFIxbkx0Q3BXVnNpamx1ZnViMlQxbldITlpSNTZWNkdRTkFaYXlhbXR4U2RBM08rZWJVRHRuNTFnL2xyUUFBNk10cnQrcGl5NHNtNjl1Wmk5dC9JS21YTlA3Nm5iOTNXamNiUlVuQklUQW5BaUlBSnNUWFpVdEJQWVRnZFFHdENVQkJvSTVndmk1dWpRcExTZHU5dEZ1ZXNmS2h1NVdab2FMUVNqTklXSmNBa0hxaHJaVXI2Mms3cE03aXhWY1puMXBpdUQ4dUx3WTBmWVM1MEwzaTRnTFV5dlI3NjNPWS9CTXJSKzdQc2hjc0xQdWVWdG5EWE9ZWnpJTnJaVmljNkcxSHM3U0JGaU9JSDdKTzUwaXFGL2tTSUgvS1hueFo4NmJXbk8vM3EwN0Z6T3p6elpzUjQ3MUhkWFZFR0FuTTdQM09nc3pYNU9udW9rUHkwd1JTdVE5eUFUWUZ0ZnZIRktZb0M4RTBmaFJ3M2NDUGI0WEJ5eXZoOVhzK3J2UnNNc3FTZ2dJZ2JrUkVBRTJOOElxWHdqc0h3S3BBMnhyQWl4SEVEL1hpaURuWmhyeWl6NStmMFZEbDlvdzA5UTN1MmhydTJoM3pzRnRqdmJ4RFh1VW1kMG1NbFl0cmM5aXJwYjlBZksvSTNvbHJTeUR0anFQdDBDQXhTd09lcUlaMGdOTnNQTjc1dDIvT2ZlNGJ6UmNQNVltd0doNkRvbVJhekViSXhXcEMrc1IzTTlmMEJDenFVV2wzS29wUC9maUphY3RPZnByZlRrMUJCZ3VxRmg1RVhVemxGcFlwLzZtbVQwbG9XRjIwQW13cmE3Zk1jM0RmazdkSXFLTG1QTWVEUE9nK2ZYR3pyTDY5QmtQaWdETEFFbFpoSUFRT0lTQUNERE5CQ0VnQkVvUldKb0FvMzA1Z3ZpNXVqUTVGbVZQTmJOYmR1TE1jMWdrbk1ITStCK0h4OXlVZXppYXM5MnB0dWJvdGJWdTM5WE03SVdkY1BmUkFvMXJiYVdSY3NmQThnY3JyN2QyTGxJY2NvWnBxdmo5dUl0Ym5NZjBJYlYrck9FZ0U3Tm9aSjRqZ2s2QWptTjY1bDFMOGZ1KytGMFFZTGxyVG80R1k2NUYyZVhNN0gycGhhYmlkMGlaYXpqUzhqdVp6K2VRRkZ5OFhETVJNVEt6T2t1dFpjTnlhZ2d3bms5RkZJYll2VlNuay9tVjNFWjc4dVc0ei9MWVFiWUFvLzliWEw5ekx1S3dERzN4SHJObW9QOTZ3OHk1dUlidlJtWlRsVTBJQ0lGZEl5QUNiTmNqb1BxRndQWVFTQjFnVzF1QTlRamR3Y3dlbm9BclI1Y201ekJHTlJ4azBRTnFSWUpSTHpmc2FNZmN3OHdlVWpqMEtWZS92cmhuTzgyckh4ZVc3OHQrWmpPN29wazlMS09zRTNZV01hODFNN1JtWWdtTExRU1hmNUpSWml3TDdZTDg4cEVRL1hOM05MTkhUS3huL0hpTUhNRk45Uk9CRy9EV1l0OWJuY2VwOVdNTkI1bllRUTlYVjF3a2ZTN0pyY1h2KzdtM0N3S011bkdid3dMajhNZzdsS3ZCbUhQZ3B5eGNxRDdaOEoxbERYdG1kNWdtd01FRnpBeFNQRGZsdEJtclFFaXdWK2NXNnNtSDJ6MXVvTWZMTEtPV0FJc0Y4dWlybm5KSlVkS1BnMDZBYlhIOXppWEZwNzdIWU1QNmV1UE05NEZzYS9odUZEUlhXWVdBRU5nbEFpTEFkb20rNmhZQzIwUWdkWUNkaXdETElWaHlkV2x3WFNMU1dZdzhZWFJlMFIyWU1Qdkh2YTAySGQwZDZpQmlUdXNLcWNVbzkzYjl3MDVUaDhoTU5lazRqdnhEQjZma3NIWFJ6c1htVFFIOXBHRTdjSWU4a1psOXRhSnhiSTV4ZVlTY0RGbCtVZXdjTHBlVUd5TkhxQk1MRXc3RTQxUTc1akdJdGppUFUrdkhHZzR5N0kwNGdHRUZPazRjM05HVnc2MXZuRm9LaVEvTDNoVUJSaHR5Uk5selhBRnpYZU1nbERqNDRnNkoxV1J0K24wblVvL0ZIcW1HY0tITkJMYkFlaXlXdUNTaG5yL3ZMamZRQU14TmZCdFlZeDg1V3N2b2QyeC9YckltRDlzU2kzSTZ6TWUzNmk0Rmx6KzBsZmY2ZVJuZjFMNmVtdkhnMlRuV2o1Uzc3eHhyTjMzWjR2cWRZNDFQMzc1dFp0ZHgrNEdTOXhqU0hjTDYwcU9YS1BWT3JPRzdrZnZlSzU4UUVBSTdSa0FFMkk0SFFOVUxnUTBpa05xQXpyVlpCS3FjRy9rY1hScld2anRsV21GeHVNRnE2L0dPM01nZE1peTJjQSs2YmZmc2lVWVAxV0xFZ1l4MjNEU3pFUy9yRHBIMzZnZ1ppTERVd1F4TTBOeTR0VHVVVVJlcDVMQlZnaXZ1UXh5Y0g1enBja043c1ByQ0NyQW5Fa013dEhaOUhOWVRJMGNnWU5GZ0E4ZGhtc3N5cUFUdnRjemoxUHF4bG9OTVNyZktOL2ZRc1VMbnJYWGFKUUdXWTZtU3E4RllvdW1EU3p0cko1YVRxYldyeDVzMTRwSXVJaTdXVHNOVVM3aWN5MTJXNUZobjBlYWJkRnFNSDB1UWR4QmZGM2ZXcWVmMFRCYklmYjRkcHdoTXBKSTFlVnhFS2lCQm56KzNMMXdJUUpoZFpWVFJaNXc3dUU4bmo2eTE0ekhIK3JFckFteUw2emRqbHlOMzBFOEhMQnYvdG5ObC9FSmlVVHlXczVDL2IzZTUxZTg5K2tjZzB4N3Q5bUdoWXRieTNXaTk5cXM4SVNBRVprQkFCTmdNb0twSUliRG5DS1Eyb0xYa1RnNXNPWUw0bEpPalMzTmNwOTB5dm1tTXRlTlQ3aGtPQjdpNjlkR09PTkRnYXNQdEtBZWJ5eWJjV2FaZ1ZOTnV5QStzVTk1dFpyZ25EQk1DOXJRWDl4VTJvZU5VZXRncUplbW83OTg3OTZUWHVmYU5SZnpQMWtVdjR6Qjdub1RGVjkvdVZob2tzWG1RNDBvMGZMNlYrTDJ2VFRYellaZnpPTFYrck9VZ2t5S2R4bU14aC9oOVgwZXFMYlZrUXM2YVM1NFVRVUNlWEEzR0VxMHJ5bVh0d2hJWDkrclBkV0w1ek4wK1lSV01XUDI1SGZIRkdoRktVekRLc1lJYjFzdDZ4a1VNT25FRXhlaFR2OVpld1hQSTcvUHdITVFmRnNwekVHQzVydlI5ZStnTFVmamVZMlkvSC9RRllwQ3hQS01IOEQ2b0FmMjhRV0JBYXNkamp2VWpOYituZks5VDc5alcxbS82azJ2Tk9lejdsOHpzNVo1NXhQZWRlUko3ZHhIV3grcVdkU0NVMXZMZFNJMjNmaGNDUW1BRkNJZ0FXOEVncUFsQ1lHTUlwRGFnYzI0V2dTckhCRDlYbCtZa1RrY0sxNzBsMDFTTWFqYk50ZjBySmNDb3AwYkRvN1o5dytkYTZQSGt0QVA4UTFFQXg4KzNGci8zdFc5TDh6aTFmcXpwSUlON21rL3J5emNHYzRqZjkvWHNtZ0RMMWY3SjBXQ2tMSVN0bjU1SmFPZThqemw1YWdtWC9zQ1BnSHp2VHBsVFgwMGVyS2F3Y3Y1WlIvcS9keVlDakhibHV0TFg5SUZuZWgyeHA0a0F5NEp3Uyt0MzN5R3NPZEc5TzB0V0Qrc3o5WE9KU3ljUllQVTQ2a2toSUFRR0NJZ0EwM1FRQWtLZ0ZJSFVBWFlxdVpQVG5oeEIvQnhkR3VyYXhlYXpCVWFRTUJ3d3JwNEQySVE4TlFSWWYyaDhrSmt4Vmtza0lwZGhrWUFseWhJcDE1VUk5MU9zQW5Iam1ETnRaUjZuMW84MUVXQTVVYzhZVXdpTFN6anJoam5HZU5jRUdIM0tFY1RQMVdEY0JRazJoUURyMTdNNVNURFdMK1krK28zb2w4MUpnTlZZNmViTzY2SDJJcHBvc2dETFEyNHI2L2V3TjNPVFlNT0FQbHY2YnVTTnVISUpBU0d3TXdSRWdPME1lbFVzQkRhTFFHb2owb0xjU1lHVEk0aWZxMHREWGJqK1BkVE0vanBWY1lQZkgrZWlJUDZnUVZtNFhpTFVqUzdXV0RlalFmRkhGRkZMZ1BFczN4aDB1eENTUmxoL3JvVE9DTllaMzUyckFrKzV1RjY5SXlOeTI1eVdRZU5tYldFZXA5YVBOUkZnTWIyM0lmWllBNktCTkRXeWFXajZyb0VBbzIwNXJvQTVHb3g5UHlHR245VlpnK0dXTjJmQ2RmSm1IUkg5MW9uQytxeXg2Qm5kcjNGamNaKzk2aUQ2NWR3RUdNMm5MNjBKUFZ3bDBVRHIzZGhGZ0pWTmxDMnMzK01lUWR4QlZKVklTZVNnTW80V3ZhWHZSazcvbEVjSUNJRWRJaUFDYklmZ3Eyb2hzRkVFVWh1UkpRZ3dvTXNSeE0vVnBlbkpHZ1NVRVprL2ZJYXhRWkNleUZwRERadFcxV0Nkd1dGbUxFUTh0WHphakFWWFNzQTJWUS9rRjRFRUlPdGlrUnRUNVl4LzUrQkltVk1QdHFYMWtoODNUL0M1WE9UaHVjVHZZKzNsdTc3bWVaeGFQOVpFZ0lFejJuaHZTRVRsbTB2OHZoL250UkJnT1lMNHREbEhnN0h2MjF4ckErVi95OHo0SGhHZHNDVTVDWEdIQzJjcUdFZk91dUs3RUZtQ0FLTnRyUzVRMEdtN214TXE1Ny83SkFJc1p3WWNPYy9hMTI5Zmp5QlQwYTBqZU1QVWl6Z3VCcS9yM0N1SDBTTzM5dDBvSDNrOUlRU0V3R0lJaUFCYkRHcFZKQVQyQm9IVVJtUXBBaXhYaURWSGwyWTRPSDJFTGpaekY1ZzRhcEJkYUZnUTF2czdFOHZLZVJ5WHJUdWEyVjg0Z2libm1YRWVTSnRudU1NTWJqa3RFNVo3TnphejI1alpIMVFXakdVZmd2bU1UMG1FdU1ycW9vOWR5eDJ1UTVubUZMOVA5V2V0OHppMWZxeU5BRXZwdlNIdWZHRW4wcHdhazlyZjEwS0EwWDZpK2lIUWZzeElaM0kxR0lkRnNEYmMyVmxxNVVSY0RGVVBBZk5TZHlFdzUvckErNFhMOVFNcmlERFdNS3htZU5aM0liSVVBZFpqU0gxM2QxYTBwUmNVc1NoL0lzQnEzL2hENUNSRTY1YjJJZjA3L0RjVit3L0lhaXdya1hYd2tkVmIrMjdVajd5ZUZBSkNZSFlFUklETkRyRXFFQUpDWU1NSUhNUE1MdUtpRkYzS2tUWW44dlRueDg3OTdsODZLNnlQT0l1a0R3eWlSQzROQVp2bk01Z1ptOFlMdVFoTEhITEdoeHZhL1Eybk40T1Z5ejkxNUJrSCt1SE42MXh0L3oxbnhZZTFFZ1FDRWRLT1A2cU1nK0xYelF4TEw5ckh3UnQ4aDFZR2M3VnZuOHJkNmp4ZXd4Z3dUOThXc1FyRllwUUQzeEx2ekJyd21Mc043RXZSRnNLeTh2SXV3aU51Vmo3TEV0YUdiem9pbkFpMzd6U3pMNXJaTCtadTVLaDhYRGlKWkVkN3orYzB2SVpaV0s4Z0JWbGZzUnBsUHYwMDBzYWxDYkMrS1dCTVFKZ3JkUkVzK2Q0UmNHWWNHUmd0TlhEK1I3Y21qNlAyTGd6OWdhaHVhK3MzOCtnY3ppSWRDUVNpbVk2LzdSQmVIM1Z6aUxsRUFBaXRvUWRpT3F1VFFtRDNDSWdBMi8wWXFBVkNRQWdJQVNFZ0JJVEFPaEdJV2ZuTkxYNi9Ua1RVcXJrUjJCVUJObmUvVkw0UUVBSkNRQWdJZ1owaklBSnM1ME9nQmdnQklTQUVoSUFRRUFJclJDQ2w4emEzK1AwS0lWR1RGa0JBQk5nQ0lLc0tJU0FFaElBUU9KZ0lpQUE3bU9PdVhnc0JJU0FFaElBUUVBSnhCQzdvM05VT0MyUWo4dWlUQmFJUWFJeUFDTERHZ0tvNElTQUVoSUFRRUFJOUFpTEFOQmVFZ0JBUUFrSkFDQWdCSVhCa0JOZ2ZQZFpGR2ZWaDh6V25selExUXFwd0Z3SmpCRVNBYVU0SUFTRWdCSVNBRUpnSkFSRmdNd0dyWW9XQUVCQUNRa0FJQ0lITklrQkUxWGQwVVZ4UEd1aUJ4TzgzTzdTcmI3Z0lzTlVQa1Jvb0JJU0FFQkFDVzBWQUJOaFdSMDd0RmdKQ1FBZ0lBU0VnQk9aQzRGYk9Bc3hYdnNUdjUwSmQ1WUtBQ0RETkF5RWdCSVNBRUJBQ015RWdBbXdtWUZXc0VCQUNRa0FJQ0FFaHNFa0VqbXRtQ055ZlA5QjZpZDl2Y2xnMzAyZ1JZSnNaS2pWVUNBZ0JJU0FFdG9hQUNMQ3RqWmphS3dTRWdCQVFBa0pBQ015SndMWE03SG1SQ3E1dFpzK2Zzd0VxKzBBaklBTHNRQSsvT2k4RWhJQVFFQUp6SWlBQ2JFNTBWYllRRUFKQ1FBZ0lBU0d3SlFSTzJGbCt2ZGJNemh0bzlDZk03RkptOXMwdGRVcHQzUlFDSXNBMk5WeHFyQkFRQWtKQUNHd0pBUkZnV3hvdHRWVUlDQUVoSUFTRWdCQ1lDd0gyUkhjeXM0ZEVLcmkrbVQxN3JnYW9YQ0VnRFRETkFTRWdCSVNBRUJBQzh5RWdBbXcrYkZXeUVCQUNRa0FJQ0FFaHNCMEVybVptTHpTem93V2FURlRJUHpHejcyK25TMnJwQmhHUUJkZ0dCMDFORmdKQ1FBZ0lnVzBnSUFKc0crT2tWZ29CSVNBRWhJQVFFQUx6SUhCME15UHE0eU1qNU5mL210a2ZtOWtiNTJtQ1NoVUN2MEpBQkpnbWd4QVFBa0pBQ0FpQm1SQVFBVFlUc0NwV0NBZ0JJU0FFaElBUVdBVUM1M0xrMW9zNi9hNjNtOWwzWEt0K3g4d3VZMlovYTJhblNMVDBNWjNsMSszTTdKZXI2SkVhc2M4SWlBRGI1OUZWMzRTQUVCQUNRbUNuQ0lnQTJ5bjhxbHdJQ0FFaElBU0VnQkNZR1lFL2RNVFhNU3ZyZWJPWjRSNHAxOGRLQVBWWUVRSWl3SXJnVW1ZaElBU0VnQkFRQXZrSWlBREx4MG81aFlBUUVBSkNRQWdJZ2UwaE1JVUErNHl6RXZ2UzlycXRGbThVQVJGZ0d4MDROVnNJQ0FFaElBVFdqNEFJc1BXUGtWb29CSVNBRUJBQ1FrQUkxQ05RUzRCOTNzeXVaR2Fmcks5YVR3cUJZZ1JFZ0JWRHBnZUVnQkFRQWtKQUNPUWhJQUlzRHlmbEVnSkNRQWdJQVNFZ0JMYUpRQTBCOWg0enU2YVpmWFdiWFZhck40eUFDTEFORDU2YUxnU0VnQkFRQXV0R1FBVFl1c2RIclJNQ1FrQUlDQUVoSUFTbUlWQkNnUDJQbWQzZHpCN2JpZVAvWkZxMWVsb0lWQ0VnQXF3S05qMGtCSVNBRUJBQ1FpQ05nQWl3TkViS0lRU0VnQkFRQWtKQUNHd1hnYk9aMld2TjdLU1JMdnk3bVJIcDhVbG05b1B0ZGxVdDN3TUVUbXhtTHpHelV3YjY4dUp1anQ1K0QvcXBMZ2dCSVNBRWhJQVFXQndCRVdDTFE2NEtoWUFRRUFKQ1FBZ0lnUjBnOER1ZFpkY0p6ZXpzWnZaYlp2YmZadlpSTS91T21mMW9CKzFSbFVKQUNBZ0JJU0FFaElBUUVBSUxJaUFDYkVHd1ZaVVFFQUpDUUFnSUFTRWdCSVNBRUJBQ1FrQUlDQUVoSUFTRXdQSUlpQUJiSG5QVktBU0VnQkFRQWtKQUNBZ0JJU0FFaElBUUVBSkNRQWdJQVNHd0lBSWl3QllFVzFVSkFTRWdCSVNBRUJBQ1FrQUlDQUVoSUFTRWdCQVFBa0pBQ0N5UGdBaXc1VEZYalVKQUNBZ0JJU0FFaElBUUVBSkNRQWdJQVNFZ0JJU0FFQkFDQ3lJZ0FteEJzRldWRUJBQ1FrQUlDQUVoSUFTRWdCQVFBa0pBQ0FnQklTQUVoTUR5Q0lnQVd4NXoxU2dFaElBUUVBSkNRQWdJQVNFZ0JJU0FFQkFDUWtBSUNBRWhzQ0FDSXNBV0JGdFZDUUVoSUFTRWdCQVFBa0pBQ0FnQklTQUVoSUFRRUFKQ1FBZ3NqNEFJc09VeFY0MUNZQjhRT0tlWi9jVE1QclVQblZFZmhJQVFFQUpDUUFnSUFTRWdCSVNBRUJBQ1FtQy9FUkFCdHQvanE5NEpnVGtRT0tHWnZkYk16bXRtN3pleis1blo2OHpzZithb2JBL0svRzB6dTRTWkhjdlRsL2VZMmRkbTZDTnIrd25NN0RCUDJkOHpzNS9PVU9jV2lyeThtVjNGMDlBbm1ObUh0OUNCSGJmeHh0MjdmLzQ5dys5c1puWnp0NGI5czVsOXk4eCt1V09jVmIwUUdDTVFXdE4vYUdZL1doaXVZNWpaOFVkMS9zTE12bU5tL0h2UUVtdml5VDJkL25IMzdYK2J1eXc4YUpnY3RQNnkzN3FvbWYzbXFPT2ZNTE5QSGpRdzFGOGhzSFlFUklDdGZZVFVQaUd3UGdUKzFzd2VQR29XaDhhSGQ1dkFwN3ROOFBwYXZic1cvYjZadmRmTVR1RnB3cCthMlN0bmFOcnZtTm1yek96aUM5WTVRemVhRittYnUxUXkxemcwNzhDT0MveDdNN3ZCbnMycHZ6S3pKdzM2QkpIL2RqT2pyeTgwcy8vZU1lYXFYZ2lBUUdoTi83OW05cENGSWZvVE0zdkZxTTR2ZHlUeUJjenM2d3UzWlEzVmhkYkZnNHpKR3NabHlUYjhvZnR1SEhOVTZTN2V6eVg3cmJxRXdDWVJFQUcyeVdGVG80WEF6aEE0aTd2Ui9GMVBDMzVtWm45a1p1L1lXZXZXV2JFSXNQV015MTI3RzlvSDdCbUJzeVM2KzBhQXNRZDZocG5keUFQaVM4enNXbWIyOHlVQlZsMUNJSUNBQ0xEMVRnMFJZT3NkbTJITGhsYVVTSGo4WjhObWl3QnJDS2FLRWdKekl5QUNiRzZFVmY1U0NKekp6UDdCekI1a1ppOWRxdElEVmcrdWZGaEVYQ25RNzhlWTJlM2tQblFVZExaR2dCM2R6UDUzVDhkeDN3aWNwWmVnZmNNUEl2K2Z1blh0ekI0Z2NZdDg4dElBcXo0aElBSnNjM05BQk5nOFErWnp0VVdDNC9CQmRiL1JXU09lMjh5TzUvN0cvZ1V5Q3BkRUVtV2N5Tk04MW4zMnNxM2NodzhLQWRhUENZUThGK0pJZStBQ3pEZzhWdTZlODd3SUtyVTlBaUxBMm1PcUVwZEg0SUxPSEovRERPNHIzTnEzSnNFZWFXWlhYNzVyUjlUSUxkVjF6ZXhqTzZxL3I1WUQ0Uk1EYmZnM003dU1tWDExeDIxY1kvVmJJc0RZek9BT2hobi9UYzNzdTJzRWRFS2JmQWNWYm9KeEZVWFBUaW1Pd0w0UllCZnB4djZ0YnZNKzdQbC9tZG5Gek95RG1oQkNZQ1VJeUFKc0pRUGhhY1lXQ1REbTA3RXpJRVZIOU96ZDVmSnZKZktPaVNoZmRzcjVBODhQSVpJcW8zblZXVnE3cDI2UkFJTTA1R0tiZEVZejR3dzFITWZqZGxJYTUzRzZaaWZ4Nkp1TndiK2VtVDJuZWtUMG9CQllFQUVSWUF1Q3JhcWFJOEQ4aFpSaXdSMEtUODVCZ29VMk9NMDc1U2x3RFlleGMzVUh3cmNNYnRtR3pjUmFDR0h4c1NiSUV0aHNvWTZ0RUdCc2hMakJRK2ljOUxrdXl1ZTE5NHdZOHIzSGEzaS90akNQYWVPK0VXQWhUVGpFOEMvWFdiUitmeXNEbzNidVBRSWl3Tlk3eEZza3dBZ0k4NXIxUWpwN3kxcGZmTTFKZ0lVQ1lJeXQ0UUR0TkdaMnVnRjYvUDh6dVA4UHVjVitkSzcwd000STRXNXpGYTV5aFVCTEJFU0F0VVJUWlMySkFHYk9kNGlJdjNLb3ZXWVhxZkRWalJwMWtBa3dib0hRdzdsMEFFdTVQc1luMlJZSU1Bamt4enVycjJGdklKTnZZbWJQMmdPWHlOQUJVZ1JZL2lLNVR3UVlWZ2VzYTFmd2RGOGIrZnc1c1lXY0JMa0l1ZTYveXhHN2ErK0hDTEQxanRBV0NUQmtROTQ1Y0JWY0w3cnp0ZXhxRGIxRldoQmdUeHRjUU03WDYvbEtobEFGMDRNYVpYdytaRlZ5Y3dSRWdEV0hWQVV1aEFCejkwNko2RWU0RGw3RHpON1VvRTBIbFFBRFo2TFljQ0QwSlNJKzNiT3htR2lENFRwS0VSQTVpUFB2d3FWdjdRUVk1TmZmbVJrdXJxSDBLSGV6eDYzcFZ0UHh6ZXdOenFSLzJJZldyaEJieFNlbjNmdEVnSEV6RHZtQmE4Y3cvZExNTHR2b3U1R0RxZkxNaXdBWE9LOTNPalhqbWhockNORFh6ZHVFSnFXTEFHc0M0eXlGYkpFQUMzMFBad0ZvcFlWaXJSVGEyNVkydVFVQk5vNUlYTnFHWGVmL2ZMZkh1cENaZldQWERWSDlRaUNGZ0Fpd0ZFTDZmYzBJNUpKZ1Yrd09OTytlMkpHRFNvQnhtNFB3L2RFbTRyZnJ4M2RwNWJNRkFvemdFVmhVeHRLYnpReU5oLy9ZOVdCVzFuOHlNM3V2bVoxMDlQeS9PZzJ3YjFlV2U1QWUyeWNDREYzRlozc0dUL05odjJiMEh6dFhMOTkrZDB1dXJpTEExanN2dDBpQThUNncvbDFudmJCNlcvYTlrWEE5bDVzZkdMbXJjL245TDZNSXZ1alVmbWRRNGc4YkN1QlRiQXNDakNqcVhOSnQ5V3dPcGhmdEpGRStzckU1cGVZZVFBUzIrcElkd0tGU2x3TUloRnkzaHRuNUdLTG44cjRKS0I1RUF1eDg3dWE4ajY0ekFiNmRQM3JRQ0xCWWREdmNnVjQ1R2hHK0JUYzBzNmNueUU1dStIQWwrdVRPUjdTOEFhRU5hdXRvVU9VdDI4NFQrMEtBb1lXQ1d5OEJVOFlKVitDL1dkRGxONlJEdHVTczJOZDNJRGJPNE1zNFAyNUJvSEc3cGM3VFY5VEpYb2UxbDdWOW1BalV3R0cvSkdFSi9XQm51YzMzSFN2dlBtcGVUam1uY2tGdmhubC9abVl2N2l6emY1eFRRQ0RQc0YwVGlsbjgwUzBTWUlCMCswNEkveEVGYUgwcjR0N21JNktHUlgvWXpMNXBabGllUGRTako4dmN1ZlhnQWJSbG1RK1V1NFhVZ2dBTFdTWHZxdjk0ZVB6Y2pRUHJ6Qy9Nakw4UmtJdS9mOEtSaUx6N2pCVVd0VXBDWUJNSWlBRGJ4RENwa1FrRWNraXdyM1NiUkE3K2ZJUnJVbWlEdzhieElUVUZlcDRKV1FydGdydzVwWm05c1hLajNnaU9wc1hzQXNPK0E3dXdBS3V0a3h2SUZ3V0NIZlQ5YWEydjEzU2dJNFZkMVdrK2piUDhneVAvbG1ySGx1dlpGd0lNSzBEY0gxbm5obWtYTG5FaXdPWjdJMkk2UjE5ejFncGZtSy82bzVRY3N1SmFzQWxIVkRWMCs0NTlLM2JacnFYcm5sTGZWZ2t3Q0ZrSUtSS1dWVXRvTjRYbTI5YS93eTBJTUtKeW9xTkZkT0lXYVVoWWZ0ck11TUFrRFMzay90dk1QbXBta0ZoYkl4MWJZS1F5RGlnQ0lzQU82TUR2WWJkVFF1MTArVFB1MXZKTEZmMC9TQVJZRHBZVkVPNzBFUkZndjRiZlp3RTJISnh6dW9pZUo0K01HQnVsMnpqaC9OeGJ2L04zRm1heE11ZWVJRVFxOWJsN1BOZk1YalozNVJubHY2Y0xRc0NoZk0xcFh3Z3czb0dYZTREK2dabEJTTTNsRGt1NUNFOXplOTRuRVdEenpmaGJ1Y2kydmhxV3R2U2pEU0xBNG1POVZUM0dyUmZyeGFRQUFDQUFTVVJCVkJKZzg3MTU0WkpGZ0lXeDRVeithQmRWSFl1cTN1cXFmNkszb3V2L1ArOExsL3Q5aXJsMVl1R0podXNVSGRkam1SblduN2lUWWcybUpBUTJpNEFJc00wT25ScnVRU0RIYXFtV0JEc29CRmlPTlYwUFBTUUk1dEQ4dSt2RXdhSy95ZlMxcGJVMkFXc25XSEZybGtxMTFsaXBjbU8vVDYwVHZTeElvZk1rR25HZkRvY0haTG9wN05LTmVBcVdTejJiSWlhWGFrZXNubjBnd0ZKdWNYUGk3SE0xRkFFMkQrSXg4WHNJeUVzNk1uS2UydjJsaWdDTG95MENiTW5adUp1NlJJRFY0ODYzYTNoNWtpcUpmZXJabkpjS1dvaFRQVmI2Q3dVc3krNWlacytmNlBLY2FyOStGd0t6SVNBQ2JEWm9WZkNPRU1qUnJVTE1HM0gzN3hlMDhTQVFZRWMzc3pzWFJNV0IrTUtpQnBIOFhDdWdBc2l6cytMbThpb3pRejhobERoa1BxeEJPOEVJU3laME05Q3pRRU1vZGFNMmxZektCbUtRc1VXZDNCZyt6MFhFaTdYaHJtYUdpSDRxaVFDTEk1UkxnUEhkWm13T1N3RSt3KzlFQzcyNnAxejA0M0NaWGpyVmFJK2Mya1dFSFFkRFdLTHRJc0NXUVBsUUhXc1V2eGNCRmg5L0VXREx2Uis3cWtrRVdEbnlaM2FXWWNjeE00SjZEY1g4ZmFXeFIwRDNtSDBaRnYxOTRzTDZZbDB3bzgrV044Rk8zRDM3bGs0aTR5eURaemtEUE1ucENRNHQwU3FLMXlOQ1lGa0VSSUF0aTdkcVd3YUJuTWlGcFNSWTZQQitjek43Y3FOdTdWSURMQ2VpcHErYmZBQ3ZHZEJXYWdSTHRKZ0xPbmU5c1REdzhLR25tdGt0TTYyVVFwVkJmQ0ZBakhEdzRTNFRwQjlrd0VzVEhXMUJScFZpR2F2ekNoMko5OXJNQXJHaWVGcUE5S0NJa3ZkSUJGZ2M5RndDYkMySDZNd3BOR3UyR3ZIMlVQVEhXUnZxQ2k4aHdCQi9iaDF4TldRcFc0UGpFbmpWMXBHeThsdGEvTDd2UnkxNWZWNm56ZWdqdmU5dlprOG9CQXIzSlE3Ui9NdTM3WVR1MzFReGZBK0lISWpla1M5QlNITXBWaHQxZTlpdVZGdlc5THRjSVBOSFF3UllQbFk5OFhXWndTTzg3L2RNWE9heXp0eTNzeGE3dTZlcXgzU1gvN2VydUF3bUFqaUJZM3lKeXk4MFZuK1UzelhsRkFLN1JVQUUyRzd4ViszeklKQWljeUJ0aUg1RDlLY2NQL2JZZ1RQMzBKclQwMTBSWU9BRkhnK1BOSkxRektjTFdGbHhVTU1TS2tVRTVXQ1FtNGMyWDkrUk03Z2loaEtSaFc1U2FPMDNMb3REQnpwUkVLdmpsSE53WEJNQlZxT0Y5dHRtOXFqTzNmV3ZScDB2ZFNjV0FSYWYzYmxyaVFpd1grT1k4LzROVVdjdTQ5ckw3Zmd1VWdrQk5vY285Sis0QzRPYWRXd1hlTlhXZVZabjVlZUxZTHdMOGZ2YWZ2QmNTdHBocWx0VGJ0dHk1UkZhUk4zT2JWTXFYMmkrMTN3SFkzV3RuUUREWXZpaVRyWWhoZG5jdjRlaVFMNmpzMnpHd25nTmlUMHQ3VUdIaThRNndyY2psczd1dmkzamZEa0V0UzhBQWQ0c2IvUFV5OXk5bEpuOWM2STk2SzFpc2NXK2ZaaHE1ajRFT1plbUVQSGpCT2xOOENUd1VoSUNtMEZBQk5obWhrb05MVVFndEZtcmlXQVhDazJNNjl2Rk81UGs5eGUyTFpSOUZ3UVlhd0RXVWR3S0hTM1FzSjVFNG9QOHVrQStOZ3hZVnBCM2JuZElOaGpvVG5HTEZVc3R5SysrZkc2M0tNKzNabDdiYVNHVWppdjVjMG1QMGluV2VpN3hQbUZPZndmWGtKcERqZ2l3K0NqbXpnVVJZTC9Hc1pRQWl4RWpwZTlZVFg0UllEV29sVDl6Nys0N2RLL0FZN3NRdnkvdndhRW5jZ0xTTEVHQXNmN2ZMWUxwdUg5VG8yN1g0alYrVGdUWUlVUkNFUXBiNGJ4djVZeEpvcm4zTHI1dmY4eUtLOWZpS2hRRWhFamY3TmZadCtla21QWFgwenRMWlR4aFNyVEpjdXBVSGlFd0t3SWl3R2FGVjRYdkdJSHg1cEhJSlJBWm55eHNWeWhpR0RmSkYrZ3NqTDVhV0Y0b2UydlNJdFdzSFBKcjZPS1dZMWxYR2hrdzFjYng3MFNnd1JvTDE4ZFl3azJEai9LUFN5c0k1SThKS25NVGgwVkpTRk51RnhaZzZLSVJiWTZiMzJHcXVmM3JuKzhQUWJkMitqcnZLOFEyNXhhMXNNaXM3RmdBNGc2UVNsZ0czYlpnVTVncXIvVDMzREQwSXNCK2pXd3BBUllpUmo3Z1hMZDhMaHk0bjNBQUdxZjNPaXZVa2pYR3Axa1dFc0dYQlZqcEczUW8vKzg1eTRuZVZYMVlDdmhmb2x1dmliaTY5cFJyY1FVQmhnNFBHcGVJVXIrMThTVlU2cnNmd25FTkpKZ0lzRU9qSXdLczdHMWZBd0ZHaXdsR0JObmxXOHR1NGQ3N1dNOUNheUZlTUdnazV1aDJ4cXkvcG1pS2xZMkljZ3VCeGdpSUFHc01xSXBiSFFLOSt3RGlxdHhpbEdxcXhMUkVJSWV1M0pCa1daSUFRL2NEYTU2SFJFWU1rMmIwdllhWWpTMkJmSS9qTHNkdGNVb2N2bVN5c0ZiUmxxZVlHVUtnc1RSSC9kU0hteWVpOEw0VXN3TGJCUUVXMnZCT0ljRG9OL01HdmJWdmxBemVEdlBHRHNPK1p0M1JCVGpZWVpPVFZZc0ErelZFSlFSWWJDNFF6UlJ5ekpmbWRoc1VBWmFjOGtVWll1djA2ODNzS28yL1RVV055OHhjRXBDR2FHd2NhUHR2T1JicGtQNGZhMENFaGVRUlB0cEpIdUR5TlV5MDRhZG1kc3pCSDcvZHVXcGR2dFBQaEdEZVJSSUJkZ2gxRVdCbHMyOHRCQml0RGxsZmZiNXpPN3kwbVgweDBiV1FGVmp1V3NoRjhoTURkU3hoZlZvMmNzb3RCRElSRUFHV0NaU3liUm9CU0RBaTl0VVFNakdYbVFjNm9xY1ZPRXNSWURudURKOXcwV2ErNU9sY3pzMDBOK3lJNGFZK3pqbllZY1hFRGZjMUVwbEx0ZDF5Nmg3bWlSMmdZMVpnKzBTQWxXSzJ5L3g4MzlpZzhaN21waHJYenR5eVcrVTdSaWRnallqMzZWc1ZXRkFPMWxCWVlZNFROOGt0M3ZXQ3BoeVJGUjI2eDdxRGQrclpFREdTSW9WRmdLV1FYYy92S1kyM2xMdjZHbm9Tc3JnaTJqSjdHYUlRRHhPV3E1ZDBPa1hqdjJPdFcydWhIaUsvdVBqREloSUx4V0hpa2hFTDhQODNha3VON0VTcmNSQUJkZ2hKRVdCbE0ycE5CQmhyR3U4K1FaakdLVWZRUHJSdnpRbmk1SXY4MkxjQm9oMXlPeFdSc2d4NTVSWUNDeUVnQW13aG9GWE5KaEhnL2NDYWlFM2RPUEh4dUt5WnZhbGh6NVlnd0VLQzVzTnV4TWl2UGgvbGNQQzhjYVQvUHpDem03bVBkNDB1R0xmZ1dIMUJmcVdzdnRpd2NMaDVaWU5iNzlpUWhtN1RZcHVKTlJGZ1AzUml1QjlwT0cvWFd0UzVuQWlzVHdpYkRTWFdDWC90YVh5cHVQOWErejlIdTBKYUtMbjZaWE8wS2FmTUdER1N1Z2tuK0FOcjBEaVZXSi9GMmlnTHNKd1J6TXVEYXp6QzBiNW9pVWdnNFA2NFp1dlZFT25FbW9SOEE0RjcwQjNOVFZ3S29YbEdORGkreDdrcFpJSFdyNDFZZjcxaVZCZ0VHSklRRjNMZi9LR21LTzJZV3g3QjF6Y1JZSWRRa1FoKzdzdy9sRzhzZ3I4TERiQmhpd2xnd0ZsanZLN2xDdUtIOXEycGIxam91UklYeWpMa2xWc0lMSVNBQ0xDRmdGWTFtMFFnOU5HaE15bmRwNW9PaDRpU1ZtUWJteUJjK0NEdVFpbUgvT3FmeFJLTXFEMllTTWNTTjlTbE45R0VmMzVtSU9yTXVLNFBkN3B1Zjk1Wm5IMjZCdlRDWjA3dG90MmMxUE5jNkNDOUpnS3NQNlNnM2JEUEtTWWUzZC91b2xGRGxLU3plSUFZYXQvdE0wNmxmZHNxQVJaYnkzRXhlVTRFaUJCQmxUbzg1R0lyQWl3WHFYZys5ck5jeWhEVXhaZGlicTV0V2pDdGxCRDUxVWRaKzVDWnZjcERnR0dKaGVhakwwSmIzNktTeTZpUXpBR0hYdHhISWI1OHhGTC9iVUV5NFU0QmVRVys2UnlxUzNUenBxQXFBbXdLZXZNOEc5b1B6YUY1MktvSE9mcWxyYU5BRHR1T0ZBdVhNTDRMWjlZRUxvcGpIaTZoZld2czRqWVVSWkoyOFI1enVaMHJvdDlxSEZTT0VHaUdnQWl3WmxDcW9EMURJQlY2SEJja2JtTmJKa3lWMzkyNUZoQjFjcHhLbzdhTW4yZUQvTktBbUdhZkY1ME9OcmdsTGhNNVdtS1V6d1ljYXhzc2IySWZUUVEzMGVKaGs1eVRIdDdwbjl5ejByMDFwL3h4bnRnaEszUXJ0Z3NDakxEVWIvQkVyVHdJQkZqS1JaZU5KTzh2VVl0aXhFakxLS0kxYzIyTnoyeVJBSXZwT0JMSWhEbndoUWpZSXNEV09CT1AycWJZNVFTdXpZenp4MWZhbFpnc0FmTVBnZnRqQlFndzNMejVEbDdONVR0RnBJK3B5eWd1RHA3VzRYUjFUeGw5T3pnMHh3Z3dMbGRpYS9DU0YxWWl3TlkzNGJkSWdPV2dHSEl6YmFXVEZTby94NVdSOXZzQ3dHQVZTelIxb3JzUFV5d0NwWVR2YzJhRDhxd2VBUkZncXg4aU5YQUhDS1JDajMvV3pDN1YzY1pnUWRJeXBjU3Q4Ym0vWHllOHowM3dMeElWRHlQS3NmR0gvRUs4UEpSOGd2ZTVmV01kWWFPSmRkbFFBTmYzL09mY3pkRTRVaFV1amtUZ3cxV0R6WE1xNGI2R3hoaG00VFh1bGFueVk3L0gzR3lJd25YOVVVam9IQUlzbG1kS1c1ZCt0dFZtcjdiZHFZaGxZK0hZVkg1Q2ZFT1cxZWdIMXZaaHpjOXRrUUNMNmQvZ0hzYjR4dFlRRVdCcm5wRy9ibHZJWFljY3ZuVjVMYjJLeVJJODFWbTBjV2tVMmg4TTExektZajdmUC9JZEpYb3ZVWXNoQlljSmJUOHUyczdqQWVZUlpvYllmbjk1bFNMQUtDSkdwbEVPQVVkNC8xSjdtU25qdEdzQ0RJenYzTGwvc2grYk00MWQ5dWFzYTJyWklzRHFFQXhkdm1LTmRZK01pK3VobmpHYW5UekRXdUQ3OW1FVmp5dTU3OHlRRTMyeXJvZDZTZ2dzaUlBSXNBWEJWbFdiUUNDMmFlczdNT2NIZ052WG1LNVdEb2hZdGlDSyswNlgrU1RPOGdvaXpKZGFXYnFjb1hQRmVJR1puVE9qa1pCNWJOUS81YXk5N3RxNVRMQjV6MGxZM2hGbHNrVFRKS2ZjM0R3eFBTR2ZwWUVJc0Z4a3ArZkRDZ0lydzZIK3pMQlV5TWxuajZwSldZeVJIemZmcGR4MnBxTXdYd2xiSThCaUZwdTRscUVKUmNDT1dCSUJOdDk4YWxVeTMyMWMwTWNDOFpUUEFlOEtIaXVIVm5WUEtZZHZNK3NMMGR6R2FleUduVU9BOVdXRUpBU3dVc1pkNmlXanlyalE0OXZ0Ty9BT1NiaitzUndDakx5TUMrVGpId2RBWWg5d282NU4vem9GeE1penV5YkFadXJXVVlwTkJmSllxaDA1OVlnQXkwSEpuMmRJWXVHS0RMbktIam9uWVFuTnU4LzNMbWJ4SEhPM2hEaERpL0JIT1JVcWp4QllNd0lpd05ZOE9tcmIwZ2lraUNMYU03YzJFR0xTTDUvWWNaL1FPZnBmRUYwUVk4UFVXcE1EY3VpKzduWjNZamVPOG5qSWVxeDFQVG5saFNMSzhleFlhMFlFV0E2aTAvTHdMV056OTl3SStlVTd5UFcxcGx5ZVc1SEUwM3E1KzZlM1JvREZvdmlteE85N3RFTUVHQ1FDNndBWERsT1NOTUNtb0hmb1dRaVcxM2hjdnZsdERyM082UzAyUXpNSTB1bHdUMkcrUUJ3bEJCaEZJaytBSGhydWtiMVY5ZEQ5bXp6OG5mbUhaYmt2aGZZN3VRUVlaYVpJTVBKd3FZV0xWdXVJY2lMQVdzelV0bVdJQUt2SEUzSUtTMWUwU3o4MmsvZERTQlppQ3hHeTY1SFZrd2NPQVJGZ0IyN0lOOWRoQ0JWdTZkRy9xRW00eW1FSkZUdWs4QjZnbWNUaE9lWW11TVFISU9VR21ZTkJTT2RwN05vSlVmT0FHWVFzd1JPaTdTbG1kdHFjQmlmeTRINTJMN2RKWG9zcldpaTBORjBaUnhzVEFkWmdFa1NLWUw3ZDBNeHdWd3haZmhIY0FTdUhiMGJLT1owN1JKOCtrS2RHSTIvZW5pOWYrcFlJTUFnQXdzU0hSTkdKR290MVNpck5UVkROWGY2d2Z5RkNvSldnZndyTE9YN24vWCtHc3lUeWxUK0hYdWVVZmpBdldhOGdvM3p1L3FFb3RLVUVXTi9Hbm1qai8xOW00Q3AxTWlkbTdiTStJMi9zc3ErRUFLTXM5bS8wbDRBVG9ZUWJIKzhyWkZ3cjYyNFJZUGt6TmJRTzVaZXduWnh6U0RWTTFRRERjOElYbFhwcFZDL1d5Wm1jMFZNcGtpOWNHcVVrUjFpL0NFYnkwNlVicnZxRVFBa0NJc0JLMEZMZVhTQXdWUnNwdGJGSGV3b1NLQ1c2SG5JZG1BTVRORGhlbXlEall2VkMrT0h5Z1NYWU9HSGxSclFkeUQ0T3M2bVAyWlQrNWVpUnhNcXZEZUUrcGMwbHp6SnZjTjMwcGVIaFdnUllDYXBsZVdQaTBYMUpKY1QxK2R3bWo2aFB2c1FtRURkTFhIY09ZdG9TQWNiNFFEYmdGbmNiSit6ZEU2UWxWa0Z6RTFSemx6K2NwL3RJZ01YRTczT0NIQ3o1SG1PSkRSRjBqY2o2Z2hVNFF2SGpWRXVBVVE0RTFJbWQ2eFB2QkZHVHNZZ05hWGFpMFlrUS9uY0Q3U3dsd0NpRy9RRGZURVMzVTk5OU1IcHdBNTFWRVdENXMxc0VXRDVXdnB4VENiRFFYSjNXcXVXZlRwMjVsbStSYWhRQ0hnUkVnR2xhckIyQnVRZ3dObU9RRkk4eU0waXcxSWFNQXhTQ3JYTVNSc00ySUVqN2hNNTk0L0lWQTdTR0QxQi84RVNyQy9lVWtHVk9xbnVJM0dOSlJrVEQ3NmN5TC94N1RBeC82QjRsQW15ZWdZSE1mYktaY1dBTXBSTHlxeThEYTFERW9FTWsyRklDenZPZ05xM1VyUkZndzk1Q0F1Q3krRUJuVWNvaE95ZUYrc3hGQXBZOFU1TUlzR2tJeHNUdmNmSC95d1cvMjZHZTVGaVpRNjZIeUMvS25VS0E5ZTNDNm90OVRHek5USkZmbEZWRGdQRWMrd0xHNjVFWmV3SXVHZGovVEhHTEZBR1cvMjZKQU12SHlwZFRCTmdoVk5ady9wZzJrbnI2UUNBZ0F1eEFEUE9tT3prWEFjWkdEQUZKRGtPeGhCWFMwdVRYc0Qwbk5ETStySmhINDZLVms3QnV3QjFzNlFTbWlPL2ljblNEQWxINzNIWWk5Z214aFBYYXAyZHczY3h0UjU4dlZ3dy9od0FyclR1VlAzUm81emtzbUlnS3V0V1VjNWlrYndnRG93djI2b3FPcGtnd2lueVpjMW40ajRyeXQvcklsZ213SG5QbUQ0UjhidlE1RVdEcm5hMWJFTCtIZFBvN003dEtCRWFpMDE2cHM4ejZaQ1RQVkFJTWVRZldySXRFNm5pZEk0bFRsMDIxQkZoZmRVeDBuencxRnhlK2JxMkJBUHQ2QTUzQTFCc0lYdGQxdWxDcHZLSGZSWURWSW5mb09SRmdoM0FRQVRadEh1bnBoUkFRQWJZUTBLcW1Hb0c1Q0RBYWxDTEJPRUJqSmZiS0Zkd2dWd000ODRPNG9QSGhKNUxUSEtSWHJQbm9PbUVaaHZneCtrempzTzR6ZC8ySTRtUFdCNzNPeE5JRUdPczZrY1d1RXdBQWZZWmJMd0hPREhWZ3JZbHJESkZZVXdrZEdRNEZFR0ExbHBzWGNzK0dMTUdvbnpwdTVpSlAxdFNSNnNQYWZ0OEhBcXdVVXhGZ3BZZ3RsMzhMNHZlcHlOSjh4LzZzMDhmNmJBSzJxUVFZeGNjQy9aUkV1NTFLZ1BWdDhVWEFiQ2szc1dzQ0xLVEh1dHdia2wrVGp3QWpVaTRCWUZwR1FNWVNGL2ZhdzBaTis2S1pFV1d3WlFyVnRVWU5NTGxBdGh4NWxTVUVFZ2lJQU5NVVdUc0NjeEpnOUQya0lZUUdCem9aV0JvcEhSa0JCT0FSMDcyK0N4NVE2OTc0TFRQNzBNUXloaTNETlkxdzZrVEllWGQzNC80UnB5RXlweGluVDMrR2ZxRjE4alMzY1Z5YUFFc0ZVb2hweEsxMXJrTldZODJGMjFyS1pYbmNCMXpWRU1LdUVWYkc4cEp3NHlkUEFJTmxCYVRpVjljS1lLTjJpUUQ3TlpDNGQ2Y3NpSE5nbHd0a0RrcEh6VU5FdEdjNWl5VmZDV3NTdjJlZjhhQk9sL01PbzRhK3c2MXJPVmFrTFFpd25uaDZZU2R5VDdTM1BwVUd4R2xCZ0ZHM0wxSmxMRnB2NlV3UkFaYVBtRzhkbW9QQVd6SUtaS2l1TFJGZzdHdHoxb2Y4a1c2VGsvVVhmTWRKRm1CdDhGVXBNeU1nQW14bWdGWDhaQVRZSU9FR3lMK3hoTUFybGtCL01NcVVzeGl6T1VVWDQ2Yk9yZTd1TG9ySldpSU9UZ1p4WWdGc3ZIR2JRRDhIVFE2d25wSndzeURTRTY2YXVDRnhTNGNvTUxpM2lCbzViaHMzeXJnaFlDWEdobzU2SWFrZ3k3amhSR01rMXgxcVhQYndFUFk1MXdmY05ObTA5R2xwQWd5Q0VnTHdOSUZCUXRpWThZeTUyMHdaMzliUDRsYUxsczk1SnhUTTJOelltZWVYRm9NZUg1cGdCS2VJcFRtaW1KVzJkZTc4QjQwQVkyMTZ1Wm41SXVXMU9rU0pBS3VidFdmdHhnVUN5V2VodVRieGUzbzR2bXhqVGNPQ09OZTZwaFVCUmx0TzZheGJ6OUNSOWpkeFJHS0pCV3NyQXF3ZitWNmJqTzkvS2xwdnlXd1JBWmFQbGdpd2ZLeDhPVXRkSUpuejdJUFpXM0IyQ2MzVlZscVQwM3AzMUtkRCs5cWNNMWZydHFnOElWQ01nQWl3WXNqMHdFb1JtTG9ZNDZaQUNHSnVsUGZkaWlNMmhLd0pZSG5oTHRMZEZSc1JYdFFIQWZFd1owNGZFcldsYmpibTNOd2pYQnh6UFp0akduSVFnUnlDTUVQSExGYzc2bHhkK1Biak8zTEZSNlF0VFlCQmZMM0x1YnVFY0NJYy9YUG1BTEZobVZqWFBTS2huVE9zRG9MejNBbHg1WHU1ZVZoS2JrT0VQTTY1K3FhNmlLWFpQUWNXZ0tuOFcvcjlvQkZnTVd0S0VXQzduYm4zZHNFTWZLM2dRb3Z2U0FtcHMwUnZ1TWpEQ2d3eTdLR0ZPcFl0Q1RENmlqc2szeWFzc0V0VGF3S00rc0htdDV4MlkybDdRdmxGZ09VaktRSXNIeXRmemx3Q2pIZU8vY0hOWFNHOUpxc0lzR240NjJraFVJU0FDTEFpdUpSNXhRaE1KY0JXM0xYWm1zYjdmeUluc0g5eGR3TjFsb3pvVExrTlFwUHJHYzZhN2t1Rmh4RTJ3OXhPb3kzMkY2NmR1ZlZPemNmTlBMcE9ReXV1S1dVdVRZQmhLY1V0SENMOW9iU1c2R2krOXAzUnVRdkZSS09IejZIVmgzWFhDN3ArWDlMOWkrQnpLTDNaemF0U29yc2tnaGwxUTRUaENvdmJabzM3WmQ5K0JQbDVqOWFRT0RSemVCK243NW5aajFiUVFOWVpEaFRmYk5RV0VXQ05nR3hjREZhdWJ6T3p3ejNsWXRWN0NUTjdUK002ZDEzY01SeXBkL3BSUTNDL2Z1M0NqY00xbkF2RFllTHlDSDNHWFdoeGhyb3ZBaXgvWW9nQXk4Zktsek5GZ0NIZGNBOFhWR3Y0RGUwdlVrU0FUY05mVHd1QklnUkVnQlhCcGN3clJtQXFBWWFGQjVFVEViNWVlOEs5alFOL3J1c0UvY0dhQ3BQcjg3cytYc3k1eU5YcWQ0VXd3clh3L3prc1AxTkllb1hLN0szU2NML2sxaXpsaWpabC9HZ3orbVljcEZ1bHBRbXdxN3BvbWJIMi81czdKSDZqVlNjbmxzTVluOCs1QklCL2J2S1JXWkEwUG5IbFlabFRCUEloR0o5WDRLNkxSU0dFNC8zTjdBdTVIUnZrMnhkeDNJcXVGejh5MXF4aDNlT0FjWUxpa2c0OUFPa0FvWFpNei9NSU5pUGNYSk9lMEFtZm96TkprZ3RrT1lLNDQvTU8rdExybmRWb3FaVm5lU3YweE5vUkVBR1dQMElpd1BLeDh1VU1FV0NRd3F4RlNIejRMby9Ra1VSUFVnVFlOUHoxdEJBb1FrQUVXQkZjeXJ4aUJLWVNZQ25oOERWMVBkZkhIdGU4NXpwTHF0WkUxeENQVHprTEZZUjFTeTI5YW5CbEU0RjFHRkVPcjl4cEtHQzExaUsxakQ0MWJNL1NCTmhkbmVWUkRCTmNneTdiYVlHOXFRVndFOHFvMVgrRHdJSU1aYzc1M0U2eGZzUDY2bmFKdGozY3VTT1VIcFpwTjZMV3VGbVZKTjRWTnNUb2Z1UVMyQ0xBOGhFZUUyQlRnNmprMTF5VzgwOWRkR0dlRWdGV2hoM3ZObFpQbHdzOFJ1VG01NWNWcWR4N2lvQUlzUHlCRlFHV2o1VXZaNGdBUzVYYWEzeUpBRXNocGQrRlFFTUVSSUExQkZORjdSUUJFV0JIaFIraTZDbVp1a1VsZzhmQi9WVk9RK3J0SGNudy9aS0haOGhMUHhFcVJ6d1hLekdzMjlEa0trMnRYUi83K3Bja3dCRGw1L0NIMVVvcVBkWkZMa3psYS8wNzM1MHp1WU0vV21TbDVDelJOZG1zNDNJVFM5UkRwRkx5KzI1ZSsyZHhsWUpNcmJIbXdYVVl5OUdhNEEyUWoraUtZYkVTaTFRcUFpeC9Cb29BaTJNVm1rdTVseXI1SXpGZnpnczY5OGZEUEZXc3piSzFGSVdReGw1cE9XdlAzMG8vTDlWUEVXQXBoSDc5ZTRpSUo0RFF6L09MU2VZTVJRK2NJOXBocUs0NTVsOHRBWVlWT3hlNTdGK0pPRDFPRXNGUFRpbGxFQUxsQ0lnQUs4ZE1UNndUQVJGZy9uRTVYZmRoaGFUeWhTdk9IVWsySnBTQnl3bGFJMnlJMWlZdVBPNExya3NuNzZ3czJKUVE3aDFSZjZJSmhvaVF6N3RJYnpVa1NBckhKUWt3dEs4NHpOTFhWRUkwSGlzdzlKdVdTT2oyM05CcFlJeWp0ZWJVLzM1SDVoSzlzeVRoc2toa1R1WkRLSDNiekhBZEphcGNhY0lpQlVzd1hCeGpSRnVzWE1ZQzRwSjJqcTBvUllEbGo0Z0lzRGhXV3lmQTJMTkMzQk9reEpmdTAvMFJjZnl0SmhGZ2JVZE9CRmcrbmlFQ0xMK0U3ZVNjZ3dCRFBvVkxyWmoyNmhnaEpFUFlPMkRKenA0SWNuK2N2dUlpbDY4TlhmcUoxaUxXOE1QRVh1cWRqVW5UdGZWZDdka0RCRVNBN2NFZ3FndEhJQ0FDTER3UlNqYzJFQ0p2NmNUeC85SDl1d1hDSy9jMWdCaURpRG03czBMQ2ZSSmROS0lESXFMZU9ySEdYdE81b3Zvc25ZYXVVQzNxUG9jamNZNmRVZGdTYnBCc2pnZ284RmNkZ1lxNGZVMGlnaWlSMDdBNjlMazc1cFNaMGdXRCtHS2MvaU9uc0VDZUUzWi81L0I5cXdsbGNCdU05ZDdRcWxJRVdENmdJc0RpV0cyZEFDTXlMTy9xU1QzZFJIeWR5NDZQNTArWDFlVVVBZFoyU0VTQTVlTlp1ay9NTDNsOU9Wc1NZS3hKUkhVa1lGTnVndmlpRFZ3cWw4b3Y1TmFoZkVKQUNFUVFFQUdtNmJFdkNFd2x3SHdSbG5DbDh4M2FwNGdmNStKTmY2NW9acjUzOURYdWtCeHpteHJXYzJKSFpQbTBzbkJuZkc4bmpQK0dUb1R6ZzJiR0FYSU4wZHh5Y2NyTmg3NFhMbk90SWp2bTFJczFFSnZLKzBVeXR5YkFydXNFNEhQYVI1NjUzU0M1SmVSMjgwcTVEUnJrWXk3ZXlWbEYxUkpmdzJwcHk2TWNHVGY4ZSt2QUIyeUlIMkptMXlqc2MrdDJGRmJ2emM3Nnd4alFuNXdFT2NHaGM5ZHUwWDFicFFGMjVGSGJPZ0VHdWN5YTVVdFlVT0x5M05KZEsyZk90OHdqQXF3bG1tRmhjU0lIczc5ano5TWloY1p0VE1pM3FHdXVNa1NBNVNQTGQvRnM3cnY0eC9tUEhSRU5HbDNTRlBIRmVhUkd4cU9nS1pPelF0eXRLZUxyNUE2cGdJT0ZnQWl3Z3pYZSs5emJxUVNZRHh2SWlaZDdmbmk4TTF1ZXl3MlE5L0srTG1xTXIxMDFJcjhRSXdoKy83TWp1M0M1d3BWc1NIYnQ4d2FvOVlZMzlTNFJkZTZwenEwdWxyYzFBWWJlRlJGQ3h3blNGSjIwc1d2a0VwbzVFSzl2Ni9TdWNNL01TYlNKMjlFcEZsK2hlbzd1ck1sNlFvY05IR0xhNzh0cFdHR2VrcHZoT2R0UjJPd2paY2NhRFFLelJLZU5lWStMMnBKazg1USt4cDY5dlprOXdwTUJGNDhyZEhQcGh3MHFsZ2grSG9qSGRYcDVXT3lPRTk5aXh1TjFlVVd0TnBjSXNMWkRJd3V3ZkR4OTZ4RGZwVHMzbGttQTJIbW9pMHcrYkIyWEozK1gzOXlzbktHNmFpM0EyRDlBZUNGM2NNNnNGaHpLQlBGRkZFajJaemtXWDF1dytsNnJObG5Cc0NqclFVWkFCTmhCSHYzOTZ2c2NCQml1Y2h6Y0R4OUI5VFhuYXZHRm1TQ002WFpCWUhGZ244UENRZ1JZbXdGRjRQMmxubm5qSzcwbEFjWm1EMHUrODNncXdqTGkwZ0V6L1JwQ3RSUXBYQmdoWUdNSlMwVHlNY2RiV0h5RjZ1SzdkM1czR2YxTFoyRlcycCtTL0xoR2NvaEE2eU9rRDhLNzk3Q1ZhZXVkenhFT3h5dnByTXU3eHY1VWRPT0lBNWt2MG1lcEZXNnNiaEZnZVNQelIyNTk4KzFiNS93dTVyV3VUUzR1TDN3RVg1dlMxMU1LVVR6UkU1MDdpUURMUjFoUklNTllJZVZ3TFJmNStVVDVrQjZSODRuT2lqbzM2alBQaUFBckJGblpoVUFwQWlMQVNoRlQvclVpTUFjQlJsOURCNkRhRzZRVWZpbnJMNGlNWjZjS3FmeGRCRmdsY080eHhvNk5DK2J0eDh3c3FpVUJGb3FPMWx1L29admpzMmhjd25VSUVvZ0RENEwwdzRSckt0RTN1VkdkaTFBT0RRVVdhZDlaa0hUQ0paYmI0M3VNY01DbEdnSCtOYmtlbjdJTEhFRzdUcDg1ajhmWkdGYzAxUkQxMzJxS1JWUWw4dWROR25WTUJGZ2F5SlQ0UFNRbEVWV1ZoTUFRQVJGZytmTkJCSmdmSzNSVjN6ckJKYkhtckNBQ0xIL2VLcWNRcUVKQUJGZ1ZiSHBvaFFqTVJZQ0ZTSVhQdXJERlJHaHBtV0x1WW5QZmNvc0FxeC9KSEwwdlgra3RDYkRRK1BYUkhpSGwzbVZta0J2RHRKUjQ5UFhNN0ZtdVlvVHRJYjFlMU4yT2x0eU0xbzRRMzdxTG1CazZXMU9FN212ckh6OUhSRXJJYkZ5VHdlVkRyUXB1VUE2dVpoQlhXQXlPRTY1bXZuMERZemlPQnJWV3Q4NWNpR0lXbFRXSG1sQzlJc0RTSXhJVHYwZmJrWGY3aytsaWxPT0FJU0FDTEgvQVJZRDVzY0tpSDVkM1pDMXFVczIzUWdSWURkSjZSZ2dVSUNBQ3JBQXNaVjAxQW5NUllERVJidzd3Ukg5cHBRV0d4Y0dUQWhwTzFJSGJGcTUxY3lYZkJnaEJZYlFMSUN4YXBLdVkyWFZHQlMxUng1d2FZS2tJZ3pIY1doRmd2K00wc3k3dWw3Y2hxZ0FBSUFCSlJFRlVxYXdYdW1lOWYwYkFEZkkrM1hORU1Kd3pRYXo4dVhOaitsTEQ5eWJWWnZxTkp0Vmp6QXozWlhTdDNwOTY2SUQremhoaEVlZ1Q5a1hiNnpodURNZnczTlpoUExZWVc2T3dmKzdReGc0K0xmc2xBaXc5SXZzdWZwOUdRRGxxRUJBQmxvK2FDREEvVmptQlZOQzd4THIrejdxTFBmYnh3eVFDTEg4T0txY1FXQXdCRVdDTFFhMktaa1pnTGdLTVpuTVlSUE5sL0w1OHU5TUl1MFFYN2UwVGpmcEdDUGMzbWRsaG52SVFCTWVsS0VkQXM3WTV2ZzFRYStKb1grcm9NY2FsRDJzWkxIcHFVaXNDN0E4N2k4UzNCMXd2cjJ4bXIzQ05Dd1YybU11aXNRYVRscy93emlKa1B0UWZZN09LNWRXTEZ5VGhXdlpwcnJLdzRJS0F4eUp0bk43c2lFTmN3bS9nK1oxNUJkWm8rNHdGODF1U1JYUDEzVmZ1NWQyNkg2b1QwV2JXNUtrV2hTTEE0cU42RU1Udmw1elhCNmt1RVdENW95MEN6STlWN0hLUnZRUVhhMFQ2NXZMSHR3ZXJJY0I4VVNDWnkwLzJOQkZKRk1hdTFVWDhzQW91dHRBdjlhVTU1Vmp5WjYxeUNvRktCRVNBVlFLbngxYUh3SndFR0ZaZ0hPd1FueDhuOUl0dTFpRGlHWnY4VnpweC9YRWRQK3RNc0JFQTVzQTFaOW9YY21xSmZoQU5DS3NpaUJYY0gwTUpBdkdPM2Z5NFd4Y1ZFZzJ1Y1dwRmdHRzlkUzlQK1ZoYVhkaFpQdkZ6S0xBRHYyMUJSd2NNY1VzZUo4aG8zQlN3SnV3VFk4VG03WUdCd1VHTGkyaVFjMFlyaEZTaUhVU0JXbk5pamNOUzBCZEJkRWhnaGFMVU1ZOGg2ZS9rTUIzM0ZUZGNyRCsvdW1ZUVJtMTdnSm5kTmRIZW5oaWNFcFJFQkZnYzVOQUZGRS9OTFF1d29lbXFwbm9RRUFHV1B5MUVnUG14Q21sQm9qbkl2Z3NkVVZMb0VyS0dBUE8xaEwyUFQ4SmlycUJjWE9xK3BkTWNKaWpYT0hIcGZ5a3orMmIrOUZKT0liQXVCRVNBcldzODFKcDZCT1lrd0doVmFCUGVRdXlaOXpCMGNLUnVyRElnSjRhSCszcWt3azh1UVJ6dFF4MjRnVUVXK0N4aGh1aWlENGU3SFlkK0loeWV3Z045Q3dJTU1mZC9Nck16ZThxSG9DWFM0ZkIyTUJUWVlRdWJtdENCaHY1ZmFTUWtUN1FtTk1aOGJxRTlWT0NEZTlVY09tUllCeElRNGFlZHkrVVZ6UXd5Y28wcFp2azExdkdLRVdBUStESDlzQzJSWUdDQ1M0dFBCMjA4aHJpR1FvYlhFcWtpd01KdkJZZFBkQU9Kd09aTFd5RHQxL2pPSDVRMmlRRExIK2w5MW9BZG8xQktTZzIvZSt3WnVEd2JYK2JNVFlERkFvRzBsckRZWlRDdS9CbXJuRUpnQWdJaXdDYUFwMGRYaGNEY0JGaE1DMnlxaTgvNU9xdVcxNXZaOFR5SWZ0NGR3cjY0QU5yN1FFNEIwNXo5T0x1WnZhRFRTVG84TVI0YzlxL1I2VzB4YmpFTmlSWUVXSWljaGZTNmdwbTlidFRXVUdBSHN0M0NFYTRMVExjanF1QWJSRVM5Yzdrb2JsZ1JmU05TZVFrQlJqRVFNazl6K25taFlySGl3ZTF2cWl0Ylh6NFdYemQwT1BiV2dTMHNoZVlZa3hnK1BuSS9SWURSeGxnRVNValdOWk9CUGNhbHdzZXNPUStyZEVNUkFSYWUyV2QxbHMrK2IrTmNsZzl6dkdlVWVmNEpydkp6dFdtdDVmb3NlbXZhS2dJc0h6VVJZR0dzN3VEZVh6QUtSYXVlbXdDamRhSDE4T3VkdGRiRnVuME1VaFl0RW1zVjFsKythT2EreThZV2Rhb01JYkFvQWlMQUZvVmJsYzJJd053RUdFMlBhWFRWdWtLZTJIMW9pUDQ0VGhBWTEzYUV5NHpRL2Fyb09ZbWp2cEt0MXVFak5VSmpncmJVVGN5c2Q0dWFrd0NMRWJQLzVqVHF4b1JTektWM2FTc3duMW4vcDV4WVA0TDlISVNHcVpRQTQ5bVllMTlmTnYxR3dIYnFCaExMSVZ3amJ1U1pIRk10aFZxdkFVUzF3a0x0c29HQ2ZhUk9EZ0ZHY1NsU0gydTlOVWZ0UXlNT2JaWGNOTVVTV0FSWUdPV1FhemRQUE41WlJzK2hmWk03N2lYNVF1OU9TUmtISlcrclE3WUlzUHdaSXdJc2pCV1dxQ2tQakNVSXNKaEZMRnBrdDZ1OGhCbjJITTB6Z20xZHhnTUgzemt1WE4rWVA2MlVVd2lzRXdFUllPc2NGN1dxSElFbENERGVsMGVaMlcwS0RveXhubUFkd2liK3BvRk10YVJhT1hxSG50Z3FPVFh1Yit0KzVMbzgwZzVNMGRFT0dycER6VW1BeGF5NVltYnh1QlJCZnZqU2ttNUZhTnU5d1JOZzRydGRRSWlMZUVpU0dnS01Qdkt1UGNqTXVNa05KVnhXc2NqN2NPMExsQ0IrK25lczFsSm9Rck9POHVqSm5LN2hlUUtGNG5aOWE0OWJYeTRCUnJHNC83N1FJNHJQYnhDYlJBVGxsbmx0S2VWMkYyb3Y3cUpZdDcyN3NFTWl3UHlBeGZRSzBjVWtBTTE3Q3JIZVpYWVJZUG5vaXdETHg2cFZUaEZnMDVCY2dnQ2poYUU5SDNxejZIS2hpMWliMWlMSFV0dCtQU2NFc2hFUUFaWU5sVEt1SElFbENEQWdpTG4zbEZnQnBENDBVOTBxYTRhck5YSGthOFBXNnVoMW5FNmJBQlRDQzZzdjlHckdGZ2x6RVdDeGd6cUhjU3dXUHg1bzl3azdrLzdYbWhuOUc2Y2wzVzVEZW1TNEJDT2FQbzU2V2t1QTBVZElNSUlSK0lJRjlCaUFHNjZyUkdPdFRUSGloelVDQWgzaWUxZVdLK2QwVVVGRGtVdGpsbW9sQkJockhGRVNueHNnd1dMdlRDMzJMWjQ3alJNYlBvbW5NQUtSOEhjaWZ2blNXRE10cHowaXdQd294VWo2MFBxUWcvZXU4b2dBeTBkZUJGZytWcTF5K3RZaGlHWXMybHRxWkdJbGZYVlB0SFBrSWxwYkZvWHFLdFVBeThGNEtRSXN0dStiS3JVUWMzM2N4WmtrQjNmbEVRSlZDSWdBcTRKTkQ2MFFnYVVJTUxvZU8rRG1ISUI0NzlBSVF2dm9hQjRzT1NSeitIL0Z3amh2alp3S3dkT3lIN0d4N3V2SG1nWExvWkExd2x3RVdNejY2L2xtUnBqcW1Oays0dStJK2Z0U0szUDYyQlNPaWZlSHJOQ21FR0MwSlJVWmtqemNwRUxjdkxyeS9VdVIyeVZFZVdVVHZJL1JMdkREOHMrbjdjRkRyRWxnUHlZZSt3SkxDRENlb2M3YnUyaXBvYjVnVlFzeEdhcXpKUVk1WmNYZWl5czdyYmlRWmlQbGx4NFVSSUFkZFZSaWJ0cmtSaHFBTlc1TFNRUlkvbWlKQU12SHFsVk9SWUdjaHVSU0JCaXRETlhGYjdWNmxLMHU5NmVocUtlRndFSUlpQUJiQ0doVk16c0NVd2t3eE0yNTFYOUpSa3RUcm91cEExQ0tWS245Z0dVMFBacWxKWEVVcW1ocmRhU2k0UXpGN2tOOW5vTUFZdzQreDFrcmpldmwxaGJYUXF4VllpbmxZcFJUeHBRNUYzSi9qRm12VFNYQWFHOE9LUU54aUR1QkQwT3M1KzdwdFBsd04vaUZCNFRVR3BGRGxFL0JkdndzN2VIZHUxK2tVRFN2YnA2NDdTOGx3SHE4WTFGdXljUE5OYnBwNDhoYUxUSElLWXVnQUpCYjNJU1BFMUU4TDl5NXJDTytubHJEUzI3aVJZQWRGZXNZdVIvU05zd1ozMTNtRVFHV2o3NElzSHlzV3VVVUFUWU55U1VKc05pK05IZi9OK3h0TEhveitaYUtSRDl0QlBTMEVDaEFRQVJZQVZqS3Vtb0VhZ2t3RG9hM2RicE5oRForU0dZdll5NWtGQUV4Z2hYWDhFQ1hjZ25pdVYwS1plK3pCZ1JXUFVUSitXRG0rT1pzRGhBS1JiOE52YXBZbW9NQVE2Q1U2STQrQzBJaUtXTEJsR05SRTdOMktUbkVWOEJxcGU2UDFOR0NBS09jRkFsMjE4NUs2cUVCY21zNG50L3FvcmMrMnJtK29pR1dNMi82UENtaXZBWlQzek9JM2JPdVhEVlNZTXJ5cTMrMGhnREx3WnM4UCtpc3B4Q2Z4L0p1Vis2aG9ZaXF0RzhvdXA2eThpdFp5MFdBSFhsaWdpMldxYmNNek5lWXRtR3JkMmJmeTBIb211L0V4VDBkYlJHWmVDMzRTUVEvZnlTSWZEc094b1RyNDlzeTl4SzVOWVgyUS8vZ1BDTnl5OG5KaHlVcFdvRzRRZzRUUVc5YUIyRlprZ0NqTDdFQVdpVjdpMVNrN0xuM2dUbmpxRHhDb0RrQ0lzQ2FRNm9DZDRSQURRRjJLcWRQdzIwemlVMDN3cys1S1JicGpES0dKQmp2R2h0NlhNdDhwQVg1ZC8yaEVRRVdIdm5UZFJaQmJ6Y3o1aG5KSjNZZmVybzFBY2FHNVpWTzQydGNaMm1VbnRnbWlyTG5za2FNV1o5aGhmVGtBSml0Q0RDS0Q1RmdxVDZmdzFtR0hYdlV4dmM2eTZCL0gveWROWWIzR2wwcFg1cjduYy9Sc0FzSjN2dmFXMHVBOVhpbjFrRHlQZEhNMEdpQkVGc3l4U0txUXNnUkxYT29EWmV5OHN0OWYwU0FIWG1VVCszZUx5TEVqbE5LMjNESitiTGx1a1NBMVYrSWxheUxYKzR1cWk1Z1psL2Y4bVJwM1BZbENiREdUWThXdHpRQlJtTWdxMThXT0ZQazdDMGdCdm4rWHkvUU05WmJMT0UvdENTUXFrc0lMSUdBQ0xBbFVGWWRTeUJRUW9DaEE0UUdGd3MvaDVnKzFkeEFwVnhodUdsQzhQTm1Ma1J4Q0l1U0c1dTU4QlFCRmtlV3NYNkcwMGp5aWQySG5tNU5nQkhKOE9HQnlrcXN2L29pMlB6UUgxK2F5MVdQamR2TFBSWGlYb1o0L3hjQzdXbEpnRkhGMkpMbmptYjJ5SVFGRXFRU0xqb1FKc05FOElBTG1kazNSbjlQclJGeldIMnl4a0UyTVUrR2E5d1kxaElpbDJlbkVHQTkzakg5dzc1OW4zTnI1bHNYdEFhTFdWWGk2bnE1YmczLy9nakFsT3RJanQ2YkNMQWpneHF6U3MzUk5wenIrN2ltY3MvY1hhWWQzd1ZycUdsWEN3SU16YUJ2TnJZT3F1bEw3QmxaZ0xWR2RIcDVJc0NtWTlpWGtJcE1IeVBCVXBaZkJLa2hFQW1lRGtwQ1lPOFFFQUcyZDBONllEdVVTNENkekxteWNBQWZKL1MvV1BCand1SGpaM0pjWVZLRHdzSDVTak9ZWktmcUhmOHVBaXlPR0dPTmVIaHBSS1NXQkJndUNyZ2tJQ0EvVGpYYUQ1UVJPd3p4T3lRdXQ0QWNkbHFrV0JTajFBRzNOUUZHZnhoWElqT0NIOVpIS2ZlNzBqYmtyQkVwcTdNUzNJbFNpQVdkYjQzcnk2bU5Sam1WQU92clIvL3RSWjM3NlBFU0hYdWNFOGlmMnhvc1p2MUZFME5CR2ZndEpoN003eWtTV1FUWXJ5ZEJiQzNpdmJ5Q2MvMHVlUi8yS2UrUTJPWTdCQ243dm9vT1RpWEFlb3RvTEVqdWJtWlBXeWtSSmdLc1luTE0vSWdJc0xZQXB5NWhpT0pKaFBMaDVRMTdCRFEvTHgxb1NzN0ZUZHRlcURRaHNEQUNJc0FXQmx6VnpZWkFpZ0JERCtuUG5SWk9LQUphcmZBcUZoWkVNYnRYUmUvV1FuN1JkTjlCakVNSGxqcG9IYlZJNTNZUmJJWmxMVkhIRkEyd3FmMXVSWUJ4YU9FMkRrc1ZYNW9pVklyVkZlNWRod1hLYm1tbGRGYm40alFtUDNJT3VLWGswOVN4OHoxUFZNTkhlSDZJV1pDbTNPVktYVmQ5N2VvMUJwL1NXYkVkSjlKeGJuYlIybUpqbkNMN3hzVzBJc0FvRjgwWjV2UGhpVUdDL01JdDlvVUJUYllXWTh5M2dlaVl2ajFSanVoNnlzb3ZadUVyQXV6WEl4Z1R2dzlaNGJVWS95MlU0YnU4cTdVY24wS0FzWmF4eGhDMG9rKzhvd1FHZ1FncnZTQ2FFM3NSWUhGMHNYYkdRMkhKeEFWWUx5VXhySmZ2MG44czJSQlgxMStPWE50cm03QUxGOGkrcldPSmpuRWZzS1Jtbk5HcnpmbnU1bGpDMStLazU0VEFLaEFRQWJhS1lWQWpHaUFRSThCdTRVVHVFYVdQcFg5MW9yRGZybWdQbTBKRXZUbW81U1kycjl4b2Z6YjNnWm56YlMxQ1l3aU9KZnBSTWhRdENMQ1VGUkVhSTRqODE4NGxOcVZvNE1YbWJ5c3JwWHNIeU9JY29tRU5CTmdET21zeFJQTEhDZDJxV0JDTmxLVlE3V0dXZG5Dait3UVhlQ00yTnhIcWg2eDVmOGtFSHVSdFNZRDE3WTdkUkErYitXRm5xVWRremxMaUx0WmRpSVUzUm9pNDFMaFNkdXI5SkUvSUhVVUUyS0hSU1luZjU0eEQ1YlJlOVdOWWZSSFVoQXNPSDdHZG8vVXo3dUFVQWl4R0ZuUFJ5UHBPd0lnMUVHRWl3T0pUVzVGSkQxbEtvNms2TmUyU0FLUHRWM1NYUktFTGZ2WlhlTG5jT1NHTElQSnI2a3pRODV0QVFBVFlKb1pKamN4QUlDUk1qZVVQRzhqZlNwUkJQaUw2dldDQ2xRRnVORmcwRUVrc2xUN2kzQjZIVVNKVHo4ejkreExFMGI3VVVUSVdMUWl3bElVV0pDOEhwQ2twUmRDME1JdVBpZC9uUkhmYk5RRUdVWWliSmlUU09QRzNsRjVHS25CRzZXRTJkVGdldHBHZ0hOZm9MRGUrT0dHU3RDYkFhQXJyNXAxY1lJbWNwa0ZXRWJtWEM0dXBLYVdoQXFHTSsrODR3cWV2M3BTVkg4LzRTR1FSWUlmUWxQajlVV2NWNUN3WGE2bkx1MUlMM1ZvQ0xFVVc5ejFZQ3hFbUFpeStRb29BMng4Q2pKRk9XU0xIWmtPdExNTFViN0NlRndJN1FVQUUyRTVnVjZVeklJQ216QnNDTGl5cDZsN2hCS09ua0ZHSTBqN1R6QkRJemsxTDZkdmt0bWRmeUtrbCtwR0xLZm1tRW1BcFlncEM0S3BtOXFPU1JnWHlwalpRNkJsQm9neWo0WlZVaThZZXJtYmpsQnZkYmRjRUdNTFRyRFBuR1hXQUE5L0ZNeTJyWWtFTUtEYjNNRnV5NXJBMklTNCsxU3BqRGdLTVByTVg0UWI3T1FuM3pTSHNyTnZjWm4rcVpBS084c2FpYUpHMWxGaE9SVlgxa2NocjBGNnNkZitmQVAxUkhwWDQvYThoZ2RoT1NUYjB1WEVkUTRMaDBkMi8vSGRPcWlYQUlQQ2Yyd1ZOT1cxT0pVNFhiSmNXWVNMQTRnTWxBbXkvQ0xDY2FQTytHVEZGRmlGektWQTJJYkF1QkVTQXJXczgxSnA2QkdvT0VTMnN2aUEzMEw0b2NYMGM5bklKZlp0Y1ZKY2dqdmFsamx4TXlUZUZBRXNKbkxZT1U1MWp4VUtka0JYdkxnSEJXZm9Rc2h2aDVuRktpZC8zK1hkTmdKM0dSVjdENVhDWWlGNUp1UHNjRWoyRk1hNk1FRHNoc2dvM0tOd3dJUXhTaVkwdGF4TUhuVitrTW1mOFBoY0IxbGVOaFFsa1hVaWMxOWRFQ09CN09ESHdFdGZJRkxHTW0ramxPd0g4NzJUZ01zeVNzdkliaStMWGZMc0ttNVRNdm1zQ2pIWHU5V1oyZms5TGM3UUJreDNjVUlZU1lwczVpaFpYcVRWa0xRRUdqRmhzWHR2TUhsVkFWclBQMllWWXZnaXcrTVNYQnBqWlBtaUFEVWU1bEFSRDhnV3kvUzBiV2lQVlZDRXdHUUVSWUpNaFZBRXJRQ0MyZVE0MWI2clZGNGRRRGwxRWorTkFPelhobjM5cjl4RnFjVkN0YWMrK2tGTkw5S01FMzFvQ0xFV1UwSVpTQzVXY2RxZXNXQ2lqeGhJTTErRFhlS3cwU3c2NHV5YkFRcGFtNzNSNmZqL01BVGdRT1JDeWltaE56d3BvWEpXNE85S016N21EYXEzZWw2OHJjeE5nMURtTWRGZXl0cktHM3FXenduMTFoaVZNaWxqR1VndTNNNzRUTlNsbFNUblVleE1CZGtnMndMYzJnUDFCRWI4dkpiWkxyYjZHODNnS0FkYVhRd1JJb3FQZXQyQVBCQkYyTzJjRmpOVnNibUlkT0VGWDE5RnlIM0Q1Q0JqRG1qVk8xTTM3L2RIQzhrTFpjVlAxaWNuL3Uvc3V0SXFnWE5MYzc1blpUMHNlV0Npdm9rRE9DelRyeVAyZFYwdk8rOElGRXUveEZFdnFlWHVrMG9YQURBaUlBSnNCVkJXNU9BTFhjNGZHbklxbldrU2NzTnRVSU1aYlFueDl3c3pPa3RNNE0wUG9HUmNwYnVTWEpzS1dJSTcycFk3TTRUd2lXdzBCbGhOVUlkZFZycVN0ZmQ2VUZRdjVTc3ptNlEvdWJiaFBqbFBKQWZjaW5hc2hFWTNRNGhvbTlLMHUyNzJYYlByblRDR3k0dW1PdkNxcGU2anJCbm1ERytzblBRWHduU2J2WTh6c25Ka1ZFSkdTVFMwSHpwWnBDUUtzYisrcG5Mc1ZrUUZMRXBHdUlDby9GSGdvaDFqR0N1MW1HVVJhcUYycG9CSm92ZkhkSXVyWlFTZkF3QXJTRi9kb1gySWVJeGV3cjZtVTJHYnVZUFdWWTIwYXdxd0ZBZGFYWFdNRlQxUnBpREFpdSthNGJZWUV4dmQxVHJUb1Z5dHg5eFp0R1pZaEFxdzFvb2ZLcXptYkRGdkNOdzh5K3d2ek5FK2xDb0YxSVNBQ2JGM2pvZGFVSTVCelVPOUxmWStaWGFkU0JQcU1UbWZqK2dWTnhBTGp4cDJJOHRzcjlHMis3Q0xsdmFpQmJrOXVrL2VGbkZxaUg3bVlrcStVQU9PQXp1Myt2U0tWUUpod3V6M2xFSlRxUThxS2hlZXhsTG05TzZER0NOdVlpSC9KQVRkMEVNclZFRXYxT2ZaN3pESU9OOE1uRnhiTzk1ZUlTN2c4UWFqN3lDcCtROXVIc2M1SmxBRnh3OEd5eEIwd3AyenlMRW1BVVY4cE9jQXpzV2lsT2RFYVArOWNNS2NFQzZBZElTc3pMSWVKRnRvZi9BODZBWGJXRG04aWV4N1BNd2x4TFdidDJNZERHWFB4YkdiMnRFenQwSlp5Q1MwSnNIN1lTdGNxbm1PZlF3QU1vdFBGdmg4aXdISlg2Ri9uRXdGV2p0bVVKM1lWQlpMZ0liZ1hRNHJuV0h5bCt2ZzY5dzM5MkV4N2lGVDkrbDBJTElLQUNMQkZZRllsTXlLUVkvM0ZJUjNYR0RRcmNtNGIrK1pDUk9DYXdZR2xSTnllT3ZnZ1BkYUp3UGJsb1J1RXZrOHFvdE1RTHRyK2JQY2NWaTV6V29VdFFSenRTeDBsVTdxRUFNc2h2OFlhUWlWdEtjbWJReGIwNVVIVVFnSmhmVE5PTWV1djBnTnVTSU9MT3VlMGlFUDNodmNaUW51YzBCSzhtSmw5c0FSY2x4ZUNoM2M4UkZhVkVQeFQzYnB6bXI4MEFkYTNLZGM5TEdXNWxTSjFXMFE2SGVLSTVlL2JPb0w0ZHp2TnRwRFdTb2dBZzRERFBhVmx3cXJPUjZidVVnTU1rZlFRMmY5NFo4azRCNW5iRXRmU3NqaTBQcUpnTDlBNllBN3prVEdIdEJxbktjUUozNHhMbXRsVENvVHlxWi9MUXR6NTBTSHk3WEZFZ0pYT3NIYmk3dVUxeDUrUUJkaDBSR3ZQSmlVMTgwNCt6TXhlWEtHRFdWS1A4Z3FCblNBZ0Ftd25zS3ZTaGdpazNGbHFkSEJPM21rYzNkWnR5RGo0bGlSRXZ0SHlDbG5tMUVRNzYrdUgrT0FBaXFYSnAyY2d3L2FGbkZxaUh5VnpJcGNBWXk0L3lMbkFoc3B2ZlVCUDlTUDFmZzJmN3kwZU9WZ05FKzhUeE84VlBEZVVwUWZjbU9VQ2RUNngweGk3VC9mdWZpUFZzY3pmNlQ4a0ZPUjVpQVF2Y2VITXJQWkkyVktrVFl0Z0hybnQyaFVCMXJjdkpoQSsxTlh5OVNlRkk4L2dab3ByVmt2Q2hYb1JXb1k4eGVWeG5FSUVHRzZzTjh3ZG1NeDh1OWJRR3pmejl4eEJlTGluL1QvcmZydEVGelFEeSsxOVNRUjV1Sit6MXNqcFU2M0lmYXJzbU9iYUZBS3NyN2ZHY3BObnVhaDhzS2Z4SXNCU0kzclUzMXVNWTNtdDZTZjJsUUJEd2dCTHhuRkNNZ1dMMzZtSmQ0cm8wMXcwWHJkQWQ0OTYyWnZ4M0RHZHV6a1hTaVVKYVJaSStGYzEzRnVWMUsrOFFxQTVBaUxBbWtPcUFuZUFBSnRLYnNySG0rZ1NIUno4NXhFeHhSdy9OOFQzc0t1bEc5VlNvY294ckZpWllmSHhBbmRyV2hxcHpEZE1hM0RGbVd2NlRMSFNtZHFtSEFJTVFlRW5PVjJnV0gweDk2NnA3UXc5anlzWFVSbzVOT1VrTEtVNHlJeWpHTkpITk1Dd2p1UWRxeDJUbU1WSTN6N2VEeC9aa05QK1BnOWsyL0V6SG1pMXdRMVZGYlBFU3hIdUdjMHZ5ckpyQW96R2NoQzRrck9nNmRkcTV0S2xuR0Q2dUVQZ2QwMm5KeFp6RVVGYkNiTHErMFdJVE05OGtBa3dkTCtlRjRDUXFKQllTNWVJcFU4ZmpmbEtLUG0rdG5SM0hQZm9kQzdnd09rOVhhMWRrME9vNVZwdThqeGFxYnpEUHNGNEVXRGw4N0lud05EWVF6c1RxNzgxSkw2cEQvVzRQT01HVFRDQk5TVDJEN1RIWjlIdWExL015aDFOWDZKdDFxUmp1RXNBM0JzaDJFcUN3bENmTC9wcXlUdnBhelB2Si9zT0xNUGUyOGs0L0tpbVkzcEdDT3dhQVJGZ3V4NEIxZDhLQWNLbll6N1BEVWNxbWxwZko3ZlBmK1p1L05INHFrbmNqS0RmdzhleXhtb0E4bzZQZm9sYnBLK2RrQTF2NnNMSXY5Ymg4SldLQ0VBbEcvUWFySGI1VE91TmZVbGZVZ1FZNUNsdXJwZE9GQXBCaG5WaGlSdHZTVHRqZVZOUjg0YlBwbHdSK2U2Y3lia05vbi96ODhKR0R0M0tDaDl0bm4wSkxUWWFQYmJFWTJQTExUQVJEMnZXblZvZzFrQ0E5VzBIRTRndERoZTRrK0d1TWNZaU55Ujh5bnFzRnErYzV3NHFBWVoxTlFlcHl3VkF1cllqM25NdzNFS2VYSGZtVW5mSHUzYnJ3d1BNN091T0xFUXFvU2R4MlovMGhCSnJPRmE0N0hsQ1JERDZkeGVhd2NvanRjL2h2V1c4dWREekpSRmc1VE84SjhCU1Z0UGxKZS8vRStQOUlscDlYSTczVVRVL2EyYThLeVJrR1c0UUNYUlZZb25ITiswTVRxdjR5Z1hCczhZandoNFJhMmFzVFVPQmNHTFcxQ1Vqek5rREl1d04zZnJ5dnU2Yi9LL09aWEpPdVphUzlpbXZFUEFpSUFKTUUyTmZFT2l0SkxncDRSYmZGMDBOeXdFK0x1UkJPK3dQSm5RZTBnSUI2MXJpYTF4MWpZQnNxUG0xR2xFaXdDWk1pTWlqTVFLTXFEdC9ZV2E0Q2NaU2lsU2FwK1ZITGpYSEVnd2lEMVA3c2ZWWDYvWnhxL3J3MW9VV2xsZjduaFZXODZ2czRQK1BuYVhxeDEyUWhOWVJIblBhdFNZQ3JHOXZTRWNOZ2dWaUFKZkdXRnA2SE1kdE9hZ0VHTkU5MFVjN3pETTRFTXU0UDdaeVpjNloyMHZraWExYldIVGZ1U09DUGxYWWtKRHJWV0V4UjJSSFF3OTMzVGxJOVpnK0dCcVNFUHFoeXgySWdSTTBFdm11d1dXTHp4QVJHY0pHQkZqNTZJMEpzTmdlTGxiNkQxMFFqNDk0TXZIZG9seldRYUlXY3hGd3l2S21IdWtKckdXeHdPZTdsN00vb0ExWVhYSUo3M05EbjlJY3BDRWcvM3dXblZQSzFiTkNvQWtDSXNDYXdLaENWb0lBaXprM203NU5GTlkxcit4ODhVczF2Y1pkbXpOQ1NoOFZDcjJBWEhlemNmdW1hRVNKQUp0bklzYzJUOXdjb3ZNVHMvNWFpbFRLNlQwa0RGWmJ1QXVQMDVJdVpEbkJBbkw2VTVzbkpHaGVXMTd1YzdpemxGck01WmFkazIrTkJGaW8zVGxXaTN3cmNNTjdhVTduWjhwekVBa3d2blVjMUc0WndCUWRQMXlkOXkyeC95QkNLeTY4ZlpwcVJZNDJJYnFMVS9jMjdCM1lkN1FPdkRBZVE5cEo1Ti83Tzh0V0NHZ080Ui9hdDhGZVNYOUVnSlVQeEpnQXE4WFFGMXprcE80aUN6MnZWdWxiVG5ZQ3FZcWF5MGZPVGhkM2x0VG5iTkFvOUJzaDlUQVFVQklDcTBSQUJOZ3FoMFdObWdFQjVqcGFQUStzS0p0YkZjUzFIOTBKR2VOYXVFVENJb2oyWWsxVEV0cDRpb2h6NkNER3g3VTMvVjZpNzFQcjRLWVl2YWxoV3JNTDVFZmRvY09ueVlMT3drMTJvRXNVR3dPZlpjMHVYTWg2aXdLRTlGdmZYb2I2WDNyRE9uVXVyKzM1TFJGZ1lNZU5PZ2Q2MzdzMTViS2c1YmdjUkFLTUtJZ2NqamdNamhPRXlFV2RwV05Mbk5kUzFybWNUQUVXR3JoVkladzl4VjBvRmhtM3BNOUxXeG4zYnBHNFRYSHBONGZWV1VuLzl6VnZMWG16cjNqazlNdTNYd3g5KzJMbFhkL0pXNHp6L0xuVFBweDZCdWRDSGpkSHJLMm1yQ0Y5KzNwNUNyNUplTW1VbkQyR2ZkeUZWbTNPdUNxUEVQZ1ZBbE5mUGtFcEJMYUVRSTVGd0xBL3VEbnljZUVqc3d2ZEpkb3lGZzZQNFQzVkFtZHQwUk5yNTliYStwSFNBTU15MGFjUHN5YkxyL0ZZY0dONEs2ZS94RUVPODMwT01ydElmTWNnT3JqQlJBc1FLeWtPaGJnN1Qwbi8zZ25QUWs2U3NOS2dmN2d5N0dvdG1OS1hWczl1alFDajM3NTNheTNrRiswN2lBUVk3bTZzYjc2RUZRTUh4MTFhT3JaNlgzemxzRjRoZVlDR1VBdUJmOFROc1RTaHpOcTB4b3VXMnI3b3VTTWpzRFlSL0MyTWowOEV2OWZheTIxL2pGQXVpYTQ5cm8rOUNKcVg3QnZuRE5qQzJRTnRZdHkyUzZ6Q3VIRENMVnZpK0xrelJmbDJnb0FJc0ozQXJrcDNpRUJLUUp2YjUyY3NiTzJWQXdmdktsWU1mKzFjNW80M2VnaVhMRFJUaUtSVW05WkdITzFMUDNJSU1QcUtkaDN1TWR5NlBkbHBGN1U0SU5YaW1QTWNwTk52T1FIVW5QektzMjBFdGtpQWpkOHRidmNSenllQXdCclM1UU5CVUxqVmYzcmpCbktRNFJzeVRsaHc0cEs0aEtWdlRQd2VLeUNFMnJsMFVzcERZSXFGRDliZEJQSGh1OVBDZ2lTdnhjb2xCTGFIUUl5MEgvWUc4dXh1N2d3UnV5dzdWV2ZweXFVMWwzV3BSR0FMZ2lDaEFkb2k0bnVxdnZIdkozVEJNL0JJaWJsdXRqaUhsTFpOK1lWQUZRSWl3S3BnMDBNYlIyQnNmc3hINmpudUE4T0hadTBiUWF4dnVPMUZQNFcrRU5hWUF4MnVGRk9TQ0xBcDZJV2Z6U1hBV0krNTJjT2lDaEhUZzJ4cE5NOUlxTlNwQ0d5VkFPdHYzTG5SUnBqM1BWT0IwUFBWQ01URTc0a2dCcW5PUVVvcEh3RXNYL3RBS2tTczQ1c1RTcENjN3pZekxOeS91SUg5VGo0S3lpa0U1a01BVFNzdXgzM3AweTc2SWRaUFJLUFAxZUhDemZCWm5nSVJqaWRDTHBhWjcxem9ZaUlYdVdPWTJibmQyWU5JbFVQaC9sdTRjMVJ1V2NvbkJIYUdnQWl3blVHdmluZUlBSWNoSXNoQkhHRnA4OEVOa3cyOHcxaURRWnBNSmU2NFNUNzJhRnh3RmZydXh2QlpXeit3ZU1BNmI2eExCdFFjeEwrMnczZEJWUXVCRWdSWWEzeGkyMzNFc1pLeWxzN0wrOGZhc0crUkJaZkdVZlZDRUk5V0FBQURiMGxFUVZRSkFTRWdCSVRBZEFUNGxqN1hlWGU4b1hQWGYwMFhpT0s5RzNNZmhCQTdYVWNPbnFLN3ZIaHJJN2Z1NmNpcUJDR1FRRUFFbUthSUVCQUNRa0FJQ0FFaElBU0VnQkFRQWtKQUNBZ0JJU0FFaE1CZUl5QUNiSytIVjUwVEFrSkFDQWdCSVNBRWhJQVFFQUpDUUFnSUFTRWdCSVNBRUJBQnBqa2dCSVNBRUJBQ1FrQUlDQUVoSUFTRWdCQVFBa0pBQ0FnQkliRFhDSWdBMit2aFZlZUVnQkFRQWtKQUNBZ0JJU0FFaElBUUVBSkNRQWdJQVNFZ0JFU0FhUTRJQVNFZ0JJU0FFQkFDUWtBSUNBRWhJQVNFZ0JBUUFrSkFDT3cxQWlMQTlucDQxVGtoSUFTRWdCQVFBa0pBQ0FnQklTQUVoSUFRRUFKQ1FBZ0lBUkZnbWdOQ1FBZ0lBU0VnQklTQUVCQUNRa0FJQ0FFaElBU0VnQkFRQW51TmdBaXd2UjVlZFU0SUNBRWhJQVNFZ0JBUUFrSkFDQWdCSVNBRWhJQVFFQUpDUUFTWTVvQVFFQUpDUUFnSUFTRWdCSVNBRUJBQ1FrQUlDQUVoSUFTRXdGNGpJQUpzcjRkWG5STUNRa0FJQ0FFaElBU0VnQkFRQWtKQUNBZ0JJU0FFaElBUUVBR21PU0FFaElBUUVBSkNRQWdJQVNFZ0JJU0FFQkFDUWtBSUNBRWhzTmNJaUFEYjYrRlY1NFNBRUJBQ1FrQUlDQUVoSUFTRWdCQVFBa0pBQ0FnQklTQUVSSUJwRGdnQklTQUVoSUFRRUFKQ1FBZ0lBU0VnQklTQUVCQUNRa0FJN0RVQ0lzRDJlbmpWT1NFZ0JJU0FFQkFDUWtBSUNBRWhJQVNFZ0JBUUFrSkFDQWdCRVdDYUEwSkFDQWdCSVNBRWhJQVFFQUpDUUFnSUFTRWdCSVNBRUJBQ2U0MkFDTEM5SGw1MVRnZ0lBU0VnQklTQUVCQUNRa0FJQ0FFaElBU0VnQkFRQWtKQUJKam1nQkFRQWtKQUNBZ0JJU0FFaElBUUVBSkNRQWdJQVNFZ0JJVEFYaU1nQW15dmgxZWRFd0pDUUFnSUFTRWdCSVNBRUJBQ1FrQUlDQUVoSUFTRWdCQVFBYVk1SUFTRWdCQVFBa0pBQ0FnQklTQUVoSUFRRUFKQ1FBZ0lBU0d3MXdpSUFOdnI0VlhuaElBUUVBSkNRQWdJQVNFZ0JJU0FFQkFDUWtBSUNBRWhJQVJFZ0drT0NBRWhJQVNFZ0JBUUFrSkFDQWdCSVNBRWhJQVFFQUpDUUFqc05RSWl3UFo2ZU5VNUlTQUVoSUFRRUFKQ1FBZ0lBU0VnQklTQUVCQUNRa0FJQ0FFUllKb0RRa0FJQ0FFaElBU0VnQkFRQWtKQUNBZ0JJU0FFaElBUUVBSjdqWUFJc0wwZVhuVk9DQWdCSVNBRWhJQVFFQUpDUUFnSUFTRWdCSVNBRUJBQ1FrQUVtT2FBRUJBQ1FrQUlDQUVoSUFTRWdCQVFBa0pBQ0FnQklTQUVoTUJlSS9EL0FhZHJCdE10NWk4T0FBQUFBRWxGVGtTdVFtQ0MiLz48L3N3aXRjaD48L2c+PC9nPjwvZz48ZyBkYXRhLWNlbGwtaWQ9Im5ldyI+PGc+PHJlY3QgeD0iMTE0MiIgeT0iNTk4IiB3aWR0aD0iMzMwIiBoZWlnaHQ9IjEwNSIgZmlsbD0iI2U4ZjRlZiIgc3Ryb2tlPSIjMzM1NTZmIiBzdHJva2Utd2lkdGg9IjIiIHBvaW50ZXItZXZlbnRzPSJhbGwiIHN0eWxlPSJmaWxsOiBsaWdodC1kYXJrKHJnYigyMzIsIDI0NCwgMjM5KSwgcmdiKDIxLCAzMiwgMjcpKTsgc3Ryb2tlOiBsaWdodC1kYXJrKHJnYig1MSwgODUsIDExMSksIHJnYigxNDQsIDE3MywgMTk1KSk7Ii8+PC9nPjxnPjxnPjxzd2l0Y2g+PGZvcmVpZ25PYmplY3Qgc3R5bGU9Im92ZXJmbG93OiB2aXNpYmxlOyB0ZXh0LWFsaWduOiBsZWZ0OyIgcG9pbnRlci1ldmVudHM9Im5vbmUiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHJlcXVpcmVkRmVhdHVyZXM9Imh0dHA6Ly93d3cudzMub3JnL1RSL1NWRzExL2ZlYXR1cmUjRXh0ZW5zaWJpbGl0eSI+PGRpdiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiB1bnNhZmUgY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IHVuc2FmZSBjZW50ZXI7IHdpZHRoOiAzMDRweDsgaGVpZ2h0OiAxcHg7IHBhZGRpbmctdG9wOiA2NTFweDsgbWFyZ2luLWxlZnQ6IDExNTVweDsiPjxkaXYgc3R5bGU9ImJveC1zaXppbmc6IGJvcmRlci1ib3g7IGZvbnQtc2l6ZTogMDsgdGV4dC1hbGlnbjogY2VudGVyOyBjb2xvcjogIzAwMDAwMDsgIj48ZGl2IHN0eWxlPSJkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGZvbnQtc2l6ZTogMjBweDsgZm9udC1mYW1pbHk6ICZxdW90O01pY3Jvc29mdCBZYUhlaSZxdW90OzsgY29sb3I6IGxpZ2h0LWRhcmsoIzAwMDAwMCwgI2ZmZmZmZik7IGxpbmUtaGVpZ2h0OiAxLjI7IHBvaW50ZXItZXZlbnRzOiBhbGw7IHdoaXRlLXNwYWNlOiBub3JtYWw7IHdvcmQtd3JhcDogbm9ybWFsOyAiPuajgOafpeWQiOagvCDihpIgRnJlZTxiciAvPumHjeaWsOeUs+ivt+aWsCBHcmFudDwvZGl2PjwvZGl2PjwvZGl2PjwvZm9yZWlnbk9iamVjdD48aW1hZ2UgeD0iMTE1NSIgeT0iNjI3LjUiIHdpZHRoPSIzMDQiIGhlaWdodD0iNTMiIHhsaW5rOmhyZWY9ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFCTUFBQUFEVUNBWUFBQUI2UWw4SUFBQUFBWE5TUjBJQXJzNGM2UUFBSUFCSlJFRlVlRjd0blFmNEJVVjlycjlZaU9WR0VRbDJ3WUpkcjRrTkc0aTlrSUs5NjQxZExGR2pzUkNqQmxRMFNoQUwxbXZEQXFLeFlZRW85b0lrNnRXb3NjUUN3UkRCaGtLdzNmMWtUbHlXM1oyWmJXZjNuSGVlaHdmbFAvV2QyWFBPZlBzcnZ5Y0tCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRMm1NRHZiZkRhV0JvRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCSVFBeGlHQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVEyR2dDQ0dBYnZiMHNEZ0lRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQmpETUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnc05FRUVNQTJlbnRaSEFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUNHR2NBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQVlLTUpJSUJ0OVBheU9BaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVFTU00QUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0F3RVlUUUFEYjZPMWxjUkNBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJSVlKd0JDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ1kwbWdBQzIwZHZMNGlBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUVF3RGdERUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFodE5BQUZzbzdlWHhVRUFBaEJZRElFTFNIcTBwTjByTS82TXBGY3ZaaFZNZEN3QzU1ZTBrNlR6VkFZNFM5SnBrbjR6MHNCWGtmUmdTVytROUsrU2ZqWFNPSFFMQVFoQUFBSVFnQUFFSURBeUFRU3drUUhUUFFRZ01Cc0N1MGc2U3RLdWxSazlXOUpoYTVpbFAzOTlvZCtoWWV3ekpQMW9EZk5hMTVEL1M5SjdKTzFWbWNEckpUMWdYWk5hMkxnM0tzVEN5N1hNK2I4bGZWVFNqeGUyTGsvM2VtSHVGNnJNL1NPUzlwRjAra2hyK210Snp3MTkrM2w4cTZTWElJYU5SSnR1SVFBQkNFQUFBaENBd0lnRUVNQkdoRXZYRUlEQXJBaGNTdEtuSlYyK01xc25TenBvRFRPOWNyalFlMTdWOHV0aXJyZVhkTXdhNXJXdUlSSEErcEcvb2FRUFNOcXhwUnVMT2M4ZjBWcXEzd3JhVzY5REFMdG9ZR3Boc1ZyK3I2U0hZQkUyNXBiVE53UWdBQUVJUUFBQ0VCaVdBQUxZc0R6cERRSVFtQytCT1FsZy91dzlXTkpqRzNBZEsrblBKZjFzdmpnSG54a0NXSGVrdG1xMFdGcDFIeTMzK0ZwSkQ1WDBpKzdEckxYbE9nUXdpOUJIUzZyK1ZySzc1UjBsdlgrdFJCZ2NBaENBQUFRZ0FBRUlRQ0NMQUFKWUZpNHFRd0FDQ3lZd0p3R3M2VEsvd3VzTDlyMkN1OVdDa1dkTkhRRXNDOWYvVkhac3JGZEllbUNrK2Njay9jbEMzUis5dEtrRnNQT0Z1Ri8zck9GcVM3dDlKZGxObVFJQkNFQUFBaENBQUFRZ3NCQUNDR0FMMlNpbUNRRUk5Q1l3RndITWdzWGhrdTRXV2RHWEN4ZkpXMG82cGZmS2w5RUJBbGorUHZrNy9Ja1pMcnl2bExUZlFxM0FwaGJBMmtScWk5TnZ5ZDh1V2tBQUFoQ0FBQVFnQUFFSXJKTUFBdGc2NlRNMkJDQXdKWUc1Q0dEM2tQVG1HcmVxT2hZSFNIcjZRbU0yNWU0dEFsZ3VNZWt1a282b3lZelkxdE5TNDRCTktZRDV0OUdoUVN5c3NuUlcwdHN0MkpJdS81VFJZa2tFbXJMcFRyV0dseGJ1KzUrZmFqREdnUUFFSUFBQkNPUVNRQURMSlVaOUNFQmdxUVRtSUlCZE5zUnF1bG9peEo4SEt6QmZ1amU5SUlEbDdYQVg4Y3NqT01IQzNVTkcxTHdSMTF0N1NnSHNtcEtPazdSenpaTHZKK21ONjBYQjZCQm9KTkQwT1RvVnNqOHQzSlhmUGRWZ2pBTUJDRUFBQWhESUpZQUFsa3VNK2hDQXdGSUpyRnNBYXd0OGIxSGl4NUl1VmdOM2l0aE5kc3ZjS2RPU2FPaHpjT0VRYzJtUFNzZHZrL1NZb1FmcjBOOVBKWjNlb2QwWVRXSVpIMzlVeEpEN21xUzY3SVdlandQaE83YlYyOGVZM0VoOVRpV0F0VDJueDB1Nmc2UlRSMW9qM1VLZ0x3RUVzTDRFYVE4QkNFQUFBaHROQUFGc283ZVh4VUVBQWlVQzZ4YkFiaE95eHAyblpsZWNvYzl4d2Q0cmFZZWF2NC90Q2hrTHlzOUJrcDZjRVd0clRGN1hMNFN0OXpWWUozbmNsWVdYTTRrZUplbFdEWk94U0daWHZzK09PZGtCKzU1S0FHdXovbkpXMXRNR1hGT3NxMDlLZXRDV1pZT05NZUh2N1FRUXdEZ2hFSUFBQkNBQWdSWUNDR0FjRHdoQVlGc0lyRk1BMjBYU2h5VDVjbDB0SnhkLzIxUFNOeVVkTE9teE5YWEdkbHREQUlzL0JYTVF3SzRyNlYyU0x0Y3kzWEtNcjEyRHkrM3VHeUNDVFNHQXRjWCtpcCtRNFd0OFJOSStNN0k4SEg2RjlEZzBBUVN3b1luU0h3UWdBQUVJYkJRQkJMQ04yazRXQXdFSXRCQllsd0JtOThLWFNIcEl3OXdlSWVtdzhMZTJHR0ZmbDJRcnN1K01zTXNJWUhHbzZ4YkFVc1N2dWl5UE1YZkpId1MzdnMvRkVheTF4aFFDMk55ZUF3U3d0UjY1UlE2T0FMYkliV1BTRUlBQUJDQXdGUUVFc0tsSU13NEVJTEJ1QXVzU3dOcUNsYjhuQkNRL293U25yZjQvNmV6TWY0NFhObVNaMjhWL3lMVU4xZGM2QmJDWTI2UFgrUDRRMTZ2dWJNUkVNTHREM2ttU1hlN21Xc1lXd0N4VTJ3MzViak1DZ0FBMm84MVl5RlFRd0JheVVVd1RBaENBQUFUV1F3QUJiRDNjR1JVQ0VKaWV3RG9Fc0RiaFllWDYrSTBLaXBqRldKMlZUMSthQ0dCeGd1c1N3RzVkdU00ZUtXbkhsaW1tQ0tPeHJKRVd3U3orT0hiWUhNdllBbGhiakw1MThVQUFXeGY1NVk0YkU4RDhuRCtwY0xYLzRVaEwvRlJoN1h6U1NIM1RMUVFnQUFFSVFLQTNBUVN3M2dqcEFBSVFXQWlCcVFXd2k0WjA4RGV2NGZPYklrdmZ2U1M5dFlGZG15dWttNVRqUEMwRS8vOU04NEtTRGl5czJCN1hZK0kvRDhIQnpjOHNON0g0Ky9tdXdTckpvbWhUY1piUXUwdjZmZ0tFbUFqbTdKRDNrZVRNbTNQak9xWUFkdkdRV09BR05Rdy9INUlmL0RLQmI1Y3FGamdmMXREUXd1YWZFUVMvQzlhdGJSTVR3TDViV0lzNjA2NWZ3RkFnQUFFSVFBQUNXMGNBQVd6cnRwd0ZRMkJyQ1V3cGdBMWh4UlZ6Vy9zclNTK2NvVkRSZHNBdUtlbU5EWmtKSGVQczl5VmR2dEtCWTU1WlRLeXpnSHE5cEVkTCtzbUduZXJ6U25wVTJOKzZyS0dyNVRwdTE3NlNUa3hjdjcvekxaYTlTVkpidnhaWVh5RHBWNG45VGxGdFRBSE02MzF1d3lMT2ttU1J5a0xqMEtWTjZJNko1RVBQaGY0Mmd3QUMyR2JzSTZ1QUFBUWdBSUdSQ0NDQWpRU1diaUVBZ1VrSVdHamFLWEtaWDAzRW1SaVBsblRweXN3T2tQVFNoTmxhRERnMVFSVHc1K29UZzlWSVhiZGZEY0hzWTZKRnJCOW5ocnkzcENNV0lvTGRNbGk4N1Z3RHhlTENneVRadlhPdnl0OHRjbG1jY0x5MEs5YTBkZmJNaHhidFByd1FEckdqbG1vaGx5dCtyY2IxdVhwQWtVbnkxWkhuNXJWQmhQdFpiTUk5L3Y0bklhdGxqeTZTbXphNUV6b3o2M0dTNnM3bHF2TzZXSDNKQXpkVWpJbmtkbnUxTlo2dDhpZ1FTQ1dBQUpaS2lub1FnQUFFSUxDVkJCREF0bkxiV1RRRU5vYkFsTEdyVWx4SFloWTJqcjl5TzBtZlRkeUIyQ1Y1Q1NLWUJaMW5TYkxGV2wyeHU5MkRnN0Jvb2FGT0FMTmdZK3N4aTMxMUxxWHU5MldTSEtkcnlkWmdiUlp5WlhZNWJvOTF6R1BuZE5YR0lwdmpnbjA3OGJ6bVZsdTNBT2F6NlRPMVQyVGl0c2F5TytyYmN4ZllVci9OSGRXWk9XOVJzUC95Z09QUjFYWVFRQURiam4xbWxSQ0FBQVFnMEpFQUFsaEhjRFNEQUFSbVFXQnVBbGdzeGxLWDJGMTIvenVxd1czUW0yQVJ6TlpUcjV1aEJaVEZMRnNhWGFuaHROak43aW5CeXFYcDRtWUxNQXRnTGhjdUxIVmVYQWd5RDJ6b3orTFh3NE9vTVNmM3ZaU0h4YXplVVBDNlhLVHlCMFA4dU5OU09vM1VjZVpIQzBBWGFxbm5lR3VPVi9mdUVjN1h1Z1V3bnhVTHB5bkZZcFN0R0U5SnFSeXBFM052ZmtRaCtCNDJ3RGgwc1gwRUVNQzJiODlaTVFRZ0FBRUlaQkJBQU11QVJWVUlRR0IyQk9Za2dOMUUwbnRic3ZYMXlkNjRxNlJqaW9Eb3U3ZnN3SnppTmwwa0JMcDNIS3U2WXJjdVczMVo4RmtGVzA4UndOeVg0Mk5aRUxOQTBCUWMzbTZtK3kzRUxUSTEzcGZYN3ZocEZtMkdkRXRNeVRMcHNlMG03T3h4UTQ2OVRnR3N6ZlhSQWUvUFYzTndEd25KRy9va0NJZ0oyblk5dFVzdnJvK3orN3BaeElRUXdCYXhUVXdTQWhDQUFBVFdSUUFCYkYza0dSY0NFQmlDd0Z3RXNKaEZoN081MlRyc3h6MFdmZVVRdzZ4TkJDdGJWUFVZcW5OVHU1UloySEpjTll0Z2RjWGkxRDBrZmJIeXgxUUJiTlhzT2lHbTJOVmFadnZwa0dIdi80MWd2ZFFaVXFtaFhSNWZMdWxQRXpwN1poQVZ4eEJHcnQ0U1k2MDhOY2Ric3pYWThRbnpUYW15TGdITVo4M3VqTGVwbWFRdHZXeGgrT1pDY1BRelZ5NjJ0cng5RUtOVDFsZXRFM05wZGlJSXo4bUpIeWpqRXloYkFMNWYwajE3ZmthUFArUDRDQWhnY1ViVWdBQUVJQUNCTFNhQUFMYkZtOC9TSWJBQkJPWWdnTVhFcnlFdnRkZVg5TDVJd0c1ZjdCOGlhUWdYdWRRallpc214MUd5QU5mazd1aSsyckkyNWdwZzdzOHVrYzhKbVNEYjVtcnJPY2NnbTRzUTV1OWVXMTQ1RzJOYjhIV3ZhU29YMTFpTXRUTGZ2eS9tOVhSSlo2UWVrSVo2bDVGMDQ4UStyaEppeWZtc2xjdlhndUI2WnFRZng5WDZlSWcxMTVTa3dxeWRWZk5ka3U0YkxCU3IzWFo5bm1QaVYyNTh3RVJzVkdzaDRNUW9INUprYTBDWFBsYTZjd0dOQURhWG5XQWVFSUFBQkNBd1N3SUlZTFBjRmlZRkFRZ01UT0FDSVk3V0hXdjZkZUQwZ3pxT0YzTjdIT05TR3hQY3ZCUmJXZDI1c0xUNlNzZDFwVGF6R09HNFNDK1MxR2FKNWRoY2R1dHF5MWpaUlFEelBQMDl0bmVSM2ZNVkVmSE5kVDh2YVg5SnR2WllWNHd3VzhZNXE2WGpQTVdLUlJ0YnkvbVNQa1dKeFZncnoySHE3SnNQYTRpTDFaVGRzWWxYMi9OVGRuRnNDNUJ2UWRYUDErbUpteExMNk9wdWlQdVZDSFBnYXRVNGNFc1h3UkRBQmo0Z29Ucy93ODQ0dlVPcCs3UENpNlkrTHRIanpQWjN2ZTVZL0w3eFo5bXFwR2F6SG50ZTlBOEJDRUJnYlFRUXdOYUdub0VoQUlFSkNWeTJjRjJ5TzV3dFRxcWxxd0FXaTUxa2E1SzdCK0Z0NktXbVdJTFpWYzZYT3dmSEgxcnNXVmw4V2NocEU3Njg3bmNVbDRUSEZLNlJKMFlnZEJYQVZ0M0c0bzZWaC84dlNiWmljb0QrVTRmZW5JYitWa0tkWXp6RkF0MjdpN0V6TURZdE95Y21XYzcrOXNGc2RxOXBTSDZRSTRENWM4RGlWZDJaclF0eS8wZEJmUFFsc2xxZVdpUVBlRjdDczVVaWZxM2JkYm5QM2l5OWJkVUt6T3RaOG40c1JRRHpTNm1MdFJ5ZUh4WlpmWnVzT2k4ZUxEVHRqbTNMMEZVL2J2TnY0V1dJclkwZHk2OXI4ZnljaWRWdXNYY29ZaUQ2bkRRVmordmtKUDVzUDY1bDNsM25rdHJPVnFhMmlqZVhQNVBrMktGTnhiRWNiUkhyNzBEUHZVOTRodFQ1VVE4Q0VJREFMQWdnZ00xaUc1Z0VCQ0F3TWdHTFZmNlJWL2VabHl1QXVZKzdGZ0hwRDI4Snd1N2xkTW40bUlQaHVzRlZLeWFtSEJtRXNDRmNJbTBoNUF1QjNRNy9NRExaRkt1dmNoZDlCYkJWWDljSUY1RWJKTUswTmRqZkZaZWN6eVNJR1lsZG5xdWFoUmRieWRtOUxxV01FWEErWmR4eUhWdjJ2VFhCUmROdExQYStKRmpYZWQrSExyN2crdm0xOEZzdHFRSlltd3VpTTExNnZUNEQxZEtXS1RMMmpGdE1kT0tBWjdjQVdickYwZEI3dlk3KzZ0eGRseXFDTFVVQWk4WC9jMXhFWjU0dGw5U1hIS21mQ1hWbjdWTGhjOHpQL1hrNkhFWi9GanBCaStOZ250eWhmWmNtNXVLWFRCYmx5OVplT1gzNVJaVXpNdHVsbkFJQkNFQmdvd2tnZ0czMDlySTRDRUFnRURndy9EaXNBNUlqZ1BsQys0UUVsOG5ZeFhpb2pVa05YbTVYdW50TE9yWmpNSGlMYk9hVWVpbDRjWkhGN21tU2NzU1FvUVF3cy9VKzJmck9GNUdtWVB6VlBYQThLN3RST2lpOXJRaUdzSnJMblllRm1BY0Y0V2tPYmpXT0MrYk1rN2RLUExCbStJd2doZzJaTGJJdDFsL0taVGRtaGRYMnZMWUpaMjN4MmR6T1FyRS9MNXJLRU1reEVyZUdhaTBFbXR4ZC9mbGhZV0dNeEJOamJjaW1DbUNwTDN6TU5lVXpvY3JmWjhDZlhZNFYyVVg0cXZibk0rUHZ3SDhZOGZ6NCs4V3UwN1pFN1NwOFZlZDlhQkRDaHZ6OEh1dXMweThFSUFDQlRnUVF3RHBob3hFRUlMQWdBckVMUWFvQWxob2ZhV3JMQVZzWCtlMXRuWFZNZFp0UzNSSGR6dXQxekRRSERFKzFwckticVFXY2YrMXdQb1lVd0ZiRCsxTHc2UEEyM29KRWFuSHNObHMvMmFYbGhBNFhHSCszT3RhVUx4T3A3QnlmelBHK0xMN05xWmpiNDRLWWszb3h0UERwSVBtdktzN1BFQmVwcHZoZnFaZGQ3OGNEZ3J0UGRRMHA4YnphWENmclJMQ0xoclhiVXJTcElIN042WlNmL2J4K29CQXNxdTZ1Rm9BdC9BOXhqcWRZY2V6NzdydEZETVE5SnJST2FscHpqZ1ZZU3R6TDhqaTVBcGhmSkRsNVRNeWR2OHYrMlhMVkxvbERXR0NYeDg5OU9aRXpkN3VELzNuaFp2cU5uRWJVaFFBRUlMQVVBZ2hnUzlrcDVna0JDSFFsRU1zVW1TS0FwZjdZWEpmRlFNcUZlOFh2cEJEYnBPN0hyZDhvVzBoN1pJaXhraXA0REJFUWZRd0JiTFZtVzRIOWphVEhSdHhXNjg2WUJRNWJ6bG5NY1RENldNeXdYSGRIaitrTGh4TXg5TTJxMlBVWlNXbDNuV0JGV2MzQzJOYlc2N0VJYUF1RkdMZW1mczVYWEV6ZlVtVHd2RXREaGRUTGJwMEk5cTFnM2ZidEJBQ3hTN2l0eUN4KzIxclNic2R0Z3ZUSGdvWGk5eFBHcGNvMEJOcXNCSmUwWDVzbWdMV0p6MDBuSS9VendlMWpzVHlIT0gyTzUyajM5MWdjek5TeFVpMi9VL3VycS9jOVNYWkQ5WXNaQ2dRZ0FJR05Jb0FBdGxIYnlXSWdBSUVhQW0zV0k2NGVFOENjNmZHZENiR1ExaVYrclpac1N4MWZ3aDNQcXFuVUJlYTNvT0c0V2Z0SnVuK21LNFd0Q1d3aGR0UUFMb01PT214cnJkMHJrM2RjSmdmcUhhSTRlTEwzdTRzUXRocmZMaTEyazZtNlNGcGtjOXdYYzB3VkRvZFkwOVI5MkRXenkyK0hONFRzbDg1TW11UGVlWVZDcExJQVVaZkF3bXYzWmRmaW1HTnRXVkR5L2pUMVh4WTV1aVNwaUYyV1BVOWZUbmR1MlpRUGh4aUNRMXVFVEgwT05uRThpMGUyQkxwTnplSXNDUGljSFQvemhXK1NBUFllU1FlSHorc2M3S2tDbURPNVdselBzUTdPbVVlNTdsQVdueWtKY0xyT3NkcnU2K0ZaK001UUhkSVBCQ0FBZ1RrUTZQSWpkZzd6Wmc0UWdBQUVVZ2hZVkxFNFkxZStwaElUd093S2FISExnWktiaW4ra1B6OWxRaVBXY1NhcS95NWM5dXhhOHViQzZ1WkNOV09WWXgwNW5idUQ1bG9NcXN0eTF6WlZDMS91eTJ5WEZCOW50U2FMVlhacmNveVcxQmhoYnZ2VmNDRW92OG4zK2JEbzVmZ3hPWEZZYkZWbWNlZEtJNTZKTWJyMjVkTFB6TXNrT1M1UGJ2bEhTZmNwQkN2SE8wc3B0a0t3QU4xVUxKRGFrc3R1Umk2eDdJeiszV01CMDhXWlFIUEVPTGV4Q0hKRVI1SFRDUmVjUklLTWF5azd2NTQ2enB4bnQ5aXFFTy9aV0RSMW9IQi8zcy8xYzIrVEJEREhyblJXUlg5WDVaUVVBU3htMGJrYXovdHNWM2ovODgrbERJLytISEVpbUJzRmkrbmJKMHp3a09CT252dVpzK3E2N1d4V2gzOWJlSEhrVEkrbmwvN283M3FMYVBkTHRQSzJDT2w0bW5PMlRrNUFUeFVJUUFBQ3Z5T0FBTVpwZ0FBRU5wbUFyVEg4QTNDbmxrWEdCREEzYlhNeGZHWnc4N0lZdE5jYVlaYXpadFhGTktuTE5wZDZDU2d2NjEzaHJmbGNMNEE1VytBMy94Wkg5MjZ4TUZyMTU4dXYzVmk4ZmhlNzVqMGtXRFhsaUdpT2oyVUI2S09ocjNXZW1SeFdxN3FyeTZVdDRITGpxN1ZsVzZ5YmkzK2p2RWJTQXpNbkdoUEJNcnM3UjNYUHlSZkNOMldLWUV1TEpiVmF0QzN2YnR3SDJBTGIydExQbHNOTnhWWmdQcE5kWWgyT2pXTlRCREFMelhjTGduR1ptYjkzL0VKcWxheGs5VDIwRW5ac3hYenBFTU9xTFB5VSswZ1ZrbktTdWFSa0gvWjNpSVV5QzZ5NXhiOUIvQnNqbHBBa0o4NW5xcnUrQSsyYk9RVUNFSURBUmhCQUFOdUliV1FSRUlCQUE0R1krNk9iclFRd1crLzQ0dXlnNTdaU3FaYnFEMUQvbUxYMTFFdEN3SGkvS1Yybm1GRk5HMjlSeHZHWGZDRndqS2xiRm0rcVQ2bFpsd092MjJLczdmdkF3ZTB0OU5saTZtWWJkdG9zeW5qZi9HOWJ0ZG5Tcjg2RnNTb2d4aklMMW1FcVg2aGlGOVc1WXE1YVY2UmVvcnllM095b01mZkhOa1krcjg3K09vWlE2NzIzSmRmaGllNmdZODVsN0hNU0MxWSs5dmh6N2QvbmF2L3dHVHNuNjVqWTU4cFNndUE3WnFNenFKYXRrKzJlNnBjT01mZmhpeFZ0ZjFyc3p5OXJEbzlmZXZpNXRialdWUHhkWUl2U2QyZGFpUG8zaEw5em5RaW1xYVJZcDFYYit2UG1XZUc4TmZYcjN5T1BMOXl2L1IyVGs4SFlJUkRzUHY3c2xqazdYcWgvUDlnTm1BSUJDRUJnOFFRUXdCYS9oU3dBQWhCb0lKRGkvdWltRnNEODF0UlovK3pTNVF5QS9ySDNMelg5cnQ0Yzd4YXNlT3htWUhlRzJLVmppazJxQ21BZTA1L3hkNUxrUzg4WEd5YmhDNEZGUEY4c3lzVS9xRzIxNGgvR1g1dkpHc2ZnNk12T25rSDRkUDkyYWJTbGx5OWZLeGUvcG1EcHZ2RFlIVzZmeU1UcUxFYm1jR2E2OEt5N3dQbWMyWXJPNTZncGsxcVhHRGdXbVN6T3RwVzJtR1JqQ0UrcnRiNGl3MzMxdjRKWTdyT1Njem50c2o5RHQwRUFheWRxaTA2N1U4OWxiMk9mSzBzUndQeDk1Y1FicXpKVWRtVy80SEE4d3FiaTczOS9aMzZ5NDRNVXM5VHk1NVd0anUwT25WcHVIaEt4TkxtQytydjYzdUVNZG5HdmJQb05VSjZmclgwdHJsRWdBQUVJTEo0QUF0aml0NUFGUUFBQ0RRU3VGWUpueCtKYk9ZYlF0U3N4czlvdTYzWjFzUHRiV1ZDS1hUcW0yS1E2QVN4MTNIS21MV2QwZERCM1o3TDdXYW1ET2F3eGRUMDU5YW9DV0xudEpZSkZtRjJkM3RmUTZaV0RPK09sYXY3ZWRqbjI5NjlkYzNQajIrU3NiWXk2WndVTGpMcUxscTBKN0I3b1dEZU9qN01xdWE2UGJoZkwvcmpxMjRIbjdVNXE2OFM2TXFRSWxtUHRWamVYSmNiT1F3QkxlNHI2ZlA2bWpaQldLL1k1YllISEZqK09HVGxrc1hXUXYwdFRTODY1cW5QZlR4Mm5YRytYa01uM21nMk51eVRHcU92Sy9UdDJXVk15REFmZWR3eXVPZ3UxYW44cEwxbHlMV3ZyNWh4ajQ3MjlIZkVMdXh3NzJrQUFBbk1qZ0FBMnR4MWhQaENBd0ZBRS9LUHd1YVhPL01QZmx3TmZyTXZGRndHN1RGUkx6by91MktWanFEVzE5ZFAzQW5hVndLWXBTOThjMWpnR3h6WUJMSFc4T3F1Q25QZ3hxZU1zcFo0dmJROE9RdW9xTytiVE05MkpVZ1ZzVzZUOVdRaEUzZVRHMDFjRTgzcHk0NTIxN1pVdHd1eWUrYXFLeUR6SC9jMFJLdVk0LzZubTFQZnpkNmg1cnV0eit2V1NIcEN4aU5Sek5XUW13a2NGRjhXbWFmWU5Vci9xTitheTZHeTFOdzNKTzJMSUhEUHM2QlpYNnlHRDFMZFp4MW1zczVXdlk2cFNJQUFCQ0N5YUFBTFlvcmVQeVVNQUFnMEU3SWJ3Z1pDaGFWWEZiZytPOVhUNVNodGZqcS9YNE1hVyttYlZvcHBqWXpXOThaMWlvejVWdURHZU5PSkE2N3BZamJpazMzWTloQUJXZmt2dmVHbU9BVFBIQU5sanM2ejJieTUySnphVFV6TUhkMWJOdjAxb3MzTEpkQWJVT2xmZVZSZGRSREM3QnRtaTdhV0oyVUx0M3VqZlZYVXg1T3FXc25JemRqWktuNWM1dWtlbUNoVUpXN1dSVld3eCs5RGl1K1hEbVFMdldERFc5VGs5bGdCbVN5bTc0dmN0ZGI4SnluME9IZWZLdnlsc21WcVhqZG5qV214eUxMSzI0dDhWL3QxaVYvQzZNc1IzVjdsZko3ejRoQ1NIZXFncmZzSFFaR25iZDM5b0R3RUlRR0F5QWdoZ2s2Rm1JQWhBWUVJQzFiZW1kdGR5MXE2L3F4SEFIQVBNTGduT3pMUjdaWTVkWExjbVhPYWtRelZkck9ZU1V5WUdvMm4rUTEwaWZIYnM5bWNoc2tzY2x0ajh0K252ZGoyMUMxRTVubGhUcks5eVRMSzJiSzNtbHlxQ1dmaHlGcnFEYWo0dm12WmhaZkhuR0hLMmRuTmNxSnhpcXpESEZiTlYySGRtZElZUXdPcDNjYWxCOEhQT1pFN2RNUVN3dHVRdE9YTnpYV2YyL0dDTEpWVktOdWljTVcxVjd2R3UzOURvMWNGS3RxM1BXQlpyOStIUG1SUlh5cFM1eDl6T0hSckMxcmJsMEFncC9WSUhBaENBd0t3SUlJRE5hanVZREFRZ01BQ0J1cmVtWHcxWm5kN1pJSUQ1b21zWEZnZkRyMXB2RE9tQ01jRHkxdFlGQXRqYTBHL2R3SFhCNzMzNXVuR05SVVUxS0g5YkVHclhkZlkzaTAxMXhSWnIvbnVkVU42MENYVUpEbHpYc1FKZksra0dIWGJQN3RwT3l1RWtHM1k1T3JOREgwTTFzVldJdVc5VHVVT1JPT1F2V2hiczc0bkhGQUxHaVRPRXNra1dZQmFzYlFrNlJIbFJjR091Njh0WkpXM0JiZmYvSVl2RjdLYU1rSDZ1SFF6ZjJTcWJTbHNXYTc4UXVHMElqai9rbkoxSjBna0g2b290elBlWTZia2ZrZ0Y5UVFBQ0cwNEFBV3pETjVqbFFXQUxDZFRGRHJKcjFITkNacWVxQytUcXpXOWIzQTVmWk8zbTRyZitRNVdMRjIrSWJ4TGVxTDZtUjlhcG9lWVQ2d2NCTEVhSXZ3OUJ3Q0tVQlFZSFhGNFZCOTUzNEc2NzRGUmRpdXF5VXE2eXRaWXRPdTJpZHRjUXdMODZUOGNwc3lXRjNYdjh2MU9LTFIrZldDVFFPS3JGZFRFbE8yYktXTFlJczNqdnpIRW5CQUVQSzhNVWN2bDEyZ0tZKy9QZjUrUjFNM1ZYOVdvM1JRQWJ5akxYVEdMV1dINkdMYm9QWlVtMU9uWFZPS1RsMHhpem5JNVpZMzB1Q0dCREp6Tm9zL2djY2sveW4weGFRQUFDRUJpSUFBTFlRQ0RwQmdJUW1BMkJhdXlnVmRyeEw0UllSRTBDbUJkZzY1RjNTM0xhOFdyNXE1WTNvNm1MM3kwSWNmNlJhVmVwVmVrYVc4UHVGV2NVS2REL2JXQnhybTQ5Q0dDcHUweTlQZ1J1RTRTZXNpV21NNUJabkhwWG9nRG04VzhZNGdBNkM2d3RxUnlVLzhlbGlmbjNqMTJNZkVsMVBKN1V1RjErM2h5YnpDNlAvdDhweGRreDl3bEpPY3B1blNsdHEzVXM1anNnUHdKWUYzcnRiZHFzQjIxRmZPY1JySVNHWHNXbUNHQ09pZWVZblQ4WUFGRE1sZkFKaGZEOXdnSEdxWGJSUjB4eVBGR0wrN1lrclNzcExwUmRsaFNMWFRhWFpBOWQxa1liQ0VBQUFyOGxnQURHUVlBQUJEYUp3T1ZDbXZNcmx4YmxpOHN0d2dYWHdiamJCREEzdTFIb28ycHA0amV0em9Ka0lhMXJhUW95VzJmRkVodWovSWJZd2JTUERRRnpIY3ZzUDJPTk8vd2RBYXdETkpwa0VYRHNMUWVHdGh0aXVkZ1Z5c0owWFZEcHRtZkhjYnpzenZiWVV0d2FDOC91Zi8vaWVibFN4dXhzL1hPQXBIK1E5Sk9NZHVXcUZzSjhxYmVMMFhVNzlHRkxPSCtXT2M0Y1pWZ0MvajFzYStDNlRLSnZMeEtNUEtUQmVuRFlXZlR2TFNhQStReFpFQjQ2anBORmFvc3lxU1VXVzI1SXF5eC9CamlUWWwwWnk1WFFZN1d0TVpaVjhYOUwrbGp4V2ZFSERmTzJKZUxMVTJGbjFJc0pZQ25CK3pPR295b0VJQUNCNlFrZ2dFM1BuQkVoQUlIeENOU2xPVjlaVEZ3eXdRTE1NNnR6aGJUQTVOZ1l0dm9vWjJxenhZRGpjTmk2eEQvK2o0Z3NyY210SVNjdCttcUl0b3hORHVydmxQUys3QXhWRU1DR0lray9UUVJzZVdraGQ0ZFNoWlhiamY5VHJnQzI2c2JDbXNYcnh4V2ZBVTZRa1ZNc2ZCMFM0b0oxRmI2cTQva3o1dG9oeUg3T2ZKelpkdDhNeTdPY2RXNTczYnF6WnlZV0dYeHVVcTM5MXMweEpvREZYTyttbW45TUFPdHFGVjAzLzdhNFZxN3ZtSUJqeE5uelh0ajlzcW0wV1ZPMWlYYnV6eS9rVGg5aHN5NFFrcmswZFQxMHNvQVJsa0NYRUlBQUJOb0pJSUJ4UWlBQWdVMGgwSlE1YmhVbzlsS0pBcGg1N0JLc3dCd1B4aTRZOXdqLzMzK3o2R1dMa250THVtb0pYdW9iNjZhNElNNnVaQmV2MU9LZ3ZZNXJaRkd0V3V3aVpiRnV5SUlBTmlSTitxb1NhTEwrV29rK2RnWEtGY0Q4Yk5ocXk3RzZVbDBjVi9PeTRPRkx1SU5uRHlWODFlMjZyVmIvc3JEYWZFUWhpRG4rV1Z1NVY4aFl5K2tabGtDVDYzdHExdEJJdTJyTkFBQWdBRWxFUVZSaFo5T3Z0MDBSd0laMFN6eXdlQm4wMUg1WVIybmRKb0RkUjlJYlJ4bTFYNmNJWVAzNDBSb0NFSmdCQVFTd0dXd0NVNEFBQkFZaFVHZjlaYmNNQjlOMjdKOGNBY3dUOG85VFoyRnlGaWRiYUsyS0wwdStsTnRWc2x4U3JiaWFoS3REUTJheFZCaE5RdHBZZ1dyYkxsWW5qeEJBT0pWRGFqMExJRDREVlNGa0xGN1ZlZG5peCs1OWprbTFhY1VaODJ5NTFhYzBXZUNzUko4bTE1eVkrM0JkVExHMmVkb2E1Q2xCYUJyYVRheHRYQXVBdGdielJkMloxcXJGZ2ZCdldyamlPUk1iWlZnQ2RpZDdXYVZMNzhQelpoenN2b25BcGdoZ1E4YWFjdEtDK3c5N1pBYnByVzJOYlFIMEJ4bThZeWNJWUIzQjBRd0NFSmdQQVFTdytld0ZNNEVBQkxvVHFMUCtjbS9sSDJ1NUFwZy9IeTJXbEYwZVZ6TnNlcU9jWXFIUkZOdzJKUzM2YW55N0tkaml6R25VcXlVbUNIU2xITHRZZGUxMzNlMm1Fc0Jpc1ZYV3phSFArSDB2cTdaOHN2dXdBOFdYaThVZUMyUC9Yc1FBNnlxQU5WbVdWZGY3K1JBWHpKa1c2NTc1UG54eTJ6cERyRE5XMnZWdVpXWHFUTFFXR2dsK24wdXp2WDdkZDhkU3hTK3ZOUFk1dlJRWHlMNmZLZVZkUndBYjdwbEJBQnVPSlQxQkFBSnJJb0FBdGlid0RBc0JDQXhLb081dDZZL0M1ZmxMWWFSY0FheHRnazFXWEk2OWRiK0lOVlJUSExEVENpc2E5L3VWQkRKWGxQUUpTWTVyVmkxai9VQ05YYXdTcGozTEtnaGcvYmVsNzJYVjJmVWNtTHY2bTZTYzhiQ3JBT2JWTlZtQk9iYWYzWXdPQ3MvZEhNVWxDelFXQnI4ZVhFRDc3eFk5bEFsVXZ6dVc2UFpZWGsvc2N4b0JiRDduSHd1dytld0ZNNEVBQkxhSUFBTFlGbTAyUzRYQWhoSnd4a2ZIQnJMQVZTNVZNV3BJQWF6SmlpdlZUYWtwS0srejFqbmpXS3o0aC9NN2F5cU5tU1V1ZHJHS3pYbXVmMGNBNjc4emZRUXdXenU5VDlJTkt0T29udVUrQXBndHpONFIzS0U5ekRkRGJMQWpSOGlHMTU4bVBVeEZvSm8xK0pWRlFQVDlKRG54d1ZKTDdITWFBV3crTzRzQU5wKzlZQ1lRZ01BV0VVQUEyNkxOWnFrUTJFQUMvZ3c3T0FTbEx5L1BsaHgyRDdRNzA2b01LWUI1M05kSWVtQ0ZhZDI0ZGRqN3hnRnpZRzRIdXErV2NzeXpvYmM3ZHJFYWVyeXAra01BNjArNmp3RFdGT3VtS21EM0VjQzhRbHVaT2ZQYzgwdldYcnNGTjhOWThQbitoUEo3c0dCbllaQXlIb0Z5M01oTkVMOU1Ldlk1alFCMnp2UDB5K0Q2YkZGODZ2S3BscGgrc1JoZ2prOTMvTlFUbHZUbFJDdjFOVXlOSVNFQUFRaWtFVUFBUytORUxRaEFZSjRFbWdKbnJ6TEhsVlBYRHltQW1jWTlpL2c4YjY3QmtoTE0vckloSStWbEt1MVQ0b0E1cmZvSEpWMi9abXk3N3p4anBLMXF1bGpaMWZSSklTMzdTRU1QMHEzanB1MWZ5ZHpwanVjZ2dDMGhpWUJkZDZ0V2xxdU42U3FBT2N2cWNVWEdVbHRVbG90ZEV4MFEvcGpTZit3cmdOVWRvam5IWlJ2TGxYbVFoNGxPWmtzQUFlemNXL09xa015bWJ0T20rdnpQUFRCTlZ1SjlQM056NTBGOUNFQUFBaHRIQUFGczQ3YVVCVUZnYXdqNGg3N2RCUjNmcDFycWd0RVBMWUExeGVINm5LVGJSZ1NoQ3djWHhsdFZKcDRTQjZ6cDB1NDMyWHRMc29nMlJtbTZXTTNGb2lDMjVxYjVUM1VCYXRxM3BmQnJlbjdNdllzQVprSHREVUZJcnU1ZG5ZQ05BQlk3NGZ3ZEFsaUExWjJCbURXVnJjWG5abTFwYTlWM3RSem9KMGg2SVFjZUFoQ0FBQVR5Q1NDQTVUT2pCUVFnTUE4Qy92eXl0WlZqdHBTTDNRTHVVTGdJbmxyNTcwTUxZRTJaR0ZQamNEVzVNY1orakQrc0NINS9XTTBXcEFodmZYWU9BYXdQdmVZc2h0c3FnRFU5djNYV1h5YVBBTmJ2L05GNk93aGdBWGJ1ZmI1UFNIYlJkQUllWGxpM3ZueG14Nk1wVE1KcW1pbVc1ak5iRXRPQkFBUWdNQThDQ0dEejJBZG1BUUVJZENOdzQrQkN0VU9wdWJNd09yTmJ0UXd0Z0xuL3BqZkxLZTVMVFQvS24xMEVZWDVhQTQ2bURKS3UzdGF1RzkxenRrSUE2MGNSQzdCejg2dDdmdDhqNmU3RnMxVjJYMFlBNjNmMmFMMDlCQkRBenIzWFN4U1Qyakk5ZTRWSFMzTFNuRE8zNTJpelVnaEFBQUxERUVBQUc0WWp2VUFBQXVzaGNGRkpkcGU2VVJpK3lmckxmeDVEQUd2NllaM3k0OVJaN3o0aXFScUF1NjJ0WTRaOVF0S3VGZHhqdXo5Nk9BU3dmbWNjQWV6Yy9LclpHVzA5ZVd0Skg2dEJqUVZZdi9OSDYrMGdnQUIyN24yT2lVbGpXMDkzT1hsdHNUN2QzL2VMR0lrM2xmU3RMcDNUQmdJUWdNQTJFMEFBMitiZForMFEyQXdDcTB4ZXpzQjQxeEFYckc1bFl3aGdseWppZlgxU2tuOWdsMHZLajlPbXR2NUJleE5KLzFtekNJc0REb0JmL2V5ZTRnYzhBbGkvNXdVQnJKNWZPUk9mWFh1ZDNkU0NiclZNS1lEOVI4Z2llMHEvTFU5cS9jaVFuS0ZhT2NXS05Ha0FLbTBWQVFTd2MyOTNVOHpOVmMzVXNBVlRINlMyNFAyZVMxMnMwNm5ueUhnUWdBQUVGa2NBQVd4eFc4YUVJUUNCQ29GckJZc1JCMyt2YzUxYVZSOURBR3R6U2Z5elNCRGJwaGhpZHYzYXF5SEZlVlBjc0xIZEg4MFFBYXpmbzRjQVZzL3Y2aUZ4ZzdPSk9pbkV0eHN3VHltQVRSbVhyWThiZGI4VFNldE5KSUFBVnIrckIwcDZhc3VHSHlMcGNaTDhJbTB1SlJhN3JNbGRmQzd6Wng0UWdBQUVaa2tBQVd5VzI4S2tJQUNCREFMK3dmOVdTYzl0Y0owYVV3QnozMDFCNlZPQzFEWUpXdmVWZEhpRlFaTkx4QlR1ajIwQ21JV0xKMFd5WG1aczUyaFZMVGp1TCttcWxSSElBcG1HZk9nc2tLdFJ2Uzl2bHZTVzhCdzN6UVlCTEcyZnFMWGRCQkRBNnZlL0x0NWd1ZWJKa3ZhVTlJMFpIWjhyaE44MERuMVFWOXBjeG1lMERLWUNBUWhBWUY0RUVNRG10Ui9NQmdJUTZFYkFNYkZzdGRIMjluWU1DekRQdGlrT21PTjc3U1BwOUpZbE5iM2hyUlBQbW43QVQrSCsyQ2FBZGR1eCtiUkNBRXZiaTdFRU1JOStaVW5mS1pJLy9LSmxLZ2hnYWZ0RXJlMG1nQUJXdi8vVmVLRjF0VjRyNmFHUno2RXBUNWN0ek44ZzZaNHRnenBlNHA4VTFtcy9ubkppakFVQkNFQmd5UVFRd0phOGU4d2RBaERJSVRDV0FMWnpDR1ovamNwa1RndmkyRmRhSnRra252MlRKTHRRL3F6VXRzbFY2cGxGbldma2dPaFlOM2F4NnRqdDJwc2hnS1Z0d1pnQ1dNb01FTUJTS0ZGbjJ3bkVQcWVuZE85dDJ3dUxOdTlxcWZDbmt0NDk4R1krWE5MTEluMzZlL2I1STdsQ09yU0JYNGlka0xHdTIwaDZ2NlR6dExSNXBhVDlSaEx1cmlMSi85amRrZ0lCQ0VCZ0l3Z2dnRzNFTnJJSUNFQWdnY0JZQWxoYkhMQTZWOGJ5Vkp1eVU1MVUvT2pkUTlLSm9YSTFXOTZxanltRDk4WXVWZ2xiTU1zcUNHQnAyNElBbHNZcHR4WXh3SEtKVWIrTlFPeHplcHNGc0YwS044Y1BTYnBtQzhCZlMzcVFwTmNOS0lKZFJKSmprRG5oUjY2dzUrLytJNEkxZWR1KyswV1l4Mml6b3MxNWNqeXVFNUljSU9sdmltelZCK1UwcGk0RUlBQ0JPUk5BQUp2ejdqQTNDRUJnU0FKakNXQ2U0K01sdmFCbXNxOHVSS3dIdHl5aUthN1hmNFdBNFA4dnRGMEYrdCt4MHRkbkpOMXVJdmVIMk1WcXlMMmFzaThFc0RUYUNHQnBuSEpySVlEbEVxTStBbGozTTNDUEVITXdkdjk1YVlodFdiYkN6aDNWSXBJek5SNHN5U0tZUzY0QTVqWTNDc0xkaFNJVHNFV2RZNUk2QzNYWGN0NGd0dm4zekpWQ0oyU2s3VXFUZGhDQXdDd0p4TDRBWmpscEpnVUJDRUNnQTRFeEJiQW1WOFpZZks2VjlkaSt3WTNTd2Z5UERabndmbFZhWTFPZy9hbmNIejBWQkxBT2g2N1VoQ3lRNC9CTGliWFhOUEljOWdRQnJOKzVvUFU1Q2NRK3A3ZlpBc3lremkvcEpaSWVrbkJ3ZmhKZWJqbEJSNm9RNW52VjdwSWVHZUtKV1FRcmx5NENtUHQ4WXFJVmxpM0FiTFhsTlo2YXNNWlZsY3RKdXAra3Z5emEvbUdsSFFKWUJraXFRZ0FDOHllQUFEYi9QV0tHRUlEQU1BVEdGTUNjcGVrVGtoeU12MXhTckl2K29IalQ3SHBsd2F2Y2g3UGtIU1hwamgzNkhvYmMyYjAwWGF6bWNxR0tyYlZwL2lsN0ZPczc1ZTl6RUZ0UzV0bFVCd3V3UHZTYTJ5S0FqY04xVzN0RkFJdnZ2TCtuandsQ1ZiejIyVFg4TXV0SVNZN3ArVVZKRGovZ3NvT2s2eFFaYks4dTZTYmhlOW9pVzFQcElvQzVMd2Z4OSsrQVc2Vk91TEErKzFwb2M3eWtMNWNTOHRqS3l6RkxuWHpFY2NsdUs2bHFYVjRlQmdFc0F6cFZJUUNCK1JOQUFKdi9IakZEQ0VCZ0dBSmpDbUIxSXBWL2ZMNG0vUE9ESGt2d0QrdVBTOXFwMGtjZnk1Y3UwMEVBNjBMdGQyMFF3TWJoMStjNW1NT2VJSUQxT3hlMFBpY0JCTEMwRStIdlZRZDJkeHpPS1V0WEFjeHp2R1NJQjNiektTY3NDUUZzWXVBTUJ3RUlqRXNBQVd4Y3Z2UU9BUWpNaDhDWUFwaFgrZlRpcmZKTkpiMnFlQlA4d1FIamNqVzVQenBBN1lzbnhJc0ExZy8ySE1TV1BpdkFBcXdQdmVhMkNHRGpjTjNXWGhIQTBuZCtIU0pZSHdGc1hTSVlBbGo2bWFJbUJDQ3dBQUlJWUF2WUpLWUlBUWdNUW1Cc0FXeVFTVlk2YVhKLy9KRWt2d1grMGhpRE52VHB1VmgwYzN5VGNqbE4wbk9MMkNHZTA1eEwwL3pQQ0VHS3Z6M3k1QkhBK2dGdTRvY0ZXRCt1dE40c0FnaGdlZnRwcTZxWGgrRDBlUzN6YWpzMjEvNlNEcFhrNzV3KzVjS1NuaGZpalBYcEo2V3RYN0k5cllpRjVuaG9GQWhBQUFJYlFRQUJiQ08ya1VWQUFBSUpCSllvZ0RWbGZ6eGEwbDBLMTRRekU5Wk5sWGtRUUFEcnR3OElZUDM0MFhvN0NDQ0E1ZSt6WTJMZFhkSWhOUUhnODNzN1o0dGZGNjZMaDRYQTlDZjM3YXpVM3ZlM3ZVT3crNnNOMk8rcXEzZElla3FJSXpaQzkzUUpBUWhBWUgwRUVNRFd4NTZSSVFDQmFRa3NVUUI3VkhoalhDVjEzOElTNi9CcDhURmFUd0lJWVAwQUlvRDE0MGZyN1NDQUFOWjlueDI4M2krV25pSHBxdDI3K1cxTEI4MjNvR1loS1RXRFpKY2hMZDQ1a1AyQmt2Ym8wa0dwamVPV3ZsTFNhek16U1BZY2x1WVFnQUFFcGlXQUFEWXRiMGFEQUFUV1IyQnBBbGpUUmVhazRQNzQ3K3REeWNnZENEUUpPQjI2bWwyVHZuRnRVaGFFQUpaQ2lUb1FnTUFRQkp4MWNjOUN5Tm9uQ0V5N0ZJTFd4V282L3FFay8yUEI2d1JKeDRVc2tldXd6cmFiLzgxQ0pzcGJTcnAwZzBXYkJUbUhMdmhuU1Y4bzF2ZmhNUC9UaHdCSEh4Q0FBQVRtVGdBQmJPNDd4UHdnQUlHaENIUVZ3QzVZL0tpOWhTVEgzWml5N0JiZTZqck5lcmw4S3NTcytrMkh5Yml0QmJSVjhkdmppMHZ5dnlseEFyOEtiOGI5Nzl5Q0FKWkw3SnoxcHhUQXpwTDB0cEV0TjFhcisyTkpYbHUxRUhpNjMzbWhOUVFnQUFFSVFBQUNFRGdYQVFRd0RnVUVJTEF0QkxvS1lHM1o3NWJHcm1xcHMwbHJtMkl2dmh2Y1RMckVja0VBNjdkRFV3cGcvV1k2VEdzRXNHRTQwZ3NFSUFBQkNFQUFBaEQ0SHdJSVlCd0dDRUJnV3dnZ2dFa0lZUDFPT3dKWVBiOU5jNEhzZDBxR2FZMEFOZ3hIZW9FQUJDQUFBUWhBQUFJSVlKd0JDRUJnNndnZ2dDR0E5VDMwQ0dBSVlIM1BVR3A3QkxCVVV0U0RBQVFnQUFFSVFBQUNpUVN3QUVzRVJUVUlRR0R4QkJEQUVNRDZIdUl4QkxBcDQwMzFXYjlqNE4xVlVqVW1uZnZFQXF3UDJmcTJDR0RETTZWSENFQUFBaENBQUFTMm5BQUMySllmQUpZUGdTMGlnQUNHQU5iM3VJOGhnUFhwcys5NmN0cTN4WXREQU1zaG1WWVhBU3lORTdVZ0FBRUlRQUFDRUlCQU1nRUVzR1JVVklRQUJCWk9vS3NBdHZCbHQwNS9YUmt1bDhyVTZlT2Q1djZNRGd0b0N1S09BSllHYzhvZytGUHV5VjlMZW00TkFnU3d0SE5CTFFoQUFBSVFnQUFFSUpCTUFBRXNHUlVWSVFDQmhSTkFBRnY0Qmk1OCtnaGcvVFlRQWF3ZlAxcERBQUlRZ0FBRUlBQ0JyU2VBQUxiMVJ3QUFFTmdhQWdoZ1c3UFZzMXdvQWxpL2JVRUE2OGVQMWhDQUFBUWdBQUVJUUdEckNTQ0FiZjBSQUFBRXRvYkFqcExzVnJSVFpjWHZrUFMrcmFIQVF0ZEZZT2tDMkM2U2pwSzBhdzNBdjVCMDdNaGdyeTNwY0VsK2pzdmxrNUllSk1udXFibGxEbnVDQzJUdXJsRWZBaENBQUFRZ0FBRUlkQ1NBQU5ZUkhNMGdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFbGtFQUFXd1orOFFzSVFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJEb1NRQURyQ0k1bUVJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBc3NnZ0FDMmpIMWlsaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJZENTQ0FkUVJITXdoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FJRmxFRUFBVzhZK01Vc0lRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCamdRUXdEcUNveGtFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlEQU1nZ2dnQzFqbjVnbEJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FRRWNDQ0dBZHdkRU1BaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBWUJrRUVNQ1dzVS9NRWdJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFLQWpBUVN3anVCb0JnRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJTEFNQWdoZ3k5Z25aZ2tCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNEUWtRQUNXRWR3TklNQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQllCZ0VFc0dYc0U3T0VBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRNkVnQUFhd2pPSnBCQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSUxJTUFBdGd5OW9sWlFnQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDSFFrZ0FEV0VSek5JQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkpaQkFBRnNHZnZFTENFQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUTZFa0FBNndpT1poQ0FBQVEybE1BVkpEMVYwckdTM3JxaGE1ejdzcTR1NlpvMWsveXlwSy9NZmZJTG10K2ZTSHBYelh5L0sya1BTU2N2YUMycnFmTDhMbkRUbURJRUlBQUJDRUFBQXRNUVFBQ2Joak9qUUFBQ0VKZzdnYXRLZW82a2ZjTkV2eUhwbHBLK04vZUpiK0Q4L2xyU2Mydlc5V1JKQjIzZ2V0ZTFwRTBTd0hoKzEzV0tHQmNDRUlBQUJDQUFnY1VRUUFCYnpGWXhVUWhBWUVzSW5GL1NUcExPSSttSGtzNGNlZDNuazNSWUlYUTlxR2FjQXlROVhkSnZScDREM1orVHdDWUtZRDdYdjViMHF4bHQ5aVlJWUR5L016cFFUQVVDRUlBQUJDQUFnWGtUUUFDYjkvNHdPd2hBWVA0RWRpeXNjaTVZbWFhdE1YWXUvYmVMU3JxZUpGOVdYZnovcnkvSm9vQ0xCYThMMXl4MUtvdWZtd2VYeHgwcWMvaTVwRDBsblREL2JZak84THhCVlB4RnRPYjZLMnlhQUhaZFNmOG82VzJTbmlKcExudXdDUUtZVHl2UDcvcWZXV1lBQVFoQUFBSVFnTUFDQ0NDQUxXQ1RtQ0lFdHBTQVA1OHNERlZGbVRvY0Y1ZDB0UVJPVlNHcTJ1VDNKZDFJMG9WcSttb1NxUktHN1Z6bDlaSWUwTGwxZXNNMks1SWpKZDFuUnFKRnlxb3NMRjRxN09XdEpkMUswcFVLYTdxcEJNV1VPYmJWMlNRQjdFNlNqaWc5VXkrWWtRaTJLUUlZejIvZko0NzJFSUFBQkNBQUFRaHNCUUVFc0szWVpoWUpnY1VTZUZXRGE5NWlGNVE1OFk5THVxT2tuMmEyNjFMZFFkZVBxMWl1dVIrN3JkMWUwakZkT2gyeHpVb2d0ZEIxclNLWStSK1gvcmxZdzdnZmtiU1BwTk5Ibk5jUVhXK0NBT2I5MlUvU0ljSHlyc3psbVlYMTQ0RXpFRlUzUlFBelc1N2ZJWjY4ZWZSeGdmQTVmQTFKRndrV3cyVUxZc2RuL0ZhWTZnOGtmVzBpZC9sNTBHRVdFSUFBQkNBQWdSNEVFTUI2d0tNcEJDQXdPb0dIaGZoVW93ODAwd0ZPQ3Rub1RweGdmdjQrZUphay9Xdkdta0k0S3NjKzh4UXVKK255WVM3WERoWmRWNVIwbFJhWDBSaW1wYmgwTGwwQXM3dXB6NUt6aVRhVk9ZaGdteVNBOGZ6R252NzUvdjBTUVppL1YvaThyM09IVDVtOVhZdi90WEJiLzVDa295WDVCY3JZTVNSVDVrVWRDRUFBQWhDQXdHd0lJSUROWml1WUNBUWdVRVBnWnBJK1hJcWR0VzJRemlqV3Y1ZWs0eWRhK0JVS2Q4R1BTYnBNWlR3SHdiK3JwTGNQTkk4bWdXZWc3bHU3V1lJYjVOSUZNRy9BRFNWOVFKSmo1RFVWQzJUUGl3VEd0L2g1ZUtTZnJ1Zm1meFVXYWszV2dpY1hZdkF2dTNZY2FmZkpZTm42czRINzUva2RHT2lJM2RsdDM0bEhIaXZwMGlPT1krdXdnMFA4dlZOSEhJZXVJUUFCQ0VBQUFvc2dnQUMyaUcxaWtoRFlXZ0tYTGR6dlBsMGp5TXdkU1BYeWZGb0lKRi9PZ0ZkMlkvRjYvbHZTRnd1cm1iUEM0dXg2NkhaVEJ3eXZFMS9lRWVJMitUSTFSRm1uQURhRk5WdGZScHNnZ0tXS1lGN3I4MXN5amRyMTY2TU5jZm42Y2w1WCt6SFBJTS92dW5ZMWJWd25TSG1PcEgzVHFnOWF5N0g0SGxXNEp2L1hvTDNTR1FRZ0FBRUlRR0JCQkJEQUZyUlpUQlVDVzBqQXJpRHZERUhNVTVadjBjamlrLzlkVitxRXFGVTl1NHA4SmdoUk41RDBwSm9PSEpDK0hBdkxZcFg3dElYVUhJcGp4enk2c0pqWnZjZGtISFBtTHNIcXp1dXlPODBxM2t5WGJzMzAxWldHNnhUQUhEUG5GcEsrM0dVeEU3WFpGQUhNdUh5V2ZQRStUd3U3TmhGc213UXdudC80QTdhRTU3ZHVGWDZaODhMaWMrZHU4U1dPVm1NcEx1Q2pBYUJqQ0VBQUFoQ0FBQUlZWndBQ0VKZzdBYnRRWFRDNFNkbUZvMnhGTmRiY20ySUQvYW1rZDQ4MTZBRDkycVhyUGNGdGNvRHVCdW1pTHBQbG1BTFlTZ1Q5cXFSL0M1WjMzd3V4Y1h4NVhrSk1uRTBTd1B3NzQrNUY3TFkzdFloZzNqTzdncjJrUmt6ZUpnR001L2ZzbHhkK2liSGs1N2Y4d2VsNGVINXhjbGlSK01GeER0ZFpFTURXU1oreElRQUJDRUJnRmdRUXdHYXhEVXdDQWhDWUdRRUVzT0UyWkVnQnpCZGp4MFg3WEdIcFpqSDBoUEJ2VzNQOU9QenZLUVRTNGVqVTk3UkpBcGhYNk44YVR5eUU3SU5hd0ZuNHNGQjJWS1VPQXRqWXA2MjlmNTdmN3Z3dldTVHZlTGtrdnppWlEwRUFtOE11TEg4T0ZuSWQ0OUhXNWorVTlJamxMNGtWUUFBQzIwUUFBV3liZHB1MVFnQUNxUVFRd0ZKSnhldWxYcUIvRk54Ty9ZTzZIQS9OZ3BmL3RxNnlXeUd1UFM1WUlVNDFoejh1TEEwdC9GU0xCYjkvbm1vU1laeVhTdnI4QUdQNjBtUUxyNGUwOU5Va2dnMHdmRzBYYzhzQ3VXUUxzTGsrdjJPZG5WaS9Wdy9XdU01YzI2Vlk3UCtzcEZNa2xlTkZ1cjhyUzdKbG1UOGpuQ20zS1pGRGRWd0VzQzQ3UVJzVHNIdjI3WXJ6K01naXUraXRTOWE4ZGQvdkVJTUFCQ0F3YXdJSVlMUGVIaVlIQVFpc2lRQUMySERnVXdXdzcwcmFJN2cvRFRkNi81NDIwUUlwaDhxUWJyOFhEUlpldDJxWmdJVVVYN1I4K1IrN0lJREZDUy85K1kydmNQZ2FGZ2lPek14YzZzRDAvMWVTZWR0MU95ZjVpY1ZsQy9XM2xIU1A0QUpmRjNNUEFXejR2ZDcwSGgyQzRzMUZNcUxiTnl3VUFXelRUd0RyZzhBR0VrQUEyOEJOWlVrUWdFQnZBa3NWd000bjZXYVNkdTVOWUxnT0hIL0xnZkRMcGM3RkR3RnNPT1pEOWpTa0FPWjU3Um9TU2JRbGFyREZ5OTZTVGh4eUlUVjl6VTBBNC9rZGVjTW42RDVYL0hLVzR5ZUV6OGloM0xjdGlQbjVzZVZxV2JoQUFKdmdBR3pZRUpjS21iaHRhVmhYRU1BMmJNTlpEZ1MyZ1FBQzJEYnNNbXVFd0RJSTJHWGttak9aYWxNV3lPZEpPbjRtYzNSQTk0OUwrbVhHZlB4ajFxNHpRd2tML2c2NWVjaW82SmhjcVFVQkxKWFUrdXNOTFlCNVJZNGY4NEVHQ3huSGQzT212RzlQc1BTNUNXQ3hKZlA4eGdpdDkrOXQ1N282czI5S2VtaGhyZlhoa2JNSSs4enNMK25oSVFISW5pRjI0bnBKTWZwU0NDQ0FMV1dubUNjRUlKQk1BQUVzR1JVVklRQ0JrUW1NbVJsdzVLbXZwZnVQRk1IZzk1RjBlc0xvL3F5M2E4eXJpeGhNSjBtNmphVHZKTFNMVmZralNSK1NkT0Z3eVRvMEJLbVB0VU1BaXhHYXo5L0hFTUM4dXJ0SU9xS1NHZkp0aFRqNzRKRFFZQW9DU3hIQWVINm5PQTM5eGtpeGJGeU44UGVTbnA3NFdkbHZWcjlyZmRuaTVjZmZTWHFScEg4WnFsUDYyWGdDQ0dBYnY4VXNFQUxiUndBQmJQdjJuQlZEWUs0RUVNRHlkaVpWQUx1SUpBdFQ5eTkxZjR5a095ZUtaMDJ6dW1BUU1DekNyWXJqMkR3Mi9QYzJkeDRFc0x5OVhtZnRzUVN3YW1iSXZ3bFpJdHRpSDltOTdEVUR3bkRRK2FZQTRnNUNubU5kbVRJdEMzeVBUNmxZcXNQem13bHNEZFZUWXR0NVdqN2I5NUhrYy9DYk5jeVRJU0dRU3dBQkxKY1k5U0VBZ2RrVFFBQ2IvUll4UVFoc0RRRUVzTHl0VGhIQS9rRFNlNE9iWXJWMzgzNStqNHVZTGNvY0hMZnVlOFFDMjEyTHkvNVBHcGEwQ1FMWW1MRlBtcDZGSndlUktPK2twTlZ1R25Nc0FjeXpzZ0QxQmtudkNQK09pUUpORmx0cEsxeC9yZHd6dy9PNy9qMkx6Y0NmZjg4S0ZyQnRkWjNjd2E2OXg4WTY1TzhRbUJFQkJMQVpiUVpUZ1FBRWhpR0FBRFlNUjNxQkFBVDZFMEFBeTJPWUlvQzVSd3NZRmhpcVdjRitMZW51SVN0ZjNzanRnY3hUK2tVQWF5ZStMUUpZN3JuYk5nR001emYzaEV4ZjN6RVFMV3J0MERLMExiL3VLZW50MDArUEVTSFFpd0FDV0M5OE5JWUFCT1pJQUFGc2pydkNuQ0N3blFRSWdwKzM3NmxCOEt1dVp1VlJ2dDRoSHBnejFkbWwwa0dWNjBxS1pSa0NHQUpZM21rL3UvWTJDbUE4djExT3lqUnRiTUg0bmlLUS9WNHR3Nlc4RUpobXRvd0NnWHdDQ0dENXpHZ0JBUWpNbkFBQzJNdzNpT2xCQUFKcklkQjAwUjdUSFd6TWhiYkZxUEVGenBaZ1p5Uk93QUgwMzE5alVlYm1SNFlZTjIxeG5Gd1BBUXdCTFBHNG5hUGFOZ3BnQnNEejIrVzBqTi9tdnNGMXQyMmtWMHJhTDhUL0duOUdqQUNCWVFrZ2dBM0xrOTRnQUlFWkVFQUFtOEVtTUFVSVFHQjJCRFpOQURQZ1ZjYkdIV3RvcDFodHVka3VJZXZqTld2NnlMRW1Rd0JEQU92eTBGK2dKV2g5bC80czVyNnVwdUYvU0xxanBGTzZkTnJTeGlLelkwRjFLVHkvWGFpTjErYmlrdDVYeEZpOFFjc1FYNVoweXhITzBYaXIyb3llZmJmWnFjWXR0Yy96dHk0eTV5MHNybjNXL085VithR2tNeWVhRUFMWVJLQVpCZ0lRbUk0QUF0aDByQmtKQWhCWURvRk5GTUJNMzI2TEw2dlpocCtIaTlwbldyYkkzeGNIaHl5UDFXcSsxTit1RUEwK203akZDR0R0b0lnQmxuaVFlbFpyZXM2L1cxZzU3aUhKbVNEblZIaCs1N01ianVubEpDQk54UWtkbkFoa1UrSisrY1dKTS8vV0ZXZjhQVlZTWGVaZmYyODR2TUhEd25mRUZTV2RQM1RpNSt1VElSbEwyM2RQMjY1YkZMK09wRHVGL3E5VjlIZmh5REd4d1AxdVNhOHQzS3BQR05nNnIwbDhXMDNwTEVtbnRTU2ZNWnNiU25xSXBEdUVsMDUxeTdHVjlVZkRHaHpqODJjOUhvMjJGd3QrNlhXMHBFczM5TytNcG85SkhIdEs0UzV4U2xTREFBUzJrUUFDMkRidU9tdUdBQVJpQkRaVkFQTUY1Z2hKKzFRQU9FN05FMEpzcjdwTGpLczN1VDUyaVhHREFOWitBaEhBWWsvb01IOWZtZ0RHOHp2TXZ2ZnR4ZnRnMGNHaWYxUDVnS1I5TTF6TCs4NXA3UGEybEx4L3d5Qk5ndkUxZ2tEVFppWG5Mbk96MjFva3VuMFFYbTdkYytHMkNudDJZVEgyb3Bhc3hUbER4T0xDTlNXdjhabDZzS1FESkYwa1o4QWc0QjFTV0luOVhjYzFUT1ZhdnRRUUVwbmJRWFVJUUdEdUJCREE1cjVEekE4Q0VGZ0hnVTBWd016UzdvdkhTZG81Z1AybXBIc1ZiOUNQYndIZDV2cVk2ajVaN2g0QkRBRnNIYzkxZGN5bENXQTh2M000TlpLdGpENG1xYzZkZkRWRGY2YStaUjdUSFdRV09RS1k3eGFPZTJaUnBwcDl1RzR5cVFKWUg1RW9CdUY3a3U0bnlRSlZuOUpGQUxOQWFHdkNLL1VadUpoL3luZDUzUkFJWUQzQjB4d0NFRmdXQVFTd1plMFhzNFhBTmhPSS9iRGNKRFoyU2R3enVHZU1zUzViZXoxZmt0MFg3RlpsbDR5bTBwYjFzV3VBWndRd0JMQXh6blZ1bjBzVXdMeEdudC9jblI2MmZqTmlBL1VBQUNBQVNVUkJWSk9GNW1xVXJ4WXZHVzRoNlQrSEhYYXR2YVVLWUcxWlM1c1dFQlBBM0tjVHRieWlnM1ZVRGpSYk16OG94QVcwQzJ1WEV2dWRVcllBODdvc3VyMnE1QmJhWmN4eUc0Y2p1SnVrWXpNNlFnRExnRVZWQ0VCZytRUVF3SmEvaDZ3QUF0dENJUGJEY3BNNDVBcGcxeTBDTFQ4eUE0QmpwUGl0czYwWW1sd2VWOTA1bUxCZGVhcHY4bjhwNmFnTWx3dkhlSGwxNkJRQmJMTUVNRnZDK0JMcnM5S2wySjNNQWNYTDVVYkZlYmxjbDg0eTJ2Z1plRkpOZlY4aS9kOGRzMmJNOHFraTFzOUprbmgreDZROGJOK09sK1RQUFNkSmFDcDJxWHZhc01PdXZiZFVBY3h1Ym42ZVV5eS9Wb3VLQ1dCVGZ2ZDNjZWt2YjA1c3Jpc0J6REc3Y3F6a2NnNUFia3hPQkxBY3V0U0ZBQVFXVHdBQmJQRmJ5QUlnc0RVRVlqOHNOd2xFcmdBMjFRL1lQb3hmTCtrQm9RTUVzSGFTUzRzQkZzc1VGanMzZFJmZ3RndDNyTCtsL0gwVkU0Zm5keWs3SmptSSt5Y2tYYkpoeW40eHNMZWtqeTluU1VrelRSSEEvRExsUThITlBxblRVR2xPQXBpbjVPRDh0c0QrUnM0aVF0M1k3NVNWQU9iNGNZN0htU01VNWt6bkdFbDNsblI2UXFPcFBuK0lBWmF3R1ZTQkFBVEdKNEFBTmo1alJvQUFCSVloRVB0aE9jd284K2dGQVd3ZSsrQlpYQzlrMjdwUVpVcGxRVy9vMlNLQVNRaGdRNStxZnYwdFZjRHV0K3B6dDNiUTlROUthdnI5L0szaTd6ZlpNUGRIVTBnUndKenA4Vzg3QUI5Q0FQdGNJYndkR2VKYk9oWldOZE9pclZUM0NwWjVzYUQ4WG9LdGxSMGV3SUptVG9uOVRyRUE5cGNoczZKZkhGVEw1d3R4OWJBZ0pKYkZLMXZEM2tYUy81SDBoNGtUc252bEd4UHFJb0FsUUtJS0JDQ3dPUVFRd0Rabkwxa0pCRGFkUU5NUHkyOUw4dHZPSWN0dUlldGh0VStQNC9HR0xIVmpiYU1BNXRUMGRpczZaVWk0a2I1K212Q0dIQUZNZW5lRUl4WmczUTd0SmxtQXpmWDU3Yll6emEwZUwra0ZMWjNhUGZLZUhZU1RvZWM1ZEg4eEFjeEIvMjNSZEpuS3dNNFFhWmRRZjRiWXNzcXh0YzRyeVo4WmpwUG1lSFpPRm5CUXk0U2J2dnN0ZERscm9vVXZ1eFNtRk45N0xHSytxWlFJcHE2ZDNRaHZMdWxMS1oyVzZzUUVNSWNDK0xHazIxYjZQYm9JSitDejliWEllR1puUzJxTFpNNkcyVlk4bGkzTlBGNWJzVnZ2eFJvcU9BR081M2JwaHI4N2p1aGpFaG5acGZ6TXhMcFVnd0FFSURBYUFRU3cwZERTTVFRZ01EQ0JwaCtXWTFqaVRKa0ZzbTZzYlJUQUJqNHVTZDNGTEEvY0NRSVlBbGpTWWVwUWFaTUVzQTdMNzkwazVmbnRQVWlsZzVobDRpYkcvektDbUFEbUxJYTJYRjBWeDlLeW9QUGlTSnhKQ3pxMnpqcTFaYU9xMy8wV3ZoNFJyS1JpTVN5YnVyMmhwQTlFTW5rK3MyajhqTXdERkJQQXF0MmxjcXEyczVYaGV5UHp0OWpvbDBydnoxeER1WHJzNWNZWXY3OTZUSmVtRUlBQUJPSUVFTURpaktnQkFRak1nd0FDV1BNKzVBYlJYc2VPeG9MZ3IyTk9LUmZvSmdGc0hmTmR4NWdwY1Z0aWw2VFl2T3Yyd2RuWUhBaC9rOHRMSmRubGllZTMyeTZuUEwvZGVxNXY1ZVFoN3l5U2g5eXFwZFA3U2pwOHlFRm4wbGViQU9ZWE5oYXdWa2tyL1ArZHRkRUN6UkJsOWQxdjBXZC9TWWNXWXRzWkEzUnNGOGVYdGZTVGFrRlY3aUpIQU91YmRkSXVrYkU0WWk4cDl1YlJ3Zkt1QzdMWVp6c0NXQmVxdElFQUJOWktBQUZzcmZnWkhBSVF5Q0NBQUpZQmErWlZtMkpjVFQzdGxBczBBbGpjQWl4MTM5WVIyeXgxYnRSTEo3Q2s1emQ5VmZHYWRoTnovSy9ydDFTMXhVMDFvMm04NS9uWGlGbStyVmJRTjR0aUhRbC85OXZ0MUdMT0Z3ZEVkWWtRTSt4cURYMDZqdGpOSkgwbFk4d2NBZXlwa3A3YlE1dzZYM0NGOU11Q3B1TFlhSGEzN0pyUkZnRXNZL09wQ2dFSUxJTUFBdGd5OW9sWlFnQUNFZ0xZK0tmQThWdHVYRFBNcHlTZE5PRHdTN3BBSTRBaGdBMTQ5RWZ0aXVkM1ZMeS9qVnYxYVVtWGJ4Z20xM1Y5M05rTzIzdXFBUFpLU2ZzVndlWi9NZUR3dnFzNFcySlhkOGUycVJ3b3lVSlVVOGtWTkZNRnNJOUpjdmlEV0h5dUdFWi9YeDlYeEZuYm9hR2k0MXc2bHRrWFloMDEvRDEyNXJFQTZ3aVdaaENBd1BvSUlJQ3RqejBqUXdBQ2VRUVF3UEo0ZGFrOVZld3pCTEF1dTdPZU5pa3VrS2t6d3dJc2xWUzNlankvM2JpbHRvcUpBV01JWUhiVGF4Tm9VdWRlcnVjNFpRNmlubE5TQkRBSHVkOVQwamR5T2w1ejNWaFdUd2ZwZjJIR0hGTUVzQ0ZpYzYybWxESmVuOC93MkpsSEFNczRIRlNGQUFUbVFRQUJiQjc3d0N3Z0FJRTRBUVN3T0tPK05kWjVnWGEyc0QxQ3ByQ1VkVFNKS1gxKzdOZU5pd1VZRm1BcDUzRU9kWGgreDkyRkt4YlpnVDlSaUVlWGJCaG1EQUZzakpjRkthN2YxU1dtQ0dDSEZCWk5qK3ZoMGpmdTd0WDNmdlVpSytUSEplM1VNSGh1VW9NVVFhcExiTEUyTmpFcnRsd1JyendXQXRnNlRpVmpRZ0FDb3hKQUFCc1ZMNTFEQUFJREVtajZZV2xYaSs4UE9JNjc4bGgxYWNFZFIrUDBDY1lhNHlLVk1tMHUwT2VtMUNTQTJZWGxSU2xRTzlUWlY5SzlhOXE5U2RJN092U1gwcVJwekNFRnhTRXN3QnlJL05WRkxDWUh4RjVDZVZ2SWhqZkZYSGwreDZVY0U4UEgrTnhlaWdCMlZ1R0tkd3RKZHBkZlVobGE0RWtSd0xvSWtHMU1tNTc3Vlp1bkZTNlNGdks2bEtINWRKa0RiU0FBQVFnTVNnQUJiRkNjZEFZQkNJeElJT1dINVlqRFQ5cjFHQmVwbEFWd2dUNDNwYVpMNzVpdUgwTUlSU243WGE0emhVWGRFT3RhMnVmQW1PZWt1c2M4djdtblBxOSt6RnBvak0vdHBRaGdINUcwendndmlQSjJLTDkyTExGQjd2TWIrM3o2cGFTOWc5VlovbXpyVzhTRTJkdzFsRWRCQUJ0cWwrZ0hBaENZRFFFRXNObHNCUk9CQUFRaUJHSS9MRGNKNEJnWHFSUStYS0FSd0tvRTVtWUJ0clRQZ1Q2WHo1Um50bHlINXplWFdGNzltQmd3eHVmMlVnU3dReVU5SmcvbldtdjdjOFQ3YWZIb0daS3UyakNiM09jMzl2bGthL1diU3ZyV2dLdS9iRWpPNENRWWRTVjNEUWhnQTI0T1hVRUFBdk1qZ0FBMnZ6MWhSaENBUUQyQjJBL0xUZUkyeGtVcWhjOVVGK2k2bUNWTGl3SFc1MUlSMjRzaExLVmlZMVQvamdWWUxyRzArbU9laytvTWVIN1Q5cVJyclpnQTV1RG10NVYwYk5jQmF0b3RSUUM3cjZUREIxejNFRjN0S09rUEM3ZngveTNwaHBLdUV2N3RmVXd0dWM5djdIZkt2MHJhUzlJUFVpZVFVQzkyTG5QWGdBQ1dBSjBxRUlEQWNna2dnQzEzNzVnNUJMYU5RTk1QeXpGaU1kMUEwcE5xQUQ5UDB2RURnNjhiYTlNRnNMcUF5Z2hndnp0WUNHRE5EMW5zZ2pudzQ5bTd1ejZYejl6QnB4TEFsdlQ4NWpKc3E3OXo0YjVtVjc5cnRGUWEwbUxTd3l4QkFCdkRyUzluM3k0ZWhDMjdGdjV4Mko4Y2thdHRyTnpuTi9iNU5JYXJLQUpZem1taExnUWdzUFVFRU1DMi9nZ0FBQUtMSVVBV3lQaFdYVHU4aGZlYjd5NWxqT0QvZFVIQWwzU0JKZ2JZdkxKQXRsMHdIMUM0RngzVDVlQVAwT1kya255dXF5WG5BczN6S3cwdElBMnd0Zi9UUlV6Y2NNV2hBNXgzbVg4c0tIcVhPYlpsZ2Z5cHBKdEwra0tYeVhabzQ3dUw0N0haNWZJZWtycCszNlVNbmZQOHVyL1lHVUVBUzZGT0hRaEFBQUlqRWtBQUd4RXVYVU1BQW9NU1FBQ0w0NHdGdzQzM01IeU51Z3RFM1dVcTkySXdoY3VlYVNDQUxVY0FXNmQ0MGlRNjVGeWdlWDduTFlENTg2Qk5DUExmYy9aNytFL2JzM3VjV2dETHRkN3R1bTdmV1N5MEhTTHB1bDA3eVd5WHU1OElZSm1BcVE0QkNFQmdhZ0lJWUZNVFp6d0lRS0FyQVFTd09Ea3UwTU5mb0JIQUVNRGlUMTZ6NkpCemdlYjVIZjc1VGRtN25EcFBsZVFZaGszbDQ1THVLTWxXVWVzcW15aUFYVkxTU3dzcnMzMG5ocHJ6L0hwcUNHQVRieEREUVFBQ0VNZ2xnQUNXUzR6NkVJREF1Z2dnZ01YSkwrRUMzYlNQV0lEOWJuK0pBZFo4MXRzdW1GaUF4VDhqY210VUJZQ2xQYis1NjQzVnY3T2tvMW9xblZZRXdiOVo0WnIzbFZoSEkvNTkwd1F3dXp1K3A3Q3V1K0lBekg0dDZXUkpud3N1bTErWHRQK0VXU0J6ditkU2xrd01zQlJLMUlFQUJDQVFDQ0NBY1JRZ0FJR2xFRUFBaSsvVWtnV3dOMGx5SmpGblVrc3B1RUNtVUVxdk13WFBJWVE5QkxEMFBSMmlacW9BTnRmbmR3Z0c1VDRzeHRqS2E2ZVdqdGVkRVhHVEJMQmRRMXkvM1RNMjhoZVNuRzN4aFBEUE44TC9kK2JGTXl2OXhDeTJzQUNUUGkzcDhnMzhjL2xrYkNOVklRQUJDSXhEQUFGc0hLNzBDZ0VJREU4QUFTek85UHpoWW5hZWVOWGFHazJCdlBzRUZ6OUQwbzlLbzExQzBpZHIzdWJuL3BDZVFyRHh0SEdCWEk0TDVCaFpXbE1mcGFiTXNUbm5tdWQzL2k2UUY1UDB3Y0lpNmZvdEIrTXRrdTVYV0JZNU8rSTZ5cVlJWUJjTjFuYTNTb0I0cktSWFNQcVFwRk1UNnErcUlJQzF3eHJUdWl4am02Z0tBUWhBWURnQ0NHRERzYVFuQ0VCZ1hBS3hINnJqamo1dDd6OHZmc2p2R2Q1ZVR6bHkwOFZwU05leXkrcnNOOHFYcVN6c2FaS2VuYkZZQkxBTVdBbFZwK0E1dGdWWXdqSW5yNUlqZ1BXZEhNOXZYNEpwN1Y5VWlDeVBicW42L2NKcTZhYVN2cFhXM2VDMU5rVUFlN2lrbDBYb3ZDTmtnenl4SThYWTc0cmM1emZXSHk2UUhUZUtaaENBQUFTR0lvQUFOaFJKK29FQUJNWW1FUHRoT2ZiNFUvYS95UUpZazBYVkV5UzlNQVB5RklLTnA0TUYySElzd0RLT3oyUlZjeS9RZlNZMmhRQzJ0T2UzRDgrbXRyY09WbUJ0djZHZldUUit4aGlESi9TNUNRTFlMc0dhNjVvdDYzVkNBbHQ5L2lxQlNWT1YyTytLM09jMzFoOENXSS9Ob2lrRUlBQ0JJUWdnZ0ExQmtUNGdBSUVwQ01SK1dFNHhoNm5HR0ZvQXUwaTRKUHdzc29BcEx0QkRqWUVBTnV4cG5JSW5GbURkOW96bnR4dTNzVnFsdUVFNjd0UXRKWDF2ckVtMDlMc0pBdGp0SlIwdHFlbWVjcVNrKzBoeXZLOCtaV2RKRnFXdTBkQUpBaGd4d1BxY0w5cENBQUl6SklBQU5zTk5ZVW9RZ0VBdEFRU3diZ2ZEbi9PSFNucW9wRU1rUGJjbFJrcU9PSFZlU2Z1RldGNVB6TGlJUEY3U0N5cExjWnl3dlNRZG43SEVLUVFiVDZmSjR1VmpSYncxdTBLTlVmYVZkTythamgxbzNDNC9ZNVNtTVlkMGYwVUF5OTg1bnQ5OFpsTzBzSFhYMzBZR09rRFMwek1TZXd3MTcwMFF3TnJjVEIxYmJlK1FqS0F2czZGalhNVitwMkFCMW5mSGFBOEJDRUNnSndFRXNKNEFhUTRCQ0V4R29PbUg1YmREbHFnaEo3S2JKQWVFcjVaakpIbThJVXZkV0VOYWdGMUJrc1dhY3N5dDEwcDZscVIvcnl3a1ZRQzdpcVEzU25MZ2IyZHR2SmVrdHlaQ2VWVmhGZkdnU3QwdU1YUFdMWUFsTG5meDFaWWtnSTN4ZktadVlOTm5ScTRGU1hVOG50L1VIWmkyWHQyK1ZHZmd6M0ZiZ1gxbTJxbHA2UUxZaFNXOXMvamVhZ3ArN3d5UGZtSGlySTU5aTcvRExFcGRzS0dqM09jWEFhenZqdEFlQWhDQXdNZ0VFTUJHQmt6M0VJREFZQVRJQXRrTlpaT2x3aGZENWF5Y01Tc21nRGxMM1Y5S09yRDR4Lzk3Vlp6bDBSZTlmNGxNc1drUFAxZGtocnl0cEI5bUxCRUJMQU5XajZwTEVzQ0duR3N1c3FabkovY0NYUjJYNXpkM0o2YXA3OS9QZm9td2YyUzRyNGVYS2QrWlpscS9IV1hwQWxqTUxmRW9TZmNjS012bXd5UWQxckkzdWM4dkF0aUVCNTJoSUFBQkNIUWhnQURXaFJwdElBQ0JkUkJBQU11bmZya1FTUGpLTlUyZHhlekZsZjhlRThCMkRkWjJ1OWYwOTArUzdpTHB4eTNUYk1vQTJlVkNnd0NXZng2NnRCaFNWQnJiQlhMSXVlYXlHa01BNC9uTjNZVnA2N2Z0VDNrbUtaK05RODU4NlFMWTBHNkpUV3h0OVdXWDh0c2hnRFVTbUdvdmhqei85QVVCQ0VDZ2xRQUNHQWNFQWhCWUNvSHpTYnBaSWRyNDdYQzVPTWp3MEM0bU1TRm9TR1oyVGJ4eHBVTUg5clhiNG1rOUIzcFVpUDlWN2VhcmttNGg2VDh6QlRCWHQ4amdTOE41YXVibXJGeU9NV2EzeUxyU2xEM3RhWktlbmJsV0JMQk1ZQjJyRHlrcUlZRGxiUUxQYng2dmRkUytyNlEzSkF6OE5ra1BqcndnU09nbXFRb0NXQkttMzM3dkhsZDg5K3pRVWgwTHNQWWcrRjFlWHFYdERyVWdBQUVJakVRQUFXd2tzSFFMQVFnc21zQ1VBdGhZb0M0UmZ0eGZyV2FBT3VzdlYwdFp0NzgzRGk3Y0ZSOWIwKzlaUldCaWkxd1c3K3BLa3dCeVIwbnZ5d1NCQUpZSnJHTjFCTEEwY0VOYmdQSDhwbkZmZHkyN2doOHU2VzRKRTdFbG1BVXp4endjczJ5NkFQWnhTZjdPK0drUGlMYitPa0xTUHBFK3RsMEFpMlU4SFdJdmVtd2pUU0VBQVFqa0UwQUF5MmRHQ3doQVlQTUpwQWhCYzZlUWF6MlNLb0M1M2k3QnRmS2FOUkMrSE9LQm5WTDUyd1VrK1cyeEx5N2xZaXMzVy9aOUpSUG91Z1d3M0l0Unp2S0dzSlRLR2M5MXArRFpkVjIvTDhsWlJ4MVV2QzNHemdOR1NJaVJ5dEZKTTE1WFU3bnJPZUg1VFNXLy9ucHRydUhWMlRsd3V6TzhIanRpZHNpbEMyQXgwY1V4SjI4dTZVc2R0OTUzSDJjdVBpaWhmZTd6dTJreHdHTHI2WkxBSmdFN1ZTQUFBUWlNUndBQmJEeTI5QXdCQ0N5WHdOSUZzTnpZUWF1ZHlsbTNML3p2YjNDRmRGQmhXNWs1WGYycVhEMmtyZCtwY2l5NnBvV2ZRckR4Vks5WENIb2ZsWFNoeXJ4ekwwWTVUME5Yb1NobmpHcmRLWGgyV2RkMWdvdlpFNEpvRUx1UTlXRXdSdHN1NTRUbmQ0eWRHTGZQR3hhdTdCK1F0R1BpTUhZajk1bXVadUpOYk41WXpSa1VIWmoveVMwZCtXOHA0ays1QzR1NzkyL284N3ZGZDhFZWtrN3VPL25RM3VFTzNoSmlTaloxNlV6R0Q1WGtjQUc1eGJFcWJmMVY1OFpmN1N2MytZMTlQblg5dm10YjQ1aHh1bnhQZE1abmk3Wk54Vm1ndlY4VUNFQUFBb3NnZ0FDMmlHMWlraERZV2dLMk5MTFZrTit3VDFuOEk5WnZvYXZGV1FwUG4zSWlrcHc5ekQvWXF4WlZiZE5vRWhxYVluK3Qrc29Sd05wY0lYOHQ2ZTVoNzFaOTN5ZjhrSzdPMjdHL0hBTXN0MHdoMkhoT0NHRFN1M00zcDZGK2pnQm1pNi85Q291dnZ3OFpSMWV1bUxFTDVrQlRIYXliM0F1MEIrYjVIUXovcEIzZEtRZ3JWYkc4YlJKK2lYQkFZUm43Mlk1aWp2djJaN0cvSS8zUzRSR0Z1R1gzdnJZeWR3R3M3Umtvcjh2UHlmTXpMT244bVdMTHloY21pbDhlSy9mNWpYMCtMVTBBTXdQSDluVG01Nlp5ZkJHSDlRN0YrU3RubEo3MHdXTXdDRUFBQWprRUVNQnlhRkVYQWhDWW1rRHN6ZWJVODFuSGVMbHYxNTN4MFJaTFpsY3R2aHkxcFh6UEVjRGN0N002SGxPOC9hMkxNL1oxU2JZU3M0RFg1UDdvWVBtM0RaWTl1V3dSd0hLSnRkZWZnbWVxQU9aejlaS1FjR0UxYTR2QWI0KzRRQTVMWkpqZWNpL1FQTC9EQ2E3RDdHQmVMMTFFTUk5Z1N5Wi9idnVNKzkrMnBySjdlRFdoaUgrMzI0clcvOXdrZkg3YXJUelY4c3hqTFVFQXUxYUlKUmxibDU4dkMzOC9hZGttTTd0MjhYMzFLa2szcU5UN1lpR2kyV3J1U2czdGM1L2ZUUlRBbXBMWGxKRTV2dDBEaTBRUEp6Wnd2RVk0eTdtaER2S2VQbXBEQUFJUVNDQ0FBSllBaVNvUWdNRGFDQ0NBU1RrQ1dKdFZWbE5zcnZMbTVncGdibnNQU1c4T1ZnalZnL0xLWU1WejFZYkxqTVd4bTBvNnFjTUptMEt3OGJSOGNYS1E2K3BGekZuZEh0OWgzaWxOVW9XaWxMNVM2enc4dk9tdjF2K0xqZ0psM2JpeGRmbjhXa0F3NzR0VU9saGQybU1Yek5UMVRsVXY1d0xOODN0Mmx0bWhMQTZuMnVQcU9NNHUrSzZhak1Ycm1rOTEzQ1VJWUhhRGRIYk5leVpBczhXeFA0L3RWbnBDeVVyYjN6dCtDZVB2cURxQnk3SEU3aXJwYnlUdDFUQk96dlByTG1LZlQwdTBBR3RMeUZIRzVuMzRSMGxIbDdLZFhsR1NYU1N2RzE1b0xQM1pUamlPVklFQUJPWk9BQUZzN2p2RS9DQ3czUVFRd1BJRXNDWjNQWitpK3pXNElQWVZ3SnF5b0gxVDBvTWsrUWYvTTRxM3YzOWJjNVFkeDhVQ1M5WEtJZVhVVHlXQXBjeGw2RG94b1dqbzhhYnFyMjFkTDVOMGFFdWNvWldyYk5zRmN4MHV5aXQyVFc3VE9SZG9udC9ORU1COEpuYVQ5S1lpTHBqRnNMbVZKUWhnWnVZa0s4ZU5LQ1QrVldFcC9YSko3MEVBaXg3UnB1L3dhTU5TaFUwUXQzUFdTMTBJUUdDbUJCREFacm94VEFzQ0VQZ3RBV0tBcGNjQWF4S2l6UEV6a201WGVpdmJkTHk2V0lDNXJ6OEtXU0ZYVmxJV00zekpzbHRLMDl0amkxNTIzWEVNbkM0RkFhd0x0ZlcyYWRxekQwcHlrZ1FIZjI4cUt5R3BUUUJiNXdXcjZkbEpGY0I0ZnMvZStYWHU0ZEJQaDJOeDJUM1BNYjY4ditzdS9qeCtYTERZUFNOek1sTUd3UzlQTFNkZ2ZjNlNuaG5pV2puRExBSlluRnhidUlONDY4MTd0bFBYVEQwSVFHQ0dCQkRBWnJncFRBa0NFRmc3Z2E1QzBEb243b3VqWFVDcW1hMHNOTm5OdzdGbFlxWHJ1djFkOGl4SmRxTnp0cWhqUzFaZERqcHN5NTVxaVFYa2o4MFZBU3hHYUg1L2R3d2VXd1YyS2I2NC8wUEV4V2lkNGtsZkFZem5kM012eVJZUEhIajlibDBPL2dCdGJJM3J6K2NqaXdRTHVjTFhhdmgxQ1dEK2JuRXlqRU15QXRmSGtLM0VMOGRkaTdrc3BncllxekZqL1MzUkJYSzF0dHhNcDlWOVdPZm5jK3hNOEhjSVFHQ0xDQ0NBYmRGbXMxUUlRQ0NaUUZjaEtIbUFnU3ZhVXU1RHdXV2syclhmYmpzalk4ckZwOCs2SGJQSjRwdmpxcXhLVyt3UVgwTHNWdEcxSUlCMUpiZWVkbjhRWXNQY0xITjRDNldPNGVOZzFTNmJhQUhHOC91N1E3SEpsMlRIcEhKR3Zmc09LT1kwUFU2T3gvVEd3b3I2cFpJK1Y4UzUrbFhtYzFldHZpNEJ6UFB3WGNXQjJPMVN1bk9QZGRnQ3p0bUkzMXQ2UVJNVHJCREF6Z244bG9XMTdsczc3c01tUDlzOWppVk5JUUNCcVFrZ2dFMU5uUEVnQUlFbEVPZ2pCSzFqZlpjUFZsYitnVmt1WjRXTHc4Y1NKelgwdXB0RUtvdGtOeThzMDc2VU9LKzZhZ2hnUGVDdG9hbGpJVG1lenc0WlkvKzlwS2RYeE50TkZNQjRmcmREQUZ1dDBsa0g3Zjc5NFBENVhMWGF6WGhFemxIVlNVWGVHVndjSFF6ZUZrNURsWFVLWUtzMStDWExZNEtJYVBmUzFPS1hQN1pDUHJBbVd5UUNXQ3JGMzlYcll0SG9QWEFZaHRUZkl2bXpvZ1VFSUFDQlJBSUlZSW1ncUFZQkNHd1ZnYUdGb0tuZ09kVzRBOHV2VXIyL09yZ2wvakp4QW40N2JxdUJhdW55NXJZdGdQRmJRbEQrMUhuVlRSOEJMSEZUWjFETkdkME95M0IvTENkUXFFNS9yZ0pZMDNuTXNTRGgrZDJzR0dBcGo5NTVROEI4VzBiZVJOS05RdXhMSjRDcEt6OHJSS0RUSlAxSElhSjlOc1IzL0VKaFZmYU5JdTdpbVNrRGJrQWR4MU56d2dobkY3U29Za0hHb3VLcVdQajdWcEdBNEFOQkVMVG9NcVFZdUFFSUIxbkN4WXZ6ZHdkSmYxNVk5OW85Y3FmU1Bwd3M2WlJnbVc0cmRQWmdFT1IwQWdFSURFRUFBV3dJaXZRQkFRaHNHb0dsQ21EZUIzK3U3eDBzWjJ4aDRJdFJTbWtMd3AwcmdQbnQvQkdGNjgwK05RUGJLdTBXeGNYbFV5bVRhcW1EQU5ZVDRJVE5jd0paV3pCeTRIQzdLOVdWT1FwZ0Z2amVJT21lTlJQT0VjQjRmcmRQQUp2d01XUW9DRUFBQWhDQUFBUVF3RGdERUlEQUhBajR6YUZkNHVhUUtjczhiRUgxcEJvd3o1TjAvQnlBU2ZwQjRUN3pjVWt4S3lwYkdGd3NaSUJzZWd0dTdnNVdiNWV6cWp1Tys3ZWc1ckZTeXhOQ1gzWDFjNjNTbXNaRUFFdmRqZlhXYzN3cm41M2RJOU9vaTgrekJBSE12Nk1jWTgveGllcGMyWjVkV0o4OHJjY1c4UHoyZ0VkVENFQUFBaENBQUFRZ1VDYUFBTVo1Z0FBRTVrREE3Z3dmbFhTaE9VeG1JWE5JelNibG9NR3VhL2NxbDVVTFRYbVpsMndSSDArU3RFY1JyK2JFUkM1dG1hSitYcmhFN0NuSjhXbjZGZ1N3dmdTbmErOGc5bThPMW9sMW8vNlRwQWNtbnJHeExNQWNYK2hGSVZpNEE0WmIrUFU1L1hGbHdnN0tmMm9JeHUvUHJRZEl1bjBMU2djOFA3d0hhcDdmSHZCb0NnRUlRQUFDRUlBQUJCREFPQU1RZ01EY0NDQ0E1ZTlJcWdEbTJDZ09qSHlyL0NGKzJ5SW5YdGV1a281cHNmWTVJTGhtL3FialhNck5FTUFHZ0RoUkY3WXdmSW1raDFUR2M2YTZwMGc2T0NOR3oxZ0NtRjhJT3Y3ZHZRZGs0bGhOanUzMGxSNTk4dnoyZ0VkVENFQUFBaENBQUFRZ2dBREdHWUFBQk9aR0FBRXNmMGRTQlREMy9LcU1BT1RsbVZpZ3NIV0xSYTJVNGxoaDcyaHdCYlBsekcwU3JYeFN4a0lBUzZFMG56cFZjZlI3SVJHQ3ozRk9HVXNBOHh3ZUwra0ZPWk9KMUIzSzNaZm5kOEJOb1NzSVFBQUNFSUFBQkxhWEFDNlEyN3YzckJ3Q2N5S0FBSmEvR3prQ1dKTllGQnZWN1o0dktkVml5OThwVDVSMFVLVmpDMm43U25wWGJNQ012eU9BWmNDYVNWVUxvTytYNUt4Z0R5c3lsSDYvdzd6R0ZNQnVYV1RpKzJDTHEyYk9kTDhlQk4vdjVEUnFxTXZ6T3dCRXVvQUFCQ0FBQVFoQUFBSUlZSndCQ0VCZ0RnVG1GZ1IvRGt4aWMwZ05ndTkrbXJKYU5vM2hZUGwvRmR6V0hBOHBwOVM1dXgwV012dkZBdmJuaklNQWxrTnJIblg5bStQcWtpd09OU1ZraU0xMFRBSHNpb1ZvOVFsSmpvblhwempEcVYwcHY5Mm5rMUpibnQrQlFOSU5CQ0FBQVFoQUFBTGJUUUFCYkx2M245VkRBQUxiUWNDQjZWOGZTVExnQVBXKy9OdEM1K2dRTEw4cm5ZdEtPaXJFSFhPQTg3dlVCQlB2MnZlcUhRSllYNExMYkQrbUFPWnNxYllBdTM0SE5MWnl0UEQxblBBTTVRckhiVVB5L0hiWUVKcEFBQUlRZ0FBRUlBQ0JLZ0VFTU00RUJDQUFBUWlNUVdDM1lFSDJTRWxEdUlGVjU0Z0FOc2F1emI5UEI0VjNiSzJiMUV6MUw0cWc4OGYyV0lKL0U5a2FkWWZNUG41YVdFeWVudGxtN3RWNWZ1ZStROHdQQWhDQUFBUWdBSUZzQWdoZzJjaG9BQUVJUUFBQ2lRVE9KMmxJdDhmRVlSZGY3UTRoWmxwMUlVNHc4TDdGcjQ0RkxJVUF6KzlTZG9wNVFnQUNFSUFBQkNDUVJBQUJMQWtUbFNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBU1dTZ0FCYktrN3g3d2hBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFa2dnZ2dDVmhvaElFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlEQVVna2dnQzExNTVnM0JDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FRQklCQkxBa1RGU0NBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRV0NvQkJMQ2w3aHp6aGdBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VFZ2lnQUNXaElsS0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBa3NsZ0FDMjFKMWozaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFKSkJCREFrakJSQ1FJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFHQ3BCQkRBbHJwenpCc0NFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFnaVFBQ1dCSW1La0VBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFnc2xRQUMyRkozam5sREFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlKQkZBQUV2Q1JDVUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCcFJKQUFGdnF6akZ2Q0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdTUUNDR0JKbUtnRUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdzRlFDQ0dCTDNUbm1EUUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUpCRUFBRXNDUk9WSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJKWktBQUZzcVR2SHZDRUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVNTQ0NDQUpXR2lFZ1FnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ01CU0NTQ0FMWFhubURjRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQkFFZ0VFc0NSTVZJSUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaEJZS2dFRXNLWHVIUE9HQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUVNDS0FBSmFFaVVvUWdBQUVJQUFCUHQ0YjN3QUFBRlJKUkVGVUNFQUFBaENBQUFRZ0FBRUlRQUFDU3lXQUFMYlVuV1BlRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFra0VFTUNTTUZFSkFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFZS2tFL2o5UXJ2OHVuK1h6MXdBQUFBQkpSVTVFcmtKZ2dnPT0iLz48L3N3aXRjaD48L2c+PC9nPjwvZz48ZyBkYXRhLWNlbGwtaWQ9ImU1Ij48Zz48cGF0aCBkPSJNIDc1MiA0NzggTCA3NTIgNTg3Ljc2IiBmaWxsPSJub25lIiBzdHJva2U9IiMyODY0OTQiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBwb2ludGVyLWV2ZW50cz0ic3Ryb2tlIiBzdHlsZT0ic3Ryb2tlOiBsaWdodC1kYXJrKHJnYig0MCwgMTAwLCAxNDgpLCByZ2IoMTE1LCAxNjcsIDIwOCkpOyIvPjxwYXRoIGQ9Ik0gNzUyIDU5NS43NiBMIDc0OCA1ODcuNzYgTCA3NTYgNTg3Ljc2IFoiIGZpbGw9IiMyODY0OTQiIHN0cm9rZT0iIzI4NjQ5NCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIHBvaW50ZXItZXZlbnRzPSJhbGwiIHN0eWxlPSJmaWxsOiBsaWdodC1kYXJrKHJnYig0MCwgMTAwLCAxNDgpLCByZ2IoMTE1LCAxNjcsIDIwOCkpOyBzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7Ii8+PC9nPjwvZz48ZyBkYXRhLWNlbGwtaWQ9ImU2Ij48Zz48cGF0aCBkPSJNIDEzMDcgNDc4IEwgMTMwNyA1ODcuNzYiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzI4NjQ5NCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIHBvaW50ZXItZXZlbnRzPSJzdHJva2UiIHN0eWxlPSJzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7Ii8+PHBhdGggZD0iTSAxMzA3IDU5NS43NiBMIDEzMDMgNTg3Ljc2IEwgMTMxMSA1ODcuNzYgWiIgZmlsbD0iIzI4NjQ5NCIgc3Ryb2tlPSIjMjg2NDk0IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgcG9pbnRlci1ldmVudHM9ImFsbCIgc3R5bGU9ImZpbGw6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7IHN0cm9rZTogbGlnaHQtZGFyayhyZ2IoNDAsIDEwMCwgMTQ4KSwgcmdiKDExNSwgMTY3LCAyMDgpKTsiLz48L2c+PC9nPjxnIGRhdGEtY2VsbC1pZD0iZTciPjxnPjxwYXRoIGQ9Ik0gOTE3IDY1MC41IEwgMTAzMiA2NTAuNSBMIDEwMzIgNDI1LjUgTCAxMTMxLjc2IDQyNS41IiBmaWxsPSJub25lIiBzdHJva2U9IiMyODY0OTQiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBwb2ludGVyLWV2ZW50cz0ic3Ryb2tlIiBzdHlsZT0ic3Ryb2tlOiBsaWdodC1kYXJrKHJnYig0MCwgMTAwLCAxNDgpLCByZ2IoMTE1LCAxNjcsIDIwOCkpOyIvPjxwYXRoIGQ9Ik0gMTEzOS43NiA0MjUuNSBMIDExMzEuNzYgNDI5LjUgTCAxMTMxLjc2IDQyMS41IFoiIGZpbGw9IiMyODY0OTQiIHN0cm9rZT0iIzI4NjQ5NCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIHBvaW50ZXItZXZlbnRzPSJhbGwiIHN0eWxlPSJmaWxsOiBsaWdodC1kYXJrKHJnYig0MCwgMTAwLCAxNDgpLCByZ2IoMTE1LCAxNjcsIDIwOCkpOyBzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7Ii8+PC9nPjwvZz48ZyBkYXRhLWNlbGwtaWQ9ImxpbWl0cyI+PGc+PHJlY3QgeD0iMzIiIHk9IjM3MyIgd2lkdGg9IjMzMCIgaGVpZ2h0PSIzMzAiIGZpbGw9IiNmZmZmZmYiIHN0cm9rZT0iIzMzNTU2ZiIgc3Ryb2tlLXdpZHRoPSIyIiBwb2ludGVyLWV2ZW50cz0iYWxsIiBzdHlsZT0iZmlsbDogbGlnaHQtZGFyayhyZ2IoMjU1LCAyNTUsIDI1NSksIHJnYigxOCwgMTgsIDE4KSk7IHN0cm9rZTogbGlnaHQtZGFyayhyZ2IoNTEsIDg1LCAxMTEpLCByZ2IoMTQ0LCAxNzMsIDE5NSkpOyIvPjwvZz48Zz48Zz48c3dpdGNoPjxmb3JlaWduT2JqZWN0IHN0eWxlPSJvdmVyZmxvdzogdmlzaWJsZTsgdGV4dC1hbGlnbjogbGVmdDsiIHBvaW50ZXItZXZlbnRzPSJub25lIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiByZXF1aXJlZEZlYXR1cmVzPSJodHRwOi8vd3d3LnczLm9yZy9UUi9TVkcxMS9mZWF0dXJlI0V4dGVuc2liaWxpdHkiPjxkaXYgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiIHN0eWxlPSJkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogdW5zYWZlIGNlbnRlcjsganVzdGlmeS1jb250ZW50OiB1bnNhZmUgY2VudGVyOyB3aWR0aDogMzA0cHg7IGhlaWdodDogMXB4OyBwYWRkaW5nLXRvcDogNTM4cHg7IG1hcmdpbi1sZWZ0OiA0NXB4OyI+PGRpdiBzdHlsZT0iYm94LXNpemluZzogYm9yZGVyLWJveDsgZm9udC1zaXplOiAwOyB0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiAjMDAwMDAwOyAiPjxkaXYgc3R5bGU9ImRpc3BsYXk6IGlubGluZS1ibG9jazsgZm9udC1zaXplOiAyMHB4OyBmb250LWZhbWlseTogJnF1b3Q7TWljcm9zb2Z0IFlhSGVpJnF1b3Q7OyBjb2xvcjogbGlnaHQtZGFyaygjMDAwMDAwLCAjZmZmZmZmKTsgbGluZS1oZWlnaHQ6IDEuMjsgcG9pbnRlci1ldmVudHM6IGFsbDsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd29yZC13cmFwOiBub3JtYWw7ICI+5byC5bi46Lev5b6E6K+05piOPGJyIC8+PGJyIC8+RHJhaW5pbmcg6LaF5pe2IC8g5qOA5p+l5aSx6LSlPGJyIC8+4oaSIFJlY292ZXJ5UmVxdWlyZWQ8YnIgLz48YnIgLz5Ccm9rZXIg6YeN5ZCv77yaZXBvY2ggKyAxPGJyIC8+5penIEdyYW50IOWFqOmDqOWkseaViDxiciAvPjxiciAvPkxvY2FsIOaXp+WuiOWNq+acqumAgOWHujxiciAvPuKGkiDkv53mjIHpmpTnprvvvIzkuI3mjIkgVFRMIOaKouWNoDwvZGl2PjwvZGl2PjwvZGl2PjwvZm9yZWlnbk9iamVjdD48aW1hZ2UgeD0iNDUiIHk9IjQxOC41IiB3aWR0aD0iMzA0IiBoZWlnaHQ9IjI0NSIgeGxpbms6aHJlZj0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUJNQUFBQVBVQ0FZQUFBQkxxa1dWQUFBQUFYTlNSMElBcnM0YzZRQUFJQUJKUkVGVWVGN3N2UWZZTjBkZDd2ODl3T0dQY0VBNkhLUkpVYVFJS2lWSUM5S0xCU1NVZ0pBL29WZXBSM29SaEFnRXBIZVJoTjZrRXdrazBqdElseUFrdEFDaFNEdEVKWHIyNXAwMSsyNm03czYyMy9PWjY4TEVQTE5UUGpPN3Y5bDd2K1YvR0FVQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBanRNNEgvczhOeVlHZ1FnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRURBR01UUUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNDdzB3UVF3SFo2ZVprY0JDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQUlZZXdBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQmdwd2tnZ08zMDhqSTVDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFRdzlnQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSURBVGhOQUFOdnA1V1Z5RUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFnaGc3QUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFDQm5TYUFBTGJUeTh2a0lBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQkRBMkFNUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNPMDBBQVd5bmw1ZkpRUUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0NDQXNRY2dBQUVJUUFBQ0VJREE5Z21jejh5K1oyYW5iSDhxekFBQ0VJQUFCQ0FBQVFqVUo0QUFWcDhwTFVJQUFoQ0FBQVNHRVBnVk16dlF6TTdTdS9nL3pPeTladmFESVkxeXpYNEV4UGp2SE11bm05a1h6T3kvZG9EUkpacTljNnlaZmFTWjIzM003QnM3TUtldFRPRUFOOUFQVFR4Z25kbXZZV2FmTXJNZlQ5d1h6VU1BQWhDQUFBUjJrZ0FDMkU0dUs1T0NBQVFnQUlHSkNVeGhiZk8velV3djBSZnVqZjMvbXRrMXplempsZWQwUVRNN2o1bDlzbks3YTI1T0FzTFJablpHTjhpVHpPekpUaFQ3enBvSEhobmJHY3pzdVdaMnFLdWovWEpuTTN2VkhyY0dPNzNqOENNemUrVUVRdWYvTkxQN21ka1RuQ0IxQXlkQVRyV05mcy9NM21ObXZ6Q3p1NW5acS9mNCtrN0ZtWFloQUFFSVFHQ0hDU0NBN2ZEaU1qVUlRQUFDRUppRXdKWE43QjNPNHFhbXRjMmNBdGdmT0lGRTRzbEJUaFNhQk5hS0d0VmNqekN6VzN2RzlPVkdYQkNUcjY5b3ZMbEQrU016ZTRPWm5hNTN3UWZON0dBek96NjNvUjJxSjB1L3A1clpYYzNzUDUwNEtNdS9XdForNXpTekY1alp6VHZNam1zRXNCdWJtZlpTN1NLeDdXWHVYbTNiL21penRvZVkyZWRyZDBaN0VJQUFCQ0FBZ1YwbGdBQzJxeXZMdkNBQUFRaEFZQW9DVnpTenQ1dlp1VjNqY2tXNmk3UEdHUHR5UFljQUpxdVllNW5aNFIzQjVGL043Q1ptOW9FcGdLMm96Y3M2VjlLemU4YjBtT2EvUFhwRlk4MGR5bmtiNjhCM205bGxBaGM4ME15ZWt0dllqdFE3djVrZDJhejFkVHJ6cVNtQ1hjN00zbXBtRi9Md2tnaDJQVE03b1RKTENXMnZOVFBmdWYyWlp2WXczQ0lyRTZjNUNFQUFBaERZU1FJSVlEdTVyRXdLQWhDQXdIOFRVRHlwRjVuWjcrOHdFNzBZM24rRytWM0V6TjdaV0dKYzB0UFhhNXhiMHBnNFhWTUxZR2N6czJlWTJlMDk0OTkxRVV6bkhjMzlucDY1ZjlQRlZ2cnFESHVvWmhlYWs2eWM3aHRvVkhIai9yQngwNU1MNEY0cHYyVm1yMjljSGkvbG1YQXRFZXhYemV4MVBZR3QyOTI3ek94UEszSlBpWnk2ZDJXOXVFdXV6QklaWmZIbUU2dm4zTXRpZTl0bVBUOHpaNmYwQlFFSVFBQUMweEZBQUp1T0xTMURBQUlRV0FPQi8yVm1iekd6YTYxaE1CT040YVZtZG9lSjJtNmJsWkFvb2UyR2tYNlVnVTh1WjRveE5jUWFiRW9CN0xlZHk2TlBHR2lucEplOXNYR00yamhGWjU1NFBlVDI5K2FDUG1RaHBTRHhyZVZlOTlLdFduOUpaRkVjcUw3cm8rWVdXa3U1MHNsOXozZE5BYzdKcS83Y3phRzBvNWhJcmJZa2d0M1NDVmlsYlhmcnAvcVJlNlRFVmlXd0dGTjBUditMSm1iZFgwVWErVE5uOFRhbW43VmRPOWR6SkRYdnFlSXZwdnJsN3hDQUFBUWdNQkVCQkxDSndOSXNCQ0FBZ1pVUVFBQ3J0eEFYYlZ6TlpPa2xOOGhZa2FYUlE4enNaNFZkVHlHQXllVlI0cUNDcEV2OGlKVXZ1cGhHeW93NHRNejE0bG9pZ01Vc3BiWnEvWlVTWVA1UGswMzBTUjRoZHE3MUdicC8ydXZHaU5vcE5yVkVNTVVDUENwaXBmUlFNL3Zya1lIcVk4S3RXTlVTMmxydWVsNmN5OHowejZuS0R4dFI3K1JFNDJ2WnB3aGdVKzBDMm9VQUJDQ3dFQUVFc0lYQTB5MEVJQUNCbVFnZ2dOVUZyZURhajNmWjMxSmkwcTBhUWVuVEJkM1hGc0FVQytuWlpuYXpqREdvM29NSGlIYjlwdWQ2Y1MwUndHSWlncXhyRHN2Z3M2WXEyb095L0xwcFlGQXhGN3k1MW1jc3J6RUNtUHBPaVZPeXpGSXlCTGxMamltM2M0a1ZRbTJFaE1pY1BuMkI3N3ZYZmM2NVBuNDNwN0hNT3FGblVPYmxXZFZ5N3QyMTdGTUVzS3dscFJJRUlBQ0I3UkJBQU52T1dqRlNDRUFBQWtNSUlJQU5vUmEvUnIrZGlxMzBpc2JDSSticXA1ZHNCYWQrV3FZclZDMEJUT083cnBtOVBPRHkxNTJkZ3ZncnhvMkNlZzl4MjF5N0FCYXovbExHeDF0TW5QbnhKMmIyMDRwYlVQTjVVRVMwa3h2dWdVMjJRSWtqdnJJV1lTR0ZaS3dBcHZaVElsaU51SGNTcVo1bFpuY09URWpXWmhLZzM1U2FzT2Z2RXREMWpQR2QxV3U0Sy91R2hBQzJQeFVFc0FFYmwwc2dBQUVJckprQUF0aWFWNGV4UVFBQ0VCaFBJQ2FBS2FENzhlTzdtSzBGdVNBcXcxcS8xSGhaSGpLSldNRHRibnV5eUpHbHlMY1RuZFFRd0JUby9vbG1kdmVNQ1dsY2g1alpOekxxNWxhWlMyREpzU0xSbU9jYVQ0aFBiUXV6V055dkhOZStwWG5rN3FOYTkzU01sOFpTUTBoS0JjVWZraG55Z2k3aFJpaG0zMVRaUFJIQUVNQnk3MUhxUVFBQ0VOZ2tBUVN3VFM0Ymc0WUFCQ0NRVFNBbWdPV0tDTm1kVFZ4UlZsYytTNHBhTDh0RGhxK0E0b3JEYy9QSXhjckNlVzh6VTJEdldCa3JnSjNWV1hKZEk5R1BMTlAwQWkzTGxWT0dURHB5VFVoZ1VTeWtqdzdvNitKbTlyam1mMmZvWFp1emQzWE5FYzdWYlVEWFZTNnBLWUNsTEpweTRrSHROUUVzWlRHblJaWWxvUGJUcDBhcytDVWFkOFQzbUpudVlWOHB5UXlwZmFzNGduY0x0Sld6emtPbnNuWUI3RnRtZG1NenErbjJLVmJLdFBrMk03dEFEeHdXWUVOM0V0ZEJBQUlRV0NrQkJMQ1ZMZ3pEZ2dBRUlGQ0pBQUpZSlpDUlp1UUdwVmcvZittcFUvTGlPMVlBVS9jcGtVUXYrWEo1L1B4RVdFSUNTNDVnNVJ2U21QWmtMZmlPaFRNZTFoTEFVb0hkYy9mWjBsa2dkZTY4djVrOUlMSC9hbG80cGR3VU5aUWhWbHI5S2FTc3plUUtyWG1sUk9mWXZwMGk3bGQzSG1zWHdMN1czTk1IbU5tSmxaOWZOWjY5bFlkRWN4Q0FBQVFnTUFVQkJMQXBxTkltQkNBQWdmVVFRQUNiWnkxOGNjRnlSWWwyaExWZXdrSXY0bzl5bVFGVGxtaGppSTBSckdvS1lHdUpmVmREQUV1NTJLWGlmbzFaejlyWHBrUWk5YWVNcGZmSmpKdVhPNzRVUTdYek1SZXZhNmhMc0o0Qmp6V3poM3NHbFpzWlZwWkk3MjZ5elNweFE3L1VjTmRNOFFvOWc3VEgzbEs0SnIvclhKRDdmZWFJNGFIbkNBSllhZ1g1T3dRZ0FBRUlSQWtnZ0xGQklBQUJDT3cyQVFTd2VkZjNDczVOOHpzRFhxWnJDV0I5dDY4dm1sbHBSc3FoMU5ZaWdLV3k4dzJkWCtsMVl3VXdDVGN2ZE1INmZYM254UDBxSGZOVTllVW0vTW9taTZvc3NrSmxTdmUrbEJXZHhsUXFXdmZuMFJmYUpCd2RiR1pIWnlTWmlDVnNVSUtLMjVqWnE2WmFITmR1NkJuMGp5N3JhRWxDQjFuRktoNGhBdGpFaTBiekVJQUFCQ0NRVHdBQkxKOFZOU0VBQVFoc2tRQUNXUDZxS2ViT1EvT3JCMnVLdVVySnk2THFLL1pQS0liUVNXWjJjc0hZdW0yVlh1dnI1clhPZFMwMWhEVUlZRXFXSUNIallwN0J2dDdNN3B2aGhwYWFaL2Z2RWppZTdMbEE0dFFOWFREemt2YmF1am11ZXhJWm5wUWhyZ3pwditZMXlrcjZtaVlqNnRrampXcVAzY25NZmxTejQxNWJNUmRoclpmY001ODVjbi84anR0L3h6YXhxdTZSa2Z5aUhXTE05WEZLWWJDTENBRnMvdzFERExBSmIwYWFoZ0FFSUxBRUFRU3dKYWpUSndRZ0FJSDVDQ0NBNWJNT1dTemt0N0M3TlhNVERTd3RnS1VDaU11TjY1WVpDUWx5VnpJbXRrbndVYncxSlIwb0xUbmkxMXlpU09uWSsvVnp4Qy9GYXJ2MXhPSlhPeTZmRzZhRURsbFl2Ym1TbUhnK001UDFWeXJlVnp1bVdOYkhzVlpwSmV1SEFJWUFWckpmcUFzQkNFQmdjd1FRd0RhM1pBd1lBaENBUUJFQkJMQjhYQWhnWVZaYkVjQlNnZS9IV21WMUNjWEV0akdXSXpuaTE1eUNVZjRkZE5xYU56R3pWNXZabVNPTnpEMlhmcXl1bkN5UWYyZG10eDhEWXVacmg3Z3Nhb2dJWUFoZ00yOVZ1b01BQkNBd0x3RUVzSGw1MHhzRUlBQ0J1UWtnZ09VVFJ3RGJ0Z0FXQ3lEZW5kbFFjYUJQUjhHODN4RElNdms0TTN2a0FHdWlzN2dnOElwaEZpcHpXZ1RsM3ozNzE5VDU4ZzVtOXFKRUZzNjV4YTkybEcyc3JqTTZpOEJ2SnlhS0FHWjIwMEszYm1LQURiMTd1QTRDRUlBQUJDWWpnQUEyR1ZvYWhnQUVJTEFLQWdoZytjdUFBTFpkQVN3V1FOdzNxN3M3b1NsL2QreGZNeFpRL1hObTlnZE4vS2Z2RmphZUNuaXY1bzR6TTFtNW5WRFk5cHpWVDI5bUR6Q3p3eEtkemhIekt6YUVzellaRzMrUjZRNkxBSVlBTnVjOVJGOFFnQUFFSURBUkFRU3dpY0RTTEFRZ0FJR1ZFRUFBeTErSWtBRDJjVFA3Ukg0em02NnBtRllTV1BwbDdTNlFNV3NzMzRLY2FHYlhOTE12RDFpdG1JdWlYQ3h2NWpLQmxqU3RHRkN5SnJ0aTVLSWM4VXVCL3pXK2Z5N3B2R0pkV2JBcGlQd2hpVFpsR1hidlRQR3A0dkFHTjRVQWhnQTJlUE53SVFRZ0FBRUlySWNBQXRoNjFvS1JRQUFDRUppQ1FFd0FtNksvSmRyTUZXZFNZd3NKWUgrUlljMlNhbnNyZi8vRGdIaVR5M2lKSVBneGF5d0ZJcGZZb3JYdGw1ZVkyVjBLZzlUcjNQU2d5SDU0cmhOMlpGbVVXNjdnbUY4b2NrRk9uQ29KWHk4enM0T2NDUFd3SnF2aGozTUhVYUdleEZNRi9vK0plT3JtS1diMmtFTHVGWVkzcWdrRU1BU3dVUnVJaXlFQUFRaEFZQjBFRU1EV3NRNk1BZ0lRZ01CVUJCREE4c2tpZ0psdFRRRDdGUmRrWGZHSmZFV3Vqa2VhMmVzOWxtMy81VEwvdlNwL2k1Z3ZnMkI3K1JEWHg1d2c4VG5pbDhiUVR3QWc4ZTlnTXp0NlFDeXlBaVMvckNxWFQzRThkK1JDV2NmZDE4eWVOY040U3NlZnF1OFR3TFIvM21obUo2VXVudkR2c3JpN2haa3BsbG0zREkxelJ4RDgvVG1PU1dZeDRiTFROQVFnQUFFSURDV0FBRGFVSE5kQkFBSVEyQWFCdlNxQTZVWHVLbWIyenNaaTUyZVpTNFVBdGkwQjdDMEpheXo5L1piT3plNGFUZ2pxQ3dYL2FtWTNNTE9QWk95Uks1dlpVV1oyZGsvZGtuYTZsOS9Rek41bVpxSHpXSzc0RmJ2UFgyZG1FZ0tuRUdva1FNb2k3akVKZmhJU2JtTm1iOTZnK0tXcCtRU3dOWWdqTlFVcnpiTm1ld1RCejNpb1VBVUNFSUFBQk9ZbGdBQTJMMjk2Z3dBRUlEQTNnYjBxZ0YzZHpJNXhMOXR5ZFh1YW1YMGg4ZktOQURhZEFQYlhadmJSQVp2LzRtYW1qSXBuNkYycm1GOFNzMTRkeURMNEZUTzdUaE9MNm5oM1hTeElmazVXeFppYnBiclEzbm5TQUhGSEFwSmlmMG1FNnhmTlFaWnQycmVwb3F5UlJ3UXFkWVhBVkRzbGY1Zkw0OHNiVWZDcWlZc2s0c2x5YnNqNmw0eG55cm9JWUxoQVRybS9hQnNDRUlBQUJHWWlnQUEyRTJpNmdRQUVJTEFRZ2IwcWdOM2N6R1Q1MGkzLzRtSTM2YVhkWnhXR0FEYWRBRlo3Ky8reG1WMHFFSXRMcm5heS9PcXZ2d0xOeXlKUTEvWExDeG9McVhzRzRsS2QwOHlVc2ZEYWdVbkVyczJadDg4S1RPNlVmNUlacEYreHc5N2R1SHBld3RQWkZGWkt5dko0QjVkRlUzSEhZa1ZKQm02VU9ZOGNWa3ZWUVFCYmh3RDJyY1phODhZRE1xeW05czE1blNYbUJYb1ZwN2gvVW1QaDd4Q0FBQVFnTUNFQkJMQUo0ZEkwQkNBQWdSVVFpQWxnUTYxeWxwcldsY3pzd1o3T2ZRSGFIMjltRC9YVS9YeGpHWFl0TTFOOHBINHBFY0JDd2Q2WFlqT2tYeCszcVdLQURSbGY3QnBaZ0lWY0lHT0I2R1BaSW5YZGZYb2kySzg2SVUzV1pMNlNZejJXbW52ZkN1eGpMcFBrTjFJWE90ZkpwN3JZV3I3cWYyTm05eHRnbVJicStqZGNURFhkaTdsRmdmZzFobGRzS090amYyNElZT3NRd0hMM1hLMTZDR0MxU05JT0JDQUFnWlVRUUFCYnlVSXdEQWhBQUFJVEVZZ0pZQklERkpObkt5VlhuSkc3M0N1ZDIxVi9icklLdXJXWitiTDBJWUJ0eHdLczNidXlRRkpROVR1N2hVNEpVakZYU0RVaDBWVEM4Q2xtbHJMOE9zNEZuaitod2cwa2kwVlptY2tkVW5QNVFXYWJpbk1uNjY4emUrckwra3JCNmVXQ09MWklwTHUzYzBkTldYMkYrcElGNWdPY2NDbStZNHZ1YzdrNnh3THZoL3FRQmVpeEJZSWNBaGdDMk5qOXl2VVFnQUFFSUxBQ0FnaGdLMWdFaGdBQkNFQmdRZ0o3VVFEVEM3R3lvRjNhdzFVdjRJY0hlQ09BYlU4QTAxSzJWbHFYYjBTTkE4MU03b094a3JMcVVrRDNGenRMSndYUDk1V2hRZTlENDlLWWJtdG1mMXNneXVqZTltVzNiUHY0TXplSE1ZOFh1VHNxRHRsVG1oaGppc2RXb3lnV21NUTBKUjVRSnNXaFpZeDc5OWZNN0FBek96R3pjd1F3QkxETXJVSTFDRUFBQWhCWU13RUVzRFd2RG1PREFBUWdNSjdBTGdsZ3VUUWtoTHkzZVdrL2ErOENXWDBwanRQN0FnMkpWZjhhVmYySm1mMjBkODJ1dWtDZXljek80ZUh6Y3pPVDZKTXFjM0hwV3kvS05VK3hzR1FCbGxOU1FlMWxvU1R4eDFma0ZxVVlZMi9ONldqQ09uY3pzK2NFMmg4YitGN253OHVaMlF1YmVlYTRPLzVIWTRuMVRHZVJsVk5mdzM2VGMybis1NEdNRU1EcVptM1VNcXc5QytUQXJUTDRNbHdnQjZQalFnaEFBQUxySklBQXRzNTFZVlFRZ0FBRWFoSFlpd0tZTHdDK2VNcFY3V3FOaTlrM0s4Q2RTK2lwTU5SZ0U3NFlZR1A3QzNFSnVkdjYzRnJuZXVtOGNwUEI4S2dtUStqWkN5WWRDckJmMEVTVnFwZHhMbncrOXo4SmxYSjkvT1RBbm43VHVZRnF6WEtLTExvT2FVUkJ4ZGVUYUNoeFVQSFV6cFp6c1JQT0h0MVloWDAvczM1YkRRR3NybUNGQUhiYURUalhzNmh3NjFNZEFoQ0FBQVNHRWtBQUcwcU82eUFBQVFoc2c4QmVGTUNlN2x5cytpc1VpLzlWdXBvaG9XY0tVYWwwYlAzNnViSFR4dmFqNjdja2dHbThmOXE0eXI3YXpFNlhNZm0xaUYrS3g2VXh5elhSVitUSys2UUI3b1VTdnA3Z0F2Qm40REJaZlQzY3pKN2hjZHVVK0tWRUZQZkthY2dsSGdpMUZXb0NBV3crQVV4SlEyUlZxRFhQTGIvcm5nZjkram14SjBQUEVZbTdTb1R5dzl4QlpOYVQxYXRpLy9YRmNBU3dUSUJVZ3dBRUlMQVZBZ2hnVzFrcHhna0JDRUJnR0FFOTU0ODBzNE05bDkvT3pGNDJyTm5WWHFVWG1YOW9YdGF1NkJuaFg1alpZWlZHamdEbUIzbFJsL0ZQSWsyM1BOdk1QdVc1WkVrTE1BMUg5OGNkemV3Rjd0OUQyMFBpbCs0aENVOWo0bGJWMkg0eDEwZTUvb3JwanpJN2FsMGRuK3dDK21kZTlzdGcvY3FZbWNwVStlc3VmdGpOTWhzK3lXVzBGT2RVb0h3RXNQa0VzTXpseTZvMlJnQXJqZDJXTmFDSTZ5Y0NXQzVCNmtFQUFoRFlDQUVFc0kwc0ZNT0VBQVFnTUlLQUw0Q3ptbE9tUkFYSzltVkVITkhkb3BkSzFEdkNNNEpVL0svU1FTT0FsUkx6MTE5YUFQdHRNM3RWY3k5Y0ttTTZpaThtVjcrVTZKUFIxT0FxTWJkTnZhekw5ZkhER2EwcmsrTU5HOHUzeDVyWkZUTHF0MVdVeWZFdVpuWk1nUkNvczZaaTd6Mi9JSkMrM0NydjFGam9mU2JTajlwVnBzNHpSc1ovWGpON1c5UDNCWHAxU29XVXZSNEV2MkNMSktzaWdDVVJVUUVDRUlBQUJLWWlnQUEyRlZuYWhRQUVJTEFlQXZkM1ZoajlFYTNGcGFzV3FldWEyV3NDTVowVW4raGFqVXVXWEhscUZBU3dHaFQ5V1NmbnNMcVFoWm95RVQ2dWNkV1RHSlJiWW01L3VXME1yWmZLWHBuaituZ3VNenUwU2Vyd1FETTdUOEZBYXN4N0NQTmNTN1BRVkVKQjNSSEEvTVJDdkFxMlNySXFBbGdTRVJVZ0FBRUlRR0FxQWdoZ1U1R2xYUWhBQUFMcklTQmhTRzZCdm1lK1htd2xBanhyUUJEcU5jeFE0c1dsbTB5TkQzRFdiS0V4UGFiNWd3SnQxeW9JWUhWSUxtRUJwdjN5a3N6c2hxRlp5bFh2ZnM0bHNpUXUwbEJxdW5lZjZ0d0RmVzNJT2szeHpIeXVqN3BIWkRtbUdGdXkraW9wRXNuMWJOQzFQeTY1TUZMM2dvM2xsdUwwNWJwRmpoSGZFTURLRmcwQmJIOWVjNGp4WlN0RWJRaEFBQUlRR0VVQUFXd1VQaTZHQUFRZ3NBa0N5aFQzajA0b2lnMVlMNXJmM3NTTTlnMVM3azlueVJpdnJMNE9OTFBQWmRUTnJZSUFsa3NxWG05T0Fhd2tNTHRjWnMrUU1VVlpFc255U2drV3BoVENZc0g2ZlZrZmRiNjdwSm5kdzdrczltT3laVXp0bDVrYzVTSjVZazdsd2pvYTMwMWNETUxjYkpFUzRCVC9MQ2MrV0RzY0JMQ3loUW54a2hDcWZhQi81cGJROHhrTHNGeUMxSU1BQkNBQWdlb0VFTUNxSTZWQkNFQUFBcXNrRUF1Y3Zjb0JWeHhVam10WWFYY0lZSDVpcDIreUFzck5UdjlzaTE2YWZ4QVFpT1lRd0RTV1c1cjlVdERKRVZzZVlXWUtDcTlZVi9wbmpvdmt6NXRZVkg5bFpzK1p3Skl5RnZkTGpCL20rbTU1YTc1L1kyYjNMTjNVVHVBUUoxbUZUaUY4OVlkVUlrcTIxeXJRL3kwYWNlKzdHZk5EQU11QTFLa1M0cVVQS01vNit0T0M1dlRjZmFLblBnSllBVVNxUWdBQ0VJQkFYUUlJWUhWNTBob0VJQUNCdFJKUXhyVFhGMlo2Vyt0Y1NzYWw3SDRTQW1wYjU0UUVzSkt4TFYzM3BXWjJoOHFEOEwxQXg5eUlwaFRBMnVEcmN1SExDWEwvZGVkR3E1Zjl0Z3h4bC95UWUvRS95c3hPSHNuM0ltYjJUbWZORldyS2w5MVUyVGpsRm5teHpQNm5GUEJ5aGxEQ3VlU2VSZ0RMb1g5cW5iVUlZQ0czL2RMWWJibXpEODBiRjhoY2d0U0RBQVFnc0JFQ0NHQWJXU2lHQ1FFSVFLQUNBUVhSZnFHem5xalEzT3Fia0NYUFlST0lYNW80QXBoLytkY2dnTWtDU2drUG5sS1E0VkJpb0lMaSsrSmN5UUxzenh0THNNZG5Xb08xWkdUNWRyUzc1eFNEenhlZkszWVR5VzN4R1M1b2ZheWVUd0JUL1ZCRzFHNWJ5dXFvK0Y1VHUzRG1QQ3h5T0IvblJQd1RjaG8wTXdTd1RGQ3UybG9FTUo4d3JpRU9zVVRMSVlBQWxrT0pPaENBQUFSMmdBQUMyQTRzSWxPQUFBUWdVRUJBNG9EaUNjbGQ2K0lGMTIybHFpeTkvczdONzZzVERob0JiSDBDbUFRVXhaVjZRcWJGbDJZZ0FVaXVqc2VZMlg4bDlvdUN0eC9leEpJN2FPQysrcGFadmRiOTczMkovalFYV2E3ZE9hT3ZrQUFtQVUzeHN1UzYxaTBTNW81MDR2QVhNdWFkTVlTcVZjUlpjNWVyWEgvY2NtV1ZXSmRicGhUQVpEV25RUDZmemgzTUJQWE8yeVE0ZUp1WlhhRFg5bENoQ0FGc2Y1QllnRTJ3YVdrU0FoQ0F3SklFRU1DV3BFL2ZFSUFBQkpZam9PZS9YbmF1WW1aWE5iT3pMemVVMFQwckNQaEh6T3lUWm5hOG1aMHl1c1YwQXdoZ2ZrWkxXSUFwNXRpaFRYeWlCemJDeVhuU1MvZmZOWjdwNG1lVlpqZVV1OTZMek95QWdyNjZWUlZmNjVFUjRVbjM1b09jUUpYVFJVZ0EwN1hYY0Zab1oyd3lRTW8xVThMM095YXlpc3daYTI0ZFg5dzJaZTZVV0ZuaXpqeWxBSlk3bHlYcUlZQ1ZVY2NDckl3WHRTRUFBUWhzbGdBQzJHYVhqb0ZEQUFJUWdNQ0NCQkRBbGhYQVpDR2w0UEJ5Mzd0aDRUNlFFQ1RCN1BPRjEzV3I2L3drY1VuQjVxOVEwSTdFV2wzMzJjQTFhbGRXVGk5dk1qQ2VMclBkbUFDbVRKYVhiOXdodnp6QUJUT3orMG1ybmQvTW50MVlmVjNPdVQ1SzRDNHBDR0FsdE1JdW8wTUV0VEZCOEVQWHl2cnYxczE5cnl5dE5Rc0NXRTJhdEFVQkNFQmd4UVFRd0ZhOE9Bd05BaENBd0FJRVpBa20xNmwrK1VsaEJyQUZoajVybDFOa2dReTloR2xpT1puVFFnQkM4WFRXR2dSZjh6Z3BFVUQrSVdhbS8xMm1ZTlZMM0Ixem05VTVTa0xjMHpJdHdsN3BBdTJIWHVEbG5peTN4Vnp4UytPTUNXQzU4MWh6UFRHV2xkLzNCZ3dTQWF3TTJscGNJRU1DMkJUUExCRkNBQ3ZiSjlTR0FBUWdzRmtDQ0dDYlhUb0dEZ0VJUUdBU0FvcWZkWHRQeTNPOFpDdFQ1VnRjQVBQK0VNWUlRRk9BUWdEelU2M2hBcG16WHRvUFN1cHdSRVpsaVduM2RjTFNsTzZ4djJsbUQzWEI1MzBDbG1LTTNkaTVJUHFHUFVUODJnc0NXTVlTQjZzZ2dKWFJXNHNBcG1RdHN0THNGeVdGdUUvWmxMSnFJNEJsWWFJU0JDQUFnZTBUUUFEYi9ob3lBd2hBQUFJMUNZUUVNR1dVZTFuTmpqeHRiVWtBazB1V2VQUmpweW5JK2YwSGNwcktBdXk2WnZaaXo1akdqRFUweFRrRk1HVlk5QVY1YjhjbTRVdkM3U3ZNVEFITDV5cG5jOEhyNzk1TE5QRkZNenZRekw3VEcwaU8yK05Yek96RFpuWWJ6eVJ5eGVuUVBwaUx5OUIrN3VqaW1BMjVIZ0dzak5wYUJMQzVQOFFnZ0pYdEUycERBQUlRMkN3QkJMRE5MaDBEaHdBRUlGQ2R3SmxjaGpWWnFmVExIQlpZV3hMQXFzT1B1T0dvcnpuNDE1alRuQUxZbTN0QjN0dnhmNjBSdk9SQ3BYaEJKUUhUYTh5LzI0Yk9XTC9sTEZaa1ZTbXJscjcxaXVyYzA4VVNDN2s5S203WURjenMybWIyeEJFQ1dNZ1Z0dmE4YTdjM1p1OVBLWUNGc2tCZXoyV2k3WE5ROGdQRk13dVYwSFVTcWtOV1Q3dVlCVEwyTy9EeDVsbjRpZG9iek16TzBzVGx1MFdUSkVMSklycUZMSkFUd0taSkNFQUFBa3NTUUFCYmtqNTlRd0FDRUZnWGdhVUZxS1g3WDNvMXBySUFtM05lY3d0Z0N2TCtYT2N1OVZGbjhhV0EzVk82T2c3aHFhRDlPblA5ZStkaS9iZUhOZGtnSHhWcDhEOWRVSHlKZWFHNFNMa1dZQWhncDRLV1NLb3NuaWRtTHFiUElpa2tqb1E0cDlacFNLeSttaFpiUWxHenZhRkI4TS9kaUwyNmg1VnRkZW1DQUxiMEN0QS9CQ0FBZ2NvRUVNQXFBNlU1Q0VBQUFoc21zTFFBdFhUL1N5OGRBdGkrRlZDc3JEZTZRUGloTlpFbHphZmNIMy9OV1hBY1oyYm5jWlpmRjFsNE1VOHdNOFgwK201a0hIY3dzNWRraWwrcWhnQld2cWhUV29BaGdNWFhZNmdBZHNFbXM2c3l0ZXErWHJvZ2dDMjlBdlFQQVFoQW9ESUJCTERLUUdrT0FoQ0F3SVlKTEMxQUxkMy8wa3VIQUxadkJjYThkTVlZenJtK09SWkc1MnRpZ2gxclpwZnlERXlXWHdyYy95d25DQ0tBRFZ1OVdnS1lMenV1MXVnSEhqZmJ1enFyeFA2STc5WllXRDB2TW8waEZtQ25keGt5OWM5dWthV2h4aVl4dWFTc3dRTHNTczRDekplTnVHUXVOZXFPZVJiVjZKODJJQUFCQ0VDZ01nRUVzTXBBYVE0Q0VJREFoZ2tzTFVBdDNYOS82ZlRTSzdlbGM4NjBwcUU0Tk9yK25XWjIvRXpqVURkNmVWYThLY1dmS2lrMVhDREh2SFJ1U1FBVDEwY0hYQ0FmYUdhSDl3U01zUlpnc3FpNWFzbGlKdXJlek13Tzl0VDVhek9UTzJxdDhzRW1xY0EzQnpaV1N3QXI2WDZvNWRNUUFheGtYRGwxMXlDQTNkeFpjZWFNZCtvNlk1NUZVNCtOOWlFQUFRaEFZQUFCQkxBQjBMZ0VBaENBd0k0U09LdVp2YTNKdUhiMTN2eGtSWEQ5RVpuWWNuR3RUUUJiaTVpU3k2OW12UndMSmw5L0NHRDdxT1R5dTZ5WnZiZVhUZFFuZnFuTnNRSll6ZjBSRzgrWW9QVzF4N2lFQVBaME03dTNaeUpLTHZMMnlBUVJ3UGJCZWFpWlBiNzJSaGpZSGdMWVFIQmNCZ0VJUUdDdEJCREExcm95akFzQ0VJREEvQVNXVGdXUEFEYi9tb2Q2ekJWdyt0Y2pnSlVKWUFyaWY0U1ozZHJNZkc2UFhiNElZT1gzeDl3Q21NN1ZSM29zNDNLRUZBUXdNOTBQcjNUeDgvcXIvWXhJTnN6eW5iSC9GVXYvOW8wZFA5ZERBQUlRZ0VBbUFRU3dURkJVZ3dBRUlMQlNBcGN6czVmMUxFaUdEbFV2SDNvUjhKV1RHbmZBazRjMm5IbjhRWFNJQUFBZ0FFbEVRVlRkNlZ6LyttZS8vTkRNZnByWlRxeWFYUHB1Mjd4Z2ZTYWpMU3pBOHJQa3RUalhLb0I5ejh6ZTRvblhsTEVOb2xXVXlmR21acWJNZGQxU0lpRGUwTXorM3N3VUkwclpCa054bXhEQXlsZHJyQUNtYzdJU0tpaXBRVTQ4clpDSS8rM0dqZmxxWnZhVnlCUVF3UGJkUjZFTWtLa1lhdVc3NDlRckVNREcwT05hQ0VBQUFoc2lnQUMyb2NWaXFCQ0FBQVE4Qkg3UHpONWpabWVHVGhhQkhFdU1tSmlUMWNrT1ZDb1JjTHJUWGFzQXBwZHFDVlUxUk5UdWZFT0NSd20vY3pYWklDOXFaaDlQN0JzRXNQSWJhNHdBSm5GVHpBOXNNbzcrU2ViZUNmWDNlVE83bHBsSmlBMFZCTEI5N3ZmSDJENUxzRzc1UlNPTVhkdk0zbGUrQmJLdVFBREx3a1FsQ0VBQUF0c25nQUMyL1RWa0JoQ0F3TjRtZ0FCV3R2NDFCREJaZ3J6UnpHUVZWN01zRVFUL1BHYjJ4MmJXUHcrVUNEZ0lZUHZFalc0WnlpKzJueERBeXUrMm9RS1k3c1hubXRudEd1SDBZeTRHb3F4UVV5V1V3ZkJkN2o3N1dhU0JOUXRnY3M4OTBibnBwaGkwZjFmeUVISHNsMWlNdU5BZWwrWGM3NXZaZDNJN0w2eUhBRllJak9vUWdBQUV0a29BQVd5cks4ZTRJUUFCQ093amdBQld0aE5xQ0dBbGJaU01MdVp5T1ZWZzhkRCtHU3JnWUFHMmI4V0g4b3Z0RndTd2tydHBYOTBoQXRnRnpld05qY3ZzRlYxM3lrQjVnSmw5STZON3VWY3JCbGkvdktpNS9rNko2OWNzZ0dWTVBidEs2RmtXaXdINU9oY25UNVpnVXhRRXNDbW8waVlFSUFDQkZSSkFBRnZob2pBa0NFQUFBZ1VFRU1BS1lKbFppWGcxOTBzUkF0aSt0U3haby83cWh4aXUyUVV5ZHdjamdPV1NPclZlcVFBbUN5NkpMUmZxZEpXN0gzV21mckdaSGVJWlprNzhxdG9DMkJQTVRGWnJFdCsrbjRsdWpyaUhJUUhzcW8yNzZiRm1kc2FCL0RLbjZLMDI5N04rekZpNUZnSVFnQUFFUmhCQUFCc0JqMHNoQUFFSXJJQkF6U0Q0NTIvU3p5dnVUYi9JYmVjSE04eDFLMEh3YzErSVM1RWhnQ0dBeGZZTUFsanBIWlZ2QWFiejhDMWNRaEhmTXpESEF2TjhUc0M1VkcrWVAzZnh2ejZhR0g1dEFVd0pGVzd2K255SG1UM1Z4ZGY2ajhnNGxoTEF4RjlaSHUvcEdadCtleFFiN0F2bHk1OTlCUUpZTmlvcVFnQUNFTmcyQVFTd2JhOGZvNGNBQkNCUWkwRE0vZVF2ek95d1doMUYyb21OSWVjRnRQWVE1MzRwUWdCREFFTUFxM3NYNTFpQXRjSHUvekxTZGM0elVOazgzK2FKcDVjVEFGOWRUeW1BdFZOVExLOUhORlpXZnhXWTYxSUMySytiMlh2TjdOYzg0eExUUDUwNEMvSGN6L3E2dTV6V0lBQUJDRUFnbXdBQ1dEWXFLa0lBQWhEWWFRSVhNN1AzTjRHZlpRWFdMM3I1ZVAwTXMwY0FNL3RRNDBaMVlRL3JxUVJBWW9DTjI5ZzFza0RtamdBTHNGeFNwOVpMQ1dELzFvZ3VMekN6bTBlYS9xQ1pIZHk0Tmg0ZnFTTVI3V1ZtZHBDbnprdWFtSEIzTkRNbHo0aVZPUVF3OWY5U003dERZQ0JMQ1dDUGJ2ZzhLakNtMjVqWks4dVh2dWdLQkxBaVhGU0dBQVFnc0YwQ0NHRGJYVHRHRGdFSVFLQW1nVnViMlNzOERlYTY3OVFZQ3dJWUFwajIwUmdYVTJLQTFiZ1Q4OW9JQ1hKVGliVjVvOXEvVmt3QU85UzUzZlZkRnJzdHlHM3dZV2FtNTJDc1hLTngwenM2RUw5S1dWYmZsREg0bWdLWXNpOHFVKzExUFAxcVBxVVdZRlBGME5Qd0xtRm03M0VKQy9yRC9XTGpWbnJnaE5rZjIvNFF3REkyS0ZVZ0FBRUk3QUlCQkxCZFdFWG1BQUVJUUdBY2dWOXhXYzl1NEdrbTEzMW4zQWoyWFkwQWhnQ0dBQmErazdBQUszL0tLS09qckNwOXJuV3l5QXFkZ3hVblMxa2JqOGl3M1BwVkZ6amZKemFWQ0RnMUJiRFlzL1FCWm5aNEFPWGNBdklaR3F2ajU1cVp4RWhmZVV6ekgyVWROblZCQUp1YU1PMURBQUlRV0FrQkJMQ1ZMQVREZ0FBRUlMQWdnZXVabVlJa0t3aDl2enlyeVNCMjc0eVh3QnJEUndCREFJc0pZS2Mzcy9NMllvTVNQMXpOL1ZOdVU1L3BiTDY1WCtCeGdUenRuYjhtQzdBaFdYSy83bUpPcFlMV2ErWTZSejhvRWlPeFJNQ3BLWUNkdzh6K3djeXU2SGt3eDlabjd2dEhZM2xENExmblJETzdwcGw5dWNhUFM2SU5CTEFaSU5NRkJDQUFnVFVRUUFCYnd5b3dCZ2hBQUFMTEVUaVhtYjNkeks3a0dZSXNKRzdzeExFNVJvZ0FOcjhBZHR2R0JlbEl6K0orcFhtQi92MEJya2UrRjhtWVM2UHZwVi91WnNySTl3c3p1NEliaDhaeW50NDR2OWJzelFQTVRDL0tiWm43QlI0QmJOMENXR2gvaDU1bjcyb0VsOXVaMmJjekgzaUtqL2pxU2dKT1RRRXNkQitrWE5ybnZIOHUwZ2paNzJ4aXAxMHl3UHB4WnZiSW1UNitJSUJsYm5pcVFRQUNFTmc2QVFTd3JhOGc0NGNBQkNBd25JQUNOOHZDNjg2QkpxYU0rK0xyRWdGc1hnRk1ybHR2TmpQRkwrcVhvV3RmSW9DZDNjd1U0UHJaQTdjd0F0ZytjRGtaQ2djaWpsNjI5aGhnT3VPK3VBbGVmMGptNUhQamZiWE5YZG5NampJejdXTmZLVjJYbWdMWTVWMVd4YlAyQmlaaFQ5YVRFcmg5WlM0QkxQWGJNNmYxbHpnZ2dHWGVKRlNEQUFRZ3NIVUNDR0JiWDBIR0R3RUlRR0FZQWIyQUtCaHlLUE9Xckw5a2hUTkg5c2QyQmdoZ3d3VXd4ZExSQy9rM3plemZ6ZXduWnZiVHdOYlEycXZ1TTUyRmxhL2F5NTBsVENwelhmOWEzNHVrTExrZWJtWm5idHlkOUdLdXZsVnZiRUVBMjBld1ZHZ1p5NzI5ZnUwQzJHV2FBT3JITnZ2ODNJa0psOFQ3YXB1NnJwbTlKaUoreVgzeVJvMzcrUGNMWU5jVXdLNXVac2VZbVo0TDNaS3k3SlNZcC8xMHp0NTF4N21FQVNjWHpDZFVOZVUycXVzZWFHWlBxZEJYYmhNSVlMbWtxQWNCQ0VCZzR3UVF3RGErZ0F3ZkFoQ0F3QUFDQ25vdmE0ZTdScTdWeTUzY2gvUnlPRmRCQUJzdWdHbU5YaGdKSmwyNmhuZHJSS3JuWlZ4MEpqTlR2S0hmZElIR3IyMW1meGJJaHBmUlhGRVZCTEI5dUJEQVRydHRKUEkrUDhQNnF5VGVsM3JSdVZuN1cvZWErdkNWZnpVekpSVDVTTkZ1TmdzSllFUEU2SnU3d1B6OUljakZVMWtwZjFZNHRwclZZMjZqNnVlOXRvL0ZqMnAybW1nTEFXeEcySFFGQVFoQVlFa0NDR0JMMHFkdkNFQUFBdk1UVUZhMGx6UXZHYjZNWmUxbzVuWS9hZnRGQUJzbmdFblFWRWExc1VWV1pIS0wvR3BHUTA5M1NSSXlxbGF2Z2dDMkQ2bFBBTlA1VGxZOFo2eE8vZFFHNytFcysvcGQzTUhGZHBxcWExazQvaUFSRzByNzk5MGVDNmp1bUQ1bVpqZHJzajErSTNPZ1ozTldVTGVQMVA5UE03dGxRSHhLZFJPeTJ0STRyMjltUDB3MTBQbDc2TDU4YVhOZmEzMldLaW0zVWEydHJPc2tnczFaRkFOVGJ0LzZPTlF0c2ZpRmM0NlB2aUFBQVFoQW9CSUJCTEJLSUdrR0FoQ0F3TW9KS0lQZXJSb3JuUmM0VjdUUWNNZTh3STFGZ0FBMlRnQUx2VUNYcnN2ZEM0UzBrS1ZKYVorcCtpYzFJc0FIM1A5a1dhUE1qejRSSkdUSjhiMG1JOTViSnJCb2xCWFFUVDF1ZGo1eExqWEgxTjlETG9jK0FTeDJMNlg2V2Z2ZmMrTFQ2WHdySVVyV1U3N3N0dm9JY0s5TVN5ZzlPOVdXeEdXSllMR2lOWHJTd01EdG9ZeVZwY2xJTG1GbTd3bTRHUzlsTFNobXFhRDNxak5uNFB2dU9tb3ZQTU96c0FoZ2EzOGFNRDRJUUFBQ2hRUVF3QXFCVVIwQ0VJREF4Z2pvT1g4NTU3TGp5L1RZbjQ1aXJ4dys4QVZ1TEJvRXNIRUNtS3o3UHVSY0VZZXV4V01hMTY3SEZ3aEZ2OVZZYkx6UEV6Tm9hUCt5Y3ZtRW1iM2YvVTlDMTNmTjdKVE1Ca01DV09ibDFhb2hnRlZEZVpxR2NnUXdYUlNLTlpXN3grZCtkcDdQQ2J3WDg2Q1RnQ3ZYUzJWTkROMEw3WGovTGhMYlQxbDlsZlYzN2lMeDY2MU4zRFRGWlFzVnVXZktQWEpPMTBlTlJSbG1OVFpmTW9NcDd1TzUyZE1mQkNBQUFRaDBDQ0NBc1IwZ0FBRUk3Q1lCUGQvbGJ2STBNenNnYzRwTGlsOGFJZ0xZT0FGTUdkL2VabWF5QkNzdFh6U3plN3JBMlNXQjc0ZGFHbzBWdWtMelF3RGJSMmJvdXBUdW15WHE1d3BnR2xzLzJZY0NxejhrSWZDMno4Ni9iRVRZNjJWTWNFZ1FmVit6Q2xoL2hKbmRPcVBQSVZWS1hKdUh0Qis2UnNMOEd4b0x6Q3RHR2xYY3REOW80cE45Y2tESHNweDdkQlBUVXE3N2JmbVVFODY3elNrWngrZGNjaERkSDdwT2dwdVN2WVRLRVBmVEFWUGdFZ2hBQUFJUW1Jc0FBdGhjcE9rSEFoQ0F3RHdFenRJYzhnOXlzWGt1bnRsbHJSZTR6TzZDMWRZbWdJVXlvdjNjSlJFNGZ1eUVlOWZIeEpzL2FsN1kzcHpSMzZHTmhjZFZYTDN6bXRudkJxNzVscGw5dWdrMi9YRXpPOHJNVGhoaDlSZUxBNlpnMjU5MUxsa2ZkUDNwUlhXcTVBb0lZUHNXSEFIczFJMHZFZXhaN3YrVnlCdmFlME9lbmFWQjlGTzM4QTJkaUQzRitWd003ajNpUGsrTjNmZjNIUEZyck50OURjdlgwTnprRm5tZklSUG5HZ2hBQUFJUVdDZUJLWDVnMXpsVFJnVUJDRUJndHdtYzJjeWU0T0xhK0dMZWhHWmYrd1Z1RE9XMUNXQmo1akxrMmhvQzJKQit4MTRqY2U3MVRaeWt6N3ZnMVFwZ0xXRk5lK3Zrc1kwWFhvOEFoZ0RtMnpLeXJsS1JGWkN2NkR5cytGaC9WYkRmbENsWDJWSVZpNjVXa1ZqM012Y1JvMWFiYW1lSnhDYUtSZmIzQ2JkSGpXMU0zRFJkUDVYWUsyRk9ncVRjVGlrUWdBQUVJTEFqQkJEQWRtUWhtUVlFSUFBQjUvSW9heDVmTEJNZklHVUVrMFhBajFkQ0R3RnNuQXZrU3BaeDBXR0VCREM5ekVvRTBEOXJGb25ONnJNdk9rOFJPNmdrQ1A0Y1dTQnJjaXhwS3ljTFpFbDdiZDFmZGRrYll4bHlWVmZQeTd1WTJhc25zcVpTOXM1WHVNeVBRK2JSdjBidWhiSUtQcnBHWXdWdDNNUXgwc2VaVUZGU2xwaFZYbTUzTDJ3RWQxbS8xaXdTT0c4N29iVnF6YkhTRmdRZ0FBRUlaQkpBQU1zRVJUVUlRQUFDR3lHZ21DWjZNWXRaZ2YyTGU0RTdacUlYdUtHb0VNQVF3SWJ1bmZhNmtBQldFamVxWkF5aFBidTBBRll5QitxZVNrQkIyby8xWlBWc2F6eXpFVVFlTnNOSGcxOHhzenMxQWU4ZjBiaHZubWZFQWtuRXVYL1QxamRHdERIbTBpczBidGh2TXJNTGVSbzUwbG5ReVUxNmJORWNGZCt0VmxHc01BbDRjZzJuUUFBQ0VJREFEaEZBQU51aHhXUXFFSUFBQkNLWnp3UkhsZ3YzYzlZRmltTzF0b0lBaGdBMmRrOGlnSTBseVBXM2M4SG91eVFVeFAwQlp2YlZtZkdjM3N3dWFtYS80eXg4YzZ4N0ZRQmU3c2dLNFA3VG1jZnI2ODduQ2xrNzQrT05YT3kwR3ROOXBiTktxK25hV21OY3RBRUJDRUFBQWhVSUlJQlZnRWdURUlBQUJGWkdRRUtTWWpLMUdjeE9jdkZ0NUZhelJ1R3J4WWNBaGdBMjlsWkNBQnRMa09zVmgrdjVabmFJeTE2b3JKSC9ESlpSQkM1aVptOTE4Y0JxaTE4YW1FUkNmZHhSQXBBTERCanBsNXByMys2c3B4VzdrQUlCQ0VBQUFqdEtBQUZzUnhlV2FVRUFBbnVlZ0Y0NERuTXZjbkwvT21VRFJNN2tZcEpkMGpQV1o1dVpMQnQydVlTeVRtck9lMkgrTmRZMnhQQTRNMU5HdDlwQitVTjdWdFlqVHpRenhWK3FWU1FRbjlYVDJFOVdZdWxUYTU1cmFFZHh1TFMyeXBaS3FVTkF2MG15b3BOYjU0L3FORWtyRUlBQUJDQUFnVElDQ0dCbHZLZ05BUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnc0RFQ0NHQWJXekNHQ3dFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlGQkdBQUdzakJlMUlRQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCRFpHQUFGc1l3dkdjQ0VBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFUS0NDQ0FsZkdpTmdRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdNREdDQ0NBYld6QkdDNEVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUJBR1FFRXNESmUxSVlBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhEWUdBRUVzSTB0R01PRkFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFLQ09BQUZiR2k5b1FnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDR3lPQUFMYXhCV080RUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFtVUVFTURLZUZFYkFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFZR01FRU1BMnRtQU1Gd0lRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUtDTUFBSllHUzlxUXdBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNHeU1BQUxZeGhhTTRVSUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWlVRVVBQUsrTkZiUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUlHTkVVQUEyOWlDTVZ3SVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQ0JNZ0lJWUdXOHFBMEJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0N3TVFJSVlCdGJNSVlMQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ1VFWUFBYXlNRjdVaEFBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVOa1lBQVd4akM4WndJUUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQk1vSUlJQ1Y4YUkyQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQXdNWUlJSUJ0Yk1FWUxnUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnRUFaQVFTd01sN1VoZ0FFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRU5nWUFRU3dqUzBZdzRVQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQW9JNEFBVnNhTDJoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUliSTRBQXRyRUZZN2dRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ1pRUVF3TXA0VVJzQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQmdZd1FRd0RhMllBd1hBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBb0l3QUFsZ1pMMnBEQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSWJJd0FBdGpHRm96aFFnQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDSlFSUUFBcjQwVnRDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ1kwUlFBRGIySUl4WEFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FJRXlBZ2hnWmJ5b0RRRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJTEF4QWdoZ0cxc3doZ3NCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNCUVJnQUJySXdYdFNFQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUTJSZ0FCYkdNTHhuQWhBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFeWdnZ2dKWHhvallFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlEQXhnZ2dnRzFzd1JndUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FRQmtCQkxBeVh0U0dBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRMkJnQkJMQ05MUmpEaFFBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VDZ2pnQUJXeG92YUVJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaHNqZ0FDMnNRVmp1QkNBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFKbEJCREF5bmhSR3dJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFHQmpCQkRBTnJaZ0RCY0NFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUNnakFBQ1dCa3Zha01BQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoc2pBQUMyTVlXak9GQ0FBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlsQkZBQUN2alJXMElRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCalJGQUFOdllnakZjQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdUSUNDR0JsdktnTkFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdzREVDQ0dBYld6Q0dDd0VJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUZCR0FBR3NqQmUxSVFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJEWkdBQUZzWXd2R2NDRUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVRLQ0NDQWxmR2lOZ1FnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ01ER0NDQ0FiV3pCR0M0RUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQkFHUUVFc0RKZTFJWUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaERZR0FFRXNJMHRHTU9GQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUUtDT0FBRmJHaTlvUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNHeU9BQUxheEJXTzRFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQW1VRUVNREtlRkViQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQVlHTUVFTUEydG1BTUZ3SVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRS0NNQUFKWUdTOXFRd0FDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0d5TUFBTFl4aGFNNFVJQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaVVFVUFBSytORmJRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBSUdORVVBQTI5aUNNVndJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFDQk1nSUlZR1c4cUEwQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQ3dNUUlJWUJ0Yk1JWUxBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnVUVZQUFheU1GN1VoQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRU5rWUFBV3hqQzhad0lRQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCTW9JSUlDVjhhSTJCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBd01ZSUlJQnRiTUVZTGdRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdFQVpBUVN3TWw3VWhnQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFTmdZQVFTd2pTMFl3NFVBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhBb0k0QUFWc2FMMmhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSWJJNEFBdHJFRlk3Z1FnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDWlFRUXdNcDRVUnNDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VCZ1l3UVF3RGEyWUF3WEFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFvSXdBQWxnWkwycERBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJYkl3QUF0akdGb3poUWdBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNKUVJRQUFyNDBWdENFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFnWTBSUUFEYjJJSXhYQWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUlFeUFnaGdaYnlvRFFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlMQXhBZ2hnRzFzd2hnc0JDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0JRUmdBQnJJd1h0U0VBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRMlJnQUJiR01MeG5BaEFBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUV5Z2dnZ0pYeG9qWUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSURBeGdnZ2dHMXN3Umd1QkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQVFCa0JCTEF5WHRTR0FBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVEyQmdCQkxDTkxSakRoUUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUNnamdBQld4b3ZhRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoc2pnQUMyc1FWanVCQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUpsQkJEQXluaFJHd0lRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUdCakJCREFOclpnREJjQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQ2dqQUFDV0JrdmFrTUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhzakFBQzJNWVdqT0ZDQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSWxCRkFBQ3ZqUlcwSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQ0JqUkZBQU52WWdqRmNDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ1RJQ0NHQmx2S2dOQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ3NERUNDR0FiV3pDR0N3RUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJRkJHQUFHc2pCZTFJUUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkRaR0FBRnNZd3ZHY0NFQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBVEtDQ0NBbGZHaU5nUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnTURHQ0NDQWJXekJHQzRFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQUdRRUVzREplMUlZQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoRFlHQUVFc0kwdEdNT0ZBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRS0NPQUFGYkdpOW9RZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0d5T0FBTGF4QldPNEVJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBbVVFRU1ES2VGRWJBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBWUdNRUVNQTJ0bUFNRndJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFLQ01BQUpZR1M5cVF3QUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDR3lNQUFMWXhoYU00VUlBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFpVUVVQUFLK05GYlFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FJR05FVUFBMjlpQ01Wd0lRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCTWdJSVlHVzhxQTBCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNDd01RSUlZQnRiTUlZTEFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdVRVlBQWF5TUY3VWhBQUVJUUFBQ2U0WEFWY3pzUXA3SmZzN012ckJYSU95aGVkN0l6RzdtbWU5eFp2WU1NenQ1RDdGZ3FoQ1lnc0FWek93ZXZZWi9ibVpQTmJQanAraHdCOXY4TFRPN2pHZGUvMkZtN3pXekgremduT2Vla2hpcmZNbk1UcG03Yy9xRHdOUUVFTUNtSmt6N0VJQUFCQ0FBZ1cwUytEc3p1NzFuNkg5aFpvZHRjMHFNT2tMZy81alpFejEvLzBjenU2bVovUlI2cXlkd056TjdhRytVSjVqWm56YkN5M2NYR1AyWnpPd2NnWDcvMDRrVkVpNzJTdmxETTN0VGI3TC8xOHl1YVdZZjN5c1FSczR6OUp5QzQwaXc3bkpwQXk5dUJObER6RXozNXV2TjdDVm1kaXdmUWVvQXBwWGxDU0NBTGI4R2pBQUNFSUFBQkNDd1JnSUlZR3RjbGVuR2hBQTJIZHU1V3ZhdDRkZk03QUF6TzNHdVFYUmVwQjlyWmc4UDlQc1dNN3VsbWNrQ2FxOFVCTER4SzQwQU5wNWhySVZ6bTVrK2VsemFVK25tWnZhR2FidW5kUWhNVHdBQmJIckc5QUFCQ0F3bjhML003S3pPQlB2N21HTC9OOGpUTnk1SjV6SXovZk1uV0dZTTMyQmNHU1dBQUxhM05nZ0MyUGJYZTAwQ21OelVaRFdpRitwKytTOW5WZmkyN1NNdm1zRmVGTURPYkdiL1Z2SDhoZ0JXdE9XS0sxL2R6STR4c3pQMHJ2eTJtVjJ0c1FyL1NuR0xYQUNCbFJGQUFGdlpnakFjQ0VEZ2x3UXVhbVl2TmJOcmRIajh1QkY2SHVoTXMvZHFUQUlKWG5jM3M3OXVYTkIrcGNQbTdTNnVDREZFdUlGcUVxZ3BnRW5NbHNYSHRXb09zRUpidUhPZUNoRUJyTUtHV3JpSnRRaGdlbmwrcnBrZEd1R2hlRTBTaEg2ME1MTTV1OTlyQWxqclRuZmJpcTUwV3hiQVF2SExwdDZESlhFN1EzeGZaMmEzYml3NmZ6SDFZR2tmQWxNVFFBQ2JtakR0UXdBQ3BRUXUwbnhsZXFlWlhUSndvWDZjbjJSbStvSzhsNHFlMXcrS3hGNVNvT3JybVpuaXZWQWdVSVBBWGhEQS9zak0zbHdEMWc2MGdRQzIvVVZjaXdDbWoxZEhtOWtaRTBqMVFVZEMyVjRwZTAwQSs3WG1YUEorTTlPNXJscys1R0xWeWRLb3RHeFpBQXVOdlpSQmFmM2NEejJLMlNlaDY4YWVEbTdYbk10ZlZ0b3g5U0d3UmdJSVlHdGNsYjB4Smoxazd4MFJPVW9vS0s3Rlo5d0ZzaEw2dkpuOUsyNWhKUWhYVXpmbnEvRy9OMjRWQjVyWkIxY3o2bmtHOG50bTlwN0cra3Z1QktIeVNqUDdNNzdRemJNZ2U2QVhCTEE5c01pZEtTS0ErZGRiSXFtU0FQaUtYdTUxbjZ5bHJFRUErMVVuS25jdHVFTjhkSDVUQVBndnJ3WGd4T1BZYXdLWTdwMDNCcGpleHN4MFppa3RvZWZVVXJIdVNzYS9kZ0hzWWs2d1BIOXZVcmcvbHF3eWRWZFBBQUZzOVFTemRZSUFBQ0FBU1VSQlZFdTBzd09jd3gxRzJVcytZV1pITmNFY1grM1MrZTZsYkVOYjNEem5NN01QTk82UCtoR09sWWMxWDViL2Fvc1RIREhtK3pmeDBKNlN1UDZiTHRqeE4wYjB3NlVRYUFrZ2dKMjZGODdlY3p1ZWNwZjhjS0ZzV3doZ3AxMVZpVGs2UTF6RnMrQ3lRcGFseER1bTNBeUZiYTlCQUh1QW1UMjVZTnpLTUhjWGwzR3U0TEpOVnQxTEFsZzNtMkIvc1dTcHJuaFNPck9VRmdTd1VtSm11UlpnY2xVOTB0TTg3by9sekxsaXhRUVF3RmE4T0RzK3REa0VzRDVDcGR6V1FmVnZYSUJIeExEMWJiTExtNW5pZ2lqd2Zhd29QdGdkMWpmOFNVZjB3a1E4RlhWT0d2QkpsMkRQTmI0WEJEQUpHSXFobHlvaEZxbnJodng5S2JkTUJMRFRydFlOelV5QjJuM241UTgzbHNnM1dGa01xNlVGc0ZqZ2V3bTdFaFJQMThNc0lWSFdRSzhhY3JNVVhET25pQjBhbHNJVTlDMEdsUVh6Wm1iMjZZSzVURkZWc1ZWckpoc0t1VDlxN0JJOTd6Z3dsQVVDV1BucTV3aGc4c0E0d3NYNTZ2Y3cxRnF2ZktSY0FZRVpDQ0NBelFDWkxyd0VsaERBdWdQUmdVTVdSRTgzTTdsTlV0WkI0SCtibVdKRFhEZ3huTDFvQVpaak9vOEYyRHIyOGE2TW9xWUFwdlBHT1ROaUFvbmRiN3RVNjkxRUQvcnZlamJJeGZkbkF3QWY1RDUrZEM4dEVZd1J3TXgrT29EN2xpK0p2UkJxWGdyajhNeVZUWEJKQVV6M3E2enRmZTZpdXRja0pvcVo3c1YrbWNNVmNzNTdlR1hiSW1zNHRWMElGVEQ5Rlo2ZXgxcE9Jb0JsTGVkK2xYSUVzRjkzSDZBbFhIYUx6cFZ5Wi81cWViZGNBWUYxRWtBQVcrZTY3SVZSTFMyQXRZeGxCZlk0TTNzYVF0Z3F0bDNxaFVPRDNLc3h3SzdxVXNySGdnb1RBMndWMjNobkJsRlRBQ3VCRW9wMzkvSW1WcEFDOFE1SmdPRjdhVUlBMjM5VnNBRGJuNGN5dHIzUENiZjkvYnZXbDhJbEJiQzdtZGx6QWplNnpsbVBiQVN5Uzd2ZnNYTjc2cjJyaWVmNnB4TmExQ0dBeFovQ05RVXdpYUZ2Y0JhUy9WNC8xb1M2dUw2WnlTSndTTmsxQWF5bUJXRG80MUdPQUJZU0xNZFk2dzFaWDY2QndPUUVFTUFtUjB3SEFRSnJFY0RhNGNrS1RERW85UFZ5eU1zVkMxMlB3TzgwUVhIZjNZaVNjbGZ3bFdjMVNRNytmQThHZXBjNCtBd3owMHVHcjN5dmVWbTdidU5LOFUvMWxvS1dkb2lBbnJrcDErTCtkR1VoZXdzUEE3M01QanVUelJDM21pdVoyVDk2WW02TmNYMUdBRXN2R0FMWS9venU1WjY1b2Q4aFdUT3Q3Ynl3bEFCMlpSY3J6ZmU3L2JrbWdjc2ZtTmwzSGNoWWpMQXBzendqZ01XZkFUVUZzTXM2YXlMZmZuaE1NNHhIcHg5SHdScTdKb0NWZkloSllRdDlQRW9KWUtHUHoyT3Q5VkxqNWU4UVdJUUFBdGdpMk9tMENaQzZOZ0dzWFpUWE9JSGhCNnpTb2dSK3d3WGkxSXR3Vy9TVjdCSE9iWFd2eG0vN24wNzhlN3laNmQvYkl0Y3d4VVQ3MHFLclJ1ZHJKcERqUWp2RitJZThWUGtDUld0c2NsdVgrL09RNHB0L2ljdnduQy9QeEFBYnNzSjFyNGtGdi85Rkk5QmUyMW1IMWUxMWZHdExDR0JpcFNEWjEvRU1YN0ZYNWZyNHpzN2ZVdlZ2NmRvYlQyUC9GdWE4aDJ1UGZZNzJoanlyUStPU3dQVW96eCtWb1YzdWRKOGRNU0VFc0RDOG9RSllLUHZqRjEzVzllK01XQzh1aGNEcUNDQ0FyVzVKOXN5QVVnS1lmaVFmWEdBaWZUa3pVL3dvUGNSbEFueWVFU1MvN3N6d1B6cWlEUzZ0UTZBTldxdER0RVRKdlNwODlXbEsvRkk4SlFVVGxqQ28rNFVDZ1JpQkxRbGdvWXluc2h3NWZPQXl5NXBORmp2ZFV2TENGM3A1L3JqTE5sdzZyTE00NnpxZlN6TUNXQ25OK3ZXM0Z2eStKVEMzQUtiZklsbGwzem13Qkszclk5OVNMbVl4cHQ4ekpSZjRTT1ZsUlFDTEF5MTVIc1phdXBDejRyK0VwMUtOTUEwSVlQVUZzSkMxNjVpUFRwVnZYNXFEUUQwQ0NHRDFXTkpTR1lHVUFEYjJoL2owVFphWml6cVhzRHVaMlJYTGh2ZkxiSHI2Q3ZuV3d1dW9EZ0VJUUdDTkJMWWtnSVV5bnVabWJQVHg5NzM4bHZ6TzFJNkhGa3Y0Z1FDMjdCMlVpa1c1eHVEM1N3bGd0M0tCem4zdkU4cm9MR3ZPSHdXV00rWUtlWnlaS1dQaUNjdHVoY0c5eTNwZFZuRVNnNGFXTjVuWlhSdXZoRzhQYldDaDYwSmlTaTEzdWkyN2FvOTF4VTh0NlJBTHNGaThObGx1SHAvcXRPTGY5VUgzcVRQM1dYSDROTFVWQWdoZ1cxbXAzUnZuMUFKWW41aE03cFZtV3JFSFVoa0cyMnRsZFhRd2NjRjJiL014SXdqc1FRSmJFY0FVcCt4dFpuYjEzaHI5eExuT0RJMXg1eE93RkdkTUdldHlzaHNpZ09WeDJvVmJLeGEvYUszQjc1Y1F3TVphY2FXc3h4UTc3Q1liRThIMFhxVk10Ukx4dTJFS3RENDZVeXFwd2pWN040bGNhaVg0S2VsQ3Z5aTJwODZoUjY4dzNwenZYaitYbWIyOStYamNEVi9SMXZ1d3Mrd0xDYUs1enc0RXNEQ3BJUUpZVG9LbDNMVVpXNjltUExTeFkrSDZIU2FBQUxiRGk3dnlxYzB0Z0xVNFpCbW1MRU5QeWhUQ2RHQ1pLaDdGeXBlSTRVRUFBanRFWUNzQ1dDanozdWZON0ZwbXBoZkMwaEw2dlVFQTI1L2tsbDhzUy9kRXJING9mcEd1a2J2ZjNNSHYyMUFBT1hPOFI1TWc1dUc5aXQ5cTNBbGxQZGtHb1krMUk2RTVSeEMraUl2cmRjbEFZdzlza200OEpXUEFxWGFPY2E3Q1c0akxLcmZtWnpiV0s0ZDQ1cTJ6NUtFdWxNTWJlMy9YUzc4UzJNanQweGMzUzlYVnJ1SWZLbUhUbW91eTlCNng1Z0ZXSGx1cFlGTnFBWFltTXp1SFo4ektvSG15NTc4UEVjQVVVL2FobGJrTWJhNlU1OUIrdUc2UEUwQUEyK01iWU1IcEx5V0F0Vk9XeWU5am00T2VEbW1wTWxVOGlsUy8vQjBDRUlCQUxRSVNsaTVUMk5oOW5OVlYvN0tYdXhUM09jMzlyQW1pZTZ5TFZaZFQvN1l1QVVhL3J0eUpsS1pkMWhLbEpmUjdVOUxtRWhaZzNWaC9wWE1lVXQ4bm5xZ2RKZG1RVll2V01sWCszYjNrcnkwN1ltcmM3ZC9QNS9icnBUd1hhRzRITmtMRkIzTWJxMVJ2enRoVnFXeHhtcExpVDc3V0pRTHdUZkVGWm5iUGdwaWRNVXN5dGI4RkVVd1dUNjlveEorTGU0QjBRMnI0RW55MEwvMmZjTWxzWHVUaWUvYWJVbnhhaVd2aXNjYjdLMmI5VmVsV1dGMHpwWUpOcVFBV1NnZ1RjcE12RmNCaXo3c2xZSmZ5WEdLTTlMa0RCQkRBZG1BUk56cUZwUVd3RnB0U2M3K3ErYnAyN2dUSHJjZWoyT2cyWWRnUWdNQ0NCR3FMUHFtcHhHS1IzSzFKZFBLOFZBT0J2NGZpYmIzVXZYRG1ORnViUlU0TXNORExUTTU0bDZwVFlsVzMxQmhqL1Vwa2xaRGhLMGU1VUFxS1V6Tm5XWk1BRnN2Z0tDWkR6MHF5ekg5MVFQaFJ1NG9uSm12OHRjWERrdFhYRXp3Sk50cjlJZEZLWXNXbjNIK0lDV0JLcUtHU09wZStvUkdaOVhIaUczTnV3b3krOXByMWw1Q1VDalpyRThCaXo3dU1KYTllcFpSbjlRSFE0TjRnZ0FDMk45WjVqYk5jaXdBbU5zcFVvNWd6SVZQK2x0OXJtc09kckJQSVJMakdIY1dZSUFDQjJnUnFpejZwOFlWaWtZdzlGSWRTdkpka3VLck5BZ0VzdFJ2bS8zdE1nTlZvYm1ObXltSTNkMW1MQUNZK3ozQ3VmRDRHWTZ6bDlUN3lJRE03TEFKWE1jSCt4TXkrUFBjQ2VQclRlSzl0WnM4UFdIM3BrbmMxWTVVbzFCWHRjZ1F3WFh2QkpwSFRTeHJoN3pxQnVjcWxVdTY0Y25kZGcxdmtlVjNteDFJcjR4VXM1YWdobFA0MnJVa0FTejN2Um9FWmVIRXB6NEhkY05sZUo0QUF0dGQzd0hMelg1TUFKZ3FwT0JRdEtibUJITGtjTm5xR0FBUWdNQnVCMnFKUGJPREt2UGZjd012MVdLdWlVcmNRM3pocnMwQUFtMjBiWjNjVUN3YjlSZWYrK0ozczF1cFZYSU1BbGdwWVh5TmVxbUswUHRqTUpFeUhTdCtpcWg3bC9KWXViV1pQYzFrcVExY3BscGRpemZhdEJYTUZNTFVyZ1VLaW9KSTNoWXJhVjh3NmlXRTVMc3I1c3l5cnVWU015YkpSMXE5ZEt0aXNTUUJMQmIvUGNZZU9FUTN0aWJIdDFsOUZXdHh6QkJEQTl0eVNyMmJDYXhQQUJDWVZoMEoxOUFWUzV1azV3V1JYQTV1QlFBQUNFQmhBb0xib0V4dkNOVnltc3pONktpbm91SUpBRHkyaE9DcXl6bmhaWnFPMVdTQ0FaWUtmcVpyT3c3SnVVdXdxWDVFSUlhRmhpYkswQUpZU3Y4UkVMN3NTZk1iR3BsSmZUMitzcHVUeUhDb1NIV1NOOStZSy9aV3NwKzdaUnliR2xzcmFXQ0tBdFdOVDhnL0ZCZlBGRjJ2cnlBcE1ZMVAyeWJtRk1GbDlLYzZqTDVTSVBDWnF1NjJlMzVOaFV4eW02Q3UxUDJUMUtNK1F6NlFxdXIrdlJRRFRCeWNsSzVBTFpLaVVXRWo3MnRCOXJOL3Vma0VBeTl3c1ZKdU9BQUxZZEd4cE9VNWdqUUtZUnB3VHcyQXZQTHg5bVdmMGhWZVptSEFCTmRPWGFnVjgxVC9iRXNyS3M5ZWVCZjI5YzBwekNQcSttZW1mYXl5K3ZjNWE3bHVwMnFKUGFQMFZWMGd2c3hMQit1V2I3cjkvZGNUbUNSM0VsUm52N1pudDFtYUJBSllKZnFacXYrN2lUUDJhcHorOTVHcHZmbmFtc1F6dFJwa0UvNkd4R09xZjdiOW1aZ2VZMllrREdrNjVQYXJKMHFEM3FXSGtDRzVxNHhIT1pYTHFNNGwrNjJYUkpYSDBkSkhCS3phWEVrbkVCSjhoQXBpNlBGc2oraWhiMzcwUzhNUkNId3NrUmc1Wjc5VGE5UCt1dFpJYnFDL3pwY1RRVzVqWjYwc2JUZFFQUFl0TFlqcFdIbEoyYzJzUndDN3JubmZLTUJzcVkzbUcxdWtCelg0K1BKc1lGU0V3QVFFRXNBbWcwbVFXZ2JVS1lEcnNLUkRyVFNPekdPSUtvWHRObVpOODFnM3FLcFk1U3lMTFZjenNMazMySDMwSnZMQTdoRW1RMHNGVzdrSEthUG1WTFBMN1Y5SzQ5Q0ltcTdZYk5SWVlWM2Z0eDVyU0FVdlppblRvZll1WjFYWUpTV1UreTAzVDNwM0RHUDVxUjJPU2hlQ2RIU2ZGdS9BVnNYbVBpOTJodzNEdEw3RTZyR2lQK3NwUW9Xa3NiNGtYT3RUckFIek53SmRaalZkV2t4SWJkRmorOEVLQ21QYUIzSjBWY1BrZ00vdmR5SGkxbHU5Mlg5NFZJOUMzbGo0aHRMczJjay9SeS9OV1MyM1J4OGNoOWJMN09HZlpNTlN5UkRFZWRVL3FPZGN0ZW81STFQaW56TVdwelNKSEFMdW9tZDB2Y3M5bkRqMjdtdTRIdVl2Mmk2eGE5S3pQRVJvVUJGMldWQ2RuOTdxT2loSVdORzVmVWR3dmhUOFlrb0YwenRrOTFJa2svVDZIQ21BSzhDNjNaSDBZREJYRnVkTHo5RWVWSjVwakNhWXUxYjkrZTZZSUNLOTdWREcyWkkwV0U3NWtmYVU2T2p1bVB2UU1GY0EwMTV5NFk5MWxlRWZ6a2U0dkovNjlWWUIvblhWOGZQVE1VT0tDbWtranRDZmZHSWlOTmxhd3FieUZ2YzJ0UVFEVFB0STdnL1oyck9qY28zdDc2TE04OUpzWnltQTVCMy82Z01BdkNTQ0FzUkdXSXJCV0FVdzhZcTQ0TGEvU1lMaXArZnBpM0pRY2RrcC9VQzdVZkIyOHF4UFZ6ak55RTN5b2Vjbi9jelA3U0NWM2hGVG1zeUVXZUVQNEM0dkVwanVabVY3QzlRVzJwT2hsOFcvY0FiUldrTnFZSzh6UWw1eWh2QldrVjRkcjM1ZmZGQ2VOVmJGTlhwZnh3cEJxSytmdkVxcDBrSk5KZjh5TkpOU1cxbEo3UUhGZnVtc1pFekhVMWhZTzVERit0VVdmZmwrcHdOZXlZSkNvcXFEWHJZajliMmIyMDV4RmQ0R2tYeDZ3TFB1OCs2QWdjU2VuMUdhUkk0RGxqS3RtblZETWxyRXgyR3FPY1lxMkpPSXJ3Nk0rTlBXTGhGZFpDa3BNV0hPUkphdWVweHBydnd6NWJkQUhPMlhEdkg1azBrTXpQdVp5bEFpbURJdXlHSWtWUFpQbGh2YldDbWNRUFdkK3l6M3ZiNVl4MEJ5cnIyNHpZd1N3dGgyZFMrUmFwdDhrTVVxVms4enN5ZTVqanF5eGF4V2RBZDdaSklhNGxLZEJmZFNWUmFLeWQ5WXNzYlBjRm41djF5Q0F4YXhkdTJzMTVya2ZXNmZTOTVXYSs0ZTJJUEJMQWdoZ2JJU2xDS1FFaVNFSHRscHp5Y21NVXZwbEpEWGYvZzlON3NHdm5YUHVEMHBPOE5haEhKL3RBdGlPdFhvYUtzakV4bDNLWDIxZHliMEFEQkZNdW1QNUZ4ZXY1S05Ed1hhdVc0TUFKakZKcmlBNlVPY2N2bVBUVm1aVmZUbVhhKzFVcGRZNmFuejl0VVFBRzc1cU9uL2N3YjJVaGF3ckhtaG1UM0ZkcUw0U2tCenMvbitKWS9xZCtMVDcvei9WaWMwb0M4MGJPRXZlVU51eTlybFB3ZkFSd1BLRnh3S3NxNmg2UTVjSjJuY21scldxOWxKdEM2ZmFFdzlsT2xVL3BlY3BXVTMrdlpuRk12cE5MWDYxZlBRYjh6RG5ncGhpSmdGRXd0Q1FEMDdxNXlaT2NQTUpPdjIrOVZzZ3EveGpDa1czR2dKWU94WUpVSEx2emhIcTJtdDBEcEY3cEZ4bHgreHB4WkRTTXpRVXEwMGYvMlM5T3RSeU43VFdDR0Q3eUlUTy9Ea0pYeFRMVUM2OXFTS3ZrdDhmNk9VUldxZlNwQUdwTWZKM0NBd2lnQUEyQ0JzWFZTQ1FFaVJLRDJ3VmhyUmZFd29NcWErZm9hSVhkcmtMZmlHejQ5Ujh1d0pZeWlYSTEyVktBRlBRVUFsVUpRZWx6S250VjAxZisyVHlQaWJvNmRJQ21KNkxjbmRSTU5teEFrOExSMjV3Y3JrN2VnalV6alZMQzJCeVAxQjhrU0ZXWDZHcDE5Z3p2cmExZHZyYUtpdTFta1hXWUhvK0tLNEpBdGd3c2pscjQzT3RDcmw0bFk1QzFna0hOc0xHQndzdVJBRGJUUUZNei9zWFI1NXBZeE13Rkd5eFVWVjFCcEJybUsrVW5LY1VEdUZWZ1lEbWJkdHpaMkxVR3VtamkwU1ZtQ3VpeGxmaWpxaDJMK25pZGtuTUNvVVg2REtWTzUvRUEvME9Ebkh0cXltQXRlUFNoODJYdUk5Mkpadm9ZODdGZFVnb0MxbFV5K1hUdHg0S0UzSzlpZHhTRWNEMnJmQlFBVXplSHdydElKRTdWUlIvVTdFRGg3Z1huNit4SHYxQVl3VXZZYjViRU1CUzFQbjdMQVFRd0diQlRDY2VBaWxCcU9UQU5nVmdCY0o5djRzWEZHcS9KSU5ZYXI1ZEFVem0vckt1S1NrcEFTeVVCYTJrajl5NlkyT0NMQ21BeVhvdDk2Q2R5Nk90SnhGTWxnUnlGUjFhbGhUQTVDWWtVVkJCYld1WHNYdW1QeDY5eUR6VnVmbldIcXZhVS93OUNiMDY0TWtGV0hINWZHVUxMaGt4UHJWRkgvVWxNZjU1N2dBZjZqdDByeWhPb2F4dnh4YkZOWkt3VVJMVHFUWUxYQ0RIcm1LZDYyUHVRRFVTTU5RWlpieVZsSWlYYzU3Sy9mQWpsMkhkaHhKUDVpNnkwSkxvY3VhTWp2WGhRMWtSZlVWQjdmVTdKamY4RWd0dmlWNnlSaHRpWWRhT1l3b0JURzFyL1JTK1F5TGhGVEw0OUt0OHkxblk2amZyUzRsNGY0cWpLZGRIaVlmOUlvc3ZoUWlSaURwRmlaMmxoNFRIbUdLTXNUYVhkb0VNdWJuTFRWWm52RzZjNGpGaWxhd1RkVGJxSnhYSmVSYk52U2IwdHdjSklJRHR3VVZmeVpSVGd0RFNEMG1aZHl2d3JiNXloVXFKQzAxcXZxMEFwb05GS0oxMGJPbldKSUJwbkdNQ1Z5OHBnRW1nQ24zVnJISHI2TkI0ODRJWVJ2MCtseExBbExIbldTNEpRQTBPdmphNjdtNWoraGhpUVRta3Z6YmR2VVRCdFFwZ09ueGVkY2prM0RWeUVmUmxabFJjTGNXK3lTMnltdE1IQlZrRlNIeUt4ZE5yeFVYRk0rcVh5N3VZTW1mTjdkaFRiNmpZaWdDMm14WmdzZUQzc3FxNTR3UnVYQ08yci9mU2M3dGtPTElFOHBYVWVlci9jeFpOaW5jWkswdUtYKzI0Rko5TDFyY3hOMFhmUGQ0bWE5RUh4bEtCU1B0QUdTZUhXTUwwZWFwdlpZcnNGbG1TNllQTjhSVTJoa0lVS0ZtU1hNZEw1OWwycjNXV2hlem5QT01SUnoyYnJ4TVlxMWpKbWk0blljYVE2WjdEdVc5ZTBYTXhBdGkrSkNaSyt0SVhpY1ZHdjlzaDZ5ODlCK1dsb0wzVExTV1prcnZYaGNaUkdudHp5QjdoR2dna0NTQ0FKUkZSWVNJQ0tVRW9kV0NiYUZqN05Ydi9UdndaWDM4NlpQMXhacWEvMUh3bGdNazlVVzZLY3E4cUxXTUZNRmxjeUgxQ1FXUmxvYVRNanQzTUx4SVZsSkZNOFI3dW51RXFNT2JMMFZJQ21BTDV5N3FrbnkxT2E2SDRRbnB4MStHaEc0QmI1dVFTU2YvL1JpREtUU1lnOTByRk1ocFNsaExBWkFseGhHZkFFaXRlNitienlVNUFleDNDZjhkbEQ5T1g5cFRiaXBydUJqd2Z3a2JYcElLcTk5dlZpNGUrZUd2dmY2WVhrTDlkVzFsNlhpQXdJTVdCMFg0SldTUXNiUUUycCtWbmJNMzBQTkJCV2kvWXNZeHkyay8zZFdLckwzWk02a1UvdFcvMGNxYUQvcEE0aFFoZ3V5ZUE3VUx3ZSsxNUJSdFhUS2ZRbVQ3blBLVTJGSk5SbVlaOVJXNlBPcHQ4TlhXVFRmajNObHUyUkJCbG9kYkhwSDdweHliN2JWZFhXWnhMaTU0WHlwYTM1SnhMeDl6VzExN1FuR1VKcHc4UEpTWDBNU3IxKzZxWVVSTEdhZ2g1b2ZIR0xHY1J3T0lDbUN6amZiRy9KSFRxOS9rNW5pUWFPdlBMWXJ1MGhKNUpZd0xybDQ2QitoQUlFa0FBWTNNc1JTQWxDT1VjMktZZWU0MURaVHZHMUh6MW82QnNSMi9xbVNEcmVva3Z5bDRuOGFYTjROTUtVanJZeUtSWkwzVnZqZ0R4dlFqclpWTkN6R0V1bGxsdXNGSlpiOGo2N2ZhSkJaREZrTnlNY3R0dG0xdENBRk9nWXdXRTdXZThraUFtSWZTZkUzT1Y0S09BM2hMSlVuSER4Z1JWWGtJQTAwdUFMT082d3FEMmpsNE05TlU2NVE2U3UxK0UrREhOLzFHQTFxRWxscEs5MjZhZUw3cHY5Q1U3OWFWYWE2dTRPRG9jbHJqTHFEOEVzSDNVVzBGYzJSeEQxZ01wOFV2dHhETGRoZmFNeEgyNTQyaXZwdTdqMkw1REFOczlBV3dYZ3Q5cnp5b1F1bjVyUXlYM1BCVnlNWlN3Y1ZNWE4waG5sS1ZLUDFacVA4YWp6M1Y2aUVXd1lyd3FVTHllVjd0UTlQRlNXVEovTStQalpjeEtYY2xGOU1ITFp4VWNzOXl0eVJBQmJCL04waGhnY28yVnlPVnpXMjNqSFBwKzQvVHVJYmZmMGlKeDJtZkZ2ZlNacUhRZTFOOVJBZ2hnTzdxd0c1aFdTaERLUGJCTk9WV1oycit2T1Z3cUhiaXZsRmc1cGVhclFPQW45S3dqMUw1aUtVallpb2xJK3Fvamw4MmZSR0QwQlRERnNwRFFNRFFsZHM2aGNtajhsQ1VFc0Q0NkhlWWtmSW5US1FXYlRCbHpaRVVYK29xdXByU1dPb2k4bzZEZHR1b1NBbGgvbUxJRWtOVmJTVlpMaVVnUGRrSnViTm9Lbml2WEMxa2dsaFlkemlVU3h6S1hxYzJobWNKMG56M2VaYmJLSGR2U2g3MDFXWUJkMDh3Kzd0YW43K2FkKzZ6cmM5ZHpTTTlubjRXaDdtRzl5S1lFenR5MVhKc0FwdjJvM3djSkUvb1kwYlZNeloxVHYxNG9Qc3d1ZnJYWGI2YXNXa01XMTFzSmZwOWpGZGs5VHlrcjdwMWQvQ3RmRnNCK2NIUEYrcEoxdXR6L2xuNmU5UGVoM21IMG9WS3VYZUlnNjNSOWhPb1hXZnJwSE9VVGJ0cTZzZ2JXeTc3T0xVcUtzR3RGdjBWeXZaU2IyOE1ESDNOeTRwVHFtYXZzanZwZzIzM3V5aUpQOFZOclBXOUQvQkhBOXBFcEZjQmtIYWVZbC8zNHd0MHpseS9Kak80dFdXMlhmc2dPL1pZTUZkUjI3WDVrUGdzVFFBQmJlQUgyY1BjcFFXZ05BbGdxdzV0K1RLN3RSTExVVXFibSsxMW5PU1RUZnBYYVdaYmFnNnRFQzJYd2t4LysySklqT09nRlRiSFVTc3JTQXBoZW5BODFNNzN3bHY3b2E1Nng3RWd0aDZIV2NVc0xZSzBsUUc3MjArNjY1NGltUThWQi9aYkpJazBIKzFoUlhKU0hqRGlrNXdwNTdSZ1F3UGFSNkg4czZONGp5c1I0OE1SdU15WFBuMURkdFFoZ3VvK1VnRUVXYmEzYjlSaTM2dTU4OTVJQWRsa1hUODczc1dMb3g1c2ErNnkwalpTbHV0clRlVW9DOUswNndrVW9FVVRYelUxdWxmb05sNUNzc2pZQnJHV2x4QnF5aHRkWkl5VEF5QjN3S00vSEtibXg2N2REN3A4U3daYWVZK242NTlidi9oWnBqZldCVnpFZUpaNjMyUzhsZ0R3eDg5d2pJVlVXUGdvVm9IT2xFaU1NL2FDYU93ZlZVMVpCeFpQVW12ZExTV0txa2o1cjFsMHlDTDRzUlJYalZoOU4ydElWK21VbDJBL1BJU01BZmJDTmZXRDM4UW45WGc1MXFheTVCclFGZ1dDOEFOQkFZR29DS1VGb0RRS1lBaTNMQmU3cUVSaXAyRnZ0cGFuNWRydkkrUXBYdWo3NkFWUFFVSm4xRDBuZEhlb3ZGa0JZMTVRa0NtajdXRm9BS3prRStyaklza0F2RnhMUlFrVmYxZVZ1K2NQQ2hWeFNBSk9JSVZkQXVYQU9MVGtwdUlkOElZeGxjbXZIV2lzNGI0NlExL2FKQUxhUFJGOEFFOE9uT2F0WFBTTnFQcE9HN3MzVWRhRjdUMVp0bjBoZDdQbjdXVndtdW03V3JiYWE3M2RGNHF1RUw3bXk5T01OS29hTDdrMTlTQmxUOXBJQUpndG9YendjOFJ2NmdXSU0reUhYU3NqUS9TUExtMWpSL2ZkWkZ4T3FyUmR6V2RQOUtVSHBtTjY5dWJRNE5OWVNzYzJ3SFF2L3NQUWNoK3lEbkd0Q3YwVmFhNG1ERWxKbDhWNGlZaW5UbjVMQUtOdm1tT3pXT2VOdjY4VE9oN25uOFpMK2F0ZGRVZ0JUdUJOWnlMY1cySDJMZTErV1pYME1PS0F3QVVUb2ZVY2ZPSFh1UGJvMlZOcURRQ2tCTE1CS2lWRy9Gb0dVSUxRR0FTdzFSckhJL2NITmFhdGxxeDlJQ1ZWRHJJOUM2Nk9YSngzNmFyYXB2bUpmNC9UM2trUUJPUWNjMVJrUzZEU1h2MXhSZFFEMnVZYVU3SDFsM3RNaHcvZHlxM2IwTlUzdUdQOVUwcWl6U2d2RlhodDZ6NlFFeDNhSVk0WEJ0cDNZaStmUVBaTnFzM1p3M25PWjJkc2JkMWQ5QlkrVnBRVXd4Y3hxclVvTHQ5cCsxUlZJV2xrZlcwdUI5bytLQnlNcmdsU3A3WTZZNm0rS3Y4ZkU1OXI5K1g1WFVtSkhEWmU5dlNLQW5jODluMzJaQkJWb1hXN1lza3hjZTFHV1YxbkRLSHQwVy9UQ3F2L2VMYnIvbE5TbW42eWo5R1BiMHVMUVdBRk16eTk5Q0pSZ0hVcUVzZlFjcDlwelMvOFcxWm9YQXRnK2trTmNJQ1dBcWJSQ2NQODN3NWRsV1IrbmxCbXlKT1JGeUh0R2xxUXlLQmppUVZCci85QU9CSDVKQUFHTWpiQVVnWlFnTWZSbHZ1WjhVbU9NL1FqMXg1SFRscTZaMDVTOEJxdFVVR29KRDRxTFZSTFRLU1hJVENXQURYVy84M0hNV2U5YzhiVGIvbElXWUdOaWMvWDVwTmEzOU42UHBVVnYrNjdsSXRhZGk0SzhTZ0NLL1k3dStrdkhyc3d2NTFtNHRBQ21NWGEvM3ZmSHJJRGRzZ0tUKy96UXNsY0VNTVg5ZWtVQWt0emtGUE5xQzFhSi9YbDgyMW10MzdFM056MVRaZTMySWsrOHZIN1d4Tmpla2JDbWp6dExsZSs1a0JNS1B6RlZRUUNiaW15ZGRtTXV2MFBPVkhWR2xkL0swaFpnR3FrKzRPa2p1ODdTWGF2aGtIQlY2bG9hT3VNcDlJckVOTjNIRkFnc1NnQUJiRkg4ZTdyemxFQlEraEk4QmN6VUdOVm43Zzl1VGx0cUx4VEVkWXI1MVdvemxvRktCL0tyTlhFbUpJVGxscFJBTXBVQU5pWTdvMjl1Q3BndXE2bFEwVmU0dzNPaHVIcExDV0Jqc3pOMnA1a1NyRXF0NDFJeGNHcTVoL1dYU29HVjliSjhsY2dhN29wQUZMb254OHhQc1pkMEw0ZVNqQlRlR29PcTY1NlhLSkJUMWlDQTZjeW0yRi8zRFF6NGNjNGRhYWlsNzE0UXdHUUZKR3RHWmJiMWxTRnhLM1AyVCswNnZua29aSU5jMGZxWmRIV2Uwb2NveGZocHJVQzY0Nm5sSGw1N2prdTBGeExBaHB3NzFqVCtNYy9xSmVZUjZqTW1VT2FleDVlY3p4b0VNTTFmb1RyNlFuTG9QYVUwbEVrb0E2U2VUNHIvS1d0VUNnUVdKWUFBdGlqK1BkMTVTaERhaXdMWWxnTHZkamR2NktWSmRVb3laYlp0TGlXQTFUN2dwcjRrSzdXMDRsMlZsQ1VFc0NGcm1KcFRiQjZsSnZjcG9iSDJ1dWJ1ZmRYYmxaZU9LUVN3VkpLUjFCNnE4ZmVTOVZtREFLWTV4NnpBVG5UQnptVU5OcVRzQlFFczVwNWUwOUoxQ1ArU2EzenprRXVUWXNzcGtIbTN0T2NwZlZ4NHZZdnYxZTlyaXRBTEpmTlpTMTBFc05PdWhENVNLR1NENG9VdFhSUjJRQm1sKzBWaWpwTGdLS25CMGtYdTB6clArOHBhQkxBUUk4VjA2OGV2TFExbEVqcVREWW52dXZSYTB2K09Fa0FBMjlHRjNjQzBFTUJPdTBqNkNpdlhoYUZmNzVkYWRsL21tSFlzUThTVEpRU3drb3lldVp4VDh5aDUrVzc3WEVJQUd4cXdQOFlwSnBycXV0d3Z1YW5ueUpEOWw3dStxcGV5UGh1eXhpWDl6MVVYQVd4ZlZ0aFEvTDNhNnhEYi95a3JNQVhKdjkvQTM1RmRGOEJTY2RScVdyclczaFBkOW56elVEd3ZpUlEzaVFoZ0VrZ3YwYmpLdnNmTUpFQjNTNDBrSi8wNVN6RDVEVGNtSlc1NHhBYXNQeERBVHJ0elUyZVpLZmY2RnR1T1BiOXJDR0N4ajRTaHRjcjlFSGgvTTFPMjdHNHBDWVFmQzRzaTZ5OEo4QlFJTEU0QUFXenhKZGl6QTBpOXVLN0JSWnJuZGdBQUlBQkpSRUZVQWt5QmNqL2dBcjM3RnFva28wbHF2bXAvUyttQkZWUmZjUVF1N2RKZis3N0lhVTVEQklqVVlTdjNoN3k3WmluK1ExdzFVemV2TWlSOXlCT1F1TDF1aURpeWhBQ21WT2VLTlZNejdrcklSTDVsa3l1QXBaSXdUQ0hlZGRkZHFlU1ZKanpreGpka2pWUDdxc2JmMjVjOEJjZldTN0grcWFJdnRNcGcyaThJWUdFQmJNanpTSHhqRm5DcC9SK3pBbXVGRUdYOUt5MjdMb0RGc3NXTzRWYktlV3g5M3p6YTJHVktTaEd5QU5POXJuSXJGd090L3c0Z0N6aGxmL3pHeUFIZXRja21LR3MwN2RPMkRQMk4xVyszc3RCOXNqQkQ0ZEFwSUlEbFAvK0hNdDcxNjZZV3dHTG42ckVDbU8ralhzbTdUdWpjV3hyYVl0ZjNDUE5ibUFBQzJNSUxzSWU3VHdrU2F4REFVZ0pHaWJpVG11OFVGa2hqdDVlKzN1ckZYaS81RXJyMHc2ci82UXV5M0N4eVNnbWp0cjBsQkxBcGduT21YTHlHaUNOTENHQ2w4Ujl5OWtYS1BUUWxBTFI5S0tQUU1TNmVoYTlmeFhlNlU4NkFCdGFaWW8wSERxWG9zdEtYUEFTd2RRbGdLVXNtN1h0OVVDa1ZyWGRkQUx0WDgrRkd6ek5mZVdYalBxVmtHYVhNaW02OFNwVjk2OVJtZFBQOXJYK2UwbS83ODgzc0VNOTRudVZpekoweVlxeWhmZlRIWnZhbXduYTd6L2h2TmVlUEl4dGg3VFV1Zy9KL0ZMYVZVNzMwMlpqVDVweDFRdU1mY3Q3SVBaUE5PYjh0OUxWbEFTejBVVEgzUTAvSUtuNktNL1lXOWdKalhDa0JCTENWTHN3ZUdGWktFRnFEQUtaWUEwcTdyV0N6dmxKaUZweWE3OUN2b3pXMlN1dW1vT3dzQ3VpdC8wbjh5eFc1WW1QWWlnQTJOcjI2ajhFVTRzZ1NBbGp1d2Fka0w5WVN3RktXWkVNU0RaVE1ZNG8xTHVsL2FOMFEvNUFWNnB3Q21GNXE5VHlzV2VTV0lSZXNmaWw1S1F6ZGUwUHZqekVXWUpySFpjM3N2V2FtWkFMOU11UzVxeloyV1FDTEphMm9tUUc0NXI3MXRTWEw5R1BON0ZLZFAzYXQxM0lFTUYzcWM0V1V4ZXhCalRCMmZLZHRXWHZMalZGaTJTVmRmS0FmSmlZWitqQXhKQVpRYUUvK1c3UC9yOU5ZckwyL01uQUVzTk1DVFgyVXJMd0VtMit1cGdCVzZqSTUxZ0lzOUs2U0c4QStGUDlycXlGZU5yOFptWUNmQUFJWU8yTXBBaWxCYUEwQ1dPcmxXcTVQTnpZem1mYW1TbXEreXBLb0xFM2ZTVFZVNmU4U3Q1VHFYZG5FcmxpcFRWOHpRMTdFVW9ldElTK2NLZjRJWUdabkR1eURJYnhUVzZxV0FGWXJsbGhxdktHLzc1b0FGanE0enltQWxZaFN1ZXRXWS94ckU4QlNWbUJETEpwMldRQ0x4ZXVyblFFNGQxOE9xZWV6WXV1K25PWUtZT3BiZ3ZkejNDRDBncXEyZitiKy8ydWIyVDFkUE1ZMitIbXVwZnF2T1dIcUlyMEpsdjdPS2xPZDlyRmlCL1hMVkFrTEVNQVF3SWJjbDkxcnBoYkFZaC9NeHdwZ21vY3ZzM3ZPUi9yWU9mdDJqWUQrc3JGZ3VSNEN0UWdnZ05VaVNUdWxCRktDeEJvRU1OK1BRSGVlTHpjelBkUnpndGFuNWx0Nk1DemwzZFkvbXd0RUsrRnJqb3crQ0dCbUZ3NHMxcEFYZlN6QTlvY1p1MGRMczBrT3VhZTJLb0Q1QXQxcS9naGc0VjJ3TmdGTUk0MTlMUGozeGxMb1FETlRSckxjc3FzQ1dFb3NiTjBIY3prdFZjOW4vYVd4M01ZSlJmcjNFZ0ZNNTVJanpPd043cC9kczR6aVByN0NNOUVjSzY2UWNQVURNNU4xMkJjeUFZYUVORjArbFVWSlNBQ1RNS2p4cjcxb1RjL2hHZVNRODBiYnpFVmRZbzJRTjhSY1RCU2ZUbU1KbGU4MUgzVGZZbVpUdU1hV3pQSFpadmFwd0FXbEZsMGw5M1BzTjZIa1EyYm80My9LaFRsa2xUemtQYUNFTjNVaFVFd0FBYXdZR1JkVUlwQVNoSllXd0ZMakU0YVNvUFdwOXFZV3dIU3YzOUxGL1pBSU5sY1o4c09IQlZoNGRSREE5bWNUNHpGazc1WGVGMXNWd0h5SDZsaWcyeG9XVkgyMklYWmpYdFJDNjFkai9Hc1V3Q1EwU01DUVdPRXJpcFdrTEwyNUw0UzdLb0RGZ3QrWGlqS2x6NGlhOVgzV1h5ZVkyZFhNVENFWlZFcGZtTFdIZkhIUFFyR0FjcTNsRkFqZmwxQ2pKQk5jekdvdjlUSStsSHZLT25sb3UwdGZOOFZ6ZGM0NVNkVDdoNFRId2hZU1daUUtZTDdmbmRqN1VRMExzRkJ5SDhVSDFNZUMwRWYvVUl6RnFkOXY1dHlIOUxVakJCREFkbVFoTnppTmxDQzB0QUNXRW1GeVhRSGFwVW5OZDhvZkNGbDZQYXo1MFhwVXBYMmkrQjlhSHgyRVArTGlnMnc5QytRVS9LY1FSeERBRU1CcTNNWVBiU3hBRmF1alc0WmtsaHJ6VW9VQXRpOUxyTTlDTkRjSmhOYnZHbzFWemRGTkJzOHplamFHck1Ba0lpaFdXRTdaVlFGc0Y0TGZYOGpNM3UxaWQzWFhzdjlTV2lxQWhmWkZ5SW9yMTdJd0ZBZXNKS2xLS0o1UVgvVEwyZHU1ZFJEQWNrbk5XeStWOEtZZHplT2FyTWFQelBUTW1IY0crM3FySVlERnpxczFCTERRKzByTTdWaldnYklrdllFSDZtT2EvL2JvSldEVEp3UkNCQkRBMkJ0TEVVZ0pRa3NMWUtuWVFnb1dlLzBtaGxZcUdHekxOelhmS1FRWTlhMTcvRUZOSVAvRENoZjZwR1orSHpDekx6VnVVWjh3czgrYW1WS282MnQ1Lyt0UDdNQTR4QW9uSlQ2V21ISXZ5UjhCTEx6cFVpOFp1UUlBRm1DRk43YXI3dU1XUzFNZXVpY1ZMUHVkbVVNNHptWGdPOW5WUndDckk0REZYanlFdWlRVzJDNEtZTHNRL0Y2LzQ0OXRMTFVlM3J2WGZHSlVMUUZNWFlXc3VISitnK1d1cVRPRUxNbTZKVGQyYXV6TVZMS25NeDlQLzEwdDlkdFUydDVhNm8vNVdMSDBIRkl1ek4zeHlSSlNId1crdXZTZ0EvMlhDR0NoZTJCcUFVeERsMkRWLzJnZVN4WnlWWmVjby84aEpsY3dYK2x5TWF4ZEpZQUF0cXNydS81NXBRU2hKUVd3Y3pXWkVOOXVac29DR1NvNWNUQzYxNmJtTzVVQUpuZURWemVINTlNbHRvUUVyNzl0RHFzNkpFbjB5bldaVWJNSVlINjRDR0RoVFpkNnlVQUFtKzRacnQvOUk1djcvT0JlRjBQY0trcEcyWC9HSVlEVkVjQzBCamMwTXdWQzk1M3BTbDVBZGxFQWk3SEpkZWNyMmVkVDFMMk1lN2s4ZDYveG8xd3lHOFU3YkV0TkFTd2tmUHY2N2M5N2JCeXdrQnVXK3VuR1BLdk5PL1hiVkx1L3VkcmJzZ0FXMnY4aGRtdTJPQ29Sd0VKdW43RzFyR0VCSnE0aGk3dVErT3dUek5UT1ZwNnhjOTJIOUxNU0FnaGdLMW1JUFRpTWxDQzBwQUNtd1BhS3F4SXFKUzhVYlJ1cCtVNGhnSjNYdVV6bzhCQXFQM2F4ekNTU25USndIeUtBK2NFaGdJVTNWT29sQXdGczRNMlljVm5vV1JUTFJKdXl5c3pvMWhEQTlxY1VlejdrN3YrMnhaaVZrK3JrV3N6c21nQ1dpcEcyaGVEM0NtR2c3R2tIOVc2eWtEVkdUUUVzdEs5eTQ2YjVYSzAxalp3NFlJcGRKNkcrWDZhMjhBbjlOaW5wa1Z5ODFsNzA0ZFlYa21LckFwamVVNS9xTXBiMzJTdm0xNCthajdmOWJLUHlWcmhtazZUcXl5dGNyQklCN0lMTnh3MjV5U3NaUkxmRTNJaHJDV0FoOGMwWFp5M2tucTB4NTFpTHJuQ1pHTkt1RTBBQTIvVVZYdS84VW9MUVVnSllqbWlVOC9XelR6NDEzeWtFc0c2S2M5OU9rRXZTalNzY0VoREFFTUJLbnpTMUJMQVhtdG1oa2M1TGhZVFNlY1NzRk5UV0dsODZRZ2ZiSVc0Vkpid1F3UGFuVlZNQVU4dWhPRmY2eUtFWWtNL0xzT3pkTlFFc2xKVk12S1lXVWtydWpWaGRQY01rdlBTdHVFT1dGVFVGTUkwckZJZExId29sek1YS2paeGxZcjlPS2c2WTNrMWViR2FIZUJwL25VdjY0QXZjWDRONTZMZHBLeS95b2ZHdjhiY29aNzFpMWwrS2Z5YzNXOTgrVkFJR0NkeFQ3Wk9jc2Z2cWxBaGdROFNzSWRlRTVoS3k2dXBiMklWK2U3YVFsR0RvT25MZHhna2dnRzE4QVRjOC9KUWd0SVFBcHZ0Qmh4eTVONFpLekFjK3RoeXArZFlXd0ZKeFlVcURJOGZtRm9vVG9tdUlBZVlQY2oxVUhDRUkvdjQ3TVJXcjd3Rm1kdmlFejhsVVlONDF2blNFaEpmWWl5VVdZR1pyekFMWjNkcUt1WFJzWSsxMUtmY2ZKWHpkejh4ZTBRUmU3cnJJeFc2SFhSUEFRaTl3WXBES2FEYmhZNk9vNlpDSTkyY0JDNm5hQWxnb0UyT09WV0hvQThHN3pFeFpISDhXSUNGWFQ1MkpMdTM1ZTQ3d1ZnUzRWeGtCYkF5OXV0ZUdyQi9WUyt1Sm9aQWR2cEFsLytsY3czTmpWTllkZWJpMUVnRXN0QmRqSC9acUNtQ2h1RjdkWVBneG80R2NaOFJjM09rSEF2c1JRQUJqUXl4RklDVUlMU0dBeGJKcHRaemVZbWEzTEhpaGFLOUx6YmUyQUpheVRLbjVGVFVtUWlDQUlZRDVuakcxTE1CdWJtYmF5Nkh5a2laajZSMG56QWdWRTMrSGlweFRQNU5EQitRWG1kbWRBcDBqZ0sxZkFOUFNTZkNSNktWZzZiS096QlcrMm1YZkpRR3NMd2gydC9hUU1BWlQzNWVoOW4xdW5COXRZdXZJdXVyN25vdHFDMkJ5djNxL3g4MHNKeE5qeU5yMDIwM3lqS3VabWR5dWZTWDBZU0YxWFkwMVFnQ3JRYkZPRzdFWXR0MnplTWpiNFhObTlnZG05dDA2dzZuU1Nva0E1bk1oMWpQOVdtYW1aNEN2MUJUQVloL1M3MjVtc3JJTFdYK3RWWUNzc29nMHNuMENDR0RiWDhPdHppQWxDTTB0Z0NtR2dMNFVYVElDZEl6VlZHcSt0UVd3a090Qk96MGRHT1FTTTdhRUFtcTM3U0tBSVlENTlsZ3RBVXp4VG5UdjZLRG1LNTkzaDhYdmpkM29udXRqYmpwdDlUVmFnSVdlRFRFWG45Q2hlc3o4Q0lKZkx3aCt1OS9PNVA2bHpiUlp1dTEzU1FDN3RiTis4ekVZRXNhZ2xHWE4rdjI1aEt5LzFHZHRBU3dVekY3VzhNcUVmWFJrb3FIelFlcmEwRDZzK2VFdU5Hd0VzSm83ZDNoYnNUTjVYMXlKSmE1NmdabmRNOFA5ZS9oSXk2N01GY0JDOTUxY3R3OHdzOTh3cytzMFhldWpSemRwVlUwQlRETUxQVWNsTHQ3RnpGN2J2RXZvdDd4ZnR2YU1MVnRGYW0rZUFBTFk1cGR3c3hOSUNVSnpDbUE1NHBkQVA4N01Iam5RbWlRMTM5b0NXTXd5UlRFUnJtMW1Ta2MrdHNSY0ZkUTJBaGdDbUcrUDFSTEFRdFlKYlo5RFhaWno3b3RmYnc2ZzcvVUVxTzFlTzBZZ3lobkRrRHFoWjhQOVhiQmhYNXNJWU51d0FCdXlIN3JYN0lvQWxnb0JNR1VXd2JGcjRMdSthODJXT2l2VUZzQTBIajBibnVJWldFNDI3TkMxSWZkMGliZ1N1aFNmdEYrbWRuOVVmd2hnVSt6Z3NqYVZmRUY3UUFLUHI3ekd6SlFrb1N2ODNNb0ozcjczMnBoZ1hEYXk4YlZ6QmJEUTJWcEI4ZVh5K1NnWEYxRDM1VU02TEM3cXJJRDdId1VWUjFEWGxaYVlKYTJTWVp6VDArQ1U1NjdTOFZNZkFsNENDR0JzaktVSXBBU2h1UVF3dVFyS2xQcGlDUkI2MGRYQlNCbG5ocFRVZkZPSDJ0SSthN3NsaHZxUHBaalhOUWhnQ0dDK3ZWTkxBSXU5TExYOVRoV0hJbVQ2MzUzdkdnV3dwN3Znd1AxMWlibUxJSUFoZ04zVXpINWEra08wVVAxUTdCb05weHUvWnFIaEZYZXJzN29DeDh2dFNMKzVzYmhHVXdoZ0laZkVuSE5MS0lhWXNpcEswTkxMY3JlRXdqZk00ZjZvY1NDQUZXL1BxaGRvcnorb3NlbytMTkNxQXF2THJmR1R2YjlMOEZFMmN6Mm4ra1hYM01RRnpLODYyQWtiUzFtM2Q3dFdVSG9scStnS2dqV0hsblBXNmZZM05GUk16VEhURmdTaUJCREEyQ0JMRVVnSlFsTUxZTnI3K2tGVTlwaXpKU0RveC9NR3pSZkpqNHlBbFpwdnprR3lwUHM1QkxCVWlubU5Gd0VNQWN5M2Iyc0pZR283ZFRnYnNnZFQ5MW9zN1hmMzJyVUpZQ25Cc0kzcjBaLy9uQUtZWENydWsxcUF3ci8vdHN1azEvOHFYckkrYXcrQ1g0akVXMzBYTE1CYXNVaHVUNzdTejJCV2c5c2NiU2p3dGF4ZUpCckZYblNuRU1CQzFpaXlBSkU0OW9VSWdKQ2c5VEhuUXZuRDNyV2E0NUdlOXVad2YxUzNvZDhtQ1hheW9sbDdrWER5WU04Z1M1NTFTODB4Slg1cFhOcmZUd3A0WXZ5T21iM2J6TTd1bVVDTmMveWNYRklKZnZwamlYRVpPKzdjODQ3NkdSTXFadXc0dVI0QzJRUVF3TEpSVWJFeWdaUWdOS1VBSnNGTFgxTnZuekVuSFRUbEEvLzZqTHF4S3FuNXppbUFhWndLTGpwMlR0ZHJZaEc4dzVPZXZjdGhpUGlRQ3JnOUpCMzUzUHpGSUJUanFPVXo1RUJLRnNqVDNtV2hMR25kbXJLWVVNRDhHaFlzRW43MS9GQWN2VlFac3NhcE5zZjhQZVd5cktEVWNqczV2dGZKbkFMWW1QbVZYbHV5UGdoZ2RlNmYwalVxclI5elRkWkxzSkxkZkxhMDBSWFUxMitZQk94VVBNTXBCTEJRUENKaFVUYkhOMFg0aEFMaCs4U3oyRWUxT2R3Zk5ZM1V4NWtWYklWQlF5aDUxZzNxWU9SRmVoOVZnaWtKamFjTHRLWHNvVHE3eGp3eDVGcjc1TUQxK24yVGhWaE1zQjA1alNxWHAxeTRRNTFNS1lLRkVnMzB4L0kzemdXemI5bFpCUXlOUUtBV0FRU3dXaVJwcDVSQVNwQ1lRZ0JUb0V4OUZWYUdMS1ZYVGhVRjJ0UVBjaXpMWEtxTjl1K3ArZFlXd0VKZlVkdnhqRTBCbnhzM0RRRU1DekRmUFpKNnlZaWwrZTYzbDJPSnFHdHFIQTV6RHVuZDhhM3RwZVB5TG03WldTTVBMbC9RWUFRd1hDQzM0Z0lac3dpZHloMDY5eHd3UjcwcEJEQ05PeFE3VUI4RFloYWJNZkZNY2I2NmNZbENNUjBWK0Z2QzVWZG5BSmo2YlpwaENKTjBzYmJmb3U0a2MzNVhRNjZQZlZnNjI4dXo0NkFBeGErYm1jNFhuNXFFY3AxR1F5N2NTdXFqczd2dU9aOUlxSGVXUTIzZmIxVnRBU3FXYUtDZDlScXpidFpaRVZyWk9RSUlZRHUzcEp1WlVFb1FxaVdBNmNmd3l1NkFkb3VFdFZJWFhpM0xyNlVFc0ZETWpuWThFcVlVUitIREEzWk1La0JwdDBrRU1BU3dxUVV3dFo5ampUajJjSmh6U08vUGRXMHZIYktDU3duNlB1RWZBUXdCYkFzQ1dPeGNzVmNDTTA4bGdJWE9GQ0ZYeHU2elVQR0pIdXI1SVhpWW1TbVFmbHRDTVVYbkZDNFJ3QVljQ2tkY290OVZmWmlXNVZESThxdjBZM1RxQTYzRU5BbGtzUXltSTZZMDZ0S1lDL2RMek95T3pwcGQ4YzVDSWxpdEQvZDlrZktKQWZkYTFUdkZoWXFSbFI0RkFxc25nQUMyK2lYYTJRRk9JWUNwVGZuK1g5ck1ydVZNOHk4emdLQmNEUFNGNklNRHJnMWRrcHB2YlF1d1ZIWThqZk00Snh5Y1VEQlBaWmhSQnA0clpsNkRBSVlBTm9jQWx2cnEyeDJEc2ljcGhzalBNL2V3cXNrbFFZRjVGVCtvVy9SU0hmc2RYWnNBRmdxQTMwZlJqNWVDQUJZV3dIN1dmR0NSTzFkcGtXV01MMzI4MmlteGdDenROMVovNnpIQVlzSHY5YkZIc1R5SEpyS3B5WG5LdHFZU3dKUU43Z09laEVFL2NkWloveFNaVk1naVhkWXNzdGhUaWIzNHo1bTFFd0ZzeXQyNWY5djYzWDZDbWNsdE1mVmNDc1g5Q2wybkQ5OUhCZUtCNlJwOTVMNlRtUjB4Z2JYVUdJSjZaem5XekJTdW9IL1drTVdrd282a1lxWFZGdmhTL2JYanpIRlJIY09HYXlGUWpRQUNXRFdVTkZSSUlDVUlGVFpYcmJwRXI0TTlNWERHZHBDYWIyMEJMQlVJdUoyUHhEN05WMS9DWWliVFozR1o0eDdiY3gvVmx6bTVNQ2loZ0s4Z2dDR0ErZlpGNmlWamlBQVFPamo2K3BmN2d3N2R1dS8wNVRKVWRFRFgzbFpNa1l0N0tzbXlRU25XTHh4b1lFMENXT29aMUo5Q1Z5QkhBQXNMWUdOL0czelhEOW4vTmNheFpRRXM5WnMzSkhaa0RhWnp0ekdWQUJaelpVekY1MnF0eDc1clprcHk4ZVltbStXSGVqRVpRL0VKNTNSLzFGcWxmcHZtWHM5YS9hM3B0MGh6T24vekFlQjVUdXlQemZHNXpvTmpTSVpEeFFzTFdVcTFmVDdiV1RYcFE4YlNSYyt3cDVyWmZUMEQ2V2V2MWRsRUF2S2RBNE91RmZULzlPNnNGTXJLMmUvK1JlNWRvZVFENDlMYzZYOFBFa0FBMjRPTHZwSXBsNzZNVFQxc0NUa3l4NWNaOWhRUDd0Ujhhd3RnNGhYN0d0N24rUy9OUy95TDNSZmVmM1ovMUpoLzN4MVEvaVJnYnExNFFmcktwa090cnlDQTFSVkhDSUlmZnhMa0hIaTdMZWlRK0RhWE9hcHJHWEplbDZGTVgxeEQ4UUtWNnZ2UDNiVmJFTUJDMmRoT2JOd3E1SEorRlEvYTk3bzRpTElvZlkrWm5ibFhaOHhMVlNoSnhKZzJRN3VqaG9BWHUvZHEvejRoZ0pVVDNkWGc5NlVrcGhMQU5JNlFRTnE2Wm9VK291a1plc2JHaWpZbU1seTNPVy84ZzhlaU50VjJLWjlVL1pBQXRoVUJOVFQrS1o2cktaYWh2OHREUTVaWHlpNFlLNzU0bENWOTVvWXRrTGgwcThhMThOTWxqVTlRVjNIdTlERmE5MHEvK1BaZktoekpFQytQYnIrNmIvVmVKS3Y1a3FJc3JncWF2d1pSc1dUYzFOMURCQkRBOXRCaXIyeXFLVUZvenVIcVM2UUNSeXJBNUZRbE5kOHBCTERZMTZRYTg5U2hRYkdYbEhvNmxBVUtBUXdCekxmWFVsL1pod29BK2xxcEZQRGR1REkxOW5xL2pmWmdxWlRmZW41c1FRQUx1U0VwSnRoZlI5eEZGT05IWDM4bEFDR0FUYkdiVHR2bTBQMC9kblJidGdEYjY4SHYyN1dmVWdEcmkxU3l5bEUyYVZueXlHMXJUT0R0a0h0MktzdmsyRDNmdng0QnJEYlJVOXNMaFJMdzlUakc4cXZibnM3QmQyakVObGttaFdLTXFmN1VIOEZUVkdOQjVtTldrT2QwSDZDdkhlaWcvWWoxN2RRQWVuK1gxNGZXUU5hZFE0ckViTGt1RHdrUE1LUS9yb0ZBRVFFRXNDSmNWSzVJSUNVSVZld3EySlRjb0dScXJCK0lNUWUzbkxHbTVqdUZBS1p4cGI0UTVZemRWNmViVGpvbVppQ0ExUlZIc0FCTDc5amN1Q0xwbHZ3MXVsOVZRMVpNN1pWcitlb2VjMS9TbDJVSllQcG5TRGdNeFRvYk16OHN3TUk3RUFHczdPN1U3NXdza1gxV2pIc2wrSDFMYkVvQjdHSm05bkxuT2k3THJDOGxYTWh6VnpIay90aDMrOHB0YjB3OUJMQXg5TUxYWHNuTVhoRUlKZEMvNmlsbTloQVhwNnZHYVBTdXF5Ull5ZzZaeWdBdmI0aTdOSEdFajVuaHZhQ2RXOHFkTVdWOXFJL1E3NDdFT3l1TnpaVVQ2MWZpOS9FTjAwdEdGbWd0bG5VMTloQnQ3QmdCQkxBZFc5QU5UU2NsQ0UwMUZYM2xrWG11TEJxK01PTVBYR3ErVXdsZzRuaEJNM3REUWVENkZQdXUrS1c2Q0dCK1lsT0lJd2hncWQyNTcrK3lCSk5GeU9FRm1WOXpXdFpCVWw5RTI2K3BVNnh4empoSzYrakY5ZjB1N2tyMzJsODBMN1A2Y3Z5K2dXTDVHQUZNYnFheVBsUEdybTZSTy9YOVN5ZVlxSyt2NUhJdjZiLzhmTDBnRXk0dWtHWS9yYnd1dFpvTFpROVUrM3NsK0gzTGNrb0JyTlo2OWRzSnVUOHF4dEc5Wnp5bmFWeFhNTE43ZUNhcU01VGluYTY5aE1hdiswQldVSE9Yc3pYUFhjWEtiSk1keFByWCtWelAvbWRXRWxaOSsweEpuSlFzSzFYbThBelJHRklCNWovbk1yWXJmbDZzcE1JLzVMaVRhaXk2RnlWeTk0UHdkL3R1czNMS1hWTy80ZGVKREV4QzJRTmR2TEpZdk5YVWV2QjNDRlFsZ0FCV0ZTZU5GUkJJQ1VJRlRTV3J5ZzlkOFhvVTQwcGZkWVlFMDB4MmtxaVFtdStVQXBpR3BrUElNOHpzOWlNbm9zT0RmUHU3WnMwSVlINm9VNGdqQ0dCbEc3amtxM09zWlQwekh1N3VvVzZNd0NuV3VHeUdlYlh2NnR3WityWGw5cTE0TEVxR29aSktIOSsvZm93QWxqZnk5ZFFLM1h1cHIvT2hHY1QyRGhaZytlc3U2MGJGRTdwMTRCSUpLSHFoM2l0bGF3SllLSG1CTFBldTcySWk3WlcxMjZWNXl0MVJvcGN5Sit2ZlUwWGVBbktaVTRLRUtUMHlGQXRUYnJ1WFNnM0kvZjJkVHNENXpFVGppZ2xYNGlBbXI4b1lhMHBJVXhONk5vU3lhV3FObE9SS1lsV3NhSjF1YVdadjdad1o5TzlLUWhRcituaDRTSk41OHhzWmM2RUtCQ1luZ0FBMk9XSTZDQkJJQ1VLbDRQUkZRc0djOVlWYVg3cjAxZVFqWmlZM1J3VzZYcnFrNWp1MUFLYjU2MzVYYXVpbk5hbVVEeWdFOGxIM3craHpGMFVBODhPY1FoeEJBQ3ZjdU00YVRJZE11ZmY1TWpuR1dwVFk5UnlYQlZMUGwzNUpyYkg2VkJEWkpZc090ckpldUlGbkVMNEEwNm4wOGQxbTlHRkJ3c05lQ0hhNzZ3Sll6RTEyanQrbm9mZklaVjBZQTU5Vng5d1pCSWZPb2VaMVd4UEF6dWZpaC9VRkNjVWVsQUQydzVwd2FHdHlBckt5bFVDaWJJYm55ZXhOcm5JM2QxNFptWmVNcWlhTFlGbEVxYy9jb2pPd1BuYWtNa2ZudHBjVG9EL0hhcXZiWDh5Vk11YU9lR25uSGlycndWalJoeklsQzVDN1piZm93MW1PQ0tZUGlZOXo3eUEvemdWRlBRaE1RUUFCYkFxcXRBbUI5UlBRb2ZPbTd1dVNmdnowSXQ4dEo3bU1PTEw0VXBZOHVRcFJJTEJsQXZxOTAwRk5RdEJCVFhwMDM3NlhrUE5sZDhCVCt2U1BKeXhHUTlrRlcwNURyWU5xY281bGx0TFg1VmQ2T2xNR1dTVzJpTGxCdEpmcDQ0UGNGdi9XdmNpZVhIUHdLMnByMXdVd2ZjRlhJSFBmbXNzbFJxNi9VMXBtREYzcVIwZXlsQzNoUWpkMEhyV3UyNW9BSm12SE4zb21MOHNoclMxbEd3VDBvVVcvSjA4c0VMNDBzMmU3eERWemYwUlJtSVI3dW85YnFiaGcvYlB4azUwNzZmY0hMazFPWVA2aEdSeDljWDk5bmhzYXV0Wk1jWkRsb2hwTEVLQzZLWkh5L00yWlNtY21uVGRTUmVLWExPcGYyRmlsZFMzcVU5Znhkd2hVSTRBQVZnMGxEVUVBQWhDQXdCNGpFSXBkMDJLUTVabmNMWllxTWZld2xIVk1xYXRJTzhjVFhFRHk5NWpaUHpYeGRCUzdSQzhLYTR2L0lZc2huMnVPTW52S3hic3Y5dXl5QUpiS0pMWUdTMGJmUFJTeUhsSmRyZU9CamVEOXdhVnV2b1g2SFNxQTZYNVB1VEZOTVNYRjIrcG5zTk96NHBFdXlINXBuN0pTVVV4RHhUZHNpeXp3ejFyYTBCNnUveFBuVFpHRFFPRTFGQlpEbHM3Njk5d2lFVVNaaVdVNXRLU3cvaHN1THJEQ0paUVd4UWxUbkZGOUpNNFY4Q1MyaWRXaklwM0phMFVmNnVURk1xUzBIek1raHZuaWIrbmRYL2ZjOHpPdDRuV0d1WE5HUmtmMUoxRkxDUWR5aXZhQXhEZkZwaHNxSnViMFF4MEluSVlBQWhpYkFnSVFnQUFFSURDTVFDaTJsbHJyQnBnZjF2cjRxMkxXWHo3M3gzNlB0V0lIK21ZaUs5TWExbUlTYjVTeXZWWUpXUTJ0V1FDVFc0bXljZjNJTVZVWWdIOXpRTDRXc2VDVk1DQnJTSWttc1pkWFdYOHBnOXJhaXR4dmxWbk9WNVFWOG1aNzBNSmdxQURtdTI1dDY1MHpIcCs3N3E3TUxXZitOZXFrTEpmMTdpakJWRnoxYkVoWkQvWEhGTEpJcWpIMklXMUlsUHB6SjhhVVdJTjErNUxMN25OZHZPSHZCQWFSNDNyWkJwaFhjUGt4UmJFOUpUQjlzdGVJa21JOTNUMGJjOXAvaEVzYWxoczdXZnkwTC80eXAzRlhaNm5rWkFWRHBPcXVFVUFBMjdVVlpUNFFnQUFFSURBWEFYM3RQRFRRbVRKRlhxMUpQS0dzcVVzVnVhUG9NTm92K3VKKzR5WVc0RHN5QmxiNnRUaWp5ZFZXaVZrTnJWa0Fpd214WTJHbkxBWEh0ai8wK2xoc083VVpjdThkMnQ5V3JrTUEyeGZlb1p1eEZBR3NiUGVHQkRCWitFaFVsdnRhYVR4TmplQmZ6T3d1TGhuVmtsWmZJUnFsNGxDb0hZVU1VWHd4aVdKdGtTQ2xaQjBYU2l4RkxGQjkyU3J1WDFzZk9DVHlhZTF5Ukw1UXZLK2NNZWpNY0pQL3g5NTVRRjJUVk9WNkw5S0ZRWElRSlFzb0dRTXc1Q2hSRkVVeUlseEpJamtxUVZRRVpJaVNCQVNVUzNESVNCeVNnT1NvQkFGUm9vSklHSkFrU0x6OUR0WFkwOU5kdTZxNnVrK2ZQayt0eFJyVy8zV2xwK3AwVjcyMWErOXdhSkpqRmFpeWRUQW15N1FuNDNvbEJUWFBsQkpBQUNzbFJ6NElRQUFDRURoa0FxY3pzOWMwSjc0WEg0R2dhemdTbVhTZFpGZnB2RTBJZFYxRjdQdjRrNFdRcmxqSVlpZzFsZnA0U1MxL0RjL0Z1TlFXd0hRRlV4dE5XUVgway96aUtJQkxhcnBjMkZUcXltdnR0RlkvV3ZKVEo1OWxKeHZvc1B6VjZQcmptQ1ZHYlVacktnOEJEQUZzNm56c0NtQVNTNjdaWEgrN2MzTzFWRmYrUzlKWUZPV1NzdWJPbzMzeFJjSlZ2cEpya1dwZjEzbDlhblJGNWJ1dm1UMnNzcnVBOXJ1dG9BU3BZcFNDNXVocXNnN3hwaVFKaXZwK3lNOWZUbEtreWF1RWdHWTUrWGdXQXNrRUVNQ1NVZkVnQkNBQUFRaEE0TWNFUFA5Zmp3dWJobDBpMHpkZUMxODV1dTJtT3pYT3poOWYyREE1RHo0eStESFJ4aWozK2t0aHRZdGtpMTM5a2FXZit0MVAyaXdjczBqcnhpdlJSa1ArYU01YXVSMnlYcnhxRTc3K1U1WExuVnFjNXJWK1gzSmlQWlFPMllFNkFoZ0MyTlRmVjE4QWs0Z2hIMUFsU1ZmdGRZM3VNeVdaZDVoSDN6bUpNTG91Mkk5UUdtdVdva1ZlcStNVzhURzhBQUFnQUVsRVFWVFRhc2dwL2RnN1MvNndVcThhZW1qVWZrVnNWTlQzMUdpY3VqSXBmMjV5WmwvTFoyZmJEb21DUjNpTkRuK2Z5d291c1hvZU93UUNDR0NITU1yMEVRSVFnQUFFYWhLUXBZMzhmWXhkZjFSZDF3MlJGR3ZXVzFMV2hSc1I0ODNOUWxnV1IwbzFyN1NkM014a2ZmU3I0Y3BEeWJXWWtqN05rVWVuemxjSWtUL25LSC9PTXVYTDYrV05GWml1MmRSS2NzUXMvMkN2cTFWZ3hYTE9IZWIwa09DbmRzdjMzVDlWckcrZmlrSUFRd0NiT2wvN0J3R3BJazYzWGtVUnZuZHpGZm1qVXh1ejQvd1NjUFJlbFRzQnp5SnN6SG05b2svTDJmOVlrQW45Wmg5WlVYUnFrVjB5QktScHYvMHhsRHJJa1pYZlhFSmw2dlZTZmNkdWVJQytHM2M4elErdmVnU3d3eHR6ZWd3QkNFQUFBdE1JeUJMbzlaRVRUVVZDbFA4dmlVMjdUbjFybVRtdFk3UlpPRU56Z256QllJMGtUaExKbEg3R3pCUnhxeVRKeWt6WE9PZTBOaHR5bmwzUzFsM2xHYnVpV2RJZVdUSEl1ZlcvbEdSZUlJK2l4ejFycEo3bk5MNkdidDZMQXJoQWsxWlRSYWtBdHBvT3pOQ1FYVVc0bktFcml4VDVvY1o2NkNPOW10cklnbWQwV3ZEYTRHdnF3NHUwZExsS1dzZi9DamdpUDJoRDZmYmhZR3pvYnhMQnhFYkJTdG9rYTY5YkI5OWdjL2xFVXlScVdYU05mVHVYOU1zbWhoTGxaTDA3SkNaK0xoeENmV3k1WWFXbVF5V0FBSGFvSTArL0lRQUJDRUNnaEVES2FmamEvQ2ExL3BMa1lGYldNWjhzNlRoNVZrMUFWMWZrUTZaTnNncVRuN3JVcEkyUXJCVGtmRmliMzdrMlpLbnRHWHN1NXZ3K0o3akQxSGFzTlQ4QzJGcEhadi9iRlJOVFpFRjBudzFZZktXTWtnNTVaUDE5ejg3MXdxN2ZyN0V5dWhaWmNwUXZuanBzbUROcG4zK3ZFTW14Vzg4dS9iTHBvRXlCS21UMTFyVWExOEhGMk1IR25Jd28rd0FKSUlBZDRLRFRaUWhBQUFJUUtDSWdoOENlUDVSWUpNR2lTaXRrVXJ1MXNIeFhXSFJXS0pJaUlMQVRBakhuOTdJNjBYVWxSVEE3MUlRQWRxZ2pQMysvKzJLS1JCVDVrbnk0bWNsNjU5Q1NoQnhaTzk4NFJDNlU1YmVYN2hHQ0NranNtZXBrM3F1ci9ic09RMTVrWmxjTC96RDNkY2ZVZHJWQ21LNlhmdERNWk5sYnl3ZGFhaHQ0N2tBSklJQWQ2TURUYlFoQUFBSWJJeUJucng4d3M2Tm44aDhoRWVuUG1xaU9Xc0RHMHRPQ0k5bnZyWXp2T1VMVXg1eklqeXZyQXMyQkFBUWNBbkxBM2IraTllWGd3MGcraWtnUW1FSkEzOEg3Qnl2aTV6ZldSZCtjVWhoNUZ5T2dLNnlQQ0dzWStRUmRrNFd2aERCZDBVVDhXbXc2VUJFQ0dITUFBaENBQUFTMlFLRDFnYVJJUm9xbUpDZjErdjgxa2h5NEtwcVZJdUxGa2l4UHJ0UTRENWNQRlJJRUlBQUJDRUFBQWhDQUFBUWdzQ0lDQ0dBckdneWFBZ0VJUUFBQ3hRVDZUc0IvWUdhdk1yT0hoS3QvSmFlTFp6Y3pSY1NTZjZVVUIrejRzQ2dlUGpKQ0FBSVFnQUFFSUFBQkNFQmdYZ0lJWVBQeXBYUUlRQUFDRUZpR1FDd0tuc1N3OTVqWkM0TVlwdERzWDJuRXJXOTNtaVkvR1FvWGZwSGdvK1A2alYrUG44NW9lb29UM0l6aWVCUUNFSUFBQkNBQUFRaEFBQUlRcUVrQUFhd21UY3FDQUFRZ0FJRmRFWWdKWUhPM1NYNi83alNUNzdHNTIwNzVFSUFBQkNBQUFRaEFBQUlRT0FnQ0NHQUhNY3gwRWdJUWdNRG1DZXhLQUh0MDQ3ejFmb2hmbTU5ZmRCQUNFSUFBQkNBQUFRaEFZTThKSUlEdCtRRFNmQWhBQUFJUU9JN0EwZ0tZSE96ZnRnbUQvcnlWUlZSaU9rQUFBaENBQUFRZ0FBRUlRQUFDQXdRUXdKZ1dFSUFBQkNDd0JRSy9ibWFQTWJOenpOd1orUk43UWdnRlh5dks1TXhOcG5nSVFBQUNFSUFBQkNBQUFRaEFBQUdNT1FBQkNFQUFBbHNoY0dJek83SnhjSDhYTTVNVCs1VElqYWw5LzZLWlBjTE01Ty9yMk5STVBBY0JDRUFBQWhDQUFBUWdBQUVJcklNQUF0ZzZ4b0ZXUUFBQ0VJQkFYUUluTmJPZk5iTWJtdGsxek96Q1puYktqQ29VSmZJZnpPejVadlpxTS9zMFZ4MHo2UEVvQkNBQUFRaEFBQUlRZ0FBRVZrWUFBV3hsQTBKeklBQUJDRUJnTmdJU3hVNXZadnJ2QmMzczFKMmF2bVJtSHpXejd3Y0xMLzJYQkFFSVFBQUNFSUFBQkNBQUFRaHNoQUFDMkVZR2ttNUFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJREJOQUFHTm1RQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0d5YUFBTFlwb2VYemtFQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRZ2dnREVISUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJEWk5BQUZzMDhOTDV5QUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFRd0pnREVJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBcHNtZ0FDMjZlR2xjeENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJSVlNd0JDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ1UwVFFBRGI5UERTT1FoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUVNT1lBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQXdLWUpJSUJ0ZW5qcEhBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFDR0hNQUFoQ0FBQVFnQUFFSVFBQUNFSURBN2dpYzFzeE9ZV2JmTWJNdm05a1BkOWNVYXA2WndPK2IyVU5INnZodk03dUNtYjEzNWpaUVBBUU9sZ0FDMk1FT1BSMkhBQVFnQUFFSVFBQUNFSUFBQkhaSTRCSm05Z3d6TzMrbkRmOW1acjlyWnE5Q0NOdmh5TXhYTlFMWWZHd3BHUUl1QVFRd0Z4RVBRQUFDRUlBQUJDQUFBUWhBQUFJUXFFcmdrbWIyYWpPVDlWYy8vY0RNYm1obUw2eGFJNFd0Z1FBQzJCcEdnVFljTEFFRXNJTWRlam9PQVFnRUFyY3lzeU1yMGZpY21YMHdsS1VUM0k5emxhRVNXWXFCQUFTMlF1QmNabmEzY04xcmFwKytGNjRLZmRYTS9zZk1QbUJtbnplemIwOHRtUHdRbUpuQVQ1alp5ODNzaXBGNlBtdG1semV6VDg3Y0ZvcGZsZ0FDMkxLOHFRMEN4eU9BQU1hRWdBQUVEcDNBL3pPejM1NFJnazV4MzJObWY5TmNjWGhPMkp6TldCMUZRd0FDRUZnMWdWOHlzemVaMlJFenR2SUx6Y0hHTVdiMkZETjdsNWw5ZDhhNktCb0NKUVF1Wm1adk5yTlRPWmwvMDh4ZVZGSUJlVlpMQUFGc3RVTkR3dzZCQUFMWUlZd3lmWVFBQkdJRTVoYkErblcvdzh6dUdqWmxPTGxsYmtJQUFvZEdZQWtCck12MFcyYjJFRE43ckpsOTdkQmcwOS9WRXJpV21iMHlvWFYvMEZoTEhwWHdISS9zRHdFRXNQMFpLMXE2UVFJSVlCc2NWTG9FQVFoa0VWaGFBR3NiOStMbWV1U2R6ZXd6V2EzbFlRaEFBQUw3VFdCcEFheWxKZkZManNXZloyYmYzMitFdEg0REJGSi9CMWlBYldDd2UxMUFBTnZlbU5LalBTS0FBTFpIZzBWVElRQ0JXUWpzU2dCVFp4VHUraVptOWpJaVBjMHl0aFFLQVFpc2owRHF4bit1bHVzNjJXMkNmOGE1NnFCY0NIZ0VUaE1jNE1kOGtPSUR6S080bjM5SEFOdlBjYVBWR3lHQUFMYVJnYVFiRUlCQU1ZRmRDbUJxdEh5RXlSRy8yc0dWeU9KaEpDTUVJTEFuQkhZdGdBbVRmQzhwd3Q1Lzdna3ptcmxOQXI5bVpySUdQOUZJOXhRczRzKzMyZldEN2hVQzJFRVBQNTNmTlFFRXNGMlBBUFZEQUFLN0pyQnJBYXdWd1FoM3Z1dVpRUDBRZ01BU0JOWWdnS21mZjlkRTdkWDFNa1dRSkVGZ1Z3UVVCZkpwWm5hZVRnTythR1ozQ3RkMU9SamIxY2pNVnk4QzJIeHNLUmtDTGdFRU1CY1JEMEFBQWhzbkVCUEF2bWRtOXplemoyY3d1SWlaWGRiTXJtQm1KODNJOTdtUTUyTVplWGdVQWhDQXdMNFI4QVF3V1dmSllYMXEwbFd5eXpSV1hWYzFzM09tWmdyUFBhaXh3bjBBMXJlWjFIaThOZ0h0eDA3ZkJHczRXZkJQZHl4KzZtb2pYbFY1Q0dDckdnNGFjMmdFRU1BT2JjVHBMd1FnMENjUUU4RGtvMHRDMW5zTHNKM1l6T1RiNDVGbWRxbkUvRG9GbHBObUNXOGtDRUFBQWxzazRBbGd6ekN6V3hSMi9BeG1kbnN6dTI4VE9lOFVDV1ZNZWNjbkZNOGpFSUFBQkU1QUFBR01TUUdCSFJKQUFOc2hmS3FHQUFSV1FXQXVBYXp0bk42enYycG1SNXZaRVU2UHYyTm1Wekt6dDYrQ0RJMkFBQVFnVUovQW5BSlkyMXBaMHp6RnpLNlgwUHpuTkZhK04rZmdJWUVVajBBQUFqVUlJSURWb0VnWkVDZ2tnQUJXQ0k1c0VJREFaZ2pNTFlDMW9DNFpJajZkMWlIM0VETzczMmJvMGhFSVFBQUN4eWV3aEFDbUduVUYvUWtoNG1Oc0RPUUlYOWZXUDhGQVFRQUNFRmlBQUFMWUFwQ3BBZ0pqQkJEQW1Cc1FnTUNoRTFoS0FCTm5PVngrWGlUaWs1NTVqNWxkM2N5K2N1Z0RRLzhoQUlGTkVsaEtBQk04K1FkN1lmQVBGb1A1VzJiMjdFM1NwbE1RZ01EYUNDQ0FyVzFFYU05QkVVQUFPNmpocHJNUWdNQUFnU1VGc0pNMGtaNmVhV1kzam96RTE1dm9aSmMzcy9jeldoQ0FBQVEyU0dCSkFVejRMdDFjTFg5amNEQStobFArRjIrOVFkWjBDUUlRV0I4QkJMRDFqUWt0T2lBQ0NHQUhOTmgwRlFJUUdDU3dwQUNtQnZ4eUU3SHNOV1lXZS8vK21wbTlqUEdDQUFRZ3NFRUNTd3RnSnc5V1lOZU9zUHo3eHZyMk9tYjJqUTN5cGtzUWdNQzZDQ0NBcldzOGFNMkJFVUFBTzdBQnA3c1FtRURnekUxRXhOZWIyWVVhSDFYZkRWWk1MNXBRM2xxeUxpMkFuZEhNdE5tNllBVEFIelFSekk1YUN5RGFBUUVJUUtBaWdhVUZNRFg5ZG1iMnBFZ2YvaTFFNi8xY3hYNVNGQVFnQUlFaEFnaGd6QXNJN0pBQUF0Z080Vk0xQlBhUXdPK2EyUk5EdS8rcmlWWjREVE43MXg3Mm85dmtwUVd3RkdzRUJMQTluMVEwSHdJUUdDV3dDd0hNczd4RkFHUENRZ0FDU3hGQUFGdUtOUFZBWUlBQUFoalRBZ0lReUNIUXRRSlR2aTJJWUVzTFlPSVdxMU4vWDFJQVUxVEtVM1Ftd2ZmTjdGZ3owMy9YbmlRbW5xN1h5QitZMlplRGxlS3UyOTlucS9aOEo3VHZoN3R1M0licTExcm05RDBmVDNCZTd3RHZRZ0R6Nmx4U0FCdDZieW5veWJmWE8yVEhSZFRVYit4RW5UYXV2YzByeGtuVGVnVDJjUjNTYjNQT053Y0JqSjhBQkhaSUFBRnNoL0NwR2dKN1NxQnJCYVl1L0x1WnlXZlYrL2EwUDRja2dHa1RvNDNnVGN6c3VtWjJ6c2lZZmJQeFYvWVdNNU56YVBrcysrcU94MWZSM0s0UUltbGUyY3pPNGJSSDEzUS9iR2F2TUxNWGg2QUMrcmM1a3I2bFlpbUx5QnVZMlM4T0NIUDllclY1L0lmbVN2SHpHeWZkcnphelQ1dlpWRkhzSjh6c1ZKRU81aXpRU3prTmlYN2RzaFRrWWFxZkpRa0lWd3JYc0s5bFpoTG14NUk0YS80K1BUaENyeTB5RElrWjNiYkVSSUl6bUptaUQrcjMrTE9kT2FNOC8ySm1mMmxtenpDejczVUs5UGd1TWNZbk5qTzFYZjhkU2w0YlBERktmYjVGNlFRY3llZlZPWmNBMXI0YkZBSDRobVoyOFVnVVlJbjNIekt6WjRWb3dUWGVDU1VZdTIxdTMyZjZkZ3dsdlZQMUhudDg4RnM1OUozdzVzdTN3bUZhVGx0ajc3cTVEbkZpdjczU09xZThQOFo0RFltVnFlL2dVemJmeXQ4d3MxdWEyVVhON0V3aG85WURId3Z6OHRGbXBqRXJUZnU0RGxHYnRlNjRxWmxkclhrMy8zU2s4L3JkdnNUTW5teG1IeG41cmlPQWxjNGU4a0dnQWdFRXNBb1FLUUlDQjBaQUc1OWpHbUhoRXAxKzc3TUlkZ2dDMktrYnE2TTdOOVpIOSsxWmUrVk1YWWxJOTJrMjZ4L055VFR4V1cyY3JtaG1EdzcrZWFZVXB3VzdydTgrb3ZFSFZNdlBqN2hLRUw2THN5Qk9hZmZIbTQzeEE0TWdWcnE1VUhUUm95T1YvWE1Ramo2ZjBxQ0NaN1FwZlhrWXM2SHNFa1lrWEwyOW9HeGwrYWxHRExwL1lONjFSRWt0VGdLRC9FQTlxT0ljK05WRzhIeHBwQUZEQVMwMGJ6U243K2cwZk1neHV6ZkcvMmxtbHpXelQ2UkNLWGp1bW1iMnlrZ2dqejlweXZ6alNMbWVHTFVGQVV6dkxqblZmNmlabmIrQXNiTG85eXByWVAybWxyRElWWnNsMUQya2lWWjhub0kyNi9mMWhQQWIvVm9udjM2Mzc0Z2NXcFNNZDB4QW1Fdk1qSzBWU3Vzc2VYOTRRK1A5dm9Zc3pHVUZmcWZ3Ymh3VE8xVnZhVCtWZHgvWElacTc5elN6MnhldW5mUWJ2a1B6VFh4RFR3aERBUE5tTVgrSHdJd0VFTUJtaEV2UkVOZ3dBWjJBdmFwM2t2MGxNNU0xeG52MnJOOUxDMkE2WWRYcDRGVWpuR1FWOHV3S0hMV2gwY0x0WVlXTHQ2RW1QQzRJWVRvUm5pdnAyNlRUVmxuQWxHekVZdTJxY2IwMGRiTlF3a2NiUjRscXp5dlk5UDVrc0hLS2JiaGwrUmNUYkVyYTNPYTVkS2ovWkNPRnlOSk4xZ1c1QXA5NFMxRFJScVJFK09vM1IxWXI5ek96UDY5d1ZUWjNBL3Z6Z2YvWkUwQVBDV0FwWTF6ci9USFVSUDAyOVE3UXBtNG82VnI4NWMzc255TDk4emJvSllLSWgxUGZKb2wyWTBuZnJhczNZcmFzNzZZbUhRNnBENlhDVjcvK2R3ZExRVmtGenBYVVpvbm5OZDYzZW9mZExGamZ5cW9WQVd4ODFITGZIeW5qNy8yKyt0L0Fzd1VyYVZrbmVxbEVBTnZIZFVqdGI3d3NrSFhnMGE2YkVNQzhtY2JmSVRBakFRU3dHZUZTTkFRMlRFQW5oRHJwdlUydmo5cjg2TXJFNi9hbzcwc0xZR2R0VE9qZkdybCtxT3RPRW45MC9YQktPa3U0U2hNVDJrckwxeldkWHc5WElrckxHTXVuZHY5RkVFcHFsNjN5cGdwZ3NralR0ZEFhRzhWWS8vNHViSHBsMFpPYVBIRkM1V2doL2pzVnJsc090VWtpMVI5RkdxdXJmczlKN1V4NDdnTE5WUnhGbTYwbEpuU3IxOVZJdFVrKzQwcFR6Z2Iya3VHNnE2NVNwYVFoQVV6NUhodXNOY2JLa05BalM1N2ExejFWbi9mK1NoRTV2UTM2SEFKWWJNT3BmcjB3WEtudFhqZE5HYVB1TS9vdXFwNC96YzJZOEx4RVc0bEtMNmo4MjUycnpiSUdrMldzMWdsNnAyTUJOanpJT2UrUGhHbHkzQ1BlNzZ2N0RkVFYvZGMyQjI3blN5dzhWd0RieDNYSVhHMStjN2dHclc4NkFsamloT014Q014QkFBRnNEcXFVQ1lIRElEQzJjTkxDOTFiQjBmdFVuMFpMa0Z4YUFQT3VEOGwvaEs0d2ZYWkM1eVVhNk5yTXowd293OHM2eDdWWFdTRm9JNXBpSGVPMWIrenZwUUtZVHJGMWd2dW9TbFpJS2UwdllleFpZZFdZWDBOdGw0ODJpUjlIam5STTgxbVdRWjlNNlhoNFJwSDc1Q010VlRES0tQckhqOHJ5UjFacG55bkpiR2FwRzFoWldXaWptU1BralFsZzNoaEwwTHRjOEQ5VDJLM1JiTjRWekJTUjA5dWcxeGJBWk0yaEs5enkwVmY3dmRDV0o4dGVYYStWOWQxY3FTc3ExZmkyaW92OE9kMXVwZ2FydmZKNzlqWUVzRkhDcWUrUG5DSHlmbC90TjFCWDFuVzRJSXYrMUpRamdPM2pPaVRIUWplVldmYzVIV3pwY0VKVzNyb2VQWlQrTy9nN2ZXOUpCZVNCQUFSOEFnaGdQaU9lZ0FBRXhnbkl2NDAyRmtQWGtyU3cxaldqM090T1MvTmVVZ0E3U1dNNTlNeGdhVERXVDFuSTNMem4rRHFIaWE0eHlFZmJHWE15RlQ3N3IySHhMRkZsYXZxVmNPM3ZpS2tGT2ZsTEJEQlpTZnlabWQxajVyWU5GWjhiYWRVVG9sVEhITmNnSmJqSXo0bm0rRkNTSlloOHpLUnUzSzhYck1WaS9taHFEVWU3S1NrSjlKQ3lnWlVZcmZlaExHSnkwcGdBbGlMb2lMVWNrOWRNR2x1OW43U0JHMHFwUHVhOERYcHRBY3dUREtmNnB0TnZUbHgwdURGM2FrVWxIUlJNU1dOVzNGUEtISHQvU1JTVVZlOVk0SktTOGNZSDJQaEllYit2OWh2WUQyaVVNdmFwQXRnK3JrUG1GcjlhdmhMS2RlQWlYNVJEQ1FFc1pTYnlEQVFtRUVBQW13Q1ByQkNBZ09rZGNxL0d2OVJSSXl3VUdmSkdJYUxaV25FdEtZQU4rVTdyY3BFNGNPM2dYNjJFVjg1MUJsMmwwVlUrWGJYc1J1V1R0WTBXcnhMaHRISHhmQzVwYzY5VC9pbENaNjdZOFIvaGVxZUVDMFY2N0RxSWx2OHBSV0dVdFlmbVh0OTZLRmNBOCtaNGY1eDBWVW1uNm4vYldBZnBCTGNmOGZEbmdtZ29FVUgvUHlYbENvMnlWSk9mcHJFMFZXUWRLamQyTFM5WFlFaTlLaWpXdXRLcC95a1NYWHZsVDJPbTZHV3lSdnU5UkdIaU1VMmswN3RsQ0hRdGd4UUJUUDRSMzlnNEZ4L3pqVFkyVG1NQ21KN1hkVGhGQ3h4TEtWY1JVK1plOXhsWmRPaDljZnFSakpwekNyYmhKVytEWGlLSWpOVXBzVkQrOU9TUWZnNVdPVUtTcm81TENOVUJoUUp4dEdLd0lnR2VOMXdyRjc4Mjh0NVlleldmRkV4QzVaV2szSGZhRjROL3NKY04xQ2xyWFZscTZscjEyTFZ3QmZpUUg3Q3h3NDJTOFVZQUd4OTU3L2VsYjZCK0U3cVNweXZOT1NsRkFOdkhkVWhPbThWTGxzTi9iV1p2YWc1Mmp1MEExRHRlbHM1YVArbDNNYlIrYXFPOVhtUUVQQUpZem96a1dRZ1VFRUFBSzRCR0ZnaEVDT2lFWEpZUVMxamZyR1VnVGhWT3NzYkNRbXVUcXNodDJoeE5FVW5tNnU5U0FsaktBdXVkUWJncHNVU1JGWUtzQWp5Zlg3TFkweVlyNWNxWHJtMUoyTkFWc1ZpU28zMmRhcGFrVkxGRFpjdDV1eUpSam9VVzc5ZXZiNXcyN1Zyd2EwR3FsQ3VBU2FqU1pzRVRBclV4MEtaTVk2QTVuNUxPYldhUFRPQ3JzbktzbER5aG91UTZZcXcvbm1QMkhERW01WGVpdHNpNlNSYW0zV2h6WTIyOFlCREp1cEZyKzg5cVV5SUxIbDFUekVtZUFLYjVJNytJdWpyWVRab2orczA4T1J3UXRIT21GYUIvTzBRV2xhKzl2b2lxY2pSM1lodllGR2YwT2YzVXN6RmhOVWZrOURib0pZTElVRjlTaFo2VWE1dFR5cGNBZE51QlNIQkRaYVk2MzU1eThCQ3ozTzYyU2UyVzFXdEtGRXF4MXJ0YzMvblk3MnlvenlYampRQTIvdXYxZmwvNkJtcWVEZmxybElXNjNrdmRBd1ZkbGRRN1ZBZGlXbDlJMkJtTHBMeVA2eENKMkFxNGM4dUVGNkw0aUZ2S1ZYNUZ2WHhBT0ZqeDFnL2RxaEhBRWdhQ1J5QXdoUUFDMkJSNjVJWEFDUWxvb2FERm9oeGxrNDVQUUpHc3RNQ1F4YzZhMGhJQ21KeXFTa1RSeWVCWTBnWmNRbE5KaEQ2OXl4OFloTVpZK1hjUHdrSFhZc29iQy9tK3VuZGp2ZktReUlNZmEwNUNyOUw0ZnBQUHFweDBobUFONFcyWVZLN21UaitVZUU1ZEVnd1U5VS8rYU1Zc0Z2dmwvVUxqaStQMUNUNm9kTDFIakVvaVkycnN0S0g0bXdUaFhGRVFKWmg1S2VXcWJlbW1mNmh1ejYrZHJ0cEk2UEdTTmlLS2ZpckJhQ3hwYzZDMnl4b2w5VHFseXRLR1Q1dHorU2NjU3pHTHE3RThuZ0QyaDBGRTZGb2l5a0pRQVVRODUvdW5hL0orZmVRNmRFckFnMXl4TnpZKzNyWExISkhUMjZDWENDTDl0b3ZQTFlLVmEyenpLY0ZURnFoRElxTTNYL1UrVjhDWG1HVmY2bGozNjdwTWlLSTQ1djlPYy8vNndkclVhMmYzNzZtKzZQcFI2MUxyS0hHcVh6TGVDR0RqSStMOXZuU29wWWluWFgrRXNtalNlL2RUemtCclB1bzdOM1RJczYvckVBbDdFclppU1FjS09zUlE0SlNjNzQ3S3pQVnRpZ0NXK3JiaE9RZ1VFa0FBS3dSSE5naU1FRUFBODZkR2pnV1NYOXIwSitZV3dGTER5ei9Gek82UVlUM1U3Ym0zRVpPNGR0TWd3dVV1M2xSUHlqV2ZYSjlES1l0bDFkMk5uRFIxdENYbWFRSGZ2Ykl3Vm1iSzFTbmxsU2dseC9nbFhMdDFwemdNenJuNjVEa3JyM1VOVXVQNFY1SFQ4eHhyTTI4am9rMklmTVZKeEN4Sm5uVkN5UlZrVHdEN1FDTlNYTFRUV0FtWXNtSk10UktNOWRQemJUWEZvclJmcjFkWGpxRHFiZEJMQkpGdWUvWGIxWUdBZnB2ZXBsWlhwZDlWTUpsU3hIdGRNZGQ3c2RUeTJiTSt6UkVkMWNYVWQrNmZOTy84QjArWW82bVdkeTMya3ZGR0FCdWZ0Tjd2Uzc3NmRQMiszUVBLSGNLdEcwdWxFc3Z6ZlYrSDZBcXZEcmwwQlhrczZidDdyWER0c2VCVmNWd1dXVGEvb2ducWNxR0VBaERBRWlEeENBU21FRUFBbTBLUHZCQTRJUUVFc0xSWlVXSnBrVlp5L2xOekNHQkRWKzlpTGN1NTN0WXZKMFdvMFdiaDRSTkZtak9IaGVMWUFpNTNzKzB0MHRYUEtWenlaOEx4YzhncVJCdUQySGV5QnRkdXJTblhRVk45VlhuWEVoV0tYZEZHUHpFUmxIY1ZMOVg1dlRlL2Fqbi8xdnlWUDY2eGErcTV3cUFuZ0hYeFRoRzVoNGJKKzk3a1hFdjBwc0VmajF5WlVyNGNrVlBQZTcvOUVrRkU1U29TbzZ4WUpPQ01PVnh2K3psMVBua094R3U4dS9UdWlRVlB5QjFmYmZMbHMwait1TVpTclRtYWNtalN0cUZrdkJIQXhzZlErMzExYzlhWXB5cHZYOWNoc2ZlYStpVXhTdGJ0V3Q5TVRlY0theG92T2pjQzJGVFM1SWVBUXdBQmpDa0NnYm9FdkExSjNkcjJ0N1I5RWNDK0Y2NFZ5aGRLU3BLRmlSWkx1dEttRFgxS2VsVXdyUzg5ZmZXdW4wM3hGZE52Zjh4Q1I2eXVISnhrZS8xT3VhS1g2L2pkcXpQbjd5bS80K2NIUitRMUxIbmF0cVZZVHVTSURUSEg5S3BUNDZrcmgxTlN6TklzWjRQdU9lNVBGZjY4dm5oV01MbkNZS29BTnRkODlyaEpETkltYjByU1ZVeGQvVkZ3aktHVUtuSzJlYjBOdXF3K05YZFRrNXhKNnoybzlxWDQydEZ2VnZOVzF4TkxraWN1NTFocWV2VjdvcFd1cHNzWFhrcnlOdnV5REZLZ2xoVC9rQ24xcFZqSnFSd0VzSEdhOHRlbTY5NDV5ZnQ5dFdYbFJoaU90V0VmMXlFcDFsLzNOYk9IVGp3ODdISlRZSjZqbllNMUJMQ2MyYzZ6RUNnZ2dBQldBSTBzRUlnUVNOazRIenJBSE9mVlM3Q0tXWUROWGY4amdwUFUwaXN5bnBCVWV5R2xpRkZ2RGViOFEyeFNOMk1YRGxjYngvemJUUEdIVm1QTUpHQnF3ei8yamF5NXdlMjNOMlhUbUNwY2VkZlc1TEJmUW9ERXk1S2srU2VMS1YzVkdrcXBWb0VTam5XZFMxRWJoMUtwajdteFBua2J4RlMrS2o5VkFGTVFobGpVeGhMK3l1Tlo0TW0zai96OWZLVzBnaURvai8wZWNrVE90Z2tlL3dsTmRiUHFNRVBYTmVXVHNqUjUxNHRyK2w3enJoaW5qcThzSG5Yd0pHZm1ZMm1PT1pwaVNZc0FOajRtY3dwZ0R3cnJqNm5YOS9kMUhlTDlqdldPME5YSEZKY0pxZStTRkV1NTJ1dTIxTGJ4SEFRT2hnQUMyTUVNTlIxZGlBQUMyRGpvZlhTQ1A5ZTAwVW03cnRCb1F6SWxlZEgrNUlORzlaUUtIUDIyZVlLSHJsTmNOOEVadkdlSk1JZDFWU3JuRk9maXRUWU9ZMjN5ckhwZUdVU25ienVkOG9TbFhHdW5mblhlL0V2MUMrY0pqalVGQmZYQnMyalM3MFkrY1ZKU2lnRDJvV0FaK29XVUFqT2Y4ZVpyam1YbVVOVmUrYmwrcUZUSExnUXdpZW9LZ2lCcnFaSmdGUzJiazRkSXI5Y2VHYWZhWXEycXVWbEVQRldRQlBtQWZMOHpiendMblZTeE9uTjZtdmNPVW5rSVlPTlU1eExBYWg3aWVOK0JOYTVEdk4reFJtUU9RVmpsZXI5RkJMRGN0d3pQUXlDVEFBSllKakFlaDRCRFFBTEI1UktpdVcwSnBLeDQ1SEI0eksvSTE0SUlveWlJT2RFSGwySzBwQVdZaEM5dDVsUEN5cWYwLzNZaFpQblFzenJWbGVXSG9wVFZUSW9rT1JhSlVOZnpMdVZjb2ZIRWh4S0xrcHI5OHl3bGRHMUVHODUvcWxscHJ5ejVDSkdsbmFLSERxVWM0Y29UMDFJak5BNjFJMVoycmF1YWlwU29kK3BIS3ZOK2FpUWk1RnNheCtnU09DUXVlQ2xGQUt0eERUSFdEbTlESmVIbnpsNUhSdjd1V1gybWlwemQ0cGNVd0NSOFBjbk1KRnAvcnBCQk41dTMyWi9DZXF4NUZ3c1dzNmNhZVVBV21ONTFUdTg2ZE1rNHB1S00rZXRTR1FoZzR5VG5Fc0J5ZlIzR3hub2YxeUhlTjFacnRTdVoyZWRUSjNuR2M5NFZhZ1N3REpnOENvRVNBZ2hnSmRUSUF3RUl0QVE4SjcyeUNMcGxSWjhpYzVDZld3Q1RZS0k2L3FJNXlaY2ZvS25YRFZvR25qVlc2dFdZWEtheERYL0t3azFpeGh1YURhbmFQNVJLTEVweSt4QjczbXRmcXZYVmxEWjVZNXNqYm5vYjl0TCs2Q3FISXJvcWl0NVFTdlVMNVFtaVU2OXBqbzFETFNmYW5nQ1c4cHVZTWxlVTE3T3krWER6bTd1aW1jbnFJemZGcmdubGlKemRlcGNRd040Um9yTnFmayt4K09yemlsbGpUYlcyR3hzYkhTNnBQMk9PL1QwTFNRbG40cUIzMjFDYVc5VDNMRHdSd01aL2xYTUpZTExVZm1udXkyRGdlZTlidGRaMWlMaStKTkwvMU85WENVS1AyUkxmakpKMmt3Y0NteUdBQUxhWm9hUWpFTmdKZ1ZpWTlqOXNJZ01kTlNHVStsSWRtbHNBZTZhWnlaRnFMY2ZDTFJmUFVpbm5HdmFtK1VRQUFDQUFTVVJCVkZjT2EyL3o2aTNZWXhaa2FzZWNsZ2dwL1l5ZFppdS90OWxNcVNQbEdZL1RQY0lHM3l2TDg4OVNhbUVWbXdjMUJiclVmbm9jK24rZkt1UzI1WGtDMkJUeEthZFBNV3M4alljczJoUndJeWQ1YzZkMGsraTlRM0xhT1BTc0xDVHZFcTRxMXJZNmpsbFNLYUxxWldhd0d2RmNLM2dDa21mdGttUHhXREkybmdqdnRYK296bG9DZGs1L1ltdUZmd3ZXejdsV2h0Nzd3L3VlRHJYZiszMlZ2dk9INnRyWGRjaUR3N3BzYlB4VHJDcHo1azcvV2EwSjFZYWhoQUEyaFN4NUlaQkFBQUVzQVJLUFFBQUNnd1RHUWpycjR5MG53NHBjVk12YWFjNGhtRnNBVTl0MURlYytJYVI5cmFpQjNyV1lLVmZiWXJ5OXhYWE1nYmkrT1hJRWZ0T1JDaFFNUUpZcVV4eFVUNTByc2F0eE9jTE8xSGJJK2E2c05zWlNqc0RwblhhWGlJNHhQMjQ1L29SaS9aeVRkMnpqbVdQSjQyMWc1N0pnNjg4TFQyUW9FYXRpd2trT28zNWJ2WGZJMU45T20vOTl6ZFZaUlYzN2wwb0ZuakpZalZ4MXBMeFNhMHF2ZVo0QTVzMHh6d0lyNTEzaXRYWG83NTRGR3dMWU9OVTVCTENhVmxuN3VBN3hMTEJxQ29Sakl4c1RjQkhBU3Q0eTVJRkFCZ0VFc0F4WVBBb0JDUHlZd0VuTjdObG1kb01lRTEyeDBZTHQ3WHZFS2lhQWFRTXVNL2t2anZSSFY0L2tKK0xNaWYxOVFYQ3UvZFhFNTJPUGVRS0pvcjU5bzBJOS9TTGtQUFpNa1hKakZsTGVSbTR1QzRwVURONEdOOGYzVm1xZFk4OTVJb0czNmUyVzYva2N5YjEyNmwyNXl4SFVQRXMzL2ZZOFovOGxyRFVYZGYxeUxLVnVQRDBCTERVeWFra2Z1bms4YTYwU256WXhxN0lja2JQZk4yOXVmOHJNWGhzQm9rMzN4UnZma3lkS2dLYk41QTNON0JVSnozcVA2SGYwdHNabmxZVEJvYVRERGIwamFpZjFVeUxTV0g4VlRPVTZrZmQ5N05xbTJqclhZVW5MQVFGc2ZFWjQ3NC9VOTFDM0J1LzNsZlB0OE9ieVBxNUR2R3YzUzFqdElvQjVNNHUvUTJCR0FnaGdNOEtsYUFoc21JQk8xWTgycys0N1JPS0ZGdUcxblZYUGpURW1nS1dleEowOW1OTnJJK0dscHpTQzJoMHFYQTMxTmpWZU8rYjZlMHdBOHpaQzNrWnVyamEzNVhxK2NwWllHS2R1R25OWnhhNXU1Zm9BaXZsSnkvVUw1VjFGbVh2TXg4cFAzWGg2RzlpNXJuQU90ZHR6aHAvajk4Zno4WllqY3ZiYjZtM1FVeXlDZEFqeksyYjJDRE03anpOSk5ML2xxKzVkRXllVGQ1VndZdkhGMmIxM2dlZUVQbld1bHpiUWUrK25qSGUvYnE1QWpvK0c5L3VxYWZISE9xVHNWNEVBVnNhTlhCQ29RZ0FCckFwR0NvSEFRUkdRdGRQcnpleENuVjdMdWJ0OHpDZ0UvTDZsR2dKWTIrZUxtdGx6emV6OERnUXRmaDQrOFlxb3Q2bloxVGpFQkREdm1sYkpScWhtUDcyTm1yZlJYSE5iTHQxWUs3N1J6RTQyMHNnY1FTTW1wdVZHRjF2aUNuTEp1S1NLQXA0QWxscE9TUnY3ZVR6THZLZWIyZThrdm5kaW0raGNrWE1PQWF3dFUwTGR2WnJER0VYYWpDVjlvNjVtWnArZUFOb1RGaVlVUFNtcjkxNktYZXRPUGVTWjBrRHZ2VnJ5M2tjQUd4OFJiNTdXOUdPNWorc1E3OXBteVh6TS9YMGdnT1VTNDNrSVZDU0FBRllSSmtWQjRFQUk5Sy9GN0xQNHBTR3JLWUNwdkxPRjZIaTZvak9XNUJOTTEzSjBGYUUwN2VQQzAxdVlMN0h3alBIMk5tcmVSck4wTElmeTFiNHU2cFdYZWcweWRwMnl4Tms2QWxqTldXTVc4ODJXSTF6Rnlza1Iwb1o2Vi9zOW9MV3NyR29mNDF5TFZGUmlPYmN1dllMdXRidnVTS2FYNXIyWGFuL2owbHYyb3llOTkyckpleDhCREFFc05nOWpJcC8zT3k2Wmo3bS9DUVN3WEdJOEQ0R0tCQkRBS3NLa0tBZ2NBQUZkOVpQMTEzbERYL2YxMm1OM3FPYllISnd6K0xBNVgyUk9UTFZJUUFDci80UHpObXJlUnJObWl6ekJxaVRxV015blU2b2xTT3lhWFlsZktBU3dtclBHN01KbTltWXpPKzFJc1FwUUlpdTlXSXI1eUNrUk9mdDF6YkVCMVhwV2xtQ0tQQnhMVTZ4dnZYYlhIY24wMHJ6MzBoemZ1UFRXSVlERldNMWhRZXJOMDBPM0FQUDRJSURsL0xwNUZnSjdTQUFCYkE4SGpTWkRZSWNFdXFKTExiOHFPK3pPY1ZYUHRUbTRwSm5KcW1ac0k2cTZwL2dEUXdDclAzUFdKSUI1L3NpOFRlOFFIYytIa2JjeDBwcmhyOHpzbGlQb2M2NVJ0a1VnZ05XZHg1NHovSlFycXJHb2dTVWk1eElDbU9xUVh6QkZ1N3hOQk9tVTc1YTNjYTQ3a3VtbGVlK0N1YjV4cVMzMDNxc2xnZ01XWU9QMHZYbnF2ZWRUeDFYUHNRN0pvZlcvejJJQlZzYU5YQkNvUWdBQnJBcEdDb0hBUVJEb1huMmFzb2xZRzZ5NU5nY3BGZ202Q3ZrYlp2YlNBaWpld3ZOaGpaUG9keGVVT3pYTGh5S0JFTHlGZWNsR2FHcDd1L205alpxMzBWeDdXenh4eE92ZnVZTjEwVmtIT2xvYU9qNzIrL3VlbWQzZnpENWVFMnhpV1lwa3F5dURYcHJEZ3NPcjAvdTcvSTRwZXUxUThpS1o2cjMxdUhDbGNDaC9pY2paTDJmTzkwQ0s5YTBpVEY2dklFcXUxMjVaM3NrLzN0SkowWmZmMHZ4VzlIc1pTbk45NDFMNzZiMVhTOTc3Q0dEajlMMTV1cVFBeGpwa2VKd1F3RkxmSGp3SGdSa0lJSUROQUpVaUlRQ0J2U0l3NStaQTE5aGVGSnd2ajBHUllIUVZNL3RDSnJXN205a2pJM21XZEw2ZDJuUnZZVjR6UEh0cW03clBTZVI5bTVuSlVtb29yU2tLNUN1RFA2TnZaM1kwSm81OHAzR1VmNlVtWXA3RW42RjA0eEQ5ZGVodktaWkZRL2wyN2FBN0U5OEpIbCtqQUJiejA2WU9LRnJ0azBjNkhzdWJHeTEwakszM0hpZ1JSTHAxYVk2LzJQRUhkbnN6ZTFMbTRLL0JlWFptazQ5N2ZNNXZYRXA3RU1ER0tjM3gvdkIrWHpVRnNDMnVRNmErZjFKK0V3aGdLWlI0QmdJekVVQUFtd2tzeFVJQUFudERZTzdOd1pIQmI5b1JFU0lQTXJNSEpFWm5hNHZ4RnM3M01MTkhyV3dVRkNEZ0hjM1Z6eUVMSWpWVlZneUtKdnIxSGJYYjg3dmxXYy9VYkxhM2lTbGRwSHZpaUtMcHlRRjZQOGw2VENLWG5JajMweFMvVUo0bG8rYkRNVFhCVmk3TCt4M3VTb2lPT2JHUGlhZHppSng5NUhQTjdiWWVYWVg4eThoVlhUMzN1ZWE5ZklYTXlNV2VrQ01uKzlkdGZKRjlzL0ljbTFwY0xHcXJ5cDc3TitaZHZTNTVsOFhlRzNPOXAyTnJoUktmakdJL3gvdkQrMzNWRk1DODlxOXhIZUxOUjg4U2V1cnZVZmtmYkdiM0hTa28xUjlualhaUUJnUU9rZ0FDMkVFT081MkdBQVE2Qk9ZV3dQU2VmYlNaM1NWQ1hRc2VXWUhKdjA1cXVweVp2Y0hNSkV3TUpWMWp1bk5xWVFzOWQwWXowK0x5Z2lQMXpiVnhTZTJleHVwWlpuYlRrUXk2WW5UbElOU2xsbG42M0xYTVRFTEZXSnF5c1lndHZzZDhQRjBnOVB2MEF3MmE0aGZxWm9INVdEOWoxa3FsYkd2bTh6YUF1eExBWXM3d3h5eTVZbGRrcDRpY2ZkN2VCcjFFRU9uWGNhSEdtdkdOWnFaM3psaFNOTXZibXRsM0V5ZEVMRGlBaWxqU1FqU3h5Y2M5NW9uTWMvL0dMaEhlKzZjWWFYVEplQzl0UVhQS2NLMzRxaU45T0ZRQmJCL1hJWjZRcmVCT2x6R3p6K2Y4eURLZTlkWVpDR0FaTUhrVUFpVUVFTUJLcUpFSEFoRFlFb0c1QlRDeDZrZlBIT0tYNjVmR084VXN2U0kzNTlpZTNNeDB6VkVXQjBOSm0reXJtOW5yNW15RVU3Wk9aU1VRamFXYXArZXhwc1RhTVpYVHBZTTRjTEtCQm94ZGc3eGQ1TXJZRkNiN3VJSHFZbHVyQUNheFFkY0FyekV5eVlaOGVjWGVLZThKdjgydlZQaHRMaUdBcFFnL3VUNFlZMWFRcXEvVUQxNEZwTkVpNU85TTc5MnhOUGRoaVNkeTF4YkF2dFVjRGwyeHNnOU1UL3c4VkFGc0g5Y2hucVgzM0FLVU41Zm1ybi91OXczbFEyRDFCQkRBVmo5RU5CQUNFSmlad0JJQ21McndXMmIyVEtjdk9YNXB2RVhVcnEycHhyb2FzejVTbnJrM1k5NTA4aXl2bGhBV1BhRnc2dGg2NGtqL0dtVHMrYWwrb2J3TlZFM2h4UnY3a3IrdlZRQlRYMkxYR1JXaFZnRTRKQmEwS1NaeWpsMk5MV0cybEFCMmhuQjlWaFpJWXluWEI2UDMvdEo3L3RrbFVHYk00MWxnemZrYjh5TEhxdHNsQXBnbnF0VzJ2SXhad0tvUGh5cUE3ZU02eExQQTBuak9hUlhwdmY4UXdHWjhHVkkwQkVRQUFZeDVBQUVJSERxQnBRUXdpUWpQTTdQclJJRG4rcVdKT1JCWE5UY0pmcHZXTk1hLzNGd3ZlRTNrKy9QUHdSSDdYTmNQUEJhZUlETlY4UEhxMTk5ajE5ZjA5eG9pM0IyRDJEalVudjZHT05hZVV1ZjNiYjNlMVNMUE1YOEt6em1mV2JNQUZ2UDMxdDlrelNseTl2bDdHOEFTUVdSc2pLOW1acTl5SE9MbitHRDBCUEtwdjRjNTVxcDhMcjdWekJRaGN5ak4rUnZ6Nmk0VndMemYzZjNNN0NFVlljYkU1RU1Xd05UM2ZWeUhlTTc3YTN4ang2WmZ6RCtqOGlDQVZmemhVaFFFaGdnZ2dERXZJQUNCUXlld2xBQW16aWtPOFhQODBuaW40Qzl2L05MY3NHZmxzZXZ4VHRrUTVWakMxZTVQekE5U1c5ZGp6T3h1bVVFTGN0cnBMWkJybkU3SGhMNityN014Znp1MS9FSjVWalZ6ODg0Wm0vNnoza2E4dGlWS2JsdGpiTHRYVjJPaVZHMVJaMGtCTE1VaGZvNFBSazhnLzFJUThHVlp0cGJrV1pTcW5Ua2lZRTYvVWl5ZlN3UlB6NnF0cG9DUjhrMDRWQXN3ellWOVhJZDRWKy9uRXFHOElEUUlZRGx2RjU2RlFDRUJCTEJDY0dTREFBUTJRMkJKQVN6RklYNk9YNXB6bTltYkkxRVZkYkl2aXlzOXM1WWtCcnJtZUlkSWd6NFdnZ0w4KzQ0YTdaMzJ5d3BNUVF2K2NZYjJlZjdpUG10bWx6ZXpUMDZzMjl2VXlYcENWaFF4ZnltMW5IN0hmSktwbTdtV2tSUFJaR1ZmdXdBV1k5c05YaEFUWFJYWjhLVlpWT0lQTHltQXFTVXBEdkZUZlRCNnY1czV4YVFwUXhDeitKenJOM2JtRUFGWi9HT3BSQUR6SWdwUHZTYmViYTgzWC9Yc0lRdGcrN2dPOFFMeWFFeWZGcTVDNmtDb1Z2SUNVcWlldWNTM1duMmdIQWpzUFFFRXNMMGZRam9BQVFoTUpMQ2tBS2FtZWdLSG5rbjFTNU95R1pQNHBVMzZWeWR5cXBuZEV6eFUxMU9DU0pZYW9hMW0rMUkyYm45blpyOVptV3VLUUZyVEd1cWE0VHJsMEZxZ3ZRWXBpNWMzbWRrUkE0QnIrWVU2alpuSko1VXNKTWRTam1Wa3pibmdsYlYyQVN4MnRiSGRhRWx3SHVNL3g1VmtUMUFvRVVTOGNVclplS1phbm5vQ2VZNUZtZGZ1V24vM3JsV3JuaWVabVlJajFOanc2NTN5d0thcyt5ZDBvR1M4VHhYZVhiTGtHVXREZ1I0U21uTzhSMUlzQ0pYaGtBV3dmVjJIUERiTTk3RTVvY05JZlNNbGp0ZElsd3p2MmRNNmhTR0ExYUJOR1JDSUVFQUFZM3BBQUFLSFRtQnBBVXk4VTY2RnBGNUpTZkZ4TTZlWTlMTm1wdi9wdW1WcTBxWkNqcUp2NEdUUXB2WGhNMTQxakZXdmE0WlBkTnBYbTZzRU5mbUpPOUZJdmJVdG9WSjhSSjNmeko0MTBKN2F2dEJTZU04NUh4UTE3aHVOV1B6ZTFFa2NubHU3QUtabXhnUWJjWmZZT2JmSTJjVzZDd0VzeFNGKzZ1OHJSU0QvMThidmx0N05uODZjVHltUHkyK2VBaGdveXVjM1V6STBWeHhUUkFwdCtIVmxQaFl4TXJHNjR3NEhZdSt5YmprbEFwanlld0pHRFV2aUc1blowUWsra3c5WkFOTlk3T002Sk9VZ3J0YnYrUFJtOXBJbXduVk1zRzEvRXdoZ3FXOFpub05BSVFFRXNFSndaSU1BQkRaRFlCY0NtSzZWdlNnc0dzZEFwbG9ScERqWFZ4MnkxcEUvb0ZvV1ZhcFhKK3dTNnY3UXpJN0tuQkhlSnJndHJsYTc5YjI3c3BuOVZHS1V0cFFOczlyNDZIQlZzQnROTHhQRmNZLy9TdGd3RGxsYXRlWGQwOHdlV1ZKNEpFL3M2cHZFRVYxZjBqajNVMjIvVUNtaWdqYm90ekl6L1dibGY2eEdPblg0WGVpS1dJbS9ybjBRd0dKWGxDUjJ2SEVrSUVKdGtiTWRMKyszWHlxSWVQTkI0eXZSYUV4Z1Z2NVVTOE1Vd1ZiV3R4S1VkQjJ2Um1yZllYOXBacDhKQVZVazJxYW1GSkZDM3gyMStSV3BoUTQ4cDJ2M3p6Y3p6OUtselZvNjNqRUwxcmJzS1ljVU9mMDRkQUZzSDljaHFRZHhVMy9IRXI5ZUVOWWZLVDhyQkxBVVNqd0RnUWtFRU1BbXdDTXJCQ0N3Q1FLN0VNQUVUbjZjWHRkRXFqcFpoR0txWDVvVTUvcXFSbjU4YmpkeFEzYmlzUEdTRUhPZTBQYXVNKzNVU2FIdmovS2xST3BTdStVelRKdStraVIvTWJJV2tOVkVUbHRUeGtqdDBYWElXeGEyVHh1SHV3UVJKcll4bitQS3Bkb2VPd1dYQlllRXdLc09RSy90RjBwVnBGcGIvRVhqSitYZUdkWXZRM05HM0JVbFZRS21SRENsclFwZ01iOTcycmpMcjV6bVFUL1ZkQ1RlTFh0WEFsaktoamZWQjZPdTdiNHN2TWRqN3lUNU1ieDVzL245KzVJWFZ5ZlB6elhYa0I4VzVxaitXZVVwb25DT0FKYlNmNVd0UXhJSmZQbzJmaitqM2ZvMlNFaCtWRTlrbEZnZDIyK1VDbUFwRHNYVmZIMnI3cE54K0tPMlN0aVc1VmZzUUtLTDV0QUZNTEhZeDNWSTZqZGVWOEgxZmZwQXh1OUJqMTdVeko3YlJPT1dKWFUzeFg0VENHQ1prSGtjQXJrRUVNQnlpZkU4QkNDd05RSzdFc0JTL0QySmRZcGZHcFYxcjBRckxHMXVaTFgxaE1heTU5aU13WlR2TW0zazd0cmtQVk12WDQ2bzFNMnFUYVFzVUlZRWxuN1R0REdWanhwZGlkUzFJczhDU0p1eEN3WXVhbmViY3RxYXc3VnQzME1iSzZVVTUvM2FqTXJxNnhFZElYRnNPRkt2Wm1VTTU0OGZqZm1JRW1lTlVkK1NZdzYvVUdxUW1HaGUzaWFoSTE4ek00V3lseVZhNmpVd2plZjV6T3ozek95MnplOUZmZSttclFwZzZtUEtkWjgrZGdtRTRsczc3VW9BVXo5U0hPS24rbUJNOWVtamVpWGlTNFQ1U01LN3ErV3RxNDdYRHU4d1JUM3NwaElCVFBsL0lUaW1UN0hPZW5jajZ0KzY4WFg0UWFmTmV0ZnFDckdFcHA4Zm1DeXlQTlk3K0J3akU2bFVBRk54WHNUY3RzclV2c2hhVXYzUVlVazM2U3JjbHlOK0NoSEFmaVJ5N3RzNkpIVWRwcm1nYjd5K1Q3Sks5OVpPT2pqUzNKUWczRTk2ditod1UydXBvWVFBVnZ1TFEza1E2QkZBQUdOS1FBQUNoMDVnVndLWXVLYzR4RThWUDNMRXBIYk1QeG9FS0cwT3RDaHJyUWxhOGVpOFlXTnpkZWM2UzQ2bzFKOXY1d3lMUVFrVHFVbFhzMTRUckNDKzBNc2twKzFxN3hXQ29OSXZNN2V0T2FKTVc5ZC9tTm1ybW5hOGJjQkova1dDWTkyTE8xZXgyckxVMTJzMEcrRjNwY0lwZU02TEVOY3ZzcGJ6KzZHbWxzd0grYkRTbFN1SkN6cWhWL1JUSlZsWDZnVCtBczE4dVV3UUV6U2VZMm5MQWxnc211Y1FqN2xFVHRXMVN3Rk05YWM0eEUveHdaaXo0ZS8rbnVVTFNCdGdpU3Bkc1Z6ZkE3MEhOVmQxS0NDcnI3RlVLb0NwdkJRZmxOMTY5VDZUajBmNWlmdWZ6aDkwYlZudldvbDBZNzhyNWRORy8vVXpDV0FwMzlCK1gzUWQ3ZTA5Wi84U0J1VzNiSWk1RGxza0JxdWZ2ejB5SUFoZ1B3S3pqK3VRVkd2Tzd0QnJ2YVRmY1RjU3RQenNTUlRYUEJuNzdiYU85WC9SekhSWU5wUVF3QW9XTVdTQlFBNEJCTEFjV2p3TEFRaHNrY0F1QmJEVXpVaXFYNXF6QkQ5U011dGZNdVdLU3YyMmxZZ2VwZjByYWFzc2hSNFgvRStWMWx1U3I0WS9ucFI2dlREMjNUTG04Z3ZWclVPQ2xUYk9Fak9YVEZzV3dNUXhSK2ljVStUY3RRQ1c0dDh2MVFlamhKLzdOUlpTZjdUa1JDMjhBdGsyVVczV2xYQmRjNXd6dFE3RUpVaS9ZeVlCVE8xUHZUcGQydGZXajloVEVjQ1NFTzdqT2tRSFVzZVkyUm1UZWxqK1VCdklSVmY0RWNES09aSVRBcE1JSUlCTndrZG1DRUJnQXdSMkxZQ2xPTVJQOVV1ajRkakY0ck5FVk9wUEhmbnBrb05xTFVUblRLVnQxYWJ4ejh6c0huTTJybE8yTEVOa2tTRHJ2TGxUU29TNHRnMXorWVhxOTNFWEl0aldCYkJVb1ZPQ3haV0NsY3djYzIvWEFwajZsT0lRUDlVSDR5NUVzQ2tXWU9yLzNDS1kzbDlpL0w0UWVHUk9BYXpFU2pkMVhuZDlMOGJXQ2xpQUhaL29QcTVENWhiQnVnRjlZbGFvV0lDbC9qcDVEZ0tGQkJEQUNzR1JEUUlRMkF5QlhRdGdBcG5paURYVkw0M0trKzhZT1V5V3I2TzUwK09EQllSOE1rMU5zclI2WUhNVlU5RU81MHFsQXBqYW8yK20vSFk5dStNNGZZNTI2anFmckRQa2MyYXBsQkpSVFcyWnl5L1VVRCsxaVhweXgvSDNYQ3prRisvK3djb3ZONXJuUGtTQmJMbkZuT0YzMmI0NitFREtaWkU2UG1zUXdGSWR3cWY0WUd6ZkRiSkVlbHFHNC9SVVh2M25KSW9yNk1hSFN3c0krY1JBRy9FL25WaE9QN3V1ejE0dlhFblczeFI1ZDA0QlRIWE1JZWpwcXFSOG9IMDFkQkFCTEcraTdPTTZSQWN2aXREZGQxcWYxL1BqUDYwRFRQbXIxRnFwRFNxQkFEYUZLSGtoTUpFQUF0aEVnR1NIQUFUMm5zQWFCTEJVUjZ3cGZtbTZtOTByQjZldE5SZHpiZm15MXBKVFova1JxNTNrdkY3WFB2dU9uNmZXb3dXb0hOTjZEbXk5ZWhRMVVHT2h5SlN4eUkxZU9VTWJSNVg1aGd4SDJibDFqRDJmRWxGdFRyOVFZKzJTUDdvYm10bGpCb0l2VE8xN0c3aEFZeWxmZXlWcG53UXc5ZStYZy8rODJQcHZicEZ6RFFLWVdLUTR4RS8xd2RqT0hWbXlLZ3JpRFVvbWs1Tkh2ejhKK0xvZW5CT2QwV3VLSE5oTHVHdWorbnJQeC80K2RDQ3loQUNtTnVsZG9mZW5Bb3ZFZlAxNS9aTWdybXV0Zjk2TEhJa0E1cEU3NGQvMW50bTNkWWlFTzFsNzN5bS91eWZJOGZGd2FOUzM1RVlBcXdDWElpQlFTZ0FCckpRYytTQUFnYTBRV0lNQUpwYm5haXpCZE4waTV2Y28xUzlOZDJ6YUNGMkt4SFdwaVlNbXNVditVQ1JPVFJXUnZLYm8reVNIOGRxSVhIK0MwQ1FIemhKUHRNR3IzV2I1RXJxVm1kM0Z6SDdhNjlESTN5WEN5R0creHVlZGxUZTJ1VTN5SXFyTjZSZkthNnMydExvU3FqYkduSU43NWVqdmNwcXZPU0VSTnpXQzVGaTUreWFBeWVHekxMeU9IT21RSW45ZXRvbkUrZGtVa0lYUHJFVUEwenRHZ3RKRG5INmsrbURzRnFQcnB2YzFzMXRNRkdQa2MrKzV3V2RYVGdUSjNLSFJkMEsvTDdISUZjTDBEbnRXeUR0MElMS1VBTmIyV2ZYSm9sTld0TGtIRkxLK2xUanh5UUdBQ0dDNXMrcC9uOS9IZFloK3c1cEhzcmJNblVjU3Z2VDdWNVRySWJFYUFheDhMcEVUQXBNSklJQk5Sa2dCRUlBQUJQYUd3TW5ON0hJaFN0RlZnbWh6cG9IV1N4VFE5YnQvYUs1Q3ZUOVlKRWswYUtORUx0MWhpUjhYTXpPSkRkcWN5MEpNbTV4KytrcHo3Vk5SSWVVZjUzVWhhdG5uRjJxc0xLaXVGazY3MVVaRlNEdGRyMjV0RkdWUklrc09SYkZVWkRUeGxjVUJLWjJBUkJ4RitieE9pRkk2eEZxbGFUN29mNXE3NzIzOFdyMHhSSW44ZG5wVm0zdlNzL1I3UXJCOFVPUTcwblFDMnZqL2JIaDNLV0tpckhIMTd1cHZxTnQzdzJkQ3hOYzNOKytUdDRiM3hkSmpvY2lLaW1SM3JSRFZydit1MWZ2cUUrRTlLeEZadjZ2WWIycHBBYXdkTlgwMzVGNUE3d2w5N3hUVldOWTkzU1RmWFc4eHM3OE43K1QydXVQMGthZUVNUUw3dGc1cDI2djFoeUl5eThxelA0LzBYVmVrWmpuU2w1L01iblJYWmdJRUlMQXlBZ2hnS3hzUW1nTUJDRUFBQWhDQUFBUm1JbkRqeG9MdTZKR3k1M1orUDFPWEtIYmxCSFlsZ0swY0M4MkRBQVFnQUlGZEVFQUEyd1YxNm9RQUJDQUFBUWhBQUFMTEVsQ1FDVm5zeUlwaEtNM3QvSDdaM2xMYldnZ2dnSzFsSkdnSEJDQUFBUWdjRjlHS0JBRUlRQUFDRUlBQUJDQ3diUUtYRHRmVlRqYlNUZmxNVXRSTkVnUnFFa0FBcTBtVHNpQUFBUWhBWUJJQkJMQkorTWdNQVFoQUFBSVFnQUFFVms5QTY3M0hoU2g1UTQyVjAzdjVTeHB5L3IzNnp0SEFWUk5BQUZ2MThOQTRDRUFBQW9kRkFBSHNzTWFiM2tJQUFoQ0FBQVFnY0hnRUZORk1qdFhQT3RKMW5OOGYzcHhZcXNjSVlFdVJwaDRJUUFBQ0VIQUpJSUM1aUhnQUFoQ0FBQVFnQUFFSTdEV0JPd1lMc0tGTzRQeCtyNGQyOVkxSEFGdjlFTkZBQ0VBQUFvZERBQUhzY01hYW5rSUFBaENBQUFRZ2NIZ0VUbU5tY25CLzVFalhjWDUvZUhOaXlSNGpnQzFKbTdvZ0FBRUlRQ0JLQUFHTUNRSUJDRUFBQWhDQUFBUzJTK0RHWm5aMHBIczNNYlBuYkxmNzlHekhCQkRBZGp3QVZBOEJDRUFBQXY5TEFBR00yUUFCQ0VBQUFoQ0FBQVMyU2VBTWplWFhNV1oyaVpIdWZjak1ybUptWDlobTkrblZDZ2dnZ0sxZ0VHZ0NCQ0FBQVFqOGlBQUNHRE1CQWhDQUFBUWdBQUVJYkkrQTFuajNNck9qSWwyN3VaazlhM3RkcDBjcklvQUF0cUxCb0NrUWdBQUVEcDBBQXRpaHp3RDZEd0VJUUFBQ0VJREFGZ244cHBrOXo4eE9OTkk1UllYOFZUUDc2aFk3VDU5V1F3QUJiRFZEUVVNZ0FBRUlRQUFCakRrQUFRaEFBQUlRZ0FBRXRrUGd4R2FtcUkrUGlvaGZQekN6YTVyWmE3ZlRiWHF5VWdJSVlDc2RHSm9GQVFoQTRCQUpJSUFkNHFqVFp3aEFBQUlRZ0FBRTlwWEFMd1J4Ni9tTi82NDNtZG14b1NNL1lXWlhNN1BmTjdOek9KMTdUR1A1ZFRjeisrRytRcURkZTBNQUFXeHZob3FHUWdBQ0VOZytBUVN3N1k4eFBZUUFCQ0FBQVFoQVlEc0VmaWtJWDBjVWR1bnZ6RXpYSTduNldBaVFiRmtFRU1DeWNQRXdCQ0FBQVFqTVNRQUJiRTY2bEEwQkNFQUFBaENBQUFUcUVwZ2lnUDFyc0JMN2ROMG1VUm9FUmdrZ2dERTVJQUFCQ0VCZ05RUVF3Rll6RkRRRUFoQ0FBQVFnQUFFSXVBUktCYkJQbU5sMXpPd2piZzA4QUlGNkJCREE2ckdrSkFoQUFBSVFtRWdBQVd3aVFMSkRBQUlRZ0FBRUlBQ0JCUW1VQ0dCdk43TWJtdGxuRm13blZVRkFCQkRBbUFjUWdBQUVJTEFhQWdoZ3F4a0tHZ0lCQ0VBQUFoQ0FBQVJjQWprQzJIZk43UDVtOXJqR09mNjMzSko1QUFMMUNTQ0ExV2RLaVJDQUFBUWdVRWdBQWF3UUhOa2dBQUVJUUFBQ0VJREFEZ2hjeE15T01iT3pSdXIrRHpOVHBNY25tZG5YZHRCR3FvUkFTK0RNWnZaQ016dm5DSklYTkhQMDd1Q0NBQVFnQUFFSUxFRUFBV3dKeXRRQkFRaEFBQUlRZ0FBRTZoTDRpY2F5Nnd4bWRsRXorejltOWo5bTlnRXpPOWJNdmxHM0trcURBQVFnQUFFSVFBQUMrMDhBQVd6L3g1QWVRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VRSUlJQXhQU0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRMlRRQUJiTlBEUytjZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVFTUNZQXhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBS2JKb0FBdHVuaHBYTVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDQ0dETUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBSUZORTBBQTIvVHcwamtJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkJERG1BQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ01DbUNTQ0FiWHA0NlJ3RUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFBaGh6QUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFHRFRCQkRBTmoyOGRBNENFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQVl3NUFBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJTEJwQWdoZ214NWVPZ2NCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNDQUFNWWNnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRU5nMEFRU3dUUTh2bllNQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQkFBR01PUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNHeWFBQUxZcG9lWHprRUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWdnZ0RFSElBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCRFpOQUFGczA4Tkw1eUFBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRUXdKZ0RFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQXBzbWdBQzI2ZUdsY3hDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSUlZTXdCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdVMFRRQURiOVBEU09RaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVFTU9ZQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0F3S1lKSUlCdEYrTEdzd0FBSUFCSlJFRlVlbmpwSEFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUNHSE1BQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQVlOTUVFTUEyUGJ4MERnSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFCakRrQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdzR2tDQ0dDYkhsNDZCd0VJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUlBQXhoeUFBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRMkRRQkJMQk5EeStkZ3dBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VFQUFZdzVBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSWJKb0FBdGltaDVmT1FRQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDQ0NBTVFjZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVOazBBQVd6VHcwdm5JQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkJEQW1BTVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDbXlhQUFMYnA0YVZ6RUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFnaGd6QUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFDQlRSTkFBTnYwOE5JNUNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUVF3NWdBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJREFwZ2tnZ0cxNmVPa2NCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFJWWN3QUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUJnMHdRUXdEWTl2SFFPQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBR01PUUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNDd2FRSUlZSnNlWGpvSEFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdnQURHSElBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoRFlOQUVFc0UwUEw1MkRBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRUUFCakRrQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhzbWdBQzJLYUhsODVCQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSUlJQXhCeUFBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRMlRRQUJiTlBEUytjZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVFTUNZQXhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBS2JKb0FBdHVuaHBYTVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDQ0dETUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBSUZORTBBQTIvVHcwamtJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkJERG1BQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ01DbUNTQ0FiWHA0NlJ3RUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFBaGh6QUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFHRFRCQkRBTmoyOGRBNENFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQVl3NUFBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJTEJwQWdoZ214NWVPZ2NCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNDQUFNWWNnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRU5nMEFRU3dUUTh2bllNQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQkFBR01PUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNHeWFBQUxZcG9lWHprRUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWdnZ0RFSElBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCRFpOQUFGczA4Tkw1eUFBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRUXdKZ0RFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQXBzbWdBQzI2ZUdsY3hDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSUlZTXdCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdVMFRRQURiOVBEU09RaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVFTU9ZQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0F3S1lKSUlCdGVuanBIQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBQ0dITUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBWU5NRUVNQTJQYngwRGdJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUJqRGtBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ3NHa0NDR0NiSGw0NkJ3RUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJSUFBeGh5QUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVEyRFFCQkxCTkR5K2Rnd0FFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUVBQVl3NUFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJYkpvQUF0aW1oNWZPUVFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNDQ0FNUWNnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRU5rMEFBV3pUdzB2bklBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQkRBbUFNUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNteWFBQUxicDRhVnpFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWdoZ3pBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCVFJOQUFOdjA4Tkk1Q0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRUXc1Z0FFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlEQXBna2dnRzE2ZU9rY0JDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQUlZY3dBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQmcwd1FRd0RZOXZIUU9BaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFHTU9RQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0N3YVFJSVlKc2VYam9IQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ2dBREdISUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhEWU5BRUVzRTBQTDUyREFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFRQUJqRGtBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaHNtZ0FDMkthSGw4NUJBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJSUlBeEJ5QUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVEyVFFBQmJOUERTK2NnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUVNQ1lBeENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFLYkpvQUF0dW5ocFhNUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNDR0RNQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FJRk5FMEFBMi9UdzBqa0lRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQkREbUFBUWdBQUVJUUFBQ2F5QndHalA3b1psOWJRMk5vUTBRZ0FBRUlBQUJDRUFBQXRzaWdBQzJyZkdrTnhDQUFBUWdBSUY5STNCcU0vdERNN3VMbVQzYnpHNXJadC9kdDA3UVhnaEFBQUlRZ0FBRUlBQ0JkUk5BQUZ2MytOQTZDRUFBQWhDQXdGWUpTUGk2cTVuZDM4eE9HanI1QXpQN0RUTjc2Vlk3VGI4Z0FBRUlRQUFDRUlBQUJIWkRBQUZzTjl5cEZRSVFnQUFFSURDVmdMN2hwemV6azVuWnR4b3g2YittRnJoZy9rdWEyZXZON0pRRGRYN0l6SzVpWmw5WXNEMVVCUUVJUUFBQ0VJQUFCQ0N3Y1FJSVlCc2ZZTG9IZ1QwazhCTm05bkl6dStKSTIvL2V6SzVqWnQvWXc3N1I1TU1tY0hJek8xMFB3Um5NN1B5ZGZ6dEpZLzMwaTJaMjJ2QnZKemF6WHdwQ2wvNUpaWnhwQU9PKy9TNWs4YVhyampjWW1SSVBNck1IQko5Z2h6MXI2RDBFSUxBbEFxeHh0alNhOUFVQ0VOZzdBZ2hnZXpka05CZ0NteWZBNG5EelF6eExCelZ2VHBWUXNxeWxMbXBtLzhkNXRpOUVEVDJ1Y241NjRBOWpJbFZDODRvZitUY3p1NVNaZmE2NGhPVXpYc2pNM21obVp4eW9XdFpzc2dMN3grV2JSWTBRZ0FBRVppUEFHbWMydEJRTUFRaEF3Q2VBQU9ZejRna0lRR0JaQWl3T2wrVzlsZHF1WldhdjNFcG5DdnFoSzVDeW1ueDNRZDVkWnJtSG1UMWlwQUhQTjdPYjRSQi9sOE5EM1JDQVFHVUNySEVxQTZXNFJRbGN3c3ord3N4K01yaGQwRGY2ZzR1MmdNb2dNSkVBQXRoRWdHU3ZUdURuRzc4dnYxZXAxSStaMlNmTTdIL003QU5tOW5reiszYWxzaWxtUGdJc0R1ZGp1K1dTTDJCbWIrbGNGZHh5WDhmNjlwdU5kZHVMOXF6anVnSjZqSmxwVWQxUE9NVGZzOEdrdVJDQWdFdUFOWTZMaUFkV1NFRHVHRzVoWmsvcUJLMzU3OGFYNXhYTTdMMHJiQzlOZ3NBb0FRUXdKc2ZhQ1B6cXpORy81RlQ1eFkwUG5TZVkyWWZON1B0ckEwQjdqTVVoazZDRWdIeHJ2YWJ4SDNmeGtzd2J5WE8veGlIK1EvYXdMMWRycm0rK3lzeE9OTkIyV2JUSnV1L1lQZXdYVFlZQUJDRFFKOEFhaHpteGJ3VE9FcXkrRktHNW14REE5bTBrYWU5eEJCREFtQWhySXpDM0FOYnRyM3ptM012TVhvZ1F0cXBwd09Kd1ZjT3hONDNSOSt4WlpuYlR2V254anhyNmxWNUFoKzgyUVI3ZVkyWmY3ZlJEL3JEK3djeSsxL20zZis2SlFsL2Y0OEFRbmtQODI0ZFQ1ejBiV3BvTEFRaEE0QVFFV09Nd0tmYUZnS3krYmhpK3Y2Y2VhRFFDMkw2TUpPMDhIZ0VFTUNiRTJnZ3NLWUMxZmRkRzhrYmhtdVRhZUJ4aWUxZ2NIdUtvMStuejNSdEgrSS9NS09xTGtXdlJRMEpVdCtqM05kZTFaVkVxeTdPSGRhSTJ0cys4d016dTNNbWc2M3hmM2hOL1ZqV3ZvcWNPeDduTVRKWmdRK2xMSVRLc3htU0pwSEY2YVBCdnNrUjkxQUVCQ0J3T0FkWTRoelBXKzl6VEM1clowMGZjRTdUOVFnRGI1eEUrNExZamdCM3c0SyswNjdzUXdJUkNHNnRibTlrenpleUhLMlZ6S00xaWNYZ29JMTIvbjRxK0tFRktTWlpWUy9qOCt5a3plNGVabmFQWG5XY0VmeG4xZXpsL2lidDZEOC9mczdRYTlqR2labHJQZUFvQ0VOZzFBZFk0dXg0QjZvOFJPRnZqUy9XeFp0YS83amlVQndHTXViU1hCQkRBOW5MWU50M29YVys4ZnQvTUhvNEl0dE01eHVKd3AvaXBQSk1BQWxnbXNEMTRIQUZzRHdhSkprSmdUd213eHRuVGdkdDRzeVY4L2FtWjNUS2pud2hnR2JCNGREMEVFTURXTXhhMDVFY0VkaTJBNlpxUzdydkxMeGhwTndSWUhPNkdPN1dXRVVBQUsrTzI1bHdJWUdzZUhkb0dnZjBtd0JwbnY4ZHZTNjJYRHFBSTJnOUt0UGpxOXgwQmJFdXo0WUQ2Z2dCMlFJTzlKMTMxQkxDL0NWRWNVN3B6RVRPN2JBalJLeWZMcWVsekljL0hValB3WEZVQ0xBNnI0cVN3bVFrZ2dNME1lQWZGSTREdEFEcFZRdUJBQ0xER09aQ0JYbkUzVDJsbTF3NkJ3QzR4b1owSVlCUGdrWFYzQkJEQWRzZWVtb2NKZUFMWUg1alpVWm53U2s0NG50QkVXTHNUVnlFelNkZDVuTVZoSFk2VXNnd0JCTEJsT0M5WkN3TFlrclNwQ3dLSFJZQTF6bUdOOTFwNkt4K3BWd3A3bTJ1YTJZa3FOQXdCckFKRWlsaWVBQUxZOHN5cE1VNWdEZ0dzVzZOT09uUzk4ZXpPUUh6V3pDN2ZPTEgrSkFPMk9BRVdoNHNqMzdzS1R4OStuem1XblhOMWNpd0s1SnVESTltNTZzMHBWMEUrMUI1Rk4weEpZKy9oclFsRFkrTGwxdnFaTXVZOEF3RUlMRU9BTmM0eW5LbmwrQVM4L2RVUUw2MGR0R2U2OFFoTUJEQm0yVjRTUUFEYnkySGJkS085RjNTSkJWZ2YySG5ON0pWbWRqNkg1Rzgxenp4NzA3VFgyVGtXaCtzY2x6VzE2cGZNN0UxbWRzU2FHclhpdHVRdVVoSEF6QzVsWnJvT1Q0SUFCQ0JRa3dCcm5KbzBLU3VWZ0xlLzZwZnpjVE83aVptZHhjeGVpZ0NXaXBubjlvRUFBdGcrak5KaHRkRjdRZGNRd0VUMFJtWjJ0Sm5GZmdOUE03TmJIeGIrVmZTV3hlRXFobUhWalVBQXl4c2VCTEJoWGxpQTVjMGpub1lBQktZVFlJMHpuU0VsNUJQdzlsZmRFaDluWnZkcGZJUjkwd2xPbHJ1MnlHODFPU0F3QXdFRXNCbWdVdVFrQXQ0THVwWUFkaG96ZTdXWkhSbHA3ZCtiMlhYTTdCdVRla1RtWEFJc0RuT0pIZDd6Q0dCNVk1NjdTTVVDREF1d3ZCbkcweENBUUNvQjFqaXBwSGl1SmdGdmY2VzZYbXRtZHpXekQzY3FqdVhMWFZ2VTdBOWxRYUNZQUFKWU1Ub3l6a1RBZTBIWEVzRFUvQWViMlgwai9YaExpSkx5OVpuNlNySERCRmdjTWpNOEFnaGdIcUhqL3oxM2tZb0FoZ0NXTjhONEdnSVFTQ1hBR2llVkZNL1ZKQkRiWDcwN09NZC8xMER3THdTd21xTkFXYXNnZ0FDMmltR2dFWWtuRFhxc3BnQjJNek43Vm9RK2pwQjNNelZaSE82Ryt6N1ZpaFA4dk5IQ0NmNHdMNjVBNXMwam5vWUFCS1lUWUkwem5TRWw1Qk1ZRXJKZVpXYS9iMllmakVTOVJ3RExaMDJPbFJOQUFGdjVBQjFnODVhMEFQUHE0Z3JrYmlZZ2k4UGRjS2ZXTWdKaklzb3ptaWl5dHlncmN1ZTVzQUREQW16bms1QUdRR0NqQkZqamJIUmdWOTZ0OXJ2K0gyYjJHRE9UbitOakU5cU1BSllBaVVmMml3QUMySDZOMXlHMDFoT2xhbHFBZVhYOW5abGROemlCUEFUMkp6VXpXZGFjcU5mWnJ6U1dkOTllRU1BaExBNkhXT3VxTGY3bUZweG9sYXBDQUtzRWNnZkY3Tm9DN0xTaHovKzFnNzV2cWNxVE54dTYwKzM0dTFXTHArYkVLVHFGZmNmTXZoeXh6cWhWYjQxeWhzYmhCNkg5c2tMZHB6VG5lcWoyR21lb3JVdXYyOVkrdG1OdUUvYjVvQ3FYK1JuTjdNUm05dm5NakFoZ21jQjRmUDBFRU1EV1AwYUgxa0pQbEtvcGdOMnVDZS83cEFqZzBpaVFZd3VudHFxWTBIRktNL3NOTTd1bG1WM1V6TTRVTWlrU3k4Zk03SGxtOXVqR1pQbGJFeWVHRnFxWEM5RmRybTFtUHpNZ2ZIV3IwQ0wyRTJiMlNqTjdtWm5KUDlwY29sanR4ZUVZS3RWenFnU09OUmFTUHhrQ0tpaWs5QlVhLzNPYUkyTkpvYWRmYUdaUE43Ti9NYlB2SjdReDU1SCtCcXViVjNYcFJIQ29UbjB2TG1CbSt0MWNJOHladGgrZk03TzNtZG5EemV5ZE9ZM1p3TE1JWVBzN2lMc1F3Q1J1M0xHSlFQd25IYUhqaTJaMlB6UDdxeGwrNy9zN09zTXQxM3Zvbk0yVm5kOXNIRFhmME13dUh2bDI2YnYxb2VEcVFOL09UMWNXa3FaODY5VTdiVWJWL3B1R3d6YjFheXpKYWtQZlhuMFgzdHZNbDEwTFNnb2twRytaeHVIS3pkdzloelBSMUY0NTFuNkZtYjI0V2VlOGZ3VjlhSnU4OUhwbzZocEg4MDdNZjZmNTdsNTlRUHh0K3lYbS8yQm1Uekd6djAyMDl0bmErNkx0RHdKWStjZ2lnSld6SStkS0NTQ0FyWFJnRHJoWlN3cGdqdzFPSDhkdy81YVpQYnRnTER3SDNVTWlualpGZHpLekJ6bml5QlMvWlBxOVg5TE1IbUJtMTNRRUw2L2IybGpJZjlwRHpPeWozc09aZjUrNk9FeXBUcHVPWTh4TUoyS3hwSVhqSFFvWDZpM3ZQN2NmWGFjcVNkb1lhNzRjWFVIMGJPdi9mNDJZK2RzampSbWJYeGNNRzY5TE9KMm9LVkNYOE5wRkhnU3dYVkN2VStmU0FwaEVnK2VFOSs5UUQ2YThiK29RV1c4cEVvc1VsZm1oRGNQekZ6YnpuOFA3OU9XVmhNYVNiNzJhTGdGRDRwME9zOXBEcnB3dWZjM003bTltVDYzNFhVaXBYMk9ndFlQcUx2Mm10ZlhvRU8rSlp2YUk1bEJGQnloTEozMmZMMkptZjdhRDlWRHBHa2ZyeEZ1SGRlS3BDNEJKUFAzRHBvelBGT1RkOXl3SVlPVWppQUJXem82Y0t5V0FBTGJTZ1RuZ1ppMGxnR2tqOHVwR0JEbHloUFYvTnVHQUx4dXNubktISTNkUmZMWndJaXBSeGt1bEFsaXFnT0hWUC9SM25lYmV1ZUtpcW5SeG1OcDJuYklyMVBQNW5Bd3ZDSXZOcjZZVzNIbnVYSTJGbEV6ckwxK1FkeWlMck1KdTFaejZ5aS9kMUpRamdPa2JJUUZRL2lMNlYyT0gyb0VBOXI5VTl2bHFCVDdBNnZzQTAyL3BnVUU4aVAyR2IrNEVaNW42KzkvSC9CTGU5WHNxRmI3NmZWYkVNeDF3eWNKMlNzcjkxcXN1V1hZL3QxSmZhbjRYWWh3MGQyVng5SmRtZHA0cHdFYnlQajVZUUVyWVd5TE50UjVLZmVlWHJISDBHOUJCMkZUK1lxd0FVTExFKytFU3NGZFNCd0pZK1VBZ2dKV3pJK2RLQ1NDQXJYUmdEcmhaU3dsZ0VpWmUxMWd3bld5RXRVN3B0Ukg1WHNGWTVDeUtVOFdZdGhtNUFwaXVWT3FFVTlabGN5YVoydXRrOHBrVkZsVWxpOFBVdmtuNDFQWENxem9aNVA5TlZ6dHl4Uys5VXpWdmRESWZ1K2FZMnQ3K2M0clc4OGlKMWd1cEFwajZjcS9tbXRaUkdZMWRrd0FtVnJJV09ZUlVtenNDV0gwQlROYW1FckMxK1k0bFhUUFh1MmV1SytiNzlIdlFPMVMvNHorZG9kSDZaa2tJMEVGSHFSQ1E4NjJmNjlzZ2EreTdOOWJNRXBGcVg1Y1g5ck9ZMlY4RTF3d3pETU9QaS95U21kMm91VmI1K2hrcm1YczlOSWNBTnNlODBaelJnWnJXQXFWemY4WmhtcVZvQkxCeXJBaGc1ZXpJdVZJQ0NHQXJIWmdEYnRZU0FwZ0VsaGVaMmRWR09QOTM4RzBoUHhzbEtYVlI3TFZqcU80Y0FVeFdTTThQUGtaSytsR1NSK0xNZlFxdkRMYjF6U1dBU2Z5U01IVjlwMk52Q00vSThYQk8wbVpOZm56K0tDZFR3Yk5UR2FjS1lMOFdMQk5UTEwvYWJ0UVdZZ3J3L0RnTEFsZzV2ZGg3V05lVlNnNEd5bHN6WDg2VG1KbXVRZlpUem5zMnRYVVhhNFQzTnlmNEhaU3Z4Y3NVT0NwT2JjZStQQ2V4UWo0NlphazFWNUlRY0pmbUd1SVRDb1dBMUcrOTF0b1NxWFRkYjY2azk1MThNTllVTkdSMXBBT2pzOC9WNkY2NVU4Y2oxc3dsMWtPMUJURDVmbFVrWWZtanpma09wd3lYV012ZjdFdFRIdDdBTXdoZzVZT0lBRmJPanB3ckpZQUF0dEtCT2VCbXpTMkFwVmkxNkxyWDNTWXNKRk1YeGI4YmZHRGtESGZxeHV6bnc4Sm1xWVZydHc5VC9kak1JWUJKbk5JbTV6WU9iRGxNL3BYZ0xEbG5YRlMrZk1wcFRKZElVelk3S1FLWUxBbDBFbitoek00Z2dHVUNxL1I0YmU3ZWU3aFNzMWRiVE9wN05xY0RDalR5MW1CUkU4djNudURZV3NFM0RqVjV2dEpxY3BFUUlIOWNFbnB5VStxM1hoWjljc0pmVzhUb3QvZjJUbUNmblA3cE82ZzJINUdUcWRLelU3NXZRMDFZYWoxVVd3QlRzSms1NTQxODR1a2crQkI4Z2lHQWxmODRFY0RLMlpGenBRUVF3Rlk2TUFmY0xHL2pOV1dqbDJLaFUzcjFyVHRrS1l0aUxXcGtEWERXekxGTzJaamxYcXVVRTNzdDNCVEZyKy9RWG1LVXJCRTBMcklJU3IzV04yVUJXMXNBU3hFOU5Rei9HaGFEaWhTV2sxTExWNWthUHdseDJteDlxbk5sUlZ4MVFxM0ZxQ3dGUEQ4ZjJyVEpHYkY4bWVXbUZBRk1rUjVMTE5tbS9ENXorK0U5andXWVIyajg3OTU3dUx6ay9jaVo4cDdON1lrY1dNdGZvamExc1NSSDFZcnVWdE9TSjdldHUzdys5YkJDYmRTQmhSekpLNkNKTEJOYlpvcnFkMTR6Ky9YZ245SnpOSy9yZDFjSzVlWDBQZVZiTDR0aStSdFY5TjErMG50Y1Z6RDF2M2VaMlhjNkQ1d2hXS0xyMEVZQ1RrcjZyekMvVk5hVXBHQTVZMjBlS2xlaTdWODNRUXIwMzMvdlBkRDJRNWJYVjB3VUFhZUlrdjMycFFhOGFmT0pvWHkwcWYrS29OZ2RFd1VCMEJWbXVWQ1FaZUpQOXlxcktZRGROVVRkSHJKUWZWOFFPblZJOVkxT0czVGdLYkgxLzJZRVYxQTAyaitlTWxuMkpDOENXUGxBSVlDVnN5UG5TZ2tnZ0sxMFlBNjRXZDdHcTNTRC9YUEJnYXZDZG8rbFVnR2tYMTdLb2xpYm9TR0JRVDYwZE8xREM2L1dCNHdFSVMyNnRPRFN3dXVYSTFHVFVuMWNxYzNhYU1rcDh5Y1Q1MXNidVVyK1FMd0lSRk1Xc0RVRk1MM2pVcTRRNk5xUklveDlKSkZGOTdHVTAzMDVucFYxbUlSUHowK0xGdG15U05BOGlISFc1dThxWnZhRnpEWjdBdGhOUWp2NzRxeEVBVVg5ZkZsbnM2bTJhb0d1emVNOVFvUzdISjlobVUzUGVueElBTk5tUnB0TlhTMnBsWFJWUzV1N3ZqOUJDWndsQW1Xc1hXTjFsYjRYeCtyeTNzTzEySzIxbkRrRU1QWFZ1MWFzemJkKzAvKzRWakF6dHl2MU1FSE8zMi9iQ0NvU2x6eWhNRFhDc2lKRDZyMnI2SVNweWZ2VzYxMm9BNlIrTUJSOUR4U05XVmZ5VTk1RjV3NitIM1ZselVzNldOUHZOOWQvWlZ0dTZnR2FmS2pKV2w1K0ZvLzFHaFgrcnZlWC9KRnEzZUVkcHRVUTgxTDdvdVlwTUlKRXAzY21mS1BiN2twdzBtMkJPNGIrMUJMQTVINURyamo2ODBadHZHVXpUei9zOE5aM1dmN1VaSTN2V2ZESkNremY3ODhuanVHK1BvWUFWajV5Q0dEbDdNaTVVZ0lJWUNzZG1BTnVscmZ4eXRubzZlUlJtd2t0bENVYXhaTEVCSjBXZjZ3Q2UyOVJyS3R5Vis5RmdkTEo2UTJDVlZDc0NUcEYxb0paaTg5K2tqK2J4eVZjdzlNSnJSeTFsMFlVbENpamVuN2JZVlZxWGw5VEFFc1JwM1Q2ZjYxd2VwMDcvTEl5ZU5PSUg2RzJyTlN4N2RldHN1VVFPeGF0TXVmMzBKYnZDV0NLTkNYeHFFMnBUcGExNk5iOFROME01YkxPZlg1SUFKdEQySkFBK0E0ek8wZXZnYW1ib1p4K2pkVlZNZzlpOVhydjRadzI3K096Yzh3VGNZaEZWZFdHVndLTW9yTWRhdktDMDRpTC9IZktLaXJYUjZPRUtMRWRzc1JTdVJMU0pHU3IvTlRrZmV0VlpuK2RMU3R6aVJpNTE4NzBmbFUrUldMMHJsS1dYb1ZNOVVzcUN5UUpMS1ZSTkJYNVdnZHdYakFhSFNCY3IyZmxsRG8yRXRpZUhkWlZzVHo2M1drK3llckxPNXdhSzBkclRRVnFrTmdxNnlzdmVXdWNvZnl5MUhwd3BuL1ZWRXMrSFhvcDhOT1dFd0pZK2VnaWdKV3pJK2RLQ1NDQXJYUmdEcmhaM3NaTDRvKzM4TlhpVUJ0RmI1SFlZbjVpWTIybERXU3RFTnplb2xqQ2tDelMydCtmTEZJVVFiSDB4TGJ0aDY3UHZjcnBkNm1QcS82VVRMbE9xandsL3RTOHhhR0VPMWxyZFUzL2gzNHlLWXUvS2FmTUtRdnNVb2Y2YlgrOFBwU2Mzc1lFTUcwR0pHQzF2dVAyZVZPT0FGYitJUmw3RDg5aFFWZmV5dWs1eHl6cTVoTEEyaGJyOTZWMy9uVWI2eEVKOExLcWZOYUt4T1BwWlBOTGtJaWdxNHh5dkQ2VzVBeGNGa1E1VmxyZHNyd0RFVjE3azVWVmF2bmV0NzdmajZudFYzbGVIL1JNcVhWd2lsOVNyVEZ1WEdHOWtocmtvRlRNazhXOExPcGphWXJsZDc5Y3JlYzBoL1Y3OXBLM3h1bm5uK0pTSW1XK1RJbDY3dlYxTFg5SEFDc2ZDUVN3Y25ia1hDa0JCTENWRHN3Qk44c1R3R3Fpa2RXR1RON2xMOE83UnBGVGI4Nml1SWJQTWJVdFpVRlY2NHBueXlMRlYwdUpieFd2THlrQ1dJcjFsTVF2V2QyOUxtZHdPODk2Z21NdDN0Nm1KUGYwTmlhQWRWRk11Y1phaUxScU5nU3djcHhqNytHNWhhSHlGcGZsSExPbzIxby95K2dzbTh0N3o5WDRWbXJOSzU5aGl2dzRsQ1R3NmpyWTJ4Tzd2b3R2ZmVvMTBkenZna1JaK1pUU3QzTXMxUmlEYnRrcExodEt4THlVdnRUNlBpZE9sZU05NXExeHVnOVBEU3FrbXdGeXAzQ3JTRU4xcFZMKzJWTEV1NUwrcmlFUEFsajVLQ0NBbGJNajUwb0pJSUN0ZEdBT3VGbExDR0R5OVhIdjVoUlQxak0xaGE5MjJGSVh4Vk9zai9wVFJOY0VaRWsyOXB2V3dsN1hRT1VmcEdaSzhiR1I2MlRWV3h4NkFsaEttNmFLTzU1RDZ5bE82dnZqNDFsR3lLRytUdVMvbHppd3FRTFkxSVYzWW5ObWV3d0JyQnp0Mkh0WUZoTzZTcllWZnpFSVlPVnpwR2JPbjJ5RXB6ZjIzQUoweXk4NVNCbHJuM2R0WFg0Tzc1Zll1ZFJ2ZlcyeHhmc21xUG01M3dVdmFJaUNETWlIYWcwM0VWMjhucFd6bnMwVjgrVFVQUmJFcGViYUszR3FGQWxnSmVMZlVIc3VIWDVmZlQrVjdiT3k5TmJZeXZmWVZoTUNXUG5JSW9DVnN5UG5TZ2tnZ0sxMFlBNjRXVXNJWUMxZVJmdVQzd2RkUzlBQ3RaWVlscm9vZmxCd2hEdTFYa1c4MG1MMzJwRjVVM0lWTVhVYWVsY041QU5MUHMrK2tsamdGQUVzNVVSNXF2aWxibmdMU3MwcFdUU2tpbEllbXRqbTVEOGJaK3VYYlh5eVNaeElTU2tDMkZ5Ym5aVDIxWG9HQWF5YzVOaDcyQk9meTJ2Y1RVNzVnOUwxOTlQM3F0YzFlem4zMWthWk5EOEJDZmp5UFRpV2F2cTQwN3IzcjRJL3JhSDZjcjVYcWQ5NitkelVGZGVheVR2MHl2a3VuREg0QkZXd25iRlVlaFhSNjdQR1EwN3g3eDk1TUVmTTg4UlVWWFBQRUZUQWE5dGNmL2ZXT0cyOXRlWk5TbjBLMEtHcjJGdE5DR0RsSTRzQVZzNk9uQ3NsZ0FDMjBvRTU0R1l0S1lCMU1jc2E3TTdoQ2tDcEk5UzJ2SlFCWHk1eUFBQWdBRWxFUVZSRmNjMFQ3UXNIeTY0eDU3NXppeG5lZ2xNQ253U3cxS3VHM21KdGJCT2VjaVZUNHBldXZ6eGhvdUNwUUFieVJUT1U1amhOdlZ5SWVLYnJERU5KNHFmODU2U2tGQUZzVHNFMHBZMDFua0VBSzZkNEtBSllPU0Z5MWlMZ0hlREk0a2pCYkJTOHBWYTZXVVNRK25xSXZ2ZitoTXBTdnZXS0tuaU5DajZ6K3MzUllZOThsaDBaYWFkOHpMMDBvUi9YREFGWHh2WUVpajZvUURGekJUangxakFTcFBVTlRJblM3SW1wYy9jbEFYZVN5NG9TLzU2eHV1VkEvNzZSQnhURitWRXBqZC9UWnhEQXlnY09BYXljSFRsWFNnQUJiS1VEYzhETjJwVUExaUxYWXZFT0JSR2F1a09Xc2lpdTZYVDBkc0hIdzlpMGtkZ2pzV2FxcGRtVXhWWE90WklTQVN4Ri9GTDdwemlUYmZ2dm5aWXJjcU1jejM2NzR1OVlJdVBiek94blJzclVsUjB4VGttZUFKYnJCeWVsemwwOE0yWTFKMEc0bG1XZStpVlJVbGZwK2ttUldtV0ZVVE9OMVZYVFFrYnRSUUNyT1dxVUZTTndnZVo2L2xzR3JQRGFQSW80ck1PcG11bGk0ZERvVkNPRjZ2MmRFZzB5NVZ1dmIrL2phemErVTVZbmFxUitkMk1IT3FwdXpqNjA3MUN0aWNSOUxNblNYRkVkWTBudlI2K2MzT3VVY3d5ZHQ4WlJuYWxqbDlvK1dRektrbTRzMWY2R3BMWnJxZWNRd01wSkk0Q1ZzeVBuU2drZ2dLMTBZQTY0V2JzV3dJUmUxbGt5QjA5MWhOc2ZycFJGY2VySnJEY1Z2QVZmcnZXVlY5L1kzejBMcFJ4UnlGc2M5aTNBVXAwQzYvVHpZUk5DbmJkOTkvcWFzbERQNWV3eGVZYVozU0t4VUU4QTI4bzFOOCtuVFNLdXZYaXM5dVpsVEZUZnl0ellpMEU5a0ViR3JMRWtWRjg1Q0dRMWNZejVmbXZyU1AwOWVkLzZITXVsa3Y3SnIrZHJJcjQvVTY0T25pNlVjZkdSQnN6ZGg3YmEyRHpRTXlsQ3FBNkkzdG9jQ0o1bHBDKzFyYXBLeGt4NXZPLzVIT3MyYjY3bXJDRksrMTJhVHdlY3VxYWVHdGw5cUo2TG10bUx6VXorVzd0SnZuT25DdXlLR3J2bDYvSUlZS1V6bDN5ckpZQUF0dHFoT2RpR2VRSll5c0pVODFvZlN6bjhWRFFnTGV4MEJVL1h4UFFoVFVsVG5LUjZDNDJhQzByUEdrbCt6dVFmNnJNcG5aN3dqR2VobE9NODIxc2M5amZoS1dHK0ZRVkppeHhaNVV4Tk1ZdTduT3N6dWUySUNWYzV3b1FuZ0tWc05ITGJ2b3ZuRWNES3FZK3h5NWxuNWJXVDg1QUl4S3lQY3I0Yk9jeThiMHlxR09COTYyWFpwbldIdmd0ekpFL3dTZkZuNWxuZ0xmV2I5Nnp5RklGU0I0ZmZqSURVTlUwZHRvMmxKYXpoVThiWm0zODUvdHRTNnRNejNseEpuZk9wOWRWOHp2dWQxYXlycEt3MXN5dnBUejhQQWxnTmlwU3hLZ0lJWUtzYURob1R1WHJUd2trUndNWkFudGpNNU9SVnp1ZGw0ZVdsMHNoTjNzYzZaVkhxdGEzOXU3ZG96TEc4U3ExejZMbFRtdGxMbW1zbFZ4MHBKRWNZOGhhSDNRVzV6UHAxNVNFbWJOYU9admpVU0VqeE9jT0p4NFNybkRubENXQnpXTEJObVZ1bGVSSEFTc245Nktxd25NRDMwMUx2ay9LV2szT2ZDSGpmamJubW0vZU5TYkdjRW1mdld6LzN4bGhYT01WSVZzbEQ2ZC9NN0ZKbXBtdmZZOGtUalpZNkVLbHhpQ1lyYjEwTEhVdXBWMXZuL2cxNTgyOE80ZGV6ZXB4N3JrNWg2djNPcHBSZEkrK2EyZFhvSHdKWURZcVVzU29DQ0dDckdnNGFNN01BMWdWOGlSQjE2andPOWVjM0VTSmxtcDlqT2VSOXJGTVgxeWtUd2x1ODF2WWpFV3RUVEZqSnVjcmlMUTViQVV4aXBwd0Fqem4vVjFzVmpWSCtTMlNpWGlONUd6WTUyZGRtUS8rdG5YU3RZMHpvUzlub3RPMnBOVTYxKzFlN3ZDRVJSNWFkOTg2SVNKclNKbDBoMHRYYS9qeDhjMk9KS3V1V21tbXNyaWtIQTBQdEd4UEF0cjdRcnpsV2xPVVQ4RVNQT2Z6b3FWVzZTaVZCWU94S1ZhclZrL2V0ei9ITjZOTTY0UlBlOXlqRjJ2enVUa1RFcFE1RXZPOStpbFZVN051V2N3aFhNaFk1ZWJ5K3BzNi9uRG9Sd0hKbzVUMjc5ZThpQWxqZWZPRHBQU0NBQUxZSGczUmdUYXh4QlRJVm1RU0Y1NFdJVDJONUpHUW9RdEpyVXd0Tk9CV1dLSFByalBKaWozcU9UWCszV2VnL3VWSmRYakdleFUxcW1PMlV4ZUVkZzVQaTgwVWE5U296VTBTb3Izb056L2k3NXk4bG82aXFqOVlTd05hMFNaZ0tpQ2lRNVFUSE5wSmJYK2lYRXlObkNRSHZXbFpKbVRYeXBBb1FuZ0JXVzVnZTZsdE05RW1KU0J5em1wckRGMVZzZktiMHhWczM1SHdqYTh5aFdCbGVXMVBuWDA0N0VjQnlhT1U5dS9YdklnSlkzbnpnNlQwZ2dBQzJCNE4wWUUxY1VnQVQybk0xQXBoOFM0eEYxOU16dVJFYmwxd1UxeEtkYWt5eldtM3hGb2R0RkQvNWR4dExHbE5kZDZncGZxa3VieEZaZzJOSkdUbUwrOWdtSTZlY2tuWXVtUWNCckp6MjJCeFowcUswdlBYazNCY0MzcmR5Vi8xSUZTQzg5dStEQURaRmRLbzlQbFBhNHZsRFRSM1QybjBhS3M5YjQ4elJWbS90c21ZUngvdWRMVEZtc1RyV3pLNEdHd1N3R2hRcFkxVUVFTUJXTlJ3MFpzRXJrRjNZc3BKNllvUit5aldDYm5idlkxMXpVVnhMZEtveCtUeng4aDVtOXFpRWlyekZvVmZFdndkZlpQTGhWanQ1aThqYTlhV1dseU5jSVlERmZlS2tNbStmRzVzVGN5eUt4K3FxK1U0NXVabnBtcmFjZC9mVFdEMTZoOHFTWkF0SjEyUjE3ZjJEVytqTXl2dmdmU3QzMWZ4VUFjSnJmODNmNVJpTEthS1J5cHlhditZWWVlc1p2Wk9PR2FuUSt6YW5qbW5OL295VjVhMXg1bWlyeDJlTzcxVXRsaGN4czJjNzdpNjh1dlJkTzlQQVF6V3VXU3VTcEs0U2J6VWhnRzExWkErNFh3aGdCeno0SysyNko2TE1zYUE4YXdpZGZjNElreHcvR0VzdWlyMEZZK3Exd3hyVG9kYlllWXZEbExiV2RuenZpUjBwYlpyekdRU3dFOUxGQXF4c3hzVitmMk5YcXIzM1VGbExkcE1yNWRyWWJscTJ2VnE5YitXdWVwd3FRSGp0bjJPOTBtY3lWY0NhbXIvbUdIbnZrZGg2eGhONFVzZTBabjhRd0phZ21WYkgyRzkxemNKZldzL21md29CYkg3RzFMQXdBUVN3aFlGVG5VdWdsb2ppVnRSNVFMK0RaNW5aVFNPWmNpSWhMYmtvbnJKZ3pHR1U4cXpuanl4VmpQTUVNRVU4L0pTWlhkOXAxQndpbUxmSVR1RTB4ek1JWUFoZ1IxV2FXREhINUdPL1llODlWS2xwaXhTREFMWUk1dU1xOGI2Vnk3WGsrRFdsaWlWZSsrY1d3RTRTWERUb3V2OVFTcG5MYXhMQVl2N0l2TDU0MytiVU1WMWl6bmxybkRuYTZ2SFp1aENFQUZZK3N4SEF5dG1SYzZVRUVNQldPakFIM0t4ZENHREM3VzNnY2lJM0xya285dHFkS2pyVm1ISzEycEt5T0pSRjN0UERWY2RZMi84a2hFWFBpZUlaSzg5YlJIN1V6QjVrWnQrdUFUU2pqRythMlJzVG8xMXlCWklya0xHcGRiWW04TWM3ekV5V3NkMFVpK1RxL2ZZenB2TE9IL1UyMmp0djRJWWE0SDByNTRpa21vTHZTMmIyRmpQVG5JOGxyLzF6QzJEZXR6TGxZR1JOQXRpVXRuamY1amxFcFpTNU5QU01OMjV6dE5Yamd3QldPcHJiejRjQXR2MHhQcmdlSW9BZDNKQ3Z2c083RXNBODY2V2NCY21TaTJJdmhQbGFva0RtUkpOS1hSeWVJVVRuakVXQ2JNWE5oNXVaMmpBMXhheGpWSGJPUEpuYWx0TDhoeXlBbFRKYmU3NmFHKzJ4OTFkTUdFSUFXL3NNV1dmN0x0WWNZa2prT3RWSTg5YStLVi95V3orRXlIUDgvZ2t6dTR5WmZUNHkvRTgxczF1Ti9EM251MTFqaHNXK1RaNHZWay9na2VYNDFjM3NLelVhT3JHTTFEWE9OeWJXMDgzdThWbjdiMjBxQ2l6QXlna2lnSld6SStkS0NTQ0FyWFJnRHJoWnV4TEF2SHB6aEkwbEY4VmV1NWVNMmpibDlMWTc1WE1XaC9MYjl0ckdRYW9uZ3Qwek9PQ2ZLb0o1YlV2WmNPejY1NDBBdHVzUnFGOS9UUUhzV21iMnlvRW14cXhKeGdRd1hWWFc3M09ONmFSbWRoMHprNGpRVFZpQUxUZGEzcVpjMFh5dmEyYXljRjFqV3ZKYlA5VC9Dd1JMdGRPUHdFbFp0M2ppZFk3LzB5bGo1SDFiUFdzMmlhaDZiMTF1cEJHZk5iTkxtZGxucGpTeVVsNnZyeW5qbHRzVTc3ZUdBSlpMOUhDZVJ3QTduTEUrbUo0aWdCM01VTzlOUnoxQnArWkdyd3RsWHkzQUxoR3NqazR4TXNJNVZ6ZW5USkpUbXRsTElsY1NjNFNoM01YaEpjM3MxVTZFb0IrRVUyNkpQMU5FTU0vbmluZEtQWVZ4cmJ3SVlMVklycWVjbXUvRjI1blprd2E2RnJPZ0dOdEVyM2xUTmZhZVFRQmJibDZmcnJGUWVvMlpYWHlreWcrYjJSWE5URmNTMTVoMkxZQ05pZFV0cTVUZm43ZjJXZW9RemJPdTlzVFFXUFJhOFloZDRWNTZidVd1Y1dxMER3SE03RTFtZGtRUFpzcHZwQWIvZlM0REFXeWZSNCsyRHhKQUFHTmlySTNBcmdRdzd4UlVKNHR5Tkp2aTIybkpSZkdZdjU1MlhEL2RXR0JjMXN4MCtqbG44dHFSdzY5a2NhaXhlWjZablNqU1NZbGdOelF6aVlKVDBvUE5UTTU2aDlMU1YwWksrb0VBVmtKdDNYbHFDbUJqOHp2MkcwWUFXL2Y4V0d2cjl2MUF3ZnZXUDYyeE9McjFqUEJqM3lKVmU0OWcrUnhyZ25lSU5vYzEwbEI3dkhha0JDSjZySm5kS2RMWkpWMUN4SmlYckhHbVRpTUVNQVN3MGptRUFGWktqbnlySllBQXR0cWhPZGlHN1VJQTh4YmhHb3ljaGF5M0tLNjVXZlVzcjVZU1pINDVuT1NQdlZOeVRwRkxGb2VxVitMVzN6Z2ltSnpoMzlqTVhqVGhGM2F6RURWMHJJaWN2azVvUm5IV1F4YkF2bU5tTDZoOHBVcS9RVVVrUFZsdlJPYTQvamRXVjYxM1N1eGRHSHNISW9BVi94d1BQcU1uNGl4MUJhOWtJTHh2L1p6aWtmZWRUTFY0OGl5dmxySnFIck04YmNjbFpSNTQzK2FjZzdpUytaQ2F4eHU3T2VZTkFoZ0NXT3I4N0QrSEFGWktqbnlySllBQXR0cWhPZGlHN1VJQU8zZHd4TnVQZXRZZGhKeVRRMjlSWEd1ejJyYlAyMEE4SVp5S1RybjZGNXVRZW8vb2RQWU9Jdy9saW5DbGkwTzE0MTVtZHBUejYva3ZNL3VWeGlIdTJ3cC9aWjdqNW5lYTJUWE03S3VGNWMrZDdaQUZNTStQVEFuN3NZM0ZIRmNyeHVxcTlVNkpYVW1MV1pNZ2dKWE1IUEtJZ0hlTjd6bG1kdk9FaUl5N29PbDk2K2NVank0ZEl2LzJoZmVXUStyMTBaUURRRmxWUFg1R3dITGg4T0x3M1J5cUpwV2o1eE5OMy83TE53Y1cvelJqWDFLS0xsM2pwSlE5OWd3Q0dBSlk2ZnhCQUNzbFI3N1ZFa0FBVyszUUhHekRkaUdBM1RFSU9HUFFVMDlTMi96ZW9yaldacld0ejFzSXkzL0tsY3pzUXpQTktrOUFURjJJdDgyYnNqaVVZMnNKZnJkSkVNRWtVcjJyZ0lubnQwWlhMYSs1WXVmZkNHQm1ueXNZOTl5TnhUNEtZTEVONUxYTjdKZ1JDQWhnRlNmVWdSWDFNMmIyMXNidjNGbEcrajMzOTJzS2J1OWJyN0xuRUkrOFF5ZlZtM1B3SmF2b295TWd0SGE0aXBsOVlRcXNTRjV2RFpOcXVlV3RIZFNFeHpTSFUzZWI2QXQwS2dhdm5WaUFUU1Y4d3Z4RWdTeG5pZ0JXem82Y0t5V0FBTGJTZ1RuZ1ppMHRnSjJyT1JHVWMxVXR3c2RTcmtXUHR5aXVMWUNkSmppQlB6TFNCem0xMWtKY1lsN3Q1UGxQKzVPbXdqL09xSFRxNGxDbnliSklHd3Z0M2pibDM4M3MxOHpzZlJsdGF4OVZmLzRva3UvNVpxYnJHTHB5dWJaMEtBS1l4SndMOWVBcm10d2J6ZXhiRlFkbFNRc3d6VzJKMmJvSzJVM2FvSDZrUXAvR3JqSi9QVmhPdkgra0RnU3dDdkFQdEFoWklEMHpYRTBmUS9BZ00zdkFqa1dMb2JaNTMzcmwrZWZ3bS8xOHhmRzljTEJhUCsxSW1iSzZsbUQ5cXNRNnZVTXNGYU5JeW85TUxDL25NWTIvMWlleDcvVk56RXlXZ0NuSk85QmNRNUNMcVd1Y0ZBNzlaN0FBd3dLc1pONG9Ed0pZS1RueXJaWUFBdGhxaCtaZ0c3YWtBQ2JoU0E3UnIrclF6ajNCOVJiRnRRVXdOVjlYTko4WTZVY3RCL0Q5S2lRd1NGQTQ0MGpkSmFmM05SYUhxV1A3cjQzMXdkWE1UTUVDY3BKM1lxME5pQmJ0ejgwcGRLRm5EMFVBV3dpbkxTbUF6ZDJuTVNITHMrSkVBSnQ3WkxaZHZtZUJKTkZDRmtnNmpGcFQ4cjcxYlZ0ckNuaXljbjUyWTlGOWd3aUkzRU03N1FVZWJXWjNpWlNwNjRPbFZ0T3hNZFAzVjBMZFdBQ2JYT3V6RkRGUGg1NEtuTE1yTndVMTFqaTV2d01FTUFTdzNEblRQbzhBVmtxT2ZLc2xnQUMyMnFFNTJJWXRKWUFwYXFFY3Bzc2ZSQ3g5TEN5OFpTMlVtcnhGOFJ3QzJKbk43UFVERmkvZE50ZGV3S2FJVENVTC8xcUx3M09HYTRqbmN3YXVSQVNUSlk2aVRsNW5CeHNHVmFsTmtEWkFyMjRzKzQ1Tm5aamhPUVN3VEdETzQxc1J3R0srZ0hSUUlKRml6SUlVQWF6dW5EcTAwbEsrWHlYdjZWU09zcWo4amVDSFNsYWlxY243MXJmbDFEcUFTdlZ6S1o5cHowcnRSSGpPTzh6U1k3WEhJT1VibmRzWE1YcGc4NjY2djlQL3B3Uy9wYnV3MHE2MXhza1pZZ1F3QkxDYytkSjlGZ0dzbEJ6NVZrc0FBV3kxUTNPd0RadGJBSk53SWNzY25YYWVPb0h5N1lONWZzS2pQMzdFV3hUUElZQ3Bja1ZKMGxXU1dKS1FwNVBQZCtkMGFPQlppVjlQRGRIdnhvclMxUStkN240bXM2NmFpME5kZzN1NWM4VlZ6WHR6aUNMNW54bHQ5VTZ1VmRRbmdraFc0M3BhMjdRTG10blRHNHMvUmUrNmxPWDdzMElBeXhqa2hFZTNJb0RGb3NIZHI0bHlxZWltWXdrQkxHR2loRWUwN3BJbGpUYm9zaVQ5Zm9pZys2ZkJKK0Zjd1VyU1c3aWJKejByNXRMM2RLdzNHb3NybTlsZmh1K1VEalMra2RGOTcxdmZMVXBXYklwVS9JcU04cnVQcXEyM0NCR3B4NnlsOUx5KzdRb3NrSHN3a2lvY3ZTY2N2aWpLN1pTa1EwZzV2cjk0cEpEWG10bjFNc2RFeFowOUhBaWUxMm1nUkVMTnV4elJjNnhJZlpjVlhPZmhDVkJxcm5FU3FqdnVFUVF3QkxEVXVkSi9EZ0dzbEJ6NVZrc0FBV3kxUTNPd0RadERBSk9mREMyeTVKTkovNVAxVEVxU2NLSUZhNjYvSUc5UlBKY0FsbkkxUXYzV2lhY1dmUkpDdFBuS1RWcm82UXJHejBjeVRqbnhycjA0dkdTd2xCcnpsOUoySS9kYWhIaHI0M1JMQjZBMlB2SnZvdXVRVXphM1dzREtENDdHVHFrMG91R1dCYkJIT2FKczdseFBlVjZXVXhxYmZ0THZMRWRRVGFrcjVabmZNYlBYcFR6WWUrWnladllHTTFOL3Vpa2xpaXNDV0Jwd3ZUTWUyL2tOOTNQSno1TG04SlQzUkZwTDF2ZVVEbFZlbG1DVnJVTWNXUVhKVWZpVTlITm05ckRnQjFMbGxEZ2U5NzcxL2ZicHUzajNFRkV4NTl1cmd6dEZPSlkvelZpYUdvRGxEQ0hReFNXY2V1VGE0S2JoUFpNN1YxdlJVWWM0RXFyRzBsU0w5UnNGeC83ZVBrYytRTFV1MURYdmtxU0RWRVhpbHUreDFNQW50ZGM0S2UxR0FFTUFTNWtuUTg4Z2dKV1NJOTlxQ1hnZmh0VTJuSVp0bG9BbmdPbWtUaUd4VTlMcEI1eEZwK1RUTS9JN29kTzhYTjlReXVzdGl1Y1N3RlIzeXBXQ2xvRXN0TzRUVHFSVHJnRm9zWHJmeU9hdHk3Yms2bU9iZjQ3Rm9hemVkR1V4ZG5LdSt1V0xSRmU5VW4yRDVQRFd5ZnhkZ3grYjFNMlBOc3l5VUZEVUtrV1c3Q1lFc0JQK21tUGlYdXB2ZjkrZlUyQUhDUW01YVV6RWtvaDMyV0ROT0ZZbUFsZ2FiYy9LYWFxQWtkYUs5VDZWZWxpaEhydzBmTDlrWFpzcXd1aXFvNXpEUzB6cWl6eExDR0F0K2RSdndZbURCYkdjejU4bllkaHFSRGpNR1lOM21OazlFcjlwMm0vSUl2dlBPcUpqckV1NVZ4LzdaYVZHaEc3enlScE5nVzBraEhuZlovVkYzLzQ3QitHclBWUkZBRXVZcER0NmhDaVE1ZUFSd01yWmtYT2xCQkRBVmpvd0I5d3NUd0JiQXMwVThVdnQyNlVBcHZwekZyQjZYcHN1TGY1MURmQ0RQY0E2bFpmellVV0hrNStXbERUVnQ4WWNBcGplZFhjSUlkQTlFU3ozV2tTcXVOYXlrOWlvemRzeGpTWER4NXNydVIvdFFOVUp2Q0o4L1dJUXZtTFhReERBVGpnYkVjQitGTmswVndDTC9lWmVHYTVOZnp2eTQwY0E4OStNcHd0WEhXTy9hWlhpK1Z2emE5cmZKMUo5WEhWN0tFdWhsd1Ivai9KUjFmWFhxVU1iK1lDOFRBaDJJNnV2c1RTSEFQYm53UTFBUHhwdDJ3YTFYYjh2K2Uvc0hycm9XM3YxSU5hbFdxem5XakRIWmtuSk4wMzllTnVBVU43MlJXdUlmdlRhc1Rib2ZhS3JoS25DNWxnNUtYNUsrM24xZlM3dEN3TFlldDg5RndrM0YvbzNBVjRRckRMWDIvTGR0d3dCYlBkalFBc3FFMEFBcXd5VTRpWVQyTFVBcGtXa2ZHbE51YnEwYXdGTWc2QUZ2M3lOZU5mK0pnOVlyd0F0Sm02ZFlVRTFWUDhjQXBqcXlkbGM1WWg0cWI1WmFyTkdBRU1BRzVwVEpRS1lSRmNKNEVQdml4U0xWUVF3LzljdDY1ZTNORmNnWlprY1MxN0VUYittL1g1Q2dvOTh6c2thWjhrMGh3Q20zNDZ1RlN0WXlaemY0cW1IZG4zTytxYkovWU1DQlhrSFJyWEhTTlp1c2t4UHNVcFBxYnRFQkVzcGQrZ1pCTEJTY3VSYk13RUVzRFdQRG0wcklvQUFWb1NOVERNUzJKVUFwc1dXbkJJL3JzRG5WeC9IR2dRd3RVayt1bVJwRlBPelVYTW9GVmhBRzVkY24ybjlOc3dsZ0ttZW5Hc1JUd3BYSEZJVzRyc1F3UkRBVGpoNzhRRm1WdUlEYkV6QVV0UkhYY0dWY0JOTENHRCttelJWQUZQZ0RCMWdmTjR2Y3JOUDdFSUVtMHNBT3lwWVVLWmN3UzhaVURtbFZ3VEwzR0F6S1hYSkRZVGFmVVRLd3hPZktmV1BsbEp0U3RDZWxISzhaeERBUEVMOGZSOEpJSUR0NDZqUjVpZ0JCREFteU5vSTdFSUFlMzR3Z2E2MWdGeUxBS2F4bGJXQmhKd2J6RGpRWHd0T1pHVnhOdlhLZ3BvNXB3Q204bk1Xdy9KNUprZkpuaytRRnU4VlF5VE91VVZIWFoyOGJiQXV5R1crWlNmNE0wN3owYUwzUFFxa2ZnK3lVRGx5b0lmYVhPc3ExbGNRd0NaUExhNUE1aUhVK2xTT3pKKzJnQUFqbjF3S1pwTHJDRDMxVzYrK1hEOWN3VXE5MHBoQ1M0TExuWnIxaTc3QmM2VnpCVXN3UlN5ZEsrbDdwdWpjVTZOVHg5b25mMnB5Zy9DSWpFQkl1ZjFGQU1zbHh2UDdRQUFCYkI5R2lUWm1FVUFBeThMRnd3c1FXRW9BaysrTnYycXVKY2hIUjlkblNJMHVwaTZLYTlTVlVrWWJkZWtKWm5iK2xBeUp6K2pFVm1YS2NxN21Bbnh1QVV6ZHk3a1drZXVQUkZHaEZBUkFpKzNhMTBlK2FHYTZWblAwQkVzN0JMREVDWjc0Mkw0TFlBcXVJSjgzUSt1Qmh3U3JUZzhGRm1BZW9SLzlYUTdEdFFFZlMzcW55cHBIbHJ1a0h4RTRXNGlNT2NjaGpnTEI2SDJxaU0rcGh4emRjY245MWw4MFJBT2UraDNXZDBEQ2w2eXpjZzlBU3VhVnhDTmRpWlNUL1RPVkZEQ1NSOWJpdXVyNitBbmZzOXptYUQ0cEVxdCtaeldUbk9qcjkvM0poRUtYV09QMG0zSG9VU0FUaG9WSFJnZ2dnREUxTmtjQUFXeHpRN3IzSFpwREFKUDF3aGNhWjdSdmJSeTZ2eWs0ZkZkMHg3a1dqcm1MNHFVR1RZdFlXWG5vbXFJMnZhWGl6SCtFaGJCTzVvK2RvZkZMTFE1VEl6aHFVM3FYSVBibHpCazV0TDkzc05TYTR2OUZWekJmRkJidDd5emNxSFdIQ1FHczdxVGRad0hzSk1GaVVaRlArK2s3Wm5ZbE0zdDdBaTRFc0FSSXdmSkVtMjlGZ3h4Szl3eGlUODU3SnEzbS9YL3EzQ0VLOFMwbVd2RG84T3U1NFgyYUUwRnlpR0RKdC80VXdkcnBvUVZpa2l5bEhtaG1zbHFmNm1xZ1pFYkllazFyQjFsR1g2cWtnSkJIZ1YvVWYvVkRrYjEza1RTZjlIdjd2MmFtTVNsSnBRZXBTNjF4dW4xQ0FDc1pZZktJQUFJWTgyQnpCQkRBTmpla2RBZ0NTUVMwa0wxWStMQmRObGlHYVlIVUY4VmE4VkQrVVY0WEJNUkQ5azJUQkxmM1VCc3kvUnBOdVBocmhRaVBaeG5aeEgwdWlMVVN1aFJSUzc2WFBsVkI5Q3BwTjNuU0NPeXpBS1pyVFc4MHM1TU5kRlZ6VUhPMkc1MXVqTWlZQUNieGRrcEFrYlFSS0h0Szc3cWhkOTUvTjFINXJ0QzhHOTliVnF5YlN3Y1JpckwzZ0VZQVVIUkFDZXdTR1NVcUtCQUI0bGNjb2ZqOWJQaDI2WHF1ckttR3hsRmM5VDZWYTROM0JiWTZCTk8vMVdKY0lvQzF2V3Y3b2FBNzhyVjEzbDZVeExiOXVvYXNxSzZ5VWx2VHQvZmt6WnJnY3VHS3RINHY1d2pqMEI4OVdhdnAwRXlSTGw4YnZtc3A3eFQzaDFUcGdlNThrdTg5UldrZG1rOFM2c1QvSFNHYXE5WkVjeDZrVnVvZXhVQUFBaENBUUo4QUFoaHpBZ0lRZ0FBRUlGQk9ZRjhGc0pqMWwyam9pcFd1SnFXa01RRXNKZS9hbnBsYkFGdGJmMmxQT1lFcEFsaDVyZVNFQUFRZ0FBRUlRS0NZQUFKWU1Ub3lRZ0FDRUlEQURnaEl1Skhsd1JsM1VQZFFsWEp1cmtBSi9XdXVzdWJSZGJjMUpGbGlxVDFmN2pUbThzR3FjOGo2NjdObXByK24rTE5Sa1FoZ2F4aGwyckEwQVFTd3BZbFRId1FnQUFFSVFHQWlBUVN3aVFESkRnRUlRQUFDaXhMdy9LY3MycGc5cWF4djFhUWdFTHBXSlpGcktDbUlnNjdvcFY0VlF3RGJrNGxBTTZzU1FBQ3JpcFBDSUFBQkNFQUFBdk1UUUFDYm56RTFRQUFDRUlCQVBRSUlZUGtzdXdLWXZ2djNhaHcvSHpWU3pKZUM4L3NQWlZTREFKWUJpMGMzUXdBQmJETkRTVWNnQUFFSVFPQlFDQ0NBSGNwSTAwOElRQUFDMnlDQUFKWS9qbDBCVEpGZzVaRDZpSkZpY3EyL1ZNeVlBS1lBRG5KOHZjYWtRQ0RYR2JoS2l3K3dOWTdXT3R1RUFMYk9jYUZWRUlBQUJDQUFnVkVDQ0dCTURnaEE0UCt6OXliZysxenozZi83c2pWb1NjVGFTS3l4VTM4TmlWcGlqeWdxOXAwaWhBaTF0cFphWXdtMUw3R2xqd3FwV211TkxGVmJTUkJWQksybGdxZVdvcFlFanlYOXo5djMzSEdiek13NU0zTm11Ky9YdVM3OTBlOVpYK2ZNM0RQditTd1FnTUNTQ0NDQXRkK3RkVkhuVWtHVTJydWlteThYbVY1dkl1a2JMWWVvRThCZVY4UVJ1MC9MdnNhcVhuZU9FTURHMm9IbGo0TUF0dnc5WkFVUWdBQUVJTEJsQkJEQXRtekRXUzRFSUFDQmhST1lXeEQ4SmVBc0I4Ry9zcVIzUzdwc2FmSVBsdlNLRGd0Q0FPc0FqU2FMSjRBQXR2Z3RaQUVRZ0FBRUlMQnRCQkRBdG0zSFdTOEVJQUFCQ0VCQXVvNms0OWF5VjlwVjhmYVNUdThBQndHc0F6U2FMSjRBQXRqaXQ1QUZRQUFDRUlEQXRoRkFBTnUySFdlOUVJQUFCQ0FBZ1IwQ2Q1RDBKa2svRHE2UC85b1JEQUpZUjNBMFd6UUJCTEJGYngrVGh3QUVJQUNCYlNTQUFMYU51ODZhSVFBQkNFQUFBcEtmQVE2VjlFMUovOWdEeUlHU0RxcG9mN0trbzNyME8yVFRYU1FkSnFrY0MrMW5rbDRneVFIOEtSQm9Jb0FBeHZtQUFBUWdBQUVJTEl3QUF0akNOb3pwUWdBQ0VJQUFCQ0FBQVFoTVRnQUJiUEl0WUFJUWdBQUVJQUNCZGdRUXdOcnhvallFSUFBQkNFQUFBaENBQUFRUXdEZ0RFSUFBQkNBQWdZVVJRQUJiMklZeFhRaEFBQUlRZ0FBRUlBQ0J5UWtnZ0UyK0JVd0FBaENBQUFRZzBJNEFBbGc3WHRTR0FBUWdBQUVJUUFBQ0VJQUFBaGhuQUFJUWdBQUVJTEF3QWdoZ0M5c3dwZ3NCQ0VBQUFoQ0FBQVFnTURrQkJMREp0NEFKUUFBQ0VJQUFCTm9SUUFCcng0dmFFSUFBQkNBQUFRaEFBQUlRUUFEakRFQUFBaENBQUFRV1JnQUJiR0VieG5RaEFBRUlRQUFDRUlBQUJDWW5nQUEyK1JZd0FRaEFBQUlRZ0VBN0FnaGc3WGhSR3dJUWdBQUVJQUFCQ0VBQUFnaGduQUVJUUFBQ0VJREF3Z2dnZ0Mxc3c1Z3VCQ0FBQVFoQUFBSVFnTURrQks0dTZRMlNkcTJaeVRNbHZXTHlXVElCQ0VBQUFoQ0FBQVRPSW9BQXhtR0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRMkdnQ0NHQWJ2YjBzRGdJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUJqRE1BQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ3NORUVFTUEyZW50WkhBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFDR0djQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFZS01KSUlCdDlQYXlPQWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFRU1NNEFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBd0VZVFFBRGI2TzFsY1JDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSUlZSndCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdZMG1nQUMyMGR2TDRpQUFBUWhBQUFJUWdQNWZ6K1VBQUNBQVNVUkJWQUFFTWhNNHA2VDlpejZmSXVrSmtqNmN1WCs2aXhQWVY5S2VGZFhPa1BRQlNUK0xkN0c0R241dnU3cWtGMGw2aHFRVFIxN0IvU1h0THVuVGtqNHI2YnVTZmozeUhCZ09BaENBUUM4Q0NHQzk4TkVZQWhDQUFBUWdBQUVJYkIyQlBTUmR0MkhWUHdraXhQL2JNRExuTGw3ODd5RHBDRWw3aGJXZElPbjJrazdmc0xYT2ZUbC9KK25lRlpQOHVxVDlKSDFyN2d0b09iK3JTSHFocEp1SGRwK1FkS0NrNzdmc3AydjE4MHQ2UnlIMjNyVFV3WDlMZXBLa1YzVHRtSFlRZ0FBRXhpU0FBRFltYmNhQ0FBUWdBQUVJUUFBQ3l5Wnd3Y0lLNWEwVkw4S3JWWjBwNmM2aHpySlgrcnV6dDhYWFB4WWl4SzRWaTdxWHBOZHYwbUlYc0padEVjQXVXVmhkdmFTd3VycGR4WjQ4WHRLekpmM3ZDUHQxTVVrZmxYVFppckVzQ3I5dGhEa3dCQVFnQUlIZUJCREFlaU9rQXdoQW9DV0JPcmVGYnhSZk0wOXUyUmZWSVFBQkNFQmdQQUsyZ0hxWnBJTWJobnlOcEVNMjBEWEt3dCs3Sk4yZ1l1Mm5TcnBKY0FrYmJ6ZVdOWkl0aUg2YVVhelpGZ0dzNmR4OXI3QzB2SkVrbjcraHk3VWxmYkN3Zmp4dmFhQWZGSzZZMTVmMGhhRW5RUDhRZ0FBRWNoQkFBTXRCa1Q0Z0FJRTJCT29lV2w4bjZUNXRPcUl1QkNBQUFRaU1TdUF1a3Y1ZVV0UHpvMFVPaTBHYitFSEQ3bWZ2azNTT0N1cC9GVndqUjkyUWhRejIrNUxlTGVtUEpQMkRwTmRLT3FXSW4vYkxIdlBmRmdITWlDeTZPdDdYZVNwNHZWblNQWHF5VE5rR2oxRmw1ZmpKd2pMc0ZwTCtKNlVUNmtBQUFoQ1ltZ0FDMk5RN3dQZ1EyRDRDdVFXdzUwdTY0d0l4UG5PTFltWTRZTFFENTE0NnhNMDVsNlJycmJrUy9WRFNweVQ5U3BKakJuMUcwbzhrK2Y5UGdRQUU1a0hnT2tYY3IrTnFYQURMTS94U2lGVjAyanltbm0wV3RvQjdsYVQ3VnZUb21GTTNsUFRsYktQdGRMUVNqK3lDT1ZhNWJiQjJ5elhlSHhlaTZJY2tuVyt0UTd2S1drejh5K0kzL0hNZEJ0b21BY3p2YXk4b1JLYUhWM0F5eDRPSzM5UjNkbURZcG9rdE94MEV2MXpzbnZtd05oMVJGd0lRZ01DVUJCREFwcVRQMkJEWVRnSzVCYkM2L3VaT2Q1T3RCWFlKYmhsM0RTL0JmOWhqTXh6UStDT1NqcFhrWU5QZjZkRVhUU0VBZ1c0RUxoV3V2NzFiTlArbkVERGVZdlltbGF1RnJJOVZzY0NjbmU4UkdkMzh6RzBUQkRDTFhJNVZWUzYvQ0w4VkgrdHdRT3ArKysybWQrc05URXB3K1NBaVhxS0MxZEFCOFhlVGRIeGh4YmRQeGRqM2xQU0dEdnRIRXdoQUFBS1RFRUFBbXdRN2cwSmdxd2tnZ08xcy82WUpZTGFNdUtVa0IrVjFCcTZoaXEzQ2ZJWmVYcmg5Mk1wa2pPQy9RNjJGZmlHd0JBSmR4Sy9WdW80cXN0UWRWbGo1L0d3SkMwMmNZNU0xemhBeG1aWXVnRFhOdjQ5WXRXMENtSStuWStzZFdYTk9IenlnVmJsZFZ6OHM2UTlLWXhQL0svR21RVFVJUUdBK0JCREE1ck1YekFRQzIwSUFBV3l6QkxBTEJQY0hDMS9sNExoRG4ra3ZCcGNNWjZhaVFBQUMrUW5FTWo1NnhIOHUvbVAzdktxNFdQNzdxeVVkT2tLTW92eXJyKyt4eVJybmNFbFB5aWpPTDEwQXEzSi9YSkh0OHlGb0d3VXdoeEt3TmJRRDBwZUxYVzhkZTg4SmhYS1h1dmhmZlFUTTNIT2tQd2hBQUFKSkJCREFrakJSQ1FJUXlFZ0FBV3dIWnA4SC80emIwYmtyaTEwUExZSmhQM1VDNFd0OTBrdm4ySGtEYUFpQmdRbFkvSHBqc095c0c4cmlsaTI4SEp2b2lJYjVXQ0IvemdabGh2VHo4OU9LdUlWUExLMzV4NFh3OWVSZ3BlTjRoam5LMGdXd3B3UW1aUmEyNW5Wdzl5N3h2OXpYTmdwZ1hyZERDemdSUlZYSkxiNTZETWZzUERxTVd4N1RzVXlma09PUTB3Y0VJQUNCc1FnZ2dJMUZtbkVnQUlFVkFRU3dIUkpMRm02dUVUSjVYV2tHeDNySkhHZUFqeWxBb0pLQXhTOEh2VzVLTUxJZTQ4c3UwQytUZEhBRFQ4ZUJlbTVHeTZpcHQyNDlGdGgvaDN1NmhZbmM3cDVOQXBqSC9YbEhFQlkycXVKSnVidGNRZkF2VnNUNCtrQWhwRmI5VnJ3MWlDcE9mdEtsYktzQVZuY2V2aEtFNlBkbXZzYjJLR0o1L29za3UwS3ZGKy9ialVPTXppNzdSeHNJUUFBQ2t4QkFBSnNFTzROQ1lLc0pqQ1dBemNFMHYrbkZaWW5DalY5eUhlRDVXUTN1VG1NZjdpVnlISnNSNHpVVDhMbDJoa05iTXYxUGtXakJzWFMydWFTSVgxVlpIbFBhVFMyQzNXYUViSGs1enM2NkFGWDNPL0xUa0hYeWxJNERYamVJVStjcHRYZGN4VnRJT3JGanYrdk5IQmZTZ2t6Vis4YmRnb1ZoMTJHMlZRQXpyM1d1VGhUekdFa1dGSC9kRldaRHU3bzkvSHh3ZlhiY093b0VJQUNCeFJCQUFGdk1WakZSQ0d3TUFRU3duYTFjbW5Cei9oQmcxeG1mdWhRTEMvOGg2VE9TN1ByeXFjSjl5RitRL2RMc0dERzJScmlzcEtzMFdDVlVqYnMwamwzWTBTWS9BV2NxUFVEU1F3b0xocHV0Q2JxdmszU2YvTU10cHNjVXQwZGZ2MmIzOFlwVnBjUU1tOUlkRWdGc1o5UDgvUCtTRUp1dHZJMG5oLzN0bTcyenlYWE84UnR2MURPcjd6WUxZQTVCOElxUW1mRk5BOGJYYXpvblBqOFBXOHlkallsQ0FBSVFDQVFRd0RnS0VJREEyQVFRd0pZbmdGMjhFS2I4a08xNExhbmxURWx2S2R3bS9rOXdrVGc5dFdGNE9idElFZXgzWDBsM2tQUm5rbmF0YVk4QTFnSXNWWDl6anV5bVpxdUdxckxOQWxqS2RkNGtmcTE0WGxMUzJ5WHQwM0RlbmlmcGNRTyt1TmNOalFDMlE2WXBpTDh0SVYrYTRWN1JGUHplc1NNZEc2eFBXWm9BNWd5T0ZuL25XSnhJNXY2Rkpka1pwY25WdWJEbXRCS2NJdy9tQkFFSWJEQUJCTEFOM2x5V0JvR1pFa0FBMjltWXBRZzNLUy9GNjBmTk1XbjhZdXZnMmVXSDZhNUgwcjlWZXdkcm5RZVdndTR2aFdQWHRkTXVMd0hIUERwSjBsNDEzVzZyQUdaQjVCOGxYYlVCdDEzdTdseGtvSHRQd3BZNFh0QUo0YnF0cS81NlNSWUZjdDBuRXFZbEJMQWRTbldCNmY5ditORHhueWt3RytvMFdRNzFEWDYvR2piM3MwVFBKVWViMi8zMzJkRmEwMVNvQ3hsaFY5eDNWRXdKOThkcDlvbFJJUUNCREFRUXdESkFwQXNJUUtBVmdkd1ByWFArQ3J6MEdHQXA3a3lyemY5bHlJaG10NGpjUWFEWEQ1aGRQeHc3eGk4U3RoSkRBR3QxK1cxOVpRU3dzeCtCYTRmNFFYczJuQTVmMzg0Kzk3WVdKeWhGQkhNZ2ZidFZmN3RGdjMycUlvQkpUWUhwbmNqQUZtQzI4T2xUbWl6TS9ISGtYc0VGdnM4WXVaOGwrc3dscGUzU0JMQW1GOWF2QllFN1pkMWQ2OWdWOTZpdWpXa0hBUWhBb0k0QUFoaG5Bd0lRR0p0QTdvZFdCTEJoZGpBbHE5dHE1SThWOGIzdUxza1B4V01WQzJGK1ViUFladEdOQW9FVUFnaGd2NlhrWjBBTFFuWUpQVjhEdkM3aTE2cTdGQkhzcTVKdUxla0xLUnZZczQ0ejJqbjQrOXlMNzZtMnhuTEpIUVRmUXFiM3ZGeCtFZUp5ZWV3K3hlZnFhZUdEU0o5K2x0VFdnZWozay9TdGhra3ZUUUJiejNJNnhWNXNxelh1Rkt3WkV3SmJSUUFCYkt1Mm04VkNZQllFRU1CMnRtSE9sa3YrYlhCV3FTTVNUc3dyUTJiSUlhMitFcVpCRlFna0VVQUEyOEZrZ2RzdjVFK1BVR3ZqOWxqWGxVVXd1MDNHM0NzZGcrZ2ZNbGdmSlIyRWhrcm5MQVNpSzRha0hVN1VrYVBZbXViRmhkRDN5U0ErdGJsZjVoVEFtcXlTajVOMFVBWUwzaWJycnh3czU5akhKZ3BnZFc2eVkvRkhBQnVMTk9OQVlNc0lJSUJ0MllhelhBak1nQUFDMlB3Rk1BZTdQMUhTZVNMbnhZR01uekZCSU9zWkhHT21zRkFDQ0dDUzQvcFp1SFo4bjZiaVdFMTNDdmVDdnR1ZEdrdndCY1g5NUFrWlJKaXU4M1VXMnRlR3pMU09kL2JXcmgyVjJ0bnE3QVBobnVvNGlZOElpVVZzWFJjck9RVXdKMzk0YjBnMHNqNnVYUjd2Mk5MRnRXcmUyMmo5WlE0cEF0aUJRV0NNN2ZjVWYvOVNzS1QrZVJpOHlVMTJyUGtoZ0kxRm1uRWdzR1VFRU1DMmJNTlpMZ1JtUUFBQmJONEMyTzVGOXNWakM0c054d1ZxS2s3QjdoVG9LUzl3TXpoMlRBRUN2eUd3N1FKWVNyd3ZjL3BHRU1nK25mSGNYQ2hZUDkwaTBxZkh2RWNSY04rQnRzY3FGd2hpL2tQWEJyUW9jSE5KcC9XY1JGMUFlSXNtdHJTMXlQYnJoakZ5Q1dCTk1aMGNiK21BUXBqN1VjKzEyc3JQUXQrRmUvYXp0T1lwQXRpUzFsVG5KanZtR2hEQXhxVE5XQkRZSWdJSVlGdTAyU3dWQWpNaGdBQzJzeEZ6ZFlGTWlWUHlha21ISW43TjVJcGlHbTBJYktzQVpwZEhXeDA5cTRqUGRJNElNTHZwMmZKcmlKaCtqdDFuSzY4SFJlWmdZZjNSUmFJTEIyVnZFb2ZhN0gxZFhZczFIeXJjTDY5Y1VTSEh2YTRwbHRJWGc4ajJ6UkVFc0hVcnRQSndENWJranhwOWlnVTI5MkZYMW0wcm15U0FPZm1OM1dIM3JkakVNME9jTS8vYnR2aSs0L3R2MWYzbmY0cnIvZlJTaDIrUjlNaTJnMUFmQWhDQVFJd0FBbGlNRUgrSEFBUnlFMEFBMnlFNlJ3RXNKWFpMTHF1STNPZUsvaUNRUW1BYkJiQkxCcmUrbXlZQWNwYkhnd3Zyemg4azFPMWFKVFgrbVB2L1JNZ1MrUjlkQjB0c2Q0aWtJMnRlK1B1NFF0WlpmNjJHY2piRTEwZm1tTU1DckdrZUZ1RnVKT2s3aWF6cXF0bGE3bjAxQXNjWm1jOVVrNWlTZTZ3VUxMWVN2SU9rNzZaVVRxaGpTMnk3SUE4dC9sWk41ZmFTTEQ1VnZTUDJFZnAyazNTOHBIMUtnenJPM28wbGZTU0JDMVVnQUFFSTlDYUFBTlliSVIxQUFBSXRDU0NBN1FDYm13Q1dFcnZGWDMwZFErYUVsbnRPOVg0RXZEZDJIeXZIWkhNZ2JiOGtMYWxVcmVVbkZWLy9oMXJUTmdsZ0R1WitGMG0yWW1ySzhyaGkvVHhKanh2SnNqTTFBNlhuWm11d0o0WVlSVzJDeDdjNVF4YVpMUDVaeENtWEZDdXR1ckdhWEFKOUg3WFlVTFo4S2ZlVlF3QnJta2VPM3lKYkRiMUxrdU5IbG9zVEtkeXd5RGg2U3BzTmlkUnRDdWFmWXowWnA5cTZLd3ZXUGh1K0w5NjNneXV3M1p3ZDQrK3hIZUwzTlZsL2VTRjlCTEM2ZSs4UTU2TTFkQnBBQUFMYlF3QUJiSHYybXBWQ1lDNEVFTUIyZG1KdUQrbVhrZlRoNG1WNWo0YURjcFFrVzBya3lvdzI1Wm5jUlpLL1NOY1Z1MlNzQWdLWDYvanIvRDBsM1UzU0ZkYjZjUnRicXJ4S2t1T1hkT0hrZVYyanNIejUweENUeCs1VDU0K0ErcS93OHVuZzNYN0p6QjJYYmRjaUk2aGQxNnFLTFJTKzMyQ3BZQkhHZ2NVZklPblBKRGtqWUZXeHVHclh1Mk9DUll6NzdGcWE5dmFpSVFqNEg5WjBic3NIeDdaTEtVMW5KS1g5a0hYOEVtMzN3VmlnZTgvQjU4WDdjL1FFR1JqdGRtamg2VW9KTUw0aTZZR1Mvbm1nZWRybDYvMDFZcUZkK3c1cmVVMzdHZHZ1bmcrdldOc3ZDb3VYbTRWN2JtenBPUVN3dW94Ky96ZUlWdjhabTBUazc0K1M5RGMxZFY0VTNHOGRhRDlYY1pEMmp4YjMyY3RXZERpMzM5WTJhN1liNlV2QzcreXEzVXREWW9nZlJ6cnllYk5GNFd0Q2xsZC9ISEZjdDQrM21JQi8xM3dmcUN0OXhDcmZrMDZxZU1ib0k2cTFXQnBWSVFBQkNPd1FRQURqSkVBQUFtTVRRQURiSVQ2M2gzUUhmL2FEZDEzeHc3Uy83bjl1N0FNejBIaTNrZlRPaHI0dEhOaWlZYjFVQmNxdTZ1S0RoWmh6NndUTGpsVmJ1NFRac3M3Q2kxK0sreFJieUR5enNCaDdjUkUvSmZiQ2xEcE8zVFhyOW5Vdkx4YSs3QkwwWEVsN3BRNjBWczlpM2w4WHdreFRiS1M2Ym1ONzIyRTZsVTJxemtpdXZydjJZNkhTUXMzaDRTVTQxbyt0bTJ5RjlJVll4UUgvYnV0R1c2bDVIaW5GYnBGZExHTmlmVGRad1hheGZtMksvZFZHRk9vcmdEVjkzSEFtWDR0amZjci9GNFJEQytYbDhxMWcvZlhsUGdOVXRHMnk1SnpiYjJ1YnBmdWUrYVlLTjFLTHY0NnQ1dCtXcXVLUEpNOHBYREFmVXZyajl5UTUrNlEvTHNTS1B3NVlBTGExWUYzeDc4dit3VFU1MWwvNTczOGNZdTJWclZHZDdNSjllcTRVQ0VBQUFvTVRRQUFiSERFRFFBQUNKUUlJWUR0QTV2U1E3cGZtdDRldnhYVUg5bzNoNjNJWHE2WTVYZ1F4a2FRc2Jsd3pDR1o3Sml3bVZRQXpkMXZlV0t5d3VKYXpPSXVmclFIcVhwamFqTlZXQUx0MHNPUnkwTzAreFFLZXN3RytwNlhGVDJ4dis4eHB2ZTNjQkRCYjJsazRqR1Z3WGEzQlZvb1d5M0lKcFgyNFdqQzFDUC84aENEOXEzSGVMTWxKTy9wYUw2M1B1MGtFc1BCbU1TSEZPckVwSUx6Rm9KdUVUSnNwelBvS1lIVWZOM0pZZnpXNWpucHRPWUxyVnpIYVJBSE0xckYyZmR5N1lzRVdZSnRpMGZsZTVOL3dxZ0R6anR0NXE4SnFPU1pDcGlUQThkUzYzdmY4Y2NjeHdNcnZucW0vbHluWENuVWdBQUVJUkFrZ2dFVVJVUUVDRU1oTUFBRnNCK2ljQkxDNkw3T3JyYmZyaWgrZ0hlQjRVMHBNSkZsL3lMOU95SXBWWmVGUXhTUDJRTy9mWHIvTTJGVXl0L0MxUGgrL05ObHF3TmRjSC9lak5nS1lYK3ovUVpJejYrVW9YZFlRMjlzYzgrcnpJcGhyL0ZVL0ZnT2VWSEtiYWhyRExvOTJaZmErVGhGa3UybHVGdS8rdm5ERHVsd0xTQmI5bnBaUkNIUGNOTStoNmhuWm1Ta2RLeTFXbXU2cEtZSHYxL3Z2STREWlZmQUROUzZtRnQ1OWJycmVHOHpuTVlWNzlCRTFNRkpqbk1WWVZ2MTkwd1F3V3dINzk4Q1dqVlVsWmpFWTI0dFk4cHFtR0hIbCtkamQxVUoxMjJJTHo3ZFdOTElRZjUrMm5WRWZBaENBUUZjQ0NHQmR5ZEVPQWhEb1NnQUJiSWZjbkFTd0I0WDA5WFY3YXZlSld4U3hiQnp6YUZOS1RDUlpDV0NyZ01RcE1ZcFdiR0lDV0ZNQTU5eDhZNVlES2VPbENtQ09XMmIzblpTQTZ5bmpydXEwWFVOc2I5dU0zVlMzcXlWRXJ2SGJ1anQ2M0UrSHdQaERaMVhzczBhTHdzOE8xa050K3JGQWJ5dVd6L1lRZFR5ZXVmb2MyNDI1WE95bTVZeUpwelpNekdMR0c0bzZkNnFvOCs0Z2ZyY0o1dDlIQUt2TGJwbkROYkhwdzRCalJWa01QN25OQnJhbzJ5U0FUWDFkdGxqR1dWV2JZbTg1TnFmdmFUK0tkT3h6NTdoL3p1SmFWZjRwdUtXWCsyazZyMVg5T0ZSQ2FwekU5ZloxRm1aUENHNzdYYmpSQmdJUWdFQnJBZ2hnclpIUkFBSVE2RWtBQVd3SDRGd0VNTHZxMkwzUnNVZnFpbU5LK1NGMWswcE1KUEZMbEY5VzY0SllON0dZa3dEbWVmWjkyVTBSd093YWVweWtWQ3U1dG1lcFRTYSsyTjYySGJ1dS9sUXYybllYdEFXaHJVSXUwbUl4VHc0eDJkcUlMeTI2ejFyVno2ZDJtWEpTaExiV2hCYjViTmxrUWF4clFnakhPenl4SXZPcUZ4bDdZWGNtU1k5ZGRrZHpIRVdMUXYvYWtsUlhBYXpKbmJPdjlWZVR1NTZYOS9nZ1luYTFMb3NoY3ZEN2Z5ayszRnk4b3VKVTEyVnN6blYvYjRxaDFqYVF2Yk00MnNycXBqV0QrVnpldFNTbU5WazhWblhqL3QxSDIzQUlEczV2aStSeXNmaG53WmdDQVFoQVlCUUNDR0NqWUdZUUNFQmdqUUFDMkE2TXVRaGdmcm0wWU9QNFFYWEY3by9IYnRncGpva2tmb215dFlmZGg4N1RjdTA1QkRCYjNUbkdrY2QzQU9RZmxLeGFMRFE1Y0xCZnhsTmlQdlhKNEJrVHdHejU5YmMxOC9EYy9UY25IRmlQbmVSTW1tWjh2eGJ1YnFrdjdiRzliYm1kdGRYSGZ0RzI4R1VCeFFrTzJsZ2tXanowUys1bmNpMTh4SDVTRTA5VVRlbmJRUWh3a08yMnBTcUdWMG9XeWlicnpsVDN5ZkpjdXdwZ2RWWkZmUVh4bUtWUnFzVlMyejFacjkva1lqcjJkZGxuSFRIQnFzdVppWW1UVGpoeGFCQ0hIYS9SbG1GVjJUUjlUbndOV2FCYkwxMHN3cDJaMThLWm55WFdpd1ZTVzVkYmJLWkFBQUlRR0lVQUF0Z29tQmtFQWhCWUk0QUF0Z05qTGdMWUh4VXZpWDVoK1lPYVUrb0g0T3RKK3VxR25lS1lTR0tMT0xzdytVdjNlckZGeVNza3ZWS1MzY2hXRmlZV3BQWXBPTjI3aU9YeWg0V3IyZTBhc2tEV3ZkRDZCZHNpajRXdk14SjVwMXJLOU1uaTJTU0FPWkMyWDE3S01WeHNoV1AzcTQ5SDNORlM1MjhjcVVHNy9iSzFXdzAvVzhXOE4reFJWWlczdEhEdnNVdnd6eFAzcVcrMWZjTzVjektHTm1WSlZsOU42N0xZYXhHM1RXeXd2bFpJSzVIRmxpN09ybWUzeUpoRldaM29WT2QrbHJLWFhRUXdDOHorYUZFbGpxY0t5WFZ6ODhlU2QwaTZmRVdGdGhaTEtldXZxck1KQXBqdmZYNE9zSVYxVlhGc3V3Y21uTG1xdHJHNGxYWkhkSWJlWndXMzRhbytMTDQ1UTZ1dm8vWFM1Wm1nN2tPYlAreGNmK0lzdEYzUElPMGdBSUdGRWtBQVcrakdNVzBJTEpnQUF0ak81czFGQUlzSlFWMis5aTdoZU1iVy9kZVNIT3gzM2FYdmJTRytpaC9hbTRyRmw1ODB1SWlVWDJndGZEbGJtbFBRZHcxS0hudmg4WHlmV3Z5ZnAzVFluQ1lCcktvN3U0M2FNcTJOcTUxZnBpMU1WV1ZBV3gvRFdRdGYybUVOcXlaTnNZTmNaNjRCbVZQMmR4MkxNeFo2SHg0M29GdHFqMjFvM2RUQ2lqT21PdjZXQlJ4YklUV1ZzdURrK242WnI4cVNWOWVQcmNCc1RXU0JOeVZUcHNWVmk5ZmxNL3lMSUtaN1Q5b1VYejllZHhjQnJFNkkrKy93UWNOQjBmdVU4eGV4L3A0VGhNSDFmbGJDeWxDdWo2dXhOa0VBaTJWdXRDdnRhVDAyeVI5eExOclduWGtMWExiTzlaa3R1MHl1clBqOEFjZ2ZmTlpMRjZ1dEt4Y3V6UjhKMStCNlg3Yk90TGh0YTJzS0JDQUFnVkVJSUlDTmdwbEJJQUNCTlFJSVlEc3c1aUtBUFRLUzFheHJ2SSs1SC9xWUFHWjNzV3VzTGNLWjN5d214Q3hBVXRhOWVxSDlrMElrZTZJa0J4VnVJeGJWalZFWDhIcFYzd0dwRDBnSXBsenV2NDBBWnBIdEdSMDVwWWc4ampOMlVBOWVTeFhBdkNleC9YVWRDeld1NXhkZlc0dDlhSUNrQkNsblBIY2RCMVcvWVJFTS9KVGllckYxazRYY2g5WU1VbVdGRk10MG0zdStPZnBiaWJGdEJiQW02eS9QSzFYSWo2M0I3eEMranpwanBoTmZXRWk1UjhkclB6WlcrZSsyR3ZyblFneTFTTGxlYksxMzR5QzJ0TzF6elBwTmJvcE8rbkhMUXFoMEZzMCtKWllaY3BWY3hCKzVQTlpLdUxWZzYvaDdGc0VPREI4bXl2UHdQY1pXMEttbHJoOS85TEJRTjVZbGJlcDhxUWNCQ0d3d0FRU3dEZDVjbGdhQm1SSVlTd0E3cVlpZDVIVHpxYTVrUStEeVYvS2ppNERJKzFWMFBoY0J6R0pGMmNWaGZicDJPN0xseGFhVm1BQzJ2dDcxbUNrNU9QaUYxb0thTTNibGpNdDBzUkF6ckM0K1ZGZDNrMVFCckkvTHpvcHJYYWF3MWQrN3VOK3M3OW1TQmJCWXRqWmJ4dG55Ym1XdHRFVFJwKzc2V2hmQVZuWHNpdmZDSWhpNkxXWFdTNVhyNHhKWmRCWEEvTHZqczNEZmhwdVZSUThMeWQvTWNFT3owSHBFY05mclk3SFVaaXAxOSsrcWM5S20zekhxK3Y1dkViSjhidGZ2Z1haUHpHRkZGNHZYdGhLTFBmWXFpY242OVZNWElxSHRjMEhkaDdaTlRMQXp4aGxpREFoQW9BY0JCTEFlOEdnS0FRaDBJakNXQU5acGNpTTJtb3NBRmhNMzVqTFAzRnVUS29EWlZhaXZLMHA1N3Y3dHRWdEtWM2ZISmhZeFFiTkxRb1BZR2ZGOEhDUE9ialJmNjdsUmx3bVdCM3MwOU5ObERhdnVsaXlBZVExMkZiVlZsOWV4S25hdHM5aFJEdmErUk5HbmJ0dnJoQTFmUzdZY3RCV2w0MTJaaGExTjFoTXV1TThsc3VncWdIbTlUcGhnQzdubk43akErZDdtYStuTFBhL1pLWm92VlFDTFdXVTU4N0F6dk9hd0NGN3RTeXpRdnJPUzJ1TExaOEd4SE8rNFppWHNqeW9mclFpUzN5WTBndGY4K2lKbTV0MHJEb3F0dnl3R1VpQUFBUWlNUmdBQmJEVFVEQVFCQ0FRQ0NHQTdJT1lpTE1YRWpkenp2SHBJZWI0ZVc2dnZ4ZUVIZEtkWGIyUHRseXFBMllyUUQrOUxLWDZST2I2STkxWDMrKzY0Wm40cGJsTmlaOFI5OVkzTnRacVA1KzI0TkUzV0szM081TklGTUhOYXVVS3V1enRXaWFsTEZIM3F6bVhNc21jbGhGazRxTEtxWENLTFBnTFlpcVB2QjNaTnJMdmZEaUh3dDdtM2RLMzdvSXJZVk80cmRrNjZqcGVyWFZOY3JpSDNvczdsMGg4dWJoMkMwTnRhek5hRHRncGJsYnJzalcyc2llc0M0RHRPNWcwS1M4Ui95d1dYZmlBQUFRaWtFRUFBUzZGRUhRaEFJQ2NCQkxBZG1uMWU0blB0aCtPbnZESEU0S2pyTS9jOGgzZ1IvV0I0aUQrOUJaZ1VBZXpVd3RybUprV2c1KysyNkhmcXFuWEJobGZ6NnVKeUVoUEFVck16cHJKeEhLRW0wYkd0KzgzNnVKc2dnTm1GeW5HT0hKeTl5VkpraUdzdGRROXoxK3NyYkN5UlJRNEJ6UHRnRjhWM0ZsazA5NnpabENHRmw5em5ZTlZmbmF0MDMzTXkxSHpkYjFPTXcvVzRXMFBOb1R5K0UwVTRXWUxkeXB0S25WV3gyNzRoWWJKMTF4NEI4QlBnVVFVQ0VNaFBBQUVzUDFONmhBQUVtZ2tnZ08zd3lTMHNkVGwzZGNHVjEvdktQYzhoWGtTSEVzQzZaazNzc2hlNTJnd2g4TVFFTU1mK3VsK21tRFhtRURzang0UVh0eTR4Y29iZ2sydnZsdEpQMDMxanJsazBsOEsyYXA1dGcrQlg5V0ZoM081MWw2MEJVYzZhV1ZYTmJzblhuUWxJeHkrcmNxbXo5ZEpqSmYzUHhQTjBzaFFIa1Y5bERJNjVJZWJPbm1tQjNPOTRUaFN3ZnArMEJaby9ldmtEZzExa1U2eW1ieS9KeVhES3hXN0hEMHZnWEdldHQ2a0pkaEtRVUFVQ0VKaVNBQUxZbFBRWkd3TGJTUUFCYkQ0Q1dKMTdBd0xZL0YxcDZ1NGV1d1VYeUgxcUtuUVJLR0lDV0tvbFFPb2RMeVpTZFJFOFYyUEgrdTdDSjNWZG0xSVBBV3pjbmN3aGdIbkdNVXV3cXVRQjZ5dE5zWm9kbDh4OFIxdTNSSXNGb3MrZFpPVzhrdDRlTXY0NkpwN2QwejhlaERDLzkxa010ZFZmYWtianVrRDRLWEhBbXF6TWMzOWNtKzlwWUdZUWdNQ3NDQ0NBeldvN21Bd0V0b0xBV0FMWXZ4Y3AwZytmT0wyMkJhWW5GbW5pcjFpeHMzTjUrSXVKRzdubkdiUHU2WElSZEJGRVlpOXpTM1BQOEV1eXhSM3pmVXJObVRQYkxnSlAweG41VlhESCswaVhqYXRwOHdlRnU5QjdDeGUvNjlmOHZjdCtJNERsMnlBRXNId3NVM3JLSllCNXJDWTN2RE1sM1ZMU0NUV1RpdDB6VTlheUxYWFdCVEFuSkRoVTB0OUlzaGkyWHFyYzdDOGs2Wkk5TWdUYlN1OERrczZ6TnBEMzlDOHFFbVdrN0VmZFI1V1VlNyt0QnY5RmttT1FyWmVVdGlsem93NEVJQUNCMWdRUXdGb2pvd0VFSU5DVHdGZ0NXSitYNUo1TFBLdDUwNHRpYm1HcDY1eGpBbGlxbTBQcStFc1J3T2JvbnVGQTFoY3B2dTc3aTd4ZlpLOFEvbDNQQ0JqYmg5d0NXSnRneUxHNXJmNGVjODN0YzIxakFaYTZDL1gxRU1ENk0yelRRMDRCek9NMkJXS3Z5NkxwZGdoZzZidFdGWXZNV1VyOXU3S0t4V1ozelFPQ2RkYXE1MHVIcEFXK3g5KzFRNFpFdjlmNU45dUNXN24waVkvMm1wQm9wdHhuN0RuR2dxby9acFRmTjA4cmhOYnJTWEw4U0FvRUlBQ0JVUWtnZ0kyS204RWdBQUZKQ0dBN3h5RDI0RGpXWVhseGNKR29HNitMWU5JMDk2VUlZRjJDeGVmYXM5MkRzT1U0THRlU2RKVmczWldqL3k3NzJTU1NmbDNTZnBLK2xXTnlvUThFc0l3d0IrZ0tBV3dBcUExZDVoYkEvT3ovZ2lKTzFzTnJ4bnh3VFlaRkJMRDBmYThUbTJ6ZFpaZkgyeFhXV0hjdXhkWXFDMlMyeUhPY3N6ZTFpSzk0dFJCN3JDcnJwMlBBZWN5bXhCbDFLNnhMVE5MME1hSkpqSnZqQjZiMDNhVW1CQ0N3YUFJSVlJdmVQaVlQZ1VVU1FBQ2Jsd0JXbDAxcmRiajZXTnZrT3FBeHE1MHVjNHk5ekQxSzB2TnpMU0RTenlvdWl3TUszMFZTMWN0THJxa2dnRWtuU2RxckJtZ1hQcm4yWmluOUlJQ051MU81QlREUDNpTDdzWklzdXBUTEZ3c1h1aHRKK2s3cEQ3Rjc1cmhVNWoxYWs3V1ZZM1JkWFpLdDdWWUI2djgwQ0Yzbkt5M0xJdGo5dzRmRFdOSVAvNDQ4TFlSZEtOTngyMXNWSHl2ZTF4R2JreWZZbGZIaXBmYk9YdW16OHJHS2ZpOFdYREd2VlBHM1E0cVBPcS9zT0JlYVFRQUNFT2hGQUFHc0Z6NGFRd0FDSFFnZ2dPMUFtNHNGV095bFpnZ0xuN2JIWmdvQjdMWkZQSzEzdFoxb3kvcitEYjZCcEJlRkFOVXRtM2VxM2tYZ3dRS3NFK3FOYllRQU51N1dEaUdBZVFVM0Q0TElPU3FXYzdlUUxYRDlUdzZpLzVCeGwzNjIwUnhENjlhU0x0d3dqNjgxZ1pVR1FBQUFJQUJKUkVGVXhERWJhL3Eyc3JLVm5lY1NLMTZUTGJFdENsVVZpMkMyMW50WnhCTHM4cEkrVkdNdGZKd2taODdzWXYzbE9UVWx6S25MbHV6ZjBIZFVMR2dJdC9rWVkvNE9BUWhBNEN3Q0NHQWNCZ2hBWUd3Q0NHQTd4T2NpZ05rQ3dCWlUvaXBkVmZ6QXZILzRXajMyV1ZtTnQ0a0NtTCtrdnp5OGxJekpGUUVNQzdDKzV3MEJyQy9CZHUySEVzQjh6N2Q3blFXbGNuSGNKc2NLKzNtN3FRNWV1ODRTYVgzZ09ndTJ3U2ZYWTRDWUNPYXVIeDJza3Fzc3dXTFdYM2ZzRUUrc3ZKeUhodmhpNWY5L0ZXOW5menc2eERFcjErOHJ4dlhBVEZNSVFBQUNadzlLQ0JNSVFBQUNReE5BQU5zaFBCY0J6Tm1tN0JMbWJFMTFaV3AzaFUwVHdKeUczdkZZL0RMWHQ5ZzZ3UEczbkpMKzMwSjYrN3JNb3g0TEFRd0JyTytaMnlRQkxPWUMzcGRWYXZzbWk5T2hCRERQclM1SStWeXRkT3BpVVpVNTMwdlM2MVBoejZTZVJUQmJlUjNjTUo4NkVhekorcXRMaUlDcUtUVEZGeXRiRERiVlBheXc0SHZwVEpnekRRaEFZQXNKWUFHMmhadk9raUV3TVFFRXNIa0pZRTJ1RGF1ak1uWEEyazBTd0p3TzNpbnA5MjV4SGY0eXBLOC9wY2pFNXY5OE9menY3MVZZYU1RQ3lDT0FJWUMxT0hxVlZSSEEraEk4ZS91cEJEQzdFbG9nY2FLTmN2bXpJZ25ITy9NdnRYT1B0bGg3ZThpY0dPdms1RkR2UjdHS00vdDdpZ2htMGZhNWErNlFUVWtOK3NiK1dzZlR4TDlzMWZXVVluNVBybURyekpkMisvL2N6TGd6SFFoQVlJc0lJSUJ0MFdhelZBak1oQUFDMkx3RU1NL21HWkllMzNBK25LcmNENjMvT2RFWjJoUUI3SUloNjlkTkV6aWVLT2xWa3Q1ZlpPbjhma0w5VlJVRXNHWllzYlBVUlNCc3NUMGJVUlVCTFA4MlRpV0ErVDNnYjR0WVZmZXRXTktVbVhDckNEZkZMS3VxWHhYSExQL081ZS9SUXROTFF2RDd1dDc5ZS8wY1NiOHVZbFUyWlZidWsvbXhhdXc2Qzd6MVlQaDdodDh0VzZXVnkxeGRhL1B2SWoxQ0FBS3pKWUFBTnR1dFlXSVEyRmdDQ0dEekU4QnVKdWw0TmJ2RjM3T3dXbnJEUktjeUpscDBjZkdJQmY4ZklnaStYVW1QakRDMGhZT3pRWDZ6STJzRU1BU3dqa2NudVJrQ1dES3E1SXBUQ1dDZTRJT0s3SDZ2cUpqcDFKYS82MU5xaWxmbUR6Uy9WeEVZMzFrV0QyejVBU0Y1d3dhdWVQNndKLzdkYlJMQkhHamZvdjJkS2lwWmxQSnYrNGN6enZVeW9iK3FrQWx2bEdUWFUyZFFmbmJObUVzVkpUTWlwQ3NJUUdCcUFnaGdVKzhBNDBOZyt3Z2dnTTFQQUd0eWcxbWQwQ2xkU2paQkFMdG8rQ3ArMWNnTHplcXJmdGM3QXdMWWRndGdUZFlnWGMvVTNOcjl0TGlXYmhqY2dmdk9iZHRqZ0psZjNjZUFMaDhXK3U1SFhmc202eS9IbFBKdldKWExuV05tUFcrb1NRM2NyeTJHTFNvNVRsdGRjZFpIVzJkWHZjOGRGVEpML2lyalBEMk9yZE1PclJIYzdpUHA2VVg4dFNycnJ5VW1KOGlJanE0Z0FJRzVFRUFBbTh0T01BOEliQThCQkxENUNXQ2VVY3dOMHJGRWNtU1M2bkxTTjBFQXF3czJ2ZUx4NWlLQXZkMUxITytyVDRtSm1WMWMvT3F1V2MvejY1TDJDNEg0Kzh4N3ZXMU14T3Z6WWg0N1MxMzQ1RnAzam40UXdOcFJyQlBBTEVUYmdpaDNPVWpTM1NzNm5kSUNyTzdNZkVUU3JRcUxucC9raHRDeXY5MGxIU3ZKR1l2TFplV2VmMDVKRm9OOGZhOFh4MG04VVdFaGRXckxNZWRTdlkzYi9QcWNuUmpGSXJIalJlWXUxeTJZZmtEU2VTbzY5bk5DM2J2bFU0djZqZzFHZ1FBRUlEQXBBUVN3U2ZFek9BUzJrZ0FDMk02Mnp5VUw1T29RTmozVXJ1cE01VklTRXkyNkNDSmp1MEMrdUhERnNhVkNWZkVYK2hzWDdpcCs0ZXhiWXF5NkNEd0lZSDEzWmJ6MkNHRHRXTmNKWUVPNFFIdG1YY1liTWd1azUxUjNab1lRdDl2dHpvNlk4aGhKUjlRMGZKR2tSNFMvMlIzdzRSWDFjc2ZCYXJ1R3Z2VXZKT2t0NFRjaXRhOGhMZCthM0ZIcjVyZDBJVEtWTy9VZ0FJRUZFRUFBVzhBbU1VVUliQmdCQkxDZERaMmJBSFl1U1VkTHVtdmt2RG40cnVONytFdnZXQ1VtNnN4ZEFITThsM2NVc1ZQcWd0OS9YdEwra3Z5UzBMZllTc0k4L0pKU1ZSREFOanNMSkFKWXV5dW9peURWYm9UZnJkMWx2S2tFc0RsWWdGMUhrak1NN2xvQnZTeXEyTzJ1eWdyTVRjdVpFL3ZzNFJSdEx4a3lZTzZUTUxoamZ2a0R6NUFaTUdNV3plVnB2aXg4QUJyenVTRUJGVlVnQUlGdEpJQUF0bzI3enBvaE1DMEJCTEFkL25NVHdEd254eEp4OXNFcTE0YlZxVGxUMHAxRE5zT3hUdExTQmJDWVcyTE9ZTk4xQWExWGU0VUFoZ0EyMW5VNzFEaGp4QURiSmdzd0I0cDNkcjV5NmZKaEllZWVYMHJTQ1VYeWxiMXJPajFjMHBQV1BzYjRuY2EvcTg1ZVdTNURCSVRQdWRhVXZtSTgzTWRZNi9RSEZpZHNPU0JoNGxoL0pVQ2lDZ1FnTUI0QkJMRHhXRE1TQkNDd1F3QUJiSWZESEFVd1c0RTVHOWo5STRmMWgrSEI5K01qSGVxbEMyQ3grWGNScGFyUXA3eVVkQmtMRjhpUkRucUdZUzRkWE1McUxBQXpES0Z6UzdwMVJkWTk5LzIxSUZya0dLZXVqNTlKc3J1YngrcGJ1bGhrOVJtenkzaERXNERWaWVZV3hlNVEvRmI5dk0rQ083YjFHYlBWME1FMTdSMVEzWUh4eTlseW01S05mQ25FTkJzaUxsYkhaYlp1ZHZVaTV1TDdKUDFoUTB0YmFmZE5wcEl5c1ZRcnNKV2JLdFpmS1ZTcEF3RUlERTRBQVd4d3hBd0FBUWlVQ0NDQTdRQ1pvd0RtZVRXNWtheHY1VGNrMlVyaTB5T2M4SmlBMU1WU1ljd1lZTEg1ZHhHbHFyQ254SEhyTXRZMkNXQTVyZkZHdURRbUdhSXBTVUdYOHpYSklzS2dYUVNwUHZQdE10NlFBcGpmQS82MkVCUHZXN0VvWnhGOFFKL0ZkbXdiRTc5aVZzaitYYkoxMGprcXhyY0ladUhzdEk1em03clpveVQ5VGNJa3huRDVUSWtGTm1Rdy9nUU1WSUVBQkNCd2RnSUlZSndLQ0VCZ2JBSUlZUE1Xd0R5N2U0WjRZTEd6WWRlR3V4VFpwdDRmcTlqejd6RUJhZWtDV0k1WU95a3ZJOTZHTGdMRkpnbGd1MGs2WGxKZExKMGNlOUh6dU0rK09RSlk5eTJhbXdCMm1TSTJvV05HN1ZHeEpJc3R6KysrMUU0dG5jM3hzVFZ1aktzT1h5M3AwSWFNdWJaa2ZvbWtRMnBtNFBYYWpmL2JuV1k0WGFPbWVHaFZzeHBEQkxPMW1UTkkxeFdmSHdma3gvcHJ1blBEeUJDQVFJa0FBaGhIQWdJUUdKc0FBdGo4QmJEWUYvanltWG15cE9jV2dZYnRtalJFV2JvQUZoTmQ3RkxxK0d1ZjZ3Z3ZsaWx0dmR0dEY4Q2F4QnR6OGt2eDlTUjl0ZU5lYkVNekJMRHV1enduQWF6cFBwOHpNMjBxclJUeHE4NzFzVHpHN3BLT2xlU2tJRlhsazVJT3FuQ2hUSjNyMlBWUzRuOVZ6V2xJRVN4RmtCczdYTUxZKzhKNEVJREFBZ2tnZ0MxdzA1Z3lCQlpPQUFGcy9nS1laM2pCRU9pK0xuTmgrUmgrUmRLRGd6WFlyek9lVWI4VU9kYkltNHE0SnVlcjZYZnVGbUMyU0hoamlLZFRoK2Exa2g3WVlOWFFoTlJ4ZXN5bnl1V24zRzdiQlRBLzk3eGUwdDBiZ040dDdGZkdZN3hSWFNHQWRkL09JUVN3ejRSN1k1dXNmN1lZdFJ1K2c4aFhsWnlaYVZOb1dZeDdsaVJibmRXVnRtSktUS0N4eU8xWWRsOUltZUNFZGRyK0ZxOVAxZTZpRHcveDFISmFZYlVSNUpidWRqcmgxak0wQkNBd0JBRUVzQ0dvMGljRUlOQkVBQUZzaDg1Y1k0Q3Q3MTJiMU91cmRoYkNuSjNMTVZqYXZKQ1Z6NHdmK3YyRi9vbUZPK2JsSXBmVTNBVXdUNy91eFhkOWFXMi8xbHNjZkdod1Uwb1J2enpXdGd0Z1poQnoyL21FSkdmRyt6NjM4a29DQ0dEZEQ4WVFBcGhuODZFZ2dqbm0wdGNsV1JSenNQY3FTMFpiUmYxNUlZcGNwR0VaVHkzKzlwVHV5MnpWMHZmNjF4UVdzSGRzYUJXTCsxWFhOUFp4WUN3My9sWkExaXFialQrZStDTlFWYkc0NU16Ti92aFVWOHpPaVczODdKVkRCTHVRcExkSXVuR0xSZjFUK0FEVTU1bWd4WEJVaFFBRUlGQlBBQUdNMHdFQkNJeE5BQUZzaC9nU0JERFBzNHNJdGpwVHAwcDZSOGdLNTYvc1A2aXhjUElMOWE2Rnhaa3pYRGxBOGEwa1hiSEZ3VnlDQUhhMUVHdkg2MndxRnFnT2svVGpoa3IrN1RZcnZ6U1dYWHo4NG52K0J0RVFBVXk2V1lnRDF2UU01QmMyQndZdlo1bGJiY3RWd3N2azNLMUhXbHhHeVZVUndKSlJuYTNpRUFMWWZ4VUN5VWxGTVB1OXVrL3JkMXFPR2JqOENwTCtRZEkxSTNOM0hDbkhrMm9yNEtTNGgxc2dlbHpJTFByTFRBeHpkQk1MUmJDeWlQdlg0bmYxQ1FVYmh5S29LMTBGeEhKL2ZhelJuRlRCdjIxRGhVckl3WncrSUFDQkxTQ0FBTFlGbTh3U0lUQXpBZ2hnT3h1eUZBSE1jL1VYMzcrWGRJdVpuYVhWZEpZZ2dOa044bWhKZDAxZzZKY1ZmMkczRmQwcFJSRGgwME1iaTRJV0NKMTRvTW9xemk5RXRxTDRhMG43MTR5REFDWmRUTklIQ3N1S0swWDJ3dnZ3ajVMZXUyYk5lRmxKZHBIMEM3dXp6YjByWVQ4M3JRb0NXUGNkSFVJQSsvY2lxY083RzY3NXRyTzEyUFM4dG8xYTF2ZjdoKzlqRmtYcVhOdFhYYmExakMxUEpTVzJtTnZFUk8rV1MreFZQU1orbFFXdFdIMVBwcThJNWc4cnJ3aEpjcm91THBiQW9HdS90SU1BQkNDUVRBQUJMQmtWRlNFQWdVd0VFTUIyUUM1SkFQTjhIVFBtYVNHalU2YWprSzJiSlFoZ1h1eFZnL0J5NFd3ci85Mk8vT0w2eXNqTE1BTFlEak83ZHpWWlRLUnNFUUxZMlNsMU9WOHBySWVxMDBXUTZqT1hMdVBWQ1k0L0xXSXUzckFRWWorVkVOY3VkYzVqQ0JRWENGa2E3NTB3cWE2V1grV3VMUkRGcktUY3hrd1BEbFpwT1dOWkppejFyQ3IrclhVV1M3c3QxcFVxVVRERk9zdnJjd2JNOTdTWlVQajlqODNKSDJCZUVPNnJUUzc1RnRFZTFqSGVaY3RwVXgwQ0VJREEyUWtnZ0hFcUlBQ0JzUWtnZ08wUVg1b0E1am43TjhOeFAxNlZFSmRyckhQbGgya0xjM2JiYVZOdUkrbWREUTJHRWpkaU1XbmFyR0c5cm1QMk9CMzk3eUdBSlNHMGErOEpDVlpnVFowTmRVYVNGakJoSlN6QXVzTWZRZ0N6bFdnc3JsM0tqQzJlUDJKQUZ6WC9mdnlwcERjVTdvd1d3WnJLRU1IYmJRbm1JUHRISk1Cd0hFQzdRRHNad0pnbHhjcXFTYVJNRWNFc1ZIa2ZQcHE0c0JSQmJtVmQ5alpKajBsZ2pBaVdDSjlxRUlCQWZnSUlZUG1aMGlNRUlOQk1ZQ3dCYk83N3NFUUJiTVhVRDhRT3ZtN1J4Zjk5N09JWUlrZEsrcHNPd3RkcXJsTUpZUDdkUFZUU2l4S3pOcWF3WFlsZmpsL1RKRTY0cnk0V09uWFhyUHR6d08zOWV1eEQxZnBpYStoaThWYzFUaXhMWEl3OUF0alpDWFU1WHpIT1EvNjlpeURWWno1ZHhvdFpnRmtBdTBld0F1c3lOeWN1Y1FiYWYrNFFZeXQxUEF2T0x3NkpUV0p0YktWa04yTzdGN2VOK1JYcjIvZmYrd1RYeTVURUlXOHU0akUrc2lFV1lHeThObjlQQ1RYd3Z1QkczeFJNUGlWRFkycEd6WlFFQlY3anVrVmFpanVtMnpnYjd5R0ZZSFpHRzBqVWhRQUVJTkNYQUFKWVg0SzBod0FFMmhKQUFOc2h0bVFCYkxYbi9vcnZCMWk3cVRSbEZHdDdSdXJxKzZ2OGMwTk1wcjRQelZNSllGNmJmM3NkaVAwWVNYM2NJUjBvM3krK2RtZFp2U2pHeEtNdUFzV21DbURlaTVzRWQ2Y3UrNEFBdHJrQ21FVVNXd2ptTGc4Sm1XM0wvVGFkcFJRQnpESHBiRlh6aHlGbW95Mko2b3FGY21lSFBDN2NnejVaeEEwY3l0M1B2eEhPQ216UlAwVncra2JJRnVoNy9aQ2w3WFgvMm1CcC9KOERUZXJ5SWQ2ZzNlVHJTcHRNaXZ0SU9qYnkrMkpCMHVKZTNkNWZQSWhVTjQyczJkYUh6eW4xazJLSjVtNjlwbnNXenhIZkhvZ3IzVUlBQWhBNEd3RUVNQTRGQkNBd05nRUVzQjNpbXlDQXJjNk9YVXY4d1AzbkliQnhMTk5oNnBtenlPVXYzczRTZHZ4YUlQTFU5azMxcGhUQVZ2UHl5NkZqb2ZnRm9vMGxuUzNnSEkvRkxvL2xiSkVJWU8xUGg2MVRuR0h1VGkyYWVnOE9DSms5V3pUYmlLcmI0QUk1OWtiMUZjRHE1dXQ3OCs3aGo5OGZVT2dxajI4QnpxS1hZKzJsM3R2R0ZrTXVYY1JsdElXWGY3dFNpMytQYk8zMDJZeldhU2xpbkszem5PREVtWlJUUzVPRnF4T2wyQlcwTHV0bGlpRG5lVFM1TXFaWW9ybVBzVVRQVkc3VWd3QUVOcHdBQXRpR2J6RExnOEFNQ1NDQTdXektKZ2xnNVdQbUZ5NC9mRHRlMkxVS0t3T251dmZYWkx0R2xJdGpoemgrbHpNZG5oeis0N2dybjVaa040MXRLT2J5eDhIdHg2S0tCWmwxQzQ1MWk0MTNCTkdsN3NWbEczZ050VWFmMndPTHMzZTdjSDd0a3JUYUI1L1I3eFpCeDk4ZllxeDllSXVET0NPQTVUK0JRd2xnK1dmYTNHTVhVZCsvQVk4TEFkVEh2cTkxVGU1aXQxRmJ0bGxBNjJxTjdQdStZNjQ5SzJJZDUzdU5BOWQzc1pJcXg1dzAzd2VFak1SMTdxVXBncHhQUVVyQ2hGUVJ6UE95TmJtZkQ0ZXlSaHo3V21BOENFQmdwZ1FRd0dhNk1Vd0xBaHRNQUFGczh3V3dEVDYrTEEwQ2t4TzRxS1MzU3ZMTDVSVEZybXlYcUhscDk0dHNseGYxWE90d1lHOW56MHNWSmVwaWN1V2FUMm8vU3hmQWZCNGMvTnl4SWFzK2ROUnhzSkRrZUY5RHV6ekc5bUgvRUJmc2NyR0twYjlidkxOVm1HTTYya29yVmNEelJ3NjdWY2JjQzIzNWJENXRMTC9XcCtqM3ZGVlErdThGQzIyTCtGWEZkZTlWZklCNVRjSWV0Z2xpZitYdzBlQ3lDV3d0S0ZvSTY3cmVoQ0dvQWdFSWJEc0JCTEJ0UHdHc0h3TGpFeGhMQUZ0WkZ2bmZxVXJUaStJbVc0Qk54WnR4SWJBTkJDdzJuQ1JwcjIxWWJNczF0azJRZ0FEV0V2QmFkYnRYN2x0WTdOaWQ3cFlkdW5FU2t5Y05tSFd5N1pSczdXbHJyTVBhTmd6MS9heHhZaENRNmx6Mi9kNWxheTVuVW81bHdueExzTlpxQ25pZk1sV1BhUkh0WHdzQjdBczFEYnoybDRiTWw3RStueGNzOWxMRlB2ZlhSZ1N6UzZRemNBNlpsQ0cyUnY0T0FRaHNNQUVFc0EzZVhKWUdnWmtTR0VzQWEvc2lOQVN1SmxjaEJMQWhpTk1uQkRhZkFBSlkvUjYzdmU4amdMVy9YaTRXTWlsMlRYNWlheThMSEhaMW4yTzVTckRPdW5iUHlUbTVnT01LZmkzMDB5WVQ1Z3NLYTdJbmpDUU9Pa1NCNDJ3NmtVS3MrSHF4QU5iRlRkRnh4ZDRyYWUvWUlPSHZidzh4TXIrWldKOXFFSUFBQkpJSUlJQWxZYUlTQkNDUWtRQUMyQTVNQkxDTWg0cXVJTEJGQkJEQWhoZkFscFlGY3VqamJ3dWhneVE5S2xFb3FacVBFM2JZdmUxTkhRV1VvZGU0M3IrdDJ4d0w2OGdpWGxaYnQ4aFZQeGFMbkxWNGwyQlY1cGhoTWZkUVc1RTVNNk90c2JxSVRHMFllWTArNTNablRKbVhYWXY5L0ZZWE95eGxiSXVBRnJaU0V3OVlQTHhCWVFtSENKWkNsem9RZ0VBU0FRU3dKRXhVZ2dBRU1oSkFBRU1BeTNpYzZBb0NXMGNBQVd4NEFhd3BKbGVmQTFkbmNUYjNHR0FYREhIbllqR3JxdGpZVmM0eHNwNWVrYlcyRDhzeDJsb1lzc3VpTGJJdTBtSkF4N0s2UjRnSmxzb3VGcU9yeGZEUnFrNUs4L0lnYXNZcTU1NlhlVGpPbUxOYU5oV0xnV2J2ZUljVUNFQUFBdGtJSUlCbFEwbEhFSUJBSWdFRU1BU3d4S05DTlFoQW9JSUFBaGdDbUFuOHRNaEtla05KcDR4MGxhUm05RnVmanEyTG5oWXkvWTQwelVHR3NSRG1qSXEyNG9wWmhIMUowczBsbmJZMmt4aTdzcnZrSUlzSW5kcnl5MExzTXhJR0dXcGU1dWs1V0JTdEt5bFpKaE9XUUJVSVFBQUN2MHNBQVl3VEFRRUlqRTBBQVF3QmJPd3p4M2dRZ0FBRXFnaDBzY2pxUTdMTGVIV3hKTWNXd0x4dUN6dk9ldWdFTDAzRkdRNGRISC9UWE5kV2dmOGRCMnUvQ2dDMlduSkNnQk1xL25ZZFNjZEoyclgwdHltU0FWaUFjc0IvdTdUV0ZlK2hzM3FtWmxSdGUxMzRIZlEya3Y1ZTB2bEtqVThOTHFqZmJkc3A5U0VBQVFqRUNDQ0F4UWp4ZHdoQUlEY0JCTEFkb3NRQXkzMnk2QThDRUlCQU93SmRCS2wySS94dTdTN2p6VWtBODN2RFl5UWRVU1ArMk9MTFZsTGY2Z05wSVczM2xQUVhraDVjOERodm1QTXE3bGRkbkt4N0ZoWmtSNGU2ZGkyOGU4Z2MyU2V1VmxkY0ZzRmVKdW5nVWdkMldYMUFtT2NZODdxMHBHTUtjZkM2WVI1TkltTFh0ZElPQWhDQXdGa0VFTUE0REJDQXdOZ0VjZ3RnRHN6cVZPemxZamVFbHhSQzA4L0hYdURhZUt2Z3QxVlpqeHdJOXRnSjU4YlFFSUFBQkxhZFFCZEJxZzh6QjRGL2ZFVUg5d3RDU0ZYZmN4TEFQTCt5Y09MZzluYW5zL2psLzc1dHhUeHMzV1hMTDF0ei9hZ0JnT3Y2dWNTQzJXRXo0RldPeC9WcFNYY3BoTG4vR0hrVHpjUEM2bE5EdkxoSDlBeTJQL0wwR1E0Q0VGZ1NBUVN3SmUwV2M0WEFaaEN3K2YvcWErbjZpbjVXZkUzOTRXWXNrVlZBQUFJUWdBQUVzaEE0VnlHT1hiL0lESGpoVW0rMjFQbXdwQjlrR2FWZEp4Wk9ITC9Kcm41MmlmUmNLTXNrY0ZGSjd3bkI1cDJzd005aVU1VzlKSjArMFptZWFzMk1Dd0VJakV3QUFXeGs0QXdIQVFoQUFBSVFnQUFFSUFBQkNFQmdKZ1Fzc3Y1cUpuTmhHaENBQUFRR0pZQUFOaWhlT29jQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ1ltZ0FDMk5RN3dQZ1FnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDZ3hKQUFCc1VMNTFEQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVRFMEFBV3pxSFdCOENFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFnVUVKSUlBTmlwZk9JUUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQktZbWdBQTI5UTR3UGdRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdNQ2dCQkRBQnNWTDV4Q0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUpURTBBQW0zb0hHQjhDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VCZ1VBSUlZSVBpcFhNSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQ0JxUWtnZ0UyOUE0d1BBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnTUNnQkJMQkI4ZEk1QkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQXdOUUVFTUNtM2dIR2h3QUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFQmlVQUFMWW9IanBIQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUdCcUFnaGdVKzhBNDBNQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRZ01TZ0FCYkZDOGRBNEJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0F3TlFFRXNLbDNnUEVoQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUJpV0FBRFlvWGpxSEFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFtSm9BQXRqVU84RDRFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQW9NU1FBQWJGQytkUXdBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFeE5BQUZzNmgxZ2ZBaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBSUZCQ1NDQURZcVh6aUVBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFTbUpvQUFOdlVPTUQ0RUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJREFvQVFRd0FiRlMrY1FnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDVXhOQUFKdDZCeGdmQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQVlGQUNDR0NENHFWekNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFnYWtKSUlCTnZRT01Ed0VJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSURBb0FRU3dRZkhTT1FRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdNRFVCQkRBcHQ0QnhvY0FCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaEFZbEFBQzJLQjQ2UndDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VCZ2FnSUlZRlB2QU9OREFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlERW9BQVd4UXZIUU9BUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnTURVQkJMQ3BkNER4SVFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJBWWxnQUEyS0Y0Nmh3QUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSmlhQUFMWTFEdkErQkNBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFLREVrQUFHeFF2blVNQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaE1UUUFCYk9vZFlId0lRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCUVFrZ2dBMktsODRoQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRXBpYUFBRGIxRGpBK0JDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0F3S0FFRU1BR3hVdm5FSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWxNVFFBQ2JlZ2NZSHdJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFHQlFBZ2hnZytLbGN3aEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBSUdwQ1NDQVRiMERqQThCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBd0tBRUVzRUh4MGprRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJREExQVFRd0tiZUFjYUhBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRR0pRQUF0aWdlT2tjQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQVlHb0NDR0JUN3dEalF3QUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDQXhLQUFGc1VMeDBEZ0VJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSURBMUFRU3dxWGVBOFNFQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUUdKWUFBTmloZU9vY0FCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENZbWdBQzJOUTd3UGdRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ2d4SkFBQnNVTDUxREFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlURTBBQVd6cUhXQjhDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ1VFSklJQU5pcGZPSVFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJLWW1nQUEyOVE0d1BnUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnTUNnQkJEQUJzVkw1eENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFKVEUwQUFtM29IR0I4Q0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQmdVQUlJWUlQaXBYTUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCcVFrZ2dFMjlBNHdQQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ01DZ0JCTEJCOGRJNUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0F3TlFFRU1DbTNnSEdod0FFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUJpVUFBTFlvSGpwSEFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFHQnFBZ2hnVSs4QTQwTUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWdNU2dBQmJGQzhkQTRCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBd05RRUVzS2wzZ1BFaEFBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVCaVdBQURZb1hqcUhBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRbUpvQUF0alVPOEQ0RUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFvTVNRQUFiRkMrZFF3QUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRXhOQUFGczZoMWdmQWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUlGQkNTQ0FEWXFYemlFQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBU21Kb0FBTnZVT01ENEVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSURBb0FRUXdBYkZTK2NRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ1V4TkFBSnQ2QnhnZkFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFZRkFDQ0dDRDRxVnpDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ2FrSklJQk52UU9NRHdFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlEQW9BUVN3UWZIU09RUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnTURVQkJEQXB0NEJ4b2NBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhBWWxBQUMyS0I0NlJ3Q0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQmdhZ0lJWUZQdkFPTkRBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJREVvQUFXeFF2SFFPQVFoQUFBSVFnQUFFSUFBQkNFQkUwbUN1QUFBZ0FFbEVRVlFBQWhDQUFBUWdNRFVCQkxDcGQ0RHhJUUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkFZbGdBQTJLRjQ2aHdBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VKaWFBQUxZMUR2QStCQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUtERWtBQUd4UXZuVU1BQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoTVRRQUJiT29kWUh3SVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQ0JRUWtnZ0EyS2w4NGhBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFcGlhQUFEYjFEakErQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQXdLQUVFTUFHeFV2bkVJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBbE1UUUFDYmVnY1lId0lRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUdCUUFnaGdnK0tsY3doQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FJR3BDU0NBVGIwRGpBOEJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0F3S0FFRXNFSHgwamtFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlEQTFBUVF3S2JlQWNhSEFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFHSlFBQXRpZ2VPa2NBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBWUdvQ0NHQlQ3d0RqUXdBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNBeEtBQUZzVUx4MERnRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJREExQVFTd3FYZUE4U0VBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRR0pZQUFOaWhlT29jQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ1ltZ0FDMk5RN3dQZ1FnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDZ3hKQUFCc1VMNTFEQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVRFMEFBV3pxSFdCOENFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFnVUVKSUlBTmlwZk9JUUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQktZbWdBQTI5UTR3UGdRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdNQ2dCQkRBQnNWTDV4Q0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUpURTBBQW0zb0hHQjhDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VCZ1VBSUlZSVBpcFhNSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQ0JxUWtnZ0UyOUE0d1BBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnTUNnQkJMQkI4ZEk1QkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQXdOUUVFTUNtM2dIR2h3QUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFQmlVQUFMWW9IanBIQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUdCcUFnaGdVKzhBNDBNQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRZ01TZ0FCYkZDOGRBNEJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0F3TlFFRXNLbDNnUEVoQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUJpV0FBRFlvWGpxSEFBUWdBQUVJUUdETENKeEwwcSsyYk0wc0Z3SVFnQUFFSUFBQkNNeWVBQUxZN0xlSUNVSUFBaENBQUFRZ3NBQUNWNVQwQkVuWGxuUUxTZDlZd0p5WjRtWVFPRkRTUVJWTGVidWtZemRqaWF3Q0FoQ0FBQVFnMEo4QUFsaC9odlFBQVFoQUFBSVFnTUIyRWppbnBQMGxQVHNJWHlzS2gwdDZrcVQvM1U0c3JIcGtBbjhaem1CNTJMK1NkTVRJYzJHNDdTSndia2tYa25TT2ltWC9UTklQdHdzSHE0VUFCT1pPQUFGczdqdkUvQ0FBQVFoQUFBSVFtQ09CUFNXZElNbVdYK1h5UFVrM2tuVHFIQ2ZPbkRhT3dDWUtZTmVUWkhmaUQyN2NibTNXZ3Y1WTBvY2tuYTlpV2ErVGRKL05XaTZyZ1FBRWxrNEFBV3pwTzhqOElRQUJDRUNnanNEZlNicDN6UisvTG1rL1NkK2FJYjU5SlZsY0tSZTcxSjA4dy9sdTY1VDhEUFVDU1ErdkFYQ1VwRU9JQjdhdHgyUFVkVytTQUhaK1NjK1NkRml3SGpwQTBzZEhwY2xnYlFnZ2dMV2hSVjBJUUdCeUFnaGdrMjhCRTRBQUJDQUFnWUVJTEZVQXE1czNYOU1IT2lnOXVyVlErWDVKbDYvbzQ2ZkYzMjRvNlpRZS9kTVVBaWtFTmtVQXN6dXhoZVBMclMzNlM1SnVMdW0wRkJBTmRTeEdQNzVuSDBNMS8yZ1JNL0Qra3M0WWFvQUIrMFVBR3hBdVhVTUFBdmtKSUlEbFowcVBFSUFBQkNBd0R3SUlZRHY3OEh4SmQ1ekhsclNheFRNbHZhSlZpMmtxMTRrUG5nMVdZTlBzeWJhTnVna0NtQk5JT0haZVZYbTNwRHRMY2t5cHJxWHBPdTNhWjY1MmR2Tzh0YVRUYzNVNFlqOElZQ1BDWmlnSVFLQS9BUVN3L2d6cEFRS2JUR0NYNElhd2Q4MGlmeEFDN3hMa2RKTlB3WExYaGdDMnMzZE5IT2E4dTBzSjRIM1JZQVYyMVFxWVM3SUNXNnBRbXZNTTMwL1NpVGs3SEttdlRSREFyaVBwT0VtNzFqRHpHcC9iSTdFRUF0Z3doeEVCYkJpdTlBb0JDQXhFQUFGc0lMQjBDNEVOSWZEN2t2emwxVzRKVldYT2NaUTJaQXRZUmc4Q0NHQUlZRDJPVDZ1bWRxODZzcWJGVXF6QWxpcVV0dHFvaHNxL0tnS3UzMWpTUjNKMU9HSS9teUNBR2RjOUMvZkhvMnU0blNucElFbnY3TWdWQWF3anVFZ3pCTEJodU5JckJDQXdFQUVFc0lIQTBpMEVOb1FBQXRpR2JPU1dMZ01CREFGc3JLUGZaQVZtQzlrYkZHNm9ueHRyTWgzSDJYWUJiRW5XZXVVdDNoUUI3TnlTWGlicDRKb3ozQ2NlR0FKWXh4c0RBdGd3NE9nVkFoQ1loZ0FDMkRUY0dSVUNTeUdBQUxhVW5XS2VWUVFRd0xaTEFEc3dXSWhNZFRVNGUrYzFhZ1kvU2RKblI1Nll4WUtYU1BwNTRyZ0lZTXROV3JBcEFwaVA2cVVrblNDcEx2UkMxM2hnZFl5T2tmVDJ4R3VrYjdYZEpEMm53czB6ZHd5d1MwanlQV2V2aWdublRxWXlwZ1ZZMHpOcGJvWjk5NXIyRUlEQVRBa2dnTTEwWTVnV0JHWkNBQUZzSmh2Qk5Eb1JRQURiTGdGc3poWWVuUTV3ejBadFh3Z1J3QkRBZWg2NWJNMXZHMFNwYzlUMDJDVWUyQnhFd2pwaHF1MjFHZ09OQUJZanhOOGhBSUd0SllBQXRyVmJ6OEloa0VRQUFTd0pFNVZtU2dBQnJGa0F5LzNTMWVVWU5OMWoyZ2JCUndENzNSMW91NzhJWUFoZ1hhN2hJZHI0L2VRRmtoNWUwN25kVlc4aTZlUVdneU9BN2NEQ0FxekZvYUVxQkNDd2VRUVF3RFp2VDFrUkJISVNRQURMU1pPK3hpYUFBSVlBTnZhWm05TjRiUVV3Wjk4Nzd3QUxzRnVvWGN5cStyNVBjSGNiWU5qYUxtOGVNcU9XS3hBRGJNeGRpSS9WRkZmUHJVOE5JdGgzNDEzOXBnWUNHQUpZNGxHaEdnUWdzTWtFRU1BMmVYZFpHd1Q2RTBBQTY4K1FIcVlqZ0FDR0FEYmQ2WnQrNUxZQzJGQXpib29SWkZlM2R3MDFjRTIvdDZuSkpQanRRb3k3bnFTdjlwalBVQ0ppYkVvUGtmVEVpa3FIUzNwNXJQRUFmLysxcE85TDhyOTlpc1hLOTBtcWM0Vjh0YVJESmYweVlSQUVNQVN3aEdOQ0ZRaEFZTk1KSUlCdCtnNnpQZ2owSTRBQTFvOGZyYWNsZ0FDR0FEYnRDWngyZEFTd2F2NTFBdGpYQzdGbFAwbmY2ckZ0Mis1R3VrS1hnNlg3aXJsQ25pbnB6cExlbXJCbkNHQUlZQW5IaENvUWdNQ21FMEFBMi9RZFpuMFE2RWNBQWF3ZlAxcFBTd0FCREFITUJITEh2Sm4yVko5OTlMb1hld1F3QkxDcHptb3VBY3p6ajdsQ1dyQzhvYVF2UnhhTEFJWUFOdFgxd0xnUWdNQ01DQ0NBeldnem1Bb0Vaa2dBQVd5R204S1VrZ2tnZ0NHQUlZQkpweWRmTWNOVVhJb0xaQTdSQmd1d25UT1VnK1g2YVl5NVFyNDdXSUw5ck9FSUk0QWhnQTF6aDZOWENFQmdVUVFRd0JhMVhVd1dBcU1UUUFBYkhUa0RaaVNBQUlZQWhnQ0dBRmErcFR4UzB2TXE3ak01UkJzRXNHRUVzSE5KZW9ta1F5cjJ6ZkcvbmlEcGhaRllZQWhnQ0dBWkh5L29DZ0lRV0NvQkJMQ2w3aHp6aHNBNEJCREF4dUhNS01NUVFBQkRBRU1BUXdBcjMxM3FoSkRQUzlwZjB2ZDYzSTRRd0lZUndOenJKVVBHMEN1dDdjOFhKZDFGMG1jUzlxeHUzMCtSOUttRTlqbXFuRi9TSFNXZHA5UlpibmZsUzBnNlNkSmVGWlBPN1JMZVpPR1plNnltWjlMY0RIUHNOMzFBQUFJekpJQUFOc05OWVVvUW1CRUJCTEFaYlFaVGFVMEFBUXdCYk80QzJCNlNybHR4c3MrUTlBRkpUUzVkcTJiRUFHdDNheGlTMS8wbDdkdHVPbGxxWDZ2SXBta2hvbHpHRkhmV3gvNkJwR2RMK21HVzFmMjJrenRJZWxQSUNtbUxzTWRKOHJXU1V1cjJQYVh0MEhWeWl6Y0lZRVB2R1AxREFBS0xKWUFBdHRpdFkrSVFHSVVBQXRnb21CbGtJQUlJWUFoZ2N4ZkFjbVFrSEZMUXlYRnB6aTBHMk54NWRXRStCL2UrTHZOdTIrYmNrcDRSTE1GT2xQUy9MVHBBQU51Qmxkc3FDd3V3Rm9lUXFoQ0F3UFFFRU1DbTN3Tm1BSUU1RTBBQW0vUHVNTGNZQVFRd0JMQWhYdmhpNTY3TjN4SEFwSGUxQVphaExnSllCb2dMN0FJQkRBRnNnY2VXS1VNQUFya0pJSURsSmtwL0VOZ3NBdHNnZ08waWFiZlN0cDBweVM0Y0RxNjdwT0o3K29VcTRvdllqU3EzSzBvS2w2bm5nd0NHQUlZQVJneXc4cjJxN3I2UTJ3MHQ1UjZacTg2MldJRDE0WVVBaGdEVzUvelFGZ0lRMkJBQ0NHQWJzcEVzQXdJREVkZzBBZXlDa200b3lYRkVibHdUSUhZZHBRVXdCMForajZTM1MvcTNHWWxpNTVSMEJVbTJJTG05cEt0SmNvRGRwdkxma2o0azZSK0RDOGwzTXA0YkM0blhrUFNua2c1SW5NOS9GWEZyYlAzeDJtSWRqbFdUVzNCRUFFTUFRd0JEQUVzVndJNlJkTStXYm5VWmI2Rzl1a0lBaStNakNENENXUHlVVUFNQ0VOaDRBZ2hnRzcvRkxCQUN2UWhzZ2dCbW9laVdrcDRvYWI5ZU5IWUNVaDhwNlc4a2ZhdG5YMTJiN3k3cHNaSWVXS1I5MzdWcko2SGRKeVE5dGVEeVBrbS83dENYNDdHWTdjTWszYXhEKy9VbVp2dk13b0x0eFpKKzNMT3ZWWE1FTUFRd0JEQUVzRlFCTEhkc3BFeTNzYVJ1RU1EaW1PYkFxQzQ0Zlc3clE0TGd4ODhETlNBQWdTMGxnQUMycFJ2UHNpR1FTR0RKQXBqdmI3YnllcFdreXlXdXQwMjFseFlXUzAvSUtOYkV4cjVBQ1A3NzBGakZsbi8vZWhBRzJ3aDY1NVgwQUVtSFMvSzhjcFp2U0xwWHNYZCtJZWhiRU1DMlN3RHJlMTZtYUo4akJ0Z1U4MjR6NXR5QzROZmRGeERBMnV6cTh1b2lnTzNzV2U1elRoRDg1VjBMekJnQ1cwMEFBV3lydDUvRlF5QktZS2tDMk1VbHZieHdXVHdvdXNKK0ZiNG42UzZGVytYNyszWFQyTnIzNlRzSElTKzMyT1NCMndoZ1E4OWxCY0l4Mk80dnlTK3FiYko4bFVFaWdDR0FEWGhwWnVrYUFXemNJUGhOdjJtNWhZRXNCeVN4a3ptSU80bFRuYXphSEJoaEFkWnYrNXV1Mzl4V2RQMW1TbXNJUUdDMkJCREFacnMxVEF3Q3N5Q3dSQUhzMnBMZUttblBrUWhhckhtNHBKZjFGR3VxcG10TEs2ZDhmOFNBYTJramdNWE9RODVwbXF1RlArOWwxNElBaGdEVzlleU0xUTRCYkQ0Q21DMTY3WWE5eERJSGNXZnUzT2JBQ0FHczN5bEJBT3ZIajlZUWdFQVIrd1VCakdNQUFRZzBFWWdKSG0zRWt6RklPd0Q3bXlTZGI0ekJTbVA0NGZxNUdVVXdCK3gvamFRN0RyeVdObnNZT3crNXAycTNUQ2N0K0hMSGpoSEFFTUE2SHAzUm1pR0F6VWNBK3l0SlI0eTI4M2tIbW9PNDAyWkY1NUowZlVrWGJ0Tm9yZTZwaGZYMUYxcTJuUU1qQkxDV20xYXFqZ0RXangrdElRQUJCRERPQUFRZ0VDRVFFenphaUNkRHc3Nk9wT05hQkliL3BLVC9JOG4vT3U3VWVuR2dlUXN2RnAvMmwzU09oTW5uc0ZoYURXUHg2NDBod0h6QzBQTFlKd2J4NzJSSjN5ODFzalhjUHBMK1BQeTcvdWMyZXhnN0QrN1hQTjhzNlFORkxLK3ZGQUh5ZjFBU0JSMjQzMHh0YldGcnZWZzVTdEloUlJLRFg4VXFWdndkQVd3SFNoMkhPYmlNTkoycEpRc1NxY2NWQVd4Y0FjeUNpOC85VlNvMmFNbm5iUTdpVHVxWmQ3MlUzNUttL3JyczFSd1lJWUMxT1NWbnI0c0ExbzhmclNFQUFRUXd6Z0FFSUJBaEVIdEliU09lREFuN1VwSk9rTFIzWkpCZlNucVJwR2RYaUVSMVRjOWYxRDJzRU1HZVZyZ2pPdXRoVS9taHBBTWtmYnpIWWoyRzNTa1BUdWpEMlJJZkdjU3lNeExxdTRyWGM2ZVEvWEd2bGpIQTZzNkRoUzRIeExmd2xUb1BXeUE3YytReEVTc0FNNzFCSVVaK0xuRjk2OVVRd0JEQU9oeWJVWnNnZ0kwcmdEVmx4M3RVa2RUaithUHVmcjdCNWlEdXRGbE43TmtpMWhjQ1dETWhza0RHVGhCL2h3QUV0cFlBTHBCYnUvVXNIQUpKQkdJUHFYTVF3RHpIdDBtNmVXUkZudzRCNi84amFlVm5yM1JKU2ErVmROTklld3R4dDVkMGVzZHg3bGxrclR3Nm9lMlJrdndTWUJHc1M3SFE1Z0QrandtV1ppbFpJTXZud2NMWGcwTVNnRjkzbVlTa0ZNdTlweFo5UDZWRC93aGdDR0FkanMyb1RSREE1aU9BM1ZianppWG5RVU1BaTlPY0E2TTVXSURGU1Myenhod3NtcGRKamxsRFlNc0lJSUJ0MllhelhBaTBKTEFFQWN6dWNSYURtc3I3Sk4yMUNDYi9vNWJyTDFlMzlkUXJpcGhVRnFtYWlrVWgxMnRiTGkvcFE1TDhrRnhYY21WSVhQVnZsMFJiYmRrNkxsWlc1K0ZQQ3BmRUowcDZpYVNmeFJvbC9EMjJoM2JydEdWZDIvMURBTnVCand0a3dpR2NxQW9DMkxpaTA1VUx5OU9QU0xwUXhYNGpnSTEzRWNTZUxXSXp5V2tCZG9xa1Q4VUd6UFIzUDBNNHRNSjVTdjNsRm0rYUxNQXlMV1YyM2VSbU9Mc0ZNaUVJUUNBUEFRU3dQQnpwQlFLYlNpRDJrRHExQlpoalc3MWZrb1dqdXZKUGt1N1FRVHlwNjgveHVaeVpzTWtTekFGNmJ5THB1eTBPaG9NQ1d6UzdmME9ibkhIR1drenRyS28rRDg4TExwcWY2ZEpCVFp1TGhaaGhWNnI1dStPSU9XQnkyNkRIQ0dBN1FPczRuRlRFYWJ0WEM3ZlZqRnQrVmxkK0liVEY0MzRWbmFlODVOcU45bStIbU5oSWZmcWEycTFtTEZ0bGRvbDlWOVhkUjhPOUpkVkZPZWZ5L3pnSSsxWEpTY1lXbmVZMGw1eU01MkRkMUdZOXNXZUxXRjhwOTRaeUgzV01ZbU9OOGZmYzRnMEMyQmk3eGhnUWdNQWlDU0NBTFhMYm1EUUVSaU1RZTBpZFdnQ0xQZEQyelNKWUJ6ckZiZTl1SVRaWDZtWmRONGhBNVMvRDYrMXpaNXBNbmR1cW5uOHpuQkNncTd0ajAzalBrUFQ0aGdxM2tuUnN5d2tqZ08wQWErTFFFdW1vMVZOZWN1c3NxRWFkNkFJR3kvMkMzV2JKY3hLZDZ1YnkwNUQ0eE5aQXFlWHFSZHpKTjdSSXZKTGFiNWQ2dG1pem1Gd3VGano5QVdIcTRsaU85eWcrUm4wMlRNUy9KWjV6MCsrZHF6NGtXQnVYNTU5eWJ5aTNpVDB2VE1rbzkvV0pBRGJsYmpJMkJDQXdhd0lJWUxQZUhpWUhnY2tKekZrQWE4cm10UUxYMVJVeEJ0NzNUZ2ZGdHh0Z1hiR1ZtTjB1VXl3NDNKL2RDUTl0Nks5dmJMSFltcWIrdXkxNWptOUl6dElsUURVQzJNNnVJb0JOZmJxbkh6LzNDM2FiRmMxSkFLc1RUTHNJWUUzcmFzTm5HK3AyNFdzdU9TM2JFTUEyKzZSTmVZL2JiTEtzRGdJYlJnQUJiTU0ybE9WQUlET0JPUXRndHl3Q3FMKzNRVEQ1aEtRRFcyUjdiSXZ1YW9VYjVJY2J2djYzY2R1N1RPaHJqNXBKL0NKa1RQUjRtMXFhWXZONHpjOHM0cFE5b2VYaUVjQVF3Rm9lbVkydFB1WEw0WndFTUZzaHZiNWlsN3NJTkFoZzZaZExGNzRJWU9sOHl6V3hBT3ZPanBZUWdNQ0dFMEFBMi9BTlpua1E2RWxnemdMWWl3dHg2N0NHOWZsdkwrMjUvcWJtanRuMXhoQmZySzZlZytYYlJTWlc2bDdLVnUwOGptTTFwVmlUeGNhYTY5OWpEK3l2azNTZmxwTkhBRU1BYTNsa05yWTZBdGpPMXRiOWJuUng1MGNBUzc5YzVpeUFqZWttNnVlR3FpUTNVMTZmNmJ0WVhiUHBPdWp5dTkwMG42Wm4waVV6N0xzSHRJY0FCRm9RUUFCckFZdXFFTmhDQW5NVndCdzAydTV5KzlUc1NSdnJxejdiR2hPdTdOYjRzTWdBTVNIdGZ5VTUvcFV6V1c1eWllMXBsd2RwQkxETkY4QUlncDkyVnlBSS9rNnlnYnJmamM5TDJsL1M5OUp3L3FZV0FsZzZyRGtMWUYzaWlhV3YvSGRyMW4zb1diSjRnd0RXOVRUUURnSVFtSVFBQXRnazJCa1VBb3NoTUZjQkxPWXVOOWJENUI4RjE4VS9xTmxSWjZEOHMwaVdQV2RBOU12cFpXdjYrR0lSSFA5R2tyNnptRlBUYnFJK1kzNHA4RVAwVXlSZHNhWTVBcGpVaFlGeDFnbUIveTdwY0VrL2I3ZGxXV3Z2RW1McFZlMzdtQyttV1JmVm9yTzZtRlJkTEpKYUREdHExYm00UU41ZTBsdHEzT2J0VHU5c3dXMnVCUVN3OUdPRUFMYkQ2cUloaS9TbFN1aFdBclhQMzgwbGZVN1NOOVB4VGxwelRBSE1pUjZPS29Uc1A2bFk4WlFpLzZRYndPQVFnRUE3QWdoZzdYaFJHd0xiUm1DdUFwaGplL21GcGE2a1dGN2wyTXVZZVBYVjhLRFdKRjVkVzVJRnUvUFdUT2dZU1hhbHRDWFlVc3V1a2k0aXlZS2hNMmhlSWZ4YjVRcFN0OFl1NGc4V1lEczA2emlNSlJRM25kdW1ld3dDbU9STXRrc3ZjeERBTERnNGtjamVOVEM3eEJpY2VsOHMyTDBwWk9hTnpjVy9SVGVWOUxWWXhabjlmWXdnK0xIN2pFV1hQU1g1ZzhGUXY4TitIN3V4cEZkSnVseGgzZjV1U1hjdWtnRDhiR2I3VVRXZE1RV3dCZUJnaWhDQXdOd0pJSUROZlllWUh3U21KVEJYQWV5UmtwN1hnQ1kxOWxaZnVqRSszeTVldXE0bnlTOGZkYVhPQW1SVnYwdjJ3NzdyNnRwKzl5QnMrVUgrV3NYTDJWVnE0cDEwNlI4QkxMOEZHQUpZbDVPWXR3MFdZTks3OGlJOVcyK1hsdlRtQnBkNWl4cTNrSFRpd1BQSTJiMC9KQnpYa0lTbGFpeGJKRnMwKzFIT2lRemMxOVFDMkhyRzU3ZUhrQVk1TGJQY3YvZlNIKzM4TVd5OWVPM1BIVkIweTdWMUNHQzVTTklQQkNBd0NnRUVzRkV3TXdnRUZrc2dKdkJNNWFiemVFblBxS0U2OXN0TWs1VlJpdHRITERYN2JRdjN3S0ZmRUxzZVVQK0cyQjNWY2M3dTB2SmxyTzJZQ0dBSVlHM1BURlA5YzBvNm42U2Y1T3kwUTE4SVlQWDNOMXRyMldyVWNibHNmWE5tY2E5eGZNZGZKbkQydmNsV1g3NDNQYlQ0dlRoM1E1dVRKUjJ3SUdFb1pzM1doT2ZWa2c1TlpKaUFlZkFxVXd0Z1pTczduNzBuQnNHcXIzV1dQeEM5TUxnOFZvRmNTdlpuQkxEQkx3TUdnQUFFY2hKQUFNdEprNzRnc0hrRTVpcUE5UldkY3U1VTM3azBaYk5NRWRCeXJpVzFMLzkyM0VEU2l5UmRNN1ZSejNvSVlBaGdQWS9RV2MwdGhqeEwwaUZCdUgxUHJvNDc5SU1BVmkrQVhiOElUUC9QUlp3Nkp3cXBLaGJFN0NMcWY5ZExYYWE5dXUxNXNLUlhkTmk3S1pwY01NU1FzanRqMTdJVXl5S3ZiMG9CN1BLU1BsUmp4ZndWU1E4TTU3T3RXNlRqSFQ1SGtqOXV4Y3FYZ2tCMldxemloSDlIQUpzUVBrTkRBQUx0Q1NDQXRXZEdDd2hzRXdFRXNQaHV4eXk0bk1IeDJJWnUrZ3BvOFJubXJYSHhJcER2eXlVZGxMZmJhRzhJWUFoZzBVT1NVTUd4OWw1UUNDY1BDblV0bmp5OGlGSDNzb2xjalJEQTZnV3dTMG82U2RJZUNmdmF0Y3FISlhrUGx1QVdhT0hXNS9UZ2lzVmFoS2w2cGoramNLTnpES3YxNGpQditGSnY3UXB0eEhaVENXQm01b1FKdDR5c3RZMWI1R1dLV0o5SFNMcFRTMzYyRW51MHBGKzNiRGRXZFFTd3NVZ3pEZ1Fna0lVQUFsZ1dqSFFDZ1kwbGdBQVczOXFZQUJaellWeVNBR1ozUndmbnJjdFlHYWYxMnhvcjY0MVBGbUxhdjBueWwyNjdscEFGc2o1b2ZSY1IwTVFKZ3I5ejd2eFNhMHNmeHdnc2w2Y0d0K29VOTdvMjV6eFdGd0dzWGdEemZyMGpCRytQY2V6eTl4OEcxOGVQZDJrOGNodUxYN1lXdHRWaXVUaTJsKytqL2kwcUZ3c3UrMVF3WE1yYXB4TEF6TkVDckpuSFB2YkUzQ0s3Q2wrZktMS1NPa0MvWXpXbWlsK09kL2VJbXFRNkZ1dWFQc1oxUGRKVENXQzJQbjlJeGFUdG11cVBIRXRMK05DVlArMGdBSUdXQkJEQVdnS2pPZ1MyakFBQ1dIekRtK0tScGJnd0xrVUE2eEozeGk4R255OHNMRTRKLy9seStOK082ZU4wNytzbGR0YTZpRDlrZ2R3aGpBQW0yWFhzalJHTGpsZUdsOGUrc1gzaWQ0M2Yxa0FBYTQ1eCtCcEo5MjhETkxHdTcwSCtPUEd4eFBwVFZyUDQ5WVRDUXZISkZaTll1Y2pkVmRLeksvNXVBZVY0U2UrdmlORzRCQkZzU2dITU9CMHIwTlp5RnM0dkVEa0VaYmRJZjh5eHEzVk1RRnZ2MXZlZUkwTnNzRzkwT0hSTllsUXMyMldINFg3VFpDb0JyTzdlbWZMYzFYV3R0SU1BQkRhQUFBTFlCbXdpUzREQWdBUmlvc1JVUWZEbkpCcjFuVXZmOWdOdS8xbGR0NGs3NDB4cVR1WHVGNjd2dDVoYzdLd2hnT0VDMmVJNG5hMnFYMlFmSyttWmtVN3M5dlNBRVYzaUVNQ2FCYkNZaFcyWE05SEdiYTFML3puYk5KM2JkUUVySmhTVmc3bXY1bWlSeFVMZ3AzTk9PbU5mc1hXMUdhcFBYeGEvbktueDNna0RuaENTTHR3b29lNnFpcTI5bmk3cGZUMFRGQ0NBU1FoZ0xRNGVWU0d3alFRUXdMWngxMWt6Qk5JSnhFU0pxUVN3SnF1QU9XV0JkTVl5QjNMK1FnUHlKZ0hzVjRYN3c0MGxmU1I5eXdhcGFiY2JmNVZ1S24xZkttTm5EUUVNQWF6djRmWXpqelBnT1huRE9SbzZjK0QxTzRhTWczM0hqTFZIQUdzV3dPcjR4TGlXLzI2WGE0c0xUNU5rbDhlMmdjdmJqcGVqZnBQbFZ6bU9WMHpjYVlvZk5tY1JMTGF1TnB6Nzl1WDdoMytQL1lIbmNtMEdycW5iMTlxcnFsc0VNQVN3REVlVExpQ3cyUVFRd0RaN2Yxa2RCUG9TaUlrU1V3bGdNYXNBeC9oNVE5L0ZKN1RQd2FmSmhkSlQ4SmY3dHlYTVphZ3FGdzNXWEZkdEdNQnJjRmFyMURnbFZWM0ZXQ0tBSVlEbE9PTis3ckZMMHpFUkVjd3hsZXk2OU0wY2d6YjBnUURXTElCZE9IeEUyRVhTdFNyYytKcTJ4eGtpLzdXNGgzNDJ4QVBxYzM4YStCaWNyZnRWcHRKSDFReGN6dVNZSXU0MFdmTGFKZlRBRUV0czdMVTJqWmV5cnRUNTV1ckwxbURQa1BUUTFJRkw5ZXdxNlhpWFRrS1FPK1lnQWhnQ1dNZGpTVE1JYkE4QkJMRHQyV3RXQ29FdUJHS2l4RlFDMk8wakdhenM1dVNZS1VPWGkwbjZhRU5RZUFjbi9qTkp6c1JWVjV5Tnp2RkY2c3BZYTZrYjMxbXczbHVUWWN4dDNsd0VzTDlIaGdkNXYrZzYyTzlWYWlhQ0FJWUFsdk42L3RQaXJMMnBFRzdQMTlEcHFZVnIyTzJLb1BtT1hUZFVRUUJyRnNDRzRqN25mc3VaU3N0emZYV3daRndYVDFMRm5hWllqbmFwZElaQ3U3SFBwYVN1SzJXK09mdnllTmN1a3JiOGZRdHJNUDlXUGlWWWhBOWxnWWdBaGdDV2NpMVFCd0piVFFBQmJLdTNuOFZESUVwZ3JnS1lIend0bHZoRm9hcjRiN2N1VW9lZkhsMWh2d3F4ZVRobXlNTWlROXdzQkNtdXV4OWJmTElWV0Rsb2ZMK1pwN2QyRnF6RGFxcm5kTkc4UkJHZy9DUkplOVdNaFFDR0FKWithdE5xK3RyelMrbXVEZFcvR3U0bFRXN01hYU5WMTBJQVF3QmJQeG0yMHJLTHYxMXdxNHJkT0Izdy9rZWxQN1lSZDY0ajZiaWFjMjlSelRId2pwNkptMmliZGNXdXc1eDlyY2J5TTlJaml3OUV6aUliS3o4T1dUd3R2QTlsallnQWhnQVdPNGY4SFFKYlR3QUJiT3VQQUFBZzBFaGdyZ0pZelBJcUpmWldqcTJQV1crbHVHSmVWdEsvRkZaZ0Y2K1owRmhycVJyKy9KTGVJZW1tTlhOemhzZjlDMWNRdTgvMExURXhFUUVNQWF6dkdhdHEveWVGSmNkN0lpTFlrREdTRU1BUXdGYm44cEtTSEV0eG41cURib3RpZnd3cGkxK3UzbGJjaVozN3Z5NCtNQjJSd2JLMzd6WGJkbDFONCtYcXkrOU9Wdzk4N0daN3Z5Sk13VFVrL1VPUmFmWktDUXQrWjdEZ0c4SzlHZ0VNQVN6aENGSUZBdHROQUFGc3UvZWYxVU1nUm1DdUF0aTVpZ2ZOTjRhWGdibzEyR3JwcGJFRjl2aTdyYy84c25KQVQrSEtzVzBjQytSV0RYTVplaTExUThmY0VqMXZXeVBZRXF4dmlZbUpDR0FJWUgzUFdGMzdtQmpnZGtPSllBaGdDR0ErWC80QTRQdnBualdITkphWW9ZdTQ0MUFDL2gxMXZMR3E0dGlUQjQrVURLTHUydXl5cnFINk1pY0xrSWV2dVQydS95NzVtZURoSVQ1WVU1SU56OCtXZG80RFppdHhCOFBQVlJEQUVNQnluU1g2Z2NER0VrQUEyOWl0WmUvQVFqc0FBQ0FBU1VSQlZHRVF5RUpncmdLWUYyZmh4ZkUzNm9yajk5eEUwbmV6a0RoN0o5ZVY5QUZKNTZucHY0M3JZaXlvLzlCcnFVTTBoRnRpMVZneE1kRnRFTUM2TVRDN3VreWpZN2tLTjEyQ1RmZVl2d3BXRmdOZHdyL1RiWk5iMktyaUVDSVlBdGgyQzJCK0RyOVhjSHVzRTZJK0hCSTNmTHZoUXVncUZGblFzVXRlbldEenhTSm0xVjBrZldhTWk3QmlqSzdycXBwdTE3NHNTdjZGcEFkWGhGMm91b2M2anFXVDhGd3pnWmtENHQ5TjBpY1M2cVpVUVFCREFFczVKOVNCd0ZZVFFBRGI2dTFuOFJDSUVwaXpBSGFad2pYUEx3WjdOS3ppMFpLZUYxMWwrd3EyUUhQZyt2czNOUFZEcmIrdXA1U3JoYlUweFNJYVV3eFl6WGtzQVN3bUppS0E3ZXhJRnhIUTdSREFVcTVDYVFwTE1BU3c3UlhBTFB3N20rQWpHbzVuelBKcjFiU3J1T1AyTVVzd1d5djV0L1JsQThhdXFrUFFaMTNsUHR2MGRVNUoreGJydFN1b0U4SFVsYnFQQ043Ynh5VEdCblBmdGxaMzRoN0hDZXRURU1BUXdQcWNIOXBDWUNzSUlJQnR4VGF6U0FoMEpqQm5BY3ozcnhjRWw0TzZCVHFybFYwVVA5NlpRSFhEbTB0eU1PSzZyK1p0TGJZc3FEbm9zSzNheGw1TEU1cVlBUGFSNExyNWt4NTgvYUpnQ3dRbkxXZ3FYY1NmT3VISDQweVZ3VFFGVmQyOHV6RHdlQWhnS2RSMzZvd2RHQjhCYkRzRnNFdExPcVlJUm0veHY2N1VCYnl2cXQ5RzNLbHFuNUlWZGNqWVZYVU0rcTVydmQrVXZuWVBIN1lzK0YwazRiWVJpNFBaSmphWVkybmVQV1RoN0pvbEVnRU1BU3poMkZJRkF0dE5BQUZzdS9lZjFVTWdSbURPQXBqbmZ0WGdodWhZVlhYbFMwV1FlUXRXcDhVV20vajNwalR5cXk3czB2TDZ4UDVXMVc0UUhuenJYQ3BkTC9kYVlsUGNMV1NvckF2S2JJSFI4LzVjcktPYXYvczN5Ri9KSFd3NVZycUlQd2hnTzFRUndHS242M2YvSHJPSWNXMjdodm0rMGplUU5RTFlkZ2xndnVkWmJMS0wzQVVhanFWL1B3NHA3bzluSkI3ZEZIRW4xbFdLK0R0R0pzUDFlZVpZMTZvL1o5ZXNzdHEyNVpYREdjU3N2YXI0cFh4SThVZWVwd1VydXRnZStPK09MZXJzMFYzdUxRaGdDR0FwWjR3NkVOaHFBZ2hnVzczOUxCNENVUUp6RjhCOEQvT0RwWVBKTnBWUFNycVRwSzlGVjl4Y0laYWx5NjFQQ0M0bHA3Y2NLOFd0MGwxK05WaExmYUZsLzFYVi9RTDIwQ0x3OGxGRmZKUHZWRlJJU1Rid1dra1A3Smd0TEJaL1puMUtDR0M0UUdZNDhzbGR4TTZtWGFzZjEvSGNyMDhDQVd4N0JEQm4xWDFPRVpmeUlaRlQyT1ZzNVJLS3JseGtvWHgzNFc3dDdNUk5wWTlJazN3UmRzaHVXZGQzN0dOT216bTVyZ1BYSDFsa2ozMWhTSkNSMHQ0WmsvMWJlN21FeWo4TkNRaWNXZkxYQ2ZWWFZSREFFTUJhSEJlcVFtQTdDU0NBYmVlK3Myb0lwQktZdXdEbWRkaGw0ZGlRUmF0cFhYM2NDM3l2dkxFa2l6MTFXYm84ZGwrWFM3dkZPTlY5N09XajY4UHhpby9qbTl3NXhESHpuUGVUNUhUdVZTVVdvTjl0WE9lNWtsTGROankraGJmbk43aVJsdWVDQUlZQWxucmZ5bEhQMS95aGtsNVVjVWE3Q0JSMWMwSUEydzRCTEZYODhMM1U1NnVONkxHNkJ6Kzc0cEIxaVIxNThXREJmTlBJaFRSVUpzUDFZWE1KZXc3azc2UTVmZDk3SEt6KzZTRUVndGZmdHZpamsvZkpBZlZUeXZIQkxmTDdLWlVsSVlBaGdDVWVGYXBCWUhzSjlQMGgyRjV5ckJ3QzIwRWdKb0FOVFNIRnZjQnpTTW5ndHByclNaSWVKZW5raEpjTTN5UDlSZnhaa202YnNOZ3Vyby9sYm1PV0ordjE3WVpsOXcxbm5QeDV3dnd1S09tZ0VKaDNyMUEveGpnbFFMKzdza0IxV0NTSXIzbGVQV1E4dTNacHZzNHlaZ3VKdXEvakNHQUlZQWxIUEd1VktoZmRwNGJBNVYxZWZxc21od0MyMlFLWTcybisvZkM5c2FuNG80WVRwN3lyeFllRTlmNXlDVVdyUGoxdkIyYS9iOElWNWQ4UXU3Sy9OZUUzTmFHN3M2cjQrck5ZOU5pS1JtMkV2WlN3QlUzek9qTjgvRHBjMG4rMldVQk4zVlEzV0RkM3NoMmZuVjhsam9zQWhnQ1dlRlNvQm9IdEpZQUF0cjE3ejhvaGtFSmdLUUtZMTlKR09ISjl2OEJhT1Bwb2NDdGM1M0hSNHY5L2l4QVEyeThDS2FXdEZWUmRuMjNpWXEzM1lUZFBad3o3Vk9saCtmY2szVEFrQS9DTFFMbkVCTENVQVAyclB2Mmk4SllRdytTVUl1Ykp5ZzMwaWlGZWtyL0NWd2xjdGtLN1k0akJZa3VKcW9JQWhnQ1djaDNtcm5QdWtQM3VZRW1QRHk1c2JhMXptdWFFQUxhWkF0akthdmhWQ1M1djN3aS9YN1l1NmxweUMyQ2VoeTExN3hORUdGOEhzZkxwa0pURzJabFRyWUhyK3ZUWS9sQlZGeCt5alFCbUVjMTgycGIvRG1LM1k0ZWx4bUpyTTRZdDdWN1o4SEhONStIQVFnQkx0Zjd5MkFoZ0NHQnR6aUIxSWJDVkJCREF0bkxiV1RRRWtna3NTUUR6L2N4dWZjNnNWWmVkTVhuaExTdm1kSW55MEYxRnNKYlQvazMxbUFEbU9pbkpCcnFNdldyampGdCtFWERzR1FTdytxRDFYVVJBTXlZSWZwL1RLZGx5MGhhTGRrL3UrMkpmbmdrQzJPWUpZSTRWK2VKZ2JSczdlVDVUOXl3QzNuODdWakh5OXlFRXNOV1FQdnQySDB5SlhlVTJGbTVzdGVUc3kxMnVGNHR0dG14K2NzT2FMYkw1MnZsUkFqZGZ2N1pPaTdsMHJycXlaYlhqKzcwblE0eS8yUFRxUk1hdTRSUVF3QkRBWW1lT3YwTmc2d2tnZ0czOUVRQUFCQm9KTEVrQVd5MGtKWjE3cm0yM3hkTWpnNnRJVHF1UWxRaFdGNE1vMS94VEJURFhhMnRobHpySGxVdVpMZFVRd0hhbzFRbFdDR0NwcDJvNTlSREFOa2NBYzdZL0N6OTJsVXV4bUxMQTQ5aUpEcWpldHd3cGdIbHVqbDMxa3NKYSt0NHRKbXFMTUNlb2VWOEwxMGh6czh1b3JiOWk1ZFVoVGwrS08zSkttQVNIUi9pTEhzSmRiTDVOZjc5Q0VXN0JBZSt2R1NwMXRTaEhBRU1BNjNNT2FRdUJyU0NBQUxZVjI4d2lJZENad0JJRk1DL1d3ZVJ0Q1hiZHppdVBOL3hLaU5uU3gyMGxQc3FPNVVtYnIrOHBmYTdYU2JFQWMvMm1vT0J0eDF6Vlg0K25GRHRyWGNTZk9pSEo0NmV1dSt2YStyUWJTd0RyTThjeDJyWnhjeHBqUGtPTWdRQzJmQUdzamJ1ano5Q1BKZDBqV0JoMXNaQ3FPb2REQzJDcjN3Qi9ZSHBERU1SU3J3ZTdFdHFpNm8wUlYwSUxpQzhvRXJJOEtMWGpsbTdKZFI5eC9CditnT0lqejJjN1dxeTFtRzVqVmEvZldhMHZId0xmZHhGR0VjQVF3SEtkUi9xQndNWVNRQURiMksxbFlSRElRaUFtU21RWnBLR1RQaUxGS3RPaHM3aGRKT05FL1ZEcUwvY09FTnpsQWJYTFZOcGFGcVNPWVJIUDJhamVuL2lGM3I4Wk53dmk0b1ZUQjZtb1YvVUNHRHRyQ0dENVk0RDEyTUpSbW02REFHWUxVcnRRbDB1ZmU5OG9tOU5pa0thWGNpY1hjZUQzcFphclNIcGhpSEdZc2dhN1BEcXcvRGRUS3Jlb000WUF0cHJPaFVKY3NEdTFtSityMmtyNjlwTGVXZEhPc1RZZDhOM3VvRzJMUlRPN1RNWitqeDNQMGxac2g0UUIrbVNHYmp2SDFQcitqWFVJaDY0VzVRaGdDR0NwWjQxNkVOaGFBZ2hnVzd2MUxCd0NTUVJpb2tSU0p6MHE1WGdKdEV2RkxjT1g0djE2ek9YZlEwYXFOdzhVRURkbGFuNUorUFBncHBFYWo2WGNyOTAyN1pMeWpNUk1tRlh6c2p2TXd3SlRpM09weFM4b2ZnSHgyQmJCMWt2c3JDR0FJWUNsbnJPbDFQTXoyTi9XWk5yTGNlK0xjZkM5MFdMRzBERVRyeEVTWTFUZEt4eGsvWVRZUkdmeTkvOVp5N2JyT0Y5UFQ4eVM2T25iVGM4aWpjV3lGSmU5dGtzZVV3RHozTnBhdmJsTm5jdWlZM1E1MEx3VG9kUVZXMEg3bzh2TmF5cWtDb3NleTRsYXZsVHNwUVgyOHU5UVcrNXpxNDhBaGdBMnR6UEpmQ0F3T3dJSVlMUGJFaVlFQVFnTVNHQVhTZGNQR1I2ZEdYR3ZJdmo2SlNyR3M4dkdmd1hMS0wrY09WTmtTckRkQWFkK3RxNHZGbDRHYmx5OFFGNnZlSUh3QzFrNVk2WEZybTlKY2xEZjQ4TjYvaTNqQzVoZm9QM0FmYmVRWmJJOEI3L29mYlZ3UlQxTzBqdUtJTVFPWER6RXk5K1kzTWNZQ3hmSUhjcWJiZ0hXbEZ4aURBR3M2V1Y1akhPK3RESFdyZFdjVWRlL0RYc25MTUt4c096eStQbUV1bDJyakMyQXJlYVphcDFjRjdUZWdwUmRJLzJScXE2c2hEUEh5ZnBBRU1LcTZ2cTN4UmJmenZyWWxEblIxdUgrYmN6bGZ0cDF6NFpvMTNSTk95ekUyd2NZMUIvakhQZk9GbmJsNG4xM1FvZ2hpc05EUExhaTQ1K0d6TmZPUkUyQkFBUWdjRFlDQ0dBY0NnaEFBQUlRZ01DOENDQ0E3ZXpISmd0Z3NjeDBINVIwYTBtbkQzZzBFY0Rhd1MyN2E4WUNxMXRrc2RXWFJabVllMTY3bVp5OTlsUUMyR29tVFprdjZ6SWF4cTRCOTEyMkdrdEp4bUx1dHZLeThPSk1sTnYwMFlWckdndXd2dmNTMmtOZzR3a2dnRzM4RnJOQUNFQUFBaEJZR0lHeEJMQ1ZoYUQvbmFyWS9jNVdtRlZ1ZUhNV3dHeEZjcjRpVzkxUFdvSnp1MzJMdUlRdlc4djRWdFdGWFlYdFpqeGs0V1c1SGQycWVHVk5nZFVkNjJ0SXE2LzEyVTh0Z0hrdWZxZXdLT2l6YStzY0YxdFoyVUxZR1E3WGkxMXZMVkxaZ3JtdTJLM1JmTmV0cnoyRzNXYVBhdUc2NjFpWEZwUnR5ZjNkSWc3Wlp3cjMvViswMi9wQmE1OUhrdDJFblFtNXJ2aHZybk5rNFhiN3RZWjZYTk1JWUlNZVZqcUh3Q1lRUUFEYmhGMWtEUkNBQUFRZ3NFa0V4aExBeHJBeWl1MUxVK3kzT1F0Z2prZGtmZzZDdmlwMm5mNzUydisySzg3SlJRYTgvMWRrdDdPMXl6N0ZpL3VlUlF3OHV3NDNGWXNHdHdxeCttTDgrdnlkbCtWMjlLb0VNRDlIUDBiU0VhRXJXeHM5T2dpY1hRT1p0NXZWVHUwNUNHQ3JlVnZrdlVtd3dMSUwzS0VWVmxoM0RkbU42OVphSlg2dDZwcTVzNmM2THBoRjZHMHBud3poR3h5THJxNXdUU09BYmN2MXdEb2gwSmtBQWxobmREU0VBQVFnQUFFSURFSUFBV3dINjV3Rk1EOC92VjdTM1FjNEFSYk5EaGdoN2lBdnkrMDJyeTVqcFFWTlp6RGNMVmp0NWM3d21ETExPUWxnNjBKVlhVYkQzUXRMeUdQWExNWFcxK2dBOVE1MmYxcGs0WTRKWnN1eWE2WUEyb0E2VHkzVzhKVElPcmltRWNBMjRLaXpCQWdNU3dBQmJGaSs5QTRCQ0VBQUFoQm9Td0FCYlA0Q21HZjQrSkRSdE8zK050VzNhOWJOUXNLSW5QMVc5WFhwUW1SN1JHRzkxQ2FUNjlCem1uUC9MNWZrZ1BaVlplckE2bk1Vd0dKN2VVOUpSNWNxMWNVTHErdkxaL2NCSVFpN3N4TnZhdkY5NFVhRk1QNHhCTERvRmhNRVA0cUlDaERZYmdJSVlOdTkvNndlQWhDQUFBVG1Sd0FCYkJrQ21OMnczcG54K0RnVzIvMGxlZjgzTVVOZFJsUjBWU0t3UkFIc29pRXpzYk9odXZqODMxblNXenZzcm9Xd094VjlQS2tRMVp5VmNOTktxcnY2Tm9uYVhxc3RCY3NGQVd6VFRqL3JnVUJtQWdoZ21ZSFNIUVFnQUFFSVFLQW5BUVN3WlFoZ09kMk5IS2piNHBkZmRDa1FhRXRnaVFLWTEzaElDT3p1Lys0MVBEZUQrSHV4SUl6Y0xzUWlzMnZxMHN0aGtsNjY5RVZrbm4vZEJ3Z0VzTXlnNlE0Q20wWUFBV3pUZHBUMVFBQUNFSURBMGdrZ2dDMURBSFAyeXBNazdkWHh3SjFSQk1aL2R3Z1c3cmhmWXdaTjd6aGxtczJVd0ZJRnNKVVZtRE0wVmdYTHo0SGI3enJPT3Vsc2k0NDlkcVdFVHAyMHdnTDN1UkxxRGwzRmlUVmVKTWtpT2VXM0JCREFPQTBRZ0VBbkFnaGduYkRSQ0FJUWdBQUVJREFZZ2R3Q21DMkw5cTJZcllOTnY2U1V1WEN3UmRWMHZJc2tXemZzWGZIM3Q0ZEEyV1BQS1hXODlSZnIxRGF1WjFldkgxUmt4bXZUQjNVaHNFNWdxUUtZMStCNzB4ZEhTUHJBaWRrc0FudEl1bTdGa3B5SjFkbEhmWStsUUFBQ0VEZ2JBUVF3RGdVRUlBQUJDRUJnWGdSMnJRbE0vak5KRGhKTmdRQUVJTEJPNFBjbC9VRUZrcDlJT2gxVUVJQUFCQ0FBQVFqc0VFQUE0eVJBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSWJEUUJCTENOM2w0V0J3RUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJSUFBeGhtQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVEyR2dDQ0dBYnZiMHNEZ0lRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQmpETUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnc05FRUVNQTJlbnRaSEFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUNHR2NBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQVlLTUpJSUJ0OVBheU9BaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVFTU00QUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0F3RVlUUUFEYjZPMWxjUkNBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJSVlKd0JDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ1kwbWdBQzIwZHZMNGlBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUVF3RGdERUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFodE5BQUZzbzdlWHhVRUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWdnZ0hFR0lBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCRGFhQUFMWVJtOHZpNE1BQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhCQUFPTU1RQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0d3MEFRU3dqZDVlRmdjQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQ0FBTVlaZ0FBRWxrVGduSkoybCtSLzE4dVprbjRnNlpjVExXWVhTYnRWalAyTE1LLy9uV2hlRExzOEFqN2IrMHA2bnFUVEpkMVIwbytXdHd4bURBRUlKQkx3Tlg4SFNaZVZkSVFrZmk4U3dWRU5BaENBQUFRZzBKWUFBbGhiWXRTSFFINENlMGc2UnRKSnhRUHc2eVQ5eDRSQ1R2N1Y1ZTN4RW9IVFhxVnVmeXJwaHBKT3lUdGNjbSsza2ZUT2l0b2ZsSFRySUdRa2QwYkZyU1J3N3ZBU2ZMaWt5NjBSZUhRUXc3WVNDb3VHUUVZQzE1VDBrSXIrVHBaMFZNWnhVcnRhQ1YvUGxlVGZOSDh3dVpta0Q2ZDJRRDBJUUtBM2dmT0g2LzlQU2ozOVVOSTlpdC9sei9ZZW9YMEgvdEI3cktSclZ6UjlvNlI3U2ZwVisyNFgxK0tRNHI3NCtJcFpueGFlbDc2N3VCVXg0VmtRUUFDYnhUWXdpUzBuNEFmZTR5V3Rya2RiTTUwbzZlWEZqOTk3dHVSSEx2VUlJSUNsa3FMZWtnamNUdExmU2JwQXhhUy9KK2xHa2s1ZDBvS1lLd1JtU0tEdVE0VS9QTjFueFBtV2hhLzFvZmxvTXVKR01CUUVKUDIrcEhkTDJyOUVZOG9QcXhaK2pxellIWXZrZmg3NDJKYnMzRjlLZW5iRldyOHVhVDlKMzlvU0Rpd3pNd0VFc014QTZRNENIUWc4bytZTHgyc2wzUTkzaU44aGlnRFc0WURSWlBZRUxxLy92NzB6QWZyZ0tNdjhXeXlMaW9XQ0FxRkFPUU55cU9BdUNzaDlDT0VvT2VSSUlFaFdJQ2dneW1XdGdvaUFDT0ZRRGpsVVdFb0k0UkJZcmhBRWdlSVFWTkNJbkVJa0xtZEFRQVJXZE1IYStaRWVNcG12ZTZhN3AyZW1aLzVQVjZXU2ZQK2VQcDd1bnVsKytuMmYxK3p0WnNiODlxV1h1NXZvdFZ4OHF3ZFFEUlFDRVFqVVFvQU5XWGZRRGF3N1hoVFJIMlVSQWtKZ09nSzFFV0NYYkR3YTNtSm0xL0IwRGF1MEd6YlNDQitZM3UxTmxDQUNiQlBEdEwxR2lnRGIzcGlweGZ0Q0lQVGhwWmUzRDdqVjNkdHBCRzBCaVk4MW1sM1BNTE52Rkdxc0NMQnhJRU1ZalQ4NW5PTm56ZXkxTGt2b0lEbTFqaVdlci9YbU1IVGpDeVpvQXFFRjlzb2xBRklkUW1DbkNOUkNnQUh2bmN6c1R6dVczMTNJUDk0UTRqY3pzMC91ZEJ6VUxTRlFFd0sxRVdBaDBxZkZqTXZ4a3c5RUtrVUVXRTByWlVkdEVRRzJvOEZVVnphSndOVWF6WTkzbXRrUDlGcVBmL3YxemV6VG5sN2hLdlh6RytsdGFYY09FV0RqQXk4Q2JCaWpXZ213SVRLY0h1RUN5YUZZbWhmamEwQTVoSUFQZ1pvSXNPOHhzNWM1alVoZlc5RUNmSlFzd0RXUmhjRHNDTlJFZ0dIMTlUWXp1L2hBcjVGSk9hNDVJN3hwZG1UV3IwQUUyUHBqc01zV2lBRGI1YkNxVXh0QzRINW05aHhQZTRkRUxrV0FuU3NZM0UxcmFqWFFqcHBFOEVXQWJaTUFvOVUvMCtoYW5HRm1Gd2gwNFgrNktIRWJlc1dwcVVLZ0dnUnFJc0FBQlZjbTlENHY1RUZvTDlwL1JFaitaVE83Y2pXeklOd1FuOFY2S0hCQ2pkMUJOL2JNa1laZHZva3EvT0RtT3dJQjYwdHJCWVJZRTg5YUNEQUM0WnphWEhiZEpRS01RN2tRRXdFV01SbVVKUjBCRVdEcG1Pa0pJVkFLZ1F1YUdVUVg0Yy83NlFUM202OHVFV0Fpd0libW9BaXdQQUtNVGZCRlNpM3V6SExZQVArK21kMHg4RHlIWW40N0s3UDhVbzk5VlpGTlMwSDVuWExHRHFiRks5eHdnVEVIZlYvM2FpUEF4ZzY4UktiRU5YckwwZDdHTEZ0cm1vWStpL1V0dWZ0M1pRcEN1UDUzcHpkNTRVQ0dwUU5DMUREK3RSQmdkek96MHdKdTBUNmNudWJJVENRUzlwcEVnTzExWkZmdWx3aXdsUWRBMVI4MEFsZHc0YzR2MDBNQnQwZHVoajhSUUVjRW1BZ3dFV0Q1cjQ2UUMrU1k3a1oramZ0N1VwWm81Y2QwN0dCYXZzYnRsaGh6ME44Q0FVWWJoOFo5RHhIZlJJQXR0ODVpMXNYWWUwWUUySG5qdGFSbndlV2NTMk9LcGVRaHVFS0tBRnZ1L1hGUU5Za0FPNmpoVm1jclE0RE55cXM5YlJxTC91Z2p3TGdCb3F3dnJOVEg3M1VpM1gxWERtbUFtZDF1WVd1WmtBVVlnc3NQaXBnZi84UE1pRXphVFV0dUJDT2FPRXNXRVdEeHNJb0FpOGNxTnVmWXdUUzJuRVBJRjNQUTN3b0JoaVU0TWdnRXQvR2xJVG1FTFl5MUNMRGxSaWxtWFl5OVowU0FMVStBWVFuNkI0M203MzBEVStXcGpXdnJIY3pzaXA3ZmNkdEZPZ0hkNEQwbUVXQjdITlVLK2lRQ3JJSkJVQk1PRWdIVzN2UE43Q1JQNzBQUkg5dXNQZ0pzYllJaVJMcUlBS3VIQUl2WjJJYmNjdDlyWnJjMHN5L3ZlTFdLQUlzZlhCRmc4VmpGNWh3N21NYVdjd2o1WWc3Nld5SEFhT2VQT212d2kzWWEvZi9NRENGOFhLTC9kY09ES2dKc3VjR0xXUmRqNzVtWWZjSnlQVnFtcHJWZElFODBzeGNHdXZvT3B6R0xLMjRveng4MWw5OFAyR2xVU0JGZ3k2eUJnNnRGQk5qQkRiazZYQWtDdUQyK3k4d3dlKzZtanpRUllHNWladWNNdEZNRVdEa1hTQVI2TDFaZ1RuQUR4N2owMDNzYXZhWjdtdG5YSjlieHJVWkkrSXRteHIvSFVvaU1qTm5ZRW5rSTB2THF2VXFlRVdrOU50YTJtbjhYQVJZL09pTEE0ckdLelRsMk1JMHQ1eER5eFJ6MGZUalVwZ0hXdHBHOU9PL1k5aENMdHM5ak4wNTh0WDBUQWJiY2lveFpGMlB2bVpoOXduSTlXcWFtTlFtd256S3pOelpFZDVmOGJudk54VGFSbndsTU1CWTFsdjNMazNZWU5WWUUyREpyNE9CcUVRRjJjRU91RGxlQ1FNajlFVE5vSWlZTmlWcUtBQ3RIZ0cxRjREYWtXK1diemxNSXNCdVkyVnNieXdNc3dicHB6Q3F4a21VMXFSa2l3T0xoRXdFV2oxVnN6ckdEYVd3NWg1QXY1cUEvRndGMkMyZTlYUnBuRHVGY3htQmwrN1hTaFhmS2Uzd2c4dlJjVllvQW13dlpvK1hHckl1eDk0d0lzUE53bmR1ejRnZk43QTFtOXBPQktmSWJadmFFem5uZ1dCZkFnRDFlUDZFSGRsY3plOFZ5MDIyUm1rU0FMUUx6NFZVaUF1end4bHc5WGg4QnlBVk1tWS92TlFYU0N6Y3p3cUlQSlJGZ0lzQ0c1c2NVQXN5MzJVQmI0dnFOUGdYQkdmYWNhb2dDdVJWOEZRV3kvRWo5Z0F0K2doNU1MUW1yaE1lWW1lL0ExYllSeTZXM0w5emdkMmUrajBwWWdHM2wwaVEwSkV1VDEreDN1RmpCdW5oS0l2cnQzUWNLZUxHWnZXcEtCV1pHbE4xMzlxSnVZcTEvdllubFFteWVFckR5b2VoL01iTmZLeUF4RUxNdVJJQWRIY3cxTE1ER2RMLyszRVdJLzBxdnVVT1JJcGxIdHpLenY1bzRYMnQ2WEFSWVRhT3hvN2FJQU52UllLb3JtMEVnRlAweFZtZEpCSmdJc0RrSU1OeEJ1VDI4VGE5dy9nWlorODJSRlhZdE03dC9SYXNRY1ZnTzU5OVlvVTFzcU85alpyakF2bThsYlk0ZmNZZXVzOHpzb1R0MGpWaGhXQSt1U3ViTmt3ZDYvZGVOZTg2dG5YdjJGc0FSQVdhMk5BRldhbDZNV2VqVzNLL1FwVlNMVFlxRjkxUThSWUN0VDRCeDluNTQ0OWI0eE1CZ0RoRlpZOFRaM2tUeFErdWVDTGtFZHBvcUx6SjFQYlhQNDZiNnZGS0ZxWno1RVJBQk5qL0dxa0VJOUJHNGg1bTl5QVBMYnpkL2UzUUVYSHNrd1Bpb1l3RnhnWkgrWDlMTVRqZXpTL2Z5L1p1WmNVUDgvcEhuTVJQL1VvZVEyTXB0ZnNvR09kY0NqQWhENk5KZHFvZmhMellXSU0rTm1KZTFZVms2QUVNRUJOL0pjaWUzT2VNYmk1ajFLeDBaeDgwcy96OW5RcjhONFd4MDZVaGRIWkU1NjFYWiswTGdHbzBlNWRzR0xIZDRsL0xPZlUwRjNXYWQ4ZjNvUnlIdU55MmsxUmdUSVJmWFJNajAydDV6cWZEWFRCUU45VVVFV09wSSsvT0xBRHVLeTVJV1lMeXJIakp3c1JEanlqam1Pb21NeFozZFhyZk1yRm12bExGMXYxN0x6bC96SWJvTzE0SjlWanRFZ0dYQnBvZUVRRFlDQ0ZsaXBvK1pjamR4NDNQRDVxUDFnWWlTOTBpQWpXM0tJbUNKeXRMWGROaktZV1lKQXN4SHpFSVc0cjd5NFFoMGE4T3lOQUZHS0hJMmxkMkVlK2pQTlpadm4rLzg4ZnVkcU8xMVBKaXh1ZVd3L1hUbnBsQ0tET05ianBndXhOZDFQZlcrenVtRFFCUjNVMmpkYVRNWE1lRjNuR1ZNY0ptdXY4RE1UbDZBMEkyQmVRbWRxVlpmcWJiM1hBdyszVHdpd0ZJUm01NWZGbURUTWN3cFlhbDlaY3FhWXIvd3NvSEwzdGlJamtQaStXQVZjcUhNd1hITlowU0FyWW4ranVzV0FiYmp3VlhYcWtUQUYrNmNobUxWeEljeHhsMUxCRmorMFBZSnNCTDZIclFHRVZNMFBQcnBveTZVZmN5NER2VUtNMitzTWZvRWh1K1pIQXN3dmdYUE43T1RlZ1dta0VpMUhReFQyaDR6bzN6cnprZE00aTU2V2tTQmtGK25Pa0ZxM0o5akluejJpLzB2alp2bGNXNk80WUlhU3VnTFF0NWhpZFpOSXNBaUJ1b0FzNXpvZENwRFhmK3NtZDNJekQ1ZUNUYTFFR0RnTXVZcXZnUmtXRkx6SGZCWlZLY2MxcGRvYTJ3ZFl3ZmhtdnNsQWl4MmxNdm1xNDBBd3pMOEpXWVcwbmxNSmEzR3lMVFU4c3FpWDZhMHNYVmZwcGJwcGVqU2NEcUdpNVlnQW14UnVGV1pFUGkyaStOdmVYQTR3WDBZWXlBU0FSYURrai9QWEZGOVF1UlBhUkltcHVjNUJCZ0N4YlFWOTdsdWluWEw1UmtSWUdZUVVnOXFvcmc5ek9PbU96UjJFSnRzb0lnQys2RUlNdXg3bmNiWUk1cG5MakV5S2Y3VnpCN3NTRGxaZ01Xc29NUE9NeFJwckVYbWx4YU9KRGcySWpVUVlDbFd1bVA5bWZyN0VCNDFFMFZEL1I0N0NOZmNMeEZnVTJkMDN2TTFFV0MzZFpaZkZ3NTBKVWU3YTB4TGpLcmU0YXkvUDVjSDRlcFBqYTM3MVJ2b0dpQUNySmFSaUd5SENMQklvSlJOQ0JSQTRCaG54WFBWWGxrZmFmNStFek03SjdJT0VXQ1JRSG15aVFEelk0ZWJJN29SUk94cUU1WU1OM1ZSc1dJUUR4RmdNYUhaWThvUDVRa2Q5a3FUajdFV1lHMDdXZTlZMHR5M0laOFFwSTlOdUVOampZZUFQeTZXV0crMWlYSUlqVTY1WTNwNUVGK1BOTE0vSHJBY2xBVlk3S2djUmo0c0U3Qkt2TXRBZDkvVWFDMWl5ZkMxaWlBUkFYYit3UkFCVnRIa2ROWjRCRVM1YktCWlM1S25ZNlRRbmc3eVkzMHROVXZHeU5jeHk2OVBtaG43cERNekdqUW1paytSV0pqelRqODdvL3kxSHhFQnR2WUk3TFIrRVdBN0hkZ05kb3U1K0h0TkdPaGZjVzEvanJPa0tLV1JVd01rSWRlb0ZDc2IraUVDTEg4MFJZRDVzZk5aSm1LSmRHTVhHajRHY1JGZ1laUVFyYjFEZytVRHpXeklWYkZmQWhFY24yMW1iSkN4S3NQVmRpeDlvWEdsWmtPT0crYVl5NndJc0RFMEQrdDNBbDR3MzBKcEtEclpta2lKQUJNQk5rWkNyRGsvWlFHMkR2cHJFMkNjYSs3bG9nT0dMcXhLdkZPeENPZk14TVZZS0xHSHdHV1N5TDFiU2lFQzdETXVZbmxYZjNYTmZySFhZaXlWTm9LQUNMQ05ETlNCTkxNZmRZb1gzNU42RmhCYmhhS0UrSDNiOXowU1lFVHdJZ2hBU0J1aDdmdkZ6T3lVUnV6N29yMkpnTFVTMWk0UUJrTUpBMjFKWHdBQUlBQkpSRUZVUWhXVGNNVGRTNll0dTBDR0RvOVlJT0hPRjV0RWdNVWhoVWcrV0QwMGtRd2JLNTI1enhwNFJZSXd1UWl3TVZRUDUvY3hVV1dRcVBXYmpPVXFWcXk0Y2crbGtGWWozd1FDVXd5bGR6ZlduSjhlY1BXT3RlTGhJdXd4THJJdTBhQmpMYjlUWnFJc3dGTFFtait2Q0xENU1mYlZFQnRkSEFMcGhaNEFNckhSeGIvcXNZaEZEb0Z2L0JNSHVzNkY3RjJiaTYzWEY0Q0hmUVhmL3BzUGxNWCs5ejZ1cjEzTDhnTFZ6MVpFaUFDTGZkL08xakFWdkcwRVJJQnRlL3oyMXZxK0ZWak5HKzVVN0svbjNCLzdZZHB6WHVKN0pNQmk4UXh0Sk9leTdJcHQxNVlKTUY5Z0JqWkh0MmsyaEdmRUFqQndNRHhVRjhnWTZMQU1RNXdlamE0VU44bHUyYmpXc05IK3l3anRzSDZiUklERmpOTCs4OFFjbnZZZ3FCeDZUNmU0ZllYS2lQbVdROVJ4MElZRWF4T0JVckIrSnpyc0Z3dE5OUkZnaFlBc1ZJd0lzRUpBemxSTWFMM2s3aXU1OFA0ZDkxMFBOUmt5aXZkQVB6RE5sQzdHdk1jcC8xa3VhQlBCbFdwUElzQnFINkdOdGs4RTJFWUhic2ZON2x1Qi9hZHppMFFjZWlzM0Z2M2hZZE9MZWZLOVBlTVdzMm51UHlZQzdLaVdSdTVHcGRSUzJqSUJkaitQb0RYYVU5ZDNGZyt4R01rQ0xCYXA4K2ZqOWhteWtRM3psUk9MYUNOSllpbjc0WXgzcEFpd1JNQjNtSjN2RTlhZXVEK0dVZ2szblJxZ1c1c0F1NXJUVk1UaXVaL1k2MkM5UWJUZnFVa0UyRlFFeXo0dkFxd3NucVZMSzBtQVhjck1zT3djc3NRcWFmblZ4d0lTakVpVFJJY2VTbWdQMzYzUmMzeC9hVEFMbHljQ3JEQ2dLdTVjQkVTQWFTYlVoZ0J6RXZjQVhIbmF0SFVTekdkaDAvWk5CRmphREpRRjJEaGVLVkVndjl1WnpVUEFkTk1Mek93WEVna1ZFV0RqWTlQbUFIY0NYL3l5MjZpT0NkckhsSXoyMTVPZDNraXNKWWtJc0Joazk1MEhYWmlYalFSVnFOWDFNWFZrMWliQTBBQ0ViUFNsTjVyWkhTTjArMkw2TEFJc0JxWGw4b2dBV3c3cm5KcEtFV0M0V09PRytNTURqZUF5QVVINk4rYzBOUElaU0RDQzMyQmRQcFE0V3hGSittbUYzanVSelV2S0pnSXNDUzVsamtWQUJGZ3NVc3EzSkFLWE5MTzNtQm5XWU4yRUNQUlRFdy9sUzdiYlY1ZlByYk9icnhRQkZxdFZNQmNlak5ucFpuYnBYZ1dsSS9HSkFCc2Z3UlFDN0lwbTlxN0dBb3hieTI0NndkMGlqdGQyWGc0UllNTm9RWHJkeXN6dTMxaUIzQ0lpaW1PM05NaXRTeVFNQmtLM2ozVXVyRU9CUkVTQUpZQzZ3Nnd4dWw5N2NIMXNoNjRFQVhZWk0wUFNvSjl3SjhKNkt4UjRna01wSk5kMUF2TW81NTBibXBKRG1tZ2ZkTmFpVzV2T1k5SGdKSUlmTjZKand2QXA3c0J4TmRhZmF5b0JodDRYNURibms2SExySDkyMFI3UkU1dzc0WWFKYXpVVy9tTUovZENUWFNUdzJqeHRSSUNOalo1K3owSkFCRmdXYkhwb0FRUkN0OUpFVE1SVmFDdlJJWTgxczdlN01OZysyRW9SWUFzTVNWWVZJc0RNYnVjUlNNMENNL0toRkFMc0hzNWN2MXYwNTV6NzR6OUcxamQydUNRSzBwc1N5MHJKSGhLd0xUMzNmSzdIWSt2M21DWUVPZU9QZTltMVV6cGxabjJMTHZySnpUSFdzVmVLTElzYlh0d3hFT0wxdVVpS0FJc0Vjb2ZaMEo5N3cwaGtVYXdWYm1abWY3dVQvcGNnd0hLaENPbUFVaDZrRkRqWEV0RXN0NDl6UGljQ3JBeTZJc0NPNGppRkFQdWg1bklLaVJhMFRvY1MreW4yQW55SGwwb0VBV0RkY0JrV2sxN2xBaDk5S2lielFubEVnQzBFOUtGVkl3THMwRVo4Ty8zbHhjMUg1YjZlSm5PZzQwQlp1NENqejUyejM1MnhBN1J2eEh3SDhWcEh0alFKSVF1dzhaR09KY0I4Z3N5VWpnay80cXhFMWt4Sm9jTmxTaGtsODVhZWV6RUVHRGZCVnpHemsxeEk4cjVGNUZqL0lLd1F3OFlsSVNScXozc0ZyVEFzeWJpMTVhWTNKa0dvL1dyVHZoZDNNb3NBaTBGdWYzbUd2cS9kM3Y2U1J4OXd5MmlzUllDeFpuRjlmRUFBUEZ5aG43bGxZQmRvdXdpd01pQ0xBRHVLWXc0Qnhwb21ndU1mTnBaZjN6Y3lORVNaSlMrWGkwc24ybmxQNXhJNUZtV2R0dFhtN2k0Q2JPa1pjeUQxaVFBN2tJSGVhRGU1V2NGeTVLcWU5ci9YV1VPY1hYSGZ4cXkvYUxvSXNMUUJuRUtBWVVIelBEUDc2YlFxbzNLemdicVlKeWVFeG1mTmpIK1hUZ2pWWXluWnR4cUlKY0N1MEFpMXNqSERwYWViVG13SWxsTXpHbnZvQkJodXBMZzQvWGdHZHJnc0ltU1BHM0VLc2MrR0ZySGIzeHl4NUtGSnpFSHlkcTN4UklCbEROYkdIMkhmOTNCbkZUalVGZWJKZlRyVzF0OXlVUXI1OTFiVFdnUlk2RjBManA4MnN4dWEyU2UyQ3VwQzdSWUJWZ1pvRVdCSGNjd2h3UGlXdnRiTXVFZ2NTdWlwNGg2WjhsMHZNOUxuTHdWOXN0TkdyTWYveUpIME5YbllpQUNiWXphb1RJbmdhdzVVajhDUVJnbVJWSWlzK05JS2RjRmlyTDhBWHdSWTJoU2NRb0FOQ1FPbnRhS08zS0c1RTB1QVllWEZocWlidnRTSXM5NGcwMHovMEFrd2NQd1pwN3NWSTJyL1VhZlJnY1ZYckdqOTBNeERlQmNMTDZ4MmZGWmhQcEZ0RVdCMXJPVWxXeEVqZXU5clQ4NjNhc2wreGRTMUZnSG1jelZ2MjR1c3c2TmpHbi9nZVVTQWxaa0FJc0RLRUdDdEJSZ1cxYjd2UFJkT0QzR1duYlZjR2hCOWxvajBTQ24wVTYxYWp5TEF5cXg3bGRKRFFCWmcyNXNTaE5IdWk4TnZyeGRwTFNZYTNhMEhIcW5SYjUweFFoRDM0aU5kelRsVXlBWFM3TEk5WENGRGIyUm03eHZBV3dTWUdYcGNwSkQ3STVzMklwRzlKbTJKZmp1M0NMQnpjY1hWQ1JkdFg0TDA0cFlWTis1ek1qQ09lY1JuRllhd0xaRSt6K2dWSUFJc0J0SDk1TUg2OWZWbWR0R01MdVY4cXpLcW1mV1JOUWd3eUdqMktBVEE2Q2RFc1lrR2l3YVkwakFDSXNES3pCQVJZRWR4ekxFQW81U1FOUzNyR3ZrV0xxUnVYR2JZSnBmU0JqZEFwZ0ZYYkNKR3R5NlJIM09YZDNnVjFKWkVnTlUySWp0cGp3aXc3UTNrMkNaZ2V6MHEwK0ovZFlkT3dybXZmZHZDSVpoYkZxelR4bExPb2NKSGdNVVFRUDIyaEQ3Nk9kcEpJYXVqbkxLR01KTUYySG5vVExFQUczS0Qrb2piREtVS29ZWU9sN2hTemVtcXpDWU9jZGsrMlZ4NjdzVm9nREU2bDI5Y21yaE5KY0ltNlV4M0MveTZHVW12MEpwcHJjSnd4OFlLNVd1OWpDTEF4dDdRKy9rOUp1SWpvdmRmTWJQTGVibzk5cTNpa3VvaVRrTnc3Vzl3YU5UV0lNQ0d4Ty9ST1VYL3E3YklhelhPK3JHOXI2SkF4bzJhQ0xDak9PVVNZSlRVMTFNa3d1UGRHN2RIU0RDKytiVVFZSTl2M05rZjBlazZXcVZjeERFZmNpODk0MmJjdEZ3aXdLYmhwNmNEQ0lnQTI5N1VHTnNFYks5SFpWdGNRemhmOUR6ZWJHWVhpdWphMktIQ1Y0UUlNRm1BTVMrbUVHRHR4ZzJ0TDU4NVBBUXVCN01VSWZ6UTRaTG9TR2hsekpWS0VybERiWXdsd0NnRGF5czA1LzdNRVFwejlYMXF1U0xBcGlLNGplY2h0Q0NpQ1o0UVNsaC9JdFRNZXYxNVQ2YWhiMVdYOUszUklydnR6dElFMkpENGZjNmwxVFptMnp5dEhOdjdpZ0NMdzEwRTJGR2NwaEJnbE1iN2xZaTZMM0ZhbnYvV1dGalY1bkhnV3g5WXAzSlI5NkdLU1hnUllISHJXcmtTRVJBQmxnaFlCZG5ITmdFVk5ISDFKcXk1c2VTRGdoVWFGaWt4U1FSWURFcm41WkVGMkhsWVRDWEFLS2x2cmRTVzdoTk1IeHVwYTduSWhQMTh6M0pXVUdQUDUvNyszWTZzNngvdU1ldkhIZkVidVFYM252TVJZSjl4WkZjL0VFR2hLbWN2QnNGK0NJdStabGpyTGpGN0ExVEI3QWdRVElZeHZ2WklUVzMwTDBTYlV3Z3czemNQRWVWSHV2WEhZYkNXdERRQk5pU0Z3R0daNkd3cGx3eTE0TGhHTzhiMnZpTEE0a1pGQk5oUm5LWVNZSlNJNTBkM0xXK0JBSXViTWV2bUVnRzJMdjY3clYwRTJQYUdkbXdUc0wwZWxXL3htZ1RZM1p5d2VIOXRvZkZCQ09TYjk3cWJRNEJkcDRsbWlHdFROM0hnSUtJZkl1YXhhU25MbWRqMnhPU2JRb0RGbEwrSFBMRWkrRzFmUTNPMnRBdmgxckhka3ZiZVZLeEZnRTFGc0k3bkVUMG15TUpOUjVyVGpmNFZtdWUrYjlWWVJNa2FMTEs3WFU4aHdIQnR3bTBVRXVzUFhTRzRlZUl1Rkp0K3JOSGR1MjRnODl5dTRXTnRuUHRpWXF6KzFOL0g5cjRpd09JUUZRRjJGS2NTQkZpLzFOb0lzTGt0OGVObVgzb3VFV0RwbU9tSkNBUkVnRVdBVkZtV3NVMUFaYzFkdkRsLzNlZ05uZVJNZXBldS9KS05FUHRiQWtFS3VPa2xRbHovWmoySEFDdlZyME1qd0xBVUttVU5WR29NNWlnbmxRQWJzbHBrM3FJVG9XUW1Ba3l6WUVzSWZML1Q0K3BmdXZUNzhEeG5RZGxhYXFVUVlERzZZdFFIb1lwTE5WcWRhNll4QW93OU1lNU10TFdOcG5xNm1SRTVrMi9IbnZaZld6c1FqMkV2QWl4dVpZa0FXNThBbTR2OER1bWgwdU90cmZkMmxFU0F4YTFyNVVwRVFBUllJbUFWWkIvYkJGVFF4Rldhc0xZSVBtdnBNYzd0b3c5QWEwbUQ0SzBJc0duVEk4VUNqR2czQ0gxQ2lKN1lST0ZDblBUNENseE9RcEZjUDlsRU8vM0xhZkI4KytsVUFveG5RcnAxRU1wWVBYeXhRTHUyWG9RSXNLMlA0T0cwUDViOElsZ0Q1QTdDOTIyS0pjQXUzRnoydk55NUFNY2d1L1kzbWphR0NEREVxdm5uNFdaMnBWNW51cGF3ZTlwL2JlMUFQSWE5Q0xDWVZYaXU2UG5iell6MTYwdUhhUDJiYXdIR3BTb3lBc2Q0ZEU2SExNRG1XbnVoT2dteWNVdW5UUnczUytKelhjYk1DUFF4VjhMaWxxQUMvVVRBbGw4enN5L1BWWEd2WElJYXZMT0M4OE5DM2QxL05TTEF0amZHb2NQejlub1MxMkxtNkgzY3l6djB4RE5kZEpNMWI1ZERCTUovTkMvTld6ajN4QlFSN1RoMHB1WGFvd1VZa1F1eHRNTnlDZHd2MElHb0ZwZSswRWErMU1Zemh3QkR2K0tGamlEc3o2b1RuTGhyOSsrMW1mZkhyb1FwaHlRUllMRW9LOSthQ01TU1grOTE3bno5YUsreEJCaDl4SG9VYTZuSHVXaG9NZjF1bzZUTkdSazIxSTRRQVRiVWJnU2lpZVRHQVdpTWhJbnBmeTE1NWpxRXo5Vy9NZXludk52bmFuTmJidWliM1A2K3BDZUFDTENqb3gxTGdKRVBsMmJlSTdmdlJNdjE3ZDNXSU1DSWhNMCs5K3E5THM0cEM1UHpUcDE3dmMxUmZpM25oem42ZHBCbGlnQTd5R0hmVktjaE04N29FUmx0QjlpUWNqTkF4TVUxdzRoejRDREtIU1JZUDNXajZZa0FtejcxaGphUzN6SXpyTDVDcVpZUFdJMEVHSmh4aS9jMlQvVFNON3FEY2xmTStoQUpzS2VhMloyblQrSFJFdEJ0SW9La0wzSGIrYlhSRXVJemNJTjlDVS8yVW1Sc2ZFdVVzd1FDc1pwZkJJamcyL3BQbmtwVENMRDJjWVQybjU2Z2o3V1dTSDdPWWUzVDd0QUxVVGhHd3BRWXc2WEtFQUcyRk5KaHEreTJCU0xBbGhzTFgwMmgvUXlpOWsrMmM2T09jNkdLeklrdjFVS0FwWGhJbEVJODU1MWFxdTRseTZubC9MQmtuM2RkbHdpd1hRL3Y1anMzRkxvZDF3M2MyaENXWHp0QmdFRVNJRTdmVFo5dE5NRnUxTFR6NCs2UElzQ21qOVNQT0oyMVMyY1V0ZVFtYzZoNXRSSmdXSE1RTGU1V3ZjWmp4WGdUNTBMYS9uU0lCRmpHbEV0K0pQUXVvYUQrK3lTNWNNOERJV3NBRVdBbDBGMjJqTmhvajVCZnQrbDhsL3F0ekNIQUtJUExoN3VhR1pjKzN4Zlo5WStZR1VFNDNoK1pQeWNiN1NJQzVpK2EyVDBTTE5YYXVycldFeUxBY2thZ3pETmoyTXNDTEE1bldZQWR4V25xZnNZMzk5YXdBT01iOEI0end5MnhtK2JjKzRvQWkxdDN5bFVaQWlMQUtoc1FOZWM3Q0NEbVNPUWw5SnY2NmZlY3kyTk40ZFVmNkVLK2Q5dUtpQzZIZ1RhSkFFdWI0THlmdU5HNm1abmRvZm13SHpkZ0dSTlRNaEV5YjlBY3VENGNrM25HUExVU1lIVDVmcjA1MjhMdzI4MS9QTHFEeWRRTjQ0endEaFpkOHlHSmhqUEhFZDMyZlp2N1kxQUNReEZnSlZCY3Y0eGp6ZXgvQndLd2RGdjNqMloydTVGM1lDNEIxdGFERlJyZnZic2t3UElNTS92MVJvUHI2d25QREdXZFNucDF5MFlIOFY0SjM0MlFKUzFsbGdvcUVucFBkOTAxQzBGWlRURWl3TW9NaFFpd2MzSGtIWEY1WjlrRkNZK2JjMWN5SXdYdFdnaXcwTmlLQUVzWlRYOWVXWUJOeDdDcUVrU0FWVFVjYWt3SEFheTcwQ1RxSnpaQlR6RXozTjFxU21peklaREk1cDlFbEpjNzlkeVZZZ2t3M0pMUVZibnl6QjBNUll6QnRSUkJZTnhVNWt3SXZoT0JyRTMwbTRNYzFna0lNM05ybjdzaDhiVjdUaDJFRkp4cUpzRDY4N2p0Vi8vakh5TEFtRE0xV0dXaWFRWjUyazgxRTJDc3gxTUR4QUZXcEJEQkJFb29tVGdBUE5ocE9YWEw3YS9Oa25XcXJMSUlYTXZNWHRPOFMzOTRwRmptRG01dlo0N2ttMHFBVVR4N3k5dTYrUnhyRFhhV21aM2NIRVRmbWlscHdQb2hLaVhmVHI2OS9IOXVvaTFQTXJNL1RRd0F3bnNIOHUvZW5vcExCUlFCMitjSExnZGY3Q3pqMTVTRXlNVjg3RGtSWUdNSXhmMStxQVJZSzFpUGRoZFdTOWNvdUwrc25RQ2JrN3lSQlZqY3VsT3V5aEFRQVZiWmdLZzUzMGFBUXhrdWpsZnM0UEdmYmxQSjVyekd6VjFYUkp6b0pMaVIvVlZ2UEdNSnNLMWExNlJPMzliTkNyMGp5RTZpdlpST2pNV3JuWWc3QkdWSi9hVGN0dFpNZ0lYbUhxVFc5WnNvcGxpUWtFTDV4bHpuK09hZ28vSDV6SFhjRWx2bzhReTlCMEphR0RVVFlFT1dJeHpxQ2ZhaEpBUzZDRUF5dld3Z29sdWJOOGJ5cTgxYmdnQnJ5OHF4Qm51Mm1iRk9ZNFBhY0xERktoenliTXFGQ1JibDFJMDFHdHBvT2Z1TUgzVUJieTdxbWFaOWkvRGNtWXg3MDdzNkF0emRjbkR6Zkc1dXdaVS9Kd0tzekFBZENnRUdBWTdPSVlRWCszRWtWZVpJWFBwQmVQY3Y3TmR3Z1F5UlVXc1FZTGhpWXZGYXlxcDNqckh6bGNtYzRSdllUM05pdUZUZlZFOEhBUkZnbWc2MUljQ2NaRFA3SzUyR1FYNGhkczlHUDJkVHVsUWZqemN6Ym1EWnZITjczRytyQ0xEemowUkxsbkNBZVlXei9KbzZWbXhHM3RKWWtyM0lXZUdkTTdYQUdaNnZtUUNqdTRoWlE3aDBFMkt3TjNWV2p2dzlod0JyaGJKeDgyTkQrbzRNYkNHSklNY2hNMysxMFJ6QzVjZVh0a2FBRFVYaC9LQ3ovb0kwVkJJQ0lNQjM4Z0ZtOXJRSTBpZUYvS0xza2dSWTI5WlVhN0NVQURkY29IREpjZk1KVStPbFRoOXNpbVU1WXdKNXhyajBFMXBuNkNpVytCNkYzS1M1N0NFUXp3Y200RkR6b3lMQXlvek9vUkJnWTVFM2M5RmtqL2wyTXp1dDBmMTlnOVBtOUoxTDFpREFzSHhsTDkxUFl4ZVR1Vmp3M0JxazI1VDJqajI3dC82TTlmZGdmeGNCZHJCRFgyM0gremVvV3lHL0FKU2JXWFI2SHRxNEZYM0ZnN0FJc1BPRDB2MG9odzVkc1JNVmdvYWJQb0lSREIxaWNQSEQ5SDNOaEtVYmhHNC9RUWhCUHNXbWQ1c1pFY3I2S2JUeGk5MEVoZlJsY0V0OXBhc3NoUUJEWEI5QzdYRWR0eVFPaE55MFlja1ZtM3dIekJjMDQvMmJubksyUm9BTkhVcEs2UWJGNHF4OGRTUEFldm9kNTdvNjFsTElVOGduWDdUSDBMT2xDYkMybmtzMTFwL1BTclQwZmJrVHIwZS9jU2hOL1g3RXZodUgyakJrL1ZYS2duUEkvWEh2RmdvaXdNWldlOXp2aDBLQVhieTV0R05OWEQwT2xtQXV6aUR2ZFc3SFJKdy9PMUtDWlEwQ2JPN0xWUjlJZXlPTTl0YWZpZE4vdjQrTEFOdnYyRzZ4WjMzOWpOcmRIdnNZczU0d3V5WnFuaStKQURzL0t0MUR4OWptZG13K3grcDdUYTFuckIxTC9oNEtZeitWQUx1MUUyTHY5NlhyUHBoQ2dFRUlFMHE4bi83SVdVdkVhczJGRHBpWTJLT1AxWFU1TGtXQTRjb0U0VEJuUW93WFN4NXViL3NKM1NBaTE2M3B1dnZWbGV1ZkUvdXRsUTJKaEhWcmpMVVRoRHBSR1ZNMStlWWl3TUNhdVk3Z05Hdi93cEhnNHdySkduajlnQVg0YnpoU2NLaElYQnl4anZwSlQ2YXBCTmlROVZkSi9iNHJPTXZaZnBRM3VsU3plM2ZrVUE5bUcvdDIxOXovTVd1a09VWEsrNkFlQ2dGV1Frb2tkbC9wbTdockVHQSs2LzI1M3cxN0k0ejIxcDhTNzk1ZGxpRUNiSmZEdXRsTzlUL01iSGg4cm9SYjdXQXNBWVpMQitMd1AxMndvMml4VUc1dSt2SU1oMkFFaGgvaUdzUUJoNE5kS0hFRGg3ancrNXk3eTJWN0dXTTNLbU9iNkZ4ODFuaHVMZ0lzdEVGK2hKazkzblUwaFFEN2ZtZVczeiswUTNCelFQZVo3UGZ4OUxsR3QzbXdFbUgrZEltMFVnVFlWTXVTTmVaRjZUcHJQbGlXN212TjVVSGNzRmJHeE83cEErL1crd1Fza2NmNk9DY0IxdGFOemlkeUFiZzB4NlpYTmRxQjl3OFFlbnhIQ0k3alMyYzB4TnRqell6QURnUllJV0JBUDAwbHdJYXN2MHF1SDErMGFmcXlkL2RIK2pqMjdTNkpjK3ljak0wbkFpd1dxWEw1VXFRMVB0Ym8veDFqWnYyQUhiSDdTbCtybHliQTJDT3hoL1o1Rjh5cERiZzN3bWh2L1NtM29uWldrZ2l3blEzb2hydlR2MEhkRy9uRjBNUVNZS1dIa1E4eHJtdTRuSFhUMzduL3VXYnY3Ly91YnVxeHlHc1RVU0VoSzdoRm55UDFQenBzNk5GbDRXRHlOODN0OWpkY3BhR05aT3hHWld3VFBVZmY1aXB6TGdJc0ZBbXllMGhNSWNEb1A5bzB1QTljcUFkR3JDc2ticXR2YTRUZ2NXdm9KclNDME5iQjFhdWJSSUNWbTNVMUh5ekw5Ykxla3JDYWd2aDRhb1RlRjcxQUJKM0lucm52NmlVSU1OcUp0VFR0L04zSWZ2Rk15QnFzLy8zNGdyTTY1U0xwaTUyaERSMXVwaEJnUTVFZmNWSG4zZmVKQXRPTEF6cnZ3S3Q2eWpyZFJVNXV2NU1GcXF1dWlMRnZkODN2S1JGZzYwd24zN3VzZFdua01nR3IwbjlvM2tIZjVTS2YzN2pYek5oOXBhOTNTeE5nRjNHVyt6ZndOQ2EwVnl3eEtuc2pqUGJXbnhKanZNc3lSSUR0Y2xqVnFVb1JXSXNBODdtZ3NRbTRpNWs5cUFrNzMvL280enB6cGtjSXZWUVVLOS93L0lUVGgrR1duMkFIb1NoY0lzRE9RMjh1QWl6R2hUS1ZBQnV5NE1MOWo0TndLTURGMExPNFBqM0I4NndJc0hJdndab1BsdVY2V1dkSnFWRVVJUW13aEpvaTVyNFVBZFlpam1VYmd0SlhTaGlDdmpZWVphRC8rTnJHWmZtSmpadmxod1B2a3prSXNDR1hNalJCSDUzUXI2R3NXSEVRcGRLWFRuQ1JqZ3RWVldVeElzREtETXVodUVDQ0ZpNkJCS1VZMC9BSzdXZTJSSUNGckZDNUNHR1BqNXpDSEdsdmhOSGUralBIbU8raVRCRmd1eGhHZFdJakNLeEJnUDJVT3hqMHc3SWpIdjR3NTFMVEo4QVFEc1hWaE1oYXgzYXd4U29McmFXL1hSRnZFV0RiSk1Cb05hNWJST2pzemluK3ppYVRlWVdMa2krRnJML1kwS0ZYMXJYd2FKOFhBVlp1a1lvQUs0ZGxTa204bDE4WTZmS0kreTl1d0xnK1RvMlV2RFFCQmlhNDU1L2l2anV4R0tINVJ6Ulp2a3RZazdHZkRlbHZ0bVdXSnNDbzkxUjNtZFJ2ZDBucnI5Qzdrem9QSlVxc0NMRFlsVEdjNzVBSU1IUUc4V2dZdXhEWU9nRTJkRW1JQnVUMXpZeG93SE9rdlJGR2UrdlBIR08raXpKRmdPMWlHTldKalNDd05BR0c5aEkzNHJoZ2RGUHJOb2FWRmE2TlBnTHNkbVoyb3VmRytjK2RxNFV2eXVVU3d6Q1ZBR09qZzZuNG1nbHk4WkdlQm5CNHhTSXZOcUhMNW5ONWliSGdHcW9qdEVIR25RaGRJVktxQlZoYkgzT0tRMzAvaFZ4c1ErTFNXREFlMTJ6czNoVG9pQWl3MkZrMG5rOEUyRGhHSlhNUWRPRXg3b0lpcHR4UHVuZHlxUnYrTlFndytzbGFKMklsaEZKZmk2ZVB3OWo2RCtGV21nQkRWZ0NOc1F0NEtvVFF4ekpycXZzanVEQWZmTjhNcWkwVllUSm1ycTJaUndSWUdmUVBpUUNMUld6TEJCanZoM3M1M1dEZmUyanU2TEI3STR6MjFwL1lOWEJ3K1VTQUhkeVFxOE1ySXJBa0FjYk45QitZMlgwOS9jWHlDemVaMEVlLy9XQ2lQZU1qMEZLajk1V0VmQ29CRnRNV3JPV0lMQmdiblRDbXpHNmV1VU5WVHlYQVNrZUI3UFk5Tk9mUTdMbEZFd254L1Qwd1E1dDFBaUp3OFB2bUNnVFlGTGVJdHJrLzVNaTd2cDRQQi9zN0JvUzZVK2RaYXY3UXhrOEVXQ3FTK2ZsLzNHa2YrblNlZktWeUlRR3BuQnJwY2FpRmF4RmczYldCaGZKUXBNdGNqZENTQkJoRUpTNzdXS0VOSmZMOGVrT0dmVFJ6V2x6SFdjNzZvbWFpb1lnRzRqbVpaVy9wTVJGZ1pVWkxCTmhSSE5jbXdOaHova3J6TGlkaUxCWnJYRkozM3hkWXRuNnBZOTNMMlIzM2VGeS9DUURTMS9mdDlyQ2tHN1p2QnU2Tk1OcGJmOHE4TlhaWWlnaXdIUTZxdWxRdEFrc1NZRC9udExUNk4wSll6TnpKUlhRY0k4QytOaUJlbm5zQW1UbzRjeEpnRUg3Y3BEM0x6UDZYczhhYWd3U3JtUUFMV1Z3eGJzd3BnaW1RY2kzQWVMWnJOUUcranpLelp6alNzVHMvRUpmR1d1ejQzcVRCbEovRDhka0RrMmxPQzdDcEJOaVFSUWNILzVObkpGK0gxcDhJc0tsdnAvem5JVk1lM2xoQmNWaUpUVTkyYXlkWDdENVV6OW9FR08zaUFvZjNKTkViKzJtS0ZYSkpBZ3pDL3MrYzVWck1tUEh0NWZMcDd4UGNWRU5XM0cxOWMrcHl4dlJweVR3aXdNcWdMUUxzS0k1ckUyQXBFU3RUWnNFUzBXSDNSaGp0clQ4cDgrV2c4b29BTzZqaFZtZFhSbUFwQWl5ays4WEhrTnRxdEZOSU1RUlk2TENPcFFwUklZbWtzMlNhaXdERDVRWVM1dWM3blptTDVLdVpBQXZObmI2UTZoUUNqTVArUzV3dUJ5NmZud3BNb0ZEa3lIdTZjTjlEODY1bUFpeGswZkhaeHRMalJ1NFdPR1pOc1RiQmdtQUk5MjRDQ1V4MVN4WUJGb042K1R5c3VSY25pTUNISWlHV2Fsa05CRmpibDc0T1dpanFhMnpmU3hKZzFNbDdCdGRFQk9wOTdrZStkcjNIek80WFFZU051VDRPYVNERzRyR2xmQ0xBeW95V0NMRDZDREJhOUR1TmhpRkJmVW9tWDRBaExoY2cxbm1YbGtoN0k0ejIxcDhTWTd6TE1rU0E3WEpZMWFsS0VWaUNBTHVjYzYyNnNnZUQxdld4L1NtR0FDTnY2QllhU3hoSU1FSkpMNVhtSU1DdTVjU2pmVkhJNWlEQjFpTEFpSVNFS3c3L2hnenRKcXpmRUtKSDV3dkI1WDdpbVZzMlp2cm9qcEZpQ0RETStpRzdmSW13NDVqMWh3UzdMK1QwNTNESDdDYXNLTkFoQzFubXRicG90UkpnckNWSVk1OTdWNG8xQjZMaHoyeXM0RTV5NEtCRGhLWGNGQkpNQk5oU2I3SHoxek0wSi9vdGVyZVozWDNFK25GcUwyb2l3T2dMcmo2NDNkK2h3S1ZMYVFLc3hmb0htM2ZaYjdtSWM2V0lzSkFWTjNYbWFxQk5uUnRyUGk4Q3JBejZJc0NPNHJpMkJSZ3R3ak9qNUlWeUtEaEd1emRpRC9Va3QvZjFCUktLblcxN0k0ejIxcC9ZY1R5NGZDTEFEbTdJMWVFVkVaaWJBTHVVYzN2c2k5N1RaWi9JZUN3Qnh2TkRWbVYzTWJNM0w0VHJIQVRZRUdrNGg2WGJXZ1FZbWhMSG1Ga2JFUlN5Q0RkWFhBM0JkU2oxZFNSaUNMRFFRWHJPcVlJMUZMcDFOUkpnZkc5eGMzdWlCNEJRRUFBZlZwYzNzNWMzYS9yYXZSK25rbUFpd09hY21jTmxENzJEMmljaFdEaXdsSFo1N0xlc05nS005a0hRbzNmenZvbnV3WE1SWUYwaURNMDg5SHl3dEloSlBvdXcwUGUyTFc5TkhjNllQczJSUndSWUdWUkZnQjNGc1FZQ2pQY2IrcnVoUzhPVTBZZjg0c0lBVGJGK3VtWnpBZmVPWGpDb001MEh4RXM5VWhSajllNk5NTnBiZjhiRzcyQi9Gd0Yyc0VPdmpxK0F3SndFMkpBVndjZWM3aEpSSDdzcGhRRGp1VkFFUDI2U3NENXA5YUhtaEhZT0FvejJEaDA0c0pZaU90bGZGT3JZV2dRWXQ0dU0rWmhvYzcrYlB0YzhFV0RuSHNaVFVtaU9wYnAxRGMxVklvbGlJWmRqQ1NZQ0xHVTB5K2NOV2Z5YzVWeGNPUnd0a1dva3dFcjFlMjRDckcwbkZtRzVSQmd1cm1pTCtheTRLVC8wUFMrRlVhM2xpQUFyTXpJaXdJN2lXQU1CeHVVa2U4d3JUaHhtTE1NZjBZamo4eDd4cFJzMGtkL2Y2aTQrdTc5LzFXbisvbDFpL1hzampQYlduOFRoUEp6c0lzQU9aNnpWMC9VUm1Jc0FnL3hDVStrNFR4ZUhvc3FsRW1CRGtTV3BoMXR2SWsrRzNOcEtqTUJjQkJodEczSTU2ZXVuVGVuTFdnVFluelF1UkI4eXN5Y2tOdDdubWljQ0xJMEFHN0x3U1hGOWJJY09RdlpsWnVhTERJY2JLeEV5VXkyRjFpTEFjRDNtM1lFUWNEOFIrWXI1Mm5mWlRaekNtOGp1c3hCMnd0V2VBQUFULzBsRVFWUjh0aU5TUW9lWk9Ub21BcXdjcWptdWtkOXlGbSsrVnF3WkpiWWNLbmtsaVFETHc2My9sQWl3T2dtd0tVTDRXSHl4dnp1dHVTejU1TWcwQ2JsYUVsem9wek1peXU2Tk1OcGJmOHE4TlhaWWlnaXdIUTZxdWxRdEFuTVFZRVBrRjBBTWFWaWxFbUNVTjZaWDgzdnU5aW4xOEIwN2FITVNZRU11YXJTdjFNMzdtZ1FZcmpPKzI3OFEvcmcrSXM3YTE5d1NBUlpQZ0EydEdWd1o3NUhwMWpWRTJPYTRTSzFGZ05IL0Z3VW00T21PbVA1RzdBdGk0L2xZVjFqU1lnVkFORkRXNnB3WENqNjRSSUNWbjBSOHQ0aDJpMWorbERTSEp1V1U5aXo1ckFpd01taUxBS3VUQUF1Tkx1N2ZFT244dTVzZ3c3a2dTbzFVSGxwSHVkL2F2UkZHZSt0UG1iZkdEa3NSQWJiRFFWV1hxa1dnTkFHR09EQXVUemNOOUhqc0VKeERnRkhWbUY0Tlllb1I1dzVGOTVzeVFITVNZREVFSDMyRGVNaHhNV3Y3dlNZQlJwU2hkN2t4SEJxSEw1alpMN2dBQjc0RGVBd0JSclJEbjZDK3I5NkxOZFpNcDNUMHlkbzgvSTFvWjdFSmtmQlBWNlFCTnFUTE41VlE1ZnY5QURNajBwTlBlUHM1elFhWktKdXhHK1MxQ0xDbk80czEzeGhER0R3M2R2QjNrbytJdEZnQmZYMmwvb2dBbXcvNEgyb09zby90Qks5SXFXbnNlNTVTMWhiemlnQXJNMm9pd0xaRmdKVVo5Zk5LQ2IzZmlZTE9maUUxN1kwdzJsdC9Vc2Z6WVBLTEFEdVlvVlpISzBDZ0pBSEdSdnBWSGlIc3Rwc3hSRTB1QVVZZHh6YTZXZHdZaFhSS2NObkJzb01Ja1NVdEdPWW13T2piR01FSHNZQ0wyVGN6NTlTYUJOajl6SXoyRS9FUmsvdEx1SWhpNkh3aGlQOUdaMFkvSmpZZFE0Q2x3Qk1hMTFiVVBxVXM4dFlnZ244MVo4MXpWVS9qWTRNcjlDTnBjZ3Q4ZFRPREpDSHhEVWZ6aXdpZHZwUmlNYklHQVhZUjl4NUJsNlNmY0hza29NY0hVZ2RmK1NjaElBSnNFbnhSRDEraEVhRitpcG5kTVNyM3VabGUyRVRPNVFKampvdWxoR2FzbGxVRVdCbm94d2l3TXJXRVM4RlY3MTV6VjVKWWZnMGFZSWxOenNwTzlPaFhCNkpRby9GN2FrYXBleU9NOXRhZmpDRTlqRWRFZ0IzR09LdVhkU0JRaWdBaldneUM1aUhybWxqTGtpa0VHSWdTaGU0TlpuYnhBWGh4OGNLS0ExUHRFbWtKQW94Mi9veVpFVlhQWjFrVFMxNkUrcnNtQVZacTR5a0NMT3dDeVhjVlhhL2ZINGdFeHh5Q2RPVGZwSmhJbkxucko1WUVXNE1BZ3lSOHA1bGh6ZHBQaUw3ZnpoR3p1WDNYYytrSWlBQkx4eXpuQ2NoczFpWXU1ckdKOXdVNm00OGNFTG1PTFd0citVU0FsUmt4RVdCSGNUd1VBaXdrdE05bExwNGtmSXRUMDk0SW83MzFKM1U4RHlhL0NMQ0RHV3AxdEFJRXBoSmdyTmQ3bXRrZkR4eXNZOGt2NEpoS2dGRkdEQW1HTlJna0dLTGR1UFpNU1VzUllHTjZZRk5FOFVXQUhaMEJlN0lBWSs3Z1RvQjdZZzBwbHJCZGd3Qzd0Yk1BOCtGRUZMMG4xZ0RnZ2JWQkJOajhBNDRGTjBRV0ZxNDVDWTNOMzJvdW40ajROcGZlWms2NzVueEdCRmdaZEVXQUhTNEJkczNHK3VzZGpmVXBsdGZkaEd6RWRUT3RTL2RHR08ydFAyWGVHanNzUlFUWURnZFZYYW9XZ1NrRTJQZTRtK0lIRC9TTzZDOXNxTStNUktBRUFVWlYxekt6MTBUb1BhSGxoT3ZnWDAxd2kxeUtBS05mUStMbFo1blpDWW42Vk8yd2lBRGJOd0ZHNzY1blptOHpzd3RGcnNXNXM4V1FZR3NRWUZpLzROYlZULy9Yekc1azhZRUc1c2J2a01vWEFUYmZhUE1kNXh2NHVJRkxySlRhMFdva2dtcUp5NldVZXRmSUt3S3NET29pd05ZbndITGREYWZPZ05BM0hzbVUyMmZxVHU2Tk1OcGJmNmJPbWQwK0x3SnN0ME9yamxXSVFDNEJkaFV6ZTZram1rTGRTaVcvS0tjVUFVWlpRM3BIL1RhL3ljeCsxY3crbERGR1N4SmdOTzhubW9QNFczcmk3TTgyTTZ4VHNHekxTU0xBOWsrQVFaNmlwMFlnZ0ZyU21OWGkwZ1RZVU5qM3Z6U3pXMDBNTmxFTDdsdHJod2l3OGlNRzhjV0ZDVkdTVy8yK29WcVkvei9lV0VEeVhFemkwZ3NpRE91T2twcWJNWFV2bFVjRVdCbWtSWUFkeFhGcEY4akh1MmpwWlVZMHZoUXVtM3d1MTdrQytOUzhOOEpvYi8ySm54MEhsbE1FMklFTnVMcTdLZ0twQk5oL2RVUVJIeXorTzVUKzBXbmxmRGl4ZHlVSk1Lb2VpbmpuYTlycnpPemVadmI1aEhZdlRZRFJOTnczSWIxS0NmdUxBRHM2NEh0eWdXeDc5MERuQ3Brd3ZiMVpzZkw0aHZ2bE0yYjIvazR1RHI3ZDlmTVJNN3VrMHdoRVFMK2JpQVpKWk04WEJScTBOQUdHRzloN3pPd3ludmFzZFVDWU9sWjdlRjRFV0xsUlJIU2FJQldQY0FGSHhrcG1qWklmd1h2Y2xQajI4eDZKVFFUR2VXZ2pNdjZKMkFjMmxFOEVXSm5CRWdGMkZNZWxDYkExOUMwaDAzay9jTEhVVDBRMmYyWG05Tm9iWWJTMy9tUU82LzRmRXdHMi96RldEK3RCSUlVQUk5TGJDNW9vaWdqZUQ2VVBOaTZQZHpDemoyZDBzelFCUmhQWThLTkxjbEpFZTU3V1dIamcwcGx5WTcwR0FjYkdnZWlKTDJuSXNNOUY5R3NzaXdpd293anRrUUFqMGhzV0dTM0I4K1hHU29OLzN1c3NtN3JrMWY5cHlHQ3NPRW4vNFlKR3BLd0wzNFlXdDZnMmlBUFdYM2N4c3pjUFRNNmxDVEFpUDc3VkJRRG9ObXVLSU8vWTJ0UHY0d2lJQUJ2SGFDd0hBV3F3RXVieXhCZEl4ZmY4dTgzczdzMjM4K3plano5aVpxY2s2b1h4RFlaMHk3VlNIdXZmR3IrTEFDdUR1Z2l3b3pqT1FZQlJTK2hkaWlRQkVXQ1JEbGtxaFFJN2ZkVkZXLzY3eklic2pURGFXMzh5aDNYL2o0a0EyLzhZcTRmMUlCQkRnT0VlRVh2cmk5OCtXZ0s1cE13Y0JCaG9FOTBLQWZBbkQxaXVvUWVHQVBZWEU0ZG5EUUlzc1ltajJVV0FIWVZvandRWTM5Y3JOMWFja0UvTTg2a0JJRVluVmlkRE40aERySVhvMGdUWVF4b3JsNmQ0T2dWQmVFdEhGcWIwV1huTElDQUNMQTlITG44Z21TRytJSzFpRTFaZmtGVkVqZVcvZlluMVRKUzJQMnlzdzY0VVdYREo0RE9SVlNxYkVOZ2tBblB0SzRkSTI5anZjZ2xBa1NqQjQrS0tNM3h2US91R2ZxVHJFdjFZb2d6T1JSZnpWTFNHMWQ0Uy9UM1lPa1NBSGV6UXErTXJJREJHZ0VFY1lSVVZFejN1dWM1NmFrb0VxTGtJc0JaYXJOZE84MnpZRWJpK1dVT0FvWE9TbWtLM2wxc1J6ZWFkKy95QWhkeWZOSzRyOTBvRnhKTS90SmtyVlQ1Vmh1Wk9iaDE3Sk1BS0RPV2tJbkNiNWwzeXA1SFJuZTRSY0krY0l4b2o2d0JYVEN4ZSttbUtIc2trd1BUd3R4SFlNd0VXQ3JxUSs5NUN4dzZYSXR3VWI1RXhmMTdlV0dsQkJIOHE4dGtjRWYwU3dXY2ltNmRzUW1DVENJU3NrYWRhUjRYS2JVR0M4SDZVazlqNHlneklvVVg2UzQwVjZtTUdMcU9ueWcyRUNMQVp1ck5xa1NMQVZvVy9mT1Vpd01wanFoS0ZRQWlCTVFLTTV6aTBFaDc5dm9GQytHQSt6T1daYWxFeU53RkdGN2dWLzEwWCthcnRFa0tjVDBoMGZSekRaa29ZNXlWbjdEVmNkTUNMZXlxZHVoRnBpeFFCZG01UWhuZWEyUS8wY0U0bGMzeHJkaXRrYThxOHZxRFRIVHJlODFBcVpqSDFNdi9aVU9McTNVMjRmV0w5TmVTcUdWTys4dVFqc0ZjQzdLZGNZSXErTmg1SXBaQ3V4empOVGR3YnI1MEpNOXAzNkYvbUJJS2hTdlR6bnU3Y3FHS2JnUDdQZ3hMSXR0aHlsVThJYkJrQjlnaGNFbUZoMlU5SUUxeTNrY0Q0YkdZSFU0TGhvUFdKeHVmN0pscUxjNUhPUmZGbEE1Wk0zYTVnblg1RE0vdEFadjk0VEFUWUJQRDA2SG9JaUFCYkQzdlZmSGdJeEJCZ29BSnA5QnpuM3RoRjZTd1hTWW9iM1JKcENRS01kbmJkTjc0VWNIM0VXb3dOT21iVC8yQm1tSWNqL0kyVjJMODdZZS83bXhrRWtpOHQ3VFoxSVhmcmovRC8zNWdadWtVSWtMY3VuWkNUWGJjM3NPWmdqNXNMK2pDK3hJRUt5NzZwNmRBSk1PWWJwQTJFWWorbGtqbGJKOENZZDRocG96M1dDdW4zTVdIRGpHWWY3bFUrdmFJcEFybWh1Unl5NUdRTjNhUzV0VDVuNmlMUTg5a0liSkVBdy9ycURCY1FnbmN4NytSdWNJaGpHNzI1R3cvb2NRMjllN0h5K205bWRyZm1vSGpuWnAxY09odlpjNE0rb0NmNTl4a1hRUDFxYzl3aXVVQjdwQ1A4cGxpUFQ0QkFqd3FCeFJDQWdNTFMrSnBteHNWVnU1OXNHMERBbU5zTVdFZHhpY2J2V0lMbHBqczVncTNHODNhT0RtOGZCeEZndVRORHo2MktRSTBMY2xWQVZMa1FtQkdCV0FLTUp2RGhma1Vqb24xejF4NmlFSEo0THlscXV4UUIxa0tLK3diL1FJTDFFN2ZxZnhIUUtJZ1pFZ0lHRU9GdWluQjRURDNkUEtHRFltbzU1QzlwVmJSWEF1ejZ6a1dVQXk2M3BENlhnZTl5ZVJCODlhVlVNbWZyQkJpSGJjajBidXBHbGVUdmtMaWhLTE1ja2lFT1NwSHViVHRDN3BacnJPT2M5YnJuWjdaSWdLRnQ4eTQzbDFQSHhoZDBvZFd4UEhuZzBpV2xIaTUzSUo2STFGejZHNVhqRm9sK0tDTGNVdzcyS2YxWFhpR3dCZ0pEcnZZeDdVbXhEQTJWTitiVkVkT09PZkw4YlJPRitiakVLT3krZG9nQW0yTjBWT2JzQ0lnQW14MWlWU0FFdm9OQUNnSEdRNWR6cm81UGRkSFNTbStjbHliQWhxWUNWbSt2N2hCK3FkUG1CQmVsTWZXNUtmbkhvbEtsbEYxU1gyQ3ZCQmhXSG4vbUxBcFRzRzN6NWtRWDNEb0JOcVpCTW9Zak4rWm9ISlhXSjhGOTY1YzlsZDkrNGNoWVkvMC94TiszU0lDRlhHcGp4aTgweHlITHU1RlVZOHJxNW9FOHhncVZ5NnZVWUMrcGRaRS9ObkkwVnRZY2ZOK1VVNG1lRVFJYlF3REpEYlQvVWhQUm1MRkdKanJyMU1TRjloODdDOUtwWlpWNG51anh0eld6ZnlwUVdJZ0ErMmNudkI4SzdGR2c2bG1LdUh4em1lSzdRQzI1UjUrbDRTbzBEUUVSWUdsNEtiY1FtSUpBS2dFMnBhNllaMnNpd0dndkd3UjBVVkxUV2g4bVROdXgwcHVhU29mRTNpc0JOc1hLZ3pIS0lYTzJUb0NoRllUYjFXVXlKeWtDdW4wTHNzeWl2dk1ZTHBtbk56cGZrSFBkeEdZY0t6LzAvSlRXUTJDTEJCaHVpcnlMY1ZkS1NVUHZYaXczY0F2R1BUZ2xvVjhId1l0TDV0S0h2NWdJekt4bnlHY3VCSlNFd040UnlOMm5sWEFQN0dMTDJ1Ujdlb3J6aEZnTDkyZTZxTE9sdkVsQ0JOaGErL0twdU82dFAxUHgyTzN6SXNCMk83VHFXSVVJaUFBYkhwUWNpNnBQTm5vdlAydG1aNjR3M2xPdGE5b21FOVFBSzc5U0ZuNTdKY0JDeEVuczBOOHpFT1Z3NlBtdEUyQWhranNHTTl5a3NJSXBiZjBWQ2xEd0VqTmpqSFF3anhtZCtmSnNrUUFEalJ5WDlMRjM3NDgyVnNudmFMUWJmY0w1M1JGQW4vTkpUdXRuQ1d1dnNkR0grTWFkdUpWUWFQT2pyY25memg0clFMOExnWjBnZ0w0c1pBeXV3ckVKM1RCMEFiOGUrMEJDUHJ3ZGNEOG1jaXphZ2lINWdZUWlSN055dVVTZkNMQ1ZLK2dmcW1SdmhOSGUrak02T1E0MWd3aXdReDE1OVhzTkJFU0FEYU9lZWxPM2RsU3IwRUUrZG00aCtQMkFHZHhiOTBxQTVSNXllZTRwVFRDRlg4K3d5Tmc2QVphTEdZZG5OdWh6SEFCdTdTekErdXZrUkRNN05YYnhLTjlzQ0d5VkFFdTVRRUhUN3NGT04yd0lTUGJJNkFEeG51NG5TQzhzeEU1ckxKZTVpS2t0K2F6QmNpNEJhdXVYMmlNRVVoQklzUnhuVGVNeWlUWHAxQ2pyc1cxc0E5WEU1ay9KMXcvR2xQSnNiTjY5RVVaNzYwL3NPQjVjUGhGZ0J6Zms2dkNLQ0lnQUd3Yi9XbzBnSjVFZWh4TFdJWWpsbzEreWRxUTRyQUlJVEVBWTdkaEVKRDdhajFzYXQzS2xyTDY2OVcrUkFPTjJGcjBOYmtlN0NmMk5ya3ZjUXh5WkZZczNCMTJzUExEaXlNRjZEd1FZN2s0UGp3Q000QlRvOE9HS1BPZUJIajBXRGhuZDlEbm4vb2lGaXRLNkNHeVZBT05Db28wUy9HTk5SRjNlZzIzNnVJc3NqQzROMXNML2tnRHg5WnAzMDlzYVBTOGkveEp0R0JmQzExWHcvWW50d2xYTTdLVm05aWt6dTZ1WktmcGpMSExLdHdjRVFudUxidDl5M2d0N3dLWkVIL1pHR08ydFB5WEdlSmRsaUFEYjViQ3FVNVVpQUdIU044TmU0b1ltQkFlNktSeU9yOXpMOERGMzZ3MVpvN1E5QkVJYlBrZ05kTEJLcE5EY29mem5sYWdnVUFiMVhpeXkvQzgzQk9YVU9leGJzK2dHUVJZdHJlOFQyZTJxczRXMG1yaHhQMTd1ajFXTUhlN1lkL2EwQk1JZWw5alBWOUhLNVJxQml4SUM4eDh0OEQ1WnJ0WG5yNGx2d2dVVjlYRXQrRld2RU5ndEFxR0w2NjJlSS9iV245MU92S2tkRXdFMkZVRTlMd1NFZ0JBUUFrSkFDTVFnd0o0RGkwbXNhYnJwcTQybDN0ZGlDbEFlSVNBRWhJQVFFQUpDUUFnSUFTR1FpNEFJc0Z6azlKd1FFQUpDUUFnSUFTRWdCSVNBRUJBQ1FrQUlDQUVoSUFTRXdDWVFFQUcyaVdGU0k0V0FFQkFDUWtBSUNBRWhJQVNFZ0JBUUFrSkFDQWdCSVNBRWNoRVFBWmFMbko0VEFrSkFDQWdCSVNBRWhJQVFFQUpDUUFnSUFTRWdCSVNBRU5nRUFpTEFOakZNYXFRUUVBSkNRQWdJQVNFZ0JJU0FFQkFDUWtBSUNBRWhJQVNFUUM0Q0lzQnlrZE56UWtBSUNBRWhJQVNFZ0JBUUFrSkFDQWdCSVNBRWhJQVFFQUtiUUVBRTJDYUdTWTBVQWtKQUNBZ0JJU0FFaElBUUVBSkNRQWdJQVNFZ0JJU0FFTWhGUUFSWUxuSjZUZ2dJQVNFZ0JJU0FFQkFDUWtBSUNBRWhJQVNFZ0JBUUFrSmdFd2lJQU52RU1LbVJRa0FJQ0FFaElBU0VnQkFRQWtKQUNBZ0JJU0FFaElBUUVBSzVDSWdBeTBWT3p3a0JJU0FFaElBUUVBSkNRQWdJQVNFZ0JJU0FFQkFDUWtBSWJBSUJFV0NiR0NZMVVnZ0lBU0VnQklTQUVCQUNRa0FJQ0FFaElBU0VnQkFRQWtJZ0Z3RVJZTG5JNlRraElBU0VnQkFRQWtKQUNBZ0JJU0FFaElBUUVBSkNRQWdJZ1UwZ0lBSnNFOE9rUmdvQklTQUVoSUFRRUFKQ1FBZ0lBU0VnQklTQUVCQUNRa0FJNUNJZ0Fpd1hPVDBuQklTQUVCQUNRa0FJQ0FFaElBU0VnQkFRQWtKQUNBZ0JJYkFKQkVTQWJXS1kxRWdoSUFTRWdCQVFBa0pBQ0FnQklTQUVoSUFRRUFKQ1FBZ0lnVndFUklEbElxZm5oSUFRRUFKQ1FBZ0lBU0VnQklTQUVCQUNRa0FJQ0FFaElBUTJnWUFJc0UwTWt4b3BCSVNBRUJBQ1FrQUlDQUVoSUFTRWdCQVFBa0pBQ0FnQklaQ0xnQWl3WE9UMG5CQVFBa0pBQ0FnQklTQUVoSUFRRUFKQ1FBZ0lBU0VnQklUQUpoQVFBYmFKWVZJamhZQVFFQUpDUUFnSUFTRWdCSVNBRUJBQ1FrQUlDQUVoSUFSeUVSQUJsb3VjbmhNQ1FrQUlDQUVoSUFTRWdCQVFBa0pBQ0FnQklTQUVoSUFRMkFRQ0lzQTJNVXhxcEJBUUFrSkFDQWdCSVNBRWhJQVFFQUpDUUFnSUFTRWdCSVJBTGdJaXdIS1IwM05DUUFnSUFTRWdCSVNBRUJBQ1FrQUlDQUVoSUFTRWdCQVFBcHRBUUFUWUpvWkpqUlFDUWtBSUNBRWhJQVNFZ0JBUUFrSkFDQWdCSVNBRWhJQVF5RVZBQkZndWNucE9DQWdCSVNBRWhJQVFFQUpDUUFnSUFTRWdCSVNBRUJBQ1FtQVRDSWdBMjhRd3FaRkNRQWdJQVNFZ0JJU0FFQkFDUWtBSUNBRWhJQVNFZ0JBUUFya0kvSDlVcGJnYWVKaWxnQUFBQUFCSlJVNUVya0pnZ2c9PSIvPjwvc3dpdGNoPjwvZz48L2c+PC9nPjxnIGRhdGEtY2VsbC1pZD0ibGVnZW5kIj48Zz48cmVjdCB4PSIxMiIgeT0iNzk4IiB3aWR0aD0iMTQ4MCIgaGVpZ2h0PSI1NSIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSJub25lIiBwb2ludGVyLWV2ZW50cz0iYWxsIiBzdHlsZT0iZmlsbDogbGlnaHQtZGFyayhyZ2IoMjU1LCAyNTUsIDI1NSksIHJnYigxOCwgMTgsIDE4KSk7Ii8+PC9nPjxnPjxnPjxzd2l0Y2g+PGZvcmVpZ25PYmplY3Qgc3R5bGU9Im92ZXJmbG93OiB2aXNpYmxlOyB0ZXh0LWFsaWduOiBsZWZ0OyIgcG9pbnRlci1ldmVudHM9Im5vbmUiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHJlcXVpcmVkRmVhdHVyZXM9Imh0dHA6Ly93d3cudzMub3JnL1RSL1NWRzExL2ZlYXR1cmUjRXh0ZW5zaWJpbGl0eSI+PGRpdiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiB1bnNhZmUgY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IHVuc2FmZSBjZW50ZXI7IHdpZHRoOiAxNDU0cHg7IGhlaWdodDogMXB4OyBwYWRkaW5nLXRvcDogODI2cHg7IG1hcmdpbi1sZWZ0OiAyNXB4OyI+PGRpdiBzdHlsZT0iYm94LXNpemluZzogYm9yZGVyLWJveDsgZm9udC1zaXplOiAwOyB0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiAjMDAwMDAwOyAiPjxkaXYgc3R5bGU9ImRpc3BsYXk6IGlubGluZS1ibG9jazsgZm9udC1zaXplOiAxOHB4OyBmb250LWZhbWlseTogJnF1b3Q7TWljcm9zb2Z0IFlhSGVpJnF1b3Q7OyBjb2xvcjogbGlnaHQtZGFyaygjMDAwMDAwLCAjZmZmZmZmKTsgbGluZS1oZWlnaHQ6IDEuMjsgcG9pbnRlci1ldmVudHM6IGFsbDsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd29yZC13cmFwOiBub3JtYWw7ICI+5a6e57q/77ya5q2j5bi455Sz6K+35oiW5oGi5aSN5o6o6L+b44CA44CA5byC5bi45Yiw5pyf5LiN55u05o6l6L2sIEZyZWXjgIDjgIDmnKrnoa7orqTnmoTlt7Llj5Hlkb3ku6Qg4oaSIFVua25vd24gLyDmgaLlpI3mo4Dmn6U8L2Rpdj48L2Rpdj48L2Rpdj48L2ZvcmVpZ25PYmplY3Q+PGltYWdlIHg9IjI1IiB5PSI4MTUuNSIgd2lkdGg9IjE0NTQiIGhlaWdodD0iMjYuNSIgeGxpbms6aHJlZj0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUZyZ0FBQUJxQ0FZQUFBQkpocFZyQUFBQUFYTlNSMElBcnM0YzZRQUFJQUJKUkVGVWVGN3N2UXY4ZjlXYzcvODZPQjJYUHlPNXpCa2g1RmJqTnFkeTYwYnBRdjh4a1ZSdUhhbmNHOEwvVUFjbHR5TFhKTXI0VDZGME1ZUlNTU01WYVdaY1VxSElpQlJGeXRGRS92LzFxclduMVdxdHZkZGFlKzNiOS90YWo0ZjVOZC9QMm11OTEzT3Z2ZmU2dlYvdi93SWxFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVjZ2c4Rjh5OGlxckNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0VBQzErb0VJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ1dRUWtjSjJGUzVsRlFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVFrY0swK0lBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpa0VWQUF0ZFp1SlJaQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFBdGZxQXlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBbGtFSkhDZGhVdVpSVUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVWamlCdXdENFB3RCt2eFhlVGpWUEJFUkFCRVFnVG9EN1ovY0FzSWFYNVVZQVZ3SGd2MG9pc0ZJSjNCM0FuUUtOdXhiQWRTdTEwV3FYQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSXhBNEw4QytMUFdGVVlnclNwRVFBUkVRQVJFNE5ZRXVPYjVKNjF2cWx1SWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBak1sQUQzRDNoZThYYWVmVHF2T05NYkpyTkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVRDQkNSd3JaNGhBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpTFFoOEJhNXVLM1dNSFAvUll1RFAwWEFMNE00SjRBRGdCd0xJRGY5NEVUdUhZM0FJL3ovdjRIQU84RmNHbExYUlRlWGhQQVpaWHRVWEVpc0VRQ2ZCNk9BUEJFei9qakFMeG1pUTJxYkxQNDlBZjZmd0g0QW9ETnZLTCtIY0RqQVZ6ZXY0cEZsaEQ2aGwwTjRKMEFmaHRwRWIrdEx3Tnc1TWpmc0pCSU03KzNNVHRUYnNpOUFSd1A0QUZlNWhjQk9DMmxnQVhrWVJ0UE4yT2c5VDFiYndDd0pZQXpGOUNHdmlZK0VzQW5BYkFQTlluOTVya0F2dGUzY0hzOW40bmR6Wmp6UXdEK3lZNmpVNHBlRDhDMnhxSHRBd0QrbUhMQmd2S3NBK0RWQVhIMUR3UDRka0U3U3Q1WEJkWG9FaEVRZ1JWQ1FPUG4rZDNJMkxqcmJBQjh4OWRlcTVrZkFWbTBXZ2o4UDNZKzViYVhnZmMyQmZBdkM0SndSN3R1NlpyTU9RVG5pMk1GRWVRNTJJM01PUDU5Wmc1NkpZQ2RBSEFPT0xmRWVjVlJBTGkrOEhXenRuVUtBTDdidUM0OHhoaWZuRGdYMmNBRDgwMjcxalkzWHJKSEJFUkFCRVRndGdSQ2ExZk10WkxXS0d2ZjkvdlpOYzkxN1Z6aWZMc2YvQ1d6MXNadm9OTHlDWEFjK0FhN2ZuOHFnQ3NHYnRJbVp1eTJENERQMnI3MDB4SEh2UU0zVGNVbkV2Z2Zaci93Wk5Qdi9nUEFlUUIrQ09CZjdmOStwUDRRcE1qOVF1NEIvRldFTWVkRW5NOXhUcXdrQWlJZ0FpSWdBaUlnQWlLd1hBSWhrV1lHZmVSK1FaODE4SmNBZUtPSFphWHRHN0tOaHdadVBjK3hjMitoRDc4bDlhamJBNkJmQXY5dGtrUytoNytEbk9kK0RjQ2RuYXIrMmN4NXQxUEF1T0hocXdZUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSV0drRUpIQzkwdTZvMmlNQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDNHhDNGt4SGplNlVWZ3VhaFpCNUMzdEU2am81alFmMWF0akZDS0hSbWJ0Wk4yU1lLanJ3THdJV1ZIQkVQdDJKTXJ2VmR3alYwOXVOMXo3VE9zdStmcVVCTC9UdWlFbGNLQVQ1VFBJQlBSNFhQVkhpV1l1TEQvd2pnaFpXZ1BjWFkrV1lBTHdCQXgvUWxwVEg0TElsSGlhMFN1QTVUKzMvdE0rSCsyaWI2emZIQklWWThpMDQyK3hvSGxBK085QTBMMmRyM0hmSGZBWHdEd1AwOVBIOEw0TVNTampiRGEwSUNlelR6STNiYzk2Y1oybHpicEpERFR0ZFlMY2VHa0lnNEJad1BCTUJBRFNHSHRMc0JlQnVBVjlpS2VKOE9xdkE5emJHYjMvSW5HeHQrYmNhazM4MjVNREZ2aURzdkxYMitjdDlYaVdZcW13aUl3RXdJYUg0eGt4c3hvQm14Y1ZldUUyMG9nRUpYZ0phMlp2M2ZBRDd2WmNpMWFVQnNLbnFCQkZhS3dQV1V6d1lGRHVoY3o4QkxEN2Q5Z0tMYU93QTRZV1o5Z3Qrdmp4c3g2MTBEZHUxczdEOTZCSHNaMkpIdkxRYlBjZFBlQUE0ZW9YNVZJUUlpSUFJaTBKOUE3VFdVL2hiTnY0VFFtSXQ3d053WHBoanlIQlBuUkJ6blRCSDRPTFkvTXVlNUQ0TnhjMCt2U2Ird2UveWZzbXVadFlPdU1BQWh6MGswaVd1NkZJSGlIdjVLMlN1WTQzTXhKNXNZaUpMblN2ekV2ejBMd1BVWnhuSXZqWHRuemZtYjMyVmN1NVNzN241aHlHYUtnajhOd01WTGFkQUFkaks0THM4bStVRjJXUlhYc25ZeDU3RXVHS0JlRlNrQ0lpQUNJaUFDSWlBQ3RRa01kZVltTkxlZjh6dzFsNnNibk11OTlyZG12c2x6clArV1crQ0M4NGYyaWR2T0p3N1IxQzJNejhCekFnVXp5QkhYQkRpSFdXbEpBdGNyN1k2cVBTSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJd0lRRUpYRThJWDFXTGdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJd0FJSjBKbVdRdFowMEx5WFp6OFBiVDUxZ1dLd2JNWWRBQndKWUtmQVBmbGZWdVM2eHUzS0ZhNEpPZnRSQlBHNWNtQ3JjVHRVeGtnRTZNaExZZXZiQVRqV0Vic3VyWDVJQVdlKzR5aVNUVEZYUG45TGZLOE55YWYwbnVWY3Q1VVI5Vi9iT1BEK3c4amlyYTZORXJnTzM3RWN3Vmp1UWI0dThQMjhCTUFlQUw0NjhQMGRRdUE2NU1qeEI5T1d6UUI4SzZlVHp6VHYrZ0RPQUVEQk16ZjlHQUFkZHk2ZHFkMjF6UnJLMmE2eDgzbDJ6T25iVFRHNzV4c2hlRmRFbk0vUmxnQW94T0xlbHh2czM4K3MzZmhJZWZldzM4Vm4yNzVPOFk2ckt0ZGRXNXdwNTMxVnVTa3FUZ1JFWUFRQ21sK01BSG5pS21vSlhJZStMMzBjb0tjVThaMzRscWo2Z1Fqa3JoTU9aRWJ2WXFkOE50YTFZb0o4YjdqcCsxYjA0Y3JlcmF0WHdKb0FUZ0d3Z1Zma0w0MjQ1cE5NUUNuT3ZZWk9qemJ6Tzg0ajd1cFVSTUZIcnNXY05uVGxLbDhFUkVBRVJLQUtnZHByS0ZXTW1uRWhzYkhDRit4K045ZDM1NVlvWEhVTWdOOU1KUGk2TklGckJvcitNb0RIQlc3a2Z1WnZGTCt1bVdKak90YkJ0ZDlQMXF4TVpWVW53SGNvMTdZWjNMaVA4UGxyekpqNlBRSHJqakRDOUMvT3NOcmZTNk80TmZmUWFnU016akJqMEt5eC9VSzMwaVh1eDllRXhqTUpmSGR3RHlhVXBnaDZXck45S2tzRVJDQ05BUGRmdDQ5ay9UQUFuaFZVRWdFUkVJRWxFQmpxekUzb0RBalAwbkFlMW1kc1B3ZW1IRE8vMTZ3RDdCVXc1bzAyd09mUzI1akRlV3FCNjdYTUdzTkpBRGFNelBsZTRwM3R5bW5iblBOSzRIck9kMGUyaVlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpTURDQ0VqZ2VtRTNUT2FLZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUl3TVFFdWh6UVBtR2Q3djQ0c1oyNTFjY2N3aSsyWWlnL3l5MHdrajlIdUthTk5mbnVBK0I5NXQrbHNhNkVVc1VzaE1CRzFySDg3bzY5dndhd2l4WE9LVGw4UDVTQTgxMk1nT2lIaklqcnJoNWJpaUk5ZlVIaS9VUHhHYnJMVVZ6OEZRQU90bUxvcjdYL1hkSkgrdG9xZ2Vzd3dSekIyTDhGOEZsN0wwT2wxUkM3Yjd2UFl3bGMveDhBbXdMNGw3NmRidUxyNlR6LzBjRDdqMmE5MUlvYlQyemlhTlVQNVd6SEJzVEVWaWhZdlRtQWM3eFdjaXpJUUN0dkQ3UitETUVIMXMvdkg0VVY3dWJZOERFQUw2ODhCcTB0enBUenZocXRjNmtpRVdnaGNDZjdIdUI0ZE9tSlkvMnZEK2pVcWZuRjBudEltdjByVGVBNk5yOUlvNUdXYTZXTVM5TmF1M0p5NWF3VHpyblZVd3BjazB1SUkvOWVNMmhoRGY2eE1lL3hOdWlpRyt5bVJuMmhNaGcwOFNqdmh6RUZ0b2RxbDhvVkFSRVFnZFZFb1BZYXlrcG1GeE9JNHRpWkl0TGZuRm5qYVM4RDRCMXVBN0RTUEs0QlBzMElkbkcvZXF5ME5JSHJqVzFBVFFhemR0TnZBV3dDNFB6SzRHTDFhVXhWR2ZRQXhUR0k1RDhiOGVqMVRJRFczNXZBTXhTNjU5cjMxd0JjazFuZkI0eFE5aXNEMSt4dDl6WlRpd3V0Yy9GYTdxKzl6QVNOWnI5YWN1SjdqWUdsS2Z6TlFOaHRpWUZ4ZHdCdzlaSWJYR0I3MS9rckZya2FSUTBMVU9vU0VWZzhnZGo2Rmh2R3N4Y25McjZGYW9BSWlNQnFJVERVbVpzaHpvSE41WjR3WU5QcEFPN3NHVFRIUUo1ak1KdGE0Sm9DMW9kR0d2b3RzNTdFb0JRTW5MVFNrZ1N1VjlvZFZYdEVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVlFSUNFcmllRUw2cUZnRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUlHRkVxQTRINFUzdG9qWVQrZGJYeWhqemszbE91a0hyVkNmYnljZEV5bDRXeXZsQ05mUXJ1ZFloei8vOEhKanoxZXNHT1ZsdFF4VU9TSlFrY0NqcllnMUhZWkRpUWZCS1RiMHU4dzZoeEJ3ZmlpQVl3QThKbUxMZVFDMkI3Q0VaMjBJUHBtM0tEczdSUjNmWmh6SVgrMWRPWlhJdFFTdXc3ZVE5NGhPMUc2NjFvcEVmTWY3T3dVNjN4Rng4Ryt5OHRtblU4aG5BTnlZM1d2YUx4akNzV2tvSjZ6S1RTOHE3bG4yUHZnQ0E2Y0NlQ2FBNjRwS1hlWkZROTdublFCOE9vRGxhQ3RlRXhLMGF4dDNEeDFZaHQrOUV5SzNrV1BhZ3dEVUNrSlFXNXhKQXRmTGZQNVdzOVV4TWQ4bE1xRlEwSFlEZlR0VysveUN6cko4Tjg4MVVYaU5heXZYVnpCUUF0ZjVFQ1Z3bmM5c0RsZmtyQlBPd2Q2WURWTUxYSzhGNENRQUczb0dYbTRERW8wcENObDJuMExpMHN6UGVmRmhJOTNna0JBZjE1ZWZZVVgrUmpKRDFZaUFDSWlBQ1BRZ1VIc05wWWNwczc4MHh1cjlkaStpMXJwV0RSQU1RTWl4NFZzRGhZMFI2TTZ0ZG1rQzE2RjlDN2FuYmMyMXp6MTdpMWtUZlhPZ2dLSHE2Mk9ycnIwMWdXMEFmQW1BNzBOM2tRMDhkMFVpc0R2YXN6SVVuL2NULzhhNVNVcGFHd0QzWUI0ZXljdzl0RDNzM3MyYzNsY3BiV01lY3Q0UndLY1N4SzJiTWprMzRYNVZydUI0cWsxenpCY1RNM1J0WlpEVUxjMzVyRFBuMkFEWkpBSWlVSTJBQks2cm9WUkJJaUFDRXhNWTZzek5FT2ZBSmtaMVUvV3hNMEYvdHZ2Q241K0RrU1BiTUtYQTlibzJDQkp0aUtXNUJWZXRkWHNrY0YyTHBNb1JBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRzR6ZUVjSVJFQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJDQkZBSWJBZmd5Z0xzSE1zOU5QS1NyUGVzYnA4VXpqSkMxTDhMN2ZYTlk5U2tBcnV3cUlPUDNFdUdhTHVGZE9qZFNJT1dMRlVVR001cWtyQ0lRSlVDSGZBb1dVK1RXRjAxdExyb0V3RzRBS0lTWG1tb0tPS2NJeWRNdU9qZFQ1UFhDVkNNbnpGZVR6eGpOb0wwZkIvRHNRR1YwMXRnTHdDRWp2OThrY0IyKzg3bmZNRDVmVHdaQUVkNzd0WFNtendKNFZXVUIrU0VjbXlncVNmRUROLzNTQ0JBOENjQ1B4M2hZQnFvakpxSkF3WVQ5QVp3L1VMMWpGZnN6QU4vTXFHd29aenM2cFhIc1RMRUNOMUdZWUhNQTU3VFkyRGJ1ZmltQWoyUzBMeWNyditOOC8rNGV1S2kyb0VKdGNTWUpYT2ZjYWVXZEF3RUpYS2ZkaGRVK3YyZ1R1RWdqT0d5dW11TG1FcmpPdjFjU3VNNW5Ob2NyY3VkWWM3QTVaTVBVQXRlMEtSWk1aaTRDbHB3ZmMrMWpWdy9nMVNZNDNNWWpyVGZGMWpvWW5JQno4aVVuQms3anZJckJ0c1pJZjdUaWNyeC9TaUlnQWlJd05vSGFheWhqMno5V2ZmdzJNTEFpQXpDNWFhNTcyRzNyY0xSL1RKSHJKUWxjMzhmdThmc0N3VnpicHREd3laVTdYR3lObDlYc2JFVzFLMWZaV2x6c1hvMXB3OUIxMVZwcmlJM0hhZjkrNXY5UXVEdzE4VXdKN1ZyUHV5QjNiSDk3Ryt6OFl3Qml3YzVaeGJFMktNNlN4cDVkNHRZY1R6UHgzZWNuUHJlYzM2MEdrZXNIV0pIemh5UjB2akcvQXdubUtNc0tJOEM5eTloZVB2Y3ZmejVTZStkaXgwak52VTAxRXJpZWlyenFGWUhsRXJnSGdFMENZeXFldFR2YmpDRjVubW1LTk1TWkc2NzdmczZzeVc3aE5lanRBUGFab3BFVjY5d2J3THNENVgwYndMc0EvS2xpWFdNWFZicU9QcFhBOVIxc01HY0dKVzFMdjdiN0VmUXZXRWxKQXRjcjZXNnFMU0lnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSXdNUUUvK3Z6RTVxaDZFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQ0JoUkRnMnVMcjdDSGFrTWwwdEtQb2N1T2NOdWRtMFdIeHpRRURoeEFNSkpPakFuWDlMWUFUV3lEeGtQYUJSbXo3WlMxNWVORDVUUUQrTUdmWUM3UnRKWW5ObGVEL2QrTUEvbmdBZFBvdlRac0JPTEpENEpiUDRFR0ovYmVXZ1BQZDdLSDBGM1EwN01NQVhtL2VlYjh2QlREeWRiWDRqR1YybDVNekhXOG9nazZ4VW9vU2hOSWpBWHd5RW5TaHBCMFVaT2V6SHhKbTU3TlEyM25rUlViUTZyUVNRMGUrcGxSOExlVlpZN0NHUGF6b1NPdys1elIzQ0lIcmtHaGJqWGRrVHJ0cTUrMFNUcWxkM3hUbC9TT0FGMlpVUElTekhhdC9udjBXK3FZY0RlRDVIZStWdG5IM2I0MDQ5dFpHc09YY2pEYm1aTDAzZ05PTmlBWUR3dmlwcHFCQ2JYRW1DVnpuM0dYbG5RT0JsVFRucUNVODFIWmZWdXY4UWdMWE53dElVYUR1dXNRSE4vUjk2VE4rS3hYeEhVTjByRXZnbW5NcVA5QkdJc1lWbDQxemZBb0R1T2tSa2ZITzBJM2ZIc0F1WGlXY2IrNXJ4b2dNQ0RaRktoRXVLbjAyYXJZdjlweHh2RXlSajZrRDk4UkU4QmdFaC8xZ2pQWGNCd0U0eXdUSStVc1AvTE1BbkZEelpreFExdGhqcWE1MzdnUUlWS1VJaU1BcUlsQjdEV1dsb291dHhYRWY5ZkNLamVZM25PT05HcWxyclpiQ1NVOEg4Tk1hbGJXVXNTU0I2MjFzVUVyZko0b0JEN2xtV2xzZzl3bFdVSHNOangvdkNRTmhqaVVBMmxRL3hseHo0TzdXV1h6dU9rQ3N3QWZhQUNYMzlUS1V6QmM0Zi93NkFBb0t1dWtDQUZ5em90aFpUbHJIaWxodjBISVJ5K1Rja1h1Sk5mYlFjdXpMemN2bjhlVUFHR3dvdE0vYTdHbXdYTTZIN2g2bzRLdG1EcmVEQ2NTekpGSHZYRTRVekQ4K0lOTFlWczZwTmlCMzZycFlyazNLdjNvSmhQYlVHaHBkWjlscVVwdUxIVFhibEZPV0JLNXphQ212Q0lnQUNiekNubnYwYVZ4a3hYZXZtQWpURUdkdVluT2YvOVZ5Zm4yaTVtZFYyeGJzUHF1Z21XWXVYVWVmU3VENnFUWlFWbWdlNHlOZWtuOUVhdmVRd0hVcUtlVVRBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSSG9KQ0NCNjA1RXlpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0loQWhRS2NyaWpKVEpDU1VLTllYRW5PZUU5Q1lNK08zQUd3TDRLckt4b1lFWDFoRmlsTVExM1BKbEk3WGRISU9KWXJRMExueDBzcDJyK2JpeGhaSW1SdnJQdUpmYmxzb25zUDN3Ull0RFV6dHYzMEZuUGtzUFJuQUp6cEV0eW00UzFINkx5N0FXZGpGMnBmUEZIMndLMmdDUmE3NWJ2dE01RjdFUkQybWFFdEpuU25mZ0pKeWExOVRLbkJOTzNpUEtiNUJJWElLWHNmU1ljWmgvVlVBYnVocC9CQUMxNkVnRmFXQ0JUMmJWKzF5Q3BueHVVcHh6cWxXNmNnRnpVSGdlaTBqS0htUytaNXM2TFU5eDVtclRlemdLd0I0TDJzTHRqVG1VZ3lUSXRkM0R0eTdXazVidGNXWkpIQTk4b09tNm5vVFdFbHpqbHJDUTExUVYrUDhZbWtDMTNjMFlrWnJCbTdrYndCYzMzR0RZODlFYnYrYXU4QTFneWlWaURYZHdRYmtjVEYyalN2YUJHSzZucmVWOW50by9qWDM1MnZNZTFBeVA1MkR3RFVaaFFRT3VaN0FPZVloWTBJTTFMV3hFYnVqU0J1Zlh6ZU5LY0N4SllCVDdQeThzZUZhdTdiL25ZbjU5SzErN0xGVTF6dTNiM3QwdlFpSWdBaTBFYWk5aGpJRTdiRkVkMlBqRm9yRmNyMk13UjJHVHJscmoxMzJkQW1lbmdsZ1J3Qy83Q3FveCsrY3gzSE00SXZ0MW01ckR4TnZ1cFRqS2diWDNTbFEwRkJuRk41bTlpN2VHS2lQWTgxWFRyQ1hPTmF6MXZkZTliaytkeDBnVmxjc0NIbEtBRXEvek5DNG1ubStaTmZwdTlZOFFqYmV5WnovWVA5NmRRZXNEd0o0dzR5RE10OGV3TjR0SW9NY1IvTWR4cjEzSnJMa0hrTkk1UG84R3d6b3NqNGRhS2JYTXJqOVIyeGdWTjlFem1IZll3VHpkNDl3NGZvRmc0YlBYZWg4cHVobFZvVEFYSVNsNTJMSFZCMUZBdGRUa1ZlOUlyQk1BcHc3TWxoSUtMRHBWUE9UaHVRUUF0ZXhlZXBMekg0Wno1a3RNWFhOLzVmWUp0L20wblgwS1FTdVkrZTZPTzdtK2VrSGpMajJ3R0JLOU1tSStRZ00xVGNlYk5aYUR2RDJzWDVnLzFZeXorMWo1eDl0a0txU2ZmUSs5ZXBhRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkNCU2dRa2NGMEpwSW9SQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFnVlZLZ0FjcFR3T3dodGYrU3dEc1lZVTc1dXhjRlhNUUdjcnh0WS9BZFlPWTRvakh0d2p6dnRZNnZhM1NMbG05MldNTHBGUnZRTThDYXdsYzB3dzY1NzdPQ09uczEySVRCYjZlQXVEY2xqeDlCSnpwTVBvTzYyamVob2JpQjdzQ1dLTFRiQjgrUGJ0THI4dnA5UHg2OHoxNWU2UVVPdlRTNlpudlB6OUo0TG9YK3VTTDk3UU8xKzRGdWM0b2ExdHgrWkRZL1c4QmJOM3gvS2NhTzRUQWRXak1VRXRjSWJWZE5mT3REK0FNQVBlc1dlZ015OG9WWGhuQzJZNU9kWWNHMk9RNkZyWUpUUThwYXRBVmhLQkczYlhGbVNSd1BjT0hVU2ExRW9qTk9UNEY0TE16WnJlOURVTGltamptdDNHMXpTL21Mc0RyMy9zKzZ4K3JSZUM2Vk5nMnhLZHJYQzZCNjF2ZVZCSzRidit3akMxd3ZWdEVoS1BrODhmMTZXYzRJbUJjUjJCd3hpdExDZ3RjODAyekhudEVZVmw5QWtZVlZubWJ5eWpHU05FOE4xRTBiaXNBREQ2dzVEVDIrbTNYTzNmSkxHVzdDSWpBL0FuVVhrTVpvc1ZqaWU2R3hpMFUvK0dhRzRWQngwaTVhNDhwTmpHZ0U0TVN4Z0pNTTJqR0RvWEJjbExxajMxWGgyaHJpajJ4UEJRd1A4dnNXWkNYbXk0eTY5NmJBN2lpVCtHQmE3bU96bm52ZXQ1dlBBZkI4UlRQUzR5ZHhucld4bTZYVzErTmRTYXVIM0Y5amZ0UGJ1SzlleHFBa3pNYkdOb3JZeEhjMzl3bnN5dzNPOWZodVpieTZVaXd5U1l2Ky9nekFWellvNjRoTGlYbjl3SWduMUR5eGEyYlBBeU95M2RlS01EbWp3RnNOOE8yOXVIWDlaM2l2TzJkOWg3SEF0VHlQTkRCRXJudWN4dDByVWRnTHNMU2M3RmpxZzRpZ2V1cHlLdGVFVmdtZ1NmWTh6NyttZTBiN0h6b25BbWJOY1NabTlnOHRXUS9ZMEkwLzFrMXgvNGNPKzgxQjJNR3RLRjBIWDFzZ1d2ZWovMEI3QnRnd1lBOEhLT2ZCR0JkNzNlZWMrUTU1MytyekhEcDUyQnI0Q2p0T3pYcVZoa2lJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSVZDRWpndWdKRUZTRUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ3E1akFIYXpZSmNWSW1INEhnQ0orZExhNmNlWmM3Z2ZnOU1EQlU0cVYwTUh4bWdIczd5UHc1SnBEWjkyakFQZ0NvUjhEOEhMalBQbkhBV3hmclVXT0xaQXlOODQxQmE3WnRpN25YSXBmVTJ5bnJRLzNFWERlQ01DWEhiRWpuemZycFZNb0JSRG0vZzZMOVpVK2ZLYnVmMTFPdmJ3L093RTR3VE4wNlFmN2wrSndFL3FHbFRnVThEN1RRZk90em4xc0V6QXY2WmU1QXRjVUR1YTRvQzB4K0FYdmxadCtBT0FBQU5lWEdGbnBHZ1lHb0ZEMUh6TEsrd3NyRmg4U0dzOG9aaEZaYzRWWGFqdmJ4Y2FidjdhT2hkL1BvTWh2S0lVdy9VQUFGT2Q0MWNCQkdkcjZETjhEZE5yaUdMbzAxUlpua3NCMTZaM1FkVk1SaU0wNVNzVnZ4MnJISElJL3JLYjV4YllBS0NxZWsvN0dpTHZ5SGVzbmpyMzQvYmc2cDdDT3ZEOEM4RUZuWE5Sbi9VTUMxKzJ3SlhEZHIrTks0THFkWDhuOE5QUzhwd3JSTFVsOFBYZHUwWkMrbzUxL1VUelBUYW1NK3ZYNG02K08yZkFKQUM5YUFjSm9ZNi9mbHF5RjFMaVBLa01FUkVBRVNLRDJHc29RVk1jUzNRMk5XNTVqeFdISDhwRXBIUjkwY1g4QWdGTUJQQ1NTa1VGYW56WFFYdlpTQks1ZlllZWdQaUx1TTc2bEMzREI3OXNBK0pMZDUzUXZIL0pjUVplWll6MXJYWFlNK1h1Tk1YTk0vSy8wM2gwT29Ea2I0N2FkejZTL2YxbkNaaDBBRkZIYm9PVmk3cGZ5VEE3blUzUFl6NDZkWFdtYVFPRzNaN2NJd1c5cDIzejNRSnM1OXQ3WkJpK2lLUG1TRS9kSEtZTCs1a2dqS0xiT2ZYQ2VVK0k1TEs2ejhUNzdxZmFlNnBLWnl2WTZCT1lpTEQwWE8rcFF6UzlGQXRmNXpIU0ZDS3hXQXB6dmNwekFNOEorNHBsSTdpWG1uQitxelRIM3pNMDliSUFuanBWaWlmTlVCZ0h4ZzZJY0NPQmJ0UnVRV1I3UC9PUUduK0hjSVJiTUpMUDZXV2N2WFVjZlcrQ2FBY1lZdE1vWGpML2MrQmRzQ3VCaTg3L25BVGd5UUh1STlabWxuNE90MFNsTCswNk51bFdHQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWhBQlFKakhkNnJZS3FLRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSaUJDZ1U5TWJKNlJENThrMWJmMi9ta0RrOGFmV2lmZktUQVloNXhBNnhlMVF5Zmt3WkE2ZDgwNEpPTCtXaU1mY0NjQjdBZXhwS3hyaXNHd20waFdaZld5QmxMbEJyQzF3M2JUdk1RQSs3d25LcGdxMDl4VndqamtKZkJ2QWN3RmNNTGVia0dsUFh6NloxVlhQM2lXOFN5Zm9wd000MjZtWnp0NnZCc0QzWW8xRXA1bnRBTnpUSyt3R0FNY0JvS0J3emZSaEFPeC9jMCsxQks2YmRsSVE5eGpMbWQva2d5cjBXMHZsQUFBZ0FFbEVRVlNLYXVVS1hDOUpWTTN2SjdudjZUWWgrZFQzOE56N2FoLzdjcDN0MnVyaVh2eitBUFlOWktJdytwc0srdnhhQUU0Q3NLRU5MTE9IZFh3YlE5amhzVFk0VEVoazRpSUFUKzBoc2wxYm5Fa0MxMzJlQWwwN0JRRUpYUGVucnZuRmJSbTYzd3ovVndvbGNlNHpaSENzTVFXdTV6aHZkNFh1WW5PMFVoRjdDVnozZTJkSTRMcWRYOGthcFFTdTI1ayt5SXlWenpKQklpbjY1cWJTZDBESkUzQmZhd1BGTXQzRWZZWERTZ3FjMlRWamZ3Y2tyakN6RGlCelJHQ1ZFYWk5aGpJRXZyRkVkLzF4eTdvbUNOdlh6TGVOMzRXeDBsQUMxN1MvSzJBcjl5cGVQSURJOVJJRXJybVBST0UyQnE1MEUvZVBLRXgxZnVVT3dIWGVqd1BZTlZEdUs4MGV4NGNxMTVkYUhPMmlHSnd2d3BWNi9aenlQY29HNHZMMytmb0tYTGVKLzVYY3U3c0ErRndnQ0RrRkJEZXJLSzdIZXRpdlFuMnV1Vzl6MmMvaFhzWHhMVUZrR2V5VDcrdHpPam9jaGNoNWRzRGZtMjB1Kzk5bUgvaGRBNjlsRGZsTWRJbGJoODc2dE8yWng0SkNEOWtHbGIxeUNjeEZXSG91ZGt4MXB5VndQUlY1MVNzQ3l5UHdRRE1lUFJNQTEzejl4TUFnUjAvY3BOd3pOMHNYODgxZDU0L045VG1mM1JyQXVSUGZ2emxVUDZiQWRWdUFzWmVhZloyUFdDQ2NxMUtVbk9kSi9WUjdicmIwWjZKR0g5SWVUQTJLS2tNRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFSmlRZ2dlc0o0YXRxRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFYWhFb00zSm9WSVZzeTRtVjlpUmpibWZGZWlqczdPYnZtREViWGNFUUNmRUlWTHM4Q2tGZDA4b3FQRDJBRjRCNEVYV01aQmkzMHAxQ1ZERWtRZlI2U0E4UllvSjdWTElrZzYwRkpVZk1sME40SjBBZUlpK2RxS3d6MUhXQ1Rqbm9IZGZBV2Z1amJ6T09zR3lUWDgyenJEN0dLSCs5dy80N0Rmc2xpeWltM3IvY3gwM1F1VzJPUTh3LzlCT0hiRStWdks5U2VXMmhIeTFCYTdaWnI0SC9zNThsNCtvN0pRdWdldHdqL0xmZjI2dWJ3SFlGc0JWUytpTUE5cVk2MnpYWnNyNkFNNElDREpjYk1SMktQRCtzOEoyVU9TZjErOW5SYTRMaXltNmJHOEE3NDVjbWZNdDk0dW9MYzRrZ2V1aTI2dUxKaVFnZ2VzNjhGZmovS0tOM1BNQUhCbklRR0doelFGOHZ3NzJhQ2tTdUFaZWFPbk1RZUQ2WUJ2UWJlRGIzbHI4SFFIY3F5VUhBd2x4RFdMb3hEVzAwN3hLSGdHQVk3ZXgwL1lBZHZFcS9aTU5rSExKMk1iWStpZzY5dlBNdWxlendIWHNYWmVKTUR1N3UvYVM4bnpIbnIvZkFMZ3V1L2JiWHNCMUdnWk8rRjZGc2txSzZCSzR2dHc4VjN5MmFxV3AyMXVySFNwSEJFUmdtUVJxcjZFTVFZSENyRnp2ZldKSDRkeDNZMTQzNVl3SjNYRmRUQVNVK3o4TU12ZURIZzNsUHQwYmpJRHJJd05sdkJiQWUzcVUzWFZwTEdCcmMxMmY5YmhZM1hNUnVPWTg2cTRSSXplMndUTjlYeWp1T2ZMY1JHNHd3R3M3eGtReEFia2JiZi82WWRlTkxQaWRhOGZmTExodXFaZkUzbTE5QmE3dlk5Zm9IKzZCNFp5SFl1Zy95UVMyTm9CdkJNUUVmMnpmZVZka2x0ZVd2VGtId3ZIKzdieU1jd2g4VHZ1NDdrSEJONzRuUTRsY0tBQjNZU0lYenMxNVhvZEJna0tKN2FibzkyV0o1YzBsVzVlNDlZOXNBTkhRV1orMlBYT0t2dkZzMHhmbjBsRFpzVmdDY3hHV25vc2RVOTFJQ1Z4UFJWNzFpc0R5Q1BDczhBY0Raak1vT2ZmL2FvNUpTK2prbnJsWnVwaHZ6am5KdHJIZDgrMDUyaExtSysyYXNRU3VPVTQveE95SjdSNEFHUElqaUowQjQrWDhqaDlVc0I0UnVuZExmeVpxOUVjSlhOZWdxREpFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVZRUlDRXJpZUVMNnFGZ0VSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVJRktCQ1J3RFR3ZUFJVXFVbE9JR1oyY3R3RndhbW9oQmZsaWgwOXpEanI3MVhLZGw0ZHRieWl3UjVmTW4wQk1DR3N1aDNncFFFQUg0SmpqYWhkaHRvK09xSFE2VHhYUnBpalB2Z0FlNWhWK3BoRWkvMEJYaGZiM1JwQmdQUUJ2Qi9EZHhPdjhiQlJib0hocHFpaStCSzdUUVc4RTRNc0FLRElmU25UTWVlcEFUc3hUQzF6VEtYd3RBUHgzVHVreEFQN0pQRE5yT0VaUklPcVp4a0g5dkFFTjVmZVpRbmQvektoREF0ZGhXREZCbEtGRjR6TnUzZVJaYzUzdFlnYnpPL05SKzQzejgvQ2JNeGR4RXRwQndhSFV4UGNqZzdMdy9lc25QcXNVVXpqZSs0RXNPRjd3UlRqY2JJOEM4RmtUZk9KTzNyVVV5Q2dabTNNOHNJTlgxaThBUEEzQWxRbU5wZERmOVFuNWxFVUVhaEdRd1BVdEpEVy95SnRmeFByZ3ZXMVFyNUJnYjUvMWg1dytMNEhyZVFsYzU5eTdvZksrQk1DaGtjTEhFbDRmcW0ybDVZYldKK2V5M3BQVEpnbGM1OUNxazlkOWw4OWhyV25xZnRzbWNMM2FnNVhWNlhFcVJRUkVvSXZBbGdBKzNwV3AwdTlEQnkxSU1mTTRFM1R0TlNrWlcvSndiNVA3UW42d0Q2N2RuSlJaZGx0UVB3WTJmWFVQZ2FHMnNvY1FsL2FienZxNVBzYjF1OWphV20wNzVpSndQZWI1aDY1NWNreEFMck9yWm1YL1IzdnZzeTVhY09haEJLNTNNdnZKbnc1d29ZalpLd3ZlRFJSWC95cUFPM2hsZnNrRWUrSCt5eEJyeWd4MmVZd1RTTE5OREhtc0xzRDFPd3BiUDd1bFFvcFJNL2phTHpPTm9vZzQ5d28yaUZ6M094dGNoNkxPdVdMMm1hWlV5Yzc5a1hjQVlQRFFVT0o2Q0lQUHR1Mnpjbi8yOCtaYmNMOUFBZHc3WlQvbnZvMlNDSlFTbUl1dzlGenNLT1hZOXpvSlhQY2xxT3RGWUhVUVlIQW5ucVY3WEtDNURKRCtsaGxneUQxenMzUXgzNjc1WkhOTFlvRzUrSHZ0ZWYwTXVrRXZFOFlRdUc1Yjc2RWZ3cVptUG5OeG9CV3hBTk94ODFJbElGTE9XSldVNjE3RGM3bi9BR0ROeklJNEJ6dlF6RTgvQklCQnY0WktKV2RGaDdKRjVZcUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNCUVFrTUIxQVRSZElnSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJekl6Q21nK2ZNbW42VE9ia2lGUThFUUNIYyszcU5PZFk2dytVSWFPYnlHRUxndXNzR0NwSHlZT21RN2VxeVFiK1hFNWk3d1BYU25Reks3OHpOVithK2YrWWdPdFMzelYzWHB6cHVkSlhEMzJOaXZEekVUZ0dOb1E3TFR5MXczU2JNbE1KdHBlVXBFY3FTd1BWdGU4SFRBWHpHT0pyYzJmdXBwcFBORXZvZUhmMUNJZ0NON1E4MjRoUUhlQUlWRkhKbllJVkxXaHA0RG9DZk83OVRBUHJrRGxIbk9mQXFFVW9odzlNRGZZbnQrYkVaWjI5aGhMMHZkUnEzeExIQzN3STRjUTQzU0Rhc0dnSVN1TDdsVmkveG5WR3pvK2JPTDJKMXg5YUp2bVZGYzY1S05KcUNSUXpta3hyUXh5MVdBdGNTdUhiN3c3b0F2Z2FBNzd0UXFqbVBUT3plczhnbWdldnBid01EUzNGT1ZDcU1GbnZYRGQweUNWemZtckFFcm9mdWNTcGZCRVNnaThCVTM0TXV1NGI2dldROXliZmxuZ0QrMmF4WE1naHBreWlDK2lTN3ZwUmplMndmSVhmK0U2cVRBVjVQODRJK010K1FBVGg5TzlwRWw1cThIRmNlMUdOTTQ5WXBnZXRiMzRFMkFibWNmcHFidDhaemxsdm5sUG1IRUxobU1FVUtKVy90Tll4Qnd6YzNmK2VhZm03YTB3bzcrOWN4bVBJK3VZVmw1SCtFRlREK1M5dWVjek91clptVjd5TUdkZmlVSTdnZEt2OFRBQ2dNejBEUkpla3VkZytZUWJKamlmZjJaUVVDMmlYMmxGN0RkbEFJbkNKNG9aUVRmTFl0TURUbnRMc0I0TjVvNmR5MnRJMjZibVVRbUl1dzlGenNtT3F1U3VCNkt2S3FWd1NXUldBYkFBeXU0dXRDY0Z6QitldjVNMmlPQks1dmV4TTRyenc4RUtTZE9Sa1lodXNhMTh6ZzNzM0ZoREVFcnR2T3BPNEk0UGdJRElwUE0yRFM3b0hmYzhiM1U3SG11K1A1dGoreUxXNzZxUW5nZDMvdi9mSWZBTGlQNWdkNVlnQWV6bzl6QXhwTjFXN1ZLd0lpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlNRElCQ1Z5UERGelZpWUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlNQUFCQ1J3RFR6ZUhKaThQSUV0MTBUM3R5S0Zidll1OFV3ZTV1UzFkSGpzazlZRzhJMkF1SGFwa0EvdG91RFVBK3poMGtlYXc2ZXNnd2ZGLzhvY3ByMFhnSzYyOVdtUHJoMmVnQVN1aDJmY3A0WmNBVG9KWE9mUkRnazMwQm5nMlZaVUlxKzA5TndTdUU1bk5VYk9rdTlZbThEMWh1WmJUS2V2ZHpyQkg3cEVqLy9haUo2OXlYUGlTQkU5SG9NUEJRTE82QkNlZkNLQUx3SzRlOENnbXVJblk3UzNieDFEdllkZFFlUzFBSnhrbUxPdnpUMlZDS1hFeHROTld4bDg0SlZPdzVjb1ZpdUI2N24zM0pWbm53U3ViN21uUzN4bjFPeVJ1Zk9MVU4zcjI3RUJCZVBjUkxFYmpvRk9UVENZNndwdk5RRUxLQ1RFd0E4Y0IrVUs1SXdwY00weER0ZFZ1RDdpSnE2SlBNTWJ3M0ZkNTdoQ2thVjFBRENJaFp0K0RlQUxnYUJpM3pSQk5ZNndHV1B6aTlLMW9OQTdvMlRNbk5BVnFtVGgydFZIYlg4S0ZWaERlTENLb1JNVXNnU0I2NkhleTZudk80NDlud3pnM2NaUi9pVUFhZ3E1TmVOYUN0NXgvTXF5YTczcmh1NU9FcmkrTldFSlhBL2Q0MVMrQ0loQUZ3RUpYSGNSdXUzdm9URUdCYSszQTNCZFJuRXh3Yzhhb2tMY2UrWDg2U0dlUFRYS3ptamlUVm5iQkpRNEozbU9EVWlYVzI0b3Z3U3ViMDBsSmlCWGczVmJHU1hydGtQYk5HVDVRd2hjUDhHdWp6QVl1SnUrREdEN2dtQmVuRDk4UERLM2ZacmRFeGlTRWRjOHVGN3ozU0VyYVNuN2JuWmY3YVV0ZVJod25mTTI3c1BjMk5OT2lxaFJKUHZnbGtDaXY3UDFNYmhyMy9wNm1udWJ5eWxHZnBRTkNCb3F1K1JiRWd0azI1Uy9uL2xldkUyQjcydmZ5bFZSM2x5RXBlZGl4MVEzWFFMWFU1Rlh2U0t3SEFJVW1EM1NCRnphS1dEeTBWYTBsdWVZcGs1dEF0Y1hBSGdOQUk3Sno3T0djcHhMY1c1ZmJMZHBCOXZOZCtSanZJYWRhZllGUHpCMVk4MFp4dStiT2ZtRkxYWXc4TTRIYlVBU1A5dVA3TDRqaFlWWFErSVluK2VwK0c5YnVyY1ZjdWY1OXliOXd1emhjTjUxWmNlMTF5YXNLN1VGai9rWWdKZDNqS2twV0g2aTdiZStPVnlqMmRicDMzTzZyd3pBYzZBTkZPVGJkWmg5djV4aTh0elorWkZyZFF6bzlNbEFrQ1BPeC9Zd3dlczRIOHZkVzVzVEY5a2lBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSXdBQUVKWEE4QVZVV0tnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSXdNZ0VRazRPY3hGZHJJM2lWWUdEb2FtQ0tMUWxKdlQwZmdDdmpoeTBiTVJPOWpZRnZNV0lSaDlTS0lURStuT0V5NW9EdlR3UVM3c2ZhcHpnMWdYd0tDdG16YkpTazBUNlVrbk5MNThFcnVkM1QxeUxjdDQvdkM3a2xFZG4zMTlXYk9idDdMdUcvN3BwckhwS1JkcGlDRnpoaG91TTQvWXpXeHhEZUJDZkluSVU4KzJUWWd4WkpvTXAxSElJb2dQQVJ3S0d0Z2t6OVduWFVxOHRFZXNMUFd2SEFQaFhBTyt3enZBNXdzN3NkOGQ3QUgrT213TnNYRFp6c0czaTFqTTNQZG04blBmTzBBTFhIRGZTSGo3ZlMwaWxRaWwwS0R2ZGpsR2Jkdkk3czQ4UlVuK2Y1K3cxbENqaWtIdzFkaDZTcnNvT0VjaVpKODZKWUdndG9rU1F6RzNURXQ4Wk5lOUo3dnpDcjd0TlNKampUZ3E0dG8xbFhXSHJwbXdLUW05cEJIbm9LSjZUeGhTNGp0a1Y2azk5R0lmYWxOTG5WN3ZBTmNYMlB1MEpqVGYzTEVkNFBhZi9MU1d2Qks3YkF4WlNRSTNpWEJRMVk2b3Q5a0RSak5QTTJMMFJ2UHNzQUs3Ly9pU2pBL0g5U0pHN1dLS29tUy9NVVdOOXhsMVBHR3FPazRGaDhnQ0xFcmpPdVZ2S0t3SWlNQVFCQ1Z6blU5MHpzRGJPN3h2WGxsSlRUSUNhMStlcy9ZYnE0L2ViNGowTXR1a21qbDkzREt3VnA5cmNKeC8zaTdsR3ZZVlRDSVcwL2c3QXhYMEs5cTZWd1BVdFFOb0U1Q29pRHhaVnVtNDd0RjFEbFY5YjRKcjNqdXNndXdVTTNoa0FCUUJ6MDVwbS81RmlYeHQ0RjE1dDVoVWJkNGphNWRZMXAvdzhzOEwzSG5seWpoWkxsd0FnV3dheHFwazJzMEpyOTJzcGxQdkhGS0g3Nmt5RTFSNWh6dlNjWVByWnd5TTJVOXlhWXRWbkY0RGlmaVg3YjB3QWt2WHVEb0Q5VWtrRVVnbk1SVmg2TG5ha2NxdWRUd0xYdFltcVBCRlllUVQrMnU3VitZSHRLU3hMNGQrVFo5TGttTUExaFhCZmE0V3FjOWI2NzJyRmpqbm1kaFBYRCtaK0xxZE4zSG9tdDZ1M0dUbjdybU9jaCt3NlA5YTJsc1M5Y0s3eFhaTkFwVTBrKzJmbWZDTFBISDA3b1p5eHN0RG5nT2NtUTNPVUpsQU84M3d0SUhETllIU2NqOFhtT054Ym8xL0gzTTlQanNWYTlZaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNFUWNSd1JHQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJnV1FTV0lJWlNpMmpJb1NYMWtHek1rWkZpcFp1Mk9QOVNWSm9ITnh0QjZUK1l4cFFLWGNjTzZaNWhSVm9lWkErUk1wOHZUdHVISWNWWkR1NVRnSzZkaklBRXJpZERuMVJ4NnZ1bktTejBEcXZ0cEI3ck0yUFYwK1Vva0FUV3kwVGhocjhIOE1FT2g5eFkyMHZxSE9PYUdLc3hIRHJHYUYrdE9tb0pYUHYyNUlpUnZORUtxN2xsbkdlY3o3Y0M4SnRhRFIyZ0hJcXRIV3NFaDMwSHR3R3FtclRJblBmT1VPSnZqU0R5WTYzdzgxS1k5L2syVUVqaE9Idm1nS0lWendQd3cwQlBXS0pZclFTdUozMmtWMlhsRXJpKzViWXY4WjFSczlQbXppLzh1cDlxSGRqOTlRUUsvZkMzTnNkU0JtbDRIWUIzQlJyRTkveTJSaUQ3cW96R1N1RDZGbGlyV2VCNkhST283aXNBdU40VlNpbkM2eG5kYm5GWmw3Q21POVI3dWV0OXR4NkF6OWxnZis2TlpYOTZWcUxBUUZ1SDREckRpWUZBaXJ5R2dSRGZZSVF4dVFiY0o3R09Md040bkZjSXhRSzR0anhXQ2dtSS9oVEFrNHp3R1FNM3JZUWtnZXVWY0JmVkJoRllOZ0VKWE9mZFA4NDlHQ0JpVis4eUNuS2RsRmhVU095NXVmUmpWdWlVUVNWS1V0dmNxSzl3ZG9rOTdqWHVudlZRSXFZU3VMNkZlR3dzekwwRm5pL2d2MzBUNTRzVVR2WVQ5OE1vRUxWYVVtMkI2Nlh0Rnc1MW4xT0NjclhWelhuWkp3QnMyR0VnOXhrWVZPMTNBeldFZ1lNT3N5SnhiVldjYXZlVEx4aklqcTVpK2YzZ21JQkJ2dTRjeWZ4cnU4YkdQY2JTUkhIc3o3VFUwUlV3dXJSZVhiZHlDY3hGV0hvdWRreDFweVZ3UFJWNTFTc0N5eUhBTmVVM0I4ejlKb0N0SzZ5WjF5S1J1cWVRdXRiUDRMemZBSEJmejBDZVQyRmdxcm1tdTlnZ01iUnpKYWV1dlI2MzdXT2NoMnc3UDlhMmxzUWdOSHlPenMyNFdkeXI0cmc4ZE02L3hyZy93NVJvVnZiRGQ5ajVtcCtKNjJZdnRnR0ZLSlFmZW5iZE9lVTl6SFBJTlRlZUZRdVZ0YTg5Mjl0M2I2MUd1MVdHQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWpBeEFSNGdFSkpCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUmcyUVNXSUlaU2kzQWZnZXROQUp3R1lBM1BtTFpEclZ4RGZhOFJyOXdyMEFBZVp1V2hWaDV1OVJORkRYa2c5bEVBN20wUGYvNFZnSTBjb2V4YVRGTEtlVHVBZlZJeUtzL3NDQ3hWNFBwQUFCUkJXMGxwZXlQY3VZdlhvSnhEK3J4VUF0ZkQ5b2lsT2F4TDREcXRQOFFFcmplMjMvV3JyWVBKZDB5UWlLTUJYQmg1MWtLMXBZaGNjeXh3Vk9ENS81SVZWcnMrclJtajVxTE5PMWhucnY4YXFQbjdScHo3YkNObXR2dW9WZzFYMlZ3RXJyOXF4bjRVbHFHQXFKL293TVB2eUhjTE1IQTgrVmtqT0hvbjU5bys1Ymttc0p6UVdEYkZUUGF0STB4Zk85K09sMk9pUWFrT2pDbDFqcFZIQXRkamtWWTlEWUdZTStjQlpqNzU0UmxqZWhrQU9pcTZxYTl3VHV5ZG9mbEZkMGRZeTRyQithSkRLZU9kcHZRMndWY0cvSGluY1o2bmcydEtrc0QxTFpSV3E4QTF4d29mRFFnWE5tUitER0FMOC91bEtSMXFoZVpad3BydVVHTzVydlVVOXA5REluT1dHcUtWbkVOd3ZUU1VhZ2xYaHRqZEFHQnpzNlo4emtoOWVvbnoyUkkwRXJndW9hWnJSRUFFYWhLZ3lOSVRhaGJZVXRhREFYQ3V5S0MrYmhwenp2UXpJODVKQWEzU2RFOEFuRHRTT0xWSnY3VEJGemhHN0VwdDQ0UWYyYlU1Qm5Nb1RReE9jWHBBT0pRaXIzdVkvZFpTNGV4U2UvenJLQ1QwY0FBSERXVExuQVd1UzRKaHV2eHlBb3h4SEVXUjZaY0hibHpOZ0NXeHVYUE9tbmV0dmpWbE9SSzRIb1orNlRyZDNXelExMWQwbUVWQmE3NFhLZXFXdWw1VTJ0TGIyK2Z4M2NhMjBMNlhXeTZGcmw5cjl2QytONEpkVGIzY3YySGdPTDRmWW9uZnVPM3NQbVlwaCthNnJnQzMvRmE5eE82WDN0aTNNbDNmU1lCcnFwc2E4Y0QvQnVBSHR1OTFYalNqREhNUmxwNkxIVlBkR2dsY1QwVmU5WXJBTWdqY3g2d3JuMkhuZ3I3RkREVHlvWkdid1RVSm5zL2F4Z1JDdjlpdUVmQzhESU5XY3E3L3RaWmdISzZwS1NMWDNQZmt1Tlk5TDhPeDUxYjJ6TmpJVFUrcWprTEFESHBDRzBQcGZRQ2VIUkR0VGlwOFpwbTY5bnBjYzZjVXVPWjRyZW16UHNLY3ZYVDNXcTRiN0FqZ1V4R1JhNTdGNG4ybXo4TFlpYlk5MmU3VGNpM1JUMXpibzBDM2U3NjdTK0NhWlhBdTltb3JtaDBTOW1aLzRMem9lQUNhaDR4OTExV2ZDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNNeUlnQVN1WjNRelpJb0lpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSUZCTG9JNGJ5R0FCMHBLTHpXYTIwbXhGVm92T3ZteWllUjZIb3ZxSTFwUUxYTVRFaEh0RGNGc0JWa2NiL3RSSGJPUk1BQmF2ZHhFUFNkT2k3RHNEanpVRlFpbGYvRFFBZVRyNUxMWkFWeTZFZ1RKY0RZc1hxVkZSRkFrc1Z1RjZKd3BDaGQyM09JWDEyQ3dsY1YzdzRBa1d0RklIcllTbVZseDV6TkpucWVhZVFCeDBpM0xRM2dJTWp6eHBGVi9pZGZvaDNEUjFLR0xDQ2dTdEM2YTRtUUFYRnJDbW83U2FLVzd3cUVTZkhHaFEzZGhQRlZsaEdiWUZzT3Zuem0wOE9JV2VTUnVSbEp5dFNtZGlFV1dmTEVmdmdHUFYrTGEwSmlRVDl5UXE0WHRKeUhRWHF5SlRpQ3FIVVIzd2w1RVRVcDd3NTNzeVlnRW5wKzZWMHpqQkhOckpwZFJBWXc1bHpMSktsd2ptTmZiWGZCMk8xdTZTZUd2T0xwbDZlLzlvL0lEak8zM05GMkdKaWJ2ejJQQ1ZEeUU0QzE3ZjBpdFVxY1AwOEFFZEdIZzZ1cSswTTRKaVNoMmVDYTJMOWVRSlRlbFg1andCZW1GbkNWQUxYTkhOdEkzUkpZVElLT1BxSlltWHZ5V3hMa3ozMm51UHZmY1d6WFpOQzczbk9Tem4vdktiUTl0ekxRZ0tpTENObkRwVmI1eFQ1SlhBOUJYWFZLUUlpTUJXQmxUQm5vaWpuS1VZRTFQVmpTUTBtU0NHZEQxalJUdjhlTUpBRWhZUDZCRjlsME9KakEydkl2N0FCQlhQMnVmc0VscHVxZjdIZVI5dTljYTZMdTJuczhVT2Y4dzh4ZmprQzErdGJBVG1PcDl6MGN3QU1xdjJUU2plcGxzQTE5ejVvbHkvOCsyc0FYemZyQlZ6am5uT1N3UFV3ZHlkM25ZN25YQ2lReURXbUxoRnBCdVhrSHRsbHc1Z2VMWFVkS3lDWEVsaUMzd08rdThoaFNIRTF6bDI1L3NZZ1hyRjBudDBuck1tTERENXZCQzM5OTVSckE3OXBGTHBtc0dDbDRRaFFjSk5DN3hRd0x4VklITTY2N3BMbklpdzlGenU2aVEyVFF3TFh3M0JWcVNLd1VnandMQW9Gay8xVWUzNlN5aXQwam9wbjBKOW8xL1Y5Z1d2T2o3a084SXhBQlYxcjhxR3pZUnpiOEF6WGhRa0c4OXczeDRTY003bUpRYWEvblhCOWJoYU9WemtHMnlCeUlkLzNuelRpMTJjRHVIOXU0VFBNbjNOMmRvd3pFYUcxQzg1elBtTEUyTGx2R1VwOWdwNXliWXVDenUrS2xNM0FNeSsyKzZWREJ3VnFUS0RJUE9jbmZsRHM1bmZPSWZZMDh3UUdtM05UaXNCMWs1OWw4NTBVRXM5bW5vdnNjL2VGZ2VkaU0zd2taSklJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpQUFKU09CYS9VQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRWxrK2cxTUh6c1FCT3Q0TE03N2NpaHpHaDV4eEtJYWVUV2lKOHBXSjFkTm82MUdzRUQ0enVBT0NFU09QdVlBKzJVckRiVHp4NCtRWXJzdktYT1hBR3lQdDdBRmNZWnlrNnhmRmZDcVh3OFBvUEFQeG1BT0hNQVpxZ0lsc0lTT0I2UHQyamhnQ2RCSzZIdlo5M3RJN1h2b0J4YnExMDJxWURxdThRVElHTTQ0eGpBdCs3TlJLZHYwK3FVZEJJWmNRY1RlZ0FRdWVic1ZQb21XekVjR1BQR2dNK2ZEa1F1SUxCTENna0VSSVpleENBczh5WXdQL2VjMnh4V0dLalE3Ym1DZ3VrVkVXbm5BK1pnQ0s3UmpMVG9ZeDltMDVlSVpzTzdDa0FrMkpqM3p4MGtubTlWMGhOY1pWU01lbU5JbjJyTWJYUFdMalVwcjZzeDd5K3RqaFQ2WnhoekRhckxoRndDWXpoekRrVzhkRDNqY0VYS095UjRyUlorMzB3VnJ0TDZxa3h2MmpxalltMU5vRXRmcHBoWUp0WU5vVm02VWpPWUY5ZFNRTFh0eEJhalFMWHpacWpIekN1b1pJcnZON1YzNGIrZlRVTFhLZXdEZkdwTmQrSmpiTzdBaFhGN0Y3THpzTkRqdjFmQWZDc1N1TFR0Wi83bFBzUXlzTjI4bDVRYkt0SkZEZDhzaFU2TEMxM2J0ZEo0SHB1ZDBUMmlJQUlERWxnSmN5WjNnYmdqUjZrbExWV3ppMjVMdmoySVFGWExMc2t1RWpGNm91TGl2V3hJNndvVTNIQm1SZVdubjlvcXlaVjRKcnpZZ2J1M2l0UTJBRm1qZU5OaVdzY0tVMnVKWEJkV3lBNnhmYWFlV3JidjdTQXVEVlp1bVdsenNzNFg2RG9HdnYzM1RxTStSMkFQYXlZYjhwYTN4QnQ0L2VBd1pzb1V0Y2x4TTM2ZjJXRGsvSTlWdU04Vk5NbXZpdWVidmRJMjdqeFBOTHVFWkhwcGd5ZTYrRmVaRzU2aEQzdkZBb00xWlRGZS9aY0kzRDN4WXJ2cmx3N1YwUCtwd0k0MlFZZjVwb0Yrd2FGSzVlUTVpSXNQUmM3cHJwbkVyaWVpcnpxRllINUUrQllqZWZMR0RqUlR6d0R4UUFsWTQvTFFuT3JadXo1TUJNdzF4ZTQ1bmtaQnJ2Nm4zWmM1TGFqS3lCcWFBM2hBZ0NiQVdCQW42NFVtd2VXQmx0dnE0K0JnaG5ZTlJhQVpEOHpmbVY3K1BzM1BJRnJudlhtZVB6NnJnWk4rRHZQWmU1cmhJMTVqNXVVSTNBZEV4djNtOFJ4RllYQzNaUjZadE0vaS9rWFJuVDljT3NuRUVMWEpiQ2VnanRsdllwckRQdVlzM29VZXg4cVBkQUtiVFA0V3loUmJKdkJZL25lQ0FVQXloRzRadm1jQTczVCtDeTh0S1ZCN0I4YzR4eHYycy82bFVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkZZSkFRbGNyNUlicldhS2dBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlzYUFJbERwNTA2cU1qRlErRE5va0hDQ2wwL1ZZQWRISXFUWE1UdUY3WEhwcm1ZV1UzSFdzZHVXSUhKemNCY0pweGxGN0R1NDRIcm5rWStZY0FUZ0d3UVNtb2hPc29BbmE1Y1NpOHpJaElmUmZBdHdIOHpQNDNCYVd1bnVDQU9vVmc5Z1RBUTk2MGdhSkVQQmhjUy9BMUFjdXF5aUtCNi9uYzdob0NkQks0bnMvOWJMTWs5dHpsT0dVc282VjVWczVGb0t1eDJuK2VYQUhodG1lTmdtV2ZzUTdHTG9HWTB3cWRyUGk5ZC9kVjZXQzFsUjBucEZBTXZUL292TEdUY2Y2aHVGaXRSTWNjbHJ0Rm9FQlgzSm8vdHdtRTE3Sm5pSEpDZ2g5VEMxeTNjVzhZU09DNnZUZlVGbWVTd1BVUVQ1L0tISkxBU2hlNDVqZUgzendLUUZIa284MTVzZmI3WU1qNzFyZnNHdk1MMmhBVGErVjZ3bzUyYkpCcjY5bzJvRmRJSElkT3FoUVE2a29TdUw2RlVPMXhkT2lkMFdlczBYVXZjMy92R2h0eFhNcng2cVc1QlUrWVh3TFg3ZkNIRkxobXpYdGJNVExmaW92czJqYlhUVk5TbTRCL1NVQ0F0anFmQU9BTWIxM1pmMDRmYVlYUVhDRjRCaVRnblBYS2xBWWw1T0VhcnYvT1poMVBzZ0VTRTRwWVJKYVZKbkJOb1pESG03V0w5UUE4eG9xYU1LZ2xSVTYrMDFNSWd1TUdDc2RUNVB4dkFEelV1Y1BjNzZBNERJT0FVWVNHd1RZdXlyTUFBQ0FBU1VSQlZEU25TRXV3Y1FvdXFsTUVHZ0pMbnpOeHJNZ0FoQXpTMDZTVXNTeS80Nit6UWoyaDNrQmgwRFZuMWsxV21zRDFsK3c0WlN5eHJaTHpEMTFkSUZYZ2VuMDdsdk5GeVNpZXRqbUE3M2RWbFBHN0JLNXZoaVdCNjR4T2s1RzFTK0NhUVZNcGJMMS9nckExcTJXQTFZUE5PYU5ISlFwTFo1aWFuWlhQNGJVQVBtREd5TnRuWE0zelA3eW1hNDJ5cTBpS3VYMFF3QXM2TXJZSjJWR3NrZ0tIcndaQVFXUUswZEcrM01RQXZVZEY5Z2Jkc25pbTUxWDI3RkZ1SGNyZlRZQmk2d3dJM1FnS2xnYm02cTZwZm82NUNFdlB4UTZLVkhLdXpHODB2MDg4RTlpSTZmOEN3TGwyN1p6ejVsRHc3Tkk3dEZJRnJybkdzYkU5VytHdlEveXJYZWM0c2NKNlJ5bDNYc2QxQ041cnJwZFJVSlZ6bFRzN0JmSytOMmMyK1czbCtvbEVPdnNRTDd0MkNYMnByR1hkVjRYV21ua1ZCWDg1UHptbnU0anFPVUxqOTJZTzNCYkEvZUxJbWFiWWQ1UDNuV2VnbnVhMUlHZCtHcG9IRGhVRU1uWWVqZVkzNHRaOGY3UUpoS2NFR2E1K1F4TUxETzEzMWo1TEdidm5KZlZ3RGVwb0l5YStUYVI5TllPZWNxeEFBZXMzdDdCa2Zic09NQjZuNFBnN091WkYzN0oxYy8wL2xuSUZybGtPMSt1NDEvQlJBQTl1S1p2K0tKejcxQTQ2bE5oMWxVMEVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJHQnNBaEs0SHB1NDZoTUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJDQitnUktIRHhqd2lDMGpvZG9Ed0R3dmtLaDZ6a0pYUFBnS0E5UDhtQ29tM2dvbWlMVi94YTVIYjd6a1p1Tkl1QjBNcU5UQ3cvQThtQnkzMFNIMk1PTmc4eS9BT0JoWEFxTlVMeDZiZzRSWkhhTWNWNzBIWHJwUVBoMGEzZGZGa3U4bnM0dDl3c1lUZ2VDbi9kc2tBU3Vld0tzZUhrTkFUb0pYRmU4SVFNV0pZSHJNTnphd254OWJpR2Q3ai9uT1d2emZVc0JLSXFidFQxcmJhSm1mTTRQOG9KSHZBYkFlenhqZjJrZEhDbk9sNUpDNzQraEJFNGVZSjFxSCtJWTVvdGI4eWNKWElmdlhKdXpIY2RwZm1yclQyN2VGS0dlV0YvS3RTbWxUODR0ejRiRzZZa093UlIwY0JNRHF0Q3BPVGRKNERxWG1QSlBUV0NsQzF5N3p5VG51QlQ2NFBmMndrREFwcVdMdGVYMHBScnpDNjVkSEdMbW5ic0hLbzRGNzBpMThUa0FQdTBGK2VDMURNSzFLUUE2b2JjbENWemZRaWMyanViWWdpSWV1WWxqNFIwNmhITnp5NnlWbjJNamlqZnRGU21RZ1dKMnRtdEx0ZW9jb3h3SlhPYy83MTFDYWpuM3JXMmROdWRkeDBDUEZERzduVmM1Z3dseTNNbkFnclhTV3dKQ0JoVHpwUERhSDJ3bG9XOWVpVWhEek9ZN1JOYXVod2kyVkl0YmFUbHpGYmgraVJHYWVXT2tVUzhLaU5jeHdBUUZBeHRCdE5DbEpYTWtQa1BjdzJDL3BOaEZhcUtBRXdPVWNBOWs2T0NXUzdBeGxadnlpY0RRQkpZK1p5b1J5eUZUaWhKeEg1WGpZRDl4UE1CdktBTTR6eWtOdGY0N2RCdGpmZXc4SzB4SU1mRXhVc241aHk2N1VnU3UyK1kwelJrQnptdHFKUWxjMzB5eXRzQTE3K005QW9ITVMrL2IvN1JpWFA3MVBFOXpZR21oSTF4SDBjTlF3SFFLZWI0ZXdDc0RhL0loczF3eHROaTlHcUU1dDZxaUNYeWFLcWptMjhmQWNKd2Y4bDF6Zm9ieHJJL25ZcmkrU1pIcldPSWFLTVhEajR3RXJBK0pVdmNSdVhiRnN0dWFRN3YydGVMY3pkdzBvL25LMmtGZ0V6dlBXOFBtNHoxbGZ6bDc1dVRtSWl4ZDA0NTdXMEZVN3B2N2lmZGp0OEE4bDg4MFJlQTVqL2YzSzJPMzhCdG12WnpCeGI0WGVkWnpidjFRQXRka1FCSDhFSXZHUGdwdXZ0eDhHN2lmSFVvTUNQN3h5Rzl2andURVRCSGJkSXZrZTVsN0hSU0F2U29IWEdGZW52SGp2ZHZEMUh1dnpES2Fid2lGT2htUTdNYk02NW1kZlRBbWdzcUFCSC9mczAveFc4LzFuTkE2VUkzeVkzMkNiRGh1K3VvcTZrc0Z0ei9yRW80OUdGU0R6NmlmL1BYbXJJSjdadDdXQk5HanlMU2JLTzdMZDBMWCtaWjFiWEE5enMvY0ZBcENlUi83SFgyUWw1ZjFzTDZVTkdiUTJGaHdMbGZjbWpaTDREcCs1M2l2enpMZkZvNlgzWlM3ZDhMclB3T0E0N05RcWgzMGxIWFFuNER6TFBiUFdLS2Z3QzUyek5obmJZRjlqWUVzdVJiR3ZhOVl5aG4vbDY3WnNXN3VYVk5rbTNQTXJzUjVHTzB1L1laMmxhL2ZSVUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVaa0JBQXRjenVBa3lRUVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUjZFZ2dKSmRCUjVybldpY0l2bmtJSlBFak93OEp0NlhmV3VZa093em5PVFVNS1hGUGd3WGRlcGhnMEJScXVERFNHZitkQlZWKzRoQUxlRkdlSUhSS05DWjVRd0lraXp4UStZYUt6UWt5a2dxSVBkQmlrV0JFUDJQSkE1cThBdk5RSXB2eWRaMnROMFplZTNTbDYrVHJtd0MrZFd2d0Q0ODBGcHdKNEpvRHJoakpneHVYR0hLMUtCRWY4WnE0VWdlczJCN0k1M3RyUWU2V0dBSjBFcnVkNHQyOXJrd1N1dy9kcFRnTFhJU2VtcndONEdvQnJPd1N1MlRvS29sRFVhd3V2cVJ3L2JXM0tPZGYrblh1cGRQaWtjNG1iM0xwU2V2V1lBdGUweDNXZ0RvbGJNNDhFcnNOM3Jzdlp6cjhxTnRiMDgwbmd1djFKNlNPQ0dpcFpBdGNwYnlibG1ST0JtTUJTcWZqdFdHMzdHK3VrN05ibnoyMWo0d2MzTUlWN2ZhcFltK1lYQUlVZzZTaktBR1ordXNnNnN6THdSMm1paUFmWFU3WUxGSEFFQUs1Ri9hbWw4RDd2OXRnemtidDJFdXBQRkhjNnJsQ29rK3NpdnBOd2lrMng1NkQwM29TdTZ6UFdxR2xIMTlqb0UxWTBaRzRCM2JvWWhQb3oxeFFaZElkcmZYTkxmRC93MmZVRDFBMGxzaGppay9KczVIQUxpVjZ3SDczV2l0OTBDY21FQWdHeGZuOE9tR05UTEMvbm14UVhZVUE4TjlHeC8wUE9INFlXdU9iOTUzMVl6N09qRVlLcjBkYTVsREZYZ2V0VWNTcXVQZkE1WW1DSk8zZEF6Vmx2WnJuYldLR3ArL2U0V2R3bjRuZWY0NEt1WnkyM21pWFltTnNtNVJlQm9RbWt6cG1HdHFPMC9OQzdrVUpQRk9IdlNxRTVFUGN0T1FibGUrcWRYUVdNL1B0UVk2K2hteEhyWTdGNS9GRDJUQ1Z3SFdzL1JhZzJONEVvR1BTNVpnb0YyR1Q1dVdPMjJnTFJOZHVZVXRhYzdZOEZqdUdjY0t0QTBKS1U5azZSaCtPdVI5aSs5ZnhFQTBMandMa0pYRGROb1pqY2puYnMyeVk4N1RhZHp6UFAvb1RPR1lVUThaelZCMnpnb2phRVBFdkVieE9Gd1VPSjg5T1Q3UDN3Zis4amlNeDd6SHZMODEzOFpyWWxubDk2bmQwcnJUM0dUK3hlS3pKYktFaENIK0h5c1NEVkZKYnVZM05OTzlyV0NmdzFLOTQzdmo4KzJpRmMzOWEyZDlzemlEbG5LLzN5VXRjUWNoanpmZk5GQU91M1hOU01wNjlweWRNVy9NOGZzK1FJWElhcTVMZUg1MTFwZHgvaHoxaHpLUGpNNEJSY1g2bVJMckhyM1R5SG0yUHZ4dmJzTHNjWmZyckEvTFlaQUk0L1M5UFE1Y2ZPeTNZRmlsOUpmYW4wM3VSZTkwQnpydWxNQVBjTlhNaDU4R0c1QlZiS0g1ckhjUHh6UW9MQU5VMkk3U1g1QVMxamdkS2J1bEthTTZiQU5lM3hBM2I2NHRiTUk0SHIrSjNqKzVsN2IzN0tFYmptZnRJL3RYei9LRzdOODRWZHdaeFQrcGVmaCtNS1BoOGNHN1NsUSszY2pOKzluTVQ5ZXdiSXBPL0RnenN1WkVBREJ1OUlQUy9RUitDNk1TWG5POHR4TWdOb1VNU2ZaN1Z6dnFNNXpKUlhCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUmdBZ0lTdUo0QXVxb1VBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUWdSa1FvRk1YRDV1L0lzR1dYT2VtSVFXdUU4ejl6eXd4UWVZdVI3VTI0U0U2aEZIb3NrbWJtb091enpPQzFkKzJvdGZmdFFMUEZMYU9IYmdNSGZMUEZjck00VkFyNzU3V0lUQlczdEtjT0d0eFlUa1N1TDZ0K0lvdnR0TG1RRmJ6WHRRcUszUW9YZ0xYdDZZN0o3SGpXdmU5S1VjQzEzR2lvZmNkQlE1ZlhQc21kSlQzYU92RWRWY25Id1dyZDdKQ2l5bGk4bzhGY0RxQXV6dGwwQUZ4WjhmcGZFMEFwd0RZd0xNbnQ4MWpDMXh6RDNoLzYyVC9kT3NJNGlPVndIVzRrK1VJWEhjRi8zQnI2Q002bVdQVHlJOWl0ZXI2aUtDR2pKREFkYlZibzRKR0loQWJLK2VLR1kxazduOVdFL3FXK09JUXNiWlJOT0VaQVpIaFZMRzIxVDYvb1BNcTF4WmVIYmpwZjdaaWxneEMxVGRSbkpYakpWOXNNNldPUHUvMklRV3Urekx4cjA4UjhWMHRBdGNiV1ZGZmQzenQ4cUxET0FYQzZhUzh0QlRxejMzR2QwTzNQOWJuaGhKWkhFUGdtc3k0Qm51a2hVZWhNUDcvUDB5QVNVR0pRd0RzN3VYbHU0d0NScHhMMWt3aEFSazY2ak1RMGZsT1JVTUxYSWZzWUdDQ0p3UGdXdlJLU2tzWHVPNEtEdURlcTFTQmF3cEtVVkI5MTRvM21rRUt1Si9Fd0o0MTBoSnNyTkZPbFNFQ3RRbWt6cGxxMTF1anZGQVFDQWFnb1dqd09Za1Z1RUpCN3ZneU5EOU5EUm9WQ2c2U0c4d2tGQXduTlBZS0JhMU9iRHBlTkpLUTdwWjJUZHozTTZKZ0k0WDJZb0t0cWUxSXpUZUZ3TFV2Uk9iYTJoVThPN1ZkZnI2WW1DWEh1cC9NS0hUT0F0RXB6Wml6L1JRVFBBc0FSVUxkeExudGs4dzhnK0x2UzBnVWNEc3hFQmcrWkR1RENiSFB2OCtJcy9tQ2EzTVZ1Rzdhd1RIbXk4My93OEFKWEQrTHBaUzFyZVphbHNPQVJXVFNKUno5ZVFBOFYwT0J6N2JVTmdmb0c0anBVVVk4K3hnQUQwL29tRHpudEpmZGM1V2dYQUt3aEN5aEFGdGNRK0w2QXdWNzU1aHFDa3YzYVY5Tk8xSUZydHZXMlhQYmNySTlxOUFtRk4xV1ptMkI2MWpBYjljR2l1YXliM2E5czFKRmlUa21Qalp3dGlLWEpmTXpxTjNCRmNVdWVhOHA3RStoMlNFUzI4MnhQcytMcHFUWU9SUmVXMlBjM2RhZitxNFB0dTEzZk1rS0YxOGZnYkFTK2xMSy9hMlpoMnR4RkgvMUU4ZWdYRy8rU2MzS01zcGlRSTNkblB4dXYwbzUzMEp4ZDdhTHo0MmIvSUFCRkx4M3oyb3o3N1cyN2Q5SnRIZHNnV3VhUllGbDdxKytQL0l1azhCMS9PWXhvQXpIM241S0ZiaG1BQnVPaGYwQXNFMTVEQjZ3clFrU2UxNWkveW5KbGhwNGhyYnNZdGQ2MnNiaVRiQWlpbFcvb0dPZVEzdExneS9VRUxobS9iU1grMURjbDB1WmsvQWFCaFArQndEY2crQytuNEx3bFBROFhTTUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ015SWdnZXNaM1F5WklnSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJVEVGZ2JBQStGYnA5UU54MVdlWGowM0E0SGdqa0lYTGM1b0RZT3pmOE5BTVdhWEtFbUhwN21BZUpRb2pqVU02MkFkUUt1YUpZYUlybDk2aSs5dHMyWnFDbHpiM3NvdTdTT3BWNG5nV3NKWEYrZTJIbFRSSGNUaTRwbUcwdklxbFRnK283MlcvS1F6SWJTaWV1OVJwam5VdWU2UnhnSHVmVXp5MG5KVGh2M0JmQXdMek1kaWw5dkhIMS9rMUpJWmg0NkxWQmdpazQvb1hSNzQ5eXpGZ0QrTzJSaTIyTE9acXgzakQ2YzBqNDZtOUE1emsxdkI3Q1AvVU9xblhTV090UmV3MzhwSk9vNjY0ZUV0Sm1kMXgyV1lxak5Fd3B1TVpTNFhHTVduVFE1cnFGelZ5aEo0RHJNSmNYWmpsZTJPUVZUL0lIczNiMzRQZ0tJcVRabGRNblpaZTBqZ2hwcWpBU3VaM2VMWlZBSGdaVXNjTDJoY1dDa0FMQXZLT04rdDEwOHFXSnRxMW5nbXVzNGRPN2NvdVViZjFESHVnM0h1eFJRNEppZTQybUsvM0I5aE44My9zdWdhTEcxa2FaYWlsL3cvUjBUN09qemJwZkFkZjVyczg5WUk3KzIyMTRSRXU5eGN3MGxKRnpEOXBReUpIRGRUbWtzZ1d0K1Mramd6clZkQ3ExeDNKMlNYR0ZzTnovblJGM3Z5NVR5M1R5Y0ExQ1lnNEpxYmdxSnV3d3RjUDBhQU8veDdQaXhFYXg4SW9BcmNoczI4L3hMRnJqdUNnN2dvMDhSdU9aWTRiT1ZCS1g4K3ZzS2RqWGxMY0hHbVhkN21iZUtDYVRPbWVhSTZBbEd6UG9NQUdzNHhuM1RpRnR2M1RLdkNMV0QzMXRldys5YUUrd2l0TmFaR2pRcXROZVJPNzRPallkQzY3OXRRbk5kOXl6bEc5QlZSc3J2YmFKekZHUTlJYVdRQ25tbUVMZ21ZMzVEYitmWmZ6RUFpbVQ5ckVLNy9DSmlmU0wzZnM5WklEb0YyNXp0NTczNFhLQVJYSnVoOFB4U1JJSDU3dVErSzhXTTI5SkhiQURWMk43MzNBV3VtN1p4YmV2djdYNXZTSlNhWW9NTUhOY2xKRWRodG8rYVlFc1A3dURHZFk4M1dNWXBjMVhlRDRyS2Zpb2lPdDVYZUkvdDU5eVVBbmdwaVVMWFBPdkRkVnlKeWFVUWE4OFRFakJuSCtFOG5ZR0k1c2E0cHJCMEgzbzE3VWdSdVA2UFNFQzBQbTM0bUYwVFNua1BwSTRKbUM5M1hCQUw5dWJXbVJPTU1FV1V1R3Q5T0pkcnpmWGt2N1FDdWJFOWxWemJZdm0vRCtEdlRGQStqaDFUVWt6RWxkZm1ua2R4NjBzSnVKazZWd3ExZytlMGVMYnBIb0VmdSt4ZWVsOUt1YTgxODNBOW5QTVR6bi85Uk9GWW51T2VZaXpLUFVXT2o5MW5pa0w1RFA3Q2VYcnErWlo3V3hGbzdsTnlyc1ZBZlYvMTJ1UUxhWlBEQlRiNEVzZExLZWxCTm1BTjN3Vk55cDN6cDlUajU2SEE4bFdSZXlTQjZ6RFJOdkgvTG9Gcm5xZWtJRHlESS9oeitxYTJ2b0ZrY3Z0Qmw5aDJVeDdQb25LdnlrODhKN3FERGREUU5SL2h0VHp2eURuT3AyMndoRng3YXdsY04vWHlubXhuOTZsUzdHK3U0emlLYTA4TSt2VzF6RFhEM0RZcnZ3aUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSXdFQUVKSEE5RUZnVkt3SWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJTElzQjF3bFRITERhTEI2ZGZCZUN5UUJ0WjFsSEdvWGdYNzdjeERnVzdWVktzNlhnanh2MjBTdmVCOXZQQUtSMnQrNmFsQ2x5SHhEbDlGbU02TnZlOUR6V3ZYODBDMTZrY1Y0SUFYV3BiMi9LbGl1NzJxV3Z1QXRjcHpsU2g5b2UrSTMzRUlQb3dIdUphT2d6elVQOTFrY0xIZW9hNm5DTkQzd0k2WDFNd0xOZHg2cUZHVk91bEFPam9lV0htOVNHaEx0cEE1d2FtMUdlTkRtRjAxajhXd0JjRE5qelhqbXZjMjBLeDljMEFNUEJIYWdyWlE4ZHlqcWVtU2l2cCtlbmpnT256VDNHMmEzTUtwa01VQmZJUDlJS285QmtMcDloVXF4K2xCRFR4NityVHRxYXNQaUtvb2JaTDRMcFdqMUE1WXhGWXFzQjFDcC9RdDVUWFBRUEE1MU1LbUhoczFNUEVXMTNhNVhTYldnK2R1K20wN2dicWNxK2w0L2dCTnNBRkhiYlhCZUFHOTZMZ0FCM1BheVdPNVRpV0NxVSs3M1lKWE9mZm9ScmY0L3hhYjc2aUxmQkhVeWFGa3Q3bEJQU2hXRUdOTmJaU20zT3ZrOEIxTzdGY2dXc0dMRW9KdHBoN24wTDV1VWJNOVVyL3ZjbHhPMFU0YmlpbzVNTkdySVo5T3BUdVk0VTdIKzc5Nk01WG01OUtCYTRwL01GMWJ3b0h0U1VLZHZoQ2JoUUhvbEFkL3gwcUhXZEZ1NFlxUDFUdVVnV3VLYzV3SW9CTk1tQjFyZHV3WDNCOUl5VWdISVVpS0Q3VHBGQ2ZDWm5XUjdDTDVTM0J4b3hib3F3aU1EcUJKUXRjaDlhV2E2M3JTZUM2WGxmY3MyV2V4d0NUREZnMVJocGI0SnJDYVNlWjd5Z0RkZm1wYmU3Ymw0VUVybThtT0ZlQjYxZ0FHOW9jR3VQMzdROURYKytLQ1BwMWNaK00vZkVuSFVad2JZbmoxNUJvOU5EMnUrVlRSSlI3aTEySlFzOFUyK1Q3aS8vTmxDSmF2NTROTUJkNkovaDFYZ0pnNTh4OVE1YkIvdlU2dTE0U2FnZlgrYmgzbk5MTzBQV05pRFlGdXB1MmQvRzZ5QXAxYzA1Ukl0RGJWZjVxK1oxQmNMa1B6TDduSndiQW9DQ3BHM0I1YWk0MWhhWDd0S1dtSFYwQzE1eGI4LzV3dlRLVytBeHcvZWhlbVkxNmZ1QjhRVW9SYlh2M1hXc0Jidmw4UDcvRGl0Ykg2czBSdDJZWlhhTEUzQ1BnV2xXYmdEUURyVFBRVGM3K0JOZXdOczBRakE2MU4yY053cjJlOXZKc1UrNzNMb2Z0Tmphb2U4aS9uengzY3RiVFUvcFFrNmROZ0xySkV3ckdsMXJITSszOTl2T243RkVzdVMrbDhxbVpMeFFraXVWelRYdHpJM3g5VHMzS01zcmlHdmpaQUxnUDJhVHp6TisyTXNGVStPemtuRy9aMGdia1lHQ1NxejBiWW1MSHVXZlVRdmF3cm8xN2pMTXljQVd6am5VR3NLK2RLZGZYMmdOblhid25GRG5uV01wUFhmVzgxWjdWaXRrOHRyaTErMDZtV0xPL1o5VDg3cSsxYzgrVjcwb0duM2xNeWcyd1l0WnZzV2NJZnA5NFRTamJPbFlnMncxY3p1OGF4N1hYOXlpM0VicCtad3VIV1BFNTM5VWVKdXBTRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkNCMmdRa2NGMmJxTW9UQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFnZVVTNE1GRU9sNjlOOEhCaWM0MkZNWCtWNis1TWVIU253TjRmRVFVZXloaU5ZVWIzMjhQYithS2Q0YmFGanFzUC9XaDZaUjc4RlJ6RDA4R2NMdEladDVqT2pOMk9UMm0xTFcwUEJLNDdyNWpzWVA1cHdLNHRQdnlRWFB3Y0RiN3Q1dTZEc1dYR3BRcXVsdGFQcStUd0hVZmV0TmR1eFNCNjlDM3RjdjJHRlZYS0NQWFlacGlFN3M1QmYvSmprdStidjlXNDFualB1ckh6VHVLUXBKdXVzQUtYUDg2bzd1RTdLa2wzcEpoeHEyeTFod25sZHBRNjdxYUxGT2M3ZWpJK29HSVkvcHJyYUFkaGNwY0ViMFVoODRZanhTYmFyR1V3SFV0a2lwSEJQSUlyRlNCNjlpM2xFS0tUeklPeXhScEtVMnJkWDVCUVlOUGwwSWI0TG8yZ1FrSlhOOENQRFpIb3hnNWhYSnpFd1dwS0VEeFY4NkZmY1lhdWZXNytkc0NmN1NWU3pHZkYvYXBlT1JySlhEZERqeFg0SHJwYzVFMlVhSFFlenEyWmxvcWNEMTM4WXNwbnUrbENsemZGOENoZ2NmTEZ5S25VSHNqcU5YVy8xSUNEakJvRjRWSktaeHhoVmMzeDI0VWZtSXdybGQwaURpVkNuMHV3Y2FSUHpHcVRnU3lDU3hWNERvVUJJSjdyaFRRNUx3aU5jVUNUVWpnT3BWZ2Q3NjJzVm9mb2IzdW1tK2RZMnlCNnlPTTJPeCtkczNYM1F0bm9Fc0dhTGtxdHdHSitTVndmVE9vdVFwY3h3TFkxRmpiU3V3aTFiTlJsSkpCYVJwZlFnYTNmNE01Si9TRDZqWE5xMENlaFhxMk9ldXlQd0FLcThVQ3RqM01CakRsdURzbGNUelBQYXBTc1dLdXExQjgrODJSeW1vSXVxMXQ5N1J5QWszOXlwdzVlTGZsVk5xMkZINHJPVS9iM0tkVUZIMG9YaldGcGZ2WVdOT09Mb0ZybmpWZ2ZlNDNuNExXZkRmd3VmNGhnQnVkeHZCK2NqekFaelVtVU5sa3B3RC9Vd0JjbVFtamhzQjFsM0ErVFdMZ1FiN2pZc0hiUW1hM2lSSXo4RFBmTTc2Z084OWNjZjNobjd6MWgyYnRnV2N3WG05RXhsMFJ6VkRkZmM1cnBxeEJzRTZ1bFhBOWkvL2pPVmhmeEpQcis0K3lJcnd2U0xENUt6YmczalVkZllEclFtZEZndGo5MU82amNWMHhOOFVDejdybDlCbkw4SndFaGZyOXhJQ1dXNXZ6dFczdFhtcGZ5cjBITmZLM0JWcjVzZzBneWI0N1JYcTBFYlEvRThCZG5jcmR1V0t0OHkyeE9RTGZONGRsTkx4MEhUNmppdXlzYzEvanoybFF6VE8yRkdtT2pZdTc2bUVnSHM1ejZOUGdKNTd2NHp5STcvT2NRQXM1SEVKNVdTL1BNVExZRE1jWW5JKzR5ZjlldEFVY0M1WGZyUFh6dmJ5RU1UdUZyaDluM2gzdnNiNGtYWHk1YmtoL2xtTzZNdXAzRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkNCK1JHUXdQWDg3b2tzRWdFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFSUdwQ2ZCQTVkdXNpRUhNRmdvZ3ZOdzRXOUhCdzAweDBaNnVBNlpEdEhsakkwRDVWUUIzNkZrNFJUY3BmbnRaejNLYXk1Y21pdFBZM1NWYVJFRkhIajVkalVrQzE5MTNQWFl3djAyVXBidlVPamxDeitSUTc2d2FvcnRkclpiQWRSZWhlZjdlSlJJOWxuTkwxek1aY29icnNqMUVuSTZLZEpxbmc1dWI2SHp4UE9NZ2VFTExiYUt6eWVlTXc5UVdUaDdmQWEvR3MzWlA0L2pDdHEzbjJWSWk0aUdCNjJHZnU3RUZydG1ha09qQUp3RHNZUjFjSlhDZGQ4LzdpS0NHYWdvOWMwTjkyL05hcXR3aUVDYXdVZ1d1MXdSd0NvQU52R2FYakIxOGNxdDFmckdXY2Z3OHlZakFiVGlqaHlrbU1OSG4zUjY3djdsOXA3YlRlcTZJYjNPYlluTzAwakZNaU04VUF0Y3BnaW14cnRvbWdNdDFQQWF3bVZOYTJscmVXT3NDelQzS2ZUWldxc0IxYko3TGVjS0xqRENESHppeDlCMDExdnBBNlRNb2dldGJ5TFgxZFFvaWNYK0ZnZzVOb3NnWjE5Z3A5dXJ2dTNBdGhBTHFGTm1pZ0l5ZnV0YnVtZjlZS3pqRllKdGRpZUpVbjdJQkxVTjUyNEpjeE1wZWdvMWRYUFM3Q015QndGSUZybXNGNjRtdFgwdmd1bDd2YkJPWExBbitXR3JaMkFMWDc3S0djdDVOVVMwR2UyRFFpVzJNdUNDRDlUYUo4eUNLWWJxaWw2VnQ1SFVTdUw2WjNsd0Zybm4vR1dESzk3dmozNTRWRU1EczB4Zkd1cGJ6Rm83ek9EOVpEY0xXUHRmWU0veEFJMWpLOTRBdk9oZTdMeFNJcFRncnp5UDVjNzNjZTlrMVR1YjRmMGN6bHVkZWFHbWltQnpMb0xBZXo0T2xKcjZqRHFyUXhyYjZ0clFCaDFOdFdsSStDaTIyaVNoK3lBcWNUeTFJV0ZOWXVzLzlxV2xIMjlvSjU3TjhKaGhFc0VtcDgyVStyM3d1M3RyUlVJb3hIcDBKbzRiQU5iOU5uL0dFdTEwemZtdlBaNXliYVZ1YktQSDN6SHJEK2s2ZFhNL2cyc1loQ2VPbHZ3UndsSGZ1d3pjdEZqaXVxd2xkNzFaZVQxdmZCT0NEQUg3ZlZhRDluYzgwMjhmeFlsdmkrNVlpMEczcjNGd0haei9oZmZNVHZ5MWJBVGd0MGE0bVd5endiS2lZWndENGZHYjVzWDAvRmtOQmN3WnRhRXRMN0V1WmlLcGw1OWlFWXdBS29mdXA1QjFUelRBcitNL3hzSnZjKzE5TDREb2s5c3RuaWdMR0ZBMU9UYVhyOEtubGwrU2IreHAvVHB0cW5jTmhVQUtLdDd2cjVhNGRiajJjMC9BZGVxMW5LTmUwZVJiUlBadkFnTnZiQWVBMzhCdG0zSG4vbk1iMXpPdnVhM1Bzd1hXR2crMDNNL1JONXJmcmt3bHpFbzRkMmY3L01OK2s2M3JhT05YbERDakJlOU1XYUxNNWcrZnZsVXhscytvVkFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJISUlDQ0I2d3hZeWlvQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDcTR6QVpnQ09BUEJncjkwL3NvTFBQdzN3bUpQQWRVeVkwamVieml0TVBEanNKem9NOEZENE1SWHZQWVdvZUhpVkIyMmJWT3FZa0dJV0Q3N1NNWWVPSWQvcEtSTEVzbDVsblhVYSszOWxuVExvSk5QWGVTK2xQWFBNSTRIcjdydXlXZ1hvZkRLaHZrS0hsQTkwSTB6T2NVZnpuTzhMNEdIZUZXUFYweVhTRnZ0T2REVXdKTmkyZEZFc3Q4MWRZbjFqT2JkMENWelhFb1NQaVJYY0FHQno0MWg1VGt1SHVJOXg1anNid0lPY1BIUmVlcHJqdkZKRDREb1dLT01sWnN4d1dGZUhkWDZQT1NaMlBTdWhLdmdkcHFoR0RmR01sZlQ4bExDTTNjSWNaenM2SUwzZU9tdTY0K05ZLythWTZmcU12dE5rNVh2OVhvSHJTc3RyaWpvT3dHdThjdHVjeDJPbTF4RFU3Q09DR3JKTEF0Y0ZIVTJYVEVyZ3JsWXNoOThlTjVVRVZaaTBJVjdsTVJHZ0ZDZjNybmFzNXZrRkhUMHB1REJHb3NNb3hYTitZYjRaZEpabDhDOC94YjREZmQ3dEVyaHV2N3R6RWJqdUVremgrT2dNQUxzSG1oTVR3S1VETzllWEtPQktNWXlwQlg0YTB5VnczZDRuSlhCOU01L1FQSUJycFp5cm5oeEFXQ3FzTWRiNlFPbDNSZ0xYdDVCcm0zY2ZEbUEzUnl5UmdrNWNiMGdWVlBMdkQ5ZHpLTjVCd2MxUTJzOEdOYzBSZytBN21lTlJOOENZVzNZc3lFV3M3eXpCeHRKK3IrdEVZRXdDU3hTNGpnV0JLT0cyZElIclIxZ0J3TGEyYzEvK2dFQUE1NjYxK3hLZS9qVmNoK1M3bitPWFVLSjQxQ1oydjdsR2ZXMWxUQ1Z3M2RqRXdKZmIydjI3NXZ0Sm9WSUdBYjhxRWdpOGhNblFBdGZjVCtCWkNQNDc1eFJiQSsvYU94dXlUZlMxNC9vTGc1TDRLWGVmYUVnN1M4cWVZMkNwa25iVXZHWWpLNmgzOTRSQ2h4QWw3aHA3ZjhVS29GNlRZRjliRm9wYnMxOHo0RTVYb3VBdkF4L256Q0c2eWd6OTNpWjJXbExlMHE3aDJoZmZLVndQcTdIL1c5TCtHekc4NGdBQUlBQkpSRUZVbXNMU0pmVTMxOVMwSTJmdDVJMEFEc3pnbnhMMHJ5UVFRbCtCYTRyRjg3bU52Y2NvcFBsMGU4NGk5ejZsUHFjbGRYUzkvMmhyeVhlWFFkV1BiR2tvQXhWd2ZmdGJ1VEJzL2k3ZW9VQXBvYXBDQWVhYmZDVjdhUlJEUGd2QUF4TGF4ZThCejREbXBOaDhOUFhjNnhMN1VnNmZtbmxqZTRFWDJUTlZWOVNzTExNc25qRjVqM2NObjZjVDdOOXl6dHpFcW82ZHN5b0p1aFE2KzFVaXlzejNQODlzOFZ4YjM1VHpuZXBiMTlEWGw3QU0yZlFFdTZlNFJzVGdwaDZlcStCWmZwNlhlbVpBNEpudlB3YXBlb2dSdGo3UHJGOXNEK0F5Nnhzd3BjQjEweXo2RGxDNG1RRVd1UDdpSjlkKy83ZHYyK3Y0bnVmelJ2K09wYVptSDRtQkkzaVA5Z2J3R0tjeEpRRTJsOHBDZG91QUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWpBaWlRZ2dlc1ZlVnZWS0JFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkc0RlFHS0crOWhEbTErRXNCUE10blE2ZmlWMXBHMkVWWGNNWEs0a2tYUFNlQ2E2NThVMGVHQjV5c0I4SkFySFJUb1JIQzE1NGoxSENNRysybEhVS0xCTklUVDFoRE81M1Q2cEtBM25XMTUwSE45QUkrejRwKzhiMHkxRGhPekxBbzZybVVkZk1oeXRRcGJOLzFFQXRmZEw1YlZMRURuMGlrUkR1Mm1PNjhjWFVLemZDZlRlWVR2ckZnS0NUalVFRkNkRjZrOGEwTFBFTis5bjdOT0czbWwzWnliQW9YcmVCZDJpV1NFZ2pSUTlQQkp4aG42eHhsR3ZNVjhPOTRjeVA4RkFCeG4vS0dsckpBTm53SkFKOFhtZTFSRDREcGtZOU1QNlRSR1IwbzZ3MUJnb1MzRnhrYTBsMk96MU1SbmgwNkdqemFDZjdzQXVEVDF3a2kra0pOczEvM3ZXV1dWeTBOT2oxM3ZuWnlLYzUzdE9NNTZoM1VZL3FhdEtEYld5N0Zqakx3aDRibVM3MVNOOTNNZkVkUVFLd2xjajlHRFZFZE5BakVCS1Q1ZlR6R0NTczM3cFdhZFE1ZkZBRXYvWk9lbGJsMnBUdTVkOXEzbStjVURqZEFrZzlkUXFLQTBVVHlUYzNtS0NITU1kN0g5dDFrM29XalpkVjdoRERKQ3NlS0hCeW9OclozMGViZEw0THI5enM1QjRKcE80MGRiWi82UXRSUXoyZHFNbFo4TTRKMkJES0Z4Q05meDNndGdMNXQvRGdJL2plbXB3aHVseitSWTF3MGxQQ3lCNjV2dllHZ08yU1k0SW9IcmVqMi9UUkNrNXBwNHJzV3BnYVVvbEVuaHhGTGhPTzcvbk40aW1OcW4vSFhOZVBScmtlQ2dQN2NpcHlsN1RrdXdNZmYrS3I4SVRFVmdpRDNHb2R2U0pWS1VVLy9TQmE1VDJqcmxQVjRUd0NrQU5tZ3gxQlV1UzJsUGFaNnBCYTU5dXlrY1JaSEUrOWtmYU45QkZmYklZK01GaW95ZmxBRnZLV3ZTR1UyNktldVVBdGN4Z1VpdXAzQ2Y4OExjeGlqLzdBbFFWTzNkTFZaZVlvUFVkTzBMbGphMFRjeU9aWDdFbnQzNlUya0Y5anF1djNDOTVxUG12Y1k5K1ZEaWVpRUQzZlRkaTB3eGRhV3N1YVMwdFMwUDExMHA3c2MxdGJGVFRXSHBQcmJYdENOVk9MUjB2c3l6bEJRbDN5N1M0Skx6RTMwRXJydEUrcm5lc0pNalBwdDduMUtlVTU3RmJEdFAybFluenpqeUdZaWRJY29OQnN2eEd0ZEp1S1lSU2p3N3lua0ZoVUw3cENjQytHS0xxUGlYN1hQZGR2YUZBWEFZekoyQlZQeFVNZzZpOERiSDg2NW1BUGQ3S0FUckJwQm5YVHpyc3BWWmovOU5Cb1NZSUhlcTZQTFMrbElHbXFwWktmek8vc096djM1aUVEdXVRMCtWMkxjWXFJOW5scHJFUHM3NVVpTVluM3ZtSnRTVzJGNG9oWUZmYk5kQmVkNmJ3YUhhbmpHV0hlcDNKZjMvc1NiSTVZazJLTUloR1lFUlF1MExmYWRLbnZteCswSG8vRnV0OWZmWU9jS21qUXpHelBIdy8zYjJKbVB6Y240WDZUZkEzemwvWTBvZEc5UmtHcnVuUEh2UDcyYnN6RDNQY3pKb0tvTlpNaCtmdVhmWk9TaXZpWjFEckduNzBHV0Y5aXY1L2Q3VDNqdk96ZGh1SlJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRZ1lVU2tNRDFRbStjekJZQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkNCUkFKY0E5d2Z3TDQyLzZsR3BPaTFBTDZYNlhDNU5nQWV6TDJpUTJ5QmdrZG5Wem9VbjlqRTN0bllObkx4UlpwK2JSd29OZ2Z3L2Q0MTNMcUEyR0ZaSHNvOHVLVXVIa3lscVBTanJHTXg3YVdETVE5Mk5pTFdiYWJLMmJMeWpYU0ttMExnZXJqVzNGeHliZEdqMVN4QTU5NnJFdUhRb2U5MTdmSnJDTTNXY0hhcDNhNnB5eHRDeEM3VUg3c0VqaW11VEVIRnV6cEFjc1Z0WStLSWRNS2dhQU9kTk5wU3lHbk83M2Q5QmE1anppQjBjanpDZkhmZlpyN1pkN01PV3RzYWgvS3JPcjdmRk82bVE1ZWJ1bGo3UmJvT0xIUkMzY2M0Uzc2dmh3Q1dCSzdETjYzRysyY3BZaUtoYi8zZGpXTVVuYkpqaWYyUXo1ZWJjdDhCb2JMN2lLQ0d5cFBBOWRSZkxkVmZRb0RmbGpjR0xxU2pQVVVCS0hLOWhNQkNuSnMrM1lyQmhBUlNVcDNjdXhpdTV2a0YxM2tZOUlKQ21INHFFYTd1WXUzKy9ncGJ0MzhObld1M3NXc3J6Vzk5M3UwU3VHNi9LMFBNRFhMNlFaZHdoeXRtRWhObUNZMURLSlJIWVJnNmJMdUpvZ2k3bW5maEJUbEdWczZiSXJ4UnVjcEJpcXU5MXRQMnZMZUpNWEMrNWM0cEIybnNnSVZTOU9WNnIveVljTTdiN2R3dFpFNnB3SFZYMDJMQ09NOEE4UG11aXhmNis1amlGRG5yWGlrQzE5eDdZRUFUQnVnc1RiSHZNOHY3aXRrTDR2djFtdExDclJCSUtGZ0JpMlR3cjhNU3lsNkNqUW5OVUJZUitFOENmTmRTaEcyS0ZBb09TVHNPZE1Ta3hyYUw3N0tZMEd2Yi9LWEVUZ2xjbDFCTHY0YWlkMmNaMFNnR3JZb2x6a2RmbFY1a2NjNjVDRnh6bmVQVk5zaWhPMWZwSStMb1FxblZ6cVdzU2VkMmlDbEYzaWdFeWdEcGZ1Szl2OXdLamVXMnAzYis0d0M4cG5haHE3ZzhQdThNVFB0c2p3SDM1SGplaXUrL0xnSEZ2dmhpSXJWY0krYTR2aEdPN0ZzUHIyZDd1ZTc4WWJ2bjJaVEpOZWlkQVJ4VG81S0VNbGJLbWt0Q1UxdXoxQktITExHanByQjBTZjNOTlRYdFNGa240SmtIOXIvUytUTFh3Ny9rQ1FtNzdjOE5WbEVxY04wbGpsOWp6Skx5bkhKL2kyc0hKZnRZWFhNR2l1NXpUWnBuVmxOU0cwdnlvSmg4alRVeTJ2MDZLem9hc2l2bC9BdjM1VDlyZzBYNlpaUUlwWWYyR3JtdVRyRmtqbW5kbEx2SHovWiszSzdWKzdaU2RQaEZDZmQvYVgwcHBiOE5rU2YyZm1FUWhFMEFuRDlFcFlsbGhvSWkrZCt3R21kdU9QZi9YTUFtbnBQaWVXayt4MHpQVHhEQnpRM1FHVUxoQnpiZ21PeDVOcEJ3SXJwYlpaUEE5YTJwTWNBQjUzN3IyVC96L1JuU1B2SC9udk9OU3hrYmxOekx0bXRLNTdOc084OEJNQmcxZzB4ei85OU5LMVhndWpaL2xTY0NJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lqQWhBUWxjVHdoZlZZdUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lqQUNBUWVDK0IwSTRCSXNUbzNmUVBBM3hzaHlYTVREcGMzMTkzZWlzelFnU3VXYW9rUWpZRG1waXE0UnZwZUFIc0ZLcVFRK0hzR01NUS9rTnRVd1FQWUh6Q0NFR1JJeDNqZU93cUo4bEEyLytZTC9PU2E5aWR6RVBqSkFMNmVlNkh5ZHhLUXdIVW5vcHY2TU44NzkvZXk1Z3E4ZHRlVW55UGt5RENVQTZFRXJ0UHVUdzFubDdTYWxwTnJDQkc3RW9IcjJMT2M0NkFaRXdXZ2NPZldDVTZrSWFjOHYvNitBdGM1WWhCZDQ0Vlk4SStjOXg4RFhKd0VZRU92eTlKcGlqenAxSm1iSkhBZEpsYnkvdUY0a3VPMEcyMlJPZjBuOTc3VnpGOGljQmo2WnVZNnY0YmEwRWNFTlZTZUJLNXI5aFNWTlJhQkxZMkQvaWt0WWdnVTAveGFUL0hESWR2eUYwYk1nUUlzSE8rM3pWMzNNMGE4cFlJaHEzMStjVjhqU1BBRUFBek05UU1BMTFvbjF5NjBJVkZaT3Y4eUlGYmJXazlUYmloUXlhK3NNQUtGaWQweStyemJhNjB0MVJhUExYV0NqemthNTRpa3V2ZDJpTGxCVjk5cGZvOEpMYm5YYzN6TUFHNTBORThWdUU0Ull1RzYyZnRIRUpQS0dhdWtjcHRMdnBMeFg0cnRxYzhHeGJPNE5rbmhJTTcvK3FaSEdqR1BIUUFjRG9CaVgxT21rSGp2RFRaNDRqa1J3MnEvbzVwcVFrR2hTZ1J4cHVTWlcvZVk0aFE1Nys0dWdXdStKOW1IVDhodHNKT2ZZekNLRkQwdVVBYjdJTWVZRk8zcWs5ckVUbyszNnhMY2U0aWxKZGpZaDQrdVhaMEV1cDd2MVVhbDdkMjRycDNMOGwwZFNtM1hoc1lZRXJnZXRuZHRiQUkxZmhYQUhWcXFLUlZveXJXOGx2Q3pXMjlzek5EV0Qva2Q0L2R1aTBBREtEREhQUTJldHloTkZJUGtub2ViU3RaYmw3SW1uY3RwclA3bTIzVkhlOSs1OXpUbk5OUWNiODV0SHRxMmRXeVFHSTZCbVNnNlNsSC95NGF1MkNuZkR3QjJuaFhkdm5RZ0d4alE5d0Fyb3NkMVhZcVU3cEc0VmxqRHBCU3gweHIxekxtTVM0eHc3MHZ0MmI1bXIzRk1lMnNLUy9leHU2WWRYZXNFb1lDTnViYTN6WFZaVnM3NkFmT1hDRnkzalZOWUp0dTVtdzFlWENJODNURHBlazVyQk8vaWZzY1pBTllJM0lpY3NWRXMySHBUTE5lWEtmVGNoNGRyWXV3Y1I1UG5FQk1zL1pVZDliWGQrNXlBZGJGOUNJNWxPV1lJaVFXbkJpNWplMkxuWGZrYmhYNFpKS0lyTGFrdmRiVmxxTjg1Rnp2U3JyZjVkUnh0QlozYjF1R0dzcXNwTjdST3lBQjc3S3VOQ0cvSm1Sdlg3all4ZGI5OURLek1JTzF0WXpVR2hQSFBnT2ZPTTlqSGVWL2N4RDFSdnV0NTNqdjNua2pnK3RZc2ZWRjNqbi9YOW9Kdi9keU96YmtYNDZiVWVUbEZ5amNIY0plaEh4S25mTzdqODZ4K2J2L29NbEVDMTEyRTlMc0lpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlNRGtCQ1J3UGZrdGtBRWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaU1CZ0Jpb2J3OFBpelcycjR0aFYzcHNoQmpjUDdQRmhLRVZ1S0xia3A5MUR3WUZDOGdqY0JjRnJBUVlJSHIrazRSc0dWbW9scnN2Y0RjQXlBeDljc09MR3NIREhOeENLVnpUb0R2U0JBb2didnFRNGsxM2FJWGUwQ2RFMzNrTUIxMml1anI3TkxXaTNMeWpXRWlGMkp3UFZkalhqbGw4eTNrMElYYmtwMVdLUERDSjNCS2ZyZ0p6cjJmYWpqdHREUmhJNTNycGdFQlJscHo0WE90WDBGcmltOCtlYUFMUndyK2Z1cmRFaWhFd3dkTjBNcGRPOVlEaDEwS0dUYWxWamYvc2JoWmQ5QVJvN2Y2QVJZTWw2UndIV1lmT3I3aHdJWDdIY1VJM3VPRVJubk9PQkVXK1JTeEVSS3Z2V3BBdGZrczJaWDUzWitwOU1objFzL3ZSREFxUm5sTkZucFJNaDc0NlpmR0xFWkNwSmNtVkZlanVoclJySEtLZ0pCQXZ4R1VpQjR1eFhNcDRiSVFZTkg4NHV5amxKRElLd3A0M2ZtbmZveTIyOUQ0dGdTdUw3bEhxMFVnV3NHWUdQUUZRcFp4Qkw3eDBIT0dtT0t3RFVGR3c0MUFnUXZUdWpXRlB5aHlCSkY5MnFzWXlaVWVWT1dMdUdOMUhLbXpsY3kva3V4dVUzZ21vNzduQzl4dnNjNUVNV3ljZ1YrUWphdzMzekVpdlR3ZDQ0Wk9ZK2pjUGJZWWxBeFFTT0tEbS9mSXNvK2hNQjFUQUNGODNpdWRWK2Zja01YbUtkTHVLcG1rM0w2YjVjQWJsY2ZTYkhiRi85d3I2a2xldE1tOE1pQVcwODBZbXhYdEJpN0JCdFRXQ3VQQ0xnRXVwN3YxVWFyN2QwWVcyZHRHRW5nK3JhOUpiYTJXR1BQc2F0djdtbkhXRzM1UXV2eFhlV1cvRjVqL3VyWFd5Snd6VExhQXZMOHlBcXEvYlNra1pFOTVod1J4NmJhcGF4SjUyS2E2b3pKWDlzZ0lYNFErVno3aDg1ZmE0Nlh1NTZmMHk0RzdZdk5ROFk2QjVITGlYdWVGTTdieXdyWWo3bitRTFk4NTBWQjFOMXRNQnoreTNmdjBJbG52VGgzUDZ3d3NHNnBmU3RsemFXay9WeFQ1Zjd2QnljSzZOYllYRk5ZdW9UREVIWjByUlBVbUkvVDdsQmc3cVk5dWUrZVhJSHJMbkZyMnVFR0l1eHpiN3FlMDVSekhsMzFjMStaWnllNEJoMUtxV05oNWdzSk9iUE15NDJRL0taR2pQbmlMbU15ZjQ4RmVHY3hIQ00reWJ6VEtjd2FTMjFCWnZoK1lLQ0ZsQlFiRDFMRW1nRjBLYko2RDYrZ2xNQmx6U1V4TzNNQzZ5MnBMNlV3SHlKUGJCeks4UWpQT3B3OFJLVVpaVzVyejR5NWwvajlOUFhNVGF6YUI5cXh1SC8rUEhSZWkyVjBDZGVIM3E4NTM0Rlk0QzdhczdNOUI1NkI4S2FzRXJpK2hWaG9UNE5yUmR5RFptRHRKdjI3ZlljekdDN0h4Mjc2bHRrYll0KzhLdmRHTERSL2JCN0ZvRFVmbm1HYlF1ZTNjc2RKTTJ5V1RCSUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVXZ2pJSUZyOVE4UkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSV0xrRWVLaVpRbnNVRHVsS1BPUkpoNE56ZXdyRXhBN0x6L0ZBSXAwOXlJY2kxMjZpMCtoVHJDQktGN2ZRNzdjM0RraHJHWkduOVFBODJOUkJKbjhENEtHWlFuOGxkY2V1b2VNZ0QvblNPZW9MTlF0V1dUY1JpRGw4cFRyWXRHRWN5N0hUdDZIMk05dmxRRGEzcnNUbmhTTDBkSENxbVVKOWhRSzFQTWhkSzlFSm1jLzZ3N3dDeDZvblIrZ24xdWEremk1YkdpZUhqOWNDV3JtY3M2MEExKzh6eTUyTHdIVk0xSWdPSkc5UGFGTXNzTVJGVnZTc1RSQ0p4WWNDYVp3SFlDdmphTTV2WFpQNkNGekh4TWt1c0E3bGRNN3l4MWJIQW5ndWdKQzRZMnhzbENvS0htUFdkN3dpZ2V0d2g0Mjlmell6Z2dZVU02Y29ISjFVZmVkYTkzNzJmWWY1bHRVdUwrRlJqV1pKRmJqdWNrN3RZOE9ZMTVhSXlZeHBuK3BhZVFRMkFrQ0gycm1MNTVTUS94a0F6bzhZWkt0RzB2eWlqR0lOZ1RDT3h4aVlnS0taZjJneFF3TFh0OENKemV2M0JuQnd3YTBjWW03UVpVYUt1UFhIQUx6Y0d4T25DRnl6YnE2bE1XZ0l5N2h6bHpFQXVHYkJkVXdLclkrUlF2Mlp3czJjZTFOMGUyNHB0aTVRZTYybmFYZUlEOGZPRlB0N1FnQk9qWFVEbG50R0lHZ2g1MjBNcUhUWmlEZmxtUUNPQ3dSRDZoTDNHVUxnbXFJZloxa1JSaGRCRGVZaklzMnVhc3h4UVE3TExnRmNDZ3hSUEs1UDRwb2krNXFmYW92ZXZORUtkL24xY0N6QStUTDNsMkpwQ1RiMnVRZTZkblVTNkhxK1Z4dVYyTHN4SmtxVitvMEtqVEZpKzI2aGU4STErQlJCVUs3MThsdmlyL24rS2lNNEJNZjhmckMzMHJIWGxBTFhoenNCUk5yNmNlcmFkcDlub2NiODFhKy9WT0NhNWNUVzZmbGJuOERab2IyTWtqWEpXTC81QVFDS1hNMDkwQW5QVk5CT2lwdTVhU3FCNnk1eC9qNTl1K2ExcGU4WjM0WWgxL1Biemt1TWRRNmlGcWVhOTY2ckxPNVZVcVNQd3FPaHZjZXU2NWYwTytleG9iV0RKYlVoWkN2OWRSbk1qWHZZb2ZSNXU0NDI1dnBGak9scUZManVXck5KN1g5Y0UrSnpHa3E1d2NaeUJLNWRJZnlZclg0Z3d0UTJoZksxZlNkK2E4ZEo1L2Vwd0s2ckhRVmdsMGc1S1dzb2ZPNTRUbWpYU0JrTUhzQjdYenR3UVd3OWptYXdMcjRIVG12aDB5YnVIVG9MRXlzcUZLeW1DVTdEUFRxZUYrVWFqcHR5eEtsandYQnkrdnBTK2xMUDd0enI4dGc0bElFZHVlNTlUYS9TKzE4Y1dpUDA1NGQ5ejdmRVJPUGZZSVRhZVI1d0M2OFpOOWkvODF4a0tJVytjNm5QRnQrM253VHc3RURCbjdBQldVdkdhaEs0dmdXb0wrck85OWFPOW4zdUMxenpMTzhhTnVEcFE3eDdFdHFqN04vajUxbEM3Y0RLUTdleXp4bk9vVzFUK1NJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWdNUmtNRDFRR0JWckFpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWpNaEFBRlR0OEJZUHRFZTc1aEhWY3BCbEtTTmdSQVI4TTdlUmZQeldtTWE2TjB1QTZKY2ZJZzlqczdIQnA0L2IwQVBBYkF1bGJFbW9leitkOTNLUUZYNFJvS2UvN1FpSWI5SzRCL01RS00zek5PRzVjYTU0eXJBTnhZb1h3VkVTY2dnZXZ1M2pHbTBFeTNOZDA1eGhTNHJ2MStqQjFpSDZ1ZUhLR2YySjNvNit3eXBDTjJkKzlwejFIcWpEK0VpRjNvM1pVaXpCOFN1VWpwWHhRbU9OS0tBL3VVOWpOL29LTldWMXJIQ0lXODN6cDEwNUdJNlZNQTZERGxPaUwyY1k3WTJEajJmVFVncEVCaGE0b1FmalRnRlBsbk85YWlNN0tmWXVVZFlSMmIyOXA4YndDbkExZy9rS212VTJySVNmYUYxaEdvNno1TStUc0ZOWGwvM1ZUanZkT1VGeE1DWWY5cTIxdDNiZWo3RHZQNTFpNnZ6LzJUd0hVZmVycFdCTklJY0k1SmtVd0srNnlVZEk0VkplRDh0RmJTL0tLTTVCQUNZVEZMNWlwdy9Rc1QzSTBCNGE0c1FCZ2FoNlNNNzJOenRKU3hkOGpNSWVZR2JUaWVDT0NMSGVMN01jZnhWSUhycG40S3FGTUlOV1VkaytMV0ZEYjV6QWpyWHFsam9JSnVOY2dsWTYwTE5NYm56c0ZUQXlURjRMU0pTdFNjRzZUZW5EWWhxTlF5Y3ZQRjJrbUJqMU84dVF2RjJKOXNSRDYrbmx2Smd2S1BPUzdJNldOdDRsU053TkNGUFRpM0NTQ2xCaEpMcmI1TnRJdUJvRTZJRkxRRUcxTVpLSjhJdUFRa2NIM3IvaEI3TjZad2FudXY5aFc0bnJyWHBxeVpoMnljU3VBNjlzN21ISXJmV25kdGxFSmVMeHBBSEREbE9jc1JIdmY1Y28rQ2JmRlR5dmVkN1grZE9RUHhya2pIS2hYVEdscmdPbVhPT3ZXend2cGovWDRLKys5amcrazhmQTVnT213b2ZjLzR4ZWJPNlhMUVNPQTZoNWJ5cmlRQ2o3Tjd2SDRnTjRwZ2NqMkw3Lys1bk9OYWJRTFhOZGRKWW1jazJaZHp2MkdwQXRkZFl4TFd6Yk1YYjZzb2tOLzJuVWdWaVUxNXZtUEJ0WGh0eW5pdGJRMGlSV2c2eGNaUUhvNHhHUkNVNnlPaGxCTG9NaFljTERYd1Njd0dCdFhsV2pzRGxNWDYyRE1BaE02NXVHMXBhMlBLdlduS1drcGZLdTBMZmE5ckc0ZldFdWJ2YStQTEFMemVDYkFZQ243WDUzeExySzgxYTZsM2kzeGZUd1hBOWN2cnZBYkd5cnZXaXZOL3B3TUl2OW1IQnZJd3VDZjNESDlhQ0RTMG5zMXorODgzODA0RzY1cHI0cmw0bnZ1ajBIU1QrcDZ4OVVYZEtaci9DanNuQ3dsY1gyNkRhbjgyRUtpTS9CZ3NvVTlpUUY2ZVRlUmVDNFhOUHdlQTV3WG5sQ1J3UGFlN0lWdEVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBU0NCQ1J3clk0aEFpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQXF1REFJV3VEN1NITzFOYXpBT2dQR0QvazVUTVRwN1lRZlMrd2lXWlpuUm1qemtUblduRW9kbUdhenBLNEdGZEhsN2Rvck9tdWhra1lsMlhaNjNTcGhDNHB0UFZ2dVpnK3lXMUd1R1Y4ek1qSVB2TmltV1BLVFJUdyt5K2grOWpOdlFSM1UxdDExaENWa01lbHUvajdFSk9RenBpcDk2SFdMNWNSOGFtbkNGRTdFb0Zya09PYnludGlna1UvTnc2RHVXT09kWUM4QlQ3emFhQWw1dEtuelh1bmRJeDVlVmVlYTdESThXbXp3QndUeS9QdDZ6d05nTkx1Q25XSDd1Y1BTbmFkZ2lBM1FPZEtlYWNsZE0vVXdSbWNzcWJNbStPMDJTYm5YOWhCVmpwUUVwSHQ1ekVvQ2tjN3pMMWZZZjU5ZFl1TDZkZGZ0NVVjY2M1djRkejJwL3FOSnhUcHZLS1FBb0JCb3lpd3lTZCtUbVhYMktpOCswWEFMelhpQW1mTzREb2xlWVhaYjFDQXRkbDNOcXVTaGtITDFuZyt1bFdRTm9YNDNHWlVKVC94WkcxdEZ5QmE1YkxNVG5yL1NRQWloVjBKWXB2Y1B4K1dWZkdIcituam9GNlZGSDEwakhXQmVqay8xQWIvSWNCaC80cW93VjlSZGdvSEhGeVFMd2dOaWZMTUswbzY1d0VyaWxleFBHRG14akljak1qQ3ZIcm90WXQ0Nkl4eHdVNTg4KzJlVGNGeHhsd2dXSXFwZW5SWm4rQyt4bDNEUlJ3dkEwd3hqWGtHcWx0anRmR1pBazIxdUNqTWxZZkFRb2MrZS9ib1NuY0l6SEFMdmNSZlVHbm9XM2p1dGhIdkVvZWFOOVI5KzJvWEFMWHR3VTBsY0QxSTJ4QURQWTFOM0hOa3lKbTdyMnNIVWdoMUUzR1hMOU8vYjYzQlZyaEhzTE9BSTdKZk9CQ1k4bFVzVFczcWprSlJHY2l1Q243bk96ZnlhekhmVHJRaUxQczM1N2svTWI3empFZDV5ZERwZGkrRmV0TERSN2JaZHVRNi9rU3VPNmlyOTlYSWdFR2NPTmVyaStVenpNNEZNRGwrc1djMG1vVHVPYlpCQXB6MWxoTGpJMmZlSDlUMW8zZGZwQWljTTF2d21zQXZMdWxBNVVHM1dqcmsyM2ZpVkF3OHRMK3ZXZGdYdEdVbFRKZWExdURvQWd0ditHOC8wTWszcGYzUkFwT1dRdmRCZ0JGWFVPKy9weC9IdFpoTk1mcUhLczh3TXZuY21zTDlQNnF3dkp6OTlLWDBwZUc2Q01wWmNiR29hVm5xbExxTE0zRHVSSDNCN2hXendCSXYzVUs2bk8rNWEvdFdzTGRQY1A0ZlBBYitoOTI3M212Z09FaGNlUFlYZ2t2NTc0Rzk2RmlhU01BRkluM2JmbXpGWTd2RW9adll6dm1lbmJwUFU2OXJzOFoyNUNvTzk5NVpFdkI3NWpBTmQrVlBJUGc5d1AyUTU0ai9MZFU0NzE4dTFnQjc5czVmMi82M3ZXSlpmS3MyWnVzK0RuUFNseVJlRjFPdGlIUDdPYllrWnEzOUF4bmF2bktKd0lpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlNRU1DRXJpZTRVMlJTU0lnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSXdJSUgxektIYjk5bkR4U25WZk1pSzlmMHVKVE9BbUxNQnhiSVBUaXhqNkd3VXhEd0p3SVplUlR4MHp3T3VxYUsraHdQWWJRQmpReUxXRkRHK2VnQlJzQUhNWDVWRlRpRnduZXNrTXZXTldkckIvRDZINzl0WWozRmdld3doSzdaeHlNUHlmWnhkYU51UWp0aDluNlZjUjhhbXZqa0pYSWY0L2hqQUUxc2NNK2pBUVpHVDBIZXpsZ08rZTI5S243V1k4QXJIQmxzN29uMGMxNFFjUjE4YmNGeU1PYVB5dTA0bndnc2puWXJPV1o4SmlMWmREbUJUNDJ4MWNjL09PS1pBU0U5VE95OVBjV2dORmNJeElmc3RXVzhMNE42ZE5jVXp1TTY3ZmQ5aGZpMjF5K3ZSek9EN05UUW1tZk43T0tmOVN4dHY1YlJOZVpkRGdBN0NGSmR5SFNubmJqMkZtSVlXVk5QOG9xd1hTT0M2akZ2YlZTbmoreVVLWFBOTTRRN1d1Wi92b1ZocUU3Zm1OU1VDMTAxZEZMZG04SmtYSk55MlA1cjNEc2ZpREJCelkwTCszQ3dTdUw2WkdBUENiR1htTU0reFFSVGIra1liWXdZbzJoNEF4MXE1S2ZZOFVWU0NRakFVa0JvN3pVWGdlazB6dnlIYkRUd0FGQmg1MFFwZlYyNGJGL3pDaWc1ZVdhbGo1SXh6MnViZEtlSkdYU1p6SGt1QmpWQTZ3TXh4UDl4VlFNYnZqd0xBb0tnTXhPSW5OK0NULzlzU2JNekFvS3dpTUJrQmlwVHhHL2VRQkF0cUJNWkxxS1kxQzhlUys5c2dyVjFsU2VENnRvU21FcmgrTG9DalBIUCtZTmZGZVo4bzR0dWtNVVI5eDF5L3psbGZibnNlS2FiRmZRUUcra3BOb2JGa3lSN2xuQVNpVTl2dTVwdUwvUnpyY016RCsraW5WOW8vY0o3cUpzNUQrUnVmaXlGU1RPU1AvVzBUTTNjL3YwS2xRNjducnhTQjZ6SGZTUlZ1YVdzUktXdFpROXV3a3N1UEJUQm1jS0lkQWZ4eWhvMWZiUUxYTlFPQnRhMUg1RDVyS1FMWHNmTURUYmNhUXR5YVpiZDlKL2hkN0JKSFR1MzJwY0cxbXZMYjFpQnlCVXBUYlc3eWJXblg1VUsrK2lsOUlTWlF6ZkpUZ3BqeGUvczV6K2diVE9EMnpjMjQ1aHo3ZHdad3B5MDhPK3ltcnNEc3pCdHJYOHExYmwxTDZVdTU5NzlHL3JaeDZORGp6UnIydTJYME9kL3lGak91Zm5QQUlBWVRPdHIrUFJaSWdvR1lLTGp0QmpCb2UwKzN2Yis0RjhKbmI0dUFMVngzcFlCeG4vSC8wdmE1Mi9wSXlmeTFLWTlpMW9jNmhUZm42RGpYYVJPNDVpVTgzM1U2Z1BVOTR4aWtpK3ZWYnVLN21mbFpQdmNUWXluVWR6bDJZNEFFbm90TVNmNzduRzFoSUt4L0FNQjM1di9QM25zQTdYT1Q5OXIzaEh3TWh3d2hFTnFFa05BeG5UQ0FUVGU5enFIRTFOQkNEWUZBVEp2UUNTMG1CQWpFOUhLWUQ5TURoRzR3R0g5Z2F1ZzFoR0pxNkhCb0o4Q0JtVzh2ck9VdkMwa3JhYlg3bFBlbkdjZkU3NjVXZSswK3U1Slc5M1gzK0lhNTVKcmRrbk9zM2FaMURXZnRjYlM5Q0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWpBRmhHUTRIcUxMb2FhSWdJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJQm05amNBQUFnQUVsRVFWUWlJQUlpSUFJckVXQmU4SkptaHFBNWxEeUhUV0JoSmd0MXYxVFl0c2VaMlVNaTIrWUMxd3FyN3JJWjUvNFVNN3R2cERiYWZVekY0dVA3UlNTV3BZMUVoSEdteU1ZRW83eTZ0SkpndXd1YkdlZjMyY2I5dFZzN0FRbXVwOW1sRnVZald5aDl2b3hISVNqd3htWkc4STFmdmp0SWZONHdzUkE5MXRMelJxVC9jeGJmNTJpc3NXQmJndXQwZ04xM3pPeG4wN2RydHkzT1pXYWg4S3NrZUMzV2dHMFNYTWNDT25pdkVVai9zUVM5bEp6ZzYyNi9VN3BSUDdXaTF0L2F2WjFFTDJ4T0tPRk9KY3VJeWFkekNURnU1NlNCNGZHdVlHWnZHWktTL0VId0I2UnRCRDhUU0RXMzdGTXdmcW1BNVBmTTdDWm1kbk1uditQL24xdTRKbTl6NHJBM0R1S2VYNXJabklDOVdIdDYxemZubkV2bGpnUzV2cUR3UUFqd2VjYUZCYmI4cHZoM2JZazlmNm1EK3JoR3BZVmdNK1ErbnlqZFFkdUpnQWlzUmtEaml6YlVFbHkzY2N2dFZkSy8zelhCOWVuTWpINHhpZXB5Y3YwcHVUWGM1Z2l1Mlo5NUx2b1ZKQk1KNXdCaTErWGZoem1HT3cxOVprUTFQVXRwSDZqbk1lZlUxV3RlZ0h1QitVYkdMY3haWG1SR28raFhNVTU3dHBuOTU0d2dmdHJ5b2tnN1NLaUVWSzZtcnpmamRFNno2N1lJcmxQamJsLyswZXVjdDYyZW5CQmtxVG0rRWdhNWNYZnBPRFozbkRuZkowcmFYN3BOVHRhOUMyMHNQVTl0SndLYklwQ1RLcVhheFBQbmlSWGZPM3VmRzNLaGt5TDlOL3AwTnpXek0zb0hYRkp3L2FFaEtjZUhDMDR1OXMwSlVSV0NPTDRwbEpUWWQ2YldaQWFiRUZ6VDcyWXVqNzYwWDBZQkpJa3IrWWJ1bDZVbGEydk9YOWUrbDFuM2dBUTVObDc2blB2bStPV1NHeWZ4TGFPbC83SXRndWpDMC82dHpmZ05IUjFKcGdGUHhITnJmZHNqYVE0Q3pERE9EbGtlZ2tpK0tieDdTT2pLL1BOWWx2ck9SZjI1aEFFOWY0T3hNVy90L0R5L0Ivcmw0ZStpUlhCZCs1djBiNmpZczZQMWVUeFZiK3Y5dnVuOVN1YXlOdDNHWFQ1KzdCMVJNb2UyeVhNK2FJTHJucitCTlFYWDMwcXNIeGp2blNYdnM3bmk2ZEw3ZSs1eDd1R1Nyc2VPOS94QmVudlgwb1kwYkpmcWkxRlZpVlNkNytYSWU1bUREY3RVc25tMmY1cWJHL1gzRGVYVHFUNS9TY0xuVk44OGwvUXNobkh1TlM2OU5Hc2RwN1E5SmR0ZDBZMmpUeDlzekh6M05ZYnZKQ2VYVkxJbDI3U3Viem1uWTNCWWNCNngvbmJxTzBFb243NzBzUGFkSkJPeGRkb3BRWHNxV1FYTmVydjduZjV3Sm1zSnJzMWk2KzVHb2YvWkN3VFhYQUtFNXNlN01RamlhcDd6ZkQ5aVRvZnJ5TDNJUEFkSlcvbHVOdlZiU2lVUlpaM1o2d3F2ZVNvaEFHc0FTZnhLSXJHNVJZTHJ1UVMxdndpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJd09JRUpMaGVITEVPSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUpiU3dCSnlUWE43Sm5Ed3M0TEpGcDVlek03cnZBTW1HOWsyOXNHMjdNbzgrcG1obVJtMDRWQWdGZEVBdXRZeU16aTlwckZ4emR3QVk2cGN5TG9tU0NERDVqWit3YzVIZ0dZWHpDejd3OFN4SE9ZMlh2TTdQekJ6ZzgxTXhiLzF4YnFPOUZKWi83S0JjUCtxcllTYmQ5TVFJTHJhWFNwaGZrdDh2dlVJdTNXUUxSWVlFdEw4UGcwaFhicGJrbmQ0emE5UkZaVHgxeHlzWHhyc012WTVtMlJqOFdlRGEzMzZUWUpybXQvendTTnZOak1iaEc1cVVKeDlOUjlWL3IzRnNFMXNoZ0NTZzRQRG9LSURYbjNKNFAvamlTWlFOSHdlK3RUbllpQmdCbGtCNGhRU0JZU0t3UXAwdGZ5Sld3cGVUYjdoOEZZcFR4aTI2MHBDSm5UenBKOVMyVUhGM1dCZjJjdHFUU3pEWEtTbDV2WkN4Tnl2cm5Qc1BEUXZldWJjL3BMUEYvLzJBV25uVHRvR0NJUit1NHQ4cExZTTJDcGQvc2NudHBYQkdvSmtQaUFaMTc0SEVPcTlPYmF5Z3EzdjR5Wi9YVmsyMmNNWXJLUEZ0YXh4R2ExL1pGY0czWjVmRkhMVm9McldtTFQyNWYwN3hFenM5M0ZndXBheHNOVXNjVFlZR3phL3hpQ3ZrbGVoMWdzVjBxRktYTUYxMk1iZnQ5SnplNHdmVW1NSVBhSHVlMTdCSXB6eUNYNlFBV24wcnhKcjNtQnVaS0ZVV3JOTzRONVVjWklGTjVuM0d1MWhmblBWdzdqeXdzRk8vN1hNRjQ3cWlHQld1M3gyZjRYYm01M1BCZitHeko0amw5YnptQm1pQnJDVXBLVWhmbGpwTjUraWYzZXZtbG1WM1p6MUxYdDI2WHRkMUZ3Zlg5Mzc4emh2QzNqK3B3d2NCZmFPT2NhYUY4UldKcEFUcXFVTzNiUEpIbTE1NGlZalhjVVFtUy9JSWQ5Z1B0R3U1Ymd1blRPTU5aM0twRzgrZWNYNnkrMkNsVTNJYmhPaWNSR3VkUVJ3N2YrZHd6ejAxemZzWXpDWDJTTFM1UTEzeUdsOThwNG5qbnBNTnM4ZDVDajM2c3dJVyt2ZWN4ZEYxd3ZjUS9WMWxueUxZdmZBTUswV3dlVjE5NURwVzFMSlF5b2ZVWk5IUy8yREN1WjcvRHJiVW51dGNTM1pnbXVwNjcycVhOVUpCUC95ZlNtMnFLU1FPd2JMMnZvV01QMTA4cTYxdHhjZ3V0MjJtc0pyaDl0Wm45cFp1ZEpOTFdYY0RWRllpMVo4TnpqTEoxb0xIZW45SmliSXVseWJJM3VsT0E0SldRbFNjaDlna2FuanNGemlzU0VzY0ljSnVPQ0d3Wi9aSDcwdWk0WmVPbXZhTzQxM3JiamxMWm5hanZHRjF3dnhoQmhZYzN4OVNyWE5FOGRiK20vdDY1dm9ZLzkwa2pqWW9sZFV2M0k3N3JFTko5eTllVFdkelBYVHhLYjl3YkhUTW16bWJlLzJwQVE5UE1kQU03OTl0S2hDZDJxYUYySEUrTThKdXVNOFlrZGgvRVp2NTBidWJWRlkzeEM2cmsxSmVWUEpRS0lQVTlUQUZQdm9wNWp4dFQ5VDJJNTFvMXNXK0ZkeExwTHY3VE9tVzNidWFrOUlpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0NRSVNYT3ZXRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSUUNoeTcwSFFpR1RTbDR1OHdjeHVhV2FsTXBnek9lSHpWUUtrMnlMU1NBVUFJbHRoSVRnaTZwcHlTU2ZzL1BiQTZkTk9ZdjB4TTJNeE14SnJYM1FTMXB0YVJEc0dDdnVpeTZrMnhRTGNFUzV5VGJjNVNHcnF2SGJwN3hKY1QxOHRDZWhPWmRRaTNaMm1lOW90ZW9tc3BvNjdSTkR4ZU16V1lKZHgvMjJSaisycjREcDE3Vk5KR3E1alpzZEhra3NROUVPaWphOU8zV3dOZjIvNXJhV0NwV0lTYXBwRW40bWtHUVNCK3dXeEFPZEZvQmxpa0ZoQ2kzRjdSTW5JeHI3dS9rTk9XdE03TURVV1ZOTXFXV3k0Uk0yN3hIN2ZwWUZBYzRMRVRob1NsQ0RtZTJ0QjhPRGNaMWdJcDNkOXpmQVhranN5ZGdnRk9iU3hKa2dzUEtkZVlwZzVyTFN2Q0N4QklQVWNLMzBPdHJRcEZXeSs2WGVHeGhjdFY5Tk1nbXN6UkxpSUdKakxxUzMwYTNuSCtLVkVDdFJiU04yN3Z2RjhrT2NqRDBCS2tTdlBON08vS1p3djdDVzRwajJzY3lSSW5lUTVDSytuQ2hKK2hCM00yYzB0c1djaDg2VTNNN09QejYxOGdmMUp0SU4wRFJHaFgyb0R4bE5qdjVJbTUzNGJPWEZTU2QyYjNLYmtOMS9hdmxnL3YxVUd3VEZqWEJHY01sZk52NWNzZDY2VTJmUnVTdytKVU84MlVWOU9yTlNqTC9XOGlFQjJpZk9ZcWpQM2JObUZOazZkbi80dUFwc2lRTi9uZ2NNYzVCTWFHOUQ2N2JQeGNML1pEV0hOMjRaa3ZxY1BLcnFuUzRUOFRqT1Q0RHBQZVJPQzYrdTdiL3hoYk5Fb3Vrc2w3Um5sVTNQdm05aitzZmZvM0Q0NENWTklxdmRId1FGYjVsVkltTWwzL1ZSeVM5ci94SW4xQXFuK2RrdWZVSUxyK1hkaDZ2a1ZKa0dOYmJmRTk2NVV3Z0RPbEhFNXY4K2FOU1U1UWhKY1Q5OC9hMHIzcDFzemI0dWU0OXA1TGRtL3ZWbWp4YmV0c2RUTW9XMlNSbTZlaGtTMHIxNnBjVDFGMnozRjA3blQ3M21jMXVmTXlXWjJFN2RPY2FsTHRTdFM0cWU1ZWVzWWg1YitYZzNQSG5OVHVXVGR1ZmJIK29FcCtYVHFHTG4xcXVjM3MzY1BpWXpPRlFBSjE3cVU4TnFWZTZua1hIcHVjNzVoWFBHdUlWRk9tQkNjWS9BdDV0aWVCMXVocnBiMUxZeXYzaklrZEQ0OGFGOUtRczFtcWJWb3JKdSt1MHM0ZEQ4emUxTG1uTVBmMWhWY08walM2WmZlaWNSaXo0eGQ2S1BGeHJBdDQ5ZFlVaEEvaVZhcDRKcHJOQ1lHWjcyK1grNFJTUkw2UWZjTjlBZVpleUtXQ0tEMDJxUmlBbm9uS0pyejdXNkZSMERSSVdxL1Z4WlZxbzFFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVMyaDRBRTE5dHpMZFFTRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFZGcwQWVRd2ozTmlaQUwxa0ROK3BLSlJxUVh0aUdTdVB0VDczWXE2ZW0rYUN6SXRDVEJsTHBYRnNFaXRXY2o4UFJjNE9LZWRzY0NLa2tXMC9qRlBaMllQR2dMRkh4OXBDSXQrYjI1bW41blRTTzFiUkVDQzZ5Sk0zVFpLTGRJdVhVemVyU0VORmJWSWQyc1BJOEcxbVFUWFpYZE43SDRzRlN6RkJFV3hvTGRjVUFWU2syZVZOYlY2cTlyZkdyTHExN2lFRi83QkNQeERnSWlnTzFaU3dvTXhTY2dsekl4bms1OUFKS3lIZ05QWE9XRmZTbHJ6T1JlY1JaQmdyMUlxdU9ZYWtzUWtMTWhFNkMrdVhlWUlybHVEZkdxRGpWb0M5bkljZTljMzU1b3Q4WHhOQlJYZXpna3NXOW9yd1hVTE5lMnpDd1FrdUY3bUt1M0srSUpnYWdLdHgwRGRGaHFYTlRQZUsyRi81N1ZtOXAyV0N0MCtKSUZBSnV5WE9YTDAxTDFlTytickxZOXRGVDdOU2JKUmVsbHEreXRodllndGtOVWNObkZBUkFBUGRtS0FrcmIxRkZ5UHgwT2t3VDJIWExxa1BOS0o1VW9UK01YcXpJazNTdHF3TGR2VUJvd2pWQ1BoRHpLalhHSGNGSzVEbGVCNitxcjNma1p0VWh4ZU9wY3dUYVZ0aXg0U29iWWo1L2RhV25DOXlXdnVuM251MmJJTGJWemkycXRPRVpoTElDVzNScWowNUNGWnkxOEhrbWlPOTNJenUwV1FaSkR2c2pjWUV2VHg3WEdOd3JmWTE1c1pjNlorK1pUNzVueWU0ZDlyQ3E1TDU1WmlZOExhL25Xc3YxamI5eHFaclMyNDVuNUR4bm12NExxRlV0L1lkKzJXeE0ybDkrSVNDWnA2ejZ1azVHZWNZNGxrWG9McjBydGgrZTFJUGtveUpaNmpZWG02RXd1T3ljMVQzNU1lWW1iSFRFak5hODRrSmV6ajJYN2swRmFlcmIxSzYzeUhmL3pVL1p3Ykt5eVJURG4yN0doOUh2dm4xeXFlN1hXTmV0WlRPNy9XODlqN1hCZjluQlBON0lMdUpJOXpJdnFmN3NCSjV4SVRMUzBGOXZGSWNIM3FlNlMyME9jZ0tTQkp0NWNxdXlJbDNxU3N2Y2ZjVktxUHdYVWxTUXR6dEQrTFhPVFlPOG9YeFphOHIzT3lhc2FVSEQ4c1NJUkplamYya1VydXYxMjVsMHJPcGVjMk1hRXU5WC9kamE5UDZYbXdGZXBxV2QrU1NycUU5SnB2UWJIdk82aytQSE1uMUVmeUxkN0h0ODJjczk4ditsTXpPMkVZRjF3bzhUdWJTbUJVZzdaVWNNM2FjR1RRL05zdm5DTkM1LzliYzlBTzIvWVNYSk9zNTVsQmUveHhWNDNnT25WYXJOZERITy9MeW5QQzlMR2VTN3Y5L0hWeXNMNUt3VHI4VlB4RTcvNTM2OXEzRHJkQXR5cDZqTkc2TlVZVmlZQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSTlDY2d3WFYvcHFwUkJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkhhZHdNWE1qSDhJU3ExWmhINXRNM3RyUkdpeVpIQnJDV3NXTTdNQTltNlJqVm1VakFUNkorNXY0NkpnenArZzFDdTVmODRlN1B2UWhGUzZwRDNqTnJIRjZhV0xZYWtqRmVBKzFyK0VETFBtL0E3U3RoSmNyM3UxZDBWQUY2TlNLOTF0SVN2QjljRVJYSE4vSUNLTUJiR1YzRHVJNFhoSCtxVlVTbldQaUp3Nmx0QUNpY2lMSW8zNWR5ZFhJV0hFRXFYMnQ1WUtsbnEvazE3L01ORkloRzlJdXU4Uy9QMExiai82UmxNUzd6SHdqd0FkQXF5UUMvcUZBQnZxSWZDbVp5RVFNWlFDaG5MS1ZBQlhpWnlqWjF0NzFaVVQ5QkVBQnY4UEQvM0NCNWdaMjQ2bFZtalRFckNYTzhmZTljM2gyVnR3bmJvbXRjekRjNUxnZXM1VjFyN2JUS0MzaUtua1hPZElpa3ZxMzRadGRtVjhzWVlrdWZWNnhQcVFjKzRkQ2E3cnIwVHJ1NU81SmE3VlN5T1N4TEFWaURJUVhQK3FvbmxMQ0s0NVBQTjNkM1I5N1hCTUUyc2VRbzliRFhPQUg2OW91Ny9wUVJWY3d5QWxPV0pNUUorTE1RUmlkRVQ1ZnBIZ2V2cG1rK0I2bWxIcEZqMGtRcVhIcXRsT2d1dFRueE4zcUlHMjBMWVNaaXdFVnRVdVFvRCtHZjJjNXdleWFnN0djd1Z4SXUvWk13WkhKNGtlaVl2dkcvejNOYjhWMGk5RGdveW95QyszZDFLcDJMc3ZKMDJNOWNGUzg5ZWx5ZnhpRjIxZkJkZEluSkJxVGdtdnp1Zm1uczg5MForTHphR0hFdXllUDRwZEVGeFBmYXRuSElLaytHc0pNS241aU5xRTJGU2ZFcVAzRm1uMXZNYmJWRmNxbVdscXJCMzdQZlFVVHlPeGU3T1pYVDRDNmJGbTlvaktkVHhUckNXNG5pSmtsa29HTzczbitsdXcvb25FQmFsNFVaNnZQUVdONjUvaGRoN1JmMis5M1lsb1U5K1h0KzBNY21QWHRRVFh1Vys0dnh6NnY5Y1l2cGVmWEFFdU4wL1E4OTNZOHppNTZ6QW1vRXZOZ3k3OTdYNVhwTVM1T1lqN3UyUkJGYmRSMWFhOTVxWlM5OEUzQi9IdWxZYzVsaThHclRxRFc5OUwwbmEvNU9UVGp6TXpFblA0aGZYQjEzWHJKY0lUajIzUE5xVUpoZno2ZHVWZXFycjRNemZPaWMzRFJDc3pEN1hhN3JYclczSU1idU9TY0tZYW54b0hrZmlVYnhjODgxa0huaXArZi84K1p2YlV5SWF2TkRQV2VVK05yV3NBeDVJYU0zOURIMjVjQTVnYmJ6N1hKYW5xMmFhYTlzL1pOa3dLUWwyaGVMcUg0TG8xbWM1WlhBekU1WUtUSk1rQWlZSnpoVG1yOEZzWjIvLzk4SDhlTlFkYXNLOEUxeDFocWlvUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUlGbENFaHd2UXhYMVNvQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDQjVGQWFwSDk0NGNGdmdpaE4xRnlDMzEvN29ML3ptWm1sM1gvc0VDMXBMUXMwZy9ySlNDUlJkUXMwdlpMeVdKWXp1dVdadmFTU0lBN2RSSFFjT05CM3ZPWmtwUFJOck1KU0hBOUcyRlZCYnNpb0l1ZFZLMTB0d3FNMjFpQzY3amdtc0RIaDVrWjR1RzFDc0V2Qk1YN3BUVmdjaTJoWWFuZytpcG05bzVBQXZ6ZnczKzd1cGtocjZhY2R6aC9BbmpQSHpBZ09PNm9nc0NQT2RlcDVyZVdDNWI2R3pNN2RxSWhZY0FVMjlQdklSQnFERGJOVmZGMWQ1K2NNc2pqL3RqTVhtTm1mcURNcGdMTkVhQy9JbklQY3k0SW9KRWI3bUx4N3cyQ2ZWOCszS3NFZUg3SUJhVFZCdHZGR1BTb3c2KzNkMzF6cmx0dndUWFBoM2NQY2tydU43L0VoUGsxN1piZ3VvYVd0dDBsQXJ3bjNtZG1vWFJxU2NuRUhFbnhyckRkbGZIRld2M0JsdXNtd2ZXaHhHbWxmWU1XenJsOVdnVFg5SU9SVXh3OTBSZ1NnWkRRaGZkclRTSThxbDFLY0QwMm1URUhjMk5YTEFTSzFBQ0pFMk9YbW5LUUJkZitOWVFia2xqRUd2VFhSdGw1clF4dFc0UzNOZmZBdUczcm1MNzAyZkFWTXp2Q3pMN1IwTGhOY2kyZFMyZzRyYUpkZWttRWlnNVdzZEhTZ3V1VVlJZ204bXhrZm1HTjh0VWhpUmtKd21KbEY5cTRCaU1kUXdSS0NlVGsxcU84NkZLRHlQcWRFY0UxejJMK08wbUhyeFVjY0czSnRaOTAySDkzU25CZGRpZWtCRjAxNzF1K1FUTi9lOXVNWEhsc1RTd2hNMzhMNXhyT2FXWW51ZVFtL3Brc0pWM2JCY0UxSEpoVFFIS0Z5RHBXY3VLeG52TVJFbHlYL2I1aVd6RTI1bHNJYXl2Q3dqY2VKUDE4WS9STGFwOGU4anZlQlk5MjN6VEQ5bnpLSlRQNGR2dnBSdmVzSGRQRktrbmR6N2xuVjZ0MExuZjZzV2ZIUVVwMmd0eWErellsd2VYZDhPRE9nc2JPdCtOT1Z1ZS9JM2ROYmczdzNOaDFyZDlQVHRUWU11L1pVenlkdXlsN0htZHFEdUgwN24zMU80a0drV2lCQk5ja3l1aGRka1ZLVExJZDFuZkV5cExmMFRoZXI3bXAyRHFjOFh4SWF2UzY0T1JTMzlwelVtQ1NxNzgxa2dnaHRyNDM5ZHY4L2lERHBxMjE2MUozNVY3cS9SdksxY2UzRGNaWi9NYjlFZ3AvMTJ6VDNHUFZybStKSlkraERTUU1PdExNdnBWcEVBa1NudVcrWWJFWmF3THY3dGF6SVlVUDE3WEZxaHJsdy9URDcrVWsxK096ZHMzNUZMOXR1Zm1ocVVSS2M2L2ZrdnVueGpwdmNHdmh4MjkzUFFUWG5BZFNhYjRMK21YcUd3OXRQTTdOcC9qN0lSOW5IV2l1eE41RFMveVdKYmhlOGk1VjNTSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FsMElTSERkQmFNcUVRRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUlHTkVHQis3NnlSQmM2YmFBeUxySjluWml5Q0Q4c2R6ZXlFRlJyRllsQVcwUHV5blhzNk1XVXF3S08xV1RWQnhLbGpJTlptd2V6RmdnMUtGc01pd1NiUU1uWmV5QnF2WjJZZmFEMDU3VmROUUlMcmFtU3pkdWdaOEQycklRMDcxMGgzRzZyLzlTNFNYTWNGMTYwOGUrODNGU2lST3Q1YVFzUFM5MXRLc1BsWFEvRGVzNTM0bXZjWi8zOVllZ1Q0VDEyWG10OGF3ZDcvR2duZ0t3bVdvaDFqd0JSeW1UczUwUnYvSGZrbzR0NC85UnBMSHdVUlFoaFk3aWZPT0xQclV5RUJ6OGt2cGhqTStUdHRpTWx3cUpQZ0xnUlYvM2ZPQVRhNEwxSVg3bC82VVYrT1NCcHJnKzFpcHhLcmcwQ3NtNW5aeHh2T25Yc0xNWm1mRkdWT2ZXTVRxSU4rWTAzcExiaE9DWFNRanQrNVFhSTVub3NFMXpWWFZkdnVFb0dVckdqSndId0pydlBpNGpYdm43WDZneTNuSk1IMTdnbXVFVVBUTC9jVHE4U3VQWDJGV3d5eWlyZTEzQmdyQ0s1cEZuMmtCN3ArYWtrelAycG05RUVRTkplV2d5eTR2cEVUQ3p6RENYSkdxYlhQcmxhR2hqRDk4RUw0UFB0b1E3ak85Yk5PNGxsWXpXazJPN3VaSVlRSjZ5VHB6WWNuS2tSb3dWajNaeTBIRHZhSnZkY2x1RzREMjBzaTFIYjA5RjVUY3FyWHp6eGdydjRsKzRjMXpkNkZOdGFjajdZVmdTVUo1T1JGdmloeFNuNThjU2ZINGh1a1g5YVVNdEUvNDMySkZKYnZ4dTl5RFZsU2NNMDNhdm9ZZmltZDY0NTlVNmtWS2NiNlE2MUN5S2xybkxzUHVZK1lWMzZ4bTRmMkUxTEc5a3NsZjJRY1FQTE9Ud1k3eFdSTmZnTEhucitSWFJGY2M4NS9abVlubXRrZlJBQ1FNSWo3NDAyUnYvWDgzaW5CZGZ2ZGwvcEdOQ1VpNHpmQ1dEbVVFYkkrQmNsZWEwbXRBK0ZlNGh0REtMWnNQWTYvWCsyWUxuWk1DYTU3WElsNWRWekp6TjZZZUJaUk0vY2xVcjVkL2I0M2o0NzJ6aEhJelh2UkQyVU81YWNMSSt3OXJ1OHBuczZkZXMvalRNMGhJUDlrRHZRSm1RYlI1NytobVgyKzgvWGFGU2x4am1GTTN0d1RVNm92eGpGT2R0Zmx4d1VIUEl1VFQ4Zm03V1ByU1JuenZEYW85NXZET2wzRXZsOU1IQysyam9WTlkydVpMdXJhei9wa3Y5QzNwYzlTTzBlNksvZFN3YVhxc2duak42NHJVdVd3dk1YMS9XcVRkWFpwMk14S2F0YmM1RVM5Q091UExXZ0x4K01aK1JUSGMyUVdleWJRRDJLTmwvOXRnTVFBMXpXekg3aGo4VDJDOVVTTUJ6YTFCanMxSnVCM1RXS2VXcmw4QWNaVk5vbU5uVmxIeDd2cmVLOEZ2UVRYc2FRQkpZTCtlMFRHZEZQclBWUFBieEpEY2gvOXNDUGgxTy9tc1diR3Q3eHRLOHdsTVZmbGw5WTVzMjA3TjdWSEJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVRZ1FVQ0NhOTBhSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJckM3QkhJTGZIZjNyTnBiSGx0RWVqOHplMUo3bGRFOWE0T2FVNGRuc2ZUTDNJSi9mNXZjWWxqbWRHOXBaaTlKeUsxcEczOG5jRTFsUFFJU1hCOWlmUTRuUmZXRnJyMnZCR0ozRnJLSGduY0NlNzloWnZ4N3lZSUlsMmRMUzZtUjdyYlV6ejRTWEV0dzNYcnZzRitwOU9NTTdyZE9rSWxma0NMZjJnV2ZJT1FOZjZlSU1hNDVCTUorWkU0akMvWXQvYTM5NFNCV2UvUHczcng4cE00YUdSVENhcDQ5dnV3dEZreUlVUG00SVhqOG9jSHh3dUEweENLSUNuaWY5d3h5S1VCbnlLM3BuMXcvc3ZFbnpPd2Z0akQ0L2F0bVJsQlFqMUlUYkpjNlhpNkF0VWNiZTlYUkVqRFVVM0NkRXVod2ZnVEx6eEYxU0hEZDZ5NVJQZHRHWUk3a3F2VmNOaTI0MXZqaTBKV1Q0RG91V01qZDI3M2xzYTNDSjZSK2J3MEM1ci9yQXU1YnBFSy81d0tCZllsVzZWelY2WWJBOTF1NVJDcG5uSGd3a1BBRjBkZWNRUG1VVktTbEh6TDFIS05QLzFJenU4RFVoazd1amVTNmxIL3MycE80NW1HRHVQRUxCY2RiZXhQR2E3VHRJc0dCbCtET0lWcC9HMU5jNkM4aWtrRFk0SmU1eWYzdTdVUVhmcDFjejJzNFljdFV1M3I5dmZjenFsZTdZdlhra2lEeFBPTTU5N0VsR3pCUmQyOFJWcTlUbVpKVHpSVmN4MFFiWTl1ZmIyWjM3WFVpTStyWmhUYk9PRDN0S2dMZENQRHRENkhWVXlQenFhR1l1bVJjdUEwaUpONGR6Rzh5RjhwN2xyS2s0RHFjQzZwNXQrK0w0Sm81YXQ0OWovSHVURCt4WXV5R1pRNFlPVjBZVTVTU3FWM1JDZFJEb1M5SkVSL1Y3UmR4YWtXN0pMaUdYMG80K1VnemUrSndQakV4WFVxQU5TWE9pcUhlZDhFMVVrVUU0cWZNU0lvWTQ1YjdSa1IvaWlTdTR6TXMzSisxSHJGRXIzUEdLMWN3TTM1L01WbjZrZ2xSZTR6cEpManUvQkNzckM1MzcxRFZrdmRQWlZPMStSWVNpTWtmeDJhU3lPS0lZWHo1dFlYYnpid2U3ejgvMmU5NHlCbzU4TGhQVC9GMDd0UjdIcWRrRG9IKzN0UE43RzZaUmkyUjJHWlhwTVNweE1yZ1lwMGxmV05FcWt1VTJEZUE4VGkxTXVoWVVobnFDbjhMOUVGZjRKS3crK2MwZGJ6VWZyRWtON0UxTHh5clppMk4zN1pkdVplV3VFZGlkWjdQSllSQ09oNlcyN2gxTzJ1MXBlZHhhdGJjOEx0OFVlVGdpUHBaVzhaYW9LbkNQYzN6RVNIMVdGSjlVeVRZeUlZdjVtMGJFeXdqWXY1OTkyNmFPbjd2di9OZGpqVmJuSk5mYUNmcnRaWmViMWQ3UG54bkk3RVo0dWlwUXNJVjVvdjlFaE5BOXhKY2sveU4vb1YvdlRrMjQ3eG5aeG9iNnh0TkpROUlqY21YU0xDUXVyOWJuODFUMTIzdTMwdlhjTTQ5anZZWEFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJIWUlnSVNYRy9SeFZCVFJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUktDU2dBVFhwd1VXQy9iTUJSQlU0djcxNWl6SS9hU1RkLzVuU3dYQlBqRUJONHQ5V1NRYkNvUnlBZTVqMjVDS3ZycER1MVJGSFFFSnJnL3gybWJwV3QxVlRXODlSd2kxeG9KdENhNGx1SjV6cjVjS3Jqbkc0NFlBb1ljRUIwUGdmRnN6ZTZHWlhTalNFTFkvWnNIQXdmR1FwYjgxZ2xhZUdXbG5UYkJVakRkaUE0S3dlQy83aFNDa0o1alpPd0pCQVhKc1pDSW56TGw0SGZiTnlhMDdWTDlZRlhPZXkyR2phb0x0VWlja3dYWFpwYjdxME9kOW01bUZRaHlDNWZrYnNwTFdJc0YxS3pudHQrMEVTa1JtdmM5aDA0SnJqUzhPWFZIa1JnU21JblZxTFpkMVVqbC9md0tpWHpzSTliN1RXcW1aUGNQTVBocnNQK2ZlU1YzM1dzbFhiM2xzcS9DcGRiL1VKWW54S1JGY244dGRLMFNEVTRXNUpVUXBKUUhwdWJyV0ZGelREb1FEQ01idWtHbFVpK1NsWjVLUEtmWTkvcjdXdk1EWTF0NzMrRmh2YXJ6R2ZZVWtzRVZJdzVnSFlkemhBZWlZUktISHRjalYwZnNadFZSN2MzTHJPZksrbnUwOXFJTHJHemdwYVl6bGxNeW9KLzljWGJ2UXhyVlk2RGdpa0NLQXNJaGtlRWh3d3hKN3pwYU1DM095WFJJVE1BZjgzZzFja3FVRTE3RmtqQ1g5NHhIQlBnaXVTWUp6YkVSdVI5LzRQb2xyemIzM1lqTzdSZVR2S1psYUttRmRqL204c0JtN0pMaW03ZlNaU0Y3QnZDYUZSRGgzbVJDaTlScjdjcng5RjF5UGdqRytRVEVXSUJueDl6bzh4MUpqanRKbnlIbUhhLzUyTXp0LzBKYVdjU2ZKby9sR0ZQdTJSZ0txNnl3b21PMHhwcFBndXNNTjJWakZsTndhV2Z2ZkpFVDdqWWZVYm50R2dHZll1ODJNdWNPd01QZHlYZmM5YjhuVDdpMG03aW1lenAxM3orT1VDSzVwUzRuaytvTXUyVXd2TWZtdVNJbHphL2RKdUxVQUFDQUFTVVJCVkVSaHdyMzhnNFZ1NUZ5Q3IxeWZQTmFjVkJLYWNEMXBxN2lWWTZaK2M2SDBOU2JiUmlKOFpPT1ljbGZ1cFlWdWs5K3FOcGFJa1kzbys4SDRXMnMxcFBOeFN0ZmNrT1Q0eENFaDZjVWp4NThyNm8wbForTGVKY2tsYTlwSU11YVhONWpaTGJlZ3Y1U1NXM2UrUkYyckt4MDdjZERZOHkwMi85QkxjSjBTK3IvS3JlZExKVFA2NDZHdDd4dVN4UGp5K2FrK1VldzlVSk44cmVhaVNIQmRRMHZiaW9BSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJYklTQUJOY2J3YTZEaW9BSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpRUFYQWhKY254WmpUSFNVQzhUSlhRUUNHaEJZZjJBSWNIaVBtWDNJekw1aFpqL3BjdVVPVlRJR1l5TEM5RXNZTUpBTGNHYy94TnVTVzNlK09CWFZTWEI5Q0pZRWRQa2JKM2F2OFB2OVpzWDlOclhwNzVnWjE0Ri8rMld0NDh3Tk1xSE5wY0V1S1JhNW9LZ3Bma3YvdlZiS043WW45dHY2YnhlWStQSEdSaE9NZGxTd2I0M2dPaFlnU0VESFY4eU1RUHl3dkd0NG4zSnRmdGpZM3ByZFNnVFhLZkVBeHlIUUd5RklhN21FbVhHK2lDajlRbUFPQXNuWERBRi8xd3YraHZ6NjltYVdDcUJwYlV2cGZnUXR2OElUY0pUdXR3M2JTWERkZGhWYXVQV1NPK1lFT2s5M3Y4RVdZZUZJUW9McnRudENleTFMZ1BIN21XWWU0cHBtZGx5a2pqc3VtQ1FCZVE2L3FiRE1QU2JKSFFqR3A0K2FLeHBmekx4cGd0MlhFSVNsV2lqQjlTRXlzZVJtVThIVHRiK0xYQUE1NndNSnpIK09FMEJQM1ZVUGQwbFpwbjZmVS9Ydzk3VUYxeHlUODZWZi9Ud25mUEhieWJNSHdmZnJTaHJ2YmRPckQxUjUyT2JOOTBGd25SSjBJWS83OHhualNnUVJ5UERDZGJQY003RjNiUE5GS05oeHJ1Q2FmZ1cvL1Y4VkhLdDFrNXcwaWQ4VHp4YWVaNXN1QjFWd2ZWRXpPem1SL0FMNTQ1V0haQVVJUnpkWmRxR05tK1NqWTRzQXN1Q25ETjhma2VDRUJiazE0bUdTZy9tbFJIRE45cWNiM2hNUEdoS0xQVDVTTis4UDVpbVI4YzZaZjZtOWdrc0pydWNLcXVmdUQ0ZFlmN0ZsN28yNlNxL3h5Qi94RXZQTmw0dGNrTnozaUZUeXVTbVpHdCtqWHhvNTFtUE43QkVkNzZrbHhxK3BQa09QNzFvZ2dTbkpWRjdwNWpkL05QRWpTYlduSlZIRnZndXVZNyt4enc1emJVOGF2a2Y5cjhidktoYzBzM2U2YjZyaHBYcnFNT1k0dXZCK3ZwWDdUWVJqakpxeHk2YVR5a2h3WGZ0RzI1N3RMK1BtT002VGFCTGpYTlllL1hSN21xeVdiQ0VCNWhkNDk3QitMVmJvVDVLUVphbVNTaHc5SHUvK3c1em1reXNQM2xNOG5UdDB6K09VQ3E1cFQrNjlNYmEzNWowMGhYZFhwTVM1TmFJMUF0WXBIdUhmVXdMVmNidmJ1Y1F5cGZVaVZFVTZIMXR6NDljVlczUEtPSkkrNlNjbkRwYWFyL0cvVzV6RnpONGFHV2ZNa1lYdnlyMVVlcTNtYkpkS3hFaWRmei84bjBmTnFYekQrNWFzK2VOM3d6Z3NObWN4TlNhZE9qM3FSaXdmU3F6SEpKZklyM252K2YzM09lTDJxZmFVL0oyMjhPMmR4Q1RoZXMrUy9UZTVUYzN6TmJ6dlU0bEhld211NFJJVCtrL05uWk5FakxWOTF3ckEwaCtLM2JQMFpWanp4N2Nydjh4NVh1YXVxUVRYbTd6amRXd1JFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVJRWlBaEpjRjJIU1JpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlLd2xRUWt1RDd0WllrRjZhWVdtNDU3ZnNjSnJEL21nZ00rWldiZkxwQnM5Ym9oem1abXRQdGlRWVYrd0FEbmdHVHpUb21EU203ZDYycTAxeVBCOVNGMkV0RGw3NlBVdmRKKzkyM2ZuajFFQUNYQkxya3ozeGI1V094Njl4UmMxd1NKeEhqRjJsY2p1TTRGMW9YSEl4Z0lJVGJTNXpYS2xPQ2E0QklDbWdqcURndDlBUVNpOUFkYUN0OWZIejBJRlI0VzdJeFVpbURDVTV5MDVsbkIzemNaTUlYSTRkOEc4Y2JGVzA1NEMvWnBsY1hFbWo3MytVT2RLWm5JRnFBNlRSTmF1UFY2dnZLc1Fid1RCdWYxK2gxSWNMMXRkNXZhQTRHY25PQWdFaXJ0eDJoODBmZnVXRUlRbG1yaFdvSnI1a3dJK0w1U3BDRm5NTE96Ui80N0NjeGFrb293RDRmVXdTOElYcW1QZi91RkFPZXh2L2M0TTN0SThQZVc5L0JZUmV4M2tmcE5JYnNqc1ExUzU2bUNmSTFBN3pjV1NyeW02c3M5KythY2Y4bHgyZWJDWnZieW9aK0w3R2tzcmRLOVhuMmcwcmJQM1c3WEJkY3BTUStDRmhJRmtaQ3dwZnlobWIxNXVNY3ZIK3c4ZHd6WTBoYjJLUkZja3pTSjN6RkpsQzdyL21FZW1lY0FZdU1ibXRtUFd4c3dzUjlqMndjNjRYMXNVOTRwVCt6NHZKaHpHZ2RWY0owU0RjRVNZUzMzeC9GendIYllkeGZhMk9FMFZZVUlOQkU0cXhPaVhqZXlkKzY3WDQzOE9KZW9nTVAyVEd4U0FtRXB3ZlU1M2JkZWhIWis0UnZ3endvYWxrb2FXcm8vaDRpTkZWcjd2RFhYbUg0TjM1UlRZbE5FeTNlT0pIQkdyazZ5d3h0SCtFekoxT0I5MGlCdk9pelk5N3ZEZno5eUVMUFR0K3BSbGhpL0xpMjRwdjkwRHZkdG9VUWVuMnBQeTcyejc0THIxTHhhaXd5Yys1UG5JMG1nWXVzdkdPTmZ6Y3crWDNnajU1NjE5TVdRd3VjU3Z6S3Z3ZndCd3NwTjlic2x1QzY4MklXYmtYRGdwbWIyajJZMkpib3ZyREs2R1hMU041aForUDRiTnlhNTAxMW5KSWlhMHpidHUzc0VtRDhrQVhTc3pCV05UdEU0bjF0RHdOcURzRENIZXcwM0J6SlZqLy8zbnVMcDNIRjdIcWRHY0UyYmtCK2ZNSWlUTDVScFlDL0o5YTVJaWFmVzBVNzFjMnZ1TVgvYlZQK1liVWowaW9qNk14V1ZwMFNwVlBGQzE3K25yeG03WjByWEk2VlkrZExYUzd2ZlpwaThsM1UyOTZrNEgzL1RYYm1YR2srdmFyZnJSeVRMVkZBcUthODYyTW9ibDZ5NStiT2h6MzJpbVRIL0haWjdldC9YV3BxZVNtUXpQZ05TNjdVUkZKTUlzK1g3WVVzN3gzMUlVRVl5aHlmTXFXU0QrNVorOHgrYmlMejlrVzcrK2lnemUzV2s3VDBGMXpHaFA4OVE1dVBDcEhKK1UySjlvMVR5NHRUNnlhV1NoRWh3dmNFYlhvY1dBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRW9JeURCZFJrbmJTVUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQzIwaGdhbUgrTnJaNXlUYWxGdW4vczVuZDFnVTN2OGRKVUQ0OUJPZDhid2plL3RXU0RTcW9tem5hRjBTQ0o3ODVCS0pjMlFtU0NENG1DQzVXV05SK2k0bkZ0Z1hOMENZekNVaHdmUWhnS29EcnB5NXdaeWJxWCsrZWtnMmt4R0t0eDB3ZHB5V3dmR3lEQk5kbFY2TWsyQ1ZYMDdiSXgvWmRjSjBMckF1dkQwSy9ZMVlVWDAwSnJxL2pKRStoWEpkMkU3QjBYTm10R3QwcUZTejFkQmNZVEtCTUtsQ1hkejVTUVNRMmF4Vmszb2ovQ09KS0ZZUU9pT0EyMVc4NmZBaHF1bFNtZlVjUGdXLzA5M3FVdWM4ZjJoQ3JnK3YrV2pORGpGTmJFSFBleE16OGIvdHo2aHVQLzM0bkJLMXBUNC9uSzVJWGdoVmpRdlczT0FIbmY5YzBLckt0Qk5jekFXcjNSUWhJY0gxYXJLWEJyaHBmOUwwZGx4Q0VwVnE0bHVCNlcrZkcvTVEvc2ZmU1E4Mk13T2FXVWlPNC9uTW5yb3YxZS8xanY5Zk5uWDJwcFVHWmZWTFB2am5qNnBvbUl1NURNRTUvY1k3UXBVY2ZxS2JkYzdmZFpjRjFLbUVRVE9ZSWxhbVgzMlhzZHpkWG1ORjZ2V0xqQmhLK2ZNUUp5bUtDZnY5WTNOT01FNWh6VzZMa25oL1BIY1kyOTFwNTdKbzd4NE1xdUU1OVd4aForZk1RUzl3akpYWHVRaHRMemtQYmlFQnZBc2gxRVBpRWdtQ09NNVhVdGtaK1RIMzBoeENRM1NWeEVyVGpiaDIvMytSWUxTVzRqc21LZWwremx2cGErN3dsMTVqbksvUFl6M09pM3JCOWZDOTdzSms5SmZHK1RpV2ZLeFg3amtLcThMZzk1N2VYR0w4dUxiaXV2VTlJWlBJK013dUZuaTMzenI0THJsUGlWUkplSWZDdExibStic3Y0SURmbm5aTU1UOG10MStwM1MzQmRld2VsdC9lRnMxOTE2NERlc2NEM1VjbXQrMTB6MVhRcUFmb0dmTWRNbFpabll5bmJWTCtDL1Qvb0JKUS9LSzNNYmRkVFBKMDdkTS9qMUFxdWFWZUo1SnAxRHlUOW5qTi90RXRTNHR6OXRKU3MvZVpEY2pyZTk3RTQvZFp2MzZ3WmlhMVpZYjNyMVYwaUg1SWM4TC85VWlQeGppWG05S1d2c1RiTVRhaTJTL2RTNVdPbmFuUFdXcjNJSlVJSmQ5eVVaTG5xQkNZMm5scHprMHU0OU85bWRnTzNycnVsVGFudkM2RTRQUGFzWUc3KzJrN3MzbkxzbG4wWUR4eWJTTHd6MXNmdjdxMkQzUDRyTFFmb3NNL3ZteG5qSis3YldQbTRtZDFvR0pkOXJmQlk0LzNCbXFGYkR0OTlZbXVEZWdxdVV3a1lwK1RUOTRpSTFzZG5NQW0rL0JMclI3VW02U2pCS01GMUNTVnRJd0lpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlzRkVDRWx4dkZMOE9MZ0lpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSTdUZURNWnZhcVlWSHZ0U0puOGZWQkhITlZNenRscDg5d25jYW5Bb1VJS3I5YVJqaEpRQno3ZmpUUlRCWURuOGZNM3JoRnNwRjFpSzUvRkFtdUR6RmZJemc4dFVnN0pibHZ2U09XRUVKSmNGMTJOYWFDWGFacTJSYjUyTFlMcnBFRzg1N3dDMkk3M3VHbEpSVlk1KzlmSzVKRDVvQ3M0SVZPUXQwaWU4NEpybk9pZ2JuUEViNjlJZzI1YndDUVFLZ2p6UXkrRkxaRExJTVF6QytJUjY0L0pMazRvZlFDek5qdWRHWjJiek43c2tzY01GVVYxNFB0NXdTL1RoMGovRHVCYlk4MnN3Y2tkdVRlUUY1QjhCOUJYVDNLM09jUGJlaFJoMzh1dmV1YncybnU4L1gvTVRNa2E0aVR3dEx6L3BmZ2VzNVYxcjVMRVpEZytyUms1d3F1ZlhudzNHdTJ5K09MMm5OZlFoQ1dhb01FMTJaUE1MUFUvWFU3TTN0eDdRVjAyOWNJcnVsM1BuQVFHOUtXVkhta21UMHhFVVRlMk1UZjdMWnB3VFVOZ2NFMWhyNHNBZWNFMnJlVXVYMmdsbVBPMldlSitZeGNlM3JJME1iNlU2STV4SCtNbFg3WUNPWUtab1pRNWcrQy9kOWxaclMvdGQ2UzVuQk01dEZKMm9PRWpFUXZqTWNSR2lLd2FDMHg4U0ZpbzFzNThjS1BXaXMyc3hRdnFseExzbGZUL0lNcXVJWlJUa0lXaWx0cW1QYmNkaGZhMlBOOFZaY0k1QWpRTCtHOTgxSXpPMk5rd3ltNU5idVV5SS9EcXFjazExOHdzOXNNUWlKRVVrdVdwUVRYQ0tpUVBXMWJYRXlMcExqa0dqTy9Sai83TVltTFJiK1gvZ0N5cUZqNVE1Zk04UEtSUHo1MlNMNzhpSUs1MWxTU1IrWm91WmRJcURpM0xERitYZU1iWnMxNXAzN1BMZmZPUGd1dWM4bFdXK2FIY2pMUU9lT0RYQithZXBHM2tlUjhMSXdSa05RZmxiaHBjbUxzbXZ1c1pOc2VZN3JVT0pTKzRPc1RqVmhDekJaN2RyVDhwa3E0aGR1azdxMW51b1JMYzhaby9yRjRCcjlwbUZlNlVLS1J4enRoNXBMajNCWSsybWU3Q2FTU000K3QvcUpiRzlnN09WNnFUekVldDBiVzZ4UHVLWjdPWGJtZXgya1JYTk8yM1B0bmJQdmN1Wnhka2hLbitrUWpDOVlkUEtuano1R3gxbXVHZFNEWFM5U0pYUHpaRGNkTEpmRVpoYW5mRzBTOEp3L3JhczdxMVYwclUwMk5vNUMrUHN6TVhoQ1I3bjU1V010eTVjbzFSZjdwNzlLOTFIRFppbmU1aEpNb2gzUFZjd1hpeFExWWVNT3A5UzM4THVnZmhZWHpwMi9NbXVuV3d0ejdTWkgxMXFFNFBIVU5FTWVucE11dGJVcnRkOTdoV3dGSm9pNVhVUEhVT0wrZ2lxWk5tRGRnRHVzQ2liMVpEOGozVG4rY00zVWd4Z0RNR1J5VGtZbjNGRnpUbmxqQ3BLbjFnVmNaa2dpUXFNWVhlLy9ZeFVSOExEakpXUDJ0U1RxbStQSDMxRGlLT1oxbmxGU3c4amJ3Q2NlOWE0M1JWajVWSFU0RVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkdBa3NHMEwrWFJsUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFZG9OQVRrN0hHZlFPQ05nTkttMnRST1Q1YmpNajRLMjBmR29RVzk5MFdDRDgrY3dPbzNUMHY4M3NPVzd4NnVjS2dwSkwyNkR0RGhHUTRQb1FpeldDdzNkWlFDZkJkZG1UWXlyWVphcVdiWkdQYmJ2Z2VvcGp5ZC9QNzk1aDUwcHNqRXlKWUw0UGxGVG10dkd2UCs4d2dob1E0bjdhekg1VldFOUtjSDJuaElDYWFwRlFFOFNIYUtDMUlDbERIQklLYW1KQlVGZDBnVlduRHc0MkZVVFQyalovUHdJZENXUzllYUl5K2hkYzI5OEovdjRmVG83U0tnYXNhZnZWQndINzh6T0JVaVQ2UUg3WFc3d3o5L25ET2Zhb3cyZlZ1NzZhNnhCdU8rZjVPaVhZSkhpUC9tdUwxRDVzcHdUWGM2Nnk5bDJLZ0FUWHB5VXJ3ZlVoSG1zR2NDNGhDRXY5WmlTNFBsVXFIUnNqRTZSL1hUTjdXK01EcDBad3pTR1FiTHpDekc0Y0hBK1I0VjBHK1RQOXo2WEtOZ2l1ZTV4YjdINW1ySEt6R2RMc0h1MUsxWUUwbVNRd1J3UWJMUFc4NlNGRG82a0lIUkFpTUJhSmxlOE1nZnYvNU1ZSlNGeEtTMG95MWl2QkN2TlV5RWd1Wm1hSW1TN2paTmFjeDlsTEc5bXdIYktaaDNyNytja29HUzh4L2tYQVVKc01LQ2Y4cTAxZzFYQmFUYnNjWk1IMU9kM2N3bUVKY2ozSFdVMFhaeERXN0VJYlc4OU4rNGxBRFFINlpJOGJraW9jbmRpSk1SSVNKWkxXNWtxTDRKcjZPRDZKK2U2UnFKejNJdStWcHk2VStJVERMaVc0NXB5ZVZYTXhWdHEydGUrVnU4WjhUODdONnlKUXVzWFFEMGpKSjVtZlF3aE1QeUlzMzNDSmwzUGZuc2Q5cUlmRWhJanZ3c0szNk91WUdmSzdPV1dKOGVzYTN6QnJ6bG1DNnpKYVozSXlYd1JqWWNuSmsyTzFMNTJBTVpXd2g3YndmWVZ2TXA4Wm5sbDhVenN1a1VpZWJkZnVkL2NZMHgxMHdiVS9Ib3ZkZTBnSmIrdm1nbXJIYUg1OWtsdVhQVGUwVlQyQlZISm12NmJlejZhcDM4MmNwRTA5eGRNNW1qMlAweXE0cG4yNTk4L1lmdnJMOTJuOERydExVbUxlOVNTV3BFOGNLeTNyVjNMM0FHSlg1bUZqaFhjL1NkQy9WZitUL1BYNExTWE9SZzc4RTllWDhLdG1QUTFyTEhqbmxKVFVlbFYrNnlRWloyektmS2RmWHVXU0tDRFRiaW03ZEMrMW5GL3BQbzhhNW14SlBCcVc5N3YxVmJ1ZXBDSzN2dVZuQ1FFMUxPYk9ZL0w3WjQwMDgrSitpWDBIUUZyTWIvZld3Ylk5Sk50VDk4RlU4alBtaDM0d2pQMzVqWVpseVlTMS9ySDR4dlFQWnZZM21aTmhqb2w1Skw2VjFSYm1zaitiK1hiUlczRE5PSXpubDErK1AvVE5HV015UG9zVkVwU1NlRFc4RHJ4emZRbjdXVnpTdFZCVUhuNi9xV1dVMno0MTl1cDVqS1hyYXAwelc3cGRxbDhFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSS0FUQVFtdU80RlVOU0lnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSndnQWljenN3ZWxBaCtCY09QWEJBMm9wNVNFZVVCd3ZkYnA4bzg3UXNpaTZ0VFRGZ2dlN2NoOElSRnRya1NDMzc1b2xzSVh4S2NmSkN2U2UyNVMzQjlpTmdhd2VIN0pyanV2V0E3eFdldDR5QkhRT1EycDdUSVhNOWhaajkyZ1JQYkloOTdtcGtkRllCWVExNDhoMzN0dmdRSUljc2o2VUtzM0xOQkxuSURKeXNJNjZzUkZhUUUxNjl6N1EzRnpSd0xlUXVDbWRiQThsUVFia3FhbGd1dWJPRldjdTNvY3lEeGZvbVpuUzJ4dzdNZGgyczZWcUdzRy9rdzRwSi9hUXhVbW1ybkh3NGJFTkIzNzh5R0JMWVJ1RG5WRjVvNlZ1enZMYytmc0o0ZWRmaDE5cTZ2aGN1NHp4ekJkUzY0bW1CaTdybVB6R21jdDY4RTE1MUFxcHF1QkhpL0lVSnRMUVNTMHE4SUV5TWdyVHFodGRLQy9aQ05JcVlLQzhkTUNiTUtxdjExc0N1QnIxTjFhSHhSUXJOOG15VUVZYW1qUzNCOTZyam84azRnalpCaUxGTkIwMU5YdEZad1RYMmhzUGFaVG16SEhONlNaWjhGMTB0eVc2cnUzdk1DdVQ1aXk5aVhzUXJqakpTbzErZHl2Sms5eHN5UWZ1VG1uM095Sk1RK0NCcGFoU3dwSWVGUzF5K3M5LzVtOW1UM0gxT3lTa1E0eUl1K1Z0Z29uaFhJYXk0ZTJiNlhyTEt3S1ZXYkhXVEJOYUJTVXB3UklzL2lKODZZN3dndkJ1ODAzdlBjS3o4dHZGSzcwTWJDVTlGbUl0QkVnSEVWODFtaDdHYXNEQUVaYzUvdkxhaTlWWEJOMWN4SEloK0tpYlRHUTVOTURoa1VjclRlWlNuQk5mUHdvWFNKNTFQcDNDRnp4YnhMd2psamttc2czeW9wZkpkQmF1U1gxcjVYNmhwejdXNmY2U3U5ME0ycDVwN05WekN6dDdqa0hPRjUxWDdiUWJMNlRzY3VySXUyM0wxUm9PaS92NDRKS2k1TmxwVzZabXZNTVpUY0wrTTJxV3RkZXkyb0wxVlhTNys4NWh6VzJEWWxGbXU1SDI1bFppODFzMWdjM2R6eHdjZ2lOdzlPbTNrR2syd3FOZTRoQ1NzSkQ3NjVCbHgzREFtdTU4UG0rY3EzdHd0TVZNVzdnWGRXeTN6TVJZZStCQWwxVTBtaEdDY2phZHgxS2ViOHE2RWFXZ21ra2pQNzlTSG41eHR0NlZndzFSYkdsY3dCOFR4TUZSSWhjNnlXZVp1ZTR1a2N6NTdIbVNPNDVyM0d1NFBuVUd3ZHhIZ09EeGtTZGY5ancxck9YWk1TODAyTFoyS0tSYTg1cmx6Zkd1WXRmVHIvZmt2ZEUvdzI2Rk9FWXlCK1U4d0RsaFlFdnk5emduUi9uNjhNVW03V3EvQTNFbzM0QmFFM0F2SFdzbXYzVXV0NTV2YkxKWUxqbWg2N3hFRlhyak8xdm9WNWp3Y25rcnd3TDRJUS9sTXoycHJxaDlOLzRoa1ppcGl2NnBLUGhOL2VhUU5yVjc0OW95MnBYWC9mdmYvdWtOaGduQjlpVHVaNWtUV0g3TGJrdkExeEFadzczeEJUL1ZyNnNTU3VaMjY0ZFgzZEZOcmVnbXY2MFNlYjJWbURBOS9FekZoSEdDdXBSRXVodUJwSk5vbEdlYWFPNVJmdWZpNlo1NXRpRWZ1N0JOY3QxTFNQQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWpBcWdRa3VGNFZ0dzRtQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBanRQb0NUNGVUeEpGcndUb0VmUTl0emdscDBITjNFQzEzY3l6Nms1V3dSZ0JEQ0hDNjVqMWNmRWZpeCt2dm9RNE14aTZKWkMrMjd1NUxYakltWVdUU01FZlhkTGhYdXlqd1RYaHk3a0dzSGhFbHpuZnpnSFRYRE5jd21wQThGZHlMQys0U1E3cVFDRVRUOTI5a0VtNERQTUJlb1RKSVNJOCtlVjBBbUVJVGpXTDdXaWd0aHorUU5PNmh3TC9QNFBKKzhzbFg2RnA4UjkrTUNFM0oxK0VPZUVHRG9zcVlDcEhzRmI0YkVJbEVJSVFqQmlyQ0RpdnA4TG1Cc0ZjUVQ1a0ZnakpscjRncE9VRUtqVEkyaUpRR1lDOWg3clpEdXhOc0tRUUdhdTcxSkpWSHJJcEh2VTRaOS83L29xZjVLbjJieEZjTTN2ZzJjQndhNk1KV0xsQVVPQTdKUG1OQ3pZVjRMcmpqQlYxZFlRU01sOFdvVlpwU2MyUjFKY2VvemNkaHBmOUtCNHFJNDFCZGVYR1lLLy96clMvR2NNeVZFK09uRmFxZXUraTMzcFdOLzJnMloyWFRQN1FlUGxiUkZjY3lqRUh2L3MrbHk5K25CVHB5REI5UlNoZGYrKzFEdWpod3h0SkVIZjhaSnViTVY4NlZSQlBQbFBab2JZNVh2QnhzaXRjeElJa2srRSswd2R6Lzk3NnQxY1U4ZlV0c3lwazZnUWtUZGpXc1poek8vU2JuOU1sQnViSTV4Z0hFVnlxbFlaT0FscHJ1ZmFNTlhtVGZ6OW9BdXV6emVJWVJBaG5qc0JQemJlYjdsTy9ENnZZV2JQY2RMMEc1dlpUd29yMm9VMkZwNktOaE9CS2dLSWdlN29FZ0NtNWtSSVRNdnY2VE9GTmM4UlhITUlmc3YzY3NuK2N2STd2dThpeHkvNUhsblk5S2lBTnlkOWkvVXh3aVNJcWU4aE5lSzFXQjIxODlHeHRyYjJ2VnFTYUR6YzlaOWljOURqOWNrbC9tZ1ZlT1ZFakhNVExDd3hmbDFqanFIMDk4QjJxV1NmTFRMRWZSWmN4NFJoOEdNdHloSHV1MkFKOTV5RWN1NDNJdi80UEdkNTlqTkd5VDFuWTIzZWhOeWFkdlFZMDZXZXg3bmt0YWw5V240REk4L0htUmtDVjcrMFBvOUw3aXQvR3hJVS9rTkVPQnJXd3pmQTJ6cWhZdW4zTmNtdGE2K0d0bThoZ0pnUjJYOU9PazI5YzhXYXpLZVFET05hbVViTy9WYmVVenlkWTluek9ITUUxMk0vUDdWZXdUK0hsajdhcmttSkdYc3hkMEhpbmxSaGp2NFdCVWxZVS90UFBaZjVuY3lkZTB6MWdVNXlqVUlHUEJiZUp6ZDBZdSthMy84OUlnbnJHUXVONjFQOXV1WW03a3oxT2NaanpIbi9oK2U4MWoxYnczcmNsbVFVSkZ3Snk5Zk5qUFZEcDdSVXVtWDd4TVltekMyY09MeERicFJvNjl6MUltR1MxL0V3aUlaWlMwZy9PeXc4SzFqRHdyTWdMRTkxNjZGTCsycFRsMkNjVitYOWQ1N0V4dUZ6aWZieHpDYlJaNndnUTJjZGVVdmlsRmg5RjNQdlp4TDNwc3JiM2JPMWRXM2RGS2Z4NzcwRjF5bFpkUzR4QU5lTXRZdjAyLzN5SnBjWVlFeUlGa3ZzeVBjY3ZxY3NsWGhHZ3V2U08wbmJpWUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUliSXpBbEN4bFl3M1RnVVZBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCTGFPd0ZrSFNjSnpuZUM0cG5FSUZBaUNRYXI0MVpvZHQzRGJNd3lpeDB1WjJVM003TkpENE9TZEIySFR0MmUyazBYQkxGd2ZoZEd4NmdnZUlJam81WVVTU1lMblhoc0pDQW9YMk5ZMFBTZnY1QnJmY2hEUXZLcW13ajNhVm9MclF4ZHpqZUJ3Q2E3elA1NkRKTGptdmNUN2hXQ1RIN3RnbjQ5SmNEMzc2Y3E3am9BYVJORHZ6RWhNU0hqd3NveXdGdG40MVp5TXE2WlJCSjRUZ082WFdsRkI3TG44SWhjc2p1RE1GOHIwZUljZDdvS3h6aGkwbS9mM05aMk1MTVlnRnpCMWd1dHpsY3FpVW93UjZmQ081cmVDNURwV0NCSytsVHVIOE8vKzd5eTJMKzM4V3lkWnE3bk80N2FJclcvamdpUlQ3V05icFBYSWQ1WU9sT29oays1Umg4K3lkMzB0MTJuY3AxWnd6ZjEzNytIZWUzSkc1b0VNbjN1MHB6QkpndXM1VjFuN2Jpc0JnbS9mNm1Sa2ZodDdCbnpIemwyQzYzSng0OVM5czFZL1BkZU9KUVJoVStmZDh2Y2xCZGZNNmZ5Sm1iMnhjSDZGdnNxRFhGSXlwQlExaFhtVUYwUkVHZ1N3TTUvVUdoamZLcmltUGNpMWxrb1VFbU1qd1hYTkhiUDh0a3RKdlhySTBHSm56NzJPMklJa1Bmd1dwd3BqUHVhZkVZU2V4YzIzSXBNUFN5OVpNOGZnM1h5NXFZWlYvSjIySWFNKzJjMDU1eVNWWTdYTUF6UE9SWTZTSys5MU1vWXZSVFppYlBwME03dGJnaGZpa2ZkVW5NZmFteDUwd1RXOHVXK2VPUUgrTldaMm40Wng5U2llUnlaUHNnUktTOUtKWFdqajJ2ZXVqcmZmQkJEM1BjM01icFk1elJhUjZWekI5ZGdjbnUwa1B3am5NLzNta2xqaC9zTzdqcm1iSG4zSVdOdm5DcTZad3lZQjc3bThoalBIUkxMZjB2NzdMZ3V1bVg5bWJ2WDFFK01MbnVXUE5yT0hSZTVIeGlYVXdUZm8ybklPTjZkODhjaU9VM1BqVThkYVl2eTZ4amZNcWZQeS81NmFjMm1aNjlsbndYVk12QWhINUdxczJTaEp0STdnbmQ4SjBzQ3c4STJJWjNYUHhMa3RrbXZHRnZ3V2tVZXVYV0wzSXQrTmVQNlhqRWxvTDJNS0VqYWNMV2o4bW9KcnJ2TmJ6SXh2ZG41WmFpeWN1azRsNjMvWWwzYVIrSFZLU2tnU09lN1BsQXp4WDRjKy9sMFhGT2l0ZlQvcWVKc2xjRUczUG9CMzVsVHg1MkZLNWptNWgzbkhNVGFjU2dBd1YzVGFVenlkNDlEek9ITUYxK096T0RXL001NEg3NzM3dW5tZ2t1dkdmbXZKZ25zZUp5Vzc5YTluYVZJNGY1K1NKRVpMenoyeU5vcUNzSFVzWHphekt3OXplMGlTYThvbG5QajNEN3lkZmpsYzh3OUYzcWN0YzBGaFczcGU0OXg1cm5XY0d0WnN5eHczODNPSWI4UEMycXZiRDJNMitPOTZTYTF2WVUwU2E0dkNCQWYwNjBuZzJDb0R6a250K1I1MzkweWZsdkhCMjh6czlBSDBubU9Fa3ZraDJzbTZtbkJzdzdpQytSdEUzTEgxVkR6SEdPZnpmYUIxdmMxRmhybWhmelF6K3UycHd2aWVid2ZNRy9TWUg1cTZ4M3NMcmprZWMzVDB2ZjB5bFpBNFhMOUluQUJ6YWFOWVBQWHQvKytIZ3lDK1hxcEljTDBVV2RVckFpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlMUWpZQUUxOTFRcWlJUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSMkdzQ0NJQllvSHJZekxOOG53dUdmdjlLaTExbk50ZDhvVFVCa242QXFZR1FrZ0FBSUFCSlJFRlVicTFzTTJ3TGk0NFJlTEk0T1ZmK3k4eXVQeXprL2tURnlSQTRTR0RCeFlKOS9zVkpMQ3FxK3MybVZ6U3preUlMdXNjTkNKSmcwZmNwTFpYditENFNYQis2Z0dzRWgwdHduZi9CckNYT1N4Mm5KZkErUEtNU21TdUNDb0lteDJCZWdpbVFLUk5vbFF0VzJ2VGpwa2ZRVjY5eklNaUgzeXk4ZWNiRGp3QTI1RmdVbnV0SEpNUkhWM0JCNG42Z1c2eGRUeDJDa0k2dWxQZkZucWsxb2dMYUVhdGpER0Fuc0p5RURPTzlRL0lPeE1tbFFmcmhlZWFDSTB2T1B5V2U0RGdFc2o2eGtwL2ZQdm9CQkVKeHpxbVNrNXlOKzVRRWFpSzZKdGlZL2twSk1DejNHUUsyZnhnQ2FNK2VhVjlMWU9tYzMwako4MmVxL2g1MStNZm9YZDlVKzFOL1J4UkVzRllvQWZHZnYvNitCT29SUkowTGhQdWNFNlFSZE51elNIRGRrNmJxMmdZQ3JPMWhMTWY3S2l3M0hJTE0zN3hnSXlXNGx1QjZ3ZHNyV2ZWU2dtdS8zL1lVRjRDY0MvajJoYThFczk5dkVEVWRXekdmbFpxYlFlTHk3QmxnV3dYWE13N1p2S3NFMTgzb0Z0bHhLYW5YVW9MckVRSmpCeEpiSVFWQVVEOVY2RnNpcElqSm1Ib2tPQnFQejd3eFkwdmV4U1hsTzBNU280OFAvZU1QRC90OHdDV3RvTi9xeTd0YjU1dExFaHZSUnNhOUNDL29WNHpQdjMxSWFpakI5YW4zRWVNMXBJSzV3bS9nT0plRTZOT1p1UkR1cWZNNnVRd1NtREE1Wjh2ODFpNjBzZVMzckcxRVlJcEE2VE01SlMrYXFyK1g0SnJqWEhSSTZ2dnFnbSsvaUtMdk5DUEIzWGhPdVhuUXFmTWUveDZLVXZuL1NmanJseThPU1NpdU5DVEorRlpocGRzbXVDYXhaRWxDWVpKS0l3RXJFWG16SGUrSm1FeHlTdmcxaFpIMklsZU54U1Z4TFhnM2tZQ2t0aHhrd1RWaWVSSUcxcFI5RlZ5bkVrZkI1dmxPNmp2RktaZk1oWDFMdnVOTUhTUDE5NUprQXV4TC80eTVnaEpaZDJ0YmN2c3QrVjExTGNGMWJseFRlcS8wWkV2Zmw4UUNmRGZMRlVUaXQzVml4ZGkzTmNtdGUxNFYxVlZLSU5kdmlOWEJzd3M1S0lteGVQZjdoV1FZck9zNDBzejQzeVZsN3JkN2p0RlRQSjFyYzgvajlCQmMwMWFlUDh6NzNDWFQ4TnI1c2JWa3diMlBVN3FtaGZrNHhLY3ZOVE9TdUlmUFk5NHhYT3ZidWVkNmJtMERiRmtIT3BXRXJPUzN3RFl4SVd0czMxWTVjbzBrdGNkYXNON1hPTVZ4cmVPVVhzZHh1OVRhVys0NTVwaVByNjF3UzdmUHJXOWhQcEwxMHF3am84d1Z3dWY2Z1BTemVQOThLc1BwZDRlRVdjOUtQRFBucm1YaGVZeFErYkV1R1V5c0djelgwMTlrWFUxT0hNM2FHOGJ1b1J4OHJKTjFWWTl3b3V1U01RWGNtQk9pYmJuRWJOVGZtalJ4enUyNWhPRDZMOXk0eTI4WHlZV3VrcG16SU5rait6Rkg4ODZJaEQxMnIvL0MzWGVzeFZ1cXBKN2RySm5sKzlPMkZUanlyY0V2UzMydjNMWnpWM3RFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkU0TUFTa09ENndGNTZuYmdJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlGQkZnb2UwRG5VQWt0OE9YbkdBa0ZoZ2IyNC9nZ0VjT3d1aFhiakJRTDlZdVJKMlhjM0pVaE5iSWoxS0ZCZGNFNHJBWXVxYkE5SzV1Z1RDUzY2bEM4QU1MaVY4M3RhSDM5L01Qc3NCM0R3dXdFUkg2Wlk1RWljWGxENWxvQTRGT0JNTWZ0Q0xCOWFFckxzRjEvdTQvM0pQcWpsc2lJVUQ2MzZ1c0piZ215SU5GL2tqYi9FSmdTSXVzd0s5akt0Z2xGaEJNd005MVhmRGtrb0hZYzY5VGl3Qm83akdSYnAxemVJOWMxaE5aWDNnSTJqL0xSTVVwYVcxcElDRFZwK3BJSFRwMS85WUduK2NFMXh5Yjkvc2J6UXpoRElFVVgydUVmR1lYeUJJTEl2cVB3cnI1WHNzOWpXUXNMTFhCcGVQK0JEY2h3RUFDbHl2MHhSQm81OFNPL3Y1VFFWTnNpMUFGOFJ6QmQ3RUFyRDhjN29zSHVVQXVYK1FXTzNlQ3VPQkNNTlphcFlkTXVrY2RwYzlFQXBUV0tPTnZ4ay8yTWg2WDUrOXRYREljdnkyNWZkaHVqdUJtNnB3bHVKNGlwTC92R29FTHVxREpVTlQ1VFRPN2NrUWEwZlA4SkxpVzRMcmtma0lreS91Z05XRkllSXdsQk5leGZodEpWSkJTOEZzS1MwcUF4VHdXY3lzRVBVK1ZhdzlpdmJjR29yZmEvbkhzR0JKY1Q1SHYvL2ZZczVBK05QTjFDSXUzclNDRUppRVVDWXY4c2xUQStOS0M2L0VjR0w4eHIvS2t5TG1WWEFQR1YvZDFzb2lTcER3bGRUNHZrRjhnai9pOG0rZEJZazBDb0MrNFowWjR6Tmk0b1ZWd1BiYVZ1V1lrUm5lWWFMd3ZLczJKcStZbVhTcGgyR01iQ2E1UHBaaEx3SlhpakhpZGQ5bzROOGx2N0t3VGlhaW9xM1YrYXhmYTJPT2VWQjBIbDBESjNCbDBIajZJNTU3UTJIL3VLYmltTGFYdkRyYmxPeVh6ZXA5dHZNUzlCZGNwOFMzaUlSTHIvYkt3bmRza3VNN0pmUDNUK2FEcmk1Yk1hK2ZtODVtZlkyNmI3L3l0aGJIVGM1d0VQVlpIcXhUc0lBaXVVeUxMbkJBNGRaMVN2NjlhNFh2cmZiRFVmcW5FVVJ5dlpOMURUbmhISGU5eTYwSit1TUFKbEg2bjRkQnJKL29NVDNmSjc2cHpCZGYwVHhHRi9zRDFXWDgrUE9QNS92WTk3eVQ0Ym9FOE1KVnNzK1JlV2VBVytIV1ZyQ2ZpRzJlWU1DWThIdU4xenNIL0hzYTZKUkliaHQvaXgzMUpMc0M2b3lYdTM2VjRxTjdkSUREMTdGenlMSml2Wlo1aTduM2RVenlkTzkrZXgra2x1S2E5dVRVTTQvblVyRU5ZU3hhOHhIRnFoZTN3UVhJOWppVllGeFZMb3BlNkwzclBwVjNmek42VVNDYmp0NEh2SEM5dS9IR1dyQWVGeHpYTTdPVEdZNHk3TFhHTlkwMWE2emcxT0hMSmpKbVh1MTZIWjE5TmU1YmNkbXE5REN4SUtNdGFKZGFsTTkvZlduSy9jY1RSSlhXbnZzUFRwcGIzMHBqNGpFUTZPU0UrZmRwYlZYeGpvdDQ3T2lFMzQvQlk0YnNWZ3YxL2NzK3ljQnZxb0g5NnpMQm03dklUMEdrZnliZmZFUkgvdDE2djB2MldFRnlueHN3azdVTGkzVkppNys3V2VmT2E0NmZXVnZaSVJGRFRqdEp0cDlad2x0YWo3VVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCSGFJZ0FUWE8zU3gxRlFSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJXSkVBaTFsdjdCYjVUZ1ZiSVRGa3NUdVNRb0xESHVvQ29rdWFPN1dvdHFTTzFtMDRSeGJESG1sbU56VXpnZ0lRd0pTVzJzV29OVXpETmlDTXZhYVpmYnV3Y1VobldWeE1vTVZZNWdZYnBDVE9mcE8yZFpGc0liYm16U1M0UG9SdW53VFhCQjYvejh6T0hkd1pTd21obW0vQVlNZTFCTmU5Mmh1ckovWU1Rd1IzSHpNakFPV3d4TUhISU9sdGtZODl6Y3lPQ3RwYSsrNm80Y3kxUCs4UWVISHBRYVIzSlNlOEpCQ241dDNtSHk4bTM2dVJXNDkxdmNITWJsa29VVTQ5UTJxRHowdUNJMGdDQVJ0a1l5MGxKVDJrcnRya0ZPY3dzeE9IeEI4eGVmRC9kc0ZzeU5HbUN2Sm9BcEVJYU04Vnp2a3VUa2cxVldmNDl6RVk2MWtUL1Qwa1dZaE5ubTFtLytWRWRNaDc2RzlORmNTUkJMU1ZDRnFtNnFyOSsxU3dYVWw5UGVyd2o5Tzd2cEp6OExmaE9VTGc3SVV5TzZidVU5NmxCSU1oWXZBTHlSMTRabiswdGpHRjIwdHdYUWhLbSswRWdkejc1bVhEZSt6MkZkS3VsaE9XNExxZjRIb2J4aGV0Z2pEV2x5RzdwSzkyQ1pjNGhZUXBQTi81YjhpRkNJaEdtTnFqOUJaYzArZWo3NExrSVN6SVpHOHc5RmRKWXVZWEVvRThLbkV5QkhVVDhKeEw3Sk9TRmZRUUZVaHczZU11cTZzajlpenNJU3V2YTBYNTFtdlBDNndsdVBZSlhNVE5RZk1lTEMwdk43TTd1MFJNcGZ0TWJUYytCeEdkZjh2TWZqYTFnL2YzSlFUWFZNL3pCK0hNQ3lOSjF2em1NVzVGaEU2U1I1SStodVc1VG1EUkszbEJCWnJxVFNXNFBvUnNLdEZRTmR6RURuUG10M2FoamIwNHFaNkRRNER2bzBncEh6dDhMMDFKaHFCQndsemtSY3dEdHBiZWdtdmFVU0pKOHR0N2dwdW5KNUZEVGRLSTNvSnJranFlRlBsZVVQdXRjcHNFMTh3UGMwNHBtU25Yb1Vab21rc3NVQ00xbkxwZitTNkIrSXNFekxGU0krUWU5MjhkditiYXVzWTN6Q2xXL3Q5SkxNMGFpN0QwRkZ4djg3aWxoQlg5V2hKSCtXc2UySzkwM1VOT2VGZno3YVdrcmVNMjNHY2s3dVM3Vm1seStIRmZ2dDNjMDcwbllnbEVhOXBScyswMkM2NHY2bVNhekV1MWxGKzQ5VUR2YmRtNTB6NGtrK0RiSGRjMlYrZ24zTllsY3liNUFOL0tZbU0xNmpqTzNXTWtXVklSZ1NVSU1MZUExQkk1WisyenJMVTlOWDJjcVdQMEZFL25qdFh6T0QwRjE3UzVKTUVVL1FUV2NaQVlQRmZXa2dVdmRad2JtZGtyek95TVV6Zk9qTDh2a1ZpUDVyQmU3ZDN1ZXFhYVIrSXkxbGpsdmxma1RpMldxRFBjbnU4bmZBUGlYVFduTEhXTnd6YXRkWndhRnJscnlYekNzVFdWYmZtMkpldGJlTTh3dDg1NmtkYjU1OXo2TmVZdCtJNzNrMEpXOU4wUlE4ZEt6VHc1ejV0bm1ObWZUQnlYSkpVUEhnVGZMWDA1dmplekhwRUVyTG55TnJmZDhXNXRGMnZFV0hPWmsyNVRIMnU5U0JUS2MzUE5NWWwvTGtzSXJzZmtTWDlrWnE4ZDVwSllaOEg4UzgwM0hiK05xZTl3YS95ZUpiZ3UvR0ZyTXhFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRZ2MwUmtPQjZjK3gxWkJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkhZUmdJRU1iTWcvVWxtZHBtSkJySzRHSUVpSWd3L2dKbmdiWUlGbjFDd1dOYy9CSXRwQ2Rpb0RZZ3U1WGdHTTd1VUMyQ2pmU3lTbmhPSVV5cHhZQjcycWk3d1o0b3A1d0xMMk54dHpXTHBlemg1azgvbTYyWjJ4QXhaWkM2WVpqek9EUWVCNVp0TEw4Z2ViU2ZCOWFHTHVVWndlR3FSZHVsdnN2VFdRMzdHOHkwc3RYS0UwdVAxMm01dGtWV3ZkdnYxdEFaU0k3WWlvSGRiNUdPeFo4UGMrNVIzTERKa1JCZThVd2dNSW1pSDRKZzU3N1RZZFF6RkIwaXpDVzdNQlZNakw0N0pOM2lIUExGQWVISjVKMTFHQ2pPV1VsR0JmdzRsZ3VzNTkyNU9Oa3E5QlBzZVhYQytmaHVRVmlBQ2psM0h6dzJCaTljeHN5OVBOSnIrd3dOZEh5eTE2WnhBS2I5T0F2TC8xb2thY3VJZTlpSG9pVDdtVk9IOENlTDY3TlNHQy82OUpOaHU2dkE5NnZDUDBidStxZmI3ZjBjZWdhUStKYWZ4dDAzZHA2SGttc1F0SkpmNWZFMURLcmVWNExvU21EYmZhZ0lwRVEvalJzWmZqS09YTEJKY2x3Yy9UMTJIYlJoZjVBUmh2SDlKbHNHOENjOS81TEc4Zytobm5tWHE1RnppZ3RjWGJGZXlTVS9COVZTL2JVemFGZ2JRMHg5Rk5FYWZMbGJvSzk5bVlNUTV4NlIrNXpPemQwVVNKbkc4bERpN2hBM2JTSEJkU3FyZmR0c3l4aXc5bzdYbkJUWWh1QjVaMEUrbHY4cHpxNlNNeVJiL2VVajZROUtWVFphbEJOZmpPVEZtNHpsMjc0YVQzRFZabWdUWHA3M0lKUFRpR2lMRlc2cVE1UFFmWnlSYTJZVTJMc1ZPOWU0WGdackV0b2cxa1ZaK2FTYUNKUVRYWTVOSVlzUHpnem5ha2tLQ0c3NlhNT2RkSWozcUxiaG1QaFVwa1Y5YTVwSzNSWEROMk9YRlpuYUxEUHludUNRZjlHbW1DakpZUkpFSWdtT0ZKRUNJbDJEV28rUkV3dFRQbkNDeXI2azU3ckV0SmQrbGU3U2JPamJ4M1E5aE0wSXR1SVdsUlhDZFNxcEYzY2ozSDFINXZhSVgyem4xNUg0VFgzU0pYa2t5a3lvSTdXQWMrMzdSVS9BK0hwOTVBRGpmYWM1SnUzMFIvZDIvNHZrNjk1Q3QzMlZManB1N24wdkViS09JN21JbEI0dHNVNU9FdC9FUVJidngvUTZCNkVzbWtoaFEyVWZjdkZ4S3hQcDg5L3d1ZVJjVU5VNGJpVUNHd0RXSE9SY1NodVdTYjh3RnlMd3NZMHptYWxvbHAyRWJlb3FuYytmWDh6aTlCZGUwdStRN2IwbkNoN1Zrd1VzZWgrOGUzTXVIemIxaEkvc3p4OGhhSmNaRnZVdXV6emdlaTBUVjlDbGJKYTBsRW0zV21OeW53OGt0ZVkzOTVxMTFuQm9rdHg3ZTd5K043TUI2WHRZVm4xSlQyWlp2dThiNmxwemNHaEg3a1c0TVdvcUtmdW1yM2JxczJENmxhOTZta2d1UTBBYlI5TnpuQlgxTEdQRGJuSnJEWWV4VHNwNFFzVFZqWSs3VFRmY3pseEJjdzR6cmpQUzhKbGxiNmg2SzNlZThVL2s5ZjdMMHhtdmNqc1RPakFsWXgrbVh4MGRpQmhvUDBYVzNKdzlNamdwcVpMN3FmbDJQb3NwRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFTMmlvQUUxMXQxT2RRWUVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRWRnWWdWRktUWURqQlFwYXdXSmJSRDRFTDZkS2pTemJyNE9BdlljNVVWZEpRSFRzK0J5YmhhNHNWcjZCQ3haRENOcWpzT2ozZzBQOXp4NWtmLzl2SnZDMzl2ekhCY3puU1VoMVdWZ0xjd0l1cHNyVFhGQ2J2OTNiaDJDNG13eml5NTlPN1p6NE96TFZrektCU3dRbUU5ejA3Y2I2ZDNrM0NhNFBYYjF0Rmx6em5DT2cvNGNUZ1Qxc2R5djNHNDhGamlLbVF6S3dyV1Z0a2RVU0hCN2lKRXlsZGZQOHZQdVFvT0VkTGdoaFcrUmpyWUpyRWpJUUpFcXc5Z1dIeEFHSHUzOFFGQkNrc0ZiNWdaTmZmTXlKSjE0eHlJdFN3ZFFrWVVDR3dmdWJmOEpTRWhqSlBnZ0hYaFhzM0pLZ1lVbkJOYzhJM3JOL2xiZ1F2RzhKSU9SWlUxUDRib3VnNUw2Sm5lWktydW16SVZiNGRFMmpDcmJsdWM4MWgwZEpVRlNzeWhjTyt6NTZTNEwyZWdUYjlhakQ1OVM3dm9MTCt1dE5rT2kvYmdpTW9tOWFXaENMM0hoNGozNG0ySUZBUGlTOEpMTGhYdmwrYVlXTjIwbHczUWhPdTIwZEFjUlBxZmZ2Vzh6c1ppc0VtRXB3blJaYzc5TDRnbjRHWTZFeE9jVVNOM3VMZ0N2VkRzUWJKN3MyKzl2VUpvdmhHdjJEazBMRmpvWFFEU2xEU3B3Q3R6dTZJT0ZVUDRlZ2RwTEVoZk5YTVNISkw5dzhGWExET1VXQzZ6bjAydmJkbGpGbWFldlhuaGZZaE9BYUlmKzlDaFB1cExpZE1Qd0I0Zno3QzZXY3BmeEx0MXRhY0UwN2VJNGh0WHhPNFp3Lys3U09hVXZQZTRudEpMaitiYXA4bTdpbEUxb2dPKzlWZWlhbTJvVTI5dUttZXZhVEFITzN6R2xOaVlRNCswZTY1SDg5QkVGTENxNXBLNGxlbU9mbGUvRlVVcnZ4eWlKQitrdVhIREYzdFdOdC85Q1FMT2ZERmJmSU00YkVhWHhIUnZSR2dsSWtZWDVoN3BORXpnaXRTc3UyQ0s3NVBzOVlQL1dkUGpYMmlKM25tZDA4ZXlyWndSTHZlNjRKY3EzVXZEbnRSUDdIMkpGck9GWDJYWENkU29vVUpoNmQ0alQrbmNSVWIzVUp2c045U3IvUGxCNXJqZTE0L2lBNzVma1pLM3hINHZlZkVyUlBKV3l0U1N5ZU8xLzZNeVIrcFowbDd3UG1IeDd1UkdUOEZxYktWMXpkcjV5eHhtUHFHUHc5TnFaN241TjFscTR0NGZzbHoyVVNydnRscnVDYWVrbG0wSks4WlJ2dmZlYm5tSS9LSlRQSVhUUEpyVXZ1YUczVG13QmpTcDVkZk1NdTdSK1d0b0huRzNMRHI1WHVVTGhkVC9GMDdwQTlqN09FNEpxMjV5U3c0N2xOUFMvWGtnVXZmWnlXc1U3dStyTis5T2x1ZnZKSGhmZG15MlovNFJJUnBmWmwvSFpzUzhWdW54S0pOdXROV1Rjd3R5eDlqY2YyclhXY1VoN2NlOHlwWFMreUEvY1ExN0NIY0xlMFBVdHZ0L1Q2bHNzTmEramVuRmpEUENlUnpkVGE2RG1TYThZQnJLdGl6TnhqYm1pOGhtUGl0V05tQ1B3WmMzQnVqTEY2SlpxWWU0OHRJYmllMjZady85aDdlMjdDZ2Q1dFZIMGlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlzREVDRWx4dkRMME9MQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSmJRUUJoSFlLamU3cWc1WkpHSVhWbVlYWHA0bnptSVM5cFp2OWtadGNwT1lEYmhvRG9CdytMYjEvV0VMQ0hISlJGdHplc09GNXFVeGJ1dnRQTUNLeDUyeUNIL05LRTlJU0FIa1JrU0pRT0t6aCt1SUNaUU9wWEoxaVZMTUpPU1d4WUlJMjRhVTVCMklsZ0xSUTdUUVc3ekRubUp2Ymxma1ZnL0FlRkJ6OVhJcEFMT2V4UEN1dEliUVpyRm0zSFpGcjhSbjQycy82YTNkOHpCSi9mWmVMM3VNMkNhK1RBQk9PZTJ6dnA4Qm9SdU1NNXBBcjMrbFhON0pNMTRGYmVkbTJSVmUvVFE3eUF4QUdwYzBsNTV2QTcrTHZnbmJRdDhyRVd3WFhxK3BXd2FOMkc0SFR1NlE4NHNSZENhOTUxUEw5S3BINitDSUJrRWljTzcwd0NmOEtTRXQvNjJ6M096QkNjKzZVbFFjTlNnbXNDejVCUTN5TUJ1MVJDbmJwV1UrSVI2cWR2OC9tSmkwMWZoRUM0dXcwQ0FnVHc5eC9FRm05WVNOckdzUzdzam9GQXUvYjdNeEliN3FHU1BsYnJQVjZ6WDQ5Z3UxZ2RCS2tob3YxNFRXUGN0cGR5QVkvY2YyT1pVMS9ZQk9yaS9lYVhYRkFnMnlFWE9iL3JGNFQxMGJkRlpNUHYwSmQ5SXNqLytVTDNZZGdHK25BK0wvNU9XNzYzMHZFYkxyTjJFWUhURU9CWlNuL21wWW5rRWtoeXJ6MklYZDYxQWpjSnJ0Tmp1bTBhWDlDSDVObUhaTy9zcmkvOUo0Tnc0TEpPRXIxR2twU2VndXVydU9RMWpNLzhVaU80bnBKaDFjaXMrTDB4SjVTYUkwQnNlRzl2ck14Y0czMWlrdFcwdGovMzg0N2RlNjBTdEtVZkl5a3hDM09MeU1OM3BXekxHTE9VMTlyekFtc0pybmsvSXNEbnZpTDVXR3VDblpBajgydU1SWi9YTUFkZGVrMWkyNjBodUI2UGk0eUtjK1JabFN2MG1aRWlNemU5UzBXQzYvVFZvZzl3VnpONzBDQTYvNlBHaS9wZmJvNEJZU0ZpMHQ1bEY5clkrNXhWMzI0VG9DOUc4anZtZWFZS3Y1bmJEOGtHNk1mMktrc0xyc2QyY3A3MGMwdUVvcVd5NUZqYm1kdC9RZ09jRkllV2I2SGJJcmdHUXl6aEhOK0dFVW95MzFzaVBTdVpZK1o3L1pjYnVFL3RNblZzOW1mc1FrTG4xMCtjejc0THJsUG4xNUx3RTY3MGxWL2drbHpHcmhQYythNUJJdTF0a1piRjJzbFlIaEVuMzJGeXdtanVJZGFReE1xVXlMUDBtWlc3MzF2VzJDQTFaSzBHRXRmYVJCODhCNDV6ejB1U1M1WThDNlorci83ZmU0enBVdVBRdVlKcjJwbEtOcDQ3UnhJZGtOQ2ErWmx0SzF4LzVrUVFYZGZJZ3FjU3RXM2JlYW85KzBlQXVRVytQYk8rTUpXUW8rU3N4ekhtL3hyZVRkOG8yYUZobTU3aTZkemhleDVuS2NFMTdVK3Q5ZlBQTGJlV1l5MVo4RnJINFY3bVd6Wjk3SmE1RXVZU1dRTkwwZ0crUFM5ZFVnbEJ4NzcxMVladmlxeTVtRlBvSi9LZWlSWDZwNnlUTzJYT0FkeSthMTNqdFk1VGl1U0tRL0xUazh6czlNRU92WktpbHJaanJlMTZyTGxKdFJXV3lOYlBsdGlnVkVLZHFuL3FlY2w2dG44c1dIUGlqMG40YlQxNndYY2V5VUFaNHpPM3dyZmhtc0k5eVBmU2YzTnJhdWV1YzY0NWR1MzdGUkUzeVhTVzZqdlV0RDIxdHBYdlZxdzVWeEVCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkNCQTArZ05zRDR3QU1UQUJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkhZQXdJc2FqM0t6STRlaEZrWHFUZ2ZCSWwzZDVLaDFxQTVqb2Y0dVNUd2Uyd2EwajBDa2xrY1hCTVkwQnI0aXVqemVMZHdsNEEzRnNXV25POG9Za0Q0aDFDcXBQaUJqUDcyZithQzdXTHlKQUpRRVkyOE1YR0FTempSV2JndkM3Qjd5RWtRWmozQ3pLN2tBbUJoeFRVbEdITmZTaW93ZmwvT3IvVThTbVJpMnl5NDdpRU9SbXIyRjFzZS9MMjJ5S3IxZmtydGQzTXorOWNDU1M2QnliZDFVdHp3R2IwTjhqRmtmQVRYOCt6MVM4bnZDRUVLaVNSNkY0VHVIM2Ivdk5jRnVmR09TOGtNQ0tybVhmcVlURU1JcUNmNGozZm5XQWhXNS8wV2s0M2xBaU5UeVNsYXBDUkxDSzRKVUVGNFJoOHFWbm9sZS9oVE16dGhDSHE1VU9JNGlIRzRyLzU5NGdhaHZRZ2czajFjUi9wU3ZRcUI5K2MxczV1Ni9nZ2k1RjVpT1NRTm4zSnlFeGg4TkNKZTduVWVxWHA2Qk52dFdqOGlGRXpTeDZPZm1aSjRqa0dCQk1mbDdsWEdEZzl3ZFcyek5HWHBlMHIxaTBBdEFlVHNEeHo2UW4rZjJaSGcyV01LeDZtMXh3KzNsK0E2TGJoZWEzekJ1NWR4RnZNRUpCUGhQY084RHUvZ3M3aC81bDduSHZ1M2l1bGl4MzdVY0g4L012S0hsemlwN2RRY3paVGNHdkVFL2UyYVBsSk1OT2Mza2I0L2NpTGVlUVNxUHl6U2ZvNTViQWZZOVBFWVYvakpIQ1M0N2dBMlU4VTJqREZyem5EdGVZR1lBS1ZrN0Z0NlR1ZDB2NjlTNlF4SkdmL2FqUzJZczd4KzRZRVlqeUR5Zkd3blljdlVZZGNVWE5NVzFncGZ3NTBqUXI1Y1lSeE80a2wvckQ5MVB2cjdkaFBnK3RPZnVLYTdENjQ4eUpoNFZveUpGYm5XMzNmdnNRK2EyWCs0NzBEODc3WEVKcnZReHUyK3ltcmRXZ1NtNXU3R2R0UW1DeTV0LzFxQ2E5cFRJbUN0bVJQdEpiaG03aDFCRkFsWi9mSkw5NHc3dVJTbTIyNmJCTmMwS1pUejFnaTZTTWhMb21JRWRMRlNjNzBxTWY1bTg5TGZDRkpBdmplbnhtV3QzL2xiMnQxelBGdHkvTno4NjV4KzlLMWRzclJjRytqeklnWWo0ZWtQU3hxNzBqWWtlV1MrT1plRWVHd0svWlFqQjhIcXR5SnRtNXJibnBPa3RIV05EZDl5bUErQWVUaWZnV0R6NFU2d1dTbzZYaUw1eUxZTHJtdWVCL0I1cW50UE1EYmM1c0szTnVhNkVEVk9GZWFkU0RKTEVsRVZFZGdHQXZTZm1KOW1udUhTTHRFaTM0dkhNU1p6cE45MERXVjlBZ20yK1dhTmhMZG0zZDgybkt2YXNOOEVtSGRFRUUzZmdybVNzdzd2RVByVXZKZFpYOE9jQ1BNbDNMOElpdmwzNlRyUy9TYW5zeXNsd0h3WGM2MzNpdXp3RnJlR3V1WmJWZWx4TjdsZGp6VTNzZmJmeUkxM1Nhd2VLeldKYlZOOHVGNThwODhsNGlJWkQrdkRwNjRiNzhrZkR3bWVQdHY1WXZBT0psRXc0NzhidUcvSHZRN0JjNC8xOGlTa2VzL1EvL3pTaHRiSXh0WWZiNVBnT2lhdDc1a01vTmYxVkQwaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaXNERUNFbHh2REwwT0xBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFLckVXQWVrR0JTcE1oM3JwUmEwMGdDVHhEenNOaDZhbUZ1NlVteENKVTZrV0xXU0JGZk5BUVJQSzV3NFM4TGVkOHhTRWtJZE02VlZxRTFkY0wyb2s0QWVydUtjeUdROGE2RG9QSVRHU2taOVhHK3NVTHc2ZjJjR09sWDNnYTBoMFhVQ0YvOFFyQUZQRDVUZW9FTytIYTdKcVpjNjNLVkJGVnZzK0FhVHNocFErbEJLVDhDLzVIQWZLUjBodzF0dDdiSXF1ZHBsb29Qa0NjanF4cURJc00yYklOODdId3UyY0M1ZzhhVi9JNFFSTDkyQmxqZWE1OGM3dGQzbWxtSnlEcDJLQUwzQ1A1Qk9KNHFNYm4xK0c2TXZZdkdlcER2M2NZRnhQakIvRDBUTlBRV1hFK0pRWGd2MDg5NjFZenI1dThhU2t6Q2F1bWIwWStnbnpBbGVKemJKSjRwSkxlNHlSQjB6Ry9yNGhYOW5ibkhabi9ZSWtibmZpYUE2djB1YUpTK3pSTG5IdXMvMWdvamQ2MGY0UXV1cnoxY1k1STVUTW10Ui9ZRTViMTU2Sk9lTFhPeHVWOUpzc0x2ZzJjU1FiOSsvN1hIZmJKRUhmU3JlUmJTVnZvQUtpS3dCZ0dldDRnMWtkZW15dHRkb29PMUpFUVNYT2Vsam11TUwzakcwb2ZrL3RpV01ncEtrSlA4cDB1Z2dxU2t4NXhEN2wwVUptV0k4WmlTVzZmNnNDVnNMK2lTb2RFZjhvc3Z5RW9sTE1zSnVFcU9QVzdEK3lrbTBDWncrb2d0VEQ2V2tsQ1ZYTXNhTHEzYmp1LzcwMDlVY0Iwelk0emhGK1pJU2VEMzhkYURMN2dmU2ZnWUszQlArSVZrVXZjcE9DN25WdHIvUWJUT0dQMTZRYjBsWTk5VVU1QnBYdGpKdTVnZi9hT0NObytiSUx0RUVFZFNyTEV3UGtlZWlBeXN0REIzaStpUTgxaXE3N3EyNEhvOGR5UjZ6UFBmWVFJR0NXdVlRNE9CaWdpSWdBaUl3R2tKNU9idVNFN0hPNGZ2azB2TVhhMHB1QjdQbXI0RmNsYjZvYjZBdFhaT3RKZmdPc1dBZVVQNkpMWGo1UjZDYTc1ZGs0ektMM1A2dk9NOXhqd2RJclNTNUhHcDhjcllwdHJyTmVkM1B6Vy9QZGJOT09sV2lUNTFqZEIyVGx2WnQxUndUZithOFNDLzgwKzdQbk5OSWdqNnp2eVdTS2lTa2htVDhJeWtUeTBGQVROenRibDVwWlo2dDIyZjI1c1pZL3V3VEFudmNnbFlVK2VJOVBMR3cvamkzc044QUltdmFncjk2ZnNQQXRnM0ZJd3AvbmgzR1VQMEFBQWdBRWxFUVZTWWl5YjViVTJTZU5xQ3pCa1dQQ3VZbHlsNVZzVE9ZZHNGMXlUSUpjbGJyakJ1UTVxNzFQaXQ1dHJYYkZ1UzdIQ3NieW94UU0xeHRhMElpSUFJaUlBSWlNQTZCRkpyeHpnNjY2WklZckZ2cGJmZ211ODRKSmdsZVcxcW5YblA3K2VNMVo1dVpuZkxYQmlPeDdlTDFMckZYdGQwVElLTWhQK21idDNxVkwrNDE3SEhlcEJlOHowWXdULy9NQmJtKzh2UGVoL0lxNjlGY00xNGpiV2thNVRMdW9UVS9yRmd3dGl2Wmt6R3VqZVNtby9mNDRoellNMWFidjNWR3VlM1RjZGcvb1g1UGhVUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUlFZEl5REI5WTVkTURWWEJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkFvSkVNQjRKVFA3Q3hkMFIvQnhiV0d4NVZQTjdER0RUUGxIdFRzWGJrODdDUnBGeUp3SzVJeFZkWUtUbFh3Z0V5Q2Vra0J4WGllNllELytqV1N2TnNnY25nUVlFcFJZRTh4SUlPTTkzZkduZ3V0S0Zrc2pXem5hek9DQWpPY0JBNnhZME9zY3FVemhwZHlyelhaTlRMa1cvSkw3YU5zRjEvY3dNMlJIdFlYRjBuOXVadnptdHIzc3N1QWFrY0ZMWGZLQUdHZWUzeVJHUUN5V2U0WnVXbkNkazBPWFNDMUluSEN5RTZ2bTdqZUVGSjl5SXUxM0RmTGhEem14d3R3Z0VvNlBqUGF3ek1FSkhFTEVrRXA4Y1dZbnM3MVdwZzRrYUx4SFQzSG5pbXp0R3NIMnJRa2FlZ3F1a1VFZzVqMVA0bHk0RHZSakNIQ3E3VS9rcmkvUG5GZE15S1NmWVdZUE1qT2s1ajBLa2dCRUtGY2JaTkxYSGU1REJKTXRmVWphUWdBTzE0RTJJbGtnMktxMjN6UjFUdDl4OG11a2doOTF4K0UzZ1ZTRUlLdmEzd0svM2RoOStHTXp1Nm9UUkV5MWliL3ZXajlpZkM0aG5xRnZuTHJtU085alFoMzZ3cS9ML0VaU3pPaUQveklERkdFcTBwRTU1UnhEMndndVN4WGs5Vk5qa0ZMQnpaeDJhbDhSUUdMRHVIdEt2SWtnN2FoQlRzcjdjYTBpd1hWZWNMM0crSUsxWFM4b3VEOTYzeE04cHdsUzVoOENSeEVvSTdEbS9pc056a1VFUlQrVk1RclBmUC9aem51YWVuL3VHbjcrWVc3amhvTUk4T3FaRTZFdjhlVE0zM21tSTRSaXpCQXJ2T2RKRWxJcnZQUHJDaE9mTUZZa1FRMTlrVndmZU9wOU1zcWFmdUVZeC9xVm5CL1BDY2EwWVJBLzF3bDJ2dFMzOXozUlV0KzJDNjVUNCtlV2M5Mm5mZnh4SzBtYjZFL1I1K2IrcEc4OFN2eVkxK1g5eFZ4bldCQThrQ1NuWkt6Q3ZYMWVKMmRnWG9CN3VTWWhJc2RtcnZodjNUTXJkUzFhRWk0eTVrQllTVUtEa25PcHVRODJKYmltamJ4YkVBQytlSGl1SXJ6T0ZVblVhcTZxdGhVQkVUaElCR0p6ZDhjT2ZlV0hMdmhORmI2YkVGeVAxNVYzS1Vranh2NDIvVkxtaUhQek8vNDkwVU53alFpVU9WT0VzMkdoTFZ5RDJqSkhjTTA3bFhsVXBHUmh3amdTU3BRa0YwbTE5MEp1dnJPa0QwSnkxcGRuSkVqTVlaTzRndm5hbm5QWU9kYWxrbXZxb0Q4WmZydUxqU1htSnBsaHJ2Qk5rUVFxVStPMThUejVWc0MzVXU1RHYzQ054cm1hMUp6bXBRZlpGY2tDYy8xYzV0U1poeWFCYVd0aGZNcTNsOXIrZE92eDF0NHZOVWROTzNMM0hHd1I0TE9tSWxmbUpvNm5ic1R0M0ZNbFltdS9MUno3a203czBTb3A1L3NJQ1hUNWgzbUNVZ0Y3RDhFMTN4WDRkc2dhSmIvY2VaQzB2UzBCUFRVbUwvMU5ybjMvTFhtOHFlZjRlT3hjWW9BbDI2ZTZSVUFFUkVBRVJFQUUyZ2lRS0lXeFlWaDZKVVZ0YTlXeWUvVVVYRFAyWW42ZTlkR3A4a0czanZ0ckhVK3JaTTBiM3dkSnZ0TXJRU1RqZ2JPN2VSK1NyakxYRUNiY3JUbkY5N2x2cWlSQitoTTNQMEhTeTNBOFcxT252eTNmaW1FQS95ODdDVGJDNzgrNmIwbU1rVnZuSDFvRTE2azFEYTNudDhaK1gzR0phdmttVDlFM3k5K21YckxPZG8xcnBXT0lnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaFVFcERndWhLWU5oY0JFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJDQkxTUndPak5qVWVlUlRoNUk4Tk5aWnJTVDROREhPeW5RVW1McnNIbUlOQWp5ZlVqbElsb0VRZzhiRm5vZW41Q2RJalpDeE1kQ1dvUlFCTTk5YVVLTW1rSUhad0pQLzlyTWJsY1pHTXBpMUFjNlFlYVUyTm8vUG9HQUJQUnl2RG1sTmFoN3pqRjNlZDlkRTFPdXhYb2ZCTmZJV3QrYUVTaUhMSkd5SXZybmQ3alc4M0R1OWR4bHdYVk83TS96SHRFVmNvQ3AwbHR3emJ1SmdCa0tjaXRmbXV2TENuaFBFSFJPZ0VsS0hvRDg0OWtUSnhDN2hzaDYzemtFc0x4bmVOK2Y1RGdRa04rejhOMFF4Z1NnbnpGVDhaTUdFZUdEQzhTR2Yrb2tZNGc0Y2dWSkdra2FZcVhrdVJQYnI0ZmdHaDRFSXlFeVN3bHdsNUpiYzA0Y256NE16NkNjaklMa0djaEphb09tRUs0Z0prYjZRR0FVMHJvNS9VZmF6RFB6T0hjUGZTNFJySVFFRDlrMWdYdzFTVUphNzNXQ3FwQnNJOFNrRDNZREp6RUpmODh3cGo4ZFk0MWtHU25EdHdvYnNXdjlpREVnaUNDOXQ1alo0Wkh6eklsRDJCdzU3d3NIaVdsT2FsK0liNnMyK3o5TytFNENBUlVSNkUyQTV6eEpKUkMyOEw2WktraUNiem1JeEFnTVhiTkljSjJYQWEwMXZpQjVHZS9ZbmdVQkY4SGVTS1lSSUNHdlJtRDd2UW9CMGxSN21OTkFxdFRqL1VDZmtYbXY5eVlPT2pWLzBrTnVQUjU2VElyeFo1NGdpOTgwOHo1UGlMVHY4MDdjUzZCM3FzUkVhYjRrTGRkWG9VN2V3MGlqV29QRnA2NWw2OThsdUc0bHQ5bjkvSUR4cXd6Q2FSSXMvRzVsazFKQ1I4YTd5S3pwY3pLSHplLzZqeXJyOWpkSGJFM0N2MDlVM1A4dENSY1orekUzZEl5VE5zeG84bTkyM2FUZ2Vtd0UwbjdtS0JBaDVncmp6dHZzU09LM0h0ZEdkWWlBQ0loQUNRSGVqYnp2bU84bE1TYUpTSkNKTGwwMktiZ2V6KzE4THZrUzMxMFpQNVNXSG9KcnZwZStLSExBT1hLd0tjSDEyQitpVDQ1MGlIN0JXTmczTmFkS1cwa21zV1RobXdUenJDUUN5czBoMDE5aW03WEhDNHlaWHhtUmYvdE0rTVovNjBnaW90aFlZdTVjM2R3a3ZTUng0aHNOQ1pxV0tId0xRTncyNXpveE5yM2ZJTVlpU2NtK0ZjYTkzTzg1NlhzcytRRGYwbTR4SVZubWQ4NXovT1lGQ1JGVFhCSEk4UjJDZVphYTlTQmhmVnhEUk9mY0QzTy9vZkNkaHJrOUpITzV3bkZZQStNWDl1VTlWNXRJdE9hK2srRDZ0TFJLeDJkODl5S2h4ajhYZkt1dHVSN2FWZ1JFUUFSRVFBUkVvQytCM1BxTHZ4OE85YWkraDl1YTJub0pydWtiOFcwMDk0MXhDYm4xQ0pJMU1DUVBZcjE0cnRCblpnMWRTWEtxc1o0eDZTZXNydUcrbFRET25KT29pTGtLMXNhenhvM0VUckgyak92Zi8zSklOdDlUZHAzanc3Y0ZFbml6N3JPMFNIQmRTbXIvdDVQZ2V2K3ZzYzVRQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUmdUd2xJY0wybkYxYW5KUUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaXNQY0VDSnhHQ0UyZzJRVTZuUzJMU1IvckFrMXJGdHgyT3Z5dnEwRkloTXlSQmR6L282TGlMNXZaemN6c0k4RSsxSWNFaVNDdnVTVW5LMHJWVFVBMXdySTN6QWhrbkpJMFRaM1gxMTBRNUNsVEcrcnZ2eUZ3U1JkMGp2eFQ1UkFCZ3JhUnFPYWVEeXlFUnhURXYvM3k0NDZTdEZTd2E0a0lsd0FCWkdSVEFRRXMrdjkrcDJmSDJ2ZlFMZ3V1WVJXVEloT0kvd2d6SXdGRFNla3R1UGFGdUNYSFQyM3pYU2Z2UWlBNFZaQVlFZ0NQVkpYRUREM2VZN2xqa21pQ29Cc0NXSElGcVFTQzY5TGcvRkxKZGVxWXJRa2E1Z3F1UzNqd25PQ1p5TEhtQ0NkeXZFc2sxMGc5RUo2K01WR1JMNUJEMG53MUorQ1llZzVPM2FQOEhRWUVqRDNIOVhWS0JkQmozUVQwSWRkR3JJNVFMU1VTTDJsTGFodmtGWWp6eGo3aXBZY0FPQ1N4WjZxb2xPQXZ4QmlsSW9kWXdONHZYVklXK3R2YlZwQnRJdDJnSUpONWFkREF0N3Z6LytGRXczbjNjeThpL3VNM3RBOEY0VGRqak5MM3p6NmNzODVoZVFLTTc1RHFrS2lwZEN4Zkl2QlpxdVdiRmx4cmZISHFsVVdHZnJJYnk5UmNhNUt6a0tqaHc2NWZpUUNXdmlVU3V0TCtYTTN4WXRzU1NFMmZhVzdKUFpNWjQvSCtvbDhSS3ozbDFtUDkvSllSMlNFSnA4UWtXdU8yOTNUdnh4eURsR2l0aEJ0OTBSdTY1RzhsMjYrNWpRVFhhOUx1ZHl3L1lCeXB3cnVIZXhpWlJFMjV5WkJFNTNYZURzeGxJNk9rdnptM01BN2gzY2c4OXB6NXpwYUVpOGdoR1JQM0tOc2d1T1k4ZU5jeUg4L2N5OVNZN0pIRC9QMFQxVC91Y2ZsVmh3aUl3SjRRWUc2TDcwa2tZVm1yZjcwTmd1dE5YVDRTUzVMODhXeVJCdkF0TnBac3BxU3RVNExyYzd2K0VIUGRwWVh2U3doelNTUzBWQ241ZnJ4a2dzYlM4N3FpNnhmR3JsdHUzbkViQmRkbmNNbXNHWC8xTHF3cHVJNDN4cHhUUDk4VmJ1UytkZS9EUEMwSmlFa204SXFDWjIyNG5pUDMvWVRyK0hTWGdLZVZONzh4cEhza2o1K1NTTmNlWXhSZDAwOG5LVlp0NGR2STlZYjVnZy9VN3JqaTloSmMvemJzMHNRRjdNa3pGREg3T0RlMTRxWFRvVVJBQkVSQUJFUkFCQW9JWE4rSmhrT0hBLzAwRXBwOHNxQ09YZHhrcnVBYVhpUkxla2xpL0Q4eVdTTTVkSW5rT3ZjTmtyN2RPZHpjMFpYTmpIOHVtMG1VVlh1OXYrMGszSHd2WVgxaHpkcEMyblpoTXlNNUY5ODRMMUo3OE1MdFdUL0Uyai9XVEpVV0NhNUxTZTMvZGhKYzcvODExaG1LZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBanNLUUVKcnZmMHd1cTBSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRURnU0J3d2RKNFlsbWRzWVpaenNHM1JIMFM1RHRVb0xHMmlZU2xIdlhRVUw3NkVKQlhvbll0cllOc2UyUmJoTThlZU9KeXY3ZGlhMXBWNCtnZG83N09ETTd1dUVrZW9wWEdnNnZYVVNnTzRFNWd1dnVqZG5DQ25kZGNBMVNSTGV2Y1ZKMFJNK0llMnZlVDcwRjE2MUN3ZkQyUU1pQUNLcm1YTmE0eFJEOXd2dGFtWU1SQk1PMUlEQ250djBsQVQreFE4OUowREJYY00wOTlLcU0zR3NPajlwcnl2ZmNPNXJaOHlOeWZnTGZFRldRZ0NCV2tPeTgzZ1hIMVI0M3RUMUpSVjd1RXFKOHJESkFLdGNHZ3FmTzZ3TFY3andJc3k5WGtJeWc1SnlRM2lISUgrL2JjenBlaVBwS3kyM003R1dsR3cvTTV3YnNWUnlxKzZiY013aEVHV2RRUHVmRUtsejMwa0svRlhrdjNFdmx2YVYxcjcxZHEyUi83WGJxZUx0RjRBcnVkMWFTVElmM0RRSWYzbXM5eHBVdHBEWXR1RzVwYyswK3V6QytTTFdSYzBWaS9mRWh5Y0NuWGNJQzNzL2ZjQWw3YXZ0dHRleEt0cjlmQnhrc1Fpb1NWb3dKR2Z6akV1VDhiNE1rZ045V3JDQ2E0bmUwWkNLMzNPK2FBSHQrUjFPSkluTFhlSW96U2RWSU1yR05DUmtrdUo2NmV0djVkejlnSEpIN1cxMy92TFMxekl1U0tBcVp2bDlTUXM3U2VqL3FuaWVNWDN2K3Brc1RMcWJPcTdUOTRYYmJJcmdlMjRYTWdySGVaVEluMURJK2FPV2ovVVJBQkVSQUJPSUVEcXJnbXZjMWM5TUl3c0pDUWtuR0M0aWRXc3FVNExwRmF2eFU5MDEzNlRFWjBxOVhtbGxzam1HTkJJMmx2UG5HOHVwaGp2VXdiNGVwZnNVMkNxNXBmcThrVGo0Nzd1R2JEbUt4ejVjQ0xkeU9lVnErSC96dE1CZUZhTHhIMHN2Q1E4L2VqUDQraWI0UVVCOWYrUjFpWE0vQmN5R1hISlRrTHRSL3Q0YldycGs0bm05RUpGTmdQVS9zR1JoclByOS96cDN2WE50Y0pMaE9YeDJrNWx5LzgweGNRSDRyM092YkxETGY1bnRRYlJNQkVSQUJFUkNCcFFqa0VqNnk5dVQybGNMZnBkcTVSTDF6MTh2UVIyUjlOdDhZVW9WdkZxempJYm5VMG9Ya243UUhLWGxZV01mRm1wTFU5N2xidVFTOXZUd2VyQjBnWG9Cdm55ZVkyYmM2bmp6Y2p4akU2MGU1SlBDSXVlY1d2bGRmcldHc0s4SDFYUEw3czc4RTEvdHpMWFVtSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNCNHhBcjRueEE0Wk5weXNDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNXMEdBK2IyL003UEhWN2FHZ0xhM21kbXhEUUdCbFllYXZUa0JpSWl1a1JQK2ZxSzJYemdaSXRLZ05jcWZ1Z1hDRjRvYzdFVm1kc3hDc25DdU40R0l6eW1VZnRPODV3NnlxM3RWQm4ydXdWREhFSUU1QkhaQlFEZm4vT2J1dXcrQ2E1NTNCSlFUa1BLbEJpQzlCZGRuTXpNU0ZseXNvUzNqTHM4YUFtdnVzOFhQWTk1dGlNUXZIam5IcjVyWm53OGlCR1JlcllWM09Ja2E3bDFZd2R6Zys3bUNhNXJKT1JPa0ZFb2Z2anU4NXdsQ0ltaG96WUtJZ3ZhTWlVMm01TlpqMjJwRXFySHpRUXlEUUE2QnpQdWNlSDZOOHg2RjExZHhVa2dDOUpIcjFSU0VJT3pIUFR5V1dubmsyOTI5TUNXbDlOczFOMkN2NWh5WDJQYldMc2lPZSt4Nk04VUlDTVd2NDRJUHIyUm1mN0pESXBWdkRuMytLNXZaRjVlQXJEb1BQSUhVTzhZSHc3T1h2c1BYTmt4TGdtdXpuMno0R295SEp3RUUwbEVrejlzbXNjNGhJZ0Q5VFRNWUVxek51d2taV3F3Z3BIcm9rTXppa1pFL1RnV1d6MmpXYVhhOTNmQ09lMEVrT1VyTmZCVmpJQUxTYjF2WktPYkNtQ3ZpdmJXTlpkc0YxOGdLa1EvRTV2aTJrZWRhYmVJNXcrK0hVaXQwelBVaHVjLy94YzFWbHA3TFo5MzhKcitQbnJLRzJQRnpvbXZHcU1qa2tFYjBLdHNtdU9hOG1Jc240U1FKRThQU1kzelFpNTNxRVFFUkVJR0RUT0NnQ3E2NTV1SDg2SGdmSUFhanI5QmFwZ1RYMU12YzlrTUtEOUF5bjFoWWRYU3oyQndEU1lKeVl0ODV4MnZkOTZ5dVgzZnpRYmhjMHEvWVZzRjFqeVJPUGtQV2F6Q20vVkVyMklyOUVLSFQzOXYyOG9OaERjelBaallTQ1IxU3RJOU0xRVBDUnlUQ3VRU3dZeFhNVDd6WUpiTGRWT0o0Wk1jSXkrODVjUzIzTmVGdWVEa2t1TTdmb1A1ek03V2wxZ1BOZkZob2R4RVFBUkVRQVJGWWlNQWxoajRtMzIvQ1pFUWtRYnFoVzdPOTBLRTNYbTJQOVRLNWZ2b0wzZHF6bmtrd3A2RFJIcElkSVg4ZVM4azN5RGxKZFRnTzN5VSs2TDVCc3Q2Zk5aUnJKY1dtcjM0NXQ5Nkg5UUtzSjZ4Tm1rUnNBNGw2YWt1TDRQcmNMckZUN2JFMnVUMzM4RW1lSUYzZkxILzdhdmpmS3pkNXJYUnNFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQ0JTZ0lTWEZjQzArWWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaXNHVUV6dUVFaXpFaHBkOVVBdTZRQWJIQWwwV1JjNE1DMThhUUUxMnpXUGl2ek95WEt6YnFmenJaSTR0MnYyTm0vK1RFTDk5Ym9RMUlRZ2wwUmNDVEMwSjlocGs5eU16V1hNeTl3dW5yRUNKZ0Vsem5iNEo5RUZ6UHZjMTdDNjVyaFY1Kyt4RUNFMGhPNEJLQlN0dGNZcEpyWkJ3SSszb0o4NUNFODk0K0lnT0NQZ3NCK3MrY3dheUg0Sm9taG5JUUFvZHUwU2hlNzNIdEwrOWtDOGdaY3FMSDhGajNkMzJWa2paOHdjbk9YNyt5MExxa2Jmd1dMemowZmE5bVp0Y2RKUGdJazgrZTJSSEpBM0w1c01UdWoxZzFyZmQvajRDOUVoNUxiVU53M211ZGZCQzV4eEtsUktaeWtTRWhEd2tHTmxXUTJaKzg4aGhqVStlcTQ2NVBnTFU2RDB3RWRQNkhFMysrWThaN3NPY1pTWEM5UFlMcm50ZDF6Ym91N2ZyQ1o2bzhLRUhiekdFaHJwNFN2Wk1ZZy9rUFB3SGMyZ2xtcmowRWQ3OHlrQldRck8wUkZiL2xHbW5lZjdrRWF3VFUvM2NsMnpVMzMzYkI5Wm9zZHZsWXBmMW54cjkzSEVUdC81azUyWlRZWTl5RjhlRHJ6T3psTHVsVlRhS1pYb3laZXlYSkJCTExjZTZWMy9kZmRFNWF0WTJDYXhqU1QrR1o5aEt2UDg1OHhtM2NkZW5GV2ZXSWdBaUlnQWkwRVRqSWdtdUloWkxyTnppUjg1dys4ZThPaWFGSnN1ZlBROUVuWVU3LysrNHkwUStZa21qenZmZ3hUbm8xcHoyMWQ4YVlJSmwzTjkrdFNmYkhkK3lQMWxhMHd2Ykl2Wmo3LzBwQnYySUp3VFhyS3BqdjVGdUlYeGhMeHVhUlkwam9KNUhnaUFKdnhGczFraS91clE4NzJmZS9EZC83MTFoYnNNS2wzZWxENUpLYmMyTEhtOWxUekl5NU9xN2ZOaFIrU3lUZ2VmandQWWZ2Um43WkplR3hCTmZUZHhOelhpUVBmbkxrV2JOTDEzcjZUTFdGQ0lpQUNJaUFDT3dYZ1VjbEVyTWlheVhKK0NibXZkY2kzR3U5VENpNTVyc2hDWWRJRXJTVzVObG54cmNDdnVNZDdjWUlyTmtxdVk1LzdCSm5IbFp3QVZqbnpYY1d2a2VzTGJTZWFoNXpENnpQNHZxUzVQNmFac1lhUU1ZbXNmSXB0ODIzcHlxTy9MMUZjTjF3R08waUFpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpS3dGQUVKcnBjaXEzcEZRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVlEMENOemV6ZjNYeUNmK29MQklsbVBVMVRpeXlpWVc5dlNtRW91dHZPTW5oNTNzZmFLSSs1bFp2UDBnL09TNEx6emZCbHNYQmlLSVFqdkh2eTVvWmdxTzNtTm1MWE50V3hxTERpY0FxQkNTNHptT1c0UHBVRWRNb0dCaHAvVzhuby9wRTQxMTYrQ0JtUGs5aTM1K2IyY2NIK2RVdnZMOFRXSVA4WWx1QzNVdFAydy9rSnpEK0NRdWRBeXh2T2J4RGJ6RDBWUzdzR3ZkL1hIL202V2JHKzMxTzZTVzRIZ1dreDVnWmRSSkV2dW5FRWNpdENlYjVTQVVnbmdza09pSEl5QzlqY0JSLysvOWNmM0hYN2xtQyt4R1RYTkxNTHVPQ3FhN2dSQzQzU3doQ2tLUGNLMkRCNy9WRHJrL0gvZmZpNFpueHVRb2hwVjlkcjRDOWlrdmNmVk9FUHNoVnRsM00zLzNFVmFFSXJFaUE4Unp2dkx1NVl5S2VlcGdMaU4zRStESjE2aEpjUzNBOTkyZkJQTTZSWnZaN2hSWFJ0LzZZNncvVzlFdEd5VFhCNVk5MlFlWTEreGMyTDd2WjVjenN6VTZNUjZJTWtxV1VCTGVQbGRKbjgwWGduQlBCNGNoMktTUjJZNjRQY1I3am0xMG9FbHp2d2xXYWJpTjliWktQcE1xUFhGKzZSTTZIUUJKNTRGMWNaWXhKRURYdzIyRk84OHRiMUFmbHQ0ZUE4Uy9ON01idTl6ZE5xM3lMYlJWY2oyZUFlSU5FQTlkeUFrYkdVR3MvVjh0cGFrc1JFQUVST0RnRURycmdtaXM5SmlWa1BvK3hCbjNrTlFyaitMTW1aTVkvdHMyT0hjZDViT1ovK1g3ZEsySGxHbHhUeHdqSFIyeTNTOTlkd3ZZalBkK1ZjZHdtci91bWpzMXZCNUgxS0N0bmpQSWNNM3ZURm53VG1tTEM5elorOTR4ZFNKekhYRjdOWE1SVS9VditYWUxyY3JwWGQydUF4bS9WTGZOTzVVZlRsaUlnQWlJZ0FpSWdBbk1JbkhNWXE1NWtaakdoOGQ4bEVpRFBPZDYyN2R0enZjeTRodTBzWm5hcllaMzRpUnMrV2NiZVJ3enIzVDVkMmVjbUNSVnIrTVBrU0Y4WUV0YTgwWTFGUHJDakNaRG8wNS9YclY5bmJTWHJ0UzdnUk9CVGljSlNsMU9DNnczZjZEcThDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDTXdsSU1IMVhJTGFYd1JFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUTJUd0JaRUlKckZ2UysxdjJEYVBObm0yL2FZaTBZUmRlSWp3Z3VWQkVCRVRnNEJNNHdMT2ovbTBFK2VxSGdsQkdSL3N1ZVAvdEtybktLRHpMKzU1ZFVvRzBPUEFFQ1RRZ08rdUFPazBDV1J1Q01YMXAvQXdUalhHcURDUzE2WFFhRWk0aFQzK09DNlFpNCtrbXZ5bFhQYVFnUXZIWDBFSmhJZjNVc0NFeWVZbVpmRWlzUkVBRVI4QWljMlFrK0VlaDhab3VFbnY1Rk92Y2dITDFpNUtxOWQ1QnpmMzFQcnFiR0YzdHlJUWVwTmNJNUVsN1FqOTFVa2diNlhFOHlzenM0VWUvKzBHMDdrNzhhRWdFOUpMSXI4NWozYTZ0U2UrMEJBZDR0L0xNclk1TFRPN0Z6NytjS2dzeXJ1bWZYZUZrUmZpTS9ZZnl3RFlYbktvbXBTSWkwSzVLOGJlQ21Ob2lBQ0lqQWtnUlNrdVVmSEtCdkk4Uy8zTVFscW52OWtyQjNyRzY0SU12YXBxUlpPNFpRelQzQUJQajlJTXlqSDA3aW5WMWNaOE01OEk3d2svRnUreVdWNExydUNwRUFGMGtnei9xalhLTGx1aHEwdFFpSWdBaUlnQWlJZ0Fnc1Q2RDNlaGtTY0RMbjhiWGxtNzdZRWVpbms2Q1h0UUVrMCtFNyt6YzBmay95amlWUDNyWnZKNHZkTEtwWUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJQYUJnQVRYKzNBVmRRNGlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBTDdSdUIwVG5EOWYvZnR4SFErSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDKzBGQWd1djl1STQ2Q3hFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRllqWUFFMTZ1aDFvRkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFWUQ4SVNIQzlIOWRSWnlFQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNxeEdRNEhvMTFEcVFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ093SEFRbXU5K002Nml4RVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVZRFVDRWx5dmhsb0hFZ0VSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUlIOUlDREI5WDVjUjUyRkNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDS3hHUUlMcjFWRHJRQ0lnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlLd0h3UWt1TjZQNjZpekVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVIb2JrYUFBQUFoeVNVUkJWQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUlIVkNFaHd2UnBxSFVnRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUU5b09BQk5mN2NSMTFGaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlLd0dnRUpybGREclFPSmdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUl3SDRRa09CNlA2Nmp6a0lFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVZpTWd3ZlZxcUhVZ0VSQ0IvNytkTzZZQkFBQkFHT2JmTlM0NGxpb2dsQjhDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlOQVFjSERkMkZFTEFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ01CTndNSDFqVm9RQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRS0FoNE9DNnNhTVdCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFJR2JnSVByRzdVZ0FnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0VCRHdNRjFZMGN0Q0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUkzQVFmWE4ycEJCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFJR0dnSVByeG81YUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdSdUFnNnViOVNDQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlOQVFmWGpSMjFJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBamNCQnhjMzZnRkVTQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRYUFnNnVHenRxUVlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkM0Q1RpNHZsRUxJa0NBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZzBCQnhjTjNiVWdnQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCd0V4anN1YzA2L0dSRXRRQUFBQUJKUlU1RXJrSmdnZz09Ii8+PC9zd2l0Y2g+PC9nPjwvZz48L2c+PC9nPjwvZz48L2c+PHN3aXRjaD48ZyByZXF1aXJlZEZlYXR1cmVzPSJodHRwOi8vd3d3LnczLm9yZy9UUi9TVkcxMS9mZWF0dXJlI0V4dGVuc2liaWxpdHkiLz48YSB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLC01KSIgeGxpbms6aHJlZj0iaHR0cHM6Ly93d3cuZHJhd2lvLmNvbS9kb2MvZmFxL3N2Zy1leHBvcnQtdGV4dC1wcm9ibGVtcyIgdGFyZ2V0PSJfYmxhbmsiPjx0ZXh0IHRleHQtYW5jaG9yPSJtaWRkbGUiIGZvbnQtc2l6ZT0iMTBweCIgeD0iNTAlIiB5PSIxMDAlIj5UZXh0IGlzIG5vdCBTVkcgLSBjYW5ub3QgZGlzcGxheTwvdGV4dD48L2E+PC9zd2l0Y2g+PC9zdmc+"><figcaption>å¾ 2ãç§çº¦äº¤æ¥ä¸å¼å¸¸æ¢å¤ï¼è¶
æ¶è¿å
¥é离ï¼ä¸ç´æ¥è½¬ä¸ºå¯ç¨ã</figcaption></figure><div class="table-wrap"><table><thead><tr><th>å½åç¶æ</th><th>请æ±</th><th>å³çä¸ä¸ä¸æ¥</th></tr></thead><tbody><tr><td>Free ä¸ Ready</td><td>ç产/ç»´æ¤ç³è¯·</td><td>ååååæäºï¼ generation+1ï¼åæ¾ç» grant</td></tr><tr><td>Production Active</td><td>å¦ä¸ä¸ªç产请æ±åéé</td><td>æçæéæ RESOURCE_BUSYï¼ä¸å
±äº«åä¸è¾åºæ</td></tr><tr><td>Production Active</td><td>ç»´æ¤ç³è¯·</td><td>é»è®¤æç»å¹¶æ¾ç¤º Run/ç©´ä½ï¼ææè®©æ¸¡åªå¨å®å
¨è¾¹çå¯å¨ Draining</td></tr><tr><td>Maintenance Active</td><td>ç产å¯å¨</td><td>æç»å¯å¨ï¼æ¾ç¤ºç»´æ¤ä¼è¯åå½±åèå´</td></tr><tr><td>å
±äº«è¯»è®¢é
</td><td>ç»´æ¤å请æ±</td><td>å
忢ç¸å
³åæï¼è¢«å¨è¯»å¯ä¿çï¼å¿
è¦æ¶æ è®° Stale</td></tr><tr><td>Draining</td><td>ç° owner ç»æ</td><td>ä»
ç»å° handover deadlineï¼ç¦æ¢æ°æ®éä»»å¡ï¼å
许æ¶å°¾/å®å
¨å¨ä½</td></tr><tr><td>Draining/Active è¿æ</td><td>æ° owner 请æ±</td><td>RecoveryRequiredï¼çå¾
æç©ºãè¿æ¥å®å«ä¸ç©ç读å</td></tr><tr><td>RecoveryRequired / Disabled</td><td>任使®éå请æ±</td><td>æç»ï¼åªæåæ§æ¢å¤å¨ä½å
许æ§è¡</td></tr><tr><td>ææç¶æ</td><td>硬件æ¥å/严éèé</td><td>硬件æ§è¡åæºï¼è½¯ä»¶é»æãè®°å½ç¶æå¹¶æ ¸æ¥ï¼ä¸çå¾
ç§çº¦å°æ</td></tr></tbody></table></div><h3>14.1 é¢çº¦ãæä½éä¸è¯»è®¢é
</h3><p>ç产é¢çº¦å¯è¦çä¸ä¸ª Run/æ¥éª¤ç»ï¼è SessionGate åªè¦ç䏿¬¡åå I/Oãåªè¯»çæ§ä¼å
使ç¨ç¼åï¼å¸¦å¯ä½ç¨ç queryã读æ¸
é¶å¯åå¨ã忢éé读å仿¯æä» I/Oï¼ä¸è½å½ä¸ºæ é读åãå
±äº«ååªå
è®¸ç»æç¡®çç»åçç¥ï¼ä¾å¦ CAN 卿叧æ ID/卿è§ååé
ï¼ä¸è½æ³å为âå设å¤å½ä»¤æéå³å¯å®å
¨å
±äº«âã</p> |
| | | <h3>14.2 宿´ç»´æ¤äº¤æ¥</h3><ol><li>æ¾ç¤ºèµæºçå ç¨è
ãRunãDUTãä»»å¡ãå©ä½ç§çº¦åç¶åå½±åï¼ç»´æ¤å·¥ç¨å¸å¡«åçç±ã</li><li>Run åè°å¨æ¹ååå½±åç©´ä½å®å
¨æåï¼èµæºå Drainingï¼æç»æ°åä»»å¡å¹¶åæ¢å¨æä»»å¡ã</li><li>çå¾
å¨éçæ®µç»æï¼æ§è¡éç¨ç SafeStateProfile 并读åãè¶
æ¶è½¬ RecoveryRequiredï¼ä¸èªå¨ç»ç»´æ¤è
ã</li><li>å owner æç©ºå¹¶éæ¾ï¼Local è¿é¡»ç¡®è®¤æ§å¥æå
³éåå½å Mutex å¯è·åã</li><li>确认ç¬ç«èé/æè½æç»åæäºç»´æ¤ Scopeï¼ç»´æ¤å¨ä½å
¨é审计ã</li><li>éåºç»´æ¤å
读å/夿 ¸ãæ¢å¤éä¿¡é
ç½®åæ¥è¦åºçº¿ï¼åéæ¾å¹¶ç± RunService æç¡®æ¢å¤ææ°å»º Runã</li></ol> |
| | | <p>âForce releaseâ æé®ä¸è½ç´æ¥ UPDATE/DELETE ç§çº¦è¡ï¼å®åªè½è§¦åéç¦»åæ¢å¤æµç¨ãå¤äººä½ä¸ãæçº¿ãæ¥çº¿åæé¨æä½ç许å¯ä¸ç±è½¯ä»¶ token åç¬å¤å®ã</p></section><section id="fencing"><h2>15ãFencingãè¶
æ¶ä¸ Local è¾¹ç</h2><p>宿´æ ¡éªéå为 <code>AuthorityId + Epoch + ResourceKey + LeaseId + Generation + OwnerId + ConfigHash + Principal</code>ï¼å¹¶æ£æ¥æ´»è·æãparent permitãdeadline ä¸è®¾å¤ Readyãgeneration 对æ¯ä¸ªèµæºåè°å¢å ï¼ç»æä¿æä¸åãBroker å¨ SessionGate å
å¤ç交æ¥ä¸æç»åå½ä»¤çåºåï¼æ§ä»»å¡ä¸è½æéè¶è¿æ° owner çææè¾¹çã</p> |
| | | <h3>15.1 å·²åå½ä»¤æ æ³è¢« token æ¤é</h3><p>è¿ç¨æåå¯è½åç卿å䏿¬¡æ ¡éªä¹åãåå
¥ä¹åï¼å æ¤åªææ¥è¯¢æ°æ®åºåç´è¿è®¾å¤ï¼ä¸è½æä¾å¼ºç©ç fencingãBroker å¨åä¸ I/O åå
以æ§è¡ä¸²è¡åäº¤æ¥æç©ºé¿å
æ§/æ° owner å¹¶è¡ï¼å¯¹å·²ååºçå½ä»¤ï¼ä»éçå¾
宿ã设å¤åæ¶è½åæç¬ç«æè½ãè¥é©±å¨æ æ³ç»æ¢ä¸ç¶ææªç¥ï¼ä¸æäºæ°ç§çº¦ã</p> |
| | | <h3>15.2 Local çåå
¥éå¶</h3><p>Local ä¼è¯ç±é
ç½®åºå®å°å¯ä¸ Workerï¼è¿æ¥å®å«ä½¿ç¨è§èå PhysicalSessionKey çåæºå½å Mutexãè·åå®å«çä¸ç¨å®¿ä¸»çº¿ç¨æç»ææè³è¿æ¥å
³éï¼Windows Mutex ä¸ºçº¿ç¨ææï¼ä¸è½ç®åè·¨ await 线ç¨éæ¾ï¼ï¼é©±å¨æä½å¦ç¨ SemaphoreSlim/SessionGateã线ç¨å¼å¸¸ä¸ AbandonedMutex ç»ä¸è½¬æ¢å¤æ£æ¥ãMutex ä¸å TTL è¿æéæ¾ï¼æåçæ§è¿ç¨ä»ææå®ï¼å æ¤æ°è¿ç¨ä¸å¾æ¥ç®¡ã</p> |
| | | <p>è¿ç¨å®¢æ·ç«¯ãå¦ä¸ä¸ªè½¯ä»¶æå设å¤çå
¶ä»å«åä¸åæ¤åæº Mutex æ§å¶ãè¥è®¾å¤ä¸è½éå¶å¤é¨ç´è¿ï¼ä¸éè¦è·¨è¿ç¨èªå¨åæ¢/å
±äº«ï¼å¿
é¡» Broker åå¹¶é
ç½ç» ACL/访é®åæ®æç¡¬ä»¶è¿æ¥é离ï¼ä¸è½å¨ææ¡£ä¸æ¿è¯ºç»å¯¹é»æ¢ææå¤é¨å½ä»¤ãå·¥ç¨å¸ç»´æ¤ Local è®¾å¤æ¶ä¼å
ç»ç°æå®¿ä¸»ä»£çï¼è¥å¿
é¡»è¿ç§»è¿æ¥ï¼å
åæ¢æ§ Worker å¹¶ç¡®è®¤æ æ§å¥æï¼åèµ°æ¢å¤é¨ç¦ã</p> |
| | | <h3>15.3 æ¶é´åæ°</h3><p>建议åå§ TTL=30 sãç»æ=8 sã让渡ä¸é=30 sï¼å为设计é»è®¤å¼ãæå¨å®¿ä¸»ä»¥åè°æ¶éå¤å®ï¼UTC ä»
ç¨äºæä¹
å/å±ç¤ºï¼å¤æ¥ UTC deadline 转æ¢ä¸ºæä¸éçæ¬å°é¢ç®ãå¿è·³å¤±è´¥åç«å³é»ææ°æä½ï¼æ²¡æææç¡®è®¤ä¸è½æ éå»¶é¿æ¬å°æææãç³»ç»éå¯æå®¿ä¸» epoch åååå
¨é¨æ§ grant 失æï¼å¾
æ ¸å¯¹åéæ°é¢çº¦ã</p></section><section id="recovery"><h2>16ãå¼å¸¸æ¢å¤ä¸éå¯ç¼æ</h2><div class="table-wrap"><table><thead><tr><th>æ
é</th><th>峿¶å¨ä½</th><th>æ¢å¤å¤æ® / ç¦æ¢äºé¡¹</th></tr></thead><tbody><tr><td>Worker å´©æºææçº¿</td><td>åå
¶å¨æåé/订é
åä»»å¡ï¼æ¬åç§çº¦å°æè½¬ RecoveryRequired</td><td>æ ¸å¯¹å¨éä»»å¡ä¸è¾åºï¼è¿ç¨æ»äº¡ä¸çäºè®¾å¤è¾åºå
³é</td></tr><tr><td>Broker å´©æº</td><td>åå½±å DUT æ 记设å¤ä¸å¯ç¨ï¼Supervisor éé¢æèµ·</td><td>æä¹
å epoch+1ï¼RunningâUnknownï¼æ§éå失æï¼è¯»åå Readyï¼ç¦æ¢éæ¾æ§å½ä»¤</td></tr><tr><td>宿主æå/塿»</td><td>å¿è·³è¶
æ¶ãèéçç¥ä»å
¥ï¼æ° owner 䏿¢å </td><td>ç¡®è®¤æ§ I/O 宿主éåºæé离ãç¡¬ä»¶ç¶æå·²ç¥</td></tr><tr><td>TCP/ä¸²å£æçº¿ãUSBéæä¸¾</td><td>Session Faultedï¼ä¸ç¼åå¹¶è¿½åæ§åå½ä»¤</td><td>éæ°è¯å«è®¾å¤åºåå·ãéé/é
ç½®ãè¾åºç¶æï¼æ´æ¢è®¾å¤éé
置审æ¹</td></tr><tr><td>è¶
æ¶/åå
丢失</td><td>åºåæªåéä¸å¯è½å·²æ§è¡ï¼åè
Unknown</td><td>ææ¨¡æ¿è¯»åï¼æ æ³å¤å®å人工æ¢å¤ï¼ä¸æ RetryAdvice ç²å</td></tr><tr><td>DB busy / disk full / æå</td><td>éå¶çéè¯ï¼åæ¢æ¥åæ°åå¨ä½ï¼å
³é®å®¡è®¡å¤±è´¥å³é离</td><td>DB 宿´æ§æ£æ¥ãç©ºé´æ¢å¤ãOutbox è¡¥æï¼ä¸è½ç»å¼ Journal ç»§ç»ç产</td></tr><tr><td>ç³»ç»æçµ/éå¯</td><td>ç±ç¡¬ä»¶ä¿éæè½çç¥ï¼å¯å¨è¿å
¥ Recovering</td><td>æ§ epoch失æï¼æ ¸å¯¹SN/ç©´ä½ãç©çè¾åºå温箱ï¼å建æ¢å¤è®°å½</td></tr><tr><td>é
ç½®Hashä¸ä¸è´</td><td>æç»å¯å¨åæä½</td><td>对é½å®¿ä¸»çæ¬ã驱å¨å
䏿 å°ï¼éæ° Prepare/Apply</td></tr><tr><td>CAN bus-off/UDSä¼è¯å¤±æ</td><td>é离æ»çº¿/ä¼è¯ï¼åæ¢ç¸å
³å¨æä»»å¡ï¼æ è®°æ°æ®è´¨é</td><td>æçéè¿ãå°å/ä¼è¯éæ°å»ºç«ï¼ä¸è½æåè®®ä¼è¯å½æè¿ç»ææ</td></tr><tr><td>å®å
¨èéå¨ä½</td><td>硬件æ§è¡ï¼è½¯ä»¶åæ¢æ°ä»»å¡å¹¶è®°å½åå /åå½±åèµæº</td><td>人工å¤ä½å¹¶è¯»åï¼ç产æ¢å¤å¿
é¡»æ¾å¼æ¹å</td></tr><tr><td>ç»ææ¶è´¹è
æçº¿</td><td>Outbox ä¿çï¼éå¶ç§¯åå¹¶æ¥è¦</td><td>æResultIdè¡¥æï¼æ¶è´¹è
è½çåACKï¼ä¸è½åæå¤±è´¥ç»æ</td></tr></tbody></table></div><h3>16.1 Broker é坿¥éª¤</h3><ol><li>è·å BrokerId åå®ä¾å®å«ï¼åä¸ç©çä¼è¯ä¸å
许åå®ä¾åæ¶å¯å¨ã</li><li>æ°æ®åºçäºå¡å¢å epoch å¹¶è®°å½ boot identityï¼æ§ Active/DrainingâRecoveryRequiredï¼æ§ RunningâUnknownï¼æªå¼å§æ§ä»»å¡âExpiredã</li><li>黿æ®éå请æ±ï¼å è½½ææé
ç½®ï¼éªè¯è®¾å¤èº«ä»½ï¼å»ºç«è¿æ¥ï¼è¯»åè¾åº/éé/åè®®ç¶æã</li><li>æè®¾å¤å®å
¨æ¨¡æ¿æ§è¡ç»å®¡æ ¸çæ¢å¤å¨ä½ãå®å
¨ç¶æä¸æ¯ç»ä¸âææè¾åº Offâï¼æ¸©ç®±ãå·å´ä¸è¢«æµä»¶æåèªå®å
¨è¦æ±ã</li><li>æ¢å¤æ£æ¥ç¹åè¯æ®æä¹
åï¼è¥é人工审æ¹åçå¾
ãå
¨é¨éè¿åèµæº Free/Readyï¼åéç¥ RunServiceã</li><li>RunService 对æ¯ä¸ª DUT è®°å½ä¸æçªå£ä¸æ°æ® Gapï¼å³å®ç»§ç»ãéæ°æ§è¡å¯éå
¥æ¥éª¤æç»æ¢éæµã168 h çé¿æ¶èåå¦ä½è®¡æ¶é¡»æäº§åçç¥å»ç»ã</li></ol> |
| | | <p>Supervisor 建议éé¿ 1/2/5/10/30 sï¼5 åéå
éå¯è¶
è¿ 3 次é宿¥è¦ï¼æ°å¼ä¸ºå¾
éªè¯é»è®¤ã软件é坿¢å¤ä»
表示éä¿¡åç¶ææ¢å¤ï¼ä¸è¡¨ç¤ºæµè¯ç»æèªå¨åæ ¼ã</p></section><section id="deployment"><h2>17ã120 ç©´ä½é¨ç½²æ¹æ¡ä¸å®æ´æ å°</h2><figure><button class="zoom" aria-label="æ¾å¤§å¾3">æ¾å¤§æ¥ç</button><img class="diagram-image" alt="å¾3 V3.0ç®æ æ¶æè®¾è®¡" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPCEtLSBEbyBub3QgZWRpdCB0aGlzIGZpbGUgd2l0aCBlZGl0b3JzIG90aGVyIHRoYW4gZHJhdy5pbyAtLT4KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj4KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHN0eWxlPSJiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IGNvbG9yLXNjaGVtZTogbGlnaHQgZGFyazsiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2ZXJzaW9uPSIxLjEiIHdpZHRoPSIxNTE5cHgiIGhlaWdodD0iOTAzcHgiIHZpZXdCb3g9Ii0wLjUgLTAuNSAxNTE5IDkwMyIgY29udGVudD0iJmx0O214ZmlsZSBob3N0PSZxdW90O0VsZWN0cm9uJnF1b3Q7IGFnZW50PSZxdW90O01vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjA7IFdpbjY0OyB4NjQpIEFwcGxlV2ViS2l0LzUzNy4zNiAoS0hUTUwsIGxpa2UgR2Vja28pIGRyYXcuaW8vMjguMi41IENocm9tZS8xMzguMC43MjA0LjI1MSBFbGVjdHJvbi8zNy42LjEgU2FmYXJpLzUzNy4zNiZxdW90OyB2ZXJzaW9uPSZxdW90OzI4LjIuNSZxdW90OyBwYWdlcz0mcXVvdDszJnF1b3Q7Jmd0OyYjMTA7ICAmbHQ7ZGlhZ3JhbSBuYW1lPSZxdW90O2FyY2hpdGVjdHVyZSZxdW90OyBpZD0mcXVvdDthcmNoaXRlY3R1cmUmcXVvdDsmZ3Q7JiMxMDsgICAgJmx0O214R3JhcGhNb2RlbCBkeD0mcXVvdDstODI0JnF1b3Q7IGR5PSZxdW90Oy0yNDgmcXVvdDsgZ3JpZD0mcXVvdDswJnF1b3Q7IGdyaWRTaXplPSZxdW90OzEwJnF1b3Q7IGd1aWRlcz0mcXVvdDsxJnF1b3Q7IHRvb2x0aXBzPSZxdW90OzEmcXVvdDsgY29ubmVjdD0mcXVvdDsxJnF1b3Q7IGFycm93cz0mcXVvdDsxJnF1b3Q7IGZvbGQ9JnF1b3Q7MCZxdW90OyBwYWdlPSZxdW90OzAmcXVvdDsgcGFnZVNjYWxlPSZxdW90OzEmcXVvdDsgcGFnZVdpZHRoPSZxdW90OzE2MDAmcXVvdDsgcGFnZUhlaWdodD0mcXVvdDs5MDAmcXVvdDsgYmFja2dyb3VuZD0mcXVvdDsjZmZmZmZmJnF1b3Q7IG1hdGg9JnF1b3Q7MCZxdW90OyBzaGFkb3c9JnF1b3Q7MCZxdW90OyZndDsmIzEwOyAgICAgICZsdDtyb290Jmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90OzAmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDswJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7dGl0bGUmcXVvdDsgdmFsdWU9JnF1b3Q7TG9jYWwgKyBEZXZpY2VCcm9rZXLvvJrnu5/kuIDkuJrliqHlhaXlj6PkuI7liIbln58gSS9P77yI55uu5qCH6K6+6K6h77yJJnF1b3Q7IHN0eWxlPSZxdW90O3JvdW5kZWQ9MDt3aGl0ZVNwYWNlPXdyYXA7aHRtbD0xO2FsaWduPWNlbnRlcjt2ZXJ0aWNhbEFsaWduPW1pZGRsZTtmb250RmFtaWx5PU1pY3Jvc29mdCBZYUhlaTtmb250U2l6ZT0yODtzcGFjaW5nPTE0O2ZpbGxDb2xvcj0jZmZmZmZmO3N0cm9rZUNvbG9yPSMzMzU1NmY7c3Ryb2tlV2lkdGg9Mjtmb250U3R5bGU9MTtzdHJva2VDb2xvcj1ub25lOyZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSB4PSZxdW90OzYwJnF1b3Q7IHk9JnF1b3Q7MjQmcXVvdDsgd2lkdGg9JnF1b3Q7MTQ4MCZxdW90OyBoZWlnaHQ9JnF1b3Q7NjAmcXVvdDsgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7Y29uZmlnJnF1b3Q7IHZhbHVlPSZxdW90O+mFjee9riAvIOWPkeW4g+acjeWKoSZhbXA7bHQ7YnImYW1wO2d0O+S4jeWPr+WPmOW/q+eFpyDCtyBIYXNoIMK3IOi3r+eUsSZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MjA7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2VhZjJmODtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7JnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IHg9JnF1b3Q7NjAmcXVvdDsgeT0mcXVvdDsxMjUmcXVvdDsgd2lkdGg9JnF1b3Q7NDAwJnF1b3Q7IGhlaWdodD0mcXVvdDs5NSZxdW90OyBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtobWkmcXVvdDsgdmFsdWU9JnF1b3Q7SE1JIC8g57u05oqk5Lya6K+dJmFtcDtsdDticiZhbXA7Z3Q75p2D6ZmQIMK3IOWNoOeUqOeKtuaAgSDCtyDlrqHorqEmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlYWYyZjg7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSB4PSZxdW90OzYwMCZxdW90OyB5PSZxdW90OzEyNSZxdW90OyB3aWR0aD0mcXVvdDs0MDAmcXVvdDsgaGVpZ2h0PSZxdW90Ozk1JnF1b3Q7IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O3J1biZxdW90OyB2YWx1ZT0mcXVvdDtSdW4gLyBSZWNpcGUgLyBPcGVuVEFQJmFtcDtsdDticiZhbXA7Z3Q7MTIwIERVVENvbnRleHQgwrcg6YC76L6R6IO95YqbJnF1b3Q7IHN0eWxlPSZxdW90O3JvdW5kZWQ9MDt3aGl0ZVNwYWNlPXdyYXA7aHRtbD0xO2FsaWduPWNlbnRlcjt2ZXJ0aWNhbEFsaWduPW1pZGRsZTtmb250RmFtaWx5PU1pY3Jvc29mdCBZYUhlaTtmb250U2l6ZT0yMDtzcGFjaW5nPTE0O2ZpbGxDb2xvcj0jZWFmMmY4O3N0cm9rZUNvbG9yPSMzMzU1NmY7c3Ryb2tlV2lkdGg9MjsmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgeD0mcXVvdDsxMTQwJnF1b3Q7IHk9JnF1b3Q7MTI1JnF1b3Q7IHdpZHRoPSZxdW90OzQwMCZxdW90OyBoZWlnaHQ9JnF1b3Q7OTUmcXVvdDsgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZmFjYWRlJnF1b3Q7IHZhbHVlPSZxdW90O0RldmljZVNlcnZpY2UgKyBSZXNvdXJjZVJvdXRlciZhbXA7bHQ7YnImYW1wO2d0O+aMieW/q+eFp+WumuS9jei1hOa6kCAvIOWuv+S4uyZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MjA7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2VhZjJmODtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7JnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IHg9JnF1b3Q7NjAwJnF1b3Q7IHk9JnF1b3Q7MjkwJnF1b3Q7IHdpZHRoPSZxdW90OzQwMCZxdW90OyBoZWlnaHQ9JnF1b3Q7MTAwJnF1b3Q7IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2UxJnF1b3Q7IHN0eWxlPSZxdW90O2VkZ2VTdHlsZT1vcnRob2dvbmFsRWRnZVN0eWxlO3JvdW5kZWQ9MDtodG1sPTE7ZW5kQXJyb3c9YmxvY2s7c3Ryb2tlV2lkdGg9MjtzdHJva2VDb2xvcj0jODc5NmE1O2Rhc2hlZD0xO2V4aXRYPTAuNTtleGl0WT0xO2VudHJ5WD0wLjI7ZW50cnlZPTA7JnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHNvdXJjZT0mcXVvdDtjb25maWcmcXVvdDsgdGFyZ2V0PSZxdW90O2ZhY2FkZSZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgcmVsYXRpdmU9JnF1b3Q7MSZxdW90OyBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyZndDsmIzEwOyAgICAgICAgICAgICZsdDtBcnJheSBhcz0mcXVvdDtwb2ludHMmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgICAgICZsdDtteFBvaW50IHg9JnF1b3Q7MjYwJnF1b3Q7IHk9JnF1b3Q7MjU1JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICAgICAgICZsdDtteFBvaW50IHg9JnF1b3Q7NjgwJnF1b3Q7IHk9JnF1b3Q7MjU1JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICAgICAmbHQ7L0FycmF5Jmd0OyYjMTA7ICAgICAgICAgICZsdDsvbXhHZW9tZXRyeSZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTImcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7ZXhpdFg9MC41O2V4aXRZPTE7ZW50cnlYPTAuNTtlbnRyeVk9MDsmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc291cmNlPSZxdW90O2htaSZxdW90OyB0YXJnZXQ9JnF1b3Q7ZmFjYWRlJnF1b3Q7IGVkZ2U9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSByZWxhdGl2ZT0mcXVvdDsxJnF1b3Q7IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICAgJmx0O0FycmF5IGFzPSZxdW90O3BvaW50cyZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAgICZsdDsvbXhHZW9tZXRyeSZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTMmcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7ZXhpdFg9MC41O2V4aXRZPTE7ZW50cnlYPTAuODtlbnRyeVk9MDsmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc291cmNlPSZxdW90O3J1biZxdW90OyB0YXJnZXQ9JnF1b3Q7ZmFjYWRlJnF1b3Q7IGVkZ2U9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSByZWxhdGl2ZT0mcXVvdDsxJnF1b3Q7IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICAgJmx0O0FycmF5IGFzPSZxdW90O3BvaW50cyZxdW90OyZndDsmIzEwOyAgICAgICAgICAgICAgJmx0O214UG9pbnQgeD0mcXVvdDsxMzQwJnF1b3Q7IHk9JnF1b3Q7MjU1JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICAgICAgICZsdDtteFBvaW50IHg9JnF1b3Q7OTIwJnF1b3Q7IHk9JnF1b3Q7MjU1JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICAgICAmbHQ7L0FycmF5Jmd0OyYjMTA7ICAgICAgICAgICZsdDsvbXhHZW9tZXRyeSZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7bG9jYWwmcXVvdDsgdmFsdWU9JnF1b3Q7TG9jYWxFeGVjdXRvciAvIExlYXNlU3RvcmUmYW1wO2x0O2JyJmFtcDtndDvmnKzmnLogYXJiLmRiIMK3IOi/nuaOpeWuiOWNqyDCtyBTZXNzaW9uR2F0ZSZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MjA7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2VhZjJmODtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7JnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IHg9JnF1b3Q7MTUwJnF1b3Q7IHk9JnF1b3Q7NDcwJnF1b3Q7IHdpZHRoPSZxdW90OzU0MCZxdW90OyBoZWlnaHQ9JnF1b3Q7MTEwJnF1b3Q7IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2Jyb2tlciZxdW90OyB2YWx1ZT0mcXVvdDtCcm9rZXJDbGllbnQg4oaSIERldmljZUJyb2tlciZhbXA7bHQ7YnImYW1wO2d0O+acrOWfnyBMZWFzZSAvIFRhc2sgLyBRdWV1ZSAvIE91dGJveCZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MjA7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2U4ZjRlZjtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7JnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IHg9JnF1b3Q7OTEwJnF1b3Q7IHk9JnF1b3Q7NDcwJnF1b3Q7IHdpZHRoPSZxdW90OzU0MCZxdW90OyBoZWlnaHQ9JnF1b3Q7MTEwJnF1b3Q7IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2U0JnF1b3Q7IHN0eWxlPSZxdW90O2VkZ2VTdHlsZT1vcnRob2dvbmFsRWRnZVN0eWxlO3JvdW5kZWQ9MDtodG1sPTE7ZW5kQXJyb3c9YmxvY2s7c3Ryb2tlV2lkdGg9MjtzdHJva2VDb2xvcj0jMjg2NDk0OyZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyBzb3VyY2U9JnF1b3Q7ZmFjYWRlJnF1b3Q7IHRhcmdldD0mcXVvdDtsb2NhbCZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgcmVsYXRpdmU9JnF1b3Q7MSZxdW90OyBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtlNSZxdW90OyBzdHlsZT0mcXVvdDtlZGdlU3R5bGU9b3J0aG9nb25hbEVkZ2VTdHlsZTtyb3VuZGVkPTA7aHRtbD0xO2VuZEFycm93PWJsb2NrO3N0cm9rZVdpZHRoPTI7c3Ryb2tlQ29sb3I9IzI4NjQ5NDsmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc291cmNlPSZxdW90O2ZhY2FkZSZxdW90OyB0YXJnZXQ9JnF1b3Q7YnJva2VyJnF1b3Q7IGVkZ2U9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSByZWxhdGl2ZT0mcXVvdDsxJnF1b3Q7IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2xvY2FsaW8mcXVvdDsgdmFsdWU9JnF1b3Q75ZSv5LiAIFdvcmtlciDlhoXnmoQgRGV2aWNlTWFuYWdlciAvIERyaXZlciZhbXA7bHQ7YnImYW1wO2d0O+WbuuWumuW9kuWxnueahOeLrOeriyBUQ1Ag5Lya6K+dJnF1b3Q7IHN0eWxlPSZxdW90O3JvdW5kZWQ9MDt3aGl0ZVNwYWNlPXdyYXA7aHRtbD0xO2FsaWduPWNlbnRlcjt2ZXJ0aWNhbEFsaWduPW1pZGRsZTtmb250RmFtaWx5PU1pY3Jvc29mdCBZYUhlaTtmb250U2l6ZT0yMDtzcGFjaW5nPTE0O2ZpbGxDb2xvcj0jZWFmMmY4O3N0cm9rZUNvbG9yPSMzMzU1NmY7c3Ryb2tlV2lkdGg9MjsmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgeD0mcXVvdDsxNTAmcXVvdDsgeT0mcXVvdDs2NzAmcXVvdDsgd2lkdGg9JnF1b3Q7NTQwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMTAmcXVvdDsgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7YnJva2VyaW8mcXVvdDsgdmFsdWU9JnF1b3Q7QnJva2VyIOWGheeahCBEZXZpY2VNYW5hZ2VyIC8gRHJpdmVyJmFtcDtsdDticiZhbXA7Z3Q75YWx5LqrIFBTVSAvIENBTiAvIFJTNDg1IC8gUExDJnF1b3Q7IHN0eWxlPSZxdW90O3JvdW5kZWQ9MDt3aGl0ZVNwYWNlPXdyYXA7aHRtbD0xO2FsaWduPWNlbnRlcjt2ZXJ0aWNhbEFsaWduPW1pZGRsZTtmb250RmFtaWx5PU1pY3Jvc29mdCBZYUhlaTtmb250U2l6ZT0yMDtzcGFjaW5nPTE0O2ZpbGxDb2xvcj0jZThmNGVmO3N0cm9rZUNvbG9yPSMzMzU1NmY7c3Ryb2tlV2lkdGg9MjsmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgeD0mcXVvdDs5MTAmcXVvdDsgeT0mcXVvdDs2NzAmcXVvdDsgd2lkdGg9JnF1b3Q7NTQwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMTAmcXVvdDsgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTYmcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7JnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHNvdXJjZT0mcXVvdDtsb2NhbCZxdW90OyB0YXJnZXQ9JnF1b3Q7bG9jYWxpbyZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgcmVsYXRpdmU9JnF1b3Q7MSZxdW90OyBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtlNyZxdW90OyBzdHlsZT0mcXVvdDtlZGdlU3R5bGU9b3J0aG9nb25hbEVkZ2VTdHlsZTtyb3VuZGVkPTA7aHRtbD0xO2VuZEFycm93PWJsb2NrO3N0cm9rZVdpZHRoPTI7c3Ryb2tlQ29sb3I9IzI4NjQ5NDsmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc291cmNlPSZxdW90O2Jyb2tlciZxdW90OyB0YXJnZXQ9JnF1b3Q7YnJva2VyaW8mcXVvdDsgZWRnZT0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IHJlbGF0aXZlPSZxdW90OzEmcXVvdDsgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7bGVnZW5kJnF1b3Q7IHZhbHVlPSZxdW90O+Wunue6v++8muiwg+eUqCAvIEkvTyDot6/lvoTjgIDjgIDngbDoibLomZrnur/vvJrphY3nva7kvp3otZbjgIDjgIBUVEwg5Yiw5pyfIOKGkiDpmpTnprvmoLjmn6XvvJvov57mjqXnoa7orqTpgIDlh7rlkI7miY3kuqTmjqUmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTE4O3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNmZmZmZmY7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPW5vbmU7JnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IHg9JnF1b3Q7NjAmcXVvdDsgeT0mcXVvdDs4MTUmcXVvdDsgd2lkdGg9JnF1b3Q7MTQ4MCZxdW90OyBoZWlnaHQ9JnF1b3Q7NTUmcXVvdDsgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAmbHQ7L3Jvb3QmZ3Q7JiMxMDsgICAgJmx0Oy9teEdyYXBoTW9kZWwmZ3Q7JiMxMDsgICZsdDsvZGlhZ3JhbSZndDsmIzEwOyAgJmx0O2RpYWdyYW0gbmFtZT0mcXVvdDtoYW5kb3ZlciZxdW90OyBpZD0mcXVvdDtoYW5kb3ZlciZxdW90OyZndDsmIzEwOyAgICAmbHQ7bXhHcmFwaE1vZGVsIGR4PSZxdW90OzE2MDAmcXVvdDsgZHk9JnF1b3Q7OTAwJnF1b3Q7IGdyaWQ9JnF1b3Q7MSZxdW90OyBncmlkU2l6ZT0mcXVvdDsxMCZxdW90OyBwYWdlPSZxdW90OzEmcXVvdDsgcGFnZVNjYWxlPSZxdW90OzEmcXVvdDsgcGFnZVdpZHRoPSZxdW90OzE2MDAmcXVvdDsgcGFnZUhlaWdodD0mcXVvdDs5MDAmcXVvdDsgYmFja2dyb3VuZD0mcXVvdDsjZmZmZmZmJnF1b3Q7Jmd0OyYjMTA7ICAgICAgJmx0O3Jvb3QmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7MCZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzAmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDt0aXRsZSZxdW90OyB2YWx1ZT0mcXVvdDvotYTmupDkuqTmjqXvvJrlhYjmjpLnqbrjgIHpmpTnprvkuI7moLjmn6XvvIzlho3lhYHorrjmlrAgb3duZXLvvIjnm67moIforr7orqHvvIkmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTI4O3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNmZmZmZmY7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yO2ZvbnRTdHlsZT0xO3N0cm9rZUNvbG9yPW5vbmU7JnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHg9JnF1b3Q7NjAmcXVvdDsgeT0mcXVvdDsyNCZxdW90OyB3aWR0aD0mcXVvdDsxNDgwJnF1b3Q7IGhlaWdodD0mcXVvdDs2MCZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtmcmVlJnF1b3Q7IHZhbHVlPSZxdW90O0ZyZWUgLyBSZWFkeSZhbXA7bHQ7YnImYW1wO2d0O+WFgeiuuOeUs+ivtyZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MjA7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2VhZjJmODtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7JnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHg9JnF1b3Q7ODAmcXVvdDsgeT0mcXVvdDsxNjAmcXVvdDsgd2lkdGg9JnF1b3Q7MzMwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMDUmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7YWN0aXZlJnF1b3Q7IHZhbHVlPSZxdW90O0FjdGl2ZSZhbXA7bHQ7YnImYW1wO2d0O0dyYW50ICsg5ZGo5pyf57ut56efJnF1b3Q7IHN0eWxlPSZxdW90O3JvdW5kZWQ9MDt3aGl0ZVNwYWNlPXdyYXA7aHRtbD0xO2FsaWduPWNlbnRlcjt2ZXJ0aWNhbEFsaWduPW1pZGRsZTtmb250RmFtaWx5PU1pY3Jvc29mdCBZYUhlaTtmb250U2l6ZT0yMDtzcGFjaW5nPTE0O2ZpbGxDb2xvcj0jZWFmMmY4O3N0cm9rZUNvbG9yPSMzMzU1NmY7c3Ryb2tlV2lkdGg9MjsmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgeD0mcXVvdDs2MzUmcXVvdDsgeT0mcXVvdDsxNjAmcXVvdDsgd2lkdGg9JnF1b3Q7MzMwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMDUmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZHJhaW4mcXVvdDsgdmFsdWU9JnF1b3Q7RHJhaW5pbmcmYW1wO2x0O2JyJmFtcDtndDvlgZzmraLmlrDlhpkgLyDmjpLnqbrniYfmrrUmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNmZmYyZDk7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzExOTAmcXVvdDsgeT0mcXVvdDsxNjAmcXVvdDsgd2lkdGg9JnF1b3Q7MzMwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMDUmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTEmcXVvdDsgc291cmNlPSZxdW90O2ZyZWUmcXVvdDsgdGFyZ2V0PSZxdW90O2FjdGl2ZSZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHJlbGF0aXZlPSZxdW90OzEmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTImcXVvdDsgc291cmNlPSZxdW90O2FjdGl2ZSZxdW90OyB0YXJnZXQ9JnF1b3Q7ZHJhaW4mcXVvdDsgZWRnZT0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHN0eWxlPSZxdW90O2VkZ2VTdHlsZT1vcnRob2dvbmFsRWRnZVN0eWxlO3JvdW5kZWQ9MDtodG1sPTE7ZW5kQXJyb3c9YmxvY2s7c3Ryb2tlV2lkdGg9MjtzdHJva2VDb2xvcj0jMjg2NDk0OyZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyByZWxhdGl2ZT0mcXVvdDsxJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2V4cGlyZSZxdW90OyB2YWx1ZT0mcXVvdDvnp5/nuqYgLyDlv4Pot7PlvILluLgmYW1wO2x0O2JyJmFtcDtndDvpmLvmlq3lkI7nu63lhpnlhaUmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNmZmYyZDk7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzYzNSZxdW90OyB5PSZxdW90OzM4NSZxdW90OyB3aWR0aD0mcXVvdDszMzAmcXVvdDsgaGVpZ2h0PSZxdW90OzEwNSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDt2ZXJpZnkmcXVvdDsgdmFsdWU9JnF1b3Q75a6J5YWo5Lqk5o6l5qOA5p+lJmFtcDtsdDticiZhbXA7Z3Q76K+75ZueIMK3IOi/nuaOpemalOemuyDCtyDogZTplIEmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlOGY0ZWY7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzExOTAmcXVvdDsgeT0mcXVvdDszODUmcXVvdDsgd2lkdGg9JnF1b3Q7MzMwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMDUmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTMmcXVvdDsgc291cmNlPSZxdW90O2FjdGl2ZSZxdW90OyB0YXJnZXQ9JnF1b3Q7ZXhwaXJlJnF1b3Q7IGVkZ2U9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyBzdHlsZT0mcXVvdDtlZGdlU3R5bGU9b3J0aG9nb25hbEVkZ2VTdHlsZTtyb3VuZGVkPTA7aHRtbD0xO2VuZEFycm93PWJsb2NrO3N0cm9rZVdpZHRoPTI7c3Ryb2tlQ29sb3I9IzI4NjQ5NDsmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgcmVsYXRpdmU9JnF1b3Q7MSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtlNCZxdW90OyBzb3VyY2U9JnF1b3Q7ZHJhaW4mcXVvdDsgdGFyZ2V0PSZxdW90O3ZlcmlmeSZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHJlbGF0aXZlPSZxdW90OzEmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7cmVjb3ZlcnkmcXVvdDsgdmFsdWU9JnF1b3Q7UmVjb3ZlcnlSZXF1aXJlZCZhbXA7bHQ7YnImYW1wO2d0O+iuvuWkh+eKtuaAgeacquefpSAvIOemgeatoumHjeaOiCZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MjA7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2ZkZWNlZDtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7JnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHg9JnF1b3Q7NjM1JnF1b3Q7IHk9JnF1b3Q7NjEwJnF1b3Q7IHdpZHRoPSZxdW90OzMzMCZxdW90OyBoZWlnaHQ9JnF1b3Q7MTA1JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O25ldyZxdW90OyB2YWx1ZT0mcXVvdDvmo4Dmn6XlkIjmoLwg4oaSIEZyZWUmYW1wO2x0O2JyJmFtcDtndDvph43mlrDnlLPor7fmlrAgR3JhbnQmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlOGY0ZWY7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzExOTAmcXVvdDsgeT0mcXVvdDs2MTAmcXVvdDsgd2lkdGg9JnF1b3Q7MzMwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMDUmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTUmcXVvdDsgc291cmNlPSZxdW90O2V4cGlyZSZxdW90OyB0YXJnZXQ9JnF1b3Q7cmVjb3ZlcnkmcXVvdDsgZWRnZT0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHN0eWxlPSZxdW90O2VkZ2VTdHlsZT1vcnRob2dvbmFsRWRnZVN0eWxlO3JvdW5kZWQ9MDtodG1sPTE7ZW5kQXJyb3c9YmxvY2s7c3Ryb2tlV2lkdGg9MjtzdHJva2VDb2xvcj0jMjg2NDk0OyZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyByZWxhdGl2ZT0mcXVvdDsxJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2U2JnF1b3Q7IHNvdXJjZT0mcXVvdDt2ZXJpZnkmcXVvdDsgdGFyZ2V0PSZxdW90O25ldyZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHJlbGF0aXZlPSZxdW90OzEmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTcmcXVvdDsgc291cmNlPSZxdW90O3JlY292ZXJ5JnF1b3Q7IHRhcmdldD0mcXVvdDt2ZXJpZnkmcXVvdDsgZWRnZT0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHN0eWxlPSZxdW90O2VkZ2VTdHlsZT1vcnRob2dvbmFsRWRnZVN0eWxlO3JvdW5kZWQ9MDtodG1sPTE7ZW5kQXJyb3c9YmxvY2s7c3Ryb2tlV2lkdGg9MjtzdHJva2VDb2xvcj0jMjg2NDk0O2V4aXRYPTE7ZXhpdFk9MC41O2VudHJ5WD0wO2VudHJ5WT0wLjU7JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHJlbGF0aXZlPSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgICAmbHQ7QXJyYXkgYXM9JnF1b3Q7cG9pbnRzJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICAgICAmbHQ7bXhQb2ludCB4PSZxdW90OzEwODAmcXVvdDsgeT0mcXVvdDs2NjIuNSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAgICAgICAmbHQ7bXhQb2ludCB4PSZxdW90OzEwODAmcXVvdDsgeT0mcXVvdDs0MzcuNSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAgICAgJmx0Oy9BcnJheSZndDsmIzEwOyAgICAgICAgICAmbHQ7L214R2VvbWV0cnkmZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2xpbWl0cyZxdW90OyB2YWx1ZT0mcXVvdDvlvILluLjot6/lvoTor7TmmI4mYW1wO2x0O2JyJmFtcDtndDsmYW1wO2x0O2JyJmFtcDtndDtEcmFpbmluZyDotoXml7YgLyDmo4Dmn6XlpLHotKUmYW1wO2x0O2JyJmFtcDtndDvihpIgUmVjb3ZlcnlSZXF1aXJlZCZhbXA7bHQ7YnImYW1wO2d0OyZhbXA7bHQ7YnImYW1wO2d0O0Jyb2tlciDph43lkK/vvJplcG9jaCArIDEmYW1wO2x0O2JyJmFtcDtndDvml6cgR3JhbnQg5YWo6YOo5aSx5pWIJmFtcDtsdDticiZhbXA7Z3Q7JmFtcDtsdDticiZhbXA7Z3Q7TG9jYWwg5pen5a6I5Y2r5pyq6YCA5Ye6JmFtcDtsdDticiZhbXA7Z3Q74oaSIOS/neaMgemalOemu++8jOS4jeaMiSBUVEwg5oqi5Y2gJnF1b3Q7IHN0eWxlPSZxdW90O3JvdW5kZWQ9MDt3aGl0ZVNwYWNlPXdyYXA7aHRtbD0xO2FsaWduPWNlbnRlcjt2ZXJ0aWNhbEFsaWduPW1pZGRsZTtmb250RmFtaWx5PU1pY3Jvc29mdCBZYUhlaTtmb250U2l6ZT0yMDtzcGFjaW5nPTE0O2ZpbGxDb2xvcj0jZmZmZmZmO3N0cm9rZUNvbG9yPSMzMzU1NmY7c3Ryb2tlV2lkdGg9MjsmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgeD0mcXVvdDs4MCZxdW90OyB5PSZxdW90OzM4NSZxdW90OyB3aWR0aD0mcXVvdDszMzAmcXVvdDsgaGVpZ2h0PSZxdW90OzMzMCZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtsZWdlbmQmcXVvdDsgdmFsdWU9JnF1b3Q75a6e57q/77ya5q2j5bi455Sz6K+35oiW5oGi5aSN5o6o6L+b44CA44CA5byC5bi45Yiw5pyf5LiN55u05o6l6L2sIEZyZWXjgIDjgIDmnKrnoa7orqTnmoTlt7Llj5Hlkb3ku6Qg4oaSIFVua25vd24gLyDmgaLlpI3mo4Dmn6UmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTE4O3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNmZmZmZmY7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPW5vbmU7JnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHg9JnF1b3Q7NjAmcXVvdDsgeT0mcXVvdDs4MTAmcXVvdDsgd2lkdGg9JnF1b3Q7MTQ4MCZxdW90OyBoZWlnaHQ9JnF1b3Q7NTUmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAmbHQ7L3Jvb3QmZ3Q7JiMxMDsgICAgJmx0Oy9teEdyYXBoTW9kZWwmZ3Q7JiMxMDsgICZsdDsvZGlhZ3JhbSZndDsmIzEwOyAgJmx0O2RpYWdyYW0gbmFtZT0mcXVvdDtkZXBsb3ltZW50MTIwJnF1b3Q7IGlkPSZxdW90O2RlcGxveW1lbnQxMjAmcXVvdDsmZ3Q7JiMxMDsgICAgJmx0O214R3JhcGhNb2RlbCBkeD0mcXVvdDsxNjAwJnF1b3Q7IGR5PSZxdW90OzkwMCZxdW90OyBncmlkPSZxdW90OzEmcXVvdDsgZ3JpZFNpemU9JnF1b3Q7MTAmcXVvdDsgcGFnZT0mcXVvdDsxJnF1b3Q7IHBhZ2VTY2FsZT0mcXVvdDsxJnF1b3Q7IHBhZ2VXaWR0aD0mcXVvdDsxNjAwJnF1b3Q7IHBhZ2VIZWlnaHQ9JnF1b3Q7OTAwJnF1b3Q7IGJhY2tncm91bmQ9JnF1b3Q7I2ZmZmZmZiZxdW90OyZndDsmIzEwOyAgICAgICZsdDtyb290Jmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90OzAmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDswJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7dGl0bGUmcXVvdDsgdmFsdWU9JnF1b3Q7MTIwIOeptOS9je+8mjYgV29ya2VyICsgMyBCcm9rZXIg5Z+f77yIMTXDlzggUFNVIOWfuue6vyAvIOW7uuiuru+8iSZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9Mjg7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2ZmZmZmZjtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7Zm9udFN0eWxlPTE7c3Ryb2tlQ29sb3I9bm9uZTsmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgeD0mcXVvdDs2MCZxdW90OyB5PSZxdW90OzI0JnF1b3Q7IHdpZHRoPSZxdW90OzE0ODAmcXVvdDsgaGVpZ2h0PSZxdW90OzYwJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2htaSZxdW90OyB2YWx1ZT0mcXVvdDtJUEMtMDHvvJpITUkgLyBSdW5TZXJ2aWNlIC8gU3VwZXJ2aXNvciZhbXA7bHQ7YnImYW1wO2d0O+mFjee9ruW/q+eFp+S4jue7k+aenOe0ouW8le+8m1Jlc3VsdFdyaXRlciDni6znq4vokL3nm5gmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlYWYyZjg7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzUwMCZxdW90OyB5PSZxdW90OzExMCZxdW90OyB3aWR0aD0mcXVvdDs2MDAmcXVvdDsgaGVpZ2h0PSZxdW90Ozk1JnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O3cxJnF1b3Q7IHZhbHVlPSZxdW90O1cwMSArIFcwMiZhbXA7bHQ7YnImYW1wO2d0O1MwMDHigJNTMDQwIMK3IDLDlzIwIERVVENvbnRleHQmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlYWYyZjg7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzYwJnF1b3Q7IHk9JnF1b3Q7MzE1JnF1b3Q7IHdpZHRoPSZxdW90OzQwMCZxdW90OyBoZWlnaHQ9JnF1b3Q7MTAwJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2IxJnF1b3Q7IHZhbHVlPSZxdW90O0Jyb2tlciBCMDEmYW1wO2x0O2JyJmFtcDtndDvllK/kuIDlrr/kuLsgwrcg5pys5Z+fIERCIC8g6Zif5YiXJnF1b3Q7IHN0eWxlPSZxdW90O3JvdW5kZWQ9MDt3aGl0ZVNwYWNlPXdyYXA7aHRtbD0xO2FsaWduPWNlbnRlcjt2ZXJ0aWNhbEFsaWduPW1pZGRsZTtmb250RmFtaWx5PU1pY3Jvc29mdCBZYUhlaTtmb250U2l6ZT0yMDtzcGFjaW5nPTE0O2ZpbGxDb2xvcj0jZThmNGVmO3N0cm9rZUNvbG9yPSMzMzU1NmY7c3Ryb2tlV2lkdGg9MjsmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgeD0mcXVvdDs2MCZxdW90OyB5PSZxdW90OzUyMCZxdW90OyB3aWR0aD0mcXVvdDs0MDAmcXVvdDsgaGVpZ2h0PSZxdW90OzEwMCZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtwMSZxdW90OyB2YWx1ZT0mcXVvdDtQU1UwMeKAk1BTVTA1JmFtcDtsdDticiZhbXA7Z3Q7NSDlj7Agw5cgOCDpgJrpgZMgPSA0MCDnqbTkvY0mcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlYWYyZjg7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzYwJnF1b3Q7IHk9JnF1b3Q7NzI1JnF1b3Q7IHdpZHRoPSZxdW90OzQwMCZxdW90OyBoZWlnaHQ9JnF1b3Q7MTAwJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2UxYSZxdW90OyBzb3VyY2U9JnF1b3Q7aG1pJnF1b3Q7IHRhcmdldD0mcXVvdDt3MSZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHJlbGF0aXZlPSZxdW90OzEmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTFiJnF1b3Q7IHNvdXJjZT0mcXVvdDt3MSZxdW90OyB0YXJnZXQ9JnF1b3Q7YjEmcXVvdDsgZWRnZT0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHN0eWxlPSZxdW90O2VkZ2VTdHlsZT1vcnRob2dvbmFsRWRnZVN0eWxlO3JvdW5kZWQ9MDtodG1sPTE7ZW5kQXJyb3c9YmxvY2s7c3Ryb2tlV2lkdGg9MjtzdHJva2VDb2xvcj0jMjg2NDk0OyZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyByZWxhdGl2ZT0mcXVvdDsxJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2UxYyZxdW90OyBzb3VyY2U9JnF1b3Q7YjEmcXVvdDsgdGFyZ2V0PSZxdW90O3AxJnF1b3Q7IGVkZ2U9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyBzdHlsZT0mcXVvdDtlZGdlU3R5bGU9b3J0aG9nb25hbEVkZ2VTdHlsZTtyb3VuZGVkPTA7aHRtbD0xO2VuZEFycm93PWJsb2NrO3N0cm9rZVdpZHRoPTI7c3Ryb2tlQ29sb3I9IzI4NjQ5NDsmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgcmVsYXRpdmU9JnF1b3Q7MSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDt3MiZxdW90OyB2YWx1ZT0mcXVvdDtXMDMgKyBXMDQmYW1wO2x0O2JyJmFtcDtndDtTMDQx4oCTUzA4MCDCtyAyw5cyMCBEVVRDb250ZXh0JnF1b3Q7IHN0eWxlPSZxdW90O3JvdW5kZWQ9MDt3aGl0ZVNwYWNlPXdyYXA7aHRtbD0xO2FsaWduPWNlbnRlcjt2ZXJ0aWNhbEFsaWduPW1pZGRsZTtmb250RmFtaWx5PU1pY3Jvc29mdCBZYUhlaTtmb250U2l6ZT0yMDtzcGFjaW5nPTE0O2ZpbGxDb2xvcj0jZWFmMmY4O3N0cm9rZUNvbG9yPSMzMzU1NmY7c3Ryb2tlV2lkdGg9MjsmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgeD0mcXVvdDs2MDAmcXVvdDsgeT0mcXVvdDszMTUmcXVvdDsgd2lkdGg9JnF1b3Q7NDAwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMDAmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7YjImcXVvdDsgdmFsdWU9JnF1b3Q7QnJva2VyIEIwMiZhbXA7bHQ7YnImYW1wO2d0O+WUr+S4gOWuv+S4uyDCtyDmnKzln58gREIgLyDpmJ/liJcmcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlOGY0ZWY7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzYwMCZxdW90OyB5PSZxdW90OzUyMCZxdW90OyB3aWR0aD0mcXVvdDs0MDAmcXVvdDsgaGVpZ2h0PSZxdW90OzEwMCZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtwMiZxdW90OyB2YWx1ZT0mcXVvdDtQU1UwNuKAk1BTVTEwJmFtcDtsdDticiZhbXA7Z3Q7NSDlj7Agw5cgOCDpgJrpgZMgPSA0MCDnqbTkvY0mcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlYWYyZjg7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzYwMCZxdW90OyB5PSZxdW90OzcyNSZxdW90OyB3aWR0aD0mcXVvdDs0MDAmcXVvdDsgaGVpZ2h0PSZxdW90OzEwMCZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtlMmEmcXVvdDsgc291cmNlPSZxdW90O2htaSZxdW90OyB0YXJnZXQ9JnF1b3Q7dzImcXVvdDsgZWRnZT0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHN0eWxlPSZxdW90O2VkZ2VTdHlsZT1vcnRob2dvbmFsRWRnZVN0eWxlO3JvdW5kZWQ9MDtodG1sPTE7ZW5kQXJyb3c9YmxvY2s7c3Ryb2tlV2lkdGg9MjtzdHJva2VDb2xvcj0jMjg2NDk0OyZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyByZWxhdGl2ZT0mcXVvdDsxJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2UyYiZxdW90OyBzb3VyY2U9JnF1b3Q7dzImcXVvdDsgdGFyZ2V0PSZxdW90O2IyJnF1b3Q7IGVkZ2U9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyBzdHlsZT0mcXVvdDtlZGdlU3R5bGU9b3J0aG9nb25hbEVkZ2VTdHlsZTtyb3VuZGVkPTA7aHRtbD0xO2VuZEFycm93PWJsb2NrO3N0cm9rZVdpZHRoPTI7c3Ryb2tlQ29sb3I9IzI4NjQ5NDsmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgcmVsYXRpdmU9JnF1b3Q7MSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtlMmMmcXVvdDsgc291cmNlPSZxdW90O2IyJnF1b3Q7IHRhcmdldD0mcXVvdDtwMiZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHJlbGF0aXZlPSZxdW90OzEmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7dzMmcXVvdDsgdmFsdWU9JnF1b3Q7VzA1ICsgVzA2JmFtcDtsdDticiZhbXA7Z3Q7UzA4MeKAk1MxMjAgwrcgMsOXMjAgRFVUQ29udGV4dCZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MjA7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2VhZjJmODtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7JnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHg9JnF1b3Q7MTE0MCZxdW90OyB5PSZxdW90OzMxNSZxdW90OyB3aWR0aD0mcXVvdDs0MDAmcXVvdDsgaGVpZ2h0PSZxdW90OzEwMCZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtiMyZxdW90OyB2YWx1ZT0mcXVvdDtCcm9rZXIgQjAzJmFtcDtsdDticiZhbXA7Z3Q75ZSv5LiA5a6/5Li7IMK3IOacrOWfnyBEQiAvIOmYn+WIlyZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MjA7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2U4ZjRlZjtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7JnF1b3Q7IHZlcnRleD0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHg9JnF1b3Q7MTE0MCZxdW90OyB5PSZxdW90OzUyMCZxdW90OyB3aWR0aD0mcXVvdDs0MDAmcXVvdDsgaGVpZ2h0PSZxdW90OzEwMCZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtwMyZxdW90OyB2YWx1ZT0mcXVvdDtQU1UxMeKAk1BTVTE1JmFtcDtsdDticiZhbXA7Z3Q7NSDlj7Agw5cgOCDpgJrpgZMgPSA0MCDnqbTkvY0mcXVvdDsgc3R5bGU9JnF1b3Q7cm91bmRlZD0wO3doaXRlU3BhY2U9d3JhcDtodG1sPTE7YWxpZ249Y2VudGVyO3ZlcnRpY2FsQWxpZ249bWlkZGxlO2ZvbnRGYW1pbHk9TWljcm9zb2Z0IFlhSGVpO2ZvbnRTaXplPTIwO3NwYWNpbmc9MTQ7ZmlsbENvbG9yPSNlYWYyZjg7c3Ryb2tlQ29sb3I9IzMzNTU2ZjtzdHJva2VXaWR0aD0yOyZxdW90OyB2ZXJ0ZXg9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyB4PSZxdW90OzExNDAmcXVvdDsgeT0mcXVvdDs3MjUmcXVvdDsgd2lkdGg9JnF1b3Q7NDAwJnF1b3Q7IGhlaWdodD0mcXVvdDsxMDAmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTNhJnF1b3Q7IHNvdXJjZT0mcXVvdDtobWkmcXVvdDsgdGFyZ2V0PSZxdW90O3czJnF1b3Q7IGVkZ2U9JnF1b3Q7MSZxdW90OyBwYXJlbnQ9JnF1b3Q7MSZxdW90OyBzdHlsZT0mcXVvdDtlZGdlU3R5bGU9b3J0aG9nb25hbEVkZ2VTdHlsZTtyb3VuZGVkPTA7aHRtbD0xO2VuZEFycm93PWJsb2NrO3N0cm9rZVdpZHRoPTI7c3Ryb2tlQ29sb3I9IzI4NjQ5NDsmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgcmVsYXRpdmU9JnF1b3Q7MSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICAgJmx0O214Q2VsbCBpZD0mcXVvdDtlM2ImcXVvdDsgc291cmNlPSZxdW90O3czJnF1b3Q7IHRhcmdldD0mcXVvdDtiMyZxdW90OyBlZGdlPSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsgc3R5bGU9JnF1b3Q7ZWRnZVN0eWxlPW9ydGhvZ29uYWxFZGdlU3R5bGU7cm91bmRlZD0wO2h0bWw9MTtlbmRBcnJvdz1ibG9jaztzdHJva2VXaWR0aD0yO3N0cm9rZUNvbG9yPSMyODY0OTQ7JnF1b3Q7Jmd0OyYjMTA7ICAgICAgICAgICZsdDtteEdlb21ldHJ5IGFzPSZxdW90O2dlb21ldHJ5JnF1b3Q7IHJlbGF0aXZlPSZxdW90OzEmcXVvdDsgLyZndDsmIzEwOyAgICAgICAgJmx0Oy9teENlbGwmZ3Q7JiMxMDsgICAgICAgICZsdDtteENlbGwgaWQ9JnF1b3Q7ZTNjJnF1b3Q7IHNvdXJjZT0mcXVvdDtiMyZxdW90OyB0YXJnZXQ9JnF1b3Q7cDMmcXVvdDsgZWRnZT0mcXVvdDsxJnF1b3Q7IHBhcmVudD0mcXVvdDsxJnF1b3Q7IHN0eWxlPSZxdW90O2VkZ2VTdHlsZT1vcnRob2dvbmFsRWRnZVN0eWxlO3JvdW5kZWQ9MDtodG1sPTE7ZW5kQXJyb3c9YmxvY2s7c3Ryb2tlV2lkdGg9MjtzdHJva2VDb2xvcj0jMjg2NDk0OyZxdW90OyZndDsmIzEwOyAgICAgICAgICAmbHQ7bXhHZW9tZXRyeSBhcz0mcXVvdDtnZW9tZXRyeSZxdW90OyByZWxhdGl2ZT0mcXVvdDsxJnF1b3Q7IC8mZ3Q7JiMxMDsgICAgICAgICZsdDsvbXhDZWxsJmd0OyYjMTA7ICAgICAgICAmbHQ7bXhDZWxsIGlkPSZxdW90O2xlZ2VuZCZxdW90OyB2YWx1ZT0mcXVvdDtDQU4gLyBQTEMgLyDmuKnnrrHmjInnnJ/lrp7niannkIbkuI4gU0RLIOWfn+WbuuWumuWUr+S4gOWuv+S4u++8iFRCRO+8ie+8m+WFseS6q+iuvuWkh+S4jeWboOWIhiAzIOWfn+iAjOWkjeWItui/nuaOpeOAgiZxdW90OyBzdHlsZT0mcXVvdDtyb3VuZGVkPTA7d2hpdGVTcGFjZT13cmFwO2h0bWw9MTthbGlnbj1jZW50ZXI7dmVydGljYWxBbGlnbj1taWRkbGU7Zm9udEZhbWlseT1NaWNyb3NvZnQgWWFIZWk7Zm9udFNpemU9MTg7c3BhY2luZz0xNDtmaWxsQ29sb3I9I2ZmZmZmZjtzdHJva2VDb2xvcj0jMzM1NTZmO3N0cm9rZVdpZHRoPTI7c3Ryb2tlQ29sb3I9bm9uZTsmcXVvdDsgdmVydGV4PSZxdW90OzEmcXVvdDsgcGFyZW50PSZxdW90OzEmcXVvdDsmZ3Q7JiMxMDsgICAgICAgICAgJmx0O214R2VvbWV0cnkgYXM9JnF1b3Q7Z2VvbWV0cnkmcXVvdDsgeD0mcXVvdDs2MCZxdW90OyB5PSZxdW90Ozg0NSZxdW90OyB3aWR0aD0mcXVvdDsxNDgwJnF1b3Q7IGhlaWdodD0mcXVvdDs0NSZxdW90OyAvJmd0OyYjMTA7ICAgICAgICAmbHQ7L214Q2VsbCZndDsmIzEwOyAgICAgICZsdDsvcm9vdCZndDsmIzEwOyAgICAmbHQ7L214R3JhcGhNb2RlbCZndDsmIzEwOyAgJmx0Oy9kaWFncmFtJmd0OyYjMTA7Jmx0Oy9teGZpbGUmZ3Q7JiMxMDsiPjxkZWZzLz48Zz48ZyBkYXRhLWNlbGwtaWQ9IjAiPjxnIGRhdGEtY2VsbC1pZD0iMSI+PGcgZGF0YS1jZWxsLWlkPSJ0aXRsZSI+PGc+PHJlY3QgeD0iMTMiIHk9IjEyIiB3aWR0aD0iMTQ4MCIgaGVpZ2h0PSI2MCIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSJub25lIiBwb2ludGVyLWV2ZW50cz0iYWxsIiBzdHlsZT0iZmlsbDogbGlnaHQtZGFyayhyZ2IoMjU1LCAyNTUsIDI1NSksIHJnYigxOCwgMTgsIDE4KSk7Ii8+PC9nPjxnPjxnPjxzd2l0Y2g+PGZvcmVpZ25PYmplY3Qgc3R5bGU9Im92ZXJmbG93OiB2aXNpYmxlOyB0ZXh0LWFsaWduOiBsZWZ0OyIgcG9pbnRlci1ldmVudHM9Im5vbmUiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHJlcXVpcmVkRmVhdHVyZXM9Imh0dHA6Ly93d3cudzMub3JnL1RSL1NWRzExL2ZlYXR1cmUjRXh0ZW5zaWJpbGl0eSI+PGRpdiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiB1bnNhZmUgY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IHVuc2FmZSBjZW50ZXI7IHdpZHRoOiAxNDU0cHg7IGhlaWdodDogMXB4OyBwYWRkaW5nLXRvcDogNDJweDsgbWFyZ2luLWxlZnQ6IDI2cHg7Ij48ZGl2IHN0eWxlPSJib3gtc2l6aW5nOiBib3JkZXItYm94OyBmb250LXNpemU6IDA7IHRleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICMwMDAwMDA7ICI+PGRpdiBzdHlsZT0iZGlzcGxheTogaW5saW5lLWJsb2NrOyBmb250LXNpemU6IDI4cHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtNaWNyb3NvZnQgWWFIZWkmcXVvdDs7IGNvbG9yOiBsaWdodC1kYXJrKCMwMDAwMDAsICNmZmZmZmYpOyBsaW5lLWhlaWdodDogMS4yOyBwb2ludGVyLWV2ZW50czogYWxsOyBmb250LXdlaWdodDogYm9sZDsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd29yZC13cmFwOiBub3JtYWw7ICI+MTIwIOeptOS9je+8mjYgV29ya2VyICsgMyBCcm9rZXIg5Z+f77yIMTXDlzggUFNVIOWfuue6vyAvIOW7uuiuru+8iTwvZGl2PjwvZGl2PjwvZGl2PjwvZm9yZWlnbk9iamVjdD48aW1hZ2UgeD0iMjYiIHk9IjI1LjUiIHdpZHRoPSIxNDU0IiBoZWlnaHQ9IjQxIiB4bGluazpocmVmPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBRnJnQUFBQ2tDQVlBQUFCaVpPcXZBQUFBQVhOU1IwSUFyczRjNlFBQUlBQkpSRUZVZUY3c3ZRa1VOVlY1cHZzMklrdmxxaWdvS0NDS1E1aWlya1JBQkdSUVFHaTdiVkFaQkF4WFVER0lPUGE5VWVNVUpCcG5oQWdvTnJjQlJZM2FLaUtUd21VUWNFaU1BODRpVncyaUNLTFlHQWE5OWVvKzhmeUhNMVR0L2RVNVZlYzhlNjEvL1QrY1BUNTdWOVdldnZmN1R5SkFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUtBQmdmL1VJQzVSSVFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQWdCSzRaQkJDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBS05DQ0J3M1FnWGtTRUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFRdUdZTVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRFFpZ01CMUkxeEVoZ0FFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUVEZ21qRUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnMElnQUF0ZU5jQkVaQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFJRnJ4Z0FFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQUl3SUlYRGZDUldRSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJCSzRaQXhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBS05DQ0J3M1FnWGtTRUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFRdUdZTVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRFFpZ01CMUkxeEVoZ0FFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUVEZ21qRUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnMElnQUF0ZU5jQkVaQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFJRnJ4Z0FFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQUl3SUlYRGZDUldRSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJCSzRaQXhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNIU0J3TjBrclMvcG9aSWVLV2w3U1Z0SjJrelNzeVZkMFlWS1VvZFdDZHhYMGhNbFhTdnBxNjJXUk9ZUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQk9aRDRQK1FkTytNb202VGRLT2szMmVrSlFrRUlBQUJDRUFBQWhDQUFBUWdBSUZvQXI3SHMybG1wcjd6ODVQTXRHMG11NmVrWFNXdG0xSElEWkl1azNSSFJ0cDVKMW03Si9XY054Zktnd0FFSUxEcUJLd3pzbVc2cTN1R3BOdFhIUWp0aHdBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ1RJQ0NGeVg4U00xQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQzlRbXNKOGtpeG85T0YrTzNUcGZqTjVsaExIYWtwSlByRjdOeU1TMlFjb1NrS3lWOXVVZUdCbmVYOUJoSno1UjBRQkl6ZCtlZEoybGZTYmV1WEUvU1lBaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUdEWkNQeGZrdDZVMGFqL1Y5SlRKZDJTa1haUlNaNHM2WHhKVFcwVS9uZHlmdWo5N1NiaFFaTHNQUFBIVFJJUkZ3SVFnQUFFSUFBQkNFQUFBaERJSXZEL0pBZjFPWW4vcTZSUDVTUnNPWTNYRkw1cjg1Q01jdnF5WnZNOXJVOUwrblcxZnZvN1NWZEp1ak9qdlpGSjNpN3BHUmtaL2xMU3daSytWaU90N3lRZG40UzlYeWZwRnpYU0VBVUNFRmlUZ084a25pMXBsNFpnY3ZkNUdoWkQ5QUlDNjBzNlhOSXhraDRzeVk3MnZLOTNhVUdlSklVQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSU5MNDhDaklJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ1VJZkFwcEplV29rVjd5QnBjMGtQcUpOb1FweVBTam93R1IwVlpMTzBTWGVxREVrdWtyUzJwTjlKdWxEUys1S1F5TTBkYXJWRlRUYXJETTJlbnZyemNSUHE1alk4UmRJRkhhbzdWWUVBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdrRU5nbFFTdS8xTFNKWkx1MVJCVVUrR2plMWJpWkVkWGUrTEhTdnFocEQwa1hkdXdUS0pEQUFJUWdBQUVJQUFCQ0VBQUFzMElJSEM5SnErK0NGenZKK21maGh3Ui9WelNXeVdkdWtEUjUxZEtlbU96NGZlSDJFM1dqa2RLZWs4cTQvYnF6dG1ySmIxYjBxMFo1WklFQXF0S0FJSHJ1L2E4SGEzdG45NHBoMGo2bHg0TkRndi9iNWZxN3J1Wm8rRXNTWWR5UjdkSFBVcFZJUUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaDBrSUNGQkFnUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFJSnBBcm9IRHVIcGNYUWs0N3lMcGh1aEtMa2wrTnZxeThkZTQ4RzFKNzVEMHZ5UmR2NEQycmw4Sm11d3U2UUJKLzdVeVVMT2hSSjF3ZGpJR3diQ3NEaTNpUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBbDBsZ01EMTdKN3hQckRQQUw0NEk2cHRIM2FUZElxa2h3L0YvV3h5ck5nbGg0K3pXMDBNQ0VBQUFoQ0FBQVFnQUFFSTlJc0FBdGRyOWxjZkJLN3RIT2pqa3ZhYU1OU3VsSFNjcEhNbFdRUjZYaUYzblZ4WDROb0NydWRKV20ra1FSYjNQa2JTaHlYZE9hL0dVZzRFZWt3ZzkvNW4zV2UxYjJpMmtuU2FwRzFUeGZ1eUg3V3BwQmRYZDBkZklNbmZoVW5oTmttN1Z0K01LL3JXTWRRWEFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRXVrTUFnZXZ1OUFVMWdRQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRZ3NHNEZwd3N0TjJucEhFcTI0ckVtaUZZbDdQMG5uUzNwY2pmYittNlF6a3FIRmQxbzAxdG9pR1VROG94SWFlWENOZW8yTFlvT0pKMHU2TkRNOXlTQUFBUWhBQUFJUVdBeUJ3eVZ0WDFqMGpaTGVWQmxaL3JJd0g1SkRBQUlRZ0FBRUlBQUJDT1FSWUU2WHg0MVVFSmhFSUZlNHF3OWlhYU50L3N2SzRlRWxrdTZWTVJ6c0lQRlRVOUp0SXVsNFNmdE9pUE5lU1VmTldaUXRvNWtrZ1FBRUlBQUJDRUFBQWhDQVFHOEpJSEM5WnRmMVljMjJReVZXZW5FbFlyM09qRkZucDBQdnFRU2gzeW5wUjNNWW9ibnI1RHFpdVY0N1hpREpkNWNtQlR0WE9relMxWE5vSzBWQW9NOEVFTGorWSsvNXZmSjJTYzhjMDVrblNUcGFrdSszZGltc20vYlFYaWJwc1EwcWRxcWtJenZZbmdaTklDb0VJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRZ3NrZ0FDMTR1a1Q5a1FnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFnZVVtWUlGaWl5OUhuRWY0NHZ6Snk0MHJxM1c1akcrWDlBRkovMTNTejdKS25weG9teVJNdlY1aHZtZEpPaFNEaVVLS0pJY0FCQ0FBQVFqTWwwQ0p1TUdncHYrZnBNZEx1bTYrVmFjMENFQUFBaENBQUFRZ0FJRkVnRGtkUXdFQ3NRUnloYnY2SUpZMlNxb05nZXQ3SnFHZ1l5WGRmVWJYbVBWYkpQMCt0Z3ZKRFFJUWdBQUVJQUFCQ0VBQUFoQ1FWTEpmTU11aHphSUFQMGpTbFpJZWtsR0JycS9aMXBaazRWVTdNbXNTTFA3OGQ5VlozYmt0T2hES1hTZlBFcmoybXZGRVNjK3QyV0R6ZVFObmtqVnBFVzBWQ2F5NndIV2RQYW5mVldMNSswdjZhTWNHeUlHU1BwaFJKenNoMzFuUzF6UFNrZ1FDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnRUNJb0FVWUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnTUk3QXhwSXVsN1JaQUI2TE1SK0NNTVZkU0I2ZnhEMXlFTGRsYkpkckpEZmFodHNrN1NycGlwekdrUVlDRUlBQUJDQUFnWVVRS0JFM0dGUVlnZXVGZEIyRlFnQUNFSUFBQkNBQWdmOGd3SnlPd1FDQldBSzV3bDF0N2QvR3RtN04zQ0lGcnUwNGN6ZEpwMGg2ZU0xS2QxVlVxR2IxaVFZQkNFQUFBaENBQUFRZ0FJRk9FeWpaTDBEZ2V2NWRXK3FjL2lmcHpzNzNXcWo2ZnBsaXNMTUVybDhtNmEwTjYzdTdwRmRMZXJla1d4dW1KVG9FbHAzQXFncGMzeTJKVmxzRS96NDFPdG1pMEx0TCtwY2FjZWNWWmNQcUhYNnhwQzB5Q3JTamdLTzVwNXRCamlRUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNDQXdEVmpBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VGZ1lnVWRKZXFHa2U5U3N3VDlLK2tyTnVIMkt0cDZrZXc1VitOZVNidWxUQTFxcXF5K0pyeS9KZnp2WWdNUVh3UW45SW1BQml2ZExPaXlnMmxkTDJxVjZiOXdRa05leVpGRmlpR0FHTmtRNG9TVVlPeVFqaVhVSzg4ZGdvaEFneVh0RllIUk9ZSkgzR3pFWTZsVWZVbGtJUUVBcUVUY1k4RVBnbXBFRUFRaEFvQm1CMFQwVXA3NUowbStiWlVOc0NFQUFBdjlCZ0RrZGd3RUNzUVFRdUs3SGMxandibDFKRmhHeTA4dW13V2RKZTBuNlF0T0V4SWRBSmdHZmhUMnRHblA3MUV6dlBkODNjZTVaa3hiUklIQlhBdHdqWUZRc0M0RzdTN3EvcExXR0duUm5kWWIvQzBuK213Q0JMaElvMlM5QTRIcStQZW81Nmp1cWZlSmpDb3A5bDZTWHRIUmY0YjlJK21SbTNTYU5wZTBrblNmSjl5NXl3dmNsSFY0NVdyS3pLUUlFSVBCSEFxc21jTzEzNTU5TGVwK2tiUnNPZ3M5S2VucjEzcnk1WWJvMm8rZnVTZnArN3E2U3Z0Rm01Y2diQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFbHBPQU45c0pFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBVG1TY0FHaHdkSWVxK2tlelVvdUt1R0xyT2FZS09KeDFiR0Q3dEpla3hsblBFWHlVak54dm16d3M4bC9VRFNKWld3NzBYSkdOL0diTXNTdkVmOUlFazdwZ3ZSL3ZzUmttYXh1UzZ4K0h4MWtmelRrcjRqNmZabGdiS0U3VGk0NnRjekF0cGxrWE1MWEg4eElLOWx5ZUlwa3M2UnNoeWFXa0JocCtwOS9NMldZRmk0LytOSlNLU2tDSXVSN0N6cDZ5V1prQllDSFNIZ09kQkQwN1AzQkVuYlYwNEFIaUxwZmpYcjUzbUJuOTJyMHA4dlNmb3F3b1UxNlJFTkFoQ1lGNEVTY1lOQkhSRzRubGR2VVE0RUlOQVhBbllPNS8wU3p4OHQwdUcvSDVqMlZPcTBZWGgvNllvMGwvVGV5dS9ySkNZT0JDQ3drZ1NZMDYxa3Q5UG9GZ25raXNsWVZPdXBQWE9LdW9ta0s2c3p3STB6ZUk2ZUExb1U2TU1qb285MXMvMnVwRDBrWFZzM0FmRWdrRW5nUGttcytnVU4wclB2MFFBV1VWZVd3T0Fld2U3cG5vWHZFZmdiTStzZXdiTGZyMWpaQWRIVGhnL3VDbmt2Wit1aC9aeTY1NEp1dHUvQi9EU2REMzVaMHJjbGZhVVNUL3lhcEo4aGhOM1RrZEh2YXBmc0YzVDEzcC92clhrTjQzUDdwcUhMYTdhSFNibzBjMjFtRHQ0L2ZtTGxkT2g3VGFIVWpCOHRjTDFaZGYvd0FrbVByRm4rdEdnblZPL2ZWMG42VlVCZVpBR0J2aE5ZSllGcnJ6ZU9sN1J2UWFjZEsrazFIVHAvSy9rV2RLMHRCZDFDVWdoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUpnbkFRU3U1MG1ic2lBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBSUg3U3pwSjBqTXpVSFRWMEdXMEtmZVZ0S2Vrd3l0aGFodGMzajJqcmRPU1dPejFRNUpPbEhSMUR3M1d2Qzl0WTVLL2x2UlhrbXpVVnhwK0orbmNpdlViazBqVG5hVVprajZVd0phU0xrdkM3cVVaSDFrSmVKMWNtc21TcFBlejlINUpoMlcyNXl4SmgwcTZJek45bldRbEF0ekQrV013VVljMmNicEtZREF2T0tKNkZ6NDVVNUJuVnRzczFPTzV3YW1TTE43VEo2RkNHNGo5azZRSHoycGt6ZDh0K3YvQ2x0OXRrNnBpdzc3L2tRUUthbFozYXJUajBydzVJcSs2ZVR4S2tyOFBHOVJOTUNIZWJ5cGo1ME1rV1d5QnNIb0VTc1FOQnJRUWVscTljVU9MSVFDQk5RbDRMK2t2MDNyUGh2UVdzNDRPRmtqNldGcFgycWthanNQK0tKVG1PYldkMFN3aTJKbU41MCtEZlMyTHg5anhuYitMUDVSa3AzZnNlUzJpWjFhelRPWjBxOW52dExvOUFxc2tjRjBpRHVlOWhET0h1c0Z6SXArRlBUZXphejViaVQ5YUpQdm16UFFraXlIZ2Z2UituYytLbWdiUGdkNHA2WDgzVFRpbitOdEsrcUNraHpjc3IydjdIa2RMZWtYRE5pdzYrbk1xUjVJWExyb1NsQjlPd0U1QzdkRHBSWlZ6ei8wQzcxbjhXM0xHM01jemxHaklpMXozK2wxdUI2Ny9uaHBsNFZTTE5OK1FIREo3VGR6M3ZZbkJtZUFCbFZpdXo4bG5DYkpIOU8vM2sxUDRUeVdCM2xzaU1oM0s0KzJWSStwbkJPVFpoZmUyNzVxOE1xQXRpemkvQzZoMldCWWwrd1ZkdmZkWHNvYnBzc0QxNjZwN0E2OHQ2UG4vVzlLYkM5TFBTaG9wY0YyNmRoeFhWNHRiKzcxaHAwdnN5YzdxemZxLzM3TzZHM0tLcEYzcUoxa2pwcDA3SE5paThIclRhcFc4RTV1V05ScmZjeXVMMEkrN2srRm53dmUwMXlvdEpNMW5UcS91NWo2K1lWNjNKcUhvcnpaTWx4dmR6Mm5KR1lvZHpYcDkvOTl5SzVEUytSN3ovcEkrV3BoUFZITGZMMzIzcEtNeU12eUpwSjJyTzk3WFpLUjFrclhUWHBEVFI4OVJSNnYwQUVrdnk3eWY3Ry81QjNwMjF5NnpTMGdHQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRR0ErQkJDNG5nOW5Tb0VBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQXdLb1RzREdpTCs1YTNQbyttVEM2YXVqaTVxeWZqTHBlVWwxMC9yUE05dVVrKzNrU2RYNWZaWGhzSWNFdUI0K0JwMHA2VXlXY3VFV0xGVFVURzluNHdya3Z5aE1XVDhDQ24yY1hHS2NNdCtDMFN0akp4bzk5RW05dHF3Y2VKdWxTU1J0bkZuQlFFakhOVEY0cm1ZMTR6d3NRZXkwMW1LaFZXU0pCSUpEQVFJVGhiNU1CZTJEV003T3l3WTZOemZzU2JDUm13NjU5Z2lwczV4ODJoclFnd3J4RHBFTUgxOTFjYkp6WnBpT0NVVVo3UzdKSWVHbFlaRCtVMXAzMDVRUWlESG03SnZSVVRvVWNJQUFCQ013bU1KaER2aXJOSVNPRUIyYVgrc2NZM2o5NVR4SVAvRkhkUkVzWUwzTC9vaTA4Rm1hN0lNMFZQNThFRzlvcWkzeFhtd0J6dXRYdWYxb2ZUd0NCNjNwTXh3bW9lWS9aZ28wVzFNa0o3MDBpUG4wWHpNeHBleGZTMkZiRndzazV3bmgyK0x0WHRXLzRoUzQwWktRT1B1dTIwMTBMZCtlRXJ1MTdSSHozY3ppVXBPbnl2WUdTZHExcVdqOVRGcEI4ZWVYWXdNSmtiUWFMQWI5QjBrZFc5QzVCMTllOU4xVk81QytwenBZL2s4Nlk3ZUMxNi9jQ0xHSnQ1MlErbjN0c200TzNadDdmbHZTTzVGeldJbytsSWVvYjBZWDNkdTZjZkpSaDI2Sy9wWDAySzMxVW44NHFoOS9yRWZpZmxYRG9YOVdMMmlqV3BwWHc3ZWNxQncrUGFKVHFUNUcvV0RrbDhMbHh4SHRrVWhYc0xNYWlvaFk4YmhwRzN5bGJTZnBFUVh1bmxYK0ZwR2NsQjRSTjYwbjh1eExZUWRMRmt0YkpoR05uM1lmTytRN0Z0S291OHAwNlRlRGFEbFE5cDdwWEp1YytKb3RZWi91ZGFXNTJmRkFTdml0cEQwbWV5MFlHMzYveVBzbGZwM3RodnBOWko1UThkeVh6bmczU2U5N3ZhSXZUZTQ3dmUxQjJldU03M3RIemZEdTVzMU9DcHVlclhSTWxyOU9ueElFQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnMEdrQ0NGeDN1bnVvSEFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVsb0xBSnBLT1QwWmRKUTNxZ3NIVGNQMjl2L3JueVNqN0tTVU5DMGo3cStyaS9xc2xXZWk2YTZMTzVyUmJaWXg2WXN2QzFxTVlmV25kaHJEbnRuQVpPcURMVmk0TEcvcS9NcURWQ0diK0NhSkZUeTNrbmhPK1ZSa003U3JwK3B6RURkTlk0T0hkRGRPTWkzNjBwQk1DOGlFTENMUkp3S0tFdTZkNVQ1dk9IS2Exb2NTNHFFMDIwL0wyOThIZmlZZ3d6WWd2SXY5cGVSeGNHYzJlRVZqSUR5UTlZVTd2NmtHMW8vb0NoeFNCQTZHSFdVVVk4a1lZb1BZUUhWV0dBQVJXbElDRmtJNlFaR0hydG9XODZpRDJkOXlPV241Y0ovS1N4ZW02ME5jNDNCWm5zemk1KzYxTndaa2w2MnFhVTRNQWM3b2FrSWdDZ1FZRWNzWDBMUFpseDZHM05DaHIwVkV0QW5TbHBJZGtWR1RTdnRaMlNlUnl2WXc4bmNTQ3FXL0xURXV5TWdMTEppNDBPUE04UmRMREM5QjBiZDhqNHJ0ZmdDTXJhZGZ1RFdRMWdrUi9jSXorNG5UUDRlNXo1dUg3RlhaZXZtcE9zL3UyN3ZYZEY0dS8rcTZKN3duY09lZHhNcTI0OVpQajlXT3FNNjU1ajk4NkdLSytOVkhmaUM2OHQzUG41S084KzNnV085eUdxRDZ0TXc2Sk01dEFXd0xYSmZkMExEajZERWtmbTEzOW9oZ2xBcnpqM2lrV3lyWVRDNi8vb3NPL1MzcGFXcGRHNTcxSytYazk1ZnRqUjJVMjJtUFRqdE45RjdRcllaSHZWQVN1MXh3RlVYT2ZRNnIxL3VrQkE4d09kWHlIcU5UaG1rV3RmY2ZUOXlaOVIzMGczdXd6eGVOcTFuUHQxQ2JmTlcwYVN1NllibDRKZlY4dWFhTXhoWnFMeGNUTjZjTGtSS0IwcnIrc1R0YWE5aG54SVFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWdzbkFBQzF3dnZBaW9BQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FJR2xKV0NEeEdQVHBmVEJ4ZHFTeG5iQjRNbjE5NzdxenBMZUplbXhKUTFxSWEwdkZCOGc2YXN0NUoyVHBjZUFEUk9lblpNNEtJMHZRVnZvK3NhZy9NZ21qOENUSzVITzg5UHprNWZESDFNdFVyaTBwTjdSYVcxNGNKWWtpMFBrQkQrWEw4cEptSkhtWVpJdWxiUnhSdHJoSkNVR0U0VkZreHdDdFFoc2xVVGx0cTBWdTcxSWZUU3FqdnBHREtqYTRPek05aENQemRuencvZFhSbGVIQlpaN1IzSVNjbGxnbnRPeUt2MjJET2U5aUQ2WUV5YUtxVUVnd3BBM3lnQzFSbldKQWdFSVFHQ2hCTHkvZEY3bFBNM2lHMTBLTml5M2NmdzdBNHp2dTlTdVdYWHBtOURYYUhzczdHR3hwcS9oN0cxV1YvTjdEUUxNNldwQUlnb0VHaERJRmRORDRQcFBrSDNPWTZjT1RZTUZUSjhuNmNOOEg1dWlLNDcvbnhQM2UyWGs1UFBsMTNTc3o3ei9lMm9scHZiNGpQYU1KdW5Tdm9jZDdueWlPc2Q1VWtDNzVwbEZWKzROekxQTnkxU1c5OVAzbDJTeGVOOG5XR1N3MDZERHE3MTRmM05YSWZSNTNmdnpKQ2k5YUZGeWoxazdCdXVxc1BWZ0hFZDlheUxXaHE1VEY5N2J1WFB5MFhkREg4OWloOXNRMWFlcjhNNmNSeHZiRUxqZXNCSkR2Ymk2VTVUcmtQdnM5SjIyazRFMlE3VEE5YUN1bnJmN3JrRGtuYzczcHZ1dnBVSzFiZkxzUTk2bDk4ZXVrclJYNWFUazVnNDFkcEh2VkFTdTF4d0lVWE1mT3k3eE9pWGk3ayt1d3pYWFliYzAzeHdXdFI1dThVY2xXYkRhOTRycUJPZHpUdWJkM1VNbG5WR25rSkU0TzBtNnFMSWg4RjJrT3VFYmFYL0NleFMrLy83Yk9vbEc0dHhYa3RuazdIRjh0eExrM2tQU3RSbmxrZ1FDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVNHQ0NCd3pYQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRW9nbFlsT2NnU2U4SU5ranNnc0ZUVjhRcnAvWFo3eVM5Vk5JZS9VTVpBQUFnQUVsRVFWUUpsV0hkbmRHZDJ5Qy9MU1Y5ck1CZ3BrRlJNNk5hR0hlL1N2ejdtek5qRXFFdEFoWTN2bHpTWmdFRldNamk1SUI4K3B6Rk5razBlcjJNUnR4V0diUHRXaG45WEpHUk5pZUp6NklzcUgxVVR1S1JOUDYyV05pYkFJRXVFZkM4NXhXVkVkRHJPMUtwUGhwVlIzNGozQTN6RlBFZmRQc0dTUUREYzhYSThMSnFQdjMyeUF5bjVCWFZCcHhSektuRE9seE1oQ0Z2bEFGcWh6RlJOUWhBQUFKL0lQQmZKSDJ5d3l3K200ejRmOXpoT2taV3JjOUNYOE1jUHA2Y1dxMUt2MFdPQWZMNkV3SG1kSXdHQ01RU3lCWFRRK0Q2VC8xZ2NaOFRKVDIzUWRmNG5NeE9PeXh5VFpndmdVZEl1cVE2eTNsUVJyR2VnOXE1WjFkRXk5d0dpMjM3YkNvcWRHbmZvNjl6NEM3Y0c0Z2FENnVXajBYVi9YNk9FSXlMWkdmQjRqZXZnSk9udmo3enczM3Q3N3JmeVhaZU1jLzdNRDd6dHZNR2k2WXVXcGk5enRpUCt0WkVyQTFkM3k2OHQzUG41S084KzNnV085eUdxRDZ0TXc2Sk01dEFHd0xYdWM2QlhGdWY4KzR1eVVMQ2JZY1NnZXRaOThaOGgrUG9TbFRWam5POGxpd0pYNng0N0YzbDk0dVNURWo3QndJdlRIYzVjbkc0VHoyUDdGSlk1RHNWZ2VzMVIwTFUzTWU1UGxTUzl5WTJMeHhzdjB5aTdGK29rWS9mVmR1bHM1MW5TRnByUnBvZlNIcUNwT3RyNU8wb0ZuNjJ3OTN0YThZZmpwWXJMbjl3cGpDMlJic3Q4SDFaUmwxTCs2OXJlMUtaQ0VnR0FRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUdDeEJCQzRYaXgvU29jQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0F3RElSR0FoYnY2a3lNbjlBQ3cxYnBNR1REZFRlbUM3YXQ5QzBWckswd0xnTjkyOXRKZmZwbWRxd3p3YUY5MXBBMlpPS3ZDRVpuSHlwUTNWYXBhcXNuWVNKTFVwUUdrNlQ5QnhKdnkvTnFNZnBTNHgrYkt5dzc1emZEVHRVb3RvWFMxcW5rUGtpNmw1WVpaSXZPUUViTlgxRTB1TTYxTTQrR2xWSGZpUGNGVFk0ZWxvbFBQNmJPZmJMVHBJdXFveGszWmJJOEZGSkIwcXlBVmZiNFRISmVjSzlDd3Z5WEd0UFNUY1Y1a1B5L2hLSU1PU05ORUR0TDBscURnRUlyQUtCcmd0Y3V3OStsQVFHTGVTeDdHRVpoTDRHZlhSNzJoZDg1d29JdEMzN3VGeFUrNWpUTFlvODVTNHJnVnd4dlQ0S1hHOVk3UXQ4UGxNRWFOYSsxaWFTTHFqaFdOWHpGZ3VuWHIyc0E2cmo3Ykpva3ZlMG5wUlJUNS9sMlVIbk56TFNSaWV4c1BXcms0anFMR0dwcG1WM2FkL0RlNEhuU1BMK1pwL0NJdThOOUlsVDErcmF4VE9WWVVaMjNtMUhDamQyRFZ4Z2ZaWnAzVHZQNzczdkM5bTU2ck1EKzZMdHJLSytOUkZyUTdlMUMrL3QzRG41YUYvTm1yTzIzYmVsK1VmMWFXazlTUDlIQXRFQzF3K1U5TG5xRHNQV21ZRGZWVG1hZWNtYzdtTlpPUFp5U1J0bDFMWHVjL2lvSks2NmJVWVpUdEpFbkRhemlKVkpWaUt1YTBnL3FlNkI3Q3pwbW80UlcrUTdGWUhyTlFkRDFOeG5rT3Noa2s0UEdHK1hKbWUzazV4NCtWMzQ5NUxxaUZvUFY4ZDN3bmVwSExBME9idkx2Vy9xTzdyN1NEcTNJUS9mdDM5bHd6U08vdE5xLzIvSGF1NXRFZS9jNER2S3ZyK2VzNTlqNXdoMmRMYktkNU56dVpNT0FoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ01BZkNDQnd6VUNBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVTZ21zSyttSUpKclNockQxb0g2TE5IaUtNblFxWmQwMC9Yc2xIVFZuSVp1U3k4Rk4yOWMwUG9ZblRZbkZ4bitwcExjRlpMbnF3cG1sUmo5SFN6b2hvQithWkdFSENCK1h0RmVUUkdQaTVocE1GQlpMY2dpTUpiQzdwQTlWejlNR0hlTlQxNWl6WTlYVzh5dmoxWk9DS21YanhzZFg4OU1mQitWWEo1dTI1b28yMkhxQ3BPdnJWS0l3em41SmZLZ3dteitJUEx5b05CUFM5NXBBaENGdnRBRnFyNEZTZVFoQVlLa0o5RUhnMmgyd0t2c3B5eVQwTlhod1ZrR2diYWxmRWd0c0hITzZCY0tuNktVa2tMdHYwRWVCNjVMdjZYSHBySEhhSU5nK0NiYU5jN0Q2cXlSR2JBR2JPNWR5SkhXL1VYZXZuQ0NmbUFSaW05YlcrLzhIcFQzWHBta2o0ejhzQ1Z0YkpEMUhDS2xPWGJxMDcyRWg3eXNsUGFST3hUc1VaNUgzQmpxRW9WZFYyYkp5Rm5wMnBnT0VlVGJVQW5UN0oxRzFlWlk3cjdKS3Z0UHpxbU9UY3V6Y3lYZVZMRDdZbGdEZEl5VDlyd0t4MkNidGlZd2I5YTJKV0J1NlhWMTRiK2ZPeVVmN3BhOW5zWU4yUlBWcDVIaGQ1YnlpQmE2UGxQU2VUS0RYVld1dEowcjZYbWI2cHNsSzVxRk5ua092VVY0c3lVS3IvbmZkMEpYMVNkMzZkajNlVTVKam5WdzlBNjh6ZmQrdHJlOTlMcjlGdmxNUnVGNnoxNkxtUG9OYy9iNDRzM0xBOWN6Y3dUR1VicHBnc2dYNHZmL251NVZOZzkvNUp6ZEk1UDBPcjNjMmJwQm1FTlZyT2ErVExLeGRKNnhkT2FnN0t6blFyUk4vT0k0ZDFsbTgyMDdRY29QTDk5MGxNMm9hZnBmYWF1ZHRCQWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFTWdna0hzZ2xGRVVTU0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FJRWxJN0NwcEpkVUYwbGYyTkFBSUJmRElnMmVvZ3lkY3R0ZWttNmVJdGRkRnJjZU1QeXVwRDBrWFZzQ3RXTnAvMUxTSlpMR0NUcDByS3BMWDUxb1k0bHh3SGFRZExHa2RUSm9XdlIxWjBuWFpLUXRUWEtncEE4V1p1TG4xaUlucHhUbVEzSUlsQkR3K2VvemtpRlRFd1BJa2pLYnBHMWl6TmtrMzdiamxoaHRqZGJOUm8xN1NycXc3VXFuL08rUmhLSDNhYUc4T3lwanR0MGtYZFpDM3FOWkhwK01Ra3VMZXBxa1Q1Wm1RdnBlRTRndzVKM0huS3JYa0trOEJDQ3dOQVQ2SW5CdDRLc2djcjFzUWwrREI4V093dmFkc3dPWXBYbElWN2doek9sV3VQTnBlaXNFY3MrWTZncGNIeTdKd3M5ZENONHZlMnFtVTdnZlNycGdSaU84TjJkSGlqNmpIQTRXbjdGamg1dHFRUGhIU1YrcEVZOG96UWtja2tSR202ZVU1bm1lT1ZxL3U2Vm42SFhwRERHbi9rM1NkR25mbzBSWXNFbWJvK011OHQ1QWRGdFdJYi9OMHZ2OWtUMXA3R2VURU52TlBhbHZrMm91NjdyMzlVbTQxSUxYa2VHeDZieGpkTjRSV1VaYmVVVjlheUxXaG01akY5N2J1WFB5MFQ3cTYxbnNvQjFSZmRyVzJGMjFmQ01GcmgrWW5BRnRuUW54QllFT3FldFVvV1FlbXZNY2JpWHBORW0rbDFBbkxISjlVcWQrZllwam9WazdvL0M5c1p4d1czVlBidGRxTCtDS25NUXRwMW5rT3hXQjZ6VTdOMnJ1TTV5cjM2ZStvN2xCNFRqeW5wVkYzc2Z0ZVcxWTNXLzZmS1lqSUwvVG50TkErTjE3YWhaOVBpcWpQVTJmdy90Sk9yOXljdlM0akxMT1NldXgzMmFrSFU1UzhsMmN0OU9Id3FhU0hBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQXR3Z2djTjJ0L3FBMkVJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaERvT2dFYnB2dXk3ZDgydVBBZjFhWkZHanhGR1RwRnNXaWF6NkdTem1pYXFHSDg3U1NkSjJtOWh1a1dFWDNaakZJUnVGN0VLQnBmWmh2R0VzTWxsUmdhT0o4VGszaXB4Vi9uSFd5UVlhT1BMUm9VYkFHMVQxUnB6a3JpcnJjMFNFdFVDTFJCd00vZy9wSStJR210TmdvSXlEUEhtRE9nMk9Jc2JCQm0wU1libGthRWwwbDZlMFJHTmZMWXZCSyt1Ynd5K04yb1J0eWNLRWRLT2prbllZTTA2NmIzN1pNYXBCa1g5YWVWVWQ2T2tuNVFtQS9KKzAwZ3dwQzM3VGxWdndsVGV3aEFZSmtJOUVuZzJ0d3ZsZVE2TDZQSWw5dTNyRUpmYnR1eTdZVXQwM3VncTIxaFR0ZlZucUZlZlNXUWU4WlVWK0E2NHBudEs5dWNlaS95dkRHbnZuMUpVM0pPdUNqbnRPdExza0Q4eTZ2emt3Zk1FWFNYOWowZWsrYjU5NTVqK3lPSzRqbU9vRGlmUE82YkhFU1c3ajNQcDdaL0ttVlpSUzJYZWQzN05rbC9JeWxLNUxyUDR0WWV5VkhmbXFoNVpoZmUyN2x6OHRIM1QxL1BZZ2Z0aU9yVGViK1hsN1c4U0lIckZ5YmgwaHhXWDVTMGQzV2Y2QmM1aVRQVHpGdmcydFc4cDZSWFNMSmpoR2xoMmZmQk03c3NPOWsyYWMyUmU2ZlU5MUh0d1BIVzdCcTBsM0NSNzFRRXJ0ZnMxNmk1eitobzhkMmp0d1lNb1c4bGgxby9Ic25MQXZDK0YvbjBqRExzM0hUUG1zN2VCdG1YM0ROdWN1OTB5M1RYOC80WjdiSUk5NHN5MG8xTHNvZWtjelB2K0oyZDdnaDI4ZDBUaElkc0lBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFpMFF3Q0I2M2E0a2lzRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCSmFKd04yUzJPQlJsVmpkczlObC8wVzBiNUVHVDFHR1Rvdmc1akl0RXJ1N3BIOXBxUUtiVkdLR0Z6UVVybTJwS3JXelBWYlNheVF0UXVpM2RpVnJSaXk1ZUY2ekNLTFZKTkNXc2NTZytCeVI2RUZhai9WOTBxVjkvNzk3U0xwZnpYWkZSVHRPMG1Fek1yUHh4VWRUUGErUEtyaEJQcityakNSdUREUitibEEwVVh0QXdBWkZIODQwZkpsWDgvcHFWTzF6Ni9mWGVFZlU1V2dSOGtQbTlKMzNITlZpL0cwRnZ4TVBsSFJIV3dWSThsenVTa2tiRjVaUlYzaXJzQmlTZDV4QWhDRnYyM09xamlPa2VoQ0F3QW9SNkp2QXRidG1tZlpUUm9mYU1ndDl1YTNMS3RDMlFxK011VGFWT2QxY2NWUFlDaERJUFdPcXU4Nk9lR1pYb0J2K280bUxQRzljVnM0bEFyWSt1emhJMG9mbUJNZG5JM3RKc2dEZ2srZFU1bWd4WGRyMzZPc1pJOC94Z2dadncySzk3LytPU25EdG1JYnB1aEw5QlpWank1TzZVcG1nZWl6N3V0ZHpycmNFbkExdGx1Ni9QREtJK3lLeWlmcldSTTB6dS9EZXpwMlRqL1pmWDg5aUIrMkk2dE5Gak90bExETks0SHBUU1orVDlJZ01TTDRqODVUMDNzdElucDNFOTVYT2wvUzRqQnhLeFUrM2xmUkJTUThmVTdidldIcTk4SVdNZXBGa1BJSFhWZC9tMXhiQThYclJBc0JkREl0OHB5Snd2ZWFJaUpyN2pJNHo3M2Q4cW5JaXVuUEFBSngwUnZOS1NXL015SC9hR0ppVW5RVzFUMDkza0pvV2VWMzFyWGxpZFJmcmV6VVMybW5DT1RYaWpZdml1MTVuWnFZZFRlYjIrcHR4WkdaK2RvaG1Sem9FQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRYUVBQWdlc0dzSWdLQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FJRVZJbkQzNm1LdURWb3RSSHFBcFBVNjBQWkZHanhGR1RvdEV1TkhKQjNjZ21pcng4cUprcDY3eU1abGxIMWJNbHkvTkNOdDE1TDAxZmk4YXh3ajZ0T1dzY1NnYmhZNHRaRlZUcmdxR1dIZG5CTDNVVWd0cDkxTjArUVlmelF0Zy9qOUpMQ2RwUE02TWllYVJyRFBSdFdlcDV3Uk5Ed3NscjluSlp4eFUxQiswN0k1WHRMUkxaWnp0YVJkS3RHZEcxb3NZNmVxaklzcXdVb2JkNVVFT3pKNFZVa0dwRjBLQWhHR3ZHM1BxWllDTkkyQUFBU1dna0FmMTJXZWsrd3E2UnRMMFFOck5tTFpoYjdjMmtNRDU5eExPQVJvMGhBQjVuUU1Cd2pFRXNnOVkwTGdPcllmQnJrdDhyeXhuUll0TmxmYm83eWljcEQ4NXN4cW5DYnBlUzJjWHc1WHg0SlUzaXM4SXAwTnJwVloxNmhrWGRyM2lOb1hqR0pUTngrZTQ3cWtGaHR2aitUUWR0SFBYQzZGWlZ6L0x2dTZOMEtrdGEvM1gwYkhlZFMzSm1KdDZMcDE0YjJkT3ljZlpkdm5zMWkzSmFwUGM5K3RwRnVUUUpUQWRjbjRuc2Q4ZkZ5L2wzeVRJcmpkSjRtZVBudW9jdjZPN0MvSkRxZ2Q3QnpIUXR6clZ3TExXMGg2b0tUSHByOVBrSFFoQTNvbWdRMnI4NFNMRTcrWmtjZEUrRlk2ajdnK0ovRWMwaXp5bllyQTlab2RIRFgzR1Rkc0xHN3Q1MzJkd2pFMStvNFpaR2ZuV3hiOHo5SDdzSER6eVEzclphY0dGcC9PS2UvMVZWa1dyWjhWY2tXNzc1QzBXN1YzYzltc0FocjgvdEJLb1B5emtqWnZrR1lRZFJuWGhCa1lTQUlCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFvQm1CbkEzb1ppVVFHd0lRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VPZ2JnUklEZ2piYnVraURweEpEa0RhWk5Nazd3cGh2WEhsUGwvUmhTWDAwVEwxQTBuNlNibWtDc29OeEVianVUcWUwYVN4aHd5a2JVZTJUMlZ5THI5ckFhaEQ2S0tTVzJmUkd5UkM0Ym9SclpTSnZKc25makVmMm9NVjlOcXJlTWhrcDNUK0E4NjhyQXlVYm1mMXJRRjdUc3JCQnF3M05IdGRpT1cwWWNJMVc5L21TVGlwc3crK1RVQkNHdklVZ2x5QjVoQ0Z2bTNPcUpVQk1FeUFBZ1NVaTBOZDFtUjJkZVkzcDcvOHloYTd1aVVZeS9wNmszU1g5S0RKVDhscEtBc3pwbHJKYmFkUUNDZVNlTVNGdzNVNm5MZks4c1owV0xUYlhFc2VBOHhBSzZ1SVpXcGYyUGZxNkp1RTVYdXh6WDZmME50ZFh2dmR3blNULzdXREhqUStxVTZtTU9LZEtzbWljOSttWEliVFpMMTNoWTRkY1h2ZitMTE5DQnlTSDAzMjN0NHo2MWtTc0RkMFZYWGh2NTg3SlI0ZFNuODlpM1phb1BzMTh4RWcyUWlCQ3FQa1IxWHZ2a3N4djRUem00NU02dmVTYlZNck56Z3g4SjJHOVN1RFZZcTErOXcrQzV4Z0RZZXRwQS9hUTZ2N0ltWXpvbVFRT1ROL1ZtUkVuUktncnBwdWJmMm02UmI1VHA5MXY4L2oyZlJtUDlkTGc1K0hWVlQvK1djT01QSDkydXU4M1RPZm92b2Z6RCtrWnJaczhhdTR6cmp6UEM5OGg2Wmk2bFprUzc3dVM3QWpvMnFFNEZsNit2THF6czFGRy9uWlM4SnlHNTNWMkFuYWVwTzB6eXFzak91LzEyVm1TZksrOGFmaHBkVDl2UjBrL2FKcHdSbnkvczAvUHpQUHM1UHpnMXN6MEpJTUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ3NISUUrbjdoWXVVNmpBWkRBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUdBT0JFb01DTnFzM2lJTm5xSU1uZHJrVXlkdlgwemVWMUxVWmRzSFN2cWNwSzNyRk40Z3pwY2tYVlFadWYxelNtUGplSXY2TnIwb1g2ZklnOUtGNmpweHV4cW5pOGI1WFdYVmRyM2FOSmJZUnRLbERZMDNCdTM5U1RKY3VXWUlRRjlGQzlydVF3U3UyeWJjdi96dm1SdzVQTFhGcXQ5ZUdjTmNMZW5Ma3I0OVlxaGpReVlicGZydnYwaUdYTk9xMG1lajZtaXhhQnRMZmF6RmZuUFc4L29HVzBEajVCYmI4cjVLNVBEd3d2eHRnR2RETTM5ekNLdE5JTUtRdDgwNTFXcjNEcTJIQUFTNlJxRHB1dXltdEZmeW5UUjN2SG1vUVg4dTZhR1Y4NDBucExsam00N0l4cTB4dThZMnB6NWQzUlBOYWN1ME5LTU9zS0x6SjcvbElNQ2Niam42a1ZaMGgwRHVHUk1DMSszMDRTTFBHOXRwMGVKeUxkMDduY2RlNXJ6Mjc1cjBRcGYyUFpxdVNacTBzODI0UE1kdDBvM0p1MVRNY0Z3dDdJajBkWkt1a25UblNBU0w5ejJsY3NyOUJrbVBqV25DSDNLNVRkS3VrcTRJekhPUldhM0t1dmZZU2dEOU5RMkYvdHd2YmQxL1dVU2ZSMzFySXRhR2JuOFgzdHU1Yy9MUi9wdkgvS1hOTWVQendCeEJ5MEdkTE1ycFBjaWM0UGY0RDNNU3RweG1YVW5Qa0xST1Jqa1dpTGJ3cGMvN2M0Sy9hWGFta0J0S1JWY1hPWjVMdmttVEJLNEh3dFRyVjNjQnQwanZkYzhML0g3M1hRdi8vb0JjMkNQcEZza3VxQW10WitQMTRzZXJlZFJlbVNYOU10MTErM3BtK25ra2kvcE81dFQxUmtrN1ZRTHQzOHhKM0NCTjdyTmFjdi9Pem11dWxQU1FCdldNbXZ0TUtuS1Q2ajZNdjJOK3Q1U0c5MG82YXVqYmtjdlk5ZkJkczEwaytYdlVKTHhRMHJ1YkpCaUtPK3UrOVFhU3ZLZTVWVWIrbDZWNzRyL09TRHN0aVJuNy9wam5NVG5oME9ydTNoazVDVWtEQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRR0FWQ1NCd3ZZcTlUcHNoQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlEQ2RRTW1GMlRiWkx0TGdLZGZRNlRmVlJmSUxLM0doOHlWWnRQbEhrbno1OXBZRXludTA5MDkvTEVCa0kySzMwd2FZYllSb0E4eGNMcFBhZGtMMWc0MVNmekVoZ2dXdVQ2bEV0WjhZQ01mR1FqYWtHQmFGQ3N4K0xsbDEwVGgvTGczdllDRnRHa3Y0MlhodFpwdFBySjRyQzFqOWZpaDlYMFVMTWhIVVRsWmlZRk83RUNMMmhvQy8wNitROU9ZV2F2eno5RTM3SDhtUWQxU01ZVktSTnJwOHRDU0xOeDlTNWZIZ2tZaDlONlE4UHIydklwQWZWeG1FdlNvaW95bDVQRi9TU1MyWDRldy9Lc21DSUhlMFVOYTlKWjJUakI5THNtK3pqaVgxSXUzOENVUVk4clk1cDVvL0VVcUVBQVFnTUpuQXJIV1pCUncrVkFsV1c3RERUc0IrV3hQbTNaTGgrTXZUbkxFTnNXdlBSYytzV1orK1JJdmNFL1Y4djI1L2JkVGlYdUE0OXN1d0Y5YVhNZFhuZWpLbjYzUHZVZmN1RXNnOVMwSGd1cDNlWE9SNVl6c3RXbHl1bmhPZW5sbjhGeXVSMnIybm5BbG1abnVYWkYwOFErdlN2c2RMSmIwdEN2WWM4K0U1bmlQc2pLSkt4UXhIaS9UWm5VWFVQbFZEc05qcllZdTF2YjBTdTQ1YUM0ODdaODNBMG9ra2tldmVUalJvUWlXdVMzZEt2dGV3a2lWQ2YzV0wrcDJrYnlUUjlDK2s3NkQvZTNDSGFMQ25jNThreU9ydm1QL1lHYTVGZU91R3FHOU54TnJRZGU3Q2V6dDNUajdLdk85bnNYWEgwS1I0SldPaUMrTmdYTHR5aEZRSCtkUmRzNVZ5bjVSK0cwbVhTbG92bzRCNXpjY25WVzN0U2lqMnJIVHZvV24xTFpSdW9WazdDWDlVdW5mWjVCM1p0THh4OFMxTWZrUkVSa3VjeHc2Vm81Q0xNOFhqamNYanc2S3liZHlSaU1KdWh3R2JabVRtT3hwMnlERjYzNmRKVnY2dXZhWEcvTGhKbnVQaTVzNGZTKzdmNWJ5WG8rWSswM2lWN0lFTTUvc3VTWDhqNmRhaC81bDdWOHJQeDI2U0xBemRKR3laMHZqdWV0TnducVI5UitvL25NZGowcmZKNDd4cG1PVEFvR2srNCtMdm5PN3k1emkwK0ZZU3gvNXhSRVhJQXdJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSURBc2hOQTRIclplNWoyUVFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQ2dPWUhjUzhuTlMycVdZcEdHTGswTW5TeGc4ODdLZ09JRGtxN051RVJ1Y2V2OUsyTzFmNndNTDIyMEZoMWVYMlZvb2R6U1lBTzZTeVQ1UW5scHNHRFRNOU1GNGxsNW1ZL0ZLbk9GZmtmenQrRHZNeXF4MEkvTktyakR2M2ZST0wvRHVGcXRXbHZHRWhzbW81OHRNbXJ2TWI2UHBITkgwczRTVXNzb2FpbVNsQmpZTEFVQUdyRUdnZTBrMlRBbnh5QjBFa3EvSnp5dnNCanc3WVc4ZmRacm95UG5aME1xaXpYMDNhamE4NzFQRkhJWkpMZG9zNFhBNndvTE5pM1cvTStROUt5bUNUUGlYeTFwbDBxWTQ0YU10TE9TbEJpdURlZmQ5N0UzaXhPLzF5ZFFJbTR3S0tXdE9WWDlWaEFUQWhDQXdId0lURnFYZWYzMmQ1WGduNFdJNnpwQ21WVGpUU1Jaak12enJNaHdtcVRuWk94N1JkWWhPcStvUGRHY2RhWDN1eDVhN2JYdG5vUlJIaGZkdUtIOGNnVVBXcXdTV1hlUUFITzZEbllLVmVvMWdTWm5UTU1OclN1V0Z2SE05aHB3dzhvdjhyeXhZVlU3SGQwaVhwOUxncHROS3pyUHM3a3VucUYxYWQ4ajkvM2tQdmYrOWsrYmRuNVFmSzlGN0dTYTBFMENwV0tHdzYzeVBRSTdxN1lRY0pQZ3M0RVBCNGxjLzBTU3hkQ3VhVktCanNhTld2ZGFqTStpZGwrZDBVNDdNTjlBMG4wclI1cytjL1BZMkRxb1gyWWhibm92eG5YMG1hQ0ZLdHNJZGdqaE8wQmZMamdmZFA4OVB0MXZPV0RHK1dYVXR5WnFudG1GK1ZmSk4yOTRUS3o2ZVZqSm1PakNPQmozZk9jSXFRN3lxYnRtYStPOTR2M0VVeXBuMm9kbFpHNnhmYi9IUDVtUk5pckpQTS9hbytvOG5FK2JJcXh0MUhmZWVicC8zeTNwcU15Q0o5MTF5OHl1VThuTTVoV1MzbHhRcTdQVC9lSmhnZVNDN0tZbXpaMC81cHlURENxUzgxNk9tdnRNZzJGSFBsNWpQRFVUdGgwTCtKM3Qreitqb2VTdVZNN2N4RTRHUEQ4OU1LTXR0MVgzV0hkTkRsdkdKVDg0M2FYS3lGb3ZTODZLY3RMT1N1TTJueVRwOEZrUkoveHVVZnJYTE5tNWFDWUtra0VBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFtRTRBZ1d0R0NBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSURCS0lQZFNjdHNrRjJub1VzZlE2WUlLZ0lXakk4U0h6UEwra3Q1YkdRWHVGd3cyeXJqR2JZMFFtYzR4U3JXUmppOEx2enFJalEwVmJiZ3pqMHYvUVZWZUk1c3VHdWUzMGM0KzVObVdzWVNOQ1Q2WUNjRHZKQnQrM3p5U0hvSHI4VUJMREd3eXU0aGtIU1hnK1pDZEgrd1JXRDkvTjkvUzB2ZG0vZlJkL2tGeXRCRlk3YmxtdFhuRi9QTEtxR2lqZ0ZJdE9tRkQveDhINURVdUM0c3llRjYxVlV2NUQyZnJPWW9Gcm0zd0ZoMzJyb1FsTEFaZUVoQkpMS0czZkdsTHhBMEdOTnFhVXkwZmJWb0VBUWowbmNEb3V1d2p5WGxKdEdoV3RMTXdjLytTcEQwbDNkVDNUaGlxZjlTZWFNUzZjakMvdHdDSUhkbEVoeHpCZytnNmtGKzNDVENuNjNiL1VMditFYWh6eGpTdVZYWFBjeUtlMmY1UnphL3hJczhiODJ2ZHJaUzJRWGxEd1RuZFBNL2x1bmlHMXFWOWp6ZEtlbVhtOEVMVUx4UGNDaVRML2U2Tm9ySDRwaDJEMjJGbzB4QWhIRGhjNXRNV0xBTGF0UDJUNG5kaDNYdTNkSzd5OGlIbnJWSHRHODduVzBsNDcvcWFtVDlaMHZtU291MHNMYUxuYitaMU5ldFJOOW80SjdqRGFhTytOVkh6ekM3TXY2TGVUYXUrcDFJeUpyb3dEc1k5WXpsQ3FvTjg2cTdaNmo3YlRlTDVIb01kSmVic0hYb2YyZ0tra3h4eVc4VFZqZ0tjdjl2WXhBbWozL1BlMjNRZWo2NkVTdStUbkFlc0s4bHpjNSt4bTNsT3ZadndhVHZ1SXZ1KzdiWkY1UDh3U1pkV2QxODN6c3hzMGwyM3pPdzZsY3hPUDd3bVhpK3pWdDlOOTVpdXpVemZORm51L0xIa25DVG52UncxOTVuRng4NVE3T3pyWHJNaUR2MytxOG81MUpGSkhIdlMrN1RFTWIzdis5akJ6MjhiMU1sUm41THVDdVhNZisxWTkrZ0pZcy92eXhTUnRyQzl6eDNiZEdhMVRYbzM1VHgvTjZUMXhUY2FjaVk2QkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBSUdWSTVDejhieHlrR2d3QkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUldqRUR1cGVTMk1TM1MwR1dhb2RPVjZVTHUxUzBBc0FDUkx3TS9OekR2RzZ0THdEdEorbVpCbnFWR0NJT2lmU241SUVrZnlxakxmWk14NjVNeTBvNG1zY2oyenBLK0hwRFhJckxvb25IK0lqaDBvY3cyakNYV2xuUldNa1RJYWFPTkNVNFlreENCNi9FMFN3eHNjdnFITk4wbGNJaWswNE9xWnlPWEE1S1JVMUNXUzV2TlBkTDNmWitBRnJZdHV1ejUxRVdTL0o2ZVI3REIyOGt0RkdRQkd3dlpsQVRQZ3kzQTdiRk9nRUNKdU1HQVhodHpLbm9HQWhDQVFCY0pETlpsZG1KeFdDWGMxY2JlMHFEZDBYdE1iVHNUV1VSL1JlMkpScTRyTFFMamZiTXRnb0ZZSU03T3REeG5Ka0JnSEFIbWRJd0xDTVFTeUJYVHF5dVlGZkhNeHJhNDI3a3Q4cnl4MjJUcTEyN3JTdFRuNGlST1Z6L1ZIMk5hc05ZaVNuWWNQSS9ReFRPMEx1MTdsTHcvVHEyY0N4NHhqMDZrakY0UmlOempmMWZsd1BjbEUwVFQ2a0R4T3ZoTVNjK3NFM2xHbkhkTGVsRkFQb3ZPb212clhvdWUrbnppaFMyQmFTSk1mbndTNll1cWl2Y0dmQmZtVXdWanVHNWRMQnJyTmY3Yms1Q3MwMFY5YTBxK0U4UDE3OEw4SzNkT1B0b1BDRnhMejY0N09FZmlkV0Vjakt0NmpwRHFJSis2YTdaTVpCT1QrYzZjM3krKzY5WTAxQkhvM0UvU1B5WFJmNzlQL1B4NFAzR2NJTGEvMVg2UFc5RGFMRmNsTEtNRHlNaSs4NWp3L0NrM1RMcnJscHRmVjlKWi9QMHprcmJOckZDSkE1ak1JcFU3Znl3NUo4bDVMMGZOZldaeHNpYkhPeXJucjhmTWlwaCs5NTNOVjBteXlQVzBrTXZaZWViZUIvZTN4R0xyRnUxdUVueW1hV2MxRnJIMy9lL2hjTC9rTk9aeFRUSk1jWDlhN1JYdEtPa0hHV25ySm1uYWY2UDVlaC9FZDdjNFc2dExuSGdRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJREFTaEpBNEhvbHU1MUdRNThOVWRFQUFDQUFTVVJCVkFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQmdLb0dTeTdKdG9sMmtvY3M0UTZmdlMzcGVFalljdmFnYnllR0JTUkRUeHVKUndhS1J2aXlmRzBxTkVBYmxma1RTd1JNTVlPclV6WVk2RjBwYXAwN2tHWEZlWC8zK3VvQjhGcEZGRjQzekY4R2hDMlcyWVN5eFRUSUlXQytqZ1JZYzgzTnl6WmkwQ0Z5UEIxcGlZSlBSUlNUcEtJSEliNjhOYjU1YTZGaWlvNWhhcTViRkRDeTZIQkhhRW9WMjNhSU00ZXUyOHdPU0xMd2VPZThzZGFJd3FQdHBsVmpDYzRMclZwY0w4YnBISUVMd29vMDVWZmRJVVNNSVFBQUMwcE1sUFVTUzM1MTN6Z0hJcG1tUDZSRUJaUzNqMmlscVR6U2F6V1pKQVBLUkFmMDJ5R0pSNGp1QlRTQ3JsZ2t3cDJzWk1ObXZISUhjUFlTNjcrdUlaM2FWT21XUjU0M0x3TGxVRE9qc3lySEwvdFhlMnExemd0SEZNN1F1N1h1VXZEOVdYZUJ6VGtPNGQ4VnNLT256a2pZdnJQbDExZnIxaWRXZStQY0s4NGw2QjN4V2tzV1NmMU5ZbjBVbjcrcTYxL3Nqdmp1U2N4NCtqV2xkWWZJU0liNXg1ZHZCK245T3o4STgrOXppc3I3TDQ3c3ZQNWYwZUVsK2xrcEN5WGRpdU53dXpMOXk1K1NqL0ZiOSsxY3lKcm93RHNZOUR6bENxb3ZlWS9NWitIc3lIKzVaWTNpU0FLL2ZLMzlUT2VJN2ErUjcrRDVKaDJmV3BjL0p1alNuN3hySFhOSGNRVHVtM1hYcldsdWIxS2QwTGUyeWpxMmNScjFtNkY2Rzg3eC8wTjNaU1cyeEk0M1QwN3lpU1h1OTV0OVgwbGViSkVweGZXZnJIRWtQYnBEMjN5VDVUdlRQeHFSeFhUdy9pd29QcmU1amVuMHdiYzN6bFhRdnVvbGoyNUs3VXI1TFpPYytUVVBkZStBV1Z6K2pHbXZIVlU1Y3ZqMmxrTWVrZTY3M2Jsb1JTWFgzUVRPeVhpTkppZE8yNlBPLzByYVFIZ0lRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQkFKd2tnY04zSmJxRlNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhCWUtJRW9velkzNHZZazZQam9nQll0MHRCbDFOREpSaUkyK1BoVlFMdnFaSEdncEEvV2lWZ3p6aXhqbFduWlJJMlBpTXUrRm1VOEtjaFE1aXBKZTBtNnVTYkRMa1dMTXN6dFVwdjZXcGMyREpnc3ZQN2FUQ0FuU2pwNmd1QW9BdGZqb1VhOG16SzdpMlFkSWhCbDRJeTRkVjZuV3NqZy9Nb0FQK0lzdXkzaDVYdEkrbWd5a010clpmTlVObnpicFJJbnVLRjUwb2twTmtoR1lsc1Y1cGxyTEZkWUxNazdTcUJFM0dEUXBEYm1WQjNGUmJVZ0FBRUl6SjFBeVJwenVMSjNWUE9JM1NSZE52Y1d0RmRnbC9hOFJsc1o2ZVROZWZPdGJXOGNMVXZPek9tV3BTZHBSMWNJNU80MTFSVjJpWGhtdThKcUh2Vlk1SG5qUE5yWGRoa2xRa0FXUkhwS2N0N1JkajBIK1VlZW9mMm9FaFR6MmFSRkVFdENWK1ppcGZQZmt2UG1FbjZrN1RhQnFHZHUyaGxuRXdKUlRoNTkzdk1FU2RjM0tieURjVXVmKzBHVDJqaFAzVTdTZWNFaTExK3FSS2IzbEhUVGpMN1lNdTF2V0NBeUlyeGMwdHNpTXNyTVk2TjBuK252QThaczFEeXpDL092M0RuNWFEZXMrdmN2YWt4a0R1L09KYXU3Wm91c3VKMFhYcEk1Si8yaXBMMnJlMFMvbUZLaFdlTFpGb3Exd09ueDZkNWsxTE1WeVdnZWVmMjZFcmoxbnUyL3pxT3ducFhoTlovRmlYUHZlMFROQTd1R3pkL0NqMHRhSzdOaUZsUisrc2pkMXFpNVhXYVZlcFBzZjByNnErRGFUbnBYK3I3OHF5WFowVXBUeDE0ZUk1L0lyS2VkRHh4YWxlMnp1eWJoWVVtUWV1TUppUWJ2Zk4rWG4vYnRHQ1EvT0FsaE42bkRJRzVkNXpRNWVRK244YnZKWlIyVm1kR3BrdHovVFZsbkZrY3lDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBTDlJNUI3U05TL2xsSmpDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQW9DNkJxSXZQMzVkMFVHVlVzYnVrTjlVdGZFcThSUm84RFl3eExHanRTN2lmbmlBWUc5RE1zVmxzS09saVNWc0VGVkJ5YVh1SFZKZDFDdXNTZGRFM3FqNXRHR0VXSXFxZFBNcFF1SGFCUkp4SUlGcVVvUFRabjJaY2ljRDErRzdzODd1QVJ6T0d3S2FTUGxjWjNOZ3d0Q1Q4TWpsTytFSkpKaXVhMW9aVGwwdmFMS0Q5ZGNVTG1oYTFlYXFqUlFMbUZXdzRab0ZyR3g1SGhjY2tZN1Y3RjJUSWU3TUEzcEltalJBM2lKNVRMU2xxbWdVQkNFQWdpMERrSHNJaTkrcXlHajhqVWRTZWFCdnpJNHV5blM3SlR2QWlBdC9hQ0lyTG5RZHp1dVh1WDFvM2Z3SzVnbDkxeGRJaW50bjVVMWxjaWNzMmg1a25TZHVldktNU0NqMG1zMUFMbCs2YklmS1VXZHdma2tYTmZ6OGl5WUtsUG1QMUhsMUo2TXBjckhUK2k5TzdrbEd3dkdtakhGZytUZEluZ3pDVmlLd05xdkFUU1krWDlPT2dPaTBxbTlMbmZsRHZOdGE5enR1aWpSOHVFSDRjNVZwWGZEUnEzTHI4YjFYM2FYWU5FSlplMUJnWkxUZHFudG1GK1ZmdW5IeVVDUUxYMHJPN01rQTdVSSs2YTdhb3F0NWQwaW1TRHN2SXNJNnptU1ozSlN6aWVrSWxHbnRORXJ2T3FGS3ZrN1QxTGV3MWxPUVFxR1FmKzdiMEhiMmk3eUJHNnUrN0x4ZEllbVJtdTN6L3lIZXcvMlVrZmRUY0xyTmF2VWxXY2xkNlVpUHZXKzAzZkNvSjNRL2lXTUQ4UlFWcmhwSjdTTmRXWTJ4SFNWNjNOQW1UeEo1OTk5OUMzUitWNVBkOW5lQzgzcC81alhMKzg5eGoyQ2JkbFZxdlRzTkc0dmg1dElPRHIyZWtKUWtFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFnWlVnZ01EMVNuUXpqWVFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQVFDTUNFUmVmM3lycE5jbEFPY3BJYUpFR1QyN0RNeVE5czdxQSs4TkdOT01pSHkvcDZLRHNmUEhZZ2poM1pPVDN1a3JjKzdVWjZZYVR1TnpkSkYxV21JK1QzMU9TTDRmdkZaQlhYdzNSU296ekxaWnBNWUd2QnZCYmxpejJrR1JEelp3UUxVcmc1L1NET1JWSmFSQzRiZzRQSTdUbXpKWXR4UXNsdlR1Z1VSWTdlVnRBUHF1WWhjWDd6a3BDQnFYdHYxSFNUcEsrV1pyUlNIclBTeitSa2FlTndHeTg2RGJtaENNbG5aeVRjRUthL1pKQldrbVdiWW1JbDlTSnRJc2xFQ0Y0RVQybldpd1JTb2NBQkNEUUxRSWJWSHN5Rmw3WktxQmFpOXlyQzZqK1hiS0kyQk4xcG0ydEszUG5vT05ZOGExdFl3UXRWNTdNNlphclAybE4rd1R1bjRSTkxEWTJMbmdQL2xrWjFmaDJ0WWR3cktUZmpxVDlUWEpFNnYxOWg0aG5OcU42dlUyeWJIT1llWGJFdzVJQWtCM1VOUTIvVDJldEgydWFzREIreVJtYWl4NTJmcnl1cExPWFNPQzZkRzNBczFRNE9KYzBlWVNEM1o4bWNiWWZCREhhTnEyRGZhOGdON1MxenN1dFQyNjZycTk3UFpjNk05M0x5VzNqYUxvNjc2b0lFZlJCdVhiMGZrUlU1VHVRVDlROHMwNC90TjNjcUx0cmZiMVhGTVUzYWt4RTFXZlIrY3hiNE5yUGt1L0lyWlhSOEpQU3ZjTkpkd1Z0Wi82R0pHaWFrZjFLSnVuQ3U2MXI0RXRFWTkyV1JUaEZhcHVoNXpjblZzTER6ODBzeUd2cGd5UjlhRXo2cUxsZFp0VjZrNndOZ1dzMzNuZE16MDFDLzgrcjlnb3VxdTVWdTc5eXd6M1MvWjE5TWpQSWRSSTA3T3pGUXV4L0sra0xHVzBwMldPbzY1Z21FODFka3BVNmxmVXo3YnY4SmYwZDFSYnlnUUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDRFFPUUlJWEhldVM2Z1FCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRV1RxRGs0dk5IS2tQZmwxWUdXejhlYWtXVWtkQWlqUUpzL1B3OVNUY3ZzSGVlTDhuR0poRWgxOENtWkd3TTEvdXFKRWdkeFROS2pMUkUrRHVpWDNMektESE9YeFpqM0Z4MjQ5S1ZHRjVIQ2tUZE54bnViRi9RT0FTdW04UGptV2pPYkpsU1BGRFM1eVJ0WGRnb3o0ZHNESDk3WVQ2cm5EeHkzbVBqcjg4RXc4eDFQR0pSYkJ1NTNTdXpQcWRKZWs2Z2tkUWJKYjB5c3k2RFpCYUVmMUZoSGlSZkxnSVI0Z2FSYzZybG9rdHJJTkF1QWE4OU5xMVp4SThrZVcxUDZCK0JxTDJkU09kbFhhRVl4YWF0ZGVXV3lWbWNSVlJMQTkvYVVvTExuNTQ1M2ZMM01TMk1KVkN5UjU5VGs5SDMrSHJKR1doT1htMmt5WFVpT1MrSG5EZU5FUTF2ZzhNeTVsbHlIaGQ5TmxpWGIrN3o2ZkZvaDc4bkpJZk9MaTlxdnRpVnVkaURKRjBwNlNGMVlZN0VhMlBmTmJNcUpPc1FnWkp6MWtFenJrNUM4amNFdGF0MHJMc2FiYTN6Z3BwWU81dW85MWliUEhaSWpqeldxZDJxNlJIcmlCRkgzV2x5VGVxVUY5UzB1V1FUc1RaMFJSZDUzMnNBS3FxZmw2MlBtdzZrcURIUnROeXV4cys5ZjVmVG5rMHFCeEFXSHQwaUkvRjExVDJJSjZhN2o1T1MrNDdFeGRYODF3S2xoSG9FRGttT0dlckZYbzFZcjB2cnFOeldXc2paenRDWEtSd2c2WU9TY3JVYzNpdnBxQW4zajZMbWRzdkVlMXhiMmhLNHRuajVqdW04ZE9DRXJwUmx5WHdsVjNUWmQxVDlQdnVrSkovLzVvWmhvZXltZVh4SjBwNlN2R2MzcjdDenBBc2w1YXc3ZnBLY0hWNHpyOHBTRGdRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCUGhISVBSVHBVeHVwS3dRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJTkNNUU03RjU5TWxXU0R2MjJPS0tybDBPNXhkRnd5ZW1wR01qYjIzcEhPQ3NzdzFzTWsxQWgrdDluSFZwZnRYQmJYRjJVVFY2OXAwNmR3WGtQc1VTdHJmcHZGcG54Z08xN1hFOERwU2xPQXA2Wmt2T2N0QjRMcjVLT1NaYU01c21WSWNtQXpMU3Rwa3dZVmRKWDJqSkJQU2FxZEt3T0lpU1dzSHNJaWVkOXhQMHZtU0hwZFJOd3RCdjd4QU5DWlMyR05kU1JiY2ZsSkdPNGFUUEMwWnVoVm1RL0lsSWhBaGJoQTVwMW9pdERRRkFxMFRhUEw4dG1VTTNub2pLZUFQQkpyMDlTUmt5N2gyeXRrVEhjZW5MVFlSb215RCt1YnVEZklJclE2QmlQY0VjN3JWR1MrME5PNk1vaTdMcmo5ZnVYdnNiWDFENjNJbDNuUUNwVTQ1ajA1aTBmUG0zUFFNN1ZmcHpOdE9oLzN2NFJBMVgrektNMXd5djF6bDU5WG5kdDdqZFhocm9EUEN5R2Zqc1pVdzJER1NYcndBQjk2NTM0RGg5a2V2VjByRytxQmVQMDMzQ0g0UTJWRUx5Q3ZxUGRibU82RDBlek9LOVZSSlI4eGdIWFdueWNVc20vaHh4TnJRWExwdzN5dXFuNWV0ajV1K2lxTEdSTk55dXhvLytwczFxWjArTTdmVDRTTXpRYnhBa3VlM2s0SkZXaytSZEZobS9xdWFiTlhmQjZQOXZtRVNTYzhSWVhkZTMwcDNiYTVmb2dGVktoenZlMGU3Uy9yWkJDWlJjN3NsUWo2MktYMDYweXk1SzdYb1o4ajJBNi9NSEV4MTV1eVpXVTlNZGs5Skg1ZTBWMmJHaTlybnlxd3V5U0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUl6STlBaVNqQy9HcEpTUkNBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdNQThDZFM5K1B6elpMVHB5NlcvbUZMQktDT2hMaGc4emJNZlJzdHFhb0E5cmE2NUJqYlBuMkh3VW9mUEhaSjJrM1JabmNnMTQ1UUlUUTRYMFViZGFqYWhLRnJKMkdqVCtMU29VUXRNWEdKNEhTVktZT00wT3c2dzJHNUpRT0M2T2IxRlBoTTJHbnlnSkJzNDNVZVN4OU4zS2dHQ1h6WnZCaWt5Q0VROWQ4ZEtlazFIUlMweXNDd3N5UWJWZk1IemxhMENhbUFISVUrdlJBVitHNUNYczhqOTducWU4U3hKYjVLMGVXWmRJdDlSbTBpNlV0TEdtWFZ4c2k2SWVxd242VkZKY056Q0xZK3VETEFmWEhHK2g2UUhqR25iZFpMY0YzNi9XakQ4ODVLK1hCbHMvN0J5d0hKN0FZdGxTR3BtajVCa28yT1BVZi9iMzZCL1RuMzlsWnJmcEFoeGc2ZzVWZC83eFhkNkxNQ3p2YVFkS2pINXYwamovZjZTTEZJL0hMdys5M3ZPL2ZXdmtpNVBZM3ZhV3IzdmZNYlYzKzhFdndzMlNyejgzOStUWlBFaEcvWDYzMUhmZzJYazErVDU3Wk14K0RMMlZXbWJtdlQxcExLNk1BOG81VENhdnU2ZTZLeHlJK2RzdzJWRmlMSU44dnRBOVU0OHBJZnJscWo1eXF3K2JQSzd2OWYrTnY5NTVhaHN1OHBwMHArbE5ZUC9uOGVVOXkySHcrOGtlVTdxdi8zZDlyejBDa2xmVFAvL3ppYUZ0eGczNGozQm5PNVBIYlIrR2hjN1ZxSVpqMG56bEhIajQ2WktNUE9XTkM0OFBqdzJya3BqNC9jdDluZlhzdTdqbkM1M3J5Q1hmZGVmcjl3OTlyYStvYm1jU2JjbWdSS25uSFlzdTdPa2F4WUF0ZTd6NlcveDMwazZkOG9lVWRSOHNTdlBjRjAyNDdwdFZaOVh6LzFlSWVuTkNZcnZRYnlsWS9OcTc0dDhVdEttYVR6N3JQSG1PVDU3MjZhOWZZdUY1WWJjdXd5VHlvdFlTM2x2NlFtUytpNjRHUFVlYS9zZFVDS09Oem9PNnF4L0xmcnF1ekFSd1k3ZTdYaDFXVUxFMnRBc3VuRGZLK3J1MnFvTDJrYU5pV1Y1UnFLL1daTzQrS3o3dzVMV3lnQjNkblVtdXIra1c2ZWszU1BORzNMeXo2aFNMNU1NOW15OFgvTnY2UXp1WDlMK1hpOGIxRUtsU3gzS3Y3NnEwK3RhcU5laXN2Uzg2MlBWbWEyZnI1emdjM29MNzM1aFN1S291VjFPL2ZxVXBrOW5tcVgzb0JmbG9MN1VTWTNQcTg1Y3dLQTZ1TG9YYzBabXVkNjM5ek02ei9WMlpsVkpCZ0VJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQmd2Z1FRdUo0dmIwcURBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0VBZkNFeTcrT3lMMHgrcVJEdU9sL1RObXNhYVVVWkNYVEI0V21UL2xSZ1pqOVk3eDhERys4bnZyOFQvRGl1RWNLMGtDM25ZbUQweXZFL1M0UUVaSGxtSnlKMGNrTTg4c3lnWkcyMGJuODZUUTFSWnVlSWJMajlLbEdBYlNaZEtzcGhMU1ZoMTQ4b1Nkdk5LNjNlckJiQnNwR1dCa0hGaDRGREN4dFcvbWxmRlZyQ2NMWlB6Qll1UTVZWkZDclhrMXJtcjZhTG1IVzVmdFBCRXJzT1BHeXRoc3IwbC9ZT2tYUXJBUjgxVmRxcnFjWkVraTd2bmhwdzVaVzVaZzNRV05kdzF6VW1mT2tia3R5VC9iMVRDempadXRJRzQ1NnlMRXBEemU4aWlUM1o4VUJMY0hxL1pwZ1dMSkQrekV2ejFuTUZpakxQQ01Xa3RPQzFlaExoQjFKeks5WFFiUFdaS1JIVkcyL3ZyS3MrTEpmMzdMR0Fadjk4dENWcS9TTkorQWVOZ3NJYi9INUsrSkdsZW9wbitydHBwUjBtdzZMem54SDUvVGdzV2JIcHhOUmQvVG8zNXN3VUk3SERKSXVDRXV4Sm84dnoyeVJpY3ZsNlRnTCtsSDYxRUVmWXBCR05IRVo3VDNGQ1lUNWVTUjRsQnRMWFhFaUhLTnVCZHVsL1E5L2xLNmJpeldNT2VhUzl5OTREdjlhQStGcjMyOS9xVXlvR0x4WWNXS1o3WDVKc3dpZWNxeittOHB2Vjh5SE82QTJyTVVXYU5TYytMTElqai9YbXY0K2JsbkljNTNheWUrZFB2Slh2MDlVdjVVOHpJNXl1bi9GbHBubHlKZ0o0dnFhbWRnZ1hYUEwrdzBEQ2hXd1JLblFPZWx0WnNpOWhybWZaOGZydHkvdlplU2E1ZkhRZFJVZlBGcmp6REplOHU3NFUvWHRLUHV6VlVXNjJOMzJrdlRRN0Fod3Zxa3NqMXNMajFvSTUyVm43MERGSExTSEFSWnkxMmxPMDFxL2ZnSWtMRVd1cXpraXdXOTV1SUNpMHdqNmozV0Z2cjNnRWE3NHQ2N3lJaTFEbkhpTHJUNVBxZVYrMDk3anZIWnk2QzBiUThJdGFHenI4TDk3MmkrcmwwVDZYdFBtczcvNmd4MFhZOTU1Vi9uWGRNYVYwMnErN1pYVkFKZno0eUl5T2ZFWG52eWtMTWswTHB0K0dma25OV095SHVZL0MzM2VkUWRrTG5ld1hEVGxPOVJ2QzVFbzVUWi9lc3oyRS9uc1JlWjhlK2F3eVBWWitQZnowbmNRZlRqRHJHeWFsaW5YVkc2Zk9iVTY4K3B1bmJtYWJ2NW5zTmx4TVd0ZjlpWjkyK1A3Rk9ScVg5RHZiOXBWbDNXekt5bnBua1llayt3c1l6WTk0MWd2ZTR2RzYxb3pRQ0JDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSURCRm9lbkVVZUJDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnTUR5RXhpKytPeEwvRmRXd2xRZlNZWllPVUp2VVVaQ1hUQjRXbVR2bHhnWmo5WTd4d0R6ZmttUTRIR0ZFR3lJZUtDa093cnpHVTJlS3pZNW1zKzdrL0JJY1BWYXphNWtiTFJ0Zk5wcXcxdktmTkVDMXo2N2VVZGxKR1VCeWRLdzZzYVZwZnphVG05Qk1JdFdXMWkwVHJDNDlmT1M4T29paEVEcTFMSFBjU0srSTYrdkFGaXNuQkJENEdCSlp3UmtGU21PWkRHZnN5UTlQYU5lQTZGdEMxdy9PeVA5SUVtVVFWckVtRCt1RWxaN1ZVRmI2aVlkQ1A3KzdSUm5BSFh6cWh0djRGekFBakIxQkk3cTVsc25Yc25jYmpqL2FmTUFHeG5iS1BMWWhvS01kZVlXRWVJR1VVSlBubGU1emg2clVjSGY0SU9TNDZlb1BKM1BmZEk2NUpYQll0ekRkZlM0ZnFNa093ZHFXNHduWWg5ZzFscGxreVM0YnNHWXVtRldublh6V2RaNFRaN2Z2aG1ETDJ1ZjViU3I2L3M3T1cyS1NoTWxCdEhXdXlaQ0tNNnN2Q2Ruc1grTHh1V0d2czlYY3RwdDV5TjJUT1U1NmJZNUdXU2srWDZhcjNsdnZ1MXY5MmoxbW53VEpqVnRGZWQwbm1kN3J2Z21TUS9JNlBNNlNiekc5UjYyMTVadHIxV1kwOVhwa1QvR2lYb3YxaTB4NnZtcVcxN1RlQ1U4VnYwc3NDbnJlY1hmWE5MbDFYNzJSaGtGTGxyd1ozZzgvbHNTQi9SWjVTV1NibTdZbnFqNVlsZWU0Vnd4ZW1QclNoc2FkbUYyOUVuaTFvTU02NGpQWlJkZU02SFA4RDhqYVlNeDhTM2tmdFNjbkdSRXJEbWpCZFFqMWxMejJndXYyZDNaMGFMZVkyMnRld2NOODVyTG9yRVJUZ3ZyaU05R3pIc0hkYjh0T1Z5OElydVh1cFV3WW0zb0ZuVmhqaGZWejNYT1NiclZpN0cxaVJvVHNiVmFYRzUxM2pFbHRmTjcwSTU1N2ZRM0ovak15WHNVMCs2WDJMbnllM0l5VDRMUWRnRHh6a29nOUVtWmViU1Z6STdrcmtzT1diNmEvdjIxNUxEUmptN3NTT09XdGdwZndYeEx4RzJOeTNjd0RtM2hQdW1pdW1LN2ROZDZ2Y3dLZUQvWTkyVm1PYm1MbXR0bFZyTTN5ZnAycHVsNTB5Y3k2WG90WmJINGF6TFQ1eWJ6WGJuWFppWnUrMXM2clZwZTYzdXYzZXZsbkhCaXVuZkRQYzRjZXFTQkFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFbHBZQUF0ZEwyN1UwREFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUMyUVM4YjJqUlRZdG0vRFk3bHo4bGpESVM2b0xCVXdDTzdDeEtSSGRIQzgyNXRCMWgrT2w2V0FReFVtQnUwTGFkSkYxVWliNVllTElrNUloL2w1UVhrYlpFTEtKdDQ5T0k5czA3ajVKbkxjS2cvMkdWNGRlbGtqWU9hUGlxRzFjR0lHd3RpODBxUWF4UFZ3NGt0czRvd1NMS0ZxZWNaY2lVa2ZYS0pybUhKSXVhN0ZOQTRKZkpTT2pyQlhtUWRFMENVWE1QNTJyRDNKTURBUHZkYkRFZlA4Tk53emxKR1B1bDZSbHVtbjRRLytwcXpyTkxNcjdOemNQcExIQjdlRUVHTnREYVU5S0ZCWG5NU21vUndmMlQ0NGUyeE9GbTFjSEd6elpLODd1M2JmRzRRVjFLNW5iRDdaazBEM2hvY21DVTQ3aW16dHdpUXR3Z1lrNWxGdHRMK2x3bC9uZXZXUjNkNFBkb1FTQUxXNys0TXRoK2RVT3g4UVpWdmt0VU84M3dlOUdpQ0hlV1pEUWxiY1Erd0tTMWl2Y3NQR2YvWUViZnN2NlozdUZObnQrY2ZZV1doaHZaTmlRUU5jZXE4MDFvV0xXRlI0OFNnMmpyWFZNaVFEZ005eXBKZTJVSU9nN24wZmY1U3BQQnRtNFNON0JBUTRTNFdwT3lCM0V0YU96eVBTK2RsOUIxazIvQ3BEYXQwcHh1SUd4dHAzV2UzODBqZUYvSWMwZ0xjSGlNdEJHWTA5V25HdlZlckZ0aTFQTlZ0N3ltOFVwNHJQcFpZRlBXODRwZjRpZ3RhaThydDYzZVg3cHY1VlQwcG9BMWNOUjhzU3ZQY01sNTJNQ1ozL1c1SGRPamRONkhzTmpWdXlTdE5XTXY1QzB6QkNUYmF2WTBjZXRCbWZNNld6S3Y5MHM2cktDeEVVNTVob3N2RVloelB2UFlDeS9BMVNocDFIdXNyWFh2b0RFbGM0bFJJSFVFODBxK2MrTTZvSzRvWmFQT1cxRGtpTFdocTk2Rk9WN0Urc1p0V2NZOXNTYkRxMlJNWEZCOUgzN1lwTEE1eGZYZXp6T3F1MnpyWkpSWDV4MlRrZTBma3ZpYitvcHFQK3JObVJuNGUzcDI1YkRWKzhHajUyUytXL2Vnekh5SGs3MGdPWFV2R1JlNTFiQlRWenYzOEh6MG55c25zamRXNThwZWUzaVB4UDlHYkRTWGJQTjBwUUt4aTNhSzFMekYwMU40L2ZtcGRIOG9KKy92Vm5kUzlwQjBiWTNFVVhPN0drWDFPc3E0TTAyenUzZkxyZkpkRTcrUG10N3ZLN21YNUNiWkFhTkY0K2NWUE9iUFMzY3pjc3BjdERNaE96YjFmYTRjdlJVL3B6dEtzckE0QVFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkJLQm5BMVg0RUVBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFhRUlneWtpb0N3WlBUZG9kSGRkaWlHOEx5dFNpRnk5cW1OZmU2U0p2dzJSM2lmNTBTUjhyeldSTStzMlQ0T1JHaFhuMzBTQzd4TUN6YmVQVHd1NVlTUElTZy80SVVZS29kNmJocllKeHBRM3ZiSmpYcDJERERvc3BQNm1nMGg0bml4SktLS2gyWjVOR2ZFTUc0c1VSemtFNkMyck9GYnVmcFBNcnc5c2NFZDdScXA0cTZZaUErcGVJQ2c3bVh5WGZHVGNoNHR0dFF6MlBXVHNJeVExdEdtcjVIc051a2s2UjlQRGNDZ2FubTRkNDNLREtKWE83NFdhUG13ZlVFYnVaaHE3TzNDTENpRDFpVHJWK01temZObkFzMkJtTzF6TTNCK1RwY2U1M3lnY2tiUkNRWDA0V1g1UjBpS1R2NUNTZWtTWmlUanZ1ZldkdVhodS9OYlBPRWUvUXpLSjdrYXpKODR2QWRTKzZkR3dsWDVqRVVFdGFjSnVrWFN1UjVDdEtNdWxnMmlneGlMYmVOWFowOU1vQWJrZFgzNTRUQ3ZQcCszeWxUdlB2bHB5dG5EUkh3ZUpaOVpxSGs0cEJIWnA4RXliVmV4WG1kRzc3b3l1eHFBOVZvaUZiek9yQWxuNy9mbkplWkZHdDZNQ2NyajdScVBkaTNSSWpucSs2WmVYRUsrRlI1eXpRZThJUHFjYitqekpFZ25MYXMrcHBTcDBENXB4SmRwVjUxSHl4Szgvd2Z1bXNJb2QzbTJLT09mVnBLNDMzSWY1S2t2ZVhwNGxiRDhwZnhObE5rLzIrZWRYdndPU1lyS1JmTE1odEp5K2xvVlJ3MGVWL0s2MkJsMEhRUGVvOTF0YTZkOURmSlhPSjBURlQ1MzBWZFJkbXVPeDVQVytsejhpczlCRnJRNWRSWjQ0M3F5Nmx2MGVzYjF5SE91Y2twWFh0Y3ZxU01kR0ZjVENPcllXZXIweHJqS2JzNjd4am11WTVpTy85VjU5TDFabUQ1SlpSa3M2QzVaNVAzcEwyTEwxM09jK3c2cy9pUEZuUEt1dGgxZjJuU3lWWmxEY25SRGhrekNtM2pUU2VlNzRoT2FYTHlkK0N5UHRLK21UTnhGRnp1NXJGOVRiYXVEUE5xSG5CTkNpNWMyYnZlNTFlclVPOHJzb0o4NzYvdGtPMVhybzQwMUZFRjV3SithNkd2K2RiNWNDVzlMUUd6MnhtRVNTREFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSU5BdkFnaGM5NnUvcUMwRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCUHBJSU9veWNGY05YZWJSSjk3TFBhTVNIbnRXVUdGSFNqcTVZVjRSL1poN2FidE9WYU5FTUc5TVlvL2ZyRk5vUitLVUdIaTIyU2VMd3VQbjVmNlZVZjZmUy9xdXBKODByRWlKOEdpcEtNR0c2Y0ovbENCT213WmRkNWUwVFJJUnVhRWg0OGpveDBzNk5Ba0oyU0Rsbnl1ajBpNExESHQ4dmtQU01ZVVFsdkhaTFVSU2xOeHpqRThVNVNEbGZGc0xpMXlKNUg3R0xjQlhHaTZUdEkra1h4ZG1WQ0lxYUJIWk02djMxWmFWcUszcjQyOVZiaGprbFp1K3k2THVkbGJ5ajhsd003ZDliYWF6bU1rQmxjSDJWMXNzcEdSdU4xeXQwWG5BZHBMT2s3UmVRZDNyekMxS3hBMEdWU3VkVTVVYUQ0OUQ1SG5sSHBJczdsNGExcFgwRDVMK3VqU2pnUFNlVXh3azZWT1NiRUFhRmRwWVA3cGZYeUhwelFXVlpBNDFIVjZUNXhlQjY0S0J1TUNrVWVML2JRcTNMQkNQb3NRZzJualhSTzBYZkVQUzd0VTM2R2VGb1BzK1g1blYvRWVsdmRoSVJ4bXp5bXp5dThXTkRxdWMrUHk0U2FLR2NadDhFeVpsdmV4ek91K052VVRTMzNkQWJNcmlOM1lDWXZINk94djI5YlRvek9ucXc0eDZMOVl0c2ZUNXFsdE9icnhOa2tCY2pyaFZuVDBQZnhjL0w4bjdHMStTOUw2MHNYNHIxQUFBSUFCSlJFRlUzdlY2TFhKZGs5ditaVXRYc3BmVkJhR2l5UDZJbWk5MjVSa3VlYzh2NjVwZ2VMdzBGYmNlcExWVEd1LzdSSDZUSjQzakp1TFdnenhlWGpsd2VYdkw3OHVJOVV1VXFIU3A0S0s1MWRrVGpYelh0SmxYMUh1c2pYWHZjTHNqNTFaMTNsY2wzN3BKL2VVNXVzK0RUMno1ZVd0enZEanZpTFdoOCtuQ2ZhK1M3OTR3NTJWNkorU01uNUl4MFlWeE1LN05YUlc0OW4wY2l3YVhuT3ZsOUhHZE5QNE9lSS9Sd3NRTzNwTjQyNVNFdjVIayszaDJ1UHFEeXZucTk5TGZkaWpyZWROajZ4UTZFbWVaSE9sa05MOVRTVXFkYWtZNFpPd0tFSjhsbjF1d1YraTF4SnNhekIyaTVuWmQ0ZGRXUGZvbWNHME9KVTZEZmxrNVNOaFowdGZiQWpxU2I4azlLdS9sN1poeHZ6ZTZhU1YzMDA2VDlKd0d6MjEwM2NrUEFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0VEbkNDQnczYmt1b1VJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFRmc2QWxGR1FsMDFkSmxIaDBVWWdRN3FtV3RNWG1La05DaTdUWVB0ZTFTQ3hoOU40cFVsZlhLSHBOMlM4R1JKUHZOTVcyTGcyYmJ4YWRzYzdsYUp0ZHZZeklKRHZwai9aRWxiRHhtS3ZDd1phVGVweHlJRnJpMlErNTRtbFowUk45cTQwc0k5RnNlMGNkRitrdnpmcjYvcThMckFPamZKNnQ1VmZjNUpvdlRENlN4cWNsWjZKM1JOMU9UUEtrTy9TeXJ4MWdjMmFlaUV1RGFJZGw4ZzJsSU9zOFJReGFYMy9WMWFUckM5SENMRXgxMjdueWFqS0J2TTVvWVM0MEFMYS9zNzlhK1NJcHh5bEJwSTdaM2VuN2tzbkM3NkcrTThiUWo5b1VxVWJZT1NpczBoN2UyVm1PQVJrazV2NlIxY01yY2JidjV3SDFsYzdJTHErMWpxUktOT3YzZGgzZURuN1VKSjZ3U05CNHVSN0N2cGt3SDVQYlNhcjM1RWtnV0l1aFM4YnJmNFFKVDRVc1Erd09qMzFkK0VqeGNZaGZQTm5qM2ltankvQ0Z6UDV0bTFHQkVpOFlNMnZVRFNTVjFyWUVCOVN1Wjd3OFZIcncvY2QvNEdIeGZRUmp1SXNoTzkwdEQzK2NxazlwdTFHVmtvMVhzZVhRNTJObWJISzU5cnFaSk52Z21UcWxDNkY5emxPWjBkRnIwMzdZKzExQVZaMmRxcHBVVzNiODFLZmRkRXpPbnFnNHg2TDlZdHNmVDVxbHRPYnJ3U2diZzY2MDZmQjFpczhwNGpGYlJvMnRtU3ZHOWk1MkszNURhQWRHc1FPTGhnL25DMXBGMGtMZEpKWm1SM1JzMFh1L0lNbDd6blAxQUpFMXFRZmxuUEp6d3YzRitTMjdsV3hpQ2FoOGgxanJpMW0rSjlMcmZONStwdEJwOGR2cmF3Z0RyZmhHbEZSRGpCc3dDbjk2MS9WTmlXcmlTUGVvOUZyM3RIK1VUT3Jlb0lYRWVjMjB6cVk1LzlleXovcWl1RG9HRTlJdGFHTHJJTDk3MUt2bnZEMkVyZlRRMjdvSFBSUzhaRUY4YkJPS0FsNjVjNjc1amNUdlI2eDJjaWUrVm0wR0s2WTZzNXhXdUc1b0lXcUxaVDErc2tmUzNOLzcrZDlpY3N0RG9wbEh5WE9LTm9zWU1iWkgzZjVIQnErd1pwaHFQK0pOMmp1Q1l6ZlplU2JaYk80eCtaV1NrN05YeDZ0YmRuNGZjdWhkem50R1MrbVBOZWJyck9qcG9YVE91ckVnYWxqbnJtZForejlGNTc2ZDJucUdmbEtla09WWTdtU2xkRXVxTllrQThFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFnV0lDT1p1dHhZV1NBUVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlMQlNCS0l1QTNmVjBHVWVuVmx5Z1hhMGZqa0NqN2tYMVVmTHRxREFQcElzOHRoR0tER2tHcTVQMzhaYWlZRm55VVg2TnZwd1dwNFdGcklnNEJNcThaNG5KbEdFaDgrb3hLbEpnTEpKWFJjbGNMMitwTThrc2U0bTlaMFdOOEs0MHR3dCtuNjRwR2VNTWVTL0toblVMY0xBWnNza1ZHSlJvVW1oYTZJbXp3OFVnc05BSXVaSm1TU1UzaVIzaTZydktlbW1Kb2trMlRtRGplWWRMSDd1dW54VjBtMDFqRDBiRnRYYjZKdEx1cng2YmpZS2FJSG5JSDdQNW9ZNjc1eEplWStPa1ZKUjlkd3hONmlmQlZiZW1BdENVclJERU45Yk9LcDZIdDZWS1JoVDBKU2lwQllEL2h0SkZyeU9EQ1Z6dStGNkRPWUJhMHQ2ZHlYMGJrY2FwYUhPM0NKaVR0N1VBSFc0WFczTXFieW1mVXVBYUpNTi9DMlN2V2xwUjdTVVBxcWRybDdFUHNEd1dpVktwTDFQNjUrV3VubHF0azJlWDhRakZ0RkQrV1dXaXJNTmwveU5KTzcxcy96cWREWmwxUDVYOUx2R29oWWZEcGduV1l6WGM2Nkl1VXZmNXl2akJxSDNQLzYrMnJlMHM3UytCSXNUSGlQSkRyQ2l4U1diZkJNbThWcldPWjNuSlJhWTZwckRra0UvUkQ3cnpPbnF2dzJpM290MVN4eDl2Z1ppWW5YVFI4YjdibHB6L25ZbzB4d2hva0h5T3V2T3VudXNGbFN6Z0t1ZE8zd24wS0ZQSkwrdTUrVjU1UHNsSFpaWjBhNElGV1ZXL3k3Sm91YUxKZC9JcUxZNG41STl5bVZmRTdxdlAxYnRUZTlSQUx4TmtldGNjZXRCYzd4bXNmaTg5NW5iQ3FXQ2JLNlhCVEV0NnZtRnpFcEdyS1dXemNGVDFIc3NldDA3MnNWMmFuMSs1V2c1d3VheDd2dXE1SjA0YTRoK1g5THpxdWZ1b2hiV2JyUEtMdjA5WW0zb09uVGhEazdFK3NadHFUTmZMZVhlNWZRbFk2SUw0MkFjMjVMMVM1c0MxNjdyQzlONnEwdGpJbkovdU9TNzVMWGVnZW5jdWt0OFZxMHVwWGRhdmE5NWRBKy9qNlA5N0wxbHQrVzVtUVBBVHFGMmxlVG5xMnNoOXprdG1TL212SmVicnJPajVnWFQrcXVFZ2U5NDJPRzYzM001NFZ0cFRGMmZrN2hCbXRKM3dFR1ZrL2F6R3BUWFZ0U04wOTAwQzlVM0RUNmI4WjFCTzJBblFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQVFOQmxEMEJDQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSmhHSU9veWNGY05YZHJ1ZlYrQVA3TzZ3UDdNb0lMT2tXUmp6bUd4Z1ZsWmIxaGR3djI4Skl0TWxvU2NzcHVVRnpYVyttYVFWaUtlMGVRaXZRMUkxMXFBQ01TaFNmQnlJQUxiWkV6a2pMbEZDVndma2d3VG1yUnZWdHpjc1d6UlhSdk8ySWpJaGdqdTkwbGhrWmYwOTVia1BtNFNMR3BpUTJZTEVTMUMxT1I5U1N5OFNaMG54VzN5L0VhVXQ2eDVsSWdXRDVoOFFKS2Y0Vm1DWXY2ZVBsV1NEWFFzMU85di9LeGdvL2RQVndMWUg1VDA1U0F4dWxsbGR1bDN2NDlzbkdweDZ0THdLa25IRldSeWNCSkV5c25DNHNJdkdrcFlrcGV6S1huK2JRaG5BekhQQjNQRDFVa0F4WWFXcGNIUGdmdm10YVVaTFNoOXBIamNvQWtsYzd0aERJTjVnSVY0emcwUXhYVGVkZVlXSmVJR2cvbzNOVUFkcFBOODlSMUo2REZxU0VUMWNhbndVRlI3WnVVVEpYSWRzVFlidk92K09iQmZTOTZmczlndHcrOU5udCs2NGtETHdLWHZiYmhiRWtKNWU5QzN3R3QwaTBRdVk4Z1ZhaGhsRWZtdXNhalhSeVN0VndqYzRxT2VFOWhSVWtUbyszeGxsTUc2eVJtVjEzVjlERkhmNytHMk4va21UR0syakhNNkMxeDRqYjUxeHdkSzFCeVdPVjM5am81Nkw5WXRjZlQ1S3RuVHJsdm1wSGpqQk4yOGwyOVJ5aHdoK0ZucnpsekI1YWNsaDBPbDdWMjE5QnRVRGpEZHgxdGxOdHpmVnA5eExrdUltaS9tZmlPak9aWjg3MGYzTzZQcjFvWDg3RnoxbjVJVDJOejZ0Q0Z5WGJySFpDY3B6MHBPZEdhZGFlUzJlNURPRHZmZVU1aEo3bHBtTzBubkZhNmx6cGEwZjNKSVd0aU16aVNQZW85RnJudkh3YW5yektJT1dKOEwrUXhpVmlnVjU1dVZ2MyszODhQL1hwMFQrcnk2TDZIa1d6SGN4aTdjOTRwWTM3aE5zK2FyZmVuYjNIcVdqSWt1aklOeDdjNFJVaDNrMDdiQTlielhtclBHaGVjUit3YXZyWExIVk52c1o3SGdkNmxVZ05lTzMzMDM3WW9sZ0xsZldqdmtPT2Z3YytVNXArL0ZkREhremg5TDVvczU3K1dtNit5b2VjRzBQaXRoNEh3dGJ1MjdZcm1oYmZIbzBuZkFUeVh0S09rSHVRME1URmQ2ajZydW1pT3d5bVFGQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRS0M3QkhJT1RMcmJHbW9HQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlkSkZBMUdYZ3JocTZ0TTE4WjBrWFZvS002d1FWbEdOc0ZTSCs2ZXEzTFlBVlplaFlLb0FaMUZXMXN5a3hhR3B5a2Q0QzU1ZnBqd1lxRmp6M255OVVBcGxmcTBRN2I2d2g3RnE3UVNNUlMwUkFjd1E0UzhSQW1ocExESnA2MzJSa3ZYMHVwQW5wbWp6dkZuT3lnT3p6cW42MmdGYVRjR0lTdzI3YkVINjBUbStVWkhHQTNIQjdKVEw4T1VrV2VyUGd5anhDcm5IZXBMcXQ2cmN4c3E5eWhOSkh5MzlaR2tmajZtVkJRUnZGVzd4MzI4S0szNXJFSU40cTZickN2UHFVdlBSWkg3VFZCb0UyQUxzam8vRzU0a21Eb2taRmxDTG1WcmtDUWFYQ1JHN1RhWktlRS9EdDc3dTQ5YUIvbzhUakJ2bVZ6TzJHaDdmbkFjY25wdzU3Wll6N2NVbnF6QzBpdm5XNWM2cElNVyszLzlMS3VZRG5oamNYOHZNemIwR2NVb2RCaGRXb2xkeEcxUDV1WFZBcjl1UklFZnNBZzdYS3Y2ZStLQlYzZFcyYnJIOEtFZlF5ZVpQbnQrMzFmUzhCZHF6U25yOVkwTXZDYzZYejBFSFRQQWZ3bXRGcnFXVU11VUlOb3l3aTNqWDNsUFFLU2E4UEFHMXhBRHZhK1daQVhzc3lYeGxHMFhkeDYwRmJva1d1bTN3VEpnMnRaWnZUYlpTRUlMMWYzNGZ3Z2lUY1hsSlg1blQxNlVXdDQrcVcySFdCNjVKdjZxbVNqcGdDSW1kZm8wdUNPWFg3dUN2eGRxcWNuRjJVem9XYTFzbm5SazRmT1FkcFdvZm8rQ1ZqZTdndXVkL0l5UFo0dldESE5SWTZ6Z2wyK21oSG9nK1U5TmloREx3ZjduZWl4YUc5YnZoUzJsZnhucXdkT05xaFk5dm5pam50bVpTbWF5TFhFZUxXOHhUUDg3cm13Mms5VXRJdlAwb09HNzlZSXhPUDdUMlRrOGVTdmFSY1llMGFWVnhvbEtqM1dNUzZkeEtJMHZPWTBYd3R0SDV5RGVwdG5kZVBLOXI3SzIrUWRFMk5laTA2U3NUYTBHM293cGwyeFByR2JhbHpUckxvZm11ei9LZ3gwV1lkNTVsMzJ5TExVZS90S0NadDdBL25qaW5mWC9NZHAxOUhOWTU4R2hQWXB2RDh6czVJTEpqdWV6QjlEeVhmbUY5SytrUjEvODJDMzAzRFAwcjZTdE5FRGVQbnZvZEs1b3NJWFAreGt4NlduckdORy9iWklIcmJ6MWpwTzZEa0RsY21rcW5KU3U2ZXR6MGZhS085NUFrQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBb0RVQ0NGeTNocGFNSVFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFnVVNnNUFMM01NUXVHRHpOdTFOOVFmeGpraXpVRmhGeUw0NWJDTW1YY0cyRVdoTGFGbzR1RVNZZWJsZmZoTHBzWEcxaEZZdEVOZzAyTHJkd240VUdab1ZaNDhBRytUWWdzbUR3VlpKK0tPbVdXWm5XK04xaXl4WWZ6am5UeUJGUXNGSEFEalhxTlM3S2J5UmRuR0Y4WThIVkQyYVdPUzFaRStQS0Z5YmhzNXhxZkt0cTk2NlNyczlKbkpubUhwSnM2R0NEdGRKd1VESjBMODJuVHZwYzQ3eEplYnY5bjZsVE1IRW1FbmlwcExjVjhoazNSL0U3YXpkSnAwaDZlR0grNDVLZlVBbUUrTHY2cXhieTdscVdKZCtCNGJia09EMFlwTThSVHhxa0hTZWlsR3NFT055ZVhKSHB4NlJ2LzcwTE9ycXVJTVMwSXZ5TVdMVHh6UVgxNkZMU1NFSEJLR0UwendQK3RSSTNQU2R6SGpXT2I1MjVSY1MzTGtmb3lZSktub2R1SFRRd2JFeHNZWEE3ZENrSm15V3g2RWVXWkRMbnRCRUNQaEg3QUY2LzdsS3RLdzZUZEZRUWc5dzFjVkR4bmMrbXlmUGJ0M1Z6NStFSFZkRGZWeHYrZTQxallkUEllV2pFdXlHb21hMWxFekZIYytWSzNqWHJTem84emZYdkU5RFNOc1N0WGEyK3oxY0dhTDJYWnFkZHp3MWd2ZWdzN0tRaVVxeXd5VGRoVXR1WGFVNW5zVHZ2UXoxcDBSM2RvUHlJK1N4enV2ckFvOTZMZFV0Y1pvSHJXZlBNSE5hSXpOUWRXWGVOaDdqUG1reWk1b3M1MzhqOFhoeWZNcW90dWZYeTNNWGkxeFkvOWpmMjJnQm5lcmwxbVpXdUt5TFhmUk8zSG5DTjNCczdxWElLZmx5MVpyTGc5YmhnQVRpZjkxZ29zU1JFektOS3ltOHpiZFN6WDdMdW5kVytEZE41K3hhekl0YjQzZUw2UHF2ekhZWTZ3V2NmNzZrVE1TaE9INFN1STlhR3h0V0YrMTRSNnh1M3BjNDVTZEFRNldRMlVXT2lrNDNMcU5RODFocFJZemVqZVdza3NRUHVKMHI2WG1sR0krbmZsL1pEbTJhN3FEbTE5K0E5UC9RZm4wbmF1YTN2N0N5VFk1KzZmZkc2NU9pOWJ2elJlUE84cTVWYng3cnBGdldjenVQN21qdC9MSmt2SW5EOXg1Rlg2dmpGb3VtK3ozbEYzWUhjTUY3cE8rQVFTV2MyTExQTjZMUHVSazhyRytkNmJmWU1lVU1BQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSzlJNUFqQnRHN1JsSmhDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQVlLRUVvaTV3eitOQzlrSkJqUlRlaHVqZmVjbWc4OWFHRFkwU2ptN2IwR3Z2Sk9EWHNIbDNpVDVMUUtFMC83Nm0zeThabVRlcHZ3VzBMU2g2dWFRUFNicWtTZUlVdDFTSXMrc0N3QmJJOGJPNWZRYWJXVW1hUEhOYkp1TmVHMkhsaEhrYkhtMGk2VXBKRmlRdkNUOUpBdkhYbEdUU0lPMGJKYjJ5UWZ4cFVYK2Q2bTd4VWtJK2dWSWozSEZHV2V0SytnZEpmNTFmclZvcExXNTlzS1JQZDFqOG8xWkRaa1R5Yys3dmlJVXdTb0xuUHhaSy9XSkdKanRWYVMrU3RIWkdXb3NMUDcweWVQL3RTTnJqSlIyZGtkOGdpUVZnOXBSMFU4TThjcjdudzBXVUdDSU81Mk1tRnJCWnEySDl1eG85VWxBd1I2eHJISmRYUzlwR2toMXBSSVU2YzR2Uzk2cnIydFFvM2MvbXV5VlpnQ1FpUlBXblJUTnRsUG5NaUVyTk9ROExCdmtkWlJHWW5CQ3hEK0QzemY4cDZlMEJjNzVCRzZMZVlUbE0rcENteWZQTHVybmRIbDF2aHBPeHUxWGYwYTJxNThNQ3lGNVRicGZXbFA1L09jNnZacldtTFpIa1dlWE8rL2Rjb1liUmV2cmQ2ZS93OTJzMndFNGFQRS8xblBQQk5kUFVpZWI1b3I5QmRrQVdIZm8rWHpHUE52WmVvemszelM5U2lLL0pOMkZTUFpkbFR1ZXg4b2IwWERmdGswWEh2MENTMTRDNVRnaVowOVh2UVg5L3ZhODZhWTNyUFNKL0c1b0c3MzhlV2ptSXNtUEY0WEJuTlYvL2hTVC83UkIxaHRPMGZvNC9UdEN0eERuaHJIbG1qdUN5eFZEdEtJN1FqSURmZjJkSWVsYXpaUDhSMit2MEYyV203V3F5cVBsaTAyOWtHenlpMmhKVk44K2RqNjFFQWo4eTVwMFhWVVpKUGhFaTE2K3YxbXMrSS9MWmFkUFFWM0hyUVR1OVp2VlpxTmU2RWNHQzZQNysvSHZLek90aUM3ZDViVlVhUEtmMk91ckMwb3c2bWo3cTJXOXpqeTNTTWJUSHlvNlZVeU9mQjljSjBVNFU2NVRwT0o2M3Y3dzZTL3BhQjgvN0l0YUdibU1YN250RnJHL2NsanJuSkhYN3ZvL3hvc1pFSDlzK3JzN3pFTGlPMm9jclpXNkhpajQ3aWc2NXoyWmJjK3JCK3Q1M0V5eGUvUmZwbm9MblkzYkM0THNnbzZFTDc3am9mcG1WWDZsRGltK2wrZHYxc3dycXllKzU0N2kwZWZNWWU3bnp4NUw1SWdMWGZ4b1pUeWwwYUc0SG56N3ovMzNwWUJ0Slgvb09tUGQ5elRyTjN5Q3RNMzNXbWhPNmZrYzVwMDJrK2YvWmV4Y29mS3N4Ny8vNzErZ05peUhIRVlQRUpBeG1SY2loQTUyMGxrbWtrR25sRUpQeUVyT1dNdVE0VElOQmpiTi82MStKZEpoeVNsSXRDc2tZcDhxTVF5d01PU1dIeGV2MC91OHYrK2J1OFJ6MnZxNXIzNGZuK2U2MWZ1dFh2K2ZlcDgvZTl6N2QrL3BlSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSW1BaUlJRnJFelpGRWdFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSS0NBUWRZRzdqd3ZaQmRXcS9taTBvU2NMYkJXZzlRb2h0ckNla0FUZWFzR0xNdXJwd3dDcEZvT2E2WHFGZVNrZ1FTR0owbUF4V3VqbWNWUVN4U3ZOdDYvbitWNmNWQ216RXVOS0NrTytNNG13V29yRHVCUmJzWW9nbHViNU1BRG5KVUdxMHJqZDUwOXNSRFFQcldESXNhaE1Yc09UYnJxWEF0Z1R3TFVlQUJzZTEycUkxY1gybldRY1Q5RS9Cb3F2bndXQUJvNTlCWTh3Umw5bDlPVGpIWis2ZVZ2WElwNzE3Q0lSSmE1dHozYUFzWXJjZStkenE3QjJ0Nm8wQ0taZ3cxMGM5UjlqVkk0RHV3ZUlTRWF0YWM5c25JdnNGaWdjUStZNWE0c0ljWU5TbzNTK1R4eDdvd1RUK2M0ZjUxd2YxQkROcEZBL3hkNU9iNFIyTHUrOEJGc21jZHRIQStDZkNBNi9iSnlmY0wzMVVlUEw1aGszMnl4WjMzTUFQTlpZaG5uUlBNYlVnY1VZYlZJbDcrOHE0Y0hSVm5JaUJTdHBpOXBWNG5qenR3QytYRHVqRWFRZnNUOFlRVFYrVndUdWRaOVJVUnh3NnVzVk1xcHg5anFHOXVmY1RhRmI3MWxCeERpMERtczZ0bW0wY3g0NlUrRjZqcUt4LzlrUktLYnpnbnMyLy9aSUFFOWM0ZWlncEsveHZJNTVXWUxXZEJacTgrTllXZVorcXhpYndEVXBXTWVSZHpUckRwN2Z6QlBlc1p3UjhieDYxK1RjTWE1Rk55T2xtNlV6ZU9zNXAvVWNic3gwbzlhTHBYTmtEU1lVby9wWUV1MnJrYjQxVFo0RnZCREE4UUJLSFRaYjg4eU5SeEhsTTlMNVgyNmMyZWNzWi9sZWNXc0thbE13bUdlRlE0WUhKbWVkVVNMWE5lcXk3dUxXWkJZMWp0VTZZN3Q1NDhEckEwMWZ1VzlRQS9PZFpmOHYrWDdOczhoVEE3NUJXNnJ3R1FBdkFIQ3VVUXpma3VlcU9OWTEzV3k2WTdqdlpWMlR6OVlsNXp2SktxNVQvajJxVDB5WlFiZnN1WHMyVDMyanhtNVBHYndPdEpibGJYMDNyWE1SZVhJOVFnSFQyd1BnT2VkZG0vdFMyd1BnL1RUTE43YXgzMHZ6dFAyaXVGNkhGRndYSDF1allBT2xhZTNIM3VJdW1sOTV4a2duekJGcmI3NFQxbmZqZTNNY3dlZlVtZWMvekxNa2xPNnorMmd6NnpqVnJmZFloYVM5WTBEZjkweHorcExsM0xHYnJ2VnVkRTdaOUl3SWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSVRJcUFCSzRuMVZ3cXJBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FoTWtrRFVaZUF4R0R6MTFRQTFSUDg4UXFoVGFjTW9jWjArREpENjZrdFIrWGd2Y0xNY1ZqRURyN0hXTWtHTUtEN1dkS0tOZEdmTFVXcGM2VEUrbUJYNXRUTEpqUmN4TGxFa1paOWtKSnlici9lNXlEWS9Jb2s4ZU11MHlmRWpSRHk2UmxJMTV1L2M5bmtiQVBhSnNZbCs1SlovMVhPSEFYampxb2N5Zm44OWdDTXpudXMrc2xVU0x1RjRVUm80enV3QjRQdzVFYmNGY0VsVHI5dVVKdHA1dm5SdXZWRVMxYVlJc3pWWUdIYnp1ajZBTnpjaTBJZFlDNUFSajZJdEZKdm0rdmYvcE9jcEZzZTE0bmFOY0RFNTFBb1VrM3lxVTN3aWFrMWJvNDQ1YTRzSWNZTVNBMVE2RnFCaFBRM1BJMEtVa2Y1OUFGd1FaRGpNUGsxaEU3NS9QMXRSU2ZadnpnY3ZCc0QzelJQZUMrQUE0OXdTc1ZiemxIMVIzQWhENGhybEdrdWFKZSt2Qks3cnRscEpXOVFzeWJzQlBLMVpQLzJ3WmlZalN0dDcvakNHcW53bHJVVXVkRHBxV0ZXWHFhOVhLRTc0SGdBUFhsVlJ4Kytjc3lrTS94OGRBZVAvMVlpMTdaU0VKTDN6OUxLaUhRM2dGYzQrRURFT3JjT2FMbnF0U2JGT2l2ZjhZRVhmWXYvZ091emZHc2Q5TjNIMFEwYWxvd0k2dnZtdUlSMnQ2UXpRRmtTeHNzejlWckZPQXRmTDZtdzVTN2tDd0VNYnh3L2ZqMnZPalVucGJra1lmR3REalhsR1NlNlhHZUtPT1VyVWVyRmtqcXpGdyt0Y3RsYTUyblQ3V3RlVzFxTnZrZXQxRWJkdU9kODdPVE9qbU9UWXdoY0IwT24zbFdNcldIQjVvc2F4R21kc05Sd0dsbjVESVc2dXhVOEE4SlJnOWlYSlVReVN6a3JmbW5FZVhKS3U1ZG1JdlNIekhjTjlMK3VhZkpaYnpuY1NDK3VweElucUUxT3A3NnB5NXU3WlZxV3o2bmVlSmRBSnlCQ0JEaUI0cmtBblhUV0M5UjdBdkxtSTM0TjVKK2RXNmJzaFJYNTV0c096ek5zMjQvc3RhMVFBd0NLSDE1V3lHenpaR3lUSHczc2FTOEkreFhQWkx4ampqekZhMUJ4VFdyZEY4K3VZeis5TDY1ajdmT2srdTQ4Mmkxb3plNTNZUjY5ZHZHTUEyNVJPSHVub2VteUIzMWJJMnhJc3puVXMrU2lPQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0l5ZWdBU3VSOTlFS3FBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJVEo1QTFHWGdNUmc4OWRFWU5LdzRDd0FOVnFNQ3hSVWZEZUJNWTRKVGFjT295L2w5R1NBWm0yT1FhTGNBUUM0N0dIUC9kUk4vMXlTR1lFbkNZeVQzcVNRdWVvMGw0OHB4S0JUMmhvcDVsQm9vM0FuQVJ3RnNZeXdUNi9NbVk5eVNhQjZ4Mlc0K05GYmZCY0RWSlprSFBMdC84eTZkMWdoUFhzK1JGb1ZCOXM0UVJISmtzUkZSUFNJdExhQjJqS0hnRkVWUjd6SWd1YmNBT053cHJEdGc4WmRtL2FCR0ZJY2lmWFM0NEFtV09kNGludFNXOGV0TnY5aTVFVUw0MXB4Q1I0eGxGRFovY2dFUXJqTS80UmpubVpYWDBJd2lJYWNEaUw2clFNR0hmd1ZBeHhia3p2WHZva0REWm9wL1BSL0FuUXY0NVR6NjI0YnhYbWs4eUhsKzNqTlJhMXByL3N2aTVhd3RQT3UyTnU5Y0ExU09DUlI5NWhva0lueXBFWjUvZU9wRG52Um8xTW01Zmw5UElpbXVWVnpudmttYzN5TVk1T25QVVh2SUFJVFhTU0xLa0RpNlhHTkpyK1Q5bGNCMTNWWXJhWXNhSmZseEdsczVsdjJtUmdZalRUTks2R3VJNnJITnVMYWgrRlVmVG0rbXZsNnBOVTlSaVBFNEFQKys0cXlCYTJHS1NsSnM3VGtWeEhVbzRzcnpEZ29iVzBQRU9EVDFOUjNiNlRVQW5tbUYySW5ITm5sc2NvQlNrdHdkQWREWmdQZGJ3ZE9OVHFOcXZTc2xET1k5TzhVMW5aVmw3am5HR0FXdXJlSTd5K3JNNzRSbkYzWWdPcUk2MUNuNlg1amwyanorTUFEbkdjOXc2SGpzZ1FPY3ZkZUdIN1ZlekowamE5YkhjK1paczF5emFYTXVQcWFuTlc1dXZmb1N1VjQzY2V1V0w4K29PVFo3bkREbXRsWHVjM1FxOGc4akVCTE9MYS9udWFoeExIbzl4clUzSGJ6d2ZOL3ovYlRMaHQ5bEtKNTVsUUhZa0E1dHU4V2w0OFBYQW5nSkFPNzdod2dSZTBPV2V3ejN2YXhyOGxudU9kOUpobWlydnZLTTZoTjlsYmQyUHJsN05tODVIdENjOVZ6VUNDbHY2VTNJRUQvQ2tkcXliRDM3V2Q3UDRKejBOOG1wZEUySGNzdnFzR25mUzd6OThaMEFEbTdPczNtWGNGMUMxQnhUeWtNQzEzOGtWcnJQN3FQTm90Yk0zbmN1K240azc4TzgzM2hleEJhTExrL3BlN1BzZWQ3RlpOMHNZY3gzbEMzMVVSd1JFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJNQk9JTmhvMUYwUVJSVUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUUxcFpBMUdYZ01SZzgxVzZrclpQZ0g0V0FJOE43azBHZ1ZlQ0c0amhQY2hhSUlvTjdBRGpmbWM2eTZGSEcyRmMwSXBvUEJVRGhFWVhmRTdoWEVqNitzUkVJRFVqdjM0aHdmdE1ZM3pPTy9MRHBkeFJHdmRLWWQ2MW90MDRHYU52WHlnQkFxWEVsdnh1OUhjQWh4akx4Z2ovRm0zOWhqSjhialFMY2x3Q2djYkVuVUJEelNFOEN4cmprL0Z3QXJ6VEcveEdBUFFGODBoaGYwZjVJSUVLVWpVYXJCd0dnTVM5RlVZY09IQzhwcUxaTTNIZm9NbHJ5OXpwYWFQUDhUaEtjcHNoT2JyQ0lKN1ZwbjlFWVp4MjR4RGpUS3ZiVXBsOXFJT1VWQ3ZmT3FSU1cvZ0FBQ3U5R0JRbzhVTXlSWTNycFdwZmpNZGZkYnc0V3V2WWFzMGVNVGFWOHY5MElmdEhvODNNQWJwVU13U2wyY3JPWmhITFdGaEhpQnJrR3FCRk9JOW9xUnM2dlVVTHVmTWYzYzZ5aDd3ZmdnNDM0KzAxTE8wVG5lYXVSdVdmOWJpa3V4d0tPOFo4RzhOM0d1ZE5mTisvMmJlY0lHa1FaRWx2S09JVTRKZS92cGdrMjlOMStKVzBSV1RiT3BjYzJZcnNuYklpdzF5eTdLS0d2eURaWmxSYWRsN3k4T1hNNXQyZEhOMU5lcjJ3SDRDTkpZSG9WMzl6ZlBhTHdXNlJ6MnpjQ29PT2txRUJuT0hRQ1loV0tpUmlIcHI2bWkrcm4zMGhpYnA4eE5tNkV1TjZsNlN6cDJzSXlhRTFYQ0d6SjQxYVd1ZnRManlDWXQ1YUx5aGhkWit2WnRkZFJsNWM1MUJseEFBQWdBRWxFUVZUUGxPTWZaaFRIWjUwL25KeWsvV3pLQU9hVVBXcTltRHRIMXNRWE5jL1ZMR09iTnZzVEhZTnczeitXVUZ2a2VsM0ZyZHYybzNNNE9oSGgrWGlVbUxHbGI5QkJ6Vk9UYzgxMSs2YXlpRWZVT0JaNXhzWTkwVE9hL2RDcmcvc0R6emFPY0h3dml6aGJ0ZlRMZVhGNDl2blM1T1N6YjZIcmlMMGg2elNHKzE3VzllbHNtK1I4SjRscSt6R21FOVVueGxnM1M1bHk5MnlXdEx0eHVQYmc5NTZkQ2hQaStvbmYvYXp6N1VlVDArRFM4NFNTWWc2NW55MHA1N0puMTNYL002L08zSnZ6dXp3ZHIxc0MxMXo3cFBOc1MveXh4b21hWTBycko0SHJQeElyM1dmMzBXWlJhMmJ1bjg1SzU3dWxmYVI5bnV2aTQ2MlJPL0VpSEgwUGRWOHpwL3AzQTNBeEFON2pMdzNlKzFTbCtlbDVFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUmd0QVFsY2o3WnBWREFSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJXQnNDVVplQngyRHdWTE5SYmdQZ3RNYm8rOEhCbVVRSXRVVVlLRVZkMkY2RzV5OEFVTmpuTDUwTVN5KzhPN09iUkhTSzlGR2sweHA0OFpzR0tqOHhKckEzQUlvbld3UEZEOCswUnE0VUwycHNYRlk4aTNHbFI4aVY0dzNIc0M5VVl0WW0rekFBNXdId2ZPZWl3Qk5GVGRrM2h3alhiNFJZMlFkZVVwaTVWeFNwTUx1MWZ6ekNXSkpHblJSSE8yWWt0SDZieEZEUEdVbDVvb3BoRlRHYXpkL2ljTU1qUWsxQnVUY3RnZUFkenppdmN0ejliQ1pvanpBUnMvQWFhVlBzKzlUTXN1WTg5c1ZHa0psckZLOFRDeHFudlNXbGxaUHZxbWU4aHJsOUNReFJDSk9pR0hTWVFJR01lV0dySkhiTnZrTWhvYU16SERSRTdCMXkxdU1SUW4vZE9oOE00T1JWalp2eGU1Ukl6SmVTNDRTdlorUzU3QkdPUTI5d3BHRnhETURzK2xqclVvaVhkYU1STERrdEVpS2l1UDV1eWNFSW5jdHdEZmdmRGlickhMWGsvWlhBZGQyZVVOSVdFU1c1RE1BL04wNG8zbWR3R0JHUi8xalNpQnJEKzZnUDF6K2NsN2tmb2RGODMySnNVMTZ2VU1UOWhZR05GQ1c0ZUVjQTd3WkFNY09JNEQyamlSaUhwcnltKzdNazZ1cDEraGh4TnMvK1FJZGFYTDliQmFtczUyQmEwMFc4amI5UHc4b3lkeDhlY2NabHJXMjB3UFdpc2NQaTlKQ09OM2x1Y3BXMWNoc2U3M1ZKR05TQ2dZNFdubXlKT1BJNFVldkZuRG15Tm9xKzFuTlI5ZkE2QVlzcVJ6ZWRXaUxYWG5GcmZwTS9JTzN2YXRRN01zMGRBSEM4b0pQa1BzUDNrcE5nbmxXWE9rM3NzNXcxOG9vYXh5THVmdkM3enowQjBObDZwRk5NY29zb0g5TjVZSHFYUEE0RUk5dVI0dGJQU3Q5Wit1cTdFWHRETWhqRGZTL3JtbnkyRFMxM01DTDd3ZEJwUmZXSm9lc1JsWC91bmkwaXYvYWJOWjNJOER6d3Z3SFFxZk9YMDk5Y1kvSStDY2NIbmtjd2VNVDZPWmJ5MndxZFprVUVmbk9rWTkyL2FyN0xjbjlIc1c3ZTczdklISWU3RWZuMW1ZYjNUbHlmWmZYbWRhZDBKczAydEFTckV6WkxYbjNHaVpwalNzc3NnZXMvRWl2ZFovZlJabEZyVXRiU2U5Zm04alNtMDFHMEovQ2M3ZnpHOGVxV3hrUitDV0NYUnF6NzQ4YjR0YVBkSXQyTDRsNjFORmp1bzVYbW9lZEZRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVZQklFUEliL2s2aWdDaWtDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJakE0Z2FqTHdHTXdlS29GY3pzQS85NkltTnk5UWdia2Y1eFQ2Q2JDUUNueXd2WWlUQks0cnRDQlVwSWVJUU1tNFJVL3UxY3lrTG14c1lvVXZUdlNHTGRHTkw3ekZNUmxuNjBaTE1hVkZxR1FiaDJPQUhCOHpVbzVCR0c2eFJxRDBSUy8wMUZnOGMwQTdwekJqRndwb2t6alpZVVlBbDd4L3BoU3hLZEMwVitLWDMwelB1bEJVM3g4a1Bqc1VRQmVuVmtUajloRGpvQ1lkOHhsTlNnNmZFcG1mU2dVNFJGb2U3bER6SjJDTHg5TXhzcVp4VjM2V0xTb1RZUWdUYmZBN3dSQXdXVDJnOUpRVzJEb013RDRQbDFSV0xDYkFLQ285T2RYeEl2WU82d3lRS1dqaUJNQVBLV3dEb3NlcDhENTRVdUV2a3V5MlNzNVp2SGN4NkZoSndYd0tWcnFEUlIzL29CVEpLWmtuR25MRzNVT3NLaitGTGJtV3JkMFhiUnRFbmY0dGhmc21zWXZlWCs5ZTd3MVJSaFdyWksyc0diS1BkR3Jrdk9nYTYySnJGazh6OXB2U0JSMGNzTzFFZmVXN3dWd2RRK0ZtZXA2eFN2QU1vdjI5Q1RlR2ZVT1JUdndlRkZUWUFwNlcwTEVPRFRsTmQwOTBsck1LMlFYNVVTRjYxL3UreDVqYWN3VXg3S2YwNXJPQVh3bXFwVmxybGhhcWNBMWhUMS9zYVI2ZE1qS2ZwY1RGcFd4dEV4dFhvdkdEb3RqUnMvZVBLZnU2L3dNaGY3Smo4NURMYUhrL00yUy9sQnhvdGFMcStiSVB1cm5kU3piUnhsbjg2QmpFZmJKcUxWWFJCMGl6aFM1TDN0ZU9wZnlpRkN5UGxNU3QyNzU4d3lOMzJyZTRSQkpLMmxMaW83UktlVnJtak5TT3BqcjIxbFFTVmxyUEJzMWpubnVmdkM5MlNNNW80c1d0bTZadlRZSlFVZTBMODlwNll6SXV6ZUliTSt2cEc4OVhJZlZEaEY3UTVaeERQZTlyR3Z5V2NhV094aTEyNm5QOUQxOWdnNzI2R2h2YklHaXl5eWI1VDNQM2JNTlVXZnZPb1ZPY2wrUU9WZHlQcWREWWY3aDNjZTdKaUZybmlIZXR2bW1kOHNoQVBTWTV4alc5MzFWOXhuSjhhdzF2ejd1bEZuTDVva1hOY2VVbGtFQzEzOGtWdm9lOXRGbW5qWHpiRis0ZFNNTWZWRnpWa05uenRidzlPVFUwUm8vNG95YWQ0YjJHN0dqb1JzQk9MdjVOckM3RVpMbFhvVXhLMFVUQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRZ2ZFUzhCalVqYmRXS3BrSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaU1DWUNFUmRCaDZEd1ZNTnJqVGFPd1BBN1Nza0htWG82ekZRYXFzVmVXRjdFU29KWEZmb1JBQWlERjI5WWdhM2FJU0FhUmkyZzdHS0ZIcWlvZXcxeHZpUjBmaHRoa2JUejR4TWRFRmFGdU5LbG8rQzRCUjV0SVRhQm54YnBURnpIMHZoT25FOElrL09yUDhrK2hhTkNObU9BQjRIWUU4QXQycjZDSTBOS2J4SW9lSlRreE9FSDBSbnJQUVF0VVlaSThwSTQvMngxTzl1amVEcnhja3cxbE1tQ21YUXFDaEgyTUNUSjhXREh3cmcrMHNLR3pHbXZTMko2cTFpUWljUjd3ZndvRlVQTHZpZHZEaVhubStNVHhHSTh3QkUzRkdnOEFoRjNMOXVMTXVpYUpHQ2dqOEM4R0FBWHpDVXNhWmc1TWtBbnRhSWgvek1VSzdjS0JGN2gxVUdxQlF6T2czQTlYSUx0ZVM1cUQwVHM2QUEyRW5OL0gyZ3MxelJZN2pYMkp6N1ZkYXBSTEM5MWh4TEVWY0s5Yk9mNVl6anpxYll1T2dsNzY4RXJ1dDJqNUsyOEpTRTh3SG5LaHFVdjZjeEt2OXNrTmkvcDB4RHhvMDQveGl5L0czZUZBcmludmRjQUwrcFZLQ3BybGNPY3dvNGRIRkdyaUc2NlhwRkRidHA4VXhoRjZQb2VjUTROTlUxSFJsU0dQeUZ6dmVIZ3ZNSEJJcDFlQjJwV001SHRhWnpkb0pPZEN2TDNMUFdFakhwbkc4MUpXTkFId0xYMXIzV1FVbWtPYTRsTnljbDd6blN1bjdUalZvdnJwb2orK2hwSmVOR0grWEp6U1BTU1ZsdW5xdWU4NHBITW4yS1hKK1ZITlpZeERXWnh0VEVyZmx0ak9zYnJybHFpUnl2YWp2dW5mZ3RsWE5acmIzVHFqTDAvWHZVT01aend1YzNUaDRwdEx3cThCM2hIcEppcDM4RGdFS3lOUU8vcno2aytRNzA1Y0JNN3QyVS9aeEtkM284eGVRM2ZRcmtqLzI4bjNVY3c5ckF1aWFmYlNQTEhReFBPNDh0YnNsZVliYnNZK2dIODNoNjdwcmw3dG42YmtkK2oyVmZwYk1yUytBY1NZY29pKzZvOEk0anowNTQ3a1RSVlFxQ2JuTDRTZm91elBQMWRRN2VkY1MzRXFlcjFoQlMxQnhUaWtZQzEzOGtWcnJQNWhoSG9lVlZnYUxPK3dMZzNkWFNrSE1HbDV1bTl6NG44N2tjd0c0QXZwdWI2Y3h6dktQRDcwNmVPeHBUT0t2enJIV09jY3k5eG1aUk5CRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVlINEVJNDlIeDFVb2xFZ0VSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJHQk9CcUF2Y1l6VjBzYkxtK1N5Tmh5bGNla05ySWt2aVJRci9lUzd0dGtXTXZMQzlxTm9lbzZOdW1xVVgzaXMwMzZpUzNMWVJrYnlrRVFDNmpiRlVYa0ZNWmtzQmkzY0NvSmloSmZUUi8zTExSYkZMaW9OdW1SdkI4WnpWdU5Jam1QUExaTVQyY1VlNWwwVzlYV1B3L2drQTJ6alNIMU4vY0ZSRFVRTUlSSzFSQW9vU25zUTY5bk9LSGxBZ21ZTHducEFqUE4ybS8zZ0FGQVMyaEJNQkhKb2h3T3J0aDdraVpkNzVuR0xTT3dPZzRXbHBpREMyYS9Pa3VDMUY0aWk0V3lOd3owRXhHWTlSWGx1dUl4cER4K01OaGF3bEdObVhBRkRFM21IWmV2eU9qZkV6QlNYWnA3MGhjcy9Fc25oRThkdTYxQkJnOGZhcHJ6Ymo3d01MeFRHOVk5dTh0cTM5L252NzB6ckVMM2wvSlhCZHQ4VkwyaUt5Skh6UGFKeitza2JBNU5JTkV2aHFHWG9GT2lMYklpSXRDbzA5dFhHNmNtSEdtclEwUCsvY3NpaS9tdXVWRzZSMUhoMUxlUU9kbVRDZFQzb1RXaENmanVMK0pTQnRuc25SUVJqZjY5SVFNUTVOZFUzbmRiUkgxandmbzVPZmo1YUNYL0k4ejhKNFJrdkhQSlpnRVZ2U21zNUNlbjRjSzh0Y3NiUVNvZHFjTTZPU01XQlJHYTJPcnVhVjcwN3BmU281RTE1bjRheTRucms0SmMvM3RwOG5wMjhVeFZ1M0VMVmVITU4zU00rNTU5RHQrcHdrQ0QxME9icjVSNGhjZStvekpYRnJDbHZ6ZSs5eEFQN1NVK25BdUJ5dkRtbk9uZm50WU4xRDFEZzJaazRITzc3ckxLc1g3MHJ3ZTlIdUk2czg5LzRVQ3F3MTc1YXNDNWVoR2NOOUwrdWFmTFplMWpzWUkrczY1dUo0K3NRWStzRzhpbnZXdnJsN05qTndZOFNkR3JIL0M0ejNFWFBPTkR6TWpGVWFkYlIxM2dOMXdUK2d1UTkya2VPKzJ3bU5hRHEvbjYrakE5dW9PYWEwbzB2ZytvL0VhdTJ6UGV2bm5ETzRramFQK0M1anZjUEM3eXQwUUU2eGIydndPT1MwNW1tSjUzbWY5ZjNjUWx4eFJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRTFvNkFCSzdYcmtsVklSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFWUhRSFBoYzl1WmNacTZHSUJmbjBBNVBJU1MrU01PTkVpS3g0RHBiYTQwUmUyNTJHSU1xQ3BkZUU5bytsRytRamZ2Yk1kSmZ0T0VzU2tNSjRuSEoxRXRxeHBQQTNBbTZ5UmcrSkZYUFl2S1lyVnVQTFd5U2hwKzVMTU9zKytxUG52WTQxeFYwV3pDcU4wMHgycmtlR3F1dXYzZUFMZWNjVlNvcDhCNER6Tk9TdENRSGRaR2RiUlFQQjF5ZWpSd3I2Tmt5dnF4Vy9wYjAvQ0ZwYjhuZ0RnbEl5SUQwcWlnM1RtWUFrL2JCd25NSTByVjBUMmpwL3ZUOElqdnpBVU1rSWdyczMyM1FBb3dQTXJRemx5b2tUTzFWWm1FWWFKczNXbHNCNEZ6NjdOZ2VCOEptTHZzR2c5em4zVW14M3ZaYmRxRkhIZEQ4QTV6dnAyb3gvV09JVjVvek85R21PMzEwSEFyd0hzMm9nMFhseFF0Nmh6Z0c2V25MZGZzYWFHN3dWb3F6NWE4djdLUUxkcVU2Q2tMV3FWaEdQeGM1TlRpZC9VeW1SazZYcUVDa1pXbGVzVWg4NDcvaDRBejJlaXdoVFhLeEdPS0ZwK0x3WHdnb3B6MHEyU0NOSGRBeHJzOVFDT05LUVRNUTVOZFUzbjNUc1I5d2ZUV3BNQ1IxSEI2d0NRNWNqZHA3WmwxcG91cXZWKy96MklhOW5Ta0h1T09VYUJhK3RjTWU5YmtrV0lsdzR6S1hESi9ZeENPUUhQdkpsN1ZsVmVxdUZqUkswWHgvQWQwam91RGQ4S3dQZVRvOVhMeDFDWVRobUdFcm5tOTRiSEpPZTZJMFB5SjhYWkFRQWRROTUzcEFXbHM4SmpBUHg0cE9XTEtGYlVPQlpSbGhwcDFIU2F4UEx5ZlBwWkFQNnBoMjk4Slh6NHZlVEpBRTZxc0UrTjJCdXlMbU80N3hVMTkxbnZZSlMwNlppZjlmU0pNZlNEZVd3OWQ4MXk5Mng5dHFuM1hDbm4zR3ZkNXhOTGU0MjFmMXZxTWkrTzE2RTFoZE4zYVp3R2ZqeXFRQ05MSjJxT0thMldCSzcvU0t6V1B0c3oza1hmbCtiNU1OZDdCNVoybE03elh3YXdHNEJ2RktieEtBQ25BL0Jva3RTOFQxcFluYVdQczY1bkdCT2tvL1pITnQ5WGVUZFFRUVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVEybG9Ebk1IbGpvYW5pSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDUlFTaUxuQ3ZpeUhBYlpMSUx1dFRJMUNvN1FESEpkdDVaZklZS0xYcFJWL1lubGRPajlGUk43MWFGOTVydEhjZmFYckZSS011YnU4TmdFS1Ixc0NMNTd6Z1A2U2d4YjBBVUdEeXh0WktGTWF6R2xkNkRaTXViWXlTOXF3a292a3lBQlEzOUlRakFOQklYVUVFSXVhM1ZSUy9BdUE0QU84QjhPMFp3L0l0a3REMUk1SjQ0SjFYSlZiNCt6cUt5WGlkTHJRSTl3ZHc1Z3FlSGxIbUV2WjBLdkF4QU5zV3RtLzM4UnlSTXErZ3UzVk9ZVG05SXQ1dFhXbjRTckU1enFVMXcxNXB6ZUc5VDJGMThtRVZBVnZFcEM5dWJmNFJZK3VpOWZoakFaenFOSnhzeThsOUtzZm4veHZVbVNJRUIyc1pkN012bnd6Z2NZNjY1b3d6M2VTanpnSGFOQzhEd1AzQUR4eDFXSmVvT3dHNGZhWEtVQUQxd1pscGN5em1YckZHb0ZFMTl4U2JIQ0xHMGloK2ZQOE9hYzZhcm9oS2NNVHBlSVFLUmx5dDN4V05Jb0NjUnk4SUt1Z1UxeXNXY2RSNXVMaXZlMGdqRkV3aGlKcmhHUUFvVHUwTm4ycjJHM3NBdUtZd29ZaHhhSXByT21LS09IczZDQURGZGFPRGQxLzM4aVRhbUZzdXJlbHlTYTErenNveVZ5eHRqQUxYMXJOd0NzTS9GQURYSUF4MFJFVm5EVHh2TGdrVWs0bDBhRlNTOXpvODY1bnIxL2tiVzlSNmNReU1yT1BTV1ByM1dFWHMreGE1bm9xNE5jZHlPbENpb05uWUE3L3BjQzNYemtOakwyOXArYUxHc2RKOCszaWVkeEw0N2FjUEo0OWpGV3ZuTzhiOVRLU0QwSWk5SWR0L0RQZTlvdVkrei9leVB0NkYybmw0K3NRWStzRThQcDY3WnJsN3R0cnQwcVpQSVg0NlVuMktNY05jaDdrUjM1Mk1SUnh0dEtlbCs2Q2pMYUN6WUhkSzMraTNNYVpUd3htY3NTaFZva1hOTWFXRld6U3Uzak01WTc5cGFZSnpucjlldXRmRXYwdkQ5d0JZSEtpWDVzUG52NTdXZ3QrMVJGNFN4N04rcm5GZk91SXVTNDRqZ3k2U213UDRnTk5SRWZldS9BYjloZUQycVpHYzU0N3kyTllGTmZnb1RSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRllTY0Jya0xreUF6MGdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpS3c4UVNpTG5DUDFkQ2xwSUZwbEg5U1JUR3FHdUxXckovSFFLbmxVK1BDOWl4N2o5RlJOeTJyOEV0Slg1aktzemNEY0I2QUhSMEZwaGdQaGRLOGdjS2Zsd0NnU0x3bGZDdGRsTC9LRWprb1RnVFBrcUo0akNzOUJoRVVFZCsxRVNHOXVLU3dHYy9lQ01EWmpkSFU3aG5QTG5wa1NnWVRqbW9xYWlhQmlQbHRVVllVWnFRUTRJV1o0cW44YnN2MzVzM05XaUZTNkhyZEJOMjljMEhiWGptaVhoNVJabzUvK3dENFNVWmZqQkRGWFRYWGV2UHdqdXRSKzRHK0RGOHBPbjVSSTBpM2ZVYjdyWHFFL1lER2ZpWEJJeUkxTDUrM0FhQlJkVjlPUGlMRzFubENUM2RzMW5JVUtmR0l3YmQ4M2dMZzhHQ2hEeHAwYzYxNmg1TEdubm0yNWo3RUs0YTRhcHlaclhiVWU4OTBLVUwrNkF6SEJBNzBrNG9hOFk2TnZjTC9INEMvRzNzaEs1ZHZiTzFNWWFRbnB6T3RLTWNBbFJHYWt2Y0lGWmd5N0RrUzI1RWl6NmRuN2xHV0ZXOXE2eFh1dDk2ZTltaGU3QlFKNGo2cjlydHdqeVFhNHhVaDRaNkV3aEdmTGF4NHhEZzB4VFZkeERoZ2RYU1QwMFNQY2pxMnBQTkFpdjdsQ3N0b1RaZlRLbm5QV0ZubWlxS01VZURhODcybSt6M3dBV21Qdm1VZTZ0ODk5Y1Vtemk0QXJpNklvMGV2UzhBajVsTnlMalkxN2hIekJPczhCb0hyaUxsK3lQYXI1U1Fzb2s1OWlWeFBSZHg2NitTd2prNVhwaEo0cjRFT3hkODNsUUlYbEROcUhDdklzcGRITDI5RXllbE1sc0tHZlFVNnNXVS9lU09BbS9TVmFVWStyd0x3dk1Dejc2ajVZZ3ozdmF4cjhsbnNuanNZR1UwWS9nalBSRGdXbDZ5bmx4V0NUZzk1WG04SlBQUDlrQ1ZpNVRpM1NvNXZiMnZJNXhNQURtNGNPZnpNRUhjMkN0YzNkS0xzT1hQaW52ODBBQlloV3M1L3V4VTRuNHh3RUJhQWJUUkpITk84Wjd5RHNLN0I2NHl2bGpPNHNmRG10M2graTdVRzN1ZmdPVXBwNkdOK3RhNGYrN2dyWE1yTDhyeTEvc3lyQmdQdU4zbHZoZzZScllFT1VYbHV4alYwVG1EL2ZrUE9nMHVlR2F1VHFubEY5bnovR3NONWo3T3BGRjBFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFL0FRa2NPMW5xQlJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVNXRTRneUV1cmpRbmF0dHJ4Qlk4enlYQUF2cXBWQk1sQTdzSkxvVjRUUldvMEwyN000UFlJSjNiUnlSU01xTnVkb2t2YUllN2FWZUNTQWN3SnE1REVZYUxNZmc4RU1EZjRvaE5SSDhCaFhlc1U5UzBVUWMzaEVDTnVXQ3Zua2xFdlBUSmRBeFB3MnIvWjBETUR4aGdhb3BTRmE3R0hkNXJTdGtwZ1hSWU05Z1NLNW5KK1dHUnQ3MXJDbFkrQmhTUVRCV3FkVm9yaTNhQVRVMlJkMk1HWndSU1BXVGtjdE5IUXJEVjV4N1c1K2ZRbTJSd29nV3VaaWo4SGNiUHNNSWZZVE1iYk9HdjVkSDhBcGpaSGxZMG83NEp6bkwydU04eW5VOVlPQXRMcEpQQ3c1aHZIY3d5a2RPMHFxNEJuVG1NOFpqVWdjOTV1NVF1bmUvTHAxdXhUQW5nQ3VMYW53R2o4YjhZNk5IWThFcm1NY2pkVm81MmlScEJwbDlLUVpjZTdneWIrUHVGSE84YWEyWG9seU9FYUJJZTVGenUyaHNTTDdvK1ZjUFdLK21lS2E3bTdKWVJ2MzV0WlE4K3lwUk1SNFh2bFg3UjFuNDJoTlorMEZmeHJQeWpMM1hLZWtiK1I4cXlrWkF4YVYwZk85cGgyM3VML2lQb2tPaWtwQ2ptT3prdlEyOGRtU1BqWExKN2ZmVHBGcjFQdzhCc0VqdnVjOHc2WmpodjhCOERrQUZFeitkTnI3OHh6d3Z6cU45SnQwbHNLLzIwQWVOd1pBa1ZlZU8yNEhnQ0xHRHdIQTlWZnQwSmZqRVVzOWFvdGNUMFhjK25ZQXpuSTZVcmJ3ajRqRHZkUGpra2lvUjJnMG9peVJhVVNOWTVGbDhxWTFoTGgxdDh4MDBNeTF5ckVBZUM5b0RJRnJ6K09jSXJsdFBVcldoY3ZxYnRtWFJyTzByc2xueTJINTdoTmRsNUwwMXZHOUw2bi9sSjcxcnFQdjA2ekRMZ0JnZFpaV09uWjR2MjlQcVcwV2xaVU9CYm1lNWhyNlBRRG9kSGdkZzFkUVYwNm9WdmVLZXlWbmg5eGY1UWF1VWJuL09qODNndkU1Nnp5U2MvNWtMRkt2MGF6MVp5RnJNZUEzKzFPZEZIS2RwRWM0SVIvaXpvb0hqK2Y3MXhqT2V6eDFWMXdSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSQ0NIZ01hd0xLWUFTRVFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSV0hzQ1VVWkNZekI0c2pRV0wvbStBOEFETEpFejQ5UTJZbzB3V3F0MVlidUx5SE81dUp1TzEyZ29zOWttOFJnTk1WL29LQ25GWFNtU2ZhVWpqVzdVbHdFNDJwSFdPd0VjWENETTU4aHFZVlNPWldmWFNIaE9taDdqU3ErNHAwY01kUkdlQ0haUFNBS1pQVFdCc2hrNWdZajViYmFLRkU3ZTN5bkNHU2wrRVQwT2o2Rkp2WE1CNi9DdFJwVHUvZ0MrdWFCQ1hpSHRVdWNPM2pYTXFuYTJHRVIyMFp3STRGQ2pHSUpYWExzdFJ4OXJ5VzZkSDkrSThwd2MwT0V0SXEzZS90QXQ5Z2NCN0FmZzV3RjF5VTBpWW15ZE5memovSDFTYmdHV1BNZDlFNFdTUHhtUTFtd1N6MjVFblNqODZnazExeW1QU2lMVjF2S1Y3cEdpemdGWTNyN0U3YTFzK280WDhZNzFYZWJTL0N4aloya2VZMzkrek8zOHhzYVJ5NUhKMGRyWU9aYVd6eU5VVUpyWGtNOUh6SWRUVzY5RWlCYXp6YjRPWU9lMG4raWpEU1AyUGl5bjVYd29ZaHlhNHBxT2psQW9VTzBKTllWMTc1dWNGMW1GODBvRk5yU204L1NFNjhhMXNzeGRoNWVJRWVmc3IwdkdnRVZsOU15cjdkN29Ua25nYVp1Q3BwaWFhRTVCMVhwOTFMT0h6SEVzMTJ0bEFqUHo5T3R1TVVySDQ4QXE5SllVbmFqK2JYSUFmZWRLdWZLTTk4RUFycXFVdmpmWnlIUCtibG00bm45RUkyYjNNVzhCSzhlL1RSS0haaHRGaCs4MWE5eGZkQktsazBVNlZvZ09VUTZDb3N2bFNTOXFIUE9VSVRJdTV4eXVHeWd1T25TZzBQV1RtL09TWXdEY2N1RENSUGJka25YaHNtcVA0YjZYZFUwK1d5L0xIbnZJTHJGdTcvMlFMR3ZubmJ2L20xY083N3JEY3NjaDRneWxObE52K25TV2ZUVUFPZ3pqdVNDRnJMK2EvcHZmNXlsd3ZRbGhyM1JlWnRVaWVGRURpZmNQRlJZVHNEaFNYblZISklxM2RSN0pPWCtLS21QTmRLejFaNWxxTWVCKyt5SUEyenNxenZVaTMrMFBMVW1EK3l3Nm5udWFJeDlHZlMrQUEzcStzK0lwc3NkcDMwL1NPY1ZuUFFWUVhCRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSR1lPZ0hyUjZXcDExdmxGd0VSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVI2STlBbEpIUUdBeWVTcWp4L0pYR3BhY0F1RWxKeE1KbnY5RVlVSkROWndyamxUd2VZYlQyZnh0RDJ6MGFzZVB6U3pJdWZEWktYR2VkamU5TGtOSUFpcUtJTzVWRW1ubldZNEExTDF1dndQRVlqTjB0b2h6V0p2QWFWM3A0ODUzZnB4R1FQZGRhK0RueFhwY0VEcTFKMHJpWlFsUTBPRk1RQVJLSW1OKzZKTm0zZGdmd3RRQzhISHN2QUhERGdMUnFDcVlHRks4NENZdHgzMndtdjI1RXdYWUZjUEdDM0xjRmNBa0FpbkNVQnN0WUV5RUN2YXlkUGFKRXJEOE4xdDVVQ2lJOUh5VW1XTU54d3JJcTBVSEhoUUJvdE9jSmxyVlExSnFXNWZhdUJTeDFqeGhidTBKUDJ3SDRTSUJJVGFTb3h6d3UzbnB6N2ZSaUFGK3dRTStJUXpIRWY4aDRidEVqbk9NZW1BejVjNUtKT2dlb1pmaWJVNGV4UHVQdGEyT3RWN2RjRXJqKy9UNzg5cG1OZGM4MFJ2NDFnSHNBb0tCUzdjQjMvRGlqODR2YVpmT2s3eEVxNk9aTHh4SjBNUEc1ek1MOEZRQ3VCN251K0p2MGg4NVlhcmJsbDVyMTdzT1RHRXRtTWEvejJOVFdLeEY3Q0FLZzhERWRHblhGOUN6OGN1TU02WFFsWXI2WjRwb3VZZzNEdlZPdE0zQUtoTDdVc1U4cEZkaUk0TUgrcmpVZFlHV1p1NmRjTjRIcmRpLzdqQ1Nra3p0dThya2hIRDJWbEc4cXoxcjdMT3UzenV2NXFQWGlKZ2hjdDMxOWkrWmNaemNBYjJpY2w5VVF1aDc3MlRlL3RkTDVMb1hESXNKVXhLMzVycHlaOWh3UjlXWWEvTjVJUnlLWExWaVBzNi9kdFRtN2VubzZ6NzUrVU1ZUkRvS0NpaEtTVE5RNEZsSVlaeUt2U1dMU2ZUcDN6Q2t5K3lMZmVUb1I1NW5zVUNIcW0yWEUzcEFNeG5EZnk3Tys2YmJqRU45ZFBQMW9uZDU3RDRjcHhNM2QvODNXaFhQZUNZMUR0cWNZSzhtNWp1dTEveXlNSDNrK1dKaDEyT1BYQVBndWdFc0JYQTZBZHdpNDN2Z0tBTzZ6ZGJmbzkyZldkRUo4b0pFNit4Y2RudFQ2L21rczF1aWlIZGJjVGFGejBaTFExLzBKNnp5eUx1ZUIxdnF6TFdzeXNKeVp6Zll2N3Ezb3JPQUhDem9ldnlGeEgzYTlrbzQ1ODJ5T2tMWWorU3BSUFFMWE5kdThTbVdWcUFpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FqVUlDQ0I2eHBVbGFZSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUVDWFFKU1IwQmdNbm5KYmxzWWpyUGRMY2lNWW42TVFNdzEzS2FSWU03d1Z3Sk1DTXFqZGhsSEdNK3RzZkYvU2pBOEFjRkZqdkxObFNhU1paMm40YzR3ai9teFVqK0JvbTliUXh1NWJBVGdqaVQvbm9LSGgxQjJNd2pWZTQ4cHRrc0FyODdjRUd0RWRFU1I2ZHJOR1ZQRThBRHRhQ3BMaVVFVGc0R1NVNWtoR1VkZUlRSlJSZG91RS9ldmtJRDc4anZ0NkFJY0hwUGMyQUU4T1NHY3NTWGpIcHJZZXk5alhDYmNBQUNBQVNVUkJWRVNiUFFML0Z0RTd0dmZiRzNIMFF4eVEyVitPWEJEL1pRQ09OcWJ0TmNDS0Vvcm0zRW5EV1JvVzl4RWkxaHdzWjZrb01PTkVyV2xYQ2JuWDRoZ3h0clpDVDk5UERvTWVFMURZbW1Lc0hzUFdnS3Ixa2tTcCtGYlVPY0Nua3FNa2lnd28vSjVBeERzMmRwYmFrL3RhaUh0T2lpUS9FY0JqQWR6VWw5emMyTFdkQmxRb2NsYVNVZU81ZC8zRXduSjl5TDA0MS9IY1Y5ZHdua2ZCREtadFdWOU5iYjBTSlJRZGZjNjFxbU5HcmFVdHp2d2k1cHVwcmVrMllaNHRIWiswcGx2MWx1Yi9ibVdaSzNBMlJvRnJ6bVU4SjN0Y1BxWS9QTWx6Ylg2WCtvQkJHUEtnSkNacnlGWlJPZ1NzZlpaSnJQTjZQbXE5V0xySFhvZk9lUU1BUEtOOFZuQmxUZ1J3YU5CM3FPQ2kvU0c1S0pIcnFZaGJjL3gvTG9CWEJnR2w2QnJQelNuZ2x4dTRmM3BGRXJ2T2piUHN1WThta2N0ckl4SWJPSTJvY1d6SWF2d1lBUGQ0N3h2NXUwOUdkR2pGYnpPOG4rQVJCclR5NXZkQmZndXo3UHZiUENQMmhreXI5bDJoSEVhZTlVMDNmZThkakp5eVJqNnpEdTk5Skk4eHA1VzcvNXV0QThjWUNoQmJnL1dPZzBjQTFGclcwbmpmUzk5cTZZandNODNkeDI4a3A0U2MwN20yNmdhZXhYSnV1WHY2UjM2ajVQazZuWkp2Y3FCVFRhNkZyTjhaTnZtZUZ0ZkZkQVpPWjNVVWtGOTJqL2gxNmF5K3BLOVo3cVdVcE44K2E1MUhTczhoTFdYckk0NjEvaXhiVFFhM1R2ZDZ0M2RDZUE2QVY4MUo0K2JHYzduWnBON2I3T1VPYU83U2o4MHB6VEpzbnZtdFpwczdtMXJSUlVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUktBL0FoSzQ3bysxY2hJQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkNCVFNVUVpTUTBCb09ubkRiY0dzQmJHb09JUitVODdIam1OVWs0dUkvTHYxTnB3NGNsQVZ6djJmYzZHOStYZERtUEdDYnorYjlKak83OGtreFhQRnNxRGowdnVROEMyRy9naS9PNTd4UU5wbWhJOEc4QWJtamc2RFd1OUFxdWZyRXhwdGlsTVNDLzJsRDIyU2dSNGxrU053bG9pRFZMd21Ja3RnakJwUUQyYkFRNklnVU9JaHdOc0x4V1k5aXhOdmVmSmFHaS9aMEZmRWNTRmVCOE5SczhmWU9PSFNoOFZ4cThvbnNYSitjSlA1bkoyRHQzZXNWbFMwUzJsakhyVzB6d0Z1bmQyYUcwSVdlZXR3Z1dSY3g1TE1hM0FOeS9FY2I4cHJNT3BkRWpCQzlhYm84RThJYlNBc3g1L2tOcGYvYlRnTFRtSlVFRDBvODFJbDRVUmwvWFVOcVhjOWU3cTNndEc2dFh4VjNYM3lQZXNiR3owWjQ4cm9XMmFBelFkMHJHNlp3VElnT2RPT3plQ0kxOUxUTFJnZFB5Q0JWMGl4NXR3RTR4UUFwUlV3aURUdldpd2k4QjhDeU5BaVdsWVdycmxhaDVxVytuYVJSQTRUcWY1ODJlWU5rVFJzdzNVMXZUM1FqQTJXbHM4L0FlYzl6UzhTbnEzZEdhN3ZjT1VTbTBXUnB5MzkrU3ZYZE9QeWdaQTVhVnNTU2RMaHV1QnlsdWZXb2hzTWp6Nk1LczErNXhhNThsaUhWZXowZXRGMHYzMk92U3dhS0ZqOG1Gb3NjUEJjRHZhV01PRHdUQTc2VmMyMXNEejBkZkFPQTMxZ1I2aXNjOUtJVWdMZDgxWjR2b3VRL0Iva2JCVGpwTWlOaEhVYVNZYy9tODd3azlvUTNKSm1vY0N5bU1JWkd6QVB4OUR3N2dEVVZiR29VQ2dVOVBZdGVlY2FDMFhKNTlmNXVYZFQwM1c5WXgzUGZ5ckcrNjlmSGV3U2h0UisvelUzL3Z2ZldmVXZ6Yy9WKzNUdmNEd0R0UVZ2RmgzbStrdysxZkdVRGRHQUFGZHVtZ2JjakFzWTU3UjU1eFVzQ2E2ME9LVjVkOEU3d2RBTTR4Tzg1VWhJNGVudzNnK0Ftc3dXcTF3YkhOK3VlRnhzUzVidHFuK1Y1OXJqSCtWS054N2JsWDQ5eml4UUR1blNxeDdENlI5VXh5MGYwSnJzZHZId2lQOTAyZW54eDNsQ1JMQnh1TTk1V1NTSTVuZjVZRW42UHZVbnZtMFp3ek9FZVZ6ZWVOM1R3NVh1NldSTmpiZitkZWl1c2R5NzJuYnRvY1Eva3U4SzdHbElMbjdrZnROcDhTUjVWVkJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSZ2d3bDRSVDQyR0oycUxnSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaWtFa2d5a2hvREFaUHE2cThYWE14L2Q4QjNIM1ZnNDdmYVZUeVpBQW45V2hBR2RXR1R3UHdKa2ZkVjBVdEVYRllsdGJVRE5KV2NiSDh6b3ZhRnpVQ290dGJJcWM0WDI4dXFPK2N4QlVkeWZ4SlZHOS9wSEVUUlpjL0hsbW93clJvNEhWaEkwNUZrZFpsZ2VKVkZOYWhJWnZGRUR5aUx4OW9FQkxwMW9uQ2xPY1U4cG4zK0dFQTN1aElwMVovZEJSSlVVZEF3RHVlZEt0UVk0N3pHRXAxeTdhT2dpbmVNWUY4RmdrMzN5dzV6SmcxWU0zcHNoN25EdmRLaHJjMEJyYUVIeVlENGl0bkl0TWc5eE9OQTVadExJa0NlRDJBSTQxeEdTMmlyWmhPeEp4V1VvMm85ODlpd0JZbEdHa3hoQzlodE9qWkNNRUxqbHZjODFBSWoyTGpudkFsQUE4SHdMVkFyZkFYNlQzN3kxb1pqQ0RkMHJra2FvN3QrOTBmQWVxVlJZaDR4MVptTXZBRDZ5eUlOeFJhM2hIY0ZjQ0p3Y0lHcjIwY3ZEeXJ4L09wMnZ5R25QOXo2dmJYU1dnbDBxSENPNVBvRzhVbVNzTFUxaXNlQnpaZExuMmZUMGV0TVVybmNkWTVZcjZaMnBvdWFnd29lWmY2ZnJaMGY2STFYVndMV1ZubTd1dEt2bzNrOUlPU01XQlpHU2tHU2tlYXBZRm40aFJvbzJodFNYaFI4ekRGdHhUOEJLeDlsam12ODNvK2FxNnd6TTMrVmgxSENoUjdPNkg1ZHZpVW9PTFEyZCtERzhlMm53MUtyMFl5WHVISmJwazRydjd6aUFVV0tkeDdXblAydm04QVNJN3BuRU1zZ3B2ZDdPa29rMlc2bnJOTUZGSG45K1hMbmVrTUhUMXFIT3U3SHZ6RzhhUWtXdHAzM3BINVVjQ1MzOTVmM2Z5NVNXVENTOUt5N3Z2YkpFdldoY3VxMVBkK2VsNVpQT3ViYm5wVE83T2U2bnZmMHlzeXFteHk5Mzl0b2UrUVJFUHZZcXhGeWZjek9sSzhGWUI3cG50Z1hJUDlhNUJUYW1QeC94RHRPNmxNZE1ob0NlVDR2aFYzUFhtdS9nd0FGTkRkcE9DOU8xakRTZnlZK1hOdTU3Mmg1elI3bmx2T0ZIVFpYVVhyZlk1RnpoaWo1dTR4czU1WHRscjdiTTg4bW5NRzUrRk1JWE02RitLZGRVOTRiN1BPUGdCQUt3NGU1YlJvTmwxUEdmdU1PK1kyNzVPRDhoSUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJNd0VKWEp2UkthSUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlFQW1nU2dqb1RFWVBDMnI4Z09TaUt0WGdHMVpIbDhFOEZnQW44dGtIL1hZNDV1TDBDY0hKRmJiMEN1cW5EVkVTZ1B3OVpyRVhnRGVEOER6SFlFR1BvZFdFTHFLRUZHaThmd1JGY3FXMjBnY0oyaWN0c09TQ0h6ZktjWklnNkdQRENod1RlR3NTeHB4NmR2a1ZtN211WWgrUUNGd0d0L1NDTjBhSXNwaHpWdnh4a3NnYW8yeVNGZzRvdVlVY0tCb2hTZE1RZVNqdEg2NWpnS1dwYnVvM1R6empFZE0zeU9zM2RhVDQrU1pNNVgyc3ZJNktvaDZ6L3JlQzNpTTFycE5ZREZhOVBUQmJ0NFVoNlpoSzRYWCt3d1JSck0wOHYxQjR4eUhvbzZlOEtQR3FjbWVBRDdwU1NRamJsU2JaV1ExMkNPbGMwblV1ejl2WEJzTXdrZ3lqbmpIUmxLVmhjVllaMEc4b2Rsdm5Sd1k3UkZVRUk2ekZKUDdRbEI2UXljejVQeWZXM2V2Y00xc1B0WTJqSnI3K2xxdlJJeWRsblZkYnJzdWVtN3FBdGRUVzlORjhmYTJlKzM0K3dENFFHWW1XdE5sZ3NwNHpNb3lWK0JzckFMWDFucFR6SlJud2lYZko2eHpXa2J6YmVRajFyWWpySFZlejBldEYyc0piMDJsczFJY2tTSmNVUTZqK3o0M0xPSDh3Q1NZU05IK3FEQm1rZXVJNzh2azlHNEEvTzd2RmJkbVdweExuZ3ZnbFFFTk1QVDM1WUFxSUdvY2l5aExUaHJuTmtKN25KTStQOEE1ZDA3NXJNOVFEUDRnQUsvcFFlamF1MGFLMkUrVDB4anU0THcxQ2FWYjI2Mk5OK1o1WjE3ZHB2YmVlOXRueXZGejkzK3M0NTgzWXRObk5NNlRkemRXbUdjMkQwdk9sN3RKMEJrSnowZm9tSm5Pb0hkdXZqM1Q2ZDZzV0c5Ny84OXpsK0VhQU44RlFCSGtIemQvN3czZ3pvYjYwSEVmblR0ZWJJaExVVmplamNzUkNhZno3TWNBK0pvaG42bEdvVk9HVXgyRjU3Mjg0eDN4cHhMMVRnQ2UzL1NOUTFZNFZYbDVzNzQ5Wms2bExQYzVLRVJNcDJDWHpVa3ZhdTZlQ3YrMm5MWDIyWjU1dEk5dkNoVGZwOU42YjZBdys2dWF0RzZlem83djYweHcwVHpqVExhWDZHTnY4MTRnS0JNUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUjhCQW91ZmpweVVkeFJVQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRU5wZUF4d2k2UzIzTVJrS1BhSVJxVHpNSzBPYjJEQnFFOCtJL2pUcjZEaVhpQ012S3hzdlVSMVlzL0NiMHRZcjQvcEEwaFNOT0FrQkRGVStnVVNaRmlhTUREYlUrMkZ5bTM4bVI4TGVTQ05kVmpqUThVZmw5NXUzSnVHVlJPZ2NuWVhtUGFGU0VxTHhYWE5vajl0cXkyU2FKYkZQSXl4SW83RW54SGhwQks0aEFsMENVWXdRYVM3S1BVZnd6T2p3cUdhZDYwdTNEYU1wVFBrdmNIRWNCT2VuT0UyOCtyQkgxZjJOTzVEblAwSkNZOHljTmFTM2hkV205WjRuTE9QUFdXcDc2UklpM1QzVjk1akZhNjdhZjVmM3p6UDNkdkljU2xCcVQwZXozQWV6U0dKeGZibjJwTXVORnRWbG1kb004VnRxWHAvcnVEd0szTU5NeHZXT0ZSYzkrZktqeEs3dUFFMy9RSzM0eVcvMFhOZjl3N01TWnRNVWZjdjR2UVVoUjhmTUJiRmtTYWNtemxyT0RxTG12ci9jOVl1d3NuUXNqbWlkS2NOa2k3aEhCTElJQjAraHJUUmZGTzZyZXRkSXArYzZpTlYxY0sxaFo1Z3FjbFh6RHlSblBTc2FBWldVc0taZVhOcjlGOEV6ZGVpYmp6WC9kNGx2N0xEbjBOYjhQd1R4cXZXaVptNGVvYjgwOG8wUzRXTWFqR29IWVY5Y3NyREh0R3VMV2JWRzRENk9nWklRQXRMRjZmeEtOZ3IyOEw3R3ZNOEZ2TndMb0Qya2M5MzNabVU0M2VsVFpodjYrSElFa2FoeUxLTXVpTlA0ckNUK2ZucHdnMXN4cjZMVFpOM2tINktYTk8wMVIyVnJCYzNaVHNpNWNWbjdMMlVNMGo2aTZsT3lwb3V0Z1NXOEs3NzJsWHVzWUozZi9kNlAwTFp0T2JxMkJJcVowS0hHUFJ1RDVmdW4rRmNXZW1YWk9hSjJUTHZzT3pUbWQ2OTdQQWZoTUl6RC9qZlRmMXdLZytINDM4QTdWeVFBZWw1UDVuR2ZJNHBUQ3VQY0djQTZBMnhmRTR4blZZNU96bG9Kb2szeVVjOVJaeVpHd3BRTHJzRzVhVm0vMldiNDcvOXJjUmJ0L0pxQXJraWcxKzFFM1BEc0pDMmNtODd2SHZncUErNDJyNTBTS211OUt5ak9HWjJ2dHN6M3phTTRabkpkZGxBTXBqc3U4QTgrek5Ub204WWEzcFhTbWVFNDM5amIzdG8zaWk0QUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlFQjFBaEs0cm81WUdZaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lqQXhoUHdHRUYzNFkzVlNJakNrelNjcjJWd3hvdk9Ud0x3TGdBVWFSMGkzQmNBRFdsb3ZPQUp0WTNhMzVwWWVjcll4OFZ5VC9uNmlFc0RwbzgyUmhnM2RXUlcyMUNGUnR0SE84ckhxRFFXUGQ2WmhpZjZNa092RHpXR1hSeGJmZ3JBSXhvVlpTanFFVWNsSTYvWStWNk5ZZEQ3QVZpL2EzMHhpVnZPTSt6eHRLSGlUcDlBbE1oT3pma3RhZzRlNnpySzJvdHlIQVhrcFAzeVJnVGttTTZEWGxGL0ducTlLU2ZqQmM5NEJjM25pYTE3MWtlNWh0VExxanpWdllESGFLM0x3N0syOU16OTNielp0OW5IK3c1ak01cjlNQUFhMnROZ3ZsYUlhck5hNVl0SXQ3UXZSN3o3UDArRzNwZEZWR0NOMGhqYk8xWURiYzIxVlkzeVRqRk5PZy9pdnZNdUFZVmZKTW9Ra0hUdlNRdzUvNWRVbG10V09tVGhlV0ZFNEg2YmMrVXZDaEtMbXZ2NldxOUVqSjJsYzJFQnpvV1BSZ2t1VzhROUlwaEZNR2pUNkdOTkY4VTdzdDQxMGlvNUg5Q2FMcTRGckN4ejkrVWxaMXc1NDFuSkdMQ3NqSHVuYzkwNGt2TlQraTBBbmlGemZhTVFROERhWjVuN09xL25vOWFMbHJrNXBtWEhrOHFkMHJkSU9qajFocjdXbENYbGZGZ1NqZlI4YTEyVjM5aEVyaU8rTDdQT0hpSGVaY3dlMEh3cnZDakFVZERRMzVkWDlZdFZ2MGVOWTZ2eXlmMmRjemlkRTlLSkUvZW1uMGpmeDNQanI4dHp0d05BQjZqN1ZhcFE3cHB5WHZZUjl6S1k3andIclpXcU96ZFo3L2UvTmxIZTJkb2o5ZGsreSsvSmEyenZ2YWN1Nng0MzUxM2wzY1FUQUR4bFlCanQyUUpGb2lsSy9lbEd5UFE3emQwZ09pbTRwdkNjc2EwSzc0Qnh6TEdFMGpGbXQzUVBrMDYxU3dQbkxnb1M4NzdaYjBvalQraDU3OXFKL1pUcnBxSHV1dFpHYlpsWHlHS2ZSaEQ3M0U3aExPa3crakxINnlWbk9yVTU5WmwrclgyMlp4N05PWU9MWUVTUi81TUNFdUw0VFNlNTEzT20xWmZEU21jeEYwYjNmQ2ZvcTgxcjFWM3Bpb0FJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpRUFJQWFzUVFFam1Ta1FFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSR0FqQ0hpTW9MdUFTb1FYK2dKTDhaZlRBaTcxTGlydng1TWh5TmY2cXRDQ2ZPNEdnSUtKV3p2TGtXT01ZODNDZXVGL05qOEtNOThmd0RldEJabDRQSDQzZUUxamNQUk1aejBvK240d2dGODcwMWtVM1d0SXczUnBMRXVqcGU5V0t1T3FaQmVKUWYyeWVkOW8rRTZSY1FhUGFGU1V3TFYzRFBEMkJ4cjAwdkRKR2txTjJhejVLTjcwQ0VTSlIwZTlhL01JZXQrL05zMHhycU84UGVieEFFNTJKaklyNWtkQmxVc0FVUFN4TkVRWUtubmIrNGVOVWYyREFGeVpDbi9qSkFyQmY3T0VXUUZ3U3hwVDNRdDREQlc3bkN6OXdqUDNkL091T1RZdDZ3c1JSck0wUUQwcllFM2Fsdk8xamNEMXN5b2FVVWUxbWVVZDZ5dE9hVitPZVBkTDgreUx4ZEQ1Ukx4alE5ZGhWZjdyTElpM3F1NTkvazdIR3FjN0hBbTFaZVcrZjlkMGJ0Um4rV3ZrTmVUOFgxb2ZydTh1Qk1Eek1HK3dDRDlFelgxOXJWY2l4czRoNWlXUGtFSzNYMWphT0lMWjFOWjBVYnk5NzJUdCtDWG5BMXJUeGJXR2xXWHVONVd4Q2x4SHpSZXJXdUtEU1JDU1RuSVVZZ2hZK3l4elgrZjFmTlI2MFRJM3g3VHNlRktKK3E0N3hqN1hoN2gxMjVKakVybjJqQnR0ZldiUHR5TjdMQjE1ODd4eFQyZWlGZ2RCeml4RG8wZU5ZendMZUg1ekgrQXJodEpSOEk0Q3FEL1pVREhyUmNpMkFQQjN5YUVWQld3amcrZmRpbmkzV1pkM0FLRDQ0bEJDcDFGOWY0aXpBVzlmaUtxN3R4eUt2NXJBcXYwZnh3WTY5bmpoNnFTcVBsSHJQZkI4KzgrZG4za243dEdONDhkVEdqRnQ3MWg3SW9CbkFQaFpWZHJESkU1T3ZHZDF1REY3M252YnBWbDM4ZDdyT2dkTG41MjlQMmU5bjdMc1hEM2lYSGVLN1Zacm4rMlpSMnVObDdQdFExRnFubzN0TkpLR2V5bUFGd3k0N3ZOaThId242S3ZOdlhWVWZCRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSR29Ta0FDMTFYeEtuRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRUFVUVpQSmNJTGZZQ3ZiWnhLZzVUakduNWpNTWozWE5ydHRzVlhBVHdRd05VVkdzZ3I0TmdXaVVMZSt5U0R5Z3JGSEgyU2QwckN5alNnOElTREFOQW9vMWFJdXBoUEVXNnZPS3ExampkcjNvZnpBT3c0azhDc0FLTkhCQ1JLS01wcjlFM2grQWMzUnJsWEdXQXQ0cFNiRkkxazkyZ0VYOC9QamFEbk5vcUFWMHk0aFJYMXJzMkRIelVIajIwZEZkSFI3cFhtTEs0QnJHRjJiY0wxSGNkbXkzZjBLeHFSd1ljMmhxd1VaN0FHajNGY20rY2pBWnlUL21mYkpOaDlHME9Cb3NiUHFlNEZJdHFDMkMwR2JKNjV2OXZVTmNlbVpWMHF3bWlXQnFoOEgwOW8rdkRERGYxM05zcHZBUndBNEl5QXRPWWxFZFZtbFlvWGtteHBYNDU0OTB2ekRLbm9oaWRTOHY2dXMyamRwblNEcUgwMWVSMEY0TlZyQUc3SStiOFVuM2V2M00zUE10NUd6WDE5clZkS3hyZEZiV0hoVk5xdXM4OUg3UWN0NGg0UnpLYTJwb3ZpN1czMzJ2Rkx6Z2UwcG90ckRTdkxWUUpuYlFuSEtuRHRPWmZJcGMvekN3cVVuWmtiUWM5bEVhQXpGT3NlK3NNQWVENjFqa0p2VWV0Rnk5eWMxWEFUZStqb1JsandaUUZsSHRQK3RQYjlnWG00eGlCeXZWVWFNL2lOM1JOeXhTbXRlVmhFQ0dmeitnNkFuUUh3MjhJVVE5UTROc1QrYUlxOExXV3VOWTd3L2Z5QW9VQVI3dzJ6SGZvZVR0UitqL2NlN2cvZ213YVdRMFdKZXUrSEt2OG01YnRzLzBjUi9IOEFRT2ZFUTRkYWM0REhvVi9PZlVReTVEbjJLNE1BY2kzN3p3QitFNVRlbUpMeDNoM2NGQ2RVbGpPUEg2WDdjMTlJRFc2NW43THFIa2ZFdWU2WSttTnVXV3J0c3ozemFLM3hjaDRUM3FrNEY4RDFjb0ZWZXU1eUFMc0IrRzZsOVB0STFyTnU3TFBOKzJDaFBFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFVEFSTUJpbUd2S1NKRkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUTJsb0RWY0g4V1dJbndRbTNZOXdQQXkvZzNyWkFSUlJFZkMrQ0NDbWxiay9SYzFPN20rY05HWkpZR0tWZGFDN0lrbnVkaWNUZlpkd0I0QWdBYUEyeGlpSGhmdjU0TWUybmNWek1jMjdRVGhlQTk0VElBZXdQNGdTY1JZMXgrbzNrN2dFTTY4V2wwdFh2emIxL3IvSnRITkNwU0tNcmJOL2hlbldKZzVhay9zL3RVRXJpK3hwQzNvcXcvZ1ZzMy9lTmpBR2g0NWdtUjc5cHNPYUxtdHpHdG96eXN1M0VqUlAxK0RXRFhaRmpQdENtb1FtTlVTemdSd0tFQmF3aFBHVmp1MXdNNE1sWEFZaERaMWoxcVB2Zk9IMjE1OXU5WnJDcHEvV3NSTy9ET2ZTMnptbVBUc25ja3dtaTJOVUNsT0R2M1JSSDdMdTZ6ZGdGQW84cm9FTlZtMGVXS1RLL1VHRFBpM1MvTk03SyttNXBXeWZzN0pnR3hUVzJ2aUhwNzF4MXRHZGFsUDBUTi8zMk1YenhUb01PdXgwVjBCQUNsKzRXb3VhK3Y5VXJKK0xZSUtaMFEwcUVOejVMNkNsSDdRWXVRV0FTenFhM3BvbmozMVQrcytaUzg3MXJUV1NuL2FUd3J5NmtMWFBmeFhsMEtZRThBMThZMWwxSUNVQ0thUGdzc3Q5OU9FWFRVZXJHVzhOYlVtRWFKcG81bFAvSUlBS2MxUW9jM0hLQWhoaGE1anZyV2NreGw0Yzc3TnQ4RE9FYlJzYTgxckJJVXRLYmJWN3lvY2F5UGZXOWZUTWFZRDcrSGNEeUpGQ2kwN3I4OWE0SXUyNkhGNFNPYzVySStFYzV1Kys1elBFUGF1aGxmdHd6TW1HaytCc0JyakU2RFdaUUxBVHdsT1lvTkxGcFdVaFE2NXR6Sjc3clc4QVlBcndEd0syc0NjK0w5c3ZuR3kzdDFzL2ZWcnQva3d6blNlejhxcXFpMTFySVdzZUMyVHF2TzdXNEU0UGlaKzFrZUhtOU0zK01qMjk5VG51aTR6MGgzRHF6cEhnVGduZGJJRTRyM1o2bWVuTGRMQXNjZjNubGtzSHlqV1hXUEkrSmN0NlErWTNtMjF0amtXVC8zdVdibVhNRjdtWnlmaHdxY3Yvait2MnVvQWdUbGV6c0Fud0N3alNHOW12ZmpEY1ZSRkJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFWWhvQUVyb2Zocmx4RlFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFWUpNSVdBMzNaeG1WQ0MvVTVNc0xyQjlxTHFodlh5R1REeWR4WlJwM2pTMUVYSDZ2YWZBWllaQks1clVOWjhmV3J0M3kzRDRKQ0c3bkxPUUpqV0QwRVFFQ242dUtjWTlHRFBxakFZS0hUd2RBNDZNaHdtRXplUitjQktxNlpmR0lSbGtOVmVleDhKU0Q2WjBCNEVBQUZKTXRDVjdEcWE1aFVFbStlbll6Q05DUThld2tMTytwY2VTN05sdU9LQ0dnc2F5alBKem54WDFkbW5NODZUNE53SnNBZVB1RFZjaC8zcHFYL2RJYXVpSkNGT3VtVWFRbHZCOEFqVEYvWVluY2lmTnNBSzl5cHNIb05kK3plY1dMRW1XeEdGSjY1OXkyUG4wemEvT04yRGQwdWZFZHBWQkFST0IraS8wNld2Z3NxczBpNmxncmpWSUQzSWh6Z05JOGE5VjlrOUl0ZVgvSElpQzJTZTFUbzY1UklrVWNYeDhKNEdjMUN0bGptaDZoZ200eCt4cS9JdGJDYmJsTDl3dFJjMTlmNjVXM0FuaFNRRjhxNWVUTk1rcUF5eUkwV2pJbkxLcm4xTlowVWZ0dmI3dlhqbC9TajdXbWkyc05LOHZjOTdkMFR2L2VpdjArblExUkdDY25MQ3RqMU55NnJCeWJJcHlWMHhhUno5QXhLTStHTEdHZG5VNUc5V25MZVpHbExjWWVwM1RzV2xTZk1leFB2ZUxXZElEN1g4a3ByN1hkaGhTNWp0b2ZsS3hUTEp5aTFudnROd1ZMR1lhT0V6V085Ylh2SFpyWFVQblQxcFBDd2M4TUxNRGJBRHpaa0Y3VSsxM3pybEJPdFI2VjdpdmtQTHZzbVhVNUEvTndvSk1BZm50OGxpT1JMd0Y0T0FDS3RBNFYvanoxQ1RxZ3R3YjJCenEwLzZZMWdjeDRaSDVXY3V5VEdhWHFZN1hXc2w3bjFvdWNKWE4vUzBlQm5yYnVBbjBMZ01PRHhjMnJObGhoNG53M1BnaGdwOEo0N2VOZlRBNkhyemJHbjFvMGk5T2VsaEZGN2M4RHNHTmhwVmZkNDRnNDF5MHMwaWdlcnpVMmVkYlBKV3RtanZWMHNIbXVnK1o5QXAySFc0cnhiZ0I4SjZZdS91OVovOWJxaDViMlVCd1JFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJHSXlBQks0SFE2K01SVUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJHQmpDRmdOOTJjQjFUWm96R2tRR3ZSVHZQY3BPUThYUGtNRE5Zb3IvN3d3WGwrUFI3WGpVUUJlWGFIUUZvT0JlY1hZcHpIUytFQ0Y4azBoeVlnMnBuanhyZ0F1N3FIQ1d5V0RNN2FaSjN3WndHNk4wTkUzUElrWTQzYUYyZDhMNElBNVk0RG4wbnlrVUpUWGlJbkMvVHNEb0pGK2J2QzJNWTJCZG1rTS9UNmVtNkdlMjBnQ0VhSndMMDl6ZUEyQVVZSUxZMWhIMWVERGVubkVvRm1tMXdNNEVzQzJqVEgxSlkzakFScTVsb1lmQW5nUWdDdExJODU1M2xNT0p0ZU90MWNsWTkzSEdjc1VOWWRFQ2RXMDdXU3NUbkUwYnp1MEdlYUtrWFVMNkpuN3UrbEV0V0VwdkFpajJhN2hINDA1VHdPd2IybEJGanhQeHlaMHhsTHFkR05aOWxIOTVSb0FQdzJxWjNReVAwb0dxWi9QVERoaWIxRmk5SnRaTEQyMmdrREorenNHQVRFMXFKOUExSnhqbWUvOHBZOVB3U05VMEMxTlgrTlh4RmpibHJ0MHZ4RFZkL3BhcjBTeDZsdklqbnVNQ3dIOG1iTzdXOGJza2psaFVmR210cWJ6Q2ltMUhDajJ6ejNpV01PaHpmNzEvTXpDUmJ3N2ZZMkptVlVhN0RFcnk5dzVObXJ2YlFHMHJJemU4OTFWNWJrMGlieEZPekZhbGU4bS9PNlo2OWRaekNkcXZiak9qRXJlajZpeHk3TFdLU25ucW1jcG12ck9Bc2NBcytueHV4blB2Zmk5MG5zUGdZNEduemVBb0ZoRVcvYnhqZm5HU2J5ZjYyeFBxUGxOeUZPdW5MaFI0NWpXZURtMGZjL2NLVG43M3NhWHpCOWlXOGZLMndINEJJQ0ljZ3o1N2tSOER5Wk1xMUI0VURNT25zd2RBYnlqRWI5OWdLTWt1ZUxXTjAzT2I3YzI1TVU5K1NzQThMdkdzaEFoY3MzeGtFN1YzZ1dBUXU2MWd0Y3hmR1M1ZUIrTTk3UitFcGtvQU5xNVU0amErbTE3M3JkazNnVmoyOXdpcUt3Y0EvaU5jYXgzT3lPcXVWZGFMMWwxQitoMDVkaUlna3drRGV0OFRXZGRGTWUzblAydU9sT1BPTmVkQ1A3ckZMUFdQdHV6ZnM1ZE0zT3VPeldOcXdjNjdqSHd2WDF4RS8vNUF6VGc5OU1kemNzSHlEczZTNTJKUlJOVmVpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FodEh3UHFoYWVOQXFjSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSm1BbGJEL2RrTVM0Vld6QVZlRXBFaUptOElUdmhYellYMUp3TTRxYkt4aTdmWWV5Y0RCbTg2TkhaNlFvVzZSaGlrV1FSNHZUekdFdDlxY0RGYi9yNEZKWGlwbnhmOHZlR2xBRjVRb1YrdUt0ZXRBWHdNQUEwVmFGajFuM01pZUM3TnJ6SnFXVlcrMmQ5ZkJ1RG8wa2lkNTB1Rm9MeGlrWDMzUndjYVJSMlF3R0dOb0RIRlRqMmgxdHpHTXQwdE9RMndHTysyUVV1MEpnQUFJQUJKUkVGVWRjbzFtdkl3R0NxdWQ1eGd1ZDhQWVA4a1VIMWVNcDR0clUrdTRGUk91bDd4SnhwUDd3SGdQd0N3UGp2bVpEcnpUS1NZU0pRbzN4a0FQTVo4cFJpR0xMZG43dS9XTTNvZGtNc3d3bWgyMWdEMTdvMUI1RVZCQnVpL1RVNUYyS2VpZ3B3Ui9DbkppSE9BZFo2L292cGVkRG9sNzY5VkZDZTZ6RXJQUnlCcXpvbGNDL2xxNUl2dEVTcm81dHpYK09YZG8zZkxYSHJ1R3RWMytscXZSRG5HNjF1TWE4aHlsOHdKaTk2OHFhM3Bvc2FBdnZxMWI4VExpNjAxWFI2bm5LZXNMSFBuMkFoaDBaeDZ6SHRtVlJranhwTkZaYU1nRkVWbEZlSUplTTRrSXgzQnhkZk1sMkxVWEZGTGVNdFh1LzVqUjQxZGRDRE5kZG9RSVVyY3VuV2NHT0ZzZXdpUjY0aDFheC83cUtoM2VNcG5JbEVNK21pdklkN3BNZVZKZTArS3RSNGVWS2hWYTdaRjJVUUp3elA5b2I3ZFU5aVc5ZDhoZ0dYcGZZZUFMRWVSQlB2alk1UEE5dzBkSldxZE91UTREUFo4ZHlsWmE5SHhNWjJzUHRoUkwwWjlkK09FbVAyamxzT3JleVRSZXdwL0R4MnM0MGxPdVhrZmlXZWVsdkRoNXM3Vkl3SFE4ZGdXQUNnSy91cEc3UFY2bHNUbXhOa0VjV3M2MmVQOVZYNlR0d1NLeXZOZCtvSWw4a1RqY0h4OE80QkRDc3ZQT1pHQy83eERXeEorbVVTRVA3NGtFa1gzZHlwSmRNV3ozS1BRSVUrcFVEenZyZEJaL2ZjQ3k3SXNxVnpuQnFYRjhheWZjOWJNMndINDkyWWU0WDJJaVBIMVZnQXVTT21WMXRYei9ITUFjQys2RHNGelZoSFJodXZBVUhVUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJIWWNBSVN1Tjd3RHFEcWk0QUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUVBUEJLeUcrN05GS3hWYWlhNWFwS2hhVzdidkEyQzlsbDA2ajY2SE5UMlBNWHMzenlzQVBMUXhKR0hkbzRMbklubTNESnQ2d1pqZkNsNE00UGtCRFhKRVk5QndmRUE2dVVsUUlKcGloOXZuUmxqd0hJMXNGZ2xNTzVOZUdwM0dRUlRHL1JTQTR4WUliSHRFbzZJRmRSNld4Rkt0MzVkYUVkbGZaRUwxR3NSSDF6K3oySHBzWWdRaVJHd3ZCckFQZ0o5VXFIdEUrZFpaVk9aR3lTaHVkd2Y3dHYyZTRqQzRvc2pBa1k0eXpFYjFHTzh5TFJwUXZ3L0FKd0JzWXloWDVIcHR6R3ZJWldnaXhPK1p2a1VFMFRQM2QrczAxRHdZSVY0MlQzd2cwdGxROU5vdlN1VGpxR1JzYjNodFJ4Y2w0aHdneCtoM2RCV2ZlSUZLM3Q4cGl6bE52SmxDaXg4MTU2ekxlVXJVK1ZKZjQxZkpPN3VxNDVTZXUwYjFuYjdXSzk3empKWmY2Ym5HS3U2cmZvOXc2TWM4S0pSeXlxck1abjZQNkY5VFc5UHh2T3RrQUk4clpEWDdPQVdQNk5CeUhZTFdkSEd0YUdXWk84ZDZoRmU4dFZ4VlJtdmRWNVZyVmI2cjR1djM1UVE4Z29JL1Q5OEJMMXREeUZIcnhSTFJ4VFhFK0ljcVBkdHhIdHZsTXRSNWlsZmMraHZwbnNCblpocDVpaUxYRVdOOUgyTkgxRHM4NVRPUktBWjk3WHZYZVF6TXFSdkhtU2hIamRhMVU5UStpZlhORWVYTTRWTDZ6RjdKMmEzMWprT2JYNlJ6Mk5JNkRQbjg3UnFIN1R5ZjJNOVppRVh6M3FKa1BldlIwclVXNjNpVzBXbHd0L3cvQnZEVUpKaE5ZZGZJRURWK1I1U3A1dm5ZM3VsOXRaVHpXd0R1RDRCejFGc0FjQXlOQ3BzZ2JrMVdYaUYxT3FBNnVMbC95UEZ5azBMVVBKUERqUGNMNmV6OG1weUhnNTZ4amovcnNsNjAxcC80VnpIZ1hkVjNkY1RENlFqaWdRQ3Vkcllkdi9kd1hvc1MrRjlWbkErbE1mZW5xeDZjeU8rZSs2bzE1OGlKNEZNeFJVQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJBRHdmcHdYUXhFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJGWVJTRENvSkY1bEFxdHJDcFh5ZTgwSktVSXlHTktJcTE0OWt0SkRQUExnV25XVE9wbVNkaDJSMmNtTll5K29vUVRMUUtFVGh5amlINGZBQmNBdUttek5EUVdlakNBcTV6cGxFWS90aEdHZm1GcHBEblB2eGZBQVFCb1FOMW5vT0hKcFFDdVhaQ3BSelFxV2lqcUZnQm8vTHFERVZDSnlDN0Z2MDhDY0tBeHIxVkdJc1prRlcwTkNWQW8vMk1BdG5YVTdUc0FkZ1pBWTZQbzRER2NhY3NTWlFRVlhiZW85RjdXR01WVEVOb2FXaVBuVnpSdCtFUmpJbzhFY0k0eDdyeG9YZ0UrQ201VGtPNGpBRzVvS05lSkFBNWQ0SGloTkRudjNOSG0xK2U0em5zVWJ3ZHdTR2xsNXp5L1A0QXpDOVB4elAzZHJLTFhBYm5WcUNXR2VJTWtDckJ2YmtGV1BQZGhBR3lmUld1d2tteTRicUhSTnRQekJJa2hYcGRlbisrOXA5M1dLVzdKK3p0bE1hZDFhak52WFNLY3FiQU1WcEVrYi9tajQzdUVDcnBsNldQOGluS3UwSmE3OU54MWF1dVZxTFBEcjZlOUg4L0Fhb2VvL21nVkNpeVpFeGF4bUNjb05lWTFIZXZoM1Y4eURhNHp1VWY4V2UxTzBrUDZFZDkyK2hnVGUwRGh6c0xLTW5lT0hiUEFkY1RaMW13RFVDenUwWWI5dHJzaE55Z0I3MXFqZEcweEZiUlI4M09wNk9KVStKU1c4NjBBbmxRYWFjN3pRL1EzbmdHZDVoQU1XeVh5T1RXUmErczhOOXVjdGRzeTRuc1F5enpsTTVHb2NVeHJ2SURCS3lPSis2WXpGKzZqdkNGM1hUa3ZueWlIQkV5YlorQjBadG1YK0tuM3prR1hSNTluQXQ3MmpvaS9SYm8vODhiR01lZE5uQW11bXZmbUpkK253RFh6anhLNVpsb1VGYVZqNUc4NnVjMUdqNXB2dmNXcU9ROTZ6dkE0cnJ3MHJTOXY3NjFrSi82bWlGdXp5cDc3ZDl5bjB5bjh1WUhzcDVMVW53UDRJSUNkZWlod3RPUDFuQ0piMTQvcnNsNjAxcDlzRnpIZ2ZSU0t3WE5QekwxZkc2THVua1hzSjNQNkJwK0pkaXllbTIvTjUzai9qTjhKTEtIbUhHa3BqK0tJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJd0NBRUpIQTlDSFpsS2dJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUliUlNES3dLSzJRZU95Um1IZU5FQzVYbERMWFE3Z0VRQm9BRFdWRUNuMEZ5MjJkeGdBR2xWNUFnMHRLRFI4dmllUkNjYU5GRzgvQWNBUlFXS1lKU2p2QWVDakFRTGR6SlBHQXllWFpON0RzeDdScU9oM0xXSWNZQjg1UG9QYk5nQXVBWENIakdmblBVTGpvZjBHRUN3M0ZsZlJCaVFRSlVwNlVCSTNqYTdLNjlMWTZrbjMvVWwwOVJlZVJFWWMxeXNHL1pPMExuc0pnSWNhNmhsbFpOYk4yanNHbmdIZ0hRRDR0eVZRWE9CTmxvaHo0a1M5WTB3NmR3N3hGajFLbEp0OWk4NC9QbHRZSU0vYzM4MHFlaDJRVzQxYVlvak1mN3NrM0U1aGc0andGZ0NIQS9oVlFHSVJZb2dYSitOdjlwMnBoNGh6Z0hVeGZKNVNXNWE4dnpMUW5WTExMaTVybE9Da1J5UnBUQ1E5UWdYZGV2UXhmbm5FWG1hWlc4bzd0ZlZLbE9PK1BvVmFvdHJZNnZDb1pFNVk5QjR2RXU4Yzg1b3VZbHlrQVByOUt3aFpEVEZlYWswWFI5M0tNbmVPSGJQQXRmZmNabDRyRE9Xc01xNUhqRDhsNzNuT1VZMFE0cXZIWDgzaUVrYXRGeVZ3RFVTdHo2em5iOFdOMzRsUVc5eTZ6U3BDbE94VkFKNFhkUGExakZtVStHM2t1ZlM4OGthdHNhZDhKaEkxamxuMmtaNzNybmJjR3pXT1ZIL1p3N3RTV28rb3ZUZno5ZlRiS0FkcExFZmZmZWNCQUM0Q3NHVXAvRG5Qci92MzFtNlY2ZkNjem5BcHN1NE5GbkZyNXRtM3dEWHpqQlM1NW5lbjV3T2dHQzJkajBXRXlESEJVeDdQZUxJcTM2ZzE0cXA4Y24vblhVU0tsVWQ4Ujh6TmM2am42QWlFNCtYMnhnSmNDbURQSU1mQ3hpSU1HdTBaNlgydldZaWg3clphMTQ5OXovbTEyRnZydjJqZFE4Y2x2RmZ3ckRrRmptUjJ4K1NJY2R0YVlGSzZZN3hyNjYyeTU5dklNYzI2OCtYZUFpaStDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDRXlkZ0FTdXA5NkNLcjhJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlqSitBMVhCL3RtWkRDVng3TGluUGE1MHZOYUt0RDUrWXVIVmJqd2lCRDZZVmFkU3dWUkp2M01mNUtsQnNmR2NBRkNEWnBQQllBS2NDOEg0ditGRVNjUHpDQVBCWWRocUZVWnpRRzc0TjRDRUF2dXhOS0RDK3gwaXRockFseCtLekhmWExGWjcyNXRPWENLb0RoYUtPaUVDRW80UjNKcEg4WHdmV0swcGtsOFl6TktKWjErQVZnNmFSMkFFQUtDWnVNZTZxWWREdUZSR2lBTmI3QVB5em9kRWpqZWJhN0tQMkE3bHppS0hhMTRteUZ3QzJxM2Q5OUtua1FPV2F3Z0o1NXY1dVZqWFdBVGxWOFJqOHRla3ZFM3A2QW9DVGNncVM4Y3h2MC90dkZZUHZadkVvaDZoOG04NlFhK29NWEVXUFJMejNOY2Fqb2twczRNTWw3MjlORVlzTlJEOUlsU01jR0xVRlg1ZitFSFVHMk1mNEZTbVlZUkhqbmRwNkpiSy85K1hnTGFxTnVjNDVzQkZWS3Qycmxzd0ppd2F4S2E3cEtON0YvUlNGUnF5aFR5RjBheGx6NDJsTmwwdHE5WE5XbHVzZ2NIMnY1S0R5eHFzeFpUMUI4VW1LWnRQcHBVSmRBaDdIZTI5cmhQNmZYTGQ0ZzZRZXRWNlV3RFVRSlRoNlJYSmErUDBlZWdUWGxEeEhwbU5CcTFQc1VwRlBya240RGZSSmp2cjFJY3dZNVdpaDl0Z1I1WFJoeXQ5Y29zYXhQdmE5am01ZkhKVjkrSkRtcnNoVEdpSFRIeGJIcmhjaDZ0MWlDVDFuTnhROS9aanhHOW84T24wNUsrRVllaHFBZllPYWFLaHZMa0hGejBxR0FzOTBVdktZcktkWFA4VDdjYnpMWmJsL000VEFOV3QwbTlSdjZNQTJJbndGd05PYmUwZ1hBUGlOTThHb01keFpqTjhKZDlhOGUvQlc1OXJIVzc4Mi9vdVNDTzBtaUZ1enpqdy81UDFCYTlqME8xcDNTdWNVdkx0U0svUzU5K25Xd1RyMnJNdDYwVnAvTXB4bHdEbm01S2F2N0w2a2swVGVrZmM2WjFyVmx5T2RpYS9LcTYvZlBlM05Ndkl1eXlsOUZWYjVpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpTUJZQ1hnTk1zZGFMNVZMQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJnUEFTc2h2dXpOWWk4dkZ0Q3gzdUJ2NXNYQmN2MmJBeDRQbGxTZ0JFOWU3ZEdPT0RpUmdCeWEyZVpLS2l5UjJOd2ZLRXpIVWEvUnpJUXVLa3pyUk1CSEFxQUFpU2JFbWljOWlFQTJ3ZFV1SWF3YTBteG9nemhtZWU3QVZETWZTeEdTaDdScUJwR2xoUi92U1FaOXBXMFVmdHNqbkNqVjdTY2hzY1BBbkNscFlDS3M1RUVJdWFTbkw1ZENqZEtaUGVSQU00cHpYeEN6M3ZGb0ZuVm93QTgxemkyMVJocldTYlBHcG9pT1d4eml1S1ZCcXNvODdKOE9DWnozY2UyOGdTS1dPM1NyS2MvN2tsa1JWeVdrZUxKM0FONEE4Vm5qalFrNHBuN3U5blY2cHVycWxSYkRQSDZ5U2d3U21BaGFvOFdKZHBHZy9salYwR2V3TytlTWF5dDNyb1lQaytndWY1UXhKTDMxeU9LTXlVbTYxeldTTUVGQ3BwUTJHVHF3V3U0M3RmNGRmc2tpck5kRUhDZTlWRnM2Q2NGNlUxeHZSTGx1SStDNEJRNXVxcUFWK21qZnc2QXpsMTJLbzA0NS9tbkFYaVRJWjJTT1dGUjhzdkVPOGU2cG9zU2JodjZyTlRRNUhPamFFMFhSZEsreDE4SGdXdVBNTjI4RnFENEtjZTJVdUgrdU5iY25KUThUZ0UvRElCbmtqOWJNMXhSNjhWTkY3am0rUnRGbHoyaXpXM1hzanJ6S08yYVE0aGJ0MldjZ3NoMWxIQjBqYlBwYmx1L0RNRFJwWTAvNTNsK1Q2QUE3QlJEMURpMmJ1ZDJyWkEwaFdnUEFuRFpTQnJYNDJ4aXRncWU3d1dSVHFQYWNuR3ZjVnpGK3prc003Lzd2VEtvTGRldHo4OWl1WG5URmk5TVR1V3RUaHhtMCtTWXZsL2o5T1NieGpidzdDTzhheTNlaWFQUUwrKzFSUVdPSzNRQTgzbG52NC9ZcCtmVWljNTcveHZBcHdIOFIrUG9tK01qNzkvd0xrN3R1MVJSWjNnNTlWejB6SFBTWEw4cGR3aTUzandyM1dtMWNPdmp2TlJTcmo3amVPKzU1WlRWZXZjZ0orMWx6MWpYaitzeWQxcnJUNlpkQm5Tc3lQMHJ2KzhzQzVGN0RaN0IwMkVubmJoRUJ6cXhlRGlBcjBjblBIQjZudThEUEt2Y05kMnZIN2dheWw0RVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRWhpVWdnZXRoK1N0M0VSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRWRnRUFsSEdGVU1JWEhzdjhNKzJMdzBnWGpYaFJvL2tFU0h5d1RQdTF3QjRwcE1wRFZJbzVIT3VNNTBwUmFmeE9BMGZLQVRoRFgySVRhNHFZNlFZSmZPcWJWQzVxajdkM3oyaVVSNUQxVVZsakJDU1BRTEE4VXNnM0tLNThFL3hsaDFLUUhXZWZYOWpHTGcvZ0Y4WTR5dmE1aEdJbXQ5ZUMrQlpUcVBVbGo3TGRCcUFmWjNOOFozR21jSE9BTDdxVEdmczBaL3RYR05SMklKdGQ4UENpdFkwVVBLSVF0T0k5Q05KaUtHd1NyOWJIMWhFbVpmbDR4M1h1Mm5YZGtUaG1YZTc1ZlNzTDZQS1VHTWRrTk9mYW9zaHNnd1U5R1FmcDhCQlJLRHdGdGNPMXpvU3V4bUE4d0RzNkVpRFViK1loTnl2ZHFZemRQU0ljNEIxTVh3ZXVpMUs4aTk1ZnlWd1hVTDJ1czlTTUliaStyK3hKeEVTTStJOWJRdkNNZlRNa0ZJTm00aEhxS0JiOHByalZ3MUJBc3Y2YjRycmxTakhmV3pybHdKNFFkRGViMTZ2ZjFUajFPOTBBTjc3dlI1SFRDVnp3cUkzZDVXZzFCalhkQkhuWHVUaFlUL3NTSGpkM0NQbWlwcGo0cGhZclNxTGxlVTZDRnhIemE5ay9QMjBYN3A4QnZoZEFkQUpFdGNqRkdFYmVwMjFxajlNNVhlUFlDM1BJaDhJWU9wNzI5bTJpdXJQcStiSXFmUVJhem5wTE9UOHhrbk9sdFlFT3ZHc3pqeEtzdWFhN084YUlUSUs3RnRGUDcvUkNFVHlyc05uU2pMdVBEdDJrZXVvdGJiblRIVVZXZ3FWWFJUaytKbjNDajZ3S3NPUi9oNDFqcTNiR3E4VnVHNmI3Vi9TbnUvbkE3WmpwR015VnNON2RrT25vQlQ4alFxL2JkWnRqMHZmUW1zSXlMSysvTTVxSGJkbjY1bTdMby9pMDFjNlBLZmt0eVRldWVLWlUxVGd0eEtLeFZNTTJScUdGTGhtbVcrVUhISTh3VnFCQmZFKzFKd1ovRzhBVnhqVGpUcVRZL2F0aVBVbkFWd0tnR0tsRkxKbXU5VjRMM09ySEZuSDNEemI1eWplVFNGeU9rTm00TjJCZFhQYU00L0pBOUk2eWJvK3A0QXU3NEVOMlc5SzI3ckc4MTZPeThxMDdHN21ObzJ6Uk9aZEsyelZPQmw3ZnJNTytLdkNESGlYaHZFNHJnd1J1QWZqMk9ZTm52VXoxOHdQVGZjZjM1bzUxMXErMXl5ckk1MlA4VnVEMXhuOWJCNTAydjJTTlR5RDg4eEJtM0kvei90T0tiNElpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlNQUdFUEJlZ044QVJLcWlDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFrNERWY0g4MjJ5RUVyajNHMjdQbHY2eTVOTDEzYzZIL0IwNmVRMGQvUmhKRzlwYURGKy9KOTZPT2hPNmVEQ3dvbXVnSk5CemlaWEtLSTJ4SzRQdDBWcEJCWDIyaHlkdzJpVFFVb1FqTm5vM3dPUTI1aGc2ZWkvTzFoQzBQUzhaOFZqWWZCTEJmSXlTK3lDallPL2JTeVBBVWErRVViMk1KUk14dk5FN2FMY2hJS21xY1BxTVJTNlhST1kzSDFqbDR4S0RKaGVNUlJVSkt3OWVUZ0RnRnBhT0RWeFNhQnFTVyt3QTBjRHNudWpJQVhwY01XNzFKczE0MGluK1hONkU1OGFPRTVabTBaMzNwbWZ1NzFhcTFEbGlGdmc4eFJKYUI4MzFyWUw2cVREbS92d1hBNFFCb3ZHNE5VZjM4YUFDdm1MZ2hlTVE1d0xvSjVWajdWWi94U3Q1ZkNWemJXK2E1U1d6Zzd4dW5VelIySGlMY3J5a0Q5MlUzRGNqOEp3QW9VUGZaZ0xTR1RzSWpWTkF0ZTYzeGkyczc5cDlYQm9QaTJvcU82RXJDRk5jckZPTGcvb2hpZE40UXVmZWJMY3V0QUZ3QWdPZWUzdUJ4QUZZeUp5d3FaNDU0NXhqWGRONXpyNWJIaVFDZTZseGZldnVBTjc3V2RGNkNmNHh2WlprcnBEY3J5aGhYOHRVcHJTb2o1NitUazREaDZ0U1dQN0Zvbjl1ZGx5aVdTT0ZjQ2dkeFBKMzZOemt2TTAvOGJRRmMwbndMdUkwaGtYVmFJM2FySDdWZXpKa2pEZGl6b2xDOGtvS04vQTQyUktDUUpvV0I3eHVRT2NVWGVTNThaVUJhaTVJWWc3aDFXN1lJb2MwM0p1ZUdudk92ZWF5aUhMOHg3VnJmblNtRy9vYUF2dEpIdndzbzVzSWtvc2F4V3Z2ZW1uVmZsdmE4dFJURkdJOXFIQnErZHdEaHZtam5WdndHeHZzd3ZMTmtEZEdDMnl3SDEyMTBZRXZIMkZFT1NpTEc3WG1NVmpud3RuSWRLdDd0azdBMXg4WW9FZkNoNmpMVmZDbDAvWnhHZlA3emhkK0NMT1A0OXdCOExQMmhzdzNtK2QzQTl5NjZEU0xYRlNWbDQvcVlqcE80bjJTZ2N3emVhZVNlNkI4YjRldHZsaVEyb1djNWJsSlFsOTlJTFdHWjhMSWx2U25Ib1lBd3YxM3pmazUwb0ZBejd6SE9jOVk4NUpsUWREMGowNHY2am1rWmQ5dDY4SjRXMTE4bEF1UlJkN3o0Ymo4NjNaK01kR0xSYlNPS1hMOXM0dWZmczMyT3prZlpCcGJ3cVdhdTNTTTVrTERFVnh3UkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUldCc0NGb1BXdGFtOEtpSUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0l0QUxBYXZoL216aCtoYTQ5bDdnbnkzL3VoZzgzYTBScHI2NEVTbmNPcUQzMEJDRWwrem5YYjVmbFR3dlhsUEFsc1lsM3NETDFzZDZFNWxRL0RzMFlwdzBscnBMUUpramhNb0Rpdkc3SktJTlJiN1VHQ285SEFERlM0Y01IdEdvV3NLV25qS1I1U3FqWjQ4NEpBWGlkZ2J3MVNFYnpaQTNqVWdwc2tWeDVCMGJBeENPY1RTU3B3Z0xEYWM1WGtZTERoaUt1ZFpSb2d5elBYTmJDemh5bkxhSTFVMnhvYjFpME5ZNlJ4bVh6Y3VmOHhxRkJ2ZTNGczRRcjZZNHg5Z2RVVVFMUm5yV2w5NTV0bTM2V3V1QVZWMnJMekZFenBWdkJuRElxZ0psL2g0aG51NTEwdEVXZFV4cjdFeDhmL0pZeERuQXFqV2p0V3lLdDVoQXlmc2JaUmkraWUzUnZoOC9iZ1N1S1NKeldzOWlJcEZyVGJiZk1tR0ZxYld2UjZpZ1c5Y2E0eGNkY1hCdWYwRXdWRHBxb1VENVZZWHBUblc5UW5HUlV3dnJ1dWp4R3VkRzBTSm1udjFneVp5d2lGR09lT2NZMTNTUjU5OEhKMkhmb0c3WGV6SmEwOFVodDdKY0pSN2RsbkNiUXJHY3VKcjkzbkVvdnhrdGM2NUdKejRVdlBHRVpVNWtsODFML3dQZ2RBRHZBZkNKUmtUdXA1NUNiRmpjR3dPZ3N3UUtDRnNDejdUT3RFUWNjWnlvOVdMT0hGa0x3MThBNE5oeWJ2UGVQcjhSRnVXK3BLL3c1K204YzYrZ0RHdWV6YktJRVNLcDN3REFPdzRVazR3SVl4YTU5bnpiNjdLSk9LT2JaYjFkOC8zdEl3RFkvNzBoZDI3MjVsTXJmdFE0Vm1QZlc2dk9PZWt1RTRiayswdWhhN1o5bEFqenNqSnhqM1JNSTNqN3dweUNaejdqY2NqWlpoRjlmNnBiZERwbVB6SkFQSlpPRkY3ZDNCTjRZaWFYM01lc1p5ZTU2ZmYxM0JhTms0bWRrbEJ2MUZ6Y1Y5blhPUitPTVR6djQ5b3M5ejdJb3YwbDQzODZPVGFrS1BQWWhheVh0V3ZVdWlLMzcvQiswYjR6amxQb2tJVmpmK3NrbTQ1Q1hnemcyN21KVHVRNTd6MFpPdExjTHprVW4waVZxeGFUWiswVVNkOHlPSmRsOTQ0bGNEMGZkdFIzektqMWMyNlhpQkJKNXB6L2pMUXVxdTNJZ2s3dCtLM3paN2tWSFBselBML2tPYVlsdkNNNWFlZWVWa0VFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFTnBxQUJLNDN1dmxWZVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkhvaFlEVmNIKzJjSDBMWE44YXdFV05vZTMyQVpUV3ljQXZXa1Q0TFFBT0x6RFVZWE5FQ2hEUzhPUWh6ZVhpTHdlMDh4U1NpQmFOZVRlQXh4ZTJYMDFPVVFKTGJSay9uSVJGTFNMc1VmWDAxS21Xc0dXRThjYWlzbmxGYWlrR1MvR2daWUlxVVcwVGtjNE9BUDQxaWFrdlM0OGlFeFNiZUtzTXd5S3d6MDBqMGpEYk1yZTFoWW9RcUdqVCttS3psdGtGd05YVnFJMG5ZYmJmMndPRmJuTnJSa090TitVK2JIanVNQUEwbHUwcjFCVG5vUEV2UlFyMkRLck1QRU5qYTlJUllqWGR2Q251eFhmdmNtT0JQSE4vTjh0YTY0QlYxZXBMREpIbHVHTWp5c24xMnJhckNwWDUrNDlTSC8xazV2T3pqMUdvaVliY0ZJbndCdmFqdlJ1RGVocXg5aFg0THV5YTF2ZlBkQXEvUlp3RHJOTSt1cTgyOU9aVDh2NUdHWVo3eXp6RitMUHZ4MWVTVUJJZDI5UVdTcUpvSzBVR0k4NjZXdlllcHc1amE3K0l2UzdyRkRsK2NXeStaOW9MVWxRbE9wd0FnT0lZcFFiM1UxMnZSSjczc2kzbzRPaUFSc0NCenJhOElWckVqR3RST3RINnJyRmdKWFBDb2l4eXhUdkh0cWFMUFArbXVCU0YxZnNXZU9WNUU4ZG5pc1I1aEplMHBqTytRSE9pV1ZuVzNLZkgxVzUxU285cTVqTUswVnJEYjVOZzFqa0xFaWlabHpndXZnTEFhNnlGMmJCNFBJOStrckhPcjAvamtESDZLS05GclJkejU4Z2FFQ2p3UzdIM3YwemY5bDRLZ0d2Q0g5VElySlBtYlpMVGg5MkQ4dUg2bFU1REtRWlpJM0FkenUvWHIyMkVESzJDWU5IaTFtMDlJNzRoOE15WjY0UmNJYzBjeHJ6TGNYYk9neG5QZU0vb3Vsbnd2STV6VUZUZm0vb2VPR29jaTl6M1puU0o2by9rQ0VQeS9JWmpKdTlIMUJMd281TjV2cDhSVHQ2NzBFNEVjS2hoN3o4TFB0S1I2V3phWE8reDdzY2xCK1FsNXhSMEpQMnNKT1RJdlhWMHNKNmRSSmZEbWg2RnY3bWVlMDR6NTkvU21vamlWU2Z3Y3dCdlNIZEh1SVpZRnJqL3VSQUFuZm5RSVEzLzhGc1M1ODkxQ1pIcmlsVk0rSjN4Q1hQTzkrYnRZOXV4aXZPQjU3eGxWWm42L0owaXVOeTdXWVBId1o0MXp6SEg0engwU3ZCY3ZzclJRczQ2WnN6TWFwVXQ2anRtMVBvNXQ1NzgxckJ6NDdDRDkyRXNnZmR5S05MTXRWRmZZZEU0MmxmK1VmbHNsZmFPUEd1d2hLSHU1MWpLcWpnaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaVVKV0FCSzZyNGxYaUlpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ2pSQ24xWEIvRmw3ZkF0Y1BBM0JlRWxPT2FNanZBZmhGUkVJQmFYdzlpZlphQlU3MlNnWXlVV2ZNUndQNDUwd2hKK1pKNFpoM09BeUt1d2hwbU13TDNTVUdjZ0ZOTUVnU2tjTGdyTUFZRFZkWlJ3cFRVSkF2S25pRWFpUEtVQ0xPTVp0ZnpZdnpOSWJndTJzSi81WGVlWW9selFxNFBTZ1o0MUZNeUJLbVlqekZ2a29oYmdxRWxCamFyb3RSaUtWdCs0amplZDlteTNkeVl3Uko4ZU1TSTNjS0xiQlBQRHFvc2xNWFdpakZRSWNMNU41WDZHTWVqT3lUT1Z4ZTNvaWFISlB6b1BFWkdnS2ZIcmkrcHZnLzIvMTlqclVjRGZ5ZW04VGZqTlg2azJqZTlXVlV1OWRjQnl4ajFhY1lJc3Z4V0FDbkJ2WXJDbFhTRU5qcTRNUnJDTjVseTNHR2E1djNPUHA0VHIvbXV1Uit5WUNkNHFrUklub1I1d0I5akxNNWZEYnBtWkwzTjhvd2ZKUDR0blZkOUg3dzNJanJOenJ0aVJhWDQzeEhFV01LYjVUc1AxYTF6eStUVTRlUHIzcHdJcjlIQ1JWRWpGL2NHK3lSMWlrMWhLM1pKSjcybS9KNkpXS082blpwaXB4eHZyN00wYzl2a3ViaEp6clNtSTM2ZEtlem5KSTVZVkd4UzhRN3g3YW1penovcHZqUnN3RWNuM24rN2VrR2Y1WE8zUGd0cFlUL29qd2ozcGVJTWRIRFpDeHhyU3dqMXVaallORHVNN2dtc1FTS01qNTFpUkJycVppVDFyTDVyZUJ4dnJZdS9iZExLMnE5R0RGRzU3ZmlkWi9zQ2x5M3YzQ3U0cm5xdnpUZllLOElucSsyU045MUtWcktOVTlVdURRNUtiT2UzNndxQjl2NnRPUjhiTld6ODM2dkpXN2Q1dVVWdWFZQTVpT2FQY2ZITEpWYkVDZmFtY3lYa29pNXgwazF4WUo1YnNpOVZVUlloM1ZOMURpMkRpeTZmYUprTGNFeGsrTDZGQU85Mk9ra3NDMERCWWk1aCtPM2QrdDZhVmtmZnlTQVJZNUNTdDRObG8xajQ3NGxrUXpQY295aVlPOEZ6YjJtenpmaXpMTml2eFMwcGpNd09uWGl2YTViR2ZMSWpUTDF2bjViQU9jRG9OTTdoV2tRb0JORTNvbWo0UFdpd1BVVkhYQkVPcW9ZR3gwNnRyMmtPZHVpazVTYWdmZkwrRzE4SHU5bGQ2TFdSZWphNjdoM2t4eXVsL1REYUljUXF4d3RsS3hqU3VveDlXY1NRSDZiQUFBZ0FFbEVRVlNqem42aTFzKzVQSCtkSEZKem5Wa2F1UC9oUFZmZXkrazdjTDIydi9NN1NkOWxuczF2bXpUMzNNRlFFTjQ5NTc2VDZ5NEZFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFZGg0QWxIaUl4c1BVZ0JFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVFXRXJBYTdzOG0yTGZBZFZTNXg5ZzF2SWJUTlM1dW53WGdTQURmWEFLTUJuTXZib3dFbnhNRTlmdEppT255b1BUR25zekRrN0VsRFowaWdsZThNYUlNODlMWXJqRm0vQWdBR3VsSEJZNEh4MVVXRmx4VVZvOW9WRTFoeTFJbkFKOUpRajQweUx0NlNjTjRoTE1wM3I4emdHOUZOWHlsZFBoOWpzSkdGSXV3Qkk1WkZCNWdmUlZpQ1ZCWW5VSWJUd3BLbGdaOVRJdUNmOHNjS2JCUDdBcmd6UUR1SEpUM3R4dkQ3NGNBOElnL0JCV2x0MlR1QllEQ3REZnVLY2RQSlFPbGF5cm1kN1BrY0dYSGlubTBTZmRoY0ZWakRjbnlmd0xBVVkzZ0RJVnRaaDBuTEVKSGNVK09wUnlMbzk0NzVoWHg3bm5tL201OWE2NERsblhKdnNVUTJaWWNQdzhKZkU4OERrNG9ya0hoRGE1Sm8wTE9Yc21TRjhXUUhnUGcrVFB2UVlRSVdjUitldXJpSVpZMkdUcE95ZnNiWlJnK2RKMkh5RC9uL2VEY1J0R0NENjNZUDYwcVB3V1N1QjZsU0Vla21GeWI3N3VUczRsMUVWT0pXcXRRZ0lCaks0V1Bjd05GV3poMzhPKy9BY0IxWU8zZ2FiOHByMWRxek5Wc0s4N1hiUGNyQzg2UE9CY2YyTHlmcnc1K1J5bTJ2YmRUTEw5a1RsalVWMHZPb01lMnBvc2FEN3BzMkM1Y3MxSTROREtRSFFXNS83RngvdE1WeEMvaHY2ZzhPWFBXcXJwb1RmZDdRbGFXODlibU4yMGNwTjJ1R1hkNERySVZBTDZ2bkh2R0hIanVSWWV5RnFlR09mdnNVakVucldYemU0dEhuUHc3NmJ6K3EvblpqZjdKcVBraFlveTJ3cG9uY04xTmk2S2k3MnJXcFh4UFB1MXczcnpvek1GYTdtNDhubVBTU2VTWkVZa3RTWU9DZjNSQXhIbTJKTlFXdDI3TFluV1lXVVBjdWkzVHNjMWErSVVsc0ZZODYzRncrTmVwTDI4ZldCN1BIaXF3R0s2a29zYXhkVnZqbGE0bHVvM0E3N1VmVEE2Yy93TUFIWmp4UFZzVStFMlE0b1A4THJGTE9wK3QrUTBvV253MCtzNkpxMFAzRUhtc2QySktxdjdnSkxhNFpVbWt6R2ZwNlBtR2dRNUlNN01kOUxHTDByZkkzU3VVWXRQdXNNMUR5REdTZlpidjNyMHJNRzZUNUhuMms1dXgrS1FGNTNqY2E1K1JuRzJzS2didmwvQXVJL2V1VXd0ZUIyK2I1bkE5dDMwajd4M2xPS24wckdOeTZ6VEY1NkxPZnFMV3p5VU1ud0RnbEpJSXlaa0Y5OGlSKzUvQ0l2ek84Y0t5c2JVMHZiNmZmMUJhMDF2T0w5ZnhES3h2L3NwUEJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSZ2pRaEk0SHFOR2xOVkVRRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUlHUkVyQWE3czlXcDArQmExNVNwY0hxL2lObDZpMVdoT0gwb3dDY0hteW85TnRHek9ma1pFRHkrV1Q0eDB2aU5MWStHTURUZ3NWZVhncmdCUVdpTTE3dVE4YS9ReExHdWt0UUlYSkVKWUt5TWlYRHZ2SUdVOHpGa1lZU3VmYUlSdFVVdHJ4MVkzUkw0NzFsaGhFVVphTklFOFZMcnMxb0Q2K1E2NGtBRHAzQU94MWhSRXFoOEFNYWNaeWZaM0RWSTJVRTdwT0VTU2tXRkJVb2JNZDNnUUtGZkJjb3lrRHhpVnMySWlGYzM3RGZSZ3Jzc3R3MTMvOG9MdEhwZU1lUTB2TDBNZWJ3ZS83Ymc0VjdGOVdUemdIdXY4TFpTQ21qZWMvWEZEK2dhTVRaeWFFSGhTUisyZ2hmL3lRSmZiRi9jRjNKZWZWdkFYQXRTeUc0NkVCSExLOXlKdXFaKzd0WkR6VU85QzJHeURyZnNURjQvM0FTQlhYaS8xMTBDaVVkbEVSd0xPbEY3WUZuODZhaC9iOEJZUCsyaXNsUzdIYTNaRnhLaHlYem5OOUk0TnJTNnVzUnArVDlqVElNWHc5eVpiVW9IU01vRk1POTFTWE5PUlhQU2loTTlJT1VKZWU1LzVPRWtmZys4eDJuMkNVZG5ld0pnR2NCdFFLRkZUaU8wTUhJdW9RaGhBcUdZc2QxRStlRC96UVdZT3JybFJyblJpM0svMGxucGp3em9TZ2szeFU2eGVGNU01M3g4RDNkS2UzcEY4M0Z4bWI1WFRTZXIrN1hDS1dmNDBra0NlWSswWmxHNlJuMDJOWjBOYzYvaVpSbkF6d2pZQi81aFpFeHh5c0tibEF3ZTlIZXBwVC92S0tVemxuejBsZzM4VU5qazVrRnJ2K3IyY2UrcHhHMTRibisvZVk0ZFp6Q21zejdiWUtpWW5RR3NFekV1MVRNYVFyY3JIMHRPdDR0R3NkODNDUHVZRXo0a1FGemtqSHJLdEdpMW9zUlk3UzFncXNFcm1mVDVkcm00dFFQNkV5Umpocm9ZSTUvdUMvaCtvWU9paW1hU1VGaGlyVHVrLzYybG5GVnZENi9qNVNLWFBjbGJ0MHlLaFc1cmlsdXpUTFZjRUxNZEhNZEhQSTgvVzdwK3dqdkZrUUdyck1wQXNtMTNKUkQxRGkyYm11ODByVkViaCtnMkhXNzVxZFlLcjhMOWgyaXZ4UHd1d29GRitrNGNkM0QyTy9FNVBMbjJQamNacjUrWlc2RXpPZjRuWlIvM3A5RXJqT2pUZjR4N2lWNHJrVEg3YzhLcmczbkx0NloyOFN3UlNNcSt0RDBqYldtc0RYWmNyM0crNkIwUkxZbzhEN1V4d3EvTzlMNTNmT2E3NHZjeDA4aDhLeVMzeDI1MzdZRXJpdDU5K2tMbHNnYkVDZHFYVXduR2p6clhYWTNyTlk2WnVyTkZIWDJFN1YrTHVINWVnQkhaa2JnUFA5WUFHOGIwWHo4bXVSNGQycDNHajFuNFZ3UGNXNnhudmRuTnJjZUV3RVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVJRnBFSkRBOVRUYVNhVVVBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUWdTa1Q4Rno4N05hN1Q0SHJ2Z1VTKzI3ZkNNTnBHaXVmQm1EZnZnc2ZsTi9sU2NqbnUwSHBqVGtaR2pkVEJHTDN3RUpHRzBJR0Z1MTNTYkhPRlA2Z01VMWtvR2dsQldnb2V0aFg4SWhHMVd5bmVhS3JOTzQrUHdrdjBzaW05TkkraFowb2htMzVmc1Uyb1dqQ3VYMDFqREdmU01NWENtL1NHWU5DTEFIMnZ4YzNvam5QajAyMjE5Um9qTGwzUi9pdzE4d0h6dXgxVGIyUDZLa01UMGhHL0xXemUzeFB4c3g5R1Z6UldKWUdlVFQrWHJkQWdXVWFyZVU0ZFZoV2Q4L2MzMDIzNWpwZ1dmbExCSElYcFdQWnI5Qnc4MVRqT21KZU9XaVlUWEhZVHhvNjZxMlNzNFM3RytMbVJPR2FpL3NaaXNyU3dKNUNLYTNBVkJ1ZmF3N21UeEZOOXFtL1NYOXloTjBsY0ozVEN1djVUTW43RzJVWXZwNGtsOWNxNnB4c2FIWTBsdWQ4dmt4c2N1Z3lsdVlmdVY4cnpidnY1NzFPdkthK1htRmJuOWtJeDlQNXlycUZ0elJyZzhNZHpqQmFIaVZ6d3JxdTZmbzQvNlpETEs2OXVLYmpPZlhua2loNnk3UVZDNzFKRWthbndDd2RFOTBvbytOYTF0U3p5VWJNV2VzbWZwaUJmdTRqRVN6bkpUeVdOUm5GeU9nc2p2c29pdDYySWVMYnhIY2FNZEdkQVh4MUNYd0t2Zk1iU0c0NHBoSGpmWG51d3h2K25OZjVXb2tvMHhSUVI2MFhJOFpvSzY5U2dXdHJQclhpZVIyMVdNcVZLM0xkdDdoMWQ2eDlheU11K09nVmxhc3RidDFtZjFUamFQQmZMS0F6NHREaDIwYzZEcURhS0R5TG95am1MczAzU3Y1M2pVQVIxNmNHckxOcmxLMGt6YWh4Yk4zV2VPc3FERW5IQkhSdXhmRXBNdkRjbVE1NzZBaGpuY1BUQWJ4eFRTb1lzUzV2VVhBczVwa2d6dzBvUk14eCtZWnJ3aW1uR3UwZUxGcFFkT3p6RFBkOC9ON0Vjd24rNGJ6THN3azZSL3RoRHJnRnp6QmQzanQ4UlhQM1pYdEhPcmxSNlJEdXNLWVBjNSs1TE5DcDJJWEpZVjF1Mm53dTR2dGFTWDZlWisrUnZqTmFIYi96cmhKRjJkZnArNENINTd5NDNuVng3ajI0ZFYzSGVOc2o2c3dzYXYxY1VoL2VPNkhETURyQVhSWjRmbDNENFVKSldSYzkrNWtrdlAzZkVZbjFrQWFkMGZCc2tYZFBMWUhuakR4dlZCQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUWcwN0JOTUVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVWaEVJTXB3djArQjY5c0IrQVNBYmRhMFdhTU1wM2RLd20xVE0xYWlJTngramNBYkRWZldQVVFhcXJXc3BpS2NTbkZyaWkxVENDWXk5QzF5N1JHTnFpMXNTZEZWR29TY0R1RC9UWWFzcGFMVzNiYnhDTk4rTVJtdVh4M1oyQlhTOG9oNHp4YUhJdUljeTM1ZW9aeWJubVJ0WWRLYWZIOEpnUDJNb3FlYkdMaGVQTHVIaXROUWw0YXRWL2FRMTkyYU5yMFl3TmFWODZvOVozU0x6N1gyaDNveVZLNk03US9KUjRycmVPYitibjM3Yk5OdXZrT0pJVks0K1FRQVR3bHNkTSs2bCtQUldZM1RoT3NGbHFldnBDSU04Q1BPQWRaTktLZXY5dlBrVS9MK1JobUdlOG83MWJnUjc4ZlFkYWZBSkoxb2ZXM29nZ1RuUDRSUVFYQVZzcEtMY01veDlmVUtRZDBubld0YVJWeXlZUGY4RU05R0tOcjl6WUI4UythRVJkbFp6cURIdHFhYmNqK3g4Sjl0eTRnNWE1UFhkSnhYT01aUS9PdnZBRHd1NE4yY1RhS3ZOUm5mVFo1TDNLRTVEOTQyT2MvaGYrOEk0TlpKMkd5MnowVyt6eFQxV2ZZOXA3U3ZEclZmcnRBRmVrbnl3T1JReXBMWnB4b1IvejBBWEdPSlBNSTRVZXZGaURIYWltZnFBdGREaVkydSt0NDZsTGgxMnc5WXZtVWkxMzJKVzdNOHExaForKzZROGI3ZDdCMGVBb0Jpd1ZNUFVlUFl1cTN4MWxVWWtzS2pKMWZxdEY3UnprckZDa3YyM1FCNEY0Sml6dXNTSXZhM1BIZWdzMUU2WjJLSU9oK2FFdVBaUGRoZEFid3JpWDFiNnpHbXMxYk9FMXd2M2d2QS9Uck9VMjgycDNLZWIwa1V4K1krNDUrYWIzdTN0SUlyaU1kN2dzOXIxaW12eVh5dktZSnRFYmlma29PZll3RzhzSUJoOTlGYzRXVmo4bXNUamZlTytaN2MyVkVqOWxtSzVpNjdGN2F1NnhnSHR0OUZqVG96aTFvL2w5UW41OHdnWXY0cEtaUGwyYTVUaks1RFBFdGF0ZVB3dlBPU1p1eS9qU0Vqam9rOCsrSTlaUVVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFSlhLc1BpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUk5RUNnMUxCOFVaSDZGTGhlZHlPY25FdlFPVjNqL3dGQUlZQ1g1enc4b21kb2hISUVnRitQcUV3MWloSXBJTkdXajBZL2V5VlJ5aHBsamt5VC9aT0dIcytNVERTbDlTSUFMOHMwZlBKbTd4bVBhZ3QxL0ZtcVhNUzdkSXRrMkVQQkYwdWdvQ1hmYXhvTmpEa2NuZnBPUkJuN0ZOaU5LTy9VMHFBbzJMa1RGQ2JsdXV1NENid0x0ZnFEeCtpb3BFd2VnOTJTZlBnc0RZYlBTNkpScFhGem4rYzR2bXNTMHM2TjQzMk9SdEVVNmw4SFFVR3VqdzRBY0lZWFNvcnZtZnU3UmFpOURsaFUzYUhFRUZrZUNxeFJQUDB1UVczQlpONEM0SEREdW8vckpCcXlQeTJ3TEgwbEZUSEdSWndEckp0UVRsL3Q1OG1uNVAyTk1nejNsSGVxY1NQZWp5SHJIajN2RFZtWDJieUhFQ3JvdS81ZlNnTElYM2RtUFBYMVNsdjkvUnZoMmRNbXVPK2IxM3dVTGR3VHdDZWRiZHRHTDVrVEZtVnBQWU1lMDVxT2RadXFjSnVWZjdjOUkrYXNUVmpUM1NDZFFkTkJGWjJDVWdpNkQ0RXV0bFhFbW15TFp1OXk4eVJJZW5jQXQwM2liSC9kaUtYU1FSWEZ6WEljOTNUUEt2bHRna0psZkg4aXdva0FEbDF5M2xYYVY0ZmFMMGV3R0NJTnozbmJFR2RPTlJsRnJSY2p4bWhyUGFjc2NHMDlvN0d5bW8yM1NMajUrd0QyQmtCQjl5RUR5L2ZPOUIyM1c0N29kV0pPSFNORVZIUHk2ZU9aZGRzRFI0MWo2N2JHVzBkaHlOcGpabzI3S0gyODB6bDVSSjJkNU9UVjl6UDhYdkVHWTZiL0J1QWZBUHlzRXovcWZNaFlwRUdpemR1RFVheVoreC9lVnlrTnZOOXlVQkxKTG8xcmZYNHJBTHlmdzdzNTkwNUM1Znh1KzVlWmU3ODJYOHUzcE5zRCtOOEE2TFNFZStrK3dsY1NZenExelFtOGEvYjJ4cm5qSVRrUHp6eXp5am1USWNrcVVlaW82aUtITStwTDB6bmt0VlZLdHg2SnNoODl0K25ucnd5b0RoMStVWFQ5T3d2U1dzZDFUQUMya0RNemxpTnEvWnhicHg4bkp4dnZXM0FPeG5NOE90TGovV2V1eDZZUTJJZDUzeUxDTVdldCt0S3hpZFV4ekJVQUhncUFad01LSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0VyaFdIeEFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFZWlCUUtsaCthSWk5U2x3ZmQ4a3ROcVhNVVVQelhDZExDSU5weGNaOC9aZHA5ejhQZ3lBNGpYcmJtVEJDK3l2cXlDb056Vng4RnNCdUFBQWhUbWl3NXVhZnZRc0FEK1BUbmdtUFk5UjRKU0VPaWljL243anR5c2EvZTBCNFB6S2JSR1JmSVJBVkZ1T0tkVTdnbDNmYVVRYW5QVlY5dHJHNm4zVnc1TVBEWWpQQnJDN0o1R011SFR1Y1V6R2MxR1BjRTYzR0VYbjVqK1V3ZFc2Q0FwR0M4dDc1djV1bXcrMURvaVk2eno3bFJyOTZtQ2pRZVBVOWtwdC83R0lFc3lPTnhIbkFPc21sSk03SmcvNVhNbjdHeUdtT0dSZGg4dzc0djBZdXZ6cjZsQ2xiNkdDdnR1UkFrMzdBUGh5UU1aVFg2KzBDS2E0NzV2WGZEVkU5MHJtaEVWZGFsM1dkRk1WYnZQd2I5czBZczdhaERYZGtHS3hxOVprbk50dURJQWlZaFFydTJjU3JDNFZyODZaT3RxMi9uU2dpRk9iNzdjQVBMZ1I4TGxxUVVIZUN1QkpPWVZNejFEWWorZjdDbmtFNk1DSm9ybmNiMXNDSFlZZWE0azR3amhSNjhXSU1kcUtaOGd4eTFwbXhodkw5OTNaczU2eGlGdTNiR2RGcm9jUXQyN0xVdU9NenRPSHJIR2p6MzZ0NVlpS0Z6V09yZHNhYjkyRUlmc1NhSjdxK2ZleTkybkljVFBxUFYrV0R2ZTNwd0I0VEVGbW5Pc2VsKzVpekRvYmp6b2ZLaWpPNEk4dTJvUHhqT2xoQU42UnhLTnpDMHBuUGs4MU9GbGRsZjZzaURYdlRORWhFNTNYUkFtaTB2SHZnUURvMUdaVnYrTjlvSDhFd1B1WWZZZVhBbmhCZ1lOd3EvTnBpZy92RE9DcmZWZlFrQi9iN1ZSRHZEWUs3eTBjNzRpL0NWR2oxOExmU0tMckY4N3B5eFNxLy91S1VEbG03RnM0dHJFNG5ETjRkK2Q3RmN1MkxHa0tzYjh0SUcrZXEvRSs0NE1DMGxxVnhNZlRuUHUxQlEvU0VkMEpBSGlQZm1yaFYra2VNNzg3L0daa2hlZTUxMGxwVHJNVWpXM0NjWEYybldSSlMzRkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVZQzBJOE9PcGdnaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBalVKQkFoZ3NEeTlTbHd2VzRHYkxQdEcyMDRmWWZHU09ORGpTSFVYV3AycElDMCt6TGtDeWlxS3drYUZ2d1RnS05jcWZ4cDVLbnlvL0FGaFkrM0RPYkI1R2hRLzRUbUFqNE5sV29GajFIZ1VNS1dwU3o0dmVyMWpWSEw0YVVSMC9ORENiTmFpaHNoRU5YTnQ4KzUwVkxmcWNlWmtvalZXQVEreHREbUx3TndkT1dDVUJqd0E1WHptSDNYYWZ4WEs5RFltdk5aM3daWEhQODU5cjhXd1BWcVZhNXl1aFJwWXAralFWNVU4TXo5M1RJTXRRNkltT3M4KzVVYVk3ZEgxR0lxZTZWdTM1SEFkZFRiUEwxMFN0N2ZWV0tLMDZ0OWZ5V09PaWZycjhSL3pLbkd2RGRFUFJibEdTWDBOYVk2dFdXNUhNRGZCb2xiTTgycHIxZTZiVlRySEsydmZrQnhhNHE2Y2d5UFhNK1h6QW1MNnJwT2E3b3BDcmQ1K0xkdEdqRm5yWnY0NGJ6KzNxZlF6V3orSDAyT0xsdmhhb3FWM2JYNXQ2MEIwQWxZbjZGdDZ6c0NPSzNDUHYrZ0pMSThXeWVlTFp5Y0JJQnk2NnN6MVZ4U2YzenU4VWJIVDB5Qm9sSjdyb25qMmFqMVlzUVlYZDZLdjQ4eFJZSHJzWjE5dCt1Q2V6WDllKzlHN08xVDFzYW9GSzhWdWY3LzI3c1BxSDJ1dWs3ZzMwTmJDQnFxZ2hLTWdDQnRGZmRBS0FxRVFBeEYxd09CQUZKa0Y0UEJVSVFsUzNVcFF0WVllbEZwaWdjRURDUXNuZENYS2dIMm9OSWt0RWdUUkpvZ2lBRjJmakF2dnJ4NXl6UHRxWjg1aHdPSC85dzdkejR6N3p3emQrWis3L1hhdjcyekp0ck9RZFhXOWZtNE51aHpWZnQrYStMbis0emM5M3VRMjlUL1B0WjFiTjN1OGRicCs2QXhKN2VhNVh4Y3hmN3Z2ZmFyM2dQY3FwbFkreDJ6N1BnS3IvTnpTZDdTM2hNY3RCdlZCMXlCalYvYlk4V3grb2NPYXNjeS9mdEIvZUtIdHQrKzNIV0dSbGNRY2szYXZGZVE2VUZWWEx3Sk92MkpKQlZlL1V2Tjg5SlZrMXk3bmVCb3JCRHIvZHB3a0VWTnRQUjdTZTZaNUNJSDdjeUUvLzd0Tm55OG5wOW5XZnFlMXhXQVc2SEczNXBsSXd0Y3A0N0ZTOXI3eEQ3Tk9HZ0NxajUxcmx1WjZoZXBaNWpxb3hsN3FXTlg5NmVmSHJ2aWZlcnJlLys0THZlTDgzcUdmbXdieHYvTlhZN0YrZHRucTNvK3FkK1pWVjdlM1lhMTE3ZWV5N0pjb2ZrOXJ0K0l5L1ZvVUwyVHFlL0hYdE9qckNJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQllXd0VCMTJ0N2FPMFlBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFnYVVSR0NNRW9YWm1uZ1BPMTJrQTIyNG53aFFEcDQ5SWNtYVNHa0N6ak11UVVMcGwzSis5MmpSVktFK0Y1ZFFnNU5OWENhTnRhNzBMT2FrWk1IWEtSRzMvV0pJSzE2Z1A4S2RZK2c2ZXFyWXNLdGl5cThObGtyeTVIWERYdFd5dGYzSXp1UHloZlFvdW9Nd1lBVkZiemE1QkxUZWU4TnhiQU05U2JuSVZRcXplbE9TMnpVQzJMeTJsNFB3YmRiTWtyMDB5MWJ2d210VGdsNVBVb09ONUxWZHJCdDYrclEyb21tS2JKelFEMlo4K1JjVXoxRm5INmJlYXdkYlBuaUQ4YW9iTkQxcWxubk1lbCtRN2cybzViK0Vodi8zYmExdlVmY0FZdjNWRG4xZW1DTldvWU5DamtueWh4L0d1d0lnYTJMN3NFd0p0N1pxQTZ4NEhlVTJLZFBuN1BTaThZazFJSnRtTnNmckpKbW5jUHBWTzliczM3LzNZYjN0OWd4cVdhUjkyYThzWlNZNGYrWGxoMWU5WGRqcFZmMXIxS3p4ODJRL21qdmJWSkNzVk9QcmlrY090YXpOZGZoUDJZbHUzZTdvS0RDN3JtNnpJZVRMVXYzWnpqTitzZFFtejJjVGZqejZuK2w4bHVkMUV6L2YxL3VuV3pYbTVNK2luNis5M0JjLzhhanNwWnA5OTNOUXlROEorem0ydm5kVzN0ZXBMMS9OdHF0L0lJWTd6Q3VjYTBzYnRaYXVmdDk3QkxWdmZkMDBpVU9mRDU4ZmEwWkhyV1piMlZkOXZ2YnY0eTJhU3dIa0ViWTdKV1AyK0QxNnpjT3Z5R2VzNnRtNzNlT3Z5ZlZDOXQvcTFKQjhhODQ5aGhycXEvL3YvdENHN002eStsS3Q4c2YwbTdaMUwyYnJ4RzFXVDNqNTNuMm8vMVlaUDFqdm8vU2JUcW10N1BTdFBNWkhCVDdidlZYNjZ4KzUvdGcyYjdQTSs1NkROMWZOSWZYKzIzMUsvZjlWMzhKdzJiSHEzZGN1MTduSHFHV3F2WmN1MzNoTmZxWjF3N3IrMG9ia1ZiTDNvWmJkM0JKZHFmL3ZyRzYxcTg3SXNGZjUvZEpKelptalE3eVNwRU5tdXk2TGV5M1p0NS9YYjc3TXUxTFZndS83VDJ1RDdNU2ZhNjltVXBTdzJqKytMNmh2T09rY2ZuZVJ6YzFEb2UvKzRMdmVMMTJtdTZmWHVmS3FnL3BwRW92cjRYN25IYis1aDdlOUpUWWd3NVZMbjFWZWJ5ZWt2TWVWR3R0WDkxUGFkekY2VGFNeXBHZC9mekIyU3ZLRG5Cai9jWEZPUFhPSytnWjY3cFJnQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnU0dDVXcxcUhkWXE1UW1RSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRR0NkQk1ZSVFTZ1BBZGZqblJWamhGdnMxcG9idEI5YkwxdklkUTFHdTBVem1PODk0eEV1WlUwMXVPbkpTU3FrY3V5bEJrYmNPMGtGRWF6aU12VUFrZ29VS3ZjSy8xbW1rTXRWR1VCVjEvZVg5anl4VmkwYzQvNXRHR3JQM2YyUllwOUpjcjBrbng2ak1uWHNLMURYa0JjbXVma1NPbFc0MW0rM0E0MldzSGtMYWRMbG1nR3FiMDlTQWJkVExCVlNlMnd6aWNDM3BxaDhqenI3RGhxY3BZbkxNckR3VmtsT1MzTElMSTFlOERyMXUxOS9kelg0ZjRyQnU2c2VHTGtNWVloMWl0VGZhWjFUWXdZclBEUEppVDJEYlZZcDVFUEE5WUl2TWphLzlnSmo5WlBOQzZydUZTcHM1ZVVUL2U3TmF6OW0yYzZVOTF5emJIL3NkZXFlcFVLYm45anp0MnUvOXF6Ni9jcHUrMWJmMHRidi9KTkd2bjhZKzdodTFWZjluYmRQOHNhSk51Q2VibmZZQ3U2cXNJc0t4MTMyWll4M0FHUDhaaTNMTStlVXgydmRmaittdEJwUzk3ZmJ3Smlkb1lNMWVlSTcycEMzV2VyZmhITnlGb2V1NjF5ZzdRZXAwSjgreTdxRW9JMzE5ejdHTmJyUGNhZ3lxeFJ3WGFHUTkyb21zZjFHMzUxVmJta0VhdEs0Q3ZDODlOSzBhTytHVkxEYmZaUFVkV3VLdnQ5RkU0eDFIVnUzMzlOMUNMaCtRNUlLTGE1SldoZXhYRGJKODVKTUhiNDR4YjVWTU9GdEZoQU1Qc1crekZwbmZWdFVrdy9VNURRN2wyVUpuQnh5ejdMSWU2M3Rub2MyRXp3OHByMmYyZW44b2piUXRQcnY5bHJxTzdkNkw3MnN5MWJBZFgxTFVmMGs5UzFNZmIreXJFdGRKK3ZkWVFXNDdyVlVnTzFMa2h6VGNTZFc1YnVsNnY5OFN0c0gybkVYdjcvNlhzL2xmZXBheHpLTCtLNm96dGRUMm05aXgvNWVjZXNZOWIxL1hKZjd4UXFmcm51Y0taYjZscmwraXorNVMrVjFQYXB2ZFN2SWZPckpndW9aNk81SmFvS3AramJ1aGxQczdDNTFWcmoxdzVJOGE1Y0o3ZWJVaEZ3NHllbnR4Qmg5dHJrdS9WMTk5bDBaQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSTdDa2c0TnJKUVlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlEQTFBSmpoQ0JVR3dWY2ozZWtwaHpNYzYwa0wwdHkrZkdhTzZpbVRSbU1kdEVrRlVKZGd4YkhYajZRcEFZZWYySHNpdWRjWHdXZHZxNFpxSGZsQ2JkYmc5QXE2UHBMSTI1alNHalViZ0hYRlVCZmd5Q1daVGwvR3g1VmcwYjdMSFYrM25iQ2NOOGFvRlhIYzZ4QjdOZHNCdmErdFFrWUcyTWlnQnBVY3BjVkRwN3ZjN3dYV2FhdXN6V2c5MjZMYk1TT2JUK2hEYXo3NWhLMWFSbWFVb0U3OWZkUkExU25XQlkxZVVBTmdIN0lCRHRVZytacTBQR1hKNmk3YTVWWGFZTk82bjV5V1plUHRTR2Y3NTZ3Z1VOKys3YzNhMUhuNnJLRUlkYTFvQVpwanozNXl6M2IrKzQrcDBBRklsWklkdC83bmo3YjdGTkd3SFVmTldVSXpDNHdWai9aN0Z2c3YyYjkzbFUvdzBmNlY3RlNKZnNHTlN6alR2NTFrdCthOE5pdCt2M0tmc2ZzeG0yQTU3TDBiZTdXMWdwMy9jMDlnaS9HT2gvZDArMHRXZjFxOVh4MnY3R3dKNnBuakhjQVkveG1yVXVZelg2SGFaMStQeVk2SFVlcmRyZiswRjlzKzF0L2ZNYXRtRFJ3UnFoZFZxdkoveXBncjgvNGszcFhkMlNTei9mZi9GS1VIT3Z2Zll4cmRGK1FJV0dSZmJmWnRkeVVrOHAyYll2MXh4TTRMRW1GbGk5eitPMDgrbjdIRSsxWDAxalhzWFc3eDF2MWdPdUhKemwxZ2NHQVcyZGpQU3M5S3NrRCtwMmVDeW4xeDBuKzU0Wk9wbENUY3I2bG5meWk4S3Nmc042RGYzQWhSK0s4R3gxeXo3TEllNjNkK0s3ZS9nWmVwLzNIenpVVGx0Mm82WGY5NkFIV1Ywdnl0aVQxYm1rWmx3cGtyUW5ZcnIyTWpkdWpUUWROWk51M3o3UCticXBQc1R5V2VibEMrL3hjRTRiM1djNU1jdXNsK0wzcDAvYXB5MVFBY1FYZEhqLzFodmFvLzUrYUNlRC92TDNXMVB1Y01jT3UrOTQvcnNQOTRwVGZIdTMxdlZmMXVkd2t5VE9hOXhSWG1zUDVWTS9mTlpuWkdlMjI2amZueFcwYjVyRDU3MitpZnJkUGFvT214engzWjJuL2tPODRoZjdQSW13ZEFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUTJVcURQQjRZYkNXV25DUkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkRvTFRCR0NFSnRYTUIxNzBOd25vSlREK2E1YkRNSTZ1bnRNUnV2MWQxcm1pSnN1SHNycGk5UjNzK2JhRUR3VjVJY2srU3M2WGRqTGx1NGJqTlE3STFKRHBsd2F6VmdxVUtHWGo5U0tITGZBVlMxaTdzRlc0NFJVRFFoMzlKVlBVYkE0L2FkcXNFdkZVWi85NEY3V29Na2J0WU9QaHRZbGVJZEJDcVEvY1FrajIzQ3JHcUEycUtXcnlXNVU1SlhqblNkV2RSK1RMbmQreWQ1M0FRYk9MY2R5RldEaWVlOTFOLzhhM3VHQ08zWDFnb0F2cys4ZDJhZjdWVUF3cjJUUEhMekkrSUFBQ0FBU1VSQlZIckJmMmU3TmJHc0hqeUhvSU1odi8zYjI3M3BBZGRsVWNFNU5jSEpWVWM4eDRmZUh5L0xiOGwrSkdQYy80elJEN0FPQTU5SFBQVlV0VVlDWS94OVRNMVJFNmo4ZmhPZTh1Um1RcFVhM0w0cFM5K2dobVh5cVdEcjMydjdjY2FhcUdtMy9WdjErNVdEanRtaGJZRHh2UTVhY2M3L1huK1BEMjBtelhyaUhQNDJ4K2cvR3FzUGVobnY2ZXJiNjFzMUUrbjlaWkk2WDVaeEdjTi9qTitzVGJpblc0ZmZqMlU4aDNkcjAzZVRWTWh5UGVkdExkVkhWdTlIWmwxV0pYaHMxdjJaNTNvWFMxS0JadldlcGM5eXgzWlN1ajVsbDZYTVdIL3ZZMXlqKzVvTUNZdnN1ODB1NWVZeGtVZVg5bGgzWElGbDdoZXJDVTdyWHJ2ZXY2enpNdFoxYk4zdThlcis0dFVyZU9DWExaQzRDT2NkeXRqM3NGV2cvVDJhUU5vM2JmaTcxcG9ndE40bFZjajM2U01Ib3ZZOU5sdmxodHl6TFBKZWE2LzlydC9BNDlvK25RcWxyMjlHRGxvdTNieVhydmMxRlpCdEdVK2dKdHlvUHI5djdLaXl2ditvZnA3YjlkaFUxZm5mVitCNlV2dGQ3N3Y3THV2d1ROZDMzL2NyVitkT3ZVc1plOUxsdm0ydFB1U2F3S0MrbTYxdkZ5dU1ma2hvY04vN3gzVzRYeHdTZnJ6WDhhdmo4OXZ0SkpzNzMrSDhmUE5ONngvTjhadnIrdTZocm5sMW5teGZxdituSnBtcmUrUjVMalU1V3QyWHZHTGdPZHVselk5b3J0MzF1OXhuR2VPYmlqN2JWWVlBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFKTEx5RGdldWtQa1FZU0lFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUVdIbUJNVUlRQ2tIQTlYaW53andHODJ3TnpxbEJPZk1PK2FpQnB6VVk3YlFWR0R3eTlLaGVMY2taSTRmMmJXL1RBeVlLQ0IyNjMzM0wxM3VSazVLYzByZUNEdVZlMGdhR2ZycERtZDFXSFJJYUplQjZJSDQ3WVBEWGtueDllRlUvck9Id05vVGx5Z1Bxck4vV1V6ZmdHamVBYU5LaVYybURjNjR6NlZaMnIveFpTZXI0ZjJrQjIxNmxUZjVLT3lpOVF1WEhYRDdlaEV6ZklNbm54NngweHJxdW1PVHR6WURubXRoaXpPWFk5bDVpekRySHFLdEM3R29nNkszSHFHeGdIUldjVlVHUkZZSTFqMlhJYi8vMjlnbTQvb0ZHUFVmV2ZkbjVSang0TmJqeTZHYnc2WkQ3dkdVNng3ZG9ha0R0azVMOHdRaGhQbVAwQTZ6RHdPY1JUenRWclpIQWxkcDcrV1g0amR2Sk91WjFZQlVQV2QrZ2hrWHZheDIzQ2wrcFo4UVB6ZWs1Y2RYdlYyWTlaaFVnVkFFMWkzajIyOW5HYWtjRnp3KzUvNWgxdjJ1OVpRcTRYdVo3dW1VTlF4L3JmSEZQTjl0ZnpVV1R2SFNpQ1NobmE4Rm1yWFYyK3p4MlRqTTVWdlg3UERmSkhUb1F2Q3BKOVlWOHEwTVpxLzZId0pCQXRBckhybnZnbWt4bFZaZXg3aGZuOFo1MkwrUExKSGxIa3VwclhLYWxna2J2MlU1U095UjhiWm4yU1Z2MkZxalEwdisxSkNHQTgrNzdYZlI1TWRaMWJCMzc3ZXE4ZkZoN1hvN1psenpGTWEvKzZacTR0Q2IyWHRaclprMW1XdUdOTlpucHZMOFgycys4dmlXNlg1SVhyUGc5eVZqblZYMC9VK2Y3TXA1SDZ4Wnd2WFhNNmx1Nm1yaG5sb25wNm5tbkFrYnIrY1V5cnNENzJ1djlXZTJ4cUd0V3ZWZXQrNU0reTI4a2VWbWZnbk1zTTNUQ292cnRPWEpCMzBuTWthbnpwcFl0M0hxdkhmaHNrcHJFL2IzdE80Uy9iWDRQdjlwOEExRUJ4d2N0ZmU4ZmwrRitzYTY1bDJyZWZkZC9mN3Y5em1xVzYyK1oxTEY5UmhNUWZyZURnRHI4ZS8wZDNUNUorVzlmcW8wVnREelBDVGZyMjZmNkhyTGVLZTIyVkg5bmZmZDk1dzc3TjlhcTFXZFMvZEkxK2NhVWsvQlcvOGliQjN4M2ZaZU9rKzZONWFNZUFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlMTDJBZ091bFAwUWFTSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRR0RsQmNZSVFTZ0VBZGZqblFyekhEaGRnOVVxZk9XKzdZZmY0KzNGZVd1cVFmSDFzZmZUbWhEamIweTVvU1dvdS9yM2Y3MGRlSGZJUk8xNVpwSVRKLzVRZktLbTcxdHREVUQ0MzBuK3h4dzJYaC9aMTBEWXB3d1lJRGtrTkVyQTlmQ0QvSC9iQVIxakJseFhxNjZkNU5WSkx0MmppVFdBcEFZdFR6bUlvMGV6TnE1SURZQTZxZzNndmVvYzluN1RRaGFHa3RiZlZ2MzlWaURkbUVzTm9LclFwSFBIckhUR3VpN2NEdUM2NVl6cno3SmFCYVZYR1BoZWc5Wm1xV1BxZFg2Ky9kMWVSQWpvYTlxQmMzODM0MER6c1N5Ry9QWnZiNE9BNng5b1ZBQkEzWXVkTU5ZQmF1c1o2MTU1a2VmNEZrbUZTRlhReUl0R2ZJNGFveDlnR1FZK2ozemFxSTdBandoY3ZwMUFvVUxjS2tCamtjcy9KWGxzTzFpOWduNDJkZWtiMUxBSXJ3cjFyRERWQ21TcVVJcDVQeCt1K3YxS2wyTldmWEJISkhsaWt1dDFLVGpDdWhWNFZFSEY5VHY5aVJIcTYxTEZzZ1ZjTC9zOTNUS0U0VzFkeTUrZDVKKzdIT3g5MW5WUE56dmtHSDh6czIvTm1oVkdWb0dKRmREN3ZDUVg2a0JTejRmVnQycnBKM0NGSnN6OXJVa3UxNk40aFVsVklObzdlNVJkbGlKajNTL084ejN0Ym5ZVlZIVzc5djFWVGNDenlPWGRTUjdaM0dkVlA5d3lobXN1MG1ZVHRsMzNVRFhaOHJ5Zmkrcyt1MzQvVGs3eTk1c0F2VzBmeDdxT3JYTy9YVjBqNnozTS9SZndETGpmNlZqbjdZdWJiMjRlMDRUZHp2dWR4WkEvaytyenF0K2NDbzFkNUc5TzlZSFhkeHRUQnlVT3NWTDJSd1hXTmVDNjYzR3V2L21IZEMxay9aa0Y2dHZDZWw5K3lXYnl3THIrOTFrK2srU0dDK2k3NjlyV216ZDluRFhoVTk4OGdicG5yMjh5TGY4aFVMOXgxY2R3OXhWSHFYdU16N1hoKy9XZTRUMXQrUFhXYnRWM2xoV0UzUFg3dGdxU3JuY1kxV2U1dGZ4Q0V4cjkwejI4Nmg3MkVqM0tiUy9TOVZ1ZlgwenlwaEcydTlXR001SWMzMTV6dHY2LytxNjZKbHF2ZTVSeW50ZFMvVHJITmQ5UC9PTUJHNXpuTjdhN05hWE9uZm9kZk5hSTN6QnMzMDU5KzFYdjJQb3NRdi83cUNsRGdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdNREdDUFI5SWJVeFFIYVVBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBSUhCQW1PRUlGUWpCRndQUGhRL3JHQVJBNmVuSEN3OVJTRGJlTnJqMTFRREpFNXFCM3lQWC9zUGFueERNekR5MkIwREZxYmExaUxxclEvd0t3aTlCZzVNdlh5bENXdzRwaGtJZTFiUERRMEpqUkp3M1JOOVc3R3BBcTVyRXorYjVQbEpyajlqTTJzZ1VRMzByM05YME1PTWFITllyWUt1cjlzRXlqMDBTUTBLUE4rSTI2enJ4NSsxUVdxZkdySGVUYWlxM29PWDNkMUczdGtLeUgzNnlIVjJxVzZzKytxdGJVNTVqZXV5WDdPc2U3RjJjbythb09KYXN4VG91VTRGbWp5aERZb1lLeFN1YTFPRy9QWnYzNWFBNi8vUU9DeEpUUlF3OW9RRTlidjh1SzRIZUkvMUw5VmVzeXJRWng1QkgzV3UxM1h5dENRVmtscURqTWRjeHJoZXJYTlF6cGpXNmxwOWdicWZyQWx3L2xzejZjVHRtM3UvaTg5cGx6N2JCbnBWRU9yWkUxd0g1clFibzI1bXJLQ3ZzUnBWZy9lL2xlUWpUZGpBQjVPOEs4bmZKUGxvKy8rUHRaMCs5YXo2L1VxZmZhNHlsMm44Nzl3RzhFMzVlLzNYU1I3ZmhzNHNhaEsvTWNKNngrNkRYb1Y3dXVvRHI4bDVwbjV1MlRxSHQ2N2xGWVJlMTRxeCs0dmMwODErdFJqamIyYjJyVmx6aU1DaSszYUd0SDBaeWxhZjI2UGE4S1UrN1hsaGtyc3NhUEs0UHUzZFdXYXMrOFd4ZnlPSDdGdmQzMVJZMlQzYTU1SXgrN2YzYWxmOWZ2MTUyOCtxMzN2STBWdWZzdlhlOWlidGhObGp2MmZacmxSaGZVOUs4cEtKQXRKVzRZaU1kUjNibEg2N2VpOXhvNmJmNUU3dHRiSnYrR25mYzZQZURWY1lZdDN2djNrSitnTDY3a2VWcTN1SUs3Y2hvUFZjM1NmY3N1djJ0L3JBSzdqUTcwMVh2Y1d2TCtENkI4ZmdObTB3KytLUHlPSmI4TlIyb3RZS3FlMGF0RHRsNjFmaEdhY21qbnR1TzVGM0g0djZicVZDdk4vZnAvQ2FscWw3cW5yUFdwTTRXRlpEb0U5L1VOMnoxTi9PME9YM200bHVUOWsyVVduZFU1N1lWRnFoOGZPZUFMZnVLKy9WNFhtbzNtSFcrdlcrWWg3OUJidFpWd2o3SHpmM3d2WDl5MWp2UytvKy84ejJlNzgreDFmb2Z4ODFaUWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRMkJnQkFkY2JjNmp0S0FFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JKWkdZR3V3OUIyVFhDOUoxNEdBOWFGeUJiM1VRTFJYTktFeW4xK2FQWnUrSVpkdEE2aHVPdUdtS3RqcTZEYm9ic0xOTEx6cStsQzlCajVOYVZrZjJCODNjTURaa05Bb0FkZkRUN09wdzE5cjBINkZ5VDk2bnpETE9vOXFnTW5EazN4NitDNnBZVUtCQ3lmNWxUYUU5emVha0k3RE8yNnJqdlVIbWdEV0dnUlpBUXRUaEZOMWJKTFZDU3lsd05iZjJpMlQzS3daekh5Tm5vUHA2bS91NDIxdzRNdmIrOHV2TCtVZWE5U21DV3dGcDlROVFvWDcvTXhBZ00rMWs2MjhvdzFDK2RzVkQwTVp5S0U0Z2FVWHFNRDdJOXEvL3dwUnVrb1R3SFdKZ2EydVFLUUtTSDVqRy9oZkV6QXRhaUtIZ2J1aU9JR2xFZGo2dmE1QXlPcGI2aHQ0dmZYMytjb2tMMjJDaS94T0w4MGhIdHlRN1gwRTlleHl4WjdQTFZzTnFkRDdPai9lbnVSTlRjQmVCVFI2ZmhsOG1FYXJZRjRCMS9WdXBDWTZxRWtQNnZmOHQ5cVFxZEYyWk0wck9yZTl4M3JibXUvbjFMdFgvVEFWc3RrblZFNHcydFJIWjFqOUZWeFZFM05XSDNjOWkveHkrL3RWN3pINkxsdjliL1VzVXU5MHEyL0NzMGhmemMwb3QzVWVWci92TFpMY29KbjQ5U2Q2N1BxWG13blUvMTlUL3JYdHMzQk5GbFQzM2hZQ1F3UnFVckthZ0xQNmJPc2FlZlVtckw5Q2VNZFl0dTd6Nm42L2ZtZnJ2NnRmZCt5SkNjZG82eGgxVlA5WC9YM1hNL1ZSSXp3dmxWOEZyMVpRb2VlbDJZL1FyeWQ1MmV5clczTWtnZithcE41THpySmNwN25tMURjcjh3NUFuYVZ0ODFyblJVbHFBcTVQdEdINTlSM1V5ZlBhK0F6YnFlOUNsdjN2NkpwTi8rVmJCMHl1dVFvaDNqTWNxbEZYcVg2Lyt1YXcrdnlHTFBXOGRHbzdBVVNmWit3aDI5NmtzbDlxbjNNLzFIR242MW40YVVtTzcxaHVhL1dhRkthK2o2NXJmdDNUSFpya1Bra2Vzb0RyZXAxcjkyLzZjbXF5Z0s2VEpGWU9TZDB6MUxmYWgvUzBHRkpzak85dmQyNi9KbFo2VmZ1NzByVnRuMm43WSt0M3lVS0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDdXdnSXVIWmFFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ01DaUJlcWovd3ByK3ZsOUJzUi9yUTFqK3VLR2g3RlZlRTU5OUg3RGlRNWFoUXNjMDRaalRMU0pwYXIya2tsZTNBNUNuYUpoTmNpcUJxSU1HWGdxNEhxS0l6TjduVk1IWEc5dlNRM2tyZU5kQTFxMmxocGNVeUhIQnQzUGZzeVdhYzBLWXFqaitwTk5hUFZWOTJqWXY3VUJWVjlOVXRkZ0N3RUMvUVIrTE1tUEgzQS9XVFhYdmVUZkova1hZWEQ5b0pWYW1FQ0ZwOVN6d0M4aytVOEh0T0xEYlZpVTgzeGhoOHVHQ1l3dVVOLzQxZlByaFdiNHJkdmFlRjBMS2d5MUJ1NTduaGo5a0tpUXdLNEM5WHRkOTZVVmNyYjkyWDdueXYvUWhKWjhLa21GN24yTDVVWUoxUGxSNThsQjUwaWhiSjBuMzlSZnNCTG55TmdCMTNYOGE1TFA5eVo1WHpzaDJoZDIrVTJ2L3VjL1hBbWhIMjFrVGJKWm9mNFBtSFBiejJuREtDdUl4dEpmb081Tm45RDhqdDIzWnhVVkRuWHZnZTlOZW01YXNaNENXLzNjOVR3eXkyK1kvcmVlMElydEs3RFYvMXYvWFVIN0Y5aXg5bFovMkxmYjUrQWg3MllkQ2dKZEJiYStkNm5yNUN6OXQxWC8xcld5QWdZcitMOXIwR0RYTnE3QytsdU85VzUxci9lcVcvdXg5WDYxbnBmNDlUKzZBcTc3MncwcDJTWGd1a0wwNjlsdzZFU29ROXE3cUxJMUlmaUQyL2U2Mjl0UTMxN1U1Q2wxUDdEb3BlNC9qa3p5K1VVMzVJRHRQNko1L25wNHp6YldQVldGT0wrbVovbDFMbmFuSk04YnVJTmIzeFVlM2t4Mit2eG1vb2JyRDZ4UDhkMEZobno3ZDFnN2NleEI5eVk3dDF6OS8zVzlyMzY5V242cENkbCtmZnV1Yjk3SHFlNDdiOTllTzRkcysyck52ZTRaTTl5bkRkbkdibVdmbE9SK0kvWWoxYVFSOVJ0VDMwajNXUjZkNUgrTjJKNCtiVkNHQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ1N5MGc0SHFwRDQvR0VTQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUNCOHdnYzBReG9PTE1OUXhtVDU3dE5pUGh4U1U0ZnM5SVZxT3V5ellEODB5WUlEWDltRXlaMjRnaEJZZ0t1RjNzU0RSbmtzdGlXMnpvQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkF2TVE2Qk53WFJOUWZEekoyNU84SThtN2tueTZZNkQ1R0dGSzgvRFp2bzJ0U1RZcmJQck5jdzdGcVhjZmQwaHk3cngzZWcyM1YyRnlkZnd1M1dQZjZoeW9TVnpmMzZPc0lnUUlFQ0JBZ0FBQkF1TUpDTGdlejdKTFRWMENyaS9hVGc1MDB5NGJXUEYxbjVQa1VVaytzYzkrSE4wR0xwOXZ3ZnU2Q3BQM1hHYmdzM2YxVlZRSWJFM1lidmxSZ1N1MmZUcjEzV0dmNVExSmp0MW1lOEdtVCtqM2tqeW0rVS85Yjh0NEFpYzMzMjgrZEVCMTEyM0RvUStac1k0NnRuZE84bzg3MXEvalhkK296dlBhOVo1bTRyemJKZm5rakcwL2FMV2FqTGUraWIzTlFTdU85Tzg3LzA3R3FQYm1TVjZWcEUrK3l1ZWFjK0ZHemZIOTZCZ05VUWNCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdUV1ZhQlBCK3k2V3RndkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0N3Q2dMVnQzOVNrbE5HYkd5Rlc5ODNTUTIrK2Q2STlhNUtWV09IWEg4Z3lWRkp2akFDZ0lEckVSQUhWQ0hnZWdDZW9nUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUTJRS0RDaHg2eXgzNVczM3NGV2I5bFc1QjFoY3A4ZlFTWG15VjViYzlBbGxrMi8rVzI3WmRMMGpld2FmdDIvcldkWlBPVjdmOTVRcEkvbWFVaEk2MVQyM3Y2U0hWdGVqWDFucXBDNXg3V0UrTFpUZEJUSFE5aDR6MEJGU05BZ0FBQkFnUUlqQ0FnNEhvRXhCNVZkQW00cnVxZmxlVHVQYll6UnBGL2FwOWovNllOOHYxWWtxYzBFelRkWW96S3Q5VlJFMEE5TmNtcFNTbzg5S0JsNlBQSVFmWFA4dS9mYm9LamoyekNuOTg1eThvTFhLY21lWHJCZ08zZnV6MDJBNnBZMjZJWGFDYnRlbUViVXQxMUo4OXUvcVlxcUwwbS85cTVISmJreVVsdTNiVlM2KzhxVU4vQi9tcVMxdy93NmZLdGJvWDAzNnY1dHZjYnUyeXZTejBEbXZ2RG9rOW9nNzIvT1VabDIrbzRmN3VQajU4NHJIdHJrcnl6Um16L2p5VjVSWkliOTZ6elFTTi9zOTJ6R1lvUklFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQmd1UVVFWEMvMzhkRTZBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNDd20wQjliSDFHTzloaERLRUh0Z09GTmpIY2VzdnZra2xlbk9RbUEwSEgvcmhld1BYQUF6S3d1SURyZ1lDS0V5QkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVGaHpnZXBmLzhNa24wM3l0cWFQdWZvVTM1UGtJMG1xdjNpcVpVamY4VmFiS25Ebm8wMUEyYnVTVkdCTUJaWjlNTWsvSi9sT3U5SVJTYzVNY3ZFQk8xSkIzOGNsT1gxYkhaZEs4dW9rMXhsUTc2eEY2empjTU1uN1p5MWd2UU1GTHAva2pVbCs3c0Exejd0Q2haM2ZLTWw3ZTVSVmhBQUJBZ1FJRUNCQVlCd0JBZGZqT0hhdHBXdkE5ZTgwRXc3OWFkZU5kRnkvUXFYcmVmQWQ3WC8vWFpJdkpkbnRHN0o2cnFxZzJBdDEzTVp1cTFlQTlvUGJrT0Rkd21EMzI4VEYydWZMbTQ3UWpqNVYxRE55QlJDUEhSemJweTE3bGJsSWtwYzBJZHpIOUt6ME0rMXo5Q2Q2bHQrRVluZHFub21mMTNGSFovMnU4T3BOUDh3VFIvdzJ0R016MTJiMWYwenl5KzBFYmtOMnF2NmVUbXY2KzM1dG4wb2VtYVFtd2F2US9yMldDeVo1V3BMamh6VG1nTEpmUzFMblprMHdOK1czd05XZlZ3SDZWNXBvWCs3UzQrL3JvS2JjcHYwK3VFKzJ5Z2VhQ1F5UFN2S0ZnemJpM3drUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlMRHBBbjA2WVRmZHpQNFRJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUlGbEVMaEdramNudWZUQXhqd2t5Ujl0QzZzWVdOMUtGNjhCVU05cVFpNXUyM012ZGd2cDZGblZENHNOQ1NsNVVKSlRkalRnTDVwQkczY2QycWdOS2kvZ2VvTU90bDBsUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnMEVQZ2tDYVU2OThXME1mK1UwbitPc25QSE5EbUN0YjVlQnRpWFVIV0ZXaGRvU3dWeUxKZjZNNzJhbS9WQnZuVXZ2Wlo5cHBrczhMZEtuRHJmSDBxN1ZEbVZVbU9UZkt0RG1Xc2VyREFDVW4rNU9EVmRsM2pSVzNnMHF6bllNL05LRWFBQUFFQ0JBZ1FJTENIZ0lEcnhad2FYUU91YjVia3RVbkdHQWRlZ2RJVllqMUxrUFZlT2hkb0E3ZnZQb0R2TlVuK29IMUczWnBZcVU5MWh6ZkJ0YTlMY3VVK2hRZVVxY0RZK3E3c2pBRjF6S1BvOWR2dkN2dUdrVmNJNzcwbkRzaWRoOE9VMjdoYU85SFpKV2ZjU05mdkN1dnYvajhuZWF5ZzZ4bUZ6N3ZhbVAxQlA5dUV2cjhoeVJWM2JLYU82MzNiNE9wWkFxV252SFpWKys2VzVOTzl4Ym9WUExTZDlPK2UzWW9kdVBZems1ellvZC95d0FxVERKMW9iNHJBN1ZuYWJSMENCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWlzbk1BWUx6WlhicWMxbUFBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlySW5BblpNOGQ4QytQRExKWTBiK0dIeEFjNWFpNkVXU1BDSEo3L1JvelY0aEhUMnErbUVSQWRkRDlJYVhGWEE5M0ZBTkJBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBaU1MM0NKTnVqczJra3FUT2Nma3B5VjVMMUozcGZrZzBtK09HS29jd1ZFbjlZampIcS9mdk1MdGdGQXg0L1A4eU0xM2pISkN5ZmV4aVpXWDVPR3Zyd0plTHBoajUydmMvYm1iU0JkaitLS0VDQkFnQUFCQWdRSURCUVFjRDBRc0dmeHJnSFhGYVQ2OWlaVStySWR0bGVUeU5UejRCdVR2TFY5UnZ6Y2lOK0c5Zm1PcWNLMUs2VDMyVTFvOGo5MzJKZURWajBpeVpsSkxuN1FpaVArK3lwOFIxUzVBVTlwQTJMNzdQcTNtM0RzSTVPOHMwL2hEU3B6NFNhQSt2U21MK2FXTSs3emtPOEtyNURrWVcxNDhkU1RoTTI0T3l1eDJrT1RuRHhpUzNmMmpkWDE5azVKWHR3eERIN3NhMWUxNHdGdEg5dVFpUVA2VU5YMXBpWmplSDZTUy9lcFlFZVpzOXRBOTNOR3FHdDdGZlgzOTRjOTYzeEY4N3Q2WEpKdjlpeXZHQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkRaS1FNRDFSaDF1TzB1QUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNheVpRNFEvUGFBY3ZkTjAxNGRaN2k1Mi9DZjY0VjVMSGR3anJlR1k3TUtnR0RJeTU5QmtZdHJYOUJ5VTVaVWRqL2lMSlhjZHM0SnJYdFFvRDA5YjhFTmc5QWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdSMkVhaHhBSmRNOG05TmlNM1g1eUJVMnp0cGx6N24vVGI5cDBudWMwQ1EybUZ0eVBGVko5cUhkeldoWE1jaytlcEU5Vzk2dFJWdS9mb21NT3BDUFNEZW5lUVdJd2ZjOVdpR0lnUUlFQ0JBZ0FDQmpSUVFjTDJZdzk0MTRIcjd4RWE3dGZqTFNkN1NUbjcwbmpiWWV1cm53MW5EazJ0U20rY2wrZU1rMWJhcFFsY3JXUFZGY3dxNVhwV0plaW9NdWNMTkw5ZnpOSy9ROEZzTGM1MUpyNzR2ckREeGc1YXh2dE04Tk1rSmJaanhUeHkwMFEzLzkrOGwrZFcyejJJc2lycitQU0hKZlpQOGF4dDYvTXFlbGQ4NXlYTjdsdDFlclBwV3FxNlBqRkRYa0NycTNLd0E2WHNPcUtTdXNYWHRlZG1BT25ZcmVvMG10UC9OUFFPNDZ6Z2YxZlJmVmYraWhRQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1JtRUJCd1BRT1NWUWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQXdCSUxITjZHUDF5NVF4c2ZtT1J4RXc0ZTZ0Q1VwVjIxM3FIVWdMNFhKRG5rZ0ZhZW5lVG9KT2RNc0RjQ3JpZEE3VkNsZ09zT1dGWWxRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRR0N0QldyU3pZY21lZmdNZTlsbFVzZ2prbFNBMXNWbnFMZkxLaFZtZE5za1ozUXBaTjFPQXR2RG5Ub1ZiRmQrUVB1K3FrOVpaUWdRSUVDQUFBRUNCUG9MQ0xqdWJ6ZWtaTmVBNjdyZnJwRG8zMHp5MlRhZzg3Vk5hT3M3a256eWdNbUVoclR6b0xMWGJBT1VkejdEVlRqcGE1SThLY21iNXRpK2VZVmNQNmM1RHZlWTQzNGRkQnoyK3ZkWlE1ZjNLbi9ISkMvc3UvRU5LemZMZDMxZCtrZG01VHQva3Fzbk9USEo3U2ZvVDVtMUhjdTgzbWVhNjlIMWtueDY1RVplckFtUHIyUDZqSUhoMmRYSDlyUWt4L2RzMzcrM2ZYUlBYS0pyVXYxbTNhUzF1VktQL2FyZmp2czEvWTdWbnpmV1VzNTFyTzdXczhLSHRNSGRZN2FwWjFNVUkwQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0F3R29JQ0xoZWplT2tsUVFJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQVlEK0JZNXRCQzZjbE9kOEJURFdRNk81Si9tTGtEOEhYK2VoY0pjbGZKYm5XSGp2NWxTVEhKRGxySW9SWkJzTHN0ZWtISlRsbHh6L1dzYi9yUkcxZHgyb0ZYSy9qVWJWUEJBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBajBGWmdsZ0tkUGVOTnQyZ0N0cW4rczVVVko3clJFUVQ5ajdkZXkxWE5ZT3hIclZYczA3SXROU04rUlNUN1FvNndpQkFnUUlFQ0FBQUVDL1FVRVhQZTNHMUt5YThCMWJhdkNWUDkxeVo1cmFsejZVOXB3M1FwWnJVbUYvbXpPb2RZN2owTjkxL1d5SkpjZmNvRDJLWHQya3FPVG5ETlIvV05WVytkTFRTQjEzWjRWZnJoOVJ2dDh6L0tiVnV3U1NTcDAvdHA3N0hpZi9wR3VodlgzZUhqNy9lTHRrdHdveVpoOUsxM2JzeXpydnlwSmZWUDdyUWthZElFazU0NVFiOS8rbEhlMkV4L1VSQWZMdUZ3a3liMlRQTHJEdVZqOVFrY2wrY0xJT3pUcmQ5VzdiZmF0U2VwKzZhc2p0MGwxQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUVdHc0JBZGRyZlhqdEhBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWhzaUVCOU5GOERoMDdZWjM5cnNOTWRrN3hjdUhYbnMrS2lTZjZvK1lEK2QzZVVyTUR3NDVLYzNybkcyUXVNSFhBOSs1YXRTWUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRXppdFFnVm5WTDM3VFhYQ2UzWWJZZkxNSDNLM2F5VHdQNlZGMlo1RlZDUjhiWVZlWG9vb0s2bnZKREJPeDd0YllWN1R2V3ZxY00wdXg4eHBCZ0FBQkFnUUlFRmhCQVFIWGl6bG9mUUt1RjlQU2c3ZDY2U1NYVFBLeEpOODVlUFc1ckZIdCtkTm1BcDBLK1IxeitVb2JIbnpXbUpWT1ZOZk5rMVN3Yjkvc2dFYzI3WHJFUkcxYjEycWYzUGFEN055L09oZnZzNkJ3K29zbnVVb2J2RjFoNS9XZkNsT3VieUEzWlRtNXNYL29DdXpzRFpPOFBzbUZabWpyMTlydmcwOWJvdXZ1ZnMydWMrN3hNMXlUNnh2Y3VuYTliZ2FETHF0VThIdlZlZVV1aGRwMVYrbTYzMlAzRkNGQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdNQjBBbjFmVWszWElqVVRJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ2ZRUitNc2tiazF4amw4S2ZTbkpza25mM3FWaVo3d3ZVTzVVSzEvakw1c1A3UTF1VEJ6WURQMDZkT0RCY3dMVVRrQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdTV1RXQzNrSmdoNGRaYiszZWRKQzlJY3FVQk8vekZKTGRJOHA0QmRTamFUYURlb1R3aHlYMjdGZnZoMm5kSjhyeWVaUlVqUUlBQUFRSUVDQkRvTG5DNUpOZnZYa3lKZ1FMdlRQS1pnWFVvdnIvQStkc0pkQ3BjZU92N3JpRm05YzFkQlpPL2IwZ2xjeXA3Z2VaWitybEo3dEJ6ZXhYb1dtRzc3KzlaZmxPTDFmbngwaDA3WDBIaGoxbFF1UFZCeDZIQ3J5K1M1RkpKcnRxdVhCT1oxVGVLZFE2dHkvTE1GZmxXdHZwVEhwWGtZUWZBUDdVTjdLNlE2MVZicnA2aytneXZ0MGZEbjVUa2ZpTi9nM3ZCSkU5cmZuT1A3NG4xZ0NTUDYxbFdNUUlFQ0JBZ1FJQUEzUUtJdGdBQUU2SkpSRUZVQVFJRUNCQWdRSUFBQVFJRUNHeTBnSURyalQ3OGRwNEFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFMWt5Z0JwbThQc21GdHUxWEJUamNMc2tuMTJ4ZkY3VTdoeVY1Y2hQUzhPVWtKOHhoSUlxQTYwVWRhZHNsUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQWdmMEVqbWhDOGM1TVV1RklGUjUybjVINnpDdUVySUtnN3RXRC84TkpicFBrUXozS0tqSk1vQUt4VGs5eTB4N1ZWQ2o1a2MzN3JBLzBLS3NJQVFJRUNCQWdRSUFBQVFJRWRncGNOTWx2dDhHeGZZT3VLNUQ4TjFmb203dHJOczlqYjIyZjBmdWNFUzlNVXBNUG5kdW44QWFYdVdLU3R6ZjlJcGROOHQwazkwOVNZY1RmMldBVHU5NU5vTUxHWDUya0puM2J1Ynk3dVFiZHJRbnUvMkMzS3BkdTdjb3pxVytiSzh6Nld0dGFWLzFBUnlYNXdzZ3RQamJKYWMxdndQbDYxRnZoNkNlTzFNZlpZL09LRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQVlMVUZCRnl2OXZIVGVnSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnc0YyZyt2MGYxQVJjbjl6K244OXBBeUMrZ1dsVWdmTzNINy8vKzZpMTdsNlpnT3M1SU5zRUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDUFFTcU9DbW4wcnlrQW1DWHk2ZjVJRko3dEVFWGwvd2dOWjlNOG5EMnhDcCt0K1d4UWhzRHozdjJvTFh0ZUhrWCs5YTBQb0VDQkFnUUlBQUFRSUVDQkRZUTZDZUpXL2Vmajkzc3huRFR2OGh5VW50QkQ2ckZGTDhpUGE1dU0vSjhMMGt0MHp5bWo2Rk43ek1oZHR6cFNadHVtT1NsemZIb1R3dEJMb0lITjMrL1cwRk1uOHR5UWx0U1BNcVhZY08ydWY2N3ZiR1NSNlg1QmVTM0RySnl3NHExUEhmZjdZSjAzNURrZ3FmNzdxYzNRVFcxN0U0cDJ0QjZ4TWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSURBRHdRRVhEc1RDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlEQWVnbGNMTW56azd5MkRYSllwdy9jMSt0SXpiWTNBcTVuYzdJV0FRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDS3luUUlYZlhDWEpUWkpjcXcyb3VVS1M5eVQ1Y0JzZTlUY1RCR3l2cCtiMGUzVnNHOEMwRmNyVVpZc1ZhSDZxTUxBdVpOWWxRSUFBQVFJRUNCQWdRR0JHZ1hxMnJPRFQ2elRmMWQwZ1NRVVRWOEJxL2ZkN20zRGl2MitmTHorU3hQZDJNNkphN2ZzQ3Y1dmszZTEva0JEb0kzQ0JKRTlKY3Zja0Qydi85enBQNEZiNUpvY24rY3pJL1huMTdmVHBTVzdhNHlCOEpja3hUZGovV1QzS0trS0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDcllDQWE2Y0NBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JCWVA0SDY0UDNjOWR1dGpkeWpDeWE1WkpJK1FSRC9rdVRyRzZsbXB3a1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUlGRkNOUVlsWk9Tbk5KajQ5OU9jck1taU9pdFBjb3FRb0FBQVFJRUNCQWdRSUFBQVFJRUNCQllWWUZEazFTZnlsZFhkUWNXM080aC9WSGZUWEpjRzQ2OTROMndlUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0t5MmdJRHIxVDUrV2srQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRV0JhQm1yenphVW1PNzlHZ3M1TWNuZVNjSG1VVklVQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUTJEeUJZNU9jbHVSOFBYYjlnVWxPVGZLOUhtVVZJVUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUlGdEFnS3VuUTRFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUpqQ1Z3c3llbEpidHFqd2pja3FXQ2lyL1lvcXdnQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ01EbUNCeVI1TXdrRisreHk0OUw4dUFrLzk2anJDSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnc0VOQXdMVlRnZ0FCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFZRXlCdzVPOExzbVZlMVQ2d0NTbkp2bGVqN0tLRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJckwvQWtMNm5aeVk1VWJqMStwOGs5cEFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBZ2ZrSkNMaWVuN1V0RVNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1RXUWtEQTlWb2NSanRCZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFSmlmZ0lEcitWbmJFZ0VDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQmdMUVFFWEsvRlliUVRCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFJSDVDUWk0bnArMUxSRWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRTFrSkF3UFZhSEVZN1FZQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JDWW40Q0E2L2xaMnhJQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBWUMwRUJGeXZ4V0cwRXdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUNCK1FrSXVKNmZ0UzBSSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCTlpDUU1EMVdoeEdPMEdBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FtSitBZ092NVdkc1NBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FHQXRCQVJjcjhWaHRCTUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQWdma0pDTGllbjdVdEVTQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdUV1FrREE5Vm9jUmp0QmdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUppZmdJRHIrVm5iRWdFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUJnTFFRRVhLL0ZZYlFUQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBSUg1Q1FpNG5wKzFMUkVnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUUxa0pBd1BWYUhFWTdRWUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQ1luNENBNi9sWjJ4SUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQVlDMEVCRnl2eFdHMEV3UUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FDQitRa0l1SjZmdFMwUklFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQkFnUUlFQ0FBQUVDQk5aQ1FNRDFXaHhHTzBHQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRbUorQWdPdjVXZHNTQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRSUFBQVFJRUNCQWdRR0F0QkFSY3I4Vmh0Qk1FQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFnZmtKQ0xpZW43VXRFU0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnUUlFQ0JBZ0FBQkFnVFdRa0RBOVZvY1JqdEJnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVKaWZnSURyK1ZuYkVnRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVDQUFBRUNCQWdRSUVCZ0xRUUVYSy9GWWJRVEJBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUlINUNRaTRucCsxTFJFZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFQ0JBZ1FJQUFBUUlFMWtKQXdQVmFIRVk3UVlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkFnUUlBQUFRSUVDQkNZbjRDQTYvbFoyeElCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFnQUFCQWdRSUVDQkFZQzBFQkZ5dnhXRzBFd1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQUJBZ1FJRUNCQWdBQ0IrUWtJdUo2ZnRTMFJJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JBZ1FJRUNBQUFFQ0JOWkM0UDhEeFREeDN2U3lvVHdBQUFBQVNVVk9SSzVDWUlJPSIvPjwvc3dpdGNoPjwvZz48L2c+PC9nPjxnIGRhdGEtY2VsbC1pZD0iaG1pIj48Zz48cmVjdCB4PSI0NTMiIHk9Ijk4IiB3aWR0aD0iNjAwIiBoZWlnaHQ9Ijk1IiBmaWxsPSIjZWFmMmY4IiBzdHJva2U9IiMzMzU1NmYiIHN0cm9rZS13aWR0aD0iMiIgcG9pbnRlci1ldmVudHM9ImFsbCIgc3R5bGU9ImZpbGw6IGxpZ2h0LWRhcmsocmdiKDIzNCwgMjQyLCAyNDgpLCByZ2IoMjQsIDMxLCAzNikpOyBzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDUxLCA4NSwgMTExKSwgcmdiKDE0NCwgMTczLCAxOTUpKTsiLz48L2c+PGc+PGc+PHN3aXRjaD48Zm9yZWlnbk9iamVjdCBzdHlsZT0ib3ZlcmZsb3c6IHZpc2libGU7IHRleHQtYWxpZ246IGxlZnQ7IiBwb2ludGVyLWV2ZW50cz0ibm9uZSIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgcmVxdWlyZWRGZWF0dXJlcz0iaHR0cDovL3d3dy53My5vcmcvVFIvU1ZHMTEvZmVhdHVyZSNFeHRlbnNpYmlsaXR5Ij48ZGl2IHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiBzdHlsZT0iZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IHVuc2FmZSBjZW50ZXI7IGp1c3RpZnktY29udGVudDogdW5zYWZlIGNlbnRlcjsgd2lkdGg6IDU3NHB4OyBoZWlnaHQ6IDFweDsgcGFkZGluZy10b3A6IDE0NnB4OyBtYXJnaW4tbGVmdDogNDY2cHg7Ij48ZGl2IHN0eWxlPSJib3gtc2l6aW5nOiBib3JkZXItYm94OyBmb250LXNpemU6IDA7IHRleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICMwMDAwMDA7ICI+PGRpdiBzdHlsZT0iZGlzcGxheTogaW5saW5lLWJsb2NrOyBmb250LXNpemU6IDIwcHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtNaWNyb3NvZnQgWWFIZWkmcXVvdDs7IGNvbG9yOiBsaWdodC1kYXJrKCMwMDAwMDAsICNmZmZmZmYpOyBsaW5lLWhlaWdodDogMS4yOyBwb2ludGVyLWV2ZW50czogYWxsOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3b3JkLXdyYXA6IG5vcm1hbDsgIj5JUEMtMDHvvJpITUkgLyBSdW5TZXJ2aWNlIC8gU3VwZXJ2aXNvcjxiciAvPumFjee9ruW/q+eFp+S4jue7k+aenOe0ouW8le+8m1Jlc3VsdFdyaXRlciDni6znq4vokL3nm5g8L2Rpdj48L2Rpdj48L2Rpdj48L2ZvcmVpZ25PYmplY3Q+PGltYWdlIHg9IjQ2NiIgeT0iMTIyLjUiIHdpZHRoPSI1NzQiIGhlaWdodD0iNTMiIHhsaW5rOmhyZWY9ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFDUGdBQUFEVUNBWUFBQUFMZkE4REFBQUFBWE5TUjBJQXJzNGM2UUFBSUFCSlJFRlVlRjdzblFjWU5rVjVycCtEeXNFdTlrS3hZTU1handxSUNJcUlFRTRNdGhoUll5UjJoYWd4aVVyc0RYdkJpbm84Qnl5eEVSc2lnaElWSmZhQ1lnUEZFaFZSVVVHSUxXY2ZtTldQajkxNXAyNzU5cG5yNHZwLy9tOTJ5ajJ6czd2elB2Tysvd05LSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNreVh3UHliYk1qVk1CRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVRQUV2aG9Fb2lBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lqQWhBbEk0RFBod1ZIVFJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFDSDgwQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFWmd3QVFsOEpqdzRhcG9JaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSVNPQ2pPU0FDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0V5WWdnYytFQjBkTkV3RVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVKZkRRSFJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSR0RDQkNUd21mRGdxR2tpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlJR1A1b0FJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSVRKaUFCRDRUSGh3MVRRUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVFrOE5FY0VBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFSUVKRTVEQVo4S0RvNmFKZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBUSttZ01pSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaU1HRUNFdmhNZUhEVU5CRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkdRd0VkelFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRW9DU0J5d0M0TElEZkEvaXArN05rK1NwTEJFUkFCRVJBQk9aSTRCSUFyZ2hnQ3dBL0IzRGVIRHVoTm91QUNJaUFDSWlBQ0l4SFFBS2Y4ZGlyWmhFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkhZSkFMWEJ2RC9BT3kyMHFsZkF2Z0hBRytRMEdlVGhscDlFUUVSRUFFUmlDQnd5U2J2VTkzemtPS2VOcjBPd0Q4QitGbEVXY29xQWlJZ0FpSWdBaUt3WUFJUytDeDQ4TlYxRVJBQkVSQ0JqU1N3RllBckE5Z1J3T1VBWEI3QS93SndjZGZiTHdBNHcvMzlhd0IrNGpZUmZydVJOT0k2ZFFVQU4yZ01EOXMxUm9uckF0akJuYVQ2RHdBMFNud2V3QTluWnBTZ2dlVndBRGQwS0I0RTRMZzRMTW90QWlJZ0FpSWdBaUt3SVFUNHJyTU5nQnU1ZDhOYkFlQy9NWjBGNEhNQWZnZmd2d0I4cVRGQW5lM2VFLzk3US9xdmJ0UW5zRDJBRHdHNGZrOVZOR0ErSDREbVZQMnhVQTNUSnFEMWVOcmpvOWFKUUdrQzlOcnpDZ0FQN2luNGVBRDNBUENMMGhXclBCRVFBUkVRQVJFUWdjMGpJSUhQNW8ycGVpUUNJaUFDVXlGQVljRmpBUENFU2xlaWFPTDFHWTA5RU1CT0dkZTNsMUt3OFdYM1A5OEY4SjJadVpDL0dvQzlBUHdsZ0xzMkcrYVhUbVJDdDhBMDZyd2R3QWNCbkw2QWpYZStCOTI0TVZ3ZEJPQ3ZWZ3hjUG9SL2NBS1p3d0FjQTJDcXdpajI3YzZOWU9uTlR2RFY5dWt2R3NIWGV4UG5pQzRiaG9CdmJUdTNFZTI5MksxVHc3VG1UN1hjc2hFSFBzSlQ2VkhObXZ5QnhFWlJtUGhvanpGd3RkaFRtam5OKzIrcTk5N3F2YlpmQUkrYXo4SXg1MHRBMTR0bjRmcld4L3hFQVArM2VJMWhCWlo2WDJGdDYrOHNwMHA4RVRZSUM4M0Zkd0dLTFdnc3VqZUFXN3RRRUNrNE9OZmUzd2lHM3dMZ3N6TllnMVA2cUd2eUNmQkF3YXNCY04zclM3OEJzQWVBVCtaWHB4SVdSdUJLQVA0UndOWWQvVDZuT2R6eW9tYnVmVytpVExRZVQzUmcxQ3dSR0pEQTNRRzhBNERQSHZlMHBqMzA4S01rQWlJZ0FpSWdBaUlnQWw0Q0V2aG9nb2lBQ0lpQUNOUWlRSzh4SHdWd3FaNEs2TGI5YnpJcXA2SHVBUm5YVzVkK0JjQzdHeTh1UndMNHhzUzh0dEF6ejE4RGVEeUE2MWtkU2Z5ZHA3anBRdjhsRTk0b1RlemErUnNxdHdYdzhzWllkWnZVUXB6M280TWJiMGx2bTlqOG9NanJPVTR3c2Q0OUNYd3lCbnlnUzMxcjI2OEIzTUVaVndkcXpoK3IrZDhBM3VPcDlKOGJRZWVoaVkyNlRHTjRmaCtBM1FPdW40TmhrSjdUS0pRTUVhSFdmQmFPT1Y4Q2hySm9GaDl6ZW9uWTE0a3lpMVlhV0ZqdDl4VUtUei9qQkoxdkJmRGp3SFlwMitZU29MaitYZ0NlWE9rOXNSVVBQck1KSjhHL0s0bEFTNEFIRHo3aFBHSDZxRHdKd0xPRlRRUWlDZHpIaVF5N0x1TjcxLzRUWEpPMEhrY09zcktMd0FZVFlCZ3Vud0NXWGYrNCsyNzUxUVp6VU5kRVFBUkVRQVJFUUFRS0VKREFwd0JFRlNFQ0lpQUNJdEJKWU80Q245Vk9NWXpWczVxUUJ2d2c1K25Bc2RJMW1yQUpod0I0V01ZSjdOaTI1eHFmWSt1cm5aL2lLQXA3U29yRDZFcjVmczI0L0toMjQ0M3krVjUzUndDdjlSajBKUEFaZVpBQ3FwZkF4NFpFMStiMCtEUFY4QjcwcG5hMGNUcXo3V1h1R2p2VitXS1BZdGtjUHViMGtyVDNpTzd1YXd0ODFrbWUxSVJhK3Z2R09QQ3BDZDhqWlVkZnBiVUVMdVk4OWRDREN0OTNhaVo2dmR6WmVaV3FXWS9LbmhlQld3RDRHSURMR3MzT2ZmYk5pNHBhVzRJQWhUTDBGc25uZVZmaTRSZUtYS2VTdEI1UFpTVFVEaEdZQmdFZXd1SUJ3ajJONXVqOWFocmpwVmFJZ0FpSWdBaUl3T1FKU09BeitTRlNBMFZBQkVSZ3RnUTJTZURURHNJdm5iaG1hSTh0Tk5Md2xQUWpCeFQydEgzZXBBMzRIUUQ4V3hPRzdDWVY3aXE2ZzZkNDVnc1Z5ZzRwY2hzQUwzTW5WMzM1SmZBSm9UbHVucWtLTnFiaXdZZWo4d01BdXpWZTRMNDk3bEIxMWs0REZKOFJJZUc1V0VEdUdqdlYrVExrMERBa3pCRUFlTEsvSzFFTXhyQnVZNldoQlQ1dFAya0laUWpLNzQvVmNkVTdLSUVkQWJ3eDB6TmhUSU5sZ0lxaHRaeThQSXhBa2VGMlJwZmx3V2M1YzZKVVQzZHBRcnVkMEhoKzJyS2p3Sys1c0c5VDhXQ245YmpVcUtzY0VkZ3NBaUhmQlBMZ3MxbGpydDZJZ0FpSWdBaUlRRFVDRXZoVVE2dUNSVUFFUkdEeEJEWlI0Tk1PS3NQVVBIUUFqeTJ0UnhZYWJMWWRhVWJsR3A5SGF2WkZxcjJ4Q3dGMDNZb05PaFBBUGk1VVNzVnFMbFEweFYvMEx2V293QW9sOEFrRU5XSzJxUW8ycGlUdzRmQ01MZHJvbXlJK0ExVFhOYmxyN0ZUbnk1QzNFTmQzYm9aZnNhUFNLWWpCUWpiemEvRmltRFo2TlhpdnZQblVRang2dVh4WHZML3pNbm1KQVZzamdjK0FzR2RVbFNXNFpGZm1FR3B6UnNnWDAxUWVaT0M3WDFkNld2T1BUNTBBQ2EzSEV4Z0VOVUVFSmt6QUYyYXdiZlpVMXJNSlkxVFRSRUFFUkVBRVJFQUVTRUFDSDgwREVSQUJFUkNCV2dRMldlQkRacWM1RHcyblZBSklMeEJQQi9BUGxjb1BMVGJYK0J4YVQ4MTgyd1A0RUlEclIxVENzR3puQWJoNkk2Q0pNWmg5RThCZUFFNlBxQ3NsSzRVOS93TGc0TWoyU2VDVFFudllhNllxMkppYXdHZnNzRXRkczRMZlZnd0JTRzlyb1NsM2paM3FmQW50ZjRsOEZEaVNlMWVhUWppM01RVStaUElIQUFjQ1lEdW1HdGF1eER4WVlobGNjeDRMNEFVamRGNENueEdnejZUS1B3UHdZUUJYOEt6TERDUDR1NW4wUjgwY244RFZuUGVlRzNVMDVTem4xZkhra1p1cDlYamtBVkQxSWpBREFwY0I4QzYzWDlUVjNDOEIrSE41MzV6QlNLcUpJaUFDSWlBQ0lqQUJBaEw0VEdBUTFBUVJFQUVSMkZBQ215N3c0YkRWRW5QUUM4RmJBTndsY1c3UW1FZkR5NmNBL0tLampQOEpZS2ZtdERmRE9qRVd1Qy9sR3A4VHUxRHNNbXNUcGEzb3R5NkVDNDNCMzJuRU03OWZhUUhMWUt4MG5neTlaVURMNkhIcElRQlladWxFVDA3LzdFTEZiWkZRdUFRK0NkQUd2bVNxZ28ycENYd29WTmdYd0RFRGo0K3ZPb1lCL0NnQWhpZ0pUYmxyN0ZUblMyai9jL05kSHNBSDNUTnR2U3dhaisvb3ZQdmsxcE56L2RnQ0g3YWQ3d1gzQnZET25JN28yc2tSdUljTENSanpQdkJ6dDA1OW93a3Qrcmsxa1FYdko3Ni9YeFBBN1FCY3hkTmpDWHdtTngwbTFhQWJBRGh5TFdUY3VVNmNUazhzTmQ2Ukp3VkFqU2xLd09mMWdzODEvajYyWUV6cmNkRWhWMkVpc0xFRXVQLzJuQTZQWkc5M29YVi90TEU5VjhkRVFBUkVRQVJFUUFTS0VwREFweWhPRlNZQ0lpQUNJckJDWUV5QkR6ZjREbWxDRnB3YU1DS3QyT1cyQUc0VjZRMkZ4UjhQZ0J0NlhVS2FnT292a29XaW02T2FjRkszanJ6NHBNWVFRM0VLVDh6K01PS1UvbGJOS2FLYnV6N2N6eGwxVnF2T05UNUhkcU5vZHI3blBCN0FvVWFwRExsR2p4dmZOL0pkRE1EZk5GNTlYbTNNRXdvUDd1bE9aNVhvRUQwSTBVajlHQUIzelN4UUFwOU1nQU5jUGxYQnh0UUVQaHdLQ2p2MkIwQ2o0UlFTUllCUGlXeEk3aG83MWZrU2lTRTVPOWZFbzNzODAwN0Z5NU52akdMZVYxcElOMnU4MHUzYVBPL3ZFUG5Pd25jRFh2T3RaTnE2Y0VvRStON0tOYkRQUzhwcVcrbVZrRjUrT0JkL0hORUp2bjlRcVBHQXhqUGgzNjRKZmlUd2lRQzU0S3ljbi9SS1NwSGh6eVRzV2ZCTVNPODY1dysvamZmdUtZSmhLTithWG55Uks3VWVGOEdvUWtSZ1VRUzREN2UxNi9HdkdzL2RaeStxOStxc0NJaUFDSWlBQ0loQU5nRUpmTElScWdBUkVBRVJFSUVlQW1NS2ZIN3RqRmlmalJ3ZFBoY1p6dW5SalFIazRXNURPcVNJSndKNGJvU29wcTlNMXYxK0FEY0pxZFFadFo4TjRGVk5tMzhhZUkyVmpSNWk2RGEvN1grdThkbXFyK2J2NUhoQzQ1bm55cDVLWGdqZ0NaRUdCN3BOZmh1QVMzbksvVFNBZlRMR2hVWTEza01QYlR4RkhSQnB4UFV4bGNDbjVvd3JVL1pVQlJ0VEZQajhwcm5IOTJpTVBwOHNnejZyRkYvNENGL0J1V3ZzVk9kTEZzekFpeThPNEFoM2NyL3JFajdMRHdzc3EyYTJXbU5FMFNtOThmRTV0bk5nQjE3dlBNQ043ZWtnc0xuSzFrT0FCbSsraCt4bkVLS1hGTDdQY1ozSjlaaXlQdDhrOE5IMEZBRVJHSUxBTHU1N2JzdU95cjdtM2dOamhJdWwyNnoxdURSUmxTY0NJaUFDSWlBQ0lpQUNJaUFDSW1BU2tNREhSS1FNSWlBQ0lpQUNpUVRtS1BCWjdlcmxHbEhGc3dBOEtxRC9aN3JOeGE4RTVPM0x3ckFJZERIT1VGQWhpVWJMSndINFpVam1oRHpjck9TSlNIcjNvZUJuYm9tR1gzcmFPZERUOE1PZDU1NFVveGU5SGRHdzdFdjNkK0VKVXRoWjkwOWZtWXpwVG1FUng2OHJTZUNUTWhyRFhsTkxESkRiaXpFRlBoOENzRmRQQitpNWpFSU9lczRhTS9XRmorQ0p6TTg0TDF4ZDdaUEFKMzNVYnRvOE16L1c0OEhrQjQySHZkMGFyMnZmVGkrKzJKVzE3MmwrMC9QK1pHaFBuL0NVSFpxU0tLNFk0QVVXNVBOYzFlSTR6UW1BVGluTWgvT05YZ1VwanFabkgzcUdVaElCRVJDQkdnUzQzcnpjZmE5MWxmKzA1aC9wUFhITXBQVjRUUHFxV3dSRVFBUkVRQVJFUUFSRVFBUVdTa0FDbjRVT3ZMb3RBaUlnQWdNUXNBUUtjekJxeGhqTlh1cENLS1VZbWVtdGhVYnFCd2VNQzhPT1VYaEREekZLL1FTcytmZE5KeGc0UFJFaXgreE5BTzdsdVQ0blBJelYvdlZxS2ZTaXB4L0diUDkzajVGWEFwL0VBUi93c3RwaWdOU3VqQ253b1llMGczdUVhMU1RY2x5bUNhdjRQZ0M3ZDhDbHVJZmhjU2k4NjBwemVCYW16cG5hMS9sQ29rMUYrRVVHUTkzVG9TRkM2UG1QQW1HbGVSS3dQRmV4VjJlNWNEYWZxdGhGZXZSaDJLV1U5OTZLelZMUklpQUNHMFRnT2s3SWU2Mk9QbkdkbzVEMzVCSDdxL1Y0UlBpcVdnUkVRQVJFUUFSRVFBUkVRQVNXVEVBQ255V1B2dm91QWlJZ0FuVUpXQUtGT1JrMTcrRkNJV3poUVpicUlwelA0c2MzaHV0REE0YUQzbGtvQXZwWlFONGxaN0ZPZTVKTmpuZWRscTAxeHhrQ2hhZmNQNTR3R0ZiWnEwVWVCZUFSVHR4alhTZUJUOEpnREh6SlVHS0EyRzZOS2ZCaGlCbDY2ZG14cDlGamgyTHluZDdtczQ2Q1FBb3p1OUtjbm9XeGM2Wm1mbDlJdEtsNXFSbnluZzU1WDZIbzdDNk5hTzduTlFkSVpWY2pjTjFHb0h4aTQ2WHc2cDRheGw0VHEzVmVCWXVBQ0N5S0FEM3Awb05QVjNxcis1NGJNK1NrMXVORlRVZDFWZ1JFUUFSRVFBUkVRQVJFUUFTbVEwQUNuK21NaFZvaUFpSWdBcHRHd0JJYXpNbW95ZE41M0Z4OG1HZVFlSUtaQnJQaklnZVNKdzk1elpiR2RVZTYrcytKTEgrSjJYMm5QY2tqeDdQT0tzK1FVNXVjTndjbERJSjEvN0RJTHppdkpneFIwNTZndDY2VHdDZGhNQWErWkVneFFFelh4aFQ0SEFMZ3p3QlF2TkNWU3QzVE1UemF2Tlk2UVBIZFgvVjQ5MkVaYzNvV3B2Q3BkVTFmU0RUVzkwRUErd000dDFibGtlVU9lVTliODVGTlo5ZzR2bnQ4TWJJZnlqNE5BdlFHZHJTbktWUHdhallOVW1xRkNJakFuQWt3ZkRXZjV6dDFkSUxmUGZzQ09HYmtEbW85SG5rQVZMMElpSUFJaUlBSWlJQUlpSUFJTEpXQUJENUxIWG4xV3dSRVFBVHFFN0NFQm5NemF0N1V1UWkvZ2dkZGJOZ0xibHkrMXhuYWZDTWljVS9jZlBVWmZsbFN5WlB0UHM4ZHJPdXJ6ckIvWmx3WDRMdC9HS2J0Y1M0azBPL1h5clh1T3dsOElnZGloT3hEaWdGaXVqZW13T2VmWGNpWlYzc2FUQTg1UE0wOWRQSTlHeGd5ajJzRVF6aDJoZTlpVytmMkxCeWFiMWQ5bHdSQXoyVjc5elJtckxuUXgyYm9lL3JPQUk0RjRQdlcxN05nQ2pNNXJRMlBCZkJDejZYdkJNRDNvREc5V3FUMVRGZUpnQWlJd0o4SStMNnh4aFIycjQ2UjFtUE5XQkVRQVJFUUFSRVFBUkVRQVJFUWdWRUlTT0F6Q25aVktnSWlJQUtMSUdBSkRlWm0xT1NwZUJxUCt6eEljRkI1b3BxL254YzR3dlFJOUNvajcvR3V6RjhFbHJuMGJOWTQwZUMrSzREVENvSGEyaGxTYjkxVFhtcVlycTc3NTlQTjNLTFE0ZDhCckF0NzJ1cXQrMDVHM1VJRFg3R1lvY1VBb1YwWlcrRHpIaGZ1N29vOURSN0Rhd3UvcFY3c1BHbDFOWXZQREJwLzZLV3RMN3pZM0o2Rm9mT2xacjVkQUp6UTQva3VOVnhtemZZT2ZVOWYyVDBuK3VZYys4cG5TVWhvMEpwY1ZIWWFnV2NCZUtMbjB0dzFKYTFWdWtvRVJFQUV5aEd3dk5HVlBLeVIwMnF0eHpuMGRLMElpSUFJaUlBSWlJQUlpSUFJaUVBeUFRbDhrdEhwUWhFUUFSRVFBWU9BSlRUSU5VQU1iVEJqZHg4S3dPZEJJc1pieTdZQVBneGdCdy9Ic3dEY0NjRG5OZHVDQ1Z3THdJa0F0dSs1b3NiSjlwYzVyMEI5amFTUTZ6WEJQYmdnWTN2Ly9BYkFHd0M4Qk1EM0FzcXc3anNKZkFJZ2pweGxqTFV0cE10akMzem9zZUlJNTVtaXE3MjhWL1pvdkxwOE1xUXpoZkw0d2dHMjRTTVlCdW1rNWo3ZXJxZk9PVDRMQytGTEtvYmZyd3g5K01pZXE1L1cvUHRUazBxdWQ5SFE5L1JXQVBpc1kvaVN2aVNCVDczeHJsMnliejZ4N3R3MXBYYjdWYjRJaUlBSVdBUjgzaEduRklaUTY3RTFrdnBkQkVSQUJFUkFCRVJBQkVSQUJFU2dDZ0VKZktwZ1ZhRWlJQUlpSUFJckFvVkw5ZERJTlVBTWJUQmpONnl3Rjk4RnNITWpCUHBod0F4NGxETlMrckkrM0JBVUJWU3p1Q3pXR0tXSWJTeUlGTTI4MjVQcHpRRHVCNEFHLzlCME9RRDhqNXZZTWRmTlRlQnpzZVkrdUZMajVlU1hFWjZ2UWhuT05kOFlhMXNJcTdFRlB2UTJZb1hFZTRVVDI4WGNNeUY5Nzh2alc4ZmI4QkY4QmtyZ2swUDV3dGY2UkZVVXhlNEc0T1J5MVJVcGFZeDcyakk2U3VCVFpHalBMNFNDS25yemF4TTk3UDNVNDJrdnQyWnJiSFBmcjNQYlYvTjZoc2xsaUw2aFdOZnNpOG9lbmdEM1Ara0ZjTXUxcXM5MVlVQ0hiOUVGTlhhMWk2TGxuMFYrQTR6Vi9ocjFVcWo3bEo2Q2gzN1g4L1Z2eWV0eGpYR2ZRcGxkOStQWWEwUUlsL1YzRVY3emMzMWZoNkJiWEo2K1orR3ZBSnc5SVJxWGNNL3NMZGJhcEhrOW9VRlNVMFJBQkVSQUJNWWxJSUhQdVB4VnV3aUlnQWhzTWdGTGFKQnJnQmpEWUdiMWlSL0ZOQzdTWTRNdlhjMkZGN21SSnhQRE1PMDNzWS9zT2N4WGhxMmd1L1N1bEJvdXkrcjNqWTNRUVo4QmNCZTN5V2FWbGZ1N05VZW40c0ZubTBiQTlDSUE5MXJwTUVPUTBVdlcwajFXamJHMmhjeTdNUVUrN2ZQaThnQVlpbXVubmdZUGVhcmJha3NiUHVJYUV2aUVUSy9nUEQ1UkZVT2kzUjhBMS9vcHBUSHVhY3ZvbUNMdzZkdG9iMW5YMkhEdk1saXRqbTFLblZZL0xBTUg3MzJ1aHc5c1BESGVvWG5uWUhsZDZZeG1yZm9BZ05jQ29PQ3ZMN1JtN0Z6OXAwWlU5RnpQUlI5MzNwdllqemtuY3VVN3pWODM3d1YzODNobVpCL1BjZTlocjNkaFUwdUh0YzJaTTVkdXZndjJkL1BsNWdDdTRnYUZiZjVXRTc3eGJTN1VJdzNJYmJMbWZXMFJHZHR4R1FDWDlVd2duOEU3aDFlcE9Vc0IrUTNjdlhwM0FQUUl3N0h3cFo4MG5sTS9DdURmbW5DK0h3THc0MUtOV1N1SDQwdVBnL2RwMW9aOUFGelZVdy9YdUdNQnZORjlPNGFHZ2E3VTlFR0s5WDBuaitHdDBkZnBPYS9Idm51ODFocXpMdEpjWlp0YXA3VmVXdThKWEsvdUNPQytBZmZqcWM1REl1L0hieFI4cnNmZVdMVGwwRnN4UThQZkd3QkRoYStMSU5veS85QjhiMytsOFJwOXBIdmVuRjVZT05nbkZtbnI5NGtWdVU3em0rNGhBSFozM2s3WkQ3YVpCK2U0SC9iMHRkRHE3ZUVnL3RtWHJER1A1YjJlMzNyRytlWnlEcS9VZHZNd0ZaODFmK204ZzYrSzBydks1TFB3RTgwNzJIdmRleXdQTDlZK1BNUDcrUGJ1bVUwUHBOZjF6R20ybVhQa05BQkh1M2J5M2JmVzh6Rm56RkxtZU9vNDZ6b1JFQUVSRUlFRkVwREFaNEdEcmk2TGdBaUl3RUFFTEtIQkhBVSsvTkJrK0tlcjl6RDh0VFAyZk5aZ2JIbWg0QWYwUFFHOGE2Q3gycFJxTGc2QUJsNXVkblVsYmdMY3JzS0dQVGRKdVBuT3piV3U5S1BHVUxEcjJ1WlVMZWJXZlRjRmdRODUwZWg1NVE0STNLemhSaVhEeXl3MWpTRUdDR0U5QllFUDIwbHZXQXpWMVpkYVlVMUluM0x5MEREM2xwNEN2dWFNZHpRTzNnTEF4enlHMGprK0MzTzQ1VnpyRTFXMUlkR095YW1nMHJWajNOTTFCRDVqUEYrc2RTZmxtV2IxbzAvOFJHSHFNNXhRSTNhcTBGRDFlUGRzeXhYNkhPQU1kWDF0bUpvQlBKWVZ2UmNlQklDQzdWVnZQVEhsSEFYZ0NZMDQ2T3N4RjNueXBzd1p0cDNQbzJkNlJHQ3Nzc3Y3NXk1T3pMSHVhYVp0WW0xdlpkd25aSGhZaXRqNkVvVlhmT2Z1U2ltOENnM1YrVjRoLzlFWmpDa215RWtVbmpQc0k1OHJ1ZmN0MjBIQjd5RUE2RTIwenhqdmF5L2ZrUmtxbW5NcXhGdHNUdC9Idk5iM2ZrV1JOd1Z6cTRLNE1kczY1L1hZSjA2SzhVb2N3OS8zYnBKYVorcDdBZ1YvRFBkS2IxRXB6NXFTei9WUWhoUUw4QUFZUmI2K2cySys4dmlOd3ZlYzl4VmExeWdVWTFrVTZIU2xya05yZk1aUVZFVUI5UFdNenErLzUxa0hMRmhjN1c5QnkzdXo3OEJCQ3EvUStiR2FqM09GWThLNWNwdVVBbGF1b2VDSG5uUmZXWGp0NVR5NGJTUFdlYkx6MHB2eVhHeWJ5ZWNqUld6UEx2anUxNWFkTW1ZNWN6eHp1SFM1Q0lpQUNJakFrZ2hJNExPazBWWmZSVUFFUkdCWUF0Ym03aHlObWxhZlFnUStGS0hRT00zTnk3N1VobllwZlFKNTJCa3dmRzBVakhBVGFjZWVxbzkzcDhCNWFycGs0dnNVTnhSNDhxOHIxZkljMUZXWE5VZFRqS0VsV2RId1FuR1BiNk9KUmd0NlJlREo5aVdtTWNRQUlaeXREZlFVanlCdHZkYkcyZXJ6d3ZLQXhsT3Fkd0pBN3htMUVnMEJOQ0R2M1ZNQkRZSTBHREJaOStRY240VzF1RnJsK3NTeFUzNXVEbjFQMDJqRnNKRjdlb0JTS1BjbUMvamE3OVpjcnZGOHNkYWRsRHF0ZnF5dlpUU1MwQWo0QWtPb0VZTHo3YzY0ejlBN3FZblBUNzdyK0F5UzlDN0FFL0cvVGExa2hPdkltYUZwbjVkb2JPMXE4c3VkMENmM3ZTOTJ6bEFNeG1kRW4vQjd0YTFkUm0zckdjUHJjNTY1MXZENlFpSHkybFVSYTFkWnNieXM5b1Q4VG1FWVBYalN5MXZKbENvNldHMER4NVB2QlArUUtPeFo3dy92NnljQmVNbk03dkdRY2JIbXZrOVlGbEorNlR4elhvK1hLdkRoZHp0RGVqT0VkdGRoazlnNVFpRWczNm5vMGFkbTRsempOME9xc0dlOWJhWGFiWDNEclF0ODZQM21PUUFlRndpcjZ6M1BDblZmMHhPMnRaZG5IVGlJNVJXSTZVTFp1QmZHOThCY1lZLzFycExTdHZhYUdtMXN5K2I3RjRYaTM4OXA0TXExc1dOV1lvNFhhcnFLRVFFUkVBRVIySFFDRXZocytnaXJmeUlnQWlJd0hnRnJjM2VPUmsyclR3d1BzN1B4TVhrdDV3V0licFg3VXUxVFIrUE5pcm8xVzZHeUdMcmg3eW8xZ1VZRm5qYnZTL1FxTklSSEptdU9waGhEU3lMamhpcTlIVm52b0R6ZC9KcVNGYytvcktIRkFLRm9MRU43anJIUjJqaGJmMTdRVVBZVVQ4TnJHNEI4M2hYV1BTdFk5K1FjbjRXaGM2WmtQc3VqeEpTZm0wUGYwOVo3UnFybzFKckxOWjR2MXJxVFVxZlZqOVcxakdLcHd4Szk5dlROZjNyMG9xYzZldmRMU1phWW1XWHlKRE5GeHd6L1ZEdXNRa29mMXEraFowd0twWDJpdE5SNktQcGtXSW9jMFhETW5PSDdQY003WFQrd3dYMENrakVObUQ0UEt1eldxb2kxcTVzeHZBSXg5V2JqczRIM0V6MUJVT1JUT3VVS2ZQaHR3dmYvVWtiNTFmN3hmWnJ2T3ptQ3dkSzhjc3Z6elIxTFdKWmJkOHIxYzE2UGx5andvZUdkL2FZM3ZwS0poN3g0THpLa1VlbG5icTAycy84VUM5SUwxVHN5Mm0xOXc2MktiZGlYVndCNGNBVDhydmM4aGx6a3UxU2ZsN2FRUTNjUlRiaFFWa3NBYXgwNGlPRVYyOGFhY3lYM1dkajJoZS9WRkhqeHU2MW00dHptdmg4UFZ1YmVrekZqVm1xTzEyU2pza1ZBQkVSQUJEYUlnR1ZjMmFDdXFpc2lJQUlpSUFJREU3QTJkK2RvMUxURUNTRWhvS3d5dUVuTCtOT25ERHhlbTFDZHhUWkhnR0R4ZWFoem05K1hyMmJkcTNWYTkxMktNZFRxZTh6dmoyMUNGYjB3NElLYVlxeUE2a2ZOTXJRWUlMU3pscUU5WjQ1YkcyZnJ6d3RyWTdkbUNBZWUzR1NJakFON3dLMjdaYmZ1eVRrK0MwUG5UTWw4dmcxMWltdDNBL0R0a2hVV0xHdm9lOW9LQTNxNkN4dEpiakhKbXNzMW5pL1d1cE5TcDlXUGRpMWpHSWpYdVpDcE1aeEM4dEtqSUlXL3FaNGFMWkVqMjBDUkQ5Y3B6cjljNDBaSW4xTHpVQURCOEI0TWcxc3JmUThBNThvWEVpc0luVE44bGxITXNWZEVQWDFHTTh1SVdNdUFhWGtuQ0FrQkY4b3JBbE5uVm5wN29jRCtNYmtGZWE3UE1Xcnl1NFJldTNKRGhmbTY5eGtYc3FxVXA0S0tLSU9LOXExdGxyQXNxSUlLbWVhNkhpOU40RVBEKzh1Y0Y3MEswK0Q4WjI3cE1OTVVRL0NiZ3g2Q2FpVzIrMkFudkVsNVY3Qys0VllGUHZUYVEyK0lNYW5yUGM5NlRySDhuTzlRcytEYkFBQWdBRWxFUVZSU1gvdHlCYkF4dkdJNDFaNHJPYy9DdGgvWGRzL0VFTytHTVgzMzVlVytFME8yNW5pMGpCbXpVbk84VlA5VmpnaUlnQWlJd0lZVGtNQm53d2RZM1JNQkVSQ0JFUWxZbTd0ek5HcGFJbzZRRUZDV3A1ZWpuZEhudkJISGJxNVY4d1FhVDREM3BSUkRZQ2dMeXdnNWxHREZ1dTlxTWdoaFpZMVJXd2JqcHpQOHdCTFQwR0tBVU1iV0hNL1pTTFUyenRhZkY1YklKc1FBR2RydjlYdytjUkUzeVNtdW9QZUdObG4zNUJ5ZmhhbnNjcTd6ZWJPZ0cvb0hUVmpFTU9ROUhXTDBXQmVoaFk2TE5aZHJQRitzZFNlbFRxc2ZYTXRlbEhES1BKUmptNC9oZWtJRXIxM2wzZ1RBQ1lIaFJiakc4S1QwTDJNYk9FQitHbmtZdHJORW1CU3J1ZDkwd2hzSzNHSlR5Snc1MUJtT1h4VlplSi9STE9SZXpubnU5aldUUXFzVEc2TXl2U3AxcFJBQmJTaXZTRlFYeWw1VGdMZGFVYXBSOCs2TjF4NnV0UlFWMUU2NWdzSGE3UXN0M3hlQ3RaYWdMYlJ0dm54elhZK1hKUENoaVBUeFRmaEhydE0xVTlkM1FHcDlYT080aHZDN29uYktFU2RaMzNDdHdJZmU3VUxmVzFiNzIvZWVad2x0YW9UcDRuT1pZMEtCZGxkYTkrTGFsU2VVMTlrUmc1N2lOU2FpK1BPenBqNEwyM3B1Q2VBOUFMYU5yYmhBL3NOZHFOMVVrVS9vbUpXZTR3VzZyaUpFUUFSRVFBUTJuWUFFUHBzK3d1cWZDSWlBQ0l4SHdOcmNuWnRSMC9xZ0orbVh1M2pQZmRTM0F2Qk9BUHQ2aHFYR1p2MTRzMkRZbW4wYmxha2hTVUo3VUh1K2wycEhpakUwdE82UWZKYm5sYmFNdTdsTm9KQXlOeTNQa0dLQUdIYVdvVDFuN2JJMnpycWVGNzR3V2V3WFhjRFRxSjF5R3RYSHhYZFN1OHZ3V1h0dG1PcDhpWmxiVmw0YU9jaDJwNDZNSEY4K1U0K3hDaG54OXlISGlKNUR5R0tMbnY3bThMTG1jbzNuaTdYdXBOUnA5WU5yR2IwYjBhMy9lcUlSaktFc0tDYitQSURmdXd3WEEvQm43cFQ5UFQzOFY4djdJWUE3SklhTzRqN08wd0VjRWppdjZjSG1nUUErVW1GTkRHekNSYkxGaExJaWN3cWxQdzVnMWVoRnp5Z1VDZDNmc2UrYjkyM2xOUExTdzhLNWtZME9tVE1NaDhhUUlReVJGNU44UmpQTEc1Y1ZDaVNtSFcxZTZ6QkRTQWpNRUY0NWh2Wll3emZ2MitOY3lEb3krK2thR0JvY09ZLysxdjI1K25PS1VmTzI3cGxsZWU2aHNaRUNWZjczdWNialJIdTRnL2YzVmR3ejd4R0JCdjZYT2s5R3BkOTVVdVpRNmpVK2czMklzQ3kxM3R6cjVyb2VMMG5nczZXNy83dWVFWHdlOER2ajNZMXc0OHNyejNYT0M2NE45TVJGRWZuMUFpZEtqcGkwclNKR3NNRXdsQzkyWWxtK1Y3UnJBUGVkZG5BaEtnOXlhNHF2QzJjMkFwdzlBTEM4bUdSOXcxRm9zeitBVndMZ1BSNmIrdDd6ZklKQTFsSGpzSWNWRGo1RVFCL0NhNysxZHgyTEdUMDhkYjJ6cmwvM2FRRFBkKzlTWjZ6TmRjNFhNdVh6aXdJbWlsUlhCYW9wejhLMi9wajNQVjd6ZFhkUGZzTDlmYlVmNUhjN0FQdys0TndJRmRGeXZXUGZVNTZSSVdOV1k0NWI0NjdmUlVBRVJFQUVSQUFTK0dnU2lJQUlpSUFJMUNKZ2JlN09UZUJqdWNvblIydlRteC9OL0ZEdEMwUEFEODY3dUUzb1d1T3l5ZVV5bEVaZjJKemFKeit0K1Y3akZGblhXRnJ0U0RHR2xwd3pGTXBSQ1Bjd1Q2SDBmc0pOcFppVGF5WGJPSFpaUTRvQll2cHFHZHFIRnZnd05NZFJBUGJ1NlVTTnNFM1dabkxYTThDNkorZjJMSXlaTTZYeStvemNOUXpjcGRyZGxqUFVQUjJ5Z1o3RHk1ckxOWjR2MXJxVFVxZlZEeHJidWE1Y1kyVWlVQ0JBUVEyTmFKWW5uTXU1NTl3REFpWlNUc2daaWh6ZTY4TFRCVlIxZmhhZW52N0hEb05KNlBXbDhySHRGTHp2YVJUSU5aNkd5WkR3UTl1NDhDczBzdmpTdzQyUXFpbnZWbnorOFpuMGxJNkxhWFJqaUpWVkFRZU5SVHM2VVJJWjBJQk13K3g2b21janZqOHliMWNxYmNDMG5xdGZjd2JnSHh1TXJYc3M1MzBoeHZETmU1V2hZV2wwUFNkdzhqTE15YjBBOE43Y0xzRnJRY2c2ektZYzVqeFZXdXNKODNMOHVTN2R4dE9Ia3A1REFsRVZ6V2JOUGVzYnUyaGpFZ3FiNDNxOEZJRVBRL2hSOEwrKy8wTEJBaG53V1dSNTlxRHQ1R1l1YktmdlBteW5EdS9YaHdTVTJ6WFZXRmVJdDZGVFhSMGh3bDNlWDJUd1RFTVFrU0tDRFJFL1BNZTlmMUJvdFpvWU5wTmVleis4SXJ6a0dzOVFUaFNzYzN6b3daUHZPbDJKSWRmWXI3NlU4NDdWVmFiUG0yaW9nRDZFVjR6QTU2cU9IejJKOWFVVWtUZUY2enhZOFM5T1pKb3E4QWw5MzJQYmVkL3dYVHMwNURMbkNrWGJGSS94M2R1WGFudXBxalhIRXg1SHVrUUVSRUFFUkdCSkJDVHdXZEpvcTY4aUlBSWlNQ3dCYTNOM1RrYk5rSk41SWNia1c3alR2WmZ0R1lxZk5lS2Uyd000WmRpaDJwamFmRWJVSHpWaGMzWUZjRnFsM3RJUWVKSXpCblJWSVlIUG42ajR3aXA4eHAzeUN6SG1WUnJLMFlzZFNnd1EyMUhMMEo1anNMTTJPL3VlRjVaNzlwdzJkZkdoTUswdi9FcWY0WE9Ubm9XeGM2WkVmaXRNRFRmMmFTaWRjaHJpbm1ZNEhYb1EyYzBEZ3B2YkZEOVE1SkdTckxtY0lyYXgybUd0T3lsMVd2MVlieE1OSXp6TnpKUFBvWW1HRVFwcGFManlwVkRCUkY4WnFTRVBLRGloRWFWTFZCTGF4OVI4SWUvVW5Lc1VadkRlYnIwa2hkUVh3djFiQU83VUNNSTVycUhKbWpNME1sS2dmNk9WQXZrK1E2SElkNHhLNk9XRjRwTStBN1BQYXh5TExtbkF0THdzV3A1SzI2NWF2SEtlemFHZUN2aXNaajBoQXBxdUlhTGg4Sytjb1owaTA1QjdoZGU4eVkxNzM3RHp3QUhGS2pSWXgzZ1NvSUdlL1BzT01yQytvYjQxUXUrYm1IdytyNHk1NjJSTU8zTHl6bTA5WG9yQWgvZlp1dTBqTlhRbDcwT3VLMDgySmtxTzRJN3ZjZlE0dGk2R1dhM3lYWTJud1FjM0FsanVIY1VrZWo1NVA0QSs3MkprUlMrRUxEODBXZDl3OUd6SDBKaGN1OXNVdWc2U043OERmdFhUR011YmE0Nm9mYjFLUzRUNDFjWkw0dTZOSUltZWtIeko0aFc3amx2ZndpVThTbEZreW5jTkNxNURub1Z0LzBNT2RqRXYzOGZvaVpGOVQwbWh3bm8rU3lnY2k5MW5zc2FzNWh4UDRhRnJSRUFFUkVBRUZrUkFBcDhGRGJhNktnSWlJQUlERTdBMmQrY2s4QWx4dFI3aWtwY25kSS90MkdScWh5WjBZMkRnb1p4RmRUeHhTOWZhZmFmQlUwOGRoWFplQXA5UVVoZmthMCtGOFhUanpvMmI1Yys2RTlZTUxXT2Rvb3lyYVg2NWZXSUF1cEduZ2Y1TEkzU0xHMkpzVzEvS01kaFpHMmQ5ejRzck9aZjBmYWRwU3hxRmZHR2l5S1RQeUxwSno4SVJwaDE4QnVjUVllMFliVjZ2czdiQWgvUC9MUUhoSXc0SDhNaU1OZGFheXlsaUcydDh4aGI0VUJUTWs5UXB3dXNRVHlPaEo3NTluRktOeW56V01xelBjenRDRmxuamt2TzdaYnlrWWZTK1RyQVdJNEJvMnhUQ1BWWVlhTTE5UG10dXVQSit6NUJpZjllRVRQcEZEaWgzN1pBR1RKL0JQOFpia01VcjlYMkI0V1krdXVaZGF4MHg1dzlGTUZ4M1UrYlBlbm1XQUdzMXZ5VStPcXNSQ3Y2NTgrYWFNalVzVHdnbDFwT1VkdVZldzMxcGlwZjRmT3BLSlVWc3VXMjFycC9UZXJ3VWdjLzZtRDBSd1BNaXhhT3JaWVI2MkVueGhtTjkxN0FkREZmSloxaHNxTW0yRHhRc1V4RGVGOUl5Tmh5ZTlRM0hVRkI4TG0vdEdrQXhCOThYNmIwbk4xbmZaakhQTGFzdDFuTXRkSjJ5ZU1VSWZEZ1hHVEtXNzB4ZGFleG5naFUybUcxbVNEZytGeWtDeTBtY1kwL3E4YVM0V201S09FdHJ6R3JPOFJ3bXVsWUVSRUFFUkdBQkJDVHdXY0FncTRzaUlBSWlNQklCNnlONExnS2ZFRmZyb1pzSEREdEVOOUI5S2VhRGZxUmhuV3kxMW9mMzJBS2YydlczQTJQZGR6VU1zSk9kRkROdG1FOE1NT1V1cFJyczJDZnIvdlU5TDN6dTBsbDJxYkFPdmpCUlBNMTRoK1owS2oxRHJDZnJucHpMczNDc3VlZnpYdkVLWitRb1ljU3QyYjhhQWg5K3g5L1luU1RucVZjckhlKzgwT1FJRHF5NVhPUDVNcWJBaHlmTTZlbUZKOEJUMDdZdWRBS0ZDWDJKWG41b2xNaEpER2Z4ZGdDM1RpaGtTS0VQVDhEVHNFalJWRitpMGZuNW1lSU1LMlJGN0tsK2ErNnY5cVhFdmJaYW51VTE0SGZOcWZjN05tRytQcDR3OXF1WFdJYlNHS092eFN2bGZZR2VBT2g1eXVmQkppY0VSeVkrV0hPdVZOc1lodVdFeHJzVnc3ZDFwWkFESjdsOUxYMjlMd3cyUlZFVUJaNWN1dEtLNWMxbFBWNml3Q2RYNk54T214QWhhZWorME9wVTlIa0taYjRTenhlK1B6TGM2TUU5OTBCc3U2MXZ1TlZxZUQ4ekJPcW5DdDUvMW5kZ2lYY3NOdGYzUFJLelRsbThZdllES1pyaTRjRytkejk2RXFSM3daOFg1QjFhbE5WUGxsUEN1OUJxZTBMdVMzcFkyc01KaTByMnBTMnJ4aHdQYmFmeWlZQUlpSUFJTEpDQUJENExISFIxV1FSRVFBUUdJbUJ0N3M3QnFFbmpHVjBVcjdyYzc4TEhrMVRja09FbXV5LzVOdEo0M1p1ZCsrS3BHeXNIbWtKUjFWaWJDTFc5SXpIczJ0RXV4RnBYd3lYd2lSck9SV2VXd09laXcrOTdYdmdNUXl3cHhpalpOL0dzTUZFK29ja21QQXZIdWlHdjVneVpYYy9nV0FQRVdIMWd2YjU3bXU4Tmh6U3U2VThOYkNDTjhCU2QwQ01nRGNvaGlaN1I2TUkvUjl6RGVxeTV2R2tDSDU3eXAzZWIzSGN5SzhRU0RYWjNjMkdhUXNhekx3ODlHZElyd1NNU0MybUZQcy9JQ0d0a1ZlMFRTdkxhRkk4SGZYWDZ2S25FaW1Lc3VkKzJvWlpoNTZGTzNOTFgxeElHVE10VFVJeFkxdUtWSXZDeDJrYzJKY1JoMWh6dSs5MHlNcWQ0RGVpcXl3cHhWenNrY1NvZjMzVStkbk1VTExHdmMxaVBseWJ3S1NHT1daM0hJUjdGWXRabTN6c3Y2MDBSSnZUZGQxYmJZOXB0N2NHc3RxSEdHczM5T2dwY3I5alQyUklpRjBzQUc3Tk9XYnhpQkQ1VDhTRGRoWjRIRytuTnNNL3V5Tzg0ZnNzd3ZGWEpGSEk0TTlUYlV0c3VhOHhxei9HU2ZGU1dDSWlBQ0lqQWhoR1F3R2ZEQmxUZEVRRVJFSUVKRWJBMmQ2Y3M4T0dtSEYwZlA5MjVGUFpoWmZnR2hvWDZUZ0I3UytDVHl5U2dDUnVieGZyd2p0a3NTWUZrMVMrQlR3clZaVjRqZ2M5Rng5MjNObHFoSFVvSVFYeUdSYXY4T1Q4THg3NERLVXBoNkttdVZFSzROVlQveHJ5blh3RGd5Um1oSEZZWldYTjVrd1ErSmNQN1dkeEt2aDl3UGFRM2x6YzJZVHpvUFNnbFVlaEQwUmxENXFTR0FPbXExeEpLMG1NU1BhRXhaR2VKZEMwQUp3S2dzYWNyeFJnd3JURnN5MyttdTk5eVJXSHI3YldFckNVTW1NOENRRkZiVjRvTmgyanhpaFg0V005NXR2bERUZmhTR2hUUExqRjVJc3V3akwvMDdrZGhKa1BUbEVnV1g0cmIzbFNpb2dISzhMRWJPN3hNYnZlbnZCNnpiMHNTK05RU0UxaDdPekZycysrZGwrTVZ1Mjc2NWkvbjVodWEvYXNIOW1TS2FiZTFCOUpXOGVuR0krSStGVUtDV3U4V3NZTGVMaVMzQi9BUkFLeXJLOFVJWUMxZU1YdFdVeFg0Yk9XOGx1L3JtWVNsUks5ZFZWamhNbVBtTjh1M3hxejJITTk5RnVsNkVSQUJFUkNCRFNZZ2djOEdENjY2SmdJaUlBSWpFN0EySDNQRkxLVkRYdENsNncwQVBCakFRd0RRSmI2Vll0MnRjK09jRytoOUtaZUoxZDVOL24zc0RRN3J3NytrQWM4M2p0WjlWOE1BdThuemFveStqU2tHeU9sdnpzYXpkZjlZYTZNMTczTkNPVm1HUlV0b1lyWE42cHMxSnFXZmhWWjlRLzF1aGFXSjJVd2ZxczE5OVl4eFQxT2dRcytDTkJTVVN0WmNydkY4R1N0RVYrenBYaDlqSzRUQ3Ixd0ltaStXR2lnQWwzUHZtL1NNa1pyb1ZZcnZ3elJxbFJDc1dLZnNRNzFoaHZhSGhqaWVxcjlIendVeG5wT3N1YzhxU25wWFdHOXliUU1td3oxeHJkaXhoMVhzTTlUaUZmdStZQW1jYWhudlErY2F2UkF3VEVyZi9tcHNmNjE2clRXRjk5TGZXWVZNNUhlZlY2L1lVSG9UNmRKRm1qSEY5WmlOWEpMQUo4YkRTc3c4c3RhbVVPR3FKWWdvTFJKa0h3OEFjR1JQWjJQZVM2eHZ1TGFLaHh1ZTZHSzRyK2UxeEZFeGd0NnVkcnpNSGY3citpMVdFRzd4S2lud09iMFJ2KzdhN0c5U3BEdGt1cW56ekhPRm5rcDlvYTFMdE5QeWhzVjNXb1l1T3k2d01tdk1ocGpqZ1UxVk5oRVFBUkVRZ2FVUmtNQm5hU091L29xQUNJakFjQVNzemQyYVJrMSt0TDBid0U4Q3Vzc1FGN2NGUUlGSWJJcDFNMndaK1hLWnhMWi9rL0pMNEhQQmFGcjNYUTBEN0NiTm95bjB4Vm9ucHRER3JqYmtHTENzalROcmJiU01uemtiaWRibXZTVTBzZTVKcTIvV2VHK3F3TWZuTlNsMk05MWlXUHYzSWU5cHN1Rzl5RkJIdnkvY01Xc3UxM2krakNId0NUWEl4ZUQxelFGNnlka2RBRSszbDA1Y3YxNElZUCtNZ3QvdXhHSS95eWlEbC9yQ1RNVWFXMEtiOGxqWC82NzhOSGp0M0FnaHZoOVFtRFgzV1VRdEEzTGJQQ3U4R1QwdUhSVFFsNjRzdnJJdEwzVmQ1Vm04WXQ4WGZJYm9JZGhiV0gzR1g5NDM5UDV3aWxWSTVPK3ZhendDSGRoekRjUFYwSE1DamZSVFR0YTdHNzNwSGpibERrUzJiVXJyTVp1K0ZJRlBUVTlRbHBDVW5FTThhbGtDMkp6MXZXK2Ezc0tKTUJobXZDdFJITXRROVZheXZ1RjRmYXdYT0t2TzlkOHRRVWRPcUhhcjdGaEJ1TVVyUnVCamlUM0o2ZjRlSVZjczU5RDhWbGpSV05Gd2FMMnIrWHhlQ1prdlJ2UmxqZGtRY3p5RmdhNFJBUkVRQVJGWUFBRUpmQll3eU9xaUNJaUFDSXhFd05yY3JXblVIS0xMOU1ienZFZ0RtbTh6bG0zT1pUSkV2NmRhaHdRK0Y0eU1kZC9WTU1CT2RVN010VjFEaWdGS01vbzEySzNXYlcyY2hheU5sdkV6ZGdPMmJaL1BBQkp5dXR5NkowUDY1aHVuVFJUNFdGNlRVc2V5NUh5UEthdjJQWDBXQU5ieHl1WkU5amNMZVZ2cDZwODFsMnM4WDhZUStNUzY3ZytaQzFZWWp4cnMybmJ4ZnJwWkkyUi9qUk8waExSM1BRKzkwL3hWRTBMcnd5a1h1N0FXUG04Nk5aaXpxYjc1RXlQa3N1WSs2N29iZ1BjazhnbTV6UEt5azJyQXROWmJ5MHRkeWxvUjg3NWdHZEJyR3U5RHhzVXlzTDRUQUwxTE1FeE15VFNHT0tOaysxbVd6OHREYlVGQTZiNkVsamVGOVRqay9iYVc1MW5mKzFCcW5kWjdRdXJhR0RxbWxwZ2hSRWpnRXpHV0NESFYxUmRyN3lSMG5iYSs0VmczdzRZK3FPTDdLZXZ3Q1MxelJNUys3MHUrZis4RzRPVFF5UklRN2lsRzRHT0ZXbU96Mk1hOUc5SG5weUxhbUpNMTVKa2Q0ejBudFMxV1dMV2puWWZIOHdJcW1Nb2NEMmlxc29pQUNJaUFDQ3lOZ0FRK1N4dHg5VmNFUkVBRWhpTmdiWWJYTkdyVzdPVnZuZHZ6SXhJMktTd0RUeTZUbXYyZWV0azhYZldKUmlSMTNaNkd4bXlXcFBUVit2QS9yWEhmZnpzQVAwNHBQT0lhNjc2cmFVU01hS2F5ZWdoWVlnQjZKZ3ZaakNvTm1YT2NocXkrRkxvUjNIVzlkZitFckkyWEIwQkQ1RTQ5RFV6eCttS2QyZ3c1WFc3ZGt5Rjk4NDNsSmdwOGZGNlRVamJUUzk4THNlVlo5M1JzZWV2NStUNUMwWEdJSjVLY3VxeTVYT1A1WWhudVV1cTArbEhESUgvM1JtVERjdnRTU2o5aXg1SjdQL1JZK1pKRW9RL0QwdElqRGoxcXhIcUhzc1FwdFVJS1dXTWR5dDBxcDVhWGx2VXhmbXJ6N2ZHVW5vRlBOV0JlQzhDSkFMYnZLWmVoL2lnT2kwa1dyNWozQmV2OVB1WFpIdE1YSzYvbGVlTnhUY2k4RjFtRkpQeGVTcnlXVUhXeFMzenplUWdQRDhVNmtsRFFtT3R4Mjl3eFJHSmpDSHplN0x6b2xBZzEyVFhVbHBBZzVKM0NKMDZwdFlkUTR0dUxQS3h5bUNmbE9SSjdXL2s4ZjdLc0ZDOUlsb0FtUmlUUzlzZmlGYnRuWllVblk3M2N2MlNJTkg1ejh1ODFrL1crTjFUWU1PdmRJZWErc3Nac3FEbGVjOXhVdGdpSWdBaUl3RXdKU09BejA0RlRzMFZBQkVSZ0JnU3N6ZDJhUnMxYWVFNEZ3SEFzcVdFVUxJRlA3UTJvV2x4Q04zZFM2dzg1WlcxOWVOYyt2V2VkZ292ZHJFbGxaZDEzb2NhczFQcDFYVDZCcVFvMkxFTjdqTUZ1blpKMS80WStMK2dHbjJLSHZtU0YwMXEvenJkcEducTYzTG9uUS92VzE2ZXB6cGVjTytGUmJpTytxNHphWVhCeTJwMHlScVhxby9qaUNRQmVYSEh6M3ByTE5aNHYxcnFUVXFmVmp4UWprRFdPTmZwaDFkbjNlMnRZWmo5dmsxQUlRMzV4cnNVWWlheFFJTFdNZjlaWWg0Uk9JU0tybkZvZWlOYUh4MnBIaWlpaXhITXV0cDB4N3d1Y28zeUh2bVRQWEIzNzIybWZSamhISTI5WFNoVmRoZHlXdmpXbGxzZVBrSGFGNXZFSnFGUEN3b1hXTzdWOFk2ekhMWU9sQ0h4aTFwdVUrYkVOZ0pNQVVDelpsYXc5Z0V1NzBQSjc5bHlmSWlJSjZZZjE3UlVpVEdJOVZqbERyVWRXTzFMRW9MbGhtcnZHd1dxbk5WL1d5N1FPbzZ6bTUxNG1SYWMxd3ZpMjlWanZlN1htOHpvWDY3NWlDRXQ2WC9waXdNMWlqZGxRY3p5Z3Fjb2lBaUlnQWlLd05BSVMrQ3h0eE5WZkVSQUJFUmlPZ0xVSlhkT29XYnFYTkdJYzRneU81MllVenBQUE5JejBwZGdQK295bUZML1UrdkROcWJDRXdDZlY3WGRvdXlYd0NTV2xmQmFCcVFvMkxBTjF6Z2E2dFg2RVBpK3NUYzZZVUNNMEpoN2wzSnAzalZtb0lYWE1aMkhJMm1uTng2Ri85M2xpR2pzVVN5b0wzejNOUHIwYkFEMXpkU1h5MktNSnYzWFZ3TXJmNGJ3TS9pSXdmMHcyYXk2bmlHMnMrcTExSjZWT3F4ODVhMWxmZjJyMHcySm4vYzY5SUJvM1hncmdsbGJtdGQ5anc5VDZSQkFzK3VjQXpvNXNRMGoyclFCY3haTXhkS3l0T1JOcUNBMXBzeStQOVZ5S05XQXlsQVpGc1JUNTVEem4xcSsxZUlWeVo3bld2VlBMUTA3b1dGbmZkclc4TGxwZUZWUFd4dEErbDhqbkU1YkZ2S3VWYU1zVXloaHlQVzc3dXhTQnp6MEF2S3ZpSUZ1ZVFxeERSdGIxM0lmNlVZWDJiOUY0WitQK0JmL3NTcUg3VXRZM0hOdStLd0I2VEttZGZBY0VVcjRoZk90VTdQTzI3YnZGSzVUN0trdUtwRjhWQVpmUEpRcTFlV2ppbklqclFySmE3M3NoSWV0QzZnbko0L3YraWhIbFdHTTI1QndQNmJmeWlJQUlpSUFJTElpQUJENExHbXgxVlFSRVFBUUdKbUJ0N29ZYWJQdWFYVHZrQmV1bG1JY2ZvZnhnL21rQmZ0WW1kWXlyMkFMTktWcUU5ZUdiVTFtSWtkcXFmMnlCejFDbmxhejdidW9iL2puelpGT3VsY0Rub2lNWjg3endoWHlJT1JXK1Z4UEc1cGllamUrWU1GSFdQUm5UdDY0NVB0WDVrbm8vM3JrSlozZ3NnSzd2MVA5d2dxc2E0cFhVOW9aY1YyS010blZodUxpSmI2WERHOEhRSXlNOXJGaGw4bmRyTHRkNHZsanZUU2wxV3YySUVSK0VjR09lR3YwSXJkdktkekVBTklBK0g4QjJWbWIzT3oxRzNkc0lPN1phMUFFQWpnd3NlOGhzb1dOdHpabGFJY2E2V0R3VXdLdDdJTVVhTUJuV2x1RzVydDVSWHN6emN2MXlpMWNvZDVacmVUOU5XUU5LenJGbnViVzVaSmtseWhxYmk2OFBGTjVSRkxkdlQ2WlliNHNsZUUybGpDSFc0N2F2U3hINDFMNFhjdmNnZk92d21QTXlWR2hpOVgvSS9TMHJaR0xvNFF4eXB3Q1dBaGkrSDNXbHB6WC95Ry9PMkdUeEN1VytXdThsR2pFeisvYmd5TWJ3WFk3dlpvY0NPS1VKQVZvaWpKMFZrcmFXeDhhdXJwZDZmN0RHYk1nNUhqbkV5aTRDSWlBQ0lyRHBCQ1R3MmZRUlZ2OUVRQVJFWUR3QzF1WnVUYU5tVHE4WkY1cW42ZW55blM3M2Y1OVQyTnExVm96MkdGZXhCWnRWcENqcnd6ZW5raENCajdVSjh6TUE1TS9OaXhySmNrZWNPOTlEMjJ6ZGQ3VTNPVVBicVh6OUJFcUlBV3J3dFF6VU1RYTc5ZlpaNjBmTS9YTlRBQjhEY0lVZUNDR2J1NVpYZzVnd1VkWTlHZE8zcmk1TmRiNmt6RUYrbXpKc0VNVXBYZW5SQUE1TEtYamthMHFPMGMwQi9HdGpkTGlSMFNkdWFsT3dVV0t6dnEzS21zczFuaS9XdXBOU3A5V1BuTFdzYjFocTlLUDB0S1ozR041anp3UkFZNUdWem5UZXBiNWlaUXdRYVFRVVVTVkw2RmlQTVdmNk9teUZEQWw1eHJWbCs4UkNPWUxLa3J4ZTV1WmxGNCtRNzRNcUUyZWwwQ0VPbktUMElXVnRUS2tuNVJyZmUxcXFWNHlVZGt6NW1wcnJjZHR2Q1h6S3pBRHJHOFk2WkdTdGwyVmFHVjlLcU5ERTZuOW9PZkV0dk9nVjF2ZGJ6UHJpRXd2bENHQnI4YUxIejljQnVHY2lTSWJ2b3NkeWlpOWpRckN1VjFkS1ZKUFlqUXRkVnFvdHRjYXNSQjlWaGdpSWdBaUl3TUlKU09DejhBbWc3b3VBQ0loQVJRTFdaa1ZOb3laZHJ2SURsUitxSVlrZisyYzRMejBsQlQzcmRWdW5pcGkvdGh2cEVCNHBlYXdQMzVReTIydENOL0JMR2xGajIydk45eWM1YjFDeDVjYm10OW94NVEzLzJMNXVhdjR4NTdHUHFXV2dEaldVZHRWaHJSOHh6d3R1N3RLN3dZRTluUW54dnVNelBzVjZTTER1eVppK2RYVnBxdk1sNWY3MEdhNXJpelJUMmh0NlRla3gyc2FGajd1MXB3R3hIbFpDK21MTjVSclBGMnZkU2FuVDZrZk9XdGJIc1VZL1FzWXNKUS9mVlJuT3hCS1JzZXkzQTZCM0hzc1laQmxaVXRwWjRwclFzUjVqenZUMWozdDRid0R3d0o0TW9RWk1LOXhYanFDeUpLL1M2MmVKZWJOYWhnUSs4VVI5bmhZcDhqMG92c2lOdmFMR2V0ekNrc0NuekxTeHZtRWs4QUgycXhTR3Myc0UrVjdJdzNwZEtlWWJ6aGZ1S3llTW9EVmZjZ1JSRkdmL2ZTUFNwbWU1RUtGMkY2TmZ1bjFVaW9Yb3pUdzJXZTk3S2UvdHNXMW84MXZ2M3FFaFBtdU9XV3JmZEowSWlJQUlpSUFJbkU5QUFoOU5CQkVRQVJFUWdWb0VyTTNkSlJvMXQzYWhSM3hHdVNIalVwY2NlK3ZETjZldVVJSFBFOTJHUmw5ZGRBWC9nWnlHZUs2MU5oQ0dja2RzM1hkRGJxcFVRcjN4eFU3Vm1HWE44VkJEYWRjQVd1dEg3UE5pbDhhenhBbU5xRzdMbnRsaXVWWDNHWjlpdlJwWTkyUnMzOWE3Tk5YNWtuS2oramJUWTd3bXBkUmQ4NW9hWTdROWdBOEJ1TDZuNGQ5c3d1OHcxQnc5RTVaSTFseXU4WHl4MXAyVU9xMSs1S3hsZlp4cjlLUEVtUGFWY1VVQWJ3RndGNk9TMEZQc2xzR25abDk4WlllTzlSaHp4dGZ1dXdKZzZOZSsvYnk3QVhpUEFkVW5aUDBCZ04wQWZEdHhZRXJ5cXJGK0puYXI4eklKZk9Kb1hzMjluM1VKQ0VQWGs3Z2E1NSs3OUhyY0VwSEFwOHpjc0w1aEpQQVpWdURqVzJNNDRtOEU4Q0REdzZVbGdNMEpJMmpObHh5QlR6dWplUkNBM3UvMno1amlQM0hlODk0VzZRM1VldDlMZVc5UDdZYjE3aDM2RGpqRW1LWDJVZGVKZ0FpSWdBZ3NuSUFFUGd1ZkFPcStDSWlBQ0ZRa1lHM3VMdEdveWVjdTQxemYxOE9kWWNGb1VQbDV4YkhaMUtKOW9RYlk1L3MxeHRBM1ZlcThWWGROY2RGcWw2ejdic2hObFVxb043N1lxUnF6U20yU2RRMmd0WEVXKzd5d05tWjlIZzZzOENjUGR4NkNRaWVpZFUvRzltMjkzcW5PbDFBK2JUNjZsdWVKMkowNkxvdzVjUnRiN3hENWE0M1JiUjJ6dm5CMDdOdmhMdVNaNVdFbGhJTTFsMnM4WDZ4MUo2Vk9xeCtoRy80aHpObzhOZm9SVTM5S1h0NlRETld3cDNGeFNFZ295K0NUMHI0UzE0U085Umh6eHRjLzY4QkFpQUhUTnlZaFkrcHJYMGxldGRiUEV2T0haVWpnRTBmeVBrNDgySFZWamxlTXVGYk1MM2ZKOWJqdHZRUStaZWFCdFI1TDRET3N3SWVqU2c4MlBQalZsU2g2M3hVQWhheDl5ZmNNQy9XUzExZTI5YzFiUXVERHVybnZlRE1BcndHd2M4WlVwNmRHSGxTako5V1FaTDN2cGJ5M2g5VGJsZWZ1N2oyMjcvclF0Z3cxWnFuOTFIVWlJQUlpSUFJTEppQ0J6NElIWDEwWEFSRVFnY29Fck0zZHBSbzFMU0dJVGkrbVQ4eDkzSW5tdmhKcWhzbnliU1Q5eXAyRS9tSjYxNEt2dE82NzBJMk00QXFWc1RpQnFScXpMQU4xcUtHMEM1aTFjWmJ5dlBBWmtkaUd2dE9YUGk4eUtadTYxajJaMHJkVmhsT2RMN0UzaHM4alJhelhwTmk2YStldk5VYjhsbjg4Z0VNOUhXQ29McDdndGJ4NWhEQ3c1bktONTR1MTdxVFVhZlVqWnkzcjQxaWpIeUZqbHB0bkJ3QWZiUXhFMS9BVTlGVUF1d000MDVQSE12ZzhEOENuY3h1YmNQMVhBSndTY04wWWM4WnFscy9UbkdYQXRBU1ZQR2h3bk5VQXo3RjR5Y1FBQUNBQVNVUkJWTzhsZWRWYVB6TzZkNkZMZmUyTERSbGRxazBzNTVPR0FidGtYYUZsV2VMckhLOFlvVzJZYzc1UzYzSExRQUtmTXJPQno4ZVRtdENKMi9VVVp3azJyUFh5WTg0YlM1bldocGZDWi9ySG0zQk5YTWQ4eWZxR3Mvb2YzcUx3bkpZblY4dkxYYzB3Z21Qd3VxRVRQUEd3MnhiaEdQK1lrKzlLZng3b0VkUjYzMHQ1YjA5bzh2bVhsR3JMR0dPVzJtZGRKd0lpSUFJaXNEQUNFdmdzYk1EVlhSRVFBUkVZa0lDMVdiRlVvNmJGaFVPVWUzSjJ3R0dlVkZXM2FFNmFjeFBzc2oydGVyUHo0a052RUNYVHhRRXdmTXc5ZWdvTk1YNlZhbzgxdjRiY1ZDblZwNldWTTFWamxtV2d6akdLV3h0bktjK0xLN21RZkxmcG1VQmRKOFY5Ums4V1k0WDI2cXJLdWlkVCtyWmF6MVRuUzh4OXl6WDBDQUFVWlhXbFJ3TTRMS2JBaWVXdE9VYThkOTdsUW5IMWRac2I4M2NDY0VZbUYyc3UxM2krV090T1NwMVdQM0xXc2o3RU5mcVJPWnpCbDFzR0Voci83dWdNZ1gyRlByWjVOM3VocDhhVWNRenVRSUdNWTh3WnE5bFdtM3hpQ1oveHM0U2cwbXBiekQxbUNXaXN1V2R4elAzOWRRQU83Q2trTk1Sd2Jodm1jcjF2M3FVSXFPZlM3NUx0TExFZXQrMlJ3S2ZNeU56WVBmOFlTcTBySFErQWdwSnplbjYzOWk5eXZ4UEs5TEsvRk9zYmJneUJqOVVtWDloZjM3ZGdpWU40VnR0cThybzBnSHMxb3ExRG11K3U2MFZPRE01ajduWDl3cmpPZXQ4YkttdzltK2xiNDdnZkdDcG1IblBNSW9kSjJVVkFCRVJBQkpaR1FBS2ZwWTI0K2lzQ0lpQUN3eEd3Tm5kek55dHFHc3hxVXJJTXlLeWJMb04zQS9EdG1nM1p3TElaYy8wVEFLN2IwN2RhNGMrdTNCaTN1Qm16WTArOURIRkJ3N1YxQXE3RWtGajMzZFNOYUNVWXpMMk1xYTV0bG9FNnhtQzNQa2JXeGxucTg4TG5qYWRyay9iT0FJNTFiczNYMjNpV1c1ZFBqcHhnMWoyWjJyZTJHVk9kTHpHWWJ1ckVtVjJocGpiaGVWaDdqQmpXN01NQUx1V0Iva3dBVHdhUUkzQzE1bktOTUpqV3VwUHlUTFA2a2JPVzlRMUJqWDdFM0dNNWVTM2pKY3VtMFlkQ3M5VCtQdzdBaTNJYVdmbmFNZWFNMVNYTEc0clBnT256T2xsQ1VGbVNGOE9zc0wxOXlacDdGc2ZjM3kzQnhWQWhlblA3VWZ0NjdqMi8zSVdNN0tvclJVQmR1ODFUTEwvRWV0ejJ5emQzZitUQ0dKMVdHSUx2ZmNnS1paWDZmRWw1VDRqcHR1L2JnZVZZNy9tV0J5QkxJQlRUMWhwNXJXKzRtb0lWWDM5ODM0QytiNHZiTjE0SlB3S0Fody9XVTRrd2dsUGd4ZldZYXduZmQrOGZNU2xlMmdoOEhtTjhTMWp2dTg4R1FLL2FRNlJTMzE5VEdMTWhlS2tPRVJBQkVSQ0JHUktRd0dlR2c2WW1pNEFJaU1CTUNGaWJ1OVptaDlYTlVoOXNWajAxZnZlNS9XM3JLMkdNcTlIMktaZTVsWXV6emMzMHJzVFk0ZHkwQ1FuSEVOTlA2K1JkemRCZzYrMjA3cnZhbTV3eDNKUzNtOEJVMXpacnd5N0hLRzV0bktVK0w2N2poQ1BYNnBsc3E5N1NMT09UejFqcW04dldQWm5hdDdiT3FjNlhtUHZiOTB6Y0JJOTJ0Y2VJYy9mRkFBNzJRS2NuQ1hyeG9YZU8xR1RONVp3MW9LOU4xa25nbEdmYUdQMncxcytVZnFTT1kreDE5SXA0dEh0LzZydldHbnVmd1l4bDB2Qi9VR3pEQnN3L3hwd0o2ZDRCQUk3c3lkaG53UFNKMGtzSktrdnlza0liRDJrczdFTHRHd1BtSDlKYlFjaWNHU3VQNzMwc1ZVQTlWbC9HckxmRWV0eTIzeWZ3cWVGOWl0NUQzdDI4bCsvWkEzQ3VBaC9yUGNWNlBtN3REaGZjdW9mTGtKNkFVK2EyOVEwM2xzQ0hCNzVPQkhEMW5rNzFlYmw3R1FBS1hidFNpVENDVStPMURZQm5BSGhnd09DSHJOWDBuTXN4cHdpNUt3MTE4TTFhYnloZXZCMkFId2YwZTJwakZ0QmtaUkVCRVJBQkVWZ0tBUWw4bGpMUzZxY0lpSUFJREUvQTJ0eGRzbEhUNTYyZ0hTbCtRTk1ZOS9uaGgyN1dOVm9uZld0NEdQQnQ3c2U0L3kwQjNycnZwbXhFTE5IL1RTaWp0aGdnbFpGbG9MWTJzSDMxV2h0bnFjOExTN1N6YXN6MEdaL283WWNuZEJrQ01EWlo5MlJxMzlwMlRIVytoSEtpNTdVVG1qQ0hOK3E0b0lRci9OQjIxTXczeEJodDY3ejQ3T0RweUljQTNCM0EyWW1kdGVaeURUR3J6OU1JdTVIeVRMUDZrYk9XOWFHMTFzK1VmaVFPWTlKbHZqbk1BaTFtbHFHTkFpSjZZamt2cVhYMUx4cGp6b1QweWhLeGRoa2pmZDRtM2dqZ1FabWV2dGp1a3J3czd4aGp6NTI1aTlkQzVsbUpQRDV2R3FrQzZoTHRtbU1adWV0eDIyZWZ3T2ZjeG92SjdnQStYUkNRSldTcEpmQ3A2U0hPQ3ROTmZKWVhMNnVNV2dlVVNnMnQ5UTAzbHNESEN2L2J0ZTc0QkxDbk82OVcvSGJNU1ZQbFJXSE9Xd0pDZDFuZTFpZ1lPZ2xBMytHYVVoeXRNYkRhRWZQdU1OVXhzeGpvZHhFUUFSRVFnUVVRa01CbkFZT3NMb3FBQ0lqQVNBU3N6ZDBsR3pXdERZZDJ5SEtOY1NNTi9halZXb2FBVXNhTHRwTjhsM3FENTlUVDF4cmo5UjZCcDROS2dMUHV1NmtiRVVzd21Ic1pRNGdCVWhoWkJtckx3T3VyMDlvNHkzbGVXUGRFYXdCbEdEMXViSGFsSEpmc1Z2MDVmV05icHpwZlF1ZFlMZTZoOVErUmI2Z3hvb0QxQ0tOREQyOU9NNzg2c2RPV1NDTjNMcTgzeS9MS3gvd3B6elRybnN4WnkvclFXdXRuU2o4U2h6SHBzbHlEc21YWXJSVU9KcW16SFJlTk1XZEMybTZKV05jTm1MNzhGS1RURUgxTVNNVkducEs4ckhWbmJPTzMxYjVhNFlFTEROTmdSZmpDVTVlY2Q0TjFhT1NLY3RmanR2bVc5Nm5TenlVcnZGZ3RnVS9wYi8vVjRhZUlnVjVpdHUrWkU2SFBOa3ZNWE9PQVVxbHBiSDNEalNYd1lmL3U2andRZHRtK3VqelcrZktYOGlnNlpWNmN4OXgvdkw1bmNsZ2g0eXpQT1VNZGZyUDJCR084LzAxNXpFcmR4eXBIQkVSQUJFUmdwZ1FrOEpucHdLblpJaUFDSWpBREF0Ym1icTRoYUNpRFdTM1V1eml2QlZzYUZmQjAzZk1MbkthdDFZK3BsV3R0dEpVK05XU2RucTY1cWRqRjNycnZTbS9XVG0zOE42RTlVMTNiTEFOMWpsSGMyampMZVY1WWdrcTZDcWRiOG45MXhzMnVPWlRqa3QyNkozUDZ4clpPZGI2RTNJdDAzMzRVZ0wxN011ZHdENmwvcUR4RGpSRjV2ZzNBZnA2Ty9iRHg5SE1IQU45SzZQdzEzS25jN1hxdS9iaTdoMzZWVUhiWEpkYnpsZGVrUE5Pc2V6Sm5MZXZydXJWK3B2U2pFR2F6bUJDaFZVZ1lvdGNCT05CVDI1VHY5ekhtakRrd0xvUFBJTGx1WFBaNVRHUDRQcTdGdndpdDJKT3ZKSytRK2Nkd0tvY1ZhSGRLRVpZeGMxTTgwYVd3YWEveHpkR1M4eTZualhPNU51UitDRm1QMlYvcnVWVGFLNTlQME0zMjFCTDQxQXh4WmZVcDFFdklQazZJMGpjUHAremx5dnFHRzFQZzQzdm1rZldxY01vbmdDMjVqaytaRjVuczVZUytXL1JNeHBENzFCS3NsUkpMOWQwdmx2ZzVWbVEwOVRHYnkvTkw3UlFCRVJBQkVhaEFRQUtmQ2xCVnBBaUlnQWlJd1BrRXJNM2RKUnMxeVlkR1o1Nmk5eGs3bU84UEFPN3JqSGI4R0ZYeUU3QTg2dkRxa2tZazM4YmVHS2RTcmZ0dXlrWkV6ZTBMQ0F3bEJvamxiUmtDY296aTFzWlo3dlBDTW9EU3E4bi9BWENGRGlpNVhyaXNlekszYjFPZEx5SHp5eWQwemVVZVV2OVFlWVljbzUxY3FLNUxlVHBINGVsREFQdzJFc0JsblFHS0lXbTZVbWxQR3BiaGpHMUllYVpaOTJUT1d0YUgxRm8vVS9vUk9YekoyWDBoSzlwQ3JSQWt6R2Q1aTNnZmdIc0RZR2lZcWFVeDVrd29BOHM3MHFvQmsvUHMzVDBGbHhUSmxPYmxDeVhFN256RmhUVStJeFJhNFh5V01mT2xqWERxTVFzOXJHR0pyRXZPdThMRE9zbmlTcTNIN0J4RDhsQjhRWEZ3VndvVnA0U0FzdVlCeXdnUkRuVFZaVDFmYTMyUFd5SjF0alYwZmx1ZXdNNTBIb0c1MWswdFdkOXdZd3A4eU1xM1B2T1FCOTgxZitkQ1N2VjVZOHJ4NUxvK1hsUG5aYjFUaEhpbHNnNHkxcDdQMWdHQldOSGYxTWRzYW11QzJpTUNJaUFDSWpBZ0FRbDhCb1N0cWtSQUJFUmdZUVNzemQwbEd6WGJxWEFUNThXSG0zVytKSkZQM00zak0rYXpwRkliVFQ2WDg2eG5qRk9wMW4wM1pTTmkzQ2h2YnU0aHhRQXhGSzBOOUJ5anVMVnhsdnU4c081VmVqUFpvUWZHMDVwL2Yyb01xTFc4MWoyWjI3ZXB6aGNMbVhXNk1wZTdWZitRdnc4NVJ1VDZZZ0FIZXpySWQ0cjlBYnduRWdMTFB0S0pqdnN1TFJWR3dsb1QydnBUbm1uV1BabXpsdlZ4c2RiUG1INWNFUURGVkVNbENybys0b1RwWFhXR0Nyc3Nnd3RQeURPa3dzZUc2bGhFUFdQTW1Zam1uZitNZWtyUEJhMEI4L2Vla0xLaFl4amFwdEs4YnVybVJaY0l0MjFUamZzMnRMK1dNVFBIYzFwb0c2YWF6emQyWFNGeXB0cVB2bmJOZFQxbWY3WnhYdm5vL2JZcmhSanlROGZMV2hOWVRpMkJEOHN1S2RCbysyenRONXdGWURjQUp3ZEFDaEZBUGJNNStQWGtDUW9GcmZlMVV2c3VBUmc3cy9qVzU5VTU3aFBBaG5yRkNtbmoxSG14RDc3dkZucnA1THorb3FlejFuYzNMK1ZCUndyZ0tLNHFuU3hSY093MzVoekdyRFJEbFNjQ0lpQUNJakFUQWhMNHpHU2cxRXdSRUFFUm1DRUJheU5ucVViTjlhSGtoc0dyQXNhWEJybkhPaGYwM0tSWDZpY1FzcWx3ZjJlb3pPRklRK1lSbmdKQ1QrM2x0R0g5V3V1K2l6RWlsbXlYeWdvbk1LUVlJTHhWdGl2L0hPT2F0WEdXKzd4Z1A2Mzd0WXRGQ2VPVGRVL205bTJxODhXYVd6NWpmNHhSeEtwbkNyOFBQVWJiT2k4K2ZhSTFNa24xZVBGRWR4cTZqMnNwSTlwZkFYZ0xBR3UvSXVXWlp0MlRPV3RaSDVlU0FoKytNNTRDZ0NFT2FyOFBYZ0xBYTEwWXc3NitoUnJ2UWd5WUZQZVFWWWt3VVNYdi9USG1URXo3ZlNLSzFvRDVYMDNvalQ3dkJLWER2NVRtRlRKMytOeGdpTEZQeFlBcmxEZmt1eVBWYzFxaEpvNVdqRTk4Vmp0TXl4Q2RudXQ2VERhV1Z6N21LZkV0Ry9JY1lWMDFCVDRzdjhTM2Z6dW5yZ1RnQTg0TFV0ODhpMTFYTGErRnYzYWV5bmlBYUVySitvWUxmVWVvMVNmTDB4Sy9EOS9zRWNDVytCWmM3ZHZVZWJHdHZ1K1cwUHZVMnVQazNpYTlObEtFWERKWkJ5aFR2QWZOWWN4S01sUlpJaUFDSWlBQ015SmdiWmpOcUN0cXFnaUlnQWlJd01RSVdKdTdTelZxcmc4VE43MjR3Zm5nd1BGN093QitNTmMrdmMxM2hEdTZFem84NVRLMzlDZ0FML2MwK3JUbU5QQ2VqZEhxTzRrZDJ4N0Fod0JjditkNmVnUzVVeE9DN1h1SjVhZGVadDEzS2NiUTFMYm91alFDUTRzQlFsdHBHYWh6ak9MV3hsbnU4NEo5dkpyem1IYWowQTY3dFpuR2paendpTlk5bWR1M3FjNFhDN052alk0MWlsaDFqZjM3R0dNVUltaExPUTFPRHl2SGVvUTN2RmZ1Q2VCZEdkQ3YzYng3SEErQUlTdXNsUEpNcys3Sm5MV3NyNzNXK2huVGozWStmZG9KYnhocW9GYTZod3NSdTRXbmdwaVQwSHNCT0FhQXI3ekRBVHd5SVlSY0NJTWJOSVk4L3Nkd1lERnBqRGtUMHo3TGdIazM5OTNRNVltcFJ2aWFHcnpvTWVBNEFGdDZ3SHl6RVRGeGpwMGVBNjlRWHN1WXlXcm9WZUQ1bWU4VWZjM2RIY0RaalVEdXM0WDZVNklZMzNzWFBYYnQwWWl5UGxtaW9oSExtUE42VEd3dmN5S2VQb1Fsdm1kREJidWh3b0gxdGxyUDF6Wi9LUkZneU41TmlrZTZxenB4TmdVS2Zhbm1HbmRwNTkzeEtBRG5STnhUMWpmYzJBSWZkc1gzelVIeDVUKzRkNU5iZC9TN3RCQ3hKSytMdWZlcDJKQzd2dUcxaEgrZkFYQ1h4bFBvejQwNUVqS2ZTOTJUYlZNb3RxVmdpSHQ4ZlNubDI2ZmttRVhjV3NvcUFpSWdBaUlnQWpZQkNYeHNSc29oQWlJZ0FpS1FSc0RhM0YycVViT0xwaVVXV2IvbWx3QWU0WXd1SlQvb1dRODNDcmhKL0VJQXQyd01iTG5qbERaNzhxOEsyVlNnQVpIR3E5aVQ0aUdiQnc5M3JvZnpleEpYZ25YZnhSZ1I0MnFPeTgxTlJNNWhHdkU0Lzg5d0hwVmVBSUNoREphY3hoQURoUEMyTnRCempPTFd4bG1wZGNoM2tueWRRU25qazNWUDV2WnRxdlBGTjZkODQxM0QyQnd5djJ2bUdXT015SmdpR3hxNysxTEthZkFRb1Z5T0FlcnE3dDJHeHZ5UWxQSk1zKzdKbkxXc3I4M1craG5Uai9YNVJMRXhqVk5mTGlnYzRENFJoVnB2YWp3MjBaalpsMkpQUWxPSThqWUEreG1EUzlIUXN3cUtmRmd2eFpvMDdQd0xnRU5ESnRkS25qSG1UR1FUNGZQK1FNRTd2WFl4Sk1aNnFoRk90Z1l2ZXZGaCt3ODB3RkRBei9sRkwxZTU2WExPTVB4NkFEODJDZ3Y1N3FESEFyYWY5M0NPY0hpMUtXd2o3eFVhc0dQV2tWdzJJZGY3UXQ2VTh2WVcwbzZhZWVhOEhwT0xGV2FLZVhKRWx4UUY4M0NTTDd4ZU96NjFCVDZzaHdkdk9DKy9rRGdwK0R4OGtpY2tZbHNzKzN4QXdqTXNSQ2hJVDNmMGZFTHZiQ1ZTZTZpTDN2cSs3OVpQaWdWRGsvVU5Od1dCajg5cktFWFMzTGVoc0lraDkxWlRxVy9CMVRKTDhycUcyNnQ3amd1bFd1SzVZb2xwS1loNlVPQXpMT1N3QWU5SjdzZFJ0SjZUdUQvM092ZnUybGZPMTl4M0VlZDVUQ281WmpIMUtxOElpSUFJaUlBSW1BUWs4REVSS1lNSWlJQUlpRUFpQVd0emQ0bEdUUi9LV0pFUHkvb0pBQW9pdVBIODA4Ung0bVVVOWZCRTh3T2JVNjkvMjNpdHVNcEtXYm5qbE5HczdFdEROaFhvaWVDdkl6d2ljZU9IRzUxMzk3UXVWVGlVM1dFQTFuMDNoYzEvenZYM054dStYU2NVYVN6Y3A5bGM1T213cGFZeHhBQWhyQzBEZFk1UjNObzRLN1VPK2NLWXJETW9aWHl5N3NuY3ZrMTF2dmptMUM3T20xS1hKNFlheHVhUStWMHp6MWhqWkczU3M4OFVoL0I1Rm1yTTRmNEJ4UUlVWi9vUzEvRDluYkVvbEMwOTk5QW8xbldDdXErTWxHZWFkVS9tckdWOTdiVFd6NWgrOU0yblUxM0kxeU1EeEFpK01hRWhqQ0p2anArVlh0cUlwQjhUYU9ocHk5ckplU200bEZINGV4ckI3ME16alpoOHY2WFlnLzI1bnFzdlpYekhtRE1XKy9YZmZRWk12cGZ5TzRGRzRmV1V3c05xV3kxZW9kNjlLRjZrWjlSL1RReGp4M2xEVmhRVTBjUEF6b0hpODFCUEphOEU4SStSWGpMV21WTzB4dStYRndPZ3lJY3BaaDJ4eGpEM2R5dXNHdHRPYjMxelQzTmZqME5FdXh3anJxRlBpQkNzOEYyQnp6MkcyclRXK25ZT0RDSHdZVjFjSHpqLzNodjU3T0o5eHZlZkJ4aVRObGI0dWxvY1JRcHNseVZ5cGlpQ0ljY29uc2xKTjJ6RzUzbHU3V0E1S1dJYzZ4c3VwY3ljUG5WZDYxdVBmdVU4cXoyOTQ4SWFiUy9KaXdLZms1cndZdHNCNERzVG55dGZ6NERIZmE1M09DL2VmY1hFck4wVXhGRW9maStqVFR5d1NIRWIxOU9VMExNN3VucDRPTEV2NVlRRUt6bG1HY09qUzBWQUJFUkFCRVRnb2dRazhOR3NFQUVSRUFFUnFFWEEydHhkb2xIVFlzMlBVbjZjYjJ0bDdQaWRIL04wU1V0akhVK3RNb1JYbDNlZnJRQnMzV3k0Y1VQbnRzN0Y3aDA4SjdSenh5bWhLOFV1Q1QwcEh1SVJpWnY5RExuMXFoVWpVVmREUzdzYWpvVmgzWGRqYi82SGpBbFBtWk0xdmZvc01ZMGxCckJZV3dicUhDT2h0WEZXYWgwSzlRQlFJc3hReTlPNkozUDdOdFg1MGplZkxJRkl6anl5NXZCWXY0ODFSbVJONCsvQlJzZGpQYzc1QkZxclZZVThXNW1mSHQzb1hZWEdsVlZ2TWR5TXArQ0hSdk8rbFBKTXMrN0pHblBRV2o5ait1R2JUeTBuUGo5NUd2M2R6bE1CLzcvUGFNTDN3aDBBN091TW5qNER5ZW80cEo2RTVyeDhmS0FYSGI3SDB1c09RMlRFQ05uNUhrM2o1OSt2aWRiWi9wVHhIV1BPeEs1WHZyV1Y3NmIwVmttQjlXcml2OU9RZkhKc1pVYittcnhDd3NhMXplTWNwYmVObzV0eFB5K2dqelN1VTloR0QxSTBtRExGaUE1Q1F2ZTB6ZUQ2K0ZnbmNna05oOE14Wm1oZ2VzQjhTSE1QOFoxNk5jV3NJd0U0c3JMNEJOVU1vYlpySThMNlFWWU4wN2g0N3VzeEtZWjZ0NlNIamI4TDhCYlhKeEtsZHovdVQxRGsyWlZpN3JYVjY2M25hOTlNNFo0TFJVdmNOL0Y1UHVrUzAvbG1YK3c3MVhwWjNKL2hJWU1RcjBlaGZWaXRnKzljZk43ek9YeWJ0Y3BUQkMzV04xeEttVFh1YnArM0tvWTI1SE5yUGZIZDlMRENqU25KYTFYZzB6YVQ5K2t6WE1peFVFL2ZxMTZjV2pGMFY3ZFpOZzlpeGJ5UHhSeGk1RE9iOXlRUGdvVzBuZTk2VDNUaUlHdVlVa0p6dFdXV0hET3JuZnBkQkVSQUJFUkFCS0lJU09BVGhVdVpSVUFFUkVBRUlnaFltN3RMTTJxR29xT1I1ZDk2dkp1RWxsRXlYKzQ0bFd4TFNsa3htd3JudXRBUkZFbjlsNnVNZ2dBYU0zbGFhZFd6VVZkYmNrNEdwZlN0NnhycnZodDc4Ly8yem9VMHVmb1N2Uy94eE5jUzAxaGlBSXUxdFlHZVlqUnQ2N1EyemtxdVF5SGloSkplWkt4N01yZHZVNTB2ZmZQSjUyV2lsckhabXR1MWZ4OXpqTGo1L1dFbjRPanJKOE1pVXVqN3JVQVFvVUs1dGpodTB0TUk5WUcxa0pnTWFjTXdVQXdMdWtWSDNRd0Q4RDUzbXJpdmFTblBOT3VlekZuTCt0cHByWjh4L1FneEtQZTlvM0NzK2E3Q1JHR1A5VjdUMTU5Y01YTklxTlAxdWxzaE93MU1GQUszWHFjb3dPYnBiYjQvY3k3ZHhUQ01wb3p2R0hNbThIYThVTGFRY0R1ckY5Q0RDb1ZRdjB1cHpITk5UVjR4QXJIVkp0S3IyRWNhVHhXZlcrdnYvM1RyMzk0ZEFpaGVIeXM2aVBudWFOdkh0bEhNU0tIQmx4cURKY1BDTU5ITDNjMGJUMFEzQm5BN1o1VDNoY3lMV1VjS0QvbEZpdk9KUmlqWW8rRzhSRGlaMnYyd3l0K0U5VGprUFdHVnczKzY1L0luMSs2bFAzT2hkbmlJYUQxeHJQa3RUV0ZKbndlYzJIdXRyY042dmg3aXhKNVg3aGxNOW9mdkdoOWQrZjVuMXV1NkVHWjk3eWhkeGVXRU0ydkxTMW5qK0V5bW9KZDdHQlJTMGNOUG16aStGQVp5RGRuVEhmTHFtOWNwWWh6ckd5NmxUT3UrUy9rOTFGdFZXellGaUJUQWZqdWxNczgxSlhsMUNYemFxdm11eDJmTE1lN1AxV2RMKzN5NVZlTlJkUS8zTG41Tm81OHNqd0pZdnMvSHBoalJHc3RtWFp3M0RFZkg4TE9yaWUrUFBBakc4SC84amdoSnVmZGx5VEVMYWEveWlJQUlpSUFJaUVBd0FRbDhnbEVwb3dpSWdBaUlRQ1FCYTNOM2FVYk5HSHdoWWFCaXlzdkptenRPT1hXWHVwWWJBTnc0RHprSmwxUG5QemtYejJOdVdGdjMzZGliL3d5M3daQUhWcUlMOUlPc1RCdjYrNWhpQUI5U2F3TTl4V2phMW1kdG5KVmNoM2dTbDU0dGFNenJTeVZQYkZyM1pHN2ZwanBmK3RnK3lvVTQ2UHE5bHJGNTdLVmk3REVLQ1ZkSk1RMDlRb1NjbUNYUDBGQTVxZXhwb05yTEdiZDl4b1NVWjVwMVQrYXNaWDM5dGRiUG1INmtHcFJUeDJMOU9ob1NHVzdodU13Q3IrNUUxVllva3N4cUxuSjV5dmlPTVdkUytrM0RGejAvOUhuSVdDMlQ3Nm8wdHRQNFZ6clY1cFZpQUUvdFk0cm9nSUljQ2dZb0VCZ3l4YXdqTmR2bE02UlR2RVNETXNVaG01QTJaVDBPRFMrWE9tYXRnZjExSXdoOGVGOVFMUGUySGpGeGFwL1dyK05hZXA4MUlYTnEyUlR5MGZ2WVUxSUxTTHd1Ull4amZjT2xsSm5ZZlBPeVVHOVZMS2lXRUxFa0w1L0F4NFFSbVNGM240c0NNM3JtcWIwZnQ5NHRoaHlqNXpGNk1VeE5KY2NzdFEyNlRnUkVRQVJFUUFRNkNVamdvNGtoQWlJZ0FpSlFpNEMxdWJzMG8yWXNaNTVJL2hzbmh2Q2Qxb3d0TnpaLzdqakYxbGNyLzkyZEcveGFMT25PLzFrUnh0RmEvYlR1dTdFMy8wTUZQcTkzbXpHMU9FMjUzTEhGQUgxc0xBTjFpdEcwcmN2YU9DdTlEbkVEL2kwOUhTMTlZdE82SjNQN050WDUwb1hYWjN5dWFXd2UrMzRmZTR4NGY3M0xDV2I2V0tTY3pJMEpsUk16QnF2ZVlheDFKK1daWnQyVE9XdFo2dm9aMDQ4eERjb01uOEQzS1hvYUtaSEdFUG1rak84WWN5YVZiNmdCODZ2TzQ5R1pxUlY1cmh1Q0YvY3lIOW1FSFg1cFphTjlpc0NIYU1ZUStjU3NJeFdHL1k5Rit0NnhLRUNqRndoNlRkMkV0Q25yY1V4NHVkaHhPOTU1OXFHQjNjY3I5VjRMZVUrZzRDNDBOR1JzLzVpL2hJaGd2ZDR4UkQ0cFloenJHeTZsekpReENMa214SXNyeStFM0NiMEI1Z3FadTlwVWt0ZFFBcDhYdXRCWm9ZY0Erc2FDSVdBcDJxZFhxU0VTd3hSVEtKZjd2Q2s1WmtQMFczV0lnQWlJZ0Fnc2lJQUVQZ3NhYkhWVkJFUkFCQVltWUczdUxzbW9tWU4rR3dBdmNxZWxjOHBKdlpadXJTbGMyWVJFZDc3LzJzUlM3M1BSbmRKSGJuVHdWTkFSRTNFMWI5MTNZMi8rSzBTWFBjdkdGZ1AwdGREYVFFOHhtcloxV1J0bnVjK0w5VDVkeVlVTHVrMUhaMHVmMkxUdXlkeStUWFcrZE0walgvaVlrbUhSN0x0czJCeFRHQ042U2FHaGdxZlkreExESHZFNWVVWUVudExpV1lhVjRIUHFDNjROMXJxVDhreXo3c21jdFN4MS9ZenBCNDBWejR3WW8xSlo2Vm52Q1kyUjlKeFNCYnB5TGczZ2VjMjhlMFRoY3J1S084d1plMzRaV2RjWWN5YXlpWC9NZmxNWDFzSTZKVTloT3NWQU5kS1F2UGdjcDJEM2VqVTZraENpYTdVWkZMQzl4cTFwbFpwM2ZySDhGdUgzR3UvUlhFTm1ianN0TDRrTTAwUnZmWnVTTm1rOXBxRGtaUUFlVm5CdzFvVXZZd2w4M2d1QWg2Y2VCK0RRZ3YxalVmU3k4L3hLOXg1dE52U3V4SU12bHlyYzd2WGlHUDd5Z1FBby9veEoxamZjbEFRKzF2clU5cnZtTjBsSlhyVUZQcjl1d3IwZDZQYlBTbm1vcHFkeWVuT21KOGhhaWU5NEJ6aVBRU1hhWFhMTWF2Vlo1WXFBQ0lpQUNDeVVnQVErQ3gxNGRWc0VSRUFFQmlCZ2JlNHV5YWhaQXZkMTNPWXROMTYyS0ZHZ3B3eWVubit0TTdqOHRISmRReGZQemZaWHV0T2p1WFV6THZnRG1zMnc3K1FXVlBCNjY3NkxNU0lXYk5ZZml3cnhKRUVQQVF6Tjh2MGFEWmhCbVZNUUEzUmhzZ3p0T1VaeGErTXM5M25SMVordVVGRmMreWlFT0xuZ1BMSHV5ZHkrVFhXK3JDTzh1Qk5DOG1SL1Z5b1pGcTNnOEJVcGFncGp4Tzkrbm1ROTJPZ1JoU05QamhTc2xqS3dNM1FlUlI0L1dtbWp0ZTZrUE5Pc2V6Sm5MZXZEVzdvZk53VHdSQUFNdjFiN25aRGgyNTdlZUpYOGRwRzdvYnNRenM4N3VwQVlONnBRRCtjV3hVbGZUeXg3akRtVDJGU0VHREJyUE90VzJ6czBML2FaenhDdVh5VTlkWjRLNE9FQVBnemc5NGtEUWxIQnZaMm5vYXNrbHRGM0dUMnYwVkRLZnYrd2NObXB4Zms4WlBEOW51RzVmcHhhK0VTdjI2VDFtUE9WbnJGZWtIa3ZVWFJHOGROTDFyemJqaW53NGZUaHM0YWh1OTljNE1BUDV6UEZVQlN3MUU0MUQzeXhIM3p2b1plamxIWE8rb2Fia3NDSDQrUUxGZHlPWTgxdmtwSzhLT1JsNkRudW01Uk9ERy8vMkVyN01iWGUrZmhNNUVFZENsNWpoZHcrZmlYSHJQUTRxVHdSRUFFUkVJR0ZFNURBWitFVFFOMFhBUkVRZ1lvRXJNM2RwUmcxU3lQbVNlZDluWkdPbTZpbEREdi9DZUJJQURUa2ZDTnhnNmQwWDJ1VngvZWZtN2tUZlBRb0VadU9hUzdncWVkUFJScEJZK3RKeVcvZGR5bkcwSlIyK0s3WjNwMm91a2xISm9hSzJBZkFaMHBYT3FQeXBpQUc2TUpsR2FoempPTFd4bG51ODZLclB4Uk5VcVIzclpVZmVhcjgvczNHNE84S3poZnJuc3p0MjFUbnl6cENuMWVKMG1IUkNnNWZrYUttTWtiWGJnUnNESlZ4WFUrdmVGcVhYbng0ZWprbTBjQk96d3pQYlRiWFk0M1lOQzRkMUdORXQ5YWRsR2VhZFUvbXJHVjl6R3IwZzNWUnpNRCtrUDNkQVBENVdpTHhHY3pRUi9SNndMQXFReVVhbDNkM25pTjN6cXlVWXA3RDNYdHRybGg5akRtVDAzMWZpQ1NXVytOWnQ5cmVzWGp4RytsdkFmeDloa2NmR2dqNW5rL3ZwVndIVXd6ZVhXUEhlNVZoRGZuOVFFRklUbXJ2VHdyWFNudlV5bWtYdjYvb1JZZ0NrYTVVMDJ0VVRydExYYnRKNnpFOWc5QklUZ0ZMN0Y0RGhRSC8xQ01LSFZ2ZzA0NzE1ZHg3QjRXeWZIK0pTZlIwdzduTWRhTFUraEJhUDc5ZDJHYUdjYzhSTTFMa1NhL0c5TmpFa0pzNVhrNnNiN2lwQ1h5NnZ2OVcrZGYrSnFuQml5R3YrTng3VUNPcXM3ejMrZVlhNThVYm5EQ1BIalZySjc3ejdlVEVnTnlUYzlsZDBBQUFJQUJKUkVGVWkxMXIydlp4SDVQdnJQUjBsZnUrMTlYbkdtTldtNjNLRndFUkVBRVJXQWdCQ1h3V010RHFwZ2lJZ0FpSXdFWVM0TVlPRFhhM2F3eGpkd0N3YXhQT2l4dFczSlRyU3R3RS9oa0FmZ1IvRHNCbjNlYjF0NXFUVytkdEpDRzdVNWQzTWRiLzBuSGNibTF6Z1NjUVQzT244M2l5N2FNREc3dnNIc3d6QitjcFQzYlNJOVZWbllHQ0lSYTRZYnBVenozekhFbTFXZ1RDQ05Db3lUQUdYYWwwV0xTd0ZpbFhEUUxjWDdoK0UyS0x6OVM3QUxoNWgrRG41KzRkNUFPTjJQYWRqVUgrOUV6alVvMSt6TFhNclJvREJ3MDlmQytrMGVSV0FIanluKytGWFlZVGV2M2dLV2NLR2ZnZjMzR204azdJdmpDc0owWHRGSjFkczBjODFyN2I4cjMyaTQxQTZDTk9KSHoyWEFkUjdTNUM0R3JPcXdFOVEvSDdpUGNCQlVDcmlXSWUzZ01VR1I3clJJYWNRM3ozcjVuNDdjSHZ0djJjb0kzdndWdDNWTWkxa3Y5UjBNTnZ0aE1BZkduQzMydyt3M2x0cjFFMXh5dTE3RTFZajduWFFNK1duS3RjaDNmb3VJKysyM2pGK1RpQWYzUDMwWkNpVUk1TmpvQjJWWlMxdHhOQXJ3cG51QlpRNkhEU2lQM3JtbjhVUnR6QTlaM3ZXdlI4MS9XY2I5YzRmbHZ6WUJJUE5wem8xcjBjVVUvcVBhSHI2aExnT3pqbkFaOTU5SmJHUDMzdlR2U214cm5ONXgrRldHTytqL08rdTRXYjAyeDMzNXptTTVHaGhObGVoaDdtZSt1bWVZV3JPMHRVdWdpSWdBaUl3RVlSa01Cbm80WlRuUkVCRVJBQkVSQUJFUkFCRVJBQkVSQ0JTUkdnb1pXR3lhN1FPNzl4bTlDZm5GU0wxUmdSRUFFUkVBRVJFSUVZQXI3UU43VzlSc1cwVTNrM2kwQ093R2V6U0tnM0lpQUNJaUFDSWlBQ0lpQUNpeUlnZ2MraWhsdWRGUUVSRUFFUkVBRVJFQUVSRUFFUkVJRkJDZmpDeFh5dzhicXhmeFBPNGR4Qlc2VEtSRUFFUkVBRVJFQUVTaEdnVnlJK3orazViRDNSVXdnOWNUR2trWklJbENZZ2dVOXBvaXBQQkVSQUJFUkFCRVJBQkVSZ0ZnUWs4Sm5GTUttUklpQUNJaUFDSWlBQ0lpQUNJaUFDSWpBN0FwZHNYSzRmQllDaEQ3clNYemVlZlhpeVgwa0VSRUFFUkVBRVJHQ2VCTzRLNE9nbTFHN1hIalBELy9FZFlPalFUZk1rcVZiSEVwREFKNWFZOG91QUNJaUFDSWlBQ0lpQUNHd0VBUWw4Tm1JWTFRa1JFQUVSRUFFUkVBRVJFQUVSRUFFUm1CeUJYVng0cmkwN1d2WTFGNTdyeDVOcnRSb2tBaUlnQWlJZ0FpSVFRdURpQUk0QVFHOTlYZW5SQUE0TEtVaDVSQ0NCZ0FRK0NkQjBpUWlJZ0FpSWdBaUlnQWlJd1B3SlNPQXovekZVRDBSQUJFUkFCRVJBQkVSQUJFUkFCRVJnYWdUNHJmbHlBSS9zYWRqVG1uOS82dFFhcmZhSWdBaUlnQWlJZ0FnRUU3Z3BnSThCdUVMSEZUOEFzQnVBYndlWHBvd2lFRWRBQXA4NFhzb3RBaUlnQWlJZ0FpSWdBaUt3SVFRazhObVFnVlEzUkVBRVJFQUVSRUFFUkVBRVJFQUVSR0JDQks3ampIN1g2bWpUV2M3b2QvS0UycXVtaUlBSWlJQUlpSUFJeEJHZ1VQY3BQWmU4QWdBOStQeDNYSkhLTFFMQkJDVHdDVWFsakNJZ0FpSWdBaUlnQWlJZ0FwdEVRQUtmVFJwTjlVVUVSRUFFUkVBRVJFQUVSRUFFUkVBRXBrSGdBQUJIOWpUbHJRRHVEK0IzMDJpcVdpRUNJaUFDSWlBQ0loQkpZR3NBeHdLNGRjZDF2M0ZoT0Q4WldhYXlpMEFNQVFsOFltZ3Byd2lJZ0FpSWdBaUlnQWlJd01ZUWtNQm5ZNFpTSFJFQkVSQUJFUkFCRVJBQkVSQUJFUkNCU1JDNEpJQ2pBT3pkMFJxZTVOOFh3REdUYUtrYUlRSWlJQUlpSUFJaWtFTGdyZ0NPQnRDMXQveEJBUHNET0RlbFlGMGpBb0VFSlBBSkJLVnNJaUFDSWlBQ0lpQUNJaUFDbTBWQUFwL05Hay8xUmdSRVFBUkVRQVJFUUFSRVFBUkVRQVRHSnJCTGMzTC9CQUJiZGpUa3F3QjJCM0RtMkkxVS9TSWdBaUlnQWlJZ0Fra0VMZzdnQ0FEMzZibjZZUUJlazFTeUxoS0JjQUlTK0lTelVrNFJFQUVSRUFFUkVBRVJFSUVOSWlDQnp3WU5wcm9pQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FodE9RQUtmRFI5Z2RVOEVSRUFFUkVBRVJFQUVSS0NiZ0FRK21oa2lJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFKeklTQ0J6MXhHU3UwVUFSRVFBUkVRQVJFUUFSRW9Ta0FDbjZJNFZaZ0lpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUVCRkFoTDRWSVNyb2tWQUJFUkFCRVJBQkVSQUJLWkxRQUtmNlk2TldpWUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSW5CaEFoTDRhRWFJZ0FpSWdBaUlnQWlJZ0Fnc2tvQUVQb3NjZG5WYUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCR1pKUUFLZldRNmJHaTBDSWlBQ0lpQUNJaUFDSXBCTFFBS2ZYSUs2WGdSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVZQ2dDRXZnTVJWcjFpSUFJaUlBSWlJQUlpSUFJVElxQUJENlRHZzQxUmdSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkV3RU5BQWg5TkR4RVFBUkVRQVJFUUFSRVFnVVVTa01CbmtjT3VUb3VBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lqQUxBbEk0RFBMWVZPalJVQUVSRUFFUkVBRVJFQUVjZ2xJNEpOTFVOZUxnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FnTVJVQUNuNkZJcXg0UkVBRVJFQUVSRUFFUkVJRkpFWkRBWjFMRG9jYUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FoNENOd1p3QnM4dno4SXdIRWlLQUlpSUFJaUlBSWlJQUlpSUFLYlJrQUNuMDBiVWZWSEJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUmdvd2hJNExOUnc2bk9pSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJYkJvQkNYdzJiVVRWSHhFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUWdZMGlJSUhQUmcybk9pTUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJckJwQkNUdzJiUVJWWDlFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFRMmlvQUVQaHMxbk9xTUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJakFwaEdRd0dmVFJsVDlFUUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSMkNnQ0V2aHMxSENxTXlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FwdEdRQUtmVFJ0UjlVY0VSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJLQW1nWXNCdUE2QVV3SDhkODJLVkxZSWlJQUlpSUFJaUlBSXRBUWs4TkZjRUFFUkVBRVJFQUVSRUFFUm1BcUJmUURzMzlHWW53RjRMb0N6cHRMUWliVmpGd0JIQW5nTmdOY0QrT2xJN2R1cXFmdlJBSzdmVWY4ckFYeGhwSGFwMnZrUnVET0FOM1EwKzNRQTl3Qnd4dnk2dE5FdHZneUF5M2IwOEE4QXVINy9kcU43cjg2SmdBaUlnQWlJZ0FpSWdBZ3NqUUR0YW5jRThBb0FOM0Q3R085WkdvUzEvdDZ5K1U1N1JBZURvd0I4b0FLYkE1dHlkMW9yOTF3QUx3YnduUXIxVGEzSS8rWDJnZjREd0RzQmZHTEV2YUNwc1ZGN1JFQUVSR0RqQ1VqZ3MvRkRyQTZLZ0FpSWdBaUlRQ2VCbXpWRytEY0J1TUxhcis4QThOaUJtRjNWZllSdXYxWWZSUndITkViY0x3L1VEbFV6SFFLdkE4Qk5tdlgwN3dEMkEzRDJkSm82bVpaY0hNQVJBTzZ6MHFKakFEd0RBRGQ2Zmo5Z1MybmtmeCtBM1R2cS9Bc0E3eDJ3TGFwcTNnVCtONEN1RGZMdkF0Z1p3QS9uM2IyTmEvMC9PUkhtZXNkK0RlQU9BRDY3Y1QxV2gwUkFCRVJBQkVSQUJFUmd1UVQ2M3YyVzhzMTNRd0RQQThEK3R1bWJBUFlDd0FNSlMwMTkzM0QvRE9EUUNsRCtMNEFIckpXN3BPK1Bod0o0OVZyL3oybStsN2tmUk9IWlJ5b3dWNUVpSUFJaUlBSVRJU0NCejBRR1FzMFFBUkVRQVJFUWdZRUo4S1RIUjV0TmlVdXQxZnYvQVB6TlFHMjVCb0NUR2k4TjJ5MzRnM3dnMUxPb2h1K2w5RUp6MzQ3V0hnL2diZ0M0V2FGMFlRSTNCZkN4RHJFZWM3MGZ3TDBCY0pOcmlDU0J6eENVbDFHSEJEN3pHbWNKZk9ZMVhtcXRDSWlBQ0lpQUNJaUFDT1FRV0tyQTU1SUFuZ1BnNEI1NGh3TjQ1SUs5VjByZ2szTlh4VjNMZzE1dmRkNXQxNjlrcUxoOW5kQW5ybFRsRmdFUkVBRVJtQTBCQ1h4bU0xUnFxQWlJZ0FpSWdBZ1VKU0NCVDFHY0txd0FBWjg0WkVqaFdZR3VERnJFVXdFOHBhUEdNVFoxSlBBWmRPZzN1aklKZk9ZMXZCTDR6R3U4MUZvUm1Dc0IzM3NHK3lTUGozTWQyWG0zK3hJQXJnaGdpOGJvLzNNQTU4MjdPMnI5U0FSb28vbHo1NDNrd1FCK2tkRU9HdjUvbDNGOXlLVkxGZmh3bkJqK3FVL2d3L0MwUEdERGNFbExUQkw0RERmcTEybzhScDBJWU4wak9sdEFUODU3WjY0ancvVkVOWW1BQ0lpQUNDUVJrTUFuQ1pzdUVnRVJFSUdOSThBd1RUeUpNa1JpdUppZkpvU042Uk9rRE5IbUtkUlJlc05hQXArd1VlVjlzUWVBUzRkbFQ4cjFXK2VCNVdkclY5KzU4VzcwaHFRUzYxNzBOQUN2cjFERmxaMWhac2VPc3AvZG5JSjdVb1U2NTE3a3RrMzRtdzgzbm85MjZPaklCd0hzRDRBeDZJZEtVeGY0OEQ3bTNMM2RVRUJHcm9mM3pickw3cEdiRkZ6OUpnaDhwcnFHY3hBKzRjSWhsdktLSm9GUDhOUldSaEVRZ1F3Q0V2aGt3Tk9seFFud081RkMrMzl3NHA2MkFvWWM1bk54L2R1dWVBTlU0TVlRNEZ4NnVwdEw3QlM5MTk0ajBUaC9XeGVLL2NrQTNwYXc3eFlLZGFrQ0gvTFpCc0NIR3U4cE4rcUJkVnF6djdNbmdPK0V3dHlnZkJMNEREZVkvTlk4RmtDWGZmZlJBQTRicmltcVNRUkVRQVJFWUF3Q0V2aU1RVjExaW9BSUxJSEFnUUIybW5oSHFlaHZqZlJkY1l0ck5mKzdqWnZRblFIOE1MSUNDWHlBL1pwTm43TWp1ZlZsbDhBbkRHUmZHTEd3cThOeTljVUk3OXNjQ1N1MVhpN0dtWDl2aGVKOXJHdkZiSy9RalVHTGZCU0FsM2ZVeUpPRGQzVWJqME0yYU9vQ0g4c3dPQ1NySWVxYTgzMnpDUUtmcWE3aG5IdWxSY01TK0F4eFI2c09FUkFCNnpsZWVtMFRjUkhvSTBDdlBhOEFRRThyWFNsSG9DSHF5eUp3QXdEL0N1Q1dhOTFPbVVPWGQ5L3B1N215V01ZREFYeS9BdElsQzN5SWszc2lSNjJKKzFZeEx6VlVsd1ErRlc2Mm5pSmYxaHllcFpCblBmMmdFUWx5RGZqMmNFMVJUU0lnQWlJZ0FtTVFrTUJuRE9xcVV3UkVZQWtFaGhUTXBQSmNEWGt6WkhzbDhFa2JzZEliMWhMNGhJMkRCRDRYNVZSTDRPTVQ4ZkVFNDd2Q2htd3h1YTdVQ0VrL0FPQTJIVDErbjNNTlBxVDNIalpEQXA5cFRUOEpmTVlkRHdsOGdENEI2N2dqczZ6YWFUQjhSS0V1TSt3TUR3ajhGNEJmQXZoS1UvWVpqWWM5ZWlKVUVvRWhDTXhWNEhPdkpvekdYaDVBRE92MFBPZmxkZ2lPL0w2aDE1bkw5bFQyR1FBMFRqUGNhODNFUFdrS1pHN3RxV1QxVUZMTnRzU1dmWGNBNytqeG5OQ1dSYStuOVBDakpBSjlCT2hkbEI2Zjd0T1RnUWZ5YU1BUCthYnJFNTN4R1UxUHVDOHAvTHhldXNDSHZGL3JCRlJkdzdmVVVGMFMrQXl6M3ZtOFgxTjh5bldqOWpOOG1KNnFGaEVRQVJFUWdWNENFdmhvY29pQUNJaEFIUUpEQ21aU2V5Q0JUeXE1Y2E2VHdHY2M3aEw0WEpSN0xZSFA3UUY4Qk1ERk80WjZYeWRtR1djV1RMTldiZ1MvcGFOcHZ3RkFkODBmRzZIWkV2aU1BTjFUWmE3QTUyS05oeWdLeWZqbjBJbUdVTDVMcmFmL0JNRDFnS0tDb1JQdkxZYmJDTjBzbGNCSEFwK2g1MmhYZlVQTXc5TUJ2TnNaS2I5YU1SeklGSGlxRGVNU21LdkFoKy9PdkVmNkVwOHJkd0Z3M0VCNHJmYndQdDRkd0ptVjIrTXpVTFpWUHd6QWF5cTNJNlY0aWpMb3RkbVhQdTdlV1g2VlVvR3VXUXdCZXQxNXB3dnAxTlhwVUU4d1BCRERrRnhiZEJSUzQvREgwZ1UreE13dzJSOXQxaWp1R1hXbHJ6bHhadzBQU2xPOVFTVHdHV1prNkszNTZBNlI2Vm5PZTgvSnd6UkR0WWlBQ0lpQUNJeEpRQUtmTWVtcmJoRVFnVTBtSUlGUC8raVc5T0REazB6N0EvaFN3bVRpYWVaRDFxN2pLYnlERXNxNnF2dTR1dWJLdGFYYkpvRlB3c0FVdUVRQ240dENyQ1cyNmRzTWtnZUlpNDRCTjRJLzJCTUs4dTBBRGloOFFqUDBWcExBSjVUVU1QbHlCVDVEckgvRGtDaFRTK3h6ZUFoaFJXclBZdnRpMWFNUVhSYWg4WDRmZWg3K0JBRFhIZ3BRUXp3T2pFZEdOYytSd0Z3RlB0ZHFqTHduQXRqZUEvM1p6c3ZHRU9QU0Y5YWpyWnYzTGdVK242N2NHSHFoNVBQb2tqMzFUUFViZ0Y1WEtOamEwK0NUdXU5UkdidUtueUFCUytURDk2em5lMFRtdDNYZmhsZm82TnMzbmNpRVl0eVNTUUtmQzJnK3J2Rmkrd0lQMkpjQ2VFekVBWUdTWStRcmkzT0Y3MnRYTEZ6aHRYczgxbjIyQ1d2MnVjSjFzVGdlQ21HZHE0bWlXYTdSZkNjdG1VcDVsQnY2M2J3a2cvV3ljdmNiYXJaTlpZdUFDSWpBeGhPUXdHZmpoMWdkRkFFUkdJbUFCRDc5NEZNM3VyckM5K1JzK25WdFNLeDZOWXFaT2wxRzBOSnRLMjJNVTRpdXNCSHVNM0RUMWZXUHdvcTRVSzZyQTZBNzU5WFVOMWRvRE5qRnFHTXJKMVM3NFZxK3J6ZWVjSjdaYk5vd25FWnFvdGlOc2J0RDJwcGF4K3AxRHdYdzZvNkM2REdEM24xT0tWSEpocFRSRnhhQUhrYjJBUERKa2ZvNVY0RlBqVTNBcXdDNFc4ZXBPcDZHNXluYWtpRnRiZ1dBYS9wNnl0MXdrOERud2tSam44TlQzcnlON1l1MXBFamdZeEVhNy9leDV1R3BBQjdpUFBPRmVyMGFqNUpxbmd1QnVRcDg2SjN5clFEb1lhTXZsVjZYKytyWkdzQ3hSbGdzWGp1RTU1eStkLysyN1F3VlJzOUdER0UydFJTeTN5TVBQbE1idFdtM2h3TEFEd0c0ZmtjemZlR2VyT3ZvNllQbGxrNFMrRnhBbE9LczkzYnNtN1M4eC9TdTZ4dHpmZWZGM3hHcCs4WHJOWTMxYmg3ZlkvdUszUDBHdXdibEVBRVJFQUVSNkNVZ2dZOG1od2lJZ0FqVUlVQjN6VHRGRnQxMThvQWY0dDlaSzZmclJBVHp4SDYwcjU0KzRPbU52cE56a2QyNFVQWXVMemtTK05oRXV6WkxTbS82U3VCamp3Tno5RzE4cEg3Y2QyMEc1NGpCK2d3ZEplWkw2YlpheFBzMkNWUFhES3UrdWY3T3RmcW9Sc1N6ZDBjSFh1OE1NcjhicVhOekZmamszSU45cVB2VzJCTDM1bnFkZmZkTzdvYWJObjR2VExyRzJOVytWZnNNa0tYN0lvRlA3WkZNTDM5c0k4S0xuVmNTZWZOSkgwTmQrU2NDY3hYNHNBZVdtR1VvUVh2Zis4bjZQR1BJSUlhRHJmVk9HU0o2ZW5taWQ5MGg3cG0rVUxtcmRUK3QrWituRHRFWTFiRXhCR0k5OGZEZzBKc0EzS3VIZ09YNUp3ZWNCRDUvb3NlOTNHTjZ3cU14RjBObjgzM3NGem5BQzErcjc3eDRvS2w3Z09zMWpmMXVIdC96L2l0eTl4dEt0a1ZsaVlBSWlNRGlDRWpnczdnaFY0ZEZRQVFtVEtETENQTVg3alRJYXJPN1BnWktmV2lVeHRQMTBaOXFySmNISDJBL0FHY1hHaVFKZk1KQVRsM2djMlhuMm43SHRlNlVNTjRPTGZEcE0wUlArZlJ1MkN3cW0ydks4ZFlsOFBuVFdFdmdVM2JlVDZHMEV1dnEwUDJRd0dkbzR0T3Jid3BHaENPZCtQU2M2ZUZSaTJaR1lBeUJENzB6OEQ0NnVBbXg4aFFYbGprRlc0aXc1bjdPV0o5U2Z1ZzFmVWI1OWVzWnptZFhBRDhJTFRneVg5ODN6R294OUlUNG5zaHloOHJPdWZpdW5sQTBiQU5EaVA4NWdPOFhiRkNwdVZpd1NTcXFBZ0Y2K25wYmoxaUVoL3JveVpWN1FyVHBQTDQ1cUhkb1R4c09iMElVUGJLdzE5RFZxaVR3K1JNTkNxMWUyeHpPZkdEUFdIQTkzYi94N3ZyNUN2TWx0VWdKZk9MSmxkcDNuOEs3ZVh6dnU2K1F3S2NVU1pVakFpSWdBZ2tFSlBCSmdLWkxSRUFFUktBU0FRbDgvR0FsOEpIQXA5S3Q1eTEyNmdLZmJRQ2NCSURodkZiVG13SFFTSkFhRm9QdmlEVEkzWGV0M0ZTQm5qVjJ2bE84N04vOW13M01UVFFNMHQwNlQyeUhobXZ5ZWU5NWFYTXE4REVaWTI2TlVjanZFdmo4aVpJRVBpRXpabDU1SlBEcEh5OTU4Sm51WEo2S0VhRzJvWEc2STZDV2xTUXdsTURuYXU0OStzRUFWc1BnZGgyK0NlMGZ4UmtmTkx6OHZoSEFneXEreXpHMEx6M3o3QnZRYUg1RE1EeldjUUY1VTdJdy9PNUhtcERDL0Fib1NneUZUSUhSYVNtRkQzVE5wUUU4QjhDajErcDd1L004bEJMT2ViM3BOZWJpUUhoVVRTSUJTN2pEZDY0WHV1OWplbS9kb3FPZTQxMUl3Sm9lWXlUd3VURDRtelNoc2s4QVFQRmltL2lOZndnQWVpT2JtaWREQ1h6aWIxQUpmQzdLVEFLZitIbWtLMFJBQkVTZ0dBRUpmSXFoVkVFaUlBSWlrRTFBQWg4L1FnbDhKUERKdnNrU0NwaTZ3T2Myem9QUGVvaTlYSmYyZlFhVVdnSWZ5MkNUTUhTenVDUTJOQlJQYkw3RG5kaGM3ZUFQQWR5aE1VWjlLNkxYb1NlNEk0b2NKV3VNc2Exdm5zV09RMGhITjBIZ2M3Rm1RL3BLQVBqbjBJbXU3dmxldEo3KzB4a216eGk2UVFCKzR3UjVxY0xKRVpwOFBzTUhkRlJjV3F3a2djOFlveHRXcHlYd29TQ1lZUjlEMDFVYm8venVqUkZyRHdEOGUweWlXSmZpWVNVUlNDVmd2Uy9tcm0wTXNVMnZMTmZzYVdETU8wZFhFYzlxbmlWUDlIUyt0dGZLNnpZZVowNEVjUFhBQVhpMkM3RVhtRDBxbS9VZWVyUVRLSndYVmVvNG1TbWMydHBWL2F0Q0huZHJ6OFZ4U0tuV1VBSStEMUZuTllkN0tKcDlYSSs0NTV2T3N4Uzl4dFJNRXZoY21DNXRiRTkzZ2g3K3duZXJnd3A3OFNvNW5sY0FRSEhHRlVzV0N1RGFQWjdOUGd2Z2M0WHJZbkg4Wm1TZHE0bmZhdTl1UEZqOXBIQjkvd0dBb3JyYzFQZHVuaUlnNHJ5ajE2OXZOSDkrdWFKQXVGWkk4RnlXdWw0RVJFQUVGazFBQXA5RkQ3ODZMd0lpTURFQ0V2ajRCMFFDbitrSmZManhkTm1NKzRpR0lXN2VybStpODNRVFhSalR0WGx1aXZXUXNsN2YxQVUrRDIwMjZWL2RBZWxoQUY2VEFhL1BnTUpUdExjRDhPT01zcnN1NWVuVVR3Q2c0V0ZKS1VaWTRqTnFwWnljc2d3cmN4bUhHR09iQkQ1ekdkVUx3cUYwaGVXb0pUS2NENW00bGtyZ0U4ZHJFM05iQXArVTUwZkxhVnRuSE9JN1I1Y0hnWFdlRktIZUNjRDNOaEcwK2pRSWdkb0NIK3QraVhubjZBSnk1K1k5K3RnT29YYWJOK2E5TUFVNDIwK2paMmpLRlV6MTFlUHozTmxlazdNMmhmWnZ5dmxxejhVcDkxMXR1NERBRHMwejg2UE5OejMzSTBJVHhUOTdOMkw0VDRWZWtKRlBBcCtMd3JzT2dGY0JlSjd6VURhblF3RVpVK0ZDbC9hdFhiWFc5S0hEeXBmZ1ZGTGdzeHJTcjZhb1RBS2ZFaU92TWtSQUJFU2dNQUVKZkFvRFZYRWlJQUlpa0VGQUFoOC92QzZCVDg3SmpGc0JZSm1yNlR1TkszREdOWTlOZE05OVR3QmJybHhZdW0ybE4xajd2RXZFbkJxWmcwQWdkNk44eWdLZnZzM3gzelZlZmU0STRPT3hFM2tsUDExTGM4N3R1RlpHNlhuWUZyOVVGOUV4ODVNaDE0N29HTk92T1U4S3NhS3JPZHkvSVZNNHh0Z21nVThJMFdua2tjQ256RGhJNEZPRzQ1eExzWXpFSlF3dVBEbk5rRFMzRGdEMXRDYlBVd1B5S1lzSWRCR1l1OENISVhYcFFXZDd6L0RtaXZSOU0rZGxIZUdrZlBrWlJwYWh0RTRwUEIwdERpVytaUW8zZWZEaXJMVTc1djEzOE1hcndtSUUrcjcvdWlyZ3dhWjd1ekI4dmdiY3VIbG1NNXhVYnVLQnJQVnczaXlUNHBaUDV4YmVDSlUrQ2VBSGdlWHM0dzZJQldaZlhMWlhBdmpDUUwyV3dNY0dYVXJnYzFzWCtwUGVtTnBVS3l5Y0JENzJ1Q3FIQ0lpQUNBeE9RQUtmd1pHclFoRVFBUkhvSlNDQmozOXk5QWxTbGpLbFNnc3JMSUVQUXo0eEhCRHIvWDRQNURrSUJHSUVGRjNkbkxMQWh5ZkVQdGE0Nk9ZbStXcWlPKzVkSXpiRVl2cGRlaDYyZFMvMS9nNmRud3lUOUFFQURNbTJuaDdlNDhYSldodm5jUDlhZmVEdk1RWU9DWHhDaUU0amp3UStaY1pCQXA4eUhPZGNpbVVrTGlId0laL0xPNlBpbmdhczJpR0k1anhXYXJ0TllPNENueERQTmU4RWNKOG16QXRGTGlVVFEwalJlMUNJRUcrMVhnb00zbFN5SWMwaEJNdVQwVmRkS01BekM5YzdwK0tzdFR2bS9YZE8vVlpiTDB5QWV6SnZ3d1dlbkszRWI3dm5CNFRvbWNzM1lNd2NuMHVmckRHczlYc015OXcycEFoOHVNZkJPZjcrUnFURzlmL3NpRVlzMVlQUE51NXc2bzE2V0owSzRDRUZQVWxKNEJNeEtaVlZCRVJBQklZaUlJSFBVS1JWandpSWdBallCQ1R3OFROYXFnQ2dwVkphV09FVCtCemF4TEYrb3hNVEhPOWlPditpWTNqbXNKRVNLcURvbTMxVEZ2ZzhDc0RMT3hwZXdqREFVRms4WVh6MXRmTGZESUFiL2FYZFRmTjA4RWNBMFBDeHBCUTZQM21hbSs2KzF4TlBSL0xFNGs4OTBHN3FUbExTYXdMZHRiZGpONGY3TjJRdXhHeFlTdUFUUW5RYWVTVHdLVE1PRXZpVTRUam5VaXdqY1NtQkR4blJLd2s5WVY3ZkEweWVPZVk4bThadis5d0ZQaVI0UUJONjUwZ1B5aEpDL2E3aWQyazhQcDZ3NW5HMnpVY1BQZlRxMFpYNHJYRlE0YUczM2tGZjRUd05sZjdlS055TnFzVlphM2ZNKzIvVmhxcnc2Z1JDOXNFT0IvQklBUFRlWVNYci9yT3VIK3IzbURrK2x6NE54VzY5bmhpV3ZKYjJRczRuQ20zb1FmajNFUTJQRmZoMGlkak9hYnpISGVjT01SMWoxTDFVZ1ErOTkzQnY3bm9HSDNyWTVGNFNQZkxsSkFsOGN1anBXaEVRQVJHb1JFQUNuMHBnVmF3SWlJQUlKQkNRd01jUExXUmpJd0g3YkM0WlN1RERqMm1HR3J2RUNwbStEYU01YktTRUNpajZKc0pVQlQ1WEJmRGhIdmZhZnczZ3Jaa3ptNmVvT09lNDRiS2FZa0s0eFRUQnQ0bjlFd0RueFJRMm83eG5PVVBQbHoxdDN0YU45UTVyZWVpRy9hNUdXRUVLcGw0TjRFQjNMUVZCajNaQ0gxNUwxK29sRTljTm5yNWppTGYxUktNdnd5Q1dUakV1eDMyR3dkTHpiQ3NBVitub0xNZnRod0Q0WjZsMHhlYkVMa05GcnFlU2h2dFNiUTB0UndLZlVGTCtmQkw0bE9FNDUxSXNJM0hwZFlLZVI5NWlBSHNjZ0JmTkdhcmFQaHFCVFJENFVFakRNTHA4ZG5jbGlscnU0b3liSlVIM2ZiZWRDNERQQ2hvQXUxSnByMXQ4UCtKaGhIMDluYnNiZ1BlVTdQd015N0xXN2xpRC9Rd1JxTW1PQU1OcEhRMWd1eDRpcjNmZmQ3eVhROUljOW5EWWo1ZzVQcGMraFl4UGpUd3hMRm4vUFp6bnFDMWN1TFVIT3M4NklXMkxGZmpzQllBaUh0YTFtbjdqd3BBelZKc3ZMVlhnUXliOC9uOU9RT2pOWDdwblBMMkJ4WWkxVnJsTDRCTXkrNVZIQkVUZy83ZjNIc0RiTFZXWmI1ZmVZYnhNSVVPbUJCU0hLQ0FpaFVUSkNJSlVFVVFSSEVJUmh6QmtxQ0pMRU1rSUF6Z2tuYm5rSUF4cGdNTVJ1R1JRa0NnNURRaVNCaFdtWkxoajFkMC9UbSsvZlpydVh0MjllNGYzL1Q5ZGRmZyt2cmQzaDZkNzkrNWU2K2xuQ1lHVkVSREJaMlhBVlowUUVBSkNJSU9BQ0Q3NTZSRWorR0FBZmUxd3V3VEg3REdseXp2bjZPODAxUko4TUo3aTJDY2U4MGNIcHp2RzJZODU1NzdweVJLMWhLbVk1UE1oR0ZLT2tlREQvZzJIM09NaWs1NDQ5VmQzem4xcDVndHgxMFRZcDRjbTZwMVpuYnVmYys0cGtVTG1qdC9jZG0zOVBHUDlOT2ZjdlNNTjRUWVd0OEJ6TnpXWkM5eHZPRWpOQUFBZ0FFbEVRVlIrZzdRM1RWT2lUOC9iMFRuSFc2MWhjUW5zTGNmZ0VuVnVXV1p2eC8yYWZSSEJwdy9hSXZqMHdmR1FTN0djeEwzWENRaWU3Rmt2bFFGdEtiTHdJWStUMmw2R2dQVWRyejB2aGJWYTcwdVB2WXpWQjlyRUhwODlkNitVSTlWd3EvK0p6cm5ISnlycnZSZFBxWVNPMWYrZER6WDh4VjZkUDlCeTFwaUxCd3JOaVdyMjVUelpqUXNmcWNUbGpXZFdvSElJTmh5NlU3UGVIa3FmS29hcGE5WWFMRkdHZVl1M0k0Nk53Tjd3TUs4ZWJSSEptTE4zajdUK05UN2srUFNuM1BjUTRockVVeXRjNVpXY2MrSDdRWHNKWlQ5WHRhYnJJRXdLUzYzdjlQbE9EWlZlYzhDQVp5MDFINGl6S0ROOXJhRU9FWHdhUU5NalFrQUlDSUdsRVJEQloybUVWYjRRRUFJbkhRR01hY1M3TDBuUGNNN2RJc2g0dTRnNkF6Y2NjTmhNMDZzcXBMTmg3QlBPcFpXNVg5S1hNVS9zRVBBL2hoc2FWL1lLQmpWbHhRZ3B2UTJPWVhzNGNKNHQrRWRVRnpnb2xzZ2YxL1J2bWplR1c2M0JtbmwzbW5QdUNrRWp4bHZUS1lJUHp2N1kvb0IrLzY2L2NUa1d5UTFVYnBTMUpnNmdqNDJFWlVMVjVFRURxZUY3RlFYVFg0elRFSnFtYWU0YzJhT0NUOHpvTXZiNTZjNjUrODRNb1hVdWIzeEJ4U2RNM09aNmRjVzRsR1o5eUtBYTlZZVJ6QkNXV0M5YWpCQ2xkZTg1SHdZcmxKck8yakN2WTNMWDAySjQ5eDR4YzY3RTFzdzNET0hXTURLRnFjYXd1TlNZbERqVmxxcDdpM0piSGZjWDl1dElxT0MxWmg5b0EvdWRNSEdia3owUGFuTmJwYzk1QS9jaEtJdUo0TFBWTE5sUHZaYVR1SFdkeVBXUU13ME94MVNxM2RQdUIwMjFaR3NFck8vNDNMbGx2Uys5OWpMc2VkbjdwaEloa2xHeDZmV3R5NUZxL3NaLzgvbTJodWZlc1gwNFdaL1RhZkN2NTgrb0tYczBTaVdjTnc3aEc5c0prbWd4YTgzRkpmdWdzdWNoUUZnOUhQSXhaZFJweVI5d3p0MWdlSTlqSWRWakxUZ1VNa3pOZW5zb2ZabzNJOXFmTHNYU0NyWEtKYUVhTlIrcnhZUitKd1JZbUZDN3ZjWVFHdjd6VmdFSCtudXR5bEZKTjMvV0UzWHZabVRHbG8ydDVoTWxoVTd5aU9CVENaaXlDd0VoSUFUV1FFQUVuelZRVmgxQ1FBaWNaQVFzdzh3VzJMUVNiRnJhMnBQZ2c0dzVhaFRUMEZGTDM4eUl0WDh1WWFRRXh4aHg1anRlenQyNndUS1dmOEVoZk0vN25YTVhDQ29jRC9jcGdzL0xuWE5JdU40NTBsQ0lOeGlQUGxqU2lZSThxVGEwek5FVUVXZnVlTzJONEhQMlFkM3A5ZjVkQ0NGbWpsekxPZmRKL3dQN1BONGJ5SHlNWFVsaTN2eVg0Y2JUZFNPWk1RYjh1blB1VXlVRlZlWkpPYUZiNWtKbDFidk5uaVBvbEpCemJ1NkpFTEg5UG5Qa09zUHR1bTkxN3IwVWZEb0RPck80VnNkOXJjTGJ6R1llM09OekhjaHJkbGdFbnpYUjNtZGQxbG1rZFozSTlUYWxBamcrYzBqdjBENUg5ZVMyNmxnSVBoYkpwYmVLRGVjL1ZHOWppWEJaOS9IS1d4Q0JVbmtJdjFkNkRzM05VSXZjdE1TYWRJaHZqTFYybHpyc0Q3SHZhck56ditWREpJV1hQR0xZY0VHTGtIZUVPU3BKS1VkOTdaenFWVTVxcnRlMForN0ZzeExjRGprUFlhNjRPR1VsVklQLzJNaUVEUmFGT2ZMTnVmU1lDa05POWNmK0hWaUM0QU51MkgxWU8xNDhoTUtGOEJOTE1XVjJhMTd3dXdnK0pTZ3BqeEFRQWtKZ1pRUkU4RmtaY0ZVbkJJVEFpVVBBTXN4c0FjaWFEdk9lQko4dHNOcUs0Tk9qcjViaVVjcUJTOWdFd2lXOXlUa1hVM0JCdVFCVmhhOTBhS1FJUG1lQVdFcENJc1kyWWRlNDZSUkxJZW5qLzNMT3ZjemZnaVUvaWtnL2NNNTkxamtYazczLzFZamkwN1FlcEpwdk5oenVMVm5tMnFrUnRuUDYvRWwyQXFadXRIR1REWExPVnpOQTUxU1lNQUtqRnJlRUVwTUlQcld6ZjluOHJjWlJFWHp5NDNKSTY5SkpKUGlNU242bHhOWmwzOEx0UzdmT0lxM3JSSzVuVnAxcnZrUE1oNmthMlpwS3BqV2pIMU45M1d0YmEvclZPKyt4RUh4S1F0bWg0SU42UjQrVVU5VmlEU0JNN3ZUTUVOYkp1ZTlxaFE3aVhIczV5MEEwaWwwazREa0lSTmYybDFwNjlQdVF5N0RXMFJyeXc1STR4Tll1enB3blhZR3BGWFA4TklUUVFaWDNweW9LNGYyOVRTRUpyeGN4cDFjNVBRZytGVkFwYXdZQjVoOEUxSmNVS0VlaE5JZWFUNHZTTXZhZi8rUkRjSVhOUWIwSGxlRXQ5dkdsUktpNWs0Z3c2eStLRk5KclQ1NjZ0UGM4djc2MEVMTkU4Sms3Nm5wZUNBZ0JJYkFBQWlMNExBQ3FpaFFDUWtBSVRCQ3dERE5iZ0NXQ1R6bnFoMHp3aWMyOWFiaWpITUdIMEhDNU1GQWM1cEZPTDVXQlRpRXVnczhaeUpRUWZIQk9ZUVM1WXdMTVQzdmlWV2hnU1lXK0tuOEx6c2k1RlNua3BNcjBFNTZJOXl4Mmt4cmpiY3dnTkIxVFFpbjhTV0tRWCttY3c2alVZdGl4NXMyaEVud2dyVUZlKzVqVndZcmZMK3VjZTAzZ1dPWnhsTlVZdzE1aE55ano3b05CLzJFZGpZUWkrT1FIdXBXY2tBcWRXVEd0dW1WdDdVT3FBU21qYjhuM3JVZW4rRWJlYzdpNStxakpPL2R0ZjhQNFQxY0tTOXVqSDB1VVlaMUZlamtUcG0yMzZ1dzkvOGE2VWZsay9icVZEMjlFcUlsVVlnMSt0M1B1QlQ1YzBOdzliYzNZL2JSejduTEROd2VsUGJBaTNHM09rY3YzbWpCS2hPd2tqTktIRzV6bjFBbjVsejlqNmZ1ZUJGN1REeXN2NDRHU1pLcHZMWFgySVBpRXBLOXBQMktoc0tlL3g4Sm54M0N3eUZuWVlsbWJjSTZtRXZ2K2Uxa2dGL3llKy9aTUNUVzVFRGVjQTY0L0tIbWVYbEJmTGtzdVZCalBNYzhKSFlJcWFXbXlRcUxueUNhOEV4RHFXVE11UGdtdHpqTmNpSGp1c0JmbjhrdE11V2hVU2oxTG9xR0VGRVg5Rk94U2FROXpzUlJuOHRGbjFsWHNBSVR1SmhSNDZ2MG12RGVLb1p4Wlh1RXZCK1d3cUdrSGVlZXNMeEROMlBmei9yRmZQNCt2bk84Q0Z5bG83OU1XdU5SaTlaRzlEQXBYaE50T0pjZ1B6TnR3M3RXb2Z2VWk1dlFxUndRZmEyYXMvL3Y1blhQUDl1OUpybmIyK2RpblVBR3ZlYjhoS0hKT3JpR3hyWUhDV3NUSk5jZ3lySkhVOHhnUFhNcGVXSXJyR20wdWJZdnlDUUVoSUFTRWdFZEFCQjlOQlNFZ0JJVEFzZ2hZQnU1bGE0K1hMb0pQT2VxSFRQQ0p0ZjJ2dkhFV282VkY4QUdsV3pyblh1cU5lU0ZxSlNHQ0xLUkY4RGtESWNzQmluT0Uyelk0Z21JSkF5cEd5dGd0M3hzT1pDMUlNblBUa3FTUTh3M3o4cjBKTWd0R2Rad3BKeWxoak1HaEVIUDZ2TlhQQTVTWVVpbEhEZ3JEdVBYRzlWQUpQdFk3MklKVGFuMWJ3ckhkMitBbWdrOSt4RnZIMEhKc3RzeXoxbWRhKzVDcWIwdUNENkVydWJuK200bkd6Ym10Mm9ydm5wNnp6aUxIUVBBaERBRkVDRWpOVTdXZW1uSEEwZlRnd2RIL21acUhLdlBpbEgyUWMrNC96bWpuV0NXaFdCaTdqeGEySVJWeWRueDhpWGxnZlV0YTZ1eEI4RWtwbXhWQ1daU3Q1THlkdXNFL1ZqQTl0eFZWbXNoRWVOMjNPK2RRVEFqVGxGQ1R5OGR6ai9Pa3lUbHR5WVVLbzF6Q0JOK2gwbEZzclhFeGh5MXJCa1FLaUtHNWxQdFdIdE5jdE1ZVVl1Q05uWE9QSDc2M2w3UXlKMzdIdWN3Ny80Wk9wTnVXOVlYdkErc3Zkb3hwMlBld3lTWHZieU1NeWNjZ1ZFQ0dTcWxiOFNEdk1hSHlVUGZoenpCQlZpTTBqNVY2RVhONmxTT0NUMzdFbUtzUTY3N1U2ZDJ4NXNmNE8rODlkaGdVcEhQdkMva2hBN0cvS2JuQVFsK3dhVnlzdENFcjV0dWE0SFAvSWJUV1V6djNGK1huWjNyYjBnZG5sTjNiM2pDaktYcFVDQWdCSVNBRVJnUkU4TkZjRUFKQ1FBZ3NpMERzc0lvem5wczMvRGxOSE9yRGc5TVlVbWVhRDJNU04vR21pWnVkM05vSkV6ZmF4aHRKNDI5ckdpeGFRM1JaQnB0bFIrMXdTcytSSDU0ZlVYdjVjMjhNNGhaaUNjR0grZmlzUVk3OXpoRkltTC9jM0tQTTFwUnFROHZ0elpUallxN2pQbFh1dTRaYnljamQxeVljVUZjUEhzcTFrWGp5aEZMS0dWTnpjYlIvWlRBVTB0YXoxVFowa2g4SEF3U2lGdm5sa21xUkVFYlY1QUtSekQyY0NTVnQyRk9lRkxHT2VZS0I1Z09aeHJLMzU4YnB2Uk41V3B4cE5kaUk0SE1LcldNaytLVDJMelZ6SkpVWElpTTNxbE9KZlZQc0JuMlB1bE5seFBaUTVHMGx4eUI1ZjFxQ05MdGtQMkpsdC9ZaDFjNnRDRDZzZVk5T0tGaE4yMXFpZkxiMkdLeFZuK1g4WHVLN1FLaFhRdjZrMG5RL09nY0huRTkzYzg0OXNRTmhabXdIcWlrUWZVcWNWS1Z0TDNVcWw1WTM1cXNaT3hGOFRxRzdGNElQZTN4VXBQait4ZExjTTh4WVprNlpaMHFvc2NLR29TeEoyTEE1NzBZdVZCanRMU1VvVFBHeTFyalFZWXQ2RnBjaUxsVHd3b25nYzBiSWJtd09yY1NlRU9hLzlPT01RdEtjWk5tTHd2V1I4eVpFVGxTSHJMU212WXkyZ0RIZnhkeWNSTDN0VGw1QkdVSXpGM2hDbjA0cFFhNFhNYWRYT1ZzU2ZOaEhYTWFIdmtaeGE0OXAvRmFnRE1jbG9PY1lvYnA3OXdHVkt4UjZyRFdBOVpMMTloOHpEY2paRjN1M3U2VzhXb0tQcFNTV2FnTmtxUHRFZml4VkNhenRHd1RmdWVmb2xHSXdoRWtJWGxiQ2pzQTd0b1NLdEZXM2ZoY0NRa0FJSEMwQ0l2Z2M3ZENxWTBKQUNPd0VnZGhoTldVb2loa2JZd2VNV0prcG9rZk04TEdtd1VJRW4yVW5ZbXJjY1pLK05uSURiQ3IxWGtMd29mWG45U0VCQ0I4UXBpLzZPcjdjMk0yZUR2QzFDVDZOWFk0K0ZqUGdsOTZZc3BRSkxHTzkxUTl1K3p6VU1OUllaVmkvNXd5ME5jNHJxNTVEK1AyaUE0bm5uWVBoanZrY3BoTFZyQ3Y1OS9Xc2tlY3hxS1BvOU4wRmdSREI1eFM0UGRjM2E4aDYzNmhicysyY1I5blhvQllYbTdlc2o0VE9lSDNsalg0THM1TGZlK05na1I1SzJ0UXJ6N0VRZkVxL2NTYzEzQ1B6eFhKKzkvN09sb1FlNmtIZUxWRTdhSDFmQ0N0elV4K3FwYldNOGJrU29uWnJIVFZqSjRMUEtaVDNRdkNCK0FYaDRBYVpDVURJVlp5NXJRbWlLc1NCR3lVSzRQdUtBaHJKZW5kclFnREZxck1VYjNEOG9TTDBxY3JPV212YzFKNlNDMEVkcS9Za0UzekM4QzZWdzVMTmpvTVhCU3RJS3pWaGZhYUYxaEI4YWhWRDFyS1hjZDYvaDNQdXlZWkNDbXNBWWJzSUtVeEMvZllkRWNKRjZTV3BYc1NjWHVWc1FmQkJVWS9RVWcvd0Z5SlJkc0x1c2NkMFY2K2lNMjNiRjRhTEVVL3k3OUNTWi91eFR1eUxvd3BNREtPU3kzOThZeDQ0RUxLZnNFZVFmWnRxQ1Q3V09yVGpycTdldEY2azVkVWJyZ3FGZ0JBUUFudEdRQVNmUFkrTzJpWUVoTUF4SUNDQ3p4bFN6dE5VWWpEUlFhbHM5cWNJUHFtUVIxTWpjU25CaDVhZ09ITjZKTlk3dDNOdTRTVjJ5MXA4NWx3cFkwNkw0L0dZQ0Q2WDhoTDEzT2JMSmNJeklNLzlENWxNR1BaeG5PT29LazFmOFJMaGE5ME95NmxhMUJwWlN2dTR4M3pXV0gxN2tMYi9vVzk0VE1rdDF5ZU1idHoyUkE1N3lTU0N6eWwwZTVORGN1TjJxQVFmbkpzWWVoK1Y2TnhIZktqSXViZThXK2Q4N3pHTUtldTF0bTN1Y3kzZjJaWTV1TFF4dDFTbERrTHlWUWUxbDIvT0JlNEFuN2VjM3pVa2taTHVweHlQMDJkUkFZbUZGUzBwbnp5UVpnanpRdGk3cGRKWC9VMTAxcUhXeFA2R0VLZi90clVBNDdtYXNSUEI1eFNZZXlINDBLS2N1ZzYvejFXN3lvV0dqQkYyckxCaGM5NWRTN0dvOWJ0a3JYSGpXUUlGRi9iQmxnckY5TFU3cVFRZm5QbUU1VUZSYWFuRTJRVEZVZFNDVzBnK2xyMW9YQjg1bTZDRyt4c1ZIU214VjFVVWw4ektQcGdMV0JCTlV1bmhuaEF4VmIzQWw4TnprSU9tQ1lXT2EzdGxzRno3ZWhGemVwV3pGc0VIUWhXWFljQTBET3VLUWk1a3k1eGRwY2VZMTVaaGtUVC9mcmpjY3czbjNNZHJDMjdJejd4REVaUHpUS2c4bjFPVUhxdktYVVFpejhjTXBlS0dKa2NmdWZnUTd1NmFrVjlZa3dpUkIzbXVORm5yVUdrNUp5SGYwbWZDazRDaCtpZ0VoSUFRK0FrRVJQRFJwQkFDUWtBSUxJdUFDRDRpK0N3NXcxSUVuNWpEQzhQWjlUMVJoemJWRUh6WUwyQWs0OGIxbUpCcHYvM01zRTBpK0p5QjV2U3dlMnRQcnJIMmFGT1o3dFk1UmgyRUJUaUxMK0Q3d3kyMkg3UVdOdU81bkdHZUc4ZHZtbEgySVQxcTNaeWUweGVNOU54TW5Ddk5iTFZCQko5VENQVW1oK1N3UDBTQ2o2VytRWmlCZTg0TUJXTE5WK3Yzbm1OSW1FUlVaRkFuQ0JQaFRwWUtDeEFMLzByOXJZN1VGR1piaGVqS09hK25iU1hVSkhzZ1F0K2V0R1E1djJ0SUlpWFlRVHlHV0p4S2YrdUo0MThxS1N5U2gvQXE3QXRRYjFvNmZjNDdoU0UrMTZaYXBaRGE4c2xmTTNZaStKeENlRThFSDc0SmIzZk9FVDRqbGtvVk9WTHpCM0lMcXE2eEZGTTJzMGc0VXpYWTJqbDdjeU8wYzZ1eWw3WEdnUUdFd0Z3STIxUmZUaUxCNSt4ZTFTa2tRTlNPZDBuK0V0V1BWRG1XWTMxY0g3bmc5Q2Nsalpua1dZdmdRNVdwa0VXV3lsSHEzYjYvYys2cFJuOTdFWE42bGJNV3dTZEhRTVpXeHNVMXlHQjdTdGFhL0JZZlNuMVVkMXFqN1Z4Q1k1OTNFVitacFNoTnRoSVZMY2hLa0t3K3VHQW5jbnZJa242RVRiUFdvUVc3Y25CRmkrQnpjRU9tQmdzQklYQUlDRmpPbzBQb2c5b29CSVNBRU5nekFpTDR0QkY4V21NWjk1NExzVGpESEo1djVtK1k5SzZ2dGp6YXdrRTRUSVRod1dnN1RhSHNlUTNCaDNJdzloRWlCVFdmUjNwSjRMbUdCQkY4emhpaDZXR1h1ZjhNNXh6R3lGVENRRTNZckxuNDE4NjNwZkp2NVJoZXFqOXp5clZ1VHJlVS9XbnZvUHhheThPVno0amdjd3F3bnVRUWF4Z09qZUJ6blVHQjQrVUpCejNySVRlWitiM2xSdmVJRmJjeklYOWcrRzR0cCtjWW9oendmdWZjQlNLRHlRMzVGMXVEM1BoN3lwRjlMQVNma2hBM1FBZGg3QTR6NWtJai9MdDR6SEorMTVCRXJBN2x3cnFPejZMV0FPRzA1YjBzY1JDTjlVQ0Vmb0ZYTXBpU2wxSFR3Y0hETFhUZXZaOHlPZ1V4NEhjcjkxeUUvb0NFWkNreHNvOTdycjhOVDdqYmFUdEhFallPTkpTQWJqczQxQzRSdExWbTdFVHdPUVhlbmdnK1ZwakJVa1dPMkRST3FYeU1lV1B6eHdxak5ZY3N5Zm1HZHorV3dvc28xbG96L2QxYTR5QkNmTWVyTW95WEdrckxQMmtFbnhUWkpJWVhvUXc1azdMV2ZXT3lwcU00UXNoaDFHUHY1Y01mNWZCbWJLN2xuS084bW1RNTFwbmZyeGdVT2Q2VjJIdmw2bHFUNEVNN3NMT2dpZ0xCaElTQzNHODc1d2l2bkVvcDRzZEwvTGN0OTQzdFJjenBWYzVhQkIrd3pLbW1iVUdXc2VZOGx4MGdWcWJTM0RDT1Z2MnAzN2trQmlIbWx3dUkwRncyNEYzRWptaWxKVWsrT1hJUGx4ZDU1Mm9Wbkt4MXlPcnZTZnBkQkorVE5OcnFxeEFRQXFzaElJTFBhbENySWlFZ0JFNG9Bb2RFOE1IcGRKWE80d1FSQmtXU2FWcmJZREtuU3pFRHdDRWNUTzdubkh0SzBQSHdCbWd0d1lmaUNCMzFzOTVKT1FmWDhWa1JmTTVBSXB4VHVadDhkeHB1UzcydzBUSFdZOHlXS09NaHcrM0ZQNHdVSEFzZHNFVDlleXJUdXFWWDIxYU11N2Z5WkluVXM4aVY0NHprejdrSlNYL201NVVqQmQydVk0aXdWcldwbE9OcWlYVzlKem5FR3BkRElmaXNFWktMZWN4Y1E3V0t0WFFPSWJMbkdLWlVHdVk0YjYxNXdlL0hUdkNoanpodlg1TWhhdUFzZ0ZUMjF5V0FIV0VleS9sZFF4TEp3VlBpR1A2UmQrUytyd0ZuSEtDRUt5SjhRaTR4RjNBcWw1QmFJZDVCT3VDOGtrdDM4MnRLYWJOTEZDTlFsQUI3d3QyV0pyN1ZFQ0FmNEozbU5XTW5nczhwbENGNThUMktKY0w0c0c2bVV1bGU1cDhITXN0M2gxQXcvSmxMSmVxTk5lTThyU3RISHNwOWUzSU84TmI5MGptR01JbW5lWEpkREE5VXNxN21uRVBocXpaWmF4eE8yOS94WVkyblphT1F3bDZCa01TRUFoMURJSTBrUUVoMVArZUpLakdGVTRzTVZVS2szZHRjSkd6cUU0d0IrSUp6N2k1ZWVjb2lhdktlUWVwNmJDU2t6N1NhRmlLbDVWam52YUYrTGlhRmliTUtZLy9oSVB3eHRnNkluM3huSUZaQ1hGb3JqWmVwVUJxODYzRFpoM053THFXVUlVdEllTDJJT2IzS1daUGc4NHNaMHRlY1Bjb1M4OFFpc2M5VlJKemJadlo5blAxakZ3N0hza3YzYnRPMjlBaVJHdll0RnpKMWpscWp0UTdOeGZpWW5tL2RQeHdUQnVxTEVCQUNRcUE3QWlMNGRJZFVCUW9CSVNBRXpvUkFLY0VIV2U2WCtWc0Qwd0xHbVBIVGY0dVZtUXJWRkR0d3BBZzJsbkdzMTlDSzROTUx5WFE1TVljZVRoSENKb3doZWxvSVByMWJubElyQ2R0YVVtL0tjVEgzSUprcU4vWE9XVzJOalUyc2phRXhCR2NZWkRsdWVCOWJ5dDJreHJDNmRGaXB0ZkFrOUFERzVGeXluQVcxYlgybGM0NzNiSFJheEo2M25INjFkYTZSdjlYWmxjSjNDV1cyeTNyU1FlaEVSTVVGNVFqQ012VktNYlU1eW03RnFTZXhaZXpqaFoxejNDcE9FWW1mN0p4N1JLVktSb2dmTjBTZkhYSFc0K3pBdVZlN2Z2YkVBV2RON1AzSE9BOGhyb1NNMERKZkNOTXczZ2lmUHY5ZVR4VG9OUSszVkdMRHBuRVA1OXpUSXlRZnZxK29yN3l4QmJ3amVjYmEzN2V1RTFONGNQS2dMQmh6cEU3enRZYUxaSXdmUGV3SEhwWVpFMEs5UUhCL1pnR3BZbG9NcE1BSEJXRm93Mm8rNzBsaU9KMnN4UDRORllBclpUTHl2anhwQmxsN2RKcno3Y3JkN0o4Mndmclc5NWdIWVpjdHgxZExuZFkrcVlSVWtSdEQ2MzJKbmMydE9XSDluZ3VqeGJPeFVGcFdtZnllQy8rVkMvMWxoUTFyVVl5SWhZK2U5cUhsN0RjK2I0M1p3NTF6aEMyQ1RETW13dkRjdVNBOEpzUWtTT1d4czhpeHpVWFVOVTZmaEc2T3piRlMzTUpucitxL3c5TXhtT1pwQ1k5a3JTK1FOd25OZWNsSlJhWDdRZHJKL2loM2ZpcDVCMnZ6MU5ZYk8wT0hxczJ4TnZRaTV2UXFaMDJDajZWc05rZGxzSGE4cmZ5WDhXU2sxSHVEL1pnejVWeGJDWmlnd1BpdEdmdVNXRjhnLzdEdmd6UVhTNUErVWZ0Q2NUVk1LSHZ4Yld3aGhFL0xvbThRYzFGMGpDazJMcWtZRk90enl1NVAzdFl3bGRZODZ2Vjc3d3RGdmRxbGNvU0FFQkFDSnhvQkVYeE85UENyODBKQUNLeUFRQ25CSjJZZ1N0MnNFOEZuaFlIelZSeWlnay9xTmxkNFlOd0R3U2QxU0d3aHp4d2J3WWNwU0NnSzRwdmp2TUVCYk4wd1grUE40SVl0TjJFeEFQVkthNFJLNk5YV09lV1VPa1JRTTdxM2R6cGdXTVlZalZ3MEJpaHVtdkp0d09qMUdYOHpsZEF6TWNscnlGSFhHSXhxT0NaenlYTDZ6ZW56VXMrMk9BVnBpK1dNV2FxOVc1WGJpbE5QWWt1b3FCTml3VnlHdkloVHlib0puc0tSTXkwa0RrTGRvRElYU3kzMTlNUWhGWnJrM2M2NUcza0g0bGJ6cEVlOVd4Sjh4dlpmYUNCS29YSjNFNzlHRWxiMFJWNUZvMGNmRDdVTXkvbmR1azZNZUJDbUFRY09KTHBjbW5ORDJuSThRKzVoSFNFRVJNczZVcUkraEFvRjVDRXJFWllMa2tsS0lXYXJFQ0RXdDM3dVBJamhZam5nVytxMHZ1T0hTUERCdWZtZTRUMkNwQnBMcllxV09TV2VYTmhDSzJ4WUN4bkhDa0ZidWtlTzRXT3RjUjl6emtHNkhoTXF0dy91UU40NHBybFlFbFlRQnpucllHdUlhTTZQck5HcHNJaTFhNk8xdmhDaW1MQ0dvOStEc0kzc0VXcEQ4RmhyL3BhL3gxU2JTOExkOVNMbTlDcG5UWUlQNDhWbGczY2t5R3hicStKTTUxTXVQQmZqelBuaHpSMG1JTXAxRUVuWk41Y3FJRnJWc2dmQ2hvWHFZQ3lOSWJGNFIzbjNZeVNtdVNSOTJvQmQ1YjZKTm1CYithMkJDTWlsaDdWU1RrR0s4OHZyQ2h2Q3ZwVTlGSHVIdHpmdWZRdXIrcGRzSXZqVUlxYjhRa0FJQ0lFVkVCREJad1dRVllVUUVBSW5Hb0ZTZ3MvNS9NRmllbnNocFR3aWdzOTZVK29RQ1Q0cEl6RTNaMTQ4Z1U0RW43SjV0SldDVDlpNnZaQmdsbERnMmt2ZnltWkVlNjRsYm4zZjBwUEFZbnY2MHBBaWx0T3Z2Y2ZMUGRuaUZLUTFsak5tdVJadlUzSXJUcjJJTFlTL3dZbVlDcW1Ed2hST1BXNGJ0NmJTRURzMUlTWEd0dlRDZ1J1c3IwM2cwRUpvYmNWcXllZjJRUEJac24rSFhMYmwvRzVkSjhad1VTajNwSWgxSTI1emJrampvTUVwZk9QTUlNeFZ4S0ZvYnErL3pUbDM2VVE5SHhodWt0K2d3RGxzRVJuQy9maGFjOHY2MXJmT2cxejdMUWQ4UzUzV2Qvd1FDVDQvNDhQUDRheE5wUnJISDJWWVplYm1vUlUyckRhY2xsWGVYTFZWYTQyYll2bzhyL2pXUTVubG1PYWlGVlp3ZE1iUEljY3dEd2lieWlXR1dLb05qMlN0TDlNNmVyUi9yYlc2cHA3VTNMY0ljNzJJT2IzS1dadmdZNzI3cFlUZW1yR3F6V3UxTWFmQ1ZsTVhGOHJlT3RnSkwrWWZZbTFFTFJGeVRpdVp6MUx1Q1FuZk4vZHE5cEJXd3RTcXpvaHlMT2ZNS3lUQTJJTGNRMU5TcEswYUlpOXI2VFNjWWsxbzJwcTVFZVlWd1djT2VucFdDQWdCSWJBUUFpTDRMQVNzaWhVQ1FrQUllQVJLQ1Q0eDJlcWFVRm9uTlVUWDVRWWxFVUtUTEpVdVA5eGt3WGcwVGR5V3dWSDM3YVVxOWVYaVNPQ21YRzJLeWFwek9ML21jRVBsTHllRjdZSGc4eEIvcXlic1k0dkQ4eGdWZkthNDdJVUVJNEpQN1J0NUtuOXZnazlva0p1MjdBMWUwYVRFTUdjNS9kcDd2TnlUTFU1QldtTVpTNWRyOFRZbHQrTDB5NTRRR3Q2bUxBM3JoTFAvUHQ1QUhEUFcvcU56N2k0ejFEWkFFMlVnVkh0UURzbVJDK1lZcXVmaU1JNTY3aDBqYkFoaHRBNDlpZUN6M3hHMG5OK0V6c001VUpJSUxYQkZIL1lrUllRSnkwRTk2NFplamE2a2pqRFBiL3FiNVNuYlZjMzN6cW9mMHNNTEU1bFN5cXBoOXB4cUNubDc3d1dzUHBXc1ErUnAvVjdrNnJjYzhDMTFXdC94UXlUNGdLRTFiM0Myb3F4UW1uS3FRQ1VoZkhKRXRkSjNZV3dyWWE0SXhaSnl0S0pVU1NpbDc1VjJMc2huclhGajlqa3FZckdtSGN0YzVLSVphaWJUVUZiVC9yS0dYMnRRYWZ0azQvaE1IeU1jenp1ZGMreUxZcWttUkkyMXZvemx6eUdZZHVqeVlrWGtDRlBXZXRHTG1OT3JuTFVKUGd4S1RoMm5sTkM3Mk9BYUtrUFUrNmpoZi81Z1pnUENrUERUNGxvdVJ2QThaVDQvRVI2WTMxUHZvNlh3VlJvZTBGS09wUTJFVzJVdjlwR1orTlUrbmxOS3ExSEdpNmxhempudmx2WkRCSjlTcEpSUENBZ0JJYkFpQWlMNHJBaTJxaElDUXVCRUlsQks4TUh3alN6cU5LWENOa2pCNXhSS3BRYTlRNXg4TFNRWCtubFg3L0NjOXZtTGcySDFxczY1YjA3K2NROEVueFJwaGR2Z0dQaHFrZ2crTldpMTV4WEJwdzI3V21lSVZRdE9Wb3kzM05BTUU0YXo2d3hoYXY3YUtzVC9Mb0pQSVZBSG1LM0ZlVHFubTl6WUpQekJvek9rbXg2M0RDL2xsWUVJaFpOTFBlcWFnOGY0YkM1a0Q0b05iK3BSeWNabGlPQ3o4UUJrcXQ5eXIvdytIenJyeTQzdzhLMkRjUE43aWVmbktuK0V4VjdBaHp1QVFCdExKYzVuaTZnaGdzOHBaRnUrVWNkQ3Fnam5WeTVrREhscmlVdk1NeTZreEZKSldiL2tuTU1XUVFpK1dLb1pPNHVJWVpFUnJPV2pkSTI3alEvYmFKVlgrdnV4ekVYV1YwSkNwMUxOV0Z2WVdXcE9OV1F2YTE2TmJYbXNjKzRSSzRXd3NmcmY4M2ZlY2ZhNXNaQm5GbG1nRnpHblZ6bGJFSHh5b1pKNmhyOXFIWFBJTzQ5Y2NPOFRxc0NrMm9sTkVrVWpMbWRZaWU4RmF3bUV6VmhDallmTEdjelBXTW9wK1pEZkNyZHNLY2RTQm1zTUlXVmI5NlVXQnJuZmMwcHB0L0lxUmxiNXVRdGVQTnRLekxMcTVYY1JmRXBRVWg0aElBU0V3TW9JaU9Dek11Q3FUZ2dJZ1JPSFFDbkJoOWpBcUpsTUV6ZHF1VW5LQVhPYTFpYjR6REZFeHc0QlBRa0NwUWE5UTV4NExRU2ZsTkVNV1dxazNmL1hCSWc5RTN4YURJa2krS3d6eTN1K3YyT0w5NkpPdENTQ3ZaMlF2K0djZTNQQ3FQc0E1OXhUS2pwRCtCTnU1a0xPT0pURUxlSlBOVFRXY3NZMEZMbnJSMXJXMHBZT1hjZ3I5aEFXanZrVVN4aDFrUk5ITGgzSDRWUjFCeWMraW5taFl0QmxuWE0vRnhSRzJKSHpHSTFjMHJqWmdrOUtDYUZFUmFHbHZpMmVFY0ZuQzlUTDZ0eGlyNHg2M01NSGNzQXpuSE56UXVGWUpBT1VMbkdZUUtMdGtWaUxYdWFjNDFUVElMa0FBQ0FBU1VSQlZDWjVMTVgyMDJFK2krQ3oxcm9jdHNzaTh5N1JMc3NCMzFLbjlSMHZJYS9rNW9yMXZzdzVGK2ZxdFZSdWFyNFhGb21paEtobTRjekZKTjZUSHhhOGVMSExKOVBIYXNPUGhWVmFZMForOW8yUTM3OVYwTjdTTEJaR2h6QVhyVkJ1bi9lNG9YalJLK1hVb2I3dm5FT2Q0cU1GbFZuckMwWDBWQjhxYU5KcVdTd25mK3FpNE5qQVhzU2NYdVZzUWZCaG5ZUmNlSS9FcUxFWGdCVFlhMzlSTXptczc4RmJobmZrWmpOQ2FORVd6bXRQOUVwR1Z0dEtsRmZQNHB4N2V1THlFZVZ6RGlRODM3TU1zaDNyOU11ZGMrZk9OQ3E4d0VGZklDRkI1b3NweDQ1RkVUWWE1YWFwVGRUcWU2L2ZDUm5HSGhKMXZUQjkydHRpcHBjeFUvV3lMMGJOS0tXNE5qNVhROHdxN1dOS2ZiMWxMMWRhcC9JSkFTRWdCSVNBZ1lBSVBwb2lRa0FJQ0lGbEVTZ2grS1NNUTZtTmNxek1GQmtvWnZpb0NmMEZPbk1NbVNMNHRNK3ZGb0pQeWhnUXV4bTVOY0VuWjFCc09TU2VSSUxQMTUxenFELzBORlpQWnl5T3VWc0VVM2dKZ2c5Ty9SUXBvUDBOMnVaSnhnTlo2akQxSlBpYzF6bjN0b0VvRVF1UDhsYm5ITGZmZnJCTjkzZGZhK3A3aXpNYVErbkhPdllBY2dvR3lIQnV2OThiakhzYUZ3bFYrYkJJMjF2VzBoWUlyTnZmTFdXMlBMT0dQSGxMdTJJa2JzcjVHeDgrRXdmVW9TY1JmUFk3Z2lYTzcxNnRaeTJGUE1EK29lUzJ0MVZ2amhqQUJRaHVpWjl1RlZMNSsvMHlKTm0vSGNpMVZ4NlV5cjZXS1RQbnZPWXh3dVdpM1ByZHluYk56UzZDVHhtQzF2c3k1MXhzdFlEM0JpZGxLbkh4NThWV0lkNHhDcmtFdGJzdzFidzNxVzhYWmY2ZGMrNXF6amxVWW5NSm0vT0x2SkpYTEY5cE9iazZyREhqMlI3aGJNSTJIQVBCeHlKUnpsVlhpbzFiTERUOU5CL0VNUnpZVmlvaCtHeEowckRhMy9vNzU0cFhERW9rTjg0VVlKM1hleEZ6ZXBXekJjRUgrSExLYVNqaVFqYjdST3RBelhqT0NrMWFxdlppTllIMStkckRaWXJuRG1xSkY3RXkrM010b1NKVGV5RG1KbXZHSFNObE1WZWVWS2lrVlVKaTRjeUhNaGZmRUloRlZyaG15T0JjS3Z2bmduNzJ6Z0xwQ0dMVG5STUYxMzZmd0JteUZOL29tSUxYV0EzN2NQYWtieXpFUGRmdkhBRWViSi9UR3pTVkp3U0VnQkFRQW1VSWlPQlRocE55Q1FFaElBUmFFU2doK01TTUV6bmpXNnhNUXJHZzZCQWFpMDhpd1Fmc2tDVC9kdXVnYmZBY1k4ZXRqbWxxSWZpZ292QTY1OXpsZ3JKaUJ1R3RDVDQ1bzJpcFlXL2F6Wk5JOExHTWQzT25ja3haWitrNjU3WjU2K2RUaHM1ZXVMRjNmNW8zNm9SOXJRM050VFZXVzlTZlduZDZFckRHZnFYVzJMazN1bU80YlMyWm5aTzVYMnVjbnprb2hSRGVzUWVwb0dlYmMyUldLNFJDejNZc1haWUlQa3NqM0Y1K2lmTzd2ZlF6Ym1XaktJZUQ1ZTB6Rlh1bTdiRFVkR3BDdWRUMEw0ZFh5YmVpeE9uOFBLOGFNRWZkcUtaUDVCWEJwd3d4NjMxWmt1Q1RDNnRGNjFFZnVFT0JvKzdYL2J2SU94U21yM2hpRG1RMUsxMXZDUEY4MmtDT1NkbU5TNVIzVUdGSWtZMm92MFlKS05WZWE4eEszbHNMaTlqdngwRHd5UkVTZTRjWEhqSHN0UmFWckxVbGM3Umw3TGQ2cGpTc2txV0UxSXVZMDZ1Y3JRZytFQ1c0akhHRHhJRFdFaTk2ekF0TFdhaG1EUzl0RCtRWXlDS28yMWpKVXZPSmtWbHF5RDFqL2JRSnN0QnRyUVladjBPcXhoYjYyWm5sekhtYytnazNHMHR6Vk5JZzhVTDZEVzIvWVQwOTFIeXU1QytZblRYU2lTWDNSWE53MTdOQ1FBZ0lnUk9CZ0FnK0oyS1kxVWtoSUFRMlJLQ0U0Qk9McjV3N3VLV01kbi9pYjZkTnBUMjNKdmdzRFgwTTM2V01lRXYySlVha2FDSDRqRzNFb1loNkJFWXRidVZ3V1A5dzBJRmFnZytIT2doRXZSSkdVWXdtUHg4cEVMbGdEdU0xQ2ZVaW5ndER2R0NjUk5tQ2tDMnhoSElDTXRZcCtlV1VFYkoxZkdKalhUSm50eURiYkZGbnpaanZNZS9TQkorZW9ibjJpTi9TYlJMQlp4bUVMV1AwTXJXZVVTcmZpdHQ3Tlp4WVBZU2VJOHpYNTVac1JLYnM4dzBxSSs5TlNMS1hoRW5acU5uVjFZcmdVdzNaYWc5WXp1KzVEU0gwRFNwaTd5b2dIdFRVWlJFRENNOTFwNW9DQy9OYVRtUExrWEgyUVJXQThCbnNtM09KVUEzYzV2NVNZYnZtWnV2bFZLOXBoNFZsaThyY01aQXFVaGdTdXVNOXpybnpKektVcXI3bHdzVFZFRXN2NE50RE9LQllLbEYzeVpHTktMTmxEb1J0c2RhNFV0eHE1alo1ajJFdTVsU2pVR2U2cW5PdUpHeE1EWFlXYnFWbmJHdDlxUWxyVjlQK0xmTnlDUXIxbnB4cUIrMURUZSthR1h0S0wySk9yM0sySXZpQVZVNHBzQ1owVXE5NVlWMmFRQWtHcFRjdU5mWk1vNW9QUk5JU214OWh0TUR1SHlLTm1KSjhXc2c5WTVHMDZaWkRlOWp2eFlnbHVmN3ZSZFgxaW41UEdOb294N1lUM3ZvL3p4aElTR3FFd01hdW1rdllRbEYrR20yc0YvTnEwT3poVVg1bXplQ3lXSmgrMm9kcFpBeGk4OEphYTJaMFRZOEtBU0VnQklSQUNRSWkrSlNncER4Q1FBZ0lnWFlFTElJUGpwOTNSR0xvNXVTRUxTbGxxN1ZyaHVpeTJqTDNkeEY4MmhHc0pmakV5Qjd0dGUvblNVdE5Rd1NmTTQ5Vkx5V2EvY3lBdmkxSnhTYnZZU1RId1VJSUxnd3lZVkpvcnJKeDVPeHp6aUdFekZtQzdDaFE0QWpvcWFhd3BvSVB6cEt6UlNEZ0J1OWE0ZG9zT2Ztd2VkL3piWVBnK0FIbjNQLzJoc1dQT09kK3h6bDNVMk5JTVZSaUZDVmNYVXB1SFNjcGpoRENpRHpZcTEvMUhPT1NXWmNMUmRHaVZsZFM1eFo1UlBEWkF2V3lPaTNuZDFrcGRpNFVKSEgyRUM2aFI3TEN1Q3dWRXNCeUdwZUVTWUpZRC9taEpPSFllZlNBM1RkS01zL0lJNEpQR1hqVysySVJ2TXBxaWVleVZLdEtGRlZ5cW5IVVd2UGVXTzBwVWRIS09jOS9OTmhCcmpXb1o3eHZEbWpPT1d2TWFraE5OVTJ4aUNyV0dkT3F5K3JYM0xrSUFSclY0K3NtR3RKRFhTbFd0SVZiNlhoWmEzWEovTFRHWUUrL1cwU0JzSzI1K1pIYXM5M09uelZMKzUwS0VWeGJEaGRZc0RYVjlLRzBqVlkraTFEVEt4eVcxWTd4OTF6WTQxNXJacTR0bkpQWmwzQVd5eVhMOWdEWitkZUdNR2VRbWVlU2tTQWFvclJFbVBLU3hKbVNPVWlvdjdYUGZkUDJXZThzeEhqVytSaEpxcVNmMHp3UStpRGg1RUt0RVlvY3RTcjI2UmI1dHJUK0pSU2xTdXRXUGlFZ0JJU0FFTWhJclFvY0lTQUVoSUFRNklPQVJmQkpIYTV6QjBuTEtHSzFYQVFmQzZIMWYrK3Q0RlBTQXhGOHprREpNcjZLNEhQbTJTU0NULzd0U2hIaHJIbG12Yk81Mk8wS3pXV2h0ODN2YXhKOHR1bmhtV3VkcW0yd1RyemZPY2ZOMTQvN1B3a2htcm9kU0VuanpkSG5Hc1pKcE9GUlpYdStMeS9WZDhqUWJ3aVVjM29URUVwd3Y3bHpEbWZWSGxOUEJTRVJmUFk0d21lMHlYSVNmeWlpOGpqMmhwdTdLTkZjdXJCN1h4M0t3cWtJVVc5dXVxRVAzNU1xWnlRSnpxMG5mQjZDeEhreWhaWW9qdUNFZ254WWlodlY0YnhpYmZ0VUIyZFlyUGtpK0pUTkZPdDltVXVxc0ZxUkk4VHdyRFgvY2lwQTdCZXY3cHo3aE5XSXllKzU5bGdLcEQwSVFpVk50Y2FzNTdkdTJoN0xKak4zNzIvMWErNWN6Q2tNMGs4YzQ3MEltMVBjVUo5aFBVcXAwSlRpWmhGOFNvbENKWE5zNnp5RTRHRVBHMVBRK0phL3ZCQ0c1TXVSeUhNcVgxdjNkVnIvM0RsZTBoZExoUlJGdnBzWlo0NlNla3J5V0NIRDFtcUxwWnlES2lxa0xNZ2RTeVVJaURmeTZqUVFoVm9TNTA0VXdWQWxZcSs3SnRrbjk4N1NGNzdIa0cwKzJOS3h4RE01Y2hhWG1YNTNjaWE5b0Qrcm85UTNKeTJsS0RXblRYcFdDQWdCSVhDaUVKQ0N6NGthYm5WV0NBaUJEUkRJRVh5NFdmNU9iK0NZTnExRUNqWVh4OWZxcGdnK0ZrTHIveTZDei9xWWp6VmFSa1FSZk00OE5pTDQ1T2ZxVWdTZjNKby9WOXA1dTdmdnVHcythUVFmUmhOakxBNi9tcHVhbkVkLzJSTjJjZ1pjREpNWUVYR0FRL0xKcGVzNDU1Q09oM1FVSmdnSU9EMXF3MEMyenRhVXFsZHJlVDJmc3h6Rk5YV0o0Rk9EMXJwNUxTZHh5VHpnM2VaVytWT0gvMzdXYUg0dng4L3ZPK2RldEM1VVJiV1Y0RVZCMXMzdFZHV29rejEySUFlOWNuQnMvYStpRnBWbEVzR25EQ2ZyZlZuYTRUeVh0SkJUZjdET1BER0VyUGJrRklGNmhQZ3FHVFZyek83djE2NlNzbXJ5SERyQnh3b0pWNE5Gejd5bDg5U2FtMHVGY2V6WjE1S3ljZ3F1ZkcvWlozTCtERU1ZNWI1Vkl2aWNHZm5yRGVIb1RrdGNnbDlETldkc3pXVjh1Tk5VT0tlMTFZUXU3czlUa0ZYR3RBUXhaU3diZ2pXcWJvUWdReG5XQ2tWWDh2Nk1lVGhIbmo1Y0lubWhKMkNqbWxoelhxMnBpL25FSGk0MWpwUTFKM1JacmkwUTgxRXZRb1dKQzJKakN1dXpGTnhLK211UmZFdktVQjRoSUFTRWdCQ1lpWUFJUGpNQjFPTkNRQWdJQVFPQkZNRUg1OUtUblhPM2p6eFAvTncvTU1wbHMvNUh6amtNVnJYcDJBayt5SmZqQU1SQWZpanBYdjVHNWJTOXBmSG5XL3NvQlo4emtMT01pQ0w0bkhtR2llQ1RmdVBZVitPTXZIVWt5MHVjYzVCMFdneEpPU2NoQ2lYY3h1S0dtdEsrRURpSkJKL2FFYmpFNEpCNG9sZjh5RDJMa2ZSK3pybXZGVlRBZThqZTY2VVJaOGY0T0RjNEgrQUpRNm53WGdWVm1Wa3M5UUt6Z0lVejlIUjZpdUN6OEdETktONXlmcGNTVm1nQzVCNUNUOTNXYUE4aEdUanJ6QWs3c0ZjSFpBMWV2K1hEQklhTzE1TGh4Qm5GclhQSVBsOHFlY0RJSTRKUEdZalcrN0kwd2VjYzN0RjhoVVJ6YytFdytQNzlhY0srUUhFdFNqWldlNWlqZDBqc2I2MFFJRGZ4cWlSbEk1UE90ZFdZSFRyQnh5TEl6QjJYMXVldHMvbFlydFgrbXJXNnRhMUxQd2U1NTQwSk5iaVJhUEgxaEJLSENEN2xvME00S2RSeFVDeU1wYlZVU3JBQlB6TFJocEpMb09VOUxzK0pxdEFmRHZ1NSsvcEhlbDhzUWtuc3hqNThaT3E3bDJydHR6MkpKVWVrU1QzTFdmRERmdHpmN2hWbkNkZmRZcXNaNjRCY1E0aFd5UEE1Y3RMem5IUDNXRmhSaUVzenFKaWgrcFd5RnozRGs2bktaOE9aYzNLV3BxOXpNR3V0Vzg4SkFTRWdCSVNBUjBBRUgwMEZJU0FFaE1DeUNNUU1Uc1RhUmJubm9aR3F2K052TFh5eW9GbXM0WVNndU5OUUhyZlZrZVFNVTB4bS90Z0pQZ1hRSFVRV0VYeldHU2JMaUNpQ3o1bkhRUVNmOUx6TUdmcGIzK2RjbUE5dW5sMWpJQTU5dnVGVndaREpyYXMxcGFvYm1ublFqNGpna3g2K1gzVE9QY0U1OXp2R0NCUG02NDREaWUxdkdtWUMrNk5YTytjdW1Ya1d4eVNHMko0cUdkUHFwbUhMR3JxdytDTTlIZFVpK0N3K1hNMFZXTTd2V2lkbzZTV0R1UTZNWXlENE1HamNnSWY4MnhwaWdqTGVPb1J6dUUvaldqaE9IQkY4eWw0aDYzM3B1VzZtV3BSenV1Rkl1NzVYSWdpZnozMXpjczlaeU9UYXcvZjVtc08zRkJ0R21ITHZNS0dmcmphUUJiOW9WVjd3KzFaakpvSlB3ZUEwWkxITzVtT1J4MDd3eVpGN3B1RjJXbXdWZS8yK2h0TmxqZlYyckpQekFBVG1XUHBiZnhtdkI5azI5VXBBZEhsSDV0eXlGc2tvMXI0eFpCZjdHUGFNYyt3SDV4cElyRmYxSkhCSW5pM2tIRlJZYVFkckJVUWF5TlJjZnMyZCtVcVhJdXdyaE0zNnJDY0E4YTM2ektDVWhaSlRqZ0NVQzQ4MXJic0hBYjYwTDBRTWdERDIrRVE0TlM3UFBLVzBzRWsrbEhUdjRnbnNJdmMwQUtoSGhJQVFFQUk5RVJEQnB5ZWFLa3NJQ0FFaDhKTUl4QXhPSE1oVGpQNm4rOXNSdlRiS01jT0hDRDZITVZOYkNRR2x2YXRWOE9Id3pRMmVIZ25pR1RkTWtlRE5KWnl2eUU0dm1hekRlb3ZSTE5mZVdBaW5Fbm5iMkhOTGsyMjJxSFBKc1Y2NjdKeWh2MFVtSGljcXhydzdSeG9leGxGUDlZMzNGdWNpSVpBd3BrRUlRcEwvV3hISENxRVVyckkwU0RQTHg0SDA3a0dsRGFXMlZJTFljZW1aOWZSNC9DSmVlUUVWbDJuQ1NJZ2l3dzk3VkRLempQY044d3VqOVZycGdzNjV4MlRVQmNaMmZNUTVkMjh2VXo5blA0U3hGWkxCelRNZC9DdFBOUHJ5QWlBd0Y1bXZNUUwyQXRWVkY5blRjU0tDVHpYOHF6MWdPYjlyQ1Q0MFBQZDlHanRXK3AxS0FiRlhCMlFMWHR6cVJtMlBrQWxXaUxQY3hFRE5ETlZQSEU2MVNRU2ZNc1NzOTZYbnVwbHFFYUZKL25zaVhBelBwSlI0Y29vNU9lVWZDeG42L05wRUp2WmoxL2JmdW1rV3pucW9COXdvOFJ6OVErV3J4MTVvcXpFVHdjZWFPVzIvaStEajNFWDlHbkN4QklUVGNEc1FROTdyejNmVDdEbGIwbDYvcjJGMzExaHZ4enF0OEZpRWpYcG0yNVF1ZWlxMzdxOFpKcXlvc1lXWldDTXY1VzErRUZPeFEwekRSaFVXOCtOczdDa2hTL1A5NHl3ZHB2SHlLM01iMWVTZTRiM0N1a0lWSTJ3c2ZDTmpvYUduejNMbXZGbWhJbTBOTnExNUNiMTI5K0JoTG9HaHBEUWRKNGhOSHhyVWZyN3JuSHV6UDUvUElYbTF0bGZQQ1FFaElBU0VRT0lES0dDRWdCQVFBa0pnT1FSU0NqNFFGOEs0dU54Z3UrN2crT3JwWkJMQlo3bXhYYnJrdlJGOGV2WVhnc0Y3aG5lQVd5VzV0SlVVOGJSTkl2aWNlWVNXSmhYMW5HZHJsNVc3T1YzckVNUkk5VUN2Y2hMcngxUVpBU2NLeHQzTGVvUE1yd3hHWWNKNk1YZFRLWGJqMm5LUXJJMW5yTDRTby8raEdLMzNnT2RhaHZOU1lnK2hOUWtiaFpSNHI5QlpHQ2hSVEV4SjNqTU9FTWR1T1JpZTM5WjVVSEI2L3RuQ1JtYXJ5UmpYQ2JFU3BoSmlxVlgyOUhjUmZHclFXamV2dGJiWGZwL0cxdU1Fd0lIUDJTV1ZQamZzOTM0amNYUFlRbUd2YTNrclh2VDMzL2l3RElUaGFDWE5jM1A2OTMzWWxob0NwQWcrMW93NzQzZnJmVm5qdXduaG1uTVNDaDQxZTZIY084TzcrbnNHUVRxRmtIVnVpNzBUVmgvbXZFZGhPN2NhTXhGOHl0NnAybHdsZTMzS1BGWUZINXp1ci9PaGRXTFloZXA0cVhuWVF2QzVuVmVNS3gwenlBRVBpMlN1TFNkVjMvYzZrUUJMK21PRjFTV0VGK1NNSmNKaVUvY0wvUm9kYSt1U2RaZGdZK1dCeE15Rm9zdjdDMFdvczBIc2FTWHpUT3REcmVkSm52QldxcmhLdlJDbUlFUmZ6MnA4NWU4eCsyVEpmbmh2NUo3S2JpdTdFQkFDUWtBSTdCVUJLZmpzZFdUVUxpRWdCSTRGZ1pqQmFUUmFJR2Y5Q3VmY1dYMW5iK052SmZUcyswa2srR0RzNWdZRk1aa1BKZUg4dUhEUTJHTW0rT1J1Z29aamRxdEJidmRsR3c1a3lpSENyWldXRzlTUW1rSmpSNG1qZFFzMW5TM3EzSENvWjFlZGM1N1ZPRExZbnhPWEhVVzMyTzB6MWppK0l6L3ZqYjh0eHJPWThkeHlrTXdHcUVNQkpVYi92VHFGTzNTL2V4RkxPeW9KeGZXSUFzVWVpSU1RMm5CQTlpTDJUTUhpbldLUDlmeU1zWm1ib1VpVmN6dDNpVFowSDd6Q0FsUHZkY2wzcDdDS0gyY1R3YWNHclhYeldtdDd6ZmNwYkRsa1VoeFB1UkFMWEdqZzVudE9lUzJHaUxXV1AzRUl5NERqWisxRUdPVlB6YXdVY2c4aENsa2ZVWHRyU1E4WTFJQ2VPcEFYUzBrK0l2aVVvV3k5TDB0L04ybWw1V2ptTmoxcVBkTjVhQ25tL0llQitQMmNNZ2grSXBkVmRreU5CNmZxYVFrVm9wVHFUMlB6TmlObEhUdkJoN0R5aEdkYk81V29kZEttWXlUNDhONmcxSmI2cHNiQys2VG1ZVTRsSy9WOXJWM2ZlcFd6OWh4TDFRY0o4cVdKSDVkVTBiSFVnN2EyaDFuand6ZUx2UjVobFhza0ZIb2dzbkVwRnRXWU9ZbnZGNnJodC9lS3JpMTJrMm45anhyK0R5VHRNRUhJSlp4cVRIV0x0UlFWeHhiYjRaeSs2MWtoSUFTRWdCQTRBUWlJNEhNQ0JsbGRGQUpDWUZNRWNnU2ZIL2diQlJ6aU9ReHdHN08zMU9WSkpQajBkbHF0TVlGaVJJcGpKZml3OXlBOEY0ZnNrclQxalNYTElWTFNCeXRQeVp5TnpaR3ZlK2w3d2kwdGtURHEzaUlvV0FvK2FhUnpjNFV3Qks4dUhDU01VQmh3bDVTV2pxMHZsbE9yc1BtTFpoUEJweSs4dFliOGt0cTV4WG1sSVNQR1Q4aXJ1UVFSOTc2ZTdOeDcveE9yOXpyT3VaY2JFdW9Zays4NUVJNUtiNG1XWUxKbG50UjdUV2kySzNlVWlSZkJaOHRSenRkdHJlMXpDRDdVak9yV2t6Tk5nRHpIVFdyT09qVUp3dDFUTWc4c3NYN1Z0SzlIM2praEpXcERvRm43MmJueklJYkhFZzc0UXlkVmxNNmJ1M3FIYVNvL0lVaGVQUGt4cDdKVGNzNncycFVqM09HMFJMRUJOZUl4L1dFbXpISk1SZEtxUC9lN3RjWXR0VlljK2x4RThSUEg4OWtTNEM1dGk1Z3o1ank3eFBveXQwMnR6L010UVBXR2tNNnA4OS9iL2JrY2d0ODBwZVpoN3N6VWk1alRxNXhXM0hvL2h5THVPNGJMWlpkTUZFem9iQWpMcGNUYTB2Wnhaa29wamU1QjBacCtRT0pCa2ZXcmlZc1ExdnRvWVlIQ0RTUWhWRnkvYVdWdS9KMHpLcGNxYitvSk40U2lxckczL1AxZ283bjY4QjUrSWxGL2pQVCtxcUUvaFBTaTdwcTZHcnU0NldOckttNXQybEZWTGdTRWdCRFlFd0lpK094cE5OUVdJU0FFamhFQmkrQkRuMy9WT2ZlTmhSajlJdmdjeHF3NlNRUWZGQjB3SmlMZFBrMWZjYzVodUFxSlA2Mk9vVjRqYnpsRWV0UlRZbmlQelpFZWRkZVdrU1A0Y0VNS28xZnM1bEp0UFh2T2oySDE4YzQ1akR6VGxETnMxVGdYdUpYTnU0QWhiYW4wbjd4czliUjh5MEd5VkZ0cXloWEJwd1l0TzIvTnZMUkt3eWlPY3dKVmlmTVltU0gyNEV6bWx1d1NVdmZUNmxtWHBpR3FidWljZTdaejdsOW4ybmhNTnkxVHpwZmVaRTBSZkt3M1pMdmZyYlY5THJHRDBBU3Y5MDZQVkM5UjJ1SGRxN21KYmJVYlloRUtOc2VTQ04rRnFnKzN3MUhvSzBrb1hVQUtSbFhJU3RaKzluRStuS0ZWVHMzdmxzT3ZaZTRkT3FtaUZEOExPNGdBZDVvVXhrV2hGeVVLeDNGNmZlY2N6cmZXWk8xTmIrTERDbEcrcGZnRGtmWU9IWjNrMWxyUmM2OHp4ZS9RNTZLMUpuRFpnSEhkSytIWmVrZGExcGZXOTJQT2N5aTZRWWlEOEo1S3VmQStMUVFmdnNlRW13b1QrK09QVkhUbTJBZysrTWc0STZPa0cwdVE0eUY0ZktrQ0l5dXJSU3BLS2NaWTVmYitmVlFaSXZRcTlwNFBCbXU0aFYzWUhpNm92Y1k1QndIbTNTdUdZcHUyWXlUODhIM2pHOGwrNnVjeXdLRXFqaUpzVHBHU1MxMm85RVBtZWJnUHQwNFk5WGRPbFB0N2o4MWV5bHZxVzd1WC9xa2RRa0FJQ0lGZElpQ0N6eTZIUlkwU0FrTGdpQkFvSWZnczJWMFJmSlpFdDEvWko0bmdrNUkreHRpTEZDL0Vock1FMEhLVEIxbmJwUjNCc1JHMWpKODlac0d4RUh3c1EzY1ByUFpRUnNveG5qSTBjOHNQbzlIcGhZM25kdHo3SXlTNHdzZk5iSkFyQ0F2Q0xibHBzaHdrWnNFclpCREJweS9JY3d4eEdFVXY3aDBFT09wS3dzeVVFSHNJUzRDelkwem5DbTdTUWliZ1hSc0pjUHgvYm1DT2t1czRGaTJDVVFtSzNGREZTTHRGQ0tDUzlwWG1TVGxmZWpoOHAyMFF3YWQwUk5iUFo2M3RQWnlncUhXOTJiaWQvQkJQamkyOStXNFJDbUpFMWZYUjdWOGpheXRyejVNS2lUNmxpZ0xXZm5ZSnRRNmN5SVNKU2FXV3VXZnROVXYyQ2JsUnM5NlhPZC9ObXRsaTlYTzZobHZxcUQzZWxYUDc4TENYU25SaVdrZE9UWWpIUS9XaEdseGllYmNhTTJ1TTlqNFhJVDhUUm8wOVZDejFWbHFhTzg3aDg4ZEE4T0hNQnhuZ0tobHdjdVFlSGtzUjZ1Yk92NUx4T2phQ0QzM09oUmZrOXpuaERtT1k1c0tDMVpCNFM4WnJUaDdVVFZubnh3UVJES0kxODJ3TWJaeDdKeUgwdk1tSFkzNXZKZUY3VHJ0cm4rVTh5WDZKdnZCZVhzT2Zkem1mM3NqdmRYTmw4ajJHZlB0bGIvdGh6MnV0VmJWdDNHdit0ZlpIZSsyLzJpVUVoSUFRMkFRQkVYdzJnVjJWQ2dFaGNJSVFFTUZuMmNHTzRWdENsbGkyVmZXbG54U0NUODRRU216eDEvcWJQRGNJSU54U3hjZHlpTlNQOWs4K1VUSm5EMEhCeHpKMDk4QnFEMldrQ0Q0cGcyREorRTc3eFMxKzNvWHJ6dWdzdDIwL1B5Z21mTURmc1B2NGNPUHNDNE5xRCtwREtlZHF5a0d5aE5QUDZscktFRlppckdZZXBzSU5XUFhXL280akZ1UG1mV29mRFBJekp0eUdMQTNqTnJPNmYzbThSVXI3cklORSsvT2RjN2VzbEJySHNFdFlRUWc3WTRLa3d4cTcxOFM3eTdjSmRaSlNVc0xlK3NKWTNUSFNxSkozcWFZdkl2alVvTFZ1WHN2NTNVS3lDSHZBdXd4cE5EYlh4cnlvM2hFbTc2OEx1MitSQkNDT1FJVDVZV0Y1aDVZTm91T2p2U3BhcnUybGlnTFdmdllsbm5qUmM2M0xxY3JRcDVhNVorMDE1NjV0MXZ1eXBnTXJGK1pxdXJlMHlEZFRkWjNXOThBaUVhSEFnUFB6KzE2dEswWHNZaDhLZWU5VHJRMkpQTGZWbUIzNlhHVGRScEdDZFRTV2xoaXJqc051T3MxYjFwZWU3U3NwaXpNZjMwNUliN0ZVcWlnWnN4UE1YUXRMMnQrVDRBTlJhUS9mY3k0T0VDS2VjTU94MUROOFBOOTVWR3hDMjlkWWJ5bUJ0MlNzNXVUSnRaTzFuMjhNNndWcnlndjltdkpoaitNYmg0dDZrQVYvTUtjQkIvNnNDRDRIUG9CcXZoQVFBa0pnendpSTRMUG4wVkhiaElBUU9BWUVZZ1lueUFxRTVPTFBwVlBzSm52S09aMHlqdlUwWkdMNDQwYkRnd2VuMldjNmREN1daZ3pUT01kUkNqaVV4TTFuNGtGUDA5Sk85ZFJCYzhsNmY5UGY1QTMzSDFQblJPb1cweHBHcXRoOFNUbEV1Slh6MW9ZSkZodnJFZ0tJQ0Q0TllDLzBTTzBhaXJNRE9lK1BWclRuR1o3d1lUM0N0d1NKYk1wK2p3L1RBWkhpLzdNZWpQeCtMQVNmaHE0M1BjSU52NGNPeEk5SEpwN21PNFJ5MDFTTmhxeU1HY1NnOHdiUHNRNmdWSVloZE84cHZNVzU5L2JPYlI4T2pLZE1icWpPTFcvTjUxUGZqajkzenZHOXpjbk0xN1JUQko4YXROYk5hem0vZXpsQkwrcERFT1JJZXpXS2pKYTZ4TjhOKzdDck9lZSt1QzZjcTliR2Z2bUJQc1JEcm1MT1Y5eU16eVVMenlYMjJkWmVwbVh1SFRxcG9tWUNsU3BKNU5TdWVyNG5PY0xXbEF5U0l5WXRNYytzTmE2bkxXTTZmc2N3RjNOalJWOTdxeTNWekg4cnIrVTBiMWxmckRxWCtEMUY4a0VWajMzYVB4UlVlcWdFSDc1eFZ4ejY5d2ZlRnNhNUNRWE5yUlB0U1ozdmZ1UkRPYjJ2UXlOUmlIbEhSTDJhb252V003ZXB1WGV0bElSa2tZem50ckhIODB0OUs2eTFxa2ZiOTFER1V2anRvVzlxZ3hBUUFrSmd0d2lJNExQYm9WSERoSUFRT0JJRUxJUFRGdDJzZFU3MzNLaFA4U0RzQllhWHFheHJMUjU3eExlMkQ2bjhTeEp0cUhOdGdrL3U1cy9VTUpDTFEzNjNTRmloWG5pbnlra1pJMXJISjJhQW0wUHdnU3pReTBFYlluRCtTZGliOGJmVStzSHZscUY3NmJGYXEvd1VCaW5IUnc2elZKdHY3aVdzK1IweUtBNU01S3hSNUVHcTNWTGphY0ZDQko5eTFGalBuamFRZGU2YWVJUndnMy9tcGJsUnZKa212bm1QY2M2OXlqbUgzUGMwUWN6Q21MKzJrazk1ejgvSStVdURoRDAzTnM5WisrQUI1My9PNEdTNTcwYWhJbHRoeTZtQnRYN0RVbTBSd2FkMWxKWi96dG9yOTNTQ0VycmlUNHd1M2NZNTk2TENicWNVcU1iSFVkaENnZUtZRTk4YlFyamNPTlBKa2pHMDltaVE3YTg4WE1UNFdpY3dMUlVFcWlscGQ5Z2NxeDl6Q1NUVys5THpYR3hCZlFGUDN2NkZSTVpSZGVsQlB2eGRMRnRQcFN2cjJ3OFpCSEl6Ukw1ckp0cjhPRStPdHZwZTgvdFdZM1lNYzlFS284ZjZ5cHE5MUZtelpwekR2SmJUdkdWOW1kT2VPYyt5WGtLOEh0VmJhL2VjaDBidzRaSUV5bEdQRFVMOFBtb0FFWExOMXNtYVc2V2tsbHcvOE1jUjh1b2VpVXc5bFlMbTRwa2lQTldRa0VUd2NTNjBDWER1aDRSYmtuN0txOTd5NXpUVlhoNk8yZmRxeStEOHp4a3pUR3Z1ajBvd1V4NGhJQVNFd0lsQVFBU2ZFekhNNnFRUUVBSWJJbUFabkxabzJwWUVuL3Y1Vy9EVGZxTzBjeGZuM0g5ckFHT1ArRFowSS9wSWIrZGJXTW5hQkI4SUN6aTB3NzFIekRDUWNoUkNaaUVPTnFHSDFrcDdKdmkwRUVkcWNJc1pDMFh3Y1M2RlFXcmV0b3dUaHBQek9PZHd1SzBsYVMyQ1Q5bmJ3ZGk4MUt2enhKN0FjWTJUKzVKZXpTSkc4TUZSaXh3N1R0dVkybkEzb0FBQUlBQkpSRUZVb1k0d043eC9QVU9sbFBXdUxOY293UTRaYVkrSkVIV29DVXdUVXZHb1cwM1RSeWIvaGdPVmNEamhlRTN6UTd5NmM2VHNQV0pBbTNMT1I5U25jTFQyU2lMNDlFS3lmem5XWHJtbkV4UW5KU0h0VUsxTEpRaXJPREZSUXJTU0ZlS3BSaEhJcW12UHYxczRsSkFtMkgvemZicDFvcU44YjFCUE9MMFRFRGxsZ3JHS2xybDNES1NLVW9pdGJ5MkViOVNiSU5XbHdpeTFZSnhxbjRVOXp1by85cVFrbkloaDZqM0h4dkt0Tlc0cHA2T0Z4eUdRemF4UWlOL3hhaVdmTEoyMEsrYXpTQmc5NS80YTNXSWZpaElieEwwblZLcXhIaHJCSjJVWDJzTFdFeHRiSzNUV3AvMTc4YzBaRThOU1Bkd0xnVG1uL2xkRFFoTEI1eWZQbURYMjN0VDNwdlk3MDJPdDZCbWFiOFlycEVlRmdCQVFBa0lBQkVUdzBUd1FBa0pBQ0N5TGdHVndXcmIyZU9sYkVueFNoNEZXQTh3ZThlMDFwalVIdnBZNjF5VDRuTXNickg0dDB0Q1lZZUJDQTVIbmJZTWpBc05IbUY3cG5NUFIwUktDcUFXbjNnUWZIUGRoVFBkLzhtb2dPV2RYTGRtbXBhL2hNN1YxNG9nZ1RNQzVlMVMrNHpJZ0R5Q256YmhOVTBybXZ0YndzbFhYUmZDeGtlZjJPaVFQeUR1eEJJbVJNSlRJNmFmVzJIRStNSThJeVlVaFB5VDVVRFlob1FobnVkWmFaL2YrekRsd21IRlR2MWVhcXBGQnp2bVFWd2k2U2VUTStuWHYxSVN3QTBtVS9EM0lVSVJENFJzVEtpdU5mYXk5VWQwTG05WnlVTVJEK1FzSFhwaGE5MTJwdG9qZzB6cEt5ejluN1pWN3p3VkNrUkphSkxhdWpiMzl6ejRNcGFVSzhZc0RHZWhkemptVVRHS0o5NS8zbGp6SG5DeEg5Z3Y4dDhmQzRDR0RNaU43bFZRcUlRcFpkZkE3KzBIR21EMXZMclhNdmExSkZXdUhMTXFSdTdqNUQ3SG5oWWwxbnZmcjJsNXhyMlRjU3ZMa1FqcWhGZ1RaNkhVSlcvTlhmRmc5eU9zOWs3WEdIU3ZCcDhkY3RFaGtqQk1xSzQvb3RNL3FPZTdXdXRpeXZ2UnNYMHRaWi9INy9wbzlMV09JMGxKSThsdmovTm5xNk0rdDQwLzNpcGsxR0xSZ2JUMWpoU09lUzhESmhRR0RVSGVkeU1VRXE4MUwvUDZiUXhnMTF2YVkvNUFMTFp5TlNwSUlQaUw0bE13VDVSRUNRa0FJQ0lGS0JFVHdxUVJNMllXQUVCQUNsUWhZQnFmSzRycGszNUxnOHd4djBBODcwbXFnaXVHTE1RQ25JOHBBaDVKd2hsdzRhT3l4RUh6WWEyQmdpeWtGTUZhM1NJU2pTUm1NZ0luZm5yUkRRK09TOHcySE03ZkpwdW1maC9mcHU4NDUvbHdpYlZIbkV2MVlxOHdZSVlxNjF6Q3c5dWlqQ0Q1cEZGbkh3QWZsbnBUQ3k2amNBM0dIWkJGOFVHYWlYSlR0bnB5b0dpY1pZY0JLNWJ0N3pJUFNNbExoRkNIcVFMeUJvTVBhTkZYSjRjWXJheFlKZ3R6Zkc1V2xNR3hSeFNydDF4VThJVFVrS3U2ZGNCWHJYODZZamlPb1p5ZzRFWHhLWjlqNitheXpTRzhuYUFtNWczQUFPSTNlYXNCUjRueUczRU1mSVZZZWErcmx5SjZHLzR4aDFVT1ZnSEloc2tQVXp5bWlrYTlsN2kxTjhJR28vblpQVW9waDFGdjl6SnF6dWJCWWhQaTl2eWNFeDdCRzRRZFZwdTlabFZUOERxSHV0SVN6OTI5OGVDNUNoc1VTSVloUS9yT0lmUlhOK1hGV2E0MDdWSUxQV25PUk1XRi9tMHJNTThnR2hBbmVVK3ExTHU2cFR5MXQ2YVhzMFZKM0s4R0h1bEx6YmkrcVVWWkl3aHIxbWhEYlhFaDY4djdINGNMVU0xc0dwUE16dVRCaUVEVlJhL3hTWVowaStJamdVemhWbEUwSUNBRWhJQVJxRUJEQnB3WXQ1UlVDUWtBSTFDTVFNemk5MzhjeUg1MkE5YVdXUDNGWjU5eHJBbUxBbGdTZmxBTWNlWEVraVd0VERGK01VSVJ4d3JsNEtDbUd5N0VRZkhKRy9oeng0YnplT1hEcHlDRGlGQ2E4elFjUFpZQVBySjBYOUd2VXM0L2NZZFp6V0ZLM0o2a0RoUlpJakZ2ZlJMVDZLNEpQSENGaXpEOXhJSzNjUFFOZ1RObWxoT0JEa1JiSjU2dERLSnZiZTRmajN1WVE2enNoZVhEcVlaRC9vVFhKS24vZmd1QkRFeS9uRlFoUWt5T2hlc0VjV0lwTVdRbExjZmFjODZ0MTM1V3FmR3VDRHdxQmhFK0xwYzg1NXdnZDAzdCtGZy9FeGhrdDUzY0x5Y0xxa2hWNmd1Zi9jbkFZMzNCQytrdVZXYUlJOUx5QjJIK1BoUlRQTGo1OHgvbVBjR0FscVVXQndTclhJdWFVWHBTd0hKYTBZKzU4S0FuVE52YTNwYTZsQ1Q0V2FXQXBra3BxRGxqOTVieDQyOFREckh2M3NpWlg1ZStvYWIzSE9VYzRvVEJCUnY3NDhEdnZiQ3pWcUQzVU5NdGE0dzZWNExQV1hNeWR1Y2R4NER2S3VLTEMxRHV4ejc2WnQxblYyTWNzZkZyV2w5NTlXNk84UXlYNDhLMkFKQk1xRzRQWnN6ekpaY3R6VCs1c1R4dXhSMEZ3K1VURElMTVdvbllXUzdYRW1ZYnFpeC9KcVNqV2psR0s0SVA2YmUvdmxOVkJ6dlFQaTJSYTZsdlJRem05MTN1dUVGM1c3TkR2UWtBSUNJRURRMEFFbndNYk1EVlhDQWlCZzBNZ1puQmFVODBoZHBqWWl1Q0Q4UVpsbmVzR296aUhrQ09DVC9zcjBlT2dhZFdlTXhqbTFIdkdjbkZZSURzZlMwc2FHblA5d2hqMXh1SEc3UGVkYzQveHR4bjM0UFQ5YVI4MmlEQmZOY2JSYVY5UkNPTEdHRkxzLzhvNXR4ZUpiR3VlN2VIM25BTm1hYkplci82TDRQT1RTRUtTZlhrbUpCZFBQTXFIUEFsRGFaVVNmQ2lETXhuT2FkNjVWRmdiSEhXRTdHcDl2M3ZOazVweXdJLzV6MXFKVTdRMnpTWDRzSTVkeWhPUWFrT2Q0UWluelJBZE1XSnY2V1NveFczTW43cjlQMmZmbFdyTDFnU2ZYTmlZSlp6Y3JXT3l4WE9XODNzcEp5aktJaWwxc2hFSHlIT1BOOTR2OWlhdmNNN2QyQUF2dFJhM1lqN2RFejE4dUN6eGhNS0M2RGVxbkNpOS9HUGhNN2xzckdNdmRzNzlUaUpUemZ0TW43ajRBVWsrbGVhUTZEbnJFWnFML1h0SmFwbDdGdUZsN2prYmtqdVhjVkpoNGJad3Z1YldOL2I5b1Fyc2lEMGhMbEVDN0pseVRtKytrNmp6TUdmRFZETlBhOXRyclhGTE9XMlBhUzdtQ0FmamVLQ1dSbWpaWHFxUzdIMEpJZmZjSWNUZzEvd2FqN3BsYVJMQjV3eWtlam4rUzNHZjVwdWo0RU01S1JXZk9lU1psbjZrbnNtRlNPUVo5aDJFMnFwSk9XSVQ1ZXdwSkY1cWZBaVBlcTFoTC9HK2lvNzNEbnRmVWZWUFpKMDdiMnZyN21GMzdmV2VpK0JUTzNyS0x3U0VnQkRZT1FJaStPeDhnTlE4SVNBRURoNEJFWHhPRGVFNXZLUTM0UyttQ1VQcGxiMWhwM2JBUmZDcFJleFUvaDRIelZ6dEdIZHhpcVp1MUwvU09ZZlJKT2QwdFp3NlNPZ1Q0dXQvdHNOUS9XUVloeHdEMUo4NjUvN1lPWWZTUmttaVh6aHF1RDEweCtIdnhGbHZUVGhUS0FzRDA4ODc1eDdncGZwcnlvTWNoT09NRURRWG1UeElDQTBNdVMyTytacjZqeUV2NFh4d0trRW1DTlBhNFJ4SzhPUU1RQWcybkk4alFVMEVuMVBJaFdTM0dLYThIL2ZPa0Q5cUNENlV6NWpjempuM2dneko1d3ZPdWJ2c1ZNMW5paEhyLzMwODhZbS90enFNNXhKOFJvSUI4eHdIS1k3bkdvZjdFa29jSmU5bnJ6eXBkNXB2SnVTZlQvV3F5SWZPaEtnUnBpV2R1bU5kUCtPL1U2Z1NoUW1ITXlGcVR1L1kxME1yeW5KK3Q1QXNTakE0bDFmblJGMHBsVmdiQ1AzeTEwYUJwU0dmZW9RMWpPMkphakFhSFVlc05mZjFvVzhJU2RpUytDNndEME1KTUVYK0pHd09oSjNTRUdYMzlJcFd1ZmF3bjRVVVFZakYwblRPZ1JTRGtoSnFRNldwQnRleHpLVkpGV2R6enYxM3YwYW0rckcyQTlZSzFSUnJKeVNNcXczcVBsOHNIWXlLZklRTzVYdGFrNVlJRnpiV2I2MXhoMHJ3V1hNdWxpcHZzVGJjeHA5NWFzWS96SHNKcjR6STJKQmFpSGtpK0p5Qlhlb00raGZEdHhXUzM1SVhBK1lTSlhLWHdUZ1BRVHpySGRLdlp0Nm1GR3c0ajZFQWc0Mms5Z0pCTGlUZVhvaE5ZSlFqQkxlOHJ5TDRLRVJYemJ1bnZFSkFDQWdCSVZDSWdBZytoVUFwbXhBUUFrS2dFUUVSZkU0Qmx6clVFZHJqbWo2OFJ5M01JdmpVSW5ZcS81SUVIL1lYRDh6Y2RpNTE2TkRhWC9XaHVpQWp4QkxHcTkrdWNHeTBJK1ljdDFaUkZNSXdFNmFYZVlObnpnajFzOTVRQmVHRHY1TmFqVmNRZTdoUmpxUXhCcGd4ZmNPSHFQdDhSVWR6R0crbGxGVFIvRjFremNXVmIzRmc5ZTRVRGt0dWVGL1BFOElJWS9oUjcvaitucTlNQko4emdJQ2s5VjhHcGE2Y1U1cHdWTGYwYTFOcXJHb0pQbU01ditYVktzNmFtUVFvTVBEdWMrTjViNGw1aGpQNktrSERXdGFTT1FTZkszcnAvK20zQXlQOE01MXpUM0xPc1ZZZWUwbzVYbEpLam5QdzJGTEJKNmU0OFdsL3kvaWJjenAzNE05YXp1OGx2MUVsNGJVSWZRV0pKVWVDc2ZhVjB5SGlQWWVBQWNuOHV4VmpSMGcrSE5lUUU4OFRQRmVEVWZndTBDOUNjZFFRd2FtZWZTTEVSQWc1dVVTYlgxVFJ6MXpJalJESFIzZ3lVTTVCREltVDhVUHRiTnpianVXZzNBckJicnBQbmRaUmcrdjQzTklFSCtwNWhsZTB6TUg2U1A4dGljMWI5bHljYlQvc0NhNFZ3eFBObWlPUnA4cUdwTVQ1YUluUWhCYXhJdGFtSlpYVXJEWHVVQWsrYTgvRjJMNHBOYjhnVTZJcUNWRzRWT0dRc3l0RVhHd0U0UjY3aFRCZ3pjT1c5V1h1dTdyRjgvL09oODA3ZjFENUdncXljd2srTkRsRk9sMkRJRzZOMTlUMnc4VU92cldvK2RYTSsya2Rsb3BlcTEzSTZrZkw3NXpqM3VHYzQ3SkRtRkI4NWp4VmswVHdFY0duWnI0b3J4QVFBa0pBQ0JRaUlJSlBJVkRLSmdTRWdCQm9SRUFFbjFQQXBZd3djMjRYeGZERnlJUkIrZHVOWTdiRll6aEFRbm4xcFkweVN4SjhNQ2dUVGlGMTI3Z2tKTU4wSEt3d0QyLzJwSnZTMjh1dFkzeVpJY1FjOHVRaDJZZzVoOEdTZHFUUzViM3FSdWo4YUpFNHBvN2N6ZmlXMEZvNWFYYklEcWlHMU41UWE4WDVFSi83RlQ4M3VHMGJKa0pWRUY1anpZU2lCZUdSdUxuSmY1ZU9WQjRhMDA4NndhZlVtY290ZEZTekNJdVJTNjBFSDhxOG5BK3JnY001bHpDdUlnMWY0OFJlYWg2R3FqMnhlbW9KbWEwRW54TGxFRWhTT0tjK3N4UWdPeWczNWFSK3QvOW1FV3F5VjlxUzRBTng4VFN2Z2hYMmgrL1hIU29ja0wzdzJGTTVsdk43U1Njb3pqR1VQbEFyektVU2tnb0tFOXlXRDBQOTVzcmwvZWFadi9ScWlXUDRGd2dZa0RrdjZva1lrRkJTUkhMS3I4RW85UzVRenJlOG10VGJCdkxGeHlQS2o2ejVLSjJpVGdsQkpMV1BIdnY4VnErWVV4UFdobWR6YlF6eHhLbkpmdUZWdnYzajc0ekhEYjNTVHl3a0UvdGwxQ1VoQXFRSXF6VzRqdld1UWZBSjFUcFRjNHl6NWt0OW1CSUkvc3gzbktLMzhvUTFGR3A3a0VteDI2SVdldnVLaGFVRjI5TGlyVEdJbGJORXVMQ3hIbXVOTzJTQ3o1cHpzWVpJT1dMUHBSM3NMcXhGRUxtbmFyYXNaeGNidnM5WDllczJxajJwSklKUDZkdjNrL2xTQ2w5TGt1ckdWdlFnK0p6UEUwa3VHWUZnRDRRWExsNXdqcTVWQVkyTmFPNTliclVKdGMrYy9KT2NMeUd5aHFrMVRLVUlQaUw0TERWWFZhNFFFQUpDNEVRaklJTFBpUjUrZFY0SUNJRVZFQkRCNXhUSUtlTWJCL2M3Tlk2RlpkQnJMSFlYangwcXdjZFNuNmgxOERJWVZxZ3U4dURjdzZDK1pMaXVsS0dqSkR3Q3pnOUlIaEFEd2xRU3JpdzJLUW1EZ01NbDNNOXg0NDJRRjdTck5HR3NmL1Z3QXhDeVdaZ2dNSUh0eTBzTE80SDVjZzVteUY5dldoQVR4aCtqR2FFWWVQOXd1Q0Y1YmlVUmZNNUFDRWN2NmdNWWJrTUNYb2doWkFGdW1wYkkzYzhoK0ZBdk4zRzVLV281czNHKzBuWVVLM280RXExNUUvdTlSUFdJNXdoWmMxTlBkaXlwcDRYZ1k0V0hET3ZGS1VWb1E1enRwYmZRUzlxK2RSN1dCZWJQclNNTldVTFpZVXVDei8weW9TbVhkQ3B2UGNhbDlWdDc1U1dKQUxRUkVzMDcvWGNxMVdiQ0NMSFdXY1JKMWtVSTVGY3Y3WHluZkRVWTFaQm41alN2UlJWdHJLODBIRTlyKzhhd2pJUUFaZXdQamVBRFBtOFo5bTZFaG10TnZaWFNDR3RjcXRRRTJlamFnMm9qWk02bEV1cFNYTmdvU1V1R0M2TithNDA3WklMUDJuT1JQUlJLc3pISGZzbFl0K1lSd2FjVk9lZFNJZk80SVBYVTltS0xudXhCOEtHaWxJMWxEeW8rUlVBVVpMTHNXYTMyb0lLcXE3UGtTRmV0eEhrUmZFVHdxWjZJZWtBSUNBRWhJQVJzQkVUd3NURlNEaUVnQklUQUhBUkU4RG1GWHNvQlUyTTBEOGZDTXVqTkdidXRuejFFZ2c4a0I0d1RxVnZRbzhIL2d3M2cvb0svSGNoTndGUXFWZFpvcU43bFFocmN6VHZZclhKeFNKMGVrVHJHUWMrTkxoek5OU2tuODl4aUpNcUY2aXAxdnRXMC81anlwZ3ljRU02NFdZbVVkNjhFR1lzYi9qaHZtRGY4M2JybEg2djdwQk44T0FmeFRxSjRoV0pPTG1GZ1JvRUNrbHNwQ1dRdXdZZjI4STRUeWdBVmhKS0VLczNEWmtqSGw5UXh6Vk9xZXNRenFEamdoTURSVjVwYUNENlV6UzN4UHhyQzBOMnN0S0xoWFhxL0Q4M0Q5NmwwakN1S1h6M3JPVHp4bGZVaFRFdnNMN1lpK0tDWVFZaE1sQVBEOUJWUGZPUzI4VWxPMWw1NXpqNjhGRmRMaVpGeUlDb1M5aUVYNnBSOFc1QjhhakJhZytDRFNnYWtoWStVRGtBa1gwMDRucHBxMk5OQ21rVTVhWWtRT3BaNlRBdFJJTlkvOE9XYjJySy9vcnplQko5ZjhvU2RjeFlNeHB6dzF3WEYvemhManRnZWxyRUVxWFJhaDdYR0hUTEJoMzZ1UFJlM0lQbTB2TGRMckMrbDgzOHYrWEo3b0tVdm1JREJISUlQOWlMT09TZzljVlorM0xCMy85Y1JZUGVnNHROanZITWhTMXR0UVQzYUZTdURjUFNvMDRXcFJMVTYxU1lSZkVUd1dXcStxbHdoSUFTRXdJbEdRQVNmRXozODZyd1FFQUlySUhCSUJCOVVIekRBaFluUVBjL3BnTlYvZGM3ZE5sTE9IT09EWmREcjBPek5pbGpDQVRmdFRPOFFYWlp5ejlUZzN3cHFpVFBpTzROeis1Yk9PY0lmOUV3cEE5YW5CMW5wYXpubnZsbFFXVTdGNXczZUlmSlBCZVZNczZTTVJhMkdvcHdUVHFHNjRvT1RJMXJOZGJJUWFndjFBOVpKUW9nUTd1SGZWTTZSVkhhY2J4andSbWZxU1FyUmhlTE1IeWNVcTBLODN1ZFZVQ3hsaWZDNUhnUWZ5dVM4aGlQdEpjNjVjeGVPL1JlOG9nL095U1ZDRjlhb0hoSGFqMzBFZXdEVUhHcFNLOEZuckFOaTVpTXF3NXJnTUdjZHhObFUyOTZhdmkyZE4rZjRxaUVybExaeks0SVA3d1JqeFRzZEpvZy9oSDZ5Q0NPbGZUelVmTlplZVluNUVHSlZFamF2WnQvQ2QvQ0pROGlvdTY4d0tJUkNSTkVDQmJLU3REVEJwNFVzbVdvM0JFQVVCa3UvTFZiL0ljTkM3bm1qejdpRUEzNHRnazlMdUtJcFByMEpQdXdIMmJleEg3UlNxOEtDVmU3MDl3c01lNmozT09lNGdHR2xYcmFFVkQzV0duZm9CSjh0NWlKMWNwNkdYSkZTNExMR3ZmUjNRaWdTZm80elUwMWFZbjJwcVg4UGVWUGh3NWU0WUJMcmIrcDd4L2VaY1VWUmxrc1VLRkh4dllIQUE5R2poampKQlRFdVpIeGlENEEzdHNGUzcwRXhqa3NKdFhhZ3h1WmtIOHZaTlVwVXExT0ZpK0FqZ3M4UzgxVmxDZ0VoSUFST1BBSWkrSno0S1NBQWhJQVFXQmlCUXlMNHBJd2tQZUozbjgyVGg3aWRNMDNmOXdmMmp6YU9Rd3hmYnBZUUMvN2JqV1Z1OFJna2pRc0hGUjhLd1llOXhPMjhBVEJuckNtOW1XM2h6eTE5d2pQazZzSkpoR0lVVHBrZURscHVsa0VZZ21nUnBsckgyQklxUHVCeDQwamJXbTVENXNJMktGUlhmSGFpb2dNNU1yYXZocFR4N3dzVlFTQ0FYWHdJWDNSTlQrYTV4cUF1Z3dySEVva1FVNFIwZXZ5azhHTW4rREErdit5Y2UzSWhzUWRpQ21vNGZBTmJESzY5Q0Q3akVIRnJuM1UwRnVZdk4wZFFEWHV1bjZNbG9jVnlaZFdvSGxGT0t6bHFiTU5jZ3M5WXpnV0hVR3lQcVNUNlFONjhsMS83ZTN4SGxuaVBVMlV5VGs5enp0MDdrWUh2S0NFWmU2YXRDRDYvNWdrK09DVEN4TnBMYU15VG5pem5kKzArcGhYUDNPMzFzVXdjZ2x3NCtHNUJKY3h6bE95ZU5hZzRYYklnZjIwV0NKSVBIa0tVZnFieVFaemlmK2FWQ1NvZnpXYm5YTU03elo2djU1ckUrWU85eWxWbU5wYXg0NTM3N0tTY0pSendheEY4NkFiN010WTJ2aCsxcVRmQmgvcEx5V05yckgwNTVaQXBWbXVFMkxIV3VFTW4rR3c1RjlrL0VlYXBkdTlaOHI2d3orTDd3eVdYbGpWdGlmV2xwTjE3eVpQYjY3WFlBTUorVVQ1bmo3TU1aeUZJdW54bkllZ1F1aERDNGIvcmZQRWtoeXZmZVJUK0RsVmhNN2YvbWFPS3M4UmNaQy93am9qaU5IV2hLRXM0dFpZa2dvOElQaTN6UnM4SUFTRWdCSVNBZ1lBSVBwb2lRa0FJQ0lGbEVZZ1puREFVNDFqOTRiSlYvN2owaS9pNk1NS05LV1Z3L0JYbjNMdWNjNUJ4cHFsR29TVFZwZFJCa2JBL1Z5MVVQNG1WSGNOM0RVTmk3NkdMcVJzZEFzR24xUEQ5S3VmY25Ub3BTZFRjWXVTVzh6Mkd1cjgyYzhCU2NlRUord0ZoNTBzVjVlZHVjTFhlM3NvWmpXN2x3NWRVTlBISGZZcUZFcU1NMWdQcW00dHBUWHYybk5jS0hWZHpheGxES2JlaENUL1NNMEY0KytRUUt1UDFQZ3djb2V4K0VLbmdXQWsrckJtb2Y2SFlnd0pTU1dxOVRUd3R1emZCaDdKSGh6YUVIYjd2dFlteGYvN2d5R1d0SVh4UmphRzhSdlZvam1wUENZYXRqdE9UUXZUQitRSXBOWGJySHJJYUpFTG1lTSswRmNIbjl3Znk3WXNpSFNFVTNOVUc1VWoybVNjOVdjN3Z0UWcrN0JsWnUxQnF5S1dIZVBKcDZmcUVvaGh6K2c4cjF2aFUvWnpSbmplUTdsRkFLU0VacGNxaHI1Qi82VXZwZHlkVkZ1RURDVjN5NWtGSmlMVjFpUVNHRU1VaC9kYVNwU0FlM2RjVGo4TDJMZUdBWDVQZ00vM3UxaExKSUxqeTdzMlpSK0ZZYzFIbTdjUFpmbnF1RC9Pc3BkeEJ2WVRkaEhpY1MrdzdVS0Q4M2hJVDE1ZHByWEhIUVBEWmVpNmlpTWg2eHFVZTFyZldoQm9MNFc2ZjBTR2M3QkxyUzJ1L3RuZ3VkK21KYndiS2M5TUVLWWVMSTZ6MzdPa0pzOHZGSG5Ca1RibnM4STMrT1UvZU9jOFdIY3JVaVVJemlzbWNaOE9FbXRoY2d1cVMzUVZiTGd5azJ2aDFmNkdFaTQ5TEo3N1IySHY1VHNRUzUwd3V0bUEvQzlOY0pTVVJmRVR3V1hwK3Ezd2hJQVNFd0lsRVFBU2ZFem5zNnJRUUVBSXJJbUFabkZac3lyOVVsWEtNblc4d3dMM1gzOFlKMjRYajVrbVZ6c0N4REF3SFNJcGZOOUpaVkM4d1RyU1NuVVR3YVo5QmMwTjBFUjRCaFJ6TFVmTVhmb3g3aG9uQnNJalI2cEVGM1lmd2RXZHZUR3k1SFlocXp6dTluSFJZWGVzdHBwVGlTK3NOcmh4cHFPWTIvTmcvUy8zaDZkNlpVK3A4S3hpbWc4d0NFWWViOUJDaVlxbld5VklUZmlFSEdDb3RPQUloOUx4N2VFY0pMVlV5OS9mNHZRcjdXWE1qbFhXQzBJRi9WT0d3eFBENUFLOElVWUpaYmh5V0lQaU05ZkhPYzVNVnNuQ3JvNFcrc3JaQk1HVWUvKzlFWjNEcVBLSGk5amFxRnhpeWU1QUFiKzczRDJIVFdnaytZemt0UkI5Q2Q2R2VnV0Y4ejJ2ZmRmejNMaFZ5WjI3WXdOU2MzNHJnQTJIdGpwRkdoU0VJRC9Jam8wWlhJOEIzRkJJRVlZeDRGM0JXeGh5VmZDZjVSbjk0Q0l1QmlpaWtpUlQ1dGJvUndRTzBDY2NwemtrdU5WemVFM2xqYS9jM25IT3NiNUF3YVJQa250WXpVbXU3VWEwRVA1U1VJTWZpbEpzbXNDTlVDbTBrREI2S1BYTy9sNjF0WGZNNTlzWVhjODdkMURuSHQ0bnZ5QmhxaHU4cHBFS3dPRzBJU2ZQZm5IT2YyL20zWWszc1ZGZGZCTGFjaTVCRFVCdmx6QUJ4QzBKZ0xPUVNsd3RZejlnTGZ0RHZuYmpFd0wvdGVRL1ZkNlRLU21NOC82MFBBMW15bHBJZi9GK2FJSEwveUg5dklCbVNja3FIWlMzY1J5N09QSVRkRGVmUElaeGY5NEdnYzlaRlNNNThuSE1nVFlWcHJ0MVdCQjhSZlBieUhxZ2RRa0FJQ0lHalFrQUVuNk1hVG5WR0NBaUJIU0t3eHdObnlqRm1TVzFENWtESnBPWW1Jb2RFVkJPNE9SZExjMjhOaStEVFB1bm5FSHgreVlmM3NHNzU0aXdobm5nUFIyL1lVeHdqT083dlh3aEJpeUlIKzZSSCsxdFZZVFV0Nmoxakdiblk1c2lVLzI1RFNLQ2Npczl0RWdvSE9laHlZY2t3SEY3UEc0QUs0VjgxRytRekRLVVlsMmtyVHJ5ZXhtVEdEMlVrUXVCdyt6R1ZjSHlCL2YrcDZIMXArSVZwa2Q4YTVOTGY1SWtRa0RScjF1aHBPWHY4WG9YUWxSQjhrSkYva0NmQXhNTDJwSWFqSnpHRk9wWWsrSXg5YUNHcVRQdlBPOEo2QXhraVRMWEVubjhjSEp3b1Z2VUtIOE1hVDNpbFdGaUlYb29BbHhpY0kwL003RkZpYzRWdkNlUXFIRlp6MWhYVVpXN2lDUVk0ekQvbTE2dVdOV3U4amYxQXYrYmtscHdlWVZkajVXOUI4RW1GZjZWOU5lcHBGVXUwc2dvQklTQUVoSUFRRUFKQ29Cc0MyQnRRSXJ5MUR6SFBmaEQxUVlqbG5QR202YnpEdjkzZE9YZnBUTzJoTFNGM2lhOWJKMllXTkpJazZTL2trcGlhYmNyMmNnam4xNW53ZEh2Y0l2ams3QkF0cXREVGhxY0lQdDA2MTZHZ3BkVGU1dGhkeDI2bDFBdExiQ05UYUdMSzhiVmxwT2JKVXZoMUdGb1ZJUVNFZ0JBNFhnUkU4RG5lc1ZYUGhJQVEyQWNDZXp4dzVtNitwMElkVE5GRWlyM2tOaWt4dTNHMHA5SmNtVmZLRmNHbmZaNjNIRFJ4SWlMTmpSeTdwUnFCaERMcUdZU0JXU3JWS1BtTWJYamxjRVB1Zm9Xa0k0eG54Q0NQS1NHMHF2ZU03Zmc5Zi9NdXhLYVZQSk1qRGJXbytOQ3VmeitFQVhwaFl2QzQzY1g3MTFPWnFkYzhTWVc2R20rVDhpZUdSRWdDWS9zaDRYekk2QS9sb3I1RUtKQ2ZNaHJicXNaa3ljMVRMZS9VYTcxQ0Q3ZjdZK0cyV3JEYzQvY3E3RWZPQUlWS0EvUDFCcFdkSit3Y1V1U29KY3doYklUVnJrSHdHZXVFcUFMaEVVSmxhZUk5d0prQUlXZnNOMmREQ0p6Y2txMHBDd0l3cW1xUWZIb2t2aldRdEFneEVFdHpiNUdHWlJLcWdKQTgzSEl1VGJ4N0tNZWdpTk9TU205VWowNlBWQjJRczBPRmpWVGU4RlozUzd0VHoyeEI4R0d1b2xMR2ZuT2FhdFhUZXVLZ3NvU0FFQkFDUWtBSUNBRWhVSU1BNGM4SU16azNzYmZuclByV1NVSFk0emczeHRTMDU5Wlg4anpoK2ZpUGN6ZVhVRGh2UStTQnlNUVpOcnlJazdLUlVGZk0vbklJNTljU25OYklreVA0UUFURDdoVzd3SWZ0Z1lzSmtLeGEwekVTZkM3bkNYY1dKdGdvdU5RUittQlJXWjYrcTdseXNIc1NTalcwU3hLK0RsSmZhUWhYTGdWZU9LaW90Z3lVS0xGemhJbSswS2RjNG4wbkhDeStBQ1VoSUFTRWdCRG9nSUFJUGgxQVZCRkNRQWdJZ1F3Q2V6eHc1Z2crT2RXTzNnUDlBbi9EZXFwdUFVa0JDZnNjTVdqYURoeGtPQUduaWZJZU50eGkvMEx2Qmk5WUh1Rk13akEvRUNpSVQxK1NJTk44cWlUakpFOHR3UWVsaUdjVktoMHNxZHdUZHBPOURNNTV3a1pacEl2cHN6aHpVZWY1VWdJM25LWVFtV0toUCthbzk0elZvVEtDNmtyTW9keWkvRUs1cWRCZi9OYWk0c05Ob1ZjNzV6QUV4TkxkUEVhVlUyL3g3RGxWaDhVcjl4VzBLakdkdzRkM3VNS2tvVjkzenIxcUFVSlBpTVVldjFkaEc2MGJaaWhMUWVKRHdjbEt2UlZud3ZyV0pQaU1kYU82dy9lUDBJbldlaGlHM2p6ckVLTHovL0VoRlMzc3h0OUxsTkVnei96cG9IcjFHZWNjU2pVamtZNlFZS05xelZqZVdmeTNrRzlpam13RDhRZENVYy9FdCtUYVEwaWY1dzVFc1lzVUZvd3hGU0pycVhGMldpd0dXdVl6K0t5Vll2dXVYblZ2UWZEaHBpaE9xekFST2dpQzJqLzE2cHpLRVFKQ1FBZ0lBU0VnQklUQVFnajBPb05odTBCbE1sU1B4YWJFdi9kT1hQekRZZjhCNTl3M3ZTb2w0UXJaODMrLzhSSktqbWpDcFF4c2hkUTFwbDdZOWNabWorWGxDRDQ1WWhVMlFPYlBuSXN3eDBqdzBkeXJuK1Z6dzJ6WDE2Z25oSUFRRUFKSGpvQUlQa2Mrd09xZUVCQUNteU1RMi9UWE11VG5kQ0oyVzhEYVZPZFVPK2EwWmZyczV6eHBJRlIzT1lTRFh5OE1lcGJURXVxc2xPQ0Rrc0l0QjduazV5WGl2SWY5T00ySEw4TFlzMWF5WXRHbjJzRzdpSkVJZ2xTWUlGeWRQaWhJNEhBT1V3dmVzVGJjMHpsSHVKUXd0YW9zbk4wNWgyUHpTcEV5TWJ5aGJGS3J1SlBENFJ2T3VXc01TaitmWDJzRXZBSFJBQUFPSGtsRVFWU2dDK3VaU3AwWFB0STFXMnA5SzYza0VRUFJBclVnaUY2b1UvUlM2TEhxUHdRamxVWHdvWThXeVFkU0Joano3a0U0V1NwdFFmQVorMExvT0VJVVBXQWdacklQQ0JQck9jVEk4TGJmRmYwYVloR2tNT2pmdXpBY1YyOGlTK3Y2V0RyT2ZQTUlXNGFUSkJlQ2ovSlNPSmJVdGZZNk5YZGRzdnEwQmNHSDIrN2NlbC9xRzIzMVdiOExBU0VnQklTQUVCQUNRbUF1QXFXcWpybDYvc0tUOUdObi9iczJYTXJKa1hkUTVDbFI5RzdGNVE4R01za2pFdytIRjR3TzRmemFpa1B2NTFJRW41d05DVkxQOWIxZGJFNTdEc0hPV3h0aVNuT3Zma1pZdm9qNkV2V0VFQkFDUXVDRUl5Q0N6d21mQU9xK0VCQUNpeU1RMi9TWE9DaDdOU3ptWUxRMjFjaC9FdXJqL3IwYUVaUURxZUtHWHFZM3JPSVFEbjRMd1RLcjJCYkNTUW5CQjlVZTFEQ3VYTmc2VkhFZ3JTenBOTTgxaFhBZEtNN0VwSVhENTVDRmhmRHl3VWlCT2VVYXlDelhHWlI5dmxxSVNTNGJhaHNvTlJGclBreXRONlZTdDY5UXkwQ2ErejJWN2M0cEdhR1NSWWlmR0lhVjFYVFBUaGkycDNRdjFTNHd0NzdaVDIrYkkyV2txcEdQN3RXRGxKUjE2ZmZ6dHozNVpLcGlBNWtGcGEvSGRBd2xsZXZ2bGdTZnNWMlFWVkNEdXJzUHVRY2VWc2krR0haamVXQ0lRaERrcUZKMUZOWVF5R3FVMnlQeFRTS2NhS2tVZVd1ZGtIdnU0L3NiQzBscDRWaFNiNHZEcGFUY211OWRTM214WjlZbStQeU1jKzdQaCsvUGpZTEc1RzRuOStxcnloRUNRa0FJQ0FFaElBU0VRQzhFVXVHbFM4dEg2ZlZPbVlzOHYrNURFYk1uSjAzRFpxR0d3MFVnRklybktPK1V0clVrMzJXOGpTUjI0U0M4dEZRYUpxbWszbVBQdzludGFaRXdTamtWNk5aTFlpR1doMkRuRmNGbitUZkE4a1VzM3dMVklBU0VnQkE0TWdSRThEbXlBVlYzaElBUTJCMENoMGp3QWNTYUcrdzFvT09Zdy9IK3RjUkRoM0R3cStudldubVhJdml3VDNpZ2MrNEpSa2VJOTg2NFB0TTU5ODlyZFRwUkQrSGRhQWNoYWxLSjlxTFFnSE13bG5JcVZzZ1RVMzZQQkw0NHlsSFNDQk1oWDI3UlFFUUlaYTB4NUJET0JtbHVRaEsxcElzT3BLWjNPdWQ0UDBtVWMxL24zRXNyblB3dDljNTVCaFVYMUtUVzNPdStacEFwSjdSUWFuMmIwNTgxbmswUmZBamJkTHMxR2pDcFl5NDVobkduellRa1lrMkMyRU84OSsrdTJJKzVmZWpkVkVncUtISXhQeitiS1p4OEVBenZIT1JoM2VOR2JRdUdLYVdWMmo0dXJVSVRhdzlFVjlaUFFqNk5DUlVoMWhnSW1uTlM2SENaVTFicVdjSVozTHdoakdkdFc5WW0rREF1NzQ4UVpFdEpnTFg5VTM0aElBU0VnQkFRQWtKQUNDeUJBT2YzOTNvRjE1cnlTeFUxMmR1ZjB6bkhoUjh1T2UwOVFVUjZvWE9PaTB0aGdvZ0V1WnN3djByekVmaS9uWFBZTUxqNEZrdVBHdjZSODkvY2xMTHpRazdEZnJKbTR1SUxGMWJDSklMUDhxTWdncy95R0tzR0lTQUVUaGdDYXpvOVRoaTA2cTRRRUFKQzRNY0lIQ3JCWnh3K2pBSFg5aW9kT0FaanQ5aXRvZjZ3Yys3MWc0ckFHNEo0MmJIblJQQ3gwSXovdmhUQmg5b3NrZytLSllUd2VsdGIweGQ1aWpaRDRIbHVJc1FLanNnbkplS0luODBiT1ZDN0NST2h2RkR2K1ZiSFZsOWxDQlAyamtrb01Bd3NHQncrTlNQT09TcEtoQ0I2c0ZmTzZLR29ORHB2Y2ZJL2RBWlpxQ04wMmFKUWN5SzhGY2JNSlJNcUlpLzI4Mm5PbUMzWnh0S3lqNG5nTTY1ZGx4L1VYaUNGdEpMYlNyR0w1ZHNid2FlbUwrZjFhL3FsdllwYmpwaGJVaTZLT3k4cXlaakpzeFpSSmRZRXZpbnNoZmltWE1RNTkxaS94aUpiUHlmTnZiR2RxeHVuRDJwVnoxK0ppTGsyd1NkRjR1emxpSmd6cm5wV0NBZ0JJU0FFaElBUUVBS2xDRUJvUWVseWFuOWdMODQ1Smt6WTFpQURZVitEc0wvMTVhclNQdGJtQzFWbFB1SnRKRzgrNGo3WFl0UWpQelplN0hpanV0TzBUTWhnL1A2SkRoV2w3THhiWENSS25WbHFDVDVTajZxZkdQL1RYN282QktKaGZlLzBoQkFRQWtKZ0F3UkU4TmtBZEZVcEJJVEFpVUxnMEFrK0oycXdUbGhuUzBKMGpaQ2tGQjFlNTV3anhNamY3UlM3OHp2bm5oMG9MenpQSytia3dydWdZSFVsSCtKcEdwN3NOaDJjMUNGVTNKckM4ZjBWVHhMNVJnY3NSd1BOLytsUTFsZ0V5a2puT0NCMUduQzl5V0N3dWtiQ1lEV0ZKbVZBRGVIRElQRWhqOEZmK2I4elhuT2QvQjJIYVZaUngwYndtUVZHaDRjUG1lQkQ5eS91Q1o3STljOU5jNVJxMWlhcTVQckt1b0x4OS9SR0phUFkrbi92eVkxdENEL2dIa3VFam1RTmppVlU2VmlMVUdkNml5ZDJydTMwV1p2Z0V3dkR5RGNQSWhia1RpVWhJQVNFZ0JBUUFrSkFDQWlCdzBUZzdNNjVOenJudmo4UTFkbGpmdnlJenR4N0c1RUwrYkRFZHh1VXV6bnJqSWt6QlFxbXBXR1pjLzA2Um9MUDNzWlI3UkVDUWtBSUNJRVRpSUFJUGlkdzBOVmxJU0FFVmtVZ3h1cEhUWUN3UEQ5Y29TVVg5cUYwcGdjMXNlWlhBUDRBcXFnaCtOQWRqQ3lFdE9KbUdlU1lCL2d3TG51L05UWlZYdml5dngzM0R4WGpjd25uM0I5NUphQ2JEdjMrUWNXenlpb0VEZ2tCRVh6Nmp0YWhFM3g2b29HUzFxZ0N5TGNFYkdJM1JjYzZJYXNjSTRtdUo2WjdLMnROZ2c5ejUyWCtlejdGZ1RsemZlZmM5L1lHanRvakJJU0FFQkFDUWtBSUNBRWhVSVVBKzcyZUY1YXFLaitCbWJuVWgzTFN3d2R5MWE4Tmwvait3eENpL1RtZGNCREJweE9RS2tZSUNBRWhJQVNFd0JRQkVYdzBINFNBRUJBQ1FrQUluRXdFWXVRdmtQaUFjKzRGQ1VoK1lmaDNZbkFUQWdPeXpDRWxEQmJzZTM1MFNJMVdXNFhBaWdoY1lGRC9JR1JjbUw3cTE0VVZtL0xqMEdxeHNKQ0VCRVNkNHhDTXZhazFkazJTNzVwanBycE9OZ0tFUlNTa1c1Z2dCTC9MT1FlNXZGYzY5NkRVOC84NjV5NFZGUGc0SDBLeVZ6MHFSd2dJQVNFZ0JJU0FFQkFDUWtBSW5EUUVmdDVmYk91MWYwY2grMXhEK0dEK25DYlVnZFlPMTRRcTZ0a2lBOG9GZ1RVdTRaNjB1YVQrQ2dFaElBU0V3SUlJaU9DeklMZ3FXZ2dJQVNFZ0JJU0FFQkFDUWtBSUNBRWhJQVNFZ0JEb2hrREtTU0REZkRlSVZaQVFFQUpDUUFnSUFTRWdCSVNBRUJBQ1FrQUlDQUVoSUFTRXdGNFJFTUZucnlPamRna0JJU0FFaElBUUVBSkNRQWdJQVNFZ0JJU0FFQkFDUWtBSUNBRWhJQVNFZ0JBUUFrSkFDQWdCSVNBRWhJQVFFQUpDUUFnSUFSK3FRa0FJQVNFZ0JJU0FFQkFDUWtBSUNBRWhJQVNFZ0JBUUFrSkFDQWdCSVNBRWhJQVFFQUpDUUFnSUFTRWdCSVNBRUJBQ1FrQUlDQUVoc0ZNRXBPQ3owNEZSczRTQUVCQUNRa0FJQ0FFaElBU0VnQkFRQWtKQUNBZ0JJU0FFaElBUUVBSkNRQWdJQVNFZ0JJU0FFQkFDUWtBSUNBRWhJQVNFQUFpSTRLTjVJQVNFZ0JBUUFrSkFDQWdCSVNBRWhJQVFFQUpDUUFnSUFTRWdCSVNBRUJBQ1FrQUlDQUVoSUFTRWdCQVFBa0pBQ0FnQklTQUVkb3lBQ0Q0N0hodzFUUWdJQVNFZ0JJU0FFQkFDUWtBSUNBRWhJQVNFZ0JBUUFrSkFDQWdCSVNBRWhJQVFFQUpDUUFnSUFTRWdCSVNBRUJBQ1FrQUlpT0NqT1NBRWhJQVFFQUpDUUFnSUFTRWdCSVNBRUJBQ1FrQUlDQUVoSUFTRWdCQVFBa0pBQ0FnQklTQUVoSUFRRUFKQ1FBZ0lBU0VnQkhhTWdBZytPeDRjTlUwSUNBRWhJQVNFZ0JBUUFrSkFDQWdCSVNBRWhJQVFFQUpDUUFnSUFTRWdCSVNBRUJBQ1FrQUlDQUVoSUFTRWdCQVFBa0pBQ0lqZ296a2dCSVNBRUJBQ1FrQUlDQUVoSUFTRWdCQVFBa0pBQ0FnQklTQUVoSUFRRUFKQ1FBZ0lBU0VnQklTQUVCQUNRa0FJQ0FFaElBUjJqSUFJUGpzZUhEVk5DQWdCSVNBRWhJQVFFQUpDUUFnSUFTRWdCSVNBRUJBQ1FrQUlDQUVoSUFTRWdCQVFBa0pBQ0FnQklTQUVoSUFRRUFKQ1FBaUk0S001SUFTRWdCQVFBa0pBQ0FnQklTQUVoSUFRRUFKQ1FBZ0lBU0VnQklTQUVCQUNRa0FJQ0FFaElBU0VnQkFRQWtKQUNBZ0JJU0FFZG95QUNENDdIaHcxVFFnSUFTRWdCSVNBRUJBQ1FrQUlDQUVoSUFTRWdCQVFBa0pBQ0FnQklTQUVoSUFRRUFKQ1FBZ0lBU0VnQklTQUVCQUNRa0FJaU9Dak9TQUVoSUFRRUFKQ1FBZ0lBU0VnQklTQUVCQUNRa0FJQ0FFaElBU0VnQkFRQWtKQUNBZ0JJU0FFaElBUUVBSkNRQWdJQVNFZ0JIYU1nQWcrT3g0Y05VMElDQUVoSUFTRWdCQVFBa0pBQ0FnQklTQUVoSUFRRUFKQ1FBZ0lBU0VnQklTQUVCQUNRa0FJQ0FFaElBU0VnQkFRQWtKQUNJamdvemtnQklTQUVCQUNRa0FJQ0FFaElBU0VnQkFRQWtKQUNBZ0JJU0FFaElBUUVBSkNRQWdJQVNFZ0JJU0FFQkFDUWtBSUNBRWhJQVIyaklBSVBqc2VIRFZOQ0FnQklTQUVoSUFRRUFKQ1FBZ0lBU0VnQklTQUVCQUNRa0FJQ0FFaElBU0VnQkFRQWtKQUNBZ0JJU0FFaElBUUVBSkNRQWlJNEtNNUlBU0VnQkFRQWtKQUNBZ0JJU0FFaElBUUVBSkNRQWdJQVNFZ0JJU0FFQkFDUWtBSUNBRWhJQVNFZ0JBUUFrSkFDQWdCSVNBRWRveUFDRDQ3SGh3MVRRZ0lBU0VnQklTQUVCQUNRa0FJQ0FFaElBU0VnQkFRQWtKQUNBZ0JJU0FFaElBUUVBSkNRQWdJQVNFZ0JJU0FFQkFDUWtBSWlPQ2pPU0FFaElBUUVBSkNRQWdJQVNFZ0JJU0FFQkFDUWtBSUNBRWhJQVNFZ0JBUUFrSkFDQWdCSVNBRWhJQVFFQUpDUUFnSUFTRWdCSGFNZ0FnK094NGNOVTBJQ0FFaElBU0VnQkFRQWtKQUNBZ0JJU0FFaElBUUVBSkNRQWdJQVNFZ0JJU0FFQkFDUWtBSUNBRWhJQVNFZ0JBUUFrSkFDSWpnb3prZ0JJU0FFQkFDUWtBSUNBRWhJQVNFZ0JBUUFrSkFDQWdCSVNBRWhJQVFFQUpDUUFnSUFTRWdCSVNBRUJBQ1FrQUlDQUVoSUFSMmpJQUlQanNlSERWTkNBZ0JJU0FFaElBUUVBSkNRQWdJQVNFZ0JJU0FFQkFDUWtBSUNBRWhJQVNFZ0JBUUFrSkFDQWdCSVNBRWhJQVFFQUpDUUFpSTRLTTVJQVNFZ0JBUUFrSkFDQWdCSVNBRWhJQVFFQUpDUUFnSUFTRWdCSVNBRUJBQ1FrQUlDQUVoSUFTRWdCQVFBa0pBQ0FnQklTQUVkb3lBQ0Q0N0hodzFUUWdJQVNFZ0JJU0FFQkFDUWtBSUNBRWhJQVNFZ0JBUUFrSkFDQWdCSVNBRWhJQVFFQUpDUUFnSUFTRWdCSVNBRUJBQ1FrQUlpT0NqT1NBRWhJQVFFQUpDUUFnSUFTRWdCSVNBRUJBQ1FrQUlDQUVoSUFTRWdCQVFBa0pBQ0FnQklTQUVoSUFRRUFKQ1FBZ0lBU0VnQkhhTXdQOFBFWStEYUlFQktzSUFBQUFBU1VWT1JLNUNZSUk9Ii8+PC9zd2l0Y2g+PC9nPjwvZz48L2c+PGcgZGF0YS1jZWxsLWlkPSJ3MSI+PGc+PHJlY3QgeD0iMTMiIHk9IjMwMyIgd2lkdGg9IjQwMCIgaGVpZ2h0PSIxMDAiIGZpbGw9IiNlYWYyZjgiIHN0cm9rZT0iIzMzNTU2ZiIgc3Ryb2tlLXdpZHRoPSIyIiBwb2ludGVyLWV2ZW50cz0iYWxsIiBzdHlsZT0iZmlsbDogbGlnaHQtZGFyayhyZ2IoMjM0LCAyNDIsIDI0OCksIHJnYigyNCwgMzEsIDM2KSk7IHN0cm9rZTogbGlnaHQtZGFyayhyZ2IoNTEsIDg1LCAxMTEpLCByZ2IoMTQ0LCAxNzMsIDE5NSkpOyIvPjwvZz48Zz48Zz48c3dpdGNoPjxmb3JlaWduT2JqZWN0IHN0eWxlPSJvdmVyZmxvdzogdmlzaWJsZTsgdGV4dC1hbGlnbjogbGVmdDsiIHBvaW50ZXItZXZlbnRzPSJub25lIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiByZXF1aXJlZEZlYXR1cmVzPSJodHRwOi8vd3d3LnczLm9yZy9UUi9TVkcxMS9mZWF0dXJlI0V4dGVuc2liaWxpdHkiPjxkaXYgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiIHN0eWxlPSJkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogdW5zYWZlIGNlbnRlcjsganVzdGlmeS1jb250ZW50OiB1bnNhZmUgY2VudGVyOyB3aWR0aDogMzc0cHg7IGhlaWdodDogMXB4OyBwYWRkaW5nLXRvcDogMzUzcHg7IG1hcmdpbi1sZWZ0OiAyNnB4OyI+PGRpdiBzdHlsZT0iYm94LXNpemluZzogYm9yZGVyLWJveDsgZm9udC1zaXplOiAwOyB0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiAjMDAwMDAwOyAiPjxkaXYgc3R5bGU9ImRpc3BsYXk6IGlubGluZS1ibG9jazsgZm9udC1zaXplOiAyMHB4OyBmb250LWZhbWlseTogJnF1b3Q7TWljcm9zb2Z0IFlhSGVpJnF1b3Q7OyBjb2xvcjogbGlnaHQtZGFyaygjMDAwMDAwLCAjZmZmZmZmKTsgbGluZS1oZWlnaHQ6IDEuMjsgcG9pbnRlci1ldmVudHM6IGFsbDsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd29yZC13cmFwOiBub3JtYWw7ICI+VzAxICsgVzAyPGJyIC8+UzAwMeKAk1MwNDAgwrcgMsOXMjAgRFVUQ29udGV4dDwvZGl2PjwvZGl2PjwvZGl2PjwvZm9yZWlnbk9iamVjdD48aW1hZ2UgeD0iMjYiIHk9IjMyOS41IiB3aWR0aD0iMzc0IiBoZWlnaHQ9IjUzIiB4bGluazpocmVmPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQmRnQUFBRFVDQVlBQUFDUHRVSFVBQUFBQVhOU1IwSUFyczRjNlFBQUlBQkpSRUZVZUY3dHZRbjhSZDlZNy8rNVRkZHdsYUZDR1NMSzBDMy9HeklsVTJTNkxsRm80SVZTU1VMcUdxNk1aUWdSTXFTYnpFTmtLR1BJVExweEd6UWdvZ3lSaU12VmRlOS9mOWduNTNkK2U2OW5yYjNYT21mdmM5N3I5ZnI1NGJ2MjJzOTZyN1hYMmZ1em52VTgvMDRVQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRWlnbjh1K0lydUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRWhzRE1KSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJVENDQ3dUNERHSlJDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkJIYm1BQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUJnQWdFRTlnblF1QVFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnZ01ET0hJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlUQ0NBd0Q0QkdwZEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQkRZbVFNUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdRa0VFTmduUU9NU0NFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUNPM01BQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSURDQkFBTDdCR2hjQWdFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhCQVlHY09RQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFtRUVCZ253Q05TeUFBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDQ096TUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJREFCQUlJN0JPZ2NRa0VJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBSUdkT1FBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUW1FQUFnWDBDTkM2QkFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNDQ3dNd2NnQUFFSVFBQUNFSURBOGdtY1JkSUZKVjFhMG5ra2ZhZWtyNUQwZGtrZmtmU1hrdDRsNmJQTDc4cS9XWGhXU2ZlVzlFUDkvL05jU1hkWmtmMllDb0ZqSTdER2RlYWNraTRnNlJLU3ZtWnJiZnlncEQvdDFwUlA5di8yT3ZuNVl4c3crZ01CQ0VBQUFoQ0F3RElJSUxBdll4eXdBZ0lRZ0FBRUlMQTBBbGVXZEt1RVVSWnlIeW5wM1hzeS9EOUl1cXVrYnh5NTMzdDZlejZ6QjN2K3M2UWJKTzd6TjUwSS9tc1Z4RzRMNmJlVzlHT1N2ald6WDMvVk1YcWlwTitTOUxITWF3NVJ6WUtZYmJ6bTFzMS9PNWh6aDdDVGU3WWxjRE5KMzV1NHhjY2xQV1NQYy9uOGtuNU8wamxHYkhwYi8zejl2N1pZNUc4MFAvZVhUZHpuTGQybTI1TXEyTEcyZGVZckpWMWQwbTBrM1VTUy8zZHU4Zmc5VHRMdjduRk81ZHBHUFFoQUFBSVFnQUFFVmt3QWdYM0ZnNGZwRUlBQUJDQUFnWVlFN0NIOTJrN2NPbHZpSGo4aDZmRU5iZGh1T3JMbm55UmRSZEk3Rzl0akQ4L2ZrWFM5eEgwc3J2L01ERHNzOHRtejIzeW5sdjhyNlRHUzd0VjdjRTV0cC9aMWZ2ZjhBVWxQa1BUVk80MGpzTmVtdmZ6MnZGbjFnb1NaRnJLdjNUM2JyOXhUVnlKNy9rTFM5MGo2YUdON3ZyWVRrZjlRMHFVYXJyOXJXMmZPTHVsMmt1NDNzSFpNR1k3blM3cTdKRzlLVWlBQUFRaEFBQUlRZ01Bc0FnanNzL0J4TVFRZ0FBRUlRT0JvQ2Roai9NVzltRFRXU1F2Tk4rOUUzUCt6QndxMzd6MFBVN2Y2ZmtuUGEyeUxQYS9mblBDazkrMXZKT21GRSt6NDh0NkQyeDZXSlY2WnFWdFpDUHhCU2ErYVlFL3RTOHp1VVpKdVBOSXdBbnR0NHN0dnp5ZFMzaURwd2dsVGYwblNQZmZVRmMvUE95YnU1Uk15RnRqL3FMRTlsK3NGZG9kUkdpci9xM3VtcnlycGp5ZllzYloxSnJVcE42SDdaN3JFRzZJVzJqOWRvekhhZ0FBRUlBQUJDRURnTkFrZ3NKL211Tk5yQ0VBQUFoQ0FRQTZCQjBxNlI2TGkreVE1bE16ZjV6UTJvNDVqalQremk2TnJBVDFWNW5xTzU1aDRMVWt2bDc0UXdtR29mS2huNHBBMUpjVkMyaU1rZVNPaGRyRTMrNTE2ai9iV29TMkdiSGZmTEZvK0lOZzRRR0N2UGZMTGJ5L24yYlludDBNeWZhcHhkODdWUDl1cHNDdzJZUjhuZDZJTlJZYzZzV2UvUStpVWxMV3RNK2Z1TjFZZFNxaGxNVS9mNDcwdGIwTGJFSUFBQkNBQUFRZ2NMd0VFOXVNZFczb0dBUWhBQUFJUW1Fc2dFcFAzRmI0aHg4dlZmWjBxT3BWd2lqWWRmci9mQ0NoSk51clFCL1phLytFU1F5YlVkV3pwaDB2YWw4aHVUMW1IZzNIZmRzUEJESm1Qd0Q1aFVJL2dra2hNM2xmNHB5Z00xUVoxNjVNN09ac09VellUMTdiT1hLeVBsZTdFenZzbzc1ZmtFRUZPSEUyQkFBUWdBQUVJUUFBQ1JRUVEySXR3VVJrQ0VJQUFCQ0J3VWdSeWhPMTloRytJNGlKdkJtVk8ySVNjZ2MySnYvNWZKVDA0cDdHK2prUEJPRmE2RXhybUZvY3lzT2pvTUQ3MnVzMHQ5bVMzNEcyQnNHV3hzTzdUQmcrVmRLR0NHeUd3RjhBNm9xbzV3clkzbjU3V3VNKy9JT2xCR2Zkb2ZYSW5KLzU2YVJpcXRhMHpGNWYwVWtrWHpSaVA3U3FidGZGOEU4TnNPVUcxays1NmpDa1FnQUFFSUFBQkNFQWdtd0FDZXpZcUtrSUFBaENBQUFST2pvQTlLWi9TeDFrZjYvdyt3amRFY1pHM2JXc1p2c0ZpaitORlc3d1pLbzVGZjNWSnJ5K1lLWGZ0aFBKZnlhai9Da24zNzJNL2IzdkhXemh6SWtTMzh5TVo3VGgwelRVYmhVS3doNnhqOHY5eXQybndkUm0yN0ZaQllKOEE3UWd1K1JwSkw1UDBYWW0rL0phazJ6UThmWkd6ZWJZeHIvWEpIU2RyZm5VWFVzbnI3MUNaRW9acWJldk1EVFB5V0hqRDhMbVNuaXJwTFpMK2NXZCsrRHZYNjVCajV2OTR0eTc3UkZaT2NlNFJiMFE2M2o0RkFoQ0FBQVFnQUFFSVpCRkFZTS9DUkNVSVFBQUNFSURBeVJMNG9WN0FHQU13UmV3cGdaa2JGM25UWnN2d0RaRW4vVi8wWW80VGkrYVV5L2ZDNGprVGxSMjI0TmE5NEJhRmR2bDJTYy9xNHRWZklyajVrL280MGpXUzAvcGQwdDZtUDlXTFdHTkpHWE40SUxEblVEck9PbEhvcGRiaG42TE5zMTNxTFUvdVJKNzBwV0dvMXJqT3BBUjJDK2xPU3VxOEhDV0pTUzhpNldHSkpNdmJZK3pOU2d2M0ZBaEFBQUlRZ0FBRUlKQkZBSUU5Q3hPVklBQUJDRUFBQWlkTDRKSzlSN2FUelkyVjBuQUZKVEJ6d2tkc3Q5Y3lmRU1rQXBaNDJWcUlmbmFmdkhHTWgwWEZHMHY2UUFHd0MwaDZ2cVJVb3NiUDlkNmNyeXRvZDd1cTN4OHZMT21XbmRmb0hTUjl3OFIyZGk5RFlLOEVjb1hOUlBrZVdvZC9pamJQZHBHMk9ybVRFMys5SkF6Vld0ZVpJWUg5WHlYZFM1TGp6MC8xTG5mNHFwL3VjMUY4V2VJNStYTkoxK2cyRGoreXdtY0preUVBQVFoQUFBSVFPQUFCQlBZRFFPZVdFSUFBQkNBQWdSVVJjSnh2SDVuM01mdXhNaVhoWGk2Q0tBSGlianV0d2pma2NDaUpFMzJUUHJ6QjJMdlluRmpBVGc3NFdrbm5UMEIramlTZlRyQm9WVnB5V0F5MStlYk9nL1Fja3NhU0ZpS3dsNDdFOGRUUHlmZlFNdnhUU1JncVUyK1ZlRFhpVUJxR2FxM3J6SzdBL2dmOVNaNlN6Y2F4cDhOcjd0MHljbVcwM0RnK25pZVhua0FBQWhDQUFBUWc4QVVDQ094TUJBaEFBQUlRZ0FBRUlnS1I1M2FyOEEwNTNweER0cmNJM3hCNThwY0licEZBWFNNWnFjVit4ODhmSy9aaXY1cWtOMFdEUC9EM3lQNmhKaDFuL2lHZHVHNWhmMnl6Qm9GOXdtQWN5U1U1ejNxcjhFK2xZYWcyeUVzMjFIS0hLZkxrTHdsREZUMm5TMTVudGdYMiszWUpTLzBiTkdVemNJeTdjMWM4b1JmdHgrcVVuRWpLSFYvcVFRQUNFSUFBQkNCd3BBUVEySTkwWU9rV0JDQUFBUWhBb0NLQktPbGVxL0FOanBuck1DYjI2dHd0Nyt6aWpWdjBIaXFsTVlwelVFVWhKSnlrMGVGY2NrSVhmSjhrMnpqMkhqYkh1M3pUbDBoY2M3MnBHeEU1Ylcvc2VMZWsyM2JKWHgxU0k3b09nVDFuSmg1dm5TamZRNnZ3VDFmc05wdGUwejBQWDFXNHpyUTR1UlBGWDMrTXBEdG1KbnRkOHpwamdmMTMrN1hqeVpuOUxYMHl2cTMvZlJuTGdWR3ltVkY2YitwREFBSVFnQUFFSUhCa0JCRFlqMnhBNlE0RUlBQUJDRUNnQVlHdjdRWFNTeVhhYmhHK0lTVnFXMmh5K0JoN3Z1NldGb2xYb3hBU3VYR1JiYTg5eTI4K3duS09aL2x1azc3SE14SmpObFZBaW9SeTMvS1RmYnprMzlqYWRJaXVRMkJ2OFBDdXFNbm9sRWlyOEU5am9yWTN5eXp1ZW0wYktyVlA3cHhGa3IzMHI1Y1lzOXl3Sld0Zlo2NGp5Y0szODFSRXlaMm5UdkdJOTc5SSt1NXU0L1FkVTIvQWRSQ0FBQVFnQUFFSW5BNEJCUGJUR1d0NkNnRUlRQUFDRUpoS3dPOEx2eGtjcDI4UnZtRk0xTGJnY3ZjdVpNQTkrNWplUS8zS0ZhSnltRVFoSkVyaUlxZTg4bTFMaVNkOFpQdDVlOC9jUzR4VW5DcFlwb1J5aDNGNFFDZU8vV292c20vZkdvRTlHckhUL25zMFAweG42cW1MTWJJcGtkVmhueHpXNkVFakY5Yyt1WE5SU1crUWRMNlIrNVZzSEs1OW5YRXlVb2V3YVNXdWJ4RGZwZnNOZVZqaXNmTm14MHRPKzdHazl4Q0FBQVFnQUFFSTVCQkFZTStoUkIwSVFBQUNFSUFBQktMd0RlK1JkQ1ZKSDY2RUtpVnFXL2k2V1JjNjVvbVNMRW9ObFpyaEd5TFAyaEpQOEloajdiak9VZno4S1lMbGtCRDZqMzJjWkh1c2YzcGtUQ0lCRlEvMlNnL1BpcHVKNXF1VFhYcnpiR3lPbFhZOUpXcjd1YjV6bjR6WXlYbUhTczJUTzFIODlaTFFWOGV3enBTTzVaVDYxKzNEZFkxZDYxTlVMNXJTTU5kQUFBSVFnQUFFSUhCYUJCRFlUMnU4NlMwRUlBQUJDRUJnS29GSVpDN3g0czZ4NFRzbHZiYnpJRDNiUUdXSFpuQzhjeWVodStaSVl6WEROMFJpVlc0eXZPZ2tRSW1IYWc1RDE2a3AybTN1dVJIS0hUN2hwYjJ3L2haSm53K01RbURQSGJYVHJSZk4xOXJQU0NvTWxVL2wvR3dmSG10c0k2L215WjFvY3lFM0ROV3hyRFA3ZUFwU3Z6TytQd0w3UGthQmUwQUFBaENBQUFTT2dBQUMreEVNSWwyQUFBUWdBQUVJN0lGQUZLL1dKdVFLUURubU9yNzY0MFlxYmdSdGh5SzV4MGlkbXVFYjdKWHRSSjFqSmRmclBJcGxYK0tobXNQUWRad2cxbUVuTGp4eXdkOTNJdmtWSkgwZ3Q4RSs3djJGT2lidjc4TDBPQ1JNYmtGZ3p5VTFuaEQyNy9yeCttQitVNnVxR1Qwajdrek44RStwM0FwZXp4dys1Sm1Tdm4rRVlxM0VxMmVYOUlMRWhtSEpCbWJFY0MzcnpENG1MZ0w3UGloekR3aEFBQUlRZ01BSkVFQmdQNEZCcG9zUWdBQUVJQUNCU2dUR2tnRnVtcThsM0RoQlgwclUyZ2phS2U5VDIxUWpmRU1VZjkzaGFxNGk2WjBaakMvWGU4T2VkYVR1bEhBdDBXMmpqWkVTNFM2NlYvUjNCUGFJMEpmK1BzYnEyQVgyeVB2YWhHcUZmMG85Mjl2UFJXcmRtNXJIWUhjbVJQSFhTOEpRbmZvNmsvK1VTUWpzSmJTb0N3RUlRQUFDRUlEQUtBRUVkaVlIQkNBQUFRaEFBQUs1QkN3a3Y3cjNZQjY2cGxiNGhwVFl0QzFvUjZKVWpmQU5rUUR6aDVKdUlPbFRHUkNqVURPdEV1cEZvU2R5UGZBenVwaXNnc0NlVC9CVUJYWVRpcDZUV3VHZlV1dlp0cUFkclhzMU5zYWl6Y0xjTUZRNS9JNTluY2wveXFRYlNucmh5QVcxTms5SzdLRXVCQ0FBQVFoQUFBSXJKWURBdnRLQncyd0lRQUFDRUlEQUFRaEVvUWRzVW8zd0RTbXhhVnZRanJ5emF5UmVUWVdxY1g5THhMVlVPSXAva2VTWTV1OW9NSzQza2VUTmhyRlMwb2M1NWlHdzU5TTdaWUU5eXZkUUsveFR5ak45VzlDTzFyMGFpVmRUYTROblRja20yS212TS9sUG1YU1hQZ3pRMERVdDErUVNHNmtMQVFoQUFBSVFnTUFLQ0NDd3IyQ1FNQkVDRUlBQUJDQ3dFQUorYjNCNGhqc2s3S2tSdmlFbEVOMjN1L2Q5dHU2ZkVzbm1oaitKd2xXVWVEanVZek5nYkZnaUQ5eW45d0tlKzlPeUlMRG4wejFsZ2QwaGxKNHY2VG9KWEhQRFAwWFA0eTM2TUZVMklWb0g1cDdjaVo2TGtqQlVVYjlxYkRvdWZaM0pmY3FpVUdRdFdlWGFTRDBJUUFBQ0VJQUFCRlpDQUlGOUpRT0ZtUkNBQUFRZ0FJR0ZFSWhDR2N3TjM1QWJGM21ESXhLUDV5UmVqVHhYU3hJY1JtMlZoSm9wblFxUlIzRExlMi9iR2dtSnZ5M3BWcVdkTzlMNnB5eXdlMGlqZkE5end6K2x3a3NOQ2VaUjJKbzVKM2RxUHArc00va0x3a1c2cExLdjZ4TkJEMTFWSzZkSXZrWFVoQUFFSUFBQkNFQmd0UVFRMkZjN2RCZ09BUWhBQUFJUU9BaUJLTzU1aWJmbFVBZFNNYytIRXYxRmd0SWNrU1JLRmxnaThrWGNXb3JMNTVmMFpra1hHcGt4Ky9MVVJHRFBmMlJQWFdDUE5zNUtrbjRPVVU5dEZBNnRHWkVJUHVma1RzMFFUcXd6K2MrWXcrNDhKVkY5enVac3ZoWFVoQUFFSUFBQkNFRGdLQWdnc0IvRk1OSUpDRUFBQWhDQXdONElSQ0VJYkVoSnZPQmR3Mys2RDBNejFLR2hSSDh0d3pkRThkZEx3bFJFeVZKYnhrR1BoTzIvazNRRlNSOXNQSXNpTzFwdU1qVHVXdlhtVDExZ2p6Yk81b1IvaWtKZERRbXIwZHlkYzNJbkZSS3JKQXlWSnlIclRONmplQjVKTDVIa1RkU2hVaXZPZjU0MTFJSUFCQ0FBQVFoQVlQVUVFTmhYUDRSMEFBSVFnQUFFSUxCM0FsSDRoaUVoUE1mSVNMd2ZFKzZqc0RWVHdqZEU4WGxMQlpqclNySm43RmhwNlMwWmlZT2xmY2taeTZFNmtSMEk3RitpZHVvQ2U3UnhabEpUbjVtVWVKOFM3bFByM3RSbktCVVN5MzBzQ1VQbCtxd3o4ZXJrdVhVM1NROU9WSDFabDNENnhsMm9vcy9FelZFREFoQ0FBQVFnQUFFSWZERnBEd1VDRUlBQUJDQUFBUWlVRUlpOEpLZUdiMGlGTjBpRm5vbkNJa3dKMzNCZVNXK1U1TGFIU3FuSDZnMGx2VEFCZVk3WGY4N1lQVm5TajQ1VW5Db081dHgzdXc0Q2V6NnhVeGZZVFNyYU9Kc2EvaWtWZmlhMWRrVmhhMHBPdEd4bXduZjBjY0RQTVRJMVNzSlF1UW5XbWZnWnU3d2tDK2puSEtucVV3TTNsZlM4dUNscVFBQUNFSUFBQkNBQWdTOFNRR0JuSmtBQUFoQ0FBQVFnVUVvZzhycWNHcjRoSmFpbEVuRkdudStsWXJoNVJHSmFxV2gvRjBrUFM0QjIzMTlVT2hBRjlSSFlDMkF0b0NvQyt4YzN0OTRnNlh3ajR6R1VqRFJuNkZLZTZLblROMUhZbWxJeDNMWkd5Vk5MUlh2V21mUU11TENrVjBpNmVLTGF2cEkrNTh4VjZrQUFBaENBQUFRZ3NCSUNDT3dyR1NqTWhBQUVJQUFCQ0N5TVFDcHVzRTJkRXI0aDFXWVVvN3gyK0lZb0RFNXAySm1vdlVNSzdCNnYxdmYzUGZCZ3ozK0lFZGlsYU9QTU5FdWZ3NmpOMUVtU0tHeE5hVGlYcUwwcEowdFlaOGFmc1F0SWVyNmt5eVlldzg5SnVsWi9xaUQvYWFVbUJDQUFBUWhBQUFJblR3Q0IvZVNuQUFBZ0FBRUlRQUFDa3dqVUR0K1E4b3JQU2ZRWGVaeVhoR0NKNHE5UDhaeE5DVjg1L1pzMFNGc1gzVVBTQXhPTklMRFBKVnozZWdUMkwvS01CT1BTa3lSVHcxQnRSamZsY1Y1NmNpYzZDVFRsNUEzcnpQQnphTS8xMzVOMDZlQXhOYitIU3ZLYVRJRUFCQ0FBQVFoQUFBTFpCQkRZczFGUkVRSVFnQUFFSUFDQkxRSVg2YjM4dm5HRVNxazNaeXF1ZTA1YlVmaUdrc1NyN3BORFUxaVVHU3BUWWovWDlyQXZuWXlSVUluQVhrcTBiWDBFOWkveXZhS2sxMGo2cWhIY3BlRThwb2FoMnR6K2twMkg4K3Nsblh2RW5wS1RPMUV1aTlMTkE1dkVPblBtZ2ZHWXZUaVJUMk56aFVQSDNFVFNwOW8rMnJRT0FRaEFBQUlRZ01BeEVrQmdQOFpScFU4UWdBQUVJQUNCOWdRaUwrOVNyK3lVTUpRVDJ6Z0t0MUNTZU5VaEFsNmV5RlZUSXFKdFJ1TFFNZEFSMk5zL0V6WHZnTUQrUlpxUmwzY3ErZkh1ZUVSclJCU0d5dTFGWVk1S050OXUzOFdYZjF4aTBwU0d2M0ZUckRObkJIcDlTYytXZExiZzRYeDFuOWpVODRrQ0FRaEFBQUlRZ0FBRWlna2dzQmNqNHdJSVFBQUNFSUFBQkhvQ2tVQ1VJMWk1cVNndWNtNml2MXJoRzFMaFZFckRRR3dtQzhKWExFNyt0cVJiOFhSOWdRQUMrNWNtUXBUdklUZjhVK3FVUzhtR29FTXRlWTBZS3JuaG8vd045bFJKdDV6Wnp1N2xyRE5mSlBLVnZUZi8vVFBXa3orWFpDSGVKNlVvRUlBQUJDQUFBUWhBWUJJQkJQWkoyTGdJQWhDQUFBUWdBQUZKVVlpRDNQQU5xYmpJSlluK2FvUnZpTVQrRWsvNDdVbUM4SFU2QXJ2ZnJ4MUNaQ3lzU2M3aWNYWkpUNUYwaFozSy95RHBlcEkra3RQSVNKM1BTL3FZSlA5N0RTWEs5NUFiL2ltVnB5RW5ETldHVlhUQ0pjZnpQQXBwVmVJSnp6cHp4bGw4UGttUDd4TTNSL1BiY2U1dkxPa0RVVVgrRGdFSVFBQUNFSUFBQkZJRUVOaVpIeENBQUFRZ0FBRUlUQ1ZRSzN4RFNrQXJTZlJYSTN4RFN1dzNwMXd4YjVmcGIwaTY3UWpva2syRXFXTVZoWWl4YVB1U3FZMW5YaGVOejdGNHNFZjl6TVRWck5yZjljTDlCNXZkb1c3RDBUT1p1K2sxTnd6VnBsZFJqb2FjMk9sUlV1WXBZYWhzM3ltdk0vNnU5ZWJIMHlWNUF5TXFEZ04yQzBtRWhZbEk4WGNJUUFBQ0VJQUFCRUlDQ093aElpcEFBQUlRZ0FBRUlKQWdrQXFYNE10eXdqZWtRa0RraUZYYjVzME4zeEI1cDFxUWVlYUVHWkVTOTByQ1UweTQ5UmN1T2JRSHZXMkloR2NFOXFtalczYmQyZ1QyS045RFR0aW02R1JLYmhncWs0N3N5ZGtVVElYWCtseVgyUFZxa3Q1VU5xeGZxSDJxNjR4UGZQeHlkekxqanBuTUhpSHBuaDJ2ejJUV3B4b0VJQUFCQ0VBQUFoQklFa0JnWjRKQUFBSVFnQUFFSURDSFFDUklSeDdmS1M5NEM4LzJySDVwZ1lHUlBWSDRocmtDL1ppcGtRZTV2ZmhmVk5EUDBxb0k3S1hFcHRlUE5oS210MXpueXJVSjdPNTFsTzhoOHZoT2VjSC9zNlR2N3BKYy9sa0IzcFE5MFltVUdnSTk2OHlYQ0RnMDJQTzZqYzlMWkl6ZnYzYmhZRzdYaDEveTd3c0ZBaENBQUFRZ0FBRUlWQ0dBd0Y0Rkk0MUFBQUlRZ0FBRVRwWkFGQzRoOHVhOFl1ZXQrWnFSZU5VbGNaRTNBeERaay9LSWo0VFJxWEdSYmR1U0JYYUhTSERJaW5jMm5zVVJYenpZR3c5QTMvd2FCZllvMzhQdlNMcTVKSHV6RHhYLzdSa2pmOHZORmJGOWVXUlB5aU4remhvVnpaQlRXbWY4SGZzamZWZ2NKeldOeXR1N05lNEh1OFN5ZngxVjVPOFFnQUFFSUFBQkNFQ2dsQUFDZXlreDZrTUFBaENBQUFRZ3NFMGc4c2FNdkRscnhVWGUyQlRaa3hMVG9salBrWmRzYW1iOGtLU25KaXFVaEtnb25ZRU9uL0FDU2RjY3VYQmZnaXNDZStuSXRhbS9yL0d1YVgyVTd5RzFHZWZ2bmQrVWRPc1JnMzZwRHhkU1ltOWtUK3JrVGhSL1BUcGx3em9qblZXU1R4dmRPWFBRZmtYU3ZRa0prMG1MYWhDQUFBUWdBQUVJRkJOQVlDOUd4Z1VRZ0FBRUlBQUJDT3dRaU1JM2pJbkhOZU1pYjV1VXNpZmxyWjFLdHBvVDV6azFNVzRvNllXSkNuUEUrMmhDUnNMMjYvdFFQUDhTTlRUejc1RWR4K0xCN2cyTkowbTYwZ3hlWHlicC9KTDg3OTNpNUtSam50bzV0N1FZL2YyU1BwSlRlVUYxVXJrYVVua01uUERTRzJ1WEd1akxuUHdIS1h0U2lWZFRtNG9ma25SbFNlK1p5UDBVMXBuejladVZZeHVHMitqZTMzdTVlL3dwRUlBQUJDQUFBUWhBb0JrQkJQWm1hR2tZQWhDQUFBUWdjRElFdnEzempuNmRwSE9POUhnc2ZFUEtZenp5ZkUvQmpjSTNqQ1ZlblNxWTVRejA1WHFSejU2WFE4V0NyR01EdHlnV2F0L2NlZkZlYUtUeE9hRnZTdXc5RllHOWhNbFkzVEZXYS9RK3I4SERiWHlmSk0vVnNlK1hNVS8wbE1mNGxEQlVtLzVNMlpDTE5oWG5Qb3ZIdnM1Y3B0K292R0RHcFBLR25aT2VmaktqTGxVZ0FBRUlRQUFDRUlEQUxBSUk3TFB3Y1RFRUlBQUJDRUFBQXBJaTRYUk14RW9KVkZIczloVDRLZUVib2o1RXlWcWppZUJFZlBZVVAvZEl4U2lHZE5SKzZ1L1J2VnVLKzl0MlJZeVB4WU45emxodHJrVmdQelBGS0hiNVdQaW4ybUdvTnBaTkNTa1Y5V0h1U1pib1dWL3pPdU1FMXM5SmJPUnV4c1diczdlVjlDeEpKREt0c1JyUkJnUWdBQUVJUUFBQ0lRRUU5aEFSRlNBQUFRaEFBQUlReUNEZ2VMajNHS2szRm9ZaDVUR2VTa2FhWVk1S3ZkRWpZV3JNNnozSEZ0YzVyNlEzU3JJb04xUmFobW1KWWo3ZlZkTERjenN5b3g0Q2V6NDhCUFl6czRyeUt3eUZmNG84eHVma1BvamFIdkpHdDBqODhoRXYvTGxocUk1NW5ja1YxOS9VSlRHOVpSZHYvNzM1anhvMUlRQUJDRUFBQWhDQXdId0NDT3p6R2RJQ0JDQUFBUWhBQUFKU1NqZ3luOTN3RFpHWCtaeEVmNzVmYWZpR1ZCTFNWTnoyM0xHUEVvMyt2YVFyZEdGaVBwRGJZRUc5Vk4vbXhLQXVNT0VMVlJIWTg0a2hzQSt6aXZJOTdHNkV0UXBEdGJHdU5KNTZhaU15RmJjOWQrWWM0enB6ZVVrdnkvQmNmMFNmclBZenViQ29Cd0VJUUFBQ0VJQUFCR29SUUdDdlJaSjJJQUFCQ0VBQUFxZE5JQXA5OEFlU0xKcC91c2VVOHFxZW0ralB0eWdOMzVEeWVCOExQVkU2NHIvUmh5NFl1cTZHOStxWVBhbSsxV0NkeXdHQlBaZlUrR2JFS2NkZ043MG92OEp1dUtQVTV0S2NNRlNia1l4T2gyeHZGRVllNzNQRFVHMXNPcVoxNXNKZDB0ZFhTTHA0NHRGeFNKaGJkSFBqUllTRXlWOWdxQWtCQ0VBQUFoQ0FRRjBDQ094MWVkSWFCQ0FBQVFoQTRGUUorSjNpTjd1aitiY2VBYkFyNUtZOFArY20rck1Ka1ppMWZZL0ltMzRzZVdMcFdFZmV0M1BDVll6WkVubTB0Z3hOczJzVEFuditqTUdEZlpoVk5JZTJSZk5vVFpvYmhzb1dmbTJmdlBoU0kwTzdmWTlvMDI5dUdLcU5DY2V5em55TkpNZU12MmJpc1hsL2YxcnA3Zm1QRmpVaEFBRUlRQUFDRUlCQWZRSUk3UFdaMGlJRUlBQUJDRURnVkFta3ZFWE5aT1BOR1luZmN4UDliZmluUlB6dGtDemYwWWs0cjVOMGpvR0JxeGxDNVhLOUdIZldrUW5TSWdGaEpPclZFQmx6NTNza2pwTGs5RXNrRWRqSFoxVXF6SXE5bWE4cTZZOHp4Tys1WWFoc1lTVGliMjlnWFZlU04vYUdTbzB3Vkp0MmoyR2RNVmYvRG5oemM2ejh1YVRyUzNJU2JRb0VJQUFCQ0VBQUFoQTRLQUVFOW9QaTUrWVFnQUFFSUFDQm95SVFKUXJkaUxrcDBiZG1xSlJVK0ladDRUeTFNV0R4NXNxU0xNalBMWkczYTgxN2JXeE54YUkzZyt0MXNkOWZPcmRqbWRjanNHZUNTc1NyUC9VUU1TWVk1WHZZbkFScEhZWnFNNXE1K1J0U0d3TzF3bERacG1OWVo2SlFRSDhqNlhzUjEvTVhGR3BDQUFJUWdBQUVJTkNXQUFKN1c3NjBEZ0VJUUFBQ0VEZ2xBcEdBdXZIbXZMcWtGNHlBcVpIb2I5TjBKRFRaTy9KZVFXaWJtbDdsa2JlcjdhN2hWYnZwLzFkSWVvcWttNCt3YmlIb3ArWjdORC93WVA4U1BUell4MmRTbE8vaDZaSWNidVhudTFCUkR4cHBwa1lZcWszVDBjYWliZkY2OTJKSjN6TmlUNjB3Vkc1KzdldE10Rzc5czZUcmRKdURiejJsSDFmNkNnRUlRQUFDRUlEQXNna2dzQzk3ZkxBT0FoQ0FBQVFnc0RZQzkra1N6ZjNpaU5HYk9PeTNsWFNQa1RxMUV2M2xDRTBXMlc0bjZZV2QrSFhaRVh0cXgwVlBlWlRiaEdkSytwRk8rTGNuLzl4eWtUNzBqUVhKb2ZJWVNYZmNZMkpBQlBiOEVVVmdIMmNWQ2JDT3crNlRHYjh1NmZ0SG1xa1Zoc3JOUi9QYUozZCt0Zk80Zm9Pazh3M1lVek1NMWFiNU5hOHpWNVQwbWk0OHpGZU5qSjEvTzd4eFltNFVDRUFBQWhDQUFBUWdzQWdDQ095TEdBYU1nQUFFSUFBQkNCd05nVlJZQm92R041VDBjNG5FZGJVUy9XMkFwc0kzMkZ2K0p5VTlYOUs1QjBaZ081NXpyUUU2Ynk4ZVhXS2t3WnIzVEcxMmZLNno0MnFkSitpYmFuVXNvNTFJaU1TRC9Vc1FFZGpURXlyMVhIc2p6OEs2VDI4NEhOVnVxUm1HYXROMkt2eUxOL0lzOW5zamIramJxOFZKa2pXdk15bVdmOW12V3gvT1dHK29BZ0VJUUFBQ0VJQUFCUFpHQUlFcENOWC9BQUFnQUVsRVFWUjliNmk1RVFRZ0FBRUlRT0FrQ0VSaFdTeG8zNzBMeTNLaEFSb2JEL2YzVkNTVkN0L2d4SUlQU1lTUnNDZnN0U1Y5dktJOWJpb2xmUHZ2ejVGa0FmRmZaOXozWXBKZUsrbjhJMjI4VE5LTkpYMW14ajFLTDBWZ3p5ZUd3SjVtbFhxdXZVbDExeTVwOGNPNjUvdHNBODIwZUs1VGNlRzlrZWZ3TUE1Wk0xUnFocUhhYm4rTjY4eTVKTDA4Y2FKb24wbVo4NTlXYWtJQUFoQ0FBQVFnY1BJRUVOaFBmZ29BQUFJUWdBQUVJRkNWUUJULzE3R0luWnh1U1BpcUdSZDUwNm1VcUd0UDF0K1ZkTk1SQXEzRW5HL3JRN2VjYytTK0RuMXdDMG5QbWpneVh5bko0VjkrTE5HKysveThpZTFQdlF5QlBaOGNBbnVhVmM1Yyt0RTlQdGVwdVBEZU9QelRmdDBiTXFsMkdLck5QZGE0emtUSlRYMHlZZC9yVnY1VFMwMElRQUFDRUlBQUJFNldBQUw3eVE0OUhZY0FCQ0FBQVFnMEk1QUszL0FQdlZmMTBEdEl6YmpJMjUxTGhSejR0S1N6ajVDb21YQjAreGJ1K3lNNnovZzdKVVpnYWlJL3QzMDNTUTlPdEcxdjJoL1lzL2U2emNrUlJXL1ZiRmF1cTJFRTluaThVcy8xZXlWOTB4NmZhOGVGZC82RW9aanYzakR6WnA0M3ZuWkx6WkJRdTIydmNaMjVpU1I3OUE4Vm43WnhrdGcvaXFjR05TQUFBUWhBQUFJUWdNQitDU0N3NzVjM2Q0TUFCQ0FBQVFpY0FnSEhQUjVMNkRmVy94WnhrVGYzU29WdkdMT25SYmlhN1h0RklWeGM5Nk9Tbkt3d04wNzZsM2ZYL0xTa2gwdjZzcEdPVFJYdWE4eGJCUFo4aWdqc01hdFV2b2REUE5lMzc1S1lQaTQyK3d3MVdvU3JXZk02NHdTbTNqZ1pLaTAzSXdxSGplb1FnQUFFSUFBQkNFRGdqQVFRMkprUkVJQUFCQ0FBQVFqVUpuQ1czZ3Z4ZWdVTk8wNnh2Uk10S3RjdXFmQU5ZL2RxRWE1bTkxNE9EZUhraDFGNWRGZkI4WlEvbHFoNGtUN210T09xcDhvdmRCNzdENVZrcjlwOUZ3VDJmT0lJN0RHcktOL0RVQXN0bitzb3ZNbVFQYTNDVUczZmEwM3J6Sk1sallYMmNaLytVZEpuNDZsUnRZWTNKWDBxeTJGK0tCQ0FBQVFnQUFFSVFHQ1FBQUk3RXdNQ0VJQUFCQ0FBZ1JZRUxPUStxS0RoMzVKMG0wYkNieFFYZnNqTVZ1RnF0dThWeFVyZnRlc1BKVDFiMGtlMi91RFRBbzdYZnBrTTFrL3NCS283ekV5ZW1uR2IwU29JN1BuMEhMYm9TVjNDeHl2dFhQSytQZ3pKOWh6SWIvVzRhaTd0dVk3bTl4RDlWbUdvMXJqT1RObVkzY2VNeG5OK0g1UzVCd1FnQUFFSVFHRGxCQkRZVno2QW1BOEJDRUFBQWhCWUtJSFM4QTAvTE9scERmdVNpZ3UvZTl1VzRXcDI3M1crWGpULzdvWjlkOU4vMEF1em4yaDhuMVR6a1FENTI1S0l3WDdBQVZyaHJaZjJYS2Zpd3UvaWJSMkdhdnQrYTFobm92WGhVTk1UZ2YxUTVMa3ZCQ0FBQVFoQVlFVUVFTmhYTkZpWUNnRUlRQUFDRUZnUmdaTHdEZjhreVlMOE94djI3NUtTWGkvcDNCbjNhQm11WnVqMkY1YjBlNUl1bldIYmxDcXY2NU9hV3RBN1pJa0VOQVQyUTQ3T091Kzl0T2U2Sk45RHkzQTFhMXhub3ZYaFVETVVnZjFRNUxrdkJDQUFBUWhBWUVVRUVOaFhORmlZQ2dFSVFBQUNFRmdaZ1VkMWNjUHZtR0d6UTUvY1FOS25NdXBPclZJaTN1d2pMdkp1UCt4aCtsUkoxNXphd1pIckhIckhpVTgvWGJuZEtjMUZZNERBUG9YcWFWOVRFbGFrWlJpcXpTaVU1SHR3YlBUSDczbjRscnpPUk92RG5sSDkyKzBRMkE5Rm52dENBQUlRZ0FBRVZrUUFnWDFGZzRXcEVJQUFCQ0FBZ1pVUitNK1NYcEJoOHk5MWNjSHZtVkZ2YnBYYzhBMzdpSXM4MUJmSFpQOVpTYmJULzMxT2NUSkF4N1MzWi93aEVwb08yUjRKYUFqc2MwYjhkSy9OemZmUU9neVZSK0FySkQyekQ4ZVVHcEZEaXJaTFhXZWk5ZUZRTS95UVkzV29Qbk5mQ0VBQUFoQ0FBQVFLQ1NDd0Z3S2pPZ1FnQUFFSVFBQUMyUVNjZ1BNTmt1dzFPVllzL2w2N0N4SHp5dXhXcDFmTUNkK3d6N2pJWXowNWo2U2Y3NzMvejFyWTNYZEx1bDhYYnVZNWtqNVRlRzNyNnBHQWhzRGVlZ1NPcy8yY2ZBLzdDRU8xb1h2N2JzMTdYSUQ2YmYyNjkvRUREc25TMXBsb2ZUZ1VLZ1QyUTVIbnZoQ0FBQVFnQUlFVkVVQmdYOUZnWVNvRUlBQUJDRUFBQWlkRndKNm0zOW5IVDc5R0YwTG1ZcExPdmtQZ2c1TGVLdWtsa2w0bTZYMEw4bGcvcWNHaXN4QllLUUhXbVpVT0hHWkRBQUlRZ0FBRUlMQWNBZ2pzeXhrTExJRUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FJRVZFVUJnWDlGZ1lTb0VJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRZ3Nod0FDKzNMR0Frc2dBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQmdSUVFRMkZjMFdKZ0tBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUN5eUdBd0w2Y3NjQVNDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFXQkVCQlBZVkRSYW1RZ0FDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0F3SElJSUxBdlp5eXdCQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCRlpFQUlGOVJZT0ZxUkNBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJTEFjQWdqc3l4a0xMSUVBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBSUVWRVVCZ1g5RmdZU29FSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWdzaHdBQyszTEdBa3NnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUJnUlFRUTJGYzBXSmdLQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDeXlHQXdMNmNzY0FTQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRV0JFQkJQWVZEUmFtUWdBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBd0hJSUlMQXZaeXl3QkFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkZaRUFJRjlSWU9GcVJDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUxBY0FnanN5eGtMTElFQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUlFVkVVQmdYOUZnWVNvRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFnc2h3QUMrM0xHQWtzZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VCZ1JRUVEyRmMwV0pnS0FRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ3l5R0F3TDZjc2NBU0NFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUVdCRUJCUFlWRFJhbVFnQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQXdISUlJTEF2Wnl5d0JBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJGWkVBSUY5UllPRnFSQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlMQWNBZ2pzeXhrTExJRUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FJRVZFVUJnWDlGZ1lTb0VJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRZ3Nod0FDKzNMR0Frc2dBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQmdSUVFRMkZjMFdKZ0tBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUN5eUdBd0w2Y3NjQVNDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFXQkVCQlBZVkRSYW1RZ0FDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0F3SElJSUxBdlp5eXdCQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCRlpFQUlGOVJZT0ZxUkNBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJTEFjQWdqc3l4a0xMSUVBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBSUVWRVVCZ1g5RmdZZW9rQWw4cDZlc2xYVnJTVi9mLy9USmJMYjFkMGtmNi8vMTNrdDR2NmVPU1BqdnBiblV1T291a0MvWTJuMGZTZDByNkNra2JXLzlTMHJzT2JPTllUOWRzKzFpZnppcnAzcEorcUsvd1hFbDNxVFBVSjl2S0dwOUwyM3grU2QvUnJ5WGZKY256M2MvaWV5UjUvZmdMU1o4NjJWRnQwL0ZqWEZQYWtGcGVxMzdIUExla2I1WjBvWjNmMzgxejgxRkpmeXJwbnlUOXYrVjE0V1FzT3Fla0MwaTZoS1N2MlhyditHQS9QcC9zLyszM3BjOHZsSXI3OEMzOVhMdW9wSXYxNzBsdjZYNnpiZitmU0hKL2xtci9RckZpRmdUMlN1RExKZm5iNTV2Nlo5bmZQLzlKa3A5dmw4MmE1UC91MzQrL2t2UXZ2SHZ0ZFl5NEdRUWdBQUVJakJCQVlHZHFIQnNCaXpGWGszUnpTZGZ0UCtpbjlQSFRrdDRzNlJtU1hpenB3MU1hS2JqR0w1TzNsdlJqM1QyL05mTTZ2MVErc1hzSi9TMUpIOHU4cGtXMU5kc2U4YkRnWUw3WDNLcjQyNUp1RlYzSTM4OUFZSzNQNWRrbDNiamJkTHRUdHc1Y05uTk0vMEhTZisvRStNZjNHM2FabHgyMG10OEZ2UGFrK3ZqWWZwTnZINFllODVxeUQzNkh2SWVmbWV0SnVwMmthMG42c2t4ai9xK2tWM1lpNzI5SStuMUovZzJtdENQZ0RjT3JkeHVEdDVGMEUwbiszN25sYlpJZUorbDNEL3p1NFhYcmt0M216TTlJK3NFdEFTN1ZqODA4ZTdTa2wwcjYxOXhPTDZpZWhjYzdTL0xtLzl5eTYyVHl2bjZ6YTBsY0xLeisxMzZ6YnFpL2Y5TUpzcjkyQUtlVGFCeThzZk9rWUlEOG5lSjNqS1dYejNRYmI0L292bFBlMjhCUXZ4OWVSZElOdTAyd0czWHZUeGVlZUEvUFdUczUvRjduQ1BIOGp1czdWdnA4VCt3K2wwRUFBaENBd0JJSUlMQXZZUlN3b1FZQmk5TDM2THhKZjdqZ2c3N2t2bi9VZlVqZXNSUHQvY0pjczlnajF0N1JQekdqVVg4d1BrYlN2WG92clJsTkZWMjZadHVqam5wdC9BRkpUK2k5bGJmckk3Qkg5TDcwOTdVK2x6N3Q4clA5TTFVaVBPMlNlVTUvMnVFRCtjZ09VdE1uZkY0ajZXc1RkLy9QblZmcml4cGJkOHhyU21OMEIyL2VteUlXd2J3Wk5lZVpjVWY4bTJZQjl3Rzl0K0xCTzNkRUJuZ0R4SnNmOXh2NGJadlNUUXRaZCsrOVNLZGNQK1VhL3o1ZnZoZFZMemVsZ2Y2YWYrem42N05YNXRYdVU0MnZsWFMyR1gyUEx2VkpUdC9EYS81TCt1ZndVQ2RNL0x0Z2h4ZWZnaGtxZnlqcEJnZndZSTdHSWVkZDhSZTZrM0FQaWdaakFYLy9YNUt1Mm9uZ2YxekpGbnVwZTRQdnJ0M1lmbCtsTm5lYjhlK0lOOUVlMkgrN2NYS2xFV2lhaFFBRUlBQ0JMeEZBWUdjMnJKMkFQWXdmdFNjUEVJc0hENjRFekMrWDlvSzJpREJYak5pWTVLT1M5dUo2VlNVYng1cFpzKzA1YUtJNWxmUFJsSE9mWTY0VE1helo5NXJQcFg4VDdYWDc5RUJzTHJIZlhsVVd0SjZ5MEJBWTdyTzkvKzRRZEtxbHdIN3NhMHJKZkZsYlhmOStlVFBLSWthdDM3SU5Bejg3OSt3OGszOFZUOFRaMHlLMWFUeTc4WDROc2REZSt1U0JOeis5WHYxb0RhUDdOdjZnZDg3NFVNVTJXellWQ2JzdDd2M1BrcDdjblFyMVNTWjdqTzlUYkVkZ2J6R2laVzNXRXRoOTZ1SVcvYWJDMTVXWk1MbTJ3L2RkZ2MzYXlmeTRFQUlRZ0FBRUNnZ2dzQmZBb3VxaUNQZ2x6UjdsOW5Dci9WRS8xdEZhUXA1dDkxSEwyemNnYW84TmV4RGFvNzNGQjlDYWJZOXc1ODRwQlBaeGtya01vN0VvK1h1dDU5SWlyNzJwYW0yaTdmYmhZYjJuNTVLTzN0dkdYTEdtbGNCK3pHdEt5VHhlWTEySFNQQm0xQlViRy8rOFBvU1I0N1JUeWdrNERyNDM4MjlXZm1uUkZRNGQ0M3UwQ0NOaFF4eFQzV0ZwZk9LbWRuSCtIYTl4RHBteTlKSzdacmZxaC9NQStYZlg0UlAzNFJXTXdONXFKUFBiblN1dysvM0twMElmMlgyZjdFdFkzL1FPZ1QxL25La0pBUWhBQUFJekNTQ3d6d1RJNVFjaGNMN3VRK3VwTzNHeDkyRklEU0hQeDdQOW9ldFFOaTNMejNYSHZ4OWVXV1JmcyswcDFwc1hmNCtMdmVPaWdzQStUR2pOejZVMzZld3ArNHZSNE0vOHUrZVk0d1V2UldSM3Y1K1dLYnkxRU5pUGRVMlpPVTFXY2JsRjlSZFdQT2tSZGRyaXJXTVZMejNjVXRTUGZmKzlwU2c5MUpkV1FyVmpyVnZRZGZMU1ZzV25BQjBUMjNOdHllWFFBdnVHemJ2N1RlbldRanNDKytGbjR4eUIzU2NhN2ZUamQ0aERGQVQyUTFEbm5oQ0FBQVJPbEFBQys0a08vSXE3N2VRM1RtRFR3b01wd2pKWFlMZVk1WmRNSnhQTUxUNXViYSs5LzlCNWZwd3I5NkkraHEyOVJYNm40SnBVMVRYYlB0WXZDK3ZmTCttaGlkaWVROWNpc0orWnlwcWZTLzhPM3EzUWM5MEN1Y01KT0RsWHFUZVdZNjU2enJVNFlWTDZ1SDl2SDZNMEp4RmxiWUg5R05lVVV2NXJyZjg5dlNleGt3K1dGTWQxdGxCandTeG56dTIyN1ZBZVhyTS9VWExURTY1NzhmNzVMaFdsTis4ZDNqU2Rja0xRSVVTOHRqaGhabzNpMzVkWGRKdUI3azl1Y1h6MXozWU9EYVY5cUcxN3JyMGw5Wllpc0c5c2RvNGlPNDM4ZFVrbkN1b2lzQmZBYWxSMWlzRHVkNnZyOTV2NE9jNHJqVXdYQW5zcnNvZHY5MnY2NUxnK3VXMEhHU2RJcDZ5VEFHTzV6bkhENmdFQ0NPeE1pelVSOE9KcndmaWFCVVk3Wk1xZmR5OTUvZ0J3Y3A2UDdGejdIeVhadThJZkxKY0tQaWJuQ3V3T1AvRXJHYmI3US9MK3ZjMytRTndVZitqYVJyZnpJeG50dktkblZlTzQ5cHB0MzBWbHI5bWJTL3JsQ2VLbzIwSmdQeVBSdFQrWEZvNmRxQzhTL0J3NjRENlNMUEo5YWd1Qk4yb2NLc014ekg4NlE1RHloK28xR2lSTXpsZ1N6bERGbTNiMlBMUlltbE5xQyt6SHRLYms4RHVtT2ptSitUN1RyNVhQN1QyQ0hjTjV1L2k1c1hCMm5mNjV1VXdtSUljWXVQTkNOcWd5VFQ1WXRSdjJwd3hTQnZnZHlXUGtVNEZPNG01aGVudnp6OThKM2tUME92SGpmWTZLbkE1NWJmRW12K2ZCbk9KMXlpR0NMTmluaWpjOUg5MDdNZmlkWnp0MGlkdndlNlBYNzV4NTlsdDlYNWR5MG1pMzMwc1QyRzJmV2Zua3BKMUlhb2VOUVdDZjh3VFZ1YlpVWUs4UmNzOXIwZi9zOGkzNFcyYW9mSHQvb2lWeWNrQmdyek1IbHRMS2Vmc05QVHVyZmV1V1ViWGZVWmZTMzJPMmc3RTg1dEU5NGI0aHNKL3c0SytzNjZYZWpzNGM3L2pzYnkwTXgzQ2VYdndhK3BDY0k3QmZ2b3RUKzdJdVdWdks0ODlIcTIvZGZjaStPa004OEl2bHN5UmRJaGpISjNXZXRqOGg2Zi9NR084MTI3N3B0dGM2ZTcvOVZQL2g3TGpQVXdzQys1ZklyZjI1elBHTTlJZWxYK1Q5dkVYQ2dUZnJMTTVFbTRCLzJJbU9OOWdSNnFmT3g2blhlVjM0OVlLTGEzNjhITU9hVW9EdTZLcW1CSGJIWjNheVM1ODB5eFVvdlQ1N3MvczN1dXN1RjlENlhDL3l2dTdvcU5idlVFcGd0M2psY1hwbVlXTFNpMGh5UGdtSDY0bUtIUUVzM0U4dHVhZUxIS3JJRzV4UitLRGNaTXJlWUxocEwreFB0YjNsZFpIQTdtZmpVWmtHL0h0SjM5V2RxckxqZ2R0MVNDSC85Nm1sUmI2RVl4YllIZnBvN29uY2IrNi9kNzVpWk5EK3F2Lzd0c05PNmZoNkxmZTh5c21ENGZkQ083QjRFNzJrL0VQL1RtS0hCNStHeVAzOTJEZzVPRUc5RThwZmR1ZW1DT3dsbzdEY3VsNm52TDU4dzRpSk5kOVJsMHZoT0N4akxJOWpIT25GQ0FFRWRxYkdXZ2praGpLd2Q2bkZzTCt0MERHTDdUOHA2UjVkK0FnTHNsTUZkbC83N0Y1UUd6TnJTbnhaaTNsK0VkMTltZHkreDF3eFlzMjJlMzJ6Z0hyTC91Tjc3S1dzZEtvZ3NIK0oySnFmUzg4UEp4djIwZEt4TWlXZXNEMzZMUlJhb0VtVnVlSlQ2Ynpkcm45QlNhL3F4WlRjZG1wOXZLeDVUY2xsZGV6MWhnVDJUL2FidWY2dGl6YWl4dmg0Ymp5dzkxQlBNYXpsSFgzczR6UWtzRnUwdXBla1g1dmhYVzVCeTZkMW5PY2xkZkxIcHdkOVdtZjM1R0F1ZHd1UHJ3bmkvRTlKSHUyd0ZaNm5aMHNZNGxPUGpzZitzVnhqOTFndkV0am52cU00OUptZE9CeU95YUZmU3QrZHByelBwdkFkczhCZVk5cEU4MkdmRy9vVzE3MjU0dzM4M09MdkdLOUo3OHh3THNwcDB4dEVUcmJzTnIzNWdNQ2VRMjM1ZGFJVFdiWGVVWmRQWXYwV01wYnJIME42a0NDQXdNNzBXQU1CZjNUN0JjeEh5VlBsdnYzSGVhN1hRMjdmSFR2UUgvMCtkdXlQdWRKeWsvNEk5dGp6TmlmbXA3Mk5YdHNmdFIrejZ6bVNmcWpBRzJTN25UWGJYaG9DWTlQdk4zZmpmSTZFVjlIY2o5ZlMrYlBVK210L0xxT1BVb2UwOEpyalV6Q2x4WnR6THdtOGNROGw0T1JzTEF6MXQ5Ykh5NXJYbE5KNWNLejFkd1YycjRsM2xHU1JmVzdKT1JWVEdxNWdyazFydlg3M0k5WU9DRDRsRjNsNjUvUTMxN3Y4UmhsaGFvYnVaMjljSjRXK2JjS1lKL2FiNTFQZStTd2NQeVhvNkNFM1FWT21SYjlkTmQ5Uk5vNEtUczZkRXdKdFk3ZmZhNi9YQ2ZUdnlwbE1RUjBFOWpTZ2FEN3NTMkRQWFJNMnZmRTdrTmVqdjZnd1I0YWFzRDArTGVmUVJaNi9IMngwSDVyZER3RkUyZjF3M3NkZEdNdDlVT1llQnlPQXdINHc5Tnk0Z01BVmV5K21yMnIwb1pWcmlqLzRTa090UkNLdjQ1L09UVVlhZlNqYWkvMXFuVmo0cHR5Tzl2WFdiTHU3RU5rL2hNTXg4aC9TaWV2ZWxCaUxUVjN6NDdWd1NCWlZmYzNQWlk1NE16Y1o2WGRMZXFXazFMcDFpejVFd3o0SDFrY3o3YjJlOHQ0Y3NxZUd3QjQ5azB0ZUQvYzVSa3UvMTBaZzkzaFpBSDF5SmMvRFRiOTlDdVJGWGI0RFAwTmpaZXFKc3FXenJXbmY5a2RzQ3djRWI0WThvUmZKeHV4MnlLemJUSmdma1dnNHh6SEJ0dHIycC9XZXJtTzJPeWE5TjFtWGxsUTNZdFBxSGNYT0p2K3RQL1dWay94MjdoaHR4Z1dCUGIwcVJQTmhYd0s3VHp6NFpFaVV6NlpsdlA2YTZ5ZHRMWXNBb3V5eXhtT09OWXpsSEhwY3UzZ0NDT3lMSHlJTTdMM0hIYVpsckRqbXF3WGtEeStRMXZmMVdjM0huclU1M3VXYjdrYWlsZXY5VXVmQmZzOUNQbXUyM1YzTjRiSkI4dTVlS1BLSFNIUmRxNC9Yd3VFNWVIV2Y2bGpyYy9sdGZUelJzWndJTmJ6TGMwUjhKMjEyd3QzU2pidXBnNStiTUhDby9Sb0MrOXJYbEtuY2orMDZDK3dXdUgwTTM1dElMVW8wVjM2L0QyRXhKNjV3Qzd1WDFLWS9ZbiszMFNiSXBwL1JXbXJ2Vkc5V2Y3UUFqTitYSE1MR2NkWEhTZzN2OGtpWTlMcDg5UzdtLytzTGJOOUgxY2p1MXU4b1R1cjk5QzZ2a0RmWm8rSlRFeFplNTJ4U0lMQ25LVWZ6WVI4Q2UwNWVGZmZDWWZjOEgveU9SWUZBQ1FGRTJSSmF5NjdMV0M1N2ZMQnVKZ0VFOXBrQXVidzVBY2ZTZTBHUU5OQ2VXZmRwYmtuNURTeXcrUWl5QmJTaE10V3pmS2d0MytNWkNSTkxQM0xYYlBzR1F5U1V1NTVER2poT28yTm1mNmEvTUxxdTljZHIrVXpiL3hWcmZpNU55K3ZGTHlhdzFmSXNqN3o4blREc0tuM3MwWDJNWWlxeDZXTjdUOVF4ei9hNUF2c3hyQ243R0tNMTNNTjVUaHhmKzQwTmpmM2FUdHkwTUhTcGtYdThSOUtWRnJxeDNoQkxVZFAydnZZbW9yMUtuYml6UlhHOGJtOFVPaHpJVVBtWC9pVENPd3B1N2tTcVRxajRqU1BYMVBJc2o5WWszOTVDdjhOTExLbEVndW8rM2xIc3dlNk50dnRuZ0prVHlzZk5JN0NuSVVmem9iWEFuaE1Tenozd211M2s3bzYxVG9GQUtRRkUyVkppeTYzUFdDNTNiTENzQWdFRTlnb1FhYUlwZ2ZQMkgvRVhIYm5MVWoyTWJHNzBrZmd5U1RlZWtXaHNHNGs1T1JuWUpVWTQrZVA2MmdYZWhtdTJmWU1nSlpUN2lPb0RPdkhoVndmaUJpT3d4NC8wbXA5TGg1L3dzK2RRS1VPbDVvbVluRGoxRnIwZkh5T2ZYU09WcjhFZjRONTArTDFFNkppNUF2c3hyQ216QitGSUdwZ1NMbTFLMTczeE9SYURlNHB3TzhXR05WL2paS1FPNDlOS1hOK3d1VXVRbjhiaXUzTlM1SmJJWWNEeC9oK2QyMWhRTHpvcFVlcWNVTW1zWkRPUm9Mb1BnZDBHK2h2U0lRN3R6UjZGQlpsejRnQ0JQVDJyb3ZuUVVtRDNIUEJwSnArU1RSWEU5WDJzRE1kOUQwVFo0eGxmeHZKNHhwS2VEQkJBWUdkYUxKMkFoZlUzZE1tdXpqZGk2SktUblRteDZGTVRnQjA3M1RGQWE1VW9aRWRKbUpnMTI3N2hPU1NVLzJNZmNzakN6YWRId0NPd3h6Tnl6YytsUGNaZjNXMndXQ1FjS2lYUFNVenFpd21HVSt2QVBzTEVwR0lsVzRDenlHUnZlaWRNYnVYQkhuRlk4bnFZTTg3VXFVOGdKZHd1K2JlL1BvbGx0M2pkUGhUZW1KVWxtM05lbDUvWmg1RVlhdTlEa3E3Y2U4UFdvSEt1N2lURXl5VmRkcVN4SlRweFJJTHF2Z1QyRGJLYzJOdE9NSG5WaVVsUEVkalRNejJhRHkwRjlrdjN6ajArY1RSVzVpU01yL0dNMDhaeEVFQ1VQWTV4ZEM4WXkrTVpTM295UUFDQm5XbXhkQUxSaStOU1A3TDliUDFtSXZsWDdZOUVqK08xK2cvRnNlYzZOMmJ0bW0zZm5zOGJvZHlKOGw3YUMrcytXdjc1WU5JanNNZXJ3bHFmUy9kc2s2QnhxSmN0eEpSTDlqRjh6ejJDZFI4ZWtpa0J4RWtJZjF6U3R6Y1UySTlsVFltZkRHclVKSkQ2Q0Z2cWIzL04vcStscmVqM29FUmdkMWdZTzFWY2VLVHpMVFlrSHlYSlh2RmpaVituakhMSE8rSzliNEhkNi92ZEpEMDQ2TUFqdTFqc2Q1NXdvZ0tCUFEwMm1nK3RCUGFjUERPMi9PZUNFeTY1ODU1NnAwMEFVZlo0eHAreFBKNnhwQ2NJN015QkZSS0lYaHlYK3BFZHhZL05GYnRMaGl6Nk1QMzdUbWkrZ3FRUEJJMnUyZmJ0cnZubC8wSjlVaVdIaE1rdENPd3hxYlUrbDFHODRCWmlkelNmSFB2ZlNRQmJKZjI2UU9meCtZcVI4RkZPUE9nRTBZNm5IWTFwaVVpMk80T09aVTJKbnd4cTFDU0F3RjZUWnJ1MmFxNGRrYU5BQzdIYmE1dHovWXdWaDBEeENadldvWFp5UnlqaXZXK0IzWGI3bEpSUFpEcng4VmlaK3I2T3dKNmVHZEY4YUNXd1J3bU9iZldMK3pCQ214eEh1WE44emZYOG51bVRNZHZGSndWOVNyRGtXMlJwREhiN1pXZWxqMlU0TGRYcXgxcEVXZWM5Y1hqSVRkazNwMXE4VzdhemxyRnN5WUMyajVnQUh1eEhQTGhIMHJYb3hkcmR0SGZtOHhiVzM4djFDZHEyZjJTM1Rhd2Roc0p0UitKaHJuZnVtbTJ2TVEwaVFmUVFINjgxK2xXempiVStseGFiMzV4SW50ZkNPOUxjSXcvSjJ1RlJObVB0VFNZbjZiTW9OVlFjTzNYamRSaDlwTThSMkU5OVRhbjU3SjFTVy9zVzJQMU8vTDFkSXI2MzlXTElQbGc3SjRTZmp6OVlrSUJiMnUrYWE4YzkrdE5tUXpia3ZzT1UyaCtkTXZKOGNBNmJqNWMyM0toK3hQdFE3eWc1NFVJZTA1OFdLTm1zaU40M1dnbkkwZkF0WlJ3aU8xcnc4VnJwZDRzN0pDQk4zVkNKdUMvcDcxNi9IZnJJMzZGWDc1MTZVdlpaWUxjamgvUGRQTC9MdytYa3o2MUVkMjk2K2VUa1dINEU1ekg1Vk1KWTk4Mi93YmZ1KytqMmhzcEgraHdiVDVDVWMwbzR4V2RYbk42dTY5L21KeWN1dmxYdlRCTE5qNXFDdDVuNCtidUZwQnNsVGw3WkpvY2xmYjJrSi9XbnpUOFJHWnI0ZXpTMnZ0U2JXZzdQVktzNHA0c1RHdnZmWTJWN1RxMXRMR3R4b2gwSWZDRkJEUVVDU3lZUXhjZTA3WTdYNlFSSy92aGFTb25pRFpjbS9jcnRWeFNIUFVmSVc3UHR1WnhTOVJEWVk0cHJmUzZqK090M2xmVHd1UHZGTmFKbnFzV0dtNDIwS082UHVLRVBMSHZNTzNheVBaQmNvby8wT1FKNzFQOGxyNGZGZzgwRjFRaWt3am5aRzlEUDh6c3IzYzN2d3hhTEhNYkNndFJOOXlDeVc4QndQaERmeTMxOTZFcEY5dFJHU0VtQzlTait1aE1sWGtuU2h5dU4rYWFaNlBlc1JVaS9PVjJJMXVwRENleCtodTdYdll2Zks5RTVuNlIwMkw2L0xRQ0F3SjZHRmMySEZnSzdFOTIvWnVSazNNWmFDNG5lM0YvU3QxbkJ0QnV0YW9IUmVXczh6MzBxZUU2eENQcnJrbjVGa3ZNVTFDelJ2Tmgyc05pK3J4MVI3cDhJY1pxeThlLzZjRkYyVm9uQ2NRNjFZd0g5UjJ0Q0dHakxObnJjNXZEKzZ1Nzk0R2NrZVVONHpKRXU2b2JmemUvZWlmTi9GVlVjK0x2ZkhWN1VyNlZqbDcrckMvdDRqZjRVOTRSYm5Pa1NiOHlqVS9RQUFDQUFTVVJCVkhBNDNPclloczF1bm8yMWpHVU5OclFCZ1RNUVFHQm5RaXlkZ09lb0V3VGVNbUdvdlNUOEkrS2Q4NldVbE1lcWQzajlnV0hQaGRybEpwTDhZak5XY29TOE5kdGVneWNDZTB4eHJjL2w3YnVFeVk5TGRLK1YwQnQ1Y0xmd25FK0ZodGtrTm5Yb21FMkpQc2JtQ095bnZxYkVUeFExaGdoWWZMN3RDSnFhWXV1MnVMNzVlSFFpNUpZaSs3YTR2dW5pV2tYMlZETGFrdmVkS0pTVXZmenRKVGlXb0h6cVV4VDluclh5bko5cWI3UldIMHBnZDM5eXdvYVVodmxCWUUvUGxHZyt0QkRZYnk3cEdRbXpQdGVIbjN2VDFFbSt3T3U4VHRoTDNaN2EzOXpBdmtkMzN1ejNsUFRKU20xSDgySlhZUGZHZ1RlWkxmYVBlYXZubXZhY2ZuUEZHK0VsWmVtaXJCbjlwS1NIekJEV2QzbjRKSWlGOXRMZk5lc0lyNVQwVlFuQUQ1QjA3d29iOXptQ3ZoMGRyZGRzeXRMSHNtUmVVaGNDUlFRUTJJdHdVZmxBQkNKUnpHYTEvaGd1NlhvVXFxV21NTEJyVitTaEc4VVNYYlB0SldPVXFvdkFua2R5YmMrbGUzVW9vZmVpZmVLKzg0Mmc5YkZSaS9zV28yb1VmeHo1S1A2UGpUVG1UUVluOWR2MkxJcyt4cVlLN0t3cE5VYjA5TnFJdklwcmlhMUQ0dnFHdHUvaG8vOXpqbklQamR5UXVMNnA1NFNBUGtWVEVrTGprTE9qcHRkNUZLckZIckczYTlUWjZQVGZra0lSUm12MUlRVjJ6NGVuU0xJQU8xWktjeEFoc0tjbmZUUWZhZ3ZzVWRKeVcvdXl6b25veG4yWWlrYVA3RjZiOWJ2Ylkvcyt0Ynl4OCtMOFlCZVM1VlVWYmhMTmkyMkIvZXlTTFBBN0hFeXQ4cm8rL3I1UEFPV1dKWXV5bmdNV2tLK1oyNW1DZXM2RDlGKzZYQi8yT3M4dGZnNGYwWVV1dTFQaWd1MDhTN250RHRYenBxaFBXb3dWYjZqNHBPcDJ1S01saitVY0Zsd0xnWkFBQW51SWlBb0xJSENSN2dmTlA5Uk80cGtxVTM3TVczUXY4c0txL2JLNzNZZm9Belc2OTVwdHJ6V1dDT3g1Sk5mMlhFWkNiNDFqbzJQa291ZXE5cjB0QmoxNzVDaW5OL2o4Z2ZEZUhXT2pqN0dwQW52VTkyaE55cHVOdzdYbXJvZHo3czIxOHdoY3NROUJNT2FkWmE4dkg5R2VXM3pVMzBldExRd09sZG9pdThWMWg3WHpmWWVLaFhVTFU2bWttM1A3WFBQNjZIZWdSRXlORXB5T2hUU28wWjlvdzdqbHZVdnRqOWJxUXdyczdrdVVOTFkwNUE0Q2UzcUdSUE9oOW05czlKdHVhMHRQS1pRK0EvdXM3eE9JUG1WNHdUM2QxQ2NNTFpyYVNXTE9SbXMwTHpacldtckRkMjZYUzM4L2x5cksrbDNTQ1h2dExOT3F2TDlmTzk5ZWNJT3Y3emRqblA5aXJNd04xWFN4TGtyQWF5VjVIUjRxdTZGaE5uV1dPcFlGZUtrS2dXa0VFTmluY2VPcS9STEkyYVhkV09UZFdvZVQ4YkdwT1M4bWMzb1llYXUyL1BpSlBrUWk3L2sxMno1bnpMYXZSV0RQSTdtMjV6THlpSzM5RVZveXAwckNLRVNqODAxOXdzU2hEd0d2aVU3RzlLeUJScUtQc2FrQ08ydEtOR0w4ZlpkQVRpeG5od3A1WVFWMFB2TDk4OTB4YTRkUEd5dWxJc0ZZTzVHNDd1c2UxaDhYYjVYNHJnS3lNelRodkM3MldCNHJKY0owbEt0aDZocVUwK2RVSEhsZjM5SjdQc2UrN1RyUld0M3lIVFBIMW1qTkw0bkw3L3RGNzdVdGY3dFQvVjNLT0VSMjFPWVRuWlN0blI4alo4NjFxblA5M2xuaGJLMXVrR2gzYnNpd2FGNTRiZlpwcWRScHh4cmQ5cWtzLzY3bGxDV0tzcGZ0azdoNlk2bDErWnMrMGZyN0NtNlV5clhrWmh5dXladlhka0lzTFRuZmVidWhZVGIzV09KWWx2YWYraENZUkFDQmZSSTJMam9BZ1dnSGRkY2tIMlh5eTBPdFdIWWxYWTVlYW5MaW9KZmNiN3R1SkE1SG5ySnJ0bjBxczkzcklvYUgvbml0MWM4YTdhenB1WXcrMGx2RVFkOW1uSHJaZEI2SnEwcjY0NW1ENHRBd1Q1TjBzNUYyaG81eGJxcEd6LzVVY1N0cWQ4bnI0Y3poNFBLSkJLSjF4UitmVis1Q0lEbGhZbzJ5RDVIOUdNWDE4L1RDZ3owOGgwcnB1cFpLYXRzNkRucTBUaTNwZDMvcHRqcmNoRTlncEVJcGxDUVVqMzY3YXd2SXVXdktVc1loc3FNMm4raTBSKzM3NVk1SDdYcVg3MFBkbkRPejRiZEordStTL0c5N0kyOFhyNVYreDNOZWorOUpKSXJjdnNhZTdEOFE1TlZLbVJiTkMzOGoremQwYUlQVTkzNXVIeExsVDdZU2x2cTM4di9yUXBsNFk5VjlHVXQ0dVczWG1JZnprTzFMRTJVdjNMMXJPRmZSeFRQbWdIbDVJOVloSHorMVZkL3p4eUs5aFdoemk1alpVOTdqN2dTNE9jWHYvYzRMa0FydlU5cm01cjVSblBmVU44WFN4aktISlhVZ1VJVUFBbnNWakRTeUp3S09TK2VrT3JuejF1TDZuZnRyY24rb2FuVGx1cEo4TEhxc2xIaDBsZG9UaWNQUkIrK2FiUzlsTlZZL1lyaWtEKzFhZlo3VHpscWV5Ky9vUFRqT01kTFoxdU1hdld4T0ZiQzN1MlBSd2dtcWhrcjBrUk45akUyMWp6Vmx6dE4xZXRkRytRTk14QjUzemlGUTg1UmFTNUg5R01WMXY0ZmRyVXYwOXVERUZDMk53NXhLYWh1OXU4eDlVcUwxYjBtaVlXUnI2OSt5SE5hcGZDZSt2c1JHQlBZMDhXZysxSjY3cWVmVWx0WUszNVV6ejFyVnlSVldmZExva1pJZTFQMG1mU3pUR0c5QStmZnJmaG5KUlA5WjBuVzZIRDF2eld4N3UxbzBMMzZyYjNzNzlJZUZkZHZsMk42Umc5cFg5MlA5b3htMjNiZXJjNStNZWhhanp6cFM3M3NsK1QxNnJOeXFGOE9qMjN5K0h5di9PMVg4dTIzSG15am0rdlA3Y0hVZmlHNHM2UUo5TGlpSGdVc1ZKMUoxcnFUY2tqcTU2amI4cnVRTmtlZmxOdGg5Uy9oYjJQWE5mYWhFM3hSTEdzdUNibE1WQXZNSjVBcVY4KzlFQ3hDWVQ4QWYzci9jSlFLMGlGUlMzdDFmNHgzYzZBZTFwTjJ4dXRGUlkrOWcyOHUwVlpuaktidG0yMnZ4UkdBdkk3bVc1ekw2MkdqcFNXMmlLZTlNLzMycWdMMFpyY2piYXV3WTUrYjZpTTlVKzFoVHlwNm5VNitkeWg5Z05pMkYxaFlpK3pHSzZ4NkhhTDJaOGtHZmVuY3BqZHRkK2h3dFZjUWQ2a2UwVnBlSTE2V2NjdXZYOUhKZTZ0Z3NaUndpTzJvSzdEbW5FOVllZnowU0ZqZlBnR05sMjhIa3IzTWZpcDE2RmxzdGNrY0NyajJvYjdMakZaMXp5MmhlN0xaaHIzdi8vdjVSVHVOOW5aemZURmY5eXk2bnl0VWtmYmlnN2QycTBidmsxSGZVSVpOeXd0UjVNK0l1ZlhMWUVtMGhoNW1UblY1ajRDUkVDbDhVcnMzamFvZVgzSTJncUwzb215Smw2ejdIY3NhVTQxSUlUQ09Bd0Q2TkcxY2Rqc0JVTWM4VysyWEk0cnhmTmt0K0RFdDc2eC9jVkx5NW1pOEJRN2JORWRqWGJIdnBPSTNWUjJBdko3bUc1L0tRbnRRbTJsSmd0NGpuUkkwK3pqbFUvQkgzNDVKU2NaMmpqN0dwNnhaclN2bnpkS3BYUktLdHVjeE4yQld4emZuNHpZM0pmcXppZW81M1o2bW9Gd2wzVVhpN2FGeWp2eTlWeEIyeU8xcXJseUN3UndLS3cyaGN1MHZtK1BGb1lJakJIaEtLNWtQcHM1aTZZWlRndERTK2Z0aTVBMVR3Qm9IRGpLYktTenZSK09iZEtlbFB6TFRQNjU0OWxTMW1wa3FwUjdQYml1YkY5djJjbitzRzNZYkJPeWYwSitmVW1lZkY5U1NaMjlRU3JTbFQzMUdIN0lsQ28xaGNkNzYzWjA4OFNaZkR6S2NjSGwwQXk1Ny90c2ZqT0ZaeTU1RTNmN3l4YzRtUmhsS2hZWEpNM3VkWTV0aERIUWhVSllEQVhoVW5qZTJKZ0QrQWY3cFB6aExGTWhzeXFiWFEzbEpJeTBFOEp4VEZtbTNQWVpOVEI0RTloOUtaNnl6OXVZeGU2RnFHYmpLdDZObWFldit2NkkvcCtxTndxT1FtVFlvK3hxWit2RVQ5bnRwdTdpeWRzeDdtM29ONjh3bGNwazlhZXNGRVU5R1I1UGxXZkxHRkhKRTlFbGlPVlZ6M2g3ZVB4RHVtN0ZpWmtsUXQrdDA5dE1EZSt2NGxjemRhcTVjZ3NEc3V2NFhkc1hBUEpUeVh1dm14bEhHSTdLZ3BzUHY1ZjdPa2J4eVpzQzFQR0pVOEkxUHIrdmZuVlYzc2NlY0JHU3U1RzZ5NU51U0VJdm56M3FQNUk3bU5GZ2pzSGpON1M3K2xvTzNkcWpuYzVwNFNqZDdoYTcxTDVnalZjeFBRbXQvWDkzUHQwaVBjUFI0T0QxU3lpZVA0K0o2L1kza0RjanpqSSsvOWovYW5FVHducDVaOWplVlUrN2dPQXJNSUlMRFB3c2ZGQnliZ1JERk96cEw2SUUrWmFLSDlUbjFjNXBxeFhGT0MwajY4Tys3UnhmVjdZS0xqcVplUU5kdGVhenBHSC9wTCtIaXQxZGNXN1N6MXVZeGU2Rm9mYS9ZUlg4ZHpIQ3RUQmZaVVNJMlNKRm5SUi9yVWp4ZldsQlpQMlhHMWFiSDJKWjIzbHIwangwckpYSzVCWjQ3SWZxeml1ajNYZjAvU21DQ3c0VDVGZkloK2QvK2lUdzdvai9zV3hiazVuRHZuS2lPTmx3akNMZXpiYmpOYXE1ZndqaExaV01JVGdUMDlveUxXTlFYMjZGNU9tbmtGU1RueHFGcy9KMVBhanh3Q1dtM3k1cHpldWtYblVmek1nazVGWTdWcHl0K01qaUUvOXp2WU1kWi9NV0dmTnladTFPWHUrSFJCSDdhclJ1L3dVOTlSZDgzNXZ2NjNZRXdqbTVvd2RLamJxVEFzVXhON3AzSXgyWVlIU0xwM1lyd2prVDdYQ3o0MXpQc2F5NGxUamNzZ01JOEFBdnM4Zmx4OWVBSk9zdUlYQXkvNFU0dmpram43dGovZ2FwVFVDOW8rdkR1aUY4U3BBdnZTYmE4eGRtNGordEJmd3NkcnJiNjJhbWVKeitXaFgraWkrMDhSMktNWFlTZmZjcUxubkErbjZHTnM2c2ZMbXRmRFZzL0hXTHNXWnIrck81M2w1OGZlUVk3dDJqS2MyYjc3TjNTL2EzV0NyWThiajNsY2JhN3hNWG9mbWZaSDU3N0tGSkg5V01YMVMzWmU2eFlXTGhyQW54b3ZPUHJkclNrU0RuVWh1bitKSU54NmZrWnI5UkxlVVNJYlMzZ2lzS2RuVk1TNjVyTVQzYXRrWEZzL0o2WHRSK0Z2M0Y0TmNYSElyc2hyMk5mWVFjTmhhWEovQTZPeGNwczFZcU52K2hQZGIrN2NpTjZocDc2amJvK0hUNFRhY2MrY2gwcnQ3MkNmQkhtREpHOWVENVVwWHY5UnlNaVVCN3BEMXpoSDNNMUc3S20xdWJDUHNTeDkvcWtQZ1dvRUVOaXJvYVNoQXhMd1BMNjZwQ2QwUDR6ZlBNTU94enE3WjBibTlPZ1djMktnUjIzbi9IMk93TDVtMjNQWTVOU0pQclNYOFBHYTA0OUQxMW5hY3pubnVhakJNbnFoTEJYWW8yUEZyNVBrZStZZUw0MCtqcVordkxDbXhMUEhjVmlkd05zQzhuWnhnbTU3clpVa0hZdnZ0b3dhWGgvdUlNbWJRRkdvTjhkZE41dlBITUIwMjNtM0x0VEZneFAzM29TTGNSVjdHTm9EYnF3NFA4dmRnM3dJQitobThwYlg3Mk83bmkwdzdOV1NiaXJwbnlaMDROQWlhdlM3UDFjY21vQms5SkpvclY3Q08wcGtZd25QUTgrTnNZR0krcml2Y1lqc3FDbXcxd3o5VS9PWnFORlc1TGxjbWlTeTFLWnY2MDlVajIwMmUxMzFDWnZjT09uUnZMQjk5KzMrdzU3bk5jcTVKTDA4RVQ3c1gvbzhRZStZZUxQb0hYcnFPK3EyT2Q1SWZyMmtjNC9ZV0RzSGpBVjl2elA0Sk9wUW1lcjFIOFdRSDh2TDVKTzJ6KzNteFpBK1dDTTB6S2FQK3hqTGlkT015eUF3bndBQyszeUd0TEFjQXQ1NS9ZRXVydGxqZXcvQUtaWjlVdElQOWNlZ2M3dytoKzZ4WmtGcHpiWlBHZStoYTZJUDdYMTlOTlhxejZIYldjcHplVXdDZTVRZzZaLzcySTF2TFJqODZHTnM2c2NMYTBwNkVMemVPREdWay9BT2xTbGpXVERzQjZucURRVnZhUHZrV0ZTaVdPZlI5VFgrbmlPeXY2bS8wUlVUTjF5YnVPNTF4dXZtL1RNZytzU0ZoZmozWmRRZHFuSm9FVFg2M1M4UmhDY2l5TDRzV3F1WDhJNFMyVmpDODlCelkyeGdvajd1YXh3aU8yb0s3SkV3VmpLdTJSTitUeFVmTmJESnZYM3IwcVNUcFdaSFlxdmJjMGdSZXhqbmxHaGUxUGJHdGsycDl6MXZrRHVFNUZTSGdXanVUWDFIM1daNSt6N3A3QkRmVmlGZTd5TEo3d1pEWldySXBlaEVoRVB1ZVVQSko4NDI1VHg5cUQ1dm9nMlZtcWMzOWpHV09jOElkU0RRaEFBQ2V4T3NOSHBnQXY1NHQyZWNkK1hIRWl4RkpucDMxNGxVcDhTS1c3T2d0R2Jib3pITi9YdjBvYjJ2ajZaY2U5ZFM3OURQNVRFSjdLbTRqWjRQVTE2RW80K3hxUjh2ckNucEo5UkhrWjhSUE1RdmszVGpBM2x3MTE1ZnZrWFNzeVE1cVdsVTdFbDF1NEpUR0ZGN2MvNmVJN0tuMmwrYnVINCtTWStYNU9jK0ttL3I1K2VjdU11SEZsR2ozLzBsQ1lmUldyMkVkNVRJeGhLZWg1NGJZL00vNnVPK3hpR3lvNmJBN28xZzV5b1lLeVhqR3EwcisveDc1SDFkNmowKzFYWTdlRDAxY2ZHdmRTZUVmaWF6OFdoZWVOMitkcGVMN09PWjdlVlVhL21lM1ZxVWpUWTRXdkF5MDFTLzVteUNSRWxVZDllRjFOalZDZzJ6bVVPdHh6Sm5ybElIQXMwSUlMQTNRMHZEQ3lEZ09MWitFWEVDbHlsQ3UzOU1IWWZzdllWOStRMUp0eDI1WnM2UFphNFowUXZPOWZwZDZxSDIxbXg3THArb1h2U2h2YStQcHNqT3RmNzlVTTlseWt2RUxLY0t5TG5qRUwxUU9qSFJ3ek1haTVKaFBiSGZZUHpYakxhMnEwUWZZMVA1c0thTUQwVDBRYmU1Y3U3UjZzS3AwS1M2NDVuZnF2Y09zMmQwVkN6dU9uL0FJY0xDak5rMlZXUmZrN2p1UGpvdS90T0RwTE1iUmc0SjREQkdVOExDYkhNK2J5ZjJ2REVSNDcybVNEZzB2dEh2L251NjhBZFg2all2UHh4TjNEMzhQVnFybC9DT0VnbXhKVWxyRWRqVGt5cWFEeldmbmVoZWF4WFlvOUFnTlJtbVJ2TTcrakF4VHJvOFZFcENoa1JqVlJyVFBXZHBjNGdSdHp0V3ByNUh1cjNvSFhwTzIyNC9pc0h2OEREZThLOWRvbkdhMHk5ZisveVJNSHoyeUhkSXQrZjFpY3RmTS9LYlh6TTB6SVpkNjdHc1BVYTBCNEVpQWdqc1JiaW92RklDRnZSK3Rrc01jeTlKT1IvMjI5MThmeSs4dmIyZzd5bUJ1OVVSczIzejVuaU1ydG4yZ2lGS1ZvMCt0R3Q4dkVhYklMWDZVcU9kR3YwZHNtUGZ6MlgwUXZjVHZjZG1EV1pEYlVSam52TVM3VVJJUHRKNThSRWpIYWJoR3BJK01xRVRyVjd5V1ZQR0J5TmFhN2F2VEcyTVRoanV2VjVpYjJpSGJyTVhmbFI4ZE5tYllRNGhzOFFFcjZVaSs1ckU5YkZjQUdOajlvZytiMDJOVFpEb1dTZ1JaS001TnZUM3BZcTRRN1pHYTNXcjMrd1NycEhRVmlKWUxuVnNsaklPa1IwbHJLTXhqdTQxTmFSRmROL1dmNDgyaEVvOHgrZllHbTAwbG16MFJXUFZvay9SZTNiT2UrNFl2NVp0KzU3UjVrYXJiNFJvbkVyQ0F1MnlpOEpKdnFVUDdlWWNNMk9PZ1ZOT3hFYlBRT3V4ak83UDN5SFFsQUFDZTFPOE5MNHdBaGIwL2x0M0hPNU9oVUw3MzBpeXVQR3V6UDdVRU5JeWJ6VllyWlhBN3B2TmVUbks2ZE1jMjNQYXo2a1RmZWpYK0hpTjVraU9uZnVxVTZPL0tWdjM5VnhHTDNTbFNVWkwrVWRqSGoxYlVWTFR1Ykc2bzVmOHlMNHhIblA3WGNwNXQvNFMxcFN4UHB5bDkvYnk3MHVxN09QazAxek9ZOWQ3dzhjaFlld2RGaFY3U3YyZ3BGZEZGUS84OTF5UmZVM2l1ajA0N2NsMmlReTJQaDFqVDc2blNKcWFxMmIzTnRIdmJtdlAyS1dLdUVQREVhM1ZyWCt6TTZiSUYwNk9QakJSMFNja0xCemx6SitsanMxU3hpR3lvNmJBSG9tUWEvMnRpazQ0emhFNWM1NlhUWjFvSGZ4UTUyUnhaVWtXMnFNU3pZc1c3N3pSZS9iVTkwajN0V1hiYmovYVpIRW9uVTlGMENmODNlK0JYNWU0YnU0NGZWT1hYTlluSHk0NmNvOFg5R3lIa3MzWERnMnpNYUgxV0U0WUJpNkJRRDBDQ096MVdOTFNlZ2hjb0UvYWxaTmdiZE1yL3pnNXkvY25NcnE1WkVFcGlpTzRadHN6aGlhclN2U0NXK1BqTmVLY1plaWVLdFhvYjQ2cHJaL0w2SVZ1N2t0czFNYzVudHlSRjRxOWZwM2dPWFUwTjdJditoaWIrbUVVemZXcDdVYjkyZnc5SmJCSDYySHVQZWJVYzY0UGU1S2xpcjJNcnBQNSt6UEhscHJYbGlUSTlIMWZLTWtKeGl3Z0xMM1kwL3R4dlVDWXNyWGt2ZUZRZmZaM3dJOUljaWlubkJOK1BzM25UWkMvcm14dzlMdDdhSUhkY2FmOUR2alp5djJlMGx5MFZ1L3JOM3ZNZHM4cHg1RytaYUp6OTVUMFM1bWRSMkJQZzRybVEwMkJQUm9MVzdyRzAxYXBEYUY5bkR6ZUh1RmFUZ0hSdkdqeHpodTlaODk1MzJ2WnR2bEg4ZTh6bDZ2cTFXcU1VNVMzYWNqb0ZxRmhOdmRwUFpiVkI0RUdJVkJDQUlHOWhCWjFqNDNBcFNRNW1lbFl4dXpkL2o2eWp3a2JlZHhFUDlLdGpwblpYbi80ZXpmNm1pT0RGWDJrcnRuMld2TXordEN2OGZFYWlZNjErbEtqblJyOUxiR2oxWE41RlVtdmx1UzQxME9seFhIWjdmdE1qVVdlNHkwN05lNzZ0bjNSeDlqVUR5UFdsUFRzanhKUjFkZzhLWG4rYXRROXR5VFBTWWVKaUlxOW9YK3U4K0I2ekVKRHd1emE3NU1rZnBZZHV6U25MRmxrZDI0YWV4azcxbjFPK1JWSjkyNFVGei9LUjlCNk15enl6TjMzNzJCcVBLSzErdEMyUnJHTTNUZHZWdmpFUkU2SlJOMmFBbktPUFpzNlN4bUh5STZhZktKa29HYVRtMCttaEhYcnVyVkU3UnAyMXJJbG1oYzFoTnZkL3JZVVRsdTI3WDRzOWJ1c3hqajV0Lzdaa201UU1FRmJoSWJaM0w3MVdCWjBrNm9RcUU4QWdiMCtVMXBjRjRFU0w3dlA5Y20vWGhkME1mcmhxUEZqT1daQ0pBNi92dmN1Y2RLOG9iSm0yMnZOdkloaGpZL1hwYjdJRFRHczBkL1NzV254WEVZZkc2MzdtZnBvU3NVdHRSRGhGK09oNDV2bVdrdkFpL2hNRmRoWlUrTFo3eU84ejVGMDJaMnFMVUp4eE5iTXExRVNhcVNWTi9TOEhveGZYU3F1YjFxcTlZelc3SmZqNHR2TGVHd3pmdnRlemtWakwzY0xkUzFMTFdGcGlvM1IrbGZpY1QzbC9pWFhSTGEyL2kyTGJJM3NLOTBzaWQ3SjN0WWx5TDEyRi83UklSejJXYUorN21zY0lqdHFDdXc1WWMxS3d2L3NjN3hTOXpyazJyTnJWL1I5a0h0Q0lKb1hMYjVGby9lOXFlK1JadFN5YmJjZmNUL1VYSzAxVHBlV05KYklkTGR2clVMRGJPN1RlaXdQTlZiY0Z3SmZJSURBemtTQXdCZWZBM3VqUFMzamlQUXordy9OLzVNQVo0OTR2OUI2eDNpb3RNcEU3bnRGbmo3Uk1lYzEyMTVyTGtjZmN6VSttcGI2SWpmRXNFWi9wNHhON2VmU0lXamUzSG5XZnVPSU1SYkJiaVRwMDFPTURhNko1dFJZQXIvTFMzcVpwSE9PdE8vOEVOOHI2WDBWYkk0K3hxWitHTEdtNUEyT041Vyt1NXVqM3lmSjgrV05rbDRpNldONWx5K2kxdlg3emFDelpWanppOTJKcTRjMjhvYk91SDF4bGFuaSt1WkdQajNqOXd5TGk0Y3VsK2xEOGx3d3d4Q3YvM2ZzRXM5K01xUHUzQ3BSM081Y1lXbUtIZEVIZjh1VGg2WDJSbXYxb1g2ek4vMkkzbTlLQmZIbzl6TTZtVm5LTjdkK05BNzcycFNKN0tncHNKdU5UNzM0V1IwcnBlT2J5N3RsdlRVSjdMbnZZdEc4cUNYY2JvOUx0STdtMmo0MDFpM2I5djJpZGF2bC9FdTFYWE9jY3Zwb1o4S3JkV0VKMzlTd3c2M0hzcUhwTkEyQm1BQUNlOHlJR3FkRElQSVVOUWtuRXJRSThtY0pMUGJnczZlNGo4a1BGY2RKdnJta2xFZy9sWHAwNzBqY2o2NWZzdTFUbWUxZUYzM01IZnJqdFZZLzE5Sk9yZWN5T3JiZThxTXd1dmVRdUgvaExwblZLN3FOdjRzbkJzb2Z6clZpSVR2SmtqY1l4dDRMYk10N2cwbnpXRW4yU3Q0dXJDbHJlZEttMitrNWN5dEovbjBaTzJteGFYMWYzdERUZTNQbUszUEVkWXRwTHFuRWprc1EyYS9WbjVZWTI3VGI5TjdKQ20vYko2aU53dUxWWXUwWS9JNXRQMVphSmhxTTd0MVMzQy9sRndsbmgzeEhpZDZmM0ZmSFh0ODhMemw5ajlwTW5RRExhWDlxblNncFlrMWhMR1ZqTkI5cUMrd08vWlhLOStKdm02djMzMEZUMmU3N3VpVUo3S21OeHBJa3N0RzhhREUvV3dxbkxkdjJmTXNSbi9jOUwzMi9XdVBrZGRSaHVleVVFeFdIei8zeGJwMzJLY29XcGZWWXRyQ1pOaUdRVFFDQlBSc1ZGVStBZ0orSCszWEM5NzJDdmthZVRPZnR2US9ITW5aSFlWcm1vSTdpVEVleEVkZHMreHh1MjlkR0gzT0gvSGl0MWNjMXRWUHJ1WXp5RTdUOFNQZGE4SVpPUEhKWWhxRXl0UEVWdllBdWNReUh2Sk5ZVTVZNFV2VnNLaEhYSFFiSHY1OUw4T0xPSldCeDNTZlhmTEpnclBqRDNONzQzbHo0K1NCNTR5RkY5bHh4M1o1clRsQVpiYWpsTXN5dEZ3bVdMVDJDVTE2NURxbG54NHAzNUhha2NiMUlPRHZrTzRvNXZiSjdCcjVxaE1FVThUV0t6MThpT3RZY21raG9Mb2t6UDhldWFEN1VGdGlqVFhQMzViN2RmOXhuVHFmMmZPMlNCUFphdGtUem9wWnd1ejFVMFh2cm1qM1lIeUxwai9ZOEwzMjdQKzhTaTc5ejVuMXpjamx0MzhLYjZyZm9OOWhuM25ydzhwYnpwSVc5dEFtQklnSUk3RVc0cUh3Q0JIeGsrbFZkYk5LTEpmb2FlWEVmVXNoTEpSVDBENmJqVlByalo2eXMyZlphMHhPQnZSYkpldTNVZUM1dFRTclI2R2U2SktqZjArZ0ZPdHI0R3RxMGkxNUE2OUd0MTlMUXh4TnJTajIrUzJ3cDU0U0pFN1hlUmRLalY1TElkTU81UkZ6ZmVIbC8rVUpGOWlqYzFLYlBqK2k5aTcwZTdydEVpVVpieFhhT0JOeXhFRjc3NXJPNVh5U2NIVXBnZDVncmgxcThXUUxNVzdyUUE5ZnBFdXQrb2hCZVNuUjBVM09FdTBKVC9xMTZ5dU0xNTMxNzZuMTNyNHZtUTIyQlBYcEh0bjEvMlllWitIQ3RUalp1Si9WdXVNK3hkRGRUYzcwa2YwRTBMeERZenppcC9JN3lzTVE4TzhRYVUydmE1LzcrYjkvdlBYMk9saFliN2RIM3pacFoxeG96MmxreEFRVDJGUThlcGpjajhLZys1dWpZRFhJODBGTXZhMU04ZUhJN203TDlRMTNJaVN0TDhvOW1xcXpaOWx4T3FYclJ4OE9oUGw1cjlHM05iZFI0THFNWDZGWWhDRkxoQjhiV2crZ0ZkSWxqT2ZaU2ZPcHJ5aExIcW9aTk9SOXREZ2xqRWY0UW5sOXorcGdqcnZzb3Y3M2FQcjl6bzZXSjdEbmhwdXdGYkkrMUYwbmFWMGlZM2ZHSlRydTBDdU1WaGZDS25Dcm16TE1wMTBiQzJhSGVVUng2NEtWQm1Dakg4L2RHVzJtSndqZTBQTjB3Wkt1L241MGsyQ2M5aHNvK1R6MUU4Nkcyd083KzJqdmRlVFJTeGV1SlQvK3NvVVR6cTlXNzRTNmI2UHVqSk45QU5DOFEyTTlJUDNybmprNkFMM1dlKzEzR3YrcytYVFJVL0hzL3BnZTJDaFVUc1VaZ1grcHN3cTRzQWdqc1daaW9kR0lFb21PZk9TODRVVHpQS016TUZPU1JwMmpPeG9EdnUyYmJwM0FyZmNFOTFNZHJqYjZ0dVkwYXo2VkRKTHc4OFRMNWExMzRpcDlwQUNrbE1JK0Zwb2xlUUJ1WU9idkpzWmZpVTE5VFpvTmRZQU01b3EwRjBSdEwrc0FDN1UrWk5FZGMzN1M3RkpIZGZiRkFmTTFFaDcwSjRtZDNOMy9Ddm9mdExMMnRqbmMrVkVxOE4wdHNqenpuOXkzZVJyWkh3dGtoM2xFaUVjZDltdVBWSFAzKzczc1Q1Rno5dThSbFJ3WnJuNmNlb3ZuUVFtQy9ZdWVoL3BwRUtDQmo4YWFxd3o2dElWRjNOTDlLOHdaRXovRFkzNk5OeHFGOFBXTnRSZk1DZ2YyTTVLS1RwcTIrRDZiT2xaenJvaENiWGh2K2UvL1BrQ2JZS2xSTTlIMkR3SjR6dXRSWkxBRUU5c1VPRFlZZGtFRDBVcElqc0YrdVMvTGpINjZ6anZTanhjZEFGT2M1OStWZ3piYlhtRGFSQjhraFBsNXI5R3Z0YmRSNExpL1F4VkorczZSdkhJSFJ3a015K2hELy9kN0Q5N003TmtVdm9Fc2N6N0dYNGxOZlU1WTRWbk5zY2lpSUozUXh1bStkYU1TZXJFN21YUm9LWW81ZE5hNnRJYTV2N0RpMHlPNTNmSXNvRm9mR2l1TzdYbC9TKzJyQXE5QkdLc0dmbTIvaFNUbzN0RjZGYmhjMUVmMFc3dnNkSlJKeE5wMzd5U0NKYlFwQzFHZHZWTnREODIrTFNFNnZITm5UNGgxL3pOcklsaFlDdTc5dG50K0grMGxSL0xrZzdNYjBFYWg3WmZTTzBvTGhVQThpTzNLLzQ5eDJOQzhRMk04NEF0RTM5Tmk3ZXQyWldMZTExS2tpaCs1emJobm5YSGx4SHlKejZPNHRRc1ZFM3pjSTdIWG5BYTN0bVFBQys1NkJjN3RWRUloZVNuSUU5dWpJc1Q5bUhhN0ZId1cxaW4rUVhqRFNtSGVoN1JWbTBTTXFhN1k5Nmx2TzN4SFljeWp0djA2TjV6THlrR3lSTEMyeWUrekl2TDN0ZjNPUG1NM202eEwzKzdpa1R3WDIzR1lreDhPcHJ5bDdITWE5M01yZWZzOU5uQVN4bDUzRHdxeFJYSSs4dmNmQ3dveUJQNlRJSHEwOWY5TWxYL1lIK0ZMRWRUT01UaG41eUxyWG1WcGhiUHdkNUhWMmJMTm9qdGQxcTRjeFA0M1pSUUFBR0ZsSlJFRlVHdGQ5Qyt3NWVSam1lak5IdnlGbXZjK1FKRkZJa1JiaTVkaDhpdVpESzNIWUc2alBDQ2I1UDB1NmhxUS9hZlV3VkdvMzhoeHZkWHBtMS96b3RGL0pCbU0wTDFyTTBaYkNhY3UyUFE2Uk0weHVtTlZLVTNKMk0zWW9la1VYcHVrU0l5MDlxVTg2N3pDVlVYaXYycUZpV28vbGJIZzBBSUU1QkJEWTU5RGoybU1sRUgzZzVSejlqRDdhek81R2tsNVlDYUtUZEQybDl4Z2NhckpFMEYrejdUVndJckRYb0ZpL2pSclBwYTNhOTRkeEtsWnBDMEYvS3Zub1kyeU9SOG1wcnlsVHgyU0oxOW5EKzJXU3ZtdkV1Q1dLdGprY2MwS3BsSXJybS92bWlPeXZrL1FEM1FldlArSnJsT2lkd01LWGswMit0Y2JOS3JiaDAwVnY2STZzT3dUUjNIZVpITE11MG9YUE1mdXhVMDIxQmYwY202STYwVnE5VDRFOVIxei9YTDl4WXM1VFM4NXZpTmNsaDZScW5hRDNQTjM2OXhKSjlqWWVLaTN6TEEzZEw1b1ByUVQyNkxkZ1krc2FObHlqUk1mdXk5VDhBYmx6UGpvVlVDcnlSL01DZ2YzTUk1TUs1K2phKzl6RXk1MDNRL1U4bjMzYXdlRm9oOG9ISlYyMU94SDJydjZQcnY4NFNiY2RxVjg3VkF3Qys1elI1ZHJGRTBCZ1gvd1FZZUFCQ0VRZUJMa3g4RkllNWU2V2svLzhpQ1Mvak04dDBVZmlZL3FYdzF5dnJ6WGJQcGNsQXZ0Y2dtMnVyL1ZjUmg4ZGIrbUZweHJldDlFSDZMNEVnWndSaWJqTUVkaDkvMU5lVTNMNHI2Vk95bXV4OWtmWXZwamtpT3YzbGZSQVNmODYwYWg5aSt4UmpHUnZGanlvb2lmNFJDeG51aXhIU0swcGNrVHpPZmZrWDYzKzU3UVRyZFg3RU5nOVRyZVNaQy9JTHd1TXJqWFhVcUY4YklMWG41dEtlbDRPeEJsMTdFVnNoNWF4MGlMVVhNcmNhRDYwRXRodFUzU2FhV08zNTRrRjZ0YWJIek9HOVFzaHpWSWUrUTZuWlcvOGo4eTVTZUxhYU0wdURWRVN6UXNFOWpNUFJyVEdPSlNLTjhLWFBJL2RxMmpqY3loYzE4VzYrZjFhU2VjZm1hTTFROFVnc0RkYVJHaDJHUVFRMkpjeERsZ3hUdUJza2o0djZYL3ZDVktPRjBOdUREd2ZPWFFTb0xIaldUVzlWMU5lc3ZZZXVsb2ZaeTBYNDVwdHorM2pXRDBFOXBqZ21wL0x5RXVvNWtkNjlNRldVeWlLUnkxZEkvb1lteXV3bi9LYU1uZHNsbko5OVB1NHBBMmpYR2JuN3NQZFhEMXh3Vnh4ZmRQMFBrVjJid1pZMkJ3cVN3eDdzbTJuNDhKYVRCcjdScWtsR0VZYm9EVTNXM1BuWTA2OWFLMXVMYkQ3Ti9SK1hjZ3d4OWVPU2szdjVjaVJ4TGEwRmtHanNBdTJ3ZXVGMzhuM1ZhTDVVT3Q1R2VxUDU4S3pKZDBnbzdOTEY5bHo1bGVybVBLUkI3SHhscjR2UnZQaTJBVDJrdkE1WTlNMW1nTTFUdU5rUENxenFrUUo2RlByZ1QzZWZ6MXg5MXFoWWlLQnZjWll6b0xJeFJDWVF3Q0JmUTQ5cnQwSEFiOGczTC96R1BpcExrYm1lL2R3UXg5N2Y1VWtDNGhqcFNTMFMwcjRkdnZQa2VRZDg2bGVjVzRqMm5XZUtucXMyZlk1VXdXQlBhYTM5dWN5RXI3bnhvczF3ZWdZK2RKRXJ1aGpiSzdBYmlhbnVxYkVUOVE2YWtSSndQeHg5dmgxZE9YZnJMeHNIKzdCTVo2SFNpMXhmZE4ySkxMWENOMFN4WkxOZFJJNDFGQkd3cmZ0OHVtL3A4NDBNUEpFYmgwU1lxcjUwVnJkVW1EL2RrblBTamlPYlBlcGRnSmRmN042N3Q0aEFQZkV2czZjOStxaFd6aTVzMCtEL2xqaS9uNStuV3oxejZZTzdvVHJvdm5RVW1DM3VaZnVuWW5HMXREdEx2bDBnZms1M01uU2l1ZlhJeVRkS1JqZkZxRzFvaGpZVXphT29ubXhOb0g5S2wwaXpsZEw4bWJFVUxsbmtOQTdaNzVGb2RYY2hrTmRXU0N1Y2NvMXg2YVNPbEVDK21pRHdMKzlMK3JYc0tINzFqcWx1SSt4TE9GR1hRaFVKWURBWGhVbmpUVWdzSGxCOEkvR3ZmcVg2MVpIczNLT2lUc3BxVitlL3phenI5L1cveGlmYzZUKzNCK3I2SVYvampmdW1tM1BISjdCYWdqc01iMjFQNWVSTjdVSnpEblc3dC9XdTBsNmNBSmxpNCtiZU9UR2EwUWZZelVFOWxOZFUrYU15NUt1VFlYNThlL3k5MGp5NXRUYXlwaklYbHRjMzNBWkU5bHJpT3UrUi9RcysvaDQ2ekFhYytmQVQvZnZlMlB0ekQydUhubjVPVGF0dzBHOGYyNUhHbHdmalc5dGdkMi9aNWVVOU10OXFLK2NMclhLeFJDRjBkalk5ckR1NU92ZFp6cXZiUGZUNzlydS8xMkR6cGVHWTh4aEdkV0o1a05yZ2QzMlJTRXB0dnZ3N3Q0YmV4Ky9GVDV4WUs5emo5MkhJNUNabXdXMTUzYTBGdG5zS1J1SzBieG84UTRhZVNiUGVZK00rdU1FNVhhZW1SdDJOZHJzOEhpMDJzUnoyOS9TLytOd05LVWwyalIrWkxjeGNPY2dORnpVLzdtL3ZUbnZLTFhHc3BRZjlTRlFoUUFDZXhXTU5OS1F3TzRQNmljbDNWdVNFNUY4dXVKOWZVemNzZmV1SGJTWjgrTzAzVVJMajRnY0VXOU92TGcxMno1bmFpQ3d4L1RXL2x5Nmg5RlJ5UC9ieDFyMGkxNXBpVDQycDNnamxkcFFXai82ZUpuelliU3g1VlRYbE5LeFdHcDliem81OU1oUThlYnpGU1I5WUtuR0IzYnRpdXl0eFBXTkdic2lleTF4M2UwN0x2TFl1cldXalpDdjcwOFQyanQyckV3TlA1TGpUREVVbzNZcFV6dGFxMnNKN09aa3djeWk4bVVLT2wvYmMzMzcxamtlcHB2NkwrdzkyZWV1U2Y0K3NLRG01eXBWUHRxSFkzVC85MW1pK2JBUGdUMXk5aG5pOGVqdS8vU3B0bzgxZ09WUUgvNVd2TFdrdit0L201ellNU3ArUjNINEl6dDBwWXJqN04rc3dzbHFid0E4WDVKL2Y4YktLL3E1OTZuSStKMi9SL05pYlFLN1diMDVrWkM2MUFGdURHZHUyS1BhN3dpK3IwOU5QYUFMamZ2ZkFnZWRJZHVqa3lTNW04WTU0WXJtaG9yWjExZ1dQakpVaDBBZEFnanNkVGpTU2pzQ1l5OElGcitlSytsUmt0NDZ3MHZGTDRWT1dQSllTVjhkZEdQcXkzTVV3c1czZGRzV3NONlVpZElmNS9id2VuZ2l3VlNORC9ZMTI1Nko4a3pWRU5oamNzZndYRVloWEV6QlI4d2R3c2xyVFU2Q1lQK21XcER3WnQxWW1LazV3bjA4TXROclJCOWpOUVIyVzNlS2E4cjBVVm5PbFo3YkRzbHh5eEdUU2tTTTVmVHFqSlpZNUhEc2I3OFB6RWxvbXR1L2pjanUweTZPTys1M21Sb2x0UkZTTS9kTERWdFRiVVRlZUw3MjViMDNiRzdJaVJ5eGRLcHczNXJIcHYxb3JTNFYyUDFzbTR2L2NkdWVpOWZ0bmdOdmNwU1cwdkVvYmQvMUl5RnB1MDMvaGx1dytsVkpkdEFwS1dmdlBXTDluaDE5SDdqZFZ2RzVJNXVqK2JBUGdkMDJUaEhaL1Q3azN4V2Y5bnRuNW52V0dBK2ZUSFFzZUg4YmJXOElsZjQyNWJ3YjJnWi90L24zOEpVVDdQWXo1N3dmRmlvdm1CamdPZDl4MGJ4WW04QitqdjczMmVGRnhvcWZkVytzNUx5dnA1NnJuSEN4dnQ2YmVMZnZISFkrRkQya2liLzdQY0R6MXFkdXZybXZWem8yL203MXFUUjduNCtWa2xNUTBYdjYzTlAzK3h6TEdVUERwUkNZUmdDQmZSbzNydG9mZ2VnRndaYjRCYzNlQkUvdU0yQTdWdnZZVHIvbi9OZDFNVmY5NDJrdlU0dnIzalhPS1hOZW5pTnYyYzM5Y3p3NjdKbmhIK0liQjBiL2dxU0hWbmpSV0xQdE9lTzZXd2VCUGFaMkxNOWxkQlJ5UThJZVJ2YmlTNFdHOGtlWnZiSDhjWmNxTFkrV3hpTTNYaU1hMDFvQ3V5MDR0VFZsenJnczVkcG9YYlNkOWhDY2V6eTd0TC92NjMvTFAxSjY0VWg5aDNQejZiamE4WnZIelBQSDliK1haT0c3VnZHNzBJOG1HdnRIU1ordGRiUE1kaXdVZWJQeVR6UHJ1MXF1SjZHRlUrZnBjYkxGc1hFelo0ZDhjUUszallneFpNb2NRYXVnYTdPcVJtdjFyTVpuWFB3cnZialZLb3pqdG1tNXZ5SGIxMWdJdFpqN3hqNzB6KzR6WUlINC9QMzN3VTI3T09yKzU4c3llY3c1TFpwNWk5RnEwWHpZbDhCdUEzM3F3U2VNemE2MCtObDdnYVRmNnpjYjdkays5QzNuWjludlc5NEE4cmVjbit0ckpUYUVTZ1YyMjMxNVNjNWZOUmJlYzd0djlxcjIrNkdUSW44KzZIUnB1S1VTVVhUMzF0RzhLQlZ4YzhhelpZZ1kzOTlPZGZieVRwVmY3TDk5aDlZaHp4MkhzdnNma2p6Znhrck9DZkhOdFp0TlBJZUhLam1ONFkwVmorL1A5cnJFdGkwbFk1Tmo2NVQxS1ZwajU0YUsyZGRZNXN4YjZrQ2dLZ0VFOXFvNGFhd0JnZWdGSVhYTGorKzhuSjJ2OTdDWVl1WmNVYXpVczhNdnhQNVkzQllObkdET1dlUnpqdXJPdFhlYjBacHRuekxXa1pCVTZoMDJ4WWFsWDNNc3oyWE9pK24yV0x5OTkwNzNpK1dtK0NQUEczVithWS9La2owam96R3RLYkNmMnBvU3pZczEvTjBKN1B5N2RLbUZHVHRGUEZsWUY2cWFjNVkrUE16MXFyWTZ2N0dwbnZNNThZazMxbGxROFh1VFF5cjg3LzcvOUhGM3grMzJ1NU9kSzFKbHFhZUxkbTJPMXVyNW8xWFdndVBVT3hTSEV4RE85UnpOdlhQcGIwaHV1MVBxMmNISERpOXpROUZNdWJldmllYkRQZ1YyMitPTk1TY0x0V2Z2RXNyVTM0Z28xTjl1M3l5MCtnU1VOM0MyM3hGZHorK0pEa0hxalFDZmpNZ3BjNTJrb25sUkl1TG0yT3M2clFWMm42NHg0MGkvOGlheVQ1TDZWTGczL2JkL0Ivdzc0WEIyVWNpZ25GQml1MXorcXYvOWRYNEJoNHJhYkJCWjJQZTdrejNEL2EzZ3VaRGF2Q2tabTJnemFPcHZiNVR3MUgyZkV5cG1uMk9aTzMrcEI0RXFCS0lGcXNwTmFBUUNNd2hFTHdnem1zNisxQjR2M3NtZEcvUGRBcjgvL3B3a3RXVnBJZUt0MmZaUzFnanNNYkZqZWk3OXNmTTRTUTVIMExMVVRveFYyOVpvVEdzSzdMYjlsTmFVMm1OMWlQYnMyV2xQdlFzZDR1YUplMDRWVHhiV2pXcm1STDlmMVc1VTJORFVqM3pmeHFMVWN6SzlTUXZOT2tQMXVZTFduSHVYWEJ1dDFTVnR6YW5yRFFsN2JUcGVkV240bFRuMzNWeHJJZmZYT20vMDI5Wm9iR0liaHhiWGJYWTBIL1l0c051bW5EQ1dFNUVYWHpiMU44SWFpWjBubmw1d2txSFl1SkVMYWlUcGplWkZpWWliMjYvV0FydEZYNThzOE1tRnFhVmtQdXpyUFhXM0w3bGpreU9DendtYkU1M3luUk1xWnQ5ak9YVytjQjBFaWdrZ3NCY2o0NEk5RTRoZUVGcWJzMGswVXV1NHVMMnhmUHd4bGJoclRwOWUxNzhRem9rSE4zYi9OZHRld2pRU0tQQmdqei9vU25oUHFWdjd1ZlNMM2pQNzJMTlQ3SW11c1RlVFl5dzZ4dWhTUzdUVzFoYll6ZUZVMXBTbGpubUpYUWpzSmJRT1Z6ZjYvVHFVWlhNRWR0dnNCSk5lbysyNTNLTFVUbGpYd3NaTm05RmEzZkxlbTdidHVlamY0VU41YlcvczhIejQ1VDVFeHo3NnZYMFB4enorTVVtNThmOWIyUmZOaDBNSTdKdStmcnVrWjNYUDdpVmFkVDZqM1JKQmRhaTU2L2ZPVVdONWRUSk15SzdpVGF1N1NISzQwQ2pjVE5Sb05DOXlSZHpvUHR0L2J5MncrMTUrRjNYWXh0endUYnYybDg2SFE0anNPV09UazVEWFh2UU9vVFExaEY1T3d0TTVvV0wyUFpZbGM1bTZFSmhNQUlGOU1qb3UzQk1CeDhwOFVmZUNkc2s5M1c5em0zZjNYakYrTWExZC9HTnRyL2hyVm03WUh6eU8venpYMHo1bDFwcHR6OFVkQ1JRSTdGK01ZWHRzejZVOTJmMVI0NlB1Tll0UGxOZzd2c1dtVjAwN280K3hGZ0s3N1QrRk5hWG1PQjJxTFFUMlE1RXZ1Mi8wKzFYV1dyM2Fjd1YyVzJLaHdHS2R3eFhWS25hZXVGMFhsLzBwZXd4dk10ZjJhSzJlMi83WTlRNjc0RGpyVHlxTU5kektuazI3L3BhMUNQcTB6R1NrYyszeG5QR3BWdWM2bUN1Q3pyWEYxMGZ6NFpBQ3UrM3pTUU4vbTNnVEt6Zm5WUTB1bXpaZTA0ZndTY1hjanU3M1RiMG51OE5OdFNyKzduUW9LNGNYcVZHaWVaRWo0cGJhc1ErQnZUUzA0MjRmU2dWMlgrL3ZnNGYwdVQ1S21aVFc5M2ZJUFROT0JlVjRsenNYZ2pjQzU1UW80YW5ibmhxVzloQmpPWWNGMTBJZ2l3QUNleFltS2gyWWdGL0lidFluVDBvbHA2cGhwbjk0ZlV6NGR4b25PYlBYalJPYlBMQ0NSNVkvZW03VGU4YnZJLzdsbW0zUG1TT1JRSUhBL2tXS3gvaGNibzRFUDZIQ2g3cmpQUDU4bjFSdkNSL2gwZHlQUHNaYUNleTI2OWpYbElqOUd2Nk93TDZHVVpLaTM2OUQ5YUtHd0c3YnZTSDMySXdrN3puOTlJay9KNE45YjA3bEJkV0oxdXFhcGpxSnNEYzFMS283ek5rKzNqR24ydi9WdlZmOW5TcThWdy9ac0FtSlk2RzRKSm5oMVA3a1hoZk5oME1MN0p0K1dLVDBacGJGd3lnZlFtN2Z4K3A1ckY3YTVXSzRlNTlZdWNhOGRkZ2JoNHg1WkdYNy9hN294SndXVm1zbUNJN214Vm9GOXMwN283L1Y3ejlob2t3UjJIMGJmeDljdlErTDFlSkVocjN5UFY4ZHh6MHFGK2h6amFUc2NGZzFKeGF2Y1FJL1NuZzZKMytKMy8vM1BaWVJYLzRPZ1ZrRUVOaG40ZVBpQXhBNGJ4OXF3YnY4VjYzMEVtMnZCbjlBT0pia1grelpJK1U4dlFqbnJPaWxuaDMyZHJoZkg1dTA1a3RaN3JDdTJmWlVIeU9CQW9IOXpQU083Ym1jOHlHNDhmSnpYUGREeEtYTmZYNTM2MFVmWXkwRjlvMHR4N3FtVEIyVEpWMkh3TDZrMFJpM0pmcjlPbFF2YWduc0c2SGpQM2J2VEErZUdOYkx3dHQ5SkwxMTRZTHgyRmhGYTNYcEdQdlVvOE9jL0VNWGZ1Ri9kSWtLLzFqU1c3cVRWKytTOU5uU3hoWlEzNy9mVGpwNlYwbVhxV0NQazVzN0pyWUZzSlluUktlYUdzMkhwUWpzbS81WnFMNXNmd3JBemxPNVNUOGpQaFlTN2EzcjA3ejJXbTgxZHkwSU9rSGpQZnBrbVpGZFkzKzNrUHFnL2h1dXhieUs1c1dhQmZiTjc4QVV3ZHVKVCsxcFAzV1R6UFBYaVVydElPZGtxWE9LNTRDOXZ6MW5jKzF4MkJibm5yRG9QVlkrMmowRFYrc1RyYzZ4YjNOdFRxejNPWG1tcG01ZXpCM0xHbXhvQXdKbklvREF6cVJZTXdIUDMzTjMzdWIrMFBLUHJIZHkvZEoycnY2ZjNiNXRQaUwrdXYrSWVIWC9JV0ZCcklaM3d4eVdmbUh6eTVDOUkzd00ya2V5ZGw4Nm5mSGNINFF2NlpPODJMUG8wSGE3ejJ1MmZjNlljZTB3Z1dONkx2MGkvUzJTYmk3cE92MS85L3F5WGJ4Ky9FOUpMKy9ENW5oOVdZUEgrcExuTDJ2S2trY0gyeUN3SEFMKzhMKzJwUC9TcmNGWDZwUHdic2ZtdGVqbUdMRVdHVi9jdlYrOVZ0SW5sbU0rbGpRbWNKWk9kSFVjY0llUStRNUovNmsvQlRFVXkvL2prdnlQRTVkNms4RWlyWC9iV3dtMWpidStpdWI5dm1odmRuLy8rRHZPamxQZmtCZ2plOHI2VytoVC9TYVFZMHo3dThpYklITkN3RXlGNWZsMWxYNE5zdTFPQXU3TjZOM2k5MFJ2WUwycTl6eCtJK3ZRVk9TRFd0YkYrOThBNStxd2Q3Zkh3TDhEWHY4ZG50SHY1WDVILzkzS0ozRTI0Mys5L3R2ZGMzZm9kTVpHZi9BRzVqczZnZDc2ZzljWnoyUEtsd2g0UFRqVVdESU9FS2hHQUlHOUdrb2FnZ0FFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFnVk1pZ01CK1NxTk5YeUVBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRS0FhQVFUMmFpaHBDQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCRTZKQUFMN0tZMDJmWVVBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBSUZxQkJEWXE2R2tJUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFRGdsQWdqc3B6VGE5QlVDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVNxRVVCZ3I0YVNoaUFBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRT0NVQ0NDd245Sm8wMWNJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENvUmdDQnZScEtHb0lBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBSUZUSW9EQWZrcWpUVjhoQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUNnR2dFRTltb29hUWdDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVJPaVFBQyt5bU5ObjJGQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCYWdRUTJLdWhwQ0VJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaEE0SlFJSTdLYzAydlFWQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFcWhGQVlLK0drb1lnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRURnbEFnZ3NKL1NhTk5YQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRcUVZQWdiMGFTaHFDQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCVXlLQXdINUtvMDFmSVFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBb0JvQkJQWnFLR2tJQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFVG9rQUF2c3BqVFo5aFFBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ1dvRUVOaXJvYVFoQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRT0NVQ0NPeW5OTnIwRlFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQktvUlFHQ3ZocEtHSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBNEpRSUlMQ2YwbWpUVndoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUtoR0FJRzlHa29hZ2dBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ1ZNaWdNQitTcU5OWHlFQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUtBYUFRVDJhaWhwQ0FJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkU2SkFBTDdLWTAyZllVQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUlGcUJCRFlxNkdrSVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRURnbEFnanNwelRhOUJVQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFTcUVVQmdyNGFTaGlBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUU9DVUNDQ3duOUpvMDFjSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDb1JnQ0J2UnBLR29JQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUlGVElvREFma3FqVFY4aEFBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VDZ0dnRUU5bW9vYVFnQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFST2ljRC9EM3l6WDRqcVVBUFFBQUFBQUVsRlRrU3VRbUNDIi8+PC9zd2l0Y2g+PC9nPjwvZz48L2c+PGcgZGF0YS1jZWxsLWlkPSJiMSI+PGc+PHJlY3QgeD0iMTMiIHk9IjUwOCIgd2lkdGg9IjQwMCIgaGVpZ2h0PSIxMDAiIGZpbGw9IiNlOGY0ZWYiIHN0cm9rZT0iIzMzNTU2ZiIgc3Ryb2tlLXdpZHRoPSIyIiBwb2ludGVyLWV2ZW50cz0iYWxsIiBzdHlsZT0iZmlsbDogbGlnaHQtZGFyayhyZ2IoMjMyLCAyNDQsIDIzOSksIHJnYigyMSwgMzIsIDI3KSk7IHN0cm9rZTogbGlnaHQtZGFyayhyZ2IoNTEsIDg1LCAxMTEpLCByZ2IoMTQ0LCAxNzMsIDE5NSkpOyIvPjwvZz48Zz48Zz48c3dpdGNoPjxmb3JlaWduT2JqZWN0IHN0eWxlPSJvdmVyZmxvdzogdmlzaWJsZTsgdGV4dC1hbGlnbjogbGVmdDsiIHBvaW50ZXItZXZlbnRzPSJub25lIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiByZXF1aXJlZEZlYXR1cmVzPSJodHRwOi8vd3d3LnczLm9yZy9UUi9TVkcxMS9mZWF0dXJlI0V4dGVuc2liaWxpdHkiPjxkaXYgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiIHN0eWxlPSJkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogdW5zYWZlIGNlbnRlcjsganVzdGlmeS1jb250ZW50OiB1bnNhZmUgY2VudGVyOyB3aWR0aDogMzc0cHg7IGhlaWdodDogMXB4OyBwYWRkaW5nLXRvcDogNTU4cHg7IG1hcmdpbi1sZWZ0OiAyNnB4OyI+PGRpdiBzdHlsZT0iYm94LXNpemluZzogYm9yZGVyLWJveDsgZm9udC1zaXplOiAwOyB0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiAjMDAwMDAwOyAiPjxkaXYgc3R5bGU9ImRpc3BsYXk6IGlubGluZS1ibG9jazsgZm9udC1zaXplOiAyMHB4OyBmb250LWZhbWlseTogJnF1b3Q7TWljcm9zb2Z0IFlhSGVpJnF1b3Q7OyBjb2xvcjogbGlnaHQtZGFyaygjMDAwMDAwLCAjZmZmZmZmKTsgbGluZS1oZWlnaHQ6IDEuMjsgcG9pbnRlci1ldmVudHM6IGFsbDsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd29yZC13cmFwOiBub3JtYWw7ICI+QnJva2VyIEIwMTxiciAvPuWUr+S4gOWuv+S4uyDCtyDmnKzln58gREIgLyDpmJ/liJc8L2Rpdj48L2Rpdj48L2Rpdj48L2ZvcmVpZ25PYmplY3Q+PGltYWdlIHg9IjI2IiB5PSI1MzQuNSIgd2lkdGg9IjM3NCIgaGVpZ2h0PSI1MyIgeGxpbms6aHJlZj0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUJkZ0FBQURVQ0FZQUFBQ1B0VUhVQUFBQUFYTlNSMElBcnM0YzZRQUFJQUJKUkVGVWVGN3R2UWY0TlZWNTduMGZOSDZpc1JNbHgwWlVZajNSNzRzSW9sSnMySTRHdThGMnhGNHcyS0pDQWpIV0lCSnJzT1VZc2NWR1lrTVVsWWdGRVJKVFJCT0pCc0hlRllUWThzMHRhOGZOdkRPejFzeXNhWHYvMW5WNWtiei9OYXY4MXRxelo5L3JtZnY1SDZKQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDRFFtc0QvYUgwRkYwQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQ0FFZGpZQkJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFLQURBUVQyRHRDNEJBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQ0F3TTRlZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoMElJREEzZ0VhbDBBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUVOalpBeENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCRGdRUTJEdEE0eElJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFJN2V3QUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWcwSUVBQW5zSGFGd0NBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFRUJnWnc5QUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJEb1FRR0R2QUkxTElBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSUk3T3dCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0VBSEFnanNIYUJ4Q1FRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQWdaMDlBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaERvUUFDQnZRTTBMb0VBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJSUxDekJ5QUFBUWhBQUFJUWdBQUU1a0RncnlROXVHWWdYNWEwbDZTdnpXR2dqQUVDRUlBQUJDQUFBUWhBQUFJUWdNQ0tBQUk3ZXdFQ0VJQUFCQ0FBQVFoQVlBNEVFTmpuc0FxTUFRSVFnQUFFSUFBQkNFQUFBaEJvUlFDQnZSVXVLa01BQWhDQUFBUWdBQUVJREVRQWdYMGdzRFM3a1FSK1RkSnZTcnFwcE10TDJsUFNwU1dkVmJ3SjhrVkpmdXZqVEVubkxXajJsNUQwR0VtSFN2TDhQaUhwWUVubkwyZ09EQlVDRUlBQUJDQUFnUzBrZ01DK2hZdk9sQ0VBQVFoQUFBSXpJN0JiRUZSMnpqQXVXNGo4czZTZlNmcHNzQlJaa3NDVUFjRmltMEJnWCt6U1RUcndiYnAvWEZiU2daS2VLT25taWRTL0t1bi9GbUw4S3d1eCtwekVhNmFvNWtPQ2w1WnNvdjVPMHQwV2RrZ3dCVHY2aEFBRUlBQUJDRUJnWWdJSTdCTXZBTjFEQUFJUWdBQUVJS0RmbGZSUlNaY1ppSVdqSDk4VHhKdlRKUDEwb0g1b3RoOEJCUForL0xiMTZtMjRmMWg4L29QaTRQRHdFTm5kZGEzZkp1bEprczd0MnNCQTErMHI2YldTcmx0cUg0RjlJT0EwQ3dFSVFBQUNFSUJBWGdJSTdIbDUwaG9FSUFBQkNFQUFBdTBKREMyUXJZL29oMEdrZW8ya0M5b1BsU3NHSklEQVBpRGNEVzU2ays4Zi9xMTJlMGx2a3JSTHBqWDBBZVBEQ3pIN09Fbi9sYW5OcnMzNDRPQTVraDVmMHdBQ2UxZXlYQWNCQ0VBQUFoQ0F3S2dFRU5oSHhVMW5FSUFBQkNBQUFRaFVFQmhUSUZ0MS8yMUp2eS9wcEJtSVRHeUtpd2dnc0xNVHVoRFkxUHVIL2NpZkxPa0ZYYUFrWEhPMHBHZE05RWFQNTNaZlNjY0cvL2k2NFNLd0p5d2tWU0FBQVFoQUFBSVFtSjRBQXZ2MGE4QUlJQUFCQ0VBQUF0dE9ZQXFCYk1YOGo0S0FoVzNNOUxzUWdYMzZOVmppQ0RieC91RUVuNGNWaDM5SERMd2dGcmdQR1ZGazkyL1AvU1c5cXNJT3BtcXFDT3dEYndDYWh3QUVJQUFCQ0VBZ0R3RUU5andjYVFVQ0VJQUFCQ0FBZ2U0RXBoVElQT3BYUzNyY2lDSlRkMUtiZlNVQysyYXY3MUN6MjdUN2gzK2ZQYlZsNUxvUENMOHU2ZEtTZnFNbDZEK1VkTlRBYi9KNFRyZVI5R0pKTjJzeFBnVDJGckNvQ2dFSVFBQUNFSURBZEFRUTJLZGpUODhRZ0FBRUlBQUJDRnhFWUdxQnpHTVlRMlJpdlpzSklMQ3pRN29RMkxUN3g5MGxIUzlwcHdpTXp4Ui9QN0lRcmo4azZieTF1clpmMlMwY0d0cmIzTkh3VGVYSFJaTHAyMHI2VkJmNGtXdmM5MTBsUFUvU0RUcTBqOERlQVJxWFFBQUNFSUFBQkNBd1BnRUU5dkdaMHlNRUlBQUJDRUFBQWhjbkVCUElUcEgwa2tSbzE1RzBkMGdNZU5uRWExenRKK0VhOTBXWmhnQUMrelRjbDk3ckp0MC9yaTNwZzVKMmIxZ1VDK0tQa1BUWGtuNGVXYnhyRkdMNzZ5VGRMbEl2dDVCOVRVa1BrdlFISFNMcTE0ZWFlMXhMMyt1TUh3SVFnQUFFSUFDQm1SSkFZSi9wd2pBc0NFQUFBaENBd0JZUmlBbGtyNWYwa0E0OExQSTh2YkJPZUhSQ05LaWJQMUhTZ1VVMCt3VWQrdUtTL2dRUTJQc3ozTVlXTnVYKzRkOWx4MGg2WXNNaW5pUEpFZTZPWGs4dFY1RDBHa24zamx4Z1Fmd05xWTFXMUx0YU1hN2ZrM1NvcE92M2FHZjlVZ1QyVENCcEJnSVFnQUFFSUFDQllRa2dzQS9MbDlZaEFBRUlRQUFDRUlnVEdFb2dXL1ZzdTRTM1NicDVaQ2lPWXQ5UDBpZmpRNmJHQUFRUTJBZUF1Z1ZOYnNyOUl6YVA3eGYzcGdNa25kWmhUYThpNlFSSmV6UmMrK25DSnViT2tyN1RvWDFmMHZUNXJXdnlzOEhlWnMrYUNnanNIUmVEeXlBQUFRaEFBQUlRR0pjQUF2dTR2T2tOQWhDQUFBUWdBSUVkQ2NTRXBhNFI3T3M5WFZuUzJ5WHRIMW1BNXhiSlRnOWprU1loZ01BK0NmYkZkN29KOTQ5TFNqcFcwc0VOcTlFM1Q0U1RqSjRrNlZJTmZUeWc4RXAvUzhjZDBWWmc5NkduM3k1eTFQNkRFZGc3VXVjeUNFQUFBaENBQUFSbVFRQ0JmUmJMd0NBZ0FBRUlRQUFDVzAxZ0RJSE1nQjBsK1dGSmwybWc3WVNCOTVCMC9sYXZ5RFNUUjJDZmh2dlNlOTJFKzhkTkNwOTA1Mys0WXMxaTlJMHVkN01wSXY0N0pOMWYwczg2YklwVWdmMkhraDRwNmEyUy9pc1MrVTRFZTRlRjRCSUlRQUFDRUlBQUJNWW5nTUErUG5ONmhBQUVJQUFCQ0VEZzRnVEdFc2dzTUIwWEJLUzZOZml5cEwwa2ZZMUZHcDBBQXZ2b3lEZWl3MDI0Znh4WmlNMUhOS3hHbjhqeTlXWnZXZGhnbmR3UXhmN2RJc3I5MXBJKzEyRm54QVQybjBwNnNhUS9sV1NSZlZXYXJrTmc3N0FRWEFJQkNFQUFBaENBd1BnRUVOakhaMDZQRUlBQUJDQUFBUWhNSTdDNzE0TWlpZnkrRWdUMmMxbWswUWtnc0krT2ZDTTZIRXRnSCtyKzRTU2tUckJjNTBQKytaQWI0aHNaVm10blNjY0hML2U2NW16Yjhzb09mVFY5Zm0xLzg2eWFnMHNFOWc2d3VRUUNFSUFBQkNBQWdYa1JRR0NmMTNvd0dnaEFBQUlRZ01BMkVoaFRJSE4wNWtlQ1hVSVY2eDhYTmpMN1NEcGpHeGRpNGpranNFKzhBQXZ0ZnVuM2o5ZzlLWGRlaU5naFkxZWJtUExuOXdKSkx5MHN1ZjRza2pnVmdYMmhIenlHRFFFSVFBQUNFSURBcndnZ3NMTWJJQUFCQ0VBQUFoQ1ltc0NZQWxtc0x5eGlwdHNOQ096VHNWOXl6N0hQZEk0a3lTcytzYjY2M0QrY3ZQVDVOUXRnTDNRblp2NVl4Z1c2WVdqUGlaK3J5cG5GSWVTK2tyN2Rzcy9WNS9mVXdvTEdod0x2THhKRzJ4WW1WaERZWTRUNE93UWdBQUVJUUFBQ3N5ZUF3RDc3SldLQUVJQUFCQ0FBZ1kwbkVCT3R4aFRJdmlocGIwazU3QmlXc0hDL0pzbEMyMDZsd1g1UDBvVWpUMkRUQlhZL2Q1djFwZGE0L2tTU2ZhK2Q3SkhTamNDUzd4K1hsdVNJOGJ2VVRMMnIyTjFFOHRjbHZTZUk2RlgxSEhsdWdkMkpWZHVVNjBteXRWYmIrd1lDZXh2SzFJVUFCQ0FBQVFoQVlKWUVFTmhudVN3TUNnSVFnQUFFSUxCVkJNWVV5RzVmQ09nZmtGVDNEUFFoU2ZlUWRIN0xGYWdTVDllYmFCSlNMeEg4bHg4WmhLMXJCY0g3RjVJY0VldEVmL1l2dHZqZnAxak1zeDNGL3c2QzNuVXFoUFgxOXQyLyszeWZwSGVIcU5lMjRsbWI4WTRoc0p2QmxSSUc5U05KNXlYVWE2cml2dllMU1hYdkxPbXFEWlY5b09GOSticVFoREkzNTlpOG13NVVyaUxwZ1pLY2FQTzMxL2o1bW4rVDlDcEpQZ1J6dFBVVVpjbjNqMnRJY3NUMzFXdkFkYlZyaWEzRFN3cmJsaWMwVlBKNnZ6SFdTS2EvSTdCbkFra3pFSUFBQkNBQUFRaE1Sd0NCZlRyMjlBd0JDRUFBQWhDQXdFVUV4aFRJSGlYSkNmZnFTbGUvNDFoVXFFWHl1NVZFV3orSDJmN0JBdVYxSTV2aDdrSGticnRuM01jdEpQMXhJZVRkS1NLb3g5cTI0UDZHWVAvd3I3SEtIZjQrdE1CK2JVbnZsWFRqeU5oOHlISXZTVC9vTUFkZjhwdUYySHk0SkNlTExMOFprTktrT1h1UFByc21LV1JLRytVNlBsUjVWOE9GVmZ2cjhwS2VVMWlGUEQ3U1lkWGU3akxHcnRjcytmNFI4MTkvc3FRWGRRWFRjRjNNaDczcmZiRExVQkhZdTFEakdnaEFBQUlRZ0FBRVprVUFnWDFXeThGZ0lBQUJDRUFBQWx0SllDeUI3SktGa0gxY2lDaXVBdDNINzdpdHdHNXJsdWRKc29DV1Vyb0k3RGNLRWRGN3BIVFFzczd4aGJYSkljRVNvdVdsdGRXSEZOaXZFS3c0YmhjWjdPbVNEdXc0cjUyTHRvOHNEbEdlMGxGWUx3L04vdFdIU2ZyelJDL3JwcW0xRmRodkZnVDVheVlzN3JZSTdFUGNQMklIZnJhT09TRmhEZHBXOFQzQjYrWTlXMVdHaXB5djZndUJ2ZTNxVVI4Q0VJQUFCQ0FBZ2RrUlFHQ2YzWkl3SUFoQUFBSVFnTURXRVJoTFlMZEg4RWREaEhFVjVFOUpPcUJqNUhJYmdkM2krc3NsUGFMRlNyY1IyQzhieFBzbUM0Z1dYZGRXdFFEODhIQm9rY05EZkNpQlBaWDNGeVRkUWRMWkhlQTRjZVE3SmQyZ3c3V3hTMndkWTNzV2U3VjNMVzBFZHIveGNHSWg3Rjh4c2JOdEVkaUh1SDgwV2JYWXB1ZzJ4WUhQUHlhdVE1dHF0b2Y2ZVBHbXhLNDFGem1wcXNWOWoySG9nc0ErTkdIYWh3QUVJQUFCQ0VCZ2NBSUk3SU1qcGdNSVFBQUNFSUFBQkNJRXhoRFlIWDM2MG1EYlVUVWNDOFQzRGlKcGx3VnJJN0E3YXYyRkxUdEpGZGgzS3l4UTNsWWtNYng1eS9iN1ZEOWEwak15UkZrUEliQ252aWxnY2QyQzRsa2RRTmpYMzh4VEJla09YYWhQWkwzN1N4WFk3UW4rd1pZSEJkc2dzQTl4LzRnbE9IWCtoYjB5MmdTdDc3dGRRZ1M3MzNLcEtrUDJYZTRQZ2IzTEhZRnJJQUFCQ0VBQUFoQ1lGUUVFOWxrdEI0T0JBQVFnQUFFSWJDV0JNUVIyZTJxL3RjRzY0ejJTN2l2cGdvNHJrQ3F3MndmOFpFa1d1TnFVRklHOWphMUhtNzVUNnI1YTB1TjZpdXk1QlhZLzV6NjFzTUY0UVdRQzM1YmtKS1FXc2R1V2V4Wmk5RnNLcjNJTCtVT1hQdDd3S1FLN1B3UEhTSHBpeTRsc2c4QSt4UDNEeVhiOWRrTGRZZGlRWEdQM3F5R2o1OHZiQzRHOTVRZU82aENBQUFRZ0FBRUl6SThBQXZ2ODFvUVJRUUFDRUlBQUJMYU53SkFDdTU5MUhpTHB0UTNpZWg5cmtOVmF4UVFyaTJYMjluNUZnd2Q4MDdySEJIWUw5NDQ4M2oxeDh6aEo2ZXNsZmFLd0h5a25MUFZjOWc1UnorNDNWVHorUTBsSFNlcHFGNU5iWUkrSm9rYjEvV0FMZEZvaXQvVnFxVllxdHRKNVhmamYzMHU2TURUaXZma2JoY2YybnBJZUc1TFF4b2J4NHNMQzZOQU9qRk1FZGg4MCtQRG5VckZCbFA0K3BCQ2NNcFNsM2orY0RQZFVTZGVxbWVUUVB1aE5uN2NmUzlxbnVBZWNrYklBUGVzZ3NQY0V5T1VRZ0FBRUlBQUJDRXhQQUlGOStqVmdCQkNBQUFRZ0FJRnRKekNVUUdZQnkvWWw5cSt1SzMwRTF2VTJVd1IySnpWOVY0V0ErWm5pMzU1YkNGb2ZsdlNkMEtoRmJkdTkyQlBjd3ZYakpiMjdaaEtwQ1R4OXVZWGVaeFdIRGw5SzNIUWVoeVA3ZlRCdytjZzF2d2gxTFF4MktUa0Y5aFRiRnEvOWZTU2QxR0d3cVFjYUx3dUpTbitZMEVkS1Vsb3p2bE00VEVsbzhyK3J4QVIySDBhWXhmMUxqZnB3NE5naWI4RXJKZjNiMmhzS3RzTng1UFdESmYxUFNiOVhKSGM5cjgyQU10WmQ2djNqcHBKT0tlNVJsNnRoNFFNd0h3NE9WWm8rYis0emRxaVhhMXdJN0xsSTBnNEVJQUFCQ0VBQUFwTVJRR0NmREQwZFF3QUNFSUFBQkNBUUNPUVV5Q3gwMzdwSVZQbC9ncWY2VGcyVUhiRnJFZW1UR1ZZaUpyQmJTSFB5ekFldTllVW9VWXYvRnM2Ym9yNTNsbVFQNktxRWd6RnY2RlYzNTBoNlVQQmQ3akpkaSt2MnNMZWcybFErSHc0Rnp1M1FTUzZCUFNXeTNNS3h4V1FuSm0xYmZPand4aUJJMTEyYnVyYmw2NzNXNW54d3c2QzZSSXpIQlBZL0t2YVhjd09zKzhpYmpSUHh4cEtyMnVyRWUvTm5iVUZtcXIvVSswZHMzRDUwT3l3VG82cG1mSEQzL0liMkVkZ0hoRS9URUlBQUJDQUFBUWhzRmdFRTlzMWFUMllEQVFoQUFBSVFXQ0tCbU5Ca01mVHJDUlBidFlXZGlTUEo3Um5lUlFpdUdrcE1ZUDltR0p2RlNCY0wzaGF3SEwzZXB6akMvZjBOOWpkdSs3T1M3aG9FL2o1OVdWaTI0SGRFcEpHdU5pWTVCUGFVeVBLK2tmWStKRG11Z1lFajQ4M2I5anRkU3V5TkJCL0dPQ0dyMXoyMXhBVDJmeW9PRzM1bnJiRmNpV3RUeDllbjNsTHZIL2I5ZjEvRHhKK2VrRCtnRHpjRTlqNzB1QllDRUlBQUJDQUFBUWlzRVVCZ1p6dEFBQUlRZ0FBRUlEQTFnWmhBbG5OOGpyQzJjT1dFamovUDJIQk1ZRi92YWl4Ykd2ZVp3MTkrZmV3VzJWOGVJcHZyOFBuTmdQMkNzTjhHY1YrQi9jcVMzbDVFNmUvZjBLbkZkVWVIdTY4dVh2RlhEVlkrTjY3cG82OTR2MnJXN1RjbHczVmlWYitSa0JvMUhoUFkxNmVUSTJGdG0zWHZXM2VwOTQvWW1rd3RzQS9kLzJyZHNZanArd25nZWdoQUFBSVFnQUFFSmllQXdENzVFakFBQ0VBQUFoQ0F3TllUR0VNZysxVGhFZjJVWUFlVFUxaGZMVjRiZ2Ixdk10QlZuL2NNZ25MZDg5eFBKTm1MM1BZME9VdEtsUGlmRkIwZTJiTFRQZ0o3TE9wN05aUys3TzJGYnd1WHV0STFlci9jbnRmVVh2bUgxM1RrTnpwdVZWajJmREdSY1V6TVhUV1QrMEFtY1hpOXFpMzEvaEZiazBjSDcvdGVjQm91OXYyaktWOENBdnRRNUdrWEFoQ0FBQVFnQUlHTkk0REF2bkZMeW9RZ0FBRUlRQUFDaXlNd2hrQzJnbUtybHVNbC9WOUpwMmVNWWs4VjJEOHR5ZFlRcTJTbVhSZnIwa0VjczFYSTBHSnZWZnN4bXhTenZhT2s3N1dZWUZlQlBTV3Ezc1BvSzY1YnhEOVIwcDQxY3pwTDBtMkQvVStMYWRkV2pYMHV2QWIyZ2s4cE1URjMxWWFqNHQrUTB1Q002c1E0NVJ4cXp2dEhiRTJHOWtDUDlZL0FublBuMEJZRUlBQUJDRUFBQWh0TkFJRjlvNWVYeVVFQUFoQ0FBQVFXUVdCTWdXd2R5TGNrSFNycHJZVzN1SDNlKzVSVWdmMHhrbzd0MDFHNDlpWWhNbjA5S2VWNnMxOHJyRXoyS1pLcVd2UWRvbHd0V0pqY29LWngyNjlZWUQrcFJlZGRCSFkveXo0MXdhczZoNmU0M3diNGdLUzY1K2ZjZ3FUOSt0M2Z6V3NZdnJiSUlmRHdSTDR4TWRYTjJLdmZCd1FXa1pkVWxuci9tTm9EUGJZbmN1L251ajJGUmN5U1BtMk1GUUlRZ0FBRUlBQ0JTZ0lJN0d3TUNFQUFBaENBQUFTbUpqQ1ZRTGFhdHhPTkhpVHB6QjRnVWdUMnIwaTZqYVF2OWVobmRlbWpJa0s5ZmRLZjBORm5QSFY0ejVIMHpJYkt6dzFKVVZQYmF5dXdwNHJydVR6Rlh4S1lWczNudThWaHdxMGxmUzUxc29uMVhoTTg0NnVxZnl3a08vMVJRbHN4TWRWTmRMSDFTZWg2OENwTHZYOGdzRiswTlJEWUIvK0kwQUVFSUFBQkNFQUFBa01UUUdBZm1qRHRRd0FDRUlBQUJDQVFJekMxUU9ieE9ZTGRJcnVUWkhaSmZwa2lzTDlPMHNNNnRyL084SktTbk9UeVhqVmd1MFNQeDlhbzZ1OFdsRDhpeWVPcEt1OExZN3d3c2ZHMkFydm43N2NQZG1wbzMxSGVQbWk0SUhFTWRkVmkwZVQyc3I1L2k2U2pxY05wRW1HL0xHa3ZTWDViSVZaaUF2dVB3eHNQWjhRYW11SGZsM3IvUUdDL2FETWhzTS93UThXUUlBQUJDRUFBQWhCb1J3Q0J2UjB2YWtNQUFoQ0FBQVFna0o5QVRDQjdmUkgxL1pDRWJtMlhzbk9SaFBJcXdTZmJkaGYyS0srelVTazMrWXNpaXYyK2tjUi9kY05JRWRoekpTM2NSZExmRmVMeWpXb0djM1pJZ09tSStTR0xiV0krSWVrNk5aMDRBZWZla3I2Uk9JZzJBdnN0Z2g5NjA5cStQNGplUDBqc3Y2bmFEWXVFc1k0WXYzSk5wU2RMZWxHR2ZzcE5OQW5qYlVUeG1NRHV0emYybGZUdEFlWXdkSk5Mdlg4OFNaS3RpK3JLMUI3c1ErM3A4bndSMklmK2hOQStCQ0FBQVFoQUFBS0RFMEJnSHh3eEhVQUFBaENBQUFRZ0VDR1FTeUNyNnNiUE90Y09DUzR0Y01mSzl5VWRVQWp6cDhVcWx2NGVFOWgvVm9qaSt3ZVJ0bVhUTzFTL2FmQmZ2MXhOUTIwang3dU81N0tTL3JZWXkrMXFHckIxaVMxeC9qR3hnMVNCM1o3a0owanlRVU5kK1ZDSW5zOGhycnNQSjZZMTE2b3k1QnNEVGNKNG16MFZFOWlIaXNCUFhQcGUxWlo2LzRpdFNhNER1VHE0VTBmUXI4YUZ3TjVyKzNNeEJDQUFBUWhBQUFKeklJREFQb2RWWUF3UWdBQUVJQUNCN1NZd3BFQzJUblkzU1c4cUlwOXZHY0g5NlNDb2ZxZkZzc1FFOXErSHFISkhkZmN0VFdLdjIyN3JmZDVuUEUzaVdCc0IyR05JRWRndlZYRDhvS1RkR3dadDI1cDdTN0l2ZXE0U2l6WjJ3dHhVSzV3MlkvSytzajFOWFVtTmNvNkp1V1B1bVRielQ2bTcxUHRIYkUyR1RqS0t3SjZ5dTZnREFRaEFBQUlRZ0FBRUVnZ2dzQ2RBb2dvRUlBQUJDRUFBQW9NU0dFc2c4eVFjZFgyc3BBZEdadlNZU0JMUjh1VXhnYjJ0WFVyVDhPNFpzYkVaT3ZKMWZXdzVSYnFZd080M0MxN1dFREh2Y1gxVzBsMGwyU1luWjRrbGRNM1pWNXUyY2duc1k5bUJ0SmxiYXQybDNqL21MTEFQK1ZaR2VWMkpZRS9kNmRTREFBUWdBQUVJUUdDMkJCRFlaN3MwREF3Q0VJQUFCQ0N3TlFUR0ZNZ005UXFTM2gzc1Mrb2dmeXBZeGFSYWpNUUVkbnVtMzAzU2VSbFdOYWVvM1hjNE9jZlNKTFRaYjl5aXViM1E2OG9YSk4xaEFISGQvVFdOclMvRFB0Zm5FdGhUMitrejFxR3VYZXI5STVZaytLWEZXeGlIREFWTjBtc2tIVnpUZmh0Ly83NURSR0R2UzVEcklRQUJDRUFBQWhDWW5BQUMrK1JMd0FBZ0FBRUlRQUFDVzA5Z2JJSE13QzNFT2dubVRqWDAyMFp3YnF2QUhvdkNiUk1aM1VmRS9zOFEyZjd4Z1Q1TmZjWTIwSkIrMld5cU1CNWJwOVIyaHB4TDE3YVhlditZWXR6cmpKdjJ0Qk1rN3lYcDNLNkwwdUk2QlBZV3NLZ0tBUWhBQUFJUWdNQThDU0N3ejNOZEdCVUVJQUFCQ0VCZ213aE1JVFRGQkhIemIrTkxIV3R2VXlQWVk4SnRHeC9wdmlKMjdzU21xV0xrbEovVlZHRTh0azZwN1V3NTE3cStsM3IvdUlha1V5VmR2V1ppM3MvM2tIVCtBTkJqOTZzekplMHI2ZHNEOUYxdUVvRjlCTWgwQVFFSVFBQUNFSURBc0FRUTJJZmxTK3NRZ0FBRUlBQUJDTVFKVENHUWVWVFBsR1J2N2JyeVBrbjNTa3hlR1JPc05sVmdqL25CdHhGdW00UzJyMHI2VzBuMnhtOHFRNG5zZmNYLytLZWdXNDFVdmdqczNmZzJYZFgzL3JHTEpOOFhibFRUeWVtUzdpanBlL21IcmxqZlE0cjc1ZWtnc0Erd3dEUUpBUWhBQUFJUWdNQzRCQkRZeCtWTmJ4Q0FBQVFnQUFFSTdFaGdLb0U5SmpxMkViaTJWV0FmeTRQOXk1TDJrWFNZcEVkRVBrUnZrT1JFcnpramY1dEV3SjlKT2x6U3YwL3c0ZjVrd2NOMkhyRVMyK3VwUW4yc255bit2dFQ3aHhNdSs5RG9kalhRaHJScHVVNWhrMlU3cFYxcituNXRZUS96OEpFV0U0RjlKTkIwQXdFSVFBQUNFSURBY0FRUTJJZGpTOHNRZ0FBRUlBQUJDS1FSbUVvZzJ5TkVrTzVjTTB5THV2WWgvbHJDTk1ZVTJKOGs2ZWlHTVZsY2ZtWENtSE5VYVJMWTIvcllOd2x0cTdWdzhzVjNOSWlTcXptOVd0TGpDa0grcHprbU9hT0VrRjJuZzhEZWxWejlkVG51SDAySlJpOElOaTJmemo5MHhSS3NqbmtQUVdBZllJRnBFZ0lRZ0FBRUlBQ0JjUWtnc0kvTG05NGdBQUVJUUFBQ0VOaVJ3RlFDZTZ6ZnVRcnNNYkcwalhkODMvM1lKSTVaREhmVStSbUpuYVFJN0Q3c3VFS2l5SDZzcEVNeWlleXhTUDI3U0RvaGNaNVRWSXZ0R1NMWTI2OUtqdnRIN0xEc2daTGUySDVvMFNzZVZVU3YrL05SVmZ4R3h2NlNQaFp0SlU4RkJQWThIR2tGQWhDQUFBUWdBSUVKQ1NDd1R3aWZyaUVBQVFoQUFBSVErQ1dCbUZEMWVra1BHWUJWamdqVTFiREdqR0NQamRzUjN2Y3ZiRXNzbEExWlloWVhYNVMwZCtHYi9vM0VRYVFLN0c3dTJwSStXSWlQdTBmYS9wUGdzOTgza3YwZ1NiYWVxU3RqUnZ3bTRyeFlOUVQyTHRTYXI0bDlEbE1PNkc1ZmZFWStJS251TjlsTHd5RlI3dEUzUmM0UGFVMVROUThFOXR5clMzc1FnQUFFSUFBQkNJeE9BSUY5ZE9SMENBRUlRQUFDRUlCQWljQlVBbnRNZER3eldEUjhPMkhGeGhUWXJ5SHBWRWxYcnhuWDJZWDRmS3RFYis2RXFkVldpWTJqVFpKWWQ5SkdZSGY5VzBnNlVkSVZJNU53OVBsUmtteFowN1hFTERXR0VrSzdqcmQ4WFd5dkU4SGVublNNYWNyOUkvWVphcE1ISW5VR1Z3cWkvczFyTG1qN3VVM3R0NjRlQW50Zmdsd1BBUWhBQUFJUWdNRGtCQkRZSjE4Q0JnQUJDRUFBQWhEWWVnSlRDZXpQa2ZUTUJ2b2ZrblNQeEdTWll3cnNzY2p4dHQ3blhUZGdMUHEyclZWTlc0SGQ0M2FFL0hzVFJQYW5TSHBSRDVFOWxoUnlDQ0cwNjdwVVhSY1RneEhZMjlQT2NmKzRkTEE3c3NWUVZXbHJzNVF5aTlqOTlnbVNYcGJTVUtZNkNPeVpRTklNQkNBQUFRaEFBQUxURVVCZ240NDlQVU1BQWhDQUFBUWdjQkdCbU9BemhFV01mYndkL2J4bnd5SzBpVW9lVTJEM2tHUGkzc3NsV1NqckU3WGR0RC85REdrK1RpUmFWYnFJL0YwRWR2ZDlMMGx2bGJSVHc0Qi9JZW4zUTcwdVRHS0hHaitSdEora1Q4NzBRNDNBbm5kaGN0NC9ZdjcrVDVmMGdvekRQN0s0THh4UjA5NFFnbjVzNkFqc01VTDhIUUlRZ0FBRUlBQ0IyUk5BWUovOUVqRkFDRUFBQWhDQXdNWVRtRUpndjFOaE1XSXJoS1pub1RZSkJzY1cyRzlaQ0xvblM3cFV6ZTZ3clkwRjM4OE90SHQrUzlJcERUWTFLZllZNWFGMUZkaTloazlORUNFdHN0ODNSQXgzd1JJNzFIaXhwRU1IUE5Ub011YlZOUWpzZmVqdGVHM08rMGZzL3ZlcDR1RG1nR0p2L1NEREZHSUhBejUwUEZEU0JSbjZTbTBDZ1QyVkZQVWdBQUVJUUFBQ0VKZ3RBUVQyMlM0TkE0TUFCQ0FBQVFoc0RZR1l3SlE3Z3QwaTA3c2wzYWFCc0JQOStlOWZTbHlGc1FYMm1GRG1ZUjhib3RpSFNIWWFpN3AxY2xGSHlyWXBYUVYyOTNFSlNVOHJEaHhzUzlOVUhLRnJrZDIyTW0xTDdGRGphNUwya1hSVzI0WkhxSS9Bbmc5eTd2dkh6cEtPRHlKNjFTajl4c1c5SmIwend4U2MvUGpORGUwOFFOSmJNdlRUcGdrRTlqYTBxQXNCQ0VBQUFoQ0F3Q3dKSUxEUGNsa1lGQVFnQUFFSVFHQ3JDSXdwc1ArYUpOdW5QQ0pDdUszRnl0Z0N1NGYvYUVsLzBUQ1B2aEhiZFUzZk9FVFA3MUpUb1d2MGZCK0IzVU5KWGR2dkJ6SHp0SmFmc3BSRGpkZEplcVNrbjdac2UranFDT3g1Q0tmdXNiYjNqNWp3L1dsSmR5NE96TDdUWXhwWEtTeXhUaWdPbC9hb2FlUHo0YTJYYi9Ub284dWxDT3hkcUhFTkJDQUFBUWhBQUFLeklvREFQcXZsWURBUWdBQUVJQUNCclNRd2xzQisrU0JJMjR1N3FYVHhJWjVDWUw5cUVUSDlZVWtXdk90S1Z6RzVyajJMek84bzdHRnUxOURuc3lYOWNRZXJsTDRDdTRlVU1qN1g2OG9sZHFqaHRoM2RmMVNIK2FkOCtQZVZkSjZrTTFJcXI5VkJZRzhKcktMNmtQZVBxNFZEcXhzMEROTUptWi9mY1YrbDJDamw5bnBQSlk3QW5rcUtlaENBQUFRZ0FBRUl6SllBQXZ0c2w0YUJRUUFDRUlBQUJMYUd3TkFDdSsxRDdpYnBhRW5YVGFEYXhVdDdDb0hkVTdGUC9IR1JPWjBURW9FNkNyWlBzWGo5bW1CWFVkZXVIdTdEQUFBZ0FFbEVRVlNPbzJEdklPbmNEaDNsRU5qZDdhNGhtV21UQlpEcmZUSHNpOCsxR0d2S29ZYmZIRGhZa3VmVEphRnExWEFzN3RvRC92R1M3aDRzamxvTVd3anNiV2hkdk80WTl3LzNHRHU4NmZOR1Npd1JzSE0xM0ZiU043dGo2bndsQW50bmRGd0lBUWhBQUFJUWdNQmNDQ0N3ejJVbEdBY0VJQUFCQ0VCZ2V3a01JYkJiOEw2UkpFZXJQMFRTRlJQeGRoV2FwaExZYlZueHhpS1o2WDBpODdObGlRVThpMWsvVDJTeFhzMHMzYy9OR3E3dEl3QzYyVndDdTl1NnRxUVBGbVBlUFRMWEw0UURnYk5iTUxsZjhMR09QVWUvSXZqQ245K2k3WEpWKzNQYkYvc1lTUmJaWFJEWUwwNXBFKzRmbmxITXdzVjEvRGsrU05MYkV3OXZ2RWQ5dUdMZjljdlU3TU8rbjlzZTIvdVhseUt3OXlYSTlSQ0FBQVFnQUFFSVRFNGc5c05nOGdFeUFBaEFBQUlRZ0FBRU5wNUFUQ0N6cVBUMVJBb1d1cStVV0xkY3pkN2g5amsrdmNQMVV3bnNIbXFxbU95NmpqQi9Sa2p5bWVJVGZrMUp0cWF3T0I4clhhMWhWdTNtRk5qZDVpMGtuWmh3dU9KRGxidEtTaFhaVTMyNFBZWWZGdjk3VWtnY21TcTArL25jQndPUERYN3VGdG5YQ3dMN3hYbHN3djFqTlNPLy9mRitTVHRGUG14T2l2cmtTQkptQy9aT05PeTNIcHJLcXlVOWJzSzhBUWpzc1RzcmY0Y0FCQ0FBQVFoQVlQWUVFTmhudjBRTUVBSVFnQUFFSUxEeEJHSUMyUmdBK29qckh0K1VBcnY3VHhXVFZ5d2R0ZnAzaFpmNktZVjl6RCtYQU5zS3huWVJ0NWRrUzVTVWtrT2t5eTJ3ZTl3V3p0L2FFTDI3bXBzNTNMZkZRVTZiUTQxVkh6NjRlWnNrVzlMOFUzRnc4WlB3aDB0SitoMUpONVMwdDZTN2hJU3RkZHdSMkM5T1poUHVINnNacFhpbHI4LytNeUU2M1haSHErTFByUGV5L2ZwajVVUEJQdW9Ic1lvRC9oMkJmVUM0TkEwQkNFQUFBaENBd0RnRUVOakg0VXd2RUlBQUJDQUFBUWpVRTVoYUlITlU5ejJEOE5sMW5hWVcyRDF1aTdQdlRZalk3anJIdXV0c1YvRndTWDFGdWlFRWRvODU1ais5bWxkYnNkR0MrSHNrWFNjMzBFaDdDT3dYQjdRSjk0LzFHVjIyeUNOd2JNaXZNT1RXNm1LUE5NUjRFTmlIb0VxYkVJQUFCQ0FBQVFpTVNnQ0JmVlRjZEFZQkNFQUFBaENBUUFXQktRV3lseFhXQ0ljRks0OCtpek1IZ2QzanQwZjZ1eVRaMm1XTVltOXc4N3NnUTJkRENleHRvb0p0ejNIL0ZvY0ZVNGpzQ096ekVkaHozVC9LSHgrL1JmSVdTWGZLOExtcWFxSkxndCtCaG9JSCsxQmdhUmNDRUlBQUJDQUFnZkVJSUxDUHg1cWVJQUFCQ0VBQUFoQ29KakNGd0g2cXBJTUxLNFV6TXkzS1hBUjJUK2ZLSVFJMmx2aTB6OVR0TGU1a2k0NlkvNjgrRGExZE81VEE3aTdzbS82ODRGc2RHKzVySlQyaHhhSEJycEplR1pLUHh0cnU4M2Q3NWg5ZUpNTjhhWXV4cmZwem9rc2Z2TlNWTHFKOW43bmt2SFlUN2g5VlBCekpiZ0gvb1RsaFNmS2JHZzlzWVllVXVmc2RtaU9DZldqQ3RBOEJDRUFBQWhDQXdPQUVFTmdIUjB3SEVJQUFCQ0FBQVFoRUNJd2xrRm1nZktPa280SWRUQzVoMk5PYms4RHU4ZmdaYjM5Skx5OGlZVytRY1FmYXU5MXRXdWkxeUo2ekRDbXdlNXh0a3BPMjlaUy9SUEM5Zm5IQjV6ZHlRcEZrNXJZTWNSTFpyM1ZzRzRHOUk3aTF5NGE4ZjlTTnpwOWorNm0vU3RMbGUwN0JiNWs4VGRKZlNQcDV6N1p5WG83QW5wTW1iVUVBQWhDQUFBUWdNQWtCQlBaSnNOTXBCQ0FBQVFoQUFBSnJCSVlRMk0rWDlBMUpUaXpwWko0ZmtmUnZBd3BMY3hQWVYzZ3QvTzRaYkZ4c043RlR4NTMzVlVrV2p4M2QvWjJPYmNRdUcxcGdkLysyM25oSGtkejFkckhCU0RwYTBqTUtkaFpXVTR0RmZIdStIMWtrbjd4KzZrVTE5YngzemZ4NFNkN1BmUW9DZXp0Nlk5OC9ZcU56Tkx2ekhOaU9xZTBCenJlS0E4QVhoa09hM0lkaXNYR24vQjJCUFlVU2RTQUFBUWhBQUFJUW1EVUJCUFpaTHcrRGd3QUVJQUFCQ0VBQUF0a0lXUHk5cVNTTHJiY0trZTIvV1NHNmYwL1NOOFBCeEVtU1Bob09LN0lOWkVzYXNwaS9UM0hJYzdmaWdHZGZTVmN0QlBNclZjemR2UDAvQytwblNEcTVTTHI3VDVJdTNCSk9URE9kZ0EvTWZqdmtDVGdnL04vbFBXVkIzZnZuQTVMZVBmREJZdnJJcVFrQkNFQUFBaENBQUFRMm1BQUMrd1l2TGxPREFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFDQjRRZ2dzQS9IbHBZaEFBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VCZ2d3a2dzRy93NGpJMUNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUUdJNEFBdnR3YkdrWkFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRU5wZ0FBdnNHTHk1VGd3QUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdlRUlJTEFQeDVhV0lRQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQVlJTUpJTEJ2OE9JeU5RaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VCaU9BQUw3Y0d4cEdRSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJEYVlBQUw3Qmk4dVU0TUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FJSGhDQ0N3RDhlV2xpRUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFHQ0RDU0N3Yi9EaU1qVUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQVlqZ0FDKzNCc2FSa0NFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUTJtQUFDK3dZdkxsT0RBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQ0I0UWdnc0EvSGxwWWhBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQmdnd2tnc0cvdzRqSTFDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFHSTRBQXZ0d2JHa1pBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVOcGdBQXZzR0x5NVRnd0FFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFnZUVJSUxBUHg1YVdJUUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFZSU1KSUxCdjhPSXlOUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFQmlPQUFMN2NHeHBHUUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCRGFZQUFMN0JpOHVVNE1BQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBSUhoQ0NDd0Q4ZVdsaUVBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRR0NEQ1NDd2IvRGlNalVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaEFZamdBQyszQnNhUmtDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVEybUFBQyt3WXZMbE9EQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCNFFnZ3NBL0hscFloQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUJnZ3drZ3NHL3c0akkxQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRR0k0QUF2dHdiR2taQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFTnBnQUF2c0dMeTVUZ3dBRU9oUDRIVW4vVTlMSmtpNXMyY28xSlAyR3BIOW9lUjNWSVdBQzNqOS9MdW1Ea2w0SmtsWUVmbFBTSDBoNm02VFRXMTFKWlFoY1JPQ3FrdDRoNmRvbElHZEx1cGVrYnk0VTFNN0Y5OWwra2k1Ykd2ODVrajQxb3puZFdkS0JGZU01WHRJSk14b25RNEVBQkNBQUFRaEFBQUlRZ01ERkNDQ3dzeUVnQUFFSVhKekFKU1VkSituKzRaOVBLc1QyVjBsNm42VHpHMkJkUXRMOUpMMWEwZzhrN1NQcExPQkNJSkhBNVNYOWthUW5TdnExUWlqK3ZxUURKSjJXZVAwMlY3dUtwQ01rUFU3U1RwSStGTVJRZnc0cEVHaER3SWMwcDBxNlZ1bWlMMHZhUzlMWDJqUTJvN3AxODNxOXBJZk1hSngvS09uNUZlTjV1cVFYVlB5N0R5Ui92dUIxbVJGNmhnSUJDQVFDbDViMEJFbTdWeER4Z2VScklUVTZBZjgydTdXa1hTcDYvbXp4Kyt0em80K0lEaUVBQVFoVUVFQmdaMXRBQUFJUXVEaUJtMGc2cFlnaXZtSUZtS01sUGFYaTMyOGs2WFdTOWxqN0d5SWZPeXVGZ0E5bTdpdnBXRWtXMmRjTGU2aVpZUGxRWXIyMmhicWpDdUg5djFJV2dUb1FDQVFRMktmZENuVUMrNk1yM3VpNWVZaHF2NVNrZzRydjMvZnllWjkyOGVnZEFodEM0TmNsdlVmU3ZoWHptZHVoNUlZZ2owNmphVTNxRG1DampWSUJBaENBUUc0Q0NPeTVpZEllQkNDd2RBSkhobWpZOGp4K0l1bjJRWHhmLzV1alhGNVNNK2xuaG1nOFJMNmw3NHJoeG44WFNlOE9rZGRWdmJDSHF0bjcrZVdZRVBGZlZZTTNBSWJiczV2Y01nTDd0S3RiSjdEZlBkd25WNk96aFk5dHROWWpURjhoNldtUk44Mm1uUjI5UXdBQ1N5Q0F3RDYvVlVKZ245K2FNQ0lJUUtDQ0FBSTcyd0lDRUlEQXJ3aGNMZml1MzZBQ3lvbkJHL2FDMHQrcWZ1aXZxdnlpc0J1NFV4QUM0QXlCS2dMK0huNldwTU5yOE5RZDdFRHpJcjk2aTJ4Vm4xZno4ZC91V2J4MWNoNndJSkJJQUlFOUVkUkExVklFOXFidjNNOEVxN1ovRzJoOE5Bc0JDUFFqY0xNaWw4VmoreldSZExVUDNIdy82RkxtS0xEdlZ0aFBIbHBZWlRtZnhoSktiaXNkQlBZbHJEcGpoQUFFaE1ET0pvQUFCQ0R3S3dMMlhYOXpEWkFIRkVMZVcycis1dWc2SjJHei8zTzVmRjdTSFNTZEMyZ0kxQkM0UW9qT3ZFM04zMjFaOUwrRHR6OFFMMDdBZVEvOG1hMTdubmxNc04rQkd3UlNDQ0N3cDFBYXJrNkt3RzZoeVltTWJSRlRWWDRzeWQvWGZqT0l0OGVHV3l0YWhrQVhBbjZXZVZlWEMxdGVVMzdycGMzbGN4VFlmMWZTUnlWZHBzMUVKcXliMjBvSGdYM0N4YVJyQ0VBZ25RQUNlem9yYWtJQUFwdE53RkVoRnNtZFdMSmNuRURudGtYVXpUZHJFTVRzS3B6NDFBa1lmN3JaQ0psZER3SjdGb2x4UDl6dzR3bXJtR3E0L3R5K1ZkTGRhdGc3S1NVSmgzdHN6QzI3RklGOTJnVlBFZGc5d3NzV3llNWVKdW1oRGNOMTBtZ25ScDNyOTI2dVNONmZGUWV3WjZ3ZHdQcFEzODhxM3drSllLZGQwWXYzbm12T2J0Vko1TDhvNlQrTE41WCtTZEkzSkYwNHA4bk9aQ3oram5UeTlPdFVqTWR2V1RyUzIvekdLa3NYMkErVDlOeXhZSzMxZzhCZTc0dVBCL3NFRzVJdUlRQ0JhZ0lJN093TUNFQUFBaGNSY1BUd1NjV0RzeE9tbFl0OTF2MWp2cWxjSlNSY1cwOTB1cXJ2SHpGT1pQa09ZRU9naGtETUt1YmJoWDNSZnBKODJFTzVPSUdtejY1ck9nSHhJMmNzdExHZTh5R0F3RDd0V3FRSzdCNmxFMFEvT1lqb2RhTitwNlJIU1BydXROT3E3SDBNb2ZHcndmYnViOElCcmtYM0tjdlFjL2JCZ2dNbFhsNDhjNTA1d3dPR0tkamZNdXlCcW1kYkg4YjR1Y0tIRTJPVm9mZkFhaDVEUmJCUEplWWlzQ093ai9VWnBSOElRS0FIQVFUMkh2QzRGQUlRMkJnQ2w1UjBuQ1JieEpUTFY0TDQvcVdFMlRZSmZWOElWakZuSjdSRGxlMGtjTlVnZ3R5NE5IMi9UdTNrZmYrNm5WaWlzNDY5UWVJRHJnTkhlaTA5T2xncXpKb0FBdnUweTlOR1lQZEkvZG0zWUdlYnFEcnJCSHNCVzJ5cmV3TnRxaG1QSlRTdXo4K0N1OFZuUCsrY004SEV4NXp6bDR1RXQwOE5nUTAvbjJDdWMralNuNCtYaGpjb3E4YnpKOFUvSGpueVFNZmFBd2pzSXk5c3FUc3NZcWJsVCs4UWdNQkVCQkRZSndKUHR4Q0F3QTRFL01yM2F5WHRuWW5OdzBKRWVrcHpONUZrbitzclZsUnU4d01rSnZRUlNadXlHdHRkNTRGQi9EQUZSNWZaV3VnamVBbEhOOFgxZ2orcEJkS3E4bWxKZHc2MkNkSEdxTEMxQkJEWXAxMzZ0Z0w3YXJSK2M4eHZpRjJ6Tkh3ZnJ0a2V3Nkx5M1B6WXh4SWE2MWIwVkVsL0lPbTBFZGxNTVdkL2p6cFh4NWcyS05OK2luN1YrMitGWjl1clZ3em8reUY0NUY5R0h1eFlld0NCZmVTRkxYV0h3RDR0ZjNxSEFBUW1Jb0RBUGhGNHVvVUFCSFlnMEpUQXBndXUxSWZySmxHOGl5MUhYUlN5NTRCVlRKZVZIT2NhSDY3NDFkOHJqOU5kYlM4K2FMcDNFSUpQbVBnVmQ5c3FQTDhRWWZ4RGZBbWxUcHhialoyRXAwdFl4V25IaU1BK0xmK3VBcnRIN1VNMlc2R3N2d0hrOW80YVVVQnVRMjhzb1RFMkpoOCsyZ1p2REtGOXFqbmJoLy9oNGZCNmJnY3RzZlhwOC9kSE5TVDVmb3VrQjBteWgvK1lwVzRQL0YzSXBYSmVpOEU0K3Y2SWl2cE9kT3pjSzg1TjBLVnNXa0pOLzg3NXk1cWNGZStUZEsrQjh4ZlVQViszZWNiY3REWHBzaSs1QmdJUVdBQUJCUFlGTEJKRGhNQ1dFSmhLWUcrSzhISFVtMzk0dHYxQlpuSGZQcUE3VmF5ZGY4UTZrZXBTUk1zdDJYNnFFOWEyWmY1VjgvUXI5bnRKY3FMUUpaU213NjEvRDVHcy9qSFo5dk84aExrenhqd0VFTmp6Y096YVNoK0IzWDM2Z1BUdGt2YVhOUGZrNGxPSnpYVnI0MmVXeDByNmV0ZkZTN2h1NmpuUCtjQWxBVityS2s1dTZqWDE4MmE1K0R2d0xzWDMrL3RidFppbmNpNkJ2ZWszUXhleGZuMTJteWJtK2cyR2owdTZkc1VTanVFcG4rTjdkZFBXSk0rbmlWWWdBSUhaRVVCZ245MlNNQ0FJYkMyQnFRVDJ1Z2lZUHEvUC9wcWtWMVZFaXpoUjZtR1NmcmkxcXp6ZmlTT3c3N2cyU3hQWVBZTjFpeDMvLzk4S3d2cGJKMzRiWUw0N241R3RFOGdoQk15UmFOMjhjci9HMzNmdWRRSjdHeEhvQ2lGYStUV1NmdEIzUUFOZVA3WFlYRFUxUDVzY0pPbTlBeDFFVGozbmJYcUxzQ201NmVtUzdsaDhOMzV2d1AxZDEzUXVnYjBwNmFjRFkveTgzYlZzbXBoN0owa09MaWpyUG4wai9WUDU1dmhlM2JRMVNXVkhQUWhBWUdFRUVOZ1h0bUFNRndJYlRHQUtnZDErclI4T3I1YVgwZG9QL3RFOVhwLzFhK29uRncvNXUwanlLOWdQbFhUbUJxL2YwcWVHd0w0WkFydkZ0Uk1sM2JENDdCNHV5U0xiQlV2Zm5JeC9OQUk1aElEUkJ0dWlvMjBTMkZ0Z21iUnFUR3grVTRoQVRobWs3M3NXSEcweHRxZWs2MGp5UVgvWGNrd0lCc2g5Nzh3NTUvOGw2VmJCQ3FUTlhQMUdsdTFEenVvS1p3SFh6VEc1NlFwYkxvRzk3akN1VDNETWFveWJKT1kyN1lXeERscHlmSzl1MHBvczRCYkNFQ0VBZ2E0RUVOaTdrdU02Q0VBZ040RzZoeWRISFBrSGtmOWJWWHpkbFNyK2tPTEIvbmhKTDYyNE5sZFV4eU1sL1VnUzBiTzVkMHYrOWhEWWQyVGFKb0xkZ3ZhNjkzSCtGVXB2OGJjbGZXTUcwYXYyL1hYeVpQdU1VcG9KMk43SFNTcXJYbUVmazkwbHBWL2FSVlVWZncrTjdWZGNIc2Zad1MvM215Mmg5QkhZLzByU2cxdjJOK2ZxYzRuYWo0bk5iYUwyNjU2TmJQSGxuQjVPOGxtVnhMMXBuV3kxWTkveW5HOEJEREZuLzViMTk4K3pKUjJZdVBHNjJ2OGxOajk1dFRrbU4xMUJ5U0d3TjluZitJRGQrNkRQNGRBbWlibFhDOEUrTjZqWWxjOE5CMmxEYjFnRTlxRUowejRFSURBYkFnanNzMWtLQmdLQnJTZFE5MEFiODFLc2UxaVBDZXhORDUxT2J2cWU0c0hUQXRsY3lxY2tPYXFlTWd3QkJQWWR1YllSMkdNSlJvZFp0WG0zbXV1Z2J0Nnp6RE02UG45cEhOdDhKdGRiUkdEL0ZZMXRFZGpYMS84U3hVSC9qU1E5TlNTMlROdHQwa2VDUUovcmtIQUlnWDE5TG51RWd6cS9uZGhVdmlMcE5wSytsQXBpWWZYcWdrYzhqYW1TbTY0UTVoRFlieElPcjZzT2pmem02U3Q3cnRjbUNleDE5akQyNGJkTjBFazlXYVZjanNDZVFvazZFSURBUmhCQVlOK0laV1FTRU5nSUFtTUw3RTAvUU9ZSWRDNml3QnpaNUJoVDNRK0EyQUZQanI2bmJpUEhqeDhFOWgxWEVZRTlmV2Nqc0tleFFtQlA0OVJVYXk3ZnBVT0x6WFVNcmlIcFR5dHl4TlRWLzFCNGF5SkhKUHNZYzc1ZThKdmVQYkpWbksvampmMjMwK3hhV05tazJTcW9YS1pNYnBwVFlLOTdmbmVDWHRzR2ZiSG5xbXlLd041a0QyUEx5bjBsT2FCbzZKTGpHWE5UMW1SbzFyUVBBUWhNVEFDQmZlSUZvSHNJUU9DL0NZd3BzRGRGcjg5MVNlWWlDc3lWVDk5eEliQkwxeXBCYkNQbUliRHZ1QU1SMk5NL2xRanNhYXphZkNiWFd5U0MvVmMwNXZKZE9vYlkzTFNySE8zOVprblhUZGg2cnk0U1JqOHV3MXQ5WTgzWmxqaWVXOVB2WEw4UmFBdWNUU3QxRWN1ZXA5K0VQQ0N6N1U5YmZuMGoySnZzWVhKRjUyK0ttSHQxU1IrdnNWNnpQZVloYlJldlkzMEU5bzdndUF3Q0VGZ2VBUVQyNWEwWkk0YkFwaElZVTJCZm9oZzRGMUZnVS9kZlY0SGQzNk5Pc1BhVEJZUEo4ZU5uaVorcG9aY01nVDJkTUFKN0dpc0U5alJPVGJYbThsMDZsdGpjeE1KSlVWK1dHTTN1ZS94Umtod0YzYldNTmVlbUtPN1YyRGZ4N1RUbmtEaE8wdjFyRnVnSlliMjdybCtPNi9vSzdFN20rMUZKbDZrWXpBT0NCVTdmY1RZSjdFdDY4OEg3d0FkTjVlSmNJdnRMK2xoZlVJblg1M2pHM0pSRGowUmtWSU1BQkpaS0FJRjlxU3ZIdUNHd2VRVEdFdGp0emZsaFNYNk5lRWxsTHFMQWtwaTFHV3RYZ2YwNjRjZWVFeUFlRzd6N25XQnpTU1hIang4RTloMVhISUU5L1ZPQXdKN0dhZ3FCM1ZZVE1VL3J0TkhIYXptcStta1YxZDRrNmZqNDVVazF6Z21SdkVtVkI2dzBsdGdjbTRMOTJjM2NDUStiaWcrUmJ4KzhyMk50MXYxOXpEay9wemo0Zm1iRFFDMHUzaVVrb3U4Nm43bGQxK1JOUGhmZitiNENlOTJ6aGhOQTJ4N0c4K3hiTGhkc2htNWQwVkFzdjFQZnZuTmQ3OE1XUi9UZnE2TEIwNFAvK3ZkeWRSWnBKOGN6SmdMN1NJdEZOeENBUUQ4Q0NPejkrSEUxQkNDUWo4QVlBcnZ2ZWMrU2RIakRzTStROVBjZHB1VW81cnNWMFVHN2xLNTF0TmZmRnE5WGY2dERtK3VYa09TMEo4Q09Qd0JpVVc1VlhxRC9IcEpzK1JYMFhNbmhocHg5amg4L2Q1WjA0SkNEYkdpNzdyUG5TNlpNV0h5QnBHT0s2TkQvbUlnTDNhWVI4UDZ4Ri9OOTBxcnI2Wkpla0ZoM0x0WDZXTVNNT1llNjZOUXg3UXpHbXUrWVluTnNUbjQyY2dMVTJMNytkSEU0NFh2OWQySU4xdng5ekRrZlZBUlN2S0ZobkYwUHF6cE9mWlRMaml6ZU1EaWlwcWVYRit2bUNQWStieURrbUVRZmdiMUpaTTA1djZZRDM2VUk3RTJITFg5U0xLVDN5bGdseHpNbUF2dFlxMFUvRUlCQUx3SUk3TDN3Y1RFRUlKQ1J3QmdDKzQwbG5Wd2hncTlQbzZ0NFVqZCtvbGd6YnBJQm0rb1N3ZDcwR3ZvY3ZFNVRjZVg0OFpQYTF4RDFtbjU0eFE1SWhoZ1BiUzZMd0Iwa3ZiODRmTjBwY2RoK1cyVWZTV2NsMXA5RHRhVUw3SnY0QnRlWVluUEtIdlJCazBYS1IwUXFQeWE4clpYU1pybk9tSE9POWJWcDN3MU51WVg4OXNGK2hmLzZKN3NzV3VacitnanN0d3pQOEpjcWpjbUhCbmVVZEZLbXNUWUo3STRJZjJlbWZvWnNwdTZ3WllyZkpEbWVNUkhZaDl3dHRBMEJDR1FqZ01DZURTVU5RUUFDUFFrTUxiRDdmdWRvMGlkR3hvbkEzbk1oRjNwNUY0RzlLWm5ZSEx4T0Y3b1VyWWVOd040YUdSY0VBajRrZTdlazI3UWs4dUlpVWVDaE00Z0c5YkJ0Mi9HWGtmSGJMc0QzdUhMNXFhU3ZSNjU5V0ViaEtvYTVMb0lkZ1QxR0xzL2ZyeUxwQkVtMjZxa3JQbGk2clNSYjdiUXRNZEc3Ni9OWDFUaGlmWDFJMGoyS3lQM3oyMDVpcHZYci9MWTkzQlBERzJaK3EycnEwa2RncnhPTmN3YzBOQW5zT2Zmb1VHdlJkTmp5L2ZCV2JlNjhRYmJ3OHIyanFpQ3dEN1hTdEFzQkNNeU9BQUw3N0phRUFVRmdhd2tNTGJEYlI5YmU2MVdKa2RhaGQzMTRKb0o5MlZ2WFByUVdGL3pmOWVJZkliWjVLYjlXdlhQd0JENmdZdHFmRDlGaS95bjkwazdpeWd0RjAvU0RhVTVUUW1DZjAyb3NheXlQbHZRWEhZWThSUlJnM1RCalFtS0g2VjNza2pFdEVSRFlmNFcrNjdOSTMvVk9lYU9qNndGeWJLL21uUE9qSXBIMnRuQjdlRjlZTTdtKzZYbkVROHlWL0RQSGRMc0s3RmVTOUlFaXo4M05Ld2FSYzkrNCtTYUJmUW1IZlUySExUbldzS3FOcGpWQVlCK0tPdTFDQUFLekk0REFQcnNsWVVBUTJGb0NRd3JzL3ZIeDF1Q1JIZ1BjOVVFZGdUMUdkclArWHZlcXNtZTU4cmRjZXVMR3JwK0ZzVmNhZ1gxczRwdlJueE5kZjdRbXNqdGxodStSZEY5SlUwZUZ4a1RMbExrMDFVRmc3MHV3K3ZyWXVrMTEvMDNKU2RBMVluak1PYjhrZUk3WHJkNERRKzZGWVZaMzNGYWJua2RXQi81elNiN2VWV0N2ZTJQUUVkbCtBK2xmTWlLL2hxUlRKVjI5b3MyNXYva1FPMnpKaU9saVRTR3dEMFdXZGlFQWdVVVJRR0JmMUhJeFdBaHNOSUVoQmZaN1NucDdJWHltM1BPNi9xaEZZTi9vN1hteHlkbHU0ZGppRmZtREs2YnNwSnIyT3Yxc0pBcHFDYlM2ZmhiR25oc0MrOWpFbDkrZlA4Tk9uT2tJOXZWeW1xVGZLcnlvZjZQMDcwNVMvU1ZKdDFqN2Q3L1Y0c2pRdjU0WVIweTA3RHU4TVFYMjYwajZlSEYvM2JVMDZEY1ZudmNXUktkTzBOaVg1ZnIxc1hXYjh2N2JaSC9tT1hUMXZCNXJ6azM1VVR4KzJ5TGRTdElYY3k3b1JHMzV1ZGIzc3NmVjlEOTJRc3NZaGk0Q2U5TWMzeUxwUVpKK0Z1dTR4ZC9yM3FSeEU5NHplMHVheTRGRmVWcE5oeTB0RUxTdWlzRGVHaGtYUUFBQ20wZ2dSV3pheEhrekp3aEFZSDRFaGhMWXJ4cXNZWnpnTktWMC9WR0x3SjVDZHpQcTNFVFNLWkt1V0RFZEo0bno2L01XSUloZ0gyZTlFZGpINGJ4SnZWVFpZTmdPNmlHU1hsQjRtbCtyTk5rdkY1SHFmMWlJNzM4bGFUM0JucU5EM2RhNUU4S0ppWlo5aHphbXdONGxGMGJmK1UxMWZXemR1ajZMNUpoUFRLQjJIeFoxRDJuWjJWaHpka1N6RTE2V2syR3VoanVFS05zU1JiYnFqckwyb2RTMUsxb2NJcnE3NzhDN0NPdys5UFF6VjFWRXVYMzAzOVYzVUtYcm13VDJINFdJK1gvTTNHZU81bUtITFRuNnFHc0RnWDFJdXJRTkFRZ3NoZ0FDKzJLV2lvRkNZT01KRENHdyt4VitQL1E5dHdXOXJqOXFFZGhiUUY1dzFhWWZNT1Vmc3dqczR5dzBBdnM0bkRlbGw3cERWNHR1VHl1U2huNnNSbURmUjlKUnhkc3A5eW1CbURyaDZTWWxPVVZnLzlYbTZ2b3NrdXR6NmdPbDV6YzBkcnFrT3hhSjQ3L1hvc014QkhaL0g3d3pISHhWRFcxTytSTmFvS3V0MnVTM1BjZURoQzRDZTkwY2g3Sy91WFB4dHRMN0doYm5MZzBKUFhPc2FkYzJtb0kvdXJhWmVoMENleW9wNmtFQUFodE5BSUY5bzVlWHlVRmdVUVNHRU5nZFZlakVwbFdSeG5Wd3V2Nm9SV0JmMUhiclBOaW1IekJPbW1iTGlkV3J5aGJ5M2xFVFdkWjFBRTZZZXRtS2kzOGg2V3VTL045Y3hRZFR0c0taZTBGZ24vc0t6V2Q4ZnU0OXBoQUZuMWdhMGtwMCsycnczcTJLWU45TDBtNkZCZFRKcGNoWVI3NWI1SGFFNVZ4TG5YQ2RtckRQOXh6ZjMyeU5rS1A0TVBJZ1NmOWNhaXlId0g3REl0TDExWkplSStsdGtzN1BNZUFCMmhoRGJPNHo3RnRMK29nazJ5bFZGU2YvZHAzUHRlaGs2RG43OC8zVThCWkszYkNtUGhCcmdTdGFOZWEzUFVSMGQzUlFrUXB0QmZaTGgrY29pOXJsTXBUOWpXMGwvZXhXVjU0czZVVjlRV1MrM252L1djWHo1K0VWN2ZxTnl2dUZ3K00rM2ZyKy9ONEtDeSszMlpUVGdDU25mYWh6TFFRZ3NDZ0NDT3lMV2k0R0M0R05KcEJiWUhmRWl4LzQ3bFpCelNLa2Y0QS9xdUp2Q093YnZjMTZUYTRwZW4yc3FMam5TSHBteFN6OFk5QjdQcWNQYVM5WUkxNk13RDRpN0lWM1ZXVU40eW10UkRkN2Z6dTVYWjNBYmkvMnF2d0xuNWJrcU1mdnpKUlBYNEc5NlRQV1pjcDE5OHZMaGNoUkM3ZnJwVTIwdEwvWFZ3ZURQNVgwc25Db2NrNlhnUTU0emRCaWM5K2hYNjJJVVArRUpQdmkxNVcya2J4RHp0bkpXUThyN05tT2FCaXZFMVRlUzlJUCtzS1p5ZlZMU202NlF0WldZSzhMYWhqUy9pYjI5a2Jxd2VTWTI2VEpScWRyVXVMeStPc08zWnpvZTE5Si9oNnNLZ2pzWTUya2JQc0FBQ0FBU1VSQlZPNEUrb0lBQkNZbGdNQStLWDQ2aHdBRTFnamtGdGh0RDFNbHJydExSK0w1OWMrcUNCVUVkclpsSFlFMjBldERVR3lLNU9xNmI0Y1k1OWh0SXJDUFRYeVovZG1qK0lPU2RpOE4veXhKdHkyU0ZsdUFUUkVDbk0vRFVleTdsTnA1ZHZFR3lSL1BOQkhuVWdUMnVzK3lQZkQ5Qm9IZjBta3FUUkc5am14KzRZeTI3cEJpYzQ1cE5uM2ZyTnB2KzcwejFKeXZMK2xWeFJ1THRuR3FLMThJdGpGbjU0QXpnelppZnR0RFJYZjNuWHBiZ2YzSW1rTVRDK3krYi85RDN3RlZYUCtTa0V1bnJtbmJpUGx3eVg3c2N5bDFuRHkreDJSNkczSDk4SEo5M3JIRXJ5bmZxekdPVGM5NWJlOURzYjc0T3dRZ0FJSE9CQkRZTzZQalFnaEFJRE9CM0FKNzNmRDhBOTAvd3Z3YWVWVmlwSzRQYWxqRVpONFFNMnZPcjhsWFJhNTZtR05GcjlkRkZEcHFmZjhNci8vT0RIbnljQkRZazFGdGJVVkh0em9COFNNcUNLeUxEeWxDUU4ycitINHo2azVCeEo4YjZHMFIyT3NPUWNlNlI3ZFo5NkhFNWpaamlOV05DWTF0STNsenp2a3FRV0I5WkxCb2FwckxaeVg5WHZGV293L1ROcVUwUlN3UEdkM2RsMThiZ1QxbStUUEVHd2wrMXJOM3ZkOTBxQ3RmTCs3enQ1SmtZWGtPcFdrdjVQS3BiK0lTZTRNeTVYczF4aEdCUFVhSXYwTUFBck1nZ01BK2kyVmdFQkNBUUJGWmxsdGd0eGhxeTR5eS8vcFRKQjB0cWU0aC93eEpmOTloUlN6Z09HSytITlZvNzhPL2xXUnJnYTdGWHFkT051WWZUWlJwQ055bThKczlxZVM5dkJxSmhic25qQkM1dWtjaHBQOWQ0Uy9yS00zMTRvZzgvOWo3eWpSb0p1OFZnWDN5SlpqOUFHd1hkbHpGS0IzUmJyL2Q4OExmVW9XQXVrU3BjNDJTWFlyQVhpZmlwQXBhZGRZT0owbzZVSkt0RE9aU2Nvck5RODBwWnBVUkU5Yks0NHJOMlg3NWZ0NXBLanVGTjAzODM1VHlGeUhaL1E5VEtpK296dU1sdmJSbXZITk1icm9hYWh1QjNkZjQyZnFORmNtbFYrM2xmbk9venFhcWpMcXRQZEpRVzZ2SmU5MTkrdG5VTmxsOVM1TmxWQ3d3S2ZWN3RXbU1DT3g5VjVEcklRQ0JVUWdnc0krQ21VNGdBSUVFQXJrRjlydUhhQ1ZieGF3OFJOZDljbU0vOUJLR1BGcVZxdGZqblZUdkwwY2J3ZVowOUxBZ2xMZVprUVh0dDlaWURuMjdzSXZZci9qeDV3aTVvWXVUQXI2aG9wTzJJc2ZRNHh5N2ZRVDJzWWt2cTc5YlNMTEFXajVzZFZTekxRYnNUN3NxYllRQUo0MTdzNlR5czdUemV6eXU4SU8yLy9kY3lsQUN1OFd0VjBRbWFkLzd2eXJWYVlvb2Q5MEh0NmkvcW5xRnNNNTdWb3puQVNFcWRTN3I0WEhFbmtGaW90VVljNGtsZS9TQnJ3TUxWZ2RVc1RIRjVoeTd2czNmblV2aER3b3JqOU5HT1B4dU02NGNkWnYydW9NNkxQNitQMGRIQTdUUlZtRDNFT3JzdmZ5MzNFbW1yeEh5Y0Z3OU1uY25nYmZuLzlUbGVzWDMyRWZEb1ZONUxPdjJaMzNINmQ4Y0g2ajR2a3Q1ZzdMTjkycmRPQkhZKzY0ZzEwTUFBcU1RUUdBZkJUT2RRQUFDQ1FTR0VOamZYUWlTZnZpMDMvcDFTNi92ai9sREwySDZqVldxQlBZbGpiL3YvSE5lNzRNWDc0czJ4U0xEMnl0K1dMaU4zTkZUVGVPcWUxMS9Ea0pNRzU2NTZ5S3c1eWE2T2UzWlJ1SUVTWDc3bzF5cVBydHRoSUNtZ3pkSC9oNDFJMkZ2S0lFOTVkNVQ5VjAxaE1CdWV4NS8xNWQvMitTeVNNajlxWWg5aDZld3pUMm1jbnV4TWM1UllIZFF4ZE9LTnhpOTdoYWJON0hVN1hYUE5WZEN5Nkc0ZFJIWVBSWS91eDB2cWVyTmhWUENnVldPNUxWMWlUekxQSHl2c1kzTWhVT0JTbWpYOTdwakpEMnhwbTdPZThoemlzT01aMWIwYzJaSWNPcGdrN3JTNW51MXJnMEU5b1FOUVJVSVFHQjZBZ2pzMDY4Qkk0QUFCQzRpTUpUQTdyWWQvV0tMZ0Q5Yml5cU0vWENjMDdvZ3NPZGJqYllDZTVOQXQvclIxMWF3N3pLYnVzOUhTdlJRbC82V2RBMENlN3ZWOHF2ZWp1cStST0ZML0JsSnRoamFSQ0dxeVhmZGI1dzRldjJiSlhSdGhZRC90OGpwOGVHSzZIamJlUjBRb21mYnJjNHd0WmNrc0Z2RXNaaFRMazJXRFA0OTR6ZTZIbHB4M2RLU1BhNm1rRk1jNjdxcllzOUpjeFRZVjNQMWZlMnZRMUo3V3pkdHlqM09Oa3EydTdJRllsWEpaUW5TZGMvRXJ1c3FzSHZldHNSNWRFMEh1Uko1MXIwcFdPNDIxYllxeHFQUDMzODNSSzlmcHFLUm5BZUxUVzlNdkU2UzN3eHQrbnkxL1Y2dFlvTEEzbWVuY0MwRUlEQWFBUVQyMFZEVEVRUWdFQ0V3cE1CZTFYWHNoK09jRmd5QlBkOXF0QlhZWXg2MGJkdnJPaFBiSEgyOFNMUzZhNm1CYmZkZk53NEU5clJkNWIxak93OTdVYStYVDByNi9VS2MvSSswWmhaUnF5azVYbE15MHJaQ1FGTS9jL0pqWDVMQVhuZlBiYnJYMWlYNVcyS3l4OVVIRElFOTM2M0dZdU1oNFREczUvbWFuYVNsdWtTK0hvenpzRGhmekpjbUdWbGFwMTBGZHJlK1d6RS9KelpkMlQ2dTk1aHI3ckhFdnV0OTNrUFN1OUttbmIxV3pKcysxNEdEQjM3THdncng1Sm9jUkE1ZXNrZCtVMm43dlZyVkZnSjc5aTFFZ3hDQXdCQUVFTmlIb0VxYkVJQkFGd0p6RWRoVGtteFZ6YThwOFpZVG5QWjVqZFFpcWw5RlhZKzJYTklCUVpmOU1OUTFiUVR4RzRjZkZlWEV0ZXRqUzIxdkNldFZkWkF6MURya2JCZUJQVTdUdnJMdmxmUTdOVlhuSkFiSFp4T3Y0ZnVsOHlaVTJRbThXTktoTlJGM1hZUUFSL2Y1TFJZTFcrVmlNY2hqeVdGZEVKOTFmWTBsQ2V5UEtnNFNuYVM4WEpxRW5McUVqMHRNOXJpYU53SjdueDFmZmEzRlVPZEhPRGQvMDZPMWVHUng3enFpcHJleEVxNzNtV3dmZ2QzOU9vTGRpV3VyU2wvTHZxWm5pYXIrSEZIdmc1c3BTcE5sVHQwYldsM0hXYmZuVXFQNHUzeXZsc2VLd041MTliZ09BaEFZbFFBQys2aTQ2UXdDRUdnZ01CZUJ2ZXVQMnJyeE4zbk45dGtRU3hCcys4eHZxR3RUQmZGWWROQnFmS250TFdHOWNnbnNkNjZJa2g1cVBkMnUxOHFKOXFvT1F1d0xhay9lTVJOTzJpZld2dDl6S2syaXpHcWNTeEJuVXBqV0pUWDF0ZXVKcnF2YTZpb0VOUFU1aDZTblN4TFk2KzZWZGQvTlZ3MlJ5VDRRWFM5TFRmYTRta1BYWjVHVXowaHFuZGozMXB3dFl1cm02TzhFZjIvN3paMmxGZHQ3T1pMNEJoVURkN0pQSjF5Zis3ejZDdXhOdG4xOW85anIzaFQwbXpEZktKSmFYNy9FL1hSSmR5dzgwTDgzOGthS1dSYytxTWcvOVlZd0ptczk5dXozYnhGL1h0dVdLNFhrcGpldnVQQWR3YXJJVm9WTnBldjM2bnFiQ094dFY0NzZFSURBSkFRUTJDZkJUcWNRZ0VBRkFRVDJkdHNpOXNPM1hXdmJVenRWRUw5ZjhXUHF6VFdKVGRkcHBiYTNoUFhLSmJESGJIVTJmYmZOUVJoYlo5ejBBM205M2hlTEg5SjdCeUZocVd2a2ZCc2ZMRjVaMzcxaUFpbSs2RjJGZ0NhckdBOWw2cVNuU3hMWWJ4OEVuZkp2bE9jV0IyV0hWYXlydmFoOXJ5NlhFOE5CM3dVejNjeXg3NFE1M0VlZUpPbm9CbjV0RXozbW1MUDN4WldEWGNVMWl3TlVDMzhXT2UzUjc4UFdsSkp5TDBocFordzZkWHZkNDVqN2ZsK3g2aXV3dTUwbURuMDg2UDA4OTdjVmkrcEVubjRiNWxtbHYwMXhxT0g5NzN1RDc0ZFZ4ZDkvOTVSMFh2amo2bTB1Lzc5T2h1cUQ5RGI1Q0pvUzZxYll3N2pmcnQrcjYvTkRZQi83YmtOL0VJQkFKd0lJN0oyd2NSRUVJREFBQVFUMkFhRFNaQ2NDVFNKZHVVRUU5aDBSSTdCTEwraTA4NGE1cU83SGJibTNId1diazM4Y1poaUR0MnFyRmtmVTNhNm1wNmRFeE1LK1FvQy93OTVaNUVxNFEwWC85bjIvYnhqZjRDQXFPbGlTd0Y2WHVPLzFoYmYwUTBwejIxbVMzeGh4UXRseWVVQVF4YWJnbmRKbkRyRTVwWjgrZGVvU3pxN2FyRnFUcHY2R25MT1ROdDlJa20xQy9MMGNLMHV6eFdyYTY1N3IzUGY3YWoxeUNPeE5FZHlmQ3ZlRExyWmNkZjdyYndxMlZVNW83V1NyNjJYc0pNcDFpYlU5Smd2K1BxQThKUXl3NnMwcUg1ZzlJL0d0dnFhRXVtM2VGa0JnajkyTitEc0VJTEF4QkJEWU4yWXBtUWdFRms4QWdYM3hTN2dSRTNBRW5DTjhIcEU0R3dUMkhVRWhzTTlMWUxkMWpsOE50L2pVVkhLOXdaRDQwY2xhTGZhNVRiVnA2U3NFTk9WdHNFMlJJeTh0d285ZGxpU3czN0FRaVQ0V29wVFhPVlZGUzlkRlY4YXNnTWJtWDlYZmtHSnpqdm41TjZKdEpwd0F1YTc0allLNlNOb3A1N3hIZUt2aHVoRVFiNU4wVUtMWW1JTnBuemFhRWswNmlhdnRZV3hqTXZlU1EyRDNIT3Z5TGpnNjIyODBuTlFTUk5PYlhrOHVFcXY2TUtucWU3U1BvTjl5aVBJaGkzT0wyQkt2cWpoM2hTUDRiZG5TRkNqeTlpSVB3Y01UY29NMEpkUnRrOStpNy9lcTUwb0VlOXZkUW4wSVFHQVNBZ2pzazJDblV3aEFvSUlBQWp2YllnNEVtcElqVm8ydnI4RHVhTHRYakR6eHkwbzZUdEplcFg1ekNhd0k3UE1TMlAyczUyUnNUdTdYVk5yOFlCNTV5eloyWjNIZGtZZE9mbGRWMmtTcTVoQUNtdTRoVTFsVExFbGdyeHRyMmUrN1NXenFZeE14MXQ2ZXU4QitPVWsrMUxoMUF4RHY5VFlIUm1QT2VkY2dSbFlsSDE1TnlXK1crSkRHdGhwekwzWFIxUjczMkZIVWZWamxFdGlieE44Nk82bW1jZGNkWUZpczNyOTRNK25qa3Y1UzBrTkxqWXhwRTlPVTROVVdiMzU3NnorQ2ZaS2o3djM1ckN1T2N2ZGJWVTVVV2xYODNIQk1zSlVwLzcxdGZvc2MzNnNJN0gwK2RWd0xBUWlNUmdDQmZUVFVkQVFCQ0VRSUlMQ3pSYVltME1ZYVpqWFd2Z0w3RkQ2N2RaODFCUFk4TzNDS05ZMk52Q215MnRkT0pmekd4aDM3ZTh6N3ZPMjhjZ2dCVGNMRVZLeVhKTERYUlpLV2N3UllPSFdVNnFWS20yUXAwYnhqaXMyeHoxSFYzK3ZlSkZqVnRiZjl2aUZ4Y0dyN1k4OTV0OEwyNmtORjlMR1RWOWFWSlJ3c05pVTM5VDNPbjRWL1NWMkVpZXZsRXRndkhTeTM3TDFmTG0yVDcvcjZ1c0FBKzY5N256czVicDMzZXhkQnYrMHl4TDdESHhOc2JGYnRwaHd3K1o3cWFQalBWUXptdDRMVnpOVXIvdFkyYWovSDl5b0NlOXNkUTMwSVFHQVNBZ2pzazJDblV3aEFvSUlBQWp2Yllrb0Nqb0o5VlVWMFVteE1DT3c3RXJJdzR4K0RZeFgvMEQ2OHNBUzRma1dIL3hvOGVTOGNhekNTUGx2emczWEVJVlIyWmRzRWU1UTdNZUI2c1hEZ3BMNzJsMTFTaVluclhYelBjd2dCWmhqemd6ZnpPeGZpeHVrakFWK1N3TzQzYkp4b3NPeWw3MGpMVzBteUtPVDc5UnVMejlwOUt2ak44WUNyYXBuSEZwdmJiclc2aEkrcmR0YUZ4OVMycDVoelU5U3Z4LzNkRUtWZkpUS216bXZvZWsxSlBkc21taDE2ckxIMmN3bnM3cWRPRkYrL1Y4VEdzN3BmTzBuc25oV1ZYeWZwWVNFeHFBOXFITWx1OFhxOURIMm8xNVRmdytONFQ0aEdMeWQwOXZmUWE0ckRsM3MzUVBCM2tUL3JueXpWT2JLWTh4RTExN1Y5UXlqSDl5b0NlOHBPcGc0RUlEQTVBUVQyeVplQUFVQUFBb0VBQWp0YllVb0NUVC9DL2VQSlAwS3FYcFZIWUo5eTFTN3F1K21IVjVkSXR1bG5OTndJTEY3ZWRpMFJwNjBSTEt5ZlAxeVhnN1RzNTFjbnZIeXRwSjFxZWxqM28wMGRSQTRoWU5WWDdJMllNVVgyb1FUMkZJc3JKMzM5cTlJQy9MallkL3RJT3FObVlWei93UTNYdU0zM1Y2ejlXV0YvbjVPNjRCUFdtMEpzVHAydVAxOVZkaGpyMS91d3pzS3ZMVFJTeXhSemRnU3VSVkYvSHV2S0E4T0JUZW84eHF5M0tjbE5WOHh5Q3V4TzZQbUJ3aUtuckdlc2JGMmN5eUdsTlBuYnIrOE5KLzMwR3c5VjFpdERKWm1OSFNUN0RRWi9wLzlEelVTOWYyejE4cWdHRUw0ZjJ5N212YUhPOVlvMlB5ckozeHZsMGlhNTZlcmFITityQ093cE81azZFSURBNUFRUTJDZGZBZ1lBQVFnRUFnanNiSVdwQ054Q2txT1hybGd4QUVmQkhoaCtVSlVGSDFkSFlKOXExWDdWTHdMNzlHc3c1Z2o4N0dveHdCNnpkZUs2YlNFc2d2eWc1Y0J5Q0FIclhUYmRXMXpQNHNoZGk2UjhuMmc1enJiVmh4TFkyNDVqVlQ4bXNEOUgwak1yR3ZmOTFyWXdkWW4rbGhLOTdxbE5JVGFucnRkUW92UVVjMDVKMXVvY0ZZZWt3aG01M3FZa04xMWh5eW13MTBXVXU2ODJoeVoxL3ZaVmtmQk9pdXZrditYaVowZy9LNWFqeVB0dUYwZlYreEQ4TWpVTlBVWFMwWkZPL01hUEV4TFhSYVQ3Y2lmaDl0eWNVOEh0UGJHbVRSK3EvbkdJNkUrZFc0N3ZWUVQyVk5yVWd3QUVKaVdBd0Q0cGZqcUhBQVRXQ0NDd3N4Mm1JT0JYYU44ZFBFeXIrbDlGd1RwU0ZvRjlpaFdLOTRuQUhtZTBLVFZTeFBVMlNVM0xYSElJQWVVMlk0bVR5OUdEUTZ6VjBnVDJKOVdJUm43VDZGdVMzbDRSdFRxMFRVUHVkWmxDYkU2ZGc4VkpKOEt1SzIwdE9GYnRURFhuV09MdEx0SDRxU3o3MUlzbHFGNVNjdFBZSHVqeXRsbFRJdDdVdzdZbWYvc3FmLzQ2VWQvSlRoMVI3K1NoT1V2VDN2VWJhUGVVZEY1Q2g5NUxUblQrNG9hRGFRZVV2REs4SFZZbDZQdXRxLzJDRFY1Q2wvOWRKY2YzS2dKN0crTFVoUUFFSmlPQXdENFplanFHQUFSS0JCRFkyUkpqRTNCVXo4c2xQYUttWTN0cCs5WGJid2FMQXdUMnNWY29yVDhFOWpST1M2K1ZZZ3RqY2QxSjcyd1YwcVhrRUFMSy9jWmU4WGQ5Q3hzSGgvdk1mM1VaZU9TYXBRbnNkVUtzL1lSdldsZ1pPSjlBdVpTVC9BMkFNV3VUVTRuTnNVbGNwZkNpUHFHRzhlcmFyb2xCcDVxelJVaUw2SFdsaTdnYjQ1amo3MDJKSnBlVzNIVEZJMmNFZTVObHkrdURVQnhiaDZiRHBDcmJGL2Zwd3lmYkk1VkwxODlGMHhpdkdpTFl5M2x0dW9qZC9pNnlIN3Z6Vi9qNXQyMnhPSDlveStoMTk1SGpleFdCdmUxcVVSOENFSmlFQUFMN0pOanBGQUlRcUNBd0Y0SGR0Z1BIZDFpaHVrU0w5b0owQXNaLzc5RG02aEw3STU4OHdLdW5QWWEwRVpjK3VmRHZmbUhOVE1yUlNGV2V3TDRVaTVqcHR3SUMrL1JyTVBRSVVzUjFDMDRIRkFMN2FUMEdrME1JcU9vK2RwaTN1dWFQSkwwZ3ZLN2ZZeG83WExvMGdmMTNnd2R3T1lyU2h3OVZ2MTNXRDBOemNodXlyYW5FNXRpY1lrbEJ2UVkreExJSGZ0c3kxWnhqL2M1VllIKzhKTnZYVkpVaHhOeTI2OW1sZms2QjNmM1hQWnVsQ094K2c3RXV1V25UR3pGM2t1VGtzdVY3a1o4YkhlRmRUaGphaGRQNk5lWFBwRCtERnYvL3VtUERqclIvVzQwdFlsMlRYUVQ5VlZzNXZsY1IyRHN1TnBkQkFBTGpFa0JnSDVjM3ZVRUFBdlVFNWlLd3ozR052bHo4bU4yclNGTDB0VGtPYnFGamNySkgyd3o0aDFKVjhXdTVSNjFGNmlDd3ozZWhFZGpudXpZNVJwYjZhcnQ5Mlp1aVZGUEdra01JcU92SFlvNGpzQjFCMkZSZVZ5UlZ0ckNXTS9Ic1VBSzd4L2pkeUh6OCtieFNxVTdNZy8wYXhiMzVWRW4yQWs4cEQ2cnhSVTY1ZHFvNk1kRTMxZUlpNS9oM0srelNuTC9BTmhoMXBZL1g5RlJ6WG1JRWU1UDQyK2VRSStkKzZkTFduQVIyNzRzcXV5blB5MjgzUHFFbVdydXRyVXdYVHV2WGxLUFlYeDNzWHV5YjNyWHNIWkthVnVVZXFtcXppL2Y2cXAwYzM2c0k3RjFYbXVzZ0FJRlJDU0N3ajRxYnppQUFnUVlDQ096MWNCRFloL25vWEZ1U1BTeDNMelZmNVd1SndEN01HdVJvRllFOUI4VjV0bkVKU1UrVDlOeUc0ZGxleFFuWkxJajB0VmZKSVFRMGtiUm81a09BMjBWd24xNzQzTjVIMG45a1dwYWhCUFlVRWJoS1VJc0o3RTNleW1Va2M0MCtqaTNkVkdKejNiajhsb1d0STd6djZvby9hejZVOW5ka2x6TFZuR01lN0k1R2RxNkVDN3RNYXFCcjZxS2szZDJud3RzNmJaTTREelRVVnMzbUZOaWI3aE94Q1BhbTU0YVVTUFFqYTVLR0R1WEZ2bnFiNGRQRit0KzVFUCsvMDRwNmRlV2JTWHFYcEd0RzJyTGxtdTBTeituWVo0N3ZWUVQyanZDNURBSVFHSmNBQXZ1NHZPa05BaENvSjREQVhzOEdnWDI0VDg2ZXdkOXlaVVZRbHlCeEtJSDlqTUptNXUrSG0xNWx5eFpTN2lacGw5SmZsN3JQRU5oSDNrQWpkZWQ5K2p4SnRuSnFLdVczVGZvTUw0Y1FFT3YveWlGcWN2OUlSYitTZjc5d2Y0cTFHZnY3bEFLN1JaekhsZ1o0Z2FSakdnNFEvUHZrRFpKK1B6S3h2b0p2ak51UWY1OUtiSzZhVTBxZUFGOW5XNG1EZWxnWVRUSG5KcC91RlFzbk1YLzRrSXZkc3UwbW4yODM1Y2pxbDdWc2N5N1Zjd3JzZFZaU25tdHNUWnVpMTFQMnVUM1JiZDFZZm81eTMrK1I1RGVxZkovTFZTeUN2elVjSnZleFFTdVBKMFZrNzV2ZklzZjNLZ0o3cnAxRU94Q0F3S0FFRU5nSHhVdmpFSUJBQ3dKMUQwLytBVzFyRlArM3FsUzlmdTU2TVcvczJBKzlGa01mdk9wU2hjL0J3V1RvWUYxWThCNnJzNWtZU21EUE1JVnNUU3gxbnlHd1o5c0NzMm5JRms3SEZzbEtuWUN1cVR4VDBwOUorbm1ta2VjUUFsS0dzbXNRUzI2VFVQbUlZRmZWUjZ6cElyQjdEWnhRMUFlQXppVnk2d294eWQ3bm4wdVlRNWNxWHR2blJDNjBpR1ovWW85dmFTWDJESkx5ZGtDT09hZUs2MzRPMjZkSEFtR1BkWW81TnlVS1hmSHpIbnBsRHBpWjJyaEo4WmJMS1RVZTJWOHBiSHg4My9oU3ByN0diaWFYd0w1elNEYnFOdytxaWc5bVgxVHp0NlpFdnFuMk8vN2MyQi8vY1RWOURHRmI1Y1BabUNWWDIvV00yVUxsZUVNb3gvY3FBbnZibGFVK0JDQXdDUUVFOWttdzB5a0VJRkJCb09uaHFRc3dCUFl1MUxiekd1ODkyemJZZTNiZGQzMmRCZ0w3ZlBjR0F2dDgxNmJMeUN3aXZGblNIU01YSHkzcEdUMmlhYXVhenlFRXBNNjVqY2p1cEhtTzV1NXFHWk1xc1B1dEFVZldIeHFzUUd4VjQzWDRYdXFrTXRhTCtXYjNTYnFYY1ppZG01cENiQzRQMXV0OVdJM1Z4WHJkdmtrVlYyMU5NZWVtUktFZWx3OW52T2MvMW5rbDgxOVlaei9pbnBxOHdmT1BKSCtMTVlIOWVrVU9DbisyZmFCVGRYQnE3ZUovaFh3V2U5UU1MN2FtVFlsODIrUVlhSXFnZDVMVU94UnZScHliSDJHMkZtT1daYm5zYm5KOHJ5S3daMXQyR29JQUJJWWtnTUErSkYzYWhnQUUyaENZaThEZU5XcXNidnd4cjlrMmpLZzdIQUZIYS9ySFJGM1NLQVQyNGRqM2JSbUJ2Uy9CK1Z4dmNlVnZDaXNLdjM3ZlZCemRma2htY2QzOTVSQUMydEJNdFl0eG0vNHVlWVNrdis0UXNkOGtzRCtzc0RTNGViQng4UnNETzYxTllNcTNXaHc5N3loZSt5eFhsYWNVZi9NaFMxTnhBajhMZXZiWXp1RlozR1p0WTNXbkVKdlh4K1M5NTg5UmsrZjZxbjZPcElwdWErdzV4Nkp6UGFhNStaazNKZEJNOFFhUDdidXAveDRUMkcxQjVIM3A0b085ODBvRDlzR2tENGFhU3RQQm9MOWpQaHJ1OWVVMlVxUFhWOWZaeXNkalBiaG1NUDZiN1h6bStJWk55cHNyZlJLYnJpUEo4YjJLd0Q3MUo1ZitJUUNCSkFJSTdFbVlxQVFCQ0l4QUFJRjlCTWgwMFprQUFudG5kSU5maU1BK09PSlJPbkEwb3Q4a2lTVmNxeEw3WWtrTVI1bEFRaWRWZ3JXakNOOFNJc1lUbXREeDRYQ2hUV1JrbmNEeHd5QlcyVzZocXRpT3dOWXdROW5BTk0zM09rVUU2TWNMQWN1Q1dybWtKdnBibjdldjhSdEtIeWdpOU9lUUhISnNzWG5GMEwvOWJpL3BUVFgrMFdYVzc1ZDAvMHpNeHB4ekxEcDNOYys1K1ptYnRkL2dxU3B0b3F0VDdpVlQxSWtKN05jUEF2Z3FMMDZYTWRhdHFZWDVWeFZ2QWoyMHB0RXUzdWxOVWV5MkhUd3dKQkx0TW84aHI3RzFqajNkMXc5VTEvdEx2Y2VtakJHQlBZVVNkU0FBZ1kwZ2dNQytFY3ZJSkNDd0VRUVEyRGRpR1RkMkVrTUo3T2NQNEtrWld3VC9vUElQbnZJUHF5bWpWV05qYnZvN0Fuc2ZldE5mNjJmUmUwdDZZMEprWWwzaytwSUZkcTlBcXVlODY5cjMvSzZTem02eGRIVUNSNnlKSWQvQTh1ZldrZlBYQ2tMUGhXdURzUkJtS3d4SDdGY1ZpMFB2akEyK3NKRzRSbkZ3Y2Fxa3E1ZnF2ajJJYkw3L1RsWEdGSnM5eDB0SWNsTHZQNWRVWjYxUlptSGJOTFBPZFNBeDFweTk3ajVBaU9VNE9Lc1FjMjliUkNDZk05VW1LUFhyZ3k0Zm9CMVFNNTRIaE1PNG1ReTMwekJpQXJzYnRkQzliNmZXTDdMNnE5dXpUYUp5VnpzVWYzODVZZk1UYThiN2hXQVYwK1orM1hIcXlaZmRRcElQYS95R1QxWHhmZCtmQzcvZGthTWdzT2VnU0JzUWdNQWlDQ0N3TDJLWkdDUUV0b0xBWEpLY1loR3pGZHV0OVNTSEV0aTc3cmZXRTFpN29PNnpoc0RlaHlyWGRpWGdKSEV2UzdpNHlSWm02UUs3cDI5UitYbVNuSnl2cnJRVmF5eXEvbmF3ZjNsc1E3UmlFLzVZUHBPRXBmdWxrSE96NEhWOUswbDdoVU1GWDF1VlJPOStJWXEzN25mS2M0TjNlS3p2dXVoU1c4WlliRnNYOVdOdDVmNzdXR0t6TFVkcy9mT1lJaW5rZFZ0TUltZmsrcXJib2Vkc2dkb2l0QVhQeXlmTTFVeFdkaVFKMVFldkV2UDAzcTlZeDI4TVBvcGhPNGdKN0xhRWVVbXdWbWs3a3FiN1k4d3VxSStkUzVQdGpPZlFKVEsrN2R4VDYxOWIwZ2VMQSszZEd5N3c5MmxkUHFMVWZ0YnIrWHZJaVdYOTMvVmlqMzFiZDZVa0tjY2lwZ3Q1cm9FQUJFWW5nTUErT25JNmhBQUVhZ2pVUFR6Rk10alhQYXpIUklHNjY3b0tubml3Yi9iV1JtQ2Y3L29Td1Q3ZnRVa1ptYjJnYmZ2aXBKWjFKWmJRZEJNRWRzL2R6K1UrY0hoeGhSaWVLcTVieEhCaytQOHByRjBzVk5kRktjYlc1bHZCVHNFUnowNDZtRkxjOTFYWHhQUjlDbnVFL3kveVprTDVPejRXWGVseHhKNExWbU90RXl4Zkwra2hLUk1hc0U1dXNYa2xZcG0vSTlYdkhHeUgvSFpFMi9MS2tPajJncllYUnVybm5yTzc4LzcyZnJkM3QvOFg4K2RlRFhGT291ZHFURTNKVGYra3FPUy9MNzJrQ095eEJNZFZEQno1NzBQRXIxZjgwUWN2dGtPNVd3MjhMeGI1SG03WEk0bTBtL1hCNkFzYkZpZTNhTjFsSDZTSTYzUDhYSGl1Q094ZFZweHJJQUNCMFFrZ3NJK09uQTRoQUlFYUFnanNiSTA1RTBCZ24rL3FJTERQZDIxU1IyWUJ4RkduajZxNDRKbVMvaXdTNWJZcEF2dHErbjQ5MzhsTWR3bi9ZSEg5TGtVa3NpMHRxb3BGeGYwbE9XR3B4YWxVa2JIY2xqMkQzMUNJNUs4b3hDZ25DbXlLTExTdzZlaDRpNXUyYzNCVXV1MWUycFoxc2R6aThJY1RrdHltV3RmWWE5eWU2K1hmTzEwUDB0dk9yYWwrVEd6TzJWZHFXMDd5N2VTeHR1ZEppU3BOYlhkVkx6Ym5OcFpwUHBqcmNuamdzWFN4V1dvNzE3YjFtNUticHU3M3RuMU9VVDlGWUw5aGtTZmdZMFVrdTllNHFYaS8yaXJLYjdUOHN5UW5LUzJYbEdTZUR3cjN2VDQ4SEtGOVFvUDlrdSt0OXcxNVJ2cjAwL1hhbElUYXFZZTRYY2ZRNXpvRTlqNzB1QllDRUJpTkFBTDdhS2pwQ0FJUWlCQkFZR2VMekprQUF2dDhWd2VCZmI1cjAyWmtGb1VQSzBTU0k4SkZGaVRzYTJ1eHIwbzRXVy9iZ3N5TjIzUldVL2RLUWN3dlIzMS9YOUxUaXZGOHIyY2ZGaEJQbHBRU0dXeExnN2RKc3ZEbU43SStVOUczRThKYURMZjRYcGVzTG1YSVRtajNuT0RMVzdaTjhlZkxZM0ZVOU42RnZZQXRYcHlBdEt1SVh4N1B5cHJLVWZKTnZ1dmw2MUlpZXV2RVBGdW0yUE4veWhJVG04Y2VtL2VYSThEUEhMRGpPY3g1anVLNmtXOTZjdFBWdGtvUjJGZldWblgzZE44ei9qM2tyNGw5TjhTU2Vmb2U2MzF2c2I1dnNlZi9TWVhnZjZtYWh0eUgxemtsZjBUZnNheGZueUt1K3p2TzN2K241ZXc0WTFzSTdCbGgwaFFFSURBY0FRVDI0ZGpTTWdRZzBJNEFBbnM3WHRRZWx3QUMrN2k4Mi9TR3dONkcxcnpyV2xqeHEvYlBMZ1FVUnhYNnRmNllnSkp6UmptU3NlVWNqeU4wdmIvcmZKZDlJT0FJYlVlUnR5MWZEVlkwcncwK3VMN2UvQStVWkJITVlycUY5RDdDZmNxWUxPNzdBT0hCa2w2UWNrR280d1I4Rm9TYUVuRDZqWWl5eDdiMzB4MkRFTmFpdSt4VjV5QTJlMUkrN1BHaGx2TWdwQno4OUFFeDlaeWRBTk9ISzFVMkluM20xZmZhYlVodXVtS1VJckQzNWJtNlBtWTNsY01hWm4yczFsV2VKZW53aGdsWXlIYVM2ay9rbW1Ta25SUnhmZXJvK2hRVUNPd3BsS2dEQVFoTVRnQ0JFMDljaVFBQURyWkpSRUZVZmZJbFlBQVFnRUFnZ01ET1ZwZ3pBUVQyK2E0T0F2dDgxNmJMeVB4czZ0ZnRVMzIvdS9SUmQ4M2NCUGJZM016cUx3dnY0SWZHS29hL080TFNrZHRPWVBlNW1zT0x4eGY4WDVyWVhwdHFGbkVjUFh4S2lPSzNRUDYxRURuYUZHWDZzMkJYOHYrVU9yTlE3c2g5SitPc0sxWFdRVCtTNUVqVGYyd3orQUhxVGkwMmV5L1k2LzlQSmYxd2dQbFZOVG5WbkQxWGk1N2UxME1mSW5SQmVjdndtYWlLZlA1ODhiZE5TRzY2NGpLV3dCN3pHeDlLVkw2Q3BIZUhlMHpkWGhoTFpOODFIRkw3ZnRkVTV1QVBIL3ZjSUxESENQRjNDRUJnRmdRUTJHZXhEQXdDQWhCb1NHQVRTMlpHa2xPMnp4Z0VFTmpIb055dER3VDJidHk0YWtjQ1N4UFlQWU9xS08zeXpFNE5Qc1VXbzJOV0NEY0pJbmpYNUtqdTIzMzhmYkNjK1hpd3QzSFMxS3EzRVJ6TjZUY1ZMbE94SVYzL0FZVWZ2UzJBVnRaQjY5Vmk5ZzVWOSsyVkpZM0YvU25MVkdLenJUWDhob2paMmJKb3pETEZuRDNQSjBrNmQ4eUp0dWpMdjhVdC9EdTVjVlZKc1VKcTBkM2tWY2NRMkMydXZ6ZGlHK2JEcFVNSGVrTXFGam52UmJDdnZqM1pQYzRoeXZXS1pOTi9rMkNkRmtzZ1BzVFl1clNKd042Rkd0ZEFBQUtqRTBCZ0h4MDVIVUlBQWpVRS9DcThYMVgzYStucnhhOVJIanpBRDhHNmgveXV5Yy9xSHY0MktUblZObTllQlBiNXJqNEMrM3pYWm1ralc2TEF2a2VSNE5RSDBiYVpXQzlWRmpBcDYzRkpTVzhwa2dZNnFqeWxySXZwSHdsaXVpTTBVMHBNaUhwMUVCNXRnV1B2K25LRTcwK0taSWhPWk9xbytIS3BtMGZzMEQ1bDNEbnFqQ2syKzgyQjEwdDZjL0U4ZFU2T3dYZHNZNnc1ZS8vNXpZNC9uM2krS1poK0sremZxMWRVOWp3Y2Zmd3ZLUTB0cE03UUF2czFKQjBmc2MyeVZaRHZiMDMyVW4xeHhyemYzYjZqNlAzN3hzK1hPYTNRL0ozd2p1STNsWE4wTkpYVi9UVjI2TnFYUlk3ckVkaHpVS1FOQ0VCZ2NBSUk3SU1qcGdNSVFHQ21CQkRZWjdvd014MFdBdnVPQytNSTE3S29OOFh5K1hEdXVNSXFZcStLemgyNWF5L3ZzU00xcXpqWW1pQlZlSnlDSTMxS1N4VFluUVRWQjlIMlM3ZGc4NGJnWlY1bkFaT3l6blVKRjFjMkw3WkErR0JMTWIzY3I2UFMzeFBHWFRXbWRSSE1DVlZ0YlhPZmlvcHV3NUdnWmV1UHkwbDZYK0cxZnV2U05XOEtQdHc1QmEwVXB1VTZ1Y1ZtSitBOVQ5Sy9oVVNsM2hObkZQWkIvNUh3MWtLWDhYZTVKdmVjUFFiUCs1dVMvS2JFUjhOaDA5bVpCY3N1YzAyOXBzbVN5UWRkL3Y2eVRkS21sQ0VGOWhSeC9RdkZYcm1ESk8rUklZc1ArUHhtd3FNVE9qa21KUGp1YTE5a1hjZDhmWkJXOVViUStsQ1dKSzU3M0Q2QThtZmNieWVVUzlmQXFJU2xvUW9FSUFDQmRnUVEyTnZ4b2pZRUlMQTVCSWI0b1RjMEhVZWdQV1RvVG1pL2tnQUMrNDVZNnBpd2hhb0o4UG1kLzg1WW9zQnVJZWVad1ZQOFJFa1hac0JzTWNPUjNpNjJNTEMxak1YYU9wdVh0bDNhdnNEaTkrNDFGMWFKWUhjSzExVDlkckVJNllPRjlXS3h6UWRzNWNqZ3c0SmRUdHN4VXg4Q3VRbllyOXVmMlQwckdrN0pNWkI3UEdPME41VEFubUtKNGdOdUowWStiWXlKRnJrdWZQanZKTXRPckJzcm55d094MzQvSElqRjZsYjkzWWVROWxKM1RvVlk4ZHZDVDVocFBvSzZzZDlUMHRzbFZkMy9uUmo5UmJGSjgzY0lRQUFDWXhCQVlCK0RNbjFBQUFKekpJREFQc2RWbWUrWWhoTFlIVm45M1pHbnZaTXVpdFQxZjlkTFcyOWlCUFoyQzRmQTNvN1hGTFdYS0xCUHdhbFBuekZ4dlU0RTg5c3l0bjZ3UUZZdTlsUGZweEN5emxyN2d5UFhiVm5qQTRqMVl1dUdkL2FaQU5kQ0lCT0Jwa01qSndIMlhoL1N4aVRUTkZvMU00VEFubUtKTXJUbmVSMEVINkxZcnVWMkNaUnMxZUtJZHo5Yi9UeWgvcXJLbFl1RFJFZWtXNFNPRlF2K2g4em9yWmJZZVAzMzJIZkczVU5pMlpTMnFBTUJDRUJnVUFJSTdJUGlwWEVJUUdER0JCRFlaN3c0TXh6YVVBTDduS2FLd0Q3c2FpQ3dEOHMzUitzSTdEa28xcmNSczRXeEJZM3RYaXhJVlJWYk96aWF2bnc0NkxwbFgrVWpLeEtqMm9KaFgwbWZIbmFhdEE2QktBRWYvTmphekhaTVZjVVJ4aStMdHJLOENqa0Y5bFJMbE5oOVpXaUtLZFkxNjJQdy9jbFI3N1o3aXBXVXc0VlZHMDZZKzV5SnhIWGYxeDFsL3ArU1RnOEhSejVNZFRMc2xRWFM1NHZJK3Urc1RkZ2U4bzdxZjJTREhTSDM5TmdPNGU4UWdNQ29CQkRZUjhWTlp4Q0F3SXdJSUxEUGFERVdNQlFFOWgwWGlRajJkaHNYZ2IwZHJ5bHFJN0FQUi8xbWt0NFZTYnozbENEQzFQbWp4M3lOUHlQcDRaSldVYVBPRTdGZXZoSnlOWnc3M0RScEdRSkpCRzRTa3B1Vzk2Z3Y5ajUxY3RNdkpiVzByRXE1QlBaVVN4U0w2eFpwM3pxeEwzOGJrVDNGSjk3elAxVFM4Mm9PSE5kM2hSazhVZExMSjJSdzA3RGZuUnNqWnprekhKcCtPMmVqdEFVQkNFQ2dLd0VFOXE3a3VBNENFRmc2QVFUMnBhL2d1T05IWU4rUk53Sjd1ejJJd042TzF4UzFFZGlIb1g1N1NXK1RWQ1Vtcm5xMGYvQlJDUUtRazl3NXdXcWRmM3ZURE96N2JvdVlIRDcxdzVDaTFXMGhVUFdHeFdydUZrSWR3VDUxSXQ0aDFpS0h3TDVyeUxrUXMxMlppN2krNHVoeFcrajM0VWxkc2JoK2w1TGRWYm51YnBLY3JQbVdDUXMwbFRWT2VXaTdoTHdlTjBvWWM1c3Fqc3IzWjRrQ0FRaEFZQllFRU5obnNRd01BZ0lRbUlCQTNVUCtzeVc5WW9MeHBIVHBWeUg5U2lWbGZBSUk3RHN5UDdnbU9kdjRxN09NSHUycDYrUmlsUGtTUUdEUHV6YituZUhFM043M1ZiWXVxOTdhV2hmWWM5ZCs3RTF0VnMzazZZWFZ3QXZ5VHBIV0lOQ2F3TlVrblN6cEJoVlgvcVQ0MjM2Ri83cVRYbTVpNlN1d1h5cEVZdnRObGFaaVAzUGI3OHd0MzRMOTB0OHM2WTRWZzQ4bFliMUVrV2o2Y1pKZVdGaTlPSUk5Vm15NVlsLzJ6OFVxanZEM1N3ZnJMeDhlNUNwVnVUZHl0VTA3RUlBQUJEb1JRR0R2aEkyTElBQ0JEU0JROTVEUEQvQU5XTndCcGpDVXdPNG9KQXRGWXhiLzBEbTgrSkYzL1ZLbmJUM1l4eHd6ZlVGZ0RBSUk3SGtwVzl5cDgxTmY5ZFJXWFBkMS92M3lwQ0EwcFk3WTRwVWpSLzhsOVFMcVFXQWdBaForTGJKV2xSTWxIU2pKQVJXYldQb0s3R1p5V1VsTzFtbWY4cXJpei9wOUpKMDBVNEJPMkd3dmRGdThyRXFLVDN6cWdhWGI5QnREVHBqNjNSa3hlRWw0TXlQSGtGSjQ1ZWlITmlBQUFRaTBJb0RBM2dvWGxTRUFnUTBpZ01DK1FZczV3bFNHRXRpbk9ORDVkVW52Q2I2VjYrZ1EyRWZZU0hReGF3SUk3SG1YeDc4ejdoY2kyQzlUMFhRWGNYM1ZURnVSL2NWQjBOcEUyNDI4cTBaclF4SndIb0czQkt1aXFuNGVFUDQrNUJpbWJEdUh3Tzd4TzgrQ09kNnBOSmx6aXNTWmZzUEYrUmptWE1yUjZLa1dXWjdUWFlQVlROVTkxWkg3em1WaG02R2Z6d3pBbzhMQlNOOWgvVkRTUVpMZXU2RTJTbjM1Y0QwRUlEQWhBUVQyQ2VIVE5RUWdNQ2tCQlBaSjhTK3Vjd1QyeFMwWkE0WkFhd0lJN0syUkpWMXd3MkRWc0c2SllVSHA2SjRpVUV6QVh3M3VRMEhRL0VIU2FLa0VnZUVJTkNVM3RhV0g3V0crTVZ6M2s3ZWNTMkQzUkZiSmpGZGU3S2RJdW04UnVmMzF5V2VaUG9BOXdpSEI4eVZaSEU4dFZYa3RmS2hnNGRtSlArZFkrdWErT2p0WWVQcnRCWXZzRkFoQUFBS3pJNERBUHJzbFlVQVFnTUJJQkJEWVJ3SzlJZDBnc0cvSVFqSU5DRFFRUUdBZmJudlllL2pWUldUcDcwbHkvZ2JmVTNORmszdmRiSHRsUzRTeUwvdExKVDFEMHZuRFRZMldJWkJNb0NtNXFmZnFJY2t0TGJOaVRvSGRCSnowK1AyRlNIMnFwTWR2MmVkOFBaTGR2dXgvUEhOcklmdkcrM3VnYmU0TVIrSi9wK2RoN0RJL0xZd2FBaEJZSEFFRTlzVXRHUU9HQUFReUViQVA5WlVxMnZwUjhYcmxlWm42b0puTklYREZJam1lZlRQTDVYdVNMa3lZNXB6Mm03LzcvU1BIeWNMV0N6OWlFaGFTS2h0TndKOXoyemI1ODdGZTdHUHJDRU9TVFBkYmZ0OURyeXJKa1loREZBczR1eFgrd3plVzlOVWl3ZDgvSmQ2Zmh4Z0xiVUlBQWpzU3VKbWt4MWFBK1lJa0h6Q2tQRStWTC9lempLTy9jeDNZTFduZGJpWEp6NkZ6alZwZkVrdkdDZ0VJUUtBM0FRVDIzZ2hwQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkxhUkFBTDdOcTQ2YzRZQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUlIZUJCRFlleU9rQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRU5oR0FnanMyN2pxekJrQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFSNkUwQmc3NDJRQmlBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUdBYkNTQ3diK09xTTJjSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhEb1RRQ0J2VGRDR29BQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUlGdEpJREF2bzJyenB3aEFBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VDZ053RUU5dDRJYVFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFTMmtRQUMremF1T25PR0FBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFDQjNnUVEySHNqcEFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhEWVJnSUk3TnU0NnN3WkFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRWVoTkFZTytOa0FZZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VCZ0d3a2dzRy9qcWpObkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUTZFMEFnYjAzUWhxQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFDQmJTU0F3TDZOcTg2Y0lRQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQW9EY0JCUGJlQ0drQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRXRwRUFBdnMycmpwemhnQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdkNEVFTmg3STZRQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUTJFWUNDT3pidU9yTUdRSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJIb1RRR0R2alpBR0lBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQVlCc0pJTEJ2NDZvelp3aEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VPaE5BSUc5TjBJYWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdXMGtnTUMramF2T25DRUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFLQTNBUVQyM2docEFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJMYVJ3UDhQb2NEelRJNFJTQWtBQUFBQVNVVk9SSzVDWUlJPSIvPjwvc3dpdGNoPjwvZz48L2c+PC9nPjxnIGRhdGEtY2VsbC1pZD0icDEiPjxnPjxyZWN0IHg9IjEzIiB5PSI3MTMiIHdpZHRoPSI0MDAiIGhlaWdodD0iMTAwIiBmaWxsPSIjZWFmMmY4IiBzdHJva2U9IiMzMzU1NmYiIHN0cm9rZS13aWR0aD0iMiIgcG9pbnRlci1ldmVudHM9ImFsbCIgc3R5bGU9ImZpbGw6IGxpZ2h0LWRhcmsocmdiKDIzNCwgMjQyLCAyNDgpLCByZ2IoMjQsIDMxLCAzNikpOyBzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDUxLCA4NSwgMTExKSwgcmdiKDE0NCwgMTczLCAxOTUpKTsiLz48L2c+PGc+PGc+PHN3aXRjaD48Zm9yZWlnbk9iamVjdCBzdHlsZT0ib3ZlcmZsb3c6IHZpc2libGU7IHRleHQtYWxpZ246IGxlZnQ7IiBwb2ludGVyLWV2ZW50cz0ibm9uZSIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgcmVxdWlyZWRGZWF0dXJlcz0iaHR0cDovL3d3dy53My5vcmcvVFIvU1ZHMTEvZmVhdHVyZSNFeHRlbnNpYmlsaXR5Ij48ZGl2IHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiBzdHlsZT0iZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IHVuc2FmZSBjZW50ZXI7IGp1c3RpZnktY29udGVudDogdW5zYWZlIGNlbnRlcjsgd2lkdGg6IDM3NHB4OyBoZWlnaHQ6IDFweDsgcGFkZGluZy10b3A6IDc2M3B4OyBtYXJnaW4tbGVmdDogMjZweDsiPjxkaXYgc3R5bGU9ImJveC1zaXppbmc6IGJvcmRlci1ib3g7IGZvbnQtc2l6ZTogMDsgdGV4dC1hbGlnbjogY2VudGVyOyBjb2xvcjogIzAwMDAwMDsgIj48ZGl2IHN0eWxlPSJkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGZvbnQtc2l6ZTogMjBweDsgZm9udC1mYW1pbHk6ICZxdW90O01pY3Jvc29mdCBZYUhlaSZxdW90OzsgY29sb3I6IGxpZ2h0LWRhcmsoIzAwMDAwMCwgI2ZmZmZmZik7IGxpbmUtaGVpZ2h0OiAxLjI7IHBvaW50ZXItZXZlbnRzOiBhbGw7IHdoaXRlLXNwYWNlOiBub3JtYWw7IHdvcmQtd3JhcDogbm9ybWFsOyAiPlBTVTAx4oCTUFNVMDU8YnIgLz41IOWPsCDDlyA4IOmAmumBkyA9IDQwIOeptOS9jTwvZGl2PjwvZGl2PjwvZGl2PjwvZm9yZWlnbk9iamVjdD48aW1hZ2UgeD0iMjYiIHk9IjczOS41IiB3aWR0aD0iMzc0IiBoZWlnaHQ9IjUzIiB4bGluazpocmVmPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQmRnQUFBRFVDQVlBQUFDUHRVSFVBQUFBQVhOU1IwSUFyczRjNlFBQUlBQkpSRUZVZUY3dHZRZjRQVVY1OW4rLzJEdVdXS0lnWWtmenhpUXFkbEVRRzRrQlVVRWhjdG13WW14UnNjU0dRdXdnWXY4YlJRVWJVVkVCRmJGaE55Wkc3QVhMWDdFaENuYk11N2UvT1hKK2g5MmQyVEo3ZHZkODVyb0lodS9Vejh5WjNiM25tZWY1UHlKQkFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDRFFtTUQvYVZ5Q0FoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDQWlCblVVQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VHaEJBSUc5QlRTS1FBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUVEyRmtERUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUlFV0JCRFlXMENqQ0FRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQWdaMDFBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaEJvUVFDQnZRVTBpa0FBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFRU5oWkF4Q0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQ0JGZ1FRMkZ0QW93Z0VJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBSUdkTlFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWFFRUFnYjBGTklwQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJCRFlXUU1RZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ1JZRUVOaGJRS01JQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFDQm5UVUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFR2hCQUlHOUJUU0tRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFRMkZrREVJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FJRVdCQkRZVzBDakNBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFnWjAxQUFFSVFBQUNFSURBdWdsY1NOSVZKZDFBMHFYRC83N1JVcWMrTCtsSDRmLy9qcVR2U2pwVDBtL1czZkVOYW45YlNkZVJ0TDJrSFNWZEsvRC9wS1JmU1BwUFNUK1FkTzZFbU93ZzZaV1NyaHY2ZkQ5Sjc1OVEvK2xxSGdLWGxIU1ZzQjlkVU5KZmhmL2ZyWG5QOFpyL3JhUS9TUHFpcExNay9YUmlhejhQdWVGcW5lTitOQnc5V29JQUJDQUFBUWhBb0hjQ0NPeTlJNlZDQ0VBQUFoQ0FRR3NDRnBVZjJycjBlUVdYUlNDTG42ZEorc21JQk9tTFN0cEYwajZGV0hYbklLaTNHZlk1a2o1UkNLUnZrblM4cERQYVZDTEpRdXVqSkYyc29yd0Z0VmUzckx0THNkaDZPRTdTZTdzMFVGUFc3NGpYbDNTUXBIdEpzcUFWUzM4TUF2VkxKSjBnNmZleEFtdjZ1OGUyVzNGZzhFWkpWMWpxd3o5SWV0ZWEralRHWnU5ZnJLK2RlK2lZRDE2K0VPcnhBZG0zUnlaSVgwblNIcEwybFhRYlNUN3dhNVArZjBudmszUk1zYitkMG1HL1pUODZQLzJ4NzBkK3BqMUMwclhiTEp5V1pYTHUveTI3UkRFSVFBQUNFSURBNWhKQVlOL2N1V2ZrRUlBQUJDQXdQZ0ovTCttZEdidGxLM0FMc2wwRm9MWmR0S1h3d1pMMms3Uk4yMHBxeW4wNmlCd1d4SnVrdjVQMFlVa1hyeWowT2tuM2JWSmhUM2xqNitFSnhhSEFZVDIxdGFqRzc0WTNsWFNFcEp0MHFQdkh4UzJEUjBwNjg4Z3NleThoNlRsaG5hd09ENEY5YXlML0x1bWZPcXlCV0ZGYmY3K2p1QTF4dEtTdkRyeE9MbEFjenQxSjByOTJYT2RWWS9SaDAydkNmdWZmUXBQRWZuUWVyYW5zUjc3MTRFUGUyemFaNkk1NWMrei9IYnRFY1FoQUFBSVFnTURtRWtCZzM5eTVaK1FRZ0FBRUlEQStBakZCdGM4ZVd3QjZyYVJuRmVMeHQvcXN1S1N1cTBrNlhOS2VtZHR4OVcxRUJ3U3RMUk5qOXp3VzF2c1VWVDhRRGxSK09NRGMxelhoZDk3YlNYcUZwR3RXWkVSZzN4cE1ib0Y5dVRXTDBJZEllcFVrMzB6SmxWTFdRVjl0L3lwWXhIKzJZWVhzUjlQYmozd1Q1a1BGZ2VKT0RlZTZTL1kyejdvdTdWRVdBaENBQUFRZ0FJRWFBZ2pzTEE4SVFBQUNFSURBZUFnTUtiQXZqOW91UFo0VWZHbjNTY011VjN4dDNpSitXN2NMVGZ2VFJuUkEwTnJpVS8wL2d0L3Bwc3hqK2UwejMrSzFmZW12STZVZThDQ3diejA3UXdyc2k1YnQwdXJCbVc0K3BLNkR2dFlvQW50N2tsUGJqK3l6Mys3S0hLTmlxTlRtV1RkVTMyZ0hBaENBQUFRZ3NIRUVFTmczYnNvWk1BUWdBQUVJakpqQXVnUjJJN0VJdW4rd3d1c0QwWldENjRkZCs2aXNRUjF0UklkTkY5anRhOTN1RFJ5OE5GZHlEQUQ3Mi85TXJnWks2clZGdnEyaUg1N1lKZ0w3MXFEV0liQXZlbUJYV1FjV1ludGZOeDl1WDhRVU9IYkY1Mzdpc21pZERZRzlIYm9wN2tjK3ZMSEFmdFYyUTI1VnFzMnpybFZERklJQUJDQUFBUWhBSUU0QWdUM09pQndRZ0FBRUlBQ0JvUWlzVTJEM0dPMDJ4b0VOTGF6OWI0ZEJYNzN3YS96dVROYlFzVzYxRVIwMldXRDNYRGt3WTVQZ2ZIYm40VUM2UGtScGNqUGhhNUx1SU9uMDJDUjIvTHVGOWFjRUgvQk4rb2ZBUGg2QjNUMzVaZ2crK3FXTzYyR3ZFSGVpeVZybzJPU2ZpaU93TjZjNDFmMG85Z3hwVGlKZW9zMnpMbDRyT1NBQUFRaEFBQUlRYUVVQWdiMFZOZ3BCQUFJUWdBQUVzaEJZdDhDK0VObnZLZWx0TFVkNG1WQzJpZVc2aFgwSFBIU1FVdnNyZGpEVzVmUlhoVzltV3doYXhMQ1AyenFockkzb0VCTkg1aHJrMUlINTNoNUU3N3JwL24xaCtXczNRa2RLK3ZaS01Fclg0YmwrV3VGaTVrWUphOForL3g5VXVDUnluWDJuN1lJUGZyc1lhUk5FRjRGOTZ4bFpwd1g3b2lkZEQyVWNzUGRFU2RzMldHejJBVzlyNU5PS1d4Y09tUHpicGJJWEtRSkY3eXpwU3BKdUZuRUpnc0RlQUxxa0tlOUhzV2RJTXhKcHVkczg2OUpxSmhjRUlBQUJDRUFBQW8wSklMQTNSa1lCQ0VBQUFoQ0FRRFlDTVlIOWpaS09TMnpkb3ZSZmh5QjdsMDBzczhqMmMwbDNsUFNwaHVVc2ZGdUVmV0JpdVJPQ2YzYTMwMFJ3dmJ3a3UzeXdVTHZiU2x0dFJJZVlPREpIZ2QzdmdJK1RkRmhrcnV5cTQyR1N2aGZKZDRFaVdPNTlDNnYybDBVT1FId3pZdThnN0NjdWs5cHNYbk1PWHZxb1FoUzlVOGNLRWRpM0JsZ25zUDlCMHBNTHQxTGZTR0MrRUtVdGR2OXR3MXNQcnQ2QmN1OWV6UEZaQ1cwdFoybGlEZjNyUWpRL0tnVDU5UTJMMUJzOFh2YzdoUDU1UDFvT29JdkFuajVoVTkrUDZwN2RiNVYwVURxSzVKeS9sSFIyY200eVFnQUNFSUFBQkNDUWxRQUNlMWE4VkE0QkNFQUFBaEJvUkNBbXNMY1JqOTBCVzVYdkdRU3haUUdvcm5NZkthekozWjhtb3BiZGYxZzBqMWtQV3pDekNQK3RSblRLTTF0c2Y0aWtnd3V4MkVGVjJ6RGFSSUg5QnBKT2lmaWtmbjVodmZ2RWhvY2ZkdzBCS2k5ZU03ZStxV0IvN0Q5dE9mOFcxVDFuOXRGOW54YUNiVld6Q096cEFudGI4ZGpmSGhhK0hmell2MXYvWmxPU2Y5K0hOaEMrM2M0TGc1dWdXUDIrZmZHODRzREpsdXRka3R1MC8zQUhkZlorMjVZUisxSDVMSXgxUDNKdjY1N2REaUQrN0M0TGk3SVFnQUFFSUFBQkNJeWZBQUw3K09lSUhrSUFBaENBd09ZUXlDV3dMd2phMnRMdVgyeGxiRC9Wc1dRQnpIbFRrb1V5VzlmYjhyMHVQVDBFbm14aXNaN1MvaUtncFYyWVdJaHBralpOMExwZ21GZjcyNjlLcnd5VzYyM21hYi9Da3ZmMWtRbHdRTjJqbTB6U1V0N1lmRlZWYTNjNEZ2YXJSRjBFOXEzSjFWbXd0eFdQbDF0b0VvVFdRWEozQ2E2a1VwYk5EUXZYUlQ0a3JITU40NXM2OTVEMC9wUUtHK2F4SzZzWGhRTXF1NzFxa21McmUyNDNhcWErSDNsdUgxM3ozR2x6Nk50a3ZaQVhBaENBQUFRZ0FJRVJFRUJnSDhFazBBVUlRQUFDRUlCQUlKQmJZRitBdGt1RHQwaTZjWVM4L2FMYkZjdXFUL1N5WWpjUEZ0RVhycW16aTJpYnVrZ3MxdGg5UlpPMGFZSldiTHhkL1Y3Ynd2d05RYnlzbWdmN3R2WmhUSk1iRW91Nll2MWZiZk1Yd2RMOWg0VTdtUTlKcXJLdVIyRGZtbHh1Z2QydCtWdkUrOTZiYXVabDBhc1hCMWRBS2U1YmJKWCtyeldiZ09NK2RJazFrYksvZUd5K3pYTnVTdWFsUExIMVBUZUJQVGJlc2U5SG5yckhoeHNXWlZQdG1CQXZiN2dHeUE0QkNFQUFBaENBd01RSUlMQlBiTUxvTGdRZ0FBRUl6SnJBVUFLN0lhYjRKN2FRZFpmZzlpVUcvcERncHFVcTM1ZURCZW9ac1lyVzhQZVl3RE1uUWN2dmZrY0U2L1FxMUYyc3l4ZDF4cGo2RU1TKzB6L2FZcjVqZFM5WDZWc1ZENVZrY1QxV0RvRjk2OGtZUW1CZnRHZ2Y2MitPdUpkSzNVTWNjK0treUFHaVkwWFlUVTJLV045aWlYWXFFbHVuN0VmTjhjYVlkdG1QM0p1NjV4LzdTdlA1b2dRRUlBQUJDRUJnY2dRUTJDYzNaWFFZQWhDQUFBUm1UR0JJZ2QwWS9lRnZBYkxPWjdyRjJGaUF0a3RJZWtmaGttSFhtcm14YXhoYmxZNHh4Y1NYT1FsYTF3aXVNNjVhTVJGZExNdVhxL1JOQXJ1SjJhZG13bFBXVmxueDJIeTV6T2VELzIyN0NWbUlxTEZ5Q0dGYjB4NVNZUGQ2OFhxd3RXOVY4anp1bnVEU3hjR2RQZStYcXFqb2QrR3c3K05qM0l3U0RvTFlqNXBQWE03OXlMMnArNjM0a1BxOXpidE1DUWhBQUFJUWdBQUVwa1FBZ1gxS3MwVmZJUUFCQ0VCZzdnU0dGdGhUL0taL0pvaGFaOWJBdjFLUjUxUkpPMWJrNldvZG1IdmVZOExybkFRdEM5NTJ4MUdWYk5YN2twNkEzMG5TZTRJYmtMSXFUNU4wVzBuMnI5MGsxYzNYTnlROXByQmVQcjdFTlVkc25oSFl0NTZGSVFWMnQ1emlOOTNCSWgwMHNpN1p6NzdYWFZWSzJkT2FyTWUrODhiV0tmdFJPK0s1OWlOL1R6dWV4TDFMdXRWSHJJSjJvNlVVQkNBQUFRaEFBQUtERWtCZ0h4UTNqVUVBQWhDQUFBUnFDUXd0c0xzejk0a0VtL3haWVRGNkswbGZxdW01aGZXUEZZRXpyMXlSWit3aXc2WUlXcmJpUEVhUzNYR1VKYnRSdWFXa2IvYjBPNDI1Nm1oNzhGSTJYNStXNUdDQzlyRmU1Zk02TnM4STdGdFAvTkFDZTJ4OXVuY1d6cjErZjFPelJtTjdtdGZJSHBMTzdtbWQ5MTFOYkozT1JXQ1B6ZmRVOXFOTGhnTTlIeGF1cHJFLysvcGV1OVFIQVFoQUFBSVEyRmdDQ093Yk8vVU1IQUlRZ0FBRVJraGdIUUw3OVlNZjdNdFY4RWh4eXhBVGhNWXVNc1Q2UHhkQnkyNWhmQkJpLy90bDZXM0JwVXZUSUxGMVA2WERnNi9ycWp4dEFnQXU1c3V1UGw0ajZVV1N2cHZ3ZTQ3Tk13TDdlZ1YydDM1Z2NWRDNzcHE1VExuMVVCZHcwbFVqc0NmOFdFcXk5UDE4bXN0K1ZDZXdmNytJWVhJelNkOXJoNXhTRUlBQUJDQUFBUWhNaFFBQysxUm1pbjVDQUFJUWdNQW1FT2hid0VoaGRvVWdPTzFVa3prbVBNYUVTd1QybEprNGY1NisxOE51SWZoajFmdGZHN0U3TmpLdkhmdm5yMHB2bExSZncyQ1RsNWJrZnl4ZU5RbFNHVnVuc1hVZUcrdmMvajYwQmJ2NXhkYm9kNEpnK1lNYTJBanNlVllpKzFFNTF6b1hhU25yTmM5c1VTc0VJQUFCQ0VBQUFvTVNRR0FmRkRlTlFRQUNFSUFBQkdvSjlDMWdwT0N1czc1YmxMZFA2eGZVVkhZVlNaOG9ySW0zcjhsanR3NXZUK25RR3ZMRWhOZTVXTEFmTE9tUUNyNXQzYlhFcGl0MlEySklmOWl4ZVVaZzMzbzIxeUd3eCtib2w1SnVMZW0vYWhaZWJCOGR1MVZ4akFIN1VXelhxZjU3anYybzd2azM1UDdXbmdvbElRQUJDRUFBQWhEb1RBQ0J2VE5DS29BQUJDQUFBUWowUmlBbURObkg5R0c5dGJhbG9wZ2ZYT2VKdFJ2enRlMDY3UHQ3ZjBsOXVoL3BDOFVtQ0ZxeGViYmY5VnRJT3FNdnFLR2UyTnJvMjg5eVhmZGo4NHpBdm42QnZZOTREbzRaOGNHd3QxV3RoMzNEbnRUemN1K2x1dGc2bllQQVBxZjlxRTYwSDdzN29sNFdMSlZBQUFJUWdBQUVJQ0Foc0xNS0lBQUJDRUFBQXVNaHNBNkJQY1dDUFNhdyszM2lhRW4zcmtGcE56RzNsL1RKOGVEK2MwODJRZENLdVFMNmdLUzdTVHFuNS9tSnJZMWNsdk5sdzRqTk13TDcrZ1gyMkJ5bHVKdTZXcmhSWXgvZlZla2prcnpmbnRYemV1K2p1aGlET1Fqc2M5cVA2dVlyMTc3YXh6cWpEZ2hBQUFJUWdBQUVlaVNBd040alRLcUNBQVFnQUFFSWRDUXdWb0U5eGIxTExEaWgwZGlxZEc5SlArdklxZS9pbXlCb3hWd2p2TG9JeFBlQXZzR0crdXlXeHU1cHFsTEsrdXFqYTdGNVJtRGZtdklZWGNTa3VIZTVxQ1FIN0wxTFpORjRUZjZicEhQN1dGdzkxaEZicDNNUTJPZTBIOTBreERHNVdNa2FXTmRjOWJnY3FRb0NFSUFBQkNBQWdSUUNDT3dwbE1nREFRaEFBQUlRR0liQU9nVDJtQ1doUjI2aDZyMFJCTmVRWkt2UU9xdFJWK0U4OTVSazF5QmpTWnNnYU1XQ1I4WnVLWFNacTlqaFM4NjJsL3NkbTJjRTl2VUw3TEYxbXVyS2FCOUpiMHBZdEU4UGNRbCtuNUIzcUN5eGRib3UwYmJQNTFOc25uUHVDWDN2UjNWYzFqVlhRNjFWMm9FQUJDQUFBUWhBSUJCQVlHY3BRQUFDRUlBQUJNWkRvRThCSTNWVU1VdkNsS0NDYnN2dkZDK1U5TWlFaG44UzNNbThYOUwvSnVUUG5XVVRCSzM3QkRjK1ZTeHppc3V4ZFozVGVoNkJ2ZjJ2WngwVzdESHhNOVhseGhVbG5TenBCZ25EZDUwSEZEYzR2cGVRZDRnczdFZlNsUGFqdXYwdDUwSEJFR3VSTmlBQUFRaEFBQUlRU0NTQXdKNElpbXdRZ0FBRUlBQ0JBUWpFaE1nY0grc3g0Zlcwd3JYTGJTVlpGSStsYXhWKzFqOHM2U3F4ak9IdlI0VUFxcjlJeko4cjJ5WUlXbytYZEdnRndOeCswTWZDTjlhUG5LSmVycldiczk2aEJmWlk0RXVQOVlqQ3hkUkJpWVBlVDlMckUvUGF0L3NESlIwN0FwY3hzWFc2THF2b1BwOVBjOXFQNnNhUzQ1bWR1S1RKQmdFSVFBQUNFSURBa0FRUTJJZWtUVnNRZ0FBRUlBQ0JlZ0o5Q2hncHJDMW9XWUN5TzRXcWRJeWsvU1ZaaEUxSjl3cXVHVkxmTVN5dVB5cVUrWFZLQXhueWJJS2c5U3BKOTY5Z2x4STRzZ3YyR044UFNkcEQwdGxkR2trb0crc0hBdnZXRUljVzJGUGNUTzByeVh0U1NycVFwRmNFNi9TVS9NN3phVW1QS054aWZXcU50MnRpNjNRT0F2dWM5cU02Z2QxNzJ4bVNibHk0SXZKNkxFdGZMZHltK1NENzFMRCt2ajJDUTU3VTN3djVJQUFCQ0VBQUFoQUlCRkkvZmdFR0FRaEFBQUlRZ0VCK0FrTUw3TGVXWkRjdEY2NFpXaE5CeTlWWVJIaU9wTWMweFBXTlVPYjROWWdMbXlCbzFZbWw5b2QvUzBuMmI1MGorVWJESnlSdFgxRTVBbnNPNnQzckhGSmc5emZKTTRxRHZDZlhkTnNCVHIxbmZhdkIwSzRtNmJnZ2NEWW9wbmRLK2hkSlgybFNxS2U4N0VmVDJvOE9ENGN5UFUyLy9panBoT0s1L094dzBET20rQUI5alpGNklBQUJDRUFBQXJNamdNQSt1eWxsUUJDQUFBUWdNR0VDUXdyc2w1SDB0aUxvNks0OUMxcGRSSGFYL1h3UTJpMjZuanZRWE01ZDBMcUVwSGZVelBWM0NrSG5acEora0lrM0Fuc21zSm1ySFZKZ3Y2bWtFeVZ0V3pPbXByZHBGbFcxRmRsZC9yVkIrRzhpNm5lZEZ2YWphZTFIZGIrVHJtdmh4OEdObWdQMnJ1dUdWOWN4VUI0Q0VJQUFCQ0N3RVFRUTJEZGltaGtrQkNBQUFRaE1oTUJRQXJ1dHpJOE1Qb2ZyMER5OStPUFRXcks3UU9HMy9lR1NYbEFJVk51MHFHTklvWDN1Z3RZbEN3dGUzd3l3TC8yeXRHNkJQWGY3aXpISDVoa1hNVnV2anFFRTlxc1hOeWplSituYU5mdkU3eVR0SXVuakxmWVNGN21jcEZkSzJxdGwrU0dGOXRnNm5icUxtRG50UnlseEExb3V1YTJLK1lhWFhYejU0SmtFQVFoQUFBSVFnTUFJQ1NDd2ozQlM2QklFSUFBQkNHd3NnU0VFZGxzenZ5VEJML0hYaTRDbHR5OCs2ci9iY1RZczZ0clArM1l0NjdIUS9zakMrdm9qR1gwaWI3cWcxU1NRYlp0cHZKU2s5eFR1aUc1VlVSaUJ2UTNWL0dXR0VOaXZMK250aFYvMTYwV0c4MnBKRDI0UUM2S3NPaDhzT3Q2RFhWaTFPZlJ6blJiYW55THBleG54c3grbEI5WnVNdzE5N2tleHc0STIvYXNyNDdWM21DVGN4dlJObHZvZ0FBRUlRQUFDSFFrZ3NIY0VTSEVJUUFBQ0VJQkFqd1J5Q3V5MktMZGdmbFFoZUY4ejB1Zi9MWHdQMi9mNnNUMk43ZEtTRGkyQ3ZUMmtRMzBPUG5oQUNBYlhvWnJTb3BzdWFPWDJnUjRUb1JEWSsxN1IvZFNYVTJEM1FaK0RpZHJ2ZWxYd3g4VW9IQnZBcnF3Yy9MR1B0Rk5oTGY4R1NUZnFVSmtQS1o4a3lVR2ErMDdzUjNtREh2ZTVIOFhFK3I3WGh1dDdtYVNERU5sem9LVk9DRUFBQWhDQVFIc0NDT3p0MlZFU0FoQ0FBQVFnMERlQnZnVjJQK2Z0LzlyMVBpNUJXRitNeDY0VUh0YnpCN3o3Y2p0SnIyalFqeksrT1lTdHVRdGE2L2FCM3FlZzFlVTNGNXRuWE1Sc1RiZHZnZDFDK25XQ2E2b0hGWmE0RjB1WVRBZDh2R2VJRjVHUVBUbUwyN2JBLzZ3RWdiK3FVb3ZydHFwL2M4L3hJbUxyZE9vdVl1YTBINjJPNVV4Slo2OHNtSytHQU5JKzVQYmMybDNSUlFzM2JYK1J2RnJQbnhHUnZRTThpa0lBQWhDQUFBUnlFRUJnejBHVk9pRUFBUWhBQUFMdENNUUU5czlLK2x4QzFSZVJ0TE9rSFZ1SVJ4K1FkUGZDbGNKWkNlMjB5V0tSellMWlN3di83TFpzYjVNc2JOMUgwcnQ3Y2h1RG9EVWRpOUUyNjJWUkpqYlBDT3hiMDYwVDJIM0x4WUZ6SFlReGxxNVl1QWh5RUZPTGtVM1Q0eVU5dDZmZmVWbmJseS8rbytOTU9GNUUyMlMvOFBmdTBjSSt0azRSMk52TzFKWnlmUjc0V1RUM2Mrem5MZGJvNGdEY044dnVLMm0zQnNQcSs1WlpnNmJKQ2dFSVFBQUNFSUJBR1FFRWR0WUZCQ0FBQVFoQVlEd0VZZ0o3N3A1K1VOTGV4Zlh6bitWdXFCRE43Q0xDVnZJV3QxSXNXY3U2WkgvSUZzYk82ZGhmQkMwRWRpOGhCUGF0ZjBoMUFudkhuMXhTOFlNbC9WdlAxdUZWRFY4aitMYStSMUxQenAvSlByRWZFT0pOV1B6c2t0aVBObU0vV2wwalB1enhNL0hKaVFmalA1QjBHMG1PbDBLQ0FBUWdBQUVJUUdETkJCRFkxendCTkE4QkNFQUFBaEJZSXJCT2diMHZzYnJwaE5yNnovNWtMYWExRWRvL0k4bWlXQmYvekhNWHRLNGs2ZFJ3bzZGc2Z0YnRnOTArdG05UitPZy9vK25pYVpnL05zOEk3RnNEWFpmQTNxZFkzWENKNkxvaENPcWVUUXVHL0M4TXZ0bC8zYks4aThYVzZkUXQyTm1QNmhmSDFRcjNNVWVHQTcvWU1ucHhDTnpiOVZBbjFnNS9od0FFSUFBQkNFQWdRZ0NCblNVQ0FRaEFBQUlRR0ErQmRRanNGck1lR3o3b3oxMGpDZ3Z0Lzl6QWVtKzVxOThOWXNUblcvWi83b0pXekNYQ2FaSnVXOXdHK0VsTGZyRmk2L2E1dk9oZmJKNzdFTmpYSlVySDVxRHM3MDhJVnR0VlpkY3hsbStFQU1zT2Fyek9aS0hkMXZOZUUwM1RXNE0xZTFzM1c3RjFPbldCbmYwb3ZxTHNTdTN3NE9PL0x2ZjNKZDI2Y0RIenJYaVY1SUFBQkNBQUFRaEFJQ2NCQlBhY2RLa2JBaENBQUFRZzBJekEwQUw3Y2NGNi9Idk51cGsxdDRYMnAwaDZaT0kxK1VWbnZpYnBMaTJ2eTIrNm9QVWRTVGVUWkpjRE9SSUNldzZxM2VzY2s4RHVnejY3eGpoQ1VoZnI3KzVVdHE1aEowa3ZrblNIaGhXL09nUlJiVE1XOXFQTjJJOWlTOG9pdXkzWkh4ako2R0M5RHY1TmdnQUVJQUFCQ0VCZ2pRUVEyTmNJbjZZaEFBRUlRQUFDS3dTR0V0Z3RyRnZNK2xLTHdHeERUWnF2eVQremNQMXlRSU1HMndab1JkQmFyNkQxbmhCWTl6Y041cnBOMXRnOFk4RytOZFVoTE5ndFFEOWIwbEdGSVAzVE5wTTZRQmwvTDlsSzJPNDRidFNndmJZQldtUHJkTzRXN09zKzhCdHFQMHBaU240T3ZrL1M5V295ajZtL0tXTWlEd1FnQUFFSVFHQ1dCQkRZWnptdERBb0NFSUFBQkNaS0lKZkE3aUNnSjBnNlZwSS94cnNHQlIwU3J5MUk3Ui8rSm9tTnR2RkpPM2RCNjRLRlFITk1FTEhMTURxbzdhM0NnVXNpNWtiWi9sclNSeVJkcXFMVVVJSmhiSjRSMkljUjJFK1g5QTVKYjVUa0dBcnJkRTNWWkNGZlFOSTlKYjFNa20vYXhOSWZKZDBwQ0tTeHZNdC9qNjNUb1g0dnEzMk9QWjlpTnlJVzliRWZOVmtOMG40aGVHNVZLYnVKOFEya01kMUVhelpDY2tNQUFoQ0FBQVJtUUFDQmZRYVR5QkFnQUFFSVFHQTJCR0lDaGdVcFc1K25KUHZUL2tyaGF1Vk1TYmt0ZzFQNjB5V1ByOHJiR3RRVzdiSDBPMG03QlVFM2xuZng5NWdMazdkSjJxZXcrdjlEYW9VOTVZdXRoMVJCeTkycHMwYitsYVRiU1Bwc1QvMWVyU1ltR0Q0cFdERm5hdjdQMWNiNmdjQys5UXpVclJuL0Zud0x4ajdUVTlLWEpmMG9XS2xQUlZDdkd0ZVZKUjFkN0RHN0pnemN2dVR2M05BNm4vMW9NL2FqaE9YenB5d09DbnRLalJXN2I0RTRoc2E2NHhha2pvZDhFSUFBQkNBQWdWa1NRR0NmNWJReUtBaEFBQUlRbUNpQlBnWFZpU0tvN0xiZldmYVc5SVlFMyt5MjF0Ni9nU0FlRTdRK1ZGamE3bEVFZ3oxN1lLaXg5WEIzU1c5UDdOUEJCYmREYXZMYWYvMTdFK3RxbWkwMmpnZExlbm5UU2x2a1IyRGZHbHJzZ0dhZGh6SXRwbmZRSWhlVDlNSWlic0dCQ2EzdUcyNlFKR1Q5VXhiMm95M3hOT2ErSDZXdUJ6LzdYaE54bDliSDRXQnFmOGdIQVFoQUFBSVFnRUFKQVFSMmxnVUVJQUFCQ0VCZ1BBUmlRbVJNRUJ2UFNQTDF4S0x5bXlWdFU5UEV6NFBQNVA5SjdFWk0wUHBvQ0tENnk4VDYrc3IyNk1LdHl2TnJLbXNpcWxnSXRHdUxxbVEzQkQ2OHlKRmliZWNVMDViSE00VEFub1BmdXVwRVlLOG5ueHFFOGtSSmV6WUkzc3ArdE1VdHl0ejNveWEvNjlpejRER0YyNklYTkttUXZCQ0FBQVFnQUFFSTlFc0FnYjFmbnRRR0FRaEFBQUlRNkVJQWdUMU96Kzh1endqdUtlcHlON0dLdnF5a2t5VGR1S0xDM0VIM3FzWlJaM1hlMUMyQTNWVFkvMzVWeXVtbXhaYnpIa3RaOHFHRkEwaitWM3pxTytkQVlHK0dFSUU5enV2eXdkSzZMa1pFMHhnSDdFZlNKdXhIOGRWMVhnN2VEWnJRSWk4RUlBQUJDRUJnRFFRUTJOY0FuU1loQUFFSVFBQUNGUVQ0aUU1Ykd0c1ZQc05QTHZ3Z1g2c21leE8vNlpjc3hQWGpneC9ic2lweit5aXZHa2Fkd05sVXRJc0ZHclYvZjF1Ti9tL2FGQ1RuaWdVMFBDMXdkOHlBM0FtQnZSbGhCUFkwWG50SmVxdWt1dStxSmhiWjdFZGJBdURPZlQ5S1cxMWJjdkZ1MElRV2VTRUFBUWhBQUFKcklJREF2Z2JvTkFrQkNFQUFBaEJBWU8rOEJnNHZBZ2Mrb3FhV3BtNWQ2c1JFTjlQRTMzbm53Uld1WVM0VkxNNXZWVkhaTnd1cisxdElPaU94TVFmS08xWFNqaFg1UDFQOGZmY1FGRGV4eXFSc1Y1QmtIL1k3VmVSdWNoQ1MxR0JOSmdUMlpnUVIyTk40eGRhNGEybHFrYzErTlAvOUtHMTFiY21Gd042RUZua2hBQUVJUUFBQ2F5Q0F3TDRHNkRRSkFRaEFBQUlRcUNEQVIzVDYwckRWcU1YWnF0VFVyVXNzQ09pemcwaVczc051T1MyRWY2endtMzdsaW1yczdzV2kvMjhTbTdsbzRHVi81MldwcVVWOFlyT0tXYzQzRlI1VDJ5M0xoOERlakI0Q2V4b3ZmMDhkTGVuZU5kbGZKK20rYWRYOUtSZjdrZVREeFM4MVlKYVNkVXo3VVVwL0YzbGk3d1pOWEtJMWFaZThFSUFBQkNBQUFRZ2tFa0JnVHdSRk5naEFBQUlRZ01BQUJHSWYwUVE1UFc4U1ltSnBVNEU5eHY2VGt1NG82YXdCMW9HYmNBRFRkOVMwMVVid2o0bDJUZHhZcEdLNFR4QWZ5L0xiSFkydDV0K2ZXbG5IZkxFMTB5Um9iTWV1VEtJNEFudjZORDFlMHFFMTJac0s3T3hIZVFLZGptay9TbDlkVWl6SUtYdFhFNXJraFFBRUlBQUJDR1FnZ01DZUFTcFZRZ0FDRUlBQUJGb1NpSWtxQ096NUJQYnJTN0pibWN0VnpOM3ZKTzFTaU93ZmJ6bTNUWXI1L2V3MWtnNm9LWFEzU2U5c1Vta3h2dDFDTU5lcTk3L1hTcnBmajM3WVkrUDRjbUNhNnVhbTRYRFBseDJCdlJsQkJQWjBYbjBMN094SDB0ejNvOVRWRmJ2YXBOYjhBQUFnQUVsRVFWUWhNV1NnNk5RK2t3OENFSUFBQkNDd2NRUVEyRGR1eWhrd0JDQUFBUWlNbUFBQ2Uvcmt4TVRpcHNFelk0RUYzYk1qZzkvM3ZnT0Jybzdhd1ZzL0xPa3FGVGgrS09tV2t1eUh2VW02YW5BN2MvV0tRcWVIZXIvZnBOS2F2TmVROUJGSmJyY3M5UzJneGJxTndCNGp0UFhmRWRqVGVjVmlRaHdoNmFEMDZzUitKTTE5UDBwZERyRjl1K216THJWZDhrRUFBaENBQUFRZzBJQUFBbnNEV0dTRkFBUWdBQUVJWkNhQXdKNE8rTURDUC9uTGFySi9RSkt0dk05SnIxS0hCTi9IVlVWK0plazJSY0M1enphb3MybFd2NXM5UTlLVGF3cTJEUXdhc3loM2svdEtPcVpwcHl2eTd5UHBUUlYvOHlHRi9jR2YwRk5iS2RVZ3NLZFFPaThQQW5zYXIxaDhBOWZ5R0VrdlNLdnV6N25ZaithOUg2VXVCN3Z1ZW4xTjVxRVBLbFA3VFQ0SVFBQUNFSURBUmhGQVlOK282V2F3RUlBQUJDQXdjZ0pURmRndkx1bGNTYjhkaU84Rmd3anNJSjlWcWFuRnFPdTVlZUd5NUJSSkY2NnA5M2hKOTVUMDYweGovWnRDeEQ5WjByWTE5WGNSd2U4a3lRRlNxOTRCUHlScEQwbG5keHpmWlFxZUowcmF1YUtlb1gzYXV4c0k3TTBtZGFvQ3UzODdqcFdRKzZiSmdtWXNJSEhiV0FQc1I5S2M5Nk9VWCtNVncvUGdCcG1lQnlsOUlBOEVJQUFCQ0VBQUFna0VFTmdUSUpFRkFoQ0FBQVFnTUJDQnFRcnNGaTZmS2VtaGhkL3didy9BeXFLdFJXZ0wrMVdwalkveWkwazZMZ1F6clJ1Ry9TMC9ONE9BWjFIYTF1bTcxalRlMVc5NVRQaDIwL3ZYQkNaTm5kNlkxZVVqSkwwa3RiS2U4aUd3TndNNVZZSGQxdUpYbHZUVWpBZGhDNUwrbG5Kc0RBY2Rya3B0WFoyd0gyMGhPdGY5S1BacnZGQndTL2JBak0rRFdCLzRPd1FnQUFFSVFBQUNpUVFRMkJOQmtRMENFSUFBQkNBd0FJRXBDK3oyR1c1QndLNU5iRDJleThJN1JZUzJEL0ZiUy9wV2l6bXJjMnV5cU82UGtoNFp4SSsrckdROXJsZEoyanZTNXo2RTZZZUhPYXBxeXI3ZExmSzNQU3l4ai9mM1NicDJSUU5mTDN6TTMxN1NkMXZNVDVjaUNPek42RTFWWUY4RUhQMkdwQWRKK21DR3c3QUZ5WnVHbXhwMU4wN3Njc2tpOFIrYTRmOVRidmFqTGJFbXhyZ2YrVHZhenp3SHdPNDd1ZTdIU1Rvc1VqR0J6L3NtVDMwUWdBQUVJQUNCbGdRUTJGdUNveGdFSUFBQkNFQWdBNEdwQyt3TGkvSmZCT3RSQzhaTmZLREhrRjR1K1BUZVBaTHh4WVdMaUVlMUZOVlNMTHdYelI4VnJGYzkzaTVwQjBsdmtYVGpTQ1ZmRE1MMGo3bzBKaW5GN1lCOTJOc0ZqMTF0TkVrcEJ5QVBpZmpQYjlKZWs3d0k3RTFvU1ZNWDJCZWovWHp3Z1c1M0kzWmwxVmV5QzVkM0ZqY3hybEJUb1EvajdKYkpCMDV0RXZ2UkZtcGozSThjaVBaWWJYRmowK2Voc2tWN0h4TDVWbGhkNnV0NTBHWmRVZ1lDRUlBQUJDQUFnUlVDQ093c0NRaEFBQUlRZ01CNENNeEZZRjhRdGJqMFZrbUhGd0V0UHlYcDl5MVJXM0N3My9PWEZvRUNMeDJwNHllRkgvVmRKRmw4YUp2dUVJSnZicE5RZ2NWMWkva081dG5VYXYveWtoNFdyUDQ5eHJwa2xuc0dRUytoVzlFc01SY3VydUNrRVBUMFo5SGF0bVR3QWNnckplMVZrNyt0VUpiWWhkcHNDT3pOS001RllGK00rc2VTWGhGdWl0aHRTOXZiSi83ZFBrMlNiNExFVWg4eEc5aVB0bEFlMjM1a2dkM3plOXRpSC9mYXNqVjVtK2ZBOGhxNldyZ1o5UThKendNL0UrMVNqQVFCQ0VBQUFoQ0F3QWdJSUxDUFlCTG9BZ1FnQUFFSVFDQVFtSnZBdmp5eEZvZy9veTFXc1hZblkvY2pWWUUwL1g3eUZ5RkFwcTJvTFNUWUgzRktlcXlrNTZka3JNbmo5bDhZM01Da1ZyVTRUUENCZ2dONC9xRGtRT0dpa3JZcmhLSmJTTExBdlZ0cTVaSzZXT1dYTldPZWJ3NEJUZXU2NFFNRSs5WjMzcW9Ea2dzRXkzcGI5Rit6cHJLZkIvLzJQbXhaUjBKZ2IwWjliZ0w3OHVoOXM4YmlxQVhLcXQvcklyOFB2M3pMeEc2TkhHRFlnbXBLOG5wM21mOU15Y3grTkxuOWFGbGdYMHlmRDFsOWlQTnlTVjlOdkRIaDU4MzFnMEJ2VjBJcDZXV1M3QzZzamR1aGxQckpBd0VJUUFBQ0VJQkFRd0lJN0EyQmtSMENFSUFBQkNDUWtjQ2NCZllxYkdldUNPME9UaGl6NXE2cXk5YlR0Z2h2YXltL1hHK0txNU9NUzJHcnFpM2FQNkNGdTVaWS8ySyswcGZMV3ppeXlHNVhGNzhOZjdoZzRYL2FiaklzT3ZwQXBDNzVBR0xkRnBjSTdMRVZzZlhmNXl5d1Y1SHd3ZGhDdFBUNnZrb3paSC9PM2ZkNlp6L2FlaUxHc0IrVkNlekx2VndjS3R1RnpPZEt4UEFkSmRuZDJXMGFQdk9PbHZUZ250MnZ0VnptRklNQUJDQUFBUWhBWUVFQWdaMjFBQUVJUUFBQ0VCZ1BnVTBVMlB1aW4wTjBzTXNUaTl1MzY2dVRMZXJKSmE0dnVtSXJldnQvcnd2UzJLTGI1eXRpbjhMUDdlQ1dvNDgrSUxBM283aUpBbnN6UXVXNUxhemVQOXpXYWV1R3BxeG05cU0rWm1kTEhYM3NSekdCdmIvZW5sZFQ3dWRCamo1VEp3UWdBQUVJUUdBakNDQ3diOFEwTTBnSVFBQUNFSmdJQVFUMmRoUDFsTUtGekdFOVdhNnY5c0NXb3c3V3VuZTdyblVxWlRjMVQycmgyNzFwby9hWmZreERLOG9tYlR5OXFQdVFUUFBUcEI4STdFMW96U2ZJYWJOUmQ4dnRHQkQzS3F5U1QrNVdUV1ZwOXFQdVlQdmFqNFlXMklkNkhuUW5UQTBRZ0FBRUlBQ0JEU1NBd0w2Qms4NlFJUUFCQ0VCZ3RBU21LckRiNy9hN2doL1pJZUYrSTFpSytncCt6bVFmNDNZOTg3eU1JdlJ5L3kzUzNWdlMrd2UwK0xhdjZHTWxYYUZIa0hiVlk5YzJyeDl3SEhYZFIyQnZOcmxUdFdEZlI5THJCdnF0TGhNOUxzUXIrR0V6ekkxenN4ODFSdmFuQW4zdlIwTUo3STZEY1I5Sjd4N0pQdHFPUHFVZ0FBRUlRQUFDTXllQXdEN3pDV1o0RUlBQUJDQXdLUUpURmRnTjJVRXo3eUhwcVpGQWwzMU15SGZDRlg4SEtPekQzM3BxbjY0bTZabEZnTllEVWdzMHpHZS93azhyL0prZnVTYi91dlovLzFKSmV6YnNkMW4yajBqNnB4RE10b2ZxZXFrQ2diMFp4cWtLN0I2bGZhYzc0UEZER2dSSWJrYm52TnlPUytDMnZqQ3dBTXArbEQ1ak9mWWpCNjArSWh3aXB2Y2tQYWVmQjgrV2RMZ2tpK3drQ0VBQUFoQ0FBQVJHVEFDQmZjU1RROWNnQUFFSVFHRGpDRXhaWUYrZXJDdEoyaU1FdjJ3YXdLMXEwbjhlTEt3dFBwOG02ZHcxcm83TEI1SGQ0cDJ0OTdzbVc2cGJSRGxoNEFPRHNuNzczZkN2Z3N1ZE83VVltTWZnUTRKUERTdzJwblFWZ1QyRjBubDVwaXl3TDBaaGErL3JTTnBQMHQyS2VBTTNhSWFnTXZkWEpEbW9zbU0vbk5GVG5XMnJZVCtxSnBkN1AvSitlZjNpUVBSeHdjcThiWUR1NVJGNGJSMGFZbU9jMDNaUlVBNENFSUFBQkNBQWdXRUpJTEFQeTV2V0lBQUJDRUFBQXB0R3dPOGFEczVuMGRiQlFxOG42Y2FTTGh2K1dlVmhRZUZuaFl1VXIwcjZuS1FQU3ZwczRhTGx4eU1VYk4xM3V3bTRtYVRkSmYxdEdKK3RaN2NwbVdpUHdXUDdaUGpIcm0wOHppR3Q4SnVzUC90NzlyaitVZEl0SkcyL01pNzMrNXZGdkhvY3gwdjZzS1N6bWpSQVhnZ01UTUFDcUgrZk8wdTZ0YVNkZ2dEdjJ4dGw0cWgvczc4c0Rndy9FL2FoVThJQjM5a0Q5enUxT2ZhajllMUhQc3pab1hEdGRhdkNCNzhQbG04Wm5uMS9VVE41WGwvZVE3MTNuaVRwRThWdGlMR3VyZFExU0Q0SVFBQUNFSURBUmhKQVlOL0lhV2ZRRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnMEpVQUFudFhncFNIQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCalNTQXdMNlIwODZnSVFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBb0NzQkJQYXVCQ2tQQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRzBrQWdYMGpwNTFCUXdBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBUUZjQ0NPeGRDVkllQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFTnBJQUF2dEdUanVEaGdBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ2E0RUVOaTdFcVE4QkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJYkNRQkJQYU5uSFlHRFFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWwwSklMQjNKVWg1Q0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRMkVnQ0NPd2JPZTBNR2dJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkxvU1FHRHZTcER5RUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnc0pFRUVOZzNjdG9aTkFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0hRbGdNRGVsU0RsSVFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBWUNNSklMQnY1TFF6YUFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRU9oS0FJRzlLMEhLUXdBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBd0VZU1FHRGZ5R2xuMEJDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSU5DVkFBSjdWNEtVaHdBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ1kwa2dNQytrZFBPb0NFQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUtBckFRVDJyZ1FwRHdFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWh0SkFJRjlJNmVkUVVNQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0VCWEFnanNYUWxTSGdJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkRhU0FBTDdSazQ3ZzRZQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUlHdUJCRFl1eEtrUEFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0d3a0FRVDJqWngyQmcwQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFKZENTQ3dkeVZJZVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRU5oSUFnanNHem50REJvQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFTNkVrQmc3MHFROGhDQUFBUWcwSmJBNVNUOU92elR0ZzdLUVFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFDQnRSRkFZRjhiZWhxR0FBUWdzTkVFcmk3cGZaSzJrZlFnU1IrVTlMOGJUWVRCUXdBQ0VHaE93Ty95dTBsNmxxUURKWDIrZVJWSkpYYVU5R2hKejVmMHJhUVNaSUlBQkNEUWpNQTFKTjFUMHBHU3ptNVdkSEs1cnlMcGhwSStKK21uQS9iK1FwSU9rdlRid0psMzd3SGgweFFFSURCdkFnanM4NTVmUmdjQkNFQmdqQVF1SStsdGtuWmQ2dHh4NFlYL2UyUHNNSDJDQUFRZ01FSUNGNVAwT0VsUEQzMzdtcVE3U0RxOTU3NWVVTklSa2g0YzZuMnRwS2RJWXIvdUdUVFZRV0JEQ1Z4YTBpR1NIaDdHLzlod21EZG5IUGVSZEhRWTREbVNqcGYwQmttblpoVGNyeWJKKzdmZnYvOFlEalA4UGs2Q0FBUWdBSUVlQ0NDdzl3Q1JLaUFBQVFoQUlKbUFuenRQa1BUc2toSy9sL1RrSU9UWWRRd0pBaEJZSHdIL1Z1OHE2V0JKKzJZUWJkYzNzdnd0V3l5NnI2VFhTVG9yVTNNN1NIcWpwSnV2MVArUklKcjhzTWQyTGRxZkVHNGNMVmY3c3VLL1BhT3duUDlCajIxUkZRUWdzRGtFZkVob1VkMkhoUDdmaS9SelNiZVg5Sjh6UmVIbjYyc2tIVkF4dnYyQzJON1g4QzhnNlY2U1hpbnA0aXVjN3lqcFUzMDFSRDBRZ0FBRU5wa0FBdnNteno1amh3QUVJREE4Z2J0TGVuT0pVTFBvaVMxcS9sN1NlNGJ2R2kxQ0FBS0JnT01qV0R5OVIvai9QeURKdjkxY1l2R2N3TjlFMHBza1hUT0lHUStUNU1QRFBwTUZFdStqUGdBcFMzM08xK1VsdlZlU3gxV1dMTHp2WFZqUzJ3S1RCQUVJUUNDVndLVWsrZmJpOG0zRzViSjJJN2pYVEYzRlhFblNLWkt1VndMTGg2TzNsUFROVkpDUmZON0RqMXA2bnE5bXozWHpxYWZ1VXcwRUlBQ0I2UkJBWUovT1hORlRDRUFBQWxNbmNOUEMydkpFU2R2V0RPVHhrcDZMUC9hcFR6WDlueWlCaGRXNnI2bmJDbnM1MlpMOTBJYS96VXNXMS93dG9rd3huVm5jdHZsTmc0N2JyKzJqSkQxbjVRQXgxNTYyaUdOeDdZbysybEt4cTdoZmQrUEl6ZHB5L1RhU3Z0NkFFMWtoQUFFSUxBajhReERaSFkrbkxEMGtIUGJPalpqalpweFVXTzZYYVRGMjJiSlBjYVB6RHowTjJtM1lsZGhoTmZYMWVTamJVN2VwQmdJUWdNRDBDQ0N3VDIvTzZERUVJQUNCS1JLSWlVRWVrNFBuUFRHRHRlY1VlZEhuOFJHNGFPRXY5VnJCNHV5S2ttNFVCTmhQRmtMbWp3c0w3eTlJK2xIaG0vcmM4WFU5dVVkM2t2U3VJbUNtZlc2dnBqYitXaTB1VzVTZllyTHdZeFlweVJhQ2R0ZXllMC9jVXRwMG50aWhaVmR4ZitkQ1FEOTV4YVhBb205dDFrUHF1TWdIZ1RFU3NISEFkUXJYSHRzWDdwOGM5TmZQQXgvQytSbndpK0RPeElkT1UzNEdETTNkQjVPdnFIR1Y4cFBDMG51WHd2cjZpME4zTEhONzlqZnZRK3V5MUxkN0dMY1I0K3c4THc2SHhBUTl6VHo1VkE4QkNNeVhBQUw3Zk9lV2tVRUFBbWtFN01mV1ZvZkx2aC9UU3JiTFpkL2lMeXcrSnI3ZHJ2Z2tTNldJNjMxWVcwNFNEcDBlTllIdEpPMGZMSUgvTXFHbkZoM2ZMK2tsd1dkMTM2NUJFcnJRS1l2ZkMrMVQyN0VReWxKVHNXTlRCUGFZaGFEOUNlZnljMXZuZHF1TENPNWcxRDVndUhYRld1Z3EzbmRhcUJTZUxRRzdWbnBrY1REbkE4MnlaSGNXRHJqYjVIWkpXMWorWFY4L0JHQzMvK3E2MjNlTE5xYitER2pMcWtzNUgxUjhXTkpWS2lweFVNNEh6Y2o0NHJMQmV2M0dKZVA5ZnRoenY5VUZhRVhaMkx0NGwrZEZodTVTSlFRZ0FJSHBFVUJnbjk2YzBXTUlRS0JmQW44WFh1eVhnLzcwMjhMV3RmMHFYS24vYk01R1JsUzNSUnBmZDYzeXNlbXVjalYxUkJOR1YvNUU0QnJoT3ZYQ0Iza2JMRDVNKzljZ3RrOHBhRy9zTjl2azk3b3BBcnZYaHc5cDdSZDlqNHJGWWd0TUIrM3pMWWMrVXc1eFArWWFoZ1BSUG1lUXVoWUV2TzVzZ0dDQnZTcDlLUHpHenM2SXpmM3c3UkFMK1ZXeEIxS2E5ODBtajhYN0FsYnQ5Y1FlSStsNUZWa3MvTzRwNlowcDBDZVF4NEdwN1gvOXdpVjlQU1ljNnZmbEhtYTFpZGl0cDV5SHdST1lHcm9JQVFoQW9Cc0JCUFp1L0NnTkFRaE1uMENkSDhRY285c2tnZDFYVW8rVTlNQWFrSjhKSDA3Znl3R2JPaUhRa0lCRlV2c3FmWHJEY25YWnZ4R3M3ejdZMEg5NWoxMW9YRlhzSS94WmtwNmFNSjVORXRnTk9XWWhtRXVZcmpzVXNmWG53eHNHSWExekRkUGtnS1h4d3FQQVJoTzRZWEVZLzVHSXBYaHVnZDJ4Snl5cy8xT1BNK0hmak4xK09IZ2xxWnhBTEpqeXB3dFhQSGVXOU5NWkFIeGFPSHd2RzhxK2hSczZpK3k1VXV4QTF1M21PZ3pPTlNicWhRQUVJREFhQWdqc281a0tPZ0lCQ0t5SndOOFBiQld6S1FLN3hYVUgrN05WVWxYeVZlODdTRHA5VFhOUHN4QllKbkRsd3FmdTBaSGJGbDJJUFNWWXhVL0ZiY3lESlIxVk1lRFVxK1N1bzhyUGJCZVdiY3ZhN2NSZkpCWnU0b045dVVxN1ZMR2JvRExyUk9mTDVWcGxWZHozT251QXBOY25ISVFzOTkveEJleDMvUVlsbk5pekV4Y1AyUm9UY055SGwwbTZmNlJrVG9IZHJrcitvMkx0Tng3UVNvSHZTdktlOHZtdUZjMjQvRjZTM2xvUitOUERma0lrVU9jVTBQZ3c5RVJKUHNSY1RWOE8vdWJQeUR5UTJHMHJONS9yTURqejBLZ2VBaENBd0hvSklMQ3Zseit0UXdBQzZ5ZmdGM3E3TUJrcWJZTEFubUloay9OajA4S1dnelJOUmNnY2F1M1JUalVCaTVQdnppU3NMTGRxQWVtZ2lheE5INUs5b2JCbXEzS1Q4ODF3R0RHRmVCSVhrSFRQRU1RdEpyQTdXS0Y5MEwrcUVNUGJ1UGFKN1g4K25IQXcyZmRWTEVlTEh3N3FkNGtXUDFoYmVONHZ1S1B3TFl3dnRhaGpueUpnci8yNnJ5YnZxVDQwL2M4V2RTNktlTjkzUUVnU0JGWUp4QTZtRnZsekNlejJ0WDU4Q0Y2YWEzWWN3OEsvVWQvY0k1MmZRT3laNHdDeXR5bHVBM3g5d3ZCdUpjbTMyY29DaWZ2RzV5TWFIb2kyUlJIemUrOTY3ZDdvOExZTlVBNENFSURBSmhKQVlOL0VXV2ZNRUlEQU1vR2hYUmpNWFdEM2MrWFJOYjQwelQ2bmowZC9KTDlkMHY4RTY4MnpXTzRRaUJDSStSd3ZLKzRQL1lXUDFFc1d3cTJEbHFXbVhCYk1xZTAzeVJmN0NMY2daZUc2alJDOTNBL3ZHdzRDK2hWSmZRWjNzN0J1bitqUEx5eTVIVHl4THZsQXptNXY3QjdpbkNhUVN2TEdMQVRyTE1FZDZPOFRrcmJ2MkljeEZuOWRNYi8zSFdQSDZOTmFDY1IrTDh1ZHl5R3d4MXc3bGNHeGYzVUhXdlhOSnd2RHFZbGJJUFdrcXVJaWRUMzRUSjJmM1Brc1dGdEVYMDErbjdpZHBJL203c0JTL1haYjVCdE9aY254WTU3Ync3Tjl3T0hRRkFRZ0FJSDFFMEJnWC84YzBBTUlRR0M5QkJEWSsrUHZaNHJGazFkTDJxYWlXb3ZyZDVWMGFuL04vcmttQjQ1eUVLd3JoUDl5Z2lSYll5S3laNEE5a3lwdFJXWkIxYTVNWXNrZm92N2dQSzBrWUoxZGoxZ2d0bS9WRzBVcWlsa3d4L294OU4vclBzTGRsejRPREd3eDdVQ0EzamVPay9URUlMYTNIYXYzSWx2RXZqaGhQaXlzTzk4emk4TkJpemg5cFIxQ0FPY2RLeXFzT3B4QVlPOXJCcWhuS2dSaXJrR1d4OUczd080RFVoL0syMTFkWGZJKzhaSVFWOGEzZHBhRGxyb09CM0pQMmYvZGh1TWlQR2dpTjVtR1hrT3Jyb0p5N2M5RGo4dnRYU2tFTjcxZVNlTysyZU4zaUNIZlY4c090dXltNWw2Uy9uc2RnR2dUQWhDQXdOUUpJTEJQZlFicFB3UWcwSlhBdjljRXM3SllYSFdOdjIyN0Z0ZCtOc01QS3o5UGJNbjZ4aHB4M2RiN3ptTlhISDBtdDcxM2NHZXhha25tZ0dsdWsrQmlmUktmVDEwV1ZYd1FVM1VnNUpGK1hOSzlKYVc0UXJIRnREOU83Yi8wNGpXWXBoU3dMWFp0dit1TmxLcUFxdDU3SDF1NEsvbENneXZ6M2d2K0tyaDN1VWxrbVhvdjlwVjh1MUxKRlRoditlQ2dyRHRsaHhNSTdQUFpYeGhKbkVDZHovK3kwbjBLN0RGM1RvdjJmWEQvc09KV1hDd1l1L2QvdnpmYUZWaWRWYnZkTGZtZHhjTCtXSkpkVXRrNDRoWWo2TkR5clREZkp2STc4N3FTalVFY0Y2RHJyU2IzMzY3QjNsUGhZOTVXN1Q3QUdUcjlUWWk1NGVDK1R3cUh6VjF2cEEwOUJ0cURBQVFnTUJvQ0NPeWptUW82QWdFSXJJbEFsY0R1Rjh6YkZ0YldGc0pJY1FJeEljbFdTTFltei9GQkdiT3d0Yi9UUFJNK2p1T2pKTWVjQ05oNnk5YlN0aHFyU2c1NmF1djJwaC9YdG1LM0tMTmRUZDM3U2pwbUlrQmpybUxhSGhpa3VHWklGZHAza3ZTaUJFdFVJN2NGcVlQT3hnU3pydE5qa2MwaS9nTXJLdnBkNFJKZ3Q4TDYxUWVCaTRUQTNwVTY1YWRFb09rdHdqNEZkZ2Z5UFdYcDFsc1pON3VYOG8yYUpqRmRmRXZQTjNLbWRNaHFVZHUzYXZ6ZVN6cVBRRi9yelpiNXZnWG45K0RWNUVOcTM3aXlhME9uTG5FNG1zNmR0YUQ3Qkl2MTNGYnJYMndaRjZUcG1NZ1BBUWhBWUcwRUVOalhocDZHSVFDQkVSQ3d4YzQ3d3RYZTFlN00zVmQ2WC9oVExOZHppdXNlaCtmUkZtTVcycXVTWCt6OTBYdDZYd09ubnNrVHNFc2hpeXNPaWx1V1BoQ0NQYmE5c2wxbG1iMW82OFJ3OERNVmE3SFlRWlovZzdiQ1cvaW1UMWtnOW90dXR6cytBSXNsK3lVL3NNU2kvUnFGSUhGWVRURFc1WHJmRWx6YTlPbm5QZGJ2MkNHQ3IrVDdKc1ZDN0xkRnJ3TnZ1MXlmeVFLUHhmdXlkR1p4VytEc1BodXJxT3V0SVViSEFFM1J4QVFJcEFqY3E4UG9VL0Qwbm1YcjVLcmttMGkyWEc4aXJpL3FpdTJYenJlL0pCL2lqaUVoc0pmUFFsL3I3WWJoSUhYYmttWjgwTzYxc0hoMnp2V1E5UW5oV1QyRzlVNGZJQUFCQ0dRaGdNQ2VCU3VWUWdBQ0V5RlE5MEhoSzZtM3d0cWlkaWJISUs0dk9wZ2lzanU0MkYwS0lmN3JFMW1mZERNdmdVTWtIVnpSUkY4SGJJK3BDZmpiVnh0NUtaMVhlOHhWak1XQnZ3OHVkNXIyeVNLNUE0d2VrRkJ3SWJUL0pGaWhwL2pQdHhYOFB3Zi8rUWxOOUo3bEg4SnRpVlZYUlBiNWJ1dEJ1ODJ5MjRpY3liN2dQeGFDTWk2M3M0N2dlam5IU2QzVElPRDk1QldKdi9ubEVmVWxlRllGMDF5MDFUVVlhV3kvZER2cjhMdGR0VG9RMk12SjlMWGVxbTVxZU4vM2U2bGQxUzBTQXZzMDlqQjZDUUVJUU9COEJCRFlXUlFRZ01BbUU3aHM0Vy95cE9KYTdJMUxJSHluZU9HOVdXRXgrWU5OQmxRejlwU0Fwcmw4cmxkMTZ6TEI5N0o5bTFZbFJIWVd0QW5FeEFTNzliQTFkbGZSc3k2b21mdGhjZmpsRTVxU0tvdFQvOWJ0QnVYWWtnQ3dUWWJYUkdoUHFiZks2ajJsYko5NXlvTHAyajNSUXdlTUQyRlhOSDdlcmI3NzI0WFc3cEpzeFU2Q3dGQUVxZzZkWXUzM0lYajZOK0RnMXJaT3IwcDlXSmZIUlB3eEhXN0Zub214ZVpucjMvdFliMzQzOVkyMW5Vc2dsUjJ5SUxEUGRUVXhMZ2hBWVBZRUVOaG5QOFVNRUFJUXFDRlE5eEw3elJEczZRd0lubytBbngyUHJySE1kWUdoeGZWRkovMGg0K3UyRGlaVmxUeTNlM0E3WWFOWDl0V0tOV0x4OWFvbEZDeXFXM0I4ZjArRTZpemxIVlR1QVQyMU0xUTFQaFE0YXFteEprRmdVL3ZvK1hsbUMrdldSZjMyQ2U4RGtrLzFjRWlTMnVkWVBvL0psdlRiOTNRWUVXdHY5ZSsrcmVHMXVKb3NOQjdVdERMeVE2QURnYnJBcHY3dCtnWmhWV3lNUGdSUEgrUTU3a0haL3U5aDlXVlpYdWQzZTRGdkxMOC9CUGJ5QmQzSGV0dExrdDFqbGVrdVpjRk5FZGc3YkM0VWhRQUVJTEJPQWdqczY2UlAyeENBd0xvSjFJbHNmYnhVcjN0OE9kcjN0ZWNuRmFMVnY5WlU3b0JOOStoUm9HdzZEb3ZzOW1HOGEwMUJSUGFtVk9lVnY4Nnk4UHZoOWtwZkFURHZMT2s5RmZpOFRoMzBySW5mOG5YUGhJVVlCeXYyNzh0N3dZc0x2K2E1L01nM0ZkcS9HM3dxbjl6UmtqNFg0NzhwckdaL1BFQncxZFgrVytqendhT0RVYSttdTRXQXZMbkdUTDBRV0NiZ2I4OW5GSHZlazB1dytIRFROOUM4SnYrcEFsc2Y3MmJlYzk5VU15MWxvbWZiV2ZSaHYvZi9xbS91MDBKZ1VidThXbWVxRTlnM3dYZDJsUXVYcnV1dExwaTYzelVjM0hRMUpnZ0MrenAvQ2JRTkFRaEFvQU1CQlBZTzhDZ0tBUWhNbmtDZHlOYjFwWHJ5Y0VvRzRBK0ZGNFpBZzFYajgwZWlyMzdicW5XZEtVVmt0eGpudm41K25SMmw3YlVRcVB2dDkrMHlZNDc3ekxXTFlHWGVELzU3b05scklyUy9zN2hCOHkrU3ZqSlEzNmJRakYwVm5TckpmdGlYVTVYQU00VXgwY2RwRXJDYkRCK0FYYnlrKzhjWGNSTHVHWUtXNXhMWTZ3NmIzS1VmRmpkTmJsa0kvRDZFN3lQVnVTSjAvV054RTRQQUxoMWFNdUZkdndYcWdxbFh1YUx6czNXWElnQzRZd3ZOS1gyUm02TnptazdHQWdFSWxCRkFZR2RkUUFBQ20weWdUdmg2WXhFTWM3OFJ1UmRZOXp4ZHJyaE8vY3BDVVBOVjE2bzBOc0g2eXBMZUhDeUVwdExuZGMvenByUS9wT2c5WkZ0am5ELzcvbjVOVHgzemI5cTNhRktTNDJkMHVSbHdlckQ0L2xGS1l5UFBjeE5KRm9vczNDeW5LZDZnR0RscXVsZERvTzdnMjI3bGJoL2NzL3g3Umd0MnU0VnhzTityVi9RengyL2k4T0N5cWdyTkdHSnhJTEQzTDdESGZQMXZ3czBBTmtRSVFBQUNHMFVBZ1gyanBwdkJRZ0FDS3dUcVhEZThycmkyZVYrSS9ZbUFyVWNka0s4c0dPd0NrUzFUL3JFNGxQajZ5Smo1STlwK2oyMXhXNVhHZGpBd01vU3o3TTVmQngrOGx5b1ozVWNMMzkxM2tmVExua2ErNlFkNWZ6OVJGeVJqQ25UdFo5V2VIZGJqRG9Xb2VJZVM4cDh0YnZGOHJrTzlWVVh0UTl2V29IWVhSb0xBZ3NCamFtSzMyTlhVbzRKUlEwNkJ2U3JZNzZLUE9jUnUzNVI3UjgweUdJTkJCd0o3L3dMN0RjTjd4a3B2Q3gwQUFDQUFTVVJCVkxZVmM0L0F6dDRJQVFoQVlHWUVFTmhuTnFFTUJ3SVFhRVNnVHZoNWR2QXYzS2pDR1dhMjVhTXR1cmFyR1p1RGhmbGF0NjlXanpHbGlPeHo4TW51WjdwRk5MczRzY0ExUkxKRm90ZklCeVoyMjZQS1pZYVpEZW1EZlJQMkdRVDI3ci9FS3YvQTNXdk9VOE9ZRGlmeWpKQmFteEp3L0FHN2hpa1RHMzB3Yit0MUgzWTc1UlRZcTRMOXV0MWM3bHF1TDhrSHQ3NEpXSmI2ZGt2V2RHNmNINEc5WDRIZDcyTjJxZmpJbXNsQVlHK3pVaWtEQVFoQVlNUUVFTmhIUERsMERRSVF5RTdnd09EcnM2eWhUWC94OWZQQndwZ0RnWlg1U2wwd2Uyc1JzTzhCaGVYWldkbG5xMXNETndwV3RIVUhCVk1XMlQxZkR3c0JKKzBLd29IaWNvdnNGdGRmRmRxeUFQamNDWW5zZFg1NEhXaHY5eDZEOUI0aXlhSk9XZHFFQUpNSTdOMzJMcGRHWU8vT2tCcldSMkFSR0xuc0ZvVjd0YitrbzVlNmwwdGdqL2xmOXp2QUxTU2QwVE9xbUIvMnZ2Mit0K2srQW51L0F2dTFpa09qRDB0eXdOS3FOUFh2akF0SSt1T0UzdnZhL0M0b0F3RUlRS0FSQVFUMlJyaklEQUVJekl4QW5XamhxOHd2bU5sNFU0ZGpQNzNQa1BUWVNBRmI1enlwRUg5K25WcnhtdlBkVk5LSkZSWjBpNjU5TGJnSEdadXJtenAweStMNk5pSGpCek9MN012aStxSnZVeFBaNnc3WXFvS1BOVjNDdHBRL1JkTDFTZ3JheDdlRDZkbGlmczRKZ2IzNzdDS3dkMmRJRGVzalVPY2FaaEhZZFBrOUlwZkFmb1VRaTJDbkNoUytpZVZEejNONlJ1Vm50QThRN2wxUmJ5N0wrU2JEUUdEdlQyRDNmUHNkK3NtUkNlZ3FzRHNlaVkxRytnckkyMlM5T0s5ZEg3MGx1SkI4YlhqWCtVM1RTc2dQQVFoQVlFNEVFTmpuTkp1TUJRSVFhRXFnN3Fxd1h4emYxYlRDR2VUL3Y1S09yUkFFbDRkbndlZjVrczd0Y2N6K1dQQVY2b1ZJdktqNnVwTDhZYnljZGl3K1dHMGh0UHJmcnJQeTM1b0VSVndVdGNodVN6c0xvR05QWmVMNm9zOFdDKzZlNFhaQm1iaSthTk9ITWo2WXNoWDQySk0vVE8yeVlIVWR1ZDhPdUhlYjRoYUhmVlIzU1hYQ1VsOGlmcGYrRFZHMlNtQjNqQXZIUjJpYXJpanBQWkwrY3FYZ3N5Uzl0R2xsSWIrREVQcld4M0lhazVzVEJQYVdFMHV4dFJPb085aTJqMzY3aHZuUGxWN21FdGhqcmxwZUhXN2s1WUJXZDVQSjdmbFovZlljRFNmV2ljRGVuOENlWXIzdWFXa2pzUHM5MmIrcGc4SXo2OHVTYml2cEo0bnozR2Uyc2pWdGQwY3ZLMkkyK2VDczc1c2dmZmFkdWlBQUFRaGtJWURBbmdVcmxVSUFBaE1oVVBjUnQya0N1MFhzZndzV0tiSHBNN2QzTDRtb3ZuYjl0eFdXNFJic1Y0VXcxOTlHK0k3MXE4Ky9PMmpyWFNjZ3N0OHBIQVI1RHNwUzN5Szd4ZlZqSkxuZHNtUmgzY0VZNndLNjlUbFBYZXVxRXk2N3Nxc1Rsdnd4dklza3I3TzVweXFCdmUwZTZ5djNuNUMwL1FxNE5tTEZvb3F5WjhFVUJQYTJoeFI5cmJsTFNIcTlwSnV0VkRnbWRuMk5sWHFhRS9EendqRmNkcTBvYWlNSEI4TmRQWkROSmJESEFweDIyVU5pZE9wdVRMbHN6clpqZmZQZnB5U3d1NjhPM094RGNJdkwzbi84TFBlN1NkdFU5UzVnbDN0N0ZEYzZ6MDZzT01YMytxS3FKbk4rTlVsUEQrNlVMTEl2a244N0RzcCtRbUwvK3NwV3QxN2NodWZDcnA5OE80TUVBUWhBWUdNSUlMQnZ6RlF6VUFoQW9JUkExVWRjWDlhclU0QnVLOTQzRnY2bWJ6V0Z6ZzdjUjF2aVdDeiszc0R0Tm1uT1BqRC9SWktEWlZhbHJrTHhvdDZZdU81OHZ0WHd4TUoxME8rYkRHS05lUzh2NmIwaFVHdFpOMnpSK0lnV2JwQnNLV2tMTHQrMEtFdGpjYWZ6NEJyLzhMRnBPYlVJU25qL0JIY0tjeGJZTGRpOUpnYXE0dStPWC9Ib3hMSlY0ay9iUTRyRVpxUFpxa1FXQlBZb3V0bG44RGVtQmNTcVo1T0RvM3R2S0l2ZmtrdGd2OCtLci9mVlNjajVlNHE1eXNwcFBaK3kyS1lnc05zeTNHNyt5cDZyZGxkWTl4NFVZOUNYd0g2RDRDcGw5ZFpsV2Z0TkJQWnJGQWRWL3MxY3RhU2lkZHlHaTkwRzJVL1NHMkxRK1RzRUlBQ0J1UkZBWUovYmpESWVDRUFnbFVEZHg4UW1DZXdXVGYzQnNuTXF1QTNMMTVjNG5SUGJFQ0w3SE1YMXhaekVmUE8vVTVLdER4MklMcGI4WG1YUjFZZFdWUi9ZWTFwVFhWeVBwRnIyelZsZ2o0bG1kZXZsZFpKc2daNlNFTmhUS0RYUHM2MGt4eHdaWTNMd1FBZXFuc3BoNVNyRFc0ZEEwUmN1Z2Z1N3NFOWFNQ3hMdVFUMnV2MHV0eC8wdnd0Qkw2dUN4amZaRDNLc1Y5K0NzNkZGMlhQTE42MisxS0pSdjV2WTVWOWZhOWd4VFh5d1d5YXdkK1Zud2RqaStHcnliYk9QSmxwaW02SGRvL2pnT1NVMUVkajlidUhEM0FOS0tsNUhQSmU2dzZveEJPMU40VThlQ0VBQUFyMFRRR0R2SFNrVlFnQUNFeUZRSjdEN1E4dlhtdjJoc2VyVGV6RThmekRZd3RuK0R6OFdmRFgvZENKalgrM213eVVkTWRHK0Q5SHRNUW1pVmVQTktiTFBXVnhmOExULzJ6ZVgrUDlmL1AwWGtwNWFYRXQzSUs4eWkwdS9UL2tEL1RrUk4wdGo4KytQd0w1bGh0dTZpRUZnMzNKVHcyNGFsdE5VTE5qcmhOd2huaTExYlV6NW9OL3VMQnhmb1N5NHM4ZnNlQW5lVDZ0aWRlUVMyRjlWSTM3bTVoMFQyRk1QTE5lOUxwdTBieUhjNzhjWEtaNkxud3YvMndIWXZ4QU9qNXJHYXJGTEtydWZLM001TkFaK2RZZEtaZHlhQ093dWI5ZDhqajlTcHQvczI5RkZUcE41clJQN1hZKy9uL1pKUEpSbzBpNTVJUUFCQ0l5ZUFBTDc2S2VJRGtJQUFwa0lXRHozQy9sT1BkYnZnRjIyTUxGWWJZdVNwaDhQUFhhbFVWV0xqeUQ3Ulo5VCtzSEtDLzVYSlgxemFZQStTSEVReXp1SEFHTjFZeis2c0dDMk80MXpSZ3dvaDhpK0NlSzZwOVR2UXc1eTZTdk55LzVOeTZiN0cwRW8rRzM0bzROdTJtcmRILzkxeVZhQS95anA2eU5hUXdqc1d5WURnYjNkb3B5Nml4Z0U5bmJ6WGxmSys2ZGRWanl3SXRPbnd6TzN6aUFobDhCZVYyOXVxOXVxMkJFTFRHTVFpUHRlRGJhSXQ2QmVGaU9tclFoYmRVaXk3a005MzRUeEliMzl0YWVtcGdLN0xmaFBxVGk0R3RMbmVlejdDZmN3cVN1QWZCQ0F3T3dJSUxEUGJrb1pFQVFna0VnZzlyR1RXRTFsTmdmaCsrY2krTkNuSmlDMCsrUEhnZXBzY1RKMDhqVjRDK0grdDlQaVpzQ3lsYkFGeVdWaDNOYkVwMGs2ZDZtelp4YitYbi9Uc3ZPeFFHeUxhbDhwNldFOVhuZHUyZDNhWW4ySzdKc2lyaThEdlgxaGlYNXNqWHVYdG5QbVd4RCs2RXh4TTlPMmpUYmxFTmkzVUVOZ2I3TjZxZ01qcmx2c1NoME5BbnNxcWZSODk1TDBwZ29yVzF1SmU0LzlaS1M2SEFKN25mV3p1NU43emNiZU9lY29zTmNGZHJXL2RQdE5iNW9jdDhLeFhsYlRyOE5OR2gvZ3JDUHRKY2x4Tlpwb0swMEZkby9yOEJBWFpuV011UStJbHR1ck96Z1pzaC9ybUdmYWhBQUVJRkJMb01sREFKUVFnQUFFNWtSZ0tLdnQ0eVE5ZElUQzJ1cGMxbDA5WGMzNzR5VXgyejVpYlFXK0VMc3RsdnY2N3lMWmYrVlhsdjUvZndUWjBuOXM2ZXBGb010M1YvamdYTzdyRklKNHBvanNKNFFEbFRKM0p4N3ZKb3JyaTNuMlRZNlhoZ0MzWGRlcEQ0d3NJcnhvcEFjekNPeGJaaGlCdmQxS3g0SzlIYmVVVXJsZGxxVDBvV21ldjVGMGNySGYyYmQ5V1VvTjdweERZSzl6QytpK3JsdGd6OTErMDduc0kzK1ZHT3k2N1pidDdTMGE4VzJ4a3lxRTdIVlpUdnNXbTlkOW1ROTNEOUZ1dE1vczI5c0k3R01ZZjkxN2cxM1llRzdiR3J5MFdCSVVnUUFFSURBZUFnanM0NWtMZWdJQkNBeExJT1lQczgvZVdHUzJWWmRmd01lYUZsYys3VFBWcml3K0hxenZMWmJiM2MyVWc2MmxNcmZJYnIreDE2NHA4UFRDaGNnaEl4VkxsN3ZkUldUZlpISGRERzNwK0tEZ0o3Z3FJRjNxbXZKdjZhRGdqbXI1eGtWcStUSGtxOW9yVXkwdXUvZ3BYK2Y0K3hLOHF2ZzFDY3BYSldqNDVzN1phNFRrQUlhMnpQVy9sMU5mN0hJUERRdjIvZ2pIYm9JMWlXV3lEb0hkdCtJY1M4RHZhem5TcFlML2JGdi9scVdwL0daUzJkVGRHT2hpYlY1bkhHUDNqSDdlRHBtc3BWZ290MFYrV2ZKejhoWEIvZHpxMzlzSTdIWHVXWVlRdHk4YWZLemZwV0s4ZHFYNDhpRW5nTFlnQUFFSWpJa0FBdnVZWm9PK1FBQUNReEs0U1JDOTdEZHhpR1JMVnJ0Z2FXT3hNMFQvM0lZL0FHMDFOMVVoc0E5T041VjBZb2tGbnVmdkFjR1Z6bFI4NjdjUjJUZFpYRGV2ZTBwNm1hUkw5N0dZbHVyd3RmVURnbXVqbnF2T1hoMENlemZFT1FYMmJqM0xWM29xWXVFTFF1eUZmQ1RhMSt5Ylh2ZFp1UkhXdnJhOEplMW16dUtteGJXeVpORjZsM0I0bjlLVGRRanNxUWVHS2Ywdnk3TnVDL3EyL1c1YnpvRnU3U3J4cWlVVmREbk1xRHVvK0doaEdHTGg5NWR0TzkyaVhOMnREYnMrOU8xUWk5THZMS203amNEdWFtemtjWEJKZlRhRThRSE9sMXFNSTdXSTU5T0JhMjJRc3BxR2FEKzFuK1NEQUFRZ3NCWUNDT3hyd1U2akVJREFDQWlzV2xXdUJzUmM5Z1Z1MGZIR0lmamg1UktDR1ZZTmJ3b2krd2ltWnUxZDhQVldCNnRhV0dWTzRRWkNGVFEvNXg4bjZiQWFxZ3QzTWM3aVFGbitJS3hLVTNDUjAyWUIyUzJNQTludTJxWndZaGwvYkQreGNML3p3Z25jZ0ZnZUVnSjc0Z1JYWkVOZzc4YVAwdU1uc1ByTVhPNnhENlQzRGJFdFVrZVNRMkJmdHcvMFRSUFk2MXladEExd3VsZy9WWUZPaHhaNFk0Rk4zeElPeWZ4TzFhZkFYdWNEUGJjRmVaMDd5U0VzNkZQM0VQSkJBQUlRV0FzQkJQYTFZS2RSQ0VCZ0JBUnNVV0tycXpiWDZ5OGs2VHFTN2xiNDdieGZZZFY4elFiamNiQk9pM2pmYmxDR3JNTVNXQmFsUDFOWTNkMWo0dk9WSXJMYkpaRFR6V3RRejFWY3YxSDQrTjF1b0dWbUlkOGZ3ZWNNMUY3WFpoRFl1eEZFWU8vR2o5TGpKbEIxNjJ2UjZ6YkJ3UkhZeHozbktiMnpoYlV0cmN0U1c4dnRSVjIrMmVIbmFGa2EwZys3bitOSFZmUmorZFpHbFp1MHRod3VHL3pRMi9Cbk5lVVd1ZXY4NnVjVzkxUFdIWGtnQUFFSXJKVUFBdnRhOGRNNEJDQXdBd0xlUjY4djZUbVMvaUZ4UEF1ckZsdTBrOFpKd0ljb0Z0WnQzVzJycUttbkZKRzlib3h6RmRmOWdmcGVTZlpyV3Bmc005WStzLzNQZjY4Y3pObTFqSzBqN1FMaHZwSnN1UmRMYlVTbldKMjUvbzdBM28xc1RvRWRIK3pkNW9iUzNRaGNQdXlmZHJsWGxoeUQ0dlpGb1BjZk5Xd0dnYjBoc0pGbHIvUFQvWWZDUGVQdGl1ZWszYm0wVFg5ZEdLcDhKTGcxWEszanRjSHdKYmNyUDk5bWZiOGt1NGdwU3o1Z09GU1MrOUczd083MjF1RW1wazdZSC9yMlFOdTFRemtJUUFBQ1dRa2dzR2ZGUytVUWdNQUdFZkIrNm84R3Y5ekhMR0VYZmhrZFVKTUVnYUVJdEJYWjV5cXVwd1MxOVNIWWs0Ti9ZWXZzS2VrYXhZZS9tZTBaeWZ4aVNZOEtIK0FwOWE0clR5NkIzUWVTNzJveHFDcFhEMjJ0QWQyRk1rR3ZMei9pT1FYMnRneGJZQzh0VXVYMm9pOTJmZldUZXZvbjRFUG9JeVU5c0tKcSs1Qy9Zd2lXM3JUMUhBTDdsU1NkV2h5U09raG1XVnEzRDNiZmJyeUZwRE9hd2hwaC9ycEFwSDJNczA3by9YSTQ3QjZDNDhQRHU4SHFGS3dlTE9VUTJOZmhKcWJxV2VieDU3YWNIK0V5cDBzUWdBQUV6azhBZ1oxVkFRRUlRS0JmQWhidDNpM3BCcEZxN2V0Ni8wSzhzelVQQ1FKREVXZ3FzczlWWExjNDlJWndTNkdLZlJmM1FPYnMzN2Q5eGJxdHN1U0ROZ2RWdFQvYU1TY0U5bTZ6ZzhEZWpSK2x4MGNnNVRueWtCQXd1azN2Y3dqc01SL29YUUp2cG94eDNUN2dVL3JZVjU0NkZ5NTlXWmhYdVNxeHhiZ0RuZnIyWWU3a3czUmIwaThIY3ZWejNZZnJ5ejdYY3dqc3ZuWG5RNkdkU2dhWlMrdytzT1kzL1lqaUp1QkxjZ09uZmdoQUFBSmpKNERBUHZZWm9uOFFnTUFVQ2FSWXh0cTY2OWFTL21jQ0EvUjFYMXNNelRYWnpjSnY1anE0a25HbGlDTXVObGR4M1dPem45YlgxOHo1QjR2ZjV0NDl1QWU2YXdpWWUvR0t0bXh0ZHdkSjN4dngra05nN3pZNUNPemQrRkY2ZkFUcWdwcTZ0MTFkWUsxRFlNOTk2MkpUQkhiSE52S3pkWitLWmR1WGovUzZZSnUrV1dIQk43ZWJHTDlMSFNIcFlVdGo5UUhDZzFZQ21lY1EyTjFrMVNGRERuY3RubGNiQnZtM3Y1cW05RDB6dnQyVUhrRUFBck1pZ01BK3ErbGtNQkNBd0lnSStPcitjWksycWVuVFZBSUNWWDBjakFoM3A2NnMyODFDcDg2M0tIeUpZSVhrRDkyNjlJSHdNWFZXaXpiR1hPU0trazZ1dVdYeXRTQjZuOTdUSUdKaTFMTWtQWFVBTWFEdGNCRFkyNUxiVWc2QnZScy9TbytMUUN5b2FSL1BqVTBVMkhOWkhRKzllc3FzdWhkOTZGUDR0ZFg0eHlUWm9HVTFmVDhZc0h4cmdNRTdNUHdwa2k0c3llNXZkcFgwN1pWMmN3bnNqdmR5a3FReVBhZnY3NHM2M2ljR3EvMVVOM29EVEF0TlFBQUNFRmdQQVFUMjlYQ25WUWhBWVA0RVVseFF2REZZMHVhMnN1bEtHNEc5SzhIeGxMOU1jRnRpNit5VTFJZFlrdExPa0htcS9LYTZEMlhYdTd2MnpYdkJLNHFQN2dNcUtocFNER2d6RmdUMk50VE9LNFBBM28wZnBjZERJSFk3cjR2ZjllVlI1aERZNnl4dzNYYWY0bS9aak5VRjVuUitCOUIya095cEoxdXV2NmxpRUgwZUlsakRlRTNOYzNYZllIR2RtK2ZGZ2pITjdwTGM1ckVsRGVZUzJCMVh3T0wrOVVyYTdKTzFxNjhUODNFUGszdVZVVDhFSURBWkFnanNrNWtxT2dvQkNFeVFRTjBWVmcvbm84Rlg1QzlIUGpZRTlwRlBVR0wzbW9ycmkycm5KTEtiZ2EydGRxNWdsc3NTNjRiQlYrdTJGZTJPK1FNVmdUM3hCMWFSRFlHOUd6OUtqNE9BOTA3SGk3Q0ZibG5xTTZaRURvSGRmYTZyOTFmRnphYmJTUHBzSnR4MUFTTGQ1Sk1LSytobloycDdxR29YWXJPRDI1YWx2cTJxZmZ2d0hRTS95OHVhczg5NUM5Q3JybUVXZVhNSjdIV0hESDBmR0ZXNW84RTl6RkMvTHRxQkFBUW1RUUNCZlJMVFJDY2hBSUdKRXFpN1V1a2g1ZmI1MlJjMkJQYStTSzZ2bnJiaStxTEhmZmtrWHgrQkxTM0hSSTVjVm04eHY3UjlXNXYxeVJtQnZSdk5uQUs3TFY3ZjE2MTduVXJiM1pUOUxkOXNwWmFwUE5zNkRYNkRDdnNXanYxYVA3Qm16SStYOU55ZVhGM2xFdGdQTG9KT0gxSXpCZ2ZIZkcrbWVZMjlSL1V0UG1jYVJtMjF5KzVTVmpQMkxmaTYvam9MN3Q4RjBkdEJTSE9uU3dkM2tCYWJ5MUl1Z2QxdDFSMHk5T1h2M2pHWTdJcm14aVdEeTJXVWtIdk9xQjhDRUlCQUZnSUk3Rm13VWlrRUlBQ0JQeEd3K0dEcm1pcUxMMXV1TzlEcGY0MmNWK3pEY09UZGozWnY3ajdZVThSMVc4ODUxWWtQY3hEWkR3eis1OHNXeFE4THNmS1d3WTlxZE5HMHlHQXJ0Nk1yeXRsTmpFWEtNUVk3elNXd3R4V0g3VVBmQnhKL3VjTFN2dXhmMm1KZVhNVFdlYXR1ay9vU2lYTUs3QzJIbTcxWVgreXlkNVFHb2dSU2dtSmJXUFM3amtYTlBwSURQKzlRVWRGUENxSHYrSlVna3F0WkhVZkR3U2RYZzVmWDdmK3VveTlCc3F6cnNiWnppdnQ5ekVtc2pyS0FuOHRsSENCemYwbC9pRlhVOE85K1ovSEJTVm5LMVdiRExpcW53RjduODk0M1R1eXlweXZ6T3NPRU1kKythenBQNUljQUJDRFFtUUFDZTJlRVZBQUJDRUNnbHNBNnJ5VDNOVFZWSHdmK21INnJwSFA2YWloalBUN3NzSURtUUZTcmFjNEN1OFYxZjJUYVhWRlZXbGdlT2lEdnYwU3VxVTlkWkgrVnBQdFhnTWp0c3FudUk5VWZ3TGNMYnFNeS9neGFWWjFMWUcvVm1RRUw5U1VTSTdBUE9HazAxVHVCU3daQis3YTkxNXl2d2c5SjJrUFMyU3ROM0RrY3psVzFuTk5OUzUwUVBCVmppN29acXhONlhlNXVrdDZaWWNycnJPYjlqcnFMcEk5bmFMZEpsVGtGOXJyWUFuMFpEVlRGcmNudFZxa0pZL0pDQUFJUUdBVUJCUFpSVEFPZGdBQUVaa3hnemdKN1h3TFVFTk4vbFVKay9rUVJGR3Y3a3NibUtyQTNFZGNYZ1hZdk1HT1IvYUxCaDdBdEJjdFM3cUREZFd2US9SbnJPa1JnNzdaREliQjM0NWV6ZE4zek9XZTdLWFdQUmJ5YWs4QWVDelNhNnhrUUM3QjZtaVFmWU5nNmY2cXBMbmo0bDRQUWZVYUd3Y1g4dnI5RmttK1AvVDVEMjZsVjVoVFkzWWU2MjNGZDNkN1Z2VGRWSFdTbGNpRWZCQ0FBZ2RrUlFHQ2YzWlF5SUFoQVlHUUVFTmpITVNHYkpyQ25pT3UrVnYxdmtzNWRtYUs1aXV3eG9laDFrdXkySkZlS0NldzUzUk4wR1JNQ2V4ZDYxWDcvbTZ3MzN6STV0RnMzQmkwOWxjTlhCUGI0c29qdG0vRWFoczlSSmZ6WlovZXBrbmFzNk5KbmlyL3ZMdW5NbnJ0OGhlS0drdnUwVTBXOWZibnk2TG5ieWRYVitVSjNKVTh2L3MvVGttdHJubkd2Y0p1eVROZHc4RjNmNEZ0bnJJcmNBdnYxdysyM3k1V2c2K29teDcrVmp4V3U5YTVjVXZjVEpCM1dmTG9vQVFFSVFHQytCQkRZNXp1M2pBd0NFQmdIZ2JvUCtCeEJuM0tNdXVyallDb2lpcGxza3NEZVJWeGZySjg1aXV3eG9haUo0Tm5tZHhZVDJCOGo2UVZ0S3M1Y0JvRzlHK0NjRnV3K0lQdDB0KzUxS20zcnhpZEx1dTVLTFZONU5pQ3d4NmMvdG0vR2F4ZytSNVhBSHJ2RmxPdWRMR1k1bjlNMXpSRDA2NnpYZnlEcE5vVi8rNjluN0lqZmVSeHNjK2VLTnRadGFaMWJZSy83alo0ZVlzczR6a3ViVkdVZFA1WWJObTNHUkJrSVFBQUMyUWdnc0dkRFM4VVFnQUFFb2tGT3B5SkNJTEJQWnpIM0lhN1BWV1NQQ1VXNXJRaXZGdHdVWGJWaU9XMmFpeGhiaWE3NlNFNzVwZG5kZ2c4clZwTmpRVmdnYTVOc25YZWhsWUo5N2M4NUJmWjFyNW1xMzFSZjdOck1aWk15Q094eFdyRjlNMTdEOERucUJGWGYzS29MNXAzakpsR2RDdys3WjdQVi9QdUh4OVJMaTlzVkF2ckpSUUR2YTFYVWRxUWtCOEpjdUtIcnBkR1NTanh2cjYrcC9DRTFBYzV6OVdsUmIyNkIzZTNVM1hKcTYvL2VPdEZySkIxUUFtamRoeGE1NTR6NklRQUJDTFFpZ01EZUNodUZJQUFCQ0NRUmlBbHFId2lCbjhZZUpCU0JQV202MTU3SjRycEY0bDFyZWxMbEZxYXF5TndzMmVzRXRWenVBUlpzYjFYNDJYV1FXQXZFWmNtKzRkKzc5bFYwL2c3a3NtQnZLdzVYM1FUb2NsMjliRjMwSlJJanNJOXdVWWN1SWJESDU4WUJ3bDh0NlJieHJMM2xLRHZ3V2xSdWx4KzJpdmEvcTVMZHdEaVlkZG03MVc3RldFNHEzSlpVZlFPL1Z0TDllaFNFNjBSSzl6K25mL0xlSnFTaUlvL3RHZUVXUzFtV24wdTZkUkZnL245eWQwVFM1Y1B6OHlZVmJRMWhTVjgxekNFRTlycjNpN2FISERZR3NIdVlxNWNNck12emRvRGxRQk1RZ0FBRTFrTUFnWDA5M0drVkFoRFlEQUlXa041Uk05UWpDb3ZMZ3lhQUFvRjkvSk9VUTF4ZmpEcEZaUCtJcEh0Syt1SElVZFZaTCtaeUQ3QkFjbUNOQmQwdmd4RHhYeVBraDhEZWJWSVEyTHZ4eTFuYUxwbjJ6dGxBaDdvdFR0cnkrUXNkNnBocTBicURqNjZXczNXaW9YbDFkYW14eXZ3YXhhRzNuNDlWTjVmNkZ2U0huUE1iRk1GTFQ1RmtIL05seVFjekR5NEUrRDhNMUttWUZmdng0VDNsMXdQMVo5SE1FQUo3blovL3RrRjA3YnYrUFNXSFViaUhHWGdCMFJ3RUlEQWRBZ2pzMDVrcmVnb0JDRXlMZ04wTnZFSFNQV3E2M2ZiYTV0QWtFTmlISnQ2c3ZSUngzVUhHZkMzKzk4MnEvblB1dVlqc3NVTXZYMlYvU1V0R2RjVXVKdWs0U1hlc3lOVDJBemhEVjg5WEpRSjdOOG9JN04zNFVYcnpDT1FVMkdNVzVhYTlyeVFIaCt3ajdWUEVLSGhUUlVWMm0rS2JTeWYwMGREQWRjVGVjZGNod3FhNE03SXJsZWYyZUVNaEJmc1FBcnY3Y1hod3g3UGFwN1p1aUtycTYzcklsY0tNUEJDQUFBUW1TUUNCZlpMVFJxY2hBSUVKRUxoRCtHamFwcUt2RGpqa3E3UGZtc0JZRU5qSE8wbVhrL1JXU2JlcjZXSlhjWDFSOVJ4RTloM0RsV2U3SUNoTG53d2krRms5VDdsLzYvYXhlK0dLZXNkc3hZakEzbTB4SUxCMzQwZnB6U09RVTJBM3pTckwzQVhwdmdURVdQRE5YTStiSVZiTXZjTEJRWldXOEdKSmp4cFl5UGE0WSsvZXZobmlnKzVQRFFFcHRER1V3RjVuUVBEc3dzREN3WFJUVTUxRlBPNWhVaW1TRHdJUTJEZ0NDT3diTitVTUdBSVFHSUNBL1JXK3I3Qmd2M1pOVzIxOUlnN1EvZk0xZ2NDK0R1cHBiZDQ0K0IydHVxTGRsN2krNkUxTVpGL0h4MnNhcVMyNTdQL2NnZEJzVlZpVitnNkdsbkxEWU15M1dSRFltNnl3OCtkRllPL0dqOUtiUnlDM3dCNFR2azE4L3lKdzU5RWQwY2RjbHVTNk1kV3gyOUhpT3hRR0lvNGg1QVByc3JST2YrZCt4cjhzK09DdkdzalhnaEJ2ZDBCRHBLRUU5am9EZ3FZeFpxcGlGYXpqWnNJUWMwUWJFSUFBQkhvaGdNRGVDMFlxZ1FBRUprWmdFV1F3aDEvSUZERnRhaStvQ096alh1QlZJbnZmNHZxQ1FwWElQblp4ZmRIL21QVmluK1B3TmZxbjFnU0JjNS9HSHVSdTdnTDdaVVBRUS8rT2xsTmZibnR5Q3V3K3lQMzJHcmNucis4OVNud3c5eFVnZG8xRG8razFFc2d0c0h0b0R5OENZem9PVGxYNlpnZ1kzdmIzRlRPMCtMcWsyeGRDOEhmWHlMbE4wekhYTUs1ejNSYk8xeXJZZmxpU0EySlhKUjhRM0wyd3N1Lzd0bHBaZTBNSjdCY05nZTd0ZG1nMS9hN3dsNzlMWWIzLzhjUkp4ejFNSWlpeVFRQUNFRmdtZ01ET2VvQUFCRGFSZ0FVUFc3allGK01IZTd6Q2FyY1R0bmphTlFKMVhWZG4yODQxQW50YmNzT1ZXeFhaYzRucml4R3RpdXg5aXRLNXFhWDRhYlhvNGV2V24rL1FHUXNSdnBMOXI1RTYrcmFZNzlEbDBxSnpGdGo5SHZ3NFNZZVZqTHd2TnhFNUJmYSs1N3F2K2hEWSt5SzVtZlVNSWJCZlVkTEpraHlvc3lxMUZXRlREQzNHdnU5WE1YbU1wT2ZWTVB1MHBEc1h2c0IvdXVhbEc3czk0TzY5VXRMRE9zU21TUjNpVUFLNysrUHZta01yT3BaNjhGRjE2T3hxVSt0SVpVTStDRUFBQXJNaWdNQStxK2xrTUJDQVFDS0JaY0hqRTVMK09maGpkQ0NnTnNsN3FYMWcyNC95ZHBFS2hyNmEybVk4cTJVUTJQdWdtTDhPaSt6dmtmVFNqZ0ZOVTN1NkVOa3RVTm9xZkVpZnBxbDlyTW9YODRudWNyNXBjbjlKeDdZNGhMTnZmQi9pMVFVNWRodGpFU1BxZUU1TllOOUowaHVEWmZlUEpObFMxTmFvcThraTJJR1NibEl4K0ZkTGVrRFhoU1lKZ2IwSGlGU3hVUVNHRU5nTk5FV0VQU2tFUGYxWjRneDQ3N2R3dTFkTi9yYkNmV0lYc21XN3FhUVRKVzFiMGNJZnc3dUFiOWFzTzZWWTJydVBRNGpzUXdyc3R3cUdRNHVidXN2ellBTWd2OVBZbXIwdVZkWFIxQXArM1d1QTlpRUFBUWdNVGdDQmZYRGtOQWdCQ0l5QVFKbmc4UTFKejVYMEg1TE9TT3lqWCtBdExENmpLSGVqaERMKytOaFQwanNUOG80cEN3TDdtR2FqdmkvKzhEMW5BSXVzUlM4c3NsOGtpTkhUb1NUNS9jZVdXQTc4RlVzV3dYMEk1NEIwNTBZeVg3N1lQMnlaZUhCaEZYMnhTRjRMK0hZUjRIckhtc3pwSUVrdjFCWm15eW5Wd3J0cS8vQU5nWGUxR0xpdi9mdGdkUHVWc2d2THVqcnJ1eWJOV1h4N1E1TUNGWGtSMkh1QVNCVWJSV0FvZ2QxNzlKdURtNk02d0wrUTlOQ1E5L2NWR2YwczlINStWQkhuNDVvMWxVM3B0dGZ5TUdJdWI1eDNiTGN6VS9yc2Z2c3czTSs1cXJudCt1TWJVbUJmRGs3cThidzlHUDk4Vk5MWmlRTTVKTHpEckdhZmNsRGV4S0dURFFJUWdFQTNBZ2pzM2ZoUkdnSVFtQ2FCS3NGak1Sb0xsTytYZEdxSjVhT3RRbXpGczN2a2F2RXFHWXZydGh6eGgyTmJTL2wxMFVaZ1h4ZDUyczFKd0JiTXg0UkRzcFIyL0xGcXY2NGZLM3kzZm1HcGdBOFliaEZjUTEwM3BhS1E1N0dTWGpEaS9TQVcwTllmN1BiMStzdkltSWNXMlAxdWEwdTllemVZaTlXc2ZmbEh0b0Juc2VKUkpYMTVuYVQ3SnZheDd0cC9ZaFdEWnNORnpLQzRaOWZZVUFLN3dhV0tzTTc3NnlDeTIwTDd0NEc2M3dsdkhxemMveUl5RTM0UHZHZndrejJsU1V0eGVmUEZjTURnVzBOamhpd3NRQUFBRGhoSlJFRlVTajdJUGE0d2hOa20wcW1YaDMzYWM5eDNHbEpnOS9QUFFkTy9VandEdjVwZ0ZMQTYxcm9EYXJzZWZGcmZjS2dQQWhDQXdKd0lJTERQYVRZWkN3UWdrRW9nSnJDbjFwT2F6eDlWajVSMDVJakZ0THF4SUxDbnpqVDVwa1lnUlRqSU1TWUxwcjR4TTliRHRoVC84ZTc3dnNHRlRwdjlJNWNGdS92U1ZaRHV3ejl5ekZXRWIwdFpiRXV4bXF3YWp3WDZkYnBqdUVSaHJmdDZTVGRiV1FBSTdEbDJqYzJwYzBpQjNWUjNLd3dtM2xMaitxUXY4bVBmOTh2RzZXZUIzMTBmV0FQQnJrUE04Q045Z2VxeG5ybzRHNnZOdkRXNEJlczc4T21RQW50WGRKNUh1MFZhMVlod0Q5T1ZMT1VoQUlHTklJREF2aEhUekNBaEFJRVZBa01LN0hZRFlSSEtyaERHS3FiRkZnZ0NlNHdRZjU4eUFZdUVMeWw4ZGg4d3dDQXNwdHF2dDBYSnNlNEhGbFNlVTFpbU81aGRMS1c0T3hqYWd0MTlybW96Tmg3Ly9Ta2g2R21LOEYxVjN3NUJzSE5jaExxVTZwcWdTbUJ2ZTBpUndpRWxUMVhBWUFUMkZIcmtxU0l3dE1EdWZ0aG51bTgwZWYvTGtYSUhIcy9SNTlndHBrV2JZejg0U0Rra1dJemxNeUYyeXJkN0JEb2xnZjN3SWtEdEkwckdqbnVZSGhjRVZVRUFBdk1sZ01BKzM3bGxaQkNBUURXQm9RVDJqd2MzQlgyK3FLOWpYaEhZMTBHZE5vY2tZQ0hCMXNBV1BITUpMRitXZEs5Q3lQbnZJUWZXc0MyUDNSL1lEMjVRemdGRTl5akc5cVdLTW4wTDdDbGRhN1BIMjllKzNmYllDclBMNFlmamNUak9SaXpnOVdJY3p5L2NUVHd4WXNtT3dKNHk2K1NaQzRGMUNPeG1aeC9xRG1wdFA5WjlwU2tjcXBhTk5kWHkyemRvZkRpUjZ0KzdMNjVONjJseVcrMG40Vmw5Y3ROR0dqNERGM0ZEZW1xbWN6VlhrblJLY2RCMHZaS2FjQS9UR1M4VlFBQUNtMEFBZ1gwVFpwa3hRZ0FDcXdRY2dNb1c1ZGZQaE1aQ21sK2NqMi9oL3pCVGx6cFZpOERlQ1IrRkowVGdhcEtlMmJNMSs0L0RmdkNtNE1OM3JEanNML3lJRUN1aWFSOHRTTmlhMm9lS3ErbWlSZkE3KzNWZFRXY1dYSDdUdEtIRS9ENHdjY0JaLzl2SnZ2SExSTE0vRk5hSzloMzgzWjc2MHRiVmhBUFIyUVhEenhMSFJ6WUl6Sm5BdWdSMk03MnlwSmVHZ1BSZEdmdXc3cCtLNThuVWpDeXNEenhhMHZNaUFMNVd4Q1M1ZzZUVHU0SWFxTHlmNy9iSEhydFo1TzdZdGFNUFBoM2d1OHR0SnRjMUZRdjJPeFV4cHQ2RGU1aUJWaVBOUUFBQ3N5U0F3RDdMYVdWUUVJQkFBZ0ZiYXZwbDh1QVMvN0VKeGMrWHhTL2pKNFNBZHI1S2VXNmJTa1phcHVyandENFo3YlBTUVdISG51d0daRzlKRnk3cDZMcmRMSXlkM1NiMnorTHNRWkxzaXpzV3VLNkt6eWVLOWZic3NDOTAvVURQUFFmK2ZkaDZmNythaGw0ZExMT3JBc1o1RDN4U0lhYS9lT1FIQ1RsWStuM2FOeURNcUNxWW50MkZmVkRTWFNzNjRFTUtCMloxZ08wdUZ2UTV4a2VkRUJpU3dEb0Zkby9UditlL0NxNmkvSjdZTlBsZDBNRWdQelhCMzNLcXVKN2lIcXdwdHlIeU53bHE2LzcwY1JOMUNnSzdnL1hhZGQwK0paT0FlNWdoVmladFFBQUNzeUNBd0Q2TGFXUVFFSUJBUndLMnNQeS94ZFhJWFlyZ1ByY29SS1MvTGR3a09FQ2RSYWV5WkNIcEI0VmJCUHRxUEZYU3V3dGg1S3M5V0xsMEhFYTI0bDM4R1dmclZJOFZJN0QzQ0hObVZmazk2U3JCZGNDZHcyR2NyYkdYTGJJWCs4SDNKSjBZUkZTTDY3bXNzL3RHN0t2enJ3b0hVRlYxdjFMU3d5VFo0dHUzYzN4d1VKVnNzVy9MUC9zem5zTGhXMWVldHBLM3YvckRhaXF5R0hVUFNSK1M5SWJ3djZ1eTIxV05mZUJPVVp6cnlwTHlFQmdiQWUrUHUwdjZ4L0IrdVAzS0lab1BUKzBteTc5dDMxcjhzS1MrZzJRT3hTVFY1N3FmZVE3US9MYWhPdFp6TzAxRmRzK3hENDlmMVBJOXY0bkF2bTN4TFBGdHNxR1RyZnZmRWQ1M1Z0dDJrTnREZXVxUWpZOStPak1qcEo3UVVBMEVJREFIQWdqc2M1aEZ4Z0FCQ0VBZ0x3RUU5cng4cVIwQzZ5Smc4Y2hDZUoyVjV0SEJKL3RDTEU4UjVEMGVpekMrNGZML1Nmcm9CSHowdHBrREN5RVdIaDZWSUs3Yk10MHAxUmZ3TnlRZEpjbjh6MmpUT2NwQUFBSVFTQ1NRR3R6YSsvcjlKZm1Xd1pSdjJsaGt0M0hNRFJMNU9Kc1BQeDJrL0FzTng5NUVZSys3dmRHZ3E2UE5TZ0RzMFU0TkhZTUFCUG9nZ01EZUIwWHFnQUFFSURCdkFnanM4NTVmUnJlWkJGS0UzZzhVWXNMZFN5d3lVNFQ1VmFvTFMwOWZOLy90MGg5dDZiLzYzMkl6NG85MCswMnZTbllGNVZ0SkY2bkpZeGNRdnAxUWxhNFliak90L3QwQlIrMVAvNUtTWGhPeFJxK3k5TFNmNXpkTHVuVnNvT0h2UHR6d3JZaVRRakJaQjhxMWk2N2w5R3RKdHBUUGxUemVTM1Zrdm1PNDFmRHljQnNpVjErcEZ3SVFTQ2VRZW1qcUdyMy9QYmVod0p6ZWsyRnpOdDJIM2J1VW9OU3JvMEJnUDQ4SUF2dXdhNXpXSUFDQmdRa2dzQThNbk9ZZ0FBRUlUSkFBQXZzRUo0MHVReUJDd0g3bTMxdFk4ZDJrSWw4c2dKMWRhTDJrNTRDd1k1ODBDOWdXeGY5SFVwM1BXby9ENHJwOXFsdElMN1AwYkNKcWpaMUxrLzd0RzI1Tk5DbERYZ2hBSUErQkhRb3I3cmNrQnY1MHpLSi9tNWw3anliNzhNSlZXdE9ZS2dqc0NPeDVmcjNVQ2dFSWpJNEFBdnZvcG9RT1FRQUNFQmdkQVFUMjBVMEpIWUpBTHdRZUhOeVFyRllXRTljWCtlMnoxNzU0SFNEMTByMzBhTnlWMk1mK25rdEJYRzlleE80NHBTSjRjb3FscC9uWnQvM3pDbGN6ZHRFdzkvVGxFT3NFbHpkem4ybkdOd1VDdDVkMGJIRlFlb1dFenM1UlhGOE0yM3V2OSt0bjFuQndBR3ZIeHZCTm9hWUpnZjA4WWxpd04xMDk1SWNBQkNaRkFJRjlVdE5GWnlFQUFRaXNoVURWeDhHVVhwVHRDc0l1Rmh5Z2JEVVI1SFF0eTRwR1IwREFibEJPWHZGRGF5dnRPNFlnbTZsZHRMaitGRW1QbkxsUTdBTUp1emRacENvcjlxYVdqZzR3WjNIbmdGVGdFODMzOUtMZlQ1dG8zK2syQk9aRzRLN2hoczNGSXdON2JIR0Erb0tadUlXcEdxbzFFYi9yMnYzWEtvOHFWMm1wNndHQi9UeFNVL3B1U0oxZjhrRUFBaEQ0TXdFRWRoWURCQ0FBQVFqRUNDQ3d4d2p4ZHdoTWw4Q3lGWHVWei9EVTBkbHR6RDBrUGFFUUtxNmJXbWdpK1g0bzZaYVN2cm5TMzFVcjlpNWl6SGFGSC9WL0xvS2FQa1NTQTZqT0tmMmdPTXk1amFTdnoybFFqQVVDRXlkUUo3TFBKYUJwa3lteXk1dzNTdksrN3BSNm02dXVqU1lDdXdQSTd0eWt3eFBMK3pOSmgyYU9Gekl4SkhRWEFoQ1lFd0VFOWpuTkptT0JBQVFna0ljQUFuc2VydFFLZ1RFUVdMWmlUM0Zya3RybmkwcTZtYVRiQldINk9vVXJHUWVWbTZvcmxHTWs3VjhTbkhQWml2MkRoWC8ydlNWWlJPaVM3RHJHdlBZTFZwVTNrTFJObHdwSFVQYkk0R0toekIvOUNMcEhGeUN3c1FUS1JQWmZCZmRmNzk1QUtqN2M5RzBzLzNPM2hyZTV5bkExRWRnM0VEZERoZ0FFSURBZkFnanM4NWxMUmdJQkNFQWdGd0VFOWx4a3FSY0M0eUJnSy9ZYkJRRzBhUUMzUGthd2JZM0Z0c1htblViZzQvM1RrazZ2R096ZlNYcHBFS1NxOG5UbGRFbEpsd28zQTZwOEpsOGtXRC82Y0NPV3pOWDl2bHpJK0RsSlA0b1ZhdkYzVzZ6YjZ2L2prcjdmb2p4RklBQ0IvQVQyQ3NHSGZRRDZYVWwybmZmNS9NMk91Z1h2bzcvcG9ZY0k3RDFBcEFvSVFBQUNVeUNBd0Q2RldhS1BFSUFBQk5aTEFJRjl2ZnhwSFFLNUNkZ0syK2tQdVJ1YWFmM21aNnZIWDg1MGZBd0xBaENZUDRHN1M3cGZJYkRiVFlsZFlwSDZJWURBM2c5SGFvRUFCQ0F3ZWdJSTdLT2ZJam9JQVFoQVlPMEViTVZ6MlpKZW5GdFl2UDYwQ0c3b2Y0ODkyVnJ6OGtVZ1FmOTdOWjNaazVYUzJCblFQd2hBQUFJUWdBQUVJQUNCNFFqNGR0aERTNW83cnJoeDlON2h1a0ZMRUlBQUJDQ1Ftd0FDZTI3QzFBOEJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBS3pKSURBUHN0cFpWQVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQ1Ftd0FDZTI3QzFBOEJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBS3pKSURBUHN0cFpWQVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQ1Ftd0FDZTI3QzFBOEJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBS3pKSURBUHN0cFpWQVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQ1Ftd0FDZTI3QzFBOEJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBS3pKSURBUHN0cFpWQVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQ1Ftd0FDZTI3QzFBOEJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBS3pKSURBUHN0cFpWQVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQ1Ftd0FDZTI3QzFBOEJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBS3pKSURBUHN0cFpWQVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQ1Ftd0FDZTI3QzFBOEJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBS3pKSURBUHN0cFpWQVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQ1Ftd0FDZTI3QzFBOEJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBS3pKSURBUHN0cFpWQVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQ1Ftd0FDZTI3QzFBOEJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBS3pKSURBUHN0cFpWQVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQ1Ftd0FDZTI3QzFBOEJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBS3pKSURBUHN0cFpWQVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQ1Ftd0FDZTI3QzFBOEJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBS3pKSURBUHN0cFpWQVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQ1Ftd0FDZTI3QzFBOEJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBS3pKSURBUHN0cFpWQVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQ1Ftd0FDZTI3QzFBOEJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBS3pKUEQvQVBHOFZqMHc1eWFpQUFBQUFFbEZUa1N1UW1DQyIvPjwvc3dpdGNoPjwvZz48L2c+PC9nPjxnIGRhdGEtY2VsbC1pZD0iZTFhIj48Zz48cGF0aCBkPSJNIDQ1MyAxNDUuNSBMIDIxMyAxNDUuNSBMIDIxMyAyOTIuNzYiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzI4NjQ5NCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIHBvaW50ZXItZXZlbnRzPSJzdHJva2UiIHN0eWxlPSJzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7Ii8+PHBhdGggZD0iTSAyMTMgMzAwLjc2IEwgMjA5IDI5Mi43NiBMIDIxNyAyOTIuNzYgWiIgZmlsbD0iIzI4NjQ5NCIgc3Ryb2tlPSIjMjg2NDk0IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgcG9pbnRlci1ldmVudHM9ImFsbCIgc3R5bGU9ImZpbGw6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7IHN0cm9rZTogbGlnaHQtZGFyayhyZ2IoNDAsIDEwMCwgMTQ4KSwgcmdiKDExNSwgMTY3LCAyMDgpKTsiLz48L2c+PC9nPjxnIGRhdGEtY2VsbC1pZD0iZTFiIj48Zz48cGF0aCBkPSJNIDIxMyA0MDMgTCAyMTMgNDk3Ljc2IiBmaWxsPSJub25lIiBzdHJva2U9IiMyODY0OTQiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBwb2ludGVyLWV2ZW50cz0ic3Ryb2tlIiBzdHlsZT0ic3Ryb2tlOiBsaWdodC1kYXJrKHJnYig0MCwgMTAwLCAxNDgpLCByZ2IoMTE1LCAxNjcsIDIwOCkpOyIvPjxwYXRoIGQ9Ik0gMjEzIDUwNS43NiBMIDIwOSA0OTcuNzYgTCAyMTcgNDk3Ljc2IFoiIGZpbGw9IiMyODY0OTQiIHN0cm9rZT0iIzI4NjQ5NCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIHBvaW50ZXItZXZlbnRzPSJhbGwiIHN0eWxlPSJmaWxsOiBsaWdodC1kYXJrKHJnYig0MCwgMTAwLCAxNDgpLCByZ2IoMTE1LCAxNjcsIDIwOCkpOyBzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7Ii8+PC9nPjwvZz48ZyBkYXRhLWNlbGwtaWQ9ImUxYyI+PGc+PHBhdGggZD0iTSAyMTMgNjA4IEwgMjEzIDcwMi43NiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjMjg2NDk0IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgcG9pbnRlci1ldmVudHM9InN0cm9rZSIgc3R5bGU9InN0cm9rZTogbGlnaHQtZGFyayhyZ2IoNDAsIDEwMCwgMTQ4KSwgcmdiKDExNSwgMTY3LCAyMDgpKTsiLz48cGF0aCBkPSJNIDIxMyA3MTAuNzYgTCAyMDkgNzAyLjc2IEwgMjE3IDcwMi43NiBaIiBmaWxsPSIjMjg2NDk0IiBzdHJva2U9IiMyODY0OTQiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBwb2ludGVyLWV2ZW50cz0iYWxsIiBzdHlsZT0iZmlsbDogbGlnaHQtZGFyayhyZ2IoNDAsIDEwMCwgMTQ4KSwgcmdiKDExNSwgMTY3LCAyMDgpKTsgc3Ryb2tlOiBsaWdodC1kYXJrKHJnYig0MCwgMTAwLCAxNDgpLCByZ2IoMTE1LCAxNjcsIDIwOCkpOyIvPjwvZz48L2c+PGcgZGF0YS1jZWxsLWlkPSJ3MiI+PGc+PHJlY3QgeD0iNTUzIiB5PSIzMDMiIHdpZHRoPSI0MDAiIGhlaWdodD0iMTAwIiBmaWxsPSIjZWFmMmY4IiBzdHJva2U9IiMzMzU1NmYiIHN0cm9rZS13aWR0aD0iMiIgcG9pbnRlci1ldmVudHM9ImFsbCIgc3R5bGU9ImZpbGw6IGxpZ2h0LWRhcmsocmdiKDIzNCwgMjQyLCAyNDgpLCByZ2IoMjQsIDMxLCAzNikpOyBzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDUxLCA4NSwgMTExKSwgcmdiKDE0NCwgMTczLCAxOTUpKTsiLz48L2c+PGc+PGc+PHN3aXRjaD48Zm9yZWlnbk9iamVjdCBzdHlsZT0ib3ZlcmZsb3c6IHZpc2libGU7IHRleHQtYWxpZ246IGxlZnQ7IiBwb2ludGVyLWV2ZW50cz0ibm9uZSIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgcmVxdWlyZWRGZWF0dXJlcz0iaHR0cDovL3d3dy53My5vcmcvVFIvU1ZHMTEvZmVhdHVyZSNFeHRlbnNpYmlsaXR5Ij48ZGl2IHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiBzdHlsZT0iZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IHVuc2FmZSBjZW50ZXI7IGp1c3RpZnktY29udGVudDogdW5zYWZlIGNlbnRlcjsgd2lkdGg6IDM3NHB4OyBoZWlnaHQ6IDFweDsgcGFkZGluZy10b3A6IDM1M3B4OyBtYXJnaW4tbGVmdDogNTY2cHg7Ij48ZGl2IHN0eWxlPSJib3gtc2l6aW5nOiBib3JkZXItYm94OyBmb250LXNpemU6IDA7IHRleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICMwMDAwMDA7ICI+PGRpdiBzdHlsZT0iZGlzcGxheTogaW5saW5lLWJsb2NrOyBmb250LXNpemU6IDIwcHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtNaWNyb3NvZnQgWWFIZWkmcXVvdDs7IGNvbG9yOiBsaWdodC1kYXJrKCMwMDAwMDAsICNmZmZmZmYpOyBsaW5lLWhlaWdodDogMS4yOyBwb2ludGVyLWV2ZW50czogYWxsOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3b3JkLXdyYXA6IG5vcm1hbDsgIj5XMDMgKyBXMDQ8YnIgLz5TMDQx4oCTUzA4MCDCtyAyw5cyMCBEVVRDb250ZXh0PC9kaXY+PC9kaXY+PC9kaXY+PC9mb3JlaWduT2JqZWN0PjxpbWFnZSB4PSI1NjYiIHk9IjMyOS41IiB3aWR0aD0iMzc0IiBoZWlnaHQ9IjUzIiB4bGluazpocmVmPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQmRnQUFBRFVDQVlBQUFDUHRVSFVBQUFBQVhOU1IwSUFyczRjNlFBQUlBQkpSRUZVZUY3dG5RZllCVWxWcHM4aXNBUVJISlN3WkVVZGdvSkt6akRFQVdXUmpFdDRDQ0pMVHJyQWlFUWxDRGdFR1pLaTVDQklFb1lzT1Nxb01PUWtPVWdRaEFWaHR6K29oanQzdXVwVWRWZjE3YjczcmVjWlorU3ZydkJXZGQzcXIwNmQ4OStNQkFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQVFER0IvMWI4QkE5QUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQmdDT3hNQWdoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlEQUNBSUk3Q09nOFFnRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFJR2RPUUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRR0VFQWdYMEVOQjZCQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0NDd013Y2dBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaU1JSUxDUGdNWWpFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVFZHVZQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFHQUVBUVQyRWRCNEJBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQ0F3TTRjZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFpTUlJREFQZ0lhajBBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUVOaVpBeENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCRVFRUTJFZEE0eEVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFJN2N3QUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdNSUlBQXZzSWFEd0NBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFRUJnWnc1QUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJFWVFRR0FmQVkxSElBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSUk3TXdCQ0VBQUFoQ0FBQVFnc0h3Q3B6S3pjNWpaQmN6c2pHYjJtMloyY2pON2o1bDkwY3crWUdZZk1iUHZMS1FyWnpDenM1dlprYUdkdjJGbSt0L1V2cmViMmJmTTdIMW05bThMYXZOQzBORU1DT3lNd05yV21aMkJvbUlJUUFBQ0VJQUFCQ0N3U1FDQm5ma0FBUWhBQUFJUWdNQVFnVXViMmMwVGFDU1VIbXRtSDUwSjMwK2IyZDNON0d5UitqNFcydlB0R2RyejIyWjJyVVE5SCs1RThNZFVFSTRscE4vQ3pHNWpacitTMmE4UGRveWVaR1pQTmJPdlpENHpOWnYyaytjeXMrdWEyUTNNN0NKbWRyS0NRai9iUGY5WFp2YUVJTGdYUEVyV2xSTzR2cGxkSmRHSHI1clp3MmFjeTJjMXMzdVkyZWtpYlhwWGVMLytYMlB1ZXFmMDN1dGRpaVVkVkQybFFqdldzczVNN2Vvdm10bWR6VXlIQ0VPcDFybzl0WjA4RHdFSVFBQUNFSURBQ2drZ3NLOXcwR2d5QkNBQUFRaEFZQVlDc3BCK1F5ZHVuU1pSMSs4SFVYU0c1dnpRWWp2Vm5uODNzOHVZMlFtTkd5Tng1bS9ON09oRVBSTFg3elNoSFJMNTdtdG00anMyL2NETUhtZG14NWpaTjhZVzRqeDMyczRLWFFLcDZwQjRWU085emN6dTB2RjloNW0xRmpGcnRKY3lwaEhRWWRXTEVrVm9EbHkxZTdkZlBhMmE3S2U5OXJ6ZnpDNXZabC9PTG5GY3hwOHpzMzh3cy9NM1hIL1hzczZNSTNqaXAvVE4rNmdnc01mS0UyOGRuSDZ6Um9XVUFRRUlRQUFDRUlEQVlSRkFZRCtzOGFhM0VJQUFCQ0FBZ1Z3Q3NoaC9hUkNUWXM5SWFMNVJKN0QrVjI2aEUvTGQxc3lPYzU2WEJmVUxKdFNSODZqY25rZ0VqbG5TcTR4cm05bUxjd3JieXZOVDRkYUErbm1LRWM4UFBTSWg4SVptOXRwSzVhbVlVM2NDNHgzTTdQN2h2eXNXL2VPaS9xYXpXcjVqdzhPQkZtMm16SElDZW8vZUhHNUF4SjcrRXpPN1QzblJvNTU0ZEpoM3NZZDFRMFlDK3p0SGxaNy8wRVdEd0s1M2JTajlaL2RPWDg3TTNwMWY1STl6cm1XZEdkRzE2Q01YTkxNM0JqZFZzVXdJN0RXSlV4WUVJQUFCQ0VEZ3dBZ2dzQi9ZZ05OZENFQUFBaENBUUFHQkI1dlp2UlA1UDJsbWNpWHptWUl5eDJTVnIvRm5CeGNrcWVlbldvN250TzNLWnZiS1RseU83YUUrSDVqSVpVMUprcEFtQzBzZEpOUk9zbWFYYXdSWnROZXdDdmR1RTlScXYveksvODRNdHhKcXRaZHl5Z25rdk50ekNaOC9HOTd0bEZzVzlYQ09tenZlZ2FKYzFjaXlYeTUwU3RLYTFwbVNmcVh5YW83cDBQSldUb0Z6emJOYS9hSWNDRUFBQWhDQUFBUVdSQUNCZlVHRFFWTWdBQUVJUUFBQ0N5UGdpY2x6dVcvSXNYSVZ1ckdpVXdsMjc5RGg3OE5CUUVtd1VibGFrUUQwdjBvYU1pS3ZmRXMvc29MSVBwZkFyaTRxQ0tyY2RpaVlLMmsvQ1hoaThsenVuM0xuZGV1Yk96bUhEbU1PRTllMnp0U2E3WmNOTG9aT2ljQmVDeW5sUUFBQ0VJQUFCQ0N3VFFDQm5Ua0JBUWhBQUFJUWdFQ01RSTZ3UFlmN0JzOHZjdC8rS1c0VGNtWkJqdi8xLzlPNVRYbG9UbUVoajF6QnlMSmNBUTF6MDdjNkgrOFNIZVhHUjFhM3VVbVc3QXBDS29Gd1Nzb1ZJbFdITEd4N244Wm5HZW42UnNFSEZRaFROeVpJKzBjZ1p6N3A4T2taamJ2K2gxMEF6SWRrMU5INjVrNk8vL1ZTTjFSclhHY3loc0xOSW92OTV6cEJxZnRDc0dCM2NaSUJBaENBQUFRZ0FJRVlBUVIyNWdZRUlBQUJDRUFBQWpFQ3NxUjhXdkN6SHNzemh5amgrVVhlYkZ0TDl3Mi9FUHhGU3lnZVN2SkZmMFV6ZTFQQmxMcDdKNVQvV1ViK1Y1blpBNFB2NTAzcmVBbG5Db1NvY202YVVZNWMxeHhsWnAvSXlCdkxFaE5FNVo5YXZ0T2ZIMjRUZkcyZ0FQbC9WbkRGcXdVLzdoZk9iSWNzL09XVGZRNS8vNWxOSWxzbEFxYzNzK1BON09LSjhwNXFacmVzY1BzaVZrWE80Vm4vYk91Yk93clcvRG96MC9vN2xNYTRvVnJqT2xOamVzbkZsTmFqbkcvZU9YN0xhdlNKTWlBQUFRaEFBQUlRV0NDQm5NM0dBcHROa3lBQUFRaEFBQUlRbUluQTc1cloweE4xalJGN1NwcWU2eGU1TDdPbCt3YlBrdjc5SVFDaUFvdm1wSXNGWWZFTWljeHlrWEtMSUxoNS90Ti96Y3llMC9tclA5S3AvQ25Cai9SWXNYcGJZSmY3bHZ1YTJTdTZZSlRmeStuNFJoNGREc2d5MlJQYXY5c2RYTWhsa1FJVmt2YVBnT2Q2cWJYN0orL3diSnQ0eTVzN25pVjlxUnVxdGE0elUyZjVtVUp3NXd0a0ZvVEFuZ21LYkJDQUFBUWdBQUVJbkpRQUFqdXpBZ0lRZ0FBRUlBQ0JGSUh6Qll2c0l4S1pTdDBWbEJEUGNSK3hXVjVMOXcyZUNGaGlaWnZqdWtDaTRuWE03Tk1Gd001dVppODBzMVNneHFsaWRUOG1uek96MndVUjYvc0ZiZHpPbXVzYldvRnVaYVUvOW1CZ1FoTjV0REVCTDk1RGEvZFAzdUhaZHZkYmliRTUvdGRMM0ZDdGVaMlpPdVc4ZzRxNXhuUnFQM2dlQWhDQUFBUWdBSUVWRUVCZ1g4RWcwVVFJUUFBQ0VJREFEZ25Jei9kTGcyVjJyQmxqQXU3bGRza0xnTGhkVGl2M0RUa2NTdnhFZTY0THB2Z2RQNitadlNHNFlvbHhmcDZaNlhaQ3FjVzV5dnYxNE12OVFXWW1mL0Exa3R5RTZQYUIzTmZFVXV2YkVqWDZRUm5qQ09URWUyanAvcW5FRFpWNjJDcndxc2VoMUEzVm10ZVpjVFBwUjAvSmF2MzFaaVovOXJtcDFhRkpidjNrZ3dBRUlBQUJDRUJneFFRUTJGYzhlRFFkQWhDQUFBUWdNQk1CejNLN2xmdUdIR3ZPSVFRdDNEZDRsdndsZ3BzbjF0Y0lSaXF4WC83elkwbFc3RmZvZktHL2RhWTVsRlBOWmMzczFXWjJ5a1RtNjVyWkMzSUtJOCtxQ09TODY2M2NQNVc2b2VyQmxoeW81UTZHWjhsZjRvYnFVTmNaeGFWNFluQ3RsY3RkK1JEWVMyaVJGd0lRZ0FBRUlBQ0JFeEZBWUdkQ1FBQUNFSUFBQkNEZ0VmQ0M3clZ5MzNDZTRITmJWcDNiNllUTzM3aEU3NkZVNnFQWTY3Lys3cm1RVUpCR3VYTlJvRTh2WGQzTTFNYllQbXlLZFhsZnR5ZXVLVitMZ3dpdjc2bS95NTJGM05zb0FHb3MzU2UwZTBvOVBMdE1BbDY4aDFidW55NFpySjJIRG5aUzYweUxtenVlVzVQSGhXQy9YandHamZDaHJqTmFxN1dPbkt4d21pT3dGd0lqT3dRZ0FBRUlRQUFDUHlHQXdNNXNnQUFFSUFBQkNFREFJNkJyOWhJZkZKQXlsbHE0YjBpSjJoS2E1RDVHbHEvYnFZVXJFYytGUks1ZlpMVlhsdVUzaW9Dc2FWbXVPcDZWR0xNU2ExaHZqdFQ2dXljdy9vMlozYnhXWlpTektBTGVMWkZXN3A5aWMwNkhaWDhkQWdJUGdhcDljK2RVd1UzUzBZbFJ5WTEzY2FqclRDcXc2VHVEYTUvWUFSNEMrNktXQXhvREFRaEFBQUlRV0JjQkJQWjFqUmV0aFFBRUlBQUJDT3lDZ1BZTGYrbGN1Vy9odmlFbWFrdG91MWZuUDF6V3pLZUxBTWtWb25KNGVpNGtTdndpcDZ6eTFaWVNTM2l2N1djT2xybEhSaksyRWl5OWRxWCs3cm5JUUdDZlFuZlp6KzdpMWtWSzFKYmJwNGVaMlVNaTJHcmYzUGtGTTN1em1aMGxVbC9Kd2VFaHJqUDZuWHBBRndUNW1BRitXdXV1WjJiNlhiaFpoQzhDKzdMWEIxb0hBUWhBQUFJUVdEUUJCUFpGRHcrTmd3QUVJQUFCQ0N5R2dPZSs0V05tZGlreiswS2xGcWRFYlFsZjF6ZXpKNW1aUkttaFZOTjlnMmRaVzJJSjduR3M3ZGZaODUrL05EY3h2eGtDdEo0bU1xNEk3SlZlc0lVVzQ4M1gxd1NSdEZadzNaU29yZmY2cm1iMi9NUkJYczJiTzk3aFVvbnJxME5jWnk1dVpxL3REa1dHMWc0RjZyNUJkM2h4SEFMN1F0OThtZ1VCQ0VBQUFoQllPUUVFOXBVUElNMkhBQVFnQUFFSXpFVEFFNWxMckxoem1wd1NXdVdhUWY3T245cjVhRDhxVWxoTjl3MmVXS1YyM05MTVBML0kzazJBRWd2VkhJYktVMU8weTYxelNqNEU5aW4wMXYrc04xOXJ2eU1wTjFTNmxYT1g0QjRyZHBCWDgrYU9kN2lRNjRicUVOZVowd2YzT2tPL0I3cHBjQ1V6ZTN0dytZTUYrL3JYQ1hvQUFRaEFBQUlRV0J3QkJQYkZEUWtOZ2dBRUlBQUJDQ3lTUUk1LzRGd0JLS2VEOHE4dWE4T2gxQXZhRHpLemUwZnkxSFRmOEdRenUxV2kwYmxXNTU0dit4SUwxUnlHeXFNQXNYSTdjYTdJQTU4eHMwdVkyYWR6QzJ5Y3p4UFlhOTVNYU55VlNjWEgzS1Y4S296WDV5YVZ2dHlIdlhkRUxhL3AvaWtWVzBIcjJTUE03TmxtZHQwSXNscUJWMDlyWmk5S0hCaVdIR0I2RFBkeG5ibTdtZjFaWkl5T0RUY1JkQUFxbi9vSTdNdDkvMmtaQkNBQUFRaEFZTFVFRU5oWE8zUTBIQUlRZ0FBRUlEQTdBUzhBWlMzaFJnSDZVcUpXTDJpbnJFOEZwNGI3QnMvL3V0elZYTWJNVHNnWWpZc0dhOWhUUi9LMmNOZmlIWXlVQ0hjWlhaeWN4V05VWTB3bk4zS0dBZzVWWVBlc3I0VysxaUZMNnQzZWZDOVM2MTZ0T0FhZS8vVVNOMVRlTzdSdjY4eXZCOWN3WnhoNEx6OFNyTmYvTGZ3TmdYMkd4WXNxSUFBQkNFQUFBb2RJQUlIOUVFZWRQa01BQWhDQUFBVEdFWkNRL0Rvemt3QStsR3E1YjBpSlRadUN0aWRLMVhEZjRGbFVsd1RHODF6TkhHMW1MeDgzTk1tblBOY1R1UmI0RFpwMmtpSi9KN2g2R0twcmFZY0JMWGtjcXNBdXB0NTdVc3Y5VTJvOTJ4UzB2WFd2aG1EdEhSYm11cUhLNGJkUDY0emVreGQwdDNTdUVua1piMnBtVDkvNEd3Sjd5MVdMc2lFQUFRaEFBQUlIVEFDQi9ZQUhuNjVEQUFJUWdBQUVDZ2w0cmdkVVhBMzNEU214YVZQUTlxeXphd1JlVGJtcVVYOUx4TFdVTzRyL01MUExkcjdsMzFzNEpqblpVNkoxYVI5eTZodWJSL3RTV1NmZlBsSkFpUlh2MkRZczVibERGdGk5ZUErMTNEK2xMTk0zQlcxdjNhc1JlRFcxTm1oT2xoeUNIZEk2azNJTjB3YzIvVFlDKzFLV05kb0JBUWhBQUFJUTJGOENDT3o3TzdiMERBSVFnQUFFSUZDYmdDZUFxcjRhN2h0U0F0SDl1MHJ1dDlHeGxFZzIxZUxaYzFkUjRoNWlqc09BMkhoN0ZyalBEQUtlRjZTMTluemFMdTg4blEvcU53YS84VU4xMVpoYnJmdFFxL3hERnRqbFF1bUZabmExQk15cHJvSzg5L0hHd1UyVm11Q3RBMU52N3NUR3V1OStpUnNxcjE4MURoMlhzczVjek15T043TWgxekJmQzY1aC9tbXJzVml3MTFxaEtBY0NFSUFBQkNBQWdSTVJRR0JuUWtBQUFoQ0FBQVFnVUVMQWMyVXcxWDFEcmwva3ZzMmVlRHdsOEtwbnVWb1M0TkFycThUVlRNbDRLYTluRWR5eTd0eTJhay82QURNN0p2S0FCRE5aK1A5cmJvRXJ6M2ZJQXJ1R3pvdjNNTlg5VThxOTFKQmc3cm10bVhKenArYjdlU2pyek9tREs2bWpJdSs1Z2w4L3hNeTJEdzBSMkZlK01OSjhDRUFBQWhDQXdGSUpJTEF2ZFdSb0Z3UWdBQUVJUUdDWkJEeS81eVhXbGtNOVRQazhIM0lSNGdsS1V3S3Zlc0VDUzBRK2o5dmZtTm5OR3czNVdjM3NiV1oyemtqNUxhMWFjN3QwWFRON2JpZXlueXp5d0xGbWR0Y0J3U3kzL0xYbE8zU0IzVHM0bStvdUtIVlFPTFJtZUNMNGxOc1ZOVjA0SGNJNm8rOVhIWnpLUGRkUTBpMlkzK3JXaTY4UC9CR0JmVzBySWUyRkFBUWdBQUVJcklRQUF2dEtCb3BtUWdBQ0VJQUFCQlpDd0hOQm9HYVcrQXZlN3RZZGdwdVpvZTRPQmZwcjZiN0I4NzllNHFiQ0M1WmE0c3U5ZENwNExpZytaV2FYTUxQUGxSWmNJYi9HVDJMWXM4enNOSkh5M21sbTF6Q3pyMVNvYnkxRkhMckE3aDJjVFhILzVMbTZHcnIxNHIxRFUyN3VwRnhpbGJpaDB0dytoSFZHTjFsZTNRbnNweHg0bWI5clpsY09ycWFHM25VRTlyV3NnTFFUQWhDQUFBUWdzRElDQ093ckd6Q2FDd0VJUUFBQ0VGZ0FBYzk5dzVBUW50TnNUN3lQQ2ZlZTI1b3g3aHRPSG53d3k3SjZLSlVHV3BSQUxNdllXSnJpeXNaajY0bURwWDN4NnN2OSt4bTdqUEtucjBPVldKSjEvYlhNN0lUY1F2Y2szNkVMN043Qm1ZWjU3RHVURXU5VHduMXEzUnY3RHFWY1lxbVBKVzZvbEgvZjE1bXptOW1ydXJYNXlNaDcvaUF6dTIvaXBnc0MrNTRza0hRREFoQ0FBQVFnc0RRQ0NPeExHeEhhQXdFSVFBQUNFRmcrQWM5S2NxejdocFI3ZzVUckdjOHR3aGozRFdjMnM3ZVltY29lU3FVV3E3TFNmbkZpYUtkWS9lZk1tSlN3TkZZY3pLbDNPNDhPVWVSNlI2TDY5Ukl1WWZUY0I4eE03ak1PVFZ4WDN3OWRZQmNENytCc3JQdW5sUHVaMU5ybHVhMHB1ZEhTdnhjWEN0YldwNHU4VENWdXFGVEVQcTh6cHpDeng1blpiU0tzY202NklMQ1BXYlY1QmdJUWdBQUVJQUFCbHdBQ3U0dUlEQkNBQUFRZ0FBRUliQkh3ckM3SHVtOUlDV3FwUUp5ZTVYdXBHSzd1ZW1KYXFXaC9Oek43UkdJbXFlOHZhVGpUV2dyczhrOTlnVWpiejJSbUZ6WXovZnRTblVEMjg1bDlmSjZaU2JEVXdjb2hKZ1QySHgxdXZkbk16aEtaQUVQQlNIUG1Tc29TUFhYN3huTmJVeXFHcTYxZThOUlMwWDZmMTVrYkJsZFNROSt2T2lTOFVtZkIvM1puQWlDdzU3d2g1SUVBQkNBQUFRaEFvSmdBQW5zeE1oNkFBQVFnQUFFSVFNRE1VbjZEQldpTSs0WlVtWjZQOHRydUd6dzNPS1Z1Wjd6eWRpbXdhN3ltMU8vMXJlU0ZrZFg2N2Mzc2RRY1UwSFNJRHdLN21YZHdKbTZsNzZGWFp1b21pZWUycHRTZGkxZmVtSnNsM3JzNDVUM1BlWTlUQXZhVWRlYlh6ZXkxWm5hR1NDUFU3NGRuckJrSTdEbWpTQjRJUUFBQ0VJQUFCSW9KSUxBWEkrTUJDRUFBQWhDQUFBUWF1RzlJV2NYbkJQcnpMTTVMWExCNC90ZkhXTTZtaEsrYy9rMmRkUGMyc3djbkNwa2l2SG1pbnRmMkgzUkJWbDhSMmljTDFPOTdEeHpBM3hIWWZ6VEkzdHdxdlVreTFnMVZQK1ZTRnVlbE4zZThtMEJqYnQ3czR6cHplalBUN1lDakl1LzlhOHhNc1RLK25yRXVJTEJuUUNJTEJDQUFBUWhBQUFMbEJCRFl5NW54QkFRZ0FBRUlRQUFDWnVjSnZvUFBGb0ZSYXMyWjh1dWVVNWJudnFFazhLcjZKTmNVNTRyMGJZenY1OW9XOXFWejBCTXFkeVd3ZnlZSTYyODBzNDkwTngrK1U5cXhQYzJQd1A2amdiMmttYjNlekU0WkdlZVU2NmloUjhhNm9lckxranVrTjNVM2VJNkl0S2ZrNW80WHk2TDA4RUJOMnJkMVJvZWQ0aUJYT1VQcHk5Mzh1SUtadlM5ekhVQmd6d1JGTmdoQUFBSVFnQUFFeWdnZ3NKZnhJamNFSUFBQkNFQUFBajhpNEZsNWwxcGxwNFNoSE4vR25ydUZrc0NyVis3OGhiL1N6R0w3cEJJUnJaOHZMWDJnNTh6SnBRcnMyMjMvb0prOXBQUHBMaC9zMzhycDJKN21RV0QvMGNCNlZ0NnA0TWZiVThOYkl6dzNWQ292Tmk1OVhTV0hiN2Z0L01zZmw1aS9wZTV2Vk5TK3JUT3lUSDl1SkJpeWZtTnViR2JQS1ZnREVOZ0xZSkVWQWhDQUFBUWdBSUY4QWdqcytheklDUUVJUUFBQ0VJREFpUWw0QWxHT1lLVVNQYi9JdVlIK2FybHZTTGxUS1hVRDBSUGJOK0ZyY3laNDR2Mlk5MFp1WXg1blpzZVkyVGZHRkxEeVp4RFlmektBWHJ5SFhQZFBxVnN1SlFlQ2NyV2tOV0lvNWJxUDBqZlkwODNzSmhQTDJYNThuOWFaaTNVM0dJNVArRjEvVW9qWDhMMkNkeDJCdlFBV1dTRUFBUWhBQUFJUXlDZUF3SjdQaXB3UWdBQUVJQUFCQ0p5WWdPZmlJTmQ5UThvdmNrbWd2eHJ1R3p5eHY4UVNmcFBXUGdsZjIrOUJDNEc5cjBNdUlHNFlBaHl1NWYzVC9sb3VSR0p1VFhMNmNWb3plMXJubS80U1c1ay9hMlpIbTlrWGN3cUo1SkdQKzYrc3lOZDl5cTJMdXBqci9pa1ZweUhIRFZXUDA3dmhrbU41N3JtMEtyR0UzOGQxNW94bTluSXp1MmhrRHNzbHpKVkd2QWNJN0JNV0RoNkZBQVFnQUFFSVFDQk9BSUdkMlFFQkNFQUFBaENBd0ZnQ3RkdzNwQVMwa2tCL05kdzNwTVQrRWpGdm0rbVR6ZXhXRWRBbGh3aGp4OG9Ud1NYYVN0QnFsVFEyRXMxK0kvaE1sZ2daODNHLzNRWlpzOTg1V0xUTDBuanB5WnVIdTI3L3A0SncvN2xkTnlTemZ1K2R6RDMwbXVxR3FtK3VGNk1oeDNlNkY1UjVqQnNxdFc4ZjFwbFRoSGY5TnBINThUVXp1MXAzMFBTT3pQbXptUTJCZlFRMEhvRUFCQ0FBQVFoQXdDZUF3TzR6SWdjRUlBQUJDRUFBQW5FQ0tYY0plaXJIZlVQS0JVU09XTFhadXFudUd6enJWUG44ZmZhSUNaRVM5MHJjVTR5bytvZVA3TnFDZnFqZEV0eDE2SEFmTS9zWnAyTVMyZVZPUS82WWx5NnlJN0NQbmFYRHozbnhIbkxjTm5rM1UzTGRVS21GWG50eURnVlQ3clcrR3c2aDNqb0M0OXJYR1gyYjN0UE1IcHJvKyswYzMvVXBiQWpzSXlZVmowQUFBaENBQUFRZzRCTkFZUGNaa1FNQ0VJQUFCQ0FBZ1RnQlQ1RDIzRGVrck9BbHBNcXkraFVGQStDMXgzUGZNRldnanpYVnN5Q1hGZjlMQ3ZwWm1uV0pBbnZmaDFNSEMzV3hQMW1pWTFNc1YwdDVUY21Qd0Q2RjN2Q3pYcndIeitJN1pRV3ZlWFZaTS92WGdtYW4ydVBkU0traDBPL3JPcE1LYXFvK2ovRzd2c2tLZ2IxZ2twTVZBaENBQUFRZ0FJRjhBZ2pzK2F6SUNRRUlRQUFDRUlEQVNRbDQ3aEk4YTg1TGR0YWFyNC80cXk3eGk5eTN6R3RQeWlMZUUwYkgra1ZXMjVZc3NQKzdtY2xseFFrN251Q1g2bnd1dnl3UjFGRE5lNmVaWFNQNEVOOXhjNlBWZS9ObzErMWVtNHNZOGZMaVBmeXRtZDJvQzRvcmEvYWhwTDg5Sy9LMzNGZ1JtNDk3N1VsWnhFOVpvN3k1cytaMXhndHEraG96a3dEL2RROUM0dThJN0JQZzhTZ0VJQUFCQ0VBQUFuRUNDT3pNRGdoQUFBSVFnQUFFcGhEd3JERTlhODVhZnBIN1BuanRTWWxwbnE5bnowbzJ4ZkYzemV6cGlRd2xMaXBLeDBzQk0xOWtaa2RGSGx5UzRPcUpiT3JDRkJjUnBlekc1RWRnSDBNdC9Zd1g3eUYxR0tmdm5iODBzMXRFcXZpVDRLYW9wTlZlZTFJM2R6ei82OTR0bTMxY1p4U1A0VlZtOWt1Unp0VzZ2WUxBWGpMTHlRc0JDRUFBQWhDQVFEWUJCUFpzVkdTRUFBUWdBQUVJUUNCQ3dIUGZFQk9QYS9wRjNteGFxajBwYSsxVXNOVWNQOCtwQ2ZKYlhZRFBGeWN5VEJIdnZZbnBDYjV2Q3E1NC9zTXJhSWEvYTI4cUZoSTlZK250SWNqaEZFdldsbDNSZ2NaVHpFd1crV09UWE9XY05lSXlSOEZKWTViYU9mVkpqSllsOEJkek1pOG9UeXBXUXlxT3djK1ptUTdXemovUWx5bnhEMUx0U1FWZVRSMHFmcjRUbWk5dFpoOGJ5WDJONjh6cHpVdzNFR0lIZ0lxL2NJT1FaeVNXSHorR3dENlZJTTlEQUFJUWdBQUVJREJJQUlHZGlRRUJDRUFBQWhDQXdGUUNGK3pFa1RjbVhIdkUzRGVrTE1ZOXkvZFVtejMzRGJIQXEyTUZzeHgrRncwaW4veU5EeVVKc3JmT0tXaEVIZ20xYit1c2VNOFplWGFLNjVzUnpYRWZPWE53RzNSa0pPZlV3dzYzQVF2SUVEc1VXZEp0ZzdreFhkM01ORmRqM3k4eFMvU1V4ZmdZTjFSOXY4Y2N5SG1IaWxQZnhiV3RNNmN3czhlWjJXMFNrMGtIRWcrdkZOd1lnWDN1dDViNklBQUJDRUFBQWdkQ0FJSDlRQWFhYmtJQUFoQ0FBQVFhRXZBc3BHTWlWa3FnOG55M3A3b3p4bjJEMXdjdldLdUg5M3htSmt2eEl5SVpQUi9TWHZtcHYzdDF0eFQzeDdZN0ZXeFdaZDdkekI0NXR2QVZQSWZBZnRKQjhueVh4OXcvMVhaRDFiZHNqRXNwcnc5VGI3SjQ3L3FTMWhsOWg5N1R6QjZhZUIvbEdrYnVyYjViNloyOWlwbWRPMUxXbDgzc3BaMjdvTzhsNnZxd21TbU94M2NxdFlkaUlBQUJDRUFBQWhEWUV3SUk3SHN5a0hRREFoQ0FBQVFnc0dNQ0tVRTA1b1loWlRHZUNrYWEwOVZTYTNSUG1JcFp2ZWUwUlhsa2xmMFdNNU1vTjVSYXVtbnhmRDR2VWF5K2N1ZGk1WlVKYStXL01iT2I1OEpmWVQ0RTlwTU9taGRmWWNqOWsyY3hQaVgyZ1ZmMmtEVjZhbDdYdUpteHBuWEdPOVJjNG1zN0ppRHVFdnRCbXlBQUFRaEFBQUlRcUV3QWdiMHlVSXFEQUFRZ0FBRUlIQ2dCVHhEZGR0L2dXWmxQQ2ZTbklTaDEzNUFLUXByeTI1NDczRjZnMGMrWTJTVTZOekdmemkyd0lGK3FiMU44VUJjMG9UanJoWUxib2RORm5wenFTcU80UVRNL2dNQStETnlMOTdCOUVOYktEVlhmdWxKLzZxbUR5SlRmOXR6cHQ2WjFCb0U5ZDFUSkJ3RUlRQUFDRUlEQTRna2dzQzkraUdnZ0JDQUFBUWhBWUJVRVBOY0hyekV6aWViZkNyMUpXVlZQRGZTbktrcmRONlFzM210WkxUN1p6RzRWR2MwYTFxdXhpWkxxV3czV0xTYW81emUrMXBpMGFIdU5NaEhZaHlsNjhSVzIzUjJsRHBlbXVLSHFXK2ZkRHRrOEtQUXMzcWU2b2VyYnRKWjFCb0c5eGtwQkdSQ0FBQVFnQUFFSUxJSUFBdnNpaG9GR1FBQUNFSUFBQkZaUFFIdUt2elN6VzBSNnNpM2twaXcvYTFnbmUyTFdaaDJlTlgwc2VHTHBvSG5XdDFQY1ZjVGE0bG0wdG5STlU4cG5NejhDKzQvOFFWOStDK0loQnprVkNrK1UzUlROdlRWcHFoc3F0ZWZuUXZEaTgwY20rMllkM3FIZlZEZFVmUlBXc3M1NFl6bGwvV2oxN0w0ZjdMWGlScmtRZ0FBRUlBQ0J2U2VBd0w3M1Ewd0hJUUFCQ0VBQUFyTVJTRm1McWhHOU5hY25mazhOOU5kM09DWGliN3BrU2JranFlbEM1YUpCakR0MVpFUmFCQ0QwUkwwYUltT0xDWFoyTTN1Ym1lbG14RkNxY1FqVG90MjF5c1NDUFU0eTVXYmxQODNzY21iMjdnenhlNm9iS3JYUUUvRTNEN0N1WVdhYXQwT3BoaHVxdnR5MXJETUk3TFZXQzhxQkFBUWdBQUVJUUdEbkJCRFlkejRFTkFBQ0VJQUFCQ0N3TndTOFFLRzltSnNTZld1NlNrbTViOWdVemxNSEE1ODBzMHVibVFUNXFjbXpkcTFaVjkvV2xDOTZNVGk2OC8zK2lxa2RhL0M4NXdxRUlLY05vSytrU0MvZVEzOFRwTFVicWg1WGJ2eUcxTUZBVGN2b3Rhd3p1bDBqbHo2WG1uSGVuY1hNVGhHcDd3ZG05amt6MDc5alNZR3E1ZWFyZDNVMlk5T3BDZ0lRZ0FBRUlBQ0JKUk5BWUYveTZOQTJDRUFBQWhDQXdMb0llQmFKdlRYbkZjM3NSWkd1MVFqMDF4ZnRDVTF5L1hLTTQ5cW1wbFc1WisycWR0ZXdxdTM3ZjNJemU1cVozU2pDdW9XZ1gydkdlcmNoYXQxeXFOWGUydVZnd1I0bjZzVjdlS2FaeWQzS0g1alpReUxGMUx3QjRSMHNxaTFhNzRhRzRTTUpBQUFnQUVsRVFWUmMvdlROcStXR1N1V3h6c1RuemwrYjJjMGlmNjU1eUZGN1BhQThDRUFBQWhDQUFBUVdUZ0NCZmVFRFJQTWdBQUVJUUFBQ0t5TndQelA3NDBpYmV6L3NzZ0M4ZHlSUHJVQi9PVUtUUkxaYm05bUxPL0hySXBIMjFQYUxucklvVnhPZWJXWTM3WVIvV2ZKUFRlY3hzemNtM0t3OHpzenUySTJYTE5tWGxMeURnWnB1ZTViVTc4MjJJTERIUjhhYkgvTERycHNaanplejYwYUtxWGxBNHgwczZ1Yk9uNXZabTgxTUZ0VGJxY1Y4WnAwWkhuZ0U5cVd1ZUxRTEFoQ0FBQVFnc0hJQ0NPd3JIMENhRHdFSVFBQUNFRmdZZ1pSYkJvbkd2MlZtOStpRTM2TWk3YTRWNks4dlBtVUpMV3Y1MjVuWkM4M3NpSUgyYlBwenJvWDV6R2IyK2s1SVB6SlNZTTA2VTRjZDMrM2FjUVV6ZTJ1dGpsVXM1NExoWU9BTWtUS1hiSGxmQ3dNQ2U1cGs2cjNXUVo2RWRkM2VrRHVxN1ZUVERWVmZkc3I5aXc3eUpQYnJJRy9vMjZ2RmZHYWRRV0N2dFJaUkRnUWdBQUVJUUFBQ0dRUVEyRE1na1FVQ0VJQUFCQ0FBZ1d3Q25sc1dDZHIzNnR5eW5IT2d4TjdDL1dQWnRma1pVKzRiRkZqd1lRazNFcktFdmFxWmZkV3ZwaWhIU3ZoV1FjOHpNd21JM3lzcTljU1p6MnRtYnpDenMwYktPTjdNcm1ObTM1NVFSNHRINVIvNUdXWjIvVVRoUzdXOHI4a0RnVDFOTS9WZTY1RHE3bWIyaU83OVBzMUFNUzNlNjVSZmVCM2t5VDJNWE5ZTXBacHVxRGJMWjUwNUtXMHMyR3V1VXBRRkFRaEFBQUlRZ01DUENTQ3dNeGtnQUFFSVFBQUNFS2hKd1BQL0sxL0VWNGtJWHpYOUl2ZDlTcmx2a0NYcjM1blo5U0lBK3FDc05mbW9MTTlDV3k0amJteG16eGxac1VScWlkQzNpVHl2OHRYbkZ4U1cvM3RtOWxremUxa2p0ekthTy9jMHM0Y20yclZreS90Q25NbnNDT3hwbXA1YkZnWEJqZm5hYnZGZXAvekM2K0R3WDhLNk45U3IybTZvK2pyV3VzN1VmSSsyeTBKZ2IwbVhzaUVBQVFoQUFBSUhUQUNCL1lBSG42NURBQUlRZ0FBRUdoRkl1VytRUUN1cjZxRTlTRTIveUp0ZFM3bHYrSmFablRiQ29XYkEwYzBxMVBkSGRaYnhkMDd3LzFybnZ1VnFuUy9wZHhTT1VZNUlMV3ZhRzR5d1h2L0RZTzB2bHpwMzZ2elhmN3F3YmFuc1B4VXNmQlhzTVpWcVdQZFhiSGF6b2hEWWZiU3A5L29UWm5idUdkOXIrWVZYL0lRaG4rODYwTkpobmc2K3RsTk5sMURiWmE5MW5mRkhmbndPQlBieDdIZ1NBaENBQUFRZ0FJRUVBUVIycGdjRUlBQUJDRUFBQXJVSnlPOXhMS0Jmcks0V2ZwSDd1bEx1RzJMdGFlR3Vack11ejRXTDhuN1p6QlNzTU5kUHVrVHFPNWpaSTgzc1pKR09qUlh1VlZ3dnNPdS81YjdtMkNDNGYyWGlCRHA3c0xoWFgxTkpQT1EzL24wVDYxdkQ0d2pzL2lpbDRqM3M0cjIrYlJmRTlEaS8yU2ZLMGNKZHpkclhtVUtFUmRrUjJJdHdrUmtDRUlBQUJDQUFnVndDQ095NXBNZ0hBUWhBQUFJUWdFQXVnVk9abWZ3S0g1MzdRR2RSTFQvRmx3K2ljc0ZqV1ZsVDdodGlCYlJ3VjdOZGwxeERLUGlobHg3YlpaQS81WlNRZlo3Z2MxcCsxVk5KSXZuRFI3cDQyUlRZTit0NFJSRGJGYnoxTzE1bnd0KzFCNVVmYlpXcHdMYXhBNEcrdUI4RXEzdk5xME5JQ096K0tIdnhIb1pLYVBsZS8yYUllekRrOXozV214YnVhdGErenZnalB6NEhBdnQ0ZGp3SkFRaEFBQUlRZ0VDQ0FBSTcwd01DRUlBQUJDQUFnUllFWW1Kc3JLNm5tdGt0UndxL1h2czl2L0JEejdkeVY3TlpsK2NyZmJ0ZC8yQm16eld6TDI3OFFiY0Y1Sy85d2g0RU0zdVNtZDErUXZEVW5ER1ZDNkEzbWRtN094L1lROEZxZjlYTUxtMW1sNHU0ekloMVk4ckJRQWFheFdXUjI2S25tTm1sdGxyMnllQ0daSE1PTEs3eE16Vm9hZSsxNXhkK0NFc3JOMVJyWG1kYVRoOEU5cFowS1JzQ0VJQUFCQ0J3d0FRUTJBOTQ4T2s2QkNBQUFRaEFvQ0dCVXZjTnNtSitSc1AycFB6Q2IxZmIwbDNOZGwxbkNhTDVaUnYyWFVXL0pnaXpYNTlRVDQ3QVBxSDQ2S09xOXhGbTl2MFdoVlBtcWdrczdiMU8rWVhmQnQzYURkVm1mV3RhWjFwT1NBVDJsblFwR3dJUWdBQUVJSERBQkJEWUQzanc2VG9FSUFBQkNFQ2dJWUVTOXczL2JtWVM1RTlvMkI2NUk1Rmw5UkVaZGJSMFZ6TlUvYm5NN0dWbWRvR010bzNKOHNiZ1hrV0MzcFEwdDhDdUFKQzM2bHpKUEtmUnpZWXBMSGgyR1FTVzlsNlh4SHRvNmE1bXpldE15NW1Gd042U0xtVkRBQUlRZ0FBRURwZ0FBdnNCRHo1ZGh3QUVJQUFCQ0RRbThPak9iL2dkTStxUTY1TnJtZGszTS9LT3pWTGl2bUVPdjhqYi9aQ0Y2ZFBON0tpeEhZdzhKOWM3Q256NnJRcmx6aW13SzdEclRjenNFeFhhVFJIN1M2QWsza05MTjFROTRaSjRENHJCOElTWmgyWU42MHhMSkFqc0xlbFNOZ1FnQUFFSVFPQ0FDU0N3SC9EZzAzVUlRQUFDRUlCQVl3Sy9iV1l2eXFqalR6cS80UGZKeURjMVM2Nzdoam44SWcvMVJUN1o3OUw1SmxjNzlkOVQwcGVDVDN0Wnh2Ky9LUVZ0UFB0VHdSTCtXRFA3K1VwbGJoZnpBVE83VStlai9iVzRoR2xFZVArS3pUMzRhZTJHU21SUGJtYlBEdTZZVXFSMU8wTnhDQlNyWU82MDlIV21KUThFOXBaMEtSc0NFSUFBQkNCd3dBUVEyQTk0OE9rNkJDQUFBUWhBb0RFQkJlQjhzNW5KYWpLV0pQNWV0WE1SOCtyR2JWSHhPZTRiNXZTTEhPdnlHYzNzRDRMMS82a0x1WHpVekI3UXVadDVucGw5dS9EWjNPd1MyaThlaFBEZnFYQVk4TDNnZi8vaHdVMVFyUU9CM1A2UWI5MEVjdUk5ek9HR3FxZDQyMjdOTzg1QitxNnc3bjExaCtpWHZzNjBRSVBBM29JcVpVSUFBaENBQUFRZ1lBanNUQUlJUUFBQ0VJQUFCQ0N3VEFLeU5QM05ZRFYrcGM2RnpIbk43TFJiVGYyY21iMmpFN3hmYm1iSG05a25LMXFzNTFDUjJIN3U0RVAvVWtGNGwvLzlzM1pDLzhrR0NwQmx2Y1JPSGJ5OElmakZseHNZQXBqbTBDWVBCT29UV01NNlU3L1hsQWdCQ0VBQUFoQ0FBQVFxRWtCZ3J3aVRvaUFBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRT0J3Q0NDd0g4NVkwMU1JUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENvU0FDQnZTSk1pb0lBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBSUhESVlEQWZqaGpUVThoQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUNnSWdFRTlvb3dLUW9DRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFPaHdBQysrR01OVDJGQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCaWdRUTJDdkNwQ2dJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaEE0SEFJSTdJY3oxdlFVQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFS2hKQVlLOElrNklnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRURnY0FnZ3NCL09XTk5UQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRcUVnQWdiMGlUSXFDQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCd3lHQXdINDRZMDFQSVFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBb0NJQkJQYUtNQ2tLQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFRG9jQUF2dmhqRFU5aFFBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ1lvRUVOZ3J3cVFvQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRT0J3Q0NPeUhNOWIwRkFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNvU1FHQ3ZDSk9pSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBNEhBSUlMQWZ6bGpUVXdoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUtoSUFJRzlJa3lLZ2dBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ2NNaGdNQitPR05OVHlFQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUtBaUFRVDJpakFwQ2dJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkE2SEFBTDc0WXcxUFlVQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUlHS0JCRFlLOEtrS0FoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRURnY0FnanNoelBXOUJRQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRcUVrQmdyd2lUb2lBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUU9Cd0NDQ3dIODVZMDFNSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDb1NBQ0J2U0pNaW9JQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUlIRElZREFmamhqVFU4aEFBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VDZ0lnRUU5b293S1FvQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRT2h3QUMrK0dNTlQyRkFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFDQmlnUVEyQ3ZDcENnSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhBNEhBSUk3SWN6MXZRVUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUtoSkFZSzhJazZJZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VEZ2NBZ2dzQi9PV0I5cVQwOWhabWN5c3d1WTJjK0UvNzd3Qm96M21Oa1h3Ly8vS1RQN056UDdxcGw5WjRmQVRtVm01d2h0UHFPWi9hYVpuZHpNK3JaK3dNdytzdU0yN2hEUDdGV2Yyc3p1YTJhL0cycCt2cG5kYmZaVzdGZUZhM3d2MWVhem10bUZ3bHB5Y1RQVHU2cDM4V05tcHZYai9XYjJ6UVVPMVJuTVRPdmV6NW5acjRaK2ZNN00vaVcwKzBObTlyVUZ0bHROWWoxYzZNQmtORXQ3ekNQTTdCZk43SnhidjcvOWUvUGxNQS8vM2N6K1gwYVpaR2xEUUd2RTJjM3NTRE03L2NhK28xOG52aEhHU2Z1bDc3ZHB3dVJTMVlkZkRuUHRGOHpzdkdHZjlQYnVOMXZ0L3ljelUzK1cydjdKQUNnQUFudEE0S2ZNVE44KzV3N3ZzcjUvZnNQTTlINHI5V3VTL2x1L0h4ODBzLzlZNk41ckQ0YURMa0FBQWhDQVFBa0JCUFlTV3VSZEF3R0pNVmN3c3h1WjJUWENCLzJZZG4vTHpONW1aczh5czVlYTJSZkdGRkx3akRhVHR6Q3oyM1IxL2tybWM5cFVQcW5iaEQ3VnpMNlMrY3l1czBtc3ZyT1o2ZU4zS0gyNys3aC9WTWZpRTd0dWFLaGZnb1A0SHJYUm5yOHhzNXN2cEgxcmFjWmEzOHZUbXRsMXdweTlTQ2JzejVyWlgzVWk5aFBDZ1YzbVkxV3o2UU5WN2YzOWNEQ2t3d0V2U1dCL1RpZUlQdHJNVHRpeDJIa282NkUzSm12OHU5NlpvODNzMW1aMlpUTTdXV1luZm1CbXIrNUUzaWViMmQrYm1YNkRTZTBJYUUyNFluZkFka3N6K3gwenkxa2ordGE4eTh5TzZ3N3QvbTdIZXc5OXc1elB6TzdVclZrMzNCRGdVdFQ2ZWZaWU0zdUZtWDJ2SGVKbUpVdDR2S3VaYVQ4MU5XMGJtWHl5NDZuRHJpVnhrYkQ2ZjhKaDNWQi9QOXdKc28vWmdkR0pOdzQ2MkhtS00wRDZUdEVlWSttcDVkNWMrOFBMbU5sdmRZZGcxKzcyVCtjYUNVTnpWa1lPTCtzTUlWN1ljWDN2d3VieHlHN3hHQVFnQUFFSXJJa0FBdnVhUm91MnBnaElsTDUzWjAzNnZ3bys2RXVJdnJQN2tMeGpKOXBydzF3enlTSlcxdEVTd3NZbWZUQSt6c3lPQ1ZaYVk4dVo0N21yaEkvYW1PanluMloydVc2ai9lNDVHcE9vUTJ2akRjenNpY0ZhZVRNckFudis0S3oxdmRSdGw3dUVkNnBFZU5vbTg3eHcyK0hUK2NnbTVaU3dmcVVna3NzU2RXelNMWm5ibTluclpoYmFEMjA5SERzK1MzeE9oeUlTd1hTQU91V2RVZC8wbXlZQjkwSEJXbkdKL1Yxcm0zUUFvc09QQnd6OHRvM3BrNFNzZXdVcjBqSFBqM2xHdjg4WEM2THFSY2NVRUo3NVVwaXZ6MTJaVmJ0dU5iN0J6RTR6b2UvZW83ckpxVHBlWW1ZdkQrL2hybTZZNkhkQkJpKzZCVE9VL3NITXJyVURDMlp2SEhMMmluL1kzZEo2aURjWUMvaDc3YjI1OWlvNjRMdDdON1pYYjlRLy9ZN29FTzNCNGR1Tm15dU5RRk1zQkNBQUFRajhoQUFDTzdOaDdRUmtZU3lMeXprc1FDUWVQTFFTTUcwdVpRVXRFV0dxR05FM1NWY2xaY1gxMmtwdHJGMk1ySzMwTVg2MVJNRzFOL0ZqK3VETnFaeVBwakgxN3RNekhzT2FmYTM1WHVvM1VWYTN6d3p1VkdxMFUxWlZFclNlMWxpc0hycHRNYlg5ZWw5bEhkcjZnT0FRMThPcFk3T1U1L1g3cGNNb2lSaTFmc3Y2dnVuZHVVOW5tZnpuV0NKT0h1N1VvZkhrd29QWUxhRzk5YzBESFg3S1d2bG1OUm9keW5oTk1NNzRmTVV5V3hibENic3Q2dFlOcDcvdWJvWCtSWGNyU2hiamM0cnRDT3d0UnJTc3pGcDdjMzBIM0RnY0t2eDhXUk5HNTViN3ZrdHdXRHVhSHc5Q0FBSVFnRUFCQVFUMkFsaGtYUlFCYmRKa1VTNEx0OW9mOWJHTzFoTHkxSGE1UWJsdEE2S3kySkFGb1N6YTUvd0F5dW1LcnFITGYzbHEzYW0xaWM5cHozYWUzRG1Gd0I2bm04dHd6UGkwZmk4bDhzcWFxdFloMm5aN0h4RXNQVnRjdlpmVnV0eTd5TWQ2N2RUNjRPNVExOFBhNDdTTDh1UWlRWWRSbDJ4YytRdUMrelM1cmlDVkU1QWZmQjNtWDcvODBhSW41RHBHZGJSeThTYWY2bkpMbzVnNnRaUGk3L3gyaUhWVHUremE1ZTFDWU4vc2cyNDRhVDhzOTRseldBVWpzTmVlUWVYbFRkMmJhMytsVzZISGR0OG5jd25yZlM4UjJNdkhteWNnQUFFSVFHQWtBUVQya2VCNGJLY0V6dElGcjNyNmxsL3NPUnBVUTJEWDlXeDk2TXFWVGN0MGorNzY5eU1YSkxMTGZZQ3VHWHZYdWFkdTRzY3c3VGYrR2hkWngza0pnWDJZMEpyZlN4M1N5VkwyajczQm4vaDN6VEZaaE5jVTJYVnc5ZXpHQjQxcXIrSmFTT2lzbVE1MVBhekpjRmRsU1ZSL2NhTkRuYUUrU2J6VlRiWFd0eWwyeGJOVnZTMUY2YUUydHhLcTVXdGRnbTRzZmtzTmZqcE1sRTlzemJVbHAxMEw3RDJiajRaRDZkWkNPd0w3N21mamxMMjVidGZKNkVjSFdMdElDT3k3b0U2ZEVJQUFCQTZVQUFMN2dRNzhpcnV0NERjS1lOUENnc25ETWxWZ2w0aW5UYVlDbWVZbVhiZVcxZDVQZDVZZlA1djdVUEJoSzJ1UnZ5MTRwbVZXK1poL2ZFWUZVemJ4R2NXZktJdUU5ZXVhMmNNVHZqMkh5a1JnUHltVk5iK1graDI4WjZIbHVnUm51Uk5RY0s1U2F5ejVYTldjcTNIRFJINklqODhNN3FkUjY5dmRqNkFPUlhKdkFNbEZnTnc3dmFQMFJZdmtQK1Qxc0JMQ25SVnorV0JKck9DREpVbCtuYlhHU3pETERYNjZXYjVjZVdqTi9ucEpwUWVjOTVlQ0QrSlNVYnJmZDVTc0Q1dVk1VUpFOFZZVU1MTkcwdS9McTh4TS9jbE44cS8rbmM2Z29iUVB0ZHVlMjk2U2ZFc1IyUHMySzBhUmpFWStWTktKZ3J3STdBV3dHbVVkc3pmWDN1cWEzWHY3akV6amxVWk5Od1QyVm1SM1grN3BRM0JjM2R5V2dZd0NwSlBXU1lDeFhPZTQwZW9CQWdqc1RJczFFZERpSzhINHFJSkd5MlhLKzdwTm5qNEFGRGp6aTF2UC9xcVp5YnBDSHl6bmQ4U21xUUs3M0UvOFdVYmI5U0g1d05CbWZTRDJTWUtVMnFoeWJwcFJ6c2NDcTFiWHRUT2E4TU1zNXdoKzRXVko1NlV4bTNpdnpPMi95MnBXMXJoL09rSWNWVmtJN0NjbXV2YjNVbFpWOGpYdUNYN3Y2YnA5UHpPVHlQZk5EUVE2cUpHckRBVUZ2VU9HWUswNUxwY3VVd01tYTkzU1d1RUZNLzFHOEk4dC83bGZHSGhaemh6aVFjaUMzN3ZCb2JWVWJkOWVSMHZmUWVVLzFQVndES3VsUFpNVG1PL2JZYTJVV3pCWkJPdUFaalBwdlpGd3BrTWJ2VGNYenV5a1hBemN0ZElCVldhVnE4MzJXK0dXUWFvRDJpTnBqSFFyVUd1U2hPbk53ejk5SitnUVVZY3F2eGRpVk9RQWtWV3pEdmsxRDZZa0dSZm81b3dFKzFUUzRlRmpneEdEOWp5YnJrdFVodmFOV3I5ejV0bFRRMTlyM2pTYXdtRDcyYVVKN0dxZldPbm1wSXhJYXJ1TlFXQ3ZPWHZHbFZXNk42L2hjazlyMFQ5MzhSYjBMVE9VZmkzY2FQR01IQkRZeDQzNVVwL1NubFVIZWpKVys1V05SbW92cjZETXBQVVFZQ3pYTTFhMHRJQUFBbnNCTExMdWxFQ3B0YU1peDhzL3U2d3RTejZTNU1wRUF0TFFoK1FVZ1QzSDBsUlhxMi9SZmNpK0xrTTgwTVpTUHBjOWNlMHBuYVd0ck1mL2EwZWpwelZHL3VabFhaQ1RTamZ4T1dVcWo5b2g2N2YvSGNaV2ZwL0hKZ1QybjVCYiszdVpZeG1wT2FtTnZONDNUempJRFRUNkQ1M29lSzB0b2I1a1B1YStWenJRdTIrbXlDVngvU0dkQ0g4N3B5RmFWMVhtRkF2OFExMFBTOFo0eVhsVEFydjhNeXZZcFc2YTVmNzJhajdyc1B2SkdXN0V2aHRFM2pjdUdkQkMycFlTMkNWZWFaemtYcW9rTU9sNXpFenhKSElDeThzUVFNTDkySlI3dTBpdWluVEE2YmtQeWcybXJMWHRlZzFjWW8zbHNQMmNKN0RyM1hoMFptWC92WFBmZC9IdVZwVU1EMVN1RENIMDMyTlRpM2dKK3l5d3kvWFIxQnU1dnhpK2QwNGVHYlFQaHI5dkd1eVVqcS9XY3Mycm5EZ1kyaGZLZ0VXSDZDWHBzK0dtcXd3ZWRCc2k5L2VqTjNKUWdIb0ZsTC9JVnFVSTdDV2pzTnk4V3FlMHZ2eVBTQk1SMkpjN2R0c3RZeXpYTTFhMGRBUUJCUFlSMEhoa0p3Umt2U1RSM0xNeWxYV3B4TENQVjJpbHhIYUpUZmZ1M0VkSWtCMHJzT3ZaNXdaQkxkYXNNZjVsSmVacEk3cTltZHlzWTlkaWhQY2h1TTJqcHNDdTlVMEM2azNDeDNkc1UxWTZWUkRZZjBKc3plOWxqa2c5eHArd0xQb2xGRXFnU2FVcDR0TUZ3OGR1ekVXSHJGSnZaV2F5V2k4UndzVkVRcFdzaEdOcjdXYzZLLzdMVGxoakQzazlMRjFybHBwL1NHRFhUUWtkNXVxM3pqdUlpdlZMYytQQndVSTkxZmRhMXRGTDVWdXJYVU1DdTBTclk4enNNWmtIYjBOdGthQ2xXd2VLODVMYWswMjk4U0xoOGZXT24vOHh3YVBsdGtMejlEUUowTHIxS0gvc1g2azFHQlhMOGZaVlUvY29jbjBtSXc2NVk1S2xhT25lYWN4K05vVm5ud1gyR3RQQ213OVREL1JMMmloeFhZYzcraTNJVGZxTzBacDBRdUYrSlZhK0RvZ1ViRmxsNnZBQmdUMTNKSmFkejd1UmhjQys3UEhiYkIxanVaNnhvcVVqQ0NDd2o0REdJN01UMEVlM05tQzZTcDVLOXc4ZjU3bFdEN2tka1dXblB2cDE3VmdmYzZWSlFRaDFCVHYydmszeCtTbHJvemVFcS9heGRqM1B6SDYzd0Jxa3RIK3gvRGxDMnZhek5RVjJYUXVYRUtPcjdTWHBiZDA0bnk1aFZUVDE0N1drTFV2T3UvYjMwdnNvbmVKelBDZW83eFFCUjY0T1VnRlpwL2g1ejdFYXZXTnd4ekJtZmg3cWVqaUcxVktmMlJiWXRTWnFUa2hrbjVweWJzWFUvSjJZMnQ0bFA3LzlFU3NEQk4yUzh5eTljL3FVczA2b25HdG51S2tacWsvV3VBb0tyWVBDV0hwU09CQWNzK2VUY1B3MHA2TlREa0Z6R0k3TjQvMTIxZHlqOUlZS0NzNmQ0d0t0NzVQMnRVZDNBdjFIeG5aeTR6a0U5alJFYno3TUpiRG5yZ2w5YjdRSDBucjAvZ3B6WktnSXRVZTM1ZVM2U1BQM2M0M3FvZGg1Q0NES3pzTjVqbG9ZeXprb1U4Zk9DQ0N3N3d3OUZSY1F1R1N3WWpwbG93K3QzS2JvZzYvVTFZb244c3JTZEdvd1V1OURVVmJzVitnT0tONmEyOUZLK1c3WStjZDdWdUpnWWFpYW1zS0p4MzZvZnJuVWVGZ25ydXRRSWliTTEveDRyWVI2SjhXcytiM01FVyttaU5RYUVGbDV2OXJNVXV2V2pZT0xocElCVkxEalZ5WnVydFQ0bVBiOEhvK3R3M3NuOTNrOUxCbmpwZWZ0QmZheE55VzgvdWtXaUh5cDZoMktwYkUzeXJ5NjkrbnZteCt4TFF3UWRCanl4Q0NTeGJqSm4va3RSMWltZXFMaEZNTUV0VlZ0Vi9CRldickdrbnpTeTdCamFVRjFQVGF0OWlneU52bWo0UEl2SnpqMjFESHF4d1dCUGIwcWVmTmg3TzkxNlZxb0d3KzZHZUxkTkc3cHI3KzB6ZVJmRHdGRTJmV01sZGRTeHRJanhOOVhUUUNCZmRYRGR6Q05sL1c0M0xURWtueStTa0FlQ3VDM2EwaFhEMUhOWSs5YURldHlUN1FTZ3ovcExOZ1Z4SEN1bEJ1QWNiczl1eExZUHhvczVmUWg0dkZzOWZFNjE5alVxbWZONzZYblltV0tkWG5QTjBmRVY5Qm1CZHd0T2JoTGZVekxIWXlzQnVWT2EycEtyVjN5dzNxWmNLVzdwSjVEWFE5TEdLMGhyd1IyQ2R3U0ozV0kxQ0o1YytYdmd3dUxLWDZGVzdSN1NXWHFJL2J2UnJxTHl1Mkh0NWJLT2xXSDFWL09MVEFjeXN1RmpkeFZ4VklONjNKUG1OUzZmTVhPNS8rYkN0bytSMWF2M2EzM0tBcnEvVXd6MHlHN2wzUnJRc0xybEVNS0JQWTBaVzgrekNHdzU4UlZVUy9rZGsvelFYc3NFZ1JLQ0NES2x0QmFkbDdHY3RualErc21Fa0JnbndpUXg1c1RrQys5RjNYK2hvOUsxQ1RMTExsTVdGcVN3S1lyeUJMUWhsSk55M0xWSVd2eFdCcnprVHVXWjhxM3RmcjgrRVRRMDdrRmRyazBrSjlHK2N6K2R1Z3dBcnMvOG10K0w5VTd6OFhLR012eUlXcWVsZjhZb1ZvdVZpVE1ENldhNzdsbktTOGgvK1grVlBseGprTmREd3NRclNhcjRwekl2L1piR3JiNDV6cHhVOExRK1NOMWZLeTd5WEdwaFI2c044UlNWTFNzcnhXblFWYWxKYkVZU2lxUnYyNnRSMW9QaHRKL2hKc0k3eTBvVklGVUZWRHhiSkZuYWxtV2UydVNxcGZRTC9jU1MwcWVvTnBhWUJjTFdiRHJvTzJCR1dDbXVQSlI4UWpzYWNqZWZHZ3RzT2U0eEZNUHRHWXJ1THQ4clpNZ1VFb0FVYmFVMkhMek01YkxIUnRhVm9FQUFuc0ZpQlRSbE1DWncwZjhMMFJxV2FxRmtacnJmU1FlYjJiWG1SQm9iQk9KT0NrWTJKRVJUdnE0dm1wRGE4UE5hbE91TVo0U0xQcGpBdUZjQXJ1dXFENm9FeC8rZk1Cdk1BSzcvMHF2K2IyVSt3bTllNHBpUDVScTNvako4Vk92WUdCUDhKSC9PTWRRZ01uK2o3SXFsTXVvV21LYURwNWlQcEJWajF3czVLWkRYUTl6K2F3cDN4aDNhV1A2bDVwL1k0VGJNVzFZOHpNS1JpbzNQclhXZ3hpTHV6bnhhVW9QNHp5RGdTa3hJTGI3NE4yVXFIbG9XV3N1ZVlMcUhBSzcrcUp2U0xrNDFPK081eFpreW8wREJQYjB6UEhtUTB1QlhYTkF0NWwwU3phVkVOZHJ2ZjJIV3c2aTdQNk1QV081UDJOSlR3WUlJTEF6TFpaT1FNTDZtN3RnVjJlSk5MU21JRnViaFFLTFBqMVJhS2xBNWJYUGM5a3hoNXVZbE85Y1hSR1hLeCtONll0bkdNOGhvZnhMSVdDdGhKdHZSZHFBd083TnRCK040VnJmUzdrMmVWMTN3Q0tSY0NqVmZrKzhkYURVVFV4S1lLL2Q5bFJkcFQ2d1BRNzd1Qjc2YnhJNVVnUlN3dTJTZi9zUGJWU3ZFUTdPWS8zKzdlQlRQNGVMMXVWbkJ6Y1NRL2svYjJhWER0YXdPZVY1ZWJ5Yk9rczA0dkFFMWJrRTlwNXRqdTl0QlppODNNaWdwd2pzNlZuc3pZZVdBdnNGZ25HUGJoekYwcFNBOGQ3N3k5OFBod0NpN1A2TU5XTzVQMk5KVHdZSUlMQXpMWlpPd05zNEx2VWpXKy9XWHlhQ2Y5WCtTTlE0WGprRVA0eTkxNjE5MXFyZWU1clpReU9UU243MEh4S3VpTTRwc011aVhqNnBkUUNocStYZmR5WTlBcnUvS3F6MXZWVFBVcUp4Q3pIbGZNR0g3eEVScktVV2tqVkZiMitrYTlWMWlPdWh4NWEvK3dSU0gyRkwvZTMzZTdWL09iemZneEtCWFc1aGRIaDdyZ2ltMGdQSkhOcVBOak5aeGNkUzZTMmpuRHFuNVBGNHp5MndlM3UvdnEvSGRyN1k3enJpUmdVQ2UzcTJlUE9obGNDZUUyZEdMYitIYzhObHlydkFzNGREQUZGMmY4YWFzZHlmc2FRbkNPek1nUlVTOERhT1MvM0k5dnpIdGhDN3ZRL1R6M1JDOHlYTTdOT041c0d2ZHhaS3J3MCtYN2Vya0wvZUs1blpGODFzTHRGRW0vOXpocUJLY2dtVG14RFlmVkpyZlM4OWY4R2xZcmRQeWcrYUs5Ly9DZ0tZRy9RclpkV3JRTWJlVmUyY052ZDVVZ0s3ckJaZmtGbllJYTZIbVdqSWxpQXcxMjhGZ3pDTmdQZDdVQ0t3ZTRZQ0xjUnV0VSt4Zm1LcHR1dXRhYlROUE41ekMrenFqM095NmFBQUFDQUFTVVJCVkh5eXkyV1lBaC9IMHRqOU9nSjdlc1o0ODZHVndPNEZPRmFyWHhyY0NQVXhqcWJPL1RVOHIzMm1ic1pzSnJucVVzeWRrbStScGZWMXUxOHlWdnBLaHRGU3JYNnNSWlJWM0JPNWgrelQzSnhxOFc1WnpsckdzaVVEeXQ1akFsaXc3L0hnN2tuWHZJMjF1bGtpOU15RjVhSWhRTnZtait4bTNiVmRPYWhzVHp4c1laM2I5MG1pdE1TMnF3d0Fsdi9YNjIySWNVc1hUUkRZL2Jka3JlL2wyYzNzYlluZ2VTMnNJMFhUczVBc2NZK1Njc2RRV3dpSytjQXVYVXNPYlQzMDN5Qnk1QkNZKzdkQ2UyTDlocjByaUNFNWJaeWFSMjdWOUg2OFpvUmw3OVM2YXozdkNYd2xBcnR1dXVtMjJWQXFYWGR5KytmZE10SjhVQXlicitZVzJEaWZ4M3NYQXJ1Nm5PTXU1SEhodGtCSlhBQnZ2OUZLUVBhR2NTbmo0TFdqQlIrdGxRb0FmUHNFcExFSEtoNzNKZjFkNjdkY0grazc5SXJCcUNmVlBnbnNNdVI0bVptOXNJdkRwZURQclVSM0hYcnA1bVFzUG9MaW1Id3owVmoxVGIvQnR3aDlWSGxEU1laVENuai94TXhid2lrKzIrTDBabDc5TnY5MTR1R2JkKzdEWHBVeE9Xb0szbUtpOSsvR1puYnR4TTByTlV0dVNkOWtab3BGOXNydU5zL1hNOW9heStLTnJaN1RvWmJjTTlWS2l1bWlnTWI2ZHl4dHpxbTFqV1V0VHBRRGdSOEdxQ0ZCWU1rRVBQK1lhcnY4ZFNxQWtqNitscEk4ZjhPbFFiOXkrK1g1WVM4UjhuTHJWTDY3bTltZlJSNTRucG1KUjcrSm5GczBLZW1IOGlLdys4VFcrbDU2L3RjMWp4L3BkNzg0aDdjZWxCeTRwZnpmMTdUQVQ0M3hKNE1mWk4yS3lVbGUvL2R0UGN4aFFoNmZRT29HaGF3QjlUNmY0QmVUbFVQN1lZbEZjbU1oUVVxSHdxcWpaWktBb1VNczFhVytQbnlsSW52cU43MGt3THJuZjEyQkVpOWxabCtvUENqZTcxa0xsMzVUdXVBSnFyc1MyUFVPUGFEYml4K1Q2SngrTStTMjcrTUZBQkRZMDdDOCtkQkNZRmVnKzlkMzMxOUhKcG9tSVZFM1RwYjBiVll3N2FKWkpUQXFPTExtdVc0RlQwa1NRUjhmdnA4VXA2Qm04dVpGTEk2T0RGRWVtSEJ4bW1yanA0S3JVQm1yZU80NGg4cVJnSDZ6bWhBR3lsSWJOVzVUZVA5TXR6KzRrNW5wUURobVNPZDFRd2NzOStyRStROTZHUWYrbm9wMzFtZi9TTGc1L204anloOTZSQWNjY3JjYU83RFpqck94bHJHc2hJZGlJUEFUQWdqc3pJYWxFOUFjVmFEUW15UWFLaXNKdVIrUmYrMmxwSlRGcWs1NDlZRWh5NFhhNlhmTVRCdWJXQ29SOG5MYmxuSU4wd2MybFl1WVBpR3c1NUpkYnI2MXZwZTM3UUltSDVmQTJrcm85U3k0U3l6blV6ZFZKR2FwRDlvRVQwMzZnSlFycTZGOXdsUE43SllGWXVBaHJZZFR1ZlA4VHdqRWJsQW9SMDJ4ZFZOYzd6OGVGUWk1cGNpK0thNzNQVjZyeUo1eVcxV3kzL0ZjU2NuS1gxYUNzUURsWTk4ZDcvZXNsZVg4MlBaNnd0bXVCSGIxSjhkdFNLbWJId1QyOUV6eDVrTUxnZjFHWnZhc1JMTysyd253VnpDenQ0NmQ1QXQ4VHV1RXJOUmxxZjJMRGRyMzJNNFFTVzcrdmxHcGJHOWViQXZzT2pqUUliT01wV0xXNnJsTmsyR1YzdlBTUStxbGk3SmlkRHN6ZTlnRVlYMmJvVzZDU0dndi9WMlRqdkRxemkza0tST0Q4aUF6dTIvQlhqMVdWSTZnTDBOSDZUVjlXdnBZNXM1bDhrR2dtQUFDZXpFeUh0Z0JBVThVVTVOYWZ3eVhkTnR6MVZKVEdOaHVsMmVoVzl1RmhINTBKUTRlRlFFMEZOd0lnYjFrTmkwMzc5cmVTNUhjbGRDYnNqcFh1M1J0Vk1LNHhLaWNwSU8wNTBmRTd4b2YwNTdMcHhJUi81RFd3NXl4STA4ZUFjK3F1SmJZT2lTdTl5MVVIYnI2UCtVcTkxQnZoOFQxUHA5K00zV0xwc1NGUmg3Uk5ybHFXcDE3cmxwa0VYdnJOdDM0b1ZzYVdTUEcwcEpjRVhyQzJTNEZkczJIcDVtWkJOaFlLbzFCaE1DZW52VGVmS2l4Sjloc2dSZTBYSG1QNzR5SXJoUGNWRFI2WldjdDlpeG05aGVoVHkwcmxsSFNEVU04cTZuMWVQTmlVMkEvclpsSjRKYzdtRnJwamNIL3ZtNEE1YVlsaTdLYUF4S1FZOSs3dVgwY3lpY2p0UDlwWnJJNnowMTZEeC9WdVM2N2MrS0JJU08zM1BJMzgrbXdSRGN0WW1uN3BycnlMWGtzeHpEZ0dRaGtFMEJnejBaRnhoMFNPRS8zZzZZZmFnWHhUS1V4UCtZdHV1VlpZZFhlN0c3MndmdEFyVm0zMW85N2RxZjRENDFBMUhoSVROOFdKeERZVzh5NitjdGMyM3ZwQ2IwMXJvM0dSc0ZiRTBycjl0d1lUYkdFOWQ3cjBxQmxYdDlycmtuYi9PZGNEK2QvQS9lN3hrc0dGd1F4Nnl4WmZlbUs5dFNrbXhvdk1UTUpnME9wdHNndWNWMXU3VlR2VUpLd0xtRXFGWFJ6YXA5clB1LzlEcFNJcVY2QTA1aExneHI5OFE2TVc5WmQybjVQT051bHdLNitlRUZqUzEzdUlMQ25aNGczSDJyL3hucS82V3B0NlMyRjBuZGd6dnk2Z1NoRG9uUE1WS2tDb2tvMFZieUNLUWV0M3J6bzE3VFVnZS9VTHBmK2ZpNVZsTlZlVW50ZkdjdTBTbkxsb3JYelBRVVZuQ2tjeGlqK1JTeE5kZFYwM3M1THdCdk1UT3Z3VU5wMkRkUG5XZXBZRnVBbEt3VEdFVUJnSDhlTnArWWxrSE5LMjdkSXA3VnlKNk5yVTFNMkpsTjY2Rm1ydHZ6NDhUNUVhbHJQWHp6OHNKOW1BRmJLYlE4Qys1VFp0WnhuMS9aZWVoYXh0VDlDTjBmS0U4UkwzQ2owNWFhdWgrb0RUZXZnY3d2WFFZMnBBa1ZwUXo3a1oxRUJrNjdXV2R1L28yQWFIc3A2V0lDRXJBNkJIRi9PY2hYeTRnb2tkZVg3RDdwcjFuS2ZGa3VsSWtHc0hFOWMxM09QQ05mRld3VytxNERzUkVVb3Jvc3NsbU9wUkpqMllqV1VCRXN0N1dkcVg2S3lXbHJQbDdiVkU4NWE3akZ6MnVxdCtTVisrVldmdDY5dCtkdWQ2dTlTeHNGclIyMCszazNaMnZFeGN1WmNxenpYRFB1b29lK2NWblgyNVU0eGxGQVozcnpRMnF6YlVoTHliOU93TTBNM21XUFZMVkdVdlVnSTRxcURwZGJwd3lIUXV1SWM1U2I5THNxZmU4dzN1dHcxNmZCYVJtK2xLZWM3YjlzMVRGL0hFc2V5dFAva2g4QW9BZ2pzbzdEeDBBNEllQ2VvMjAzU1ZTWnRIbXI1c2l2cHNyZXBhZUVIdlcrZkorU1ZXc3JHK3ExSTRvb2FMOHVPb1pUeSs0YkFYaktibHAxM1RlK2w5NUZlNGdkOXpLaWtOcHM2a0xwY2QrUGozUVVGZTVibUV0bmwxMUZYU0hQRU9nVnEwbzJVK3lmYU1PYUQ3eERXdzRKaEkyc0dBVzlkS1EyeTYxVTVoOGkraitLNnR3OG9YZGRTUVcxYiswSDMxcWxkaTlhYmMzanBiWlc3Q2QzQVNMbFNLQWtvN3YxMjF4YVF2ZldpLy90U3hzRnJSMjArM20yUDJ2WGxqa2Z0ZkJjTHJtN09rRm53dTh6c3I4eE0vOTRPTEttMVVuczh4Zlc0ZkVJTTNheEtlN2diT0hHMVVrM3o1b1cra1JWMGVPaUFWSFhMRGFGY292elRSc0JTL1ZZcTdwWU9WdFdYbUtpNzJhNlloZk5RMjVjbXlwN0x6RjVsWnIrVU1RZkVTd2V4Y3ZuNHpZMzhtajhTNlNWRWk1dkhyUFNXcVB6bEt5NUF5cjFQYVpsOTh6MC83ME91WWZwbmx6YVdHVU5JRmdqVUlZREFYb2NqcGN4RFFIN3BGRlFuZDk1S1hMOXJlRWFSMnVkSzF3akJBV1AxbFZoMGxiYlpFOWhMUDNpSDZ0ZFZlbDNQMXhYUW9mVE9MdUNzR0h3bDhuY0U5dEpSWFhiK3RieVhGd29XSEtlTDRHd3RvSGlielRIV21kcFllOVpIdW00cUN5SmQ4UndTMmxXR3JMUVUyQ29WdU90SklRQldqbGkvaVhqZjE4Tmx2NTNyYTEzT25OYWN2MlBoN1F5UFJFdVJmUi9GZGUrQVQ3eEwvVENuZ3RyVzJMdWs1b0FuUmkxSk5QVGEydnEzekh1WDlQZFV2QlA5dmFTTkNPeHA0dDU4cUQxM1UrK3BXbHJMZlZmT1BHdVZKMWRZMVg3b1dETjdTT0tiWjd1Tk9vRFM3OWNETW9LSmpyazEyTmZuelFzRnE5ZU54RTNYSHhMVzFTNFpabmdHYWo4VHh2cG1HWU1ndzQzN1plU1RHQzFqajZGMGxlRFhPMWFNYmw5S0RQZlM5OE5ZNmQrcDVNVVk2NStWOWJqYzFYM2FxOWpNemg3V1JybUJTeVVGVWowdW83dyt5N25OVERmdFlpNXNkR3RJQnlJdktDZ3pGWXRKeFhnSEowc2F5NEp1a3hVQzB3bmtDcFhUYTZJRUNFd25vQS92UCswQ0FjcnlwU1I5TkR5akUxenZCN1drM0ZoZTc2cXhUckNmVWFPaVNCbTFMV1czcTFHd0w3bWVHRHFGejdtS2hzRGVjUEIzVVBSYTNrdnZZNlBselJJTlM4bzZVMzhmSTdEck9YMk02R05JVm1XcHBBL0JmelN6Zjk3SXBFTUhXZFo0RmpWUENJZVZZdzRxOTMwOTNNRXJ0OWRWcG41ZjFQR1dRbXNMa1gwZnhYV05nMmZkT2VhRFByVjNLZlhiWGZxU0xGWEVIZXFIOTF0V0lsNlhjc3JOWDlQS2VhbGpzNVJ4OE5wUlUyRFB1WjJ3ZHYvcm5yRFl2d015WHBDQnlZZHlYNHF0ZkJKYkpYSjdRVE1sR2l1dy9hWlZkRTZWM3J6WUxrTlc5L3I5bFpGVWJzcjV6VlJaSCtoaXFsekJ6TDZRVy9CQVBtOHZPWFlQUGRTa0hEZDFPb3k0V3dnT1c2SXQ1REJUc05NckRkeUVTT0h6M0xWNXhtL2JaWHZseFZ6RDVBenhuR09aMHg3eVFLQXFBUVQycWpncGJBWUNZOFU4TlUyYklZbnoybXlXL0JpV2Rrcy91UEtqR2tzMU53RkRkYlFVMkwxVDhuc0hTNDZVLzNzRTl0SVp0Zno4YTNndmQybEpyUkZzSmJDcmJQRlgrUTlzTUZYK0tBUXlMclZjNzV1eXordGhBOXdIWGFRbjJnck8xSUJkSHVDY2o5OWNuK3o3S3E3bldIZVdpbnFlY0ZmTHZWMXMvSmNxNGc2MTF4UE9saUN3ZXdLSzNHaGN0UXZtK0ZYdmhjUUh1MHZJbXcrbDcyS3FRaS9BYWFsL2ZiZHpPOGlnQXdLNUdVMmxWM1NpOFkwNnc0T3ZUMnlmMWoxWktrdk1US1ZTaTJhVjVjMkx6Zm9Vbit0YTNZSEJDU1A2azNQclRQUGlhRE1UdDdISlcxTnFmbHQ3cmxIR3hqbnErNTdEVExjY0hsc0FTOFkyTW43VE9NWlM3anpTNFk4T2RvNk1GSlJ5RFpQVDVEbkhNcWM5NUlGQVZRSUk3RlZ4VXRoTUJQUUJmSWNRbk1XenZCeHFVbXVodmFXUWxvTzRoU3NLMWV0WmRlU0tEZ2pzT2FPNHZqeExmeSs5RFYxTDEwMGFUVzlkcUZHL2ZIdEtnRXk1ZXNtZFdicjVjNnR3SUpuN3pGQStyOTgxUDRxRzZtKzFIazVod3JNbkpYRGhFTFQwSEFrNDNwWGtXbHh6UkhaUFlObFhjVjBmM3JvU3I1c3ZzWlJ6azIzN1djKzkzYTRGOXRiMWw4eGRUemhiZ3NDdStEd1NkbVB1SGtwNEx2WHdZeW5qNExXanBzQ3U5Lzl0Wm5hMnlJUnRlY09vNUIwWm0xZS9QNi90Zkk4ckRrZ3M1WDdyNUxZaHh4WEorNEpGOHhkekN5MFEyRFZtc3BaK2UwSFoyMWx6dUUyOUplcnQ0V3Z0SlhPRTZqSHhpTGFablNuTXRRdEV1R3M4NU1LbjVCQkgvdkUxZjJOeEEzSXM0ejNyL1MrSDJ3aWFrMlBUWEdNNXRuMDhCNEZKQkJEWUorSGo0UjBUa0ppazRDeXBEL0pVRXlXMDN6bjRaVTVaWEpkMk15VW96V0hkSVN2eUJ5Y2FQV1lUNHZsYkxmRVRpTUJlT3FQV2xYK3A3Nlczb1d0OXJWbFhmQlZJTlpacUNPem5DVUZLZFhWemF0TGErc2RtOXZHSkJlM2plamdSQ1k5dkVaQllxNkRac282TXBha0IzMHFoVHhIWjkxVmNsK1g2eTh3c0pnajBqTWVJRDU3QS92NFFIRkFmOXkyU1luUDh2WmxkSmxKNGlTRGNvbjJiWlhxQzZoSUVkcStOSlR3UjJOTXp5bU5kVTJEMzZsTFF6RXRrK3FOdS9aNk1LZDh6Q0doMXlKdHplK3ZHblVYeHN3czY1WTFWWDFUT3plT2NhdVZqWFh2R1dOTEJ4TFhON0ZzNWhRM2s4ZmJ3WTc1dGg1cHk5ZkJiRU5QSXhnWU1IYW9yNVlabGJHQnYzZFJYVEtWWWVwQ1ozVGNSdzhZVDZYT3Q0RlBEUE5kWWpweHFQQWFCYVFRUTJLZng0K25kRTFDUUZRV1gwWUkvTnNrdm1hSnY2d091UmtwdDBPYXc3dkEyaUdNMklYcEdWbXV4R3dNbFA3Z0k3RFZtMmJMTFdPSjd1ZXNOblZmL0ZJRmR2SFdvcHBzOXRaT3VxTjRuSStCVnJONTlYQTlyTSs3TGt6Qjc4ZTUybHNaVDFrSHk3ZHJTblZtcmZwU1VlK1ZPc05WMTQ1akZWVitXcnRIcnlyUStPdWRLWTBUMmZSWFh6OWRaclV0WWlBVlI2OGRrckw5Z1QyQ3ZLUklPelIrdi9oSkJ1UFg4OUlRekJQYldJL0NqOHBjeURsNDdhcjQ3WGwxTGVrOUtaNEhuL2tibGxYenJsTlR2V1EyckxCbG95QzFON20rZ04xWXFzNFp2OUw2ZlhuMVQ1NGEzaHg3emJiczlSaWNQaG52aVBKUnFmOFBySnNpYnpVeUgxME5wak5XLzlpQXY2WUtleXMzTlVFcFpvTXQxaldMRVhUL3liSzNEaFRuR3N1VDlJeThFcWhKQVlLK0trOEoyUkVEeitJcG05c1NKcmhHbUNrbDk5MXY2UU05QlhGdGc5L3l0S2tqUDczVWlYSzZQWmdUMm5GRmNmNTZsdlplMTM0dlNFZkkybEdNRmRsM3RmWTVqL1Z2YTF1MzhDbjRscTNoOXFKZW1mVnNQUy91ZmsxOStXQlhBV3dMeVpwS2JIbG10bFFRZHk2bHZDWG0wUHR6ZXpJN05DTElydDBkaU15Ykk3dFMrZXJlM1ZIN3ZMa2IvTFF0RFdjREZrdUt6M0t2ZzkzSnErMnM4ZjgzZzIvVTBUbUd2TTdQcm1kbS9qNmgwMTFiS0NPd2pCaTN4U0UyeGJkZHpJOVpOcjQ5ekhYUjQ3YWdwc05kMC9WTjN4azB2emJOY0xnMFNXZHFpQzRZYjFiSERacTJydW1HVDZ5ZmRteGRxMy8yNy95UEw4eHJwWjgzc2xRbjNZZjhSUk4vM2pxek0yMFBYRU5oMWtQd21NenNpMHNiYU1XQWs2R3ZQb09DeVEybXMxYi9uUXo3MjNhNmJ0cy92NXNXUVBsakROVXpmeHpuR2N1UTA0ekVJVENlQXdENmRJU1VzaDRCT1htOWdabjhSTEFESHRPd2JadmE3NFJyMFdMY3greVFvZWI0QlA5eWR2bC9GekQ1WkFCdUJ2UURXSG1SZHludTVid0o3aVVCWll4ckpSWWQ4c210OUsxa2I5Mms5ck1GeHV3d0pld3BNcFNDOFE2bkUvVmFMOXJVb1V3Y0tPdERXelRFdmViN092ZWRyL0QxSFpIOXJxT2lTaVFyWEpxNlhCRS9XalFzSjhTVjdnVTFVdXhaUkVkaHJ2Q2svS2NNVDkwcXNXWGM5TjJKa3ZEN3VvOER1Q1dNbDQxcDN4azB2N2RFRGg5eWJwWllHblN4dGtTZTJxank1RkpHRmNVN3k1bWR0YTJ5MUtiWGYwd0c1WEVpT05Sanc1bDROZ2YyMkllanNFTjlXTGw3dlptYmFHd3lsc1M2WHZCc1Iycy9yUUVrM3p2cDB4dUNxVDRkb1E2bm03WTA1eGpMbkhTRVBCSm9RUUdCdmdwVkNkMHhBSCsreWpOT3BmQ3pBa3RkRW5lN0szY0lZWDNIN0lpaU4rWUgydU9ydkNPdzVsUFl2ejY3ZnkzMFMyUFZ1YWxPZThyUFl6eUJaUWV0MmoxdzhmV0xMY3ZaVUlaaVhQa3h1bVhFRGFJd2Y3SDFaRDF1OWticUsvQ3luOE9QTjdEbzdzdUN1M2U5ZkRqY3VGTlRVUzdLa3VuVmhrQyt2ekxGL3p4SFpVMld2VFZ3L2k1azl3Y3kwTm5qcFhXRitmdHJMbVBqN3JrVlVCUFlKZ3pmd3FDZnVsUWl4dTU0Yk1USmVIL2RSWU5kQnNHSVZ4RkxKdU5hZGNkTks4Nnl2UzYzSHg3WkdCbDVQVHp6OG1PNkcwSjB5Qy9mbXA5YnRxM2F4eUw2YVdWNU90cGI3N05haXJIZkEwWUtYbUxiNkp2YUNxRzdmYkVtTlhTM1hNUDBjYWoyV09YT1ZQQkJvUmdDQnZSbGFDbDRBQWZteDFVWkVBVnpHQ08zNk1aVWZNb2xTSmVuSndkSno2SmtXRmdQYjlYZ2JuS1BES2JYWEoxMVprMlZsek8vNm1FQm1MVGNUWG45eS8rNTlhTS8xMFpUYjNyWGwyOVY3bWJJU0VjTWExaStwc2ZBMmxBcE05TWpNd2ZUZVRSVWpZVjJ1bStTMkljZmlYUDZtNVc3bThZN1FQbVQ1a21yMnZxeUhtVU5UbE0zN29Pc0xtM3ExdXFoUmpUSnJmdDA4V0lmSk10cExFbmZ2dXJCRGhiRWkrNXJFZGZWUmZ2R2ZtZWwyU2k0QjVNWm9qRnVZelRsdzVrN3NlVXZDeDN0Tk54ZERjOC83M2Y5WTUvN2dVcDBQNWk5NEUzZUd2M3ZDMlJMMktKNFFXeEswRm9FOVBhbTgrVkR6M2ZIcVdxdkE3cmtHcWNrd05ab1hDbTVpRkhSNUtKVzREUEhHcXRTbmU4N1NKaGNqS2plV3B1eXp2VDMwbExMVlhzOEh2OXpENk1DL2R2TEdhVXEvVXZIVDlGMGdsMjR2Q0lITFh4LzV6YS9wR3FabjEzb3NhNDhSNVVHZ2lBQUNleEV1TXErVWdBUzl1M1NCWVk3cEFnSG1mTmh2ZGxPK2gvVUQ5WjZDdnFjRTdsWlh6RGFiVjhOaTFJdG9QK1UwdTlWcGZjRVFKYk42SDlvMVBsNjlRNUJhZmFsUlRvMytEclZqN3ZmUzI5RDlmckRZck1Gc3FBeHZ6SE0zMGVmdGhQQTNkRzJWNkJCTGp3cUJTY2Y0ck01eDMxSGlHbW9mMXNOV2M4SmJhemJyelQwWWJkWFdLZVhLR2xxdTIyU0Y3eVVkNE9nd1RDNWtsaGpndFZSa1g1TzRIb3NGMEdLZDJTN1RleGRLQkZsdmpnMzlmYWtpN2xCYlBVR20xVzkyQ1ZkUGFDc1JMSmM2TmtzWkI2OGRKYXk5TWZicUd1dlN3cXUzOWQrOUE2RVN5L0VwYmZVT0drc08rcnl4YXRFbmI1K2R1ODhkWXRpeWJOWG5IVzYwK2tid3hxbkVMZEEyTjJrZWp6T3oyMFFtNWR1RGE3ZUhKZ3dEYTdxRzZadlJlaXludklNOEM0SEpCQkRZSnlPa2dCVVJrS0QzUjkxMXVEc1hDdTBTa3lSdWZDU3pyN1dFdE16cVRwSnRxc0R1QlRVdEVkZEtOMGx6V1BoN1hMMFAvUm9mcjk0YzhkbzQ1OTlyOURmVjNybmVTMjlETnpiSWFPNVllR09lOCtHaHpiTDhiK3BtVFN6cHhzN0RKb3FUcWtkQk4yVlZIMHZIQlgrbC8rVUFxTkh2WE1aRCthYXVoMVBxOXA2Vml4NVplK24zSlpXV3NDNTZmWW45dlNRSXJ5eWxibWhtcngxYjJVelA1WXJzYXhMWFpjRXBTN1lqTXhncW9Ma3MrWjZXZVRzbW8wanpmbmRiVzhZdVZjUWRZdWNKTXExL3MzUEdVNzlERDA1azFBMEpDVWM1dDZ1V09qWkxHUWV2SFRVRmRrK0VYT3R2bFhmRGNZckltZk8rOUhtOGRmRHpuZC9zUzV1WmhIWXZlZk9peFo3WDIyZm43SE5qL1dwWnR1cjBEbG5rU3VlYkh2UVJmOWMrOE9jVHowMGRwM04zd1dWMTgrRVhJblc4S0xpcEdicXRQc1dZTG9XaTlWaU9HQVllZ1VBOUFnanM5VmhTMG5vSW5OM01IcGdaWUszdmxYNmM1SmJoNnhuZFhMS2c1UGtSOUlLYTFnaTRod1c3bVRkSE1xYlpiRm5tK2xodi9WNTZHN3FwbTFodlFHcFljaXVnc0lJK3h0dzJQU25FbjVBQU5qVjVsaS9mRGE0azN1aFU1TTMxS1I5Y09YMU1DZXplZXBoVC90UThpdlVoUzdKVWtwWFIxVEovZjZhMnA5YnpKUUV5VmVlTHpVd0J4aVFnTEQzSjBsc0hUQkpkVXFsazM3Q3JQdXM3NEtabUpsZE9PVGY4ZEp0UGh5QWZxdHhnVDFqYXRjQXV2OVBhQTM2bmNyL0hGT2NKWjNQOVpzZmFyamtsUDlJM1NYVHVQbWIySjVtZFIyQlBnL0xtUTAyQjNSc0x0WFNOdDYxU0IwSnozRHplSE9GYVJnSGV2R2l4NS9YMjJWUDJleTNMRm4vUC8zM21jbFU5VzQxeDBsNUZCK0lscVlWcm1MNysxbU5aMGsveVFxQTZBUVQyNmtncGNFVUV6bTltQ21ZYWk1aTkzWlZqZzA5WXorTEcrNUZ1ZGMxTTdkV0h2MDZqajRxTVErb2oxUlBVVk9SWXYrdWJ6VUZnUjJCUExST3Qzc3ZMQkgvazhuczlsRnBjbDkyc1o2b3Zjc1dSVUtCU0NhMUQ2UU5tSmdGK1NxREI3WEk5eTVkbkIzRXVaY1crMXZWd3JwOHlMeERWbU1DeWM3VTlWczhSWnFiREhybUo4SklPZys0UnJqRXYwU1hNZHZ0MUNLMTNXYjVMYzlLU1JYYXRLYkl5bHEvN25LU2d5dmR0NUJmZmkwZlErakRNczh6ZHRXaTlPVDZlY0xicnRucStqTlVYSFZib3hrUk84a1RkbWdKeVRudjZQRXNaQjY4ZE5mbDR3VURGcGlTZVRBbnZsbmxyaWRvMTJsaXJMZDY4cUNIY2J2ZTNwWERhc216MXd6TUdxVEcyWThxb01VNzZyVmRNdFdzVk5LQ0ZhNWkrK3RaaldkQk5za0tnUGdFRTl2cE1LWEZkQkVxczdISXROcjBmamhvL2xqSEtuaFhZbTRKMWlZTG1iYWFjSysrMXJHTVIySmU3a1J1YVY3djRXRy94WG5vZkc2MzdtZnBveXZGYmVra3pVeENpVTBaZS9qc0d2OVcxVitDVWhiVnV0RnkyRXh2L05WSHBHdGZEMmd5OThuU1E4VHd6dThoV3hoYXVPTHkyVFAxN2lhdVJWdGJRVS9zUWU3NVVYTy9MV2FMSUxyLzRzaktPSGNadk1sQXNHbG01UzZocm1Xb0pTMlBhNlAwK2xGaGNqNm0vNUJtdnJhMS95N3kyZXUwclBTeng5clh2NmdMa1hyVnoveWdYRG5NbXI1OXpqWVBYanBvQ2U0NWJzeEwzUDNPT1Y2cXVYYTQ5MiszeWhON2NHd0xldkdqeExlcnQ5NVpzd2U1eDM5VmNyVFZPRndqZkVEb0E5VklyMXpCOXZTM25pZGMzL2c2QjVnUVEySnNqcG9JVkVOQjdJR3MwK1RiMnJram5XR3pLSWw0YldwMFlENlZXa2NoVmwyZnBFN3ZtTEdzaW5XN0hYRS9VRkFnUTJCSFljNWFGMnUrbFhOQzhyYk9zUFZ1a2NzM3hhNXZadDNJYVY1akhFd2h5QXZpbE52OFM2Q1YwZjd5d1hUblp6OU9KY0hJREUrUG0zY2haNDNxWXc2VjJIdjMyYUF5dmJ2WkRmOVJ2TWJPWGQzN3V2MUs3b29ibFhUUDhqcHdtbzQ0LzdtNWNQYnlSTlhSRzljVlp4b3JyZlVXdkMvc01pWXU3VGhjT0xubk9rZEVRaVlRNnZQdEdSdDZwV1R5LzNibkMwcGgyZUIvODNqbzNwczZ4ejNqQzJWekNicXo5bmxCVktvaDd2NSt0M1FmRit1bU53MXlITWw0N2FncnNZcUZiTDNwWFk2bDBmTWUrQnpXZlc1UEFuaXRTZS9PaWxuQzdPUTdlT3ByYjlxR3hiVm0yNnZQV3JacnpyYVNzbXVPVTAwY1pFMTZodXkzNzFwSkdGdVp0UFphRnpTRTdCT29TUUdDdnk1UFMxazNBRTVuVnV4eUxUVm53eVZKYzErU0hrb0xhM2NqTXZPQ0FZMmg2ZFErSit4Y3pzK1BON0F5UkN1VVM1MldkZjl6UGpXblF3RE95MXBRcmk2R2t1dVRpNWt1SnVyNXRaby9xZk9oL29sSjd0b3Z4UHVaMi9mSGFxTnVMTGJiV2UrbGRXMi81VWVqVjdZbjdudFZZeXpYRmM5M2dXYXQ1YTFMTHRudDF0enpzWE93TDFhQmgya3ZlM016RU0zWkkyMWM3bHpWMHpXN21pT3NTMDVSU2dSMlhJTEpmT2R5V2lQM2U5OXdVclBCV1p2YWN6RUNVTlhqTEI3OTgyOGRTeTBDRFh0MHR4ZjFTZHA1d3RzczlpcmQvVWwvbGU3MS9YM0w2N3BXWmN3TXNwNTdTUEY1UXhKckNXS3B0M255b0xiREw5WmQrdDJOSjN6WlhETjlCcFV4M2xYOUpBbnZxb0xFa2lLdzNMMXJNejViQ2FjdXlOZTl5eE9kZHpNOWE0NlIxVkc2NVl0L2ZtMzJUKzl6ZjY5YnBHdkdjaHBpMUhzdGRqQk4xUXVESEJCRFltUXdRK0FrQnZROFA2SVR2WXh3b25pWFRtWVAxWVN4aWQ4eE5TNDJ4OFB4TUQvbEdYT3FtSXNhalpJTTVocW4zTWJmTGo5Y3gvVm43TTdYZVN5OCtRY3VQZEswRmIrN0VJN2xsR0VxZTBPdXRLYTB0NVZKcmhIY3c0YlY5YWV2aDJ0K1h1ZHRmSXE3TERZNStQNWRneFozTFNlSzZicTdwWmtFczliRkpkTGp3QjA3d3hsMks3TG5pdWl6WEZLQ3kxU0YyaktNbldMWmM1MUpXdVhLcHA5c2w3ODJkTkkzemVjTFpMdmNvNHZUcWhDdXpNZUtyZDhqYmVrOFlHMDVQYUM3eE16OWx5bmp6b2JiQTdoMWNxeS8zNy83UC9hWjBhdVpubHlTdzEycUxOeTlxQ2JlYlE5VlNPRzFadHZyZ2ZRcy96TXplT2ZPOFZIWHY2d0tMbnpDeDNodzNzSnRWeU5qdHh1R0FmV0xWZzQrM0hzc1diYVpNQ0dRVFFHRFBSa1hHQXlHZ0s5T3Y3WHlUbmpmUlg4L2ljcGRDWGlxZ29INHc1YWRTSHorYnlkdFVMRzNvVzM5TUliQXZiY1ROYXJ5WDZsVXEwS2h1Umx5KzBRYmFPL2p5RHUyOEQ5cldIL0twemJCM1BYOXQ2K0h5WnYreVc1Unp3MFNCV3U4V1lnU3NJWkJwVDd4RVhPK0RuLy9VUWtWMjc2WmEzMmZkRHBPUXJmVnc3dVFGR3ZWdXk0eHRyeWZnNXJqd0dsdjNtT2M4NFd4WEFydmNYTW5WNHZVVG5YcDdDTlQ5OWNLT3AwUkhGVFhGOVVSaFUzNmNQYlYzanUyM3g5YVZlczZiRDdVRmRtK1ByTFlxNkxyY1RIeWhSWWNibEpuYUc4NDVsdXBhYXE2WHhDL3c1Z1VDKzRrbmt2WW9qMGpNclYyc01iV21ldTd2LzJaOUh3c3hXbG9jdENPdzF4cFp5bGtrQVFUMlJRNExqZG94Z1VjSG42T3hadVJZWEtZMmEyTXNlSEtScE5yK2VUTzd0Sm5wUjNNekliQ2ZtSWYzOGJDcmo5ZmNPYkN2K1dxOG5KaWMyZ0FBSERkSlJFRlVsOTRHdXBVTGdwVDdnWnoxd1B0UWFyM3hUMjJHWSt2SzVqeGMwM3E0cis5UGkzN2xmTFRKSll4RStGMVlmazNwYzQ2NHJxdjhzbXJiUGpSWW1zaCtydTYzLzFXZCtQbExDU0E2dUpiRjJrdG1kQW16M1J6dnRvdDNXMmJzZUhzdXZEeWppckgxam4zTyt6M1kxUjVGcmdkZTRiaUpHaHVNMjl1bnRyemRNRFJPK241V2tHRGQ5QmhLYzk1NjhPWkRiWUZkL1pWMXV1Sm9wSkxXRTkzK1dVUHk1bGVydmVFMkcrLzd3ek5vMkN6UG14Y0k3Q2VtNzRtK1F6ZkExekMzdFpmUjc3cHVGdzBsSFNERjlNQldybUk4MXEyL2FkWXdiclJ4eFFRUTJGYzhlRFM5R1FIdjJtZk9Cc2Z6NStsWnJJN3BuR2NwR2pzWThEYVdZOXJTOGhrczJGdlNYVzdaTmQ1THVVaDRaV0l6K1pqT2ZjV2RHaUJJQ2N3NXJtbThENlhXbTlIVVpqaEhTRmpUZXRoZytQZXl5QnpSVm9Mb2RjenMweXNqTUVWYzc3dTZGSkZkZlpGQWZGUmlESFFJb2pYa1BUc2VKeS9XUkluMVprbFhQTXY1dWNWYnIrM2U3OEV1QkhaUHhGR2ZwbGcxZTcvL2N4K0MvR3pZUzF3a01saHozbnJ3NWtNTGdmMlNuWVg2NnhPdWdJUkZoNnB5KzdTR1FOM2UvQ3FORytDOXc3Ry9lNGVNWHJ3ZUJQYXg1TTI4bTZhdHZnL0d0OWgvMG5PeHFiWGhyOEkvUTVwZ0sxY3hDT3orMkpGanhRUVEyRmM4ZURTOUdRRnZzNW9qc0YrMEMvS2pINjVUUjFyWjRtUEE4L01jMnh3Z3NKOTRrRHdMa2wxOHZEYWI3Q3NxdU1aN2VmYk9sL0xiek94c2tYNjNzSkQwUHNUL1BsajRmaWN4Rmw3ZlcxdFhwVDQrOTIwOVhORXJzYk9teWhYRUV6c2YzYmRJdEVDV3JBcm1YZW9LWW1lZENoWFhFTmVYSXJKcmp5OHJSWWxEc1NUL3J0YzBzMC91R255b1B4WGdUMWxhckhWalhPdnRFcGYzZXpEM0hzVVRjWHBXdDNPQzJLYVllbjNXUWJVc05EOCswOEI0N1dteHg0OTF6V3RMQzRGZDN6WXZETzUrVXNqdjRiamRtR200M0dxOGI3WVdESWNhNWJXalJPVDE1Z1VXN0NjZUFlOGJPbWV2N2s2MG1UT2tiaFhKZFo5aXl5am15a3VEaTh5aDVyVndGWVBBUHZORW9McDVDU0N3ejh1YjJ0WkJ3TnVVNUFoSzNwVmpmY3pLWFlzK0Ntb2xXYUM5S0ZLWVRxR1BEdGQzdDdQSW1sNGZ0WE1sQ2RnU0hXUHBTNTBva0JJYnYyWm0raUQrbDBZTlJtQnZCSFppc1RYZVM4OUNzc1h0Q0svZE9WZm16eG9PQnM0WllkamF1aW9WQUZDYjcwczV2bGJYdEI1T25LWUg4YmdPWEo2ZnVBa2lLenU1aFZtanVPNVplOGZjd3NRR2ZwZVc3TjdhOCtFdStMSSt3SmNpcm91aGQ4dElWOVp2V2RHTmpiNkQvakp4V0RURjZyclZZdUNONjl3Q2UwNGNocW5Xek41dmlGalA2WkxFTTB4cElWN0c1cE0zSDFxSnd6cEFmWll6eWJWZnY1S1ovVk9ybDZGU3VaN2xlS3ZiTTl2TjkyNzdsUnd3ZXZPaXhSeHRLWnkyTEZ2ajRCbkQ1TGhEckRRZHF4UWpneUs1aGpzeVV0cFRRdEI1dWFuMDNIdlZkaFhUZWl5ckFLUVFDSXdsZ01BK2xoelA3VE1CN3dNdjUrcW45OUVtZnRjMnN4ZFhBcWtnWFU4TEZvTkRSYllROU1jMlBmWEQya0xnTEcwbkFuc3BzWG55MTNndjFkSzVQNHhUdmtwejUvdnB6RXpXTTdyQ09wUmFXdFo0aHhJNVY1WlpEK2Q1Uithb1JSYmV4NXZaeFNPVkxWRzB6ZUdTNDBxbFZGenY2ODBSMmQ5b1pqZm9QbmoxRVY4amVYc0NDVjlYNnc3ZTMxR2pzb3BsNkhiUm03c3I2M0pCTk1kZTVqeWQreHl4ajkxcXFpM28xMERsQ1dkekN1dzU0dnAzdzhHSk9JOU5PYjhoV3Bma2txcDFnTjR6ZHV2Znk4MU0xc1pES1NldXlsZ09RODk1ODZHVndPNzlGdlJ0WGNPQnF4Zm9XSDNKTVlhWU1xN2VyWUJTa2QrYkZ3anNKeDJ0bER0SDVaN3pFRy9LWE5KODFtMEhHZEFOcGMrWjJlVzZHMkVmQ1g5VS91UE03RmFSL0xWZHhTQ3dUeGxkbmwwOEFRVDJ4UThSRGR3QkFjK0NJRWRRVXJOVEZ1WDZ1NEwvM05UTXRCbWZtcnlQeE1lRnphRitKSGVkRU5oM1BRTHJyTC9XZStsOWRMdzlDRTgxckcrOUQ5QmNRY0FURnlTVzZYcjh2ellZMmdzR0Flb01rYkp6cnl5ekhqWVluQjBVbWJKYXJQMFJObGYzY3NUMSs1dVpibko4YjJTajVoYlpQUi9KT2l4NFNFVkw4SkZZVHZLWXQ5YnBnWm9paHplZll6Zi9hdlYzVERuZWI5Z2NBcnZHNmVabUppdklrem1kcURYWFVxNTgxQVN0UDljenN4ZU1nVnJ3akt5SVpkQVNTeTFjemFXYTU4MkhWZ0s3MnVUZFp1cmJyWGtpZ2JyMTRVZkJNSjRrcTJlUkwzZGFzc2IvNHBSS0VzOTZhM2FwSVlVM0x4RFlUem9ZM2hvalZ5bzZDRi95UEZhdnZJUFBJWGRkNSszbTl4dk1URGRtaDFKTlZ6RUk3STBXRVlwZEJnRUU5bVdNQTYySUV6aU5tWDNmelA3dlRKQnlyQmh5QlNWZE9WUVFvTmoxckZ6cjFaeXVwNnhrWlQxMGhlQm5MYWVzMW5rUTJGc1RibC8rbXQ5THowcW81a2U2OThGV0loUjVHMzhKZ0ZvSGFxWWMzN3E1TjNGWUQydU96RzdLOG40ZmN3K01kdFA2NFZxUENPNXVycGhvMUZSeHZTOTZUcEU5NWRacGlXNVBOdkhMTDZ6RXBOZzNTaTNCMERzQXJYbllXblBPZThKWmE0RmR2NkVQTURQNTEvWlNUZXRsejVCRWJXa3RnbnB1RjlTR0ZyL0ZLYzdlZktqMXZneTFRWFBodVdaMkxXOGloTU9ZSll2c09mT3JsVTk1ejRKWWVFdjJpOHJ2ell0OUU5aEwzT2ZFcHFzM0IycmN4c2w0VlNabDhRTFFwOVlEV2J3L1BsRjdMVmN4bnNCZVl5d25RZVJoQ0V3aGdNQStoUjdQemtGQUc0UUhkaFlELzd2emtmbUpHU3JVdGZmWG1wa0V4RmpLRlpUMGZFcjQxdCtmRi95Smo3V0tVeG5lcWZQU1JBOEU5aGttY3VNcTF2NWVlc0wzVkgreHd1OWRJeThWdWJ5Ti81ZkRRWm9FaGxycFlzRWRTTXg2dmRUMUZPdGhyWkhaVFRsZUVEQjluRDFoTjAwYlhldEZncnNIK1hnZVNyWEU5YjVzVDJTdjRickY4eVdiYXlRd0d1ckVCejNoVzhYcjl0L1RKOWJqV1NLM2Rna3h0dm1lY05aU1lQODFNM3RPd25Ca3MwKzFBK2pxbTFWejkvWU91Q2VGUEZQMjFVTlZLTGl6Ym9QZUpsRi95OXRrc1dxOStkQlNZRmViTGhDTWlXSnI2R2E3ZGJ0QS9PVHVaR2xKOCt0UlpuWm5aM3hidU5ieWZHQ1BPVGp5NXNYYUJIYTVTSHlkbWVrd1lpamR4d25vblRQZlBOZHFLa091cnZRZFcrT1dhMDZiU3ZKNEFlaTlBd0w5OXI0azNJZ2RxcmZXTGNVNXhyS0VHM2toVUpVQUFudFZuQlRXZ0VDL1FkQ1B4akZoYzkzcWFsYk9OWEVGSlpVcmhvOW45dFZ6cnpEMXg4cmI4TmUweHMzc3Nwc05nZDFGdFBnTWEzOHZQV3RxRGNDVWErMzZiYjJubVQwME1aS2xIemM1NGtKTmE4R3ptTm5mSlh4dHEydWxycWRZRHhmL2FpY2JtSEx6bzkvbHk1dVpEcWZXbG1JaWUyMXh2ZWNTRTlscmlPdXF3eE5XZEgyOHRSdU5xWFBnRG1HL0Z5dG42blYxejhwUHZtbmxEdUxmcG5ha3dmUGUrTllXMlBYYmN6NHorOVBnK2pDblM2MWlNWGh1TlBxMlBhSzcrWHF2Q1M2ZHR2dW92YmI2ZjNlbjg2Vy9pVGtzdlR6ZWZHZ3RzS3Q5bmt1S3pUNThORmhqei9GYm9Sc0hzanJYMkgzQkE1bDVXRkI3Ym50cmtabzk1a0RSbXhlbGU5QU1mRDhVbmxPeHhiU0hrSUE3Sm5uOVVZQnlHYzlNZGJ2cUhYYW83YTBPOFZUMkw0ZC81STZtTkhtSHhzZDJCd04zZFZ6RGVmMmYrdHViczBlcE5aYWwvTWdQZ1NvRUVOaXJZS1NRaGdTMmYxQy9ZV2IzTlRNRkl2bFd4WHAxVGZ4WlpuWlZwOHljSDZmTklscGFST1NJZUV2MEY0ZkFYbkhpN3Fpb3RiK1h3dVpkaGZ4QjhMV29qVjVwOGo0MngxZ2o1V3hLbGVmNVpuYnJpZFkxRXRkMTdWdUhpYkUweG1LZTliQjBKaTBydnc2ZDVIcGtLT253K1JMZDNQdjBzcHFjM1pwdGtiMlZ1TjQzYUZ0a3J5V3VxM3o1Ulk2dFcyczVDRGxUdUUwbzY5aFlHbnVnbUdOTU1lU2pObnN5TmM3b0NVMjFCSFp4MG41Tm92S0ZDL3BVMjNKOXMrb2NDOU0rdjRRK1didFBYWlAwZlNCQlRlOVZLbzM1VFN6QUdzM3F6WWM1QkhiUDJHZW84WS90L2tmZGF2dEtEUWhiWmVqR243NFZiMkZtbndxL1RRcnM2S1VjdDNncVEzNzJyMS9oWnJVT0FGNW9adnI5aWFWWGhibjNUYS94VzMvMzVzWGFCSGF4ZWxzaUlIV3BBVndNWjY3Ym85cDdCTldyVzFNUDZsemovcEZqb0RQVWR1OG1TZTZoY1k2N29xbXVZdVlheThKWGh1d1FxRU1BZ2IwT1IwcHBSeUMyUVpENEpTSHAwV2IyamdsV0t0b1VLbURKWDVqWnp6VGFQSHN1WEZTdE51WTYyWDlySmtwOW5NdkM2NUdKQUZNMVA5Z3ptNVdWRFlFOUM5T2lNKzNEZSttNWNORUE2SXE1Zko5cnJja0pFS3pmVk0xdkhkYkYzRXhORWU1elAvN2VZMlkzTkxNUGpaaEZGdzN0LzBYbldYMEU2QU0yaDh0bVVheUhJd1psQVk5bzdza2x4MDBpYlNrUk1SYlFuY0VtU09TUTcyL3RCNllFTk0zdFh5K3k2N2FML0k1ckwxTWpwUTVDYXNaK3FkSFdWQm1lTlo2ZWZXV3doczExT1pFamxvNFY3bHZ6Nk12M2hMTlNnVjN2dHJqb0g1V3R1WGlON2ozUUlVZHBLaDJQMHZLVjN4T1NOc3ZVYjdoK3EvN2N6R1NnVTVKT0d5eGl0Yy8ydmc5VWJpdi8zRjZidmZrd2g4Q3VObzRSMmJVZjB1K0tidnVkTUdJL3NjbEdOeFBsQzE3ZlJwc0hRcVcvVFRsN1E5V3I3emI5SHI1NlJMdjF6aW51aDRUS2N5UUdlTXAzbkRjdjFpYXdueTc4UHN1OVNDeU4zWmR1bDVmakxsYlA2QkR2dHAzQnp1ZTlselR4ZCswRE5HOTE2NmJmZDVlT3pVK0hXMm15UG8rbGtsc1EzajU5NnUzN09jZHl3dER3S0FUR0VVQmdIOGVOcCtZajRHMFExQkp0MEdSTjhOY2hBclo4dGNkTytqWG5mejY0UFpDVnFjUjFuUnJucENtYlo4OWF0cTgveDZKRGxobjZJYjZPMCtnL05MT0hqOWo0NWJDWWtnZUJmUXE5WlR5N0wrK2xkeFd5cHkwTEkxbnhwVnhENmFOTTFsajZ1RXVscVZkTFBSK0ptM1VmRjN4U2VtNE9laGNBK2pqeDFoV1ZQOVVISmV2aE10N2prbGJvQTA0M291UUdKcFprSVRqMWVuWkptNVJYY1FEMFcvN0YwZ2NqK1JWdlFMZmphdnR2ampWUEg5Zi8zY3drZk5kSzJndmRMRkhZbDh6c083VXF5eXhIUXBFT0svOGxNNyt5NVZvU1NqaFZuQjdkdW9tTm16akw1WXNDdUtVT0Q2Y0lXZ1ZkbTVRMTUvZDNVZ1VqSC82emNPamF5bzNqWnJOeWYwTTJuNUVRS2pIM0xjSDF6L1k3SUlINHJPSDc0SHBtcG45T2xzbGlsN2RGdmZrd2w4QXVWTnFmNklheDJKVW12WHN2TXJPWGhjTkdXYllQZmN2cFhkWitTd2RBRWtMMVhsODVjU0JVS3JDcjNWNzhtYzIreWFwYSswTUZSZjYrMCtsU2Qwc2xvdWgyMWQ2OEtCVnhjOGF6cFlzWTFTK2pPbGw1cDlJZmgyL2ZvWFZJYzBkN21IODBNODIzV01xNUlkNC8yeC9peVQxVXlXME1IYXhvZk84U2RJbk50cFNNVFU1Yng2eFAzaG83MVZYTVhHT1pNMi9KQTRHcUJCRFlxK0trc0FZRXZBMUNxc3F2Ym0zTzVQWkFHK2d4YWFvb1ZtclpvUTJ4UGhZM1JRTUZtRk1VK1p5cnVsUGJPNFpSN2pNSTdMbWtscHR2WDk3TG5JM3A1aWpJTWx6VzZkcFk5a2tmZVRxb1N3bVBmZDVhbHBGZVlNYnRtYU4xNVBXZHhaVFdsYzAxUlcxWHUrVWFLeGJJZExzc1dXM0p1bEdIbW1NVDYrRlljcnQ3VGdIc05IL092N3NtRE5ZOFJqeFpXQmVxTnVkVXdUM00wVlZMblY3WVdNdjVIUC9FZmVza3FHamZKSmNLL3pmOGo3cnVMci9kMmp2SnVDS1ZwdHd1bWs0b3Y0UXB2Ny81dGVUbjFBR3VYSEVvQUdIcGphYjhXazZjcy9RM1pHdzlPYy9wdDFBSDAxTmQwZVRVTlpUSG13OXpDdXhxbnc3R0ZDeFVscjFMU0dOL0l6eFhmOXQ5azlDcUcxQTZ3Tm5jSXlxZjlscmFaK2tnUURjamN0SlVJeWx2WHBTSXVEbnRWWjdXQXJ0dTE0aXhwMS9wRUZsN2RkMEsxNkgvNXUrQWZpZmt6czV6R1pUalNteWJ5d2ZENzYvaUM4aFZWbjlBSkdGZmV5ZFpodWZzdVV2R3hqc01HdnZibTJQTU04VlZ6SnhqbVR0L3lRZUJLZ1M4QmFwS0pSUUNnUWtFdkEzQ2hLS3pINVhGaTA1eXAvcDh6L0Zybk4yb1JNWmFJbDZOdGd5VmdjRGVpdXg4NWU3VGU2bVBIVmw2eXgxQnkxUTdNSmEzcVc3Umw1clduYXlITFVhb1habXk3SlNsM2puYlZUR3E1TEhpeWFqS1Z2QlF6azJEWFhSajdFZSsyaXBSNm5rRmg0QmoremRWMEJwYmIrbHpTL2o5Vlp0MUlDR3J6V05HdUY4cDdmTlFmZ201aittczBXOVZvN0NSWmV4YVhGZXp2Zmt3dDhDdU51VzRzUnlKdlBpeHNiOFIwa2hrUFBITWdwc014WTJMUEZBalNLODNMMHBFM054K3RSYllKZm9lSDI0dTVMWnBPMS9KZkpocm43cmR4dHl4eVJIQnA3ak44Vzc1VG5FVk0vZFlqcDB2UEFlQllnSUk3TVhJZUdCbUF0NEdvWFZ6K2tBanRhNkx5eHBMMXg5VGdidW05RW11RzdRaG5PSVBia3I5T2M4aXNPZFFXbmFlZlhzdnRkRjdkdkE5MjRLOHJKbmtZMUUrUm11bTh3Vy9pMGZXTERSUzFnZENvSzJhZldBOW5HSGdLbFdCd0Y0SlpPTmk5bEZnRnpJRm1OUWFQZllXb29lOWRzQTZyNzRwZjkvMTc2L2FMc3RGN1k5M1piWGQ4OU44K05QZ29tTUswekhQdnNETWJtTm11ZjcveDlTUjg0dzNIM1loc1BmdC9qVXplMDczN3M2eFI0bXhLaEZVaDhxNFpyZ1pFNHVya3pOR3VYbDBhSFUzTTVPN1VNL2RqRmVtTnk5eVJWeXZuczIvdHhiWVZaZmlsY2x0WTY3N3B1MzJsODZIWFlqc09XT1RFNU5KVnZSeW9UVFdoVjVPd05NcHJtTG1Ic3VTdVV4ZUNJd21nTUErR2gwUHprUkF2akpmMG0zUUpDVE5tVDRhckdLME1hMmQ5R010cS9paktoZXNEeDc1ZjU1cWFWKzVXU2NwRG9HOU5lSDI1ZS9qZXlsTGRuM1U2S3A3emFRYkpiS09iM1hvcGVCcnN1SkwrVnllMmg4RnpaUGZ5OUlnY1RuMUh2cDZtTU5vQ1hrUTJKY3dDbjRiOWxWZ1Y4OGxGRWlzazd1aVdrbkdFN2Z1L0xJL2JVYjNKbFBiN2dsblU4dVBQUyszQy9Lei9wUkNYOE90MnRPWHEyOVppYURQeUF4R09yVTltak82MWFwWUIxTkYwS2x0MGZQZWZOaWx3SzcyNmFhQnZrMTBpSlViODZvR2w3NE11Y2VUQzUrVXoyMnZ2bk1IUzNhNW0ycVY5TjBwVjFaeUwxSWplZk1pUjhRdGJjY2NBbnVwYThmdFBwUUs3SHBlM3djUEM3RStTcG1VNXRkM3lIMHk5dHM1MXVXS2hhQ0R3Q25KQzNpcXNzZTZwZDNGV0U1aHdiTVF5Q0tBd0o2RmlVdzdKcUFOMmZWRDhLUlVjS29hemRRUHI2NEovMjNqSUdleXVsRmdrd2RYc01qU1I4OHRnMlg4WFA0dnA3QkdZSjlDYnpuUDd1TjcyVjhKZm1LRkQzWDVlZnlERUZTdjlVZTQybjFaTXpzMk0wWkQ3aXlTU3hDdFUrOW9MRDRkOG5xWU94YTd6b2ZBdnVzUnlLdC9ud1YyRWRDQjNGOWtCbVAyaU9uR253NG1QK0ZsWE5qZlBlR3Nabk1WUkZpSEdoTFY1ZVpzeVh0TUhUYkxxdjdPRmZiVlF3eDdsemdTaWt1Q0dkWWNqNkd5dlBtd2E0RzliN05FU2gxbVNUejA0aUZNWmFheGVrVVhpK0ZlSWJCeWpYa3J0emU2SWF4OVZzMzJhNitvd0p3U1Ztc0dDUGJteFZvRmRzME43Um4xcmY3QUVSTmxqTUN1YXJUUHZtSndpOVhpUm9hczhqVmY1Y2ZkUzJjUHNVWlM3WkJiTlFVV3IzRUQzd3Q0T2lWK3lTN0cwdVBMM3lFd2lRQUMreVI4UEx3REFtY09yaFoweW4rNVNwdG9XVFhvQTBLK0pOOC9zMFhLR1lNSUordlFVc3NPV1RzOElQZ21yYmtwYXoyc0NPeXRDYzlmL3I2OWwxTStCSHNyUC9sMWIySHhuUnBkL2FiL2F2aUFsZVhLbUN1MDJvekxFdkRod2FWTmpRL1QzQmw1aU90aExwdGQ1ME5nMy9VSTVOVy83d0o3TDNSb25Ydm9TTGRlRXQ3dU44UEJZZDZJbGVmeWhMUFNFblhyVVc1T1B0dTVYL2pITGxEaHU3dEExbS92Ymw1OXhNeStVMXJZQXZMcjkxc1d5M2V2ZE9DczRPYnlpUzBCYklrM1JMMzVzQlNCdlo4YUVxb1ZxRjJpbll5bmNvTitlbE5MZXhkWjYrbzJyNnpXVzgxZENZSUswSGp2RUN6VGExZnM3eEpTSHhLKzRWck1LMjllckZsZ255SjRLL0NwdmtQSEhwSnAvaXBRcVF6a0ZDeDFTdElja1BXMzVteHVlK1MyUmJkVzlmN0UwcGU3ZCtBS0lkRHFsUGIxeitiNGVwOFNaMnJzNGNYVXNhekJoaklnY0JJQ0NPeE1palVUMFB3OUlnaEtPbFhXU2E0MmJUOGIvdG51Vy84UjhhSHdFZkc2OENFaFFXeE9FV21JdVRaczJnekpPa0xYb0hVbGEzdlRxWWpuc2lSOWVRanlJc3VpWGJkN3pmT0h0cmNoc0UvdnBUYlN2MnhtTnpLenE0WC8xdnF5bWJSKy9MT1p2VEs0czlMNjB0cGlQV2ZrdEthbzdibzZmOVh3MzdMKzNQUmgzSytKRWxYVWZxMkpTMmcvNjJIT0NKTUhBaERRaDcvV3QvL1pyV0dYQ2tGNE53OFdKYnJKUjZ4RXhwZDIrNnMzbU5uWHdYWXdCRTdWaWE3eUE2N2Z3UXVaMlcrRVd4QkR2dnkvMmxtLzZ4OEZMdFVoZzBSYS9iYTNFbW9QWmhBU0hkVitVZGJnK3Y3UmQ1d01wLzVIWW94a0thdHZvVytHUXlENW1OWjNrUTVCcHJpQUdUc1dtbCtYQ1d1UTJxNGc0RHFNM2s3YUorb0E2N1hCOHZndHJFTmprUTlxV2I4VWZnTVVxMFBXM1JvRC9RNW8vWmQ3UnUxcnRjZjl1OG8zY2ZyeFB6cDh1MnZ1RHQxdTJOeHJ2emZzdGJYT2FCNlRma0pBNjhHdXhwSnhnRUExQWdqczFWQlNFQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDQndTQVFUMlF4cHQrZ29CQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUxWQ0NDd1YwTkpRUkNBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJSEJJQkJEWUQybTA2U3NFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhVSTREQVhnMGxCVUVBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnTUFoRVVCZ1A2VFJwcThRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0JRalFBQ2V6V1VGQVFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUtIUkFDQi9aQkdtNzVDQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUJBTlFJSTdOVlFVaEFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWdjRWdFRTlrTWFiZm9LQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDMVFnZ3NGZERTVUVRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0J3U0FRUTJBOXB0T2tyQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJVkNPQXdGNE5KUVZCQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSURBSVJGQVlEK2swYWF2RUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnVUkwQUFuczFsQlFFQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDaDBRQWdmMlFScHUrUWdBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBUURVQ0NPelZVRklRQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJSEJJQkJQWkRHbTM2Q2dFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQXRVSUlMQlhRMGxCRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnY0VnRUVOZ1BhYlRwS3dRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0ZRamdNQmVEU1VGUVFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBd0NFUlFHQS9wTkdtcnhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUZDTkFBSjdOWlFVQkFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQW9kRUFJSDlrRWFidmtJQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0VBMUFnanMxVkJTRUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0J3U0FRVDJReHB0K2dvQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFMVkNDQ3dWME5KUVJDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUhCSUJCRFlEMm0wNlNzRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoVUk0REFYZzBsQlVFQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ01BaEVVQmdQNlRScHE4UWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNCUWpRQUNleldVRkFRQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFLSFJBQ0IvWkJHbTc1Q0FBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQU5RSUk3TlZRVWhBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFnY0VnRUU5a01hYmZvS0FRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQzFRZ2dzRmREU1VFUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNCd1NBVCtQeHNyTHBlQW5JbXlBQUFBQUVsRlRrU3VRbUNDIi8+PC9zd2l0Y2g+PC9nPjwvZz48L2c+PGcgZGF0YS1jZWxsLWlkPSJiMiI+PGc+PHJlY3QgeD0iNTUzIiB5PSI1MDgiIHdpZHRoPSI0MDAiIGhlaWdodD0iMTAwIiBmaWxsPSIjZThmNGVmIiBzdHJva2U9IiMzMzU1NmYiIHN0cm9rZS13aWR0aD0iMiIgcG9pbnRlci1ldmVudHM9ImFsbCIgc3R5bGU9ImZpbGw6IGxpZ2h0LWRhcmsocmdiKDIzMiwgMjQ0LCAyMzkpLCByZ2IoMjEsIDMyLCAyNykpOyBzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDUxLCA4NSwgMTExKSwgcmdiKDE0NCwgMTczLCAxOTUpKTsiLz48L2c+PGc+PGc+PHN3aXRjaD48Zm9yZWlnbk9iamVjdCBzdHlsZT0ib3ZlcmZsb3c6IHZpc2libGU7IHRleHQtYWxpZ246IGxlZnQ7IiBwb2ludGVyLWV2ZW50cz0ibm9uZSIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgcmVxdWlyZWRGZWF0dXJlcz0iaHR0cDovL3d3dy53My5vcmcvVFIvU1ZHMTEvZmVhdHVyZSNFeHRlbnNpYmlsaXR5Ij48ZGl2IHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiBzdHlsZT0iZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IHVuc2FmZSBjZW50ZXI7IGp1c3RpZnktY29udGVudDogdW5zYWZlIGNlbnRlcjsgd2lkdGg6IDM3NHB4OyBoZWlnaHQ6IDFweDsgcGFkZGluZy10b3A6IDU1OHB4OyBtYXJnaW4tbGVmdDogNTY2cHg7Ij48ZGl2IHN0eWxlPSJib3gtc2l6aW5nOiBib3JkZXItYm94OyBmb250LXNpemU6IDA7IHRleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICMwMDAwMDA7ICI+PGRpdiBzdHlsZT0iZGlzcGxheTogaW5saW5lLWJsb2NrOyBmb250LXNpemU6IDIwcHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtNaWNyb3NvZnQgWWFIZWkmcXVvdDs7IGNvbG9yOiBsaWdodC1kYXJrKCMwMDAwMDAsICNmZmZmZmYpOyBsaW5lLWhlaWdodDogMS4yOyBwb2ludGVyLWV2ZW50czogYWxsOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3b3JkLXdyYXA6IG5vcm1hbDsgIj5Ccm9rZXIgQjAyPGJyIC8+5ZSv5LiA5a6/5Li7IMK3IOacrOWfnyBEQiAvIOmYn+WIlzwvZGl2PjwvZGl2PjwvZGl2PjwvZm9yZWlnbk9iamVjdD48aW1hZ2UgeD0iNTY2IiB5PSI1MzQuNSIgd2lkdGg9IjM3NCIgaGVpZ2h0PSI1MyIgeGxpbms6aHJlZj0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUJkZ0FBQURVQ0FZQUFBQ1B0VUhVQUFBQUFYTlNSMElBcnM0YzZRQUFJQUJKUkVGVWVGN3R2UWY0UFVWOTluMC9XRjZWMkFtU1IxU2lFbXVpN3hzUlJLWFlBUFV4d1k3WUl0Z1ZnaTBLSkJCakRTSlIwR0I5akYxUmlSVlJWQ0lXUkVoTUVVM0VncURZRUFzRW9tTGV2WFZPUE94L2QyZDJkN2FjY3o1elhWd292OWtwbjVtejUrdzkzNzIvLzBzVUNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVXaFA0WDYydjRBSUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVNFd000bWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaDBJSURBM2dFYWwwQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVFTmpaQXhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFDQkRnUVEyRHRBNHhJSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBSTdld0FDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnMElFQUFuc0hhRndDQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUVCZ1p3OUFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCRG9RUUdEdkFJMUxJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlJN093QkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdFQUhBZ2pzSGFCeENRUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFnWjA5QUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhEb1FBQ0J2UU0wTG9FQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSUlMQ3pCeUFBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDSFFnZ3NIZUF4aVVRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFSMjlnQUVJQUFCQ0VBQUFoQ0F3QndJL0oya1I5WU01SnVTZHBGMHdSd0d5aGdnQUFFSVFBQUNFSUFBQkNBQUFRZ3NDQ0N3c3hjZ0FBRUlRQUFDRUlBQUJPWkFBSUY5RHF2QUdDQUFBUWhBQUFJUWdBQUVJQUNCVmdRUTJGdmhvaklFSUFBQkNFQUFBaENBd0VBRUVOZ0hBa3V6YTBuZ0twSitSOUx0SkYxTDBzNlNyaWJwbk9KTmtLOUo4bHNmWjB1NmVFYXo5NWkzbFhTYk1PYmZEM1A0aGFTekpQMVkwcGNsZldObTQ1NFJRb1lDQVFoQUFBSVFnTUFjQ1NDd3ozRlZHQk1FSUFBQkNFQmdzd2pzVUFncmgwaTZlb1pwMjBMa1h5VlpzUGxpc0JTWms4Q1VZWXByMndRQys5b3U3YUFUMjZUN3g5YVM5cFYwc0tRN0pGTDl0cVQvV3dqWnI1SjBYdUkxT2F2ZFNOSitoZUQvR0VtM2FOSHdqeVM5STR6OVRFbVh0N2lXcWhDQUFBUWdBQUVJUUdCVUFnanNvK0ttTXdoQUFBSVFnQUFFS2dqOG9hUlBTcnJHUUhRdUtjU29EMGc2VnRJWmtuNCtVRDgwMjQ4QUFucy9mcHQ2OVNiY1B4eWgvcWZGd2VIaGtod0YzcldjSU9scGtzN3Yya0RpZFg3R2RIVDZTeVRkTS9HYXBtcmZsL1RzUXFCL202UkxNN1JIRXhDQUFBUWdBQUVJUUNBckFRVDJyRGhwREFJUWdBQUVJQUNCRGdTR0ZzaVdoL1NUSUZLOUZxR213MG9OZXdrQys3QjgxN1gxZGI1LytGbnRIcExlS21tYlRBdm9BOFlESmIxSjBuOW5hbk81bWUwS0c1aFhoa2o3M00xL3RZakNQMERTUCtSdW1QWWdBQUVJUUFBQ0VJQkFId0lJN0gzb2NTMEVJQUFCQ0VBQUFqa0lqQ21RTGNiN0Ewa1BrM1RLUUNKVERpNmIxZ1lDKzZhdGVKNzVydXY5NDBxU25sNVlaNzA0RDZZdFdqbGEwbk15dnRIajU4cjdTSHBMOEZjZmFOajZaWWpDUHc3Ym1LRVEweTRFSUFBQkNFQUFBbTBKSUxDM0pVWjlDRUFBQWhDQUFBUnlFNWhDSUZ2TTRjK0RnSVZ0VE81VmJkOGVBbnQ3Wmx3aHJlUDl3ell3aHhXSGYwY012TURIU3pvb2c4Zys5R0ZBRlliY0J3UURvNlo1Q0VBQUFoQ0FBQVRXbVFBQyt6cXZMbk9EQUFRZ0FBRUlyQWFCS1FVeUUzcU5wQ2RuRUpsV2cvWjhSNG5BUHQrMW1mUEkxdTMrNGVlelo3YU1YUGNCNFhja1hVM1NiN2RjckQrVGRGU1BOM211SFB6Ui82cGx2Njd1cE5TK3Z1MllGMTMxSFh1SElYTUpCQ0FBQVFoQUFBSVEySklBQWp1N0FnSVFnQUFFSUFDQnFRbE1MWkI1L2dnMVUrOENDWUY5K2pWWXhSR3MyLzNqZnBKT2xMUlZaREcrVVB6OVNFa2ZrM1R4VWwxSGsrOFFEZzJma3BBVTlUK0xKTk4zay9TNWpvdi9XeUdKOU82UjYrMmYvbnBKNzVOMFRpSEtYMWFxNzhPQm0wdDZoS1EvU1JUZGJSZXp0NlNQZGh3N2wwRUFBaENBQUFRZ0FJRXNCQkRZczJDa0VRaEFBQUlRZ0FBRWVoQ0lDV1NuU1hwNVl2czNsYlJyU0F5NGRlSTFydmF6Y0kzN29reERBSUY5R3U2cjN1czYzVDl1RXNUaUhSc1d4WUw0WXlXOUk4R0RmUHRDYkgrRHBMdEhGdGxKUSs5YkV1cFQ5MFZNWVBkaHdlR1N2dFFpU3Q0V09ROE95Vkt2RlJuSTU0dkRnWDBrWFpnNllPcEJBQUlRZ0FBRUlBQ0IzQVFRMkhNVHBUMElRQUFDRUlBQUJOb1NpQWxrYjVUMHFMYU5TcnBSc0M1NFFrSTBxSnMvV2RLK1JUVDdwUjM2NHBMK0JCRFkrelBjeEJiVzVmN2g1N0pqSkIzY3NJam5TWEtFdTZQWFU4dTFKYjFXMGdNakZ6aHkvTTJwalM3VnF4UFlMWHcvdWhES3orN1E1dUlTUitLZlVFVEkzeUhTeGhNbDJVK2VBZ0VJUUFBQ0VJQUFCQ1loZ01BK0NYWTZoUUFFSUFBQkNFQmdpY0JRQWxsYmtjWlI3SHRJK2l5ck13a0JCUFpKc0s5OHArdHkvNGpONDBmRnZXa3ZTV2QwV0xIclN6cEowazROMTNhTkJDOEw3UGFEOTZHbVA4K1hkeGhyK1pLVXFQNCtFZmdaaGtnVEVJQUFCQ0FBQVFoc09nRUU5azNmQWN3ZkFoQ0FBQVFnTUQyQm1MRFVOWUo5ZVdiWGsvUXVTWHRHcHZ1Q0l0bnBZZE1qMmNnUklMQnY1TEwzbnZRNjNEK2M2Tk1SMkFjMDBPaWJKK0t1a2s2UmROV0dQdmFUOVBhV0s3SXNzSDh0V00zWURpWm4yVm5TeHlWZG82WlIyK2JzSnVtc25KM1NGZ1FnQUFFSVFBQUNFRWdsZ01DZVNvcDZFSUFBQkNBQUFRZ01SV0FNZ2N4amo0azBydU9FZ1g4azZaS2hKa3U3dFFRUTJOa2NYUWlzdy8zanRvVlB1dk0vWEtjR1FOZm84dVhtVWtUOGQwdDZhT0daL29zV0M3RVEySjJVMWI3cDMybHhiV3BWUDdNZUd4SzMxbDNqcVBsWHBUWklQUWhBQUFJUWdBQUVJSkNUQUFKN1RwcTBCUUVJUUFBQ0VJQkFGd0pqQ1dRV21ONFVCS1M2Y1g1VDBpNlNMdWd5RWE3cFJRQ0J2UmUramIxNEhlNGZSeFlKUUk5b1dNRXVrZVZWemQycHNNRTZ0U0dLL1lkRmxQdGRRa0xTMUExbGdmMVp4ZUhBMzBqeTlVT1ZleFFKckQ4aXFlNzU5WFdTRGh5cWM5cUZBQVFnQUFFSVFBQUNUUVFRMk5rZkVJQUFCQ0FBQVFoTVRXQXNnY3p6M0QrU3lPOWJRV0EvZjJvb0c5Zy9BdnNHTG5xR0thLzYvY05KU0oxZzJXL1lWSlV2aDl3UTM4M0E2dXFTVGd4ZTduWE50WTBFOS9Pa285ZHorSzAzVGZFR2tqNGo2YVkxbFhqN0tNTUdvUWtJUUFBQ0VJQUFCTG9SUUdEdnhvMnJJQUFCQ0VBQUFoRElSMkJNZ2N6Um1aK1E1R2oycW9LWGI3NTFiZHNTQW50Yll0UTNnVlcvZjhUdVNibnpRc1FPR2J2WXhJeXhFN2VXOU43Q1N1ZnVOWjJSNkhTTVZhQVBDRUFBQWhDQUFBUXFDU0N3c3pFZ0FBRUlRQUFDRUppYXdKZ0NXYXd2TEdLbTJ3MEk3Tk94WCtXZVk1L3BIRW1TRjN4aWZYVzVmemg1Nll0cUZzQmU2RTdNL0ttTUMzU3IwSjRUUDFlVnM0dER5TjBsL1NCam43bWFhcnBISUxEbm9rdzdFSUFBQkNBQUFRaTBKb0RBM2hvWkYwQUFBaENBQUFRZ2tKbEFUTFFhVXlEN1d1SHp1NnVrSEhZTW1URU4wdHhWSkZsb3M4WERjcmxJMG1XRDlGamY2TG9MN1A3ZGJkWlhYVUx3cytCYi9kOGpzMTZuN2xiNS9uRTFTWTRZdjNmTmdnd2hkaStTa2xwRXJ5cVhCb0hkaVZYblZoRFk1N1lpakFjQ0VJQUFCQ0FBZ1Y4UlFHQm5JMEFBQWhDQUFBUWdNRFdCTVFXeVdLSzhyajYrVmVMcE10Y21JZlZLd1gvNWNVSFl1bkVRdkg4cHlSR3hqc3g4cmlTTC8zMkt4VHpiVWZ5ZklPalp5N2dzckMrMzcvN2Q1NGNLRzQ3M2g2alhJVVgzTVFSMk03aHVBc1NmU3JvNG9WNVRGZmUxUjBpcXU0K2tiUnNxKzBERENSemZFSkpRNXVZY20zZlRnY3IxSlQxY2toTnQvdDRTUDEvekg1SmVYZmhpK3hETTBkWlRsRlcrZjJ3djZYUkpONndCTjVSZHk4c2xQYlZoc2J6ZWI1bGlNU045SXJEUGNGRVlFZ1FnQUFFSVFBQUNDT3pzQVFoQUFBSVFnQUFFcGljd3BrRDJlRW5ITjB5NXE5OXhMQ3EweXI3QW9yenRIeXhRM2l5eURQY0xJbmZiMVhJZmQ1VDBGNFdRdDNkRVVJKzFiY0g5elVVRXRobjllNnh5aDc4UExiRGZSTklISmQwbU1qWWZzanhBMG84N3pNR1gvRTRoTmg4dXlja2ltdzR3NnBvM1orL1I1MG02b09NWXlwZjVVT1Y5RFcxVjdhOXJTWHArWVJYeWxNZ1lwcmJtV09YN1I4eC8vZW1TWHBwcER5dzNFL05oNzNvZkhHQ28vOU5rN0I3cmcwQi9ibk1mVGcwNUo5cUdBQVFnQUFFSVFHQk5DQkRCdmlZTHlUUWdBQUVJUUFBQ0sweGdMSUhNaVUzZkZDS0txM0QxOFR1T2lUOWxFZExXTEMrVVpBRXRwWFFSMkc4ZElxSjNTdW1nWlowVEMydVRneVNkMy9LNnB1cERDdXpYRGxZY2RRa1NGK002VTlLK0hlZDE5YUtSSTR2STkyZDBGTmJMYkg0dTZUQkpmMVA4Mi8rN1Qya3JzTjgrQ1BJM1N1aDBVd1QySWU0ZnNRTS9XOGVjbExBR2JhdjRudUIxODU2dEtrTkZ6cmNkNTNMOUcwajZUUEcyaE4rOHFTcXZLejYzQi9icGdHc2hBQUVJUUFBQ0VJQkFWd0lJN0YzSmNSMEVJQUFCQ0VBQUFya0lqQ1d3MzF6U0owT0VjZFhZUHlkcHI0NlJ5MjBFZG92cnI1RDAyQllBMndqc1d3Znh2c2tDb2tYWHRWVXQrbHJROHFGRkRnL3hvUVQyVk41ZmtYUlBTZWQyZ09QRWtlK1JkTXNPMThZdXNYV003VmwrR0t2WThQYzJBcnZmZURpNUVQYXZrOWpmcGdqc1E5dy9tcXhhYkZOMDErTEE1NThUMTZGTk5ZdlVueTdlbE5pdTVpSW5WYlc0N3pITXBVd1Y3VCtYK1RNT0NFQUFBaENBQUFSbVRBQ0JmY2FMdzlBZ0FBRUlRQUFDRzBKZ0RJSGQwYWZIQnR1T0txd1dpQjhZUk5JdTJOc0k3STVhZjBuTFRsSUY5aDBLQzVRVEpOMmhaZnQ5cWg4dDZUa1pvcXlIRU5oVDN4U3d1RzVCOFp3T0lPenJiK2FwZ25TSEx0UW5zdDc5cFFyczlnVC9hTXVEZ2swUTJJZTRmOFFTbkRyL3dpNFpiWUtXOTkwMklZTGRiN2xVbFNINzdyTC9mWTNmRGptaTVtTGZ2KzlWNUpnNHBXdmpYQWNCQ0VBQUFoQ0FBQVQ2RUVCZzcwT1BheUVBQVFoQUFBSVF5RUZnRElIZDNyenZiTER1K0lDa0IwdTZ0T09FVWdWMis0Q2ZLc2tDVjV1U0lyQzNzZlZvMDNkSzNkZEllbkpQa1QyM3dPN2Z1YzhzYkRCZUhKbkFEeVE1Q2FsRjdMYmwvb1VZL2ZiQ3E5eEMvdENsanpkOGlzRHV6OEF4a2c1dU9aRk5FTmlIdUg4NDJhN2ZUcWc3REJ1U2EreCtOV1QwZk12dDlhdnFUclJycTV3NnV5dS9kWExuNHEyZ2IzVnBuR3NnQUFFSVFBQUNFSUJBWHdJSTdIMEpjajBFSUFBQkNFQUFBbjBKRENtdys3Zk9veVRabjdjdTRXUWZhNURGM0dPQ2xjVXllM3Uvc3NFRHZvbGpUR0MzY08vSTR4MFRGOE5KU3Q4WVBJM0xDVXM5bDExRDFMUDdUUldQLzB6U1VUM3NZbklMN0RGUjFLaCtGR3lCemtqa3Rsd3QxVXJGVmpwdkNQLzg0MUlTUnUvTjN5NkV3NTBsUFNra29ZME40MldGaGRFaEhSaW5DT3crYVBEaHoxVmpneWo5ZlVnaE9HVW9xM3IvY0RMYzB5WGR1R2FTUS91Z04zM2UvbFBTYnNVOTRLeVVCUmloenNPREZWVmRWLzU4UGFiRDUyS0VvZE1GQkNBQUFRaEFBQUtiUUFDQmZSTldtVGxDQUFJUWdBQUU1azFnS0lITUFwYnRTK3hmWFZmNkNLekxiYVlJN0U1cStyNEtBZk1MeFg5N1FTRm9mVnpTaGFGUmk5cTJlN0VudUlYcnAwaDZmODBrVWhONCtuSUxVYzh0RGgyK25yZ2xQQTVIOXZ0ZzRGcVJhMzRaNmxvWTdGSnlDdXdwdGkxZSt3ZDF0SlZJUGRBNExpUXEvVWtDa0pTa3RHYThkemhNU1dqeWY2ckVCSFlmUnBqRlEwdU4rbkRnK0NKdndhc2svY2ZTR3dxMnczSGs5U01sL1c5SmYxd2tkNzI0ellBeTFsM1YrOGZ0SkoxVzNLT3VXY1BDQjJBK0hCeXFOSDNlM0dmc1VHK29jWlhialgzV2JBOWplNmNQanpVZytvRUFCQ0FBQVFoQUFBSmxBZ2pzN0FrSVFBQUNFSUFBQktZbWtGTWdzOUR0WkhoL0VqelY2NkxXUFdkSDdGcEUrbXdHQURHQjNVS2FiUXdjaWJrb2poSzErRy9odkNsSjZOVWwyUU82S3VGZ3pCdDYwZGQ1a2g0UmZKZTdUTmZpdWozc0xhZzJsUytIUTRIek8zU1NTMkJQaVN5M2NHd3gyWWxKMnhZZk9yd2xDTkoxMTZhdWJmbDZyN1U1SDlBd3FDNFI0ekdCL2MrTC9lWGNBTXMrOG1ialJMeXg1S3EyT3ZIZS9FVmJrSm5xcityOUl6WnVIN29kbG9sUlZUTSt1SHRSUS90ekVOaFRFaFIzK1R3TWlKV21JUUFCQ0VBQUFoRFlSQUlJN0p1NDZzd1pBaENBQUFRZ01DOENNYUhKWXVoM0VvYThYUXM3RTBlUzJ6TzhpeEJjTlpTWXdQNjlNRGFMa1M0V3ZDMWdPWHE5VDNHRXV5TTNtdzRTdmlqcFBrSGc3OU9YeFM0TGZuV0pCaGR0ZDdVeHlTR3d4NkpkUGNhK2tmWXh1d3BIeHB2M1p6ckNqcjJSMENWaU55YXcvMHR4MlBBSFMrUE5sYmkySTRKV2w2M3EvY08rL3g5cW1PbXpFL0lIdEFKVnFqeDNnVDBsaDBMZjVOUjkrSEV0QkNBQUFRaEFBQUlRK0I4Q0NPeHNCZ2hBQUFJUWdBQUVwaVlRRThoeWpzOFIxaGF1bk5EeDhvd054d1QyNWE3R3NxVnhuem44NVpmSG5oSlI2amNEOWlnaXZDM3N0eWw5QmZiclNYcFhFYVcvWjBPbkZ0Y2RIZTYrbXQ0YXFHdGkyMkRsYzV1YUNuM0YrMFd6YnI4cEdhNFRxL3FOaE5TbzhaakF2anlkSEFscjI2eDczN3FyZXYrSXJjblVBdnZRL1RldHU1OVJmUURxdzdxbXc4TVRpbnZjL2oyVEsvZmRmMXdQQVFoQUFBSVFnQUFFaE1ET0pvQUFCQ0FBQVFoQVlHb0NZd2hrbnlzOG9wOFI3R0J5Q3VzTGRtMEU5cjdKUUJkOTNqOEl5blcvNTM0bXlWN2t0cWZKV1ZLaXhQK3k2UERJbHAzMkVkaGpVZCtMb2ZSbGJ5OThXN2pVbGE3UisrWDJ2S2IyeWorOHBpTy8wWEhud3JMbmE0bU1ZMkx1b3BuY0J6S0p3K3RWYlZYdkg3RTFlVUx3dnU4RnArRmkzeithOGlWTUpiQjc3ejlOMGtzaUUxL0Z2VHJVV3RJdUJDQUFBUWhBQUFJVEUwQmduM2dCNkI0Q0VJQUFCQ0FBQVkwaGtDMHcyNnJsUkVuL1Y5S1pHYVBZVXdYMnowdXlOY1FpbVduWDViOWFFTWVjM0c5b3NiZXEvWmhOaXRuZVM5SkZMU2JZVldCUGlhcjNNUHFLNnhieFQ1YTBjODJjenBGMHQyRC8wMkxhdFZWam53dXZnYjNnVTBwTXpGMjA0YWo0TjZjME9LTTZNVTQ1aDVyei9oRmJrNkU5MEdQOVR5R3dwOXBRK1UyUmZVUFM2SnpyUzFzUWdBQUVJQUFCQ0VDZ0V3RUU5azdZdUFnQ0VJQUFCQ0FBZ1l3RXhoVElsb2Y5ZlVtSFNIcG5Cb3VCVklIOWlaS096OER1dGlFeWZUa3A1WEt6RnhSV0pyc1ZTVlV0K2c1UmJoQXNURzVaMDdqdFZ5eXduOUtpOHk0Q2U0cFBzNGVRdzFQY2J3TjhSS3A5QXpTM0lHbS9mdmQzaHhxR3J5dHlDQnlZeURjbXByb1pXL3I0Z01BaThpcVZWYjEvVE8yQkh0c1R1ZmR6YkUvNUFPdTFJVGwxVTEyTDZ3OEw5KzB1TmsreGNmQjNDRUFBQWhDQUFBUWcwSm9BQW50clpGd0FBUWhBQUFJUWdFQm1BbE1KWkl0cE9OR29mWHpQN2pHdkZJSDlXNUx1S3VuclBmcFpYUHI0aUZEL2lpSksvcWtkZmNaVGgvZDhTWWMyVkg1QlNJcWEybDViZ1QxVlhNL2xLZjd5d0xScVBqOHNEaFB1SXVsTHFaTk5yR2ZCMFo3eFZlVlRrdndHdzA4VDJvcUpxVzZpaTYxUFF0ZURWMW5WK3djQysyKzJ4cTJLSkx2dmtWUjNZTGU4aVd6MTlkS0I3MjJEYjFvNmdBQUVJQUFCQ0VCZ3ZRZ2dzSy9YZWpJYkNFQUFBaENBd0NvU21Gb2dNN09mQjVIZFNUSzdSRVdtQ094dmtQU1lqdTB2cit1VkN5SEtTUzRmVUxQWVhhTEh1K3diQzhxZmtPVHhWSlVQaFRGZWx0aDRXNEhkOC9mYkIwMUpFQjNsN1lPR1N4UEhVRmN0RmsxdUwrdUh0a2c2bWpxY0poSDJtNUoya2VTM0ZXSWxKckQvWjNqajRheFlRelA4KzZyZVB4RFlmLzAyeUVNaytYTjZqY2plY3VUNndaSjhlTmpsSGozRHJjdVFJQUFCQ0VBQUFoQllGd0lJN091eWtzd0RBaENBQUFRZ3NMb0VZZ0xaRzR1bzcwY2xUTTkyS1ZjdmtsQmVQL2hrMis3Q0ViNTFOaXJsSmkzZ1BEaVMrSzl1R0NrQ2U2NmtoZHRJK29kQ1hMNTF6V0RPRFFrd0hURS9aTEZOekdjazNiU21FeWZnM0ZYU2R4TUgwVVpndjJQd1EyOWEydzhIMGZ2SGlmMDNWWE9FclNQR3IxZFQ2ZWtocWpaRFYxZG9va2tZYnlPS3h3UjJ2NzJ4dTZRZjVKN0FDTzJ0NnYzRGlUeHRYVlJYcHZaZ0gycFBMK1o3clpBdytKRUplNlR2QVdoQ0YxU0JBQVFnQUFFSVFBQUMzUWtnc0hkbng1VVFnQUFFSUFBQkNPUWhrRXNncXhxTmYrdmNKQ1M0dE1BZEt6K1N0RmNoeko4UnExajZlMHhnLzBVaGl1OFpSTnFXVFc5Ui9YYkJmLzJhTlEyMWpSenZPcDZ0SmIyM0dNdmRheHF3ZFlrdGNmNDVzWU5VZ2QyZTVDZEo4a0ZEWGZsWWlKN1BJYTY3RHllbU5kZXFNdVFiQTAzQ2VKczlGUlBZaDRyQVQxejZYdFZXOWY0Ulc1TmNCM0oxY0tlTW9QZGhqcVBXYjVhdzh1ZUZ6N0lUUkZNZ0FBRUlRQUFDRUlEQUxBa2dzTTl5V1JnVUJDQUFBUWhBWUtNSURDbVFMWVBjUWRKYmk4am5PMFhvV3NpeG9IcGhpMVdJQ2V6ZkNWSGxqdXJ1VzVyRVhyZmQxdnU4ejNpYVJQRTJBckRIa0NLd1g3WGcrRkZKT3pZTTJyWTFENVJrWC9SY0pSWnQ3SVM1cVZZNGJjYmtmV1Y3bXJxU0d1VWNFM1BIM0ROdDVwOVNkMVh2SDdFMUdUcko2QlFDKzFYQ1llZGZwU3hzY1VEbmc3S0hTL0w5a3dJQkNFQUFBaENBQUFSbVN3Q0JmYlpMdzhBZ0FBRUlRQUFDRzBOZ0xJSE1RQjExZlh3UWJab0FQekdTUkxSOGJVeGdiMnVYMGpTMiswZHNiSWFPZkYwZVcwNlJMaWF3KzgyQzR4b2k1ajJ1TDBxNmp5VGI1T1Fzc1lTdU9mdHEwMVl1Z1gxb081QTJjMnBiZDFYdkgzTVcySWQ0SzJNN1NXK09mSDRYYTIrN3J1ZElPaWJreDJpN0o2Z1BBUWhBQUFJUWdBQUVSaVdBd0Q0cWJqcURBQVFnQUFFSVFLQ0N3SmdDbWJ1L3RxVDNCL3VTdWdYNVhMQ0tTYlVZaVFuczlreS9yNlNMTSt5QW5LSjIzK0hrSEV1VHdHNi9jWXZtOWtLdksxK1JkTThCeEhYMzF6UzJ2Z3o3WEo5TFlFOXRwODlZaDdwMlZlOGZzU1RCeHhadllSdzBGRFJKcjVWMFFFMzdiZno5VTRhNFV6Z1V2RkZDNWE5SzJxODRLTU1TSmdFV1ZTQUFBUWhBQUFJUW1BY0JCUFo1ckFPamdBQUVJQUFCQ0d3eWdiRUZNck8yRU9za21GdlZnRzhid2JtcEFuc3NDcmROWkhRZkVmdS9RbVRzcHdmNklQVVoyMEJEK2xXenFjSjRiSjFTMnhseUxsM2JYdFg3eHhUalhtYmN0S2VkSUhrWFNlZDNYWlJ3blo4MUh4SEVmTnZEeE1vckpUMUwwaVd4aXZ3ZEFoQ0FBQVFnQUFFSXpJa0FBdnVjVm9PeFFBQUNFSUFBQkRhVHdCUkNVMHdROTBxMDhhV090YmV1RWV3eDRiYU5qM1JmRVR0M1l0TlVNWExLVDIycU1CNWJwOVIycHB4clhkK3Jldi9ZWHRMcGttNVlNekh2NXo4YVNHeU8zYS9PbHVSRXBEL29zZUFXMUY4b3lZZHNzZUorSGlicEZFayszS1JBQUFJUWdBQUVJQUNCbFNLQXdMNVN5OFZnSVFBQkNFQUFBbXRKWUFxQnpDQVBsV1J2N2JyeUlVa1BTRXhlR1JPczFsVmdqL25CdHhGdW13VDJiMHQ2cnlSNzR6ZVZvVVQydnVML1VCL2NWTDRJN1BsWG9PLzlZeHRKdmkvY3VtWm9aMHE2bDZTTDhnOWRzYjc3aXZ1cHVTNDh0ZmRKZWp5SlRBZFlaWnFFQUFRZ0FBRUlRR0EwQWdqc282R21Jd2hBQUFJUWdBQUVhZ2hNSmJESFJNYzJBdGVtQ3V4amViQi9VOUp1UmNMRHd5UTlOdkpKY2lKRkozck5hVFBSSkxEL1F0TGhoUldHdmFQSExwOHRlTmpPSTFaaWV6MVZxSS8xTThYZlYvWCtZUkhhaDBaM3I0R1d5NmFscXZtYkZqWlp0bE55NHRHcThyckNIdWJBam91WktxNy92TWhKOFF4SnI1QjBlY2UrdUF3Q0VJQUFCQ0FBQVFqTWdnQUMreXlXZ1VGQUFBSVFnQUFFTnByQVZBS1pFKzg1Z3ZUcU5mUXQ2dHFIK0lLRTFSbFRZSCthcEtNYnhtUngrVlVKWTg1UnBVbGdiK3RqM3lSaUw5YkN5UmZmM1NCS0x1YjBHa2xQTGdSNWkzZzV5cGdKSVhPTXQ5d0dBbnQrcWpudUgwMzc2dEpnMHpKRXNzOVlndFd1OXhEYndsZ3dqeDJDblJmZURocGlidmxYbWhZaEFBRUlRQUFDRUlCQWhBQUNPMXNFQWhDQUFBUWdBSUdwQ1V3bHNNZjZuYXZBSGhOTDIzakg5MTM3SmxIY1lyaWp6czlLN0NSRllQZGh4N1VUUmZiakpSMlVTV1NQUmVyZlc5SkppZk9jb2xwc3p4REIzbjVWY3R3L1lvZGxENWYwbHZaRGkxNWhTeFovUHFxSzM4allVOUtub3ExY3NZS2ZLNTlaSEZpK09ITGRlNElBLzhPVzdWTWRBaENBQUFRZ0FBRUl6SllBQXZ0c2w0YUJRUUFDRUlBQUJEYUdRRXlvZXFPa1J3MUFJMGNFNm1KWVkwYXd4OGJ0Q08rSEZyWWxGc3FHTERHTGk2OUoyclh3VGY5dTRpQlNCWFkzZHhOSkh5M0V4eDBqYmY5bDhObnZHOG0rdnlSYno5U1ZyaEcvaVdoNlYwTmc3NDF3aXdaaW44T1VBN3A3RkorUmowaXFleVk3Tmh3UzVSNTlVK1I4VjJzYTU2dDRwNlN0R2dick4yK2VrK25RS3pjVDJvTUFCQ0FBQVFoQUFBS2RDU0N3ZDBiSGhSQ0FBQVFnQUFFSVpDSXdsY0FlRXgzUERoWU5QMGlZNTVnQysvYVNUcGQwdzVweG5WdUl6M2RPOU9aT21GcHRsZGc0MmlTSmRTZHRCSGJYdjZPa2t5VmRKeklKUjU4ZkpjbVdOVjFMekZKaktDRzA2M2pMMThYMk9oSHM3VW5IbUtiY1AyS2ZvVFo1SUZKbmNOMGc2dCtoNW9LMm4xczNzNE1rSjBhMXQzdGRzZC82UzN0K0RsUG5TRDBJUUFBQ0VJQUFCQ0F3S2dFRTlsRngweGtFSUFBQkNFQUFBaFVFcGhMWW55L3AwSVlWc1dEMFI0bkpNc2NVMkdPUjQyMjl6N3R1eWxqMGJWdXJtcllDdThmdENQa1BKb2pzZmNXOVdGTElJWVRRcnV0U2RWMU1ERVpnYjA4N3gvM2phc0h1eUJaRFZhV3R6VkxLTEdMMzI2ZEtPaTZsb1ZEbnlzRnU1b0NHYTNJY2NyVVlFbFVoQUFFSVFBQUNFSURBdUFRUTJNZmxUVzhRZ0FBRUlBQUJDR3hKSUNiNERHRVJZeDl2UnovdjNMQWdiYUtTeHhUWVBlU1l1T2RFZ3hiSytrUnROKzFWLzRZMEh5Y1NyU3BkUlA0dUFydjdUckdtK0tXa2h3VUxpeTVNWW9jYVA1TzBoNlRQenZRRGpzQ2VkMkZ5M2o5aS92N1BUdkExYnpPN0k0djd3aEUxRjNRUjlPOVU3UDFUSlYyMXBzM2NDWWZiekpXNkVJQUFCQ0FBQVFoQVlCUUNDT3lqWUtZVENFQUFBaENBQUFRYUNFd2hzTzlkV0l6WUNxSHB0MUNiQklOakMrd3hVY3UyTmhaOHZ6alF6dnRkU2FjMTJOU2syR09VaDlaVllFOU5ybWlSL2NFaFlyZ0xsdGloeHNza0hUTGdvVWFYTVMrdVFXRHZRMi9MYTNQZVAyTDN2ODhWQnpkN0ZYdnJ4eG1tRURzWThLSGp2cEl1VGV6TDBldHZDamtmcWk1eEhvYTdTL3BHWW50VWd3QUVJQUFCQ0VBQUFpdEpBSUY5SlplTlFVTUFBaENBQUFUV2lrQk1ZTW9kd1c2UjZmMkZaL0JkR3lnNjBaLy8vdlZFMG1NTDdER2h6TU0rUGtTeEQ1SHNOQloxNitTaWpwUnRVN29LN083alNwS2VWVVRSMnBhbXFUalpyYXcrQUFBZ0FFbEVRVlJDMXlLN2JXWGFsdGloeGdXU2RwTjBUdHVHUjZpUHdKNFBjdTc3eDlVbG5SaEU5S3BSK28yTEIwcDZUNFlwT1BueDJ4cmEyVS9TMjF2MEU3Tk9hbXMzMDZKcnFrSUFBaENBQUFRZ0FJSDVFRUJnbjg5YU1CSUlRQUFDRUlEQXBoSVlVMkMvaWlUYnB6dzJBcnV0eGNyWUFydUgvd1JKZjlzd2o3NFIyM1ZOM3laWVFteFRVNkZyOUh3ZmdkMURTVjNiSHdVeDg0eVdIN2lVUTQwM1NIcWNwSiszYkh2bzZnanNlUWluN3JHMjk0K1k4UDE1U2ZzVUIyWVg5cGpHOVF0THJKT0t3NldkYXRyNGNuanI1YnN0K3RoZjBwdHI2djlRa3BNRGY2bEZlMVNGQUFRZ0FBRUlRQUFDSzBrQWdYMGxsNDFCUXdBQ0VJQUFCTmFLd0ZnQys3V0NJRzB2N3FiU3hZZDRDb0Y5MnlKaSt1T1NMSGpYbGE1aWNsMTdGcG5mSFd3ZjZ1bzhUOUpmZExCSzZTdXdlendwNDNPOXJseGloeHB1ZThpRWpydEx1bGpTV1MzdkFBanNMWUZWVkIveS9uR0RjR2gxeTRaaE9pSHppenA4cnR4a2lvMVNXNjkzdC9uNnd2N2wwVFZqL3BRa0oyLzlhWC8wdEFBQkNFQUFBaENBQUFUbVRRQ0JmZDdydytnZ0FBRUlRQUFDbTBCZ2FJSGQ5aUgzbFhSMDRSZDhzd1NnWGJ5MHB4RFlQUlg3eE5zRHVhbWNGeEtCT2dxMlQ3RjQvZHBnVjFIWGpxTmc3eW5wL0E0ZDVSRFkzZTEySVpscGt3V1E2OWtmMnZ1aVRZUnR5cUdHM3h3NFFKTG4weVdoYWhVNmk3djJnSCtLcFBzRmk2TTJpQkhZMjlDNll0MHg3aC91TVhaNDArZU5sRmdpWU9kcXVKdWs3N1hBZE0yUXg4SlI2bFhscmVIK2xPc3owR0pvVklVQUJDQUFBUWhBQUFMakVrQmdINWMzdlVFQUFoQ0FBQVFnc0NXQklRUjJDOTYzbHVSbzlVZEp1azRpK0M1Q2s1dWVTbUMzWmNWYmltU21ENHJNejVZbEZ2QXMrbDZleUdLNW1sbTZuOXMzWE50SEFIU3p1UVIydDNVVFNSOHR4cnhqWks1ZkNRY0M1N1pnOHBEZ1l4MzdIZjNLNEF0L1NZdTJ5MVh0ejIxZjdHTWtXV1IzUVdDL0lxVjF1SDk0UmpFTEY5Zng1OWkyTE85S1BMenhIdlhoaW4zWHIxR3pEN3QrYnJlWGRIcERvdVBjdVRONmZJeTRGQUlRZ0FBRUlBQUJDQXhMSVBaZ01HenZ0QTRCQ0VBQUFoQ0FBQVNrbUVCbVVlazdpYUFzZEY4M3NXNjVtcjNEN1hOOFpvZnJweExZUGRSVU1kbDFIV0grbkpEa004VW4vRWFTYkUxaGNUNVd1bHJETE5yTktiQzd6VHRLT2puaGNNV0hLdmVSbENxeXAvcHdld3cvS2Y1NVdrZ2NtU3EwKy9lNUR3YWVGUHpjTGJJdkZ3VDJLL0pZaC92SFlrWisrK1BEa3JhS2ZOaWNGUFhwa1NUTUZ1eWRhTmh2UFRTVjEwaDZjb2U4QVRtNXgrNHRiZjd1d3dkLzVpZ1FnQUFFSUFBQkNFQmdOQUlJN0tPaHBpTUlRQUFDRUlBQUJHb0l4SVNhTWNEMUVkYzl2aWtGZHZlZktpWXZXRHBxOVI4S0wvWFRDdnVZZnkwQnRoV003U0x1SWNtV0tDbWxxMGkzM0hadWdkMXRXemgvWjBQMDdxSi9jM2h3aTRPY05vY2FpejU4Y0hOQ3NLVDVsK0xnNG1maEQxZVY5QWVTYmlWcDErQmJiUkcvcmlDd1g1SE1PdHcvRmpOSzhVcGZudjBYUW5TNjdZNFd4WjlaNzJYNzljZkt4NEo5MUk5akZTdis3dnZEUjRLL2U0ZkxCN3VFeVBuQjBOSXdCQ0FBQVFoQUFBSjFCQkRZMlJzUWdBQUVJQUFCQ0V4TllHcUJ6RkhkOTIvcHhWMW1OclhBN3ZGWW5QMWdRc1IyN3ZWMnhPaUJrcnFJZE10akdVSmdkL3N4LytuRkdOcUtqUmJFUHlEcHBybUJSdHBEWUw4aW9IVzRmeXpQYU9zaWo4RHh3Yjk4eUszVnhSNXBlVHd4WC84aHg5N1VOZ0w3Vk9UcEZ3SVFnQUFFSUxEQkJCRFlOM2p4bVRvRUlBQUJDRUJnSmdTbUZNaU9LNndSRGd0V0huMXd6RUZnOS9qdGtmNCtTYloyR2FQWUc5ejhMczNRMlZBQ2U1dW9ZTnR6UExURlljRVVJanNDKzN3RTlsejNqL0xIeDIrUnZMM3dPTjg3dytlcXFva3VDWDdMN1NDd0Q3UTROQXNCQ0VBQUFoQ0F3T29SUUdCZnZUVmp4QkNBQUFRZ0FJRjFJekNGd083a2ZBY1VWZ3BuWjRJNUY0SGQwN2xlaUlDTkpUN3RNM1Y3aXp2Wm9pUG0vN3RQUTB2WERpV3d1d3RicnJ3dytGYkhodnM2U1U5dGNXaXduYVJYaGVTanNiYjcvTjJlK1ljWHlUQ1BiVEcyUlg4eE1iU0xhTjluTGptdlhZZjdSeFVQUjdKYndIOTBUbGlTL0tiR3cxdllJZFYxSDl0VG1ZZWQzQndSN01tb3FBZ0JDRUFBQWhDQVFDNENDT3k1U05JT0JDQUFBUWhBQUFKZENZd2xrRm1nZkl1a280SWRUQzVoMlBPZWs4RHU4ZmczM3A2U1hsRkV3dDZ5NjhKVVhHZnZkcmRwb2RjaWU4NHlwTUR1Y2JaSlR0cldVLzVLd2ZmNlpRV2YzODRKUlpLWjJ6TEVTV1F2Nk5oMlRBeEZZSStESGZMK1VkZTdQOGYyVTMrMXBHdkZoOWhZdzIrWlBFdlMzMHE2dkdkYnZqeTJwekowMGFrSkJQWk8yTGdJQWhDQUFBUWdBSUUrQkJEWSs5RGpXZ2hBQUFJUWdBQUVjaEFZUW1DL1JOSjNKVG14cEpONWZrTFNmMlFTbHFybVBEZUJmVEZHQzc4N0J4c1gyMDFzMVhIQnZpM0o0ckdqdXkvczJFYnNzcUVGZHZkdjY0MTNGOGxkN3g0YmpLU2pKVDJuWUdkaE5iVll4TGZuKzVGRjhzbGJwRjVVVTg5NzE4eFBsT1Q5M0tmRXhGQUU5aXZTSGZ2K0VWdGJSN003ejRIdG1Ob2U0SHkvT0FCOFNUaWt5WGtvRnR0VHNUa045WGNFOXFISTBpNEVJQUFCQ0VBQUFyVUVFTmpaSEJDQUFBUWdBQUVJUUdBekNGajh2VjJJUEwxemlHei9uUXJSL1NKSjN3c0hFNmRJK21RNHJOZ01TdmxtYVRGL3QrS1E1NzdGQWMvdWtyWXRCUFByVmpSdjN2N0hndnBaa2s0dGt1NytpNlRMOGcyRmx0YUVnQS9NZmkva0NkZ3IvTy95bnJLZzd2M3pFVW52SC9oZ2NVMndNZzBJUUFBQ0VJQUFCQ0RRandBQ2V6OStYQTBCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUliU2dDQmZVTVhubWxEQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUJBUHdJSTdQMzRjVFVFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhzS0FFRTlnMWRlS1lOQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDL1FnZ3NQZmp4OVVRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0N3b1FRUTJEZDA0WmsyQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJOUNPQXdONlBIMWREQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSURBaGhKQVlOL1FoV2ZhRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnMEk4QUFucy9mbHdOQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRzBvQWdYMURGNTVwUXdBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBUUQ4Q0NPejkrSEUxQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJYkNnQkJQWU5YWGltRFFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQXYwSUlMRDM0OGZWRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnc0tFRUVOZzNkT0daTmdRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ1BRamdNRGVqeDlYUXdBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBd0lZU1FHRGYwSVZuMmhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSU5DUEFBSjdQMzVjRFFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWh0S0FJRjlReGVlYVVNQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0VBL0FnanMvZmh4TlFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0d3b0FRVDJEVjE0cGcwQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFMOUNDQ3c5K1BIMVJDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUxDaEJCRFlOM1RobVRZRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFqMEk0REEzbzhmVjBNQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ01DR0VrQmczOUNGWjlvUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNEUWp3QUNlejkrWEEwQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJYlNnQ0JmVU1Ybm1sREFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQVB3SUk3UDM0Y1RVRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoc0tBRUU5ZzFkZUtZTkFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQy9RZ2dzUGZqeDlVUWdNQjZFdmdEU2Y5YjBxbVNMbXM1eGUwbC9iYWtmMnA1SGRVaFlBTGVQMzhqNmFPU1hnV1NWZ1IrUjlLZlNqcEIwcG10cnFReUJINU5ZRnRKNzVaMGt4S1FjeVU5UU5MM1ZoVFUxWXZ2c3owa2JWMGEvM21TUGplak9lMGphZCtLOFp3bzZhUVpqWk9oUUFBQ0VJQUFCQ0FBQVFoQTRBb0VFTmpaRUJDQUFBU3VTT0RLa3Q0azZhSGhQNTlTaU8ydmx2UWhTWmMwd0xxU3BJZEllbzJrSDB2YVRkSTV3SVZBSW9GclNmcHpTUWRMdWtvaEZQOUkwbDZTemtpOGZwT3JYVi9TRVpLZUxHa3JTUjhMWXFnL2h4UUl0Q0hnUTVyVEpkMjRkTkUzSmUwaTZZSTJqYzJvYnQyODNpanBVVE1hNTU5SmVsSEZlSjR0NmNVVi85MEhrcGV2OExyTUNEMURnUUFFQW9HclNYcXFwQjByaVBoQThuV1FHcDJBbjgzdUltbWJpcDYvV0R4L2ZXbjBFZEVoQkNBQWdRb0NDT3hzQ3doQUFBSlhKSEJiU2FjVlVjVFhxUUJ6dEtSblZQejNXMHQ2ZzZTZGx2Nkd5TWZPU2lIZ2c1a0hTenBla2tYMjVjSWVhaVpZUHBSWXJtMmg3cWhDZVAvdmxFV2dEZ1FDQVFUMmFiZENuY0QraElvM2V1NFFvdHF2S21uLzR2djNnM3plcDEwOGVvZkFtaEQ0TFVrZmtMUjd4WHptZGlpNUpzaWowMmhhazdvRDJHaWpWSUFBQkNDUW13QUNlMjZpdEFjQkNLdzZnU05ETkd4NUhqK1RkSThndmkvL3pWRXVMNitaOUtFaEdnK1JiOVYzeFhEanY3ZWs5NGZJNjZwZTJFUFY3UDM3NVpnUThWOVZnemNBaHR1ejY5d3lBdnUwcTFzbnNOOHYzQ2NYbzdPRmoyMjBsaU5NWHlucFdaRTN6YWFkSGIxREFBS3JRQUNCZlg2cmhNQSt2elZoUkJDQVFBVUJCSGEyQlFRZ0FJSGZFTGhCOEYyL1pRV1VrNE0zN0tXbHYxVTk2QytxL0xLd0c5ZzdDQUZ3aGtBVkFYOFBQMWZTNFRWNDZnNTJvUGxydjNxTGJGV2ZWL1B4Mys1ZnZIVnlNYkFna0VnQWdUMFIxRURWVWdUMnB1L2NMd1NydHY4WWFIdzBDd0VJOUNOdyt5S1h4WlA2TlpGMHRRL2NmRC9vVXVZb3NPOVEyRThlVWxobE9aL0dLcFRjVmpvSTdLdXc2b3dSQWhBUUFqdWJBQUlRZ01CdkNOaDMvVzAxUVBZcmhMeTMxL3pOMFhWT3dtYi81M0w1c3FSN1Nqb2YwQkNvSVhEdEVKMTUxNXEvMjdMby93UnZmeUJla1lEekh2Z3pXL2Q3NW9uQmZnZHVFRWdoZ01DZVFtbTRPaWtDdTRVbUp6SzJSVXhWK1U5Si9yNzJtMEc4UFRiY1d0RXlCTG9ROEcrWjkzVzVzT1UxNWJkZTJsdytSNEg5RHlWOVV0STEya3hrd3JxNXJYUVEyQ2RjVExxR0FBVFNDU0N3cDdPaUpnUWdzTjRFSEJWaWtkeUpKY3ZGQ1hUdVZrVGRmSzhHUWN5dXdvbFBuWUR4NSt1TmtObjFJTEJ6a1JqMzR3MFBUMWpGVk1QMTUvYWRrdTVidzk1SktVazQzR05qYnRpbENPelRMbmlLd080UmJsMGt1enRPMHFNYmh1dWswVTZNT3RmdjNWeVJ2TDhvRG1EUFdqcUE5YUcrZjZ0Y0dCTEFUcnVpVit3OTE1emRxcFBJZjAzU2Z4VnZLdjJMcE85S3VteE9rNTNKV1B3ZDZlVHBONjBZajkreWRLUzMrWTFWVmwxZ1AwelNDOGFDdGRRUEFudTlMejRlN0JOc1NMcUVBQVNxQ1NDd3N6TWdBQUVJL0pxQW80ZFBLWDQ0TzJGYXVkaG4zUS96VGVYNkllSGFjcUxUUlgwL3hEaVI1YnVCRFlFYUFqR3JtQjhVOWtWN1NQSmhEK1dLQkpvK3U2N3BCTVNQbTdIUXhuck9od0FDKzdScmtTcXdlNVJPRVAzMElLTFhqZm85a2g0cjZZZlRUcXV5OXpHRXhtOEgyN3UvRHdlNEZ0Mm5MRVBQMlFjTERwUjRSZkdiNit3WkhqQk13ZjVPWVE5VS9iYjFZWXgvVi9od1lxd3k5QjVZekdPb0NQYXB4RndFZGdUMnNUNmo5QU1CQ1BRZ2dNRGVBeDZYUWdBQ2EwUGd5cExlSk1rV01lWHlyU0MrZnoxaHRrMUMzMWVDVmN5NUNlMVFaVE1KYkJ0RWtOdVVwdS9YcVoyODc5ODNFMHQwMXJFM1NIekF0ZTlJcjZWSEIwdUZXUk5BWUo5MmVkb0k3QjZwUC9zVzdHd1RWV2VkWUM5Z2kyMTFiNkJOTmVPeGhNYmwrVmx3dC9qczN6dm5UVER4TWVmOHpTTGg3VE5EWU1QbEU4eDFEbDM2ODNGc2VJT3lhangvV2Z6SEkwY2U2Rmg3QUlGOTVJVXRkWWRGekxUODZSMENFSmlJQUFMN1JPRHBGZ0lRMklLQVgvbCtuYVJkTTdGNVRJaElUMm51dHBMc2MzMmRpc3B0SGtCaVFoK1J0Q21yc2RsMUhoN0VEMU53ZEptdGhUNkJsM0IwVTl3OCtKTmFJSzBxbjVlMFQ3Qk5pRFpHaFkwbGdNQSs3ZEszRmRnWG8vV2JZMzVEN0VhbDRmdHd6ZllZRnBYbjVzYytsdEJZdDZLblMvcFRTV2VNeUdhS09mdDcxTGs2eHJSQm1mWlQ5SnZlZnpmOHRyMWh4WUIrRklKSC9tM2t3WTYxQnhEWVIxN1lVbmNJN05QeXAzY0lRR0FpQWdqc0U0R25Xd2hBWUFzQ1RRbHN1dUJLL1hIZEpJcDNzZVdvaTBMMkhMQ0s2YktTNDF6and4Vy8rbnU5Y2JxcjdjVUhUUThNUXZCSkU3L2libHVGRnhVaWpCL0VWNkhVaVhPTHNaUHdkQlZXY2RveElyQlB5Nytyd081Uis1RE5WaWpMYndDNXZhTkdGSkRiMEJ0TGFJeU55WWVQdHNFYlEyaWZhczcyNFQ4d0hGN1A3YUFsdGo1OS92NzRoaVRmYjVmMENFbjI4Qit6MU8yQmZ3aTVWQzV1TVJoSDN4OVJVZCtKanAxN3hia0p1cFIxUzZqcDU1elgxK1NzK0pDa0J3eWN2NkR1OTNXYjM1anJ0aVpkOWlYWFFBQUNLMEFBZ1gwRkZva2hRbUJEQ0V3bHNEZEYrRGpxelErZWJSL0lMTzdiQjNTcmlyWHpRNndUcWE2S2FMa2gyMDkxd3RxbXpMOXFubjdGZmhkSlRoUzZDcVhwY091cklaTFZENU50UDgrck1IZkdtSWNBQW5zZWpsMWI2U093dTA4ZmtMNUwwcDZTNXA1Y2ZDcXh1VzV0L0p2bFNaSyswM1h4RXE2YmVzNXpQbkJKd05lcWlwT2JlazM5ZTdOYy9CMTQ3K0w3L2NPdFdzeFRPWmZBM3ZUTTBFV3NYNTdkdW9tNWZvUGgwNUp1VXJHRVkzaks1L2hlWGJjMXlmTnBvaFVJUUdCMkJCRFlaN2NrREFnQ0cwdGdLb0c5TGdLbXordXpWNUgwNm9wb0VTZEtQVXpTVHpaMmxlYzdjUVQyTGRkbTFRUjJ6MkRaWXNmLy8vdEJXSC9ueEc4RHpIZm5NN0psQWptRWdEa1NyWnRYN3RmNCs4NjlUbUJ2SXdKZE8wUXJ2MWJTai9zT2FNRHJweGFicTZibTN5YjdTL3JnUUFlUlU4OTVrOTRpYkVwdWVxYWtleFhmalJjTnVML3JtczRsc0RjbC9YUmdqSDl2ZHkzckp1YnVMY25CQldYZHAyK2tmeXJmSE4rcjY3WW1xZXlvQndFSXJCZ0JCUFlWV3pDR0M0RTFKakNGd0c2LzFvK0hWOHZMYU8wSC80UWVyOC82TmZWVGl4LzUyMGp5SzlpUGxuVDJHcS9mcWs4TmdYMDlCSGFMYXlkTHVsWHgyVDFja2tXMlMxZDljekwrMFFqa0VBSkdHMnlMampaSllHK0JaZEtxTWJINXJTRUNPV1dRdnU5WmNMVEYyTTZTYmlySkIvMWR5ekVoR0NEM3ZUUG5uSDlmMHAyREZVaWJ1ZnFOTE51SG5OTVZ6Z3BjTjhma3BndHN1UVQydXNPNFBzRXhpekd1azVqYnRCZkdPbWpKOGIyNlRtdXlBcmNRaGdnQkNIUWxnTURlbFJ6WFFRQUN1UW5VL1hoeXhKRWZpUHp2cXVMcnJsdnhoeFFQOXFkSU9yYmkybHhSSFkrVDlGTkpSTS9tM2kzNTIwTmczNUpwbXdoMkM5ckwzc2Y1VnlpOXhkK1Q5TjBaUksvYTk5ZkprKzB6U21rbVlIc2ZKNm1zZW9WOVRIWlhsbjVsRjFWVi9EMDB0bDl4ZVJ6bkJyL2M3N1dFMGtkZy96dEpqMnpaMzV5cnp5VnFQeVkydDRuYXIvdHRaSXN2NS9Sd2tzK3FKTzVONjJTckhmdVc1M3dMWUlnNSsxblczei9QazdSdjRzYnJhditYMlB6azFlYVkzSFFCSllmQTNtUi80d04yNzRNK2gwUHJKT2JlSUFUNzNMSmlWNzRnSEtRTnZXRVIySWNtVFBzUWdNQnNDQ0N3ejJZcEdBZ0VOcDVBM1EvYW1KZGkzWS8xbU1EZTlLUFR5VTAvVVB6d3RFQTJsL0k1U1k2cXB3eERBSUY5UzY1dEJQWllndEZoVm0zZXJlWTZxSnYzTFBPTWpzOWZHc2MybjhubEZoSFlmME5qVXdUMjVmVy9VbkhRZjJ0Snp3eUpMZE4ybS9TSklORG5PaVFjUW1CZm5zdE80YURPYnljMmxXOUp1cXVrcjZlQ1dMRjZkY0VqbnNaVXlVMFhDSE1JN0xjTmg5ZFZoMForOC9SVlBkZHJuUVQyT25zWSsvRGJKdWlVbnF4U0xrZGdUNkZFSFFoQVlDMElJTEN2eFRJeUNRaXNCWUd4QmZhbUI1QTVBcDJMS0RCSE5qbkdWUGNBRUR2Z3lkSDMxRzNrZVBoQllOOXlGUkhZMDNjMkFuc2FLd1QyTkU1TnRlYnlYVHEwMkZ6SFlIdEpmMVdSSTZhdS9zZkNXeE01SXRuSG1QUE5nOS8wanBHdDRud2RiK20vbldiWHdzSW16VlpCNVRKbGN0T2NBbnZkNzNjbjZMVnQwTmQ2cnNxNkNPeE45akMyck54ZGtnT0toaTQ1Zm1PdXk1b016WnIySVFDQmlRa2dzRSs4QUhRUEFRajhENEV4QmZhbTZQVzVMc2xjUklHNTh1azdMZ1IyNmNZbGlHM0VQQVQyTFhjZ0FudjZweEtCUFkxVm04L2tjb3RFc1ArR3hseStTOGNRbTV0MmxhTzkzeWJwWmdsYjd6VkZ3dWduWjNpcmI2dzUyeExIYzJ0Nnp2VWJnYmJBV2JkU0Y3SHNlZnBOeUwweTIvNjA1ZGMzZ3IzSkhpWlhkUDY2aUxrM2xQVHBHdXMxMjJNZTFIYnhPdFpIWU84SWpzc2dBSUhWSTREQXZucHJ4b2doc0s0RXhoVFlWMUVNbklzb3NLNzdyNnZBN3U5UkoxajcyUXFEeWZId3M0cWZxYUdYRElFOW5UQUNleG9yQlBZMFRrMjE1dkpkT3BiWTNNVENTVkdQUzR4bTl6MytLRW1PZ3U1YXhwcHpVeFQzWXV6citIYWFjMGk4U2RKRGF4Ym9xV0c5dTY1Zmp1djZDdXhPNXZ0SlNkZW9HTXgrd1FLbjd6aWJCUFpWZXZQQis4QUhUZVhpWENKN1N2cFVYMUNKMStmNGpia3VoeDZKeUtnR0FRaXNLZ0VFOWxWZE9jWU5nZlVqTUpiQWJtL09qMHZ5YThTclZPWWlDcXdTc3paajdTcXczelE4N0RrQjR2SEJ1OThKTmxlcDVIajRRV0RmY3NVUjJOTS9CUWpzYWF5bUVOaHROUkh6dEU0YmZieVdvNnFmVlZIdHJaSk9qRitlVk9POEVNbWJWSG5BU21PSnpiRXAySi9kekozd3NLbjRFUGtld2ZzNjFtYmQzOGVjOC9PTGcrOURHd1pxY2ZIZUlSRjkxL25NN2JvbWIvSzUrTTczRmRqcmZtczRBYlR0WVR6UHZ1V2F3V2JvTGhVTnhmSTc5ZTA3MS9VK2JIRkUvd01xR2p3eitLOWZsS3V6U0RzNWZtTWlzSSswV0hRREFRajBJNERBM284ZlYwTUFBdmtJakNHdys1NzNYRW1ITnd6N0xFbi8yR0Zham1LK2J4RWR0RTNwV2tkN3ZiZDR2ZnI3SGRwY3ZvUWtwejBCZG53QWlFVzVWWG1CZmpVazJmSXI2TG1Td3cwNSt4d1BQL3RJMm5mSVFUYTBYZmZaOHlWVEppeStWTkl4UlhUb055YmlRcmRwQkx4LzdNWDhvTFRxZXJha0Z5ZlduVXUxUGhZeFk4NmhManAxVER1RHNlWTdwdGdjbTVOL0d6a0JhbXhmZjc0NG5QQzkvc0pZZ3pWL0gzUE8reGVCRkc5dUdHZlh3NnFPVXgvbHNpT0xOd3lPcU9ucEZjVzZPWUs5enhzSU9TYlJSMkJ2RWxsenpxL3B3SGRWQlBhbXc1YS9MQmJTZTJXc2t1TTNKZ0w3V0t0RlB4Q0FRQzhDQ095OThIRXhCQ0NRa2NBWUF2dHRKSjFhSVlJdlQ2T3JlRkkzZnFKWU0yNlNBWnZxRXNIZTlCcjZITHhPVTNIbGVQaEo3V3VJZWswUFhyRURraUhHUTV1clJlQ2VrajVjSEw1dWxUaHN2NjJ5bTZSekV1dlBvZHFxQyt6citBYlhtR0p6eWg3MFFaTkZ5c2RHS2o4eHZLMlYwbWE1enBoemp2VzFidDhOVGJtRi9QYkJIb1gvK21lN0xGcm1hL29JN0hjS3YrR3ZXaHFURHczdUplbVVUR050RXRnZEVmNmVUUDBNMlV6ZFljc1V6eVE1Zm1NaXNBKzVXMmdiQWhESVJnQ0JQUnRLR29JQUJIb1NHRnBnOS8zTzBhUUhSOGFKd041eklWZjA4aTRDZTFNeXNUbDRuYTdvVXJRZU5nSjdhMlJjRUFqNGtPejlrdTdha3NqTGlrU0JoOHdnR3RURHRtM0g2eVBqdDEyQTczSGw4bk5KMzRsYys1aU13bFVNYzEwRU93SjdqRnlldjE5ZjBrbVNiTlZUVjN5d2REZEp0dHBwVzJLaWQ5ZmZYMVhqaVBYMU1VbC9WRVR1WDlKMkVqT3RYK2UzN2VHZUhONHc4MXRWVTVjK0FudWRhSnc3b0tGSllNKzVSNGRhaTZiRGxoK0Z0MnB6NXcyeWhaZnZIVlVGZ1gyb2xhWmRDRUJnZGdRUTJHZTNKQXdJQWh0TFlHaUIzVDZ5OWw2dlNveTBETDNyajJjaTJGZDc2OXFIMXVLQy83MWMvQkJpbTVmeWE5VlhENTdBZTFWTSs4c2hXdXkvcEYvWlNWeHZSZEUwUFRETmFVb0k3SE5hamRVYXl4TWsvVzJISVU4UkJWZzN6SmlRMkdGNlY3aGtURXNFQlBiZm9PLzZXNlR2ZXFlODBkSDFBRG0yVjNQTytmR1JTSHRidUIzWUY5Wk1ybS82UGVJaDVrcittV082WFFYMjYwcjZTSkhuNWc0Vmc4aTViOXg4azhDK0NvZDlUWWN0T2Rhd3FvMm1OVUJnSDRvNjdVSUFBck1qZ01BK3V5VmhRQkRZV0FKREN1eCsrSGhuOEVpUEFlNzZReDJCUFVaMnZmNWU5NnF5Wjdud3QxejF4STFkUHd0anJ6UUMrOWpFMTZNL0o3citaRTFrZDhvTVB5RHB3WkttamdxTmlaWXBjMm1xZzhEZWwyRDE5YkYxbStyK201S1RvR3ZFOEpoemZubndISzlidlllSDNBdkRyTzY0clRiOUhsa2MrTThsK1hwWGdiM3VqVUZIWlBzTnBIL0xpSHg3U2FkTHVtRkZtM04vOHlGMjJKSVIweFdhUW1BZmlpenRRZ0FDSzBVQWdYMmxsb3ZCUW1DdENRd3BzTjlmMHJzSzRUUGxudGYxb1JhQmZhMjM1eFVtWjd1RjQ0dFg1QStvbUxLVGF0cnI5SXVSS0toVm9OWDFzekQyM0JEWXh5YSsrdjM1TSt6RW1ZNWdYeTVuU1ByZHdvdjZ0MHYvM1VtcXZ5N3Bqa3YvM1crMU9ETDBIUlBqaUltV2ZZYzNwc0IrVTBtZkx1NnYyNVVHL2RiQzg5NkM2TlFKR3Z1eVhMNCt0bTVUM24rYjdNODhoNjZlMTJQTnVTay9pc2R2VzZRN1MvcGF6Z1dkcUMzL3J2Vzk3TWsxL1krZDBES0dvWXZBM2pUSHQwdDZoS1JmeERwdThmZTZOMm5jaFBmTXJwTG1jbUJSbmxiVFlVc0xCSzJySXJDM1JzWUZFSURBT2hKSUVadldjZDdNQ1FJUW1CK0JvUVQyYllNMWpCT2NwcFN1RDdVSTdDbDAxNlBPYlNXZEp1azZGZE54a2ppL1BtOEJnZ2oyY2RZYmdYMGN6dXZVUzVVTmh1MmdIaVhweFlXbitZMUxrLzFtRWFuK1o0WDQvbmVTbGhQc09UclViWjAvSVp5WWFObDNhR01LN0YxeVlmU2QzMVRYeDlhdDYyK1JIUE9KQ2RUdXc2THVRUzA3RzJ2T2ptaDJ3c3R5TXN6RmNJY1FaVnVpeUZiZFVkWStsTHBKUll0RFJIZjNIWGdYZ2QySG52N05WUlZSYmgvOTkvVWRWT242Sm9IOXB5RmkvcDh6OTVtanVkaGhTNDQrNnRwQVlCK1NMbTFEQUFJclF3Q0JmV1dXaW9GQ1lPMEpEQ0d3K3hWKy8raDdRUXQ2WFI5cUVkaGJRRjdocWswUE1PV0hXUVQyY1JZYWdYMGN6dXZTUzkyaHEwVzNaeFZKUXo5Vkk3RHZKdW1vNHUyVUI1VkFUSjN3ZEoyU25DS3cvMlp6ZGYwdGt1dHo2Z09sRnpVMGRxYWtleFdKNHk5cTBlRVlBcnUvRDk0VERyNnFoamFuL0FrdDBOVldiZkxibnVOQlFoZUJ2VzZPUTluZjdGTzhyZlNoaHNXNWQwTkN6eHhyMnJXTnB1Q1BybTJtWG9mQW5rcUtlaENBd0ZvVFFHQmY2K1ZsY2djaEFJb0FBQ0FBU1VSQlZCQllLUUpEQ095T0tuUmkwNnBJNHpvNFhSOXFFZGhYYXJ0MUhtelRBNHlUcHRseVl2R3Fzb1c4ZDlkRWxuVWRnQk9tYmwxeDhTOGxYU0RKLzg1VmZEQmxLNXk1RndUMnVhL1FmTWJuMzczSEZLTGd3YVVoTFVTM2J3ZnYzYW9JOWwwazdWQllRSjFhaW94MTVMdEZia2RZenJYVUNkZXBDZnQ4ei9IOXpkWUlPWW9QSS9lWDlLK2x4bklJN0xjcUlsMWZJK20xa2s2UWRFbU9BUS9ReGhoaWM1OWgzMFhTSnlUWlRxbXFPUG0zNjN5cFJTZER6OW1mNzJlR3QxRHFoalgxZ1ZnTFhOR3FNYi90SWFLN280T0tWR2dyc0Y4dC9JNnlxRjB1UTluZjJGYlN2OTNxeXRNbHZiUXZpTXpYZSs4L3QvajllWGhGdTM2ajhpSGg4TGhQdDc0L2Y3REN3c3R0TnVVMElNbHBIK3BjQ3dFSXJCUUJCUGFWV2k0R0M0RzFKcEJiWUhmRWkzL3czYmVDbWtWSVA0QS92dUp2Q094cnZjMTZUYTRwZW4yc3FMam5TenEwWWhaK0dQU2V6K2xEMmd2V2lCY2pzSThJZThXN3FyS0c4WlFXb3B1OXY1M2NyazVndHhkN1ZmNkZ6MHR5MU9PRk0rWFRWMkJ2K294MW1YTGQvZkthSVhMVXd1MXlhUk10N2UvMXhjSGd6eVVkRnc1Vnp1c3kwQUd2R1ZwczdqdjBHeFFSNnArUlpGLzh1dEkya25mSU9UczU2MkdGUGRzUkRlTjFnc29IU1BweFh6Z3p1WDZWa3BzdWtMVVYyT3VDR29hMHY0bTl2WkY2TURubU5tbXkwZW1hbExnOC9ycEROeWY2M2wyU3Z3ZXJDZ0w3bUR1QnZpQUFnVWtKSUxCUGlwL09JUUNCSlFLNUJYYmJ3MVNKNis3U2tYaCsvYk1xUWdXQm5XMVpSNkJOOVBvUUZKc2l1YnJ1MnlIR09YYWJDT3hqRTEvTi91eFIvRkZKTzVhR2Y0Nmt1eFZKaXkzQXBnZ0J6dWZoS1BadFN1MDhyM2lENUM5bW1vaHpWUVQydXMreVBmRDlCb0hmMG1rcVRSRzlqbXgreVl5MjdwQmljNDVwTm4zZkxOcHYrNzB6MUp4dkllblZ4UnVMdG5HcUsxOEp0akhuNW9Bemd6WmlmdHREUlhmM25YcGJnZjNJbWtNVEMreStiLzlUM3dGVlhQL3lrRXVucm1uYmlQbHd5WDdzY3lsMW5EeStKMlo2RzNINThISjUzckhFcnluZnF6R09UYi96MnQ2SFluM3hkd2hBQUFLZENTQ3dkMGJIaFJDQVFHWUN1UVgydXVINUFkMFBZWDZOdkNveFV0Y2ZhbGpFWk40UU0ydk9yOGxYUmE1Nm1HTkZyOWRGRkRwcWZjOE1yLy9PREhueWNCRFlrMUZ0YkVWSHR6b0I4V01yQ0N5TER5bENRTjJyK0g0emF1OGc0czhOOUtZSTdIV0hvR1Bkbzl1cysxQmljNXN4eE9yR2hNYTJrYnc1NTN6OUlMQStMbGcwTmMzbGk1TCt1SGlyMFlkcDYxS2FJcGFIak83dXk2K053QjZ6L0JuaWpRVC8xck4zdmQ5MHFDdmZLZTd6ZDVaa1lYa09wV2t2NVBLcGIrSVNlNE15NVhzMXhoR0JQVWFJdjBNQUFyTWdnTUEraTJWZ0VCQ0FRQkZabGx0Z3R4aHF5NHl5Ly9vekpCMHRxZTVIL2xtUy9ySERpbGpBY2NSOE9hclIzb2Z2bFdScmdhN0ZYcWRPTnVhSEpzbzBCTzVhK00yZVV2SmVYb3pFd3QxVFI0aGMzYWtRMHYraDhKZDFsT1p5Y1VTZUgvYStOUTJheVh0RllKOThDV1kvQU51RnZhbGlsSTVvdDkvdXhlRnZxVUpBWGFMVXVVYkpyb3JBWGlmaXBBcGFkZFlPSjB2YVY1S3RET1pTY29yTlE4MHBacFVSRTliSzQ0ck4yWDc1L3IzVFZMWUtiNXI0M3lubGIwT3krNStrVkY2aE9rK1JkR3pOZU9lWTNIUXgxRFlDdTYveGIrdTNWQ1NYWHJTWCs4MmhPcHVxTXVxMjlraERiYTBtNzNYMzZkK210c25xVzVvc28yS0JTYW5mcTAxalJHRHZ1NEpjRHdFSWpFSUFnWDBVekhRQ0FRZ2tFTWd0c044dlJDdlpLbWJoSWJyc2t4dDcwRXNZOG1oVnFsNlBkMUs5MTQ4Mmd2WHA2REZCS0c4ekl3dmE3Nnl4SFBwQllSZXhSL0h3NXdpNW9ZdVRBcjY1b3BPMklzZlE0eHk3ZlFUMnNZbXZWbjkzbEdTQnRYelk2cWhtV3d6WW4zWlIyZ2dCVGhyM05rbmwzOUxPNy9Ia3dnL2EvdDl6S1VNSjdCYTNYaG1acEgzdi82NVVweW1pM0hVZjJhTCtvdXExd3pydlhER2UvVUpVNmx6V3crT0kvUWFKaVZaanpDV1c3TkVIdmc0c1dCeFF4Y1lVbTNQcytqWi9keTZGUHkyc1BNNFk0ZkM3emJoeTFHM2E2dzdxc1BqNzRSd2REZEJHVzRIZFE2aXo5L0xmY2llWjNqN2s0YmhoWk81T0FtL1AvNm5Mell2dnNVK0dRNmZ5V0pidHovcU8wODhjSDZuNHZrdDVnN0xOOTJyZE9CSFkrNjRnMTBNQUFxTVFRR0FmQlRPZFFBQUNDUVNHRU5qZlh3aVMvdkZwdi9XYmxWN2ZIL05CTDJINmpWV3FCUFpWR24vZitlZTgzZ2N2M2hkdGlrV0dkMVU4V0xpTjNORlRUZU9xZTExL0RrSk1HNTY1NnlLdzV5YTZQdTNaUnVJa1NYNzdvMXlxUHJ0dGhJQ21nemRIL2g0MUkyRnZLSUU5NWQ1VDlWMDFoTUJ1ZXg1LzE1ZWZiWEpaSk9UK1ZNUyt3MVBZNWg1VHViM1lHT2Nvc0R1bzRsbkZHNHhlZDR2TjYxanE5cnJubWl1aDVWRGN1Z2pzSG90L3U1MG9xZXJOaGRQQ2dWV081TFYxaVR6TFBIeXZzWTNNWlVPQlNtalg5N3BqSkIxY1V6Zm5QZVQ1eFdIR29SWDluQjBTbkRyWXBLNjArVjZ0YXdPQlBXRkRVQVVDRUppZUFBTDc5R3ZBQ0NBQWdWOFRHRXBnZDl1T2ZyRkZ3Rjh2UlJYR0hoem50QzRJN1BsV282M0EzaVRRTFI3NjJncjJYV1pUOS9sSWlSN3EwdDhxWFlQQTNtNjEvS3EzbzdxdlZQZ1NmMEdTTFliV1VZaHE4bDMzR3llT1h2OWVDVjFiSWVEL0xYSjZmTHdpT3Q1MlhudUY2TmwycXpOTTdWVVMyQzNpV013cGx5WkxCai9QK0kydVIxZGN0MnJKSGhkVHlDbU9kZDFWc2Q5SmN4VFlGM1AxZmUwZElhbTlyWnZXNVI1bkd5WGJYZGtDc2Fya3NnVHB1bWRpMTNVVjJEMXZXK0k4b2FhRFhJazg2OTRVTEhlYmFsc1Y0OUhuNzM4WW90ZXZVZEZJem9QRnBqY20zaURKYjRZMmZiN2FmcTlXTVVGZzc3TlR1QllDRUJpTkFBTDdhS2pwQ0FJUWlCQVlVbUN2NmpyMjREaW5CVU5nejdjYWJRWDJtQWR0Mi9hNnpzUTJSNTh1RXExdVYycGcwLzNYalFPQlBXMVhlZS9ZenNOZTFNdmxzNUllVm9pVDMwaHJaaVZxTlNYSGEwcEcybFlJYU9wblRuN3NxeVN3MTkxem0rNjFkVW4rVmpIWjQrSURoc0NlNzFaanNmR2djQmgyZWI1bUoybXBMcEd2QitNOExNNFg4L1ZKUnBiV2FWZUIzYTN2VU16UGlVMFh0by9MUGVhYWV5eXg3M0tmZnlUcGZXblR6bDRyNWsyZjY4REJBNzlUWVlWNGFrME9JZ2N2MlNPL3FiVDlYcTFxQzRFOSt4YWlRUWhBWUFnQ0NPeERVS1ZOQ0VDZ0M0RzVDT3dwU2JhcTV0ZVVlTXNKVHZ1OFJtb1IxYStpTGtkYnJ0SUJRWmY5TU5RMWJRVHgyNFNIaW5MaTJ1V3hwYmEzQ3V0VmRaQXoxRHJrYkJlQlBVN1R2cklmbFBRSE5WWG5KQWJIWnhPdjRmdWw4eVpVMlFtOFROSWhOUkYzWFlRQVIvZjVMUllMVytWaU1jaGp5V0ZkRUo5MWZZMVZFdGdmWHh3a09rbDV1VFFKT1hVSkgxY3gyZU5pM2dqc2ZYWjg5YlVXUTUwZjRmejhUWS9XNHBIRnZldUltdDdHU3JqZVo3SjlCSGIzNndoMko2NnRLbjB0KzVwK1MxVDE1NGg2SDl4TVVab3NjK3JlME9vNnpybzlseHJGMytWN3RUeFdCUGF1cThkMUVJREFxQVFRMkVmRlRXY1FnRUFEZ2JrSTdGMGZhdXZHMytRMTIyZERySUpnMjJkK1ExMmJLb2pIb29NVzQwdHRieFhXSzVmQXZrOUZsUFJRNitsMnZWWk90RmQxRUdKZlVIdnlqcGx3MGo2eDl2MmVVMmtTWlJialhBVnhKb1ZwWFZKVFg3dWM2THFxcmE1Q1FGT2ZjMGg2dWtvQ2U5MjlzdTY3ZWRzUW1ld0QwZVd5cXNrZUYzUG8rbHNrNVRPU1dpZjJ2VFZuaTVpNk9mbzd3ZC9iZm5ObjFZcnR2UnhKZk11S2dUdlpweE91ejMxZWZRWDJKdHUrdmxIc2RXOEsrazJZN3haSnJXOVI0bjZtcEhzVkh1Z1hqYnlSWXRhRmp5anlUNzA1ak1sYWp6MzcvU3ppejJ2YmN0MlEzUFFPRlJlK08xZ1YyYXF3cVhUOVhsMXVFNEc5N2NwUkh3SVFtSVFBQXZzazJPa1VBaENvSUlEQTNtNWJ4QjU4MjdXMk9iVlRCZkdIRkE5VGI2dEpiTHBNSzdXOVZWaXZYQUo3ekZabjNYZmJISVN4WmNaTkQ4akw5YjVXUEVqdkdvU0VWVjBqNTl2NGFQSEsrbzRWRTBqeFJlOHFCRFJaeFhnb1V5YzlYU1dCL1I1QjBDay9vN3lnT0NnN3JHSmQ3VVh0ZTNXNW5Cd08raTZkNldhT2ZTZk00VDd5TkVsSE4vQnJtK2d4eDV5OUw2NFg3Q3B1VkJ5Z1d2aXp5R21QZmgrMnBwU1VlMEZLTzJQWHFkdnJIc2ZjOS91Q1ZWK0IzZTAwY2VqalFlL2ZjKyt0V0ZRbjh2VGJNTTh0L1cyS1F3M3ZmOThiZkQrc0t2Nyt1NytraThNZkYyOXorZjg2R2FvUDB0dmtJMmhLcUp0aUQrTit1MzZ2THM4UGdYM3N1dzM5UVFBQ25RZ2dzSGZDeGtVUWdNQUFCQkRZQjRCS2s1MElOSWwwNVFZUjJMZEVqTUF1dmJqVHpodm1vcnFIMjNKdlB3MDJKLzg4ekRBR2I5VldMWTZvdTN0TlQ4K0lpSVY5aFFCL2g3Mm55SlZ3ejRyKzdmdis0REMrd1VGVWRMQktBbnRkNHI0M0Z0N1NqeXJON2VxUy9NYUlFOHFXeTM1QkZKdUNkMHFmT2NUbWxINzYxS2xMT0x0b3MycE5tdm9iY3M1TzJueHJTYllKOGZkeXJLeWFMVmJUWHZkYzU3N2ZGK3VSUTJCdml1RCtYTGdmZExIbHF2TmZmMnV3clhKQ2F5ZGJYUzVqSjFHdVM2enRNVm53OXdIbGFXR0FWVzlXK2NEc09ZbHY5VFVsMUczenRnQUNlK3h1eE44aEFJRzFJWURBdmpaTHlVUWdzUElFRU5oWGZnblhZZ0tPZ0hPRXoyTVRaNFBBdmlVb0JQWjVDZXkyenZHcjRSYWZta3F1TnhnU1B6cFpxOFUrdDZrMkxYMkZnS2E4RGJZcGN1U2xSZml4eXlvSjdMY3FSS0pQaFNqbFpVNVYwZEoxMFpVeEs2Q3grVmYxTjZUWW5HTitma2EwellRVElOY1Z2MUZRRjBrNzVaeDNDbTgxM0N3QzRnUkoreWVLalRtWTltbWpLZEdrazdqYUhzWTJKbk12T1FSMno3RXU3NEtqcy8xR3d5a3RRVFM5NmZYMElyR3FENU9xdmtmN0NQb3RoeWdmc2ppM2lDM3hxb3B6VnppQzM1WXRUWUVpN3lyeUVCeVlrQnVrS2FGdW0vd1dmYjlYUFZjaTJOdnVGdXBEQUFLVEVFQmdud1E3blVJQUFoVUVFTmpaRm5NZzBKUWNzV3A4ZlFWMlI5dTljdVNKYnkzcFRaSjJLZldiUzJCRllKK1h3TzdmZWs3RzV1UitUYVhOQS9QSVc3YXhPNHZyamp4MDhydXEwaVpTTlljUTBIUVBtY3FhWXBVRTlycXhsdjIrbThTbVBqWVJZKzN0dVF2czE1VGtRNDI3TkFEeFhtOXpZRFRtbkxjTFltUlY4dUhGbFB4bWlROXBiS3N4OTFJWFhlMXhqeDFGM1lkVkxvRzlTZnl0czVOcUduZmRBWWJGNmoyTE41TStMZW4xa2g1ZGFtUk1tNWltQksrMmVQUGJXOThJOWttT3V2Zm5zNjQ0eXQxdlZUbFJhVlh4NzRaamdxMU0rZTl0ODF2aytGNUZZTy96cWVOYUNFQmdOQUlJN0tPaHBpTUlRQ0JDQUlHZExUSTFnVGJXTUl1eDloWFlwL0RacmZ1c0liRG4yWUZUckdsczVFMlIxYjUyS3VFM051N1kzMlBlNTIzbmxVTUlhQkltcG1LOVNnSjdYU1JwT1VlQWhWTkhxVjYxdEVsV0pacDNUTEU1OWptcStudmRtd1NMdXZhMjN6MGtEazV0Zit3NTcxRFlYbjJzaUQ1MjhzcTZzZ29IaTAzSlRYMlA4MmZoMzFJWFllSjZ1UVQycXdYTExYdnZsMHZiNUx1K3ZpNHd3UDdyM3VkT2psdm4vZDVGMEcrN0RMSHY4Q2NHRzV0RnV5a0hUTDZuT2hyK1N4V0QrZDFnTlhQRGlyKzFqZHJQOGIyS3dONTJ4MUFmQWhDWWhBQUMreVRZNlJRQ0VLZ2dnTURPdHBpU2dLTmdYMTBSblJRYkV3TDdsb1FzelBoaGNLemlCKzNEQzB1QVcxUjArTy9Cay9leXNRWWo2WXMxRDZ3akRxR3lLOXNtMktQY2lRR1hpNFVESi9XMXYrd3FsWmk0M3NYM1BJY1FZSVl4UDNnejM2Y1FOODRjQ2ZncUNleCt3OGFKQnN0ZStvNjB2TE1raTBLK1g3K2wrS3c5cUlMZkhBKzRxcFo1YkxHNTdWYXJTL2k0YUdkWmVFeHRlNG81TjBYOWV0dy9ERkg2VlNKajZyeUdydGVVMUxOdG90bWh4eHByUDVmQTduN3FSUEhsZTBWc1BJdjd0WlBFN2x4UitRMlNIaE1TZy9xZ3hwSHNGcStYeTlDSGVrMzVQVHlPRDRSbzlISkNaMzhQdmJZNGZIbGdBd1IvRi9tei90bFNuU09MT1I5UmMxM2JONFJ5Zks4aXNLZnNaT3BBQUFLVEUwQmduM3dKR0FBRUlCQUlJTEN6RmFZazBQUVE3b2NuUDRSVXZTcVB3RDdscXYyNjc2WUhyeTZSYk5QUGFMZ1JXTHk4MjFJaVRsc2pXRmkvWkxndUIyblp2MStkOFBKMWtyYXE2V0haanpaMUVEbUVnRVZmc1RkaXhoVFpoeExZVXl5dW5QVDE3MG9MOEovRnZ0dE4wbGsxQytQNmoyeTR4bTErdUdMdHp3bjcrN3pVQlordzNoUmljK3AwL2ZtcXNzTll2dDZIZFJaK2JhR1JXcWFZc3lOd0xZcjY4MWhYSGg0T2JGTG5NV2E5ZFVsdXVtQ1dVMkIzUXMrUEZCWTVaVDFqWWV2aVhBNHBwY25mZm5sdk9PbW4zM2lvc2w0WktzbHM3Q0RaYnpENE8vMmZhaWJxL1dPcmw4YzNnUEQ5MkhZeEh3eDFibDYwK1VsSi90NG9semJKVFJmWDV2aGVSV0JQMmNuVWdRQUVKaWVBd0Q3NUVqQUFDRUFnRUVCZ1p5dE1SZUNPa2h5OWRKMktBVGdLZHQvd1FGVVdmRndkZ1gycVZmdE52d2pzMDYvQm1DUHdiMWVMQWZhWXJSUFhiUXRoRWVUSExRZVdRd2hZN3JMcDN1SjZGa2Z1VXlUbCswekxjYmF0UHBUQTNuWWNpL294Z2YzNWtnNnRhTnozVzl2QzFDWDZXNVhvZFU5dENyRTVkYjJHRXFXbm1ITktzbGJucURnb0ZjN0k5ZFlsdWVrQ1cwNkJ2UzZpM0gyMU9UU3A4N2V2aW9SM1Vsd24veTBYLzRiMGI4VnlGSG5mN2VLb2VoK0NYNk9tb1dkSU9qclNpZC80Y1VMaXVvaDBYKzRrM0o2YmN5cTR2WU5yMnZTaDZsK0VpUDdVdWVYNFhrVmdUNlZOUFFoQVlGSUNDT3lUNHFkekNFQmdpUUFDTzl0aENnSitoZmI5d2NPMHF2OUZGS3dqWlJIWXAxaWhlSjhJN0hGRzYxSWpSVnh2azlTMHpDV0hFRkJ1TTVZNHVSdzlPTVJhclpyQS9yUWEwY2h2R24xZjByc3FvbGFIdG1uSXZTNVRpTTJwYzdBNDZVVFlkYVd0QmNlaW5hbm1IRXU4M1NVYVA1VmxuM3F4Qk5XcmxOdzB0Z2U2dkczV2xJZzM5YkN0eWQrK3lwKy9UdFIzc2xOSDFEdDVhTTdTdEhmOUJ0cjlKVjJjMEtIM2toT2R2NnpoWU5vQkphOEtiNGRWQ2ZwKzYycVBZSU9YME9YL1ZNbnh2WXJBM29ZNGRTRUFnY2tJSUxCUGhwNk9JUUNCRWdFRWRyYkUyQVFjMWZNS1NZK3Q2ZGhlMm43MTludkI0Z0NCZmV3VlN1c1BnVDJOMDZyWFNyR0ZzYmp1cEhlMkN1bFNjZ2dCNVg1anIvaTd2b1dOQThKOTVyKzdERHh5emFvSjdIVkNyUDJFYjFkWUdUaWZRTG1Vay93TmdERnJrMU9KemJGSlhML3dvajZwaHZIaTJxNkpRYWVhczBWSWkraDFwWXU0RytPWTQrOU5pU1pYTGJucGdrZk9DUFlteTVZM0JxRTR0ZzVOaDBsVnRpL3UwNGRQdGtjcWw2NmZpNll4YmhzaTJNdDViYnFJM2Y0dXNoKzc4MWY0OTIvYlluSCtrSmJSNis0angvY3FBbnZiMWFJK0JDQXdDUUVFOWttdzB5a0VJRkJCWUM0Q3UyMEhUdXl3UW5XSkZ1MEY2UVNNWCszUTV1SVMreU9mT3NDcnB6Mkd0QmFYUHIzdzczNUp6VXpLMFVoVm5zQytGSXVZNmJjQ0F2djBhekQwQ0ZMRWRRdE9leFVDK3hrOUJwTkRDS2pxUG5hWXQ3am16eVc5T0x5dTMyTWFXMXk2YWdMN0h3WVA0SElVcFE4ZnFwNWRsZzlEYzNJYnNxMnB4T2JZbkdKSlFiMEdQc1N5QjM3Yk10V2NZLzNPVldCL2lpVGIxMVNWSWNUY3R1dlpwWDVPZ2QzOTEvMDJTeEhZL1FaalhYTFRwamRpOXBiazVMTGxlNUYvTnpyQ3U1d3d0QXVuNVd2S24wbC9CaTMrdjZOanc0NjBQNkhHRnJHdXlTNkMvcUt0SE4rckNPd2RGNXZMSUFDQmNRa2dzSS9MbTk0Z0FJRjZBbk1SMk9lNFJ0OHNIbVozS1pJVVhUREh3YTNvbUp6czBUWURmbENxS240dDk2aWxTQjBFOXZrdU5BTDdmTmNteDhoU1gyMjNMM3RUbEdyS1dISUlBWFg5V014eEJMWWpDSnZLRzRxa3loYldjaWFlSFVwZzl4aC9HSm1QUDUvWExkV0plYkJ2WDl5YlQ1ZGtML0NVOG9nYVgrU1VhNmVxRXhOOVV5MHVjbzUvaDhJdXpma0xiSU5SVi9wNFRVODE1MVdNWUc4U2Yvc2NjdVRjTDEzYW1wUEE3bjFSWlRmbGVmbnR4cWZXUkd1M3RaWHB3bW41bW5JVSsydUMzWXQ5MDd1V1hVTlMwNnJjUTFWdGR2RmVYN1NUNDNzVmdiM3JTbk1kQkNBd0tnRUU5bEZ4MHhrRUlOQkFBSUc5SGc0Qyt6QWZuWnRJc29mbGpxWG1xM3d0RWRpSFdZTWNyU0t3NTZBNHp6YXVKT2xaa2w3UU1EemJxemdobXdXUnZ2WXFPWVNBSnBJV3pYd0ljUGNJN2pNTG45c0hTZnBHcG1VWlNtQlBFWUdyQkxXWXdON2tyVnhHTXRmbzQ5alNUU1UyMTQzTGIxbllPc0w3cnE3NHMrWkRhWDlIZGlsVHpUbm13ZTVvWk9kS3VLekxwQWE2cGk1SzJ0MTlMcnl0MHphSjgwQkRiZFZzVG9HOTZUNFJpMkJ2K3QyUUVvbCtaRTNTMEtHODJCZHZNM3krV1A5OUN2SC93bGJVcXl2Zlh0TDdKTjBvMHBZdDEyeVhlRjdIUG5OOHJ5S3dkNFRQWlJDQXdMZ0VFTmpINVUxdkVJQkFQUUVFOW5vMkNPekRmWEoyRHY2V0N5dUN1Z1NKUXduc1p4VTJNLzg0M1BRcVc3YVFjbDlKMjVUK3VxcjdESUY5NUEwMFVuZmVweStVWkN1bnBsSisyNlRQOEhJSUFiSCtyeGVpSnZlTVZQUXIrUThKOTZkWW03Ry9UeW13VzhSNVVtbUFsMG82cHVFQXdjOG5iNWIwc01qRStncStNVzVEL24wcXNibHFUaWw1QW55ZGJTWDI3MkZoTk1XY20zeTZGeXljeFB6QUlSZTdaZHROUHQ5dXlwSFZ4N1ZzY3k3VmN3cnNkVlpTbm10c1RadWkxMVAydVQzUmJkMVkvaDNsdmo4Z3lXOVUrVDZYcTFnRWYyYzRUTzVqZzFZZVQ0ckkzamUvUlk3dlZRVDJYRHVKZGlBQWdVRUpJTEFQaXBmR0lRQ0JGZ1RxZmp6NUFkcldLUDUzVmFsNi9kejFZdDdZc1FlOUZrTWZ2T3FxQ3ArRGc4blF3Ykt3NEQxV1p6TXhsTUNlWVFyWm1salZmWWJBbm0wTHpLWWhXemdkWHlRcmRRSzZwbktvcEwrV2RIbW1rZWNRQWxLR3NsMFFTKzZhVVBtSVlGZlZSNnpwSXJCN0RaeFExQWVBemlWeWx3b3h5ZDduWDBxWVE1Y3FYdHZuUnk2MGlHWi9Zbzl2MVVyc04waksyd0U1NXB3cXJ2dDMyRzQ5RWdoN3JGUE11U2xSNklLZjk5Q3Jjc0RNMU1adGk3ZGNUcXZ4eVA1V1llUGorOGJYTS9VMWRqTzVCUGFyaDJTamZ2T2dxdmhnOXFVMWYydEs1SnRxditQUGpmM3huMXpUeHhDMlZUNmNqVmx5dFYzUG1DMVVqamVFY255dklyQzNYVm5xUXdBQ2t4QkFZSjhFTzUxQ0FBSVZCSnArUEhVQmhzRGVoZHBtWHVPOVo5c0dlODh1KzY0djAwQmduKy9lUUdDZjc5cDBHWmxGaExkSnVsZms0cU1sUGFkSE5HMVY4em1FZ05RNXR4SFpuVFRQMGR4ZExXTlNCWGEvTmVESStrT0NGWWl0YXJ3T0Y2Vk9LbU85bUc5Mm42UjdHWWZadWFrcHhPYnlZTDNlaDlWWVhTelg3WnRVY2RIV0ZITnVTaFRxY2Zsd3huditVNTFYTXYrRmRmWWo3cW5KR3p6L1NQSzNHQlBZYjE3a29QQm4yd2M2VlFlbjFpNStQK1N6MktsbWVMRTFiVXJrMnliSFFGTUV2Wk9rM3JONE0rTDgvQWl6dFJpekxNdGxkNVBqZXhXQlBkdXkweEFFSURBa0FRVDJJZW5TTmdRZzBJYkFYQVQycmxGamRlT1BlYzIyWVVUZDRRZzRXdE1QRTNWSm94RFloMlBmdDJVRTlyNEU1M085eFpXL0w2d28vUHA5VTNGMCswR1p4WFgzbDBNSWFFTXoxUzdHYmZxNzVMR1MzdEVoWXI5SllIOU1ZV2x3aDJEajRqY0d0bHFhd0pSdnRUaDYzbEc4OWxtdUtzOG8vdVpEbHFiaUJINFc5T3l4bmNPenVNM2F4dXBPSVRZdmo4bDd6NStqSnMvMVJmMGNTUlhkMXRoemprWG5la3h6OHpOdlNxQ1o0ZzBlMjNkVC96MG1zTnVDeVB2U3hRZDdGNWNHN0lOSkh3dzFsYWFEUVgvSGZETGM2OHR0cEVhdkw2NnpsWS9IZWtETllQdzMyL25NOFEyYmxEZFgraVEyWFVhUzQzc1ZnWDNxVHk3OVF3QUNTUVFRMkpNd1VRa0NFQmlCQUFMN0NKRHBvak1CQlBiTzZBYS9FSUY5Y01TamRPQm9STDlKRWt1NFZpWDJ4WklZampLQmhFNnFCR3RIRWI0OVJJd25OS0VUdytGQ204aklPb0hqSjBHc3N0MUNWYkVkZ2ExaGhyS0JhWnJ2VFlzSTBFOFhBcFlGdFhKSlRmUzNQRzlmNHplVVBsSkU2TThoT2VUWVl2T0NvWi85N2lIcHJUWCswV1hXSDViMDBFek14cHh6TERwM01jKzUrWm1idGQvZ3FTcHRvcXRUN2lWVDFJa0o3TGNJQXZnaUwwNlhNZGF0cVlYNVZ4ZHZBajI2cHRFdTN1bE5VZXkySGR3M0pCTHRNbzhocjdHMWpqM2RsdzlVbC90THZjZW1qQkdCUFlVU2RTQUFnYlVnZ01DK0ZzdklKQ0N3RmdRUTJOZGlHZGQyRWtNSjdKY000S2taV3dRL1VQbUJwL3hnTldXMGFtek1UWDlIWU85RGIvcHIvVnYwZ1pMZWtoQ1pXQmU1dnNvQ3UxY2cxWFBlZGUxN2ZoOUo1N1pZdWpxQkk5YkVrRzlnK1hQcnlQa2JCNkhuc3FYQldBaXpGWVlqOXF1S3hhSDN4QVpmMkVoc1h4eGNuQzdwaHFXNjd3b2ltKysvVTVVeHhXYlA4VXFTbk5UN2J5VFZXV3VVV2RnMnpheHpIVWlNTldldnV3OFFZamtPemluRTNMc1ZFY2puVGJVSlN2MzZvTXNIYUh2VmpHZS9jQmczaytGMkdrWk1ZSGVqRnJwMzc5VDZyNjMrNnZac2s2amMxUTdGMzE5TzJIeHd6WGkvRXF4aTJ0eXZPMDQ5K2JJN1N2SmhqZC93cVNxKzcvdHo0YmM3Y2hRRTlod1VhUU1DRUZnSkFnanNLN0ZNREJJQ0cwRmdMa2xPc1lqWmlPM1dlcEpEQ2V4ZDkxdnJDU3hkVVBkWlEyRHZRNVZydXhKd2tyampFaTV1c29WWmRZSGQwN2VvL0VKSlRzNVhWOXFLTlJaVmZ5L1l2enlwSVZxeENYOHNuMG5DMHYxS3lMbDk4THErczZSZHdxR0NyNjFLb3ZlUUVNVmI5NXp5Z3VBZEh1dTdMcnJVbGpFVzI1WkYvVmhidWY4K2x0aHN5eEZiL3p5eFNBcDVzeGFUeUJtNXZ1aDI2RGxib0xZSWJjSHpXZ2x6TlpPRkhVbEM5Y0dyeER5OTl5alc4YnVEajJMWURtSUN1eTFoWGg2c1ZkcU9wT24rR0xNTDZtUG4wbVE3NHpsMGlZeHZPL2ZVK2plUjlOSGlRSHZIaGd2OGZWcVhqeWkxbitWNi9oNXlZbG4vZTduWVk5L1dYU2xKeXJHSTZVS2VheUFBZ2RFSklMQ1BqcHdPSVFDQkdnSjFQNTVpR2V6cmZxekhSSUc2NjdvS25uaXdyL2ZXUm1DZjcvb1N3VDdmdFVrWm1iMmdiZnZpcEpaMUpaYlFkQjBFZHMvZHY4dDk0UEN5Q2pFOFZWeTNpT0hJOEQ4cHJGMHNWTmRGS2NiVzV2dkJUc0VSejA0Nm1GTGM5N1pMWXZwdWhUM0MveGQ1TTZIOEhSK0xydlE0WXI4TEZtT3RFeXpmS09sUktSTWFzRTV1c1hraFlwbS9JOVgzQ2JaRGZqdWliWGxWU0hSN2Fkc0xJL1Z6ejluZGVYOTd2OXU3Mi8vRS9Ma1hRNXlUNkxrWVUxTnkwNzhzS3ZudnExNVNCUFpZZ3VNcUJvNzg5eUhpZHlyKzZJTVgyNkhjdHdiZTE0cDhEM2Z2a1VUYXpmcGc5Q1VOaTVOYnRPNnlEMUxFOVRsK0xqeFhCUFl1Szg0MUVJREE2QVFRMkVkSFRvY1FnRUFOQVFSMnRzYWNDU0N3ejNkMUVOam51emFwSTdNQTRxalR4MWRjY0tpa3Y0NUV1YTJMd0w2WXZsL1BkekxUYmNKL3NMaCs3eUlTMlpZV1ZjV2k0cDZTbkxEVTRsU3F5Rmh1eTU3QmJ5NUU4bGNXWXBRVEJUWkZGbHJZZEhTOHhVM2JPVGdxM1hZdmJjdXlXRzV4K09NSlNXNVRyV3ZzTlc3UDlmTHpUdGVEOUxaemE2b2ZFNXR6OXBYYWxwTjhPM21zN1hsU29rcFQyMTNVaTgyNWpXV2FEK2E2SEI1NExGMXNsdHJPdFczOXB1U21xZnU5Ylo5VDFFOFIyRzlWNUFuNFZCSEo3alZ1S3Q2dnRvcnlHeTMvS3NsSlNzc2xKWm5uSThKOXJ3OFBSMmlmMUdDLzVIdnJnME9la1Q3OWRMMDJJUVJ6TEFBQUVMTkpSRUZVSmFGMjZpRnUxekgwdVE2QnZRODlyb1VBQkVZamdNQStHbW82Z2dBRUlnUVEyTmtpY3lhQXdEN2YxVUZnbisvYXRCbVpSZUhEQ3BIa2lIQ1JCUW43Mmxyc3F4Sk9sdHUySUhPYk5wM1YxTDF1RVBQTFVkOC9rdlNzWWp3WDllekRBdUtwa2xJaWcyMXBjSUlrQzI5K0krc0xGWDA3SWF6RmNJdnZkY25xVW9ic2hIYlBENzY4WmRzVWY3NDhGa2RGNzFyWUM5aml4UWxJdTRyNDVmRXNyS2tjSmQva3UxNitMaVdpdDA3TXMyV0tQZituTERHeGVleXhlWDg1QXZ6c0FUdWV3NXpuS0s0Yitib25OMTFzcXhTQmZXRnRWWGRQOXozanF5Ri9UZXk3SVpiTTAvZFk3M3VMOVgyTFBmOVBLUVQvcTlZMDVENjh6aW41SS9xT1pmbjZGSEhkMzNIMi9qOGpaOGNaMjBKZ3p3aVRwaUFBZ2VFSUlMQVB4NWFXSVFDQmRnUVEyTnZ4b3ZhNEJCRFl4K1hkcGpjRTlqYTA1bDNYd29wZnRYOWVJYUE0cXRDdjljY0VsSnd6eXBHTUxlZDRIS0hyL1YzbnUrd0RBVWRvTzRxOGJmbDJzS0o1WGZEQjlmWG12NjhraTJBVzB5Mms5eEh1VThaa2NkOEhDSStVOU9LVUMwSWRKK0N6SU5TVWdOTnZSSlE5dHIyZjdoV0VzQmJkWmE4NkI3SFprL0poancrMW5BY2g1ZUNuRDRpcDUrd0VtRDVjcWJJUjZUT3Z2dGR1UW5MVEJhTVVnYjB2ejhYMU1idXBITll3eTJPMXJ2SmNTWWMzVE1CQ3RwTlVmeWJYSkNQdHBJanJVMGZYcDZCQVlFK2hSQjBJUUdCeUFnanNreThCQTRBQUJBSUJCSGEyd3B3SklMRFBkM1VRMk9lN05sMUc1dCttZnQwKzFmZTdTeDkxMTh4TllJL056YXhlWDNnSFB6cFdNZnpkRVpTTzNIWUN1eS9WSEY0OHBlQi9iR0o3YmFwWnhISDA4R2toaXQ4QytRVWhjclFweXZRWHdhN2sveWwxWnFIY2tmdE94bGxYcXF5RGZpckprYWIvM0did0E5U2RXbXoyWHJEWC8xOUorc2tBODZ0cWNxbzVlNjRXUGIydmh6NUU2SUx5VHVFelVSWDUvT1hpYit1UTNIVEJaU3lCUGVZM1BwU29mRzFKN3cvM21McTlNSmJJdmwwNHBQYjlycW5Nd1I4KzlybEJZSThSNHU4UWdNQXNDQ0N3ejJJWkdBUUVJTkNRd0NhV3pJd2twMnlmTVFnZ3NJOUJ1VnNmQ096ZHVISFZsZ1JXVFdEM0RLcWl0TXN6T3ozNEZGdU1qbGtoM0RhSTRGMlRvN3B2OS9HUHdYTG0wOEhleGtsVHE5NUdjRFNuMzFTNFJzV0dkUDM5Q2o5Nld3QXRySU9XcThYc0hhcnUyd3RMR292N1U1YXB4R1piYS9nTkViT3paZEdZWllvNWU1NVBrM1QrbUJOdDBaZWZ4UzM4TzdseFZVbXhRbXJSM2VSVnh4RFlMYTUvTUdJYjVzT2xRd1o2UXlvV09lOUZzSysrUGRrOXppSEt6WXRrMDMrZllKMFdTeUEreE5pNnRJbkEzb1VhMTBBQUFxTVRRR0FmSFRrZFFnQUNOUVQ4S3J4ZlZmZHI2Y3ZGcjFFZU1NQ0RZTjJQL0s3SnorcCsvSzFUY3FwTjNyd0k3UE5kZlFUMithN05xbzFzRlFYMm5Zb0VwejZJdHMzRWNxbXlnRWxaanl0TGVudVJOTkJSNVNsbFdVei9SQkRUSGFHWlVtSkMxR3VDOEdnTEhIdlhseU44ZjFZa1EzUWlVMGZGbDB2ZFBHS0g5aW5qemxGblRMSFpidzY4VWRMYml0OVQ1K1VZZk1jMnhwcXo5NS9mN1BpYmllZWJndWwzdy82OVlVVmx6OFBSeC8rVzB0Q0sxQmxhWU45ZTBva1IyeXhiQmZuKzFtUXYxUmRuelB2ZDdUdUszczgzL24yWjB3ck4zd252THA2cG5LT2pxU3p1cjdGRDE3NHNjbHlQd0o2REltMUFBQUtERTBCZ0h4d3hIVUFBQWpNbGdNQSswNFdaNmJBUTJMZGNHRWU0bGtXOUtaYlBoM052S3F3aWRxbm8zSkc3OXZJZU8xS3ppb090Q1ZLRnh5azQwcWUwaWdLN2s2RDZJTnArNlJaczNoeTh6T3NzWUZMV3VTN2g0c0xteFJZSUgyMHBwcGY3ZFZUNkI4SzRxOGEwTElJNW9hcXRiUjVVVWRGdE9CSzBiUDF4VFVrZktyelc3MUs2NXEzQmh6dW5vSlhDdEZ3bnQ5anNCTHdYUy9xUGtLalVlK0tzd2o3b0d3bHZMWFFaZjVkcmNzL1pZL0M4dnlmSmIwcDhNaHcyblp0WnNPd3kxOVJybWl5WmZORGw3eS9iSksxTEdWSmdUeEhYdjFMc2xYdEs4aDRac3ZpQXoyOG1QQ0doazJOQ2d1Kys5a1hXZGN6WEIybFZid1F0RDJXVnhIV1Ayd2RRL296NzdZUnk2Um9ZbGJBMFZJRUFCQ0RRamdBQ2V6dGUxSVlBQk5hSHdCQVBla1BUY1FUYW80YnVoUFlyQ1NDd2I0bWxqZ2xicUpvQW45LzU3NHhWRk5ndDVCd2FQTVZQbG5SWkJzd1dNeHpwN1dJTEExdkxXS3l0czNscDI2WHRDeXgrNzFoellaVUl0bmU0cHVyWnhTS2tEeGFXaThVMkg3Q1ZJNE1QQzNZNWJjZE1mUWprSm1DL2JuOW1kNjVvT0NYSFFPN3hqTkhlVUFKN2lpV0tEN2lkR1BtTU1TWmE1THJ3NGIrVExEdXhicXg4dGpnY2UxZzRFSXZWcmZxN0R5SHRwZTZjQ3JIaXQ0V2ZPdE44QkhWanY3K2tkMG1xdXY4N01mcExZNVBtN3hDQUFBVEdJSURBUGdabCtvQUFCT1pJQUlGOWpxc3kzekVOSmJBN3N2cUhJMDk3Sy8wNlV0Zi9YaTV0dllrUjJOc3RIQUo3TzE1VDFGNUZnWDBLVG4zNmpJbnJkU0tZMzVheDlZTUZzbkt4bi9wdWhaQjF6dElmSExsdXl4b2ZRQ3dYV3plOHA4OEV1QllDbVFnMEhSbzVDYkQzK3BBMkpwbW0wYXFaSVFUMkZFdVVvVDNQNnlENEVNVjJMWGRQb0dTckZrZTgrN2ZWNVFuMUYxV3VWeHdrT2lMZEluU3NXUEEvYUVadnRjVEc2Ny9IdmpQdUZ4TExwclJGSFFoQUFBS0RFa0JnSHhRdmpVTUFBak1tZ01BKzQ4V1o0ZENHRXRqbk5GVUU5bUZYQTRGOVdMNDVXa2RnejBHeHZvMllMWXd0YUd6M1lrR3FxdGphd2RIMDVjTkIxeTM3S2g5WmtSalZGZ3k3Uy9yOHNOT2tkUWhFQ2ZqZ3g5Wm10bU9xS280d1BpN2F5dXBWeUNtd3AxcWl4TzRyUTFOTXNhNVpIb1B2VDQ1NnQ5MVRyS1FjTGl6YWNNTGM1MDhrcnZ1KzdpanovNUowWmpnNDhtR3FrMkV2TEpDK1hFVFdYN2cwWVh2SU82ci9jUTEyaE56VFl6dUV2ME1BQXFNU1FHQWZGVGVkUVFBQ015S0F3RDZqeFZpQm9TQ3diN2xJUkxDMzI3Z0k3TzE0VFZFYmdYMDQ2cmVYOUw1STRyMW5CQkdtemg4OTVtdjhCVWtIU2xwRWpUcFB4SEw1VnNqVmNQNXcwNlJsQ0NRUnVHMUlibHJlbzc3WSs5VEpUYitlMU5KcVZjb2xzS2Rhb2xoY3Qwajd6b2w5K2R1STdDays4WjcvSVpKZVdIUGd1THdyek9CZ1NhK1lrTUh0d241M2JveWM1ZXh3YVBxRG5JM1NGZ1FnQUlHdUJCRFl1NUxqT2doQVlOVUpJTEN2K2dxT08zNEU5aTE1STdDMzI0TUk3TzE0VFZFYmdYMFk2dmVRZElLa0tqRngwYVA5ZzQ5S0VJQ2M1TTRKVnV2ODI1dG1ZTjkzVzhUazhLa2ZoaFN0YmdxQnFqY3NGbk8zRU9vSTlxa1Q4UTZ4RmprRTl1MUN6b1dZN2NwY3hQVUZSNC9iUXI4UFQrcUt4ZlY3bCt5dXluVjNrT1JrelhkS1dLQ3BySEhLUTlzbTVQVzRkY0tZMjFSeFZMNC9TeFFJUUFBQ3N5Q0F3RDZMWldBUUVJREFCQVRxZnVRL1Q5SXJKeGhQU3BkK0ZkS3ZWRkxHSjREQXZpWHpBMnFTczQyL09xdlJvejExblZ5TU1sOENDT3g1MThiUEdVN003WDFmWmV1eTZLMnRkWUU5ZCszSDN0Um0xVXllWFZnTnZEanZGR2tOQXEwSjNFRFNxWkp1V1hIbHo0cS83Vkg0cnp2cDVUcVd2Z0w3VlVNa3R0OVVhU3IyTTdmOXp0enlMZGd2L1cyUzdsVXgrRmdTMWlzVmlhYWZMT2tsaGRXTEk5aGp4WllyOW1YL1VxemlDSCsvV3JEKzh1RkJybEtWZXlOWDI3UURBUWhBb0JNQkJQWk8yTGdJQWhCWUF3SjFQL0o1QUYrRHhSMWdDa01KN0k1Q3NsQTBadkdEenVIRlE5NHRTcDIyOVdBZmM4ejBCWUV4Q0NDdzU2VnNjYWZPVDMzUlUxdHgzZGY1K2VWcFFXaEtIYkhGSzBlTy9sdnFCZFNEd0VBRUxQeGFaSzBxSjB2YVY1SURLdGF4OUJYWXpXUnJTVTdXYVoveXF1TFArb01rblRKVGdFN1liQzkwVzd3c1NvcFBmT3FCcGR2MEcwTk9tUHJER1RGNGVYZ3pJOGVRVW5qbDZJYzJJQUFCQ0xRaWdNRGVDaGVWSVFDQk5TS0F3TDVHaXpuQ1ZJWVMyS2M0MFBrdFNSOEl2cFhMNkJEWVI5aElkREZyQWdqc2VaZkh6eGtQQ1JIczE2aG91b3U0dm1pbXJjaitzaUJvcmFQdFJ0NVZvN1VoQ1RpUHdOdURWVkZWUC91RnZ3ODVoaW5iemlHd2Uvek9zMkNPZTVjbWMxNlJPTk52dURnZnc1eExPUm85MVNMTGM3cFBzSnFwdXFjNmN0KzVMR3d6ZFBuTUFEdytISXowSGRaUEpPMHY2WU5yYXFQVWx3L1hRd0FDRXhKQVlKOFFQbDFEQUFLVEVrQmdueFQveW5XT3dMNXlTOGFBSWRDYUFBSjdhMlJKRjl3cVdEVXNXMkpZVURxNnB3Z1VFL0FYZy90WUVEUi9uRFJhS2tGZ09BSk55VTF0NldGN21POE8xLzNrTGVjUzJEMlJSVExqaFJmN2FaSWVYRVJ1ZjJmeVdhWVBZS2R3U1BBaVNSYkhVMHRWWGdzZktsaDRkdUxQT1phK3VhL09EUmFlZm52Qklqc0ZBaENBd093SUlMRFBia2tZRUFRZ01CSUJCUGFSUUs5Sk53anNhN0tRVEFNQ0RRUVEySWZiSHZZZWZrMFJXZnJIa3B5L3dmZlVYTkhrWGpmYlh0a1NvZXpMZnF5azUwaTZaTGlwMFRJRWtnazBKVGYxWGowb3VhWFZySmhUWURjQkp6MytjQ0ZTbnk3cEtSdjJPVitPWkxjdisxL00zRnJJdnZIK0htaWJPOE9SK0JmMlBJeGR6VThMbzRZQUJGYU9BQUw3eWkwWkE0WUFCRElSc0EvMWRTdmErbW54ZXVYRm1mcWdtZlVoY0owaU9aNTlNOHZsSWttWEpVeHpUdnZOMy8xK3lIR3lzT1hDUTB6Q1FsSmxyUW40YzI3YkpuOCtsb3Q5YkIxaFNKTHBmc3Z2ZStpMmtoeUpPRVN4Z0xORDRUOThHMG5mTGhMOC9VdmkvWG1Jc2RBbUJDQ3dKWUhiUzNwU0JaaXZTUElCUThydnFmTGwvaTNqNk85Y0IzYXJ0RzUzbHVUZm9YT05XbDhsbG93VkFoQ0FRRzhDQ095OUVkSUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUliQ0lCQlBaTlhIWG1EQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBcjBKSUxEM1JrZ0RFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdzSWtFRU5nM2NkV1pNd1FnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDUFFtZ01EZUd5RU5RQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0F3Q1lTUUdEZnhGVm56aENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJTkNiQUFKN2I0UTBBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBcHRJQUlGOUUxZWRPVU1BQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnRUJ2QWdqc3ZSSFNBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDR3dpQVFUMlRWeDE1Z3dCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUs5Q1NDdzkwWklBeENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJTENKQkJEWU4zSFZtVE1FSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWowSm9EQTNoc2hEVUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnTUFtRWtCZzM4UlZaODRRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0RRbXdBQ2UyK0VOQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUtiU0FDQmZSTlhuVGxEQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUJBYndJSTdMMFIwZ0FFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhzSWdFRTlrMWNkZVlNQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDdlFrZ3NQZEdTQU1RZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0N3aVFRUTJEZHgxWmt6QkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJOUNhQXdONGJJUTFBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSURBSmhKQVlOL0VWV2ZPRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnMEpzQUFudHZoRFFBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDbTBnQWdYMFRWNTA1UXdBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBUUc4Q0NPeTlFZElBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJYkNLQi94LzJqUFJNTUxBTzlBQUFBQUJKUlU1RXJrSmdnZz09Ii8+PC9zd2l0Y2g+PC9nPjwvZz48L2c+PGcgZGF0YS1jZWxsLWlkPSJwMiI+PGc+PHJlY3QgeD0iNTUzIiB5PSI3MTMiIHdpZHRoPSI0MDAiIGhlaWdodD0iMTAwIiBmaWxsPSIjZWFmMmY4IiBzdHJva2U9IiMzMzU1NmYiIHN0cm9rZS13aWR0aD0iMiIgcG9pbnRlci1ldmVudHM9ImFsbCIgc3R5bGU9ImZpbGw6IGxpZ2h0LWRhcmsocmdiKDIzNCwgMjQyLCAyNDgpLCByZ2IoMjQsIDMxLCAzNikpOyBzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDUxLCA4NSwgMTExKSwgcmdiKDE0NCwgMTczLCAxOTUpKTsiLz48L2c+PGc+PGc+PHN3aXRjaD48Zm9yZWlnbk9iamVjdCBzdHlsZT0ib3ZlcmZsb3c6IHZpc2libGU7IHRleHQtYWxpZ246IGxlZnQ7IiBwb2ludGVyLWV2ZW50cz0ibm9uZSIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgcmVxdWlyZWRGZWF0dXJlcz0iaHR0cDovL3d3dy53My5vcmcvVFIvU1ZHMTEvZmVhdHVyZSNFeHRlbnNpYmlsaXR5Ij48ZGl2IHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiBzdHlsZT0iZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IHVuc2FmZSBjZW50ZXI7IGp1c3RpZnktY29udGVudDogdW5zYWZlIGNlbnRlcjsgd2lkdGg6IDM3NHB4OyBoZWlnaHQ6IDFweDsgcGFkZGluZy10b3A6IDc2M3B4OyBtYXJnaW4tbGVmdDogNTY2cHg7Ij48ZGl2IHN0eWxlPSJib3gtc2l6aW5nOiBib3JkZXItYm94OyBmb250LXNpemU6IDA7IHRleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICMwMDAwMDA7ICI+PGRpdiBzdHlsZT0iZGlzcGxheTogaW5saW5lLWJsb2NrOyBmb250LXNpemU6IDIwcHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtNaWNyb3NvZnQgWWFIZWkmcXVvdDs7IGNvbG9yOiBsaWdodC1kYXJrKCMwMDAwMDAsICNmZmZmZmYpOyBsaW5lLWhlaWdodDogMS4yOyBwb2ludGVyLWV2ZW50czogYWxsOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3b3JkLXdyYXA6IG5vcm1hbDsgIj5QU1UwNuKAk1BTVTEwPGJyIC8+NSDlj7Agw5cgOCDpgJrpgZMgPSA0MCDnqbTkvY08L2Rpdj48L2Rpdj48L2Rpdj48L2ZvcmVpZ25PYmplY3Q+PGltYWdlIHg9IjU2NiIgeT0iNzM5LjUiIHdpZHRoPSIzNzQiIGhlaWdodD0iNTMiIHhsaW5rOmhyZWY9ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFCZGdBQUFEVUNBWUFBQUNQdFVIVUFBQUFBWE5TUjBJQXJzNGM2UUFBSUFCSlJFRlVlRjd0dlFYNEJVZDV0djk4VU55Q0ZDbnVFT2hYMnVLdVFWdUtFNlRrd2pVVWFZdTd1enY4S2U0VUo3ZzdsQll2WHVDRDRKTGdhZi83a0Rsd2V0amRtZDJkV1R2M1hGY2FtdC9zN013OWMvYnNlZWFkNS8wL29rQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJTkNad1AvcGZBVVhRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnSUFSMkZnRUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFvQWNCQlBZZTBMZ0VBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJSURBemhxQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNQUWdnTURlQXhxWFFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUVEyRmtERUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUlFZUJCRFllMERqRWdoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUFqdHJBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0RRZ3dBQ2V3OW9YQUlCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRUUdCbkRVQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVlaEJBWU84QmpVc2dBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBZ2pzckFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQVFBOENDT3c5b0hFSkJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQ0JuVFVBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRU9oQkFJRzlCelF1Z1FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFnZ3NMTUdJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUk5Q0NDdzk0REdKUkNBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQkhiV0FBUWdBQUVJUUFBQ1V4TTRscVJUU2pxUHBCT0gvMzIrclU1OVV0SjN3Ly8vWDVLK0llbEhrbjQ1ZGNmMzZQNEhTRHFIcEROSU9vdWtzd1grSDViMFUwbi9KdW5ia281YUNKTVRTanBOV0hNbmwvVFhrdjVFMG84bGZVTFNieVY1clgxWjBnOGwvYzlDeGtVM2h4UFlYaHRlRTM4ZTFvcGI5alBIYS81WFlZMThSdEpQSlAxZ1FXdC9PS0g1dG5BbVNjK1VkTTdReFp0S2V0dU11dXZmM2ljTGErb1VXMnRyODl6eHM4YmZkOS9qbVRPaldhTXJFSUFBQkNBQWdRUUNDT3dKa0tnQ0FRaEFBQUlRR0ltQVJlWGJacmpYdGdoazhmT3prcjQvSTBINnVKSXVMZW42bFZoMTVTQ285eG4ya1pJK1ZJa3BMNWIwZWttSDkybEVra1daTzBrNlhzUDFGdFNlM2JQdElaZkYxc09ySmIxcHlBMWFydlU3NHJrcmNmbFFTZGVUWklFOVZ2NDdpRmxQa3ZSbVNiK0pYVERpMzQ4cDZjQkt1THFkcEd0MFhITWUxOGNrUFVQU3Z3WXhkY1N1VDNhcm0xWHI2MElaN3U2TmwwK0ZkcnhwOGJXWkNkS25xdWIzYXBJT2xuUkpTZDd3NjFQK242UzNTbnBKOVh4NzE0RG5MYytqN3ZUOXZMcDh0UW40SWtrV3JqZmxiNnZOczlkMWJ5N3JGWDcyK0hQa1orazFFOWVYbjUydnFzVDRKNFFObmFWc1hHWUZSMk1RZ0FBRUlBQ0JKUkZBWUYvU2JORlhDRUFBQWhCWU80Ry9rZlRhZ29OMEZMZ0YyYUVDVU44dU9xcndIcEp1Sk9rWWZSdHB1ZTZqbFhCM2h5QklkR25lMGN2dmtYVDhob3VlSitrbVhSck1WRGUySHU1V2JRbzhQTk85TnMzNDNmQ0NrcDRvNlFJRDJuWUU1aDByVWZ0bEUwZjJldFBrT3BJZUdLTHZCd3pwOTVkNlU4Z2JDR3N2L3lMcDd3c08wdEhmcjZsT1E3eEEwbitPdkU0c2VsNnBpaEsrNzhCMTNvVEhtekxQQ2M4N2Z4YTZGSjVIWFdoSko1RDAwUERzMzcxeVNvSGRhOHdiTjQrV2ROWnVRL3BmdFQ4Zk5nYmZTVlQ3QUlwY0NnRUlRQUFDRUNoTUFJRzlNR0NhaHdBRUlBQUJDSFFnRUJOVU96UVZyV29CNkxtVkxjYURLdkg0cTlIYXd5cWNMa1RpT1hLNGRPa2pPaU5vSFQwcnR1ZXhzSjVUVkgxNzJGRDVUdW1KMzJuZjc3aVhDVkhuUThTdHVtNVBLZHFOaWJHMHdMNDlGb3ZRRDViMExFayttVktxbEZ3WHUzMytlWWlJLzNqSHdmQThTZ09XTXBkVGZWYjluZWZ2MTh1bERTV3BsdHU3ZmVIUFIxSkhxQVFCQ0VBQUFoQ0F3QjhUUUdCblZVQUFBaENBQUFUbVEyQk1nWDE3MUxiMHVHZncwczVKdzlIRGppaTNpTi9YZHFGcmZ4RFl1eEk3dXI0OTFXMS9ZaC84M01XZStSYTY3QzA4Um5GRTZ5TXkyUzNWOVhjcTBXNE1kdHYzR0ZOZzM5elhsbGEzTG5UeVljeU5QbzhIZ2IzY2lrMmR5eWsrcXhjSko5RzJyV3B5a2JCVmxUZXF2NW1yUWRxQkFBUWdBQUVJUUNBUEFRVDJQQnhwQlFJUWdBQUVJSkNEd0ZRQ3UvdHVFZlRHVmRUdnUzTU1STktwZy9WRHpnaStsSzRoc0tkUSt0OTE3TFZ1RDNzbkx5MVZuQVBBMWlvV2lFb1dDMi8ycGo5L3dadE1JZG9WSEU1ajAxTUk3SnZPMkNyclZwWFludXZrdzJXcm5BSXYzZkhuTHMwVWdUMC9ZWit5OFVrSFIzS25sTEUvcS9hQmYzbGl6b3FVL3RmVnNiWFNWU1Y5dlc4RFhBY0JDRUFBQWhDQVFINENDT3o1bWRJaUJDQUFBUWhBb0MrQktRVjI5OW0yTVU1c2FHSHRmL29PUXRJWksxL2pOeFNLaG81MUM0RTlSdWgvLzkxejVjU01aKzl3bWUwOG5FalhteWhkVGlaOFVkSVZDZ3BEanNKL1k4ZXhiSWJ0Ukp5L3JVNWIvSW1rMDBSWWpDM2FkWmlhckZXbkZOZzlrSzhFRCt2UERSeVZFMHM2NzBTWHRUcndscis3SElFOUI4V2oyN0N3ZnUrUTE2SExQSTc1V1hYdWlzTTZpdXQrN3ZoNzE4K2NMbmxKYkwxMXJTbzU5MC95SWFZbENFQUFBaENBQUFTR0VFQmdIMEtQYXlFQUFRaEFBQUo1Q1V3dHNIczAvckYvWFVtdjdEbTBrNFJydTBTdSs1Nk95bk9TVXZzVk94bnJkdm56eXB2WmtjbjJKajR3SXBRaHNLZFAzQWtsdlNxSTNtMVgvYWFLL0xXTjBKTWxmVzBuR2FYYjhGemZyN0tZT1YvQ3JlMGpmTXZLa3NodDVpeGROZ3ArVVVYck8zR3QvL2tQU1VmVWRPUzRrazVmSmI5MTVQUE5keUxpeHhUdGNqTHEydGJVQXJ2N08zUlRwby9vYVEvNEQxWFB3YytHaE1tLzJnSjNuQ3BSOUlVa25hcEtkSHZoU09KY0JQYXVLKzZQNi9zejZHZTZiWU82Q05DYmxzYjZyUHI3eVJ1VjU0b00yUlpJanNCM1lsK0w2OXNiMlNldnZ2LzhEbkQveElUTVRoaitzSUdiNGNObmlCWWdBQUVJUUFBQ0VQZ2RBUVIyRmdJRUlBQUJDRUJnUGdSaUF2dUxndjFGU284dFN2OUZTTEozMHBRTHR1cjhXTklWSlgyazQzV09MTFFJZTR2RTY5NGMvTmw5bnk2Q3E0VUlDNThXYW4wa2Y3c2dzS2ZCOXp2Z1AwcDZlS1M2clRwdWwrRDVlOHdxV2U1TnFxajJwMFUyUUN3b1hUc0krMms5amRkSzNkU3h1SFVuU1MrV1pKRzlTN0d2Ky9VbFBUU2M4bmhkbDRzWFdyZE5ZSGUwLzcwcVc2a3ZKNHh0STBwYjdQNnJIcEhrZmFOMXUyNjZQRFVrK2JYMVJ1b0pIcS83TTRWb1lqK1B0aFBxSXJBbkxJNmFLdjRlY1lKaWYxYXYxSytKMzE4MWhzQ2UrcjNuOWVYdkp6K0gyb3B6bC9qWmJLRzlyZlJkWHdPUmNqa0VJQUFCQ0VBQUFuVUVFTmhaRnhDQUFBUWdBSUg1RUlnSjdIM0VZNC9PQXFRVG8xa1EyeGFBMmtiKzNoQk4xK1VJdXUwL0xKckhJZzB0bUZtRS8yb0c5QmJiYnlQSjBYd1dKdm93Y21UOGU2ckVtTWR2Nkk4am5TMGVqMTFLclFlUHc4bE0zeFh4cEg2MHBMdDMzUHl3Ti9ETFdsajYzajZwWUQvMkgyUUFtaXB1T1ZMZmErNkhBKzlwUWRYcnU4dUcwTUJiVG5aNW04RGVWOXp6Ync4TDMwNSs3TSt0UDdNcHBXdTBydS96MkdBcEVtdmZweThlVlltYWpsd2ZVbnhQNXpOd1VtYy9iL3N5MnNmbmtUL0hIcmQ5OTIvWVl4T21hZDdHRU5oajMzcytvWFhIc1BtY3VuSGp0ZVNOemNkSHZrL3Q5MjVlKy9BOEd2TFo1Rm9JUUFBQ0VJQkFjUUlJN01VUmN3TUlRQUFDRUlCQU1vR1NncW83WVhIUTlpK09NcmFuYmF4WUFIUGRsR0toek1rbEhmbmVWaHlWNXlQeXVRV0JUZkk3VzVoWUdPNVM5azNRc3MrNDU5VisrMDNsbVVIZzZUTlBONm8yY3A0Zm1RQW4xTFZOd3RCaTZ3aEhoazZ4NW9iMmZlN1hseERZdDhmY0pXR2xrK1JlT2xoSnBYQTdiMlZkNUUzQ0Exb3ErNlRPZFNTOUxhWEJqblZzWmZXNHNFRmwyNnN1WmQrZVIyWVRHM01UUDIrY2ViT3VhYU9tdE1CdWl5d25pTDVVeXdUL3M2UkhkamdWc1duS3Y5TWZFRGJHbTVyL2RUakY1YlZPZ1FBRUlBQUJDRUJnUWdJSTdCUEM1OVlRZ0FBRUlBQ0JIUUtsQmZiTjdXeHA0TWkzODBkbXdMN290bUxaOVVTdnUrd2lJU0w2MkMxdERoRnRVeGVMeFdQYlYzUXBNWEZuYlJIc3NmRU85YjEyTk9vTGczalpOQThmRHBzeFhVNUk3TGJscEtZK2VkQ1dsTFN2dU5WbC9heTFibW1CM2R6OFc4VFBQZHYyTkowZzJmQjFOSzl0UTFLaWdCMlZmdCtXaVJtYWF5Smx6ajAybjNZNEtxWHlWcDNZNTNOdHp5TVBQVGJtWFlTMldYSGs5bmNxTzVsM3Q2eWQwZ0s3RStpK29zVjJ0YSs5MFdhOFBxSDFwaXBwK0FWYTFwQVQrSHJEc3V2M1hzZGxTWFVJUUFBQ0VJQUFCTm9JSUxDelBpQUFBUWhBQUFMeklUQ1d3TzRScC9nVFc4aTZTckI5aVZGeVZMcHRISnJLNTBNRTZ1R3hoaWI0ZTB6Y1daT2c1WGUvSjRibzlDYlVPYUxMWTB3dEJ0bG4rWDA5NTlzaS9qT3FwS3VIdEZ3L3hvWk96KzR2NHJJeEJQWU5pR3NGYTZFMmU2blVaNGh6VHJ3bHNvSG9YQkcycVVrUjY4ZWVyTmhuWjAzUG93M2IySmkzNThBbnBXNGJ4UFhZZFNVRjl0aXByVnpSNVRFUjM1c01GNVAwbGJFWEt2ZURBQVFnQUFFSVFPQVBCQkRZV1EwUWdBQUVJQUNCK1JBWVUyRDNxQzArV0t4b0U3VXN4aDRhUWVRRWtLK3BMQmt1MTFMUDFqQ09LcDFqaVlrMGF4SzB6aHlzTTA3Yk1CRTVJc3ZkdEU4UzJDYkdpVUdiU3NyYWFycjJFc0hhbytuRVJFNmY5em11MlRINk5LYkE3dlhpOVdETG42WmlNZnlnQkVzWEozZTJaY2FKR2hxeThHbTdtUStPQWJISFBmYnBlYlRCRXh1ejYzMHllSmw3YmpjYkk3SHJTZ3Jzc1ZOYnVTTExuVVBsc0NxUy9VSXRhOG1mbTZmM1dHdGNBZ0VJUUFBQ0VJQkFKZ0lJN0psQTBnd0VJQUFCQ0VBZ0E0R3hCZlpZQko2SDlMRWdhdjJvWlh5bnF1cDhRTkpaR3VvTWpWYk9nTGExaVpoSXN5YUIzWUszN1RpYWlxTjZuNVFKK0pVa3ZiSEZQdUd6d2J2WS90cGRpdGV0RTZsZXJlR2lYSkdqWGZxMHhycGpDdXptbCtLYi9wQXFmOE05STdEdHllMTExMVJTbm1sVHp1YytQWTgybk52Ry9HVkpkd2xlNTd0Mk96RldKUVgyTmh1aUxxZS9VdGJhN2NNR1ZGTmRyM2VmQXZsbFNtUFVnUUFFSUFBQkNFQWdQd0VFOXZ4TWFSRUNFSUFBQkNEUWw4RFlBcnY3YVIvYnRtU1RQNndpUmk4dTZYTXRnN0t3L3Y0cWNlYXBHK3I4WE5JbEs2L2xyc24rK25Mc2VsMU1wRm1Md080b1lVZFZXb2lwSzdtdEJtSldIWDAzWG1LUm8xMjh1cnV1bFgycVA3YkFIbHVmWnA4aUpNYWVhZmJzOXViTUVUT2R6SDE1SG0zanJ4dXpUNkhjTFhpc04vbll4MWlWRXRoano3YmNteml4NzlqY3orNlpmalRvRmdRZ0FBRUlRR0MrQkJEWTV6czM5QXdDRUlBQUJQYVB3QlFDKzdtREQvYkpHbkNuMkRMRVJBNEU5bjVyT2ZkNnNDMk1OMExzdjE5WFhoa3NYWElteTN0QzhMcHVJdERWMmlEbUllOW9lTnQvT0VFdlpSaUJzUVYyOS9aVzFVYmQwMXE2blhMcXdZbHRIOWJTQmdKN3YzV1IrM2xVSjdENzlNbHpKRDFPMGpjU3Vobjc3aWtsc01mdW0zTFNJbUY0djY5eVhFbCtQanNuU2wxSitaN3Vjai9xUWdBQ0VJQUFCQ0RRa1FBQ2UwZGdWSWNBQkNBQUFRZ1VKRkJTd0dqcTlpbENoT0NCTGVPS2lSUXhzUUdCdmQraXliMGVMaCtTUHphOS8zVVZ1MU5HNWJWamYvNm04aUpKTitxUWJETG1JVC9uNUpVcHZPWlVad3FCUGJaRy82dEt1bnpoU29qL2Rnc29CUFl5cXlqMzgyaTdseWVXNUgrKzFlRlo0T3RqM3oyeDc2NitwTm8yZ2txSjNiRjFiZXNrQy9zVUNFQUFBaENBQUFRbUlJREFQZ0YwYmdrQkNFQUFBaEJvSUZCU3dHaUNmc0xnYlh1cGxsbXgvKzFqV3Y1K0dra2ZxaUlQejlCU3g3WWtyNXJwek1kRW1yVll4TnhEMG9NYjVxQ3ZYVXRzU21NbkpMcGFLYlRaZjh3OWVXV00xZHorUG9YQUh2c3Mva3lTRTl6K2V3dXMySFBVSXE1RittL09EWGpvVDR6QldwNUhPZkRIV0pVUTJQMzcyYlpxTjJnWVFDbTdsdGptVTRrVFNEbm1pRFlnQUFFSVFBQUNlMEVBZ1gwdnBwbEJRZ0FDRUlEQVFnakVoQ0g3MFQ0ODgxaFNmSTlqOTQzNTBickw5djYrc2FTYzlpTzVVTVJFbWpVSVdyRjUva29WM1g1UlNZZm5naHJhaWEyTkxtSlViQXdmbG5SRlNUL0pQSVo5Ylc0S2dUM21OWjF5R3NZNUk5NHB5ZXVscVJ3Y25rbHpuTnQ5ZUI3bDRoNWpWVUpnanozVDNpN3A2cEtPekRYSTBFN3NzOUYxc3pKejkyZ09BaENBQUFRZ3NOOEVFTmozZS80WlBRUWdBQUVJekl2QUZBSjdTZ1I3VEdDUFJmU1pzb1d4eTBxeUNEcTNFaE5wMWlDd3g2eUFTb2xDc2JYUkpYSStaZzl6LzJwaDNXOXVpMnZCL1psQ1lJOTlGbE1FOXRPRkV6WE9PZEJVM2xzbFhmYnpkbzZiTVRFR2EzZ2U1ZnBZeEZpVkVOaGpwM0tlWFoyT3VIbXVBVzYxYzZLUTVOY2JTSFdseTJabGdlN1JKQVFnQUFFSVFHQy9DU0N3Ny9mOE0zb0lRQUFDRUpnWGdia0s3Q24yTHJIa2hDYnRxTkpyUy9yaHZMQkhmWHpYSUdoTkpRcDVxbTFMWTN1YXBwS3l2bnh0bTBWQ0Y2Ritac3R2dHQyWm84Q2VZdThTU3dpNUFlNDErUWhKUjgxc0JtS2k4UnFlUjdtUXgxaVZFTmhqVmkweFM3VytZNCtkNFBsRjlSMXJxN2VQOXIwQjEwRUFBaENBQUFRZzBKOEFBbnQvZGx3SkFRaEFBQUlReUUxZ0NvRTlGdG5zTVY1RjBwc2lnNDFGRjI4dWQrVG9kU1U1Mm00dUpTYlNyRUhRaW9sQ3NWTUtRK1lxdHZtU2V1ODJvZjdya2k0V2tpUU82U3ZYL29IQUZBSjdiSjJtV2hsZFg5S0xFeWJUcHg2OHJuNlRVSGVzS3Z2d1BNckZNc2FxaE1BZWU1NlZ1T2VHMXhNazNhRUZYc2w3NTVvejJvRUFCQ0FBQVFpc2tnQUMreXFubFVGQkFBSVFnTUJDQ1V3aHNNY2ltMU9TQ2hxMzN5a2VLK21PQ2V5L0h4TEV2VTNTL3lUVUwxMGxKdEtzUVdCdlN3NXF2aVdGbWRpNlRyRlVpRVVsdjFHU0krRi9XWHF4N0ZIN1V3anNNZkV5MWNyb2xKTGVJZWs4Q2ZQbE5nK1pVZExUZlhnZUpVeExVcFVZcXhMUHRiYU52aFFMbzZTQk5WVDZaMGtQYTJtZ1ZQVDhrRDV6TFFRZ0FBRUlRR0F2Q0NDdzc4VTBNMGdJUUFBQ0VGZ0lnWmdRbVJycDIyVzRNZUgxcytIWXVVWHhXRGxiNWJQK0hrbW5pVlVNZjM5cUpZaDZURDlOckYrcVdreWtXWVBBM2liTWxMWlh5Y0gzVkpJK0lNbUovdXJLUTZvbzVIdTJMQkJmZjdYZ3UzMytzRWFQRWVvN2V0a25LajRSVG1vY0pza1I4WFBZL0NtMTVsUGFIVnRnajFsZ3VNOVByQ3ltRGszcHZLUWJTWHArWWwwTG83ZVE5TklaV01iaytMd2tEcnRUdFNtK24ySWRqTEVxSWJDM2ZTNUsrNkRQY1E1aWM4VGZJUUFCQ0VBQUFudEJBSUY5TDZhWlFVSUFBaENBd0VJSWpQM2oyWUtXQlNqYktUU1ZsMGk2c1NTTHNDbmxlc0dhSWZVZHcrTDZuY0kxOXBDZG9zUkVtalVJN00rU2RMTUd1S1dqTG1OODN4M0U3eU5hSnY4dkpObGV5SW4rNnNxdEs5SDg2VHQvT0diWUhITEU1d1U2THF3dlMzcEFGUUg5Y2tsVHJjdU9YYzVlZld5QlBjVm02bUJKZmlhbGxHTkpla2FJVGsrcDd6cjJyN1lGeDBjbTNHQ0pmVjdXOER4S25ZOVl2UmlyM0FMN0NTUzlwbm9XWGE2aFkvOGw2Y0tTdmgzcmVNKy94OTRScGxvYlBZZkRaUkNBQUFRZ0FJSDFFRWo5OGJ1ZUVUTVNDRUFBQWhDQXdId0p4SDQ4NTQ1Z3Y0UWsyN1FjdXdWSkYwSEx6VmpVZXFna0gxWHZVaXhvK3ByWFR4QkJHaE5wcGhJdGNxNkhLYU11ZmFMaFE1TE8wTEFnVWdUMkswdXlEVXhUMmMwVGNEcEp6MjBSd2xMWHB0ZmxMVU9DM24yTGFCOVRZUGR2RW05bzNLdGxZcHpnMU0rc3I2Wk9uaVN2ZzFkWHp4V2ZXdWhTWGl2cG55UjlvY3RGbWVydXcvTW9FNnBvZ3VyY0F2c0p3M2VVazRuV2xZOVZKMjBPcXF6U2ZwUnJnRHZ0ekhWdEZCb3V6VUlBQWhDQUFBU1dRd0NCZlRselJVOGhBQUVJUUdEOUJISUtxakZhSjVIMHlvZ0EyVWZROG4zN2l1eSs5cE5CYUxmb2VsUnNFSm4rUGxmUkl0ZDZtRHJxTW9mQTN1Yk52UnVCZnhGSkZraWR3RGRYY1g0Qlc5RHNVelQ3bUFMN0JTWFptdWVBbGducmVwcG0wMVJma2QzWGU1UEd3bjhYVVgvb21sdjc4Mmdvbiszclk2eHlDK3d4cTZxVXpjSWg0NCtOZDZyTjRDRmo0bG9JUUFBQ0VJREFLZ2dnc0s5aUdoa0VCQ0FBQVFpc2hFQXVRVFdHd3dMNGs0UG5jRnZkKzFkL3ZGK3NzWWEvMjU3ajlwSWVVd2xVRzYvckxrMk5LYlRQVmJUSXRSNWlVWmVsYlExaUFudksvZHM4NUxkOWoxT0UyaTdyY0x2dUN5cXZkbHZSSE5tM2dZVmRONWJBZmtaSmI1VjA5aFkrdjVaMGFVa2Y3TW53WkpLZUtlbWFQYThmVTJoZisvT281eFRVWGhaamxWdGdqejNMcGhiWVM5OC81OXpSRmdRZ0FBRUlRR0JWQkJEWVZ6V2REQVlDRUlBQUJCWk9JSmVnMm9iQjBjeFBTdkFsL2xLVnNQU3lsVy8zTndZeTlWRjYrN3lmdm1jN0Z0cnZHUHkzUzFsMHhFU2FxYUlDYzYySG1NRGVKWkZ0bjJtMGI3cnRYUzdlY0hHS3dONG05bTZ1dDlWUlRLanQwLy90YXl6UzNxNktabmRpMUxXWE1RVDJjMHQ2VmVXcmZxNEl6R2VIelkzVVhCQjF6WGxqMGZrZWJHSFZaOVBQYlZwb3Y3ZWtieGFjL0xVL2ozS2lpN0VhVzJEM2MrNWFWZkx1WCtZYzVGWmJQbzFodTYzVE5yU1B3RjRJUE0xQ0FBSVFnQUFFWWdRUTJHT0UrRHNFSUFBQkNFQmdQQUs1Qk5XNkhqdWkzSUw1VXl2Qis2eVJJVm5JdHZmNlN6TU4vY1NTbkdqeU5nUGFjL0xCUXlSWkRNNWRZaUxOMmdYMjBxSk1UT0RQSWJCZlBwekt1RUxENHZoNnNDQjVqNlJmaFRySGtYVFJZSk4wemc2THl0SDBqNXd3Q1dhSHJnNnFXbEpnOTBhZms0bmFmc1hDZDF2NVNwaWpydzBhelI4dVByQ0tsbitocFBNTmFNK2JsTFlNY3BMbTNHWHR6Nk9jdkdLc3hoYllTMzlYVEIxQm4zUHVhQXNDRUlBQUJDQ3dLZ0lJN0t1YVRnWURBUWhBQUFJTEo1QmJZUGYzdkgrUXU5MS9UQkRXTi9oS1JPbTZMNWVSOUl3Ty9haWJ6aExDVmt5a0tTMmFOQzNiWE90aGFsRm1xTUNlY3YzVHFtUzlENmtCdWZudnNaTVlKNjhFOC91RzZQUllkUE9QSzZ1U0swcjZ5TUtmTjdIdTV4YllMYVNmSTFoVE9YSHM4V0lka1BUZjFhYmFkVU8raUlUcXlWVjhid3Y4RDBvUStKc2F0Ymh1eTZDWFpjNFhzZmJuVWZJa0pWU01zY290c01mdVYvcTdZdXBuZWNLVVVBVUNFSUFBQkNDd253UVEyUGR6M2hrMUJDQUFBUWpNazBCTVVQMjRwRThrZE4yUnVSZVNkSlllNHRIYnd4SDNueVRjcDA4Vmkyd1d6SjVTK2JNN3NyMVBzYkIxUTBsdnlCUkZQTFZvZ3NBdVhWalN0eHRBeEFSMmk3QzJaRGorMXZVVzFHM1Y0Sk1QWGNyL0RTYzNZcFlscncvcmVNMUpUOXNFZHA5eWVVMjFJZkc5QkxpbnJDeUM3STF2Y2JCcktYMWF3QnNyempQaGZCRjlpMzNoYjFDZHNNa1ZZYi8yNTFGZnpuWFh4Vmdoc09la1RWc1FnQUFFSUFBQkNEUVNRR0JuY1VBQUFoQ0FBQVRtUXlBbXNKZnU2VHNsWFZ2U0QwdmZxTExZc0VXRXZhd3RicVZFc3RaMXlYN0lGc2FHSnAyTWlUU2xveEtiY01mV3c5MHFkZzlQbUt1cG94NWpBbm5NSWlaMi9TNkN6MVRDK2xVbDJSYW1UMGxKdW1sUi8wckI4NzNQUFpad1RadkFQa2IvNzFGdG1qd2ljM1I0VTcvUEhENUwxK2s1TUh2eTN6emtteGlhSzJMdHo2T2VpR3N2aTdGQ1lNOUptN1lnQUFFSVFBQUNFR2drZ01ETzRvQUFCQ0FBQVFqTWgwQk1VQzNaMDF4aWRkYytPb3I5VUVrVzAvb0k3UitUWkZGc1NQUm9US1JadXNCK0tra2ZDQ2NhNnVabmFnOTJlMnpiQy8zd2hzWFRSV0Qvb2lUN3NQY1YxemRkY01UMVlaSU9hRm5RL3N6Y05OTXBpcTZmbXpIcVR5V3c1eFNydTNLeUY3K1RvRjZqNjRXaC9tT0ROL3VRa3cxcmZ4NzFSRHNMZ2YwdlFzSnRKMjZ1SzZXL0syS2JwVDZCZHZVTW04NDU1NGkySUFBQkNFQUFBbnRCQUlGOUw2YVpRVUlBQWhDQXdFSUlUQ0d3Vzh5NmEwZ1FlZFNFbkN5MC80T2tlL1d3dGJFZGlDTVZQOW16LzJzWHRHSUN0UlBIWHFvNkRmRDludnhpbDhWRW9aakFIK3YvNXY2NS9icHRUK0xrdkUzRkl2N0ZLay94YjIxVm1FcVVqczFCM2Q5akp5Q21HTXVYUTRMbHJ0WStmY2JmZG8yRmRrZlArN25TdGJ3aVJMUDN0ZGxhKy9Pb0s4KzIrakZXdVNQWVk4K3lOd1pyS2x0V2xTaXg4WllXK0V1TWlUWWhBQUVJUUFBQ3F5Q0F3TDZLYVdRUUVJQUFCQ0N3RWdKakMreXZEdEhqMzV3UlB3dnQ5NVoweDQ1Q3V5T1hyeUxwU3ozR01sZlJJclllWWdMcEJrVk1vSTVadFBSQStyOHVpWWxTdVFUMmx3ZHZmbThhNVNpMkRYbXZwTk8yTk9ZMTk2YXR2MDhoU3ZjZGEyejlqRGtXejVrMzE1NG9hVWowZDE4V1RkY2RXSjFpZUZ3NEZkR2w3V2VISktwOXhyTDI1MUVYanJHNk1WWmpDK3l4WjFsc1BMRy94OGFMd0I0anlOOGhBQUVJUUFBQ2hRZ2dzQmNDUzdNUWdBQUVJQUNCSGdSaWdtcVBKbXN2c2JCdU1ldHpNN2EzT0oya0IxYldMNGQwR0hUZkJLMXpGUzFpNnlFbWtHN1F6VjFnajBWOXh2cnZjZHIzMm1MM216dXNsMWhWdnlkYjhIV3VnS2J5a0dBSnN2bjdtS0owclAreHY4Zld6eGhqc1FCdGhrK3RCT2tmeERvODBkKzlEaTRoNmZHU3p0ZWhEMzBUdEs3OWVkUUJZYlJxak5XK0NleCtYdGx5alFJQkNFQUFBaENBd01nRUVOaEhCczd0SUFBQkNFQUFBaTBFWW9KcVgzaE9BbXJoOGFXU0xHWU9UUXJhdHg5OXJuTUVxYjJ1TDVCNHNVV3dPM1hjT0lpSk5GTkZCY2JXUTB3ZzNTRDdFMGt2Q2RZRmRSaWQxUGJpWWNNbEVYT25ha045aTFNRWRudnhIMVNkZlBoUnA1N0ZLMXVnZTAxTHRWZEt1bjYxWWZYYlVHY01VVHJlNjdRYXNmVlRhaXkyMWpIVEYwbnl2RTFwVFpWRzZ1aGF4NVIwWFVsUGsrU1ROckhTTnhIdTJwOUhNVzVkL2g1amxWdGdQMm1WTCtJdGtzN2YwTW5TZGx0WER0L2hUWXhpbitrdWJLa0xBUWhBQUFJUWdFQUhBZ2pzSFdCUkZRSVFnQUFFSUZDWVFFeFF0U0RsNlBPVVlqL3RMd1RCc1pRZmJFby9jdFE1Vm1VYjRXaFFSN1RIeXE4bFhUNVllOFRxYnY0ZXN6RFpGVkZUMngxYUw3WWV1b2dwYldMcHp5VmRVdExIaDNhNDRmcVlDSGJQRU1YY2RQdmpTdkljT0VLOXFkaVM0K1lGK24vdWFqMjlUOUxKR3RyMjM5eXZuNFcvbHhLbEN3eE5zZlhUTmhadktQZ1VqRDNUVThybkpYMDNSS2t2UlZCdkd0ZXBKYjJnZXNaY0xtSGc5cEszS05vbE9uOGZua2NKNkpLcXhKNHR1UVgyMkdaZmFidXQySGZDdFNTOUtva2NsU0FBQVFoQUFBSVF5RW9BZ1QwclRocURBQVFnQUFFSURDSVErL0VjRThRRzNYem1GL3VkNWRxU1hwamd6ZTVvN1J0dlJSWEhoaFlUdEVyNzZqYjFMN1lldW9ncDk2aTRQYmdGeEs2WGVJeFpsNy9IeG5GclNVK1BOQmdUcmt0OU5rNGh5ZlB2a3hSMVpWZFFpL1d6QzdmU2RXUE1wdHh3ZG1HVUFBQWdBRWxFUVZTVUtUMzJvZTBmVDlKakpkMHFvYUdEd3dtU2hLcS9xN0lQejZOVUZyRjZZd3ZzL2g3eTVzb05HanJtalRiYkNmMTdyT005Lzk2V2VOazJXVDdGODdhZWJYTVpCQ0FBQVFoQUFBSURDQ0N3RDRESHBSQ0FBQVFnQUlITUJHSkNaRXdReTl5ZFdUWm5VZmxsa283UjByc2ZCNUhqMDRramlBbGF1MUhLaWMwT3JuWm5TWTl1YWFWTGRLYUZRRnRiTkpVYmhjMkx3WjJ1YVNCMjd4UngzNXNEM2lSb0tsMDJHN3FNY2VxSTFTNTl6VjBYZ2IyZHFFL1dQRm5TTFNMZ0Q2c0UxMnQwU042NkQ4K2pYR3QxYklIZC9YNUNTR0JiTndhZjdMaE1PUFdTYTR6YjdiVGR1N1M0WDJJOHRBa0JDRUFBQWhCWURRRUU5dFZNSlFPQkFBUWdBSUVWRUVCZ2owK2kzMTBlRU93cDJtcW5SRVZ2cm8vNTZwWSs5dDgwanJhb2N5ZUh2SlFrVzFDa2xKaDNiOHltSmVVZVRYWGF4UEZVVVNqblprT1hzY1Q4NjZkYUcxM0cwTGN1QW51YzNNa2x2U21TSTZKcmpvTjllQjdGeWFiVm1FSmdqejJMU20zMnhaNUZYNm44NFM4cTZmQTBkTlNDQUFRZ0FBRUlRQ0FuQVFUMm5EUnBDd0lRZ0FBRUlEQ01BQUo3R3IvVFY1N2g3NmlPNnArdHBYb1gzL1JZbEhKcGovS21ZYlFKbkYxRnUxaWlVZnY3TzRyZE5nTTVTMHdVU2swS0dOc2d1RXVWZVBJeE9UdSsxVmJiUENDd0Y0SytvR2F2S2VrVmt0cCtWM1U1SWJJUHo2TmMwenVGd0I1N0ZwWGFySXh0dkRpQnVjWDlwZWRjeWJVMmFBY0NFSUFBQkNBd0tnRUU5bEZ4Y3pNSVFBQUNFSUJBS3dFRTl2UUYwblpVM3ExMHRYV0plV2VYaWtwc0d2R0pKRmt3dVhoRGhhN1JpcWVxL0hrL0lPa3NEZTE5TFBqMy9paDlDcEpxeGp6TVV6ZENZaHNFcGV5VFloc0VDT3hKeTJEVmxXSnIzSVB2S3JxdS9YbVVhMEZNSWJESG5rV3B6N1N1REdJSmx4OFMxbG5YZHFrUEFRaEFBQUlRZ0VBR0FnanNHU0RTQkFRZ0FBRUlRQ0FUQVFUMmRKQ09HcldRMFZTNkNwK3hKS0JqaXhjV3d0OWYrYWFmdW1HQVhhTVZqeHQ0MmUrOHJuU05pRStkcVpnWWxTbzh4a1RNNTBtNlNXcW5PdFNMUlJPblJ1QjN1T1ZzcW1JUmt6WVZzY1NYYnFYcitsejc4eWlOYkx6V0ZBSjc3RmxVNnBrUWk1d2ZleE00UGp2VWdBQUVJQUFCQ093UkFRVDJQWnBzaGdvQkNFQUFBck1uZ01DZVBrVXhZYVdyd0I1ai8yRkpWNVQway9RdURxcnBCS2F2YVdtaGorQWZFKzI2MkZpa0R1NkdsWlhQQ3hvcTI0N21vQ3BLLzIwSmpjVWl5YnVlV0VpNDVlK3F4TVMwdDB1NnVxUWpVeHRjVUQwRTl2VEorbWRKRDJ1cDNsVmczNGZuVVRyZDVwcXg3NEV1aWFCVCt4UGJVQ21WNkxRdGwwV3BEZEpVSnRTREFBUWdBQUVJN0QwQkJQYTlYd0lBZ0FBRUlBQ0JHUkdJaVNxbGJEQm1oQ0M1S3pGaHBhdkFIanQrLzJ0Smw2NUU5ZzhtOTdCL1JiK2ZQVWZTSVMxTldOUjliY2RiWEw1S2d2ZVdGcS9vNTBxNmFVWWY5dGc0UGgrWXBpYmxhMHN1V0VwZ2lrWGdQMXZTelR2T3cxS3FJN0NuejFSdWdYMGZua2ZwZE9jbHNMczN0NnBPRnoydFpRQzV2NnRqSjJrT2szUU5TVTUrVFlFQUJDQUFBUWhBWUFJQ0NPd1RRT2VXRUlBQUJDQUFnUVlDQ096cFN5TW1GbmM5cGg4VE1OeXpKMHU2UTBZQnVtbTBUdDc2SGttbmFhandIVWtYazJRZjlpN2x0TUYyNW93TkYzMDl0UHV0TG8yMjFEMnpwUGRLOG4zclNsZEJQN2FwNHJsNVVxYStiNXBwaThCM25SSlIvNW1IMExzNUJQWjBkTEdjRUUrVWRHaDZjOXFINTFFSEhJMVZZOCtFRWhIczdrenN2dStXZERWSlIrUVlwS1NMVkp1Ujc1SjA3SWIyY2d2Nm1icE5NeENBQUFRZ0FJSDlJWURBdmo5enpVZ2hBQUVJUUdEK0JCRFkwK2NvRmtIWXg3cWo3UWkrZS9aelNaZVU5UEgwYm5hdTZYZXpCMGk2Vjh1VmZaUG94U0xLZmN1REpiMmtjNi9yTDdpK3BCYzN0R1Y3R1B2QnY3bkR2VTVTQ1UyTzFMeFF3elc1Ylh4aXRqUmpySWNPZUxKWFJXQlBReHJMYitCVzdpTHBNV25OL2I3VzJwOUhIWEhVVm84SjNhVUU5dGdHU080VFQvZXJObmJ2MndEc3g1SXVJZW5UT1lEU0JnUWdBQUVJUUFBQy9RZ2dzUGZqeGxVUWdBQUVJQUNCRWdTV0tyQWZYOUpSa241VkFrcE5tekhoMDVkMGpSajFOYkVvUWRkNXZhVHJGanlLLzVlVmlQOE9TUWUwc0J3aWdsOUpraE9rTnIwRDVvcThMQ1dHM3o3TWJSMGVpL2JYbHZTcVRPc3d0aDV5c2NyVTNlek5MRlZnOTJmSHVSSzhIc1lvc1lURVhYSU5iUGMzdHY3VzhEd2FPajlUQ2V6dWQ5dXp5SCszZmRTdHE4MVNlN0lQS2JHVFFONFF2WEdHK3d6cEk5ZENBQUlRZ0FBRTlwNEFBdnZlTHdFQVFBQUNFSURBakFnc1ZXQzN5UEZBU2JldGZNTy9OZ0pQUnpCYmhMYXczMVQ2ZUpRZlQ5S3JRekxUdG1IWWIvbVJCUVE4aTlLT1RyOWN5ODI3K3Bidk5oVVR2bDNmWWsxVFl0TFU2YlYxeXZOYkt2ZTFjNG5aNTN5bXN0ZTViTFVXdjV2YTBZWjZ4NUwwUWtuWEtUQ0dnVjBiN2ZLbEN1eU9GaisxcFBzVTNBamJUSUovUzltZXcwbUhtMHBmNjZWOWVCNE5YY3hUQ3V3eDRkdFI3TFl5czAxVzN4STcwZFRuSkZEZnZuQWRCQ0FBQVFoQUFBSXRCQkRZV1I0UWdBQUVJQUNCK1JCWXNzQnV6M0NMa3JZMmNmUjRxV1JyS1NLMFBjUjlaUDZyUGFhMnpkWmswOXgvUzdwajhHVFBGU1hyY1QwclJHQzNkYnV2TUwzZFppenkwdDd1RnZuN2JwYlk0LzJ0bFVCOTlvYUJmQ21JNE4vb01UOStkL1g2dWwzTHRjOE1mLzlOai9ZM2wxaWtmVlRMOVVQR01LQmJvMTY2VklGOWszRDB5NUp1S2VtZEJUYkROaE54d1dCYjFIYmlaRWlFOFQ0OGo0WXM2aWtGOXBSbmtjVjFmNi83UkVXZkVsdGZhejlGMDRjWjEwQUFBaENBQUFRbUlZREFQZ2wyYmdvQkNFQUFBaENvSmJCMGdYMFRVZjdURUQxcXdmaklqSE45c3VEcGZWQ2t6Y2RYZ3NhZGVvcHFLUkhlbTlzL05VU3ZlcnhEeXBra3ZieXluemwvcEpGYzBkbW5EQ2NBenROeVAzdllYNnVITUpTeUFYS2JLc0w0YVFPQXVkOU8rSGVLbGphR25ETHd1RjlXZWVFZm82WDlvV01ZTVB6UkxsMjZ3TDRCOWNuZ2dXNHgwbFpXdVlvdFhGNGJXWWZlakxNdGt6ZWMrcFI5ZUI3MTRiSzVaa3FCM1gxSWVSYjEzZkNMYlZRT1hWdER1SE10QkNBQUFRaEFBQUk3QkJEWVdSSVFnQUFFSUFDQitSQllpOEMrSVdvQjRCV1NubEFsdFB5SXBMNFJ4WTZNdCsvNVU2cEVnU2VPVE5mM0svSDEwcFcxaDhYb3Z1VUtJZmxtbThDNmFkdml1c1Y4Si9Qc0dyVi84aEJwN2FoL2o3R3RtT1UxZ3FEWGQxemIxOFVzWEZ6M0xTSHA2UThUYitnTkVJdEoxMnlwMzFlNDMyNHl4WmJEOWU5ZmNYV2l5TlIxNTNadGorT05vYmI1R0JxVm1vaHo4bXByRWRnM0lMOG42UmxoZm0zYjB2ZjBpVCszVGpycGt5Q3hraU5ud3o0OGoySWNtLzQrdGNBZXMzRFo5UHZwNFhzaTlUc2laZE8xcjNEZmx6WFhRUUFDRUlBQUJDRFFRZ0NCbmVVQkFRaEFBQUlRbUErQnRRbnMyMlF0RUg5TWtrVTcyOG5ZZnVTSUJ2UitQL2xUU2ZaYWR6U3h4WFg3RWFlVXUwcDZkRXJGeVB2Ulk0TU5UR3BUbTgwRWJ5aDhXTkszYTRUZDQxYUo3MDVmQ2RjWGxXU0IyLzY4cVdWSVZIN2RQY3pUVWRwWGkzVEFHd2oyMW5mZEpxSDZtTUh5eFJIOVoyMXA3OGZCMzk2YkxVTkxTcVM4Ny9GUlNiYlY4VDNiQk5WelZwNytqNUQwdDVHTzVSekRVQWFscjErYndMN055eWRyTEg0NzUwSFQ1M1ZUMzVzdEZqenQ3ZThFdzVkS0JPKzE0bXYrTGJGK1V6VS9EOWYrUE9xTGFHcUIzZjFPT1JIa2VyWXM4c2tYNXc5cE9rbVJ1cG44UlVuZWVQRkdFUVVDRUlBQUJDQUFnUmtRUUdDZndTVFFCUWhBQUFJUWdFQWdzR2FCdldtU2Y3UWp0RHM1WVN5YXU2bXRuQkY5cVFMdUdJdlhvdjNOZTlpMXhQb1dzeURZdnQ2Umx4YlpiWFh4cS9DSFA2bjhwMjJUWWRIUkd5SnR4UnNRM2lpeG9KbXIvR1VRcTlyOHJ6ZjMrbi9oTk1VSHF6d0J2OTNwLzdXcnlPWS9TK2hVaVRFazNIYXlLbXNXMkp1Z2VtTnNlMzJjcGlmOTNHdGxINTVIZlZEUFFXQjN2Mk5lNmR0ajgwa0tuM2phZmhZZEp3am1LWnZKKzdUSjEyZE5jQTBFSUFBQkNFQmdFZ0lJN0pOZzU2WVFnQUFFSUFDQldnTDdLTERuV2dvdmtIVHJBcDd2RnJjdms2dVRQZG9wSmE1dnV1SW9ldnUvcDRqVVBici8rMHVHZUtLMzNmZXFRZmpmK1A4UDZXUHNXcCtPZU13QWE1RlkrM1A3K3o0SzdEbm13T0w2emNKcG5iNDJOSFg5c0FYVDJwOUhYZm5QUldEM2IrcWJWQ2VVbmgzSjNkQjFmTHYxYzIvY0RPMFAxME1BQWhDQUFBUWdFQWdnc0xNVUlBQUJDRUFBQXZNaGdNRGVieTd1WFZuSVBMeUQxM2FYdXpoeTFKN2NqbklldTlnVzRwNDl2TjI3OXRPZTZTOFpjSElnZHIrdVh1aXg5bmIvWGxwa0x5V1lkaDNuMlBVUjJMc1RkdzZJNjRXVEZkMnZqbCt4RDgrak9JVS8xSmlMd080ZStYZjFuU1U5cXNzQU90VGQxK2RRQjBSVWhRQUVJQUFCQ0V4SEFJRjlPdmJjR1FJUWdBQUVJTEJMWUtrQ3UzMjNYeWZwM0NOUHFUMXRIU242N3NMM3RjZjQ3WUp3MHRlK3Brc1hMZExkUU5MYlJveVd0bGYwU3lXZG9rdEhJM1h0Mlc1cm0rZVBNSTRMQk51Rk5nLzRQa1A3UmtoOFducU45ZWxiNld1V0tyQmZYOUx6Q200WU5YRi9kY2hYOEozQ0U3TVB6Nk5VaEhNUzJEY2llMHFpNU5UeGJlcVYzcmpwMmgvcVF3QUNFSUFBQkNDd1F3Q0JuU1VCQVFoQUFBSVFtQStCcFFyc0p1aWttZGVSZEo5SW9zc2N0UCtyaXVxMjVZajl2SnNTYithNHoyNGJwNVAwd0NwQjZ5RWxHZytSNnZlci9NeWZuTm5xSnJXNzlyOS9pcVJycEY3UVV1KzlrdjQrSkxQTjBGeFNFeWV1Uk5VSFM3cDlVdTE0cFNlRkV3Uk85THFQWmFrQ3UrZkszdW0yOUhGU3lkUUV5WDNuMkhrSmZLOVBqYkNSdE4zSHRUK1BVdVpqYmdMN3BzL25rR1RiTW0vOERTMCtYZVFOM2g4T2JZanJJUUFCQ0VBQUFoQW9Sd0NCdlJ4YldvWUFCQ0FBQVFoMEpiQmtnWDE3cktlU2RMV1EvUEtTbVNKSm5kak5FZFlXbno4cjZhaXVjRFBXUDNrUTJTM2U1WWlZZHFUNkV5UzllZVFOZ3pva2ZqZjg4MkM1YzZVZXpEd0dieEo4WkdTeGNidXJaNjRTVmQ0cnpORXhPbzdCeVZ5ZkdrNHJPT0hsUHBjbEMreWJlWE8wdDhYT0cwbTZlcFZ2NER5Wkp2UUxrcHhVMlNMcTRabmE3TnZNbXA5SE1TWnpGZGpkYjYrOVMwbDZXQStoM1hZd1hsc1BxYjVIdmRZb0VJQUFCQ0FBQVFqTW5BQUMrOHduaU81QkFBSVFnQUFFRms3QTd4cE96bWZSMXNsQ3p5WHAvSkpPR3Y3WkhkNlJJVkx2UHlWOW9oSW8zaW5wNDFVRTMvY21GR3picHVDRWxUQitZVWtIU2Zxck1ENUh6OVlKdXg2RG94QS9IUDZ4N1lqSE9XWVVmcGZsWkw5bmordnZKRjFVMGhsMnh1VitmeVZZOUx4ZTBuc2svYVRMRFFyWHRaMlBCYmpyVm4yekJZNzc3M1czWFR3bkhzTmh3WWZlOHpIbDVrMWhKSHZmdk5lRVA1OFhrblNKS2tIdWdVR0E5K21OT3ZzbnI0K2ZWUnVHSHd2UG9YZUZEYjRqWmtweXpjK2ptU0pQNnRabTA5bWI2QmNNYTNEN1FuL3ZmU2w0OTc5UjB2c2svVEtwWlNwQkFBSVFnQUFFSURBTEFnanNzNWdHT2dFQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFKTEk0REF2clFabzc4UWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBd0N3SUk3TE9ZQmpvQkFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ1N5T0F3TDYwR2FPL0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ01Bc0NDT3l6bUFZNkFRRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFrc2pnTUMrdEJtanZ4Q0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlEQUxBZ2pzczVnR09nRUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSkxJNERBdnJRWm83OFFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQXdDd0lJN0xPWUJqb0JBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNTeU9Bd0w2MEdhTy9FSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdNQXNDQ095em1BWTZBUUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBa3NqZ01DK3RCbWp2eENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJREFMQWdqc3M1Z0dPZ0VCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUpMSTREQXZyUVpvNzhRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0F3Q3dJSTdMT1lCam9CQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDU3lPQXdMNjBHYU8vRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnTUFzQ0NPeXptQVk2QVFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWtzamdNQyt0Qm1qdnhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSURBTEFnanNzNWdHT2dFQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFKTEk0REF2clFabzc4UWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBd0N3SUk3TE9ZQmpvQkFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ1N5T0F3TDYwR2FPL0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ01Bc0NDT3l6bUFZNkFRRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFrc2pnTUMrdEJtanZ4Q0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlEQUxBZ2pzczVnR09nRUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSkxJNERBdnJRWm83OFFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQXdDd0lJN0xPWUJqb0JBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNTeU9Bd0w2MEdhTy9FSUFBQk5aRDRHU1NmaEgrV2Mrb0dBa0VJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNlME1BZ1gxdnBwcUJRZ0FDRUpnVmdUTktlcXVrWTBpNnBhUjNTdnFmV2ZXUXprQUFBaENZUHdHL3kxOWUwb01rM1VyU0p3dDErU3lTN2l6cDBaSytXdWdlTkFzQkNPdzNnVE5MdXE2a0owczZZdVVvVGlQcHZKSStJZWtISTQ3MVdKSU9sZlNyd0psMzd4SGhjeXNJUUdEZEJCRFkxejIvakE0Q0VJREFIQW1jUk5JckpWMXVxM092RGkvODM1eGpoK2tUQkNBQWdSa1NPSjZrZjVSMC85QzNMMHE2Z3FTdlorN3JuMGg2b3FSYmgzYWZLK25la25oZVp3Wk5jeERZVXdJbmx2UmdTYmNQNDc5cjJNeGJNNDRiU25wQkdPQ1JrbDR2NllXU1BsQlFjRCtkSkQrLy9mNzkzMkV6dysvakZBaEFBQUlReUVBQWdUMERSSnFBQUFRZ0FJRmtBdjdldVp1a2g5UmM4UnRKOXdwQ2pxMWpLQkNBd0hRRS9GbTlxcVI3U0RxNGdHZzczY2pLMzlsaTBVMGtQVS9TVHdyZDdreVNYaVRwSWp2dHZ6ZUlKdC9KZUYrTDltOE9KNDYybTMxYTlkOGVVRVhPZnp2anZXZ0tBaERZSHdMZUpMU283azFDLys5TitiR2t5MHI2dDVXaThQZnJjeVFkMGpDK0d3V3hQZGZ3anlucGVwS2VLZW40TzV5dktPa2p1VzVFT3hDQUFBVDJtUUFDK3o3UFBtT0hBQVFnTUQ2QmEwbDZXWTFRcyttSkkycitSdElieCs4YWQ0UUFCQUlCNTBld2VIcWQ4UCsvWFpJL3U2WEU0aldCdjRDa0YwczZheEF6YmlmSm00YzVpd1VTUDBlOUFWSlhjczdYeVNXOVNaTEhWVmNzdkYrN2lxUjNCQ1lGQWhDQVFDcUJFMG55NmNYdDA0emIxOXBHOEpvcnRZbzVsYVIzU1RwWERTeHZqbDVNMGxkU1FVYnErUm4rMUszdjg5M3FwVTQrWmVvK3pVQUFBaEJZRGdFRTl1WE1GVDJGQUFRZ3NIUUNGNnlpTFErVGRFRExRUDVaMGlQeFkxLzZWTlAvaFJMWVJLMzdtTHFqc0xlTEk5a2Yxdkd6ZWNMcW1MOUZsQ1dXSDFXbmJYN1pvZVAydGIyVHBJZnViQ0NXZXFadDhsaWN2YUdQamxRY0t1NjNuVGp5YlIyNWZrbEpYK3JBaWFvUWdBQUVOZ1QrTm9qc3pzZFRWMjRUTm52WFJzeDVNOTVTUmU3WGFURzJiTGwrZGFMenQ1a0c3WHZZU3V6aExlM2wzSlROMUcyYWdRQUVJTEE4QWdqc3k1c3plZ3dCQ0VCZ2lRUmlZcERINU9SNWR5OFE3YmxFWHZSNWZnU09XL21sbmkxRW5KMVMwdm1DQVB2aFNzajhYaFhoL1NsSjM2MjhxWSthWDllVGUzUWxTYStyRW1iYWMzdTM5UEZydGJoc1VYNkp4Y0tQV2FRVVJ3amFydVdnVE54Uzd1azZzVTNMb2VMK2hTb0IvUjA3bGdLYnZ2VlpENm5qb2g0RTVrakF3UUhucUt3OXpsRFpQem5wcjc4UHZBbm43NENmQmpzVGJ6b3QrVHRnYk83ZW1IeEdpMVhLOTZ0STcwdFgwZGVmR2J0amhlOW52M2x2V3RlVjNQWXd2a2VNcytzOFBtd1NrL1MwOE9UVFBBUWdzRjRDQ096cm5WdEdCZ0VJcEJHd2o2MmpEcmU5SDlPdTdGZkwzdUtQclg1TWZLM2Y1WXU4S2tWY3p4RnR1VWc0ZEhyV0JFNHY2Y1loRXZqUEVucHEwZkZ0a3A0VVBLdHpXNE1rZEdGUUZiOFgybFBidVJEcVNsZXhZMThFOWxpRW9QMkVTL25jdHRsdURSSEJuWXphR3d5WGFGZ0xROFg3UVF1VmkxZEx3TlpLZDZ3MjVyeWhXVmRzWitHRXUxMU9sL1NGNWMvMXVVTUNkdnRYdDUyKzI5eGo2ZDhCZlZrTnVjNGJGZStSZEpxR1JweVU4NVlyQ3I0NGFZaGVQMy9OZUw4Vm5ybGZIUUswNGRyWXUvaVE3NHNDM2FWSkNFQUFBc3NqZ01DK3ZEbWp4eENBUUY0Q2Z4MWU3TGVUL3VTOXcvOXU3ZWZoU1AzSFM5NWtSbTFicFBGeDF5YVBUWGVWbzZrem1qQzY4anNDWnc3SHFUY2U1SDJ3ZURQdHZrRnNYMUxTM3RobnRzdm5kVjhFZHE4UGI5TGFGLzFxRFl2RkVaaE8ydWRURGpsTENYRS9aZzNEaG1qT0dhU3REUUd2T3djZ1dHQnZLdThPbjdFakNtSnpQM3c2eEVKK1UrNkJsTnY3WkpQSDR1Y0NVZTN0eE80aTZWRU5WU3o4WGtQU2ExT2dMNkNPRTFQYmYvM1lOWDE5U2RqVXoyVVBzM3VMMkttbmtwdkJDNWdhdWdnQkNFQmdHQUVFOW1IOHVCb0NFRmcrZ1RZZnhCS2oyeWVCM1VkU255enBGaTBnUHhaK09IMnpCR3phaEVCSEFoWko3VlY2LzQ3WHRWWC9jb2krZTJkSC8vS01YZWpjVk94SCtJTWszU2RoUFBza3NCdHlMRUt3bEREZHRpbmk2TS9iZDB4QzJtWU4wMldEcGZQQzQ0SzlKbkRlYWpQK3ZaRkk4ZElDdTNOUFdGai8rNHd6NGMrTWJUK2N2SkpTVHlDV1RQbWpsUlhQbFNYOVlBVUE3eGMyMyt1R2NuQmxRMmVSdlZTSmJjajZ2cVUyZzB1TmlYWWhBQUVJeklZQUF2dHNwb0tPUUFBQ0V4SDRtNUdqWXZaRllMZTQ3bVIvamtwcUtqN3FmUVZKWDU5bzdya3RCTFlKbkxyeTFIMUI1TFRGRUdMM0RsSHhTN0dOdWJXa3B6WU1PUFVvdWR0bzhwa2R3ckx2dGJhZCtOUEVpN3Q0c0c4M2FVc1Yyd1RWUlNlNlhpbHJsVjF4Myt2czVwS2VuN0FSc3QxLzV4ZXc3L3A1YWpqeHpFNWNQRlRyVE1CNUg1NG02V2FSSzBzSzdMWXErZGVHdGQ5NVFEc1hmRU9TbnltZkhOclFpcSsvcHFSWE5DVCs5TER2RmtuVXVRUTAzZ3c5VEpJM01YZkw1NFBmL09HRkJ4STdiZVhibDlvTUxqdzBtb2NBQkNBd0xRRUU5bW41YzNjSVFHQjZBbjZodDRYSldHVWZCUGFVQ0ptU1B6WXRiRGxKMDFLRXpMSFdIdmRwSm1CeDhnMkZoSlh0dTFwQU9uUWhhOU9iWkMrc290bWFiSEsrRWpZamxwQlA0cGlTcmh1U3VNVUVkaWNydEFmOXN5b3h2SSsxVCt6NTU4MEpKNU45YThOeXRQamhwSDRuNlBHQmRZVG5UWU1kaFU5aGZLNUhHOWV2RXZiYTEzMjMrSm5xVGROLzY5SG01aEkvOTUwUWtnS0JYUUt4amFsTi9WSUN1NzNXWHgrU2w1YWFIZWV3OEdmVUovY29mMHdnOXAzakJMS1hyRTREZkduQjhDNHV5YWZaNmhLSis4VG5IVHB1aVBaRkVmTzlkN3UyTjNwQzN4dHdIUVFnQUlGOUpJREF2byt6enBnaEFJRnRBbU5iR0t4ZFlQZjN5cDFidkRUTnZxVEhvMzhrdjByU3AwUDA1azlZN2hDSUVJaDVqdGRkN2gvNkc0L1VFMWJDclpPV3BaWlNFY3lwOSs5U0wvWWozSUtVaGVzK1F2UjJQL3pjY0JMUUwwakttZHpOd3JvOTBSOWRSWEk3ZVdKYjhZYWNiVzlzRDNGa0YwZzFkV01SZ20yUjRFNzA5eUZKWnhqWWh6bGUvcnhxZm04eXg0N1JwMGtKeEQ0djI1MHJJYkRIckozcTROaGYzWWxXZmZMSnduQnE0UlJJTzZtbXZFaEROejVUNTZkMFBRdldGdEYzaTk4bkxpUHBmYVU3c05XK2JZdDh3cW11T0gvTUl6Tjh0NDg0SEc0RkFRaEFZSG9DQ096VHp3RTlnQUFFcGlXQXdKNlB2NzlUTEo0OFc5SXhHcHExdUg1VlNSL0lkOXZmdCtURVVVNkNkWXJ3WDk0c3lkR1lpT3dGWUsra1NVZVJXVkMxbFVtcytJZW9mM0IrdGlaaG5hMUhMQkRiVy9WOGtZWmlFY3l4Zm96OTk3WWY0ZTVMamcwRFIwdzdFYUNmRzYrV2RQY2d0dmNkcTU5RmpvaDlmTUo4V0ZoM3ZRZFdtNE1XY1hLVk00VUV6bWRwYUxCcGN3S0JQZGNNME01U0NNU3NRYmJIa1Z0Zzl3YXBOK1Z0VjlkVy9KeDRVc2dyNDFNNzIwbEwzWVlUdWFjOC8zMFA1MFc0NVVKT01vMjlobmF0Z2tvOW44Y2VsKzkzcXBEYzlGdzFOL2ZKSHI5RGpQbStXcmV4Wlp1YTYwbjZqeWtBY1U4SVFBQUNTeWVBd0w3MEdhVC9FSURBVUFMLzBwTE15bUp4MHpIK3Z2ZTF1UGJERmY2dzh2ZUpJMWxmMUNLdU8zcmZkV3pGa2JQNDN0Y09kaGE3a1dST21PWjdrbHdzSi9IMXRHVlJ4UnN4VFJ0Q0h1a0hKZDFBVW9vVmlpT20vZVBVL3FYSGI4RzBwSVJ0c1dQN1EwK2tOQ1ZVOWJQM3JwVmR5YWM2SEpuM3MrRFBnNzNMQlNMTDFNOWlIOG0zbFVxcHhIbmJHd2QxM2FuYm5FQmdYOC96aFpIRUNiUjUvdGRkblZOZ2o5azViZTd2amZ2YlZhZmlZc25ZL2Z6M2U2T3R3TnFpMm0yMzVIY1dDL3R6S2Jha2NuREVSV2ZRb2UxVFlUNU41SGZtcVlxRFFad1hZT2lwSnZmZjFtQnZiUENZZDFTN04zREdMbjhaY200NHVlODl3MmJ6MEJOcFk0K0IrMEVBQWhDWURRRUU5dGxNQlIyQkFBUW1JdEFrc1BzRjgxSlZ0TFdGTUVxY1FFeEljaFNTbzhsTC9LQ01SZGphNy9RYUNUK080Nk9reHBvSU9IckwwZEtPR21zcVRucnE2UGF1UDY0ZHhXNVI1dlF0YlI4czZTVUxBUnF6aXVtN1laQml6WkFxdEI4bzZYRUprYWhHN2doU0o1Mk5DV1pEcDhjaW0wWDhXelEwOU92S0V1RHlWZlNyTndJM0JZRjlLSFd1WHhLQnJxY0ljd3JzVHVUN3JxMVRiM1hjYkMvbEV6VmRjcnI0bEo1UDVDeHBrOVdpdGsvVitMMlg4Z2NDdWRhYkkvTjlDczd2d2J2Rm05UStjV1ZyUTVjaGVUaTZ6cDIxb0J1R2lQWFNVZXVmNlprWHBPdVlxQThCQ0VCZ01nSUk3Sk9oNThZUWdNQU1DRGhpNXpYaGFPOXVkOWJ1bFo0TGYwcmtla2x4M2VQd1BEcGl6RUo3VS9HTHZYLzBmajNYd0dsbjhRUnNLV1J4eFVseDY4cmJRN0xIdmtlMm15S3pOL2M2TEd6OExDVmFMTGFSNWMrZ28vQTIzdlFwQzhTKzZMYmQ4UVpZck5pWC9GWTFFZTFucmdTSmg3Y2tZOTF1OStYQjBpYW56M3VzMzdGTkJCL0o5MG1LamRqdmlGNG4zdloxT1lzRkhvdjNkZVZIMVdtQkkzTGVyS0d0VjRRY0hTUGNpbHNzZ0VDS3dMMDdqSnlDcDU5WmprNXVLajZKNU1qMUx1TDZwcTNZODlMMWJpekptN2h6S0FqczliT1FhNzJkTjJ5a0hsQnpHMiswZXkxc3Zqdlh1c2w2dC9CZFBZZjFUaDhnQUFFSUZDR0F3RjRFSzQxQ0FER2dOMUFBQUNBQVNVUkJWQUlMSWREMmc4SkhVaTlPdEVYclRNNUJYTjkwTUVWa2QzS3hxMVJDL0pjV3NqN3BabGtDRDVaMGo0WmI1TnBndTB0THd0OWM5eWhMNlErdHg2eGlMQTc4VGJEYzZkb25pK1JPTUhwSXdvVWJvZjM3SVFvOXhUL2ZVZkQvRVB6ekUyNlJ2Y3JmaHRNU3UxWkU5bngzOUtCdHMyd2JVYkxZQy83OUlTbmo5bjJtU0s1WGNweTB2UXdDZnA0OEkvRXp2ejJpWElKblV6TE56YjJHSmlPTlBTOTlueWw4dDV0V0J3SjdQWmxjNjYzcHBJYWYrMzR2dFZYZHBpQ3dMK01aUmk4aEFBRUkvQkVCQkhZV0JRUWdzTThFVGxyNVRiNmxPaFo3L2hvSS8xVzk4RjY0aXBqODlqNERhaGw3U2tMVFVwN3JUZDA2U2ZCZXRyZHBVMEZrWjBHYlFFeE1zSzJIbzdHSGlwNXRTYzNjRDR2RFQxL1FsRFJGblBxemJodVVsOVlrZ08weXZDNUNlMHE3VFZIdktkZm1yRk9YVE5mMlJMY2RNVCtFcldqOGZiZjc3bThMcllNa09ZcWRBb0d4Q0RSdE9zWHVuMFB3OUdmQXlhMGRuZDVVY2tTWHgwVDhPVzF1eGI0VFkvT3kxci9uV0c5K04vV0p0UXZWUUtyYlpFRmdYK3RxWWx3UWdNRHFDU0N3cjM2S0dTQUVJTkJDb08wbDlpc2gyZFBoRVB3akF2N3V1SE5MWks0dkdGdGMzM1RTUDJSODNOYkpwSnFLNS9acW5FN1k2NVY5dW1xTldIdzliUTBGaStvV0hOK1dpVkJicEx5VHl0MDgwMzNHYXNhYkFrL2R1bG1YSkxDcGZmVDhQTEJIZE91bWZYdkNlNFBrSXhrMlNWTDdIS3ZuTVRtUy9neVpOaU5pOTl2OXUwOXJlQzN1Rmd1TmgzWnRqUG9RR0VDZ0xiR3BQN3MrUWRpVUd5T0g0T21OUE9jOXFIditlMWk1SXN2YmZMYzMrT2J5K1VOZ3IxL1FPZGJiTlNYWkhxdE9kNmxMYm9yQVB1RGh3cVVRZ0FBRXBpU0F3RDRsZmU0TkFRaE1UYUJOWk12eFVqMzErRXJjMzhlZTcxbUpWdmR0YWR3Sm02NlRVYURzT2c2TDdQWXd2bHpMaFlqc1hhbXVxMzViWk9HM3d1bVZYQWt3cnl6cGpRMzR2RTZkOUt5TGIvblVNMkVoeHNtSy9mbnlzK0R4bGE5NUtSLzVya0w3TjRLbjhqc0dSdEtYWXZ5WFZkVHM5MFpJcnJyYmZ3dDkzbmgwTXVyZGN2V1FrTGZVbUdrWEF0c0UvTnZ6QWRVejcxNDFXTHk1NlJOb1hwTi8zNEF0eDd1Wm43a3ZicG1XT3RHejd5eDZzOS9QLzZiZjNKOE5pVVZ0ZVRWbGFSUFk5OEU3dThuQ1plaDZhMHVtN25jTkp6ZmR6UW1Dd0Q3bEo0RjdRd0FDRUJoQUFJRjlBRHd1aFFBRUZrK2dUV1FiK2xLOWVEZzFBL0FQaGNlR1JJTk40L09QUkIvOWRsVHJsQ1ZGWkxjWTU3NStjc3FPY3U5SkNMUjk5bk5iWnF6eE9YUDJLbG1abndmL01kTHNkUkhhWDF1ZG9Qa25TVjhZcVc5THVJMnRpajRneVQ3czI2Vko0Rm5DbU9qak1nbllKc01iWU1ldjZmN3JxendKMXcxSnkwc0o3RzJiVGU3U2Q2cVRKaGVyQkg1dnd1Y29iVmFFYm44dU5qRUk3TkxEYWlaODZHK0J0bVRxVFZaMC9tNjlkSlVBM0xtRjFsUSt3OG5STlUwblk0RUFCT29JSUxDekxpQUFnWDBtMENaOHZhaEtobm1qR2RrTFREMVBKNnVPVXorekV0UjgxTFdwekUyd1ByV2tsNFVJb2FYMGVlcDUzcGY3anlsNmozbXZPYzZmdmIrZms2bGova3o3RkUxS2NmNk1JU2NEdmg0aXZyK2Jjck9aMTdtQUpBdEZGbTYyeXhKUFVNd2NOZDFySWRDMjhXMWJ1Y3NHZTVaL0tSakJibHNZSi9zOVkwTS9TM3dtbmhBc3E1clF6Q0VYQndKN2ZvRTk1dlcvRHljRGVDQkNBQUlRMkNzQ0NPeDdOZDBNRmdJUTJDSFFadDN3dk9yWTVrMGc5anNDamg1MVFyNjZaTEFiUkk1TStidHFVK0pMTTJQbUg5SDJQWGJFYlZPWjI4YkF6QkN1c2p0L0VUeDRUMVF6dXZkVjN0MVhrZlN6VENQZjk0Mjh2MW1vQmNtY0VsMzd1K29hQTliam1TcFI4UW8xMTMrOE9zWHppUUh0TmwxcUQyMUhnOW91akFLQkRZRzd0T1J1c2RYVW5VSlFRMG1CdlNuWjc2YVBKY1J1bjVSN1Rjc3ltRU5BQndKN2ZvSDl2T0U5NDRDR3VVZGc1OWtJQVFoQVlHVUVFTmhYTnFFTUJ3SVE2RVNnVGZoNVNQQVg3dFRnQ2lzNzh0RVJYYWR2R1p1VGhmbFl0NDlXejdHa2lPeHI4R1QzZDdwRk5GdWNXT0Fhb3pnaTBXdms3UXM3N2RGa21XRm1ZM3F3NzhOekJvRjkrQ2V4eVI5NGVNdGxXcGpUNWtTWkVkSnFWd0xPUDJCcm1EcXgwUnZ6amw3M1pyZExTWUc5S2RtdjcxdktydVhja3J4eDY1T0FkU1czTFZuWHVYRjlCUGE4QXJ2ZngyeXBlTWVXeVVCZzc3TlN1UVlDRUlEQWpBa2dzTTk0Y3VnYUJDQlFuTUN0Z3RkbjNZMzIvY1hYM3c4V3hwd0lyTTRyZGNQc0ZWWEN2cHRYa1djL0tUNWJ3MjV3dmhCRjI3WlJzR1NSM2ZOMXU1QncwbFlRVGhSWFdtUzN1UDZzY0M4TGdJOWNrTWplNXNQclJIc0haVXpTKzJCSkZuWHF5ajRrbUVSZ0gvYnM4dFVJN01NWjBzSjBCRGFKa2V0T1ViaFhONWIwZ3EzdWxSTFlZLzdyZmdlNHFLVERNNk9LK2JEbjluM3YwMzBFOXJ3Qys5bXFUYVAzU0hMQzBxYXk5TjhaeDVUMDN3dDY3K3Z6dWVBYUNFQUFBcDBJSUxCM3drVmxDRUJnWlFUYVJBc2ZaWDdNeXNhYk9oejc5RDVBMGwwakZ6ZzY1NTZWK1BPTDFJWW5ybmRCU1ljMVJOQnR1dmJGWUE4eU42dWJOblRiNHZveFFzVjNGaGJadDhYMVRkK1dKckszYmJBMUpSL3J1b1FkS2Y4dVNlZXF1ZEFlMzA2bTU0ajVOUmNFOXVHemk4QStuQ0V0VEVlZ3pScG1rOWgwK3oyaWxNQitpcENMNE1BR0ZENko1VTNQSXpPajhuZTBOeEJ1ME5CdXFjajVMc05BWU04bnNIdSsvUTU5cjhnRURCWFluWS9FUVNPNUV2SjJXUyt1YSt1amx3Y0x5ZWVHZDUxZmRtMkUraENBQUFUV1JBQ0JmVTJ6eVZnZ0FJR3VCTnFPQ3Z2RjhYVmRHMXhCL2Y4cjZhVU5ndUQyOEN6NFBGclNVUm5IN0I4TFBrSzlFWWszVFo5VGtuOFliNWV6VkQ5WUhTRzArOS9Pc2ZQZnVpUkYzRnhxa2QyUmRoWkE1MTdxeFBWTm55MFdYS3ZBNllJNmNYMXpUMi9LZUdQS1VlQnpMLzVoYXN1QzNYWGtmanZoM2lXclV4ejJxQjVTMm9TbFhDTCtrUDZOY1cyVHdPNGNGODZQMExXY1V0SWJKZjNaem9VUGt2U1VybzJGK2s1QzZGTWYyMlZPTmljSTdEMG5sc3NtSjlDMnNXMlBmbHZEL050T0wwc0o3REdybG1lSEUza2xvTFdkWlBMOS9GMzlxaEkzVG13VGdUMmZ3SjRTdmU1cDZTT3crejNabjZsRHczZlc1eVZkU3RMM0UrYzVaN1c2TlcyN282ZFZPWnU4Y1piN0pFak92dE1XQkNBQWdTSUVFTmlMWUtWUkNFQmdJUVRhZnNUdG04QnVFZnNSSVNJbE5uM205b1l0RWRYSHJ2K3FJVExjZ3YydUVPYjIrd2pmc1g3bC9MdVR0bDUxQVNMN2xjSkdrT2VncnVRVzJTMnV2MFNTNzF0WExLdzdHV05iUXJlYzh6UzByVGJoY2lpN05tSEpQNFl2TGNucmJPMmxTV0R2KzR6MWtmc1BTVHJERHJnK1lzV21pYnJ2Z2lVSTdIMDNLWEt0dVJOSWVyNmtDKzgwT0NkMnVjWktPOTBKK1B2Q09Wd3UxM0NwZ3h5Y0RIZDNRN2FVd0I1TGNEcmtHUktqMDNaaXl0ZVd2SGVzYi83N2tnUjI5OVdKbTcwSmJuSFp6eDkvbC92ZHBHOXBlaGV3NWQ3VnFoT2RSeVEybk9LOXZtbXF5NXlmVHRMOWc1MlNSZlpOOFdmSFNkbmZuTmkvWE5YYTFvdnY0Ym13OVpOUFoxQWdBQUVJN0EwQkJQYTltV29HQ2dFSTFCQm8raEdYSzNwMUNkQWR4ZnVpeW0vNjRrdm83TWg5ZENTT3hlSnZqbnpmTHJlekIrWS9TWEt5ektZeVZDamV0QnNUMTEzUHB4cnVYbGtIL2FiTElDYXNlM0pKYndxSld1dTY0WWpHTy9Td1FYS2twQ080Zk5LaXJzekZUdWZXTGY3d3NXbjVRSldVOEdZSmRncHJGdGd0MkQwbkJxcmg3ODVmY2VmRWE1dkVuNzZiRkltM2pWWnJFbGtRMktQb1ZsL0J2ekV0SURaOU56azV1cDhOZGZsYlNnbnNOOXp4ZXQrZGhKS2ZwNWhWVnNubytaVEZ0Z1NCM1pIaHR2bXIrMTYxWFdIYmUxQ01RUzZCL1R6QkttWDMxR1hkL2JzSTdHZXVOcXI4bVRsdFRVTlRuSWFMblFhNWthUVh4cUR6ZHdoQUFBSnJJNERBdnJZWlpUd1FnRUFxZ2JZZkUvc2tzRnMwOVErV0M2V0MyN042dWNUcGt0akdFTm5YS0s1djVpVG16ZjlhU1k0K2RDSzZXUEY3bFVWWGIxbzEvY0NlMDVvYVlqMlNHdG0zWm9FOUpwcTFyWmZuU1hJRWVrcEJZRStoMUwzT0FaS2NjMlNPeGNrRG5haDZLWnVWdXd3dkVSSkZIN3NHN3EvRGM5S0NZVjBwSmJDM1BlOUsrNkQvZFVoNjJaUTB2c3Z6b01SNjlTazRCMXJVZlcvNXBOWG5ldHpVN3lhMi9NdTFocDNUeEJ1N2RRTDdVSDRXakMyTzd4YWZObnRmWWlTMkdkb2V4UnZQS2FXTHdPNTNDMi9tSGxMVDhCVDVYTm8ycSthUXREZUZQM1VnQUFFSVpDZUF3SjRkS1ExQ0FBSUxJZEFtc1B1SGxvODErNGZHcnFmM1puait3ZUFJWi9zZnZqOTROZjlnSVdQZjdlYnRKVDF4b1gwZm85dHpFa1NieGx0U1pGK3p1TDdoYWYvYmw5WDQvMi8rL2xOSjk2bU9wVHVSVjEzRXBkK24vQVA5b1JHYnBibjUreU93SHozRGZTMWlFTmlQUHFsaG00YnRzcFFJOWpZaGQ0enZsclo3TEhtajMzWVd6cTlRbDl6WlkzYStCRDlQbTNKMWxCTFluOVVpZnBibUhSUFlVemNzcDE2WFhlNXZJZHp2eDhlcHZoYy9FZjYzRTdCL0ttd2VkYzNWWWtzcTI4L1ZXUTdOZ1YvYnBsSWR0eTRDdTYrM05aL3pqOVRwTndjUHRNanBNcTl0WXIvYjhlK242eWR1U25TNUwzVWhBQUVJeko0QUF2dnNwNGdPUWdBQ2hRaFlQUGNMK1lFWjIzZkNMa2VZV0t4MlJFblhIdzhadTlLcHFjMlBJUHVpcjZsOGUrY0YvejhsZldWcmdONUljUkxMSzRjRVkyMWpmMEVWd1d3N2pTTm5ES2lFeUw0UDRycW4xTzlEVG5McEk4M2IvcVoxMC8zbElCVDhLdnpSU1RjZHRlNGYvMjNGVVlCL0orbExNMXBEQ094SFR3WUNlNzlGdVhTTEdBVDJmdlBlZHBXZm43YXN1RVZEcFkrRzc5eTJnSVJTQW50YnU2V2picHR5UjJ3d3pVRWd6cjBhSEJGdlFiMHVSMHhmRWJacGsyVHFUVDJmaFBFbXZmM2FVMHRYZ2QwUi9POXEyTGdhMC9NODl2c0plNWpVRlVBOUNFQmdkUVFRMkZjM3BRd0lBaEJJSkJEN3NaUFlUR00xSitIN2h5cjUwRWNXSUxUN3g0OFQxVG5pWk96aVkvQVd3djF2bDgzSmdPMG9ZUXVTMjhLNG80ay9LK21vcmM3K3FQSjcvV1hQenNjU3NXMmFmYWFrMjJVODd0eXp1NjJYNVJUWjkwVmMzd1o2MlNvUy9hVXQ5aTU5NTh5bklQeWpNOFZtcHU4OStseUh3SDQwTlFUMlBxdW5PVEhpMUdKWDZtZ1EyRk5KcGRlN25xUVhOMFRaT2tyY3o5Z1BSNW9ySWJDM1JUKzdPNlhYYk95ZGM0MENlMXRpVi91bDJ6ZTlhM0hlQ3VkNjJTMi9DQ2RwdklFelJibW1KT2ZWNktLdGRCWFlQYTRuaEx3d3UyTXN2VUcwZmIrMmpaTXgrekhGUEhOUENFQUFBcTBFdW53SmdCSUNFSURBbWdpTUZiWDlha20zbmFHd3RqdVhiVWRQZCt0K2Iwdk10a2VzbzhBM1lyZkZjaC8vM1JUN1YzNWg2Ly8zanlCSCtzK3RuTEZLZFBtR0JnL083YjR1SVlsbmlzais1ckNoVW1kMzR2SHVvN2krbVdlZjVIaEtTSEE3ZEoxNnc4Z2l3dU5tdWpHRHdINzBEQ093OTF2cFJMRDM0NVp5VlduTGtwUStkSzN6bDVMZVVUM3Y3RzFmVjFLVE81Y1EyTnRzQWQzWHFRWDIwdmZ2T3BjNTZqZUp3VzdidG15djZuRVRueFo3UzRPUVBWWGt0RSt4ZWQzWGViaDdpTGJScW90czd5T3d6Mkg4YmU4TnRyRHgzUFlOZU9teEpMZ0VBaENBd0h3SUlMRFBaeTdvQ1FRZ01DNkJtQjltenQ1WVpIWlVsMS9BNTFvMlJ6N3RtV29yaXcrRzZIdUw1YmE3V1hLeXRWVG1GdG50RzN2MmxndnVYMW1JUEhpbVl1bDJ0NGVJN1Bzc3JwdWhJeDF2R1h5Q214TFNwYTRwZjVZT0RYWlUyeWN1VXErZlE3Mm1aMlZxeE9VUW4vSXB4NTlMOEdyaTF5VXBYNU9nNFpNN1Iwd0l5UWtNSFpucmYyK1hYT3hLRDQwSTlueUVZeWZCdXVReW1VSmc5Nms0NXhMdysxcUpjcUxnbiszbzM3cXlsTTlNS3B1MkV3TkRvczNiZ21Oc3oranYyekdMdFJRTDVZN0lyeXYrbm54R3NKL2IvWHNmZ2IzTm5tVU1jZnU0d1dQOUtnM2p0WlhpMDhlY0FPNEZBUWhBWUU0RUVOam5OQnYwQlFJUUdKUEFCWUxvWmQvRU1Zb2pXVzNCMGlkaVo0eisrUjcrQWVpb3VhVUtnVGs0WFZEU1lUVVJlSjYvbXdjcm5hVjQ2L2NSMmZkWlhEZXY2MHA2bXFRVDUxaE1XMjM0MlBvaHdkb29jOVBGbTBOZ0g0YTRwTUErckdmbHJsNktXUGlZa0h1aEhJbitMZnVrMXcxM1RvVDFiNjNzbGJhWnM3aHBjYTJ1V0xTK2ROaThUK25KRkFKNzZvWmhTdi9yNmt3ZFFkKzMzMzJ2YzZKYld5V2V0cWFCSVpzWmJSc1Y3NnNDUXl6OC9xeHZwM3RjMTNacXc5YUhQaDFxVWZxMU5XMzNFZGpkaklNODdsSFRuZ05odklIenVSN2pTTDNFOCtuRXRRNUkyUzFqM0QrMW45U0RBQVFnTUFrQkJQWkpzSE5UQ0VCZ0JnUjJveXAzRTJKdWU0RmJkRHgvU0g1NHNvUmtoazNEVzRMSVBvT3BtYndMUHQ3cVpGV2JxTXdsbkVCb2d1YnYrWCtVOVBBV3FodTdHRmR4b2l6L0lHd3FTN0RJNmJPQWJBdmpSTGFYNjNOeDRqWCtzWDMzeW43bnNRczRBYkU5SkFUMnhBbHVxSWJBUG93ZlY4K2Z3TzUzNW5hUHZTRjljTWh0a1RxU0VnTDcxQjdvK3lhd3QxbVo5RTF3dWxrL1RZbE94eFo0WTRsTlh4NDJ5ZnhPbFZOZ2IvTkFMeDFCM21Zbk9VWUVmZW96aEhvUWdBQUVKaUdBd0Q0SmRtNEtBUWpNZ0lBalNoeDExZWQ0L2JFa25VUFMxU3ZmenB0V1VjMW43VEFlSit1MGlQZTFEdGRRZFZ3QzI2TDB4NnFvdStzc2ZMNVNSSFpiQXJsY3BBWDFXc1gxODRVZnY2Y2ZhWmxaeVBlUDRDTkh1dC9RMnlDd0R5T0l3RDZNSDFmUG0wRFRxYTlOci9za0IwZGduL2VjcC9UT0VkYU90SzRyZlNPM04yMzVaSWUvUit2S21EN3MvaDUvYWtNL3RrOXROTm1rOWVWdzB1QkQ3OENmM1ZKYTVHN3oxUzh0N3Flc08rcEFBQUlRbUpRQUF2dWsrTGs1QkNDd0FnSitqcDViMGtNbC9XM2llRFpSTFk1b3A4eVRnRGRSTEt3N3V0dFJVVXN2S1NKNzJ4alhLcTc3QitxYkpOblh0SzNZTTlhZTJmN25QM1kyNW13dDQraElXeURjUkpJajkyS2xqK2dVYTdQVTN4SFloNUV0S2JEandUNXNicmg2R0lHVGgrZW5MZmZxaW5OUVhMWks5UDdkanJkQllPOEliR2JWMjN5NmYxdlpNMTZtK3A2MG5VdmY4aGRWb01wN2c2M2hiaHZQRFlFdnBhMzhmSnIxYlpKc0VWTlh2TUh3TUVudVIyNkIzZmVid2lhbVRkZ2YrL1JBMzdYRGRSQ0FBQVNLRWtCZ0w0cVh4aUVBZ1QwaTRPZXBmelQ0NVQ0V0NidnhaWFJDVFFvRXhpTFFWMlJmcTdpZWt0VFdtMkQzQ3Y3Q0Z0bFR5cG1ySC81bWRvMUk1Y2RMdWxQNEFaN1M3bFIxU2duczNwQjhYWTlCTlZrOTlJMEdkQmZxQkwxY1B1SWxCZmErREh0Z3I3Mmt5ZllpRjd0Yy9hU2QvQVM4Q2Yxa1NiZG9hTm9lOGxjTXlkSzczcjJFd0g0cVNSK29Oa21kSkxPdVRPM0I3dE9ORjVWMGVGZFlNNnpmbG9nMHh6amJoTjdQaDgzdU1UamVQcndiN0U3QjdzWlNDWUY5Q3B1WXB1OHlqNzkwNVB3TWx6bGRnZ0FFSVBESEJCRFlXUlVRZ0FBRThoS3dhUGNHU2VlSk5HdXY2eHRYNHAyamVTZ1FHSXRBVjVGOXJlSzZ4YUVYaGxNS1RleUgyQU9ac3ovZjlvcjF2ZXFLTjlxY1ZOVit0SE11Q096RFpnZUJmUmcvcnA0ZmdaVHZrZHVFaE5GOWVsOUNZSTk1b0E5SnZKa3l4cWs5NEZQNm1LdE9tNFZMcmdqekpxc1NSNHc3MGFsUEg1WXUza3gzSlAxMklsZC9yM3R6ZmR0enZZVEE3bE4zM2hRNnNHYVFwY1R1VzdWOHB1OVFuUVI4VW1uZ3RBOEJDRUJnN2dRUTJPYytRL1FQQWhCWUlvR1V5RmhIZDExQzBxY1hNRUFmOTNYRTBGcUxiUlordWRiQjFZd3JSUnp4WldzVjF6MDIrN1ErdjJYTzMxbDlOcStkd1I3b3FpRmg3dkViN3VWb3V5dEkrdWFNMXg4Qys3REpRV0FmeG8rcjUwZWdMYW1wZXp2VUFtc0tnYjMwcVl0OUVkaWQyOGpmcmRkdldMYTVQTkxia20zNlpJVUYzOUkyTVg2WGVxS2syMjJOMVJzSXQ5eEpaRjVDWVBjdG16WVpTdGkxZUY0ZEdPVFAvbTVaMHUrWitUMU42UkVFSUxBcUFnanNxNXBPQmdNQkNNeUlnSS91djFyU01WcjZ0SlNFUUUwL0RtYUVlMUJYcHJaWkdOVDVIaGVmSUVRaCtZZHVXM2w3K0RIMWt4NzNtUE1scDVUMGpwWlRKbDhNb3ZmWE13MGlKa1k5U05KOVJoQUQrZzRIZ2IwdnVhT3ZRMkFmeG8rcjUwVWdsdFEweC9mR1BncnNwYUtPeDE0OWRWSGRtejdrRkg0ZE5mNStTUTVvMlMzZkNnRXNYeDFoOEU0TS95NUp4NVprKzV2TFNmcmF6bjFMQ2V6TzkvSVdTWFY2VHU3ZkYyMjhEd3RSKzZrMmVpTk1DN2VBQUFRZ01BMEJCUFpwdUhOWENFQmcvUVJTTENoZUZDSnBTMGZaREtXTndENlU0SHl1UDBtd0xYRjBka3JKSVphazNHZk1PazIrcWU1RDNmSHVvWDN6cytBWjFZL3VReG9hR2xNTTZETVdCUFkrMVA1d0RRTDdNSDVjUFI4Q3NkTjVRM3pYdDBkWlFtQnZpOEQxdlhPS3YzVXoxcGFZMC9XZFFOdEpzcGRlSExuKzRvWkI1TnhFc0lieG5KYnYxWU5EeEhWcG5zY0x3VFFIU2ZJOVgxcHp3MUlDdS9NS1dOdy9WODA5YzdKMjgyMWlQdll3cFZjWjdVTUFBb3NoZ01DK21LbWlveENBd0FJSnRCMWg5WERlRjd3aWZ6YnpzU0d3ejN5Q0VydlhWVnpmTkxzbWtkME1IRzExb1FabXBTS3h6aHU4V2c5b3VPK2NmNkFpc0NkK3dCcXFJYkFQNDhmVjh5RGdaNmZ6UlRoQ3Q2N2t6Q2xSUW1CM245dmEvWGwxc3VtU2tqNWVDSGRiZ2tqZjhwNVZGUFJEQ3QxN3JHWTNZck9UMjlhVjNGSFZQbjM0bXBHL3krdHVaODk1QzlDNzFqQ2J1cVVFOXJaTmh0d2JSazEyTk5qRGpQWHA0ajRRZ01BaUNDQ3dMMkthNkNRRUlMQlFBbTFIS2oyazBwNmZ1YkFoc09jaU9WMDdmY1gxVFk5emVaSlBSK0RvTzhkRWpsSlJiekZmMnR6UlpqazVJN0FQbzFsU1lIZkU2MXVIZFcvUTFiYWJzdC95aFhkYVdjcDMyNkRCNzlIRlBvVmpYK3RidEl6NW55VTlNcFBWVlNtQi9SNVYwdWtIdDR6QnlUSGZWR2hlWSs5UnVjWG5Rc05vYlhiYkxtVzNZbTdCMSsyM1JYRC9Pb2plVGtKYXVwdzQyRUZhYks0cnBRUjIzNnR0a3lHWDM3MXpNTm1LNXZ3MWd5c1ZsRkI2em1nZkFoQ0FRQkVDQ094RnNOSW9CQ0FBZ2Q4UnNQamc2SnFtaUM5SHJqdlI2Yi9QbkZmc2grSE11eC90M3RvOTJGUEVkVWZQdWJTSkQyc1EyVzhWL09mckZzVjNLckh5WXNGSE5icG9lbFJ3bE5zTEdxNnpUWXhGeWprbU95MGxzUGNWaCsyaDd3MkpQOXRoYVMvN3AvU1lGMS9pNkx4ZDI2UmNJbkZKZ2IzbmNJdGZsb3RkOFk1eWd5aUJsS1RZRmhiOXJtTlJNMGR4NHVjek5UVDAvVXJvZS8xT0VzbmRxczZqNGVTVHU4bkwyNTcvYmlPWElGblg5ZGk5UzRyN09lWWsxa1pkd3MvdGE1d2c4OGFTZmh0cnFPUGYvYzdpalpPNlV1cWVIYnVva2dKN20rZTlUNXpZc21jbzg3YkFoRG1mdnVzNlQ5U0hBQVFnTUpnQUF2dGdoRFFBQVFoQW9KWEFsRWVTYzAxTjA0OEQvNWgraGFRamM5Mm9ZRHZlN0xDQTVrUlV1MlhOQXJ2RmRmL0l0RjFSVTlsRUhqb2g3ejlGanFrdlhXUi9scVNiTllBb2JkblU5aVBWUDRBdkUyeWpDbjRNZWpWZFNtRHYxWmtSTDhvbEVpT3dqemhwM0NvN2dSTUdRZnRTMlZzdTErQzdKVjFOMGhFN3Q3aHkySnhydW5OSm01WTJJWGdwd1JadE05WW05UHE2cTB0NmJZRXBiNHVhOXp2cXBTVjlzTUI5dXpSWlVtQnZ5eTJRSzJpZ0tXOU5hVnVsTG95cEN3RUlRR0FXQkJEWVp6RU5kQUlDRUZneGdUVUw3TGtFcURHbS96U1Z5UHloS2luV0dXcHV0bGFCdll1NHZrbTBlOHdWaSt6SERSN0NqaFNzSzZXVERyZXRRZmRucnVzUWdYM1lFd3FCZlJpL2tsZTNmVCtYdkc5SzIzTVJyOVlrc01jU2paYjZEb2dsV1Ayc0pHOWdPRHAvcWFVdGVmam5nOUI5ZUlIQnhYemZYeTdKcDhkK1UrRGVxVTJXRk5qZGg3YlRjVU50NzlyZW01bzJzbEs1VUE4Q0VJREE2Z2dnc0s5dVNoa1FCQ0F3TXdJSTdQT1lrSDBUMkZQRWRSK3Jmb1NrbzNhbWFLMGllMHdvZXA0azI1YVVLakdCdmFROXdaQXhJYkFQb2Rmcys5OWx2Zm1VeWNPR2RXUFVxNWV5K1lyQUhsOFdzZWRtdklYeGF6UUpmL2JzL29Da3N6UjA2V1BWM3crUzlLUE1YVDVGZFVMSmZUcXdvZDFjVmg2WnU1M2NYSnNYdWh1NWYvVi83cGZjV3ZlSzF3eW5LZXQwRFNmZjlRbStLWE5WbEJiWXp4MU92NTJzQnQxUW14eC9WdDVmV2V1ZHVxYnR1MGw2ZVBmcDRnb0lRQUFDNnlXQXdMN2V1V1ZrRUlEQVBBaTAvWUF2a2ZTcHhLaWJmaHdzUlVReGszMFMySWVJNjV2MXMwYVJQU1lVZFJFOCszek9ZZ0w3WFNROXBrL0RoYTlCWUI4R3VHUUV1emZJUGpxc2U0T3VkblRqdlNTZGM2ZVZwWHczSUxESHB6LzIzSXkzTUg2TkpvRTlkb3FwMUR0WkxISytwRFhOR1BUYm90ZS9MZW1TbGIvOWx3cDJ4Tzg4VHJaNW9ZWjdUQjFwWFZwZ2IvdU1majNrbG5HZWx6NmxLVHArTGlkcytveUpheUFBQVFnVUk0REFYZ3d0RFVNQUFoQ0lKamxkaWdpQndMNmN4WnhEWEYrcnlCNFRpa3BIRVo0dTJCU2R0bUU1N1p0RmpLTkVkejJTVXo1cHRsdndac1Z1Y1M0SUMyUjlpcVB6anJWellhN25jMG1CZmVvMTAvU1p5c1d1ejF4MnVRYUJQVTRyOXR5TXR6QitqVFpCMVNlMzJwSjVsemhKMUdiaFlYczJSODIvYlh4TVdlNTQra3BBZjBlVndQdHNEYTA5V1pJVFlXNXM2TExjdEtZUno5dnpXeHEvVFV1QzgxSjkyclJiV21EM2ZkcE9PZlgxdjdkTzlCeEpoOVFBbW5yVG92U2MwVDRFSUFDQlhnUVEySHRoNHlJSVFBQUNTUVJpZ3RyYlErS251U2NKUldCUG11N0pLMWxjdDBoOHVaYWVOTm5DTkYyeXRrajJOa0d0bEQzQWh1M0ZLNTlkSjRtMVFGeFg3QTMvcHNsWDBSOTNvRlFFZTE5eHVPa2t3SkRqNm5YcklwZElqTUErdzBVZHVvVEFIcDhiSndoL3RxU0x4cXRtcTFHMzRiVnAzSllmam9yMnY1dUtiV0NjekxydTNlcnkxVmplVXRtV05QMEdmcTZrbTJZVWhOdEVTdmUvcEQ5NXRnbHBhTWhqZTBBNHhWSlg1Y2VTTGxFbG1QOTA2WTVJT25uNC9yeEF3NzNHaUtSdkd1WVlBbnZiKzBYZlRRNEhBOWdlNW93MUF4dnlmVHZDY3VBV0VJQUFCS1loZ01BK0RYZnVDZ0VJN0FjQkMwaXZhUm5xRTZ1SXkwTVhnQUtCZmY2VFZFSmMzNHc2UldSL3I2VHJTdnJPekZHMVJTK1dzZ2ZZSUxsVlN3VGR6NElROGU4ejVJZkFQbXhTRU5pSDhTdDV0UzJacmwzeUJnUGF0ampweU9kUERXaGpxWmUyYlh3TWpaeHRFdzNOYTZpbHhpN3pNMWViM3Y1K2JEcTVsRnZRSDNQT3oxTWxMMzJYSkh2TTF4VnZ6Tnk2RXVCL08xS25ZbEhzcncvdktiOFlxVCtiMjR3aHNMZjUvUGROb212ditqZldiRVpoRHpQeUF1SjJFSURBY2dnZ3NDOW5ydWdwQkNDd0xBSzJHM2locE91MGRMdnZzYzJ4U1NDd2owMjgyLzFTeEhVbkdmT3grTjkwYS9yM3RkY2lzc2Mydlh5VS9VazlHYlZkZGp4SnI1WjB4WVpLZlg4QUYranFIeldKd0Q2TU1nTDdNSDVjdlg4RVNncnNzWWh5MHo1WWtwTkQ1aWpYcjNJVXZMaWhJZHVtK09UU20zUGNhT1EyWXUrNFU0aXdLWFpHdGxKNVpNWVRDaW5ZeHhEWTNZOG5CRHVlM1Q3MXRTRnFhbS9vSmxjS00rcEFBQUlRV0NRQkJQWkZUaHVkaGdBRUZrRGdDdUZIMHpFYSt1cUVRejQ2KzlVRmpBV0JmYjZUZERKSnI1QjBtWll1RGhYWE4wMnZRV1EvU3pqeWJBdUN1dkxoSUlML0pQT1UrN051ajkxak43UTc1eWhHQlBaaGl3R0JmUmcvcnQ0L0FpVUZkdE5zWldKZDF3QUFFMnBKUkVGVWlzemRrTTRsSU1hU2I1YjZ2aGxqeFZ3dmJCdzBhUW1QbDNTbmtZVnNqenYyN3UyVElkN28vc2dZa01JOXhoTFkyd0lJSGxJRldEaVpibXBwaTRqSEhpYVZJdlVnQUlHOUk0REF2bmRUem9BaEFJRVJDTml2OEsxVkJQdlpXKzdWMXhOeGhPNy8wUzBRMktlZ25uYlA4d2ZmMGFZajJybkU5VTF2WWlMN0ZEOWUwMGdkWGN2KzUwNkU1cWpDcHBJN0dWcktDWU01bjJaQllPK3l3djY0TGdMN01INWN2WDhFU2d2c01lSGJ4RzljSmU1OHdVRDBNY3VTVWllbUJuWTdldm1acWdBUjV4RHloblZkbWRMdjNOL3hUd3NlL0UwRCtXSVE0bTBITkVZWlMyQnZDeURvbW1PbUtWZkJGQ2NUeHBnajdnRUJDRUFnQ3dFRTlpd1lhUVFDRUZnWWdVMlN3Uksra0NsaTJ0SmVVQkhZNTczQW0wVDIzT0w2aGtLVHlENTNjWDNULzFqMFlzNXgrQmo5ZlZxU3dMbFBjMDl5dDNhQi9hUWg2YUUvUjlzbGwyMVBTWUhkRzdsZm0vRHg1UFY5dFJvUDVsd0pZaWNjR3JlZWtFQnBnZDFEdTMyVkdOTjVjSnJLVjBMQzhMNmZyMWlneFpja1hiWVNncjh4SWVjK3Q0NVp3N2pOcVNPY3oxYXhmWThrSjhSdUt0NGd1RllWWlovN3RGcmQvY1lTMkk4YkV0M2JkbWkzL0xyeXk3OTBGYjMvd2NSSnh4NG1FUlRWSUFBQkNHd1RRR0JuUFVBQUF2dEl3SUtISTF6c3hmak9qRWRZYlR2aGlLZkxSYUJPZFhTMjcxd2pzUGNsTjk1MXV5SjdLWEY5TTZKZGtUMm5LRjJhV29wUHEwVVBIN2YrNUlET1dJandrZXo3UnRySUhURS9vTXUxbDY1WllQZDc4RDlLZW5qTnlIUFpSSlFVMkhQUGRhNzJFTmh6a2R6UGRzWVEyRThwNlIyU25LaXpxZlFWWVZNQ0xlYiszRzlpY2hkSmoycGg5bEZKVjY2OHdIOHc4ZEtOblI1dzk1NHA2WFlEY3RPa0RuRXNnZDM5OGUrYWh6VjBMSFhqbzJuVDJjMm10cEhLaG5vUWdBQUVWa1VBZ1gxVjA4bGdJQUNCUkFMYmdzZUhKUDFEOEdOMElxQSt4YzlTZTJEYlIvbjBrUWJHUHByYVp6eTcxeUN3NTZCWXZnMkw3RytVOUpTQkNVMVRlN29SMlMxUU9pcDhURS9UMUQ0MjFZdDVvdnM2bnpTNW1hU1g5dGlFc3plK04vSGFraHo3SG5NUkk5cDRMazFnUDFEU2kwSms5M2NsT1ZMVTBhaTd4U0xZclNSZG9HSHd6NVowODZFTFRSSUNld2FJTkxGWEJNWVEyQTAwUllSOVMwaDYrc1BFR2ZDejM4THROVnZxOXhYdUU3dFFyTm9GSlIwbTZZQ0dPL3gzZUJmd3lacXBTMHFrdmZzNGhzZytwc0IrOFJBNHREbXB1ejBQRGdEeU80MmoyZHRLVXh0ZG8rQ25YZ1BjSHdJUWdNRG9CQkRZUjBmT0RTRUFnUmtRcUJNOHZpenBrWkwrVmRMaGlYMzBDN3lGeFFkVTE1MHY0UnIvK0xpR3BOY20xSjFURlFUMk9jMUdlMS84dy9mSUVTS3lOcjJ3eUg2Y0lFWXZoNUxrOXg5SFlqbnhWNnhZQlBjbW5CUFNIUldwZlBMcStlSEl4SHRVVWRISGk5UzFnRytMQUxjNzEySk9oMHA2ckk1bXRsMVNJN3libmg4K0lmQzZIZ1Azc1g5dmpKNWg1OXBOWkYxYjlGMlgyMWw4ZTJHWEN4cnFJckJuZ0VnVGUwVmdMSUhkeitpWEJadWpOc0EvbFhUYlVQYzNEUlg5WGVqbitWT3JQQjluYldsc1NhZTl0b2NSczd4eDNibWR6a3pwcy92dHpYQi96elhON2RBUDM1Z0MrM1p5VW8vblZTSDQ1MzJTamtnY3lJUERPOHh1OVNVbjVVMGNPdFVnQUFFSURDT0F3RDZNSDFkREFBTExKTkFrZUd4R1k0SHliWkkrVUJQNTZLZ1FSL0VjRkRsYXZFdkc0cm9qUi96RHNXK2svRlMwRWRpbklzOTlTeEp3QlBOTHdpWlp5bjM4WTlXK3J1K3Z2RnMvdFhXQk54Z3VHcXloenBuU1VLaHpWMG1QbWZIeklKYlExai9ZN2ZYNnM4aVl4eGJZL1c3clNMMGJkSmlMM2FxNS9KRXQ0Rm1zdUZOTlg1NG42U2FKZld3NzlwL1l4S2pWc0lnWkZmZnFiamFXd0c1d3FTS3M2LzRpaU95TzBQNVZvTzUzd291RUtQYy9qY3lFM3dPdkczeXlselJwS1pZM253a2JERDQxTktmaWpkeFhWNEV3eDRoMDZ1bmhPZTA1emwzR0ZOajkvZWVrNlYrb3ZnUC9NeUVvWUhlc2JSdlV0aDY4WDI0NHRBY0JDRUJnVFFRUTJOYzBtNHdGQWhCSUpSQVQyRlBiU2EzbkgxVjNsUFRrR1l0cGJXTkJZRStkYWVvdGpVQ0tjRkJpVEJaTWZXSm1ycHR0S2Y3eDd2dkJ3VUtuei9PalZBUzcrekpVa003aGp4eXppdkJwS1l0dEtWR1RUZU94UUQrbEhjTUpxbWpkNTB1NjhNNENRR0F2OGRUWW56YkhGTmhOOWZKVndNVExXNnhQY3BHZiszTy9icHorTHZDNzZ5MWFJTmc2eEF6Zm13dFV4bmJhOG16czN1WVZ3UllzZCtMVE1RWDJvZWc4ajdaRjJ0V0lzSWNaU3BicklRQ0J2U0NBd0w0WDA4d2dJUUNCSFFKakN1eTJnYkFJWlN1RXVZcHBzUVdDd0I0anhOK1hUTUFpNFpNcXorNURSaGlFeFZUN2VsdVVuT3Z6d0lMS1E2dklkQ2V6aTVVVXU0T3hJOWpkNTZaN3hzYmp2OTg3SkQxTkViNmIyanRURU95Y0Y2R3RwRm9UTkFuc2ZUY3BVamlrMUdsS0dJekFua0tQT2swRXhoYlkzUTk3cHZ0RWs1OS9KVXJweE9NbCtodzd4YlM1NTl3M0RsSTJDVFpqK1ZqSW5mSzFqRUNYSkxBL29VcFFlNGVhc1dNUGszRkIwQlFFSUxCZUFnanM2NTFiUmdZQkNEUVRHRXRnLzJDd0tjajVvajdGdkNLd1QwR2RlNDVKd0VLQ280RXRlSllTV0Q0djZYcVZrUE1mWXc2czQ3MDhkdi9Bdm5XSDY1eEE5R3JWMkQ3WGNFMXVnVDJsYTMyZThmYmF0MjJQb3pDSGJINDRINGZ6Yk1RU1htL0c4ZWpLYnVMdWtVaDJCUGFVV2FmT1dnaE1JYkNiblQzVW5kVGFQdGE1eWhJMlZldkdtaHI1N1JNMDNweEk5ZmZPeGJWck8xMU9xMzAvZkZlL28rdE5PbjRIYnZLR1pMck40R1pPSmVsZDFVYlR1V3Bhd2g1bU1GNGFnQUFFOW9FQUF2cyt6REpqaEFBRWRnazRBWlVqeXM5ZENJMkZOTDg0djc2SC8yR2hMZzFxRm9GOUVENHVYaENCMDBsNllPWm85dStGNThHTGc0ZnZYSEhZTC95SklWZEUxejVha0hBMHRUY1ZkOHR4cStSMzluWGRMVCtxdVB5eTY0MFM2M3ZEeEFsbi9XOFhlK1BYaVdhL3JhSVY3UjM4alV4OTZXczE0VVIwdG1ENFllTDRxQWFCTlJPWVNtQTMwMU5MZWtwSVNEK1VzVGZyL3I3NlBsbGFrSVgxZ1R0TGVsUUV3QmVybkNSWGtQVDFvYUJHdXQ3ZjcvWmpqNTBzY25kczdlaU5UeWY0SG5LYXlXMHRKWUw5U2xXT3FUZGlEelBTYXVRMkVJREFLZ2tnc0s5eVdoa1VCQ0NRUU1DUm1uNlp2RWVOZjJ6QzVYOVV4Uy9qYnc0SjdYeVU4cWcramN6MG1xWWZCL1prdEdlbGs4TE92ZGdHNU5xU2psM1QwYWx0RnViT2JoLzdaM0gyVUVuMjRvNGxybXZpODZGcXZUMGtQQmVHL2tBdlBRZitmRGg2LzBZdE4zcDJpTXh1U2hqblorQTlLekg5OFRQZlNDakIwdS9UUGdGaFJrM0o5R3dYOWs1SlYyM29nRGNwbkpqVkNiYUhSTkNYR0I5dFFtQk1BbE1LN0I2blA4OS9IcXlpL0o3WXRmaGQwTWtnUDdMQXozS3F1SjVpRDlhVjJ4ajF1eVMxZFg5eW5FUmRnc0R1WkwyMnJydCt6U1JnRHpQR3l1UWVFSURBS2dnZ3NLOWlHaGtFQkNBd2tJQWpMUDl2ZFRUeTBsVnluNHRXSXRKZlZUWUpUbEJuMGFtdVdFajZkbVdMWUsvR0QwaDZReVdNL0dlR0tKZUJ3eWgyK1JBLzQyS2R5dGd3QW50R21DdHJ5dTlKcHduV0FWY09tM0dPeHQ2T3lONDhENzRwNmJBZ29scGNMeFdkblJ1eGo4NC9LMnhBTmJYOVRFbTNrK1NJYjUvTzhjWkJVM0hFdmlQLzdHZThoTTIzb1R3ZEpXKy8rb2UzTkdReDZqcVMzaTNwaGVGL04xVzNWWTA5Y0pjb3pnMWx5ZlVRbUJzQlB4OFBrdlIzNGYzd0REdWJhTjQ4dFUyV1A5cyt0ZmdlU2JtVFpJN0ZKTlZ6M2Q5NVR0RDh5ckU2bHZrK1hVVjJ6N0UzangvWDh6Mi9pOEIrUVBWZDR0TmtZeGRIOTc4bXZPL3MzdHRKYmgrY3FVTU9QdnJCeW9LUU1xR2hHUWhBWUEwRUVOalhNSXVNQVFJUWdFQlpBZ2pzWmZuU09nU21JbUR4eUVKNFc1VG1DNEluKzBZc1R4SGtQUjZMTUQ3aDh2OUpldDhDUEhyN3pJR0ZFQXNQZDBvUTF4Mlo3cExxQmZ4bFNVK1ZaUDZIOStrYzEwQUFBaEJJSkpDYTNOclA5WnRKOGltREpaKzBzY2p1NEpqekpQSnhOVzkrT2tuNXB6cU92WXZBM25aNm8wTlhaMXVWQk5pem5SbzZCZ0VJNUNDQXdKNkRJbTFBQUFJUVdEY0JCUFoxenkrajIwOENLVUx2MnlzeDRWbzFFWmtwd3Z3dTFVMmtwNCtiLzJycmo0NzAzLzF2c1JueGozVDdwamNWVzBINVZOSnhXdXJZQXNLbkU1cktLY05wcHQyL08rR28vZlJQS09rNWtXajBwa2hQK3p5L1ROSWxZZ01OZi9mbWhrOUZ2Q1VrazNXaVhGdDBiWmRmU0hLa2ZLbmk4WjVvSVBPemhGTU5UdytuSVVyMWxYWWhBSUYwQXFtYnBtN1J6NzlIZGhTWTAzc3liczJ1ejJIM0xpVXA5ZTRvRU5qL1FBU0JmZHcxenQwZ0FJR1JDU0N3and5YzIwRUFBaEJZSUFFRTlnVk9HbDJHUUlTQWZlYmZWRVh4WGFDaFhpeUJuUzIwbnBRNUllemNKODBDdGtYeFQwdHE4NnoxT0N5dTIxUGRRbnBkcEdjWFVXdnVYTHIwNytCd2FxTExOZFNGQUFUS0VEaFRGY1g5OHNURW44NVo5SWlWMlh0MGVRNXZyTks2NWxSQllFZGdML1BwcFZVSVFHQjJCQkRZWnpjbGRBZ0NFSURBN0FnZ3NNOXVTdWdRQkxJUXVIV3dJZGx0TENhdWIrcmJzOWRldkU2UWV1SXNQWnAzSS9iWXY4WldFdGVMVkxrNzN0V1FQRGtsMHRQODdHMy9xTXBxeGhZTmF5K2ZEN2xPc0x4Wiswd3p2aVVRdUt5a2wxWWJwYWRJNk93YXhmWE5zUDNzOWZQNmdTMGNuTURhdVRGOFVxaHJRV0QvQXpFaTJMdXVIdXBEQUFLTElvREF2cWpwb3JNUWdBQUVKaUhROU9OZ1NTL0t0b0t3eFlJVGxPMFdrcHhPc3F5NDZRd0kyQWJsSFRzK3RJN1N2bUpJc3BuYVJZdnI5NVoweDVVTHhkNlFzTDNKcGpSRnNYZU5kSFNDT1lzN2g2UUNYMmk5KzFmOXZ0OUMrMDYzSWJBMkFsY05KMnlPSHhuWVhhc04xTWVzeEJhbWFhaldSUHl1YS91dlhSNU5WbW1wNndHQi9RK2tsdlM3SVhWK3FRY0JDRURnOXdRUTJGa01FSUFBQkNBUUk0REFIaVBFM3lHd1hBTGJVZXhObnVHcG83TnR6SFVrM2EwU0tzNlpldEZDNm4xSDBzVWtmV1dudjd0UjdFUEVtTk5YUHVyL1VDVTF2WTBrSjFCZFUvbDJ0Wmx6U1VsZld0T2dHQXNFRms2Z1RXUmZTMExUTGxOa3k1d1hTZkp6M1NYMU5GZmJQYm9JN0U0Z2U2RXVIVjVZM1I5S2VsamhmQ0VMUTBKM0lRQ0JOUkZBWUYvVGJESVdDRUFBQW1VSUlMQ1g0VXFyRUpnRGdlMG85aFJiazlRK0gxZlNoU1ZkSmdqVDU2aXNaSnhVYnFsV0tDK1JkT09hNUp6YlVlenZyUHpacnkzSklzS1FZdXNZODdwUmlLbzhqNlJqREdsd0J0YytPVmdzMVBuUno2QjdkQUVDZTB1Z1RtVC9lYkQvZXNNZVV2SG1wazlqK1orcmR6ek5WWWVyaThDK2g3Z1pNZ1FnQUlIMUVFQmdYODljTWhJSVFBQUNwUWdnc0pjaVM3c1FtQWNCUjdHZkx3aWdYUk80NVJqQkFTMFIyeGFiRDV5QngvdEhKWDI5WWJCL0xla3BRWkJxcWpPVTB3a2xuU2ljREdqeVRENU9pSDcwNWthc21LdjdmYkpROFJPU3ZodTdxTWZmSGJIdXFQOFBTdnBXait1NUJBSVFLRS9nbWlINXNEZEF2eUhKMW5tZkxIL2JXZC9CejlGZlp1Z2hBbnNHaURRQkFRaEFZQWtFRU5pWE1FdjBFUUlRZ01DMEJCRFlwK1hQM1NGUW1vQ2pzRjErVy9wR0syM2YvQnoxK0xPVmpvOWhRUUFDNnlkd0xVazNyUVIyMjVUWUVvdVNod0FDZXg2T3RBSUJDRUJnOWdRUTJHYy9SWFFRQWhDQXdPUUVITVZ6MHBwZUhGVkZ2UDZnU203b2Y4KzlPRnJ6NUZVaVFmOTd0L3dvVTVUUzNCblFQd2hBQUFJUWdBQUVJQUNCOFFqNGROaHRhMjczNnVyRTBadkc2d1ozZ2dBRUlBQ0IwZ1FRMkVzVHBuMElRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQllKUUVFOWxWT0s0T0NBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQ0IwZ1FRMkVzVHBuMElRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQllKUUVFOWxWT0s0T0NBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQ0IwZ1FRMkVzVHBuMElRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQllKUUVFOWxWT0s0T0NBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQ0IwZ1FRMkVzVHBuMElRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQllKUUVFOWxWT0s0T0NBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQ0IwZ1FRMkVzVHBuMElRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQllKUUVFOWxWT0s0T0NBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQ0IwZ1FRMkVzVHBuMElRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQllKUUVFOWxWT0s0T0NBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQ0IwZ1FRMkVzVHBuMElRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQllKUUVFOWxWT0s0T0NBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQ0IwZ1FRMkVzVHBuMElRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQllKUUVFOWxWT0s0T0NBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQ0IwZ1FRMkVzVHBuMElRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQllKUUVFOWxWT0s0T0NBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQ0IwZ1FRMkVzVHBuMElRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQllKUUVFOWxWT0s0T0NBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQ0IwZ1FRMkVzVHBuMElRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQllKUUVFOWxWT0s0T0NBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQ0IwZ1FRMkVzVHBuMElRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQllKUUVFOWxWT0s0T0NBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQ0IwZ1FRMkVzVHBuMElRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQllKWUgvSHl5dnVqMG12ZHo0QUFBQUFFbEZUa1N1UW1DQyIvPjwvc3dpdGNoPjwvZz48L2c+PC9nPjxnIGRhdGEtY2VsbC1pZD0iZTJhIj48Zz48cGF0aCBkPSJNIDc1MyAxOTMgTCA3NTMgMjkyLjc2IiBmaWxsPSJub25lIiBzdHJva2U9IiMyODY0OTQiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBwb2ludGVyLWV2ZW50cz0ic3Ryb2tlIiBzdHlsZT0ic3Ryb2tlOiBsaWdodC1kYXJrKHJnYig0MCwgMTAwLCAxNDgpLCByZ2IoMTE1LCAxNjcsIDIwOCkpOyIvPjxwYXRoIGQ9Ik0gNzUzIDMwMC43NiBMIDc0OSAyOTIuNzYgTCA3NTcgMjkyLjc2IFoiIGZpbGw9IiMyODY0OTQiIHN0cm9rZT0iIzI4NjQ5NCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIHBvaW50ZXItZXZlbnRzPSJhbGwiIHN0eWxlPSJmaWxsOiBsaWdodC1kYXJrKHJnYig0MCwgMTAwLCAxNDgpLCByZ2IoMTE1LCAxNjcsIDIwOCkpOyBzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7Ii8+PC9nPjwvZz48ZyBkYXRhLWNlbGwtaWQ9ImUyYiI+PGc+PHBhdGggZD0iTSA3NTMgNDAzIEwgNzUzIDQ5Ny43NiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjMjg2NDk0IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgcG9pbnRlci1ldmVudHM9InN0cm9rZSIgc3R5bGU9InN0cm9rZTogbGlnaHQtZGFyayhyZ2IoNDAsIDEwMCwgMTQ4KSwgcmdiKDExNSwgMTY3LCAyMDgpKTsiLz48cGF0aCBkPSJNIDc1MyA1MDUuNzYgTCA3NDkgNDk3Ljc2IEwgNzU3IDQ5Ny43NiBaIiBmaWxsPSIjMjg2NDk0IiBzdHJva2U9IiMyODY0OTQiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBwb2ludGVyLWV2ZW50cz0iYWxsIiBzdHlsZT0iZmlsbDogbGlnaHQtZGFyayhyZ2IoNDAsIDEwMCwgMTQ4KSwgcmdiKDExNSwgMTY3LCAyMDgpKTsgc3Ryb2tlOiBsaWdodC1kYXJrKHJnYig0MCwgMTAwLCAxNDgpLCByZ2IoMTE1LCAxNjcsIDIwOCkpOyIvPjwvZz48L2c+PGcgZGF0YS1jZWxsLWlkPSJlMmMiPjxnPjxwYXRoIGQ9Ik0gNzUzIDYwOCBMIDc1MyA3MDIuNzYiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzI4NjQ5NCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIHBvaW50ZXItZXZlbnRzPSJzdHJva2UiIHN0eWxlPSJzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7Ii8+PHBhdGggZD0iTSA3NTMgNzEwLjc2IEwgNzQ5IDcwMi43NiBMIDc1NyA3MDIuNzYgWiIgZmlsbD0iIzI4NjQ5NCIgc3Ryb2tlPSIjMjg2NDk0IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgcG9pbnRlci1ldmVudHM9ImFsbCIgc3R5bGU9ImZpbGw6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7IHN0cm9rZTogbGlnaHQtZGFyayhyZ2IoNDAsIDEwMCwgMTQ4KSwgcmdiKDExNSwgMTY3LCAyMDgpKTsiLz48L2c+PC9nPjxnIGRhdGEtY2VsbC1pZD0idzMiPjxnPjxyZWN0IHg9IjEwOTMiIHk9IjMwMyIgd2lkdGg9IjQwMCIgaGVpZ2h0PSIxMDAiIGZpbGw9IiNlYWYyZjgiIHN0cm9rZT0iIzMzNTU2ZiIgc3Ryb2tlLXdpZHRoPSIyIiBwb2ludGVyLWV2ZW50cz0iYWxsIiBzdHlsZT0iZmlsbDogbGlnaHQtZGFyayhyZ2IoMjM0LCAyNDIsIDI0OCksIHJnYigyNCwgMzEsIDM2KSk7IHN0cm9rZTogbGlnaHQtZGFyayhyZ2IoNTEsIDg1LCAxMTEpLCByZ2IoMTQ0LCAxNzMsIDE5NSkpOyIvPjwvZz48Zz48Zz48c3dpdGNoPjxmb3JlaWduT2JqZWN0IHN0eWxlPSJvdmVyZmxvdzogdmlzaWJsZTsgdGV4dC1hbGlnbjogbGVmdDsiIHBvaW50ZXItZXZlbnRzPSJub25lIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiByZXF1aXJlZEZlYXR1cmVzPSJodHRwOi8vd3d3LnczLm9yZy9UUi9TVkcxMS9mZWF0dXJlI0V4dGVuc2liaWxpdHkiPjxkaXYgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiIHN0eWxlPSJkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogdW5zYWZlIGNlbnRlcjsganVzdGlmeS1jb250ZW50OiB1bnNhZmUgY2VudGVyOyB3aWR0aDogMzc0cHg7IGhlaWdodDogMXB4OyBwYWRkaW5nLXRvcDogMzUzcHg7IG1hcmdpbi1sZWZ0OiAxMTA2cHg7Ij48ZGl2IHN0eWxlPSJib3gtc2l6aW5nOiBib3JkZXItYm94OyBmb250LXNpemU6IDA7IHRleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICMwMDAwMDA7ICI+PGRpdiBzdHlsZT0iZGlzcGxheTogaW5saW5lLWJsb2NrOyBmb250LXNpemU6IDIwcHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtNaWNyb3NvZnQgWWFIZWkmcXVvdDs7IGNvbG9yOiBsaWdodC1kYXJrKCMwMDAwMDAsICNmZmZmZmYpOyBsaW5lLWhlaWdodDogMS4yOyBwb2ludGVyLWV2ZW50czogYWxsOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3b3JkLXdyYXA6IG5vcm1hbDsgIj5XMDUgKyBXMDY8YnIgLz5TMDgx4oCTUzEyMCDCtyAyw5cyMCBEVVRDb250ZXh0PC9kaXY+PC9kaXY+PC9kaXY+PC9mb3JlaWduT2JqZWN0PjxpbWFnZSB4PSIxMTA2IiB5PSIzMjkuNSIgd2lkdGg9IjM3NCIgaGVpZ2h0PSI1MyIgeGxpbms6aHJlZj0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUJkZ0FBQURVQ0FZQUFBQ1B0VUhVQUFBQUFYTlNSMElBcnM0YzZRQUFJQUJKUkVGVWVGN3RuUWNjTlRsWnI5OExpcFNMd0s1U2xDb2d6WUxLQWd0SVcrb0NGK2xGQmFTSVNwT3FGT2xJN3lCSWs5NEZXVkNxZ1BTcW9zS0NGR25TcEJmaGduanYvQ0VqWjgvTzVFMG15WnlaYzU3OGZoL2Z4NTVNSm5tU3lVeitlZk8rLzh0SUVJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlaQlA0WDlsWGNBRUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUtHd000Z2dBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaE1JSURBUGdFYWwwQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVFTmdaQXhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFDQkNRUVEyQ2RBNHhJSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBSTdZd0FDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnTUlFQUF2c0VhRndDQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUVCZ1p3eEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ1lRUUdDZkFJMUxJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlJN0l3QkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdNQUVBZ2pzRTZCeENRUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFnWjB4QUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDWVFBQ0JmUUkwTG9FQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSUlMQXpCaUFBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRXdnZ3NFK0F4aVVRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFSMnhnQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFZQUlCQlBZSjBMZ0VBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJSURBemhpQUFBUWdBQUVJUUFBQ3l5ZHdjak03aTVsZHdNeU9OTE5mTTdNZk03Ti9OTE12bU5rSHpld2padmFkNVRlRkdrSUFBZ3Nsc0cvenpQODJzek1Oekp0Zk5iTy9ON1AvTXJOUG10bEh6ZXpMWnZiL0Z0b3ZWQXNDRUlBQUJDQUFnWVVUUUdCZmVBZFJQUWhBQUFJUWdNQ09DRnpjekc0Y3ViZUUzRWNIWVdLT0trb291YU9aL2V6SXpUNFc2dlB0R1NyemY4enNxcEg3ZkxnVHdSOWJRZXlXa0g0VE03dUZtWjBuc1YwZjZoZzkyY3llYm1aZlNyeG1hcllMZHVMK0gweTllTUoxRXNBZVpHWVN4MGo3UWVBNlpuYjVTRk8rWW1ZUG1XRXM5MVdRR0hzbk16djFTSjNlRTU2djFrS3MxbWg2N2k4VVlmUE9idFB0cVJXR3dkTG5tWndtbnRUTXptOW10ekt6YTVqWjZUTXUvdTl1WGxmL1Bzbk0vbXJHTVpkUlJiSkNBQUlRZ0FBRUlMQlVBZ2pzUyswWjZnVUJDRUFBQWhEWUxRRlpTTCtwRTdkT0dhbkc3M1hXZ1g4K1V6Vzkra2g4dllTWkhkKzRQckx3L0Vzek96WnlING5ydHkyb2gwUytlNXFaK0U1TkVvc2UzMWxvM3NQTXZqNjFFT2U2cTVuWmNZM0tIaXBXbHFZWE5iUFB6bmhQYnRXV2dEYXJYaGE1aFlUc0szVFA5dXZhVnVOL1N2ZnE4d0V6dTVTWmZiRnhmWDdLelA0dWlNVmp0eXFkZjljeXo2U2dQb1daYWJQbWZtWjIxcFFMRXZKY3VadHZYcFdRanl3UWdBQUVJQUFCQ0VEQUVOZ1pCQkNBQUFRZ0FBRUlEQkdReGZncmdwZzBSa2hDOC9YRE1mdldGRzlwWms5MGJuSXRNM3RKNDRxYzJjemVFYkdrMSsydlBsRjRsdldsVGcyb25UOWVxUjBTQXE5blpxK3ZWTjVtTVNsOVV2TzJDT3cxYVM2akxKMUllYXVablMxU25UODFzN3ZQVk4zSGRKYkx0NG5jU3lka0pMQy91M0Y5amdvQ3U0VGpvZlNmM1ROOVNUTjc3NFI2ckcyZWlUVlJhOW5MQkt2emMwNWdFYnRFbXkwdnIxd214VUVBQWhDQUFBUWdzS2NFRU5qM3RHTnBGZ1FnQUFFSVFLQUNnUWVZMmQwaTVYekN6T1JLNXQ4cjNDdFdoSHlOUDkvTUpLREhVcW5sZUVvekxtZG1yekViTlZMNFhHQWlselU1U1VMYUl6dnJiSW5XdFpPczJXOFhMTnBydXJiNG8rQ3lwWFo5eDhwRFlKK0w5SHozU1htMlpja3RsMHpmYkZ5dDA0Vm5PK2FXUlZVb3RSeFBhWWEzZVNWWEpyTHNsd3VkbkxUR2VXYXNmYWNLN29OYXVhbENZTThaV2VTRkFBUWdBQUVJSERnQkJQWURId0EwSHdJUWdBQUVJQkFoNEluSmM3bHZTTEZ5VlRPbWlrNDVnOERiZFBpYnNCR1FFMnhVUXBHczFuOHJweUlUOHNxMzlDTXFCdkxUNW90NHpKVVEyT2NpUGU5OVBERjVMdmRQbmh1cW5rcnJrenNwbXc1VE5oUFhPczhNalVhZEpIcXA0Nk8rZEJRanNKY1M1SG9JUUFBQ0VJREFBUkZBWUQrZ3pxYXBFSUFBQkNBQWdVd0NLY0wySE80YlBML0lmYk5LM0Nha29Fbnh2LzdIWnZiZ2xNSkNIcm1Da2E5MEJUUk1UZC9xZkx4TGRKUWJIMW5kcGlaWnNsODMrSkJQdlNhVzd4bG1kcU1hQlNXV2djQ2VDR3BsMlZLRWJXMCtQYWR4dTFKUFpMUSt1WlBpZnozWERkV2E1NW50YmorWG1Xa2o4OXdUeG9QaU4veVhtV2tUUXo3b1l3bUJmUUpnTG9FQUJDQUFBUWdjS2dFRTlrUHRlZG9OQVFoQUFBSVE4QWxJaEhoVzhMTStsbnNPOXcyZVgrVE51clYwMy9CendWLzBHVWRnU0xpUlArQzMrR2ovSjhjZE82SDhZUW41WHhzQytNbjM4NloxdklTejg1dVp5dm50aEhMa3V1WVlNL3Q0UWw0dkN3SzdSNGpmVXdpY3hzeGViV1lYaVdSK3VwbmR0T0xwaSsxYnBXeWU5ZGUwUHJtallNMXZDQ0x3RUpJcGJxaldQTTlzTXBDdmZzMkZLZUs2L09VL00vejVweEVYUStyM3MzUUJ2UzlyWmpmZnNvaEhZRTk1ZXNrREFRaEFBQUlRZ01BUENDQ3dNeEFnQUFFSVFBQUNFSWdSK0UwemUzWWt3eFN4SjRkNHFsL2t2c3lXN2hzOFMvb1BoQUNJQ2l5YWtpNGNoTVhUUmpKL3FoUERieElFTjg5LytpK1oyUXM2Zi9YbmRXNysxT0JIV2hzQ1UxTXNDSzZFcld1WW1VU3RtdW43WFFES0w1bVovaWJ0RndIUDlWSnI5MC9lNXRrMjdaWW5kenhMK2x3M1ZHdWVaemE1YXlORzg3czJDR1BwNjJaMmV6TjducGxwTHNwSmNxT2p3TjBQTkxPYkVlUTBCeDE1SVFBQkNFQUFBb2ROQUlIOXNQdWYxa01BQWhDQUFBUThBdWNMRnRsSFJETG11aXZ3N3JuNWU0cjdpTTM4TGQwM2VDSmdqcFd0Z2cyK01BUnZIT01oVVZGQzlhY3pnS1g0SnY1dTE2ZnlyLy9takhLM3M4WUVkZ1c5dldobXZRdXF3cVY3UU1DTDk5RGEvWk8zZWJhTnVOWEpuUlQvNnpsdXFOWSt6L1RjVTEzY3ZDUzQyNUlMclpKMFVqTTdpWmw5cjZRUXJvVUFCQ0FBQVFoQTRIQUlJTEFmVGwvVFVnaEFBQUlRZ01BVUFqRWh0Uzl2U3NDOTFMcDRBUkMzeTJubHZpR0ZRNDZmNkd1YTJZc2pwd2svM0xtanVieVphY01nTjhsSDhac2NIOE12TWpPZFRwZ3FJSjNCek43V3VWK1E1ZTkyd2xkNmJvK1JQeVhlUTB2M1R6bHVxTlJiclFLdmVoeHkzVkN0Zlo3cG53ejEvUk9jeCtRK0llankxRG1OcHhBQ0VJQUFCQ0FBQVFoTUpvREFQaGtkRjBJQUFoQ0FBQVFPaG9CbnVkM0tmVU9LTmVkUUo3UnczK0JaOHVjSWJwNVlYeU1ZcWNSKytjOGZTN0ppdjdTWnZYM2lLRmFBd0hlWTJWa0hyczkxbFRPeENseTJSd1JTbnZWVzdwOXkzVkQxMkhNMjFGSzd5clBrejNtMjltR2VFYmVVRFVPNTFYbG9ReC85cWYxSFBnaEFBQUlRZ0FBRURwUUFBdnVCZGp6TmhnQUVJQUFCQ0dRUThJTHV0WExmY0k3Z3hrUlduZHZwK003ZnVFVHZvWlRyb3pnRmhlZENRa0VhNWM0bHhlZnZsY3hNZFJ6N0RpdTFMbGQ3UEhGTmVVbzJJbUkrcTF1NXowanBKL0tzbDRBWDc2R1YrNmVqdTgybU4zYlB3OGt5NTVrV0ozYzgvK3VQNytJUTNDWlJTTjZIZVVhdVlaNFU0bENNamV3bm05bXRDazdqclBlSm9lWVFnQUFFSUFBQkNDeUdBQUw3WXJxQ2lrQUFBaENBQUFRV1MrQ256RXlpNmZrak5Xemh2aUVtYWt0b2t2c1lXYjV1cHhhQlZ6MFhFcWwra1ZWZldaWXJrTjVRS3JVczN5eFQ5MUNndjdHVVl3MjdYVWJNTi83Zm1wbjg4bjlyc1NPYWlpMlJnSGRLcEpYN3B6RlJXNXRsendnQmdZZDQxVDY1Yy9JUXhQUFlTT2VreHJ2WWwzbm0xODNzZFNPYkg4TDBiak83Y2doK3ZNUXhUWjBnQUFFSVFBQUNFRGdRQWdqc0I5TFJOQk1DRUlBQUJDQlFRRURmQzA5enJBaGJ1RzhZRTdVbHROMjFzMWk4dTVtZGVxUmRxVUpVQ2hiUGhVU09YK1NZVmI3cWttTUo3OVZkZnRKbG1YdmVrWXdsZ3VWUllkTkZRUlMzMHpQTjdNWmU1ZmdkQWxzRVdwKzZHQUllRTdYbDl1a2hadmFna1o2cWZYSW5kaXBFVmNqWk9OeUhlY1lMMEZvaldETVBJUVFnQUFFSVFBQUNFS2hDQUlHOUNrWUtnUUFFSUFBQkNPdzlBYzk5dzhmTTdHSm05dmxLSkdLaXRvU3Y2NWlaWEFNTUJkbFVGV3E2Yi9Bc2EzTXN3VDJPdGYwNmUvN3pwN3FKdVpxWkhUZlMxd2pzbFI2Q0F5ekdHNisxVDBmRVJHMDkxN2NQd1lqSE52SnFudHp4L0svbnVMN2FoM2ttNXJwSGo4YWpRLzlvbzVBRUFRaEFBQUlRZ0FBRWRrb0FnWDJuK0xrNUJDQUFBUWhBWURVRVBKRTV4NG83cGRFeEZ5Unl6U0IvNTAvdmZMUWZNMUpZVGZjTm5saWxldHcwd1MreWR4SWd4MEkxaGFIeTFCVHROdThaRTloMXNrRENQUWtDdVFTODhWcjdHWW01b2RLcG5EOE1KelhHTnZKcW50enhOaGRTM1ZEdHd6eWpObWlUVkw3Vmg5SVhRNURtOStjT01QSkRBQUlRZ0FBRUlBQ0JGZ1FRMkZ0UXBVd0lRQUFDRUlEQS9oRkk4UStjS2dDbDBKRi85U2VPWk93RjdmdWIyZDFHOHRSMDMvQVVNN3RacE5LcFZ1ZWVML3NjQzlVVWhzcWpBTEZ2TmJPempWenc3MloyVVRQN2RHcUJJZDhkT3ZjOER4KzVwdVk0eUt6VzNtUWZjNWZ5eWRCZm45MmJscDZ3SWQ0em90dzEzVC9GWWl0b0hHdU1QOS9NcmpYQ3UxYmcxVk9aMmNzaUc0WTVHNWdld3pYTU01NkxtNXhncjN2NnFOQXNDRUFBQWhDQUFBU1dSQUNCZlVtOVFWMGdBQUVJUUFBQ3l5WXdGZ3l3cjNVdDRVWUIrbUtpVmk5b3g2eFBWYWNhN2hzOC8rdHlWM01KTXpzK29ldGlmc3QxK1ZSM0xiRmJleHNqT2NMZDVuMWlZeUYxd3lFQjJjRm1PVlNCM2JPKzFvQ281ZjRwOW14dlBoZXhzVjRTeDJCemNIdisxM1BjVU8zRFBCTTdOVlF6RVBUQlRqQTBIQUlRZ0FBRUlBQ0J1Z1FRMk92eXBEUUlRQUFDRUlEQVBoT1FrUHdHTTVNQVBwUnF1VytJaVUyYmdyWW5TdFZ3M3hCelZTTUdmMmRtVnpXemJ5WjB2T2RxNWxnemUyVkNPYmxaUE5jVFV3VHhtT1d2Tmo1ZW5sdEo4cCtBd0tFSzdJTGdQU2UxM0QvRjVyTk5RZHViOTJwc2pIbWJoYWx1cUZMNExYMmU4VFpZMzJsbVYrejhyMytOT1FNQ0VJQUFCQ0FBQVFnc2hRQUMrMUo2Z25wQUFBSVFnQUFFbGsvQWN6MmdGdFJ3M3hBVG16WUZiYzg2dTBiZzFaaXJHclUzUjF5TGlkTGZNTE5mNzN6THY2L0JNTGltbVdtellTemx0S0V2NHhsbWRxT1JBbHNKZUEzUUxMYklReGJZdlhnUHRkdy94U3pUTndWdGI5NnJFWGcxTmpkb2tPWnNncTE5bnZIY3c5eW5BM0x2eFQ2NVZBd0NFSUFBQkNBQWdZTWtnTUIra04xT295RUFBUWhBQUFLVENIaUI1MVJvRGZjTk1ZRm9XMXlKaVdSVDNaLzBjRHgzRlRudUllYllEQmpyVk04Qzk3bEJ3Rk43VXBLNFBOdk1iamlRdVpiNG1WS1BmYzV6eUFMN0tjenNwY0ZLZWF5UFM5MC9lYy9qRFlLYkt0M2Ztd2RLVCs2TTlYWGY5aHczVkY2N2FtdzZ0cDVuWW9GdVMrZjBmWjR6YUJzRUlBQUJDRUFBQWpza2dNQytRL2pjR2dJUWdBQUVJTEJDQXA0cmcxTDNEYWwra1h0MG5uaGNFbkRUczF6TkNYRG9sWlhqYWlaMzJIZ1d3Ym4zamdtQ0NPeTV2VE9jLzVBRmRoSHg0ajJVdW4rS3VaY2FFc3c5dHpVbEozZHFQcC83TU0vRVhGcmx6TGwxbmtSS2dRQUVJQUFCQ0VBQUFna0VFTmdUSUpFRkFoQ0FBQVFnQUlIL0llRDVQYyt4dGh6Q0d2TjVQaFRvenhPVVNnS3Zlc0VDYzBRK2o5c3p6ZXpHamNiWm1jenNIV1oyMXBIeWM2MWFZd0w3Sjgzc29tYjIyVVp0T1pSaUQxMWc5emJPY29KK0RvMloyRWJoMEp6aGllQWxKM2RxdW5CYSt6empXZUNYek9lSE1uZlFUZ2hBQUFJUWdBQUVka0FBZ1gwSDBMa2xCQ0FBQVFoQVlNVUVQQUZFVGN2eEY3eU40dGJCemN3UW9xRkFmeTNkTjNqKzEzUGNWSGpCVXFmNFFVOGRScDRMaWx4UlBDYlk1NWFWMm9aRHkzZm9BcnUzY1ZiaUtzUnpkVFYwNnNWN2hrcE83c1JjWXVXNG9kSXpzdlo1NWd4bTlqWXowMGJCVVBMbVNWMnZvTk5YTTdNTG1abm1xcE9FZ3I1blpqcWQ4UGNobVBTcnpVd1c4YW11c1E1dERxSzlFSUFBQkNBQUFRaGtFRUJnejRCRlZnaEFBQUlRZ0FBRWZrREFjOTh3SklTbm9QUEUrekhoM25OYk04Vjl3NDhGSDh6WEdxbDRyaXVVSzV1WnJDL0hVb2tyRzQrdEp3N210aVVtc0gvVnpGN1dzVHV2bWYxTWhOMDd6ZXo5WnZhdVRoQ1RPUGxOcnhFSDl2dWhDK3pleHBtR3c5Um5KaWJleDRUNzJMeVgrd3oxd3pubUVrdDVjbDJpckgyZStXVXplN09ablhya2VSL2ExRHlwbVYzS3pCNWtaanAxbEpNKzJnbnc5eld6RjNYdnRXL25YRWhlQ0VBQUFoQ0FBQVFnc0VrQWdaM3hBQUVJUUFBQ0VJQkFMZ0hQU25LcSs0YVllNE9ZNnhuUExjSVU5dzJlSldXdXhhb3NLbytMZ0M2eCtrL3B2MmVZMlkwaWd2Y2xPNnZQOTZZVVpHYWV1NHpFWWs2UTdUTm05bWd6VXowL1A2V0FQYnZtMEFWMmRhZTNjVGJWWFVqTS9VeHM3dkxjMXVTY2FPbUhxeWNvNTdpaFVwbHJuMmU4RFlKamcvVjV6Ky9NWnFZTjNXTUtuMzhKN2IvYkNmVnZ3S0s5a0NTWFF3QUNFSUFBQkE2VUFBTDdnWFk4ellZQUJDQUFBUWdVRVBDc0xxZTZiNGdKYXJGQW5KN2xlNjRZTGpTZW1KWXIydCtoczhwOGVJUzUydjd5Z2o3eExxMHBzSHNiTEY1ZHZOOWZhbVozTmJNUGVSbjMrSGNFOWgrNkNYbXJtWjF4cEorSGdwR21ESW1ZSlhyczlJM250aVpYREZkZHZlQ3B1YUw5MnVlWm1GdXU3Vk1DUjRkTlMvVkxyZlJJTTdzNzF1eTFjRklPQkNBQUFRaEE0SEFJSUxBZlRsL1RVZ2hBQUFJUWdFQk5Bakcvd2JyUEZQY05zVEk5Mzd1MTNUZDRibkJ5M2M1NDVlMVNZRmQvNWR6ZjIzeW9OYzYwaVNHaC9WdTFDbHhST1Fqc1p0N0dtYm96OXpuMHlveWRKUEhjMXVTNmMvSEttK0oyWnUzelRLeitteHNxRnpZeitWQS9iWU5uK3RtZHIzWnRiQnppdk5NQUowVkNBQUlRZ0FBRURvTUFBdnRoOURPdGhBQUVJQUFCQ05RbVVOdDlROHdxUGlYUW55ZjY1cmhnOGZ5dlQ3R2NqUWxIS2UwcjdiKzdtZGtESW9Ya0NPeWVHNHJTdW01ZS8wRXp1NmFaSFYrejBCV1VoY0QrdzA3eUJPUGNreVJUM1ZEMVF5Wm1jWjU3Y3NjN0NUVGw1TTNhNTVuWVNacytnUExKek95MVpuYnVocy94azgzc1ZwMDF1d0tqa2lBQUFRaEFBQUlRZ0lCTEFJSGRSVVFHQ0VBQUFoQ0FBQVFHQ0p3akJLUDcyUkU2dWRhY01iY2pLV1Y1N2h0eUFxK3FUWEpOY2JhUnRrM3gvVnpid2o1M1VIcENaWTdBTHNGYjdqRG1TbDgwTS9sbWx1QjRLQW1CL1ljOUxUY2dielF6aWFwREtlWTZhaWovVkRkVWZWbGUvSUdja3p1ZXE2WGN6UVBWY2UzempDZXdYODdNSHQvTno1ZVB2SGRrMmY2bTd2VEwvdzE1ZnNMTUxoYjh0SjhuWXdJUnk0ZmlrejJER0ZraEFBRUlRQUFDQjB3QWdmMkFPNSttUXdBQ0VJQUFCQW9JZUZiZXVWYlpNV0VveGJleDUyNGhKL0NxUkp6WG1ObllkMUtPaU5ZanJ1a0RmVXEzMVJUWU44djZielA3ckpucDd6N0p0Y1U3ZzhCMStzNVA4cStHSCtSTCs4ZW5WTjdNRGsxa1IyRC80VUR4ckx4andZKzNoNW8zUjNodXFGVGVXTC8wOThyWmZJdjVHMWQ1dWU1dmRNMmE1eG1QclN6WW45aHR0cWlmdGxQLzN6L2x6QzlIZG9MNXZZSjEra21jdkY4MXN5dWEyYnNtemxsY0JnRUlRQUFDRUlEQUFSRkFZRCtnenFhcEVJQUFCQ0FBZ2NvRVBJRW9SYkJTbFR5L3lLbUIvbXE1YjRpNVU4bDFBOUVqWDdQd3RUMXNKSVNKdzNjbWpDZjE5UytaMmJYTTdIYzZhOVNmemlqanpXWW05elJmeTdobXJWa1IySC9VYzE2OGgxVDNUN0ZUTGprYmduSzFwRGxpS0tXNmo5SWFUTDYrYjFoWXp2YmxhNTVuUElGZG0zaWFjMDY1MFdnSjZwcEwzcDM1b0dzT2VvR1puZGU1N2hWbWRsMkNubWJTSlRzRUlBQUJDRURnQUFrZ3NCOWdwOU5rQ0VBQUFoQ0FRQ1VDbm91RFZQY05NYi9JT1lIK2FyaHY4TVQrSEV2NFRjeHJGcjRxRFpjVEZYTlNNN3RJRjZqd1VXWjJWT0pON3Q5Wnk5OXo0VzRiOUgxOVJNU3RTVXBUVDJWbXp6S3ppMjVsL2t4blVYdXNtWDBocFpDUlBOODNzeStabWY1ZVEvTGlQYVM2ZjRyRmFVaHhROVd6OGs2NHBGaWVleTZ0Y2l6aDkyV2U4UVQyN2JINi9rNVl2MHEzVWFlK201TGtBc3p6NVM1Ui8wb2gzNVI3Y0EwRUlBQUJDRUFBQWdkQ0FJSDlRRHFhWmtJQUFoQ0FBQVFhRUtqbHZpRW1vT1VFK3ZNRW1oVFJLaWIyQzJHcW1MZU4reWxtZHJPUlBzalpSSmphalo2TEdJbTJyNXhhZU9GMUV0cXZaMllLTExocG5UcFVyRnpGWE5yTUpLNHROWG5qY05mMTdvTkZ5clhQR3BMM1RLWnVlcFc2b2VwWmVURWFVbnluZTBHWnA3aWhVdjNXUE0va1BEY2ZEbjdZcDRycmZWOWV1UFB6TDUvdHA0MDhDRlBuL0RVOFc5UVJBaENBQUFRZ0FJRktCQkRZSzRHa0dBaEFBQUlRZ01DQkVvaTVTeENTRlBjTk1SY1FLV0xWSnZwUzl3MmVkZW9OT3JjQ3o1L1ExekZ4TDhjOXhZUmIvK0NTWFZ2UXA5VDdRa0hrbDNWdkxOMm4rL0hlS1FYdUtFK09VTGlMS3E1TllQZmlQYVM0YmZKT3BxUzZvVkovZWZWSjJSU011ZGY2YnRoRWV2dUV3YkhtZVNiMXVaRlZ1ZHkyMUFxMDdHMCs1cHh1bU5CbFhBSUJDRUFBQWhDQXdENFFRR0RmaDE2a0RSQ0FBQVFnQUlIZEVmQUVhYy82TDJZRkwrRlpsdFd2eW1pZVZ4L1BmVU9wUUQ5V1ZVL0VrUlgveXpQYW1adDFEUUs3MnBSaVVmckJJRUIrUGhmQ1RQbFRoY0tacW5PaTI2eE5ZRmNEdkhnUG5zVjN6QXBld1N4LzNjeitKYU5EWXZYeFRxVFVFT2ozY1o1SmZXNWVaR2FLdC9HOWpQNktaVDJIbVNtK2cwNG1qS1ZkbnZDcDFFeUtnUUFFSUFBQkNFQ2dKUUVFOXBaMEtSc0NFSUFBQkNDdy93UThkd21lTmVmUm5WajZ4aEYvMVZNc0I3MzZ4Q3ppUFlFbnhjWE1Hb1d2TDV1WlhGWWN2NURoZWtjemUxaWtMbk5ZL0plZzhNWlJTZGsxcmwyandPN0ZlNUExOC9WRDhOMGhSdnJ0ZVNQd1VtTkZiRjd1MVNkbUVWOHlSM245ditTTlBHK2VTWGx1cG15NmVzeTBIdFo3NFZhUmpLa0J1NzE3OFRzRUlBQUJDRUFBQW50S0FJRjlUenVXWmtFQUFoQ0FBQVJtSXVCWlkzclduTFg4SXZmTjllb1RFOU04WDgrZWxXd011U3d1bngzSmtPT2lJcmRyRlREelpaMlY1akVqRnk1TmNEMHl1SXFKQlQ2OWU3Y3BJOUZyaVNsRktOeGx2WmZXM3lrc3ZIZ1BzYzA0clhlZVptWTNHYm5SRlBIVXEwL3M1STduZjkwN1piT3Y4MHpLYytOdDJLYU1wYUU4WGlCZGJ3Tm42bjI1RGdJUWdBQUVJQUNCUFNHQXdMNG5IVWt6SUFBQkNFQUFBanNrNExsdkdCT1BhL3BGM214K3JENHhLOHFZeUpMaTV6bldCVmN6cytNaUdVckVlNi9yUGVIcUxjRVZ6emU4Z21iOC9kYkJxblRzbHM4Ti92MWwwYnEwcEEyTnA1clp4UW9xZGhJek81T1o2ZS90cE9Da0dvOVRrOFRvYTVuWkY2WVdzS1ByWXJFYVlxY2E1Tk5mRzJ2bkg2aDN5V21JV0gxaWdWZGptNHFmTTdPTG05bkhKakplOHp6anZRK0VSTS9WelNleWlWMTJQalBUUEhqRVNLWWx6cEVOTUZBa0JDQUFBUWhBQUFKVENTQ3dUeVhIZFJDQUFBUWdBQUVJOUFSK0lmaXdQZTBJa2pIcnY1akZ1R2Y1SHFQdnVXOFlDN3c2VlRCTEdRbXl4cGJJZDRxUnpLMkVJOTFPUXUwN09pdmVzNDdjdThUMVRVcmJwK1R4K25DS1c0OHA5ZGpWTldPYkltdTBQcS9GOEVxZGozNk4xYkgxeTVnbGVzeGlmSW9icXI0OVV6YmtQQkc1OUZsYyt6d1RpeFVoN3EwMkltT2JNTHJ2SVQ5M3RaNWZ5b0VBQkNBQUFRanNOUUVFOXIzdVhob0hBUWhBQUFJUW1JV0FaeUU5Sm1MRkJLb1NWd0JUM0RkNGJmQ0N0WHFnUFF2SmxpNEl2SHUzRlBjOUxtTy9uOEhNM21abTJvUVpTckx3bFlYNFVnT2RUbTEzZngwQys0a0plcjdMeHpaZGFydWg2bXMyeGFXVTE0WlNBZGw3MXBjK3o4U0NUSXU3VGw2OHBQVGhHcmplbS84UjJCdEFwMGdJUUFBQ0VJREFQaEZBWU4rbjNxUXRFSUFBQkNBQWdkMFJpQWtqWTI0WVloYmpzV0NrS2EzTXRVYjNoS2t4cS9lVXVpaVBKeGkzZEVIZytYeFdVTkZIcERaa3BueUhMbmdoc0o5NG9IbnhGWWJjUDNrVzR5V3hEN3l5aDZ6Ukw5ZHRETDFteEFxLzFBM1ZQc3d6ZHpDemgwZm1HRzNLdnJ6QkhPU05MUVQyQnRBcEVnSVFnQUFFSUxCUEJCRFk5NmszYVFzRUlBQUJDRUJnZHdSaXdwRnF0ZTIrd2JNeUx3bjBwL3ZsdW0rSUJTR04rVzFQSmU0Rkd2MTNNN3RvNTEvNDA2a0ZadVNMdGEzRUIzVkdGYkt6SXJDYnZjTE1MclZGN3RDRlBpL2V3L1pHV0NzM1ZIMjM1UHBUajIxRXh2eTJwejVBYTU5bnJoemNBSTIxdCtWbVlNdzl6YUUvZDZuamozd1FnQUFFSUFDQmd5V0F3SDZ3WFUvRElRQUJDRUFBQWxVSmVLNFAvdGJNSkpwL0s5dzFabFZkR3VoUHQ4aDEzeEN6ZUsvbDcvc3BabmF6RWVvMXJGZkhPalRXdGhxc3F3NmtVQmdDT3dMNzBManlmUE52dXp1S2JTNlZ1S0hxNithZER0bmNLUFFzM2t2ZFVQVjFXdk04ODhzaG5zZXBSeWFWVWhjNlkzTVZGdXd0Wm5IS2hBQUVJQUFCQ0J3UUFRVDJBK3BzbWdvQkNFQUFBaEJvU0VEZkZFOHpzNXVNM0dOYnlJMVpmcFlHK2xNVlBERnI4eDZlTmYxWThNUmNuSjcxYlltN2lyRzZlQmF0TFYzVDVQTFp6TzhKN0RXc2ZVdnExL3BhWE1RTUUvYkd4YVpvN3MxSnBXNm9WRU12T09ibVBieE52MUkzVkQyeE5jOHpIczlubXRtTkd6eDgzcmphOS9tbUFWS0toQUFFSUFBQkNCd1dBUVQydytwdldnc0JDRUFBQWhCb1NTQm1MYXI3OXRhY252aGR5MG94SnVKdnVtU0pXVTNXZEtGeWxKbkpHdjRVSTUzUUlnQ2hKK3JWRUJsYmpDblBaMzJ0VXdVdDZsNmpUQVQyY1lveE55di9hV2FYTkxQM0pvamZwVzZvVkVOUHhOL2N3SXE1UDZuaGhxb250dVo1eHJNa2I3VWg2QW43Mnlld2FqempsQUVCQ0VBQUFoQ0F3QjRSUUdEZm84NmtLUkNBQUFRZ0FJRWRFL0FDaGZaaWJrejByZWtxSmVhK1lWTTRqMjBNZk1MTUxtNW1FdVJMa3lmaTFMeFhYOWVZTDNveE9MYnovZjZxMG9ZMXVONFRDYmRkZ1RTb3drNkxSR0FmeCsvRmUraFBnclIyUTlYWE1EVitRMnhqb09hRzBkcm5tVmlnMDVvYkVac2p6SE5OcysvenpVNG5PMjRPQVFoQUFBSVEyQWNDQ096NzBJdTBBUUlRZ0FBRUlMQU1BdDR4Kzk3NjhESm05cktSS3RjOGl1OEpUWEw5Y2cvSHRVMU5xM0xQMmxWSWFsalY5bWhsRGZvc003ditDT3NXZ242dGtSZzdmYUI3dEhDblU2dnVOY3BCWUIrbjZNVjdlSzZaeWQzS1hUcFhVUThhS2FhR0c2cSthRzlqVVhYUmZEY1V0TFl2bzVZYktwVzM5bm5HODdOL20rNTB3dU5xUEdRYlpYaW5yMnE1NzZsY2JZcURBQVFnQUFFSVFHQXBCQkRZbDlJVDFBTUNFSUFBQkNDd0h3VHViV2IzR21sSzc0ZWtzb3NWQUFBZ0FFbEVRVlJkZ1Q3dk5wS25WcUMvRktGSkl0dk56ZXk0VHZ5NjBFaDlhZ3U1TVl0eVZlSDVadmJibmZBdlMvN1NkSTRRTUZDQzVGQjZ2SmxKckpJbCs1TFNrV2IyU2pPVEZmdFEyblFEc3FSNjE2d0xBdnM0VFcvalNIN1lkVExqQ1daMnJaRmlhcm1oVXZIZXhxSk83anpLek41cVptY2NxRTlOTjFSOThXdWVaMDVqWnEvdTVvQ0xqUFRkTzgzc2ltYjJ0VW9Qbk9lVzVoRG1tMG9vS1FZQ0VJQUFCQ0J3dUFRUTJBKzM3Mms1QkNBQUFRaEFvQVdCbUZzR2ljWlhNN003ZGNMdk1TTTNyMjBwR0xOTWxMWDg3NXZaUzgzc2lJSDZ0QkJXNUZ2OGpaMlFmdDRaeE9QWVpzZDN1M3BjdWhPcTN0NWlFQlNXcVUwTmlhTmpxYmJBVmxqZEpwY2pzTWV4eHA1cmJlUkpXTmZwRGJtajJrNDEzVkQxWmNmY3YyZ2pUK05aRzNsRGE2OFdKMG5XUHMvYzJzeTBNVEdVdENGeGJUTjdTYVVuNytnd0o1OXNwTHlhN25zcVZabGlJQUFCQ0VBQUFoQllHZ0VFOXFYMUNQV0JBQVFnQUFFSXJKdUE1NVpGZ3ZaZE83Y3NaeDFvWm0vaC9yR0tDR0x1RytUUDl5RVJOeEt5aEwyQ21YMmxZbjFVVkV6NDF1OHZNak1KaU44cnVPKzV6T3hOWm5hbWtUSmtJWG9OTS90MndUMWFYSHJoWUwxNjJramhMVnhFdEdoTFNaa0k3SEY2c2VkYUcyTjNOTE9IZDgvM0tRZUthZkZjeC96Q2F5TlA3bUhrc21ZbzFYUkR0Vm4rbXVjWmIvNTZmemUvWGRiTXZsRHlrSm5aajV2WmM4enNPZ2MrM3hSaTVISUlRQUFDRUlBQUJCRFlHUU1RZ0FBRUlBQUJDTlFrNFBuL2xTL2l5NDhJWHpYOUl2ZHRpcmx2a0NYclh3VnJ5Q0VHZlZEV21ueFUxaThFMXkxaklySXNORzlnWmkrWWVHT0pSbkwvY291UjYwc3NRRlgyZjV2Wjl5ZldMWGJaMmJxQXNxL3RCSzl6UnpKOUpBaHJuMnB3L3lVVmljQWU3dzNQTGNzenpleEdJMFcwZUs1amZ1RzFjZmpQWWQ0YnFsSnROMVQ5UGRZOHorZzlvbjY2VldRWVBEbjhYcklScVkyWWh6SGZMR25xb3k0UWdBQUVJQUNCZFJKQVlGOW52MUZyQ0VBQUFoQ0F3SklKeE53M2ZDWllWUTk5ZzlUMGk3ekpKK2ErNFZ0bWRxb1JtRFVEam03ZVFtMS9aR2NaZjd0SUozNDErQmwrVjJaSHErdzdtOW1ESTlmSm12YTZFNjNYNWVMblQ4enNKbDBac3N5dGxXU1JMSmNQWTY1eit2dm9CTVFUYTkxMHdlVWdzUHVkRTN1dVAyNW1aNS94dVk3NThkYUdsamJ6dERtMW5WcTRvZXJ2c2VaNVJtMjRRSERkb2xOUlkwbkJrQjg2TVk2RTNBaTkwTXhPRWluL1VPWWIvMmtqQndRZ0FBRUlRQUFDVVFJSTdBd1FDRUFBQWhDQUFBUnFFNURmNDdHQWZtUDNhdUVYdWI5WHpIM0RXSDFhdUt2WnZKZm5Ba0Y1djJobUNsYVk2aWY5cE4wMThsMzhpSWhvTkZXNDcrc3VnVjIrcEpYa3UxN3VmajVVTUlCVTUrdVptYXhSaDl4NWJCYjl0OEczZHEzZ2hnWFZibjRwQXJ1UE9CYnZZUmZQOVMwbmJQNjBjRmV6RC9PTTJxQjFxalpkLzlRWkN2ZnBOaSswMlpKcXlhNXlGVWo2S1NPYkh2M3QzaHhpaGh6Q2ZPTS9iZVNBQUFRZ0FBRUlRQ0JLQUlHZEFRSUJDRUFBQWhDQVFHMENKemN6K1JVK05xTmdXVU5mS29qS0daY2xaWTI1Ynhncm9JVzdtdTE3ZWNFOCsveVA2LzRoZjhwZmlyVDJITUhudFB5cXgxS0p4YWZLM1JUWSsvdThPMWlSdnNiTVVzVW9uUnFRMzJPSlkwUCsrTGZib0kwQitWeitoNlFlWDM4bUJIYS9ENzE0RDBNbHRIeXVmeTNFUGZBMmlqYnIxY0pkelQ3TU0zMGJUaFBlSldOQnNUZm5JTVZtMElrZm5SZ1lTK2NKY1RlMGNSbExwUnVSL3VnbEJ3UWdBQUVJUUFBQ2UwVUFnWDJ2dXBQR1FBQUNFSUFBQkJaRFFFTHVnekpxODNRenUrbkVvLzdlYlR5LzhFUFh0M0pYczNrdnoxZjZkcjMrTHJnMDJBenNwOU1DOHRkK1FROUNzQktYVCtOVVM4K2hJb2NFOXMxOHF0c2J6VXgxM1E1QStCTm1kc25nK2tiKzFsT1R4QzZKOGE5THZXQVA4bWtENHFsbWRyR3R0bndpV1BHWEJuZmNBMFEvc0hCK1duQlhsTnFlbHMrMTV4ZCtxSTZ0M0ZDdGZaN1pyUCt2ZFBQRzY4MHNGdmk0enk4WFpDOE9wMzUwS2twSjdudU9EckUyZmlaaG9DakdoRnhvYVpPWUJBRUlRQUFDRUlBQUJKSUlJTEFuWVNJVEJDQUFBUWhBQUFLWkJITGROL3hXRjl6eU9abjN5TWtlOHd1L1hVNUxkelhiOXpwakVNMS9QYWN4RS9MV2NxL2lDZXdUcWhhOVJENnFKWGI5ZGUyQ0tXOHZDQ3p0dVk3NWhkOEczdG9OMWViOTFqYlBiTE82U3BnbmMwNEhUQjNnZHdwdXRtS1c4RlBMNWpvSVFBQUNFSUFBQlBhVUFBTDdubllzellJQUJDQUFBUWpzbUVDTys0WXZkOWJKRXVTUGIxaG5CZEY4aTVrZGtYQ1BsdTVxaG00dmEyNEp5QXJxMXlMSmw3QkVhZ2w2cFdsT2dmMVR3VnBiTG1oSUVCZ2lzTFRuT2lmZVEwdDNOV3VmWjRicTMxcGtsK1g2emN6c0dZMU9VdkVFUXdBQ0VJQUFCQ0N3eHdRUTJQZTRjMmthQkNBQUFRaEFZTWNFSHRQNURaZGZYQy9KbmNoVnpleWJYc2FDMzNQY044emhGM203S2JJd2ZiYVplYjZHY3hISTlZNENuMzRyOThLUi9ITUo3Qy9xTmdUa28xNmJMeVFJakJISWlmZlEwZzFWWDcrY2VBOGEzMzgrYzlldVpaNFp3M0tVbVQzUHpNNVptWnMyOHhUNFZPOGlFZ1FnQUFFSVFBQUNFTWdtZ01DZWpZd0xJQUFCQ0VBQUFoQklKS0JBY2k5THlQdW5uVi93dXlma0s4MlM2cjVoRHIvSVEyMlJUL1kvTkRQVlUvOHVTZjhSZk5yTE1yNm1xNE9MZEg3QkZjejBKMHNxRjduMkhZR0JGNnl3MGUwcGRvVUVVdU05dEhaREpYVHk5LzM4Y1BJaWhsS3VqeFNQNEwwNzRMMkdlU2FHUlhPUDVraHRITlpJQ2lLdDk4L1hheFJHR1JDQUFBUWdBQUVJSENZQkJQYkQ3SGRhRFFFSVFBQUNFSmlEZ0FKd3Z0WE1aRFU1bGlUK1htR21BSllwN2h2bTlJczh4dVJJTTd0THNQNC9SV1pIZmRUTTd0dTVtNUVGK0xjenIwM05yZ0NjQ2pxcWdKSG5TYjBva2s5QlYrVi8vNkhCVFZETkRZRUsxYU9JaFJOSWlmY3doeHVxSHRNdHV6bnZpUTZ6OTRSNTd5czdaTHYwZWNaRGN3NHp1MGNJY25zU0wvUFc3NW9ibjJCbUR6T3p6MlplUzNZSVFBQUNFSUFBQkNCd0lnSUk3QXdLQ0VBQUFoQ0FBQVFnc0V3Q3NqVDl0ZUEvL2JLZEM1bHpkU0sweE8zTkpIRkkxdDZ2TkxOWG05a25LbHVzZTJUa2V1ZENuV3VGeTVqWnhjM3M1OE9HeXBnRnZzUjB1V09Rd1BqNnNMSHljVFA3dm5jamZvY0FCSm9RV01NOEUydjRkdjNQYW1hbjI3cEFKM28rRnVaSW5URDRWK2FjSm1PSlFpRUFBUWhBQUFJSFN3Q0IvV0M3bm9aREFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQUNRRUU5aEo2WEFzQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJSFN3Q0IvV0M3bm9aREFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQUNRRUU5aEo2WEFzQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJSFN3Q0IvV0M3bm9aREFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQUNRRUU5aEo2WEFzQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJSFN3Q0IvV0M3bm9aREFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQUNRRUU5aEo2WEFzQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJSFN3Q0IvV0M3bm9aREFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQUNRRUU5aEo2WEFzQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJSFN3Q0IvV0M3bm9aREFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQUNRRUU5aEo2WEFzQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJSFN3Q0IvV0M3bm9aREFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQUNRRUU5aEo2WEFzQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJSFN3Q0IvV0M3bm9aREFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQUNRRUU5aEo2WEFzQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJSFN3Q0IvV0M3bm9aREFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQUNRRUU5aEo2WEFzQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJSFN3Q0IvV0M3bm9aREFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQUNRRUU5aEo2WEFzQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJSFN3Q0IvV0M3bm9aREFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQUNRRUU5aEo2WEFzQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJSFN3Q0IvV0M3bm9aREFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQUNRRUU5aEo2WEFzQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJSFN3Q0IvV0M3bm9aREFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQUNRRUU5aEo2WEFzQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJSFN3Q0IvV0M3bm9aREFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQUNRRUU5aEo2WEFzQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJSFN3Q0IvV0M3bm9aREFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQUNRRUU5aEo2WEFzQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJSFN3Q0IvV0M3bm9aREFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQUNRRUU5aEo2WEFzQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJSFN3Q0IvV0M3bm9aREFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlCQUNRRUU5aEo2WExzR0FqOXVacWMzc3d1WTJVK0dmMTl3bytML2FHWmZDUC8vazJiMktUUDdpcGw5WjRlTk83bVpuU1hVK1Vneit6VXorekV6Nit2NlFUUDd5STdyT0lSSDg4bFBtNW40SG1GbXYycG1wdzExL1ppWnFkNGZON052N3BEdGxGdWZ3c3p1YVdhL0dTNStzWm5kWVVwQlhQTS9CTmI0WEk1MTMwbk43UGZON1BabXBuYTlyWnRIYm1abTMxcEFmMjl6L2tVek81T1ovWmVadmJlcjg5ZFc4Rnl1ZFQ1Y1FQZnZ2QXA2SitoZGNFNHpPK3ZXKzFmdk1MMFh2bWhtLzJ4bVh6YXovN2Z6R2g5dUJmU3VQck9abmRmTVRyUHgzZkhaMEQ5ZkQzL3JlK243QzhXa052eDhHR3MvWjJibkN0OUo3K3plMmFyL1A1aVoyclBVK2k4VUs5V0N3S3dFOUUybHRjL1p3N09zOVUrL25sQkYramxKLzliNzQwTm05bzBWcmkxbWhjck5JQUFCQ0VCZ0hnSUk3UE53NWk3ekVaQVljK2xPTkxxK21WMDVMT2luM0YzaTJEdk03SGxtOW9wT1FQdjhsRUl5cnRISDVFM003QmJkUGMrVGVKMCtLcC9jZllRKzNjeStsSGhON1d3UzhDN1RiVXJjcnVOMUpUTTdTY0lOUG1ObWY5RUpmWDhlTmpRU0x0bFpGZ2tPNG52TVJnMmVhV1kzM2xtTjFubmp0VDZYSG0xdDJqMjJFd3B2dEpIeDc4enNxanRjN0dsejdnWm1kdE9NdVVUVi82cVp2U0E4bSsvWnNRaTExdm5RR3krSDhQdXB6T3hZTTd1NW1WMHU4WjBnTHY5dFpxL3JSTjZubU5uZkxHU0RhcC83cTM5M2E1NjRadGdjVEcydjVvY25kcHZwZjdYRGJ3L1ZWV3VZODNXYk03YzFzK3VGRFgydkRmMDRlNXladmNyTXZ1ZGRzTURmSlR4cVExZWIvNlZwMjhqa0UyR3phMGxjdEhIeXgyR3picWk5SHc3djRia05ZN3grME1iT1U1ME8wanJsR3FXZE9NUDEzKzQyM2g0WmpHUnEzMDdmaDVmb052MnYxbTJDWGIzN0JqbmJ4QnRvekg3QXpQN2F6RjdhY1gzZlNwL3ZpYzNuTWdoQUFBSVFXQUlCQlBZbDlBSjFxRUZBb3ZUZE9tdnAzOHBZME9mYzk5M2RRdkkybldpdkQrYWFTZGFrc283K3ZZSkN0V0I4ZkdlVmVvOWdwVlZRVlBLbFdweGZOM3h3eTJwOWF0SW1ocXg5OVZHOHBLUzVVZTE3VWpqNXNGazNCUGIwbmxycmM1blN3a3VGeGJPc2N6ZlRMZ1IyalZkWnB6L016QzZmVW5rbnozOEVRVU1iakZwWXo1WFdPaC9PeFdmSjk5R21pRVF3YmJicS9WQ1M5RTZUZ0h2L1lLMVlVaGJYbnBDQU5rQzArWEhmZ1hmYkZGWVNzdTRhckVpblhEL2xHczEzRnc2aTZsRlRDZ2pYYUo3VGVIM2hqamNVYzV1Z1U0MXZNck5UNWw2WWtWOG5PWFdQbDV2Wks4Tnp1S3NUSm5vdjZGdFJwMkNHMGk3ZXVhcUgxdzhwMzRwL1pHWVB5dWlYWFdYOVR6TzdaRGo1VnFNT3NsS1hjYzRkZzNGT2pUSzN5OUI3Ukp0b0R3aHJOMDZ1dEtCTW1SQ0FBQVFnY0FJQ0NPd01pTFVUa0lYeFkyYXlBSkY0OE9CS3dQUnhLU3RvaVFpbFlrUmZKUjJWbEJYWDZ5dlZjYXlZWHdxV3JqcEtYaXZKbXV6dU0yNFF4T3J0amFtVVJWTXRMbXN0eDJOWXMxMDFuOHVVZXNscVhRdTJXeTlrc1gvRzdxVE9ueldhQXo4YU5zQWtZTFJNYTU0UFczSlpROWw2Zi8xaGVDWnF2Y3Y2ZHNzaVVlK0ZSMkdKV0R3VVlwdkd4WVVIc1Z0Q2UydlhXRU9uaGtyci83ZkJPT056cFFYTmRMMG43TGFvaGs0NFBTTzhhMlF4UHFmWWpzRGVva2Z6eXF3bHNPdlVoVTdZYVZPaHhEZ25wL1p5LzNsUk5tdHprSkVYQWhDQUFBU21Fa0JnbjBxTzYzWk5RQjlwc2lpWGhWdnRSZjFZMjJvSmVhcTdqbHJlc2dGRVdXeklJa3NXN2JVWFFKb3ZmanNjNFcvQlhEN2FkVlQ5K0FaY1VvcE1IVk1JN09NMFV4bW05RWRxbmxyUHBYYy9pY0E2MWFCTk1ZazhZMmt1YXpvOWoxY3hzK2RVc2tRZGE0L21GTVVjMENaWUN3dXd0YzZIM25nNWhOL2xJdUc1Wm5aMDQ4YStKTGhQazU5MlVqNEIrY0hYdkhXZC9FdXpycERyR04xRHNWWmFKUGxVbDFzYXhkU3BuUlIvNS8rRVdEZTF5NjVkM2k0RTlzMDI2RnRONzEyNVQyenhUdGptaGNCZWV3VGxsMWNxc1BmZlQ0K2VVVmp2VzRuQW50L2ZYQUVCQ0VBQUFoTUpJTEJQQk1kbE95VWdpODFuYi9uRm5xTkNOWVE4SGMvV1FsZXViRnFtTzNXaTJ5TXFpdXlhS3lTeXlRVkZ5eVFyZlBtazFFSjlycFFxblBiMVFXQWY3cGsxUDVleHNhYXhyNlBNY2hlMDdRNW02TG81QkhhTldSMnRybldpSnVWWmUzaHdCVkhUTis5YTU4TVVYdnVlUjZMNmNkM0d5MC9OMUZDOUUrU3IrTk16M1c5ZmJ0TlNsQjVpMUVxb2xxOTFDYm9LWHRvcTdlTDdZMHBiZGkydzkzWFdDU2U5aDFvTDdRanNVMFpKM1d0S0JIYWRhSlRSanphd2RwRVEySGRCblh0Q0FBSVFPRkFDQ093SDJ2RXJicmFDM3lpQVRRc0xKZzlMcWNBdXEyOTlaQ3FRYVdyU2NXdFo3ZjF2TXp0ZDZrVWhZSnlzYmY4eTQ1cFkxbXNGUDZVcFFVeFZUbDl2L1Z2WGFJR1VlcTJPSDh1UHRJSnR0VXdTS2RXdWgwWjhldzdkSDRIOXhGVFcvRnlPalRHOUgzKzllKzVrY1hYQmpJSFlXbUQvc1dBOWVMK01PdlZaUDl1ZCt0SDFVNDlteTErc25wY2FwMlBXUEI5T1FMOVhseWorZ0N5SkZYd3dKOG12czRTYW5QZkJadmx5NWFFNSsyczVOejNndk9jT1BvaHpSZW4rL2ExTjB5bW4xV3Evdy9WK2VXMTNXa2Z0U1UzeXI2NmdsN2x0cUYzMzFQcm01RnVLd043WFdUR0taRFR5cnptTnlNaUx3SjRCcTFIV0tRTDdYS2ZzdkNZanNIdUUxdnY3YVVKd1hKM2N2bGNJa0w3ZTFoeDJ6ZW5Mdys3L3ZXbzlBdnRlZGVmZU4wYVRyd1RqWXpKYUt2Y0c3KzljS1dnQjhGNHorOExXdFFvTUtPc0tMVmpPN3l3bVN3VjJXZnFrV0lCcklTbnhUSFhXQXJGUFd1aXFqaXBIcmxxODlMSEFxdlM0OXE4RXYrNmVtS0tQV0gzZ0tPalp0Z0NpdVVhTDVOc0czOVhlb2wwV1Vkb2dhQkZnVVZhejF6ZXpCMDRVR2hIWVR6ankxdjVjYmo5SEdwdHl2YUx4TVNYT1FHdUJYWnR0ZWo0a2NzYVNyQXVmRnF5TVA3STFsK2k2azNjbmdXVGRxcm5rZHhLZkJjMm5Wd3BpbHpmL2VMK3ZkVDcwMm5VSXY2Y0U1dFBjcmJueXhlRkVrbnc0YnladGNFbzR1Mko0SjZSdVltbkQ2L2FWTm5uMnZhK3VGcDcvV0R2MVRLdVBkQ3BRUWR3bFRHOXVvT25kclEwNXpUZS9hMmFYUzRSVzZ4MnUrVTR1Z3J6Z3pUcFpJemRXTW1MUU44K202eEtWb2UvR2V5ZHVsajQ5dExYbWFaMUViRW5abGlhd3E5SmlwWk9UNGwvYmJRd0NlOUt3YUpvcFYyQ3ZjY3BPYzlFL21abldNa05KOGFDMGVlZ1pEQ0N3TngwYXN4ZCtockNoSjJPMTgyemNYU2NrRkpTWnRCNEM5T1Y2K29xYVpoQkFZTStBUmRhZEVzaTFkbFRrZVBsbmYxZG1jTFFqemV5eUl3dkpFb0g5d3AyZjJsYzdGbjg2V24yVGJpSDdoZ1R4SURYUTZGUE43UGZNN0w4bTlwNzhJNyt3RTBpdUdyaytkMkdWZWx4VXdwOFcvVFdTNWpwWnYvMUI2RnUxYTJwQ1lQOFJ1YlUvbDV0ajRDeEJiRmJBUm0vQkZoczd1eGJZdGNGMWp4RExJTlhTWFAyb0RTMEZTNDM1bDFlN3RmRW5OMDVmbXZvQWRWWkdhNTBQQzVxOFY1ZkdCSGI1WjFhd1M1MDBTeFVvTlQ5cnMvc3AzWFZIT2FTK0cwVGVOKzhWMFRhTmlRbnNFcS9VVDgvUERFeDZEak9UdXlpNTYvRlM2VHRjNCtMT0NhNnc1S3JvVmdudWcxS0RLV3ZldkhZUTlyMDI3dUozVDJEWHMvR1l4SXI5aEpsZHBEdVpKTU1EbGF0TlYvMTdhbW9STDJHZkJYYTVQaW85a1N2WGRWcnY2SFRhVVBwUStIM1RZQ2UzZnpXWGExeWx4TUhROTRRTUZMU0pucE0rWTJaUENFWTZPZzJSK3Y3UWM2MTRJTnI4dTNsbmdIQ2hyWnNpc09mMHduTHphcDdTL1BJekkxVkVZRjl1MzIzWGpMNWNUMTlSMHdrRUVOZ25RT09TblJDUTlaSkVjOC9OaUk2UWExZjczeXJVVW1MNzc1dlozYm9GbmdUWnFRSjdpa2c5eGIrc2hHcUphZHNmazV0Tkx4VWpaSzM2TjJZMk5sZklLbEZCelY2WHlUdmxBMXpXZExKdW5Pb09vTGVhdjJGWWZJOTlsR1ZXL1FkV21UZk92V2hQODYvNXVWU1h5SHJpTjRKRjdLWWxURWwzN1VwZ2wvQ3REYm9QRkZSZWk5UVhPWE9LaXRlOHFGZ1NVOUthNThNcDdkM0hhNFlFOXErSHpWeHR5RTYxWU5YWWVFQjRIbVBjYWxsSDcyUGZiTFpwU0dDWGFLVU51TWNXbkJDVG9IWHJFT2NsOWsybTA0TXlXTmcrT1pqS1hjTGpHeDAvLzFOaVEraUVrc2JwS1NNVnFiR1JtTnJPM0h5ZXdGNzZqYUxUVFRMaWtEc211WDdKL1hhYThqMGJZN0RQQW50dTN3L2w5OFpENjIrU3pUcnAyMTZiT3pMc1NVMVRqQUppWld1RFNPc1N6WFBhZkVCZ1QrMkpaZWZ6VG1RaHNDKzcvN3h2azgzZjZjdjE5Q1UxSFNDQXdNNndXQU1CTGJyMUFTYXhOWmJ1RXhibnFWWVBxVzJYUmFjVy9UcDJyTVZjYnJwbU9JSTk5cnlWK1B5VXRkR2J3bEg3c1hwSk1Qdk5ER3VRdmh4Wnd6d3J1Rk1aS2x0SHkwdjh2SHZXejdJaU96WnNyT1F5Vi81VVZ4cmJaYitqNitkVFI2eUtTaGV2VTlxeXhHdlcvbHlLNlRPNjQ4YzN5b1FyMGVpYndlcHY2TkxXaTludGNhMzVUb3RadFdXcXNMblpqaFIveHlWdFhPdDhtRGxNOWpyN3RzQ3VPZkUyWFNCc2lleWx5WHN2cVB4Y2R3V2xkVnJyOWR1Q2hBd1F0QWxYSTFCc3FuWDUxUlBjMUF6eDFmZUhOdkZ1Rm9ILzVMQjVQdVdiVDhLeHZtOWlxZFFDdjlXNDhRVFZtdDhvdWU3OStqYnJ1MWJmYjNKUFZwb1EyT01FdmZGUThyN082YnZVT2FFdnM0WlJRS3grcW85T3k4bDFrZHhUS2dZTmFiMEVFTmpYMjNmYk5hY3Y5NmN2YWNrQUFRUjJoc1VhQ0J3ZHJKaE8xbWlobGNwQUM3NWNWeXVleUZzcVVxdnUza0pSVnV5WDdqWW8zcDdhMEpCUHZnM2ZHb0tFRFYxYTZuNUdaY29LWHo3bngzeGR5eGZxVFJOYzVnelZ6Mk0vZEkxODVEOGtXUEdPK2JpdXVYak43SkpGWlYvemM5bUR6QlhZdFZrbE1mdVJFV0crOVdKMmMxekxONm5jTngxZmVXVG8rT2JySXhhZVV3Vk83NWxjOG54WUdmR3FpK3NGZHZXWEJGQTlSNm51aUZJYXJyZ084cVdxSU1OamFlcUpzcFQ3NzB1ZXpVVnNDd01FYllZOEtZajJZOHltdnNNOTBiREVNRUYxVmQyZkV5eGR4K3BlZW9xdTFUankyTFQ2UnBHeHlaK1ltUUlLZW5GMDFQYlNQdXI1SWJESFI1STNIbHAvay9TMTA0a0huUXp4VGhybnVwVnM5UnhSN3JvSUlNcXVxNzlpdGFVdjk2Y3ZhY2tBQVFSMmhzVWFDTWg2WEc1YXhwSjh2a3BBL3Z3Q0crTzVXSmxxWGI3WlZFKzBVdDQvN1N6WTc1N0pSMGUwWGpaeWpWekRTUHo0bDh3eWg3THJxTG1PcXc4bHVidVEwUDNGQ2ZkSjRkSVhxNENRRW9xMEVQR3VhN1Y0bmRERW5WNnk1dWV5QjVjcXNNc3lWd0grdEhpVWtCaTdydlZpdGgrZldzVHFCTW5uR293Q2ZSdm9tWlJmNDdHa2pZWS96N3ozbXVmRHpLYnVkWFlKN0JLNHA3Z0hTd1hqalJXNUxwT2dVK0pYT0xVdWE4Mm5SZXhmTmRvRTZabjhRdkROUEJZRWZjbzdQR1grcVdGZDdnbVRNcWk0VE9mYitTMExHd0JldlZ0L284aVYySE83dUVMYVpQZVNUazNvT1ozcTZrL2xJN0RIS1h2am9mVTNpV3FYRWxkRitSUnJTdU5CMXVza0NPUVFRSlROb2JYc3ZQVGxzdnVIMmhVU1FHQXZCTWpselFuSWw1NUUzbU1pZDVKbDFyMmIxeVQvQnA2TGxhbVc1VU0xdVg0WFRmMTVrU3BPV2VScVUwTWk2bENxS1c3RUxPVy9FWVQ4OStYamQ0VnlGU25oVkg0YUZWenYyK0VlQ093KzdEVS9sNXV0OHdSMldWbzkyc3p1dCtYK1l0Y0MrMTI2Z01tUFNndzQ1dmZtY0E0RkRIdE5KUDZDVHJBb29GaHFXdnQ4bU5yT1E4aW5PQ2R5bGZTMmhvMzlxYkRoZWY2UmUrajB4c1VXdXJIZUVFdFcwWEtySitHNzN4ak11amd4cy94MS8yVndCekoweVpSM3VBS3BLcURpejQ3VW9aWmx1VGNuNmZiYWFKUjdpU1VsVDFCdExiQ0xoU3pZdGRHbWQ2T1hTbHo1cUd3RTlqaGhienkwRnRnVnIrcVZDUUdxVzUyNDg4WWZ2KzhIQVVUWi9laEh0WUsrM0orK3BDVURCQkRZR1JaTEo2QWdoRnJFUzRRZFNrdTFNRkpkdlVYaXE4M3NHZ1dCeGpaNWlKT0NnWTI1V3BIVjdSVXlnNUhHUkVSWnc4c3F2a2FLaWJVbC9Sc1R5aVdjM2orSWxOdCtneEhZL1Y1ZDgzTzUyYnJZR0pmLzMvdU8rTzNjcGNDdTk3YXMxMnY0VzQvMXROZkhza3lVZitWditjUGxCem5XUGg4bU52TWdzazF4bHpZRmpEWSt4M3h3VHhGdXA5Umh6ZGNvR0tuYytOUjAzelBFNHc1T2ZCcjU0cFlBbDVvOGd3SDUrMzljYW1GT1B1K2t4QlRqaEVwVkd5M0dFMVRuRU5oVk9iMkxkSXBLMXV5ZVc1Q1NFd2NJN1BFUjVZMkhsZ0s3eG9CT00zbnJBY1QxMXJQQy9wZVBLTHMvZlV4ZjdrOWYwcElCQWdqc0RJdWxFL0Q4Z0UvMUJUeEh1eFZZOU5tUkc4bDN1bnlBMWtxZXk0NWNOekV4RWJGMjNXUDNtaHBOZkVnby80OWdsUy9oWmt3WVJHRDNSK1Nhbjh2TjFtMlBPNTFpa01XaS9QQi9LWUpobHdLNzN6dDFjbmluRkhJWDdXdWZEK3RRcFpRY0FqSGhkc252L3B3MjdrUGVLM2N1SW5TcWJTemx2TU8xZWZQODRFWmlxRHk1eExwNEZ3TkRnbDJOZExwd1V1ZENJNFdWYlBMWHFOOVFHWjZnT3BmQTN0Y3R4ZmUyQWt4ZWNtTFFVd1QyK0VqeXhrUHV1enBuM0Y0Z0dQZm94TkZZa2t0Sm5hWjVWMDdCNUlYQUZnRkUyZjBaRXZUbC92UWxMUmtnZ01ET3NGZzZBZS9EY2FtTGJEMWJUNHNFLzZxOVNGUS9laTRkY3QyNnRCQzl4OFpiaTN2MVFybDh4YjhxQ09zNld1NVovaUt3KzdQQ1dwL0w3WmIxNCs0ZHdRSkw0MFNuRzd4MENBSzdHTlJxNXo3TWg5Nlk0UGY2Qkl5cFpYa0FBQ0FBU1VSQlZHS0xzS1crKyt0VFdINkozdnNnUjJDWFd4Z0ZWei9iU0xQbGprWVc3cmtCNTJNVUg5TnRxTW9xZml4TmlUZlJzdGM4M25NTDdKcmY3MnhtRDNZYUxYZHJ0NTl3b2dLQlBRN1dHdyt0QkhadGh1bWszOWdwbzc3V2QzSk91TFI4VmloN2Z3Z2d5dEtYKzBPQWx1dzFBUVQydmU3ZXZXaWM5K0c0MUVXMjV6ODJWK3hPNlV4dllmcnZuZEI4MGM1djhxZFRDZ3QreWNjK25HV3g5SkxFY2xLeWpRbDVzaWhXa05NcEFaSDA4WC9XRUZRcFJUVHQ2NG5BN3ZmWVdwL0w3WmFkS3p3UHVZRVNhd25QUHVuZDVxalZ6bjJZRDNmYkU0ZDVkd1QyZGZTNzl6N0lFZGc5UTRFV1luY3NvTHQ2UUM1UWRHcXZ0YXVkMU43MmVNOHRzS3ZlOHNtdUU1a0tmRHlXcG42dkk3QXZVMkQzQWh5cjFxOElib1Q2R0VlcFkzek4rUlNYUWlkak5wTmNkWDA1MFlCanFXM2ZicGVNbFhUUzB6TmFxdFdldFFqc2ludHlpbzFHejgycEZ1K1c1YXlsTDFzeW9PdzlKb0RBdnNlZHV5ZE44ejZzMWN6YVltOE5kRWVGQUcyYkw5bk5jblBkdGFUVXlRczJsbnZVT1hZOGZ5NGY3QzBzL1QyV0NPd2VJVC9vMkZLZlM3OWxhVGxxQ2M5cGQ5dGRybHJ0M0lmNWNIZTljTGgzbmx0ZzF6Zng1YzNzUFkwRENHLzI2R2xDY0VERk5GaUtnSnM3NGp6Qk4wZGdqd1ZYei8yR1NXM0grYm9UZ0c4eHN5TkdMdEI0VUF5YnI2UVcyRGlmeDNzWEFydWFuT0l1NVBIaHRFRE9XUGZXQWEwc3RMMXVYRW8vZVBWb3dVZHpwZHpwM1NvQ2FlcUdpc2Q5U2I5ci9wYnJJNjFETHhPTWVtTDFrN0dQNGpyOHRabTl0SXZEOWI2R29yczJ2VFNuamNWSFVCeVRiMFlxcTdicEhYeVQwRWFWTjVTK0VHSnNQTW5NVWs0SngvaHNpOU9iZWZWdTFqZnBXTHB4NXo3c3RRbURvNmJnTFNaNi9tNFFZaEtObmJ4U3RlU1dWTytacHdhM1pGOUxxT3RZRnE5dmRaMDJ0ZVNlcVZaU1RCY0ZOTmJmWTJselRLMnRMMnR4b2h3SS9DQkFEUWtDU3liZytjZFUzZVd2VXdHVWFoNFpMbVhpK1J2T0RmcVZXaC9QRDN1TzcvUkxkTmJqYitpQ2djb1NmRHZWdE1DUCtmTnVzVER3V0NLd2U0UithSjN6bXM0NmFjeHY3VktmUzc5bGFUbHFDYzlwZDl0Tkx1ODV5SmtEOW1FKzNFMHZIUFpkLzhqTUhqU0NRTmFBZWtjZFh3bVJ2b2NsRnNtTmhkNDcxNTVCWkplQW9YZ2d1cGZhK3RDVml1eXhqWkNjQU91ZS8zWDVYYitZbVgyK1VwLzN4WGp2czExczlNZWE2QW1xdXhMWTlRd3BNUGc5SXBYWFNVcTU3ZnUzakQ1RVlJL0Q4c1pEaSs5b0JVRi9ZN2YrT20ra2FoSVNkZUprU1d1empHRTNtbFVDbzRJamE1enJWSEJKa2dqNkJETjdtSmtwVGtITjVJMExCYWNkY3V0MDVrNUV2Vi9FeFdtc2pwOE03cUxreW11S1pYdnMyN29XRzlWUi9WYkMreWU3NzRQYm1wazJoTWNNNmJ6NmFvUGxycDA0L3lFdjQ4RHYrblo0ZVpoTHh5Ny9pSmxkTnB6aW5uQ0xFMTJpRFE2NTBSemJzTm1PczdHV3ZxekJoaklnY0FJQ0NPd01pS1VUMEJoVm9OQWJSaW9xS3dtOVJMUnp2cFFVOCttcEhWNHRNR1M1VUR0ZDA4ejBZVE9XY2l6blkyNGR0Q3V1TnZ4TGhRYmNPbGpDREJVMTlnRlk0YmFqUlhqQzRxNFdyeTNibkZ2MldwL0wzSGFPNVQ4RWdWMEw2TGVabVRiQWhwSVd6emRQQkxvUDgyRmlVOGxXa1lERTV6RTNaVFhGMWsxeHZWODhhbk81cGNpK0thNzN5Tllxc3NkT3UrVjg3M2l1cEdUbGYvVklnUEtwUTg5N243V3luSjlhWDA4NDIrVTNTb3Jia0Z3M1B3anM4WkhpalljV0FydmlJRHd2VXEzdmRnTDhwYnZncG0rZk9zZ1hlSjNtQ1ZtcHkxTDduQTNxOTdqT21sMm5nNzllcVd4dlhHeXZyN1J4b0UxbWlmMWoxdXFwVlh0UjJGelJSbmhPV3Jvb0swYS9iMllQS1JEV3Qzbm9KSWlFZGxtNDV5U3R3Vi9YeFk4NldlU2krNXZaUFN0czNLY0krakowbEY3VHA2WDNaUTVyOGtJZ2l3QUNleFl1TXUrSXdDMURJSjNZN1ZzdmhuT2E3cmxxcVNrTWJOY3Jabld1dkxtK1JHTVdoRFdzVTJRcG9TTjlRMVl3TlVYOG5QNURZRStqdGJibk1xMVZhYmtPUVdEMzVwSTdtdGtqRW5EdDAzeVkwRnl5VkNMZ1dSWFhFbHVIeFBXK0NicUhqdjZYSE9VZXdqRWtydmY1RkJCUXoxV09DNDFLeUNjVlU5UHEzSFBWa3JPcGw5c1k3L1Rma2x3UmVzTFpMZ1YyallkbmhVQzBZMzJRYy9wSlpTQ3d4MGV6Tng1cUMreGUwSExWOXRXZEVkRTFncHVLM0dkeGlmblBhR1ovRnRyVXNuNWY3RTVsWGE5enlmTDZDamZ4eHNXbXdINHFNNVBBTDNjd3RkS2JnLzk5blFCS1RVc1daVFVHSkNBZms5cVlqSHp2TjdQZjZHSjl5T284TmVrNWZHVG51dXgya1FzMG5yVFJwZkpMa2paRmRkSmlMR2xEUlNkVk4rT2RMYmt2UzFod0xRUmNBZ2pzTGlJeUxJREFPYm9YbWw3VUN1SVpTMU5lNWkyYTUxbGgxZjdZM1d5RHQwRE52ZmRad29lZWdrRnVKd1h0dWE1ak1SL2pLd3NKK2VPOHhVZ21IZFcvL1E2RUJnVDJ0S2RpYmM5bFdxdlNjaDJDd0g3djd0bTcxd2lPSExjUCt6UWZwbzBPY3RVZ2NIUndRVEJtblNXckx4M1JMazA2NnErajFrT3UwRlIyYlpGZDRycmMydW0rUTBuUGxvU3BsNVUyYkticnZmZEFqcGpxQlRodGVhTE4yekJ1ZWUvY3J2S0VzMTBLN0dxTEZ6UTIxK1VPQW50OGhIampJZmU3M3h1UDNqdGQxK2VlVXZEdXVjdmZGVU5HSjRPMUhwb2phVzBsMFZUcm81S05WbTljOUhOYWJNTzN0TDI1NzgrbGlySmFXeXRnNzlpSnpsSk91djVUWWU3OHg0ekNUaC9XNklwL01aWktqZUcwL245VDJPZ2N1c2UyYTVnK3oxTDdNZ012V1NFd2pRQUMrelJ1WERVdmdaUmQycjVHMnEyVk94a2RteXI1TUNscFljeW51TXB0dWZqeEZpSlRyT2ZsdDEwV1NVTkpWdVpYQ2E0a2NwaEpYTmRSeURFQjc4TWgyTnduY2dxdGxCZUJQUTNrMnA3THRGYWw1ZHAzZ1YyQmpGNFpnaThPRWRGemVmRnVjMHorZEwyMGIvT2gxMTUrTHllUTRzdFpya0tPSzcvVkR3SjIzYVU3WmkzM2FXTXBWeVFZSzhjVDEzWGR3OE54OFUxTHNBck5iRlpFN1B0QU44MFJwcjFZRFRuQlVuTWJIUE1qcjdKYVdzL24xdFVUemxwK1k2YlUxWnZ6Y3pab2RUL3Z1N2EyZ0p6U1J1VlpTajk0OWFqTnh6dmRWanMrUm1wL3RNaW45YzBMTzVjZ3AyeFJ1Rk5tcWNzd2IxeG9idFpwcVppaFU0MW02MVNXM21zcGFZbWlyR0pONlh0WUcwdXQwNVMxcjk2TDh1Yys1aHRkN3BxMGVTMGp4TnlVc3M3YmRnM1QzMk9KZlpuYmZ2SkRZQklCQlBaSjJMaG9Cd1M4SGRUdEt1a29rejRlYXZteXkybXk5MUdUNHdjOTU3N0s2NG5EVTRLN2VKYm04b0V2UDdrdlNOelVVSEFZV1IvZWFLUnhwWmJ4dWN5Mjgzc01kNzE0TFcxZnpldlg5RnpXYlBlK0MreWVhUFowTTd0cDR2TytiL05oelhGRVdjTUV2SGtsWjRNbmhmRWNJdnMraXV2ZVJweStEUzVwWnU5TjZZUVE2SFVzcUcxclAramVQTFdrOS83UzZ5cDNFenFCRVhPbGtPcGlURU1IZ1QzK0FIbmpvYmJBN3AzMnFIMi94T21qZXJZTEIxYzNwMDBzK1QxbTloZG1wcjlsamJ5Wk5GZHFMbFJjajB0RnhORE5hMHJYUXQ2NDBCcFpSaEpEQmxTNjk0dURTNVIvMkFoWXFuZmxyM1N1VFBTTnFMYU1pYnFiN1JpemNCN0N1alJSOW16QmplbTVFOGFBZUdrajlpMW05czJOL0JvL0V1a2xSSXVieDB5Vzhqb2RyZ0M0S1VscmRNVUZpTG4zeVMyenY2L241MzNJTlV4LzdkTDZNb1VsZVNCUWhRQUNleFdNRkRJVEFmbWxVMUNkMUhFcmNWMHVSblJONm91cVJsT3ViR1k2RmoyV2NpeTZjdXZqaWNPNUM5NysvaElIZEVReXRtQ1NMM1ZaQXY3elNQUjRMYm9VR0VrV0V4TFp4MUtwMVVZdXMrMzhIc01sTGJSTDIxcmorclU4bHpYYW12TGh1UGJGcGJlZ2tQWGhzV2IycWtTZyt6Z2ZKamFkYkJNSWVCdTZLbElXZDdkSjNPQkpyVUpMa1gwZnhYVjloOTI1Qy9UMjRBamdYRC9Nc2FDMlU3OWRVdnZmRTZPV05LOTdkVjNDTjBvc3NMWDZKS2VPQ096eFVleU5oOXBqTi9hY3FxYTEzSGVsUHJzdDhubmZRZjA5ZGRKSTdpeTFNZmlseElwb0xhVDMxMzBUZ29ucWxQQVZ1Mit1ZHlXV3Zabk5HeGN5bEZEWmVyNzZKR0ZkOVpKdmI4OUF6VE9XMnF6TGZici9JN2VEWHBJWWZZcVJUSmMzTTRtMlkrbkdRUXozN3ZIOTBGZjZPNVpTMXIyNlh0YmpjbGYzYWUvR1pxYTRZNW9iNVFZdWxoUkk5WWtKNWZWWnpoN2MyWTI1c05GM3V6WkVYcEpScHRiQ3lpL3VROG5iT0ZsU1gyWTBtNndRS0NlUUtsU1czNGtTSUZCT1FBdnZCNXFaTEY5eTBrZkROZHJCOVY2b09lV081ZldPR21zSCt6azFialJTUm16WHVHU1Jla1RZckxpQ1UzZEZRbjlIWjZFdWR6UktFaTR1WW1ZeEgzRjlrUkxYZFpSd2puNGFhd1lDZTk3Z1hNdHptZGVxZU81OXRXQlBFVGR6Rit2N09oL1dIRStVOVNNQ0NpYXBJL2xqVmw0bDd6Q1Bjd3VSZlIvRmRYSDByRHVuTE9oajgycXUzMjZ2cjdkL1g2cUlPOVFPVHpqTEVhOXpPYVhtcjJubHZOUytXVW8vZVBYSWZXZkgrampsZE1MYS9hOTd3bUxQUjc2eVpXRHlyNmtQeFZZK2lhMFN1YjJnbVRKZXV1YVdWWFRLTGIxeHNWMkdyTzcxL24xM1N1RWI2enZQeFpxeWZqQUUyL3g4UnRuYldiMXZ5Wm91eEZMYzFHa3o0ZzRoT0d6T21qWGxPMFBCVGk4N2NCSWloczg3ZWFwK2xjRkw2a2FRVjk2WWE1aVVMcDZ6TDFQcVF4NElWQ1dBd0Y0Vko0WE5RR0NxbUtlcTZXTkk0cncrTm5OZWhybk4wZ3MzNW0rdTVrZkFVTjFhQ2V5NlY0dEk4eXBYVmlBM0QwY1ZkK1U3djJlSndKNDc0czNXOEZ6bXQycjhpbjBVMkZNc1VxZUladnM4SDlZY1U1VGxpN1ppVkJxd3krT2NzdmhOOWNtK3IrSjZpblZucnFqbkNYZFQzTnQ1ZmIzNSsxSkYzS0UyZU1MWkVnUjJUMENSR3cwWmEzd2xvWk9XMmpkTDZRZXZIcm5QWXF4THZBQ251ZjcxRTdwLzlpemFJSkNiMFZqU0NUNmR5UDFhWWUwMDc4bFNXV0ptTE9WYU5Lc3NiMXhzM2s4R1VWZnROZ3lPbjlDZUZNT00zSk9QUTlYdzVwU2FhMnZQTllyRWRjVjdrekhBbERWckNqT2RjbmhjUm4vSThsLzFVVCtPcGRSeHBNMGZiZXljZDZTZ21HdVlsQ3JQMlpjcDlTRVBCS29TUUdDdmlwUENaaUtnQmZDdGc2c1J6NWZaVUpWYUMrMnl3aDd6STZyNjFQd0lHR3FmNS9lczlQNmFOK1FmVGo3ZllxNWVVb2VEZHRYMWNUblZDaVQxUHFuNUVOaFRTWjB3MzlLZnkybXRHcjVxM3dSMlBkTzNDa2VkWTNQcWxJL3FmWjhQYTQ2clF5N3JnaUZvNlZraUVMd2p5Ylg0cFlqc25zQ3lyK0s2RnQ0NkVpK2ZzbU5wU2xBMTc3MjdhNEc5OWYxenhxNG5uQzFCWUQ4cUdMT011WHZJNFluQUhoOGQzbmlvS2JEcitkY0oxWjhkcVZMTEUwWTV6OGpVdkhyL3ZMN3pQYTQ0SUdNcGRZTTF0UTRwcmtqZUh5eWF2NUJhYUliQXJqNlR0ZlE3TThyZXpwckNyVFQrMkZ5aWJJcFFYY09WNmVuRFdCczczYTMra0F1Zm5FMGMrY2ZYK0IyTEc1QmlHZTlaNzM4eG5FYlFtSnlhNXVyTHFmWGpPZ2dVRVVCZ0w4TEh4VHNtb0VBeENzNFNXNURIcWlpaC9YWWhzdmFVSGVpeHNtT0MwaHpXSFhmci9QbzlJTkx3R2dMN0wzWXY4RWQxQzZqTEZJNEJXUUhJMTU5Yy82UWVXeXU4cFh1NXQ5QmZ3dUxWYmNRT015ejF1YXlKWko4RWRuMEh5TXI4WVE2Z0R3ZGZqQW93bVpQMmZUN01ZVUhlWVFJU2ExL1pXV3ZKT25Jc2xRWjh5MlZmSXJMdnE3Z3V5L1cvVG5EM05rVjg4TjY3SHdqQkFiVzRiNUZPSFdMblhHS2s4QnhCdUVYOU5zdjBCTlVsZktONGRjemhpY0FlSDFFZTY1b0N1M2N2QmMyOGFLSS82dGJQeVpUeVBZT0FWcHU4bnNzdHRlVUduVVh4OHpNYTVmVlZYNVRXakRJS0sxMEh5OGY2dlNMMTA4YkUxYnZZSFhJak9pWE5KY3BlS2J3THhqU3lxUUZEaDlvY2M4TXlOYkMzVHVySHZ1ZnZiMmIzalBTM0o5S25Xc0hIK25pdXZwd3l6cmdHQXNVRUVOaUxFVkxBamduSWdsb2ZCcHJ3cHlaWlVDdjZ0aFp3TlZMc0EyME82dzd2QTdGRVlFOE4wSkxMVVM1aTdoR0NJODBaa0hhb250NUNmd21MMTF5K2MrZGY0bk5aazhHK0NPdzZwbnAzWjFFa2JoSTNGWlRwdUFrUTkzaytuSUFqZW9tRVdjV3IwUE1qNnlDZDZtbnB6cXgyL2FlVWQ3bE9zTlhKaURHTHE3NU1IYVBYa1drdE91ZEtVMFQyZlJYWHo5ZFpyVXRZR0F1aTF2ZkpWSC9CM251M3BrZzQ1YjJmSXdpM0hwK2VjTGFFYnhTdmpqazhFZGpqSThwalhmUFo4ZTZWMDYrdG41UGM4ajMzTnlxdmhyZzRWQy9QYWxqWC9HVndTNVA2RHZUNlNtWFc4STNldDhlN1grblltRU9VL2JGZ3VDZjNQME9wOWhwZUowSGVhbWJhdkI1S1U2eis5UTN5OGk3b3FkemNES1dZQmJyV0JJb1JkNTJSYTJ0dExzelJsN25QUC9raFVJMEFBbnMxbEJTMFF3SWF4N0trbHN1U2N4YlVRNzdPSkRaNWtkTzlXN1QwZ2U3ZFc3KzNFTmpGV0FGTm5wSVE5VDZsam1ONVNvTUdsZHk3djlaYjZDOWg4VnFqbmEzTFdOcHpXYk85K3lDdzZ5TmN6L08xSFRDbHZpYjNjVDZzT1paVWx2eXc2aFNQQk9UTnBBRGRzbHJMQ1RwV3UyNnR5a3QxUzZUN3krKzYyT3hpOHpVbE5rSHZMa1oxbFlXaExPREdrdUt6M0RYRUhXbkZ0bmE1VndtK1hVL3BGUHlHTUo5OGVVSUZkaTJpZXUvOVVuRm9BcExSU3p3aGF3bmZLRjRkYzNqdWVteU1kWVRYeHJuNndhdEhUWUc5cHV1Zm1zOUVqYkk4eStYY0lKRzVkZnFGY0tKNmJMTlo4NnBPMktUNlNmZkdoZXAzbis1L1pIbGVJNTNPekY0VGNSLzJqU0Q2dm0vaXplWVFaYldSL0JZek8yS2tqclZqd0VqUTF6ZURnc3NPcGFsVy81NFBlUVhYL2QyQjd4QUYwMzF4Tnk2RzlNRWFybUg2TnM3Umx4T0hHWmRCb0p3QUFuczVRMHBZRGdIdHZNbzMrSjhWK0FhWHVQNmI0UmowMU9OeSt5WW9sUVN3bkRJNnZocDJ6MTgzNWVJSzEzZ0w3YmtXVFJXYXNvZ2lsdkpjMW9TeGRvRmRpNGlYUkFJWWJiSzZVNGgzd1h4WWN3VDlxQ3pOTndwTWRlV1I0alVmeWcvbnU5cmNmaWVsNWdUTDlueWR6OUdBRkpIOTdhRWlSMGNxdERaeFhYTzNOdXp2bHdCWkp5NGt4T2U2a09xTDNyV0k2cjMzY3dUaEJGeEZXVHpoYkFuZktGNGRjM2p1ZW15TWRaYlh4cm42d2F0SFRZSGRFOFp5K3JYb0lXaHc4V01HTnJrM2I1TWJkREszaXA3WXF2TGtVa1FXeGluSkd4ZTFyYkZWcDlpM3NUYkk1VUp5cXNHQU4vWktUbWYzUEc4WmdzNE84VzNsNGxVdUd2VnRNSlNtdWx6eVRrVEljRVliU2pweDFxY2pnNnMrYmFJTnBacW5OK2JveTVSbmhEd1FhRUlBZ2IwSlZncmRNUUV0M2hXd1Q3dnlZd0dXdkNwcWQxZUJWS2Y0aXRzbmdWMExiSDEwL3A0SHpNeGtmYTVUQUs4Mk0va3AzSFJ0b01YcitjTXUvZStZMlU4NzVlMVNWUElXMm5NdG1oS1FyeXJMcnAvTG1yRFdLckRyblgrOVlCSHNXYVBxQTF3eEtoNWY2SnR6bitiRG1tT29MMHRIa1ovbkZLdzVWUzU2ZG1IQlhidk5QMjltTHpBekJUWDFraXlwYnA0WjVNc3JjK3J2S1NKN3JPeTFpZXRuTkxNL0QwSFpQV2J2Q2VQejAxN0d5Tys3RmxHOTkvNlNoRU5QT0Z2Q040cFh4eHlldXg0Ylk4UFdhK05jL2VEVm82YkFybzNndjRrOHh6bjlXakJkVkwvVXM3N090UjZmV2tFWmVEMDdjdkZqemV5MmlZVjc0MEx6OWhXNjc3eXZKSmFYa3EzRkNlcit2cTFGV1crRG93VXZ0UzNXcnBKTkVDK0k2dmE4RU91N1dxNWg1dXJMbExGS0hnZzBJNERBM2d3dEJTK0FnUHpZNmtORUFWeW1DTzE2bWNvUDJjY3oyeUszQ3pjYnVhYmtaWmxhRGU4RDU5aXdTKzJWbHlvbzVQcXdUN1Zvcm5rY3pXdnI1dS9lUW51dVJWTk9uZGVVZDFmUFpVMUdheFRZeFYyTHN4c2xnRkJNQkMzMEpIQk90Vnp2YjdNdjgyRUN0dXdzM29LdUw3RDBhSFYyeFJwY0lIL21OdzdXWVhvSGVFbmk3dTBYdHFtUStrN2NidHVheEhXMVVYN3huK3NFbmUzYktKY0FjbU0weFMzTUpxY3pkR0xQMnlJKzNtdUtoRU5qejN2dmY2eHpmM0N4emdmejU3MkJPOFB2bm5DMmhHOFVUNGpOQ1ZxTHdCNGZWTjU0cVBuc2VQZGFxOER1dVFhcHlURFdtNzhjM01RbzZQSlF5bkVaNHZWVnJrLzNsS2xOTGtaVTdsZ3FzVEp2TGJCN1B2amxIa1liL3JXVDEwOGx6SFR0Uzgzc0pBT1YxcmU5WEVUcU5Pc0Z6T3lOSSsvOEZtdngxbjFadTQ4b0R3SlpCQkRZczNDUmVhVUVKQ3o5WVFpaW1iS3czMnptcDRJRmw2eXpVMU5NNEc1MXhHeXpiclVzUmowZmJySncxZEUyV2ExUENjUW5DemxaYWh3VEFhdVBTZm1tKzFvcS9BcjV2SVYyamNXcnR3bFNvUm5WaXFqUjNxSEt6UDFjVmdQaUhJT2RheUdXMHg0ZHk5WGlJQ1ZHaGVZOFBYTlRqL0Z1MTJ0ZjVzTWMzcWw1dmJsbXM1elVqZEhVZTgrWlQzTzlYTGZKQ3Q5THBlOFZyL3pTMzNORjlqV0o2Mk94QU1hWVBUTEVyYWx4c3NKN0ZuSUUyU2w5dkZRUmQ2Z3RuaURUNnAyZHc5VVQybkxlazB2dG02WDBnMWVQSE5aZUgzdjNtdXJTd3J0djY5KzlEYUVjeS9HU3Vub2JqVGtiZlY1ZnRXaFRTK0cwWmRucU0yOXpReWU1dGZGZk8zbjlsT01XYUx0dTBqeDBDdlVXSTVWK1ozRHQ5dUNJWVdCTjF6QjlOVnIzWmUwK29qd0laQkZBWU0vQ1JlYVZFNUNnOXlmQjdVR08wUDdoenYrdHhJMlBKTGJmRTA5TGRxTlRxbEJEWVBkOHNaVUdQdXpia1JKb1VUNmd4L3pUcGZESXplTXQ5R3NzWHIweGtsdm5sdmxydERkV3Y3bWV5NXFNMW1MQm51TkRXWHkwb2FXUCtjOVZoT1dOOVRYTWh4VnhuS0Nva3dkckw3MWZZbW1PazArdDJualo0QkpHMW1GZWtxV1VYQmk5M3N1NDQ5OVRSZlkxaWVzNWNSbDB3a1dXZk0rcWNNS2w3MHJ2dmR2YU1uYXBJdTdRVVBjRW1kYnY3SlRIVHlkSEh4REpxQk1TZXRla25KQmFhdDhzcFIrOGV0UVUyRDBSY3EzdnFwZ2ZiQTNqRXBFejVYbEpuUWYxYlhieDdpU2loSFl2ZWVQaWo3dlQzUkpXYTZhV3dtbkxzc1hBMjJTUks1MXYxb1FWeXRKM1lNeHRhbWsvblQxODIvL2NTTjFmRnR6VURGbTUxM1lOMDFlaGRWODI2Q2FLaEVBNkFRVDJkRmJrM0I4Q1p3NUJ1MjZTMGFRY1Mrb2xDMHFwZmdTMVUvK0VDQisxOGFHSml5TVBzMFIySFNrY3MyU1hQL2RMWm14d2VQZnpmdmNXK2pVV3I5NFk4ZW80NSs4MTJwdFMzOWJQWlVvZFV2T3NRV0JQT1NIU3QxY2JabmMxTTFta1NqeXJtYnl4dmt1QlBYVStyTWxqdXl6RitwQWxXU3pKeWtpQlR1Yzh5VlBhNXR6Tm5lTzYyQjBLTUZaemM2ZTBEV1BYeTlMN2lVRjBpZDBqNTd1aFZWMjljclVPK0cwemt5dW5GTU1EbmViVEpzaS9lZ1ZuL3U2OWQzY3RzTXZ2dEU3MmZDZXpYUzJ5ZThMWlhPL3NzYlpwVE9sMDRnMGpqYis3bWYxcElod0U5amdvYnp6VUZOaTl2bEJOMTNqYUtyWWhOTWZKNDgwZXJtRWtwZks4Y1ZFcTNBNk55cGJDYWN1eTFSYlAvMzNpZEZVOVc0MSswZ2FSTnNSelVndlhNUDM5Vy9kbFRqdkpDNEhxQkJEWXF5T2x3QlVSVU5CTkJUTWRpNWk5M1pSSEI1K3duc1dOOTVKdWRjeE05ZFhDWDd2UlkySjF5aUpWUnhUbGkrMjhJMzJwcU9NNi9sdHpKLzhpd1dweExQRGlmYnE2S0dqdEhNbGI2TmRZdkhxaTR4enRUTDFIamZhbTNrdjVXajJYT1hYdzhpNWRZTmVjcGsycnMzZ042Y1MxandZZnlyVmN3bXpmY3UzellRTENvaXhlSUNwdGZselg4V3RhVklFR0Z4OWhaazhPN3dtdmVHM282SlNTampGUGNUWG1sVi83OTVSVFY1djNYTExJcnRnMHNqS1dyL3VVOURBenUyY2p2L2hlUElMV20yR2VaZTdjNzhGWWYzakMyYTdyNnZreVZ0dTBXU0hmdnluSkUzVnJDc2dwOWVuekxLVWZ2SHJVNU9NRkF4V2JPNXJaSTNKQUxpQnZMVkc3UmxOcTFjVWJGeldFMiszMnRoUk9XNWF0ZGl4MVhWYWpuL1N1ZjZHWlhUVmpnTFp3RGRQZnZuVmZaalNUckJDb1R3Q0J2VDVUU2x3WGdSd3J1KytHNEY5dmRwcm92VGhxdkN6SHF1Q0p3MjhKMWlVS21qZVdybTltenh2NVVac0xzazU1VmVWdTFsd2tLODVialpUN3dVNzB2L1JNQWNZOGhqVVdyMHY5a0J2Q1g2Tzl1Y09seFhPWlc0ZFkvcVVLN0xuV3FQS0xmUmN6KzFaTk9GdGxyWDArYklqbWY0cldFZDRYbWRtRnRtN1d3aFZINi9ia3VCcHBaUTNkcW8yNTRucGZqeVdLN0RrblhCU1hRVmJ1RXVwYXBsckMwcFE2ZW1KVWpzWDFsUHZuWE9QVmRSZnY3TTM2ZS9YTDNTenh2c25lMHdYSXZVTG4vbEV1SE9aTVhqdm42Z2V2SGpVRjloUzNaam51Zitic3I2bmZkSE83dmZIV0I2a25CTHh4MFdJdDZuM3ZsWnhZYkZtMnhvYkhmVmRqdFZZL3hRS1picmV0bFd1WS9qNnQrM0pYZmNWOUlmQURBZ2pzREFRSS9QQTVVQ1R0NXlRY2tYNStXR2orVndTY3JFZjFRYXNkNDZIVUtoSzU3dVZaK25qSG5NWGlhV1kyNWo2bnBhdUNvNFBsL01rR29NMTVSTk5iek5WWU5DMzFRMjVvdk5abzc1UjVwdlp6T2FVT1k5Y3NVV0RYcHNRRGcvV1kxMVlkL2RUeC9kZFZjdk1VdTkrYTUwT1BZODNmMVg4S0xIMGxNOU1jOURZemU2V1pmYW5tVFJxWGRaVmdKVFYyRW1uejl2Y0tic1pxQk1oczNLd2ZGRDlWWE8vcjlvYnduU0Z4Y2RmcGdtWW1sendwSjF3MC85K21DMmorOVJrcTdmbnRUaFdXcGxUVlcvQzNQSG1ZVzE5UE9OdlZPN3R2aC9kOWt5dUllOTlrS1NjemN4bW41UGY2WWE1TkdhOGVOUVYyY2RHcEZ6MnJZeW0zZjFOWXQ4Nnp5ODI5N2JaNXowK3FTTzJOaTFyQzdXYjl2WGswdGU1RC9kMnliTjNQNDk1NkRJNlZYN09mVXRvb1kwSVp0TDI5WVlOYjkyWERxbE0wQkh3Q0NPdytJM0ljRGdFZFdkVVJxcUZBSHoyRnJ3WVI1RjhpV0dUQkowdHhIWk1mU25MZElDdnhtRWcvbGJwM2IwL2M5NDcyeW1lbUZnMHRrbmYwZEs3RmlyZVkyL1hpdFFYN0paZFo2N21zMmNhbENleXBQcUhGWUc1ZjE5NmN0T1Q1c09hWTJlZXk5QzE1NDA2dzFmc2w5djRVZzdtc29XdnlUaEhYKy9kaUxMRGpFa1QyeTRYVEVxZDFBTWxxODJZaFFLM25GcThXYS9uZ2wyLzdzZFF5MEtCMzc1YmlmaTQvVHpqYjVUZUs5LzJrdHVaK1IzcGwvbnQzcXZLaVhlRGRUK2VDTE16dkJVV3NLWXpGcXVxTmg5b0N1MXhFNnIwOWxyUzJ1VXhZQnhVaW51M3lKUW5zc1kzR0hHdDZiMXkwR0o4dGhkT1daV3VncFlqUHN3M0lqUnZWNmlmTm8zTExkZm1FUnNoOTd1ODJpTW5VMzdwMVh5WTBrU3dRYUVjQWdiMGRXMHBlSHdFOUQvZnRoTzk3T0ZYM0xKbmt3MXpXaDJNUnUxUGN0RXlsZHdrejB5SmUva3lIa3VjYjBmTkRtdU0zYzBvYlloKzVMWVc0emJwNmk3bGRMbDZuTUYzN05iV2V5NW9jbGlTd3A0cnJ1L0oxdmViNXNPYVkyZGV5Y3NSMXVjSFIrM01KVnR5cC9TRnhYU2ZYZExKZ0xQVkJ2N1c1SUpkTHNlQ051eFRaVThWMVdhN3BoTXZIVXlGVnl1Y0psaTAzMldOV3VYS3BwOU1sNzZ2VXp0SmlQT0ZzbDk4bzRxU1RVVU1uRWRYdUtlS3I1NTgvUjNRc1piOTV2U2MwdC81ZTd1dmlqWWZhQXJ1M2FhNTZ6UmszcVVhZkxrbGdyMVVYYjF6VUVtNDMrYmNVVGx1V3JUWjRBdnREekt4VnJLTFlHSDUvRjFqOCtNSkJydSswTzNjbjZ4K2NXSTQyMVc4UU50Z1RMOG5LMXJvdnN5cERaZ2pVSm9EQVhwc281YTJkZ0k1TXY5N016aFZwaUNmMGVvRkdXMXJieEFJS3ByaFowUUw4TlNQdW8zU1UvMUtOUHpCaUh6aTFGd2xqWFl6QXZyeW51TVp6V2JOVlN4SFk1VlpFd1NGdjRUUk9Wc05hN085aWNiRG0rYkRtbU5uWHNsSk9tQ2hRNngzTTdIRXJDV1RhOTFXT3VONWJSQ3VTQ3dBQUhNVkpSRUZVZVo5MG9TTDdoYzNzMVdibVdhNC9NcHhTMjRYckhtK0R2NVZ2WjAvQS9VRDQ5cEZyclNVa1R6amJsY0N1OTVGY0xWNG5BbW1xbThIWU8xZTNLM0U5TWJWUFk5K3JLZC9iVSsrN2ZaMDNIbXAvTzN2ZnlLcmZuSEdUYW5COFNqaXhNMVRXbkgycCs4Zkdlazc4QW05Y0lMQ2ZzTGYxamZMd3lHRGF4UnhUWTJ5cmpOVDMvK2I5UG1abXh6VGFhRWRncjlXemxMTklBZ2pzaSt3V0tyVmpBbzhKUGtmSHFwRmlnUjc3V0p0aXdaT0tKRmIzejVuWnhjMU1MODJ4Rkh2cHpXRWxGRnV3ek9YWDBWczg3R3J4bWpvRzlqVmZqZWV5RnBzbENPeXBGaWs2RWlvQmZwZFd3MnVkRDJ1TmwzMHRKMlhSdHN2Tm5STHVLZUs2anZMTHF1MzdXemRhbXNoK3R1N2QvOXBPL0R4M0JJamU3N0pZZS9rTWNSbkdxdUdkZG1uMURlQzV4dk9NS2tyRzJaUnJQZUZzVjk4b2NqM3dLc2RObFB6NWE2TXROM25XcFMxUE53elZWZS9mWjRlVEhrTy96M25xd1JzUHRRVjJ0ZmZlM1R5aE9CcXhwUGxFcDMvV2tMengxZEk5MVNZZmIvMlJFMi9BR3hjSTdDY2NtWjdvNjUwQVgrbzQxN2VNM3VzNlhUU1V0SUUwcGdlMmNoWGpzVjd6WnNaU3h3SDFtcEVBQXZ1TXNMblZhZ2g0eHo1VFBuQThmNTZlbTVrcHNEeEwwWlNOZ1NVTDdOb1l1SmlaZlg0S25JeHJ2QS9jWFMxZU01cXdsMWxyUEplMXdDeEJZRSt4SEpZMXpsMGIrbEZNNWJuVytUQzFmWWVZTDBXMGxTQjZqUjM0Umk3dGp4Snh2Yi8zVWtSMnRVVUNzU3pSeHBJMlFiU2cvY2RTY0lYWG56elVWZjdPaDFLTzlXWk9WVHpMK2JuRlc2L3VubkMyaTI4VVQ4UlJtMHFzbXIzMy85eWJJRjdNb0RsUFBYampvWVhBZm5RWENQR05FVmRBNm0rZG1KUGJwelVFNnZiR1YyN2NBTzhaSHZ2ZDIyVDhXek83ZXVmdTQxc0pOL0RHQlFMN0NTRjZMbFlmMnhtcTNEYUIrNUt5ZUM0Mk5UZjhSZmd6cEFtMmNoV0R3TDZrVVVKZHFoTkFZSytPbEFMM2dJRDNVWklpc0IvVkJmblJpK3NVSXp4YUxBYms4LzJ0WFpDd000N2NNK1hqSVBiU2EybDUzMWM1RnR5bnhTSmhDQlVDK3pJZjRoclBaYTJXN1ZwZ1AzdG5qYUtGMWxpY0I3WHpUbWIyaUIxYW8yNnlYdXQ4V0d1ODdGczVjZ1h4cE83bzhFMGlEWk1scTRKNWYyMWxqYThocnZkTjNyWElybTk4aVNneG4vRHk3M29WTS92RVF2b3A5ZzJnS3Jhd0pDMTFyVGMzT3U5ZE9MZkE3b2s0UFovZmQ0TFl4amg2YlpiclJWbG8vdHRNbmVIVnA4VTMvbGpUdkxxMCtIYlcydWFsWm5aRmg3ZStRMkp1TjJicUx2YzIzamRLQzRaRGxmTHFrYktPNjh2MXhnVUMrd2w3d0Z0RC8wMXd0ZmdkZHpRdEowUHNWSkZjOXltMmpHS3V2Q0s0UVJ1cWVRdFhNUWpzeXhrajFLUUJBUVQyQmxBcGN2VUV2SStTRklIZE8zS3N4YXpjdFdoUlVDdkpBdTFsSTRWcEYxcFdZUkk5U2hZeExSYTNmWDA4UDZnNWxoc2xUQkhZUytpMXU3YkdjMW1yZHJzVTJQV2NQREhpTDFSdDdJTXU5bjZoYTdWN2FqbHJuUStudG5mZnI1TzEzNHNqeDRvMVYrdUV4UnJGZGMvYWU4d3R6RmlmNzFKazkrYk1EM2ViOGxxQUwwVmNGOE5ZSEJqOXJpUHJONjI0Y2FoMTBOTWltMFVsVnRldDVnR3ZYK2NXMkZOT1U1VmFNM3Z2RUxHZTB5V0o1MUtraFhnNU5wNjg4ZEJLSE5ZRzZ2T2NRZjVWTTd0c1ozWDlENjBlaGtybGVwYmpyVTdQYkZmZk8rMlhzd2J6eGtXTE1kcFNPRzFadHZyQk81V1M0bWExMG5Dc1VzeVpnMnU0ODQ2VTl0UVFkRjdHYzU1N3I5cXVZbHIzWlJXQUZBS0JxUVFRMktlUzQ3cDlKdUF0OEZLT2ZucUxOdkhUTWIvaktvR1U2UGFzWURFNFZHU3FvSzhYOGp2TTdHZEg2cFZqUFpIYk5HOEJwWStCbStjV09pRS9BdnNFYUROY1V1TzVyRlhOWFFyczN0SHNKNXZaclJiZ0ZtYVQ5VnJudzFyalpaL0trWVczZ21WZVpLUlJTeFJ0VS9pbnVGTEpGZGY3KzZhSTdHODJzK3QyQzE0dDRtc2s3NXRBd3Blc1Q5OVY0MllWeTlDM2gwN2l5UVZSeWJkTWFwWE8wYm5QRWZ1eGI1N2FnbjVxdldMNVBPRnNUb0U5UlZ6L2J0ZzRFZWVwS2VVZG9ubEpMcWxhQitnOXNwdi9YbWxtc2pZZVNuT2M5dHk4cnpjZVdnbnMzcnVncitNYU5sdzlBeCsxWldyOGdOUXg3NTBLeUJYNXZYR0J3SDdpbm9uRkMxTHVPVGZ4VXNmTlVENk5aNjNYNVk1MktIM1d6QzdablFqN1NQalJNOXlwN1NvR2diMmtkN2wyOFFRUTJCZmZSVlJ3QndROEM0SlVTK3FZUmJtYXBlQS92MjFtK2hndlRkNGk4ZkhoNDlDemFQWEU1WmJXWERxcXBpTjRZL05TQzcvMVE5dzlCbk11WGt2SHhUNWRYK3U1ck1Ga1Z3SzdKNXExT01wWmc1ZktXT044V0t2dCsxUk96R3F4OWlKc0xtNHA0dnA5ek93QkJSdFhjNHZzM2thY05nc2VWTkVTdkZaZnBRaXBOVVVPYnp5bm5QeXIxZmJVY2p6aGJJNXZGUFhUamMxTWhnOG5jU3BlYTZ6RlhQbW9DcHAvcm0xbUN1emRNc21LV0FZdFk2bFZNTjZ4KzNuam9aWEFydnA0cDVuNk9tdWNTS0J1dmZsUjB1K2VSYjdjYWNrYS93c2xONGxjNjgzWnVTNUt2SEdCd0g3aXp2RG1HTGxTMFViNGtzZXhXdVZ0ZkE2NTZ6cFhONzdmWkdabkdobWpOZGNYQ095TkpoR0tYUVlCQlBabDlBTzFHQ2R3U2pQN2ZoZW83Ly9PQkNuRmlpSFZpbHRIRGhVRWFPeDQxbitHSGVUM1ZtamJ2YnZGeGIxR3lwSDEwS1dEbjdXVVcwbEUwSUpvTE5WYzNQYjNrRS9mNTVqWmRVWnVXcE9WeHdDQjNTTmt0dWJuMG0rZG4yTlhBcnZuSTdLMWhaVlBaanpIV3VmRGtqYnYyN1hlKzNFdUM5S2FYSThJN200dUV5bTBWRnp2aTU1VFpJKzl4MXR1bE5mb0cyK3p2WlpnNkZuZ3ZqTlkrUy9OMVpFbm5MVVcyR1ZwZTk4UTU4UHI3NXJXeTU0aGllclNXZ1QxM0M2b0Rwb3Y5RTArVi9MR1E2M25aYWc5R2dzdk5MT3JKalIyNlNKN3l2aHE1VlBlc3lBVzN0eTFsemN1OWsxZ3ozR2ZNelpjdlRGUTR6Uk93cU5TbE1VTFFCK2JEMlRJOW9USTNXdTVpdkVFOWhwOVdRU1JpeUZRUWdDQnZZUWUxODVCUUI4STkrc3NCdjZnODVINThSbHVxR1B2cjdjZkNvaGpLY2UxUzB6NFZ2a3ZNalB0bUgrdm9HM2Vybk91Nk9GWlViUll3SGk3N1MwWENOdm9FZGo5d2JqMjU5SnZZVHpIcmdUMm1IVk43dkhoVWdaVHJsL2pmRGlsbmZ0NmpiZkJNOWNwbzVwOEx4VGNQY2hGMlZDcUphNzNaWHNpZXczWExaNHYyVlFqZ1pxY2M4cnloRytWcGROL3o4NHBkQ0N2WjRtODFBMUxUemhyS2JEL2twbTlJR0k0c29tNWRnQmRyVmsxZHVVQ0xaWmF1VW1USVloT2c5NGljbk05dndxMitpK0ZZelBuY204OHRQNSt2a0F3SmhxYlF6ZmJvdE1GNHFmdmxhVWxqYTlIbXRudG5QNXQ0VnJMODRFOVpkM2xqWXUxQ2V5WDZBSnh2c0hNdEJreGxPN3VCUFJPR1cvZUtWR1ZJVmRYRW9pWHR2R3F1bmtCNkwwTkFyMTdYeDdtc0NGZXRVNHB6dEdYS2YxTkhnZzBJWURBM2dRcmhWWWswSDhnNktWeGovQngzZXBvVnNveGNRVWwxY2Z6dnlXMjhSZkN5L2kwSS9sTFgxYmVCLytVSTdPZUgwQTFwZVlDUmgvbk92cDQxZ2pUT1JlNkNPeis0Rjc3YyttM01KNWpGd0s3NXpyaExTR1E4VGRLRzlmdytqWE9odzF4cks3b21Kc2Z2WmN2WldZS1pyaTJOQ2F5MXhiWGV5NWpJbnNOY1YzMzhJUVZiV2kzZHFOUk9nWnVIYjczeHNvcFBhN3VXZm5KTjYzY1FYeXF0Q0VOcnZmNnQ3YkFybmZQK2N6c2djSFZWMHFUV3NWaThBeEErcm85dkR2NWV0ZEM0NVhOZHVwYlcrMi9vOVA0VkhlTUtReFQ4M2pqb2JYQXJucDZSaktiYmZsb3NNYWU0MTJoRXdleU9sZmZmVDRCYU1wbVFlMng3YzFGcXZhVURVVnZYS3hOWVBmYW93RGxjdk5UNm5iVjIreW92UWJlSHBZL2IyYjZJM2MwdWNuYk5INTB0ekZ3ZThjMW5OZiswbmR2eWpkS3JiN001VWQrQ0ZRaGdNQmVCU09GTkNTdy9VTDl1cG5kMDh3VWlPUmJGZStyWStMUE03TXJPR1dtdkp3MmkyaHBFYUd5NzJ4bUQ0N1VlYXEvdUJTL2lqVVdNRnEwcVk2eWpCeExVeXczU29ZR0FydFBiKzNQcGQvQ2VJNWRDT3luRGh0UnN2d1lTcy90QWhicDQ5cUxzMURhOXBMcjF6b2ZsclI1bjY2VjZ6QzVIaGxLMm55K2FCZUkrdE1yYmZDMnlONUtYTy94Ykl2c3RjUjFsYS8zdHhhb1Eya3RHeUduRDZjSkpYaU5wYW51UjFLTUtZWjgxQzVsYUh0Q1V5MkJYWnhrcVNsUitZSVpqYTl0dWI1NTZ4UUwwejcvY2NIYXZYUk8wdnBBUmlWNnJtTHBpOEVkbzlvL1ovTEd3eHdDdTJmc004VGpjZDEvMUttMkx6V0FKVmNmV2l2ZXhNdytHZDVOQ3V6b0pYMmp5UDJSRExwaVNYNzI1ZEt5OUdTMU5nQmUycTJEOVA0WlM2OE5ZKytiWHVXM2Z2Zkd4ZG9FZHJGNlJ5UWdkYTRCM0JqT1ZMZEh0YjhSZEY4Wms5Mi9jNDM3Sjg3YWZxanUzdVpRNnFaeGlydWlVbGN4Yy9WbDVpTkRkZ2pVSVlEQVhvY2pwYlFqTVBhQjhOL0JiK3BqT3F2TmR4VllxZWlqVUFGTC9zek1mdEpweHRTUFo4K0ZpMjZyc21VZCtQWkVsRnFjeThMckVaRUFVeVVMZHM4bmVsOU5MV0FVZlBKemlmWHVzMm51dVVyd3UrNXhuMks1a1ZtZEUyUkhZUGZwN2NOejZiZHlQTWN1Qkhidmc3U1dxRkxDSmVYYU5jNkhLZTNhOXp5YXMrV1M0NFlqRGMwUk1aYktTaUtIVGxQcGU2QWtvR2xxKzNxUlhSdmw4anV1YjVrYUtiWVJNbWM4azlLMmVOWjRLdjgxd1JvMjFlVkVpbGc2VmJndmJXL3E5WjV3bHZzdTBMTXRMdnFqc2pVV3I5dzlCOXJreUUyNS9aRmJ2dko3UXRKbW1YSy9LTUhxVVdZbUE1MmNkS3BnRWF2dmJPODdWZVcyOHMvdDFka2JEM01JN0tyakZKRmRhem05VjJRb2RIeWhnWURpdk1nWHZOWkdteHRDdWUrbUk0UGJzS01jOEZxMzZYMzR1Z24xMWpPbnVCOFNLczhTdVUvSk9zNGJGMnNUMkQwakUySFVzNjZObFZKRGt4UjNzYnJmMURYd1pwZnJPMERqVmtacjV3dy81UGFOMXEwNmxTYnI4N0dVczViMnZ0TkxUOS9QMlpmZS9NbnZFS2hPQUlHOU9sSUtyRXpBKzBEUTdmU0JKbXNDaVY2S2dDMkxnckdkZm8zNW4rNCtudlR5MUpGR2lldmFOVTVKSlIvUFh1Q1EvdjRwRmgyeXpOQ0wrQnBPcGYvSXpCNWE4S0Z4OXM0ZGpoYWFNZXR5VmFGZndPaG9yR2VKb2c4SnNWZjlaZTNvcGRKZGNxLzhvZDhSMkgxcSsvSmMraTBkenJFTGdkMWpydWN3ZDZOcmF2czNyM3R4SjF6Y0liT2dOYzZIbVUzY3UremV2S2dHeTBLdzlIaDJMcmhQaEhmNUYzSXZITWt2ZDI0NkhWY1NGeVduS25vbi9vU1pTZml1bFdMemsrN3hIMmIyblZvM1N5eEhRcEZpU1B4elluNWxTN1VrbEhDcU9EMEt0ampXYitJc2x5OEs0TmFMR0VOVktSRzBNcHBXbE5WN0Z4UVZYbkR4dzRLNDFjcU40MmJWVXQ4aG05ZElDSldZKzdiZyttZjdHWkJBZktid2pYcnR6bys2L3B3a2tjZlUwNktKeFVlemVlTmhMb0ZkbGRTcEI1MHdGcnZjcEdmdlpXYjIxMkd6VWV1Sm9iV2NubVdKNE5vQTBucEN6L1hsSWh0Q3VRSzc2bjFoTTFQOHFqSDNucHR0azFXMVRua29LUEwzblVibnVsdktFVVczYisyTmkxd1JONlUvdmVDVk1pU1RqKytwU1VaMXN2S09wWHVGdGUvUVBLU3hJMWQyZjI5bUdtOWpLZVdFZUg5dHpocDQ4MzdhV0ZILy9tSFFKVFoveSttYmxMcE9tWis4T2JiVVZjeGNmVGwxckhFZEJDWVRRR0Nmakk0TFp5TGdmU0RFcXZHVnJZK3pNd1lMaXlsVkwvVTVubXZab1E5aUxSWTNSUU1KM1lvaW4zSlV0N1MrUFNNZGlYMStCamVKSFJMbHRZRFpEQUNqdWw4cytJZ1dpNVRVOHBoeDdQNmVrSlJySFpiUzFyWGwyWmZuY2lyM1hRanNXa0RLT25CcDcrMHB6OE5hNThPcDQyVWZybE1BTzcyWHpyK3d4a3dSVHhiV2hLclZPWGx3RDNOczFWTExDNXRxT1ovaW43aXZuUVFWZlRmSnBjTC9EZjlSeDkzbHQxdmZUakt1aUNVWmE4am9Zc3k5VGptRk9pV1V2SC9yMU9DRXBjaFB2Vnh4S0FCaHFlVm9hdjF5M3lHcDVVN0pKd01mR2J5VXVxS1pjbTlkNDQySE9RVjIxVWNiWXdvV3F0T3RTMGhUM3hFNWZ1WFZUZ210T2dHbDlZL0V4ODJrelFDNUlOVjNuRTVHcEtSU0l5bHZYT1NJdUNuMVZaN1dBcnRPMTRpeDl4MnNUV1M1ZmRXcGNHMzZiNzRIOUo2UWdaZm5NaWpGbGRnMmx3K0Y5NGZpQzJnTjIyOFFTZGpYdDVNc3d5WHdheXpFTm05eStzYmJESnI2N3ZVQ25xcnRKVVp3Yy9abDZ2Z2xId1NxRVBBbXFDbzNvUkFJRkJEd1BoQUtpazYrVkJZdjJza3Q5Zmt1Z1YrTFB3VkpiWmxxSDIvTy9jaXMwYmJhUVlSeTZvVEE3dFBhcCtmU2IrMkpjK3hDWVBjV0xsUGFVZU9hS1FLNzdydlcrYkFHc3pXV0ljdE9XZXJGZ2xIdm9sMVR4Wk5kMUhXT2UzcnZyem5xTUhTUHFZdDhsU1ZSNmtXSjFxUWw3U3NWdEVydW5YUHRFdDYvcXE4MkpIUnlVZjZxYzkydjVMUjNMSytFM01kMjF1ZzNxMUhZeERKMkxhNnIydDU0bUZ0Z1Y1MVMzRmhPUko1OTJkUjNoRFFTYmJncHZrM3FTWWJzeW8xY1VDUEdsVGN1Y2tUYzFIWjUzNm1sRnV3U2ZYV3lRQ2NYcHFhYzhURFhkK3AyVzFMN0prVUVMM0diNHdVOExYRVZNM2RmVGgwdlhBZUJiQUlJN05uSXVHQm1BdDRIUXV2cTlJRkdhaDBYbHpXV2pqL0dBbmVWdE9uTjRZT3d0cXNJSGNGOGdabkppckYxMGdhQmZLL1dia05xdlQyQllxcWdtSHIvTmVUYnQrY3lsemtDKzQrSWxUd1BhNTBQYzhmTFB1UkhZRjlITDNydnIxMjFva1JnVjUxelQ5UGx0ck4yd0xyYysrZmszL1g3VjNXVjVhSytqM2RsdGQzemtpWDdBNE9Mamh5R05mTEs1L0V0ekN6Vi8zK05ldzZWNFkySFhRanNmVDEvS2F3ZHp0dXE4UW5sNWdpcVE4VXBYcFNNbzA2WmNLL1NMTnEwa3NzOXVRdjEzTTE0OS9MR1JhcUk2OTFuOC9mV0FydnVKWkZlZ1dHbmJucmtqb2RkaU93cGZaTVNrRmRXOUZxL1QzV2hseEx3dE1SVnpOeDltVE9XeVF1QnlRUVEyQ2VqNDhLWkNNaFhwdnkxblcrbSsvVzMrV2l3aXRHSGFlMmtsN1dzNG8rcFhMQVdQQXJ1VTJwcFAxWXRCVm5VUFdyWGUvTitNZDk1bFhHTkZ1Y0pGQ1dDNGx4dGFIMmZmWHd1YzVnaHNQK0lWdW56c05iNU1HZTg3RU5lQlBaMTlLTDMvdHBWSzBvRmR0Vzd4VWEvakNkdTN2bGxmOWFNN2sxSys4QVR6a3JMSDd0ZWJoZmtaLzJwQ2ZGMld0VmhxRnl0WlNXQ1BpY3hHR2xwM1RSbWRLcFYzd0dsSW1ocFhYUzlOeDUyS2JDcmZqcHBvTFdKTnJGU1kxN1Y0TktYOGNiZ3dpZm1jOXU3bjJKU3laSmQ3cVphSmEwNzVjcEs3a1ZxSkc5Y3BJaTR1ZldZUTJCUDhUa2VxM2V1d0s2eTVOYm5JU0hXUnk2VDNQemFYTGw3d3FtZ0ZPdHl4VUxRUm1CSjhnS2VxdXlwYm1sMzBaY2xMTGdXQWtrRUVOaVRNSkZweHdUMFFYYWRFRHdwRnB5cVJqWDE0dFV4WWZuZ3JHVzFQbFF2V2Qwb3NNa0RNdnliajdWUGk1NmJCc3Y0MXY0dmRleFRMbU1VUExXbXF3QlpJOXkxKzdpVS83cGRKMCtnS0JVVWQ5MitXdmZmeCtjeWxRMEMrNDlJMVhnZTFqb2ZwbzZYZmNpSHdMNk9YdlRlWDd0cVJRMkJYWFhYaHR5ZkpRUjVUMm1uVHZ6ZHFQTWYvdkdVekF2SzR3bG5OYXVxdURvNnZTaFJYYTc3V245amx0VDlKNE5WL2UwcWZGY1AxYU4zaVNPaFdBRTRsNUs4OGJCcmdiM25KSkZTbTFrU0Q3MTRDS1ZzMVZldkN1c0tCVmF1TVc2MS9wSExtRWRYcnI5OGdzdTRTTUpxelFEQjNyaFlxOEN1c2FGdlJxM1Y3emRob0V3UjJIVWJhV2FYQ1c2eFdwekl5RmtIeStCTnNVWmk5WkJiTlFVV3I2RmxlQUZQUytLWDdLSXZKd3diTG9GQU9nRUU5blJXNUZ3R2dUT1kyVlhETHY4bEszMUV5NnBCQ3dqNWt2ekF6QllwUjVyWlhVSlU5RnpMRGxrNzNEZjRKcTM1VVpiUzAzMGtkb25pOG84NkpZbjcwenEvcW8vcVRnc29TTlpTa2lkUTFCQVVsOUxXV3ZYWXQrZlM0NExBL2lOQ05aK0h0YzZIM25qWmg5OFIyTmZSaTk3N2ExZXRxQ1d3OTBMSEwzYldzQS91NGdJb1VGcHVrdkIyN3k3bytyc3FDVys1OXkvTjd3bG51ZVhyMUtQY25IeW1jNy93OTEyZ3d2ZWEyVHM3VjMwZk1iUHY1QmEyZ1B3U2NoVjA5STVtZHNFSzlmbEhNNU5QYkFsZ3JVNklsbFRUR3c5TEVkajdObXI5Y0tGd0NrREdVNmxCUHoxR0VoSmxyYXVUdHJKYWJ6VjJKUWhxM3JsYkNKYnAxV3ZzZHhrVVBTaXM0VnFNSzI5Y3JGbGc3OThEVXdSdkJUNlZwZjNVVGJKKy9Tc0RPUVZMTFVrYUE3TCsxcGhOclkvY3RpajJoRVR2c2ZURjdobTRkQWkwV2xLLy90b1VYKzhsc2RPbWJsNlU5bVVOTnBRQmdSTVJRR0JuVUt5WmdNYnZFWjIxdVJaYWVzbHFKMWNmYmFjTGY3YmIxaThpL2pVc0l0NFFGaEt5QUs5aDNWRENVaDlzK2hpU2RZU09RZXRJMXZaSHB5S2VhMEg0eWhEa1JaWkZ1NjYzMm56eTdxTldmaFoxUlBlS1pxYWRkWWt4bS83eHZtSm0rcU1nZWEvcCtrc2YvRXVwZjBtL2NlMkpDZXpUYzBuLzdvYkFtdWZEM1JEanJoQTRUQUphK0YvQnpINmorN2E0V0RoWnQvbnRJZEZOUG1MMXpmR0s3dnZxVFdiMnRjTkVkWkN0M3Z3Ky9XVXorOVZ3Q2tMdm1PM1VmNmNxY0trMkdTVFMvbE5Eb2ZZZ08yU3IwZnBlbERXNzFqOWF4OGx3Nm1jaWZTUkxXYTJGdmhrMmdlUmpXdXNpYllLVXVJQ1oyaGNhWDVjSWM1RHFycE85V3Y5c0o2MHp0WUgxK21CNS9EYm1vYW5JQjdXc2M0ZDNnR0oxYks1Qk5mOHJucGZXL1ZwNy9sWGxremg5L3g4YjF1NGF1ME9uTTNyOVFSdVk3ek16NlErYVp6U09TVDhpb1BsZ1YzMUpQMENnR2dFRTltb29LUWdDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFPaVFBQyt5SDFObTJGQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCYWdRUTJLdWhwQ0FJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaEE0SkFJSTdJZlUyN1FWQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFcWhGQVlLK0drb0lnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRURna0FnZ3NCOVNiOU5XQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRcUVZQWdiMGFTZ3FDQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCUXlLQXdINUl2VTFiSVFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBb0JvQkJQWnFLQ2tJQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFRG9rQUF2c2g5VFp0aFFBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ1dvRUVOaXJvYVFnQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRT0NRQ0NPeUgxTnUwRlFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQktvUlFHQ3ZocEtDSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBNEpBSUlMQWZVbS9UVmdoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUtoR0FJRzlHa29LZ2dBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ1VNaWdNQitTTDFOV3lFQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUtBYUFRVDJhaWdwQ0FJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkE2SkFBTDdJZlUyYllVQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUlGcUJCRFlxNkdrSUFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRURna0FnanNoOVRidEJVQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFTcUVVQmdyNGFTZ2lBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUU9DUUNDQ3dIMUp2MDFZSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDb1JnQ0J2UnBLQ29JQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUlGRElvREFma2k5VFZzaEFBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VDZ0dnRUU5bW9vS1FnQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRT2lRQUMreUgxTm0yRkFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFDQmFnUVEyS3VocENBSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhBNEpBSUk3SWZVMjdRVkFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRXFoRkFZSytHa29JZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VEZ2tBZ2dzQjlTYjlOV0NFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUXFFWUFnYjBhU2dxQ0FBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFDQlF5S0F3SDVJdlUxYklRQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQW9Cb0JCUFpxS0NrSUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRURva0FBdnNoOVRadGhRQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdXb0VFTmlyb2FRZ0NFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUU9DUUMveCtIRUpxSWVTNDltQUFBQUFCSlJVNUVya0pnZ2c9PSIvPjwvc3dpdGNoPjwvZz48L2c+PC9nPjxnIGRhdGEtY2VsbC1pZD0iYjMiPjxnPjxyZWN0IHg9IjEwOTMiIHk9IjUwOCIgd2lkdGg9IjQwMCIgaGVpZ2h0PSIxMDAiIGZpbGw9IiNlOGY0ZWYiIHN0cm9rZT0iIzMzNTU2ZiIgc3Ryb2tlLXdpZHRoPSIyIiBwb2ludGVyLWV2ZW50cz0iYWxsIiBzdHlsZT0iZmlsbDogbGlnaHQtZGFyayhyZ2IoMjMyLCAyNDQsIDIzOSksIHJnYigyMSwgMzIsIDI3KSk7IHN0cm9rZTogbGlnaHQtZGFyayhyZ2IoNTEsIDg1LCAxMTEpLCByZ2IoMTQ0LCAxNzMsIDE5NSkpOyIvPjwvZz48Zz48Zz48c3dpdGNoPjxmb3JlaWduT2JqZWN0IHN0eWxlPSJvdmVyZmxvdzogdmlzaWJsZTsgdGV4dC1hbGlnbjogbGVmdDsiIHBvaW50ZXItZXZlbnRzPSJub25lIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiByZXF1aXJlZEZlYXR1cmVzPSJodHRwOi8vd3d3LnczLm9yZy9UUi9TVkcxMS9mZWF0dXJlI0V4dGVuc2liaWxpdHkiPjxkaXYgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiIHN0eWxlPSJkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogdW5zYWZlIGNlbnRlcjsganVzdGlmeS1jb250ZW50OiB1bnNhZmUgY2VudGVyOyB3aWR0aDogMzc0cHg7IGhlaWdodDogMXB4OyBwYWRkaW5nLXRvcDogNTU4cHg7IG1hcmdpbi1sZWZ0OiAxMTA2cHg7Ij48ZGl2IHN0eWxlPSJib3gtc2l6aW5nOiBib3JkZXItYm94OyBmb250LXNpemU6IDA7IHRleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICMwMDAwMDA7ICI+PGRpdiBzdHlsZT0iZGlzcGxheTogaW5saW5lLWJsb2NrOyBmb250LXNpemU6IDIwcHg7IGZvbnQtZmFtaWx5OiAmcXVvdDtNaWNyb3NvZnQgWWFIZWkmcXVvdDs7IGNvbG9yOiBsaWdodC1kYXJrKCMwMDAwMDAsICNmZmZmZmYpOyBsaW5lLWhlaWdodDogMS4yOyBwb2ludGVyLWV2ZW50czogYWxsOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3b3JkLXdyYXA6IG5vcm1hbDsgIj5Ccm9rZXIgQjAzPGJyIC8+5ZSv5LiA5a6/5Li7IMK3IOacrOWfnyBEQiAvIOmYn+WIlzwvZGl2PjwvZGl2PjwvZGl2PjwvZm9yZWlnbk9iamVjdD48aW1hZ2UgeD0iMTEwNiIgeT0iNTM0LjUiIHdpZHRoPSIzNzQiIGhlaWdodD0iNTMiIHhsaW5rOmhyZWY9ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFCZGdBQUFEVUNBWUFBQUNQdFVIVUFBQUFBWE5TUjBJQXJzNGM2UUFBSUFCSlJFRlVlRjd0dlFmNEJVVjU5bjIvYVB3c3NSTTFzVVlsMWtTL0x5TFl3TjVmRGZhdXI3MWlzRVdCUkdMRWFHeXhCbHRlWSsvRTNsQUpObFJJTklrbEVTdllDeFlRWXN1M3Q4NkpoMlYzWjJaM3RweHpmbk5kWENqLzJTbS9tYlBuN0QzUDNzLy9FZ1VDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUlGc0F2OHIrd291Z0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQVFBanNiQUlJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBUUE4Q0NPdzlvSEVKQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFDQm5UMEFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFT2hCQUlHOUJ6UXVnUUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWdnc0xNSElBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSTlDQ0N3OTRER0pSQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJCSGIyQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VDZ0J3RUU5aDdRdUFRQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ2dNRE9Ib0FBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJOUNDQXdONERHcGRBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkJEWTJRTVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFnUjRFRU5oN1FPTVNDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFDTzNzQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlOQ0RBQUo3RDJoY0FnRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQkFZR2NQUUFBQ0VJQUFCQ0FBQVFnc2djQS9TTHBIeTBDK0ttbGZTZDlZd2tBWkF3UWdBQUVJUUFBQ0VJQUFCQ0FBZ1JVQkJIYjJBZ1FnQUFFSVFBQUNFSURBRWdnZ3NDOWhGUmdEQkNBQUFRaEFBQUlRZ0FBRUlKQkZBSUU5Q3hlVklRQUJDRUFBQWhDQUFBUkdJb0RBUGhKWW10MUtBcjhsNlhjbFhVWFNlU1R0SStuc2trNm8zZ1Q1b2lTLzlmRVpTYWNzWlBhL0hjWjdKVWxubGZTSDRmLy9YTkx4a240bzZYT1N2cnlnTVM4RUhjT0FBQVFnQUFFSVFHRHBCQkRZbDc1Q2pBOENFSUFBQkNDdy9RUXVWWWtyQjBrNlI0R3Aya0xrM3lSWnRQbDBzQlJaaXNCVVlIcGIzUVFDKzFZdjcyaVQyNlg3eDdra0hTRHA0Wkt1bGtqMDY1TCtieVZtdjBEU2lZblhsS2gyWVVtM2xIUm5TZnRKOG9GQWF2bUJwTmRLZXJha3owcjY3OVFMcVFjQkNFQUFBaENBQUFUbUlJREFQZ2QxK29RQUJDQUFBUWhBWUozQUgwczZSdEk1UjhKeWFpVkd2VTNTY3lSOVhOTFBSdXFIWm9jUlFHQWZ4bTlYcjk2Ris0Y2oxUCswT2pnOE5GT29ydStKMTB0NmhLU1RSdG9zRnRGdkt1blBKZTFkcUE5SHRUODIzTU4vVWFoTm1vRUFCQ0FBQVFoQUFBSkZDU0N3RjhWSll4Q0FBQVFnQUFFSTlDQXd0a0MyUHFRZkJaSHF4WkpPNnpGV0xobVBBQUw3ZUd5M3VlVnR2bi80V2UyR2tsNGxhYzlDaStnRHh2dEtlbm5CeVBDelZIWTBkNUQwTEVtL1UyaWM5V2JlVjluSDNHdkV3NEdSaGsyekVJQUFCQ0FBQVFqc0FnRUU5bDFZWmVZSUFRaEFBQUlRV0RhQktRV3lGWW52U3JxTHBLTUtpa3pMcHJ6ODBTR3dMMytObGpqQ2JiMS9XTFIrWkdXZDlaU1JvRDlkMHVNS3ZkRmpML2hqSlYxaXBMR3UzN2Z2V0ZuT3ZIL2tmbWdlQWhDQUFBUWdBQUVJWkJGQVlNL0NSV1VJUUFBQ0VJQUFCRVlnTUlkQXRwcUdyUXdzWUdFYk04TENaamFKd0o0SmpPcS9JckNOOXc5YnJSeFNIZjQ5ZnVRMVBrTFNnUVh1ZjFNSjdNYnhreEF0Ly9hUjJkQThCQ0FBQVFoQUFBSVFTQ2FBd0o2TWlvb1FnQUFFSUFBQkNJeEVZRTZCekZONmthU0hGQkNaUnNLek04MGlzTy9NVWhlZDZMYmRQL3g4OXVqTXlIVWZFSDVUMHRsN1dMVDhtYVNuRG55VEowZGdkMDZNNzRjZGNJR3FieWR1elMxT2ducVRrRk1qOTFycVF3QUNFSUFBQkNBQWdlSUVFTmlMSTZWQkNFQUFBaENBQUFReUNjd3RrSG00SlVTbXpHbFR2VVlBZ1owdDBZZkF0dDAvYmlYcFNFbDdSR0I4c3ZyN1laTHNUWDdLV2wxYnkxd3FIQm8rTkNFcHFpUENyeS9wWTMzZ2gydmFCUFpmU25xRHBGZUU5ci9USU9UN2VkUys3ZnRMdW4vd25FOFp5bnNsM2FZMjk1VHJxQU1CQ0VBQUFoQ0FBQVNLRTBCZ0w0NlVCaUVBQVFoQUFBSVF5Q1FRRThnK0tPblppVzFlV3RJMWcwaVRFeG41MDNDTis2TE1Rd0NCZlI3dW05N3JOdDAvTGluSnd2RmVIWXRpUWZ4K2tsNHI2UmVSeGJ0WUpiYS9WTklOSXZYK1NkSXRCNGpWZFlIOXE4SGU1dlZWTkw0ajFuT0t4L3c4U1Q1b2lKVzdCL0UrVm8rL1F3QUNFSUFBQkNBQWdWRUpJTENQaXBmR0lRQUJDRUFBQWhCSUlCQVR5RjRtNlo0SjdkU3JYRnpTWXl2cmhBY21SSVA2Mm5kTE9xQ0taait0UjE5Y01wd0FBdnR3aHJ2WXdyYmNQL3hjOWt4SkQrOVl4Qk9EOE96bzlkUnlYa2t2bG5TN3lBVkR4T3FWd0g0K1NRK1c5THFCbGx1cEh2U091cmRWekE5VFlWQVBBaENBQUFRZ0FBRUlqRUVBZ1gwTXFyUUpBUWhBQUFJUWdFQU9nYkVFc3RVWWJKZmdTTXFyUlFibEtQYnJWb0xOUjNNR1Q5MWlCQkRZaTZIY3FZYTI1ZjRSbThjUTMvRUxTbnFucEwwN2RzWW5LaHVYbTBuNlhvL2RZNEg5NE1xTzV2RGdCZCtqaVROZFlwSGRrZXlPMW04clA1ZDB2ZXJ0b3crVjZKQTJJQUFCQ0VBQUFoQ0FRRjhDQ094OXlYRWRCQ0FBQVFoQUFBS2xDTVNFcGI0UjdPdmpjekk5ZXdGYmpPa3FUNm9pTHc4cE5USGF5U0tBd0o2Rmk4cUJ3RGJjUDg0cTZRaEo5K2xZMWFGNUlxNGo2U2hKWit2bzQ4NlNYck9nblhYWnloLytHRWtXOE51Szc5ZStiMU1nQUFFSVFBQUNFSURBYkFRUTJHZERUOGNRZ0FBRUlBQUJDRXdva0xtcmZTUzlYOUk1TzhnN1llQ3RlL2dHczVqRENTQ3dEMmU0aXkxTUliQ1BmZis0Y3VXVDd2d1B0bGhwS2tPaXkxZnRwWWo0YjVSMEowbU9ERjlDOGJQcWMwTEMxcmJ4dkVyUzNScVNweTVoL0l3QkFoQ0FBQVFnQUlFZElZREF2aU1MelRRaEFBRUlRQUFDQ3lZd2xVQm1nZW5sUVVCcXcrSGtmUHRLK3NhQ2VXM3IwQkRZdDNWbHg1M1hOdHcvRGd0SlFkdElsWW9zdjBabGczVjBSeFQ3OTZzbzkydEwrdXk0UzViVnVwT2R2cm5qaXFFSldyTUdRMlVJUUFBQ0VJQUFCQ0RRUkFDQm5YMEJBUWhBQUFJUWdNRGNCS1lTeUR6UHUwcDZSY2VFdnhZRTlwUG1ocktEL1NPdzcrQ2lGNWp5cHQ4L25JVFVDWmI5aGsxVCtWeklEZkd0QXF6T0llbklrQmkwclRrbmhYNUJnYjVLTlhHRjRMRnVtNittZ3NCZWlqVHRRQUFDRUlBQUJDRFFtd0FDZTI5MFhBZ0JDRUFBQWhDQVFDRUNVd3BranM3OGdDUkhzemVWbjFRMk12dEpPcjdRM0dnbW5RQUNlem9yYXY2R3dLYmZQMkwzcE5KNUlXS0hqRXV6aWJILytyR1NMb0hBenNjZUFoQ0FBQVFnQUlHbEVrQmdYK3JLTUM0SVFBQUNFSURBN2hDWVVpQ0w5WVZGekh6N0RvRjlQdmFiM0hQc00xMGlTZktLVDZ5dlB2Y1BKeTk5Y3NzQzJBdmRpWmsvVkhDQlloSGhuNmtPSWZlWDlOMkNmUTVwQ29GOUNEMnVoUUFFSUFBQkNFQmdFZ0lJN0pOZ3BoTUlRQUFDRUlBQUJEb0l4RVNyS1FXeUwwcTZwcVFTZGd5YnNPaS9KY25XQzN2VUJudXlwTk1ubnNDMkMreiszVzNXWjF2aitsTko5cjMrNzRsWmIxTjNtM3ovT0xza1I0emZ2R1ZCeGhDN2YxdlMyNEtJM3RUdGFlRnZUcXk2aEJJVDJOOGg2Yll6M0srV3dJWXhRQUFDRUlBQUJDQ3dFQUlJN0F0WkNJWUJBUWhBQUFJUTJHRUNVd3BrTjZ3RTlQZElhdnNOOUQ1SnQ1WjBhdVo2TkltbjYwMTBDYWxuQ2Y3TDl3L0NscTBRTEhqL1VwSWpZdTB4L0FSSkZ2K0hGSXQ1dHFQNDMwSFF1M1NEc0w3ZXZ2dDNueGF3M2hxaWFNY1UzYWNRMk0zZy9Ba1FmeXpwbElSNlhWWGMxM1ZEVXQyYlNicFFSMlVmYUhoZnZqUWtvU3pOT1RidnJnT1ZDMHE2bXlRbjJ2eUROWDYrNWo4bHZWQ1NEOEVjYlQxSDJlVDd4OFdDL2NsRlc4Q05aZGZ5YkVrUDYxZ3NyL2NyNTFqTWhqNWpqSjVUSFZJZHVKQ3hNZ3dJUUFBQ0VJQUFCSGFVQUFMN2ppNDgwNFlBQkNBQUFRZ3NpTUNVQXRrREpCM1JNZmUrZnNleHFOQ21SSHorSFdiN0J3dVVsNG1zeDYyQ3lKMjdiTzdqNnBWWS94ZVZrSGZUaUtBZWE5dUN1eFBFbXRGL3hDcjMrUHZZQXZzbEpiMWQwcFVpWS9NaGl5TmlmOWhqRHI3RUViZUhTbkt5eVBxYkFTbE5tclAzNkJNbGZTUGxnb1E2UGxSNVMwZTlwdjExSGttSFYxWWhENDIwUDNlU3lVMitmOFQ4MXg4cDZSa0o2NXRiSmViRDN2YyttRHVPbFBwN2gwTkdKMmh0S2tzNkRFaVpEM1VnQUFFSVFBQUNFTmhDQWdqc1c3aW9UQWtDRUlBQUJDQ3dZUVNtRXNpYzJQVGxJYUs0Q2RFUXYrTmNnZDNXTEg4dHlRSmFTdWtqc0Y4eFJFUmJvQ3Bkamd4Um95Y1ZiSGhNZ2YyOHdZcmpCcEh4SGlmcEFFbDk1bVVCOExBcTh2MVJQWVgxK3RCK0p1a1FTWDliL2R2L2UwakpGZGl2R2dUNWl5ZDB1aXNDK3hqM2o5aUJuNjFqM3Btd0JybFZZcUwxV0pIenVlTjBmUi93T0VxOXFkaGV5WWNVbiszVE1OZEFBQUlRZ0FBRUlBQ0JVZ1FRMkV1UnBCMElRQUFDRUlBQUJQb1NtRXBndjZ5a1kwS0VjZE5ZUHlicEpqMGpsM01FZG92cno1TjB2d3hnT1FMN3VZSjQzMlVCa2RGMWExV0x2dmNOaHhZbFBNVEhFdGhUZVg5ZTBvMGtmYVVISENlT2ZKT2t5L2U0Tm5hSnJXTnN6Mkl4c1cvSkVkajl4c083SzJIL2ZJbWQ3WXJBUHNiOW84dXF4VFpGMTZrT2ZENlZ1QTQ1MVd3UDllSHFUWW1MdEZ6a3BLb1c5ejJHT1lzUHhyd1g5MmtaQlA3cmM2NE9mVU1BQWhDQUFBUWc4RDhFRU5qWkRCQ0FBQVFnQUFFSXpFMWdDb0hkMGFlT2dyUnRSMU94UUh5N0lKTDI0WkVqc0R0cS9XbVpuYVFLN0plcUxGQmVYeVV4dkZwbSswT3FQMTNTNHdwRVdZOGhzS2UrS1dCeDNZTGlDVDFBMk5mZnpGTUY2UjVkYUVoa3ZmdExGZGp0ZC8zZXpJT0NYUkRZeDdoL3hCS2NPdi9DdmdWdGd0YjMzWjdCZHNWdnVUU1ZNZnZPMmYrMmYvRmJSMjMzYkg5bTM1WFRJSFVoQUFFSVFBQUNFSURBR0FRUTJNZWdTcHNRZ0FBRUlBQUJDT1FRbUVKZ3Q2ZjI2enFzTzk0bTZRNlNUc3NaK0ZyZFZJSGRQdUJIUzdMQWxWTlNCUFljVzQrY3ZsUHF2a2pTUXdhSzdLVUZkdi9PZmJTa3AwUW04RjFKVGtKcUVUdTMzS1lTbzE5VGVaVmJ5Qis3RFBHR1R4SFkvUmw0cHFTSFowNWtGd1QyTWU0ZlRyYnJ0eFBhRHNQRzVCcTdYNDBaUForNnZXSnZVZ3k5WjZlT2czb1FnQUFFSUFBQkNFQWdTZ0NCUFlxSUNoQ0FBQVFnQUFFSWpFeGdUSUhkdjNYdUtla2xIZUw2RUd1UUZacVlZR1d4ek43ZXorL3dnTy9DSEJQWUxkdzc4bml2eExWeWt0S1hTZnBJUThKU3orV2FJZXJaL2FhS3gzOG02YW1TK3RyRmxCYllZNktvVWYwZzJBSjlQSkhiZXJXWUFMaXFheXVkbDRaLy9sblM2ZUVQM3B1L0Urd3ZIaHlTME1hRzhhekt3dWlnSG94VEJIWWZOUGp3NTJ5eFFkVCtQcVlRbkRLVVRiMS9PQm51c1pJdTBUTEpzWDNRdXo1dlA1RzBYM1VQT0Q1bEFVYW9ZNDk0ejc4dEI0Q1QvM3A4ZmQ0NEdXRzROQWtCQ0VBQUFoQ0F3SzRUUUdEZjlSM0EvQ0VBQVFoQUFBTHpFeGhMSUxPQVpmc1MrMWUzbFNFQzYzcWJLUUs3azVxK3BVSEEvR1QxMzU1VUNVYnZsL1M5MEtoRmJkdTkyQlBjd3JVVC9iMjFaUktwQ1R4OXVZWGVKMVNIRGw5S1hIYVB3NUg5UGhnNFQrU2FYNGE2RnNiNmxKSUNlNHB0aTlmKzlsV1N4S042RERiMVFPTzVJVkhwanhMNlNFbEthOFkzRFljcENVMytUNVdZd083RENMTzRVNjFSSHc0Y1VlVXRlSUdrLzF4N1E4RjJPSTY4dm9lazM1UDBKMVZ5MTFOeUJsU3c3cWJlUDY0aTZZUFZQZXJjTFN4OEFPYkR3YkZLMStmTmZjWU85Y1lZbC9OSE9IZUU3MUZ0QjN0RFByZGpqSmsySVFBQkNFQUFBaENBZ0JEWTJRUVFnQUFFSUFBQkNNeE5vS1JBWnFINzJsV2l5djhUUE5YMzZKaWNJM1l0SW4yMEFJQ1l3RzRoemNrejdTbThLbzRTdGZodjRid3I2dnNja3V3QjNaUndNT1lOdmVyclJFbDNENzdMZmFacmNkMGU5aFpVdThybndxSEFTVDA2S1NXd3AwU1dXemkybU96RXBMbkZ3dDhyZ3lEZGRtM3EydGF2OTFxYjgzMDZCdFVuWWp3bXNQOTV0YitjRzJEZFI5NXNuSWczbGx6VlZpZmVtei9QQlZtby9xYmVQMkxqOXFIYklZVVlOVFhqZzdzbmQ3US9sY0R1ejVNUGx4NFU3aS8rRExRVjM3UHZHQTRqUjBSRDB4Q0FBQVFnQUFFSVFDQ1BBQUo3SGk5cVF3QUNFSUFBQkNCUW5rQk1hTElZK3MyRWJpK1NZV2ZpU0hKN2h2Y1JncHVHRWhQWXZ4M0daakhTeFlLM0JTeEhydzhwam5CM2tyK3VnNFJQUzdwRkVQaUg5R1VoeklMZjR5T045TFV4S1NHd3AwU1dENDIwNzBxOGFEU09zRFZ2MisvMEtiRTNFbndZazV2Y01TYXcvMnQxMlBCSGE0TXRsYmkyei94enI5blUrNGQ5LzkvUk1kbkhKdVFQeUdXMVhuOU1nZjJpa3E3Uk1qanZiNi9aQlVNUzF6YUxuUHJsUGdpOWk2UXZENWswMTBJQUFoQ0FBQVFnQUlFeENDQ3dqMEdWTmlFQUFRaEFBQUlReUNFUUU4aHkyb3JWZFlTMWhTc255UHRGckhMRzMyTUMrM3BUVTluU3VNOFMvdkxyWTdmSS9yd1EyZHlHeDFHbTE2MGl2QzNzNTVTaEF2c0ZKTDJoaXRLL1hrZW5GdGNkSGU2KytuakZYeWhFejE2cHBZK2g0djJxV2JmZmxRelhpVlg5UmtKcTFIaE1ZRitmVG9tRXRUbnJQclR1cHQ0L1ltc3l0OEErcFAvWTNITFcvRHNoOGE2VFZKZThaK2VNZ2JvUWdBQUVJQUFCQ0VDZ2t3QUNPeHNFQWhDQUFBUWdBSUc1Q1V3aGtIMnM4b2grVkxDREdVT2t5UkhZaHlZRFhhM1hiWUtnM1BaNzdxZVM3RVZ1ZTVxU0pTVksvQytyRGcvTDdIU0l3QjZMK2w0TlpTaDdlK0hid3FXdDlJM2VyN2ZuTmJVUDlhRXRIZm1Oam10VmxocGZUR1NjS25pV1BwQkpITjZnYXB0Ni80aXR5UU9EOS8wZ09CMFgrLzdSbFM5aGJvSGRDV0J0aytNM2RQd1dFd1VDRUlBQUJDQUFBUWdzbGdBQysyS1hob0ZCQUFJUWdBQUVkb2JBRkFMWkNxYXRXbzZVOUg4bEhWY3dJakpWWVArRUpGdERySktaOWwza3N3ZHh6RlloYmFXVTJOdlVmc3dteFd4dlhFV2VucHd4d2I0Q2UwcFV2WWN4VkZ5M2lQOXVTZnUwek9rRVNkY1A5ajhaMDI2dEd2dGNlQTNzQlo5U1ltTHVxZzFIeGI4aXBjRUYxWWx4S2puVWt2ZVAySnFNN1lFZTYzOHVnZjFVU1g4bDZRTlYwdVRQekpnOHQrUytvUzBJUUFBQ0VJQUFCTGFjQUFMN2xpOHcwNE1BQkNBQUFRaHNBSUVwQmJKMUhMWWVPS2hLc0dmcmdhRVJrcWtDdXhQNUhWRmdUYTRjSXRQWGsxS3VOL3VOeXNwa3Z5cXBxa1hmTWNxRmc0WEo1VnNhdC8yS0JmYWpNanJ2STdEN3QreWpFN3lxUzNpSysyMkE5MGhxKy8wOFJKQnN3bVMvZnZkM3RSYUdMNmx5Q053M2tXOU1USFV6dHZUeEFZRkY1RTBxbTNyL0dOTURQV1g5WW50aXlINk90WjB5dmxXZHIwdnlZYUgzKzlDRHlaeCtxUXNCQ0VBQUFoQ0FBQVNTQ1NDd0o2T2lJZ1FnQUFFSVFBQUNJeEdZU3lCYlRjZUpSdThhb2lYN1RqRkZZUCthcE90SStsTGZUdGF1ZTBCRXFMZFArc042K295bkR1OXdTUWQzVkxhOWc1T2lwcFpjZ1QxVlhDL2xLZjdzd0xScFB0K3ZEaE91TGVtenFaTk5yUGZpNEJuZlZQMURJZG5wanhQYVNoRTgrOWo2SkhROWVwVk52WDhnc09kdmpkZExla1RCNU5UNUkrQUtDRUFBQWhDQUFBUWcwRUFBZ1oxdEFRRUlRQUFDRUlEQTNBVG1Gc2c4ZjBld1cyUjNrc3creVM5VEJQYVhTcnAzei9iWDEraXNrcHprOHJZdEM5Y25lcnpQSHJDZ2JCc0hqNmVwdkNPTThmVEV4bk1GZHMvZmJ4L3MwZEcrbzE1OTBIQmE0aGphcXNXaXllMWxmYWVNcEtPcHcra1NZYjlhK1ZQdks4bHZLOFJLVEdEL1NYamo0ZmhZUXd2OCs2YmVQeERZKzIwbTM2djk1c2JMQzl4TCs0MkFxeUFBQVFoQUFBSVFnRUNOQUFJN1d3SUNFSUFBQkNBQWdia0p4QVN5bDFWUjMvZE1HS1R0VXM1UkphRzhZUERKdHQyRlBjcmJiRlRxVGY2eWltSy9ReVR4WDlzd1VnVDJVa2tMOTVUMFQ1VzRmTVdXd1h3bEpNQjB4UHlZeFRZeEg1RjA2WlpPbklEem1wSytsVGlJSElIOTZzRVB2V3R0blJ6Um92Y1BFL3Z2cW5hRkttR3NJOFl2MEZMcGtaS2VVYUNmZWhOZHduaU9LQjRUMk8xMXZiK2s3NDR3aDdHYjNOVDdoeU94YlYzVVZ1YjJZQjlyVDYvbTZ6d1N2cGY1UHVhOWQydEpWOHJZTENWc256SzZveW9FSUFBQkNFQUFBaEJvSjREQXp1NkFBQVFnQUFFSVFHQnVBcVVFc3FaNStMZk9KVU9DU3d2Y3NmSURTVGVwaFBtUHh5clcvaDRUMkg5ZWllTFhDeUp0WnRObnFuNlY0TDkrN3BhR2NpUEgrNDduWEpMZVhJM2xCaTBOMkxyRWxqaWZTdXdnVldDM0ovazdnempYMXZUN1F2UjhDWEhkZlRneHJiazJsVEhmR09nU3huUDJWRXhnSHlzQ1AzSHBCMVhiMVB0SGJFMUtIY2kxd1owN2dyNXBYTDZuM0w3S2MyQzdva3NrN0FwYlZQMU53V1RWQ1YxU0JRSVFnQUFFSUFBQkNKeVpBQUk3dXdJQ0VJQUFCQ0FBZ2JrSmpDbVFyYy90VXBKZVZVVStYeU15NFU4RVFUVW5vVjVNWVA5bWlDcDNWUGZRMGlYMnV1MWM3L01oNCtrU3hYTUVZSThoUldBL1c4WHh2WkwyNmhpMGJXdHVKOG0rNktWS0xOcllDWE5UclhCeXh1UjlaWHVhdHBJYTVSd1RjNmZjTXpuelQ2bTdxZmVQMkpvTVNUS2F3bTJKQXZ0cTNHZXA4aG5jVVpMeko1eXpZekpEM2pwS1lVUWRDRUFBQWhDQUFBUWdrRVFBZ1QwSkU1VWdBQUVJUUFBQ0VCaVJ3RlFDbWFmZ0NNa2pKTjB0TXA4SFJaS0kxaStQQ2V5NWRpbGR3N3ROeE1abTdNalg5YkdWRk9saUFydmZMSGh1UjhTOHgvVnBTYmVRWkp1Y2tpV1cwTFZrWHpsdGxSTFl4N1lEeVpsVGJ0MU52WDhzV1dBZjg2Mk1uUFc5YkhoenBPdEF6VGtJOXF2dTZTZmtORXhkQ0VBQUFoQ0FBQVFnVUpJQUFudEptclFGQVFoQUFBSVFnRUFmQWxNS1pCN2ZlU1c5TmRpWHRJMzNZOEVxSnRWaUpDYXcyelA5bHBKTzZRT29kazFKVVh2b2NFcU9wVXRndDkrNFJYTjdvYmVWejB1NjBRaml1dnZyR3R0UWhrT3VMeVd3cDdZelpLeGpYYnVwOTQ5WWt1RG5WRzloSERnV05Fa3ZsblNmbHZaei9QMUhIT0t2bXJiRlYreXRsV2RWdVJZT0l1bnAyRXRCK3hDQUFBUWdBQUVJdEJGQVlHZHZRQUFDRUlBQUJDQXdONEdwQlRMUDEwS3NrMkR1MFRMNTNBak9YUlhZWTFHNE9aSFJRMFRzL3dxUjdSOGVhVE1QR2R0SVEvcFZzNm5DZUd5ZFV0c1pjeTU5Mjk3VSs4Y2M0MTVuM0xXbm5TQjVYMGtuOVYyVXd0ZlpMdWJWbFRkNzI3T3J4K3Q4RDE4cTNDL05RUUFDRUlBQUJDQUFnU1FDQ094Sm1LZ0VBUWhBQUFJUWdNQ0lCT1lRbW1LQ3VLZWI0MHNkYTI5Ykk5aGp3bTJPai9SUUVidDBZdE5VTVhMRWowYTA2VlJoUExaT3FlMUVCelJEaFUyOWYxeE0wckdWei9oRlc1aDVQOTlhMHFrak1JM2RyejRqYVg5SjN4Mmg3ejVObmtQU2tlR3RvcmJyYmZ2MXlqNk5jdzBFSUFBQkNFQUFBaEFZU2dDQmZTaEJyb2NBQkNBQUFRaEFZQ2lCT1FReWovbGdTZmJXYml2dmtIVGJ4T1NWTWNGcVd3WDJtQjk4am5EYkpiQi9YZEtiSmRrYnY2dU1KYklQRmYrSGZrYmFyay9saThCZWZnV0czai8ybE9UN3doVmJobmFjcEJ0TE9ybjgwQlhyZTB4eHYrOTA3aXJwRlIwWHY2U0t1TDl2MzhhNURnSVFnQUFFSUFBQkNBd2hnTUEraEI3WFFnQUNFSUFBQkNCUWdzQmNBbnRNZE13UnVIWlZZSi9LZy8ycklaSGhJWkx1RjlsMEZ1R2M2TFZrNUcrWHdQNXpTWWRLK2tLSkQwTm1HeCt0ZU5nZUkxWmllejFWcUkvMU04ZmZOL1grNFlUTFBqUzZRUXUwTVcxYUxsM1paTmxPNlNJdGZTOVJySGIraFE5SnVrRExtRXNlWXM2eGora1RBaENBQUFRZ0FJRU5Kb0RBdnNHTHg5QWhBQUVJUUFBQ1cwSmdMb0ZzN3hCQmF2dUJwbUpSMXo3RTMwamdQS1hBL2doSlQrOFlrOFhsRnlTTXVVU1ZMb0U5MThlK1M4UmVyWVdUTDc2eFE1UmN6ZWxGa2g0aTZXY2xKcmxCQ1NIYnBvdkFYbWdqckRWVDR2N1JsV2owdEdEVDhvbnlRMWNzd2VxVTk1RFU2VjI0aXVqL2lDUWZEalNWcGRuYXBNNkxlaENBQUFRZ0FBRUliQUVCQlBZdFdFU21BQUVJUUFBQ0VOaHdBbk1KN0xGK2x5cXd4OFRTSE8vNG9WdW5TeFMzR0w2ZnBPTVRPMGtSMkgzWWNkNUVrZjBJU1FjV0V0bGprZm8zbC9UT3hIbk9VUzIyWjRoZ3oxK1ZFdmVQMkdIWldMN2lENmlpMS8zNWFDcCtJK042SVZvOG44cDRWOFFPTVhQdTErT05rcFloQUFFSVFBQUNFTmhKQWdqc083bnNUQm9DRUlBQUJDQ3dLQUl4b2VwbGt1NDV3b2hMUktDdWhoVVRmMHJhRjhURzdRanZPMVcySlJiS3hpd3hpNHN2U3JwbTVadityY1JCcEFyc2J1NlNrdDViSlRYY0s5TDJYd2FmL2FHUjdESC81eVZHL0s2alFXQlAzSVFaMVdLZnd4VEI5NGJWWitROWt0cWV5WjRURG9reWhwVlV0U3R5Zmt4cm1xVEJ0VlNLM1dOVGVBL3BuMnNoQUFFSVFBQUNFSUJBS3dFRWRqWUhCQ0FBQVFoQUFBSnpFNWhMWUkrSmpqbVdBekh4cDZUQWZqRkp4MHE2YU12Q2ZhVVNuNitWNk0wOVpPMWo0OGhKRXV0eDVBanNybjkxU2UrV2RMN0lKQng5L2xSSnRxenBXMktXR21NSm9YM0hXNzh1dHRlSllNOG5IV09hY3YrSWZZWnk4a0NrenVEOFFkUy9Xc3NGdVovYjFINkgxanQzOVpuMzJQeFpiQ29wdkllT2dlc2hBQUVJUUFBQ0VJQkFJd0VFZGpZR0JDQUFBUWhBQUFKekU1aExZRDljMHNFZGszK2ZwRnNuSnN1Y1VtQ1BSWTduZXAvM1hmOVk5RzJ1VlUydXdPNXhPMEwrN1FraSs2TWtQV09BeUI1TENqbUdFTnAzWFpxdWk0bkJDT3o1dEV2Y1A4NGU3STVzTWRSVWNtMldVbVlSdTk4K1ROSnpVeHFhdU03dmhvUEZTN1QwVy9JUWMrS3AwUjBFSUFBQkNFQUFBcHRPQUlGOTAxZVE4VU1BQWhDQUFBUTJuMEJNOEJuRElzWSszbzUrM3FjRFgwNVU4cFFDdTRjY0UvZWVKOGxDMlpDbzdhNmQ1ZCtRNXVORW9rMmxqOGpmUjJCMzM3ZVY5RHBKZTNRTStKZVM3aExxOVdFU085VDRxYVRyU3Zyb1FqK09DT3hsRjZiay9TUG03LzlZU1U4cE9QekRxdnZDNDF2YUcwUFFMelgwMkZza1kzeFBsQm83N1VBQUFoQ0FBQVFnc09VRUVOaTNmSUdaSGdRZ0FBRUlRR0FEQ013aHNOODAyQTEwL1JiS1NUQTR0Y0IralVyUVBWclMyVnJXOTd0QjhQMzBTT3YvKzVJKzJHRlQwOGV1b2EvQTdqVjhkSUlJYVpIOURpRml1QStXMktIR3N5UWROT0toUnA4eHI2NUJZQjlDNzh6WGxyeC94TzUvSDZzT2JtNVM3YTBmRnBoQzdHREFoNDRIU0RxdFFGK2xtK2c2R0hCZlM4K0RVSm9IN1VFQUFoQ0FBQVFnc0NBQ0NPd0xXZ3lHQWdFSVFBQUNFTmhSQWpHQnFYUmtva1dtdDBxNlRnZHZKL3J6MzcrVXVDWlRDK3d4b2N6RFBpSkVzWStSN0RRV2RldmtvaGJFY2twZmdkMTluRVhTWTZvREI5dlNkQlZINkZwa3Q2MU1ib2tkYW54RDBuNlNUc2h0ZUlMNkNPemxJSmUrZjV4RDBwRkJSRzhhcGQrNHVKMmtOeFZ4a1pDc0FBQWdBRWxFUVZTWWdwTWZ2N3FqblR0TGVrMkJma28zY2VGd29IajVsb2FYSEhsZm1nWHRRUUFDRUlBQUJDQ3dRQUlJN0F0Y0ZJWUVBUWhBQUFJUTJERUNVd3JzdnlYSjlpbjNpekRPdFZpWldtRDM4QjJ4K1hjZDh4Z2FzZDNXOUpXQzJMVm5TNFcrMGZOREJIWVBKWFZ0ZnhERXpJOW5mczVTRGpWZUt1bitrbjZXMmZiWTFSSFl5eEJPM1dPNTk0K1k4UDBKU1RlckRzeStOMkFhRjZ3c3NkNVpIUzd0M2RMRzU4SmJMOThhME1jWWwvcDU5UW1TRHUxb2ZNbVI5Mk13b1UwSVFBQUNFSUFBQkJaR0FJRjlZUXZDY0NBQUFRaEFBQUk3U0dBcWdmMDhRWkMyRjNkWDZSTU5PWWZBZnFFcVl2cjlraXg0dDVXK1luSmJleGFaMzFqWnc5eWdvODhuU3ZxTEhsWXBRd1YyRHlsbGZLN1hsMHZzVU1OdE83ci9xVDNtbi9MUjMxL1NLWktPVDZtOFZnZUJQUk5ZUS9VeDd4K3hDRzBQeHdtWm45eHpYNlhZS1BYeGVuZWk0eXVHUTh0ZkRFZmMyRUpLam9XbFJ0NlBoSVJtSVFBQkNFQUFBaEJZR2dFRTlxV3RDT09CQUFRZ0FBRUk3QjZCc1FWMjI0ZmNVdExUSlYwbUFXOGZMKzA1QkhaUHhUN3hMNC9NNmNTUUNOUlJzRU9LeGVzWEI3dUt0blljQlhzalNTZjE2S2lFd081dUx4S1NtWFpaQUxuZUY4TysrR3pHV0ZNT05mem13SDBrZVQ1OUVxbzJEY2ZpcmozZ0h5cnBWc0hpS0dQWVFtRFBvWFhHdWxQY1A5eGo3UEJteUJzcE1aSGF1UnF1TCtuYm1aaFcrOHIzbG50Vjlrdk92VkNxK0RuVmRrNnZpaVF3TGhIZFgyck10QU1CQ0VBQUFoQ0F3STRTUUdEZjBZVm4yaENBQUFRZ0FJRUZFUmhEWUxmZzdjaEtSNnZmVTlMNUV1ZmJWMmlhUzJDM1pjVXJKZDArTWo5YmxsakFzK2piSjlMVUxOM1BWVHY2R1NJQXV0bFNBcnZidXFTazkxWmozaXZDNWZQaFFPQXJpZnZEMWU0WWZLeGp2Nk9mSDN6aFQ4MW91MTdWL3R5T3puMm1KSXZzTGdqc1o2UzBEZmNQenlobTRlSTYvaHpmVmRJYkVnOXZ2RWN0Z3R0My9ad3QrM0RJNTdaK2NHT0xKTnU1cE9hdWFQdG9lSzg3V3Y5QmtjK094KzZFcy82c1V5QUFBUWhBQUFJUWdNQnNCR0lQQnJNTmpJNGhBQUVJUUFBQ0VOZ1pBakdCektMU054TnBXT2crZjJMZGVqVjdoOXZuK0xnZTE4OGxzSHVvcVdLeTZ6ckMvSEVoeVdlS1QvakZneldGeGZsWTZXc05zMnEzcE1EdU5xOHV5ZDdNc2NNVkg2cmNRbEtxeUo3cXcrMHgvS2o2NXhFaGNXU3EwTzdmNXo0WWVIRHdjN2ZJdmw0UTJNL0lZeHZ1SDZzWitlMlBkMFVpdGwzWFNWRWZHUkd5TGRnNzBiRGZldWdxTDVMMGtKNTVBOXJlakhCVXVXMlMzaVBwaDdFYng5cmZmYi81MHlDczEvZDlVek5qMmpGbERKdXFFSUFBQkNBQUFRanNPZ0VFOWwzZkFjd2ZBaENBQUFRZ01EK0JtRUEyeFFpSGlPc2UzNXdDdS90UEZaTlhMQjM1K1UrVmwvb0hLL3VZZjZzQnRoV003U0xzcjJ4TGxKUXlSS1JidFY5YVlIZTdGczVmMXhHOXUrcmJIR3hIa1hxUWszT29zZXJEQnpldnJ5TGdiVW56cjlYQnhVL0RIODRtNlk4a1hhRVNKSzhwNmVZaFlXc2Jkd1QyTTVMWmh2dkhha1lwWHVucnMvOWtpRTYzM2RHcStEUHJ2V3kvL2xoNVg3Q1B5aEhCMTl1TVdRKzU3c25WL2VRWVNaOXF1TmY0NzVjTys5NzNtM1BGQnJ6Mjl4TDNuSXp1cUFvQkNFQUFBaENBQUFUYUNTQ3dzenNnQUFFSVFBQUNFSmlid053Q21hTzZieE9Fejc0czVoYllQVzZMczI5UGlOanVPOGUyNjJ4WGNkL01TTldtdHNZUTJOMVB6SDk2TlpaY3NkR0MrTnVDUUZpYWFWZDdDT3hucExNTjk0LzFHVmxrUGlMa1Z4aHpYL1d4UjZxUEowVmdIMk1PTDZqdU53ZFZDWVZQRzZOeDJvUUFCQ0FBQVFoQUFBSzVCQkRZYzRsUkh3SVFnQUFFSUFDQjBnVG1GTWllVzFrakhCS3NQSWJNYXdrQ3U4ZHZqL1MzU0xMVndoVEYzdURtVjBMb0drdGd6NGtLdGozSG5USU9DK1lRMlJIWWx5T3dsN3AvMUQrcmZvdmtOY0ZmZkl6UGNaOEV2MDNqbUZwZzk1czN0cmp5ZlNmRjRtb01kclFKQVFoQUFBSVFnQUFFemtRQWdaMU5BUUVJUUFBQ0VJREEzQVRtRU5pUGxYU2Z5a3JoTTRVbXZ4U0IzZE81UUlpQWpTVStIVEoxZTRzNzJhSWo1djk3U0VOcjE0NGxzTHNMKzZiL2RmQ3RqZzMzSlpJZWxuRm9jQkZKanFpMThEMW1zYUI0YUpVTTh6a1pZMXVOSnlhRTloSHR4NXhyVHR2YmNQOW9tcThqMlMzZzN5c0hSa0pkdjZseHR3dzdwSzRtWS9zcVlUakpWYjRRRXY3YTM1MENBUWhBQUFJUWdBQUVGa1VBZ1gxUnk4RmdJQUFCQ0VBQUFqdEpZQ3FCekFMbEswUHlQZnRnbHhLR3ZXaExFdGc5SHYvR3U1Nms1MVdSc0pjdnVLc2NRZW8yTGZSYVpDOVp4aFRZUGM2YzVLUzUvczVuQ2I3WHo2cjQvRTVKS0pMTTNKWWhUaUw3alo1dHg0UlFCUFk0MkRIdkgyMjkrM05zUC9VWFNqcFBmSWlkTmZ5V3lXTWsvWjJrWHd4c2EzWDVXUGVaOWVGOUo5akJPSmNDVWV1RkZvNW1JQUFCQ0VBQUFoQW9Td0NCdlN4UFdvTUFCQ0FBQVFoQUlKL0FHQUw3cVpLK0pjbUpKWjNNOHdPUy9yT2dzRlNmNWRJRTl0WDRMUHp1RTJ4Y2JpcHBqL3psK2RVVlg1ZGs4ZGpSM2QvcjJVYnNzckVGZHZkdjY0MDNWc2xkYnhBYmpLU25CenVLSEZIUElyNDkzdytya2s5ZUxxR1ByaXJldTJaK3BDVHY1eUVGZ1QyUDN0VDNqOWpvSE0zdVBBZTJZOG85d0xGQS9iUndTRlA2VUd3MWJqOVQyaTdwd0NxWHhSMEw1SUh3b1pMdG1nNlg5TEVSNzlzeDd2d2RBaENBQUFRZ0FBRUlKQkZBWUUvQ1JDVUlRQUFDRUlBQUJDQ3c4UVFzL2w1RmtzWFdhNFhJOXQ5dEVOMVBsdlR0Y0RCeGxLUmp3bUhGeGdPWWVBSVc4L2VyRG5sdVdSM3c3Qy9wUXBWZ2Z2NkdNWmkzLzdHZ2ZyeWtvNnVrdS84cTZmU0p4MHQzeXlmZ0E3TS9DSGtDYmhMK2QzMVBXVkQzL25tUHBMZU9mTERZUk16UGw3NnYrQjV6SFVsWHJ5THdmNjhTK0cybDVIdFF2YXp2ZngrRytoOGZodVljYkMxLzVSZ2hCQ0FBQVFoQUFBSmJUUUNCZmF1WGw4bEJBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJREFXQVFRMk1jaVM3c1FnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQ3cxUVFRMkxkNmVaa2NCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlqRVVBZ1gwc3NyUUxBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNXMDBBZ1gycmw1ZkpRUUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0F3RmdFRU5qSElrdTdFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdzTlVFRU5pM2VubVpIQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDSXhGQUlGOUxMSzBDd0VJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBbHROQUlGOXE1ZVh5VUVBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnTUJZQkJEWXh5Skx1eENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJTERWQkJEWXQzcDVtUndFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWlNUlFDQmZTeXl0QXNCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUpiVFFDQmZhdVhsOGxCQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSURBV0FRUTJNY2lTN3NRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0N3MVFRUTJMZDZlWmtjQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJakVVQWdYMHNzclFMQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDVzAwQWdYMnJsNWZKUVFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBd0ZnRUVOakhJa3U3RUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnc05VRUVOaTNlbm1aSEFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0l4RkFJRjlMTEswQ3dFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWx0TkFJRjlxNWVYeVVFQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ01CWUJCRFl4eUpMdXhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUxEVkJCRFl0M3A1bVJ3RUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFpTVJRQ0JmU3l5dEFzQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFKYlRRQ0JmYXVYbDhsQkFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlEQVdBUVEyTWNpUzdzUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNDdzFRUVEyTGQ2ZVprY0JDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSWpFVUFnWDBzc3JRTEFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ1cwMEFnWDJybDVmSlFRQUNQUW44a2FUZmszUzBwTk16MjdpWXBOK1I5QytaMTFFZEFpYmcvZk8za3Q0cjZRVWd5U0x3dTVMK1ZOTHJKUjJYZFNXVklmQnJBaGVTOUVaSmw2d0IrWXFrMjByNjlvYUNPa2YxZlhaZFNlZXFqZjlFU1I5YjBKeHVKdW1BaHZFY0tlbWRDeG9uUTRFQUJDQUFBUWhBQUFJUWdNQVpDQ0N3c3lFZ0FBRUluSkhBV1NXOVhOS2R3bjgrcWhMYlh5anBIWkpPN1lCMUZrbDNsUFFpU1QrVXRKK2tFNEFMZ1VRQzU1SDA1NUllTHVtM0txSDRCNUp1SXVuamlkZnZjclVMU25xOHBJZEkya1BTKzRJWTZzOGhCUUk1Qkh4SWM2eWtTOVF1K3Fxa2ZTVjlJNmV4QmRWdG05ZkxKTjF6UWVQOE0wbFBiaGpQWXlVOXBlRy8rMER5Rnh1OExndEN6MUFnQUlGQTRPeVNIaVpwcndZaVBwQjhDYVFtSitCbnMydEwyck9oNTA5WHoxK2ZuWHhFZEFnQkNFQ2dnUUFDTzlzQ0FoQ0F3QmtKWEZuU0I2c280dk0xZ0htNnBFYzEvUGNyU25xcHBMM1gvb2JJeDg1S0llQ0RtVHRJT2tLU1JmYjF3aDdxSmxnL2xGaXZiYUh1cVpYdy90OHBpMEFkQ0FRQ0NPenpib1UyZ2YyQkRXLzBYQzFFdFo5TjBsMnI3OSszODNtZmQvSG9IUUpiUXVDM0piMU4wdjROODFuYW9lU1dJSTlPbzJ0TjJnNWdvNDFTQVFJUWdFQnBBZ2pzcFluU0hnUWdzT2tFRGd2UnNQVjUvRlRTRFlQNHZ2NDNSN2s4dTJYU0I0ZG9QRVMrVGQ4VjQ0My81cExlR2lLdm0zcGhEeld6OSsrWFo0YUkvNllhdkFFdzNwN2Q1cFlSMk9kZDNUYUIvVmJoUHJrYW5TMThiS08xSG1INmZFbVBpYnhwTnUvczZCMENFTmdFQWdqc3kxc2xCUGJsclFramdnQUVHZ2dnc0xNdElBQUJDUHlHd0lXRDcvcmxHNkM4TzNqRG5sYjdXOU9EL3FyS0x5dTdnWnNHSVFET0VHZ2k0Ty9oSjBnNnRBVlAyOEVPTkgvdFYyK1JyZW56YWo3KzIyMnF0MDVPQVJZRUVna2dzQ2VDR3FsYWlzRGU5WjM3eVdEVjlwOGpqWTltSVFDQllRU3VXdVd5ZVBDd0pwS3U5b0diN3dkOXloSUY5a3RWOXBNSFZWWlp6cWV4Q2FXMGxRNEMreWFzT21PRUFBU0V3TTRtZ0FBRUlQQWJBdlpkZjNVTGtEdFhRdDVyV3Y3bTZEb25ZYlAvYzcxOFR0S05KSjBFYUFpMEVEaHZpTTY4VHN2ZmJWbjB2NE8zUHhEUFNNQjVEL3laYmZzOTg2Qmd2d00zQ0tRUVFHQlBvVFJlblJTQjNVS1RFeG5iSXFhcC9FU1N2Ni85WmhCdmo0MjNWclFNZ1Q0RS9Gdm1MWDB1ekx5bS90Wkx6dVZMRk5qL1dOSXhrczZaTTVFWjY1YTIwa0ZnbjNFeDZSb0NFRWduZ01DZXpvcWFFSURBZGhOd1ZJaEZjaWVXckJjbjBMbCtGWFh6N1JZRU1ic0tKejUxQXNhZmJUZENaamVBd0Q1Vll0ejNkenc4WVJYVEROZWYyOWRKdW1VTGV5ZWxKT0h3Z0kyNVk1Y2lzTSs3NENrQ3UwZDRyaXJaM1hNbDNhdGp1RTRhN2NTb1MvM2VMUlhKKy9QcUFQYjR0UU5ZSCtyN3Q4cjNRZ0xZZVZmMGpMMlhtck5iZFJMNUwwcjZyK3BOcFgrVjlDMUpweTlwc2dzWmk3OGpuVHo5MGczajhWdVdqdlEydjZuS3BndnNoMGg2MGxTdzF2cEJZRy8zeGNlRGZZWU5TWmNRZ0VBekFRUjJkZ1lFSUFDQlh4Tnc5UEJSMVE5bkoweXJGL3VzKzJHK3Exd3dKRnhiVDNTNnF1K0hHQ2V5ZkNPd0lkQkNJR1lWODkzS3Z1aTZrbnpZUXpramdhN1BybXM2QWZIOUZ5eTBzWjdMSVlEQVB1OWFwQXJzSHFVVFJEOHlpT2h0bzM2VHBQdEordjY4MDJyc2ZRcWg4ZXZCOXU0Znd3R3VSZmM1eTloejlzR0NBeVdlVi8zbStzd0NEeGptWUgrTnNBZWFmdHY2TU1hL0szdzRNVlVaZXcrczVqRldCUHRjWWk0Q093TDdWSjlSK29FQUJBWVFRR0FmQUk5TElRQ0JyU0Z3VmtrdmwyU0xtSHI1V2hEZnY1UXcyeTZoNy9QQkt1WXJDZTFRWlRjSlhDaUlJRmVxVGQrdlV6dDUzMy9zSnBib3JHTnZrUGlBNjRDSlhrdVBEcFlLaXlhQXdEN3Y4dVFJN0I2cFAvc1c3R3dUMVdhZFlDOWdpMjF0YjZETk5lT3BoTWIxK1Zsd3QvanMzenNuempEeEtlZjgxU3JoN2FORFlNTXZacGpyRXJyMDUrTTU0UTNLcHZIOFpmVWZENXQ0b0ZQdEFRVDJpUmUyMWgwV01mUHlwM2NJUUdBbUFnanNNNEduV3doQTRFd0UvTXIzU3lSZHN4Q2JlNGVJOUpUbXJpekpQdGZuYTZpYzh3QVNFL3FJcEUxWmpkMnVjN2NnZnBpQ284dHNMZlFCdklTam0rS3l3Wi9VQW1sVCtZU2ttd1hiaEdoalZOaFpBZ2pzOHk1OXJzQytHcTNmSFBNYlloZXZEZCtIYTdiSHNLaThORC8ycVlUR3RoVTlWdEtmU3ZyNGhHem1tTE8vUjUyclkwb2JsSGsvUmIvcC9mZkRiOXVMTmd6b0J5RjQ1TjhuSHV4VWV3Q0JmZUtGclhXSHdENHZmM3FIQUFSbUlvREFQaE40dW9VQUJNNUVvQ3VCVFI5Y3FUK3V1MFR4UHJZY2JWSEluZ05XTVgxV2NwcHJmTGppVjM4dk1FMTNyYjM0b09sMlFRaCs1OHl2dU50VzRjbVZDT01IOFUwb2JlTGNhdXdrUE4yRVZaeDNqQWpzOC9Mdks3QjcxRDVrc3hYSytodEFidStwRXdySU9mU21FaHBqWS9MaG8yM3dwaERhNTVxemZmanZHdzZ2bDNiUUVsdWZJWDkvUUVlUzc5ZEl1cnNrZS9oUFdkcjJ3RCtGWENxblpBekcwZmVQYjZqdlJNZk92ZUxjQkgzS3RpWFU5SFBPMzdma3JIaUhwTnVPbkwrZzdmZDF6bS9NYlZ1VFB2dVNheUFBZ1EwZ2dNQytBWXZFRUNHd0l3VG1FdGk3SW53YzllWUh6OXdITW92NzlnSGRvMkh0L0JEclJLcWJJbHJ1eVBaVG03QzJLL052bXFkZnNkOVhraE9GYmtMcE90ejZRb2hrOWNOazd1ZDVFK2JPR01zUVFHQXZ3N0Z2SzBNRWR2ZnBBOUkzU0xxZXBLVW5GNTlMYkc1YkcvOW1lYkNrYi9aZHZJVHI1cDd6a2c5Y0V2QmxWWEZ5VTYrcGYyL1dpNzhEYjE1OXY3OHJxOFV5bFVzSjdGM1BESDNFK3ZYWmJadVk2emNZUGl6cGtnMUxPSVduZkludjFXMWJrektmSmxxQkFBUVdSd0NCZlhGTHdvQWdzTE1FNWhMWTJ5SmdocncrKzF1U1h0Z1FMZUpFcVlkSSt0SE9ydkp5SjQ3QWZ1YTEyVFNCM1ROWXQ5angvLzlPRU5aZk4vUGJBTXZkK1l4c25VQUpJV0NKUk52bVZmbzEvcUZ6YnhQWWMwU2c4NFpvNVJkTCt1SFFBWTE0L2R4aWM5UFUvTnZrcnBMZVB0SkI1Tnh6M3FXM0NMdVNteDRuNmNiVmQrUEpJKzd2dHFaTENleGRTVDhkR09QZjIzM0x0b201TjVYazRJSzY3ak0wMGorVmI0bnYxVzFiazFSMjFJTUFCRGFNQUFMN2hpMFl3NFhBRmhPWVEyQzNYK3Y3dzZ2bGRiVDJnMy9nZ05kbi9acjYwZFdQL0QwbCtSWHNlMG42ekJhdjM2WlBEWUY5T3dSMmkydnZsblNGNnJON3FDU0xiS2R0K3Vaay9KTVJLQ0VFVERiWWpJNTJTV0RQd0RKcjFaalkvS29RZ1p3eVNOLzNMRGphWW13ZlNaZVc1SVArdnVXWklSaWc5TDJ6NUp6L1VOSzFnaFZJemx6OVJwYnRRMDdvQzJjRHJsdGljdE1WdGxJQ2U5dGgzSkRnbU5VWXQwbk03ZG9MVXgyMGxQaGUzYVkxMllCYkNFT0VBQVQ2RWtCZzcwdU82eUFBZ2RJRTJuNDhPZUxJRDBUK2QxUHhkZWR2K0VPS0IvdERKVDJuNGRwU1VSMzNsL1JqU1VUUGx0NHQ1ZHREWUQ4ejA1d0lkZ3ZhNjk3SDVWY292Y1Uva1BTdEJVU3YydmZYeVpQdE0wcnBKbUI3SHllcGJIcUZmVXAyWjVWK1pSZlZWUHc5TkxWZmNYMGNYd2wrdWQvT2hESkVZUDhIU2ZmSTdHL0oxWmNTdFI4VG0zT2k5dHQrRzluaXl6azluT1N6S1lsNzF6clphc2UrNVNYZkFoaGp6bjZXOWZmUEV5VWRrTGp4K3RyL0pUWS9lN1VsSmpkZFFTa2hzSGZaMy9pQTNmdGd5T0hRTm9tNUZ3N0JQcGR2MkpWUENnZHBZMjlZQlBheENkTStCQ0N3R0FJSTdJdFpDZ1lDZ1owbjBQYUROdWFsMlBaalBTYXdkLzNvZEhMVHQxVS9QQzJRTGFWOFRKS2o2aW5qRUVCZ1B6UFhISUU5bG1CMG5GVmJkcXVsRHVxV1Bjc3lvK1B6bDhZeDV6TzUzaUlDKzI5bzdJckF2cjcrWjZrTytxOG82ZEVoc1dYYWJwTStFQVQ2VW9lRVl3anM2M1BaT3h6VStlM0VydkkxU2RlUjlLVlVFQnRXcnkxNHhOT1lLN25wQ21FSmdmM0s0ZkM2NmRESWI1NitZT0I2YlpQQTNtWVBZeDkrMndRZE5aQlZ5dVVJN0NtVXFBTUJDR3dGQVFUMnJWaEdKZ0dCclNBd3RjRGU5UUN5UktCTEVRV1d5S2JFbU5vZUFHSUhQQ1g2bnJ1TkVnOC9DT3huWGtVRTl2U2RqY0NleGdxQlBZMVRWNjJsZkplT0xUYTNNYmlZcEw5cXlCSFRWdjk5NGEySkVwSHNVOHo1c3NGdmVxL0lWbkcramxjTzMwNkxhMkZsazJhcm9IcVpNN2xwU1lHOTdmZTdFL1RhTnVpTEExZGxXd1QyTG5zWVcxYnVMOGtCUldPWEVyOHh0MlZOeG1aTit4Q0F3TXdFRU5oblhnQzZod0FFL29mQWxBSjdWL1Q2VXBka0thTEFVdmtNSFJjQ3UzU0pHc1FjTVErQi9jdzdFSUU5L1ZPSndKN0dLdWN6dWQ0aUVleS9vYkdVNzlJcHhPYXVYZVZvNzFkTHVrekMxbnRSbFRENklRWGU2cHRxenJiRThkeTZublA5UnFBdGNMYXR0RVVzZTU1K0UvSW1oVzEvY3ZrTmpXRHZzb2NwRloyL0xXTHVSU1Y5dU1WNnpmYVlCK1l1WHMvNkNPdzl3WEVaQkNDd2VRUVEyRGR2elJneEJMYVZ3SlFDK3lhS2dVc1JCYloxLy9VVjJQMDk2Z1JyUDkxZ01DVWVmamJ4TXpYMmtpR3dweE5HWUU5amhjQ2V4cW1yMWxLK1M2Y1NtN3RZT0NucWN4T2oyWDJQZjZva1IwSDNMVlBOdVN1S2V6WDJiWHc3elRra1hpN3BUaTBMOUxDdzNuM1hyOFIxUXdWMkovTTlSdEk1R3daejUyQ0JNM1NjWFFMN0pyMzU0SDNnZzZaNmNTNlI2MG42MEZCUWlkZVgrSTI1TFljZWljaW9CZ0VJYkNvQkJQWk5YVG5HRFlIdEl6Q1Z3RzV2enZkTDhtdkVtMVNXSWdwc0VyT2NzZllWMkM4ZEh2YWNBUEdJNE4zdkJKdWJWRW84L0NDd24zbkZFZGpUUHdVSTdHbXM1aERZYlRVUjg3Uk9HMzI4bHFPcUg5TlE3VldTam94Zm5sVGp4QkRKbTFSNXhFcFRpYzJ4S2RpZjNjeWQ4TENyK0JENWhzSDdPdFptMjkrbm5QUGgxY0gzd1IwRHRiaDQ4NUNJdnU5OGxuWmRsemY1VW56bmh3cnNiYjgxbkFEYTlqQ2U1OUJ5N21BemRPMkdobUw1blliMlhlcDZIN1k0b3YrMkRRMGVGL3pYVHk3VldhU2RFcjh4RWRnbldpeTZnUUFFaGhGQVlCL0dqNnNoQUlGeUJLWVEySDNQZTRLa1F6dUdmYnlrZis0eExVY3gzN0tLRHRxemRxMmp2ZDVjdlY3OW5SNXRybDlDa3RPQkFIcytBTVNpM0pxOFFMOFFrbXo1RmZSU3llSEduSDJKaDUrYlNUcGd6RUYydE4zMjJmTWxjeVlzUGszU002dm8wQy9QeElWdTB3aDQvOWlMK2ZacDFmVllTVTlKckx1VWFrTXNZcWFjUTF0MDZwUjJCbFBOZDBxeE9UWW4velp5QXRUWXZ2NUVkVGpoZS8zM1lnMjIvSDNLT2QrMUNxUjRSY2M0K3g1VzlaejZKSmNkVnIxaDhQaVducDVYclpzajJJZThnVkJpRWtNRTlpNlJ0ZVQ4dWc1OE4wVmc3enBzK2N0cUliMVhwaW9sZm1NaXNFKzFXdlFEQVFnTUlvREFQZ2dmRjBNQUFnVUpUQ0d3WDBuUzBRMGkrUG8wK29vbmJlTW5pclhnSmhteHFUNFI3RjJ2b1MvQjZ6UVZWNG1IbjlTK3hxalg5ZUFWT3lBWll6eTB1VmtFYmlUcFhkWGg2eDZKdy9iYkt2dEpPaUd4L2hLcWJickF2bzF2Y0UwcE5xZnNRUjgwV2FTOFg2VHlnOExiV2lsdDF1dE1PZWRZWDl2MjNkQ1ZXOGh2SDF5MzhsLy9hSjlGSzN6TkVJSDlHdUUzL05scVkvS2h3WTBsSFZWb3JGMEN1eVBDMzFTb256R2JhVHRzbWVPWnBNUnZUQVQyTVhjTGJVTUFBc1VJSUxBWFEwbERFSURBUUFKakMreSszem1hOU9HUmNTS3dEMXpJRGIyOGo4RGVsVXhzQ1Y2bkc3b1UyY05HWU05R3hnV0JnQS9KM2lycE9wbEVubFVsQ2p4b0FkR2dIclp0Ty80K01uN2JCZmdlVnk4L2svVE55TFgzTGloY3hUQzNSYkFqc01mSWxmbjdCU1c5VTVLdGV0cUtENWF1TDhsV083a2xKbnIzL2YzVk5JNVlYKytUZE9zcWN2L1UzRWtzdEg2YjM3YUgrKzd3aHBuZnFwcTdEQkhZMjBUajBnRU5YUUo3eVQwNjFscDBIYmI4SUx4Vld6cHZrQzI4Zk85b0tnanNZNjAwN1VJQUFvc2pnTUMrdUNWaFFCRFlXUUpqQyt6MmtiWDNlbE5pcEhYb2ZYODhFOEcrMlZ2WFByUVdGL3p2OWVLSEVOdTgxRityUGtmd0JMNUp3N1EvRjZMRi9rdjZsWjNFQlRZVVRkY0QwNUttaE1DK3BOWFlyTEU4VU5MZjlSanlIRkdBYmNPTUNZazlwbmVHUzZhMFJFQmcvdzM2dnI5RmhxNTN5aHNkZlErUVkzdTE1SndmRUltMHQ0WGJmWWZDV3NqMVhiOUhQTVJTeVQ5TFRMZXZ3SDUrU2UrcDh0eGNyV0VRSmZlTm0rOFMyRGZoc0svcnNLWEVHamExMGJVR0NPeGpVYWRkQ0VCZ2NRUVEyQmUzSkF3SUFqdExZRXlCM1E4ZnJ3c2U2VEhBZlgrb0k3REh5RzdYMzl0ZVZmWXNWLzZXbTU2NHNlOW5ZZXFWUm1DZm12aDI5T2RFMThlMFJIYW56UEJ0a3U0Z2FlNm8wSmhvbVRLWHJqb0k3RU1KTmw4Zlc3ZTU3cjhwT1FuNlJneFBPZWRuQjgveHR0VzdXOGk5TU03cVR0dHExKytSMVlIL1VwS3Y5eFhZMjk0WWRFUzIzMEQ2OTRMSUx5YnBXRWtYYldoejZXOCt4QTViQ21JNlExTUk3R09ScFYwSVFHQ2pDQ0N3YjlSeU1WZ0liRFdCTVFYMjIwaDZReVY4cHR6eitqN1VJckJ2OWZZOHcrUnN0M0JFOVlyOGZScW03S1NhOWpyOWRDUUthaE5vOWYwc1REMDNCUGFwaVc5K2YvNE1PM0dtSTlqWHk4Y2wvWDdsUmYwN3RmL3VKTlZma25UMXRmL3V0MW9jR2ZyYW1YSEVSTXVodzV0U1lMKzBwQTlYOTllTDFBYjlxc3J6M29MbzNBa2FoN0pjdno2MmJuUGVmN3Zzenp5SHZwN1hVODI1S3orS3gyOWJwR3RKK21MSkJaMnBMZit1OWIzc0lTMzlUNTNRTW9haGo4RGVOY2ZYU0xxN3BKL0hPczc0ZTl1Yk5HN0NlK2Fha3BaeVlGR2ZWdGRoU3dhQzdLb0k3Tm5JdUFBQ0VOaEdBaWxpMHpiT216bEJBQUxMSXpDV3dINmhZQTNqQktjcHBlOURMUUo3Q3QzdHFITmxTUitVZEw2RzZUaEpuRitmdHdCQkJQczA2NDNBUGczbmJlcWx5UWJEZGxEM2xQU1V5dFA4RXJYSmZyV0tWUCt6U256L0IwbnJDZlljSGVxMlRwb1JUa3kwSERxMEtRWDJQcmt3aHM1dnJ1dGo2OWIzdDBpSitjUUVhdmRoVWZmQXpNNm1tck1qbXAzd3NwNE1jelhjTVVUWlRCVEZxanZLMm9kU2wyeG9jWXpvN3FFRDd5T3crOURUdjdtYUlzcnRvLytXb1lPcVhkOGxzUDg0Uk14L3FuQ2ZKWnFMSGJhVTZLT3REUVQyTWVuU05nUWdzREVFRU5nM1pxa1lLQVMybnNBWUFydGY0ZmVQdmlkbDBPdjdVSXZBbmdGNWc2dDJQY0RVSDJZUjJLZFphQVQyYVRodlN5OXRoNjRXM1I1VEpRMzlVSXZBdnAra3AxWnZwOXkrQm1MdWhDZDlmbFFBQUNBQVNVUkJWS2ZibE9RVWdmMDNtNnZ2YjVGU24xTWZLRDI1bzdIakpOMjRTaHgvY2thSFV3anMvajU0VXpqNGFocmFrdkluWktCcnJkcmx0NzNFZzRRK0FudmJITWV5djdsWjliYlNPem9XNStZZENUMUxyR25mTnJxQ1AvcTJtWG9kQW5zcUtlcEJBQUpiVFFDQmZhdVhsOGxCWUtNSWpDR3dPNnJRaVUyYklvM2I0UFI5cUVWZzM2anQxbnV3WFE4d1RwcG15NG5WcThvVzh0N1lFbG5XZHdCT21IcXVob3QvS2VrYmt2enZVc1VIVTdiQ1dYcEJZRi82Q2kxbmZQN2QrOHhLRkh4NGJVZ3IwZTNyd1h1M0tZSjlYMG1YcWl5Z2pxNUZ4anJ5M1NLM0l5eVhXdHFFNjlTRWZiN24rUDVtYTRRU3hZZVJkNVgwYjdYR1NnanNWNmdpWFY4azZjV1NYaS9wMUJJREhxR05LY1RtSWNPK3RxUVBTTEtkVWxOeDhtL1grV3hHSjJQUDJaL3ZSNGUzVU5xR05mZUJXQWF1YU5XWTMvWVkwZDNSUVVVcTVBcnNadysvb3l4cTE4dFk5amUybGZSdnQ3YnlTRW5QR0FxaThQWGUrMCtvZm44ZTJ0Q3UzNmk4WXpnOEh0S3Q3ODl2YjdEd2NwdGRPUTFJY2pxRU90ZENBQUliUlFDQmZhT1dpOEZDWUtzSmxCYllIZkhpSDN5M2JLQm1FZElQNEE5bytCc0MrMVp2czBHVDY0cGVueW9xN25CSkJ6Zk13ZytEM3ZNbGZVZ0h3WnJ3WWdUMkNXRnZlRmROMWpDZTBrcDBzL2Uzazl1MUNlejJZbS9Ldi9BSlNZNTYvTjVDK1F3VjJMcytZMzJtM0hhL1BIZUlITFZ3dTE1eW9xWDl2YjQ2R1B5WnBPZUdRNVVUK3d4MHhHdkdGcHVIRHYzQ1ZZVDZSeVRaRjcrdDVFYnlqamxuSjJjOXBMSm5lM3pIZUoyZzhyYVNmamdVemtLdTM2VGtwaXRrdVFKN1cxRERtUFkzc2JjM1VnOG1wOXdtWFRZNmZaTVMxOGZmZHVqbVJOLzdTL0wzWUZOQllKOXlKOUFYQkNBd0t3RUU5bG54MHprRUlMQkdvTFRBYm51WUpuSGRYVG9TejY5L05rV29JTEN6TGRzSTVFU3ZqMEd4SzVLcjc3NGRZNXhUdDRuQVBqWHh6ZXpQSHNYdmxiUlhiZmduU0xwK2xiVFlBbXlLRU9COEhvNWkzN1BXemhPck4waitZcUdKT0RkRllHLzdMTnNEMzI4UStDMmRydElWMGV2STVxY3RhT3VPS1RhWG1HYlg5ODJxL2R6dm5iSG1mRGxKTDZ6ZVdMU05VMXY1ZkxDTitVb0pPQXRvSSthM1BWWjA5OUNwNXdyc2g3VWNtbGhnOTMzN1g0WU9xT0g2WjRkY09tMU4yMGJNaDB2MlkxOUthZVBrOFQybzBOdUk2NGVYNi9PT0pYNU4rVjZOY2V6Nm5aZDdINHIxeGQ4aEFBRUk5Q2FBd040YkhSZENBQUtGQ1pRVzJOdUc1d2QwUDRUNU5mS214RWg5ZjZoaEVWTjRReXlzT2I4bTN4UzU2bUZPRmIzZUZsSG9xUFhyRlhqOWQySElrNGVEd0o2TWFtY3JPcnJWQ1lqdjEwQmdYWHhJRVFMYVhzWDNtMUUzRFNMKzBrRHZpc0RlZGdnNjFUMDZaOTNIRXB0enhoQ3JHeE1hY3lONVM4NzVna0Zndlgrd2FPcWF5NmNsL1VuMVZxTVAwN2FsZEVVc2p4bmRQWlJmanNBZXMvd1o0NDBFLzlhemQ3M2ZkR2dyMzZ6dTg5ZVNaR0Y1Q2FWckw1VHlxZS9pRW51RE11VjdOY1lSZ1QxR2lMOURBQUtMSUlEQXZvaGxZQkFRZ0VBVldWWmFZTGNZYXN1TXV2LzZveVE5WFZMYmovempKZjF6anhXeGdPT0krWHBVbzcwUDN5ekoxZ0o5aTcxT25Xek1EMDJVZVFoY3AvS2JQYXJtdmJ3YWlZVzdoMDBRdWJwM0phVC9VK1V2NnlqTjllS0lQRC9zZlcwZU5MUDNpc0ErK3hJc2ZnQzJDM3Q1d3lnZDBXNi8zVlBDMzFLRmdMWkVxVXVOa3QwVWdiMU54RWtWdE5xc0hkNHQ2UUJKdGpKWVNpa3BObzgxcDVoVlJreFlxNDhyTm1mNzVmdjNUbGZaSTd4cDRuK25sTDhMeWU1L2xGSjVnK284Vk5KeldzYTd4T1NtcTZIbUNPeSt4cit0WDltUVhIclZYdWszaDlwc3F1cW9jKzJSeHRwYVhkN3I3dE8vVFcyVE5iUjBXVWJGQXBOU3YxZTd4b2pBUG5RRnVSNENFSmlFQUFMN0pKanBCQUlRU0NCUVdtQy9WWWhXc2xYTXlrTjAzU2MzOXFDWE1PVEpxalM5SHUra2VuOC8yUWkycDZON0I2RThaMFlXdEYvWFlqbjAzY291NHJyVnc1OGo1TVl1VGdyNGlvWk9ja1dPc2NjNWRmc0k3Rk1UMzZ6K3JpN0pBbXY5c05WUnpiWVlzRC90cXVRSUFVNGE5MnBKOWQvU3p1L3hrTW9QMnY3ZlN5bGpDZXdXdDU0Zm1hUjk3LytoVnFjcm90eDE3NUZSZjFYMXZHR2Q5MmtZejUxRFZPcFMxc1BqaVAwR2lZbFdVOHdsbHV6UkI3NE9MRmdkVU1YR0ZKdHo3UHFjdnp1WHdwOVdWaDRmbitEd08yZGNKZXAyN1hVSGRWajhmVmVKamtab0kxZGc5eERhN0wzOHQ5SkpwaThXOG5CY05ESjNKNEczNS8vYzViTFY5OWd4NGRDcFBwWjErN09oNC9Rengzc2F2dTlTM3FETStWNXRHeWNDKzlBVjVIb0lRR0FTQWdqc2syQ21Fd2hBSUlIQUdBTDdXeXRCMGo4KzdiZCttZHJyKzFNKzZDVk12N05LazhDK1NlTWZPditTMS92Z3hmc2lwMWhrZUVQRGc0WGJLQjA5MVRXdXR0ZjFseURFNVBBc1hSZUJ2VFRSN1duUE5oTHZsT1MzUCtxbDZiT2JJd1IwSGJ3NTh2ZXBDeEwyeGhMWVUrNDlUZDlWWXdqc3R1ZnhkMzM5MmFhVVJVTHBUMFhzT3p5RmJla3gxZHVMalhHSkFydURLaDVUdmNIb2RiZll2STJsYmE5N3JxVVNXbzdGclkvQTdySDR0OXVSa3ByZVhQaGdPTEFxa2J5MkxaRm5uWWZ2TmJhUk9YMHNVQW50K2w3M1RFa1BiNmxiOGg1eWVIV1ljWEJEUDU4SkNVNGRiTkpXY3I1WDI5cEFZRS9ZRUZTQkFBVG1KNERBUHY4YU1BSUlRT0RYQk1ZUzJOMjJvMTlzRWZBM2ExR0ZzUWZISmEwTEFudTUxY2dWMkxzRXV0VkRYNjVnMzJjMmJaK1BsT2loUHYxdDBqVUk3SG1yNVZlOUhkVjlsc3FYK0pPU2JERzBqVUpVbCsrNjN6aHg5UHEzYStoeWhZRC90OHJwOGY2RzZIamJlZDBrUk0vbXJjNDR0VGRKWUxlSVl6R25Ycm9zR2Z3ODR6ZTY3dFZ3M2FZbGUxeE5vYVE0MW5kWHhYNG5MVkZnWDgzVjk3WFhocVQydG03YWxudWNiWlJzZDJVTHhLWlN5aEtrNzU2SlhkZFhZUGU4YlluendKWU9TaVh5Ykh0VHNONXRxbTFWak1lUXYvOXhpRjQvWjBNakpROFd1OTZZZUtra3Z4bmE5Zm5LL1Y1dFlvTEFQbVNuY0MwRUlEQVpBUVQyeVZEVEVRUWdFQ0V3cHNEZTFIWHN3WEZKQzRiQVhtNDFjZ1gybUFkdGJudDlaMktib3c5WGlWWXZVbXRnMS8zWGpRT0JQVzFYZWUvWXpzTmUxT3ZsbzVMdVVvbVRYMDVyWmlOcWRTWEg2MHBHbWlzRWRQV3pKRC8yVFJMWTIrNjVYZmZhdGlSL201anNjZlVCUTJBdmQ2dXgySGhnT0F6N1JibG1aMm1wTFpHdkIrTThMTTRYODZWWlJwYldhVitCM2ExZnFwcWZFNXV1YkIvWGV5dzE5MWhpMy9VK2J5M3BMV25UTGw0cjVrMWY2c0RCQTc5R1pZVjRkRXNPSWdjdjJTTy9xK1IrcnphMWhjQmVmQXZSSUFRZ01BWUJCUFl4cU5JbUJDRFFoOEJTQlBhVUpGdE44K3RLdk9VRXAwTmVJN1dJNmxkUjE2TXROK21Bb005K0dPdWFIRUg4U3VHaG9wNjRkbjFzcWUxdHdubzFIZVNNdFE0bDIwVmdqOU8wcit6YkpmMVJTOVVsaWNIeDJjUnIrSDdwdkFsTmRnTFBrblJRUzhSZEh5SEEwWDEraThYQ1ZyMVlEUEpZU2xnWHhHZmRYbU9UQlBZSFZBZUpUbEplTDExQ1RsdkN4MDFNOXJpYU53TDdrQjNmZkszRlVPZEhPS2w4MDVPMWVGaDE3M3A4UzI5VEpWd2ZNdGtoQXJ2N2RRUzdFOWMybGFHV2ZWMi9KWnI2YzBTOUQyN21LRjJXT1cxdmFQVWRaOXVlUzQzaTcvTzlXaDhyQW52ZjFlTTZDRUJnVWdJSTdKUGlwak1JUUtDRHdGSUU5cjRQdFczajcvS2FIYkloTmtHd0hUSy9zYTVORmNSajBVR3I4YVcydHduclZVcGd2MWxEbFBSWTYrbDJ2VlpPdE5kMEVHSmZVSHZ5VHBsdzBqNng5djFlVXVrU1pWYmozQVJ4Sm9WcFcxSlRYN3VlNkxxcHJiNUNRRmVmUzBoNnVra0NlOXU5c3UyNytVSWhNdGtIb3V0bFU1TTlydWJROTdkSXltY2t0VTdzZTJ2SkZqRnRjL1IzZ3IrMy9lYk9waFhiZXptUytQSU5BM2V5VHlkY1gvcThoZ3JzWGJaOVE2UFkyOTRVOUpzdzM2cVNXbCt1eHYwNFNUZXVQTkJQbm5nanhhd0w3MTdsbjNwRkdKTzFIbnYyKzFuRW45ZmNjdjZRM1BScURSZStNVmdWMmFxd3EvVDlYbDF2RTRFOWQrV29Ed0VJekVJQWdYMFc3SFFLQVFnMEVFQmd6OXNXc1FmZnZOWjJwM2FxSUg3SDZtSHExUzJKVGRkcHBiYTNDZXRWU21DUDJlcHMrMjViZ2pDMnpyanJBWG05M2hlckIrbHJCaUZoVTlmSStUYmVXNzJ5dmxmREJGSjgwZnNLQVYxV01SN0szRWxQTjBsZ3YyRVFkT3JQS0UrcURzb09hVmhYZTFIN1hsMHY3dzRIZmFjdGREUEh2aE9XY0I5NWhLU25kL0RMVGZSWVlzN2VGeGNJZGhVWHJ3NVFMZnhaNUxSSHZ3OWJVMHJLdlNDbG5hbnJ0TzExajJQcCszM0ZhcWpBN25hNk9BenhvUGZ2dVRjM0xLb1RlZnB0bUNmVS9qYkhvWWIzdis4TnZoODJGWC8vM1ViU0tlR1BxN2U1L0grZEROVUg2VG41Q0xvUzZxYll3N2pmdnQrcjYvTkRZSi82YmtOL0VJQkFMd0lJN0wyd2NSRUVJREFDQVFUMkVhRFNaQzhDWFNKZHZVRUU5ak1qUm1DWG50SnI1NDF6VWR2RGJiMjNId2ViazArTk00elJXN1ZWaXlQcWJ0RFMwNk1pWXVGUUljRGZZVytxY2lYY3FLRi8rNzdmSVl4dmRCQU5IV3lTd042V3VPOWxsYmYwUFd0ek80Y2t2ekhpaExMMWN1Y2dpczNCTzZYUEVtSnpTajlENnJRbG5GMjEyYlFtWGYyTk9XY25iYjZpSk51RStIczVWamJORnF0cnIzdXVTOS92cS9Vb0liQjNSWEIvTE53UCt0aHl0Zm12dnlyWVZqbWh0Wk90cnBlcGt5aTNKZGIybUN6NCs0RHlnMkdBVFc5VytjRHNjWWx2OVhVbDFNMTVXd0NCUFhZMzR1OFFnTURXRUVCZzM1cWxaQ0lRMkhnQ0NPd2J2NFJiTVFGSHdEbkM1MzZKczBGZ1B6TW9CUFpsQ2V5Mnp2R3I0UmFmdWtxcE54Z1NQenBGcThVK3Q2azJMVU9GZ0s2OERiWXBjdVNsUmZpcHl5WUo3RmVvUktJUGhTamxkVTVOMGRKdDBaVXhLNkNwK1RmMU42YllYR0orZmthMHpZUVRJTGNWdjFIUUZrazc1NXozRG04MVhDWUM0dldTN3Bvb05wWmdPcVNOcmtTVFR1SnFleGpibUN5OWxCRFlQY2UydkF1T3p2WWJEVWRsZ3VoNjArdVJWV0pWSHlZMWZZOE9FZlF6aHlnZnNqaTNpQzN4bW9welZ6aUMzNVl0WFlFaWI2anlFTnczSVRkSVYwTGRuUHdXUTc5WFBWY2kySE4zQy9VaEFJRlpDQ0N3ejRLZFRpRUFnUVlDQ094c2l5VVE2RXFPMkRTK29RSzdvKzJlUC9IRXp5WHA1WkwycmZWYlNtQkZZRitXd083ZmVrN0c1dVIrWFNYbmdYbmlMZHZabmNWMVJ4NDYrVjFUeVlsVUxTRUVkTjFENXJLbTJDU0J2VzJzZGIvdkxyRnBpRTNFVkh0NzZRTDd1U1g1VU9QYUhVQzgxM01PakthYzgwV0NHTm1VZkhnMUpiOVo0a01hMjJvc3ZiUkZWM3ZjVTBkUkQyRlZTbUR2RW4vYjdLUzZ4dDEyZ0dHeCtuclZtMGtmbHZUM2t1NVZhMlJLbTVpdUJLKzJlUFBiVzE4TzlrbU91dmZuczYwNHl0MXZWVGxSYVZQeDc0Wm5CbHVaK3Q5ejgxdVUrRjVGWUIveXFlTmFDRUJnTWdJSTdKT2hwaU1JUUNCQ0FJR2RMVEkzZ1J4cm1OVllod3JzYy9qc3RuM1dFTmpMN01BNTFqUTI4cTdJYWw4N2wvQWJHM2ZzN3pIdjg5eDVsUkFDdW9TSnVWaHZrc0RlRmtsYXp4Rmc0ZFJScW1lcmJaSk5pZWFkVW15T2ZZNmEvdDcySnNHcXJyM3Q5dytKZzFQYm4zck9sNnBzcjk1WFJSODdlV1ZiMllTRHhhN2twcjdIK2JQdzc2bUxNSE85VWdMNzJZUGxscjMzNnlVMythNnZid3NNc1ArNjk3bVQ0N1o1di9jUjlIT1hJZllkL3FCZ1k3TnFOK1dBeWZkVVI4Ti90bUV3dngrc1ppN2E4TGZjcVAwUzM2c0k3TGs3aHZvUWdNQXNCQkRZWjhGT3B4Q0FRQU1CQkhhMnhad0VIQVg3d29ib3BOaVlFTmpQVE1qQ2pCOEdweXArMEQ2MHNnUzRYRU9IL3hFOGVVK2ZhakNTUHQzeXdEcmhFQnE3c20yQ1BjcWRHSEM5V0Rod1VsLzd5MjVTaVlucmZYelBTd2dCWmhqemd6ZnptMVhpeG5FVEFkOGtnZDF2MkRqUllOMUwzNUdXMTVKa1VjajM2MWRXbjdYYk4vQmI0Z0ZYMHpKUExUYm5iclcyaEkrcmR0YUZ4OVMyNTVoelY5U3Z4LzM5RUtYZkpES216bXZzZWwxSlBYTVR6WTQ5MWxqN3BRUjI5OU1taXEvZksyTGpXZDJ2blNSMm40YktMNVYwNzVBWTFBYzFqbVMzZUwxZXhqN1U2OHJ2NFhHOExVU2oxeE02KzN2b3hkWGh5KzA2SVBpN3lKLzFqOWJxSEZiTitmRXQxK1crSVZUaWV4V0JQV1VuVXdjQ0VKaWRBQUw3N0V2QUFDQUFnVUFBZ1oydE1DZUJyb2R3UHp6NUlhVHBWWGtFOWpsWDdkZDlkejE0OVlsa20zOUc0NDNBNHVYMTF4SngyaHJCd3ZxcDQzVTVTc3YrL2VxRWx5K1J0RWRMRCt0K3RLbURLQ0VFclBxS3ZSRXpwY2crbHNDZVluSGxwSy8vVUZ1QW4xVDdiajlKeDdjc2pPdmZvK01hdC9tdWhyVS9JZXp2RTFNWGZNWjZjNGpOcWRQMTU2dkpEbVA5ZWgvV1dmaTFoVVpxbVdQT2pzQzFLT3JQWTF1NVd6aXdTWjNIbFBXMkpibnBpbGxKZ2QwSlBkOVRXZVRVOVl5VnJZdHpPYVNVTG4vNzliM2hwSjkrNDZISmVtV3NKTE94ZzJTL3dlRHY5SDlwbWFqM2o2MWVIdEFCd3ZkajI4VzhQZFM1Yk5YbU1aTDh2VkV2T2NsTlY5ZVcrRjVGWUUvWnlkU0JBQVJtSjREQVB2c1NNQUFJUUNBUVFHQm5LOHhGNE9xU0hMMTB2b1lCT0FyMmdQQkFWUmQ4WEIyQmZhNVYrMDIvQ096enI4R1VJL0J2VjRzQjlwaHRFOWR0QzJFUjVJZVpBeXNoQkt4MzJYVnZjVDJMSTdlb2t2SjlKSE9jdWRYSEV0aHp4N0dxSHhQWUQ1ZDBjRVBqdnQvYUZxWXQwZCttUks5N2FuT0l6YW5yTlpZb1BjZWNVNUsxT2tmRmdhbHdKcTYzTGNsTlY5aEtDdXh0RWVYdUsrZlFwTTNmdmlrUzNrbHhuZnkzWHZ3YjByOFY2MUhrUTdlTG8rcDlDSDdPbG9ZZUplbnBrVTc4eG84VEVyZEZwUHR5SitIMjNKeFR3ZTA5dktWTkg2citSWWpvVDUxYmllOVZCUFpVMnRTREFBUm1KWURBUGl0K09vY0FCTllJSUxDekhlWWc0RmRvM3hvOFRKdjZYMFhCT2xJV2dYMk9GWXIzaWNBZVo3UXROVkxFOVp5a3BuVXVKWVNBZXB1eHhNbjE2TUV4MW1yVEJQWkh0SWhHZnRQb081TGUwQkMxT3JaTlErbDFtVU5zVHAyRHhVa253bTRydVJZY3EzYm1tbk1zOFhhZmFQeFVsa1BxeFJKVWIxSnkwOWdlNlBPMldWY2kzdFREdGk1Lyt5Wi8valpSMzhsT0hWSHY1S0VsUzlmZTlSdG90NUYwU2tLSDNrdE9kUDZzam9OcEI1UzhJTHdkMWlUbys2MnI2d1lidklRdS82ZEtpZTlWQlBZYzR0U0ZBQVJtSTREQVBodDZPb1lBQkdvRUVOalpFbE1UY0ZUUDh5VGRyNlZqZTJuNzFkdHZCNHNEQlBhcFZ5aXRQd1QyTkU2YlhpdkZGc2JpdXBQZTJTcWtUeWtoQk5UN2piM2k3L29XTnU0VDdqUC8zV2Zna1dzMlRXQnZFMkx0SjN5VnlzckErUVRxcFo3a2J3U01SWnVjUzJ5T1RlS0NsUmYxTzFzWXI2N3RteGgwcmpsYmhMU0kzbGI2aUxzeGppWCszcFZvY3RPU202NTRsSXhnNzdKc2VWa1FpbVByMEhXWTFHVDc0ajU5K0dSN3BIcnArN25vR3VPRlFnUjdQYTlOSDdIYjMwWDJZM2YrQ3YvK3pTMFc1dy9LakY1M0h5VytWeEhZYzFlTCtoQ0F3Q3dFRU5obndVNm5FSUJBQTRHbENPeTJIVGl5eHdxMUpWcTBGNlFUTUg2aFI1dXJTK3lQZlBRSXI1NE9HTkpXWFBySXlyLzdhUzB6cVVjak5Ya0MrMUlzWXViZkNnanM4Ni9CMkNOSUVkY3RPTjJrRXRnL1BtQXdKWVNBcHU1amgzbXJhLzVjMGxQQzYvb0RwbkdtU3pkTllQL2o0QUZjajZMMDRVUFRzOHY2WVdoSmJtTzJOWmZZSEp0VExDbW8xOENIV1BiQXp5MXp6VG5XNzFJRjlvZEtzbjFOVXhsRHpNMWR6ejcxU3dyczdyL3R0MW1Ld080M0dOdVNtM2E5RVhOVFNVNHVXNzhYK1hlakk3enJDVVA3Y0ZxL3B2Nlo5R2ZRNHY5cmV6YnNTUHZYdDlnaXRqWFpSOUJmdFZYaWV4V0J2ZWRpY3hrRUlEQXRBUVQyYVhuVEd3UWcwRTVnS1FMN0V0Zm9xOVhEN0w1VmtxSnZMSEZ3R3pvbUozdTB6WUFmbEpxS1g4dDk2bHFrRGdMN2NoY2FnWDI1YTFOaVpLbXZ0dHVYdlN0S05XVXNKWVNBdG40czVqZ0MyeEdFWGVXbFZWSmxDMnNsRTgrT0piQjdqTitQek1lZnovUFg2c1E4MkM5VzNadVBsV1F2OEpSeTl4WmY1SlJyNTZvVEUzMVRMUzVLanY5U2xWMmE4eGZZQnFPdERQR2FubXZPbXhqQjNpWCtEam5rS0xsZityUzFKSUhkKzZMSmJzcno4dHVORDJ1SjFzNjFsZW5EYWYyYWVoVDdpNExkaTMzVCs1WnJocVNtVGJtSG10cnM0NzIrYXFmRTl5b0NlOStWNWpvSVFHQlNBZ2pzaytLbU13aEFvSU1BQW5zN0hBVDJjVDQ2bDVSa0Q4dTlhczAzK1ZvaXNJK3pCaVZhUldBdlFYR1piWnhGMG1Na1BhbGplTFpYY1VJMkN5SkQ3VlZLQ0FGZEpDMmErUkRnQmhIY3gxVSt0N2VYOU9WQ3l6S1d3SjRpQWpjSmFqR0J2Y3RidVk1a3FkSEhzYVdiUzJ4dUc1ZmZzckIxaFBkZFcvRm56WWZTL283c1UrYWFjOHlEM2RISXpwVndlcDlKalhSTlc1UzB1L3RZZUZzbk40bnpTRVBOYXJha3dONTFuNGhGc0hmOWJraUpSRCtzSldub1dGN3NxN2NaUGxHdC84MHE4Zjk3V2RTYksxOVYwbHNrWFR6U2xpM1hiSmQ0WXM4K1MzeXZJckQzaE05bEVJREF0QVFRMktmbFRXOFFnRUE3QVFUMmRqWUk3T045Y3ZZSi9wWXJLNEsyQklsakNlekhWell6L3p6ZTlCcGJ0cEJ5UzBsNzF2NjZxZnNNZ1gzaURUUlJkOTZuZnkzSlZrNWRwZjYyeVpEaGxSQUNZdjFmSUVSTlhpOVMwYS9rM3pIY24ySnR4djQrcDhCdUVlZkJ0UUdlSnVtWkhRY0lmajU1aGFTN1JDWTJWUENOY1J2ejczT0p6VTF6U3NrVDRPdHNLM0hYQVJaR2M4eTV5NmQ3eGNKSnpPODc1bUpudHQzbDgrMm1IRm45M013MmwxSzlwTURlWmlYbHVjYld0Q3Q2UFdXZjJ4UGQxbzMxMzFIdSsyMlMvRWFWNzNPbGlrWHcxNFhENUNFMmFQWHhwSWpzUS9OYmxQaGVSV0F2dFpOb0J3SVFHSlVBQXZ1b2VHa2NBaERJSU5EMjQ4a1AwTFpHOGIrYlN0UHI1NjRYODhhT1BlaGxESDMwcXBzcWZJNE9wa0FINjhLQzkxaWJ6Y1JZQW51QktSUnJZbFAzR1FKN3NTMndtSVpzNFhSRWxhelVDZWk2eXNHUy9rYlNMd3FOdklRUWtES1Vpd1N4NURvSmxSOGY3S3FHaURWOUJIYXZnUk9LK2dEUXVVU3UzU0FtMmZ2OHN3bHo2RlBGYTN0NDVFS0xhUFluOXZnMnJjUitnNlM4SFZCaXpxbml1bitIN1RjZ2diREhPc2VjdXhLRnJ2aDVENzJnQk14Q2JWeTVlc3ZsZ3kwZTJWK3JiSHg4My9oU29iNm1icWFVd0g2T2tHelVieDQwRlIvTVBxUGxiMTJKZkZQdGQveTVzVC8rUTFyNkdNTzJ5b2V6TVV1dTNQV00yVUtWZUVPb3hQY3FBbnZ1eWxJZkFoQ1loUUFDK3l6WTZSUUNFR2dnMFBYanFROHdCUFkrMUhiekd1ODkyemJZZTNiZGQzMmRCZ0w3Y3ZjR0F2dHkxNmJQeUN3aXZGclNqU01YUDEzUzR3WkUwelkxWDBJSVNKMXpqc2p1cEhtTzV1NXJHWk1xc1B1dEFVZldIeFNzUUd4VjQzVTRPWFZTQmV2RmZMT0hKTjByT016ZVRjMGhOdGNINi9VK3BNWHFZcjN1MEtTS3E3Ym1tSE5Yb2xDUHk0Y3ozdk1mNnIyUzVTOXNzeDl4VDEzZTRPVkhVcjdGbU1CKzJTb0hoVC9iUHRCcE9qaTFkdkdISVovRjNpM0RpNjFwVnlMZm5Cd0RYUkgwVHBKNm8rck5pSlBLSXl6V1lzeXlySlRkVFludlZRVDJZc3RPUXhDQXdKZ0VFTmpIcEV2YkVJQkFEb0dsQ094OW84YmF4aC96bXMxaFJOM3hDRGhhMHc4VGJVbWpFTmpIWXorMFpRVDJvUVNYYzczRmxYK3NyQ2o4K24xWGNYVDdnWVhGZGZkWFFnaklvWmxxRitNMi9WMXlQMG12N1JHeDN5V3czN3V5TkxoYXNISHhHd043ckUxZ3pyZGFIRDN2S0Y3N0xEZVZSMVYvOHlGTFYzRUNQd3Q2OXRndTRWbWNzN2F4dW5PSXpldGo4dDd6NTZqTGMzMVZ2MFJTUmJjMTlaeGowYmtlMDlMOHpMc1NhS1o0ZzhmMjNkeC9qd25zdGlEeXZuVHh3ZDRwdFFIN1lOSUhRMTJsNjJEUTN6SEhoSHQ5dlkzVTZQWFZkYmJ5OFZqdjB6SVkvODEyUGt0OHd5Ymx6WlVoaVUzWGtaVDRYa1Znbi91VFMvOFFnRUFTQVFUMkpFeFVnZ0FFSmlDQXdENEJaTHJvVFFDQnZUZTYwUzlFWUI4ZDhTUWRPQnJSYjVMRUVxNDFpWDJ4SklhVFRDQ2hreWJCMmxHRXJ3a1I0d2xONk1od3VKQVRHZGttY1B3b2lGVzJXMmdxdGlPd05jeFlOakJkODcxMEZRSDY0VXJBc3FCV0w2bUovdGJuN1d2OGh0SjdxZ2o5SlNTSG5GcHNYakgwczk4TkpiMnF4VCs2enZwZGt1NVVpTm1VYzQ1RjU2N211VFEvYzdQMkd6eE5KU2U2T3VWZU1rZWRtTUIrdVNDQXIvTGk5QmxqMjVwYW1IOWg5U2JRdlZvYTdlT2QzaFhGYnR2QkEwSWkwVDd6R1BNYVcrdlkwMzM5UUhXOXY5UjdiTW9ZRWRoVEtGRUhBaERZQ2dJSTdGdXhqRXdDQWx0QkFJRjlLNVp4YXljeGxzQis2Z2llbXJGRjhBT1ZIM2pxRDFaelJxdkd4dHoxZHdUMklmVG12OWEvUlc4bjZaVUprWWx0a2V1YkxMQjdCVkk5NTEzWHZ1ZTNrUFNWaktWckV6aGlUWXo1QnBZL3Q0NmN2MFFRZWs1Zkc0eUZNRnRoT0dLL3FWZ2NlbE5zOEpXTnhNV3FnNHRqSlYyMFZ2Y05RV1R6L1hldU1xWFk3RG1lUlpLVGV2K3RwRFpyalRvTDI2YVpkYWtEaWFubTdIWDNBVUlzeDhFSmxaaDcvU29DK2NTNU5rR3RYeDkwK1FEdEppM2p1WE00akZ2SWNIc05JeWF3dTFFTDNmdjNhdjNYVm45dGU3WkxWTzVyaCtMdkx5ZHNmbmpMZUQ4ZnJHSnk3dGM5cDU1ODJkVWwrYkRHYi9nMEZkLzMvYm53MngwbENnSjdDWXEwQVFFSWJBUUJCUGFOV0NZR0NZR2RJTENVSktkWXhPekVkc3VlNUZnQ2U5LzlsajJCdFF2YVBtc0k3RU9vY20xZkFrNFM5OXlFaTd0c1lUWmRZUGYwTFNyL3RTUW41MnNydVdLTlJkVS9DUFl2RCs2SVZ1ekNIOHRua3JCMHZ4SnlyaHE4cnE4bGFkOXdxT0JybTVMbzNURkU4Ylk5cHp3cGVJZkgrbTZMTHJWbGpNVzJkVkUvMWxicHYwOGxOdHR5eE5ZL0Q2cVNRbDRtWXhJbEk5ZFgzWTQ5Wnd2VUZxRXRlSjRuWWE1bXNySWpTYWcrZXBXWXAvZDFxM1g4MXVpakdMZURtTUJ1UzVobkIydVYzSkYwM1I5amRrRkQ3Rnk2YkdjOGh6NlI4Ymx6VDYxL1NVbnZyUTYwOStxNHdOK25iZm1JVXZ0WnIrZnZJU2VXOWIvWGl6MzJiZDJWa3FRY2k1Zys1TGtHQWhDWW5BQUMrK1RJNlJBQ0VHZ2gwUGJqS1piQnZ1M0hla3dVYUx1dXIrQ0pCL3QyYjIwRTl1V3VMeEhzeTEyYmxKSFpDOXEyTDA1cTJWWmlDVTIzUVdEMzNQMjczQWNPejJvUXcxUEZkWXNZamd6L1A1VzFpNFhxdGlqRjJOcDhKOWdwT09MWlNRZFRpdnUrMEpxWXZsOWxqL0QvUmQ1TXFIL0h4NklyUFk3WTc0TFZXTnNFeTVkSnVtZktoRWFzVTFwc1hvbFk1dTlJOVpzRjJ5Ry9IWkZiWGhBUzNaNldlMkdrZnVrNXV6dnZiKzkzZTNmN241Zy85MnFJU3hJOVYyUHFTbTc2bDFVbC8zM1RTNHJBSGt0dzNNVEFrZjgrUlB4bXd4OTk4R0k3bEZ1MndQdGlsZS9oQmdPU1NMdFpINHcrcldOeFNvdldmZlpCaXJpK3hNK0Y1NHJBM21mRnVRWUNFSmljQUFMNzVNanBFQUlRYUNHQXdNN1dXRElCQlBibHJnNEMrM0xYSm5Wa0ZrQWNkZnFBaGdzT2x2UTNrU2kzYlJIWVY5UDM2L2xPWnJwbitBOFcxMjllUlNMYjBxS3BXRlM4bmlRbkxMVTRsU295MXR1eVovQXJLcEg4K1pVWTVVU0JYWkdGRmpZZEhXOXgwM1lPamtxMzNVdHVXUmZMTFE2L1B5SEpiYXAxamIzRzdibGVmOTdwZTVDZU83ZXUrakd4RERMR1R3QUFFUjVKUkVGVXVXUmZxVzA1eWJlVHg5cWVKeVdxTkxYZFZiM1luSE1zMDN3dzErZnd3R1BwWTdPVU85ZmMrbDNKVFZQM2UyNmZjOVJQRWRpdlVPVUorRkFWeWU0MTdpcmVyN2FLOGhzdC95YkpTVXJySlNXWjU5M0RmVzhJRDBkb3Y3UERmc24zMWp1RVBDTkQrdWw3YlVwQzdkUkQzTDVqR0hJZEF2c1FlbHdMQVFoTVJnQ0JmVExVZEFRQkNFUUlJTEN6UlpaTUFJRjl1YXVEd0w3Y3Rja1ptVVhoUXlxUjVQSGhJZ3NTOXJXMTJOY2tuS3kzYlVIbVNqbWR0ZFE5ZnhEejYxSGZQNUQwbUdvOEp3L3N3d0xpMFpKU0lvTnRhZkI2U1JiZS9FYldKeHY2ZGtKWWkrRVczOXVTMWFVTTJRbnREZysrdkhYYkZIKytQQlpIUlYrenNoZXd4WXNUa1BZVjhldmpXVmxUT1VxK3kzZTlmbDFLUkcrYm1HZkxGSHYrejFsaVl2UFVZL1ArY2dUNFowYnNlQWx6WHFLNGJ1VGJudHgwdGExU0JQYVZ0VlhiUGQzM2pDK0UvRFd4NzRaWU1rL2ZZNzN2TGRZUExmYjhQNm9TL00vVzBwRDc4RHFuNUk4WU9wYjE2MVBFZFgvSDJmdi80eVU3THRnV0FudEJtRFFGQVFpTVJ3Q0JmVHkydEF3QkNPUVJRR0RQNDBYdGFRa2dzRS9MTzZjM0JQWWNXc3V1YTJIRnI5by9zUkpRSEZYbzEvcGpBa3JKR1pWSXhsWnlQSTdROWY1dTgxMzJnWUFqdEIxRm5sdStIcXhvWGhKOGNIMjkrUjhneVNLWXhYUUw2VU9FKzVReFdkejNBY0k5SkQwbDVZSlF4d240TEFoMUplRDBHeEYxajIzdnB4c0hJU3lqdStKVmx5QTJlMUkrN1BHaGx2TWdwQno4REFFeDk1eWRBTk9ISzAwMklrUG1OZlRhWFVodXVtS1VJckFQNWJtNlBtWTNWY0lhWm4yczFsV2VJT25RamdsWXlIYVM2bytVbW1Ta25SUnhmZTdvK2hRVUNPd3BsS2dEQVFqTVRnQ0JmZllsWUFBUWdFQWdnTURPVmxneUFRVDI1YTRPQXZ0eTE2YlB5UHpiMUsvYnAvcCs5K21qN1pxbENleXh1Wm5WMzFmZXdmZUtWUXgvZHdTbEk3ZWR3TzZ6TFljWEQ2MzRQeWV4dlp4cUZuRWNQZnpCRU1Wdmdmd2JJWEswSzhyMDU4R3U1UCtwZFdhaDNKSDdUc2JaVnBxc2czNHN5WkdtbjhvWi9BaDE1eGFidlJmczlmOVhrbjQwd3Z5YW1weHJ6cDZyUlUvdjY3RVBFZnFndkViNFREUkZQbit1K3RzMkpEZGRjWmxLWUkvNWpZOGxLcDlYMGx2RFBhWnRMMHdsc2w4a0hGTDdmdGRWbHVBUEgvdmNJTERIQ1BGM0NFQmdFUVFRMkJleERBd0NBaERvU0dBVFMyWkdrbE8yenhRRUVOaW5vTnl2RHdUMmZ0eTQ2c3dFTmsxZzl3eWFvclRyTXpzMitCUmJqSTVaSVZ3NWlPQjlrNk82Yi9meHo4Rnk1c1BCM3NaSlU1dmVSbkEwcDk5VU9HZkRoblQ5TzFkKzlMWUFXbGtIclZlTDJUczAzYmRYbGpRVzkrY3NjNG5OdHRid0d5Sm1aOHVpS2NzY2MvWThIeUhwcENrbm10R1huOFV0L0R1NWNWTkpzVUxLNkc3MnFsTUk3QmJYM3g2eERmUGgwa0VqdlNFVmk1ejNJdGhYMzU3c0h1Y1k1YkpWc3VsL1RMQk9peVVRSDJOc2ZkcEVZTzlEaldzZ0FJSEpDU0N3VDQ2Y0RpRUFnUllDZmhYZXI2cjd0ZlQxNHRjbzd6UENnMkRiai95K3ljL2Fmdnh0VTNLcVhkNjhDT3pMWFgwRTl1V3V6YWFOYkJNRjlyMnJCS2MraUxiTnhIcHBzb0JKV1krelNucE5sVFRRVWVVcFpWMU0vMEFRMHgyaG1WSmlRdFNMZ3ZCb0N4eDcxOWNqZkg5YUpVTjBJbE5IeGRkTDJ6eGloL1lwNHk1UlowcXgyVzhPdkV6U3E2dmZVeWVXR0h6UE5xYWFzL2VmMyt6NDI1bm5tNExwOThQK3ZXaERaYy9EMGNmL250TFFodFFaVzJDL21LUWpJN1padGdyeS9hM0xYbW9venBqM3U5dDNGTDJmYi96N3NxUVZtcjhUM2xnOVV6bEhSMWRaM1Y5amg2NURXWlM0SG9HOUJFWGFnQUFFUmllQXdENDZZanFBQUFRV1NnQ0JmYUVMczlCaEliQ2ZlV0VjNFZvWDllWllQaC9PdmJ5eWl0aTNvWE5IN3RyTGUrcEl6U1lPdGlaSUZSN240RWlmMGlZSzdFNkM2b05vKzZWYnNIbEY4REp2czRCSldlZTJoSXNybXhkYklMdzNVMHl2OSt1bzlMZUZjVGVOYVYwRWMwSlZXOXZjdnFHaTIzQWthTjM2NDl5UzNsRjVyVis3ZHMycmdnOTNTVUVyaFdtOVRtbXgyUWw0VDVIMG55RlJxZmZFOFpWOTBKY1QzbHJvTS80KzE1U2VzOGZnZVg5Ymt0K1VPQ1ljTm4ybHNHRFpaNjZwMTNSWk12bWd5OTlmdGtuYWxqS213SjRpcm4rKzJpczNrdVE5TW1ieEFaL2ZUSGhnUWlmUERBbStoOW9YV2RjeFh4K2tOYjBSdEQ2VVRSTFhQVzRmUVBrejdyY1Q2cVZ2WUZUQzBsQUZBaENBUUI0QkJQWThYdFNHQUFTMmg4QVlEM3BqMDNFRTJqM0g3b1QyR3drZ3NKOFpTeHNUdGxBekFUNi95OThabXlpd1c4ZzVPSGlLdjF2UzZRVXdXOHh3cExlTExReHNMV094dHMzbUpiZEwyeGRZL042cjVjSW1FZXltNFpxbVp4ZUxrRDVZV0M4VzIzekFWbzhNUGlUWTVlU09tZm9RS0UzQWZ0Myt6TzdUMEhCS2pvSFM0NW1pdmJFRTloUkxGQjl3T3pIeXg2ZVlhSlhyd29mL1RyTHN4THF4OHRIcWNPd3U0VUFzVnJmcDd6NkV0SmU2Y3lyRWl0OFdmdGhDOHhHMGpmMDJrdDRncWVuKzc4VG96NGhObXI5REFBSVFtSUlBQXZzVWxPa0RBaEJZSWdFRTlpV3V5bkxITkpiQTdzanE3MDg4N1QzMDYwaGQvM3U5NUhvVEk3RG5MUndDZXg2dk9XcHZvc0ErQjZjaGZjYkU5VFlSekcvTDJQckJBbG05MkU5OXYwcklPbUh0RDQ1Y3QyV05EeURXaTYwYjNqUmtBbHdMZ1VJRXVnNk5uQVRZZTMxTUc1TkMwOGhxWmd5QlBjVVNaV3pQOHpZSVBrU3hYY3NORWlqWnFzVVI3LzV0OVl1RStxc3FGNmdPRWgyUmJoRTZWaXo0SDdpZ3QxcGk0L1hmWTk4WnR3cUpaVlBhb2c0RUlBQ0JVUWtnc0krS2w4WWhBSUVGRTBCZ1gvRGlMSEJvWXduc1M1b3FBdnU0cTRIQVBpN2ZFcTBqc0plZzJONUd6QmJHRmpTMmU3RWcxVlJzN2VCbyt2cmhvT3ZXZlpVUGEwaU1hZ3VHL1NWOVl0eHAwam9Fb2dSODhHTnJNOXN4TlJWSEdEODMyc3JtVlNncHNLZGFvc1R1SzJOVFRMR3VXUitENzArT2VyZmRVNnlrSEM2czJuREMzTU5uRXRkOVgzZVUrWDlKT2k0Y0hQa3cxY213VnhaSW42c2k2NyszTm1GN3lEdXEvLzRkZG9UYzAyTTdoTDlEQUFLVEVrQmdueFEzblVFQUFnc2lnTUMrb01YWWdLRWdzSjk1a1loZ3o5dTRDT3g1dk9hb2pjQStIdldyU25wTEpQSGVvNElJMCthUEh2TTEvcVNrKzBwYVJZMDZUOFI2K1ZySTFYRFNlTk9rWlFna0ViaHlTRzVhMzZPKzJQdlV5VTIvbE5UU1psVXFKYkNuV3FKWVhMZEkrN3FaZmZselJQWVVuM2pQL3lCSmY5MXk0TGkrSzh6ZzRaS2VOeU9EcTRUOTd0d1lKY3Rud3FIcGQwczJTbHNRZ0FBRStoSkFZTzlManVzZ0FJRk5KNERBdnVrck9PMzRFZGpQekJ1QlBXOFBJckRuOFpxak5nTDdPTlJ2S09uMWtwckV4RldQOWc5K2FvSUE1Q1IzVHJEYTV0L2VOUVA3dnRzaXBvUlAvVGlrYUhWWENEUzlZYkdhdTRWUVI3RFBuWWgzakxVb0liQmZKT1JjaU5tdUxFVmNYM0gwdUMzMCsvQ2tyVmhjdjNuTjdxcGU5MUtTbkt6NUdna0xOSmMxVG4xb2U0YThIbGRNR0hOT0ZVZmwrN05FZ1FBRUlMQUlBZ2pzaTFnR0JnRUJDTXhBb08xSC9oTWxQWCtHOGFSMDZWY2gvVW9sWlhvQ0NPeG5abjZmbHVSczA2L09adlJvVDEwbkY2TXNsd0FDZTltMThYT0dFM043M3pmWnVxeDZ5N1V1c09ldS9kaTcybXlheVdNcnE0R25sSjBpclVFZ204Q0ZKUjB0NmZJTlYvNjArdHQxSy85MUo3M2N4akpVWUQ5YmlNVDJteXBkeFg3bXR0OVpXcjRGKzZXL1d0S05Hd1lmUzhKNmxpclI5RU1rUGEyeWVuRUVlNnpZY3NXKzdKK05WWnpnNzJjUDFsOCtQQ2hWbW5KdmxHcWJkaUFBQVFqMElvREEzZ3NiRjBFQUFsdEFvTzFIUGcvZ1c3QzRJMHhoTElIZFVVZ1dpcVlzZnRBNXRIckl1MXl0MDF3UDlpbkhURjhRbUlJQUFudFp5aFozMnZ6VVZ6M2xpdXUrenM4dmp3aENVK3FJTFY0NWN2VGZVeStnSGdSR0ltRGgxeUpyVTNtM3BBTWtPYUJpRzh0UWdkMU16aVhKeVRydFU5NVUvRm0vdmFTakZnclFDWnZ0aFc2TGwxVko4WWxQUGJCMG0zNWp5QWxUdjc4Z0JzOE9iMmFVR0ZJS3J4TDkwQVlFSUFDQkxBSUk3Rm00cUF3QkNHd1JBUVQyTFZyTUNhWXlsc0EreDRIT2IwdDZXL0N0WEVlSHdEN0JScUtMUlJOQVlDKzdQSDdPdUdPSVlEOW5ROU45eFBWVk03a2krN09Db0xXTnRodGxWNDNXeGlUZ1BBS3ZDVlpGVGYzY09meDl6REhNMlhZSmdkM2pkNTRGYzd4cGJUSW5Wb2t6L1lhTDh6RXN1ZFNqMFZNdHNqeW5Xd1NybWFaN3FpUDNuY3ZDTmtPL1dCaUFCNFNEa2FIRCtwR2t1MHA2KzViYUtBM2x3L1VRZ01DTUJCRFlaNFJQMXhDQXdLd0VFTmhueGI5eG5TT3diOXlTTVdBSVpCTkFZTTlHbG5UQkZZSlZ3N29saGdXbHB3OFVnV0lDL21wdzd3dUM1ZytUUmtzbENJeEhvQ3U1cVMwOWJBL3pyZkc2bjczbFVnSzdKN0pLWnJ6eVl2K2dwRHRVa2R2Zm5IMlc2UVBZT3h3U1BGbVN4ZkhVMHBUWHdvY0tGcDZkK0hPSlpXanVxNjhFQzArL3ZXQ1JuUUlCQ0VCZ2NRUVEyQmUzSkF3SUFoQ1lpQUFDKzBTZ3Q2UWJCUFl0V1VpbUFZRU9BZ2pzNDIwUGV3Ky9xSW9zL1JOSnp0L2dlMnFwYUhLdm0yMnZiSWxROTJWL2pxVEhTVHAxdktuUk1nU1NDWFFsTi9WZVBUQzVwYzJzV0ZKZ053RW5QWDVYSlZJZksrbWhPL1k1WDQ5a3R5LzdYeXpjV3NpKzhmNGV5TTJkNFVqODd3MDhqTjNNVHd1amhnQUVObzRBQXZ2R0xSa0RoZ0FFQ2hHd0QvWDVHOXI2Y2ZWNjVTbUYrcUNaN1NGd3ZpbzVubjB6NitWa1NhY25USE5KKzgzZi9YN0ljYkt3OWNKRFRNSkNVbVdyQ2ZoemJ0c21mejdXaTMxc0hXRklrdWxoeSs5NzZJVWtPUkp4akdJQjUxS1YvL0NWSkgyOVN2RDNyNG4zNXpIR1Fwc1FnTUNaQ1Z4VjBvTWJ3SHhla2c4WVVuNVAxUy8zYnhsSGY1YzZzTnVrZGJ1V0pQOE9YV3JVK2lheFpLd1FnQUFFQmhOQVlCK01rQVlnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUJnRndrZ3NPL2lxak5uQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRR0V3QWdYMHdRaHFBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCWFNTQXdMNkxxODZjSVFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBWURBQkJQYkJDR2tBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFZHBFQUF2c3VyanB6aGdBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ2NFRUVOZ0hJNlFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRMkVVQ0NPeTd1T3JNR1FJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkFZVFFHQWZqSkFHSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBWUJjSklMRHY0cW96WndoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUJoTUFJRjlNRUlhZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ1Ywa2dNQytpNnZPbkNFQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUdBd0FRVDJ3UWhwQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkhhUkFBTDdMcTQ2YzRZQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUlIQkJCRFlCeU9rQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRU5oRkFnanN1N2pxekJrQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRR0UwQmdINHlRQmlBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUdBWENTQ3c3K0txTTJjSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhBWVRBQ0JmVEJDR29BQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUlGZEpJREF2b3VyenB3aEFBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VCZ01BRUU5c0VJYVFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFSMmtRQUMreTZ1T25PR0FBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFDQndRUVEyQWNqcEFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhEWVJRSUk3THU0NnN3WkFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUJoTkFZQitNa0FZZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VCZ0Z3bjgvdzhkQ1Z0ZlZya01BQUFBQUVsRlRrU3VRbUNDIi8+PC9zd2l0Y2g+PC9nPjwvZz48L2c+PGcgZGF0YS1jZWxsLWlkPSJwMyI+PGc+PHJlY3QgeD0iMTA5MyIgeT0iNzEzIiB3aWR0aD0iNDAwIiBoZWlnaHQ9IjEwMCIgZmlsbD0iI2VhZjJmOCIgc3Ryb2tlPSIjMzM1NTZmIiBzdHJva2Utd2lkdGg9IjIiIHBvaW50ZXItZXZlbnRzPSJhbGwiIHN0eWxlPSJmaWxsOiBsaWdodC1kYXJrKHJnYigyMzQsIDI0MiwgMjQ4KSwgcmdiKDI0LCAzMSwgMzYpKTsgc3Ryb2tlOiBsaWdodC1kYXJrKHJnYig1MSwgODUsIDExMSksIHJnYigxNDQsIDE3MywgMTk1KSk7Ii8+PC9nPjxnPjxnPjxzd2l0Y2g+PGZvcmVpZ25PYmplY3Qgc3R5bGU9Im92ZXJmbG93OiB2aXNpYmxlOyB0ZXh0LWFsaWduOiBsZWZ0OyIgcG9pbnRlci1ldmVudHM9Im5vbmUiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHJlcXVpcmVkRmVhdHVyZXM9Imh0dHA6Ly93d3cudzMub3JnL1RSL1NWRzExL2ZlYXR1cmUjRXh0ZW5zaWJpbGl0eSI+PGRpdiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiB1bnNhZmUgY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IHVuc2FmZSBjZW50ZXI7IHdpZHRoOiAzNzRweDsgaGVpZ2h0OiAxcHg7IHBhZGRpbmctdG9wOiA3NjNweDsgbWFyZ2luLWxlZnQ6IDExMDZweDsiPjxkaXYgc3R5bGU9ImJveC1zaXppbmc6IGJvcmRlci1ib3g7IGZvbnQtc2l6ZTogMDsgdGV4dC1hbGlnbjogY2VudGVyOyBjb2xvcjogIzAwMDAwMDsgIj48ZGl2IHN0eWxlPSJkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGZvbnQtc2l6ZTogMjBweDsgZm9udC1mYW1pbHk6ICZxdW90O01pY3Jvc29mdCBZYUhlaSZxdW90OzsgY29sb3I6IGxpZ2h0LWRhcmsoIzAwMDAwMCwgI2ZmZmZmZik7IGxpbmUtaGVpZ2h0OiAxLjI7IHBvaW50ZXItZXZlbnRzOiBhbGw7IHdoaXRlLXNwYWNlOiBub3JtYWw7IHdvcmQtd3JhcDogbm9ybWFsOyAiPlBTVTEx4oCTUFNVMTU8YnIgLz41IOWPsCDDlyA4IOmAmumBkyA9IDQwIOeptOS9jTwvZGl2PjwvZGl2PjwvZGl2PjwvZm9yZWlnbk9iamVjdD48aW1hZ2UgeD0iMTEwNiIgeT0iNzM5LjUiIHdpZHRoPSIzNzQiIGhlaWdodD0iNTMiIHhsaW5rOmhyZWY9ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFCZGdBQUFEVUNBWUFBQUNQdFVIVUFBQUFBWE5TUjBJQXJzNGM2UUFBSUFCSlJFRlVlRjd0dlFmNFJVVjFydjlkakwxaGllVUsyQXRvYmt5Q1hSRUZ1OUZnUnlYeTJDdkdGaFZMYkZoaXIyRDlHOFdDaldzRHNTRDJia3lNWFZHaS9oRkZFUUVybUxzL25TUEh3OTU3WnBmWjdienpQQVREYjhxYWQyYnZjODQzYTliNlg2SkFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0RRbU1EL2F0eUNCaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0FpQm5VMEFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFR2hCQUlHOUJUU2FRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFRMk5rREVJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FJRVdCQkRZVzBDakNRUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFnWjA5QUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhCb1FRQ0J2UVUwbWtBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUVOalpBeENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUNCRmdRUTJGdEFvd2tFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUlHZFBRQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFhRUVBZ2IwRk5KcEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQkRZMlFNUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdSWUVFTmhiUUtNSkJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQ0JuVDBBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUdoQkFJRzlCVFNhUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRUTJOa0RFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBSUVXQkJEWVcwQ2pDUVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBZ1owOUFBRUlRQUFDRUlEQTJBVE9MdWxpa3E0cTZRTGhmMTk5emFndlNmcHgrUC8vVzlMM0paMGs2ZGRqRzg3NHVveWtWMHE2Y21CeFQwa2ZuQW1YT2RzK0U4U3pOUE44a2k0WjNrZC9JZW12d3YvdnlmaWQ4eGxKdjVGMHVxU3ZTRHBaMGs4bG5USEwyUzdMYUo3cFphMG5zNEVBQkNBQUFRak1oZ0FDKzJ5V0NrTWhBQUVJUUdBTENGaFVmbUFQODF3WGdYNGg2YXVTVHB5UUlIMHVTWHRLdWtzaFZ0MGlDT3B0cG4yYXBFOFg0dTZiSkwxSDBnbHRPcEgrSUJJL1ROSzVLOXBiVUh0MXk3NjdOSXZ0aDhNbEhkbGxnQTV0L1IxeWIwbHZsSFRSdFg1dUkrbmRIZm9kb3VtY2JSK0N6MnFNZXhYNzYxbzlESGk4cEMrSGZueEE5cjJKQ2RJWGwzUnJTZnRLMmtPU0QvemFsUDlmMGdja3ZibDR2eDNUNFgzTCs2ZzUvYkdmYVgrbVBVVFNGWnViM3JyRm1PLy8xa2JURUFJUWdBQUVJTEJVQWdqc1MxMVo1Z1VCQ0VBQUFuTWs4UGVTM3BYUmNIdUJXNUR0S2dDMU5kRmV6Z2RLdXJ1a0hkcDJVdFB1YzBIa3NDRGVwUHlkcEk5S09rOUZvOWRKdWtlVERudXFHOXNQanlrT0JaN1YwMWhOdWptdnBHY0UxcHZ0cGk2d3o5bjJKbXZVUjkxL2svU1BmWFJVMFllOXY5OHA2VkJKM3h6WUEveHN4ZUhjelNYOWk2UnJaSmpqN3lXOUpyenZmdEt3Zjk1SHpZQk40Wm4yclFjZjh0NndtZW1kYW8vMS91OWtOSTBoQUFFSVFBQUNTeVdBd0w3VWxXVmVFSUFBQkNBd1J3SXhRYlhQT1ZrQWVxMmtweFhpOFhmNzdMaWtyNTBrdlVqU1BwbkhjZmR0UkFjRXJiU0Y4ZmZHRzBsNmhhVExWelNacXNBK1o5dlRWcWYvV3JrRjluV0xMVUlmSk9sVmtud3pKVmRKMlFkOWpmM0w0QkgvaFlZZDhqNUtBNWF5bGtPOWozeUw1eU9TZGtzenZaZGFiVDdyZWhtWVRpQUFBUWhBQUFJUU9Dc0JCSFoyQlFRZ0FBRUlRR0E2QklZVTJOZG4vUkpKajVQa2NESjlGb2RjOGJWNWkvaHR3eTQwdGFlTjZJQ2dGYWVjZWtneWxLQVZ0L2pNR25PMnZjazgrNjQ3cE1DK3N0M3ZvUHNYUXVWYk1uaTBwKzZEdmpnaXNQZEY4cXo5cEs3bFVPOGp4K3gzdUxKZDhrMzVMRDIzK2F3YjBEeUdnZ0FFSUFBQkNHd1hBUVQyN1Zwdlpnc0JDRUFBQXRNbU1KYkFiaXBPSExwZjhNTHJnOUlsUXVpSHZmcm9yRUVmYlVRSEJQWnF3RTQ2YTgvaUJ5ZXV3VkNDVm9vNWM3WTlaWDY1NjR3aHNLL201RkJaOXl2RTloLzFOTWtiU3pwc0kxOUFUMTFYZG9QQTNqL2hxVDdURnZ3dHNGK3EveWxYOXRqbXMyNUE4eGdLQWhDQUFBUWdzRjBFRU5pM2E3MlpMUVFnQUFFSVRKdkFtQUs3eVRoc2pCTWJXbGo3bnc2b0xsM0VOWDZ2cEt0MjZLTnQwemFpQXdMN1dXbGJ5SHFDcEljMnZIMHdCWUY5enJhMzNmYzUybzBwc0hzK3g0YmtvMS9yT0xuYmhid1RROTJpV1ptTHdONXg0ZGFhVC8yWmpuMkc5RWZpeko3YWZOYmxzSU0rSVFBQkNFQUFBaENRaE1ET05vQUFCQ0FBQVFoTWg4RFlBdnRLWkwrVHBMZTN4SExCMExhSjU3cUZmU2M4ZEpKU3h5dDJNdGIxOGxkRmJHWjdDRnJFY0l6Yk9xR3NqZWdRRTBlMktjbnB6aUdPdmNOMHRFbEVPNmJBUG1mYld6NXVXWnVOTGJCN2N0K1NkQk5KeDdXYzZUVWxIU1ZweHdidEhRUGUzc2hmbGVTRXliOVphM3ZPSWxIMHRTUmRYTksxSXlGQkVOZ2JRSytvT3Bkbk92WVowcDNFV1h0bzgxbVh3dzc2aEFBRUlBQUJDRUFBZ1owOUFBRUlRQUFDRUpnVWdaakEva1pKaHlkYWJGSDZyME9TdlFzbHRsbFYrN21rbTBuNmJNTjJGcjVmS3VrK2llM2VGK0t6ZTV6ZkpiWnh0WXRJY3NpSCswcmFlNk5kRzlFaEpvNHNYV0QzdWpsNTZjTUtZZkhtRGRhaHJPclFBdnVjYmUrSU9udnpPb0g5ZEVtUEw4SktmU2ZCaXBVb2JiSDdieHZlaUhEM0g1SjArMkovbnB3dzFub1YzNlQ1Z0tRckpyVDdWU0dhSDF5OFcxNGN4UHpVR3p4bks1SkZYeWJZNS9mUmV2SmZCUFlFOENWVjV2aE0xMzEydjAzU0FlMVExTFk2UmRLcEdmcWxTd2hBQUFJUWdBQUVXaERBZzcwRk5KcEFBQUlRZ0FBRU1oR0lDZXh0eEdPYmFxL3lmWUlndGk0QTFVM2pZNFUzdWUxcEltclowOVNpZWN6ejJZS1pSZmp2OXNEUll2c0RKQjBveVVsVjJ6RGFSb0hkSXBibjdUalhkMnNoZWxZdDNSQUMrNXh0NzJITEQ5WkZuY0RlVmp6MmJ3OEwzMDUrN09mV3oyeEs4ZlA5ekFhaHF6ek84ME9JbzFqL1Q1TDBIRW4yWE85U1BPYXU0ZERRNzl1MmpIZ2Y5WmNVZTRqM2tmZE0zV2UzRTRnL3ZjdkdvaTBFSUFBQkNFQUFBdE1uZ01BKy9UWENRZ2hBQUFJUTJCNEN1UVQyRlVGN1d6cjh5eUdTSE5NMlZpeUF1VzVLc1ZCbTczcDd2dGVWSjRla21VMDgxbFBHWHlXLys1Nms1NlkwV0t1empZSldiTTVWQ045UmhNMjRSWTB3T29TZ05XZmJHMjdOVWF2bkVOalhKOVFrWWVXSmt2WU1vYVJTb0Z4TmtnOEo2MExEK0tiT0hTVjlNS1hEaG5VY3l1b0ZSWGlaeDRhd1YwMmF4L2IzRW0vVXhPWTg1ZmVSYlh0NHplZE9tMFBmSnZ1RnVoQ0FBQVFnQUFFSVRJQUFBdnNFRmdFVElBQUJDRUFBQW9GQWJvRjlCZG9oRGQ0cWFmY0llY2RGZHlpV3paam9aYzJ1VXdoZ3h4U2VldWVvNmZPVmtoN1VNQnhNMDgzeEY0V252c05YTkNreGNRZEJTL3BGOEhUL1VSRk81aU9TemxNQmVJb0MrNVJzYjdJdng2NmJXMkQzL1B4YnhPKzlOOVhzcVJXSEY0WXdSaW5oVyt5Vi9pODFBSjMzb1V1dWlaUzE4ZHg4bStlTWxNcHJkWGdmeFlGTjdabCtkTGhoVVdhNTgxbThQRDRsYWtBQUFoQ0FBQVFnTUdjQ0NPeHpYajFzaHdBRUlBQ0JwUkVZU21BM3Q1VDR4QmF5YmhuQ3ZzUllIeFRDdEZUViszcndRRDBoMXRFSWYwZlFxb2Z1bXdrUGxHUnhQY1pxYWdMNzFHd2ZZWHUzSG5JSWdYMWxuR09zdnlVU1hpcjFIZUtjRSsrUEhDQTZWNFREMUtTSTlhMEJ0bXdZZThhMi9jQnZpczkwM2VmZkVPL0VsbHVOWmhDQUFBUWdBQUVJOUVVQWdiMHZrdlFEQVFoQUFBSVE2RTVnU0lIZDF2cUh2OFdLdXBqcFR2b1hTOUIyWGtudkxFSXk3RldEd0tGaDdGVTZ4WUtnVmI0cVh3b3hyQjFxWXlWRXhsZ05JU2JGYlBCc3BtcjdGUGQvbFUxREN1eStlZUozamIxOXE0cjM0RTBUUXJvNHViUDM3UGtyT3ZwdE9PejcxRVFYSTdhL3QxVmduL0l6WGZlcytKRDZ5SW51TmN5Q0FBUWdBQUVJUUtBbkFnanNQWUdrR3doQUFBSVFnRUFQQklZVzJGUGlwbjgraUZvbjFjenY0a1dkVDBxNlhFVWRoMnk1a2FTUDk4QW9SeGNJV245TzlUdVNIbEY0QUwrbkpMeEZqTlhZQXZ2VWJjK3hmM1AxT2FUQTdqbWt4RTEzc2tnbmphd3J6aEZ3UkUyRmxIZGFMcVlwL2NhZXNXMFQyS2YrVFB2MzlLR1M3bHF5dUcwVDNhYnNFK3BBQUFJUWdBQUVJREFoQWdqc0Uxb01USUVBQkNBQWdhMG5NTFRBYnVCM0MrSkFGZnlmRlI2ajE1ZjB0WnJWc2JEK2lTSWg2aVVxNmt4ZFpFRFErdVBDZlU2U0UvSTV4bnBWM09nWXE3RUU5cm5ZUHFlWDNOQUN1NzNZM3l6SjRXS3Fpb1Z6Ly8zWE5YVmk3elR2NzF0TE9uV2lpeEY3eHJaRllKL0xNMzIrY0JoNVF3VDJpVDVSbUFVQkNFQUFBaEFZZ0FBQyt3Q1FHUUlDRUlBQUJDQ1FTR0FNZ1gzWDRGbCs0UW9iVThJeXhBUWhCUGJFRGJCUkxlZCtXSzJadzJXOFJ0SUxKSDAvd2N6WVdnOHBzTS9SOWdURWs2a3l0TUR1aWQrdk9LZzdwSWJBVnlWWnlEeXhwazVkd2trM1EyQnZ0OFY0SDVWenF4UFlmMWprTUxtMnBCKzBRMDRyQ0VBQUFoQ0FBQVRtUWdDQmZTNHJoWjBRZ0FBRUlMQU5CSElLR0ZYOExob0VwOTFxQU1kRTA1am9pc0RlYnZmbTNBOFhrT1IvTEFBMVNmUVlXK3ZZWG1sSDRzOWJ6ZG4yUHVZL1ZCOWpDT3g3aHdTbFZiOVIvanNJbHNjanNBKzFEZjQwRHUramN1UjFJZEpTOXV2Z0M4bUFFSUFBQkNBQUFRajBUd0NCdlgrbTlBZ0JDRUFBQWhCb1N5Q25nRkZsVTUzMzNhcU40M0UvcjJaU2w1VDA2Y0lUZXBlYU9nN3I4STYyWURLM2k0bkdTd3pKMEJacGpOVVFBdnMyMnQ1MnpsM2FqU0d3eC9iWEtaSnVJT2svYWlZV2U0OU8zYXM0eG9EMzBabUxIMk0xeFB1bzd2TnY2dkgrdTd3ZmFBc0JDRUFBQWhDQXdCb0JCSGEyQXdRZ0FBRUlRR0E2QkdMQ2tPTmpQNnRuYzFQaUhzZkd2VkR3T3QyOXhqYkhWdDVQa2hPZVRxM0VSQm9FcldrSldtMzNUMnlkaHhEajJ0bytScnN4QlBZKzhqazRaOFNISmZuZFZsWDJEZkhleCtBYUd6TzJUM2tmVGV0OVZCZG1iZXJoaUdKN2tiOURBQUlRZ0FBRUlKQklBSUU5RVJUVklBQUJDRUFBQWdNUUdFTmdUL0Znanducy9qNXhxS1M3MWpCeW1KZ2JTL3JNQUJ5YkRvR2dsVTRzeG1yS0l2V2NiVTlmb2Y1cWppR3d4OVlvSmR6VVR1Rkd6YVZxVUh4TWt0KzNKL2VIcTdlZVlnd1EyS2Nsc05ldDE0Y2szVmJTYWIzdERqcUNBQVFnQUFFSVFHQ1NCQkRZSjdrc0dBVUJDRUFBQWx0S1lLb0NlMHA0bDFoeVFpK3B2VXJ2SU9sbkUxdGZCSzMwQllteFFtQlBaem4xbWxNVTJGUEN1NXhMMHRzbDNUSUMrRUJKL3lycGpJa3RST3daUTJDZmxzQitqWkRINU53bCsyaXN0WnJZbHNZY0NFQUFBaENBd1BJSklMQXZmNDJaSVFRZ0FBRUl6SWZBR0FKN1NwSlRDMVZIUmpCZVZwSzlRdXU4UnQyRjY5eEowbzhtdEN3SVd1bUxFV09Gd0o3T2N1bzF4eERZWTBsT2p5M0NVVjFYMGdrUmVIZVI5S1lFd0UrV2RKQ2szeVhVSGFwSzdCa2JTN1FkNC9NcHhqekdhb2ozVVIyWHNkWXF4bzIvUXdBQ0VJQUFCQ0RRTXdFRTlwNkIwaDBFSUFBQkNFQ2dBNEV4Qkl5NitMR2VTa3BTUWRmemQ0cm5TM3Bvd3Z4UERPRmtQaWpwZnhMcTU2NFNFMm5HRWtuRzJBOHgxakZXUXdoYU1SdXIvajVuMjl2T3VVdTdNUVQyMkUyWTFKQWJGNU4wdEtTckpnQnduL3RMK2tGQzNTR3F4UFlwNzZNelZ5SEdhb2ozVWQxN09oWmViWWo5eEJnUWdBQUVJQUFCQ0F4QUFJRjlBTWdNQVFFSVFBQUNFRWdrTUlhZ2VyY1FQNzNLeEs4V29WMXVLTW1pZUt4Y29ZaXovbEZKbDR4VkRIOC9XSklGaUY4azFzOVZMU2JTSUdoTlM5QnF1dzlpNnp5RUdOZlc5akhhRFMyd3B5UmNmbkVSWXVxQVJCaDNsL1Q2eExxTzdYNGZTWWROSUdSTWJKL3lQcHJXKytqUmtwNVpzYzhRMkJNZlFLcEJBQUlRZ0FBRTVrNEFnWDN1SzRqOUVJQUFCQ0N3SkFKREMrd1d0Q3hBT1p4Q1ZYbXpwUDBrblo0SStzNGhORVBxZHd5TDZ3OExiWDZWT0ViZjFSQzAwb25HV0UxWnBKNno3ZWtyMUYvTm9RWDJsREJUKzByeU95bWxuRjNTSzRKM2VrcDkxL21jcEljVThkcy9PK0x0bXRnK1JXQS9jelZqcklaNEg5VUo3QjhKNFl4MkwwSVJlVCtXbFc4V1lkTjhrUDNKc1ArK040RkRudFRuaFhvUWdBQUVJQUFCQ0FRQ3FUOStBUVlCQ0VBQUFoQ0FRSDRDUXd2c041RGtNQzNucUpsYUUwSEwzVmhFZUVZUld1WVJEWEY5SjdSNXp3amlRa3lrUWRDYWxxRFZjR3Y5cVhwc25ZY1E0OXJhUGthN0lRVjIveVo1U25HUTkvaWFpVHJCcWQ5WjMyMEFZeWRKaDB1eXdObWt2RXZTUDB2NlJwTkdQZFdON1ZQZVI5TjZINzBvSE1yMHRQejZ2YVQzRlovTFR3OEhQVlBLRDlEWEhPa0hBaENBQUFRZ3NEZ0NDT3lMVzFJbUJBRUlRQUFDTXlZd3BNQitRVWx2TDVLTzd0V3pvT1h1Mm9yc2J2dWxJTFRiOCsrTWdkWVNRU3NkZEl6VmxFWHFPZHVldmtMOTFSeFNZTCttcEtNazdWaGpmdFBiTkt1dTJvcnNidi9hSVB3M0VmVzdya0JzbnlLd1QwdGdyM3RPdXU2Rm40UXdhazdZTzlZTnI2NXpvRDBFSUFBQkNFQmdLd2dnc0cvRk1qTkpDRUFBQWhDWUNZR2hCSFlMNEM4Tk1ZZnIwRHk1K09PVFdySTdXeEczL2NHU25sY0lWRHUwNkdOSW9SMUJLMzJCWXF3UTJOTlpUcjNtVUFMN3BTVjlRTklWYTREOFZ0S2VrajdWRXRxRkpiMVMwdTFhdGg5U2FJODlZd2pzMHhIWVUvSUd0Tnh5ZjliTU43enVKY2tIenhRSVFBQUNFSUFBQkNaSUFJRjlnb3VDU1JDQUFBUWdzTFVFaGhEWXp5dnBKUWx4aWI5ZEpDeTljZkdqL3ZzZFY4TUpVaDNuZmVlVy9WaG9mMmpoYWYreGpER1JFYlRTRnlmR0NvRTluZVhVYXc0aHNPOHE2UjFGWFBXclJHQzhXdEw5RytTQ0tPdk9CNHZPOStBUVZtME8vZHluaGZZblNQcEJ4c1dMUFdNSTdOTVIyTTlYaEI5eVdETi96ZzFSdlBlZUpZbXdNVVBRWmd3SVFBQUNFSUJBQXdJSTdBMWdVUlVDRUlBQUJDQ1FtVUJPZ2QwZTVSYk1EeTRFNzh0SDV2RS9SZXhoeDE0L3JLZjVYa0RTTTR0a2J3L28wSitURCs0ZmtzRjE2S2EwS1lKV090RVlLd1QyZEpaVHI1bFRZUGRCbjVPSk91NTZWZkxIRlo5alF5Z3JKMy9zbyt4V2VNdS9RZExWTzNUbVE4ckhTWEtTNXI1TDdCbERZRCtUZUl4Vjd2ZlIrU1VkVWVReXVYN2ZtNkNtdjBNa0hZRElQaUJ4aG9JQUJDQUFBUWdrRUVCZ1Q0QkVGUWhBQUFJUWdNQkFCUG9XMlAwNWYwbEo3dmRSQ2NMNmFwb09wZkNnbm4vQTI1WWJTWHBGQXp2S3NPY1F0bUlpRFlMV2RBU3RMbzlpYkoxemkzRmRiQitqYmQ4Q3U0WDBLNFhRVlBjdFBISFBuVEFwSjN5OFU4Z1hrVkE5dVlySHRzRC90QVNCdjZwVGkrdjJxbjlMei9raVl2dVU5OUYwM2tmK2ZQMjBwRjJDU1NkSk9uVmp3M3hUa2crSmZNanR0WFc0b25NVllkcitNbm0zbnJVaUluc0hlRFNGQUFRZ0FBRUk1Q0NBd0o2REtuMUNBQUlRZ0FBRTJoR0lDZXhma1BURmhLN1BLZWxha2k3WFFqejZrS1RiRjZFVVRrNFlwMDBWaTJ3V3pGNVd4R2UzWjN1YlltSHJicExlMjFQWUdBU3Q5RldJc1pxeVNEMW4yOU5YcUwrYWRRSzdiN204c3ppSWN4TEdXTGxZNGVYckpLWVdJNXVXUjB0NmRrL1BlZG5ZRnluK28vTk1PRjlFMitLNDhIY3RidGowNVdFZjI2Y0k3R2V1Vkl4Vjd2ZVJSWE4vanYyOHhSNWRIWUQ3WnRrOUpPM2RZQVAyZmN1c3dkQlVoUUFFSUFBQkNFQ2dqQUFDTy9zQ0FoQ0FBQVFnTUIwQ01ZRTl0NlVmbG5TSDR2cjV6M0lQVklobURoRmhMM21MV3ltZXJHVW1PUjZ5aGJIVE90b2JFMmtRdEtZamFIVlo2dGc2NXhianV0ZytSdHM2Z1gwSWV3NlU5Szg5ZTRkWDJYM1pFTnY2amkwbjVwalk5dzc1Sml4K2RpbXhmY3I3YUJudm84MDk0c01lZnlZK1B2RmcvSGhKZTBoeXZoUUtCQ0FBQVFoQUFBSWpFMEJnSDNrQkdCNENFSUFBQkNDd1JtQk1nYjB2c2JycGd0cjd6L0ZrTGFhMUVkby9MOG1pV0JmdlVRU3Q5RldMc1pxeVNEMW4yOU5YcUwrYVl3bnNmWXJWVFdsY09TUkIzYWRwdzFELytTRTIrNjlhdG5lejJENUZZRittd0w2YTFVNUYrSmlYRnJmVi9DNk5sUmVHeEwxZEQzVmk0L0IzQ0VBQUFoQ0FBQVFpQkJEWTJTSVFnQUFFSUFDQjZSQVlRMkMzbVBYSThJUCtqQkZSV0dqL3B3YmVlK3VtZmorSUVWOXFhVCtDVmpxNEdLdHRGOWpIRXFYVFYvRE1tbzhKWHR0VmJjZVl5M2RDZ21Vbk5SNnpXR2kzOTN5S3lMbHA1OXVDTjN2Yk1GdXhad3lCL1V6aU1WWlRmaC9WN1crSFVudFJpUEZmVisrSGttNVFoSmo1N3BnUEMyTkRBQUlRZ0FBRUlDQWhzTE1MSUFBQkNFQUFBdE1oTUxUQWZuandIdi9CZEJEOElaN3RFeVE5TlBHYS9NcjBiMG02WmN2cjhqR1JCa0ZyR1lKV2JKMzdFT1BHRUtYYlByNVRFdGg5ME9mUUdDK1cxTVg3dXkyTHFuYTdTWHFCcEpzMDdQalZJWWxxbTduRTlpbnZvMlc4ajJKYnlpSzdQZG52RTZub1pMMU8vazJCQUFRZ0FBRUlRR0JFQWdqc0k4Sm5hQWhBQUFJUWdNQUdnYUVFZGd2ckZyTysxaUl4MjFDTDVtdnlUeTFDdit6ZllNQzJDVm9SdE5JaHgxajFJVktuVzlPczVoQzJJN0EzV3hNTDBFK1hkSEFoU1ArMFdkUEJhdnYza3IyRUhZN2o2ZzFHYlp1Z05iWlBFZGkzUTJEM0xQMDUrQUZKVjZuWmQwZUV4T1MvYnJBM3FRb0JDRUFBQWhDQVFNOEVFTmg3QmtwM0VJQUFCQ0FBZ1E0RWNnbnNUZ0w2UGttSFNmS1A4YTVKUVR0TXNYRlRlNUE2UHZ3MUVsdTJpVW1Mb0pVSU55RStOQUs3OUkvcE9FZXRPWllIKzNHUzNpbnBqWktjUTJITTBGUk5GdUJza3U0azZSRHBEemR0WXVYM2ttNGVCTkpZM2ZXLzh6NUtweFZqTmVYM1Vlb3M3eDZTNTFiVmQ1aVlheGRoaWFaMEV5MTFidFNEQUFRZ0FBRUlMSVlBQXZ0aWxwS0pRQUFDRUlEQUFnakVCSFlMVXZZK1R5a25GckdNdjFHRVdqbEowdHc5MjN4VjN0Nmc5bWlQbGQ5SzJsdlN4MklWMS81K3lVSUkrN1NrWFNyYXZGM1NYUXF2LzlNYjlObEgxZGgraUFta2ZkaXcyY2VjQmEwaGJOOFdEM1kvQzc0RjQ1anBLZVhya240Y3ZOVG5JcWhYemVzU2tnNHQzakY3SlV6Y3NlUnYwZEE3bi9kUkF0aFFaWWhuT3QyYVBEVXZMdW1ZR2k5MjN3SzVvYVN4OHhia21UMjlRZ0FDRUlBQUJHWkNBSUY5Smd1Rm1SQ0FBQVFnc0JVRXBpaW9UZ1c4djdQY1FkSWJFbUt6djdrUS92WnJJSWpIQksyUEZKNjJ0eTZTd1o0Nk1Jellmcmk5cEhjTWJOT2NCYTBoYk44V2dmMlhrdmFROUlXQjk5OVVoanUzcE9kTHVsK0NRZnNXNHFqZlNhbUY5MUVxS1dtSVp6cmRtancxL2RuM21raTR0Q1Y0NnVlaFI2OFFnQUFFSUFDQmdRZ2dzQThFbW1FZ0FBRUlRQUFDQ1FSaWd1b1lIc3NKWmc5YXhhTHlXeVR0VURQcXowUE01UDlLdEN3bWFIMDhKRkE5SmJHL3ZxbzlYTkp6YXpvYlExU1pzNkExWjl2NzJsTk4rcWs3TE5oMmdkMGNVNU5RSGlWcG53YkpXM2tmcGUvU2JYbW1ZNThGanlqQ0ZqMHZIUnMxSVFBQkNFQUFBaERvbXdBQ2U5OUU2UThDRUlBQUJDRFFuZ0FDZTV5ZHY3czhKWVNucUt0OWYwa3ZqM2YzaHhvWGt2UitTYnRYMVAvdkVPUDIrTVQrK3FwMllDSGlIVlRSMlZoaEFlWXNhTTNaOXI3MlZKTitFTmpqdEM0aTZjaElqb2lmU2JwK1NDb2Q3NUgzVVFxalZaMXRlYWI1YnRCa1YxQVhBaENBQUFRZ01BSUJCUFlSb0RNa0JDQUFBUWhBb0lJQVA2TFR0c2JPUlhpS280czR5RmVvcWQ0a2J2cjVDbkg5UFNHT2JWbVhZM25yMWdtY1RVVzdOTEx4V25NV3RPWnNlM3hsK3ErQndKN0c5SGFTM2lhcDduZVZFMVU2dkZWSzRYMlVRdW1QZGJibG1lYTdRZnFlb0NZRUlBQUJDRUJnRkFJSTdLTmdaMUFJUUFBQ0VJQkFLUUYrUktkdmpCY1ZpUU1mVWxPOWFWaVhXT3pzb2VPZG4xL1NFY0h6dFd5YXh4WmU5OWVWZEVJNnNsNXF6bG5RbXJQdHZTeGV3MDRRMk5PQVhWU1M4elRzVmxQOWNaS2VudGJkSDJyeFBrcUR0UzNQTk44TjB2WUR0U0FBQVFoQUFBS2pFVUJnSHcwOUEwTUFBaENBQUFUT1FvQWYwZW1id2w2ajlsS3ZLazNEdXRTRlkvRVlGc2Nza2cxVkxpZnBFNUl1VVRHZ3hYZUwvcjhleXFBd3pwd0ZyVG5iUHZBeS8yRTRCUFkwNnY0OWRhaWt1OVpVZjUya2U2UjE5NGRhdkkvU1lHM0xNeDM3YnRBa0pGb2FXV3BCQUFJUWdBQUVJTkNJQUFKN0kxeFVoZ0FFSUFBQkNHUWxFUHNSVFpMVE0vSEhoSldtQW51TS9XY2szVXpTeVZsM3dKbWRPNEhwTzJ2R0dscndYNWtTNHo1RzR0WFVKWm16N2FsejdMTWVBbnM2elVkTGVtYVBBanZ2b3pUMjIvSk14NUtjVHZtOW03YVMxSUlBQkNBQUFRak1uQUFDKzh3WEVQTWhBQUVJUUdCUkJHS2lDZ0o3UG9GOVYwa09LM1BoaWgzMVcwbDdGaUw3cHdiWWNmNSs5aHBKKzllTWRWdEo3eHJBbHMwaDVpeG96ZG4yRVpZYUQvWUcwUHNXMkhrZnBjSGZobWM2ZGtQaUZFazNrUFFmYWNpb0JRRUlRQUFDRUlCQURnSUk3RG1vMGljRUlBQUJDRUNnSFFFRTluUnVleGN4eU45ZmsxandxeUZwNlltSlhjWVNDN3FibDRhNDcvK1QyR2ZiYWs3ZStsRkpsNnpvNEVlU3JpZkpjZGlITG5NV3RPWnMrOURyN1BId1lFK25Ic3NKOFdKSkI2UjNKOTVIYWJDMjRabStWQWdYZHVrS0pFMC82OUxJVWdzQ0VJQUFCQ0FBZ1VZRUVOZ2I0YUl5QkNBQUFRaEFJQ3NCQlBaMHZQY3I0cE1mVWxQOVE1THM1WDFhZXBjNktNUStybXJ5UzBsN1NQcENnejZiVnZWM3M2ZEllbnhOUThlZXYwdFI1L1NtbmZkUWY4NkMxcHh0NzJIcEduZUJ3SjZHN0Z3aEg4UXRhNm8vUXRMejBycjdVeTNlUjNGZzIvQk0zMTNTNjJ0UXZGYlNQU1hsUHZpTnJ3WTFJQUFCQ0VBQUFsdE1BSUY5aXhlZnFVTUFBaENBd09RSXpGVmdQNCtrTXlUOVppQ2lmeUhwelNISlo5V1FUVDFHM2M5MWlqQXd4eFFKVGM5Uk00LzNTTHFUcEY5bG11dmZGQ0wrMFpKMnJPbC8zekQvVENiVWRqdG5RV3ZPdG8reDFuTVYyUDNzT0ZmQ1VJSmpMQ0d4N2JpcHBBODJYRVRlUjNGZ1MzK21MeFkrRDY0NjBjK0QrQXBSQXdJUWdBQUVJTEFsQkJEWXQyU2htU1lFSUFBQkNNeUN3RndGZG9zY1Q1WDB3Q0p1K1BjR0lIMnRJRHBZMks4cWJXS1VuMXZTNFNHWmFkMDBIRy81MlJrRXZBc0dUOWk5YWdiL2VvZ0ZmOElBbk11R21MT2dOV2ZieDFqdXVRcnM5aGEvaEtRblpqd0lXNjJIZjBzNU40YVREbGVWNDBKSXB4ODJYRVRlUjNGZ1MzNm16eDdDa3QxbndwOEg4UldpQmdRZ0FBRUlRR0JMQ0NDd2I4bENNMDBJUUFBQ0VKZ0ZnVGtMN0k0WmJrSEFvVTNzUFo3THd6dEZoTGFRNWFSdjMyMng2ZzY5OHFaSXU5OUxlbWdRUC9yeWt2VzhYaVhwRHBHeEh5THBKUzNtMVZlVE9RdGFjN2E5ci9WcjBzOWNCZlpWd3RIdlNMcHZrWXZod3hrT3cxWWNyMW5jZkRrcWN1UEV0MjMyYXhuU2lmZFIvWTRkODVuMjcyaC81am1VUUdtOEFBQWdBRWxFUVZRQmR0L0ZmVDlLMHJNaUhaUDR2Ry95OUFjQkNFQUFBaEJvU1FDQnZTVTRta0VBQWhDQUFBUXlFSmk3d0w3eUtQOUY4QjYxWU53a0Jub002WVdEK08xd0MzWGxoVVdJaUllMUZOVXNkRnN3czVkOHJCd2N2RmM5M3k3bE1wTGVLbW4zU0NkZktaS2Yzcmk0S2ZEakxvTjFiRHVtb05YUmRNM1o5cTV6YjlOKzdnTDdhczVma21TdjlvK0VVRlp0V0pTMWNRaVhkeFVIWGhldDZkQ0hjVGN2UE5nLzBISlEza2YxNE1aOHBwMkk5ckN3ci9vOFZMWm83ME1pM3dxcksxUDRQR2k1cldrR0FRaEFBQUlRV0I0QkJQYmxyU2t6Z2dBRUlBQ0IrUkpZaXNDK1dnR0xTMitUOUNKSm41WDB1NVpMWThIQmNjOWZWaVFLdkVDa2p4TkRDQldMRDIzTFRTUzlyMGcydWtOQ0J4YlhMZWJiNjcycDEvNUZKRDBvZVAxN2puWEZMUGNKZ2w2Q1dkbXFqQ2xvZFozVW5HM3ZPdmMyN1pjaXNLL20vaE5KcndnM1JSeTJwZTN0RXorM1Q1TDA0QVNvZmVSczRIMVVEWHJNWjlvQ3U5ZjNoc1Y3M0h2TDN1UnRQZ2ZXWjdkVHVCbDFtNFRQQTM4bU91RTFCUUlRZ0FBRUlBQ0JDUkJBWUovQUltQUNCQ0FBQVFoQUlCQlltc0MrdnJBV2lEOHZ5YUtkdzhrNFZ2dXBGU3Z2N3lkL0dieklieC9FZGNjalRpbVBsUFRjbElvMWRUeis4ME1ZbU5TdVZvY0pQbEQ0aktUalN3NFV6aVZwWjBuWGxYUjNTWHVuZGk2cGkxZCtnMkdpVmNjVXRLTEdSU3JNMmZhdWMyL1RmbWtDK3pvRDM2eXhPR3FCc3VwNVhkWDM0WmR2bWZqMmlCTU1XMUJOS1Q4UGJmNDlwVEx2bzFhVXhueW0xd1gybGZFK1pQVWh6c3NsZlRQeHhvUS9iM1lOQXIxRENhV1VReVE1WE5qcEtaV3BBd0VJUUFBQ0VJQkFmZ0lJN1BrWk13SUVJQUFCQ0VBZ2xjQ1NCZllxQmlkdENPMU9UaGp6NXE3cTY1WEJJN3l0cC94NnZ5bXgzbFBYdFdzOWkvYjNManpsVCs3YVVRL3R4eFMwdXBvL1o5dTd6cjFOK3lVTDdGVThmREMyRWkzL29oQktMOWtHWEJFaXl3ZHVmWG9ZOHo0cVg0Z3huK2t5Z1gzZHl0V2hza01UZmJGRURMK2NKSWM3MjZQaFo5NmhrdTdmYy9pMWx0dWNaaENBQUFRZ0FBRUlyQWdnc0xNWElBQUJDRUFBQXRNaHNJMENlMS8wYzRnT2p2bHVjZnRHZlJuWm9wOHBpZXMyZjB4QnF3VytQMnN5Wjl1N3pyMU4rMjBVMk50dzJteGpZZlZlNGJaTzJ6QTBaWGJ3UGpvcmxUR2Y2WmpBM3NkZTJ1eGphcDhIT2VaSW54Q0FBQVFnQUlGWkVrQmduK1d5WVRRRUlBQUJDQ3lVQUFKN3U0VjlncVJuZFlqeFhqZXFQVWVkclBVTzdVenIxTXBoYWg3WElyWjdwMEVqamNjVXRMck9hODYyZDUxN20vWUk3TTJwT1FmRW5RdXY1S09iTjAxcXdmdm96ekdOK1V3UExiQlA4Zk1nYWROU0NRSVFnQUFFSUxBTkJCRFl0MkdWbVNNRUlBQUJDTXlGd0Z3Rjlzc1huczN2RG5Ga2gyVDluZUFwNml2NE9jdlpRdWlaNXpTOHl0L1dKb3QwZDVYMHdRNkpHTnVPSFdzM3BxQVZzeTMyOXpuYkhwdGJqci9QVldDL2k2VFhEZlNzcm5NL1hOSURpL0FkUDhxeEdHdDk4ajQ2RThhWXovUlFBcnNUYWQ5TjBuc24rSG1RZWF2VFBRUWdBQUVJUUdBK0JCRFk1N05XV0FvQkNFQUFBc3NuTUZlQjNTdmpKS1IzTEdJUFAxR1NCZmVjNWI4THIrNUhod1NGZmNSYlQ3VjFKMGxQTFJLMDdwL2FvR0U5SjhoN1VwSGc5YVVUanE4N3BxRFZFT2RacXMvWjlxNXpiOU4rcmdLNzUrclk2VTU0L0lEd2Jtb3ovOVEySHdoamZYbGdBWlQzMGJnaHE1eTArc1VoUDBicVhtbFN6NThIVDVmMElra1cyU2tRZ0FBRUlBQUJDRXlZQUFMN2hCY0gweUFBQVFoQVlPc0l6RmxnWDErc2kwdTZ0YVI5V3lSd3ExcjBueGNlOG9jRjhmbXJrczRZY1hkY0pJanNGdS82T0V5d3A3cEZsUGRsQ25QVEo2bzVpOVJ6dHIzUE5VenRhODRDKzJxTzl2YStrcVM3UzdxdHBLdW1UajVTN3h1U25GVFp1UjlPNktuUHR0M3dQcExPVXdIdk51RjJWVnUyc1hiK0xiMXJjU0Q2cU9CbDNqWkI5L280M2x2UExQYnFXeWQ4MEJyand0OGhBQUVJUUFBQ1cwY0FnWDNybHB3SlF3QUNFSUFBQkFZbDRPOGFUczczVnlGWjZGVWs3UzdwUXVHZlRXTk9rL1N6SWtUS055VjlVZEtISlgyaENOSHlrNEc5UTFNaE9VekF0U1hkVk5MZlN2TDg3RDI3UTBrSG5vUG45cG53ajBQYmVKNURldUduem90NkVGZ2lBUXVnZmo2dkpla0drbllMQXZ3bEtrTEsrSms5cFRndy9IeDREeDBqeVFkOHAwNFVEdStqOFJiR2h6bVhLVUo3WFQ4Y0xGOHZmUGI5WlkxSjNsL0hTdnFvcFBkTCt2U0U5OVo0WkJrWkFoQ0FBQVFnTUFNQ0NPd3pXQ1JNaEFBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ2VrUlFHQ2YzcHBnRVFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ015QUFBTDdEQllKRXlFQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUdCNkJCRFlwN2NtV0FRQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJeklJREFQb05Gd2tRSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDWUhnRUU5dW10Q1JaQkFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlEQURBZ2dzTTlna1RBUkFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRXBrY0FnWDE2YTRKRkVJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ01BTUNDT3d6V0NSTWhBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdla1JRR0NmM3BwZ0VRUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNNeUFBQUw3REJZSkV5RUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFHQjZCQkRZcDdjbVdBUUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSXpJSURBUG9ORndrUUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ1lIZ0VFOXVtdENSWkJBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJREFEQWdnc005Z2tUQVJBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVwa2NBZ1gxNmE0SkZFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdNQU1DQ093eldDUk1oQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFnZWtSUUdDZjNwcGdFUVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ0FBRUlBQUJDTXlBQUFMN0RCWUpFeUVBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENBQUFRZ0FBRUlRR0I2QkJEWXA3Y21XQVFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQUFRaEFBQUl6SUlEQVBvTkZ3a1FJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFSUFBQkNFQUFBaENZSGdFRTl1bXRDUlpCQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSURBREFnZ3NNOWdrVEFSQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBQVFoQUFBSVFnQUFFcGtjQWdYMTZhNEpGRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ0VBQUFoQ0FBQVFnTUFNQ0NPd3pXQ1JNaEFBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUFBQ0VJQUFCQ0FBZ2VrUlFHQ2YzcHBnRVFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUWdBQUVJQUFCQ015QUFBTDdEQllKRXlFQUFRaEFBQUlRZ0FBRUlBQUJDRUFBQWhDQUFBUWdBQUVJUUdCNkJCRFlwN2NtV0FRQkNFQmdXd2hjV05LdndqL2JNbWZtQ1FFSVFBQUNFSUFBQkNBQUFRaEFBQUlRZ01DQ0NDQ3dMMmd4bVFvRUlBQ0JHUkc0dEtRUFNOcEIwbjBsZlZqUy84eklma3lGQUFRZ01BVUMvaTYvdDZTblNicWZwQzlsTXVweWtoNHU2Ym1TdnB0cERMcUZBQVMybThCbEpkMUowa3NsbmJwd0ZKZVVkRFZKWDVUMDB3SG5lblpKQjBqNlRlRE1kKzhCNFRNVUJDQ3diQUlJN010ZVgyWUhBUWhBWUlvRUxpanA3WkwyV2pQdThQQ0Yvd2RUTkJpYklBQUJDRXlRd0xrbFBVclNrNE50MzVKMEUwbkg5V3pyWDBoNnNhVDdoMzVmSytrSmtuaGY5d3lhN2lDd3BRUXVJT2tnU1E4TzgzOWtPTXhiTW82N1NUbzBUUEEwU2UrUjlBWkpuOHdvdU84a3llOXZmLy8rZlRqTThQZHhDZ1FnQUFFSTlFQUFnYjBIaUhRQkFRaEFBQUxKQlB5NTh4aEpUeTlwOFR0Smp3OUNqa1BIVUNBQWdmRUkrRm05bGFRREplMmJRYlFkYjJiNVI3WllkQTlKcjVOMGNxYmhMaVBwalpLdXM5SC94NEpvOHFNZXg3Vm8vNzV3NDJpOTIwT0svL2FVd25QKytCN0hvaXNJUUdCN0NQaVEwS0s2RHduOXYxZmw1NUp1TE9uZkY0ckNuNit2a2JSL3hmenVIc1QydnFaL05rbDNsdlJLU2VmWjRId3pTWi90YXlENmdRQUVJTEROQkJEWXQzbjFtVHNFSUFDQjRRbmNYdEpiU29TYWxTWDJxUGw3U1VjTWJ4b2pRZ0FDZ1lEekkxZzh2V1A0L3o4a3ljOXVMckY0U2VDdkllbE5raTRmeEl3SFNmTGhZWi9GQW9uZm96NEFLU3Q5cnRkRkpCMHB5Zk1xS3hiZTcxQjQwdHNEa3dJQkNFQWdsY0Q1SmZuMjR2cHR4dlcyRGlONHU0V0dpcm00cEdNa1hhVUVsZzlIcnlmcDJGU1FrWHAraHgrODlubStXVDNYemFlZXpLY2JDRUFBQXZNaGdNQStuN1hDVWdoQUFBSnpKM0ROd3R2eUtFazcxa3prMFpLZVRUejJ1UzgxOXMrVXdNcHIzZGZVN1lXOVh1ekovc3lHeitiNWltditGbEhtV0U0cWJ0djh1b0hoam12N01FblAyRGhBelBWT1crV3h1R0tGamZaVTdDcnUxOTA0OHJEMlhOOUQwcmNiY0tJcUJDQUFnUldCMndTUjNmbDR5c29Ed21IdjBvZzViOGI3QzgvOU1pM0dJVnZ1VXR6b1BMMm5TWHNNaHhKN1ZrMS9mUjdLOW1RMjNVQUFBaENZSHdFRTl2bXRHUlpEQUFJUW1DT0JtQmprT1RsNTNtTXplSHZPa1JjMlQ0L0F1WXA0cVZjSUhtY1hrM1QxSU1CK3BoQXlmMUo0ZUg5WjBvK0wyTlJuVE0vMFpJdHVMdW5kUmNKTXg5emVMRzNpdFZwY3RpZy94MkxoeHl4U2lqMEVIYTdscGoxeFN4blRkV0tIbGwzRi9Xc1ZBdnJSR3lFRlZyYTEyUStwODZJZUJLWkl3TTRCVnlwQ2UreFNoSDl5MGw5L0h2Z1F6cDhCdndqaFRIem9OT2ZQZ0tHNSsyRHlGVFdoVWs0c1BMMzNMTHl2dnpLMFlabkhjN3g1SDFxWGxiN0R3M2lNR0dmWGVXRTRKQ2JwYWViRnAzc0lRR0M1QkJEWWw3dTJ6QXdDRUVnajREaTI5anBjai8yWTFySmRMY2NXZjM3eFkrSjc3WnJQc2xXS3VONkh0K1VzNFdEMHBBbnNMR20vNEFuOHZ4TXN0ZWo0UVVrdkNUR3IrdzROa21CQ3B5citYdWlZMnM2RlVGYWFpaDNiSXJESFBBUWRUemhYbk51NnNGdGRSSEFuby9ZQnd3MHE5a0pYOGI3VFJxWHhZZ2s0dE5KRGk0TTVIMmlXRlllemNNTGRKcmRMMnNMeWM3MXJTTUR1K05WMXQrOVdZOHo5TTZBdHF5N3RmRkR4VVVtWHJPakVTVG52dXlEbml3c0Y3L1hkUytiN3cvRE8vVzRYb0JWdFk5L0Z1M3hlWkRDWExpRUFBUWpNandBQysveldESXNoQUlGK0NmeGQrR0svbnZTbjN4SCt2TGRmaGl2MVg4ZzV5SVQ2dGtqajY2NVZNVFp0S2xkVEo3UmdtUElIQXBjTjE2bFhNY2piWVBGaDJyOEVzWDFPU1h0anoyeVQ1M1ZiQkhidkR4L1NPaTc2clNzMml6MHduYlRQdHh6NkxEbkUvVmhvR0E1RSsxeEIrbG9SOEw2ekE0SUY5cXJ5a2ZDTW5ab1JtKzN3N1JBTCtWVzVCMUtHOTgwbXo4WHZCYnphNjRrOVF0SnpLcXBZK04xSDBydFNvTStnamhOVE8vNzZPVXBzZlhNNDFPOHJQTXptRUxGYlR6a1BnMmV3TkpnSUFRaEFvQnNCQlBadS9HZ05BUWpNbjBCZEhNUWNzOXNtZ2QxWFVsOHE2VDQxSUQ4ZmZqajlJQWRzK29SQVF3SVdTUjJyOU1rTjI5VlYvMDd3dnZ0d3cvamxQWnJRdUt2WWovQ25TWHBpd255MlNXQTM1SmlIWUM1aHV1NVF4TjZmRDI2WWhMUXVORXlUQTViR0c0OEdXMDNnYXNWaC9NY2ludUs1Qlhibm5yQ3cvbzg5cm9TZkdZZjljUEpLU2ptQldETGx6eFdoZUc0aDZhY0xBUGlrY1BoZU5wVjlpekIwRnRsemxkaUJyTWZOZFJpY2EwNzBDd0VJUUdBeUJCRFlKN01VR0FJQkNJeEU0TzhIOW9yWkZvSGQ0cnFUL2RrcnFhcjRxdmROSkIwMzB0b3pMQVRXQ1Z5aWlLbDdhT1MyUlJkaVR3aGU4WE1KRzNOL1NRZFhURGoxS3JuN3FJb3oyNFZsMjdZT08vR1hpWTJieEdCZjc5SWhWUndtcU13NzBmVnloVmJaRlBlOXorNHQ2ZlVKQnlIcjlqdS9nT091WDdXRUUrL3N4TTFEdGNZRW5QZmhFRW4zaXJUTUtiQTdWTW4vcmRqN2pTZTAwZUQ3a3Z4TytWTFhqaGJjL25hUzNsYVIrTlBUZmt3a1VlY2MwUGd3OUNoSlBzVGNMRjhQOGVaUHlEeVIyRzByRDUvck1EanoxT2dlQWhDQXdMZ0VFTmpINWMvb0VJREErQVQ4aGQ0aFRJWXEyeUN3cDNqSTVQeXhhV0hMU1pybUltUU90ZmNZcDVxQXhjbjNaaEpXMWtlMWdIVEFUUGFtRDhuZVVIaXpWWVhKT1RZY1Jzd2huOFRaSk4wcEpIR0xDZXhPVnVnWTlLOHF4UEEyb1gxaTd6OGZUamlaN0FjcXRxUEZEeWYxTzIrTEI5WWVudmNNNFNoOEMrTnJMZnE0UzVHdzEzSGRONHZmcVQ0MC9mY1dmYTZhK0wzdmhKQVVDR3dTaUIxTXJlcm5FdGdkYS8wOUlYbHBydFZ4RGdzL283NjVSemtyZ2RobmpoUEk3bEhjQnZqMmpPRmRYNUp2czVVbEV2ZU56NGMwUEJCdGl5SVc5OTc5T3J6Umk5b09RRHNJUUFBQzIwZ0FnWDBiVjUwNVF3QUM2d1NHRG1Hd2RJSGRueXNQcjRtbGFmWTVZeno2Ui9JN0pQMVg4TjQ4bWUwT2dRaUJXTXp4c3ViK29iK0trWHErUXJoMTByTFVrc3VET1hYOEp2VmlQOEl0U0ZtNGJpTkVyOXZoOTRhVGdINURVcC9KM1N5c095YjZjd3RQYmlkUHJDcytrSFBZRzRlSE9LMEpwSks2TVEvQk9rOXdKL3I3dEtSZE90b3d4ZWF2SzliM0hsTTBESnRHSlJCN1h0YU55eUd3eDBJN2xjRnhmSFVuV3ZYTkp3dkRxWVZiSVBXa3F2SWlkVDM0VEYyZjNQVXNXRnRFM3l6K1BuRWpTUi9QYmNCYS93NWI1QnRPWmNYNVk1N2R3MmY3Z05OaEtBaEFBQUxqRTBCZ0gzOE5zQUFDRUJpWEFBSjdmL3o5bVdMeDVOV1NkcWpvMXVMNnJTUjlzcjloLzlTVEUwYzVDZFpGdzM5NW55UjdZeUt5WjRDOWtDN3RSV1pCMWFGTVlzVS9SUDJEODZzbENlc2Nlc1FDc1dPclhqM1NVY3lET1diSDBIK3YreEZ1Vy9vNE1MREh0Qk1CK3IxeHVLVEhCckc5N1Z6OUxySkg3QXNUMXNQQ3V1czl0VGdjdElqVFY3bE1TT0I4dVlvT3F3NG5FTmo3V2dINm1RdUJXR2lROVhuMExiRDdnTlNIOGc1WFYxZjhubmhKeUN2ald6dnJTVXZkaHhPNXA3ei9QWWJ6SXR4M0pqZVpodDVEbTZHQ2NyMmZoNTZYeDd0NFNHNTZsWkxCZmJQSDN5R0cvTDVhZHJEbE1EVjNsdlNmWXdCaVRBaEFBQUp6SjREQVB2Y1Z4SDRJUUtBcmdYK3JTV1psc2JqcUduL2JjUzJ1L1d5QlA2ejhlV0pQMWpmV2lPdjIzbmNkaCtMb3MzanNPNFJ3RnB1ZVpFNlk1akZKTHRZbjhlWDBaVkhGQnpGVkIwS2U2YWNrM1ZWU1NpZ1VlMHo3eDZuamw1Nm5CdE9jRXJiRnJ1MTN2WkZTbFZEVjc5NUhGdUZLdnR6Z3lyemZCWDhWd3J0Y0k3Sk4vUzcybFh5SFVzbVZPRy85NEtETW5MTERDUVQyNWJ4Zm1FbWNRRjNNLzdMV2ZRcnNzWEJPcS9GOWNQK2c0bFpjTEJtNzMvLyszdWhRWUhWZTdRNjM1TzhzRnZhblVoeVN5czRSMTUyQVFldTN3bnlieU4rWnh5cDJCbkZlZ0s2M21teS9RNE1kVVJGajNsN3RQc0FadXZ4TnlMbmg1TDZQQzRmTlhXK2tEVDBIeG9NQUJDQXdHUUlJN0pOWkNneUJBQVJHSWxBbHNQc0w1ZzBMYjJzTFlaUTRnWmlRWkM4a2U1UG4rRUVaODdCMXZOTjlFbjRjeDJkSmpTVVJzUGVXdmFYdE5WWlZuUFRVM3UxTmYxemJpOTJpek00MWZlOHI2YzB6QVJvTEZkUDJ3Q0FsTkVPcTBMNmJwQmNrZUtJYXVUMUluWFEySnBoMVhSNkxiQmJ4NzFQUjBXK0xrQUI3Rjk2dlBnaGNGUVQycnRScFB5Y0NUVzhSOWltd081SHZNV3UzM3NxNE9ieVViOVEweWVuaVczcStrVE9uUTFhTDJyNVY0Kys5bERNSjlMWGY3Sm52VzNEK0hyeFpmRWp0RzFjT2JlalNKUTlIMDdXekZuUzM0TEdlMjJ2OUt5M3pnalNkRS9VaEFBRUlqRVlBZ1gwMDlBd01BUWhNZ0lBOWR0NFpydlp1bXJQMFdPbDk0VS94WE04cHJuc2VYa2Q3akZsb3J5citZdThmdmNmMU5YSDZtVDBCaHhTeXVPS2t1R1hsUXlIWlk5c3IyMVdlMmF1eGpnb0hQM1B4Rm9zZFpQa1p0QmZlS2paOXlnWnhYSFNIM2ZFQldLdzRMdm45U2p6YUwxc0lFcytxU2NhNjN1OWJRMGliUHVPOHgreU9IU0w0U3I1dlVxekVmbnYwT3ZHMjIvVlpMUEJZdkM4ckp4VzNCVTd0YzdDS3Z0NFdjblFNTUJSRHpJQkFpc0M5T1kwK0JVKy9zK3lkWEZWOEU4bWU2MDNFOVZWZnNmZWw2KzBueVllNFV5Z0k3T1dyME5kK3UxbzRTTjJ4WkJnZnRIc3ZyRDQ3bDNySStwandXVDJGL1k0TkVJQUFCTElRUUdEUGdwVk9JUUNCbVJDbyswSGhLNm5YeDl1aWRpV25JSzZ2REV3UjJaMWM3SmFGRVAvdG1leFB6TXhMNENCSkIxWU0wZGNCMnlOcUV2NzJOVVplU21mMkhnc1ZZM0hnNzBQSW5hWTJXU1IzZ3RIOUV4cXVoUFlUZ3hkNlN2eDhlOEgvVTRpZm56QkU3MVZ1RTI1TGJJWWljc3gzZXc4NmJKYkRSdVFzamdYL2laQ1VjWDJjTVpMcjVad25mYytEZ044bnIwaDg1dGRuMUpmZ1daVk1jelZXMTJTa3NmZWx4eGtqN25iVjdrQmdMeWZUMTM2cnVxbmg5NzYvbHpwVTNhb2dzTS9qSFlhVkVJQUFCTTVDQUlHZFRRRUJDR3d6Z1FzVjhTYmZYMXlMM2IwRXduOFhYM2l2WFhoTUhyL05nR3JtbnBMUU5GZk05U3F6TGhoaUx6dTJhVlZCWkdkRG0wQk1USEJZRDN0amR4VTk2NUthMlE2THd5K2YwWkpVZVp6NldYY1lsTU5LRXNBMm1WNFRvVDJsM3lxdjk1UzJmZFlwUzZicjhFUVBIREEvaEVQUitQTnU4N3UvUTJqZFZKSzkyQ2tRR0lwQTFhRlRiUHcrQkU4L0EwNXViZS8wcXRLSGQzbE14Si9TNFZic016RzJMa3Y5ZXgvN3pkOU5mV1B0V2lXUXlnNVpFTmlYdXB1WUZ3UWdzSGdDQ095TFgySW1DQUVJMUJDbyt4SjdiRWoyZEFJRXowTEFueDBQci9ITWRZT2h4ZldWa2Y0aDQrdTJUaVpWVmJ5MnQrWjJ3bGJ2N0oyS1BXTHg5VklsRkN5cVczRDhZRStFNmp6bG5WVHUzajJOTTFRM1BoUTRlRzJ3SmtsZ1UyMzArankxaFhmcnFuL0hoUGNCeVdkN09DUkp0VGxXejNPeUovMHVQUjFHeE1iYi9MdHZhM2d2YmhZTGpRYzA3WXo2RU9oQW9DNnhxWjlkM3lDc3lvM1JoK0RwZ3p6blBTaDcvM3RhZlhtVzE4WGRYdUdieXZPSHdGNitvZnZZYjdlVDVQQllaYnBMV1hKVEJQWU9MeGVhUWdBQ0VCaVRBQUw3bVBRWkd3SVFHSnRBbmNqV3g1ZnFzZWVYWTN4ZmUzNWNJVnI5UzAzblR0aDB4eDRGeXFienNNanVHTVo3MVRSRVpHOUtkVm4xNnp3TGZ4aHVyL1NWQVBNV2tvNm93T2Q5NnFSblRlS1dqNzBTRm1LY3JOalBsOThGTHl6aW11ZUtJOTlVYVA5K2lLbDhkRWRQK2x5TS82YndtdjNKQU1sVk4rMjMwT2VEUnllajNpeTNEUWw1YzgyWmZpR3dUc0MvUFo5U3ZQTWVYNExGaDV1K2dlWTkrWThWMlByNGJ1WjM3cHRxbHFWTTlHeTdpajdzOS91LzZqZjNWME5pVVllOEdyUFVDZXpiRUR1N0tvUkwxLzFXbDB6ZDN6V2MzSFF6SndnQys1aFBBbU5EQUFJUTZFQUFnYjBEUEpwQ0FBS3pKMUFuc25YOVVqMTdPQ1VUOEErRjU0ZEVnMVh6ODQ5RVgvMjJWK3VZSlVWa3R4aG5XNzgwcHFHTVBRcUJ1bWUvNzVBWlMzelBYTEZJVnViM3dYOE90SHBOaFBaM0ZUZG8vbG5TTndheWJRN0RPRlRSSnlVNUR2dDZxUko0NWpBbmJKd25BWWZKOEFIWWVVck1mMCtSSitGT0lXbDVMb0c5N3JESkp2Mm91R2x5dlVMZzl5RjhINlV1RktIN24wcVlHQVIyNlprbEM5NzF0MEJkTXZXcVVIVCtiTjJ6U0FEdTNFSkxLbC9oNXVpU2xwTzVRQUFDWlFRUTJOa1hFSURBTmhPb0U3N2VXQ1REdlB1RXdndU12VTRYTHE1VHY3SVExSHpWdGFwTVRiQytoS1MzQkEraHVkZzg5anB2eS9oRGl0NURqalhGOVhQczc5ZjBaSmlmYWQraVNTbk9uOUhsWnNCeHdlUDd4eW1EVGJ6T05TUlpLTEp3czE3bWVJTmk0cWd4cjRaQTNjRzN3OHJkT0lSbitiZU1IdXdPQytOa3Y1ZXVzRFBITS9HaUVMS3FDczBVY25FZ3NQY3ZzTWRpL1cvRHpRQmVpQkNBQUFTMmlnQUMrMVl0TjVPRkFBUTJDTlNGYm5oZGNXM3pIaEQ3QXdGN2p6b2hYMWt5MkJVaWU2YjhRM0VvOGUySk1mT1BhTWM5dHNkdFZabmF3Y0RFRUM3U25MOE9NWGpQWHpLN2p4ZXh1MjhwNlpTZVpyN3RCM2wvUDlNUUpGTktkTzNQcW4wNjdNZkxGS0xpVFVyYWY2RzR4ZlBGRHYxV05YVU1iWHVET2x3WUJRSXJBbytveWQzaVVGTVBDMDROT1FYMnFtUy9LeHR6aU4yK0tmZk9tbTB3QlljT0JQYitCZmFyaGU4Wk8xYXNQUUk3NzBZSVFBQUNDeU9Bd0w2d0JXVTZFSUJBSXdKMXdzL1RRM3poUmgwdXNMSTlIKzNSdFhQTjNKd3N6TmU2ZmJWNmlpVkZaRjlDVEhaL3BsdEVjNGdUQzF4REZIc2tlbzk4YUdhM1BhcENacGpaa0RIWXQrRTlnOERlL1Vtc2lnL2N2ZWM4UFV6cGNDTFBET20xS1FIbkgzQm9tREt4MFFmejlsNzNZYmRMVG9HOUt0bXZ4ODBWcm1WWFNUNjQ5VTNBc3RKM1dMS21hK1A2Q096OUN1eitQdWFRaWcrdFdRd0U5alk3bFRZUWdBQUVKa3dBZ1gzQ2k0TnBFSUJBZGdMM0M3RSt5d2JhOWkrKy9ueXdNT1pFWUdXeFVsZk0zbFlrN0x0MzRYbDJjdmJWNmpiQTFZTVhiZDFCd1p4RmRxL1hnMExDU1llQ2NLSzQzQ0s3eGZWWGhiRXNBRDU3UmlKN1hSeGVKOXE3YVk5SmVnK1NaRkduckd4RGdra0U5bTd2THJkR1lPL09rQjdHSTdCS2pGeDJpOEpXN1NmcDBEWHpjZ25zc2Zqci9nNXdYVWtuOUl3cUZvZTk3N2p2YmN4SFlPOVhZTDlDY1dqMFVVbE9XRnBWNXY0NzQyeVNmaitqNzMxdG5ndmFRQUFDRUdoRUFJRzlFUzRxUXdBQ0N5TlFKMXI0S3ZQekZqYmYxT2s0VHU5VEpEMHkwc0RlT1k4cnhKOWZwWFk4Y3IxclNqcXF3b051WmRxM1FuaVFxWVc2cVVPM0xxN3ZFQ3ArT0xQSXZpNnVyMnlibThoZWQ4QldsWHlzNlJhMnAvd3hrcTVTMHRBeHZwMU16eDd6U3k0STdOMVhGNEc5TzBONkdJOUFYV2lZVldMVDllOFJ1UVQyaTRaY0JMdFZvUEJOTEI5Nm50WXpLbjlHK3dEaHJoWDk1dktjYnpJTkJQYitCSGF2dDc5RFB6NnlBRjBGZHVjanNkTklYd2w1bSt3WDEzWG9vN2VHRUpLdkRkOTFmdDIwRStwREFBSVFXQklCQlBZbHJTWnpnUUFFbWhLb3V5cnNMNDd2YnRyaEF1ci9IMG1IVlFpQzY5T3o0UE5jU1dmME9HZi9XUEFWNnBWSXZPcjZ5cEw4dzNpOVhLNzR3V29Qb2MzL2RxV04vOVlrS2VLcXFVVjJlOXBaQUoxNktSUFhWelpiTExoOWh0c0ZaZUw2YWt3Znl2aGd5bDdnVXkvK1llcVFCWnY3eUhZNzRkNGV4UzBPeDZqdVV1cUVwYjVFL0M3MkRkRzJTbUIzamd2blIyaGFMaWJwQ0VuL2U2UGgweVM5ckdsbm9iNlRFUHJXeDNxWlVwZ1RCUGFXQzB1ejBRblVIV3c3UnI5RHcvejdocFc1QlBaWXFKWlhoeHQ1T2FEVjNXVHllUDZzZmtlT2dSUDdSR0R2VDJCUDhWNzNzclFSMlAwOTJjL1VBZUV6Nit1U2JpanB4TVIxN3JOYTJaNTJ1S05EaXB4TlBqanIreVpJbjdiVEZ3UWdBSUVzQkJEWXMyQ2xVd2hBWUNZRTZuN0ViWnZBYmhIN1g0TkhTbXo1ek8yOWF5S3FyMTMvYllWbnVBWDdUU0hNL2JjUnZtTjI5ZmwzSjIyOTFmazlHL0FBQUNBQVNVUkJWQXhFOXB1SGd5Q3ZRVm5wVzJTM3VQNW1TUjYzckZoWWR6TEd1b1J1ZmE1VDE3N3FoTXV1N09xRUpmOFkzbE9TOTluU1M1WEEzdllkNnl2M241YTB5d2E0Tm1MRnFvdXl6NEk1Q094dER5bjYyblBubGZSNlNkZmU2SEJLN1BxYUsvMDBKK0RQQytkdzJhdWlxWjBjbkF4MzgwQTJsOEFlUzNEYTVSMFNvMU4zWThwdGM0NGRzODEvbjVQQWJsdWR1Tm1INEJhWC9mN3haN20vbTdRdFZkOEZISEx2MXNXTnpsTVRPMDZKdmI3cXFzbWE3eVRweVNHY2trWDJWZkd6NDZUczcwdTByNjlxZGZ2RlkzZ3RIUHJKdHpNb0VJQUFCTGFHQUFMNzFpdzFFNFVBQkVvSVZQMkk2OHQ3ZFE3UTdjWDd4aUxlOVBYbllPekFOdG9UeDJMeER3WWV0OGx3am9INXo1S2NMTE9xZEJXS1YvM0d4SFhYODYyR3h4YWhnMzdYWkJJajFyMklwQ05Eb3RZeU0relIrSkFXWVpEc0tXa1BMdCswS0N0VENhZHovNXI0OExGbCtXU1JsUEJlQ2VFVWxpeXdXN0I3VFF4VXhkK2R2K0xoaVcycnhKKzJoeFNKdzBhclZZa3NDT3hSZEl1djROK1lGaENyUHB1Y0hOM3Zockw4TGJrRTlydHR4SHJmWElTY3oxTXNWRlpPNy9tVXpUWUhnZDJlNFE3elYvYTU2bkNGZGQrRFlnejZFdGl2R2tLbGJONjZMQnUvaWNCKzJlS2d5cy9NcFVvNkd1TTJYT3cyeU4wbHZTRUduYjlEQUFJUVdCb0JCUGFsclNqemdRQUVVZ25VL1pqWUpvSGRvcWwvc0Z3ckZkeVcxZXRMbk02SmJRaVJmWW5pK21wTllySDUzeVhKM29kT1JCY3IvbDVsMGRXSFZsVS9zS2UwcDdxRUhrbjE3RnV5d0I0VHplcjJ5K3NrMlFNOXBTQ3dwMUJxWG1kSFNjNDVNc1hpNUlGT1ZEMlh3OHBOaGpjSWlhTFBVUUwzdCtFOWFjR3dyT1FTMk92ZWQ3bmpvUDlkU0hwWmxUUyt5ZnNneDM3MUxUZzdXcFI5YnZtbTFkZGFET3J2Smc3NTE5Y2VkazRUSCt5V0NleGQrVmt3dGppK1dYemI3T09KbnRobTZQQW9QbmhPS1UwRWRuKzM4R0h1L2lVZGo1SFBwZTZ3YWdwSmUxUDRVd2NDRUlCQTd3UVEySHRIU29jUWdNQk1DTlFKN1A2aDVXdk4vcUd4R2RON05UMy9ZTENIcytNZmZpTEVhdjdwVE9hK2FlYURKYjE0cHJZUFlmYVVCTkdxK2VZVTJaY3NycTk0T3Y3dFcwcmkvNi8rL2d0SlR5eXVwVHVSVjVuSHBiOVArUWY2TXlKaGxxWVczeCtCL1k4cjNEWkVEQUw3SDI5cU9FekRlcG1MQjN1ZGtEdkVaMHZkR0hNKzZIYzRDK2RYS0V2dTdEazdYNExmcDFXNU9uSUo3SytxRVQ5ejg0NEo3S2tIbG1Qdnl5YmpXd2ozOStOekZwK0xYd3ovMnduWXZ4d09qNXJtYW5GSUtvZWZLd3M1TkFWK2RZZEtaZHlhQ094dTc5Qjh6ajlTcHQvczJ6RkVUcE4xclJQNzNZOS9QOTBsOFZDaXlialVoUUFFSURCNUFnanNrMThpRElRQUJESVJzSGp1TCtTNzlkaS9FM2JadzhSaXRUMUttdjU0Nk5HVVJsMnRmZ1E1THZxU3l2RWJYL0MvS2VuWXRRbjZJTVZKTEc4UkVvelZ6ZjNRd29QWjRUUk9tekNnSENMN05vanJYbEovSDNLU1MxOXBYbzl2V3JiYzN3bEN3Vy9DSDUxMDAxN3IvdkZmVit3RitBK1N2ajJoUFlUQS9zZkZRR0J2dHlubkhpSUdnYjNkdXRlMTh2dlRJU3Z1VTFIcGMrRXp0ODRoSVpmQVh0ZHZicS9icXR3UksweFRFSWo3M2czMmlMZWdYcFlqcHEwSVczVklNdmFobm0vQytKRGU4ZHBUUzFPQjNSNzh4MVFjWEEwWjh6ejIrNG53TUtrN2dIb1FnTURpQ0NDd0wyNUptUkFFSUpCSUlQWmpKN0dieW1wT3d2ZFBSZktoejg1QWFQZVBIeWVxczhmSjBNWFg0QzJFKzk4dXE1c0I2MTdDRmlUWGhYRjdFMzlWMGhscnhwNVV4SHY5ZFV2alk0bllWdDIrVXRLRGVyenUzTkxjMm1aOWl1emJJcTZ2QTcxeDRZbCtXRTE0bDdacjVsc1EvdEdaRW1hbTdSaHQyaUd3LzVFYUFudWIzVk9kR0hGc3NTdDFOZ2pzcWFUUzY5MVowcHNxdkd6dEplNTM3R2NpM2VVUTJPdThuMjFPN2owYis4NjVSSUc5THJHcjQ2VTdibnJUNHJ3Vnp2V3lXWDRWYnRMNEFHZU1janRKenF2UlJGdHBLckI3WGk4S2VXRTI1NWo3Z0doOXZMcURreUh0R0dPZEdSTUNFSUJBTFlFbUh3S2doQUFFSUxBa0FrTjViUjh1NllFVEZOWTIxN0x1NnVsbTNaK3NpZG1PRVdzdjhKWFliYkhjMTM5WHhmRXJ2N0gyLy90SGtEMzlwMVl1WFNTNmZHOUZETTUxVytlUXhETkZaSDlmT0ZBcEMzZmkrVzZqdUw1YVo5L2tlRmxJY050MW4vckF5Q0xDQ3laNk1JUEEvc2NWUm1CdnQ5UHhZRy9ITGFWVjdwQWxLVFkwcmZNM2tvNHUzbmVPYlY5V1VwTTc1eERZNjhJQzJ0YXhCZmJjNHpkZHl6N3FWNG5CN3R0aDJkN1JZaERmRm50L2haQTlsdWUwYjdGNTM1ZkZjUGNVSFVhcnpMTzlqY0EraGZuWGZXOXdDQnV2YlZ1SGx4WmJnaVlRZ0FBRXBrTUFnWDA2YTRFbEVJREFzQVJpOFREN3RNWWlzNzI2L0FWOHFtVjE1ZE14VXgzSzRsUEIrOTVpdWNQZHpEblpXaXB6aSt5T0czdkZtZ1pQTGtLSUhEUlJzWFRkN0M0aSt6YUw2MlpvVDhmN2hqakJWUW5wVXZlVW42VURRamlxOVJzWHFlMm5VSy9xWFpucWNka2xUdm1ZOCs5TDhLcmkxeVFwWDVXZzRaczdwNDRJeVFrTTdabnJmNitYdnRqbG5ob2U3UDBSanQwRWE1TExaQXlCM2JmaW5FdkEzOWR5bFBPSCtObjIvaTByYzNsbVV0blUzUmpvNG0xZTV4emo4SXordkIyeVdFdXhVRzZQL0xMaXo4bFhoUEJ6bTM5dkk3RFhoV2NaUXR3K1Y0aXhmc3VLK1RxVTRzdUhYQURHZ2dBRUlEQWxBZ2pzVTFvTmJJRUFCSVlrY0kwZ2VqbHU0aERGbnF3T3dkTEdZMmNJK3p5R2Z3RGFhMjZ1UW1BZm5LNHA2YWdTRHp5djM3MURLSjI1eE5adkk3SnZzN2h1WG5lU2RJaWtDL1N4bWRiNjhMWDEvVU5vbzU2N3p0NGRBbnMzeERrRjltNlc1V3M5RjdId2VTSDNRajRTN1h2MlRhKzdiZHdJYTk5YjNwWU9NMmR4MCtKYVdiRm92V2M0dkUreFpBeUJQZlhBTU1YK3NqcGplOUMzdGJ0dE95ZTZkYWpFUzVWMDBPVXdvKzZnNHVPRlk0aUYzMVBhR3QyaVhkMnREWWMrOU8xUWk5THZLdW03amNEdWJ1emtjV0JKZjNhRThRSE8xMXJNSTdXSjE5T0phKzJRc2xtR0dEL1ZUdXBCQUFJUUdJVUFBdnNvMkJrVUFoQ1lBSUZOcjhyTmhKanJzY0F0T3U0ZWtoOWVPQ0daWWRYMDVpQ3lUMkJwUmpmQjExdWRyR3JsbFRtSEd3aFYwUHc1L3loSno2cWh1Z29YNHlwT2xPVWZoRlZsRGlGeTJtd2doNFZ4SXR1OTJqUk9iT01mMjQ4dHd1ODhmd1kzSU5hbmhNQ2V1TUFWMVJEWXUvR2o5ZlFKYkg1bXJsdnNBK2w5UTI2TDFKbmtFTmpIam9HK2JRSjdYU2lUdGdsT1YvdW5LdEhwMEFKdkxMSHBXOE1obWI5VDlTbXcxOFZBeisxQlhoZE9jZ2dQK3RSM0NQVWdBQUVJakVJQWdYMFU3QXdLQVFoTWdJQTlTdXgxMWVaNi9ka2xYVW5TYll1NG5mY3N2Sm92MzJBK1R0WnBFZTk3RGRwUWRWZ0M2NkwwNXd1dnV6dk9mTDFTUkhhSEJISzVUZzNxcFlyclZ3OC9mbmNlYUp0WnlQZVA0Tk1HR3Evck1BanMzUWdpc0hmalIrdHBFNmk2OWJXeXVrMXljQVQyYWE5NWluWDJzTGFuZFZscDY3bTk2c3MzTy93NVdsYUdqTVB1ei9HREsreFl2N1ZSRlNhdExZY0xoVGowZHZ6WkxMbEY3cnE0K3JuRi9aUjlSeDBJUUFBQ294SkFZQjhWUDROREFBSUxJT0QzNks2U25pSHBOb256V1htMTJLT2RNazBDUGtTeHNHN3ZibnRGemIya2lPeDFjMXlxdU80ZnFFZEtjbHpUdXVLWXNZNlo3WC8rYytOZ3pxRmw3QjNwRUFqM2tHVFB2VmhwSXpyRitzejFkd1QyYm1SekN1ekVZTysyTnJUdVJ1QWk0ZjNwa0h0bHhUa29ibHdrZXY5eHcyRVEyQnNDbTFqMXVqamRweGZoR1c5VWZFNDZuRXZiOHRlRm84ckhRbGpEelQ1ZUd4eGZjb2Z5ODIzV0QwcHlpSml5NGdPR1owcXlIWDBMN0I1dmpEQXhkY0wrMExjSDJ1NGQya0VBQWhESVNnQ0JQU3RlT29jQUJMYUlnTituL3RIZ0wvY3hUOWhWWEVZbjFLUkFZQ2dDYlVYMnBZcnJLVWx0ZlFqMitCQmYyQ0o3U3JsczhjUGZ6UGFKVkg2aHBJZUZIK0FwL1k1Vko1ZkE3Z1BKZDdlWVZGV29oN2JlZ0RhaFRORHJLNDU0VG9HOUxjTVcyRXViVklXOTZJdGRYM2JTVC84RWZBajlVa24zcWVqYU1lUnZGcEtsTngwOWg4QitjVW1mTEE1Sm5TU3pySXdkZzkyM0c2OHI2WVNtc0NaWXZ5NFJhUi96ckJONnZ4NE91NGZnK09EdzNXQnpDVFlQbG5JSTdHT0VpYW42TFBQOGMzdk9UM0NiWXhJRUlBQ0JzeEpBWUdkWFFBQUNFT2lYZ0VXNzkwcTZhcVJieDdyZXJ4RHY3TTFEZ2NCUUJKcUs3RXNWMXkwT3ZTSGNVcWhpM3lVOGtEbjcrWGFzV0k5VlZuelE1cVNxamtjNzVZTEEzbTExRU5pNzhhUDE5QWlrZkk0OElDU01ibU45RG9FOUZnTzlTK0xObERtT0hRTSt4Y2ErNnRTRmNPbkx3N3dxVklrOXhwM28xTGNQY3hjZnB0dVRmajJScXovWGZiaStIbk05aDhEdVczYytGTnF0WkpLNXhPNzcxVHpURHlsdUFyNGtOM0Q2aHdBRUlEQjFBZ2pzVTE4aDdJTUFCT1pJSU1VejF0NWRONUQwWHpPWW9LLzcybU5vcWNWaEZuNjkxTW1WekN0RkhIR3pwWXJybnB2anRMNitaczAvWER5YmQrZ2hQTkN0UXNMYzgxU01aVys3bTBqNndZVDNId0o3dDhWQllPL0dqOWJUSTFDWDFOVFdkZzJCTlliQW52dld4YllJN001dDVNL1d1MVJzMjc1aXBOY2wyL1ROQ2d1K3VjUEUrTHZVaXlVOWFHMnVQa0M0NzBZaTh4d0N1NGVzT21USUVhN0Y2MnJISUQvN20yVk92MmVtOXpiRklnaEFZRkVFRU5nWHRaeE1CZ0lRbUJBQlg5MC9YTklPTlRiTkpTRlExWStEQ2VIdVpNcllZUlk2R2QraThYbURGNUovNk5hVkQ0VWZVeWUzR0dQS1RTNG02ZWlhV3liZkNxTDNjVDFOSWlaR1BVM1NFd2NRQTlwT0I0RzlMYmsvdGtOZzc4YVAxdE1pRUV0cTJzZm54allLN0xtOGpvZmVQV1ZlM1NzYitoUis3VFgrQ1VsMmFOa3NQd3dPTE44ZFlQSk9ESCtNcEhOSWN2aWJ2U1I5YjJQY1hBSzc4NzI4WDFLWm50UDM3NHM2M2tjRnIvM1VNSG9ETEF0RFFBQUNFQmlIQUFMN09Od1pGUUlRV0Q2QmxCQVVid3lldExtOWJMclNSbUR2U25BNjdTOFl3cGJZT3p1bDlDR1dwSXd6WkoycXVLbTJvZXg2ZDFmYi9DNTRSZkdqZS8rS2pvWVVBOXJNQllHOURiVXoyeUN3ZCtOSDYra1FpTjNPNnhKM2ZYMldPUVQyT2c5Y2o5Mm4rRnUyWW5XSk9WM2ZDYlNkSkh2dXhaN3JiNnFZUkorSENOWXdYbFB6dWJwdjhMak96ZlBjd1pubXBwSTg1bUVsQStZUzJKMVh3T0wrVlVyRzdKTzF1NjhUOHdrUGszdVgwVDhFSURBYkFnanNzMWtxRElVQUJHWklvTzRLcTZmejhSQXI4cFNKencyQmZlSUxsR2hlVTNGOTFlMlNSSFl6c0xmVnRTcVk1ZkxFdWxxSTFicGp4YmhUL29HS3dKNzRnRlZVUTJEdnhvL1cweURnZDZmelJkaER0NnowbVZNaWg4QnVtK3Y2L1dWeHMya1BTVi9JaExzdVFhU0hmRnpoQmYzMFRHTVAxZTFLYkhaeTI3TFN0MWUxYngrK2MrRFA4ckxoSEhQZUF2Um1hSmhWM1Z3Q2U5MGhROThIUmxYaGFBZ1BNOVRUeFRnUWdNQXNDQ0N3ejJLWk1CSUNFSmdwZ2JvcmxaNVM3cGlmZldGRFlPK0w1SGo5dEJYWFZ4YjNGWk44UEFKL0hEa21jdVR5ZW92RnBlM2IyNnhQemdqczNXam1GTmp0OGZxQmJ1WjFhdTF3VTQ2M2ZPMk5YdWJ5MmRacDhsdlUyTGR3SE5mNlBqVnpmclNrWi9jVTZpcVh3SDVna1hUNm9KbzVPRG5ta1puV05mWTlxbS94T2RNMGFydGRENWV5V2JGdndkZjkxM2x3L3phSTNrNUNtcnRjSUlTRHROaGNWbklKN0I2cjdwQ2hyM2ozenNIa1VEUzdsMHd1bDFOQzdqV2pmd2hBQUFKWkNDQ3daOEZLcHhDQUFBVCtRTURpZzcxcnFqeSs3TG51UktmL01YRmVzUitHRXpjL2F0N1NZN0NuaU92Mm5uT3BFeCtXSUxMZkw4U2ZMOXNVUHlyRXl1dUZPS3JSVGRPaWdyM2NEcTFvNXpBeEZpbW5tT3cwbDhEZVZoeDJESDBmU1B6dkRaYU9aZit5RnV2aUp2Yk8yd3liMUpkSW5GTmdiem5kN00zNllwZmRVQWFJRWtoSmltMWgwZDkxTEdyMlVaejQrVElWSFoxWUNIM3YyVWdpdVZuVmVUU2NmSEl6ZVhuZCs5OTk5Q1ZJbHBrZUd6dW51Ti9IbXNUNktFdjR1ZDdHQ1RMM2szUjZyS09HZi9kM0ZoK2NsSlZjWXpZMFVUa0Y5cnFZOTc1eDRwQTlYWm5YT1NaTStmWmQwM1dpUGdRZ0FJSE9CQkRZT3lPa0F3aEFBQUsxQk1hOGt0elgwbFQ5T1BDUDZiZEpPcTJ2Z1RMMjQ4TU9DMmhPUkxWWmxpeXdXMXozajB5SEs2b3FLODlESitUOTU4ZzE5Ym1MN0srU2RLOEtFTGxETnRYOVNQVVA0QnVGc0ZFWkg0TldYZWNTMkZzWk0yQ2p2a1JpQlBZQkY0MmhlaWR3dmlCbzM3RDNudk4xK0JGSnQ1WjA2c1lRdHdpSGMxVWo1d3pUVWljRXo4WFpvbTdGNm9SZXQ3dXRwSGRsV1BJNnIzbC9SOTFUMHFjeWpOdWt5NXdDZTExdWdiNmNCcXJ5MXVRT3E5U0VNWFVoQUFFSVRJSUFBdnNrbGdFaklBQ0JCUk5Zc3NEZWx3QTF4UEpmc2hDWlAxMGt4ZHFsWkxDbEN1eE54UFZWb3QyekxWaGtQMWVJSVd4UHdiS1NPK2x3M1I2MFBWUGRod2pzM2Q1UUNPemQrT1ZzWGZmNW5IUGNsTDZuSWw0dFNXQ1BKUnJOOVJrUVM3RDZWVWsrd0xCMy9seExYZkx3cndlaCs0UU1rNHZGZlgrckpOOGUrMTJHc1ZPN3pDbXcyNGE2MjNGZHc5N1ZmVytxT3NoSzVVSTlDRUFBQW9zamdNQyt1Q1ZsUWhDQXdNUUlJTEJQWTBHMlRXQlBFZGQ5cmZwZkpaMnhzVVJMRmRsalF0SHJKRGxzU2E0U0U5aHpoaWZvTWljRTlpNzBxdVArTjlsdnZtWHl6RzVtRE5wNkxvZXZDT3p4YlJGN2I4WjdHTDVHbGZEbm1OMmZsSFM1Q3BNK1gvejlwcEpPNnRua2l4WTNsR3pUYmhYOTloWEtvMmV6azd1cmk0WHVUcDVjL0o4bkpmZld2T0x0d20zS01sM0R5WGQ5ZzIvTVhCVzVCZlpkdysyM0M1ZWc2eG9teDgvS0o0clFlcGNvNmZzeGtwN1ZmTGxvQVFFSVFHQzVCQkRZbDd1MnpBd0NFSmdHZ2JvZjhEbVNQdVdZZGRXUGc3bUlLR2F5VFFKN0YzRjl0WCtXS0xMSGhLSW1nbWViNXl3bXNEOUMwdlBhZEp5NURRSjdOOEE1UGRoOVFQYTVidVoxYW0zdnhzZEx1dkpHTDNQNWJFQmdqeTkvN0wwWjcySDRHbFVDZSt3V1U2N3ZaREhQK1p5aGFZYWdYK2U5ZnJ5a1BZcjQ5dC9PYUlpLzh6alo1clVxeGhqYjB6cTN3RjczakI0WGNzczR6MHViVXVVZFA1VWJObTNtUkJzSVFBQUMyUWdnc0dkRFM4Y1FnQUFFb2tsTzV5SkNJTERQWnpQM0lhNHZWV1NQQ1VXNXZRaDNDbUdLTGxXeG5iWXRSSXk5UkRkakpLYzhhUTYzNE1PS3plSmNFQmJJMmhSNzU1MTlvMkZmNytlY0F2dlllNmJxbWVxTFhadTFiTklHZ1QxT0svYmVqUGN3ZkkwNlFkVTN0K3FTZWVlNFNWUVh3c1BoMmV3MS84SGhNZlV5NHM2RmdINTBrY0Q3Q2hXOXZWU1NFMkd1d3REMU1taEpKMTYzMTlkMC9vQ2FCT2U1YkZyMW0xdGc5emgxdDV6YXhyKzNUdlFhU2Z1WEFCcjcwQ0wzbXRFL0JDQUFnVllFRU5oYllhTVJCQ0FBZ1NRQ01VSHRReUh4MDlTVGhDS3dKeTMzNkpVc3Jsc2szcXZHa3Fxd01GVk5sdWJKWGllbzVRb1BzR0o3L1NMT3JwUEVXaUF1SzQ0TmYrVG91K2lzQnVUeVlHOHJEbGZkQk9oeVhiMXNYL1FsRWlPd1QzQlRCNU1RMk9OcjR3VGhyNVowM1hqVjNtcVVIWGl0T25mSUQzdEYrOTlWeFdGZ25NeTY3THZWM3NWYzNsK0VMYW42RGZ4YVNmZnNVUkN1RXlsdGY4NzQ1TDB0U0VWSG50dFR3aTJXc2lvL2wzU0RJc0g4ZitVMlJOSkZ3dWZuTlNyR0dzS1R2bXFhUXdqc2RkOHYyaDV5MkJuQTRXRXVYVEt4THArM0Eyd0hob0FBQkNBd0RnRUU5bkc0TXlvRUlMQWRCQ3dndmJObXFpOHVQQzRQbUFFS0JQYnBMMUlPY1gwMTZ4U1IvV09TN2lUcFJ4TkhWZWU5bUNzOHdBckovV284NkU0SlFzUi9USkFmQW51M1JVRmc3OFl2WjJ1SFpMcER6Z0U2OUcxeDBwN1BYKzdReDF5YjFoMThkUFdjclJNTnphdHJTSTFONXBjdERyMzkrVmgxYzZsdlFYL0lOYjlxa2J6MEdFbU9NVjlXZkRCei8wS0FQMzBnbzJKZTdPOEozMU4rTlpBOXEyR0dFTmpyNHZ5M1RhTHIyUFZIbEJ4R0VSNW00QTNFY0JDQXdId0lJTERQWjYyd0ZBSVFtQmNCaHh0NGc2UTcxcGpkOXRybTBDUVEySWNtM215OEZISGRTY1o4TGY1M3picitVKzJsaU95eFF5OWZaWDlKUzBaMXpjNHQ2WEJKTjZ1bzFQWUhjQVpUejlJbEFuczN5Z2pzM2ZqUmV2c0k1QlRZWXg3bHByMnZKQ2VIN0tQY3BjaFI4S2FLamh3MnhUZVgzdGZIUUFQM0VmdU9PNFlJbXhMT3lLRlVudDNqRFlVVTdFTUk3TGJqUlNFY3o2Wk5iY01RVmZYWDlaQXJoUmwxSUFBQkNNeVNBQUw3TEpjTm95RUFnUmtRdUVuNDBiUkRoYTFPT09TcnM5K2R3VndRMktlN1NCZVc5RFpKTjZveHNhdTR2dXA2Q1NMNzVjS1ZaNGNnS0N1ZkNTTDR5VDB2dVo5MXg5ZzlSMFcvVS9aaVJHRHZ0aGtRMkx2eG8vWDJFY2dwc0p0bWxXZnVpblJmQW1JcytXYXV6NXNoZHN5ZHc4RkJsWmJ3UWtrUEcxakk5cnhqMzcxOU04UUgzWjhkQWxJWVl5aUJ2YzZCNE9tRmc0V1Q2YWFXT285NHdzT2tVcVFlQkNDd2RRUVEyTGR1eVprd0JDQXdBQUhISy94QTRjRit4WnF4MnNaRUhNRDhzd3lCd0Q0RzliUXhkdzl4UjZ1dWFQY2xycStzaVluc1kveDRUU1AxeDFxT2YrNUVhUFlxckNwOUowTkx1V0V3NWRzc0NPeE5kdGhaNnlLd2QrTkg2KzBqa0Z0Z2p3bmZKcjVma2JqejBJN29ZeUZMY3QyWTZtaDJ0UGxsQ2djUjV4RHlnWFZaR1RQZXVUL2pEd2t4K0tzbThxMGd4RHNjMEJCbEtJRzl6b0dnYVk2WnFsd0ZZOXhNR0dLTkdBTUNFSUJBTHdRUTJIdkJTQ2NRZ01ETUNLeVNET2FJQzVraXBzM3RDeW9DKzdRM2VKWEkzcmU0dnFKUUpiSlBYVnhmMlIvelh1eHpIcjVHLzhTYUpIQzJhZXBKN3BZdXNGOG9KRDMwYzdSZStncmJrMU5nOTBIdTkwWjhQWGwvMzdva0JuTmZDV0pIbkJwRGowZ2d0OER1cVQyNFNJenBQRGhWNWRpUU1MenQ4eFZ6dFBpMnBCc1hRdkQzUitUY1p1aFlhQmozT2JhSDh4VUt0aCtWNUlUWVZjVUhCTGN2dk96N3ZxMVdOdDVRQXZ1NVFxSjdoeDNhTEw4dDR1WHZXWGp2ZnlweDBRa1Brd2lLYWhDQUFBVFdDU0N3c3g4Z0FJRnRKR0RCd3g0dWpzWDQ0UjZ2c0Ryc2hEMmU5b3BBSGV2cWJOdTFSbUJ2UzI2NGRwc2lleTV4ZlRXalRaRzlUMUU2TjdXVU9LMFdQWHpkK2tzZGpMRVE0U3ZaL3hMcG8yK1ArUTRtbHpaZHNzRHU3OEdQa3ZTc2twbjNGU1lpcDhEZTkxcjMxUjhDZTE4a3Q3T2ZJUVQyaTBrNldwSVRkVmFWdGlKc2lxUEYxTi83VlV3ZUllazVOY3crSitrV1JTenduNDY4ZFdPM0IyemVLeVU5cUVOdW10UXBEaVd3Mng3L3JubG1oV0dwQng5Vmg4N3VOcldQVkRiVWd3QUVJTEFvQWdqc2kxcE9KZ01CQ0NRU1dCYzhQaTNwbjBJOFJpY0NhbFA4TG5VTWJNZFIzam5Td2RCWFU5dk1aN01OQW5zZkZQUDNZWkg5Q0VrdjY1alFOTlhTbGNodWdkSmU0VVBHTkUyMXNhcGVMQ2E2Mi9tbXliMGtIZGJpRU02eDhYMklWNWZrMkdOTVJZeW80emszZ1gwM1NXOE1udDAvbG1SUFVYdWpiaGFMWVBlVGRJMkt5YjlhMHIyN2JqUkpDT3c5UUtTTHJTSXdoTUJ1b0NraTdQdEQwdE9mSmE2QTMvMFdibTlYVTcrdGNKOW9RclpxMTVSMGxLUWRLMGI0ZmZndTRKczFZNWNVVDN2Yk9JVElQcVRBZnYzZ09MUzZxYnUrRG5ZQThuY2FlN1BYbGFvK21uckJqNzBIR0I4Q0VJREE0QVFRMkFkSHpvQVFnTUFFQ0pRSkh0K1I5R3hKLzFmU0NZazIrZ3U4aGNXbkZPMnVudERHUHo3MmtmU3VoTHBUcW9MQVBxWFZxTGZGUDN4UEc4QWphMldGUmZaekJqRjZQcFFrZi8reEo1WVRmOFdLUlhBZndqa2gzUm1SeWhjcDNoLzJURHl3OElvK2Q2U3VCWHlIQ0hDL1V5M21kSUNrNSt1UHpOWkxxb2QzMWZ2RE53VGUzV0xpdnZidmc5RmROdHF1UE92cXZPK2FER2Z4N1ExTkdsVFVSV0R2QVNKZGJCV0JvUVIydjZQZkVzSWMxUUgraGFRSGhycS9xNmpvejBLL3p3OHU4bnhjdnFhek9kMzJXcDlHTE9TTjYwN3RkbWFLemJiYmgrSCtuS3RhMjY0UDM1QUMrM3B5VXMvbkhjSDU1K09TVGsyY3lFSGhPOHhtOVRrbjVVMmNPdFVnQUFFSWRDT0F3TjZOSDYwaEFJRjVFcWdTUEZhenNVRDVRVW1mTFBGOHRGZUl2WGh1R3JsYXZFbkc0cm85Ui96RHNhMm4vRmkwRWRqSElzKzRPUW5ZZy9uTjRaQXNaUnovV0hWYzEwOFVzVnUvdk5iQUJ3elhEYUdocnB6U1VhanpTRW5QbS9EN0lKYlExai9ZSGV2MWxNaWNoeGJZL2QzV25ucDNiYkFXbTFYN2lvOXNBYzlpeGNOS2JIbWRwSHNrMmxoMzdUK3hpMEdyRVNKbVVOeUxHMndvZ2QzZ1VrVlkxLzFWRU5udG9mMmJRTjNmQ2E4VHZOei9NcklTL2g1NHB4QW5lMDZMbGhMeTVpdmhnTUczaHFaVWZKQjdlT0VJczBQRXFKZUg5N1RYdU84eXBNRHV6ejhuVGY5RzhSbjR6UVNuZ00yNTFoMVFPL1Rnay9xR1EzOFFnQUFFbGtRQWdYMUpxOGxjSUFDQlZBSXhnVDIxbjlSNi9sSDFVRWt2bmJDWVZqY1hCUGJVbGFiZTNBaWtDQWM1NW1UQjFEZG1wbnJZbGhJLzNyYnZHMExvdEhsLzVQSmd0eTFkQmVrKzRpUEhRa1g0dHBURnRoU3Z5YXI1V0tBZk14ekRlUXR2M2RkTHV2YkdCa0Jnei9IVzJKNCtoeFRZVFhYdndtSGlyVFdoVC9vaVAvWDNmdGs4L1ZuZzc2NzNxWUhnMENGbStMRytRUFhZVDEyZWpjMWgzaGJDZ3ZXZCtIUklnYjByT3Erand5SnRha1NFaCtsS2x2WVFnTUJXRUVCZzM0cGxacElRZ01BR2dTRUZkb2VCc0FqbFVBaFRGZE5pR3dTQlBVYUl2OCtaZ0VYQ2x4UXh1L2NmWUJJV1V4M1gyNkxrVk44SEZsU2VVWGltTzVsZHJLU0VPeGphZzkwMlY0MFptNC8vL29TUTlEUkYrSzdxN3pKQnNITmVoTHFTR3BxZ1NtQnZlMGlSd2lHbFRsWENZQVQyRkhyVXFTSXd0TUJ1T3h3ejNUZWEvUDdMVVhJbkhzOWhjK3dXMDJyTXFSOGNwQndTck9ieStaQTc1WHM5QXAyVHdQNmlJa0h0UTBybVRuaVlIamNFWFVFQUFzc2xnTUMrM0xWbFpoQ0FRRFdCb1FUMlQ0VXdCWDErVVI5alhSSFl4NkRPbUVNU3NKQmdiMkFMbnJrRWxxOUx1bk1oNVB6bmtCTnJPSmJuN2gvWTkyL1F6Z2xFYjEzTTdXc1ZiZm9XMkZOTWEvT09kNng5aCsyeEYyYVh3dy9uNDNDZWpWakM2OVU4bmx1RW0zaHN4Sk1kZ1QxbDFhbXpGQUpqQ094bTV4anFUbXJ0T05aOWxUa2NxcGJOTmRYejJ6ZG9mRGlSR3QrN0w2NU4rMmx5VyszRThGbDlkTk5CR240R3J2S0c5RFJNNTI0dUx1bVk0cURwS2lVOUVSNm1NMTQ2Z0FBRXRvRUFBdnMyckRKemhBQUVOZ2s0QVpVOXluZk5oTVpDbXI4NHY2ZEYvTU5NSm5YcUZvRzlFejRhejRqQVRwS2Uyck0zKzAvQysrQk5JWWJ2VkhFNFh2aUxRNjZJcGpaYWtMQTN0UThWTjh1NWl1UjNqdXU2V1U0cXVQeTY2VUNKOVgxZzRvU3ovcmVMWStPWGlXYW5GOTZLamgzOC9aNXNhUnRxd29ub0hJTGhaNG56b3hvRWxreGdMSUhkVEM4aDZXVWhJWDFYeGo2cys4Zmk4MlJ1VGhiV0J4NHU2VGtSQU44cWNwTGNSTkp4WFVFTjFONmY3NDdISHJ0WlpITWMydEVIbjA3dzNlVTJrL3VhaXdmN3pZc2NVMGNRSG1hZzNjZ3dFSURBSWdrZ3NDOXlXWmtVQkNDUVFNQ2VtdjR5ZVdCSi9OaUU1bWVwNGkvajd3c0o3WHlWOG93Mm5VeTBUZFdQQThka2RNeEtKNFdkZW5FWWtEdElPa2VKb1dPSFdaZzZ1MjIweitMc0FaSWNpenVXbzErMHlnQUFDbnBKUkVGVXVLNkt6NmVML2ZiMDhGN28rZ005OXhyNCtiRDMvdDFyQm5wMThNeXVTaGpuZCtEakNqSDloUk0vU01qQjB0K25mUVBDaktxUzZUbGMySWNsM2FyQ0FCOVNPREdyRTJ4MzhhRFBNVC82aE1DUUJNWVUyRDFQUDg5L0ZVSkYrWHRpMCtMdmdrNEcrZGtaUHN1cDRucEtlTENtM0lhbzN5U3ByZTNwNHlicUhBUjJKK3QxNkxxN2xDd0M0V0dHMkptTUFRRUlMSUlBQXZzaWxwRkpRQUFDSFFuWXcvTC9GRmNqOXl5UysxeTNFSkgrdGdpVDRBUjFGcDNLaW9XazQ0dXdDSTdWK0VsSjd5MkVrVy8yNE9YU2NSclptbmVKWjV6TnFCNDdSbUR2RWViQ3V2TDNwRXVHMEFHM0NJZHg5c1plOThoZXZROStJT21vSUtKYVhNL2xuZDAzWWwrZGYxVTRnS3JxKzVXU0hpVEpIdCsrbmVPRGc2cGlqMzE3L2ptZThSd08zN3J5dEplODQ5VS9xNllqaTFGM2xQUVJTVzhJLzd1cXVrUFZPQWJ1SE1XNXJpeHBENEdwRWZENzhhYVMvaUY4UDl4bDR4RE5oNmNPaytWbjI3Y1dQeXFwN3lTWlF6RkpqYm51enp3bmFINzdVSWIxUEU1VGtkMXI3TVBqRjdUOG50OUVZTit4K0N6eGJiS2hpNzM3M3htKzcyeU83U1MzQi9Wa2tKMlBmcm93SjZTZTBOQU5CQ0N3QkFJSTdFdFlSZVlBQVFoQUlDOEJCUGE4Zk9rZEFtTVJzSGhrSWJ6T1MvUFFFSk45SlphbkNQS2VqMFVZMzNENS95UjlmQVl4ZXR1c2dZVVFDdzhQU3hEWDdabnVraG9MK0R1U0RwWmsvaWUwTVk0MkVJQUFCQklKcENhMzludjlYcEo4eTJET04yMHNzdHM1NXFxSmZGek5oNTlPVXY3bGhuTnZJckRYM2Q1b1lPcGtxNUlBZTdKTGcyRVFnRUFmQkJEWSs2QklIeENBQUFTV1RRQ0JmZG5yeSt5MmswQ0swUHVoUWt5NGZZbEhab293djBsMTVlbnA2K2EvV2Z1alBmMDMvMXRzUmZ3ajNYSFRxNHBEUWZsVzBqbHI2amdFaEc4blZKV0xoZHRNbTM5M3dsSEgweitmcE5kRXZOR3JQRDBkNS9rdGttNFFtMmo0dXc4M2ZDdmkvU0dackJQbE9rVFhldm1WSkh2SzV5cWU3L2s3TXI5Y3VOWHc4bkFiSXBldDlBc0JDS1FUU0QwMGRZOSsvejI3b2NDY2JzbXdOWnUraDIxZFNsTHF6Vmtnc0o5SkJJRjkyRDNPYUJDQXdNQUVFTmdIQnM1d0VJQUFCR1pJQUlGOWhvdUd5UkNJRUhDYytTTUxMNzVyVk5TTEpiQnpDSzJYOUp3UWR1cUxaZ0hib3ZoL1NhcUxXZXQ1V0Z4M1RIVUw2V1dlbmsxRXJhbHphV0xmdnVIV1JKTTIxSVVBQlBJUXVFemh4ZjNXeE1TZnpsbjByd3NMNzlIa1Bid0tsZFkwcHdvQ093SjducWVYWGlFQWdja1JRR0NmM0pKZ0VBUWdBSUhKRVVCZ245eVNZQkFFZWlGdy94Q0daTE96bUxpK3F1K1l2WTdGNndTcEYrakZvbWwzNGhqNys2d2xjYjFPa2J2am1Jcmt5U21lbnVibjJQYlBLVUxOT0VURDBzdlhRNjRUUXQ0c2ZhV1ozeHdJM0ZqU1ljVkI2VVVUakYyaXVMNmF0dCs5Zmw4L3RZYURFMWc3TjRadkNqVXRDT3huRXNPRHZlbnVvVDRFSURBckFnanNzMW91aklVQUJDQXdDb0dxSHdkeitxTHNVQkFPc2VBRVpadUZKS2VqYkNzR25RQUJoMEU1ZWlNT3JiMjBieGFTYkthYWFISDlDWklldW5DaDJBY1NEbSt5S2xWZTdFMDlIWjFnenVMTy9xbkFaMXJ2eVlYZFQ1cXA3WmdOZ2FVUnVGVzRZWE9leU1RZVdSeWdQbThoWVdHcXBtcE54TjkxSGY1cmswZFZxTFRVL1lEQWZpYXBPZjF1U0YxZjZrRUFBaEQ0RXdFRWRqWURCQ0FBQVFqRUNDQ3d4d2p4ZHdqTWw4QzZGM3RWelBEVTJUbHN6QjBsUGFZUUtxNmMybWdtOVg0azZYcVNqdDJ3ZDlPTHZZc1lzM01SUi8yZmlxU21ENURrQktwTEtzY1hoemw3U1ByMmtpYkZYQ0F3Y3dKMUl2dFNFcG8yV1NLSHpIbWpKTC9YWFZKdmM5V04wVVJnZHdMWmF6VXhlR1oxZnlicG1abnpoY3dNQ2VaQ0FBSkxJb0RBdnFUVlpDNFFnQUFFOGhCQVlNL0RsVjRoTUFVQzYxN3NLV0ZOVW0wK2w2UnJTN3BSRUthdlZJU1NjVks1dVlaQ2ViT2svVXFTYzY1N3NYKzRpTTkrQjBrV0Vib1VoNDR4cjdzSHI4cXJTdHFoUzRjVGFQdlNFR0toTEI3OUJNekRCQWhzTFlFeWtmMlhJZnpYZTdlUWlnODNmUnZMLzl5MjRXMnVNbHhOQlBZdHhNMlVJUUFCQ0N5SEFBTDdjdGFTbVVBQUFoRElSUUNCUFJkWitvWEFOQWpZaS8zcVFRQnRtc0N0anhuc1dPT3hiYkY1dHduRWVQK2NwT01xSnZ0M2tsNFdCS21xT2wwNW5VL1MrY1BOZ0txWXllY00zbzgrM0lnVmM3WGRGdzRWdnlqcHg3RkdMZjV1ajNWNy9YOUswZzlidEtjSkJDQ1FuOER0UXZKaEg0QitYNUpENTMwcC83Q1RIc0h2MFYvM1lDRUNldzhRNlFJQ0VJREFIQWdnc005aGxiQVJBaENBd0xnRUVOakg1Yy9vRU1oTndGN1lMcWZuSG1paC9adWZ2UjVQV2VqOG1CWUVJTEI4QXJlWGRNOUNZSGVZRW9mRW92UkRBSUc5SDQ3MEFnRUlRR0R5QkJEWUo3OUVHQWdCQ0VCZ2RBTDI0cmxRaVJWbkZCNnZQeTJTRy9yZlV5LzIxcnhJa1VqUS85NHNKL1hrcFRSMUJ0Z0hBUWhBQUFJUWdBQUVJREFjQWQ4T2UyREpjSWNYTjQ2T0hNNE1Sb0lBQkNBQWdkd0VFTmh6RTZaL0NFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUVdDUUJCUFpGTGl1VGdnQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdkd0VFTmh6RTZaL0NFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUVdDUUJCUFpGTGl1VGdnQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdkd0VFTmh6RTZaL0NFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUVdDUUJCUFpGTGl1VGdnQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdkd0VFTmh6RTZaL0NFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUVdDUUJCUFpGTGl1VGdnQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdkd0VFTmh6RTZaL0NFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUVdDUUJCUFpGTGl1VGdnQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdkd0VFTmh6RTZaL0NFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUVdDUUJCUFpGTGl1VGdnQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdkd0VFTmh6RTZaL0NFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUVdDUUJCUFpGTGl1VGdnQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdkd0VFTmh6RTZaL0NFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUVdDUUJCUFpGTGl1VGdnQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdkd0VFTmh6RTZaL0NFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUVdDUUJCUFpGTGl1VGdnQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdkd0VFTmh6RTZaL0NFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUVdDUUJCUFpGTGl1VGdnQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdkd0VFTmh6RTZaL0NFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUVdDUUJCUFpGTGl1VGdnQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdkd0VFTmh6RTZaL0NFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUVdDUUJCUFpGTGl1VGdnQUVJQUFCQ0VBQUFoQ0FBQVFnQUFFSVFBQUNFSUFBQkNBQWdkd0VFTmh6RTZaL0NFQUFBaENBQUFRZ0FBRUlRQUFDRUlBQUJDQUFBUWhBQUFJUVdDU0Ivd2ZmeWV3ZkdPUisyQUFBQUFCSlJVNUVya0pnZ2c9PSIvPjwvc3dpdGNoPjwvZz48L2c+PC9nPjxnIGRhdGEtY2VsbC1pZD0iZTNhIj48Zz48cGF0aCBkPSJNIDEwNTMgMTQ1LjUgTCAxMjkzIDE0NS41IEwgMTI5MyAyOTIuNzYiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzI4NjQ5NCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIHBvaW50ZXItZXZlbnRzPSJzdHJva2UiIHN0eWxlPSJzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7Ii8+PHBhdGggZD0iTSAxMjkzIDMwMC43NiBMIDEyODkgMjkyLjc2IEwgMTI5NyAyOTIuNzYgWiIgZmlsbD0iIzI4NjQ5NCIgc3Ryb2tlPSIjMjg2NDk0IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgcG9pbnRlci1ldmVudHM9ImFsbCIgc3R5bGU9ImZpbGw6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7IHN0cm9rZTogbGlnaHQtZGFyayhyZ2IoNDAsIDEwMCwgMTQ4KSwgcmdiKDExNSwgMTY3LCAyMDgpKTsiLz48L2c+PC9nPjxnIGRhdGEtY2VsbC1pZD0iZTNiIj48Zz48cGF0aCBkPSJNIDEyOTMgNDAzIEwgMTI5MyA0OTcuNzYiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzI4NjQ5NCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIHBvaW50ZXItZXZlbnRzPSJzdHJva2UiIHN0eWxlPSJzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7Ii8+PHBhdGggZD0iTSAxMjkzIDUwNS43NiBMIDEyODkgNDk3Ljc2IEwgMTI5NyA0OTcuNzYgWiIgZmlsbD0iIzI4NjQ5NCIgc3Ryb2tlPSIjMjg2NDk0IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgcG9pbnRlci1ldmVudHM9ImFsbCIgc3R5bGU9ImZpbGw6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7IHN0cm9rZTogbGlnaHQtZGFyayhyZ2IoNDAsIDEwMCwgMTQ4KSwgcmdiKDExNSwgMTY3LCAyMDgpKTsiLz48L2c+PC9nPjxnIGRhdGEtY2VsbC1pZD0iZTNjIj48Zz48cGF0aCBkPSJNIDEyOTMgNjA4IEwgMTI5MyA3MDIuNzYiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzI4NjQ5NCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIHBvaW50ZXItZXZlbnRzPSJzdHJva2UiIHN0eWxlPSJzdHJva2U6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7Ii8+PHBhdGggZD0iTSAxMjkzIDcxMC43NiBMIDEyODkgNzAyLjc2IEwgMTI5NyA3MDIuNzYgWiIgZmlsbD0iIzI4NjQ5NCIgc3Ryb2tlPSIjMjg2NDk0IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgcG9pbnRlci1ldmVudHM9ImFsbCIgc3R5bGU9ImZpbGw6IGxpZ2h0LWRhcmsocmdiKDQwLCAxMDAsIDE0OCksIHJnYigxMTUsIDE2NywgMjA4KSk7IHN0cm9rZTogbGlnaHQtZGFyayhyZ2IoNDAsIDEwMCwgMTQ4KSwgcmdiKDExNSwgMTY3LCAyMDgpKTsiLz48L2c+PC9nPjxnIGRhdGEtY2VsbC1pZD0ibGVnZW5kIj48Zz48cmVjdCB4PSIxMyIgeT0iODMzIiB3aWR0aD0iMTQ4MCIgaGVpZ2h0PSI0NSIgZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSJub25lIiBwb2ludGVyLWV2ZW50cz0iYWxsIiBzdHlsZT0iZmlsbDogbGlnaHQtZGFyayhyZ2IoMjU1LCAyNTUsIDI1NSksIHJnYigxOCwgMTgsIDE4KSk7Ii8+PC9nPjxnPjxnPjxzd2l0Y2g+PGZvcmVpZ25PYmplY3Qgc3R5bGU9Im92ZXJmbG93OiB2aXNpYmxlOyB0ZXh0LWFsaWduOiBsZWZ0OyIgcG9pbnRlci1ldmVudHM9Im5vbmUiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHJlcXVpcmVkRmVhdHVyZXM9Imh0dHA6Ly93d3cudzMub3JnL1RSL1NWRzExL2ZlYXR1cmUjRXh0ZW5zaWJpbGl0eSI+PGRpdiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiB1bnNhZmUgY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IHVuc2FmZSBjZW50ZXI7IHdpZHRoOiAxNDU0cHg7IGhlaWdodDogMXB4OyBwYWRkaW5nLXRvcDogODU2cHg7IG1hcmdpbi1sZWZ0OiAyNnB4OyI+PGRpdiBzdHlsZT0iYm94LXNpemluZzogYm9yZGVyLWJveDsgZm9udC1zaXplOiAwOyB0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiAjMDAwMDAwOyAiPjxkaXYgc3R5bGU9ImRpc3BsYXk6IGlubGluZS1ibG9jazsgZm9udC1zaXplOiAxOHB4OyBmb250LWZhbWlseTogJnF1b3Q7TWljcm9zb2Z0IFlhSGVpJnF1b3Q7OyBjb2xvcjogbGlnaHQtZGFyaygjMDAwMDAwLCAjZmZmZmZmKTsgbGluZS1oZWlnaHQ6IDEuMjsgcG9pbnRlci1ldmVudHM6IGFsbDsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd29yZC13cmFwOiBub3JtYWw7ICI+Q0FOIC8gUExDIC8g5rip566x5oyJ55yf5a6e54mp55CG5LiOIFNESyDln5/lm7rlrprllK/kuIDlrr/kuLvvvIhUQkTvvInvvJvlhbHkuqvorr7lpIfkuI3lm6DliIYgMyDln5/ogIzlpI3liLbov57mjqXjgII8L2Rpdj48L2Rpdj48L2Rpdj48L2ZvcmVpZ25PYmplY3Q+PGltYWdlIHg9IjI2IiB5PSI4NDUuNSIgd2lkdGg9IjE0NTQiIGhlaWdodD0iMjYuNSIgeGxpbms6aHJlZj0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUZyZ0FBQUJxQ0FZQUFBQkpocFZyQUFBQUFYTlNSMElBcnM0YzZRQUFJQUJKUkVGVWVGN3N2UWY4UGtWNTduMGQ4UmpCbzRMWTNtREJHaXd4SmhHd2d5aGdlMFBzaW8ySTJNQ0NxTyt4SVZoQnNSZXN4RmRBYkVCVUJBRUxSeFQ3aWNaZTBWaXhLeGc5S3NuWlMyWjEvOFAwbmRuZDUzbXUrWHpJei95ZktmZDhaM1ozZG1idjYvNXZVQklCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQ0JEQUwvTFNPdnNvcUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lnQUpIQ3RTU0FDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lwQkZRQUxYV2JpVVdRUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFMWG1nTWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFKWkJDUnduWVZMbVVWQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCQ1J3clRrZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUtRUlVBQzExbTRsRmtFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJDQ1JBTStqTHdIZ3dzVDh5aVlDSWlBQ0lpQUNJaUFDSWlBQ0lqQVBnYTBBL0NlQS81cW5lYlVxQW10TmdOZlhYd0Q0ajdYdVpWbm50RzlReGsybFJFQUVSRUFFUkdCSkJHNElnUCtkcVBlSkpRM0xMTFpjSDhCOUFMd1J3SGRtc1VDTmlvQUlsQkRnT3l2UGMzOWZVbGhsUkVBRVJNQVEyQmJBMWc0YTV3TzRRSlJFWUVJQ2x3YkEvMzR4WVp0cVNnUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFd0JDUXdMV21nZ2lJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJd0NvVGVFaG4vR0dPRGh3RjRHVU5PM1psQUc4QmNGMnJqWDgzRHZ6ZmE5ajIwcXZtT2ZRdUFGNEM0SE1BSGdYZ0QwczNlcVI5LzEvbkpIZUVZeTdjSE1BUFJ0YTlUc1V2QStEUkFQNEt3TVBXd0ZuK1RnRHVaZzNRMXdDOEhNQnZSd3djNTlOanV2dkxjVVlNNUtzU2loOUJjOWxGL3g3QWh3QnNZNW41SmdBUFhyYnBzazRFUkNDRHdCMEFIR1BsUDZjVGU5b2Z3Szh6NnFtWjlmOEI4TEhPcm10WWxmN1BUb1RpeUpvTnFhN0ZFL2p2QU80TjRFVm0zVTVST3FXTEU3Z1JnRmViOWRtL0FEZ3ZBUklGWFI0QjRPc0EzcDJRWDFuV2p3RGZqZjhhd092TmVtK1A3anI3MGZwMXM3aEhGTUxrdmdHRjllOGhzYU5pamlvb0FpSWdBaUlnQW5NUjRIdmxvV2JOeTBBZVhPdDhmQzVqMU83c0JQaHVlVHlBZXhsTHp1eis4dXlPYzBKQlVHY2ZIaGtnQWs0Q1BMUGpOWHU0MmJmZytaMENuNjMzWk5FKzlYcVA3NXk5NDdjekh3REFQZFJoK2gwQXpydXo1elJ1b1cyN0JNSEo2MmNMdVJmdkN1RHFGanVlWjUwRjREY0xaZHFiMVgrN3c4QU5QSWMvby90KzZWU3pUei9tRzQ3VzNhWW85M2FPYTJqS09USDgxb3Y3MlBkZGdmRnVQUzZxWHdSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRUlKT0FCSzR6Z1NtN0NJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNGUW1RS2YvdTNZTzNrK2ZVZUN1Y3BjbXErNHF4b0ZxSjZ0RkNncmYxamdvdFRLR2pqd25PQ3AvcFJId25jc0IyQ1cwL0wvTUhMdWdGUXhUNzlEWmljTE9UUC9aaVNmZUVRREZETlk1U2VBNlBMcGJHZUZFaWdKZXptUWxzeGNzeEVHemRHNjJ1TjcrQjRCVEFPdzJNSXJPbHkvc1dEMERBQjFibGRhSEFKMjY2VlJyZjc5RGtYU0tuQ3VKZ0Fpc0I0SC9GOEM3cks1TXRUN3pFZlFKWEZOZzlDU3IwQzBCSEFEZ3laMXcyUS9YWTBqVUN3QmNuL0U5bEd1TTZ4Z2lYSFB3UGNlZUF3SjJrVEFiMTJKOStnYUExM2Jzam5VRXRPRnovWGJtZDdLZDR2MVVZN1E4QWxjelFiZUdBWEZlQitEQU5RajBNNVkyQXg0OUg4QS9EQ3A2cEJHUkgxdTN5b3VBQ0lpQUNJaEFpSUJyTDQvNStVeXFIWkRFOVI3WXFxMnBSNTJCWENpQyttd0FGRFh1RXdQLzdRbmcyMU1icFBZV1FZRFgwY2tBTG1GWjh4VUErd0RnWHlVUkVJRjZCQmlBbVVIS1htck9xM1BFUmlsWWVqQ0Fnd2IzY1FadXZrMFhlUFBjZWlhcXBnVVMwRDcxQWdkbFRVenlyYlA1YlFEWGplc2VETDFrR1A5L0FBK3lDczU5YmpRMHgyWGZ2d01vQ2ZETzk0ZHJkOStMZkhHQ2IwTmMzMXIwL2VKY2ZFWEpZRTFVWnM1N2RIOWVkQVNBL3ZzN2Z2TjJUNTBYVFRUNmFrWUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUUxb2lBQks3WGFERFZGUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFnWlVqc0F1QTB3RnMyNG1MZlFyQXZRQjhhK1Y2TVovQlBrYzVDaXNjMnRBNTZ2Sm0zSGExdXY0ZlJsajcwL01oUVF2QjNkVHV2QmpBNHh5WlB3bmdUcDN6NGs5VEsxckJmQks0ZGc5YUwrNUg0WGRiaVA0WEFQWUc4SWtWSE8vZTVCYlgyeTJNY1ArbExDNUxkN2hjNFdHYzFYU2YyTkgvQkhEa3JKYXBjUkVRZ1pvRTVuUks5L1hESjNCdEM3c04zMWQrQW1CZkFPOXJ1TTZ1eVYxMStRbmNHTUF4QUhaMlpGbUhOVnJ0c2ZjRlZpSXJpajk5ZnRDZ1M5U1lQNzhmQUFYa2YxbmJPTlczU0FMN0F6amFFbnlrb1F3QWRXOGpRclpJd3hzYmRVa2piRTBoTlR2eEdiTjd0eS8yaGNZMnFIb1JFQUVSRUlITkppQ0I2L0hqVCtHem96em5BS3o5alFBZXRvSUJQVzdTaWNSdTF3V3FvYWlnVWo2QkszZG5ZeDhBY0NOSFVRbGI1dk5VQ1JHSUVlRFpHODlrSDJzeU1nalhJU1o0Nm9XeHd0M3ZkaEN2dm9qT0pSTGdyWGdXN1ZPditBQXUxSHcrLzgvcWhJT3ZhTm4zVFFDMzEvZFAzbEhiRklGcnJyUGZDdUQ2RSsyTC9qMkFEM1Y3a050WTVCbTg5VmFkcURqbjVWTFRuUGRvQnM0Z041NGREaFAzYXZjQThLT2xRcE5kSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ3l5TWdnZXZsallrc0VnRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUjJBd0NOd053bXVYb1JVR2YreGhIOEZ3Sy93UEFaWE1MVFpDZmpyUVVOazV4cU0weDUrcUdFeDF0aHVrSFJtVDY2em1WWmVhOUk0QlRBZGpuclc4QjhFQUFmOGlzcjJiMkZvSzdxZmI1bk1WWS9wRUFLR1N3cmtrQzEvNlJwWkRmMndCY3dwSGxiQUIwMUZ0Vm9iOFcxNXRMV09Cbm5aam9yYnZudzVmVzlRS3krc1dnRDFzdnNLL25BN2lnc2wwK1lhVUhBRGkrY2x1cVRnUkVZRDRDY3pxbCszcWRJbkI5VXdEdkFzQjE5ekE5QThBTEFQeW1BQ25YejFjQVlBZHlLS2hxcFlxUUZjV1FsNUlZc09mZFJwelpaZFBYQU93SjROdExNWGhtTys0TDRBU0hEYTczdjJ0MlFobG5kcy94NnpueVB3WEFFUktJbjNrMHAyaytOQTgyWGR5SG92QU1sT0I2RHB4aWhHNUtuaS9Uakt4YUVRRVJFQUVSV0hVQ0VyaXVNNElNNnNJMXJ4M1FzSy85Q2QxWjFRdnJORFZKTFhjeCs5Zi9IUURYL2lkVmF2VUdIc0huU3RWZnJKcmZkeUtTM0cvblh2S1V5UmJhSGJhOTZXdmZLY2RCYlcwV0FkOTcxY2ZOZHdheC9Sd0dQdVA5Z21jeHcvUmxFM2pvdk0zQ3VWRzkxVDcxUmczM0pKM2wrdW0xbllqMWZvN1cxdjM3RUx2TFBFL1pxd3NxK1o0dVVPaFhFd0srckx2QU5jLzZuOWg5VTNYNEFOUVVhMFBmTzk4U3Z1V0tYWlJ6MzZOOTdCUUFJelp5K2wwRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJHQUxBaEs0MW9RUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUWdUaUJYbUNOZ2o3WHNMTC9PNER2QVBpZGNSYjhyM2gxeWlFQ0lpQUNzeExvUlpDM2R6aWZVMXo1SzBhSXVJVWc4YXdkWDFqakliR2ovK3llTGZzRG9FTlR6blBGNTJ3eWQ5ZjVyTHc1QUFwUDEwb2hoL25XempWMHhEb1p3TjVXWjdnVzJMMzc5NC9XNm1SaFBTMEVkMU5OQ1kzTEZNTGpxWGEyeUNlQmF6OVZPcmErRXNBQm5pelBCbkJvNXYydXhSaVcxRm43ZXRzT3dCa0FHQUJobUZiQjRiS0VuNitNeTZHM1p2MmxkYlY0dmxEbzhqa09nLzdCQ0krVzJxcHk2UVI0ajZMWTd1V002TkFsQjBYL0Q0Qi9NKy83TFFUTzA2MVV6bFVuTUxkVHVvdGZUT0I2cTA3VW42SmtGT04xcGZjRG9Cai9Eek1IaCsrakZERGRMYlBjcW1kL0U0QUhMNndUdXdBNDNTRm0xSnZKTVdhZ2tsVU5SRklMdCsvOWorL3FkKzdlZGQvcmVZN3puZEVPOE1KM3hqc1lFYWxhOXFtZTVSSUlCZnA1SFlBREU0UnVsdHU3Y3N1NDFucDU5L3g0aEtjS0JnMDdycng2bFJRQkVSQUJFUkNCSUFFSlhOZWJJS0dnRlF6dXcvT1RUOVJycmtsTlBNL2dlOW9iQm10M2lrVFhFcm1lK3N6dVAwencxMDgzb2VXdmxQdVlydmNmdmpQZEQ4QmJKN1pIemMxTFlNZHVIK0hnaFFhd2JFR0dndkxjTzVzeXFGa29hQm1ERDl3OUlWQW43Mzk4TCtON3FaMWFuSU8wWUYrN1R0ODV3YSs2UUV4Zk5HTmNPd0JxN1Q2azFMZnArOVQ4L3BOem5HZENTZ0JGOGJrT0dwTjgrMStwOTZNeGJTK3Q3UERNbDk5OGZRckFHN3R2alk4QndQTkdPNjJ6d1BWbHpmcnc5bzUrdHp4MzRET1NaeDY3V3UyRzl2S1hOSS9tdmtmek85TFRPcEgyblMwbzYvNnQxNUxtZ0d3UkFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUWdiVWdJSUhydFJoR2RVSUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJLQWlnVXNEdURVQWZqQk1rWkpyTzhSSVFzMzlITUQvTnNKMDd3YndWU01VVzlGRWIxVlhOTFlQQmJtR21iOEE0RXRUR0dMYW9BQU1oVDR2RTJqek4xMmVzd0Q4ZWtLN2JtQ0V5MXhOVHMxb2ltN3YwSDI4Znd0SFEzU2UrTkNFUWtVcDh5R1ZCMFdZT1pmcE1FaEg0eFlwWkMvbksrY3Q1Ky9TRXgzeC9nYkEzUURjQmNBTk94RkYvbHRxWWw4L2J4eEFlRS83YkVQbXFUYlZ6RWZITlRyaDIwem9iSFJPZ1ZoYmptMjhONzdhaU1MNXlyMndjM1I2Y2dienFaM2xVL3ZiUXVDYURra2ZBTENOWmNRbkFkd0pBQVhhVzZVOWpZaVpMVmIyZGdEM3p4aXZWdmJWRnR6TnRmTzY1dmxDMFVRN3ZkUTR0dWNJdCtlMjc3dXVjK3ZKemMvNzdMNVdJVHEwUHdrQTE0ZFRKejRmenpiUHlxbmJkclVYRXZWZlphRy8ydGNiQlE4cGNHMS95MEVoRUlwY2IwcmFKSUZyVjEvbkVxUFpsUG5GTlJqZjllL1RQYS8yQUVCaCtaekVkYzBIelRYSmQ0TGY1aFEyZVdzK3Ezb1JiZ3JRVGltazR1dDJxRzk4ai9zd2dEOFVNUE1WNFRyK3RwRnhQTStzN1MrczJHNXVWWE03cGJ2c2pRbGNzd3lmUjdUOUJNZTZtNzl6VENsa2xSUGdSUUxYdWJPbmJmNlFBQzliM21RUjNwNDg5OVI0djcrVU5SVC9xeE1wdWF0SE5Db1UrSWQ3ajN6Ky9LanQwS3IyQlJBSUNUbHozNG52a085YWdKMXptQkRhTi9obTl5NUw4WnR2eldIWUJyYnBXMHR4M2NSMTI0OERUTGczeDZDd1MwdXhOV2ZOYzRwK0xjNzFac2w3UVNxN21qWnpMYzVuRWM5VytGL0xQYnFVL2wyMTJ3ZTVwZU1jOXZ0bWpUbTNmU2w5VUo3VklpQ0I2M3JqeFRVdkJTS2Y2Nm15cFhCZGpWN3dHZmpVN2o3NERFZGx0VVN1cHo2em0yTlBNYlR2ci9mSkdqTjE5ZXI0ZTNOR2FKL2ZybDVQMGl4dWNRWWVhcG4zM2lkMkF1SkhPakxsbnJYNTlqczJSY1NTSXFoN1paNFQ4UG5BN3hNWTFKY0J6MXA5cTVRMis4cHliZm8rdFc5UHZJem02cGNhRzVUeGFnQW9aTDJUaFlMdmNjODAzNXF0TXFYdmROOGVVUVE4SmZGNzR4UE4rZU13UC8rTndWTmM1MkxyTEhCTkJyNGdLUHlOMzhvOXV2SjVJZXYxUGRzNGpnekFzL1Jnbmt1NFIzTys4a3pRVGxOODY1VnlyU21QQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lqQUNoQ1F3UFVLREpKTUZBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUmFFNWdLd0IweHFjVDR4MHpCYTFqeGxFQWx3NEJMd2J3bFZqbWtiOGZCT0RsZ1RwT044SVpVNG55cGpxR1BBRUFSVnluU2lGblVqcml1cHpCcHJLdGRqczhCK0NjT05CUjhWTG5ReTREQ2dLZEJ1RE5SbWl1bGhOWmFQNU83YWlZeTRUalRpRjNPamRTYkRkSDBEcldGZ1Y0M2dIZ1JaMWp6aWNXSUlBUnN6ZjJ1KysrK1dVajBFOXhrcGFKWS9NOEFJY0VHaUh2aHlZNjJrenRMSi9LcHZZMVExRzhrd0JRYUhxWXBoQ0lvcURNeWNiNWFkaDJydE53S3J1U2ZMVUZkMnZad0hvb3ZFbFJlUXJudDBxYjVqenY0emlIbUVWc1RFTUNpbE9JMDhmc0svbTk1dlhtVzdkTjlVeUs5Wi9CQXlqQzF5clJzZlFOcHZKTkViajJPVHVmYis2VkRDeWlWSWNBcjY5ZHVxb09NKy84ZFdvRnVQWjRqUWxtY0VGR3BTMmZWZDhBOEI0QURFNURVY0tXUW51dUxvZjZGaEtEemNEM3A2d2hRWmMrRTljZWRGcm51OHVjYVFsTzZYYi9Vd1N1K3pKOHZ6ekZCSUd6NitFN09OOVhqazE4UDVUQTlad3o4ZUp0ODUyVW9qd0hCTXppZXVjRmllTzdyTjZOdHlhMHJ4WUxRTEs5MmEvYTJXRkdLd0dQOFQxV0RiVUorSVIrMkE2ZlRYeEdMU0ZBUmUxK3A5VEh2YkNqUEJsMWphUVFISjhudEpaS3VmY3Y5YjB0dHVaTVBiZktKY3h6Q3U0WnZzd0U1Nndwek56S1p2YVJRdElVSktQbzFwUUJVWHUrdnJVSTM3WHViZXpLSFF2bEY0RVFBUWxjMTUwZkZBZmwvWVBCS1Z6cEtRQ09XT2k3Uk94OGp2dnJ2QTl4ajZVMFRYMW1OL1daQUJtK3RndE1zcDhERUlOQWNQeDVQcmlrVkJyRXV2WGUrSklZeFd6aGVvZmZadmhTeTMzUG1HMXovRjc3RER6V0IrNXg4enVmYlIwWmM0VW5HWlNKKzNrVXNyUlRibDB4dTVmeWUvOXQ0Tk1ybkJQd3V6c0dTWGdGZ0ttK3dhdkJjZFAzcVZ1K1c5VVluNm5yR0NOd25iS3ZQSFYvYXJlWHcrZmEzZmRMSCttRW14bkVhWmdlWWM0UlhiYXR1OEExOTUwb2RQNDBSK2RidmZNL3g2eEI3U1lwcHMzNzlkTFRFdTdSdmpPOEtiNzFXdnI0eUQ0UkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVJRkVBaEs0VGdTbGJDSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FtdEpnTTRyRk5xalNNczFHdmN3NTZQM0VsUG9RRXBISmdwMSs5TFVIeHFuT29iOHhBakpmcUdrNHdWbE5rbmcrbHFkVS9IWkFIWndjSnI2NC8zVStWQXdwSDhxUXNjeENuby9IOEJQeDFUVU9aaXNvc0ExejMwb0hFdUh3NXVPN0grc2VFd29KRlorQ2IrSDdwc1UrT0kxVWxPSXhOZG5Qb3NvNmhNUzEvK1VFUlg5YmdUYzFNN3lxZU5ZMjdrM0pJTDBnODVCNmcrcGhpWGtld2lBOXczeTNkMkl2TnZuckhUQVl0djhXek45MjZ4VktKS1RtbW9LN3FhMmFlZTdTdmRzUHd2QVRvNEtLR0JMUjc2YTR6UnNadE9jNTMxak5MV1lSY3BjQ1FsZXNQeXp1MnZvMEludXZURjdMMnV1ZGM1bE9xTnlQZlhwVHF6alcxMVFuR0V3alpyWG0yL2R4clhOWTJJR1QvQjc2MmZNOEgxcHFVSnB0WVBoK0J4RWF6ODNKNWdlaTI3aWhnRGUyQWtTdVFSR2F4aGVNbDVUUHFzK0J1QzVBTjVyM2I5cTlOMVZ4NVFDMTZIQUNiU05leUQzc3RaeXJmb2RxM2NKVHVtMmpkc0JPS01UcnI2WjljTS9HSUYwT3orRkdZNExDSmR4UEJpRUpwWWtjQjBqTlAzdklTRm0zajhwK2hON0Y1M2U2bWxhdkpGNXI3bWkxUnozTVBjQUVIdFA0eDROM3ljdlpaV2ZJampUTklUVVNncUJCeGpSc0Q0djN5ZjQzc04xUGdYMk5qV0Y3ajFMQ2lLMnp1UGpXMHN4cUFVRlBXTWliVXQ5YjR2dFcwOXhUc0ZBVlh4L0pNc0xLMHlpS1d6dXpXU2dYb3JSdm4zQ2U1UlBJSGNwd1dvcURLR3FXQkFCQ1Z6WEh3eWYyQ29GNUJoYy9GZjFtNnhXWTB5WWtmZWh1d0E0cDdERjF2dXB0bGxUbmdta0JCMHJ4TmEwV01rK0hnMmFlaXliUWhoWmVXeVBmTXA5ejVGZHFWSzhkRTZWTkI0S0t2Qk5zMmZITTZ5YzVCc3Yzays0NzhIQXBPdVNibW1DckxyT3JzZjBrUUVuOXdmQTk1QlZTSnUrVHozbHU5VXF6SWN4MzdMR3ptZFdvZjh4RzNQNE1GakFDVmFGc2JYWlZBTFhPd0k0dVBzbWJXdkx2bGNCK0V3QWdzdSszT2NlbjEwTXlNdDljanR4cmMxbnpiL0dCaUx4ZDk4M1NsTi9MNTFvcmpQYlV1N1JkK3dDUjU4S1lQaGRITTgwK00wS3Y2ZFVFZ0VSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUlFZ0FRbGNhNEtJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWhzS29IV0lsYzIxNXlQM2t2RzVOWUFQdGdKQTE0eVV2anc3dmZEU2hvb0tKUGpHRUpuK2Z0UEpMaTFTUUxYTGdjS0R1WDNqUFBBdVFYaldsb2taejZVdHRHWG8xQU1uYVpmTW1KT3JackE5ZFVBdk15SUlJL2xsMUkrSmhTU1VzZmNlVzVoaEtwc29TbUs2T3dPNEtNVEdzZ3p1d2NicDhwTGVOcjlEZ0NLellVY2pGejNOd1lSb0pqS1VKQzFaZGV1MURrZzdXTTV1dVE2T1lYczg0a2x0T3JUVU9BdkpMN1VxdjBTZGpVRmQ4ZjA2eUFqMkdYWDhWa0Fkd2J3L1RHVkI4cHVtdk84RDBYTVliSVIvbWkxMSswY0ZUOWtBa2tNTTFQb2hNTG5iNnNrL2hRMUpKTEJ0UTQ0MzZ5Zk9JZjdWUE42NDFxWXdxSEROTWN6eVllbXRZaEhUT0Nhd2d4bkpnNnM2MWxFbHUvSUVPamFzeE5GcHNQdk1NWEVPeExOKzFNMjMzcVRnUzMyQXZEejNBcVZmd3NDRkNuaXZIMVdZeTRseitvNW5sVVVLS1RRTmQ4WldvcExUU1Z3SFZzVDB0R2F3b3duTmg3LzFPcVg0cFErdE5jbk5PMFR1R2JaeXdDZ1NObCtWc2RmQitEQXhIY09DVnlIWjgwVnpIcUQ5N0FwMDk4Q2VQTGdQWTdybnFPNjYraUxFeG5COTFVR0ZQbFpwTDBhOTgrY2RUTDNVSi9oc0NrMWFCemY5Vi9jUGRNZjY2aUQ0cWRjYjJ5cWVQaEVVMnNSelF6dmU1c3VHbThQaUMrSUdQT3R3OTdqSWlhZ3h3amZXdXByNXQ3RWdHdXhKSUhyR0NIZ1hWMUF2SWQzK3gwL2pHY041cGp5YktVM2hPdnBWNXRnWkF6cTF6cngvZnY5QUs1dE5aUXpKMXZicVByWGc4QzZDbHhmMmdSdHZkNE13OFExNzk3ZCtkYlZCMjN6Zk8zek05alNOOG4zQ29yMVU4d3VsdmlleS9zZGc1SzQwaGl4ZmQ5OHF4R29sV3RNQnE0YXBweDNuUmlYMk8rckttcFpzbzlIRnEzM3htTzhsL1I3YkkrOHhudjdrdm9iczZWMFRzWHF0WCtQaWNvLzBIRytsTklHdnkvalBaQUN6WGJpZVF6ZjJTNUlxV2dGOHJTOGpybDJKa08rSTAwUlFIME03azNmcDU3ajNXck1lTFV1Vy9vdHF5OG9ZR3Q3cDY0L2xRL3YwY2M0emswWUpJRHI1Rjk2REo5SzROcjNiQTZkQmRIa0dnTFhyQ2QwbnNkOUFLNHJYWXk0M21WUTh0VEViNmZmYW4ycnhyS25tYjJaUDZSV1ZDRWZ6L2gvVzFEUG1IczBuME83RnJUcEtzTHZLUG5kMzdibVJ6N25LRlFlQy9pWjJqeXZqVGVrWmxZK0VSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQ0IxU01nZ2V2Vkd6TlpMQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlNSTdBMWdDZTJUbmhQR0ZjTmRtbFV6OTZ6NjdZZkpqOWNpTW1GQ3RQWVpyZEFGRHd0SFhLZFF3cGRicks3Y2VtQ0Z4enJwOXNuQ1ZzUnE4MGpzNVRPbGZsem9mY2NYWGxQd1BBL1JJRWtseGxWMFhnZWl0ejdWTjRha29CckZVWG1lRVptZSsrZWJvUkNxY0k0SlNKTnQwVHdQR0JzYVFqL2IwQXZNOWpXRTJoMWRLK3U1eWpham4zWHQ0NHpkeW0xTGlDY2tPbnJwYU9yejdUU3RndFlSNndQMWNHOEFFQWRIQmsrbkhubUhhd0VUQnVLYmkrYWM3enZya3pwWmhGN3FVMW5LT2NDMDh6OStTcDc3c2h1eW1vOUpIT3NmK3FnMHl1NjdIVzllWmJ0ODMxVEhLeGFYMFBqQWxjNTd4UDFYZ1d1WngyWStJZHVkZUNhNTZ4amxWZlorVnlhSkdmYTRiWG03VlZpL3FIZFpZOHErZDhWdkZlUzdGV2loUzN1TzlPSVhCOVRTTjRIeEx1NGozckJRc1NGQm5qbE41cURwY0lYTk1Xdm5jeW9GUXYraHNTSUhEWjdtdTM5ajIyRmJlVWVsM1BrTlRuMkp6M2g1Uyt0Y3FUdW5hdHdTZTFMUXIwOFgyR0FWcUc2ZXRkd0pZOU91RWlCcUZLU2ZaNzBiRE1TODA3MHBUN2N5azJyMnVlR3ZObkZka3NlVzNKOXlBR09icXJCeXozd0Jpa1Jxa3VBZC8rR29NQzNjRUVIRWhwVVFMWEtaUXVlbDdFZ2hiR2FwcmpiS1czaVNKR1BFL2kzazNMUURsc3p5ZVd5dUNOREY3VDR2MGx4bDYvcngrQmRSVzQzdFJBUXI0Wm1ydFh3MmNqQTJUZDNsTWh2NnU0VTdkbVlWQzZuT1NhYjdtMitkcHo3VE9rdnV2azlNR1ZOeFowYkd6OUxjdVg4bSs5Tjk2eXo3WHJqdTNmK042N2ZsMzR6VVp0KzhmVXgvTWkrM3VNMGptVmF3ZlB4dmw5Z0IyNG0vVzhIUUFEcUphZXZZYUVhdmxkM1F0empWMW8vdGJYOGRJQ0x1WThQK2JlTjVoeW41cGlyYnlQTWNqZ2xJbjNEdTU5WE5IUktNWGtHZVIzamxRaU1odGJOODNSajFadHB1N3BYOHZzcGV4Z0djS2dzenhMOGFWTkViaU9CV2w0Tm9CREhlZDVyZS9icmVZTjY0MkpoN2U0Unk5MW44N1YxOVJycStVWXFXNFJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFSUdHQkNSdzNSQ3VxaFlCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFVmdjZ2FzWndZUmJ6R0JaeXc5eitZRThCZmdvOGhSTEZFeTVNNEQzeGpKVytEM1g2ZjZieG5HMHRlUEdwZ2hjYzU2ZjVYQnlvMURGN3AzdzlVZXd4dnZRQUFBZ0FFbEVRVlFyakhGT0ZibnpJYWZ1VUY0Nkc5OE53SGN6SzF3RmdXczZEcjBHd0gweSsxWWorOXhPYm1QNzRITXdZcjBVUlgvTDJBWkdsTCtMZVZadDQ2bUR6cWwwVXFYQWp5MkNWVXRvZFlUNXFDRXE2bXFmVG44VVV6bGdqSEVGWlh2SG81QnpiMEcxeVVWS0hLUEh6QU02YzlKSnVwWmdQc1ZuS0VqMUxuTmRsVHBYdTRCUlZPTERuY0RPSDZ3ZmFUdjdjWWxreW5VeVBzcUkvUXhyKzc1WmQvMm9UaE5adGRDUittY2VoM1lLVmgyVFZWdmR6SmZ1cnVjcm1TcC8zZ1dldWFCdTlkSGFHQ3lBOTlIUEJYSzY3bVdjYjF4SG56OG9OK1o2R3pidlc3Zk4vVXdhMnRqYWlYUVRCYTU5WWg5dkJ2Q0FCUW56UmkrcWhXVW9kYTduZmZNSG5STTEvekx4V1hLWmhMNlZQS3VYSUxENVpmTWU4VzhKZmN6SjBscmdPbVY4WDJlQ0FOVmNkK1F3Y09WZEo0RnI5by9mSEI1bzF1WmNMMzg3QTlEVUF0ZTBsZGV6TFFERU5jaHZNK3pPeVNxQjZ4eGFGK1ZORldLcmNmOU1iZXNnRTRURjdzM2gzVDhjbHRsRlhpY01RamQ4UitFOWlnSW5MeGtoUXBWcHhzWm5yekYvVmhIaTB2ZndYRUp0WEtmd09mTkJyWW1yVHprK0YxOE00TEdPbXA4QzRJZ001a3NWem9uTitUbk9LVXFGVWZ0aG1zTm1lNHF3RC9zYVljVldnUmxDODNOcEFXeXFYNXlxY0RJQ0VyaWVEUFdzRFpYczFjU0NhWDJ0K3g1ano4ejMzM1VVdUk1eG1uWGdFeG92bVJ1c3R2WGVlSUxwaThsU0tuQWRLN2VZRGdZTWNhMS9TK2RVVG45RDF4MzNzMi9iblNjd0dGZHA0aHFNNDBNaFZqdnhQRzN2N216c0U2V1ZMNmhjNkRyK2d2bm1qdjM4NWNCbUJpM2J6WHhmeGY4ZFM2dkFTL3ZVc1ZGczh6dS9WLzBZQUZzQU9YV2ZzbzFWK2JXR3Z0bFo0cmxNZmcvTFN0d1h3QWxXVVg3RGNqdnpQWXV2MWswUnVHYi9lUzUwa2xsUDJ6eDhBUUpXZWYwbGdldnd0ZFR5Ty9xeXExaWxSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFcWhLUXdIVlZuS3BNQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJnd1FSdWFzUVZyNTVoNDFjQW5BamdUQUJmQlBCVEFCZGE1WHNSeFJ1WUQ5TXBlbmN6UnhzdFA4eDFmU2dmNmlhRld4L29FSVRNUUpPVXRjVHBmZ3FIaDAwUXVPYisvOHVORUlnOVdLY2J3ZWZmSkkxaXZVeXgrVURuTzF1azFHNmRRa0NzSjFlMDlQMmRpT1U5TEdlMFdNK1dMbkJOQnlpS0k3bnVONzYrVVdpVm9zZ1V1S2VRSFFWWGJkRzNyYnE1c3oyQUhZMmozaDJOMDU3TlBDWVVFdU03OSs4K29Tb0s2RkFBL3J5WkRhVDQ3TnM3b2F0dFBYYjRIT2xyQ2EyTzZYNExnV3ZlMDU0STRFaUhZVDhFY0tyaitjeXNsek5PdDd6di9hcXdVNi9xUk0rNUhuZ2JnTHM2NnVBYXdSV1lnVGFUQmE4MUJoWW9UUlFvcHJnUUhXSlQwNWg1c0VxQ1gwdTdEN1VVcTBnZCs5UjhMdWZsMUxMcmtDL0ZXZGpGaU84RlhIY1AxeXRqcnJlZXBXL2R4bnZMUDVybjlkVGNYYUtmZk4raDJIOG9iUWZnK2Riemk3eWUxcjEvZkNOUzlqc0FQbTd5akJFR1pSVTFua1V1RzJxTGNQQjVmNFlSaWgzaTRmcU16N2RWVHhURWVQWEVuY2dKaU1FNVNiSC9kM1pDYlY4TmlJdlM2WnByWXdxRlBOaXN2NGRyNHhJUms5RHoxaGJhRGlFY0Jnd29RYzIySGcvZ0ZaNjFWRW1kTFFXdVU4YjN1Tzc2ZVVTM2R2eDFpZkVOeTZ5U2NNZ2gzVHI2UlFrcytQemltT1N1ZGFjV3VQYTFWeW93a0lBR1k1NWpxN1FlVDJHUm1pZGxmZVo3eHFlMjBlZExhWXVpUlI5d3JIMitad0lDblp2WktLK1Y0MDN3SHhibGZzNWpDb0t4WlRhcjdCYUJUYjIrbHZidWJFL01TNW8xNC80QXVLN2kvZy9mdmV4ekdFM29PZ1JjZ3Z1cytXd0FYSzhNeGR4aUxYSzljTTlZSnMvdkhIZnV2L3RTeWxtQnIrdzVBRGlmZk92QjBMNC8xelhjUC9lVlpiQVY3c2YvUmNFNVJRbmp2bzgxemxaWVY0eDd5bkJTSUowQkdscWRML21ld2FzZ0ZwakNUM25tSnlDQjYvbkhZQW9MU3ZacWFOY3VBSGllbEhzMjUrdFR5ek1EMXo1RHlydk9HUDRwUWNkWVA1K25mQmJ6Zkg3cXhBQlgzQnZpdDBHdXhETzl1eGNFM2VSZUU0T0J6Smxpei9HcDlwUmplNzYrOTY3YWUrdHpqTVVjQXRleC9WQis5OFU1UHpiNTFtQ3M5NVBkMmMyZHpQZHlZOXVaczd4OVQvNk1FZlhtZHdheHZXVHVnL0tNN0hrQStFNFZTcVgzbWFuWWFKOTZLdEpidHVNN0Qvd1VnTDI2SUZROGwxMTZDbjJ6c3k3M2laSXgyTnJzOVRJWXdERHgrenllanc4RFo5djFjMytZZ2QrR2lkOG1QYnN3T0NmdlpXYzUzdGQ5eitiWUdVbnQ1OTdmbWoxMzExcmI5UTJjQks0dm1obXBlN3RMRFVUbnVxNWFma2RmY2gycmpBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlRR1VDRXJpdURGVFZpWUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlMSklBSGM1UDYwU2JycGhnM1k4QkhBWGdEU01jZENneVJZSFV4d0tnT0N4VHF3OXpmUi9LczAySzRsR0l5MDZsWWl3SitMYklFbk82ZDlWSGdhMjdHVEh5M1BaUzgyK0N3UFcxakNqRkRnNG85d05Ba2ZPcFUwM0JhQXBVM1JyQVB4a1JqUlRCYXpxQUhBcmd2eEk3WHRQZXhDYVRzMTBUd0hzU1JDWlpJWVVtanU2Y3NWL1NPUk5UT0xJazBYR1NEaStQQlBBQUl6Q2U2a0JSMGw3ck1uVEFwb1A2cm82R0R1Lys3YkRXQmlUVzczdDIvY1E0a2RMWnpVNDFoRllUemZObXF5RXFhbGRPZ1hvS1ROdlhPcDMxOXhnSW9nN0wwY24wcE81K3Q1TVJwbmxvcGtqUHNDNDZydk02c3RNWFRQc1VpeDhtUHB1ZjA3VjNNSUFwQWpmVW5BZXJKUGkxdFB0UVM3R0tzZGVsWFY0QzF4Y0oxWDQ2QVBiaERtRmVCZytobytrdzFianZodFp0dGNjK3RiNllRNnV2SHRmNnFVUllaWXd3S0cycjhTeWFRdUI2M2EvRk9VUkxLRkJEUWJyUTkxQVV0bjVZRjhUbGd4bnZCc001ZnhralVFckg5T3NZSWNhYkE2QUlYMnFxTFFMTlBRZ0c4N3FsRVNia05jdzFmR3A2SXdBR2dJa0plYVRVVjd0dmZac2g4WVErVDBsZ281USsxY2hUSWh4QzBRdUtzTGRLdmdCU25BY01zakltaFlRbEpYQWRKcnRLNi9FeGM4UXVtN3BlcU1FbnBTM2ZPMkR1M3RLd253d1V3c0FQenhqeERLckpmQlBycWpGL1ZwSGIwdDZkWFF5NWgvTTNKdkJJSzlIY1ZSeTcyamI3Uk9zb1FzbDFCd1dZcDBwejdyM1hiUHNxSmpBVmhkbjViaEJMcGU5SU5XMm1qWHhYWUozY0g3OExnSDBDWXE2dVBuSGR6WE9DVm9HWmZFTHNTeGNMakkyL2ZsOEdBUWxjTDJNY1dsdFJLbkJOdTN6blViM05PWHNQTGM4TXBoYTQ1dGtxdnkvb3YzMkpqZUVjZ1FsaXdhRjVwc2ZuM3JkanhpLzA5ejFORUd2WGR4SDh4b1pqdzJmbDNHbEtnZXVwOTVocUMzM0d4aXEySDhvOVhlNXoyd0hOWS9YNmZ2ZXR3WmgvanZQdTBuNzR5dlgzWkFZOFA3QndiNFpqd2lBL0RHTG0yMy9uOTBoM050ZHI3VDdVcUUvNzFEVW81dGZCUUtNdmRCUnpuVDNuMXo1TkNkOGFhWTVuL2pROVRtdmxGa1pVK2xKcDJadm04cTJCbHlKd3pjNzc5dDM1MjlzQjNIL3dYSlBBOVVYVEpYVnZWd0xYVFM4dlZTNENJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJcEJEUUFMWE9iU1VWd1JFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVZQlVKVUJ6aGxFNWcrdG9SNDM5bGhDaFBNSUt3dGZwS0ozRUtYOUc1aGM1RnRkT05qZkRBdGxiRmYraEV2U2pVU3RHVVN6b2FmWFFuK1AySzJzWlk5WlVJWExNS24yQm9MWE0zUWVDYTRtUjBoTEVUbmJVb3ZuNWVMWmdaOWRRV1llaWJ2cHdSa21XZlF5bEZ3R2hZdnBXOUdjaWNXYTlxaEg1dkU2bUlqb3dVWHFLd05lOXZ0Uko1VTl4elorTllja0d0aWllc2h3NitwenFFRCtsNFJhNmZuOUNXV0ZNM05ZTC9GQ3hraWptSDFSQmFqZGtVKzcyR3FPaXdEUW8xVXREZGZzNHhEL3Y3QWt1Y2t1ZWZEd1R3ZXN1eHROVHhkaGNqaUc2Mzd3dkl3R3YwdU83WmZQdEJKeWhpeHV1bWxvTnhiQXpHeklOVkV2eEtkZVNLOGFyMWUwdXhpbG8yOXZXc3U2aHVqRmZLbW9BaTlVK3hLam9Fd0l1c2Z4dHp2ZlZWK2RadHNYNjAvSjNPOXd3UWxKc2tjSjFIYkpVZGMxTjZXaXJlbGxLM0swOG9pRW1mL3pYbXZiK0djT0pXSnRERmt3QThhR2FCYTVzSGJXT3dGQXAxY0YyVWt0NEw0TDRqQW9MMGJiUVN1STRKVEgwTkFJVitsaXBTVkNJY3NzclA2OUE2YldyeElWOTdwY0VjVXE2bk1ZRWFWbWs5bnNJaU5VL0srb3gxNWI1dnVzWS8xdGIyWmgzRWZZOWhva0FSMzAxekFocWs5ajhuMzZzNk1kWFA1QlJRM2o4UjJOVHJLL1hkZVpWRVVHcE82ekVDbURYdGFGMFg5OHVlYWM2cTdMWmVhdGJJcVlFaGE5ZzY1OTU3aTdhNS9uNndDV1FRQ2pSVGVqN1R3dWJoT0hKK1hNOEV2YUhZVkVxd25KWWlvV3ovdFYwUTMvMGNrNDFCT0xuWHFpUUNwUVRXVmVDYTEvRVZBQ3hCV0s5MGJHcVd1OUFFTXVmZjNCUVRsT1c5bk8rVDNJZUlKWjVUN1c5bCttSW5xcnBiZDg5bE1Oc3hhVXFCYXdaNzQ3Mlh3UTFjaVV3WWJOWk9ETHhNVmxPOHYvRDk3VVFUQU01bDQ5TDNqV0p6d2ZlZTJwZDdneEdNNURkQ2N5Y0pYTmNiZ2RCK2FJczV6ZS9LK0kwUjE0T3U1RHFYcjlmYjlqWHhHemtHcVdZZng1NFAzQWNBdnkzMCtXVXpJQUQzNVpkd1RkcGt0VS9kZnE3WkxmRGE0cHpnTlQxTVN4ZERIOXJLQUJFTVNMK04xUWQrTTNOdjh3eWVudXo4TGZJZXdIc0t6K0tXa0ZaQjRKcjNZYzZsdTNxQURkLzUrVHl5djlkd0ZlTjdFTmVyZHFvUnpMVjBYQjhDNEgwRmhVdnUwUVhOTkNuQ3ZUSGVFNmJjWDJ6U0VWVXFBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUl3bm9BRXJzY3pWQTBpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUxMSlhCTkFHY2F4K3lRbGU4eUg1dC90MkZYNkxEUXdubmxNQ05pYlp2K1BTTStTeWNKaW0zYTZYUUFkNnZndUJOQ0ZuSzYvemZqWk90eWRtU2RMVVVWMWwzZ09pVHNSdEZ6enBrNVVrc1JCcDUzOENOL09wSFpEalhEdnI2eWMyaW00MXJLeC9RdDdTM2x6N0dsYys1UU9OZFZGeDJGNzk4NUV0Rkp1bFZhVmNjRTNvdVBOZUo5TnB1bE9ocjJnUnJvbEVQSHNYTUNnMXBEYUhYc25Na1ZIQXUxNXhPWFpobWZZSFZJZkNCWDVKclgzTHVOOExsdHA2c3Vpa2U4MmVHY3lMSzgvMUl3ZDZ6SWRXbndpTmk0dnNrSThheVM0RmVxU0Zlczc3VitsOEIxTFpMdDY0bUpHdkkrUXFINmZTMVRYS0xQWSsrN1Z3YndBUUEzYXQvdDVCWmlmSExYL3lYMWpSRUdwWDAxbmtVdUcyb0xOcnVFMUpNSGFnVXkxdVlWNjdJdmlFbGZMbmNkRUd1di81M2lhM1RZelJGTmFpVUM3YktaYTRkREE4SWt3ekkxUks1YjlDMjBKcVQ5c1NBd3FXUFpNbCtKVTdvRXJ1dU15TG9JWEU5OVQ2MUQzMTJMYS8yVXVsN0lmY2FYQ0Z4VHRJMzdCa3ROTGNYWmw5cm5XbmE1NWc5RnJiaEh6cjNxZFVpUGNnZ1lwNzQ3UytCNkhXYUF2dzk4NXp5ckMzcDZSU3NMUmZ0djJ3bFdmbjNpN3MrNTk5Nnk3YjBBbkJ3NG8rQzVCUFBraWh5MXROa2VlZ2E0Zk53Z2NHOW9hclFVdWZiTldjN1ZQVHJCV0lxbUttMG1nVXViY3o2S3NwZWt2elA3Um5aWmZrL3dyWklLQTJWMk5JR1lhclpGUVZPSzZQMjJzcTJxYmtzQzNPdmhtZklCRnBpVHpMLzlMQUdZNzEzMC9RRDJBVURCdlRGcEtvSHJtTGcxOTlzT0J2QmlCeS8yajBMZWQrcEVERDgxcHJPQnNyNmd0OE1pdkc2NHR6LzFlcWRXbDlsSDdnazgxMVBoWE9zNVgvOGtjRjFuNUVQZnV2bUNNTmRvK1dybUd6dlhkMXlyTG1SYjg1czlQaWVPQjNBdkQvUnZBbUFRNy9OcURFcmxPclJQWFJsb1FuVjhEK2ZlekEydHZBeldlYXZ1K2Nudk81ZWNjZ1BTTDdrdnRXMjdidmQrK2lFQWZHZGZRbG9GZ1d0eStsdnpmY1MyRmpTKzV6TTRBSytYMU9UN0J2QjMzVDdZN2dBK21sclJCUGxhZll1VkdyeVBhOHJiQVRqS25CbC9vbUtmKzhCNmU1djNkZGFkOG0xdVJSTlVsUWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJd0pJSVNPQjZTYU1oVzBSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkdvUzhEa2UybTNVRXB5c2FYdHFYZHQxVGpGbkFMaVpvOENwQUI0RTRLMGVNZHdwUHVRT09kM3pZM1RhZUtTbnM3VHZEcDN0WjZmQ3lNaTM3Z0xYUG1FM2luN2RCc0RuTTFqVnpEcUZDTU05T3FlZ3R3RzRoTWR3T2dhUndia0pIWnZDM2dRei9wUWxKTm83ckllQ25JK280QmlkWTlzcTViMnh1YS9ZampKMHJLQnpNMFg5bHBpdTN6blRYNmtUUS9oSXhEalgvWTNPcG5SdTV0OHBFZ1VtYU9zd3BUclVETXVFSE9Vb0FNRHIvWmVlRG9YV0FHVDBnZ1JubWxBZGRJYmZFd0NkRHUwVWNqaE9iVHMwVG5NSlhGTnNJVVcwb2NVYzR6MmQvYmJ2N2FraVhTNmIvdG80SHR2M2dqSDJVNFNlWWc5MjR2VlhPOGdKbitrTVpQQzVRb045Z3BuUDc0VDBQMWxZNTFLTFVhek9GcXFPQ1NoZTFxeFRiejNvMVBsbURmRlpxNk5qQmE3dmF3SjBMSWxmakUvdVBhcWt2azBSdUY1M0VjR3B4VmhmWnB4bVhYTjBhU0pvTFVTZ1kvY1JpaWRRZE9PbWtZeGpoY0JyOXkwV3VJelBSQXFKNUlvRXhualYvbDNDSVg4bTZoUDVhblhQa01CMTdkazh2cjRsQzF3dk1maUlUVndDMStWejBQV01LbG1ybGx2UXZ1U1k5NU4xWDV2NjZKZnNXYlVmeWJvdFVPem4xWjBnOFA2T2FsczlmMk05bUhQdnZXWGJ2YURQMHdJQW5ob1FxUFFWYTJtenIwMktHMUxjbGMrZFVJcnQwOGJtZ3UvM0VNdG5teUErRWtzcXBidmE1WHpyKzlYdVZicjFZL2JFMDF0UlRoS3dndzVUd0puM2NBWklTVWtNWHZ0aEFEdzNHS1kzQUhob1NnV1JQRk1JWEtlSVd4OW9BcnVHZ2pTMzJydWhmVHpUWUpBWFgySXdobjljWVhGcjltdFhJd0xwQy9MOVNMUFdxekN0cWxRaGdldnhHSzlxdm5uaGR5MnVWT084T1dRbDIrVmVLd003MjZuVjlUeWUydlExaEFKdUxubXZRZnZVMDgrVm5ZMWc3OVpXMDI4eFlyNjF2eU9vMmNQUU56czEyNW16cnRKOWtaVDMvNm43dFNvQzErUnlpQkZhN2htOTNYenJtUHROa3U4YlFOYkg3MmwrUC9VZ0JOcWJVK0Nhd2N3WWVQc2dZMS9vbTdjU1pQYmFnY0hmT01ZcDMrZVd0S2N5SWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0N5Y2dnZXVGRDVETUV3RVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUktDWkFnZGVqSTZXZkFPQkZDU0tYeFVZMExoaHltSGswZ0ZkMFRwWWhNZWZuR2tmTVZtYUduTzQvQmVCK0FONE1nTTRjcmtSeGF6clgrQVJNUysxZVo0RnJpbFVjQzRCaWlYYWEyemxtQ2hHR2tGaEh6NFB6aml4aWFRcDdZellNZjZlWUxzV1hmZUxkekV1aGtzY3N6RUVqcDQ5VDVEMnN1K2MvdzlIUXh3SHMzZUIrTTBXZmhtMkU3bTlUMnpKc0wxY3M2QzdHY2RmbHJQM0JUcWovbmdsaXl5Rm4rcGpqYjBoUW5rTGg5d1p3WWdBb2hRdE9BWEJ0S3cvTFB0YUl3NVFLc013bGNGM3EyRmRqM3ZsRVM4YUllYlJ5SHF2UjM1UTZ4anBHK3dTdTExRXNyMFJBa1NKT0h3T3dnelVZTHJGeWw3QjVLTERBT3dBODN0VHJtOXQwdFB5aDFUYnpNcmpOTVBuYThZbkMveHpBQlFuMWpwbGZybnRVU1gyYklIQk5BWlozT29JUjhmbkFmLzl4eXMxZzRYbm92SHJhUkRhNmhPbUhUYi9jckpNbk1pZmFURzBSNkdpREpnUG5IZmNKOW9zVWlLMlZRc1ZyOWkyMG5xTU5LZXV5VkRhdDgwazQ1TStFSlhBZG5tMVRDa0cxbnZlKytrdldaMzFkTGo2aDkwM1hmQXV0VFZMMmsrZmkxcmU3am12MnFaaVdDRnd6Z0JlRDNmeDJLaU5IdGlPQjYzeUF1WHRXK1MzTVg4TDNiUGt5Z04wQm5EZURpWFB1dmJkdTJ5ZG8ybU4rVXlmdzgrQk01cTF0OXBuREFJQzhyendyWXUvWUlEbSs2cThMNEVNbThOMHdEL2RuYnJ2aVlxV1pVMERaQndRa2NBM2MxYkhIcDBuU2hnQ0RibkYvNnlYbS9EM25YSWZpY2R5UHN0TURUQUN5c1JhM0Zyam1uc3pyelhtY3kxYWVXZk43aE9GM0hLRWdaZHpENGI0NDk2VXVITnQ1QURjeGdkNTNDdFRGYjAxNG5tZnZ0VmRvZnJJcU9BN3ZOc0UzWFkyZUNlRHVDN3NuVExtdk1mVWVrK3Zjb3ZiN1JHdy90RlZ3a2VIOGlnVmVwOGcxei9MUG1leEtXR1pEdnJQRTN0cWw3dDlvbjNyNitmUndUeUNDV211Q1ZqMjZBd0NLQk5jTUdON0sxakgxbG40SDQzdGZaWEFOZm8vN3V3U2orSDJmSGN6Z0t3QVkxS2xrTDVKQjY4OXlCR1R4UFp0ajk2bVd6NzEralVQYkdKRHRyUVhmYi9ONXhTQTAvQVpybUxobXY3UDV4akpoR0NiTDB1b2JwZGhhaEFHUStlMEI1K3d3MVZwVGhOYXJMd1h3NUl3Z1FaTU5oaG9TQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJGb1MwQUMxMjM1cW5ZUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUlGNUNQZytJaDlhTTBhd2FaNWViZGtxOTNlUDhRaFQvUXpBclFGOENjQ05POUUwT3UrNUhBNWFDeGlrT04xVDNKcU9vVDdSM3FjQU9LTGdJL2JRR0syendMVnZ2SmZ3OFg3S2ZLQXd3ZGdVbXZPc08xWGNiaXA3VS9xN3ZSRUg5SW5CczQ1V0loSXA5cTFLbnFzWVp4NlhzM01mRkdCVit1S3pjOVVGcnZsc284RExHenpQaGE4Qm9Oajd0eE1IeXVkTUh4TkRwSU1QQlRtdjRXaUhEamdISnp5WGRnRnd1dVA1RzJzNzFqVUpYUCtaa0FTdWdVL0hKb3puZHdsY1h5U0U1T1BIZFRURjlCazRvM1lhQ2xuNWd0VzRnbkc0eG94T2gvc0FvTFBxTUZFSSs0eE9hUDltMXIvVGtkTVdHM2JWRzNPQ0RER1J3SFg2alBHSmIzeXZjN2k5T1lEdnBsZWxuRWJ3ak1MMHJtYzNBZDJqRTc0NWFVR2thb3BBNTNackt3QlBNZzcydnJJVUtXSHdsMC9rVnQ2Sjd0VHFHOFgwWGduZ2dJQU5xN1N2VXlJY2NtbEhjSU9DSVFrV2VabERySXJpQ2E4YTJSREZHN2czNVJML21scDh5TmRlVEx4aERJSXhnUnFtRklJYTA4Y3haWmNxY0gzbFRpenpBNTF3eTQzR2RHNkNzaTNuN2dUbXo5cEVyc0QxMW1iZm1zOUVCbXZrZmdERjVXb0hZNndKUlFMWCtUVEh2UC9rdHpaOUNlNjFjVC84UUVmVHBTSk9OWG94NTk1NzY3Wjl3WXg2YnI1MytkeDM3VDUvNnpuTU9VUnhVQWFyOVozampkM3Y5UFhkSjFiRi9JZDMvNGZCTEpVMmo0QUVyc2NKWEZPRWYrbnIzZENzL2dtQUR3UDR3NFJUbjN2RXVlMzV6blZMQWdINnV0cFM0UHFxSmdpdExiZzRmSlp4cjgyMUx2WUZnTzNMVWlpVGdZVzRaMUNTdUVaL29ua09oTW9mWjlxeDk4NUwycHlyREorRFhLOVJKTk9WT0ovMkFNQWd6a3RLVSs1clRMM0gxRkxvazJNWTJ3L05QU2NmTXk5aXRramtHb2l0U1phNmY2Tjk2akZYUm41WjNzdjVUTnJYS3NyZ0M3Y0M4TTM4S3B1WG9NME1PSCs4dVMvWkRWTEFtUUwzb2JPYjVrWldiS0JrYnlUMHJ1bzY1L2VaNjNxdWpQa0d4dGZPRWdXdWFldDFPdkhqL3pQaVRQeGE1cHRvTzJnNTEwYmN6dzN0NFZKVWUxY0xHSit6M0VNckVSZFBtWkp6Q1Z5SG51bGp2eldOclZkWDZSdzNaUXlWUndSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRUlKR0FCSzRUUVNtYkNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lqQXloQUlmVVRlZDJMc3g3bExnT0g3U0p1MnZRWEFBNDJ6NVZDSXcyVjN6b2YxdWYxT0VRcWdJMnBJdElxT1VYVE0rOWZjeGdQNTExbmdtZzc5ejNEMFBlWGovWXFJblZXbHpJY2FBdGV4T1o4cUlER1Z2U25jNmVoN2RDQWorK1J6SkU2cGYxUHkzQmZBQ1k3T1VraVNUdHJucmdHSVZSZTR2cng1aGxIMDFVNmxUcnN1b1drNmZmUDVSMkVxbCtnZTI2WUQvMnNBMFBtMFQ3blhHcS9MdHpuRVgraXdTSEZkOWlrM0xWWGdtdXN2QmhpZ0UyWnR3UUNmZy9BWTU3NVd6bU81NDFtYWY2d1F4aGlCNitzQnVBQkFqV2QyMy84N0FiaWJBd2JGTlQ5VENzbVVLeEZRZkhoM0QzajF5SFo5eFh1QmE5OTY1Wk9kSUFWNS9OU3F3TlVQQmdONHFLT2hISkhwVlJLNC9sYm43SDFtNHJoY3lZaC9ENytKb2RqcU96THVVUXlvc0tQVlhvbVRzODlrMy8yOHRUaFpJc0tWeXhhN3J5OU5US0tXQ0hUcFFOR1orYW1lZDhlK3psT01rTjF2TWh1cDBUZGV1eFFyT2pMUTlxcnQ2NVFJaDJTaUw4cnVFbENvZWE5ekdUVzErSkFFcm91bVJ0TkNKZXV6M2lEWFBTYjA3SFNOdjI4dEhYcWYvbjRuK3M5Z0lUL0tJRU9CMDJOTjRJcGhzYkVpOGo5dktMS1IwYjJWekpvcmNIMExFeWp0VWxadnVhWmtjQzdPcGFXbE1RTFhESkRKOTVTcDBrMk1nTGpkSm9PVzhHeWo5dDZDcjE4WG12Y3YvbDNINUFzR09mZCs2Sng3NzFPMDdWcGo5Zk9yWkQ5ckNwdEQ4ejhXbEpCbEtYTEdzN3ljWjJYS05lZWJ3NjBEK0tiWXBqenpFSWlKU2M1ajFYU3RsdHhEaHRZdDlRd3BsZURZL3FlMk16YWY3MXkzcHYydEJLNFpTUDVmQWtMb0tlZGtNWkhyNzVnZzdnd3k2VHVqczhlQXo2TGJBWGl0RVVQMGpSR0RMandad0l1N3ZhL2ZqeDNJbWN2ejdQcDluY0MxL1Q3U205VWlVSHlOTGt2Z3Vvd2k5MnVmQitBUVQvRXhBUW5MTEFKNGJuOWlKeDU2ZTA4RmZDZG1JSlQzbERhdzR1Vjh3c1Y5dDVaMkp0SGJwWDNxYVNmZUZidm5GNS8vRExBK1RLZWFiN3hhQ2VtVzlwSUJVZzhDOEtKSVFIcCtlM1ZFYVNNTEsxZHlIdUo3MXVXK0YyKzZ3UFhZcWNDNVNrRnFPejB5NFZ1UHFkZ1BiWXVkWlpmeVNQbTI0R3JtTzR1ZEhJMDhBY0FMQ3h1blNEaURobTdqS0w5cTU3aUZDRlJNQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVUQVJVQUMxNW9YSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDNjBiQTUremM5N05VSUhOcG5Id2ZhZE5PVzdUNi9nQ084M1JnS0laZHU0K3BUdmNVanFNejVMVTlCbERJN3U1R1RMR0dqZXNxY0gwVkk3cmkraGo5MFFCZVVRUGVpRHBTNThPSUp2NVU5RGtBNk5UcFNsOEVzRnZubEVOeDlWQ2EwdDZRSGFGeFpiazVuQmxyak5IVWRZU0V6eW15ejJzazFZbTZsdTEwVktYakYrOXhGRHl1a1Z6M056cHpVNGlXZjZkSWwrNENGMUJZZEpoU0hHcjYvQzVuMmRDeit3NEFqckhhZTY3bHNEUVVtdjVVSjdoeXI4NTVua0twc1RRVWZ5eFpQN2pFR2VtNFQ2RW1PaksyU21NRXJVb2R6NGYzS2pyYzg1bHplaVhodGFrRXJua1BlQ2VBSDdjYW1NSjZYVUs5Y3dsY0R4M2YzdGc1dGo2elVuQUEzOXFzaHZOM2lZRGk2d0hzWHpoZXNXSzl3RFdGL09tOGJIK3o0WE80ZkpsNVZnM3JwOUFCSFl6dHhEWDFSNHhRZi84YnhjdHUzZ2xpZjlmS3ZFb0MxekcyVS94ZTR1VHNzOHMxVHN4YlUraG1DaVpMYVNQbUZGempmbEt6cnpWRW9NZmF3K2ZyU2QzOWdtTHVyc1RuNGoxTm5weTJhdlRORnlTa3Q0UDdHeFNMbWtyNE1xWC9NVkZRY3FiRC9EREZCRHdwTHM3M3ZaYko1Y1R2QzZCUXk0NVVnV3RmUUk1YWR0U3F4L1d1NCtMYXJ3Rmk3WmF1eDJQMUx1bjNrdlZaYjM4cmdXdUt1SDJvQzNMRXZTQlh5bm1uN2N1bnp2VWxqYzI2MjVJamNNMTFPZ1ZTRG5SQVdjSStxMitzWE1HRHVKL0J2aXhOTk1sM3Y5TjZ1TzZWNkF1SU9kZCthTis3T2ZmZXAyZzdKSENkdWlZWXpvUXBiSTdOdkV1YWV3blg0YjVVODUyNWI0UHRNbUFFOTlIdDFES0FiNHlIZmw1c0gvUUFBQ0FBU1VSQlZKK1BBSU9JOEozbGxvVW1YQUVBNjdBVGc0Z3dxRi9OeFBYZ2RwWGJPc2ZzVzVhK0Qwdmd1dVlJdSt0eUJWM3RjOVpjUi9yZW1mK3BDOXJIdmZ1U3hBQXY3K3JPZHlqRzZVcnZOZmZqWHlaVXp1OC8zZzdnWm9HOFBFZGlBTFpmUmVyanVRVDN4MTFCTW9kRmVmWi9IeU95bDJEaW9yT0VSQWhwK05rQU9BZFN4bUxxams2NXJ6SDFlN2RyalZleVgyQ1BDUVZsbjlTSm1mTjgyNVY0eGs4aGFZcE5UNTJ1YWI1bFlQQmJuMjA4VHlPYnFiKzFtSnFGcTczUXVwK0IwazZid1VqdFU4OEFQZERrenViY3p3N3V4ZmNxQmx0ZlV1SWFtYy9tL1R4R01kRDVYYnRuN1pjQXVOYVV6d2ZBUU01TFRod1AzbStIS2ZjOWxtUEpJUGRrWWFjVVllVmhtYWxFbG4zUDV0alphYXZuWG8wNTR2dVdNalVZMWxUc2MvdmFNZ2lCN3oybDlMdlQ3YzF6anRlVm5WS0M0dVN5VVg0UkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVJRVZJaUNCNnhVYUxKa3FBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSVFKUkFTbm1CaE90VFE0Zm10MFpxV25TRWsxUHJ0enNIb1ZnQW9ZdGVuYXhrbnR4MGMzZUpIeXJmcGhLcyszNkRMT1U3M2REWTh3U0h5MTV1VjZ3UVE2czY2Q2x6VHdaOE03Y1M1d0RFK3Q4RVk1MVNaTXg5eTZuWGxEWW02cHpvWlRtbHZxTDhoTVh1V281RDNFUnZxTUpnelQraVVmVmJuR0hvcHE5RHZ1bi9mSGNCSGN5cXJrSGNvbkV5SDYzMEJVQlI0ck9QbkdHSGpDdDM2WXhXNWdtT3Vkb2NpMXhTa3B0TzZMY3JhbDNNNStOaE9hRndmUEtFVHdyNUdKK2pFMzNMRUgxaVdRUmErQWVBekJaQTQxcTgxam9CMDRubEFSVUZ6bnpsajVrR3A0N25yR1VTSGE0b2hQTXFJckJmZysyT1JxUVN1eDRwR2wvWXZWaTVIaEMxV1YraTY0VzhoSjBhZmtCSEZNcDRldUVaVGJGcVN3UFZsamZEMHJWTU1MOGhESVNzNkxaL2NQWHYydHNyN0hDN0pua0ZwS1BnNlREN25lTmVjOFFYNGNMSG5mWGN2QUJUMnlVMnU5VlBKdFJVU0JjaTFxV2IrWENmblVOdSsreTJGenpuV1N4TWdyTW14UlYwM0FQRGhUdXlHUWxXdXREU3hnQm9pMERVNDNzaXNrWDNDUlNVQ2syUDdGaEtDWXArWDZoVGQ0cjVWSW42WU95L0dDREhudHRYblR4VWZrc0QxbG9SclBvTkt4NjVXdWFVSlhQT2Q3OFhkMnVleGdRNm03aVVOcTBpZDY3VzRxcDQ0QVlyc0hReGdLQ3JFWUFJY2Z6c0lsbTgvdmQ5blpTQXhsMkJsM0lycGM1emZRTEN6Umk4a2NGMkRZcmdPcnZHNG5ydWhsVzJ1L2RDaEdYUHV2VS9SZG1odFNPRkNpbm5tcENsc1RySG55a1kwbE84UnJ2VDFMbURFSHAzNExnUDgxVXkrSUdFTXJzZDlZOTdMTnpsUmlJNEJGUm1naU9zUG5oTXlLTkJQTnhsS29POHQ5eUh0Wm4zdk5ERWh1WlpESjRIcmxuU0Jxd0w0bDA3b2JWZEhNNmxpZTZrV012anJHWTV2Sy9qdEI4OGMrZHVGaVpYeG5ZajNFUVorNUptV0s3MmpPd040YUthZ012ZnBYbWZPMkh5bVVOeWFhM1RldSt6NytlVUFQTnNFbmJsRXBDOFUwK2IrMzg4Uys3emtiQndEQmlNNXdHTWs5OXY1dlAzNFFqdFJlczVZMHAycDM3dGJDSDNHeEszSmhmZnVGMVQ0anFDRU1jdkU5bXVaaCtlRVIzYnIzTitYTnJLQzVSajBtNkxqUEt1ekU5L0QrWTNXWjJmb2wvYXBaNEFlYVBMaFZtQjJadVd6aXVmUUZJcGVVbklGb3UvdEc0cGI5L2NsZnFjMlRIT3VjVk01cG54YkZLdkw5MzByeGIwWmVDN25QV3dxa2VWMUZMam11dTlveDJBZDN2MGJnNzNGMGxUc1kzYll2N2NVdUdaYkRLQitsTU1vdnFzd1VLL3Z1enk3Q044Zm5nbmdhWTY2R0d5UmRmRWJkaVVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUlFTkpTQ0I2dzBkZUhWYkJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQk5hVVFFakltVjFlRjJkbm4xQXIrMGhudDBkYnprMFV4VHNXQU1VblhZbjVYOUZnVHVRNDNkTlI3M2dBOS9MWVFkR1EyM2JDb0hTUUg1dldVZUE2SkhydW1oTmpHWmFVejVrUEpmVVB5NFNFc0ZKRmlhYTAxOWRmT2hEeHZ1VnloR2FaMnM3UVk3a3Z0WHdvK01FY3p3WGE4MFRqNURsa1JpZVNRMGNLY293Uk5xNDFmalVFcm1uTE5RMG5NZ2s1cE5kd1FxdlZkMTg5N01zK3hwRi9Dc0dWTWZPZ3hQRTh0TTZnZ3oxRmZIODVBcklFcm9FUEFkaG13TEJFTURqbE9SbHlQT1Z2RkdYMkNVbTgyaml4Y2MyV20xb0t5K1FLS0xwRWNpbGlkM09QUTEvSjlVYlJmQXFDMk45citOYmtGTTZqSU1uTkJtQkR6dkYwbnFWSThqRDVSR3BMN0ErTnJ3U3UwMmUvYTV4WWVncEIyM1FyVnlmblZUcGg5bk02ZnRmMm1FeVJlQXIxL0dFaFhSb3JBbDJ6RzZIM1l3WmZvVURIZXpNYUhOTTNycG5PN1BZR3J1ZHBiOGxPMGFzcUhNS0FTYyt4ZUxlK0Q2V0tEMG5nZXN1QmtjRDFSVHh5M3pkZDg4MWVTNGZ1Vy8wb3BPNGxEVWN0ZGE1bjNHS1ZkVUlDdm9Cekx6VUNmSGMxQVowbU5LbTRxYVhlUHlSd1hUeWt5UVY5b3NBMTltcVNqZkJrbkhQdnZYWGJzY0JaREg3SHM3Q2MxTnJtSEZ0OGV4cDlIUzNPRy9tK3grQ1ZPMW1HanQwZnkrbjNVdk55SCtza0J4c0cxZVMrQTRPWUtXMUpvT1UrcE0xYUF0ZjFaMTlKSUs3NlZyaHJwSmd6OTN4djUybXdaakJ2TmhFTDloYnI5M0RQbStmUkZMZW1VTDRyVVRTZklvSTV3V1A3ZXZnTkNLKzdaMFVNNGpzWHowNHBGa3ZoL3NjWndUeWY0SFpmSFFXeWFkdmJNZ1M5WTJ6bS90MG4yTmpidGZUZzF5WG5qS1hNcDM3dnJpMXduU0p1VFpINEF4Y2dIRTFSZlFySmJ4c1lMQVk5cHBqdkQwc0hkTVhLdWM3dStpNzRnczVPMFVYdFUrZFI1dHcrSnE5SVZtNEd2N0NmWlF3U3p2TjAvcDA2Y2EzeStFQ2pyak1hVzl5YXhWMXI2azBRdUthdy9jdE4wSThoUnA2bGNSM0ZkN09jTkpYSThyb0pYRy9mZlVkNUdvQ2RMZGg5WU1KekV3WmhLdllKcG15UnBiWEFkZWo3N0p3MUJ3V3NlWFpzZnp2RWdHZThGM3dtdCtQS0x3SWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlzRjRFSkhDOVh1T3Azb2lBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJakFwaE9nZ1BNSkhnZ2x3a3hMNVVueElUcXUyU25VUjUrWUFldG9KV2lRNjNSL1hWd2s0TWh5cnZSR0FBK3I0THkxamdMWFB0Rnp6b205QUx4dkFaTTVkejZNTVhsZEJLNURZdmJrMDBJc1lnejNwWllOQlQrZ2svQnJKamI4SHNiUjJpVVMrMUVBK3dMNFZxRk50WVZLUzh6SUZSd3JhV05ZcHBiQU5aMkk2UWpGdjNNbU9qSlMwUHYzSTR3WU13OTJOR0pkREp3d1RCUTJwcE9ZSzkwWXdOa2VwMmFLaVZMOFlFeWlveUR2ZDdiWUpVVXU2VUQ0MjRMS1hmTjBxYUk0TFd6MU9lcyt4TE5tb0RnVDU4RHRJNnc1YnluNFJyRUtDa3VrcHBiQ01yelAyK3ZtWHdDNFA0RFBPUXlrdzkwN3JYOS92eEdwZHdsNDVGNXZQb2ZMVU5BS0N2WitCQUNkb1BzVWNvNW4zK3pyemlkV21tdC9iRXdsY0IwajlPZmZLUXBHd1JZN1BiZDdCancxdlJybE5BVDRyQ0JQaWpHNzB0THU4V05Fb0dzUGVpeFFXRzdBcE5LK1VVeUpZK2g3MXZEZXphQVpuNmdOb0ZKOXF5b2M0bm9PU09BNmIxSzRoSTlkODZFMTF6eXJWemQzN3Z0bVRPQTZGbkN2SnlXQjY5V2RNeVdXKzRSVStTeTZUU2RZODNrQXF5TEN6LzVMNExwa0ZxeCttVkRBdnlYTWlTblBDdXpSYk4yMjZ4Mit0NEZpZjdjQ1FJR3duTlRhNWh4YllrRTVXd1dVZkpuWkg3UnRYY0o4enVGWE15L0g0dDNtMmVTcWwzdE5GSjM2YnMxRzE2Q3VsdnVRTnA1VkViaGVxbWgwN1gzTGx0UDNhbWIvZkJpZ2NOZ2V6MDg0SDhZRUFyWHQ5d243cHZiVDNsK21xRFNEV0RJUXd6QzlFTUNUUjU1WnNiN2RURUQycTBjTVpKRFl2d2dFMmh3VzUzczJ6NDV5emlKUytjeVZieGNUL05vbkl0eGlMdFh1cXdTdTA0aHlQK0o1QUE0SlpPZlpGTDhycUhudlNMUE9uZXN1NWh1SFlVQmVPeWVGTFhrMnpHZkx1cWZRK2ZpY0FUZTFUNTAzODFacGZ5ZXZaKzdjS1h2VTNQdmlONGFYTXUrdURQTDJKYXU2VFJXNEpnYnV0L3kxQ1E3U0N5eWZBdURlbmZCM2JyRDdxVVNXMTAzZ211dlZZeDFUdkE5TXlHOWxZMmtxOWpFNzdOOWJDMXl6UGRmMzJmek81d2tBZUNaOFljUm9YN0RpcFovajVvNkY4b3VBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0l3Z0lJSHJFZkJVVkFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFWUZFRUxnbUFUaUowOEhHbFR4bWgzNTh2eXVwOFkzd0NHNndwSkhRWEt2ZUh6c0hvZGdBK25HOU9zRVNKMHoxRkNJLzIxTW9QME84SDRLMGo3VnczZ2V1UVdFVXI4ZktTSVNpWkR5WHRzTXk2Q0Z6N3hPelp4MUl4akZLbXExenVJQ09DYS9maGUwYjg0ZHdKTzBjSDhkY0RZRUFHWC9wSjV5QjJId0FmS0xCckNRNy91WUpqQmQzY29rZ3RnZXZRUFdxc2pUbmxhd2h3VGowUGZOZFlTTEEzaDBtTHZDMUVvMXZZeVRxWFlpdEZ6eWtXOFd3QWRMd1BKUXBLUE0zYzcxSWNPYWNVbG9tTmswc3dLU1E0bkh1OStkYTZqelFDSWk3N0tFaCtobkdZN1g4LzFiejN1QVRlWFRaUk1KbjlzSk5yclJHcU84YXZwY0IxaXROMWIxK05aNUhMc2JXbWNKWnYzdGRzSXpaZTYvWjc2RDJQZlYyU0lFaXBDSFNMTVF1OVQ3SzlieHNSUHE2ZFUxSkozL2hjb2RQMEFaNEc2QlJOQVpWelVneVlLWStFUTlMQiswUzQ3UHVmTHlCSGVrc1g1V1JnSVQ2ZjdBQkQzQis4SUxjeVIzNWVJOXlML05IZ053bGNWd0RycVNMM0dSOFR1R2JBaVhkWTZ5eFgweEs0YmplbVM2elp0MlovUTdjZng5KzRsNzVLQWtoTFhWLzYxZ3hMRmRsYzRsd04yZVE3RDZxeDcxU0R4WlJuQmJhOXJkdjI3WlBSamxLaHU5WTI1NDVwcUkrdDVwaHJiNFIyYi9JOXc4ZGtPSjV6QlBqTW5VOVQ1NTl5SDFJQzErTkdOM2ZmTmRUYURRRGNxTUFjbnRmeCt3bXUvMXlKZXlxOEZ0OE00SXFlUEMyRjNuemlmaWxkZGQwL2VRYkFvS0w3QTJBdzFzZDMvWHBGZ3NoZFNudk1jN251YklINzBYeU9qRW1mN01UN0gyb0NXS1lJR0k1cGE4cXlQckhBM29hV2M2bG1QMU1Gcmhtd2NMdVJEZlBjblFLWE43ZnE0VG5XcTBiV3plTGNPeHFld2JqMmUwcjJDM2l0dlJqQXd3TTJMbWt2ZTJnbTczbHY5d1E5SHVZN3FydVBIRm9nOWxwaDJDYXJJblFld2UvYXVQYWZJMm1mT28vNkt1M3Y1UFhNblR2bHJKWHJtMmNDdUpzNWwrSCt0NTAyV2VDNlo3R1ZPUmRnb0czZXovbDlabTZhU21SNW5RU3VmY0hFaDRFSlU4WmhLdllwdGd6elRDRnd6ZmFHN3hGY1cvUC8vMnFDc2I3elhMNDdVT1RkRmR3N29WcGxFUUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSV0RjQ0VyaGV0eEZWZjBSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJnY3duc0FPQWpBT2o0NVVxSGQvOTQyQnJnK1FjQTcvVDBJeVMreHlJdXdiNitLb3BKVWJTd3BoTmdpZE05bmJuZUJ1Q3VuajVTTEhQUHptbnh1eVBHY3QwRXJrUGk1UnhUT3A0dUlaWE1oMUs3UTJPY0tuWS9wYjJ1ZnZwRXYvcThwV0lZcFV4WHRSenZLU2NEMk52UmdSYjN2UlJPZFBqZ0hIMVdKUFBUQVJ3SjRQY3BsWm84TlIzK001cmRJbXV1NEZocE8zMDVDVnhmbk9DVTgrRHlBRTRIc0t0aklKY3Fva1ZUWGZPVWF5Q3VzWDQ4ZGxKV0xuOGxBUHRZb251dHhJSlNUTThSb2ZnR2dFTUFuQklSd1poU1dDYlVSNG9wVUVqNlpsWW04bitYcDJETzlYWjFFN3pndWxaZFh3Q3doeVdNT2N4Q0laRVhXbVZDNjM2WFF5YWRFbzkzOUtHMkFLY0VybE91b292eStON05LSko2VW5vMXlqa2djR01BWjBmRU5YaU5VMXppWnpPVEt4R0JibWx5U0JpTno4ZTlBTHd2MFlEY3Z2SGJ0U2VhZGErcmlWVnhpcWI0azJzOTFQZHBSN09YTWV3amhiTDRqUFN0OXltSVFESFZsc24xSEtPQURwOTl2NDQwVEFFSGprL3VQbEtxd0hXdGZ2dmE0LzdhdTJzMVl0VlQrL25heU15VnJEYjNmVE1rY1AwZHN6WkxFYm9yRWF5YWVxNnY1SUF1MEdpZlNNcnZBT3plN1M5OTFOaThTZ0pJUzMwM2w4QjEyd3ZBdDc1TDNSdHZhOTFGd1NjK0J1QWFqb1pLN3JrNTlyWnNtMnMrcnFXdTdUREl2bzhzeGVZY08vcThGSXFsNE9zVlBJVmJpQ3I3em9ENWJuZnJMbURrbDBvNnN1SmxZa0dlMkQyK1QxQUVWdW5QQktiY2g1VEE5YmlabDdQdkdtc3A1WHB4MVJFUzBVL1pKMis5cDhIelJ1NHg4cjZibTN3Q2x6enplYTNaUytZN2MrNDdmOHdPN2dNeDhEcmJ1RTRzcy9VN3oyNGVhNzRsdVRDejdOS3prenNGQVc4Zk1KVHorQVVOeHFRMm0xU0I2MVY0cDdMM2ptb0lYSFA5ZElMWmIvV3g1NXFkd3JKanZvbXFQYTdEK201aHpzeDh3djU5WHA0UlBnekFCMWRnM3VieUNxMzdLUlI2cCs3N3U1L21WbG9wdi9hcDgwQ3V3cjBvcjBmaDNDa0MxNnlCMzFsZHNqdm5QOTlUblFTdTY0ektWQ0xMNnlSd25SS1lNR1YwcG1LZllzc3d6MVFDMTd6Ry83a0w0dmpwN2x6OUpSbmZKZm9DN0t6S09qVjNQSlJmQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVTZ2tJQUVyZ3ZCcVpnSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaU1EaUNOQ0JtWTR4L01EZVRuOHdqbkowdUY3bHhMNGRDK0Mrams2a09NZUhHSDJ2Yzd5L0RZQnpLd0lxRlFyNFd5TXdzNjNIbGxjYk1XNk9hMGxhTjRGcnpnYzZ3ZG1weFppVzhPN0xsTTZIM0RaNTluRU1nUDA4QlU4RlFPSEEzMFlxbnNwZW54a1V3YUJvLzFVOUdYeENsYm04MWowL0hTelBBbkFwcTZNcDk4eVdiRGhQNlpqQ2EzZWJRRU1VdUR3Z1E0U3hwc04vYWY5ekJjZEsyK25MU2VENjRnU25uQWQzQk1EN3FuM3V2TFJua0UwcEpMNDVkazVPVVg1T2dldStmemNFOEVZQU95ZDBtTTdjZkM1LzBaUDNLUUNlNC9pdHBmQ2t5eFRYTStPSEFHNEY0SnNlMjFPdk4xNGpMellDSEhaVkR3UnduS2QrbHVOdisxcS8rMFNRTDJPRTJvZENHQ0Z4MnRvQ25CSzRUcmdnVEJZWGUvNTA1MDRrOTdUMGFwUnpRQ0Qwdmp3RVJVRlQzcFBtRk5iSUZZRnVQZEFNbW5TT1I0aVBiVCsxVzA5VFdEOGw1ZmFOOXpNR3VicEU0RDY3Q3VJOU1UWmpuTko5OTR0WW04UGZmV3VIK3p1ZVFTRUJyMkdkWEFlKzNEekQzNTRnaU4yWG5WcjBkMVVFcm11TWM4NmNXR3JlMkRvMzkzM1RKM0M5bXhHZGQ5M2J1SGF5MzI5S3hGYW5udXRMSGROVnM4c24wbUVIbXJ0cEY2RG1VUlU2UjFGQ0JucTBoY0ZpUVJCeW1tYmd0eVd1THlWd25UT0srWG41anMxM2JUdngyZjJZL09xcWw1aHo3NzFWMnpGaHlwY0NPTGhRM0srVnphVUQ2OXA3R05iMVpnQzhuOVlVUmVYN0h1L0ZmSCt3MDZhZWxialc4amFibkhlNTB2bXdhdVVrY0EwY1lRMWE2anZnMUdPZHV1K2FZbGROZ1dzR2U3b1BnS01CVU9RNmxKN1E1WGxSNWZ1aDNSN3R1VGVBb3pyUjZMOU1nV0h5ekNHQXo3WHZMbWFOd2owRjMxNVFxQnVmTWNHOUdURHN2SXorTGprcnVUQW9NOCtEZmVuN0FKNDJFQnJsK3dLL2ZTcjlYcVlsRHdsYysra3lTQWpQL25jS0RBQURvdDRGd0xkYkRsS0Z1dGtYWG9ldXdDNTI5WHduNVR2SVVnVzdjM0dFMXYwTWJFQnhjbC9RM055Mld1VFhQdldXVkNWd1hUYkxTdGRXWmEyMUxaVWFHSTc3eFF4U1lIOTdOc1k2QmlxNXAxVUJnNEh4MjRGWUFOSll1N3dmTVNBVUE2eE9KWEJOOFduWFhsVElWajd2K0o3L28xaUhBRnpaRTdDeTVQdS9kUkc0WmtBRlBuZW1TSmMyWTJWLzQvZ0w4MzBLeHlFM3ZRb0ExL2RLSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ2EwWkFBdGRyTnFEcWpnaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0Foc01JSEhBM2locC84VXBMdmxHamk1M1JqQTJRQmN3czhmQjdCMzV5RC95OEFjb0tQTjZaMmd4YTZlUFBjekR1SzFwdEVZcC90RGpDT215eForaEUrbnh6TUxEVjBuZ2V1dEFkQWhqR052SnpwQ1BycXgwMnpPRUl5WkR6bnRVSnlOZ3NZK3gwQ0tGOUdwUDVhbXN0ZG5CNTBRS0JyclN1Y2JRZnJQeGpxeDRiL3pISXlpTFFjNk9QQmVTQ2VQMzh6TWlJSklkSEM4ZXNDT0x3TzRlK2N3LzZVRVcxMzN0NXFpU0FrbTRFb0E5ckVFd1VyRXdGTGFZaDRKWEYrY1ZFM2hoOUE0aElSRXg0ajJwSTc5bUh3U3VCNUQ3ODlsS1o1Qk1UYXV3YThUcVpLaVJyenZ2dE9SeitWQXlQc3poUWNwamoxVktybDJVc3N3a016N0hFNnZNUUdaN2JyM21ETTZvWUNiRFNEUUdaV0JhMXpQQlFyanNVNEtrUGNwbEY4QzEvN1o1V0tUNnVRY203TStNYkNZcUdlc1h2ME8zTWk4QzlnaWtTNDJyekR2QmIrYUFWeXVDSFJyRTBOaWNXdzdSNkF1cDI4VU5lSzYzQmZjNm5WbUxVOEgvRlZQU3hVT0tiWExmdGZpUGcwRFh6dzdJWERhMUtLL0VyaGVyYXNuOWl5c0pYRE5mV1FLKzluM0g3YlBvQ1QydmxISk8rM1VjMzIxUm5xWjFtNXZoS0R0SUQ0bElpbXBQZlFGbWNoNTlxYTJ0YlI4RXJodU55SVVuRG5SQk0reFcrR2UzUkxFMXViY2UyL1JOb05VTWpqVk1OalVrUDM3alFoUTZQd3VOQ05hMkR4MkJ2cEUxRmt2QlRjWnZJbm5HRFhUdzd1QW9BeUFhNmM1UkZwcjlxdTBydGo3Yjh2blY2bk5TeWduZ1dzSlhPZk1ROS9lN1hYTkdlNzFQSlh4SGZteFJyUzRwdGgvekhhKzMvRGJnWlRFZS9RRktSbEg1dUVaQXZlMktYaElZWDZLT2RkS3ZaZ2UxejBNM1BiVFdoVlBXQS8zVjU3WWpkdVJtVzNHemhVeXE2dWFYUUxYRjhmSmNiNkQyV01ON1Z1dmlyaDEzME91Z1JtNGtPZGZzY1Q5WGU0YnZnVEFIUHZ4TWZ0U2Y0K3QrMWRoUDd0MFA1aU1hZ1RvOCszOWxkbzFacCthZlhLMXkrQUJEQ3J3amRTSlljN0pPY2Q1MXRLbmtucDRMdng4YTgreXBCN3VDN0FQZjJYMTRVM2QvdjJETS9ybHk3cUpBdGUrdmQ0S09KdFVNYnpXcGhLNExwa1hPZnZ1QjVsdkFHMWdkbURDRktEckluQmR3anlGejFSNXBnNTRQMVcvMUk0SWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWJEd0JDVnh2L0JRUUFCRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJGWUd3S3ZCN0MvcHpjVWliMEhnTit1ZUc5OUgycXpXeFF5cGtCWExJVStiSzR0K0RyRzZaNWkzTzhPT0VOUjdKQUN3Q1dPaXVza2NIMExJK0IyS1d2Z2wraTRQbVkreE9iMThQZjdkazQ2SjNnSzBJbDRMeU13R2F0ektudDlkb1JFKzc5b1JEOHBYS3prSjNBdEV4UmdCMGVXMm9MK1k4WWh4Zm1UemtlMG1mZkZrRFA4VXAxWGNweVNjbG0yRkxpbWMveVRPaUdDbitjYWxaamY1VmdZRTNSTHFUcFZjRGVscmxBZVgrQU5jcU16OCtmSE50Q3d2QVN1NjhLbGFBYlhvblRjOVFsVWhNU2NYQTZFTmE2Rm5GNzZBc0hFQW1Pa1hHOCtNZU9Vb0MydXVmb3BzNTV4M1p0dVlJU2tyakRvdkcvZDRMTnJqSWl6YS8xVU1wWmpoYmR6eFM5ZGM2V2x3UFZsalFnT2hjcUhpY0l5ZE9UOFNzN2tYVWhlenNlbHZHOVRNT2ZvUkM0VTFxQ1RQNE9pVEJuNEpFY0VPckVybzdNOXBidUhVNlRPbFhJRTZsTDdkazBUdE1vbkJrV1JPajVicGh5WDBSQURGWlFLZExES3FZVkRRcytadm90OHgvb0lBSTdqTUtVSUNVd3QraXVCNjVZenUzN2RzWFZEN2pQZU5mNThwMlk3WEF2WmlZRjZQdUFJeWxMeVRqdjFYSzgvR3B0WDR3TTZRYUpqSGQxT3ViZVYwcUtZTnNYcGJDRkNybWRlVTFycGlwU1R3SFc3Z2JwYUZ5RDBZd0RzUGRGUThLTjIxcmhybm5QdnZXYmJmSmJ3UE9KRjNYK1g4MERrMm9vQnY3NDdBbkpObTBlWXNVVlJCbVNrb0tncmZRL0F6VWYyMlZVdjM2RS9hSW5HTVYvTyswcXQvaStobnBnb0tzWEErVTVGUVR5bFB4T1F3UFhGQmE2bkRwS2FPaC8vcmpzVDQzcGhtRXBGZlV2UHprTHQrVVN1eWZNKzVyMGl0YS9ybG85blg3c0QyTThFOEswcGFoMWk5V3Z6RFFBRFJuNm9hLzliRTRsNGp4ay9mc05FZ2VCTFpGWVNtcHNVRmVmWnc1VGk2a1B6SlhDOTVXQnkvdk1lOUt6SUdOZFlNMlpPb3lyWnVSN21kMnE4M2xNUzkzb1BNd0VBZU0ydVNtSS9HVlNkdHZzQ0NURGdEZC9sbDk0djdWTnZPZXRjUEdMN2s2NTU2N3IzbGRSVDY1elZ0eThwZ2V1TGoxN3F1YmdFcmk5aUY5b25MMWx6cCs2N1g5MnNyN2tHSDZiUzcyTWxjTDJNSjdBRXJwY3hEckpDQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQktvVGtNQjFkYVNxVUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFWUFZQ1BuRzIzaFNLVlQxbUJydHFOdWtUM1dNYk9VS1NQakhLM0hwUytqYlc2WDVYODNINk5wN0dLS0o0YUlGejNyb0lYSE9QbjNPYmpsUjJxaTFXbmpMZXNUeGo1ME9zZnY2K1BZRFRBRkFjeHBWeWhLR25zRGZVcDAwUTdVOFowekY1ZkVFQnZtd2NxODhiVTNubHNyekhjOHp2R2FpWHpzaVBOUTZmUHFma0VvZWh5bDF4VnBmcWxOUVhwdlA3ZG9tRzdXbEUvNGJaK1h4NFZhVDhoU1pJQXY4eXVhNzVYTHNUVGY1VE5wY1RYSW1qbzkxdWl1QnVycTJ1L0hUaWZZYmpCd3BTMG9GM3llSXBMaWRUWGxmdjdKNnJQNjRCcDJJZFZ3S3dENERoMlg2TmVWTFJ4RDlWZFgwQWRPQzJuOE5jcSs0TjRCT2VScGNnY08wS0dwSVNHQ1AxZXFQUUZZVmorV3pxMHhzQlBBd0FCWFo5NmVFQUtFZzBUTHpHSHVvcGNBY0FGUEFZemhkZnNKOWMwVVhXU2VGc083REswSlFyRytIbXZ4ejhJd1VMS09iMWI0Ris4aGxIc2JXZXhib0xYSWZXbVMydXpTbnFYSklES2tWY0dLQ0NBdldwaWZmK2c0MmdUT2lhVEswdmxpOVZCRHBXVDgzZjcyL3U0YTQ2YzlaRUtYM2plOXQ3QU56STA0RlFVSVNhZlo2eXJxVUtoN2llR3luajdRb3N4ZWZtblRzeHcvZEd3T1krZjhhT2t3U3V4eEtjdG54c25kdFM0UHJyblFqYUhnQnVDdUJkVnJkVHJndWIxTlJ6ZmRxUldyL1d1STZsdUxuOWJDb1ZTVWtsNUhyK2N2MjhHd0FHZUZ6bkpJSHJkcVByRXdGT0NXTFJ6cW90YTU1ejd6M1U5dmZOZXVaSEhoQzh0L00rd2YwUENsTGVMQ0pJZVJLQUE4ejc3aGkyYy9MeTJlMmJaOHdmZTU2WHN2Q0p0Lyt3QzU1ekt3RGZMSzE0aGN0eHIrYmU1cXlRZTRoTWZJNDh2ZHZEZVZsa3oybUZ1ejNLZEFsY1gxemdlaFRRaVF1WENsenp2SUtCdlVLSis1NTJFSnhZZTdzQTRKbjh0cVppdmtmdzNINU1VSU9Ka1ZacGpudHhPNXBuNDRNQyt6Mmh4cmcvekxPRm8weGR2SS81enZ0empPWStINzhQK0xnNW4vaEdKMEQrSldzdk9xZSttbm50K1dQWHpYTVZCcjNoZmN0T3ZybEpNV1YrUDhMM0czNGZOY2RjVEJXNDVwN1VNU09COGp5NWYvNE5xK0plYjQxZ2pBK3hBcWU3emkxQyt3VmN1L0FjNlBhUmZ2Sk1oNEd1ZVVheWlvbjNnQWViczZ3VVFmdWxpM216UDl5LzVuMk42LzEvTW45RFkvTjhFMGh6aXJPRnNYTkUrOVJiRXBUQWRkbU1XdXAzU1NXOWtjQzFuMXJ1YzY5a1hxVHN1L085OTVubVBtdGIrM1lBM0YvTnZmOUs0THJrYXFsZlprbmZGOVR2bldvVUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUWdRMG1JSUhyRFI1OGRWMEVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRTFvakFGUUhRaWV1R25qNGRBdUJGSzk3ZmtMTzRUN1RPMWVXdEFaeHNSQVpkdngvZS9TTUZLMnVrc1U3M29RL1V4RDhsandBQUlBQkpSRUZVYVIrZDVDazhRNGZFbkxRdUF0Zlg2cHpoemdhd2c2UHpkSUI3U3c2VUNmS09uUTh4RStrczkwb2pHT0hMbStxWXd2S3Q3UTMxaDg2WUp4b3hEVmUra0xCbGpOT20vQjRLQ2xEelBsZVRKK2Z3OHdEd21lVktkTzZtV0FYbmhpK1ZPQXpWN0lPdnJoU25wR0ZabHlOaGJUdHRteVJ3blVmNEtwMVEvRm5kczJZbnExaHI4YTg4Sy8yNVhRNzJyY1IzeHRvOGg2MWNMMUxvOVpST2xPSnptY0ZFNlBqTmV4VkZtU25xek1SNzB3c0M5Y3d0Y08wTEdwSVNHQ05WNExxZkIzeGZvYUFCaFExdUM0QkNpcjUwU2JPZW8yaldNRDBBd1BHZVFpNUJiRit3bjF6UlJWLytzWE9jNWUzclR3TFhOYWhPVzhmU0hGQjVMNktnUFBjQkxwR0JndXNEWHRkY2IrVTZRMmMwZ3hRUjZBdHlLcXlRTjdUK29yZ0s5eVFvQUJSTHNiN3hua2F4b3YwOEZYME5BQU9ZZkR2VzBJcjlYbE00SkNVb0J4bFNoS1ZQdm5WT3JsZ3c2K1B6NlZnQUZMa2VKdTdOTUtERkx5TmprL3Y4R1R2VUVyZ2VTM0RhOHJFMWVlNmM5UVVWWXZBTnJwdnVQdWplQTQyZzJoVHZvNlZVMzJSRW8vcnlYTGZ2N2hEaUs2MS9YY3I5Qk1DSE00TXUrZlpUV2dkd292am9veTN3S2U4aDZ6QldFcmh1TjRxK3dDVnY3dDVCK1Q3cEM1elh6cUtMMXp6bjN2c1VBWWQrWllLL3ZhMFRHdTZENjQzaE95Y3ZuOTJoZFg5S3dMQVNIcjUxSFlQczNjN2MrMHZxWFljeWZWQXl2Z3YvdE5LOFd3Y3VyajVJNEhvekJhNVQ1blB1UG05ZkowV0svN2w3VjJiZzFWcjMvUlI3NTh6RDgwd0dlN2hMWXNDSGtLMFVuQ1k3aWhQKzJzcDRkUUI4VDN1Y1I4UzRCb01mbU1BQUZOemxmZ2IvZjU2SjhFejJuTzU1emlBS0xSSkZjeG0wbTk4NXVWSi9Kc3d6TnpzQUUvUDdCSzRwNW42MHFaQjdtMDh6Z3RjTWZqQlZTaFc0cm1IUDFPZG51VUtmL0Y2Qis4d2hnV3NLdTNQYzdQbGZnOC9VZGR3RXdGc2RaOGRETzVheTl4dGF5K1p3NHoyTWdXdy91SkQzckJUYnRVKzlKU1VKWEtmTW1vdm5jYTJibG5aTzZPcVphN3hUdnlOc2VVNWVOZ3JoVXNOOWR0ODlMelptdWMrOWt1L1ZVcjRsKzZ2dSsrQVBtUUFldzE1ejc0SGYyUDFyQVVBR0FybU5WZTRyWmwwNk5raEd5ZDUwYjBydVBicUVlUUd1WmtWaWM3Qlp3NnBZQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVTZ0xRRUpYTGZscTlwRlFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFTbUlSQnpTRi8xajJGOW9uczkzWkRJbldzRVhNSjNmVDQ2NyswRjRPY1ZocTZHMC8zMnhybHZaNDg5N3plT2t6RUJwV0h4ZFJHNHBtQWJCUXZ0OUdVamJuTmVoVEdzV1VXTitlQ3pKeVlNekhJVWtLUWcrbmNTTzlYUzNwZ0pNY2VZVkFlYldEdnIvUHNkQVZEODN6NEwrNFZ4VXZuOFFqdFBldzhFOEZKTGpERkYzSnBkV3FyelNvcFQwbkJJcGhBVWs4RDFSZGNIZ3lYd3VxQndKY1gxdDB1OE5qaEdyM0hrcFVNKzF4a1VscGtxblE4Z1Z3UjBhcWYzTVN6bXNKVnJTd3BYTW4zR0NPOVRNQ0ZIbEluaTFrZDBRc3pYQTNEUGdOamxaUUM4MCtIZ1QrR0lXd0g0NWhoNGlXVjVMVkNVKzdVRFVXNFdwUkQxUXlKTzZTWENKeFFib25CRmJLM21DbVlTRTVsOWZiZlcyZC9xTjhVUlhOZXJMMGdReFdkUGNyQ0xyVThTY1R1elNlQjZETDM1eTFJZ1piZE8xT2FUODV1eWhRVzh0dS9RQ2U1UXlNOG5GdU16K2NkRzZKL0NSQzJFcm1NaTBIY3RlTGFOeFIreUtTWTRPMnc3VkE4RE5ORUovYWtlWTdrbW9VRHlKOFoyWm9IbGM1M1NoMTJ3UlFSU3hpTzFqR3U4WXMrYUc1dGdXOXRhbkZQZlV5Vnc3WjZnNUVteDRyblNvNHp3bGQzK2c3czEyWmtUR3NWM1g4NUIzNzIzbHNBMUE0MVFSSmo3YWx3N01iQUwxNE44cGszeFBscUsxQmE0anUySmw3YXo2dVY4WW0rK2ZsM1hQSi9JYzVoYTd5SDUzb1dXSkVMY2NpNUk0TG9kM2VjQWVJcWplcTdCbnR1dTJheWE1OXg3YjNudnBCZ1NHVk9rczZhUTVKeThmQU1iNDlqcVhOWWxzRVViYzg5SnN5YXNNcThWQVFsY1MrRGFONkZMOW5uWDZ1THdkSWI3YTFjQy9oaXNqV2V2RkxXK3pzaU9jNTE5akhrZlk0Q3pXUEFOMnNCekJyNjM4aDNWM284WWFZNnpPTThHS0ZyYllsK1E3eDg4dzJhZlF2T1JRVU81UjVncWNFMng5ZE1kZktZVzRKMVM0SnA3djJkWTN3UHd6SkNDbFo5dE1ERnloVDVwd2hVQXZNTUU0N0JOZWlHQUp6ZWFadzI2bjFRbDk3YWUyZTF0UDhHUmUwbDd2Mk1Gcm5rV3dxRHE3ODA4TzAyQzJEaVQ5cW0zQkN5QjY3SUp0NGtDMTl6SFl5QzhXNVloYzVhNktnQis3emhNM0I5bndBMytIWk40ejJVQU5BYnVtRXJnbW1jL2x3MFk3VHFEU1BtV2JPdzlld3pIa3JLNWU5UERObkx2MFRIbUpmWlBXWWJmcDQ4VkZKL1NYclVsQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlLUVNFQUMxNG1nbEUwRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkdEUkJHN1FDVmQ5MkRnSHVReHQ1VWc5RlpRZEFId0V3RFVkRFg3UE9HaWRtMkdNU3l5dkwwNEh3anNiUjV5TUtwMVphem5kNzJuc3VZVEhJRHBIMGZrck5hMkR3UFhsallQaXJvNU8wNUhxc0ZRWUUrYXJOUjlzazI5b0JDaDlJdWg5L2djQ09DNmp2NjNzVFRIQkp6alpsMDBWRGt0cGF4M3pYTklJczk3WDBibTNBT0JjbUZKOE41Y3h6KzhvQm52OHdKbUo5eTA2TXNlY3ZGMzN0NCtaUHY4NjE1REMvRGNCY0xJbHpwYmlsRFJzYmdwQnNVMFd1R2J3Q002eEp4b2hnbjZkTkFYM3dta1ZMRlp5VDV4RE5McTA3MVBiZWpVallyaVRaVEFEYUpBMXhmOVNoYTU1UDZOVDV1OENuZmVKWE9iZU4wcjVEc3ZSaWZSVm5mREIzY3cvN3VNUmp4aVdhU2w4d3VmWUNWYkhRZzZSTG9FOFB1OXVaOTZWYkVhK3RZN3YzVWtDMXhkZEEwZFdtR3d4SWJBS1RVeGFSWXJZN3FRR1dZM1oxM2FPTFJTQU9TVHozcGRTLzZZS1hQZHJXZGYzYW55MlVMU0hvaURybUhLZDBvY01Vc1dxUzhwYzIrdzM4VHJwVSt5YWRqMzdja1JnSlhDOXpCaytwZERmR0FJMUJhNC9iZGFxenpOQ3BCODNoaTM1dlVnQzEybXpKMGRFaE0ra0YzZkJIaC9ycUxxMTBMVHJIa3d6ZkFGcTBucS9PcmtrY04xbXJEaW51UWUrcjZQNkpRa0F6N24zM3ZKOWpBSlVYd0R3UGdCdjdkYTNEQ2lidW9jU21oRno4dkxaRmVQWTZseld0Mlpaa29CN202dGJ0ZFlpTU9XNjE3ZXViSFY5cERCYWFwRFVGTnVaSjJlZGwxcG5uNjkwbjVlQlF4OGRFU3ZPdGFWV2ZwN1ZNU2hwYXVMNytvNWRHWDUvUVBGR0JnYmltdFgzalVacXZjekhmUU0rRzE5cGdnMlZQaCs1MXVFM013eFE5S0R1WGU1R09VWWs1bVhRemRzRCtGWmkvcHhzdEoxQnBFTGkxcS91QWo4OXhvZ2UrKzRqOXJYQWIwZE9kQVFTSGRwMnREbmorVldPd1FWNXB4UzRwbkNuL2YxSHk3T2xFb0ZySXJUSG5jTHBEelhmTTJ6VFFEQzFZTmlLaXB4amdvYTV2a0hndHpzODMrb0Y4Vk9EZVJjWlVsQ29WQ3lWd3VuOFBvM2ZYK1FHWHk0d3Mwa1I3Vk52aVZVQzEyWFRiQk1GcnN0SWhVdTVuaXN0MXJ0VENWekhHTG5tVGNwenUvU2VIYk9uMWU5anhqRDFIczF2Y1BnTnlDOEI5T2NhWS9yejErWWJNZ1pULzg2WWlsUldCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVoQUF0ZWFCeUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBdXRBSVBRaE13V1U5aklPNWF2YVY1ZTRYZCtYRXJIV2tQZ3I2eTJwMDhXMmx0TjlTR2lFN2Y0RXdPNUdPQ0Jsak5kQjRQcU9BRTUxN1BQbmlFcWxzS3FacDlaOG9FMTBGdWFZVTN5R0xHTHBkUUFPTkk2Z3Niejk3elh0VFcwenBXM20yUlNobTF4dWZmNGJkdzY4WndQWTFxcWdwb0IvcVcwNTVlNEE0RzNHNGJ0M1pJNlZMM1hBajlXYjgzdXU0SmlyN2lrRXhUWk40SnFPdGk4SDhFK2QwQzNuMWpCSjRQb2lHakV4eDV6cm9HYmVLUVd1dWVaNlpoY0U0R21CRHZEYW9UZzZ4UkpLUlNpRzFWL1dyR2x1YmJXWjRzeFlrM05mRnhuY3g2d3gvaEhBZVpGR1d0MTNmZXYxa01DeVN5Q1B3WEJ1M29rbGZOZlJqMVVUdUg2SEVmWklHWGRYc0lYdm0wQStQMHFwb0F1ZTlETGp5RG5NTG9Gck43eWwzaitIMXZMYXBxUHZhd2VpR29sVDRZL1pQdG1KMnV4bkJIaHl5dm55YnFyQWRZemQrd0hjd3poa3gvS3UydStwVHVtdWZyVVV1SFk5QzM0RFlEY3o3MjE3Zk1HMjNtRGVVMU1DQ1kwVnVLYlkxc0ZXUUozUWZLQ2pQOFhUR1VocW1DZ29sU05XOVRXem52NXR3dVJ6Q1ZQWXdzUUoxVXlhWlVxaHZ6RWR5MzNmZE0yMzJITnJpdmZSVWdZU3VFNGpseU1pY2h0emJuQXBSOVd0cjF1K201OWg3ZStHN3NGcHZWK2RYQks0YmpOV3Z1ZnMwczdKbHJ6M1huTmtmZ3pnV1FBb0VNVHJ1elROeWN0bjgxd0MxeTRoUzlyWStwNWRPbllxdHp3Q1U2NTdWMFhnT21mdE5PV0l0dHAzOWZXaHRMMldRUUhIOGs3Wnkzd1lnTWNiSVd1K1A5ZE0zSStsK0REM0RQaE9IUXZpVzlJMnZ4bjRPN09uejRDVnJvRHhPZlcyRk9HbGJlK0ppSExiM3pTa0Nsenp6T2I1Q1IybHVEVy9NK0Q1YzQzekhWZVRVd3BjY3crZkF2UEQxUEtlVmlwd1RmdDJNUUhzenpmN245eHZabHJ5UFNRMnBXS3N0emJqdzNQSFF4T0RlY2ZhclBWN0RiRlUzdVArR2NCclZrd01WUHZVVzg0aUNWeVhYVlVTdUM3alpwZVN3RFdROGsxSWpYdDJuUkZMcXlYMmZBelZFcnBIOC95TjM4cHk3Y052WlJtRUptVzlIN09hMzZVd3dNcitKaVBQemc0end0bXQxb3N4bS9TN0NJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJaUFDSWlBQ0lpQUNJakFpaE9Rd1BXS0Q2RE1Gd0VSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVIrQ09CMElmTU1kR1NwU09rVXg0RkJPL3NNWlNPZXU4cTZBVEZMTi9wS1VjaFBJcDduRnRRNzdCSVRhZjdxd0hnQjlRN2VXeDZlK2NZU2NmMjN5Zll2T29DMXlHQjhscmk1QWtZczdPRTVzUHZBRkMwOE5lUldpbFdlSDBBMjJXMFhpcVNWblArWnBqN3g2eHppVVBrMnJuVS9IUzBlSWJEdUk4RDJIdkZCUE1vMHMzckl1WGV4aTZYT3VEWEhNdGN3VEZYMnp0MFRyNjNTRENLWXVaMGlMWFBQTjhNNE9SSWVYSTlheUF1NDdydVVweXBFc3owWmlrUlcwdHBML1NjYzVVL0JNQ0xBQ3haeUMzVTd4S25MZGM4cGJnQzEwWVVIMXBTdWhJQXJ2ZUc4N3pWK3ZhdkFYeklFU0RBeGVNYkFEaDNUaGtwaE9CNzVvMXgvS3N4ZmhTNDQ3MDNKcnFSZXQrbE9BZ2REWGZ1QkRtUFRGanp1SUkxeE1iZEpaREhkUkRuajJ1TjVSTEVwbU1rUllBLzdJQjRHU05HY3NzQVlLNVRPYVoyNG5VVkVnUmxrQmF1NVQ5bkNyb2NlbXVNNjlnNlN1NDNyamEzNmtSU3QrK0V6dmgzbFJMbndMRkdOSDFvZCt2blpVMUdGTlU0cUx1bkhwNGhqdHUzejNzQ0F3QXdZTVFZY1RyV3Q2a0MxNThGY0VIM2JuK3J3S0NXQkNlcU9VZGExYlZVNFpDcmRFSGh6akZDVnNPKzl3RlFiQjZ1WUZ0OG42ZFQvVWNUNFkwVnVKNUx6Q0JuYlNLQjY4VEpVSkF0OTMyejVKM0w5MTcwZys0NWtDTGkzbmVMQWhOY0YvSHZNSEZkOXJPQ3ZyTUk5ODRvUHRlbjJQNVJZVE1yWHl6MWV1WDhPQW5BbnA0ZXA0aWxMblVNZlBmeEpRMnVCSzdiaklidjJSNTduMnhqamIvV0plKzl0MkRCUFpUN2VRS0lwTFEzSnkrZmZiSDdYNnY3a084NXpZQ3dESmFURW93a2hibnlyQzhCQ1Z3RFIxakRtN3AybW5wV3BPNjcxcktydEwwbGk5T203R1hleUp5VjJVR2hTcmh5Nyt3RFpnK1pnVngrV1ZMSnlETDh0dWE2NXR1YXZjdytKdmMwVTlNYkFWRDBPL1ZjTnJYZUZIRnIxemNOcVFMWGZYQS8ybi8xQktQWUZvUDV1UUpqSmhRUFpwbEs0TnAzN1ZGUS9hRmpPK0VwUDBiZ21tUEU3eFErMDRtTS8zQlEvNUx2SVRHTXFjK1BiUUQ4bjVGbmlURmJjbit2dmIvSTc5VzRYOVBpbXNydFd5eS85cW0zSkNTQjY5aU1jZjh1Z2VzeWJuWXBDVnhMNE5xZUU2NTcwazlNc0JqWE4zUXA2LzNZYkdXOS9IYk9EZ0Q1UmJOMldZVm5XNnlQK2wwRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJFQUVSRUFFUkVBRVJHQmlBaEs0bmhpNG1oTUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVXaENJT1o4UW5IbzA1cTAzTDVTbDdoZDMrcVhqWWpRZVFWbVVPaUFIeWY3QktNZkRlQVZCZlVPaTlSMnVxZERQQVZMYldHWXZzMEhkZzZMeHlYWXZPb0MxNzQ1UVFGR3p2WDNKakNZSTB0TThLQ0ZUUjhFY005QzRhRGE4emVuZnpGV3ZSaHRUcDJia2pkMGI2dHhYMXM2eHhzQW9EUDZNTkhaaFVLbE9VSmNZL3A1QlJNa2dXS3VmYkxGcE1mVVB5enJFek12Y2VKWkY0RnJudjlTZlBPWkdaQ2YyamtyUFZjQzF4bkU1cy9hVXBpSzF3TG4wQ01DYTY0aEFhNUhEd1RBWjI1TUROcEZqa0ZNUGdhQXd2YkRsT29ZUC9kb2hJUlBLSUI3dzA3TTlRa0FIbUI0ZmhNQUJhSmo2M2ZYL1MzR3hHVUxoWGdmNDRIa2VvY2FPN2RjOTlLU090ZGQ0SHJ1ZVZ2YXZrOXNZNVVFcnZ1K1g2NFQxSGc2Z01jQ0dLNVpVdGhReEhmZlRnVG1XeW1aTTY2L1BtdnNXaC9SYkxDb1N5Uy9MNUJ6SGNmRXV4OEhnT0p6TGpIOHZqM2V6MTVRK0Z4cHhXZHN2VXNWRHZGZDF5NUJRZ3JFYzArR1lqekRkRHFBdTJVSXYwdmdldXhzdWlqd0NZTWgvYXFpT05DVVFuOWpDTXdsY0YzeXJCczcxMU00eGZhUFV1cFl4enlwejFLKzh4d2RBTENwQXRkWE5nRTNLY0xYTWxGOGtBR2Q3UFNmQUNnb3o3OHRreTBZMzdLdEtldjIzUmNZMVBUbUN4SmNXL0xlZXl5Z2dXL3V4c2FaUXBrTTdNUzVsN3QvTWljdlg3KzREODA5Wis0RnUxSXJnV3VKNDhkbW1uNlBFWmh5M2VzVHBtMTFmY1Q2enQrNVJyMnNsWkZCaXhpQUpmZmVsTkxlbUR4VDI3cXBBdGNjSTU0N0gxVXdXSHkyTVdBbWhWM2ZaL2JLTGl5b3AzV1JYdlI2MTI1UGFwZnV1eUgrNWI2OXZTZkl2ZnZiajl6emMvV0ZndHZjQzd0ZW9LTytnTjJwQXRkOTFkenpmSTRKOEJmaldqT1kzN0N0cVFTdWZXc1JCbVY5Y09IM0lURm1Zd1N1ZlhWdmdzQjFqT3NjdnpQZzcvR0JnTCsrWUs0aFczbE5VVnlkUVVLWDlrd2QycTE5NmkxSFVRTFhaVmVnYTkzRWUrK1paZFZOVm9wQjduZ3ZINmFTYjR0cUdTeUI2elNCNngyN3dDa0hGd1F1RG8wVDV3THJIU1orVzhkMXhOaEFKMTh6d1pKTEFuRDUxbjYrdnZUZmVwWE9TYTZIK1R5OGw2T0NPYStOMHY2b25BaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUlnQWlJZ0FpSWdBaUl3RUlJU09CNklRTWhNMFJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVlSaUFsY3ora29PcXBqWFdHZmVDZnJEUW5XcGJUN01nQVVmSFdsWElFaVZ4MjFuZTc1VWZVckFSemdzVG5WNlhEVkJhNTljK0xqUm1qcWx5bURQME9lcVVWMzNtaWNOeW1zVzVKcXo5OGNHMktzNUVUZ3AzbGZBQ2M0ZnFhSXkyMDZoOVp6Y3daQ2VSZE5ZTHRPSlBhTXpzSG9aZzRyUzY0UjEzVkhZUWVLenBUZVIySUErVnk3YXhkUTRvcURqRGtDa24weG52bFNlSXBPc3cvekNFU0ZiT2xGdXloc2VVd2dJd05Na0pNcjBNU1BBWlE0YVBYTlVRem5NbzYyVStxbE9QZXJZN0N0MzJOcng4enFKczllTWs5eWplUllIMnFFcmxQS2Z0TE13YzlsT203N3h1TE5SaFI2eVU3ZzVPSmFWMzdGM0ovNFRMSUYyMzdZT2ZmZUNnRFhyYjdrQzlZUUN0UkFrWTRUVGJDVFliMzNBSENTcHlFSlhLZk03QzN6bER4ZjhsdFpiZ2srcnlnWVNRR1lZVW9WYmw5aXowcUZydW5rekgwR2lsMlhwSmdJTk5jSEY1UlVQS0pNeUdrNlI5ZzFwVzhVU0g1YkpKQUNnd084S1BPWk1xTDd6WXN1VlRpRTY2OTNHZ0duSVFUWC9lNFdKbERhcFN4YTkrdUNwNzBsZytCWTBkKzUxbkdwZ3JsRTRSS21TQkhLVGNVNFpNajE4cjkxOTZUL0RZRDdRZ3c2UW5HNjNEU2wwRit1YmNQOEVyamVrdDVVUXNSanhteU9zdWNBMkQveUxrK1JPWXJ4aFFJdXBGeTNzVDI4T2ZyUE5zZWNoeXkxVDdWWnBveHY3VGFucU0vM25NeFp6MDFoNTFMMzNuTTRiUVdBOStHYkF0aW5lODkvVUlMWUVvWGI3MjNlMzNNNHo4bkxaMmRvVGRaeTM4clg3cWNBN05VRk1mcDVEbGpsM1VnQ1U2NTdseWh3dlpHRG50anBUUmE0M3Q0RWk5ODV3dXBIUnNpYWdlVS9ZSUtTTEgzL1B0UWxudEh4YklwQ3lkZnB6aU8rYnZZK0U2ZE1VamF1RTk0RjRPcUIzSHlHTVhEWWR4MTVjZ1d1K3lvNGxqd3ZaNzlpNlRNbUNNY1hZeGtUZjU5SzRQb2c4NzJVeXl3R1pyMDdnQzhsMnB5YVRRTFhXNUxpbVJUUHdhWUtzcDA2VGpYemNRK081eUZjNzk4bjhacDZDb0RuVnd4S1Y3TS9yRXY3MUZzU2xjQjEyUXdMZlhkWlZ1TjhwZVk4KzVYQWRackFkWXZaTVJYN0ZOdTV2M1Q5THNqS2Z1YjdtTDlNS1dUeWpOM2ZwTkQzZXgzbnRmejI1MDdkZCtVL3piQkZXVVZBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVUZ1R3UWtjSzNKSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpc0E0RXJnYmdZd0IyOEhRbUpPeTI1UDZIeER2cEpIUTdBQjhlMFlGYkcrR2JTenJxb0tqbjdpTUV1MWhsQzZmN0hUdVIydmNEdUxhbjM2OERjQ0NBM3dlNHJMTEF0VS93a04wTmlSNk9tQ2JWaWs0bGp2SXJJL0JLd2JReFRyVXQ1bThxek1zQ09MVnpFdVkxNmtwUEJVQkJWNlV0Q1d3TjRHUWo5RzZ6b1RnK3I1RXhjMEs4bDBYZ2p1WTZjWjEzbGppaFRYV1BpbEZNRllCaHY2OW5STHYrcVVEVW1uYjhCc0JyT3pHZVYzWE82MTlMdUQ2dTFZa2ZudTFZYjQwTnNNQytVRmliRGx2RGxDSUVIT1BwKzMwdVljUlNlKzF5cWZPa1JudGNaei9MTVQ2K3Vua2Zmb3hIak1GVmhzTHFGS3UzcitVM0dNSHNHbjFvV1VldUEyL0tHdjRSQUk2MmpJNEZhdURhK0NPZDJQdFZCK1VvYnNtMWhFL0V3ZlV1TVBhNmM5MUxTK2FyeTZtMDVUaW0xbDN5ZkVtdGV4WHkrWjZWT2FLdlMrMW5pZEQxTHdEY3l3ajc1UFlyUlFSNmFvSHJ4d040b2FjakZMalpyUXNnUkdIdldFcnBHNE9IUExFVEFEd3lVRm1wK0YvTXZybCtYNnB3Q0htNDdybjJPeWYzalJoUWhJS3h3MVRpNUM2QjYvR3owQmR3Z091Rm0yZXN3NGFXVENuME40YUFCSzdIMEZQWm5nQ0Y3STQzei9FUWxSU0JrS1hzSmRqOWtNQjFmTDZuakcrOGx1WGxrTUIxZkV4YTdmdnozc0t6U0s1eHJ4RXdnKzhSZTNRaWVmOGFOL1ZQT1ZyWm5HSEN4YkpTNklobkdLNFUyNDhZMCs3Zm1QMUpucUVNVTQ0NCtaajJWWGIxQ1V5NTdwWEE5V3JObDFLQmErNXJVeVM1RHdiRlFDb1VOTjUyMFAwTEFkelRCQ1dxVFlYQkZ2NEZBTCtoR0NhZWg5N1pDTmFsdEVreFlBWjg3ZmZwR1RDQUFXRzRkOCsvM0JONm5PbHJTbjFMemNObjFCRmRYL2c4YnAwWUtJeHpZUmprMW00ekpHN052S1VDMXl6TGMzUHV2eDJlMk5HalROQlRuaDJPU1ZNSVhJZStDZWh0NTdrRWc3SzlPK0g4TTdXL0xRU3V1ZWZHczVyUVBISFpSeEh6SnpsK29MQXk5K3RxSm42M3hucUg5elhXdjY3dlZENTJ2RDlTRVA5NUpxaFVpREdmS1Mrb09QZHFqcWYycWJla0tZSHJzdG1WZXo1ZTFzbzBwZVk4KzUxS1pObjNiSTd0SDlaKzdybm16Vnp2OGxPeDk4M2l5NXNnWFF5ZXdISGdubEpKNGxxZGdWSzQ3c2xOdnJNNm5zL3llN3d6Y3l0VWZoRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkVRQVJFUUFSRVFBUkhvQ1VqZ1duTkJCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUmdIUWpFaENUbS9CaDlETitRZU9kWU1VbmF4WStsVHdld3E4ZElDdWhTMUtnMHRYSzY1OGZkSnppRUVHa25QN0xtaDl0MEZ2U2xWUmE0dnEvcHU5MjNzV0tFcFdPY1V5NTJuZWJVNWNwTFVmT1hHaEZPaWx5UFRhM21iNHBkUGllQ3Z1eW1PUXVtTUdNZU9ncWZOWEFpNzh1bGlJbW10cUY4eXlCQVo5OWpBZkNlNkVvbHovM1c5NmhVY2lFaDJLMEEzTkFFY3VDejBIWWtUbW1EejBtS0ZQQit5YlVFaFJWUzAyR2RJKzR6SEprZkNPQzQxRW9jK1h3Q2ZTMEZVMTFPZkx4WFBBM0FOMGIwcFVYUjZ3QjRkdmZmTUNCSmlXRHdXTnNvY0U3aFU2NnpRb20yVWFpSjh5c2wzZDh6ZjBxdTQ1VDJhdWE1akhGUWYyUm1wUTh3Z25xdVlyNWdKckZBRFhSOGZLZFZJY1V4OWdKQU1SSlhjamx0ajNVaWJTbHcvYTBNUjhvcmRXSmgrMWp2Q3d6Z3cvc2ZoWFZUMHA0T1laaFZtSmNwZlN2TnM4NEMxejJUN2J2L3dlZmRRWW1RS0lhemR5Y1k5SW5FL0gyMkZCSG9xUVd1WDJZQ3dyaTZRdUU2aXZYOU5xR2ZxWDJqc3pidmJRY0U2aXpsbTJEbTVGbVdMQnppR252N25mUEdSa2pRWG4rV0JOcHFJWEE5OXZsbFR3alhQTTVabTdyRUVXcSt4L3NDL2NXZS9hR0pQNlhRMzVnTFVBTFhZK2lwYkUrQTYzSHVLY1JTeW5Ycld4OXhEVDdGczV6dmliVEJUakdCbWxEZmw3SS9FaHVmc2IrbmpPL1lOdVlvNzF1TDVUekhwckI3enIzMzFtMVQ1SlNCV0NrVTZrdW5BTGkzQ1Q2WHdydTF6U2syMkhrZWJnS2d1TXJtQk1qSmJkdkhvdlo2TU5jdTVWOGRBbE91ZTVjZ2NMMU80b1A5TEd2MVRDc1Z1TFpuLzZVQm5HakVwWWUveGZaM1M2OGlWN0JFMXNWdlFMaVhueXBXekgyYVczWDdOQXljOUIzSEh0QzZyQkduZUY3UVQ1UFhQNzluMlNZd3NERnhheFlkSTNEZE4zMlRUcFQzclFCMlNwaGtQQjk3V0JmbzdvTWpoSG1uRUxnT2ZVZGxkL1BwSmdBSnZ5VVptMm9MZlk2eHg3Y1dHL011NkxQSGQvMnY2enRWYkZ4NGpmUHM3UzJCcy9yY3M5SlltelYvMXo3MWxqUWxjRjAydTlacGpUbm4yZTlVSXNzU3VMNzRQSitLZmQ4eXYvVzZQZ0R1Uy9PODlhL0tMcjAvbHVMWktlMS9EWUN2Wm43ek5Xeld0MGZPWUxjOCsrUDNVMG9pSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaUlBSWlJQUlpSUFJaVVFUkFBdGRGMkZSSUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSQUJFUkFCRVJBQkVSZ1lRUXVDNENDUzdmMjJMV0tqalhjdnowR3dINmVQaDNlL1R1RnQ4WW1uMWdsNi8xeUp4YTdPNER6Q2h0cDVYUlBCOHZqQWR6TFk5Y1hqTERpanp5L3I2ckE5ZFlBVGpZQ2FuYlg2RHhGZ2RFbGYxemV5dkdWenA4VWFpV2JWTUhDbENuZGF2Nm10TTNybjJLeCszb3l0M0xlVHJGdHFYbkk3T1ZHK05lMnNVWkFnS1gybTNidGlQL0wzbnNBM2RKVTlmcXJsTXRGTEJTUVZBSWlDQXFpZ0JRSVNNNnhSSkFrcUNCUmN2YitCUVFsQjBFSkVnU1JFZ2tTSmVkd0NaSVVsYXlBd0VVeWlDaGNrWXY2bjBkNitPYk1tWjdwU1h2UGZ0K25xMDZkN3p1N3AzdjEwejB6UGQyOWZpdmk3cFZ6THMrSVEwZ2ZUWDFWSXBDWWEwOU9ZSy9PUDhVSmJhMW4xTmcrNlJNdVJ2ajJMeUxpUEdNTGpZalBSY1E5VXdDSUtjL0tjMGJFRzZ0bjAzbGJkUSs5YzB0TXZVcEV2TFlqY01WU2M1MHVHN3FjK1BZaEdsM0NaMHUyOHF6OTZZaDRXa1JjUEdNOFl0ejNIeUYrY0orSWVFaEhXVGoydmFnRTBJN3pNQSs5WW5ydUlxSXdObjBwQ1VUOGVjZUY4SDFnRWxwdi9vd3dNM1B5ZDJRcXkzMDM4RjY4UzQrQmh5WndQZWFiYnF6NFpSZW1Mc2ZXS2UrWHNXTmt5L2t2RUJGdml3Z0UyNXJwMmNraDk3KzJiUHhJMjNBc2ZtUkVJQWd5bE41VGlmcGZzM0wyL2NwUXhzYnZwU0xRSTRwSXpVUWJBQUFnQUVsRVFWU2NsUlhCZmtUeXI1d3BaZWg1MHJ4c1ROc0l1b1hvVTY1ZXltWHVpT0Q4cDJhMWNQOFhiMWs0cEd1TmhINGhtQXhyRExsdnJhbHJSZ3BjengrUHpNTllGMmgvQTQ0Um8yOWJzVXVodnprRXhyN2p1OGJiMEx4L3FUblMzTEUraDVQWDVnbndUZnVXakNoMCs2cVMrV2R1TFdFTlViR3VWcTFSLzFiV1I5WWV4eVg5dTdZTmE1U3Z3UFV3MVYycyt3L05jL2wydWxaRXZIclkzUC9Pc1F1YkMwMzViamJXaG02VnVXak9uR1RJRGdXdWh3ajUreENCWGM1N0ZiZ2U2bzFwdjYrMVI3cVV3RFd0NmdwWS9lVzB4c3VleWxMcExHbmY1b0t0QW5uUDNHRGg5ZldqTWtkY1crQWE4VUlDNXoybVd1di9ucDZPTGhHMzV2SWxCSzRwaC9XRGUxZHJQT3k3bGFRblJNUjlJMkpLVVBHMUJhNXB5L01pNGpvbERVbDVPSGVCR1B5VS9kRm1OVnNTdU81NlpxMFY5RnVCNis3QjlyTXBtRUF1SVBYWW9EWWpodlNzcks1VG40aFBnZXRwdzBtQjYxTzRYU0lpT0VzekpiR1BmOW5XaFgrWGdwOVBPVTlGTUllM1Z1Y0QvcWxWcGdMWEovZk9yZ1d1NTg2bGExSHJKNlo5MDNwUG5uZlFsTE9DZkVjOHZ6cC9mYjRXbXMrbTd3Z0NqNitkT0FQRFdEMUs1d3ZXWm1iNUVwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRT2hvQUMxd2ZUVlJvcUFRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKOUJBNFZVUWc4SXNRWGxkQ2hBdG44WDg5SUlyblRvZk96NzVubTYrYnhEQ25tTEdtMHoyT21tK09pRE5sREVQd0dNSFhya1BRaHlwd2ZhblU1bE8zMmp4V0RHRktYeTV4VGQ5NDRORDZDd3FkQ2ptMC8rNkkrTnRLQUo0RDlUaG9ySkhXSEw4bDlpTDJpZWhuVi9wTUpYNXh5WWo0eDVLQ2prbWV2bWZtbmF0bkJZNjRoNUlRR01RQnV0UnB1RTlFY0l0dFhrSjhvQzg0QTIxR2dCUlJ5bDlMd3M2SXhRdzV4ZVR1ZVlTaDF3b2VnSE03OVRhZDNQdkUxbklDYVNYOVBKZDc3dDA1OS83S0NTYXU1WVJkczlxU2FQUlEvMjNSVnA1Uk4wb0JKczdjYU1CWXdmTmNRSWUxKzMrSWVmdDNSSzF4Vk1mSkZHR1FQbUdLcnJML013V3V3T0VRNFlyL3lCandNMG1RcE8wTS8wZEpmQ0gzTE9KNzRlMFJjYTVXdVVQeitOdEZ4Sk5iMTN3b0lpNWZpWEFndURJbGRUMUxoMFFrdStycGNpb2RJMEEzVnZ5eTFJYmpMbkNkbTNPTTZac3A0MnBmMS9DTXVuSGxtTTQ5ZU5vQkk4YUsrNDhSZ2Q1Rit3bWV3WFBrYkpuS2Zqa0ZtU3F4Wld6YmVIYTlyc09KdWxuWEc5SjZ6OWRLRE5ob25pMExoOXdzdmFlYTZKcHp4OXo2eTlSbjRselIzeVdlOFVQRHBLdU9NZlBwdWUreElmdXVuOFRoMi9rZW1nU29ocTd2K24yWFFuOVQ3T3VieC9jSmxDbHdQWWYyMGJ0MnJCQmF5UnhuRFlIcE1lVFhxSi92RVo3eDdhQW1ZK3dxeWN1M0pOOHM3WFBzZklzZ0JMYldtbTl0R3dIeG1PY2R0YVRBOVhDUDdtcmRmMmdQNnhrUmNjdUNOVXRhdEN1YmgrbDlKOGNaVXJDNmkyVXVtRE1uR2JKQmdlc2hRa2YzZDhSaVdaZWJtM2kvc1FmVFRsK05pSy9QTGJ4MVBYTlI3cGUxNm1KZjlSNEROaDhsOGNHNnFXTyt6Y1owNlpJQzF3UXI1UnpEK1ZzRzlKMWZHR05yblJmQjNpZDFYTGdHbzdtaWZGUGF0OFkxYXdwYzg3M3hlOVcrSk92dWZlbE42WG5XRnAvc3VtWXBnZXU2YkFKbVBTY2lmcXdBN3FlcnN4aTNxUFlMc0hkb2o3VlozTm9DMTZ6WDBvYjJkd1RqbmdCNXY1cHBHM3N6TjB6blN3cWEzNWxsU3dMWFhjRkdwdXpGbExESTNmOThUOTI2cElBam5DYzNIbW55VnM5eHVVNTk0b0JVNEhyYURkbzFiOXBWc0xkcEZuL25xcTcrbnJyUFVkdlI5VzZZWStPY2EzUHZBUVd1VDZhNmE0SHJ0YzU2YlduOGpSMjdhM3l6akxYQi9CS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpMQVNBUVd1VndKcnNSS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa01ET0NmU0p3WDYrRWt5NmRPWE05QTg3dDJwNmhWMkNjOU5MbTM0bHd1Ry9NbEhjYzIybis1elRKcTFGTVBrcVNTUzgzZnBERmJqT2pYSEVPSzVlQ1hwdlhleHI3ZkV3ZlpSM1g3bHZlN3RFeG1wTHR5Yjh1VFQ3S2VYbGVDRUdmdG1JK01TVVF2ZDB6VFVqNGhXVjNRajVQYTRTTTBlY3VVL1U1N2dKWEpjRWdQak5KRWFCV0FBSmtRZEV6bk9pc3VUcHV1ZlhkSFNuenJGaWF6a3g0T1pRUlVqM2l4MENsWE9jZzg2WlJIZlAyN29uUGxLSk5Gd2hJcjR3NDE3SkNUM2dhSDYxaUVCWVpJMjBSZEhvWER1M2JDdUNEWWljSSt5SzZQWDFSZ1pHeVFraUlleHdtVXBZOXNOcmRINWhtWE5GcmFubVBSSEIvTzAxbFVEY053ZnEvY0VrVkhubFZqN0UzYmpQRUEvUEpSeUdYOUw2RVNFSHZuOTREK2JTa3FJdGRSMUxDVndqcXNmNGFxWi9pd2dDblpTa0pjUlB1MndnWU5MU1lrY2w3ZGxLbnR5YzQ2Z0xXVndnaVN3aUFwMUxZK2VjWTBXZzF4NEROMG5DTUYzMU1PNlpUeE5ncUNSTmFSdEJCSGhXdGdYK20vWDlhUkw3LzBhSkVSdk1zNlJ3Q005RDNybnY2MmtuM3hGTjhiYytnUnUrUDE3WktxdWVCN09lOXZpSXVHUHI5NDlGeEpVaUFyR2pzVW1CNjdIRVRzNVBNQ3ptR08wMFJveStmYTBDMTZjUTZicGZwM3diemgzcjgwZUtKVFFKOEQxOTcycU8rWWdPTE13eFdWZHRCNHc1cmdMWHV4bzVoeUxFdkNzZVM5VnpLRnozdWZhK3E3cHpRZDNxdm1hLzh1Y0sxOVYyWlhQcE9Nd0ZZNjJ2SitEd3Ewb0xHNW52SEJIeHpvaG9Cd2VlOHE0ZVdiWFo5MHpna0lXNzFrSlhNbGRSNExxYy90SnJwVjJCV2t2V2Vrc3R6dTNic0VkMGpSUk1yTFNza254ZDc2SXhBYXo3NnJob1JEQ0hhYWEvaW9qM2xoaldrd2N4ZTlaR21zSEQxM3BmRURTT3RhdjIrbjdiUElUcEVRUXVQZGV4dE1BMTlzRGxZV2x2cHdReHp4cjJnZVlHWnA0cklJcXR1VUI1Q0FuVDF5OUxnYjhla0drWTl5RDdLZThvYVhoSG5xMElYSitxRXREbkhOY3Z0bXhjYTN5elB2NjJqaUJJUy9UcHhLN1l6R1hzWTcwNG5kZnFNb3AxVllMbmJpbTVUbjFpYnlod1BXMTBsZ3Bjc3o1NnVvNHF4dXo1VHJPdyt5b0Zyay9rTWlSS3Z2UjdyMnZjclBYdUdobzN1eGE0enIyNzIzWXlwK2tLNG5HZHpCbUZRLzVPbm5PR2JhaC8vVjBDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVQyVEVDQjZ6MTNnTlZMUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNpeEc0ZmhLRnl4WDRTOG5KWjdFS1Z5eG95QWxteGFwUEtocUJEOFNzUGpDaDByV2Q3bkdFZUZGRVhEVmoyMXNqQXVlRXRvUGdJUXBjNXdSQWFUb09oUWkzYmoydFBSNldidisrN2IxNFJIQ1l2eTN1V0xmemQ2ci93RG5hOUIxR09jZkJQMGozQ0U0Z2g1TGFZbVU0bytNVS9idVZvK3I3T3hweDNBU3VTd1FaNEhUQmlQaWVCcTlIUndUQzF6bXg4RU1RdUtZNWlCWHkzRytudjZtY0Eya2o5OEtkSXVMaHJReHpuSU55ekpkNC95REM5OHlPOXF6OWpOdXlhSFFieHlIWWlyalFGZE5jdTArUXY5MjJuRlA4MmdMbnVmY0JvdGJ3SnRBTWdSUDQveW1KK3hFbnd6NXg2V2E1ZldKN2lJZmZQeUp5N3pHY0libUhFS2R0cHBJZ05VdUx0bEQvVWdMWFU3ZzNyMWxDNEhxdURVZngraTRSWE5wNUhJUXNDUEtBQVBENWVqcDJ6SHR4aWdqMFdtTXE5eHlwNnhzN2g1amFOZ1JabnRlYXY3WGIvTlFrdER6bVhiTVd0N0hsTGlrY01yWnU4dmNKWEhmMVdSMXM0clNWa1BWYklvSy9tMm5PZlQ5WDlIY1h6L2l1T3NiY0MxMmlBaVhpY3lWOW14TkNRQlRrOGluQVJrazU3VHk1T2Y4alo1UlpZZ2ZpVW9na0VjaXJKSTN0LzdGQmhiQkJnZXVTbmppOFBIM0JGQmovUDVXQ1BEWmJWbkxmNXRZUGh3UmlsaUs0Ny9ybnRPTlFoSmpudEhFZjErYTRqaEZUM29YZCsxeDczMlhkQkdGOWJZYzRFWXpIdkx0M2FYTkovM2VKdHRiWGxRVGNLcWtqbHljM3h2Y2xpalduTFY0N2pzQWhDM2VOYTJsNTdwSzVDbXM1QkVqYWVpSjQ0b1U3Ukk2NzdCN3piVGFtM1V1dmxiSkg5ZVpxRC85TUxTTUlGRWNRNzlKdm9LNDJzSjc4d0txTSszWDgrUHkwdHIzMDJzbWFlMmhkN09lc085UlkxclM1aVo0OS9SZEdCS0xqZmVrcDFibVZ1NmM1UU9uWVhFUGdtcm9aUTh4VG50MHhScnRzNDl2OXBsVmcwdGYzN0ZYVTErWGUxWFA3bFAwYTl2MXYwMkZnODdsQTJ3alVSaERrNWo1eGZSbjNCaUxqN0t1TVBUK3d0TkJuNlRobzUwTXNsclZxQXNVMkUrc3JCQm9oWU9HU2FhMCtYZExHZlpiVkZ6eHlYL3VkZlR4Y3B6NlJqZ0xYMCs2ZXJqbm1FeU9DUGZJNjVZSVNjQTcxNnRYejZ0M1RxdDdjVlZ2NlRzbnRBK1dlNDBQcmwwdS85NDZ6d0RVRDkybFYwTmhiZFl4ZzdnbFljdytkdnlPd2VkLzN6NWJHMzlpYmM2M3Z1ckYybUY4Q0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FSV0lLREE5UXBRTFZJQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaExZQzRHY1FGNXRUSW5JMjE0TTc2ajBVc25oOGRRYk1XaU1VRmZUNUYwNDNmOU1STHd4SWs2ZllZVlFMQ0tmVGVlMFF4UzR6amxGSVp5SUFQa25OakpXK3N6WXhYaFlFc08rN2NYaG1jUDhQNWxwMUx1UzAwOWJ3SDFKQm9kU1Z1NlorYTNxV1hxRml0TTdEcVVoRVpFVEs2TUpPTHpqL054T3gwbmcrdHdSUWZDQ3N6Y2dJTkJ6bnNJK1JpZ2NqdC9veUw4clIvZG0xVlBFMXBydk1JUndubFM5QTMrL2NvVDZkS1BnSllVWWNNam5QWXV3WnpOOXJCSTd2RktyM3NKdStHNjJINHlJMTBURUpWb1g5Z2t3anEwamx6OTMzM3lwRW1yOTVsS1ZMRlRPYVNxbi9UUHZnZEZDNXZjV2c5UGtTenB5SUFiQjNHZU95TWRZKzc4LzJYTGxzUmQyNUIvcmpNZGNEbUdJOXR6L2craysrMktQVFFqeDhWeHN6NFZMZ3Z0ME9WRWlpb0RJN05UN1FJSHJCUWJRaG92SUNhck1GU2ZaY0pOUE1JMW5Gb0VrdW9SUnlEam0zcDhxQXIwR3E5eHpwSzVyYk5DSnFXM3JFL3R2dHB0NXpxTW1DTkNzd1c1TW1Wc1dEaUZReFR0YmMyem1tUVFUdTJ0RTNIRGhlYUFDMTJOR3pzbDVjMnNGYzRWTFN3SUp6Yk84KytveHowNUtVT0I2alY0NCttWHluSHRkRWdocHQvWU5hZjVMTUtsZmJmMVlJaHE1YjRIcGZkYy9aL1FvY0QySFh2N2FReEgvM2VmYSt5N3JIdHEzSEJLVHFudDZsellQamN5K1lLeGN1L1plck0rT29SNDZ1cjhmc25EWFdyMVNNbGRacSs0bHl1VjV3bmNuUVREWmF5Z05OamoyRzZMVTFpWDNWYWlUZFk3ZlM5L1ZUUnNJYW51Tk5EOHR0YTJkanowVjltM2F3YWpXM0Z0WmN3L3RVQVd1RVdZbjRPeGpCZ0syMFgrc3J6MmtKd2h2Yml5c0pYQmQxM2ZHaUhoeXg5cFB6aDZlTzV3ZCtwZWV3YnVHR0hMZnVtSFhQVVgrRzFUQkNwL1Y4Mno1clNyUStDTkc5c25TUXA5VG53SHNpNys5NnJ1enRRcFlhMjl0alQ2ZDJ2WXRYcGZyRDJ6OWZQVzh2M1MxM3NDNjNWYVM2OVFuOW9RQzErdU1USjVQQkRSbEQ3eWQ3cFVDdDY5VDgrNUwzZEozaWdMWDVmM2YxVzlyZldmVVZyWFBlakd2SW5qSGh5TGlQMUttc2Mvb0xZMi9jdnJmeWJrMjc3SDJtRjhDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFXSktEQTlZSXdMVW9DRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoTFlLNEdjUUU1dDFEK25nL01mMkt1VlpaWGozSVl3ODFiU1ZDSGRYVGpkRDRsZzBlODR4ZjUxQSthaENWeC9YeEpTdTNySGdPQ2dPMDZFVFFIdnJZeWJ0aDI3R0E5THRuM2Y5aksybng0UnQ4ZzBpajYvVmtTOGVzbEdIMkJaY0hwOFJOeXh3M2FFYzY4WEVZaXpIVXJLaVpYUmhzdEh4SHM2R3RMbFZFcCsydjYrVE1NdmxKNHJQRi9xOU5rMHBuSkNxZ2dONEJ6VFRBamgvVXBHTUpwOGQ2Z0VhdS9YdW1hcWt3cDkvY0JXZVR6akh4MFJEMnJWOFp3a210d2xmUDNhaUVENDlaOWExNnpwbko4YmYxTUVybjhoelJGb00vZi8vK3NvZkVraGh0K3UzakVQNktoakNURlRoQ3VldWFkNzk5Q0U0ZHVZNWdoVklJVGN2UGYzK1h6a25yNTFod0VQam9nbjdzQXdIQVcva2h3R2VjWWdnbi9URWZYeVRQNXlSRnh6eG5QdVhFbk01SHl0TWhCbDREbiswZ0Y3dXU3UjBnQW9YUTZQYzRWeEZMZ2VNWUFPTU92TjBuM1NOaDFSOUJjZFlIdkdtb3pRRXFJb2JiSGZ1cHd4WWhWVFJhREgyanlVUHllMlZGODNaUjFsVHR0Z3pEZnViWG9NNS9sNG80aEFzT1dRMGxpbjlHYmJsbkJRNzVzNzVMNUJDSzVEWDdSRjNhY0dRYXZicE1EMXZKR2J1OGZtQnFsUTRQcVVmdW02WC85UDlmMTF5WWo0M0lqdW16dldSMVJsMWg0Q2ZlK1c1cnJ4MUxueHZnV205MTMvbk1HblNPMGNldmxyYytKcWZDZnlIUHZIZGFvZFhlbysxOTUzV1hkZlhVQmpiWXh2aktHMFM1dUhiQ0Y0SUFIM3V0SXU5aXd1VTYyVHZ5a0ZpbXphTUhYTmVhaTkvcjRkQWt0OEYyMm5OY3RZTW5jZGJ4a3J5a3Noa09ORlUxQVIxajNQVW43cGYrK0RJT2o4UnhIQkhzOGF3WCtYM0ZlcG0zYkJGTlNjNys1bVlsMlpOV1hXcHNjbUFvZStMQ01ZeWJyNi9WYzZON0RtSHRvaENsd2pEUDNVYWgvMitnTWR5RHJXcmRMKzZwVHpIR3NMWEdNK1F0MDNUMExYSlVMekJOemwvQUx2NDY0MnJTR0d6UG96UXFsZGdRZWZFUkczemV5WFhpVWludDhSSUxUdXRyN0F5RjFkdXhXQmE5ckZzN0R0RTN6ZktwRHFROGMrVkFyeTUvbzBGNXk3b01namxlVU1xVDh1MXRHcU9mdTVhMEZ5bmZwRXNncGNMei9TbUt1d2Y5TVZWSHBxd0lmbHJWeXV4SzUzQThHcENhWTNsTzdTTWFmN3UrcDdsem5kVURCcW5qMlBiTDNqRkxnZUluN0s3L3NRdUw1MjJ0L2tITXhmTmtTdG0xYVBmVVl6enlUNFRVbGlQbzhON2ZrRFkrNHRKUVYwNURsemRTYjd1aDFsL2xWRXZIZWd6SSttODU1RFkzMmlhVjRtQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDK3lTZ3dQVSs2VnUzQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtzRFNCbkFoalhjK2FUbjFMdGVXc3lkSHgvRXNWdUVBNTM0NklLMGJFMjBhV3RTdW4rejVIVGt4K1hYSXUvSHF5LzlBRXJpK1Z4c1NwVy95L1ZmMzdGU0xpSFNQN1pWL1pkelVlbG1yZkZ1eTlTVVFnMUp0TE9HUWlOTmdsY0xzVWg2MlhjKzdLTVFybm9MTjNHSXFJOFhPMzNvQ1dmUmRPN1RsZDY5OC9sQVN1RVZKdHB5Nm4waUZueWE1cmhnUzd4anJTWU9lU2dnQmRRZ0NJR1NEazFoWTRSSHlaZitPM3RtZ3NkdUVzaElCQ1U5Um5UZWY4M0RDY0luQmRNcVNYNG43ZTVNZ0VtMmI2V0FvZWdSUDcxSVI0QllJVTlHc3o3VUlJaC9xT3M4QzFZakNuakxqMmM0OEFNd1NhNlV0ZmlvZy9qQWhFUDdrSDV0eHZmUTYraUdNUXZLSHZIWjk3QjVZRVFEbFZla2NpRE5GTWM0VnhqcXZBOWZjbmdaMmZtL3BRM09CMXQ0eUkxN2ZzeW4xSC9Yd1MxdGxnTXhZM0tTZnlUVVY5QVVuYWhzd1JnVjZ5VVVQdlErYlNCRE5oVGFBMHpXMWIzN094dGdGQlVnSkF2YnZVcUEza216S1hyczFlNHQzZDkzM0FNK3dsR2NHSk5yb1BwbmxnTGloT0NlcTVvcjlUdm1WSzdHcm02YXBqakdqaVZLSGNFanR2bDBTbjJubm5CcUJSNFBvVW9sMzNLMnR3TCtnSjd0VFZkd2lEWFNjaTJtSjJKZUlPdWJGQUVFSytnMDFsQklZQ0kvS09ROUNNTlBXKzNiZkE5TDdyTCt1Sjdsd0tYTStobDc4Mk55YUcxZ3JYc1dhOG5Wd3h0RVk1MTlaZHJ2c1BDVnpmTXlJZVU5Q2dYZHJjWjg0NTAzb2VhNFpkYVdxdzNBSUUzODJTRS9wOGRoSU1ueUllT3FaKzgrNlB3QmpocnYxWnVkdWF0ejQzUkRUM1J5T0M5Y2RmN2RnTEdLSkZVRmJtYW9qWC9uMUdBRzZvakRHL3oxbm56ZFhURmJpMXpqdmwzQXJsOGUzWEpXRDdrWWdnVU8xYXdTelczRU03SklGcitvQnpNNHhMM290OWlUM2RHNmQzNTVpeDJNeTdDNEhydWo3dVY5Nm5uRTBaU24waTdVc0tYTU9iUUhmWTFTVnVqVEFpNC81VFBRWmZKQVVTemZWWDE1NXhycml0Q0Z6Zkl3V0FidHU1VmlES1hJQ1I0N1F2MEhkUDVOWTZ1V1pyMzJIWTVEcjFpYjJwd1BYUUUzL2M3K3p2c0s5MGpZN0wzaDhSRDl2ZytUYjIrNWxYVDAxVDF4U3BiNDdJOHBnOStkeTdlZWc1dnZSN3Iydk9sMXNENHYxOWg2bWRVbkFkOHdmbVBzM0UzTzNsQzQ3UktRTE9jNTdSZmMzK3ZoUXNoUDJLWnBxNzMzcW5KRkxkTEhQcU9mT0Niak9MQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKSEFvQkJhNFBwYWUwVXdJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFaWdoOEZOSkdQVDBtY3lmcXh6SUxsYzVPU1BNdU5YRTRYR0VoYm9TamxtWGpvalByR0I4bjBnczFaVUk1YlhOMnFYVC9TV1NjK0JwTTJ4dTN4QUFPaVNCYTlieEg1OEVEdHROZTAwU2FFVkk3UkRTTHNmREVqeTJZTytRNEQwQ1MxZEp6NzBsMm55SVpYUTVTOUFPSExrUmdQL0NnVFVxSjVxSVdET0M1MTNpZ3NkQjRCcGhzR2RGeEEwYi9WbUwvQ01XOXRKV1A5ZmlidWVLaUZka2hCTndKcnBXWTA2d3BuTitiaGh1V2VDYTk4L3ZSY1JkTzR4SGNQZXhFZkh3aVBqS2hIdXNUNFJoRjBJNG1Ed2s2RG1oV1R1OVpJNUQ5QklpbVR0dDdJcVZ0UjBtcjk4aG1GOVgvK3FJZUZCeWNQMlBoazFUaFU5d0ltU09oemhQTzVXS2tYUUY5eWtOZ0pKenVNZW11OHhnUHNhWmRrWTFnNWZ1UXZ5MGFVU2ZnTUdnc1J2TjBPWFUzRFhlRVErN1dvY1k5a2FiTmR1c29mZkhrRE40YmNCY0VlalpEWWtJeHUyTGtnaE1WM2xUdnpXV2FCdHpPQUpWZFFVcXFXMXR6K1dXWUxKbUdYT2MwdHZ2YnI0SjdsZUpqMys4eDJDZTVaZHQvRDQwZDNoYTVwM1VycUlwQmp1Vmx3TFhVOGxGTUk5K2VrVGNvbFhFRXM5aUJhNVBnWm9URUp2ZWM4dGRPVGNZeVhLV0hFNUpDSHc5cjBNTXJSMVFacW9ZemI0RnB2ZGQvNXlSb01EMUhIcjVhd21hUjhBM1JPaWFhV3ZpTXZ0Y2U5OWwzVU1DMTZYZkQ3dTBPVGU2Q0pURm1zR3Y5d3pkSmVhS1EzZEdUdENSQUJDM0hyclkzeVVnZ2RVSi9GQUtpc1NhNTVXcVlJTHM3WXhKQ00wK09Rbkw3WHAvYitvNjcxRDd6cEhXT05yQnpmOHpDZmUyQTdqMmxaZWIyMUlXUVYzYmUyVkR0bzM1ZmMwOXRFTVJ1Q1pBR01LY2R5NEF4MWhtVC9PVEJYbjdzdXhTNEJvNzJMZTRkMFQ4VG85UlEwS0lTd2xjc3daeTh4VGtxVXZjZXN3OWRJSDBYRGxQcGwySW16SXYrNXVCL2xwYTZIUEs4TWdGTC8zWHRCYjR0MU1LSGJnbU53NUw1N0lybUxTcElvK3p3UFdocjFNemtCUzRYdTUyNmhPM1hxNlc1VXVhdTk0NmRVMlJsaWh3blE5eXR1VTErdEpST0Nab2FsM21uTDNFUHJ0WXkzbFNSd2JtNFkrS2lDbkJ3cmpuT2J2TW1lMW0ydFdacjlKK01KOEVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbnNnWUFDMTN1QWJwVVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBEQWFnUnc1bmxtRWdITlZmS01pTGh0UkNET3VMVTBaUDhVa2VuU052WUpLVlBHRkhIdFhUcmRZLzhEazhoVFY1dWI0dVo5NG9XMUtHb3B0N1h6OVFtUC8xSkVQSGR0QXhZc2Y1ZmpZUW16dDJKdmwzaGxzMzF2VFU1WFgxdWkwUWRXUnM1WmdtYmdlQXU3UTB1UHl6aEczek1pSHBOcHpIRVF1TVpCOXNVdFFhcVhKK2QvUk41ekF0Y2c2eE81L29lSXVFNUVmRGdpMW5UT3o0M0RMUXRjRHdsNDBpYWN4eEdiZUhCRThKNHRUVCtiSEozYUFVbHdtcnBCRXRzc0xXdHF2cTcybFRqaFRxMXZ6blUvbGhnelQ2elRrRWhsWDMwS1hKOUNweTF3ZmZHSXdORVFFUWNTd3FHTTcrZFhvZzdmeUVDZElueUNzQXZ6K3R0MGxGa3FLSHZlU2lUbUxlbloxU3ltTkFES1hISFIzQmliSzNEOXZaVmdGa0k0L0QwblhTaTlOK3ErcEt6UHBzQUdYNXhUY0VRZ2NJNjRmMVBvL0xnSVhIYzlQK1k4ajJaMnhWNHVSNVRvblJGeDlrenRwYUllUzRoQXp3SEE5ek5pTlkvb0tRU0JPQnlldXdLczlOVzlWTnR5ODRWbTNZaGNYeld0Vjh6aHNZdHI1emlsdCsrOWt2dHU3RFU1b2NBbW15bk8rRjFzNTc2RGRoSEVvS3VPTWUyZkkyclJOeDU1OXJ3OWZlTTA4MDFaczJ2WGt4TzQvbXBFZkgzRm0rUXZrcmg2YnE3VnJucHMvMC81NXRxeWVNWmN3WlVWdTNLelJYY0ZXT3A2ZjB5OWIvY3RNTDN2K3VkMHZBTFhjK2pscnoxTkN0eEVVTGQyUWhTVEFDZGJTUHRjZTk5bDNlMTFoalo3K3VsVkJSMnlTNXR6NXVSRVZldjhZK1pLQlUzT1pubElSTnluNDlldDdlM05hYVBYU3VBUUNmeDRFby90QzFUVjFTNkVjdjhzSWw1UUJmUjlXMFI4YzQrTm43TE9XMnJ1alNQaU9kWGVaZHQvanoycUt4ZUtJUGV0azdCUGcrankyRFdjVXZ2SnQrWWUyaUVJWEY4K0NTMnpYek9VT0k5RWdPYlM3OXkrOG5ZdGNGM2Jna0E5OXlaQmh0dnBYaEh4NkI2amx4QzRabDJmZC83ZGUrb1pLOGpZdDE5TU5heTMzU2dGVHM1VnV3V0I2OXphRUtMcUJLSmtIV2ZwcE1CMVA5RXpSTVJycS9mZ3hUcXlyU2s4UHJXZlhhYytrWndDMTFOSDBvblhuUzBGbUdzRzNWeW01UFZMbWJ2ZU9uVk5rWllwY0szQWRYdUV6M2xHNSs2VzNIZkVHeUtDdFo2cDUwMDVmODEzWFBzYlp4ZkJ6OVovTWxpREJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSnpDS2d3UFVzZkY0c0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKYkpBQTRrYXZib2xndHMzYzZrSGFDeVRuelROMmNFWDBFV2QzMnJaV3VrWkV2TExqNEhGZDMxaEI1VjA3M1NPR2h4Z0FvZ0ZkcVJZM3A1MXRNZFE2LzlhYzRIRitmSHhIWXo0U0VWZUlpQytzTlJoV0tIZlg0MkZ1RTdaaTd3V3J2bjV6eG9HMGJpUGltL2VQQ0o0VHh5bmxubGs0eE9NNDlZRURnL0g5RWZHUzVNemVOQjJIOUN1bTkwTlhrNDY2d1BWWkl1S05sY0FzOTBLZG11L0VMZ2VmOXJNY3ArWFhSVVJiWEFHQlpwNnpUOG80NXk4bGhwb2JpdlE1Z1RrdTJjaFFJbGc0TkxTWEVHTGduUXJIdTFaTzVJanhEaVhlc1FTYStNUkFSb1RwWDlneHpybU1Qc0lKYWswQnZkcThLZmZORUlPMWZsL2FWZ1d1VCttcHRzQTE3MzRFbWQ2UlJGOFJ2eDk2dDQ2OTM3aWZIaFlSQkM3b1NpV2lESWlkTXo5RWVMYVp4b2pFNStZNWMrZkNjd1d1KytaZmE5MWpZOHR0anh1dVA4NEMxMXNVYUJqYnAyUHk5NGszRDgzWm12VXNKUUk5eHZZNkwyZkZicDVFZWI0blUwQXpRTlRZT3BaczI1Q0lIcmJOZGNBZTI3NnArY2M2cGRlQkxSaFhCTG9oQ0VpZCtONjVXZVY0L3Y2cHhuUmNkODIwSHBRcmtua3ozMS9NMSthbU5RU3VZZkliQzRyNGRBVVlHU1BhT0VmVW9vOXY3aHY0MlJIeHl3WHpscjZ5Y3dMWHBjTDljOGRGNmZWZHo1aSsva2ZvOVg2Vm1OeFBOQ29ZK3VaUzRMcTBOdzRuWC9NN2xQRnk5V3FkL2QwdDg2ZmV0MXVkdjI3dDN1MGFMUXBjcjNjUFBTMEZEMmpYY04rSWVPaDYxWTRxZVo5cjc3dXMrM1lwT0Z3WG5ESGZVcnUwdWN0V0Fnd1MvS3Nkcks3T1d4cXNhOVFnNmNqTUhKbWdyM3dudE5NaFBQZm10dC9ySmJCbEFpVUJNMnY3L3k0aW5wNUVFQW5XTTdUK3VxdDJqMTNuSFdNWGE4TFBpb2diZGx4VXNxNlIyK09pdVBkRUJOLzBCT1JiTXgxWGdlc2ZTRUxMN0NVT3BmOVg3VzhoL2t4d3kyWnd4S0hyK243Zmw4QTFOaUZXK3BTSTRCMWJKK1lEckVuUjFseWFLM0JOZ0VIMkhCRi96NlduUnNRZEIrem91blpJZ0pYMUwvWkY2VUpJRTNVQUFDQUFTVVJCVk1PdVo5TVdCSzdwRDg0VHRCUE1icm5TTTNVcEFlQTU5OEtXcnoxUENrakgrR29uQWhuODNNYk9kYmxPZldJdkxUVytsOXJQbjd2UFdyY3V0d1kvVjh5NTYxNGtLUE9mdDg3emJQbWViZHMybDhuVU5VWHNVT0JhZ2V2MmVCejdqQjY2MTNMbnMzSnI1RVBsMWIvbnptaC9zQXJTVHFDVXVRSEhTKzB3bndRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1d5VWdBTFhHKzBZelpLQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFtRS9pKzVCQjVuWjRTNWg3U25XemN3SVU1TVdNdTI0V2c4UmtxNTVyWFJzVEZNbmErSmlLdUZ4SC9WZ2hnSDA3M2ZRTG5PS0VoMG8yUXpTRUlYSFBJSE9hWDZPRDlPOVcvL1haaFAyd2wyejdHdzV5MmI4VmU5bkorTHpsVDV0cURzK1dOa21qc25EWWYwcldJV1NBTWZKTU9veEc1SUpBQlluQ0hsSExPajBPT2oxT2M1YnF1NlJMc2JQS2I0a2d6VnhBZ04vNWZuc1k4NzZNU2dXdmEwUllBYURzcGIwV1Vha2hzcldSTXorWGVyR05Kb1d0RUhIQUt2MDFISTNZbGhGTlhQZVcrS1dHL1JwNmxiVlhnK3BSZWFqLzNlT1lnOWpwR2ZHTE0vVFlrYmwwcXlwQ2I3NDRSM3N3OTh4RE5SclJpYXBycmVMMlZaM0ZmKzQrcndIVXVFTWZRL0dIcVdOcnFkWmVKaURkRlJDMCszTFJ6akVEZGtpTFFZMWp4bkVQODViRXJCZ1Zic20zWWUrOFVkS0N2bmFYUHp6R3NsczViTXBlbXZRUmt1VU1TdmZxRkpGUzF0QzFkNVYyNEVnNTZhMFNjTGxQWkg2WEFDa3Q4WTYwaGNMMExSbVBlczNORUxYSnRZWHdRNElKN3VKMldFRFE3WklIcnNmMC85TTJsd1BWWW9vZVJuNkJaQk05NmRFUThxa1AwYStwOXU5WDU2eUVJdlNwd3ZkNjljNDgwMXRzMUxCRVFZU21yOTduMnZxdTZod0loL1dWRVhLMHdRTWV1Yk83cTMydW5QZGZUOW5UK3JnSnc1dll3V1NPKy9BN256a3ZkQjVhekRRTGZtOWFyUHhNUkwxdlFKSUpaTXpaTDk5UVhySG92UmZXdEJTQ0V5enlNNzByT0lYeHRMeFlPVnpwbW5iZFpHbjNOTS9JZkI2cjQwUlNraTczQWRucEJkZjJ0TTJ3b245OEpoTnRPdXp6emNsd0ZybjgybmRmSUJYbW8rK1RqNlJ3SzMrZExwbjBLWE5NT25wR2NZU0w0R20xa2J3SmgrcjQwVmVDYXVqanY4T1NxUG9URmM0bG55WjFuUEYvNzdxbTZUczdpUEtSRFFIdmZBdGQ5NXlNNEI4VVppVFZTMS9OeGFHMWxEVHUyV2liblZaNlRNZTZWS1RqTE56ZGt2T3ZVSjNhR0F0ZnpCaWRDdG44V0VXZnFLWWFBcXE4YXVmOCt6Nm9UcitiTTVZVjZDcng3RmN6cDkyZFVPSFZOa1NvVnVGYmd1ajMwU3A3UnBjT1ZQYVVIcGdDZzdXdEtncTduNnFGY2dxWjNCZEc3ZlUrZ3QxSzd6U2NCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUpIZ0lBQzEwZWdFMjJDQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtjQklCRHFmaktObm5jSTNESDQ3WmY3RVJmbjFpeHBpSWlNMWRkbUFyb3NrUHlOUURzOHRHeEFjSzdkaUgwLzJRR0RCQzRZOU1UclJkYStRY3dINUVZZnZXem5hTmlNRGhxVzNuMkg1WTI4N1M4dmN4SGtwdDY4cTNKWHY3bko1cjJ4SHJ2V2tTbTBETS9haW5uMG9DYkcySFl0cCtyWWg0OVFFQ3VFcHk3bS9mOHk5TVF0NDVNYmtwNHJlSEluQ05JTk9MV3dLTWpIV2VqNjlMZlZ3cWNFMzJDMVJCSEJESFJrRGdYc2todTc1ZnRpSkt0WVJEOEZRaGhyN2JCbWZ5dXlYbkowUjZoOUl6a3JQVUoxSkd4alVPdnMvcWVLK1JCYUZObkFkMzlmeWFjdDhNdFhtdDN3L0oxaUVHUXlMblY0aUlkd3dWc3JIZlMrODNndkFRc09KMkdmdmZrSnpjaHdSZUVKM0hDZmppclhMYXo4WWhURHdQM3hZUmlEazAwMXdodk9NcWNJMndCTUxIZlE3Y1EzMnl0ZCs1RnhGM3FsTk9uRzByQXRjSW9IQWZyUDBlNmZ0ZUhncEswdXpqSlVXZ1M4Y096eUdFV1hqZjlxVzVZdEZMdDYzdjNkRnN4eHhuN0ZLR2MvTDFPYVVqMUVlQUhvU0xmN2hSeWR4bjhoaDdlWDRoNFB5VEhSY2hRSEc1aVBoWVQ0RVhxY1NGdmhJUm55Nm9WSUhyQWtnZFdjNmR2b0hQbnJsOHJuQ0FBdGVuZ08yNlh6K2IxaHErT0tMN0NBNUJZSzVMdHE1QkJQU0pJOHBwWmtVZ2tYVkIwelFDNTAraWJJZ3N0dE5VTVpxdHJDVzAyN1BMZDhpMDNvaFE0SG9xdWVIcmNtdU1mQU95YmtwZ2xuMm5mYTY5NzZydVgwN3ZnUnpyTVh0K3U3SzVhV3RUMEpKZ1lMbFV1cDZ4eEpqTEJZamN5bmZwRW0yMGpOMFNZRjJNYitEcnArRElDS3UrWWdFVDZtQ2IzRHQzVFh1OWE2OVhMR0QyckNKeTczVkVZaCswUjBIRE1ZMHFYZWV0eTJUUGczY3VBU1J1V1NpUS9vdHBIN2ZydWRxMUhuTzJsSi96R2UyMDYrREh1WGNSYXdaemcyRnhML0w5MUV6ZnFNN0cvTk9ZRHV6SXk1b3RkamZUbEhkR1g3OVI5cDhrd2VWL21XbHYxK1g3RnJpdWJmcVpKRHJOMnRGUW1pSndmWTVxcitKeEVYRzlnY0xuaWx2WHhYTTJDekZvOXB0ejZVOVRzRGZHWXAzMkxYQ2RPeC94K1dyZi9OSVJ3ZnIwR2ttQjZ6eFYxdHc1eTNEMVRKWXRuVCtyVFhTZCtzVE9VdUI2MmxPajlIdXhMcDJ6SXdSTWFENVRwOVZjZmhYM0orSytuQXZxU3F3UEVtQ0U5ZHM1Yy9XcGE0cllwTUIxWHVENk5OVVpJdmJPMWtyTU8yN1FLdnlkYWE5dXFYSDZyVFNmSFRPK2xoUzR6czFoYVNkem9LRnpLVG4ydVFBd0JOSEYvcW5scnRYWGxpc0JDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSjdJS0RBOVI2Z1c2VUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNTd09nSFdQbkVVZWVoQVRZaEkvbEp5T0J4em1IaU5CaUNJOXFhSXdOR3VuWEFLdkdJU29WdWo3bWFaT2Flb09nK09xSWg2bGFSOU9OMWpGdzV3Q0o4aVd0S1ZjTGkvVkVZQWZTc09Sb3dEbkNnUUEyMG5uTzBRdjVyckxGclNoMHZtMmRkNG1OcUdyZGw3NDRoNFRrWVl0bTRqenN6M3FNUVZuM0FnenVKVCs0YnJjdUtDNzBvT2hJZm9NSEdmSkRyWTVqTDBYSm9pZm5zSUF0ZTFDTVQ1V2tDZUh4RTNpNGhha0dxTXdEVkZYU3dpY01SK1dzdFJiU3VpVkZzVnVLNjdZWXJROVc5Vmdyd0VIM2xlUzZ5OEx2T0RFWEdsaUJnakZqZm4rY0cxVSs2YnVYVk92ZjZRYk8xckkvUHplL2NFRW5seUVvRTR0UGxOaWZBSllnazhjOXBPa2pXdmowYkVWU1BpVXdPRHBDK1FTL3ZaT0RUZWNpSVRjNFh3anF2QTlSRHZvL0Q3V1ZOd0tBVEZtZ2xSayt0VUR1SmYzM01qZWJmZklTSzRKK2VLMytTYUFvTTM5M3huRGdVbGFaYTd0QWowRUg1RWl3a3lnUWh4WDFwQ25HNk50dkVjaGUrVmU0emZ0YkRURVBQMjcxMXpWb1NQR0s4RU5PcEt2MTRKTVQxbGJFVVQ4eE1nN3MvVCs2aGRCQUlRang0b3QzNGYvazNLKzdJZUozWUZycWQxRWdJZ0NHSG1FZ0xrektsTFJNYTd5bERnK2hRcVhmZnJGQkcwdVdOOTJranhxcWtFcG9yUmJHVXRvZDN1dWZQNnFSekhYS2ZBOVJoYTQvTG1SSUNaZDdBUDllRnh4YTJTZTU5cjc3dW9PeWYyVThORTVHaE1rSzlkMk56c2FQYlkvaUFpZUpiMHBkTDFqS1VHVVU2OG5VQ3hDRGQ5YzZtS0xPZFlFQ0I0SEh0dVA5Wm9MWUZFYmxnOUsxOC9nMERYOXl2Q2x3U3gvc2NaNVE1ZDJqV1hHYnJtcVArTzZQRE5SelN5WkoyM0xnNHg1b2VsOVd6K3JmVDdmV2lOdkNseXpiT1lzY09lVmxmYWRhQ3ZyYzU3UjNUeGYyZWQ4bTJYVzVkblhlZTJLd2VmM29yQTlSak9Zd1N1MlhNa0lCOXJIa09KYzByazdRcFlOSFJ0MSs5RCt6WmNnMUFqd1E4UWtDYnRXK0E2ZHo1aTdmTkRYV2NZQ0k1SlFLODEzMjFUK25YWDEvU2Q0Ums3NTkrVjdhNVRuMGhhZ2V2eEk2OFpKS2JyYXRhcFdaZG9CL1Q0U0xVZXdUM3p2dkZWanI3aThoRkJVSVRtWEw5WkNHdm9mRU8rWjNUSkoxOHdkVTB4OTE0cDNYY2RzeWYvMDJtUDhQUXQ4d25TMHZmdHMvUjdyMnUrUFdWdXRrQzN6UklYWDZMK1hCbExDVnl6NzhpZWIzdGZ2NjczU3hIeHUraytJWGh0YWNxZDR4c2JqTDIwdm1ZKzV1VFV6NzE3b1JSNG5Qa0k1MFJmSGhGZm1GS28xMGhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrTUE2QkJTNFhvZXJwVXBBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBTDdKMUFpZ0ZSYnlZSGQrMWRpV1ArMmd0bmZtd1MvRUpMQzZhb3JzVmFMU00wZE03Ly9aU1VtZHJXSStPb0s5cldML0w3a0xIbjFCV3padGROOTAyUWM3M0g2YkR0TURDRWNFcElkdW42cDMzTkM0d2l4WDZ0eUZudjFVaFh0c0p4OWpvY3B6ZHlhdmY4amlVcmNwcUF4aUZ6aVRMMkd1Qi9QS3dRNmNPWjh3SjdFRFB2RUJlK2NCTDRMTUcwcXkybVNhQi8zZHpOeHovUDg3M01xbWlKK3UzV0I2OXg0N3hKL0hpdHduZXY0clRqbmIxM2d1dWFIMHpuQzFYZXRITXJwcjZIRVdPN2FtMFkwaERuSHU0Y0tLUHc5NTV6WHZweDc3c3dkWmVMSXRUVXhuTG0yRXZBRjhlaDlKdnFlOThhek0zT3ovNGlJMjFVT2RvaU9MQ1ZPc0t2MmxnaWY5QW1YakJHRHdsbXZTeWllK3doQnk3OGUwZWl1NERvbDc1eWhLc1k0MDFJVzMyeTg1M0JvZmxBMURqNlgzb2M0Sjg1SnVmdUc4dWVLcUNORVRsL3NVcFIvRG91bHJzMjlKMHNkclpleUkxZE9QYmVoZjVrSGM2L3diRmtxbGN6RkNaNkZtRWhKV2tNRXVsMHZ6NTRMSk1HbElXRTZyaVhnRmtMOGM3OGgxbXBiem1tNjJXN2VJUVNKZWxGSkordzRUMDZRcU0rTUpkY25HQS9NZmVnZlJIZjVabXltbkJnTDc2bkxOWVI4Y3ZaMnZROVpreUU0MXpkYUY4MFYvZTBiWTJ0MjY1am4zUnhSaTY0MjhMNThUUW9hMDlmR09RRkRGTGcraGF3QzEydmVTZHN0ZStwOW01c2pzWTYvaXdBZ0JFbkVoblpTNEhxN1kyMFhsdVhldGRUTjJ1T3JkbUhFUUIzN1hIdGZzMjdtWEh6ajhsM1FGbzVxSWhrYnBHcE5tNXQyblRNaUVERGttMm9vTVU5a1BDRmV0cXVVQ3hESjJ0ZDlkMlhFeHVyaGZ2L2p6RHdSOFdibWVLWVRDZkI5Zi9mMHJkeTFoOHc2MjdWVGtLK3g3UHJXRHZoZXZWODZEN0RHZVFRRnJrL3VyYlVFcnJ2RTBjZDh2dyt0TWYxcHVxK2ZVUW5POFZ6dVNrMGg3TEhqZEdyK3JleWhUYlcvdm02cWlHTDc3TkZMMDltZXRjVjlqNnJBOVpoZ3Vqdy9iNTJDdzdPSHNXUkNySjYxbEYvdUtaUjkwTWVsMzVjVytoelRsbk1ud2UyemQxdzBabDE2VEoxMTNuMjJlNHE5N1dzZVhLMXZ2akd0Znk4NWhvYUMyb3lkOHkvUjFwSXlYS2Mra1pJQzF5V2o1anQ1K040bDZCRDcvV2ZLWEViQVR1YmE3RnV6VDBkZ3pXWmFlMDc4UTFWbEJBUG9DNXl3OUhtNnFXdUtjT202dG5RZll1eWVmSGxQbjVKejZlZS9BdGZEdmJDVXdEWDNLbWZSeno5YzVYK2ZRZWFjQmtMUmZYdnJmV2Z4NSt4TkZaZ1lCSEpHdEo3Z0dybkVXaHhuNytmdWM1ZllZeDRKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaElZSUtEQXRVTkVBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU09Nb0VTZ1NRNnZaL1BDTHVHUkV2WDBnSUMrZEVoTTl3bHZteEpOaDM4d3hzbkpEZVhqa3I1b1RjRU1ibUFQNnUwczBpQXVmSnJqUkdZSGxYVHZkZGRzTC9EeVBpRmlPaGpYRkFIVm4wcU96ME4rTEI3Y1JoY29SQXZ6YXF0RzFrM3VkNG1FSmdpL2FPRWU3L2wrUTRoSWpCRXM3eWlQVmZQaUllSGhFNGI1YzYxVXhoUDNRTm9uVzBxNTArRXhHWGpZaFBEQld3d2Q5ejd3SGFoSU5HbjRQMFVSUzQ1bjFNOElsMmVtd2ExMDNuMHpVRnJxYzZ1cGNPc1M3Qm9VTVJ1SzdiaUpNZzd5c2NoY1lHbGFBTW5OZ2VWWld4bEVQeHZnUVBTL3Q4SC9uMlBiZmhUQUp6WUJ6T2hzWUk3NjZIcEx4ZjJRZXNDWFdXQ0Z4VExITlR4SmFhODd0L1NJRndQbHhRYjUralBBSlB2Si9IM0VkTE9XeTNUUjl5cG1VKzhlTVJjYjJJK05YcWZmNFRqUUtXRk9HYkVzaWhvQnVPZFpZTEp3R04wN1VvNE1pT0FNaVk4YmNHeUhhZjh3N24vbnpoQXNMNUJJSGkyWVJUZmk1OUpDS3VFQkZmS0d6Y1dpTFFWRTh3bUYrb1JJWHZuZFlpU2t4NmJVUWdoTEtFMCsrYWJSc1NEYUd0U3dmUEtPSFhsNGU1RXNMaFkvcWpMbStzR0ZkOUhjOWFuc2Q4dC9GOWhDUDdCUnZ2NFhhNWZWeEw1NllJL1JCc3FKbHl6NGMxQks0L213UVdsd28rY0tFVU5JMzd2MDVqdm9IbmlGcDBqYWRyVklHbVhwa0pHTlBNLzU4cHFBalB2ckhwa0FXdXZ4VVJMK2dRVTRjQmM3RHJ0RVJYaHNhMUF0ZGpSOC9SeUQvMXZzMnRIeTQ1dCswanZPLzY1L1IrYnM0dzVuazdwLzZqZm0zWHU1azJiMFVJZUo5cjcydlZqZWpnbzlQM2J0LzRtaEtrYWkyYnNiTU9QTVY4bGZsalNmcGcrdWJZcGJoMUxrQWs5bDQzSWhBYVBZNkpvRVp2cTRRM3o5alIrT1BNSlRjV3poRVJpQVpmZVdDd2ZEbDk0elBXUzFOZmdMdG1HWnhIdU8wS0lwc0tYSi9jVTJPL3FZZldlZmsrZkdBVnhPUmVIWU5pN1B0MXpINXZ1enJXMmZuK1htTHZ0M1I4aysrNEMxekRnTFVWUkRFUkFGdzZ1RjZ1TDQ2aXdEVUNoVytvaEtYUFZqQUFXWE1sS052N0N2Sk96ZEluY3QzZXcxeGE2TFBVWnQ0eFBIOElsTkJPWTllbFMrdHM1dHRYdTZmWTJuVk5iVC9CQWRpakl4RHEzTVM4bWZXM1hDQUMxcXBZazMzcjNJb1d2TjUxNnU1OXJLWDJTNmVjMmVucTNxRjkxdEloa1Z1REh6cy9xdXNqTUFGNzBiZlBHTUM2OUQycU5kZ25OTTdjOHExQ01OSXVnZDJsNThUTTA1Z2ZjVVkzRjV3ZGNXMkNPZkZNV0RKQTd0UTFSVkFxY0IyeDlwbXMzRDB6aDMzcGZUZ2wzMUlDMTlUTi9PR25JK0lSRWNFZTAxRDZVanFueC9kRys2d08zeTlQUy91ZDdYTGVVNGxqWDdQam1xSDZTbjZuRFFUU3BlN2N2ZDBzaDNuUjlhdjVZOG41bTVMNnpTTUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVRDU2h3UFJHY2wwbEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJSFE2QkVBS25aR0E3ci9uNGx2SVlRejZkR0NuWGhJSENaNnJwZlN3ZDZteUorZlU0Q09iRlc3TUx4QmFHc2QreVFPSTc0T05vZ3VOcVZjUDY5WlFHYk5aM3VTM0Q4YUhLT08wOUo1cFJuM3lLUW1JRWcyWnN6VGg2N0Zqc2ZnVzR3Njc3SHc2Q0JyUXg5OWk0dG5sVlh6ZjJPcUZ5ZlFPQVk0WDdLeGNFWnNmZW5STVRmajNUVVFUVGlva21BRWhIS3FlSmVZOW4zNWNlR0Z5ZWg5M2ErNXliSGhtOHZXZUdPeXVMZDhhYks0ZXBVcmZvUU1TTll3amQ3N0pqaUxEZEYrSE9LSTgyUUlFQlhzM0x2YllSZ0VaNzRaT3NpQmE1UHBqaUYrOXloempQei9za3BzTFFzNWhPSWVlQk11RlJTNFBwa2t2dWMyNVNJd3ViNm5tYzl6dm80bisxYk9MZHZmSTY1MzNDNis0T0l1RTMxYmgwamJ0MzM3bWZPem5Od2JQQ1Ryb0EyUTJLUEpmZHAxL3lKOXpKQkM4NFhFUWo5NVp3UENXN3dtSkpLQ3ZKTWVjOFZGSHVzcytTZXIxT2Q0WmVHbWJNUHAzcEVUM0dxeDhHMmIwN1Z0Z2x4a3h0V0RzQjhnLzNJZ01FNDlUOTVSS1A2M2xmdlRIUGFid3lVaDRneGdqQUltVEZuNXcrQlViQjdUT0o5ZktlTU1PeVljdXE4YXdwY1V3ZHpZMFNFK29JbWZMUUtJbmJWdEtZenBRMXpyK0diSHVGM252ZE5JZi9TY3Y4dWlVWHdMaHg2dnZQTmR0Nkl1RVJFWENtdFNRMk4xK1o5V3lLcWhUQUU5MUJmNmhJRGVIejFmWHVYam92V0VMaGVXZ1NoYXh5UEVWeWRJMnJSUnRiM0RkelZKN252cHFIeGQ4Z0MxMzM5UHlXb2tBTFhRNlBsYVA0KzliN2R0OEQwdnV1Zk14b1V1SjVEYi9oYXZyMWUwcEZ0elB0c3VKYnBPZmE1VjdEVXV2K3AweHljL1RzQ212eHdJUTZFVVJIQ0hwT1dzcG01NlptU3dCRkJqQzRYRVdjWVkwamFjMk91Ky9tUjE4M056ajRmZ1lMYllwalljZW0wempLM2prTzhQbmV2SDNJdzBEWDZBWitwYTFkclU4K3ExcDRRNSt0TG4wN2Y1RHd2eHlhKzBhbmpJZ1VYOHIzSDkxSmZjTk9DWXI2YlJZSHJrMm1OWGJQcVcrZmxHZlJubWIxN2FoNWJGOWVNM2UvbEdnS1VJOHc0dEdZMFp1eVU1dTE2RnkyMVgzNkhEdUZlQkNxZldHcGNKdDlaVXJDbzVqdDY3dm9CKzdpNzNJYytpZ0xYZEZmSitoNTdDdXc3N2tMTXZVdmttc0NpajJ5ZHJkaVgwRE1CN0Y1ZkJhdGgvdGxPSmV0MmMyNGwyUEJkMFE0T3NaWHZpcEsyTmZ1Ti9RTFc4UkhxNVowL05qR1BJQmdtNitsOWlXY1k0M2ZmKzV1dVUzK25sM0xyMVB5bXdIWC9XR1lmNmticHZzbk5vd2tPUXpDQ04zWVV4ZjRWOXh4N2JWM3BkVlhRMHJ0VmRYeG83TTJZOHJOMlR2RFczeHVZNXhNUWlZRHRTODI5bStaT1hWT2tqRGtpeTB1Sm9mZWhYL3E5MXpYZm5qczNtemgwWnJHZldtZkpkVlBPNVpXVXkzaGhQWXI5N09iWno5eTF6MHp2U3M3cXNHNzBuSWk0V2tmbU5ZTU84eDJQY0Q1endqRnAzM3ZFWTJ3MXJ3UWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNDQkkwdEFnZXNqMjdVMlRBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRW1nUXVGZ2w5dk9xNUxnOUJnek9nWWhMdlRmOWFUdXJJUVNFRU1PUEZ3aEo1UndiRVNONllVUmNLMlBZUGh5RFdEdCtlaVVpZW91TVRhV08wZnNVS2FoTng5R2VROWVsYVo4aWtMV05PY0Z6RG9YanZQYUIwc1pzTE44V3hzTVlKSDMyamlsblRON1MreDJuNTFkRXhBWEhGSjVFWkhtZXZUc2kzaFVSLzk2Ni9uOG1ZVFFFMFliRUxVcHRIV25pWVBaTEpRSDR0Z01uem9FOFIxODlXTUkyTStURXhCNWE5ZHQ5QjB3K1NnTFhQNVFjM3k3VTBlWmZTYzc3N1o4VXVENFoxaGpCM2FYdmlITWtnZHFjazJLelBvU3RjZkFsc01pL0xHU0lBdGNuZzl6WDNJYXhnR2hxMitsOWJGZC9wSHBmL1daNjd5MHBoajdXamx6K3NmY2IzdzhQcWdScEgxZUpuMzZzd0lnKzRkRTVEb05kZGk4aENqVm4vdFRuWUY2QTZvUXNDbHlQSlRhY1B5ZW1VakpYR1M1OWZvN1M1Ly9Ia3lEYld5cnhZYjVyRVJLdTB6a3JRU0lFaXhDS3ZtSkVzSTVRa3A0ZkVZakdqM2xHbGRwYlV2L1VQTmlMS0JJTzZ2OHh0WkNPNjlZV3VHYTk0dDZWQS9ZakJteCtReExMR1JLSVhxTHAySVNJLzYyU3NIV3B1R0d6Ym9LdDFZR0p1c1JWQ0E3QU14YStmQlB4dmZaVEV3VE5xYk1Pb2tPLzE0RVgramk4SmlLdTF5TW9SUHNSMmJwcHE1QmM0QUlGcnNlTnV1c25vZjcyT1UvbUFYOWNpYURmdmFNNEFtQWdQREpHZUZLQjYxTkFLbkE5Ym93ZWxkeFR4V2oyTFRDOTcvcm45TDhDMTNQb0RWK2JDMks2UkdDajRkcUhjK3h6cjJET2QrdHd5L3B6SUd6TkdzZVlid2RLM0tmTnpSWTlvSnAvUG1wSFFwTnRrcmw5TS9aWCtXMlhZcU56eDhHUzF5T3dpQUJuT3gxM0xrMGVDUEd4NWtRUTE2SEU5ejNmeVFTaW5ab1FDME5zbEhYdlhKQzN1bXlleVFSR1FqaDU3bmM1UWVNUTI5OVg0cnpEbVRzcTU2ekZISjV6MmtQQU13VFJTbFBYTjlGZlZzR2tXRU1hS29jOVc3N0I2Tk14YVl6SU5ZR00rZjdiaGRodlZ4dTYza1ZMQ1JKMnNWOWlYMk5ObThmMDg1eThSMVhndW05OWp5Q0ZuRk9hS25ZNmxYZFQ1SnFBaDd4ajIzTzJwWVUrUzJ6dGUwNnd4MFRBdXlsQ3pTVjFreWUzanJldnN5S2xkamZ6NVlKQXNEZkFPVDZFYjJHWkM0NEpBODR1M0M2dC9mWUZYcVRlWGE1THQzbTRUajF1blJwK0Nsem43eXFDdDdEWGYvR2VHKzhkYVYrZ0hhUytlUWtpMlRkUFF0ZTUrVEZDMTRqdnZyOVFHSjVuTnQrQkQ4dk1RZXY2T1lQQy9KNmdxWFBuMnprTVU5Y1VLVStCNjRpbDVwTmozdzl6MkkrdGEweit0UVN1YXh2R0JIZm1taytsQUJ2TXE5dUpvQkY4QTdIK3NFYnFDL0F4Vk4rVXZmdWhNdjFkQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFUmhCUTRIb0VMTE5LUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNCMDNndkJIeDV4TUVZWmRxZEU3Z0drRWloR2RPbjZsb0NlZTlLVzI0UmhJOXlxMGo0NXo3aElHQzl5bFNVSnVHYzhTeklxSkVhSk5yOXNXN3RoZkg1eGRIeE5VNzJENDNJaEI0UFZSSC9TMk1oekgzd2o1RUk4WTRBcDR4SXA0VEVWY2IwNmdGODQ2eGRhbHFlUjRoUkhESGpnSVI3T2ErMllXQTNWTHRxY3ZwQzNTQWFEY0JHdnJTVVJLNFBsVUtTb0F6V2pPOVBEbkdkRG51SzNCOTh1Z1lLN2k3NUpnK1cwUThNWWtnbHBhTFl5SENERHpUNW9vei9IUjY3K2ZtVmFVMkhhVjhpTTgrZVljTktuRlN4WnpQUnNRWktvRlM1ajRsaVhHQ29NQWZWU0l4WHltNVlFZDUxcnpmWU1ON0Q4SFVyblQ3R1gyTHdEYnorV2FhNmtES2ZKdUFQOWROVHN4akEzRFVOdFNDcXprUmdURmRxc0QxR0ZwbGVSRndSc0MybmZiOS9WVGJzeS9CNkRjbEFhbXhZazM3c3JmbVZTSTZVRFl5VHM2MXRzQTFOZkxjS1JGbWZtcjZkaGdySURpMjdWZUppTmRHeE5oemVEaC9jMTh4ZDBJMEM0RUZ2ZzNPbWtSVEVGbS9kQkpkNTUyNVZPSmI3dWVUc01PUVVEaDFEZ2xoNW9SdXFPTmxIVWJQRmJpbS8va2Vib3JKd0k3NXdWSWlGVjExZkNzSnN4RmNhU2pORWJWb2xrMEFJTDRIdTBSRVdDTzZiZlVPZm5ZMWZxN1RZZEJZa1dzRnJrK0JxTUQxMEFnL21yOVB2Vy8zTFRDOTcvcm5qQVlGcnVmUUc3NDJ0OGJHbFNWN084TTF6TXV4ejcyQ2ZhejdRK3UzVXBDV0tYUFRmZGxjOXpLQmduNHBJaENjM0VmcUc4K0lsU0g2ZWh4VDM3NEN3WC9aR3ozT2llOHp2dFdZTDU5cEFBVGZQS3kvSVRSZE10OHY0VXJ3UDc1YitTNGFTdnNTY3gyeWE4enZ1ZmY2VnRhTlN0cnl0SjUxMkw3cjU0ai9sd2hIVWpmUFlZSWZ2YStrSVN2bFdWTXNXb0hyZktjZFZZRnJXdHhlMzl1RkNPblE3WUhvSTJjdjJKZnVtclB0V3VDYVBhSW5KV0hZTHR2bjdCRU5zYWgvejgxRGw5elBLYlZsYXI2Y3dIVzdQUHE4R1N5T3RVZmFQeVJvM1N4bjdIcmMxRGJscm5PZCtqdjM3K1ZiZ0hMcjFHUlQ0UHJrMFZRYTBIenNIS2drT0RiellvSU12RHF6MXM5NitXK2tkWTIrTXdic3ZUQVh2OStDZ2Raejk5M1VOVVhLbXlPeWZJSHFlK2R0YWEra3RtMW9MMmZzTTJmSjl4N1BKMFNIMitkNHBwNVBHTnVXZHY0NTdPZlczWGY5MmdMWGRkMmM2YmxFUkJDSTdaSVRHc1E5ZHRkMG55MzFEZDAwZy9zYllmcXV2UzhDQnJOdjl1L3BqRXI3bVU4NTJNZlpkOFR6VFJLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkxBSEFtTWRhL1pnb2xWS1FBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRWxpTUFBNUppRExmWXJFU3l3dktDVnovZHVVc3k2SC9ydlRQRVhIWlNqRHJBK1hWTEpZVFoxOUVqM0NzN0VxdlNlS1ZmVUtVK3hRcGFOcU15TjZiQ3h5WXVXYmZqclk1QjJBT2d5TjBpeFBIb2FhdGpJZFNmdnNRalJnckdvM2pKMDYvRHlwdDFJTDV4dHE2Uk5Wbmo0aTNSOFM1T2dyYmdqREwxRGJtMm9VREpZSjIvekJROEZFU3VLYXBsMHJQN0ZPbmRuKzUrdjhyVklFS1BwamhvTUQxeVdEV0ZOek5EVWNjb0c2VXhIWi9ZT0xOZ0VqRFBaUGorRkxpaEJOTjZieU12WFVFdEFtYThic0xDT3BmSklsWS9sWEdVWDVKMjNkUkZueCtOZ2t5ZDRrd05tMUF6Qk1CSWh6TDRNbDc3RWNLamF6RlFCSHUvcnZDYTliTXR0YjlOaVRlT2tlMEZXRW9SREYvc1FVR2NWWEVHNzQ2QUt3V3RMNTI2ajhFV09jbStwWHZwVHRGeERmbUZsWUpxaXB3dlFERVZoRmRvdWhrNlJNR1dONktmSW43RUl4RzBCaVJ0N0hpMXJSaXZwRXFJUUFBSUFCSlJFRlVIL1pTTCs5YWhFL2V1S0FRY0x0WGRpRndUWjJJSWVDWWZQNkJnWVp6OW0rdS9LNDlUL3BPSWRCSFNVS2tnYUFOcktzMFJmMkgxbUZLeXM3bG9lLzVobnRMK3B0M05lK0NVb0VXUkNWWXYrcEtpRzl6UHpUZkI2d1Y0VlRlSllJNFYrQjZEb2RkWFR0SDFLSzJrYmtWYTFUTWVkb0pzVzIra1JDcjcxdno0dDNPWE91VEJRMVg0UG9VU0FwY0Z3eVlJNWhsNm4yN2I0SHBmZGMvWnlnb2NEMkhYdG0xQkpBam1GZzdsZXp0bE5Vd1BkYys5d3AydmU2UFdDTUJnMTR4UXpoMzF6YlhQWXZ0ZDBpaVFsT0V1YWVQa0JPdlBIY0tGTXc2ZWpPVnJwOHZaY2ZXeXVHYjZKMFJJWmVUZTRhQU9BVDhLd2wrL0laMGJ1QWZWK2pnTVd2bXJJM2R0d29JK05nRmdrQ3UwSlRCSWc5ZDREcjNuZHJYOEw5SnovY1BEZEk1T1FON0tLd0xzQlk2Sm5IT2hYSEM4M25YU1lIclhSUC9UbjFIV2VDYTl2RXVlMEVWNk8xRlNTQnhpYjJCTlh0cVNhSFBJVHVIOW9nUVVtWjhyQjM4K3pMVkdoOUJIdGxYYWlhQzBkNTZxQkViK2IxVTRIcXV1WXpqMjB6Y0w1aGJkMzI5NjlUajFxbHp6OWtwSXNGVHp1eDA5WHZYKzNhS1BibTVUZTdzS3JZZ0h2M3dnbnVidlFhQ3c3RGZNRGFWem84UnNQM0RGTXlJb05rSThSSTBDc0hhb1lTSThqMnFkcXd4disrcWUrcWFJbVhORVZtR0JjRUdtdm9RVThaS0g4OGwzbnZZZC9NVXhEeTNIN1dMZmJ4Mk8rZXdIeHFEYzM3ZmxjQjEwOGFmU044WXZ6TENjSUpEM1RJRnlCMXhXWEhXM1BkbGZjNm9PV2Rrdi9PRjFSZzdaNnYwWnlRYjF4RGdMbTZJR1NVZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKSEZjQ0Nsd2YxNTYzM1JLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNPTDRFV0JlOVlqb0kvMk03eFBDVUpPVFhyUElIazZBUkIvRzcwcjZGQnZyRXQ1dGlPam1NK3hRcGFOdUVpT0tUQ3ZwNzN3TFhPZWJ2cW9TTHJyNERCN1VDUkpPemJHazhsRFJpSDZJUlUwV2pFYUxuWVA2UW9HaEp1MHZ6SUxaK2c0VkVLRXZyeklteWZDWUZBL2hFYVVFYnkzZVZKQWpYM3JjckhROVRuT1dtQ0g5T2NhU1pJdno2ZlJIeDR2VE1vNnNRWVVTTUlwY1V1RDZaekJUdVUyOExuQkN2bE42eFEvTXFSS3ZKUDVRUVFzUXArdjB6aEgrRzZoanpPMDdrQ0FFL09DTHFOczRSRjZadUhFUmZsWjdiaUplOHZuTGtmMXB5UXR5NkEzK2JYUzM4amVqM1ZRdkE0bno2aUpiUUtPTUNFVXljRnhIK0xrMk1GZVp1UEMvM0pZcSt4djNHYy9EeHlUbTRpd1hDTzR6SnFjSUZ1Y0FLT01GU2JsTnN0YTcvQWhIeHl4RngzU1NrV2RwSGZma1FLTWZaRUVmRXYxKzRENmU4NTVabzAxRXRvMHU4bHJiK2E1cUQvZTBHR243aEpIaDJ1aDNZZ3JEYi9kSjkyaGZ3cWMrVVhRdGM3L0o1dVN1QmEvZ1NXSUYxazlNUDlEdlA2a2V0T0s4Z21OcExxakY0NVI0N0VHVGdYWW5UL0JkNjh2V3R3NVFNYitZVkJJWmhib0VBT0lKYlgydzlZL3U0SVU1RGUvajJhcWFQSkVIbEx0dTd2cDM3eEFZVnVDN3B5Zjd4alRnNVlnUGZUa1h4L241ZVJyQ2NnRUUzVFdPaXo1RmZnZXRUK2tXQjY3SXhldFJ5VFJXajJiZkE5TDdybnpNT0ZMaWVRNi9zMnJPbUlITHRnQ0FsZXp0bE5VelB0Yys5Z2wydSs3Tm16enJJWEdHdFhkcE1yeUpZeGpjUDMrejdGTGF1UnhnQzRhd2R0Rk43VGpSOVJCN21sVG5CeWI3MW5jTnNhYm5WcFlKNWxNall2bGNTVkYxN1haRmdTRTlNZ2FPSFdzUDlSekN0cm1CQlE5ZnU4L2RERjdnZXUwNUQ4SExXR2NhdUMvRzlmY2Vxby9qMlp3MTRTdHBYOEFFRnJxZjAxdnhyanJyQTlYeEN1eTFoQ2FIUEVvdlpsM3hZQ2dyY2xmK2Ywejc2dTBzS201a250MVpKd09MSHpDeDdWNWV2TFhETm5JTGdBNysvZ2JtejY5VGZDUURUREtvOEZCU242ems3UlNSNHlwbWRybnRnbndMWDdQbmZPKzNqNSs1UDlxOEpLRHIzUEFQQlB1Nld2anQ1NXZXbDBqTW1uREhDdGwwSHlKNjZwa2licDRvc256ZWRLemxmQzl6L2lZaExSc1RuRm5yQXpuM3YwYmM4SDVrN0R5V0NyQklBWmxkckVGUFpEN1ZqN3U5VHp1WE5yYk8rbmlBSkw0OEl6b1dVSkw2Rk9Jdk4rKy9USlJlTXlOTzFEdFMzVDNuOUZEU2xlZTZ5TkxqN0NMUE1LZ0VKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBcVVFRkxndUpXVStDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSTRLZ1I2QklyWEtPTmIwM0Nld2dVdHgxa3I1RU9uT2ZXYWhGbFJoaDdYK2xTU1FEaDFCa0RIcG9Pb3VmczI2ZElRZHNtQkpSZVZDQzh1RStCNjV6Z0JHMjVjMFE4WVY4RFlhRjZ0elFlU3BxMGE5RUliQ29WTk82eXZ4WUhmZmpLUXRlSXBTRnU4WW9kT3BiUTNyYm9jWlBCSDZSN3BFK3NxNlRQOTVVSEo1MzdkRlNPYzloZENveWE0aXczUmZoemlpUE5WT0hYV3N3Y0VaamJEb3cxQmE1UEhpUlR1UmNNdCs5bTRabHpuWWpnbWRNV1NtcVhneFBvclNMaXBSRnhweVFVUGVTb1NCazRJWElQekJVQkd0T3VadDV6SnNkS1JOYTd4Q2FHeE5mNzZzMEpDSElOamxhUGpZaVh6UkF3bnRybU1kZU5mZThndklFakd1K1AzUE42ckZoMmJTL09tZ2hHUFgrQ3FNaVlObmZsWGZwK3cva2NVWC9FcEx2U1I5Tjg5bE16REtmc1ozWmMzemUzejRrbWpURURoMVRtNHp6YjMxYUpDSDE5ek1VajgwNTV6NDJzNGxobDczSUtCY0NIa2pnOTRxbGJTRCtSaEQrdXQ2SXhTd25ValJWT210SWszaWM4VDNCRzdoTlVubEoyM3pXN0ZMakdqajVoMzlwT1JKOXZsQVQ2bG01dlhWN1huSjU2RWVKRDJKcjdwVVEwYldnZHBtay96OVgzSnBIdk42WGdJUDgwSU9TTll6cGpBa2YxZGtKQTdacnBleEpSdlBaYVZXNWRva3RndnUvNW9NRDE4Q2drSUI2Q2tsMmk2VjBDS3lYaUkwTno2Nk1xY0EyYk0wWkVjMjJUZTVON0pTZVdvY0QxOEJnOWlqbW1pdEhzVzJCNjMvWFBHUXNLWE0raFYzWXR6MERXRnhIU2JLZDlyNmZ1YzY5ZzdYWC9OUVIrMXJhWjhZRUkyTk5UMEF6V0hMYXkxcDdiRjhDK2ExWGlYUVRpUEs3cEhpbFlYTHY5Kzk1YjNsZC8vSGo2L2lvSkJNdTNEK3RqQkZ6YlZlS1pmTzJJZUZZbENJcWczMUJpVHhneE9OWlVEeUVkc3NEMXFkTDZDWHNZUXdsUnRSdEh4UHVHTXJaK1o4MlhvSjRQTE9oL3ZsZDR4ZzBGQzJWTm5PKzRYUVVqVU9CNlpLY3ZsRjJCNjRWQUxsVE1YS0hQRWpPRzlvZ29ZKzFnZnJXZFo0bUlOM1lFUGVVWmRiVVVUSzJrVGZ2T2M0NGt4bjNERlF4aFg1STUyYjcyc3J1YTVEcDFSRE1RNnRBK2xnTFhKNDZpM0RvejgrZGJwSDJPSlc4bDVoZWNQK01iNW5zbUZzeStIWE9zVDB5OGZ1NWxVOWNVcWJkUFpKbTFITTdpZkxXMXAzNmFLa2pQbVROR0x4M3NhTTU3ai9jWjN6U01tOUwwSituczN5NitnUlM0UHFWWGZpaXRIWEl2bHB6ajZ1cFBBdTRTRktQcmZIeHAvemZ6ZGUxWEVhQ1hiNnF1eEx1ZUFBY0VlcS9UMG9MdlU5cmhOUktRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVqaTBCQmE2UGJkZmJjQWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNDQVJZSjBVZ1I4RUZIRklQUDFNTWpnZElpVDFoeEh4NTlYQjY2OWt5cU5lbk1WekI3a1JXa0ZJN3NNejdabHplWitnTE9YaXhIbUZIckdzZllvVWRMWDdaNUlEVmw4ZjcxUGd1aFowYmR2K21ZaTQ3QjZkTWVhTW9lYTFXeHNQUSszYWhXaEUyNFk1QXRmTnNoQmx2VjFFL0ZyMUxQcmhvWVlXL0k2b05ZNGt6NmxFYWo5ZGtIK05MRG1odDIrbDU5QTcxcWgwQjJYbXhOMm9HckUraEVDSDBsRVV1RWJ3SDBIR3UxWGplRWpFVllIcmswZkkwb0s3elJwd2JrTG80VjQ5am5QTi9OeWJONjNtTzU5cy9DTmw0TnlFMlBWUVFuUU9zZWNIN1VqTUE0Y3RBcEFnbGp3a2h2TFBFWEgxU2t6bjNVT05hUDErd1JSQTVFd0YxLzFOY3Z6cm0xTVdGTE5vbHJGamdNcmZrT2E4WXh5OHp4MFI5eC9wOUlpSUZDTE5UK3FaZ3k4S0l3a0o0RnphVEZQZjUyZExRanhkWXBhVXp6djQ1eU9DY1RFMW5Tc2ljREE4WDBjQjEwMUM5RjFsbnlFaVhsdUpvbDVzWk1YN0VzaFM0SHBrUi9Wazd4c3pPSTNmY2tQQ1ozVXpjSnErVWhMVkp4Z0QvejhuTVk2Zm1zVFpjOS8zWTh0ZlN1Q2E5WWZQVmU5VVJNWnhHdWFkaEFNdklsMDU0ZGF4dG83TnYydUI2eEpoWDlvdzliMWQybjZFNEJHVklpSDJnSkRJYTZxQVo5OHNMU0RseTYzRDBOZDhsNzArQlVwajNZazJqVWw5OTNPVEQrTEsySDZKVnVFZlMvZFcrNXZ3S3VrZDBUeUgyQ2Vrb01CMWY2OHhIMFYwOURhWmJNeU43OTd4N09XNmgwWEVQWHVLWnh6eG5jWGNwZDJQaHlKd1BXYk1UODJyd1BWVWNvZDkzVlF4bW4wTFRNK3RuMmR5VS9ocGw3MTRvUlRZcWgxUWlybk1yMFRFTjNacFRLcHJTQUIvRHliTnJ2S25xb0FKQkdGdDc0bnNlODlobjNzRlM2NzcxL054NW1aL2tZS1ZNUmN2Q1d3eXBuT1h0Sm52QjhTaStIN2dEN1lqMURwMjNqckcvamw1Yy9zQzJNNjYzTmZtRkg3QTF5TEkrOXkwaDlCc3hoYjJsbmVObGZjSXdYZ2VYQ0RHeFhjeW90Ry92OGR2Wm9Ldk1DY3ZFZG44ZUFvQVNrQ2pyWWpPNS9yM2tBV3VTd0puMFc2Q1Y3RmV6UnAwYVdJdC9UZlNHTzBLb3RrdXB4YVAvUHlJY2NJem5UVUlCTitXV3JmcWFwOEMxNlc5dm15K295Und6WFA2aWN2aTJYbHBqNHVJRzdScVhWSThFWEZHMXR4emUwUlV6VG8xb3FkcnIvMnl6c2ZaS2ZiYzJvbTkrMHRYYTFkOFV4eFNxdmMzN3pyekRNMlgwbm5BcCt6eDdFd2ZkOWVwVHd6Y09DVDRxOEQxeWFPcHVUN05mSlQxWm9KbUx2MmRTODNVUmFBYTZ1RDg3Rml0Zzc5S3owWDJUVGlQc29hTlE4KzVxV3VLbE5zbnNuekpqbjJYSVZ0eVFVcUhydXY2bmZWQzdoL09MamRUeVh1UGJ4N09GeElNb1N0UkJuM04yY1oyMnRVMzBIRVh1SzdQeTdNdlJQQ25xUUx6N2Y3akhjbTN5ZE5tcnUxMjdWZjFuZW51R3E4bFkzWEt2ZUUxRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrVUVCZzdLWlBRWkZta1lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1J3MEFSd2F2blppTGhpT2tSLzBYU0lGNmU5K2pBdmgzRng5c1pwQ09kdkhIZ1FjTVRwRU9md2ZSeVlQMmpvR2g5OVl1SUlHK0dFc0hYblpidHhtd1FRcWtHTWttZmErZE4vNHlTRWlDWi9rNzVhaWRWK1BmMzNleXVoUWc3NUk4aUJNeEJPUUdzN1NBNlJZei9yOGNsWnM1MFg0YlhyalhRb0g2cHZsNzhUWU9GdEVZR0RUek9ORWFJNGlnTFhzRUNrNDlzRm5iR213RFZDZjRnUGNJK3NrVTVUdGZGK2xYUFhUelFLLzc5Vk1JYkxwZnR2YXAxTEMxenpyR0J1aEsySVA1Y2tuaHUvbnB6eWN2T2luMHlPMmtOQzB0U0hTQVBsUFcrbGVSYk9jd2lxM3o3aXY5L0pwUWxSQzBSUkVOc3ZTZCtiQkFzSlFqQTI3VlBzR25IWWExWDljSStJd0pteU5DM1JiOHpCR1h2MGY2bGpIUUpUaUFBZ21QQ0pVbU1uNWx2cWZ1TjlRRkFEM3RWZHFTM015dnVkWjJTcEFCWHYwZ3NuWjlLdU9vWUMxMkFUem9qM0dlREV2VTg3NFAvbUVmWk54Sis5VElIclpZZ2lxUEhzRkd5bnE4UStVZlJsTEZpbUZPNFgzam5NaVJrYi9HSHV4WjlhL0xyK3htY094aHlZUDFzWGVsdUdqcVVzUmVCSDA3dnlaUXNJbS9ET0k1aklLNnIzN3F2VGVHU016bGtUUU55YThnaTAwVTY4TjIvVUVPam1keHphbjltUkZ5RTIxaWVhOC9TYnBRQU56ZXdJYTkwNkF6Y25jTTN6NXNWTGRjaWV5eUdJSG9IS21vbWdVVGNmc0d0SXNQMGZrc2hSTTNoTXMwam03Y3hOSDFEUS9qb0lCY0xzbE1lWWF3ZnRvQmlDYXpDdWoxUEtDWWh0aGNFUzM0eGJhY3VXN0pncVJqTlhZSG91ZzduMTU4VHQ1OXAxcU5jZnhmdUw5VFhlNlFUWGJLY2xoWThPdGMrMWU5c0VITC81L2lGd0hnSFcrTlp0cGtQZkx4a3pJbGxuUlpqNFVWVkE2UjhwdUxBckVHUEJaYXRrWWQ3UE54akJzbitnb0lZbnBIaythNjFiVGF6eE15YmJhK3Y3REN4ZHdvcm5EUHVQZklmbkVzR0JDTDVCKzBvU1k1T0FVUVRSTE4xUDZWcEhweHpHQ2QvaEplTUUyMWhEWUUyY0FHaEw3KzBxY0YzUys4dm5PVW9DMTh2VDJVYUpTNGduOGw2NGRoV1k5RmtEOXp2M09QUDZ0UU44WUE4aTJnUlo2OXFYMjJyZ3l6RWpJbmVHcG12UDRMUHB1VXJ3V003UXJCbE1ZRXdiY25sZHB6NlJUTjg2TlRtUHFzQjFUcHk0WkkwYUxnVEJaSDczOW9YUFlqRy9ZWXorUXBybnNHOVh1djgvZEgvVVFVSlp5K1orNVd6RjJDQ2hRM1YwL1Q1MVRaR3kra1NXQ1ZSR0VMaXpGeHBGZ0ZTQy8zNnhNUDlRTnZZM0VBNC9kU3NqZTZjSVYrZk9VTEczekQ1UExtZzIxM1BHNzRkVG9OVjJRTGE2T3RyTytSM210WFAyeG5MdGZFeEgwQXFlOGJlYUtjdzh4SFhvZDg0Uk1mOXZwcW5CMWJ2cU9tdmFweW9OOXNCM3loMVNBRjRDckpaKzM4dzlyOU8xWnMxZUZ2T2dybk9FNTBuUEs4N0MxbW1KT2RwUWYvbTdCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpaQWdvY08zUWtJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbnNuOENsa2doZzJ6RUF3Y3dySkFIMS9WdXBCUkxZRDRGelZ5SmViODA0N3Z4U0pRYjYzUDJZdFVpdFhXSndGTngyQ2pwTEVweERtSzZkRUVrK2M4ZS8xMEtOWFlibXJpRklRMDVVR2tmUE03UUt3eW1GYS9pN0t6V2RRT3ZmdTY0aFVBUmlGRk9jcmRZVXVGNmtrMGNXTWxkTUtSY3dZYXpURStKNENJRGlRTVU0clFYeFM1cUR3OVVEMDlnWXlqOVdwSUZnSXJlb0hCNC9ORlJ3d2UrSW11SThkOCtJdUVoQi9qckx2MFhFa3lJQ2NXdkcvOWhFbXhHZndUbjh4aEdSYzlyckt4ZUh6RWNuc2NHMUhObHhicnRPRXZmSU9TRDIyYmkwOEFvaUhvaEZJckE4Um9RY0IxYkVSTlp5ZnB3cmNNMlpEWjVqejRtSTAyYUFmamtpcnBuZURYV1c2emVFU092bi9kOUhCTUtYSko3bENQU1NFS2kvZkV0TXYxM1Y3MVQvOE5zRGcva3lWVGx2U2dFSW1sbHg3di9USkdxTkRXT0MvZkJzNFYyeGxQTnliZGVGa3ZOc2M2eGdKMEx0VTk0MU9UUzgweEJFWGxvd1pzeHpCWEYwQkd2L1BTTGVsd1QzNTlwRjBDZWVVWWpMNTU3L0phTG9ZOXBoWGdsSVlEMENRNElDdk1zUWhXdUtCUEFjZUZVU3NXaGExaVdHL2Jna2V0M014L3dLZ1lDdWxCTzRYby9BTmtvdUVRL2htNGlBTHJuM0lxSnF2SFA3RW5NTDhqMXQ1QnllOXpmejFIWjZaQXJvdHhaRmhBZk8yMUU0MzhRSTBJeVpWeXhsb3dMWFM1RThySEttaXRIa0JLYjMzZnBTY1hvRnJrL3NxYmxyTXZ2dTkxejlPVkVpNS9SYjdUSHRxZ2wwQmEvaU44ZnVkOVp0MzlLeGxyUjFNZUdsUnZlWXdJazgyMjhURVgrMnA3bGxYNXY1VmlQSU1lL3RvZlR4aUxodFdwdGJRK0J0cVA2aDMrK1VoS0xiK1JDT2ZzclF4WHYrSFFGSGhCRGJRWW93Ni9scGZaejF2NkZVaThVUlBLaHJ6eTUzL2RBNk91T0U3MjcyTWtyVEdrRUl1K2E5UzYyM0lwckhPbVF6SWRUOXhOSUdaL0t4dC9yS0pLQllaemswb1RzRnJtY09naDFjUG5kTWxkN2pZOFN0Q2JER1hPRmQxVHZ3TXhGQmtMT1NQWU02NERHQjA2NmFZY2Y1cGF1a3N4czd3R3NWUjR6QTF0YXB3WHRVQmE1ejZ3QWxhOVJMRHJzNkFDMEJjMkhOZnViU2U4Sjk5dkxzWSsrY2J5ZkVpM2t1Y3I2RHVkMVNjK3FwYTRyWTNTZHd6ZTh2VDN2OFEzM0NOekpuQno0OGxMSHdkOWJybVVPZHJ5TS8vODQrUmxjUWJ2YXNzWmsxLzY2RUNEY0JIVGdmUnVLLzJRL0puWkVnRCtjZy9yZ3FrN0hMT1lSOTdza1g0cHVjYmFtelhrMEQyUFA1OFhUR2lzQzJDSXVYSnM1OWNjNkdzeXAxNHZ6bS9WTjVwZVZ3eG91MUNzNnNsZTczY0RhR3NkWk1mTnNqNHM1OTNFenNpVkgrUTF2Ly9vYUk0Tm56alZKRHpTY0JDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBTExFVkRnZWptV2xpUUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNtRUtBdGZySEp4RzU5dld2U1E2cmlHbWFKSEJjQ2VRYzR3OWR5SUo3LytrWnh3K0V2RzdkNlBDdENpWXROU2JuT1A4ZU40RnJuTUZ3K3VHOThKV1dBeEFPVDNldGhPd2UwdUVZV09LOGc1REQxU3FSbUp0RXhDOU1jQzU4YVVUOFJuS1VIanMyRUMvR2J1NzNralFrK3BBckErZnNLMGJFM1NQaUdpVVZOZkl3VG5IcVJ0UmlLU2VvcHRqMXI0NFVicTVOZTJjU2tNVEJhNDVkT0poZU1pSnVrT1llaUQ5TVNjOUlqbTcvT09YaWdtc1FKdWY1aUlnNjQ2WTBJUXFPU0FZaUFLV09jeVZsenhHNDVwNjlkMFFnTHAxTG4wNGlOOWpmVEJkUFRvQmp4TDV6ZGVEWWUrWHFmZlRKZ1FZVDVPQzFsV01xZ3VlSVR1TFVpSlBxRjBwQVpmTGtCSmxtRkxuVFM3Y2dnTmNVTzg4MW5tZERVNGdIdTNIK1JCUzdtWGpIWExRam9FVlh1Y2RGTkd1bkE4cktKTEFDQVFMa3ZDSUpSM1FWLzlTMEZ0RWxDc0R6NVFYVmU2cDl2dkNmcXlCY1YwL0JJeER3ZW5NVmRPajhqY0lSaG1CTytmcE1leFM0N2dZRGI0STM1UUlMTU1kQzBLNVV3SUZnRDRqNE5mdG1oU0cyU3BHTUlZSlNNRy9iUjFMZ2VoL1U5MS9uVkRHYXJhN1hLSEE5YlV4dFlYNC96ZkwrcTA0VkVjOU02ejN0bkhlT0NOWllUQkxZR2dIR0xlc090K293N1BicHQ2M1p2RXQ3dWdKbkh0Vm5XSk1yb29nRTBybGhJZXdYcDRCNWE2MVRGcHJSbTQzMVlZUklHZThsUVNiWlQvN05tZXZBUzlqZExBT2hRdGFtZjZTajROSTV5ZEkyalMyUEFJSHN5ZGZCS1BudVFweWJPV0xmV2pKN0tudy9qQTJpaVgyTVQ2NzdSSUd4ZkplenI0RWcrcFJ2UE5aeTJkZGdmV0NxTU9CVzU3MEYrRTdJTW1jL2NteGRTK1JYNEhvSml1dVdNWFZNc2JmRFhCd3g5NkhuUCt0ejdJdVZCcnpOQmRodWsyZ0d5KzRLZE4xRmptY0o1WmV1VDYxTDM5SVBpY0FXMTZuaGR5Z0Mxd1F5WnM3QTNMRjlScVE5RHVvZ3dGMGl3MnZ1N1owbUJUSzhYTm9mUUF5ZmZmMHBpVDBJNW1FRXV5Q2dCbWRYcHN5Myt1cm1HY2dlT2NHRDJZZW5IZ1NZdjE2ZHVmbHFSc0M1cTd5cGE0cVUxU2R3alIxZHZ6ZHRJSUFCYXpvSVFQZWRFNkVmWHBMbWt3aDhJL3o5M2t4UWFNU1FHVys1aElqd2ZUdCtQR2NTRXYvUnpJVWZUY0VUYW5Ick9odmpoSGRMYVZCNCtvWjNMNEcrbS9OMHhneHRJZ2g0Vi9xWGlQaFFabTZQN1YzZk1uVTV6UGs1MDhBNlJWZml2dVIzZ25xM0U4SFlXY01nUU1UWjB6NThIYkQ2WDlONDR4cUN6ajRvNVcyWFVYTFdxNzZHT1FWOWdCRDBqVk5mamhXVngrYTdKVjY1Y2NDM0FXZHYrR1lxTFo5N2pqTmhCR2NkT3RjRXE3ZFhZNXQzUnpPeDdvRnR6MDVsOUhFckNmRGU5NHp3TndsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBoQlFJSHJHZkM4VkFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNTd0FJRnpWNktDYjAwSDJkdkYvVklTT0ZxZ0dvdVF3RUVTd0ZFRXAvSkxkRmgvNk00SVowcmlwRC9aMGJaZmpvaG5OZjc5cURpTzV3YmhWT2RmeWp0dUF0Y2xRcVpkbkJHK3VFdnJCNXdNY1hEOHhlVGMxSFlPS24xb0lNU0FxQVlPZEhNVDl3UGlmWWozRGlXYzBIQ1lldDZBeUVRdGFvMGdEdUxOcFE1V2RmMEk2K0ZNaGhqc2tzTEk3ZmJoK0lad01HM0NPWHpJb2IyTEQwS1NqMHRpZ0gzTzVad1RPSE42dHRML1Y0MklIeDRDM3ZNN1RwQ0lzT0NJajFQa0xoTE8vOHlUSHA3YVVsb256NXZmU282U1N3UVFtU3B3elhNZFo4MUw5eGlPRXkwT3V4L3J5TFBVZTRHK3UxRkV2TEFRNEhrcklRVkVnYjVabUg4b213TFhRNFNHZjc5dytwWTQzWERXeFhLOHAzb21Yak01MFM5V3FBVkpRQUtMRTdoQUNrVFFKV1JCWlgzaTF2ek9YSVJ2a2k3eE9PWVpDQ0pRQjJKbXpmVDU5SDVESEtJcktYQjlJaFhtWmN4UllaMmIvK1hFSDRZR3pSaXhwS0d5ZHZrNzRtdUlwQ05Xc1kra3dQVStxTysvenFsaU5Fdk55NWNtVUNvbTJmVTlzN1F0aDFUZVVSYUh6WDE3OGIySjZBM0JsVXdTMkJLQnk2YUFLYWR1R2VYMzZIZUFJQWpWRnYvKzMxVkFzdXMwQkxLMjFKOUwyRUtRT05ZQlM5WjJQNTZDdzd5cENsaEk4SlJEU0FqSkVhRG1JZ1hHSWxMTWVoN3ZyYVhUUFNMaTBWVWdwRnIwRkRIayt0c09zVGlFNUdxQlZRSWtFdnlJY2RmVkx3UmJ1MHkxOS9EaHBZMWNxVHhFRTMrM0NnaEJjRjNFNEJDZTYwb0VlcUxOQk9zczZhOTJHWE1DaGJLSFFOOC9kdVNhZU5zRzdoRkV5Vm5QLzJJaHo2M09ld3ZOLzI2Mk9mdVJZK3RhSXI4QzEwdFFYTGVNc1dOcWJCRFgzMHRDb21QMnMzajI4ZzdNQ1hGT0pUSjFmV3BxZlY1M2RBaHNkWjBhd29jaWNFMmc0bnVsY3gzMXlHQ1B0eFlycnY4TmdkMCtVV25PQmJ4b2dhR0ZHREh6SUlLRXNJNWJHankzcjJvRXB2ODBJdjZvT2l2Qjg2WnJIbytZTFh2blUrZGhZNXZPUGdnaTI4d1RjK2RFcHE0cFlzdVF3UFZZZS92eWM0YUV3QXB6RWlMTlY2aStBZDdSVVVoZmtLcG0wTlN1K25sR01DNm5CSEtaMDU1ZFhOczg5enYxL2R4MTFndmIyV3REekpyemxLenQwVGR6enZ3Z2JNMXo1djBqdnFPNUp4SE92K3VJODAzMTJTSys3M1Bya2V5YkVmQWVFZTBwNmN1SkIrZHRUQktRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKTEFIQWdwYzd3RzZWVXBBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFR2dSd3ZPQXdlanZoUU12aDh5OUlTd0xIbU1BMWtwTjFlMDhMQnhoRUxqNXd3R3l1RWhHdmpZaDIyN3JFZEk2SzQzaXV1OFk2L3piTE9XNEMxd2cvSTFhQ1dOMllkTjNLc1JEaGhEcmhhUFNxUWlIcHJucHdwSDVTRW54WVd0QzRGbWxBTVBrSEJocEpnQWpHUUMycVVXZEhIQjlueWx0SEJQZGFpZkJKc3lvRVBCQ3p3SUh5SzJOQUw1UzNGdVhHRVl6bjRGajdjUXA3UVJJZWI0cEwzaVFpN3BPRUtNZVcyZFcwZlhQQ0psZ2g2b0dUUDZMZHBRbUI5SnRXOXdDQ01IUFNWSUZyN1A2RGlMaE5wdkkzVk1MV0JEdEFKTFFyTFNFT2lsTXU5OGd6UnpncHptSFZkYTBDMS9PSklxcnpGeEdSRTdDZFg4T0pKZUFRaXJnMTRxTW1DVWhndXdSd1prY2NqYUE2WFlrQUhzd0wybk9vZGw0Q29PRFVmcjRSVFIwUzFsdmlIVGJDbk0xay9aT0l1SG1ITmJCOVN4VXM1R3daUzVuWFhhODFseC9iS09iVUJMdGhIamoyTzJKc1hVdmszM2N3cTY1dlRNUTdtRjkvWTRrR3ppeURiekhtdnArY1dZNlhuMGhncWhqTlZ0ZHJGTGllTnNLUHNzQjFuekFNSXBsMzMrTjM0YlRlOHFxalRJRDVJdUpXQkdSckpnVE9DQXl5aENEYklmTWp3QlhDdEloak5kTys1MUJyTXkzOU5ubENFZ0psN2UvUUVuTjFSTHdRRmN1bElYRzR1VzFtellmeHRVUWllQzNmTW1ORVdaZW9kMm9ack5jUzRJbnZaY1M1bXdrQngxOUx6NkNwb25Hc3dUNWtvVUNoVTRNL050dkU5eUdpY3FVaThGdWQ5NDd0N3puN2tXUHJXaUwvVVJLNDVudTZmVzh0d1dpWFpiQjIwdzVPVmpxbXpoa1JkNnZPL3R5K2NHMkdieE9DV2JDK1YzcWYxaXpZSzNoN3oxclRGR1pydjMrbTJPUTFoMEZneSt2VUVEd1VnZXZMcGNBaXpDV21waW5CUjVvQ3VqOFhFZGpCTTJhSmN3YXNlN1BYK0ljcFVPZllzNUgxZVJBQ2s3QU9OaVY0K0JCTG5uMk00Yi91eVlqWWQzdk5uZmt2MXc2bFhRcGMzeTRGTEIreXFlLzNsNmZ1SkN3d0FBQWRFa2xFUVZSekdibjVmZGUrUHh5dW5mYXkrOG8rMUdDZGZXMXFCK2lhK241dW4vVkNUSnh2Qy9iNDVpYnV3MmVrd0RlZm1GSFlsRDBvdm5zSnJwUkxCRlI2WTBlUTNSSXpPY1B6cUFsenFKS3l6U01CQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlGQkJTNExvQmtGZ2xJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcERBU2dSd3VNREI5eElkNVI5MVovU1ZrRnJzRVNMUTU1VHgzSWo0bFlqNDlnRzNGK2N6SE1qYjZVTVJjZm1JUUVDeVRrZkZjVHpYWGFYT3YxM1hyeWx3L2RtSXVGWkVmSEdsY2ZiOXlmSG9rbzN5aDhTVXpsRUpIcjh6SXM0K3dxYTI0MVI5S1NMeHI0K0lVNDhvNitQSnVlbjVPeEIzbzYyUFN5SVlYU2JDQ29mQ2Q3VituQ1BlalhqRmcxS1ovekdDeTVwWkdTZU13M3VQRkNUL1dPTHo2WVp4UDFvRkIwQTRlYTRRN2hZNTRiVDZpNVVENlNNaTRrY0tPcVNMVDhGbEoyV1pLbkJOUVRtUmF3UUw3MXNnL3RMbDlGcmFCcDRMdDZpY1VIbm43RE1wY0QyZi9ta2k0b1hwT1RHL3RQNFNDTUJ6L1lqNDhOb1ZXYjRFSkRDWkFHY0IrVTU2V28rZ1E2bTRkVzBFNGdQUGk0alRGbHAxNTBwWUcxRzVYTW9KWEI4Rm9hTzZ6VjJDUnptQmE2NWhEZ1BqTG1HUUpSM3htWHY4YkJYQWhUN2llYjZHNkVmaE1NbG00eHYvaWxXUW1yZk5MV2pHOVYzZm1ITytXV2VZNHFVN0pMQzB3UFZYSzNIS3IrL0FmdGJPV0ROcXAxS0I2eDJZYUJVYklzQTZDNEVyenQreUtiZStzaUhUTmVXWUVTRGdGMkpON2NSNjVNMnFOUk1DZGgzbmRJRTBWenBqQThJVzVsQzc2QlBtc3V5cElpTFhUbHRaNjVyTGdXODZBalkrdXlOZ0VlSmpCUHBqSFdpdGRPR0lJS2drUXVwekVyWVN1SkgzemxGSWZXT3ZyMzJJL3hIaytwRXJCZEtzMThRZlhEMDNmMndFYVBZSStBNGRDbnJWTFBLbzdGTWUycmZkVVJLNC92L1MvczJJb2JxNXJGM2ZqU1ZqNmlkVDBPR1N2U3NhL1k0VW9IVnFZS3N6cENEYkYxdUlvUHNDQzRFOFpzVWN3am8xWGJLVXdQVXV1cGYxM0RuelFBSjcvL3FJTTFhY1ozeFpkYmFBTXlWTHBVOGw0WDYrN2Y1MndXODdBcWh6RG9KNTlDMHJ3V3llZjB1SWNEUEh1ditLSXJtN0ZMZ21RTkticXJNK3JDVk9TU1ZpMzVSTkVIc0NOSkNtZkw4dzUrUmN6SjAydW44eGhsMTdyMnpLK3psMzFtdnVHWXUvU2VMU0wxNzQzQmRubSs1WVFmcnRnWUFldVhhMStSSm82S1VSUWFDUTB2VFVaTU54WHpzcTVXVStDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBS3JFRkRnZWhXc0Zpb0JDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNLQ0tBYys4ckk2SzlYbzlqQUU0aUh5Z3F4VXdTT0pvRWZpbzUwcmZGQ3Y0cmlUZ2l6SGFvcVUvY0hxZTBtN1FjeTNESVFyU1h2NDlpUWtqNEt4RXhSVkI0VFlIckVxZmtPZjNSSmU0M0pIQTkxdW1KOThuVnEzdm0zUjJHdGgzTWNtMmhqS2RYd2lHL1h6bWpOY1dTNTdTOTlGcmVqNGgyL0dGRS9FRHJvajZIUWh3OFg5RHhmdTJxRjlIdVI2WDhqTU10cDdOR3hNMHJvYlI3UmNTWkJ3ek5pVXZlT0NLZVU4aW1XY1ZmUnNSakkySnBKN2VsZWZPY1JKeURQdTBUQzBEODgwOFhxSHlPd0RYVjh6N2d1WC9sNU1SNzZ5VGl4THR1S05ISE9IaVNFRG51R3hNNDhDRm0vWXFJd0ZuMm95czY0dzdaM2Z6OXB5UGlXUmxob2pIbDdDc3Z6MGZFdGQ2L0x3TlN2Ym1nR1V1WnhYUHlmbW1zNmd5NkZGWExrY0I2QkJCeVFDQ2lTOFJtckxoMWJXV2ZBSE96SlNVQkpISUMxMGRCNktobU1WWW9OeGYwWWsxSGZPYlppRVVRY08xU2xZRGVqMWRDQVJkTkRlZ1M2RjV2eEo1WWNsZkFwMTNWWGRlandQV3VpVytqdnJIM2JXMTFUdWh2VndMVCs2NS9HNzJuRldNSU1EYjVybThMUFUwUnVoeFRyM2tsVUVvZ0Y1enRjeEZ4dVloZ3ZubmNFL2Z4UzFvUVdMZTdXa1FRWU9Hb3AvYTN5Yjhrb1Q0Q3hrelpYOWdxTCtia1Q0a0krcnRPU3dhL3liVjdLUkZqMXE4ZnM1SDF4Nlg2T0NlKzMxVStnbTBFMHVRYmZCZHJhWHpmSWNLTmtCeG5EL29TNjhKWGpRZ0VKc2VrcnJHeDloN2FHUHU2OGg2aXplMTJLSEE5ZHhRc2UvMVVnV3VzS0JIS1grcWR0bFJRVFBZRkhwaldHUkhzTjBsZ0xJR3RyMVBUbmtNU3VMNTRGUmp3ZncrSXh1YjZhT3I3ditUWjFUY3VDQ1RQR2dUbk5naml2b3RnY05oVEMxNGo2a3dmRXpTZGN6WmpVc2xleDVqeXV2THVVdUNhQU9odnJ3U28rYzRZbTNnZjNDQWlFRVVlU2szaDVUbmZMK3laRUFnVHdmTHJWR2MvRUU0K3BQU1pkTzczRXcyang3NmYrODU2TWY4bmtBNWkwcVhwN3lLQ1BTZk95SHloOUtLSitmcUVyc2NHUStKZFFnQW85ckdHMG0rbGdDcTcrQVlic3NYZkpTQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFrY2F3SUtYQi9yN3JmeEVwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa3NFY0NDSXMrTXduWnRzMTRia1FndlBqdFBkcG4xUkxZTndFY3NSL1FZY1M3a21EdjEvWnQ0SXo2YTRjcXhCaHd5UG1KUmxuM1RJNy9NNG8vVnBjZU40RnJISUVRTUVFTWR5aTlLaUx1RUJHZjdNbVlFNUxIV2VyUEtzSGNQMGlpdVBzV0I4SFI3b2tSY2IzVWxnOG1SMFNjSXJ0U1RqaXh6b3NqTnFMWmxMa1ZvZCtoL216K3pqNy9CU0lDcDBDRU5kckNWQitKaUN0a0hOTytMeUlRZk1FUnNDL2hXUGI2aUhoYVJMdzJJZzd0bWRzbmRJM3pMKzFmd29sMnJzQTFmWUJ6OEtPVEErTDd4Z3dFODBvZ0VVRGtpMmNCQ2RGMFJHMXgvQzFKZkpNZzlvSUlWbjFQL0gwbG9QVGVpSGhUQ3BDd2RmSC9rbmFhUndMSGpRQnp4aWRVODhCYk5CcU8wL3F2VjhFUnZqRVJCaUlRekEvUGxMbWV1UU9CU1FqYzBKY1V1TzZtYzQ2SWVGMUVuRC85ak9nSGdTKzJPQWVqRDA4M2NSd05YY1k4blcrUmZTWUZydmRKZjM5MUszQzlQL2JXdkZzQ3pQOFJ3R0ZPMEU1emhJZDIyd3ByTzZvRStJNWx2YTQ1aDYzYnVsU2dzcVBBcml2STFVTXJFZDM3SG9YR0ZiU2hEZzdET0xsL2VxWk4vY1lwcUc2dldXanIzU1BpWVJIeEp4RngyeDJJSlErdHF3OEJRZndPTzFsVEtnbmdOMVRlbG43UEJTYXFiZVJiNWtsN0NoVGE1TVRhSVBzb0JKRnE3ajJTcC9TN3ZZdjdJWXBGSDZMTmJmWUtYRy9wS2ZDZDRLRy8yakpwak5CN0xvQWM5eWI3c1FTWlJPUjZpWFRlaUxoSW95Q0NqWEpQRENXQ2lpQ0ErbGNwT1BWUWZuK1h3QkNCTGE5VFkvc2hDVnl6Zm94STlObUhvTGQrZjBkRTNIVGd6RWhma1p4Zit0M0NPcGtMRW16NVpUc1d0QzR4RDNGaG5vM3NxUkljNk9jR2drZmZ2aEtEZm5KSndUUHk3RkxnR29GdnpueDBCVWJOTllFek9ZOGNHZWlnRmw0K2RUcjdzSlRRTU44cFB4UVJGNnErai81bk12Z3NyWGRkdXgyY0YwRncrNHd6K3FpKzlMTVJNZVljQjBHb0VKTnVmeE4xOVhtWGVkenJCTDVueno2WGNtZTk2dnl3ZjJuYTE5dlhlWjhmaUlpN1JNUjlHdUw4Qk9nbGdQaVlzVkdmL1NId1J0YzNEdnVmcklzZzRtMlNnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQ0JEUkJRNEhvRG5hQUpFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtjQ3dKOUIwMHYyNDZaSDRzd2Rob0NWUk80R2V0eEZuZjNCRDNha0xCS2ZzUlI0d1NEdWM0VWVGWWhsakJ1NDlZKzlac3puRVR1SWJsSmFveGNxMk1JL0pZeCtObXNBV2NzbkQ4ZVVaeWxOcTNxSFY3M09DMGRPTWtXdkpyQmUvSmExVEN3YStNaUhwUEhBZXBaeVZIUkJ6S3R0YStxZmNKd2hxMDliY3FoOUdMcDBMdW5FUXRjMlhpeVBlV3lpSHh0SzBNbjBvT2JqaVYvZTFJcDdLcDlxOTlYVnZvK2xzUmNaVktKUDZ0QzFXOGhNRDFRcVpZakFRa0lBRUpTT0FFQXJ3RDc1VEVKLzRvQ2FNaHVEVW40WXorNENSTTBBeXc4YVVVdUFmeGlpRVJNd1d1OHozdzh4SHg0aVEwY1pPTmlsdlBHVCtIY3EwQzE0ZlNVOHZhcWNEMXNqd3RiZHNFV0lkRWJPcXlMVFAvYndvbVJuQkJrd1QyUVFEaGRjUmgyd2xScURzZWtYV3F1VndSWlNPZ0RHdkRkV0wremQ0Q2dlcU9TeUtBSDMvKzZaZzArR2NpZ25YL3orK2d2WXd4MXBiUDE2Z0xBVG4ySk5wcnlXVGgzY0Y3QS9FNzNpMElzQjJWZGZjdTNPZEtnWWxxUGx2ZmMyQ3ZsYUI0dDBsQ2NBakxQYnpndTcycjdZY29GbjJJTnJmWkszQzlnd2ZmaUNybUNseXpYM252eGprSGhLMFJUMld0amVlOFNRSkhsY0JXMTZuaGZVZ0MxOHgvNzFvRlBqbFBZNkFnOEh2UmpvSERuQXl4ZXM1R3pBMzJ6WHIraTZyeXJ0cXFoeUF6aVBEeUc4R2xxWE9NWU8wV3hqdGpFNFlFQVNBb0FHY29DRXo5NlJRd1pPMEF3THNVdU83aXpYc0o4V2ZFcUp2cFgyY0dDaWM0NXJlcllPMXo5Nk8yTUVhV3RvR3gxaFpvYnRaQm9JdlNJQk9jOVdJZWNhdFVBUGNrNndLdmlvalhSQVJuZjRiMjY1WnVYNjQ4OWhidlZ0bkVPUzhDMGZQOU9EWHh6WXBnTzRtelA2d0xiS1dkVTl2a2RSS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRWpod0JCYTZQWEpmYUlBbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFrY0d3Sm5yNXh6THRWcUxjNHdIeDVKQU9lMUg0b0kvcTRUUWd3NHJhMGx5TkRsTUlZek13NDR1M1QrdzhtZmVyOHdrdG0rc2lPazhlOEYvWUt6SllJdi8xdzU1ajB1Q2Nmdmt1cysrSnd6T1plK0pJM2RuQTJNUFpqZ3RFdGV4RWR3UVAzNlBvemVVWjIxMFBYNUt5Zk5oeWFueWlXcXZrQkVYTEJWMEpjckVlMjNMVmpIRW5aYWhnUWtJQUVKSEY4Q0NGcnhibHB5VGt1QURZUWZmaVFpUGhrUlh4eFJQazczbDZtQ2NaeHBnVG44Vm5zVjhUZm1aYzJFS01hUVlDaGNieDhSQ0Z0OGJhdU5Pd1oyTlFVU2R2VnRlQXl3YnI2SnAwOUNtVTFERVdIaGU3SXZkYTBsa1ArckVmSE5IYlI2My9Ydm9JbFdzUklCQkpzUXUySHNOeFBDVjRoV0lZSmprc0F1Q2VUR0pPdThWMHJ6elYzYXM5VzZ6cEhXOEZnVHI5T0hJdUx5YWM2L1ZidTFTd0pIaVFEUEpJVFpFSk1qV08yaDdEbDhmeEtBbTJydlB2YlE1bzZiUTdTNTNXYUNkVDY5QThSZkpERkRoQXkzbGhES0pKQUtheHpOTkdYdmRtdHQ2MXJ2b1E4STJsMHE0Z21YaDZUM05nSHAxaFpQM1JwRDdUbmVCTGEyVGsxdmRLMEQ3dU84eHRaSHhzV3FmZS83VllGMWVQL3d6T01iNUNpZks5aFZmeUJNekx1bG1WaVhlZnlPMWhWMzFVN3JXWThBYXdQOE9aUjdFakYxdmtjVXBGNXZURml5QkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJSUZORUZEZ2VoUGRvQkVTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdnZFVKL0dKRVBDOGl2cWRWMHpNaTRyWUhKTmk1T2lncldKM0F1U0xpZFJGeHZsWk5CQm00ZWhLUVhkMElLNUNBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaGdIZ0VGcnVmeDgyb0pTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUXdLRVF3SWZnM2hIeGlBNkQvMWRFUENvaS91dFFHcU9kQjB2Z0J5UGloUkZ4NVZZTC9qTWlicFIrTzlqR2FiZ0VKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU09BNEVWRGcramoxdG0yVmdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0NCNDA3Z2YwVEU1U0xpREMwUS94NFJiNG1JcngxM1FMWi9kUUxuaTRnTGQ5VHkwWWg0bnlMcnEvTzNBZ2xJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUXdHSUVGTGhlREtVRlNVQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQ0I0MEZBZ2V2ajBjKzJVZ0lTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKTEVaQWdldkZVRnFRQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhJNEhnUVV1RDRlL1d3ckpTQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwREFZZ1FVdUY0TXBRVkpRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJSUhqUVVDQjYrUFJ6N1pTQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFrc1JrQ0I2OFZRV3BBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VqZ2VCQlM0UGg3OWJDc2xJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrTUJpQkJTNFhneWxCVWxBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnZ2VOQlFJSHI0OUhQdGxJQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNTeEdRSUhyeFZCYWtBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNPQjRFRkxnK0h2MXNLeVVnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRd0dJRUZMaGVES1VGU1VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNDQjQwRkFnZXZqMGMrMlVnSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpMRVpBZ2V2RlVGcVFCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEk0SGdRVXVENGUvV3dySlNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBEQVlnUVV1RjRNcFFWSlFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lJSGpRVUNCNitQUno3WlNBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWtzUmtDQjY4VlFXcEFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRWpnZUJCUzRQaDc5YkNzbElBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tNQmlCQlM0WGd5bEJVbEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdnZU5CUUlIcjQ5SFB0bElDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1N4R1FJSHJ4VkJha0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU09CNEVGTGcrSHYxc0t5VWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1FnQVFrSUFFSlNFQUNFcENBQkNRZ0FRbElRQUlTa0lBRUpDQUJDVWhBQWhLUWdBUWtJQUVKU0VBQ0VwQ0FCQ1FnQVFsSVFBSVNrSUFFSkNBQkNVaEFBaEtRZ0FRa0lBRUpTRUFDRXBDQUJDUWdBUWxJUUFJU2tJQUVKQ0FCQ1VoQUFoS1F3R0lFRkxoZURLVUZTZUQvYjRjT0JBQUFBQUFFK1ZzUGNpRmt3SUFCQXdZTUdEQmd3SUFCQXdZTUdEQmd3SUFCQXdZTUdEQmd3SUFCQXdZTUdEQmd3SUFCQXdZTUdEQmd3SUFCQXdZTUdEQmd3SUFCQXdZTUdEQmd3SUFCQXdZTUdEQmd3SUFCQXdZTUdEQmd3SUFCQXdZTUdEQmd3SUFCQXdZTVBBWUNqMVFpT29aTzgvUUFBQUFBU1VWT1JLNUNZSUk9Ii8+PC9zd2l0Y2g+PC9nPjwvZz48L2c+PC9nPjwvZz48L2c+PHN3aXRjaD48ZyByZXF1aXJlZEZlYXR1cmVzPSJodHRwOi8vd3d3LnczLm9yZy9UUi9TVkcxMS9mZWF0dXJlI0V4dGVuc2liaWxpdHkiLz48YSB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLC01KSIgeGxpbms6aHJlZj0iaHR0cHM6Ly93d3cuZHJhd2lvLmNvbS9kb2MvZmFxL3N2Zy1leHBvcnQtdGV4dC1wcm9ibGVtcyIgdGFyZ2V0PSJfYmxhbmsiPjx0ZXh0IHRleHQtYW5jaG9yPSJtaWRkbGUiIGZvbnQtc2l6ZT0iMTBweCIgeD0iNTAlIiB5PSIxMDAlIj5UZXh0IGlzIG5vdCBTVkcgLSBjYW5ub3QgZGlzcGxheTwvdGV4dD48L2E+PC9zd2l0Y2g+PC9zdmc+"><figcaption>å¾ 3ãå IPC ç 120 ç©´ä½åºçº¿é¨ç½²ï¼6 个æ§è¡ Workerã3 个 Broker åï¼æ°é为设计建议ã</figcaption></figure><p>åºçº¿éæ©å IPCã15 å° 8 éé PSUã120 个è¾åºééã建议åå 3 个设å¤åï¼æ¯å 40 ç©´ä½ã5 å° PSUï¼6 个 Workerï¼æ¯ Worker 20 个 DUTContextãä¸ä¸ª HMIãä¸ä¸ª ResultWriter åä¸ä¸ª Supervisor ææè¿ç»´åºçº¿ãWorker ä¸ Broker æ°éç±è¿ç¨é离ååæµå³å®ï¼ä¸æ¯ç¡¬ä»¶æ¢å®äºå®ï¼CAN å¡/PLC/温箱æç©ç SDK 䏿§å¶ååé
ï¼ä¸è½ä»
å PSU åæ 3 åå°±å¤å¶è¿æ¥ã</p> |
| | | <div class="table-wrap"><table><thead><tr><th>å</th><th>Worker / ç©´ä½</th><th>PSU</th><th>Brokerèè´£</th></tr></thead><tbody><tr><td>B01</td><td>W01:S001âS020ï¼W02:S021âS040</td><td>PSU01âPSU05ï¼å8éé</td><td>PSUå
±äº«ä¼è¯ï¼æ¬åèµæºä¸ä»»å¡</td></tr><tr><td>B02</td><td>W03:S041âS060ï¼W04:S061âS080</td><td>PSU06âPSU10ï¼å8éé</td><td>åä¸ï¼ç¬ç«æ°æ®åºåæ
éå</td></tr><tr><td>B03</td><td>W05:S081âS100ï¼W06:S101âS120</td><td>PSU11âPSU15ï¼å8éé</td><td>åä¸ï¼ç¬ç«æ°æ®åºåæ
éå</td></tr><tr><td>å
¨å±å
±äº«</td><td>æææ¶åå䏿¸©ç®±/PLCçRun</td><td>温箱01/PLC01/å
±ç¨CANï¼å®é
TBDï¼</td><td>åºå®å¯ä¸å®¿ä¸»ï¼å¿
è¦æ¶å¢å B00ï¼æ§å¶ææRun/groupåé
</td></tr></tbody></table></div><h3>17.1 æ å°å
¬å¼ä¸è¾¹ç</h3><p>å¯¹ç©´ä½ sâ[1,120]ï¼<code>PSU=â(sâ1)/8â+1</code>ï¼<code>CH=((sâ1) mod 8)+1</code>ï¼<code>Broker=â(PSUâ1)/5â+1</code>ï¼<code>Worker=â(sâ1)/20â+1</code>ãä¾å¦ S001âPSU01/CH1ï¼S008âPSU01/CH8ï¼S009âPSU02/CH1ï¼S120âPSU15/CH8ã</p> |
| | | <p>W01/W02 çç 20 ç©´ä½è¾¹çä¼ååä¸å°å¤éé PSUï¼å¦ PSU03ï¼ï¼è¿æ¯éæ© Broker çå®é
åå ä¹ä¸ãééé¢çº¦ç¬ç«ï¼æ´æºå½ä»¤çå¾
ç¶ Permitï¼SessionGate ä¿è¯éééåååºä¸ä¸²çº¿ã以ä¸å±å¼å
¨é¨ 120 æ¡è¾åºæ å°ï¼éä¿¡å°åãåºåå·åééé¢å®å¼é¡»ç±å·¥ç¨å¸å¡«å
åæå¯åå¸ã</p><details open><summary>120 ç©´ä½æ å°è¡¨ï¼å®æ´ï¼</summary><div class="table-wrap"><table><thead><tr><th>ç©´ä½</th><th>Worker</th><th>Broker</th><th>设å¤</th><th>éé</th><th>ResourceKey</th></tr></thead><tbody><tr><td>S001</td><td>W01</td><td>B01</td><td>PSU01</td><td>1</td><td><code>psu/psu01/ch/1</code></td></tr><tr><td>S002</td><td>W01</td><td>B01</td><td>PSU01</td><td>2</td><td><code>psu/psu01/ch/2</code></td></tr><tr><td>S003</td><td>W01</td><td>B01</td><td>PSU01</td><td>3</td><td><code>psu/psu01/ch/3</code></td></tr><tr><td>S004</td><td>W01</td><td>B01</td><td>PSU01</td><td>4</td><td><code>psu/psu01/ch/4</code></td></tr><tr><td>S005</td><td>W01</td><td>B01</td><td>PSU01</td><td>5</td><td><code>psu/psu01/ch/5</code></td></tr><tr><td>S006</td><td>W01</td><td>B01</td><td>PSU01</td><td>6</td><td><code>psu/psu01/ch/6</code></td></tr><tr><td>S007</td><td>W01</td><td>B01</td><td>PSU01</td><td>7</td><td><code>psu/psu01/ch/7</code></td></tr><tr><td>S008</td><td>W01</td><td>B01</td><td>PSU01</td><td>8</td><td><code>psu/psu01/ch/8</code></td></tr><tr><td>S009</td><td>W01</td><td>B01</td><td>PSU02</td><td>1</td><td><code>psu/psu02/ch/1</code></td></tr><tr><td>S010</td><td>W01</td><td>B01</td><td>PSU02</td><td>2</td><td><code>psu/psu02/ch/2</code></td></tr><tr><td>S011</td><td>W01</td><td>B01</td><td>PSU02</td><td>3</td><td><code>psu/psu02/ch/3</code></td></tr><tr><td>S012</td><td>W01</td><td>B01</td><td>PSU02</td><td>4</td><td><code>psu/psu02/ch/4</code></td></tr><tr><td>S013</td><td>W01</td><td>B01</td><td>PSU02</td><td>5</td><td><code>psu/psu02/ch/5</code></td></tr><tr><td>S014</td><td>W01</td><td>B01</td><td>PSU02</td><td>6</td><td><code>psu/psu02/ch/6</code></td></tr><tr><td>S015</td><td>W01</td><td>B01</td><td>PSU02</td><td>7</td><td><code>psu/psu02/ch/7</code></td></tr><tr><td>S016</td><td>W01</td><td>B01</td><td>PSU02</td><td>8</td><td><code>psu/psu02/ch/8</code></td></tr><tr><td>S017</td><td>W01</td><td>B01</td><td>PSU03</td><td>1</td><td><code>psu/psu03/ch/1</code></td></tr><tr><td>S018</td><td>W01</td><td>B01</td><td>PSU03</td><td>2</td><td><code>psu/psu03/ch/2</code></td></tr><tr><td>S019</td><td>W01</td><td>B01</td><td>PSU03</td><td>3</td><td><code>psu/psu03/ch/3</code></td></tr><tr><td>S020</td><td>W01</td><td>B01</td><td>PSU03</td><td>4</td><td><code>psu/psu03/ch/4</code></td></tr><tr><td>S021</td><td>W02</td><td>B01</td><td>PSU03</td><td>5</td><td><code>psu/psu03/ch/5</code></td></tr><tr><td>S022</td><td>W02</td><td>B01</td><td>PSU03</td><td>6</td><td><code>psu/psu03/ch/6</code></td></tr><tr><td>S023</td><td>W02</td><td>B01</td><td>PSU03</td><td>7</td><td><code>psu/psu03/ch/7</code></td></tr><tr><td>S024</td><td>W02</td><td>B01</td><td>PSU03</td><td>8</td><td><code>psu/psu03/ch/8</code></td></tr><tr><td>S025</td><td>W02</td><td>B01</td><td>PSU04</td><td>1</td><td><code>psu/psu04/ch/1</code></td></tr><tr><td>S026</td><td>W02</td><td>B01</td><td>PSU04</td><td>2</td><td><code>psu/psu04/ch/2</code></td></tr><tr><td>S027</td><td>W02</td><td>B01</td><td>PSU04</td><td>3</td><td><code>psu/psu04/ch/3</code></td></tr><tr><td>S028</td><td>W02</td><td>B01</td><td>PSU04</td><td>4</td><td><code>psu/psu04/ch/4</code></td></tr><tr><td>S029</td><td>W02</td><td>B01</td><td>PSU04</td><td>5</td><td><code>psu/psu04/ch/5</code></td></tr><tr><td>S030</td><td>W02</td><td>B01</td><td>PSU04</td><td>6</td><td><code>psu/psu04/ch/6</code></td></tr><tr><td>S031</td><td>W02</td><td>B01</td><td>PSU04</td><td>7</td><td><code>psu/psu04/ch/7</code></td></tr><tr><td>S032</td><td>W02</td><td>B01</td><td>PSU04</td><td>8</td><td><code>psu/psu04/ch/8</code></td></tr><tr><td>S033</td><td>W02</td><td>B01</td><td>PSU05</td><td>1</td><td><code>psu/psu05/ch/1</code></td></tr><tr><td>S034</td><td>W02</td><td>B01</td><td>PSU05</td><td>2</td><td><code>psu/psu05/ch/2</code></td></tr><tr><td>S035</td><td>W02</td><td>B01</td><td>PSU05</td><td>3</td><td><code>psu/psu05/ch/3</code></td></tr><tr><td>S036</td><td>W02</td><td>B01</td><td>PSU05</td><td>4</td><td><code>psu/psu05/ch/4</code></td></tr><tr><td>S037</td><td>W02</td><td>B01</td><td>PSU05</td><td>5</td><td><code>psu/psu05/ch/5</code></td></tr><tr><td>S038</td><td>W02</td><td>B01</td><td>PSU05</td><td>6</td><td><code>psu/psu05/ch/6</code></td></tr><tr><td>S039</td><td>W02</td><td>B01</td><td>PSU05</td><td>7</td><td><code>psu/psu05/ch/7</code></td></tr><tr><td>S040</td><td>W02</td><td>B01</td><td>PSU05</td><td>8</td><td><code>psu/psu05/ch/8</code></td></tr><tr><td>S041</td><td>W03</td><td>B02</td><td>PSU06</td><td>1</td><td><code>psu/psu06/ch/1</code></td></tr><tr><td>S042</td><td>W03</td><td>B02</td><td>PSU06</td><td>2</td><td><code>psu/psu06/ch/2</code></td></tr><tr><td>S043</td><td>W03</td><td>B02</td><td>PSU06</td><td>3</td><td><code>psu/psu06/ch/3</code></td></tr><tr><td>S044</td><td>W03</td><td>B02</td><td>PSU06</td><td>4</td><td><code>psu/psu06/ch/4</code></td></tr><tr><td>S045</td><td>W03</td><td>B02</td><td>PSU06</td><td>5</td><td><code>psu/psu06/ch/5</code></td></tr><tr><td>S046</td><td>W03</td><td>B02</td><td>PSU06</td><td>6</td><td><code>psu/psu06/ch/6</code></td></tr><tr><td>S047</td><td>W03</td><td>B02</td><td>PSU06</td><td>7</td><td><code>psu/psu06/ch/7</code></td></tr><tr><td>S048</td><td>W03</td><td>B02</td><td>PSU06</td><td>8</td><td><code>psu/psu06/ch/8</code></td></tr><tr><td>S049</td><td>W03</td><td>B02</td><td>PSU07</td><td>1</td><td><code>psu/psu07/ch/1</code></td></tr><tr><td>S050</td><td>W03</td><td>B02</td><td>PSU07</td><td>2</td><td><code>psu/psu07/ch/2</code></td></tr><tr><td>S051</td><td>W03</td><td>B02</td><td>PSU07</td><td>3</td><td><code>psu/psu07/ch/3</code></td></tr><tr><td>S052</td><td>W03</td><td>B02</td><td>PSU07</td><td>4</td><td><code>psu/psu07/ch/4</code></td></tr><tr><td>S053</td><td>W03</td><td>B02</td><td>PSU07</td><td>5</td><td><code>psu/psu07/ch/5</code></td></tr><tr><td>S054</td><td>W03</td><td>B02</td><td>PSU07</td><td>6</td><td><code>psu/psu07/ch/6</code></td></tr><tr><td>S055</td><td>W03</td><td>B02</td><td>PSU07</td><td>7</td><td><code>psu/psu07/ch/7</code></td></tr><tr><td>S056</td><td>W03</td><td>B02</td><td>PSU07</td><td>8</td><td><code>psu/psu07/ch/8</code></td></tr><tr><td>S057</td><td>W03</td><td>B02</td><td>PSU08</td><td>1</td><td><code>psu/psu08/ch/1</code></td></tr><tr><td>S058</td><td>W03</td><td>B02</td><td>PSU08</td><td>2</td><td><code>psu/psu08/ch/2</code></td></tr><tr><td>S059</td><td>W03</td><td>B02</td><td>PSU08</td><td>3</td><td><code>psu/psu08/ch/3</code></td></tr><tr><td>S060</td><td>W03</td><td>B02</td><td>PSU08</td><td>4</td><td><code>psu/psu08/ch/4</code></td></tr><tr><td>S061</td><td>W04</td><td>B02</td><td>PSU08</td><td>5</td><td><code>psu/psu08/ch/5</code></td></tr><tr><td>S062</td><td>W04</td><td>B02</td><td>PSU08</td><td>6</td><td><code>psu/psu08/ch/6</code></td></tr><tr><td>S063</td><td>W04</td><td>B02</td><td>PSU08</td><td>7</td><td><code>psu/psu08/ch/7</code></td></tr><tr><td>S064</td><td>W04</td><td>B02</td><td>PSU08</td><td>8</td><td><code>psu/psu08/ch/8</code></td></tr><tr><td>S065</td><td>W04</td><td>B02</td><td>PSU09</td><td>1</td><td><code>psu/psu09/ch/1</code></td></tr><tr><td>S066</td><td>W04</td><td>B02</td><td>PSU09</td><td>2</td><td><code>psu/psu09/ch/2</code></td></tr><tr><td>S067</td><td>W04</td><td>B02</td><td>PSU09</td><td>3</td><td><code>psu/psu09/ch/3</code></td></tr><tr><td>S068</td><td>W04</td><td>B02</td><td>PSU09</td><td>4</td><td><code>psu/psu09/ch/4</code></td></tr><tr><td>S069</td><td>W04</td><td>B02</td><td>PSU09</td><td>5</td><td><code>psu/psu09/ch/5</code></td></tr><tr><td>S070</td><td>W04</td><td>B02</td><td>PSU09</td><td>6</td><td><code>psu/psu09/ch/6</code></td></tr><tr><td>S071</td><td>W04</td><td>B02</td><td>PSU09</td><td>7</td><td><code>psu/psu09/ch/7</code></td></tr><tr><td>S072</td><td>W04</td><td>B02</td><td>PSU09</td><td>8</td><td><code>psu/psu09/ch/8</code></td></tr><tr><td>S073</td><td>W04</td><td>B02</td><td>PSU10</td><td>1</td><td><code>psu/psu10/ch/1</code></td></tr><tr><td>S074</td><td>W04</td><td>B02</td><td>PSU10</td><td>2</td><td><code>psu/psu10/ch/2</code></td></tr><tr><td>S075</td><td>W04</td><td>B02</td><td>PSU10</td><td>3</td><td><code>psu/psu10/ch/3</code></td></tr><tr><td>S076</td><td>W04</td><td>B02</td><td>PSU10</td><td>4</td><td><code>psu/psu10/ch/4</code></td></tr><tr><td>S077</td><td>W04</td><td>B02</td><td>PSU10</td><td>5</td><td><code>psu/psu10/ch/5</code></td></tr><tr><td>S078</td><td>W04</td><td>B02</td><td>PSU10</td><td>6</td><td><code>psu/psu10/ch/6</code></td></tr><tr><td>S079</td><td>W04</td><td>B02</td><td>PSU10</td><td>7</td><td><code>psu/psu10/ch/7</code></td></tr><tr><td>S080</td><td>W04</td><td>B02</td><td>PSU10</td><td>8</td><td><code>psu/psu10/ch/8</code></td></tr><tr><td>S081</td><td>W05</td><td>B03</td><td>PSU11</td><td>1</td><td><code>psu/psu11/ch/1</code></td></tr><tr><td>S082</td><td>W05</td><td>B03</td><td>PSU11</td><td>2</td><td><code>psu/psu11/ch/2</code></td></tr><tr><td>S083</td><td>W05</td><td>B03</td><td>PSU11</td><td>3</td><td><code>psu/psu11/ch/3</code></td></tr><tr><td>S084</td><td>W05</td><td>B03</td><td>PSU11</td><td>4</td><td><code>psu/psu11/ch/4</code></td></tr><tr><td>S085</td><td>W05</td><td>B03</td><td>PSU11</td><td>5</td><td><code>psu/psu11/ch/5</code></td></tr><tr><td>S086</td><td>W05</td><td>B03</td><td>PSU11</td><td>6</td><td><code>psu/psu11/ch/6</code></td></tr><tr><td>S087</td><td>W05</td><td>B03</td><td>PSU11</td><td>7</td><td><code>psu/psu11/ch/7</code></td></tr><tr><td>S088</td><td>W05</td><td>B03</td><td>PSU11</td><td>8</td><td><code>psu/psu11/ch/8</code></td></tr><tr><td>S089</td><td>W05</td><td>B03</td><td>PSU12</td><td>1</td><td><code>psu/psu12/ch/1</code></td></tr><tr><td>S090</td><td>W05</td><td>B03</td><td>PSU12</td><td>2</td><td><code>psu/psu12/ch/2</code></td></tr><tr><td>S091</td><td>W05</td><td>B03</td><td>PSU12</td><td>3</td><td><code>psu/psu12/ch/3</code></td></tr><tr><td>S092</td><td>W05</td><td>B03</td><td>PSU12</td><td>4</td><td><code>psu/psu12/ch/4</code></td></tr><tr><td>S093</td><td>W05</td><td>B03</td><td>PSU12</td><td>5</td><td><code>psu/psu12/ch/5</code></td></tr><tr><td>S094</td><td>W05</td><td>B03</td><td>PSU12</td><td>6</td><td><code>psu/psu12/ch/6</code></td></tr><tr><td>S095</td><td>W05</td><td>B03</td><td>PSU12</td><td>7</td><td><code>psu/psu12/ch/7</code></td></tr><tr><td>S096</td><td>W05</td><td>B03</td><td>PSU12</td><td>8</td><td><code>psu/psu12/ch/8</code></td></tr><tr><td>S097</td><td>W05</td><td>B03</td><td>PSU13</td><td>1</td><td><code>psu/psu13/ch/1</code></td></tr><tr><td>S098</td><td>W05</td><td>B03</td><td>PSU13</td><td>2</td><td><code>psu/psu13/ch/2</code></td></tr><tr><td>S099</td><td>W05</td><td>B03</td><td>PSU13</td><td>3</td><td><code>psu/psu13/ch/3</code></td></tr><tr><td>S100</td><td>W05</td><td>B03</td><td>PSU13</td><td>4</td><td><code>psu/psu13/ch/4</code></td></tr><tr><td>S101</td><td>W06</td><td>B03</td><td>PSU13</td><td>5</td><td><code>psu/psu13/ch/5</code></td></tr><tr><td>S102</td><td>W06</td><td>B03</td><td>PSU13</td><td>6</td><td><code>psu/psu13/ch/6</code></td></tr><tr><td>S103</td><td>W06</td><td>B03</td><td>PSU13</td><td>7</td><td><code>psu/psu13/ch/7</code></td></tr><tr><td>S104</td><td>W06</td><td>B03</td><td>PSU13</td><td>8</td><td><code>psu/psu13/ch/8</code></td></tr><tr><td>S105</td><td>W06</td><td>B03</td><td>PSU14</td><td>1</td><td><code>psu/psu14/ch/1</code></td></tr><tr><td>S106</td><td>W06</td><td>B03</td><td>PSU14</td><td>2</td><td><code>psu/psu14/ch/2</code></td></tr><tr><td>S107</td><td>W06</td><td>B03</td><td>PSU14</td><td>3</td><td><code>psu/psu14/ch/3</code></td></tr><tr><td>S108</td><td>W06</td><td>B03</td><td>PSU14</td><td>4</td><td><code>psu/psu14/ch/4</code></td></tr><tr><td>S109</td><td>W06</td><td>B03</td><td>PSU14</td><td>5</td><td><code>psu/psu14/ch/5</code></td></tr><tr><td>S110</td><td>W06</td><td>B03</td><td>PSU14</td><td>6</td><td><code>psu/psu14/ch/6</code></td></tr><tr><td>S111</td><td>W06</td><td>B03</td><td>PSU14</td><td>7</td><td><code>psu/psu14/ch/7</code></td></tr><tr><td>S112</td><td>W06</td><td>B03</td><td>PSU14</td><td>8</td><td><code>psu/psu14/ch/8</code></td></tr><tr><td>S113</td><td>W06</td><td>B03</td><td>PSU15</td><td>1</td><td><code>psu/psu15/ch/1</code></td></tr><tr><td>S114</td><td>W06</td><td>B03</td><td>PSU15</td><td>2</td><td><code>psu/psu15/ch/2</code></td></tr><tr><td>S115</td><td>W06</td><td>B03</td><td>PSU15</td><td>3</td><td><code>psu/psu15/ch/3</code></td></tr><tr><td>S116</td><td>W06</td><td>B03</td><td>PSU15</td><td>4</td><td><code>psu/psu15/ch/4</code></td></tr><tr><td>S117</td><td>W06</td><td>B03</td><td>PSU15</td><td>5</td><td><code>psu/psu15/ch/5</code></td></tr><tr><td>S118</td><td>W06</td><td>B03</td><td>PSU15</td><td>6</td><td><code>psu/psu15/ch/6</code></td></tr><tr><td>S119</td><td>W06</td><td>B03</td><td>PSU15</td><td>7</td><td><code>psu/psu15/ch/7</code></td></tr><tr><td>S120</td><td>W06</td><td>B03</td><td>PSU15</td><td>8</td><td><code>psu/psu15/ch/8</code></td></tr></tbody></table></div></details> |
| | | <h3>17.2 120Ã1 Local æ¿ä»£æ¹æ¡</h3><p>è¥å®ç©ä¸º 120 å°ç¬ç« TCP PSUï¼æ 6 WorkerÃ20 ä¼è¯åºå®å½å±ï¼æ¯ Worker æ 20 个设å¤è¿æ¥ï¼ä½ä½¿ç¨å¼æ¥æ¶å䏿çå¹¶åï¼ä¸å»º 20 æ¡ä¸ç¨è½®è¯¢çº¿ç¨ãå
±äº« CAN/PLC/温箱ä»ç» Brokerï¼Local PSU ç»´æ¤ç»æå± Worker 代çæåæºäº¤æ¥ãè¥ä»ªå¨å
¨å±å½ä»¤è·¨ç©´ä½ãSDK ä¸å
许å¤å®ä¾æéèªå¨å®¿ä¸»åæ¢ï¼åºè½¬ Brokerãä¸¤ç§ææç± ConfigVersion æç¡®éæ©ï¼ä¸è½æ··ç¨æ å°å
¬å¼ã</p> |
| | | <h3>17.3 夿ºæ©å±</h3><p>å¯å°æ¯ 40 ç©´ä½åè¿ç§»å°ç¬ç« IPCï¼éè¿ TLS Broker API è¿æ¥ï¼æ°æ®åºä»ä¿åå¨åèªä¸»æºãå
±äº«æ¸©ç®±åªè®¾ä¸ä¸ªæ§å¶å®¿ä¸»ï¼æç½çç¥ç±ç¬ç«èéæ§è¡ãåè¿ç§»éåç¨ãé离æ§å®¿ä¸»ãæ´æ° Authority/epochãåºç¨æ°é
ç½®å¹¶æ ¸å¯¹è¾åºï¼ä¸åå¨çº¿å䏻忢ã</p></section><section id="capacity"><h2>18ã容éä¼°ç®ãæ°æ®ä¸æ§è½é¢ç®</h2><p>以䏿°åç¨äºå»ºç«åæµè´è½½ï¼åéç°æè½¯ä»¶æç¡¬ä»¶å®æµãç¬ç«çµå/çµæµæ ·æ¬ä¸ CAN ä¿¡å·æ°æ®éåå«é¢ç®ï¼ä¸è½æ UI å·æ°é¢çå½ä½éæ ·é¢çã</p> |
| | | <div class="table-wrap"><table><thead><tr><th>项ç®</th><th>计ç®/建议起ç¹</th><th>éªè¯æ¹å¼</th></tr></thead><tbody><tr><td>PSUéæ ·ï¼10 Hz/ç©´ä½</td><td>120Ã10=1200 æ¡ç»åV/Iè®°å½/sï¼æä¸¤æ¡å2400æ¡/s</td><td>驱卿¯æçæ¹é读ãåæº/æ´ææµéï¼åè®®è½åæªç¡®è®¤</td></tr><tr><td>10 Hzæç»168 h</td><td>1200Ã604800=725,760,000 æ¡è®°å½</td><td>å
确认æ¯å¦å¿
é¡»å
¨éé¿æåå¨ï¼æåå§ä¸æ±æ»åå±</td></tr><tr><td>å卿¨¡åï¼100 B/ç»åæ ·æ¬</td><td>约120,000 B/sã10.368 GB/天ã72.576 GB/168 hï¼åè¿å¶ï¼</td><td>æªè®¡ç´¢å¼/WAL/æä»¶ç³»ç»ï¼é¢çç³»æ°â¥2çèµ·ç¹ï¼å®æµåå®ç</td></tr><tr><td>åBrokerï¼40ç©´ä½</td><td>示ä¾400ç»åæ ·æ¬/sï¼å
±äº«åè®®ä¼è¯å¯è½ä½äºæ¤è½å</td><td>对æ¯å°8ééPSUæµå
¨éé读åèæ¶</td></tr><tr><td>åPSUå©ç¨ç</td><td>Ï=Σ(å½ä»¤å°è¾¾çÃæå¡æ¶é´)ï¼å»ºè®®æç»Ïâ¤0.6â0.7èµ·æµ</td><td>80次éé读/sÃ10 ms=0.8ï¼å·²è¶
建议ä½éï¼éæ¹éæééæ ·</td></tr><tr><td>Brokeræéé¢ç®</td><td>start deadline示ä¾5 sï¼AtomicSequence示ä¾3 s</td><td>åå«ç»è®¡Queue/Driver/DB/IPCå»¶è¿ï¼ä¸è½å°TTLä½ä¸ºæéé¢ç®</td></tr><tr><td>UIå·æ°</td><td>èå2â5 Hzï¼éæ ·ç¬ç«ï¼åªåç°ææ°å¼ä¸è´¨é</td><td>120ç©´ä½ãæ¥è¦é£æ´ãçªå£åæ¢ï¼è§å¯å¸§é»å¡åå
å</td></tr><tr><td>ç»æè´è½½</td><td>120个ééè¥æ¯8sç»ä¸æ¬¡â15è¡/sï¼åºæç»äºå¡èå</td><td>ä¸Task Journalåéæ ·åºé离ï¼ç¶Permitåäºä»¶å¦è®¡</td></tr><tr><td>CANé¢ç®</td><td>Σ帧çÃå®é
使°/æææ»çº¿éçï¼å«ä»²è£ãå¡«å
ãéååUDS</td><td>åå·ãä½éçãFDæ°æ®æ®µä¸æ»çº¿æ°TBDï¼ä¸è½å120ç©´ä½ç´æ¥æ¿è¯º</td></tr></tbody></table></div><p>建议æå°æ¶/æ¥åçææ¹éå弿件彿¡£ï¼ä¸è®©å个 7 äº¿è¡ SQLite 表æ éå¢é¿ï¼ä¿æ Run ç´¢å¼ä¸åç Hash å¯è¿½æº¯ãåå§ CAN 帧ä¸è§£ç ä¿¡å·æè¿½æº¯ççº§éæ©ä¿çï¼è´¨éäºä»¶ä¸æ
éååçªå£ä¼å
ãéæ ·åå
¥èåè¾¾å°ä¸éæ¶æ Recipe çç¥æå/æ¥è¦ï¼ä¸å¾éé»ä¸¢æ ·åä»å¤å®æ°æ®å®æ´ã</p> |
| | | <p>æ§è½é¨ç¦å»ºè®®ï¼æ§å¶å¿è·³å¤ç p99<1 sãæ®é IPC æ¬æºç©ºè½½å¾è¿ p95<20 msã120ç©´ä½ UI æ é¿æ¶é´å»ç»ï¼è¿äºåä¸ºç®æ èµ·ç¹ï¼å¿
é¡»ååº CPU/å
å/ç£ç/驱å¨/è´è½½æ¡ä»¶å®æµã卿叧å UDS æ¶åºç¨ç¡¬ä»¶æ¶é´æ³éªè¯ã</p></section><section id="ops"><h2>19ãå®è£
ãè§æµä¸è¿ç»´</h2><h3>19.1 æå
ä¸ç®å½</h3><div class="codebar"><span>é¨ç½²ç®å½ç¤ºä¾</span><button class="copy">å¤å¶</button></div><pre><code>C:\Program Files\AgingPlatform\ # åªè¯»åºç¨/ç¾å驱å¨å
|
| | | Hmi\ Worker\ Broker\ Supervisor\ |
| | | C:\ProgramData\AgingPlatform\Station01\ |
| | | config\{hash}\manifest.json # ä¸å¯ååå¸å¿«ç
§ |
| | | system\aging_system.db |
| | | local\arb.db |
| | | broker\B01\broker-b01.db |
| | | broker\B02\broker-b02.db |
| | | broker\B03\broker-b03.db |
| | | runs\{RunId}\... # æ°æ®åç/æ¥åç´¢å¼ |
| | | logs\ recovery\ backups\</code></pre><p>çäº§æ°æ®ä½¿ç¨æå¡è´¦æ·å¯åç ProgramData æç¬ç«æ°æ®çï¼ä¸æååç %LOCALAPPDATA%\PluginIntegrationTest ä½ä¸ºæ£å¼å¤è´¦æ·å
±äº«è·¯å¾ãæææä»¶ä»ç»ä¸é
ç½®æå¡åå¾è·¯å¾ï¼ç¦æ¢åæä»¶èªè¡æ¼æ¥ä¸å BaseFolderã</p> |
| | | <p>ä¸çº¿åå»ç» x86/x64ãSDKçæ¬ã.NETä¾èµåå
HashãBroker å¯éç¨ Windows Serviceï¼è¥ SDK éè¦äº¤äºæ¡é¢ï¼å使ç¨åæ§ç¨æ·è¿ç¨å¹¶éªè¯æå¡ä¼è¯å·®å¼ã驱å¨é离èå´ç± SDK å
¨å±ç¶æå³å®ï¼ä¸è½å°ä¸å¼ å¡çå
¨å±å¥æåå°å¤ä¸ª Brokerã</p> |
| | | <h3>19.2 è§æµä¸åè¦</h3><p>ç»ä¸ CorrelationId=Run/DUT/Step/Taskï¼æ¥å¿è®°å½ BrokerIdãepochãResourceKeyãSessionKeyãLeaseId æè¦ãgenerationãConfigHashãQueueWaitãIoLatencyãRetryCountãReadbackQualityãè¿è¡ææ å
æ¬æ´»è·/éç¦»èµæºæ°ãå¿è·³ä½éãéåæ·±åº¦ãUnknownä»»å¡ãOutbox积åãæ°æ®GapãDB busyæ¶é´ãç£çå©ä½ãé坿¬¡æ°ä¸CAN bus-offã</p> |
| | | <p>åè¦å¿
须带影åç©´ä½åå¤çå
¥å£ï¼åºå硬件èéãéä¿¡æ
éã仲è£å²çªåç»´æ¤ä¸ï¼ä¸è½å°ç»´æ¤å ç¨æç»å·æè®¾å¤æ
éãè¯æå¯¼åºå
å«çæ¬ãå¿å忥å¿ãä»»å¡ç¶æåæ¢å¤è¯æ®ï¼æé¤åæ®ãå¤ä»½ä½¿ç¨ SQLite ä¸è´æ§å¤ä»½æ¹å¼ï¼ä¸è½ä»
å¤å¶ä¸» .db èå¿½ç¥æ´»å¨ WALã</p> |
| | | <h3>19.3 å级ä¸åé</h3><p>忢æ°Run â æç©ºä»»å¡/æ¤éåæ â 确认å®å
¨æ â ä¸è´æ§å¤ä»½ â æ°æ®è¿ç§» â å级宿主å客æ·ç«¯ â åè®®æ¡æ/èªæ£ â é
ç½®Hashä¸è´ â æ¢å¤ç产ãè¥ schema ä¸ååå
¼å®¹ï¼ä¸è½ç´æ¥åéæ§äºè¿å¶ï¼ä½¿ç¨éªè¯è¿çå¤ä»½æ¢å¤å¹¶æå epochï¼ä¿çå级æé´æ¥å¿åç»æã</p></section><section id="verification"><h2>20ãå
¸åè¿è¡åºæ¯ä¸æ¹æ¡åç</h2><p>以ä¸ç¨å®é
è°ç¨è¿ç¨è¯´æåå±ä¸ºä»ä¹åå¨ãåºæ¯ä¸çç¼å·ãæ¶é´åçµåå为解é示ä¾ï¼ä¸æ¯è®¾å¤ç已确认工èºåæ°ã</p> |
| | | <h3>20.1 两个 Worker æä½åä¸å°å¤ééçµæº</h3><p>W01 ç S020 ä¸ W02 ç S021 å嫿 å°å° PSU03/CH4ãPSU03/CH5ã两è
åæææ¬ééçæä»ç§çº¦å PSU03 çç¶å
±äº« Permitï¼å æ¤å¯åæ¶å¤äºâææä½¿ç¨âç¶æãä¸¤æ¡æä½åäº¤ç» B01ï¼B01 ç PSU03 SessionGate å
宿´æ§è¡ CH4 çâéæ©ééâ设å®â读åâï¼åæ§è¡ CH5ãééææå¹¶è¡ãç©çä¼è¯ä¸²è¡ï¼å æ¤æ éå夿å¼è¿æ¥ï¼ä¹ä¸ä¼æ CH4 ç设å®åå° CH5ã</p> |
| | | <p>è¥æäººè¦æ§è¡ PSU03 æ´æº Resetï¼å®è¦æ±ç¶ç¬å ï¼CH4 æ CH5 ä»»ä¸ Permit ä»å¨ä½¿ç¨æ¶é½ä¸è½æ§è¡ãè¿æ ·æ¢ä¿çééç¬ç«æ§ï¼åè¦çæ´æºå½ä»¤çå½±åèå´ã</p> |
| | | <h3>20.2 ç¬ç« TCP çµæºèµ° Local</h3><p>PSU024 åºå®å½å±äº W02ãRecipe éè¿ S024/Power æ¾å° LocalExecutorï¼W02 ææè¿æ¥å®å«ãééç§çº¦åä¼è¯éåï¼ç´æ¥è°ç¨é©±å¨ãHMI çæ§åªè¯»å W02 åå¸çç¶æç¼åãç»´æ¤è¯·æ±ç» W02 çåæ§å
¥å£å®æï¼è¥è¦æ¢å®¿ä¸»ï¼å¿
é¡»å
忢 W02 çæ§è¿æ¥å¹¶éè¿æ¢å¤æ£æ¥ãLocal ç价弿¯åå°ä»£ç跳转åç¬ç«è¿ç¨æ°éï¼ä»£ä»·æ¯ä¸è½ä»
åç§çº¦è¿æè¿è¡è·¨è¿ç¨èªå¨æ¥ç®¡ã</p> |
| | | <h3>20.3 ç»´æ¤å·¥ç¨å¸è¦æä½æ£å¨ç产çéé</h3><p>HMI æ¾ç¤ºè¯¥ééç± Run-A/S024 使ç¨ãç³è¯·ç»´æ¤ä¸ä¼ç«å³å¾å°åæéï¼RunService å
让åå½±å DUT å°è¾¾å®å
¨è¾¹çï¼èµæºè½¬ä¸º Drainingï¼å®¿ä¸»åæ¢æ¥æ¶æ°æ®éåæä½ï¼æç©ºå½åçæ®µï¼æ§è¡éç¨å®å
¨å¨ä½å¹¶è¯»åã确认æ§è¿æ¥/ä»»å¡å·²é离åï¼æ§ç§çº¦éæ¾ï¼æ°çç»´æ¤ Grant æè½ç¾åã交æ¥è¶
æ¶ä¼åå¨ RecoveryRequiredï¼âçäº30ç§âæ¬èº«ä¸è½æä¸ºæ¥ç®¡ä¾æ®ã</p> |
| | | <h3>20.4 Broker å·²åå½ä»¤ï¼ä½å®¢æ·ç«¯æ²¡æ¶å°ç»æ</h3><p>客æ·ç«¯ä½¿ç¨åä¸ IdempotencyKey æ¥è¯¢æéæãè¥ Journal å·²æç»æï¼è¿ååç»æï¼è¥åªè®°å½ Runningï¼ä¸æ æ³å¤æç¡¬ä»¶æ¯å¦æ§è¡ï¼åè¿å Unknown å¹¶æ ¸å¯¹è¯»åï¼ä¸è½çææ°è¯·æ±å触å䏿¬¡ãè¿è¯´æ Task Journal è§£å³âè¯·æ±æ¯å¦è§è¿ãç»ææ¯å¦ä¿åâï¼è䏿¯æ¿ç¡¬ä»¶å®ç°æ°æ®åºäºå¡ã</p> |
| | | <h3>20.5 Broker éå¯åå¦ä½æ¢å¤</h3><p>B01 éå¯å
æå epochï¼æ§ Grant åæ§æéä»»å¡å¤±æï¼PSU01â05 ææ¶ä¸å¯åãå®¿ä¸»éæ°è¯å«è®¾å¤ã读åè¾åºååè®®ç¶æï¼æ£æ¥åæ ¼åèµæºåå° Free/ReadyãW01/W02 å¿
须鿰ç³è¯·ç§çº¦ï¼RunService æ ¹æ®ä¸æçªå£å³å®ç»§ç»è¿æ¯éæµãB02/B03 çç¬ç« PSU åå¯ç»§ç»è¿è¡ï¼è¥æ
éæ¶åå
±ç¨æ¸©ç®±/PLCï¼åæçå®å
±äº«å½±åèå´å¤çï¼ä¸è½åè®¾åªæ40ç©´ä½åå½±åã</p> |
| | | <h3>20.6 120 个 DUT çå¾
ä¸å次æ»çº¿éé</h3><p>120 个 DUTContext åèªä¿åæ¥éª¤ãSNã计æ¶åç»æï¼ä½çå¾
使ç¨å¼æ¥è®¡æ¶ï¼ä¸å¯¹åº120æ¡è½®è¯¢çº¿ç¨ãåä¸ CAN æ»çº¿åªç±ä¸ä¸ªæ¥æ¶å¨è¯»åï¼åè§£ç å¹¶åå¤ä¸ª DUT ååãBroker çç©çééè´è´£âæ°æ®ä»åªéæ¥ãæ¯å¦æ°é²âï¼Recipe 弿è´è´£âè¿ä¸ª DUT æ¯å¦è¾¾å°å·¥èºæ¡ä»¶âï¼ä»èé¿å
120次读åå䏿»çº¿ã</p> |
| | | </section><section id="tbd"><h2>21ãæ¹æ¡éç¨æ¡ä»¶ä¸éå¶</h2><p>æ¹æ¡æ¯å¦æç«åå³äºç©çææå设å¤åè®®ã以䏿¡ä»¶ç´æ¥å³å® Local/Broker è·¯ç±ãèµæºç²åº¦åæ¢å¤è¡ä¸ºï¼å®ä»¬æ¯æ¹æ¡è¾¹çï¼ä¸æ¯ç åææã</p><div class="table-wrap"><table><thead><tr><th>æ¡ä»¶</th><th>å¯¹æ¹æ¡çå½±å</th><th>æªæç¡®æ¶çå¤ç</th></tr></thead><tbody><tr><td>PSU 为120Ã1è¿æ¯15Ã8</td><td>åè
å¯åºå®Localå½å±ï¼åè
è·¨Workerå
±äº«ä¼è¯å®Broker</td><td>ä¿çä¸¤ç§ææï¼ç¦æ¢æ··ç¨æ å°å
¬å¼</td></tr><tr><td>è®¾å¤æ¯å¦å
许å¤ä¸ªä¼è¯ãå
¨å±å½ä»¤å½±ååªäºéé</td><td>å³å®PhysicalSessionKeyãç¶åèµæºåSessionGateèå´</td><td>ææ´å¤§çå²çªåä¿å®é离</td></tr><tr><td>CAN/SDKæ¯å¦åå®ä¾ã线ç¨å®å
¨åä¸UDSå°å</td><td>å³å®ä¸ä¸ªBrokerè½ææä»ä¹ãåªäºä»»å¡å¯å¹¶è¡</td><td>䏿ååä¸å
¨å±SDK奿ï¼å°åå²çªæç»åå¸</td></tr><tr><td>温箱/PLCå®å
¨æä¸äººåä½ä¸è®¸å¯</td><td>å³å®è°å¯æ§å¶è®¾å®ã交æ¥è¯»åä¸ç¬ç«æè½å¨ä½</td><td>ä¸ä»¥è½¯ä»¶TTLæä»¤ç代æ¿ç¡¬ä»¶å®å
¨æ¡ä»¶</td></tr><tr><td>å¨ä½è½å¦åæ¶ãæ¯å¦å¹çãè½å¦å¯é 读å</td><td>å³å®è¶
æ¶æ¯å¯éè¯è¿æ¯Unknown/æ¢å¤æ£æ¥</td><td>ä¸å¯éå¨ä½é»è®¤ä¸èªå¨éæ¾</td></tr><tr><td>éæ ·çãä¿çå¨æåæ»çº¿å®é
è½å</td><td>å³å®éåãæ¹éééãæ°æ®åçä¸ç£ç容é</td><td>å°å®¹éæ°åè§ä½è´è½½å设ï¼å®æµåé
ç½®</td></tr><tr><td>Recipeå
许çæåãæ¢å¤ä¸è®¡æ¶è§å</td><td>å³å®æçº¿åç»è·ãæ¥éª¤éå
¥è¿æ¯æ´ä»¶éæµ</td><td>ä¿æä¸æè¯æ®ï¼ä¸èªå¨å¤å®åæ ¼</td></tr><tr><td>夿ºå
±äº«ä¸ç¬¬ä¸æ¹ç´è¿</td><td>å³å®æ¯å¦å¿
é¡»BrokerãTLSåç½ç»è®¿é®æ§å¶</td><td>ç¦æ¢å
±äº«SMBä¸çarb.dbï¼ç¦æ¢ç»è¿å¯ä¸å®¿ä¸»</td></tr><tr><td>6Worker/3Brokeræ¯å¦ç¬¦åçå®SDKæ
éå</td><td>å³å®è¿ç¨åç»è½å¦è¾¾å°é¢æé离ææ</td><td>è¿ç¨æ°ä½ä¸ºå»ºè®®ï¼å
±äº«ç¡¬ä»¶æçå®å½±åèå´å¤ç</td></tr></tbody></table></div><p>æ¬æå¯ä»¥è¯´æä»²è£åæ¢å¤è§åï¼ä½ä¸è½åç¬è¯æè®¾å¤å·²è¾¾å°èæãç¡¬å®æ¶ãç©çå®å
¨æ168 hé¿ç¨³è¦æ±ãé»è®¤æ¶é´ãéå容éåéæ ·ç忝å¯é
ç½®çåå§å设ï¼å·¥ç¨å¸åå¸é
ç½®æ¶åºå¡«å
¥å®é
设å¤åæ°ã</p></section><section id="sources"><h2>22ãæ¥æºã交ä»èå´ä¸é
读说æ</h2><p>æ¬ HTML æææ ·å¼ãèæ¬ä¸æ¶æå¾åå
ç½®ï¼æå¼ä¸æå°ä¸ä¾èµç½ç»ãå
¨æå« 22 ç« ã3 å¼ å¯æ¾å¤§æ¶æ/ç¶æ/é¨ç½²å¾ã宿´ 120 ç©´ä½æ å°ãC# å约ãSQLite DDLãæ
鿢å¤ç©éµåå
¸åè¿è¡åºæ¯ãé带åç Draw.io æä»¶ä¾å·¥ç¨ç¼è¾ï¼HTML å
ä¹å¯ä¸è½½åä¸åçå¾å SQL / C# å约ã</p> |
| | | <p>ç»å¾è§åï¼<code>C:\Users\xcw11.HOMEAI\.codex\skills\drawio-default-style\SKILL.md</code>ï¼çæ¬ <b>1.0.0</b>ï¼åæ¶éµå¾ª Draw.io æä»¶åçæ ¼å¼/导åºè§åãå¾ç¤ºå
å®¹ä¸ºç®æ 设计ï¼éæå®ç°äºå®ä»¥ç¬¬ 2 ç« ä¸ºåãå¾ 2 çå®å
¨ç¡®è®¤å
æ¬å¨éå½ä»¤ç»æ¢ãè¿æ¥é离ã设å¤è¯»åä¸å¿
è¦ç硬件ä½ä¸è®¸å¯ã</p> |
| | | <p>åèææ¯èµæï¼2026-11-03æ ¸å¯¹ï¼ï¼[E1] <a href="https://www.sqlite.org/lang_transaction.html">SQLite Transaction</a>ï¼åäºå¡ä¸ BEGIN IMMEDIATEï¼[E2] <a href="https://www.sqlite.org/wal.html">SQLite WAL</a>ï¼åæºçº¦æä¸è¯»åå¹¶åè¾¹çï¼[E3] <a href="https://learn.microsoft.com/en-us/dotnet/standard/io/how-to-use-named-pipes-for-network-interprocess-communication">Microsoft Named Pipes</a>ï¼è¿ç¨é´ç®¡éä¸èº«ä»½è½åãæ¬æ IPC 帧ã仲è£ãéåãæ¢å¤æµç¨æ¯æ¬é¡¹ç®è®¾è®¡éæ©ï¼å¹¶éè¿äºææ¡£æä¾ç宿´æ¹æ¡ã</p> |
| | | <div class="table-wrap"><table><thead><tr><th>æ¥æº</th><th>è·¯å¾</th><th>ç¨é</th><th>SHA256ï¼æ¬æ¬¡è¯»åï¼</th></tr></thead><tbody><tr><td>S1</td><td><code>D:\TestPlatform\Aging_Software_Design_V2.1 (11).docx</code></td><td>V2.1设计åºçº¿ï¼Run/DUTã120ç©´ä½ã仪å¨ç®¡ç䏿°æ®åå±</td><td><code>36306c77933800fa0a9bd9719a77178021b44162d5034d244c8e3405d78238db</code></td></tr><tr><td>S2</td><td><code>D:\TestPlatform\TapProject\docs\MultiProcess_Instrument_Resource_Solution.html</code></td><td>æ§å¤è¿ç¨æ¹æ¡ï¼æ¬æ¬¡å¯¹å®å
¨/IPCç»è®ºä½ä¿®è®¢</td><td><code>b8e1ec02155baca47e61fcdeaf4e36c0086c73fa658a7954ee92801037bb12ac</code></td></tr><tr><td>S3</td><td><code>D:\TestPlatform\TapProject\docs\DeviceConfig_DeviceDebug_Architecture.html</code></td><td>é
ç½®ãç»´æ¤ä¼è¯ä¸è°è¯å®¡è®¡è®¾è®¡</td><td><code>c64f342e88828913b75c8813b69051028b5670e27e028ebb78e6bc732cdb80c4</code></td></tr><tr><td>S4</td><td><code>D:\TestPlatform\TapProject\Aging.Infrastructure\Core\ResourceManager.cs</code></td><td>å½åè¿ç¨å
é¢çº¦/代å·/æä½ç§çº¦å®ç°</td><td><code>61e75bb59c690e8bd5ff1d2b6672bdaa72693dbf27c324adad03d23ed03f8319</code></td></tr><tr><td>S5</td><td><code>D:\TestPlatform\TapProject\Aging.Infrastructure\Contracts\ResourceOwnerToken.cs</code></td><td>OwnerTokenå½ååæ®µåæé è¡ä¸º</td><td><code>c45b12b4843019b6ddca7c267d8fec962971fd9fdd35903ff5f1b8a08e6ad09d</code></td></tr><tr><td>S6</td><td><code>D:\TestPlatform\TapProject\Aging.Infrastructure\Services\DeviceService.cs</code></td><td>å½ä»¤æ ¡éªå驱å¨è°ç¨è·¯å¾</td><td><code>72a95fe5ddd07e5336b5a9b0e00c34d7ecf9abf104edd511956218bae69a1357</code></td></tr><tr><td>S7</td><td><code>D:\TestPlatform\TapProject\Aging.Infrastructure\Services\AutoDeviceFacade.cs</code></td><td>é¢çº¦ä½ç¨ååéæ¾é误å¤ç</td><td><code>67b7521a593b5961bf70bf998c72806e8e62d63afb41969d2058c7ec522e8e19</code></td></tr><tr><td>S8</td><td><code>D:\TestPlatform\TapProject\ConnectionUtil\PipeClient.cs</code></td><td>IPCååºä¸å¯è¾¾ãserverNameè¡ä¸º</td><td><code>b17451398fdffd7216c7b4c4db55f541cee76175b66ae93d822964bf59311870</code></td></tr><tr><td>S9</td><td><code>D:\TestPlatform\TapProject\ConnectionUtil\PipeServer.cs</code></td><td>ç°æå½å管éæå¡ç«¯åºç¡</td><td><code>58a3fc4f6f6ef8fe69a2781e429a557f0d529104717eb90ee10c7fdbb6d0b94e</code></td></tr><tr><td>S10</td><td><code>D:\TestPlatform\TapProject\Plugin.DeviceConfig\Model\DeviceConfigModel.cs</code></td><td>ç°æè¡¨ä¸æ å°ãçæ¬æ¨¡å</td><td><code>4b0022da848a9c0033ae20595e7c93123b952b15096035151f2d3b824f20d980</code></td></tr><tr><td>S11</td><td><code>D:\TestPlatform\TapProject\Aging.Infrastructure\Aging.Infrastructure.csproj</code></td><td>net472ä¸ä¾èµé
ç½®</td><td><code>f39ad8e25368431e2d2d77c2488c03c027dae5b0812e9dd50ec75de36269cace</code></td></tr><tr><td>S12</td><td><code>D:\06-产åå¼å\18-è±é©¾æ§å¶å¨èå设å¤\èå软件详ç»å¼å说æä¹¦_V1.0.docx</code></td><td>æ¬å·¥ä½åºæ¢æè¯¦ç»å¼å说æåè</td><td><code>9c0053ef959a55a15adcf06a7e27ba7cde46ae6f78ecb24291157c49b2d9cef7</code></td></tr></tbody></table></div> |
| | | <div class="downloads"><button data-download="drawio">ä¸è½½åçæ¶æå¾ .drawio</button><button data-download="configsql">ä¸è½½é
ç½®åº DDL</button><button data-download="runtimesql">ä¸è½½è¿è¡åº DDL</button><button data-download="contracts">ä¸è½½ C# å约</button></div> |
| | | <p class="muted">æ¬æä¸å
å«å·²å®æçç产代ç ãçå®è®¾å¤é
ç½®æç°åºéªæ¶ç»è®ºãæ¹æ¡éç¨æ¡ä»¶åæªç¡®è®¤ç设å¤åæ°å¨ç¬¬ 21 ç« ååºã</p></section><footer>Local + DeviceBroker V3.0 · 设计é»è®¤å¼ä¸å®é
å®ç°è¯æ®å嫿 注 · æ¬å°åæä»¶äº¤ä»</footer></main><dialog id="diagram-dialog"><button id="close-dialog">å
³éæ¾å¤§å¾</button><div class="dialog-body"></div></dialog><script>const assets={"drawio": {"name": "local-devicebroker-v3.drawio", "type": "application/xml", "content": "<?xml version='1.0' encoding='utf-8'?>\n<mxfile host=\"app.diagrams.net\" version=\"V3.0\"><diagram name=\"architecture\" id=\"architecture\"><mxGraphModel dx=\"1600\" dy=\"900\" grid=\"1\" gridSize=\"10\" page=\"1\" pageScale=\"1\" pageWidth=\"1600\" pageHeight=\"900\" background=\"#ffffff\"><root><mxCell id=\"0\" /><mxCell id=\"1\" parent=\"0\" /><mxCell id=\"title\" value=\"Local + DeviceBrokerï¼ç»ä¸ä¸å¡å
¥å£ä¸åå I/Oï¼ç®æ 设计ï¼\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=28;spacing=14;fillColor=#ffffff;strokeColor=#33556f;strokeWidth=2;fontStyle=1;strokeColor=none;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"60\" y=\"24\" width=\"1480\" height=\"60\" /><\/mxCell><mxCell id=\"config\" value=\"é
ç½® / å叿å¡<br>ä¸å¯åå¿«ç
§ · Hash · è·¯ç±\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#eaf2f8;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"60\" y=\"125\" width=\"400\" height=\"95\" /><\/mxCell><mxCell id=\"hmi\" value=\"HMI / ç»´æ¤ä¼è¯<br>æé · å ç¨ç¶æ · 审计\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#eaf2f8;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"600\" y=\"125\" width=\"400\" height=\"95\" /><\/mxCell><mxCell id=\"run\" value=\"Run / Recipe / OpenTAP<br>120 DUTContext · é»è¾è½å\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#eaf2f8;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"1140\" y=\"125\" width=\"400\" height=\"95\" /><\/mxCell><mxCell id=\"facade\" value=\"DeviceService + ResourceRouter<br>æå¿«ç
§å®ä½èµæº / 宿主\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#eaf2f8;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"600\" y=\"290\" width=\"400\" height=\"100\" /><\/mxCell><mxCell id=\"e1\" source=\"config\" target=\"facade\" edge=\"1\" parent=\"1\" style=\"edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;endArrow=block;strokeWidth=2;strokeColor=#8796a5;dashed=1;exitX=0.5;exitY=1;entryX=0.2;entryY=0;\"><mxGeometry as=\"geometry\" relative=\"1\"><Array as=\"points\"><mxPoint x=\"260\" y=\"255\" /><mxPoint x=\"680\" y=\"255\" /><\/Array><\/mxGeometry><\/mxCell><mxCell id=\"e2\" source=\"hmi\" target=\"facade\" edge=\"1\" parent=\"1\" style=\"edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;endArrow=block;strokeWidth=2;strokeColor=#286494;exitX=0.5;exitY=1;entryX=0.5;entryY=0;\"><mxGeometry as=\"geometry\" relative=\"1\"><Array as=\"points\" /><\/mxGeometry><\/mxCell><mxCell id=\"e3\" source=\"run\" target=\"facade\" edge=\"1\" parent=\"1\" style=\"edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;endArrow=block;strokeWidth=2;strokeColor=#286494;exitX=0.5;exitY=1;entryX=0.8;entryY=0;\"><mxGeometry as=\"geometry\" relative=\"1\"><Array as=\"points\"><mxPoint x=\"1340\" y=\"255\" /><mxPoint x=\"920\" y=\"255\" /><\/Array><\/mxGeometry><\/mxCell><mxCell id=\"local\" value=\"LocalExecutor / LeaseStore<br>æ¬æº arb.db · è¿æ¥å®å« · SessionGate\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#eaf2f8;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"150\" y=\"470\" width=\"540\" height=\"110\" /><\/mxCell><mxCell id=\"broker\" value=\"BrokerClient â DeviceBroker<br>æ¬å Lease / Task / Queue / Outbox\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#e8f4ef;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"910\" y=\"470\" width=\"540\" height=\"110\" /><\/mxCell><mxCell id=\"e4\" source=\"facade\" target=\"local\" edge=\"1\" parent=\"1\" style=\"edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;endArrow=block;strokeWidth=2;strokeColor=#286494;\"><mxGeometry as=\"geometry\" relative=\"1\" /><\/mxCell><mxCell id=\"e5\" source=\"facade\" target=\"broker\" edge=\"1\" parent=\"1\" style=\"edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;endArrow=block;strokeWidth=2;strokeColor=#286494;\"><mxGeometry as=\"geometry\" relative=\"1\" /><\/mxCell><mxCell id=\"localio\" value=\"å¯ä¸ Worker å
ç DeviceManager / Driver<br>åºå®å½å±çç¬ç« TCP ä¼è¯\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#eaf2f8;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"150\" y=\"670\" width=\"540\" height=\"110\" /><\/mxCell><mxCell id=\"brokerio\" value=\"Broker å
ç DeviceManager / Driver<br>å
±äº« PSU / CAN / RS485 / PLC\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#e8f4ef;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"910\" y=\"670\" width=\"540\" height=\"110\" /><\/mxCell><mxCell id=\"e6\" source=\"local\" target=\"localio\" edge=\"1\" parent=\"1\" style=\"edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;endArrow=block;strokeWidth=2;strokeColor=#286494;\"><mxGeometry as=\"geometry\" relative=\"1\" /><\/mxCell><mxCell id=\"e7\" source=\"broker\" target=\"brokerio\" edge=\"1\" parent=\"1\" style=\"edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;endArrow=block;strokeWidth=2;strokeColor=#286494;\"><mxGeometry as=\"geometry\" relative=\"1\" /><\/mxCell><mxCell id=\"legend\" value=\"å®çº¿ï¼è°ç¨ / I/O è·¯å¾ããç°è²è线ï¼é
ç½®ä¾èµããTTL å°æ â éç¦»æ ¸æ¥ï¼è¿æ¥ç¡®è®¤éåºåæäº¤æ¥\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=18;spacing=14;fillColor=#ffffff;strokeColor=#33556f;strokeWidth=2;strokeColor=none;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"60\" y=\"815\" width=\"1480\" height=\"55\" /><\/mxCell><\/root><\/mxGraphModel><\/diagram><diagram name=\"handover\" id=\"handover\"><mxGraphModel dx=\"1600\" dy=\"900\" grid=\"1\" gridSize=\"10\" page=\"1\" pageScale=\"1\" pageWidth=\"1600\" pageHeight=\"900\" background=\"#ffffff\"><root><mxCell id=\"0\" /><mxCell id=\"1\" parent=\"0\" /><mxCell id=\"title\" value=\"èµæºäº¤æ¥ï¼å
æç©ºãéç¦»ä¸æ ¸æ¥ï¼åå
è®¸æ° ownerï¼ç®æ 设计ï¼\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=28;spacing=14;fillColor=#ffffff;strokeColor=#33556f;strokeWidth=2;fontStyle=1;strokeColor=none;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"60\" y=\"24\" width=\"1480\" height=\"60\" /><\/mxCell><mxCell id=\"free\" value=\"Free / Ready<br>å
许ç³è¯·\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#eaf2f8;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"80\" y=\"160\" width=\"330\" height=\"105\" /><\/mxCell><mxCell id=\"active\" value=\"Active<br>Grant + 卿ç»ç§\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#eaf2f8;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"635\" y=\"160\" width=\"330\" height=\"105\" /><\/mxCell><mxCell id=\"drain\" value=\"Draining<br>忢æ°å / æç©ºç段\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#fff2d9;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"1190\" y=\"160\" width=\"330\" height=\"105\" /><\/mxCell><mxCell id=\"e1\" source=\"free\" target=\"active\" edge=\"1\" parent=\"1\" style=\"edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;endArrow=block;strokeWidth=2;strokeColor=#286494;\"><mxGeometry as=\"geometry\" relative=\"1\" /><\/mxCell><mxCell id=\"e2\" source=\"active\" target=\"drain\" edge=\"1\" parent=\"1\" style=\"edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;endArrow=block;strokeWidth=2;strokeColor=#286494;\"><mxGeometry as=\"geometry\" relative=\"1\" /><\/mxCell><mxCell id=\"expire\" value=\"ç§çº¦ / å¿è·³å¼å¸¸<br>黿åç»åå
¥\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#fff2d9;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"635\" y=\"385\" width=\"330\" height=\"105\" /><\/mxCell><mxCell id=\"verify\" value=\"å®å
¨äº¤æ¥æ£æ¥<br>读å · è¿æ¥é离 · èé\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#e8f4ef;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"1190\" y=\"385\" width=\"330\" height=\"105\" /><\/mxCell><mxCell id=\"e3\" source=\"active\" target=\"expire\" edge=\"1\" parent=\"1\" style=\"edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;endArrow=block;strokeWidth=2;strokeColor=#286494;\"><mxGeometry as=\"geometry\" relative=\"1\" /><\/mxCell><mxCell id=\"e4\" source=\"drain\" target=\"verify\" edge=\"1\" parent=\"1\" style=\"edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;endArrow=block;strokeWidth=2;strokeColor=#286494;\"><mxGeometry as=\"geometry\" relative=\"1\" /><\/mxCell><mxCell id=\"recovery\" value=\"RecoveryRequired<br>设å¤ç¶ææªç¥ / ç¦æ¢éæ\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#fdeced;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"635\" y=\"610\" width=\"330\" height=\"105\" /><\/mxCell><mxCell id=\"new\" value=\"æ£æ¥åæ ¼ â Free<br>éæ°ç³è¯·æ° Grant\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#e8f4ef;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"1190\" y=\"610\" width=\"330\" height=\"105\" /><\/mxCell><mxCell id=\"e5\" source=\"expire\" target=\"recovery\" edge=\"1\" parent=\"1\" style=\"edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;endArrow=block;strokeWidth=2;strokeColor=#286494;\"><mxGeometry as=\"geometry\" relative=\"1\" /><\/mxCell><mxCell id=\"e6\" source=\"verify\" target=\"new\" edge=\"1\" parent=\"1\" style=\"edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;endArrow=block;strokeWidth=2;strokeColor=#286494;\"><mxGeometry as=\"geometry\" relative=\"1\" /><\/mxCell><mxCell id=\"e7\" source=\"recovery\" target=\"verify\" edge=\"1\" parent=\"1\" style=\"edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;endArrow=block;strokeWidth=2;strokeColor=#286494;exitX=1;exitY=0.5;entryX=0;entryY=0.5;\"><mxGeometry as=\"geometry\" relative=\"1\"><Array as=\"points\"><mxPoint x=\"1080\" y=\"662.5\" /><mxPoint x=\"1080\" y=\"437.5\" /><\/Array><\/mxGeometry><\/mxCell><mxCell id=\"limits\" value=\"å¼å¸¸è·¯å¾è¯´æ<br><br>Draining è¶
æ¶ / æ£æ¥å¤±è´¥<br>â RecoveryRequired<br><br>Broker éå¯ï¼epoch + 1<br>æ§ Grant å
¨é¨å¤±æ<br><br>Local æ§å®å«æªéåº<br>â ä¿æé离ï¼ä¸æ TTL æ¢å \" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#ffffff;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"80\" y=\"385\" width=\"330\" height=\"330\" /><\/mxCell><mxCell id=\"legend\" value=\"å®çº¿ï¼æ£å¸¸ç³è¯·ææ¢å¤æ¨è¿ããå¼å¸¸å°æä¸ç´æ¥è½¬ Freeããæªç¡®è®¤çå·²åå½ä»¤ â Unknown / æ¢å¤æ£æ¥\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=18;spacing=14;fillColor=#ffffff;strokeColor=#33556f;strokeWidth=2;strokeColor=none;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"60\" y=\"810\" width=\"1480\" height=\"55\" /><\/mxCell><\/root><\/mxGraphModel><\/diagram><diagram name=\"deployment120\" id=\"deployment120\"><mxGraphModel dx=\"1600\" dy=\"900\" grid=\"1\" gridSize=\"10\" page=\"1\" pageScale=\"1\" pageWidth=\"1600\" pageHeight=\"900\" background=\"#ffffff\"><root><mxCell id=\"0\" /><mxCell id=\"1\" parent=\"0\" /><mxCell id=\"title\" value=\"120 ç©´ä½ï¼6 Worker + 3 Broker åï¼15Ã8 PSU åºçº¿ / 建议ï¼\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=28;spacing=14;fillColor=#ffffff;strokeColor=#33556f;strokeWidth=2;fontStyle=1;strokeColor=none;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"60\" y=\"24\" width=\"1480\" height=\"60\" /><\/mxCell><mxCell id=\"hmi\" value=\"IPC-01ï¼HMI / RunService / Supervisor<br>é
置快ç
§ä¸ç»æç´¢å¼ï¼ResultWriter ç¬ç«è½ç\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#eaf2f8;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"500\" y=\"110\" width=\"600\" height=\"95\" /><\/mxCell><mxCell id=\"w1\" value=\"W01 + W02<br>S001âS040 · 2Ã20 DUTContext\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#eaf2f8;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"60\" y=\"315\" width=\"400\" height=\"100\" /><\/mxCell><mxCell id=\"b1\" value=\"Broker B01<br>å¯ä¸å®¿ä¸» · æ¬å DB / éå\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#e8f4ef;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"60\" y=\"520\" width=\"400\" height=\"100\" /><\/mxCell><mxCell id=\"p1\" value=\"PSU01âPSU05<br>5 å° Ã 8 éé = 40 ç©´ä½\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#eaf2f8;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"60\" y=\"725\" width=\"400\" height=\"100\" /><\/mxCell><mxCell id=\"e1a\" source=\"hmi\" target=\"w1\" edge=\"1\" parent=\"1\" style=\"edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;endArrow=block;strokeWidth=2;strokeColor=#286494;\"><mxGeometry as=\"geometry\" relative=\"1\" /><\/mxCell><mxCell id=\"e1b\" source=\"w1\" target=\"b1\" edge=\"1\" parent=\"1\" style=\"edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;endArrow=block;strokeWidth=2;strokeColor=#286494;\"><mxGeometry as=\"geometry\" relative=\"1\" /><\/mxCell><mxCell id=\"e1c\" source=\"b1\" target=\"p1\" edge=\"1\" parent=\"1\" style=\"edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;endArrow=block;strokeWidth=2;strokeColor=#286494;\"><mxGeometry as=\"geometry\" relative=\"1\" /><\/mxCell><mxCell id=\"w2\" value=\"W03 + W04<br>S041âS080 · 2Ã20 DUTContext\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#eaf2f8;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"600\" y=\"315\" width=\"400\" height=\"100\" /><\/mxCell><mxCell id=\"b2\" value=\"Broker B02<br>å¯ä¸å®¿ä¸» · æ¬å DB / éå\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#e8f4ef;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"600\" y=\"520\" width=\"400\" height=\"100\" /><\/mxCell><mxCell id=\"p2\" value=\"PSU06âPSU10<br>5 å° Ã 8 éé = 40 ç©´ä½\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#eaf2f8;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"600\" y=\"725\" width=\"400\" height=\"100\" /><\/mxCell><mxCell id=\"e2a\" source=\"hmi\" target=\"w2\" edge=\"1\" parent=\"1\" style=\"edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;endArrow=block;strokeWidth=2;strokeColor=#286494;\"><mxGeometry as=\"geometry\" relative=\"1\" /><\/mxCell><mxCell id=\"e2b\" source=\"w2\" target=\"b2\" edge=\"1\" parent=\"1\" style=\"edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;endArrow=block;strokeWidth=2;strokeColor=#286494;\"><mxGeometry as=\"geometry\" relative=\"1\" /><\/mxCell><mxCell id=\"e2c\" source=\"b2\" target=\"p2\" edge=\"1\" parent=\"1\" style=\"edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;endArrow=block;strokeWidth=2;strokeColor=#286494;\"><mxGeometry as=\"geometry\" relative=\"1\" /><\/mxCell><mxCell id=\"w3\" value=\"W05 + W06<br>S081âS120 · 2Ã20 DUTContext\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#eaf2f8;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"1140\" y=\"315\" width=\"400\" height=\"100\" /><\/mxCell><mxCell id=\"b3\" value=\"Broker B03<br>å¯ä¸å®¿ä¸» · æ¬å DB / éå\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#e8f4ef;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"1140\" y=\"520\" width=\"400\" height=\"100\" /><\/mxCell><mxCell id=\"p3\" value=\"PSU11âPSU15<br>5 å° Ã 8 éé = 40 ç©´ä½\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=20;spacing=14;fillColor=#eaf2f8;strokeColor=#33556f;strokeWidth=2;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"1140\" y=\"725\" width=\"400\" height=\"100\" /><\/mxCell><mxCell id=\"e3a\" source=\"hmi\" target=\"w3\" edge=\"1\" parent=\"1\" style=\"edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;endArrow=block;strokeWidth=2;strokeColor=#286494;\"><mxGeometry as=\"geometry\" relative=\"1\" /><\/mxCell><mxCell id=\"e3b\" source=\"w3\" target=\"b3\" edge=\"1\" parent=\"1\" style=\"edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;endArrow=block;strokeWidth=2;strokeColor=#286494;\"><mxGeometry as=\"geometry\" relative=\"1\" /><\/mxCell><mxCell id=\"e3c\" source=\"b3\" target=\"p3\" edge=\"1\" parent=\"1\" style=\"edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;endArrow=block;strokeWidth=2;strokeColor=#286494;\"><mxGeometry as=\"geometry\" relative=\"1\" /><\/mxCell><mxCell id=\"legend\" value=\"CAN / PLC / 温箱æçå®ç©çä¸ SDK ååºå®å¯ä¸å®¿ä¸»ï¼TBDï¼ï¼å
±äº«è®¾å¤ä¸å å 3 åèå¤å¶è¿æ¥ã\" style=\"rounded=0;whiteSpace=wrap;html=1;align=center;verticalAlign=middle;fontFamily=Microsoft YaHei;fontSize=18;spacing=14;fillColor=#ffffff;strokeColor=#33556f;strokeWidth=2;strokeColor=none;\" vertex=\"1\" parent=\"1\"><mxGeometry as=\"geometry\" x=\"60\" y=\"845\" width=\"1480\" height=\"45\" /><\/mxCell><\/root><\/mxGraphModel><\/diagram><\/mxfile>"}, "configsql": {"name": "v3-config-schema.sql", "type": "text/plain", "content": "PRAGMA foreign_keys=ON;\nPRAGMA journal_mode=WAL;\nPRAGMA synchronous=FULL;\nPRAGMA busy_timeout=3000;\nCREATE TABLE config_snapshot (\n config_hash TEXT PRIMARY KEY, version_id TEXT NOT NULL UNIQUE,\n schema_version INTEGER NOT NULL CHECK(schema_version=3),\n content_json TEXT NOT NULL, author TEXT NOT NULL,\n published_utc_ms INTEGER NOT NULL\n);\nCREATE TABLE effective_config (\n scope_id TEXT PRIMARY KEY, config_hash TEXT NOT NULL\n REFERENCES config_snapshot(config_hash), revision INTEGER NOT NULL\n);\nCREATE TABLE resource_definition (\n config_hash TEXT NOT NULL REFERENCES config_snapshot(config_hash),\n resource_key TEXT NOT NULL, device_id TEXT NOT NULL, channel_id INTEGER NOT NULL,\n parent_key TEXT, session_key TEXT NOT NULL, physical_identity TEXT NOT NULL,\n execution_mode TEXT NOT NULL CHECK(execution_mode IN ('Local','Broker')),\n authority_id TEXT NOT NULL, owner_process_id TEXT,\n access_policy TEXT NOT NULL, safe_profile TEXT NOT NULL,\n PRIMARY KEY(config_hash, resource_key)\n);\nCREATE TABLE slot_binding (\n config_hash TEXT NOT NULL, slot_id TEXT NOT NULL, capability TEXT NOT NULL,\n resource_key TEXT NOT NULL, group_id TEXT NOT NULL,\n PRIMARY KEY(config_hash, slot_id, capability),\n FOREIGN KEY(config_hash, resource_key)\n REFERENCES resource_definition(config_hash, resource_key)\n);\nCREATE INDEX ix_binding_resource ON slot_binding(config_hash, resource_key);\nCREATE TABLE broker_task_template (\n config_hash TEXT NOT NULL REFERENCES config_snapshot(config_hash),\n template_id TEXT NOT NULL, template_version TEXT NOT NULL,\n operation_code TEXT NOT NULL, parameters_schema TEXT NOT NULL,\n required_resources_json TEXT NOT NULL, max_duration_ms INTEGER NOT NULL,\n safe_profile TEXT NOT NULL,\n PRIMARY KEY(config_hash,template_id,template_version)\n);\nCREATE TABLE run_snapshot (\n run_id TEXT PRIMARY KEY, config_hash TEXT NOT NULL\n REFERENCES config_snapshot(config_hash), recipe_hash TEXT NOT NULL,\n driver_manifest_hash TEXT NOT NULL, dbc_hash TEXT NOT NULL,\n uds_hash TEXT NOT NULL, slot_set_json TEXT NOT NULL, started_utc_ms INTEGER NOT NULL\n);\nCREATE TABLE config_apply_ack (\n apply_id TEXT NOT NULL, authority_id TEXT NOT NULL,\n config_hash TEXT NOT NULL REFERENCES config_snapshot(config_hash),\n phase TEXT NOT NULL, readback_json TEXT NOT NULL, utc_ms INTEGER NOT NULL,\n PRIMARY KEY(apply_id,authority_id)\n);"}, "runtimesql": {"name": "v3-runtime-schema.sql", "type": "text/plain", "content": "PRAGMA foreign_keys=ON;\nPRAGMA journal_mode=WAL;\nPRAGMA synchronous=FULL;\nPRAGMA busy_timeout=3000;\nCREATE TABLE authority_meta (\n authority_id TEXT PRIMARY KEY, epoch INTEGER NOT NULL,\n boot_id TEXT NOT NULL, schema_version INTEGER NOT NULL\n);\nCREATE TABLE resource_state (\n resource_key TEXT PRIMARY KEY, generation INTEGER NOT NULL DEFAULT 0,\n phase TEXT NOT NULL CHECK(phase IN ('Free','Active','Draining','RecoveryRequired','Disabled')),\n lease_id TEXT UNIQUE, owner_id TEXT, owner_type TEXT, group_id TEXT,\n process_instance_id TEXT, epoch INTEGER NOT NULL,\n expires_utc_ms INTEGER, handover_utc_ms INTEGER, updated_utc_ms INTEGER NOT NULL,\n CHECK(phase <> 'Free' OR lease_id IS NULL)\n);\nCREATE INDEX ix_resource_expiry ON resource_state(phase,expires_utc_ms);\nCREATE TABLE parent_permit (\n parent_key TEXT NOT NULL, lease_id TEXT NOT NULL,\n mode TEXT NOT NULL CHECK(mode IN ('Shared','Exclusive')),\n owner_id TEXT NOT NULL, epoch INTEGER NOT NULL,\n expires_utc_ms INTEGER NOT NULL,\n PRIMARY KEY(parent_key,lease_id)\n);\nCREATE TABLE lease_history (\n event_id INTEGER PRIMARY KEY AUTOINCREMENT, resource_key TEXT NOT NULL,\n generation INTEGER NOT NULL, epoch INTEGER NOT NULL, lease_id TEXT,\n owner_id TEXT, event_type TEXT NOT NULL, reason TEXT NOT NULL, utc_ms INTEGER NOT NULL\n);\nCREATE TABLE broker_task (\n task_id TEXT PRIMARY KEY, client_instance_id TEXT NOT NULL,\n idempotency_key TEXT NOT NULL, payload_sha256 TEXT NOT NULL,\n config_hash TEXT NOT NULL, epoch INTEGER NOT NULL,\n template_id TEXT NOT NULL, request_json TEXT NOT NULL,\n state TEXT NOT NULL CHECK(state IN ('Accepted','Queued','Running','Succeeded',\n 'Failed','Cancelled','Expired','Unknown','RecoveryRequired')),\n priority INTEGER NOT NULL, submitted_utc_ms INTEGER NOT NULL,\n deadline_utc_ms INTEGER NOT NULL, started_utc_ms INTEGER, finished_utc_ms INTEGER,\n result_json TEXT, error_code TEXT,\n UNIQUE(client_instance_id,idempotency_key)\n);\nCREATE INDEX ix_task_queue ON broker_task(state,priority,submitted_utc_ms);\nCREATE TABLE broker_event (\n cursor INTEGER PRIMARY KEY AUTOINCREMENT, task_id TEXT,\n event_type TEXT NOT NULL, payload_json TEXT NOT NULL, utc_ms INTEGER NOT NULL\n);\nCREATE TABLE result_outbox (\n result_id TEXT PRIMARY KEY, task_id TEXT NOT NULL UNIQUE REFERENCES broker_task(task_id),\n payload_json TEXT NOT NULL, state TEXT NOT NULL CHECK(state IN ('Pending','Acked')),\n attempt INTEGER NOT NULL DEFAULT 0, created_utc_ms INTEGER NOT NULL\n);\nCREATE TABLE recovery_checkpoint (\n resource_key TEXT PRIMARY KEY, epoch INTEGER NOT NULL, status TEXT NOT NULL,\n physical_readback_json TEXT NOT NULL, approved_by TEXT,\n evidence_json TEXT NOT NULL, updated_utc_ms INTEGER NOT NULL\n);\nCREATE TABLE operation_audit (\n audit_id INTEGER PRIMARY KEY AUTOINCREMENT, correlation_id TEXT NOT NULL,\n principal_id TEXT NOT NULL, owner_id TEXT NOT NULL, task_id TEXT,\n resource_key TEXT NOT NULL, action TEXT NOT NULL, outcome TEXT NOT NULL,\n detail_json TEXT NOT NULL, utc_ms INTEGER NOT NULL\n);"}, "contracts": {"name": "ResourceContracts.V3.cs", "type": "text/plain", "content": "using System;\nusing System.Collections.Generic;\nusing System.Threading;\nusing System.Threading.Tasks;\n\nnamespace Aging.ResourceContracts.V3\n{\n public enum ExecutionMode { Local, Broker }\n public enum OwnerKind { Production, Maintenance, SystemSafety }\n public enum TaskState { Accepted, Queued, Running, Succeeded, Failed,\n Cancelled, Expired, Unknown, RecoveryRequired }\n\n // Broker/Storeç¾åï¼å¿
é¡»ææä¹
ååæ®µè¿åï¼ä¸è½å¨ååºååæ¶çææ°LeaseIdã\n public sealed class LeaseGrant\n {\n public string AuthorityId { get; }\n public string ResourceKey { get; }\n public string LeaseId { get; }\n public string OwnerId { get; }\n public long Epoch { get; }\n public long Generation { get; }\n public long ExpiresUtcMs { get; }\n public LeaseGrant(string authorityId, string resourceKey, string leaseId,\n string ownerId, long epoch, long generation, long expiresUtcMs)\n {\n AuthorityId=authorityId; ResourceKey=resourceKey; LeaseId=leaseId;\n OwnerId=ownerId; Epoch=epoch; Generation=generation;\n ExpiresUtcMs=expiresUtcMs;\n }\n }\n public sealed class AcquireRequest\n {\n public string OwnerId { get; set; } = \"\";\n public OwnerKind OwnerKind { get; set; }\n public string ProcessInstanceId { get; set; } = \"\";\n public string ConfigHash { get; set; } = \"\";\n public string[] ResourceKeys { get; set; } = new string[0];\n public int WaitTimeoutMs { get; set; }\n }\n public interface ILeaseScope\n {\n IReadOnlyList<LeaseGrant> Grants { get; }\n CancellationToken LeaseLost { get; }\n Task ReleaseAsync(CancellationToken cancellationToken);\n }\n public interface IResourceCoordinator\n {\n Task<ILeaseScope> AcquireGroupAsync(AcquireRequest request, CancellationToken ct);\n Task<IReadOnlyList<LeaseGrant>> RenewGroupAsync(\n IReadOnlyList<LeaseGrant> grants, CancellationToken ct);\n Task RequestHandoverAsync(string resourceKey, string reason, CancellationToken ct);\n }\n public sealed class DeviceOperation\n {\n public string OperationCode { get; set; } = \"\";\n public string ParametersJson { get; set; } = \"{}\";\n public string IdempotencyKey { get; set; } = \"\";\n public string ConfigHash { get; set; } = \"\";\n public IReadOnlyList<LeaseGrant> Grants { get; set; } = new LeaseGrant[0];\n public long DeadlineUtcMs { get; set; }\n }\n public sealed class OperationResult\n {\n public string RequestId { get; set; } = \"\";\n public TaskState State { get; set; }\n public string ErrorCode { get; set; } = \"\";\n public string ReadbackJson { get; set; } = \"{}\";\n public bool PhysicalStateKnown { get; set; }\n }\n public interface IDeviceExecutor\n {\n Task<OperationResult> ExecuteAsync(DeviceOperation op, CancellationToken ct);\n }\n public sealed class BrokerTaskRequest\n {\n public string ClientInstanceId { get; set; } = \"\";\n public string TemplateId { get; set; } = \"\";\n public string TemplateVersion { get; set; } = \"\";\n public DeviceOperation Operation { get; set; } = new DeviceOperation();\n }\n public sealed class BrokerTaskTicket\n {\n public string TaskId { get; set; } = \"\";\n public TaskState State { get; set; }\n }\n public interface IDeviceBrokerClient\n {\n Task<BrokerTaskTicket> SubmitAsync(BrokerTaskRequest request, CancellationToken ct);\n Task<OperationResult> QueryAsync(string taskId, CancellationToken ct);\n Task CancelAsync(string taskId, string reason, CancellationToken ct);\n Task AckResultAsync(string resultId, CancellationToken ct);\n }\n}"}}; |
| | | const $=s=>document.querySelector(s); const $$=s=>[...document.querySelectorAll(s)]; |
| | | const search=$('#search');function filter(){let q=search.value.trim().toLowerCase(),n=0;document.body.dataset.filtered=!!q;$$('main section').forEach(s=>{let hit=!q||s.innerText.toLowerCase().includes(q);s.classList.toggle('hidden',!hit);let a=$('nav a[href="#'+s.id+'"]');a.style.display=hit?'block':'none';if(hit)n++});$('#count').textContent=n+' / 22 ç« ';$('.no-results').style.display=n?'none':'block'}search.addEventListener('input',filter); |
| | | $('#clear').onclick=()=>{search.value='';filter()};$('#print').onclick=()=>{search.value='';filter();$$('details').forEach(x=>x.open=true);window.print()}; |
| | | $$('.copy').forEach(b=>b.onclick=async()=>{let t=b.parentElement.nextElementSibling.innerText;try{await navigator.clipboard.writeText(t);b.textContent='å·²å¤å¶';setTimeout(()=>b.textContent='å¤å¶',1200)}catch(e){const r=document.createRange();r.selectNodeContents(b.parentElement.nextElementSibling);const sel=window.getSelection();sel.removeAllRanges();sel.addRange(r);b.textContent='å·²éä¸ï¼è¯· Ctrl+C'}}); |
| | | const dlg=$('#diagram-dialog');$$('.zoom').forEach(b=>b.onclick=()=>{$('.dialog-body').replaceChildren(b.parentElement.querySelector('img').cloneNode(true));dlg.showModal()});$('#close-dialog').onclick=()=>dlg.close(); |
| | | $$('[data-download]').forEach(b=>b.onclick=()=>{let x=assets[b.dataset.download];let a=document.createElement('a');let u=URL.createObjectURL(new Blob([x.content],{type:x.type}));a.href=u;a.download=x.name;a.click();setTimeout(()=>URL.revokeObjectURL(u),1000)}); |
| | | if('IntersectionObserver' in window){let obs=new IntersectionObserver(es=>es.forEach(e=>{if(e.isIntersecting){$$('nav a').forEach(a=>a.classList.toggle('active',a.hash==='#'+e.target.id))}}),{rootMargin:'-5% 0px -75% 0px'});$$('main section').forEach(s=>obs.observe(s))} |
| | | </script></body></html> |
| New file |
| | |
| | | <!DOCTYPE html> |
| | | <html lang="zh-CN"> |
| | | <head> |
| | | <meta charset="UTF-8"> |
| | | <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| | | <title>å¤è¿ç¨/å¤çº¿ç¨åºæ¯ä¸ç仪å¨èµæºç¬å ä¸å
±äº«æ¹æ¡</title> |
| | | <script src="https://cdn.jsdelivr.net/npm/mermaid@10/dist/mermaid.min.js"></script> |
| | | <style> |
| | | * { box-sizing: border-box; } |
| | | body { |
| | | font-family: -apple-system, "Segoe UI", "Microsoft YaHei", "PingFang SC", sans-serif; |
| | | max-width: 1240px; margin: 0 auto; padding: 32px 24px 80px; |
| | | background: #FAFAFA; color: #212121; line-height: 1.75; |
| | | } |
| | | h1 { font-size: 29px; color: #1565C0; border-bottom: 3px solid #1976D2; padding-bottom: 12px; } |
| | | h2 { font-size: 23px; color: #0D47A1; margin-top: 42px; padding-left: 12px; border-left: 4px solid #FF9800; } |
| | | h3 { font-size: 17px; color: #37474F; margin-top: 26px; } |
| | | h4 { font-size: 15px; color: #455A64; margin-top: 18px; } |
| | | .subtitle { color: #757575; font-size: 14px; margin-bottom: 24px; } |
| | | .card { background: white; border-radius: 8px; padding: 18px 22px; margin: 16px 0; box-shadow: 0 2px 8px rgba(0,0,0,0.06); } |
| | | .highlight { background: #FFF8E1; border-left: 4px solid #FFC107; padding: 12px 16px; margin: 12px 0; border-radius: 4px; } |
| | | .info { background: #E3F2FD; border-left: 4px solid #2196F3; padding: 12px 16px; margin: 12px 0; border-radius: 4px; } |
| | | .success { background: #E8F5E9; border-left: 4px solid #4CAF50; padding: 12px 16px; margin: 12px 0; border-radius: 4px; } |
| | | .warn { background: #FBE9E7; border-left: 4px solid #FF5722; padding: 12px 16px; margin: 12px 0; border-radius: 4px; } |
| | | table { width: 100%; border-collapse: collapse; margin: 16px 0; background: white; border-radius: 6px; overflow: hidden; box-shadow: 0 1px 4px rgba(0,0,0,0.06); font-size: 13.5px; } |
| | | th { background: #1976D2; color: white; padding: 9px 12px; text-align: left; font-weight: 600; } |
| | | td { padding: 8px 12px; border-bottom: 1px solid #EEEEEE; vertical-align: top; } |
| | | tr:nth-child(even) td { background: #FAFAFA; } |
| | | tr:hover td { background: #E3F2FD; } |
| | | code { font-family: "Consolas", "Monaco", monospace; background: #F5F5F5; color: #C62828; padding: 2px 6px; border-radius: 3px; font-size: 13px; } |
| | | pre { background: #263238; color: #ECEFF1; padding: 16px 20px; border-radius: 6px; overflow-x: auto; font-family: "Consolas", monospace; font-size: 13px; line-height: 1.55; } |
| | | pre code { background: transparent; color: inherit; padding: 0; font-size: 13px; } |
| | | .mermaid { background: white; padding: 20px; border-radius: 8px; margin: 20px 0; text-align: center; box-shadow: 0 2px 8px rgba(0,0,0,0.06); overflow-x: auto; } |
| | | ul { padding-left: 22px; } li { margin: 4px 0; } |
| | | .toc { background: #F5F5F5; padding: 16px 24px; border-radius: 6px; margin: 20px 0; } |
| | | .toc a { color: #1976D2; text-decoration: none; display: block; padding: 3px 0; } |
| | | .toc a:hover { text-decoration: underline; } |
| | | .kwd { color: #FFCC80; } .str { color: #C5E1A5; } .cmt { color: #546E7A; } .fn { color: #82AAFF; } |
| | | .good { color: #2E7D32; font-weight: 600; } .bad { color: #C62828; font-weight: 600; } .mid { color: #EF6C00; font-weight: 600; } |
| | | footer { margin-top: 60px; padding-top: 20px; border-top: 1px solid #E0E0E0; color: #757575; font-size: 12px; text-align: center; } |
| | | .path { font-family: Consolas, monospace; font-size: 12.5px; background: #ECEFF1; color: #37474F; padding: 1px 6px; border-radius: 3px; } |
| | | </style> |
| | | </head> |
| | | <body> |
| | | |
| | | <h1>å¤è¿ç¨ / å¤çº¿ç¨åºæ¯ä¸ç仪å¨èµæºç¬å ä¸å
±äº«æ¹æ¡</h1> |
| | | <div class="subtitle">TestPlatform Aging Software · SQLite è®¾å¤æ³¨å + Aging.Infrastructure ç§çº¦ + OpenTAP åºåæ§è¡å¨ 䏿 èå设计 · 2026-11-03</div> |
| | | |
| | | <div class="toc"> |
| | | <strong>ç®å½</strong> |
| | | <a href="#s1">1. ç°ç¶çç¹ä¸é®é¢å®ä¹</a> |
| | | <a href="#s2">2. 两类并ååºæ¯çä¸¥æ ¼åºå</a> |
| | | <a href="#s3">3. äºä¸ªåéæ¹æ¡éä¸è¯ä¼°ä¸æ¨ªå对æ¯</a> |
| | | <a href="#s4">4. æ¨èç®æ æ¶æï¼å屿··åï¼ç§çº¦è¡¨ + 仲è£è§å + æé Brokerï¼</a> |
| | | <a href="#s5">5. ç§çº¦å®æ´çå½å¨æï¼ç³è¯· / ç»æ / éæ¾ / è¶
æ¶æ¢å </a> |
| | | <a href="#s6">6. å
¨èªå¨ vs æå¨ç»´æ¤çäºæ¥ä»²è£è§å</a> |
| | | <a href="#s7">7. å¼å¸¸åºæ¯å¤çï¼æ»é / å¤å¿é / æ¶é / å¹ç</a> |
| | | <a href="#s8">8. ç¬å or åæ¶å¤ç¨ï¼è®¾å¤åç»ä¸ Slot ç»å®çç¥</a> |
| | | <a href="#s9">9. æ¬ä»åºæ¹é æ¸
åï¼å
·ä½æä»¶è·¯å¾ + æ¥å£ç¾å + DDLï¼</a> |
| | | <a href="#s10">10. æµè¯è¦ç¹ï¼åå
/ å¤è¿ç¨éæ / å´©æºæ¼ç»</a> |
| | | <a href="#s11">11. åé¶æ®µå®æ½è®¡åä¸å·¥ä½éä¼°ç®</a> |
| | | <a href="#s12">12. é£é©ã忍¡å¼ä¸ä¸æ¨èåæ³</a> |
| | | <a href="#s13">13. ç»è®º</a> |
| | | </div> |
| | | |
| | | <!-- ================================================================= --> |
| | | <h2 id="s1">1. ç°ç¶çç¹ä¸é®é¢å®ä¹</h2> |
| | | |
| | | <div class="card"> |
| | | <strong>å
说ç»è®ºï¼ä½ ä»¬çæ¶æå·²ç»"ååªè"è¸©å¨æ£ç¡®æ¹æ¡ä¸ã</strong> |
| | | <code>ResourceOwnerToken</code>ï¼å« Generation ä¸ä»£å·ï¼ã<code>reservation_ref</code> åæ®µã<code>IAutoDeviceLease</code> ä½ç¨åââè¿äºæ¦å¿µä¸å·¥ä¸çæ åç"ç§çº¦ï¼Leaseï¼+ æ
æ 令çï¼Fencing Tokenï¼"模åä¸ä¸å¯¹åºãå¯ä¸çé®é¢æ¯ï¼<strong>æ´å¥æºå¶æ´»å¨å
åé</strong>ã |
| | | </div> |
| | | |
| | | <h3>1.1 ç°ç¶ä»£ç äºå®æ ¸æ¥</h3> |
| | | <table> |
| | | <tr><th>ç»ä»¶</th><th>æä»¶</th><th>ç°ç¶</th><th>è·¨è¿ç¨è½å</th></tr> |
| | | <tr> |
| | | <td>ResourceManager</td> |
| | | <td><span class="path">Aging.Infrastructure/Core/ResourceManager.cs</span></td> |
| | | <td><code>ConcurrentDictionary</code> åé¢çº¦ + <code>SemaphoreSlim(1,1)</code> æ¯èµæºç»éï¼Generation å
¨å±èªå¢</td> |
| | | <td class="bad">â 纯è¿ç¨å
åï¼å
¶ä»è¿ç¨å®å
¨ä¸å¯è§</td> |
| | | </tr> |
| | | <tr> |
| | | <td>ResourceOwnerToken</td> |
| | | <td><span class="path">Contracts/ResourceOwnerToken.cs</span></td> |
| | | <td>TokenId + OwnerType(Production/Maintenance) + Generation + IssuedAt/ExpiresAt</td> |
| | | <td class="mid">â ï¸ ç»æå¯åºååï¼ä½ç®å没æè·¨è¿ç¨æ ¡éªè·¯å¾</td> |
| | | </tr> |
| | | <tr> |
| | | <td>AutoDeviceFacade / Lease</td> |
| | | <td><span class="path">Services/AutoDeviceFacade.cs</span></td> |
| | | <td>Reserve â DeviceService åæ´¾ â finally Releaseï¼Lease ä½ç¨åå¤ç¨</td> |
| | | <td class="bad">â ä¾èµå
åç ResourceManager</td> |
| | | </tr> |
| | | <tr> |
| | | <td>DeviceService</td> |
| | | <td><span class="path">Services/DeviceService.cs</span></td> |
| | | <td>æ§è¡å <code>ValidateOwner</code>ï¼å
åæ¥è¡¨ï¼â <code>AcquireOperationAsync</code> â driver ä¸å</td> |
| | | <td class="bad">â æ ¡éªä»
æ¬è¿ç¨ææ</td> |
| | | </tr> |
| | | <tr> |
| | | <td>DebugSessionManager</td> |
| | | <td><span class="path">Plugin.DeviceDebug/Model/DebugSessionManager.cs</span></td> |
| | | <td>RequestMaintenance å·²æè· <code>ResourceConflictException</code>ï¼å¹¶æ <code>reservation.ReservationId</code> åå
¥ <code>session.ReservationRef</code> æä¹
å</td> |
| | | <td class="mid">â ï¸ å·²é¢çææ¥ç¹ï¼å·®ä¸ä¸ª"æ´»ç"ä»²è£æº</td> |
| | | </tr> |
| | | <tr> |
| | | <td>debug_session 表</td> |
| | | <td><span class="path">Plugin.DeviceDebug/Model/DeviceDebugModel.cs</span></td> |
| | | <td>æ <code>reservation_ref TEXT</code>ã<code>state</code>ã<code>closed_at</code>ï¼æ å¿è·³/è¿æå</td> |
| | | <td class="mid">â ï¸ å¯æ©å±</td> |
| | | </tr> |
| | | <tr> |
| | | <td>IPC 设æ½</td> |
| | | <td><span class="path">ConnectionUtil/PipeServer.cs · PipeClient.cs</span></td> |
| | | <td>å½å管éï¼Message 模å¼ï¼å·²å®ç°ï¼å¤å®ä¾æå¡ç«¯ãè¿æ¥äºä»¶ã请æ±-ååº SendMessageï¼å¸¦è¶
æ¶ï¼</td> |
| | | <td class="good">â
å¯ç´æ¥ä½ä¸º Device Broker çä¼ è¾å±ï¼æ éæ°é è½®å</td> |
| | | </tr> |
| | | <tr> |
| | | <td>OpenTAP SynchronizationManager</td> |
| | | <td>OpenTAP 9.31 弿</td> |
| | | <td>è¿ç¨å
<code>RequestLock(resource, timeout)</code> æä»ªå¨äºæ¥</td> |
| | | <td class="bad">â 宿¹ææ¡£æç¡®ï¼ä»
è¿ç¨å
</td> |
| | | </tr> |
| | | </table> |
| | | |
| | | <h3>1.2 é®é¢æ¬è´¨æè§£</h3> |
| | | <div class="highlight"> |
| | | "å¤å·¥ä½å
±ç¨ä¸å°ä»ªå¨"å
¶å®å
å« <strong>ä¸ä¸ªä¸åå±é¢</strong>çé®é¢ï¼å¿
é¡»åå¼è§£å³ï¼æ··å¨ä¸èµ·è°å¿
ç¶æ¹æ¡èµ°å½¢ï¼ |
| | | <ol> |
| | | <li><strong>仲è£ï¼Arbitrationï¼</strong>ï¼è°<em>ææ</em>å¨è¿å°ä»ªå¨ä¸åå½ä»¤ï¼â éè¦è·¨è¿ç¨å¯è§ã坿ä¹
åãå´©æºå¯åæ¶ç<strong>ç§çº¦ç¶æ</strong>ã</li> |
| | | <li><strong>è¿æ¥ç¬å ï¼Connectionï¼</strong>ï¼ç©ç奿ï¼COM å£ãUSBãCAN å¡ï¼å䏿¶å»åªè½è¢«ä¸ä¸ªè¿ç¨ <code>open</code>ï¼ç½å£ä»ªå¨åå
è®¸åæºå¤è¿æ¥ä½éè¦"é»è¾ç¬å "è¯ä¹ãâ éè¦æ<strong>è¿æ¥ææè
ä¸ç§çº¦ææè
ç»å®</strong>ï¼å¿
è¦æ¶å¼å
¥ä»£çè¿ç¨ã</li> |
| | | <li><strong>å½ä»¤ä¸²è¡åï¼Serializationï¼</strong>ï¼åæ¶å¤ç¨å设å¤ï¼å¦å
±äº«æ¸©ç®±ï¼ï¼å
许å¤å·¥ä½æéä¸åååå½ä»¤ç段ãâ éè¦<strong>éå/æ
æ 令ç</strong>ï¼èéç¬å ç§çº¦ã</li> |
| | | </ol> |
| | | </div> |
| | | |
| | | <!-- ================================================================= --> |
| | | <h2 id="s2">2. 两类并ååºæ¯çä¸¥æ ¼åºå</h2> |
| | | |
| | | <div class="mermaid"> |
| | | graph TB |
| | | subgraph åºæ¯A["åºæ¯ Aï¼åè¿ç¨å¤çº¿ç¨ï¼å HMI 主ç¨åºå
ï¼"] |
| | | A1["OpenTAP å¹¶è¡æ¥éª¤ / MultiSite è°åº¦çº¿ç¨"] --- A2["WPF UI 线ç¨ï¼æå¨è°è¯ï¼"] |
| | | A3["ResultProxy è½åºçº¿ç¨"] |
| | | end |
| | | subgraph åºæ¯B["åºæ¯ Bï¼è·¨è¿ç¨ / è·¨æºå¨"] |
| | | B1["å·¥ä½è¿ç¨1 tap.exe/Station1.exe"] |
| | | B2["å·¥ä½è¿ç¨2 Station2.exe"] |
| | | B3["HMI 主ç¨åºï¼ç»´æ¤å·¥ç¨å¸ï¼"] |
| | | B4["å
¶ä»æºå¨ä¸çæ§è¡èç¹<br/>ï¼å¤æºå
±æµä¸å°ä»ªå¨ï¼"] |
| | | end |
| | | subgraph è§£å³ææ®µ["åå«å¯¹åºçææ®µ"] |
| | | S1["OpenTAP SynchronizationManager<br/>+ ç°æå
åç ResourceManager<br/>ï¼ä¿æä¸å â
ï¼"] |
| | | S2["æä¹
åç§çº¦è¡¨ï¼DB Leaseï¼<br/>+ Fencing Generation<br/>+ å¿è·³ TTL + 仲è£çç¥<br/>ï¼æ¬æ¬¡æ°å»º âï¼"] |
| | | end |
| | | åºæ¯A --> S1 |
| | | åºæ¯B --> S2 |
| | | </div> |
| | | |
| | | <table> |
| | | <tr><th>维度</th><th>åºæ¯ Aï¼è¿ç¨å
å¤çº¿ç¨</th><th>åºæ¯ Bï¼è·¨è¿ç¨/è·¨æºå¨</th></tr> |
| | | <tr><td>å
¸å触å</td><td>TestPlan ä¸ Parallel æ¥éª¤ / MultiSite åæ¶è·ä¸å忝</td><td>å¤å·¥ä½ç¬ç«è¿ç¨ãHMI ä¸èªå¨æµè¯å¹¶è¡ãCI èç¹</td></tr> |
| | | <tr><td>äºæ¥åè¯</td><td>SemaphoreSlim / lock / SynchronizationManager.RequestLock</td><td>OS å½åå
æ ¸å¯¹è±¡ / DB ç§çº¦ / Broker éå</td></tr> |
| | | <tr><td>å´©æºè¡¨ç°</td><td>è¿ç¨æ» â ééè¿ç¨æ¶å¤±ï¼å
æ ¸åæ¶ï¼</td><td class="bad">ææè
æ»äº¡åé<strong>æ®ç</strong>ï¼å¿
é¡»é TTL/çé¨çåæ¶</td></tr> |
| | | <tr><td>å¯è§æ§</td><td>天ç¶å¯è§ï¼åä¸å ï¼</td><td>å¿
é¡»å¤é¨åç¶æï¼DB / Broker / å
±äº«å
åï¼</td></tr> |
| | | <tr><td>ä½ ä»¬çç°ç¶</td><td class="good">已解å³ï¼ResourceManager å
åç峿¯å¹²è¿ä¸ªçï¼</td><td class="bad">å®å
¨æªè§£å³ââæ¬æ¬¡æ¹æ¡ç主æåº</td></tr> |
| | | </table> |
| | | |
| | | <div class="info"><strong>设计ååï¼åºæ¯ A ç¨è½»éå
åéï¼å¿«ï¼ï¼åºæ¯ B ç¨æä¹
åç§çº¦ï¼å¯é ï¼ï¼ä¸¤å±å¤åæä¸ä¸ª <code>LayeredResourceManager</code>ï¼å¯¹ä¸å± <code>IAutoDeviceFacade</code> å®å
¨éæã</strong></div> |
| | | |
| | | <!-- ================================================================= --> |
| | | <h2 id="s3">3. äºä¸ªåéæ¹æ¡éä¸è¯ä¼°ä¸æ¨ªå对æ¯</h2> |
| | | |
| | | <h3>æ¹æ¡ â ï¼å
¨é¨æ¶æå°åè¿ç¨ + OpenTAP å
ç½®åæ¥</h3> |
| | | <div class="card"> |
| | | æææå·¥ä½æ§è¡ä½é½å¡è¿ä¸ä¸ªä¸»è¿ç¨ï¼ä¸ä¸ª TestPlan è·å¤åæ¯ï¼ï¼å®å
¨ä¾èµ <code>SynchronizationManager</code>ã |
| | | <br><br> |
| | | <span class="mid">è¯ä¼°ï¼</span>ç©ç䏿çäºï¼<strong>ä½è¿åèåæµè¯çç¬ç«æ
éååå</strong>ââä¸ä¸ªå·¥ä½ <code>StackOverflow</code>/åç驱å¨å´©æºææ»å
¨é¨ N 个工ä½ï¼èåå·¥é¾å¨è¾å åå°æ¶ï¼è¿ç¨çº§é离æ¯åéãå
åæ³æ¼å¨å¤è¿ç¨ä¸å¯ä»¥æå·¥ä½è½®æ¢åæ¶ï¼åè¿ç¨æ è§£ã |
| | | <br><strong>ç»è®ºï¼ä»
ä½ä¸ºå
åºç®åå½¢æï¼åå·¥ä½å°åæºå°å¯ç¨ï¼ï¼ä¸ä½ä¸ºå¤å·¥ä½ç®æ æ¶æã</strong> |
| | | </div> |
| | | |
| | | <h3>æ¹æ¡ â¡ï¼å½åå
æ ¸å¯¹è±¡ï¼Named Mutex / Named Semaphoreï¼</h3> |
| | | <div class="card"> |
| | | <code>new Mutex(false, "Global\\Lease_CAN-001")</code>ï¼è·¨è¿ç¨æ¢å
æ ¸å¯¹è±¡ã |
| | | <br><br> |
| | | <strong>ä¼ç¹ï¼</strong>å®ç°ææ¬â0ï¼è¿ç¨æ»äº¡æ¶å
æ ¸èªå¨éæ¾ Abandonedï¼åæºå¯é ï¼ã |
| | | <br><strong>è´å½ç¼ºé·ï¼</strong> |
| | | <ul> |
| | | <li><strong>æ è¯ä¹ç¶æ</strong>ï¼Mutex åªç¥é"è°æ¿ç"ï¼ä¸ç¥é"æ¿å»å¹²ä»ä¹ãä»ä¹æ¶å该è¿"ââ<code>AbandonedMutexException</code> æ¶ä¸ä¸ä¸ªææè
<em>æä½å°åªä¸æ¥äº</em>å®å
¨ä¸å¯ç¥ï¼å¯¹"äººå¨æ¥çº¿/è¾åºå·²æå¼"è¿ç±»å®å
¨ç¶ææ¯ç²åºï¼</li> |
| | | <li><strong>æ ä¼å
级仲è£</strong>ï¼ç»´æ¤æ¨¡å¼æ¢å ç产ãä¼é
交æ¥ï¼handoverï¼é½è¡¨è¾¾ä¸äºï¼</li> |
| | | <li><strong>æ 审计</strong>ï¼è°å¨ä»ä¹æ¶é´ææäºå¤ä¹
ï¼å
æ ¸å¯¹è±¡ä¸è®°å½ï¼ä¸ä½ 们 <code>debug_operation</code> 审计ä½ç³»è±èï¼</li> |
| | | <li><strong>ä¸è·¨æºå¨</strong>ï¼<code>Global\</code> å½åå¨ Windows æå¡/ä¼è¯é离ä¸è¿ææéåã</li> |
| | | </ul> |
| | | <strong>ç»è®ºï¼ä¸è½åç¬æç«ï¼å¯ä»¥ä½ä¸ºæ¹æ¡â¢ç"åæºå éä¿¡å·"åæ··åï¼è§ §4 åå±è®¾è®¡ï¼ã䏿¨èç¨ NamedEvent 轮询模æç§çº¦ï¼ç«æå¤ãè°è¯å°ç±ï¼ã</strong> |
| | | </div> |
| | | |
| | | <h3>æ¹æ¡ â¢ï¼æ°æ®åºç§çº¦è¡¨ï¼Lease + TTL + å¿è·³ + å´©æºåæ¶ï¼â æ¨è主ä½</h3> |
| | | <div class="card"> |
| | | æç§çº¦ç¶ææä¹
åå° <code>data.db</code> æ°è¡¨ <code>device_lease</code>ï¼ç¨ <code>BEGIN IMMEDIATE</code> äºå¡å®ç°è·¨è¿ç¨ååç"æ¯è¾å¹¶æ¢å
¥"ï¼CASï¼ï¼TTL è¿æå³è¢«è§ä¸ºå´©æºå¯åæ¶ï¼Generation 使
æ 令çé²"åµå°¸ææè
"ã |
| | | <br><br> |
| | | <strong>ä¸ç°æ IResourceManager çè¡æ¥ï¼</strong>æ¥å£ç¾å<strong>ä¸ä¸ªé½ä¸æ¹</strong>ãæ°å¢ <code>DbLeaseStore</code> å
é¨ç±»ï¼<code>ResourceManager</code> å级为ç»å模å¼ï¼å
ååå
¸ç»§ç»åæ¬è¿ç¨å¿«éè·¯å¾ä¸ä¿¡å·éäºæ¥ï¼é¢çº¦/æ ¡éªåæ¶è¯»å DB 表ãä¸å± <code>AutoDeviceFacade / DeviceService / DebugSessionManager / IAutoDeviceLease</code> é¶æ¹å¨ï¼åªæ¢ Bootstrapper éçæ³¨åå®ä¾ã |
| | | <br><strong>éå¶ï¼</strong>SQLite æ¯åæºæä»¶åºââ夿ºå
±äº«éæè¯¥è¡¨è¿å°æå¡ç«¯æ°æ®åºï¼æèµ°æ¹æ¡â£ Broker 代çï¼ï¼ä¸ SQLite åå¹¶åè¦é WAL + çäºå¡ï¼ç§çº¦æä½è®¾è®¡ææ¯«ç§çº§ç¹æ¥/ç¹åï¼å®æµæ¯ææ¯å·¥ä½ç§çº§å½ä»¤æµæ¯«æ ååã |
| | | <strong>ç»è®ºï¼è·¨è¿ç¨ä»²è£çæä½³æ§ä»·æ¯ï¼ä½ä¸ºä¸»ä½æ¹æ¡ã</strong> |
| | | </div> |
| | | |
| | | <h3>æ¹æ¡ â£ï¼ç¬ç«è®¾å¤ä»£çè¿ç¨ï¼Device Broker + IPCï¼</h3> |
| | | <div class="card"> |
| | | ä¸å°æºå¨ä¸è·ä¸ä¸ª <code>DeviceBroker.exe</code>ï¼<strong>ææç©çè¿æ¥ï¼COM/USB/CAN å¡å¥æãSCPI TCP socketï¼åªç±å®ææ</strong>ï¼åå·¥ä½è¿ç¨éè¿å½å管éæå½ä»¤è½¬åç» Broker æéæ§è¡ãä»åºç°æç <span class="path">ConnectionUtil/PipeServer·PipeClient</span> å³å¯åä¼ è¾å±ã |
| | | <br><br> |
| | | <strong>è§£å³çæ ¸å¿çç¹ï¼ç§çº¦è¡¨è§£å³ä¸äºçï¼ï¼</strong> |
| | | <ul> |
| | | <li><strong>奿ç¬å </strong>ï¼ä¸²å£/USB ä¸å
许第äºä¸ªè¿ç¨ <code>CreateFile</code>ãè¥ä»
é ç§çº¦ï¼æ¯æ¬¡ç§çº¦ææé½è¦ closeâopen 䏿¬¡ï¼USB éæä¸¾å¯è¾¾ç§çº§ä¸ä¸¢ç¼å²ï¼Broker è®©è¿æ¥<strong>æ°¸ä¸æ¢æ</strong>ï¼åæ¢çåªæ¯"é»è¾æææ"ï¼</li> |
| | | <li><strong>夿ºå
±äº«</strong>ï¼A æºæç CAN å¡ï¼B/C æºçæµè¯ä¹è½ç» TCP/管é让 Broker 代åââBroker å¤©ç¶æ¯è·¨æºç½å
³ï¼</li> |
| | | <li><strong>å½ä»¤çº§ä¸²è¡å</strong>ï¼åæ¶å¤ç¨è®¾å¤ï¼å
±äº«æ¸©ç®±ï¼å¨ Broker å
æ¯åéåï¼æ¯ç§çº¦æ¢å 髿å¾å¤ã</li> |
| | | </ul> |
| | | <strong>代价</strong>ï¼å¤ä¸ä¸ªå¸¸é©»è¿ç¨è¦è¿ç»´ï¼çé¨çãåçº§ãæ¥å¿ï¼ï¼ææ I/O å¤ä¸è·³ IPCï¼~毫ç§çº§ï¼èååºæ¯å¯å¿½ç¥ï¼ï¼å¼åéæå¤§ã |
| | | <strong>ç»è®ºï¼ä¸²å£/USB/CAN å¡è¿ç±»"åæºç©çç¬å "设å¤ç<strong>ç»å±æ¹æ¡</strong>ï¼ä½å»ºè®® Phase 3 åä¸ï¼Phase 1 ç¨ç§çº¦è¡¨ + "ç§çº¦æææå
ä¿æè¿æ¥"å³å¯æ»¡è¶³å¤§é¨ååºæ¯ã</strong> |
| | | </div> |
| | | |
| | | <h3>æ¹æ¡ â¤ï¼ç´æ¥å¤ç¨ OpenTAP çæè½å</h3> |
| | | <div class="card"> |
| | | éé¡¹æ ¸æ¥ OpenTAP ç°æè½åè½å¦è¦çè·¨è¿ç¨éæ±ï¼è¯¦ç»åæè§å§å¦¹ç¯ <a href="./OpenTAP_Instrument_Package_Analysis.html">ãOpenTAP Instrument + æä»¶å
æºå¶åæã§9</a>ï¼ï¼ |
| | | <table> |
| | | <tr><th>OpenTAP è½å</th><th>æ¯ä»ä¹</th><th>è½å¦è§£å³è·¨è¿ç¨ä»²è£</th></tr> |
| | | <tr><td><code>Instrument : Resource</code> èµæºæ¨¡å</td><td>仪å¨çå½å¨ææç®¡ + ç¼è¾å¨ç»å®</td><td class="bad">â å®ä¾çå½å¨æä»
è¿ç¨å
ï¼ä¸æç¥å
¶ä»è¿ç¨</td></tr> |
| | | <tr><td><code>SynchronizationManager</code></td><td>è¿ç¨å
æä»ªå¨äºæ¥é</td><td class="bad">â è®¾è®¡ç®æ å°±æ¯åè¿ç¨</td></tr> |
| | | <tr><td>ResultProxy / è¿ç¨æ§è¡ï¼<code>tap run --remote</code>ãSession.Localï¼</td><td>æä¸ä¸ª TestPlan ååå°è¿ç«¯æ§è¡èç¹ï¼ç»æåæµ</td><td class="mid">â ï¸ è§£å³"æ§è¡åå¸"ï¼ä¸è§£å³"䏤尿ºæ¢ä¸å°ä»ªå¨"ââæ¯ä¸ªè¿ç«¯ session åèªè¿æ¯åè¿ç¨è§é</td></tr> |
| | | <tr><td>BenchStore / ResourceSettingsï¼9.23+ï¼</td><td>å°æ¶èµæºé
ç½®æä¹
åï¼XMLï¼</td><td class="mid">â ï¸ é
ç½®å¯ä»¥å
±äº«ï¼<strong>仲è£ç¶æä¸è¡</strong>ï¼æ TTL/å¿è·³æ¦å¿µï¼</td></tr> |
| | | <tr><td>ç§æå
ä»åºåå</td><td>驱å¨ä»¥ <code>.opentap</code> å
å®è£
</td><td class="good">â
è§£å³é©±å¨ååï¼ä¸å¹¶åä»²è£æ£äº¤ï¼å¼å¾å¹¶è¡æ¨è¿ï¼</td></tr> |
| | | <tr><td><code>IResourcePlan</code>/ResourceConflictsï¼9.20+ï¼</td><td>èµæºè§å/å²çª<strong>éææ£æ¥</strong>ï¼ç¼è¾å¨éæç¤º"两个åºåç¨äºåä¸ä»ªå¨"ï¼</td><td class="mid">â ï¸ åªè½æååç°å²çªï¼è¿è¡æ¶å¤è¿ç¨å¹¶åä»ä¸ä»²è£</td></tr> |
| | | </table> |
| | | <strong>ç»è®ºï¼OpenTAP çææ²¡æä»»ä½ä¸åè½ç´æ¥æ¿ä»£è·¨è¿ç¨è¿è¡æ¶ä»²è£ââè¿æ¯å¼æºæµè¯æ¡æ¶çæ®é空ç½ï¼ä¹æ£æ¯ä½ 们 IResourceManager ä½ç³»çæç¥ä»·å¼ãè½å¤ç¨çæ¯ï¼ååï¼å
æºå¶ï¼ãé
置模åï¼BenchStore æè·¯ï¼ã以忿ç»é©±å¨åæ Instrument æä»¶çé¿æå½¢æã</strong> |
| | | </div> |
| | | |
| | | <h3>横åå¯¹æ¯æ»è¡¨</h3> |
| | | <table> |
| | | <tr><th>维度</th><th>â åè¿ç¨æ¶æ</th><th>â¡Named Mutex</th><th>â¢DB ç§çº¦è¡¨ â</th><th>â£Device Broker</th><th>â¤OpenTAP ç°æ</th></tr> |
| | | <tr><td>å¹¶åå®å
¨ï¼è·¨è¿ç¨ï¼</td><td class="bad">伪å½é¢ï¼æ å¤è¿ç¨ï¼</td><td class="mid">äºæ¥å¯ä»¥ï¼ä½æ ç¶æè¯ä¹</td><td class="good">强ä¸è´ï¼DB äºå¡ CASï¼</td><td class="good">åç¹ä¸²è¡åï¼æå¼º</td><td class="bad">䏿¯æ</td></tr> |
| | | <tr><td>å´©æºæ®çå¤ç</td><td class="good">è¿ç¨æ»=鿶失</td><td class="mid">Abandoned 坿ç¥ä½ç²æ¥</td><td class="good">TTL èªå¨è¿æ + åæ¶</td><td class="mid">Broker æ»=å
¨åï¼éçé¨çï¼</td><td>â</td></tr> |
| | | <tr><td>ä¼å
级/æ¢å /ä¼é
交æ¥</td><td class="mid">代ç å¯å®ç°</td><td class="bad">表达ä¸äº</td><td class="good">ç¶æå+grace åæ®µåçæ¯æ</td><td class="good">éåçç¥ä»»æå®å¶</td><td class="bad">æ </td></tr> |
| | | <tr><td>审计å¯è¿½æº¯</td><td class="bad">æ </td><td class="bad">æ </td><td class="good">表å³åå²ï¼å¯æ debug_operationï¼</td><td class="good">Broker å
¨ææ¥å¿</td><td class="mid">ResultProxy æç»ææ 仲è£</td></tr> |
| | | <tr><td>æ§è½å¼é</td><td class="good">纳ç§çº§</td><td class="good">å¾®ç§çº§</td><td class="mid">毫ç§çº§ï¼WAL ç¹åï¼</td><td class="mid">毫ç§çº§ï¼IPC ä¸è·³ï¼</td><td>â</td></tr> |
| | | <tr><td>å®ç°ææ¬</td><td class="good">0ï¼éææ¶æä¸ºè´ï¼</td><td class="good">0.5 人æ¥</td><td class="good">3~4 人æ¥</td><td class="mid">5~8 人æ¥</td><td class="good">å·²å
建/ä¸éç¨</td></tr> |
| | | <tr><td>坿©å±å°å¤æº</td><td class="bad">å¦</td><td class="bad">å¦</td><td class="mid">鿢æå¡ç«¯ DB</td><td class="good">æ¯ï¼Broker=ç½å
³ï¼</td><td class="mid">é¨å</td></tr> |
| | | <tr><td>ç©ç奿ç¬å é®é¢</td><td class="good">天ç¶è§é¿</td><td class="bad">ä¸è§£å³ï¼close/open æå¨ï¼</td><td class="mid">ç§çº¦æå
ä¿è¿æ¥å¯ç¼è§£</td><td class="good">æ ¹æ²»ï¼å¯ä¸ææè
ï¼</td><td class="bad">ä¸è§£å³</td></tr> |
| | | <tr><td>è°è¯é¾åº¦</td><td class="good">ä½</td><td class="mid">å
æ ¸å¯¹è±¡é»ç</td><td class="good">ä½ï¼ä¸å¼ 表å
¨éæï¼SELECT å³ç°åºï¼</td><td class="mid">éåè¿ç¨èè°</td><td>â</td></tr> |
| | | <tr><td>ä¸ç°æä»£ç è¡æ¥</td><td class="mid">大æ¹</td><td class="mid">éæ°å¢æè·¯</td><td class="good">IResourceManager å®ç°å±æ¿æ¢ï¼ä¸å±é¶æ¹</td><td class="mid">Driver 屿å转å端/宿主端</td><td class="good">æ£äº¤å¤ç¨</td></tr> |
| | | </table> |
| | | |
| | | <!-- ================================================================= --> |
| | | <h2 id="s4">4. æ¨èç®æ æ¶æï¼å屿··åï¼ç§çº¦è¡¨ + 仲è£è§å + æé Brokerï¼</h2> |
| | | |
| | | <div class="mermaid"> |
| | | graph TB |
| | | subgraph L4["ä¸å±è°ç¨ï¼ä¿æä¸åï¼"] |
| | | TS["OpenTAP TestStep<br/>ï¼å
¨èªå¨ · IAutoDeviceLease ä½ç¨åï¼"] |
| | | DBG["DeviceDebug UI<br/>ï¼æå¨ç»´æ¤ · DebugSessionManagerï¼"] |
| | | end |
| | | subgraph L3["é¨é¢å± Aging.Infrastructure/Services"] |
| | | FAC["AutoDeviceFacade<br/>ï¼ç§çº¦ç³è¯·/å¿è·³/æ
æ æ ¡éªï¼"] |
| | | SVC["DeviceService<br/>ï¼å½ä»¤åæ´¾ + owner æ ¡éªå级为跨è¿ç¨ï¼"] |
| | | end |
| | | subgraph L2["仲è£å±ï¼æ¬æ¬¡æ ¸å¿æ¹é ï¼"] |
| | | LRM["LayeredResourceManager : IResourceManager"] |
| | | MEM["è¿ç¨å
å±ï¼SemaphoreSlim + å
åç¼å<br/>ï¼å¤ç¨ç°æ ResourceManager é»è¾ï¼"] |
| | | DBL["è·¨è¿ç¨å±ï¼DbLeaseStore<br/>device_lease 表 · BEGIN IMMEDIATE CAS"] |
| | | POL["仲è£çç¥å¼æï¼ä¼å
级/æ¢å /grace"] |
| | | LRM --> MEM & DBL & POL |
| | | end |
| | | subgraph L1["ç©çè¿æ¥å±ï¼Phase 3 æéï¼"] |
| | | OWN["æ¬è¿ç¨ç´è¿ï¼ç½å£ä»ªå¨ï¼SCPI/TCP/CANæ»çº¿æ¨¡æï¼<br/>ç§çº¦=é»è¾ç¬å ï¼å¥æéç§çº¦å¼å
³"] |
| | | BRK["DeviceBroker.exeï¼ä¸²å£/USB/CANå¡å¯ä¸ææè
<br/>å¤ç¨ ConnectionUtil.PipeServer/PipeClient"] |
| | | end |
| | | TS & DBG --> FAC --> SVC --> LRM |
| | | DBL --> SQLITE[("data.db<br/>device_lease 表<br/>WAL 模å¼")] |
| | | SVC --> OWN & BRK |
| | | </div> |
| | | |
| | | <h3>4.1 åå±èè´£ä¸å³çè§å</h3> |
| | | <table> |
| | | <tr><th>å±</th><th>è§£å³ä»ä¹</th><th>使¶å¯ç¨</th></tr> |
| | | <tr><td>å
åå±ï¼å·²æï¼</td><td>åè¿ç¨å¤çº¿ç¨ç»éãå¿«é失败</td><td class="good">å§ç»ï¼é¶ææ¬ï¼</td></tr> |
| | | <tr><td>DB ç§çº¦å±ï¼æ°å¢ï¼</td><td>è·¨è¿ç¨è¿è¡æ¶ä»²è£ãä¼å
级æ¢å ã审计ãå´©æºåæ¶</td><td class="good">Phase 1 ââ 䏻使å
¥</td></tr> |
| | | <tr><td>Broker å±ï¼æ°å¢ï¼</td><td>ç©ç奿ç¬å ã夿ºå
±äº«ãå½ä»¤éå</td><td class="mid">Phase 3 ââ ä»
å½åºç°ï¼â 串å£/USB é弿æ¬ä¸å¯æ¥å â¡ å¤æºå
±æµä¸å°æºä¸çè®¾å¤ â¢ åæ¶å¤ç¨è®¾å¤è¦æé</td></tr> |
| | | <tr><td>OpenTAP çæ</td><td>驱å¨ååï¼å
ï¼ãé
ç½®å
±äº«ï¼Bench æè·¯ï¼</td><td class="mid">ä¸ Phase 1/3 æ£äº¤å¹¶è¡æ¨è¿</td></tr> |
| | | </table> |
| | | |
| | | <!-- ================================================================= --> |
| | | <h2 id="s5">5. ç§çº¦å®æ´çå½å¨æï¼ç³è¯· / ç»æ / éæ¾ / è¶
æ¶æ¢å </h2> |
| | | |
| | | <h3>5.1 ç§çº¦ç¶ææº</h3> |
| | | <div class="mermaid"> |
| | | stateDiagram-v2 |
| | | [*] --> Free: device_lease æ è¡/已忶 |
| | | Free --> Active: Acquireï¼äºå¡CASæå<br/>generation++ åå
¥ ownerï¼ |
| | | Active --> Active: Heartbeat ç»æ<br/>ï¼extends expires_atï¼ |
| | | Active --> PendingHandover: æ´é«ä¼å
级ç³è¯·å°è¾¾<br/>ï¼Maintenance 请æ±ï¼å grace æªæ¢ï¼ |
| | | PendingHandover --> Released: ææè
ä¼é
让渡<br/>ï¼å®æå½å TestStep å Releaseï¼ |
| | | PendingHandover --> ForceReleased: grace è¶
æ¶<br/>ï¼è¯·æ±è
坿¢å generation++ï¼ |
| | | Active --> Expired: å¿è·³æï¼è¿ç¨å´©æº/æç½ï¼<br/>expires_at < DB now |
| | | Expired --> Free: åæ¶ï¼ä»»ä½ Acquire 顺带 DELETE<br/>+ åå° Sweep å
åºï¼ |
| | | Active --> Released: æ£å¸¸ Dispose/ReleaseReservation |
| | | Released --> Free |
| | | </div> |
| | | |
| | | <h3>5.2 ç³è¯· + æ¢å + æ
æ æç»æ¶åº</h3> |
| | | <div class="mermaid"> |
| | | sequenceDiagram |
| | | autonumber |
| | | participant P1 as å·¥ä½è¿ç¨1<br/>(Production ç§çº¦ææè
) |
| | | participant DB as device_lease 表<br/>(SQLite WAL) |
| | | participant HMI as å·¥ä½è¿ç¨2<br/>(Maintenance 请æ±è
) |
| | | participant DRV as DeviceService/é©±å¨ |
| | | |
| | | Note over P1,DB: ââ æ£å¸¸æç§ + å¿è·³ ââ |
| | | P1->>DB: Acquire CAN-001ï¼BEGIN IMMEDIATEâæ å²çªâINSERT gen=41ï¼ |
| | | DB-->>P1: lease(tokenA, gen41, expires=now+30s) |
| | | loop æ¯ 10sï¼TTL/3ï¼ |
| | | P1->>DB: Renew WHERE token=tokenA AND gen=41 |
| | | DB-->>P1: å½±åè¡æ°=1 â
expires 顺延 |
| | | end |
| | | P1->>DRV: ExecuteCommandAsync("OUTP ON") [æºå¸¦ gen41] |
| | | DRV->>DB: FenceCheck(gen41) â éè¿ â
|
| | | DRV-->>P1: OK |
| | | |
| | | Note over HMI,DB: ââ ç»´æ¤æ¨¡å¼æ¢å ââ |
| | | HMI->>DB: RequestMaintenance(CAN-001) |
| | | DB-->>HMI: å·²å ç¨ â å state=PendingHandover,<br/>grace_until=now+30s, è¿å"çå¾
让渡" |
| | | P1->>DB: ï¼ä¸ä¸æ¬¡å¿è·³åç° state=PendingHandoverï¼ |
| | | P1->>P1: 宿å½å TestStep â ä¸»å¨ Release |
| | | P1->>DB: Release(tokenA) â DELETE è¡ |
| | | HMI->>DB: 轮询/éç¥åéè¯ Acquire â æåï¼gen=42, Maintenanceï¼ |
| | | HMI->>HMI: DebugSessionManager è¿å
¥ MaintenanceActive |
| | | |
| | | Note over P1,DRV: ââ åµå°¸ææè
被æ
æ æ¦æª ââ |
| | | P1->>P1: ï¼å´©æºå¤æ´»/ç½ç»ååºåä»ä»¥ä¸ºèªå·±ææ gen41ï¼ |
| | | P1->>DRV: ExecuteCommandAsyncï¼æ§ tokenA gen41ï¼ |
| | | DRV->>DB: FenceCheck: 表å
gen=42 â 41 |
| | | DRV-->>P1: â LEASE_STALE â æ¬å°çæï¼ä¼è¯è½¬ RecoveryRequired |
| | | </div> |
| | | |
| | | <h3>5.3 æ ¸å¿ SQLï¼ååç³è¯·ï¼ä¸æ¬¡äºå¡å®æåæ¶+æ£æ¥+åå
¥ï¼</h3> |
| | | <pre><code>BEGIN IMMEDIATE; <span class="cmt">-- æ¿åéï¼è·¨è¿ç¨ä¸²è¡åå
¥å£ï¼SQLite WAL ä¸è¯»åä¸äºæ¥ï¼ååæéï¼</span> |
| | | |
| | | <span class="cmt">-- â é¡ºå¸¦åæ¶ææå·²è¿æç§çº¦ï¼æåæ¶ï¼æ éç¬ç«å®æ¤ä¹è½èªæï¼</span> |
| | | DELETE FROM device_lease |
| | | WHERE resource_key = @rk AND expires_at < datetime('now'); |
| | | |
| | | <span class="cmt">-- â¡ æ£æ¥å½åææå ç¨</span> |
| | | SELECT owner_id, owner_type, state, grace_until INTO @cur FROM device_lease WHERE resource_key = @rk; |
| | | |
| | | <span class="cmt">-- ⢠æ å ç¨ â æå
¥æ°ç§çº¦ï¼generation åå
¨å±åºï¼</span> |
| | | INSERT INTO device_lease(resource_key, owner_id, owner_type, token_id, generation, |
| | | machine_name, host_process_id, state, acquired_at, heartbeat_at, expires_at) |
| | | VALUES(@rk, @owner, @otype, @token, @gen, @machine, @pid, 0, |
| | | datetime('now'), datetime('now'), datetime('now', '+30 seconds')); |
| | | |
| | | <span class="cmt">-- ⣠æå ç¨ä¸è¯·æ±è
æ¯ Maintenance â ä¸ç´æ¥æ¢ï¼æ 记让渡çªå£</span> |
| | | UPDATE device_lease SET state = 1, grace_until = datetime('now','+30 seconds') |
| | | WHERE resource_key = @rk AND state = 0; |
| | | |
| | | COMMIT;</code></pre> |
| | | |
| | | <h3>5.4 ç»æï¼å¿è·³ï¼ä¸å¤±æå¤å®</h3> |
| | | <pre><code><span class="cmt">// AutoDeviceLease å
é¨ï¼TTL/3 卿宿¶å¨ï¼Phase 1 å³å®ç°ï¼</span> |
| | | <span class="kwd">var</span> affected = db.<span class="fn">ExecuteNonQuery</span>(<span class="str">@" |
| | | UPDATE device_lease |
| | | SET heartbeat_at = datetime('now'), |
| | | expires_at = datetime('now', '+30 seconds'), |
| | | state = CASE WHEN state = 1 THEN state ELSE 0 END <span class="cmt">-- ä¿ç让渡æ è®°</span> |
| | | WHERE resource_key = @rk AND token_id = @token AND generation = @gen"</span>); |
| | | |
| | | <span class="kwd">if</span> (affected == 0) { |
| | | <span class="cmt">// è¡ä¸å¨äºæ generation 已被è¶
è¶ â æå·²è¢«æ¢å /åæ¶ ââ æ¬å°ç«å³çæï¼</span> |
| | | <span class="cmt">// 1) 忢ä¸åä»»ä½å½ä»¤ 2) éæ¾ç©çè¿æ¥ 3) ä¼è¯æ è®° RecoveryRequired 4) 䏿¥ä¸æ¬¡åè¦</span> |
| | | <span class="fn">OnLeaseLost</span>(); |
| | | } |
| | | <span class="kwd">if</span> (db.<span class="fn">ReadState</span>() == PendingHandover && InStepBoundary) { |
| | | <span class="fn">Dispose</span>(); <span class="cmt">// ä¼é
让渡ï¼åªå¨ TestStep è¾¹çéæ¾ï¼ç»ä¸å¨ä¸æ¡å½ä»¤ä¸é´æ¾æ</span> |
| | | }</code></pre> |
| | | |
| | | <div class="highlight"><strong>䏿¡éå¾ï¼</strong>â æææ¶é´æ³ä¸å¾ç¨ <code>datetime('now')</code>ï¼DB æ¶éï¼ï¼å®¢æ·ç«¯æ¶é´ä»
ä½åèåï¼â¡ æ¯æ¡å½ä»¤ä¸ååå¿
é¡» <code>FenceCheck</code>ï¼ä¸è¡ç¹æ¥ï¼ææ¬â1msï¼ï¼â¢ 让渡/éæ¾åªåçå¨ TestStep è¾¹çï¼ä¿è¯è®¾å¤ä¸å¤äº"åæ¡æä»¤"ç¶æã</div> |
| | | |
| | | <!-- ================================================================= --> |
| | | <h2 id="s6">6. å
¨èªå¨ vs æå¨ç»´æ¤çäºæ¥ä»²è£è§å</h2> |
| | | |
| | | <p>ç®æ åºæ¯ï¼å·¥ç¨å¸æ£æå¼æºææ¥ CAN 线ï¼ç»´æ¤æ¨¡å¼ï¼ï¼å
¨èªå¨ç¨åºç»ä¸è½çªç¶ä¸å <code>OUTP ON</code>ãè§åæç¡®å®ä¹å¦ä¸ï¼çç¥å¼æéä¸å®ç°äºæ°å¢ <span class="path">Aging.Infrastructure/Core/LeaseArbiter.cs</span>ï¼ï¼</p> |
| | | |
| | | <h3>6.1 ä¼å
级ç©éµï¼è¡=å½åææè
ï¼å=æ°è¯·æ±è
ï¼</h3> |
| | | <table> |
| | | <tr><th></th><th>请æ±ï¼Productionï¼å
¨èªå¨ï¼</th><th>请æ±ï¼Maintenanceï¼æå¨ç»´æ¤ï¼</th><th>请æ±ï¼ReadOnlyï¼çæ§/çæ°æ®ï¼</th></tr> |
| | | <tr> |
| | | <td><strong>ææï¼Production</strong></td> |
| | | <td class="mid">æéï¼FIFO ææå·¥ä½ä¼å
级ï¼å¸¦è¶
æ¶ï¼</td> |
| | | <td class="mid"><strong>让渡æµç¨</strong>ï¼PendingHandover + grace 30sï¼è¶
æ¶æªè®©æ¸¡ â å
许强å + æ§ææè
æ
æ 失æ</td> |
| | | <td class="good">æ¾è¡ï¼ä¸å»ºç§çº¦ï¼èµ°æè·¯åªè¯»ï¼</td> |
| | | </tr> |
| | | <tr> |
| | | <td><strong>ææï¼Maintenance</strong></td> |
| | | <td class="bad"><strong>ç´æ¥æç»</strong>ï¼ResourceConflictExceptionï¼"æäººå¨ç»´æ¤"ï¼UI å¼¹çªåç¥å·¥ç¨å¸ï¼</td> |
| | | <td class="bad">æç»ï¼ç¬¬äºä¸ªäººä¹ä¸è®¸ç¢°ââä¸å°è®¾å¤åæ¶åªå
许ä¸ä¸ªç»´æ¤ä¼è¯ï¼å¤ç¨ç°æ OpenSession é夿£æ¥é»è¾ï¼</td> |
| | | <td class="good">æ¾è¡</td> |
| | | </tr> |
| | | <tr> |
| | | <td><strong>ææï¼ReadOnly</strong></td> |
| | | <td class="good">ç«å³æ¾è¡ï¼è¯»é䏿æéç¢ï¼</td> |
| | | <td class="good">ç«å³æ¾è¡</td> |
| | | <td class="good">æ¾è¡</td> |
| | | </tr> |
| | | </table> |
| | | |
| | | <div class="info"><strong>ä¸ç°æä»£ç çææ¥ç¹ï¼</strong><span class="path">DebugSessionManager.RequestMaintenance()</span> å·²ç»åäº <code>ReserveAsync</code> + æè· <code>ResourceConflictException</code> â åªéæå
åçæ¢æ Layered çå³èªå¨è·å¾è·¨è¿ç¨æç»ï¼<span class="path">ValidateCommand()</span> å·²æ"MaintenanceActive + ValidateOwner"å鿣æ¥ï¼æ <code>ValidateOwner</code> æ¹ä¸ºæ¥ DB æ
æ ï¼å°±å¾å°<strong>"äººå¨æ¥çº¿æ¶ç¨åºè¿å½ä»¤é½åä¸åº"</strong>ç硬ä¿è¯ââå³ä½¿èªå¨ç¨åºé»è¾æ bugã</div> |
| | | |
| | | <h3>6.2 ç»´æ¤æ¨¡å¼éåºä¸èªå¨æµç¨æ¢å¤</h3> |
| | | <ul> |
| | | <li>å·¥ç¨å¸éåºç»´æ¤ï¼<span class="path">ExitMaintenanceBtn_Click â CloseSession</span>ï¼ï¼éæ¾è¡ + <code>UPDATE debug_session SET state=Closed</code>ï¼ç°æé»è¾ä¿æï¼ï¼</li> |
| | | <li>èªå¨å·¥ä½å¯¹ PendingHandover çæç¥å»¶è¿ ⤠å¿è·³å¨æï¼10sï¼ï¼èåé¿æ¥éª¤ï¼å°æ¶çº§ï¼ä¸éç¨æ¢å ââ对 <code>grace</code> å
æªå®æçæ¥éª¤ï¼çç¥æ¹ä¸º<strong>"æç»è¿å
¥ï¼å·²è¿è¡ä¸ææ"</strong>ï¼å¯é
ç½®ï¼å®å
¨ç±»å·¥ä½éæ©å¼ºå +设å¤ç´§æ¥å®å
¨æï¼äº§è½ç±»å·¥ä½éæ©æéçå¾
ï¼ï¼</li> |
| | | <li>HMI 侧建议ï¼è®¾å¤è¢«èªå¨å ç¨æ¶ï¼ç»´æ¤ç³è¯·æ¾ç¤º"å ç¨è
:Station-3 · å·²è¿è¡ 01:23:45 · é¢è®¡å©ä½ 02:10"ï¼æ°æ®å
¨å¨ <code>device_lease</code> + <code>debug_session</code>ï¼ä¸æ¡ JOIN å³å¯ï¼ã</li> |
| | | </ul> |
| | | |
| | | <h3>6.3 审计éç¯</h3> |
| | | <ul> |
| | | <li><code>device_lease</code> 表æ¬èº«å°±æ¯"å ç¨åå²"ï¼Release æ¶æ¹å <code>released_at</code> åä¿ç 7 å¤©ï¼æå表ï¼å½å + 彿¡£ï¼ï¼</li> |
| | | <li>æ¯æ¡ç» <code>DeviceService</code> çå½ä»¤ç»§ç»å <code>debug_operation</code>ï¼æ°å¢ä¸¤å <code>owner_type, lease_generation</code>ï¼å³å¯åç"è¿æ¡ OUTP ON æ¯åªä¸ªå·¥ä½ãåªä¸ä»£ææè
åç"ââäºæ
追溯éç¯ã</li> |
| | | </ul> |
| | | |
| | | <!-- ================================================================= --> |
| | | <h2 id="s7">7. å¼å¸¸åºæ¯å¤çï¼æ»é / å¤å¿é / æ¶é / å¹ç</h2> |
| | | |
| | | <table> |
| | | <tr><th>å¼å¸¸åºæ¯</th><th>æå </th><th>对ç</th><th>æºå¶è½ç¹</th></tr> |
| | | <tr> |
| | | <td><strong>å¤è®¾å¤æ»é</strong>ï¼å·¥ä½Aé{çµæº}ç{CAN}ï¼Bååºï¼</td> |
| | | <td>ç»ç³è¯·å é顺åºä¸ä¸è´</td> |
| | | <td class="good">â å
¨å±å¼ºå¶æ <code>resource_key</code> åå
¸åºç³è¯·ï¼AcquireGroupAsync å
鍿åºï¼<br>â¡ äºå¡å
"å
¨ææå
¨æ "ï¼ä»»ä¸å²çªåæ´ä½åæ»éè¯ï¼<strong>wait-die</strong>ï¼æ°è¯·æ±è
éé¿éè¯ï¼èææè
ä¸è¢«é¥¿æ»ï¼<br>⢠ç»ç³è¯·æ»è¶
æ¶ï¼é»è®¤ 60sï¼</td> |
| | | <td>AutoDeviceFacade æ°å¢ <code>AcquireGroupAsync</code></td> |
| | | </tr> |
| | | <tr> |
| | | <td><strong>è¿ç¨å´©æº â å¤å¿é</strong></td> |
| | | <td>kill / BSOD / æçµï¼Release 没è·</td> |
| | | <td class="good">â TTL 30s èªå¨è¿æï¼ä»»ä½ Acquire 顺带 DELETE è¿æè¡ = æåæ¶ï¼<br>â¡ åæºçé¨çï¼lease è®°å½ <code>machine_name + host_process_id</code>ï¼æ¬æºæ°è¿ç¨å¯å¨æ¶æä¸¾åæ´» PID æååæ¶ï¼ä¸ç¨ç TTLï¼<br>⢠HMI"强å¶éæ¾"æé®ï¼é ADMIN è§è²ï¼å审计 note="force_release"ï¼</td> |
| | | <td>device_lease å + Bootstrapper å¯å¨èªæ£</td> |
| | | </tr> |
| | | <tr> |
| | | <td><strong>åµå°¸ææè
</strong>ï¼ç½ç»ååº/GCåé¡¿å夿´»ç»§ç»åå½ä»¤ï¼</td> |
| | | <td>è¿ç¨æ´»çä½è¢«æ¢å è¿</td> |
| | | <td class="good">æ
æ 令çï¼å½ä»¤å¿
é¡»æºå¸¦ <code>(token_id, generation)</code>ï¼DB ä¸ generation å·²å â 驱å¨å
¥å£ç´æ¥æç»ï¼Â§5.2 æ¶åº 15-17 æ¥ï¼ã<strong>è¿æ¯æ¯ TTL æ´æ ¹æ¬çå®å
¨ç½</strong>ââTTL 管"è°è½æ¿"ï¼æ
æ 管"æ¿è¿çäººè¿æåä¸è½ç¢°"ã</td> |
| | | <td>DeviceService.ExecuteCommandAsync å
¥å£ FenceCheck</td> |
| | | </tr> |
| | | <tr> |
| | | <td><strong>æ¶éä¸ä¸è´</strong>ï¼å¤æº NTP æ¼ç§»ï¼</td> |
| | | <td>expires ç¨æ¬å°æ¶é´æ¯è¾ä¼è¯¯å¤</td> |
| | | <td class="good">â å
¨é¨æ¶é´å¤å®ç¨ DB ä¾§æ¶éï¼<code>datetime('now')</code>ï¼ï¼å®¢æ·ç«¯åªä¼ ç¸å¯¹ TTLï¼"+30 seconds"ï¼ï¼ä»ä¸ä¼ ç»å¯¹æ¶é´<br>â¡ Phase 3 Broker ååç»ä¸ç¨ Broker æ¶é<br>â¢ å¤æº + å
±äº« DB åºæ¯è¦æ± NTPï¼è¿ç»´é¡¹ï¼è¯¯å·®<1s å³å¯ï¼</td> |
| | | <td>SQL åæ³çº¦æï¼Â§5.3 å
¨é¨åè§ï¼</td> |
| | | </tr> |
| | | <tr> |
| | | <td><strong>å¿è·³çº¿ç¨è¢« UI å¡é¡¿é¥¿æ»</strong></td> |
| | | <td>WPF 主线ç¨é»å¡ / è¿ç¨åæ»</td> |
| | | <td class="good">å¿è·³ç¨<strong>ç¬ç«åå°çº¿ç¨</strong>ï¼é UI Dispatcherï¼ï¼ä¸å¿è·³å¤±è´¥è¿ç» 2 æ¬¡å³æ¬å°çæââå®å¯è¯¯åä¸å¯æ¼å</td> |
| | | <td>AutoDeviceLease å
Timer å®ç°</td> |
| | | </tr> |
| | | <tr> |
| | | <td><strong>éè¯ä¸å¹ç</strong>ï¼è¶
æ¶åéå"OUTP ON"æ¯å®å
¨çï¼éå"计æ°å¨+1"ä¸å®å
¨ï¼</td> |
| | | <td>ç½ç»/DB æå¨èªå¨éè¯</td> |
| | | <td class="good">â å½ä»¤å级ï¼è®¾å¤å±å¯å®å
¨éåï¼è®¾ç½®å SET xx=yy â
å¹çï¼ç´¯å /触åå â ï¸ ç¦æ¢èªå¨éè¯ï¼ä¸æï¼<br>â¡ <code>debug_operation.operation_id</code> å·²æ¯å®¢æ·ç«¯çæ GUID â ä½ä¸ºå¹çé® INSERT OR IGNOREï¼éå¤å°è¾¾ä¸äºæ¬¡æ§è¡<br>⢠èååºæ¯ç SCPI/CAN åå½ä»¤å¤ä¸ºè®¾ç½®åï¼å¤©ç¶å¹çå好ï¼ä½å¿
é¡»å¨é©±å¨æ¥å£ä¸ç¨ <code>CommandSemantics.Idempotent</code> æ¾å¼å£°æ</td> |
| | | <td>DeviceCommandResult + 驱å¨è£
饰å¨</td> |
| | | </tr> |
| | | <tr> |
| | | <td><strong>SQLite åç«äº</strong>ï¼N ä¸ªå·¥ä½ Ã å¿è·³+ç³è¯·éä¸åä¸è¡åºåï¼</td> |
| | | <td>åé串è¡å</td> |
| | | <td class="good">WAL æ¨¡å¼ + busy_timeout=5000 + äºå¡åªå
ä½ 2~3 æ¡ç¹åï¼<5msï¼ï¼èåå½ä»¤èå¥ï¼ç§çº§ï¼ä¸å¹¶ååååå¯å¿½ç¥ãçå°é«é¢ï¼>100 å/ç§ï¼åè¿æå¡ç«¯ DB</td> |
| | | <td>è¿æ¥ä¸² PRAGMAï¼è§ §9 DbLeaseStoreï¼</td> |
| | | </tr> |
| | | <tr> |
| | | <td><strong>æ¢å 飿´</strong>ï¼ä¸¤ä¸ªé«ä¼è¯·æ±åæ¶å°è¾¾ï¼</td> |
| | | <td>å¹¶å PendingHandover æ è®°</td> |
| | | <td class="good">仲è£å¨ <code>BEGIN IMMEDIATE</code> äºå¡å
串è¡å¤å®ï¼ç¬¬äºä¸ªç»´æ¤è¯·æ±ä¼çå°"å·²æç»´æ¤æé"è被åç¥æéä½ç½®ï¼ä¸äº§çå grace ç«äº</td> |
| | | <td>äºå¡å¤©ç¶è¦ç</td> |
| | | </tr> |
| | | </table> |
| | | |
| | | <!-- ================================================================= --> |
| | | <h2 id="s8">8. ç¬å or åæ¶å¤ç¨ï¼è®¾å¤åç»ä¸ Slot ç»å®çç¥</h2> |
| | | |
| | | <h3>8.1 设å¤è®¿é®æ¨¡å¼ï¼æ°å¢åï¼æ³¨å页å¯é
ï¼</h3> |
| | | <table> |
| | | <tr><th>模å¼</th><th>è¯ä¹</th><th>ç§çº¦å½¢æ</th><th>å
¸å设å¤ï¼æ¬é¡¹ç®ï¼</th></tr> |
| | | <tr> |
| | | <td><code>Exclusive</code> ç¬å </td> |
| | | <td>ä¸ä¸ªå·¥ä½å
¨ç¨ææï¼æµè¯æé´å«äººç¢°ä¸å°</td> |
| | | <td>æ´æ¥éª¤çº§é¿ç§çº¦ï¼TTL é å¿è·³ç»´ææ°å°æ¶ï¼</td> |
| | | <td>å·¥ä½ä¸ç¨çµæºãDUT ä¸ç¨ CAN å¡éé</td> |
| | | </tr> |
| | | <tr> |
| | | <td><code>TimeShared</code> 忶䏲è¡</td> |
| | | <td>夿¡å½ä»¤æéè¿è®¾å¤ï¼æ¯æ¡åå</td> |
| | | <td>å½ä»¤çº§çç§çº¦ï¼ç§çº§ï¼æ Broker éå</td> |
| | | <td>å
±äº« DAQ 读æ°ãå
¬ç¨ä¸ç¨è¡¨</td> |
| | | </tr> |
| | | <tr> |
| | | <td><code>SharedRead</code> å
±äº«è¯»+ç¬å å</td> |
| | | <td>çæ§éä¾¿è¯»ï¼æè·¯ï¼ï¼åå¿
é¡»æ¢ç§çº¦</td> |
| | | <td>读ä¸èµ°ä»²è£ï¼å=Exclusive ç§çº¦</td> |
| | | <td>温箱ï¼ç¶æäººäººå¯çï¼è®¾æ¸©å¿
é¡»ç¬å ï¼ãCAN æ»çº¿çå¬</td> |
| | | </tr> |
| | | </table> |
| | | |
| | | <h3>8.2 å³çè§åï¼æ°å¢ <code>DeviceDefinition.access_mode</code> åï¼æ³¨å页䏿鿩ï¼</h3> |
| | | <div class="card"> |
| | | <b>ä¸é®ï¼</b>"两个工ä½<strong>åæ¶</strong>ç¨è¿å°è®¾å¤ï¼ç©çä¸/åè®®ä¸ä¼ä¸ä¼äºç¸å¹²æ°ï¼"<br> |
| | | <b>ä¼</b>ï¼ä¸²å£æä»¤äº¤åãçµæºè¢«æ¹åï¼â <code>Exclusive</code>ï¼<br> |
| | | <b>ä¸ä¼ä½è¯ä¹ä¼ä¹±</b>ï¼ä¸ç¨è¡¨ A è¯»æ°æ¯ B 触åä¸äº§ççï¼â <code>TimeShared</code>ï¼ä¸²è¡éåï¼ï¼<br> |
| | | <b>读æ 害ãåæå®³</b>ï¼æ¸©ç®±ç¶æå¹¿æï¼â <code>SharedRead</code>ã<br> |
| | | <b>夿®æ¥æºï¼</b>设å¤ä¼ è¾å±ç±»å + åè®®æ¯å¦æ¯æä¼è¯é离ãCAN å¡é»è®¤ Exclusiveï¼éé级å¯ç»åï¼ï¼TCP SCPI ç仪å¨è¿æ¥æ°éå¶ï¼å¤æ° DMM åªå
许 1 个 socket â å®è´¨ Exclusiveï¼ã |
| | | </div> |
| | | |
| | | <h3>8.3 å·¥ä½ â 设å¤åç»ï¼ç»å®å° Slot ä½ç³»</h3> |
| | | <div class="mermaid"> |
| | | graph LR |
| | | subgraph å°æ¶["ç©çå°æ¶"] |
| | | S1["Slot-Aï¼å·¥ä½1ï¼"] --- S2["Slot-Bï¼å·¥ä½2ï¼"] |
| | | P1["PS-001 ä¸ç¨çµæº"] --- S1 |
| | | C1["CAN-001 å¡ CH0"] --- S1 |
| | | C2["CAN-002 å¡ CH1"] --- S2 |
| | | T1["CHAMBER-01 å
±äº«æ¸©ç®±"] --- S1 & S2 |
| | | end |
| | | subgraph æ°æ®["data.db æ å°ï¼å·²æè¡¨ + æ°åï¼"] |
| | | M1["SlotDeviceMapping<br/>SlotId â DeviceId+ChannelId"] |
| | | G1["æ°å¢ device_group:<br/>group_key â {resource_keys}<br/>access_mode æè®¾å¤å"] |
| | | end |
| | | </div> |
| | | |
| | | <ul> |
| | | <li><strong>å¤ç¨ç°æ <span class="path">SlotDeviceMapping</span> 表</strong>ï¼å·¥ä½èº«ä»½ = <code>SlotId</code>ãå·¥ä½è¿ç¨å¯å¨åæ°å¸¦ SlotId â ç»ç§çº¦èªå¨å±å¼ä¸ºè¯¥ Slot ç»å®çå
¨é¨è®¾å¤ resource_key åè¡¨ï¼æåå
¸åºç³è¯·ï¼ï¼</li> |
| | | <li><strong>ç»ç³è¯·ååå</strong>ï¼æ°å¢ <code>AcquireGroupAsync(groupKey, ...)</code>ï¼æ¥ <code>device_group</code>ï¼æå³æ¶ JOIN SlotDeviceMappingï¼â æåº â åäºå¡éå° INSERTï¼ä»»ä¸å²çªæ´ä½åæ» â é¿å
"å äºä¸å"çåæ»ç¶æï¼</li> |
| | | <li><strong>å
±äº«è®¾å¤ä¸è¿ç»</strong>ï¼<code>CHAMBER-01</code> è¿ç±»è·¨ Slot 设å¤å¨ <code>DeviceDefinition.access_mode</code> æ TimeShared/SharedReadï¼ç»ç³è¯·æ¶è·³è¿ï¼å½ä»¤æ§è¡æ¶ææ¢çç§çº¦ï¼</li> |
| | | <li><strong>CAN å¤å·¥ä½å
±å¡</strong>ï¼resource key ç»åå° <code>CAN_CARD01:CH2</code>ââ<code>ResourceKey</code> æ¬æ¥å°±æ¯æ Channelï¼è§ <span class="path">Contracts/ResourceKey.cs</span>ï¼ï¼CAN 帧 ID 级åç»åå¯ç¨ <code>resource_type='CAN_FRAME'</code> + channel=帧段ï¼Broker é¶æ®µå®ç°å½ä»¤çº§ä¸²è¡åæ¶å¤ç¨ï¼ã</li> |
| | | </ul> |
| | | |
| | | <!-- ================================================================= --> |
| | | <h2 id="s9">9. æ¬ä»åºæ¹é æ¸
åï¼å
·ä½å°æä»¶ï¼</h2> |
| | | |
| | | <h3>9.1 æ°æ®åº DDLï¼æ°å¢å° <span class="path">Plugin.DeviceConfig/Model/DeviceConfigModel.cs</span> InitDatabase ç sqls å表ï¼</h3> |
| | | <pre><code><span class="cmt">-- â è·¨è¿ç¨ç§çº¦è¡¨ï¼æ ¸å¿æ°è¡¨ï¼</span> |
| | | CREATE TABLE IF NOT EXISTS device_lease ( |
| | | resource_key TEXT PRIMARY KEY, <span class="cmt">-- 'CAN-001:Generic' ä¸ ResourceKey.ToString() ä¸è´</span> |
| | | owner_id TEXT NOT NULL, <span class="cmt">-- 'Station3.Run20261103' å·¥ä½å¯è¯»æ è¯</span> |
| | | owner_type INTEGER NOT NULL, <span class="cmt">-- 0=Production 1=Maintenance 2=ReadOnly</span> |
| | | token_id TEXT NOT NULL, <span class="cmt">-- ResourceOwnerToken.TokenId</span> |
| | | generation INTEGER NOT NULL, <span class="cmt">-- æ
æ 令çï¼æ¯æ¬¡æåç³è¯· +1ï¼å
¨å±å max+1ï¼</span> |
| | | machine_name TEXT NOT NULL DEFAULT '', |
| | | host_process_id INTEGER NOT NULL DEFAULT 0, |
| | | slot_id TEXT, <span class="cmt">-- å
³èå·¥ä½ Slotï¼ç»å®¡è®¡ç¨ï¼</span> |
| | | state INTEGER NOT NULL DEFAULT 0, <span class="cmt">-- 0=Active 1=PendingHandover</span> |
| | | acquired_at TEXT NOT NULL, |
| | | heartbeat_at TEXT NOT NULL, |
| | | expires_at TEXT NOT NULL, <span class="cmt">-- å
¨é¨ç± DB datetime('now') çæ</span> |
| | | grace_until TEXT, |
| | | note TEXT DEFAULT '' |
| | | ); |
| | | CREATE INDEX IF NOT EXISTS idx_lease_expire ON device_lease(expires_at); |
| | | |
| | | <span class="cmt">-- ⡠设å¤è®¿é®æ¨¡å¼ï¼ç°æè¡¨å åï¼èåºå¹çè¿ç§»ï¼</span> |
| | | ALTER TABLE DeviceDefinition ADD COLUMN access_mode INTEGER NOT NULL DEFAULT 0; |
| | | <span class="cmt">-- 0=Exclusive 1=TimeShared 2=SharedRead</span> |
| | | |
| | | <span class="cmt">-- ⢠工ä½è®¾å¤ç»ï¼ç»ç§çº¦çå±å¼ä¾æ®ï¼ä¹å¯ä¸å»ºè¡¨ï¼è¿è¡æ¶ JOIN SlotDeviceMappingï¼</span> |
| | | CREATE TABLE IF NOT EXISTS device_group ( |
| | | group_key TEXT PRIMARY KEY, <span class="cmt">-- = SlotId æèªå®ä¹</span> |
| | | resource_key TEXT NOT NULL, |
| | | order_hint INTEGER DEFAULT 0, |
| | | PRIMARY KEY (group_key, resource_key) |
| | | ); |
| | | |
| | | <span class="cmt">-- ⣠debug_session å 3 åï¼ä¼è¯âç§çº¦èå¨å¯è§åï¼</span> |
| | | ALTER TABLE debug_session ADD COLUMN lease_generation INTEGER; |
| | | ALTER TABLE debug_session ADD COLUMN lease_owner_type INTEGER; |
| | | ALTER TABLE debug_session ADD COLUMN heartbeat_at TEXT; |
| | | |
| | | <span class="cmt">-- ⤠debug_operation å 2 åï¼å½ä»¤çº§è¿½æº¯ï¼</span> |
| | | ALTER TABLE debug_operation ADD COLUMN lease_generation INTEGER; |
| | | ALTER TABLE debug_operation ADD COLUMN idempotency_key TEXT; <span class="cmt">-- å¹çéè¯å»é</span> |
| | | CREATE UNIQUE INDEX IF NOT EXISTS idx_op_dedup ON debug_operation(idempotency_key) WHERE idempotency_key != '';</code></pre> |
| | | |
| | | <h3>9.2 æ¥å£ä¸å®ç°æ¹å¨</h3> |
| | | <table> |
| | | <tr><th>æä»¶</th><th>æ¹å¨ç±»å</th><th>å
容</th></tr> |
| | | <tr> |
| | | <td><span class="path">Aging.Infrastructure/Contracts/IResourceManager.cs</span></td> |
| | | <td>æ©å±ï¼ååå
¼å®¹ï¼</td> |
| | | <td>æ°å¢ 3 ä¸ªæ¹æ³ï¼é»è®¤å®ç°å§æç°æè¯ä¹ï¼<br> |
| | | <code>Task<bool> RenewAsync(ResourceOwnerToken, ResourceKey, int ttlSeconds, CancellationToken)</code><br> |
| | | <code>(bool valid, string? holderInfo, int? graceSeconds) ProbeConflict(ResourceKey)</code> <span class="cmt">// UI æ¾ç¤º"被è°å ç¨"</span><br> |
| | | <code>Task<GroupLeaseHandle> AcquireGroupAsync(string groupKey, ResourceOwnerToken owner, CancellationToken ct)</code></td> |
| | | </tr> |
| | | <tr> |
| | | <td><span class="path">Aging.Infrastructure/Core/DbLeaseStore.cs</span> â
æ°å»º</td> |
| | | <td>æ°å¢</td> |
| | | <td>§5.3/§5.4 ç SQL å°è£
ï¼WAL/busy_timeout PRAGMAï¼æåæ¶ï¼åæº PID çé¨çã约 250 è¡</td> |
| | | </tr> |
| | | <tr> |
| | | <td><span class="path">Aging.Infrastructure/Core/ResourceManager.cs</span></td> |
| | | <td>æ¹é 为ç»å</td> |
| | | <td>ä¿çå
ååå
¸ + SemaphoreSlimï¼å¿«éè·¯å¾ï¼ï¼é¢çº¦/æ ¡éªè½¬å <code>DbLeaseStore</code>ï¼ç¦»çº¿æ¨¡å¼ï¼DB ä¸å¯è¾¾ï¼é级为纯å
å + æ¯ 5s éè¿å¹¶å¨éè¿åæ
æ èªæ£</td> |
| | | </tr> |
| | | <tr> |
| | | <td><span class="path">Aging.Infrastructure/Core/LeaseArbiter.cs</span> â
æ°å»º</td> |
| | | <td>æ°å¢</td> |
| | | <td>§6.1 ä¼å
级ç©éµççç¥å¼æï¼è®©æ¸¡/æç»/æéå¤å®ï¼çç¥åæ°ï¼graceãæ¢å å¼å
³ï¼è¿é
ç½®</td> |
| | | </tr> |
| | | <tr> |
| | | <td><span class="path">Aging.Infrastructure/Services/AutoDeviceFacade.cs</span></td> |
| | | <td>å¢å¼º</td> |
| | | <td>â <code>ReserveCoreAsync</code> ç owner æ è¯ä»éæº Guid æ¹ä¸ºå¯é
ç½® <code>StationGlobals.StationId</code>ï¼å¤æº/å¤å·¥ä½å¯è¯»æ§ï¼ï¼â¡ <code>AutoDeviceLease</code> æé 彿°å¯å¨åå°å¿è·³ Timerï¼TTL/3ï¼ï¼Dispose 忢ï¼â¢ æè· PendingHandover â <code>TryYieldAtBoundary()</code></td> |
| | | </tr> |
| | | <tr> |
| | | <td><span class="path">Aging.Infrastructure/Services/DeviceService.cs</span></td> |
| | | <td>å¢å¼º</td> |
| | | <td><code>ValidateOwner</code> å级为 DB æ
æ æ ¡éªï¼æ¥ generation å¹é
ï¼ï¼ä¸å¹é
è¿å <code>ErrorCode="LEASE_STALE"</code> ç»æå失败ï¼ä¸æè£¸å¼å¸¸</td> |
| | | </tr> |
| | | <tr> |
| | | <td><span class="path">Aging.Infrastructure/Drivers/DriverFactory.cs</span> + å驱å¨</td> |
| | | <td>Phase 3</td> |
| | | <td>æ°å¢ <code>transport=="CAN-REMOTE"</code> ç代çå驱å¨ï¼æå½ä»¤åºåå为 Broker 请æ±ï¼ï¼ç°æç´è¿é©±å¨ä¸å¨ã<code>IBrokeredTransport</code> æ¥å£å®ä¹äº Contracts</td> |
| | | </tr> |
| | | <tr> |
| | | <td><span class="path">Plugin.DeviceDebug/Model/DebugSessionManager.cs</span></td> |
| | | <td>å¾®è°</td> |
| | | <td><code>RequestMaintenance</code> å¤ç <code>PendingHandover</code>ï¼è½¬å¼æ¥çå¾
+ UI åè°"çå¾
å·¥ä½è®©æ¸¡ï¼å©ä½ X ç§"ï¼ï¼å²çªå¼å¸¸ message å·²å«å ç¨è
â ç´æ¥ç» ToastHelper</td> |
| | | </tr> |
| | | <tr> |
| | | <td><span class="path">Plugin.DeviceDebug/Model/DeviceDebugModel.cs</span></td> |
| | | <td>å¾®è°</td> |
| | | <td>debug_session æ°å¢ååå
¥ï¼å¯å¨æ¶ <code>SELECT ... WHERE state NOT IN (Closed) AND heartbeatè¿æ</code> åå¤å¿ä¼è¯åæ¶ï¼ç½® Faultedï¼</td> |
| | | </tr> |
| | | <tr> |
| | | <td><span class="path">Plugin.DeviceConfig/Model/DeviceConfigModel.cs</span></td> |
| | | <td>DDL</td> |
| | | <td>§9.1 ç建表/å åï¼å¹çï¼IF NOT EXISTS / try-catch ALTERï¼ï¼<span class="path">DeviceEditModal.xaml(.cs)</span> å¢å access_mode 䏿</td> |
| | | </tr> |
| | | <tr> |
| | | <td><span class="path">Aging.Infrastructure/InfrastructureBootstrapper.cs</span></td> |
| | | <td>é
ç½®ç¹</td> |
| | | <td>注å <code>LayeredResourceManager</code>ï¼å¸¦ dbPathï¼æ¿ä»£çº¯å
åçï¼è¯» <code>StationId</code>ï¼å¯é注å BrokerClient ä¼ è¾</td> |
| | | </tr> |
| | | <tr> |
| | | <td>â
æ°å»º <span class="path">DeviceBroker/</span> æ§å¶å°å·¥ç¨ï¼Phase 3ï¼</span></td> |
| | | <td>æ°å¢</td> |
| | | <td>å¼ç¨ ConnectionUtil ç°æ PipeServerï¼åè®®ï¼<code>{op, deviceId, channel, payload, token, gen, idemKey}</code>ï¼å
é¨æè®¾å¤éå + å¤ç¨ DriverFactory å建çå®é©±å¨ï¼å´©æºçé¨çï¼ç¶è¿ç¨å¥æå¤±èèªå¨éåºäº¤ HMI æèµ·ï¼</td> |
| | | </tr> |
| | | </table> |
| | | |
| | | <h3>9.3 å
³é®æ¥å£ç¾åï¼Phase 1 æ ¸å¿ä»£ç 示ä¾ï¼</h3> |
| | | <pre><code><span class="cmt">// DbLeaseStore ââ ååç³è¯·ï¼å¯¹åº §5.3 SQLï¼</span> |
| | | <span class="kwd">public sealed class</span> DbLeaseStore |
| | | { |
| | | <span class="kwd">public</span> DbLeaseStore(<span class="kwd">string</span> dataDbPath) { <span class="cmt">/* PRAGMA journal_mode=WAL; busy_timeout=5000 */</span> } |
| | | |
| | | <span class="kwd">public enum</span> AcquireResult { Acquired, Renewed, QueuedHandover, RejectedMaintenanceHeld, RejectedByProductionHeld } |
| | | |
| | | <span class="kwd">public</span> AcquireResult TryAcquire(<span class="kwd">string</span> resourceKey, ResourceOwnerToken owner, OwnerType type, |
| | | <span class="kwd">string</span> machine, <span class="kwd">int</span> pid, <span class="kwd">string</span>? slotId, <span class="kwd">int</span> ttlSeconds); |
| | | <span class="kwd">public bool</span> Renew(<span class="kwd">string</span> resourceKey, <span class="kwd">string</span> tokenId, <span class="kwd">long</span> generation, <span class="kwd">int</span> ttlSeconds); |
| | | <span class="kwd">public bool</span> Release(<span class="kwd">string</span> resourceKey, <span class="kwd">string</span> tokenId); |
| | | <span class="kwd">public long</span> CurrentGeneration(<span class="kwd">string</span> resourceKey); <span class="cmt">// FenceCheck ç¨</span> |
| | | <span class="kwd">public int</span> SweepExpired(); <span class="cmt">// æåæ¶å
åº</span> |
| | | <span class="kwd">public</span> (bool valid, <span class="kwd">string</span>? holder, <span class="kwd">int</span>? graceSec) ProbeConflict(<span class="kwd">string</span> resourceKey); |
| | | } |
| | | |
| | | <span class="cmt">// AutoDeviceLease å¿è·³ï¼Phase 1ï¼ââç¬ç«çº¿ç¨ï¼UI å¡é¡¿ä¸å½±å</span> |
| | | _beacon = <span class="kwd">new</span> Timer(_ => { |
| | | <span class="kwd">try</span> { |
| | | <span class="kwd">if</span> (!_store.Renew(DeviceId, _owner.TokenId, _owner.Generation, _ttl)) |
| | | { LeaseLost?.Invoke(<span class="kwd">this</span>, EventArgs.Empty); <span class="kwd">return</span>; } |
| | | <span class="kwd">if</span> (_store.IsPendingHandover(DeviceId)) _handoverTcs.TrySetResult(<span class="kwd">true</span>); |
| | | _failCount = 0; |
| | | } <span class="kwd">catch</span> { <span class="kwd">if</span> (++_failCount >= 2) LeaseLost?.Invoke(<span class="kwd">this</span>, EventArgs.Empty); } |
| | | }, <span class="kwd">null</span>, _ttlMs/3, _ttlMs/3); |
| | | |
| | | <span class="cmt">// TestStep åºç±»å¨æ¥éª¤è¾¹ç让渡ï¼éææµè¯æ¼ç¤ºç¨æ³ï¼</span> |
| | | <span class="kwd">if</span> (lease.HandoverRequested) lease.Dispose(); <span class="cmt">// æ¥éª¤ç»æç¹æ£æ¥ï¼ç»ä¸å¨å½ä»¤ä¸éæ¾æ</span></code></pre> |
| | | |
| | | <!-- ================================================================= --> |
| | | <h2 id="s10">10. æµè¯è¦ç¹</h2> |
| | | |
| | | <h3>10.1 åå
ï¼<span class="path">HMI.UnitTest</span> ææ°å»º xUnitï¼</h3> |
| | | <table> |
| | | <tr><th>ç¨ä¾</th><th>éªè¯ç¹</th></tr> |
| | | <tr><td>Acquire å¹¶å 20 线ç¨å key</td><td>æ°å¥½ 1 个 Acquiredï¼å
¶ä½ Rejected/Renewedï¼å tokenï¼ï¼generation ä¸¥æ ¼ +1 æ è·³åç«äº</td></tr> |
| | | <tr><td>Renew ç¨æ§ generation</td><td>è¿å falseï¼æ
æ è¯ä¹ï¼</td></tr> |
| | | <tr><td>TTL è¿æ â ç´æ¥ Acquire è¿æææè
ç key</td><td>æåæ¶çæï¼å
DELETE è¿æè¡åæå
¥æå</td></tr> |
| | | <tr><td>仲è£ç©éµå
¨éåï¼3Ã3 ææÃ请æ±ï¼</td><td>§6.1 æ¯ä¸ªæ ¼åä¸ä¸ªæè¨</td></tr> |
| | | <tr><td>ç»ç³è¯·é¨åå²çª</td><td>å
¨åæ»ï¼ä¸çä¸"å äºä¸å"çè¡</td></tr> |
| | | </table> |
| | | |
| | | <h3>10.2 å¤è¿ç¨éæï¼å©ç¨ <span class="path">Plugin.IntegrationTest</span> æ©å±ï¼éç¹ï¼</h3> |
| | | <div class="card"> |
| | | å¨"å
¨èªå¨æµè¯" Tab å¢å <strong>ãå¤è¿ç¨ååç¨ä¾ã</strong>æé®ï¼ |
| | | <pre><code><span class="cmt">// 伪代ç ï¼ä¸»è¿ç¨ fork N 个èªèº« --station-worker 模å¼çåè¿ç¨</span> |
| | | <span class="kwd">for</span> (<span class="kwd">int</span> s = 0; s < 4; s++) |
| | | Process.Start(exe, $<span class="str">"--worker {s} --device CAN-001 --loops 200"</span>); |
| | | |
| | | <span class="cmt">// å worker é»è¾ï¼å¾ªç¯ [TryAcquire â åä¸å¸§ â æ ¡éª â Dispose]ï¼ç»è®¡æå轮转次æ°</span> |
| | | <span class="cmt">// 主è¿ç¨æè¨ï¼â ä»»ææ¶å» device_lease åªæ 1 è¡ææ â¡ ææå¸§ç generation åè° â¢ æ åå</span> |
| | | <span class="cmt">// ⣠ä¸é Kill(éæº worker) â å
¶ä½ worker ⤠TTL+5s å
æ¥ç®¡ï¼æµè¯ç»§ç»æ¶æä¸º PASS</span></code></pre> |
| | | é¢å¤ä¸¤ä¸ªææçº§ç¨ä¾ï¼ |
| | | <ul> |
| | | <li><strong>å´©æºå¤å¿é</strong>ï¼<code>Process.Kill</code> ææè
ï¼ä¸è· Disposeï¼â æè¨ â¤35s å被å
¶ä»å·¥ä½èªå¨æ¥ç®¡ï¼<code>host_process_id</code> åæºçé¨çè·¯å¾å â¤2s åæ¶ï¼</li> |
| | | <li><strong>ç»´æ¤æ¢å æ¼ç»</strong>ï¼worker A é¿å¾ªç¯æç§ â UI åèµ· RequestMaintenance â æè¨ grace å
让渡ãMaintenance è·å¾ãA éç³è¯·è¢«æï¼RejectionMessage å«"ç»´æ¤"ï¼ï¼æé´ A è¥è¿è§ç¡¬åå½ä»¤ â 驱å¨è¿å <code>LEASE_STALE</code>ã</li> |
| | | </ul> |
| | | </div> |
| | | |
| | | <!-- ================================================================= --> |
| | | <h2 id="s11">11. åé¶æ®µå®æ½è®¡åä¸å·¥ä½é</h2> |
| | | |
| | | <table> |
| | | <tr><th>é¶æ®µ</th><th>交ä»ç©</th><th>è§£å³ççç¹</th><th>å·¥ä½é</th></tr> |
| | | <tr> |
| | | <td><strong>Phase 1<br>è·¨è¿ç¨ç§çº¦</strong></td> |
| | | <td>device_lease DDLï¼<code>DbLeaseStore</code>ï¼<code>ResourceManager</code> ç»ååï¼å¿è·³ + æ
æ + æåæ¶ï¼Bootstrapper 忢ï¼å¤è¿ç¨éææµè¯</td> |
| | | <td class="good">å¤è¿ç¨äºæ¥ä»²è£ â
å´©æºèªæ â
审计å¯è¿½æº¯ â
ä¸å±é¶æ¹å¨ â
</td> |
| | | <td><strong>3~4 人æ¥</strong></td> |
| | | </tr> |
| | | <tr> |
| | | <td><strong>Phase 2<br>仲è£è§å & UI</strong></td> |
| | | <td><code>LeaseArbiter</code> ä¼å
级ç©éµï¼ç»´æ¤æ¢å /让渡æµç¨ï¼<span class="path">DebugSessionManager</span> PendingHandoverï¼HMI"å ç¨è
ä¿¡æ¯/强å¶éæ¾"ï¼access_mode 注å页 + ç»ç§çº¦ <code>AcquireGroupAsync</code></td> |
| | | <td class="good">"äººå¨æ¥çº¿ç¨åºä¸è½å¨"硬ä¿è¯ â
å·¥ä½åç» â
</td> |
| | | <td><strong>2~3 人æ¥</strong></td> |
| | | </tr> |
| | | <tr> |
| | | <td><strong>Phase 3<br>Device Brokerï¼æé触åï¼</strong></td> |
| | | <td><span class="path">DeviceBroker</span> å·¥ç¨ï¼å¤ç¨ ConnectionUtil 管éï¼ï¼ä»£çåé©±å¨ <code>*BrokeredDriver</code>ï¼å¤æºæ¥å
¥ï¼å½ä»¤éå + TimeShared çç¥è½å°</td> |
| | | <td class="good">串å£/USB 奿ç¬å æ ¹æ²» â
夿ºå
±äº« â
åæ¶å½ä»¤ä¸²è¡å â
</td> |
| | | <td><strong>5~8 人æ¥</strong></td> |
| | | </tr> |
| | | <tr> |
| | | <td><strong>Phase 4<br>æ¼è¿ï¼å¯éï¼</strong></td> |
| | | <td>驱å¨è¿ç§»ä¸º OpenTAP Instrument æä»¶å
ï¼.opentapï¼ï¼Bench é
ç½®ä¸ DeviceConfig åæºåï¼HMI å
åµé©±å¨ç®¡çï¼Image APIï¼</td> |
| | | <td class="good">åå驱å¨çæå¤ç¨ãååè¿ç»´</td> |
| | | <td>å¦è¯ä¼°</td> |
| | | </tr> |
| | | </table> |
| | | |
| | | <div class="success"><strong>触å Phase 3 ç夿æ åï¼é¿å
è¿åº¦è®¾è®¡ï¼ï¼</strong>åºç°ä»¥ä¸ä»»ä¸æ
嵿ç«é¡¹âââ 串å£/USB 设å¤ç§çº¦ææé¢çé«å° close/open æå¨æä¸ºç¶é¢ï¼â¡ç¡®æ 2 å°ä»¥ä¸çµèéè¦æä½åä¸å°ç©ç仪å¨ï¼â¢åºç° â¥1 å° TimeShared å½ä»¤çº§ä¸²è¡è®¾å¤æå¹¶è¡æééæ±ãå¦å Phase 1+2 å·²éç¯ä¸»è¦é£é©ã</div> |
| | | |
| | | <!-- ================================================================= --> |
| | | <h2 id="s12">12. é£é©ã忍¡å¼ä¸ä¸æ¨èåæ³</h2> |
| | | |
| | | <table> |
| | | <tr><th>忍¡å¼</th><th>åæ</th><th>æ£ç¡®åæ³</th></tr> |
| | | <tr><td class="bad">å¤è¿ç¨åèª open åä¸ COM å£/CAN å¡å¥æ"ç¢°è¿æ°"</td><td>WriteFile 交éãæ°æ®æè£ãèå±çº§æªå®ä¹è¡ä¸º</td><td>è¦ä¹ç§çº¦ä¿è¯åææè
ï¼Phase 1ï¼ï¼è¦ä¹ Broker å¯ä¸ææï¼Phase 3ï¼ã<strong>ç©çå±ä¸å
è®¸å¹¶åæ¯ç¡¬çº¦æï¼ä»»ä½è½¯ä»¶æ¹æ¡ä¸è½ææ</strong></td></tr> |
| | | <tr><td class="bad">ä»
ç¨ Named Mutex å½ç§çº¦</td><td>å´©æºåæ¥ç®¡æ¹å¯¹è®¾å¤ç¶æå
¨ç²ï¼è¾åºå¯è½è¿å¼çï¼</td><td>Mutex åªé
ååæºå¿«éä¿¡å·ï¼ç¶æä¸äº¤æ¥è¯ä¹å¿
é¡»å¨ DB 表ï¼Â§3 æ¹æ¡â¡è¯ä¼°ï¼</td></tr> |
| | | <tr><td class="bad">ç½ç»å
±äº«çï¼SMBï¼ä¸æ¾ data.db ä¾å¤æºå</td><td>SQLite éå¨ SMB è¯ä¹ä¸å¯é â åææè
= çå®ç¸æºé£é©</td><td>夿ºåºæ¯ï¼Phase 3 Brokerï¼æ¯å°ç©çæºä¸ä»½ DBï¼æç§çº¦è¡¨è¿å°æå¡ç«¯ SQL</td></tr> |
| | | <tr><td class="bad">客æ·ç«¯èªå·±ç® expires_at ä¼ ç»å¯¹æ¶é´</td><td>æ¶éæ¼ç§»å¯¼è´æå/å»¶è¿åæ¶</td><td>åªä¼ ç¸å¯¹ TTLï¼DB ä¾§ <code>datetime('now')</code> 计ç®ï¼Â§7ï¼</td></tr> |
| | | <tr><td class="bad">TTL 设 5 åé"æ±ç¨³"</td><td>å´©æºåå
¶ä»å·¥ä½å¹²ç 5 åé</td><td>TTL 30s + å¿è·³ 10sï¼åæº PID çé¨çç§çº§å
åº</td></tr> |
| | | <tr><td class="bad">æ¢å åçå¨ä¸æ¡å¤åè CAN äºå¡ä¸é´</td><td>设å¤å¡å¨åå
ç¶æ</td><td>让渡ç¹ä¸¥æ ¼å¯¹é½ TestStep è¾¹ç/åæ¡å½ä»¤å®æï¼Â§5.4 éå¾â¢ï¼</td></tr> |
| | | <tr><td class="bad">ç»´æ¤æ¨¡å¼ä¸åæ
æ æ ¡éª"忣æ UI å¼¹çª"</td><td>UI å¼¹çªå¯è¢«å¿½ç¥ï¼ç¨åº bug ç»ä¸è¿</td><td>驱å¨å
¥å£ FenceCheck æ¯ç©çé¸é¨ï¼Â§7 åµå°¸è¡ï¼ï¼å¼¹çªåªæ¯ä½éªå±</td></tr> |
| | | <tr><td class="bad">å¿è·³æå¨ UI Dispatcher</td><td>WPF 主线ç¨å¡é¡¿âåæ»è¯¯å¤è¢«æ¢å </td><td>ç¬ç«åå°çº¿ç¨ï¼Â§9.3 代ç å·²åè§ï¼</td></tr> |
| | | </table> |
| | | |
| | | <h3>å·²ç¥å±éï¼è¯å®å£°æï¼</h3> |
| | | <ul> |
| | | <li><strong>SQLite ååè
</strong>ï¼ç§çº¦å QPS ä¸é约ç¾çº§ï¼èåèæï¼ç§çº§ï¼è¿ä½äºæ¤ï¼ä½é«é¢é¥æµä¸è¦èµ°ç§çº¦è¡¨ï¼èµ°ç»æéè·¯ï¼ã</li> |
| | | <li><strong>Phase 1 å夿ºä»åé</strong>ï¼åæºå
å¤è¿ç¨å®å
¨è§£å³ï¼å¤æºéè¦æ <code>device_lease</code> æå¨åºæ¾å°æå¡å¨ï¼è¡¨ç»æä¸åï¼<code>DbLeaseStore</code> æ¢è¿æ¥å·¥åå³å¯ââè¿æ¯ Phase 3 åçæå°å°é¶ï¼ã</li> |
| | | <li><strong>Broker åç¹</strong>ï¼Phase 3 å¼å
¥çé¨çæèµ·ï¼Broker é坿é´å½ä»¤çæä¸å¯ç¨ï¼è®¾å¤æ¬èº«ä¸åå½±åï¼ã</li> |
| | | </ul> |
| | | |
| | | <!-- ================================================================= --> |
| | | <h2 id="s13">13. ç»è®º</h2> |
| | | |
| | | <div class="success"> |
| | | <ol> |
| | | <li><strong>ä¸¤ç±»åºæ¯å嫿²»ç</strong>ï¼è¿ç¨å
å¤çº¿ç¨ç»§ç»ç¨ç°æå
åé + OpenTAP 忥ï¼è·¨è¿ç¨ææ¯çæ£ç¼ºå£ï¼ä¸è¦ç¨ä¸ä¸ªæºå¶ç¡¬åä¸¤ä¸ªåºæ¯ã</li> |
| | | <li><strong>䏻使¹æ¡ = SQLite ç§çº¦è¡¨ï¼TTL+å¿è·³+generation æ
æ +æåæ¶ï¼</strong>ï¼ä½ä¸º <code>IResourceManager</code> çè·¨è¿ç¨å®ç°ï¼ä¸å± <code>IAutoDeviceFacade</code>/<code>AutoDeviceLease</code>/<code>DebugSessionManager</code> æ¥å£ç¾åä¸ä¸å¡ä»£ç <strong>é¶æ¹å¨</strong>ï¼Phase 1ï¼3~4 人æ¥ï¼ã</li> |
| | | <li><strong>å®å
¨ç¡¬ä¿è¯é æ
æ ï¼ä¸é 礼è²</strong>ï¼æ¯æ¡å½ä»¤é©±å¨å
¥å£æ ¡éª generationï¼å®ç°"äººå¨æ¥çº¿æ¶ç¨åºç©çåä¸åºæä»¤"ï¼Â§6 ä¿¡æ¯+§7 åµå°¸è¡ï¼ãæ¢å /让渡åªå¨ TestStep è¾¹çï¼grace é»è®¤ 30sã</li> |
| | | <li><strong>Device Brokerï¼Phase 3ï¼ä»
å¨è§¦åæ¡ä»¶åºç°æ¶ç«é¡¹</strong>ï¼ä¸²å£/USB 奿æå¨ã夿ºå
±æµãåæ¶æéââä¸è
ä»»ä¸ãä¼ è¾å±ç´æ¥å¤ç¨ä»åºç°æç <code>ConnectionUtil.PipeServer/PipeClient</code>ï¼ä¸å¿
å¼å
¥ WCF/gRPCã</li> |
| | | <li><strong>OpenTAP çæè§£å³çæ¯"ååä¸å½¢æ"èé"è¿è¡æ¶ä»²è£"</strong>ââè·¨è¿ç¨ä»²è£æ¯å®ç空ç½ï¼ä½ 们ç IResourceManager + ç§çº¦è¡¨æ°å¥½è¡¥ä½ï¼è¿æ¯æ¬é¡¹ç®å·®å¼åèµäº§ï¼é¿ææç©ç仪å¨å
è£
æ OpenTAP Instrument æä»¶å
ä¸ç§çº¦ä½ç³»å¹¶è¡ä¸æã</li> |
| | | <li><strong>ç¬å vs åæ¶ç¨ <code>access_mode</code> æ¾å¼å»ºæ¨¡</strong>ï¼æ³¨å页å¯éï¼ï¼å·¥ä½åç»å¤ç¨ <code>SlotDeviceMapping</code> + ç»ç§çº¦æ key åå
¸åºååç³è¯·ï¼æç»æ»éã</li> |
| | | <li><strong>å´©æºæ®çæ¯å¯ä¸çæ£é¾çé®é¢ï¼TTL+çé¨ç+æåæ¶ä¸å±åä½è§£å³</strong>ï¼æµè¯ç¨ Kill è¿ç¨æ¼ç»æ¥ç®¡æ¶æï¼Â§10.2ï¼ï¼ä¸çº¿åå¿
é¡»è¿ã</li> |
| | | </ol> |
| | | </div> |
| | | |
| | | <footer> |
| | | å¤è¿ç¨/å¤çº¿ç¨ä»ªå¨èµæºç¬å ä¸å
±äº«æ¹æ¡ · TapProject Aging Infrastructure æ¶æè®¾è®¡ · 2026-11-03<br> |
| | | å
³èææ¡£ï¼<a href="./OpenTAP_Instrument_Package_Analysis.html">OpenTAP Instrument + æä»¶å
æºå¶åæ</a> · |
| | | <a href="./DeviceConfig_DeviceDebug_Architecture.html">ä»ªå¨æ³¨åä¸ç¡¬ä»¶è°è¯è°ç¨å
³ç³»</a> |
| | | </footer> |
| | | |
| | | <script> |
| | | mermaid.initialize({ |
| | | startOnLoad: true, theme: 'default', securityLevel: 'loose', |
| | | fontFamily: 'Segoe UI, Microsoft YaHei, sans-serif', |
| | | flowchart: { curve: 'basis', padding: 16 }, |
| | | sequence: { showSequenceNumbers: false, actorMargin: 50 } |
| | | }); |
| | | </script> |
| | | |
| | | </body> |
| | | </html> |
| New file |
| | |
| | | <!DOCTYPE html> |
| | | <html lang="zh-CN"> |
| | | <head> |
| | | <meta charset="UTF-8"> |
| | | <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| | | <title>OpenTAP Instrument + æä»¶å
æºå¶åææ¥å</title> |
| | | <script src="https://cdn.jsdelivr.net/npm/mermaid@10/dist/mermaid.min.js"></script> |
| | | <style> |
| | | * { box-sizing: border-box; } |
| | | body { |
| | | font-family: -apple-system, "Segoe UI", "Microsoft YaHei", "PingFang SC", sans-serif; |
| | | max-width: 1240px; |
| | | margin: 0 auto; |
| | | padding: 32px 24px 80px; |
| | | background: #FAFAFA; |
| | | color: #212121; |
| | | line-height: 1.75; |
| | | } |
| | | h1 { font-size: 30px; color: #1565C0; border-bottom: 3px solid #1976D2; padding-bottom: 12px; } |
| | | h2 { font-size: 23px; color: #0D47A1; margin-top: 42px; padding-left: 12px; border-left: 4px solid #FF9800; } |
| | | h3 { font-size: 17px; color: #37474F; margin-top: 24px; } |
| | | .subtitle { color: #757575; font-size: 14px; margin-bottom: 24px; } |
| | | .card { background: white; border-radius: 8px; padding: 18px 22px; margin: 16px 0; box-shadow: 0 2px 8px rgba(0,0,0,0.06); } |
| | | .highlight { background: #FFF8E1; border-left: 4px solid #FFC107; padding: 12px 16px; margin: 12px 0; border-radius: 4px; } |
| | | .info { background: #E3F2FD; border-left: 4px solid #2196F3; padding: 12px 16px; margin: 12px 0; border-radius: 4px; } |
| | | .success { background: #E8F5E9; border-left: 4px solid #4CAF50; padding: 12px 16px; margin: 12px 0; border-radius: 4px; } |
| | | .warn { background: #FBE9E7; border-left: 4px solid #FF5722; padding: 12px 16px; margin: 12px 0; border-radius: 4px; } |
| | | table { width: 100%; border-collapse: collapse; margin: 16px 0; background: white; border-radius: 6px; overflow: hidden; box-shadow: 0 1px 4px rgba(0,0,0,0.06); font-size: 14px; } |
| | | th { background: #1976D2; color: white; padding: 10px 14px; text-align: left; font-weight: 600; } |
| | | td { padding: 9px 14px; border-bottom: 1px solid #EEEEEE; vertical-align: top; } |
| | | tr:nth-child(even) td { background: #FAFAFA; } |
| | | tr:hover td { background: #E3F2FD; } |
| | | code { font-family: "Consolas", "Monaco", monospace; background: #F5F5F5; color: #C62828; padding: 2px 6px; border-radius: 3px; font-size: 13px; } |
| | | pre { background: #263238; color: #ECEFF1; padding: 16px 20px; border-radius: 6px; overflow-x: auto; font-family: "Consolas", monospace; font-size: 13px; line-height: 1.55; } |
| | | pre code { background: transparent; color: inherit; padding: 0; font-size: 13px; } |
| | | .mermaid { background: white; padding: 20px; border-radius: 8px; margin: 20px 0; text-align: center; box-shadow: 0 2px 8px rgba(0,0,0,0.06); overflow-x: auto; } |
| | | ul { padding-left: 22px; } |
| | | li { margin: 4px 0; } |
| | | .toc { background: #F5F5F5; padding: 16px 24px; border-radius: 6px; margin: 20px 0; } |
| | | .toc a { color: #1976D2; text-decoration: none; display: block; padding: 3px 0; } |
| | | .toc a:hover { text-decoration: underline; } |
| | | .kwd { color: #FFCC80; } .str { color: #C5E1A5; . } .cmt { color: #546E7A; } |
| | | footer { margin-top: 60px; padding-top: 20px; border-top: 1px solid #E0E0E0; color: #757575; font-size: 12px; text-align: center; } |
| | | .tag { display:inline-block; background:#E1F5FE; color:#0277BD; border-radius:12px; padding:1px 10px; font-size:12px; margin:2px; } |
| | | </style> |
| | | </head> |
| | | <body> |
| | | |
| | | <h1>OpenTAP Instrument + æä»¶å
æºå¶åææ¥å</h1> |
| | | <div class="subtitle">é对 TestPlatform Aging Softwareï¼.NET Framework 4.7.2 + OpenTAP 9.31.0ï¼é©±å¨çæææ¹é çææ¯è°ç · 2026-11-03</div> |
| | | |
| | | <div class="toc"> |
| | | <strong>ç®å½</strong> |
| | | <a href="#s1">1. OpenTAP æä»¶ä½ç³»æ»è§</a> |
| | | <a href="#s2">2. Instrument æ½è±¡æ·±å
¥è§£æ</a> |
| | | <a href="#s3">3. æµè¯æ¥éª¤å¦ä½å¼ç¨ä»ªå¨</a> |
| | | <a href="#s4">4. å
ï¼Packageï¼æºå¶å
¨æ¯</a> |
| | | <a href="#s5">5. package.xml æ¸
åæä»¶è¯¦è§£</a> |
| | | <a href="#s6">6. ä¾èµè§£æä¸çæ¬æ¨¡å</a> |
| | | <a href="#s7">7. 驱卿件å¼å-åå-å®è£
工使µ</a> |
| | | <a href="#s8">8. Image APIï¼å®è£
ç®å½ç¶æç®¡ç</a> |
| | | <a href="#s9">9. ä¸ TapProject ç°ææ¶æçæ å°ä¸å·®è·</a> |
| | | <a href="#s10">10. è½å°è·¯çº¿å»ºè®®ä¸ææ¬è¯ä¼°</a> |
| | | <a href="#s11">11. ç»è®º</a> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s1">1. OpenTAP æä»¶ä½ç³»æ»è§</h2> |
| | | |
| | | <div class="card"> |
| | | OpenTAP çæ ¸å¿å²å¦æ¯ <strong>âä¸åçæä»¶ï¼Everything is a Pluginï¼â</strong>ãæµè¯æ¥éª¤ã仪å¨é©±å¨ã被æµä»¶ï¼DUTï¼ãç»æçå¬å¨ãçè³ CLI å½ä»¤æ¬èº«ï¼é½æ¯ç»§æ¿èªæä¸ªæ½è±¡åºç±»ç C# ç±»ã弿å¯å¨æ¶éè¿ <code>PluginSearcher</code> æ«æå®è£
ç®å½ä¸ææç¨åºéï¼æå»ºæä»¶ç±»åå¾è°±ï¼ä¾åºååå¨ä¸ç¼è¾å¨ï¼Editorï¼å¨æåç°ä½¿ç¨ã |
| | | </div> |
| | | |
| | | <div class="mermaid"> |
| | | graph TB |
| | | subgraph æ«æ["å¯å¨æ¶æä»¶åç° (PluginSearcher)"] |
| | | A["æ«æå®è£
æ ¹ç®å½ *.dll"] --> B["æ«æ Packages/** åç®å½"] |
| | | B --> C["åå°æåç»§æ¿èªæä»¶åºç±»çç±»å"] |
| | | C --> D["æå»ºç±»åç¼å<br/>PluginManager 坿¥è¯¢"] |
| | | end |
| | | subgraph åºç±»["æä»¶åºç±»ï¼OpenTap.dll / æä»¶å
ï¼"] |
| | | T1["TestStep"] |
| | | T2["Instrument : Resource"] |
| | | T3["Dut : Resource"] |
| | | T4["ResultListener"] |
| | | T5["SerializerPlugin"] |
| | | T6["ICliAction (tap åå½ä»¤)"] |
| | | end |
| | | D --> T1 & T2 & T3 & T4 & T5 & T6 |
| | | </div> |
| | | |
| | | <h3>å
³é®ç»ä»¶</h3> |
| | | <table> |
| | | <tr><th>ç»ä»¶</th><th>æå¨ DLL</th><th>èè´£</th></tr> |
| | | <tr><td>Engineï¼åºåå/åºåæ§è¡ï¼</td><td><code>OpenTap.dll</code></td><td>TestPlan æ§è¡ãæä»¶å¯¹è±¡çå½å¨æãXML åºåå</td></tr> |
| | | <tr><td>PluginSearcher</td><td><code>OpenTap.dll</code>ï¼å
ç½® Mono.Cecilï¼</td><td>ä¸å è½½ CLR ç±»åå³å¯è§£æç¨åºéçæä»¶å
æ°æ®ï¼å¿«ãæ¯æå»¶è¿å è½½ï¼</td></tr> |
| | | <tr><td>PackageManager / Image</td><td><code>OpenTap.Package.dll</code></td><td>å
å®è£
ãä¾èµè§£æãä¸è½½ãå¸è½½</td></tr> |
| | | <tr><td>CLI</td><td><code>tap.dll</code> / <code>tap.exe</code></td><td><code>tap package install / run / plan</code> çå½ä»¤å
¥å£</td></tr> |
| | | <tr><td>åºç¡æ¥éª¤å
</td><td><code>OpenTap.Plugins.BasicSteps.dll</code></td><td>DelayãLoopãIfãScpi ä»ªå¨æ§å¶çéç¨ TestStep</td></tr> |
| | | </table> |
| | | |
| | | <div class="info"> |
| | | <strong>å®è£
ç®å½å¸å±ï¼å®æµå®æ¹ OpenTAP å
ï¼ï¼</strong> |
| | | æ ¸å¿å¼æ DLLï¼<code>tap.dll</code>ã<code>OpenTap.dll</code>ã<code>OpenTap.Package.dll</code>ï¼æ¾å¨æ ¹ç®å½ï¼ |
| | | <strong>æ¯ä¸ªç¬¬ä¸æ¹å
çæä»¶è¢«é离å°èªå·±çåç®å½</strong> <code>Packages/<å
å>/</code>ï¼å¦ <code>Packages/OpenTAP/OpenTap.Plugins.BasicSteps.dll</code>ï¼ï¼å¸è½½å
æ¶ææ¸
åå é¤è¿äºæä»¶ï¼å¤©ç¶é¿å
æä»¶å²çªã |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s2">2. Instrument æ½è±¡æ·±å
¥è§£æ</h2> |
| | | |
| | | <h3>ç±»å±æ¬¡</h3> |
| | | <div class="mermaid"> |
| | | classDiagram |
| | | class IResource { |
| | | <<interface>> |
| | | +string Name |
| | | +bool Enabled |
| | | +Open() |
| | | +Close() |
| | | } |
| | | class Resource { |
| | | <<abstract>> |
| | | +string Name |
| | | +virtual bool Enabled |
| | | +virtual Open() |
| | | +virtual Close() |
| | | } |
| | | class IInstrument { <<interface>> } |
| | | class Instrument { |
| | | <<abstract>> |
| | | Instrument() é»è®¤Name= INST |
| | | } |
| | | class ScpiInstrument { |
| | | +IdnQuery |
| | | +Query/Write |
| | | +Connection ç±»å |
| | | +Open/Close å®ç° |
| | | } |
| | | class Dut { |
| | | <<abstract>> |
| | | 被æµä»¶æ¨¡å |
| | | } |
| | | IResource <|-- Resource |
| | | IResource <.. IInstrument |
| | | IInstrument <|.. Instrument |
| | | Resource <|-- Instrument |
| | | Instrument <|-- ScpiInstrument |
| | | Resource <|-- Dut |
| | | </code></pre> |
| | | </div> |
| | | |
| | | <ul> |
| | | <li><strong><code>Resource</code>ï¼æ½è±¡åºç±»ï¼</strong>ï¼ç»ä¸"å°æ¶èµæº"模å ââ åç§°å¯ä¸ãå¯å¯ç¨/ç¦ç¨ã<code>Open()</code>/<code>Close()</code> çå½å¨æãInstrument ä¸ DUT é½ç»§æ¿å®ã</li> |
| | | <li><strong><code>Instrument : Resource, IInstrument</code></strong>ï¼æºç ä»
~20 è¡ï¼éªè¯èª GitHub opentap/opentap Engine/Instrument.csï¼ï¼æé 彿°é»è®¤ <code>Name="INST"</code>ãæ´¾çç±»éå <code>Open/Close</code> å®æç¡¬ä»¶è¿æ¥ã</li> |
| | | <li><strong><code>ScpiInstrument</code></strong>ï¼SCPI æä»¶å
æä¾ï¼ï¼æå¸¸ç¨ç仪å¨åºç±»ï¼å°è£
SCPI åè®®æ ï¼ |
| | | <ul> |
| | | <li>IDN æ¥è¯¢ï¼*IDN? èªå¨è¯å«åå/åå·/åºä»¶ï¼</li> |
| | | <li>å¤ä¼ è¾å±ï¼VISAï¼Keysight/NIï¼ãRaw TCP/SocketãSerialãUSB-TMCãGPIBãHiSLIP</li> |
| | | <li>åå±å议模åï¼Layerï¼ï¼å¯å¨ Message/Resource 屿å
¥æ¥å¿ãè¶
æ¶ãéè¯çç¥</li> |
| | | </ul> |
| | | </li> |
| | | <li><strong>è¿æ¥é
ç½®æä¹
å</strong>ï¼9.23+ å¼å
¥ <code>BenchStore</code>/<code>ResourceSettings</code> ä½ç³»ï¼å°ä»ªå¨çå°åãè¶
æ¶ãå«å仿µè¯åºåä¸å¥ç¦»æå°æ¶çº§é
ç½®ï¼å¯¹åºæ§ç <code>InstrumentSettings.xml</code> æä»¶ï¼ã</li> |
| | | </ul> |
| | | |
| | | <div class="highlight"> |
| | | <strong>ä¸ä½ 们 <code>IDeviceDriver</code> çå
³é®å·®å¼ï¼</strong>OpenTAP ç Instrument å¯¹è±¡åæ¶æ¿æ
"é©±å¨ + è¿æ¥é
ç½® + çå½å¨æ"ä¸ç§è§è²ï¼ä¸ç±åºååå¨å¨ååºåå TestPlan æ¶<strong>èªå¨æç±»åå仿件å¾è°±å建å®ä¾</strong>ãä½ ä»¬ç <code>CanDriverAdapter(deviceId, busName, nodeIndex)</code> 忝工忾弿é ï¼é
ç½®æ¥èª SQLite ç <code>DeviceDefinition</code> 表ã |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s3">3. æµè¯æ¥éª¤å¦ä½å¼ç¨ä»ªå¨</h2> |
| | | |
| | | <pre><code><span class="cmt">// OpenTAP 飿 ¼ç TestStep å¼ç¨ä»ªå¨ï¼ç¼è¾å¨èªå¨æ¸²æä¸ºä¸ææ¡ï¼</span> |
| | | <span class="kwd">public class</span> PowerOnStep : TestStep |
| | | { |
| | | <span class="cmt">// 任使´é² Instrument 屿§ç TestStepï¼ç¼è¾å¨æ¾ç¤ºå¯é仪å¨å表ï¼</span> |
| | | <span class="cmt">// åè¡¨æ¥æº = PluginSearcher æ«æåºçææéæ½è±¡ Instrument åç±»å®ä¾ï¼æ¥èª settings storeï¼</span> |
| | | <span class="kwd">public</span> ScpiInstrument PowerSupply { <span class="kwd">get</span>; <span class="kwd">set</span>; } |
| | | <span class="kwd">public double</span> Voltage { <span class="kwd">get</span>; <span class="kwd">set</span>; } = 12.0; |
| | | |
| | | <span class="kwd">public override void</span> Run() |
| | | { |
| | | <span class="kwd">using</span> <span class="kwd">var</span> _ = SynchronizationManager.RequestLock(PowerSupply, TimeSpan.FromSeconds(10)); |
| | | PowerSupply.Write($"VOLT {Voltage:F2}"); |
| | | PowerSupply.Write("OUTP ON"); |
| | | <span class="kwd">var</span> readback = PowerSupply.QueryDouble("MEAS:VOLT?"); |
| | | <span class="kwd">if</span> (Math.Abs(readback - Voltage) > 0.5) |
| | | Upwards.Find(Voltage, readback).Fail("çµååå·®è¿å¤§"); |
| | | } |
| | | }</code></pre> |
| | | |
| | | <table> |
| | | <tr><th>æºå¶</th><th>说æ</th></tr> |
| | | <tr><td>屿§ç±»åå³éæ©å¨</td><td><code>public Instrument X</code> 屿§å¨ç¼è¾å¨/CLI 䏿¸²ææä»ªå¨ä¸ææ¡ï¼[ResourceProperty] ç Attribute å¯éå¶åéç±»åï¼åªå CAN / åªåçµæºï¼</td></tr> |
| | | <tr><td>èªå¨ Open/Close</td><td>TestPlanRun å¼å§æ¶å¼æå¯¹ææ Enabled ç Instrument è° <code>Open()</code>ï¼ææå¼ï¼ï¼ç»æå <code>Close()</code>ï¼æ¥éª¤ä»£ç ä¸å
³å¿è¿æ¥ç»è</td></tr> |
| | | <tr><td>å¹¶åä¿æ¤</td><td><code>SynchronizationManager.RequestLock(resource, timeout)</code> æä¾è¿ç¨å
对åä¸ä»ªå¨çäºæ¥éï¼è·¨è¿ç¨äºæ¥ OpenTAP <strong>䏿ä¾</strong>ï¼éå¤é¨ä»²è£ï¼è§ §9ï¼</td></tr> |
| | | <tr><td>åºåå</td><td>TestPlan XML éä¿åçæ¯ä»ªå¨ <code>Name</code> å¼ç¨ï¼éå®ä¾ï¼ï¼è¿è¡æ¶æååè§£æå° settings store ä¸é
ç½®çå®ä¾</td></tr> |
| | | </table> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s4">4. å
ï¼Packageï¼æºå¶å
¨æ¯</h2> |
| | | |
| | | <div class="card"> |
| | | <strong>å
æä»¶æ¬è´¨ï¼</strong><code>.opentap</code> æä»¶å°±æ¯ä¸ä¸ª <strong>ZIP å缩å
</strong>ï¼æ ¹ç®å½å« <code>package.xml</code> æ¸
åï¼å
¶ä½ä¸ºè½½è·æä»¶ï¼DLLãé
ç½®ãææ¡£çï¼ãæ¸
å声æäºå
åãè¯ä¹åçæ¬ãå¹³å°çº¦æãä¾èµå
³ç³»åæä»¶é¨ç½²å¸å±ã |
| | | </div> |
| | | |
| | | <div class="mermaid"> |
| | | graph LR |
| | | subgraph å
æä»¶ |
| | | Z[".opentap (ZIP)"] --> PX["package.xml æ¸
å"] |
| | | Z --> PL["è½½è·æä»¶"] |
| | | end |
| | | subgraph ä»åº |
| | | REPO["packages.opentap.io<br/>(宿¹ NuGet 飿 ¼ä»åº)"] |
| | | PRIV["ç§æä»åº<br/>tap repo add"] |
| | | end |
| | | PLAT["Developer's Platform<br/>(æ¡é¢çå
æµè§å¨/CI)"] --> REPO |
| | | REPO -->|tap package install| IMG["Image = å®è£
ç®å½<br/>ç¶æ + å·²è£
å
æ¸
å"] |
| | | PRIV -->|ååè®®| IMG |
| | | PX --> IMG |
| | | IMG -->|é¨ç½²å°| FILES["æ ¹ç®å½ + Packages/<name>/<br/>+ Dependencies/"] |
| | | IMG -->|å¸è½½| DEL["ææ¸
åå 餿件<br/>ï¼ä¸å½±åå
¶ä»å
ï¼"] |
| | | </div> |
| | | |
| | | <h3>æ ¸å¿ CLI å½ä»¤</h3> |
| | | <pre><code><span class="cmt"># ååºå¯å®è£
/ å·²å®è£
</span> |
| | | tap package list |
| | | tap package list -i |
| | | |
| | | <span class="cmt"># å®è£
ï¼å¯æå®ä»åºãçæ¬ãééï¼</span> |
| | | tap package install "Developer's System CE" -y |
| | | tap package install MyCanDriver -v 2.1.0 -c candidate |
| | | tap package install Keysight.34461A -s https://packages.opentap.io |
| | | |
| | | <span class="cmt"># 仿ºç å·¥ç¨æå»ºå
</span> |
| | | tap package create package.xml |
| | | |
| | | <span class="cmt"># 管çç§æä»åºæº</span> |
| | | tap repo add http://192.168.1.50/opentap-repo |
| | | tap repo list |
| | | |
| | | <span class="cmt"># ä¿®å¤ / åºåå / ä¼è¯</span> |
| | | tap package recover |
| | | tap package serialize-package / deserialize-package</code></pre> |
| | | |
| | | <table> |
| | | <tr><th>ç¹æ§</th><th>æºå¶</th></tr> |
| | | <tr><td>å
é离å®è£
</td><td>å
æä»¶é¨ç½²å° <code>Packages/<å
å>/</code>ï¼åå DLL ä¸åçæ¬å¯å
±åï¼å¼ææå
æ¸
åå è½½ï¼</td></tr> |
| | | <tr><td>å¹³å°/æ¶æåºå</td><td><code>OS="Windows|Linux|MacOS"</code>ã<code>Architecture="x64|x86|arm"</code>ï¼æ¸
åå
坿æ¡ä»¶å
å«ä¸ååçä¾èµï¼å®æ¹å
ç¨ <code>$(Architecture)</code> åéåå libgit2 ç .dll/.so/.dylibï¼</td></tr> |
| | | <tr><td>å®è£
é©å</td><td><code>PackageActionExtensions</code> å¯å¨ pre/post install æ§è¡å¤é¨å½ä»¤ï¼å®æ¹å
ç¨ <code>chmod +x tap</code> ä¿® Linux æéï¼</td></tr> |
| | | <tr><td>ééï¼Channelsï¼</td><td>release / candidate / alphaï¼åä¸å
坿ä¸åééåå¸ï¼CI åºæ¯éå®ééå³å¯æ§å¶æ´æ°èå¥</td></tr> |
| | | <tr><td>èªå¨æ´æ°</td><td><code>tap package install --force</code> ææ¡é¢çå
æµè§å¨ï¼çæ¬æ¯è¾ä½¿ç¨ä¸¥æ ¼ SemVer 2.0</td></tr> |
| | | </table> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s5">5. package.xml æ¸
åæä»¶è¯¦è§£</h2> |
| | | |
| | | <p>以ä¸éª¨æ¶æç¼èª <strong>宿¹ OpenTAP å
ççå® package.xml</strong>ï¼GitHub opentap/opentap@mainï¼ï¼</p> |
| | | |
| | | <pre><code><?xml version="1.0" encoding="UTF-8"?> |
| | | <Package Name="MyCompany.CanDriver" |
| | | xmlns="http://opentap.io/schemas/package" |
| | | Version="$(GitVersion)" <span class="cmt"><!-- MSBuild 飿 ¼åéæ³¨å
¥ --></span> |
| | | OS="$(Platform)" Architecture="$(Architecture)"> |
| | | |
| | | <Description>CAN æ»çº¿ä»ªå¨é©±å¨æä»¶ï¼PCAN/èææ»çº¿ï¼</Description> |
| | | <Status>Released</Status> |
| | | <Organisation>æå¸</Organisation> |
| | | <SourceUrl>https://git.internal/CanDriver</SourceUrl> |
| | | <SourceLicense>Proprietary</SourceLicense> |
| | | <Owner>MyCompany</Owner> |
| | | |
| | | <span class="cmt"><!-- â åé䏿¡ä»¶ï¼MSBuild 表达å¼ï¼--></span> |
| | | <Variables> |
| | | <ArchitectureCondition Condition="$(Architecture) == ''">x64</Architecture> |
| | | <PlatformCondition Condition="$(Platform) == ''">Windows</Platform> |
| | | </Variables> |
| | | |
| | | <span class="cmt"><!-- â¡ ä¾èµï¼æåå
¶ä»"å
"ï¼çæ¬èå´/å¿
é/æ¨èï¼--></span> |
| | | <Dependencies> |
| | | <PackageDependency Name="OpenTAP" Version="9.31.0" Action="Required"/> |
| | | <PackageDependency Name="Keysight.SCPI" Version="9.x" Action="Optional"/> |
| | | </Dependencies> |
| | | |
| | | <span class="cmt"><!-- ⢠æä»¶ï¼å®è£
è·¯å¾ / æºè·¯å¾ / å
æ°æ®æä½ --></span> |
| | | <Files> |
| | | <span class="cmt"><!-- æä»¶ DLL æ¾è¿å
é离ç®å½ --></span> |
| | | <File Path="Packages/MyCompany.CanDriver/CanDriverPlugin.dll"> |
| | | <SetAssemblyInfo Attributes="Version"/> <span class="cmt"><!-- èªå¨åå
¥ç¨åºéçæ¬å· --></span> |
| | | </File> |
| | | <File Path="Packages/MyCompany.CanDriver/peak_pcans.dll" SourcePath="native/pcans.dll"/> |
| | | <File Path="Docs/**" SourcePath="doc/"/> <span class="cmt"><!-- glob --></span> |
| | | </Files> |
| | | |
| | | <span class="cmt"><!-- ⣠平å°å·®å¼å --></span> |
| | | <Files Condition="$(Platform) == Linux"> |
| | | <File Path="Packages/MyCompany.CanDriver/libpcans.so"/> |
| | | </Files> |
| | | </Package></code></pre> |
| | | |
| | | <table> |
| | | <tr><th>å
ç´ </th><th>ä½ç¨</th></tr> |
| | | <tr><td><code>Package</code> æ ¹å±æ§</td><td>Name/Version/OS/Architectureï¼æ¯æ <code>$(åé)</code> + <code>Condition</code></td></tr> |
| | | <tr><td><code>Dependencies</code> / <code>PackageDependency</code></td><td>声æå¯¹å
¶ä»å
çæå°çæ¬è¦æ±ï¼Action = Required / Recommended / Optional</td></tr> |
| | | <tr><td><code>PluginDependencies</code></td><td>声æè¿è¡æ¶ .NET ç¨åºéä¾èµï¼éå
级ï¼ï¼ç¨äºå 载顺åºä¸å²çªæç¤º</td></tr> |
| | | <tr><td><code>Files</code> / <code>File</code></td><td>é¨ç½²å¸å±ï¼<code>Path</code>ï¼ç®æ ï¼+ <code>SourcePath</code>ï¼æºï¼ï¼å¯å¸¦ <code>Action="Install|WriteCode"</code>ã<code>SetAssemblyInfo</code>ï¼åçæ¬/å
¬å¸å
æ°æ®ï¼ã<code>SignCertificate</code>ï¼ Authenticode ç¾åï¼</td></tr> |
| | | <tr><td><code>PackageActionExtensions</code></td><td>å®è£
ååæ§è¡å¤é¨å¯æ§è¡/èæ¬ï¼å¦æéä¿®å¤ã驱å¨å®è£
å¨ï¼</td></tr> |
| | | <tr><td><code>Variables/Condition</code></td><td>ä¸ä»½æ¸
å跨平å°å¤ç¨ï¼æå»ºæ¶æåéè£åªæä»¶é</td></tr> |
| | | <tr><td><code>TypeTags</code></td><td>ç»æä»¶ç±»ææ ç¾ï¼ç¼è¾å¨å¯æ tag è¿æ»¤ï¼å¦ "PowerSupply" tag åªæ¾ç¤ºçµæºï¼</td></tr> |
| | | </table> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s6">6. ä¾èµè§£æä¸çæ¬æ¨¡å</h2> |
| | | |
| | | <ul> |
| | | <li><strong>SemVer 2.0</strong>ï¼å
çæ¬ä¸¥æ ¼éµå¾ª <code>MAJOR.MINOR.PATCH</code> + é¢å叿 è¯ï¼<code>-alpha.1</code>ï¼ã</li> |
| | | <li><strong>è§£æå¨</strong>ï¼<code>OpenTap.Package</code> å
ç½®æ±è§£å¨ï¼å¤ç <code>å®è£
A â A ä¾èµ B â¥2.0 â å·²è£
B 1.3 â çæ"å级 B"计å</code>ï¼å¤å
交åä¾èµç¨å溯æç´¢æ±æå°åæ´éã</li> |
| | | <li><strong>éçº§ä¿æ¤</strong>ï¼<code>install</code> é»è®¤æç»é级已å®è£
å
ï¼é¤é <code>--force</code>ã</li> |
| | | <li><strong>å²çªå¤ç</strong>ï¼åä¸æä»¶è¢«ä¸¤ä¸ªå
声æ â åè
å®è£
æ¥éæç¤º ownership å²çªï¼éè¿ <code>Packages/<name>/</code> ç®å½çº¦å®åºæ¬å¯é¿å
ã</li> |
| | | <li><strong>OpenTAP å
æ ¸çæ¬å
¼å®¹</strong>ï¼ææå
é½ä¾èµ <code>OpenTAP</code> å
æ¬èº«ï¼å
æ ¸åçº§åæ§å
æ <code><PackageDependency Version="9.31.0"></code> çæå°çæ¬å¹é
ä¿æå
¼å®¹ï¼9.x ä¿æ ABI æ¿è¯ºã</li> |
| | | </ul> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s7">7. 驱卿件å¼å-åå-å®è£
工使µ</h2> |
| | | |
| | | <div class="mermaid"> |
| | | sequenceDiagram |
| | | participant Dev as 驱å¨å¼åè
|
| | | participant VS as VS / dotnet CLI |
| | | participant Tap as tap CLI |
| | | participant Repo as å
ä»åº |
| | | participant User as ç°åºå·¥ç¨å¸ |
| | | |
| | | Dev->>VS: NuGet å¼ç¨ OpenTap / OpenTap.Package SDK |
| | | Dev->>VS: ç¼å `class MyCanInstrument : Instrument` |
| | | VS->>VS: dotnet build â çæ DLL |
| | | Dev->>Tap: tap package create package.xml |
| | | Tap->>Tap: æ ¡éªæ¸
å + ZIP æå
â MyCan.opentap |
| | | Dev->>Repo: ä¸ä¼ å°ç§æä»åº (HTTP æå¡å¨/æä»¶å
񄧮) |
| | | User->>Tap: tap repo add http://å
ç½ä»åº |
| | | User->>Tap: tap package install MyCan -y |
| | | Tap->>Repo: è§£æä¾èµ â ä¸è½½ .opentap |
| | | Tap->>Tap: ææ¸
åé¨ç½²å° Packages/MyCan/ |
| | | Note over User: éå¯ç¼è¾å¨/CLIï¼æ°ä»ªå¨èªå¨åºç°å¨ä¸æå表 |
| | | </div> |
| | | |
| | | <h3>å¼åç¯å¢ä¾èµ</h3> |
| | | <ul> |
| | | <li>NuGet å
ï¼<code>OpenTap</code>ã<code>OpenTap.Package</code>ï¼æä¾ SDK å¼ç¨ï¼ç¼è¯æï¼</li> |
| | | <li>VS æ©å±ï¼<em>OpenTAP Project Templates</em>ï¼å« Instrument æä»¶é¡¹ç®æ¨¡æ¿ï¼</li> |
| | | <li>è°è¯æ¹å¼ï¼æç¼è¯äº§ç© DLL ç´æ¥æ·å°å®è£
ç®å½ <code>Packages/xxx/</code>ï¼å¯å¨ <code>tap ui</code>ï¼æ¡é¢çï¼æä½ ä»¬èªå·±çç¼è¾å¨å®¿ä¸»è°è¯</li> |
| | | <li>注æï¼<strong>æä»¶ SDK æ¯ netstandard2.0/net472 åç®æ </strong>ï¼ä¸ä½ 们 .NET Framework 4.7.2 主ç¨åºå
¼å®¹</li> |
| | | </ul> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s8">8. Image APIï¼å®è£
ç®å½ç¶æç®¡ç</h2> |
| | | |
| | | <p>OpenTAP 9.15+ å¼å
¥ <code>OpenTap.Package.Image</code> æ¦å¿µï¼æ"å®è£
ç®å½å½åç¶æ"æ½è±¡æå¯¹è±¡ï¼</p> |
| | | |
| | | <pre><code><span class="cmt">// ç¨åºå管çä¸ä¸ª OpenTAP å®è£
ç®å½ï¼CLI åºå±å°±æ¯å®ï¼</span> |
| | | <span class="kwd">var</span> image = <span class="kwd">new</span> Image(<span class="str">"C:/Program Files/OpenTAP"</span>); |
| | | image.InstallPackage(<span class="str">"MyCompany.CanDriver"</span>, <span class="str">"latest"</span>, <span class="str">"release"</span>); |
| | | image.QueryAvailable(<span class="str">"CAN"</span>); <span class="cmt">// ååºåéå
</span> |
| | | image.UninstallPackage(<span class="str">"OldDriver"</span>); <span class="cmt">// ææ¸
å精确å é¤</span></code></pre> |
| | | |
| | | <div class="info">å¯¹ä½ ä»¬çä»·å¼ï¼æªæ¥å¦æå"HMI å
åµé©±å¨å¸åº"ï¼å¯ä»¥ç´æ¥è° Image API å®ç°<strong>çé¢éç¹å ä¸å®æé©±å¨å级</strong>ï¼æ éè¿ç»´ä»å
¥ã</div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s9">9. ä¸ TapProject ç°ææ¶æçæ å°ä¸å·®è·</h2> |
| | | |
| | | <h3>9.1 æ¦å¿µå¯¹ç
§è¡¨</h3> |
| | | <table> |
| | | <tr><th>TapProject ç°æ</th><th>OpenTAP 对åºç©</th><th>å¹é
度</th></tr> |
| | | <tr><td>IDeviceDriver + DriverFactory switch</td><td>Instrument åç±» + PluginSearcher åå°åç°</td><td>â
ç´æ¥æ¿æ¢</td></tr> |
| | | <tr><td>DeviceConfigï¼SQLite DeviceDefinitionï¼</td><td>BenchStore / ResourceSettingsï¼XML settings storeï¼</td><td>â ï¸ éè¦åå忥éé
å¨</td></tr> |
| | | <tr><td>IResourceManager é¢çº¦ + ResourceOwnerToken ç§çº¦</td><td>SynchronizationManagerï¼ä»
è¿ç¨å
éï¼</td><td>â OpenTAP 没æè·¨è¿ç¨/è·¨ä¼è¯ä»²è£ï¼<strong>å¿
é¡»ä¿çä½ ä»¬ç</strong></td></tr> |
| | | <tr><td>IAutoDeviceFacade + IAutoDeviceLeaseï¼Per-Stepï¼</td><td>TestStep 屿§ç»å® Instrument + RequestLock</td><td>â
è¯ä¹çä»·ï¼ç§çº¦æ´ç»</td></tr> |
| | | <tr><td>HMI æä»¶ PluginLoaderï¼WPF UIï¼</td><td>æ 对åºï¼OpenTAP ä¸ç®¡ UIï¼</td><td>â ä¿æç¬ç«</td></tr> |
| | | <tr><td>驱å¨åå=æ· DLL+éç¼è¯</td><td>.opentap å
+ tap package install + ç§æä»åº</td><td>â
æ¬æ¬¡æ¹é æ ¸å¿æ¶ç</td></tr> |
| | | </table> |
| | | |
| | | <h3>9.2 æ¡¥æ¥è®¾è®¡ï¼å轨并è¡</h3> |
| | | <div class="mermaid"> |
| | | graph TB |
| | | subgraph ç»ä¸å±["Aging.Infrastructureï¼ä¿çï¼"] |
| | | F["IAutoDeviceFacade"] |
| | | L["IAutoDeviceLease"] |
| | | RM["IResourceManagerï¼è·¨ä¼è¯ä»²è£ï¼"] |
| | | end |
| | | subgraph éé
å±["æ°å¢ï¼Driver éé
"] |
| | | REG["DriverRegistry<br/>åå°æ«æ Drivers/*.dll<br/>ï¼é¶æ®µä¸ï¼èªç è½»éï¼"] |
| | | BRIDGE["TapInstrumentBridge<br/>OpenTAP Instrument â IDeviceDriver<br/>ï¼é¶æ®µäºï¼å¯éï¼"] |
| | | end |
| | | subgraph 驱å¨çæ["两ç§é©±å¨å½¢æå¹¶å"] |
| | | D1["èªç 驱å¨<br/>IDeviceDriverProvider<br/>â æ .opentap å
åå"] |
| | | D2["ç¬¬ä¸æ¹ OpenTAP 仪å¨å
<br/>Keysight/NationalInstruments<br/>â tap package install ç´æ¥ç¨"] |
| | | end |
| | | F --> RM |
| | | F --> REG |
| | | REG --> D1 |
| | | BRIDGE --> D2 |
| | | BRIDGE --> REG |
| | | </div> |
| | | |
| | | <h3>9.3 ä¸ä¸ªå
³é®å·®è·ä¸å¯¹ç</h3> |
| | | <table> |
| | | <tr><th>å·®è·</th><th>å½±å</th><th>对ç</th></tr> |
| | | <tr><td>OpenTAP æ ç产/ç»´æ¤äºæ¥ä»²è£</td><td>å
¨èªå¨ä¸æå¨è°è¯å¯è½æè½¦ï¼æ£æ¯ä½ 们åç§çº¦ç卿ºï¼</td><td>ä¿ç IResourceManagerï¼å¨ Instrument.Open() éè°ç¨ Reserveï¼Close() é Release</td></tr> |
| | | <tr><td>仪å¨é
ç½®åæºï¼SQLite vs settings storeï¼</td><td>注å页æ¹ç«¯ç¹ãåºåéç¨æ§å°å</td><td>以 DeviceConfig 为å¯ä¸çæºï¼åä¸ä¸ªå¯¼åºå¨çæ <code>InstrumentSettings.xml</code>ï¼æåå导å
¥</td></tr> |
| | | <tr><td>ä½ ä»¬ç HMI 宿主 â OpenTAP Editor</td><td>仪å¨ä¸ææ¡å¨ WPF éä¸ä¼èªå¨åºç°</td><td>ä½ ä»¬ç DeviceEditModal ä» DriverRegistry/PluginManager æä¸¾ç±»åå¡«å
ComboBoxï¼å·²æ ForceRefreshForTest 模å¼ï¼åçï¼</td></tr> |
| | | </table> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s10">10. è½å°è·¯çº¿å»ºè®®ä¸ææ¬è¯ä¼°</h2> |
| | | |
| | | <table> |
| | | <tr><th>é¶æ®µ</th><th>åä»ä¹</th><th>å·¥ä½é</th><th>æ¶ç</th></tr> |
| | | <tr> |
| | | <td><strong>é¶æ®µ 0ï¼å·²å®æï¼</strong></td> |
| | | <td>AutoDeviceFacade + Lease + ç±»åå CAN æå¡</td> |
| | | <td>â</td> |
| | | <td>è°ç¨ä½éªå·²è§£å³</td> |
| | | </tr> |
| | | <tr> |
| | | <td><strong>é¶æ®µ 1</strong></td> |
| | | <td>èªç <code>IDeviceDriverProvider</code> + <code>DriverRegistry</code> åå°æ«æ <code>Drivers/*.dll</code>ï¼<br>CAN 驱卿æç¬ç«é¡¹ç®ï¼ä¸¢ DLL å
ç¼è¯ä¸»ç¨åºï¼</td> |
| | | <td>~2-3 人æ¥</td> |
| | | <td>è§£å³"å 驱å¨å¿
é¡»éç¼è¯"ç 80% çç¹ï¼ææ¯æ æ å¼å
¥</td> |
| | | </tr> |
| | | <tr> |
| | | <td><strong>é¶æ®µ 2</strong></td> |
| | | <td>ç»æ¯ä¸ªé©±å¨å·¥ç¨å <code>package.xml</code>ï¼ç¨ <code>tap package create</code> äº§åº <code>.opentap</code>ï¼æå
ç½ç§æä»åºï¼æä»¶æå¡å¨å³å¯ï¼</td> |
| | | <td>~2 人æ¥</td> |
| | | <td>çæ¬åååãä¾èµæ£æ¥ãç°åº <code>tap package install</code> ä¸é®è£
</td> |
| | | </tr> |
| | | <tr> |
| | | <td><strong>é¶æ®µ 3ï¼å¯éï¼</strong></td> |
| | | <td><code>TapInstrumentBridge</code>ï¼æ°ç硬件仪å¨ç´æ¥å <code>Instrument</code> å类走 OpenTAP çæï¼æ¡¥æ¥å IDeviceDriver å¤ç¨ç§çº¦</td> |
| | | <td>~5-10 人æ¥</td> |
| | | <td>å¯ç´æ¥å¤ç¨ Keysight NI-DMMãPickering å¼å
³çæ°ç¾ä¸ªç°æå®æ¹å
ï¼<strong>çå»èªç SCPI 驱å¨</strong></td> |
| | | </tr> |
| | | <tr> |
| | | <td><strong>é¶æ®µ 4ï¼è¿æï¼</strong></td> |
| | | <td>HMI å
åµ"驱å¨ç®¡çå¨"页é¢è° Image API åçé¢çº§å级</td> |
| | | <td>~3 人æ¥</td> |
| | | <td>è¿ç»´èªå¨å</td> |
| | | </tr> |
| | | </table> |
| | | |
| | | <div class="warn"> |
| | | <strong>é£é©æç¤ºï¼</strong> |
| | | <ul> |
| | | <li>é¶æ®µ 1 åå°å è½½è¥ç¨ <code>Assembly.LoadFrom</code> ä¼éæä»¶å¯¼è´æ æ³çæ¿æ¢ï¼å»ºè®® <code>AssemblyLoadContext</code>ï¼.NET Core 飿 ¼ï¼net472 æ æ¤ API â éå为 <code>AppDomain</code> éç¦»ææ¥å"éå¯çæ"ï¼ã</li> |
| | | <li>OpenTAP 9.31 ç netstandard2.0 æä»¶ SDK å¨ net472 è¿è¡æ£å¸¸ï¼ä½ <strong>ä¸è¦å设</strong>å
¶å
管çå¨ä¼ç®¡ç net472 主ç¨åºââå®ç®¡ççæ¯ OpenTAP å®è£
ç®å½ï¼ä½ 们主ç¨åºè¥è¦å©ç¨ .opentapï¼éè¦æå¼æè£
æä¸ä¸ª"åµå
¥å¼ OpenTAP ç®å½"ã</li> |
| | | <li>ç§æå
ä»åºæ é´ææ¶æ³¨æå
ç½é离ï¼å®æ¹ä»åºå°åå¯ <code>tap repo remove</code> ç¦ç¨å¤ç½è®¿é®ã</li> |
| | | </ul> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s11">11. ç»è®º</h2> |
| | | |
| | | <div class="success"> |
| | | <ol> |
| | | <li><strong>OpenTAP ç Instrument æ¯"èµæºåæä»¶"</strong>ï¼ç»§æ¿ <code>Instrument : Resource</code> å³èªå¨è·å¾åç°ãåºååç»å®ãçå½å¨ææç®¡ï¼SCPI åºæ¯æå¼ç®±å³ç¨ç <code>ScpiInstrument</code>ã</li> |
| | | <li><strong>æä»¶å
ï¼.opentapï¼æ¯åååå
èéå¼ç¨åå
</strong>ï¼ZIP + package.xmlï¼ä¾èµè§£æç¨ SemVerï¼å¹³å°å·®å¼åé æ¡ä»¶åéï¼å®è£
å° <code>Packages/<name>/</code> é离ç®å½ï¼å¸è½½ç²¾ç¡®ææ¸
åã</li> |
| | | <li><strong>"å
éç¼è¯å 驱å¨"两æ¡è·¯é½è½èµ°</strong>ï¼è½»éèªç DriverRegistryï¼é¶æ®µ 1ï¼ç«å»è§æï¼ï¼ææ¥æ± OpenTAP å
çæï¼é¶æ®µ 2/3ï¼é¿ææ¶ç大ï¼å¯ç½å«åå宿¹é©±å¨ï¼ã</li> |
| | | <li><strong>ä½ ä»¬ç IResourceManager ç§çº¦ä½ç³»æ¯ OpenTAP 缺失çè½å</strong>ï¼æ¹é ä¸åºä¿çå¹¶åç§»å° Instrument.Open()/Close() é©åï¼è䏿¯è¢«æ¿ä»£ã</li> |
| | | <li><strong>æ¨èç»å</strong>ï¼é¶æ®µ 1 å
è¡ï¼2-3 人æ¥è§£å³ä¸»çç¹ï¼â é¶æ®µ 2 ä¸ç§æä»åºï¼å 2 人æ¥ï¼â æçå®ç¡¬ä»¶éæ±å³å®æ¯å¦è¿é¶æ®µ 3ã</li> |
| | | </ol> |
| | | </div> |
| | | |
| | | <footer> |
| | | OpenTAP Instrument + æä»¶å
æºå¶åæ · TapProject 驱å¨çææè°ç · 2026-11-03<br> |
| | | åèï¼opentap.io ææ¡£ãgithub.com/opentap/opentapï¼package.xml / Engine/Instrument.cs æºç 宿µï¼ |
| | | </footer> |
| | | |
| | | <script> |
| | | mermaid.initialize({ |
| | | startOnLoad: true, theme: 'default', securityLevel: 'loose', |
| | | fontFamily: 'Segoe UI, Microsoft YaHei, sans-serif', |
| | | flowchart: { curve: 'basis', padding: 16 }, |
| | | sequence: { showSequenceNumbers: false, actorMargin: 50 } |
| | | }); |
| | | </script> |
| | | |
| | | </body> |
| | | </html> |
| New file |
| | |
| | | <!DOCTYPE html> |
| | | <html lang="zh-CN"> |
| | | <head> |
| | | <meta charset="UTF-8"> |
| | | <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| | | <title>ä»ªå¨æ³¨åä¸ä»ªå¨è°è¯ ç³»ç»æ¶æè¯´æ · V3.0 鿢³çç</title> |
| | | <script src="https://cdn.jsdelivr.net/npm/mermaid@10/dist/mermaid.min.js"></script> |
| | | <style> |
| | | * { box-sizing: border-box; } |
| | | body { |
| | | font-family: -apple-system, "Segoe UI", "Microsoft YaHei", "PingFang SC", sans-serif; |
| | | max-width: 1240px; margin: 0 auto; padding: 32px 24px 80px; |
| | | background: #FAFAFA; color: #212121; line-height: 1.75; |
| | | } |
| | | h1 { font-size: 29px; color: #1565C0; border-bottom: 3px solid #1976D2; padding-bottom: 12px; } |
| | | h2 { font-size: 23px; color: #0D47A1; margin-top: 42px; padding-left: 12px; border-left: 4px solid #FF9800; } |
| | | h3 { font-size: 17px; color: #37474F; margin-top: 26px; } |
| | | h4 { font-size: 15px; color: #455A64; margin-top: 18px; } |
| | | .subtitle { color: #757575; font-size: 14px; margin-bottom: 24px; } |
| | | .card { background: white; border-radius: 8px; padding: 18px 22px; margin: 16px 0; box-shadow: 0 2px 8px rgba(0,0,0,0.06); } |
| | | .highlight { background: #FFF8E1; border-left: 4px solid #FFC107; padding: 12px 16px; margin: 12px 0; border-radius: 4px; } |
| | | .info { background: #E3F2FD; border-left: 4px solid #2196F3; padding: 12px 16px; margin: 12px 0; border-radius: 4px; } |
| | | .success { background: #E8F5E9; border-left: 4px solid #4CAF50; padding: 12px 16px; margin: 12px 0; border-radius: 4px; } |
| | | .warn { background: #FBE9E7; border-left: 4px solid #FF5722; padding: 12px 16px; margin: 12px 0; border-radius: 4px; } |
| | | table { width: 100%; border-collapse: collapse; margin: 16px 0; background: white; border-radius: 6px; overflow: hidden; box-shadow: 0 1px 4px rgba(0,0,0,0.06); font-size: 13.5px; } |
| | | th { background: #1976D2; color: white; padding: 9px 12px; text-align: left; font-weight: 600; } |
| | | td { padding: 8px 12px; border-bottom: 1px solid #EEEEEE; vertical-align: top; } |
| | | tr:nth-child(even) td { background: #FAFAFA; } |
| | | tr:hover td { background: #E3F2FD; } |
| | | code { font-family: "Consolas", "Monaco", monospace; background: #F5F5F5; color: #C62828; padding: 2px 6px; border-radius: 3px; font-size: 13px; } |
| | | pre { background: #263238; color: #ECEFF1; padding: 16px 20px; border-radius: 6px; overflow-x: auto; font-family: "Consolas", monospace; font-size: 13px; line-height: 1.55; } |
| | | pre code { background: transparent; color: inherit; padding: 0; font-size: 13px; } |
| | | .mermaid { background: white; padding: 20px; border-radius: 8px; margin: 20px 0; text-align: center; box-shadow: 0 2px 8px rgba(0,0,0,0.06); overflow-x: auto; } |
| | | ul { padding-left: 22px; } li { margin: 4px 0; } |
| | | .toc { background: #F5F5F5; padding: 16px 24px; border-radius: 6px; margin: 20px 0; column-count: 2; column-gap: 40px; } |
| | | .toc a { color: #1976D2; text-decoration: none; display: block; padding: 3px 0; break-inside: avoid; } |
| | | .toc a:hover { text-decoration: underline; } |
| | | .kwd { color: #FFCC80; } .str { color: #C5E1A5; } .cmt { color: #546E7A; } .fn { color: #82AAFF; } .num { color: #F78C6C; } |
| | | .good { color: #2E7D32; font-weight: 600; } .bad { color: #C62828; font-weight: 600; } .mid { color: #EF6C00; font-weight: 600; } |
| | | footer { margin-top: 60px; padding-top: 20px; border-top: 1px solid #E0E0E0; color: #757575; font-size: 12px; text-align: center; } |
| | | .path { font-family: Consolas, monospace; font-size: 12.5px; background: #ECEFF1; color: #37474F; padding: 1px 6px; border-radius: 3px; } |
| | | .iron { display:inline-block; background:#E8EAF6; color:#283593; border-radius:12px; padding:1px 10px; font-size:12px; font-weight:700; margin-right:6px; } |
| | | </style> |
| | | </head> |
| | | <body> |
| | | |
| | | <h1>ä»ªå¨æ³¨åä¸ä»ªå¨è°è¯ · ç³»ç»æ¶æè¯´æï¼V3.0 鿢³ççï¼</h1> |
| | | <div class="subtitle">åºäºãLocal + DeviceBroker æ··åæ¶æè¯¦ç»è®¾è®¡è¯´æä¹¦ V3.0ãå¯¹ç°æç³»ç»ç䏿¬¡å®æ´éæåè¿° ââ å« TestStep 仪å¨ä½¿ç¨è§è · 2026-11-03</div> |
| | | |
| | | <div class="toc"> |
| | | <a href="#s1">ä¸ãæ»å®ä½ï¼ä¸å¥è¯è¯»æ°æ¶æ</a> |
| | | <a href="#s2">äºãäºåå屿¨¡å</a> |
| | | <a href="#s3">ä¸ãä»ªå¨æ³¨åï¼DeviceConfigï¼çè§è²éå¡</a> |
| | | <a href="#s4">åã仪å¨è°è¯ï¼DeviceDebugï¼çè§è²éå¡</a> |
| | | <a href="#s5">äºãè¿ç¨ææä¸è´£ä»»è¾¹ç</a> |
| | | <a href="#s6">å
ãæ¥å£å¥çº¦æ¼åæ å°ï¼ç°æä»£ç â V3.0ï¼</a> |
| | | <a href="#s7">ä¸ã䏿¡æ ¸å¿æ°æ®æµ</a> |
| | | <a href="#s8">å
«ãä¿æä¸åçé¨åï¼æ¶æè¿ç»æ§èµäº§ï¼</a> |
| | | <a href="#s9">ä¹ãTestStep 仪å¨ä½¿ç¨è§è</a> |
| | | <a href="#s10">åãç»è®º</a> |
| | | </div> |
| | | |
| | | <!-- ======================================================== --> |
| | | <h2 id="s1">ä¸ãæ»å®ä½ï¼ä¸å¥è¯è¯»æ°æ¶æ</h2> |
| | | |
| | | <div class="highlight"> |
| | | <strong>é
ç½®åç产"ä¸å¯åçç"ï¼ä»²è£å宿¤"è°ææç¢°"ï¼å®¿ä¸»åæ§è¡"è°æ¥å¨æ"ï¼ä¸å¡åå³å®"该ä¸è¯¥å¤ FAIL"ï¼æ°æ®åä¿è¯"äºåè½è¯´æ¸
"ã</strong> |
| | | <br><br> |
| | | ä»ªå¨æ³¨åä¸ååªæ¯"å¢å æ¹æ¥è¡¨å"ï¼èæ¯é
ç½®åç<strong>åå¸ç®¡çº¿</strong>ï¼ä»ªå¨è°è¯ä¸ååªæ¯"è¿ä¸åå½ä»¤"ï¼èæ¯ä»²è£åä¸ä¸ä¸ªç¹æ®çåæéææè
ï¼<strong>Maintenance Lease</strong>ï¼ã |
| | | </div> |
| | | |
| | | <div class="card"> |
| | | <strong>䏿§æ¶æçæ ¹æ¬åºå«ï¼</strong>æ§æ¶æé DeviceConfig â <code>data.db</code> â DeviceDebug æ¯"两个模åå
±äº«ä¸å¼ 表"çéå¼å¥çº¦ï¼æ°æ¶æé<strong>没æä»»ä½æ¨¡åç´æ¥æä½å«äººçåº</strong>ââæ³¨åäº§ç©æ¯åå¸éå®çå¿«ç
§ï¼è°è¯/ç产æ¶è´¹çæ°¸è¿æ¯å¿«ç
§ + ç§çº¦å¥æï¼ç©ç I/O æ°¸è¿åªåçå¨å¯ä¸å®¿ä¸»å
ã |
| | | </div> |
| | | |
| | | <!-- ======================================================== --> |
| | | <h2 id="s2">äºãäºåå屿¨¡å</h2> |
| | | |
| | | <div class="mermaid"> |
| | | graph TB |
| | | subgraph D1["â é
ç½®åï¼è®¾è®¡æ¶ï¼"] |
| | | CFG["DeviceConfig 注å页<br/>Draft â Validated â Published<br/>â Prepared â Effective â Retired"] |
| | | SNAP["config_snapshotï¼ä¸å¯å+SHA256ï¼<br/>resource_definition · slot_binding<br/>broker_task_template · effective_config"] |
| | | CFG --> SNAP |
| | | end |
| | | subgraph D2["⡠仲è£åï¼è¿è¡æ¶ï¼"] |
| | | LS["LeaseStore<br/>arb.dbï¼Local åï¼<br/>broker-bxx.dbï¼Broker åï¼"] |
| | | RS["resource_stateï¼generation/phase/epochï¼<br/>parent_permit · lease_history"] |
| | | ARB["LeaseArbiter<br/>ä¼å
级ç©éµ · 让渡 · æ¢å æç»"] |
| | | LS --- RS |
| | | end |
| | | subgraph D3["⢠æ§è¡å®¿ä¸»åï¼ç©ç I/Oï¼"] |
| | | WKR["Worker Ã6ï¼W01âW06ï¼<br/>Local 设å¤å¯ä¸å®¿ä¸»<br/>è¿æ¥å®å« Mutex ä¸ç¨çº¿ç¨"] |
| | | BRK["Broker Ã3ï¼B01âB03ï¼+B00<br/>SessionActor · TaskScheduler<br/>Journal/Outbox · Watchdog"] |
| | | DF["DriverFactory åå<br/>宿主驱å¨ï¼è½½SDKï¼ vs BrokerProxyï¼ä¸è½½SDKï¼"] |
| | | end |
| | | subgraph D4["⣠ä¸å¡æ§è¡å"] |
| | | TAP["OpenTAP TestPlan / Recipe<br/>120 à DUTContextï¼å¼æ¥è®¡æ¶ï¼<br/>é»è¾è½åç»å®ï¼ç©ºä½+è½å<br/>ä¸é COM / IP / è¿ç¨"] |
| | | RUNS["RunService<br/>䏿çªå£ · ç»è·/éæµå³ç"] |
| | | end |
| | | subgraph D5["â¤ æ°æ®å"] |
| | | DB1[("aging_system.db<br/>é
ç½®+审计索å¼")] |
| | | DB2[("arb.db / broker-bxx.db<br/>åå®ååè
")] |
| | | DB3[("æ¯ Run aging_data.db<br/>éæ ·åç彿¡£")] |
| | | end |
| | | SNAP -->|"å»ç» RunSnapshot<br/>äºå
Hash 对账"| TAP |
| | | TAP -->|"AcquireGroup"| ARB |
| | | ARB --> RS |
| | | TAP -->|"DeviceOperation<br/>Grants+IdemKey"| WKR & BRK |
| | | WKR & BRK --> DB2 |
| | | TAP --> DB3 |
| | | CFG --> DB1 |
| | | </div> |
| | | |
| | | <table> |
| | | <tr><th>å</th><th>è§£å³ä»ä¹</th><th>æ ¸å¿äº§ç©</th><th>ä¸åé</th></tr> |
| | | <tr><td>â é
ç½®å</td><td>ç©çä¸ççæ°ååªç + çæä»ªå¼</td><td>ä¸å¯åå¿«ç
§ + Hash</td><td>INV-04 å¯å¨åå»ç» Recipe/Config/Driver/DBC/UDS/æ å° Hash</td></tr> |
| | | <tr><td>⡠仲è£å</td><td>è°ææå¨è¿å°ä»ªå¨ä¸åå½ä»¤</td><td>LeaseGrantï¼æ¯èµæºä¸ä»£ï¼</td><td>INV-02 é¢çº¦ææä¸å½ä»¤ä¸²è¡ååå±</td></tr> |
| | | <tr><td>⢠æ§è¡å®¿ä¸»å</td><td>ç©ç奿ç¬å + ååçæ®µ</td><td>SessionGate + Task Journal</td><td>INV-01 åä¸ PhysicalSessionKey åªæä¸ä¸ª I/O 宿主</td></tr> |
| | | <tr><td>⣠ä¸å¡æ§è¡å</td><td>å·¥èºç¼æä¸åæ ¼å¤å®</td><td>Verdict / DUTContext</td><td>INV-05 åæä½å¨å®é
宿主å
¥å£æ ¡éªï¼å®¢æ·ç«¯ä»
æç¤º</td></tr> |
| | | <tr><td>â¤ æ°æ®å</td><td>äºå追溯ä¸å®¹éæ²»ç</td><td>ååºå离 + Outbox</td><td>INV-06 å·²åæªåè®° Unknownï¼ç¦æ¢å½æªæ§è¡</td></tr> |
| | | </table> |
| | | |
| | | <!-- ======================================================== --> |
| | | <h2 id="s3">ä¸ãä»ªå¨æ³¨åï¼DeviceConfigï¼çè§è²éå¡</h2> |
| | | |
| | | <h3>3.1 æ°æ§è责对ç
§</h3> |
| | | <table> |
| | | <tr><th>维度</th><th>æ§æ¨¡åï¼ç°ç¶ä»£ç ï¼</th><th>V3.0 模å</th></tr> |
| | | <tr><td>æ¬è´¨</td><td>设å¤ä¿¡æ¯ CRUD 表å</td><td><strong>é
ç½®åå¸ç®¡çº¿</strong>ï¼DraftâValidatedâPublishedâPreparedâEffectiveâRetiredï¼</td></tr> |
| | | <tr><td>åå¨</td><td><code>DeviceDefinition</code> å¯åè¡ï¼æ¹äºç«å³çæ</td><td><code>config_snapshot</code> <strong>ä¸å¯å</strong>ï¼<code>(config_hash, resource_key)</code> å¤å主é®ï¼åæ»ä¹æ°å»ºçæ¬è®°å½</td></tr> |
| | | <tr><td>çæ¬ç®¡ç</td><td><code>SaveDraft/Publish/Apply</code> æ¹ç¶æå</td><td>åå¸äº§ç© = JSON å¿«ç
§ + SHA256ï¼è¿è¡æ¶å»ç» RunSnapshotï¼Recipe/Driver/DBC/UDS/æ å° äºä»¶å¥ï¼</td></tr> |
| | | <tr><td>è®¾å¤æ è¯</td><td>Endpoint å符串ç´åï¼<code>CAN_BUS_1:0</code>ï¼</td><td><strong>EndpointRef</strong>ï¼åæ®/å°åå¼ç¨å离ï¼+ <strong>PhysicalIdentity</strong>ï¼SN ç©ç身份ï¼é²æ¢æºå身份æ¼ç§»ï¼</td></tr> |
| | | <tr><td>å·¥ä½ç»å®</td><td><code>SlotDeviceMapping</code> ä¸å¼ æ å°è¡¨</td><td><code>slot_binding</code>ï¼éå¿«ç
§çæ¬åï¼+ 120 æ¡æ å°ç±å
¬å¼çæå¨äº§åºå¹¶ç¦»çº¿æ ¡éª</td></tr> |
| | | <tr><td>å²çªæ£æµ</td><td><code>DetectConflicts()</code> è·ä¸æ¬¡ SQL åç»</td><td>åå¸é¨ç¦ï¼èº«ä»½å»éã驱å¨ä½æ°ãè½åè¦çãAuthority ä¸è´ã<strong>åä¸ PhysicalSessionKey åªå
许ä¸ä¸ª I/O 宿主ï¼INV-01ï¼</strong>ï¼ä¸è¿å®¡ç¦æ¢åå¸</td></tr> |
| | | </table> |
| | | |
| | | <h3>3.2 è®¾å¤æ³¨å页鿰å¢çåæ®µï¼æ¹é æ¸
åï¼</h3> |
| | | <pre><code>executionMode Local | Broker <span class="cmt">// æç©çææå³å®ï¼ç¦æ¢è¿è¡æ¶æ··ç¨</span> |
| | | authorityId broker-b01 / local-ipc01 <span class="cmt">// æå±ä»²è£å</span> |
| | | brokerId + ownerProcessId <span class="cmt">// Broker åå½å±</span> |
| | | physicalSessionKey psu01/main <span class="cmt">// åä¸ç©çè¿æ¥æ è¯ï¼SessionGate é®ï¼</span> |
| | | physicalIdentity serial:TBD-PSU01 <span class="cmt">// SN ç©ç身份ï¼TBD ç¦æ¢è¿åå¸é¨ç¦</span> |
| | | accessPolicy Exclusive | ExclusiveChannelWithParentPermit |
| | | | TimeShared | SharedRead <span class="cmt">// ç¬å /åæ¶ççç¥å£°æä½ç½®</span> |
| | | safeStateProfile PSU-SAFE-001 <span class="cmt">// æ¢å¤/äº¤æ¥æ¶çå®å
¨ææ¨¡æ¿</span> |
| | | leasePolicy TTL / Renew / Handover <span class="cmt">// å
¨å±é»è®¤ + å级è¦ç</span></code></pre> |
| | | |
| | | <h3>3.3 å叿µç¨ï¼æ¿ä»£ç°å¨ç"åºç¨"æé®ï¼</h3> |
| | | <div class="mermaid"> |
| | | flowchart LR |
| | | A[ç¼è¾è稿<br/>Draft] --> B[ç¦»çº¿æ ¡éª<br/>身份å²çª/è½åè¦ç<br/>éå¼/驱å¨ä¾èµ] |
| | | B --> C[Validated] |
| | | C --> D["ç»´æ¤çªå£æ¢æµ<br/>è¿æ¥/éé寻å/读å"] |
| | | D --> E["Published<br/>ä¸å¯åå¿«ç
§+Hash"] |
| | | E --> F["åå Prepare<br/>åå®¿ä¸»åæ§å Hash"] |
| | | F --> G["åæºçªå£ Apply<br/>åRunâæ¤åæâå®å
¨æè¿<br/>âå宿主Apply+èªæ£"] |
| | | G --> H{å
¨é¨æå?} |
| | | H -->|æ¯| I["æ´æ° Effective æé<br/>Run å建æ¶å¤å¶å¿«ç
§"] |
| | | H -->|é¨å失败| J["æ´ç» ApplyFailed<br/>黿¢ Run å¯å¨<br/>ç»ä¸åæ§çææ°ç"] |
| | | J -.-> F |
| | | </div> |
| | | |
| | | <div class="info"><strong>å
³é®è¯ä¹ååï¼</strong>"çæ"ä»ä¸æ¬¡ UPDATE åæä¸åºéè¦<strong>ææå®¿ä¸»åæ§ç¡®è®¤</strong>ç䏤鶿®µä»ªå¼ãæ§ç¨¿ <code>ApplyVersion()</code> é£ç§åç¹æ¹ç¶æçé»è¾ä¸å¤åå¨ï¼æ¢æ Run ç»§ç»å¼ç¨æ§ Hashï¼ä¸å
许éé»åçã</div> |
| | | |
| | | <!-- ======================================================== --> |
| | | <h2 id="s4">åã仪å¨è°è¯ï¼DeviceDebugï¼çè§è²éå¡</h2> |
| | | |
| | | <h3>4.1 æéè¦çæåï¼çæ§ â åæé</h3> |
| | | <div class="mermaid"> |
| | | graph TB |
| | | OLD["æ§æ¨¡åï¼éè®¾å¤ â OpenSession(ReadOnly)<br/>â [RequestMaintenance â Activate] â åå½ä»¤<br/>â ï¸ çæ§ååæéæ··å¨åä¸ä¸ªä¼è¯ç¶ææºé"] |
| | | OLD ==> NEW1["æ°æ¨¡å · çæ§éè·¯ï¼å¸¸é©»ï¼æ ç§çº¦ï¼<br/>å®¿ä¸»ç¶æç¼å / Telemetry Fanout â DeviceMonitorView<br/>æ°æ®å¸¦ æ¥æº+è´¨é+åºåå·+æ¶é´ï¼Gap å¿
é¡»æ¾å¼åç°"] |
| | | OLD ==> NEW2["æ°æ¨¡å · åæééè·¯ï¼ç»´æ¤ä¼è¯ = ç³è¯· Maintenance ç§çº¦ï¼<br/>å¿
é¡»ç»è¿ä»²è£åï¼çå ç¨ â Draining â æç©º â å®å
¨ç¡®è®¤ â Grant"] |
| | | </div> |
| | | |
| | | <h3>4.2 ç»´æ¤ä¼è¯ç¶ææºï¼å¯¹ç°æ DebugSessionState çæ©å±ï¼</h3> |
| | | <div class="mermaid"> |
| | | stateDiagram-v2 |
| | | [*] --> ViewOnly: æå¼è®¾å¤(ä»
çæ§) |
| | | ViewOnly --> Requested: ç³è¯·ç»´æ¤(å¡«çç±) |
| | | Requested --> Draining: Runåè°å®å
¨æåè¯¥ç©ºä½ |
| | | Draining --> MaintenanceActive: æç©º+å®å
¨å¨ä½è¯»å+æ§å¥æå
³é\n+Mutexå®å«ç§»äº¤+èéæç»ç¡®è®¤ |
| | | Draining --> RecoveryRequired: 交æ¥è¶
æ¶(30s) |
| | | RecoveryRequired --> ViewOnly: æ¢å¤æ ¸å¯¹å®æ\n(ä¸è½å "çäº30ç§"ç´æ¥ç»ç»´æ¤è
âINV-03) |
| | | MaintenanceActive --> Exiting: éåºç»´æ¤ |
| | | Exiting --> Released: 读å夿 ¸+æ¢å¤éä¿¡é
ç½®+æ¥è¦åºçº¿ |
| | | Released --> [*]: RunServiceæ¾å¼æ¢å¤ææ°å»ºRun |
| | | </div> |
| | | |
| | | <table> |
| | | <tr><th>ç°æç¶æ/æ¹æ³</th><th>V3.0 å»å</th></tr> |
| | | <tr><td>ReadOnly / OpenSession</td><td>æä¸º ViewOnlyï¼çæ§ï¼+ Requestedï¼åæç³è¯·ï¼ä¸¤ä¸ªæ¦å¿µ</td></tr> |
| | | <tr><td>RequestMaintenanceï¼å
å Reserveï¼</td><td>è¿å
¥ä»²è£åï¼æ¾ç¤ºå ç¨è
/Run/DUT/å©ä½ç§çº¦/ç¶åå½±å â Draining</td></tr> |
| | | <tr><td>ActivateMaintenance</td><td>ä»
å¨"æç©º + å®å
¨å¨ä½è¯»å + æ§å¥æ/å®å«ç¡®è®¤"åç¾åç»´æ¤ Grant</td></tr> |
| | | <tr><td>CloseSessionï¼éæ¾å
ååå
¸ï¼</td><td>å级为"æç©º I/O + ç©ç读å + ReleaseAsync"䏿¥ï¼å¤±è´¥è¿ RecoveryRequired èéåè£
æå</td></tr> |
| | | <tr><td>Faulted / RecoveryRequired</td><td>è¯ä¹ä¿çï¼ä½è¿å
¥è·¯å¾å¢å ï¼äº¤æ¥è¶
æ¶ãç»æå¤±è´¥ãéæ¾å¤±è´¥</td></tr> |
| | | </table> |
| | | |
| | | <h3>4.3 "强å¶éæ¾"æé®çæ£ç¡®è¯ä¹</h3> |
| | | <div class="warn"> |
| | | <strong>æ§ç´è§ï¼</strong>Admin ç¹ä¸ä¸ â UPDATE/DELETE ç§çº¦è¡ â 设å¤å½æã<br> |
| | | <strong>V3.0ï¼</strong>Force release <strong>åªè½è§¦å"é离 + æ¢å¤æµç¨"</strong>ââå
å¨ç©çå±ç¡®è®¤æ§ I/O å·²ç»æ¢ï¼æ§è¿ç¨å¥æå
³éãNamed Mutex å¯è·åã设å¤è¾åºè¯»åï¼ï¼å¦åå®å¯ä¿æ RecoveryRequiredãå¤äººä½ä¸ãæçº¿ãæ¥çº¿ç许å¯<strong>ä¸ç±è½¯ä»¶ token åç¬å¤å®</strong>ï¼INV-07ï¼è½¯ä»¶ç§çº¦ä¸æ¿ä»£æçµä¸ç¡¬ä»¶èéï¼ã |
| | | </div> |
| | | |
| | | <h3>4.4 审计å级</h3> |
| | | <p><code>debug_operation</code> ä¿çï¼æ°å¢ä¸¤åï¼<code>lease_generation</code>ï¼åªä¸ä»£ææè
ï¼ã<code>idempotency_key</code>ï¼éè¯å»éï¼UNIQUE é¨åç´¢å¼ï¼ãä»»ä½ä¸æ¡å岿令å¯åçï¼<strong>è°ï¼OwnerId+Principalï¼ãä»¥åªæ¬¡ææï¼Grant å¿«ç
§ï¼ãå¨åªä¸ªé
ç½®çæ¬ï¼ConfigHashï¼ä¸ãæ¯å¦å¯è½è¢«é夿§è¡è¿</strong>ã</p> |
| | | |
| | | <!-- ======================================================== --> |
| | | <h2 id="s5">äºãè¿ç¨ææä¸è´£ä»»è¾¹ç</h2> |
| | | |
| | | <div class="mermaid"> |
| | | graph TB |
| | | HMI["HMI è¿ç¨ï¼å·¥ç¨å¸/æä½åï¼<br/>DeviceConfigView â · DeviceDebugView â¡<br/>DeviceMonitorView ⢠(æ°å»º)"] |
| | | W["Worker Ã6ï¼W01âW06ï¼æ¯20空ä½ï¼<br/>Local è®¾å¤ I/O 宿主ï¼è¿æ¥å®å« Mutex ä¸ç¨çº¿ç¨ï¼<br/>DUTExecution ç¶ææº / æ¥éª¤å¼æï¼OpenTAPï¼<br/>ç¬ç«ç»æä»»å¡ï¼ä¸å UIï¼å¤±è´¥ç«å³é»ææ°æä½ï¼"] |
| | | B["Broker Ã3ï¼B01âB03ï¼+ å¯é B00ï¼å
¨å±å
±äº«åï¼<br/>å
±äº«ä¼è¯è®¾å¤å¯ä¸ I/O 宿主<br/>SessionActorï¼æ¯çè¿æ¥åéåï¼ä¸æ¬¡ä¸æ®µåå I/Oï¼<br/>Taskæ§è¡ · Journal/Outboxååå¨ Â· Recoveryæ£æ¥ç¹"] |
| | | SUP["Supervisor<br/>åå®ä¾å®å« · éé¢æèµ· · epoch æå"] |
| | | DEV["ç©ç设å¤<br/>å·¥ä½ä¸ç¨çµæº(Local) / å¤ééPSU·CAN·温箱·PLC(Broker)"] |
| | | HMI -->|"é
ç½®åå¸/ç»´æ¤ç³è¯·(ç³è¯·åªå°ä»²è£å)"| W & B |
| | | W -->|"Localç´è¿"| DEV |
| | | B -->|"å¯ä¸å¥æ"| DEV |
| | | SUP -.->|çæ¤| W & B |
| | | </div> |
| | | |
| | | <table> |
| | | <tr><th>è¿ç¨</th><th>èè´£</th><th>æç¡®ä¸å</th></tr> |
| | | <tr><td>HMI</td><td>é
ç½®è§å¾ãç»´æ¤åæç³è¯·ãåªè¯»çæ§</td><td>䏿æç产设å¤çç©çè¿æ¥</td></tr> |
| | | <tr><td>Worker</td><td>Local 设å¤å®¿ä¸» + æ¬ç©ºä½ç»æ¥éª¤å¼æ + 弿¥çå¾
ï¼120 ç©ºä½ â 120 线ç¨ï¼</td><td>ä¸å è½½å
±äº«è®¾å¤ç SDK</td></tr> |
| | | <tr><td>Broker</td><td>å
±äº«ä¼è¯è®¾å¤å¯ä¸ I/O 宿主ãTask æçæ§è¡ã卿任å¡ã订é
饿µ</td><td><strong>ä¸å DUT åæ ¼å¤å®ãä¸è£
æ´æ¡ Recipeãä¸ç®¡ MES äºå¡</strong>ï¼ä¸æ¯ç¬¬äºå¥æµè¯å¼æï¼</td></tr> |
| | | <tr><td>Supervisor</td><td>æèµ·ãéé¢é²å¿«ééå¯å¾ªç¯ãepoch 管ç</td><td>䏿§è¡ä¸å¡å½ä»¤</td></tr> |
| | | </table> |
| | | |
| | | <div class="highlight"><strong>è¾¹çéå¾ï¼</strong> |
| | | <ul> |
| | | <li>Recipe/æ¥éª¤å¼æ<strong>ä»ä¸</strong>ç´æ¥é COM å£/IP/è¿ç¨ââåªå"ç©ºä½ S024 + è½å Power"ï¼ç± SnapshotResolver + ResourceRouter æå»ç»çæ¬è§£æåºèµæºéä¸å®¿ä¸»ï¼</li> |
| | | <li>è·¨åå¤èµæºç»ç³è¯· = åè°å¼é¢çï¼PrepareâActivateï¼ä»»ä¸å¤±è´¥ Abortï¼ï¼<strong>䏿¿è¯ºè·¨åºåå</strong>ï¼ä¸¥æ ¼å
¨æå
¨æ çå¨ä½å¿
é¡»è½å¨åä¸ Broker åææå
æä¸ä¸ª Taskï¼</li> |
| | | <li>SQLite ä¸å¾æ¬æºç£çï¼ç¦æ¢ SMB/NAS 夿ºå
±åï¼è¿æ¥æ¾å¼ <code>foreign_keys/busy_timeout</code>ï¼äºå¡å
ç¦å I/Oã</li> |
| | | </ul></div> |
| | | |
| | | <!-- ======================================================== --> |
| | | <h2 id="s6">å
ãæ¥å£å¥çº¦æ¼åæ å°ï¼ç°æä»£ç â V3.0ï¼</h2> |
| | | |
| | | <table> |
| | | <tr><th>ç°æå®ç°ï¼æ¬ä»åºï¼</th><th>V3.0 å»å</th><th>ååæ§è´¨</th></tr> |
| | | <tr> |
| | | <td><span class="path">Core/ResourceManager.cs</span>ï¼å
å Reserve/Release/ValidateOwnerï¼</td> |
| | | <td>æ§åèµæºæ¹æ³ä¿çä¸ºè¿æ¸¡ Adapterï¼æ°å¢ <code>IResourceCoordinator</code>ï¼AcquireGroup / RenewGroup / RequestHandoverï¼</td> |
| | | <td class="mid">å
¼å®¹æ©å±</td> |
| | | </tr> |
| | | <tr> |
| | | <td><span class="path">Contracts/ResourceOwnerToken.cs</span>ï¼åä¸å¯å Generationï¼</td> |
| | | <td>ä¸å¡å
æ°æ®ä¿çï¼I/O æ¹ç¨<strong>æ¯èµæºç¬ç« LeaseGrant</strong>ï¼AuthorityId / Epoch / LeaseId / Generation / ExpiresUtcMsï¼</td> |
| | | <td class="bad">ç ´åæ§ï¼ä¸ owner å¤èµæºä¸è½å
±ç¨ Generation</td> |
| | | </tr> |
| | | <tr> |
| | | <td><span class="path">Services/AutoDeviceFacade.cs</span> + IAutoDeviceLeaseï¼åæ¥ Dispose é»å¡éæ¾ï¼</td> |
| | | <td>é¨é¢è¯ä¹ä¿çï¼Lease 注å
¥ç¬ç«ç»æä»»å¡ + <code>LeaseLost</code> ä¿¡å· + <code>HandoverRequested</code>ï¼Dispose æ¹æ¾å¼å¼æ¥ Releaseï¼å¤±è´¥å¯æ¥è¯¢ãè¿æ¢å¤ï¼</td> |
| | | <td class="mid">è¯ä¹å¢å¼º</td> |
| | | </tr> |
| | | <tr> |
| | | <td><span class="path">Services/DeviceService.cs</span>ï¼deviceId+command+token 裸å½ä»¤ï¼</td> |
| | | <td>å级为 <code>IDeviceExecutor</code>ï¼ç±»åå OpCode + Grants é + IdempotencyKey + Deadlineï¼raw command ä»
ä¿çåæ§ç»´æ¤å
¥å£</td> |
| | | <td class="bad">ç产路å¾éæ</td> |
| | | </tr> |
| | | <tr> |
| | | <td><span class="path">Drivers/DriverFactory.cs</span>ï¼éæ switchï¼</td> |
| | | <td>åºå<strong>宿主驱å¨</strong>ï¼Local/Broker å
å è½½ SDKï¼ä¸ <strong>BrokerProxy</strong>ï¼å®¢æ·ç«¯ï¼ä¸å è½½ SDKï¼ï¼é
å .opentap å
ååï¼è§å§å¦¹ç¯ï¼</td> |
| | | <td class="mid">ååè§£è¦</td> |
| | | </tr> |
| | | <tr> |
| | | <td><span class="path">Plugin.DeviceDebug/Model/DebugSessionManager.cs</span></td> |
| | | <td>å¢ Draining / RecoveryRequiredï¼æ¢å¤æ¶<strong>ä¸å¯éé owner token</strong>ï¼å¿
é¡»ä½¿ç¨æä¹
å Grantï¼çæ§ä¸åæéå离</td> |
| | | <td class="mid">ç¶ææ©å±</td> |
| | | </tr> |
| | | <tr> |
| | | <td><span class="path">Plugin.DeviceConfig/Model/DeviceConfigModel.cs</span>ï¼DetectConflicts/SaveDeviceï¼</td> |
| | | <td>å²çªæ£æµç§»å
¥åå¸é¨ç¦ï¼ç¦»çº¿æ ¡éª + ç»´æ¤çªå£æ¢æµï¼ï¼å¯å表å级为ä¸å¯åå¿«ç
§</td> |
| | | <td class="mid">ä½ç½®åç§»</td> |
| | | </tr> |
| | | <tr> |
| | | <td><span class="path">data.db</span>ï¼ä¸åºä¸ç¨ï¼+ debug.db</td> |
| | | <td>æååºï¼aging_system.db / arb.db / broker-bxx.db / æ¯Run aging_data.db</td> |
| | | <td class="bad">æå¤§ç䏿¬¡æ§å·¥ç¨ï¼åå¨è¾¹çéç»</td> |
| | | </tr> |
| | | <tr> |
| | | <td><span class="path">ConnectionUtil/PipeClient.cs</span></td> |
| | | <td>V3.0 §13 认å®å
¶"ååºä¸å¯è¾¾"ï¼SendMessage ååç´æ¥ returnï¼è¯»å为æ»ä»£ç ï¼ãserverName æªçæââä¿®å¤åæ¹å¯ä½ä¸º IPC åéåºç¡</td> |
| | | <td class="bad">P0 å置修å¤é¡¹</td> |
| | | </tr> |
| | | </table> |
| | | |
| | | <div class="info"><strong>建议ï¼</strong>å¥çº¦ï¼ILeaseScope / LeaseGrant / DeviceOperation / IDeviceExecutor / BrokerTaskRequest çï¼æ½åºä¸ºç¬ç«ç±»åº <span class="path">Aging.ResourceContracts</span>ï¼é¿å
Broker / Worker / HMI ä¸ç«¯äºå¸¦ WPF ä¾èµã</div> |
| | | |
| | | <!-- ======================================================== --> |
| | | <h2 id="s7">ä¸ã䏿¡æ ¸å¿æ°æ®æµ</h2> |
| | | |
| | | <h3>7.1 ç产åå½ä»¤ï¼ä»æ¥éª¤å°ç©ç I/O ç宿´ä¸è·³é¾ï¼</h3> |
| | | <div class="mermaid"> |
| | | sequenceDiagram |
| | | autonumber |
| | | participant STEP as TestStep<br/>(â£ä¸å¡å) |
| | | participant CO as IResourceCoordinator<br/>(â¡ä»²è£å) |
| | | participant EX as IDeviceExecutor<br/>(â¢å®¿ä¸»å) |
| | | participant SG as SessionGate/Actor<br/>(â¢å®¿ä¸»å) |
| | | participant DRV as å®¿ä¸»é©±å¨ |
| | | participant DB as è¿è¡åº(Journal/Outbox) |
| | | |
| | | STEP->>CO: AcquireGroup(èµæºé, OwnerKind=Production, ConfigHash) |
| | | CO->>DB: BEGIN IMMEDIATE äºå¡CAS(éèµæº FreeâActive, generation+1)<br/>+ parent_permit æ£æ¥ + lease_history |
| | | DB-->>CO: æäº¤æå |
| | | CO-->>STEP: ILeaseScopeï¼Grants + ç»æä»»å¡ + LeaseLostï¼ |
| | | STEP->>EX: DeviceOperation(OpCode, Params, IdemKey, Grants, Deadline) |
| | | EX->>EX: å
¥éæ ¡éª: granté/epoch/ConfigHash/deadline/è¿æ¥èº«ä»½ |
| | | EX->>SG: åºéæé¨: [éééâåâ读ååº] ååçæ®µ |
| | | SG->>DB: MarkRunning å
æä¹
åï¼I/O ä¹åï¼ |
| | | SG->>DRV: ç©çæ§è¡ |
| | | DRV-->>SG: 读åå¼ |
| | | SG->>DB: åäºå¡æäº¤ Taskç»æ+äºä»¶+Outbox |
| | | SG-->>STEP: OperationResult(Readback, Quality) |
| | | Note over STEP: å¤å® PASS/FAIL 卿¥éª¤/弿ï¼INV-05/T-3ï¼ |
| | | STEP->>CO: ReleaseAsyncï¼æç©ºâ读å/交æ¥âéæ¾ï¼ |
| | | </div> |
| | | |
| | | <h3>7.2 ç»´æ¤äº¤æ¥ï¼æè¦ï¼å¯¹åºææ¡£ 14.2 å
æ¥ï¼</h3> |
| | | <div class="card"> |
| | | å ç¨å¯è§åï¼Run/DUT/å©ä½ç§çº¦/ç¶åå½±åï¼â Run åè°å®å
¨æåï¼èµæºè½¬ <code>Draining</code>ï¼ææ°åãå卿 â çå¨éçæ®µç»æ + æ§è¡ SafeStateProfile 并读åï¼è¶
æ¶ â <code>RecoveryRequired</code>ï¼<strong>ä¸çäº</strong>èªå¨ç»ç»´æ¤è
ï¼â æ§ owner æç©ºéæ¾ + æ§å¥æå
³é + Mutex å®å«å¯è·å â ç¬ç«èé/æçµæç»ç¡®è®¤ â ç¾åç»´æ¤ Grantï¼å¨ä½å
¨é审计ï¼éåºç»´æ¤åå夿 ¸åæäº¤è¿ç产ã |
| | | </div> |
| | | |
| | | <h3>7.3 Broker é坿¢å¤</h3> |
| | | <div class="card"> |
| | | ååå®ä¾å®å« â <strong>epoch+1 è½ç</strong>ï¼æ§ Grant/æéä»»å¡å
¨é¨å¤±æï¼â 黿æ®éå â 设å¤èº«ä»½éªè¯ â 读åè¾åº/éé/åè®®ç¶æ â æè®¾å¤å®å
¨æ¨¡æ¿æ¢å¤ï¼<strong>å®å
¨æ â ç»ä¸"è¾åºå
¨å
³"</strong>ï¼æ¸©ç®±ãå·å´ã被æµä»¶åæè¦æ±ï¼â æ¢å¤æ£æ¥ç¹ä¸è¯æ®æä¹
åï¼é人工审æ¹åçå¾
ï¼â Free/Ready â RunService è®°å½ä¸æçªå£ä¸æ°æ® Gapï¼å³å®ç»è·/éæµã |
| | | </div> |
| | | |
| | | <!-- ======================================================== --> |
| | | <h2 id="s8">å
«ãä¿æä¸åçé¨åï¼æ¶æè¿ç»æ§èµäº§ï¼</h2> |
| | | |
| | | <div class="success"> |
| | | <ol> |
| | | <li><strong>æä»¶å UI 骨æ¶</strong>ï¼SimpleMaskControl / PluginLoader / MVVM å
¨é¨ä¿çï¼ä¸ä¸ªè§å¾ä»æ¯çæææä»¶ï¼æ³¨æç°ç¶å½å对é½ï¼å®é
为 <code>Plugin.DeviceConfig.DeviceConfig</code> çï¼ä¸ <code>DeviceMonitorView</code> éæ°å»ºï¼ï¼</li> |
| | | <li><strong>SQLite ææ¯éå</strong>ï¼æ¬æºç + WAL + çäºå¡ + busy_timeoutï¼ï¼ä½æ°æ®åºè¾¹çéåï¼</li> |
| | | <li><strong>è°è¯ä¼è¯"ç¶ææº + 审计"è®¾è®¡ææ³</strong>ââV3.0 æ¯å ç¶æï¼ä¸æ¯æ¨ç¿»ï¼</li> |
| | | <li><strong>Draft/Published/Effective çæ¬ç念</strong>ââå级为ä¸å¯åå¿«ç
§ + åå¸å¯¹è´¦ï¼</li> |
| | | <li><strong>å
¨èªå¨é¨é¢ B+C 模å¼</strong>ï¼ä½ç¨åç§çº¦ + ç±»ååæå¡ï¼æ¬é¡¹ç®å·²å®ç°ï¼ââæ£æ¯ V3.0 <code>ILeaseScope + DeviceOperation</code> çéå½¢ã</li> |
| | | </ol> |
| | | </table> |
| | | </div> |
| | | |
| | | <!-- ======================================================== --> |
| | | <h2 id="s9">ä¹ãTestStep 仪å¨ä½¿ç¨è§èï¼ä¸å¡æ§è¡å使ç¨è§å¾ï¼</h2> |
| | | |
| | | <p>åå
«ç« å®ä¹âç³»ç»ä¸èè´£âï¼æ¬ç« å®ä¹â使ç¨è
æä¹åâââRecipe/TestStep é¢åæµè¯å¼å人åç<strong>使ç¨å¥çº¦</strong>ã</p> |
| | | |
| | | <h3>9.1 䏿¡éå¾ï¼å
ç«è§ç©ï¼</h3> |
| | | <table> |
| | | <tr><th>#</th><th>éå¾</th><th>åå </th></tr> |
| | | <tr><td><span class="iron">T-1</span></td> |
| | | <td>TestStep <strong>æ°¸ä¸</strong>ç´æ¥ new 驱å¨ãå¡« COM å£ãIP å°åãè¿ç¨å</td> |
| | | <td>ç©çè·¯ç±å±äºé
ç½®åï¼å»ç»å¿«ç
§ï¼ï¼åæ»å¨æ¥éª¤é = æ¢å°æ¶å
¨éæ¹åºåï¼ä¸ç ´å INV-01/04</td></tr> |
| | | <tr><td><span class="iron">T-2</span></td> |
| | | <td>TestStep <strong>æ°¸ä¸</strong>èªå·±è° ResourceManager.Reserve / æ¼ LeaseGrant</td> |
| | | <td>ç§çº¦çå½å¨æå½æ¡æ¶ï¼Scope + ç¬ç«ç»æä»»å¡ï¼ï¼æ¥éª¤èªå·±æ¿ç§çº¦å¿
ç¶å¿ç»æ/å¿éæ¾</td></tr> |
| | | <tr><td><span class="iron">T-3</span></td> |
| | | <td>TestStep <strong>æ°¸ä¸</strong>æ Broker 读åå¼ç´æ¥å½åæ ¼å¤å®</td> |
| | | <td>âæ°æ®ä»åªæ¥ãæ°ä¸æ°é²âæ¯å®¿ä¸»è´£ä»»ï¼âæ¯å¦è¾¾å°å·¥èºæ¡ä»¶âæ¯æ¥éª¤/弿å¤å®ï¼Â§20.6 åæï¼</td></tr> |
| | | </table> |
| | | |
| | | <h3>9.2 è§£æé¾ï¼æ¥éª¤å£°æé»è¾è½åï¼æ¡æ¶è§£æç©çèµæº</h3> |
| | | <div class="mermaid"> |
| | | flowchart LR |
| | | A["TestStep 声æ<br/>SlotId=S024, Capability=Power"] --> B["SnapshotResolver<br/>ï¼Runå¯å¨æ¶å·²å»ç» RunSnapshotï¼"] |
| | | B --> C["slot_binding<br/>S024+Power â psu/psu03/ch/5<br/>+ ç¶ Permit psu/psu03"] |
| | | C --> D["ResourceRouter<br/>resource_definition:<br/>executionMode=Broker, authority=B01"] |
| | | D --> E1["LocalExecutorï¼W0xï¼"] |
| | | D --> E2["BrokerClientï¼B01ï¼"] |
| | | style A fill:#E8F5E9 |
| | | style E1 fill:#FFF8E1 |
| | | style E2 fill:#FFF8E1 |
| | | </div> |
| | | <p>æ¥éª¤ä½è
é¢å¯¹çåªæä¸¤ä¸ªæ¦å¿µï¼<strong>空ä½å· + è½åå</strong>ãDUTContext æ¯ç©ºä½ç¬ç«ä¿å SN/æ¥éª¤/计æ¶/ç»æï¼<strong>120 ä¸ªç©ºä½ â 120 æ¡çº¿ç¨</strong>ï¼çå¾
ç¨å¼æ¥è®¡æ¶ï¼ã</p> |
| | | |
| | | <h3>9.3 ä¸ç§ä½¿ç¨æ¨¡å¼</h3> |
| | | |
| | | <h4>æ¨¡å¼ Bï¼é¦éï¼ï¼ä½ç¨åç§çº¦ ââ ä¸ä¸ªæ¥éª¤å¤æ¬¡æä½åä¸èµæº</h4> |
| | | <pre><code><span class="cmt">// net472 æ await usingï¼æ¾å¼ ReleaseAsync + try/finally</span> |
| | | <span class="kwd">public override async void</span> Run() |
| | | { |
| | | <span class="kwd">var</span> req = <span class="kwd">new</span> AcquireRequest { |
| | | OwnerId = RunContext.StationId, <span class="cmt">// å¦ "W02.Run-20261103-A"</span> |
| | | OwnerKind = OwnerKind.Production, |
| | | ProcessInstanceId = RunContext.ProcessInstanceId, <span class="cmt">// boot_id+pidï¼é²ä¸²å°</span> |
| | | ConfigHash = RunContext.RunSnapshot.ConfigHash, |
| | | ResourceKeys = <span class="kwd">new</span>[] { <span class="str">"psu/psu03/ch/5"</span>, <span class="str">"can/can01/ch/2"</span> }, <span class="cmt">// æ¡æ¶æåºå±å¼ç»ç³è¯·</span> |
| | | WaitTimeoutMs = <span class="num">60_000</span> |
| | | }; |
| | | |
| | | ILeaseScope scope = <span class="kwd">null</span>; |
| | | <span class="kwd">try</span> |
| | | { |
| | | scope = <span class="kwd">await</span> coordinator.<span class="fn">AcquireGroupAsync</span>(req, ct); <span class="cmt">// ååï¼äºå¡å
¨æå
¨æ ï¼è·¨åï¼åè°å¼é¢ç</span> |
| | | <span class="cmt">// LeaseLost ä¿¡å·ï¼ç»æå¤±è´¥/被é离 â ç«å³åæ¢ä¸å</span> |
| | | <span class="kwd">var</span> ioCts = CancellationTokenSource.<span class="fn">CreateLinkedTokenSource</span>(ct, scope.LeaseLost); |
| | | |
| | | <span class="kwd">var</span> psu = executorFactory.<span class="fn">For</span>(scope, <span class="str">"psu/psu03/ch/5"</span>); <span class="cmt">// Local/Broker è·¯ç±å¯¹æ¥éª¤éæ</span> |
| | | <span class="kwd">await</span> psu.<span class="fn">SetVoltageAsync</span>(<span class="num">12.0</span>, ctx.<span class="fn">NextIdempotencyKey</span>(), ioCts.Token); |
| | | <span class="kwd">await</span> psu.<span class="fn">OutputOn</span>(ioCts.Token); |
| | | <span class="kwd">var</span> v = <span class="kwd">await</span> psu.<span class="fn">ReadVoltage</span>(ioCts.Token); |
| | | |
| | | Upwards.<span class="fn">Find</span>(<span class="num">12.0</span>, v.Readback).Verdict = <span class="cmt">// â å¤å®å¨å¼æä¾§ï¼T-3ï¼</span> |
| | | Math.<span class="fn">Abs</span>(v.Readback - <span class="num">12.0</span>) <= <span class="num">0.5</span> ? Verdict.Pass : Verdict.Fail; |
| | | } |
| | | <span class="kwd">finally</span> |
| | | { |
| | | <span class="cmt">// æ¾å¼å¼æ¥éæ¾ï¼æç©º I/O â 读å/å®å
¨äº¤æ¥ â éæ¾ï¼</span> |
| | | <span class="cmt">// å¤±è´¥è¿æ¢å¤ï¼ç»ä¸åè£
æåï¼ç»æä¿åç¨ç¬ç«æç tokenï¼ä¸åè°ç¨æ¹åæ¶å½±å</span> |
| | | <span class="kwd">if</span> (scope != <span class="kwd">null</span>) |
| | | <span class="kwd">await</span> scope.<span class="fn">ReleaseAsync</span>(CancellationToken.None); |
| | | } |
| | | }</code></pre> |
| | | |
| | | <h4>æ¨¡å¼ Cï¼å¸¸ç¨å°è£
ï¼ï¼ç±»ååæå¡ + åç¾å</h4> |
| | | <pre><code><span class="cmt">// ç¬ç«è°ç¨ï¼æ¡æ¶å
é¨èµ°å® ç³è¯·âæ§è¡âéæ¾ï¼ââéååå½ä»¤æ¥éª¤</span> |
| | | <span class="kwd">await</span> canBus.<span class="fn">SendFrameAsync</span>(<span class="str">"CAN-001"</span>, <span class="num">0x100</span>, data, ct); |
| | | |
| | | <span class="cmt">// åç¨ä½ç¨åï¼æ¨èï¼ä¸æ¨¡å¼Bç»åï¼å¤ç¨å·²ææç§çº¦ï¼</span> |
| | | <span class="kwd">await</span> canBus.<span class="fn">SendFrameAsync</span>(scope.<span class="fn">LeaseOf</span>(<span class="str">"can/can01/ch/2"</span>), <span class="num">0x100</span>, data, ct);</code></pre> |
| | | |
| | | <h4>模å¼éæ©éæ¥</h4> |
| | | <table> |
| | | <tr><th>åºæ¯</th><th>模å¼</th></tr> |
| | | <tr><td>åæ¡æ¥è¯¢ç±»æ¥éª¤ï¼å¦æ«ä¸æ¡ UDS DIDï¼</td><td>A 䏿¬¡æ§</td></tr> |
| | | <tr><td>å¤å½ä»¤ååå·¥èºæ®µï¼ä¸çµâ设åâ读æ°âå
³è¾åºï¼</td><td class="good">B ä½ç¨åï¼+C å°è£
ï¼</td></tr> |
| | | <tr><td>è·¨èµæºèå¨ï¼åä¸ DUT çµæº + CANï¼</td><td class="good">B ç»ç³è¯·ï¼ååææ¿è¯ºå
¨æå
¨æ ï¼</td></tr> |
| | | <tr><td>å¨ææ§æ¿å± / é¿æ¶çæ§</td><td>B + §9.6 åå°ä»»å¡æ¨¡æ¿ï¼<strong>䏿¯å¾ªç¯ A</strong></td></tr> |
| | | </table> |
| | | |
| | | <h3>9.4 å¹çé®ä¸è¶
æ¶éè¯è§è</h3> |
| | | <pre><code><span class="cmt">// é®ççæè§åï¼å
¨å±å¯ä¸ãå¯éæ¾å®ä½ãéè¯ä¸æ¢å
容åªå¢ attempt åºå·</span> |
| | | <span class="kwd">string</span> idemKey = $<span class="str">"{RunId}/{DutExecId}/{StepExecId}/attempt-{attempt}"</span>;</code></pre> |
| | | <table> |
| | | <tr><th>å¨ä½ç±»å</th><th>è¶
æ¶åå¯èªå¨éåï¼</th><th>便®</th></tr> |
| | | <tr><td>设置åï¼SetVoltage=12.0ï¼</td><td class="good">â
å
Query 对账åéå</td><td>å¹çï¼é夿§è¡ç»æå</td></tr> |
| | | <tr><td>触å/å¤ä½/ç§å/计æ°å</td><td class="bad">â åªè½æ Unknown èµ°è¯»åæ ¸å¯¹</td><td>ææ¡£ §11.2ï¼è·¨æ§è¡ä¸æäº¤ä¹é´æ 硬件äºå¡ï¼ä¸æ¿è¯º exactly-once</td></tr> |
| | | <tr><td>ä»»æå¨ä½ï¼ç»ææªæ¶å°</td><td class="mid">å
åé® Query/éæï¼Journal æç»æè¿ååç»æ</td><td>§20.4ï¼ç»ä¸çææ°é®å触å䏿¬¡</td></tr> |
| | | </table> |
| | | <p>客æ·ç«¯éè¿å¿
é¡»<strong>ä¿çå ClientInstanceId æ¥è¯¢</strong>ï¼ä¸çææ°é®éåã</p> |
| | | |
| | | <h3>9.5 交æ¥ãç»æä¸ LeaseLostï¼æ¥éª¤ä½è
çä¹å¡</h3> |
| | | <table> |
| | | <tr><th>æ¡æ¶èè´£</th><th>æ¥éª¤èè´£</th></tr> |
| | | <tr><td>åå°ç¬ç«çº¿ç¨ç»æï¼TTL/3ï¼</td><td>çå¬ <code>scope.LeaseLost</code>ï¼èè¿ææä¸åç CTS</td></tr> |
| | | <tr><td>Draining éç¥ï¼ç»´æ¤è
ç³è¯·è¿å
¥ï¼</td><td>åªå¨ãæ¥éª¤è¾¹çã让渡ï¼ç»ä¸å¨åæ¡å½ä»¤é´æ¾æ</td></tr> |
| | | <tr><td>ç»æè¿ç»å¤±è´¥ 2 次 â LeaseLost</td><td>ç«å³åæ¢ä¸åæ°æä½</td></tr> |
| | | <tr><td>Release 失败</td><td>å¦å®ä¸æ¥ï¼çå¾
æ¢å¤ï¼ä¸âè®°æ¥å¿åç»§ç»â</td></tr> |
| | | </table> |
| | | <pre><code><span class="cmt">// æ¥éª¤æ¶å°¾ç¹æ£æ¥ï¼æ¡æ¶å¨ HandoverRequested æ¶ç½®ä½ï¼</span> |
| | | <span class="kwd">if</span> (scope.HandoverRequested) <span class="kwd">return</span>; <span class="cmt">// æ¬æ¥éª¤æ£å¸¸ç»æï¼ä½ç¨åéåºæ¶å®å
¨è®©æ¸¡</span> |
| | | <span class="cmt">// 注æï¼é¿ Delay åºææå¯ä¸æç弿¥çå¾
çæ®µï¼ä¿è¯ 30s handover çªå£å
è½å°è¾¾è¾¹ç</span></code></pre> |
| | | <div class="info"><strong>åæ¶çä¸ç§è¯ä¹</strong>ï¼æ¡æ¶å·²å¤çï¼ä½è
åªéç¥éï¼ï¼æéä¸åæ¶ = ç¡®å®æªæ§è¡ï¼æ§è¡ä¸åæ¶ = é驱å¨å®å
¨åæ¢ç¡®è®¤ï¼ååºçå¾
åæ¶ = åªæ¯ä¸çäºï¼<strong>ä¸è½åæ¨è®¾å¤æ²¡å¨</strong>ââç»æä»èµ° Unknown/读åééã</div> |
| | | |
| | | <h3>9.6 é¿å¨æä»»å¡ï¼äº¤ç» Brokerï¼æ¥éª¤ä¸å
»çº¿ç¨</h3> |
| | | <table> |
| | | <tr><th>éæ±</th><th>â éè¯¯åæ³</th><th>â
æ£ç¡®åæ³ï¼Task ç±»åï¼</th></tr> |
| | | <tr><td>CAN 卿åé 0x100@100ms</td><td>TestStep å
while+Sleep</td><td><strong>PeriodicTx</strong> 模æ¿é©»ç Brokerï¼é owner ç§çº¦åç»/å°æ/失æï¼ç¦æ¢éè¿åè¡¥åæ§å¸§</td></tr> |
| | | <tr><td>èåæé´çæ§æ»çº¿ä¿¡å·</td><td>120 空ä½è½®è¯¢çº¿ç¨</td><td><strong>Acquisition</strong> 订é
+ äºä»¶æ¸¸æ å¢éæåï¼æ°æ® Gap å¸¦è´¨éæ è®° Stale/Disconnected</td></tr> |
| | | <tr><td>UDS ä¼è¯ä¿æ´»</td><td>æ¥éª¤å®æ¶å¨å TesterPresent</td><td><strong>ProtocolSession</strong>ï¼ä¼è¯å½ä¸è°åº¦ï¼TesterPresent ä¸ä¸å¡å¨ä½åé</td></tr> |
| | | <tr><td>ç 30 åé</td><td>Thread.Sleep å 线ç¨</td><td>弿¥è®¡æ¶ç卿§è¡å¼æï¼Recipe çé¿ Delay <strong>ä¸è¿ Broker</strong>ââBroker åªåæç设å¤å¨ä½ï¼</td></tr> |
| | | </table> |
| | | <pre><code><span class="cmt">// æ¥éª¤ä¾§è®¢é
å½¢æï¼æäº¤-æ¥è¯¢-ACKï¼ä¸é©»ç</span> |
| | | <span class="kwd">var</span> sub = <span class="kwd">await</span> broker.<span class="fn">SubscribeAsync</span>(<span class="kwd">new</span> { resource = <span class="str">"can/can01/ch/2"</span>, |
| | | signal = <span class="str">"Motor.Temp"</span>, templateId = <span class="str">"can.acq.motor-temp"</span> }, ct); |
| | | |
| | | <span class="cmt">// çå¾
ä¿¡å·è¾¾æ ï¼å¤å®ä»å¨å¼æï¼</span> |
| | | <span class="kwd">var</span> sample = <span class="kwd">await</span> sub.<span class="fn">WaitMatchingAsync</span>(s => s.Value > <span class="num">85.0</span>, TimeSpan.<span class="fn">FromMinutes</span>(<span class="num">30</span>), ct); |
| | | <span class="kwd">if</span> (sample == <span class="kwd">null</span>) Upwards.<span class="fn">Find</span>().<span class="fn">Fail</span>(<span class="str">$"è¶
æ¶æªè¾¾85âï¼Gap={sub.GapCount}"</span>); |
| | | |
| | | <span class="kwd">await</span> sub.<span class="fn">UnsubscribeAsync</span>(ct); <span class="cmt">// åæ¶å¹¶ç¡®è®¤åé/è§£ç»</span></code></pre> |
| | | <p>ç»ææ¶è´¹éµå¾ª Outboxï¼<strong>ACK åªå¨ç»æè½çæåååé</strong>ï¼æ¥éª¤å´©æºéå¯ç¨å IdempotencyKey æ¾åæª ACK ç»æï¼ä¸éè·è®¾å¤å¨ä½ã</p> |
| | | |
| | | <h3>9.7 宿´ç¤ºä¾ï¼å¤å·¥ä½ CAN èåæ¥éª¤ï¼B + C + 订é
æ¼æçå®å·¥èºï¼</h3> |
| | | <pre><code>[Display(<span class="str">"CAN éä¿¡èå"</span>, Group = <span class="str">"Aging"</span>)] |
| | | <span class="kwd">public class</span> CanCommAgingStep : TestStep |
| | | { |
| | | [ResourceProperty(<span class="str">"CAN"</span>)] <span class="kwd">public string</span> SlotId { <span class="kwd">get</span>; <span class="kwd">set</span>; } = <span class="str">"S001"</span>; |
| | | <span class="kwd">public int</span> Cycles { <span class="kwd">get</span>; <span class="kwd">set</span>; } = <span class="num">100</span>; |
| | | |
| | | <span class="kwd">public override async void</span> Run() |
| | | { |
| | | <span class="kwd">var</span> ctx = RunContext.Current; <span class="cmt">// Run/DUT/Step å
³èID</span> |
| | | <span class="kwd">var</span> auto = AgingRuntime.Coordinator; <span class="cmt">// IResourceCoordinator</span> |
| | | <span class="kwd">var</span> cans = AgingRuntime.CanBus; <span class="cmt">// ICanBusService(ç±»åå)</span> |
| | | |
| | | <span class="kwd">var</span> req = ctx.<span class="fn">BuildAcquire</span>(<span class="kwd">new</span>[] { <span class="str">"can/"</span> + ctx.<span class="fn">SlotOf</span>(SlotId) + <span class="str">"/ch/2"</span> }); |
| | | <span class="kwd">using var</span> cts = Utils.<span class="fn">LinkedWithVerdictCancel</span>(Upwards); |
| | | |
| | | ILeaseScope scope = <span class="kwd">await</span> auto.<span class="fn">AcquireGroupAsync</span>(req, cts.Token); |
| | | <span class="kwd">try</span> |
| | | { |
| | | <span class="kwd">var</span> lease = scope.<span class="fn">LeaseOf</span>(ctx.<span class="fn">ResourceOf</span>(SlotId)); |
| | | |
| | | <span class="cmt">// â èµ·å¨ææ¿å±ï¼é©»ç Brokerï¼éç§çº¦å¤±æèªå¨åï¼</span> |
| | | <span class="kwd">var</span> periodic = <span class="kwd">await</span> lease.<span class="fn">StartTemplateAsync</span>(<span class="str">"can.periodic.keepalive"</span>, |
| | | <span class="kwd">new</span> { frameId = <span class="num">0x3E0</span>, periodMs = <span class="num">500</span> }, cts.Token); |
| | | |
| | | <span class="cmt">// ⡠订é
ååºä¿¡å·</span> |
| | | <span class="kwd">var</span> sub = <span class="kwd">await</span> lease.<span class="fn">SubscribeAsync</span>(<span class="str">"can.acq.response-0x3E1"</span>, cts.Token); |
| | | |
| | | <span class="kwd">for</span> (<span class="kwd">int</span> i = <span class="num">0</span>; i < Cycles && !scope.HandoverRequested; i++) |
| | | { |
| | | <span class="kwd">await</span> cans.<span class="fn">SendFrameAsync</span>(lease, <span class="num">0x100</span> + (uint)i, ctx.<span class="fn">Payload</span>(i), |
| | | ctx.<span class="fn">NextIdempotencyKey</span>(), cts.Token); |
| | | |
| | | <span class="kwd">var</span> echo = <span class="kwd">await</span> sub.<span class="fn">WaitMatchingAsync</span>(f => f.<span class="fn">MatchRequest</span>(<span class="num">0x100</span> + i), |
| | | TimeSpan.<span class="fn">FromSeconds</span>(<span class="num">2</span>), cts.Token); |
| | | |
| | | <span class="kwd">if</span> (echo == <span class="kwd">null</span>) { Verdict = Verdict.Fail; <span class="kwd">break</span>; } <span class="cmt">// å¤å®å¨å¼æ</span> |
| | | Report.<span class="fn">Sample</span>(i, echo); <span class="cmt">// éæ ·èµ°ç»æéè·¯</span> |
| | | } |
| | | |
| | | <span class="kwd">await</span> periodic.<span class="fn">StopAsync</span>(cts.Token); <span class="cmt">// 卿任塿¾å¼åæ¢å¹¶âç¡®è®¤åæ¢â</span> |
| | | <span class="kwd">await</span> sub.<span class="fn">UnsubscribeAsync</span>(cts.Token); |
| | | } |
| | | <span class="kwd">finally</span> |
| | | { |
| | | <span class="kwd">await</span> scope.<span class="fn">ReleaseAsync</span>(CancellationToken.None); <span class="cmt">// 弿¥ãå¯å¤±è´¥è¿æ¢å¤</span> |
| | | } |
| | | } |
| | | }</code></pre> |
| | | |
| | | <h3>9.8 æ¥éª¤çå½å¨ææ¶åº</h3> |
| | | <pre><code>OnPlanLoad è§£æ Slot+Capability â 颿£é
ç½®å卿§ï¼ä¸å èµæºï¼ |
| | | Run() å
¥å£ DUTContext ç¶ææ£æ¥ â AcquireGroupï¼æéçå¾
=弿¥ï¼ä¸é»å¡ä»ä½ï¼ |
| | | æç§é¶æ®µ ç±»ååæä½/订é
â æ¯å½ä»¤å¸¦ Grant+IdemKey+Deadline â 读åè´¨éæ ¸å¯¹ |
| | | éåºè¾¹ç HandoverRequested? â 让渡æç»è· |
| | | finally ååå°ä»»å¡(确认) â ReleaseAsync â ç»æ Outbox ACK åç»æä¿å |
| | | å¼å¸¸è·¯å¾ LeaseLost / Unknown â 忢ä¸å â 䏿¥ â äº¤ç»æ¢å¤/RunService å³çï¼ä¸èªå¨å¤åå¦ï¼</code></pre> |
| | | |
| | | <h3>9.9 忍¡å¼æ¸
åï¼TestStep ä¾§æ±æ»ï¼</h3> |
| | | <table> |
| | | <tr><th>忍¡å¼</th><th>åæ</th><th>æ£è§£</th></tr> |
| | | <tr><td class="bad">æ¥éª¤é new CanDriverAdapter(...)</td><td>ç»è¿ä»²è£ä¸å¿«ç
§ï¼å宿主å²çªï¼INV-01ï¼</td><td>åªç» Scope/Executor è·¯ç±</td></tr> |
| | | <tr><td class="bad">è¶
æ¶åæ¢æ° IdempotencyKey éå</td><td>触ååå¨ä½æ§è¡ä¸¤æ¬¡</td><td>åé® Query 对账ï¼Â§20.4ï¼</td></tr> |
| | | <tr><td class="bad">å¨ await 跨线ç¨å¤éæ¾å®å« Mutex</td><td>AbandonedMutex / 鿳鿾</td><td>å®å«å½å®¿ä¸»ä¸ç¨çº¿ç¨ï¼æ¥éª¤åªæä½ç§çº¦</td></tr> |
| | | <tr><td class="bad">scope.Dispose() 忥é»å¡ UI/çº¿ç¨æ± </td><td>æç©ºçå¾
塿»è°åº¦</td><td>æ¾å¼ ReleaseAsync</td></tr> |
| | | <tr><td class="bad">ç¨ Thread.Sleep çèåæ¶é¿</td><td>120 ç©ºä½ = 120 线ç¨</td><td>弿¥è®¡æ¶ + Broker Periodic/Acquisition</td></tr> |
| | | <tr><td class="bad">æ Broker 读åç´æ¥å½ PASS</td><td>æ©çéä¿¡æ
éï¼æ°æ®è´¨éâ å·¥èºå¤å®ï¼</td><td>å¤å®å¨æ¥éª¤/弿ï¼Gap å¿
须计å
¥</td></tr> |
| | | <tr><td class="bad">æè· LeaseLost åç»§ç»åå½ä»¤</td><td>åµå°¸åå
¥ï¼æ
æ åªæ¡åç»æï¼æ¡ä¸ä½ä½ 没æ¥ï¼</td><td>LeaseLost èè¿ææä¸åç CTS</td></tr> |
| | | </table> |
| | | |
| | | <!-- ======================================================== --> |
| | | <h2 id="s10">åãç»è®º</h2> |
| | | |
| | | <div class="success"> |
| | | <p><strong>æ°æ¶æå¾çä¸å¥è¯è¯»æ³ï¼</strong>ä»ªå¨æ³¨åç产<strong>带åå¸çé
ç½®çç</strong>ï¼ä»ªå¨è°è¯ç³è¯·<strong>带æ
æ ç临æ¶åæ</strong>ï¼Worker/Broker æ§è¡<strong>带ååçæ®µçç©ç I/O</strong>ï¼Recipe åªå<strong>空ä½âè½åâå¤å®</strong>ï¼åæ¬æ°æ®åºåå®åçååè
ââä»»ä½ä¸æ¬¡â碰设å¤âé½è¦åæ¶åçï¼<strong>æææ¯è°ï¼Grantï¼ãé
ç½®æ¯åªçï¼Hashï¼ãç©çç¶æä¿¡ä¸ä¿¡å¾è¿ï¼è¯»åï¼</strong>ã</p> |
| | | <p>è½å°é¡ºåºéµå¾ª P0ï½P4 è£åªï¼PipeClient ä¿®å¤ä¸ç¡¬ä»¶ææå»ç» â å Authority ç§çº¦å
æ ¸ â Broker MVP â æ¢å¤ç¼æ â é
ç½®åå¸ä½ç³»ï¼ï¼è¯¦è§ãå¤è¿ç¨ä»ªå¨èµæºæ¹æ¡è¯ä¼°ããæ¬æä¸ä»¥ä¸ææ¡£é
å¥é
读ï¼</p> |
| | | <ul> |
| | | <li><a href="./Local + DeviceBroker æ··åæ¶æè¯¦ç»è®¾è®¡è¯´æä¹¦ V3.0.html">Local + DeviceBroker æ··åæ¶æè¯¦ç»è®¾è®¡è¯´æä¹¦ V3.0</a>ï¼æå¨è®¾è®¡æºï¼</li> |
| | | <li><a href="./MultiProcess_Instrument_Resource_Solution.html">å¤è¿ç¨/å¤çº¿ç¨ä»ªå¨èµæºç¬å ä¸å
±äº«æ¹æ¡</a>ï¼å·²è¢« V3.0 ä¿®æ£ï¼å°æä¸èªå¨æ¥ç®¡çï¼</li> |
| | | <li><a href="./OpenTAP_Instrument_Package_Analysis.html">OpenTAP Instrument + æä»¶å
æºå¶åæ</a>ï¼é©±å¨ååå½¢æï¼</li> |
| | | <li><a href="./DeviceConfig_DeviceDebug_Architecture.html">ä»ªå¨æ³¨åä¸ç¡¬ä»¶è°è¯è°ç¨å
³ç³»</a>ï¼ç°ç¶å®ç°å¿«ç
§ï¼</li> |
| | | </ul> |
| | | </div> |
| | | |
| | | <footer> |
| | | ä»ªå¨æ³¨åä¸ä»ªå¨è°è¯ · ç³»ç»æ¶æè¯´æ V3.0 鿢³ççï¼å« TestStep 使ç¨è§èï¼Â· 2026-11-03<br> |
| | | åºåï¼ãLocal + DeviceBroker æ··åæ¶æè¯¦ç»è®¾è®¡è¯´æä¹¦ V3.0ã· æ¬æç°ç¶æè¿°é¨å已对ç
§çå®ä»£ç æ ¸å® |
| | | </footer> |
| | | |
| | | <script> |
| | | mermaid.initialize({ |
| | | startOnLoad: true, theme: 'default', securityLevel: 'loose', |
| | | fontFamily: 'Segoe UI, Microsoft YaHei, sans-serif', |
| | | flowchart: { curve: 'basis', padding: 16 }, |
| | | sequence: { showSequenceNumbers: false, actorMargin: 50 } |
| | | }); |
| | | </script> |
| | | |
| | | </body> |
| | | </html> |
| New file |
| | |
| | | <!DOCTYPE html> |
| | | <html lang="zh-CN"> |
| | | <head> |
| | | <meta charset="UTF-8"> |
| | | <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| | | <title>Broker IPC æ¹æ¡å¯¹æ¯ï¼Named Pipes vs COM Interop</title> |
| | | <style> |
| | | :root { |
| | | --primary: #2563eb; |
| | | --primary-light: #dbeafe; |
| | | --success: #16a34a; |
| | | --success-light: #dcfce7; |
| | | --warning: #d97706; |
| | | --warning-light: #fef3c7; |
| | | --danger: #dc2626; |
| | | --danger-light: #fee2e2; |
| | | --gray-50: #f9fafb; |
| | | --gray-100: #f3f4f6; |
| | | --gray-200: #e5e7eb; |
| | | --gray-600: #4b5563; |
| | | --gray-800: #1f2937; |
| | | --gray-900: #111827; |
| | | } |
| | | |
| | | * { margin: 0; padding: 0; box-sizing: border-box; } |
| | | |
| | | body { |
| | | font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans SC", sans-serif; |
| | | line-height: 1.7; |
| | | color: var(--gray-800); |
| | | background: linear-gradient(135deg, #f0f4ff 0%, #fafbff 100%); |
| | | padding: 2rem 1rem; |
| | | } |
| | | |
| | | .container { |
| | | max-width: 960px; |
| | | margin: 0 auto; |
| | | } |
| | | |
| | | header { |
| | | text-align: center; |
| | | margin-bottom: 2.5rem; |
| | | } |
| | | |
| | | header h1 { |
| | | font-size: 1.8rem; |
| | | color: var(--gray-900); |
| | | margin-bottom: 0.5rem; |
| | | } |
| | | |
| | | header .subtitle { |
| | | color: var(--gray-600); |
| | | font-size: 0.95rem; |
| | | } |
| | | |
| | | .badge { |
| | | display: inline-block; |
| | | padding: 0.15rem 0.6rem; |
| | | border-radius: 999px; |
| | | font-size: 0.75rem; |
| | | font-weight: 600; |
| | | margin-left: 0.4rem; |
| | | vertical-align: middle; |
| | | } |
| | | .badge-rec { background: var(--success-light); color: var(--success); } |
| | | .badge-alt { background: var(--warning-light); color: var(--warning); } |
| | | |
| | | /* ---- Comparison Table ---- */ |
| | | .table-wrap { |
| | | overflow-x: auto; |
| | | margin-bottom: 2rem; |
| | | border-radius: 12px; |
| | | box-shadow: 0 1px 3px rgba(0,0,0,.08); |
| | | } |
| | | |
| | | table { |
| | | width: 100%; |
| | | border-collapse: collapse; |
| | | background: #fff; |
| | | font-size: 0.92rem; |
| | | } |
| | | |
| | | thead th { |
| | | background: var(--primary); |
| | | color: #fff; |
| | | padding: 0.85rem 1rem; |
| | | text-align: left; |
| | | font-weight: 600; |
| | | white-space: nowrap; |
| | | } |
| | | thead th:first-child { border-radius: 12px 0 0 0; } |
| | | thead th:last-child { border-radius: 0 12px 0 0; } |
| | | |
| | | tbody td { |
| | | padding: 0.75rem 1rem; |
| | | border-bottom: 1px solid var(--gray-200); |
| | | vertical-align: top; |
| | | } |
| | | |
| | | tbody tr:last-child td { border-bottom: none; } |
| | | tbody tr:nth-child(even) { background: var(--gray-50); } |
| | | |
| | | td:first-child { |
| | | font-weight: 600; |
| | | color: var(--gray-900); |
| | | white-space: nowrap; |
| | | } |
| | | |
| | | .cell-good { color: var(--success); font-weight: 500; } |
| | | .cell-bad { color: var(--danger); font-weight: 500; } |
| | | .cell-neutral { color: var(--warning); font-weight: 500; } |
| | | |
| | | /* ---- Sections ---- */ |
| | | .section { |
| | | background: #fff; |
| | | border-radius: 12px; |
| | | padding: 1.8rem 2rem; |
| | | margin-bottom: 1.5rem; |
| | | box-shadow: 0 1px 3px rgba(0,0,0,.08); |
| | | } |
| | | |
| | | .section h2 { |
| | | font-size: 1.2rem; |
| | | color: var(--primary); |
| | | margin-bottom: 1rem; |
| | | padding-bottom: 0.5rem; |
| | | border-bottom: 2px solid var(--primary-light); |
| | | } |
| | | |
| | | .section h3 { |
| | | font-size: 1rem; |
| | | color: var(--gray-900); |
| | | margin: 1.2rem 0 0.6rem; |
| | | } |
| | | |
| | | /* ---- Factor Cards ---- */ |
| | | .factor-grid { |
| | | display: grid; |
| | | grid-template-columns: 1fr 1fr; |
| | | gap: 1rem; |
| | | margin-top: 1rem; |
| | | } |
| | | @media (max-width: 640px) { .factor-grid { grid-template-columns: 1fr; } } |
| | | |
| | | .factor-card { |
| | | border: 1px solid var(--gray-200); |
| | | border-radius: 8px; |
| | | padding: 1rem 1.2rem; |
| | | } |
| | | .factor-card h4 { |
| | | font-size: 0.88rem; |
| | | margin-bottom: 0.4rem; |
| | | color: var(--gray-900); |
| | | } |
| | | .factor-card p { |
| | | font-size: 0.85rem; |
| | | color: var(--gray-600); |
| | | line-height: 1.6; |
| | | } |
| | | .factor-card.pro { border-left: 4px solid var(--success); } |
| | | .factor-card.con { border-left: 4px solid var(--danger); } |
| | | |
| | | /* ---- Recommendation ---- */ |
| | | .recommendation { |
| | | background: var(--success-light); |
| | | border: 1px solid #86efac; |
| | | border-radius: 10px; |
| | | padding: 1.5rem 2rem; |
| | | margin-top: 1.5rem; |
| | | } |
| | | .recommendation h2 { |
| | | color: var(--success); |
| | | border-bottom-color: #86efac; |
| | | } |
| | | .recommendation ul { |
| | | margin: 0.8rem 0 0 1.2rem; |
| | | } |
| | | .recommendation li { |
| | | margin-bottom: 0.4rem; |
| | | font-size: 0.92rem; |
| | | } |
| | | |
| | | /* ---- Code Hint ---- */ |
| | | code { |
| | | background: var(--gray-100); |
| | | padding: 0.15rem 0.4rem; |
| | | border-radius: 4px; |
| | | font-size: 0.88em; |
| | | font-family: "Cascadia Code", "Fira Code", Consolas, monospace; |
| | | } |
| | | |
| | | footer { |
| | | text-align: center; |
| | | margin-top: 2rem; |
| | | color: var(--gray-600); |
| | | font-size: 0.8rem; |
| | | } |
| | | </style> |
| | | </head> |
| | | <body> |
| | | <div class="container"> |
| | | |
| | | <header> |
| | | <h1>Broker IPC æ¹æ¡å¯¹æ¯</h1> |
| | | <p class="subtitle">Named Pipes vs COM Interop | TapProject V3.0 MVP æ¶æè¯ä¼°</p> |
| | | </header> |
| | | |
| | | <!-- ===================== Comparison Table ===================== --> |
| | | <div class="table-wrap"> |
| | | <table> |
| | | <thead> |
| | | <tr> |
| | | <th>è¯ä¼°ç»´åº¦</th> |
| | | <th>Named Pipes <span class="badge badge-rec">æ¨è</span></th> |
| | | <th>COM Interop <span class="badge badge-alt">å¤é</span></th> |
| | | </tr> |
| | | </thead> |
| | | <tbody> |
| | | <tr> |
| | | <td>é¨ç½²å¤æåº¦</td> |
| | | <td class="cell-good">ä½ â åªé管éå约å®ï¼æ éæ³¨åç»ä»¶</td> |
| | | <td class="cell-bad">é« â é RegAsm / regsvr32 注å COM ç»ä»¶ï¼é
ç½® DCOM æé</td> |
| | | </tr> |
| | | <tr> |
| | | <td>强类åä½éª</td> |
| | | <td class="cell-neutral">å¼± â éæå¨åºåå/ååºååï¼JSON / Protobufï¼</td> |
| | | <td class="cell-good">强 â .NET èªå¨çæ RCWï¼æ¥å£è°ç¨å¦åæ¬å°å¯¹è±¡</td> |
| | | </tr> |
| | | <tr> |
| | | <td>è·¨æºå¨æ©å±</td> |
| | | <td class="cell-good">å¤©ç¶æ¯æ â å¯å¹³æ»åæ¢å° TCP / gRPC</td> |
| | | <td class="cell-bad">é DCOMï¼é²ç«å¢ä¸ç½ç»é
ç½®å¤æ</td> |
| | | </tr> |
| | | <tr> |
| | | <td>æéè¦æ±</td> |
| | | <td class="cell-good">ä½ â åæºç®¡é访é®å³å¯ï¼æ éç¹æ®æé</td> |
| | | <td class="cell-bad">é DCOM æéé
ç½®ï¼ä¼ä¸å®å
¨çç¥å¸¸åé</td> |
| | | </tr> |
| | | <tr> |
| | | <td>æªæ¥ .NET å
¼å®¹æ§</td> |
| | | <td class="cell-good">å®å
¨å
¼å®¹ .NET 6 / 7 / 8+</td> |
| | | <td class="cell-bad">Microsoft 已鿥弱å COM æå
¥ï¼.NET Core æ¯ææé</td> |
| | | </tr> |
| | | <tr> |
| | | <td>æ§è½</td> |
| | | <td class="cell-neutral">JSON æåºååå¼éï¼ä½ç®¡éæ¬èº«é«æï¼å¯æ¢ Protobuf ä¼å</td> |
| | | <td class="cell-good">äºè¿å¶ marshaling å¼éå°ï¼ä½æé¢å¤ proxy/stub å±</td> |
| | | </tr> |
| | | <tr> |
| | | <td>è°è¯ / è¿ç»´</td> |
| | | <td class="cell-good">管éç¶ææææ¥ï¼æ¥å¿ç´è§</td> |
| | | <td class="cell-bad">COM 注åé®é¢ãæéé®é¢æ¯å¸¸è§æ
éæº</td> |
| | | </tr> |
| | | <tr> |
| | | <td>ä¸ç°æä»£ç éæ</td> |
| | | <td class="cell-neutral">éç¼åè¿æ¥ç®¡çã帧解æé»è¾</td> |
| | | <td class="cell-good">æ¥å£å®ä¹å客æ·ç«¯ä»£ç ç®æ´ï¼ç±»ä¼¼æ¬å°è°ç¨</td> |
| | | </tr> |
| | | </tbody> |
| | | </table> |
| | | </div> |
| | | |
| | | <!-- ===================== Key Factors ===================== --> |
| | | <div class="section"> |
| | | <h2>å
³é®èéå ç´ </h2> |
| | | |
| | | <h3>COM Interop éåçåºæ¯</h3> |
| | | <div class="factor-grid"> |
| | | <div class="factor-card pro"> |
| | | <h4>â
åæºéä¿¡ + 强类åéæ±</h4> |
| | | <p>Broker ä¸å®¢æ·ç«¯æ°¸è¿å¨åä¸å°æºå¨ï¼å¢éçæ COM é¨ç½²ï¼å¸æè·å¾éæä»£çè¬çè°ç¨ä½éªã</p> |
| | | </div> |
| | | <div class="factor-card pro"> |
| | | <h4>â
å·²æ COM ç»ä»¶èµäº§</h4> |
| | | <p>项ç®ä¸å·²ææçç COM æ¥å£å®ä¹æç¬¬ä¸æ¹ COM ç»ä»¶ï¼å¯ç´æ¥å¤ç¨ã</p> |
| | | </div> |
| | | </div> |
| | | |
| | | <h3>Named Pipes æ´éåççç±</h3> |
| | | <div class="factor-grid"> |
| | | <div class="factor-card con"> |
| | | <h4>ð é¨ç½²ç®å</h4> |
| | | <p>æ éæ³¨å COM ç»ä»¶ï¼ç®¡éå约å®å³å¯éä¿¡ï¼è¿ç»´ææ¬æä½ã</p> |
| | | </div> |
| | | <div class="factor-card con"> |
| | | <h4>ð è·¨æºå¨æ©å±</h4> |
| | | <p>æªæ¥è¥ Broker éé¨ç½²å°è¿ç¨æºå¨ï¼Named Pipes å¯å¹³æ»åæ¢å° TCP/gRPCï¼COM Interop åé大å¹
æ¹é ã</p> |
| | | </div> |
| | | <div class="factor-card con"> |
| | | <h4>ð¡ï¸ ä¼ä¸ç¯å¢å好</h4> |
| | | <p>DCOM æéå¨ä¼ä¸å®å
¨çç¥ä¸ç»å¸¸åéï¼Named Pipes æ æ¤é®é¢ã</p> |
| | | </div> |
| | | <div class="factor-card con"> |
| | | <h4>ð¦ ç°ä»£ .NET å
¼å®¹</h4> |
| | | <p>项ç®è½å½å为 .NET Framework 4.7.2ï¼ä½ COM Interop å¨ .NET 5+ 䏿¯æéæ¥å¼±åï¼Named Pipes æ æ¤é¡¾èã</p> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | <!-- ===================== Recommendation ===================== --> |
| | | <div class="recommendation"> |
| | | <h2>ç»è®ºä¸å»ºè®®</h2> |
| | | <p><strong>ä¿æ Named Pipes æ¹æ¡ã</strong></p> |
| | | <p>å¯¹äº Broker è·¨è¿ç¨éä¿¡åºæ¯ï¼Named Pipes å¨<strong>é¨ç½²ç®ææ§</strong>ã<strong>æªæ¥æ©å±æ§</strong>å<strong>å¹³å°å
¼å®¹æ§</strong>ä¸åä¼äº COM Interopã</p> |
| | | <ul> |
| | | <li>妿æ
å¿ JSON åºååå¼éï¼å¯èèç¨ <code>MemoryPack</code> æ <code>Protobuf-net</code> æ¿ä»£ï¼åæ¶ä¿ç Named Pipes çæ¶æä¼å¿ã</li> |
| | | <li>å½å MVP 帧å议设计ï¼4 åèé¿åº¦åç¼ + UTF8 JSONï¼å·²è¶³å¤æ¸
æ°ï¼åç»ä¼å空é´å¤§ã</li> |
| | | <li>COM Interop ä»
å¨"å¢éå·²ææç COM èµäº§ + ç¡®å®æ°¸ä¸è·¨æºå¨"çåæä¸æå¼å¾èèã</li> |
| | | </ul> |
| | | </div> |
| | | |
| | | <!-- ===================== Architecture Context ===================== --> |
| | | <div class="section"> |
| | | <h2>å½å MVP æ¶æä¸ç IPC å®ä½</h2> |
| | | <p>å¨å·²å®æç MVP 宿½ä¸ï¼è·¨è¿ç¨éä¿¡å为两å±ï¼</p> |
| | | <table style="margin-top: 1rem;"> |
| | | <thead> |
| | | <tr> |
| | | <th style="width:30%">å±çº§</th> |
| | | <th>æºå¶</th> |
| | | <th>ç¶æ</th> |
| | | </tr> |
| | | </thead> |
| | | <tbody> |
| | | <tr> |
| | | <td>仲è£å±ï¼arb.dbï¼</td> |
| | | <td>SQLite WAL æ¨¡å¼ + BEGIN IMMEDIATE äºå¡ â è¿ç¨é´ä»²è£å®å
¨ä¾èµæ°æ®åºäºå¡ï¼æ é IPC</td> |
| | | <td class="cell-good">â
å·²å®ç°</td> |
| | | </tr> |
| | | <tr> |
| | | <td>Broker å½ä»¤éé</td> |
| | | <td>Named Pipes 帧åè®®ï¼4B é¿åº¦ + JSONï¼â ç¨äºå®¢æ·ç«¯å DeviceBroker.exe ä¸åè®¾å¤æä½</td> |
| | | <td class="cell-neutral">Ⳡ计åä¸ï¼P2+ï¼</td> |
| | | </tr> |
| | | </tbody> |
| | | </table> |
| | | <p style="margin-top: 1rem; color: var(--gray-600); font-size: 0.88rem;"> |
| | | 注ï¼å½å MVP ä»
å®ç°äº Local 模å¼ï¼è¿ç¨å
ç´é©±ï¼å DbLeaseStoreï¼SQLite 仲è£ï¼ãBroker 模å¼çå½ä»¤ééå±äºåç»è¿ä»£èå´ï¼æ¤æ¶éæ© Named Pipes ä½ä¸º IPC æ¹æ¡ä»æå
åè°æ´ç©ºé´ã |
| | | </p> |
| | | </div> |
| | | |
| | | <footer> |
| | | TapProject V3.0 MVP â Broker IPC æ¹æ¡è¯ä¼° | çæäº 2026-11-03 |
| | | </footer> |
| | | |
| | | </div> |
| | | </body> |
| | | </html> |
| New file |
| | |
| | | # Local + Broker ä»²è£æºå¶ MVP 宿½è®¡å |
| | | |
| | | > **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking. |
| | | |
| | | **Goal:** å¨ç°æ TapProject ä¸ä»¥æå°ä»£ä»·è½å° V3.0 æ¶æçä¸¤å¤§æ ¸å¿æºå¶ââ**Local ç´è¿å®¿ä¸»**ä¸ **DeviceBroker 代ç宿主**ââ并使跨è¿ç¨ç§çº¦ä»²è£è´¯ç©¿"ä»ªå¨æ³¨åï¼æ§è¡ä½éæ©/åå¸é¨ç¦ï¼"ä¸"æå¨è°è¯ï¼ç»´æ¤åæç³è¯·/å ç¨å¯è§/éæ¾ï¼"两æ¡ä¸»è·¯å¾ã |
| | | |
| | | **Architecture:** ä¸å±éè¿ï¼â `Aging.ResourceContracts`ï¼é¶ä¾èµå¥çº¦åºï¼LeaseGrant / DeviceOperation / IPC å°å¥ï¼ï¼â¡ `DbLeaseStore`ï¼SQLite `arb.db` ä¸çè·¨è¿ç¨ç§çº¦ï¼BEGIN IMMEDIATE äºå¡ CAS + generation æ
æ + epoch + TTL/å¿è·³ + è¿æè¿ RecoveryRequired äººå·¥åæ¶ï¼ï¼â¢ æ§è¡åééââLocal 设å¤ç±å½åè¿ç¨ç´é©±ï¼ä¿æç°ç¶è·¯å¾ï¼ï¼Broker 设å¤ç±ç¬ç« `DeviceBroker.exe` å¯ä¸ææç©çä¼è¯ï¼å®¢æ·ç«¯ç» `BrokeredCanDriver` 代çé©±å¨ + 帧åè®® RPC 转åï¼Broker åºéæ¶ååæ
æ ä¸é
ç½®åå¸åéæ ¡éªï¼INV-01/05 éç¯ï¼ãç°æ `IResourceManager/IAutoDeviceFacade/DebugSessionManager` éè¿ç»åï¼ä¸ç ´åç¾åï¼åæ¢ä¸ºè·¨è¿ç¨å®ç°ã |
| | | |
| | | **Tech Stack:** .NET Framework 4.7.2ãC# 10ãWPFï¼ç°ææä»¶ UIï¼ãSystem.Data.SQLiteï¼arb.db + WALï¼ãNamed Pipesï¼å¸§åè®®ï¼4 åèé¿åº¦åç¼ + UTF8 JSONï¼ãxUnitï¼æ° SDK 飿 ¼æµè¯å·¥ç¨ï¼ãMSBuildï¼ç¼è¯æ§å¼ WPF å·¥ç¨ï¼è§è®°å¿è§åï¼ã |
| | | |
| | | --- |
| | | |
| | | ## MVP èå´è£åªï¼æç¡®ä¿ç䏿¨è¿ï¼ |
| | | |
| | | | V3.0 è½å | MVP å¤ç½® | 说æ | |
| | | |-----------|---------|------| |
| | | | è·¨è¿ç¨ç§çº¦ + generation æ
æ + epoch | â
å®ç° | æ ¸å¿ä¸çæ ¸å¿ | |
| | | | INV-03ï¼è¿æä¸èªå¨ç§»äº¤ â RecoveryRequired | â
å®ç°ï¼äººå·¥åæ¶æé®çï¼ | åæ¶=å®¿ä¸»è¯»åæ¢æµ+ç»è®°è¯æ®+ç½® Free | |
| | | | Local 模å¼ï¼è¿ç¨å
ç´é©± + è¿æ¥å®å« Mutexï¼ | â
å®ç° | 沿ç¨ç°æé©±å¨ | |
| | | | Broker 模å¼ï¼SessionGate ååçæ®µ + æ
æ åæ ¡éªï¼ | â
å®ç°ï¼OneShot å½ä»¤åæ¥æ¨¡åï¼ | 卿任å¡/订é
/Outbox æ¨è¿ | |
| | | | 注å页 executionMode/authorityId/sessionKey/accessPolicy + åå¸é¨ç¦ + ä¸å¯åå¿«ç
§åå¸ | â
å®ç°ï¼æå°çï¼ | Broker è¿æ¥æº configHash 对账ï¼INV-04 éå½¢ï¼ | |
| | | | è°è¯é¡µç»´æ¤åæè·¨è¿ç¨ç³è¯·ãå ç¨è
å¯è§ãæç»è¯ä¹ | â
å®ç° | å¤ç¨ DebugSessionManager ç°æè°ç¨é¾ | |
| | | | Draining èªå¨è®©æ¸¡ / ç»´æ¤æ¢å grace æµç¨ | â æ¨è¿ï¼MVP ç¨"å ç¨å³æç»"ç©éµåæ³åæ¯ï¼ | ææ¡£ §6.1 å
许 | |
| | | | Task Journal/OutboxãPeriodicTx/Acquisitionãç¶ Permit å¤ééãPrepare/Activate 两段å¼è·¨åé¢çã120 空ä½å
¬å¼ãarb æå¡ç«¯ DB å | â æ¨è¿ | P2+ | |
| | | |
| | | **å³çå®å¤æ§è¯´æï¼å®æ½è
ä¸éååå³å®ï¼ï¼** |
| | | - 仲è£åºè·¯å¾ï¼`%LOCALAPPDATA%\PluginIntegrationTest\arb.db`ï¼ä¸ data.db åç®å½ï¼ |
| | | - lease_id ç´æ¥å¤ç¨ç°æ `ResourceOwnerToken.TokenId`ï¼ä¸¤å¥ä½ç³»ä¸ä¸ªèº«ä»½ |
| | | - MVP æéä¼å
级ç®å为ï¼**ä»»ä½ Active ç§çº¦ â ä»äººä¸å¾æç»ï¼ConflictHeld + å ç¨è
ä¿¡æ¯ï¼**ï¼ä¸åºå Maintenance æ¢å |
| | | - Broker åæ¼ç¤ºè®¾å¤ï¼`CAN-002`ï¼executionMode=Brokerï¼authorityId=broker-b01ï¼sessionKey=canbus1ï¼ï¼Local æ¼ç¤ºè®¾å¤ï¼`CAN-001` |
| | | - æ¶æ¯æ¨¡å为**åè¿æ¥åæ¥è¯·æ±-ååº**ï¼_sendLock 串è¡ï¼ï¼å¤è·¯å¤ç¨æ¨è¿ |
| | | - å¿è·³ 8s / TTL 30s / æ¢æµè¶
æ¶ 3sï¼å¯åç»å
¥é
ç½®ï¼ |
| | | |
| | | --- |
| | | |
| | | ## Task 0: åºçº¿ç¡®è®¤ä¸å·¥ç¨éª¨æ¶ |
| | | |
| | | **Files:** |
| | | - Create: `Aging.ResourceContracts/Aging.ResourceContracts.csproj` |
| | | - Create: `tests/Aging.MvpTests/Aging.MvpTests.csproj` |
| | | - Modify: `WPFProject/TapProject.sln`ï¼å å
¥ä¸¤ä¸ªæ°å·¥ç¨ï¼ |
| | | |
| | | - [ ] **Step 1: éªè¯å½ååºçº¿å¯ç¼è¯** |
| | | |
| | | ```powershell |
| | | cd d:\TestPlatform\TapProject |
| | | & "C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\MSBuild.exe" Plugin.IntegrationTest\Plugin.IntegrationTest.csproj /p:Configuration=Debug /p:Platform=AnyCPU /t:Build /v:minimal |
| | | ``` |
| | | é¢æï¼æåä¸è¡ `Plugin.IntegrationTest -> ...exe`ï¼æ errorãï¼æ³¨æï¼æ¬ä»åºæ§å¼å·¥ç¨å¿
é¡»ç¨ MSBuildï¼ä½æ¬å·¥ç¨é¾ä¸ SDK-style å·¥ç¨ä¹å¯ç¨ MSBuild ç¼è¯ï¼ç»ä¸ç¨ MSBuildãï¼ |
| | | |
| | | - [ ] **Step 2: å建å¥çº¦ç±»åºå·¥ç¨ï¼é¶ä¾èµï¼** |
| | | |
| | | å建 `Aging.ResourceContracts/Aging.ResourceContracts.csproj`ï¼ |
| | | |
| | | ```xml |
| | | <Project Sdk="Microsoft.NET.Sdk"> |
| | | <PropertyGroup> |
| | | <TargetFramework>net472</TargetFramework> |
| | | <Nullable>enable</Nullable> |
| | | <LangVersion>10.0</LangVersion> |
| | | <ImplicitUsings>disable</ImplicitUsings> |
| | | </PropertyGroup> |
| | | </Project> |
| | | ``` |
| | | |
| | | - [ ] **Step 3: å建 xUnit æµè¯å·¥ç¨** |
| | | |
| | | ```powershell |
| | | cd d:\TestPlatform\TapProject\tests |
| | | dotnet new xunit -n Aging.MvpTests -f net472 |
| | | ``` |
| | | ç¼è¾ `Aging.MvpTests/Aging.MvpTests.csproj` 追å 对å¥çº¦åºä¸åç»è®¾æ½çå¼ç¨ä¸ SQLite å¤å¶ï¼ |
| | | |
| | | ```xml |
| | | <ItemGroup> |
| | | <ProjectReference Include="..\..\Aging.ResourceContracts\Aging.ResourceContracts.csproj" /> |
| | | </ItemGroup> |
| | | <ItemGroup> |
| | | <Content Include="..\..\Libs\SQLite.Interop.dll" Link="x64\SQLite.Interop.dll"> |
| | | <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> |
| | | </Content> |
| | | </ItemGroup> |
| | | ``` |
| | | |
| | | - [ ] **Step 4: å å
¥è§£å³æ¹æ¡å¹¶éªè¯** |
| | | |
| | | ```powershell |
| | | cd d:\TestPlatform\TapProject |
| | | dotnet sln WPFProject\TapProject.sln add Aging.ResourceContracts\Aging.ResourceContracts.csproj tests\Aging.MvpTests\Aging.MvpTests.csproj |
| | | dotnet test tests\Aging.MvpTests\Aging.MvpTests.csproj |
| | | ``` |
| | | 颿ï¼`Passed! - 1 failed: 0, passed: 1`ï¼æ¨¡æ¿èªå¸¦ UnitTest1ï¼ãè¥ `dotnet sln add` å æ§å¼å·¥ç¨æ ¼å¼æ¥éï¼è®°å½åå¨ VS ä¸æå·¥æ·»å ï¼ä¸é»å¡åç»ä»»å¡ã |
| | | |
| | | - [ ] **Step 5: Commit** |
| | | |
| | | ```powershell |
| | | git add Aging.ResourceContracts tests WPFProject/TapProject.sln |
| | | git commit -m "chore(mvp): å¥çº¦åºä¸æµè¯å·¥ç¨éª¨æ¶" |
| | | ``` |
| | | |
| | | --- |
| | | |
| | | ## Task 1: å¥çº¦ç±»åï¼LeaseGrant / AcquireRequest / DeviceOperation / IPC å°å¥ï¼ |
| | | |
| | | **Files:** |
| | | - Create: `Aging.ResourceContracts/LeaseTypes.cs` |
| | | - Create: `Aging.ResourceContracts/DeviceOperationTypes.cs` |
| | | - Create: `Aging.ResourceContracts/IpcEnvelope.cs` |
| | | - Test: `tests/Aging.MvpTests/ContractSerializeTests.cs` |
| | | |
| | | - [ ] **Step 1: å失败æµè¯ï¼JSON å¾è¿ä¸ä¸¢å段ï¼** |
| | | |
| | | `tests/Aging.MvpTests/ContractSerializeTests.cs`ï¼ |
| | | |
| | | ```csharp |
| | | using System.Text.Json; |
| | | using Aging.ResourceContracts; |
| | | using Xunit; |
| | | |
| | | namespace Aging.MvpTests |
| | | { |
| | | public class ContractSerializeTests |
| | | { |
| | | [Fact] |
| | | public void LeaseGrant_RoundTrips_Json() |
| | | { |
| | | var g = new LeaseGrant("broker-b01", "can/can02", "lease_abc", |
| | | "W01.RunA", OwnerTypeV3.Maintenance, epoch: 7, generation: 42, |
| | | expiresUtcMs: 1793673600000); |
| | | var json = JsonSerializer.Serialize(g); |
| | | var back = JsonSerializer.Deserialize<LeaseGrant>(json)!; |
| | | Assert.Equal(g.Generation, back.Generation); |
| | | Assert.Equal(g.Epoch, back.Epoch); |
| | | Assert.Equal(g.LeaseId, back.LeaseId); |
| | | Assert.Equal(g.OwnerType, back.OwnerType); |
| | | } |
| | | |
| | | [Fact] |
| | | public void IpcEnvelope_Carries_BodyAndIdentity() |
| | | { |
| | | var e = new IpcEnvelope |
| | | { |
| | | ProtocolVersion = 1, MessageType = "SubmitTask", |
| | | RequestId = "req-1", ClientInstanceId = "hmi/bootA/123", |
| | | AuthorityId = "broker-b01", ConfigHash = "sha256:x", |
| | | BodyJson = "{\"operationCode\":\"SEND\"}" |
| | | }; |
| | | var json = JsonSerializer.Serialize(e); |
| | | var back = JsonSerializer.Deserialize<IpcEnvelope>(json)!; |
| | | Assert.Equal("SubmitTask", back.MessageType); |
| | | Assert.Equal("sha256:x", back.ConfigHash); |
| | | } |
| | | } |
| | | } |
| | | ``` |
| | | |
| | | - [ ] **Step 2: è¿è¡ç¡®è®¤å¤±è´¥** |
| | | |
| | | ```powershell |
| | | dotnet test tests\Aging.MvpTests\Aging.MvpTests.csproj --filter ContractSerializeTests |
| | | ``` |
| | | 颿ï¼ç¼è¯é误 `The type LeaseGrant does not exist`ï¼å·¥ç¨æªå¼ç¨å®ç°åçèªç¶å¤±è´¥ï¼ã |
| | | |
| | | - [ ] **Step 3: å®ç°å¥çº¦ç±»å** |
| | | |
| | | `Aging.ResourceContracts/LeaseTypes.cs`ï¼ |
| | | |
| | | ```csharp |
| | | using System; |
| | | using System.Threading; |
| | | using System.Threading.Tasks; |
| | | |
| | | namespace Aging.ResourceContracts |
| | | { |
| | | /// <summary>ä¸ç°æ OwnerType æ°å¼å¯¹é½ï¼Production=0, Maintenance=1ã</summary> |
| | | public enum OwnerTypeV3 { Production = 0, Maintenance = 1 } |
| | | |
| | | /// <summary>MVP ç¸ä½ï¼Free å¯ç¨ / Active ææ / RecoveryRequired è¿æå¾
åæ¶ï¼INV-03ï¼ã</summary> |
| | | public enum LeasePhase { Free = 0, Active = 1, RecoveryRequired = 2 } |
| | | |
| | | /// <summary>æ¯èµæºä¸å¼ ç§çº¦åè¯ï¼æ
æ =(AuthorityId, Epoch, ResourceKey, LeaseId, Generation)ã</summary> |
| | | public sealed class LeaseGrant |
| | | { |
| | | public string AuthorityId { get; } |
| | | public string ResourceKey { get; } |
| | | public string LeaseId { get; } |
| | | public string OwnerId { get; } |
| | | public OwnerTypeV3 OwnerType { get; } |
| | | public long Epoch { get; } |
| | | public long Generation { get; } |
| | | public long ExpiresUtcMs { get; } |
| | | |
| | | public LeaseGrant(string authorityId, string resourceKey, string leaseId, |
| | | string ownerId, OwnerTypeV3 ownerType, long epoch, long generation, long expiresUtcMs) |
| | | { |
| | | AuthorityId = authorityId; ResourceKey = resourceKey; LeaseId = leaseId; |
| | | OwnerId = ownerId; OwnerType = ownerType; Epoch = epoch; |
| | | Generation = generation; ExpiresUtcMs = expiresUtcMs; |
| | | } |
| | | } |
| | | |
| | | public sealed class AcquireRequest |
| | | { |
| | | public string OwnerId { get; set; } = ""; |
| | | public OwnerTypeV3 OwnerType { get; set; } |
| | | /// <summary>boot_id + pidï¼åæºè¿ç¨åºåã</summary> |
| | | public string ProcessInstanceId { get; set; } = ""; |
| | | public string MachineName { get; set; } = Environment.MachineName; |
| | | public int HostProcessId { get; set; } = System.Diagnostics.Process.GetCurrentProcess().Id; |
| | | /// <summary>ç³è¯·çç±ï¼ç»´æ¤ä¼è¯å¡«æä½åä¸åå ï¼è¿ lease_historyï¼ã</summary> |
| | | public string Reason { get; set; } = ""; |
| | | /// <summary>Ordinals ååºãå»éåç³è¯·ï¼ç»ç³è¯· = åäºå¡å
¨æå
¨æ ï¼ã</summary> |
| | | public string[] ResourceKeys { get; set; } = new string[0]; |
| | | public int WaitTimeoutMs { get; set; } = 1000; |
| | | public int TtlSeconds { get; set; } = 30; |
| | | } |
| | | |
| | | public enum AcquireResultCode { Acquired, Reused, ConflictHeld, RecoveryBlocked, Timeout } |
| | | |
| | | public sealed class ConflictInfo |
| | | { |
| | | public string OwnerId { get; set; } = ""; |
| | | public OwnerTypeV3 OwnerType { get; set; } |
| | | public string MachineName { get; set; } = ""; |
| | | public int HostProcessId { get; set; } |
| | | public string Reason { get; set; } = ""; |
| | | public long ExpiresUtcMs { get; set; } |
| | | } |
| | | |
| | | public sealed class AcquireOutcome |
| | | { |
| | | public AcquireResultCode Code { get; set; } |
| | | public LeaseGrant[] Grants { get; set; } = new LeaseGrant[0]; |
| | | public ConflictInfo? Holder { get; set; } |
| | | /// <summary>RecoveryBlocked æ¶æå recovery_checkpoint çé®ã</summary> |
| | | public string? RecoveryCheckpointKey { get; set; } |
| | | } |
| | | |
| | | /// <summary>ç§çº¦åè°å¨ï¼ä»²è£åå¯ä¸å
¥å£ãå®ç°æ¹ï¼DbLeaseStoreã</summary> |
| | | public interface ILeaseCoordinator |
| | | { |
| | | /// <summary>æå¨åå½å epochï¼éå¯åéå¢ï¼æ§ Grant èªå¨å¤±æï¼ã</summary> |
| | | long CurrentEpoch { get; } |
| | | |
| | | AcquireOutcome Acquire(AcquireRequest request); |
| | | /// <summary>å LeaseId+Generation ç»æï¼è¿å false=å·²è¢«åæ¶/è¶
è¶ï¼æ¬å°é¡»çæï¼ã</summary> |
| | | bool Renew(LeaseGrant grant, int extendSeconds); |
| | | bool Release(LeaseGrant grant, string note); |
| | | ConflictInfo? ProbeConflict(string resourceKey); |
| | | int SweepExpired(); |
| | | /// <summary>RecoveryRequired â Freeï¼å®¿ä¸»å®æè¯»åæ¢æµåç»è®°è¯æ®å¹¶æ¾è¡ã</summary> |
| | | bool ApproveRecovery(string resourceKey, string readbackJson, string approvedBy); |
| | | } |
| | | } |
| | | ``` |
| | | |
| | | `Aging.ResourceContracts/DeviceOperationTypes.cs`ï¼ |
| | | |
| | | ```csharp |
| | | namespace Aging.ResourceContracts |
| | | { |
| | | public enum OperationState |
| | | { |
| | | Succeeded, Failed, |
| | | /// <summary>æ
æ æ ¡éªå¤±è´¥ï¼Grant ç epoch/generation 已失æï¼å« Broker éå¯ï¼ã</summary> |
| | | RejectedStaleLease, |
| | | /// <summary>INV-04 éå½¢ï¼å®¢æ·ç«¯ configHash ä¸ Broker çæé
ç½®ä¸ä¸è´ã</summary> |
| | | RejectedConfigMismatch, |
| | | /// <summary>ä¼è¯éåæ»¡ã</summary> |
| | | RejectedQueueFull, |
| | | /// <summary>å·²åéä½ç»ææªç¥ï¼INV-06ï¼ç¦æ¢å½æªæ§è¡ï¼ã</summary> |
| | | Unknown |
| | | } |
| | | |
| | | /// <summary>䏿¬¡æç设å¤å¨ä½ï¼MVP=OneShotï¼ãGrants å¿
é¡»è¦ç resourcesã</summary> |
| | | public sealed class DeviceOperation |
| | | { |
| | | /// <summary>ç½ååæä½ç ï¼å¦ "CAN_SEND"/"CAN_RECV"/"CAN_AUTO_RESPONSE"/"CAN_STATUS"ã</summary> |
| | | public string OperationCode { get; set; } = ""; |
| | | public string ParametersJson { get; set; } = "{}"; |
| | | public string IdempotencyKey { get; set; } = ""; |
| | | public string ConfigHash { get; set; } = ""; |
| | | public LeaseGrant[] Grants { get; set; } = new LeaseGrant[0]; |
| | | public long DeadlineUtcMs { get; set; } |
| | | } |
| | | |
| | | public sealed class OperationResult |
| | | { |
| | | public string RequestId { get; set; } = ""; |
| | | public OperationState State { get; set; } |
| | | public string ErrorCode { get; set; } = ""; |
| | | public string ReadbackJson { get; set; } = "{}"; |
| | | public long ServerEpoch { get; set; } |
| | | } |
| | | } |
| | | ``` |
| | | |
| | | `Aging.ResourceContracts/IpcEnvelope.cs`ï¼ |
| | | |
| | | ```csharp |
| | | namespace Aging.ResourceContracts |
| | | { |
| | | /// <summary>IPC æ¶æ¯ç±»å常éï¼MVP ä»
åç§ï¼ã</summary> |
| | | public static class IpcMessageTypes |
| | | { |
| | | public const string Hello = "Hello"; // æ¡æï¼å epoch/configHash |
| | | public const string SubmitTask = "SubmitTask"; // body=DeviceOperation |
| | | public const string CancelTask = "CancelTask"; |
| | | public const string ProbeReadback = "ProbeReadback"; // æ¢å¤åæ¶åçè¯»åæ¢æµ |
| | | } |
| | | |
| | | /// <summary>请æ±/ååºå
±åå°å¥ãåè®®çæ¬ä¸å¹é
ç´æ¥æç»è¿æ¥ã</summary> |
| | | public sealed class IpcEnvelope |
| | | { |
| | | public int ProtocolVersion { get; set; } = 1; |
| | | public string MessageType { get; set; } = ""; |
| | | public string RequestId { get; set; } = ""; |
| | | public string CorrelationId { get; set; } = ""; |
| | | public string ClientInstanceId { get; set; } = ""; |
| | | public string AuthorityId { get; set; } = ""; |
| | | public string ConfigHash { get; set; } = ""; |
| | | public long DeadlineUtcMs { get; set; } |
| | | public string BodyJson { get; set; } = "{}"; |
| | | } |
| | | |
| | | public sealed class HelloResult |
| | | { |
| | | public long ServerEpoch { get; set; } |
| | | public string ConfigHash { get; set; } = ""; |
| | | public int ProtocolVersion { get; set; } = 1; |
| | | public string BrokerId { get; set; } = ""; |
| | | } |
| | | } |
| | | ``` |
| | | |
| | | æµè¯å·¥ç¨ csproj 追å `<PackageReference Include="System.Text.Json" Version="6.0.5" />`ï¼net472 å¯ç¨ï¼å¥çº¦åºåæ ·å æ¤å
ï¼ã |
| | | |
| | | - [ ] **Step 4: è¿è¡ç¡®è®¤éè¿** |
| | | |
| | | ```powershell |
| | | dotnet test tests\Aging.MvpTests\Aging.MvpTests.csproj --filter ContractSerializeTests |
| | | ``` |
| | | 颿ï¼`Passed! - failed: 0, passed: 2` |
| | | |
| | | - [ ] **Step 5: Commit** |
| | | |
| | | ```powershell |
| | | git add Aging.ResourceContracts tests |
| | | git commit -m "feat(contracts): LeaseGrant/ILeaseCoordinator/DeviceOperation/IPC å°å¥" |
| | | ``` |
| | | |
| | | --- |
| | | |
| | | ## Task 2: DbLeaseStore ââ è·¨è¿ç¨ç§çº¦æ ¸å¿ï¼arb.dbï¼ |
| | | |
| | | **Files:** |
| | | - Create: `Aging.Infrastructure/Core/DbLeaseStore.cs` |
| | | - Modify: `Aging.Infrastructure/Aging.Infrastructure.csproj`ï¼å PackageReference System.Data.SQLite + å¥çº¦å·¥ç¨å¼ç¨ï¼ |
| | | - Test: `tests/Aging.MvpTests/DbLeaseStoreTests.cs` |
| | | |
| | | - [ ] **Step 1: å失败æµè¯ï¼å¹¶åç³è¯·äºæ¥ + æ
æ + è¿æåæ¶ + epoch 失æï¼** |
| | | |
| | | `tests/Aging.MvpTests/DbLeaseStoreTests.cs`ï¼ |
| | | |
| | | ```csharp |
| | | using System; |
| | | using System.IO; |
| | | using System.Threading.Tasks; |
| | | using Aging.Infrastructure.Core; |
| | | using Aging.ResourceContracts; |
| | | using Xunit; |
| | | |
| | | namespace Aging.MvpTests |
| | | { |
| | | public class DbLeaseStoreTests : IDisposable |
| | | { |
| | | private readonly string _dbPath; |
| | | private readonly DbLeaseStore _store; |
| | | |
| | | public DbLeaseStoreTests() |
| | | { |
| | | _dbPath = Path.Combine(Path.GetTempPath(), |
| | | "arb_test_" + Guid.NewGuid().ToString("N") + ".db"); |
| | | _store = new DbLeaseStore(_dbPath, "local-main"); |
| | | } |
| | | public void Dispose() { try { File.Delete(_dbPath); } catch { } } |
| | | |
| | | private AcquireRequest Req(string key, OwnerTypeV3 type = OwnerTypeV3.Maintenance, |
| | | int ttl = 30) => new AcquireRequest |
| | | { |
| | | OwnerId = "test-owner", OwnerType = type, |
| | | ProcessInstanceId = Guid.NewGuid().ToString("N"), |
| | | ResourceKeys = new[] { key }, TtlSeconds = ttl |
| | | }; |
| | | |
| | | [Fact] |
| | | public void Acquire_FirstOwner_Succeeds() |
| | | { |
| | | var r = _store.Acquire(Req("can/can02")); |
| | | Assert.Equal(AcquireResultCode.Acquired, r.Code); |
| | | Assert.Equal(1, r.Grants[0].Generation); |
| | | } |
| | | |
| | | [Fact] |
| | | public void Acquire_WhileActiveByOther_ReturnsConflictWithHolder() |
| | | { |
| | | _store.Acquire(Req("can/can02")); |
| | | var second = new AcquireRequest |
| | | { |
| | | OwnerId = "other-owner", OwnerType = OwnerTypeV3.Production, |
| | | ProcessInstanceId = "x", ResourceKeys = new[] { "can/can02" } |
| | | }; |
| | | var r = _store.Acquire(second); |
| | | Assert.Equal(AcquireResultCode.ConflictHeld, r.Code); |
| | | Assert.Equal("test-owner", r.Holder!.OwnerId); |
| | | } |
| | | |
| | | [Fact] |
| | | public void TwoIndependentStores_SameFile_SimulatesTwoProcesses() |
| | | { |
| | | // 两个å®ä¾æååä¸ arb.db = çä»·äºä¸¤ä¸ªè¿ç¨ï¼SQLite äºå¡ä¸ºä»²è£å±ï¼ |
| | | var storeB = new DbLeaseStore(_dbPath, "local-main"); |
| | | var a = _store.Acquire(Req("psu/psu01/ch/5")); |
| | | var b = storeB.Acquire(new AcquireRequest |
| | | { |
| | | OwnerId = "W02", OwnerType = OwnerTypeV3.Production, |
| | | ProcessInstanceId = "p2", ResourceKeys = new[] { "psu/psu01/ch/5" } |
| | | }); |
| | | Assert.Equal(AcquireResultCode.Acquired, a.Code); |
| | | Assert.Equal(AcquireResultCode.ConflictHeld, b.Code); |
| | | } |
| | | |
| | | [Fact] |
| | | public void Concurrent_50Threads_OnlyOneWins() |
| | | { |
| | | int winners = 0; |
| | | Parallel.For(0, 50, _ => |
| | | { |
| | | var s = new DbLeaseStore(_dbPath, "local-main"); |
| | | var r = s.Acquire(new AcquireRequest |
| | | { |
| | | OwnerId = Guid.NewGuid().ToString("N"), OwnerType = OwnerTypeV3.Production, |
| | | ProcessInstanceId = "p", ResourceKeys = new[] { "can/bus" }, WaitTimeoutMs = 3000 |
| | | }); |
| | | if (r.Code == AcquireResultCode.Acquired) Interlocked.Increment(ref winners); |
| | | }); |
| | | Assert.Equal(1, winners); |
| | | } |
| | | |
| | | [Fact] |
| | | public void ExpiredLease_EntersRecoveryRequired_NotAutoReclaim() |
| | | { |
| | | _store.Acquire(Req("can/can02", ttl: -1)); // ç«å³è¿æï¼æµè¯é©åï¼è´ TTLï¼ |
| | | _store.SweepExpired(); |
| | | var r = _store.Acquire(Req("can/can02", OwnerTypeV3.Production)); |
| | | Assert.Equal(AcquireResultCode.RecoveryBlocked, r.Code); |
| | | |
| | | // äººå·¥åæ¶ï¼è¯»åè¯æ®åæ ¼åæ¾è¡ |
| | | Assert.True(_store.ApproveRecovery("can/can02", "{\"output\":\"off\"}", "admin")); |
| | | var again = _store.Acquire(Req("can/can02", OwnerTypeV3.Production)); |
| | | Assert.Equal(AcquireResultCode.Acquired, again.Code); |
| | | Assert.Equal(2, again.Grants[0].Generation); // generation åè°ï¼æ°¸ä¸åé |
| | | } |
| | | |
| | | [Fact] |
| | | public void Renew_WithStaleGeneration_Fails() |
| | | { |
| | | var g = _store.Acquire(Req("can/can02")).Grants[0]; |
| | | var stale = new LeaseGrant(g.AuthorityId, g.ResourceKey, g.LeaseId, |
| | | g.OwnerId, g.OwnerType, g.Epoch, generation: 999, g.ExpiresUtcMs); |
| | | Assert.False(_store.Renew(stale, 30)); |
| | | Assert.True(_store.Renew(g, 30)); |
| | | } |
| | | |
| | | [Fact] |
| | | public void BumpEpoch_InvalidatesAllActiveGrants() |
| | | { |
| | | var g = _store.Acquire(Req("can/can02")).Grants[0]; |
| | | _store.BumpEpochForTest("arb.db é坿¨¡æ"); |
| | | Assert.False(_store.Renew(g, 30)); // æ§ epoch Grant å
¨é¨å¤±æ |
| | | } |
| | | |
| | | [Fact] |
| | | public void GroupAcquire_PartialConflict_RollsBackAll() |
| | | { |
| | | _store.Acquire(Req("psu/b")); // å
å b |
| | | var r = _store.Acquire(new AcquireRequest |
| | | { |
| | | OwnerId = "W09", OwnerType = OwnerTypeV3.Production, ProcessInstanceId = "p", |
| | | ResourceKeys = new[] { "psu/a", "psu/b", "psu/c" } // å®ç°å
é¨ä¼ Ordinal æåº |
| | | }); |
| | | Assert.Equal(AcquireResultCode.ConflictHeld, r.Code); |
| | | Assert.Null(_store.ProbeConflict("psu/a")); // a æªè¢«åå ç¨ |
| | | } |
| | | } |
| | | } |
| | | ``` |
| | | |
| | | - [ ] **Step 2: è¿è¡ç¡®è®¤å¤±è´¥** |
| | | |
| | | ```powershell |
| | | dotnet test tests\Aging.MvpTests\Aging.MvpTests.csproj --filter DbLeaseStoreTests |
| | | ``` |
| | | 颿ï¼ç¼è¯å¤±è´¥ï¼`DbLeaseStore` ä¸åå¨ï¼ãè¥å¥çº¦æµè¯å·¥ç¨ç¼è¯æ¥ `System.Data.SQLite` 缺失ï¼å
卿µè¯ csproj å `<PackageReference Include="System.Data.SQLite" Version="1.0.118" />`ï¼Interop ç± Step 3 ç Content å¤å¶è§£å³ï¼ã |
| | | |
| | | - [ ] **Step 3: å®ç° DbLeaseStore** |
| | | |
| | | å
ä¿®æ¹ `Aging.Infrastructure/Aging.Infrastructure.csproj`ï¼ItemGroup 追å ï¼ |
| | | |
| | | ```xml |
| | | <ProjectReference Include="..\Aging.ResourceContracts\Aging.ResourceContracts.csproj" /> |
| | | <PackageReference Include="System.Data.SQLite" Version="1.0.118" /> |
| | | ``` |
| | | |
| | | `Aging.Infrastructure/Core/DbLeaseStore.cs`ï¼ |
| | | |
| | | ```csharp |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Globalization; |
| | | using System.IO; |
| | | using System.Linq; |
| | | using System.Text; |
| | | using Aging.ResourceContracts; |
| | | using log4net; |
| | | using SQLite; |
| | | |
| | | namespace Aging.Infrastructure.Core |
| | | { |
| | | /// <summary> |
| | | /// è·¨è¿ç¨ç§çº¦åå¨ï¼V3.0 §8 MVPï¼ãarb.db ç¬ç«äº data.dbã |
| | | /// æ¶é´ä¸å¾ DB ä¾§ UTC 毫ç§ï¼DateTime.UtcNow å INTEGERï¼ï¼ |
| | | /// ç³è¯·/ç»æ/éæ¾å
¨é¨èµ° BEGIN IMMEDIATE ååäºå¡ ââ SQLite äºå¡å³è¿ç¨é´ä»²è£å±ã |
| | | /// INV-03ï¼è¿æ â RecoveryRequiredï¼ç¦æ¢èªå¨ç§»äº¤ï¼ApproveRecovery ç»è®°è¯æ®åç½® Freeã |
| | | /// </summary> |
| | | public sealed class DbLeaseStore : ILeaseCoordinator |
| | | { |
| | | private static readonly ILog Log = LogManager.GetLogger(typeof(DbLeaseStore)); |
| | | |
| | | private readonly string _dbPath; |
| | | private readonly string _authorityId; |
| | | private readonly long _bootNowMs = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); |
| | | |
| | | public string AuthorityId => _authorityId; |
| | | public long CurrentEpoch { get; private set; } |
| | | |
| | | public DbLeaseStore(string dbPath, string authorityId) |
| | | { |
| | | _dbPath = dbPath; |
| | | _authorityId = authorityId; |
| | | EnsureDirectory(); |
| | | InitializeSchema(); |
| | | CurrentEpoch = ReadOrInitEpoch(); |
| | | } |
| | | |
| | | private void EnsureDirectory() |
| | | { |
| | | var dir = Path.GetDirectoryName(_dbPath); |
| | | if (!string.IsNullOrEmpty(dir) && !Directory.Exists(dir)) Directory.CreateDirectory(dir); |
| | | } |
| | | |
| | | private SQLiteConnection Open() |
| | | { |
| | | var conn = new SQLiteConnection(_dbPath); |
| | | conn.Execute("PRAGMA journal_mode=WAL;"); |
| | | conn.Execute("PRAGMA busy_timeout=3000;"); |
| | | conn.Execute("PRAGMA synchronous=FULL;"); |
| | | return conn; |
| | | } |
| | | |
| | | private void InitializeSchema() |
| | | { |
| | | using var conn = Open(); |
| | | conn.Execute(@" |
| | | CREATE TABLE IF NOT EXISTS authority_meta( |
| | | authority_id TEXT PRIMARY KEY, epoch INTEGER NOT NULL, |
| | | boot_id TEXT NOT NULL, schema_version INTEGER NOT NULL); |
| | | CREATE TABLE IF NOT EXISTS resource_state( |
| | | resource_key TEXT PRIMARY KEY, |
| | | generation INTEGER NOT NULL DEFAULT 0, |
| | | phase INTEGER NOT NULL DEFAULT 0, -- LeasePhase |
| | | lease_id TEXT, owner_id TEXT, owner_type INTEGER, |
| | | process_instance_id TEXT, machine_name TEXT, host_process_id INTEGER, |
| | | epoch INTEGER NOT NULL DEFAULT 0, reason TEXT, |
| | | acquired_utc_ms INTEGER, expires_utc_ms INTEGER, updated_utc_ms INTEGER); |
| | | CREATE TABLE IF NOT EXISTS lease_history( |
| | | event_id INTEGER PRIMARY KEY AUTOINCREMENT, |
| | | resource_key TEXT NOT NULL, generation INTEGER NOT NULL, |
| | | epoch INTEGER NOT NULL, lease_id TEXT, owner_id TEXT, |
| | | event_type TEXT NOT NULL, reason TEXT, utc_ms INTEGER NOT NULL); |
| | | CREATE TABLE IF NOT EXISTS recovery_checkpoint( |
| | | resource_key TEXT PRIMARY KEY, epoch INTEGER NOT NULL, |
| | | status INTEGER NOT NULL, -- 0=Pending 1=Approved |
| | | physical_readback_json TEXT NOT NULL, approved_by TEXT, |
| | | evidence_utc_ms INTEGER NOT NULL);"); |
| | | } |
| | | |
| | | private long ReadOrInitEpoch() |
| | | { |
| | | using var conn = Open(); |
| | | var row = conn.Query<AuthorityMetaRow>( |
| | | "SELECT epoch, boot_id FROM authority_meta WHERE authority_id=?", _authorityId) |
| | | .FirstOrDefault(); |
| | | long nowMs = NowMs(); |
| | | if (row == null) |
| | | { |
| | | conn.Execute("INSERT INTO authority_meta VALUES(?,?,?,1)", |
| | | _authorityId, 1L, Guid.NewGuid().ToString("N")); |
| | | return 1; |
| | | } |
| | | // æ¯æ¬¡è¿ç¨æå¼å䏿å¨å â boot_id åå â epoch+1ï¼éå¯ä½¿æ§ Grant 失æï¼ |
| | | conn.Execute("UPDATE authority_meta SET epoch=epoch+1, boot_id=? WHERE authority_id=?", |
| | | Guid.NewGuid().ToString("N"), _authorityId); |
| | | CurrentEpoch = row.epoch + 1; |
| | | conn.Execute("INSERT INTO lease_history(resource_key,generation,epoch,lease_id,owner_id,event_type,reason,utc_ms)" + |
| | | " VALUES('*',{0},{1},'','system','EpochBump','open-authority',{2})", |
| | | CurrentEpoch, "", nowMs); |
| | | return CurrentEpoch; |
| | | } |
| | | |
| | | // ================= ILeaseCoordinator ================= |
| | | |
| | | public AcquireOutcome Acquire(AcquireRequest request) |
| | | { |
| | | if (request.ResourceKeys.Length == 0) |
| | | throw new ArgumentException("ResourceKeys ä¸è½ä¸ºç©º"); |
| | | var keys = request.ResourceKeys.Select(NormKey).OrderBy(k => k, StringComparer.Ordinal) |
| | | .Distinct().ToArray(); |
| | | |
| | | var deadline = NowMs() + Math.Max(0, request.WaitTimeoutMs); |
| | | while (true) |
| | | { |
| | | var outcome = TryAcquireOnce(keys, request); |
| | | if (outcome.Code != AcquireResultCode.Timeout) return outcome; |
| | | if (NowMs() >= deadline) { outcome.Code = AcquireResultCode.Timeout; return outcome; } |
| | | System.Threading.Thread.Sleep(50); |
| | | } |
| | | } |
| | | |
| | | private AcquireOutcome TryAcquireOnce(string[] keys, AcquireRequest req) |
| | | { |
| | | long now = NowMs(); |
| | | using var conn = Open(); |
| | | using var tx = conn.BeginTransaction(); // é»è®¤å³ IMMEDIATE |
| | | try |
| | | { |
| | | var grants = new List<LeaseGrant>(keys.Length); |
| | | foreach (var key in keys) |
| | | { |
| | | var st = conn.Query<ResourceStateRow>( |
| | | "SELECT * FROM resource_state WHERE resource_key=?", key).FirstOrDefault(); |
| | | if (st != null && st.Phase == (int)LeasePhase.RecoveryRequired) |
| | | { |
| | | tx.Rollback(); |
| | | return new AcquireOutcome |
| | | { |
| | | Code = AcquireResultCode.RecoveryBlocked, |
| | | RecoveryCheckpointKey = key |
| | | }; |
| | | } |
| | | bool activeHeld = st != null && st.Phase == (int)LeasePhase.Active |
| | | && st.ExpiresUtcMs > now; |
| | | if (activeHeld) |
| | | { |
| | | // åä¸ LeaseId éå
¥ = ç»æè¯ä¹ï¼MVP ä¸åè·¨è¿ç¨ Reusedï¼å²çªå³è¿åï¼ |
| | | tx.Rollback(); |
| | | return new AcquireOutcome |
| | | { |
| | | Code = AcquireResultCode.ConflictHeld, |
| | | Holder = new ConflictInfo |
| | | { |
| | | OwnerId = st!.OwnerId, OwnerType = (OwnerTypeV3)st.OwnerType, |
| | | MachineName = st.MachineName, HostProcessId = st.HostProcessId, |
| | | Reason = st.Reason, ExpiresUtcMs = st.ExpiresUtcMs |
| | | } |
| | | }; |
| | | } |
| | | |
| | | long gen = (st?.Generation ?? 0) + 1; |
| | | string leaseId = "lease_" + Guid.NewGuid().ToString("N").Substring(0, 12); |
| | | var exp = now + req.TtlSeconds * 1000L; |
| | | |
| | | if (st == null) |
| | | conn.Execute( |
| | | @"INSERT INTO resource_state(resource_key,generation,phase,lease_id,owner_id, |
| | | owner_type,process_instance_id,machine_name,host_process_id,epoch,reason, |
| | | acquired_utc_ms,expires_utc_ms,updated_utc_ms) |
| | | VALUES(?,?,1,?,?,?,?,?,?,?,?,?,?,?,?)", |
| | | key, gen, leaseId, req.OwnerId, (int)req.OwnerType, |
| | | req.ProcessInstanceId, req.MachineName, req.HostProcessId, |
| | | CurrentEpoch, req.Reason, now, exp, now); |
| | | else |
| | | conn.Execute( |
| | | @"UPDATE resource_state SET generation=?, phase=1, lease_id=?, owner_id=?, |
| | | owner_type=?, process_instance_id=?, machine_name=?, host_process_id=?, |
| | | epoch=?, reason=?, acquired_utc_ms=?, expires_utc_ms=?, updated_utc_ms=? |
| | | WHERE resource_key=?", |
| | | gen, leaseId, req.OwnerId, (int)req.OwnerType, req.ProcessInstanceId, |
| | | req.MachineName, req.HostProcessId, CurrentEpoch, req.Reason, |
| | | now, exp, now, key); |
| | | |
| | | conn.Execute( |
| | | @"INSERT INTO lease_history(resource_key,generation,epoch,lease_id,owner_id,event_type,reason,utc_ms) |
| | | VALUES(?,?,?,?,?,'Acquire',?,?)", |
| | | key, gen, CurrentEpoch, leaseId, req.OwnerId, req.Reason, now); |
| | | grants.Add(new LeaseGrant(_authorityId, key, leaseId, req.OwnerId, |
| | | req.OwnerType, CurrentEpoch, gen, exp)); |
| | | } |
| | | tx.Commit(); |
| | | return new AcquireOutcome { Code = AcquireResultCode.Acquired, Grants = grants.ToArray() }; |
| | | } |
| | | catch |
| | | { |
| | | try { tx.Rollback(); } catch { } |
| | | throw; |
| | | } |
| | | } |
| | | |
| | | public bool Renew(LeaseGrant grant, int extendSeconds) |
| | | { |
| | | long now = NowMs(); |
| | | using var conn = Open(); |
| | | using var tx = conn.BeginTransaction(); |
| | | int n = conn.Execute( |
| | | @"UPDATE resource_state SET expires_utc_ms=?, updated_utc_ms=? |
| | | WHERE resource_key=? AND lease_id=? AND generation=? AND epoch=? |
| | | AND phase=1 AND expires_utc_ms>?", |
| | | now + extendSeconds * 1000L, now, |
| | | NormKey(grant.ResourceKey), grant.LeaseId, grant.Generation, grant.Epoch, now); |
| | | if (n == 1) tx.Commit(); else { tx.Rollback(); Log.Warn($"[Lease] ç»æå¤±è´¥(æ
æ ä¸ç¬¦): {grant.ResourceKey} gen={grant.Generation}"); } |
| | | return n == 1; |
| | | } |
| | | |
| | | public bool Release(LeaseGrant grant, string note) |
| | | { |
| | | long now = NowMs(); |
| | | using var conn = Open(); |
| | | using var tx = conn.BeginTransaction(); |
| | | int n = conn.Execute( |
| | | @"UPDATE resource_state SET phase=0, lease_id=NULL, owner_id=NULL, |
| | | expires_utc_ms=0, updated_utc_ms=? |
| | | WHERE resource_key=? AND lease_id=? AND generation=?", |
| | | now, NormKey(grant.ResourceKey), grant.LeaseId, grant.Generation); |
| | | conn.Execute( |
| | | @"INSERT INTO lease_history(resource_key,generation,epoch,lease_id,owner_id,event_type,reason,utc_ms) |
| | | SELECT ?,?,?,?,?, 'Release', ?, ? WHERE ?=1", |
| | | NormKey(grant.ResourceKey), grant.Generation, grant.Epoch, grant.LeaseId, |
| | | grant.OwnerId, note, now, n); |
| | | if (n == 1) tx.Commit(); else tx.Rollback(); |
| | | return n == 1; |
| | | } |
| | | |
| | | public ConflictInfo? ProbeConflict(string resourceKey) |
| | | { |
| | | long now = NowMs(); |
| | | using var conn = Open(); |
| | | var st = conn.Query<ResourceStateRow>( |
| | | "SELECT * FROM resource_state WHERE resource_key=? AND phase=1 AND expires_utc_ms>?", |
| | | NormKey(resourceKey), now).FirstOrDefault(); |
| | | if (st == null) return null; |
| | | return new ConflictInfo |
| | | { |
| | | OwnerId = st.OwnerId, OwnerType = (OwnerTypeV3)st.OwnerType, |
| | | MachineName = st.MachineName, HostProcessId = st.HostProcessId, |
| | | Reason = st.Reason, ExpiresUtcMs = st.ExpiresUtcMs |
| | | }; |
| | | } |
| | | |
| | | public LeasePhase PhaseOf(string resourceKey) |
| | | { |
| | | using var conn = Open(); |
| | | var st = connQuery(conn, resourceKey); |
| | | if (st == null) return LeasePhase.Free; |
| | | if (st.Phase == (int)LeasePhase.RecoveryRequired) return LeasePhase.RecoveryRequired; |
| | | if (st.Phase == (int)LeasePhase.Active && st.ExpiresUtcMs <= NowMs()) |
| | | return LeasePhase.RecoveryRequired; // è¯»ä¾§æ°æ§å¤å®ï¼åä¾§ç± SweepExpired è½åº |
| | | return (LeasePhase)st.Phase; |
| | | } |
| | | |
| | | public int SweepExpired() |
| | | { |
| | | long now = NowMs(); |
| | | using var conn = Open(); |
| | | using var tx = conn.BeginTransaction(); |
| | | var expired = conn.Query<ResourceStateRow>( |
| | | "SELECT * FROM resource_state WHERE phase=1 AND expires_utc_ms<=?", now); |
| | | foreach (var st in expired) |
| | | { |
| | | conn.Execute("UPDATE resource_state SET phase=2, updated_utc_ms=? WHERE resource_key=?", |
| | | now, st.ResourceKey); |
| | | conn.Execute( |
| | | @"INSERT INTO lease_history(resource_key,generation,epoch,lease_id,owner_id,event_type,reason,utc_ms) |
| | | VALUES(?,?,?,?,?,'ExpiredToRecovery','ttl-missed',?)", |
| | | st.ResourceKey, st.Generation, st.Epoch, st.LeaseId, st.OwnerId, now); |
| | | conn.Execute( |
| | | @"INSERT OR REPLACE INTO recovery_checkpoint(resource_key,epoch,status,physical_readback_json,approved_by,evidence_utc_ms) |
| | | VALUES(?,?,0,'{}',NULL,?)", st.ResourceKey, st.Epoch, now); |
| | | } |
| | | tx.Commit(); |
| | | return expired.Count; |
| | | } |
| | | |
| | | public bool ApproveRecovery(string resourceKey, string readbackJson, string approvedBy) |
| | | { |
| | | long now = NowMs(); |
| | | using var conn = Open(); |
| | | using var tx = conn.BeginTransaction(); |
| | | conn.Execute( |
| | | @"INSERT OR REPLACE INTO recovery_checkpoint(resource_key,epoch,status,physical_readback_json,approved_by,evidence_utc_ms) |
| | | VALUES(?,?,1,?,?,?)", NormKey(resourceKey), CurrentEpoch, readbackJson, approvedBy, now); |
| | | int n = conn.Execute( |
| | | @"UPDATE resource_state SET phase=0, lease_id=NULL, owner_id=NULL, updated_utc_ms=? |
| | | WHERE resource_key=? AND phase=2", now, NormKey(resourceKey)); |
| | | conn.Execute( |
| | | @"INSERT INTO lease_history(resource_key,generation,epoch,lease_id,owner_id,event_type,reason,utc_ms) |
| | | SELECT resource_key,generation,epoch,'','system','RecoveryApproved',?,? FROM resource_state WHERE resource_key=?", |
| | | approvedBy, now, NormKey(resourceKey)); |
| | | tx.Commit(); |
| | | return n == 1; |
| | | } |
| | | |
| | | /// <summary>æµè¯ä¸ Supervisor ç¨ï¼å¤é¨å¼ºå¶æå epochï¼çæ Broker/宿主éå¯ï¼ã</summary> |
| | | public void BumpEpochForTest(string reason) |
| | | { |
| | | using var conn = Open(); |
| | | conn.Execute("UPDATE authority_meta SET epoch=epoch+1, boot_id=? WHERE authority_id=?", |
| | | Guid.NewGuid().ToString("N"), _authorityId); |
| | | CurrentEpoch = conn.Query<AuthorityMetaRow>( |
| | | "SELECT epoch, boot_id FROM authority_meta WHERE authority_id=?", _authorityId) |
| | | .First().epoch; |
| | | Log.Info($"[Lease] epoch æåè³ {CurrentEpoch}: {reason}"); |
| | | } |
| | | |
| | | // ================= è¾
å© ================= |
| | | |
| | | /// <summary>V3 è§èï¼ç»ä¸å°åãåºå®åé符ãOrdinal æ¯è¾ï¼Â§4.1ï¼ã</summary> |
| | | public static string NormKey(string key) => key.Trim().ToLowerInvariant().Replace(' ', '-'); |
| | | |
| | | private static long NowMs() => DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); |
| | | private ResourceStateRow? connQuery(SQLiteConnection c, string k) => |
| | | c.Query<ResourceStateRow>("SELECT * FROM resource_state WHERE resource_key=?", NormKey(k)).FirstOrDefault(); |
| | | |
| | | private class AuthorityMetaRow |
| | | { |
| | | public long epoch { get; set; } |
| | | public string boot_id { get; set; } = ""; |
| | | } |
| | | private class ResourceStateRow |
| | | { |
| | | public string ResourceKey { get; set; } = ""; |
| | | public long Generation { get; set; } |
| | | public int Phase { get; set; } |
| | | public string? LeaseId { get; set; } |
| | | public string? OwnerId { get; set; } |
| | | public int OwnerType { get; set; } |
| | | public string? MachineName { get; set; } |
| | | public int HostProcessId { get; set; } |
| | | public long Epoch { get; set; } |
| | | public string? Reason { get; set; } |
| | | public long ExpiresUtcMs { get; set; } |
| | | public static implicit operator bool(ResourceStateRow? r) => r is not null; |
| | | } |
| | | } |
| | | } |
| | | ``` |
| | | |
| | | > 注æï¼ååä¸è¡å±æ§æ å°ä¾èµ `SQLite.NET` çååå¹é
ï¼ä¸å线åéæ¾å¼ `[Column]`ï¼ãä¸è¡¨ DDL ç¨ `resource_key` ç snake_caseï¼è `ResourceStateRow` 屿§æ¯ PascalCaseââå®ç°æ¶å¨ç±»ä¸å¯ç¨ `SQLite.NET` æ å°ä¿®æ£ï¼**ç»ä¸æ¹ DDL åå为ä¸å±æ§ä¸è´ç PascalCase**ï¼SQLite åå大å°å䏿æä½æ¥è¯¢ä¸²è¦ä¸è´ï¼ãè½å°æ§è¡è
以æ¤ä¸ºåè°æ´ DDLï¼ä¿è¯äºè
ä¸è´ï¼è¿æ¯æ¬ä»»å¡å¯ä¸çâ对é½âå·¥ä½ï¼æµè¯ä¼ç«å»æ´é²ä¸å¹é
ï¼ã |
| | | |
| | | - [ ] **Step 4: Aging.Infrastructure ç¼è¯éªè¯** |
| | | |
| | | ```powershell |
| | | cd d:\TestPlatform\TapProject |
| | | & "C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\MSBuild.exe" Aging.Infrastructure\Aging.Infrastructure.csproj /p:Configuration=Debug /p:Platform=AnyCPU /t:Build /v:minimal |
| | | ``` |
| | | é¢æï¼æ errorï¼åºç° `Aging.Infrastructure -> ...dll`ã |
| | | |
| | | - [ ] **Step 5: è¿è¡ç§çº¦æµè¯å
¨ç»¿** |
| | | |
| | | ```powershell |
| | | dotnet test tests\Aging.MvpTests\Aging.MvpTests.csproj --filter DbLeaseStoreTests |
| | | ``` |
| | | 颿ï¼`failed: 0, passed: 8` |
| | | |
| | | - [ ] **Step 6: Commit** |
| | | |
| | | ```powershell |
| | | git add Aging.Infrastructure tests |
| | | git commit -m "feat(lease): DbLeaseStore è·¨è¿ç¨ç§çº¦ï¼TTL/æ
æ /epoch/RecoveryRequiredï¼" |
| | | ``` |
| | | |
| | | --- |
| | | |
| | | ## Task 3: LayeredResourceManager + Bootstrapper æ¥çº¿ï¼ä¸å±é¶æ¹å¨æéè·¨è¿ç¨ï¼ |
| | | |
| | | **Files:** |
| | | - Create: `Aging.Infrastructure/Core/LayeredResourceManager.cs` |
| | | - Modify: `Aging.Infrastructure/InfrastructureBootstrapper.cs`ï¼æ³¨åå¤ï¼ |
| | | - Test: `tests/Aging.MvpTests/LayeredResourceManagerTests.cs` |
| | | |
| | | - [ ] **Step 1: å失败æµè¯** |
| | | |
| | | `tests/Aging.MvpTests/LayeredResourceManagerTests.cs`ï¼ |
| | | |
| | | ```csharp |
| | | using System.IO; |
| | | using System.Threading; |
| | | using Aging.Infrastructure.Core; |
| | | using Aging.Infrastructure.Contracts; |
| | | using Xunit; |
| | | |
| | | namespace Aging.MvpTests |
| | | { |
| | | public class LayeredResourceManagerTests : System.IDisposable |
| | | { |
| | | private readonly string _dbPath; |
| | | private readonly LayeredResourceManager _rm; |
| | | |
| | | public LayeredResourceManagerTests() |
| | | { |
| | | _dbPath = Path.Combine(Path.GetTempPath(), "arb_" + System.Guid.NewGuid().ToString("N") + ".db"); |
| | | _rm = new LayeredResourceManager(new DbLeaseStore(_dbPath, "local-main")); |
| | | } |
| | | public void Dispose() { try { File.Delete(_dbPath); } catch { } } |
| | | |
| | | [Fact] |
| | | public void ReserveAsync_Then_ValidateOwner_True() |
| | | { |
| | | var owner = new ResourceOwnerToken(OwnerType.Maintenance, "W01"); |
| | | var key = new ResourceKey("CAN-002", "CAN"); |
| | | var res = _rm.ReserveAsync(owner, key, CancellationToken.None).GetAwaiter().GetResult(); |
| | | Assert.Equal(ReservationState.Active, res.State); |
| | | Assert.True(_rm.ValidateOwner(owner, key)); |
| | | } |
| | | |
| | | [Fact] |
| | | public void ReserveAsync_Conflict_ExceptionCarriesHolder() |
| | | { |
| | | var a = new ResourceOwnerToken(OwnerType.Maintenance, "holder-A"); |
| | | var b = new ResourceOwnerToken(OwnerType.Production, "requester-B"); |
| | | var key = new ResourceKey("CAN-002", "CAN"); |
| | | _rm.ReserveAsync(a, key, CancellationToken.None).GetAwaiter().GetResult(); |
| | | var ex = Assert.Throws<ResourceConflictException>(() => |
| | | _rm.ReserveAsync(b, key, CancellationToken.None).GetAwaiter().GetResult()); |
| | | Assert.Contains("holder-A", ex.Message); // UI ç´æ¥å¼¹å ç¨è
|
| | | } |
| | | |
| | | [Fact] |
| | | public void ReleaseReservationAsync_Then_OtherCanReserve() |
| | | { |
| | | var a = new ResourceOwnerToken(OwnerType.Maintenance, "A"); |
| | | var b = new ResourceOwnerToken(OwnerType.Production, "B"); |
| | | var key = new ResourceKey("CAN-002", "CAN"); |
| | | _rm.ReserveAsync(a, key, CancellationToken.None).GetAwaiter().GetResult(); |
| | | _rm.ReleaseReservationAsync(a, key, CancellationToken.None).GetAwaiter().GetResult(); |
| | | var ok = _rm.ReserveAsync(b, key, CancellationToken.None).GetAwaiter().GetResult(); |
| | | Assert.Equal(ReservationState.Active, ok.State); |
| | | } |
| | | } |
| | | } |
| | | ``` |
| | | |
| | | - [ ] **Step 2: è¿è¡ç¡®è®¤å¤±è´¥** â `dotnet test ... --filter LayeredResourceManagerTests`ï¼é¢æç¼è¯å¤±è´¥ï¼ç±»åä¸åå¨ï¼ã |
| | | |
| | | - [ ] **Step 3: å®ç° LayeredResourceManager** |
| | | |
| | | `Aging.Infrastructure/Core/LayeredResourceManager.cs`ï¼å
åç»é + DbLeaseStore ç»åï¼å¯¹ä¸å± `IResourceManager` ç¾åé¶æ¹å¨ï¼ï¼ |
| | | |
| | | ```csharp |
| | | using System; |
| | | using System.Collections.Concurrent; |
| | | using System.Threading; |
| | | using System.Threading.Tasks; |
| | | using Aging.Infrastructure.Contracts; |
| | | using Aging.ResourceContracts; |
| | | using log4net; |
| | | |
| | | namespace Aging.Infrastructure.Core |
| | | { |
| | | /// <summary>V3.0 §9 è¿æ¸¡ Adapter 路线ï¼Reserve/Validate/Release 转å arb.db ç§çº¦è¡¨ï¼ |
| | | /// grant åå TokenIdâLeaseGrant[]ï¼ä¾é¨é¢/è°è¯ä¼è¯åç¨ã</summary> |
| | | public sealed class LayeredResourceManager : IResourceManager |
| | | { |
| | | private static readonly ILog Log = LogManager.GetLogger(typeof(LayeredResourceManager)); |
| | | private readonly ILeaseCoordinator _lease; |
| | | private readonly ConcurrentDictionary<string, SemaphoreSlim> _localLocks = new(); |
| | | private readonly ConcurrentDictionary<string, LeaseGrant[]> _grantsByToken = new(); |
| | | |
| | | public LayeredResourceManager(ILeaseCoordinator lease) => _lease = lease; |
| | | public ILeaseCoordinator Lease => _lease; |
| | | public bool TryGetGrants(string tokenId, out LeaseGrant[] grants) => _grantsByToken.TryGetValue(tokenId, out grants!); |
| | | |
| | | public async Task<ResourceReservation> ReserveAsync( |
| | | ResourceOwnerToken owner, ResourceKey resource, CancellationToken ct) |
| | | { |
| | | var sem = _localLocks.GetOrAdd(resource.ToString(), _ => new SemaphoreSlim(1, 1)); |
| | | await sem.WaitAsync(ct).ConfigureAwait(false); |
| | | try |
| | | { |
| | | var req = new AcquireRequest |
| | | { |
| | | OwnerId = owner.OwnerId, |
| | | OwnerType = owner.OwnerType == OwnerType.Maintenance |
| | | ? OwnerTypeV3.Maintenance : OwnerTypeV3.Production, |
| | | Reason = "ReserveAsync", |
| | | ResourceKeys = new[] { resource.ToString() }, |
| | | WaitTimeoutMs = 0 // MVPï¼å ç¨å³æï¼ä¸æéï¼V3 ç©éµåæ³åæ¯ï¼ |
| | | }; |
| | | var outcome = _lease.Acquire(req); |
| | | switch (outcome.Code) |
| | | { |
| | | case AcquireResultCode.Acquired: |
| | | _grantsByToken[owner.TokenId] = outcome.Grants; |
| | | owner.Generation = outcome.Grants[0].Generation; |
| | | return new ResourceReservation(resource, owner) { State = ReservationState.Active }; |
| | | case AcquireResultCode.ConflictHeld: |
| | | var h = outcome.Holder!; |
| | | long leftSec = Math.Max(0, (h.ExpiresUtcMs - DateTimeOffset.UtcNow.ToUnixTimeMilliseconds()) / 1000); |
| | | throw new ResourceConflictException( |
| | | $"èµæº {resource} æ£è¢«å ç¨ï¼{h.OwnerId}ï¼{(h.OwnerType == OwnerTypeV3.Maintenance ? "ç»´æ¤" : "ç产")}ï¼æºå¨ {h.MachineName} PID {h.HostProcessId}ï¼å©ä½ç§çº¦ {leftSec}sï¼"); |
| | | case AcquireResultCode.RecoveryBlocked: |
| | | throw new ResourceConflictException( |
| | | $"èµæº {resource} 䏿¬¡ææè
å´©æºï¼å¾
æ¢å¤åæ¶ï¼éè¯»åæ¢æµè¯æ®åå¨çæ§é¡µæ¹åï¼"); |
| | | default: |
| | | throw new TimeoutException($"èµæº {resource} ç³è¯·è¶
æ¶"); |
| | | } |
| | | } |
| | | finally { sem.Release(); } |
| | | } |
| | | |
| | | public Task<IOperationLease> AcquireOperationAsync( |
| | | ResourceOwnerToken owner, ResourceKey resource, CancellationToken ct) |
| | | { |
| | | // MVPï¼å½ä»¤çº§ä¸²è¡ç± SessionGateï¼Broker éåï¼/Local å
SemaphoreSlim æä¾ï¼ |
| | | // æ¬å±åªæ ¡éªæ
æ ãNoopLease éæ Contracts/IOperationLease.cs å®é
æåè¡¥é½ç©ºå®ç°ã |
| | | if (!ValidateOwner(owner, resource)) |
| | | throw new InvalidOperationException($"èµæº {resource} æ
æ æ ¡éªå¤±è´¥ï¼owner 已失æï¼"); |
| | | return Task.FromResult<IOperationLease>(new NoopLease()); |
| | | } |
| | | |
| | | public async Task ReleaseReservationAsync( |
| | | ResourceOwnerToken owner, ResourceKey resource, CancellationToken ct) |
| | | { |
| | | var sem = _localLocks.GetOrAdd(resource.ToString(), _ => new SemaphoreSlim(1, 1)); |
| | | await sem.WaitAsync(ct).ConfigureAwait(false); |
| | | try |
| | | { |
| | | if (_grantsByToken.TryGetValue(owner.TokenId, out var grants)) |
| | | { |
| | | foreach (var g in grants) _lease.Release(g, "ReleaseReservationAsync"); |
| | | _grantsByToken.TryRemove(owner.TokenId, out _); |
| | | } |
| | | } |
| | | finally { sem.Release(); } |
| | | } |
| | | |
| | | public bool IsReserved(ResourceKey resource, out ResourceReservation? reservation) |
| | | { |
| | | var holder = _lease.ProbeConflict(resource.ToString()); |
| | | reservation = holder == null ? null : new ResourceReservation(resource, |
| | | new ResourceOwnerToken(holder.OwnerType == OwnerTypeV3.Maintenance |
| | | ? OwnerType.Maintenance : OwnerType.Production, holder.OwnerId)) |
| | | { State = ReservationState.Active }; |
| | | return holder != null; |
| | | } |
| | | |
| | | public bool ValidateOwner(ResourceOwnerToken owner, ResourceKey resource) |
| | | { |
| | | if (!_grantsByToken.TryGetValue(owner.TokenId, out var grants)) return false; |
| | | string key = resource.ToString(); |
| | | foreach (var g in grants) |
| | | { |
| | | if (!string.Equals(g.ResourceKey, key, StringComparison.OrdinalIgnoreCase)) continue; |
| | | // æ
æ ï¼ç¨ extendSeconds=1 çç»æä½å卿§æ£æ¥ï¼epoch/generation/phase å¿
é¡»å
¨å½ä¸ï¼ |
| | | try { return _lease.Renew(g, 1); } catch { return false; } |
| | | } |
| | | return false; |
| | | } |
| | | |
| | | private sealed class NoopLease : IOperationLease |
| | | { |
| | | public void Dispose() { } |
| | | } |
| | | } |
| | | } |
| | | ``` |
| | | |
| | | > 注ï¼è¥ `IOperationLease` å« `ReleaseAsync` çé¢å¤æåï¼NoopLease æå
¶å®é
ç¾åè¡¥é½ï¼å
ç `Contracts/IOperationLease.cs`ã |
| | | |
| | | - [ ] **Step 4: Bootstrapper æ¥çº¿** |
| | | |
| | | `InfrastructureBootstrapper.Initialize` ä¸ï¼å° `var resourceManager = new ResourceManager();` æ¿æ¢ä¸ºï¼ |
| | | |
| | | ```csharp |
| | | // V3.0 MVPï¼ä»²è£åº arb.dbï¼ä¸ data.db åç®å½ï¼ |
| | | string arbPath = Path.Combine(Path.GetDirectoryName(deviceConfigDbPath)!, "arb.db"); |
| | | var leaseStore = new DbLeaseStore(arbPath, "local-main"); |
| | | var resourceManager = new LayeredResourceManager(leaseStore); |
| | | UtilContainer.RegisterUtil("LeaseCoordinator", leaseStore); |
| | | ``` |
| | | |
| | | å
¶ä½æ³¨åä¸åï¼DeviceService/AutoDeviceFacade ææç resourceManager å·²æ¯è·¨è¿ç¨çï¼ãæ§ `ResourceManager` ç±»ä¿çä¸å ï¼ä½ä¸ºæ DB é级å¤éï¼ã |
| | | |
| | | - [ ] **Step 5: ç¼è¯ + æµè¯å
¨ç»¿** |
| | | |
| | | ```powershell |
| | | & "C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\MSBuild.exe" Aging.Infrastructure\Aging.Infrastructure.csproj /p:Configuration=Debug /p:Platform=AnyCPU /t:Build /v:minimal |
| | | dotnet test tests\Aging.MvpTests\Aging.MvpTests.csproj |
| | | ``` |
| | | 颿ï¼MSBuild æ errorï¼å
¨é¨æµè¯ Passã |
| | | |
| | | - [ ] **Step 6: Commit** |
| | | |
| | | ```powershell |
| | | git add Aging.Infrastructure |
| | | git commit -m "feat(lease): LayeredResourceManager ç»å仲è£ï¼ä¸å±é¶æ¹å¨è·¨è¿ç¨çæ" |
| | | ``` |
| | | |
| | | --- |
| | | |
| | | ## Task 4: AutoDeviceFacade å级 ââ å¿è·³ç»æ + LeaseLost + ReleaseAsync |
| | | |
| | | **Files:** |
| | | - Modify: `Aging.Infrastructure/Contracts/IAutoDeviceFacade.cs` |
| | | - Modify: `Aging.Infrastructure/Services/AutoDeviceFacade.cs` |
| | | - Test: `tests/Aging.MvpTests/FacadeLeaseLifecycleTests.cs` |
| | | |
| | | - [ ] **Step 1: åæµè¯ï¼éªè¯é¨é¢ä¾èµçç§çº¦è¯ä¹ï¼** |
| | | |
| | | ```csharp |
| | | using System; |
| | | using System.IO; |
| | | using System.Threading; |
| | | using Aging.Infrastructure.Core; |
| | | using Aging.ResourceContracts; |
| | | using Xunit; |
| | | |
| | | namespace Aging.MvpTests |
| | | { |
| | | public class FacadeLeaseLifecycleTests : IDisposable |
| | | { |
| | | private readonly string _dbPath; |
| | | private readonly DbLeaseStore _store; |
| | | public FacadeLeaseLifecycleTests() |
| | | { |
| | | _dbPath = Path.Combine(Path.GetTempPath(), "arb_" + Guid.NewGuid().ToString("N") + ".db"); |
| | | _store = new DbLeaseStore(_dbPath, "local-main"); |
| | | } |
| | | public void Dispose() { try { File.Delete(_dbPath); } catch { } } |
| | | |
| | | private LeaseGrant Grab(string key, int ttl) |
| | | => _store.Acquire(new AcquireRequest |
| | | { |
| | | OwnerId = "f", OwnerType = OwnerTypeV3.Production, |
| | | ResourceKeys = new[] { key }, TtlSeconds = ttl |
| | | }).Grants[0]; |
| | | |
| | | [Fact] |
| | | public void Heartbeat_Renew_Extends_Expiry() |
| | | { |
| | | var g = Grab("can/x", 2); |
| | | long before = g.ExpiresUtcMs; |
| | | Thread.Sleep(1200); |
| | | Assert.True(_store.Renew(g, 2)); |
| | | Assert.True(_store.ProbeConflict("can/x").ExpiresUtcMs > before); |
| | | } |
| | | |
| | | [Fact] |
| | | public void Expired_Sweep_StaleRenew_False_And_RecoveryBlocked() |
| | | { |
| | | var g = Grab("can/y", 1); |
| | | Thread.Sleep(1500); |
| | | Assert.Equal(1, _store.SweepExpired()); // è¿æâRecoveryRequired |
| | | Assert.False(_store.Renew(g, 5)); // çæä¿¡å·ï¼ç»æå¿
è´¥ |
| | | Assert.Null(_store.ProbeConflict("can/y")); // ä¸åæ¾ç¤º Active |
| | | Assert.Equal(LeasePhase.RecoveryRequired, _store.PhaseOf("can/y")); |
| | | } |
| | | } |
| | | } |
| | | ``` |
| | | |
| | | - [ ] **Step 2: è¿è¡æµè¯** â `dotnet test ... --filter FacadeLeaseLifecycleTests`ã两æµè¯ç´æ¥éªè¯ Task 2 è¯ä¹ï¼åº Passï¼è¥ Fail å
ä¿® Task 2 åç»§ç»ã |
| | | |
| | | - [ ] **Step 3: æ©å± IAutoDeviceLease æ¥å£ï¼å å æåï¼æ¢æä¸å¨ï¼** |
| | | |
| | | ```csharp |
| | | /// <summary>V3.0ï¼ç§çº¦å¤±æï¼ç»æè¿ç»å¤±è´¥/è¢«åæ¶ï¼æ¶è§¦åï¼è®¢é
è
åºåæ¢ä¸åã</summary> |
| | | event EventHandler LeaseLost; |
| | | /// <summary>V3.0ï¼æ¾å¼å¼æ¥éæ¾ãDispose() ä»åæ¥å¯ç¨ã</summary> |
| | | System.Threading.Tasks.Task ReleaseAsync(System.Threading.CancellationToken ct = default); |
| | | /// <summary>V3.0ï¼ç»´æ¤è®©æ¸¡è¯·æ±ï¼Draining é¢çï¼MVP æ falseï¼ã</summary> |
| | | bool HandoverRequested { get; } |
| | | ``` |
| | | |
| | | - [ ] **Step 4: AutoDeviceLease å®ç°å¿è·³** |
| | | |
| | | `AutoDeviceFacade.cs` å
³é®ç¹ï¼ |
| | | 1. æé æ°å¢å¯éåæ° `ILeaseCoordinator leaseCoordinator = null`ï¼Bootstrapper ä¼ å
¥ï¼null ä¿ææ§è¡ä¸ºï¼ï¼ |
| | | 2. `AcquireAsync` ä¿çæ¢æ Reserveï¼è¥ææ LayeredResourceManager å `TryGetGrants(owner.TokenId, out grants)` å `lease.StartHeartbeat(coordinator, grants)`ï¼ |
| | | 3. Lease å
æ°å¢ï¼ |
| | | |
| | | ```csharp |
| | | private LeaseGrant[] _grants = new LeaseGrant[0]; |
| | | private Timer _beacon; |
| | | private int _renewFailures; |
| | | private ILeaseCoordinator _coordinator; |
| | | public event EventHandler LeaseLost; |
| | | public bool HandoverRequested => false; |
| | | |
| | | internal void StartHeartbeat(ILeaseCoordinator coordinator, LeaseGrant[] grants) |
| | | { |
| | | _coordinator = coordinator; _grants = grants; |
| | | _beacon = new Timer(_ => |
| | | { |
| | | if (_disposed) return; |
| | | try |
| | | { |
| | | bool allOk = true; |
| | | foreach (var g in _grants) |
| | | if (!_coordinator.Renew(g, 30)) { allOk = false; break; } |
| | | _renewFailures = allOk ? 0 : _renewFailures + 1; |
| | | if (_renewFailures >= 2) LeaseLost?.Invoke(this, EventArgs.Empty); // è¿2失败âçæ |
| | | } |
| | | catch { if (++_renewFailures >= 2) LeaseLost?.Invoke(this, EventArgs.Empty); } |
| | | }, null, 8000, 8000); |
| | | } |
| | | |
| | | public Task ReleaseAsync(CancellationToken ct = default) |
| | | { |
| | | _beacon?.Dispose(); _beacon = null; // å
åå¿è·³ï¼åèµ°æ¢æéæ¾é¾ |
| | | Dispose(); |
| | | return Task.CompletedTask; |
| | | } |
| | | ``` |
| | | |
| | | `Dispose()` å¼å¤´å `_beacon?.Dispose()`ï¼`ExecuteAsync/QueryAsync` å¼å¤´å `if (_renewFailures >= 2) throw new InvalidOperationException("LEASE_STALE: ç§çº¦å·²å¤±æ");`ã |
| | | |
| | | - [ ] **Step 5: å
¨éæµè¯ + ç¼è¯ + Commit** |
| | | |
| | | ```powershell |
| | | dotnet test tests\Aging.MvpTests\Aging.MvpTests.csproj |
| | | & "...MSBuild.exe" Aging.Infrastructure\Aging.Infrastructure.csproj /p:Configuration=Debug /p:Platform=AnyCPU /t:Build /v:minimal |
| | | git add Aging.Infrastructure tests |
| | | git commit -m "feat(facade): å¿è·³ç»æ+LeaseLostçæ+ReleaseAsync" |
| | | ``` |
| | | |
| | | --- |
| | | |
| | | ## Task 5: 注å页"æ§è¡ä½ç½®"UI + åå¸é¨ç¦ï¼æå°çï¼è¡¥é½èå´è¡¨å·²æ¿è¯ºé¡¹ï¼ |
| | | |
| | | > èæ¯ï¼èå´è¡¨ä¸â注å页 executionMode/authorityId/sessionKey/accessPolicy + åå¸é¨ç¦ + ä¸å¯åå¿«ç
§åå¸âæ¤åæ 对åºå®æ½ä»»å¡ï¼æ¬è为补é½ã |
| | | |
| | | **Files:** |
| | | - Modify: `Plugin.DeviceConfig/Entity/DeviceDefinition.cs`ï¼æ°å¢ ExecutionModeKind æä¸¾ + 5 åæ®µ + åªè¯»æ´¾ç AccessPolicyï¼ |
| | | - Create: `Plugin.DeviceConfig/V3AuthorityCatalog.cs`ï¼ä»²è£å/Broker åéç±å®¿ä¸» appSettings æä¸¾ï¼æªé
ç½®åéé»è®¤ local-main;broker-b01ï¼ |
| | | - Modify: `Plugin.DeviceConfig/Plugin.DeviceConfig.csproj`ï¼å¼ç¨ System.Configurationï¼ |
| | | - Modify: `Plugin.DeviceConfig/DeviceEditModal.xaml(.cs)`ï¼âæ§è¡ä½ç½®âåºåï¼Local/Broker åéãAuthorityId å¿
填䏿ãBroker æ¶ BrokerId/OwnerProcessId/PhysicalSessionKey åæ»åéãAccessPolicy åªè¯»ï¼ |
| | | - Modify: `Plugin.DeviceConfig/Model/DeviceConfigModel.cs`ï¼å»ºè¡¨æ°å + PRAGMA è¿ç§»ãSaveDevice/Map 嫿°åãComputeConfigHash 纳å
¥æ§è¡ä½ç½®ãæ°å¢ ValidatePublishGateï¼ |
| | | - Modify: `Plugin.DeviceConfig/DeviceConfig.xaml(.cs)`ï¼è¯¦æ
æ å±ç¤ºæ§è¡ä½ç½®/仲è£åï¼PublishVersion å
è·é¨ç¦ï¼æªéè¿æ¦æªï¼ |
| | | - Create: `Plugin.IntegrationTest/App.config`ï¼V3.AuthorityIds / V3.BrokerIds åéæä¸¾ï¼ |
| | | |
| | | - [ ] **Step 1: åæ®µå®ä¹æ V3.0 §05âæ§è¡ä½ç½®âè¡ï¼** |
| | | |
| | | | æ§ä»¶ | åæ®µ | è§å | |
| | | |---|---|---| |
| | | | RadioButton Ã2 | ExecutionMode=Local/Broker | é»è®¤ Localï¼äºæ¥èå¨ä»²è£å | |
| | | | ComboBox | AuthorityId | å¿
å¡«ï¼åéæ¥èª V3AuthorityCatalog.AuthorityIdsï¼é
ç½®æä¸¾ï¼ | |
| | | | ComboBox | BrokerId | ä»
Brokerï¼åé BrokerIdsï¼é¨ç¦è¦æ± BrokerId==AuthorityIdï¼è®¾å¤åä¸è´ï¼ | |
| | | | åªè¯» TextBox | OwnerProcessId | MVP å ä½å½åè¿ç¨ PIDï¼ä¸å
¥é
ç½®åå¸ï¼è¿è¡æä¿¡æ¯ï¼ | |
| | | | å¯ç¼è¾ ComboBox | PhysicalSessionKey | ä»
Brokerï¼åé为端ç¹è§èåçåæ»å符串ï¼can/{bus}/mainãtcp/{ip:port}/mainãserial/{COM}/mainã{deviceId}/main çï¼ | |
| | | | åªè¯» TextBox | AccessPolicy | æ´¾çï¼Localâç¬å ç´è¿ï¼Brokerâå
±äº«ä»²è£ SessionGate 代çï¼ä¸è½åº | |
| | | |
| | | - [ ] **Step 2: åå¸é¨ç¦ ValidatePublishGateï¼V3.0 §05 æ ¡éªåï¼ï¼** AuthorityId å¿
å¡«ä¸å¨åéæä¸¾å
ï¼Local 设å¤åå¿
é¡» local- åç¼ï¼Broker è®¾å¤ BrokerId å¿
å¡«ã卿䏾å
ä¸ä¸ AuthorityId ä¸è´ãPhysicalSessionKey å¿
å¡«ï¼åä¸ PhysicalSessionKey åªå
许ä¸ä¸ªå®¿ä¸»åï¼âåä¸ä¼è¯åªè½æä¸ä¸ªå®¿ä¸»âï¼ãä»»ä¸å¤±è´¥é»æ¢åå¸å¹¶ååºé误ã |
| | | |
| | | - [ ] **Step 3: å
¼å®¹æ§ï¼** æ§åºç» PRAGMA+ALTER è¡¥åï¼åéè®¾å¤ ExecutionMode é»è®¤ LocalãAuthorityId 空ââæ³¨å页æå¼æ¶é¢éæ¬æº Local åï¼å叿¶è¦æ±éæ°ä¿åï¼é¨ç¦æç¤ºåéæ°æ®ï¼ï¼éææµè¯é¢ç½®è®¾å¤ï¼ä¸ç»åå¸é¾è·¯ï¼ä¸åå½±åï¼é
ç½®å叿°å¢æ§è¡ä½ç½®æ®µï¼æ§è稿åå¸ä¸æ°è®¡ç®ä¸ä¸è´å±é¢æï¼é
置确å®åæ´ï¼ã |
| | | |
| | | - [ ] **Step 4: æå·¥éªè¯ + ç¼è¯** |
| | | |
| | | éªè¯è·¯å¾ï¼æ°å¢è®¾å¤é Broker â 确认 BrokerId/ä¼è¯é®åéèªå¨çæä¸è®¿é®çç¥åªè¯»ï¼ä¿ååç¼è¾åæ¾ï¼å¸¦ç©º AuthorityId åé设å¤ç¹âåå¸â â é¨ç¦æ¦æªå¹¶æç¤ºï¼éæ°ä¿ååå叿åä¸ Hash ååãç¼è¯ï¼ç¨ VS MSBuildï¼ä¸å Platformï¼ï¼ |
| | | |
| | | ```powershell |
| | | & "...MSBuild.exe" Plugin.IntegrationTest\Plugin.IntegrationTest.csproj /t:Build /p:Configuration=Debug /v:minimal |
| | | ``` |
| | | |
| | | - [ ] **Step 5: Commit** |
| | | |
| | | ```powershell |
| | | git add Plugin.DeviceConfig Plugin.IntegrationTest\App.config docs |
| | | git commit -m "feat(deviceconfig): 注å页æ§è¡ä½ç½®åºå+åå¸é¨ç¦ï¼V3.0 §05 æå°çï¼" |
| | | ``` |
| | | |
| | | æ¨è¿é¡¹ï¼P2+ï¼ï¼å¤ Authority è·¨æºåéèªå¨åç°ãåå¸é¢è§å·®å¼å±ç¤ºãSlotDeviceMapping âå
±äº«æ å°æ¾å¼æ 注âã |
| | | |
| | | --- |
| | | |
| | | ## Task 6: Broker IPC 帧åè®® + 代ç驱å¨ï¼å®¢æ·ç«¯ä¾§ï¼ |
| | | |
| | | **Files:** |
| | | - Create: `Aging.ResourceContracts/BrokerIpc.cs`ï¼4 åè大端é¿åº¦åç¼ + UTF8 JSON å°å¥ç¼è§£ç ï¼SubmitBody/ResultBody çº¿æ ¼å¼ DTOï¼è§é¿ LeaseGrant åªè¯»æé å¨ååºååéå¶ï¼ |
| | | - Create: `Aging.Infrastructure/Broker/BrokerClientChannel.cs`ï¼å½å管é客æ·ç«¯ï¼Hello æ¡æéªåè®®ä¸»çæ¬ï¼RequestId/CorrelationId ååºå
³èï¼deadline/è¶
æ¶ï¼è¯»å¾ªç¯æçº¿æç¥ + æ°æ§éè¿ï¼ä¿®å¤æ§ PipeClient âWriteMessage åç«å³ returnâä¸å¯è¾¾ååºé®é¢ï¼ |
| | | - Create: `Aging.Infrastructure/Broker/BrokerPipeName.cs`ï¼æå¡å `aging.{brokerId}.v{åè®®ä¸»çæ¬}`ï¼V3.0 §13ï¼ |
| | | - Create: `Aging.Infrastructure/Broker/DeviceConfigHash.cs`ï¼ä» data.db 计ç®ä¸ DeviceConfigModel.ComputeConfigHash åè§åçå¿«ç
§åå¸ï¼è¡¨ç¼ºå¤±æ¶è·³è¿ç©ºæ®µï¼ä¸¤ä¾§å彿°ä¿è¯å¯å¯¹è´¦ï¼ |
| | | - Create: `Aging.Infrastructure/Drivers/BrokeredCanDriver.cs`ï¼å®ç° IDeviceDriverï¼å½ä»¤è¯ä¹ä¸ CanDriverAdapter 对é½ï¼Broker è¿åæâæ¬å°å¼å¸¸ï¼RejectedStaleLeaseâLEASE_STALEãRejectedConfigMismatchâCONFIG_MISMATCHãUnknownâTimeoutException ç¦æ¢å宿ªæ§è¡ï¼ |
| | | - Modify: `Aging.Infrastructure/InfrastructureBootstrapper.cs`ï¼æ°å¢ RegisterBrokeredDriversï¼æ« data.db ä¸ ExecutionMode=Broker 设å¤â注å代çé©±å¨ + æºå¯å¨æ¶ configHashï¼å¤±è´¥é级ä¸é»å¡ Local é¾è·¯ï¼ |
| | | |
| | | - [x] **Step 1: åè®®/éé/驱å¨å®ç°**ï¼å¸§=4åè大端é¿åº¦+JSONï¼OneShot åæ¥æ¨¡åï¼CONNECT/DISCONNECT/SEND/QUERY/STATUS ç½ååï¼ |
| | | - [x] **Step 2: æ¥çº¿**ï¼ä¸å± IDeviceService/IAutoDeviceFacade/è°è¯é¡µé¶æ¹å¨ï¼ä»£çç¹éå¨é©±å¨å±ï¼ |
| | | - [x] **Step 3: ç¼è¯éè¿ + åç» Task 7 e2e éªè¯** |
| | | |
| | | --- |
| | | |
| | | ## Task 7: DeviceBroker.exe 宿主 + å
¨é¾è·¯ e2e + 主ç¨åºèªå¨æèµ· |
| | | |
| | | **Files:** |
| | | - Create: `DeviceBroker/DeviceBroker.csproj`ï¼net472 Exeï¼x64ï¼å·²å å
¥ `WPFProject\TapProject.sln`ï¼ |
| | | - Create: `DeviceBroker/BrokerServer.cs`ï¼ç®¡éå¤å®ä¾æ¥å循ç¯ï¼æ¯è¯·æ±ä¸éå
³å¡ï¼â OpCode ç½åå+åå
设å¤è¿æ»¤ â¡INV-04 configHash 对账ï¼2s æ°æ§éç®ï¼â¢INV-01/03 æ
æ åæ ¡éªï¼PhaseOf/ProbeConflictï¼æ æ´»è·ç§çº¦æç»ç´æ¥ I/Oï¼ä»
DISCONNECT è±å
ï¼ï¼SessionGate æ PhysicalSessionKey 串è¡ååçæ®µï¼éåè¶
æ¶âRESOURCE_BUSYï¼ç¡®å®æªæ§è¡å¯å®éè¯ï¼ï¼ç段ä¸å¼å¸¸âSEND/QUERY ä¿å®å¤ Unknownï¼ |
| | | - Create: `DeviceBroker/Program.cs`ï¼--db/--arb/--broker åæ°ï¼é»è®¤æåéææµè¯ç¯å¢ç®å½ï¼Ctrl+C ä¼é
éåºï¼ç§çº¦é TTL è¿æ+äººå·¥åæ¶ï¼ |
| | | - Create: `tests/Aging.MvpTests/BrokerE2ETests.cs`ï¼6 ç¨ä¾ï¼æç§çº¦æ£åé¾è·¯ / æ ç§çº¦æç» / åå¸ä¸å¹é
æç» / å½è¿åæç» / åä¼è¯ä¸²è¡ / ç»´æ¤åææ¾è¡ï¼æ¯ç¨ä¾å¯ä¸ brokerId â ç¬ç«ç®¡éåé离并è¡ï¼ |
| | | - Modify: `Plugin.IntegrationTest/MainWindow.xaml.cs`ï¼InitializeAutoServices æ£æµ Broker 设å¤âèªå¨æèµ· DeviceBroker.exeï¼Window_Closing åæºæ¸
çï¼ |
| | | - Modify: `tests/Aging.MvpTests/Aging.MvpTests.csproj`ï¼å¼ç¨ DeviceBrokerï¼ |
| | | |
| | | - [x] **Step 1: 宿主å®ç° + å·¥ç¨å
¥ sln** |
| | | - [x] **Step 2: e2e æµè¯ï¼TDDï¼** â é¦è½®çº¢ï¼DeviceConfigHash 对缺表崩æºï¼no such table: DeviceChannelï¼ï¼ä¿®å¤ï¼ç¼ºè¡¨è·³è¿ç©ºæ®µï¼åå¸å¯¹âä¸åå¨âä¸âé¶è¡âä¸è´ï¼ï¼äºè½®å
¨ç»¿ |
| | | - [x] **Step 3: è°è¯é¡µç»´æ¤åæé¾è·¯ç¡®è®¤** â DeviceDebug.InitFinish å·²ä» UtilContainer å LayeredResourceManagerï¼RequestMaintenance çç»´æ¤ç§çº¦ç» arb.db è·¨è¿ç¨äºæ¥ï¼å ç¨å³æç»ï¼ï¼Broker 设å¤ç»´æ¤å = ç»´æ¤ç§çº¦å
¥ arb.db â broker æ
æ æ£åº Active æ¾è¡ï¼æ 鿰代ç ï¼e2e 以 MaintenanceLease_BrokeredWrite_Succeeds è¦ç |
| | | - [x] **Step 4: å
¨ééªè¯** â MvpTests 22/22ï¼ä¸»ç¨åº/宿主 MSBuild exit 0 |
| | | |
| | | å·²ç¥ç®åï¼P2+ï¼ï¼ownerâclientInstanceId 精确对é½ï¼å½ååæº arb.db åªåå卿§/ç¸ä½æ£æ¥ï¼ã卿任å¡/订é
/Outboxãè·¨æºé¨ç½²ã |
| | | |
| | | --- |
| New file |
| | |
| | | <!DOCTYPE html> |
| | | <html lang="zh-CN"> |
| | | <head> |
| | | <meta charset="UTF-8"> |
| | | <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| | | <title>ä»ªå¨æ³¨åä¸ç¡¬ä»¶è°è¯ · 软件é»è¾ä¸æ¶åºæ¢³çï¼V3.0 æ··åæ¶æ · 2026-11-09ï¼</title> |
| | | <style> |
| | | :root{--bg:#f6f7f9;--card:#fff;--ink:#24292f;--sub:#57606a;--line:#d0d7de;--blue:#0b5cad;--green:#1a7f37;--red:#cf222e;--orange:#bc4c00;--purple:#8250df;--code:#f0f2f5} |
| | | *{box-sizing:border-box}body{margin:0;font-family:"Microsoft YaHei","Segoe UI",sans-serif;background:var(--bg);color:var(--ink);line-height:1.7} |
| | | .wrap{max-width:1080px;margin:0 auto;padding:24px 20px 80px} |
| | | header{background:linear-gradient(135deg,#0b3d6e,#0b5cad 60%,#127fc4);color:#fff;border-radius:12px;padding:26px 30px;margin-bottom:22px} |
| | | header h1{margin:0 0 8px;font-size:24px}header p{margin:2px 0;opacity:.88;font-size:13.5px} |
| | | .badge{display:inline-block;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.35);border-radius:20px;padding:1px 12px;font-size:12px;margin:6px 8px 0 0} |
| | | h2{font-size:19px;margin:34px 0 12px;padding-left:12px;border-left:5px solid var(--blue)} |
| | | h3{font-size:15.5px;margin:22px 0 8px;color:#0b3d6e} |
| | | .card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:16px 20px;margin:10px 0} |
| | | pre.seq{background:#0f1720;color:#cfe3f5;border-radius:8px;padding:14px 16px;overflow-x:auto;font-family:Consolas,monospace;font-size:12.5px;line-height:1.55} |
| | | pre.seq b{color:#7fd0ff}pre.seq i{color:#85e3a5;font-style:normal}pre.seq u{color:#ffc46b;text-decoration:none}pre.seq s{color:#ff9b9b;text-decoration:none} |
| | | table{border-collapse:collapse;width:100%;margin:10px 0;font-size:13px} |
| | | th{background:#eef3f8;text-align:left}th,td{border:1px solid var(--line);padding:6px 10px;vertical-align:top} |
| | | code{background:var(--code);border-radius:4px;padding:1px 6px;font-family:Consolas,monospace;font-size:12.5px} |
| | | .tag{display:inline-block;border-radius:4px;padding:0 8px;font-size:11.5px;font-weight:600;color:#fff;margin-right:6px;white-space:nowrap} |
| | | .t-local{background:var(--green)}.t-broker{background:var(--blue)}.t-warn{background:var(--orange)}.t-err{background:var(--red)}.t-core{background:var(--purple)} |
| | | .note{background:#fff8e6;border:1px solid #e8d48a;border-radius:8px;padding:10px 14px;font-size:13px;margin:10px 0} |
| | | .fixed{background:#e8f5ec;border:1px solid #9fd3ae;border-radius:8px;padding:10px 14px;font-size:13px;margin:10px 0} |
| | | ul,ol{margin:6px 0;padding-left:24px}li{margin:3px 0} |
| | | .small{font-size:12px;color:var(--sub)} |
| | | .grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:820px){.grid2{grid-template-columns:1fr}} |
| | | .toc a{display:inline-block;margin:2px 10px 2px 0;font-size:13px;color:var(--blue);text-decoration:none}.toc a:hover{text-decoration:underline} |
| | | </style> |
| | | </head> |
| | | <body><div class="wrap"> |
| | | |
| | | <header> |
| | | <h1>ä»ªå¨æ³¨åä¸ç¡¬ä»¶è°è¯ · 软件é»è¾ä¸æ¶åºæ¢³ç</h1> |
| | | <p>便®ãLocal + DeviceBroker æ··åæ¶æè¯¦ç»è®¾è®¡è¯´æä¹¦ V3.0ãä¸å½å代ç å®åµæ´çï¼å«è¿æç¼ºé·ä¿®å¤åçæç»é»è¾ï¼</p> |
| | | <p class="small">èå´ï¼Plugin.DeviceConfigï¼ä»ªå¨ä»ªè¡¨æ³¨åï¼ Â· Plugin.DeviceDebugï¼ç¡¬ä»¶è°è¯ï¼ · Aging.Infrastructure / Aging.ResourceContractsï¼åºç¡è®¾æ½ä¸å¥çº¦ï¼ · DeviceBroker.exeï¼å
±äº«ä»ªå¨å®¿ä¸»ï¼ · Plugin.IntegrationTestï¼éææµè¯ç¯å¢ï¼</p> |
| | | <span class="badge">ç¶æï¼ç°è¡å®ç°åºçº¿ 2026-11-09</span><span class="badge">net472 / WPF / SQLite / Named Pipes</span><span class="badge">两è¿ç¨ä»²è£åï¼local-main + broker-b01</span> |
| | | </header> |
| | | |
| | | <div class="card toc"> |
| | | <b>ç®å½</b>ï¼ |
| | | <a href="#s1">1 è¿ç¨ä¸æ°æ®ææ</a><a href="#s2">2 å¯å¨åå§åæ¶åº</a><a href="#s3">3 ä»ªå¨æ³¨åé»è¾</a><a href="#s4">4 驱å¨åæ´¾ä¸é
ç½®åå¸</a><a href="#s5">5 è°è¯é¡µéè®¾å¤æ¶åº</a><a href="#s6">6 ç»´æ¤æ¨¡å¼ç¶ææºä¸ç§çº¦</a><a href="#s7">7 æ¥ææ¶åå
¨é¾è·¯</a><a href="#s8">8 å¼å¸¸ä¸èªææºå¶</a><a href="#s9">9 å
³é®ä»£ç ç´¢å¼</a><a href="#s10">10 å·²ç¥éå¶</a> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s1">1ãè¿ç¨ä¸æ°æ®ææ</h2> |
| | | <div class="card"> |
| | | <pre class="seq"> |
| | | ââââââââââââââââââââââââââ æµè¯/æä½åå·¥ä½ç«ï¼åæºï¼ ââââââââââââââââââââââââââ |
| | | â â |
| | | â <b>Plugin.IntegrationTest.exe</b>ï¼ä¸»ç¨åºè¿ç¨ï¼ä¸å UI ä¸ä¸å¡è°ç¨æ¹çå®¿ä¸»ï¼ â |
| | | â ââ Plugin.DeviceConfig 仪å¨ä»ªè¡¨æ³¨å页ï¼ç¼è¾è稿/åå¸é¨ç¦/çæ¬ç®¡çï¼ â |
| | | â ââ Plugin.DeviceDebug 硬件è°è¯é¡µï¼ä¼è¯ç¶ææº/ç»´æ¤ç³è¯·/CANÂ·çµæºÂ·PLC颿¿ï¼â |
| | | â ââ Aging.Infrastructure DeviceManager / DeviceService / AutoDeviceFacade â |
| | | â â ââ Local è®¾å¤ â ç´é©±é©±å¨ï¼CanDriverAdapter çï¼ç©çä¼è¯å¨æ¬è¿ç¨ï¼ â |
| | | â â ââ Broker è®¾å¤ â <b>BrokeredCanDriver 代ç驱å¨</b>ï¼ä¸æç©çä¼è¯ï¼ â |
| | | â ââ LayeredResourceManager âââï¼è¿ç¨å
ç¼å grants + å§æ DbLeaseStoreï¼ â |
| | | â â â |
| | | â å½å管é RPC â ââââââââââââââââââââââââââââââââââââ⤠|
| | | â aging.<u>brokerId</u>.v1ï¼å¸§åè®®ï¼ â â <b>DeviceBroker.exe</b>ï¼å
±äº«ä»ªå¨å®¿ä¸»è¿ç¨ï¼â |
| | | â ââââââââââââââââââââââââ´ââââââââ⤠BrokerServerï¼ä¸éå
³å¡+SessionGate â |
| | | â â DbLeaseStore(broker-b01) 读仲è£åº â |
| | | â â CanDriverAdapter â ç©çä¼è¯å¯ä¸ææâ |
| | | â âââââââââââââââââââââââââââââââââââââ |
| | | â æ°æ®å±ï¼æ¬æº SQLiteï¼ç¦æ¢ç½ç»çï¼ï¼ â |
| | | â <i>data.db</i> é
ç½®åºï¼DeviceDefinition(嫿§è¡ä½ç½®5å)/DeviceChannel/Slotæ å°/çæ¬ â |
| | | â <i>arb.db</i> 仲è£åºï¼resource_state/lease_history/recovery_checkpoint/authority_meta â |
| | | â <u>debug.db</u> è°è¯ä¼è¯åºï¼debug_sessionï¼ç¶ææºæä¹
åï¼ï¼æä½æ¥å¿ â |
| | | ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ |
| | | </pre> |
| | | <p><span class="tag t-local">Local ç´è¿</span>éåå·²åé
ç»å¯ä¸æ§è¡è¿ç¨ãå¯ç¬ç«è¿æ¥ç设å¤ï¼ç©çä¼è¯å¨å®¢æ·ç«¯è¿ç¨å
ã<br> |
| | | <span class="tag t-broker">Broker 代ç</span>éåè·¨è¿ç¨å
±äº«è®¾å¤ï¼ç©çä¼è¯ç± DeviceBroker.exe <b>å¯ä¸ææ</b>ï¼å®¢æ·ç«¯åªå RPC å§æã</p> |
| | | <p class="small">注ï¼CAN æ»çº¿æ¨¡æå¨ï¼CanSimulatorï¼æ¯<b>è¿ç¨å
</b>èææ»çº¿ââ主ç¨åºä¸å®¿ä¸»åèªææä¸å¥ CAN_BUS_1 å®ä¾ï¼è·¨è¿ç¨ä¸å¯è§ï¼çå®ç¡¬ä»¶ï¼ç©çå¡/æ»çº¿ï¼å¤©ç¶å
±äº«ï¼æ æ¤éå¶ãæµè¯ç¯å¢ç¨å宿主ç CAN-004 ä½ä¸º CAN-003 ç对端ã</p> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s2">2ãå¯å¨åå§åæ¶åºï¼MainWindow.InitializePluginsï¼</h2> |
| | | <div class="card"> |
| | | <pre class="seq"> |
| | | 1. DeviceConfig.InitFinish â 建åº/è¿ç§» data.dbï¼PRAGMA æ£æ¥âALTER è¡¥æ§è¡ä½ç½®5åï¼ |
| | | 2. SeedPresetCanDevices() â é¢ç½® CAN-001/002/003ï¼<b>å¿
é¡»å
äºåºç¡è®¾æ½</b>ï¼Bootstrapper æ«åºå³å®é©±å¨æ³¨åï¼ |
| | | 3. InitializeAutoServices() |
| | | 3.1 InfrastructureBootstrapper.Initialize(data.db è·¯å¾) |
| | | a. DbLeaseStore(arb.db, "local-main") |
| | | b. <u>ReconcileAfterBoot</u> â å¯å¨å¯¹è´¦ï¼SweepExpired + ApproveRecovery 忶䏿¬¡è¿ç¨æ³æ¼ç§çº¦ |
| | | c. LayeredResourceManager 注åè¿ UtilContainerï¼"ResourceManager"/"LeaseCoordinator"ï¼ |
| | | d. DeviceManager / DeviceService / PowerSupplyService / AutoDeviceFacade / CanBusService |
| | | e. <b>RegisterBrokeredDrivers</b> â æ« data.dbï¼ExecutionMode='Broker' çè®¾å¤æ³¨å |
| | | BrokeredCanDriver(管é=aging.{BrokerId}.v1, æºå¯å¨æ¶ configHash) |
| | | 3.2 ä» UtilContainer æå IAutoDeviceFacade / ICanBusServiceï¼æ³¨å Local CAN ç´é©± |
| | | 3.3 <b>TryStartDeviceBroker()</b> â è¥åå¨ Broker 设å¤ï¼Process.Start DeviceBroker.exe |
| | | --db data.db --arb arb.db --broker broker-b01 |
| | | 4. DeviceDebug.InitFinish â ä» UtilContainer å DeviceManager/DeviceService/ResourceManager |
| | | <b>ï¼å¿
é¡»å¨ 3 ä¹åï¼åç½®ä¼åå° nullï¼ä»²è£/驱å¨å¤ç¨é¾è·¯å
¨é¨éé»é级ï¼</b> |
| | | 5. ForceRefreshForTest()Ã2 â 两æä»¶åè¡¨å·æ° |
| | | Window_Closingï¼Kill DeviceBroker åè¿ç¨ï¼å
¶ç©çä¼è¯éè¿ç¨æ¶äº¡ï¼ç§çº¦é TTL+å¯å¨å¯¹è´¦æ¶å£ï¼ |
| | | </pre> |
| | | <div class="fixed">â
<b>ä¿®å¤è®°å½</b>ï¼åæ¶åºä¸ DeviceDebug.InitFinish æ©äº Bootstrapper.Initializeï¼å¯¼è´è°è¯é¡µåå° null æå¡ââç»´æ¤ä»²è£è¢«ç»è¿ãBroker 设å¤è¿æ¥ç¶ææ"æªè¿æ¥"ã颿¿éå为æ¬å°ç´é©±ãç°å·²è°æ´ä¸º"建åºâé¢ç½®âåºç¡è®¾æ½âè°è¯æä»¶"ã</div> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s3">3ãä»ªå¨æ³¨åé»è¾ï¼Plugin.DeviceConfigï¼</h2> |
| | | <div class="grid2"> |
| | | <div class="card"> |
| | | <h3>3.1 ç¼è¾å¼¹çªï¼DeviceEditModalï¼å段ä¸èå¨</h3> |
| | | <table> |
| | | <tr><th>åºå</th><th>åæ®µ</th><th>è§å</th></tr> |
| | | <tr><td rowspan="5">设å¤ä¿¡æ¯</td><td>DeviceId</td><td>æ°å¢å¯ç¼è¾ãç¼è¾åªè¯»ï¼ä¿åæ¶æ¥é</td></tr> |
| | | <tr><td>Kind / DriverType</td><td>ç±»åèå¨é©±å¨å»ºè®®ï¼CanDeviceâCANï¼PowerSupplyâSCPIâ¦ï¼</td></tr> |
| | | <tr><td>Transport</td><td>Tcp/Serial/Visa/SDK/Can</td></tr> |
| | | <tr><td>Endpoint</td><td>æ Transport æ ¡éªæ ¼å¼å¹¶æ´æ°æç¤ºï¼CANï¼æ»çº¿:èç¹ï¼</td></tr> |
| | | <tr><td>ééå表</td><td>ChannelId å¯ä¸ï¼è½å/çµå/çµæµ/SessionKey</td></tr> |
| | | <tr><td rowspan="5">æ§è¡ä½ç½®<br>(V3.0 §05)</td><td>ExecutionMode</td><td>åé <span class="tag t-local">Local</span>ï¼é»è®¤ï¼/<span class="tag t-broker">Broker</span>ï¼ä¸ä»²è£å<b>ååèå¨</b></td></tr> |
| | | <tr><td>AuthorityId</td><td>å¿
填䏿ï¼åéæ¥èª <code>V3AuthorityCatalog</code>ï¼appSettings <code>V3.AuthorityIds</code>ï¼æªé
ç½®åé <code>local-main;broker-b01</code>ï¼</td></tr> |
| | | <tr><td>BrokerId</td><td>ä»
Broker æ¾ç¤ºï¼åé <code>V3.BrokerIds</code>ï¼é¨ç¦è¦æ± BrokerId==AuthorityId</td></tr> |
| | | <tr><td>OwnerProcessId</td><td>åªè¯»=å½åè¿ç¨ PIDï¼MVP å ä½ï¼ï¼<b>ä¸å
¥é
ç½®åå¸</b>ï¼è¿è¡æä¿¡æ¯ï¼</td></tr> |
| | | <tr><td>PhysicalSessionKey</td><td>ä»
Brokerï¼åé为端ç¹è§èåçåæ»å符串ï¼<code>can/{bus}/main</code>ã<code>tcp/{ip:port}/main</code>ã<code>serial/{COM}/main</code>ã<code>{deviceId}/main</code>ãå·²åéé SessionKey</td></tr> |
| | | <tr><td>访é®çç¥</td><td>AccessPolicy</td><td><b>åªè¯»æ´¾ç</b>ä¸è½åºï¼Localâ"ç¬å ç´è¿Â·æ¬è¿ç¨ææç©çä¼è¯"ï¼Brokerâ"å
±äº«ä»²è£Â·Broker SessionGate 代ç"</td></tr> |
| | | </table> |
| | | <p class="small">èå¨è§åï¼é Broker â 仲è£åèªå¨åå°é¦ä¸ª Broker åéï¼é local- å â èªå¨åå LocalãXAML åå§åæäºä»¶å æ§ä»¶ç©ºå¼ç¨å®å«ã</p> |
| | | </div> |
| | | <div class="card"> |
| | | <h3>3.2 æ°æ®æ¨¡å䏿ä¹
å</h3> |
| | | <ul> |
| | | <li><code>DeviceDefinition</code> 表 13 å = å 8 å + æ§è¡ä½ç½® 5 åï¼æ§åºç» <code>PRAGMA table_info</code> æ£æ¥å <code>ALTER TABLE ADD COLUMN</code> è¿ç§»ï¼åéæ°æ®é»è®¤ <code>Local/空AuthorityId</code>ã</li> |
| | | <li>å®ä½é»è®¤å¼ <code>ExecutionMode=Local</code>ï¼è¯»å端 <code>HasColumn</code> 容é缺åã</li> |
| | | <li>æ¹éçæï¼BatchGenerateModalï¼èµ°åä¸ <code>SaveDevice</code>ï¼æ°ååé»è®¤ã</li> |
| | | </ul> |
| | | <h3>3.3 çæ¬ç¶ææºï¼åå¸å·¥ä½æµ §05ï¼</h3> |
| | | <pre class="seq"> |
| | | Draft ââä¿åè稿ââ⺠(éç® hash è½åº) |
| | | Draft ââåå¸(PublishVersion)ââ⺠â ValidatePublishGate() æ¦æª |
| | | â¡ éè¿âéç® hashâstatus=Published |
| | | Published ââåºç¨(Apply)ââ⺠Effectiveï¼æ§ Effective éå Publishedï¼ |
| | | </pre> |
| | | <h3>3.4 åå¸é¨ç¦æ ¡éªé¡¹ï¼ValidatePublishGateï¼</h3> |
| | | <ol> |
| | | <li>AuthorityId å¿
å¡«ä¸å¨é
ç½®æä¸¾å
ï¼åéç©ºå¼ â æç¤º"æ§æ°æ®è¯·éæ°ä¿å"ï¼</li> |
| | | <li>Local 设å¤çåå¿
é¡» <code>local-</code> åç¼</li> |
| | | <li>Broker 设å¤ï¼BrokerId å¿
å¡«ã卿䏾å
ãä¸ä¸ AuthorityId ä¸è´ï¼åä¸è´ï¼</li> |
| | | <li>Broker 设å¤ï¼PhysicalSessionKey å¿
å¡«</li> |
| | | <li>åä¸ PhysicalSessionKey åªå
许ä¸ä¸ªå®¿ä¸»åï¼"åä¸ä¼è¯åªè½æä¸ä¸ªå®¿ä¸»"ï¼</li> |
| | | </ol> |
| | | <div class="note">ä»»ä¸å¤±è´¥ â å¼¹çªååºéè¯¯ï¼æå¤æ¾ç¤º 8 æ¡ï¼å¹¶é»æ¢åå¸ï¼å²çªæ£æµï¼IP/Slot/è¶çï¼ä»èµ° <code>DetectConflicts</code>ã</div> |
| | | </div> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s4">4ã驱å¨åæ´¾ä¸é
ç½®åå¸ï¼INV-04ï¼</h2> |
| | | <div class="card"> |
| | | <pre class="seq"> |
| | | 注å页ä¿å设å¤(嫿§è¡ä½ç½®) ââ⺠data.db |
| | | â |
| | | Bootstrapper å¯å¨æ«æ â¼ |
| | | ExecutionMode='Local' ââ⺠DriverFactory.CreateDriver ââ⺠ç´é©±ï¼æ¬è¿ç¨ç©çä¼è¯ï¼ |
| | | ExecutionMode='Broker' ââ⺠<b>BrokeredCanDriver</b>(deviceId, aging.{BrokerId}.v1, hashâ) |
| | | â hashâ = DeviceConfigHash.Compute(data.db) |
| | | â è§åä¸ DeviceConfigModel.ComputeConfigHash å®å
¨ä¸è´ï¼ |
| | | â DEVICE(id|kind|driver|transport|endpoint|<b>mode|authority|broker|sessionKey</b>) |
| | | â + CHANNEL + SLOT 䏿®µæ¼æ¥ SHA256ï¼OwnerProcessId ä¸åä¸ |
| | | â¼ æ¯æ¬¡ RPC æºå¸¦ |
| | | 宿主åºéæ¶ä¸èªå·±éç®ççæ hash 对账 â ä¸ä¸è´ RejectedConfigMismatch |
| | | </pre> |
| | | <ul> |
| | | <li><b>åæ´¾ç¹å¨é©±å¨å±</b>ï¼<code>DeviceService</code> ä¸æç¥ Local/Brokerââå®åªä» <code>DeviceManager.GetDriver(deviceId)</code> å驱å¨ãä¸å±ï¼èªå¨åé¨é¢ãè°è¯é¢æ¿ï¼é¶æ¹å¨ã</li> |
| | | <li>é
ç½®åå¸ = å¿«ç
§æçº¹ï¼Broker ç¨ <code>DeviceConfigHash.Compute</code>ï¼ä¸æ³¨å页åç®æ³ï¼ç¼ºè¡¨è·³è¿ç©ºæ®µï¼æ¯ 2s æ°æ§éç®ã</li> |
| | | </ul> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s5">5ãè°è¯é¡µéè®¾å¤æ¶åºï¼OnDeviceSelectedï¼</h2> |
| | | <div class="card"> |
| | | <pre class="seq"> |
| | | 设å¤ä¸æåæ´ |
| | | 1. LoadDeviceInfo(deviceId) â 读 data.dbï¼Kind/Endpoint/EffectiveVersion |
| | | 2. OpenSession(deviceId) â DebugSessionManager |
| | | a. GetActiveSessionByDevice â å½ä¸ä¸<b>卿¬è¿ç¨å
å</b> â å¤ç¨è¿å |
| | | b. å½ä¸ä½ä»
åå¨äº debug.dbï¼è¿ç¨éå¯éçæ»ä¼è¯ï¼â <u>强å¶åæ¶ä¸º Closed</u> åæ°å»º |
| | | c. æ°å»º sessionï¼State=ReadOnlyï¼å debug_session 表 + å
¥å
åç¼åï¼ |
| | | 3. DeviceManager.ConnectAsync(deviceId) |
| | | <span class="tag t-local">Local</span> ç´é©± ConnectAsyncï¼æ³¨åæ»çº¿èç¹/å»ºç« TCP⦠|
| | | <span class="tag t-broker">Broker</span> BrokeredCanDriver â RPC CONNECTï¼<b>æ ç§çº¦ä¹å
许</b>ï¼ä»
ç»è®°å®¿ä¸»ç©çä¼è¯ï¼æ æ»çº¿è¾åºï¼ |
| | | å¼å¸¸âä»
è¿æ¥ç¶ææ¾ç¤º"è¿æ¥å¤±è´¥"ï¼ä¸æåº |
| | | 4. UpdateButtonStates() â "è¿å
¥ç»´æ¤"ä»
ReadOnly æ¶å¯ç¨ |
| | | 5. LoadPanel(kind) |
| | | CAN 颿¿ï¼ExistingDriver = DeviceManager.GetDriver(deviceId) |
| | | ââ é nullï¼Broker 设å¤ï¼â 颿¿å¤ç¨è¯¥é©±å¨ï¼<b>ç¦æ¢æ¬å°ç´é©±</b>ï¼ä¸ Dispose å¤é¨é©±å¨ï¼ |
| | | ââ nullï¼æªæ³¨åï¼â é级æ¬å°ç´é©±ï¼æ¨¡æå¨è¯ä¹ï¼owns=trueï¼ |
| | | 颿¿è¿æ¥åï¼DispatcherTimer 100ms 轮询å¯å¨ï¼UpdateStats + 代ç驱å¨é®ç®±æ½åï¼ |
| | | é¡¶é¨"è¿æ¥ç¶æ"ä¸é¢æ¿å
"ç¶æ"ä¸ºä¸¤ä¸ªææ ï¼åè
=DeviceManager éè·¯ï¼åè
=颿¿å®é
使ç¨çé©±å¨ |
| | | </pre> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s6">6ãç»´æ¤æ¨¡å¼ç¶ææºä¸ç§çº¦æ¶åº</h2> |
| | | <div class="grid2"> |
| | | <div class="card"> |
| | | <h3>6.1 ä¼è¯ç¶ææº</h3> |
| | | <pre class="seq"> |
| | | RequestMaintenance â ActivateMaintenance |
| | | ReadOnly ââââââââââââââââââââ⺠AcquiringMaintenance ââââââââââââ⺠<b>MaintenanceActive</b> |
| | | â² â失败(å ç¨/è¶
æ¶) â CloseSession |
| | | âåæ¶æ»ä¼è¯(Closed) â¼ â¼ |
| | | âââââââââââââââââââââââââ ä¿æ ReadOnly Closing â Closed |
| | | ï¼éæ¾ç»´æ¤ç§çº¦ï¼ |
| | | </pre> |
| | | <h3>6.2 è¿å
¥ç»´æ¤ï¼å«è·¨è¿ç¨ä»²è£ï¼</h3> |
| | | <pre class="seq"> |
| | | "è¿å
¥ç»´æ¤" â RequestMaintenance(sessionId) |
| | | 1. ä¼è¯å¨å
åç¼åï¼ä¸å¨âdebug.db æ¢å¤å
åºï¼ä»æ âæç» |
| | | 2. State==ReadOnlyï¼å¦åæç»ï¼æé®å·²ææ¤ç½®ç°ï¼ |
| | | 3. <b>å/建ä¼è¯â令çç¼å _sessionOwnerTokens[sessionId]</b> |
| | | ï¼ResourceOwnerToken.TokenId æ¯éæº GUIDï¼<u>å¿
é¡»å¤ç¨åä¸å®ä¾</u>ï¼ |
| | | å¦å LayeredResourceManager æ TokenId ç´¢å¼ç grants éæ¾æ¶æ¾ä¸åï¼ |
| | | 4. ResourceManager.ReserveAsync(token, key=deviceId) |
| | | â DbLeaseStore.Acquireï¼arb.db BEGIN IMMEDIATE åäºå¡ï¼ |
| | | â Acquired/Reused â Active ç§çº¦ï¼TTL 300sï¼Generation+1ï¼ |
| | | â ConflictHeld â æ ResourceConflictException â æç»ï¼æç¤ºå«å ç¨è
/æºå¨/PIDï¼ |
| | | â RecoveryBlocked â æç»ï¼è¿æå¾
åæ¶ï¼è§ §8ï¼ |
| | | 5. State=AcquiringMaintenance â ActivateMaintenance â MaintenanceActive |
| | | 6. LoadPanel é建 â 颿¿ IsMaintenanceMode=trueï¼åæ§ä»¶è§£éï¼ |
| | | </pre> |
| | | </div> |
| | | <div class="card"> |
| | | <h3>6.3 éåºç»´æ¤</h3> |
| | | <pre class="seq"> |
| | | "éåºç»´æ¤" â CloseSession |
| | | 1. State=MaintenanceActiveï¼â Closing |
| | | 2. ReleaseReservationAsync(<b>å¤ç¨è¿å
¥æ¶çåä¸ä»¤ç</b>) |
| | | â DbLeaseStore.Release â Phase=0(Free)ï¼lease_history è®° Released |
| | | 3. Closed + closed_at è½åºãç§»åºå
åç¼åãæ¸
令çç¼å |
| | | <b>æ ¡éªç¹</b>ï¼arb.db resource_state åºåå Free ââ æ³æ¼ç§çº¦æ¾å¯¼è´ |
| | | "ç¬¬äºæ¬¡è¿å
¥ç»´æ¤æ°¸ä¹
失败"ï¼æ ¹å ä¸ä¿®å¤è§ §8/§10 |
| | | </pre> |
| | | <h3>6.4 ç»´æ¤ä¸åæéç©éµï¼å®¿ä¸»ä¾§æ§è¡è¯ä¹ï¼</h3> |
| | | <table> |
| | | <tr><th>æä½</th><th>ç§çº¦è¦æ±</th><th>åå </th></tr> |
| | | <tr><td>CONNECT / DISCONNECT</td><td><i>è±å
</i></td><td>ä»
ç»è®°/éæ¾å®¿ä¸»ç©çä¼è¯ï¼æ æ»çº¿è¾åº</td></tr> |
| | | <tr><td>RECV / RECV_ALL / LOG / STATUS</td><td><i>è±å
</i></td><td>纯读é®ç®±/ç¶æï¼è¢«å¨çæ§æ¯æè°è¯é¡µåªè¯»çå¬</td></tr> |
| | | <tr><td>SENDï¼å¸§åéï¼</td><td><b>å¿
é¡» Active</b></td><td>æ»çº¿åï¼INV-01 ç¦æ¢æ ç§çº¦ç´æ¥ I/O</td></tr> |
| | | <tr><td>AUTO_RESPONSE / FILTER / PROMISCUOUS</td><td><b>å¿
é¡» Active</b></td><td>æå¯ä½ç¨ç QUERYï¼æ¹åèç¹è¡ä¸º</td></tr> |
| | | </table> |
| | | <div class="fixed">â
å æ¤æ£ç¡®æä½é¡ºåºå³æ¨æåºçï¼<b>å
è¿å
¥ç»´æ¤æ¨¡å¼ â æè½æå¼èªå¨ååº/åé</b>ï¼åªè¯»"ç帧"ä¸éè¦ç»´æ¤ã</div> |
| | | </div> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s7">7ãæ¥ææ¶åå
¨é¾è·¯æ¶åºï¼Broker 设å¤ï¼</h2> |
| | | <div class="card"> |
| | | <h3>7.1 åéï¼ç»´æ¤æ¨¡å¼ä¸ï¼CAN-003 â æ»çº¿ï¼</h3> |
| | | <pre class="seq"> |
| | | 颿¿"åé" â BrokeredCanDriver.SendCommandAsync("SEND:0x123:55 66") |
| | | ââ BrokerClientChannel.EnsureConnectedAsync â æ°æ§ï¼ç®¡éæå¼èªå¨éè¿+éæ¡æ |
| | | ââ <b>Hello</b> â 宿主å {ServerEpoch, ConfigHash, BrokerId, ProtocolVersion} |
| | | åè®®ä¸»çæ¬ä¸ç¬¦ â æå¼æç» |
| | | ââ <b>SubmitTask</b>ï¼å¸§=4åè大端é¿åº¦+UTF8 JSON å°å¥ï¼RequestId å
³èãdeadline è¶
æ¶ï¼ |
| | | Body={DeviceId, OpCode=SEND, Payload, ResourceKey=deviceId, ClientInstanceId} |
| | | â¼ âââââââââââ DeviceBroker.exe âââââââââââ |
| | | â ç½åå+åå
设å¤è¿æ»¤ 鿬å/æªç¥op â Failed |
| | | â¡<b>configHash 对账</b>(INV-04) ä¸ä¸è´ â RejectedConfigMismatch("å
Apply å I/O") |
| | | â¢<b>æ
æ åæ ¡éª</b>(INV-01/03) RecoveryRequiredâæç»ï¼æ Active ç§çº¦âRejectedStaleLease |
| | | â£<b>SessionGate</b>ï¼æ PhysicalSessionKey 串è¡ååçæ®µï¼ |
| | | éåçå¾
5s è¶
æ¶ â Failed RESOURCE_BUSYï¼ç¡®å®æªæ§è¡ï¼å¯å®å
¨éè¯ï¼ |
| | | â¤CanDriverAdapter.SendFrameï¼å®¿ä¸»è¿ç¨ç©ç/æ¨¡ææ»çº¿ï¼ |
| | | â¥ResultBody{State, Readback, ServerEpoch} å管éè¿å |
| | | â¼ âââââââââââ 客æ·ç«¯ âââââââââââ |
| | | Succeededâè¿å设å¤ååºä¸² | RejectedStaleLeaseâæ LEASE_STALE |
| | | ConfigMismatchâæå¼å¸¸ | Unknown(è¶
æ¶/çæ®µä¸å¼å¸¸)â<u>TimeoutException ç¦æ¢å宿ªæ§è¡(INV-06)</u> |
| | | </pre> |
| | | <h3>7.2 æ¥æ¶ï¼æ»çº¿å¸§ â 颿¿æ¾ç¤ºï¼</h3> |
| | | <pre class="seq"> |
| | | æ»çº¿å¹¿æ â 宿主å
node(CAN-003) æ¶å¸§ â RxCount++ï¼å¸§å
¥ _recvBuffer + èç¹é®ç®± |
| | | 客æ·ç«¯é¢æ¿ DispatcherTimer(100ms) æ¯ 10 tickï¼â1sï¼ï¼ |
| | | DrainBrokerMailbox â RPC QUERY <b>"RECV_ALL"</b>ï¼åªè¯»ï¼<u>æ éç§çº¦</u>ï¼ |
| | | â è§£æ "RECV_ALL:n:id:data[:ts]|â¦" â AddReceivedFrame(RX, æ¥æº=<b>BUS@broker</b>) |
| | | RPC 失败ï¼å®¿ä¸»ä¸å¯è¾¾çï¼éé»è·³è¿ï¼ä¸ä¸ç§éè¯ï¼ä¸å¼¹é误 |
| | | ï¼Local ç´é©±è®¾å¤æ é轮询ï¼DriverFrameReceived äºä»¶å³æ¶æ¾ç¤ºï¼ |
| | | 对端模æï¼çå®ç¡¬ä»¶å䏿»çº¿å¤©ç¶äºéï¼æ¨¡æå¨åºæ¯ç¨<b>å宿主ç CAN-004</b> ä½å¯¹ç«¯éªè¯ã |
| | | </pre> |
| | | <div class="fixed">â
<b>ä¿®å¤è®°å½</b>ï¼â 代ç驱卿 帧äºä»¶ä¸é¢æ¿ä»ä¸æ¥é®ç®± â "åªæåéæ²¡ææ¥æ¶"ï¼ç°å¢å RECV_ALL åªè¯»è½®è¯¢ï¼â¡ 宿主 <code>HandleRecvAll</code> æ¾æåä¸å¸§ç» buffer+é®ç®±åè·¯ä¸æ¥ï¼RX éå¤è¡ï¼ï¼å·²æ¹ä¸º buffer ä¼å
ãé®ç®±ä»
å
åºã</div> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s8">8ãå¼å¸¸ä¸èªææºå¶</h2> |
| | | <div class="card"> |
| | | <table> |
| | | <tr><th>åºæ¯</th><th>æºå¶</th><th>表ç°/å»å</th></tr> |
| | | <tr><td>è¿ç¨å¼å¸¸éåºï¼å´©æº/被æï¼</td><td>ç§çº¦ä¸åç»æ â TTL(300s) è¿æ â <b>RecoveryRequired</b>ï¼INV-03 ç¦æ¢èªå¨ç§»äº¤ï¼</td><td>䏿¬¡ Acquire è¿å RecoveryBlocked â "æ æ³è¿å
¥ç»´æ¤"</td></tr> |
| | | <tr><td>宿主/主ç¨åº<b>éå¯</b></td><td><b>ReconcileAfterBoot</b>ï¼SweepExpiredï¼è¿æâå¾
åæ¶+åå²ï¼â é个 ApproveRecoveryï¼ç»è®°è¯»åè¯æ®è¿ recovery_checkpointï¼Phase=Freeï¼Generation ä¸åéï¼</td><td>å¯å¨å³èªæï¼è¯æ®å¯å¨ arb.db 审计</td></tr> |
| | | <tr><td>è°è¯é¡µç»´æ¤ç§çº¦æ³æ¼</td><td>æ ¹å ï¼è¿åºç»´æ¤åèª new Tokenï¼TokenId éæº GUIDï¼â éæ¾æ TokenId æ¥æ¾è½ç©ºãä¿®å¤ï¼ä¼è¯â令çå®ä¾ç¼åå¤ç¨</td><td>éåºç»´æ¤å resource_state å¿
å Free</td></tr> |
| | | <tr><td>debug.db æ»ä¼è¯æ®ç</td><td>OpenSession æ£åº"DB æãå
åæ "çæªå
³éä¼è¯ â åæ¶ Closed åæ°å»º</td><td>ä¸ååºç°"ä¼è¯ä¸åå¨"åæç»</td></tr> |
| | | <tr><td>ç§çº¦è¿æå使ç¨ï¼ä½ç¨åç§çº¦ï¼</td><td>AutoDeviceLease å¿è·³ 8s Renewï¼è¿ç» 2 次失败 â LeaseLost äºä»¶ + åç»è°ç¨æ <b>LEASE_STALE</b>ï¼çæï¼</td><td>èªå¨åæ¥éª¤å¿«é失败èééé»åæ§è¡</td></tr> |
| | | <tr><td>RPC è¶
æ¶/æçº¿</td><td>ååºå
³èè¶
æ¶ â State=<b>Unknown</b>ï¼INV-06ï¼ï¼è¯»å¾ªç¯æçº¿æç¥ â 䏿¬¡è°ç¨æ°æ§éè¿éæ¡æ</td><td>颿¿è½®è¯¢éé»éè¯ï¼æ¾å¼ I/O æå¼å¸¸ç¦æ¢éè¯å宿ªæ§è¡</td></tr> |
| | | <tr><td>é
ç½®çæ¬éä½ï¼å®¢æ·ç«¯å¿«ç
§æ§ï¼</td><td>å®¿ä¸»æ¯æ¬¡åºé对账 configHash â RejectedConfigMismatch</td><td>强å¶"å
Apply å I/O"</td></tr> |
| | | </table> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s9">9ãå
³é®ä»£ç ç´¢å¼</h2> |
| | | <div class="card"> |
| | | <table> |
| | | <tr><th>èè´£</th><th>æä»¶</th><th>å
³é®æå</th></tr> |
| | | <tr><td>å¯å¨è£
é
</td><td>Plugin.IntegrationTest/MainWindow.xaml.cs</td><td>InitializePlugins / SeedPresetCanDevices / InitializeAutoServices / TryStartDeviceBroker</td></tr> |
| | | <tr><td>注å UI/èå¨/æ ¡éª</td><td>Plugin.DeviceConfig/DeviceEditModal.xaml(.cs)</td><td>Open / ExecMode_Changed / CbAuthority_SelectionChanged / RefreshSessionKeyCandidates / SaveBtn_Click</td></tr> |
| | | <tr><td>åéæä¸¾é
ç½®</td><td>Plugin.DeviceConfig/V3AuthorityCatalog.cs + Plugin.IntegrationTest/App.config</td><td>AuthorityIds / BrokerIds / LocalAuthorityId / IsLocalAuthority</td></tr> |
| | | <tr><td>åå¸é¨ç¦/åå¸/è¿ç§»</td><td>Plugin.DeviceConfig/Model/DeviceConfigModel.cs</td><td>MigrateExecutionColumns / ValidatePublishGate / ComputeConfigHash / SaveDevice</td></tr> |
| | | <tr><td>å®ä½</td><td>Plugin.DeviceConfig/Entity/DeviceDefinition.cs</td><td>ExecutionModeKind / AuthorityId / BrokerId / PhysicalSessionKey / AccessPolicy(æ´¾ç)</td></tr> |
| | | <tr><td>æå¡è£
é
</td><td>Aging.Infrastructure/InfrastructureBootstrapper.cs</td><td>Initialize / RegisterBrokeredDrivers</td></tr> |
| | | <tr><td>è·¨è¿ç¨ç§çº¦</td><td>Aging.Infrastructure/Core/DbLeaseStore.cs · LayeredResourceManager.cs</td><td>Acquire/Renew/Release/PhaseOf/SweepExpired/ApproveRecovery/<b>ReconcileAfterBoot</b></td></tr> |
| | | <tr><td>ç»´æ¤ä¼è¯ç¶ææº</td><td>Plugin.DeviceDebug/Model/DebugSessionManager.cs</td><td>OpenSession(æ»ä¼è¯åæ¶) / RequestMaintenance(令çå¤ç¨) / ActivateMaintenance / CloseSession</td></tr> |
| | | <tr><td>è°è¯é¡µæ¶åº</td><td>Plugin.DeviceDebug/DeviceDebug.xaml.cs · Panels/CanDebugPanel.xaml.cs</td><td>OnDeviceSelected / LoadPanel(ExistingDriver 注å
¥) / DoConnect / PollTimer_Tick / DrainBrokerMailbox</td></tr> |
| | | <tr><td>Broker 客æ·ç«¯</td><td>Aging.Infrastructure/Broker/BrokerClientChannel.cs · Drivers/BrokeredCanDriver.cs</td><td>EnsureConnectedAsync(Hello) / SendAsync(å
³è+è¶
æ¶) / SubmitAsync / ThrowForState</td></tr> |
| | | <tr><td>Broker 宿主</td><td>DeviceBroker/BrokerServer.cs · Program.cs</td><td>LoadDevices / ExecuteOneShotAsync(ä¸éå
³å¡) / SessionGate / RunFragmentAsync / ProbeReadback</td></tr> |
| | | <tr><td>线åè®®/å¥çº¦</td><td>Aging.ResourceContracts/BrokerIpc.cs · IpcEnvelope.cs · DeviceOperationTypes.cs · LeaseTypes.cs</td><td>帧ç¼è§£ç / SubmitBody·ResultBody / LeaseGrant·AcquireRequest</td></tr> |
| | | </table> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s10">10ãå·²ç¥éå¶ä¸ç®åï¼P2 计å项ï¼</h2> |
| | | <div class="card"> |
| | | <ul> |
| | | <li><b>ownerâclientInstanceId 弱对é½</b>ï¼åæº arb.db æ
æ åªåå卿§/ç¸ä½æ£æ¥ï¼æªæ ¡éªç³è¯·è
身份ä¸è¯·æ±è¿æ¥ä¸ä¸å¯¹åºï¼å¾
ç¾ååæ®/epoch tokenï¼ã</li> |
| | | <li><b>模æå¨è·¨è¿ç¨æ»çº¿</b>ï¼CanSimulator è¿ç¨å
å®ä¾äºä¸ç¸éï¼è·¨è¿ç¨æ¶åä»
å宿主设å¤é´å¯è¾¾ï¼çå®ç¡¬ä»¶æ æ¤éå¶ã</li> |
| | | <li><b>æ¨è¿è½å</b>ï¼Draining èªå¨è®©æ¸¡ã卿任å¡/订é
/ResultOutboxãç¶è®¾å¤ Permit å¤éé仲è£ãPrepare/Activate 两段å¼è·¨åé¢çãåå¸é¢è§å·®å¼ã</li> |
| | | <li><b>UI å¾
å</b>ï¼App.Success/App.Warn æ 颿ªæ¬å°åï¼éåºç»´æ¤å设å¤éæ©å¨è¢«éç½®ï¼ä¸´æ¶è¯ææ¥å¿ï¼brokerrx_diag.logï¼å¾
éªè¯éè¿åæ¤é¤ï¼RecoveryRequired å°æ äººå·¥å®¡æ¹ UIï¼å½åç±å¯å¨å¯¹è´¦ä»£å¿ï¼ã</li> |
| | | <li><b>BrokerId/OwnerProcessId è¯ä¹</b>ï¼OwnerProcessId 为 MVP å ä½ï¼å½åè¿ç¨ PIDï¼ï¼Broker 常驻è¿ç¨åºä¸ºå
¶å®¿ä¸» PID ä¸é宿主é坿´æ°ââä¸å
¥åå¸ç设计已é¢çã</li> |
| | | </ul> |
| | | <p class="small">æ¬ææ¡£ä¸ä»£ç å®åµåæ¥äº 2026-11-09ï¼å®ç°åæ´è¯·åæ¥æ´æ°æ¬æä»¶ã</p> |
| | | </div> |
| | | |
| | | </div></body> |
| | | </html> |
| New file |
| | |
| | | <!DOCTYPE html> |
| | | <html lang="zh-CN"> |
| | | <head> |
| | | <meta charset="utf-8"/> |
| | | <meta name="viewport" content="width=device-width, initial-scale=1"/> |
| | | <title>仪å¨è°ç¨æ¶æä¸æ°æ®æµè½¬è¯´æï¼V3.1ï¼</title> |
| | | <style> |
| | | :root{--bg:#f7f8fa;--card:#fff;--ink:#1f2430;--muted:#5b6472;--line:#e4e8ef;--accent:#2f6fed;--ok:#2e8b57;--warn:#b7791f;--bad:#c0392b;--code:#0d1117;} |
| | | *{box-sizing:border-box} |
| | | body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.7 "Segoe UI","Microsoft YaHei",Arial,sans-serif} |
| | | .wrap{max-width:1120px;margin:0 auto;padding:32px 20px 90px} |
| | | h1{font-size:25px;margin:0 0 6px} |
| | | h2{font-size:20px;margin:34px 0 12px;padding-bottom:6px;border-bottom:2px solid var(--line)} |
| | | h3{font-size:16px;margin:20px 0 8px;color:var(--accent)} |
| | | .sub{color:var(--muted);margin:0 0 18px} |
| | | .card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px 18px;margin:14px 0;box-shadow:0 1px 2px rgba(0,0,0,.03)} |
| | | pre{background:var(--code);color:#e6edf3;border-radius:10px;padding:14px 16px;overflow:auto;font:12.5px/1.55 "Cascadia Code",Consolas,monospace;margin:10px 0} |
| | | code{font-family:"Cascadia Code",Consolas,monospace;background:#eef1f6;padding:1px 5px;border-radius:4px;font-size:13px} |
| | | pre code{background:none;padding:0;color:inherit} |
| | | table{border-collapse:collapse;width:100%;margin:10px 0;font-size:14px} |
| | | th,td{border:1px solid var(--line);padding:7px 10px;text-align:left;vertical-align:top} |
| | | th{background:#eef2f8} |
| | | .tag{display:inline-block;padding:1px 8px;border-radius:999px;font-size:12px;font-weight:600;margin-right:4px} |
| | | .t-auto{background:#e6f0ff;color:#1b4fa0} |
| | | .t-dbg{background:#f3e8ff;color:#6b21a8} |
| | | .t-svc{background:#e7f6ec;color:#1f7a3d} |
| | | .t-dev{background:#fdeee0;color:#a35a12} |
| | | .ok{color:var(--ok);font-weight:600}.bad{color:var(--bad);font-weight:600}.warn{color:var(--warn);font-weight:600} |
| | | .small{font-size:13px;color:var(--muted)} |
| | | .toc{columns:2;font-size:14px}.toc a{color:var(--accent);text-decoration:none} |
| | | .note{background:#fff6d6;border-left:4px solid var(--warn);padding:10px 12px;border-radius:6px;margin:10px 0} |
| | | .fx{background:#e8f5e9;border-left:4px solid var(--ok);padding:10px 12px;border-radius:6px;margin:10px 0} |
| | | .layer{border-left:4px solid var(--accent);padding-left:12px;margin:8px 0} |
| | | </style> |
| | | </head> |
| | | <body> |
| | | <div class="wrap"> |
| | | |
| | | <h1>仪å¨è°ç¨æ¶æä¸æ°æ®æµè½¬è¯´æ</h1> |
| | | <p class="sub">èç¦"䏿¬¡ä»ªå¨è°ç¨ä»å
¥å£å°ç¡¬ä»¶ãååå°è°ç¨æ¹"ç宿´è·¯å¾ä¸ç±»å¼ç¨ç»æãV3.1ï¼TCP 模æå¨ + ç»ä¸ <code>CanDeviceDriver</code> + å¤è®¾å¤å¹¶åï¼ãä¸ä»£ç 忥 2026-11-09ã</p> |
| | | |
| | | <div class="card"> |
| | | <b>ç®å½</b> |
| | | <div class="toc"> |
| | | <div><a href="#s1">1. è°ç¨å
¥å£å
¨æ¯</a></div> |
| | | <div><a href="#s2">2. åå±ç±»å¼ç¨ç»æ</a></div> |
| | | <div><a href="#s3">3. èªå¨åè°ç¨æ°æ®æµè½¬</a></div> |
| | | <div><a href="#s4">4. è°è¯è°ç¨æ°æ®æµè½¬</a></div> |
| | | <div><a href="#s5">5. 驱å¨âä¼ è¾âæå¡ç«¯ éè·³</a></div> |
| | | <div><a href="#s6">6. 䏿¬¡ CAN åé宿´æ¶åº</a></div> |
| | | <div><a href="#s7">7. æé/ç§çº¦å¨é¾è·¯ä¸çä½ç½®</a></div> |
| | | <div><a href="#s8">8. å
³é®æ°æ®ç»æä¸è§</a></div> |
| | | <div><a href="#s9">9. ç±»å¼ç¨å
³ç³»æ»å¾</a></div> |
| | | </div> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s1">1ãè°ç¨å
¥å£å
¨æ¯</h2> |
| | | <div class="card"> |
| | | <p>仪å¨è°ç¨åªæ<b>两类å
¥å£</b>ï¼ä½é½æ±èå°åä¸å¥"æå¡å± â 驱å¨å± â ä¼ è¾å±"ï¼æç»è½å°æ¨¡æå¨æå¡éçæ»çº¿ï¼</p> |
| | | <table> |
| | | <tr><th>å
¥å£</th><th>触åè
</th><th>é¦è·³ API</th><th>令çç±»å</th></tr> |
| | | <tr><td><span class="tag t-auto">èªå¨å</span>æµè¯ç¨åº</td><td>TestPlan / æ¥éª¤èæ¬</td><td><code>ICanBusService</code> / <code>IAutoDeviceFacade</code></td><td>OwnerType.<b>Production</b></td></tr> |
| | | <tr><td><span class="tag t-dbg">è°è¯</span>硬件è°è¯é¡µ</td><td>人工ï¼DeviceDebugTabï¼</td><td>颿¿ç´è°é©±å¨ æ <code>IDeviceService</code></td><td>OwnerType.<b>Maintenance</b></td></tr> |
| | | </table> |
| | | <p class="small">两æ¡å
¥å£äºæ¥äºåä¸ arb.db ç§çº¦ï¼æè®¾å¤è¢«ç产é¢çº¦æ¶ç»´æ¤è¿ä¸å»ï¼åä¹äº¦ç¶ï¼INV ç±èµæºå±æ
æ ä¿è¯ï¼ã</p> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s2">2ãåå±ç±»å¼ç¨ç»æ</h2> |
| | | <div class="card"> |
| | | <pre> |
| | | ãå
¥å£å±ã |
| | | CanBusService ââ DeviceDebugTab ââ |
| | | (ç±»ååå°è£
) â IAutoDeviceFacade â (æ¯è®¾å¤ä¸ Tab) |
| | | â¼ â¼ |
| | | ãé¨é¢/ç¼æå±ã AutoDeviceFacade ââ⺠IDeviceService âââ ExecuteViaDeviceService / 颿¿ç´è° |
| | | (é¢çº¦+éæ¾ç¼æ) (DeviceServiceï¼æ ¡éª+ç§çº¦+åæ´¾) |
| | | â |
| | | ãèµæºå±ã IResourceManager ââââââââ⤠(ValidateOwner / AcquireOperationAsync) |
| | | LayeredResourceManager ââââ¼â⺠ILeaseCoordinator â⺠DbLeaseStore(arb.db) |
| | | â |
| | | ã设å¤/驱å¨å±ã IDeviceManager.GetDriver(deviceId) â⺠IDeviceDriver |
| | | â |
| | | CanDeviceDriverï¼å¯ä¸ CAN 驱å¨ï¼å®ç° IDeviceDriverï¼ |
| | | ââ ICanTransport |
| | | â ââ NodeChannelTransport â⺠TCP â⺠CanSimulatorServer |
| | | â ââ BrokerRpcTransport â⺠å½å管é â⺠DeviceBroker |
| | | â ââº(宿主å
) CanDeviceDriver(NodeChannel) â⺠TCP â⺠模æå¨ |
| | | ââ å
¶å®é©±å¨ï¼TcpRaw/Scpi/ModBus/S7ï¼é CAN 仪å¨ï¼ |
| | | |
| | | ãæå¡/æ»çº¿å±ã TcpSimulatorHost â⺠ServerSession â⺠CanCommandExecutor â⺠CanBusSimulator/CanNode |
| | | </pre> |
| | | <p class="small">ä¾èµæ¹åèªä¸èä¸ï¼ä¸å±åªä¾èµæ¥å£ï¼IAutoDeviceFacade/IDeviceService/IResourceManager/IDeviceManager/IDeviceDriverï¼ï¼å®ç°ç± <code>InfrastructureBootstrapper</code> è£
é
è¿ <code>UtilContainer</code>ã</p> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s3">3ãèªå¨åè°ç¨æ°æ®æµè½¬</h2> |
| | | <div class="card"> |
| | | <h3>3.1 䏿¬¡æ§è°ç¨ï¼OneShotï¼</h3> |
| | | <pre class="seq"> |
| | | TestPlan æ¥éª¤ |
| | | â CanBusService.SendFrameAsync(deviceId, 0x300, data) |
| | | · æ ¡éªå¸§(â¤0x1FFFFFFF, â¤8åè) â æ¼å½ä»¤ä¸² "SEND:0x300:AA BB" |
| | | â AutoDeviceFacade.ExecuteAsync(deviceId, "SEND:â¦") |
| | | â ReserveCoreAsync: new ResourceOwnerToken(Production, auto_guid) |
| | | ResourceManager.ReserveAsync(token, ResourceKey(deviceId,"Generic")) â ç³è¯·é¢çº¦(å arb.db, TTL) |
| | | â¡ DeviceService.ExecuteCommandAsync(deviceId, cmd, token) |
| | | ⢠finally ReleaseCoreAsync â ReleaseReservationAsync â éæ¾é¢çº¦ |
| | | â è¿å DeviceCommandResult{Success, Readback, LatencyMs} |
| | | </pre> |
| | | <h3>3.2 ä½ç¨åç§çº¦ï¼ä¸æ¥å
夿¬¡è°ç¨ï¼</h3> |
| | | <pre class="seq"> |
| | | using (var lease = await AutoDeviceFacade.AcquireAsync(deviceId, "Step1")) |
| | | { |
| | | // å
é¨ ReserveAsync + è¥ LayeredResourceManager å lease.StartHeartbeat(Coordinator, grants) |
| | | // å¿è·³ï¼æ¯ 8s Coordinator.Renew(grant,30)ï¼è¿ç»å¤±è´¥â¥2 â LeaseLost äºä»¶ |
| | | await CanBusService.SendFrameAsync(lease, 0x100, d); // lease.ExecuteAsync â DeviceService⦠|
| | | var f = await CanBusService.ReceiveFrameAsync(lease); // lease.QueryAsync("RECV") |
| | | } // Dispose: åå¿è·³ + ReleaseReservationAsync |
| | | </pre> |
| | | <div class="note"><b>å¿è·³å·®å¼</b>ï¼èªå¨åä½ç¨åç§çº¦èªå¸¦ 8s å¿è·³ç»æï¼<code>AutoDeviceLease.StartHeartbeat</code>ï¼ï¼äººå·¥ç»´æ¤ä¼è¯çå¿è·³å¨ <code>DebugSessionManager</code>ï¼120sï¼ï¼ä¸¤æ¡è·¯å¾é½è¦ç»æï¼å¦åå° TTL è¿æè§¦å RECOVERY_REQUIREDã</div> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s4">4ãè°è¯è°ç¨æ°æ®æµè½¬</h2> |
| | | <div class="card"> |
| | | <p>硬件è°è¯é¡µæ¯ä¸ªè®¾å¤ä¸ä¸ª <code>DeviceDebugTab</code>ï¼ç¬ç«ä¼è¯ï¼ãCAN ä¸ éCAN çè°ç¨è·¯å¾ä¸åï¼</p> |
| | | <h3>4.1 CAN 颿¿ï¼ç´è°é©±å¨ï¼ä¸ç» DeviceServiceï¼</h3> |
| | | <pre class="seq"> |
| | | DeviceDebugTab.LoadPanel("CanDevice") |
| | | â CanDebugPanel(å¤éé壳) â CanChannelView(åéé, ExistingDriver=DeviceManager.GetDriver(deviceId)) |
| | | è¿æ¥ï¼DoConnect â å¤ç¨å·²æ³¨å CanDeviceDriverï¼Broker ä»£ç æ Local NodeChannelï¼â ConnectAsync |
| | | åéï¼SendBtn_Click â _driver.SendCommandAsync("SEND:0x300:â¦") â ç´æ¥è°é©±å¨ |
| | | æ¥æ¶ï¼é©±å¨ DriverFrameReceived äºä»¶ â AddReceivedFrame â Dispatcher.BeginInvoke ä¸å± |
| | | ç»´æ¤é¨æ§ï¼é¢æ¿ IsMaintenanceModeï¼ç±ä¼è¯ç¶æé©±å¨ï¼ï¼è¿å
¥ç»´æ¤ç» DebugSessionManager |
| | | </pre> |
| | | <h3>4.2 çµæº/PLC 颿¿ï¼ç» DeviceServiceï¼</h3> |
| | | <pre class="seq"> |
| | | PowerSupplyDebugPanel/PlcDebugPanel â OnCommandExecute(DebugCommand) |
| | | â DeviceDebugTab.ExecuteViaDeviceService |
| | | · new ResourceOwnerToken(Maintenance, sessionId) |
| | | · BuildDeviceCommand(cmd) â å¦ "VOLT â¦;CURR â¦;OUTP ON" / "WRITE:addr:TRUE" |
| | | · DeviceService.ExecuteCommandAsync(deviceId, cmd, token) â èµ°æå¡å±æ ¡éª+ç§çº¦+é©±å¨ |
| | | â DebugOperation è½ debug.db + æä½æ¥å¿ |
| | | </pre> |
| | | <div class="note">CAN èµ°"颿¿ç´è°é©±å¨ + ä¼è¯çº§ç»´æ¤é¨"æ¯ä¸ºäºä½å»¶è¿å®æ¶æ¶åï¼çµæº/PLC èµ°"æå¡å±"以è·å¾ç»ä¸æéæ ¡éªä¸æä½å®¡è®¡ãäºè
æç»é½ç» <code>IDeviceDriver</code> è½å°è®¾å¤ã</div> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s5">5ãé©±å¨ â ä¼ è¾ â æå¡ç«¯ éè·³</h2> |
| | | <div class="card"> |
| | | <p><code>CanDeviceDriver</code> æå½ä»¤äº¤ç»éå®ç <code>ICanTransport</code>ï¼ä¸¤æ¡å端åèªå°æ»çº¿çç©çè·¯å¾ä¸åï¼</p> |
| | | <h3>5.1 Localï¼NodeChannelTransportï¼</h3> |
| | | <pre class="seq"> |
| | | CanDeviceDriver.QueryAsync/SendCommandAsync |
| | | â NodeChannelTransport.TransceiveAsync(line) |
| | | · é¦è¿ HandshakeAsync: å "HELLO:bus:node:tag" ç´è¯» "OK:HELLOâ¦"ï¼è¯»å¾ªç¯æªèµ·ï¼ |
| | | · ä¹å RequestLineAsync: _requestLock ä¸²è¡ â åå½ä»¤å¸§ â ç TCSï¼deadline 5sï¼ |
| | | · åå° ReadLoopAsync: åæµ OK/ERRâ宿 TCSï¼EV:RECVâFramePushed äºä»¶ |
| | | â TCP 9000 â ServerSession â CanCommandExecutor â CanBusSimulator/CanNode |
| | | </pre> |
| | | <h3>5.2 Brokerï¼BrokerRpcTransportï¼</h3> |
| | | <pre class="seq"> |
| | | CanDeviceDriver(Broker).SendCommandAsync("SEND:â¦") |
| | | â BrokerRpcTransport.TransceiveAsync |
| | | · æ å° opCode(SEND/QUERY)+payload â SubmitBody â BrokerClientChannel(å½å管é RPC) |
| | | · EnsureConnectedAsync(Hello æ¡æ) â SubmitAsync(configHash éä¿¡å°) |
| | | â DeviceBroker.BrokerServer.ExecuteOneShotAsync |
| | | â ç½åå/åå
â¡ configHash 对账 ⢠ç§çº¦æ
æ ⣠SessionGate ä¸²è¡ |
| | | ⤠宿主å
CanDeviceDriver(NodeChannel) â TCP â æ¨¡æå¨è·¯ç± |
| | | ⥠ResultBody.Readback æ«å°¾ AppendPushes("|PUSHED:n|EV:RECVâ¦") |
| | | â 客æ·ç«¯ DrainPiggyback å¥ç¦» PUSHED â FramePushed â 驱å¨ç¼å²+äºä»¶ |
| | | </pre> |
| | | <p class="small">Broker çæ¥æ¶é "请æ±é©±å¨æå¸¦"ï¼å®¢æ·ç«¯æ¯æ¬¡ STATUS/SEND é½ä¼è®©å®¿ä¸»æèªä¸æ¬¡ä»¥æ¥æ¶å°çæ¨é带åï¼é¢æ¿æ¯ 100ms ç STATUS 轮询ä¿è¯æç»æ¾ç¤ºã</p> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s6">6ã䏿¬¡ CAN åé宿´æ¶åº</h2> |
| | | <div class="card"> |
| | | <h3>6.1 èªå¨å · Local è®¾å¤ CAN-001</h3> |
| | | <pre class="seq"> |
| | | CanBusService.SendFrameAsync("CAN-001",0x300,[AA BB]) |
| | | â AutoDeviceFacade.ExecuteAsync â ReserveAsync(Production) â arb.db åç§çº¦ |
| | | â DeviceService.ExecuteCommandAsync |
| | | GetDriver("CAN-001")âCanDeviceDriver(NodeChannel) |
| | | ValidateOwnerâRenew(grant,1) æ
æ æ ¡éª |
| | | AcquireOperationAsyncâOperationLease |
| | | driver.SendCommandAsync("SEND:0x300:AA BB") |
| | | â TCP HELLO/SEND â ServerSession â CanCommandExecutor.HandleSend |
| | | â CanNode.SendFrame â CanBusSimulator è·¯ç±å°å
¶å®èç¹(+åºçå¨åæ¾) |
| | | â "OK:TX:0x300:2" |
| | | â DeviceCommandResult{Success=true,Readback="OK:TXâ¦"} |
| | | â ReleaseReservationAsync â arb.db éæ¾ |
| | | </pre> |
| | | <h3>6.2 è°è¯ · Broker è®¾å¤ CAN-003</h3> |
| | | <pre class="seq"> |
| | | CanChannelView.SendBtn â _driver(CanDeviceDriver/BrokerRpc).SendCommandAsync("SEND:0x300:AA BB") |
| | | â BrokerRpcTransport â å½å管é SubmitBody{SEND,"SEND:0x300:AA BB"} |
| | | â BrokerServer ä¸éå
³å¡+SessionGate â 宿主 CanDeviceDriver(NodeChannel) â TCP â æ¨¡æå¨è·¯ç± |
| | | â ResultBody{Readback="OK:TXâ¦" (|PUSHED è¥æåæ¾)} å管é |
| | | â 客æ·ç«¯ DrainPiggyback â è¥å« PUSHED å FramePushedâDriverFrameReceivedâ颿¿ RX è¡ |
| | | ï¼åºçå¨å¼å¯æ¶ï¼æ¨¡æå¨æ 0x300 åæ¾ç»å®¿ä¸»èç¹â宿主æåâæ¬æ¬¡/䏿¬¡ååºæå¸¦å客æ·ç«¯ï¼ |
| | | </pre> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s7">7ãæé / ç§çº¦å¨é¾è·¯ä¸çä½ç½®</h2> |
| | | <div class="card"> |
| | | <pre> |
| | | å
¥å£ é¨é¢/ç¼æ æå¡å±(DeviceService) èµæºå± 驱å¨/ä¼ è¾/æå¡ç«¯ |
| | | âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ |
| | | èªå¨å â⺠AutoDeviceFacade â⺠ExecuteCommandAsync â⺠ReserveAsync(é¢çº¦,åç§çº¦) |
| | | (Reserve/Release) ValidateOwner(æ
æ ) â⺠Renew(grant,1) |
| | | AcquireOperationAsync â⺠OperationLease |
| | | driver.SendCommandAsync â⺠(Local TCP / Broker RPC) |
| | | è°è¯ â⺠DebugSessionManager.RequestMaintenance â⺠ReserveAsync(Maintenance) + 120s å¿è·³ |
| | | CAN: 颿¿ç´è° driverï¼çµæº/PLC: ç» DeviceService |
| | | Broker 宿主侧 â⺠BrokerServer.ExecuteOneShotAsync åºéåæ ¡éªï¼ |
| | | â ç½åå â¡ configHash(INV-04) ⢠PhaseOf/ProbeConflict(INV-01/03) ⣠SessionGate |
| | | </pre> |
| | | <table> |
| | | <tr><th>æ ¡éªç¹</th><th>æ¹æ³</th><th>å¤±è´¥ç»æ</th></tr> |
| | | <tr><td>é¢çº¦å½å±</td><td>ResourceManager.ValidateOwner â Renew(grant,1)</td><td>PERMISSION_DENIED</td></tr> |
| | | <tr><td>æä½äºæ¥</td><td>AcquireOperationAsync â OperationLease</td><td>ResourceConflictException</td></tr> |
| | | <tr><td>Broker åºéæ
æ </td><td>PhaseOf==Active 䏿 holder</td><td>RejectedStaleLease / RECOVERY_REQUIRED</td></tr> |
| | | <tr><td>é
ç½®ä¸è´</td><td>configHash 对账</td><td>RejectedConfigMismatch(INV-04)</td></tr> |
| | | <tr><td>ç§çº¦ç»æ</td><td>Coordinator.Renew(grant,ttl)</td><td>失败â¥2 â LeaseLost / è¿æ RECOVERY_REQUIRED</td></tr> |
| | | </table> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s8">8ãå
³é®æ°æ®ç»æä¸è§</h2> |
| | | <div class="card"> |
| | | <table> |
| | | <tr><th>ç±»å</th><th>æå¨</th><th>ä½ç¨</th></tr> |
| | | <tr><td><code>ResourceOwnerToken</code></td><td>Contracts</td><td>è°ç¨è
身份(OwnerType+OwnerId+TokenId GUID)ï¼ç§çº¦æ TokenId ç´¢å¼ï¼é¡»å¤ç¨åä¸å®ä¾</td></tr> |
| | | <tr><td><code>ResourceKey</code></td><td>Contracts</td><td>(deviceId,"Generic") èµæºé®ï¼ä»²è£ä¸é¢çº¦çç²åº¦</td></tr> |
| | | <tr><td><code>IOperationLease</code>/OperationLease</td><td>èµæºå±</td><td>忬¡æä½äºæ¥ç§çº¦ï¼DeviceService å
usingï¼</td></tr> |
| | | <tr><td><code>IAutoDeviceLease</code>/AutoDeviceLease</td><td>AutoDeviceFacade</td><td>ä½ç¨åç§çº¦ + 8s å¿è·³ + LeaseLost</td></tr> |
| | | <tr><td><code>DeviceCommandResult</code></td><td>Contracts</td><td>{Success,Readback,RawResponse,ErrorCode,LatencyMs}</td></tr> |
| | | <tr><td><code>DebugCommand</code>(+åç±»)</td><td>DeviceDebug.Entity</td><td>颿¿âæå¡çå½ä»¤å¯¹è±¡(PowerSet/CanSend/PlcWriteâ¦)</td></tr> |
| | | <tr><td><code>DebugSession</code></td><td>DeviceDebug.Entity</td><td>ä¼è¯ç¶ææºæä¹
å(debug.db)</td></tr> |
| | | <tr><td><code>SubmitBody</code>/<code>ResultBody</code>/<code>IpcEnvelope</code></td><td>ResourceContracts.BrokerIpc</td><td>Broker RPC çº¿æ ¼å¼(设å¤/æä½ç /è½½è·/èµæºé®/客æ·ç«¯å®ä¾ï¼ç¶æ+读å+epoch)</td></tr> |
| | | <tr><td><code>LeaseGrant</code></td><td>ResourceContracts</td><td>arb.db ç§çº¦åæ®(LeaseId/Generation/Epoch/Expires)</td></tr> |
| | | <tr><td>å½ä»¤ä¸² / <code>EV:RECV</code></td><td>SimulatorFraming åè®®</td><td>SEND:/QUERY:/HELLO: 䏿¨éè¡ï¼4B 大端é¿åº¦+UTF8 å帧</td></tr> |
| | | <tr><td><code>CanFrame</code>/<code>CanFrameDisplay</code></td><td>CanSimulator / DeviceDebug</td><td>æ»çº¿å¸§æ¨¡å / 颿¿æ¾ç¤ºè¡</td></tr> |
| | | </table> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s9">9ãç±»å¼ç¨å
³ç³»æ»å¾</h2> |
| | | <div class="card"> |
| | | <pre> |
| | | [èªå¨å] CanBusService ââusesââ⺠IAutoDeviceFacade(AutoDeviceFacade) |
| | | â uses |
| | | [è°è¯] DeviceDebugTab âââ â¼ |
| | | â â IDeviceService(DeviceService) |
| | | âç´è° â â uses |
| | | â¼ â¼ ââââââââââââ´ââââââââââââ |
| | | IDeviceDriver(CanDeviceDriver) IResourceManager IDeviceManager |
| | | â holds (LayeredResourceManager)â GetDriver |
| | | â¼ â uses â¼ |
| | | ICanTransport âââ ILeaseCoordinator 注å表: deviceIdâCanDeviceDriver |
| | | â â â â |
| | | NodeChannelTransport BrokerRpcTransport â (Broker 设å¤=CreateBrokerProxy) |
| | | â â â¼ |
| | | TCP 9000 å½å管é DbLeaseStore(arb.db) |
| | | â â |
| | | â¼ â¼ |
| | | TcpSimulatorHost BrokerServer ââ(宿主å
å建)ââ⺠CanDeviceDriver(NodeChannel) ââ⺠TCP 9000 |
| | | ââââââââ¬âââââââ |
| | | â¼ |
| | | ServerSession â CanCommandExecutor â CanBusSimulator/CanNode |
| | | </pre> |
| | | <div class="fx"><b>ä¸å¥è¯çè§£</b>ï¼ææä»ªå¨è°ç¨é½å½ä¸å° <code>IDeviceDriver</code>ï¼CAN çå¯ä¸å®ç° <code>CanDeviceDriver</code> ç¨ <code>ICanTransport</code> å±è½"æ¬å° TCP ç´è¿"ä¸"Broker 管éå§æ"çå·®å¼ï¼æé/ç§çº¦å¨é¨é¢å±(é¢çº¦)䏿å¡å±(æ ¡éª/æä½ç§çº¦)ä¸ Broker åºéæ
æ ä¸å¤æå
³ï¼æ°æ®æç»ä»¥å½ä»¤ä¸²/æ¨éè¡ç» TCP è½å°æ¨¡æå¨æå¡çå䏿»çº¿ä¸ã</div> |
| | | <p class="small">é
å¥é
读ï¼<a href="ç¨åºæ¶æè§£ææ¥å_V3.1_TCP模æå¨ä¸ç»ä¸é©±å¨.html">ç¨åºæ¶æè§£ææ¥å V3.1</a>ï¼è¿ç¨ææ/åè®®/åºçå¨/å¤è®¾å¤/å¿è·³å
¨æ¯ï¼ã</p> |
| | | </div> |
| | | |
| | | </div> |
| | | </body> |
| | | </html> |
| New file |
| | |
| | | <!doctype html> |
| | | <html lang="zh-CN"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>仪å¨è°ç¨ç¨åºç»æä¸ç±»è°ç¨è¯´æ</title> |
| | | <style> |
| | | :root{--navy:#112e45;--blue:#176b87;--ink:#1b2e3b;--muted:#506576;--line:#d9e2e8;--bg:#edf2f4;--green:#e4f3ec;--amber:#fff3d8;--red:#fbe9e7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.7 "Segoe UI","Microsoft YaHei",sans-serif}.layout{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:100vh}.side{position:sticky;top:0;height:100vh;overflow:auto;background:var(--navy);color:#edf5f8;padding:22px 16px}.brand{font-weight:800;font-size:17px}.side small{display:block;color:#aec5d0;margin:5px 0 18px}.side a{display:block;color:#d5e6ec;text-decoration:none;padding:6px 9px;border-radius:6px;font-size:13px}.side a:hover{background:#1b435d}main{max-width:1250px;width:100%;margin:auto;padding:26px 32px 55px}.hero{color:white;background:linear-gradient(125deg,#112e45,#176b87);padding:32px 36px;border-radius:16px}.hero h1{font-size:32px;line-height:1.25;margin:8px 0}.hero p{color:#d7eaf0;max-width:850px}.pill{display:inline-block;border:1px solid #71a3b5;border-radius:18px;padding:2px 10px;margin:4px 5px 0 0;font-size:12px}.toolbar{display:flex;gap:9px;margin:13px 0;align-items:center}.toolbar input{flex:1;min-width:200px;padding:10px;border:1px solid var(--line);border-radius:8px;font:inherit}.toolbar button{border:0;background:var(--navy);color:white;padding:10px 13px;border-radius:8px}.count{font-size:12px;color:var(--muted)}section{background:white;border:1px solid var(--line);border-radius:13px;padding:24px 28px;margin:15px 0;scroll-margin-top:14px}h2{margin:0 0 13px;color:var(--navy);font-size:22px}h3{color:#17536d;font-size:17px;margin:20px 0 7px}p{margin:8px 0}.tag{display:inline-block;padding:1px 7px;border-radius:5px;font-size:11px;font-weight:bold}.fact{background:var(--green);color:#247455}.target{background:var(--amber);color:#946313}.risk{background:var(--red);color:#9d3939}.note{padding:12px 14px;border-left:4px solid var(--blue);background:#edf7f9;border-radius:0 8px 8px 0;margin:12px 0}.warn{border-left-color:#c7871e;background:#fff8e8}.danger{border-left-color:#b74444;background:#fff0ee}table{border-collapse:collapse;width:100%;font-size:13px;margin:10px 0 16px}th,td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:8px 9px}th{background:#edf3f6;color:#24495d}tr:hover td{background:#f8fbfc}code{background:#edf2f4;color:#183e55;padding:1px 4px;border-radius:3px;font:12px Consolas,monospace;overflow-wrap:anywhere}.path{font:12px Consolas,monospace;color:#435c6a;overflow-wrap:anywhere}.call{display:grid;grid-template-columns:34px 1fr;gap:10px;padding:11px 7px;border-bottom:1px solid var(--line)}.call:last-child{border:0}.num{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#d8eef2;color:#12526b;font-weight:bold}.call strong{color:#173f55}.call p{font-size:13px;color:var(--muted);margin:2px 0}.cols{display:grid;grid-template-columns:1fr 1fr;gap:12px}.card{border:1px solid var(--line);border-radius:9px;padding:15px;background:#fbfdfe}.card h3{margin:0 0 6px}@media(max-width:820px){.layout{display:block}.side{position:static;height:auto}.side nav{display:grid;grid-template-columns:1fr 1fr}main{padding:14px}.hero{padding:23px}.hero h1{font-size:27px}section{padding:18px}.cols{grid-template-columns:1fr}table{display:block;overflow:auto}}@media print{body{background:white}.layout{display:block}.side,.toolbar{display:none}.hero{print-color-adjust:exact}.hero,section{break-inside:avoid}} |
| | | </style></head><body><div class="layout"> |
| | | <aside class="side"><div class="brand">TESTPLATFORM<br>仪å¨è°ç¨ç»æ</div><small>ç±»èè´£ · è°ç¨é¡ºåº · çå½å¨æ</small><nav> |
| | | <a href="#summary">01 ç»è®ºä¸è¾¹ç</a><a href="#layers">02 ç±»èè´£åå±</a><a href="#can">03 CAN 忬¡è°ç¨</a><a href="#lease">04 ä½ç¨åç§çº¦</a><a href="#power">05 çµæº Slot è°ç¨</a><a href="#broker">06 Broker è°ç¨</a><a href="#startup">07 å¯å¨ä¸è¿æ¥</a><a href="#result">08 ç»æä¸é误</a><a href="#gaps">09 å¾
å®å项</a><a href="#sources">10 æºç å®ä½</a></nav></aside> |
| | | <main><header class="hero"><div>TapProject / Aging.Infrastructure / DeviceBroker</div><h1>仪å¨è°ç¨ç¨åºç»æ<br>ä¸ç±»è°ç¨è¯´æ</h1><p>æ ¹æ®æºç æ¢³çæµè¯å¨ä½å¦ä½å°è¾¾é©±å¨ã驱å¨å¦ä½è®¿é®ç©çééãç»æææ ·è¿åï¼åºåå½åå®ç°ä¸ V3.1 ç®æ 设计ã</p><span class="pill">D:\TestPlatform\TapProject</span><span class="pill">离线 HTML</span><span class="pill">2026-11-09</span><span class="pill">ä¸ä½¿ç¨ OpenTAP åç Instrument</span></header> |
| | | <div class="toolbar"><input id="filter" type="search" placeholder="ç鿬页æåï¼ä¾å¦ CanBusServiceãç§çº¦ãBroker"><button id="reset">æ¸
é¤çé</button><span id="count" class="count">10 ä¸ªç« è</span></div> |
| | | <section id="summary"><h2>01ãç»è®ºä¸é
读边ç</h2><p>仪å¨è®¿é®ä¸»é¾è·¯ï¼<strong>æµè¯å¨ä½ â ç±»ååæå¡/èªå¨åé¨é¢ â èµæºææä¸æä½ç§çº¦ â DeviceService â DeviceManager â IDeviceDriver â Transport â ä»ªå¨æ DeviceBroker</strong>ãè¿åç»ææ²¿åæ¹åéå±å
è£
ï¼æç»ç±æµè¯æ¥éª¤ä¿åç»æå¹¶çæ Verdictã</p><div class="note"><b>OpenTAP æ¥å
¥çº¦æï¼</b>æ¬ç³»ç»ä¸å®ç°åç <code>Instrument</code>ãæªæ¥ä»ªå¨ç±» StepType åªç»§æ¿ <code>TestStep</code>ï¼å¨ <code>Run()</code> è°ç¨ç³»ç»æå¡ã该æ¥å
¥ç¹å±äºç®æ æ¹æ¡ï¼å½å TapProject å¯ç´æ¥è¿½è¸ªçèªå¨å示ä¾ä¸»è¦ä½äº IntegrationTest UIï¼ä¸è½æ®æ¤è®¤ä¸ºç产 OpenTAP æä»¶å·²æ¥éã</div><div class="note warn"><b>è¿æ¥ä¸ç§çº¦ä¸åï¼</b>æ¥éª¤ç§çº¦æ¯çæèµæºææï¼ç©çè¿æ¥ç±å¯ä¸ I/O 宿主ææãV3.1 è§å®é©±å¨æ³¨ååè¿æ¥ãHostReady åå°±ç»ªæ£æ¥ï¼å½å代ç 仿馿¬¡ I/O æè¿æ¥çè·¯å¾ã</div><p><span class="tag fact">代ç äºå®</span> æºç å·²æãã<span class="tag target">V3.1 ç®æ </span> è®¾è®¡è¦æ±ãã<span class="tag risk">缺å£</span> å°éå®ç°æéªè¯ã</p></section> |
| | | <section id="layers"><h2>02ãåå±ä¸ç±»èè´£</h2><table><thead><tr><th>å±</th><th>ç±» / æ¥å£</th><th>èè´£ä¸è°ç¨å
³ç³»</th><th>ç¶æ</th></tr></thead><tbody> |
| | | <tr><td>æµè¯å
¥å£</td><td><code>TestStep</code></td><td>ä¿åé»è¾è®¾å¤/Slotãééåå·¥èºåæ°ï¼è°ç¨æå¡ãåå¸ç»æã设置 Verdictãä¸è¿æ¥ç©ç设å¤ï¼ä¸å建åå®¶ SDKã</td><td><span class="tag target">è®¡åæ¥å
¥</span></td></tr> |
| | | <tr><td>ç±»åå API</td><td><code>ICanBusService / CanBusService</code></td><td>æ ¡éª CAN 帧ãç¼ç å½ä»¤ãè§£æè¯»åã忬¡è°ç¨èµ° Facadeï¼å¤æä½å¯åç¨ Leaseã</td><td><span class="tag fact">å·²æå®ç°</span></td></tr> |
| | | <tr><td>èªå¨åé¨é¢</td><td><code>IAutoDeviceFacade / AutoDeviceFacade</code></td><td>忬¡ ReserveâExecuteâReleaseï¼æ Acquire åç± Lease.Dispose éæ¾é¢çº¦ã</td><td><span class="tag fact">å·²æå®ç°</span></td></tr> |
| | | <tr><td>Slot æå¡</td><td><code>PowerSupplyService</code>ã<code>SlotDeviceMappingResolver</code></td><td>æ Slot+Capability è§£æç«¯ç¹/èµæºé®ï¼å®æçµæºè®¾å®ãæµéãç¶ææ¥è¯¢ã</td><td><span class="tag fact">å·²æå®ç°</span></td></tr> |
| | | <tr><td>è®¾å¤æ§è¡æå¡</td><td><code>IDeviceService / DeviceService</code></td><td>æ¥é©±å¨ãæ ¡éª Ownerãåå¾å次æä½ç§çº¦ãè°ç¨ Driver å¹¶å
è£
ç»æã</td><td><span class="tag fact">å·²æå®ç°</span></td></tr> |
| | | <tr><td>èµæºææ</td><td><code>IResourceManager</code>ãOwner TokenãOperation Lease</td><td>Owner Reservation è¦çæ¥éª¤ä½ç¨åï¼Operation Lease è¦ç䏿¬¡ I/O çæ®µï¼ä¸¤è
ä¸å¯æ··ä¸ºä¸è°ã</td><td><span class="tag fact">å·²ææ¥å£</span></td></tr> |
| | | <tr><td>驱å¨ç®¡ç</td><td><code>IDeviceManager / DeviceManager</code></td><td>æ DeviceId ä¿å Driverãç¼åç¶æãæä¾è¿æ¥/æå¼ APIã<code>RegisterDriver()</code> åªæ³¨åï¼ä¸èªå¨ Connectã</td><td><span class="tag fact">å·²æå®ç°</span></td></tr> |
| | | <tr><td>驱å¨å建/åè®®</td><td><code>DriverFactory</code>ã<code>IDeviceDriver</code>ã<code>CanDeviceDriver</code>ãSCPI/ModBus/S7 adapters</td><td>æ transport å建驱å¨å¹¶å°è£
å议交äºï¼Serial 忝尿ªå®ç°ã</td><td><span class="tag fact">é¨åå®ç°</span></td></tr> |
| | | <tr><td>ä¼ è¾ä¸å®¿ä¸»</td><td><code>ICanTransport</code>ã<code>NodeChannelTransport</code>ã<code>BrokerRpcTransport</code>ã<code>BrokerServer</code></td><td>åºå Local ééä¸ Broker IPCï¼Broker 宿主ææå
¶é
ç½®ä¸çå®é©±å¨ã</td><td><span class="tag fact">å·²æå®ç°</span></td></tr></tbody></table><div class="note">ä¾èµæ¹åï¼StepType â ç¨³å®æå¡ API/client â æå¡å®ç° â èµæº/设å¤ç®¡çå¥çº¦ â Driver å¥çº¦ â Transportãä¸å±ä¸è¦ new åå®¶ SDKãç´è¿ IP/䏲壿ä¾èµ Broker ç§æå®ç°ã</div></section> |
| | | <section id="can"><h2>03ãCAN 忬¡è°ç¨ï¼æ¯æ¡æä½åç¬é¢çº¦</h2><p>示ä¾ï¼<code>ICanBusService.SendFrameAsync(deviceId, frameId, data)</code>ã</p> |
| | | <div class="call"><div class="num">1</div><div><strong>TestStep æå½åæµè¯ UI</strong><p>æä¾é»è¾ deviceIdãCAN ID åæ°æ®åèãTestStep æ¯é¢ææ¥å
¥ç¹ï¼å½å坿¥å°çèªå¨åè°ç¨å
¥å£ä¸»è¦å¨ IntegrationTest ç AutoRunBtn_Clickã</p></div></div> |
| | | <div class="call"><div class="num">2</div><div><strong>CanBusService.SendFrameAsync(deviceId,...)</strong><p>æ ¡éªå¸§ ID/é¿åº¦ï¼ç¼ç 为 SEND å½ä»¤ï¼è°ç¨ AutoDeviceFacade.ExecuteAsyncã</p></div></div> |
| | | <div class="call"><div class="num">3</div><div><strong>AutoDeviceFacade.ExecuteAsync()</strong><p>å建 Ownerï¼æå½åå®ç°ç³è¯· <code>ResourceKey(deviceId, Generic)</code>ï¼å§æ DeviceServiceï¼finally ä¸éæ¾é¢çº¦ã</p></div></div> |
| | | <div class="call"><div class="num">4</div><div><strong>DeviceService.ExecuteCommandAsync()</strong><p>éè¿ DeviceManager æ¾ Driverï¼éªè¯ Generic èµæº Ownerï¼åå¾ä¸æ¬¡ Operation Leaseï¼ç¶åè°ç¨é©±å¨ã</p></div></div> |
| | | <div class="call"><div class="num">5</div><div><strong>IDeviceDriver â CanDeviceDriver â ICanTransport</strong><p>å½å CAN Driver å¨ Send/Query åè¿è¡ EnsureConnectedAsyncï¼æªè¿æ¥æ¶ç¬¬ä¸æ¬¡ I/O ä¼å»ºè¿ã</p></div></div> |
| | | <div class="call"><div class="num">6</div><div><strong>NodeChannelTransport æ BrokerRpcTransport â è¿å</strong><p>Local èµ° NodeChannelTransportï¼Broker èµ°å½å管é RPC å° DeviceBrokerãç»æåå° DeviceServiceï¼åç± CanBusService 转为 bool æå¸§ DTOã</p></div></div><div class="note warn">忬¡è°ç¨ä¼éæ¾èµæºé¢çº¦ï¼ä¸ä»£è¡¨è°ç¨ DeviceManager.DisconnectãCAN driver/transport å¯ç»§ç»ææå·²å»ºç«çè¿æ¥ï¼é¦æ¬¡ I/O æéå»ºè¿æ¯ç°ç¶ï¼ä¸æ¯ V3.1 å¯å¨å»ºè¿ç®æ ã</div></section> |
| | | <section id="lease"><h2>04ãä½ç¨åç§çº¦ï¼ä¸ä¸ª Step å
夿¬¡æä½</h2><ol><li><code>AutoDeviceFacade.AcquireAsync(deviceId, stepName)</code> é¢çº¦èµæºå¹¶è¿å <code>IAutoDeviceLease</code>ã</li><li>è°ç¨ <code>CanBusService.SendFrameAsync(lease,...)</code>ã<code>ReceiveFrameAsync(lease)</code> çéè½½ã</li><li>CanBusService å§æ Lease.Execute/Queryï¼AutoDeviceLease è¿å
¥ DeviceServiceï¼æ¯æ¬¡ I/O ååå¾ Operation Leaseã</li><li>æ¥éª¤ç»æ Dispose Leaseï¼éæ¾å¤å±é¢çº¦ï¼ä¸ä¼çä»·è°ç¨ Driver.Disconnectã</li></ol><div class="note">å¤å± Reservation 表示æ¥éª¤å½åè·å使ç¨è®¾å¤ï¼Operation Lease 表示å
·ä½å½ä»¤/ååºç段æ£å¨æ§è¡ãå
±äº«ç©çä¼è¯å®å
¨ä¸²è¡è¿ä¾èµèµæºç®¡çå¨/SessionGate çå®é
éèå´ã</div></section> |
| | | <section id="power"><h2>05ãçµæº Slot è°ç¨ï¼é»è¾ä½ç½®æ å°å°è®¾å¤</h2><ol><li><code>PowerSupplyService.ConfigureAsync(slotId, command, owner, ct)</code> æ¥æ¶ Slotãç®æ å¼å Ownerã</li><li><code>SlotDeviceMappingResolver.ResolveEndpoint(slotId, PowerSupply)</code> è§£æè®¾å¤ãééåèµæºé®ã</li><li>PowerSupplyService éªè¯èµæºææå¹¶åå¾ Operation Leaseã</li><li>ä» <code>DeviceManager.GetDriver(endpoint.DeviceId)</code> å Driverï¼å SCPI 设置并æ¥è¯¢è¯»åã</li><li>è¿å <code>PowerOperationResult</code>ï¼å®æµå¼ãåå§ååºãé误ç ãèæ¶ã</li></ol><div class="note warn">CAN Facade å½åç³è¯· <code>deviceId:Generic</code>ï¼çµæºæå¡æ Slot æ å°èµæºé®ææï¼å¯è½ç»åå°ééãStep ä¸åºèªè¡çæµ Owner/ResourceKeyï¼éç»ä¸ typed API æéé级 lease å约ã</div></section> |
| | | <section id="broker"><h2>06ãBroker è°ç¨é¾ï¼å®¢æ·ç«¯ä»£ç䏿æå®ç©</h2><div class="cols"><div class="card"><h3>客æ·ç«¯ä¾§</h3><p>Bootstrapper 为 Broker é
ç½®å建设å¤ä»£ç Driverï¼æ³¨å
¥ BrokerRpcTransportï¼ä¸å¡å±ä»è°ç¨åä¸ç±»åå APIã</p></div><div class="card"><h3>Broker 宿主</h3><p>BrokerServer ææçå®é
ç½®åçå® Driverï¼å¨è®¾å¤ gate 䏿§è¡è¯·æ±ãç©ç socket/串å£/SDK ä¼è¯åªå½å¯ä¸ I/O 宿主ã</p></div></div><div class="call"><div class="num">1</div><div><strong>BrokerRpcTransport</strong><p>æ SEND/QUERY ç¼ææä½ç å payloadï¼æºå¸¦ DeviceIdãclient instanceãé
ç½® Hashã</p></div></div><div class="call"><div class="num">2</div><div><strong>BrokerClientChannel</strong><p>建ç«/å¤ç¨å½å管éï¼Hello æ¡æï¼ç¨ CorrelationId å
³è请æ±ååºå¹¶è®¾ç½®çå¾
æéã</p></div></div><div class="call"><div class="num">3</div><div><strong>BrokerServer</strong><p>å¤ç CONNECT/SEND/QUERY/STATUSï¼æéå建çå® Driverãè¿æ¥å¹¶æ§è¡ã</p></div></div><div class="call"><div class="num">4</div><div><strong>çå® Driver â ç©ç Transport â 仪å¨</strong><p>Broker è¿åç¶æä¸è¯»åï¼ä»£çæ¸
çä¼ è¾å°è£
å交åæå¡å±ã</p></div></div><div class="note danger">Broker ä¸å¯è¾¾æ¶ï¼TestStep ä¸å¯èªè¡åæ¢å° Local ç´è¿åä¸ä»ªå¨ï¼å¦åå¯è½å½¢æåä¸ä¸ª PhysicalSessionKey çå主æ§å¶ãåå½ä»¤å·²æäº¤ä½è¶
æ¶ï¼åºè§ä¸º Unknownï¼å
读å/æ¢å¤ï¼ä¸ç²ç®éåã</div></section> |
| | | <section id="startup"><h2>07ãå¯å¨ä¸è¿æ¥çå½å¨æï¼æ¥å£åå¨ä¸ä»£è¡¨èªå¨æ§è¡</h2><table><thead><tr><th>ç¯è</th><th>å½åæºç äºå®</th><th>V3.1 ç®æ / å·®è·</th></tr></thead><tbody> |
| | | <tr><td>åºç¡è®¾æ½è£
é
</td><td>Bootstrapper å建 ResourceManagerãDeviceManagerãDeviceServiceãPowerSupplyServiceãAutoFacadeãCanBusServiceã</td><td>å·²æç´¢å°ç Bootstrapper è°ç¨ç¹å¨ Plugin.IntegrationTestï¼æªæ®æ¤ç¡®è®¤ç产主ç¨åºå¯å¨å·²æ¥å
¥ã</td></tr> |
| | | <tr><td>Local 注å</td><td><code>LoadDevicesFromConfig()</code> è¯»åæ å°ä½å建æ¬å° Driver ä»ä¸º TODOã</td><td>æçæé
置读å驱å¨å®ä¹ãæ ¸å¯¹å¯ä¸å®¿ä¸»å注åã</td></tr> |
| | | <tr><td>Driver 注å</td><td>DeviceManager.RegisterDriver ååå
¸/åå§ç¶æ/äºä»¶è®¢é
ï¼ä¸æ§è¡ Connectã</td><td>注ååç±å®¿ä¸»è¿æ¥æ¬å®¿ä¸»è®¾å¤å¹¶æ£æ¥ Readyã</td></tr> |
| | | <tr><td>CAN è¿æ¥</td><td>CanDeviceDriver 馿¬¡ Send/Query æ¶ EnsureConnectedAsyncã</td><td>HostReady å建è¿å¹¶å¥åº·æ£æ¥ï¼ä¸è®©é¦æ¬¡æµè¯å¨ä½æ¿æ
è¿æ¥ã</td></tr> |
| | | <tr><td>Broker è¿æ¥</td><td>客æ·ç«¯æ³¨å代çï¼BrokerServer å¨ CONNECT æé¦æ¬¡æä½æ¶å¯å建/è¿æ¥çå® Driverã</td><td>çå®ç©çè¿æ¥çå¨ Broker 宿主ï¼ä»£çåªå IPCã</td></tr> |
| | | <tr><td>SCPI è¿æ¥</td><td>å½å ScpiDriverAdapter.ConnectAsync ä¼åé <code>*RST</code>ã</td><td>èªå¨è¿æ¥åæåº Resetï¼Connect åªå»ºé¾å¹¶è¿è¡æ å¯ä½ç¨æ¢æµã</td></tr> |
| | | <tr><td>æ¥éª¤ç»æ</td><td>Dispose éæ¾èµæºé¢çº¦ï¼ä¸çäº DeviceManager.Disconnectã</td><td>è¿æ¥ç±å®¿ä¸»ææï¼æ¥éª¤ç»æä¸æå¼ã</td></tr> |
| | | <tr><td>å
³é/éå¯</td><td>DeviceManager æåè®¾å¤ Connect/Disconnectï¼æªè§å®æ´ç»ä¸çå½å¨æåè°ã</td><td>å
³ééæç©ºãå®å
¨å¤çã读ååæå¼ï¼éå¯è¿å
¥æ¢å¤é¨ç¦ï¼ååå¸ HostReadyã</td></tr></tbody></table><div class="note">建议 DeviceManager 管ç驱å¨å®ä¾åå设å¤è¿æ¥ï¼å®¿ä¸»çº§ DeviceService æç¬ç«è¿æ¥åè°å¨è´è´£æ³¨ååæ¹éè¿æ¥ãæ±æ» Connected/Readyã失败é离ãæåºå
³éãä¸è¦å¨æ¯ä¸ª Run() ä¸ Connect/Disconnectã</div></section> |
| | | <section id="result"><h2>08ãç»æä¸é误边ç</h2><table><thead><tr><th>å±</th><th>è¿åå¼</th><th>å¤å®è¾¹ç</th></tr></thead><tbody><tr><td>Driver</td><td>åå§ååºãç¶æãå¼å¸¸/è¿æ¥äºä»¶ã</td><td>䏿¯ DUT Pass/Failã</td></tr><tr><td>DeviceService</td><td><code>DeviceCommandResult</code>ï¼æåã读åãé误ç /ä¿¡æ¯ãå»¶è¿ã</td><td>å½ä»¤äº¤æ¢æåä¸ä¸å®çäºå·¥èºåæ ¼ã</td></tr><tr><td>CanBusService</td><td>åé boolãæ¥æ¶ CanFrameDataã</td><td>ç产 Step åºä¿çå¯è¯æé误ï¼é¿å
åªæ boolã</td></tr><tr><td>PowerSupplyService</td><td>PowerOperationResultï¼å®æµå¼ãåå§ååºãé误ãå»¶è¿ã</td><td>ç±ä¸å¡æ¥éª¤æéå¼å¤å®ã</td></tr><tr><td>TestStep</td><td><span class="tag target">ç®æ </span>è®°å½è¾å
¥/读æ°/åä½/éå¼/èæ¶å¹¶è®¾ Verdictã</td><td>è®¾å¤æ
éé常为æ§è¡ Errorï¼æµéè¶
éææ¯å·¥èº Failï¼ç»æ Unknown è¦æ¢å¤ï¼ä¸ç²ç®éåã</td></tr></tbody></table></section> |
| | | <section id="gaps"><h2>09ã建议ä¼å
å®åçæ¥å£è¾¹ç</h2><ol><li>ç» TestStep æä¾ç¨³å® client API ä¸ DTOï¼å¦ OpenTAP Engine ä¸ Aging.Infrastructure æ¡æ¶ä¸å
¼å®¹ï¼ç¨çæ¬å IPCã</li><li>æ Bootstrapper æ¥å
¥ç产ç»åæ ¹ï¼å è½½å®æ´é
ç½®ã驱å¨å®ä¹å Local/Broker å½å±ã</li><li>å®ç°æ³¨ååè¿æ¥åè°ãå¥åº·æ£æ¥ãHostReady é¨ç¦ãæééè¯åæ
éé离ã</li><li>ç»ä¸ CANãçµæºçæå¡ç OwnerãSlotãChannelãResourceKey ç³è¯·æ¹å¼ã</li><li>æ SCPI <code>*RST</code>ãè¾åºè®¾ç½®ãå®å
¨å¨ä½ä» Connect æä¸ºæ¾å¼åæ§æä½ã</li><li>确认å
±äº« PhysicalSession ä¸çæä½éè¦ç宿´ I/O çæ®µï¼å¹¶å®ä¹è¶
æ¶/Unknown è¯ä¹ã</li></ol><div class="note danger">è¯æ®è¾¹çï¼æ¬æä¸ºæºç éæé
读å V3.1 设计对ç
§ï¼æ²¡æè¿è¡ä»ªå¨ã模æå¨ææ´ç«åºç¨ãèªå¨è¿æ¥ãHostReady 忢å¤é¨ç¦åæ ä¸ºç®æ ï¼ä¸æ¯å·²éªæ¶äºå®ã</div></section> |
| | | <section id="sources"><h2>10ãæºç å®ä½</h2><table><thead><tr><th>ç±»å</th><th>æä»¶</th><th>æ¥çå
容</th></tr></thead><tbody> |
| | | <tr><td>å¯å¨/注å</td><td class="path">D:\TestPlatform\TapProject\Aging.Infrastructure\InfrastructureBootstrapper.cs</td><td>InitializeãLoadDevicesFromConfigãRegisterBrokeredDriversãRegisterDevice</td></tr> |
| | | <tr><td>é¨é¢/ç§çº¦</td><td class="path">D:\TestPlatform\TapProject\Aging.Infrastructure\Services\AutoDeviceFacade.cs</td><td>Execute/QueryãAcquireãAutoDeviceLease.Dispose</td></tr> |
| | | <tr><td>CAN API</td><td class="path">D:\TestPlatform\TapProject\Aging.Infrastructure\Services\CanBusService.cs</td><td>ç±»ååè°ç¨ãå½ä»¤ç¼ç ãç§çº¦éè½½</td></tr> |
| | | <tr><td>æ§è¡/管ç</td><td class="path">D:\TestPlatform\TapProject\Aging.Infrastructure\Services\DeviceService.cs<br>D:\TestPlatform\TapProject\Aging.Infrastructure\Core\DeviceManager.cs</td><td>æééªè¯ãæä½ç§çº¦ãDriver 注åä¸è¿æ¥ç¶æ</td></tr> |
| | | <tr><td>çµæº</td><td class="path">D:\TestPlatform\TapProject\Aging.Infrastructure\Services\PowerSupplyService.cs<br>D:\TestPlatform\TapProject\Aging.Infrastructure\Services\SlotDeviceMappingResolver.cs</td><td>Slot æ å°åçµæºå¨ä½</td></tr> |
| | | <tr><td>驱å¨/ä¼ è¾</td><td class="path">D:\TestPlatform\TapProject\Aging.Infrastructure\Drivers\DriverFactory.cs<br>D:\TestPlatform\TapProject\Aging.Infrastructure\Drivers\CanDeviceDriver.cs<br>D:\TestPlatform\TapProject\Aging.Infrastructure\Drivers\BrokerRpcTransport.cs<br>D:\TestPlatform\TapProject\Aging.Infrastructure\Broker\BrokerClientChannel.cs</td><td>Driver å建ãæé建è¿ãBroker RPC</td></tr> |
| | | <tr><td>Broker 宿主</td><td class="path">D:\TestPlatform\TapProject\DeviceBroker\BrokerServer.cs</td><td>çå® Driver å建ãè¿æ¥å I/O</td></tr> |
| | | <tr><td>å½åèªå¨å示ä¾</td><td class="path">D:\TestPlatform\TapProject\Plugin.IntegrationTest\MainWindow.xaml.cs</td><td>InitializeAutoServicesãRegisterCanDriverãAutoRunBtn_Click</td></tr> |
| | | <tr><td>ç®æ 设计</td><td class="path">D:\06-产åå¼å\18-è±é©¾æ§å¶å¨èå设å¤\Local + DeviceBroker æ··åæ¶æè¯¦ç»è®¾è®¡è¯´æä¹¦ V3.1.html</td><td>第 23 ç« ï¼å¯å¨è¿æ¥ãHostReadyãæ¢å¤ãå
³éä¸ SCPI</td></tr></tbody></table></section> |
| | | <footer style="text-align:center;color:#657987;font-size:12px;padding:17px">仪å¨è°ç¨ç¨åºç»æä¸ç±»è°ç¨è¯´æ · æ¬å°æºç éææ¢³ç · 2026-11-09</footer></main></div> |
| | | <script>const f=document.getElementById('filter'),ss=[...document.querySelectorAll('main section')],c=document.getElementById('count');function go(){let q=f.value.trim().toLowerCase(),n=0;for(const s of ss){let ok=!q||s.innerText.toLowerCase().includes(q);s.hidden=!ok;if(ok)n++}c.textContent=n+' / '+ss.length+' ä¸ªç« è'}f.addEventListener('input',go);document.getElementById('reset').onclick=()=>{f.value='';go();f.focus()};</script></body></html> |
| New file |
| | |
| | | <!DOCTYPE html> |
| | | <html lang="zh-CN"> |
| | | <head> |
| | | <meta charset="utf-8"/> |
| | | <meta name="viewport" content="width=device-width, initial-scale=1"/> |
| | | <title>仪å¨è°è¯å¹³å° ç¨åºæ¶æè§£ææ¥åï¼V3.1 · TCP 模æå¨ + ç»ä¸é©±å¨ + å¤è®¾å¤å¹¶åï¼</title> |
| | | <style> |
| | | :root{--bg:#f7f8fa;--card:#fff;--ink:#1f2430;--muted:#5b6472;--line:#e4e8ef;--accent:#2f6fed;--warn:#b7791f;--bad:#c0392b;--ok:#2e8b57;--code:#0d1117;} |
| | | *{box-sizing:border-box} |
| | | body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.7 "Segoe UI","Microsoft YaHei",Arial,sans-serif} |
| | | .wrap{max-width:1080px;margin:0 auto;padding:32px 20px 80px} |
| | | h1{font-size:26px;margin:0 0 6px} |
| | | h2{font-size:20px;margin:34px 0 12px;padding-bottom:6px;border-bottom:2px solid var(--line)} |
| | | h3{font-size:16px;margin:20px 0 8px;color:var(--accent)} |
| | | .sub{color:var(--muted);margin:0 0 18px} |
| | | .card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px 18px;margin:14px 0;box-shadow:0 1px 2px rgba(0,0,0,.03)} |
| | | pre{background:var(--code);color:#e6edf3;border-radius:10px;padding:14px 16px;overflow:auto;font:13px/1.55 "Cascadia Code",Consolas,monospace;margin:10px 0} |
| | | code{font-family:"Cascadia Code",Consolas,monospace;background:#eef1f6;padding:1px 5px;border-radius:4px;font-size:13px} |
| | | pre code{background:none;padding:0;color:inherit} |
| | | table{border-collapse:collapse;width:100%;margin:10px 0;font-size:14px} |
| | | th,td{border:1px solid var(--line);padding:7px 10px;text-align:left;vertical-align:top} |
| | | th{background:#eef2f8} |
| | | .tag{display:inline-block;padding:1px 8px;border-radius:999px;font-size:12px;font-weight:600;margin-right:4px} |
| | | .t-local{background:#e6f0ff;color:#1b4fa0} |
| | | .t-broker{background:#fdeee0;color:#a35a12} |
| | | .t-server{background:#e7f6ec;color:#1f7a3d} |
| | | .ok{color:var(--ok);font-weight:600} |
| | | .bad{color:var(--bad);font-weight:600} |
| | | .warn{color:var(--warn);font-weight:600} |
| | | .small{font-size:13px;color:var(--muted)} |
| | | .toc{columns:2;font-size:14px} |
| | | .toc a{color:var(--accent);text-decoration:none} |
| | | .kv{color:#8b949e} |
| | | .hl{background:#fff6d6;border-left:4px solid var(--warn);padding:10px 12px;border-radius:6px;margin:10px 0} |
| | | .fx{background:#e8f5e9;border-left:4px solid var(--ok);padding:10px 12px;border-radius:6px;margin:10px 0} |
| | | </style> |
| | | </head> |
| | | <body> |
| | | <div class="wrap"> |
| | | |
| | | <h1>仪å¨è°è¯å¹³å° · ç¨åºæ¶æè§£ææ¥å</h1> |
| | | <p class="sub">V3.1 ç»æï¼CAN 模æå¨ç¬ç« TCP æå¡ + ç»ä¸ <code>CanDeviceDriver</code> + å¤è®¾å¤å¹¶åè°è¯ + æ»çº¿åºçå¨ + ç»´æ¤ç§çº¦å¿è·³ã<br/> |
| | | æ¬æ¥åæè¿°<b>ææ°ä»£ç </b>çè¿è¡é»è¾ï¼ä¸ä»åºå®é
å®ç°åæ¥ï¼2026-11-09ï¼ã</p> |
| | | |
| | | <div class="card"> |
| | | <b>ç®å½</b> |
| | | <div class="toc"> |
| | | <div><a href="#s1">1. è¿ç¨ä¸æ°æ®ææ</a></div> |
| | | <div><a href="#s2">2. å·¥ç¨ä¸å
³é®æä»¶æ¸
å</a></div> |
| | | <div><a href="#s3">3. å¯å¨åå§åæ¶åº</a></div> |
| | | <div><a href="#s4">4. è®¾å¤æ³¨åä¸ç»ä¸é©±å¨åæ´¾</a></div> |
| | | <div><a href="#s5">5. TCP 线åè®®ä¸æ¨¡æå¨æå¡ç«¯</a></div> |
| | | <div><a href="#s6">6. æ»çº¿è·¯ç±ä¸åºçå¨</a></div> |
| | | <div><a href="#s7">7. è°è¯é¡µå¤æ ç¾å¤ä¼è¯</a></div> |
| | | <div><a href="#s8">8. ç»´æ¤ä¼è¯ç¶ææºä¸ç§çº¦å¿è·³</a></div> |
| | | <div><a href="#s9">9. æ¥ææ¶åå
¨é¾è·¯ï¼Local / Brokerï¼</a></div> |
| | | <div><a href="#s10">10. é误å¤çä¸ä¸åé</a></div> |
| | | <div><a href="#s11">11. 代ç ç´¢å¼</a></div> |
| | | <div><a href="#s12">12. å·²ç¥éå¶</a></div> |
| | | </div> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s1">1ãè¿ç¨ä¸æ°æ®ææ</h2> |
| | | <div class="card"> |
| | | <p>ç³»ç»ç± <b>3 ç±»è¿ç¨ + 1 个æå¡è¿ç¨</b> ç»æï¼CAN æ»çº¿ä¸çç±ç¬ç«æå¡è¿ç¨ç»ä¸æç®¡ï¼</p> |
| | | <pre> |
| | | ââââââââââââââââââââââââââââââââââ CanSimulatorServer.exeï¼æ»çº¿æå¨ï¼ç¬ç«è¿ç¨ï¼ ââââââââââââââââââââââââââââââââââ |
| | | â TcpListener 127.0.0.1:9000 â |
| | | â ââ TcpSimulatorHost æ¥åè¿æ¥ï¼æ¯è¿æ¥ä¸ä¸ª ServerSession â |
| | | â ââ ServerSession HELLO ç¶ææº + ä¸é®ä¸çä¿åºååº + EV:RECV æ¨éï¼åé串è¡ãå½ä»¤ææåé¨ï¼ â |
| | | â ââ CanBusManager æåæå»º CanBusSimulatorï¼(bus,nodeIndex) å¯ä¸æ§ä»²è£ â |
| | | â ââ CanCommandExecutor å½ä»¤ä¸²æ§è¡ï¼SEND/QUERY/AUTO_RESPONSE/BUS_ECHO/FILTER/LOG/STATUSâ¦ï¼ â |
| | | â ââ CanBusSimulator å¤ç¨åè·¯ç±/èªå¨ååº/æ»çº¿æ¥å¿ + <b>æ»çº¿çº§åºçå¨ EchoResponderToSender</b> â |
| | | â UIï¼çå¬ç¶æ · èç¹æ · 宿¶å¸§è¡¨(TX/RX) · ç»è®¡ · æ¥å¿ · åºçå¨å¤éæ¡ â |
| | | âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ |
| | | â² TCP 9000ï¼NodeChannelTransportï¼ â² TCP 9000ï¼å®¿ä¸»ç©çä¼è¯ï¼ |
| | | â â |
| | | âââââââââ´ââââââââââââââââ å½å管é RPC ââââââââââââââ´ââââââââââââââ |
| | | â Plugin.IntegrationTest â âââââââââââââââ⺠â DeviceBroker.exe â |
| | | â ï¼ä¸»ç¨åºï¼Local 设å¤ï¼ â aging.broker- â ï¼Broker å
±äº«è®¾å¤å®¿ä¸»ï¼ â |
| | | â CAN-001/002 ⦠â b01.v1 â CAN-003/004 ⦠â |
| | | ââââââââââââââââââââââââââ âââââââââââââââââââââââââââââ |
| | | |
| | | æ°æ®æä»¶ï¼%LOCALAPPDATA%\PluginIntegrationTestï¼ï¼ |
| | | data.db 设å¤å®ä¹ï¼å« ExecutionMode=Local/BrokerãBrokerIdãEndpointãPhysicalSessionKeyï¼ |
| | | arb.db è·¨è¿ç¨ç§çº¦ä»²è£ï¼resource_state / lease_history / recovery_checkpoint / authority_metaï¼ |
| | | debug.db è°è¯ä¼è¯ï¼debug_session ç¶ææºæä¹
å + æä½æ¥å¿ï¼ |
| | | </pre> |
| | | <p><span class="tag t-local">Local ç´è¿</span>客æ·ç«¯è¿ç¨å
<code>CanDeviceDriver</code> ç» <code>NodeChannelTransport</code> ç´æ¥ TCP è¿æ¨¡æå¨ã<br/> |
| | | <span class="tag t-broker">Broker 代ç</span>客æ·ç«¯ <code>CanDeviceDriver</code> ç» <code>BrokerRpcTransport</code> èµ°å½å管éå§æå®¿ä¸»ï¼å®¿ä¸»å
åç¨ <code>CanDeviceDriver(NodeChannel)</code> è¿æ¨¡æå¨ã<br/> |
| | | <span class="tag t-server">æå¡</span>CanSimulatorServer æ¯å¯ä¸çæ»çº¿ä¸çæå¨ï¼ææè¿ç¨çååæ»çº¿å
¶å®æ¯<b>åä¸ä¸ªè¿ç¨å
çå䏿»çº¿å¯¹è±¡</b>ï¼å æ¤è·¨è¿ç¨è®¾å¤å¤©ç¶äºéã</p> |
| | | <p class="small">䏿§ç»æçå
³é®å·®å¼ï¼ä¸åæ"è¿ç¨å
static æ»çº¿åå
¸"ï¼è·¨è¿ç¨é离é®é¢ä»æ ¹ä¸æ¶é¤ï¼CAN 驱å¨åªå©ä¸ä¸ªç±»ã</p> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s2">2ãå·¥ç¨ä¸å
³é®æä»¶æ¸
å</h2> |
| | | <div class="card"> |
| | | <table> |
| | | <tr><th>å±</th><th>æä»¶</th><th>èè´£</th></tr> |
| | | <tr><td>模æå¨ç±»åº</td><td>CanSimulator\CanBusSimulator.cs · CanNode.cs · CanFrame.cs · <b>SimulatorFraming.cs</b></td><td>èææ»çº¿/èç¹/å¸§ï¼æ°å¢ TCP å帧ç¼è§£ç ï¼4B 大端é¿åº¦+UTF8ï¼</td></tr> |
| | | <tr><td rowspan="4">模æå¨æå¡ç«¯<br/>CanSimulatorServer</td><td>CanSimulatorServer.Core\TcpSimulatorHost.cs</td><td>çå¬/æ¥åè¿æ¥/ä¼è¯ç»è®°ï¼port=0 éæºç«¯å£ï¼æµè¯åç¯ï¼</td></tr> |
| | | <tr><td>CanSimulatorServer.Core\ServerSession.cs</td><td>åè¿æ¥åè®®ç¶ææºãä¿åºååºãEV æ¨éãå½ä»¤ææ¨éæåé¨</td></tr> |
| | | <tr><td>CanSimulatorServer.Core\CanBusManager.cs</td><td>æ»çº¿æ³¨å表 + (bus,node) å¯ä¸ä»²è£ + èç¹âä¼è¯è¶æ°´</td></tr> |
| | | <tr><td>CanSimulatorServer.Core\CanCommandExecutor.cs</td><td>å½ä»¤ä¸²æ§è¡å¨ï¼å« BUS_ECHO åºçå¨ãAUTO_RESPONSEãFILTERãLOGãSTATUSï¼</td></tr> |
| | | <tr><td>模æå¨æå¡ UI</td><td>CanSimulatorServer.App\App.cs · MainWindow.cs</td><td>WPF çæ§çªå£ï¼èç¹æ /帧表/ç»è®¡/åºçå¨å¤éæ¡ï¼</td></tr> |
| | | <tr><td rowspan="4">驱å¨å±<br/>Aging.Infrastructure</td><td>Drivers\CanDeviceDriver.cs</td><td><b>å¯ä¸ CAN 驱å¨</b>ï¼å½ä»¤è¯ä¹ãæ¥æ¶ç¼å²ãäºä»¶ãè¿æ¥ç¶ææº</td></tr> |
| | | <tr><td>Drivers\ICanTransport.cs · NodeChannelTransport.cs · BrokerRpcTransport.cs</td><td>ä¼ è¾å端æ½è±¡ä¸ä¸¤å®ç°ï¼TCP ç´è¿ / 管é RPCï¼</td></tr> |
| | | <tr><td>Drivers\DriverFactory.cs</td><td>CAN ç»ä¸äº§åº CanDeviceDriver</td></tr> |
| | | <tr><td>InfrastructureBootstrapper.cs</td><td>è£
é
æå¡ãBroker è®¾å¤æ³¨å代ç驱å¨ãå¯å¨å¯¹è´¦</td></tr> |
| | | <tr><td>Broker 宿主</td><td>DeviceBroker\BrokerServer.cs</td><td>ä¸éå
³å¡ + SessionGate + æå¸¦æ¨é AppendPushes</td></tr> |
| | | <tr><td rowspan="5">è°è¯æä»¶<br/>Plugin.DeviceDebug</td><td>DeviceDebug.xaml(.cs)</td><td>å¤è®¾å¤å£³ï¼è®¾å¤ä¸æ(è¿æ»¤å·²å¼)+å å
¥/å
³é+TabControl</td></tr> |
| | | <tr><td>DeviceDebugTab.xaml(.cs)</td><td>å设å¤å·¥ä½åºï¼ç¬ç«ä¼è¯+颿¿+æä½æ¥å¿+ç»´æ¤æé®</td></tr> |
| | | <tr><td>Model\DebugSessionManager.cs</td><td>ä¼è¯ç¶ææº + <b>ç»´æ¤ç§çº¦å¿è·³ç»æ</b> + 令çç¼åå¤ç¨</td></tr> |
| | | <tr><td>Panels\CanDebugPanel.xaml(.cs)</td><td>CAN å¤éé壳ï¼TabControlï¼</td></tr> |
| | | <tr><td>Panels\CanChannelView.xaml(.cs)</td><td>åééè§å¾ï¼è¿æ¥/åé/æ¥æ¶/ç»è®¡ï¼ï¼BeginInvoke æ¾ç¤º</td></tr> |
| | | </table> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s3">3ãå¯å¨åå§åæ¶åº</h2> |
| | | <div class="card"> |
| | | <pre class="seq"> |
| | | â ç¨æ·æå¨å¯å¨ CanSimulatorServer.exeï¼ä¸»ç¨åºä¸ Broker é½ä¸æèµ·å®ï¼ |
| | | â TcpSimulatorHost.StartAsync(9000) çå¬ï¼UI 就绪ï¼åºçå¨é»è®¤ OFF |
| | | |
| | | â¡ å¯å¨ Plugin.IntegrationTest.exe â MainWindow.InitializePluginsï¼é¡ºåºææï¼ |
| | | 1. DeviceConfig.InitFinish â 建åº/è¿ç§» data.db |
| | | 2. SeedPresetCanDevices() â é¢ç½® CAN 设å¤ï¼<b>å¿
é¡»å
äºåºç¡è®¾æ½</b>ï¼Bootstrapper æ«åºå³å®æ³¨åï¼ |
| | | 3. InitializeAutoServices() |
| | | InfrastructureBootstrapper.Initialize(data.db) |
| | | a. DbLeaseStore(arb.db,"local-main") |
| | | b. <u>ReconcileAfterBoot</u> â SweepExpired + ApproveRecovery 忶䏿¬¡è¿ç¨æ³æ¼/è¿æç§çº¦ |
| | | c. LayeredResourceManager 注åè¿ UtilContainerï¼"ResourceManager"/"LeaseCoordinator"ï¼ |
| | | d. DeviceManager/DeviceService/AutoDeviceFacade/CanBusService |
| | | e. LoadDevicesFromConfig + RegisterBrokeredDriversï¼Broker 设å¤âCanDeviceDriver.CreateBrokerProxyï¼ |
| | | 4. èªå¨æèµ· DeviceBroker.exeï¼åå¨ Broker è®¾å¤æ¶ï¼ |
| | | â BrokerServer æé æ¶åæ · ReconcileAfterBoot(broker:...) |
| | | 5. DeviceDebug.InitFinish â æ¤æ¶ UtilContainer 就绪ï¼è½æ¿å°ä»²è£æå¡ |
| | | </pre> |
| | | <div class="hl"><b>顺åºè¦ç¹</b>ï¼å»ºåºâé¢ç½®è®¾å¤âåºç¡è®¾æ½âBrokerâDeviceDebugãè¥ DeviceDebug æ©äºåºç¡è®¾æ½ï¼UtilContainer åå° null æå¡ï¼ç»´æ¤ä»²è£ä¼è¢«éé»ç»è¿ï¼åå²ç¼ºé·ï¼å·²ä¿®ï¼ã</div> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s4">4ãè®¾å¤æ³¨åä¸ç»ä¸é©±å¨åæ´¾</h2> |
| | | <div class="card"> |
| | | <p>å
¨ç³»ç»åªæä¸ä¸ª CAN 驱å¨ç±» <code>CanDeviceDriver</code>ï¼Local/Broker å·®å¼ä¸æ²å°æé æ¶éæ©çä¼ è¾å端 <code>ICanTransport</code>ï¼ä¸å±ï¼èªå¨å <code>DeviceManager.GetDriver</code>ãè°è¯é¢æ¿ï¼å®å
¨æ æç¥ã</p> |
| | | <pre> |
| | | IDeviceDriverï¼ç»ä¸å¥çº¦ï¼ |
| | | â² |
| | | CanDeviceDriver â å½ä»¤è§£æ / _recvBuffer / DriverFrameReceived äºä»¶ / è¿æ¥ç¶ææº |
| | | ââ NodeChannelTransport (Local) TCP ç´è¿æ¨¡æå¨ï¼HELLOâå½ä»¤ä¸é®ä¸çâ读循ç¯åæµååº/æ¨éâæçº¿éè¿ |
| | | ââ BrokerRpcTransport (Broker) å½å管éå§æå®¿ä¸»ï¼SubmitBody RPCâResultBody ææ å°âè§£æ |PUSHED æå¸¦ |
| | | |
| | | åæ´¾æ¥æºï¼ |
| | | · DriverFactory.CreateDriver("CAN", endpoint) â new CanDeviceDriver(deviceId, "bus:node") // Local / 宿主ç©çä¼è¯ |
| | | · InfrastructureBootstrapper.RegisterBrokeredDrivers â CanDeviceDriver.CreateBrokerProxy(...) // Broker 客æ·ç«¯ |
| | | </pre> |
| | | <table> |
| | | <tr><th>åºæ¯</th><th>驱å¨å¦ä½äº§ç</th><th>ç©çä¼è¯å¨åª</th></tr> |
| | | <tr><td>Local 设å¤(CAN-001/002)</td><td>颿¿/å·¥å new CanDeviceDriver(NodeChannel)</td><td>æ¬è¿ç¨âTCP è¿æ¨¡æå¨</td></tr> |
| | | <tr><td>Broker 设å¤(CAN-003/004) 客æ·ç«¯</td><td>Bootstrapper 注å CreateBrokerProxy(BrokerRpc)</td><td>宿主è¿ç¨</td></tr> |
| | | <tr><td>Broker è®¾å¤ å®¿ä¸»ä¾§</td><td>BrokerServer.EnsureConnectedAsyncâDriverFactoryâCanDeviceDriver(NodeChannel)</td><td>宿主âTCP è¿æ¨¡æå¨</td></tr> |
| | | </table> |
| | | <p class="small">å
³é®ï¼<b>å
¨ç³»ç»åªæä¸ä»½"èç¹éé驱å¨"代ç </b>ââBroker 模å¼ä¸å®¿ä¸»å
é¨çç©çä¼è¯åæ ·æ¯ CanDeviceDriver(NodeChannel)ã</p> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s5">5ãTCP 线åè®®ä¸æ¨¡æå¨æå¡ç«¯</h2> |
| | | <div class="card"> |
| | | <h3>5.1 å帧</h3> |
| | | <p>4 åè<b>大端</b>é¿åº¦åç¼ + UTF8 ææ¬è¡ï¼<code>SimulatorFraming</code>ï¼ã读侧循ç¯è¯»æ»¡å¤´é¨ä¸å¸§ä½ï¼å¤©ç¶å¤çç²å
/åå
ï¼é¿åº¦éæ³æ <code>InvalidDataException</code>ï¼EOF è¿å null 触åæçº¿æç¥ã</p> |
| | | <h3>5.2 æ¶æ¯ç±»å</h3> |
| | | <table> |
| | | <tr><th>æ¹å</th><th>æ¶æ¯</th><th>å«ä¹</th></tr> |
| | | <tr><td rowspan="4">CâS</td><td><code>HELLO:{bus}:{nodeIndex}:{tag}</code></td><td>æ¡æå¹¶æè½½ (bus,nodeIndex)ï¼æ¿æ´»èç¹ãå¼å§æ¶å¸§</td></tr> |
| | | <tr><td><code>SEND:{frameId}:{data}</code></td><td>å帧ï¼å½ä»¤ä¸²éä¼ ï¼</td></tr> |
| | | <tr><td><code>QUERY:{å½ä»¤ä¸²}</code></td><td>RECV/RECV_ALL/STATUS/AUTO_RESPONSE/BUS_ECHO/FILTER/LOG/BUS_STATUSâ¦</td></tr> |
| | | <tr><td><code>DISCONNECT</code></td><td>æ³¨éæ¬è¿æ¥èç¹</td></tr> |
| | | <tr><td rowspan="3">SâC</td><td><code>OK:{payload}</code> / <code>ERR:{code}:{msg}</code></td><td>对ä¸ä¸æ¡è¯·æ±çååºï¼æ°å¥½ä¸è¡ï¼ä¿åºï¼</td></tr> |
| | | <tr><td><code>EV:RECV:{id}:{data}:{ts}:{src}</code></td><td>æ»çº¿è·¯ç±æ¨é帧ï¼ä¸»å¨æ¨éï¼src å¯ä¸ºèç¹å·æ RESPONDERï¼</td></tr> |
| | | <tr><td><code>EV:STATE:â¦</code></td><td>é¢çæ©å±</td></tr> |
| | | </table> |
| | | <h3>5.3 ServerSession ä¿åºä¸æåé¨</h3> |
| | | <pre> |
| | | 读循ç¯(å线ç¨): éè¡è¯»è¯·æ± â Process() â ååºç»"åé"ååº â FlushHeldPushes() |
| | | å½ä»¤å¤çæé´è·¯ç±äº§çç EV:RECV å
è¿ _heldPushesï¼æ»¡ 1000 丢æèï¼ï¼ |
| | | ååºåå®ååè¡¥å â ä¿è¯å®¢æ·ç«¯"é¦è¡å¿
为ååºãæ¨ééå"ã |
| | | ç©ºé²ææ¨éï¼åé串è¡å³åå³èµ°ã |
| | | </pre> |
| | | <p class="small">é误ç ï¼<code>ERR:NODE_BUSY</code>ï¼å bus å nodeIndex 被å ï¼ã<code>ERR:NOT_HANDSHAKED</code>ã<code>ERR:UNKNOWN_CMD</code>ã<code>ERR:BAD_FRAME</code>ã</p> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s6">6ãæ»çº¿è·¯ç±ä¸åºçå¨</h2> |
| | | <div class="card"> |
| | | <p>两ç§"èªå¨åå¤"è½åï¼è¯ä¹ä¸åãäºä¸å¹²æ°ï¼</p> |
| | | <table> |
| | | <tr><th>è½å</th><th>触åè
</th><th>åå¤ç»è°</th><th>å¼å
³</th></tr> |
| | | <tr><td>èç¹èªå¨ååº</td><td><b>æ¥æ¶</b>èç¹ï¼æ¶å°å¸§ï¼</td><td>å
¶å®èç¹ + èªèº«é®ç®±</td><td>éé颿¿"èªå¨ååº"ï¼<code>AUTO_RESPONSE:ON</code>ï¼åèç¹å±æ§ï¼</td></tr> |
| | | <tr><td><b>æ»çº¿åºçå¨</b>ï¼æ°ï¼</td><td>æ»çº¿æ¬èº«</td><td><b>åéè
èªå·±</b>ï¼å叧忾ï¼src=RESPONDERï¼</td><td>æå¡çªå£å¤éæ¡ / <code>QUERY:BUS_ECHO:ON</code>ï¼å <code>CanBusSimulator.EchoResponderToSender</code>ï¼</td></tr> |
| | | </table> |
| | | <pre> |
| | | OnNodeFrameSent(frame, src=node0): |
| | | 1) è·¯ç±å°å
¶å®èç¹ï¼æ¯ä¸ªæ¥æ¶èç¹è¥ AutoResponseEnabled â SendAutoResponse(å宿¶å°ç帧) |
| | | 2) è¥ EchoResponderToSenderï¼æ frame å¤å¶ãSourceNodeId="RESPONDER"ï¼ç´æ¥æéå<b>åéèç¹èªèº«</b> |
| | | â åéèç¹ FrameReceived â ServerSession æ¨é EV:RECV åè¯¥è¿æ¥ â åéè
æ¶å°"åæ¾" |
| | | </pre> |
| | | <div class="fx"><b>æä¹</b>ï¼å客æ·ç«¯è°è¯æ¶ä¹è½"å䏿¡æ¶å°ä¸æ¡åå¤"ï¼æ é第äºèç¹å¨çº¿ââè¿æ£æ¯æ CAN-003 è¿ç±»å
±äº«è®¾å¤å½ä½è¢«æµè®¾å¤éªè¯è¯·æ±/ååºçå
³é®è½åã</div> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s7">7ãè°è¯é¡µå¤æ ç¾å¤ä¼è¯</h2> |
| | | <div class="card"> |
| | | <pre> |
| | | DeviceDebugï¼å£³ï¼SimpleMaskControl æä»¶å
¥å£ï¼ |
| | | ââ é¡¶æ ï¼è®¾å¤ä¸æ(ä»
å<b>æªæå¼</b>设å¤) + [å å
¥è°è¯] + [å
³éå½å页] + å·æ° |
| | | ââ TabControl |
| | | ââ DeviceDebugTab à Nï¼æ¯ä¸ª = ä¸ä¸ªè®¾å¤ï¼ç¬ç«ä¼è¯/ç§çº¦/颿¿/æ¥å¿ï¼ |
| | | ââ ä¿¡æ¯æ (设å¤ID/åå·/è¿æ¥/çæ¬/é¢çº¦/ä¼è¯ç¶æ) |
| | | ââ [è¿å
¥ç»´æ¤æ§å¶] [éåºç»´æ¤] |
| | | ââ panelContainerï¼LoadPanel(kind) |
| | | â CanDevice â CanDebugPanel(å¤éé壳) â CanChannelView(åéé) |
| | | â PowerSupply / PLC â 对åºé¢æ¿ |
| | | ââ æä½æ¥å¿(æ¬ä¼è¯) |
| | | </pre> |
| | | <p>è§åï¼<b>ä¸ä¼ä¸è®¾å¤</b>ââå å
¥æ¶è¥è®¾å¤å·²å¼åèç¦å
¶ Tabï¼ä¸æè¿æ»¤æå·²å¼è®¾å¤ï¼å
³é Tab è° <code>CloseSessionSilently()</code> éæ¾ä¼è¯ä¸ç§çº¦ï¼è®¾å¤éæ°åå°å¯éãCAN ééå
é¨åå¥ä¸å± <code>CanDebugPanel</code> TabControlï¼å¯å¯¹å设å¤å¼å¤ééã</p> |
| | | <div class="hl"><b>æ¥æ¶æ¾ç¤ºçº¿ç¨æ¨¡å</b>ï¼CanChannelView 帧ä¸å±ç¨ <code>Dispatcher.BeginInvoke</code>ï¼å¼æ¥ï¼ãæ¾å ç¨åæ¥ <code>Invoke</code>ï¼å¨è¯»å¾ªç¯çº¿ç¨æ¨ééª¤å¢æ¶ä¸"UI 线ç¨é»å¡ç RPC ååº"å½¢æç¯å½¢çå¾
â å¼åºçå¨å³å»ç»ï¼å·²ä¿®ï¼ã</div> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s8">8ãç»´æ¤ä¼è¯ç¶ææºä¸ç§çº¦å¿è·³</h2> |
| | | <div class="card"> |
| | | <pre class="seq"> |
| | | OpenSession(deviceId) â ReadOnly |
| | | â RequestMaintenanceï¼ReserveAsync(å¤ç¨ç¼å ownerToken) æ¿ç»´æ¤ç§çº¦(TTL=300s) |
| | | â¼ |
| | | AcquiringMaintenance â ActivateMaintenance â <b>MaintenanceActive</b> |
| | | â â å¯å¨ç§çº¦å¿è·³ Timerï¼æ¯ 120s 对æ¯ä¸ª MaintenanceActive ä¼è¯ |
| | | â Coordinator.Renew(grant, 300) ç»æï¼é² TTL è¿æ |
| | | â éåºç»´æ¤ / å
³é Tabï¼CloseSession |
| | | â¼ |
| | | Closing â Closedï¼ReleaseReservationAsync ç¨åä¸ ownerToken éæ¾ç§çº¦ï¼æ ç»´æ¤ä¼è¯ååå¿è·³ï¼ |
| | | </pre> |
| | | <table> |
| | | <tr><th>æºå¶</th><th>è§£å³çé®é¢</th></tr> |
| | | <tr><td>ownerToken æ sessionId ç¼åå¤ç¨</td><td>ç§çº¦æ TokenId(GUID) ç´¢å¼ï¼æ¯æ¬¡ new ä¼å¯¼è´éæ¾è½ç©ºâç§çº¦æ³æ¼âè¿æ RecoveryRequired æ°¸ä¹
é»å¡</td></tr> |
| | | <tr><td><b>ç»´æ¤ç§çº¦å¿è·³ç»æ</b>ï¼æ°ï¼</td><td>é¿æ¶é´ç»´æ¤ä¼è¯å° 300s TTL èªç¶è¿æâBroker æ
æ RECOVERY_REQUIRED ç¦æ¢ I/Oï¼å¿è·³æ¯ 120s ç»æï¼æ°¸ä¸è§¦è¾¾è¿æçº¿</td></tr> |
| | | <tr><td>å¯å¨ ReconcileAfterBoot</td><td>è¿ç¨éå¯èªå¨ SweepExpired+ApproveRecoveryï¼æ¸
æä¸æ¬¡æ®ç/è¿æç§çº¦ï¼å«å·²å¡ RecoveryRequired çï¼</td></tr> |
| | | <tr><td>æ»ä¼è¯åæ¶</td><td>DB æ¾åçæªå
³éä¼è¯å¼ºå¶æ Closed åæ°å»ºï¼é¿å
RequestMaintenance"ä¼è¯ä¸åå¨"</td></tr> |
| | | </table> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s9">9ãæ¥ææ¶åå
¨é¾è·¯</h2> |
| | | <div class="card"> |
| | | <h3>9.1 åé â Local 设å¤</h3> |
| | | <pre> |
| | | CanChannelView.åé â CanDeviceDriver.SendCommandAsync("SEND:0x300:AA BB") |
| | | â NodeChannelTransport.TransceiveAsync â TCP å "SEND:0x300:AA BB" |
| | | â ServerSession å¤ç â CanCommandExecutor.HandleSend â CanNode.SendFrame â CanBusSimulator è·¯ç± |
| | | â å "OK:TX:0x300:2" â 驱å¨è¿åï¼é¢æ¿å TX è¡ |
| | | </pre> |
| | | <h3>9.2 åé â Broker 设å¤ï¼CAN-003ï¼</h3> |
| | | <pre> |
| | | 颿¿ â CanDeviceDriver(BrokerRpc).SendCommandAsync("SEND:â¦") |
| | | â BrokerRpcTransport æ å° opCode=SEND,payload=æ´ä¸² â SubmitBody ç»å½å管é |
| | | â BrokerServer.ExecuteOneShotAsyncï¼ |
| | | â ç½åå+åå
è®¾å¤ â¡ configHash 对账(INV-04) ⢠ç§çº¦æ
æ (INV-01/03) ⣠SessionGate ä¸²è¡ |
| | | ⤠宿主å
CanDeviceDriver(NodeChannel).SendCommandAsync â TCP â æ¨¡æå¨è·¯ç± |
| | | ⥠ResultBody.Readback æ«å°¾ <b>AppendPushes</b>ï¼æå®¿ä¸»é©±å¨èªä¸æ¬¡ä»¥æ¥æ¶å°ç EV:RECV |
| | | 以 "|PUSHED:n|EV:RECVâ¦" æ¼ä¸ â å管éè¿å |
| | | â 客æ·ç«¯ BrokerRpcTransport å¥ç¦» |PUSHED 段并触å FramePushed |
| | | </pre> |
| | | <h3>9.3 æ¥æ¶ â ç»ä¸äºä»¶æ¨¡å</h3> |
| | | <pre> |
| | | æå¡ç«¯è·¯ç±/åºçå¨äº§ç帧 â ç®æ èç¹ FrameReceived â ServerSession æ¨é EV:RECV |
| | | ââ Localï¼NodeChannel è¯»å¾ªç¯æ¶å° EV:RECV â CanDeviceDriver.OnFramePushed |
| | | â â _recvBuffer + _pendingPushLines + <b>DriverFrameReceived</b> â 颿¿ BeginInvoke ä¸å± |
| | | ââ Brokerï¼å®¿ä¸»è¯»å¾ªç¯æ¶å° â å®¿ä¸»é©±å¨ _pendingPushLines æå |
| | | 客æ·ç«¯ä¸ä¸æ¬¡ STATUS/SEND 轮询æ¶ï¼å®¿ä¸» AppendPushes æå¸¦ â 客æ·ç«¯ FramePushed â äºä»¶ â ä¸å± |
| | | ï¼é¢æ¿ PollTimer æ¯ 100ms è° QueryAsync("STATUS")ï¼æ¢å·æ°ç»è®¡ï¼ä¹è§¦å Broker æå¸¦ drainï¼ |
| | | </pre> |
| | | <div class="fx">ç»æï¼Local ä¸ Broker 设å¤å
±äº«åä¸å¥äºä»¶é©±å¨æ¥æ¶ï¼å®æ¶ä¸æ éå¤è¡ï¼åºçå¨å¼å¯å Broker 设å¤ä¹è½"å䏿¡æ¶ä¸æ¡åæ¾"ï¼å®æµ 50 次è¿ç»åéï¼æ¯æ¬¡ 1 TX + åæ¾ RXï¼æ é误æ å»ç»ï¼ã</div> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s10">10ãé误å¤çä¸ä¸åé</h2> |
| | | <div class="card"> |
| | | <table> |
| | | <tr><th>ä¸åé</th><th>å«ä¹</th><th>è½ç¹</th></tr> |
| | | <tr><td>INV-01</td><td>æ ç§çº¦ç¦æ¢ I/O</td><td>BrokerServer æ
æ ï¼SEND/åç±» QUERY é Active ç§çº¦ï¼CONNECT/DISCONNECT ä¸åªè¯» drain(RECV/STATUS/LOG/BUS_STATUS) è±å
</td></tr> |
| | | <tr><td>INV-03</td><td>è¿æä¸èªå¨è®©æ¸¡</td><td>ç§çº¦è¿æâRecoveryRequiredï¼æç» I/Oï¼é ApproveRecoveryï¼å¿è·³ç»æé¿å
误触ï¼</td></tr> |
| | | <tr><td>INV-04</td><td>é
ç½®åå¸å¯¹è´¦</td><td>RPC æºå¸¦ configHashï¼ä¸å®¿ä¸»çæåå¸ä¸ç¬¦âRejectedConfigMismatchï¼æ¹é
置须å
Applyï¼</td></tr> |
| | | <tr><td>INV-06</td><td>ç»ææªç¥ä¸å¾å宿ªæ§è¡</td><td>è¶
æ¶/å¨éå¼å¸¸âUnknownâ客æ·ç«¯æ TimeoutExceptionï¼ç¦æ¢èªå¨éè¯ SEND</td></tr> |
| | | </table> |
| | | <table> |
| | | <tr><th>æ
é</th><th>è¡ä¸º</th></tr> |
| | | <tr><td>模æå¨æå¡ä¸å¯è¾¾</td><td>NodeChannel.ConnectAsync æå«"请å
å¯å¨ CanSimulatorServer.exe"çè¿æ¥å¼å¸¸</td></tr> |
| | | <tr><td>ä¸éæçº¿</td><td>IsConnected=falseâææ°éé¿éè¿(0.5~5s)âéå HELLOï¼æé´åéå¿«é失败 NOT_CONNECTED</td></tr> |
| | | <tr><td>å (bus,node) å²çª</td><td>HELLO è¿å ERR:NODE_BUSYï¼é©±å¨æ"èç¹ç¼å· X 已被å ç¨"ï¼å±é
ç½®é误ï¼å¼å¯¼æ¹ç«¯ç¹ï¼</td></tr> |
| | | <tr><td>æ¨éæå满</td><td>丢æè并计æ°ï¼å®¢æ·ç«¯ STATUS/RECV å
åºè¡¥è´¦</td></tr> |
| | | <tr><td>ç»´æ¤ç§çº¦è¿æ</td><td>å¿è·³ç»æé¿å
ï¼è¥è¿ç¨å´©æºéçï¼éå¯ ReconcileAfterBoot èªå¨åæ¶</td></tr> |
| | | </table> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s11">11ã代ç ç´¢å¼</h2> |
| | | <div class="card"> |
| | | <table> |
| | | <tr><th>å
³æ³¨ç¹</th><th>ä½ç½®</th></tr> |
| | | <tr><td>TCP å帧</td><td>CanSimulator\SimulatorFraming.csï¼Encode/Decode/ReadFrameAsyncï¼</td></tr> |
| | | <tr><td>æå¡ç«¯ä¼è¯/åè®®</td><td>CanSimulatorServer.Core\ServerSession.csï¼Process/HandleHello/OnNodeFrame/FlushHeldPushesï¼</td></tr> |
| | | <tr><td>å½ä»¤æ§è¡/åºçå¨</td><td>CanSimulatorServer.Core\CanCommandExecutor.csï¼HandleSend/HandleQuery/BUS_ECHO/FormatPushï¼</td></tr> |
| | | <tr><td>è·¯ç±/èªå¨ååº/åºçå¨</td><td>CanSimulator\CanBusSimulator.csï¼OnNodeFrameSent/SendAutoResponse/EchoResponderToSenderï¼</td></tr> |
| | | <tr><td>ç»ä¸é©±å¨</td><td>Aging.Infrastructure\Drivers\CanDeviceDriver.csï¼Connect/Send/Query/OnFramePushed/DrainPendingPushLinesï¼</td></tr> |
| | | <tr><td>TCP å端</td><td>Drivers\NodeChannelTransport.csï¼HandshakeAsync/ReadLoopAsync/éè¿ï¼</td></tr> |
| | | <tr><td>RPC å端</td><td>Drivers\BrokerRpcTransport.csï¼TransceiveAsync/DrainPiggyback/ThrowForStateï¼</td></tr> |
| | | <tr><td>Broker æå¸¦</td><td>DeviceBroker\BrokerServer.csï¼ExecuteOneShotAsync/RunFragmentAsync/AppendPushesï¼</td></tr> |
| | | <tr><td>å¤è®¾å¤å£³/å·¥ä½åº</td><td>Plugin.DeviceDebug\DeviceDebug.xaml.cs · DeviceDebugTab.xaml.cs</td></tr> |
| | | <tr><td>ä¼è¯ç¶ææº/å¿è·³</td><td>Plugin.DeviceDebug\Model\DebugSessionManager.csï¼RequestMaintenance/ActivateMaintenance/RenewActiveMaintenanceï¼</td></tr> |
| | | <tr><td>ééæ¾ç¤º</td><td>Panels\CanDebugPanel.xaml.csï¼å£³ï¼Â· Panels\CanChannelView.xaml.csï¼AddReceivedFrame/BeginInvokeï¼</td></tr> |
| | | <tr><td>è£
é
/注å</td><td>Aging.Infrastructure\InfrastructureBootstrapper.csï¼RegisterBrokeredDriversï¼Â· Drivers\DriverFactory.cs</td></tr> |
| | | </table> |
| | | </div> |
| | | |
| | | <!-- ============================================================ --> |
| | | <h2 id="s12">12ãå·²ç¥éå¶ä¸åç»</h2> |
| | | <div class="card"> |
| | | <ul> |
| | | <li><b>Broker æ¥æ¶å®æ¶æ§ä¸º"请æ±é©±å¨"</b>ï¼é 宿主 STATUS/SEND 轮询æå¸¦ drainï¼é纯æ¨éï¼é¢æ¿ 100ms 轮询ä¿è¯æç»ä¸è´ãçå®ç¡¬ä»¶æ æ¤å±ã</li> |
| | | <li><b>ownerâclientInstanceId 弱对é½</b>ï¼åæº arb.db ä»
å卿§/ç¸ä½æ ¡éªï¼æªåç¾ååæ®ï¼V3.0 §13 P2ï¼ã</li> |
| | | <li><b>åºçå¨ä¸ºæ»çº¿çº§</b>ï¼ä¸æ¬¡å¼å
³ä½ç¨äºè¯¥æ»çº¿ææåéè
ï¼å¦éæèç¹/æå¸§ID ç²¾ç»æ å°ä¸ºåç»é¡¹ã</li> |
| | | <li><b>UI å¾
å</b>ï¼ä¸´æ¶è¯ææ¥å¿æ¤é¤ï¼RecoveryRequired äººå·¥å®¡æ¹ UIï¼ç°ç±å¯å¨å¯¹è´¦ä»£å¿ï¼ï¼App.Success/Warn æ 颿¬å°åã</li> |
| | | <li><b>æå»º</b>ï¼WPF é¾è·¯é¡»ç¨ VS 宿´ç MSBuildï¼ä¸å /p:Platform=x64ï¼ï¼æ¨¡æå¨æ ¸å¿å¯ dotnet æå»º/æµè¯ã</li> |
| | | </ul> |
| | | <p class="small">æ¬æ¥åä¸ä»£ç åæ¥äº 2026-11-09ï¼å®ç°åæ´è¯·åæ¥æ´æ°æ¬æä»¶ã</p> |
| | | </div> |
| | | |
| | | </div> |
| | | </body> |
| | | </html> |
| New file |
| | |
| | | <Project Sdk="Microsoft.NET.Sdk"> |
| | | <PropertyGroup> |
| | | <TargetFramework>net472</TargetFramework> |
| | | <Nullable>enable</Nullable> |
| | | <LangVersion>10.0</LangVersion> |
| | | <ImplicitUsings>disable</ImplicitUsings> |
| | | <IsPackable>false</IsPackable> |
| | | </PropertyGroup> |
| | | <ItemGroup> |
| | | <PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.5.0" /> |
| | | <PackageReference Include="xunit" Version="2.4.2" /> |
| | | <PackageReference Include="xunit.runner.visualstudio" Version="2.4.5"> |
| | | <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> |
| | | <PrivateAssets>all</PrivateAssets> |
| | | </PackageReference> |
| | | </ItemGroup> |
| | | <ItemGroup> |
| | | <PackageReference Include="System.Text.Json" Version="6.0.5" /> |
| | | </ItemGroup> |
| | | <ItemGroup> |
| | | <ProjectReference Include="..\..\Aging.ResourceContracts\Aging.ResourceContracts.csproj" /> |
| | | <ProjectReference Include="..\..\Aging.Infrastructure\Aging.Infrastructure.csproj" /> |
| | | <!-- Broker e2eï¼å¼ç¨å®¿ä¸»ï¼net472 Exe äº§ç© DeviceBroker.exe å¯ç´æ¥ä½ä¸ºç¨åºéå¼ç¨ï¼ --> |
| | | <ProjectReference Include="..\..\DeviceBroker\DeviceBroker.csproj" /> |
| | | <!-- CAN 模æå¨æå¡ç«¯æ ¸å¿ï¼æµè¯è¿ç¨å
æç®¡ TcpSimulatorHost èµ°çå® TCP åç¯ --> |
| | | <ProjectReference Include="..\..\CanSimulatorServer\CanSimulatorServer.Core\CanSimulatorServer.Core.csproj" /> |
| | | </ItemGroup> |
| | | <ItemGroup> |
| | | <PackageReference Include="System.Data.SQLite" Version="1.0.118" /> |
| | | </ItemGroup> |
| | | |
| | | </Project> |
| New file |
| | |
| | | <?xml version="1.0" encoding="utf-8"?> |
| | | <configuration> |
| | | <appSettings> |
| | | <!-- Broker e2eï¼å®¿ä¸»å
ç©ç CAN 驱å¨è¿æ¤ç«¯å£ï¼æµè¯å¤¹å
·å¨è¿ç¨å
æç®¡åç«¯å£æ¨¡æå¨æå¡ --> |
| | | <add key="CanSimulator.Host" value="127.0.0.1" /> |
| | | <add key="CanSimulator.Port" value="19555" /> |
| | | </appSettings> |
| | | </configuration> |
| New file |
| | |
| | | using System; |
| | | using System.Diagnostics; |
| | | using System.IO; |
| | | using System.Threading; |
| | | using System.Threading.Tasks; |
| | | using Aging.Infrastructure.Broker; |
| | | using Aging.Infrastructure.Core; |
| | | using Aging.Infrastructure.Drivers; |
| | | using Aging.ResourceContracts; |
| | | using CanSimulatorServer; |
| | | using DeviceBroker; |
| | | using Xunit; |
| | | |
| | | namespace Aging.MvpTests |
| | | { |
| | | /// <summary> |
| | | /// Broker å
¨é¾è·¯ e2eï¼å®¢æ·ç«¯ï¼arb.db ç§çº¦ + CanDeviceDriver BrokerRpc 代çï¼â |
| | | /// DeviceBroker 宿主ï¼å½å管é + æ
æ åæ ¡éª + configHash 对账 + SessionGate ååçæ®µï¼ã |
| | | /// 宿主çç©ç CAN 驱å¨ç» TCP è¿è¿ç¨å
æç®¡ç模æå¨æå¡ï¼åºå®ç«¯å£ 19555ï¼ä¸ App.config ä¸è´ï¼ã |
| | | /// æ¯ä¸ªæµè¯ä½¿ç¨å¯ä¸ brokerId â ç¬ç«ç®¡éåï¼é¿å
å¹¶è¡ä¸²æ°ã |
| | | /// </summary> |
| | | public class BrokerE2ETests : IDisposable |
| | | { |
| | | private const string DevId = "CAN-B1"; |
| | | private const int SimPort = 19555; |
| | | |
| | | private readonly string _dir; |
| | | private readonly string _dataDb; |
| | | private readonly string _arbDb; |
| | | private readonly string _brokerId; |
| | | private readonly string _pipeName; |
| | | private readonly CancellationTokenSource _cts = new CancellationTokenSource(); |
| | | private readonly Task _serverTask; |
| | | private readonly DbLeaseStore _clientLease; |
| | | private readonly TcpSimulatorHost _sim; |
| | | |
| | | public BrokerE2ETests() |
| | | { |
| | | _dir = Path.Combine(Path.GetTempPath(), "brk_" + Guid.NewGuid().ToString("N")); |
| | | Directory.CreateDirectory(_dir); |
| | | _dataDb = Path.Combine(_dir, "data.db"); |
| | | _arbDb = Path.Combine(_dir, "arb.db"); |
| | | _brokerId = "broker-" + Guid.NewGuid().ToString("N").Substring(0, 8); |
| | | _pipeName = BrokerPipeName.For(_brokerId); |
| | | |
| | | CreateDataDb(); |
| | | |
| | | // 模æå¨æå¡å
äºå®¿ä¸»å°±ä½ï¼å®¿ä¸»é¦æ¬¡ CONNECT ä¼æèµ·ç©ç TCP ä¼è¯ï¼ |
| | | _sim = new TcpSimulatorHost(); |
| | | _sim.StartAsync(SimPort).GetAwaiter().GetResult(); |
| | | |
| | | var server = new BrokerServer(_dataDb, _arbDb, _brokerId); |
| | | server.LoadDevices(); |
| | | _serverTask = Task.Run(() => server.RunAsync(_cts.Token)); |
| | | _clientLease = new DbLeaseStore(_arbDb, "local-main"); |
| | | |
| | | // ççå¬å°±ä½ï¼å®¢æ·ç«¯æ¬èº«æ 3s è¿æ¥è¶
æ¶ï¼å¦æ BROKER_UNREACHABLE éè¯å
åºï¼ |
| | | Thread.Sleep(250); |
| | | } |
| | | |
| | | public void Dispose() |
| | | { |
| | | try { _cts.Cancel(); } catch { } |
| | | try { _serverTask.Wait(1500); } catch { } |
| | | try { _sim?.Dispose(); } catch { } |
| | | _cts.Dispose(); |
| | | foreach (var f in Directory.GetFiles(_dir)) |
| | | { |
| | | try { File.Delete(f); } catch { } |
| | | } |
| | | try { Directory.Delete(_dir); } catch { } |
| | | } |
| | | |
| | | // ==================== æ£åé¾è·¯ ==================== |
| | | |
| | | [Fact] |
| | | public async Task WithLease_Connect_Send_Query_Succeeds() |
| | | { |
| | | var grant = GrabLease(); |
| | | var hash = DeviceConfigHash.Compute(_dataDb); |
| | | using var driver = CanDeviceDriver.CreateBrokerProxy(DevId, "CAN_E2E:0", _pipeName, hash); |
| | | |
| | | await RetryAsync(() => driver.ConnectAsync(CancellationToken.None)); |
| | | |
| | | var tx = await driver.SendCommandAsync("SEND:0x123:11 22", CancellationToken.None); |
| | | Assert.Contains("OK:TX", tx); |
| | | |
| | | var status = await driver.QueryAsync("STATUS", CancellationToken.None); |
| | | Assert.Contains("STATUS", status); |
| | | |
| | | // Broker ä¾§æ§è¡æååç§çº¦ä»ææï¼æªè¢«è¯¯éæ¾ï¼ |
| | | Assert.Equal(LeasePhase.Active, _clientLease.PhaseOf(DevId)); |
| | | _clientLease.Release(grant, "test-end"); |
| | | } |
| | | |
| | | [Fact] |
| | | public async Task TwoSequencedFragments_SameSession_ExecuteSerially() |
| | | { |
| | | var grant = GrabLease(); |
| | | var hash = DeviceConfigHash.Compute(_dataDb); |
| | | using var driver = CanDeviceDriver.CreateBrokerProxy(DevId, "CAN_E2E:0", _pipeName, hash); |
| | | await RetryAsync(() => driver.ConnectAsync(CancellationToken.None)); |
| | | |
| | | // SessionGate ä¸åä¼è¯çæ®µä¸¥æ ¼ä¸²è¡ï¼åè¿ç¨å客æ·ç«¯æ¬å°±ä¸²è¡ï¼éªè¯ä¸äº§ç交ééè¯¯ï¼ |
| | | var a = await driver.SendCommandAsync("SEND:0x100:01", CancellationToken.None); |
| | | var b = await driver.SendCommandAsync("SEND:0x200:02", CancellationToken.None); |
| | | Assert.Contains("OK:TX", a); |
| | | Assert.Contains("OK:TX", b); |
| | | _clientLease.Release(grant, "test-end"); |
| | | } |
| | | |
| | | // ==================== è´åé¾è·¯ ==================== |
| | | |
| | | [Fact] |
| | | public async Task NoLease_ConnectAllowed_Send_RejectedStaleLease() |
| | | { |
| | | // CONNECT/DISCONNECT ä»
ç»è®°/éæ¾å®¿ä¸»ç©çä¼è¯ï¼è±å
ç§çº¦ï¼ |
| | | // SEND ææ»çº¿è¾åºï¼æ ç§çº¦å¿
é¡»æç»ï¼INV-01 ç¦æ¢æ ç§çº¦ç´æ¥ I/Oï¼ |
| | | var hash = DeviceConfigHash.Compute(_dataDb); |
| | | using var driver = CanDeviceDriver.CreateBrokerProxy(DevId, "CAN_E2E:0", _pipeName, hash); |
| | | |
| | | await RetryAsync(() => driver.ConnectAsync(CancellationToken.None)); |
| | | |
| | | var ex = await Record.ExceptionAsync( |
| | | () => driver.SendCommandAsync("SEND:0x100:01", CancellationToken.None)); |
| | | Assert.NotNull(ex); |
| | | Assert.Contains("LEASE_STALE", ex.Message); |
| | | } |
| | | |
| | | [Fact] |
| | | public async Task ConfigHashMismatch_Rejected() |
| | | { |
| | | GrabLease(); // æç§çº¦ï¼ä½åå¸å¯¹ä¸ä¸ â INV-04 æ¦æª |
| | | using var driver = CanDeviceDriver.CreateBrokerProxy(DevId, "CAN_E2E:0", _pipeName, "deadbeefdeadbeef"); |
| | | |
| | | var ex = await Record.ExceptionAsync( |
| | | () => RetryConnectAsync(driver, expectThrow: true)); |
| | | Assert.NotNull(ex); |
| | | Assert.Contains("CONFIG_MISMATCH", ex.Message); |
| | | } |
| | | |
| | | [Fact] |
| | | public async Task ReleasedLease_Send_Rejected() |
| | | { |
| | | var grant = GrabLease(); |
| | | var hash = DeviceConfigHash.Compute(_dataDb); |
| | | using var driver = CanDeviceDriver.CreateBrokerProxy(DevId, "CAN_E2E:0", _pipeName, hash); |
| | | await RetryAsync(() => driver.ConnectAsync(CancellationToken.None)); |
| | | |
| | | // ç§çº¦å½è¿åå I/O â æ
æ å¿
é¡»æç»ï¼ç¦æ¢æ ç§çº¦ç´æ¥ I/Oï¼ |
| | | _clientLease.Release(grant, "released-by-test"); |
| | | var ex = await Record.ExceptionAsync( |
| | | () => driver.SendCommandAsync("SEND:0x100:01", CancellationToken.None)); |
| | | Assert.NotNull(ex); |
| | | Assert.Contains("LEASE_STALE", ex.Message); |
| | | } |
| | | |
| | | [Fact] |
| | | public async Task MaintenanceLease_BrokeredWrite_Succeeds() |
| | | { |
| | | // è°è¯é¡µç»´æ¤åæé¾è·¯ï¼ç»´æ¤ç§çº¦åå
¥ arb.dbï¼OwnerType=Maintenanceï¼åï¼ |
| | | // Broker æ
æ åæ ·æ¾è¡ï¼å ç¨å¯è§/æç»è¯ä¹å·²ç±çäº§åºæ¯ç¨ä¾è¦çï¼ |
| | | var outcome = _clientLease.Acquire(new AcquireRequest |
| | | { |
| | | OwnerId = "maint-session-1", |
| | | OwnerType = OwnerTypeV3.Maintenance, |
| | | ResourceKeys = new[] { DevId }, |
| | | TtlSeconds = 30 |
| | | }); |
| | | Assert.Equal(AcquireResultCode.Acquired, outcome.Code); |
| | | |
| | | var hash = DeviceConfigHash.Compute(_dataDb); |
| | | using var driver = CanDeviceDriver.CreateBrokerProxy(DevId, "CAN_E2E:0", _pipeName, hash); |
| | | await RetryAsync(() => driver.ConnectAsync(CancellationToken.None)); |
| | | var tx = await driver.SendCommandAsync("SEND:0x300:AB", CancellationToken.None); |
| | | Assert.Contains("OK:TX", tx); |
| | | |
| | | _clientLease.Release(outcome.Grants[0], "maint-end"); |
| | | } |
| | | |
| | | // ==================== è¾
å© ==================== |
| | | |
| | | [Fact] |
| | | public async Task BrokerReceive_PiggybackPush_DeliveredToProxyDriver() |
| | | { |
| | | // éªæ¶ç¹ï¼å
±äº«è®¾å¤(Broker)è½æ¶å°åæ»çº¿å¯¹ç«¯åæ¥ç帧ï¼ç»å®¿ä¸»æå¸¦æ¨éï¼ã |
| | | // ä¿®å¤åå²ä¸ BrokeredCanDriver æ æ¥æ¶äºä»¶ã颿¿æ¶ä¸å° RX ç顽çã |
| | | var grant = GrabLease(); |
| | | var hash = DeviceConfigHash.Compute(_dataDb); |
| | | using var driver = CanDeviceDriver.CreateBrokerProxy(DevId, "CAN_E2E:0", _pipeName, hash); |
| | | await RetryAsync(() => driver.ConnectAsync(CancellationToken.None)); |
| | | |
| | | CanFrameish received = null; |
| | | driver.DriverFrameReceived += (s, f) => received = new CanFrameish { Id = f.FrameIdHex, Data = f.DataHex }; |
| | | |
| | | // 对端ï¼å模æå¨åæ»çº¿ CAN_E2E çèç¹ 1ï¼æ¬å°ç´è¿å帧 |
| | | using var peer = new CanDeviceDriver("CAN-PEER", "CAN_E2E:1", "127.0.0.1", SimPort); |
| | | peer.ConnectAsync(CancellationToken.None).GetAwaiter().GetResult(); |
| | | peer.SendCommandAsync("SEND:0x7E7:EE FF", CancellationToken.None).GetAwaiter().GetResult(); |
| | | |
| | | // 触å宿主 drain æå¸¦ï¼ä»»ä¸éæ¥æ¶ç±»æ¥è¯¢ï¼STATUSï¼å³å¯å¸¦åæ¨é |
| | | for (int i = 0; i < 20 && received == null; i++) |
| | | { |
| | | await driver.QueryAsync("STATUS", CancellationToken.None); |
| | | if (received == null) await Task.Delay(50); |
| | | } |
| | | |
| | | Assert.NotNull(received); |
| | | Assert.Equal("0x7E7", received.Id); |
| | | Assert.Contains("EE FF", received.Data); |
| | | |
| | | _clientLease.Release(grant, "test-end"); |
| | | } |
| | | |
| | | private sealed class CanFrameish { public string Id; public string Data; public string Src; } |
| | | |
| | | [Fact] |
| | | public async Task BrokerResponderEcho_ViaBusEcho_DeliveredToProxyDriver() |
| | | { |
| | | // å¤ç°ç¨æ·åºæ¯ï¼ä»
Broker 设å¤èªå·±å帧 + æ»çº¿åºçå¨å¼å¯ â åºæ¶å° RESPONDER åæ¾ã |
| | | var grant = GrabLease(); |
| | | var hash = DeviceConfigHash.Compute(_dataDb); |
| | | using var driver = CanDeviceDriver.CreateBrokerProxy(DevId, "CAN_E2E:0", _pipeName, hash); |
| | | await RetryAsync(() => driver.ConnectAsync(CancellationToken.None)); |
| | | |
| | | CanFrameish echo = null; |
| | | driver.DriverFrameReceived += (s, f) => echo = new CanFrameish { Id = f.FrameIdHex, Data = f.DataHex, Src = f.SourceNodeId }; |
| | | |
| | | // ç» RPC å¼å¯æ»çº¿åºçå¨ |
| | | var on = await driver.QueryAsync("BUS_ECHO:ON", CancellationToken.None); |
| | | Assert.StartsWith("OK:", on); |
| | | |
| | | // Broker 设å¤èªå·±åä¸å¸§ |
| | | await driver.SendCommandAsync("SEND:0x111:AA BB CC", CancellationToken.None); |
| | | |
| | | // 轮询 STATUS 触å宿主 drain æå¸¦ï¼çåæ¾éè¾¾ |
| | | for (int i = 0; i < 30 && echo == null; i++) |
| | | { |
| | | await driver.QueryAsync("STATUS", CancellationToken.None); |
| | | if (echo == null) await Task.Delay(50); |
| | | } |
| | | |
| | | Assert.NotNull(echo); |
| | | Assert.Equal("0x111", echo.Id); |
| | | Assert.Contains("RESPONDER", echo.Src); |
| | | |
| | | _clientLease.Release(grant, "test-end"); |
| | | } |
| | | |
| | | // ==================== è¾
å©ï¼åæï¼ ==================== |
| | | |
| | | private LeaseGrant GrabLease() |
| | | { |
| | | var outcome = _clientLease.Acquire(new AcquireRequest |
| | | { |
| | | OwnerId = "e2e-" + Guid.NewGuid().ToString("N"), |
| | | OwnerType = OwnerTypeV3.Production, |
| | | ResourceKeys = new[] { DevId }, |
| | | TtlSeconds = 30 |
| | | }); |
| | | Assert.Equal(AcquireResultCode.Acquired, outcome.Code); |
| | | return outcome.Grants[0]; |
| | | } |
| | | |
| | | private static async Task RetryAsync(Func<Task> action, int attempts = 4) |
| | | { |
| | | Exception last = null; |
| | | for (int i = 0; i < attempts; i++) |
| | | { |
| | | try { await action().ConfigureAwait(false); return; } |
| | | catch (InvalidOperationException ex) when (ex.Message.Contains("BROKER_UNREACHABLE")) |
| | | { |
| | | last = ex; // å®¿ä¸»å°æªå¼å§çå¬ï¼çæéè¯ |
| | | await Task.Delay(400).ConfigureAwait(false); |
| | | } |
| | | } |
| | | throw last ?? new InvalidOperationException("éè¯ä»å¤±è´¥"); |
| | | } |
| | | |
| | | /// <summary>è´åç¨ä¾ï¼æ¡æå¯éè¯ï¼ç®¡éæªå°±ä½ï¼ï¼ä½æ
æ /å叿ç»å±ç»æåºç´æ¥ä¸æã</summary> |
| | | private async Task RetryConnectAsync(CanDeviceDriver driver, bool expectThrow) |
| | | { |
| | | Exception last = null; |
| | | for (int i = 0; i < 4; i++) |
| | | { |
| | | try |
| | | { |
| | | await driver.ConnectAsync(CancellationToken.None).ConfigureAwait(false); |
| | | return; // æå¤æåââç±å¤å±æè¨ææ |
| | | } |
| | | catch (InvalidOperationException ex) when (ex.Message.Contains("BROKER_UNREACHABLE")) |
| | | { |
| | | last = ex; |
| | | await Task.Delay(400).ConfigureAwait(false); |
| | | } |
| | | catch (InvalidOperationException) |
| | | { |
| | | throw; // LEASE_STALE / CONFIG_MISMATCH ç»æ |
| | | } |
| | | } |
| | | throw last ?? new InvalidOperationException("æªè·å¾é¢ææç»"); |
| | | } |
| | | |
| | | private void CreateDataDb() |
| | | { |
| | | using var conn = new System.Data.SQLite.SQLiteConnection( |
| | | $"Data Source={_dataDb};Version=3;"); |
| | | conn.Open(); |
| | | using (var ddl = conn.CreateCommand()) |
| | | { |
| | | ddl.CommandText = @" |
| | | CREATE TABLE DeviceDefinition ( |
| | | DeviceId TEXT PRIMARY KEY, Kind TEXT NOT NULL, DriverType TEXT NOT NULL, |
| | | Transport TEXT NOT NULL, Endpoint TEXT NOT NULL, |
| | | ExecutionMode TEXT NOT NULL DEFAULT 'Local', |
| | | AuthorityId TEXT NOT NULL DEFAULT '', BrokerId TEXT NOT NULL DEFAULT '', |
| | | OwnerProcessId TEXT NOT NULL DEFAULT '', PhysicalSessionKey TEXT NOT NULL DEFAULT '', |
| | | EffectiveVersion TEXT NOT NULL DEFAULT '', CreatedAt TEXT NOT NULL, UpdatedAt TEXT NOT NULL);"; |
| | | ddl.ExecuteNonQuery(); |
| | | } |
| | | using (var ins = conn.CreateCommand()) |
| | | { |
| | | ins.CommandText = @" |
| | | INSERT INTO DeviceDefinition VALUES ( |
| | | 'CAN-B1','CanDevice','CAN','Can','CAN_E2E:0', |
| | | 'Broker',@auth,@broker,'','can/CAN_E2E/main', |
| | | 'V1','2026-11-08 00:00:00','2026-11-08 00:00:00');"; |
| | | ins.Parameters.AddWithValue("@auth", _brokerId); |
| | | ins.Parameters.AddWithValue("@broker", _brokerId); |
| | | ins.ExecuteNonQuery(); |
| | | } |
| | | } |
| | | } |
| | | } |
| New file |
| | |
| | | using System; |
| | | using System.Threading; |
| | | using System.Threading.Tasks; |
| | | using Aging.Infrastructure.Drivers; |
| | | using CanSimulatorServer; |
| | | using Xunit; |
| | | |
| | | namespace Aging.MvpTests |
| | | { |
| | | /// <summary> |
| | | /// ç»ä¸ CAN 驱å¨ï¼CanDeviceDriver, TCP NodeChannel å端ï¼è¡ä¸ºæµè¯ï¼ |
| | | /// 卿µè¯è¿ç¨å
æç®¡æ¨¡æå¨æå¡ï¼éªè¯è¿æ¥/åé/æ¨éäºä»¶/æ¬å°ç¼å²æ¥è¯¢/é误è¯ä¹ |
| | | /// ä¸è°è¯é¢æ¿ç°æè§£ææ ¼å¼ï¼RECV_ALL:n:â¦ãOK:TXâ¦ï¼ä¿æå
¼å®¹ã |
| | | /// </summary> |
| | | public class CanDeviceDriverTests : IDisposable |
| | | { |
| | | private readonly TcpSimulatorHost _host; |
| | | |
| | | public CanDeviceDriverTests() |
| | | { |
| | | _host = new TcpSimulatorHost(); |
| | | _host.StartAsync().GetAwaiter().GetResult(); |
| | | } |
| | | |
| | | public void Dispose() => _host.Dispose(); |
| | | |
| | | private CanDeviceDriver NewDriver(string deviceId, string bus, int node) => |
| | | new CanDeviceDriver(deviceId, $"{bus}:{node}", hostOverride: "127.0.0.1", portOverride: _host.Port); |
| | | |
| | | [Fact] |
| | | public void ConnectAsync_OnRunningServer_Succeeds() |
| | | { |
| | | using var drv = NewDriver("CAN-T1", "CAN_BUS_1", 0); |
| | | drv.ConnectAsync(CancellationToken.None).GetAwaiter().GetResult(); |
| | | Assert.True(drv.IsConnected); |
| | | } |
| | | |
| | | [Fact] |
| | | public void ConnectAsync_NoServer_ThrowsWithStartupHint() |
| | | { |
| | | // æåå¿
ç¶ç©ºé²ç端å£ï¼éè¯¯ææ¡åºå¼å¯¼ç¨æ·å¯å¨æ¨¡æå¨æå¡ |
| | | using var drv = new CanDeviceDriver("CAN-T2", "CAN_BUS_1:0", hostOverride: "127.0.0.1", portOverride: 1); |
| | | var ex = Assert.ThrowsAny<Exception>(() => |
| | | drv.ConnectAsync(CancellationToken.None).GetAwaiter().GetResult()); |
| | | Assert.Contains("模æå¨", ex.Message); |
| | | } |
| | | |
| | | [Fact] |
| | | public void SendCommandAsync_ReturnsOkTx_ReadableByPanel() |
| | | { |
| | | using var drv = NewDriver("CAN-T3", "CAN_BUS_1", 1); |
| | | drv.ConnectAsync(CancellationToken.None).GetAwaiter().GetResult(); |
| | | |
| | | string resp = drv.SendCommandAsync("SEND:0x100:AA BB", CancellationToken.None) |
| | | .GetAwaiter().GetResult(); |
| | | Assert.StartsWith("OK:TX", resp); |
| | | } |
| | | |
| | | [Fact] |
| | | public void Push_FromPeer_TriggersEvent_AndLocalRecvAll() |
| | | { |
| | | using var a = NewDriver("CAN-T4A", "CAN_BUS_1", 2); |
| | | using var b = NewDriver("CAN-T4B", "CAN_BUS_1", 3); |
| | | a.ConnectAsync(CancellationToken.None).GetAwaiter().GetResult(); |
| | | b.ConnectAsync(CancellationToken.None).GetAwaiter().GetResult(); |
| | | |
| | | CanSimulator.CanFrame received = null; |
| | | a.DriverFrameReceived += (s, f) => received = f; |
| | | |
| | | b.SendCommandAsync("SEND:0x222:11 22 33", CancellationToken.None).GetAwaiter().GetResult(); |
| | | |
| | | // çå¾
æ¨éäºä»¶å°è¾¾ï¼è¯»å¾ªç¯çº¿ç¨è§¦åï¼ |
| | | SpinWait.SpinUntil(() => received != null, 3000); |
| | | Assert.NotNull(received); |
| | | Assert.Equal("0x222", received.FrameIdHex); |
| | | |
| | | // RECV_ALL ç±é©±å¨æ¬å°ç¼å²åºçï¼ä¸ä¾èµæå¡ç«¯é®ç®±ï¼ |
| | | string all = a.QueryAsync("RECV_ALL", CancellationToken.None).GetAwaiter().GetResult(); |
| | | Assert.StartsWith("RECV_ALL:1:", all); |
| | | Assert.Contains("0x222:11 22 33", all); |
| | | } |
| | | |
| | | [Fact] |
| | | public void Query_AutoResponse_ProxiedToServer_ReturnsOk() |
| | | { |
| | | using var drv = NewDriver("CAN-T5", "CAN_BUS_1", 4); |
| | | drv.ConnectAsync(CancellationToken.None).GetAwaiter().GetResult(); |
| | | |
| | | string resp = drv.QueryAsync("AUTO_RESPONSE:ON", CancellationToken.None).GetAwaiter().GetResult(); |
| | | Assert.StartsWith("OK:", resp); |
| | | string back = drv.QueryAsync("AUTO_RESPONSE", CancellationToken.None).GetAwaiter().GetResult(); |
| | | Assert.Contains("ON", back); |
| | | } |
| | | |
| | | [Fact] |
| | | public void Query_Status_HasLegacyCompatibleFormat() |
| | | { |
| | | using var drv = NewDriver("CAN-T6", "CAN_BUS_1", 5); |
| | | drv.ConnectAsync(CancellationToken.None).GetAwaiter().GetResult(); |
| | | |
| | | // 颿¿ GetStatValue è§£æ "STATUS:Node=â¦, â¦, Rx=0, Tx=0, â¦"ï¼éå·çå·åéï¼ |
| | | string resp = drv.QueryAsync("STATUS", CancellationToken.None).GetAwaiter().GetResult(); |
| | | Assert.StartsWith("STATUS:Node=", resp); |
| | | Assert.Contains("Tx=", resp); |
| | | Assert.Contains("Rx=", resp); |
| | | } |
| | | |
| | | [Fact] |
| | | public void Connect_NodeBusy_ThrowsWithNodeIndexHint() |
| | | { |
| | | using var first = NewDriver("CAN-T7A", "CAN_BUS_1", 6); |
| | | first.ConnectAsync(CancellationToken.None).GetAwaiter().GetResult(); |
| | | |
| | | using var second = NewDriver("CAN-T7B", "CAN_BUS_1", 6); |
| | | var ex = Assert.ThrowsAny<Exception>(() => |
| | | second.ConnectAsync(CancellationToken.None).GetAwaiter().GetResult()); |
| | | Assert.Contains("èç¹ç¼å·", ex.Message); |
| | | } |
| | | } |
| | | } |
| New file |
| | |
| | | using System.Text.Json; |
| | | using Aging.ResourceContracts; |
| | | using Xunit; |
| | | |
| | | namespace Aging.MvpTests |
| | | { |
| | | public class ContractSerializeTests |
| | | { |
| | | [Fact] |
| | | public void LeaseGrant_RoundTrips_Json() |
| | | { |
| | | var g = new LeaseGrant("broker-b01", "can/can02", "lease_abc", |
| | | "W01.RunA", OwnerTypeV3.Maintenance, epoch: 7, generation: 42, |
| | | expiresUtcMs: 1793673600000); |
| | | var json = JsonSerializer.Serialize(g); |
| | | var back = JsonSerializer.Deserialize<LeaseGrant>(json)!; |
| | | Assert.Equal(g.Generation, back.Generation); |
| | | Assert.Equal(g.Epoch, back.Epoch); |
| | | Assert.Equal(g.LeaseId, back.LeaseId); |
| | | Assert.Equal(g.OwnerType, back.OwnerType); |
| | | } |
| | | |
| | | [Fact] |
| | | public void IpcEnvelope_Carries_BodyAndIdentity() |
| | | { |
| | | var e = new IpcEnvelope |
| | | { |
| | | ProtocolVersion = 1, MessageType = "SubmitTask", |
| | | RequestId = "req-1", ClientInstanceId = "hmi/bootA/123", |
| | | AuthorityId = "broker-b01", ConfigHash = "sha256:x", |
| | | BodyJson = "{\"operationCode\":\"SEND\"}" |
| | | }; |
| | | var json = JsonSerializer.Serialize(e); |
| | | var back = JsonSerializer.Deserialize<IpcEnvelope>(json)!; |
| | | Assert.Equal("SubmitTask", back.MessageType); |
| | | Assert.Equal("sha256:x", back.ConfigHash); |
| | | } |
| | | } |
| | | } |
| New file |
| | |
| | | using System; |
| | | using System.IO; |
| | | using System.Threading; |
| | | using System.Threading.Tasks; |
| | | using Aging.Infrastructure.Core; |
| | | using Aging.ResourceContracts; |
| | | using Xunit; |
| | | |
| | | namespace Aging.MvpTests |
| | | { |
| | | public class DbLeaseStoreTests : IDisposable |
| | | { |
| | | private readonly string _dbPath; |
| | | private readonly DbLeaseStore _store; |
| | | |
| | | public DbLeaseStoreTests() |
| | | { |
| | | _dbPath = Path.Combine(Path.GetTempPath(), |
| | | "arb_test_" + Guid.NewGuid().ToString("N") + ".db"); |
| | | _store = new DbLeaseStore(_dbPath, "local-main"); |
| | | } |
| | | public void Dispose() { try { File.Delete(_dbPath); File.Delete(_dbPath + "-wal"); File.Delete(_dbPath + "-shm"); } catch { } } |
| | | |
| | | private AcquireRequest Req(string key, OwnerTypeV3 type = OwnerTypeV3.Maintenance, |
| | | int ttl = 30) => new AcquireRequest |
| | | { |
| | | OwnerId = "test-owner", OwnerType = type, |
| | | ProcessInstanceId = Guid.NewGuid().ToString("N"), |
| | | ResourceKeys = new[] { key }, TtlSeconds = ttl |
| | | }; |
| | | |
| | | [Fact] |
| | | public void Acquire_FirstOwner_Succeeds() |
| | | { |
| | | var r = _store.Acquire(Req("can/can02")); |
| | | Assert.Equal(AcquireResultCode.Acquired, r.Code); |
| | | Assert.Equal(1, r.Grants[0].Generation); |
| | | } |
| | | |
| | | [Fact] |
| | | public void Acquire_WhileActiveByOther_ReturnsConflictWithHolder() |
| | | { |
| | | _store.Acquire(Req("can/can02")); |
| | | var second = new AcquireRequest |
| | | { |
| | | OwnerId = "other-owner", OwnerType = OwnerTypeV3.Production, |
| | | ProcessInstanceId = "x", ResourceKeys = new[] { "can/can02" } |
| | | }; |
| | | var r = _store.Acquire(second); |
| | | Assert.Equal(AcquireResultCode.ConflictHeld, r.Code); |
| | | Assert.Equal("test-owner", r.Holder.OwnerId); |
| | | } |
| | | |
| | | [Fact] |
| | | public void TwoIndependentStores_SameFile_SimulatesTwoProcesses() |
| | | { |
| | | var storeB = new DbLeaseStore(_dbPath, "local-main"); |
| | | var a = _store.Acquire(Req("psu/psu01/ch/5")); |
| | | var b = storeB.Acquire(new AcquireRequest |
| | | { |
| | | OwnerId = "W02", OwnerType = OwnerTypeV3.Production, |
| | | ProcessInstanceId = "p2", ResourceKeys = new[] { "psu/psu01/ch/5" } |
| | | }); |
| | | Assert.Equal(AcquireResultCode.Acquired, a.Code); |
| | | Assert.Equal(AcquireResultCode.ConflictHeld, b.Code); |
| | | } |
| | | |
| | | [Fact] |
| | | public void Concurrent_50Threads_OnlyOneWins() |
| | | { |
| | | int winners = 0; |
| | | Parallel.For(0, 50, _ => |
| | | { |
| | | var s = new DbLeaseStore(_dbPath, "local-main"); |
| | | var r = s.Acquire(new AcquireRequest |
| | | { |
| | | OwnerId = Guid.NewGuid().ToString("N"), OwnerType = OwnerTypeV3.Production, |
| | | ProcessInstanceId = "p", ResourceKeys = new[] { "can/bus" }, WaitTimeoutMs = 3000 |
| | | }); |
| | | if (r.Code == AcquireResultCode.Acquired) Interlocked.Increment(ref winners); |
| | | }); |
| | | Assert.Equal(1, winners); |
| | | } |
| | | |
| | | [Fact] |
| | | public void ExpiredLease_EntersRecoveryRequired_NotAutoReclaim() |
| | | { |
| | | _store.Acquire(Req("can/can02", ttl: -1)); |
| | | _store.SweepExpired(); |
| | | var r = _store.Acquire(Req("can/can02", OwnerTypeV3.Production)); |
| | | Assert.Equal(AcquireResultCode.RecoveryBlocked, r.Code); |
| | | |
| | | Assert.True(_store.ApproveRecovery("can/can02", "{\"output\":\"off\"}", "admin")); |
| | | var again = _store.Acquire(Req("can/can02", OwnerTypeV3.Production)); |
| | | Assert.Equal(AcquireResultCode.Acquired, again.Code); |
| | | Assert.Equal(2, again.Grants[0].Generation); |
| | | } |
| | | |
| | | [Fact] |
| | | public void Renew_WithStaleGeneration_Fails() |
| | | { |
| | | var g = _store.Acquire(Req("can/can02")).Grants[0]; |
| | | var stale = new LeaseGrant(g.AuthorityId, g.ResourceKey, g.LeaseId, |
| | | g.OwnerId, g.OwnerType, g.Epoch, 999, g.ExpiresUtcMs); |
| | | Assert.False(_store.Renew(stale, 30)); |
| | | Assert.True(_store.Renew(g, 30)); |
| | | } |
| | | |
| | | [Fact] |
| | | public void BumpEpoch_InvalidatesAllActiveGrants() |
| | | { |
| | | var g = _store.Acquire(Req("can/can02")).Grants[0]; |
| | | _store.BumpEpochForTest("arb.db é坿¨¡æ"); |
| | | Assert.False(_store.Renew(g, 30)); |
| | | } |
| | | |
| | | [Fact] |
| | | public void GroupAcquire_PartialConflict_RollsBackAll() |
| | | { |
| | | _store.Acquire(Req("psu/b")); |
| | | var r = _store.Acquire(new AcquireRequest |
| | | { |
| | | OwnerId = "W09", OwnerType = OwnerTypeV3.Production, ProcessInstanceId = "p", |
| | | ResourceKeys = new[] { "psu/a", "psu/b", "psu/c" } |
| | | }); |
| | | Assert.Equal(AcquireResultCode.ConflictHeld, r.Code); |
| | | Assert.Null(_store.ProbeConflict("psu/a")); |
| | | } |
| | | |
| | | [Fact] |
| | | public void ExpiredLease_ReconcileAfterBoot_FreesResource_ForNewAcquire() |
| | | { |
| | | // æ¨¡ææ§ owner è¿ç¨æªéæ¾å°±å¼å¸¸éåºï¼ç TTL ç§çº¦æ³æ¼åè¿æ |
| | | var leaked = _store.Acquire(Req("can/can99", OwnerTypeV3.Maintenance, ttl: 1)); |
| | | Assert.Equal(AcquireResultCode.Acquired, leaked.Code); |
| | | Thread.Sleep(1600); |
| | | |
| | | // æªå¯¹è´¦åï¼è¿æç§çº¦è¿å
¥ RecoveryBlockedï¼æ°¸ä¹
é»å¡ç°ç¶ï¼ |
| | | var blocked = _store.Acquire(new AcquireRequest |
| | | { |
| | | OwnerId = "new-owner", OwnerType = OwnerTypeV3.Maintenance, |
| | | ProcessInstanceId = "y", ResourceKeys = new[] { "can/can99" } |
| | | }); |
| | | Assert.Equal(AcquireResultCode.RecoveryBlocked, blocked.Code); |
| | | |
| | | // å¯å¨å¯¹è´¦èªæï¼INV-03 èªå¨åå½¢å¼ï¼è¯æ®è½ recovery_checkpointï¼ |
| | | Assert.True(_store.ReconcileAfterBoot("HOST/999") >= 1); |
| | | Assert.Equal(LeasePhase.Free, _store.PhaseOf("can/can99")); |
| | | |
| | | // 对账åå¯éæ°è·åï¼ä¸ Generation åªåè¿ä¸åé |
| | | var reacquired = _store.Acquire(new AcquireRequest |
| | | { |
| | | OwnerId = "new-owner", OwnerType = OwnerTypeV3.Maintenance, |
| | | ProcessInstanceId = "y", ResourceKeys = new[] { "can/can99" } |
| | | }); |
| | | Assert.Equal(AcquireResultCode.Acquired, reacquired.Code); |
| | | Assert.True(reacquired.Grants[0].Generation > leaked.Grants[0].Generation); |
| | | } |
| | | } |
| | | } |
| New file |
| | |
| | | using System; |
| | | using System.IO; |
| | | using System.Threading; |
| | | using Aging.Infrastructure.Core; |
| | | using Aging.ResourceContracts; |
| | | using Xunit; |
| | | |
| | | namespace Aging.MvpTests |
| | | { |
| | | public class FacadeLeaseLifecycleTests : IDisposable |
| | | { |
| | | private readonly string _dbPath; |
| | | private readonly DbLeaseStore _store; |
| | | public FacadeLeaseLifecycleTests() |
| | | { |
| | | _dbPath = Path.Combine(Path.GetTempPath(), "arb_" + Guid.NewGuid().ToString("N") + ".db"); |
| | | _store = new DbLeaseStore(_dbPath, "local-main"); |
| | | } |
| | | public void Dispose() { try { File.Delete(_dbPath); File.Delete(_dbPath + "-wal"); File.Delete(_dbPath + "-shm"); } catch { } } |
| | | |
| | | private LeaseGrant Grab(string key, int ttl) |
| | | => _store.Acquire(new AcquireRequest |
| | | { |
| | | OwnerId = "f", OwnerType = OwnerTypeV3.Production, |
| | | ResourceKeys = new[] { key }, TtlSeconds = ttl |
| | | }).Grants[0]; |
| | | |
| | | [Fact] |
| | | public void Heartbeat_Renew_Extends_Expiry() |
| | | { |
| | | var g = Grab("can/x", 2); |
| | | long before = g.ExpiresUtcMs; |
| | | Thread.Sleep(1200); |
| | | Assert.True(_store.Renew(g, 2)); |
| | | Assert.True(_store.ProbeConflict("can/x").ExpiresUtcMs > before); |
| | | } |
| | | |
| | | [Fact] |
| | | public void Expired_Sweep_StaleRenew_False_And_RecoveryBlocked() |
| | | { |
| | | var g = Grab("can/y", 1); |
| | | Thread.Sleep(1500); |
| | | Assert.Equal(1, _store.SweepExpired()); |
| | | Assert.False(_store.Renew(g, 5)); |
| | | Assert.Null(_store.ProbeConflict("can/y")); |
| | | Assert.Equal(LeasePhase.RecoveryRequired, _store.PhaseOf("can/y")); |
| | | } |
| | | } |
| | | } |
| New file |
| | |
| | | using System; |
| | | using System.IO; |
| | | using System.Threading; |
| | | using Aging.Infrastructure.Core; |
| | | using Aging.Infrastructure.Contracts; |
| | | using Xunit; |
| | | |
| | | namespace Aging.MvpTests |
| | | { |
| | | public class LayeredResourceManagerTests : IDisposable |
| | | { |
| | | private readonly string _dbPath; |
| | | private readonly LayeredResourceManager _rm; |
| | | |
| | | public LayeredResourceManagerTests() |
| | | { |
| | | _dbPath = Path.Combine(Path.GetTempPath(), |
| | | "arb_" + Guid.NewGuid().ToString("N") + ".db"); |
| | | _rm = new LayeredResourceManager(new DbLeaseStore(_dbPath, "local-main")); |
| | | } |
| | | |
| | | public void Dispose() { try { File.Delete(_dbPath); File.Delete(_dbPath + "-wal"); File.Delete(_dbPath + "-shm"); } catch { } } |
| | | |
| | | [Fact] |
| | | public void ReserveAsync_Then_ValidateOwner_True() |
| | | { |
| | | var owner = new ResourceOwnerToken(OwnerType.Maintenance, "W01"); |
| | | var key = new ResourceKey("CAN-002", "CAN"); |
| | | var res = _rm.ReserveAsync(owner, key, CancellationToken.None) |
| | | .GetAwaiter().GetResult(); |
| | | Assert.Equal(ReservationState.Active, res.State); |
| | | Assert.True(_rm.ValidateOwner(owner, key)); |
| | | } |
| | | |
| | | [Fact] |
| | | public void ReserveAsync_Conflict_ExceptionCarriesHolder() |
| | | { |
| | | var a = new ResourceOwnerToken(OwnerType.Maintenance, "holder-A"); |
| | | var b = new ResourceOwnerToken(OwnerType.Production, "requester-B"); |
| | | var key = new ResourceKey("CAN-002", "CAN"); |
| | | _rm.ReserveAsync(a, key, CancellationToken.None).GetAwaiter().GetResult(); |
| | | var ex = Assert.Throws<ResourceConflictException>(() => |
| | | _rm.ReserveAsync(b, key, CancellationToken.None).GetAwaiter().GetResult()); |
| | | Assert.Contains("holder-A", ex.Message); |
| | | } |
| | | |
| | | [Fact] |
| | | public void ValidateOwner_DoesNotShrinkLease_KeepsFullTtl() |
| | | { |
| | | // åå½ï¼ValidateOwner æ¾ä»¥ Renew(grant,1) æ ¡éªï¼ä¼æç§çº¦å°æç å° now+1sï¼ |
| | | // 导è´ä½ç¨åç§çº¦å¿è·³ Renew å âå·²è¿æâ失败â¥2 â 误æ¥âç§çº¦å·²å¤±æâã |
| | | var owner = new ResourceOwnerToken(OwnerType.Production, "auto_x"); |
| | | var key = new ResourceKey("CAN-001", "Generic"); |
| | | _rm.ReserveAsync(owner, key, CancellationToken.None).GetAwaiter().GetResult(); |
| | | |
| | | // 模æ DeviceService æ¯æ¬¡æä½åçæ
æ æ ¡éª |
| | | Assert.True(_rm.ValidateOwner(owner, key)); |
| | | |
| | | var holder = _rm.Coordinator.ProbeConflict(key.ToString()); |
| | | Assert.NotNull(holder); |
| | | long nowMs = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); |
| | | Assert.True(holder!.ExpiresUtcMs - nowMs > 60_000, |
| | | $"ValidateOwner ä¸åºç çç§çº¦ï¼å©ä½åºâTTLï¼å®é
å©ä½ {(holder.ExpiresUtcMs - nowMs) / 1000}s"); |
| | | |
| | | // æ ¡éªåå¿è·³å¼ç»æä»åºæåï¼ç§çº¦æªè¿æï¼ |
| | | Assert.True(_rm.TryGetGrants(owner.TokenId, out var grants)); |
| | | Assert.True(_rm.Coordinator.Renew(grants![0], 30)); |
| | | } |
| | | |
| | | [Fact] |
| | | public void ReleaseReservationAsync_Then_OtherCanReserve() |
| | | { |
| | | var a = new ResourceOwnerToken(OwnerType.Maintenance, "A"); |
| | | var b = new ResourceOwnerToken(OwnerType.Production, "B"); |
| | | var key = new ResourceKey("CAN-002", "CAN"); |
| | | _rm.ReserveAsync(a, key, CancellationToken.None).GetAwaiter().GetResult(); |
| | | _rm.ReleaseReservationAsync(a, key, CancellationToken.None).GetAwaiter().GetResult(); |
| | | var ok = _rm.ReserveAsync(b, key, CancellationToken.None).GetAwaiter().GetResult(); |
| | | Assert.Equal(ReservationState.Active, ok.State); |
| | | } |
| | | } |
| | | } |
| New file |
| | |
| | | using System; |
| | | using System.IO; |
| | | using System.Text; |
| | | using System.Threading; |
| | | using System.Threading.Tasks; |
| | | using CanSimulator; |
| | | using Xunit; |
| | | |
| | | namespace Aging.MvpTests |
| | | { |
| | | /// <summary> |
| | | /// CAN 模æå¨ TCP 线åè®®å帧ç¼è§£ç 卿µè¯ã |
| | | /// çº¿æ ¼å¼ï¼4 åè大端é¿åº¦åç¼ + UTF8 ææ¬ï¼ä¸ BrokerIpc åæ¯ç¨æ³ï¼ã |
| | | /// </summary> |
| | | public class SimulatorFramingTests |
| | | { |
| | | [Fact] |
| | | public void Encode_RoundTrip_DecodesOriginalText() |
| | | { |
| | | string msg = "HELLO:CAN_BUS_1:0:HOST/PID"; |
| | | byte[] frame = SimulatorFraming.Encode(msg); |
| | | |
| | | Assert.Equal(4 + Encoding.UTF8.GetByteCount(msg), frame.Length); |
| | | |
| | | var ms = new MemoryStream(frame); |
| | | byte[] all = ms.ToArray(); |
| | | var got = SimulatorFraming.Decode(all, SimulatorFraming.HeaderSize, all.Length - SimulatorFraming.HeaderSize); |
| | | Assert.Equal(msg, got); |
| | | } |
| | | |
| | | [Fact] |
| | | public void ReadFrameAsync_TwoFramesInOneBuffer_DecodesBothInOrder() |
| | | { |
| | | // ç²å
ï¼ä¸¤ä¸ªå®æ´å¸§è¿ç»åå
¥å䏿µ |
| | | var ms = new MemoryStream(); |
| | | byte[] f1 = SimulatorFraming.Encode("OK:TX:0x100:8"); |
| | | ms.Write(f1, 0, f1.Length); |
| | | byte[] f2 = SimulatorFraming.Encode("EV:RECV:0x123:AA BB:12:00:00.111:2"); |
| | | ms.Write(f2, 0, f2.Length); |
| | | ms.Position = 0; |
| | | |
| | | string? r1 = SimulatorFraming.ReadFrameAsync(ms, CancellationToken.None).GetAwaiter().GetResult(); |
| | | string? r2 = SimulatorFraming.ReadFrameAsync(ms, CancellationToken.None).GetAwaiter().GetResult(); |
| | | |
| | | Assert.Equal("OK:TX:0x100:8", r1); |
| | | Assert.Equal("EV:RECV:0x123:AA BB:12:00:00.111:2", r2); |
| | | } |
| | | |
| | | [Fact] |
| | | public void ReadFrameAsync_FrameSplitAcrossTwoReads_ReassemblesFullFrame() |
| | | { |
| | | // åå
ï¼å¸§ä½è¢«ææä¸¤æ¬¡å°è¾¾ï¼ç¨åæ®µæµæ¨¡æï¼ |
| | | byte[] frame = SimulatorFraming.Encode("SEND:0x777:DE AD BE EF"); |
| | | var chunked = new ChunkedStream(frame, chunk: 6); // å¤´é¨ 6 åèååæ |
| | | |
| | | string? got = SimulatorFraming.ReadFrameAsync(chunked, CancellationToken.None).GetAwaiter().GetResult(); |
| | | Assert.Equal("SEND:0x777:DE AD BE EF", got); |
| | | } |
| | | |
| | | [Fact] |
| | | public void ReadFrameAsync_LengthExceedsMax_Throws() |
| | | { |
| | | // éæ³é¿åº¦åç¼ï¼è¶
è¿ MaxFrameBytes |
| | | byte[] bad = new byte[4]; |
| | | bad[0] = 0x7F; bad[1] = 0xFF; bad[2] = 0xFF; bad[3] = 0xFF; // ~2GB |
| | | var ms = new MemoryStream(bad); |
| | | |
| | | Assert.Throws<InvalidDataException>(() => |
| | | SimulatorFraming.ReadFrameAsync(ms, CancellationToken.None).GetAwaiter().GetResult()); |
| | | } |
| | | |
| | | [Fact] |
| | | public void ReadFrameAsync_ZeroLengthPrefix_Throws() |
| | | { |
| | | byte[] bad = new byte[4]; // é¿åº¦ 0 |
| | | var ms = new MemoryStream(bad); |
| | | |
| | | Assert.Throws<InvalidDataException>(() => |
| | | SimulatorFraming.ReadFrameAsync(ms, CancellationToken.None).GetAwaiter().GetResult()); |
| | | } |
| | | |
| | | [Fact] |
| | | public void ReadFrameAsync_EmptyStream_ReturnsNull() |
| | | { |
| | | // 对端æ£å¸¸å
³éï¼è¯»ä¸å°ä»»ä½åèæ¶è¿å nullï¼æçº¿æç¥å¥çº¦ï¼ |
| | | var ms = new MemoryStream(new byte[0]); |
| | | string? got = SimulatorFraming.ReadFrameAsync(ms, CancellationToken.None).GetAwaiter().GetResult(); |
| | | Assert.Null(got); |
| | | } |
| | | |
| | | [Fact] |
| | | public void ReadFrameAsync_TruncatedBody_ReturnsNull() |
| | | { |
| | | // 头宿´ä½ä½ä¸é EOFï¼è¿å null 触åéè¿ |
| | | byte[] frame = SimulatorFraming.Encode("QUERY:RECV_ALL"); |
| | | var truncated = new byte[frame.Length - 3]; |
| | | Array.Copy(frame, truncated, truncated.Length); |
| | | var ms = new MemoryStream(truncated); |
| | | |
| | | string? got = SimulatorFraming.ReadFrameAsync(ms, CancellationToken.None).GetAwaiter().GetResult(); |
| | | Assert.Null(got); |
| | | } |
| | | |
| | | /// <summary>æ¯æ¬¡ Read åªä»å
é¨ç¼å²åºååºå®çæ®µï¼æ¨¡æç½ç»åçå°è¾¾</summary> |
| | | private sealed class ChunkedStream : Stream |
| | | { |
| | | private readonly byte[] _data; |
| | | private readonly int _chunk; |
| | | private int _pos; |
| | | public ChunkedStream(byte[] data, int chunk) { _data = data; _chunk = chunk; } |
| | | public override bool CanRead => true; |
| | | public override bool CanSeek => false; |
| | | public override bool CanWrite => false; |
| | | public override long Length => _data.Length; |
| | | public override long Position { get => _pos; set => throw new NotSupportedException(); } |
| | | public override void Flush() { } |
| | | public override int Read(byte[] buffer, int offset, int count) |
| | | { |
| | | if (_pos >= _data.Length) return 0; |
| | | int n = Math.Min(Math.Min(count, _chunk), _data.Length - _pos); |
| | | Array.Copy(_data, _pos, buffer, offset, n); |
| | | _pos += n; |
| | | return n; |
| | | } |
| | | public override long Seek(long o, SeekOrigin s) => throw new NotSupportedException(); |
| | | public override void SetLength(long v) => throw new NotSupportedException(); |
| | | public override void Write(byte[] b, int o, int c) => throw new NotSupportedException(); |
| | | } |
| | | } |
| | | } |
| New file |
| | |
| | | using System; |
| | | using System.IO; |
| | | using System.Net.Sockets; |
| | | using System.Threading; |
| | | using System.Threading.Tasks; |
| | | using CanSimulatorServer; |
| | | using Xunit; |
| | | |
| | | namespace Aging.MvpTests |
| | | { |
| | | /// <summary> |
| | | /// 模æå¨æå¡ç«¯æ ¸å¿è¡ä¸ºæµè¯ï¼HELLO ç¶ææºãNODE_BUSY 仲è£ã |
| | | /// è·¨èç¹è·¯ç±æ¨éãèªå¨ååºåæ¨ãå½ä»¤ä¸²æ§è¡ï¼AUTO_RESPONSE/STATUSï¼ã |
| | | /// æµè¯è¿ç¨å
æç®¡ TcpSimulatorHostï¼éæºç«¯å£ï¼ï¼èµ°çå® TCP åç¯ã |
| | | /// </summary> |
| | | public class SimulatorServerCoreTests : IDisposable |
| | | { |
| | | private readonly TcpSimulatorHost _host; |
| | | private readonly int _port; |
| | | |
| | | public SimulatorServerCoreTests() |
| | | { |
| | | _host = new TcpSimulatorHost(); |
| | | _host.StartAsync().GetAwaiter().GetResult(); |
| | | _port = _host.Port; |
| | | } |
| | | |
| | | public void Dispose() => _host.Dispose(); |
| | | |
| | | // ==================== 客æ·ç«¯è¾
å© ==================== |
| | | |
| | | private sealed class FakeClient : IDisposable |
| | | { |
| | | public TcpClient Socket = null!; |
| | | public Stream Stream = null!; |
| | | |
| | | public async Task ConnectAsync(int port) |
| | | { |
| | | Socket = new TcpClient(); |
| | | await Socket.ConnectAsync("127.0.0.1", port); |
| | | Stream = Socket.GetStream(); |
| | | } |
| | | |
| | | public Task SendAsync(string msg) |
| | | { |
| | | byte[] f = CanSimulator.SimulatorFraming.Encode(msg); |
| | | return Stream.WriteAsync(f, 0, f.Length); |
| | | } |
| | | public Task<string> RecvAsync() => ReadFrameBlocking(); |
| | | |
| | | public async Task<string> HelloAsync(string bus, int node, string tag = "t") |
| | | { |
| | | await SendAsync($"HELLO:{bus}:{node}:{tag}"); |
| | | return await ReadFrameBlocking(); |
| | | } |
| | | |
| | | private async Task<string> ReadFrameBlocking() |
| | | { |
| | | var s = await CanSimulator.SimulatorFraming.ReadFrameAsync(Stream, CancellationToken.None); |
| | | return s ?? "<EOF>"; |
| | | } |
| | | |
| | | public void Dispose() { try { Stream?.Dispose(); Socket?.Close(); } catch { } } |
| | | } |
| | | |
| | | // ==================== HELLO ç¶ææº ==================== |
| | | |
| | | [Fact] |
| | | public void Hello_FirstClient_AcksOk() |
| | | { |
| | | using var c = new FakeClient(); |
| | | c.ConnectAsync(_port).GetAwaiter().GetResult(); |
| | | var ack = c.HelloAsync("CAN_BUS_1", 0).GetAwaiter().GetResult(); |
| | | Assert.StartsWith("OK:HELLO", ack); |
| | | } |
| | | |
| | | [Fact] |
| | | public void Query_BeforeHello_ReturnsNotHandshaked() |
| | | { |
| | | using var c = new FakeClient(); |
| | | c.ConnectAsync(_port).GetAwaiter().GetResult(); |
| | | c.SendAsync("QUERY:STATUS").GetAwaiter().GetResult(); |
| | | var resp = c.RecvAsync().GetAwaiter().GetResult(); |
| | | Assert.Equal("ERR:NOT_HANDSHAKED", resp); |
| | | } |
| | | |
| | | [Fact] |
| | | public void UnknownCommand_ReturnsUnknownCmd_WithoutDroppingConnection() |
| | | { |
| | | using var c = new FakeClient(); |
| | | c.ConnectAsync(_port).GetAwaiter().GetResult(); |
| | | c.HelloAsync("CAN_BUS_1", 0).GetAwaiter().GetResult(); |
| | | |
| | | c.SendAsync("FOO:bar").GetAwaiter().GetResult(); |
| | | Assert.Equal("ERR:UNKNOWN_CMD:FOO:bar", c.RecvAsync().GetAwaiter().GetResult()); |
| | | |
| | | // è¿æ¥ä¿æå¯ç¨ï¼åç»åæ³å½ä»¤ä»æååº |
| | | c.SendAsync("QUERY:STATUS").GetAwaiter().GetResult(); |
| | | Assert.StartsWith("OK:", c.RecvAsync().GetAwaiter().GetResult()); |
| | | } |
| | | |
| | | // ==================== NODE_BUSY ä»²è£ ==================== |
| | | |
| | | [Fact] |
| | | public void Hello_SameBusSameNode_SecondRejectedNodeBusy() |
| | | { |
| | | using var a = new FakeClient(); |
| | | using var b = new FakeClient(); |
| | | a.ConnectAsync(_port).GetAwaiter().GetResult(); |
| | | b.ConnectAsync(_port).GetAwaiter().GetResult(); |
| | | |
| | | Assert.StartsWith("OK:HELLO", a.HelloAsync("CAN_BUS_1", 3).GetAwaiter().GetResult()); |
| | | Assert.Equal("ERR:NODE_BUSY", b.HelloAsync("CAN_BUS_1", 3).GetAwaiter().GetResult()); |
| | | |
| | | // ä¸åæ»çº¿åèç¹ç¼å·ä¸å²çª |
| | | Assert.StartsWith("OK:HELLO", b.HelloAsync("CAN_BUS_2", 3).GetAwaiter().GetResult()); |
| | | } |
| | | |
| | | [Fact] |
| | | public void Hello_AfterDisconnect_SameNodeCanReattach() |
| | | { |
| | | var a = new FakeClient(); |
| | | a.ConnectAsync(_port).GetAwaiter().GetResult(); |
| | | a.HelloAsync("CAN_BUS_1", 7).GetAwaiter().GetResult(); |
| | | a.Dispose(); // 模æè¿æ¥æå¼ |
| | | |
| | | using var b = new FakeClient(); |
| | | b.ConnectAsync(_port).GetAwaiter().GetResult(); |
| | | // æå¡ç«¯æç¥ EOF éå°è®¸æ¶é´ï¼è½®è¯¢éè¯ |
| | | string ack = ""; |
| | | for (int i = 0; i < 50 && !ack.StartsWith("OK"); i++) |
| | | { |
| | | Thread.Sleep(20); |
| | | b.SendAsync($"HELLO:CAN_BUS_1:7:retry{i}").GetAwaiter().GetResult(); |
| | | ack = b.RecvAsync().GetAwaiter().GetResult(); |
| | | } |
| | | Assert.StartsWith("OK:HELLO", ack); |
| | | } |
| | | |
| | | // ==================== è·¯ç±ä¸æ¨é ==================== |
| | | |
| | | [Fact] |
| | | public void Send_FromOneNode_OtherNodeReceivesEvPush() |
| | | { |
| | | using var a = new FakeClient(); |
| | | using var b = new FakeClient(); |
| | | a.ConnectAsync(_port).GetAwaiter().GetResult(); |
| | | b.ConnectAsync(_port).GetAwaiter().GetResult(); |
| | | a.HelloAsync("CAN_BUS_1", 0).GetAwaiter().GetResult(); |
| | | b.HelloAsync("CAN_BUS_1", 1).GetAwaiter().GetResult(); |
| | | |
| | | a.SendAsync("SEND:0x123:AA BB CC").GetAwaiter().GetResult(); |
| | | var ack = a.RecvAsync().GetAwaiter().GetResult(); |
| | | Assert.StartsWith("OK:TX", ack); |
| | | |
| | | // 对端èç¹æ¶å°æå¡ç«¯ä¸»å¨æ¨é |
| | | var push = b.RecvAsync().GetAwaiter().GetResult(); |
| | | Assert.StartsWith("EV:RECV:0x123:AA BB CC", push); |
| | | } |
| | | |
| | | [Fact] |
| | | public void Send_AutoResponseEnabled_RespondsToPeerAndSelf() |
| | | { |
| | | using var a = new FakeClient(); |
| | | using var b = new FakeClient(); |
| | | a.ConnectAsync(_port).GetAwaiter().GetResult(); |
| | | b.ConnectAsync(_port).GetAwaiter().GetResult(); |
| | | a.HelloAsync("CAN_BUS_1", 10).GetAwaiter().GetResult(); |
| | | b.HelloAsync("CAN_BUS_1", 11).GetAwaiter().GetResult(); |
| | | |
| | | // b å¼å¯èªå¨ååºï¼QUERY åå½ä»¤ï¼ååºä¸è¡ï¼ |
| | | b.SendAsync("QUERY:AUTO_RESPONSE:ON").GetAwaiter().GetResult(); |
| | | Assert.StartsWith("OK:", b.RecvAsync().GetAwaiter().GetResult()); |
| | | |
| | | // a å帧 â b è·¯ç±æ¶å¸§(æ¨é) + èªå¨ååºå¸§å a |
| | | a.SendAsync("SEND:0x500:11 22").GetAwaiter().GetResult(); |
| | | Assert.StartsWith("OK:TX", a.RecvAsync().GetAwaiter().GetResult()); |
| | | |
| | | // b èªå·±æ¶å°æºè·¯ç±æ¨é |
| | | Assert.StartsWith("EV:RECV:0x500:11 22", b.RecvAsync().GetAwaiter().GetResult()); |
| | | // a æ¶å°èªå¨ååºå¸§ï¼æ¥æº=b èç¹ 11ï¼ |
| | | var respPush = a.RecvAsync().GetAwaiter().GetResult(); |
| | | Assert.StartsWith("EV:RECV:0x500:11 22", respPush); |
| | | Assert.EndsWith(":11", respPush); // srcNodeIndex=11 |
| | | } |
| | | |
| | | // ==================== å½ä»¤æ§è¡ ==================== |
| | | |
| | | [Fact] |
| | | public void Query_Status_AfterHello_ReturnsOkStatus() |
| | | { |
| | | using var a = new FakeClient(); |
| | | a.ConnectAsync(_port).GetAwaiter().GetResult(); |
| | | a.HelloAsync("CAN_BUS_1", 20).GetAwaiter().GetResult(); |
| | | |
| | | a.SendAsync("QUERY:STATUS").GetAwaiter().GetResult(); |
| | | var resp = a.RecvAsync().GetAwaiter().GetResult(); |
| | | Assert.StartsWith("OK:STATUS:", resp); |
| | | Assert.Contains("Node=20", resp); // èç¹ä»¥ç¼å·å¯»å |
| | | } |
| | | |
| | | [Fact] |
| | | public void GarbageFrame_ClosesSession_ButHostKeepsListening() |
| | | { |
| | | // éæ³é¿åº¦åç¼ï¼å议失æ¥ï¼ï¼æå¡ç«¯æå¼è¯¥ä¼è¯ï¼ä½åç»æ°è¿æ¥ä»è½ HELLO |
| | | int p = _port; |
| | | using (var raw = new TcpClient("127.0.0.1", p)) |
| | | { |
| | | byte[] bad = { 0x00, 0x00, 0x00, 0x00 }; // é¿åº¦ 0 |
| | | raw.GetStream().Write(bad, 0, 4); |
| | | } |
| | | Thread.Sleep(100); |
| | | |
| | | using var c = new FakeClient(); |
| | | c.ConnectAsync(_port).GetAwaiter().GetResult(); |
| | | Assert.StartsWith("OK:HELLO", c.HelloAsync("CAN_BUS_9", 0).GetAwaiter().GetResult()); |
| | | } |
| | | |
| | | // ==================== æ»çº¿çº§åºçå¨ ==================== |
| | | |
| | | [Fact] |
| | | public void BusEcho_Enabled_SenderReceivesOwnFrameAsResponder() |
| | | { |
| | | using var a = new FakeClient(); |
| | | a.ConnectAsync(_port).GetAwaiter().GetResult(); |
| | | a.HelloAsync("CAN_ECHO_ON", 0).GetAwaiter().GetResult(); |
| | | |
| | | a.SendAsync("QUERY:BUS_ECHO:ON").GetAwaiter().GetResult(); |
| | | Assert.StartsWith("OK:", a.RecvAsync().GetAwaiter().GetResult()); |
| | | |
| | | // åèç¹åå¸§ï¼æ å IDï¼ï¼åºçå¨åºæå叧忾ç»åéè
ï¼æ é第äºèç¹ï¼ |
| | | a.SendAsync("SEND:0x111:AA BB").GetAwaiter().GetResult(); |
| | | Assert.StartsWith("OK:TX", a.RecvAsync().GetAwaiter().GetResult()); |
| | | |
| | | var echo = a.RecvAsync().GetAwaiter().GetResult(); |
| | | Assert.StartsWith("EV:RECV:0x111:AA BB", echo); |
| | | Assert.EndsWith(":RESPONDER", echo); |
| | | } |
| | | |
| | | [Fact] |
| | | public void BusEcho_Disabled_NoEchoDelivered() |
| | | { |
| | | using var a = new FakeClient(); |
| | | a.ConnectAsync(_port).GetAwaiter().GetResult(); |
| | | a.HelloAsync("CAN_ECHO_OFF", 0).GetAwaiter().GetResult(); // é»è®¤å
³ |
| | | |
| | | a.SendAsync("SEND:0x912:11").GetAwaiter().GetResult(); |
| | | Assert.StartsWith("OK:TX", a.RecvAsync().GetAwaiter().GetResult()); |
| | | |
| | | // ç´§æ¥ççååºåºä¸ºæ¥è¯¢æ¬èº«ï¼ä¸é´ä¸åºæå
¥ä»»ä½ EV:RECV åæ¾ |
| | | a.SendAsync("QUERY:BUS_ECHO").GetAwaiter().GetResult(); |
| | | Assert.Equal("OK:BUS_ECHO:OFF", a.RecvAsync().GetAwaiter().GetResult()); |
| | | } |
| | | } |
| | | } |
| New file |
| | |
| | | using Xunit; |
| | | |
| | | namespace Aging.MvpTests |
| | | { |
| | | public class UnitTest1 |
| | | { |
| | | [Fact] |
| | | public void Test1() |
| | | { |
| | | Assert.True(true); |
| | | } |
| | | } |
| | | } |