From 24977a081805503964eabe71c9d8555658b71a45 Mon Sep 17 00:00:00 2001 From: ycastonguay Date: Tue, 20 Aug 2013 19:03:36 -0400 Subject: [PATCH] Added IDesktopFirstRunView, IMobileFirstRunView and IEditSongMetadataView (and their presenters). They are empty for now. Edit Song Metadata can now be opened on Windows. The Song Browser contextual menu is now working again on Windows. Related to issue #422. --- MPfm/MPfm.MVP/Bootstrap/Bootstrapper.cs | 3 + MPfm/MPfm.MVP/MPfm.MVP.csproj | 9 + MPfm/MPfm.MVP/Navigation/NavigationManager.cs | 83 ++ .../Presenters/DesktopFirstRunPresenter.cs | 39 + .../Presenters/EditSongMetadataPresenter.cs | 47 + .../Interfaces/IDesktopFirstRunPresenter.cs | 29 + .../Interfaces/IEditSongMetadataPresenter.cs | 30 + .../Interfaces/IMobileFirstRunPresenter.cs | 29 + .../Interfaces/ISongBrowserPresenter.cs | 68 +- .../Presenters/MobileFirstRunPresenter.cs | 39 + MPfm/MPfm.MVP/Presenters/PlayerPresenter.cs | 28 +- .../Presenters/SongBrowserPresenter.cs | 230 ++--- MPfm/MPfm.MVP/Views/IDesktopFirstRunView.cs | 32 + MPfm/MPfm.MVP/Views/IEditSongMetadataView.cs | 32 + MPfm/MPfm.MVP/Views/IMobileFirstRunView.cs | 32 + MPfm/MPfm.MVP/Views/IPlayerView.cs | 8 +- MPfm/MPfm.MVP/Views/ISongBrowserView.cs | 69 +- .../Classes/Forms/frmEditSongMetadata.cs | 31 +- .../MPfm.Windows/Classes/Forms/frmFirstRun.cs | 24 +- ...Designer.cs => frmLoopDetails.Designer.cs} | 6 +- .../{frmAddEditLoop.cs => frmLoopDetails.cs} | 60 +- ...rmAddEditLoop.resx => frmLoopDetails.resx} | 0 .../Classes/Forms/frmMain.Designer.cs | 2 +- MPfm/MPfm.Windows/Classes/Forms/frmMain.cs | 18 +- MPfm/MPfm.Windows/Classes/Forms/frmMain.resx | 934 +++++++++--------- ...signer.cs => frmMarkerDetails.Designer.cs} | 4 +- ...rmAddEditMarker.cs => frmMarkerDetails.cs} | 77 +- ...dEditMarker.resx => frmMarkerDetails.resx} | 0 MPfm/MPfm.Windows/Classes/Program.cs | 4 + MPfm/MPfm.Windows/MPfm.Windows.csproj | 20 +- 30 files changed, 1144 insertions(+), 843 deletions(-) create mode 100644 MPfm/MPfm.MVP/Presenters/DesktopFirstRunPresenter.cs create mode 100644 MPfm/MPfm.MVP/Presenters/EditSongMetadataPresenter.cs create mode 100644 MPfm/MPfm.MVP/Presenters/Interfaces/IDesktopFirstRunPresenter.cs create mode 100644 MPfm/MPfm.MVP/Presenters/Interfaces/IEditSongMetadataPresenter.cs create mode 100644 MPfm/MPfm.MVP/Presenters/Interfaces/IMobileFirstRunPresenter.cs create mode 100644 MPfm/MPfm.MVP/Presenters/MobileFirstRunPresenter.cs create mode 100644 MPfm/MPfm.MVP/Views/IDesktopFirstRunView.cs create mode 100644 MPfm/MPfm.MVP/Views/IEditSongMetadataView.cs create mode 100644 MPfm/MPfm.MVP/Views/IMobileFirstRunView.cs rename MPfm/MPfm.Windows/Classes/Forms/{frmAddEditLoop.Designer.cs => frmLoopDetails.Designer.cs} (99%) rename MPfm/MPfm.Windows/Classes/Forms/{frmAddEditLoop.cs => frmLoopDetails.cs} (88%) rename MPfm/MPfm.Windows/Classes/Forms/{frmAddEditLoop.resx => frmLoopDetails.resx} (100%) rename MPfm/MPfm.Windows/Classes/Forms/{frmAddEditMarker.Designer.cs => frmMarkerDetails.Designer.cs} (99%) rename MPfm/MPfm.Windows/Classes/Forms/{frmAddEditMarker.cs => frmMarkerDetails.cs} (86%) rename MPfm/MPfm.Windows/Classes/Forms/{frmAddEditMarker.resx => frmMarkerDetails.resx} (100%) diff --git a/MPfm/MPfm.MVP/Bootstrap/Bootstrapper.cs b/MPfm/MPfm.MVP/Bootstrap/Bootstrapper.cs index 7013daeb..2c39a29e 100644 --- a/MPfm/MPfm.MVP/Bootstrap/Bootstrapper.cs +++ b/MPfm/MPfm.MVP/Bootstrap/Bootstrapper.cs @@ -84,6 +84,9 @@ static Bootstrapper() container.Register().AsMultiInstance(); container.Register().AsMultiInstance(); container.Register().AsMultiInstance(); + container.Register().AsSingleton(); + container.Register().AsSingleton(); + container.Register().AsSingleton(); container.Register().AsSingleton(); } diff --git a/MPfm/MPfm.MVP/MPfm.MVP.csproj b/MPfm/MPfm.MVP/MPfm.MVP.csproj index 0fd26de7..bc68b070 100644 --- a/MPfm/MPfm.MVP/MPfm.MVP.csproj +++ b/MPfm/MPfm.MVP/MPfm.MVP.csproj @@ -112,6 +112,12 @@ + + + + + + @@ -121,6 +127,9 @@ + + + diff --git a/MPfm/MPfm.MVP/Navigation/NavigationManager.cs b/MPfm/MPfm.MVP/Navigation/NavigationManager.cs index 7895cf5f..b22a1f4a 100644 --- a/MPfm/MPfm.MVP/Navigation/NavigationManager.cs +++ b/MPfm/MPfm.MVP/Navigation/NavigationManager.cs @@ -19,6 +19,7 @@ using System.Collections.Generic; using MPfm.Library.UpdateLibrary; using MPfm.MVP.Bootstrap; +using MPfm.Player.Objects; using TinyIoC; using MPfm.MVP.Views; using MPfm.MVP.Presenters.Interfaces; @@ -45,6 +46,18 @@ public abstract class NavigationManager ITimeShiftingPresenter _timeShiftingPresenter; IPitchShiftingPresenter _pitchShiftingPresenter; + IMarkerDetailsView _markerDetailsView; + IMarkerDetailsPresenter _markerDetailsPresenter; + + ILoopDetailsView _loopDetailsView; + ILoopDetailsPresenter _loopDetailsPresenter; + + IDesktopFirstRunView _firstRunView; + IDesktopFirstRunPresenter _firstRunPresenter; + + IEditSongMetadataView _editSongMetadataView; + IEditSongMetadataPresenter _editSongMetadataPresenter; + IDesktopPreferencesView _preferencesView; IAudioPreferencesPresenter _audioPreferencesPresenter; IGeneralPreferencesPresenter _generalPreferencesPresenter; @@ -295,5 +308,75 @@ public virtual IUpdateLibraryView CreateUpdateLibraryView(UpdateLibraryMode mode }; return _updateLibraryView; } + + public virtual IDesktopFirstRunView CreateFirstRunView() + { + if (_firstRunView != null) + { + _firstRunView.ShowView(true); + return _firstRunView; + } + + Action onViewReady = (view) => + { + _firstRunPresenter = Bootstrapper.GetContainer().Resolve(); + _firstRunPresenter.BindView((IDesktopFirstRunView)view); + }; + + _firstRunView = Bootstrapper.GetContainer().Resolve(new NamedParameterOverloads() { { "onViewReady", onViewReady } }); + _firstRunView.OnViewDestroy = (view) => + { + _firstRunView = null; + _firstRunPresenter = null; + }; + return _firstRunView; + } + + public virtual IEditSongMetadataView CreateEditSongMetadataView(AudioFile audioFile) + { + if (_editSongMetadataView != null) + { + _editSongMetadataView.ShowView(true); + return _editSongMetadataView; + } + + Action onViewReady = (view) => + { + _editSongMetadataPresenter = Bootstrapper.GetContainer().Resolve(); + _editSongMetadataPresenter.BindView((IEditSongMetadataView)view); + _editSongMetadataPresenter.SetAudioFile(audioFile); + }; + + _editSongMetadataView = Bootstrapper.GetContainer().Resolve(new NamedParameterOverloads() { { "onViewReady", onViewReady } }); + _editSongMetadataView.OnViewDestroy = (view) => + { + _editSongMetadataView = null; + _editSongMetadataPresenter = null; + }; + return _editSongMetadataView; + } + + public virtual IMarkerDetailsView CreateMarkerDetailsView(Guid markerId) + { + if (_markerDetailsView != null) + { + _markerDetailsView.ShowView(true); + return _markerDetailsView; + } + + Action onViewReady = (view) => + { + _markerDetailsPresenter = Bootstrapper.GetContainer().Resolve(new NamedParameterOverloads() { { "markerId", markerId } }); + _markerDetailsPresenter.BindView((IMarkerDetailsView)view); + }; + + _markerDetailsView = Bootstrapper.GetContainer().Resolve(new NamedParameterOverloads() { { "onViewReady", onViewReady } }); + _markerDetailsView.OnViewDestroy = (view) => + { + _markerDetailsView = null; + _markerDetailsPresenter = null; + }; + return _markerDetailsView; + } } } diff --git a/MPfm/MPfm.MVP/Presenters/DesktopFirstRunPresenter.cs b/MPfm/MPfm.MVP/Presenters/DesktopFirstRunPresenter.cs new file mode 100644 index 00000000..c72c00ef --- /dev/null +++ b/MPfm/MPfm.MVP/Presenters/DesktopFirstRunPresenter.cs @@ -0,0 +1,39 @@ +// Copyright © 2011-2013 Yanick Castonguay +// +// This file is part of MPfm. +// +// MPfm is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// MPfm is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with MPfm. If not, see . + +using MPfm.MVP.Navigation; +using MPfm.MVP.Presenters.Interfaces; +using MPfm.MVP.Views; + +namespace MPfm.MVP.Presenters +{ + /// + /// First Run view presenter for desktop devices. + /// + public class DesktopFirstRunPresenter : BasePresenter, IDesktopFirstRunPresenter + { + public DesktopFirstRunPresenter() + { + } + + public override void BindView(IDesktopFirstRunView view) + { + base.BindView(view); + } + } +} + diff --git a/MPfm/MPfm.MVP/Presenters/EditSongMetadataPresenter.cs b/MPfm/MPfm.MVP/Presenters/EditSongMetadataPresenter.cs new file mode 100644 index 00000000..8a39e64e --- /dev/null +++ b/MPfm/MPfm.MVP/Presenters/EditSongMetadataPresenter.cs @@ -0,0 +1,47 @@ +// Copyright © 2011-2013 Yanick Castonguay +// +// This file is part of MPfm. +// +// MPfm is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// MPfm is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with MPfm. If not, see . + +using MPfm.MVP.Navigation; +using MPfm.MVP.Presenters.Interfaces; +using MPfm.MVP.Views; +using MPfm.Sound.AudioFiles; + +namespace MPfm.MVP.Presenters +{ + /// + /// Edit Song Metadata view presenter. + /// + public class EditSongMetadataPresenter : BasePresenter, IEditSongMetadataPresenter + { + AudioFile _audioFile; + + public EditSongMetadataPresenter() + { + } + + public override void BindView(IEditSongMetadataView view) + { + base.BindView(view); + } + + public void SetAudioFile(AudioFile audioFile) + { + _audioFile = audioFile; + } + } +} + diff --git a/MPfm/MPfm.MVP/Presenters/Interfaces/IDesktopFirstRunPresenter.cs b/MPfm/MPfm.MVP/Presenters/Interfaces/IDesktopFirstRunPresenter.cs new file mode 100644 index 00000000..3cd004cf --- /dev/null +++ b/MPfm/MPfm.MVP/Presenters/Interfaces/IDesktopFirstRunPresenter.cs @@ -0,0 +1,29 @@ +// Copyright © 2011-2013 Yanick Castonguay +// +// This file is part of MPfm. +// +// MPfm is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// MPfm is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with MPfm. If not, see . + +using MPfm.MVP.Models; +using MPfm.MVP.Views; + +namespace MPfm.MVP.Presenters.Interfaces +{ + /// + /// First Run presenter interface for desktop devices. + /// + public interface IDesktopFirstRunPresenter : IBasePresenter + { + } +} diff --git a/MPfm/MPfm.MVP/Presenters/Interfaces/IEditSongMetadataPresenter.cs b/MPfm/MPfm.MVP/Presenters/Interfaces/IEditSongMetadataPresenter.cs new file mode 100644 index 00000000..b07bf6ad --- /dev/null +++ b/MPfm/MPfm.MVP/Presenters/Interfaces/IEditSongMetadataPresenter.cs @@ -0,0 +1,30 @@ +// Copyright © 2011-2013 Yanick Castonguay +// +// This file is part of MPfm. +// +// MPfm is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// MPfm is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with MPfm. If not, see . + +using MPfm.MVP.Views; +using MPfm.Sound.AudioFiles; + +namespace MPfm.MVP.Presenters.Interfaces +{ + /// + /// Edit Song Metadata presenter interface. + /// + public interface IEditSongMetadataPresenter : IBasePresenter + { + void SetAudioFile(AudioFile audioFile); + } +} diff --git a/MPfm/MPfm.MVP/Presenters/Interfaces/IMobileFirstRunPresenter.cs b/MPfm/MPfm.MVP/Presenters/Interfaces/IMobileFirstRunPresenter.cs new file mode 100644 index 00000000..47afc393 --- /dev/null +++ b/MPfm/MPfm.MVP/Presenters/Interfaces/IMobileFirstRunPresenter.cs @@ -0,0 +1,29 @@ +// Copyright © 2011-2013 Yanick Castonguay +// +// This file is part of MPfm. +// +// MPfm is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// MPfm is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with MPfm. If not, see . + +using MPfm.MVP.Models; +using MPfm.MVP.Views; + +namespace MPfm.MVP.Presenters.Interfaces +{ + /// + /// First Run presenter interface for mobile devices. + /// + public interface IMobileFirstRunPresenter : IBasePresenter + { + } +} diff --git a/MPfm/MPfm.MVP/Presenters/Interfaces/ISongBrowserPresenter.cs b/MPfm/MPfm.MVP/Presenters/Interfaces/ISongBrowserPresenter.cs index 65dc5075..0a0ee04f 100644 --- a/MPfm/MPfm.MVP/Presenters/Interfaces/ISongBrowserPresenter.cs +++ b/MPfm/MPfm.MVP/Presenters/Interfaces/ISongBrowserPresenter.cs @@ -1,35 +1,33 @@ -// Copyright © 2011-2013 Yanick Castonguay -// -// This file is part of MPfm. -// -// MPfm is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// MPfm is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with MPfm. If not, see . - -using MPfm.MVP.Models; -using MPfm.MVP.Views; -using MPfm.Sound.AudioFiles; -using MPfm.Library.Objects; - -namespace MPfm.MVP.Presenters.Interfaces -{ - /// - /// Song browser presenter interface. - /// - public interface ISongBrowserPresenter : IBasePresenter - { - LibraryQuery Query { get; } - - void ChangeQuery(LibraryQuery query); - void TableRowDoubleClicked(AudioFile audioFile); - } -} +// Copyright © 2011-2013 Yanick Castonguay +// +// This file is part of MPfm. +// +// MPfm is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// MPfm is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with MPfm. If not, see . + +using System; +using MPfm.MVP.Models; +using MPfm.MVP.Views; +using MPfm.Sound.AudioFiles; +using MPfm.Library.Objects; + +namespace MPfm.MVP.Presenters.Interfaces +{ + /// + /// Song Browser presenter interface. + /// + public interface ISongBrowserPresenter : IBasePresenter + { + + } +} diff --git a/MPfm/MPfm.MVP/Presenters/MobileFirstRunPresenter.cs b/MPfm/MPfm.MVP/Presenters/MobileFirstRunPresenter.cs new file mode 100644 index 00000000..f052e342 --- /dev/null +++ b/MPfm/MPfm.MVP/Presenters/MobileFirstRunPresenter.cs @@ -0,0 +1,39 @@ +// Copyright © 2011-2013 Yanick Castonguay +// +// This file is part of MPfm. +// +// MPfm is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// MPfm is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with MPfm. If not, see . + +using MPfm.MVP.Navigation; +using MPfm.MVP.Presenters.Interfaces; +using MPfm.MVP.Views; + +namespace MPfm.MVP.Presenters +{ + /// + /// First Run view presenter for mobile devices. + /// + public class MobileFirstRunPresenter : BasePresenter, IMobileFirstRunPresenter + { + public MobileFirstRunPresenter() + { + } + + public override void BindView(IMobileFirstRunView view) + { + base.BindView(view); + } + } +} + diff --git a/MPfm/MPfm.MVP/Presenters/PlayerPresenter.cs b/MPfm/MPfm.MVP/Presenters/PlayerPresenter.cs index 455dbda5..00dde507 100644 --- a/MPfm/MPfm.MVP/Presenters/PlayerPresenter.cs +++ b/MPfm/MPfm.MVP/Presenters/PlayerPresenter.cs @@ -19,8 +19,10 @@ using System.Collections.Generic; using System.Linq; using System.Timers; +using MPfm.MVP.Bootstrap; using MPfm.MVP.Messages; using MPfm.MVP.Models; +using MPfm.MVP.Navigation; using MPfm.MVP.Presenters.Interfaces; using MPfm.MVP.Services.Interfaces; using MPfm.MVP.Views; @@ -38,13 +40,13 @@ namespace MPfm.MVP.Presenters /// public class PlayerPresenter : BasePresenter, IPlayerPresenter { - // Private variables - //IPlayerView view; - Timer _timerRefreshSongPosition; + readonly MobileNavigationManager _mobileNavigationManager; + readonly NavigationManager _navigationManager; readonly IPlayerService _playerService; readonly ILibraryService _libraryService; readonly IAudioFileCacheService _audioFileCacheService; readonly ITinyMessengerHub _messageHub; + Timer _timerRefreshSongPosition; public PlayerPresenter(ITinyMessengerHub messageHub, IPlayerService playerService, IAudioFileCacheService audioFileCacheService, ILibraryService libraryService) { @@ -82,6 +84,12 @@ public PlayerPresenter(ITinyMessengerHub messageHub, IPlayerService playerServic var markers = libraryService.SelectMarkers(m.AudioFileId); View.RefreshMarkers(markers); }); + +#if IOS || ANDROID + _mobileNavigationManager = Bootstrapper.GetContainer().Resolve(); +#else + _navigationManager = Bootstrapper.GetContainer().Resolve(); +#endif } public void Dispose() @@ -101,6 +109,7 @@ public override void BindView(IPlayerView view) view.OnPlayerSetPosition = SetPosition; view.OnPlayerSetVolume = SetVolume; view.OnPlayerRequestPosition = RequestPosition; + view.OnEditSongMetadata = EditSongMetadata; // If the player is already playing, refresh initial data if (_playerService.IsPlaying) @@ -142,8 +151,17 @@ void HandleTimerRefreshSongPositionElapsed(object sender, ElapsedEventArgs e) View.RefreshPlayerPosition(entity); } - - /// + + public void EditSongMetadata() + { +#if IOS || ANDROID + // Not available yet on mobile devices +#else + _navigationManager.CreateEditSongMetadataView(_playerService.CurrentPlaylistItem.AudioFile); +#endif + } + + /// /// Starts playback. /// public void Play() diff --git a/MPfm/MPfm.MVP/Presenters/SongBrowserPresenter.cs b/MPfm/MPfm.MVP/Presenters/SongBrowserPresenter.cs index 9ffb1e5b..242a2d6e 100644 --- a/MPfm/MPfm.MVP/Presenters/SongBrowserPresenter.cs +++ b/MPfm/MPfm.MVP/Presenters/SongBrowserPresenter.cs @@ -1,125 +1,105 @@ -// Copyright © 2011-2013 Yanick Castonguay -// -// This file is part of MPfm. -// -// MPfm is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// MPfm is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with MPfm. If not, see . - -using System.Collections.Generic; -using MPfm.MVP.Messages; -using MPfm.MVP.Models; -using MPfm.MVP.Presenters.Interfaces; -using MPfm.MVP.Services.Interfaces; -using MPfm.MVP.Views; -using MPfm.Sound.AudioFiles; -using MPfm.Core; -using TinyMessenger; -using MPfm.Library.Services.Interfaces; -using MPfm.Library.Objects; - -namespace MPfm.MVP.Presenters -{ - /// - /// Song browser presenter. - /// - public class SongBrowserPresenter : BasePresenter, ISongBrowserPresenter - { - //ISongBrowserView view ; - readonly ITinyMessengerHub messageHub; - readonly IAudioFileCacheService audioFileCacheService; - readonly ILibraryService libraryService; - - public LibraryQuery Query { get; private set; } - - #region Constructor and Dispose - - /// - /// Initializes a new instance of the class. - /// - public SongBrowserPresenter(ITinyMessengerHub messageHub, - ILibraryService libraryService, - IAudioFileCacheService audioFileCacheService) - { - // Set properties - this.libraryService = libraryService; - this.audioFileCacheService = audioFileCacheService; - this.messageHub = messageHub; - - // Create default query - Query = new LibraryQuery(); - - // Subscribe to events - messageHub.Subscribe((LibraryBrowserItemSelectedMessage m) => { - ChangeQuery(m.Item.Query); - }); - } - -// void HandleOnPlaylistIndexChanged(PlayerPlaylistIndexChangedData data) -// { -// if(data.IsPlaybackStopped) -// return; -// -// // Update view with new song -// view.RefreshCurrentlyPlayingSong(data.AudioFileEnded); -// } - - #endregion - - #region ISongBrowserPresenter implementation - - public override void BindView (ISongBrowserView view) - { - base.BindView(view); - - view.OnTableRowDoubleClicked = (audioFile) => { TableRowDoubleClicked(audioFile); }; - } - - /// - /// Changes the Song Browser query and updates the Song Browser view. - /// - /// New query - public void ChangeQuery(LibraryQuery query) - { - // Set query - this.Query = query; - - // Get audio files - Tracing.Log("SongBrowserPresenter.ChangeQuery -- Getting audio files (Format: " + query.Format.ToString() + - " | Artist: " + query.ArtistName + " | Album: " + query.AlbumTitle + " | OrderBy: " + query.OrderBy + - " | OrderByAscending: " + query.OrderByAscending.ToString() + " | Search terms: " + query.SearchTerms + ")"); - IEnumerable audioFiles = audioFileCacheService.SelectAudioFiles(query); - - // Refresh view - Tracing.Log("SongBrowserPresenter.ChangeQuery -- Refreshing song browser..."); - View.RefreshSongBrowser(audioFiles); - } - - /// - /// Call this method when the table row has been double clicked. - /// This will start a new playlist in the Player presenter. - /// - /// Audio file - public void TableRowDoubleClicked(AudioFile audioFile) - { - Tracing.Log("SongBrowserPresenter.TableRowDoubleClicked -- Publishing SongBrowserItemDoubleClickedMessage with item " + audioFile.Title + "..."); - messageHub.PublishAsync(new SongBrowserItemDoubleClickedMessage(this){ - Item = audioFile, - Query = Query - }); - } - - #endregion - - } -} - +// Copyright © 2011-2013 Yanick Castonguay +// +// This file is part of MPfm. +// +// MPfm is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// MPfm is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with MPfm. If not, see . + +using System; +using System.Collections.Generic; +using MPfm.MVP.Bootstrap; +using MPfm.MVP.Messages; +using MPfm.MVP.Models; +using MPfm.MVP.Navigation; +using MPfm.MVP.Presenters.Interfaces; +using MPfm.MVP.Services.Interfaces; +using MPfm.MVP.Views; +using MPfm.Sound.AudioFiles; +using MPfm.Core; +using TinyMessenger; +using MPfm.Library.Services.Interfaces; +using MPfm.Library.Objects; + +namespace MPfm.MVP.Presenters +{ + /// + /// Song browser presenter. + /// + public class SongBrowserPresenter : BasePresenter, ISongBrowserPresenter + { + readonly ITinyMessengerHub _messageHub; + readonly IAudioFileCacheService _audioFileCacheService; + readonly ILibraryService _libraryService; + readonly NavigationManager _navigationManager; + readonly MobileNavigationManager _mobileNavigationManager; + LibraryQuery _query; + + public SongBrowserPresenter(ITinyMessengerHub messageHub, + ILibraryService libraryService, + IAudioFileCacheService audioFileCacheService) + { + _libraryService = libraryService; + _audioFileCacheService = audioFileCacheService; + _messageHub = messageHub; + _query = new LibraryQuery(); + + messageHub.Subscribe((LibraryBrowserItemSelectedMessage m) => { + ChangeQuery(m.Item.Query); + }); + +#if IOS || ANDROID + _mobileNavigationManager = Bootstrapper.GetContainer().Resolve(); +#else + _navigationManager = Bootstrapper.GetContainer().Resolve(); +#endif + + } + + public override void BindView(ISongBrowserView view) + { + base.BindView(view); + + view.OnTableRowDoubleClicked = TableRowDoubleClicked; + view.OnSongBrowserEditSongMetadata = SongBrowserEditSongMetadata; + } + + public void SongBrowserEditSongMetadata(AudioFile audioFile) + { +#if IOS || ANDROID + // Not available on mobile devices yet. +#else + _navigationManager.CreateEditSongMetadataView(audioFile); +#endif + } + + public void ChangeQuery(LibraryQuery query) + { + _query = query; + Tracing.Log("SongBrowserPresenter.ChangeQuery -- Getting audio files (Format: " + query.Format.ToString() + + " | Artist: " + query.ArtistName + " | Album: " + query.AlbumTitle + " | OrderBy: " + query.OrderBy + + " | OrderByAscending: " + query.OrderByAscending.ToString() + " | Search terms: " + query.SearchTerms + ")"); + IEnumerable audioFiles = _audioFileCacheService.SelectAudioFiles(query); + View.RefreshSongBrowser(audioFiles); + } + + public void TableRowDoubleClicked(AudioFile audioFile) + { + Tracing.Log("SongBrowserPresenter.TableRowDoubleClicked -- Publishing SongBrowserItemDoubleClickedMessage with item " + audioFile.Title + "..."); + _messageHub.PublishAsync(new SongBrowserItemDoubleClickedMessage(this){ + Item = audioFile, + Query = _query + }); + } + + } +} diff --git a/MPfm/MPfm.MVP/Views/IDesktopFirstRunView.cs b/MPfm/MPfm.MVP/Views/IDesktopFirstRunView.cs new file mode 100644 index 00000000..5caee981 --- /dev/null +++ b/MPfm/MPfm.MVP/Views/IDesktopFirstRunView.cs @@ -0,0 +1,32 @@ +// Copyright © 2011-2013 Yanick Castonguay +// +// This file is part of MPfm. +// +// MPfm is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// MPfm is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with MPfm. If not, see . + +using System; +using System.Collections.Generic; +using MPfm.MVP.Models; +using MPfm.Sound.AudioFiles; + +namespace MPfm.MVP.Views +{ + /// + /// First Run view interface for desktop devices. + /// + public interface IDesktopFirstRunView : IBaseView + { + } +} + diff --git a/MPfm/MPfm.MVP/Views/IEditSongMetadataView.cs b/MPfm/MPfm.MVP/Views/IEditSongMetadataView.cs new file mode 100644 index 00000000..e3fc21e1 --- /dev/null +++ b/MPfm/MPfm.MVP/Views/IEditSongMetadataView.cs @@ -0,0 +1,32 @@ +// Copyright © 2011-2013 Yanick Castonguay +// +// This file is part of MPfm. +// +// MPfm is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// MPfm is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with MPfm. If not, see . + +using System; +using System.Collections.Generic; +using MPfm.MVP.Models; +using MPfm.Sound.AudioFiles; + +namespace MPfm.MVP.Views +{ + /// + /// Edit Song Metadata view interface. + /// + public interface IEditSongMetadataView : IBaseView + { + } +} + diff --git a/MPfm/MPfm.MVP/Views/IMobileFirstRunView.cs b/MPfm/MPfm.MVP/Views/IMobileFirstRunView.cs new file mode 100644 index 00000000..cc28115e --- /dev/null +++ b/MPfm/MPfm.MVP/Views/IMobileFirstRunView.cs @@ -0,0 +1,32 @@ +// Copyright © 2011-2013 Yanick Castonguay +// +// This file is part of MPfm. +// +// MPfm is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// MPfm is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with MPfm. If not, see . + +using System; +using System.Collections.Generic; +using MPfm.MVP.Models; +using MPfm.Sound.AudioFiles; + +namespace MPfm.MVP.Views +{ + /// + /// First Run view interface for mobile devices. + /// + public interface IMobileFirstRunView : IBaseView + { + } +} + diff --git a/MPfm/MPfm.MVP/Views/IPlayerView.cs b/MPfm/MPfm.MVP/Views/IPlayerView.cs index 560cc88e..fffde60b 100644 --- a/MPfm/MPfm.MVP/Views/IPlayerView.cs +++ b/MPfm/MPfm.MVP/Views/IPlayerView.cs @@ -40,16 +40,16 @@ public interface IPlayerView : IBaseView Action OnPlayerSetTimeShifting { get; set; } Action OnPlayerSetPosition { get; set; } Func OnPlayerRequestPosition { get; set; } - + Action OnEditSongMetadata { get; set; } + + void PlayerError(Exception ex); void RefreshPlayerStatus(PlayerStatusType status); void RefreshPlayerPosition(PlayerPositionEntity entity); void RefreshSongInformation(AudioFile audioFile, long lengthBytes, int playlistIndex, int playlistCount); void RefreshMarkers(IEnumerable markers); void RefreshLoops(IEnumerable loops); void RefreshPlayerVolume(PlayerVolumeEntity entity); - void RefreshPlayerTimeShifting(PlayerTimeShiftingEntity entity); - - void PlayerError(Exception ex); + void RefreshPlayerTimeShifting(PlayerTimeShiftingEntity entity); } } diff --git a/MPfm/MPfm.MVP/Views/ISongBrowserView.cs b/MPfm/MPfm.MVP/Views/ISongBrowserView.cs index f4a7da02..5bdaba33 100644 --- a/MPfm/MPfm.MVP/Views/ISongBrowserView.cs +++ b/MPfm/MPfm.MVP/Views/ISongBrowserView.cs @@ -1,34 +1,35 @@ -// Copyright © 2011-2013 Yanick Castonguay -// -// This file is part of MPfm. -// -// MPfm is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// MPfm is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with MPfm. If not, see . - -using System; -using System.Collections.Generic; -using MPfm.Sound.AudioFiles; - -namespace MPfm.MVP.Views -{ - /// - /// Song browser view interface. - /// - public interface ISongBrowserView : IBaseView - { - Action OnTableRowDoubleClicked { get; set; } - - void RefreshSongBrowser(IEnumerable audioFiles); - //void RefreshCurrentlyPlayingSong(AudioFile audioFile); - } -} +// Copyright © 2011-2013 Yanick Castonguay +// +// This file is part of MPfm. +// +// MPfm is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// MPfm is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with MPfm. If not, see . + +using System; +using System.Collections.Generic; +using MPfm.Sound.AudioFiles; + +namespace MPfm.MVP.Views +{ + /// + /// Song Browser view interface. + /// + public interface ISongBrowserView : IBaseView + { + Action OnTableRowDoubleClicked { get; set; } + Action OnSongBrowserEditSongMetadata { get; set; } + + void RefreshSongBrowser(IEnumerable audioFiles); + //void RefreshCurrentlyPlayingSong(AudioFile audioFile); + } +} diff --git a/MPfm/MPfm.Windows/Classes/Forms/frmEditSongMetadata.cs b/MPfm/MPfm.Windows/Classes/Forms/frmEditSongMetadata.cs index a9497c74..45bdb362 100644 --- a/MPfm/MPfm.Windows/Classes/Forms/frmEditSongMetadata.cs +++ b/MPfm/MPfm.Windows/Classes/Forms/frmEditSongMetadata.cs @@ -18,6 +18,7 @@ using System; using System.Collections.Generic; using System.Windows.Forms; +using MPfm.MVP.Views; using MPfm.Sound.AudioFiles; namespace MPfm.Windows.Classes.Forms @@ -26,35 +27,13 @@ namespace MPfm.Windows.Classes.Forms /// Edit Song Metadata window. This is where the user can modify the ID3 and other /// tags for the media files. /// - public partial class frmEditSongMetadata : MPfm.WindowsControls.Form + public partial class frmEditSongMetadata : BaseForm, IEditSongMetadataView { - // Private variables - private frmMain main = null; - private List filePaths = null; - private AudioFile audioFile = null; - - /// - /// Hook to the main form. - /// - public frmMain Main - { - get - { - return main; - } - } - - /// - /// Constructor for Edit Song Metadata window. Requires a hook to the main form and - /// the file path(s) to the files to edit. - /// - /// Hook to main form - /// List of file paths - public frmEditSongMetadata(frmMain main, List filePaths) + public frmEditSongMetadata(Action onViewReady) + : base(onViewReady) { InitializeComponent(); - this.main = main; - this.filePaths = filePaths; + ViewIsReady(); //// Get TagLib information about the file //if (filePaths.Count > 0) diff --git a/MPfm/MPfm.Windows/Classes/Forms/frmFirstRun.cs b/MPfm/MPfm.Windows/Classes/Forms/frmFirstRun.cs index 5dae309f..862f1011 100644 --- a/MPfm/MPfm.Windows/Classes/Forms/frmFirstRun.cs +++ b/MPfm/MPfm.Windows/Classes/Forms/frmFirstRun.cs @@ -21,6 +21,7 @@ using System.Text; using System.Windows.Forms; using MPfm.Core; +using MPfm.MVP.Views; using MPfm.Sound.BassNetWrapper; namespace MPfm.Windows.Classes.Forms @@ -30,7 +31,7 @@ namespace MPfm.Windows.Classes.Forms /// The window helps the user to select a driver and an output device. The user is required to test the configuration /// using an audio file. The user can then access the application. /// - public partial class frmFirstRun : MPfm.WindowsControls.Form + public partial class frmFirstRun : BaseForm, IDesktopFirstRunView { // Private variables private string filePath = string.Empty; @@ -39,26 +40,11 @@ public partial class frmFirstRun : MPfm.WindowsControls.Form private List devicesASIO = null; private List devicesWASAPI = null; - private frmMain main = null; - /// - /// Hook to the main form. - /// - public frmMain Main - { - get - { - return main; - } - } - - /// - /// Constructor for the First Run form. Requires a hook to the main form. - /// - /// Hook to main form - public frmFirstRun(frmMain main) + public frmFirstRun(Action onViewReady) + : base(onViewReady) { - this.main = main; InitializeComponent(); + ViewIsReady(); } /// diff --git a/MPfm/MPfm.Windows/Classes/Forms/frmAddEditLoop.Designer.cs b/MPfm/MPfm.Windows/Classes/Forms/frmLoopDetails.Designer.cs similarity index 99% rename from MPfm/MPfm.Windows/Classes/Forms/frmAddEditLoop.Designer.cs rename to MPfm/MPfm.Windows/Classes/Forms/frmLoopDetails.Designer.cs index 0f0a3522..4911b1c5 100644 --- a/MPfm/MPfm.Windows/Classes/Forms/frmAddEditLoop.Designer.cs +++ b/MPfm/MPfm.Windows/Classes/Forms/frmLoopDetails.Designer.cs @@ -1,4 +1,4 @@ -// Copyright © 2011-2013 Yanick Castonguay +// Copyright © 2011-2013 Yanick Castonguay // // This file is part of MPfm. // @@ -17,7 +17,7 @@ namespace MPfm.Windows.Classes.Forms { - partial class frmAddEditLoop + partial class frmLoopDetails { /// /// Required designer variable. @@ -1661,7 +1661,7 @@ private void InitializeComponent() this.Controls.Add(this.panelEditLoop); this.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); this.MinimumSize = new System.Drawing.Size(600, 410); - this.Name = "frmAddEditLoop"; + this.Name = "frmLoopDetails"; this.ShowInTaskbar = false; this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; this.Text = "Edit Loop"; diff --git a/MPfm/MPfm.Windows/Classes/Forms/frmAddEditLoop.cs b/MPfm/MPfm.Windows/Classes/Forms/frmLoopDetails.cs similarity index 88% rename from MPfm/MPfm.Windows/Classes/Forms/frmAddEditLoop.cs rename to MPfm/MPfm.Windows/Classes/Forms/frmLoopDetails.cs index 74f6929e..36a84cb6 100644 --- a/MPfm/MPfm.Windows/Classes/Forms/frmAddEditLoop.cs +++ b/MPfm/MPfm.Windows/Classes/Forms/frmLoopDetails.cs @@ -18,6 +18,7 @@ using System; using System.Collections.Generic; using MPfm.Core; +using MPfm.MVP.Views; using MPfm.Player.Objects; using MPfm.Sound.AudioFiles; @@ -26,49 +27,13 @@ namespace MPfm.Windows.Classes.Forms /// /// Add/Edit Loop window. This is where the user can add or edit loops for an audio file. /// - public partial class frmAddEditLoop : MPfm.WindowsControls.Form + public partial class frmLoopDetails : BaseForm, ILoopDetailsView { - // Private variables - private AddEditLoopWindowMode mode = AddEditLoopWindowMode.Add; - private frmMain main = null; - private AudioFile audioFile = null; - private Guid loopId = Guid.Empty; - private List markers = null; - private uint loopLengthMS = 0; - private uint loopLengthBytes = 0; - private uint loopLengthSamples = 0; - private long startPositionBytes = 0; - private long endPositionBytes = 0; - - /// - /// Hook to the main form. - /// - public frmMain Main - { - get - { - return main; - } - } - - /// - /// Constructor for Add/Edit Loop window. Requires a hook to the main form and - /// the window mode must be specified. - /// - /// Hook to the main window - /// Window mode - /// AudioFile linked to the marker - /// Identifier of the loop (if it exists) - public frmAddEditLoop(frmMain main, AddEditLoopWindowMode mode, AudioFile audioFile, Guid loopId) + public frmLoopDetails(Action onViewReady) + : base(onViewReady) { InitializeComponent(); - this.main = main; - this.mode = mode; - this.audioFile = audioFile; - this.loopId = loopId; - - // Initialize controls - Initialize(); + ViewIsReady(); } /// @@ -435,19 +400,4 @@ public void CheckForRelatedPositionMarkers() //} } } - - /// - /// Defines the mode of the AddEditLoop window. - /// - public enum AddEditLoopWindowMode - { - /// - /// The window is in "Add" mode. - /// - Add = 0, - /// - /// The window is in "Edit" mode. - /// - Edit = 1 - } } diff --git a/MPfm/MPfm.Windows/Classes/Forms/frmAddEditLoop.resx b/MPfm/MPfm.Windows/Classes/Forms/frmLoopDetails.resx similarity index 100% rename from MPfm/MPfm.Windows/Classes/Forms/frmAddEditLoop.resx rename to MPfm/MPfm.Windows/Classes/Forms/frmLoopDetails.resx diff --git a/MPfm/MPfm.Windows/Classes/Forms/frmMain.Designer.cs b/MPfm/MPfm.Windows/Classes/Forms/frmMain.Designer.cs index 79487d0b..a1ed1ed3 100644 --- a/MPfm/MPfm.Windows/Classes/Forms/frmMain.Designer.cs +++ b/MPfm/MPfm.Windows/Classes/Forms/frmMain.Designer.cs @@ -517,7 +517,7 @@ private void InitializeComponent() this.miPlaySong.Name = "miPlaySong"; this.miPlaySong.Size = new System.Drawing.Size(216, 22); this.miPlaySong.Text = "Play selected song(s)"; - this.miPlaySong.Click += new System.EventHandler(this.btnPlay_Click); + this.miPlaySong.Click += new System.EventHandler(this.viewSongs2_DoubleClick); // // miEditSong // diff --git a/MPfm/MPfm.Windows/Classes/Forms/frmMain.cs b/MPfm/MPfm.Windows/Classes/Forms/frmMain.cs index b3baabc3..b7e267c8 100644 --- a/MPfm/MPfm.Windows/Classes/Forms/frmMain.cs +++ b/MPfm/MPfm.Windows/Classes/Forms/frmMain.cs @@ -1246,17 +1246,14 @@ private void viewSongs2_DoubleClick(object sender, EventArgs e) /// Event arguments private void btnEditSongMetadata_Click(object sender, EventArgs e) { - //// Check if at least one item is selected - //if (viewSongs2.SelectedItems.Count == 0) - // return; + if (viewSongs2.SelectedItems.Count == 0) + return; - //// Get audio file from item metadata (check for null) - //AudioFile audioFile = viewSongs2.SelectedItems[0].AudioFile; - //if (audioFile == null) - // return; + AudioFile audioFile = viewSongs2.SelectedItems[0].AudioFile; + if (audioFile == null) + return; - //// Open window - //EditSongMetadata(audioFile.FilePath); + OnSongBrowserEditSongMetadata(audioFile); } #endregion @@ -2086,6 +2083,7 @@ public void RefreshLibraryBrowserNode(LibraryBrowserEntity entity, IEnumerable OnTableRowDoubleClicked { get; set; } + public Action OnSongBrowserEditSongMetadata { get; set; } public void RefreshSongBrowser(IEnumerable audioFiles) { @@ -2118,6 +2116,7 @@ public void RefreshSongBrowser(IEnumerable audioFiles) public Action OnPlayerSetTimeShifting { get; set; } public Action OnPlayerSetPosition { get; set; } public Func OnPlayerRequestPosition { get; set; } + public Action OnEditSongMetadata { get; set; } public void PlayerError(Exception ex) { @@ -2405,5 +2404,6 @@ public void RefreshPitchShifting(PlayerPitchShiftingEntity entity) } #endregion + } } diff --git a/MPfm/MPfm.Windows/Classes/Forms/frmMain.resx b/MPfm/MPfm.Windows/Classes/Forms/frmMain.resx index ee786956..1b699304 100644 --- a/MPfm/MPfm.Windows/Classes/Forms/frmMain.resx +++ b/MPfm/MPfm.Windows/Classes/Forms/frmMain.resx @@ -194,8 +194,8 @@ AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 - ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAACY - bAAAAk1TRnQBSQFMAgEBGwEAAQwBCgEMAQoBEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA + ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAACW + bAAAAk1TRnQBSQFMAgEBGwEAARwBCgEcAQoBEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA AwABcAMAAQEBAAEgBgABcBIAA14B5QNRAfcDUQH3A1EB9wNRAfcDUQH3A1EB9wNRAfcDUQH3A1EB9wNR AfcDUQH3A1EB9wNRAfcDUQH3A1kB7BAAAyoBQQNQAaQDWAHjAwAB/gMAAf4DXQHiA1EBoQMnATsfAAEB AwAB/gMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DKQH6QAADSgGLAwAB/wMA @@ -207,458 +207,458 @@ AwAB/wMAAf8DAAH/AwAB/wMAAf8DWwHIAxIBGEgAAzUBVgNdAeIDAAH/AwAB/wMAAf8DAAH/AwAB/wMA Af8DAAH/AwAB/wNYAeYDOQFgDAADUwGqAwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/ AwAB/wMAAf8DAAH/A1EBogQAAycBOwMoATwDKAE8AygBPAMoATwDEQEXAzsBZQNcAdwDAAH/AwAB/wMA - Af8DAAH/A1wB3AM8AWcDAgEDUAADBgEIAzoBYgNXAb0DKQH6AwAB/wMAAf8DIgH8A1YBwQM8AWYDBwEJ + Af8DAAH/A1wB3AM8AWcDAgEDUAADBgEIAzoBYgNXAb0DKQH6AwAB/wMAAf8DJAH8A1YBwQM8AWYDBwEJ DAADKgFBAwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMA Af8DJQE3A1kBwwMAAf8DAAH/AwAB/wMAAf8DWAHvA0YBgQMTARoDOAFeAwAB/wMAAf8DOQFfAwABAWQA - A08BnAMAAf8DAAH/A1QBqxgAA1IBqQMAAf8DAAH/AwAB/wMAAf8DAAH/ATkBOgE9Af8B3QHeAd8B/wLa - AdwB/wE0ATUBOAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DTwGcAxABFgNZAcMDAAH/AwAB/wMAAf8DAAH/ + A08BnAMAAf8DAAH/A1QBqxgAA1IBqQMAAf8DAAH/AwAB/wMAAf8DAAH/ATcBOAE7Af8B3QHeAd8B/wLa + AdwB/wEyATMBNgH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DTwGcAxABFgNZAcMDAAH/AwAB/wMAAf8DAAH/ AwAB/wMuAUcDTAGRAwAB/wMAAf8DSwGQZAADDAEQA1oB3gMAAf8DAAH/A1gB5gMRARcUAANZAesDAAH/ - AwAB/wMAAf8DAAH/ATkBOgE9Ef8BNQE2ATgB/wMAAf8DAAH/AwAB/wMAAf8DWgHbBAADAQECAzoBYgNe - AdoDAAH/AwAB/wNXAb8DFAEcAxoB/AMAAf8DAAH/AyEB+wMSARlgAANKAY0DAAH/AwAB/wMAAf8DAAH/ - A08BnBcAAf8DAAH/AwAB/wMAAf8DAAH/Ad0B3gHfBf8CpQGmAf4C7QHuBf8B2wHcAd4B/wMAAf8DAAH/ - AwAB/wMAAf8DKQH6DwABAQM4AV0DAAH/Ay0BRgNSAakDAAH/AwAB/wMAAf8DAAH/A1MBqlwAAxABFQNV - AeoDAAH/AwAB/wMAAf8DAAH/A1IB9AMSARkTAAH/AwAB/wMAAf8DAAH/AwAB/wHbAdwB3gX/AqMBpAH+ - AusB7AX/AtoB3AH/AwAB/wMAAf8DAAH/AwAB/wMpAfoQAANLAY8DAAH/Ay4BRwNUAa8DAAH/AwAB/wMA - Af8DAAH/A1MBsFwAA1ABpAMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wNTAa0QAANYAekDAAH/AwAB/wMA - Af8DAAH/ATQBNQE4Ef8CMAEzAf8DAAH/AwAB/wMAAf8DAAH/A14B2gwAAxQBGwMaAfwDAAH/AzwBZwNP - AZsDAAH/AwAB/wMAAf8DAAH/A08Bm1wAA1EBoAMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wNTAaoQAANS - AaYDAAH/AwAB/wMAAf8DAAH/AwAB/wE0ATUBOAH/AdsB3AHeAf8C2QHbAf8CMAEzAf8DAAH/AwAB/wMA - Af8DAAH/AwAB/wNOAZkMAANTAaoDAAH/AwAB/wNEAXsDRwGCAwAB/wMAAf8DAAH/AwAB/wNGAYFcAANA - AXADAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DRAF8EAADKQE/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/ - AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DJAE1DAADVAGuAwAB/wMAAf8DXAHOAxYBHgNX - Ad8DAAH/AwAB/wNaAd4DEwEaXAADQgF1AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/A0YBgBQAA1EBpwMA - Af8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wNQAZ8QAANQAZoDAAH/ - AwAB/wMAAf8DTwGcAxABFQMjATQDJAE1AwQBBmAAAzABTAMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wM2 - AVkUAAMJAQwDWwHIAwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wNZAcMDBwEK - EAADRgGAAwAB/wMAAf8DAAH/AwAB/wNGAYFsAAMEAQUDWAHLAwAB/wMAAf8DAAH/AwAB/wNbAdYDBwEJ - GAADCQEMA1ABpAMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH+A08BnAMHAQoUAAMUARsDWAHd - AwAB/wMAAf8DWAHdAxMBGnAAAw0BEgNRAacDUgH0A0gB9gNUAa4DEgEYJAADJwE7A1EBoQNdAeIDAAH+ - AwAB/gNfAeADUAGeAyQBNSAAAxABFQNZAckDWAHLAxABFuAAQP/AAAT/A4EB/wPxAf8DgQH/A4EB/wOB - Af8DqQH/A6QB/wOgAf8DpAH/A4EB/wOBAf8DgQH/A7gB/wOGAf8DgQH/DAADFQEdA0ABcAFVAVcBVQG3 - AVUBXAFVAeoDQAH9AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/KAADBwEJXAAE/wOBAf8D7gH/A4EB/wOB - Af8DiQH/A5gB/wOBAf8DgQH/A4EB/wOkAf8DgQH/A4EB/wOBAf8DwgH/A4EB/wgAAyYBOQFTAVUBUwGw - AQABowEAAf8BAAGxAQAB/wEAAbwBAAH/AQABvwEBAf8BAAG+AQAB/wEAAb0BAAH/AQABvAEAAf8BAAG7 - AQAB/wEAAbkBAAH/AwAB/yQAA1kB9QOBAf8DGAEhWAAE/wOBAf8DxQH/A4EB/wOBAf8DrwH/A4EB/wOB - Af8DgQH/A4EB/wOGAf8DgQH/A4EB/wOBAf8D6wH/A4EB/wQAAxUBHQFTAVUBUwGwAQABtQEAAf8BhQHH - AYsB/wEAAcEBAwH/AQMBxAGGAf8BAAHCAYIB/wEAAcEBgAH/AQABvwECAf8BAAG9AQAB/wEAAb0BAAH/ - AQABuwEAAf8DAAH/JAADWQH1AYEBoQGBAf8DYQHkAxwBJ0AAA1cBuAMEAQYMAAT/A54B/wOVAf8DgQH/ - A4EB/wObAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOjAf8DgQH/A4EB/wPoAf8DgQH/BAADQAFwAQABsgEA - Af8BiwHLAZMB/wGJAcoBkAH/AQIBwQGFAf8BAAGiAQAB/wEAAYUBAAH/AQABgAEAAf8DAAH/AwAB/wMA - Af8DAAH/AwAB/xQAA38B/gN/Af4DfwH+A38B/gGBAZ8BgQH/AYEBwQGWAf8BgQGjAYEB/wNkAecDHQEq - OAADJgE4A20B9wFbAV4BWwHZDAAE/wPCAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOB - Af8DpAH/A4EB/wOBAf8D5gH/A4EB/wQAAVUCVwG3AQMBwgGHAf8BhwHKAZAB/wGFAcYBjAH/AV0BYQFd - AeIBSwFMAUsBjzAAAYEBmwGBAf8BkAHKAakB/wGNAcgBpQH/AYoBxgGhAf8BiAHFAZ4B/wGBAbYBhQH/ - AYIBwgGXAf8BgQGlAYEB/wNcAeoDIQEwEAABgQG+AYEB/wGBAbgBgQH/AYEBsQGBAf8BgQGpAYEB/wGB - AaEBgQH/AYEBmQGBAf8BgQGRAYEB/wGBAYgBgQH/A4EB/wGBAYgBgQH/AYEBoQGBAf8BgQGLAYEB/wNc - Ac8IAAT/A90B/wOBAf8DgQH/A50B/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOhAf8DgQH/A4EB/wPm - Af8DgQH/BAABVQJcAeoBkAHOAZgB/wGRAc8BmQH/AQABuQEAAf8BSwJMAY80AAGBAZ8BgQH/AZQBzQGt - Af8BgQG6AY4B/wGBAbgBiQH/AYEBtgGFAf8BgQGzAYEB/wGBAbUBggH/AYMBwgGYAf8BgQGgAYEB/wMr - AfwQAAGBAcMBgQH/AaAB1wGpAf8BnAHVAaUB/wGYAdMBoQH/AZQB0AGdAf8BkAHOAZgB/wGLAcsBkwH/ - AYcByQGOAf8BggHGAYkB/wGBAcMBhAH/AYEBwQGBAf8BgQG+AYEB/wGBAYwBgQH/A1sBxAQABP8D8AH/ - A4EB/wOBAf8DsQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A6AB/wOBAf8DgQH/A+UB/wOBAf8EAANc - AeoBlAHRAZwB/wGVAdEBngH/AQABvAEDAf8BSwJMAY8UAANEAXsDAgEDGAABgQGjAYEB/wGWAc4BsAH/ - AZQBzQGtAf8BkQHLAaoB/wGQAcsBqAH/AYEBvAGQAf8BigHHAaEB/wGBAaUBgQH/AUABhwFAAf0DCwEP - EAABgQHHAYEB/wGlAdoBrgH/AaIB2AGrAf8BngHWAacB/wGaAdQBowH/AZYB0gGfAf8BkwHPAZoB/wGO - AcwBlQH/AYkBygGQAf8BhQHHAYsB/wGBAcUBhwH/AYEBwgGCAf8BgQGRAYEB/wNcAckEAAT/A/AB/wOB - Af8DgQH/A7EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOhAf8DgQH/A4EB/wPmAf8DgQH/BAADVwG3 - AYoBzAGTAf8BkwHRAZ0B/wGRAc4BmgH/AV0BYQFdAeIDTAGPEAABWQFdAVkB0gFQAVEBUAGfGAABgQGl - AYEB/wFAAaMBQAH9AUABoQFAAf0BQAGdAUAB/QGBAa8BgQH/AZEBywGqAf8BgQGrAYEB/wFAAY8BQAH9 - AwkBDBQAAYEBxwGBAf8BgQHHAYEB/wGBAcMBgQH/AYEBvgGBAf8BgQG4AYEB/wGBAbEBgQH/AYEBqQGB - Af8BgQGhAYEB/wGBAZkBgQH/AYEBkQGBAf8BgQGjAYEB/wGBAZ0BgQH/A1wB0QgABP8D3QH/A4EB/wOB - Af8DngH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A6QB/wOBAf8DgQH/A+YB/wOBAf8EAANAAXABAAHF - AYQB/wGeAdYBpwH/AZwB1QGlAf8BkgHPAZoB/wEAAbgBAAH/AQABoAEAAf8BAAGcAQAB/wEAAZcBAAH/ - AQABkgEAAf8BAAGmAQAB/wEAAaMBAAH/A0wBkyQAA1kB9QGBAbMBgQH/AYEBmAGBAf8DBwEJQAADbQH3 - A18B2wwABP8DwgH/A4EB/wOBAf8DgwH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A6kB/wOBAf8DgQH/ - A+gB/wOBAf8EAAMVAR0DVQGwAYgBzAGSAf8BoAHXAakB/wGWAdMBoAH/AZsB1AGjAf8BmQHTAaEB/wGW - AdEBngH/AZMBzwGbAf8BkAHOAZkB/wGNAcwBlQH/AYoBygGRAf8BAAGjAQAB/wNKAYogAANZAfUBgQGf - AYEB/wMHAQlEAANYAbsDBAEGDAAE/wOeAf8DlwH/A4EB/wOBAf8DoQH/A4EB/wOBAf8DgQH/A4EB/wOB - Af8DqQH/A4EB/wOBAf8D6wH/A4EB/wgAAyYBOQNVAbABAAHFAYUB/wGNAc4BlgH/AZgB0wGhAf8BnAHV - AaUB/wGZAdQBogH/AZcB0gGfAf8BlAHQAZ0B/wGRAc8BmQH/AY0BzAGUAf8BAAGoAQAB/wNIAYSEAAT/ - A4EB/wPGAf8DgQH/A4EB/wO1Af8DgQH/A4EB/wOBAf8DgQH/A4wB/wOBAf8DgQH/A4EB/wPuAf8DgQH/ - DAADFQEdA0ABcANXAbcDXAHqAQABsAEAAf8BAAGsAQAB/wEAAacBAAH/AQABowEAAf8BAAGzAQAB/wEA - Aa8BAAH/AUsCTAGQiAAE/wOBAf8D8QH/A4EB/wOBAf8DjQH/A6EB/wOBAf8DgQH/A4EB/wOvAf8DgQH/ - A4EB/wOBAf8DwwH/A4EB/ywAAVkBXQFZAdIBTwJRAZyMAAT/A4EB/wP2Af8DgQH/A4EB/wOBAf8DsgH/ - A68B/wOsAf8DrwH/A4EB/wOBAf8DgQH/A70B/wOJAf8DgQH/LAADQwF4AwIBA4wAQP9AAAMmATkDRAF6 - A1UBsAHLAoEB/wHSAoEB/wHTAoEB/wHRAoEB/wHNAoEB/wNcAd8DRwGAAzcBWyQAAycBOwNOAZQDXgHO - A2AB6wNgAesDXgHOA20B9wOBAf8DAwEEWAADGAEiA1MBqgNYAbsDGAEiCAADNQFVA1gBuwNDAXcDDQER - DAADYQHmAYEBhQGsAf8ByAKBAv8BugGBAv8BtwGBAv8BsAGBAv8BsgGBAv8BtAGBAf8B3gGIAYEB/wGH - AoEB/wGBAZsB5gH/HAADCgENA04BlgNNAfoB4QHNAbkB/wHxAeABzgH/AfkB5wHWAf8B+AHmAdQB/wHw - Ad0BzAH/AYEBiQGBAf8BgQGhAYEB/wNcAeoDDgETDAADWwHEA2UB9AHRAZYBgQH/Ac4BkgGBAf8BywGO - AYEB/wHJAYoBgQH/AccBhwGBAf8BwwGEAYEB/wHDAYQBgQH/AcMBhAGBAf8BwwGEAYEB/wHDAYQBgQH/ - AcMBhAGBAf8DVQGwDAADNQFVA2EB7gGBAaEB8wH/AYEBmgHvAf8DQwF3CAADXAHMAYEBoQHyAf8BgQGI - AeMB/wNhAe4DNQFVCAADKwH8AZMBrAHMAf8B5wGvAYEC/wG4AYEB/wH+AbABgQH/Af4BpwGBAf8B/QGg - AYEC/wGXAYEB/wH9AZMBgQH/AbMBnwGiAf8BgQGWAd4B/xgAAwoBDQNXAbgB2QG/AaUB/wH+AfIB5AL/ - AecBzwH/AYEBmAGBAf8BgQGSAYEB/wGBAZABgQH/AYEBjAGBAf8BgQGfAYEB/wGBAcEBlgH/AYEBowGB - Af8BWQFnAVkB8gMPARQIAAHXAaEBgQH/AfgB8gHtAf8B9wHwAeoB/wH2Ae0B5gH/AfQB6gHiAf8B8wHn - Ad4B/wHxAeQB2wH/AfAB4gHYAf8B6gHWAcgB/wHyAeUB3AH/AfoB9AHxAf8B+QHzAfAB/wH6AfUB8gH/ - AagBigFAAf0MAAM1AVUBgQGYAfAB/wGBAbsB/gH/AYEBtAH8Af8DYQHuAw0BEQMsAUQBgQGFAeIB/wGB - AbMC/wGBAaoB+QH/AoEB1QH/AyMBMwgAAzUBVQNZAfUB/QHXAbIC/wHWAYQC/wHKAYEC/wHAAYEC/wG0 - AYEC/wGnAYEC/wHFAZIB/wHWAoEB/wNOAZYYAANOAZYB2QG/AaUC/wH4AesC/wHrAdEC/wHhAcMB/wGB - AZsBgQH/AZABygGpAf8BjQHIAaUB/wGKAcYBoQH/AYgBxQGeAf8BgQG2AYUB/wGCAcIBlwH/AYEBpQGB - Af8BWAFiAVgB7wMHAQkEAAHZAaQBgQH/AfkB8wHuAf8B6wHSAb4F/wHrAdMBvwX/AesB0wHABf8B6gHH - Aa0B/wHsAdkBzQH/AfEB5AHbAf8B+QHzAfAB/wH5AfIB7wH/AcYBjAGBAf8QAANJAYgBgQGdAfEB/wGB - Ab0C/wGBAZgB7wH/AzwBZgNOAZkBgQGeAfIB/wGBAbQC/wGBAYwB5gH/A0MBdxAAAzsBZANfAfMB/wHo - AcAB/wGtAaoBhgH/AacBngGBAf8BoAGSAYEB/wH3AcoBnAH/AeQBlAGBAf8DUQGgAwcBChQAAyYBOAGo - AYcBQAH9Av4B+gL/AfkB6QL/Ae8B2AL/AecBzQH/AYEBnwGBAf8BlAHNAa0B/wGBAboBjgH/AYEBuAGJ - Af8BgQG2AYUB/wGBAbMBgQH/AYEBtQGCAf8BgwHCAZgB/wGBAaABgQH/A00B+gQAAd0BqAGBAf8B+QHz - Ae8B/wHrAdABugH/AesB0AG7Af8BgQG1AYEB/wGBAbUBgQH/AYEBtQGBAf8B6wHRAb0B/wHqAc0BtQH/ - AfoB9AHwAf8B6wHZAcwB/wHxAeQB2wH/AfoB9AHxAf8BxgGKAYEB/xQAA1gBuwGBAaEB9AH/AYEBsgH6 - Af8DXgHdAYEBogHzAf8BgQG2Av8BgQGXAe4B/wNOAZkYAANEAXkDTQH6AYEBrQHnAf8BgQGxAeMB/wGB - AbIB5wH/AYEBmAHEAf8DgQH/AYEBpAGBAf8BgQGoAYEB/wGBAacBgQH/AYEBowGBAf8DXAHfA0cBgAM3 - AVsDTgGWAeIBzgG6Af8B9wHeAcYC/wHpAdEC/wH2AeIC/wHyAd0B/wGBAaMBgQH/AZYBzgGwAf8BlAHN - Aa0B/wGRAcsBqgH/AZABywGoAf8BgQG8AZAB/wGKAccBoQH/AYEBpQGBAf8BgQGIAYEB/wNOAZYEAAHf - AaoBggH/AfkB8wHvAf8B6gHOAbcF/wGBAbUBgQH/AZQB1AGbAf8BgQG1AYEF/wHqAc8BugH/AfsB9gHy - Af8B+gHzAfAB/wHrAdgBywH/AfIB5gHdAf8ByAGNAYEB/xQAAw0BEQNhAe4BgQG5Af4B/wGBAbIB/AH/ - AYEBtwL/AYEBqwH5Af8DXAHMAw0BERgAAzwBZgN/Af4BrAHRAfIB/wGuAdcB/QH/AbAB1AH1Af8BkgHA - AecB/wGBAYMBiQH/AYEBzwGUAf8BgQHOAY4B/wGBAc4BjwH/AYEBzgGRAf8BgQG0AYEB/wGBAY8BgQH/ - AYEBmwHmAf8DXgHQAe8B4AHQAf8B5wG+AZYB/wHnAbwBlAH/AfABzAGpAf8B/gHsAdoB/wGBAaUBgQH/ - AYEBowGBAf8BgQGhAYEB/wGBAZ4BgQH/AYEBrwGBAf8BkQHLAaoB/wGBAasBgQH/AYEBkAGBAf8B8AHf - Ac4B/wNeAdAEAAHhAa4BhwH/AfoB9AHwAf8B6gHLAbIB/wHqAcwBswH/AYEBtQGBAf8BgQG1AYEB/wGB - AbQBgQH/AeoBzgG3Af8BgQGzAYEB/wGBAbIBgQH/AYEBsQGBAf8B6AHIAa4B/wHqAdcByQH/AcQBhgGB - Af8EAANYAbsBgQGQAfQB/wGBAY4B8wH/A1wBzANYAbsDWAG7AYEBrgH6Af8BgQG3Av8BgQG1Av8BgQGt - AfoB/wNcAcwDWAG7A14B3QKBAdwB/wKBAdcB/wNYAbsIAAFUAlYBqwGnAb8B2wH/AZYBxQHxAf8BoQHQ - AfsB/wGWAcYB8wH/AbYBzwHkAf8CgQGnAf8BgQHOAY8B/wGBAc0BiQH/AYEBywGDAf8BgQHLAYEB/wGB - AckBgQH/AYEBlgGBAf8BgQGWAd4B/wNkAewB9QHkAdUB/wHpAb4BlwH/AegBvAGWAf8B5wG8AZQB/wHz - Ad4BygH/A2EB5gMUARsDFAEbA2EB5gGBAaQBgQH/AYEBswGBAf8BgQGYAYEB/wHtAckBpAH/AfYB5AHS - Af8DZAHsBAAB4wGxAYwB/wH6AfYB8QH/AeoByQGuBf8B6gHJAbAF/wHpAcsBswX/AYEBsQGBAf8BjgHS - AZUB/wGBAa8BgQX/AfEB5QHbAf8BxgGGAYEB/wQAA1gBuwGBAboB/QH/AYEBxwL/AYEBuwH9Af8BgQG1 - AfsB/wGBAbMB+wH/AYEBvQL/AYEBuAL/AYEBtQL/AYEBuAL/AYEBrwH6Af8BgQGqAfgB/wGBAbEB+wH/ - AYEBtwL/AYEBpQH2Af8DWAG7CAADWwHEAoEBmgH/AoEBrgH/AYEBpgHWAf8CgQGlAf8CgQGSAf8CgQGY - Af8BgQHQAZ8B/wGBAc4BlwH/AYEBzQGOAf8BgQHNAYgB/wGdAdgBqwH/AYEBsAGBAf8DTgGWA2QB7AH1 - AeQB1QH/AekBvwGZAf8B6QHAAZkB/wHpAcEBmgH/AfMB3QHJAf8DYQHmAxQBGwMUARsDYQHmAYEBqAGB - Af8BgQGfAYEB/wHwAcwBqwH/AfABzAGrAf8B9gHkAdMB/wNkAewEAAHlAbQBjwH/AfoB9gHyAf8B6QHG - AaoB/wHpAcYBrAH/AeoBxwGsAf8B6QHHAa0B/wHpAckBrgH/AekByQGwAf8BgQGwAYEB/wGBAa8BgQH/ - AYEBrQGBAf8B6AHMAbUB/wHyAecB3gH/AcgBigGBAf8EAANYAbsBgQGfAfkB/wGBAZMB9gH/A2EB7gNY - AbsDXAHMAYEBtAH8Af8BgQG5Av8BgQG3Av8BgQGvAfsB/wNcAcwDWAG7A14B3QKBAeIB/wGBAYYB5gH/ - A1gBuwgAAywBQwJAAZUB/QKBAZAB/wKBAZAB/wKBAZAB/wKBAZAB/wGBAY8BngH/AYQBmQGTAf8BgQGU - AYkB/wGBAYwBgQH/AaQB1QGxAf8BggG/AYUB/wNRAaADBwEKA14B0AHwAeEB0QH/AeoBxAGhAf8B6QHB - AZsB/wHpAcABlwH/AfEBzgGyAf8B3AHDAaoB/wNkAecDZAHnAd0BxAGsAv8B/AHzAv8B9AHlAv8B7gHa - Af8B/AHlAdEB/wHxAeEB0QH/A14B0AQAAecBtwGUAf8B+wH3AfQB/wHpAcMBpgX/AegBxAGpBf8B6QHG - AaoF/wHoAccBrAX/AegByAGwBf8B9wHxAesB/wHLAY8BgQH/BAADIwEzAyMBMwgAAw0BEQNhAe4BgQG9 - Af4B/wGBAbkB/gH/AYEBugL/AYEBsQH7Af8DXAHMAw0BEQgAAyMBMwMjATMMAAM6AWEDZAHxAoEBkgH/ - A18B+wNcAcwDTQH6AYEBrQHnAf8BgQGxAeMB/wGBAbIB5wH/AYEBmAHEAf8DVgG2AwgBCwQAA04BlgHi - Ac4BugH/AfEB0gG2Af8B6wHBAZsB/wHrAb8BmQL/AeQB0wL/AegB2wH/AfMB2gHHAf8B+AHxAeQC/wH4 - Ae0C/wH3AekC/wH+AfEC/wH8Ae8C/wH8AfIB/wHiAc4BugH/A04BlgQAAekBugGYAf8B+wH3AfQB/wGB - AaQC/wGBAaMC/wGBAaIC/wGBAaEC/wGBAZ8C/wGBAZ0C/wGBAZoC/wGBAZgC/wGBAZUC/wGBAZQC/wH7 - AfcB9AH/Ac4BkwGBAf8UAANYAbsBgQGrAfoB/wGBAcAB/gH/A2EB7gGBAawB+QH/AYEBvAL/AYEBogH2 - Af8DTgGZLAADPAFmA38B/gGsAdEB8gH/Aa4B1wH9Af8BsAHUAfUB/wGSAcAB5wH/A1UBrQgAAyYBOAGo - AYcBQAH9AfoB7QHhAf8B7AHHAaMC/wHsAdoF/wH3Ac0BtgH/AewBvQGXAv8B9AHcA/8B9wL/AfcB6AP/ - AfMD/wH5Af8C/gH5Af8BqAGHAUAB/QMmATgEAAHrAb0BmwH/AfsB9wH0Af8BgQGkAv8BgQG9Av8BgQG7 - Av8BgQG5Av8BgQG4Av8BgQGzAv8BgQGwAv8BgQGrAv8BgQGnAv8CgQL/AfsB9wH0Af8B0QGXAYEB/xAA - A0MBdwGBAaoB+wH/AYEBxAL/AYEBrgH7Af8DTgGZA04BmQGBAasB+QH/AYEBuwL/AYEBnQH0Af8DPAFm - KAADSgGNAbgB0AHnAf8BlgHFAfEB/wGhAdAB+wH/AZYBxgHzAf8BtgHPAeQB/wNcAd8MAANOAZYB2QG/ - AaUC/wH6AfAG/wH9AfMB/wHwAcEBowH/Ae4BxgGgAf8B/QHwAdED/wH+Av8B/QHwAv8B/QHxBf8B2QG/ - AaUB/wNOAZYIAAHsAb8BngH/AfsB9wH0Af8BgQGkAv8BgQGjAv8BgQGgAv8BgQGeAv8BgQGZAv8BgQGW - Av8BgQGQAv8BgQGLAv8BgQGEAv8CgQL/AfsB9wH0Af8B1AGbAYEB/wwAAywBRAGBAaUB/QH/AYEBwAH+ - Af8BgQHEAv8BgQGbAfgB/wMYASIDLAFEAYEBnAH2Af8BgQG8Av8BgQG0AfwB/wNhAe4DIwEzJAADTAGS - AYEBrgHlAf8BgQG4AeYB/wGNAcgB9gH/AYEBrQHmAf8BgQGnAeUB/wFYAmIB7wwAAwoBDQNXAbgB2QG/ - AaUB/wH+Af0B/AL/AfEB5AH/AfIBygGuAf8B8gHSAa0B/wH5Ae0ByAP/AfcD/wH9Af8B/gH9AfwB/wHZ - Ab8BpQH/A1cBuAMKAQ0IAANgAesB+wH3AfQB/wH7AfcB9AH/AfsB9wH0Af8B+wH3AfQB/wH7AfcB9AH/ - AfsB9wH0Af8B+wH3AfQB/wH7AfcB9AH/AfsB9wH0Af8B+wH3AfQB/wH7AfcB9AH/AfsB9wH0Af8DXAH4 - DAADPAFmAYEBpAH9Af8BgQG2Af4B/wGBAbsB/gH/A1gBuwgAA1wBzAGBAbgB/QH/AYEBqAH5Af8DYQHu - AzUBVSQAAywBQwFAAaMBqAH9AYEBpgHlAf8BgQGmAeUB/wGBAaYB5QH/AYEBpgHlAf8DTAGQEAADCgEN - A04BlgNNAfoB4QHNAbkB/wHxAeIB1AH/AfkB7AHfAf8B+wHzAeUB/wH0Ae0B5AH/AeIBzgG7Af8DTQH6 - A04BlgMKAQ0MAANGAX4DXwHjAe0BwAGfAf8B6wG+AZ0B/wHrAbwBmgH/AekBugGWAf8B5wG3AZMB/wHm - AbUBkAH/AeQBsgGMAf8B4gGvAYgB/wHgAawBhAH/Ad0BqQGBAf8B3AGlAYEB/wNdAcoQAAMjATMDWAG7 - AYEBmQH8Af8DNQFVCAADPAFmAYEBkQH1Af8DWAG7AxgBIiwAAzoBYQNkAfEBgQGlAeQB/wNfAfsDUAGd - AwQBBhgAAycBOwNOAZQDXgHOA2AB6wJiAVgB7wJeAVsB2QNPAZcDJwE7qAADCgENAyIBMQMgAS8DBQEH - 5AADGAEhA1ABnQNdAfADoQH/A6sB/wOnAf8DlQH/A2QB5wNKAYoDEAEWFAADCgENAxoBJQNeAdUDfwH+ - AYEBiQGBAf8BgQGIAYEB/wGBAYcBgQH/AYEBhQGBAf8DfwH+A2QB7AMdASoDCgENEAADCgENAx8BLQNh - AeEDfwH+AYEBhAHVAf8BgQGCAdYB/wGBAYIB1AH/AoEB0gH/A38B/gNfAfMDIwEzAwoBDRAAAwoBDQMf - AS0DYQHhA38B/gKBAd4B/wKBAd4B/wKBAd0B/wKBAdoB/wN/Af4DXwHzAyMBMwMKAQ0QAAMvAUoDZQH0 - A84B/wPtAf8D9AH/A/UB/wP0Af8D7wH/A+IB/wO6Af8DZAHnAyQBNQwAA0QBeQNfAfsBgQGdAYEB/wGB - AY8BgQH/AYEBwQGKAf8BgQHBAYoB/wGBAcEBigH/AYEBwQGKAf8BgQHBAYoB/wGBAcEBigH/AYEBigGB - Af8BgQGIAYEB/wNcAfgDSAGDCAADRAF5A18B+wGBAZAB6gH/AYEBiAHeAf8BgQGrAv8BgQGrAv8BgQGr - Av8BgQGrAv8BgQGrAv8BgQGrAv8BgQGEAdkB/wKBAdMB/wNcAfgDSAGDCAADRAF5A18B+wKBAfwB/wKB - AesB/wGBAYsC/wGBAYsC/wGBAYsC/wGBAYsC/wGBAYsC/wGBAYsC/wKBAeQB/wKBAdoB/wNcAfgDSAGD - DAADXAHqA94B/wPzAf8D2wH/A9IB/wPbAf8D1gH/A8AB/wPJAf8D5gH/A8QB/wNcAeoMAAN/Af4BggG6 - Ae4B/wGBAZ4BgQH/AYEBzAGVAf8BgQG4AYEB/wGBAbUBgQH/AYEBsQGBAf8BgQGsAYEB/wGBAbEBgQH/ - AYEBrQGBAf8BgQHBAYoB/wGBAZIBgQH/AYMBvAHvAf8DfwH+CAADfwH+AYIBugHuAf8BgQGRAewB/wGB - AbYC/wGBAaQB+wH/AYEBogH5Af8BgQGfAfgB/wGBAZsB9QH/AYEBnwH3Af8BgQGcAfUB/wGBAawB/QH/ - AYEBigHeAf8BgwG8Ae8B/wN/Af4IAAN/Af4BggG6Ae4B/wKBAf4B/wGRAZkC/wKBAf4B/wKBAf4B/wKB - Av8CgQH+Af8CgQH+Af8CgQH9Af8BgwGMAf0B/wKBAewB/wGDAbwB7wH/A38B/gwAA1wB6gPwAf8D3gH/ - A9QB/wPSAf8D2wH/A9YB/wO/Af8DsAH/A7MB/wPeAf8DXAHqDAADKwH8AYEBswHqAf8BgQG4AYEB/wGB - AcABiQH/AYEBwAGJAf8BgQG9AYYB/wGBAbgBgQH/AYEBswGBAf8BgQGtAYEB/wGBAacBgQH/AYEBngGB - Af8BgQGrAYEB/wGBAbgB7QH/A00B+ggAAysB/AGBAbMB6gH/AYEBpAH8Af8BgQGrAv8BgQGrAv8BgQGo - Af4B/wGBAaQB/AH/AYEBoAH5Af8BgQGcAfYB/wGBAZcB8wH/AYEBkQHsAf8BgQGaAfUB/wGBAbgB7QH/ - A00B+ggAAysB/AGBAbMB6gH/AoEC/wGBAYoC/wGBAYoC/wGBAYYC/wKBAv8CgQL/AoEC/wKBAv8CgQH9 - Af8CgQL/AYEBuAHtAf8DXAH4DAADXAHqA/IB/wPiAf8D2AH/A9UB/wPcAf8D2AH/A8AB/wOzAf8DtwH/ - A+AB/wNcAeoMAANIAYYBgQGiAYEB/wGCAeABqQH/AYIB4AGpAf8BgQHNAZYB/wGBAccBkAH/AYEBwgGL - Af8BgQG8AYUB/wGBAbUBgQH/AYEBrgGBAf8BgQHIAZEB/wGBAcABigH/AYEBmgGBAf8DTgGWCAADTgGZ - AYEBkwHwAf8BgQHJAv8BgQHJAv8BgQG3Av8BgQGyAv8BgQGsAv8BgQGnAf4B/wGBAaIB+gH/AYEBnAH2 - Af8BgQGyAf4B/wGBAawB/QH/AYEBjgHiAf8DUgGnCAADRwGCAoEB/gH/Aa0BtAL/Aa0BtAL/AZIBmwL/ - AYoBkwL/AYIBjAL/AYEBhAL/AoEC/wKBAv8BjAGUAf4B/wGDAYwB/QH/A38B/gNJAYcMAANcAeoD8wH/ - A+cB/wPdAf8D2QH/A+AB/wPbAf8DxAH/A7gB/wO7Af8D4QH/A1wB6gwAAwEBAgNKAYoBgQGUAYEB/wGf - Af0BxgH/AZEB7wG4Af8BgQHWAZ8B/wGBAc0BlgH/AYEBxgGPAf8BgQG/AYgB/wGBAc8BmAH/AZQB8AG5 - Af8BgQGIAYEB/wNSAaMDBgEICAADAQECA1EBoAGBAYcB3AH/AboB5AL/AZcB1wL/AYEBwAL/AYEBtwL/ - AYEBsAH+Af8BgQGqAf4B/wGBAbkB/gH/AZsB2AH+Af8BgQGEAdYB/wNWAbQDBwEKCAADAQECA1EBnwKB - AecB/wHWAdoC/wHCAccC/wGfAaYC/wGSAZsC/wGJAZIB/gH/AYEBiAH+Af8BlgGeAf0B/wHEAckB/gH/ - A38B/gNKAY0DBAEGDAADXAHqA/QB/wPqAf8D4QH/A90B/wPjAf8D3gH/A8kB/wO9Af8DvwH/A+IB/wNc - AeoQAAMKAQ4DUwGlAYEBhQGBAf8BswH1AcgB/wGBAYkBjwH/AoEBoAH/AoEBoAH/AYEBiQGPAf8BqQHo - AboB/wGBAYQBgQH/A1QBrgMPARQQAAMNAREDVwG3AoEB1QH/AcQB4gH4Af8BgQGDAcoB/wKBAbIB/wKB - AbIB/wGBAYMBygH/AawB1QH1Af8CgQHUAf8DWQG/AxIBGRAAAw0BEQNRAZwCgQHqAf8B2QHaAfcB/wKB - AdIB/wKBAbUB/wKBAbUB/wKBAdIB/wHJAcoB9AH/AoEB5gH/A0wBkAMMARAQAANcAeoD9QH/A+4B/wPm - Af8D4gH/A+YB/wPhAf8DzQH/A8IB/wPCAf8D4wH/A1wB6hQAAwcBCgFaAV0BWgHTAoEBmQH/AZwBzAH4 - Af8BrwHUAfcB/wGvAdQB9wH/AaUBzwH2Af8CgQGhAf8BWgFdAVoB0wMMARAYAAMJAQwDYAHeAoEBtQH/ - AZwBzAH4Af8BrwHUAfcB/wGvAdQB9wH/AaUBzwH2Af8CgQG6Af8DXgHdAw4BExgAAwcBCgNYAcECgQG5 - Af8BnAHMAfgB/wGvAdQB9wH/Aa8B1AH3Af8BpQHPAfYB/wKBAb4B/wNZAb8DCgENFAADXAHqA/YB/wPr - Af8D3gH/A9YB/wPVAf8D0QH/A8MB/wO8Af8DwAH/A+UB/wNcAeoYAANbAcgBpgHKAe4B/wGrAcwB6gH/ - AacB0AH2Af8BqAHQAfYB/wGrAcwB6gH/AacBzQHuAf8DXAHMIAADXQHKAaYBygHuAf8BqwHMAeoB/wGn + AwAB/wMAAf8DAAH/ATcBOAE7Ef8BMwE0ATYB/wMAAf8DAAH/AwAB/wMAAf8DWgHbBAADAQECAzoBYgNe + AdoDAAH/AwAB/wNXAb8DFAQcAfwDAAH/AwAB/wMhAfsDEgEZYAADSgGNAwAB/wMAAf8DAAH/AwAB/wNP + AZwXAAH/AwAB/wMAAf8DAAH/AwAB/wHdAd4B3wX/AqEBogH+Au0B7gX/AdsB3AHeAf8DAAH/AwAB/wMA + Af8DAAH/AykB+g8AAQEDOAFdAwAB/wMtAUYDUgGpAwAB/wMAAf8DAAH/AwAB/wNTAapcAAMQARUDVQHq + AwAB/wMAAf8DAAH/AwAB/wNSAfQDEgEZEwAB/wMAAf8DAAH/AwAB/wMAAf8B2wHcAd4F/wKfAaAB/gLr + AewF/wLaAdwB/wMAAf8DAAH/AwAB/wMAAf8DKQH6EAADSwGPAwAB/wMuAUcDVAGvAwAB/wMAAf8DAAH/ + AwAB/wNTAbBcAANQAaQDAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DUwGtEAADWAHpAwAB/wMAAf8DAAH/ + AwAB/wEyATMBNhH/Ai4BMQH/AwAB/wMAAf8DAAH/AwAB/wNeAdoMAAMUARsDHAH8AwAB/wM8AWcDTwGb + AwAB/wMAAf8DAAH/AwAB/wNPAZtcAANRAaADAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DUwGqEAADUgGm + AwAB/wMAAf8DAAH/AwAB/wMAAf8BMgEzATYB/wHbAdwB3gH/AtkB2wH/Ai4BMQH/AwAB/wMAAf8DAAH/ + AwAB/wMAAf8DTgGZDAADUwGqAwAB/wMAAf8DRAF7A0cBggMAAf8DAAH/AwAB/wMAAf8DRgGBXAADQAFw + AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/A0QBfBAAAykBPwMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMA + Af8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AyQBNQwAA1QBrgMAAf8DAAH/A1wBzgMWAR4DVwHf + AwAB/wMAAf8DWgHeAxMBGlwAA0IBdQMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wNGAYAUAANRAacDAAH/ + AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DUAGfEAADUAGaAwAB/wMA + Af8DAAH/A08BnAMQARUDIwE0AyQBNQMEAQZgAAMwAUwDAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DNgFZ + FAADCQEMA1sByAMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DWQHDAwcBChAA + A0YBgAMAAf8DAAH/AwAB/wMAAf8DRgGBbAADBAEFA1gBywMAAf8DAAH/AwAB/wMAAf8DWwHWAwcBCRgA + AwkBDANQAaQDAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/gNPAZwDBwEKFAADFAEbA1gB3QMA + Af8DAAH/A1gB3QMTARpwAAMNARIDUQGnA1IB9ANIAfYDVAGuAxIBGCQAAycBOwNRAaEDXQHiAwAB/gMA + Af4DXwHgA1ABngMkATUgAAMQARUDWQHJA1gBywMQARbgAED/wAAE/wOBAf8D8QH/A4EB/wOBAf8DgQH/ + A6kB/wOkAf8DoAH/A6QB/wOBAf8DgQH/A4EB/wO4Af8DhgH/A4EB/wwAAxUBHQNAAXABVQFXAVUBtwFV + AVwBVQHqA0AB/QMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/ygAAwcBCVwABP8DgQH/A+4B/wOBAf8DgQH/ + A4kB/wOYAf8DgQH/A4EB/wOBAf8DpAH/A4EB/wOBAf8DgQH/A8IB/wOBAf8IAAMmATkBUwFVAVMBsAEA + AaMBAAH/AQABsQEAAf8BAAG8AQAB/wEAAb8BAAH/AQABvgEAAf8BAAG9AQAB/wEAAbwBAAH/AQABuwEA + Af8BAAG5AQAB/wMAAf8kAANZAfUDgQH/AxgBIVgABP8DgQH/A8UB/wOBAf8DgQH/A68B/wOBAf8DgQH/ + A4EB/wOBAf8DhgH/A4EB/wOBAf8DgQH/A+sB/wOBAf8EAAMVAR0BUwFVAVMBsAEAAbUBAAH/AYUBxwGL + Af8BAAHBAQEB/wEBAcQBhgH/AQABwgGCAf8BAAHBAYAB/wEAAb8BAAH/AQABvQEAAf8BAAG9AQAB/wEA + AbsBAAH/AwAB/yQAA1kB9QGBAaEBgQH/A2EB5AMcASdAAANXAbgDBAEGDAAE/wOeAf8DlQH/A4EB/wOB + Af8DmwH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DowH/A4EB/wOBAf8D6AH/A4EB/wQAA0ABcAEAAbIBAAH/ + AYsBywGTAf8BiQHKAZAB/wEAAcEBhQH/AQABogEAAf8BAAGFAQAB/wEAAYABAAH/AwAB/wMAAf8DAAH/ + AwAB/wMAAf8UAAN/Af4DfwH+A38B/gN/Af4BgQGfAYEB/wGBAcEBlgH/AYEBowGBAf8DZAHnAx0BKjgA + AyYBOANtAfcBWwFeAVsB2QwABP8DwgH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/ + A6QB/wOBAf8DgQH/A+YB/wOBAf8EAAFVAlcBtwEBAcIBhwH/AYcBygGQAf8BhQHGAYwB/wFdAWEBXQHi + AUsBTAFLAY8wAAGBAZsBgQH/AZABygGpAf8BjQHIAaUB/wGKAcYBoQH/AYgBxQGeAf8BgQG2AYUB/wGC + AcIBlwH/AYEBpQGBAf8DXAHqAyEBMBAAAYEBvgGBAf8BgQG4AYEB/wGBAbEBgQH/AYEBqQGBAf8BgQGh + AYEB/wGBAZkBgQH/AYEBkQGBAf8BgQGIAYEB/wOBAf8BgQGIAYEB/wGBAaEBgQH/AYEBiwGBAf8DXAHP + CAAE/wPdAf8DgQH/A4EB/wOdAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DoQH/A4EB/wOBAf8D5gH/ + A4EB/wQAAVUCXAHqAZABzgGYAf8BkQHPAZkB/wEAAbkBAAH/AUsCTAGPNAABgQGfAYEB/wGUAc0BrQH/ + AYEBugGOAf8BgQG4AYkB/wGBAbYBhQH/AYEBswGBAf8BgQG1AYIB/wGDAcIBmAH/AYEBoAGBAf8DKwH8 + EAABgQHDAYEB/wGgAdcBqQH/AZwB1QGlAf8BmAHTAaEB/wGUAdABnQH/AZABzgGYAf8BiwHLAZMB/wGH + AckBjgH/AYIBxgGJAf8BgQHDAYQB/wGBAcEBgQH/AYEBvgGBAf8BgQGMAYEB/wNbAcQEAAT/A/AB/wOB + Af8DgQH/A7EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOgAf8DgQH/A4EB/wPlAf8DgQH/BAADXAHq + AZQB0QGcAf8BlQHRAZ4B/wEAAbwBAQH/AUsCTAGPFAADRAF7AwIBAxgAAYEBowGBAf8BlgHOAbAB/wGU + Ac0BrQH/AZEBywGqAf8BkAHLAagB/wGBAbwBkAH/AYoBxwGhAf8BgQGlAYEB/wFAAYcBQAH9AwsBDxAA + AYEBxwGBAf8BpQHaAa4B/wGiAdgBqwH/AZ4B1gGnAf8BmgHUAaMB/wGWAdIBnwH/AZMBzwGaAf8BjgHM + AZUB/wGJAcoBkAH/AYUBxwGLAf8BgQHFAYcB/wGBAcIBggH/AYEBkQGBAf8DXAHJBAAE/wPwAf8DgQH/ + A4EB/wOxAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DoQH/A4EB/wOBAf8D5gH/A4EB/wQAA1cBtwGK + AcwBkwH/AZMB0QGdAf8BkQHOAZoB/wFdAWEBXQHiA0wBjxAAAVkBXQFZAdIBUAFRAVABnxgAAYEBpQGB + Af8BQAGjAUAB/QFAAaEBQAH9AUABnQFAAf0BgQGvAYEB/wGRAcsBqgH/AYEBqwGBAf8BQAGPAUAB/QMJ + AQwUAAGBAccBgQH/AYEBxwGBAf8BgQHDAYEB/wGBAb4BgQH/AYEBuAGBAf8BgQGxAYEB/wGBAakBgQH/ + AYEBoQGBAf8BgQGZAYEB/wGBAZEBgQH/AYEBowGBAf8BgQGdAYEB/wNcAdEIAAT/A90B/wOBAf8DgQH/ + A54B/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOkAf8DgQH/A4EB/wPmAf8DgQH/BAADQAFwAQABxQGE + Af8BngHWAacB/wGcAdUBpQH/AZIBzwGaAf8BAAG4AQAB/wEAAaABAAH/AQABnAEAAf8BAAGXAQAB/wEA + AZIBAAH/AQABpgEAAf8BAAGjAQAB/wNMAZMkAANZAfUBgQGzAYEB/wGBAZgBgQH/AwcBCUAAA20B9wNf + AdsMAAT/A8IB/wOBAf8DgQH/A4MB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOpAf8DgQH/A4EB/wPo + Af8DgQH/BAADFQEdA1UBsAGIAcwBkgH/AaAB1wGpAf8BlgHTAaAB/wGbAdQBowH/AZkB0wGhAf8BlgHR + AZ4B/wGTAc8BmwH/AZABzgGZAf8BjQHMAZUB/wGKAcoBkQH/AQABowEAAf8DSgGKIAADWQH1AYEBnwGB + Af8DBwEJRAADWAG7AwQBBgwABP8DngH/A5cB/wOBAf8DgQH/A6EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/ + A6kB/wOBAf8DgQH/A+sB/wOBAf8IAAMmATkDVQGwAQABxQGFAf8BjQHOAZYB/wGYAdMBoQH/AZwB1QGl + Af8BmQHUAaIB/wGXAdIBnwH/AZQB0AGdAf8BkQHPAZkB/wGNAcwBlAH/AQABqAEAAf8DSAGEhAAE/wOB + Af8DxgH/A4EB/wOBAf8DtQH/A4EB/wOBAf8DgQH/A4EB/wOMAf8DgQH/A4EB/wOBAf8D7gH/A4EB/wwA + AxUBHQNAAXADVwG3A1wB6gEAAbABAAH/AQABrAEAAf8BAAGnAQAB/wEAAaMBAAH/AQABswEAAf8BAAGv + AQAB/wFLAkwBkIgABP8DgQH/A/EB/wOBAf8DgQH/A40B/wOhAf8DgQH/A4EB/wOBAf8DrwH/A4EB/wOB + Af8DgQH/A8MB/wOBAf8sAAFZAV0BWQHSAU8CUQGcjAAE/wOBAf8D9gH/A4EB/wOBAf8DgQH/A7IB/wOv + Af8DrAH/A68B/wOBAf8DgQH/A4EB/wO9Af8DiQH/A4EB/ywAA0MBeAMCAQOMAED/QAADJgE5A0QBegNV + AbABywKBAf8B0gKBAf8B0wKBAf8B0QKBAf8BzQKBAf8DXAHfA0cBgAM3AVskAAMnATsDTgGUA14BzgNg + AesDYAHrA14BzgNtAfcDgQH/AwMBBFgAAxgBIgNTAaoDWAG7AxgBIggAAzUBVQNYAbsDQwF3Aw0BEQwA + A2EB5gGBAYUBrAH/AcgCgQL/AboBgQL/AbcBgQL/AbABgQL/AbIBgQL/AbQBgQH/Ad4BiAGBAf8BhwKB + Af8BgQGbAeYB/xwAAwoBDQNOAZYDTQH6AeEBzQG5Af8B8QHgAc4B/wH5AecB1gH/AfgB5gHUAf8B8AHd + AcwB/wGBAYkBgQH/AYEBoQGBAf8DXAHqAw4BEwwAA1sBxANlAfQB0QGWAYEB/wHOAZIBgQH/AcsBjgGB + Af8ByQGKAYEB/wHHAYcBgQH/AcMBhAGBAf8BwwGEAYEB/wHDAYQBgQH/AcMBhAGBAf8BwwGEAYEB/wHD + AYQBgQH/A1UBsAwAAzUBVQNhAe4BgQGhAfMB/wGBAZoB7wH/A0MBdwgAA1wBzAGBAaEB8gH/AYEBiAHj + Af8DYQHuAzUBVQgAAysB/AGTAawBzAH/AecBrwGBAv8BuAGBAf8B/gGwAYEB/wH+AacBgQH/Af0BoAGB + Av8BlwGBAf8B/QGTAYEB/wGzAZ8BogH/AYEBlgHeAf8YAAMKAQ0DVwG4AdkBvwGlAf8B/gHyAeQC/wHn + Ac8B/wGBAZgBgQH/AYEBkgGBAf8BgQGQAYEB/wGBAYwBgQH/AYEBnwGBAf8BgQHBAZYB/wGBAaMBgQH/ + AVkBZwFZAfIDDwEUCAAB1wGhAYEB/wH4AfIB7QH/AfcB8AHqAf8B9gHtAeYB/wH0AeoB4gH/AfMB5wHe + Af8B8QHkAdsB/wHwAeIB2AH/AeoB1gHIAf8B8gHlAdwB/wH6AfQB8QH/AfkB8wHwAf8B+gH1AfIB/wGo + AYoBQAH9DAADNQFVAYEBmAHwAf8BgQG7Af4B/wGBAbQB/AH/A2EB7gMNAREDLAFEAYEBhQHiAf8BgQGz + Av8BgQGqAfkB/wKBAdUB/wMjATMIAAM1AVUDWQH1Af0B1wGyAv8B1gGEAv8BygGBAv8BwAGBAv8BtAGB + Av8BpwGBAv8BxQGSAf8B1gKBAf8DTgGWGAADTgGWAdkBvwGlAv8B+AHrAv8B6wHRAv8B4QHDAf8BgQGb + AYEB/wGQAcoBqQH/AY0ByAGlAf8BigHGAaEB/wGIAcUBngH/AYEBtgGFAf8BggHCAZcB/wGBAaUBgQH/ + AVgBYgFYAe8DBwEJBAAB2QGkAYEB/wH5AfMB7gH/AesB0gG+Bf8B6wHTAb8F/wHrAdMBwAX/AeoBxwGt + Af8B7AHZAc0B/wHxAeQB2wH/AfkB8wHwAf8B+QHyAe8B/wHGAYwBgQH/EAADSQGIAYEBnQHxAf8BgQG9 + Av8BgQGYAe8B/wM8AWYDTgGZAYEBngHyAf8BgQG0Av8BgQGMAeYB/wNDAXcQAAM7AWQDXwHzAf8B6AHA + Af8BrQGqAYYB/wGnAZ4BgQH/AaABkgGBAf8B9wHKAZwB/wHkAZQBgQH/A1EBoAMHAQoUAAMmATgBqAGH + AUAB/QL+AfoC/wH5AekC/wHvAdgC/wHnAc0B/wGBAZ8BgQH/AZQBzQGtAf8BgQG6AY4B/wGBAbgBiQH/ + AYEBtgGFAf8BgQGzAYEB/wGBAbUBggH/AYMBwgGYAf8BgQGgAYEB/wNNAfoEAAHdAagBgQH/AfkB8wHv + Af8B6wHQAboB/wHrAdABuwH/AYEBtQGBAf8BgQG1AYEB/wGBAbUBgQH/AesB0QG9Af8B6gHNAbUB/wH6 + AfQB8AH/AesB2QHMAf8B8QHkAdsB/wH6AfQB8QH/AcYBigGBAf8UAANYAbsBgQGhAfQB/wGBAbIB+gH/ + A14B3QGBAaIB8wH/AYEBtgL/AYEBlwHuAf8DTgGZGAADRAF5A00B+gGBAa0B5wH/AYEBsQHjAf8BgQGy + AecB/wGBAZgBxAH/A4EB/wGBAaQBgQH/AYEBqAGBAf8BgQGnAYEB/wGBAaMBgQH/A1wB3wNHAYADNwFb + A04BlgHiAc4BugH/AfcB3gHGAv8B6QHRAv8B9gHiAv8B8gHdAf8BgQGjAYEB/wGWAc4BsAH/AZQBzQGt + Af8BkQHLAaoB/wGQAcsBqAH/AYEBvAGQAf8BigHHAaEB/wGBAaUBgQH/AYEBiAGBAf8DTgGWBAAB3wGq + AYIB/wH5AfMB7wH/AeoBzgG3Bf8BgQG1AYEB/wGUAdQBmwH/AYEBtQGBBf8B6gHPAboB/wH7AfYB8gH/ + AfoB8wHwAf8B6wHYAcsB/wHyAeYB3QH/AcgBjQGBAf8UAAMNAREDYQHuAYEBuQH+Af8BgQGyAfwB/wGB + AbcC/wGBAasB+QH/A1wBzAMNAREYAAM8AWYDfwH+AawB0QHyAf8BrgHXAf0B/wGwAdQB9QH/AZIBwAHn + Af8BgQGDAYkB/wGBAc8BlAH/AYEBzgGOAf8BgQHOAY8B/wGBAc4BkQH/AYEBtAGBAf8BgQGPAYEB/wGB + AZsB5gH/A14B0AHvAeAB0AH/AecBvgGWAf8B5wG8AZQB/wHwAcwBqQH/Af4B7AHaAf8BgQGlAYEB/wGB + AaMBgQH/AYEBoQGBAf8BgQGeAYEB/wGBAa8BgQH/AZEBywGqAf8BgQGrAYEB/wGBAZABgQH/AfAB3wHO + Af8DXgHQBAAB4QGuAYcB/wH6AfQB8AH/AeoBywGyAf8B6gHMAbMB/wGBAbUBgQH/AYEBtQGBAf8BgQG0 + AYEB/wHqAc4BtwH/AYEBswGBAf8BgQGyAYEB/wGBAbEBgQH/AegByAGuAf8B6gHXAckB/wHEAYYBgQH/ + BAADWAG7AYEBkAH0Af8BgQGOAfMB/wNcAcwDWAG7A1gBuwGBAa4B+gH/AYEBtwL/AYEBtQL/AYEBrQH6 + Af8DXAHMA1gBuwNeAd0CgQHcAf8CgQHXAf8DWAG7CAABVAJWAasBpwG/AdsB/wGWAcUB8QH/AaEB0AH7 + Af8BlgHGAfMB/wG2Ac8B5AH/AoEBpwH/AYEBzgGPAf8BgQHNAYkB/wGBAcsBgwH/AYEBywGBAf8BgQHJ + AYEB/wGBAZYBgQH/AYEBlgHeAf8DZAHsAfUB5AHVAf8B6QG+AZcB/wHoAbwBlgH/AecBvAGUAf8B8wHe + AcoB/wNhAeYDFAEbAxQBGwNhAeYBgQGkAYEB/wGBAbMBgQH/AYEBmAGBAf8B7QHJAaQB/wH2AeQB0gH/ + A2QB7AQAAeMBsQGMAf8B+gH2AfEB/wHqAckBrgX/AeoByQGwBf8B6QHLAbMF/wGBAbEBgQH/AY4B0gGV + Af8BgQGvAYEF/wHxAeUB2wH/AcYBhgGBAf8EAANYAbsBgQG6Af0B/wGBAccC/wGBAbsB/QH/AYEBtQH7 + Af8BgQGzAfsB/wGBAb0C/wGBAbgC/wGBAbUC/wGBAbgC/wGBAa8B+gH/AYEBqgH4Af8BgQGxAfsB/wGB + AbcC/wGBAaUB9gH/A1gBuwgAA1sBxAKBAZoB/wKBAa4B/wGBAaYB1gH/AoEBpQH/AoEBkgH/AoEBmAH/ + AYEB0AGfAf8BgQHOAZcB/wGBAc0BjgH/AYEBzQGIAf8BnQHYAasB/wGBAbABgQH/A04BlgNkAewB9QHk + AdUB/wHpAb8BmQH/AekBwAGZAf8B6QHBAZoB/wHzAd0ByQH/A2EB5gMUARsDFAEbA2EB5gGBAagBgQH/ + AYEBnwGBAf8B8AHMAasB/wHwAcwBqwH/AfYB5AHTAf8DZAHsBAAB5QG0AY8B/wH6AfYB8gH/AekBxgGq + Af8B6QHGAawB/wHqAccBrAH/AekBxwGtAf8B6QHJAa4B/wHpAckBsAH/AYEBsAGBAf8BgQGvAYEB/wGB + Aa0BgQH/AegBzAG1Af8B8gHnAd4B/wHIAYoBgQH/BAADWAG7AYEBnwH5Af8BgQGTAfYB/wNhAe4DWAG7 + A1wBzAGBAbQB/AH/AYEBuQL/AYEBtwL/AYEBrwH7Af8DXAHMA1gBuwNeAd0CgQHiAf8BgQGGAeYB/wNY + AbsIAAMsAUMCQAGVAf0CgQGQAf8CgQGQAf8CgQGQAf8CgQGQAf8BgQGPAZ4B/wGEAZkBkwH/AYEBlAGJ + Af8BgQGMAYEB/wGkAdUBsQH/AYIBvwGFAf8DUQGgAwcBCgNeAdAB8AHhAdEB/wHqAcQBoQH/AekBwQGb + Af8B6QHAAZcB/wHxAc4BsgH/AdwBwwGqAf8DZAHnA2QB5wHdAcQBrAL/AfwB8wL/AfQB5QL/Ae4B2gH/ + AfwB5QHRAf8B8QHhAdEB/wNeAdAEAAHnAbcBlAH/AfsB9wH0Af8B6QHDAaYF/wHoAcQBqQX/AekBxgGq + Bf8B6AHHAawF/wHoAcgBsAX/AfcB8QHrAf8BywGPAYEB/wQAAyMBMwMjATMIAAMNAREDYQHuAYEBvQH+ + Af8BgQG5Af4B/wGBAboC/wGBAbEB+wH/A1wBzAMNAREIAAMjATMDIwEzDAADOgFhA2QB8QKBAZIB/wNf + AfsDXAHMA00B+gGBAa0B5wH/AYEBsQHjAf8BgQGyAecB/wGBAZgBxAH/A1YBtgMIAQsEAANOAZYB4gHO + AboB/wHxAdIBtgH/AesBwQGbAf8B6wG/AZkC/wHkAdMC/wHoAdsB/wHzAdoBxwH/AfgB8QHkAv8B+AHt + Av8B9wHpAv8B/gHxAv8B/AHvAv8B/AHyAf8B4gHOAboB/wNOAZYEAAHpAboBmAH/AfsB9wH0Af8BgQGk + Av8BgQGjAv8BgQGiAv8BgQGhAv8BgQGfAv8BgQGdAv8BgQGaAv8BgQGYAv8BgQGVAv8BgQGUAv8B+wH3 + AfQB/wHOAZMBgQH/FAADWAG7AYEBqwH6Af8BgQHAAf4B/wNhAe4BgQGsAfkB/wGBAbwC/wGBAaIB9gH/ + A04BmSwAAzwBZgN/Af4BrAHRAfIB/wGuAdcB/QH/AbAB1AH1Af8BkgHAAecB/wNVAa0IAAMmATgBqAGH + AUAB/QH6Ae0B4QH/AewBxwGjAv8B7AHaBf8B9wHNAbYB/wHsAb0BlwL/AfQB3AP/AfcC/wH3AegD/wHz + A/8B+QH/Av4B+QH/AagBhwFAAf0DJgE4BAAB6wG9AZsB/wH7AfcB9AH/AYEBpAL/AYEBvQL/AYEBuwL/ + AYEBuQL/AYEBuAL/AYEBswL/AYEBsAL/AYEBqwL/AYEBpwL/AoEC/wH7AfcB9AH/AdEBlwGBAf8QAAND + AXcBgQGqAfsB/wGBAcQC/wGBAa4B+wH/A04BmQNOAZkBgQGrAfkB/wGBAbsC/wGBAZ0B9AH/AzwBZigA + A0oBjQG4AdAB5wH/AZYBxQHxAf8BoQHQAfsB/wGWAcYB8wH/AbYBzwHkAf8DXAHfDAADTgGWAdkBvwGl + Av8B+gHwBv8B/QHzAf8B8AHBAaMB/wHuAcYBoAH/Af0B8AHRA/8B/gL/Af0B8AL/Af0B8QX/AdkBvwGl + Af8DTgGWCAAB7AG/AZ4B/wH7AfcB9AH/AYEBpAL/AYEBowL/AYEBoAL/AYEBngL/AYEBmQL/AYEBlgL/ + AYEBkAL/AYEBiwL/AYEBhAL/AoEC/wH7AfcB9AH/AdQBmwGBAf8MAAMsAUQBgQGlAf0B/wGBAcAB/gH/ + AYEBxAL/AYEBmwH4Af8DGAEiAywBRAGBAZwB9gH/AYEBvAL/AYEBtAH8Af8DYQHuAyMBMyQAA0wBkgGB + Aa4B5QH/AYEBuAHmAf8BjQHIAfYB/wGBAa0B5gH/AYEBpwHlAf8BWAJiAe8MAAMKAQ0DVwG4AdkBvwGl + Af8B/gH9AfwC/wHxAeQB/wHyAcoBrgH/AfIB0gGtAf8B+QHtAcgD/wH3A/8B/QH/Af4B/QH8Af8B2QG/ + AaUB/wNXAbgDCgENCAADYAHrAfsB9wH0Af8B+wH3AfQB/wH7AfcB9AH/AfsB9wH0Af8B+wH3AfQB/wH7 + AfcB9AH/AfsB9wH0Af8B+wH3AfQB/wH7AfcB9AH/AfsB9wH0Af8B+wH3AfQB/wH7AfcB9AH/A1wB+AwA + AzwBZgGBAaQB/QH/AYEBtgH+Af8BgQG7Af4B/wNYAbsIAANcAcwBgQG4Af0B/wGBAagB+QH/A2EB7gM1 + AVUkAAMsAUMBQAGjAagB/QGBAaYB5QH/AYEBpgHlAf8BgQGmAeUB/wGBAaYB5QH/A0wBkBAAAwoBDQNO + AZYDTQH6AeEBzQG5Af8B8QHiAdQB/wH5AewB3wH/AfsB8wHlAf8B9AHtAeQB/wHiAc4BuwH/A00B+gNO + AZYDCgENDAADRgF+A18B4wHtAcABnwH/AesBvgGdAf8B6wG8AZoB/wHpAboBlgH/AecBtwGTAf8B5gG1 + AZAB/wHkAbIBjAH/AeIBrwGIAf8B4AGsAYQB/wHdAakBgQH/AdwBpQGBAf8DXQHKEAADIwEzA1gBuwGB + AZkB/AH/AzUBVQgAAzwBZgGBAZEB9QH/A1gBuwMYASIsAAM6AWEDZAHxAYEBpQHkAf8DXwH7A1ABnQME + AQYYAAMnATsDTgGUA14BzgNgAesCYgFYAe8CXgFbAdkDTwGXAycBO6gAAwoBDQMiATEDIAEvAwUBB+QA + AxgBIQNQAZ0DXQHwA6EB/wOrAf8DpwH/A5UB/wNkAecDSgGKAxABFhQAAwoBDQMaASUDXgHVA38B/gGB + AYkBgQH/AYEBiAGBAf8BgQGHAYEB/wGBAYUBgQH/A38B/gNkAewDHQEqAwoBDRAAAwoBDQMfAS0DYQHh + A38B/gGBAYQB1QH/AYEBggHWAf8BgQGCAdQB/wKBAdIB/wN/Af4DXwHzAyMBMwMKAQ0QAAMKAQ0DHwEt + A2EB4QN/Af4CgQHeAf8CgQHeAf8CgQHdAf8CgQHaAf8DfwH+A18B8wMjATMDCgENEAADLwFKA2UB9APO + Af8D7QH/A/QB/wP1Af8D9AH/A+8B/wPiAf8DugH/A2QB5wMkATUMAANEAXkDXwH7AYEBnQGBAf8BgQGP + AYEB/wGBAcEBigH/AYEBwQGKAf8BgQHBAYoB/wGBAcEBigH/AYEBwQGKAf8BgQHBAYoB/wGBAYoBgQH/ + AYEBiAGBAf8DXAH4A0gBgwgAA0QBeQNfAfsBgQGQAeoB/wGBAYgB3gH/AYEBqwL/AYEBqwL/AYEBqwL/ + AYEBqwL/AYEBqwL/AYEBqwL/AYEBhAHZAf8CgQHTAf8DXAH4A0gBgwgAA0QBeQNfAfsCgQH8Af8CgQHr + Af8BgQGLAv8BgQGLAv8BgQGLAv8BgQGLAv8BgQGLAv8BgQGLAv8CgQHkAf8CgQHaAf8DXAH4A0gBgwwA + A1wB6gPeAf8D8wH/A9sB/wPSAf8D2wH/A9YB/wPAAf8DyQH/A+YB/wPEAf8DXAHqDAADfwH+AYIBugHu + Af8BgQGeAYEB/wGBAcwBlQH/AYEBuAGBAf8BgQG1AYEB/wGBAbEBgQH/AYEBrAGBAf8BgQGxAYEB/wGB + Aa0BgQH/AYEBwQGKAf8BgQGSAYEB/wGDAbwB7wH/A38B/ggAA38B/gGCAboB7gH/AYEBkQHsAf8BgQG2 + Av8BgQGkAfsB/wGBAaIB+QH/AYEBnwH4Af8BgQGbAfUB/wGBAZ8B9wH/AYEBnAH1Af8BgQGsAf0B/wGB + AYoB3gH/AYMBvAHvAf8DfwH+CAADfwH+AYIBugHuAf8CgQH+Af8BkQGZAv8CgQH+Af8CgQH+Af8CgQL/ + AoEB/gH/AoEB/gH/AoEB/QH/AYMBjAH9Af8CgQHsAf8BgwG8Ae8B/wN/Af4MAANcAeoD8AH/A94B/wPU + Af8D0gH/A9sB/wPWAf8DvwH/A7AB/wOzAf8D3gH/A1wB6gwAAysB/AGBAbMB6gH/AYEBuAGBAf8BgQHA + AYkB/wGBAcABiQH/AYEBvQGGAf8BgQG4AYEB/wGBAbMBgQH/AYEBrQGBAf8BgQGnAYEB/wGBAZ4BgQH/ + AYEBqwGBAf8BgQG4Ae0B/wNNAfoIAAMrAfwBgQGzAeoB/wGBAaQB/AH/AYEBqwL/AYEBqwL/AYEBqAH+ + Af8BgQGkAfwB/wGBAaAB+QH/AYEBnAH2Af8BgQGXAfMB/wGBAZEB7AH/AYEBmgH1Af8BgQG4Ae0B/wNN + AfoIAAMrAfwBgQGzAeoB/wKBAv8BgQGKAv8BgQGKAv8BgQGGAv8CgQL/AoEC/wKBAv8CgQL/AoEB/QH/ + AoEC/wGBAbgB7QH/A1wB+AwAA1wB6gPyAf8D4gH/A9gB/wPVAf8D3AH/A9gB/wPAAf8DswH/A7cB/wPg + Af8DXAHqDAADSAGGAYEBogGBAf8BggHgAakB/wGCAeABqQH/AYEBzQGWAf8BgQHHAZAB/wGBAcIBiwH/ + AYEBvAGFAf8BgQG1AYEB/wGBAa4BgQH/AYEByAGRAf8BgQHAAYoB/wGBAZoBgQH/A04BlggAA04BmQGB + AZMB8AH/AYEByQL/AYEByQL/AYEBtwL/AYEBsgL/AYEBrAL/AYEBpwH+Af8BgQGiAfoB/wGBAZwB9gH/ + AYEBsgH+Af8BgQGsAf0B/wGBAY4B4gH/A1IBpwgAA0cBggKBAf4B/wGtAbQC/wGtAbQC/wGSAZsC/wGK + AZMC/wGCAYwC/wGBAYQC/wKBAv8CgQL/AYwBlAH+Af8BgwGMAf0B/wN/Af4DSQGHDAADXAHqA/MB/wPn + Af8D3QH/A9kB/wPgAf8D2wH/A8QB/wO4Af8DuwH/A+EB/wNcAeoMAAMBAQIDSgGKAYEBlAGBAf8BnwH9 + AcYB/wGRAe8BuAH/AYEB1gGfAf8BgQHNAZYB/wGBAcYBjwH/AYEBvwGIAf8BgQHPAZgB/wGUAfABuQH/ + AYEBiAGBAf8DUgGjAwYBCAgAAwEBAgNRAaABgQGHAdwB/wG6AeQC/wGXAdcC/wGBAcAC/wGBAbcC/wGB + AbAB/gH/AYEBqgH+Af8BgQG5Af4B/wGbAdgB/gH/AYEBhAHWAf8DVgG0AwcBCggAAwEBAgNRAZ8CgQHn + Af8B1gHaAv8BwgHHAv8BnwGmAv8BkgGbAv8BiQGSAf4B/wGBAYgB/gH/AZYBngH9Af8BxAHJAf4B/wN/ + Af4DSgGNAwQBBgwAA1wB6gP0Af8D6gH/A+EB/wPdAf8D4wH/A94B/wPJAf8DvQH/A78B/wPiAf8DXAHq + EAADCgEOA1MBpQGBAYUBgQH/AbMB9QHIAf8BgQGJAY8B/wKBAaAB/wKBAaAB/wGBAYkBjwH/AakB6AG6 + Af8BgQGEAYEB/wNUAa4DDwEUEAADDQERA1cBtwKBAdUB/wHEAeIB+AH/AYEBgwHKAf8CgQGyAf8CgQGy + Af8BgQGDAcoB/wGsAdUB9QH/AoEB1AH/A1kBvwMSARkQAAMNAREDUQGcAoEB6gH/AdkB2gH3Af8CgQHS + Af8CgQG1Af8CgQG1Af8CgQHSAf8ByQHKAfQB/wKBAeYB/wNMAZADDAEQEAADXAHqA/UB/wPuAf8D5gH/ + A+IB/wPmAf8D4QH/A80B/wPCAf8DwgH/A+MB/wNcAeoUAAMHAQoBWgFdAVoB0wKBAZkB/wGcAcwB+AH/ + Aa8B1AH3Af8BrwHUAfcB/wGlAc8B9gH/AoEBoQH/AVoBXQFaAdMDDAEQGAADCQEMA2AB3gKBAbUB/wGc + AcwB+AH/Aa8B1AH3Af8BrwHUAfcB/wGlAc8B9gH/AoEBugH/A14B3QMOARMYAAMHAQoDWAHBAoEBuQH/ + AZwBzAH4Af8BrwHUAfcB/wGvAdQB9wH/AaUBzwH2Af8CgQG+Af8DWQG/AwoBDRQAA1wB6gP2Af8D6wH/ + A94B/wPWAf8D1QH/A9EB/wPDAf8DvAH/A8AB/wPlAf8DXAHqGAADWwHIAaYBygHuAf8BqwHMAeoB/wGn AdAB9gH/AagB0AH2Af8BqwHMAeoB/wGnAc0B7gH/A1wBzCAAA10BygGmAcoB7gH/AasBzAHqAf8BpwHQ - AfYB/wGoAdAB9gH/AasBzAHqAf8BpwHNAe4B/wNcAcwYAANcAeoD9wH/A+cB/wPvAf8D9gH/A/sB/wP6 - Af8D8AH/A94B/wPDAf8D5gH/A1wB6hgAAVkCZwHyAb0B1wHvAf8BowHJAe0B/wGdAcUB6AH/AYEBzgHv - Af8BgQHNAe8B/wGoAdwB8QH/A2IB9gMEAQYcAANkAfEBvQHXAe8B/wGjAckB7QH/AZ0BxQHoAf8BgQHD - AeoB/wGBAcUB7AH/AaYB2QHwAf8DWQH1AwQBBhwAAlgBYgHvAb0B1wHvAf8BowHJAe0B/wGfAcUB6AH/ - AYEBoQHNAf8BgQGwAd0B/wG3AdMB6wH/A18B8wMEAQYUAANcAeoD+AH/A/4Z/wP7Af8D6gH/A1wB6hgA - AYEBngHzAf8BgQGrAc4B/wGKAbcB5AH/AYEBxgHrAf8BgQGfAe0B/wGBAaQB7gH/AYEBpQHrAf8BgQGa - AekB/wMNAREcAAKBAeoB/wGBAaQByQH/AYoBtwHkAf8BgQG5AeUB/wKBAd8B/wKBAeIB/wKBAd0B/wKB - AdkB/wMLAQ8cAAN/Af4BgQGTAbUB/wGKAbcB5AH/AYEBkwHDAf8DgQH/A4EB/wOBAf8DgQH/AwgBCxQA - A1kBvwPhAf8D/hn/A/sB/wPPAf8DUgGhGAABgQG6AfUB/wGBAbYB9QH/AYEBqgH0Af8BgQGsAfQB/wGB - AawB9AH/AYEBrAHzAf8BgQGhAfAB/wGBAZMB5AH/IAABgQGnAe0B/wGBAZYB8AH/AoEB7AH/AoEB7AH/ - AoEB7AH/AoEB6wH/AoEB5AH/AoEB0QH/IAADgQH/AoEBjwH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DfwH+ - GAADHQEqA1wB0QPQAf8D6AH/A/MB/wP9Af8D/AH/A+0B/wPgAf8DwgH/A1sBwwMUARsYAANgAd4BgQG2 - AfUB/wGBAbYB9QH/AYEBtgH1Af8BgQGyAfUB/wGBAasB9AH/AYEBqgHwAf8DYQHhIAADWAG7AYEBnAHt - Af8BgQGWAe8B/wGBAZYB7wH/AYEBjQHuAf8CgQHsAf8CgQHjAf8DWQHHIAADRwGAA4EB/wKBAYoB/wKB - AYgB/wOBAf8DgQH/A4EB/wNLAY4cAAMFAQcDNQFVA1QBrgNgAdYDXwH7A2oB+QNcAc0DUgGpAy0BRgMC - AQMgAANfAeMBgQGnAfMB/wGBAawB9AH/AYEBqAH0Af8BgQGhAfEB/wNhAeYoAANaAcUCgQHqAf8CgQHt - Af8CgQHsAf8CgQHnAf8DXgHQKAADSgGNA4EB/wOBAf8DgQH/A4EB/wNQAZ3/AFkAAxUBHQMjATQDJAE2 - AyQBNgMkATYDJAE2AyQBNgMkATYDJAE2AyQBNgMkATYDJAE2AyMBMwMVAR2IAANRAZ8DYQHhA2EB4QNX - AbowAAMjATQDWQH1AagCQAH9A/wB/wP8Af8D/AH/A/wB/wP8Af8D/AH/A/wB/wP8Af8BqAJAAf0DXwHz - AyMBMwgAAbUCgQH/A4EB/wOBAf8DgQH/AcYCgQH/aAABhwKBAf8BggKBAf8BkwKBAf8BkAKBAf8DgQH/ - A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/AxYBHhMAAQEDJAE2A38B/gP8Af8D/AH/A/wB/wP8Af8D/AH/ - A/wB/wP8Af8D/AH/A/wB/wP8Af8BqAJAAf0DJAE2BAABpQKBAf8DgQH/A4QB/wOMAf8DgQH/A4EB/wGM - AoEB/wgAAa0CgQH/A4EB/wOBAf8DgQH/AcYCgQH/CAADUgGpAcMBjgGBAf8BwAGLAYEB/wG+AYgBgQH/ - AbsBhQGBAf8BuQGDAYEB/wG0AoEB/wGyAoEB/wGxAoEB/wGuAoEB/wGtAoEB/wGrAoEB/wGpAoEB/wGp - AoEB/wNSAakEAAGzAYsBgQH/AbMBiwGBAf8DgQH/A4EB/wGzAYsBgQH/AbMBiwGBAf8BswGLAYEB/wGz - AYsBgQH/AbMBiwGBAf8BswGLAYEB/wOBAf8DFgEeEwABAQMkATYD/AH/A/wB/wPdAf8D2wH/A9kB/wPX - Af8D1QH/A9QB/wPUAf8D1AH/A/sB/wP8Af8DJAE2AwABAQGtAoEB/wOUAf8DrQH/A60B/wOtAf8DjAH/ - A4EB/wGtAoEB/wGUAoEB/wOBAf8DgQH/A4EB/wOBAf8DgQH/AYQCgQH/BAAByAGSAYE1/wGpAoEB/wQA - AYcCgQH/AYICgQH/AasBkAGBAf8BqgGPAYEB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DFgEe - EwABAQMkATYD/AH/A/wB/wP8Af8D/AH/A/sB/wP7Af8D+gH/A/oB/wP6Af8D+gH/A/oB/wP8Af8DJAE2 - AwABAQQAAa0CgQH/A4wB/wOcAf8DtQH/A60B/wOBAf8DgQH/AZwCgQH/A4EB/wOUAf8DnAH/A5QB/wOB - Af8DgQH/AaUCgQH/AcoBlAGBBf8B6wGwAYEF/wOyAf8DrgH/A6UB/wH+AfoB9wH/A6IB/wH+AfoB9wH/ - A5gB/wOVAf8DkQX/AaoCgQH/BAAD+AH/A/EB/wPjAf8D8wH/A/gB/wP5Af8D+AH/A+kB/wP4Af8DgQH/ - A4EB/wMWAR4DVwG4AwQBBgsAAQEDJAE2A/wB/wP8Af8D1gH/A9MB/wPPAf8DzQH/A8sB/wPIAf8DyAH/ - A8YB/wP4Af8D/AH/AyQBNgMAAQEIAAG9AoEB/wGEAoEB/wOBAf8DjAH/A5wB/wOBAf8EAAGcAoEB/wOB - Af8DhAH/A5wB/wOUAf8DgQH/A4EB/wHMAZcBgQX/Af4B/QH7Af8B/gH8AfsB/wH+AfsB+QH/Af4B+wH5 - Af8B/gH6AfcB/wH+AfoB9wH/Af4B+gH3Af8B/gH6AfcB/wH9AfgB9AH/AfwB9gHzAf8B/AH2AfMF/wGs - AoEB/wQAA+cB/wPTAf8DpQH/A9cB/wP0Af8D7gH/A+oB/wPcAf8D+AH/A4EB/wOBAf8DMQFPA20B9wNb - AdkLAAEBAyQBNgP8Af8D/AH/A/wB/wP8Af8D/AH/A/wB/wP8Af8D+wH/A/kB/wP5Af8D+AH/A/wB/wMk - ATYDAAEBFAADgQH/A7UB/wOBAf8IAAG1AoEB/wOBAf8DgQH/A4EB/wOEAf8DgQH/AdEBnAGBBf8B7wG0 - AYEF/wO1Af8DswH/A6sB/wH+AfoB9wH/A6gB/wH9AfgB9QH/A6IB/wOeAf8DmwX/AbACgQH/BAADxQH/ - A9MB/wOmAf8D2AH/A/QB/wGBAb4BgQH/AYEBuAGBAf8BgQGxAYEB/wGBAakBgQH/AYEBoQGBAf8BgQGZ - AYEB/wGBAZEBgQH/AYEBoQGBAf8BgQGLAYEB/wNcAc8HAAEBAyQBNgP8Af8D/AH/A84B/wPKAf8DxgH/ - A8MB/wPAAf8DvQH/A7wB/wO6Af8D9gH/A/wB/wMkATYDAAEBFAADgQH/A70B/wOBAf8UAAOBAf8DnAH/ - A4EB/wHUAZ4BgQX/Af4B/AH6Af8B/gH7AfkB/wH+AfoB+AH/Af4B+gH4Af8B/gH6AfYB/wH+AfoB9wH/ - AfwB9wH0Af8B/AH3AfIB/wH8AfYB8AH/AfwB9QHvAf8B/AH0Ae4F/wGyAoEB/wQAA+kB/wPUAf8DpgH/ - A9gB/wP1Af8BgQHDAYEB/wGgAdcBqQH/AZwB1QGlAf8BmAHTAaEB/wGUAdABnQH/AZABzgGYAf8BiwHL - AZMB/wGBAcEBgQH/AYEBvgGBAf8BgQGMAYEB/wNbAcQDAAEBAyQBNgP8Af8D/AH/A/wB/wP8Af8D/AH/ - A/wB/wP7Af8D+AH/A/YB/wPzAf8D8gH/A/wB/wMkATYDAAEBFAADgQH/A70B/wOBAf8UAAOBAf8DpQH/ - A4EB/wHVAaABgQX/AfMBtgGBBf8DugH/A7gB/wOyAf8B/gH6AfcB/wOvAf8B/AH2AfAB/wOpAf8DpwH/ - A6UF/wG1AoEB/wQAA8UB/wPUAf8DpwH/A9gB/wP1Af8BgQHHAYEB/wGlAdoBrgH/AaIB2AGrAf8BngHW - AacB/wGaAdQBowH/AZYB0gGfAf8BkwHPAZoB/wGBAcUBhwH/AYEBwgGCAf8BgQGRAYEB/wNcAckDAAEB - AyQBNgP8Af8D/AH/A8cB/wPCAf8DvgH/A7gB/wO0Af8DsQH/A64B/wOsAf8D7QH/A/wB/wMkATYDAAEB - FAADgQH/A8YB/wOBAf8UAAOBAf8DpQH/A4EB/wHYAaIBgQX/Af4B+gH4Af8B/gH6AfcB/wH+AfoB9gH/ - Af0B+AH2Af8B/AH3AfIB/wH+AfoB9wH/AfwB9gHwAf8B/AH1Ae8B/wH7AfMB7AH/AfoB8QHqAf8B+gHw - AegF/wG3AoEB/wQAA+oB/wPVAf8DtQH/A98B/wP1Af8BgQHHAYEB/wGBAccBgQH/AYEBwwGBAf8BgQG+ - AYEB/wGBAbgBgQH/AYEBsQGBAf8BgQGpAYEB/wGBAaMBgQH/AYEBnQGBAf8DXAHRBwABAQMkATYD/AH/ - A/sB/wP8Af8D/AH/A/sB/wP4Af8D9QH/A/EB/wPsAf8D6gH/A+YB/wP8Af8DJAE2AwABARQAA4QB/wPG - Af8DgQH/FAADgQH/A60B/wOBAf8B2QGjAYEF/wH2AbkBgQX/A70B/wO7Af8DtwH/Af4B+gH3Af8DtQH/ - AfwB8wHtAf8DsQH/A7AB/wOtBf8BugGFAYEB/wQAA8YB/wPyAf8B3QHYAdIB/wHrAeUB3wH/A/wB/wPM - Af8DyQH/A70B/wP5Af8BhAKBAf8BkQKBAf8DFgEeA20B9wNfAdsLAAEBAyQBNgP8Af8D+QH/A8AB/wO6 - Af8DtAH/A68B/wOqAf8DpQH/A/wB/wP8Af8D/AH/A/wB/wMkATYDAAEBFAADjAH/A84B/wOBAf8UAAOB - Af8DrQH/A4EB/wHbAaQBgTX/Ab0BhwGBAf8EAAP4Af8B2QHGAbEB/wNhAeYDYQHmAdcBxAGvAf8D+QH/ - A/kB/wP5Af8D+QH/AYsCgQH/AZcCgQH/AxYBHgNYAbsDBAEGCwABAQMkATYD/AH/A/cB/wP5Af8D9wH/ - A/cB/wPzAf8D8AH/A+oB/wP8Af8D9gH/A/QB/wNNAZEDFwEgGAADlAH/A84B/wOEAf8DgQH/A4EB/wOB - Af8DgQH/A4EB/wOBAf8DtQH/A4EB/wHcAacBgQH/AdwBpwGBAf8B3AGnAYEB/wHcAacBgQH/AdwBpwGB - Af8B3AGnAYEB/wHcAacBgQH/AdwBpwGBAf8B3AGnAYEB/wHcAacBgQH/AdwBpwGBAf8B3AGnAYEB/wHc - AacBgQH/AdwBpwGBAf8BwAGLAYEB/wQAAcsBpgGBAf8BxgGgAYEB/wM9AWcDPQFnAbsBlQGBAf8BuAGU - AYEB/wG0AZABgQH/Aa8BiwGBAf8BqwGHAYEB/wGSAoEB/wMjATMDBAEGFAADJAE2AagCQAH9A/QB/wP1 - Af8D9QH/A/UB/wPxAf8D7wH/A+kB/wP8Af8D5wH/A00BkQMXASADAQECGAADlAH/A9YB/wPOAf8DzgH/ - A84B/wPGAf8DxgH/A70B/wO9Af8DvQH/A4EB/wGoAkAB/QHoAbkBkgH/AegBuQGSAf8B6AG5AZIB/wHo - AbkBkgH/AegBuQGSAf8B6AG5AZIB/wHoAbkBkgH/AegBuQGSAf8B6AG5AZIB/wHoAbkBkgH/AegBuQGS - Af8B6AG5AZIB/wHoAbkBkgH/AagCQAH9BAADIwEzAyMBMwgAAyMBMwMjATMDIwEzAyMBMwMjATMDIwEz - HAADIwEzA10B8AGoAkAB/QP8Af8D/AH/A/wB/wP8Af8D/AH/A/wB/wP4Af8DTQGRAxcBIAMBAQIcAAOc - Af8DnAH/A5QB/wOUAf8DjAH/A4wB/wOEAf8DgQH/A4EB/wOBAf8DgQH/Az4BawNlAfQB3AGnAYEB/wHc - AaYBgQH/AdoBpAGBAf8B2AGiAYEB/wHVAaABgQH/AdQBngGBAf8B0gGdAYEB/wHPAZoBgQH/Ac4BmQGB - Af8BywGWAYEB/wHJAZQBgQH/A2UB9AM+AWtIAAMUARwDIwEzAyQBNgMkATYDJAE2AyQBNgMkATYDJAE2 - AyQBNgMkATYDFwEgAwEBAtQAAxUBHQMjATQDJAE2AyQBNgMkATYDJAE2AyQBNgMkATYDJAE2AyQBNgMk - ATYDJAE2AyMBMwMVAR0gAAMmATgDFgEeMAADgQH/KAADWwHEA2UB9AHRAZYBgQH/Ac4BkgGBAf8BywGO - AYEB/wHJAYoBgQH/AccBhwGBAf8BwwGEAYEB/wHDAYQBgQH/AcMBhAGBAf8BwwGEAYEB/wHDAYQBgQH/ - AcMBhAGBAf8DVQGwDAADIwE0A1kB9QGoAkAB/QP8Af8D/AH/A/wB/wP8Af8D/AH/A/wB/wP8Af8D/AH/ - AagCQAH9A18B8wMjATMcAAMmATgDYgH2A7YB/wMYASEoAAGBAYMBgQH/A4EB/ygAAdcBoQGBAf8B+AHy - Ae0B/wH3AfAB6gH/AfYB7QHmAf8B9AHqAeIB/wHzAecB3gH/AfEB5AHbAf8B8AHiAdgB/wHwAeIB2AH/ - AfAB4gHYAf8B8AHiAdgB/wHwAeIB2AH/AfAB4gHYAf8BqAJAAf0LAAEBAyQBNgN/Af4D/AH/A/wB/wP8 - Af8D/AH/A/wB/wP8Af8D/AH/A/wB/wP8Af8D/AH/AagCQAH9AyQBNhgAAyYBOANiAfYD4AH/A9gB/wO2 - Af8DGAEhIAABgQGNAYEB/wGBAaEBgQH/AYEBngGBAf8DgQH/A4EB/wNaAdMDPgFrGAAB2QGkAYEB/wH5 - AfMB7gH/AesB0gG+Bf8B6wHTAb8N/wHqAccBrQ3/AfAB4gHYAf8BxgGMAYEB/wsAAQEDJAE2A/wB/wP8 - Af8D/AH/A/wB/wP8Af8D+wH/A/sB/wP7Af8D+wH/A/sB/wP7Af8D/AH/AyQBNhQAAycBOwNiAfYD4gH/ - A/0B/wP9Af8D2QH/A7YB/wMYASEYAAGBAZgBgQH/AYEBqQGBAf8BgwHGAYsB/wGBAcUBhwH/AYEBwwGF - Af8BgQHCAYIB/wGBAbUBgQH/AYEBlQGBAf8DWwHLAxMBGhAAAd0BqAGBAf8B+QHzAe8B/wHrAdABugH/ - AesB0AG7Af8B6wHQAbsB/wHrAdABuwH/AesB0AG7Af8B6wHRAb0B/wHqAc0BtQH/AeoBzQG1Af8B6gHN - AbUB/wHqAc0BtQH/AfAB4gHYAf8BxgGKAYEB/wgAAzgBXgNRAaAB7AH4AfwB/wHsAfgB+wH/AYUB1wH3 - Af8BqgHiAfgB/wP7Af8D+wH/A/oB/wP6Af8D+gH/A/oB/wP6Af8D/AH/AyQBNhAAAycBOwNiAfYD5AH/ - A/0B/wH7AewB1QH/Af0B0gGXAf8B/QH7AfcB/wPZAf8DtwH/AxgBIRQAAYEBnQGBAf8BgQGtAYEB/wGH - AckBjwH/AYUBxwGLAf8BggHGAYkB/wGBAcQBhwH/AYEBvwGBAf8BgQHCAYIB/wGBAZ0BgQH/A1sByxAA - Ad8BqgGCAf8B+QHzAe8B/wHqAc4BtwX/AesB0AG7Df8B6gHPAboB/wH7AfYB8gn/AfAB4gHYAf8ByAGN - AYEB/wgAAy8BSQGBAc8B9wH/AYEBxwH1Af8BgQHDAfMB/wGBAcMB9AH/AbwB6AH5Af8D+wH/A/sB/wP7 - Af8D+gH/A/oB/wP4Af8D+AH/A/wB/wMkATYMAAMnATsDYgH2A+UB/wP9Af8B+wHsAdYB/wH9Ac0BhgL/ - Ac8BjAH/AfoB0QGXAf8B+QH3AfMB/wPZAf8DtwH/AxgBIRQAAYEBngGBAf8BgQGuAYEB/wGBAaoBgQH/ - AYEBkAGBAf8BgQGjAYEB/wGBAcUBhwH/AYEBxAGFAf8BgQHCAYIB/wGBAZYBgQH/Az4BawwAAeEBrgGH - Af8B+gH0AfAB/wHqAcsBsgH/AeoBzAGzAf8B6gHMAbMB/wHqAcwBswH/AeoBzAGzAf8B6gHOAbcB/wHo - AccBrAH/AegBxwGsAf8B6AHIAbAB/wHoAcgBrgH/AfAB4gHYAf8BxAGGAYEB/wgAAyABLgGBAdAB9wH/ - AYMB3gH5Af8BgQHZAfkB/wGBAcEB9AH/AdQB8AH6Af8D/AH/A/wB/wP8Af8D+wH/A/kB/wP5Af8D+AH/ - A/wB/wMkATYIAAMnATsDYgH2A+cB/wP9Af8B+wHsAdYB/wH9Ac0BiAL/AdUBmAL/AdYBnAL/AdABjgH/ - AfcBzAGNAf8B/QH8AfsB/wPZAf8DtwH/AxYBHxQAAYEBnwGBAf8BgQGaAYEB/wQAA1IBpgNAAf0BgQHB - AYQB/wGBAcEBgQH/AYEBtwGBAf8DXgHYDAAB4wGxAYwB/wH6AfYB8QH/AeoByQGuBf8B6gHJAbAN/wHo - AccBrA3/AfEB5QHbAf8BxgGGAYEB/wQAAwIBAwNWAbEBgQHaAfgB/wGMAeAB+gH/AYMB3QH5Af8BgQHQ - AfYB/wGBAc8B9gH/AfkB+wH8Af8D/AH/A/wB/wP6Af8D+QH/A/YB/wP2Af8D/AH/AyQBNgQAAycBOwNi - AfYD6AH/A/0B/wH7AewB1gH/Af0BzQGIAv8B1QGYAv8B1wGeAv8B1gGbAv8BzgGJAf8B/QHhAboB/wP9 - Af8D1wH/A7UB/wMQARUYAAGBAaABgQH/CAADRwGCAYEBqwGBAf8BgwHHAYoB/wGCAcUBiAH/A4EB/wwA - AeUBtAGPAf8B+gH2AfIB/wHpAcYBqgH/AekBxgGsAf8B6gHHAawB/wHpAccBrQH/AekByQGuAf8B6QHJ - AbAB/wHoAccBrAH/AekByQGwAf8B6AHIAbAB/wHoAcwBtQH/AfIB5wHeAf8ByAGKAYEB/wQAA04BmQGB - AdgB+QH/AYEB2gH4Af8BiwHgAfoB/wGCAd0B+QH/AYEBzgH3Af8BgQHDAfQB/wGBAdMB9wH/A/wB/wP7 - Af8D+AH/A/YB/wPzAf8D8gH/A/wB/wMkATYDKAE9A2IB9gPpAf8D/QH/AfsB6wHTAv8BzAGDAv8B1AGY - Av8B1wGeAv8B1gGbAv8BzwGLAf8B/QHiAbwB/wP9Af8D2QH/A7kB/wMQARUMAAGBAbYBgQH/AYEBsgGB - Af8BgQGuAYEB/wGBAakBgQH/A0MBdwgAA0cBggGBAa8BgQH/AYgByQGPAf8BhQHIAYwB/wGBAYQBgQH/ - DAAB5wG3AZQB/wH7AfcB9AH/AekBwwGmBf8B6AHEAakN/wHoAccBrA3/AfcB8QHrAf8BywGPAYEB/wQA - AwcBCQMqAUADUAGeAYEB1wH4Af8BgQHSAfgB/wGLAd4B+AH/AcUB7QH6Af8B9AH6AfwB/wP7Af8D+AH/ - A/UB/wPyAf8D7wH/A+0B/wP8Af8DJAE2A2IB9gPrAf8D/QH/A/oB/wH7AfMB5wH/Af4BzgGJAv8B1AGW - Av8B1QGaAv8BzwGLAf8B/QHiAbwB/wP9Af8D2gH/A70B/wMQARUQAANeAdgBlAHRAZ0B/wGdAdUBpgH/ - AZMBzwGbAf8DQAH9A0cBggNHAYIDQAH9AYkByQGQAf8BhQHIAYwB/wGBAcABhAH/A14B2AwAAekBugGY - Af8B+wH3AfQB/wHpAcMBpgH/AekBwwGmAf8B6QHDAaYB/wHpAcMBpgH/AekBwwGmAf8B6QHDAaYB/wHp - AcMBpgH/AekBwwGmAf8B6QHDAaYB/wHpAcMBpgH/AfsB9wH0Af8BzgGTAYEB/wsAAQEDJAE2AYEB2QH3 - Af8BgQHWAfcB/wP8Af8D/AH/A/sB/wP4Af8D9QH/A/EB/wPsAf8D6gH/A+YB/wP8Af8DJAE2A80B/wP9 - Af8D/QH/A/wB/wP3Af8B/QH1AeoB/wH+Ac8BigL/AcwBgwH/Af0B4gG8Af8D/QH/A9wB/wPAAf8DEAEV - FAADPgFrAYEBxwGFAf8BoAHXAakB/wGeAdYBpwH/AZcB0QGgAf8BgQHAAYEB/wGBAbwBgQH/AY4BzAGX - Af8BkwHPAZsB/wGQAc4BmAH/AYEBqwGBAf8DPgFrDAAB6wG9AZsB/wH7AfcB9Cn/AfsB9wH0Af8B0QGX - AYEB/wsAAQEDJAE2AdAB8QH7Af8BywHuAfgB/wP5Af8D+QH/A/cB/wP2Af8D8gH/A+sB/wP8Af8D/AH/ - A/wB/wP8Af8DJAE2A84B/wP9Af8D4AH/A2oB+QFhAl0B4gP3Af8B+wHzAegB/wH9AeMBvQH/A/0B/wPe - Af8DwwH/AxABFRwAA1sBywGCAcoBjAH/AaEB2AGrAf8BmQHUAaIB/wGcAdUBpgH/AZsB1AGkAf8BkgHQ - AZsB/wGWAdEBngH/AYEBuAGBAf8DWwHLEAAB7AG/AZ4B/wH7AfcB9AH/AZwB1QGlAf8BmAHTAaEB/wGU - AdABnQH/AZABzgGYAf8BiwHLAZMB/wGHAckBjgH/AYIBxgGJAf8BgQHDAYQB/wGBAcEBgQH/AYEBvgGB - Af8B+wH3AfQB/wHUAZsBgQH/CwABAQMkATYD/AH/A/cB/wP5Af8D9wH/A/cB/wPzAf8D8AH/A+oB/wP8 - Af8D9gH/A/QB/wNNAZEDFwEgA9AB/wP9Af8DzQH/BAABXAJaAc0D8wH/A/sB/wP9Af8D4AH/A8cB/wMQ - ARUgAAMTARoDWwHLAYEByAGHAf8BlgHTAaEB/wGgAdgBqgH/AZ4B1gGnAf8BkAHOAZkB/wGBAboBgQH/ - A1sBywMTARoQAANgAesB+wH3AfQB/wH7AfcB9AH/AfsB9wH0Af8B+wH3AfQB/wH7AfcB9AH/AfsB9wH0 - Af8B+wH3AfQB/wH7AfcB9AH/AfsB9wH0Af8B+wH3AfQB/wH7AfcB9AH/AfsB9wH0Af8DXAH4DAADJAE2 - AagCQAH9A/QB/wP1Af8D9QH/A/UB/wPxAf8D7wH/A+kB/wP8Af8D5wH/A00BkQMXASADAQECA9IB/wP9 - Af8D4gH/A84B/wPgAf8D/QH/A/0B/wPiAf8DywH/AxABFSwAAz4BawNeAdgBgQG5AYEB/wGBAbUBgQH/ - A14B2AM+AWsYAANGAX4DXwHjAe0BwAGfAf8B6wG+AZ0B/wHrAbwBmgH/AekBugGWAf8B5wG3AZMB/wHm - AbUBkAH/AeQBsgGMAf8B4gGvAYgB/wHgAawBhAH/Ad0BqQGBAf8B3AGlAYEB/wNdAcoMAAMjATMDXQHw - AagCQAH9A/wB/wP8Af8D/AH/A/wB/wP8Af8D/AH/A/gB/wNNAZEDFwEgAwEBAgQAA9MB/wP9Af8D/QH/ - A/0B/wP9Af8D/QH/A+QB/wPNAf8DEAEVpAADFAEcAyMBMwMkATYDJAE2AyQBNgMkATYDJAE2AyQBNgMk - ATYDJAE2AxcBIAMBAQIIAAPVAf8D1AH/A9IB/wPRAf8D0AH/A84B/wPNAf8DEAEVYAADgQH/A4EF/wOB - Af8DgQH/A4EB/wG1AaUBnAH/AYwCgQH/A4EB/wLnAd4B/wOBBf8DgQH/A4EB/wOBAf8DgQH/EAADEwEa - AyQBNQMvAUoDNgFZAzYBWQMvAUoDJAE1AxMBGiAAAycBOwNOAZQDXgHOA2AB6wNgAesDXgHOA04BlAMn - ATscAAM4AVwgAAM1AVcDBAEGCAADgQH/A4EF/wOBAf8DgQH/A4EB/wHOAcYBvQX/Ac4BxgG9Af8C5wHe - Af8DgQX/A4EB/wOBAf8DgQH/A4EB/wgAAwkBDAMjATQDPgFrA04BlQNaAcUDXQHtA10B7QNaAcUDTgGV - Az4BawMjATQDCQEMEAADCgENA04BlgNNAfoB4QHNAbkB/wHxAeABzgH/AfkB5wHWAf8B+AHmAdQB/wHw - Ad0BzAH/AeEBzQG5Af8DTQH6A04BlgMKAQ0UAANlAfQDZQH0A0oBjBAAA0ABbgNkAewDfwH+DAADgQH/ - A4EF/wGMAoEF/wOBAf8C5wHeDf8DgQX/AYwCgQX/A4EB/wOBAf8EAAMJAQwDKAE9A0cBgQFeAlsB2QHc - AdEByAH/AfEB6AHhAf8B+wH2AfIB/wH6AfMB7gH/Ae0B4AHWAf8B0gHDAbgB/wFeAlsB2QNHAYEDKAE9 - AwkBDAgAAwoBDQNXAbgB2QG/AaUB/wH+AfIB5AL/AecBzwH/AfwB2wG7Af8B+QHTAbIB/wH2AdABrAH/ - AfQB0QGuAf8B9gHYAbsB/wH6AekB1wH/AdkBvwGlAf8DVwG4AwoBDRAAA2EB4QGBAcsB7wH/AYEBtwHl - Af8DagH5A1IBowNMAZADWQH1AYEBowHdAf8BgQGuAeUB/wNiAfYMAAOBAf8DgQX/A4EF/wOBAf8C9wHv - Af8BnAGMAYEB/wGlAZwBjAX/A4EF/wOBBf8DgQH/A4EB/wQAAyMBNANHAYEDXwHzAfQB7gHoAv8C/gH/ - AfsB9AHvAf8B9wHrAeEB/wH2AeoB4AH/AfoB8wHtAf8B/gH8AfoB/wHuAeQB2wH/A18B8wNHAYEDIwE0 - CAADTgGWAdkBvwGlAv8B+AHrAv8B6wHRAv8B4QHDAf8B/gHbAboB/wH7AdYBsgH/AfcB0QGsAf8B9gHO - AakB/wHzAcsBpQH/AfIBzQGoAf8B+gHhAcoB/wHZAb8BpQH/A04BlhAAA1kBxwGBAcoB7gH/AYEBzgHx - Af8BgQHIAe8B/wGBAboB6AH/AYEBtQHlAf8BgQG9AesB/wGBAboB6wH/AYEBswHoAf8DZAHnDAADgQH/ - A4EB/wLnAd4F/wGlAZwBjAH/A4EF/wOBAf8DgQX/A4EB/wLnAd4F/wGlAZwBjAH/A4EB/wOBAf8DEwEa - Az4BawFeAlsB2QH3AfEB7QX/AfYB6AHdAf8B9gHoAd0B/wH5AfEB6wH/AfUB5gHbAf8B9QHlAdoB/wH0 - AeUB2AL/Av4B/wHvAeQB3AH/AV4CWwHZAz4BawMTARoDJgE4AagCQAH9Av4B+gL/AfkB6QL/Ae8B2AL/ - AecBzQL/AeEBwgH/AfwB3AG7Af8B+QHVAbMB/wH2AdABrAH/AfYBzQGoAf8B8wHLAaUB/wHzAc0BqQH/ - AfoB6gHZAf8BqAJAAf0DJgE4DAADUgGjAYEByAHsAf8BgQHMAfEB/wGBAcMB7QH/AYEBxAHuAf8BgQHD - Ae0B/wGBAbYB6gH/AYEBsQHoAf8BgQG0AecB/wNcAc8MAAOBAf8ChAG1Af8BhAGMAbUB/wKEAbUB/wKE - AbUB/wKBAa0B/wKBAbUB/wKBAbUB/wKBAbUB/wKBAbUB/wKBAbUB/wKBAbUB/wGEAYEBtQH/AoEBtQH/ - AoQBtQH/AaUBnAHOAf8DJAE1A04BlQHsAeUB4QL/Av4B/wH3AesB4QH/AfYB6gHgAf8B9gHpAd8B/wG9 - AoEB/wH5AfEB6wH/AfUB5wHcAf8B9QHmAdsB/wH1AeUB2gH/Af4B/AH6Af8B1gHJAb8B/wNOAZUDJAE1 - A04BlgHiAc4BugH/AfcB3gHGAv8B6QHRAv8B9gHiAv8B8gHdAv8B8AHdAf8B+AHqAdkB/wH4AeYB1AH/ - AfsB3wHHAf8B9QHPAasB/wHyAcoBpAH/AfMBzAGoAf8B+AHdAcMB/wHiAc4BugH/A04BlgwAA0UBfAGB - AcYB6gH/AYEB0gHyAf8BgQHCAe0B/wGBAb0B7AH/AYEBtwHqAf8BgQGzAekB/wGBAbkB6gH/AYEBswHm - Af8DVAGuDAADgQH/AfcBvQGBAv8BxgGBAf8B9wG9AYEC/wHGAYEB/wH3Ab0BgQH/AfcBvQGBAv8BxgGB - Av8BvQGBAv8BvQGBAf8B9wG9AYEC/wG9AYEC/wG9AYEB/wHvAb0BgQH/AfcBxgGBAf8B1gGUAYEB/wMv - AUoDWgHFAfgB8wHvAf8B+wH2AfIB/wH3AewB4wH/AfcB7AHjAf8B9wHrAeEB/wHFAYYBgQH/Ab4CgQH/ - AfkB8QHrAf8B9gHoAd0B/wH1AecB3AH/AfoB8wHuAf8B7wHkAdsB/wNaAcUDLwFKA14B0AHvAeAB0AH/ - AecBvgGWAf8B5wG8AZQB/wHwAcwBqQH/Af4B7AHaAf8B3QHEAawB/wNkAecDZAHnAd0BwwGqAf8B+AHd - AcQB/wH0AdIBsgH/AfYB1AGzAf8B9QHWAbgB/wHxAd8BzwH/A14B0AgAAwkBDANiAekBgQHVAfIB/wGB - AdAB8gH/AYEBxAHuAf8BgQHAAe0B/wGBAbsB6wH/AYEBtgHpAf8BgQG0AekB/wGBAb0B6wH/A20B9wMV - AR0IAAOBAf8BvQGUAYQB/wHGAZQBgQH/Ab0BlAGEAf8BxgGUAYQB/wG9AZQBhAH/AYwCgQH/AZQCgQH/ - Ac4BlAGMAf8BvQGUAYEB/wHGAZQBgQH/AcYBlAGBAf8BvQGUAYEB/wHOAZQBjAH/AbUBlAGBAf8BrQKB - Af8DNgFZA10B7QH+Af0B+wH/AfkB8QHrAf8B+AHuAeUB/wH3Ae0B5AH/AfcB7AHjAf8BwAGDAYEB/wHG - AYYBgQH/Ab4CgQH/AfkB8QHrAf8B9gHoAd0B/wH3AesB4QH/AfoB9QHxAf8DXQHtAzYBWQNkAewB9QHk - AdUB/wHpAb4BlwH/AegBvAGWAf8B5wG8AZQB/wHzAd4BygH/A2EB5gMUARsDFAEbA2EB5gH2AeMB0wH/ - AfEBzQGrAf8B7wHJAaQB/wHtAckBpAH/AfYB5AHSAf8DZAHsBAADBAEGA18B4wGBAc4B7QH/AYEB2wH1 - Af8BgQHNAfEB/wGBAcgB7wH/AYEBwwHuAf8BgQG+AewB/wGBAbgB6gH/AYEBtAHpAf8BgQHAAewB/wGB - AbIB5AH/A2UB9AMRARcEAAOBAf8B5wG1AYEB/wHvAb0BgQL/Ac4BhAL/Ac4BhAH/AfcBxgGBAf8BvQKB - Af8BrQKBAf8BrQKBAf8B7wG1AYEB/wHvAbUBgQH/Ae8BtQGBAf8B7wG9AYEB/wGtAoEB/wH3AbUBgQH/ - Ac4BnAGBAf8DNgFZA10B7QH+Af0B+wH/AfoB8gHsAf8B+QHvAegB/wH4Ae4B5QH/AfcB7QHkAf8BwAGD - AYEB/wHAAYMBgQH/AcgBhwGBAf8B7QHTAb4B/wH2AekB3wH/AfcB7AHjAf8B/QH7AfkB/wNdAe0DNgFZ - A2QB7AH1AeQB1QH/AekBvwGZAf8B6QHAAZkB/wHpAcEBmgH/AfMB3QHJAf8DYQHmAxQBGwMUARsDYQHm - AfgB6AHZAf8B8gHSAbIB/wHwAcwBqwH/AfABzAGrAf8B9gHkAdMB/wNkAewEAANeAd0BgQHSAe4B/wGB - AeEB9gH/AYEB1gH0Af8BgQHPAfIB/wGBAcsB8AH/AYEBxgHvAf8BgQHBAe0B/wGBAbwB6wH/AYEBtwHq - Af8BgQG0AekB/wGBAb4B7AH/AYEBsgHkAf8DWAHvAw0BEgOBAf8BrQGUAYwB/wGEAoEB/wOBAf8BhAKB - Af8DgQH/A4EB/wGEAoEB/wOBAf8DgQH/AYQCgQH/A4EB/wOBAf8BhAKBAf8DgQH/AaUCgQH/Ay8BSgNa - AcUB+gH2AfMB/wH8AfgB9AH/AfkB7wHoAf8B+QHvAegB/wH4Ae8B5gH/AcEBgwGBAf8BwQGDAYEB/wHo - AcgBrQH/AfcB7AHjAf8B9wHrAeEB/wH7AfUB8QH/AfYB7wHqAf8DWgHFAy8BSgNeAdAB8AHhAdEB/wHq - AcQBoQH/AekBwQGbAf8B6QHAAZcB/wHxAc4BsgH/AdwBwwGqAf8DZAHnA2QB5wHdAcQBrAL/AfwB8wL/ - AfQB5QL/Ae4B2gH/AfwB5QHRAf8B8QHhAdEB/wNeAdADYAHUAYEB1QHvAf8BgQHcAfIB/wGBAd4B9QH/ - AYEB3gH1Af8BgQHcAfYB/wGBAdQB8wH/AYEByQHvAf8BgQHEAe4B/wGBAcQB7QH/AYEByQHvAf8BgQHE - Ae4B/wGBAb4B6wH/AYEBtwHnAf8BgQGwAeIB/wNgAesDgQH/AecBxgGBAf8BrQKBAf8BrQKBAf8BrQKB - Af8BrQKBAf8BrQKBAf8BrQKBAf8BrQKBAf8B9wHOAZQB/wG1AoEB/wGtAoEB/wGtAoEB/wG9AoEB/wGl - AoEB/wHOAZQBgQH/AyQBNQNOAZUB8QHsAegF/wH5AfEB6wH/AfkB8AHpAf8B+QHvAegB/wHDAYQBgQH/ - AekByQGwAf8B+AHuAeUB/wH3AewB4wH/AfcB7AHjBf8B5wHfAdgB/wNOAZUDJAE1A04BlgHiAc4BugH/ - AfEB0gG2Af8B6wHBAZsB/wHrAb8BmQL/AeQB0wL/AegB2wH/AfMB2gHHAf8B+AHxAeQC/wH4Ae0C/wH3 - AekC/wH+AfEC/wH8Ae8C/wH8AfIB/wHiAc4BugH/A04BlgMJAQwDOgFhA1IBpwNgAdYDWQH1AYEBzgHt - Af8BgQHZAfQB/wGBAdMB8gH/AYEBywHwAf8BgQHPAfEB/wGBAb8B6AH/A2IB9gNfAdsDVAGuA0ABbgMV - AR0DgQH/Ab0BlAGcAf8BtQGUAaUB/wGUAoEB/wG1AZwBrQH/AbUBlAGlAf8BjAKBAf8BlAKBAf8BzgGl - Ab0B/wGtAZwBpQH/Aa0BlAGcAf8BrQGUAZwB/wHGAZwBrQH/AZQCgQH/AaUBjAGUAf8BlAKBAf8DEwEa - Az4BawFeAlsB2QH7AfgB9wX/AfkB8QHrAf8B+QHwAekB/wHpAcoBsQH/AfkB7wHoAf8B+AHvAeYB/wH4 - Ae4B5QX/AfkB9gHzAf8BXgJbAdkDPgFrAxMBGgMmATgBqAJAAf0B+gHtAeEB/wHsAccBowL/AewB2gX/ - AfcBzQG2Af8B7AG9AZcC/wH0AdwD/wH3Av8B9wHoA/8B8wP/AfkB/wL+AfkB/wGoAkAB/QMmATgUAANH - AYABgQHOAe0B/wGBAdkB9AH/AYEB1gHzAf8BgQHFAeoB/wNSAacUAAOBAf8B5wHGAZQB/wHnAb0BlAH/ - AecBxgGcAf8B3gG9AZwB/wHnAcYBnAH/Ad4BxgGcAf8BtQGMAYEB/wHnAb0BlAH/AecBvQGUAf8B5wHG - AZwB/wHnAcYBnAH/Ad4BvQGUAf8B9wHGAaUB/wHnAcYBnAH/Ab0BhAGBAf8EAAMjATQDRwGBA18B8wH7 - AfgB9wX/AfwB+QH2Af8B+gHzAe4B/wH6AfMB7QH/AfwB+AH0Bf8B+QH2AfMB/wNfAfMDRwGBAyMBNAgA - A04BlgHZAb8BpQL/AfoB8Ab/Af0B8wH/AfABwQGjAf8B7gHGAaAB/wH9AfAB0QP/Af4C/wH9AfAC/wH9 - AfEF/wHZAb8BpQH/A04BlhwAA2EB7gGBAdYB8gH/AYEB1gHzAf8DTQH6AwQBBhQAA4EB/wG9AaUBtQH/ - AbUBpQG9Af8BtQGcAb0B/wG1AZwBtQH/AbUBnAG1Af8BtQGcAbUB/wG1AaUBvQH/AbUBnAG1Af8BtQGc - AbUB/wG1AZwBtQH/AbUBnAG1Af8BtQGcAbUB/wG1AZwBvQH/Ab0BrQG1Af8BlAKBAf8EAAMJAQwDKAE9 - A0cBgQFeAlsB2QHxAewB6AH/AfoB9gHzAf8B/gH9AfsB/wH+Af0B+wH/AfkB9QHyAf8B7gHpAeUB/wFe - AlsB2QNHAYEDKAE9AwkBDAgAAwoBDQNXAbgB2QG/AaUB/wH+Af0B/AL/AfEB5AH/AfIBygGuAf8B8gHS - Aa0B/wH5Ae0ByAP/AfcD/wH9Af8B/gH9AfwB/wHZAb8BpQH/A1cBuAMKAQ0cAAM1AVcBgQHOAe0B/wGB - Ac0B7QH/A0cBgBgAA4EB/wG1AoEB/wG9AYQBgQH/Ab0CgQH/AbUBhAGBAf8BvQGEAYEB/wG9AYQBgQH/ - AbUCgQH/Ab0BhAGBAf8BvQGEAYEB/wG9AYQBgQH/Ab0BhAGBAf8BvQGEAYEB/wG9AYQBgQH/AbUBhAGB - Af8B1gGlAYQB/wgAAwkBDAMjATQDPgFrA04BlQNaAcUDXQHtA10B7QNaAcUDTgGVAz4BawMjATQDCQEM - EAADCgENA04BlgNNAfoB4QHNAbkB/wHxAeIB1AH/AfkB7AHfAf8B+wHzAeUB/wH0Ae0B5AH/AeIBzgG7 - Af8DTQH6A04BlgMKAQ0kAANfAdsDWAHvHAADgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOB - Af8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/EAADEwEaAyQBNQMvAUoDNgFZAzYBWQMvAUoDJAE1 - AxMBGiAAAycBOwNOAZQDXgHOA2AB6wFiAlgB7wFeAlsB2QNPAZcDJwE7LAADIwQzAVIcAAFCAU0BPgcA - AT4DAAEoAwABQAMAAXADAAEBAQABAQUAAYABAxYAA/8DAAHwAQ8B4AUAAcABAwHwBQABgAEBAfADAAHA - AQMBgAEBAQABAQIAAeABBwMAAQcCAAH8AT8DAAEPAgAB+AEfAgABgAEHAgAB+AEfAgAB4AEHAgAB8AEP - AgAB8AEHAgAB8AEPAgAB4AEHAgAB8AEPAgAB4AEHAgAB8AEPAgAB4AEHAgAB8AEPAYABAQHgAQ8CAAHw - AQ8BgAEBAeABfwIAAfABDwHAAQMB4AF/AgAB+AEfAfABDwHwAf8CAAT/AgAG/wIAAeABAwH/AX8C/wIA - AcABAwH+AT8C/wIAAYABAwH+AR8B/wHnAgABgAEDAeABDwH/AccCAAGBAf8B4AEHAYABAwIAAYMB/wHg - AQcBgAEBAgABgwHnAeABBwGAAQECAAGBAecB4AEPAYABAwIAAYABAwH+AR8B/wHnAgABgAEBAf4BPwH/ - AecCAAHAAQEE/wIAAeABAwT/AgAB/wHnBP8CAAH/AecE/wIAAv8BAAEfAfABBwL/AeEBhwEAAR8BwAED - AYABAQHBAYMBAAEfAYABAQGAAQEBwAEDAQABHwGAAQABgAEBAeABBwGAAR8CAAGAAQEB8AEPAcADAAGA - AQEB8AEPAcADAAGAAQECAAHAAwABgAEBAgABwAMAAYABAQIAAcADAAGAAQEBMAEMAeABAQIAAYABAQHw - AQ8B/gEDAgABgAEBAeABBwH+AQMBgAEBAYABAQHAAQMB/gEDAYABAQGAAQEBwQGDAf4BAwHAAQMBgAEB - AeEBhwH/AQMB8AEPBP8B/AE/Bv8B4AEHAcABAwHAAQMBwAEDAcABAwGAAQEBgAEBAYABAQHAAQMBgAEB - AYABAQGAAQEBwAEDAYABAQGAAQEBgAEBAcABAwGAAQEBgAEBAYABAQHAAQMBgAEBAYABAQGAAQEBwAED - AcABAwHAAQMBwAEDAcABAwHgAQcB4AEHAeABBwHAAQMB8AEPAfABDwHwAQ8BwAEDAfABBwHwAQcB8AEH - AcABAwHwAQcB8AEHAfABBwHAAQMB8AEPAfABDwHwAQ8BwAEDAfABDwHwAQ8B8AEPAeABBwH4AR8B+AEf - AfgBHwr/AYABAQT/AYcB/wGAAQEBgwP/AQABDwEAAgEBgwEAAQEBAAEPAwABAQEAAQEBAAEPAgABgAIA - AQEBAAEDAgABwAGAAQABAQEAAQMCAAH4AcABAAEBAQABAQIAAvgBAAEBBAAC+AEAAQEEAAL4AQABAQEA - AQECAAL4AQABAQEAAQMCAAL4AQABAQEAAQMBAAEBAfgCAAEBAQABDwGAAQEB+AIAAQEBMAE/AYABAwH4 - AgABAQL/AYABBwb/AcABAAH/AT8B/QH/AYABAQHAAQAB/gEfAfkB/wGAAQEBgAEAAfwBDwHwAR8BgAEB - AYABAAH4AQcB4AEHAYABAQGAAQAB8AEDAeABBwGAAQEBgAEAAeABAQHwAQMBgAEBAYABAAHAAQAB+QED - AYABAQIAAYABAAH9AYMBgAEBAwABAQHBAYMBgAEBAwABAwHAAQMBgAEBAYACAAEHAcABAwGAAQEBgAIA - AQ8B4AEHAYABAQGAAQABEAEfAeABBwGAAQEBwAIAAT8B+AEfAYABAQHAAQEBAAF/BP8BwAEDAQAD/wIA - AfABDwHwAQ8B7wHzAgABwAEDAcABAwHjAccCAAGAAQEBgAEBAeABBwIAAYABAQGAAQEB4AEHBgAB4AEH - BgAB4AEHBgABwAEDBgABgAEBBgABgBcAAfgBHwIAAYABAQGAAQEB/AEfAgABgAEBAYABAQH8AT8CAAHA - AQMBwAEDAf4BfwIAAfABDwHwAQ8B/gF/Cw== + AfYB/wGoAdAB9gH/AasBzAHqAf8BpwHNAe4B/wNcAcwgAANdAcoBpgHKAe4B/wGrAcwB6gH/AacB0AH2 + Af8BqAHQAfYB/wGrAcwB6gH/AacBzQHuAf8DXAHMGAADXAHqA/cB/wPnAf8D7wH/A/YB/wP7Af8D+gH/ + A/AB/wPeAf8DwwH/A+YB/wNcAeoYAAFZAmcB8gG9AdcB7wH/AaMByQHtAf8BnQHFAegB/wGBAc4B7wH/ + AYEBzQHvAf8BqAHcAfEB/wNiAfYDBAEGHAADZAHxAb0B1wHvAf8BowHJAe0B/wGdAcUB6AH/AYEBwwHq + Af8BgQHFAewB/wGmAdkB8AH/A1kB9QMEAQYcAAJYAWIB7wG9AdcB7wH/AaMByQHtAf8BnwHFAegB/wGB + AaEBzQH/AYEBsAHdAf8BtwHTAesB/wNfAfMDBAEGFAADXAHqA/gB/wP+Gf8D+wH/A+oB/wNcAeoYAAGB + AZ4B8wH/AYEBqwHOAf8BigG3AeQB/wGBAcYB6wH/AYEBnwHtAf8BgQGkAe4B/wGBAaUB6wH/AYEBmgHp + Af8DDQERHAACgQHqAf8BgQGkAckB/wGKAbcB5AH/AYEBuQHlAf8CgQHfAf8CgQHiAf8CgQHdAf8CgQHZ + Af8DCwEPHAADfwH+AYEBkwG1Af8BigG3AeQB/wGBAZMBwwH/A4EB/wOBAf8DgQH/A4EB/wMIAQsUAANZ + Ab8D4QH/A/4Z/wP7Af8DzwH/A1IBoRgAAYEBugH1Af8BgQG2AfUB/wGBAaoB9AH/AYEBrAH0Af8BgQGs + AfQB/wGBAawB8wH/AYEBoQHwAf8BgQGTAeQB/yAAAYEBpwHtAf8BgQGWAfAB/wKBAewB/wKBAewB/wKB + AewB/wKBAesB/wKBAeQB/wKBAdEB/yAAA4EB/wKBAY8B/wOBAf8DgQH/A4EB/wOBAf8DgQH/A38B/hgA + Ax0BKgNcAdED0AH/A+gB/wPzAf8D/QH/A/wB/wPtAf8D4AH/A8IB/wNbAcMDFAEbGAADYAHeAYEBtgH1 + Af8BgQG2AfUB/wGBAbYB9QH/AYEBsgH1Af8BgQGrAfQB/wGBAaoB8AH/A2EB4SAAA1gBuwGBAZwB7QH/ + AYEBlgHvAf8BgQGWAe8B/wGBAY0B7gH/AoEB7AH/AoEB4wH/A1kBxyAAA0cBgAOBAf8CgQGKAf8CgQGI + Af8DgQH/A4EB/wOBAf8DSwGOHAADBQEHAzUBVQNUAa4DYAHWA18B+wNqAfkDXAHNA1IBqQMtAUYDAgED + IAADXwHjAYEBpwHzAf8BgQGsAfQB/wGBAagB9AH/AYEBoQHxAf8DYQHmKAADWgHFAoEB6gH/AoEB7QH/ + AoEB7AH/AoEB5wH/A14B0CgAA0oBjQOBAf8DgQH/A4EB/wOBAf8DUAGd/wBZAAMVAR0DIwE0AyQBNgMk + ATYDJAE2AyQBNgMkATYDJAE2AyQBNgMkATYDJAE2AyQBNgMjATMDFQEdiAADUQGfA2EB4QNhAeEDVwG6 + MAADIwE0A1kB9QGoAkAB/QP8Af8D/AH/A/wB/wP8Af8D/AH/A/wB/wP8Af8D/AH/AagCQAH9A18B8wMj + ATMIAAG1AoEB/wOBAf8DgQH/A4EB/wHGAoEB/2gAAYcCgQH/AYICgQH/AZMCgQH/AZACgQH/A4EB/wOB + Af8DgQH/A4EB/wOBAf8DgQH/A4EB/wMWAR4TAAEBAyQBNgN/Af4D/AH/A/wB/wP8Af8D/AH/A/wB/wP8 + Af8D/AH/A/wB/wP8Af8D/AH/AagCQAH9AyQBNgQAAaUCgQH/A4EB/wOEAf8DjAH/A4EB/wOBAf8BjAKB + Af8IAAGtAoEB/wOBAf8DgQH/A4EB/wHGAoEB/wgAA1IBqQHDAY4BgQH/AcABiwGBAf8BvgGIAYEB/wG7 + AYUBgQH/AbkBgwGBAf8BtAKBAf8BsgKBAf8BsQKBAf8BrgKBAf8BrQKBAf8BqwKBAf8BqQKBAf8BqQKB + Af8DUgGpBAABswGLAYEB/wGzAYsBgQH/A4EB/wOBAf8BswGLAYEB/wGzAYsBgQH/AbMBiwGBAf8BswGL + AYEB/wGzAYsBgQH/AbMBiwGBAf8DgQH/AxYBHhMAAQEDJAE2A/wB/wP8Af8D3QH/A9sB/wPZAf8D1wH/ + A9UB/wPUAf8D1AH/A9QB/wP7Af8D/AH/AyQBNgMAAQEBrQKBAf8DlAH/A60B/wOtAf8DrQH/A4wB/wOB + Af8BrQKBAf8BlAKBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wGEAoEB/wQAAcgBkgGBNf8BqQKBAf8EAAGH + AoEB/wGCAoEB/wGrAZABgQH/AaoBjwGBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/AxYBHhMA + AQEDJAE2A/wB/wP8Af8D/AH/A/wB/wP7Af8D+wH/A/oB/wP6Af8D+gH/A/oB/wP6Af8D/AH/AyQBNgMA + AQEEAAGtAoEB/wOMAf8DnAH/A7UB/wOtAf8DgQH/A4EB/wGcAoEB/wOBAf8DlAH/A5wB/wOUAf8DgQH/ + A4EB/wGlAoEB/wHKAZQBgQX/AesBsAGBBf8DsgH/A64B/wOlAf8B/gH6AfcB/wOiAf8B/gH6AfcB/wOY + Af8DlQH/A5EF/wGqAoEB/wQAA/gB/wPxAf8D4wH/A/MB/wP4Af8D+QH/A/gB/wPpAf8D+AH/A4EB/wOB + Af8DFgEeA1cBuAMEAQYLAAEBAyQBNgP8Af8D/AH/A9YB/wPTAf8DzwH/A80B/wPLAf8DyAH/A8gB/wPG + Af8D+AH/A/wB/wMkATYDAAEBCAABvQKBAf8BhAKBAf8DgQH/A4wB/wOcAf8DgQH/BAABnAKBAf8DgQH/ + A4QB/wOcAf8DlAH/A4EB/wOBAf8BzAGXAYEF/wH+Af0B+wH/Af4B/AH7Af8B/gH7AfkB/wH+AfsB+QH/ + Af4B+gH3Af8B/gH6AfcB/wH+AfoB9wH/Af4B+gH3Af8B/QH4AfQB/wH8AfYB8wH/AfwB9gHzBf8BrAKB + Af8EAAPnAf8D0wH/A6UB/wPXAf8D9AH/A+4B/wPqAf8D3AH/A/gB/wOBAf8DgQH/AzEBTwNtAfcDWwHZ + CwABAQMkATYD/AH/A/wB/wP8Af8D/AH/A/wB/wP8Af8D/AH/A/sB/wP5Af8D+QH/A/gB/wP8Af8DJAE2 + AwABARQAA4EB/wO1Af8DgQH/CAABtQKBAf8DgQH/A4EB/wOBAf8DhAH/A4EB/wHRAZwBgQX/Ae8BtAGB + Bf8DtQH/A7MB/wOrAf8B/gH6AfcB/wOoAf8B/QH4AfUB/wOiAf8DngH/A5sF/wGwAoEB/wQAA8UB/wPT + Af8DpgH/A9gB/wP0Af8BgQG+AYEB/wGBAbgBgQH/AYEBsQGBAf8BgQGpAYEB/wGBAaEBgQH/AYEBmQGB + Af8BgQGRAYEB/wGBAaEBgQH/AYEBiwGBAf8DXAHPBwABAQMkATYD/AH/A/wB/wPOAf8DygH/A8YB/wPD + Af8DwAH/A70B/wO8Af8DugH/A/YB/wP8Af8DJAE2AwABARQAA4EB/wO9Af8DgQH/FAADgQH/A5wB/wOB + Af8B1AGeAYEF/wH+AfwB+gH/Af4B+wH5Af8B/gH6AfgB/wH+AfoB+AH/Af4B+gH2Af8B/gH6AfcB/wH8 + AfcB9AH/AfwB9wHyAf8B/AH2AfAB/wH8AfUB7wH/AfwB9AHuBf8BsgKBAf8EAAPpAf8D1AH/A6YB/wPY + Af8D9QH/AYEBwwGBAf8BoAHXAakB/wGcAdUBpQH/AZgB0wGhAf8BlAHQAZ0B/wGQAc4BmAH/AYsBywGT + Af8BgQHBAYEB/wGBAb4BgQH/AYEBjAGBAf8DWwHEAwABAQMkATYD/AH/A/wB/wP8Af8D/AH/A/wB/wP8 + Af8D+wH/A/gB/wP2Af8D8wH/A/IB/wP8Af8DJAE2AwABARQAA4EB/wO9Af8DgQH/FAADgQH/A6UB/wOB + Af8B1QGgAYEF/wHzAbYBgQX/A7oB/wO4Af8DsgH/Af4B+gH3Af8DrwH/AfwB9gHwAf8DqQH/A6cB/wOl + Bf8BtQKBAf8EAAPFAf8D1AH/A6cB/wPYAf8D9QH/AYEBxwGBAf8BpQHaAa4B/wGiAdgBqwH/AZ4B1gGn + Af8BmgHUAaMB/wGWAdIBnwH/AZMBzwGaAf8BgQHFAYcB/wGBAcIBggH/AYEBkQGBAf8DXAHJAwABAQMk + ATYD/AH/A/wB/wPHAf8DwgH/A74B/wO4Af8DtAH/A7EB/wOuAf8DrAH/A+0B/wP8Af8DJAE2AwABARQA + A4EB/wPGAf8DgQH/FAADgQH/A6UB/wOBAf8B2AGiAYEF/wH+AfoB+AH/Af4B+gH3Af8B/gH6AfYB/wH9 + AfgB9gH/AfwB9wHyAf8B/gH6AfcB/wH8AfYB8AH/AfwB9QHvAf8B+wHzAewB/wH6AfEB6gH/AfoB8AHo + Bf8BtwKBAf8EAAPqAf8D1QH/A7UB/wPfAf8D9QH/AYEBxwGBAf8BgQHHAYEB/wGBAcMBgQH/AYEBvgGB + Af8BgQG4AYEB/wGBAbEBgQH/AYEBqQGBAf8BgQGjAYEB/wGBAZ0BgQH/A1wB0QcAAQEDJAE2A/wB/wP7 + Af8D/AH/A/wB/wP7Af8D+AH/A/UB/wPxAf8D7AH/A+oB/wPmAf8D/AH/AyQBNgMAAQEUAAOEAf8DxgH/ + A4EB/xQAA4EB/wOtAf8DgQH/AdkBowGBBf8B9gG5AYEF/wO9Af8DuwH/A7cB/wH+AfoB9wH/A7UB/wH8 + AfMB7QH/A7EB/wOwAf8DrQX/AboBhQGBAf8EAAPGAf8D8gH/Ad0B2AHSAf8B6wHlAd8B/wP8Af8DzAH/ + A8kB/wO9Af8D+QH/AYQCgQH/AZECgQH/AxYBHgNtAfcDXwHbCwABAQMkATYD/AH/A/kB/wPAAf8DugH/ + A7QB/wOvAf8DqgH/A6UB/wP8Af8D/AH/A/wB/wP8Af8DJAE2AwABARQAA4wB/wPOAf8DgQH/FAADgQH/ + A60B/wOBAf8B2wGkAYE1/wG9AYcBgQH/BAAD+AH/AdkBxgGxAf8DYQHmA2EB5gHXAcQBrwH/A/kB/wP5 + Af8D+QH/A/kB/wGLAoEB/wGXAoEB/wMWAR4DWAG7AwQBBgsAAQEDJAE2A/wB/wP3Af8D+QH/A/cB/wP3 + Af8D8wH/A/AB/wPqAf8D/AH/A/YB/wP0Af8DTQGRAxcBIBgAA5QB/wPOAf8DhAH/A4EB/wOBAf8DgQH/ + A4EB/wOBAf8DgQH/A7UB/wOBAf8B3AGnAYEB/wHcAacBgQH/AdwBpwGBAf8B3AGnAYEB/wHcAacBgQH/ + AdwBpwGBAf8B3AGnAYEB/wHcAacBgQH/AdwBpwGBAf8B3AGnAYEB/wHcAacBgQH/AdwBpwGBAf8B3AGn + AYEB/wHcAacBgQH/AcABiwGBAf8EAAHLAaYBgQH/AcYBoAGBAf8DPQFnAz0BZwG7AZUBgQH/AbgBlAGB + Af8BtAGQAYEB/wGvAYsBgQH/AasBhwGBAf8BkgKBAf8DIwEzAwQBBhQAAyQBNgGoAkAB/QP0Af8D9QH/ + A/UB/wP1Af8D8QH/A+8B/wPpAf8D/AH/A+cB/wNNAZEDFwEgAwEBAhgAA5QB/wPWAf8DzgH/A84B/wPO + Af8DxgH/A8YB/wO9Af8DvQH/A70B/wOBAf8BqAJAAf0B6AG5AZIB/wHoAbkBkgH/AegBuQGSAf8B6AG5 + AZIB/wHoAbkBkgH/AegBuQGSAf8B6AG5AZIB/wHoAbkBkgH/AegBuQGSAf8B6AG5AZIB/wHoAbkBkgH/ + AegBuQGSAf8B6AG5AZIB/wGoAkAB/QQAAyMBMwMjATMIAAMjATMDIwEzAyMBMwMjATMDIwEzAyMBMxwA + AyMBMwNdAfABqAJAAf0D/AH/A/wB/wP8Af8D/AH/A/wB/wP8Af8D+AH/A00BkQMXASADAQECHAADnAH/ + A5wB/wOUAf8DlAH/A4wB/wOMAf8DhAH/A4EB/wOBAf8DgQH/A4EB/wM+AWsDZQH0AdwBpwGBAf8B3AGm + AYEB/wHaAaQBgQH/AdgBogGBAf8B1QGgAYEB/wHUAZ4BgQH/AdIBnQGBAf8BzwGaAYEB/wHOAZkBgQH/ + AcsBlgGBAf8ByQGUAYEB/wNlAfQDPgFrSAADFAEcAyMBMwMkATYDJAE2AyQBNgMkATYDJAE2AyQBNgMk + ATYDJAE2AxcBIAMBAQLUAAMVAR0DIwE0AyQBNgMkATYDJAE2AyQBNgMkATYDJAE2AyQBNgMkATYDJAE2 + AyQBNgMjATMDFQEdIAADJgE4AxYBHjAAA4EB/ygAA1sBxANlAfQB0QGWAYEB/wHOAZIBgQH/AcsBjgGB + Af8ByQGKAYEB/wHHAYcBgQH/AcMBhAGBAf8BwwGEAYEB/wHDAYQBgQH/AcMBhAGBAf8BwwGEAYEB/wHD + AYQBgQH/A1UBsAwAAyMBNANZAfUBqAJAAf0D/AH/A/wB/wP8Af8D/AH/A/wB/wP8Af8D/AH/A/wB/wGo + AkAB/QNfAfMDIwEzHAADJgE4A2IB9gO2Af8DGAEhKAABgQGDAYEB/wOBAf8oAAHXAaEBgQH/AfgB8gHt + Af8B9wHwAeoB/wH2Ae0B5gH/AfQB6gHiAf8B8wHnAd4B/wHxAeQB2wH/AfAB4gHYAf8B8AHiAdgB/wHw + AeIB2AH/AfAB4gHYAf8B8AHiAdgB/wHwAeIB2AH/AagCQAH9CwABAQMkATYDfwH+A/wB/wP8Af8D/AH/ + A/wB/wP8Af8D/AH/A/wB/wP8Af8D/AH/A/wB/wGoAkAB/QMkATYYAAMmATgDYgH2A+AB/wPYAf8DtgH/ + AxgBISAAAYEBjQGBAf8BgQGhAYEB/wGBAZ4BgQH/A4EB/wOBAf8DWgHTAz4BaxgAAdkBpAGBAf8B+QHz + Ae4B/wHrAdIBvgX/AesB0wG/Df8B6gHHAa0N/wHwAeIB2AH/AcYBjAGBAf8LAAEBAyQBNgP8Af8D/AH/ + A/wB/wP8Af8D/AH/A/sB/wP7Af8D+wH/A/sB/wP7Af8D+wH/A/wB/wMkATYUAAMnATsDYgH2A+IB/wP9 + Af8D/QH/A9kB/wO2Af8DGAEhGAABgQGYAYEB/wGBAakBgQH/AYMBxgGLAf8BgQHFAYcB/wGBAcMBhQH/ + AYEBwgGCAf8BgQG1AYEB/wGBAZUBgQH/A1sBywMTARoQAAHdAagBgQH/AfkB8wHvAf8B6wHQAboB/wHr + AdABuwH/AesB0AG7Af8B6wHQAbsB/wHrAdABuwH/AesB0QG9Af8B6gHNAbUB/wHqAc0BtQH/AeoBzQG1 + Af8B6gHNAbUB/wHwAeIB2AH/AcYBigGBAf8IAAM4AV4DUQGgAewB+AH8Af8B7AH4AfsB/wGFAdcB9wH/ + AaoB4gH4Af8D+wH/A/sB/wP6Af8D+gH/A/oB/wP6Af8D+gH/A/wB/wMkATYQAAMnATsDYgH2A+QB/wP9 + Af8B+wHsAdUB/wH9AdIBlwH/Af0B+wH3Af8D2QH/A7cB/wMYASEUAAGBAZ0BgQH/AYEBrQGBAf8BhwHJ + AY8B/wGFAccBiwH/AYIBxgGJAf8BgQHEAYcB/wGBAb8BgQH/AYEBwgGCAf8BgQGdAYEB/wNbAcsQAAHf + AaoBggH/AfkB8wHvAf8B6gHOAbcF/wHrAdABuw3/AeoBzwG6Af8B+wH2AfIJ/wHwAeIB2AH/AcgBjQGB + Af8IAAMvAUkBgQHPAfcB/wGBAccB9QH/AYEBwwHzAf8BgQHDAfQB/wG8AegB+QH/A/sB/wP7Af8D+wH/ + A/oB/wP6Af8D+AH/A/gB/wP8Af8DJAE2DAADJwE7A2IB9gPlAf8D/QH/AfsB7AHWAf8B/QHNAYYC/wHP + AYwB/wH6AdEBlwH/AfkB9wHzAf8D2QH/A7cB/wMYASEUAAGBAZ4BgQH/AYEBrgGBAf8BgQGqAYEB/wGB + AZABgQH/AYEBowGBAf8BgQHFAYcB/wGBAcQBhQH/AYEBwgGCAf8BgQGWAYEB/wM+AWsMAAHhAa4BhwH/ + AfoB9AHwAf8B6gHLAbIB/wHqAcwBswH/AeoBzAGzAf8B6gHMAbMB/wHqAcwBswH/AeoBzgG3Af8B6AHH + AawB/wHoAccBrAH/AegByAGwAf8B6AHIAa4B/wHwAeIB2AH/AcQBhgGBAf8IAAMgAS4BgQHQAfcB/wGD + Ad4B+QH/AYEB2QH5Af8BgQHBAfQB/wHUAfAB+gH/A/wB/wP8Af8D/AH/A/sB/wP5Af8D+QH/A/gB/wP8 + Af8DJAE2CAADJwE7A2IB9gPnAf8D/QH/AfsB7AHWAf8B/QHNAYgC/wHVAZgC/wHWAZwC/wHQAY4B/wH3 + AcwBjQH/Af0B/AH7Af8D2QH/A7cB/wMWAR8UAAGBAZ8BgQH/AYEBmgGBAf8EAANSAaYDQAH9AYEBwQGE + Af8BgQHBAYEB/wGBAbcBgQH/A14B2AwAAeMBsQGMAf8B+gH2AfEB/wHqAckBrgX/AeoByQGwDf8B6AHH + AawN/wHxAeUB2wH/AcYBhgGBAf8EAAMCAQMDVgGxAYEB2gH4Af8BjAHgAfoB/wGDAd0B+QH/AYEB0AH2 + Af8BgQHPAfYB/wH5AfsB/AH/A/wB/wP8Af8D+gH/A/kB/wP2Af8D9gH/A/wB/wMkATYEAAMnATsDYgH2 + A+gB/wP9Af8B+wHsAdYB/wH9Ac0BiAL/AdUBmAL/AdcBngL/AdYBmwL/Ac4BiQH/Af0B4QG6Af8D/QH/ + A9cB/wO1Af8DEAEVGAABgQGgAYEB/wgAA0cBggGBAasBgQH/AYMBxwGKAf8BggHFAYgB/wOBAf8MAAHl + AbQBjwH/AfoB9gHyAf8B6QHGAaoB/wHpAcYBrAH/AeoBxwGsAf8B6QHHAa0B/wHpAckBrgH/AekByQGw + Af8B6AHHAawB/wHpAckBsAH/AegByAGwAf8B6AHMAbUB/wHyAecB3gH/AcgBigGBAf8EAANOAZkBgQHY + AfkB/wGBAdoB+AH/AYsB4AH6Af8BggHdAfkB/wGBAc4B9wH/AYEBwwH0Af8BgQHTAfcB/wP8Af8D+wH/ + A/gB/wP2Af8D8wH/A/IB/wP8Af8DJAE2AygBPQNiAfYD6QH/A/0B/wH7AesB0wL/AcwBgwL/AdQBmAL/ + AdcBngL/AdYBmwL/Ac8BiwH/Af0B4gG8Af8D/QH/A9kB/wO5Af8DEAEVDAABgQG2AYEB/wGBAbIBgQH/ + AYEBrgGBAf8BgQGpAYEB/wNDAXcIAANHAYIBgQGvAYEB/wGIAckBjwH/AYUByAGMAf8BgQGEAYEB/wwA + AecBtwGUAf8B+wH3AfQB/wHpAcMBpgX/AegBxAGpDf8B6AHHAawN/wH3AfEB6wH/AcsBjwGBAf8EAAMH + AQkDKgFAA1ABngGBAdcB+AH/AYEB0gH4Af8BiwHeAfgB/wHFAe0B+gH/AfQB+gH8Af8D+wH/A/gB/wP1 + Af8D8gH/A+8B/wPtAf8D/AH/AyQBNgNiAfYD6wH/A/0B/wP6Af8B+wHzAecB/wH+Ac4BiQL/AdQBlgL/ + AdUBmgL/Ac8BiwH/Af0B4gG8Af8D/QH/A9oB/wO9Af8DEAEVEAADXgHYAZQB0QGdAf8BnQHVAaYB/wGT + Ac8BmwH/A0AB/QNHAYIDRwGCA0AB/QGJAckBkAH/AYUByAGMAf8BgQHAAYQB/wNeAdgMAAHpAboBmAH/ + AfsB9wH0Af8B6QHDAaYB/wHpAcMBpgH/AekBwwGmAf8B6QHDAaYB/wHpAcMBpgH/AekBwwGmAf8B6QHD + AaYB/wHpAcMBpgH/AekBwwGmAf8B6QHDAaYB/wH7AfcB9AH/Ac4BkwGBAf8LAAEBAyQBNgGBAdkB9wH/ + AYEB1gH3Af8D/AH/A/wB/wP7Af8D+AH/A/UB/wPxAf8D7AH/A+oB/wPmAf8D/AH/AyQBNgPNAf8D/QH/ + A/0B/wP8Af8D9wH/Af0B9QHqAf8B/gHPAYoC/wHMAYMB/wH9AeIBvAH/A/0B/wPcAf8DwAH/AxABFRQA + Az4BawGBAccBhQH/AaAB1wGpAf8BngHWAacB/wGXAdEBoAH/AYEBwAGBAf8BgQG8AYEB/wGOAcwBlwH/ + AZMBzwGbAf8BkAHOAZgB/wGBAasBgQH/Az4BawwAAesBvQGbAf8B+wH3AfQp/wH7AfcB9AH/AdEBlwGB + Af8LAAEBAyQBNgHQAfEB+wH/AcsB7gH4Af8D+QH/A/kB/wP3Af8D9gH/A/IB/wPrAf8D/AH/A/wB/wP8 + Af8D/AH/AyQBNgPOAf8D/QH/A+AB/wNqAfkBYQJdAeID9wH/AfsB8wHoAf8B/QHjAb0B/wP9Af8D3gH/ + A8MB/wMQARUcAANbAcsBggHKAYwB/wGhAdgBqwH/AZkB1AGiAf8BnAHVAaYB/wGbAdQBpAH/AZIB0AGb + Af8BlgHRAZ4B/wGBAbgBgQH/A1sByxAAAewBvwGeAf8B+wH3AfQB/wGcAdUBpQH/AZgB0wGhAf8BlAHQ + AZ0B/wGQAc4BmAH/AYsBywGTAf8BhwHJAY4B/wGCAcYBiQH/AYEBwwGEAf8BgQHBAYEB/wGBAb4BgQH/ + AfsB9wH0Af8B1AGbAYEB/wsAAQEDJAE2A/wB/wP3Af8D+QH/A/cB/wP3Af8D8wH/A/AB/wPqAf8D/AH/ + A/YB/wP0Af8DTQGRAxcBIAPQAf8D/QH/A80B/wQAAVwCWgHNA/MB/wP7Af8D/QH/A+AB/wPHAf8DEAEV + IAADEwEaA1sBywGBAcgBhwH/AZYB0wGhAf8BoAHYAaoB/wGeAdYBpwH/AZABzgGZAf8BgQG6AYEB/wNb + AcsDEwEaEAADYAHrAfsB9wH0Af8B+wH3AfQB/wH7AfcB9AH/AfsB9wH0Af8B+wH3AfQB/wH7AfcB9AH/ + AfsB9wH0Af8B+wH3AfQB/wH7AfcB9AH/AfsB9wH0Af8B+wH3AfQB/wH7AfcB9AH/A1wB+AwAAyQBNgGo + AkAB/QP0Af8D9QH/A/UB/wP1Af8D8QH/A+8B/wPpAf8D/AH/A+cB/wNNAZEDFwEgAwEBAgPSAf8D/QH/ + A+IB/wPOAf8D4AH/A/0B/wP9Af8D4gH/A8sB/wMQARUsAAM+AWsDXgHYAYEBuQGBAf8BgQG1AYEB/wNe + AdgDPgFrGAADRgF+A18B4wHtAcABnwH/AesBvgGdAf8B6wG8AZoB/wHpAboBlgH/AecBtwGTAf8B5gG1 + AZAB/wHkAbIBjAH/AeIBrwGIAf8B4AGsAYQB/wHdAakBgQH/AdwBpQGBAf8DXQHKDAADIwEzA10B8AGo + AkAB/QP8Af8D/AH/A/wB/wP8Af8D/AH/A/wB/wP4Af8DTQGRAxcBIAMBAQIEAAPTAf8D/QH/A/0B/wP9 + Af8D/QH/A/0B/wPkAf8DzQH/AxABFaQAAxQBHAMjATMDJAE2AyQBNgMkATYDJAE2AyQBNgMkATYDJAE2 + AyQBNgMXASADAQECCAAD1QH/A9QB/wPSAf8D0QH/A9AB/wPOAf8DzQH/AxABFWAAA4EB/wOBBf8DgQH/ + A4EB/wOBAf8BtQGlAZwB/wGMAoEB/wOBAf8C5wHeAf8DgQX/A4EB/wOBAf8DgQH/A4EB/xAAAxMBGgMk + ATUDLwFKAzYBWQM2AVkDLwFKAyQBNQMTARogAAMnATsDTgGUA14BzgNgAesDYAHrA14BzgNOAZQDJwE7 + HAADOAFcIAADNQFXAwQBBggAA4EB/wOBBf8DgQH/A4EB/wOBAf8BzgHGAb0F/wHOAcYBvQH/AucB3gH/ + A4EF/wOBAf8DgQH/A4EB/wOBAf8IAAMJAQwDIwE0Az4BawNOAZUDWgHFA10B7QNdAe0DWgHFA04BlQM+ + AWsDIwE0AwkBDBAAAwoBDQNOAZYDTQH6AeEBzQG5Af8B8QHgAc4B/wH5AecB1gH/AfgB5gHUAf8B8AHd + AcwB/wHhAc0BuQH/A00B+gNOAZYDCgENFAADZQH0A2UB9ANKAYwQAANAAW4DZAHsA38B/gwAA4EB/wOB + Bf8BjAKBBf8DgQH/AucB3g3/A4EF/wGMAoEF/wOBAf8DgQH/BAADCQEMAygBPQNHAYEBXgJbAdkB3AHR + AcgB/wHxAegB4QH/AfsB9gHyAf8B+gHzAe4B/wHtAeAB1gH/AdIBwwG4Af8BXgJbAdkDRwGBAygBPQMJ + AQwIAAMKAQ0DVwG4AdkBvwGlAf8B/gHyAeQC/wHnAc8B/wH8AdsBuwH/AfkB0wGyAf8B9gHQAawB/wH0 + AdEBrgH/AfYB2AG7Af8B+gHpAdcB/wHZAb8BpQH/A1cBuAMKAQ0QAANhAeEBgQHLAe8B/wGBAbcB5QH/ + A2oB+QNSAaMDTAGQA1kB9QGBAaMB3QH/AYEBrgHlAf8DYgH2DAADgQH/A4EF/wOBBf8DgQH/AvcB7wH/ + AZwBjAGBAf8BpQGcAYwF/wOBBf8DgQX/A4EB/wOBAf8EAAMjATQDRwGBA18B8wH0Ae4B6AL/Av4B/wH7 + AfQB7wH/AfcB6wHhAf8B9gHqAeAB/wH6AfMB7QH/Af4B/AH6Af8B7gHkAdsB/wNfAfMDRwGBAyMBNAgA + A04BlgHZAb8BpQL/AfgB6wL/AesB0QL/AeEBwwH/Af4B2wG6Af8B+wHWAbIB/wH3AdEBrAH/AfYBzgGp + Af8B8wHLAaUB/wHyAc0BqAH/AfoB4QHKAf8B2QG/AaUB/wNOAZYQAANZAccBgQHKAe4B/wGBAc4B8QH/ + AYEByAHvAf8BgQG6AegB/wGBAbUB5QH/AYEBvQHrAf8BgQG6AesB/wGBAbMB6AH/A2QB5wwAA4EB/wOB + Af8C5wHeBf8BpQGcAYwB/wOBBf8DgQH/A4EF/wOBAf8C5wHeBf8BpQGcAYwB/wOBAf8DgQH/AxMBGgM+ + AWsBXgJbAdkB9wHxAe0F/wH2AegB3QH/AfYB6AHdAf8B+QHxAesB/wH1AeYB2wH/AfUB5QHaAf8B9AHl + AdgC/wL+Af8B7wHkAdwB/wFeAlsB2QM+AWsDEwEaAyYBOAGoAkAB/QL+AfoC/wH5AekC/wHvAdgC/wHn + Ac0C/wHhAcIB/wH8AdwBuwH/AfkB1QGzAf8B9gHQAawB/wH2Ac0BqAH/AfMBywGlAf8B8wHNAakB/wH6 + AeoB2QH/AagCQAH9AyYBOAwAA1IBowGBAcgB7AH/AYEBzAHxAf8BgQHDAe0B/wGBAcQB7gH/AYEBwwHt + Af8BgQG2AeoB/wGBAbEB6AH/AYEBtAHnAf8DXAHPDAADgQH/AoQBtQH/AYQBjAG1Af8ChAG1Af8ChAG1 + Af8CgQGtAf8CgQG1Af8CgQG1Af8CgQG1Af8CgQG1Af8CgQG1Af8CgQG1Af8BhAGBAbUB/wKBAbUB/wKE + AbUB/wGlAZwBzgH/AyQBNQNOAZUB7AHlAeEC/wL+Af8B9wHrAeEB/wH2AeoB4AH/AfYB6QHfAf8BvQKB + Af8B+QHxAesB/wH1AecB3AH/AfUB5gHbAf8B9QHlAdoB/wH+AfwB+gH/AdYByQG/Af8DTgGVAyQBNQNO + AZYB4gHOAboB/wH3Ad4BxgL/AekB0QL/AfYB4gL/AfIB3QL/AfAB3QH/AfgB6gHZAf8B+AHmAdQB/wH7 + Ad8BxwH/AfUBzwGrAf8B8gHKAaQB/wHzAcwBqAH/AfgB3QHDAf8B4gHOAboB/wNOAZYMAANFAXwBgQHG + AeoB/wGBAdIB8gH/AYEBwgHtAf8BgQG9AewB/wGBAbcB6gH/AYEBswHpAf8BgQG5AeoB/wGBAbMB5gH/ + A1QBrgwAA4EB/wH3Ab0BgQL/AcYBgQH/AfcBvQGBAv8BxgGBAf8B9wG9AYEB/wH3Ab0BgQL/AcYBgQL/ + Ab0BgQL/Ab0BgQH/AfcBvQGBAv8BvQGBAv8BvQGBAf8B7wG9AYEB/wH3AcYBgQH/AdYBlAGBAf8DLwFK + A1oBxQH4AfMB7wH/AfsB9gHyAf8B9wHsAeMB/wH3AewB4wH/AfcB6wHhAf8BxQGGAYEB/wG+AoEB/wH5 + AfEB6wH/AfYB6AHdAf8B9QHnAdwB/wH6AfMB7gH/Ae8B5AHbAf8DWgHFAy8BSgNeAdAB7wHgAdAB/wHn + Ab4BlgH/AecBvAGUAf8B8AHMAakB/wH+AewB2gH/Ad0BxAGsAf8DZAHnA2QB5wHdAcMBqgH/AfgB3QHE + Af8B9AHSAbIB/wH2AdQBswH/AfUB1gG4Af8B8QHfAc8B/wNeAdAIAAMJAQwDYgHpAYEB1QHyAf8BgQHQ + AfIB/wGBAcQB7gH/AYEBwAHtAf8BgQG7AesB/wGBAbYB6QH/AYEBtAHpAf8BgQG9AesB/wNtAfcDFQEd + CAADgQH/Ab0BlAGEAf8BxgGUAYEB/wG9AZQBhAH/AcYBlAGEAf8BvQGUAYQB/wGMAoEB/wGUAoEB/wHO + AZQBjAH/Ab0BlAGBAf8BxgGUAYEB/wHGAZQBgQH/Ab0BlAGBAf8BzgGUAYwB/wG1AZQBgQH/Aa0CgQH/ + AzYBWQNdAe0B/gH9AfsB/wH5AfEB6wH/AfgB7gHlAf8B9wHtAeQB/wH3AewB4wH/AcABgwGBAf8BxgGG + AYEB/wG+AoEB/wH5AfEB6wH/AfYB6AHdAf8B9wHrAeEB/wH6AfUB8QH/A10B7QM2AVkDZAHsAfUB5AHV + Af8B6QG+AZcB/wHoAbwBlgH/AecBvAGUAf8B8wHeAcoB/wNhAeYDFAEbAxQBGwNhAeYB9gHjAdMB/wHx + Ac0BqwH/Ae8ByQGkAf8B7QHJAaQB/wH2AeQB0gH/A2QB7AQAAwQBBgNfAeMBgQHOAe0B/wGBAdsB9QH/ + AYEBzQHxAf8BgQHIAe8B/wGBAcMB7gH/AYEBvgHsAf8BgQG4AeoB/wGBAbQB6QH/AYEBwAHsAf8BgQGy + AeQB/wNlAfQDEQEXBAADgQH/AecBtQGBAf8B7wG9AYEC/wHOAYQC/wHOAYQB/wH3AcYBgQH/Ab0CgQH/ + Aa0CgQH/Aa0CgQH/Ae8BtQGBAf8B7wG1AYEB/wHvAbUBgQH/Ae8BvQGBAf8BrQKBAf8B9wG1AYEB/wHO + AZwBgQH/AzYBWQNdAe0B/gH9AfsB/wH6AfIB7AH/AfkB7wHoAf8B+AHuAeUB/wH3Ae0B5AH/AcABgwGB + Af8BwAGDAYEB/wHIAYcBgQH/Ae0B0wG+Af8B9gHpAd8B/wH3AewB4wH/Af0B+wH5Af8DXQHtAzYBWQNk + AewB9QHkAdUB/wHpAb8BmQH/AekBwAGZAf8B6QHBAZoB/wHzAd0ByQH/A2EB5gMUARsDFAEbA2EB5gH4 + AegB2QH/AfIB0gGyAf8B8AHMAasB/wHwAcwBqwH/AfYB5AHTAf8DZAHsBAADXgHdAYEB0gHuAf8BgQHh + AfYB/wGBAdYB9AH/AYEBzwHyAf8BgQHLAfAB/wGBAcYB7wH/AYEBwQHtAf8BgQG8AesB/wGBAbcB6gH/ + AYEBtAHpAf8BgQG+AewB/wGBAbIB5AH/A1gB7wMNARIDgQH/Aa0BlAGMAf8BhAKBAf8DgQH/AYQCgQH/ + A4EB/wOBAf8BhAKBAf8DgQH/A4EB/wGEAoEB/wOBAf8DgQH/AYQCgQH/A4EB/wGlAoEB/wMvAUoDWgHF + AfoB9gHzAf8B/AH4AfQB/wH5Ae8B6AH/AfkB7wHoAf8B+AHvAeYB/wHBAYMBgQH/AcEBgwGBAf8B6AHI + Aa0B/wH3AewB4wH/AfcB6wHhAf8B+wH1AfEB/wH2Ae8B6gH/A1oBxQMvAUoDXgHQAfAB4QHRAf8B6gHE + AaEB/wHpAcEBmwH/AekBwAGXAf8B8QHOAbIB/wHcAcMBqgH/A2QB5wNkAecB3QHEAawC/wH8AfMC/wH0 + AeUC/wHuAdoB/wH8AeUB0QH/AfEB4QHRAf8DXgHQA2AB1AGBAdUB7wH/AYEB3AHyAf8BgQHeAfUB/wGB + Ad4B9QH/AYEB3AH2Af8BgQHUAfMB/wGBAckB7wH/AYEBxAHuAf8BgQHEAe0B/wGBAckB7wH/AYEBxAHu + Af8BgQG+AesB/wGBAbcB5wH/AYEBsAHiAf8DYAHrA4EB/wHnAcYBgQH/Aa0CgQH/Aa0CgQH/Aa0CgQH/ + Aa0CgQH/Aa0CgQH/Aa0CgQH/Aa0CgQH/AfcBzgGUAf8BtQKBAf8BrQKBAf8BrQKBAf8BvQKBAf8BpQKB + Af8BzgGUAYEB/wMkATUDTgGVAfEB7AHoBf8B+QHxAesB/wH5AfAB6QH/AfkB7wHoAf8BwwGEAYEB/wHp + AckBsAH/AfgB7gHlAf8B9wHsAeMB/wH3AewB4wX/AecB3wHYAf8DTgGVAyQBNQNOAZYB4gHOAboB/wHx + AdIBtgH/AesBwQGbAf8B6wG/AZkC/wHkAdMC/wHoAdsB/wHzAdoBxwH/AfgB8QHkAv8B+AHtAv8B9wHp + Av8B/gHxAv8B/AHvAv8B/AHyAf8B4gHOAboB/wNOAZYDCQEMAzoBYQNSAacDYAHWA1kB9QGBAc4B7QH/ + AYEB2QH0Af8BgQHTAfIB/wGBAcsB8AH/AYEBzwHxAf8BgQG/AegB/wNiAfYDXwHbA1QBrgNAAW4DFQEd + A4EB/wG9AZQBnAH/AbUBlAGlAf8BlAKBAf8BtQGcAa0B/wG1AZQBpQH/AYwCgQH/AZQCgQH/Ac4BpQG9 + Af8BrQGcAaUB/wGtAZQBnAH/Aa0BlAGcAf8BxgGcAa0B/wGUAoEB/wGlAYwBlAH/AZQCgQH/AxMBGgM+ + AWsBXgJbAdkB+wH4AfcF/wH5AfEB6wH/AfkB8AHpAf8B6QHKAbEB/wH5Ae8B6AH/AfgB7wHmAf8B+AHu + AeUF/wH5AfYB8wH/AV4CWwHZAz4BawMTARoDJgE4AagCQAH9AfoB7QHhAf8B7AHHAaMC/wHsAdoF/wH3 + Ac0BtgH/AewBvQGXAv8B9AHcA/8B9wL/AfcB6AP/AfMD/wH5Af8C/gH5Af8BqAJAAf0DJgE4FAADRwGA + AYEBzgHtAf8BgQHZAfQB/wGBAdYB8wH/AYEBxQHqAf8DUgGnFAADgQH/AecBxgGUAf8B5wG9AZQB/wHn + AcYBnAH/Ad4BvQGcAf8B5wHGAZwB/wHeAcYBnAH/AbUBjAGBAf8B5wG9AZQB/wHnAb0BlAH/AecBxgGc + Af8B5wHGAZwB/wHeAb0BlAH/AfcBxgGlAf8B5wHGAZwB/wG9AYQBgQH/BAADIwE0A0cBgQNfAfMB+wH4 + AfcF/wH8AfkB9gH/AfoB8wHuAf8B+gHzAe0B/wH8AfgB9AX/AfkB9gHzAf8DXwHzA0cBgQMjATQIAANO + AZYB2QG/AaUC/wH6AfAG/wH9AfMB/wHwAcEBowH/Ae4BxgGgAf8B/QHwAdED/wH+Av8B/QHwAv8B/QHx + Bf8B2QG/AaUB/wNOAZYcAANhAe4BgQHWAfIB/wGBAdYB8wH/A00B+gMEAQYUAAOBAf8BvQGlAbUB/wG1 + AaUBvQH/AbUBnAG9Af8BtQGcAbUB/wG1AZwBtQH/AbUBnAG1Af8BtQGlAb0B/wG1AZwBtQH/AbUBnAG1 + Af8BtQGcAbUB/wG1AZwBtQH/AbUBnAG1Af8BtQGcAb0B/wG9Aa0BtQH/AZQCgQH/BAADCQEMAygBPQNH + AYEBXgJbAdkB8QHsAegB/wH6AfYB8wH/Af4B/QH7Af8B/gH9AfsB/wH5AfUB8gH/Ae4B6QHlAf8BXgJb + AdkDRwGBAygBPQMJAQwIAAMKAQ0DVwG4AdkBvwGlAf8B/gH9AfwC/wHxAeQB/wHyAcoBrgH/AfIB0gGt + Af8B+QHtAcgD/wH3A/8B/QH/Af4B/QH8Af8B2QG/AaUB/wNXAbgDCgENHAADNQFXAYEBzgHtAf8BgQHN + Ae0B/wNHAYAYAAOBAf8BtQKBAf8BvQGEAYEB/wG9AoEB/wG1AYQBgQH/Ab0BhAGBAf8BvQGEAYEB/wG1 + AoEB/wG9AYQBgQH/Ab0BhAGBAf8BvQGEAYEB/wG9AYQBgQH/Ab0BhAGBAf8BvQGEAYEB/wG1AYQBgQH/ + AdYBpQGEAf8IAAMJAQwDIwE0Az4BawNOAZUDWgHFA10B7QNdAe0DWgHFA04BlQM+AWsDIwE0AwkBDBAA + AwoBDQNOAZYDTQH6AeEBzQG5Af8B8QHiAdQB/wH5AewB3wH/AfsB8wHlAf8B9AHtAeQB/wHiAc4BuwH/ + A00B+gNOAZYDCgENJAADXwHbA1gB7xwAA4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/ + A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/xAAAxMBGgMkATUDLwFKAzYBWQM2AVkDLwFKAyQBNQMT + ARogAAMnATsDTgGUA14BzgNgAesBYgJYAe8BXgJbAdkDTwGXAycBOywAAyMEMwFSHAABQgFNAT4HAAE+ + AwABKAMAAUADAAFwAwABAQEAAQEFAAGAAQMWAAP/AwAB8AEPAeAFAAHAAQMB8AUAAYABAQHwAwABwAED + AYABAQEAAQECAAHgAQcDAAEHAgAB/AE/AwABDwIAAfgBHwIAAYABBwIAAfgBHwIAAeABBwIAAfABDwIA + AfABBwIAAfABDwIAAeABBwIAAfABDwIAAeABBwIAAfABDwIAAeABBwIAAfABDwGAAQEB4AEPAgAB8AEP + AYABAQHgAX8CAAHwAQ8BwAEDAeABfwIAAfgBHwHwAQ8B8AH/AgAE/wIABv8CAAHgAQMB/wF/Av8CAAHA + AQMB/gE/Av8CAAGAAQMB/gEfAf8B5wIAAYABAwHgAQ8B/wHHAgABgQH/AeABBwGAAQMCAAGDAf8B4AEH + AYABAQIAAYMB5wHgAQcBgAEBAgABgQHnAeABDwGAAQMCAAGAAQMB/gEfAf8B5wIAAYABAQH+AT8B/wHn + AgABwAEBBP8CAAHgAQME/wIAAf8B5wT/AgAB/wHnBP8CAAL/AQABHwHwAQcC/wHhAYcBAAEfAcABAwGA + AQEBwQGDAQABHwGAAQEBgAEBAcABAwEAAR8BgAEAAYABAQHgAQcBgAEfAgABgAEBAfABDwHAAwABgAEB + AfABDwHAAwABgAEBAgABwAMAAYABAQIAAcADAAGAAQECAAHAAwABgAEBATABDAHgAQECAAGAAQEB8AEP + Af4BAwIAAYABAQHgAQcB/gEDAYABAQGAAQEBwAEDAf4BAwGAAQEBgAEBAcEBgwH+AQMBwAEDAYABAQHh + AYcB/wEDAfABDwT/AfwBPwb/AeABBwHAAQMBwAEDAcABAwHAAQMBgAEBAYABAQGAAQEBwAEDAYABAQGA + AQEBgAEBAcABAwGAAQEBgAEBAYABAQHAAQMBgAEBAYABAQGAAQEBwAEDAYABAQGAAQEBgAEBAcABAwHA + AQMBwAEDAcABAwHAAQMB4AEHAeABBwHgAQcBwAEDAfABDwHwAQ8B8AEPAcABAwHwAQcB8AEHAfABBwHA + AQMB8AEHAfABBwHwAQcBwAEDAfABDwHwAQ8B8AEPAcABAwHwAQ8B8AEPAfABDwHgAQcB+AEfAfgBHwH4 + AR8K/wGAAQEE/wGHAf8BgAEBAYMD/wEAAQ8BAAIBAYMBAAEBAQABDwMAAQEBAAEBAQABDwIAAYACAAEB + AQABAwIAAcABgAEAAQEBAAEDAgAB+AHAAQABAQEAAQECAAL4AQABAQQAAvgBAAEBBAAC+AEAAQEBAAEB + AgAC+AEAAQEBAAEDAgAC+AEAAQEBAAEDAQABAQH4AgABAQEAAQ8BgAEBAfgCAAEBATABPwGAAQMB+AIA + AQEC/wGAAQcG/wHAAQAB/wE/Af0B/wGAAQEBwAEAAf4BHwH5Af8BgAEBAYABAAH8AQ8B8AEfAYABAQGA + AQAB+AEHAeABBwGAAQEBgAEAAfABAwHgAQcBgAEBAYABAAHgAQEB8AEDAYABAQGAAQABwAEAAfkBAwGA + AQECAAGAAQAB/QGDAYABAQMAAQEBwQGDAYABAQMAAQMBwAEDAYABAQGAAgABBwHAAQMBgAEBAYACAAEP + AeABBwGAAQEBgAEAARABHwHgAQcBgAEBAcACAAE/AfgBHwGAAQEBwAEBAQABfwT/AcABAwEAA/8CAAHw + AQ8B8AEPAe8B8wIAAcABAwHAAQMB4wHHAgABgAEBAYABAQHgAQcCAAGAAQEBgAEBAeABBwYAAeABBwYA + AeABBwYAAcABAwYAAYABAQYAAYAXAAH4AR8CAAGAAQEBgAEBAfwBHwIAAYABAQGAAQEB/AE/AgABwAED + AcABAwH+AX8CAAHwAQ8B8AEPAf4Bfws= @@ -977,19 +977,19 @@ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAKmSURBVDhPhZLbSxRhGMbnNuh/6LqLiAitOyO66KKICi2I - uikIwgsFKTJo1cyUQl1nk1DMIAqyQCivUhK3rdb1sK6n1XVd1z3vWq3O7Bx2Dt/TO7N7Y3Z44eEbZt7n - 9x6+4f4WA59z6B1PoWc0Yav2RUC63j8nX3VNhU7e9dw/Xv9mXzn1z9H7KQkGICuayJEygoF4XkNa0NA+ - mkN16+yHqltD+8vpe4Onqj8khi8RA9+iOtzhIkYWJIhFBk9MAz/xHafvufly+t6w2t6WGWZiBmbiBrwb - GsZWFaxnJWyJGkRVx0VHMyun7w0LsKMwzCcNBBIGpmM6POtFjAZlDAdEJGicy44HjFseOTq3+f6MFvtN - TgIICrCUZrYCSRO+qAZPpGh3khZMXLIA3peVKmMmrYtWxiyVnp0faQQbACynTSymTMxRJ1Nxax8aMiJD - jQVYHK7YZoYCNdEJKeKEFB2EvPkOF1p9NAKwmgXWcqUzSLD5JDAVg/2t2tHCuNDrI4Kp7ZDZhUKYR3bs - BkKuiv8qL+sEoA5Cbys0Xc4gPVaH2FA1oq/OYmvSiTxt2qRxDJqoJAbdYPSO2YCMkEdN8yyog2OaPb+p - kmTKlMAMEYVEH5RUH+RUP6TkAOk5CslBqGLIBvwsmKhqGi9yIVdlkRky1KSLxJflRHaNRzzIIzzPIzjb - Db/3Cb5OtGF5ZdIGnGpwZ87f9u1w3r5K1dQEqCkL0EPqhhp/DCXWBmXTATlyB3K4FoXVaxCXzkEXpm1A - +XfhOH/XYYVp+VLlRBeZO8jYAmWjkcz1kNZuorByBeLiWQiBEwTw7Qasdh7Qte0wXd0zyNGnkDd66Ebo - SsMdKIQeUuUmiMFGqt4AYaEOas69G7DUdjDgbz+k+B+RrPNfKudYnpKb434BoQnC+1OZywkAAAAASUVO - RK5CYII= + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAKlSURBVDhPhZLbSxRhGMbnNuh/6LqLiAitOyO66CKJCi2I + uikIwgsFKTJoNcyUQltnk1DMIAqyQCivUhK3rdb1sK6nddd1Xfe8a7U6s3PYOXxP78zujdnhhYdvmHmf + 33v4hvtbDH7Oo28ijd6xpK2GFwHp2sC8fMU1HT55x3PveNObfZXUP0ffpxQYgJxoIk/KCgYSBQ0ZQUPn + WB517XMfam4O76+k7w2eqv6QGL5EDXyL6XBHShhdlCCWGDxxDfzkd5y+6+Yr6XvDantbZpiNG5hNGPBu + aBgPKVjPSdgSNYiqjgsOB6uk7w0LsKMwLKQMBJIGZuI6POsljAVljAREJGmcS442xq2MHp3ffH9Gi/8m + JwEEBVjOMFuBlAlfTIMnWrI7yQgmLloA78tqlTGT1kUrY5bKz86PNIINAFYyJpbSJuapk+mEtQ8NWZGh + 3gIsjVRtM0OBmuyGFHVCig1B3nyH8+0+GgEI5YC1fPkMEmwhBUzHYX+rc7QyLvz6iGBqO2R2oRjhkRu/ + jrCr6r8qyDoBqIPw2ypNl7PIjDciPlyH2KtabE05UaBNmzSOQROVxaAbjN4xG5AVCqhvmwN1cEyz5zdV + kkyZEpghopjsh5Luh5wegJQaJD1HMTUEVQzbgJ9FEzWtEyUu7KouMUOGmnKR+IqcyK3xSAR5RBZ4BOee + wO99jK+THVhZnbIBp5rd2XO3fDuct79aNTUBatoC9JKeQE08ghLvgLLpgBy9DTnSgGLoKsTls9CFGRtQ + +V04zt9zWGFaoVw52UPmLjLeh7LRQuYmSGs3UFy9DHGpFkLgBAF8uwGh7gO6th2hq3sGOfYU8kYv3Qhd + aaQLxfADqtwKMdhC1ZshLDZCzbt3A5Y7Dgb8nYcU/0OSdf5LlRzLU3Zz3C+D/8LvGNc3ywAAAABJRU5E + rkJggg== @@ -1095,14 +1095,14 @@ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGQSURBVDhPY6AKiJt0tjB+4tkJ8ZPPnQHi//H1Lf/iJ539 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGQSURBVDhPY6AKiJt0tjB+4tkJ8ZPPnQHi//H1Tf/iJ539 Hz/hzP9EIJ08+ez/xImn/4e3H3+fMuHU6e51N/53r7n+H6qdgQGoePZ/EkHnqmsIA+Imn70BEpxz5C0c - z8aDQSC6/tgPqHYGhtgJZz/ADDh46wsYH7qNHcMMiKiv/wfVzsDgU7/pF0gQ3SZcGATCG/chvBBb3/QP + z8aDQSC6/tgPqHYGhtgJZz/ADDh46wsYH7qNHcMMiKiv/wfVzsDgU7/pF0gQ3SZcGATCG/chvBBb3/AP LEoCCK3bgzAgpucUWDCkfs9/n9pd/71qdoH5955+wIpBIKRmJ8KA6K4TYEGHsu3/m5dd/G9RvA3MByl+ /f4bCoYZEFyxDWFAVMdxsKBx3pb/dUsv/NfL2QTmwwx49uYrGCMbEFi2CckFbUfBgjrp6/+XLjj7Xztl LZiPz4CAojVILmg7AhYEGVAyH9MAZAwzwL9wBcIAUJyCBEEGgDQjG4ANg4BfPlI6CKzfew8sSgLwzVr0 FqqdgSG0Zl9/SNXurUHVu98FV+76H1i+DRhIW/4HlGz871+0FujcVUAbV/z3zVsOxPX/fPOWfPTOW3YE - qp0SwMAAAMfKiagyjF04AAAAAElFTkSuQmCC + qp0SwMAAALtUiaS8nckQAAAAAElFTkSuQmCC @@ -1201,7 +1201,7 @@ AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADU - AQAAAk1TRnQBSQFMAwEBAAGsAQgBrAEIARABAAEQAQAE/wERAQAI/wFCAU0BNgcAATYDAAEoAwABQAMA + AQAAAk1TRnQBSQFMAwEBAAG8AQgBvAEIARABAAEQAQAE/wERAQAI/wFCAU0BNgcAATYDAAEoAwABQAMA ARADAAEBAQABEAYAAQj/ACMAAVkBZ3wAAQEBFgHgAQ0BNwFfegABAQEaAYgBLgECARoBFgFbcAABRAEq AUMBJgMiAR4BZwEuARABSwGIATIBAgEaARYBW24AAWUBLgEyAVcBMQFTAREBUwERAU8BzQFCARABSwGJ ATIBAgEWARUBW2wAAWYCMgFXAe0BRgHtAUYBzAFCAcwBQgHMAUIBEAFPAYcBLgEAARJsAAGGATYBMgFb diff --git a/MPfm/MPfm.Windows/Classes/Forms/frmAddEditMarker.Designer.cs b/MPfm/MPfm.Windows/Classes/Forms/frmMarkerDetails.Designer.cs similarity index 99% rename from MPfm/MPfm.Windows/Classes/Forms/frmAddEditMarker.Designer.cs rename to MPfm/MPfm.Windows/Classes/Forms/frmMarkerDetails.Designer.cs index fdb01c02..7936b9db 100644 --- a/MPfm/MPfm.Windows/Classes/Forms/frmAddEditMarker.Designer.cs +++ b/MPfm/MPfm.Windows/Classes/Forms/frmMarkerDetails.Designer.cs @@ -17,7 +17,7 @@ namespace MPfm.Windows.Classes.Forms { - partial class frmAddEditMarker + partial class frmMarkerDetails { /// /// Required designer variable. @@ -1394,7 +1394,7 @@ private void InitializeComponent() this.Controls.Add(this.panelEditMarker); this.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); this.MinimumSize = new System.Drawing.Size(600, 448); - this.Name = "frmAddEditMarker"; + this.Name = "frmMarkerDetails"; this.ShowInTaskbar = false; this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; this.Text = "Edit Marker"; diff --git a/MPfm/MPfm.Windows/Classes/Forms/frmAddEditMarker.cs b/MPfm/MPfm.Windows/Classes/Forms/frmMarkerDetails.cs similarity index 86% rename from MPfm/MPfm.Windows/Classes/Forms/frmAddEditMarker.cs rename to MPfm/MPfm.Windows/Classes/Forms/frmMarkerDetails.cs index 7efdbd8c..fb460c7a 100644 --- a/MPfm/MPfm.Windows/Classes/Forms/frmAddEditMarker.cs +++ b/MPfm/MPfm.Windows/Classes/Forms/frmMarkerDetails.cs @@ -16,6 +16,7 @@ // along with MPfm. If not, see . using System; +using MPfm.MVP.Views; using MPfm.Player.Objects; using MPfm.Sound.AudioFiles; @@ -24,43 +25,13 @@ namespace MPfm.Windows.Classes.Forms /// /// Add/Edit Markers window. This is where the user can add or edit markers for an audio file. /// - public partial class frmAddEditMarker : MPfm.WindowsControls.Form + public partial class frmMarkerDetails : BaseForm, IMarkerDetailsView { - // Private variables - private AddEditMarkerWindowMode mode = AddEditMarkerWindowMode.Add; - private frmMain main = null; - private AudioFile audioFile = null; - private Guid markerId = Guid.Empty; - - /// - /// Hook to the main form. - /// - public frmMain Main - { - get - { - return main; - } - } - - /// - /// Constructor for Add/Edit Marker window. Requires a hook to the main form and - /// the window mode must be specified. - /// - /// Hook to the main window - /// Window mode - /// AudioFile linked to the marker - /// Identifier of the marker (if it exists) - public frmAddEditMarker(frmMain main, AddEditMarkerWindowMode mode, AudioFile audioFile, Guid markerId) + public frmMarkerDetails(Action onViewReady) + : base(onViewReady) { InitializeComponent(); - this.main = main; - this.mode = mode; - this.audioFile = audioFile; - this.markerId = markerId; - - // Initialize controls - Initialize(); + ViewIsReady(); } /// @@ -290,20 +261,30 @@ public void ValidateForm() //// Enable/disable save button //btnSave.Enabled = isValid; } - } - /// - /// Defines the mode of the AddEditMarker window. - /// - public enum AddEditMarkerWindowMode - { - /// - /// The window is in "Add" mode. - /// - Add = 0, - /// - /// The window is in "Edit" mode. - /// - Edit = 1 + #region IMarkerDetailsView implementation + + public Action OnChangePosition { get; set; } + public Action OnUpdateMarker { get; set; } + public Action OnDeleteMarker { get; set; } + + public void MarkerDetailsError(Exception ex) + { + } + + public void DismissView() + { + } + + public void RefreshMarker(Marker marker, AudioFile audioFile) + { + } + + public void RefreshMarkerPosition(string position, float positionPercentage) + { + } + + #endregion + } } diff --git a/MPfm/MPfm.Windows/Classes/Forms/frmAddEditMarker.resx b/MPfm/MPfm.Windows/Classes/Forms/frmMarkerDetails.resx similarity index 100% rename from MPfm/MPfm.Windows/Classes/Forms/frmAddEditMarker.resx rename to MPfm/MPfm.Windows/Classes/Forms/frmMarkerDetails.resx diff --git a/MPfm/MPfm.Windows/Classes/Program.cs b/MPfm/MPfm.Windows/Classes/Program.cs index 2d95a96d..84c0d872 100644 --- a/MPfm/MPfm.Windows/Classes/Program.cs +++ b/MPfm/MPfm.Windows/Classes/Program.cs @@ -59,6 +59,10 @@ static void Main() Bootstrapper.GetContainer().Register().AsSingleton(); Bootstrapper.GetContainer().Register().AsMultiInstance(); Bootstrapper.GetContainer().Register().AsMultiInstance(); + Bootstrapper.GetContainer().Register().AsMultiInstance(); + Bootstrapper.GetContainer().Register().AsMultiInstance(); + Bootstrapper.GetContainer().Register().AsMultiInstance(); + Bootstrapper.GetContainer().Register().AsMultiInstance(); Bootstrapper.GetContainer().Register().AsMultiInstance(); Bootstrapper.GetContainer().Register().AsMultiInstance(); Bootstrapper.GetContainer().Register().AsMultiInstance(); diff --git a/MPfm/MPfm.Windows/MPfm.Windows.csproj b/MPfm/MPfm.Windows/MPfm.Windows.csproj index a2002af4..17245125 100644 --- a/MPfm/MPfm.Windows/MPfm.Windows.csproj +++ b/MPfm/MPfm.Windows/MPfm.Windows.csproj @@ -139,17 +139,17 @@ frmLoadPlaylist.cs - + Form - - frmAddEditLoop.cs + + frmLoopDetails.cs - + Form - - frmAddEditMarker.cs + + frmMarkerDetails.cs Form @@ -231,12 +231,12 @@ frmLoadPlaylist.cs Designer - - frmAddEditLoop.cs + + frmLoopDetails.cs Designer - - frmAddEditMarker.cs + + frmMarkerDetails.cs Designer