From df06a866516bdd98da6340fa0022723915828377 Mon Sep 17 00:00:00 2001 From: Andy <88590076+AAndyProgram@users.noreply.github.com> Date: Sun, 6 Aug 2023 18:16:07 +0300 Subject: [PATCH] 2023.8.6.0 Plugins.Attributes: add 'DependentFields' attribute Plugins.IPluginContentProvider: add 'Options' and 'IsSubscription' properties Plugins.ISiteSettings: add 'SubscriptionsAllowed' property Plugins.ExchangeOptions: add 'Options' field Plugins.Attributes.PropertyUpdater: replace 'Dependencies' with 'Arguments' YT: add 'OutputPathAskForName' and 'OutputPathAutoAddPaths' properties; add the ability to store download locations; add 'DownloadLocation' and 'DownloadLocationsCollection' objects YT.IDownloaderSettings: add 'OutputPathAskForName' and 'OutputPathAutoAddPaths' properties YT.Downloader: fixed bug with re-saving elements when loading a video list; fixed bug when files were not deleted when clicking on the delete button; fixed a bug that caused the video to redownload; download job removes elements at wrong indexes; added skipping of downloaded elements in the job; fixed a bug, pending option did not change after download complete YT.YouTubeMediaContainerBase: add '_MediaStateOnLoad' field and 'NeedToSave' function; update the 'Save' function to prevent saving a file when a download is complete and the file has already been saved; update code for new yt-dlp version Fixed cache deletion errors Add user queue Add global locations API.Base.SiteSettingsBase: implement 'SubscriptionsAllowed' property; remove request headers with null values on save; add '_AllowUserAgentUpdate' parameter API.Base.Structures: add 'SiteModes' enum API.Base.UserDataBase: add 'Erase' button; implement 'Options' and 'IsSubscription' properties; add 'SpecialLabels' property; update 'LVIKey'; update 'FitToAddParams' function; add 'EraseData' function; user colors; Not UserExists notification, UserQueue support API.Base: add 'DeclaredNames' API.Instagram: remove default values for headers; disable updating UserAgent from global; check for a new username for non-existent users API.Mastodon: bypass new inherited twitter options; update names and headers API.OnlyFans: make 'HH_BROWSER' property nullable; remove 'HH_BROWSER' from required; fix username bug (dots); handling of 504 and 429 errors; add 'DownloadHighlights' and 'DownloadChatMedia' options; add 'UserExchangeOptions'; fixed incorrect error handler API.PathPlugin: fixed incorrect detection of path existence API.Pinterest: add 'SpecialLabels' API.PornHub: add new video regex; remove old regex; added 'DownloadUploaded', 'DownloadTagged', 'DownloadPrivate' and 'DownloadFavorite' properties to 'SiteSettings', 'UserData' and 'UserExchangeOptions'; update regex to define user; added downloading search queries; update 'GetUserUrl' function; hide unnecessary 'RegexFieldsTextBecameNullException' errors; add subscriptions API.Reddit: add 'SpecialLabels'; add bearer token and its refresh interval; add OAuth; add additional options API.RedGifs: add 'DependentFields' for 'Token' API.ThisVid: add 'DownloadFavourite' option; add downloading search queries, tags, categories; add 'SpecialLabels'; add subscriptions; updating cookies issue API.TikTok: rewrite algorithms API.Twitter: add 'UseAppropriateModel', 'UseNewEndPointSearch', 'UseNewEndPointProfiles', 'AbortOnLimit', 'DownloadAlreadyParsed', 'MediaModelAllowNonUserTweets' properties; remove old commented code; remove 'TwitterPic_400' and replace with 'TwitterIcon_32.ToBitmap'; add 'DownloadModelForceApply' user option; update environment to GDL 1.25.8; fixed gifs downloading; fix typo in 'ReparseMissing'; update names API.UserDataBind: prevent adding site-specific labels when adding to a collection API.Xhamster: add downloading search queries, tags, categories; add 'SpecialLabels'; add additional nodes for channels; add subscriptions API.XVIDEOS: add downloading search queries, tags, categories; add 'SpecialLabels'; add subscriptions; changed users creation method; add subscriptions API.YouTube: add subscriptions AutoDownloader: add new group subscription options; update predicates; fixed excluded labels and sites in default mode; update notifications; add an additional skip options, add 'Force start' option DownloadedInfoForm: add subscriptions; fixed size/location bug; hide unnecessary error (refill) Feed: add subscriptions; update filters; add 'Ctrl+G' shortcut FeedMedia: add subscriptions; fixed 'webm' bug; add title for subscription media; add site icon to post; user colors; always using 'FriendlyName' instead of 'UserName' if it exists DownloadGroup, GroupDefaults, GroupParameters: add subscription and 'UsersCount' options MissingPostsForm: add 'BTT_DELETE_ALL' VideoDownloaderForm, DownloaderUrlForm, DownloaderUrlsArrForm: add download locations support VideoDownloaderForm: add subscriptions support GlobalSettingsForm: add new properties UserCreatorForm: add subscriptions; add 'Options' support (of 'ExchangeOptions'); user colors ListImagesLoader: add subscription colors; user colors MainFrame: add subscriptions; add filters by subscription and user; update predicates NuGet: update 'LibVLCSharp', 'LibVLCSharp.WinForms', 'VideoLAN.LibVLC.Windows' DownloadableMediaHost: update 'Save' function PropertyValueHost: fix 'CaptionWidth' bug; add 'Dependents' SettingsHost: add 'Dependents' UserDataHost: add 'Options' and 'IsSubscription' properties SettingsCLS: implement new 'IDownloaderSettings' properties; add 'CacheSnapshots'; add 'DownloadLocations'; add new properties UserInfo, UserFinder: add subscriptions UserSearchForm: fixed search by name bug --- .github/ISSUE_TEMPLATE/bug_report.md | 5 +- .gitignore | 3 +- Changelog.md | 88 +++ ProgramScreenshots/AppYouTube.png | Bin 33011 -> 33782 bytes ProgramScreenshots/BugReport.png | Bin 0 -> 13354 bytes ProgramScreenshots/CreateUserClear.png | Bin 16604 -> 18213 bytes ProgramScreenshots/FeedWindow.png | Bin 494239 -> 503111 bytes ProgramScreenshots/GroupCreating.png | Bin 9394 -> 10969 bytes ProgramScreenshots/LocationsChanger.png | Bin 0 -> 11354 bytes ProgramScreenshots/MainContext.png | Bin 13714 -> 15129 bytes ProgramScreenshots/MainWindow.png | Bin 371278 -> 367475 bytes ProgramScreenshots/MainWindowPause.png | Bin 15855 -> 14676 bytes ProgramScreenshots/MainWindowView.png | Bin 8664 -> 9658 bytes ProgramScreenshots/SettingsAutoDownloader.png | Bin 18120 -> 20003 bytes ProgramScreenshots/SettingsGlobalBasis.png | Bin 23768 -> 27917 bytes .../SettingsGlobalDownloader.png | Bin 15581 -> 19737 bytes ProgramScreenshots/SettingsGlobalFeed.png | Bin 14616 -> 16991 bytes ProgramScreenshots/SettingsScheduler.png | Bin 12097 -> 13413 bytes ProgramScreenshots/SettingsSiteInstagram.png | Bin 38269 -> 35369 bytes ProgramScreenshots/SettingsSiteOnlyFans.png | Bin 20623 -> 22131 bytes ProgramScreenshots/SettingsSitePornHub.png | Bin 16932 -> 19747 bytes ProgramScreenshots/SettingsSiteReddit.png | Bin 14735 -> 24956 bytes ProgramScreenshots/SettingsSiteThisVid.png | Bin 14716 -> 15340 bytes ProgramScreenshots/SettingsSiteTikTok.png | Bin 13181 -> 16025 bytes ProgramScreenshots/SettingsSiteTwitter.png | Bin 17594 -> 22675 bytes ProgramScreenshots/SettingsTwitterUser.png | Bin 10176 -> 11948 bytes ProgramScreenshots/TrayContextMenu.png | Bin 4399 -> 5328 bytes .../UserDefaultQueryOptions.png | Bin 0 -> 3921 bytes README.md | 19 +- .../Attributes/Attributes.vb | 16 +- .../Interfaces/IPluginContentProvider.vb | 2 + .../Interfaces/ISiteSettings.vb | 1 + .../My Project/AssemblyInfo.vb | 4 +- .../Objects/ExchangeOptions.vb | 1 + .../Objects/ExitException.vb | 36 ++ .../SCrawler.PluginProvider.vbproj | 1 + SCrawler.YouTube/Base/Structures.vb | 2 +- SCrawler.YouTube/Base/YouTubeSettings.vb | 54 +- .../Content/Pictures/MailPic_16.png | Bin 0 -> 209 bytes .../Controls/MusicPlaylistsForm.Designer.vb | 35 +- .../Controls/MusicPlaylistsForm.resx | 112 ++++ .../Controls/MusicPlaylistsForm.vb | 21 +- SCrawler.YouTube/Controls/VideoOption.vb | 1 + .../Controls/VideoOptionsForm.Designer.vb | 107 ++-- .../Controls/VideoOptionsForm.resx | 122 +++- SCrawler.YouTube/Controls/VideoOptionsForm.vb | 15 +- .../Downloader/DownloadLocationsCollection.vb | 204 +++++++ .../Downloader/IDownloaderSettings.vb | 6 + .../Downloader/VideoListForm.Designer.vb | 14 +- .../Downloader/VideoListForm.resx | 340 ++++++------ SCrawler.YouTube/Downloader/VideoListForm.vb | 84 ++- .../Editors/BugReporterForm.Designer.vb | 361 ++++++++++++ SCrawler.YouTube/Editors/BugReporterForm.resx | 225 ++++++++ SCrawler.YouTube/Editors/BugReporterForm.vb | 238 ++++++++ SCrawler.YouTube/MainModShared.vb | 98 +++- SCrawler.YouTube/My Project/AssemblyInfo.vb | 4 +- .../My Project/Resources.Designer.vb | 10 + SCrawler.YouTube/My Project/Resources.resx | 3 + .../Objects/YouTubeMediaContainerBase.vb | 110 ++-- SCrawler.YouTube/SCrawler.YouTube.vbproj | 14 + .../MainFrame.Designer.vb | 1 - .../My Project/AssemblyInfo.vb | 4 +- SCrawler/API/Base/Declarations.vb | 56 ++ SCrawler/API/Base/DeclaredNames.vb | 31 ++ SCrawler/API/Base/GDLBatch.vb | 11 +- SCrawler/API/Base/IUserData.vb | 88 +++ SCrawler/API/Base/M3U8Base.vb | 1 + SCrawler/API/Base/SiteSettingsBase.vb | 36 +- SCrawler/API/Base/Structures.vb | 8 + SCrawler/API/Base/TokenBatch.vb | 27 + SCrawler/API/Base/UserDataBase.vb | 455 ++++++++++----- SCrawler/API/Instagram/SiteSettings.vb | 39 +- SCrawler/API/Instagram/UserData.vb | 91 ++- .../API/Mastodon/EditorExchangeOptions.vb | 2 + SCrawler/API/Mastodon/SiteSettings.vb | 20 +- SCrawler/API/Mastodon/UserData.vb | 6 +- SCrawler/API/OnlyFans/SiteSettings.vb | 44 +- SCrawler/API/OnlyFans/UserData.vb | 222 +++++++- SCrawler/API/OnlyFans/UserExchangeOptions.vb | 28 + SCrawler/API/PathPlugin/UserData.vb | 2 +- SCrawler/API/Pinterest/SiteSettings.vb | 25 +- SCrawler/API/Pinterest/UserData.vb | 32 +- SCrawler/API/PornHub/Declarations.vb | 11 +- SCrawler/API/PornHub/SiteSettings.vb | 37 +- SCrawler/API/PornHub/UserData.vb | 416 +++++++++----- SCrawler/API/PornHub/UserExchangeOptions.vb | 19 +- SCrawler/API/Reddit/IChannelLimits.vb | 18 + SCrawler/API/Reddit/M3U8.vb | 1 + SCrawler/API/Reddit/SiteSettings.vb | 193 ++++++- SCrawler/API/Reddit/UserData.vb | 35 +- SCrawler/API/Redgifs/SiteSettings.vb | 22 +- SCrawler/API/ThisVid/Declarations.vb | 4 + SCrawler/API/ThisVid/SiteSettings.vb | 98 +++- SCrawler/API/ThisVid/UserData.vb | 292 ++++++++-- SCrawler/API/ThisVid/UserExchangeOptions.vb | 7 +- SCrawler/API/TikTok/Declarations.vb | 51 +- SCrawler/API/TikTok/SiteSettings.vb | 28 +- SCrawler/API/TikTok/UserData.vb | 280 ++++++++-- SCrawler/API/TikTok/UserExchangeOptions.vb | 32 ++ SCrawler/API/Twitter/EditorExchangeOptions.vb | 10 + SCrawler/API/Twitter/SiteSettings.vb | 99 ++-- SCrawler/API/Twitter/UserData.vb | 244 +++++--- SCrawler/API/UserDataBind.vb | 121 +++- SCrawler/API/XVIDEOS/Declarations.vb | 3 + SCrawler/API/XVIDEOS/SiteSettings.vb | 58 +- SCrawler/API/XVIDEOS/UserData.vb | 294 ++++++++-- SCrawler/API/XVIDEOS/UserExchangeOptions.vb | 17 + SCrawler/API/Xhamster/SiteSettings.vb | 58 +- SCrawler/API/Xhamster/UserData.vb | 344 +++++++++--- SCrawler/API/Xhamster/UserExchangeOptions.vb | 21 + SCrawler/API/YouTube/SiteSettings.vb | 1 + SCrawler/API/YouTube/UserData.vb | 4 +- SCrawler/Channels/ChannelViewForm.vb | 2 +- SCrawler/Content/Pictures/BrushToolPic_16.png | Bin 0 -> 277 bytes .../Pictures/SitePictures/TwitterPic_400.png | Bin 6990 -> 0 bytes .../Download/Automation/AutoDownloader.vb | 85 ++- .../AutoDownloaderEditorForm.Designer.vb | 36 +- .../Automation/AutoDownloaderEditorForm.vb | 2 +- .../Automation/SchedulerEditorForm.vb | 81 ++- .../Download/DownloadedInfoForm.Designer.vb | 37 +- SCrawler/Download/DownloadedInfoForm.resx | 11 + SCrawler/Download/DownloadedInfoForm.vb | 134 +++-- .../Feed/DownloadFeedForm.Designer.vb | 76 ++- SCrawler/Download/Feed/DownloadFeedForm.resx | 15 + SCrawler/Download/Feed/DownloadFeedForm.vb | 108 +++- SCrawler/Download/Feed/FeedMedia.Designer.vb | 79 ++- SCrawler/Download/Feed/FeedMedia.resx | 3 - SCrawler/Download/Feed/FeedMedia.vb | 163 +++++- SCrawler/Download/Groups/DownloadGroup.vb | 22 +- SCrawler/Download/Groups/GroupDefaults.vb | 63 ++- .../Groups/GroupEditorForm.Designer.vb | 16 +- SCrawler/Download/Groups/GroupParameters.vb | 15 + SCrawler/Download/MissingPostsForm.vb | 23 +- .../DownloaderUrlForm.Designer.vb | 36 +- .../STDownloader/DownloaderUrlForm.resx | 112 ++++ .../STDownloader/DownloaderUrlForm.vb | 20 +- .../DownloaderUrlsArrForm.Designer.vb | 38 +- .../STDownloader/DownloaderUrlsArrForm.resx | 112 ++++ .../STDownloader/DownloaderUrlsArrForm.vb | 24 +- .../STDownloader/VideoDownloaderForm.vb | 43 +- SCrawler/Download/TDownloader.vb | 16 +- .../UserDownloadQueueForm.Designer.vb | 66 +++ SCrawler/Download/UserDownloadQueueForm.resx | 126 +++++ SCrawler/Download/UserDownloadQueueForm.vb | 180 ++++++ .../Editors/CollectionEditorForm.Designer.vb | 11 +- SCrawler/Editors/CollectionEditorForm.resx | 11 + SCrawler/Editors/CollectionEditorForm.vb | 47 +- SCrawler/Editors/ColorPicker.vb | 8 + .../GlobalLocationsChooserForm.Designer.vb | 227 ++++++++ .../Editors/GlobalLocationsChooserForm.resx | 244 ++++++++ .../Editors/GlobalLocationsChooserForm.vb | 217 ++++++++ .../Editors/GlobalSettingsForm.Designer.vb | 468 +++++++++++----- SCrawler/Editors/GlobalSettingsForm.resx | 66 ++- SCrawler/Editors/GlobalSettingsForm.vb | 32 ++ SCrawler/Editors/UserCreatorForm.Designer.vb | 87 ++- SCrawler/Editors/UserCreatorForm.resx | 98 +++- SCrawler/Editors/UserCreatorForm.vb | 244 +++++--- SCrawler/GlobalSuppressions.vb | 3 +- SCrawler/ListImagesLoader.vb | 7 +- SCrawler/MainFrame.Designer.vb | 285 +++++++--- SCrawler/MainFrame.resx | 46 +- SCrawler/MainFrame.vb | 522 +++++++++++++----- SCrawler/MainFrameObjects.vb | 3 + SCrawler/MainMod.vb | 28 +- SCrawler/My Project/AssemblyInfo.vb | 4 +- SCrawler/My Project/Resources.Designer.vb | 10 + SCrawler/My Project/Resources.resx | 3 + .../Hosts/DownloadableMediaHost.vb | 12 +- .../Hosts/PropertyValueHost.vb | 111 ++-- .../PluginsEnvironment/Hosts/SettingsHost.vb | 18 +- .../PluginsEnvironment/Hosts/UserDataHost.vb | 2 + SCrawler/SCrawler.vbproj | 42 +- SCrawler/SettingsCLS.vb | 82 ++- SCrawler/SiteResources.Designer.vb | 10 - SCrawler/SiteResources.resx | 3 - SCrawler/UserFinder.vb | 3 +- SCrawler/UserInfo.vb | 69 +-- SCrawler/UserSearchForm.vb | 10 +- SCrawler/packages.config | 6 +- 179 files changed, 9145 insertions(+), 2041 deletions(-) create mode 100644 ProgramScreenshots/BugReport.png create mode 100644 ProgramScreenshots/LocationsChanger.png create mode 100644 ProgramScreenshots/UserDefaultQueryOptions.png create mode 100644 SCrawler.PluginProvider/Objects/ExitException.vb create mode 100644 SCrawler.YouTube/Content/Pictures/MailPic_16.png create mode 100644 SCrawler.YouTube/Downloader/DownloadLocationsCollection.vb create mode 100644 SCrawler.YouTube/Editors/BugReporterForm.Designer.vb create mode 100644 SCrawler.YouTube/Editors/BugReporterForm.resx create mode 100644 SCrawler.YouTube/Editors/BugReporterForm.vb create mode 100644 SCrawler/API/Base/DeclaredNames.vb create mode 100644 SCrawler/API/Base/IUserData.vb create mode 100644 SCrawler/API/Base/TokenBatch.vb create mode 100644 SCrawler/API/OnlyFans/UserExchangeOptions.vb create mode 100644 SCrawler/API/Reddit/IChannelLimits.vb create mode 100644 SCrawler/API/TikTok/UserExchangeOptions.vb create mode 100644 SCrawler/API/XVIDEOS/UserExchangeOptions.vb create mode 100644 SCrawler/API/Xhamster/UserExchangeOptions.vb create mode 100644 SCrawler/Content/Pictures/BrushToolPic_16.png delete mode 100644 SCrawler/Content/Pictures/SitePictures/TwitterPic_400.png create mode 100644 SCrawler/Download/UserDownloadQueueForm.Designer.vb create mode 100644 SCrawler/Download/UserDownloadQueueForm.resx create mode 100644 SCrawler/Download/UserDownloadQueueForm.vb create mode 100644 SCrawler/Editors/GlobalLocationsChooserForm.Designer.vb create mode 100644 SCrawler/Editors/GlobalLocationsChooserForm.resx create mode 100644 SCrawler/Editors/GlobalLocationsChooserForm.vb diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index 02a349c..d5ccc3d 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -30,7 +30,9 @@ A clear and concise description of what you expected to happen. **Screenshots** If applicable, add screenshots to help explain your problem. -**Release information (please complete the following information):** +**Release information:** + +**Please complete the following information or replace the following text with data copied from SCrawler (click the top right info button in the main window, then the `Environment` button, then the `Copy` button, and paste the copied text here).** - OS: [e.g. Windows 10, Windows 11] - Architecture: [e.g. x86, x64] - Version: [e.g. 2023.3.5.0] @@ -38,6 +40,7 @@ If applicable, add screenshots to help explain your problem. - ffmpeg version (command `ffmpeg -version`): - yt-dlp version (command `yt-dlp --version`): - gallery-dl version (command `gallery-dl --version`): + - cURL version (command `curl --version`): **Additional context** Add any other context about the problem here. diff --git a/.gitignore b/.gitignore index 2798902..47ade89 100644 --- a/.gitignore +++ b/.gitignore @@ -10,8 +10,7 @@ *.userosscache *.sln.docstates .obsidian/ -ToDo.txt -ToDo.md +BugReporterFormDiscordWebHook.vb # User-specific files (MonoDevelop/Xamarin Studio) *.userprefs diff --git a/Changelog.md b/Changelog.md index 247c90a..1d79ff8 100644 --- a/Changelog.md +++ b/Changelog.md @@ -1,3 +1,91 @@ +# 2023.8.6.0 + +*2023-08-06* + +- Added + - The ability to remove user data and/or download history for redownload + - **Subscription** mode + - Settings to change the program title and information in the program information + - Settings for saving video thumbnail along with the file or in the cache (temporary cache or permanent cache) + - A bug report form to create a bug report or say something nice to the developer :blush: + - Prevent adding site-specific labels when adding to a collection + - Ability to select custom user highlighting in the main window and feed. + - Add a notification to the log if the user is not found on the site + - Added visualization of users download queue + - Ability to set more than one global paths + - Improve user paths changing: now you can also simply move the user/collection to another global location + - Ability to move multiple user/collection to another location + - Download groups: added `Subscription` options + - Download groups: the ability to set the number of users to download + - Auto downloader: new group options + - Auto downloader: additional skip options + - Auto downloader: added force start + - Feed: press `Ctrl+G` to go to a specific page + - Feed: added site icon to post + - Feed: always using `Friendly name` instead of `UserName` if it exists + - Missing posts: the ability to delete all missing posts + - Standalone downloader: add the ability to store download locations and quickly select after + - Standalone downloader: add `Ctrl+O` hotkey to select destination path + - Standalone downloader: add `Alt+O` hotkey to select destination path and save it to download locations + - User editor: ability to hide/show site-specific labels in collection editing mode + - Main window: filters by subscription and user + - Instagram: if the user is not found on the site, SCrawler will check for a new user name + - OnlyFans: handling of `504` and `429` errors + - OnlyFans: the `sec-ch-ua` header is now optional + - OnlyFans: ability to download 'Highlights" and media from chats + - PathPlugin: incorrect detection of path existence + - PornHub: completely rewritten videos parser + - PornHub: now you choose which videos you want to download (uploaded, tagged, private, favorites) + - PornHub: subscription mode + - PornHub: ability to download search queries and search categories + - Reddit: ability to set the number of concurrent downloads + - Reddit: added bearer token (optional) + - Reddit: added OAuth authorization (optional) + - Reddit: options to use the bearer token for the timeline and/or saved posts + - Reddit: option to disable the use of cookies for the timeline + - ThisVid: now you can also download user's favorite videos + - ThisVid: ability to download search queries, search categories and search tags + - ThisVid: subscription mode + - Twitter: new options: `Use the appropriate model`, `New endpoint: search`, `New endpoint: profiles`, `Abort on limit`, `Download already parsed` and `Media Model: allow non-user tweets` + - Twitter: new user option `Force apply` + - xHamster: ability to download search queries, search categories and search tags + - xHamster: subscription mode + - xHamster: pornstars download + - XVideos: ability to download search queries, search categories and search tags + - XVideos: subscription mode + - YouTube: added `Output path: ask for a name` and `Output path: auto add` settings + - YouTube: added the ability to store download locations and quickly select after + - YouTube: subscription mode + - Plugins.Attributes: added `DependentFields` attribute + - Plugins.Attributes: replace `Dependencies` with `Arguments` (`PropertyUpdater` attribute) + - Plugins.IPluginContentProvider: added `Options` and `IsSubscription` properties + - Plugins.ISiteSettings: added `SubscriptionsAllowed` property + - Plugins.ExchangeOptions: added `Options` field + - Plugins: added `ExitException` + - Other improvements +- Updated + - gallery-dl up to version 1.25.8 + - yt-dlp up to version 2023.07.06 + - LibVLCSharp up to 3.7.0 + - VideoLAN up to 3.0.18 +- Fixed + - **TikTok** supported again! + - Auto downloader: excluded labels and sites in default mode are not respected + - Download info: does not remember the last size and location + - Download info: hide unnecessary error + - Feed: `webm` photos not showing + - Search users: incorrect search by name + - OnlyFans: incorrect parsing of username containing dots + - OnlyFans: incorrect error handler + - Reddit: Handling error 502 (Reddit data not downloading) + - RedGifs: incorrect behavior when updating token + - Twitter: gifs are not downloading + - xHamster: some channels cannot be downloaded or are not fully downloaded + - YouTube: re-saving elements when loading a video list + - YouTube: files were not deleted when the delete button was clicked + - YouTube: a bug that caused the video to redownload + - Minor bugs + # 2023.6.19.0 *2023-06-19* diff --git a/ProgramScreenshots/AppYouTube.png b/ProgramScreenshots/AppYouTube.png index e8313ae62d63f8123d3f78f0e15bb0d3270a3b37..afc11d29e02a465c9345585e9f8fede7c3ef31c1 100644 GIT binary patch literal 33782 zcmbrkRa9JCumu_j5S$R)10)cFJ2b)F-JQlYK;stNA;I0Vpo?yK#GJ!2{ z&MJ~3Z>lCp4`CYw3t@TTH*acV(VmPEVSAMCQrgaM-eC6q`@s!5l$gGG6BsEiCamUe zaFY2>4|lLHM7}xQQtr4TU+Sy_EsQE+5$;!Bz!$232r{p;4o%w}DwDI0g%Z}^xbkuw zMV23~IyR1bde&;Y>GmkNJ+hy&R!=65k0*}TPmWI4l=IAzzbMJj6(*?cmZ5^?yutso zK^zg1{P(czJJG=x*eZj^^p@=3TH0%tlMh?z)LYO&|JFj(WdE3dtJ)SDMET#FzOE9W zf};5W-Gj?yx#lrpthJ(f-&4XXlTdm)O?+!gw&|h7E$@b!#Q*()jA69rI{<-~gSU1W z`b)JKijZO3Y;5Vv!T7zV5R?0rPrFfwTHzK_&W z(yewPV+JZ8RTF21C_0B|iBIrYFc-_u?=T(su~~?ODst28HKsZ&<;^o2zT^Ru+t%Zq zO-DPpd{qyc+M|N)fUc>xj+L>~gf=m>g$Xa3i9ge;O9fnB7G(TSVl5QSMD>l$n9JAw zPxbC2>WndNpm3jMN0N8l+d#ZaT=j}O9<+Q`o>|D~9%f5$BK4i%C-wV0|6CR{>m&85 zZ8HXr??XYQFSPY{;ipdbx0=Q$(1g-}Sy_Zj0x~|AXT`H!Lz*@@k=NUu*|nnHCf2s& z-*5GA1?`adz?ENHD;%E6FJ{o0Fwpx8**xeV~KN1tYThH6v z))VbiU0f9QK2>+J6%*~fFro1gb(J7C-h5rSV8d_M500%rbrP4id7yGZyAn@UU6=&W ziDXXTG0k1j^g>5%LyMTFn~&=Vut0H3EA)Pazf@#i>7h9D*QHmAr9_)ARV=inZaHmt z25_2N1wynJ*K{n-G)kg~8TY4Rg&_jrMQ%G7t(qpfz!4 zpBO4dXX7)oXQIF--beH-Vb;y+5bsvI@k(}Hhi9lGU5Omi&*9)5_-5Hj#|bi$%pb~1 zZBAxsGthmHN5$f*0fE0DppL&8xcQ)Qftr6WabN%9tGoV(`wXEwHXAH&KkL)%wC>Z*3I6p@SY(yjz zO*3y!7et4hWweahY4k-ETF?J48hk3@*Y-cl?xR_MEfjJ)A%>LUoez-IxpXpbCY2X0 z(as#l+uU9SD4K$4)#kpvKH8 zS7y!X=GrbF>A)3X=O63atvknfZ06_mnc6xBKyW8}iB@sVS>7ksRjR=3;iTP$q)3Sr z#tO#P+JqxNVPI9G9;Mm+Q3UYB^u;Hy)U}IaknW6UPCw*dAju4kFQ{b$UK5}!wEWfr z$>qAFH<%!T5xOV$0t!Xp0cA>j`{?-{OoQeS+ zlj6^-A8Dah83&CDooux3tv7h4!Z)Zop|?%e%;mgD!HLqaLq$U+Z#?Iq_4-a%5jqaS zC!Ln5^8n7INS4 z8WW^jHXny!^U!kFS5{}Ifk(UC9&hBT1p!ymLC{^MQM4YCY&vmD22RS4<3R?gUw6Xd z!C-wWz>(>CC1AX%E_=T#QFrkHwVal_E5~k5zuA28O9g|Q4#HeT#`h9~>g9kYSrxoI z&Xws^jm%xpU{j5&VFAM{ps}y)l+kGIIp35Y)qCwJw;~59 zHFNx|<4z_+_uNcR$!)0W1AVGyWN3LN%T+iN+PB&E4?XLoC0Rthx>z~;22_kk|uDj&<0y0R5#ekOwD6&or%dbTNOqh)`njoQ(cpP z5CC)PH0x=Pn%awan*aDp6A8S~pNs`e>8fxVCd&lE5vR5Q(hOZQB%;>C(XmlfT3{K!sHuHT>a z4zHn+k>34mznBfbSN*1#9olT~0MSs)txyVIrB(MAf`^jBWm!%#s(Ir*(vP;-_HHrpf;5wl zNppOq=?0%FpDV|0R-$qj)oG*Cr|!yy%)^_ff{7%5_;8t}U5g|uJEc@4Q%^r_BX2<4 z(^>F#iM8LnzZc|Rnl$~bRF3S}GRx5C22UXq5X^2dvAHuGUnWEyY%~s-?nNh6i2v*UG~33lu(Vt@AY5O$Fbuoqi1N<;kHgE2Hs!q;MS`zS z^|tyClO-N*hh_;jsuP9^WPMn}&li0|2v4pjaT-h8H}vN|CLF#x0IV*X_D%yay7tn* zj0`>j`llAJ^G)F`|A`Gh=B8pnRsF=#z+2}5#xiX4cqaL3zd}I5|ok`Z5 zS6_FJ&%;gmhmiyK&>-CB}D1_ph&qnmsidk|yuLj1IQ|LpUgYhI5J@9B3LKv@0AR4X_QDCSka>vO)UQ?wyI zI-F=Wr5$f3sk? zj|ez)W^)QbIP0m35)@B)M4KsE7oxA0KEEW5b)-vXv6RDu zp8@sPng;3D2X2qYLhi2y2yb$tze0xR5^o+%wX}mN$3{@&t49;|(`XF55$EU%pak%pxQqLO!~RrmpjrgT!nW? z7dpr|uYczanDM#1eURoJ5d->kql@lE_*)K&5#`=C$D~&PFiMLUmk*uc~32Dkpu#r`0 zrFXUl?aTVUUa2m*cH+KD(X&7p_0BmpsvkZ$?|a8Yk@*?TkF6XK)Wg|m_(htHc8Zw% z;X;q%3u6U30M9qC4(9C=-B$zP-p=pY$f~vy%oL@Umc1!1J))uQ*K-zKm`u-k)znD2 z^|44Wykt^gikWq~828YzEA0?ilDVN$795!yZmQu93>a-#Nrd8UBhq#Z89Kg?Be6K# zOne;6NJF$B*rAV4NE-Ir9F2;GMj!ZH45%&&co7*^@E?kKY!6_N@;ZsRjH;7)7D!s@ zpmM9Eg63pUg{HeQOgDHY7{x&{NT-Jruc2=l^oUdImSQj zYBXH_FMV(hI`8+=y@eH2Tg@&REWJ<(MJw;d^9E9(Upvl9`t+1@73yO;{S}xh4!0F` z=ZBk$OK~T5M0Ax$8eQ&A_3wp}n@$K-R8Idudb)nrUMUt7^NW^i%&>aRGq$uvix`EL z5@vZ53X{Pw>C&Yi3mmkrJP4Waqsz#Yuxuw6E$WKthmuN%%*z)z5f-{(` z&0}9A&aQr-kx3>z|7+RI`-fS&iY#!urQiG4k&cxrveT|R@=mWKM(^xx3-xjn zc`ZWB2m#q<>fI#u(wlYa;#0>G$5rX-;EV;~o|{6y9|!Yv%YKqwu)1vGA)=-PXrS_N z+qCLcRd9_(_%E@IyiiF+qwnN10ZV7{)1EhH8-DVK&yr*ZI{~`FSFf zIW(?i)NKxPYfAfLqJRc=tc%y_SwfnD4QESvFxLU(2#N><8STg z2a9BUCC%~*%Sb>gURUgWGczA#cWm^~?KF{VxX_|8d8RmK*53cdY2@a-m=*ZFOOLk_ zawX)h__xp>&b~@37aZ}qxk4s&TUmDv$bH6Hsd7ZY0=;J&^yzd()0}$#>Xb@ALf`|R zX}S)$LdU>JtSqiz3BpGKQ@<-9l28ld-%? zv|eg~o^CR;VG$ZKth1vT_|jgjE-3#&@SH^?Kr`}ZGwH8iZO+wWhzJ$_waO{B zBw!fefqhK;4ctyxH)S0@`Rv9T8zLEvHJ?DvvJeBhScH-%qoy9xSTmTp0}fj~Ex*^1 zL&-|s#djd-*qKp0-5Z9rYPuB=j0xf$I6=!_=MqT(myMb=(@suTEd7jJHcJ+G}ns6A#<1@Tnovv;v2}sh`_J0h>~qH3e35 z2evCs7`jci!sg~hU(cnorQ>WQ7ns>qP*J`aGjwbFtpCYJnyk-UxU1DmRSPQ1X|{KF;o z4Wp5SnXuT6a#ZK(X6?b4jzHtSIzjg0PBwxMP6+zo)6h!!Z!x5;@zrGdbIdg39{jE@ zeW6D(R`(Z0(|G4*Xo|^r0jI%!D;+HE^)|&;1#`Z zy93$)_sFY4WZ0EGrgFR97ZnQZ#V9Mh{w6FN6iPc?s<&8A!3D&CCt>NcSDTZ@+$GoZ zsJ$+m%w(nC7?(xy&0Xn+0H>f_Bc0np!rHn_hVG4Y*A~t5t!8J_#Bu)w^X!bFQ8BU! z9beb`$w{Mdjlg<5s`DVnWC02B9p9Jlv~2Gva4G45_q1w%PM4UI@O4| zJTEk*MOPGU9)sR7!Q{;k6vc57XUPVm?TanAps}N6g{XMIP-$X$@&?sI{)NC7ZjGfg zNwCW`3<$>q;PsWu-e&5hJH4=YG}yY&+%(fFnkFYZukTWry-g=>Ws`1gDlnuN!T_lZ za`3xvI)lzSx$cUkLooRR{VxX9vQs0mjhRG(T7UddKOk&)tKUW@QaqturdtI*IVkgG z9Zs|Yyo^Xib&#Rm>CQopowOJA*_9A^TES`dXn4#q;hLA@U2MwjQXbG@!+x&BoQ7`MG$`Oq|{=}?RksL9yC~Z&hAzPb-UYHo)w@e+;*U< zDj7lLa}6%L^ACv8U0V>_df|I0ocu3SvjPkJx*2pDq-0w??-QG7Ez+H50kl?`?_@rL z()a2vU3Mm{IAHxMFu}!R?z5?A#h?%EEyj80^78)q7V`HP+guDCrz1g#G8w=2@4)H_YA)UhVtksT*m1vF{zW|<1^AvkeMj><_jWuscl~fhE|s^f0O-M8GzS2^J<2?S|fAwDgdSz9&VMt zzHVG!oZUPM_?({yV%3Q%F4eW{9)?>mtGzCI`508=`$%jP4;$N>2v8zrTBv8!qbdlymh?0nH_K-Nfn_wFpH zRU2JJb#g~nL*XV;x=L=wF`H=1#i1n;{AZe+EoqKwnf1H1uy)zUmfL>x%v+ z5ocZbSzqIrXTih3 zFA%*7Dqwn!@i5fmY@@4sZoZtA7UILCsnOsxI2?JcTy}ML2m40;2ZIY#{oXp|_!BLy z#$aUr=}NQGSSVm4lC`zgofT7C%P6^|xk{CmA%jc)M%O3Ju0!EP_fcIBR+Tbp)qFI} zi5IESgSBx=iL4DITDc-GSAM>!WVzdUz+3Ws0POs|tJ{*-Y&Dyc=>jO3=FEV0N62dG zA_6l{J~nWSVS<>UkqBV>h1H7*-wP2L9DkuQQ>dSjx zR6l*!8|gJ@Xv!WKp7kQ_`RS0?GT0D{0d51|F1|dU#;>-tGyUIjq^(1E-@bjj1i0=x ze8wa%W4W8T=&RdhhCUB=4TbOw9|U5VCQqq7NV>on%i!r14aPyOZ1M!_8E+4{_r~tf z>Vw+Qx9S!|nwZ9`1-2^$-gCS*<`MmY^+~%*1ZZjW!{h9kWhP<$PZ?T8I&|qSKy|13 zJs8HRmk!W;0hwG0a5RIDs@%gJ{MDURm za%0`@b=OILlwIA`D@x%c>pl|TaQv@dVbH4ggY_B=BEz`N6Yn z!lBi_s(+K@U-!6B&Hw*Q*Z;Tuta~hU=NepBqE${jqW+2;t;;3e7~-OwYtA`qJ^kJV zgE-G~+p}c4gbCVg$uMG_Yd_;@IbFv}OvLH$AB!WvF2XF^jY$TZy@{&g>Vt=oRkh6z;zgttF$KF0~ z9j}m(!-canI)w_Oy-ith?<;g6)bm;H8(9C4q#;pL#}yKokEgeGytTa@m4n$Cc1RXL z7eDxsk)AAd@Xq9}^!ck>=3;23B7wPaYKMP9}nP-T*(Q#d&7WnnO21U}hDDlVGp;MfHAO5A8 z!8OOLSWi2l;)!zo@%(MV^WV4LTJ;g`6+v!-6=BVSWkFcbS+U<>PURv`JnVVkij zQ_Jz|Z!NZ>Ef2(sKn}DI;@Ge#Rg-c@&wnE;$Vv8>0Ffztk++6Jr+`Mp-T*~$wM!JS zSpL98M+tptzcU4HMKU? zkeSJm{~FcUN$>L7N-c*S&R&&axb~3-aAF>YK=e4OcVq(vZwFboHc=RsTT!f5ER1EB z84B!E!!b%{YJ8s&w!|tHvm!7a?|?J8Z>9LX-|NPZC9cu_3*~1AZCKz+l(MXgw#9>M5_(q>Pr}U>$XdWL{!w8y-8( zXmomlOyK8*5UJ#LvQDO+qKXK>-s{9OJ|#(1JfGW^(OKpQtwnaF!K7hvBK=p#T2!xvz!^NZ&-ZN)5k8e$3<#r| zXyr*?R8N2j6%VWm|wr4)fMO zxR1E{+oIEQ<=BDk4z?&q6aGA}hc4d9I0v)23U~*;4=5Yoe1lXqnT-ErpnSL4Mi(93 zvou|NbAtiRF}?y@Qe|=5D`R0`SVs;5SXivyP?s06)LLP(x8c`-8h)hv!Dr|y2Fa!m zpChNhu|E?2MVt&ZybJz*NroX?%!9r2&^wYVD97m4Ggd}>ocXR-_}~v0;RMt3<~BP# z8Q++Y(&qbyyE`!p>;tM^u+ie;R!UYVARRUi6 zb$cV+ves-!HDs`z3!XH+yRU-$SZ6jQ-3*A}u9IiTOo2`@OCI>Hsizc&v{qAOZ)yR1hu{s z+(!ggi|0H-2PJtt?%`?1)89;DlC!w6O3IRma@1Rfn48NR8!aQqM-k`cBD-LqL-SG{ zsT&$>QK@aPp%psaOJ46u+f~F`NZt@^pwu{$p^L^dS+1Gkudc)dW;%akuzl>F=0csP znq6AF^KVtJL3V!LJWWMVtfu_#b`(1=AdQSp7;7)gK2-?Bx<4tURYg&f!X9`Pk**V zNju!hxAzOW>pSQf^u~;!w(vN#x%os<$MQy&c42!-BJ9|hjOa$60y2Ij!r86@_Ct6` zuvhiGRgBCw2#U;w&#l>s?FIUbjvxfCaWNg@VMk~L&2Tkt$bsp)f`6OHBbt2sAf0Pc z4G!sH#T!0CU8T%IC#W~oG%xt^P12-63 zC2l^?#xTC&=sN^RTx%SHpQjyo^#HMryN;ex}(jKkf<@4LI&*C(Q=OkQGgJ5pmPM5Pe- zprG8vyb6}{^+CbuoMRc|;;D3FVvu^rt6l@_sXf~c=lQ&= z0c{9W;P)ulXSYYe<{~;v+>F_u?QfkgEZOy&Ghjm@ZuoqV#A;Ox3huIZZ%L@VS8Fgw z=1VYfWU&>#$!+eel5#c4L&j<_(RF4+YmMKw@HYI2&xF&{)9LLlphO=hiF_D0GF^kG z;Is;hb2-Wd<`I46aEK@}aQ*wIZPfkpn%>*>mEAOpH%56zqPIR8NA3h;YFgr< zG!CBye^Nd(%IMS;YL;^xb^nr!&Id+YOkn8p5mgM*j+|IkIx?PI>#l2 z#}uasJu{G(uCLa6j*4NunZOx~V(^JmmeqHJFzR?WfcHXRNDG2>$ev&0A;WB&@;<=h z;zcWMl_)aQwYQg&jFn~#?^l*dJJbhxJB^~d)B~fzg}X1|qT~C)CYz}#!@yVt!Qw>#k4G#M<$3ZYSU|sY_@COCN}=gL>lDddGWAvq^x3J8ewh4O`)adTGFmLCmbkW_ z?R<&5eC$_L#@zvlx1>B8w^B{dxSciI;2&E#70Yg1 z{^F$f+cn&GhcSK}?Ibp@NuMyQ&7rPY)5g<}axk?h?NPN#&rbN}n%|xy*#rA#tyAyJ zr=QIuapY3>6W$jt1P%wnx5$Y>{+F zA6P6^$dYJou&0;c))mIL_SfMnGcn$8PJPgS8k?FLB=iBVPIOx zTJa}1Xi-oQa!3>=jYB>&5#CYg_q4VR*4&(9qNj7dp{;NbOkx&G8*rhqM~uj^87{Y$(_^ES{&>hVnA8g ztEaIoRz{RC3#TOFN`_eK;FY%WkzHYFOU~=~O5qgz_-TKKex9Hz&5xTl!7|pY=keCh z@z}JQx=lgYSh(`b0(x=XL5zR9xP6BunH0QIS0A1NOV>09Y8ID07y5=l^)b;)>8-+=_JNSxxtH$ zw&eKsX#v9dCSp0x!KL+d=qEaP!7ga(HSA3ea5#K0On1(8X9~y+RHV@2`P9Am4W0(S zqaTQTY@7dnbCsN$&!vB$NAA{Zqc6oz9bAjo*ku z7tjfEnNSAjqlM;sc}TSc5DwWNjb;k6wD_9n@v#nn?ASLUyWjzVYG|i>7?9FRYFCSi z!ChIRp%I-3Z7K#P9v93j#V{qezdT9go-SRYcd>|oRGg}Ud1=k+___?{PJ?kaJYHIs z))Qq)O#?`{vWjyD6sK?xMaNnD1_jDjYIlS3h1R=duVXV@ZR3`sS=c^7%JdR9Kz*8xvGS1zCCooFE z)uYwCK4%l*#salLi7F2oYlCjVg&Mg zYus%ZB*sxhx+p2nk2f*d3D6o6UWkLDe<3>$us9}kk{Y8^lhDl)MR+i7?eM`%;QLJV zw!D)Y_w1c5;cvHXGZC&9D&SqDuGC|+rPD<#{o|;%i&VpQ8`SFmHX}+mH@XnnRiR@_ z=HLW3CdOA9`3Qj6LpGQr+4e~+R8CZ-E0K_$2M-v6+4E{KWBtAH7BvSu+6)4|#79^ZNo%ys+b}onGE;AEuidy@0W)nf zQb%Ew0PC%e88I#WKPLDW6!j<1f5dXj3TNJpo6XTmVJ8%rUG9aOU3aV%m3E$3*$0mC z;DOAf%i>=@8T9+cSs8kzzV_6{t4ap*SXmfKGf2@vcIOfYjt6f81sXf-^7_uI#hM>h$ew{tOd>N zNWrZ}Mg@F;rurY1>6F%KT>geBSP~O&)A!| zYtz$WE&q3(vmZhn5@x#>fr*(pwOq*TP3o1KulUU~Txg;EN(^L&6ML{pCl#d~^XtOq z7lf8nwOGD4;DnFG@AcQQklO(v&3I;nOME^{V=T7{SO;kC;ATro5mmZnALd{aB<1$@ zQ$utAW{d{m>TmLk%nHaz3k?IYrf94XH|e(;Qi6$MIMw}{Cm1jS zS`1xb67F?Qs5tn+^k-XVwX@=f%Vrd`FU;qkJ|$>Zn|C!NjeBIZkstQw>BRDE;Wott z%r^6n@7HaAdMJHC&rq^4Jg`l+?;f={)xvLZc;y~cxc$b7sE0R#f&F0`uc(dc`%a?+ zb>hB3aNH6T#?7*;%f{Sb;VDS?QLdhU&9ltI?f1o3eGip8UJE`{Yif(m&cSHUie323 z1}3^$D<6NcB8(;9gOYWNGBEg2JD+T=c7Co1fSHCt=HLJCou z!<3qzpTR>6hVKq{ZGf7=%ZnGj{I*ro2;0QkRIBZ8pTtYh&W|G@IVi|y0E|p;q#U65$+ z9P8ZwQHtJGoC>_#rFalfRn$S0$FE0eb3seyt1dp*g6~Bh<%;&{c18O^Y4E@7qa(}~ zEDYzS^bINvR;o_h$o-kxI^bj8r9PK}!C&C5Tw8{hFvmUFMrBtDCLQz1ZN@hX(k7N9 zIH%Re380}>#K1&{Z&!_}no0bXL7kJH?7$JO?c}9r;($ggFbg|AZO>z#031 zp+IQgnh`!L7&#@W=H?h#^=kdx`54J-MarEoca->V&;MxeVLnW@d7&^SLos_ecozRu(?R_d10bn0hY3f(4 zOQf2qyKpW~WlXsJnJGyoKxi0^uvNVBP+mz_&C1U3$zMwHg}(R?r{<9OcuJjSE>W!WT+K&>>+|D?bh^Or%d3dM zQO&+pq8Z1dp5~NR7c>b*-H2fRzS?FHecMVU5;%36-V)!p?i{v1n5`STTdn1>*T+cL z+8?OeA2|>_e}B|N03Se7!_L@0g!_1!EGOVH3=efr=hN0)_e(SIc_7g%W(^!x6t?() zI0g8@ADXe4e&1KB)=;(LxQ<8uz9*Zh_1jgdAe?zS%)iFcWJvNU7)&LMu)KA0QbX$# z17!#COE_2z2urz*E;w_| zrfZeNy_2QbA=l2oU)JJl?VsO>eSV;#s(QD&;?*;|rr}aPrv|2?O{iK-jrd`~1fQ9R z401hP*CIU#ZaDbp-a>1vB*d*pF-uTfxmMdO$2jJC^Si>u#)t$PCHa7GY%MOr13yOV z(pR3Nnh`z|*_o_j?7}X(s714oPQb=AK%Fsjs=N;wWI0D-oH;;Qw2zK{OcrSToX=u4 z;?A(17_Pm-1)QiN({kC%IETkHuN2r6Bq>>+fFH4#&%WB)!gdoHn;{(R8k+un6nGl0}7-W^S~ji42%s z#Jv6b33B-J4#`{7B~G)$qwJ?ZUxD+e4B);*VT?Bn$MO~h%z~y}{V=W*`b7Jtl+5J| z#5bS0M(+rr5ZGxJ%zL9wYyGb)VX-iWOhY_6RF(hn#tsH3#w+wb*h2LfjnLXTboEw4 z!uJQ>NY&>)k6k>jVkBuRw2ir~K51o-Rgnj(>s-iAj|M5?c3uh_H>e;H*3-0SH9t7v zwk*#s*|3}4YrYL%%}VCMjQa=D(AMn|)RyV^cAzMrsqrz5eE@vKSVG}c7Rx!6r2(0? zV(0!lY@4j6Y178>Sl!BKq8-Bf0Du{}7N$0+Xaw|&VQ1mjVMC1P59PD7LTJTc?`K>z@qU9HW2{>ygq%3$6}8h_&3xt>$wma`(R9;(U`Kq zss2Y>GBum$qp|0H%y*DN_w~>Bda=>{R%jNaU-d~yM(28el-)oITTyg)+kj6k7b#~j zBaLEKV(@FD@md3`1|QFMdMxpFdfE7SO)k-?E&v$qMF6tH3pU6cFcIoEMUOy{obDDN zq=jFbCOgzh?8KyZwI3*(v8dU561Uw*k8tKI`t!GpGKK6kFg*8E>Y8iN@{rxBKEKA> zoi-}=vNuJFS?+_dgPen5f!KrbcG}cpChxmnR zWbGKiHswQLf`FY7q=G4pyDV74RbD)YUHl=$zs19ceIiRcWM^t^%1i0XHyFO3o990q zXO!ln$dN@E@0noAVv%Thp{`YK9UDhqBO88dMDx!V^{a?N9VqU5_#-AOJ2#m?s8JQ= zsV*QfQ>M<+VS;h&(}l^UUJ~tcwjePeiSfPMAG?#S>33cyYYM=av@TBaPlki8x7}`( zfj|eOZH1>_>{{G5Tj@F$v+p20pVe0(8tbIHb{yzvH))%( zA%I3N5oD}IK!AR@^P_NBIEB52Qzh>kE1(xA9_gKN?`G9vD-gfQF8#-K1Il8Z6@$tG zRv%b>SgVN#o1Orxr{7BSXWB2OHpQ1wYbs5Jf3`XatoE|8HV@jvAF#Btg9pk|r)U%P ztgPU6fZI%_QeFtjq0x&>_Jrhn(ZP=VwI)V}a>%!Xi^vpmk#^CX`JP5I{hdBB=BKws?JJ2iew(&&B3lOH;|px7DON>)2t_+QxB?FUpsAdY7P#D z3@l(Y`5M&RxCA#|i(_El7P(yYhB2|$G{+A7IcI8N@1&@r4cRvO&S!gg9LTu#{F8_% z2w|02; zzkl=$0SQe)Vh90j*d**+!0F!blvXFqY0NXxy+i6n4-PcR8Ja(v%fA*`zM&q)d77wT zIec;f^%7$Lp}D>Nu)P&t>(kE4ONrd~@GeKQ1g*C(%lnGxg+(jIl&>KK6c+Bc0u@|5iwEVVFh zX>M4}b7;xETM3dUt9ynn*05K(k;%#0jdrcD(lr!nZXJVt+PJ=>qXubKe|HZK>0RpL zv=v`;zPlE~x?@>f5eGUI&$n;@K3K#DIDVpe|Lzggz2%$v-Ss;Q6J})hg+JxcF|$<*A(71vCRb0bDaTXT9pGz;J0`oSLT6nBmrHTlTDjLA zR;@TNJetPjz!RtQFJE_NHU-k|Dx62hk3RTpd;Pi1jff(;T%s+7DDY`q-9Lm#3c^^p znR?N-fy+k!PkZ0})zlVsDl9cteLPxK|`HoP=}OV~L1hkUI!srV=ZbXgl;(w@h%3FmFEVS!6)t z;u1w+>-F+6bm7pY_l-E7b(Aao2Vxx+!cM}FOr0J+Y;XfWR108Y`jU-~(E;VOqgBG; zWoETx%z?H>V`ozJsimS5VfqKt z$^6+^p`rCMKBiR9VyPq62H?iO<{{LhNJ8YaDy%^RJhnJR?RTcIxoHxKx(zfv$N$?J zd#{I%ur(Y$5S|j#W*bhl6d{`gtp$ps)+rS%*XHQ$#PyzV4Pxcty1>IXE0Tq?#WZ80 zE+fCq_+%~=8cuxSE_weTcPGgs$z?D(cx$o<*Q2fDf@qi>QNK;n zMfs?}eP^#5M+F^84+GV&-5j^b0?1w|6WwQve(TpzbQz-DoEv-uNwnWwM&LlE%f}WP z*mu!IUt|wHos4f4YYXt~#44)H(x0Ao5+8R()C8=kwM#(Qm3jDDA4mx)OjB5$h0u63 zxN`U{@skv;v*r{wvP)K<%io8Cn7Znv)6Nzx7oc>0kn&~5-%);VtCOogOM1CDOPk*B zYdbqKP6Ne)r(l!nicZD@!ucaRaq@2scvu>M&q?vRg8ls7Y^?^py`2NSGqoYw-3+M6 z)Z9b}KES#nRgjU9a+J@si7_A4A2!p* zSm$L*%kuNvLll0P^Y91-R=d7(A*y<9@}2QHODGr`ZdsNgOtw`^{#DSK>|^0ccOX=n znh_PcRqdB7)WobAO(MNrcGu)%g`3D74S<6u#{CdUiO~iyj9Y`TY8&>Z`r}aVz9&R{ z^@?Q>Af~}B8Nz}L6Z||^r4iq9%APNML7}T({80t54+=y{5HBi7y|x#)*WUJ(1{JjM zwFAM3WWaqS3RbLaKx|rv5m`{tySVmr=fAn}^QpjdRX^hQ759_kr(&ffmh~!Sz}uq< z5`=Ud0&>O+ec3O( zz|}hE?Ab4Pn=Bzrwwia#qhs5B@rIFTZ#Mt~qhZr_=@Azk9)3U`rIyEP@+bLWSt@1J z8u^upiN3`kBW1*81c-WUO66bEn^BlWIA}Kn0$E_=YUv?FbWy9Jr)oKF#NR75u*+}D z$7+3FMJsKFMqqgvE9jGQFw#U6FngJNen*X%fIxcwc0*`)9k`P^# zhLxo_CG&6*>};IFrxTo#CHonl=GdXwFb%kEa4)VJAT~+%ha?dc()J{6$iaZT;}6=p zCy)dyVGg3!T(euvDgivXFr^q26KpB+iO}xuR*Zp!UWD-stv7fMyc7_NSQ2}{+R_MZ z$>?0Od0}+#w`zQCDYcdw5rQ<O8-}>_NSq3Y)TIZ%${g8e|J)4rJMc|b(y5YC??Pb1ZqQj5dWnXFY9lo%oDkCzxj&e)-Pz&iwX&+MiOIq*7?drB zpnQPMGrRfdliq=9*I{wn6cKWEg=Z!%tPVtWJI`8G{{m94mTC}?3TZS#Y^q4oTEIRy zZhKl`)|xTzbN5w|g>C4MbxKQHP{h>_b4ybYfh;>Sf1{u@R{Z+r+#<=XT=>=u6o=Wn zCGx{YRPim+*v~|OK3+~Z^>Gk!JdQDPUf4DR7^YHt1)iF`dqcb*`h?p;yLGN> zx|@NaBM7zmR_wt9ie zD+R{qW|?38r15U?UVh!gZO`i78y~`Z!D2`4_lpcPhEDr2 z{k&{}A^WfwJKi52Imzry+v5=*DIPeY`-DdUx7Qa;&wKELuHCy&*{Kfqw2W3(suzUY zKm^0~Ss`X`7kE1z^xhHLg*asx$iGH|rMqbG%lF3mW{I|rsh-&EiKZ(dW5IMEtG$mt z?vg>coEMo)BeNT`jfg&qUj6zPfUH!%kVLXb2a9pC1ft}+ldY?cHECxRx&ATy6`umw z*@nNSP8x_V)7gF?ua71=`s%@7V;SnVkTKSoM*b}@gSVrS`+4LCA=Vt`#8`svZG7J< zHxr_1m2iq2E=oGqvu?Q4m^KBH;#C_EwX#R#%*u}N^z5E~PARzlwW>BeumGf`%}*K} zq@jvP#_7(rdcZ;32+?77K-Aer1ypr7I-PcZGXz%UW?*TG(t+cn*c!ZbOdJBRBx4A> zRBM?ICsMU<>T($wIOCwPzj*PE_CpRwt1Tzsz>Y8vtVs~1_$8QJ6-as@8%cc-~oG+|D&r9mP{v70&<(AAaN4whUVJsJb zHXGO8s;+5m5o_W1cF0iYtu5hZCuY9&q3&(9JYLQc?ng-Xo}y*4!KfJcd~(OXL$hrG zhu9VvPH3p5t!=QmIi=-OOnpMYW-5W6wpeyYGq8l3c2yP&>ywpvz{jbVxn2`qcn2%d zkcAAMrnFZIXMcK{Bqfv6M)3y}6^*AZI<&=#r3Bvt!-powtIWK_r{f}ESAH3QiA5Z) zj`vkA4WaEe-r8v=f#velWic&XH9Fqf_~mKt!R=OBh!nRV&k4aQYgC+O2Vj#{>Tzbr z-txf)R-t*!C~^+3){eLu-XPM@O1r95Mb|+y4iE|rGuC_eEKyhQ>2M{kmm5t??1JoA zg|D7RZq{#Z!@bDM-MYR4?@!cT(7Nsjv+{T#)Ff~z8YUH)Qy7^pAe_t4^1 zqsdTs2ST`ovBH9*w_vEYy3XGnZM@a5$< zE>=?jKS72=YZFKli9wa4u{b4Bc=zt6-@oU#%&r_{Vva-Z?2Kq>h4s(k7Le_Cs&%6MV3xe@ zYWqL0%d*7r(tZ%b64{Or!jd?2@H04E`f2#4DHgZCdsCfTP_4JSHjR5w0SFf`H;2xN zSq$z9F@VEVLXyB@hz471y}SpAG*=m9_P!+}ZK&pcW^Tt*`au&ytW+92~woqVJJJp;k zQE*;{#7$efv34cb{GJ`k+73sN9P4EFci84~g`?GTSZ=k@90EHp!-hx(^SOzOtR7KS zH6$wzx2;`&tiKzu$TaDB-O^oH&+4PsoE?+Ie5L3jqa@?~j$xKKukV@3TBHC%*q>xP zaj+Xz$0^)o#d+qS9Tb%!=CrdcsXvzhDKm?zvL6@bV32&wEZfT5KR`!*b<&&PQBBQA z5d>N2<}FgEs&lZ%xqq&(X=w@JdVcnX01vh+IreYc-ECViUfU*`X^?cZnxGXx!*+`a z%s$k((D1(!f~2&Pb4auUL`;a*?Gb^^J3=7P9K$nKR**-h{hR&OxT9N49+nPt@%$j1 zMYa{3;llF%Vap_bHG)4!s^J}Nc)29jCPh33Zw_^8I#xu2_fcipwr?Hy65^< zrUOiO%dLVl)^=9jY|Z_AsYe*KSP7YBobEyOyH-~f5c_bHFB@A2QVQ6>D$EFlQ|sk$ z9V~hjT%-fixYN^GVck89b{WiL!|hU-dc?BnHvai_b+2FdkytLYP_!)+Aj@O`zkTF? z9^0+q_#d_Tn`-s+z;pGMq&Mj)v7|a**B#qM4QFO1e-(dttv<85eRtdRJtbnWKv`o+ zdw~!9e0*cDdtY9e$NvMW zn>*VvZ=bgR`{*_$B&1*f_!6DIH#!L;Vp-yjb5}}$U290f)@8%0cMxyO7F@~VC51=*C-PF`$6yU2cW0}s1WWlOe=A>H@DM5kNf-E>`@&U>~sRwi)ub5r+IRsUy z1MDWkmNy|TwgZU3<*Hc6lha^}#!SZp`sg#rf+HC5aJSela>#7Q*n4(Pn5j*_1jjz1 zB!U~At!zA)fd!FnFAw6@^Q;HGbS%@SF|W6VO;@2oUbs)5K7V{R1Vqh`<1$c6A6D;$ zysnhSbBt3wsBq?;KmaoWy>ku1&JK@0hs32}={C)c#Ie7i#}*OmiaYd28)N8}f~KY4w;Hu3fu#G_TufjxT?*GIo9IP_JJv1Sq7 z)$Y(o^g1=@PE2UH%V$WRV*Rput>m1LeME=7;ilDI@b`+R$rKC`DInCpjTnvWk4)tx zQmatVXjA)xMoDi=w5c@^arlZ?UH*J)E9OQ(N16eP1g2;=*#oB;#Y5_^RiCg(Vou;F zg8WQgpi`L8o1AtYRyO(p#S=w=LZ!tsIgL3dnvM zsrBkHfq-L!i~v!ICV4E=s5~~V@#{}`WwhGe71iwNx^M2qv6>Q^afRIWVQZX7o;+3mbc0p^Yf?Gv@V$Y2aw-1E zOIMUpr-&%OfV_~icl6#ImNV0}v8ML3A8v%`O2f&NmEaB+e7`-;+2|&C$?sZaVAY)w z{IkMg)TJLdYxd7EBmsR4anN`XCDfk)qgxv=z4p_YA;&)?|3QY!dqsYg}_i&#xH#vxNDfWP`!(ys(KB?GNPCpJy(_3|Mrb~A) zjjc_fL;0knHt9A{+G`fY&>hV5u%J>R>mBp0eFtsqqc8S>qovM@+B3DGzRaw`{HMXn z%7A%W8Pvg}D26*Q&qR~JT*K#(&PuVl3$L!eZk=EeJ;1sx%FF>@O3RxFNR19;SV6OG zG@DcuA>W?{@rZL#LNI_;Ci5OXZWoqk2_kHRd$VzADLPGGs|ke~4tmyx^mubD9uJor z#!Usqk2V;RdweP;KG=?t%YG%Ni1mudjw%?1A)O4Mk4Ra_r9T5n|?&#DG8`y3d~x_lDYuRqxDOY$lxvyo|k(YvBCbI&jc%0olL(?2+g4woT`6 z>(B|tVud~cOvx=fhpI*R?qfFWN(GpeCYdb21rR>F!VT%o;gif8Uz{#!WA!_ur)t&Z zzC=BSR5aqbebwgWBd}3WEXFjL3;ZhVvHc*{KqO8%YpGWQb%y0V>iy=C{+vg5y@5B! z!7IGJbR<)~3unIH2U4BW7{_dTW%{yNdR)2`lg8xX7g}`QN;9uDn^S+H&mnqiE!tY; z7}NZJ6 z&9rmlnQy)iPn|qP)NxW+QE@ZhuE^Vpx&n~HhR`F`17lQ?B?tXC;ASFG9PAGO4OLYN zZq`tDTDg)>Z#%}1HE0d*-iTej2vOH=@DqXIkObHur#AtU#6mbkidSJV)zZNY8K*JT zrApxZq;iN#K`F@Ya$8$7=lOagj^rAWxZYKVF*c7! zg7m5|#pSVpVvjF1lr!dLCZ|m*;rI+;)0Dt3+LhSp8T!k%7UxrZ)Y_srO%@{DrS zjw!YjU?1lsqN}HxnHRj`F_^^%P*-39&qn`BPUpu%2PqSH&fd=5^QR}krWQ{+E;~f< zFNr)JUg3w5u4&mSva$)j;20JGZ%;UNd9p%0EEAFSZA7%z80 zwA;OihciXO#2Te~lZckz+o1s|O33CX7ROQ?XuxmWCA;RoCGa-8P(*WR0e=bT z8GAZ1*|QGAxpRV!#7$php3{abF+U4ijWc9EEW73r-{F5aB1!_C$bNcJKHzvmCPanX zS7?&2J>5G-ekORv`6dcI-$s1VmR&$e3a_(!-b zRRFs-j1_bhAl=mNAZ33r%L<#fpPx_hEj_(z*lVh>V&^JDhHs(NHtj({f-$;GbKO)y zH*?G)*>v!$)2@bakT9bZp_WM!O5x;@kDxF)DLnK00&C@5=c0$YVBOXZ5U~Gyj&t(I z;tP}%ISY>Ai@B!b7ob`7;1*dEWo2tCjJS z%z2Z?uDAyQ@*F6;{>vHRzmHinY$Q9EiS7C-Xz8r{N=PkYuX ze5)GtfiC45jOEeMqXnM@2DvYv{%F%-U|xI~#CxCt8~roIvsev$Pn-!c>Rve%H+hnI z&JenR)wk^VhdOh50%qpZ6$B@V>H`s179kqDhZ@qyRkr zArY^ZYwEct>h;1GL*{BQ-6c(#=0Z&o2G=pfB201y~sRxI|l z>X>e}!7SsBjArR++CirA)kzy)+Nr9eSRtNAX!NOjebSW1WKvVRQJ&$`z0OR(jK=nl zSprwNGakRAA;Igyh+Y50S5zhwifxN)Bq0DITXtPsLr zks7xwSf*@J^*O?fUYIj*A%gvllnX%eW>OSuD zKIp1qwfhKHdZ!;n(!rwiT!(LX#D0|eEe_bbem(p$8>dVqdaTY|h5uq1>%_NFT%kjU zl6k2(97<6Fw*SEBlOoLEA4?zBsqnt*xJX<4Knia}F%HVOs(z?;`Nwj;2*ANHs8(#k z@||0Y!MjAT%RwdMXt0?()2nwm#p0Qt12D!2libN=5a*!>F0>`&=`IJyvavbNH6_kr z4Zrj?x~kLYAVn0b+ST@UwaT<#c#uwt5_}!Z>^k=juwLWnto6LYVF^--9Cva()||4~ z;3``Pcr~B}9w-{4-rNoyD;G01Ou`#H-HMnz3;IIAPn&gO7=5rRh*FcG^vm!f>14d3 z9P#&g-l}R?{~6snmSEHPp}@@W#i-pQ+|Lh`E@BlULro=Ikh*)_)QPZkNsBN>fJeUMju-~+bHPvviL-%Zzo$#Y3Oe&ncuFK#B z;e;=cTDCApr!h8teOH`5%BQ?zR$n!V=DjbYycS=PJ{Ss~wnG9=u6F z@bl2zs_YZ3TlOo*S8?8WY$L35Hr)2Ji(cN!CIkR92m227MfI z%S}hz1!Li#W(CcL@L%g<6h1M7zjnUcJIFu!V07D$A5`Lr2Dm+J!9-4;noWPLjn>Q_ zX4AqI|CJjgR`9+5FO!5NoYh18-uZ^ik06d|81)uLA^ui8EbGz8O6K`{A5cnYr9R)G zOMKcCms@rPgX zZD#<|n+pZ6m}vUu^hjrik5|Nx|A)V2zz}17SBowuN+aiGYEo%OUfcqn zH*P^38eR`omOGwGl1q&hM^*XUE)2%14nJ$9{ zU|{iBPrmT*_6D165#X`iN?LblJ&I9Egnk!Q@UWg>=&XvAYF9Ld`EyRqi3}*%Z+BB8Bu7h_p4>;N^*y}IU0F%@kQ7bK<^tGEYHj>JE zn`cWM?Z-dwM!bb44$D@xFF5X=0)w0}Y7ceJPd)fIc`}FYANptB0{m~U^hL3MGc~Fj z76{CtnuqiKZyX`;J>!x=^h^ha_bf?go50 zj(fWJd#3X7aD{t!@9Ejf7=;mI1UzU$_NXtz^I|n#$HP&aWFa1mmQc{B_Z^Xws*(MA z(uSrXrzIV#NtZ0?lhMeW*gv_Yy+zYyH)}lB#w>(4%3~`Nr?cLfqh( zIFqY2rjXrXb#`3uqWb==4_!Nz;GPNJV8*AyH zJ(7E3Wc38Lr@cBsx23W7MGeW2Hoy-ZKeq)+e>Yja$m ztWsupMw^?OEK{nTXOwYUd>ZFJ2g>Zb#LhNiV%M;G#gJu_e>|~6lX|}n8!;acCTwEI zyti|To~OssXC%;n`+%zlbHf|Uf_e1mQ{4s?5$8%i>qVwvs=!EUQdh)Be+8AggoO$` zmDF1;BjAK|OM#wg@=LgAT?HON{n^)dKl8tT^hE=>;#vID~LpBmM7rpu$k!(Zgv&qZg5xtG|N zDoM$Y<;oN4x47W{WfM0aPLFWtY>$(=_lf=e8-+k`>gyv$54gFxZQrR-uwE7(I!tI% zY{I{D1T8IA23o|FABGq`W||9umiXBT3)qGKjNRh}|0a7Da@O@7dPF@gfH!f)nq62x zSo34BZw*`T=rUdQ!e=SQgITcVgU{E$HA>DYT8h>G?-IAnE;R{w{e`FzseAgrgqGuG17A~HXyOFj3S> zsELjXlY$uTit#wTKCqUOl**td?$yYu{jS3NPA$f{jNnQkf^P)W->7k9bgDrvLc#t8h&^@#5zkGrnJ=}$a*K_}mJAf} z`GgigSU)=fhDS!ietwTYxao{=%UfpNI2Rtj-`p-08W$h>5ML}NI|SN@ggUZ>l7 zFx}qXP#Tw)c(BMok&Mo;Gyag(R1F{G{k8J5ZBM?AUC~L``Z+Bl&=7t|+X7lC;O+g< z>!cWcm#^z@XHGufUGLl|t6XYr!~aY5ip)3O6edhc!vl>RQQ&#UVv3_tQwNfF+MHvN)5OU`r*ismbgJABkl`ZPvtvPZwcH9$rAhan zMwNI4okK5gMYy-luG^ZA|M>FC3`bFMJ!N6R_PsiRme_fd#s4@MNqqc=b8@~^j21(& z+}v_BJ&Qa4@%WvM)%zv@lHCq`#yOMDt{V~)_9GRS%`Bf4P#ibM-RM!sD*n!Nc#~ z;>PoU_wM3G@y6*GBh#=YtWcAfR}{VrBU&xXJgN zaQ<>v+2?FctI7G?S-;&4U9T-zT_vF4>Fs)eF;xmqh{uw=Utvfr*N>T^`*?J?Vc~It zblw&7p+Ad_t+GYXN6njjneu!Ti#-I5XmCD~gXUU~tZ zXSw0MCl{BxBpYG8_IS)kAti@TPPH0V5XMuZ?7(k}AT#p2EU@;jFlY^R=)9#A zvY+qz70-Hfeb5Pp^}H?NmTyCIlQS8$LH?`_te!LzdR%SXqkdJYR^Km!IE<+B*$PYb6j{U5U22ct2GjV(U&ItCT%9V?1@;9o=Bkg=bPUDZuhDD>k5TBbO(NTcX{d+Xh z`0nQgrmB`_s2*=fX;c3-z} znLHlVWW!bWSeK~RLR0pr*zB9fyT=njhbgB|=AGYk+0|P5fP@~9>awhOcjmz4#1H8M zt{HeQU>#KUS8-jNaQhb;C69@SQcGdON2`4rjoJr(XEc;tx{E@p$o5+<96a{U zQ^7}JL>eK@Q#R8%)>9=+?rl#ojquypioNb|l#;lJg@oJ(Gdjt%92VghZ{xpyttUmg z?aLH@V{y8?;%o~4qk7;Qvz!TfasHl7-&TU^99iCbUM{o(DkQoQz2ndPu?Rod=uS8*TX`6K}Kn(4_nM z+XIi{d!$GnJ;EuyOAWs2Pk+3Qvwwke5O*Q>e-iHq$Ug41)kW^Cqkg%>gAHqiRfW~N zrm;Gy3c<~&QevmjN*xw;+PWeW^hCdiDxB~XtJeh=^ni=sHZF=7 z)A0wSvx<{T&^nA=1-a_eE!Z^L#97f`8JDI2X#!0$%;?tj=6F>gPQGF%Y6(JnB13uD zj&rv4%Ex^TwkUU?vSA=QyO_^w{dsF*2gcLh1&3jHzW#|EA#+UgoVsm~Ex7eR-bTMo z5n7TdXk3!k0Gy=~X7nCg<=$PmF9x-G82*V7Isz5+zhMxd)v{ldNwSytq_v7eN)t+M z!Clf3e6-(s@TA$mXkO2gq0@A+_n^_g%SbhAV_wO(ncb;mghcXQ>gMPdSlqyeP^x}5 z26u`QRohSQSpSjfy_VPItpZ`=c#&R-R2}!No#xhv=Uaaa83MOdbPnc=NFkPWaOlX;{hS@`qDR;ZGCfxHc`T$#@n<@UpIr_M{cl zi3ju*tKrP9K*vuW`4tkeGxg*ndyZw9oPwIXu;@QAJhd`l+hX&;c;a2hnhxN5yg22^ zEplR8r?L(K!B18Z#cOoNGM8S|x($Lp{hG4%)>Co>S5iHFq=BWS>`GDDl+2j(s%HHt z&*E{9yM6Bq^@nv0Om!l{!l1pD7>_(T{7+=A{olDbIf5c{GgEjvKGFCvV=kYwD6iJw z+48Pbr{g)Pr1AGI$|^c-Ua-*%dwo2m5zU(R;}H_*Ene+&y1&DkqT(~;hZV!p5N=zw zA)Q9I097sjP@`|$t6wiQeTPEO*Jb~%GLu+ERK>6}~(k}Mvn&cx*co9JYuR>F&A0d5- zMY!xKv6HsfV}^>QN4PunateFv$sclFDkN4$Lf1;3lzj%a-A*H$T(SG1b*d%=wyj;X_j)Q?wwIV*P04JI@|G zuyRs&NlATGo~Eqnq;;@?D=o-91OBswonc2%&O9TOTDJo8(SYV_w6o}Yb3r;Hc(ckNvB*g)BD@{6pasW5?b^iH znLs%rpUr+QdFUsvQFLARiN+(+czSuyT}|O(^ZBBOve{b@bG45JfJBPikGX%p^OUQD z-0yx}tfY_4B*n|2z2GVbb>4F&>Z45ozJWPCF{Rx zN8To2RqeV<+^yYg-akpk38_`QHnQAEK7d&+qn{SYvEhbb4=YWv^!)2EWbpP1F+Gv zuKPX>T+mv%oPjyWC3`>lF0&wuB0Wfiu^xPfC9S<&F<(ujwphg0(d>5YfIjj0$co{< z{TwyX((PE-PzC=mU%~sZ(fZkn<|(vEgB_#Mrf*d#hT2qPHv)Lz4*eR}N+4#kqe9iI|}L1O=oawwir0D265L60N)cO(nx z{+|!$I#O@`bCbs;|J~%jIr+~{{#!dT|G9$y+~a>+#(&!=I)wPo75wK4{{M9a>GQAM z(MpTx@cR455*|h=zjUh2eEk1;DNeKbk9GuweaGuYv_`Cw6^3<(2l~?ZjQs5D^Zka< z?;nBxyr-iAtrJmF_>b1Gkrw*Wl=?q%#g(P#OWVah*~;>c5szNv@dHbNYwd z$ip9fP&w5AZa$klrbf@hL=vIPEJRl9!P=xM#ZwjF>mFx9!l?Nt%-C7G8zK<-JVV3R zWBTq-chsgd^bYxELCW?iyLZ1sIO;>nU$vG6_X?*c^?yQ^k12HcSxyek#LheC@S8V- z^P3k!rX~tI(Vdi6r3w;5uN8|kJG8S0QVI!J=NgUB`etvqAd#ED z%u<}&R$|=ceRjVln8r2yBijsB&O0Rb(1@M|2w5(c;on}fS2SI?FB_Yx#XB`X^+|OJ zEk<69X_lS$Nfj-Ro+@34mX#;5|KH+e*rW?*0)+yZR1FN}d>K`jx;Ua%bc6&he8`+u z9}x1d*tJG>OIFH6MxyCIcOY~buM>^_`EDnec&c0@L$4eP-PQ}SXF zaYcua-h3F+6dwp)%n)evP1JzoCCb$`m%VDRQmi}Vc>Flj&SVnRkCJXhvB8TjkYX+x`QIr8HWo zQba#q`F|#aX7i5gukn9UKjqZ$Eo3pn0v3ES9HJui)%Yu#Qv74P>qkd{?qr>5$N$KF zE8Xi%ZHl3v)IV#@@t=kBQHjFd{vVoewgM#qf_u^j)gnd?2&1(}wu)~_rd5q?=5KSRAALDGMky`0@OqZ2+zi+Lpb8{!4My%hCSfaNJb(SO^9 zc;X_4VB`NDx6s)6&xRp30WR-i*Y{QW_>Og5x|#$=*1C z#?Q%^4W*j}rF$T+awqJ0(+jCjBRK z&KPZ-LL*h*0l~MD&3ANRVv0zEB{WXS!!rAU2@E;F;Swgj3QvK5)&n(S=jY;>rTbAh z1)jRb^3Vn{Ijy(dMcGJo4}d!^wtoZ$KDmH1)@W(@^RdfvoO*c(3evK%|7^trl6J4K zXXbJKPMCGRP*$H%Jo0Q z$~Z;WE7}1cW+!YzE?@0i!t}q5bQD{rQ5MxxzWmfjIWYW9Aiz zBqi7S>7RJTxTVx#^{_uF+Yit|h8XtforeWJdw%P9(@4`c&BnqX7c#Dl( z{HXst)Y2un!!$2zxc9)F!{ks=(j)a|xyLgg@T{W!N1gRgtJ%vDWdkslA`XEfc{Orc z6T<;6nQP|+Ei-6rSXXTVbXc3&cJ`~>dPgW}y!|kW5m+-|8qM6ym@M%*uj+htlvvm> z59%@owHztXF6O8g_05nv&Xs=|mYn}sW=Sx-Z|8N(2D*d&=gR#2f6-E}lz2lsBJgUq zR!Dw#+6>oH=Xpvnk^kxMoObn<0K-O^s;bJaSbcy6>9eQrwRC~O4llF2rpW#kQ-+sr z@y!Hyzf8aJc>carUu2nFZkYDBGivxlUe2#Z3F<5DcJH~?4j-zq{gZ7Qg5jNb^R%j~ zRky}d)3=yTR3{8w*-id8x7rM)JhTX;Ww*BVFH+qW-A!c(v>+eo)M7K@W9-+wB-}>! zCutGj;xSjr$3(m|A)k`($4xHzgL`nt4)MRXb5qI>8Z~C$|{e-;4Nx{bJY#Cyd+~-SsKaBc*UF)B* zU$U^{SE}Efyr7TBkXNCoo6AuY^l&5GbJV0-nWv|kJNv3ZKV>?_VVOQ?v?kfzRBg=q zA4p;8l>vtl{R`c(F&S#Q7I*XX?O@bUzjZMi#J?Vc`BsN3_xB6k;l&|mHY?7o!iHn6+U2r0<- z-H?eom@cvjc;0`vPN&W;e5v(dC5a*m)$fbyHNUvHmyONU_j^{gZsVqXEm>Aw!M<%& zO#A!SA(lq*eV%k&*V$^b>Aqp&)=sc~2D!z#&y3DRAl>MkPvC=kEosRE5GvvF6KFSg zQUR{IQZPAv5&lAzF20gUF@R0UBzTI3A}0{C)=AGw!-Z92<`YRK8uht$oM6$BgF-Om zi_udTAZ)7-oHGa*Y$b+yZ6b}zU}^KdQU?A*lkbG2709N)*dl$b~6;F zkSS-WSi+*x;{6B5H30#6sZM4oDGwq*aK__pFRiuptnUQTvE0z>ksA(oppRXwQoWt7 zYUuO`bNdrHKl4?4lD-0QceE7j-|a$=C*RXQbF~u3>Kl&%l20uzBrg*lIyjU{mdXI0 z#*_QfjmKqw1T-Wjr?xh)D#7QXBO0B#vvzPJeREHq-4jlU+H(LL@|iJ K4FX|`k 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 z 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

630>xn?TyM&cBl*AQ}V6edF5ZjamO&l1Dxk~ z*Ro)XMTD7G6z?VcnjplVOwxiX$MfX>oLX=xx558>%hG4&hBMR36Z=%&k6JHZi>!|r zAESIkxRQMfMJEV7=v}QitGr~X{b${HvzN@Yya!EC@_+u}Nm#F6;1wRsQ#G6W{(g?% z$95UA&Tqjv(1n(kO(ON6p&Rbp*OqM!;pqD5`fsRV)rh+)0n_O0ZVt3^|)A$2uMivo)8Q4RjzVk$+yaE&M5(@TsjZxi5u`1J^l zHyKA9xfX7}p2VN*!NmL9~OxfwjAG^JFGoFNpYpq@BQ2~j(sskBY zg^;U6_i(fN#=$?)_bPeSm9fEx>*!9(h*`_CN3+A8%~QOsZ2}73UugAxv^~*E;$J~( z%_%3NT9Y!SIX-W-(D8|(3N{atOPLURSeI!X*#*`!J)>3*7g+}KB$FsRR4L^sV(Z-c z3&{SecqTve^%Oua6V~i4?lvEU7E8-G$fpFnQ@N?R6m6A$&-R56zj3r%zGv<{%)T3{ z`j@0`u9Jw}bG74q-EAumlJ(Uk{6Ajxzf1VTSO4qq00UX7me|LouJQfh-Wt`BFZ>&` zng7(?FP>izGf;$IZ%R((_=|H|aEskGlYD6%Cr^BsV|L~6y?A!-05CpaQ1!3f4%^G| zAZNR3$E69i9USVXkXM-6NKF%Gcp<$>Vara<;(u*J} z)RS8e4KhsZ-cUwRg6bRnr+zpcKA(cT4jB=~9*oydL>eQsQU?Xh5TnR&aTGj0o0(kK zzN!JB8|4GX5Jp8&&ye?avU z;S)Tz<~$DZVVYp711dptoFR9Yue||?=U-4G5Sh~*R*7m=ztDX+&w9b_!_V1``QApS zZ1KU!tviYo#9;U}yN51a$FulM%IH1xrR27_bVho=FKIq^S@3d9O_`k(HJh8--EjSk zbw|&S8l{Hgx8>WgD8JHgPA6JB_oor-00d@rBm?JE6}GY>q?V?=8)v-R5b3Ng2uCmJ zh}6WwkD?R#loj{CcEUgDxj6MQb(bZ!ceGRyvCxDifB3$HSS{&wOn9r3BLUr7PeRva zc9e)|%f?Lwq6GaDlV=?`99(=+Ci1yZr1{~daV<~%)v2F*7<8>RpGPqfU< zhg|{aJLplg%9k*XSfwB+QTzhkdt**$L=d{8_DSe z=(3LmC2y{*K0*_^JrL4&vdnS!>l1=q6m^F@6w;kN#(B}Q);8uZC0UvMULU2yr--~v z-Hh>YT>8pqbZ*Z|F*sr)oBShIO*k`qcrKU2{`3LA|B4O}rBB1D{{-)r4@PLUa5bn! zjT#1RX+2J#cc&S=$PXO17yZ_!IeHBTXXesRtbSv@*^ONP%5H^o{u0gt* LMz`uT?!f*Romls7 literal 16604 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 E0nV}(y8r+H diff --git a/ProgramScreenshots/FeedWindow.png b/ProgramScreenshots/FeedWindow.png index 774657388302d0a6a480c47a09c7621bf71f42bc..609e90d84f7997f2522c1e36b6b8cc68ce813181 100644 GIT binary patch literal 503111 zcmeFY^;cV4)HVvit!N9hP~1zQxVt+P*S1)I0>wSSS}4U`ix-C$FBYsw3GNyw#R@@6 z(U9az&pGdR$Nk}sasPmKjge&RHL~YkYp%JTXUf{|4fNE>h#wMTVPTPJYN!}tVPQ98 zVd2;l;$wRHlTWTOKiED->PlGk6ATBK3tVSKT}3RcFG(bKFYz$fL~k@Ke6X!GDzZf|M@rg*U!^FA9N#*j*gt2&+4*vDG!#P?}73>F>$OhTYCJ zY*aT?Gtu+tMrQtP3#M5BORL7he=jmK@N@s^Rc0X*;m5SP7^R0m%fF5Mt;kgK-}ac; zrO4%PlciY^nVNWj*!&>uaebV6$f%i^Vh=BPuKl+i+PcgtSdj?R*4(UWC$Q>#FMmN4RRP@{}>u;Ag`S`cJcgQ=k_gr1yPh`yPJF) z|4&;J+@pEp=6Deu*wA2ynTlctd&ps3OHP=r8_{PFat!^Mq$Qzsz3!L}2($4W3ZPAV zvq2``o|0&HH$QfLVuw^(hoWy$X6;Yi{p|RbrT6M`8ad9!N1_x^A<#zk5Os3bIMKk~kW!x+( zu-bB=7Xo*0=jB@WQtZ>mnrgv&g_en}^~X&<@s3QIHG5)mZX6b!>NWNl1!gT`L-98) z&T~vDV1u_8^7OdvF<`<<$ddy**RcRFw(@KEzBA`)&#h3R z&ngMH4>_4TW;zV>1|2%q+$6}UXWl0qckqkfIro%p^GYOJteI@q1Z*TMc>X&7yHUh6 z8{0N4^OpB6Qi+6fEGJi2ujcnBBK+^TL3b06@2(kbsx8mBP97WR>EP=1A|ZRtc|2AF--0(9!|sc4wg)EOPxgX|(nH`kby;=0;j2kc!}aMx#8-nINTBb%+aju=TpmK`Cc1qTvLj z$&bFy*p;cTOWJSma}=5Ls~zq09_O3?gH#~5S%uk#r0Kul z6P(=gAG*27j?5@v=85U!F8jN$Fe5O~z$p1IxD_Y=|G~*REZrF}auNIwTDrK?TU6XH zT3$8$D?!_h4@fqJI+sWP3zu%%TK^+@3W7#JJnsSfkl=9jIG9`I&wx{n9mFXDe9_>4 zh16XL=t0QlgANJc9wFI(>g4Z~?_fV2LU+J- z$~*Ow#9aSC0DP}+G7O*6^OlPt@E6k;^jmNr8yPsZ5P9V6e+7AjJSap}Auqs46CFD= ziD*k35(Mmav(T4E-$1rw7sXB~N>_FGW1(MCYft^JxTu#CTVN634$sYjMnBx%odhj;h-G?&@qZk&Ub|catVbKliOUSrPqgld_%WL?96@Y33M-euFTTjqhM$R zcrky>^y+-AA*=N_vhfPJDtCfzUEY&r+l~NlFo}ijNyC;IroMwu++u?fklsBwtamFQ z^wCquxxLKH`CeS?@qVB;xnfb>C(OID=y%@&!f52J+M+KN|H%I)eEh`-O#p{Gmy%yTLR72`?!nz* z%|Fkdzd1j@Y;~^{fb7X$_fJvu$ce{zHnQI`qGBOKH_jP^UW=;U_S`kI@bcevT?x-$O3I!oH7R zfT$OO-N6Kx7s1v81!21oA8?;@KayO*UdI`5voAL~!26^5P%Y3{g zT`Rm}MQv^uehIn5>>_NC;b{9=(AaN+c<2wDwj*bL$#Z&j;84M3fP@f zXk85n>_^g-^z7_)Uq7H{;6}jT|3}5|?Ok$P(2~5P=7s&&ukC|O2pDo5wpAgIJgD2d zyCY*?McG*gDD%URej5oGyKl{@%n1TrHWiu(EiSL>3mG2zEW5H5jUsPnvU;K$LU;JC zS1~ge&AD`%aNj>~Pl3iaK?<+V{3o-H+)iv^qmm2gLe!2ON);*p8@#*<62H<;T;7)! zY*|J)o*?W_g3!lOlZfH--(rCq?uE|V;z$iNLG9(2it)R9$5);^^Z96xr0%Beo*}@{ zr*P9Nb$O*30uX5yj03uXCJ78ZH4F6pod!u!Nb?`qXhYrCgItwf%Y%^tzc@h%E7(vW za%Y(GdZD5JqzbI?Z5AAvh2EsTzJ-L%9!q*4OT^B|X%H*Gk!mM;@VBgDIj&@+mzEH~7*L^FTpRZ!NvO{0k)x>Wt_|WI<+$Q&Aq0iwh z^hG)JKgD~_$TD)YhBzjB<&m@Ub=Z?mLemN1oO@}!G!fxz^5@q=s8w$1LIk7Zh1qSC6yA04pb` zE%noSa?}C;p?=Rf8+YKZ$us#4Pu#I34?Dg*0WAj0-(;a1YaU+wYAw++M~#rLcZ8{) zp`aZGByzOo_&9U>XJ{r>t7A7d`Pd%#g&%l3KXVcm{S$-#S+@NU6O%0hQPFFVHA7Fp zPr{zIFzKF7A1=9v)KO!@Ni{m4b%fU{Q`2}@BLa;iX4@TXSG9U{d-AY!-cd6Nk7ni{y=3HVFS-uh*bX(P|va@dgP zm2@(ESI7~Czi`uC``va!VSQfId;#V?A>Acbb1^FJvGmpM@bH7(-4EU=(9M`#J@*yV z?nlZy^39Z8^6iufdBw3|(ECzTK_7G>q&FfBO<2){jxWtZ-$&_#s0Gj$NsIaRJ4~Nb zFZ``?$kX7#heZ@V1>Fi1ZWc@e9cGKHsZ7bn982}+L0H%WJH)NHhlQsdlS1Le#h;%NsCPRsbPUjpSJq8{DGy`KCk?GS;$ub`78=#z9UTi@xcJW!jVr1GCb$T%$yf_ znaFs3Y@f6h@*r$roDA|U^$2})F5ec?VERW=u4`9xDdPg&Jb`Z8LM>eFT{d2ITRE4c zK8t&l=B(f#E8sEyc&c{NkuM|%;xNMrRe6Lxz99+MKK`Z#JAt=;5Nk?8qBR`=y3Lfn zM+LKU!3xyxrG-yc#UVH2ogH?MkjJXOf*KkiJ3;8Sak&$>kNVFGpJVMK!VBR3U_{=s zb14!EACf`@4XoQnok7-qOXl^6S$J-cfM8D?WE*$e6F4T*ZHmJ7pTiX3F`)2fawH8s z__y}YyX6M2^gowHiKt1i85|e`JCi*M*@pBT+%zz6*U6iZC*o?G7dkg#QPy1vB1h3k zGrT5o)PlO_vOiY`?PB9c(CGlviVdWvw#Q&}u1=V^r7O5j>sN8-xbl|`ugnWKrpDEL zx3t?)4C7z+gt>v%V8uOpVf;@>?E;6Tja}w9zG$_g5&Vta`u-^SWqnXK-{ClVdjegt zimmHF#xTmQTe;3x^j>F?D_A$YHMMwYxwT|9f1qR>OZT|g8d3`uz0wvElq~Gk$=nH{ z9R2$9BgPDmkR9tMsMbk@H0q;|$#pY0gv+w! zb%|L(K83rTfa(NpKEeUI=^^K7m3JgKPF3LFg>Sf^YpCJLt>3Hi5!gh|EDZaVdGT%mWN1WX5mYILFjxxHSeSehKQkf4(I*}H1{KAz$z;TB!jnoB}_NRo?#RLG@e#|rcu+EkPEZv-u5>cK~Ubu1vz3$<?P z?et$97MY|b3x8FIx+z3kI4(SDDaJU>VWZvVC(ECEoFBQA`qa91qeovWQ)eUR?U3`i zmul1NYXXv4Yaw4xypwdY!|t}3>?HS`CiyK-0t6-zN#cku2x9$_%!&U;&BMI_VF+^k zh;8ifIG|?XCt1VpLtA*u=&c#Hh|8occJ80>wgmyu8ArEXItN5~!*tEE zalQv`Yt*&=)dE9Hgu?Db@8<2muH#-c!I0aMdho(VBeZGG7ul5QetBu(xxC?3b9>|$ z`P?0{{#7iq_h>cbsvgyD;fj3a&M&t%8`bbOdUN*93mkvTeQ{969=g>A($27k7aU^1 zy1l073KLZw`B|HdEiAT7pt***?1r8BhdCOS!RP3-k&UY!TYUbUDu=SvXC%;{!+)yu zF^j4*cWd3cLI`Ay=v7l_3eZEOhD^s?t*&xj)t(^R>LIF+@&~jYVe77a>eV^MfCXDe z9>Vddc7=0Tk6BC`E9YxyT@kXoLEg6a|B$FJJEK?3G6=fUiXFc61so! z^Z9Mo)FrBc?Z;Qo%@Z{0#6%^jd;3IXcfg?&1xDUDPc{9q6>VAfhcs`r#P(cupOju# z$*T|X*(vmUhLNS5pn1H(SA0NpZ`YqQ550CA4uN^@Wm`?YylTI?s(&g!^Wkb$c46Y{!gNxD%|L*x z%)(te`cpfdexXE!{7tERzkK)2_;pM+-5nFEU0x|HHdSvPef{G@R{*RjWWuU`wTrxU z(ebJ$6n_z_w*S-i&x|`A!V?7+ay$tUXQQvMN+k`ypF*dQNb^P{by&*#;p!)>khpe+iGb~u1fKx93_ak~P(64@ZoMZ*Tb^;HB z4#O}+cNB(}?*Sn*_mF7;$gVNj=3o$9wlMDozPi3g8wfsG*}1s1N?GrE*}W|mK-P*b zy?O0^yHZ=vlM^&vaQALUdV>O3(twHWM$pK@ttmd(P|qGDu3)hzwvrYSJCX$|t3}@C zTo$;<#u7rcoaFHr+fy?9E&+KGc(Rw4HRLyA4?+mG?Xz^?!>`M{}bucoN`6Te2eK|OE=YA-!kP)(7 zUIAIvCN8(JTqPtNvKMO5Y*CccI3eM<;eRs^aF=x#i|XmlzNw{oe4OBMC2s*^TfGSI zf&7#>&tEuiMXd2pfdnPL?gpW~ZPxiG5wzD`=(_Q9)cg8+0#p!q=}#8;CaXpvt-A5z zPojP(wZ#eIfxpZdo`f}uv=MeDe0Ro#{=yrvw2Jm{kke^BM4wKg6#I^D+QP0g-LJF{ zZ9Y_ik+%>QL|viUW(=Ad&lAC34ZGkm?!J4b(|ulg9VL&5{x$L9q&-Fvc5}CP<_U*i z*H>`KSr|uG+-#%v)#c-uko)RjfC;9 zvn{;Wnx*NviwV)hZVO+d$=%j#5RUqJ-FBBf;PW8#{rszPN{~LELYjaF+h`Uwa;?n} z*$=B8vT^y-+y-0!9-4jR9#Yq`>=v}6%rp=HLD+PzK6V;SGJCkm;X|3_;mMSuQlN={ znll-y*1giVAxEBy2~4Owp5_#%pPs0A$Kz^S6#hR^EQSxzpXE--^W^Tf$QuB}vSDgM&)C7JS_(c~)dojLGG#n07~Iw(uiBUi;Feg5q%)_4fKoN4O; zbRlU3Q*e!?u~d^DKDWrcXteozlV$}0uS=0d1^Qa@w4dFei;O$aA#ButS^skJ-}@sp zuBd_Q>+AlDR&LJ~K79DlX}|7u+t(Jp1w>$3={G_cD$@QwboTJ$G3^wt)2AbMaZK`Q zU9-c!2>Bc4N#0~iZg2UAPLK+Rrl-#w{#*FY>k&-|~UwS(Zp<}JA{&!{BQ-`|fa5MD<$Uw1=7o)m8N zT{PHn6|k=h6s>y{R4p z5nyEgvkXTIPfsw>0ZgY6u(HBbU*-q8cIt3MOKUeg0Ll!!E5Eav30`#TM46!M+H?a# zQ5WdR45iqMtC41J&lBHnzYe(Eqc!xu^G0~r-pL(r-pn3|KV5GqN*@1pL6G}LK)Beq zh3tAr9-9d%yO{;~eDosC0jUmNTsm<@{QBbkalA}a-t5xBmSN$r4t(b?oNhFw)#JN& znRTgUTLF032i zUw+T8^$FL`dRosYG}UX}RY1PfI#9hpPF6&q?=rqT`MY79Zhvr@C1sqy=3I8jT##SL zxVfL5O<(EQ$MeH; z!1aip{eF=>dVEtSp_+enIh%788qQ~3+O;yk=){hUIIR6acNv}h&} zv8YIFTYod=4A!tIT!HJ!qceS$Yuna6GLCFv_=vGqMX&H(zjbdA&by=$^zT10?Yec= zX-AH^t_AbX^;riS7|TX`c88hHT5@;i+Sknn4{xCI8<1ZvCrZ=woG_~LQ07~{cee

Us#1T0?C1g zoU1;XLJdgFu>23*+h9-YIw1}#0MoI|gb9Ig(-hw}6w{@U@oY{Vd)|rH&c@%-_^yU6 z#LR?AUd~&ehe?^@=vE|PK+ipWdl=@q-1|qMumx(KdhvU>z3{>-fN}@OdBMgpX9}w1 zqyMaHvaU7cYPHkahdOj1ZPWEHe(4k!aC-BoPCTgzVeyD#b+Rp7N7roiyyuU|$p!zO z_?1b>smyMdNh2!pr+EmoxsP7W`QOcs8H8B)3{v9XL0l$&d|3e6o~glGsgS#<>RgDz z7Fh)W6DE4I&=X6XeM}8cusx++bkLJ0bcc|;Hn&p7lV+w|xPTF;moKN*arsWM#$9dR zh?nu(uV5zw=v;zp%SEITRHsj);W2O_XX3Wd6OAzIX<+QKWho5zD`u;8W{|&%D%u)We#Tfi=bnG!{^oxDKq5W*jpNA2O<_3+aGp zYPG)WoVw|AqAnQJig7KlMGrcgC()G5x?@%^=MNC^4{KRTVVH;uDJSv|FY)JzOdW9$ zohDbRB8Oc6?Mf5*kL-fE|G&8IA4yWOG@3ZN|MFW5t4q;ePLw+MW57=Kk8G}j$8mpp zamIrU%>Sw9@;`6I{QaMLhW2-{|0*Z$n#-L3Rgd|3R{yJ=v~W0LhV?IA8N@V|QQnIHCtLN8xoh#j81pe+Jq1q!G7cjlci6(k@ z=S1jpSoPU?Ok-Ydu=MOwu0?isTbs z!7bjTi*BFJe79vP(gI6@0a?6iUiGgCxyEk2YKy3qT||LNJSy(y_;GjC$#D7zkv57! z=^M5_Ni6!0TO;T1)yUe!RdPZK9TC$P-2lAN66WL=*gg8W4n&D6{IOrpz6gk*GewIitvsZ!$`PmO8baF!Vd@i^X`Rz8~PQlWC&F#55->e5T`Xhv`4XA~L1utPtg7@m#MrqiPG#q%@w$(vp`b?9~ul>HA!-L~*C|dGhlRblY%AluTq&tI$U4!C;e)%l;tfH%*=V*d~;y1bGTLQ+$PvD5LWvl&t(_d}mN>bCI9 z=0EJ_pGy24akb$SJ{(fqD}cTJ-h>!9rizqE@x+3^ulB-g<~rP?nX31`d37@akMI}4 zeP6Gr;ZLHL8Ng1A++M(Pk50~+a2*=`u^|muAv*T#*V$~%hPlKpKFeC{!3U=0=n@0% zT`uT!Ypk$yfls>cvAML+>C_Dx1m9Pit+@|%*uc%Lj4?Qj6KE!B4(2NoRo&$_AMNVZ z`qZkB<_D0b4g@sg1FAn>l_v_;u=V0P_~E8&j9W1ZDAbTm{uBd=CDrUm9%1VmKhAxH zZAqmyU}P{-B|0V4HITAPANR9VG1lu+G~9omTX8#HA%=~Ra|A%tjMaZM4;X(tnJZ1A z2SP9s2}gXARwA72#d%5$tbbxI=}!H^f>FJQ@l!soYdSU9&I%iNc%T>2y8UeV%5)ho zr>YYxH^#Y_cnT0zLP^6=8vcNRVRAV4(YQ!O0m4m0~tvVN* znB=1`@1yC8GxJSj+Xor^Y87;MRWbAq7ftRygcKYVI14x8=So6S{Li;!yAH98lzte} zq$SXt0NL9=H|thrymc($|4RD2e4TFmP$fi(Lkowr=!OcY-u6hr$DVV$FGhAVJdL;9 zEV|4-nI8SxgZ9CB2T`*JUy<&X8ay7b;@Htd;y55-rAKQP%r_N>xx2hm+lfBXSkEW4 z)MVEcP$%7*uHe!u)5n(FVW5_Mmd}Za#V^DC6AOdl3V8&jZI^VpmMcC1nuGdZi?!*F z;^q-Gdw~`LJFvezQ_>MhHA?6!(;{UzDN4e6q*2vdluPB*1^!;}jh50$bw8f(Gr0&# z9>9PItaEYT9Qs+O8=v{B*peJA{>UwC>lNq|f;s7?&$aGa~8ovKNU_d_LGHA2(x zQXbUVCR7fNKSnBNHrf3qKSU9Ub~FL>@PJ>jy+$rSSVmZMeUN8mkfl`0CVGJ@1qvZ& zc`^C&8ZHe$cdO6M1vG>eSttW#CC|S;pxyn}|9nc37Ed_BQqZPo@uRZun~*K&-t?t} zx|TvqM0FX5nd3kQ9}CD#U3MF)rrLQ?%@~VWql&9&p2Z6>{1rz~g=#ofjqS zeVu$?&5?OtnD|VOyt_hH&wO`EA**X z;fJ+h+*}Faly*_cq=qg5sWS(&P&K6wjqjjKPU81k+vazxmODjy z473Fw!^gtuBJO`w1D5k@ik9VTZ<>C)0DL9})TLiNKXwVy;9VRI#&H4&<-{qc1z}r0 zi{PBld6B8u_T*Tn54uclm}pBV8AyZe>mY}lHMtQ*Ec7viVe88xr7hy#fSY`TTGsB@ z)s)kh5wVF{Ce*(JieL1T2C}`+qsrnG1<1)bV-;FO!evfMa5cRQm zvD@g=kje+ndU_WcQLZ7keQLi-T68AS0cgaT&c&-tkz5neJ)$D{jn(=&e4ST#c34OXiZzTY)p|eGo`975wJoW`|0+O&!BnMi8>qiRts+e6kVsqHwT zW}S>tt&p7NJR;~!H*2zXjOoL4oucV2icsZI(Yt*Ae4bw>6Nm5PD6RRKzGbAcl-J-c zi*~fuL}wpN=oAqR;{IJUV(4yAeNg{ubk4!dr^ehx0DlX{S%$2#H^F&)J zNxn4I+BYIHS~o8X=e(y|#3@J}-kXPW6S21M55?{G#^F$>3kx&m*7C8= z>13A&J%l^qL-(Qg+N*d~JtMz;pg3O(!8-0_*z6d}_V#fF=J?lFeENvCg?ZkTo_u*q$1vbdCm!lDl* z?ors@`;B0p@~3_!{k3*2t2e%ppv;U9VDs(2)`FfnBanFCT@ zrcz;bK`^+$sz!#8a*nUKt9{kK>OIj5Q(E-ZaS?R>u0T za$Lz%T|WZ=CM)AYVI^}nB-uHc!q3IRO{2Hwq?DR)obiC=IDsYJ#@O&ith(2@ixS`_ z*Z4zqnh}*O-goy^@EnYG+GqUL7{^?!aD=gQ{0w3(;1W6koV`><2^23%SUQ@pyLtyS4@H=oY1_L-<{m+8LAS zuU5tr#uEX=3sQe3nxla}QJ@Ym-K0%Y(pq^!5(L?Ky!U*@)TNp`95I!1p9(06`cnOd zC4!mgDJoX-DB&~CadeJwR{&FFj4>D0DMPQr&)*`tlkHFe)p4sj)_`4h&DWgv?mqaKI{(tQjC*_aD9;jL)h|3N(E&z(#R zmAPcZct24OiXe<) zk|r#amcbuBz#?_5d@qq0sHYy!tB#%9X~x_Yri?i={)r*i?~$c>AV5i}a!LhH2uBUq z%;BNU0~@R8_Rk`?F&u2n5~dMQUto%tOEpr*+UkYI9Y$^W$_%+W?z5R#E2gdjOe%T`A{hKT^Wy&TxgX4RZtO=ol;D|7k}`sGNb zZr><{n=Yx+E$|eH3Poj-eidYnQ21b!s1R<-s~43M%C@e{_3~M&X;KgX-i(#-xkKrV z4JB|o$7W~GhHbN+5@=Sf=2eyY^h>b$fv*MA0}|;k22+a3eiR-B(Rs~kNK?yd$9?_kHm2buz_VGWBmoslQQKTc!+XmkjB%iBu#MnJvzlk4HtM z5E>YKP&NPpB6;xG@Jd8fRGnEf@%Bz*MWpy6(y_UT9#ERA4iZ9zDASVPzL^;2*kO~c z0I;kHL?hI{IoA07^^RFGWP$5?GnKU%LSs_oWg6^?^(_k?W}V=nliVQMAFbtD;x&Ar zv=pSudK}9nEJTibA|I!rZuc|rTZwEBgFXFt_IG9)p_R|cvk@Fs{!fm+(Yp*(b57;b zzUh9c*QevF1Q5~+ewGDGdv&=i06{3Mo-MTa-Tp32!T zbFW=#&#yd`F6&^9w1|wa$c6*@l-f6|TK!FnKaH8I+Wypajw-GtOGA=@)zcrM4`#o3 z1wC!Z5Zp#5I}+g*e`24R28a<6K8sjjJLY?Dz&3SD_@xJz2#d#*Dw${vKW*$;u3>4U zO7Q-Safsz>78^^sl@j9gvK7PdR>0GGw}hu<5*&A?FP)$yBM%7$sQrcN_8L{5688?S z$5mq>Ap?)2p-zcLfvEB|JM)<17JFX3`I=YaT8NU)0?~e>r0)4W^;GrGl=B)zcuW$+ zU^(%Ron+3O?)LS*w(5kD%Fs}9ZHjlzW){^qgY=`u)hJw3fG7@dbxWg?p|w}XI+ab> zVtFq)JRvAT;t6&xU-8fHKDq8M)skbTL7c;u13D{{@!XoFbvmq!xVB~cNn_>B6euPYbsZe;xl4kb)C)%gs?RE z4SJ<*ov)O&Zl#MDfiiQ>T103X4;xNzEUa)`V29oz&TY`7vI4u zxNW>LYkZ&mC8t8C_4v)h{)89ORvY?7erGf20}Ds3^FnsM!%k~pVc9sdwkc5iLM>ixMV6v74BJT3ugRjLhcu5uD6I{d;)EnV*B?ViKWU zjvWtx?{E_v3n|aIv4ol1s$2F1TL2NS(g;r@Bh#99TcSuqXKi zJIqpj9u--Zu1biwC^r!Zgrr9PD$w{17*%G6t&ahQL7<961Ot(XvxH;^mBYu=H|KA& zI_0}$0GpcGLA+TQUy@w}0}C`SynsR(t^>V-M5oN{m6hB|AN2THwN~b4OdvwS?66u} z8bZ#p2i(cuIB1#qAn(G*%w`l2WU2hMVl~4zrKZT)R=8r(2LW%k*%b9;hoEo51KLWo z5wk<2T|%t1%eG#;Kc3wcO%hK@QS%9=%xf`=*yrX>x|l^g0JJ#vAF?v82*bw$s}5-< ztRj{4Xf9toZPWELcu>K1uTD82S}#x=Fr5x-Bk7+S0!IQZIMmY!@jq1*!d-FG|7ymeCdgERILILEW^K7 zpB&ewV7Xaf=l1G+8mJQeo}-CdiW{jRouk7csIoGKYZ_&pSwwkI3W777HTIU(U+Wz_1`ky$Mb3qOcPBFwp61Wh=FQLVR$b;(XblE zV}O;|!8k>9YB0!RE!+5zxR<@!ST&Ohs1~wZZPd+{%-zTAfo)7tk{@cU5Uau%C++i+ zb6=;8-Q8Z#_bw3wP!uvTxGHPAtsxLVt}En6*D@2dgVCLT$^pqcg&Y6f%L^QlOC*>A zZLruCcAxn0{Q0p?YaT0*SrDfy=F->l%LpZSqBDb21=FwXIOV1!_&kz7e6=DkWeKV3DBs$Ax&Axsj-niZI&UTAyY;i3zYh1XX;oyIz1yC5jKTy!BqB#b=zgX?ed&8TZ1!vX++6G?8V(n}=M(W*)c5fo!e8KJUOqc`kg}~!=>QO+cGC3d)8aWUCU&hd zZggIXqgqo=|B-~x5_wNo4RE&MV_<@vi|oX8QpW}Qngc}eM5{R0T0A-W4H$BbrB?vD z3az|=35?mft_??LiT2iV2x78*QhHW!a4Z&eG7%kPo9A{5B{1~zs=oKg5KoxCz`het z>gxGrxSurU)CIi6|GaZ)tSdksQWzC-Z}Sv2fIr2szNuFf^cBIAwW}MmTd^|1O7WPo zAyT1#fZ8M^TLD_@L7MVQt)3)NW2?hqaCncEr>ggj%NGlcB19^$dP=(p_KKFX>p`?` z_WQDxXS{Oiin^cvdOPAOmyfMOR$gMSJk5-|l4&JTzxv9|7oTHqP5GPfvo(ySc}8{q z+k@gKPx5kJ0#a=TC{O5OYfBCHo12RhI2Y|jsxl2~hG_~CBwDMWV)@(;`7y)sTVtn3X<*#Rb>$sZ5`>5M&zn!RLi;X3G#7Z zLTuLaX(uno8MUSHbN|5y^;o+3IYdG}7I<$5-$+MrmWCOt(p)vHDv}f4^v;4+G4p3%n2d79^ABEU%BR?7 zqDJvGz3&yC&qv}W5$}EmtSAxI z2BpIcXy^tQ$@B3Z^tCv3?5Ht2+$F_Y0PghTJFctuy&Uj^<6(cyTRlTKRl$({q7iSsQlKhFt8%t6F zTYO(p%^7H!nd)R~7K#x0Cyzip`W=L7Y_Shs?FiZ|MMo}D`-WzXz4Q7Ssv#+S(B&>6 zQs2PP_x3k-KFf$+)}QK^jhS&B8Pd<0*}CHQ)ockW08N^rlMz&54zEZyKOCE&G8 zPvor7pJAF3X(94;%D1>SjCwTW+X>xSr=g1$)6HVp;1YLbp%7fY8rlM9o6g z>?+k0W#lH+zuM;2vxzZpULSeS#{#mv?PanQbODMUZ`Ko5csw3q-lCwI0r%9}VZ+%K z{rhKfZY3&=#<>TqH1C%ZqmnPX@*l)Ii@r*ypc;uQr82*ua-#Bw>F%*JQ&(^bmCz>` zDwkOrhI5_@txnC!a3l+FEscfDQa&#U=Y%^`U2sn)7_BdjPf`};U^D#~DNBH+Kf|}r ze7K^eJ3u6&q#OQ;7@+uLg0T6;0V)4{yswkcaS1tNcGgzC5n&4rKr^#E%D2RdnaYNY zqaB|o`J0#A!Z$nJ@g0dptoszKhKYb?32`tklW){wkMbLqGF&~*DbhX1c9Hk~#%~&p zWr^o-oqkNQ168cEqi9M9g{WV#9xT1a(tV*S_`N6eDLIwLr*j|XB~mZDjs_gu%oZ9b zcZ&@p+w)`noKo-+dzXqdcM~K>_IizPIciSLlK#6Z<6p1kJ+w=S7(H{PBlVnVO}j{v z!4#WC{odE!gAv2__CRW2kHjxM=iU1{0S^G4g$CD%N2QS(5MeK8j9w>n!krS=xeo{M z-aI>SZLi^0(lKG8a{c0K0}vMeZn(+$RCjlLr|b{weReATRqj>HDHq-K7eV_V<#0~) zA@WVg<>Sp&P1cX>@d1maMkYUBxaf~58fxILTYNNn`9i3%>s9gr<+pedoONhr40Vm5 zPEo?3=?lT!dz`#X1<>SGWgo#_zw@u%fgNxW+kL5u{%ejhFi!)uaL%}^%%Gmr&uV+o z0yRmFr@G;$1MwXR^j-035^3uiS@TgfqW1XhgT)z1KdOB{)iVs}iaM3W7O~BhF|EA) z-gm!o}$6fm$@v+yeQ|t!iYAt!12y@zX7j+%%U`~Yy4)_8`3kNhuk{eI}AIH_E84sG$SdJ%m=C0WsE zvMGQ)BE46qnn`s=j&oZa-BXhwT zU2mysFfNN$*Q|}5huqIafX zsHW-0 zZ_>+O!L5(eu3<1zkXEJ8@-1su5?#xPCw@gwKZv^mbYf%qhE^PMVlTo|p!ze-Kb3M! zB9xy&jQ>pOPt5auDB%-oAfEvn6uPe_+&}#$cm~9I48_XTh*apH`fgmTAeEJOPZxtP zjzXr}ydy&M<_Q^8*DUUi5kjIvPU*kYFjW$4(Fm^*wh;%4t&GJk3ZPngNxR^CW748A zV&-h_NZwzu;w6Oj8eBp53_stNmHb z8S@wJ$|we|W>?O3G3=kNFCXlZPU?J9zoCv_PcRA+GN= zFsoN$jeCUbfaf8;GHV~#!2`+3f8ik}Ja53^jHy*m{!d)#p+I{ZlXL1}852 zH28=^xY8Lb7PQhIJ)zgjF2;-l22>i@dKXOI%Deei`_Rpj^^|U@kbEX#aOF!hUQh4@ ziPIi7SoNi-t>iVxL>g5k$!d@k=b``70aA>zSzGkLXdiU@R=U9^Mo*CG^24@KjQHHh zu_G8lOigH=Ev)BM7`yL7i8{Ga7gdZ*7_*?8EmDl1l>p$dbQv)5Y6EHuZ z5J?Mif4X6oRDPTF6N24~rSEbv?-Ilh{>ww0Vf5OA zJu7vQ42z8=i-iOV`432$S*o9IJ*wA$x4)IF;6jEbJ<}2C`)#^6^_OCZ4I~m_eatEx zEfdl(zf>M4hnW@Zv=4E8b~Ss8my9%Dtq{-IO?Yp@)MW6`dQz|vt#H^6eaL36L~>IE zOo*Q}=u|H4k^^ONFyv-(F?*+TDh+o?YgW>)S=8t$U6L=-S*ajX{F*IVm4lURO1~Dh z@IGDMVatH4_uQxQ{GX2$@7bWr&03i3eci$x@ugxFLqUTN0uj@gC2L##h{8y53YKp^ zWL#BqG#E4FhwH^0lj|J*N`n2U=oO?q9(L^v(>K@Fpq~ZEQew1pSadEJf^8RQUyZGd zzdW|JRwIbp^?vb1ab|G0fzLn2sXw}*5@O}f_HpmS^wxaxob|RYzl8FJ61N`*Zs=?0 zBuB3IyazdIe_*QznZwoVk_F1LW;DahNY^RQ$3uS4mU-xLz?8>q=yh-{3^q|L8biZ! z1*D?}BaiwGcS3H9=s2tZVq+^HX`s74SvPe?eGzhjRGNvBRok750T+*qGT6R?{sl*7 z29aI^9lr+ry~%`+xC57Ys?^!Z_AhHP3N{?Fr1`})ZKEl8q?tpH)*Lm0+;bunolLY6 zaBB1LTX9MP>G&HUO76ZWW23Q{N2(lKy_Gzv^&EP_B1BraNI0DABmP{J-8@fz^JCOy zW6XSaL`>vFn}GOY1h~nZo^BXMl;%nh$BE5~al*>9Yds?EY>}j?%(a&($-(s#&k0C+ zX=jf5y`GOE>tE%Px-TB)1evX4yy}G6MEJEb!7i6l(jgQ)N*&(}K2tWpmrJZdQrlRY>DWu23EqqHc{m*2D zhdoYh`rqd2|EC}TLz0OL+4A`bP512zY0cmKy%c9{J{xts3u8wfZ6E)=SM4Egz3b@y z7RPFyT$2pq1C!R|J5Eh)X#SLD6J?>gJE5#|jolt1_`umxbXh?WhG4@V-?HKmi8Vc2 z&_HX)+8Jv9C`k^JMy^CInX?Bq+)B4}qiBWiQ7=Y;#al{bpH%NxX|kf$wLFM3cMJBA z!IQjY(`AE;^IRDT)Qy_gYID7!WLovfb;8B<;4V+>0yP;?w3b@=m$$F0jh#2BV@Jpf8P3b6)C_5wCgE`obS_ofWi2jVyVY zHnU`gpPMbWaau#au?971*>!#(KsQp}%-qQedaAMn?)H+f(ehU#sx<+%MW5a(EL(4T zSa6C|lJiqOtr?<>V^h(;0y zPm}jNHW9StoS7N72gR;EHW4JBSa(DmyE^^}xe``}R_7Qic)2{#zvG6KroYw>KWuvj zP$3#IW@8|RlEU`pH+`2^@R^w2AY3MrCT$w$C*w4WGpr9qa9n@ap1?-_C3Q zXvULw;4m(M_kGL=bw@AB(|n{9dKiRWuY#twzzkxu`A){I3>p(dyvlCtlBQJ2vC;Ek zv5Tj^gH6Pi&tTWUfQlx|6f|o_63(>iu@;Y-D#4akb~0UQWMUhK+09c^#uB}w+~(M9 z8@|h-m{UjFdM?z=!FciEmlXEswR~*xjN~puyNb}P;S6Ele{zl?{Z8?vvhfFd*!XCI zS6q+iF>_j_EEXboN)9mJOePW36@*drRDO;Z6HZ&D0J_B4)xJVIjEk%lw~CD=ruSup zS5jWAPpB*z@mH3i!zB18bEkjn;dXODA(X!yKisH?Q{~5t;fgzVrOEY+fTus*OQ`2# z%(mItcNZmrugB4XtQzsuaheNASCWRr)|Da)*}U_HTWBPd{jpCdpKOtsdhiG6|P*ke-7 zLt-kn_2q)o2ol>aHgbatYv_q+Gl?QBG(d^f?DeDD|8k*R&mJ!|Ud)H3al{z^{t9&B z_m0l}`s>2wkUW$7VxtdpFu}jFGQgz?EH$Ya0{ko=Kgp&28JgtB`k!0E7u=H1a?xglb zmZ>PuLRJ_SaD9H#dU30d@ag?|EI#v32g~PX)g%hM)$RrY%DS&J=nkC4YndS97npYc z7|GE=j#$6~f?YItvli=peNH}m`uqy1#vHkoP%VVdeM~Ko@Q+E-LP=5FgmgbtVK6|{ zqb}({T#_*5`ovuqHLmp}!eTMDbLA0ers%kmmV^k-%uZ+>6`G{y@ znpB@p67tR1304TVa1Sm|6z4`eGqeDtERFnf43-Pw3?{X1)aJ`srKKa#Qp z9h@vPHxD>$dLDb~2SKH5(xG3nO>Ggf_L`}WLfAPwEeIQ_#;LQyHcaX0fs^EWC`Wnu zEk#5q4jR(HLL3aQ`TA!65yo~`F)ttIn=RtM#`|4*qxBmf`}yp^JP4CSYvf#nSI=aW ziIsDui*8JNZ6VJ?wHml_VY2!4WIl}~l`hZy`?aTk-z)G9Gsi-*j1_zQ8!Bj+cRR+5 z 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≧Ww^Wp$Pr9yZKYAQHuTC2x$KQ5S_atOf| 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

D<{i~v6GO)P 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 z z&3`E*sW7DG-xP{;AxSwkIyiH2>_09S=faS3X!GgT1Ues{)RKWkCpd=ZYMhQ~?4na{ zA4xeI0cq8FysTnbMLCYD4ZkOlfAb4-E0zt$ZzHQ%>b3(N!OXnDaxt-Inq zy#&m81jal9#9+g=0gZssF>M{@!k`Yeg6_(|vVe7$`msq1z?DJC&#up)*Yp@z2|Hci zK}(Lyhf*ET>|S(RlIps@gPW7UCYR-%)~qP!!pxPitq`QbstWtL*YXTw#rb}_-b{jR zwJmYzp$n_E5Tk_|>B^=koJh%?NrKu0f^6au7he4GaFq)$viy>6?5mJ+{=jLpf4@~{ zTj|is2($_;ImsU~k#*Rc{uoDcU*UA+4~WQnfqCKO__V@c4w?X_yz1NvLID$)PNSoXA8$MlPyLD{%M4J5&{ypfV>HjRm=ADJnp9dNOJ= zQ|QnLtbDo?f=b~=7kYF~O-@YnWSw+p?S!1>)zlW$)TdJJOn|d`5wAno43;`Kq%hwg zp*B(_x26yz!BU=x>zY^7oLWtqOAt{iKjCKU)#%>TH&7CXZ%4}wZk+^LWBN6;WW`%} z(}x)av~JCZ5o%*Vvt9B9J-R6anggD}mJU*KVMmt`q684jbR^6KJ_|htUgqh5cFh#* z#Kv~k54;{`9B4c)S-3H1dn>}tLCyiLJNw)i)a1}Qlo(<_JBm9+nnR05W9$I}Z8n;& z?zTBJxiXgsLU%)FrtC)Pde%NVGy=eYC+9>F9?D8|srTbx8_#SEB!S4Ol@K&a!)N`0 z+*m2kw>IIauw(#W9!Ng)=-d97hlz)mBmns_DkTpmLC2RKXu)lNt-rVZHPjajH1!2b z;PM)WpPZe5CD%2cuCMb2D&KGS)Hzw>yM+i&9*hR60Jx<7)D7rMSx3mZ-SstQC~Xsl zQrDY4IiM{es1_1f^N&_wHh&?{2`{q{qkuIlypk}JDgrR8GM6TKux-B3i7f=$LITY) zBv~#ZycS2-Vaai)WhWb~TzaA&OQ?kco1b?Jf|~jSHI;&)`tA5}Il5+okpSUCS`YPw z1c13Lx-P9ZTTb`0=JNRZvK55J%JW_3&^+9Hxg;QEXqxLI%vK0+0V(@ZrNWd82`fQL zuoBSb(hceU^VBxTIiLwjeqPV*k4Xu720#ZzeclxWnp~NCy^fMd=+5Y#w{#ns&_P5e{yUo{z zu#HY~4L^(EHkq)R97yt*6jpCeZ3+Q5iTx7@FU^&yoIr@Vl0YNO3~1I@gU<=J35TeI z<(SR?cJ?OqVj+JV?MS$V!#OVzQ}I2H5@`DGPO$pdjufmqQH!O=sxXBh`wP%^W#V&X zITC0K4rXJ1NIDiD%*4K9=>%FHhK3)Yr+XL`xw)v!%|k;$o`oC*vpNASJB5xc83Tlp zcI4!ErJwLR4M`^5T7Qwg_Jf=n<= zG6`tXXr-G^yGfuaJzq{u*^k$&QVeL{-KfBWCVi#^G^AcdD}ko4XE*O5c=oVVw&Q>Y zDDOEQdK8=lE|tn^)aP&xO?9n5lMAygt_VL1IodgY4LJsb%-6>fKMZ6(yV0fXTb=N- zc{74cZ>ApPG27p-X*UfzpsOJ<`bb}t>8T$$4K z-Tay0<)EfHv;!s!Nfrq-f)Ig3==c9ChLX-#zdz=WtKX0D{gSTZ0Ok`s z-1;%^#?cfivuOL6UeE80W3ON zge`Q=2eO{yc-gn+&{iHJ{C1~c;+`~Yx!8_r2MP>iUSHCkeYq>0Kug8M-KiFCoF5{G zmVtdy87Qx4!tDnyP?D90^6YF=U4AZ_=+bI4l2MCC6 zJ@Wo?TPA@@E>5m4P&a6~^=4z?#vsX^br%E{NC)Jh=D?+$K;+Q;ao1<>L6aNH8&B2u zbpg)5sk%E`i6P@IO>eGlh&_xOnnSCIMBSDB*t}?#IW(6PG9G3O4n4}TNg87?qXZ;{ z7X>W2GKC<$EA!55tWKb5y!LPOFtT<4V8L==8xK#~*Z{CRTm%~roWFy}UteKKH;*+w z-{qxqgU?Z)gN_^Luk-io`!Nn^4o>b|2P=QRgPaQ;s?>Gd`QEWPN9Q0m?#6slh<9b` zvw9{$mcGI2?i{7>yW>jVANUl3HYcotAgjS#y03WzmANZ(SPg_zBkL@q>8c1Rxiqgi zM+v*IN_+9+)~kJlSG{Qo0Vypd&;&5wr@Aj!5^5`BC||}jIlxg%PBdWYN#2*5f4l*6 z3CTHx-RvkrP4H4l&F90@xwj@h*abC$PHW^0ehnPYy2c0$eE8ezZ|H!u1Yo7s!zrVZ z&eBURMSxp!O6%+BmQK3uy>y-rHwtLpp($i1S2T~;-*~y7VCp1v2wje|5Fnv4mvzC# zhXg&$G?yjK;`ur*hc%!5f}%d7o7d{JaOFw@Sx#}0IX9k5P}#hr!A#$c4$#84yf*JY zivY89e9eQ=mCax|OY>#~m@*QT)FDu*G|9PH;zx~vPN7se+%4Azu_bPVPPfbc-jft= zB-G^2zBpJ$S5}6Jhbl19LXH)f9;S7S4fyx|Vtg4=iZ58MJ6(rUIel0WRf5g@8|_ZH zkEr6eh{%6|Rs0b(c~3f4o~-7NA-cf*d6-Bk8Dzr#T)MXme7+-@E-eLL?o7r!!ffvT zbS$Dn+Y_0E{`>DxQPF_n48n~ttIEkiErHfRRi!7PCNmigSxFeJDMTMZ(XV+imR)&C z=Ds9zW7!F4BhWhY=(4H{(8j+0%0i4bRil&OYtKm_+*0slxCa9@MRZbEElem0Hj?0` z_l6CYC1IE@P2d`-63|izv{b^(Ex5j}b`8hV)qFEjiU*Afg(jgnBMxo+94_QZ=x8A| zuPZlb;AE-rqU2nffXZusic$`wPSZ zaPzKBl0$PzAOf1^)8y9v?^%v|YjscVSv1BS#z@X#+gP~%>H%z8Fas@D_ZX~P$WcI( zQ*&>pR$Xh+yhFRIkfT5o0GPek%sVqeNPPmFfk8)HB9q#2dbX@QYc2>?!c}V&59i+w=K&$ORH$Erk`sBm}9XDU* z()P!lmjjx{2LnyObE*6UnLY!7WX^2NooOAL8|#4Pu0N2v!GSD&BkSu}-^k;EWDsg7 zL#}Nj20z7+1K0dOXR}%P+CK$ zv-WJOxiC302eVqMd#UY?2V5E!a6T}{BbB;;Q$q9xAL;=TOAOJXNpUPzfiJY8V%I3IX z>_`~Jx=X$0@(d&#Gl%ETBoqv4nwz5JigdkQiPs6l9s`aCn84%ZU6Z7?j%%%#pf(0O zyQVTfc|STa10sQ^xj4_0xdBa!?ms(FjL!+P&-NB#>&0dq%jm|+=yGhl*o*B6w{f)K6`~4X zV>O-p^!-`b5#Nm|A%qw~CZK&~$spPId}kVgmSp;Z642)COUJx@X}DH8gx0}($V<*Z zQCd1m2(_x*98~9Kqp>g#)pTgp8FW4b+Rdg4ItxC?<-7tw>yR6hauN+@t(kEIRU+E+ z({ZP>5smq27-_D<)9d}{EY89}Z7J>#_v8LhFWQPTG15?it`e8p-$ej*7r8`>fl@&& z(YdplRNNxS1hnhbN#@c7v>VmQbaL?qwEK+$Z3>z)VlCv@MfYbeOOi7)x8>%}3}lom zd0rXE&}~^MU~!Dw4TQ%CE`<~=tf&ML%DFbb39*zo2D88G??5w%1%PJGjX+bl(PcW0 zztB@V?AxZqEPaM!M~1?VF=&bp#b8zlA#~J2j$0SaL`U3yJSZLqnlJrAYUj{Gtga*r zIWz%GAk+KMEUd`3^%Hat%EqDQbyu(|rp^+&P-uR*OolE1RW1BT}N_mOAgCHNXPv>+&ONuV4Wige7cT++RQPZlXx^1^9FN`7d(g5}ck^!=r|UVXF0d)g=-ipo@<#|W!D}czXhAjm)u&^h z9?%XJW9Fe^ObaQ*^n*nN8sTQC(@|Ho?pRZAo+uAt>P0+5DQql7gh_<7FKm#!c9GzJ<=OnGfe?tY%wp0hk$4Z%~^} zd6%YzyONxnj(NyA(7ELV+TBFJv(m)6j+tsLVPPI0+zM~%n54Z4m!IjRbL+>3tAp5Z zMF}0+#JHb;=`d%cQ0FW{MecDI0Vtp;^eH$611wmA*^EfSm1Cw8j;j9!c&uCKlpvdF z4vP^GYYSUh1$+)am?z zGL0^53SE{DB~DWPh;wTmatb3(K3t8dbYycQYWZ)>zsb>B{`XK}f2-B!y0MXek4@Se zlde{w;;D3MGs5ZGIrj5?1^8@#0lwIqj|1@?IF!)l-i>y)9oyq>5om94tmqBa$(2Wy zVbg_XI(dQl(r|e^u2*SM_ceUDUWP|4bX5dmL)ta8@Utky=od~K*aAr(e#2qa z1+`uQOi3O-jL5cSHcElaM!ybi{7uw!YJuZ@CC;5`(X`;Dc{6(zj4~F3;N|Q7SP$i1 z>gfO$EOTc$KGb-YKyy&DO^R6xXd^jpVRY@Kz1Y5JI=YhOinN$|9B8WhFr-ToAngAb_Yp!FZdMbv_ptsHvB1u9A^+{(+RU_AqALm zs0gzT6J`eqw?kBD5uIBhK_<8rQbh)}>C`m!9VQ5=nPH`v9bRsr(_-xTO6QNRH`qD% zMd-1P!p!*~hU91R1(80d2<7Is=!7nYLCkps_uh zP+D|?4@tTcC7XDdS(YUqvOV@K%ZMzDpBPR?#S>udRN*Jl%C+du52#*~q!&f0C_>wN{ zOS-UWgxJ#4t+wlnwliB5!yg_;c<#Xx%m^vQk(54c(%Y!d^WT*YeCyR42+MgvpuNTB zb1gWSJYX*E%Ux-hNLMyNQdZ-htTCYdds_njwKX2I_hn*XNG3A7-ytHd7U@YjgjgPm z(z8&Qnt{^HEL5Z>S(al>MhdFZ5>cO-iu*mS=r800oiOXy+?gDjl0e3Q7Kau(w3du( zbZW7L%T)}u*5Stw-|~MjZ}H;cT|B*W6OV6>;{DrK_~Ya6`1yx-`1sp*`16n7@yGAK z>T5Avn}eI$@3AJ05KA@<(wSW+*m{ev;=9o@JZ#b&TB0R| zC@ICwp%FS3Zj{sFXJ)Aoq}-a@){4N>!fGo8CxXqSK3$uAl-8g5@S<~OT3F3%v)*fO zqgKlPct)duB?(~8skvkjrRwXg)E;);m3ff4Ovj4`G=rKsGY2%yopl=EVo-Y}1lRKf znWLyYw;S6QOhbFT;BdqeK*pR{f!ifSE=}RaTLju&0?u{@kqaYuocr=&MVGE0{HAJm zJj`IGV;*Scxah`wIMGY(M*<+P?-o_NkfFxwm`Vp60Zq9KqSZI=GFu*zphLmaxn69XM&ZJ#(Gz#b}-P!`gK0**Lkm70kB=q z62O!MqD_hA%G|=tl0>IH`w==`Fl~Sz%O<)tqyd2P^daOC$X?sJu z)c<-*P*Kv!LV{7t3bY(RWpI7W$+4VGpebyry6!uh4n;sy*iNvLJXm#4C9WuoQrli> z8G+WFttQwMrku<3&V*Wbj+NgO1 zrG-zmyn%31Qq97XbeX4{vF>~ucE=82Z~QQ}U+TiHtNoaDwA!F1fC>Iu>*ta@G$&Sp zNh~KFEW@-=ZAGPax%GW{pwyB*y#Bqn5dYkhkI$&D_7`GSSh@W>%4yF&Qizbm9xRC{ z$F3`_SR7f2&6h_In)M7(g>P{vc?df%x8gGbOD;^VY@$S;*1>RCZ!=aSz*UaRA*;nq`eK*X-QNfnhUaUx3?9&xp9{1D2L`l zj;%QfR6IJ^H&9i8R`xa0p*0a~O}VLbVt4S{$6s-KXaFxCKfu?I?&Hm?uLJ)x{4=2O z|NHfiKT+ED0125js4J_WYt!~vX_oD%1|QS)a8F^WJl5oj(QKM-P+6BD4+FK4E7{D2el>&x6OAi8!eMS$6QGcBklv<(iz3!iz3dUjTDX&B;QJ?7vq`$3}-{P_y-DZV~mk8#~0h+iBnT$*~#82sM+k z90?k^Ee9}{qVG%R(p>4BmK*N@YyVPZI`Tp7LYyu^WeMTt6IYh$emthEOy>gY zO!Li={S|043D#NKq?vsx&BgKl9&p--cRDqVZboiNyP#-EfabikUe2#ITYReBmL1F{ z#0*MOz-_7Rpe2C)wSRgzuN_u926UB@!iQ>4V|}UzKK~{&!nF9^?Ru}BT$U&?N08z7 z*N=&{XZbg})NSv*TS7OtJf;n6&UIs=((MmAcxh4e#Dk@nt{*3%rR*;y;8=!~;wv80 z9NFjli|{Xk?B9C{G=&*ie!eFUU+q=6F^7NOa%{fXhM9ExI|weVJ6m^g7>6>SA-ecA zju+g;g3uiN*T!o$M>b(kx@9~{%5MB@dkX%sITrui5|4juxP;voYmwFW7E2B!WBuV| zWToa4WEsdxNJU;s8p^VBFw`@Ema;NbrX-*;IUd7=+h9W_`U#D}LV_Yc8C{w;QzD3f zMn~36wdB)9bu{31PdmEG^Uzw5ftJ!-ynXcy4{qJU*H0ed>7%>&{-^Kp+n;~p{V%`b z!>_+t-D6EaODXQbo`^&g<>a7S?=P#=9*}9cL5K~NCD5TISQex}@ov}wP4iq@ho&q? zdmT(E!5e^@mtbbeAqqdTZOI=7JGnWx|DyHNi8^?>cbz%Fxok%Pth?YEOYPYxu#L}` zd7#OW31(VWpwjvR5c5vV1I?>T;3C9S_h3_>N*8j}jv=Q}edz#3bB+)!VaSi!ina45 zqv_giJhc5A6>@aD>kDdfYy#SiY=!omL%Ul~k zi8)s_KA+{nh~r>%{Vu7)A9Idy{5%i6;OmS_eSd|YjnlCJ$W)FJRvu^;S~RysY0gaW zV*NVnL#gWwUN`94uFJhyzZ@I;17MTX|H%Pu7U3n$B&=o@vor|S~57AeC~u1fPagpXcODxfVt)$9O97pBnWQfeh1=6awnqEl2t zi$b4rgPPy-i7RpzS}Uip+yWkxL!1>MaMbX#)etrUoS;%;A-EZYn1E)x%M*Ar2%~8N zP(YSMLU*UNY}#AWw!u297pMw!T?V+Bg0#*zsPS3`DfI_e-7_6OP@WIZGNAHCt9#pJNaK7vW4GE= zf7quG=ay+?n3s3Lg!u6gO4AkqLYo)l$Ykd3t2i&=H2QNPS zgnRFP#^96hP(Sn-H(&gKAAWOC`-MPD$Zy5=&`T)E%R_Hv;KiU?qgKZI)13`hBoT0K z0rtCLWjQKiF&T|%4roJV8774n`-+lzj>3%u73*&O8J$?rwpZN+TDzt01s z6rv2?hRQ+8kMnh33O;V!-;Pl#gCXYY>i0kkKHvJ}&M3bFh+t+rg9Pg87u*bBSz8U3 za$^G2s4^H+*INBnjzA~~ZZY*Itud&1m-a~lZC+T>nC2cSr0Br-5Sm3NCJAtAt2Efr z#mTjeIXI3{7*b&KA<5vj2bu$)dk>a@&MV;N3ws0 zx7bWxPtHuPZR!!hlYp{~eyiZNllp64uyou)hLqYWgZq@3=<5?g$_OI2qsMgqjhFHM zTVjW>BW@VGVh6BEb7SY)v5wAn0bTZ#kP=KhP;8FuAG>n!&)vCJ3T#vPZ>D)kgB<%K zb4M|CUyl7)+HtWFbNKJS_Ixk)C*Q~U%5QNfnbWh~qqhh_V&Avr$FIkcn<^bg-gadA0{664WQn1!Sfo zRdi9$UgFh(w)5uAs z%c{)6K!wujljyqQO~Vz57IM5;g%ViW2Fryf1uRM91Teu& zVDmt8(%hHk&zv(G0~9SV%31DB}aH9CHYw`JttJ7zu8IT)vevR30Iq%(V$@gqZ3qClh$nIbQt=PmaTE z+{I0$1CXXr<6%mbrB;`Fn;z=s;igjB4{$~};U)lDDTh&Ql7kZLrM?7NE{TkZcg{n9GDU>RYHE;Hho!R); z?i_r!HkV`Oj;!ye{oGE=rpxwpHgL(MJ z#>@C@Yn-_>NkIF2dpys*hJS5}LuAoy#8lnE%w2Jqz3Uog?~cQw-ItLRmuYin4Gmpr z?HokX<#?2&rl7qz8|A5qc>3rO>a)`6!uYVx=fj;q>&}ZuM^3x}O{x05Wd-Q3r#q{u z#FGd2@$lX~JbCyKw}%GNT~~?6_wV5L{l|Fs%kOyj;df-z-9%jJAaYvnqxtR!R1Cbp zoi{(@55i1POU-M>>g}gcl$nhVTfD81V4`Ic4wTX<(y0k(z4=#Bay}AyC&N*8^$eOb z75S%)as)Y{)TIT`0oaX& z95qKqch)Z_M)jJ4z!q?5{e=!{e+Srj-&yJmK}Hc`a%TdWUyoLMm9C}WD4o(#WFOmt z)iWofJzmgoJA^og=HMovNuybGY1ttLw0p%a)6oIV!OZOhBF9D;jrEN$uvVYKlLkJz zDgjI25~u_;FZBsxa#TLdsJ?NB=3SSzks=suj?00^OCWPl8+UHrNl6}f`W(LQA*S>1 z={luBvE%H&!)wa9jRB4DQiyR(gp+_J2ntkI&mjN}WOQShTUht76WH9? z+qv5fTpn1G4=V~@st+VP=jOwZ(x>Ur=*r~GX47@e4=ZI~F@aWwMG=))7FkX4*Lze2 zRf$F61RmkHAiM<+JjP|NNtSk($D461S^8hoE_a9 zwZ`V_Ttdoxt-GV#b$CrW7XeN1F;`?za`$s#JVC9T59$`Gndd6xN7!ggKmw5@HzyFP z&*tVh&YeH*wkGj@lL;X0Qa^)$l2g;1-U7MJm?kWZX~tqDx$v{jqgz#Ib}p|skJp_e zuoIR_v7gOz6D~P+2isHg5jNE=em?a_kN+L?rQqfY7f#IHBbT!nYK1F*Z^5LD& zhj$?#_IX-FtwqdnXrgm#$xgZQT)$&)8|@cLU+ zblydA=L3}Yzear7Fp{dTqyE-A)L(yxfk)pN(0=<9IG<34^>keRYAY19L7-$F8B9?o2R~{EIscY7&pxd(7y%Y<`UDD+&S{>+1J&XTd;I z>BEfOxo1s+TDL@qd6;Pqt>VHST+ay&0BtMQ&YFUrM8bv6OzzA(G?(S*7Fp}nF*kBp zFFI@v&AT*%80GeJbn<-`Y79Wl15c%ZI?XA zl1q~o6KM0p%CPWgrL~tw5^mJeh;oyIT?LjzmSG9q-IB<1EIL|-xdh}K0?$H~tUDJ+ zsPUd!@1}V;K}=wq%!jOjEdVbs^~uReYL7$BDY!kBjN+x^>gU5)yPEi|y97PIeU}nL zT+&1XR-SI*L%S`YcDgyepi;{N=%VC+2vEsD8VH37d>hU*V&j=61EQRtfavAs1RZQ8 zt><$va*(Jg4;~Z@A32L zGfqBKVTl|Ds{KWnM0Ylc@R>*mP1u)@$^18%Ll6pJpYP4Xm(&+~a;^NFK=b<7j!aD0 z&oP4B&MZ53G4H$nVh^@l9kgVVHT*m1$52%6Fs9OxeaY)g*qe{-7YKX0u{Cs_a%jg2 z-{4T%1OB&Hfd8UH`}fvZLM+iT9{;^H9-q;jZ8~3%)V_C^yel4GY`TPLyJ8J!)3;y6 zf*qG|Eg=^-9=}9dau!mrB_ic&5{gq&(N zccC?9#-cXy0=g=T2(jPr?)?vV_3i`iKY584@4iJ(R|l@&x{asrf5OG=796@MFQEtiiWH8LF8CnJ%0A{?pFp(ws^0?nzH(4KycE+-Csd32KmmB3~pM9rPC z&%sOcWrB}fm--yk#uRv2XP4e4Z7<=xWUfqLQ>d{g-@gXtqPZ}G7hRbhvrwc;j!~GA z;PPQdflOh=PP(xF189M|V5TwM*{4u>LA%6jPAeQa(Oa-))+F?$5*mSp)k+9a#^e1G zx~t+N2DssLo^Yvf}HXcI3F!HX-hZH@mykm29H%4%igHzkfU&{kc*Z3rXHk)vnMaaxMQf8Wa zL?K4HFV^Q1YJ!_ylP_r=Mb2&M(NZj-Q(H_eqElN$$F?l046C9mu=aQb)=(Qx@qgTB zYOyJ%2J25%VQowmR-LFO@D$P{G{Z_Ti}$v~62eT-nMSuTRWgW`@?q@i1};i2`vI z;G)|T3JIC0Q70sv_{Np*}MSkDolntvh$o(9}-#;^w2T@q}=D@%>Ney88zE&lO?s*;1U& z?m2zgjHs>X`rPs0ymMWweXFzLD zJ&Tr0;pmG$hF&T?>ImW^!jK$w6mg-4k$x-!g=deU_gZt zqCW<+OZ+iFXi>o~&B03!P3-`@1TsQS>dZWaj;vFJatzAO@PV5rpdCft@oiW$VHisstxp_1fb|gRqA2}yMsoc3VfyC6Nc1p(32uS53lBOVjkQ$<9GUv%rUV`VM)DvM&>oiRI&Pf$1UL^e4;Zx#WPxkQ zZ7F={$Et6v9%%b-HcBt(XaDW#}%e5#qwhWUu3cE2C?E8ogBxliY~|66P4I< zwhmheyRBzySyp2s;kSxo^lq%VM+jI0o#x>*H&@JuE+5>4k3b}MG3Mq1eI8)a-|N0T zMIfVsouHMJK~VjC@GCrLNfU&}WC2F5Np9?j!jZL>UAdA@Zq2z4tUKR@La&LS`FjnHIC!}VM-%Fi*Zzz^dxg^emuR~C z1Nxr+gx~NdzW?aN}*4)#x0Vmj~MTm~j^;d7ydtc-X1*bpcGrJk)fK){CjUud(W9U7^R|Frz<5 z;{+##2A#tasK#B?m>x<~31gSX|IxOKsxCrwD2_%c@vKEIIVIfN!L*QvKt@_szYSL*)f7MqT==9lU@pH`PLw_nk zrw6fxF9|GjVgYy=zyeZTaPSH~9(>IAPbLfu7zEj50!>L3nqQhgP$-#Va$ub9r_iQc zmbL=Z0`B0QP!z&cW~J|&Pxm)FRFE#jv=AlM@CN|@#)}C+g>x5C3nF+e{&)~%l}RX& z$wBG!O{CM&T%=y>qY$D04)#6t`E85?y^S|FRxlnu^lpscR;H*jLRX*dz=~5XSVq^h zmM&C#c~0aQjn_NMB)PJG5nlh=PJq#o=~XUz@utA0@KY63)jW@md;g+2w- z^2gt>{ZK4+gq%lJex3oXyGYrKbU8&=F<2&t7HbQwo03nX@%#}CBt&5(IU3hfkE7*k z6f&a2aV;zq=MIG6!ofpGIC_XsJBr$?C(#sl3UybGTiKRKs3odAX=+c7L3{ccQ%4q^ zQ!e3^Lsun$5mueq7YG-+D3%7V+zSRTfy;*wJC$C~QvE9ZF&~Ch-5(2fXkHFzfnmeIWh&8G=;t}ftltWx;png}JqOBsp|YU3eBF9#y$#snwdc5`Oq&ddSK z^*boJ#F60hmHDW#f{mA;6AUp)W84w|mtyaMrc!Oe=XQY$Ro=)Ycr=H`^Hr*SLx7?L zGC}DM-I;-kPED{Aq|}y+QhA&GI_7~U>0AfE@ik^1WGV$J544eV0d2k21v1Hx6W~5M zpv^dxGbSa4%oTJLg5(2O;Y0yTu1R6YIRcupA^Bhuq?ShLxPzWt)l7l!Z~<0El^e_i zwN=L|404Mi=}35Ojgw{@AT@8N@M9T)N?=i1G?|z&+p<_L@jI2u5S@Qa{I<0`o~Ko%?ex$L6qj zp6ZrJVNS^bXB;L)l!J|uT_*0&Cp73}`J+Hf1m@8tEsAoRINO5mXhM$ti=(Re-72v} zVM)PEAxVN!FSyh_^m*;x1dRKPS~5ZRd#ai4N?}QNf2|kOeJ2M#yXLh7t_l1cI`=D^ z6U)U{`|{|tvhc5f{!Q1Vkm6T7=J)EG+hr8918W#~&c2n6NvY|GtIz=hk?FE(uEruEj^P2&`%x&UlQ- zycY!86AMrOYr`c>*cOMabm}e7f4~7cynoQO{jassdDDNaiowE=G~^F|jqPXhF>l*x zoI4e7FiVO{!RXzGC@(2TL3}LQ3bW8wl#Pz!T=bL|Vx+DF_gX4&yQLa8I~wum`VgK! zeTKL1Kj7_mAMo|7x9IBVMpa2AI$FEX)-`~tuDi&pzk!U}TR0Y9i?B=ONUOSo!uGFG zd-HpAKlu&!zyFB#`#<3E_bz4s)sMeo^{#W+8F~ffxjE=9OC!+Y3A0!OT7R)5mzIcz zq|<1)aFp&W8pFxQFq#t0dK79eg(Lmg5yT!jg6Lhla4qx@QX`Kb_hdL~FCRzU7;vMtcfDN42LCbZL4onYN%hj}Dey+2;v6LC--+fKsWA zh5d^=$H2tWL(N0Zk5^V>utV#}iZQV19BqGPNg)JUXF8!qmsWX^5ANb{I;wDFgl)pA zsT0tAnGfNN-2@teq3x~g-Dq-CT3Z%^f#f{~wA)G=31m4wpfhto(|p-sUXL!xpyoo6 z0*&f|*<;PC$#K!4`D{k5O%u#iH~0l$rc!`%eSZxzO8%J3hIG<6m*C-?p&;bPdr+y* z*EPnVWm%H$nAc5$>6YL`aH(!U%%>w0gzS6*PY}~_LCZiUm*wE)Ly`iN+JcUa6U;cq zg%Onu;zE)FlZTQ|7P%hi^RCRfHiaSAuyl~qdAf!|l%J$Sn{g-`(+_6x0hU9c({iUgB6Faw&)W}HhWCy*(uxcDetRs`Wk_hq3=I*(a=xGyyjRbUOZnm|*Mh^{l6 zkebQknm3!JuqLl*u8noS^N53*TePimHUXkJz6FHdB7$ytlpsm>N6@W1S&L0)8nNlD zk}~SCj-Zn?W>L6a@h?~B!j_W)*?5uwV4=N0`B$I`CgY{oU&g2mdViO|rt5x1pt$1# zQGr24V=ZhdaPa#m%(#dyX_+8*Ol7S>Z9d_rW7;HIV4TeJ6>`;52(?w;aITgAE)@nd zLEPpadE70D5a{%s+-LHyViA&ow|GDbS7|8y|>NEI% zm!HI}J&7n7et~r-axi)0Y0TLggVU!Ikdsw}n-88KJEsuISK?8UoPf6cbX3M)KxG2O zvL=BK*pgg4zkeGazW)K=eg7jq{P;88efI-u>)LSr-gDf4{1TNF4XCK7!|45|c=qG( zDC~HI((Y%d>U)Dr*`0_h9>P_A&W2mxqxbnA7Vk45oVq}97J6b@9lQb`>O5e7=iwyZLsxzM4?-u!Wpd1ux^_a%T?s4);;^yAI3 zDcq=+dlG0;cjifypWj6oMd4Oa7}CNvVCA$)sK2m{4s|C+()h3^v^0;V-9faI$Agk1 zeAsGN`UB?B?v;3W32Y&O#1FxZ@Do%7sX$24!jFQQflDDpx5uIf+25U-B%sMT2|8ZE zU~+5J9Mn9Vf{**U6nuX07=g=g1T3(P!OZG(O#)Wn8j_BwbP#mAl=$m--OgvJIWm?W zXdXK5KF+nN&zJtVhnIjgL>FdTU$M{2xi>*g4$Z+$eS+C&#)ePRp-tVNfoasN1BBYa zY|IFerhw#$em_TMBN0#&07SQz4#)aW>Yzm)gF?OE8L*q2hwuEDr^T8&dEhEeX zKey(MfDCsbL`y&+(B#r2b8i8-d9c}oo5vJt)OaPQEK-&qA)xT6=BHekl#WrZhptV) z+Za=iEoU0A^(N0&oqr@9B1>fZ_-QvcYROy`w~&k4D&sM&%5=r(RWdxu-EzQ^&TYMe@G!iDS(B$bb#wD%>7x}Kro z_V?&{_B-xOJ?2ArDWnmfGi!#w!lwx7W9!q~8-&U$3 z_B0BQAHrbbF#;_L!zsrwk{V4NM{m+ebS9le^`+y;IT41EbH`8+a}>EJj-cW~Btdo* zjRaal0BkDj3Ag$y0vw&(#Unf(L9j)#Jc^dsD74ePwZ*Z0C5%ok3T;Wp(2+`amwpmm znS@WqDFVnrs52u5y>e)DSiSkmessHjxWo^EkKkgdF@CPhrRKYS7jBH9D~mCZc`4+0 zza)}y3PVcRMl7226)H|`#C5`KIGGRcoWtmj+m6QbYY7h}iG-jpaTi@fU>%x;7oAIU z@KRQz3qSf}l0c?p5kFUE2_l4%T$I4|h;1h=taf$vyO5%DW*#UWAksLXTpW|-9PD-Cy z_n>>ClTv8WLX80jr?v-~!H#1j0qU!kjPA(OJz=)*%5VxXFRooEar2Cuk~BMGy-Hn&zXl zZcg)m^XPPxp(!om@x@08x#KlheWDf{&NN}``Brmw3SH{;|I3bPS%L$q;4xLOk-Jh! zAjoNHK1vSEoEjyd$puX$%mlQr_UDe3U+&AXQpY9|KEXhgzT&wm-5gi8N$%+@o;Q^s z)bfT|1idmO7s?$)Rr52}^RsGhuFl+?fILOu)n}pX+JTUx?y1i$pefuq1~fwK-%92n zqy#U4OhB7NU}=YY&4Wn_FMhr=6_a_+y5ki{sl0)UD&s|(kA`|!=XZ*8sF zi*LTCGkb!Odr#5acNcLv^{DT=kE*VlxcTCH3_Sh@XVRK+BB>E)GFlN4TZwZSZKxS| zi{Td^G5Y3r+<5y3TJQge+wXqGPk#c5c}@7&qJvm@Fb)?I%21hCh}PnCxtM8K+Jj7W-!>R#o-&BZopq!|TUl{oC*g98 z5Be}9AK8fc6TU=F=t|s3KY-yRKCG3^NZrjLc#1;#Al;9C_K&c$4r{J;0B zEjS5g&W$;kNdlQ1)-A$FKoYzJG(Sei-MpG}YDyBZHEO)B()!2d#R9;)L%5C7X$eGf zWRd{p-I?maF3pdT#-S#VIhc(DZoN4OeE%m0wCQ^?Fnw>Pfo$r&410_4^aGjZ z(4<+1@(g4%Lh>+&;F?d+2~P6}vYBj8<%4_L{u~~6u1=DRTM|)hE=@pNq3|SOW(%^- zrHxCWNX^Ts6yy}<6r=<<^~=GTlQWoU?oI3Fc#PmOc*(U`dnd71~pl zq0XNZs&Hf(mJt@q2{XB(4W}Ehtdt2klb>7Z|4RtAl?2?f=z9Lm zw0OMA5<8}9?u~#GEdRYb8~@UL8Sf#0{c~Hg0ZkC|`f^XE{ScVO&;O4tN%(SG5*8fF zq3dcxY5PMwCa|=|>Lc}sWV>RhbpQA9k3aGAAAh*=qdTVYAAV!WxtDvss#Aid{4)<*G%)$S{p zx&1PBohe7@@H1S@X~E^>QY566At50b@q}62lOb++UF ztsD57|HJ$3;~#kc$TQSH| zJB8fHB|r!O)<7x0uK&Y<`D{l5?sg&1Cz#alVRpY%*^w@-UVRS?UV_*my0cINnU@Pq zy16vDH3ua(XXc^g!RC`Y{thoWykM7R$0VNTK_)oeDRkGlTSOogIB==0Ph#&Nvn zz$80QZA#;m@#vt&^9etJQgdp-U=nNuEy2#aGRZ?r$NYHT@7$PQi>6G*aj*$u3NdOw zNAKv={|N$(0HdbvNyW6igc_ZiLXVm&n{_CkaLZzugE`bZy0H0&aWC7}6~fAxFKBgE#12cSpL%~QVtPzfZ; zkaTP2B*8{b%+}2jXo8>C%c-qI7CX*<%~=`HtgnPn6C@SN)HUb`>1O7!e>t7r%45}7 zcdFi8+}87L*nY7c8wor)yfr8441`)ZuIx{}tzZg)G>LHgLhG>vr+p4spA$%52G(wU zDVVV>0D5Q%h_3GDwp4y0kWm_|Qt9&o<-es}88+wTlz}gI=g>)Nt1&{J&eq;RccKZ) zDLFaqBBD9Bx%~U+H9<=7_-wl}66MkeG`Tdkmq*oL7C-ai!x<=Oxqp4ZZh~Ufze^$3LO-(FcO-CjSl( z&@l22C7n-D*!loonBstX8yRP7W&O40HR~*B{^`~(3 zJRMqfHM;exmV)yEs9nKOc|3}*okrZDedtSw#6SXF8eujfmzJz`X~zkoC^RHqKx4v1 zG*PX|S5OywmhE$BrE_adVwrdr&2gtpO|d5|6j@IwHEIqmK8htl7XVt#*+Zy3AAn3h;Nw5xPzgkT%{I^qa8wwo^>A>fXn`fP}eZ=$5l$uEnfdv%!+25^ZV=O)nq)8Wlq(Ay7r>MhB1oB2W1oYW!i_FD z#7UrYu=5#?3N8Ai4-XsxzM7< zsb779n&jJ`UdVB0GN$cLCDhW!H1}X8AJ%eRS?1hkYJP2hCgu@ZO21wZO2G;8TT_@)W0w$AZhf6n{{!dP@nQ?7S}MJ+F$O}-9nx_ga`#(K$gQBuTXV7z z>rX3OS#NG`GeNiMR2?>HGh-!4Xr7MO*4n;l+WPCD5QJ?EA z&AT($uQEMQvQ40UPM4*5FDJr`U{gYeq(lyd5dX0?1^?WUf&bc`Zr7hckj^H^^bR`r z;?x$)l3YsA%{j#HOu)`m0tf-SKB^eU;+t^&*?WBd`$q$o;PpXJ`~7#kqpNxN`WxJN z@(TCAevK!D!aD*>J9YHkeuB0ekI{MaDSGd|MsC9}VQ>@q^&{xK^#XU_{fI~Je!`8X z-{98Q-w}Er@#y_8Xu1DA8t?s#zL&qDbnp#g@?463f2LPPvHv?N_X8-b>9WD5c3%F_hfNdoPdC5p(oHOC#dBoHNr z$g$O)3o)qGUOa?`i$~CK!8y39GY1GRIyXuXYoz?o5rgEXLk!&6}Mvd3V;8ahy<#HlWp9+C!K`8qi`x)?mR`Uj=}+n~sb?)2{kC zAsC3;hJLy;0c|ivyK-n(d@r|n`f=s>yUtYJQZfg@qj@sHOpB~F#ui(%?Gr&1W_+R- zgK7+6=XTxqb7?y6!j3+3F&I+8uIo;q4DR!F8_)7V(76JdAZOqzpc@UiGL844MepPc zbnG)nCOFv~8^KOs2}%Y>_W4kwm&V$70?w^XbAak}-XE3T6;$Gc=#JHwnv+WMJh{IJiF3u%VqO}fqf|LxFE)3^A8K& zya(YX%_a1dZMjfu=-98_QkKv)u869@ipUDAR0bxYw&p~QIl6TO-MW)CgkLRIMpqIf z1?K1`5jKL`X9U*g1~s}lf=fvo0@)Yp56o}*F|sN_f9SK5J;j56dE z)gw6}3;F5UXs&L;$j}}9Nav^!DgB{^LggY~(iuMd<|hmiLQj7Dh==cg!!rWz&f8zn zdhdJcJ!(f@qUH8mdY=4-8*e`1TVA)cVHE#d za0vh3IS24xiwP;mQFrwOni5YFau?8W?Iaa# zWlO>-n{V?OkV*<^AfyDhrmL*W(GgPBXZ8~;bZ_Smu-s2Kw-0p$pZe<9SIc(8#e)Rg zVZ!Y&#~rluEHo+b5rXxEpyuVe(p&;aPe9!QS{i|uehj6jw$LR-@PQqMYX{b1!Ixj4 z@jM^Gse5pPPHZG;2L|H_v$!1?PTE7D?KX#|cbh%dVrsfGdykoIbLC*A^=9`qZ&u{e z^?mlDhnEA^-z9jtkfR^tN;x(qj_5kdiga}ks$gLK9bi7x=<7P)T%5vyxdagbbFV0{ z13w*_4>@YQ^|9{3Wy(7VdfQleLI)sCkV78Ox>A;>C~(}saOz_inT}6vFvaPrtV3`)V%~6K{bc+4sAZ2 z*i1UK$$JDdJ|yYh1U5lU&TTfwEeg%2ODn<(f=xiv9GXIr3T4if^EsGn^?3x7N*yzp zX{{Se4=@iE9aGzvn!gj=W^1_sC7^kL337Akv;;11lpGtM$EK%EtQ{J5{EJmQ%wdjwFxXs?g%7t z__ha{+A4MKKei{bp1?8z|FP*RmW5^GXkruU2OeXT4&|HQ=rZ`A|N4ht@%;Tyc>2wE zbT4mE)qVqsMeT^oZ$U-JZ91+&q?B|bqp}wnRei{=8$xV;8^QGeT@T*lLVg!=nja#r zum|Z?L+HH!4LTpcLqW$Q-23hq+vy8q%MzM+#% z%xcE}n!6wWzghe7Kj!Ymn%(D-pPGgi0Pa-m6KVum3!&Dk#n(v=aPEB9G277}zYpElcA@3MHnd;bItH}i)S>!{RN zf9^=;Cm3>^x+9+Mj6mC!h?#p+u#iAo9!7W_NX8TbZ8}}sv^^=9eIOmP=+tJ1(76$A z(+Mxlw@tITw=}{mogm1>H1^L5$uuXoJiGuaBM3EW5$g*qT$vvbAtvWTXb4(zb;_XB z!fdtYQkGz%;{i7&ka=fk;lRI1uPPC+9Ne4(n?q0uaFW0!7p5?x`Xz-Rwau5xnIXB@ z98-bl&#IkM1Tg`2yySNym{fYXw(HXv@A7<~WDpEUE>F^8 za?SY(%KEI+H9xm63lr$9ChnHf@x}Hewo?he6nsWleZC`!U=y?gAlsHaRw`T3fJT@0 z`PKw13(Y`H-!t5K{T+UwTl(RTKk@Y2U-0DnU(h)C7{x6^sOr9n_<~mKh|a>AuypJ` zl~2cYgYN4F3Y%}Cy!$SO=(g?>GQE#Kp!?B#WD*3a4G(dp>?TSFU!bi272+yJa5{GY zg}rZ4Ht-C$2(0Jd{($}muh8@09Ua#T6tz7x2h@7=6`Dt1po6Zcs^<|pZoR?vufIp{ zy*FqbeMVRI6Y9Ee;qjaA@a<0o6ajeW*-QKU4_P2rc41#cJSwx( z(U@}$UHO+R%;@(-ltU|tJ%dRz_`kgw>yUN)C`hr;M>yw4F-p4o?^s~2PTzrVtqe}9I>Uwn>r(sl#qJJ{>LQ*68oMI zdXMR}o>a({9m3PfP?MnbRBeHa(0W1uK9x%&jGpnB6nsqO;{e=ry+>B+nA6?-J%K*n zt1N^i9h%LT?GE%EwCkzZRTw>dFkSmds)&!+R#cE>f& z$<3)b_&5kU*h%VBTk>F1=+cKL{dxXe^*LaU%lG;50^29K4sG)GI7}hbrtD0>?0qSi zPoOP2oQ@fL6ETI56U-EroUu>g$TWl5yn~s1z-M9cksN}{Y2o2)EDn{j=mK)EB0LW( zj}{ozmfKDd0+q5P2`(j<9M0o42sUb-5=jhdtg{sCW{1!P9?WKcen5npK*up!QZR?- zs6CsdgPB5+f}UKSn+FpV1TVKIWtllLX^z3HB;e4L!I?`C=OW~C11j4dp{|SSe!>UY z4XogITEKfa06P#blv7hlEmFz;MTDN(*3Zv1R_EunHl?wWt}}j(0NmvE!b@4#d}9U6 zGAvU`=eLBidvN?xI^M-$gz|wbIy*VzbOKIrOSV+|e{D-5%#!dQo8zfie6i^o)*Q`7 zPQ!JA?0bAmkllOxBVErgc=hu~OS^Bo{TdNhE3q%80J~4-;mD;5L|m&vbYd;it4Gjv z{|#<%TsK`;@56U=Snudos3+edyX78Yt8O4HsTs%8J8`jO7-=m}aK2;|SE}#hQpGJ? zEx(S7%37@KLuJ=3wBC4(y1^&NZ@z)*{>OxvVDS=7bVSv?kI;7gIcj?Dv3!b>=20~F zKS2M@NBI7?UvT@$Grao#N8Eq$+OjD%H})&bhp*nFWrQ$oy+_@|hu=P0|1UiL-R~dq zo=_9$s@iWNr=knjvKw$Ny#bf=+Hv$sF|HMKBCGZ~8i!t^zW)XC>TaO4{Q-XfJV)Ej zZ_#r79bMXYXuI<*dLI9T-lxCPq5X!pbbsN|$@q^22k`&SK7jvc<}R$?9fR`p6f|dF zL6;U)mt3>mLV8$N+P;7`VcKfUnY$6SmyX*4YXPl`?kOu`Kdy%CA-oPCC2T)k+5v-D z?7>|Iu=vA!tnSN%!+ViVZ~!?GTX139a^ysAM@Hy6YCW>3^h0Zq zdT=Gu53fW1(M?F(&oPIWq4nZM48(3n&y~$+JHHN{S2m%QWpC_e3?^>HV8Ryk$8KVM z8wObKy}Azl*EXQ{$~p`sZKt-;{cd5og=4nR{cXiC%Mq2yTG+i6qbX`{#z^933@7kf z@f$dXj*=Q+eTe--37atxw~_Z+i@s}XF%-Yi#^^ki199tEZs7HF51qH3_uI((Zp8KU zEx4Jv9XB%QmeN>H-;C?2oB18q@-uJX=i@z-Ht@fLwfsKoD3xn@Eqw-l7G7f{Z7Tu7 z&%wUFc-|{T^H@ADc?0@5wkLKKo$g9>#jZwg{2CtTc`5vi)JW<^jB@Ny@_MTeC9%}; zUJx+-JO{SJCjZt9>JVla0BjuqZ(|$Z`FND?dG;eYN!}ChdsB zM1pPl?gY%-lZZL{5;6avz?NZH@Y47L0-@@; z1XYd!PwiQO(4%*41~xi0fo!J2iG-FpHqD;}+E&u3Y2Iv_l3M7*=J8qub$4+kw+BlP z@q5y(9*wQTmHd7l%d*cJ>@ejh)wfWvGvEoj0&^b!ZUk0fj6kF@lKQnt??PT@5&s?w zC4x;bGv{V*j(vh0AttA1Z#7`KEZk`+!6~V(do0jBd7nkRrm|3H5^&S$xMxw@P8OiF z<1U_m_p@apzWVuB^xuDl8(+W2^{3zQLH{S-{`x1f>qoIUJPjddi*P=(m9FV71|EHj zuDfsPoL-{m{(Dq(KSXxTFzN;#qWj)!q*nIhz`0@^IA4ro$&JWtd4%(YgSb*Lic-3- z#M(Q!R(T6~Jugvv^8;G%f1tDZ0i6%tqHgFhp8fbMp7C?tr|Wvcvi-&rw2nMN&z>A$Q}-|iZa=ae@ijlDoXht=|BR7G&++O@{SX5 zrw$WvVJJBhPUsyXY$8!}DT3uuTff$p7;UbtJ2eKKiN_6c4GK>xF+?Jqnl7tNxDjfC zSS7($d1@!hPHac{$sKf9J5eFv(VbPEWk~>*oZN}rh)u{2--y=ByD)HV4+dlRpzrD~ z^j_XUaP7fp@?pYaFM2O+MV~^DSGMuk7S^|*=i(;xT#z=R<1FEJc0Eh#{07$7qVpVe zem%M`uzgO)*P`p(8g!js%|2Ilo#lgH?Q^R+W|cd}F>R+;m|9LPrW&-`f7QPH;12R4(fUDhKM<6ln|AoXKm> zveN2Ny50;^%~6)RemJkmc2(F^REJMP_0gHs3{#QYpkv1^H2@kL)X;Y=6wDg7KCJC z6&>;Z3uSaW&v5^npYi&q-|+OCpU`>p89M2Bo_zZw?!I`B7vKIshXcI)@FPygSKw4a z720k+H~03A?naq}b^UZs%Kqzkh@8foNUj(}TuCnyO1jO_Bv%dNa$yfL8t{VCEL@8D!c8%nzFq5sKSy1ln(9DahkuYW|x=mRtj zJuskkTz`!2TVEruegNl_s}Y~ujLOzQymlIhZ72`&#c0n9@zmVNOdECsRv;I8f8fh&8q;_|+2rmF{baLf)Q9@>TE zBRi21xd%DX4sKbI`;i$z*hTF{$=Og;5oit9BGF98)=IE-r=5mvr==wU%8n%1npif| z&AG5-h=m>-F4DabaDrUb={?S+opYf`gB~4T$%!4vkKBfgBO6e1Yzv*%PIO(`iH?ig z&`F>TC552p(hfpq6JfKS|eq2SMof8O912Xlgmv_CzhchdI=hiFQ)kL7rc%w zL<`$GR{(53OYoiHHO{U?N6d0`vMwEd|7tLw}%E4!t0D>!x; z+DkdEyn$G1o)};p3 z1vsiP06Fzl9hq+T(RtMbqS}?A(@YhIr&?+KVd|TL@Z zS5h%a^`O(tZ?|%K359M!g=k4D94fP#z+F#*H)m@y-89-X=Q=G~lK}32FPUiI? zrS>)|hMu8r^ffZ722j)c2sd8*LoBq_x^OwY4u@j05S!D2%cix0p4j9>rwi09vYi;kh&<~(mb|JFj0g4u7hX^-Fh zh~9f|3HTRutM^gWO=#YJLqPq6uYdk%*^P}Ouh4Rn;3n|;9=yk^Up~^ozQypf4}|)2 zfF^blxebW15m581p}+R=l^AkMv zFF%*&+}a*GI?6z%FeKfYz(#<@QdjnF#ic!)ae2=cI<~DyI4Jn-Kr+uuI!w4xDMxnm zKKqe%Y##x4fR60|3Qz1uS@@#&h@cBa>(wxHYQc7_=Hfy*?kGA_Ph%kP_U(*_9Y`nC%1&-YP0VIAo!f#DI{`zdegv702~Lg2>4I1` zv1~p`=XHW@LdQwSs;_E#Jvhz=7#0@6VO>Ja-5O<_qLB#1&Lqv{Zk^H_Pv zB$Vv`%2XCI5#f6H$6#0?Me;eP5z<|Cb!Y`hl-dyzdK+ooM4eIiStipKOjw zE^8Xy)zlqv1lKj&0sSjNOcJanY;}DT2{eIi!ZrfV`UJXb7P6eUU1Q@gnb(nfTXaaE zB+vvlg)Kt~P4+D~M4;(G%m?yRy1mI9tK|V6Xr?^`+%E0nJ`OtDrigVWLf{7OJ%5M$U%$bVS8w^S|J_pApMJv!_>Vu~ z{qG-9)pZM_yw3Hf@A>f8?(z@l$of&khkZI-Sjf3zoZ!8#6!hU#dJB#vH{(LV2#%(7 z;b?jnA~SmluwLvsUxAI$#n^qm8W&1#Ag}ioa=V_Qir~<^o1D-HVL9^j1M;dnQB>cH ztcq5Y)b${}v=tE-^O0KGL6~*$co#+m<(3|lHFlxAiS2uj@XgP3pWlCvH{XB2i|;<5 zeeez%`)_05{wvF3RHDdFziV;$M@#c>7<`BuFMpU%R8}z(A|U^ffgu}!}bzT zdkt7}V;*3acW*MO?fc>mY{%8TTj=CA5rW$ZMY*_b)K(;gZb$afJ;;vOgIv0~>I+Aa ze|$f(BX=VwYB!2c9z^-s!?vwf>8X7vIk^WFXZE9pZcWK0tpuIzM3NYRj-)8`WSqmz z`U3p)?lImxzk%dahb_^Xq&FCeZMicj9Aa)1q8!dDwrzXcH zr{)|QotXefc#Y&7M_<+n+$g(-fvn@`xUv(ySLyf^ew5CxMK>K?7q8QOL0W?@AAY=` zu%n!xVCfuND*-8(HPWHUnYGiIwG&=)Pt635oY=Pz=Shb)=l@nCu1ecta99D$@ z$G)%+z^;n65E3u%LVn>!&h% ztUZYiO`k#ci%e)mOj-vvoh-xg)DEnPEXKxD<(SFwbCdzed(CGlsExrWp!o!pAZ6nH z=F^4F39?)6V1O>-9^KgW z7auVA=p9D*K)yq#QrXgns+K{F-hWP@4WobL9-h2-jrTwNh&S)QH3y@li68#>12>+2 zjmO{qfSANeoJpUpuA`=71ThJvsGwUbY3f6D#}KO8>F7F#(0lta3JAbk&t9XoX9&ah z9?)UZaT3xc4LzuA8!~65WeCr{{n0WUf1*qKh2QpPe8dm@($7Eq!teWzkbGmy177^} z2fq9Gr)|ac&F_EU+5expzu>MbNz=B$zcRCCeY579e!IH5tFkJylFiI0S!jVJOBORT z9x*fHk#wXZW@aW^WXsHyhICThb3bvUta{%yKOn2u)3JAKI3VY~&K2=Q#QR^c{`_Zx z?LDTpUK51(Xmwkt?VLx;$Oc+Rw^;WCL(4C4_lI9m*)oB{mppOSG6*LKwa-sD;?QN9 zRB9q78?rH4oANuz)T+;fTT^B{PMo&JKM1sf5PwYMMqrrsQyUYYY)q0nDx-r?&8Ue9 zR#7YC(V_zhwgAG&6FI)_3S_%cOgk$l@C0bPP?Nf1IZjyR`Z*(CfJJ!a`Mav^-BRkL z%=UI9_^u<*m+%v?1-YrHj`W2#HW2xKv^`IIRaX?~g6c3H3wJ|hs0+%2oz-?*l0W*g z!q6cp{aL}7pqY(TW#Z;oC*C}}k9UMx2I1V4;DgpgZ_Jg1W4?ee%W}bDp%2!p!?8r5 zNxzxEZ8F{Q_Ykm+5m3t7k{z(zkc{{D=JDbA7Jhtr8+XP!FkX>>u?#m1)8NKZ2(45b z0!_AQa)g+a0x{W^Cd4rbIYvlM^4_Ba)uM;InNN2sZu9UG@_vy8*FVCinKc^1!MyR zo8kWEd_TsFU2sbCsFAX|0UBNZ4j6}MdJ==thGs{xy#8o`s5D8^@FLHnJNzucc!pp+ zOJH6=cgQL9{aam67;P}*G%0GmeP{x+LylRh6rde-7I+E73?YCL zP)Yr9nwXTw1a1t0oC>K^RwrdPP7r|SJPUAz&@v0If`ufO5M}~4$%r&2=q~w{(R^eu zcbQ84KSiLO+zA1O0Oy!{5l#?hN5v35iWJPm++=nWu{Vhm?!^W$5mXY=zjmGveK9qG zn4w9sM%4)b)xCG1CNPtGob#@Lf9@bodX_7o$$L2JR)CnIKIAuy!!c5e(zXTIg;gUY zub-{QtZ~h<%sDuTN*@V`?E4iIunMLpF6D&XZgj>(vVe2KWcfaBhNhkA5zWC`^l{|8j z-|hU}_h=kkA-wpVZobCE<`3wczE5jgg|2@My>pN8kfxVb)PV!%-EhVt5GPFi@WrVc z_>z_u8y$&>#vHZe%DBu-Uzdil+Eh#uYE7AOIDX0s|JZj0#i9PRif|03hoB`T9QvdP zG$%)*F(HgV6M*@nHZBBplCc;c3T=D{tt~*ATS=It@q4H!5kq7AJJ3p{PGA?}iK1ZI z*$&twWM4ogRwgjZC*1Pnn2)0Z*KR3r6Nm|HWjmYOnI3lPm_RMd(~k9y$o8`5y_^U> zAJj#=qb(&69sEq=)w!5#sln>ZFrGhsfOoI%BFNi~CK`yb(qxr9GL+_yjoN5z)<$BE zb|w90(^*cKVN7M-ph-DkQYC&!b0Uo@)e#GIDR{j-jbDF#i=Te}0q@?w#GQ>*bnCPz zi1tT))O8Fc(&z}YaRoF(j3!$tpcxWE#MB5fDS2OsF=-|wtR^LSgx5{d-o|Nd(tIe} zvl;f7q3KP@b#iY4Z!*OYQ;hK>O9e71r_-!|Kc@Q8cKXsLQ>B!?GjmK4W>ef3s7(@d z2KX7kCs36BHG!d_S<+Z-k0zKBo&vHfEV<2n0ilHSj}5U@u-gIJ2(KIAzCf*C;6|Vc zmzJblB^>AZ3LZMC)WrNB?e**_xi&D?T}+84&BI7anvaj z#~6p5GYKifwgBn~!6qSqJLHt1%EK&=@Ekc;jwzVAiK*q_lv^$ht$+{Z5|~S-q>Ad_ zZB3dTjr<7}Nh*;b*iL#B6J90CjASY`&N$*;K;Y2Q2(Xic+X=!>&N;^G zB$V9|PG<-y0oyr3LCj40+f+Xs?M7fHAQP~ul5msPlFUHI_*R_o5TNn3d7tAh`N-Ce zp{8RV?yeqrQah;I23#rDn;Bwf9RKhN_5?%={h{@|kiGCWR%l9$A^%QsC z{HU@LpYXwZ|IJ6-e)1Y?_nzVI3);lZyO>|+d8>CYHM@-A@maL@j$nLx5l>#c#M^g2 zs3u04Q&IHnXPVig*Y7YiyN0~_Vfd#u!ZWc6u_c2D%xF?mJ!RL8sw~ND?GTDv=Loe0 zVLDML-$sqw3)h!~3LlA*X#Ed0iVQ>RH3^=6mQT?<0&b z49n1=fUj3r+lBVQX~L|JkZMNH#3~`zgP4q3^iHl~<@R07^7AC*H4tdL#{%zH)q?WI zK7QU;xby5eHffx#gEO?Pr|24;MgQD7ww}Mk`(I>k5X0oipZJ+y6IRPl2&kc3svoRr zcpYt%x7DC(0n_rs_ZYwV6bsw02)~~&#_gfShpIoVrfUwhT?=R#-9Z1s6M|4OKV`h! zeFe1m^akuF&`uI&XRik1>(kEopM$oz=ID#As%*nzn*TOiy{s$NlC8nXGd4JU(uxp^ z!boN~hO#2jN}#o;MGyp$XiJSiTUs<42(a3iAk-6Tx`c2vCPt`IqMm@0W0euUDvR-7 z@bXm6in~pT0NvT1UrIFtWNsfqz}#zgBmLg#9ze_%Q4#7 zXp$tHNU{l`M|e#UdQ;L|$(Z0V6+BPuY=Xz6>2iver$UU6^#VZy;0Qv-Ou7wbGp}JT z>$*w=k%SOKvWOuuL;$A}LjI3XhR0HlPZ5f;Ev6>fkD~r*e&)TNpt)Dp^xDAM#uhf# z*Kz009YX9KUMM4zNBh72_cQn3e0Y!fwL2)#_ThS11uXfuafxd{L_sHXllN2>V`^Cs z!PSqHk}jl`b)mj*5$Rs$7oGD zEhR}U!y-@z}CGxxO4vw?mybb zlV|tw=It{)d-fPvS($LQxPqz>8}!Ft!+=JTOKiC;k%2b`wfn5f@p{V`1kFS&xxMtdpb?Iqy7LL(ZYu|D;M9k-oO}kh5xA zvL$=@`n@Uv<>Jo%PUa*-h6AV}0o+zuk0EE!5z2c6p8Def?YQ)j5m?7|VD|gIQ#!YI z_Ql$EjqKk_1vhmrVaD^MsZm1e&U)mjSw~D|C;$!3B1D=Vt5uSSDXqjfK>E;1)wnm6 zQ7P&2JA=3-`9xqP$tMCZl|{*Y0iNtjD035_(cF%>Ng@g@P0Wp8ls>S3?~{}5-BOwp zrI}IASNBt8Dcn@g9M7J=z*EK}+Qk#X=Hc_# zm|nYw#Vwgn@mDpG@7>p*aEImgtB-tGzom)2!S?gFxI-gb+IWn?=~YaxY~b~~_qe&X ziCgQpF*Y%e=~>#?qkDMzU)0f*2=Tnnp% z9l;h^*n^1NRwNd;6C^XJXdXvyRX2(nhEU%#i`vdvl<~U6;!ecowIGic=M!56GxrSm zrRw2J)3XmQgq3d&&O64#!Z!|A6_CL233FAQ(6(b-~i}vvq%&b2^g}xWH?frz;BmM~ZfYJFi%x&IRnVGlv9m&A) z)yE&O^5_jVpT1KoN&iToZNK^vv$tQ0%71YH z;YTx*`{sCGr~SF3CO!~#i6Q7NOjg;P3uA+L^x!@X>N)M{CO-Z6995My@DEKwu%jIk z?2VA)Vulhgb5!}6p+3lhVTrmx3p9pXp*hMH`bZlzMp&awb3^q@zI$;SPo6)-*vu4e zZmnbe&IT4&=CN{X85`Wb_h6gd;!*gp{FHytL`f{70^*hVB!1GU|#*cN3DzB5M@;;61 zYkN`Ud6w_#B3i?Y2`3}8gj_;X&;>LEoKsQja|-o@-fr0#aDlIPnlL5I;IkCX{uhzBiujAQUG_-HH%?@)=6hWoN&p+Db}BM%U0!Ck6g8V&OHa0 zybaBc0yc?Vuo*yC0VCCqR)X_BC4`ySnIYw0vL*lbFl1MXsU3AOWM3+46YxoMq}0j2 zKuv)7Z>0cgH+HQ}4D1*U?+EXCn9w}LuncQJU{1d>!gI94=z?B^q_?1=b)FC#=7W72 z;Td{lRS%)Oc@|eZb5YnZg{-Opn#3gQ=HaWUMnnG!UJ_t3tNf!^?{QDk;y1Rjuy7Nj z6LT0In?+mKAbN+U(9t)E+NOS$(9k)$jGOmfV)gEGHAmsbqgPnI!}9(!g7G2l(9A|A z7F7(6Okrqj8h0N)!TQz~o;-bqm#+kp_wnK5Tm1ahsbuDaRc=0yP>%RI?@Zg7^u<@J*%$VQi4~Wg@ z7+T^ri+3@5=Oq^J|A3jT7ns_3#`=4xBha)RG%`Z1O{V-J$QyeXcAz!|9f8P z?ExA@bRdRhMte2>OM~v*6!hdKqboZB-8l)|PE_+W_At5xbiB5WkZYm2=@SSqO%PgX zYV88OWEvY`q9;_E;sT(L3q-R@~?>?uiwJ|`AK)j6o)d+Dw&!1!P{wg{b9 zZ}{(%KeRsm_!6nf$@p^b1sGqjK)S270$P!qDaw7!Q0`@n5)UJmCaCg}U_G}>JWbG% zABpGNi>klu7Hx0+_7-Lq2(qc$!#JS8~q+{V`SZQQ=S4qvD1NOr!0h7b$X z23#R91W=}E3Nc4hs3~;8JVszO1YRMquAt6e;AO1pcSDYA{Vyqa)%si@ga{@=t$~me z;57tXLLEV*^*xVjLQSH|^E4_wPN{OYuGZ%quRTjh5m>(5W>ou}HEc`CW0jsK2*J~Y zn81$b@_H%DTnQYO_ecvB|hM zNkCD<0#qiYVZ7TZ8km%lz;c4tCfkOxKs8C8pm81LIfqy;i6mlL(iACuZ<2H(ah$Lc z+dIl@4$Hj=!y^JU$85w`jKLvNtCAeN)7o&35YMllL{x4&(yNA$P}oU;4Wqbm3XvI2 zG`K0m=d~j=xgHUj&FEcyhJ_bDtNH#qrXQfOYZ{&Xb7=3LMr-E;YIHQWwlOqzj6&Zv zhK|8GwDr%Ron@n>uXl{0YhVU_Llc;qU&Z|D7S?V*z}ohGEZ(FQ5M*QHvshYL$L#zH zZmw@(ga2W_e*Fv|KM2S^;L}g+Dwo_!n%y`3a*Be}rdh7c%Q6(0A)OMs7YrP1`s@v4VuGTI7_qBe$#-_06M5%B(?j zat%T?74VHMg@0l-4Ym#*G3AU3MCWx8@LJ?HOd>3^32qT(h|1QZi`G-#K22lechSE{ zxI9%&dX0Va$k+B0e6uLlk0U%?%O4Yb?TMQ-;!#9p)FHpNi|~4g1zOqW;}-_@~z&5?W6&v-t#Ls}ImKwSkFSPcXCb9P@Wx@c3hl zuinSx`csUqK1A=#rkWm0*G)TZ93r@8(LQpMW@dm|lPr(Jy85metn)jIO0LF{vrf2R z<^zlC!MJGYi?2^!$6xkeg`;BtI*L;Q(;mD=AmB$95S`&tHg19^|yT8*CSJoMKVpfM*N?Zs*6t}n-vClB$7 z|JGi;eZ?PM_wnPqXNU|9#drHJ;p|B>q`6%~p{FIvye$bdbCi2Cyi8H$YmRCfTa~W> z?F!$kBUVOR@$;uQ{BL6codd%J*gCfE-NU`dk67Mk`5bF^A7lOQL)^M^7k63T)2>61 z^?8)>9@Rd^gvkX0LBMg2(4aLDOx1)`wf6-cBam2D(1dCQUW__gSq+a@N*(R2#+%o9 z3Y-kqrDfeN%mi2x0=Rnri@%2)-z^176$G6jPN3NNFiKpG^8P2)e!2TG#&MLm9%KD6 zR1jX39;X%11ZHKdFJ%<*x#5mW-My$pfaUgTZhi+qQD zC~(|Q03J}K?B`!60C{{Dasn=i>}%htNVob*!EU!+pq9N;{s9dwnf8@L8%yH0m{}Sv zE#-H3ouO$d>tcD{D<2nVUFSXWaF)l!!UR~maltbW7kSPZUVFid`(D|q?mXi(0Vns8 z5I~-iC&Fy$(MK%5{T15TNAS<>fh!@DUe%ATg(v8ly$5akxJuSY%c)0V zMlI6v8lY_&q*;z2IJyWGO~a_}oK^OfR@Q^WqArxuYNPYo;1*d9uh?oh2Is4p`Rj*n z!G#tVSJ;8@tVVv%dT8>S5uR3$(v~q4HIDO#K?4#BT2$hQOnp_-G=S=k2_zQi`F&~? zycV|}VQ6+0`u+)(EHXGp`z64}X=S6!x3Ti*HP(6F^B-l<^*crh#Y6`JBJAxj475Z4$RbPR+>?G*Ra&UKT0WV)mE5Lg^ ze0&cNA8g>m+s6nC4#M|`FXQ+zQ>3`rq0H9?75-Kz_p?MLqsIR#!xHr&SD_8GpjA3x zQeTYM&$ju4>^|mhtzlwz0YeiLSYBVp(%Kp(3AvSxZ3VQ&jeA(T_Y@CbyupL*P59WD zpqPeNA7E;*Fq)MZm)MxtS_5O(#u`IRelJyUyE)WMH9zV@OjQ$QOPDG5c@IKtHw07? zyI>P|?Z*GV^CYUhPpPKHI)5>=)2hi)>dFOdG%z_w86It|-0hgMHwl4WsVf0S5DLtS zZV+rY4k}3P#xAsqoDQmUOI!}CQucSx+1-|M7jC--_wP{Kg_&&2v0c#pA%S+(QDByg zBaVp*YR3q;!;T3ATdIPap*hkJ(gZ1>ljg`%gwi=eOrW+4HUXIcO+uO*7391Hg88_- zV`u_IiE{!uUMJfZdF-NZp#tYAg7Ub_PRMWor!1Tx^aN?kgD5^2GjF3Jj0%{sx%IHiLB+d2U7(4Qgl|<$N&PhgZ^0`95y& zeem^83ShZ^%891xkckU?A030MSXh6A#=)D2E*VlF^o*ggB-S7~Plw9dZd4Kqjcp?Y zS`TUov%>0jl(Vj?p%=AxlTac!lOs`v3+L~4U>bE@qgdR2hRKZwxbyNIo_zcnPd@yNHNtE4(GR%w zT((?_+FnTTO&KJipDjOZY9Iq+tNMo_RD6EGp1d5p>nf zW9TRB*IxaMxU^cFyxkeMLxQ|btUg7oY2YB*$gLPZ{(KLb>W9 z_TeYIc>WY_R%Xa^H9~W+8CpXLC4x$zq~H{8Mo^ikzO}Zft7u`_5^k>g)LL0ee_EUL zyQzLPv)_Rx+fvsOW&(XE?;U2$Qo@M$GeQ%A*BmM^yn?oHQ#1t|_EmidK^j0~BgCX{ ztKRo4_s^rj?;OhuXbcpyJ5Lyj?OlK_@B$hLJvqPD>lCWJXl=W2^PtVS{0msc&WBJc z+cdQ*g0GDGRXj(w%Xg0Nf=sR{aXExSnp+WJCS|S|nrc=Q3;TxV_B}zjhrkoN+e2{f zSKCsbd+pml9?%Zj#bd8^G!EFs;m~yr4l)ioB=8}gOxV%h2(jJ%HEE6%u!&(Q%Ob!O z*mj^MO^p%)y7QidgMiC}u;aFZo7fxAlcr4p+F7-otKvK@NEsmEcFxOSY7#O8;G{A! z8RTsk_$|$my92sqJe-1^0-nq+FLj1()z?ONom5FB(mcs+N&jc;TArE>g;0}b%#(!S zdG8W6q7Qr^>H#|&CXCHe*zFfhE#2kJ6{GMeEO zUIwS&BE)3Wqp+eA#Z?`IRwt@;{iv+(Lp>Nf{FCjR!ivEce6w_`> zv_mMU>_Ku)9a3`Zk&xS?8UnZla-m1mkm?(CT_osqIu&*+aS& zp~@c-LyLFSShVf8KcRnq3k$cOV(Zy^+ z`W8^C8$vY=Qr|a^8kUu`)0Ux|xcTBI0<8w8FFGlpS?>Vt%oPuOeZn4pJzxPBmjHAY zX)scmv;(vZ)Dmc?PnzS*X+A*Xg3w1p8%&jjGlS8i5<|q&2rj})l0$j~aD-cTW<0uB zFWU-kgqmbScBV7ZqPQ>RF3iGzFQpl>Rb@kls(!b|_&`Pw>SQPYq1Z{&8f>n`t>sz% zDB4!3@SlEuhmW5=;K!fd;qBWexW7G*rNu!k%#LDtX&Ud|J;#R+FKGYI@$#i4B5mQv zAD`pxt8J_<4WhqShu)5QRFvmKtF1yoNeOh#I@B~&BRW0_&fXz7YkUpXCYC7lwnkNe zHA=nAXlS&da2vG7I-onv8-rzWnCq*Hc5xB&OE+=v=`-BE{}8X#QY!o21N0_54<|?{l zBzsYg6Ji9A)C;)e97!J8Et`S~tq=hfAxNl6c4TXW36IORfRRC{wFF&48^P8Zd`U%f z&_(D8r)I)Rwk4sXJ^YFaN$_anHB!p8`oQyO@;}4#&l)1|ETMN=0Zr>oWAi+zOs?8n znkkQ=%IgGe&Hy@93hdmDqK2g;chvHD9qVg&Zn@hL6#~6tC)(MKeJFO^hZ2ISl=~IV z2T<*H2-U6!QR{vXTF=9%^E?8r$6*z<9*5B2Ewha9o;>!41KK{@7!`*dG>ilsv?ti? zFHV z!Le&-0yqf)o|xNdg6s@!Oo7c)vKU!<olClqJ|f`peqkQQ}Z zpvMq!8O+Q8I%#%1rkX1a{cuJBGLNMUDX4)}M7&d97=|z5F6LJe$(bzl+&*)NE`efr;KrX`5>JXP%kHp+Y1k|L4V@^fZ9_$Ehk{BC_e-kU5E566 zh~#P{7t;1RZy~pF4yhFbh{qigOFUi|tShVTE3#*JU$ zQ#g$)AzECG)bcyX#UXxYC-^;@_!pyX_A$mbU#osSX(An&x{2bVdek;_p_vxcIXaKx znl^-MiVzZ8faugp_(tX;A*YdGE+^=VVdI-l8`G)xltg=zac#2pn2)9s88rjY_O2qc zx|iQsk!orzYMw+KKZ}`H8ZJ3$kge@QP_i^z79zc}0}<&Jh|Z=VmbW5?KMJ(nGsv!J zMNT=vrR&DP+&YFAw@}?a41Y~AOdMk18(W0@>NfOFE~9^X9gABpFtKz8(=@Ub4=-Ll!J{Yl@$k_$Uc7vOS1<1pb|W;f z+p0PH)6eg5|Ir=XyfurZOrI*FNyesp)W zVSKy~OY>vcSewJ_6n}6P79hwk02&t?IsYwx7Pl{Z~H{W-k=b9`Xmw{kz-nu`x%E zt1)_LV7;+d2`x#>w@}-CaaIaqQuaw|e!P^H=!=(Q)+*$@?r2Mf1v&{X0bdUxDAyUn z6y3aM2jL|9-6|yI-V(j?It1QjnddZkALaH5#z{izxTdTq9%8P74reZfChIU=$M*h@NL$ z_AR2R8Laa(--D4`I(mC1;Tf0>8@D8+(}J!C=HRktI^_7E_)Q9XXdUNm(_ju zBb+jZAd9dX(LiMkpz3GzDCXxYfp1a^)?WOG@wI0(mU;Az%%i1!2vyasXlfl)P_1ho zKz+*)ZL)&{e zZ{&WAJWKeP}&J=uw>Ik7!85^aQ;WHdIbv1p-a(#UwT5Vb9U(kF(ZSsiE4{A5g;r1?v; zqa=%nq3LCOT0#iAOLH*Q--W5k3BqTVfEmT))EL&*m$A4wh1JzrOiU0+8%wzV@HXDO zeSu$o{YZ%YfM0+802!+O>py?RlUGkMJ~NK~fgaS?Ymu9ii|pJy==6=~=xoE}Z2F0vAl5?Gb`3asY#9F1$YJ+ z^%H0^22B9f6GNayo2qmAWUN}G%)nuS{-`S$h?aR5<$Rg7U&f*Bj8Eh1^$=!VgqSQV z(@BtZ5^7!HM(B<(Qscj5;^OX|iH6$Rm%#7#bjq4PS( z@(3EekD!ilYaqZHXlixtG__r*vHlMSv}4kD#yH`Wj8jf2I7z6TVw`s5J^`iT1}%)B zJMEl`liWTg;Nvw%rD>9ua%=}!3SKleu{H^TnuOFJvKQDT(g1084k@ZUzVV*17 z0>wkuQ#=z~)FR7Xx2_fkdJN-L^#Ow;x_HGEw#ONdh zc2dgJTNeW=)KWNNXqQ=<23Em5s8WSwWXhO18Db!rn$m14A;}|>;c4QL0e$-94=3p@$4E5Wi5YdtRcSKuQ!IhYl3fN`5~rP?qP6z0s7W{^bO9Tm(kiWj>_6DghuBfI;n)F)`gg4zGwGn zge4G&k@;{B&&Q3BEJWq#;SpU7Q^L(YAOlt&iMVVZj=;n!WYzScx@!T2O=GC-U&g?# zCx|QVf`3W_>;lq|LRbbRmBBrtfFLYGSh^M|WgSQ=X@iMV3@mw18CK9cJ`Zhk58vx1 zHXc4zF)_EKCNaKs?=hCww{Y{$J#>vsqp+p}Rn5Z~m{`Ho!Uk^LevGNbHM9*(p|x)s zjh&Owbxaay<7gttvWlBgQrD*-R@N|}Lb4xq-LqJE`4i$(%5dg_BQBb_;rtaBm{|GX zB5iH&IS2fOK>O~bEix05Xl9uhBFsiAl2umV(Sw%}=IDgp1Yh(fdSEbxrk3o7rq}>J z%neP9ec5s7%S}*8A00F_sS^{EF=)*)m^v{SI>JgPS&cihjP&NlVz`(#SQwAaT-scA zG@3IbG1IBVD(&b#p>XTw5^mpK#@#!sc=`M;9^AWyn~P&ur%kObkK@JjduloRQa+`U7XJ;%$pKj6XRCs??76C3v)VrkV1pqw*x3@Y9E>a@Gm>P@(vBhXJj%q!hRKR$Th>LBiHc>WeiO2{|%yVgMvNVm%sIO-6h&I}p zrb?!vGR3e=j?DXy#G0vkS^7nQ)=C4D0nK{Cr&%B*1EdK#fu0O{?g=|juyI>}#eEe! zV3T9rJE7_cvMvE5O9i~Je?hJ@_>?-<#@CY9kO_|4d7jM5FCjDW%j^FEffi3QizloS zamFPH7x=6Gf?Fydo~e9@rl|T;PJ|h^1#AL60hs{pxMW5uz{xftc3q?Dj>$dcO)!=jO@d@1g{`2xV4G4-Z50sETxH55<4my zd(hE8jfvS+%q*;-XLwd6>tq!-p`4$gT0e}M)=`ubU zAH)HC#183e=?eaHujH z)A~ZJb(P}LNG%>uG~m%#18xu3GIVNIja$Rb*j||+R93Kca|T;$bGW@ehsQLiyBl+a z*&yz$j9_DB9G?iT-+udvj~W?}{~Lb#^aim=8jjH?cwuypi6d|Dp52SzYHF$G;i zBf>($kdu*(;DBIcWo9EIBNN#LMJTDPMr&s?wl-!7u0GtHr@1W;qot`7gFQOTjJ08E zqy=MxdbBlGA|ojp`nnQ~542*F=S@%cqPe{ple1G;T)Txkj~-!d>o&F@JjCYqU2NUG zhsD)f7@eHQFn`pH^KUtM^Nw0>NQQ1ac=Hi2pFKgMwqBl#M} z83Hfam)ZTNG8|M)re9anSjl9>5^9b`nWr)7s;Za!j3!!OP;5@jY$tjnjR`Je1+A{I z%LI+guyIL+%!n`RnMs|@gfDQDGu#&^+p;d50(Wv)eAw@e2+3?zf5*4uPO64_Q}luJ8P!(()Q#$ ziCyE9x^8872KepP|KWgk#6DWZafdiQK)HP_mKG*(OXEW{9j9FcYAHNUAlcJIXi-O` z8PYCZm11kMy}K_>m%GiBQXb)Tk}-MghFILc?9Bi)gTd|Y|Ep;-<@bGQq7sjfUIO;o#v9^VJoecUhO86N9d<(R!CR69o5(TUqv?ae}JuH3lVd9oX zqbNmuhL*qhXVmzziiRH4wG5+uU=A(4lW6IgMl~Pcu{k=LS}j~6i(waBKbIoC8o zjGxga4o9!?#{}R18Ge7~U9$+Y99(kGg1LJJf@8~2Ro8>Di3Kb#-@@Y3E%XmftENq# z1TCDxN)b#zS^3ji`MqD~{g>D8U~Y92R=&Bo7TpLV8rjvL3WR31qi1FtkKX=>*FXJ+ zXYYT-UE0Upm!B}pheId9QrXar?2=~W^5Gs3nt>ojX1P*~Z)YexyiA!TTFG`XA4J|Ze24Hqvv!pO`GS1jCNY3mC!D{mY; zcLRUjZ-M{WV-6?xV6+!yV5BS&qm{|1CeRKaG=i_qHFU(eqgUfWpwZM4d{7%Ev)6l| zI?_kYz)>0^OS;@ZX(;O>JW&}gOSt%=H8TOX#)h!5N+3=3VW~%p$%Z@(RHS1}n~(m= zEOb`ppraxOUDf%R>uG&7Jrb;_aQYg0;$Qd zC@aXo_%M$TbVIAtVSH)|51&56$De<}s~>*A`%ja5 zTiV3L${kFuJ;eQ2A84O<5b1PPjcFTCl8J_`_yCvn%&agHFSF%a(b!}fDl@`_Hl(qn zUCFHZR_fewStcey?2bWOo1oE65@r+0R=?Me6KqmW5Ox#Ea!)hvn`2aF-&bKyNQs5f zv?7gYNV1NZtcOPM3G4_s18Ah~0)faNKz4y808`7y$mGI1bpp0sqZ^b7gL&;>jGSj! zYGz30YNT;VbkoqJIkBCVCCkUiGBO>sJux}8tPBCwCQHl&7>@6T?Ejy2t+Ga%-%)ih zi9a6D>>?Ra41rmkA!u4+VNwdD4%^4$pd^DZ_S-~bpLG-t*v4=>hNYoS_6-rMj?1~S zFMV-RN}`D*mq>q|z)FB8`vR@qv2S8(|GqEfZpi*F$P6$eych@h@R#y?>li{U?qBr; z->%Jx$sLg(*!J4+IL&82p(p3OCz=oD#Qh+B%G%S+Il7*AoBS1h3j;%wG`CWCX|xE=Y9rVhaD{-qKx_7kEym`fC#osZ$dxdT z(jvB?2O}$w@#Os{y!-VxeE8*`c=O>Wy#4W4p8E#l%lFVWyn_0!X*BoGqmtH=ASwGa zn7CvDGcp?i;py-WN<>6lKB5zg;TMvQC|Zk0PzoHp5@6>R3%8Ig*m)(x+Fe7-%A#Er zz%#mpMp{mo7r}|P6~P|>IW#nXO(6o}3y@Nz=X=eeX~w|XBMzQn87QjjMML*Af)k1n zPXo*-ZAAj%mX@c5zO4_#gu9x7g~lfPx9>m3*1ZR~`}irwr{^&;F^9>yWz5~&K-bV1 zhWN|At#1ta&S4CV&0}C}77Z;!G>Z--q*tmT3ercIU)G9rnrNxE7v**RsOy+i3=G!fV4x-!)qH3lKY9f| zwzlZecoSq^s>!i0k=yCPFicJyu9_6<RPj?N(| zITMMY0Vs}(Kwfk(3Sz^N9TAMgKp&)r1)?M+7HtIEbZ;Y;M?0`K-H%m5@cylF{P1uQ zzkIxh-+q2Yh<#vu#7{py!-Km^C@ji>o0ktV3yaXu*@5E5X80%P;<9rHu6l+eGARpn zT7LJnRmg~qLR@eFQez{Ko)8O7bU6AtTQE7=i;fnp%68P(RieA423xD6=x?vX>RcZt z26T9KcZNpRgV{0KdTbbCqQX#CoQIyCHms~JV`*g>kDooqoA>W&W!rf8_z~+@u)4az zSi|hXs`^`w&C=H9*D=1dg{k#Nc>VDgEKCj~`i3cL17!J^ouy!Q)-aP5re$A@YlHxj z34mou7+J`3D4uX5;AFu~X%ZZb=kXX>sM9bRu(Bz_L+nXRYAoK=&{W8K2*}2EVm#5X zBK1U)IVQNhyPV9hhS#u8;3xMOAdqDFmR$ge4M`KD>Ng{Rq}fpV%l@}Ima0!|r*BL` z>SW(wSO%cU_HNzos@1!|lzO?BS`d`+@Av%ob9Y}unj*#Y3{8@!|9C*#YZZ$9*5Np4 z6M+LP4_HUAE=oa6tZSd7^b3&0!U!vAR+Bi$ZGn|KkL6KG5@9J1<3j}1VU_~7-E#z9 z0zkQs)Qg>ovB@|%f!ux?mZ8s$#z(7DeP}y?lMo1sc}Y{`e!iB#Yd6Hy_Fap?cUF-E zTa>z&0PWaLQ{4rRY@BvY$2m8d1tnA6SD+>5?UU;XH5J@eb==--6T1^}_|_s4d#(9d zc#T}U&sN|U2S-{^%itkcp9<1Z- z)7$(-{YpKEKD@q6k@T`#c)?8OvJ6P}nd?pf#vO32APO zi7!NWOb+5xxSd#t_@rV~>iTGH(oEM%(#qwSaU8BgY)T4%`m6~6VsN^yPMrK0a zHG+pPUgN>@m$?7*sha+1?ap1yuZXqrvp#x^iRn3X^$rtugXkZfz|_JrdWOeTUz@hM z8&&lkXzmgJ*3~l$D3^jz)$KwVA0nbIJssS8dQ0@1;N{ z(GlZ{_C!B)W<;SUThj6+B|i#X8ItuFs?zTp6N0ha(tro!1L&?SM@?}ByxaqD&C(9; z*RCVN(;Fe~p73#YhxZLP1ajNo-3xVvSs2t;5rR5&HC7=jEfp~lQSkHdfR?b;RTiSQ zya<)W`N&Atz|GYK!GYdbm>b38S8p-(@FgM%`p-^T<9{7AhPh89oP%T0(%Oc)k{nd$ zrXVdU1gX)XDCFmh3Gqi&VGfcAy4s3TzFrEt+xfSvC`3y`1)8-bm>q4y>U1~muh9}8 z&C=Gop|3APP=GJe(~>YZJ&u9i4&1)Iffuje;1mD7zIp!+TicshSz5x)Tbr1jT~ZSf z$WWHi$wiFL-o)tQI#%w!#s{9?t*b_a-DMPc$ikYkq>3~X5+XY*P46xNV`y5G8SE_; z)OKTcUsj|xoMSjoX1te~?q#VLS&vMXXAz)D)1g{%ddH*;%dbc&R&|+>Bgho=1b|mq z8fL~H7pqgp3^9?&`^)`kS{)&TNCbhzFf<<;LhPwM;1pW@PSKhSMy2;T`nz4p3e~C~ zY{#-%{KV3v?yM>WQqp`VaFQ@soEV&}Y<*mna=p}vjmdo^c|__}9k2Pr0qr}B5PZ+r zV;PFQS3|LnvBxqT-&=+eW|7!)HJlNFeT3XWF*25WEy8)O9E;@j+_sFsVZz{mz>lUR z;4;`74UGU3sHv<;ff>sKaxM)-Aa%kym5?#aC3!#@RU*M<$dcSmC=rlI9HN=+LP#v_ zcc2lFdufT^^ZkBLsL8!g+(^NBLd@JJ2bMG++rWHS_~qcDM<%V4CMMVIf=q=BQIIit zyca|E_gKZKkmG8bpH1v;pLIN8Rz{0?g`a=>Rn2OD`_2|_-n@m0i5U!yPOCnfnw9|+ z*LOqLJ*E22s`W!i%Bn?7YLyyrElZ`u=QSZJQwLv~+KrH0I0ogy#wUYiK0Ikt*ZeXO zmRgG{+EH82FkU^qho9a*!LJ`*5NNOYi~22oCD@lX6Dt2+Pm3+_F5jMZBkXlZUoNADVSXb5-ZVh($Sfr1 z*FxVjhT7I%%x&I7T}v;D2)6pxe$21k#t*;zN}#>s=iJ22t-Dwv#Gbr*jaTnJU}1F~ zwYnB$W|t!=r3lfn>D=Z+wWX5}<4)uil%j8F8V$|;sI2QG*t($A^&pD?OV6!E1|yYl zlQJQ-3}srG+j0~mtB)`;zkwUqJaC?dcIJ`;&Kf)6^kpX;KktaIkK5wU`%LkldyMhd zy{2&GchIJ#p=e7{O2Z1ayN2q>0CdKBpgZ0}Sy~%`rjPYj$sJvp(df>IQEB*w@nuoy z&5A=$PCT{;x=@?SA65s?z`?->R#%;2W@-<&>#hhU&^&Iq!phthzAm0{vb}*T7cB|C zLX_p_AS5Uh*7mOW>fmL3dB_Cc9J&Id%eF8#vBSCZRycLq3>Pk1!OFr48;h-Y|KmG6 z{O~J^XI|i}Um^aV-L7<-(3i7kDesd11 zOH4bc}ReM*wxA?u6Lo?@=>97)um z*@>x%iTzthv!d9TKuSP2Axp$0Sz;>r>JF>~o~C?lBh?osW;eup_C<&}8TzOCWhobi zEXFDD8zvZ)>G6I;aWuhr?#t3GamK1IZA9u~0Yi%s4~6!dhShg7L&oirmFpk?TLGlT%}DB~EKeUGY;^BcVmGY+A_;{fUze?Xvx zDPVnTE+7lRej1xV?cZZBVYi>~G6W5X*b)+#+|vnHX(lzizQM@kJqWmXA6wo>z3=GX-=~z{Uya7M z{Oo%yqhRKq$_J|qQvN5Ny?Vo6jCavHFp8#*0n|43pnGId^`Es5Eud1;@LNVu-Z+5# zN`j`Q8#yH{DAf%hxj=^;+D>{|4?<~ZlFb*CSc#Y{nTWTCU?S|Y8WEG-gwlo~G}2J! zmsW7^{wChOeU48bU*nfw-{B)4I!|6a!~G}EaqIRY+>Q5g40;lKM^sw28${ z=-LL6S5l9zky$L=zK^^7Jh$#YMxCw=eZ#Yup+IB=l zrJ|&~0qL3fXl`nSPS=F8axK!cN?5N)Zjp}nW?gLuN~_zDkWz}|)No|PQkw)f#uZ~^AUk+O0zxJ5mzrMQy3&${2 z7Z#woG#6EA@yHAIMO$JJ+M-<065&Ks^F)1wyIQIx$Ik`1{w`|GGFjtHR+cUd@=!~_ zG$ci1t*aIOH(c-qP3f}(m-t#{eC?~SvvPpPbtm{Zxx&xI1M#6@@O7i1d3Yi|A`&i6 zZn$J@iG4?m@b$qf_-g+poaS|o*WF=n=YgZgO<`{7hO1VtG|DJE+wMot>?{WFzC(Q5 zZG3L*ga603#yI8}ir$->sG!+;21Fw-DG9Z?$*9XqMPpGGvZI3$<>QVZHy4!TWFjj` zgOdC#npz3;4V7qZtU*~pCKg6Iurk?!jrmTzdN_~A+tX;SD@1;J0y0zM(bwIKdv|W) z(W7lVfBqErAKb&%?R9LdFJo?Y8vVWf=%sNF4vnd@XJ7<<{F_Kp$UFW>la(iu{2dWs zb_SJxVpX<;lk{iNx)N*%Co96pnx&1Z8;BOTSs0)fYheJIfQO|aHQyAy1YLXZ1$2c< zwxY2i@gwv+IvHJI7id$GRcKg_MKTyA38XK|h_7qR`y26oh6Iq^gb(Ql+fDosAgSg( z-lr|-tjZ#6ry+F^da|sGtUo5pxJaqiK8v}?dlF)iQYQ%~1Y`vFd9GwJc8AL~msL}x z+(T0RcbgP<4Nanl@4b)bb_E-nEycv-Jc(Vq+YQ-orpf6EI-SoSaA5T}WlsaZ8QV;P~9SJjF3(G}EnO{zX0nG-Oxv{?a77Os^3Gf6Ng ztnF6)LB$ON$g1c-R(ZF|eAISMt3IoSo;egXjv}tG4YB!c2$J>3@>+SGBq#Kvdtwpu zTlca4_!ZV@im!hDC!W6hh*v-TjF)0#A3mwI)b76egthxmS@#JO{11Kk-ZN}I{}F8? zOME}KFuVQ;%{^0?SlPzl+!_|Po}saS7X1s`$j}ZWs(26%QB^Sar9ILhBMIBc%z7jh zwZc6p4W9mq2#?K2N@g{JBlt_45D1ORKz3n03J8f1Ld-8Hk>E=~czg~b;&N3&!F8`F zTyu+rvwu7S2(IARJj7>I!##la4CD1>&B!RwqNceI9mBNVnN`H66`{1M6*anU^o-15 zli;3Q+#rZ*P*K&SrVT5vZb4oVU%NyHO>zOst6B)8YUCGGps=_G#bq^UXlO)hGeM`V zLw>%&+|qLh46Luy7j3d>rM!uO|1t5E%kD-VA_BO&T&?Tj-Q z9dYb}BleuUruxqIoU*5(5onSWve%4ZinC@Ow3%GAR+OSVRf9MW7c|BApgr1+;f{_t zFXVbVBI>#gA{}fIW@n8Edv0?--0mt%YeYHPA~!SuBXwFNghj#HH58718o2w%;JTAL z{9N4;9}s{TA7A9g#iB4J0a@`;D9_74L{Jc}Szm*Vtt0HOJHy)60hSim5booR?6_#8 zL`TBnsw2KVdL6kuhh zlR)dny_a!sQ66-H)SImTO_X&WFdnX-$5ob_PP9R7NG^!=!8v zI>S0z66+hhj-k#|u9NZz?{^55F8dAPx}W#nk1Dr=sBqqoa;LqhWYn_0)@?uPX<|CB zBP%RAo z2egA$;n*+0BEWWmCZ&V{W`vt1OPbhsraWdI#{CEdH>s0z41I3|8UZGzC*~&Bw_8fn zqyX)E3o#r?ZU5indnpNx-KIl>A@N)Zf#OcN$J(%M*ynYG%y)b*-%FDyuaj9!cAGjS z3FSCVPBQ!?OYn?Ksv3H5$X=R11&F(0fSLlEG>y{kBq8SbjT9V{L=yWX92Zj*OXO?% z##G_uhac51z*}4QFhiiNZr(+xrWny#b;zpfK|%chN*agIGPtCcUXi6p8hdBaF}kGs z(6lY1$gk>9^Au+CLD@FEOk?XuKJ87+ZDjQUD%z(}*gTDr&Lw2&W{_GthPaYm$;GX zQw`scWMyl?QJL_f#W~R0{AhBLFcY6%j+ES5o>u{F>kx)#Z(?$36Rq8&h}7gDBcBh^ z$tA3AJ;3zRIx6ehkeOA6ng$wGd^&RTOHouNK&wMsVlJ&Qk9Ae3snsDlIUDI|IcRHX zMO{rTElrQAN-d(JQjnNPplWgv6qJC(x9(ASnCDl8ZgApuBFii0L96iG4RNRJA@ zU~LBOj5XlybSoN4vtearkBdfTxU<}ah1E&yHF3uO>wA8N)Al&-5{7#Ddu-i7LA4HD zedFlv8$-LU0Rv5SsL4!1W<(&06Cx2$L(7Q^M_o}4bmhf}3k^a+dJ63;2_8<)h=~kU zDf;@_T=X`T;_><@-ah5M`x-IE80e@)ePsZ&Kuf`xs)f!k#?1zaQmPBYFx z=YJ8c1X(*F)g4Z_g!k9hMe@63?0n;+zS;l~=0nTDb1Xip6X+rT7VR8~pKC~TQ8QUe}yl7A1 z=T+Gz&4$XX&Z*fw#QtQ#&AupEQTn1PduU{m5h>Y^0>TdIUz4)KBv@} zvDToIDx*=xl!;w6`W{7-G$qou{xz=bINuxh{S2|&@77G{iP7yEnv6}8acPadf5i3B z>|<3Nvx~veYtcAyJx*;)>~8=2ITDgUa>zE44|y>)ZriY=Jsl!U_7HMnX$oipK{Eo7 zAlOT@6R>^H_|BXq;bsUziRL4T7Y0B@sSqRE1={ztK!MgS)TCbZnX&FW>F-nZ2G9x6 z49%Fa3To1PDSdY`KI{OmIl}GT=0!vKuYNSSMw%Q2i0WP}cbhM*L(37G*N@vze^jd> zKY02QYq#%VdSL~lbGHzhRD!^SN(3eHp`KBX9PJ>o_|VU*=_BMiP^=q5dRZHiavP9Z z(1bDqOj5tI2(*roWiRw0$B9oV3?4Wf~d zjLfcwy;m%(ox))55Tsz7R@i`K+DsxNHmMNdaoLEB%|R&Pl~>t<@|Gc#65`U&77?9^ zponz1`D?+hXb)%z~KNvcD z(cU|P(b-iR+YEH=Js6yr!NAxQp*Mq`!7Kph#Zfi$- zQ?sfI4NX8mfCj;#$p{HaLOQ{!A=osD#Yj#mLo^LCuS8GlY{TM%x9IAfLX3YT>?~by z5gh zp54XE+lzR1a||nkdMpwML;4EL_P3zFr4DV4TI6S@Dwq}JrlGPp7sZ(gXsOD>)_61C zZjIo>y$O7{KaKU7UW{}$;Mw*Jwl?RHkd;diry)MO6utbne*5_g{)k(|%JKr{Cr8m- zU5@JPRCH;}(NbB2f`lk!ga@c*$K()SXhQsvNlPr@Idx@)$VpB_Zn6e_t#zo#OGU4~ z4BJbCc)B@-Spxaq$_OU9>yVcif&A2Hj1z447Kbs{tHa7j2bRbBurS<%-j-%GH@49B zbc9+P8k;-OKR$!!Z{Mrt^`YJlgg99v*ufIEr}n7z&$^to|V~jWxmL`UN zHH{%8QA9$AB|+Cu5UTY29U%2ey1q0ih8qS&3qWLckY+#W+d4(CouOUw z9D!Lhff+05`2?9{Mar~RyhcFQ&X9BEzTJ}H7%okZXSpx4gU|rO1dhB{m^6_}^C+*A zq!X6X+}RZ(2tPC)fx%0ogHbpS+<_F*;0VF=V}xV(USIAOYQ`=`;+IfjC|AwK9^5L?g%-$X4EO1cr6TuYF( zBdxTP);5f|^eSW)=}}LZ$vCQd0;Z;Q1Ueer@bWzrH;>K{efSfKde>0WyMdyfTc{ekjr^8*6tym*vVR@9jZ?^LnnX?SDm-IL z_@3I~msEp7{S>Nu7EsVIiYi)Q^Pnt^GC`AD!3bYp7PqWu9zoy2JpybU!TEi-9^Z)T zaXJL&b|ay30O{3(2uiMkje8W#?1Nx=Bb*Ps1_VasASgTy{xmRG?`T9P_8b=*Be)2yuaDc{z&Qted*T}Ye(0*I`}6n4_zR)-BTmlZOmY_y&kPKW$15hKvNArpS}S#RTXHc*P@2-sbO7r z2W@Ah3kBI}{0<7x)<7GsC_r6xDZyWgN}g9&SIuWc4*GjrF*h@c*_kn{-dx7^oeium z&0u!C4~ygcQC66PnD7Xc=4L@(S%TW4JY>g)p(Hg91&PrpOie&;QaqvqeV_>oL@LcN z+}8tHnsDf=^Dx|5h2_y^++QBT-Q_{Tsu@Eq6=*5T!gxzL=GrT;G2DdP6CK!|?!m@H zFP4V8G0@(M_LdIR*YXDo?YyIF2(vfu;Qi0P;L*do@OQF9n3F9$%r3#<)IR8fOwbl? z4qc!zp>|QNKHVB-incJ;%Zk-vYtnoed}(JA;Y(_QVX5zs8S`m!?Ym8ojAmL~z5h8i z3%<;hFWa>~r%~;364mZ9De!TWxgAv#2iN)1l7h~uc^I`cvKp`Bd=Dp3=^^W#@f?=b zo>I>`mm@StSta@~N^Tt7nf?B2O{`yJA+evK6Ke<0c7DL-I6J`WVVrGG7gT0C8fk+X$qumslnaS|0S;{O@@5U{j@4E zwXe-Wb}Uff#eMTod}Ag}poZp8IY${CLxvXYj-UHIfrX|gNiqUPmGDCNo#y+s2`zzN zdNW#Pw$-vL_g}uo$n=7mZ6c2k-u{VOsA(QTu66*n0r@yX*qi%gBPd;ugyJq#wM{CR zl{F2am=80pend@rn^oRUn2e)udK0~~TNt_Z7=tSh&@#1+@}5<6EF;JFJZ>!IBdV$lRzM%@_l z8m5rLYc$;Vj4VcWWjBiI`Vg5~fvT2aH1*A^e!PLj`>5`_h47+&m<5&MB!7I!3?{)@ zdS2UssB9ggGizb*8IK#j$?%QNh2`}i*t>_TacNNr1vITvM8swxE~$XFmWA}Z8pJ0S zz&|Jn9^SEV@s3mJ_c^7_%EmNlWi+rFTACguHEjqc(1HXo(HThKvBtJx=vs%-)-jCs z&VH1a)}Xegfe+zo=o_0+Tv&qQl5)bU4zV%Gh}WbbBRvb%mDMOME<;0|4!PNR=xAv{ zYhxp=C0ju)FCz~r3E7BDcDWTK4ZY2^E? zLuEoV(!HDzdEE}q7FM`sYyo>?b2yk-z}egy-q-99xqp!+iF>q+mB!2 z!NYC5dUgjtJim*r`9aL~HsJBNXwz=w6vo^--bGUE6OUQuTh7zlyoE|B=AQ-Aw6>xQ z4NB8v&{&p=wyHGT8f(Vw#eQXIOM{IVZ7jrOa|zaZt5s|ax8NRuwmjHE^X$M#cRN~} zI#5~Oz|Yo!0UG*~S3ltO^T)^x4}`brWqxPQh;k;>&dGw9XHanC1migJ9FHUC`Y~i& zJA!nZ!$`9^grutnkW6z+zjjpBr`a4tip>GUnSGDQ%ikdO%D0Sf)P9WdH_({vK^*He z+>bM1{gtnI{A2tLmb>VLaXBo}?SR=!=aYpj`U-4dF@I6S~-*~Uj2{*%i z!_N|U7kJO}fBmBZE$H`BZ4+dBr9aJr5VH*BK7nQ)tZYu|B053-9}keXZ1QWpP|KC?lT>4wlfwTY(THFQkhLF33e z(rSm5AvFx&L2A_y(rZUi+_s3Cflbs8Z=r4WA@cOI@JOhEf4UAC+A*Zn48t|10{*E@ z2wpOu@OiitP(su5aZ^Ca2I!6y=;M_hcDsy5hI*AX@<*Z&5<0J zj7M)iV)4!stlxW#t<6Ua-s(qiJm!{F-bPN1g|^aZrD z3QSB4qot(@&CN}yYivSgtrjKaw4v5E=$l&zG{UT@1=R$9DSsq%b@d=4BL|TYu{7W! zBqs827Z8Hz@Nfisc_BMNgWQxPen$~Fe9;=GO&s7G5Y8V535X0OypmH89pn!UVHWP= z1)m!Zi1719kf$p&A-<^3PeDgz24=gf@c8B+-aVYhDs8PHD;nLUshHFk;Z}DwHV1Xs z8fnA!cqh+o!Uzph46T~~4oZt_`TqN`e3L&m-@id?X$HK_FCp6H8WQjFwW&ZEfn3<_P&pwj0OD!ebD*zFujcus-yX#(#A3RxC7okB6sD{wx^ z2MNFZDzfYkBbT7eu|I-5hoi`M z*FD7T11NGlfKuMC#6i|e+fP&6qax3iC9N;tZZ8V1{{bf_7Le_l*!Me76L{@0V@Y`J zVmSMKq>IRPqQnNVW8b8dJ~GK{lu%>e#N2k8 z3+0$(KOWi{6fHvmWIC>6jx<82G_|6(v0sT=fb^nQ9!@!@;e^0Zl0u}Z)IJ86-I9?| zHGoGSf5q#ce#Pd)`{?K!MovW=vMV~!(mw}%|11*obc9zeGHZsAP}+}(ylyzfR;lG= z0#bBHAw)`R`)D6M%G6r=7csnWPtCy5*teu+&Pc52M`CFYavEolL-Wccgu=4*C~TQS zJ^@zPJcp!;KIAvg5OO1kD(s}4(QtBFQ8%=KtokvyMOWfRSh0euXIvG$H8pVJzH?X+ zLem=wqZV3PKO!^hpzWST5zR6ouTEuMN*`MD&`m^SG$1@fhbY?E)u19}s-`|Uu&1pC zCRWqVvtcam#cpQt*ZboUQzH1Nknj%r0}O9BEA3- zF}dZ1u0|M^2!>Km{E$n(gubW1*JM9q!uHUbpxZ5G>l&KbPv!f z+EqC{J%PE|NemD4W3ay$Gn3;O=;=hOUXQ`P9!v}mqM^1L)g{HKEGR%#aWQl?mC$Re z(MWsAOG>3JvXs8GvlhNcOfE!Yc`2%r zqEH( z8?>`~E2FqI*^ZpVXq03pqpP7D(>={-ud5)Gqu}7=qAabyuM>53H5eNkL2*SD%ByQo zL-<$MXfZf6O6%=GZG9ukDr=A>KL&J71Y$PQ2>r}V0zNhYaj}W;^7Ms^gEK^I`=Tk!b*V{71e^x>8L7}jh9Q994)yh>u?3*9I0H?^DVXnX zz~*Edmio2mtIk3v>zZ@pFv9Jn)-r4jHDYVH4J$oO7;Uace{%zdd%B>jZ|0AiTFlKa zGcrx3D7#C~Uo;VJ_t7h=GG{Nbwzd@+gMU?woMy0P20Vd^Tlqjg3gVx^|jk03( zZUmY_A0kbYSD^Ldxt;>LGlbX)WD!c45`d5o1b|Gv5b|<$lCl>|^XjG)*psb{B2(6=F@lLA;rqFZRcv!5Q}D__v5K z`Wlf&v@aTAq|rBsrX7aTjwC|Pe~z#VUn2PY7YIE2cLbdIJA%%A$?bn2@bu^KKlK;* zpZ=?=_dW4f_?`M2e2)JGKHQdYJN#daKf&$DpWt!yzuu>(waNxG%zW;#jcmLNP4`^Rs@xwQaZ?E{P_(7zR*GQ#h7GKmwh)tk#b_@B9G%oE3!8VO+0Xayk9zslB2kZlK3ArIcZk`r40dHEBXIwQ> zDh3chQ}pM1af>X23xVbqUWDwLene%~BQ{5mg8C6!njVe)OK9kwLC5GS%Jn0tp{bR( zO`@u6p5H-_nz-65ARm`J(qZYH2LHq|I0vP`IUohsyyBtBtB0jiBp+yAuyKioS76dk9L@w?Y*G=fyMz&XG4P?e**k?Inc#}mWFtGb3ZbEi zh>A)>NNBv8?SE>133c^4WYQW+i!0DZvlt&4z{E&DW~Rs0Eb?u-TJ(3dVsT~+%d->c z&^HobReaEAB102LE6YVgMH$*?Y3&X5Xs)Y6ZFxDWODmA7$v}2yDar}e7`|>eUq2-w zpQcw$m@eYx_EXdrRUjoe6j2`jurqUny_FkIU9iKS_nP8AzcVJd%$1q_{h)<{mxS1v zn3@VgO(rb%@Qp`#ZXPN%5vYg>Q6MXi@MU;&+gBxnl(MXh2_*1BF+ID4>CLAYUE0FR z`X=sguVH~EHZ!2Zt*I`ojCEphqys6@VF>ng!@^K29xRVwxI+ssLNP8r0YwG5Xl>#5 zp=;oej3`9LY81ROv-0@8HX$oJACXaUsHm()ZeBjY9s@^5SA>OzBOo9Ek&&_R@eM?1 zcocj*{cy$D9QO7%V0-O4%x#?T)nQZYIc<$=?!m~&%11i?PHAbGJl6-2AtA7}w15`@ z=;h*qa9=OP1bd-6UxUf63f!IRB-EO5XPh9;OMosd0z(z)SZ=Q-%vvztS%;~XI*hb7 z;_mt_{QUDL+`In}+jk$}j(Y|PKW;t=Oh1(8w^K6#_8B!;6(5^vvfU9@SOMz?k5SM zbDzVW*IV!V6D;@q7hn57;C1pZ1lZpYa^VXE^LW7N&k#hogKw`Ot=d2b>3 z#w18t;RW|B7fVc`ZVei1yGR79y zRL68dT|XQ{3vh*IcZ8oYp>h=G9O7W>pM#v50XPMwBd4+xnWcKP4J|;ErB!3kVse@g zo!<@{pDegXm%$^Z41uY2NGfSX`@}6|*Nv!|I|^E6kV;FlbW7s7nJ{-x!9_%J*CXB~iyiY^%02jha3 zAFN%Y)tIuFoPa|f6h*2E<8c!lyLbah(a8i_6sqDv6~rXU!o5%$CfSYdC=K^S zWwbx)Qlc?6J%`@8yQuD%#M0(HY;SL3eR&ewH>WV(twUL6JVraUXe`U-LtjfX!Xo1k930Lc7ap*& zcZHvS2ttCx;O^#)D_3lA^3)}qId=u;E|}uvX(OCDZ;FdXSF!KdW&Gv43;4^POZf7z zF}#DKkU>C(M#SLciL-E~CED9N;F_%ijEzj;#r?#n5cKIwFxy*=o5Ky*8r5OBs~iKR zDbS}zqN_lI`L-%7bk$>`u?)ldT0DMm5C8n_C;am937$UO!pArF@n&-XA8s}y!^a*M z_a21psj~>Qw!+nuXYuuCU%~V8F{IcZL!!+QWZ0iZ+V#`$x$r&Wtxh7$^Z=5siG7_! zj^im5xt&9~_eE6tT|$K)OaDu#3N%86?|E9@IaCK+Mpb|j60HxT)W?|j*vI|Ls1Lq` z#!zE4hnt`+$_yu! z*ehs{yoh$mVvIFLH=|EuqM{-A911*-qs))i=y43K;pfm7XN3NE6LdvgLI|S2pxgdHws!oDt5QO+zB~H&fQ0F9laKX6Ox^2AA`eUW7aY1eg^Obr9ql1{88pZU~2<9e-u{be= zzE(X(yE{>wmWH&*Xe7|6s*4D)hB`D=OEN#q9DO zw6+eTqFj&4sum25E#cnNAJA6UK$yj%r6dmxdD+nT1QTf270~t)X#e?*5&qZLm({ql zztGkMXkQ((QQ42GAMINnWBg6h`1f4FfeY6W5)^}?$RLyvU}9zxC83h0@1eFUqkPen z9046+H9>&43@`C-QcIhEh{?qTtle6~-K}LTPSa2aTA(e?K##5zYoj#Rj%ti`)?;g7 z6bl1-^wt%_!qg0*VNn{K>Pae1)L?Eii%5V#gVvdVuO80 zFTl*&3Ev++2NMF#`l=mlZLY(Zc4lmB23zZE@b>V8sksbQFv5TQ;}ijY0d}tbyl*)C z3CF8eb}%=y#)b37FuH7t%SL9fyK0S;m~a%PMWG-i6kU~RSZpuBt=>vPtqjwRg;?mQ z#S9Hi>};~71`DGD`0dw^cz=H!uV=N`7^=bR^bcNSkMh~GQ z+ft_sK8?D-GpO)7hDJg}fYT9mfw5B(M4gPDn2U@{>Y85Oqc83~REDJ||G< zdVuGiA;`|7Gm79Mh+4u<5=N&9GTAvm>s+FK><#lZWG&xS#=>m=;^V*jRh&k84g)Z6S9MHbJ>V zQdy5*8u_S@?Omt|h<3LHM6xg7ky7k!w@!{L*wMsPf1EU9{(D~>L$-I}CZ&YjOX?-0 z|8BQl?z?+WiQR2USoxAL{=&!~pI`RF7X*?F0RN8mb&%k_>=F-i&tzD6r^3QB6=$!< z(?o*_SlZYXmSS>*paAVlBL=UR_~N2~-banivkfmrQq?%_zWWKA&);HsYa4@;b7=0J zfUaj6*)_fJjjw@kYz0PUZepI6*3dZx=g@ovr8Xd?dK9Masc?_0Mqom@TGvaHQ-}KY zVfaVoAd%aR{d1^lA4h%fEQ%UO)C$cRG{3gtMMP%m5R}rOtSh0o6L~bMX4Vfcts}F% z9bw58gj6dW1CrqrBk&@W!t>$apRU3!ESI1vgnkMq>S>&rxMUlE z%Y^DFOJ5u|a)!l?a9BBo!u)z5tQ`a4L7=7N)xnvzW?}1#(C8dBxY~`-^9oErSX>sW z>za|9SBC8DVx%YMAU!1;Nt!g|WELVNDP4uGz6n(owW!lJqOY$XBO`;D9PP)#>;z`U z2B5DjM@vlwI_hhYpOU1eWy(!VL?g|lsjdc<1-WRi*FslOirT^)bT%|#b!8QsG_dWb zZ?Lrf0Hc#DXzLos`h%Bv{N^KudU{ZmnGAhNE~Yx0&|I90XzxH+8ri_i_&UBkV1obn z>Jt7$sQu6Pruh7TB_HnA`1bfU{B6IvGPFN^b5WU@0PRm-U%+Pv&0yu=i^R}S6o=8o zq^VJsiwSjODb0>P3Tid6eyENMqo;IwWsg%AEO7Gj zHGEGfUAAz<6*F6ynA_syS!3)ubQ*gOpT+4jMmT@b1ZU1(gp-3KqJx8wp@}A#qF`ld zhrjPRi~sKz$MBzDo`Cr^H-v@7Atp9KLDbCjDxqejfM#lH2}cKeWTnI*J2@H^*&6gz zremflAKT+iSn039?Wss;(_#qFgDe0=``?;kJW-Ap-N4d&wUSPhoDOOPJm zNGm&n)88M&`2$B`edat&Po2k?fBPDL|L-r5>1<5USP&=zDoYF{nA1AWqCLt4RsI(V zm`mu3H9=3bF*;?vvha)OjwXO){FufRy>TW4#$|>P0YYoydBx5L2_qu{;yCvS9Rf?h z)kOeF2!sS;a;z(g_ao%Gxi59KzQ<7?bY7WS1HmTn>WJX`5j$eYb|($1Tc))l)Ouqt z@%rMD)PpfNNLXRtp%e4Ix748R+YxfnJgN~p%;2>K5 zh(P)Ip%BFXZ<(E z(nsf~`sV~v(sa2;Af=ilB^gDw4PcXydV!$8O2KUB*f&??H4OcGyO5J46uJIuWom>I z&FWijf5$j^Es_vRGQi9u5msKQFmg$Nto!z@8LiJWlrR&h5pIN_0PZWJKn9^`5~zk5 zScaCsH@gct`Z;X8`h?AAKVW8c4Sl0i=owo;j+EX&l(-One>X1{`jO3hZq!(zBm{mof)u6s@4BGZFq?NXyx@`(+<=yZj z{K9BY#kz4s(6l15^(b$hMRCJ03Tg*XNt4K{ZbM7|3~Jj)ky_LUvm24H^-56_8pqSH zG=x$zP3nek5<-*8;U1QyR?fEdN`f`Nn-c`kQF9-hv?7ok!WGc$e3BRm@Qy9QNt-Z2 zOjh8|z*)yQoOht*n)%T1DiO_l2PRj;m2kUg6M*y9{y1vtiT#&daNZ^e=dAp2_Np%| zZxC$ue(;INfL~Y|txSW2)N(b)qa=cet%XLUqM@k+1Cxs^+mW4_hs?AbHR!o8uLzl` zIq2`{MN@-*r>+Fyp?sJorJ%l|60Nn>3Sx~FB^d4$Lu*Ett`;R3>8vYP{b=3oEj+hW z!K|UY1pV#pxPALRHts*e)&p5b?I~tgx3RqO1kXPFjHhouVziewlaUM^VKCHGgYmX{ z1++kCPq%813&wbA35_TI#VjH-?n(03-$bV5qqaH^+5Y9&N&tJ1eNpOC{u^P??>Ci81~V z7#l)bVidvxec?c`9VW2;^4)2Cw)ZSfo;QP|qcb!SVTcV0M08Lff_*$yQirFDBjUpY zk)M%(iu^Rxmlq(&F93UwUdI3DvqSiT*IzQWfwy-MlK3O!`gLcVB493Eyn<6F&*Hkh zBV2CWKumZD5~CuJ6&HcJ+;|LVvoPISf~mGLEcVr7x=Txtjp4_4&+yyNZ}9%fGJaU7 z$A`%xyc#bb>2 z65Q^M<#n+a2rSweVb&jiNtsrK=TX%9og|b`@I9aBYx5Y-?WBpdg&k*{9+6lR~;3H`LBLYnzCUz#JKuxx#+3`zS+CMIO{cdhwUG`GvNPK?YO`R)s%IXL@ zftG{-Os@Y|5N--+{)T2v*%ufxRCDIeak=i_?M{w~843jD90Sk-3DrkAujldl7Quy(f#oT+Wlx;23dV8EVA%VnB8>n`&#ggWc`Kqc1<-YlBQc|l_nSmkNfR7>Q)oar zaE~Z~T|gGX)3s_bO#9$m*!pF_f>z}oSxh4%AYy4-Ddi}x>&6Yj$R$KpcTU6QYawb4 zGOvhyLM$7h38iq8WBw`XoU3lJIA;@x3wEJ6e8mT+tb%arY5=U<;^0fm^9avYCVBBj z9R7C34g2_aIC~=&$E|~4LpWaZPEyU1Vd-^hQej8l*D)X!M+me-S3Gz>f1I@rz;QD# zLN*j80<`FCnpy&`yM(~qH&)Hk@8%PO8}1QEOf5ogajjaVpjN9#X<-?1GxCs^nU9os zndKrA3H-GmxO;mH^e|~L*&-Pi+(98)m3+z2sptrjVjIUVYi|E}h$Uy5zf9MJl(5KDCL@QsfxfCno?fB)>D?HqsL4QRY z*7YfPJz9dTjvUl#0uXY|6n<7FFgG?++JRQaA&KogVdi!)ZHCSVgoQ)abeSnV=}mB36x=+W9LJdUFy z`U*Nu&TCtFyfx@3bbd#XZv79G5s3NM zzft!UJNrWd?ehz63_^sU}M9e?y=t2=bh- z<(vzi>YA@v|CKabUiMaS5s-a(iPp!EeSweIoz(wtA>bp-#Q0=i!HywKiqfa`Elo;* zvm4ShxVx>ajK(F+jdJdH1e%!L0rL>NN{=NMvg8sH==G)Lwl zBBc^Tw72o`al|F$!O1%wXRi9;un8aRZW_1*XCgAO7>Svs2#m-?bV3p0)5=iQ)Jtot zKzV&T8oH+toKS`R_6HcKy1cw*)8M)JjJXBIfL}D3yq6$?1 zmsb@3wmvDi;t+weRy1DzjgOl8;+UBqF4>3T0zqcs8iT9uF)(qC!f_hfK_d@>*9{H< zX^2RxB%qSu7McyO=wcitjMd-$f-7tZEqi|r%v~ZB6n$cf6eO?F>O7-zao#Q%U!1hV zUf$~>w=dZE(+1<=9Gn8zpk%oG|Csyh?#QlePaFLlcl3R4cOR%zWy(w^i&=_Lh(c0? zAjHhf%*@QpN-?Gql+0lwl5zz8OWConNGj=h~dEX>Yh zdt(RFV^bLJ8^XfG6tXjlkegM4gY8Y+-rZJ~c5`bLkB+wR`1S#w(p+xsZs3F0FYxlk zGrWBH9QW?tQDywko;}C6zxzA<{?GqJGy4v2KKmNC?>)tbpMQhTzWzP#9^S-cM?0E} ziZRsG$S>Pb9M1C#e5e=IxrNAxOGi?4D*XK7amiWiELfS?6&jd}PXgTilA#Mu!&T2{ z1+y$Khb!eCF>`A23WC`6uRmWh$_BDJc%Rv4l|ZKb6cE6s&i>8zkp z?&7z9{x^K_-G9T2Prt$D!7YqTOk;6%4eJ~0SYKU2TWb@V>Z|ba%LjzmE?(Z<$4qxE z)<#;fGTMo6zxo9C4%TtFFoey?4%}QH!PC22czCi!*mYx=#+H(p3>$kLqN9^gR#=D| zvtzimy@2_V4&2&V!;q5{hn}h;EDbhdf4(0lOM|$*F^NBa_Zc4D-JuP~ zVWm9}kLJ3t)?16ltQZtUn@|`X3bU6EMp~J#iyl5sI{3Tl;cn-N3+L_e-rLt;cCp7+ zgMciCh7(0#Mbg3|u~HJC3OE*u{Bh6_j@!+WQZy4g%I>1lpIyT$I%(k4k`)#N*WifOF(r*Q!@@X|^Wm zK`G>*wQ*ZQgPDL!(vp(W)T%07W2~^NCd6oQY-Qh3r5QDFO31VXQ(ljPvAlk8ZZEu( zTM)|j=-F5J-9P;YPM>{%m!EuwCvQH+?&%9uw9lZRVN4Z8RP`*OtbPbjA3am6Sd5I! zBd@Fjq4A~YojZgfJRfBZgP2}Egqg?cJ11#sJLnx-rrq76tv$r*?p;hRAETIn2uZG{ zp)F(c?n^B0JwyX-t+IO=WgWD~ycPr|5m>=F@Qo=a{f)P)-h_JBm7)K z3BT|{1jg}Kb3qHrnnzL7Ifm}B6}0rvAvUL;*Ht4Sw}GFd1zD9nNGfQ9e{?aN2~L-Y zQurj*sYkn{@$=O6Evhj&Nll8$nUZRdQ#*`kLQWr546lenL=&1ZIZeDrABt~8{=c> zDz8RyQZ|yp5|9#|2~%JKY+S?ej%~0qFc~Ye@rowQlAtrD($EssJTxf?5i=8*Nk4&~ z#1;2Q_(kL*IIdVdQ>}pa?kLQ|Y@MVV3slN+y}cBhUFF#5tHoU!=db_t&-h$Yqn~_< zk(Zr?k^XKRZLi_e*UzxGM*Clz#7tj3LA{F4KX`=K zkB)KY#u%O-&*Ro|4^B5n@Wt!9xVgQk9`;$7%OAE^T#%cYiTES$J49{CrJFh)+grY&?I6 zWTK_90SVF3hzJW;<@{Co*%)u*zvoyR|JI$jceIA5k56d87F@dQ1UGvR__}%^Os_|{ zw;sWs9&odBgr^*L(ZS&81z%@93{GBfyyl8`-?@&9=j{-wbHlc**GQYXN1(|#nE-8> zK$A+u#bUN~A%sRa4JlZ~p{$QcxCzAWNp+!^8)2qErGQ1C(aer`PYq~ty+oL5wSL^E zS;_d70OeLokOJCWTGlF|vQ}xtc$O=6YX}@E>JXsG*jF9<3)C8<*h2%_UEb?9fpwoi z+paLs&h&hJ9d48x_*!yKibrG|&Y#!%(#B+5Ppr&`pI3YBn|vPvq~#(5#!~FDU9O`A z(&TD=2`wEh%>%oH*I_k37lEeIk+lZwReEB**d0RznwE03!EU8ar5yLGyncE>bB`>C ztECifv?5p8J_~nRibqTp+@dPfwv?{x;%j*9hvO2Su~j@@adx~?^>rgeJYuTVInUS{ zZC?sP7_u$q6rZ@#;uI)DO4L$aa(@Avz)Tlk2X}t1h{8TR_~iHa z_8wCz~=daI4 zpCdM}4cV1_NH6V%H?1u=t`wtF>uNQPf$j#m$g3VeOjZ-} z_}T-LH)w*lu()*#^XtcInW;IpJ$(I6+EVxUI$8!6&^@t<@br4v1ZCkWf6REtl=8Kz z5uH`5o+h1EO0e}Vppn2$E2Di8XkmQqsGL@$^L5i{ZkCKXUQ+|TB@glWtw^J>7FKnm zq^1v91%z7}KSN$E+h)`>^`o-36P1-Mn4OwamL^ae>K()kO=N$23tOwJxUsZ|sbK=9 zr40vL8+dShfDzi%;^-(gmzVLui^urnlQ;O}vybrl%?Eh>(TCXHKEV9K4eo!g(#2nV z{TsCw9v;^QaBxPP*Z>7gEk1xLWqQHSi*WNgk1;r{*tj@QQtwJGc^3}U{& z5l5@z7$Mm5vr-Ufvf!Po?keQDYl#V|$jd8I)s4o05JXs_ke-@>)Z|p;=jI_I!~%bB zKNVT2DX1#QL34RNMtWMXzk7pF%)xtv(!1vzaQ=cbTx?wt?H@oZ)5F8o8LoD2>X`i% zM>r9BdPfg<*m>d7MJK%b?sdHP&J`s1cw)CHTBQ+X>`N@|VP_2HWDKm{@&nLX!U?gk zv!ak-+>#)u#L}!`wKW-2lfsOH#xP9hd2yfp2(i<44SEu)n1eu*;tH`PNf}Dqr=cws z8?aduOhfa)zC4diQj`KP+LQoL*_srHaQ{|w5biby^PXDDal1ms&wQ|0pvPvVSln4k zvxzN%cti*Q&p#@h&{J=)fGnY(HQWRhkS zJCl0}(AJ7QFp_MC>1=0A@!DM;lk*4FKS7{56C_Ro5?Y!Vnu8b{TQ&a0*6D04%sHYA zE>VOXA?8BhNw^b8o&=pc!Q~ZS%aHUQ!N>4UsDmM~4nB$XYF}D!_R%xsoHzIN(k9jO z9s<8==;au%F(fzgc!R1^^iFDoK|)p^Atb$cjRzs=$@|F4B(l_&tS;gfBlF(`P6TJ1 zR7lFUq!(*cfr!1bFhVO#gWoliz>r`IrTx(wZ9^p8sHHit1&N)~(B$tDUQA=_M(x-k zUi|u>@aA`a#+z?`hdYm7V{CF6M@P4@yL-Z4%6mvIXoV@h7$eKKu(Gg@*AH(qZesVw zI!ephuzBwTlyuD@FuoebgjzV#di|rz(A+siQ&~i7&n(JmF?nU(YzI-*GLHP}L4>7L z!8f{;AZw!y4XYJ8hNgEgGQW-OTMuz??>UCJonF?3#{OB1Ebbt^qz%dW&1meJLPg^M zn!6{_#F$w*z{J8fDtQ0Wx?a>Z52Ceu9HWby7?@r~*XRNbvmf~toyz1a1e!xgF0Kb= zBA&3W?wI21&_p|DXpn?zQ9H_7r`5c+wDNwqn6lx_Fs0TiyUeT_QYleGBrPqanxDN4 zNxAiiO{+jkZXHJFc2L_gh{W_#lvH*Q{57bmZbff<4|>|Wu`n}_`RREzPBuNzkClmW ztn*8{r==B(lashbD_NS5)#HaTJvfB*75=h+`V3E=KF7zOevB`^`VznV^{?^#!%uPN z!3)}&q!fRno^1X6)kkXthOZJZ-tT7#p2c*y^pv7R}|+gM0Yw+uz{PYmGYlRLP%HIEM-9N^~4ARZsB z;Ja^L;nPREczt^jPxt4sIo^r~y9@Z>(H*qb)WX*g1ap81V{NtAnC`}n$u2zDo5Ru4 z5JvdkmWP@!+E$IBjz*Y5Bk|rfPh4~HM@(EAa&rriot;NRi-MP@4{a+#8CiOA3gV(; zU=A`Pi1+r<`ynPO8i_QuMkziiD??*r6MT8@o%0U3aM1-e*WKXn?uD4ZKt%ZZ!OPy2 zhUNiVg3ONLZsP)jvlpDNx!}_K1mJtNIREZ7B>U^I-zcd@0g{A_lZ9h8SBKsDaLgC@ zV!wulBPmCzU{t~VrV#Gaj+C9z>e?d+27-s?CiA`K3wV8<8PmB0nzFP1Gb9Chiy)G5 zty`+JUQ8(%_d4Y@y|7gigpqV7HTO#jI&MoJff)_$m>`p)4rO;u0XP+?5svo=v`qqS zwakE}B0X-D=~b1ZdMyG`j7zNQrlc+<<=Eh-#^hvM3O=SXoUmGAz-WpCcFOfQk=NpJ zNgwW(d#Lo{Awl;&)M#rmPPSe|Go#f_raP*Tl%w=NsQL*medQqIU#0?;G89XabfS!< zN#TdJ2t-nlQUD^YoYx9LH1IhSY}Nu0*_N={n}pb&3t=d&bzk6RJtmeWR%hLo5GZ;` zAL%dW7%mLCw;Wg32uukzF)6VuFL^@1S?CfQzu(qYFlkcd_ui@6YX8<1K_qp()qlv*VC(?9+XeEQu#VrAYSyEV+* zI7HvX8jr7|s)_fKwBF%ef@~9AgR|%vUPM*nFzP!-v9W)O`L#oy+rr4~hMG#SdHhH{ z#-*uu4pFp2TT>?N2q^>KYjN`!%G)N@MC|sl4HVK8{i6y|(y@U2#&P&W7s5z06jKaK zt%EKsmk=wbWj4?#+h}+7h|jA>Tuv>j+Q#@9`;nPjg|ysiM8xMIJ-ZSW6;0@F>BLCi z5Qb@I-L0M6@4ymmX@7MYE90YBo1Mi0Eo6IT5zCX~Se=>0+}Ielw+?V}=RQ`}HZV0d ziA5eixp@oEY1L1je~1?!e2&LYU*X>U$JnCHO?Gr(s=Ez$ZY*MFmiHkrmnWw&IWUZ& z_D=NH)}gJe6lLj|sLU=xG=b(#n0Xjtaot&}0z;K)U2_YEvzG<#-Z9Ym#=}h)h3h=_ zE}t_oky5eU~ixvyR@N=z6R{C z%;AGizrg9kM>syYiPQV{@bK{?91v{%-Q6fFDn@mA1y&a4&{SK6^~HH?-B`tkFZgfT z*Mbk9-)G##JwoZp!6Hs~XYkuEp5o=LWt^;zVrR0I;B3V0tr>jy zlwoP88Fw}&u)i>XneGa#jW(f&;LS=T$O)$N*Y)_DOK$x9fiRmRV6pJHyI###3k)zK zFDnx{85zh-O+%z50!IH}`1u%N2?;|~csS3cBPlK(G11ZR@iyWjZR;|_(bf%t9$pAD z7+}`v2`>+tnG0t1s?68G&FB))6B-QTxe(nnv8?dN^e5R-xsF)pce6f+c{NwJEI&F$CtsFM5DQg4hT*{gA}V=37u zz$DeULqP48^D}W@U?$KytoBi3Yn!E>7*BIhV{lU$jc3a%@zVpET`++~cnQ!1 zS^_KuGD6M%Y-~*0A3_@old&-^{imf0W#3v6sZ5Vyy`Na0^BM58{#wPPwZF6)5CvLV z>AsqfeO3u+t!lKkQqu1rlc80rQA;JtxR_StA>(5-vTzz1uXm2*af>#6z&aOBtHhMj zd~LG06sTyGk@EU9P=ZvMr$CgSEvkrLteda!(ck?K{Q95&7oL6gYdrbrmzZ6Vc~eVR zTi)as={_Ij8B%&p%;-@q)Mp5DQmr>Bs|eiWBBqH}N!Hy*r!F{&6@Wj(O-OIOdx z8k%0m)Y6t(QNEzO9p!aBD5kAQIeS@6FQL|jrk*)u@)|=F|E|VNcv*^(Th))&-f0X@ ztP_SKSlzvi)&1Lq<18xc`_SGyi@LT^49~4&c5N47zIwytvmAt{ycj4XzWr3hXzrO2xvK?dJP1}$=6b{|EJW3ulL}juafYW>p|X99);NXCylUhW z)FL6J5LtPZC@XJ3S92RWn_JP|*o>wcnp|%mRwl>P%I!;|BWl?yS)U9oYeimWAu^J(QITJU&X#U;wf3>!GP)bv(OJdUsH*0dF~9UDMsRv# z39BQ+7-?(6P+L33x_h|Yfv(DOv=$ejIwub~Ng43>kA{n91e`rAxaJg$%Z?_RSR|YX zCKu0WcoAlvK5=knpGz);7Gd_5U65KOJQn0{f|G+gY_B=P&CvsX&h7}+8DJtHy&YWP?c@o)qdRo=&hU5hLLi~$?d-<> zPBb(PXsyY?xG%*ZZIN09BVi>#TQ2s;c1X!l+p$FKcPV?^BBnCiQHwoAUgy zCKKT%sXrd4smOxG(I0mRvfFI$3e?(o|Mp<46?v%nXY=_UYK4#6d{1(n1~7t)MkUt^ z+zw<6jqgKDPk<&BimRnQ7*4XqR+*Oqnt)5ej8K!5qqJgdavznBPAEd?L~GzB>YG_7h;suv{%r`!ia)Hy zAW{V>Fk}!`sv?r$vRa+A*6PV0qEJD_S_LVEBdQ>TuV*9MyuS@!Q;uH_F2ogvOn$x+ zT!bq@g}5B3#g(99+NE4mjH`S<+LVG41uucF6=pIfC-2vmpGhh@?bu&nC+|gI>z&+) zBw0dg`~=rE{=@%JL=@ly>3yum1=?a~2`A0fRXQ`p|sj5n}Q{%+l&kRn9I; zK&55ZqONrqwJk&F9a%zc^RTKA3`r_SP!bK6hUYC+i%Ave99=EEJJ)j6Jl~3Xp!ZxWH!K@T8r@X zI`~8usc|(^QYCyN3t;B^4~#8BT1h8Ln}-PMX_U&EjqO9IZR$i`Ni`}e8`0a^p+MH& z(8TRFEKZDJcX=K=OY>^1Ox9%VX=%pIolOk&4Pc;u4ATo6XzCn8Rb4Ma%!vpOPDDy< z7Lp@VkWNUXMWrC0P^!u*KzC(5hMSwQG(3#8@o`LdcVVo(onP23nC$9Qm5pPqEod(( zLTgDe3evI=85Rdu&oJ1~r0f{i9E0KDPPh?dl4^9*vGt083t{I(pj{-O-XXXIY67%h zTn{AF0+pHl;<{07%Xvpb99$UJ-7L87YDQ3C1RCZq)@E>fcMU5u<2=5OisBON?`~svdlQS(b12Qp z!0!4YZtbq))#)yd7l*Jv+lRYb)A;bwJ|67O;q~2h+~1v6MI)Pw!+ebm#L%Wix&c1++cL^ zKmY+2M6mfdxx9hiQr##aV`cX{qp(7tZB&}n zGs||Xr5Hpk%Q{{bp(a${6&oYSWKP(LDu37POJFBsXoroV%JkGk>hIHx);v9w@< zNx-H7P3EgD6c8YFL72>RRp~`ZDc+U>5V0*}rHVq__+DlF%#oJnsK(ah++KzIPY-AUE^9~?qr_EXwhB2W<=WTz zg@4^701^-h05otZlMB?smVl9}NI55c1#&h)S|y~ah!n6f#O5@Z6so?~{#Hl|yri&0 zz$NXKK$-KVLC<>KRRZfOL1yhE;F7pZuw63d$ z({h{9H?)Y}-WklzuHf@;euXaDQdmp@B4YEgyRm_zoo#ft^`fGz5ug3>ACZ_|k2ZoP zIj;%Vy_4V{RfOo|3e>lbt91>7BXbcE&o9!>aa8cjIWxarfv%vu11Sadh{>vfLtq9j zdne2{QgLAk19D`5NWjD&-iHU8jmd3hIZ{ zBE^w}SZ>`QqO$9ukKhjkV;XI;7{<5?gwnV3QGk>ZnYz%2yqZ2F_BdDJx#WjCe?AFrzf3nV}(UFV16ObeIOxfzGB@RS+`VJAk?I3G@?YEo}s1 z`zQ*lI+0UYkBp3B0w@`oiPRL>6bYilzi}qH9hJqqg=jJ0TAq|$0IOq(Kuy+k%geq`(>Z5)Xk?{16f`=grZeEda zAk@w~nZKWd_6yrULd~eGOknmy1mFtq=frDmJwjpcWr3}GFybO(&{>j)+4>??7_!-0 zi~Zqt+~{eAcf`^Yz%_0ApqVquMkrx%>O z9IrXT)6NyHSM8v;b4H+>4n|im_&U15;NYTd6KY=eZg8NXUAbt3^KV~4a)3Mb8);^3 z7G-D>_u3<|R!jiYg=4Y6fE(q3*sUSBnxs5l1DecNvznFw>U&5rjv9h!c)mDl48csU zCxOO3gqpxi6=-n(2e9!NK_vzyV`!3cTqxjsst;0WOBpK@1H0Wsi(^RI(OQrpa8t*{ z)@XZD6mp})6Ptw5Vxfmx)#Ikzw?XEd5i+Xskf7!Ds%YbEKH6?Ip+!R*r)5dmzN8$t z%e}PM;x#`uG`U_1K_s0h`#a_CSSfVHG;MM=%b9;ScN(kqTDw0*pj`>bI)j-8F^M08 zP0n34@=HHJ`s6D}*$9XTi|avFpviVF;U%_40EzK%TSDy5TH-IMNEs_rg(u4PXnyJ( zfn=2H2s|n8CvfC7uJg4d?6_~8=O&Q4%41jMwFOLaE&E>KzO-`8hG4VhwoOnT3^ERu z+6ZGx0}S!C3V<3!A95zT7g=oX?1>{U%vflsA|Bg z&%Z+d=n{%6Ixx9POJ2#rPMXyLskd-||EHje&= zW;7L-qqC|Gy|oR5TPtSxdSY&!l~pLq%12aK0s;bJ;7UN*xrC^6qdNg+@QH<=e=Pj{ z;}F2`^^4w7p}9l_>AJND;$alAZ)xxOa!@!upnEkixW>~wPspWa)->zlJUUF*kucMWZ}nt!tb zOb>M<*c^$suDRo_%T7p6PD5gR62gK_@DiZ;_#r7a78yxN{P&55(bq^j3x+R&=BFpr z*v~}BnT;m+c_Ub3ubo@gn4-(LQ45{UJM<4UEJY# z-4RzVT*akxR}t)DgRQz~!XV-dR#Ltnp`H#cRgUv&#Sb$MX-rbCug2H}eky)QAzFbZ z=}0LGSt>H%u)&Nun%XTwOXiA+h25bMNmb$as+E1k%+of!u;AjXYObHd* z)u{kYQj=21QSYNBK}!YVoioVYZZY!OKvgxlobQ6|YIz=-8}I3_u2ID#Vr7i)Q;xFF znYB1%w?bg19h3d#d{CrKM*^HvQsRMWJJyxau#pP|d`S@cv8#7_!lLjA45n^a*soAwEa`NjiI5>^5 zv3az23=%~3Xs1PW_0qU#UnO;Y@QKV;DM7oyOc>)!kzLk~{)rW}ntfSyw@P73DST0d znA<20Paj}taz*Xe5{^9sGpK3krD4vYpZDw`6e=|ER=E2jDfFf%-;3OBRDAuJVMhG^KkYcO+i52uAi!<#S* z@Qp*LDVbK0jG({-1v7(hEMXS`7oAvEINtkFF^HN_?Vy$STZ=>lX7AVq;yi(N(J4p) z?W$V{&e;d5aMOkGeWYNatr9D(Wmsq|!B}N3M(RpYpO=cM?p7>L3}Ja{97{8k{O@c4 zC%bFdTAIM#+9W=Cai74N!tK2!+}d5n^ZPgP;A9`;y{+hJZJ^zbaDM|Y?rz}Ir-!(+ zJ%bM(9pmoy6qW|+FxpZ?sP$oKum!ovsp#+QL1Lr@qaD?Fwl{@4s{=Ti>%weTHO5-1 z`1h>D{AdTVQurgw$BefxI>Xr`fEH##ba=R06~tl=MN&*G5~89J6A^(BNiznT6wG{e z-Uv5`Ae^RV^a)T^jYdyB{MF`6GiOAvg5Ls7ILbEe%d~1gQkyb&ekcQS^BG71Pl5!NF z5q2_h`lLyULS#a;mU>jyrl6)(ItoyBYyGj5?~XlMmyFTLc$>1iGc!|@t7%ZOexp=D zO4Z_Sg&yMqG`{bVWLq_t?3NUg$T->=xU|9$E&ZqPk;)sM8o_`LlNduiqW73|)_N4z+Zp%G1C=!AMn83;!0xHeSv~3A%>QewH zFuW=Tso<)CN-WDYq8uJHLZA2=1gAB^KdBbJNiwyd8qSsy1yt)bPGMyTQq_)K2+Zh2 zKw2A&8Er6ezp!%^AN}E9@#u>`;K?ul9?!r015WP0!WX~(TNG9_A}OsJ{vkQoI(dv6 zQUbm_hnW$65%UZB^yx>mjyBAWO=E3#8V~Lfgm1n;N=7w~Za+nCbw8Ygvk??i0!w^} zny*$VE6z9eV0vO6Gt&!Lm|wxr;3Q^dma(~Yh~@QN3{S71j*yDYsf9yOIy}Pi2(=Q# zWz`^&$BL`Em8sRyz}ow!)R|=Chjh4885yG#F=hn84u)ckWikeOg@%Z4x zGCKMu(J{10E0dD_Y#MbwykpA|liRF-CiBpeidqq#T8+Ti5>>`8X~=k*YJ6cEyb0Ry z>?TCAe{fQjTKqVp2m%Q4TGt}j7J@B z_<8#vBv9Ko83R>HGT7gUK!Y#*J!xS+zA$;|VA1Okt#?O?pC__SKFBruAT>aT^gwUq zh6Zq3k3@eTgnD_y#nuH*gqqDoJ9yjMp*__|n9$IqWWP;YY*<#Sm(}%GN@Oj@a6&^Y zEl@#Ct#Gf>j9Rs$)zYkS)DWnao;nm$E6~%Pcw9>Fr6oWFBGxKJ>wK_1g64am6?qV* zCd}o!u&<1t1@L{H6?f3gB-JR8lH+%HA7y$RDR1W!t*1jxiQ_a52 zSxPG`RmNw}&{CSTOL;#6PKMk=V0cB|Ge4i$s3WiSj;p7UR3oKo6c4`odvwg)MEmps z9)Iy2e)UiP6TkY0eC~QaTGW^VlP!OoI0Q?| zu@K>z+SplgVGE+ttB_RCtj5sl`xXhPHZ`UeL0AVR%Gg;A!qRG0gwWs;@|zKt+kmJH z9#1Y;%WEYTG$A^(8hU;PeP}wu_&117%tuOQDSs#wpsc(O1%=hf&aGfugNn))l$SN2 zp|P9$wMfaSLVQ*Q&9MbW{_Pz7lHkI>g`F-20pV%L%_%{9eG5i{o4;K}VBwGQLApTEMRlXX?D|M++TA3oZ{r!S7Mw>*fC9v|RzZvijw z@8j;)q)ItH-k-%iZjUz6g5#r5UQz)s4=+^ZXJE9o9E<&R*qQ0XI1O^Fs|gPdw=vq) zh>F5OczMw@FFD~q|KbWRUU!9)lRM0T!3tUtp<%SMV3l4p1q3RH8F=3yKR*Ns#QXyg z;_C;Kfspd{MzlePybxd1#Tn6%7=*g`0MsW1qdG1C<ad!I0q zakN_mn4}8t2>2R#tyD*{m3y8NjAC+2g|b|hFD5hXu}@&Bl%u2$Ww|O|E5#aW3{6sw zGKNMA6LXWaqm=Ehm-`WH4%n@dDo2@frY$mTwX*F}-oMQK`w)9u%5}s{ma}$!iMzUH zpForNNdoQrAhgb(K}}i-E7bn);~La7L(|}!dQ^jwgj}!Lpp2ynIJJ;{8K0AF zfu*`PL#0g_a_=kr92X5~xI(bm@R(m>Ew-P0joQ&|=xKZXOSkdMKmB+7?Z5voeEPdT zVrBghqXa;0O}i@KIDP&Z3X1A6Kf8$C%}q2k4dC93k5O6HgnE7v-`rT^FX>@?@Vh_3 zmqwSHQ;9FX{Vi%L8jmnf-k8Aw5wh739vndDBx%CQ4>1AS9 z&B(0iMtgp| z6Jkz&w5s4F1Vm&ZG%lZ!hoGn|gvI6{F|Cv^9!5*o2>;F_sHyKj*T6U$TlR1@Acq!oeq6jj1K4~QiERJxCfxFB(^R&QA3PK1qscN+MiiC|j zVdfNq_Z`K|w4x7d+R|mg8?!jt zoWq;vcL=ssJUo~s&=&FZWCh=T{1Er{WO=Mnn%WMIZ%h$vi+I9*QXH~7+l{Ts4h+^6 zqN||}25(=uIJzUkWI_oov9G=i4JFwaY^lWY<|3Lai%^)Eh4{!gI5>FX=kHy|r7Ow#@E6LEm`$m!1bd_MFp!6Wls{4j+Ez>Ef&hN%xG#wUc9$}&P*W5 z*qIm}p-2GTCIltqm|CAviZ}?Zxg1y8U@)dLoz&QwD$5t3(acoIK0&6^mSTH^qJ)4^ z`ba^EJVItF%TX12NKuGb*fHT{9Yd2bxcyqq2#;xc%G|2F6_8}ftl=aZRRO7hreLQ* zOE}Yq$08K*m|IslmJt@#5ga|u<$B*G8+hRvrD^Scj3L}C;VccL0UlrbdlL`r1ja$ z!ocPn_(tX-si*}7b^VA=uTV=&74XZydw3QNEd!V%u%=~x+QJ4}TYAwik7}7-#NhB8 zdirP3O6#m{pMWu`ntwz7Tl%KJIV2ZpB^^kmi3z~MQ!A9M3D_jv7@b{9h~*$MvzGf! z@HC|>TM9}jhB>iB!A|<>LbKo;kchCPQn(NzUct$53y4+W9g>33#3FbGCP8mbMqGLs zQnD+NnpcaYta9X*5Tk>@3$y~8e*s-6BS2)}VHaj;HjVwf^8L#m5E;`9LnGt_;)gOO-*@sZ`BftnRwi3U% zrnT}gOl4y1YlYbbhX7pRYrSLZi}UurxZ)awt4>nJ9)XI~bTnmUqB123*_JS55@=QF zDHtfr#Zqet7McsO&{B%2jyf!k4Pd;l2i+}=*j$~*`rIgXRwnW6-T@xp-o)|x2<~i8 z6KczNcDjW(Pmgf8GK|I1cHBQ&#|F)AroR=dqaD~7@4(7n6S~TC(NkNBthji%*tx>N z)&*X!UhwlGNJ7Gp5M@zoI<8EQu`N&!@eB(NMWBB$bZ&b1d;25E*9ad^J)*-b2&Ju= zXl8yoZ`B47bYZfzl>m*$%-l~f2B0w97sEwS7%PrKXL>Li5{$~wstB`^NIztoy^$K| zjaXkD!gZc7xO(#aIlV?QO(wE1N+2F73? z*|t_JD!8>0Fl`~Y*AcFktCHdhc~IwSi5@2ep+HQ{J5%73RHLK|HJIHcoYcf=!b*&3 zCfk`H3c@s@bW8e4S-$EkkBt$a(c}msRl1*1}qh2H8BFls$Um6kk%niXhgP!phSmx;CMu$V37`cAy=x~j62 zH5?`F_>-K6b}b+i*Ns`QVO$}EuJX%E_OB5p*99z$%W|C7a$Ssy7IRh335<+{1py>| zE)i~OpT}(^&B)_Y;iv&hfF;zWUR@;nTnU7i`^qgNfyRwDe5l!>_)h z*~}n;U))i#d1z|x!`$LFPVPNHQBD=AN^1GbcM&~J?RftAcSugHLKeb0Zr-5*cF|G>(9u7I%<@(k zVvAr;OS|Tm1Rq+EAu=D488z^a%uy?HNEKmaeHSWgyU^7)j=_-`OiZnyx{9B%u^r1R zTikBN$m9z8Mipq5cMc^ig7Nb!VmyS00K_g3=XmTLTN=}K?z25l=v{OO(t?(DiDsn2iQ9zA6=y<` zP`fVS8jNcKJ6C~O5W}pj>^=J+-czeylyu_H39p}D^;P?CUH4ZZ`x0;SnDm$TA^>}j zKzrYj*Ix7Hd+}%Z;gYivcAf&zU?f`N3AGedF-j8RP@a^C+Ke;|mCJL}3bEWour=pn zW4IN2b0cV~C`Elm31%mTFw) zaI(FK=MPUX*j$6g;v6iFv}2~X32kNh7;39Ub9o^`e0*W>@`1an4)0&I$JNWu1e`m( zJbW?4|6Ysp^AQyuh3r)Rd+OQO(*Q3wFN6_dzMeXQ%@3ggfjnnWV{&3>Au@)hqru6F zAiRHKfC1&vMhxUfVjwRZof#$?nJ=ni15q0nj1r4xW?781Km%g^ytPG(9h_lv=^ES! zG;b$oG$r`quptz8&sOu0f)9C~*lnqHEb-BR)-K~^Cft@sx6p{>>CZCvOji2POie6I zn>;P)!u2wlm>q;0Opvf4R#2v;g4Nb=31Z=mO{8cJZ zr7CH2Vod@vsc;lX3D6YS>UoSno5^)nPoN%6yUz1cvaf+su9MWF%pp@LMgmI4&18XM z**>T-D3C1^XkuzxrS7VqTxU%^O3G1SW{tgaURSBdQmzx`b6qf&YKzTs8LN|VIxk-T z6MTG(vpE+oA^cKdxLb><@Q$v6cT5HJ(Uodn7C+V&KrVwbuaiZP-6G032@^%S&2mURiCJ8c*fMIzOu}gXH2zPPtsGC z*5WmvcDp!)qNvilB?F#L(_b3~oO|U;?eFeHKe6uMv`1iSe~N_~MWM zj?e%2|Kfw+{2T6m_!}(kKfvy-=lJFC{}H8xN-S+8GBy|8-NV>9xQ)HT+o&q8Ls@J{ypZpd%Id!mDGEraIj9>olZ)tJW=%$&?O;2Hbcm#{H^Ozc)#OC@YcDMJi zw|j*7xfSeeA7XFs05@)IVQyg!qZ7+Ct97LE%Uwq+leH9We3R6pVC?);;1!+=SDKQ5 zBc1^1?4L$$eJ?tDMld$Hh@sIr1=#!2B&4&;=zTI64=`h%B}3Efs`>m9tL_JOUFDKqyNH2qXD9B2r5U zvOKk&Kzl1~9^iZGKyl*$Vlu1X8I(Zdi-&_xEUvg)2sN4$4eWh_=K>*ek?@f?$89Od zxFlx9eJRSYo)bH}MiaA<@iYg*%-MwN3|m(-YzP=B6p^tuvARoy+WUl{*w$M#FNwdo z;=?c~3lkgD?2K?zrY3MDv>bx*KI4LYfGXJ+kiB!=pzik`A@_?bUbHqpyl3O9o>LYV z7L6K0tT;Xvxe*rBilLR}Vzwp|OLdu8YcIm_R5unnD$!e8jHdDe{&zHp)`lweFwdEh zE!Nb`d-mdQOb8^IVNffQhg!}DMwjXw8XoLZQwnm`c z>x#s^PK#z{1esJGifzf*m%!@Biw?`S7}`dK5!=-QHbO`2Nm7hwh9+r5Rp=oglgZUQ zF2x{s+Ss-jX=W}stRtMV3AS2q)mIi5me&^B()P8G;t&CvvM_>cF3%l%wML9**zsBc zojh_zia*W_twysaftc)T<7b3WjkfgFQoat;vWDc@iupgbG_f-=vyEaG)ylG0GB&rI z=S;Knz+mE4+$h!VFO`lGKRKW|1?R$^M&@M7g&l3pAt*;Jnk%iGb1>zpiM38rp-AI$ zFv&#QLe)yxGn_&S;X)|MaSc+Xa3!D|XjYDdgcE`25?-nnL6)VYT;v$fIh%|4TD&(~ zSyNI%`bgNDxE)fWt``tG^L`TYxEl#)-cP0hIPsjoNq{NP6R_Evi&Y_rHPk#d6JNu` z`^s3F6sYjCh!tK}mYJi*&Gd2n64-o#s*yd!l@6e)e+_dduizP+gQWaUeEQu#;o)b0 zrxq#x^1uCWoPP8jc27URZ~ye~xc~eUlvVX2I=%?e3Hj*k8p7epBdp!nBg`r=GdO_h z{yy|Ici_cm-=esn8ks2tD9I_t7vKCE!@a|p8Xm%}{Vk03kD);xT-iH>v5`@1Z*F6E zXBT(xoZ{rTq$WCAa9COkv=Z|axANP~SqDvxEsl3b3G z>Mo?`RUzxU!~0O|X_#N-CR%)oLHt0%)}!as2nlML=Q& zs@tbfNRSz6gbDer2#zmPPzy_;NfB&jLfsIa3GdJ>_z^;~ZewOy8zNFl5g3&Xb95ep zXkh}humsv#cslfAXoOe*A@3iafuQIdzULBn7!%-bOoUf(ib_wq_{VWS0j_LAcx`q? zJF+X=P}4Jky6$ll*Y(ies+Hx*Jw0i94&HI_160b&N#&3v>x0+%z+L*M{e=c;jy_>G8A6I{fU4CtTc( zNRNm`c0?r7LPJrPk&1@21WcBtVWlA(+r3rT?yJF6Z5C!*N-*5nh{=&YbhXuEpsNLw z12nUPEmZ}%FxH9Pg<)*Z58~F|5}rLc!ok`Uw&sShNSK}8+(umWky9JGd2p*CKJMq!EkfY!^zPTu5LakDsIAcLhi~HN7zf%p|dC4T)kmq z;|dpNFX&{Y55h~T7{dw2Aa4Uq+z#~8BUq{$y>-YWu=33YahlQ#;({7?|; zi(GDJ5N6pS{>U&9^nQATdF$cj;-6=p%G>Za6y>Mb!C4Ot;bcB=nJr9tWAJsE!CHl;}3S`tBg%jlT(D?R)wD$ z&pN90SA`>T-kO?JAS0XvR+_QNw)W)d2`RfLm?ottq(X{9ei%m+sHs$AsRuTT-LPFk zaMIA^+Le44EabakSOLxBd!YR!4ehFL8m{@JC0Atp z;3b77nQDCSvaftLZhNP}E4BiitM`#uIfT-#Wz>%mESryD!@q;4IS;3Aeu?e-uQ9TA z56{2(7d-p+pK$lhclh`>f5z|s;Xkmxdmj}w14y8yB-0*Rn|pEd?lX*zE~6;B1ij5| zs4c2QZCNEg`Q}?yX;)oX%45ZNeE&XfA0K0SU;uMtqo^vXLS0oOj&}F3yS0st^>w^@ z@svQjje-6V6w>(W8oHI8)iw31()`ZB8I;pbJWPa`Z!)fW#lglq3AR2-u=7hoSYjz^ z8v0Q|i%HF_(8kLKCs0$_f{xZ6oE+?6dTbg41CuDJ>p&X8SJgbI#=Q&#y{t;&M2pu& z6+)g+E#YIygDIg5p~*Dg;8X>*U;pbBilbHo%Vq^j_TNxLVu`>4%wF-#9%HSJ? z0KX^%8DrtC4}+g?Bz%1=2=JHZdqu)aXCd%Hl&M`I5HHvpH3MV(T!OF?XbHf?#sr$@ z9E{wiq4B)*RX`&ECDnLEtk0crb&zzUR5%iRm%Z`xOWy2bU|&7K=M5i2C{n_rkRBGU z46PITQhe zm!G?bvNcuJD2C?dj&Qvv68&^Y@%KVXfF8+gll-`C)GH%PF?u82)#&Y||ZRU3_gCnp~q&jtl{s zjByE^1XNa7NyVe299K)cFrH$s3{5H+RXS1(j;&NRZkK3K+b)&yGdb>!r5s0w z!A6+?O&%X32KWQAu1dq~IdIyaisDq)>$0?|Y}Hr00l@ghGrc{yCeGz)$<(w3S$i#1ft({q>4anr_RDR|Zyz7;SbBv&L zeyJ~=!Vpt|%HB0JjBcTC@eZ!*Q*hZU9^-4bv2^qpLCMu<8r#M3%irM1mw(0=fB08? z{l|Y%F}Zq-#;!SJ7c`>2Wf(QIp}SAtprdmHB{a00%p#;G=Ag5!A0K`BCAyoM&|F@Q zk=9lmY}~*Xzx)id!-JR{9K>KpH@`@Fu{be``H3-{?Cs#r@sS!&D=4TyX?Zi!v&z&; zA9XE*>RDp7E&Zr!>_c*19rR&Yu=h{l`;UhMP0ihuMVl!`9>4IHmp9b|G)IOf3CB^i z5oTp2^%&&#)a0C+hEP<|jMD0MH(f& zX@Ri?2%vfSSh5JVYy`y>Aeny)b6h^ntOUiiorupQ;ApQh-^>`9rNAW?C6IISmM1+& zDX2xJl&RFC*qVeF0j8&+dD6_JpTNwQ1}LqQkJy(5?t#f_a<;!EUD=<(ltdWjsC1?V z%Q)E6u&xnUlGYQO(kx9&GdjqmX?+CTy~5zd*YNj?gwZbo5h1Y%H$@{fFbZa4B=_SH z78I?v{r&lVX=;uhA#iXD#brAq-j}c!JJTy*SyPSY?EF>1holt+UQ&{;jj3q`BImh( zksyixJ&ao+FilkD)%S5u{_p>)$tCT zY|Ue+r4m)SsVL1(L1$eBe`Ix`udxyh1!<_rh$Xl((U_lreuAu*G2B>$&hjiY6{n-S zt{4@$87Rxk!Pww1;%SlbkrButbQ5Eu5Mm61m#ZiA?m7he1gP|4khc$f-P{N=9YTE! z2y}Nth|UWZgEu1e?yAs3BHG}o+61Eyl7oDZK*&XUdn%JN>vZrY%$#f;2{A{wJ9)s( z(H*u|?P+m(ELVi%CXGmdroh!6PRsGvsvL`b2)J-OkV;1aO-xDFR}|Bd)jnh$MmZ)A z;FM$XOfy*_f0JgmO`xq6imAw)F|7bZRXGw+)D59Y$poyXRU@_MT3o?e5a-D|ePGD-+NqX}q z2eb?NWP%`xa3IvUEulbm)}Ci8m5`SSG%*^1oxn?qCj@%d&}>J8;rre^##XFM3QCj> z3DmeP=j6VZeB^#VKus$ykwOm*epY}fsIjjUoya}kSFbDE0yQnp^PcZ{C99C_cRiEN z;6~dd%-m>%UQwm+rD-^a6!0^psXp=#>qPI;ZM079;evZSuIrM~ zJ-LI8(^qgbrX!)eA8pe|*nRvhzW($7i*Nq?FZk7;{uLj5^?NMsJV5uz8fsg|Ft>J$ zEE>+EkG@8IeHRL{%aNRvkCgaatgh_f>GP+AS3kO|tI*%jz%P|C{NW$|4rBa9+*MzP zg^>Z=Ke~Y@xA*Yq_5n5)XE4y+jpl}CRF>BvFTV;g33-T1E>&6Zgmo%v5 zu}Ul3P}$Inr2Kk>XE)-SPYT{~iH1{f799Au@S~~8LdhPcRCtGH5nzRg=4*HoGJb?n zPz>#j1|{QSfrM9bZY2r{;1sqg`L#5vJXMh>=Vh!+!7V5WhBI^1%QzbM#o%O2%_AUz zZIUuLDH!qQ>v|G&zU*tDy}8iB+}X!SfCbXby!>NmXsPhyeRX1WzAI+~?<)J@FUkobj`Z?rQs;YdUy%1|caT28FTFXwFK*Ol214 zYtk`an?bl`V~%lSsvo!S9AR^F8LO+axUoKmJsQ~Qtt}eb1jajSFw$0u=F&_w6{TWr zoIh^TVo(qlj>f`tOsMnacyzRizM2Be_ts;kvl{&s*_h`!*2RPX|!^Pf(+fE8> zS1w#ZUbqi-8=?r7P&_2e?sbMi9(uW6>W7=nVcI;jPML5m<6|MX(1D@bG&wwARSGUcd0O=~Y^g`g zc^Ic0_9tnEi0<2e4U>Y0%O_`o1sc2qw8+!g{^5 zm*p5+u{~vgv^1;LNh@|HU=#C`G^SXfz*Fuimh~Rr^E;jiDrEZ{-?Nz4C4%lM`#I9g z!ZMl=ozsHw^ak$d;1b`L7+Y@V8q%8QaLzLhhPVpM-uwtvz00`dkwm*mMd#!uo_+m0 zc!lR7xq1}UBfA*cc!XEq{u93YxBrPZ-~JJQ_>ccdaD9W#n=dgqy@S!&U99fhMP5-O zKIHjAwuuP^h$qY%%Nz0N(F+{x?P6nY3Z0de=p)eP`?~S_Kl}l^s|(nfpTxn+3?3Y= z?%Ufn;&!{cq5TMuSOhcG`mftrd2M8;*q9Fc~I*h~zJ&Y*X2iV$kW`1G1eLCTts z9{jSmla!-x5t!e-6eZWo3c1GGAJmvy5#KFj7JQj?2Rgrao2%6Xk?jS5+Ri zXJpag3M>sZVSi}^%OfpV9p-;y&1INqr@awwv%G$3uoY#QiKs8iLS1nlI_qoD-`0k9 zwyDvPNRNv~UTPwL447$VzVLK%g{QNt0-B$P7kpe@Ve$1rv@rmow5=donr3S5gqsJ# z4TPGH4iUb3g!||bruRgMmj_Jj>+a-2h&g``F;5o{I4iKZ!o%JX6){E}$OAqJvW@;Sm40v~G zXz~b`?P`BatBKWqG&F7gnbq*5L|?&)p;C~_*u>Bbm`Jn7TB#lb@mH}~=Bg}CLVzg! zt@F>eO5Ie*z8KzomOYjV+%S@ORV`{PYdDJC{Upow&+8LtJA@kB3;Z?zz9ESqlAxLW zU!c-pm7+q9{of(yWjswr3Ztx@iQq95s(SQ z1Zn~_?Y>qhYH8B%;dy3%@_M$sP8P>C#FoQ{U&@B)Qn;FP;Tctin(;%JbK3bO9S_&g ze9Rtyh@8f8T%wt|^7VUW_VMQT|A6eeVU+i*p}6-3N*K$x-{9r1{+>|#Grs=&f5)%? z@!xUu=re4eyvEeh0dAeX#MJx_TDoTN)gS*G3JMz$!!P&9m~8ZQ3}I{M7<(JC-rgK) z^Yby##9zHVUHJ0zFYxI8J&d}$4-RhN_{O|ypWohRyNTVU8BF!}psT49)s;;s zFRMppW+B=;`Z2$0pHN@6!v#_ zusl19-u6yR^bcTpY6d+Wy_lGsLr>p`T5mEcy;3bMe94fAx11w!!84wgmZ{84Komrv zc@sb$G%J^Yc(smVSW*$f5(^Q|R*We&wM@+?i{twVizC?5E8s@}3ADtV^u~CYB)v$$ z8My6E_~?1Ba9W;GQj3I`0L)v`jxqt8*SHW=j(Q91J;LCui-eCU4bFPD0!H4$mv9X< zCBcWLrlWbe6F6>!ma9joGAJp%zef@og^T1sRhVoZ^UCCpL@u&n5K zWXB{RJ2nyN+!n~i3h=`D9(j$VCcV8axJLWBEbzMGg^L8)HNMUTf=enG&q-m37#q(^ z(T4!*z3blJ!%Mc$F|J8Ul6@}m`pdkZwDNvsPTXH!aHFMpC{ugusu!W=gM^4g)MaL1 zv^*WFjoDag%ENkZElze<@#*Iuksb{B@!13niA8fj;BnC-5^WM?gg zo2yV;n1jCNI`p?RqJZBkU3GN`5AZ{<6nDhN!b}SbG8hm<`w}Db^YDa^o4XoA(-Uk) znpuK55K;aHMEZFn%-d7J%o=7dcbIh^2s3yi!p{eOZf@{)_awmF70|396SuElx~>4{ za@_{Cv3}UCBd};-4+yM>9a6CvhNU7O$TQH^N(i)03m)}og(3H8aPsW3W5Pl`Y?G~w zZ>fR}Nky{VF89W25usM%O)!Z?$;4?wj3%drR=^=45IU9g<=MV0Mm(46j2(FdOs>=S z$A1hjYYOtXj^@>1P{(fZp3;t_+G3~553^ZLgr3Yn(~3H*DMtk~0T^3V@WE|mUwc0z zJEx2P9%=$J*_Jq`V|YpYU~2*o0mhH*%?ds1{)IE32%H2!0vfS8u|Mf2t@ORj<5vkF zYh3YWO9)v(sHHbGGn0^QIVZ=@>wd6G?Y(H$r~yr0!wTax*bW#nst2o z^bT(FSN4tBaSV0!ptPtAdAY^tmbD2NSFyahf!ew@l`?GU97WIIGzthVM<2omU2AT_-RW5W}e93H~@(!6?r=2+h#S{vI@SKE%ZjscWZwyDzi;G}ZsBa3js zBZmJ@$tsm;jLCVX?Ugjmc3HoCBo7kzpk00tiR}nx3}hE#qednj1l;GbX6?p{(d33jlli z$09I19Ra*o5U-K(EO~s3Gohs?^!#aofu=+l{G%1jbUsn=l(9NbLXdr=a?#Pv3>R9P zH_u0z;}BzxMlvCmLL*C$ibYObJn|C~RLFK_Od@S99tq)bh$h&=j55|130F5llAyA6 z3V@S)FdSS1;p`a-TN>9D+SEm!lX0@Quj&amA2nWf?wYqce!-3a6C0DcZjugV2*}>P z`~?jGTj&pyJ3 zAHBxyJIC1H+r%xJ{k;(+|Li81X^@p0K$BIX=gMjI|mh>_6`W}a8nQqA-qCpVBrQaG6962VLHN|kQdE9y2^(2AQCh}Mg%6esy|7&1MKBmt zT2lJnB48wB&X~0_QKcTG;!#?Ll=Lsj;>0vSS!h_`rH%{8&O!`LRW8=cgz2-#$Pj2U zHaAAg+9C`m)9lWmtF6p0KvRVwgqqAnJFM1#W=&(tQ>G>5xIz#QCD~w$_9bB2Bh+M0 znOK)R15J+Y5O#aA;(mp|%ZsmNgGCzJXwr4UTmzc)|4A-=^`2Lp3M<%tye;i}o*LAo zeb+^^389$@a^8FE`zkW?`SQ)V-22DXt}(v3T>zaa27aP!r-`0c;^cYN@hf5y?1 zFA21lc=+rMf%X-)wr|Fn z)#Gg@heyy>--6nT22@rwp{2c_rZ+~*Duh>PHqN_6;T+?lE>0Dh$O`#lW+qvtDxpXf zXrvW2AStg3MKv9WN-kCqOU|j*=9{IKASiFp+MO!1XGj{+ z&lm&W0A5Gv_y+JAwmN+{^t3wqYxJwgJerI^5YXwmY#~Tv{aPv z|C0g&tvETEK#M~nVHX=335&@>LyLsJPZ$i|q3{oggg3W6b!NDGNufzFfffKe!p)Aa zbJ@WU?_Sd@n2DKPB;X{aD90}nYL^K&0hxlDqfw~d|(kfGk6hxp8QNc@OPD`QM<@BH_Ci)qtr(MO{`3SCo9*>c}X9tf)2t;pmwh{ zNL45*6C;#nbDXeO<4ZeqSI2(5?3MIaa3ZAS9un4lv9wVd+6I9-o#CLy#T2v{a$XEg zS}6(;^0uMsbj!^behGw-i?HaK=SuKS2R;eA|W5`lji$xv;;q~u9 zC^je8{^Wr6mU}eb<}Yu7*SnsvD&FC~08O@K%;cgz3GWkD=RM=UZ!Zui7rc@bSR@2! zD)o0}Mrv$~P&&^(7YH2zm&ADwUgw#}`|zI1t_U;&=!#S>vcG^#!fIu5FDuM`3@imj zxt|IFn`VgCu)gLMZu=(Jqo8+Pr5fLJiN<^UVooaS!{F+D_{LYlHKYK63Dub0d59qz z*#47WBENYaPC@zb=e30$%Wx0Q#LUJ`bWg0IZ|)fPKlwd=`KN!y@$;{-Pg^^F_z}MT z&3Ab8>_cqt-omYWPw>^ZzflViH#PQPm5}T0pGHYuH8$7RuslDFy5drF*Vkj9xe2@L zoA|@O{yRpxyD{D0jiVd$*k7H&t?gyiKE1t*m#2rgyR(X|g=uWjs@50hv9vIc?%pAc zPRyZyXdKhCE9mSVMNwH34Xc%KX@|j*3kTmMm3|bPO3N%oOJfJxn!C_g(~OS#R?Lo1 zqPMLRB?YBONXSHCaV@IqyVTg1jUgUyJB8sLmk7M$Y{4}{0`xR9SqxZ8=T%v~DTVe| zOdG35aAX$33DT_MCM0E7!Aw*0GbJG;DueLKL})}NLM$07{0J<+-~{-yHPg0?!70kD zf~ANPZO!(j=GKw@YV3JEZQSy@^NN|F*#lA467 z>@$Mx@$RU4c<23%L2M5-Vyr$F!*zLRFGTT)haW?yP0khAuLP?EC!1Kw8(EmR*K zmsT?|4Tf?L3C+|r`w~!2XE|Vpkd=ZG0hVTDXYhm$SrtUa$z0C>C59$2b63`;V5f>kyf7@qB!wPo?9DocrVNeolLMN-Ou!}MXVSh+ zzzNXaao0kCCLv=d?|a1)5(J3{Esh~zI!Bnj;~w|DDJcu{Bw#$Gp9VXDi}bxjz+4o- z@%VXx8ewx$?2GX}uaV*qWpe^GTAM&h_BBHk8`P{#vpqSkflOM7_jq3oii8}mu?fgR za?J#i7?LV`j}~^7c2?1|f~vtAxWv!nXv~3&z-sG0N*g9Hv-bpXC4GF4iLey*Bcpi^ zmpo#TQ`3XBqlbt{tHt2r9enWXf50LwZsYF93TpRX{}SK*{eQ#B=@T5@ypI=eKI50k z7g$_a#oXK)?mc{tmYP=76cK1QZeU@00+qS>7;I}(P@5T@z;FNIUzBy--P@pr&EoF< zI&Ra>9vpAs*`0mH9-h+FmM4a>IX{K{^(E}ySi#KHEMH?0`};?jUs%TY zfSRTr_=RV~#mFBGx>z_H6A?lqDlczDX;}?2GjdTzhz)f0qP4CO1vv#ME2=;PAy?nf ziL`84Jh+%pi^E$^p?KFdl7F{Y_(bL+ROXsxR6uV^h8wLZm{uj@V>((>kR?;46y>%2 z%!!0nB2sfI5gDJ0u*gjK6Fh-DW;7=wgeDdpFXN0^w5(J_#1MLxRKkt03yLGi;t(Jy z%uxO~k$u9?%O^tJ!=mn`!OX~WCNp0NvzFuM$B0}R-gonf+)D(>{MhMRb`CAAy zLX98`^0g?i`RYSe8x?ucGl}bBVl*%{Rwe}?1e(C?Dq$w!;A(;mtxUp^<|wI3ftwwH zc16sN*ZkE*cl_t`F8D8u|9Z{^e?d!=6y)2N-3V_ps`IijKi-X}PwwEOPhaEX&pyDL zk2OPk_38m$KHkUUTPt{SG>eCO<9K>FgXhPycut^wa59HCrz?1{If$DJ9oQVL#qMYm z<~zzT(Oifjf~}=61!GO+C{Kc|0W6w8N(ncsW9boLgq%NO zj0OVD4 zC>X(dSq+4?CSarG`MA2N$=NzLDbu%sosA=|T((uqUsc5gW1}jJ78J%We;L0DRuiU= z>w~aTq}PB}O<;{jo2h1&i05Ctf)GZ`BbhzZQpBEW1nN_5z&^v8CE1i_=mx5UN- zfZDo>RyYa7tUwd{I^i){WnU^K1ug`^>DB#j69j!pK!c2QSj0U=4Ubjk! z4=37St4uRA)%U0P_!vnsDuA8E_ds)tCdkf!#xL}DU87aJ$9?JZz0rB_*Sl1|Dd;39 zzzN9CyT|id_ThPfi?T98N32QOAMgL4+k_I~c9CHE-nO`HEea8s$+m<*OaV}!NQ=8n z*j+gb@7QW&w=TjjsR38KXllH-cVr3rmrs#WHN@9SqJibWoK%aY!>1^297EsIDGFO= z;TW8c+|E^m=5*pR0WJ@(y!+}4Bo($|{^$+X?|p`QAN>~P-Ahp$T3!)Mq#KE>x>eS_z(KE&?MAzps?F*eq>FxESO;m&T{JUYbU%nUl~8_?I+k-Im8AtdJlw?EzEuF#`5Aa zh6aZ*J~fZwv1zn+44|Q<2Q>{{Xzmz7c|$MUg7{;=BLZF_=`ho*%F3INo?d{KrVcb# z*Pt}N81kvvyv(VTg7*T{>5P>Ge8)23-go}-W zK}f6s0RQw!L_t&$XrbIThoz|P076Q(jiv+y5OA^|B56xsS{CgqFqp8Tbp^8xF()7_ zG#(LQ@vwx(A|gZ{C>f2&kT}Fx;t&}cji|5~9w*#rVxfVNYJORW%qgR-={$nq;bw%v z%LIc?p4AnIL`x*HWxiKN8ftTMP@SEP8b(P{60)OXQK-O|q`($P3%q#Q9oOs(uygc- zgR?*Eoe4K5+81q1%I)8}?8)%LJ6FBcqQkaM{tAHh?BnPf1P8YuIC+=|!5~#Nd5Ivi zWqY26_7<=Io68;wY=3dV4gb$Oj`*+VUGW$1yU^zJXm6^+ZT{$a_~b6$(9Ayl;tf8f zrG5Gtg z!N{Y|aP~JVkjW!oj%a3*MwEh(gDSBgAM958stU)AQiB4Ts&15dXw5+iI$}oB3Y@G! z(^889Re!b6?+$?`g&hJb>37l~!1`hPs7|k$9{Vd>V?Vj)V!pPPqZryjwFWDJmYNqP zV_`M2iifsJh!k|lIVlp^F4G?HIY*ezW;qgE+FUh(mX>A|h`Fm{DhN6aYMvNOx~`@t z3@2XaISqbtPSTP;IiS5O;PQ;a`#MP>#uEz3xauPX8!5O-tC27CD>NP(zjR#Vaa;d% z*!ZX6I>XkO0owqnQcQ=PF-tvS#Lk!r$DnN0-`<$b^I0lv{4&&%T54IXKv`BRPi;#d z>v0KZQ$E`qILeY+vaOch(pJH@Rz5nIt)V>?TS6vh+cRX{$+*&Cq*hPDk*{-2p9Uws zMs#5(#&#aVKd~0qeA87SN_18W)=pj_qpT0bt+QyGJ%UGQA=2um;lkIwNU+=J6R>>v z5P3CysOY_cy5Vh1h|RT5!jx2l$<3#D`0?*)SO1E~ufM?F%?H>yyo=xc@lSaC^d+9X zc#Y>TUtwcq1$%32m>C+vqX+k~v9yH#mNpC#a7~r<=xFZ3=fC+ooSYov_SOnkCkJrv za09n?)-X5Ri}k5-Ji587fVMI2e{+Zd1F@H7G~ z8PSOah)*d+Okxp?AxSi{bc7IE351-Hw&m>;i6B!vLJ2TSR3;&p2p|6_m_m~XyLg&f zETNV}&=G7wG(mz(+5lrT%|uKsN~IDlVTrV{1Vqx#Vk1)sGD6KvfH5KoxR|h5#9QJK z7a{Y^A{6W_JQqqM3kry&WrafL9t2NUBf%CxpqUZoZ=z9zAT2x+S<%rbh>K&ysx+in zT1hf(Ej0x>aS4buM-hxB6~2ZLciEnkOyIk0A4gjewBtC0={U)>n&N|-ZX8cF;bgWAbM3`w$xlE{W;7aelhDBEt0_cbd^j>Kfk-y{)0#Zt z=jK8K(-Bs_1e-y%Vr|hzKU$a(u>@FbP=GoY>a9bVJaL-)$zf(>Mn@2OL27(W3O*u? z{_v%dIoUcu?@D0l^$280+A&C{QvmaFa8zS(QZ*^Zecip_>FfbFClA~aNJP9(HAEp6K3PWUjpHSK; z_P`i{HlO2y`7CGJnPy{hjToJ5ODJm-(4CzVpp7KkVY$!~1F=`tJhkr)jeUM{Ky#Ee z90?&Ce+^8s^pzt4;6xa>$~ui~?ftd$(oX>96qH3M$#yy%2sPQ4a(EY0jtbeg6SxJk zTg_WjQvtFx zJ0qmrqskCdHUyuz9}v=)}@^A5ONHv9~gh-Q_tPZ>->GV+qgiA7i|)8>@5E zINII9{`Lko*OsxvdoL}opt!UaL!;B!+C4x|-zf4+>(SCPhS-d9*s9`?EcGBwoheyO zrmiikKvhX8TI&hbrY5AurJ^La7)3cn>fxB_*(GX)`@onyIQu8!ZAUZCxmgs@0BBPN)gG(pqvSMOY1!PJjKabf0lYa*o;{w6- z?iEkGOFKJ%jgYeQQx>Q5WO*|-#S47?`3rpU`AY?~&tD$m z!_yT!-X6xojegu)>&C5xHay=O!=1%W?2Xjm?m{~bC+acRoP&XiRCJf76K3&@1Qf@I zqPrpwmFfJv79-Nb{E-qCMC0-&ynK{>iEW9crCLG|N0`N!0ub(NPzIL~6^R)qqd;%on|w^qXBKV$`5PB{K6;DWE@PT90@ZSKYP?0 zp^Qz8>!d!AK#+%LiX8n|Wc*B3MiOM!d0|#d6FWO?H7WB` ztLg z%;&kGFX}R{(TYLD=H%L+9MCT6;&F)q~Z$gOhVuy%N<#_)xLLA2TL@x$$>sRdvqUL z8>?8JU%=G(v>H2;RrKeVH!(T0Oj8?1d-pJ!+WXMnHwiCe3N8`Uo`I>V+A*01*H~ST zhN>#`wzs0MtrewtCCEw7Lup|p@^VWRAY)SskXld&H(J`y<>8c$A-JlK!!=zTJk7G0 zFs&*o8-6sh2%29)dMP5=#;29Qho%+~l8CsJLP%9&Y)Ubbv&vN=h_|m+%n=Y2gK%0~ zRBSd9*)KFanfs{f z!~};R(in_Lnp#|N7!pIn5l_fP2ZbWUCm6xr^879%5<&^M=y)0j;TB6v43aUqVAwhN z;;Mrm&R^FPO!_mJ`M}QEk5(1{S2us?^(Htt`7nIpR?;!BBNzQk8wu>I&h zzWU%MK7F)~SGQ;Jbaxn!X=G1#hVWu<6c5*XaeuiB_X)Put|E-rXJfE36LlHUXwFGM zMUn+M5rMSR2n;vXATQcXQwu|Gvaef^a^^nU*6HpmiF+ngm(`&mXQ;V{!!4tvbF>-hY;cwN>G*=CBFS zG#JVpG;J=K91{R)iw8@qSKzrpLmNr5$4sURX3_~#Dak(rnKe`zQ9(_BW`&wo3^JGR zj_#;S1ezR^aW_d-{sh-@yy&HU$zNdmu15?bR;3mNRFZ}~?^{*RL2r|FPUd1RgB4m4B3DzDYJKFs=V(vT zM_?pSdY9Yh+!OGwTO8iwJ>PYY#XGJs>=%c(rCO2K%cE!9Bg#~f$!h5v0cU&T2Ye>M2 zThEYL)rac-bvPRdU5{uSJp2g3No6#+*+B{XyN87pk8h4+4h=2T# z|Bl=D9^vTd1jom>aOc(?+&#I8gBvUO)mL9&Z*>v-w68tFYJFx5Yjach`ZvG9#~;4N z&CNv`*&=T3tf;3AA8)Q;d2$5D+v|Aw_!PHyHxzv4rY12vJCD+m8dOy`V{~ExS-E9c zSlhwm+$t)n8&TKPiKez*RMdAMg;26_kAR+b8t4XBig%a%6ucXc2) zBOfX0g@}&JL`+A98gr;!EH%p&7*P+Z=K1j0;KHxX;|mw9WZBvoE-2oR{zx@5_z=nQ3K0y6k#xPo32)9j$4JP;qxKMvHf_zK}X5X+N3yglDgc5;f?@NgJ;(Z%~N;6(%*b!D< zIul%7{o&|nfRnQ?+-PYoZbsPJ%NQKt<{H2-5^4dsYG;6lcR1d;;(`DAo|7uu|C>v0 z_{CLE1vLTMIXiE>Z|8}Usye*-_%S~H{5ih*xnZif+<`vK$-QbU;%|V>f&=%YB&{vXxx-<)lVndK+2|}vL5AgwdkW3Ubc1!^Yw;V)@Y=~WyV^N zml)0K0#zZ1KS5@qsRa>I-tMyEha=n_#k}0qI9fueN!?2T>F?nVqo*hBF9<%oPRjOW zE}G0iGtlT7lYMYNV9BDvr>)wfUu2QtyG>>SAQ)?e(Lt?AS=MQLC?3$t9<+<8g({$_ zQv2p$HLpx72oXb*<*jIFC3>~&m1bxLZD}k48beZ&vRstdm31DPwJ7A2Ks&1SA<&#u z3QsM8Mfgd&QBsUrnvp=0^rF}q4ezF;8yU9O?Da#X`0V)bq{=F9DfcCuu}gu1|>Vl*xIm`caLcC0tdj?GMIZ zS7s-6rp;aZ39jWRMIUdwM&TE({6d!!el^#KmLmlrG7pWQljDEmY#~gd2pTaRf`@>S zFMlZjkv0C#tHKe10YSs#VnYI@cU)vU{`*$JireoAl$@on1~4fKk^9QEa!jsOEzb$e z6lnO`^170)bO|j|iyVuk{k4OIRuzd~*oVS7I0t3@n+VJ9z%T5=aLqdf4gs=QZyHM4 zXVJTG6CPo?h{$Wh^x-S`B~+_xt?xEmIn2=rFhl!2b zDwSzWsG+gNpnrB3!;5>!uOG+I@?GrS`v4#R>bLmvx8GrN=MYE7w{hq6A@1J2kK=us zIN7~{8}m~b?CwHKQ!@q!htbtJi0tfALahbmRZVDW?ZVLL4C)#?vAniTQyW1|Q@>i( z-q8@F)Vlk@VL&np@%B)Zmpee8sTqa2|(#pKNXh*>`yKq7?FiJ~55^Az-3W`E> zSR4{$yevE#=`nFAO-)5nax$`FVvs6n!pLZqI;==bKucZ=aa|C88=d z0fn(KNTHD>m_rdkcm?VMVf6AxsILjp!J+)J4nuNy6w+vbiJ>$_0?*6c4?g-J_!&%a zcPFe|rRc*KSEQyGPonz89*Y z?w^+s2Ok#~RW#!3;RXBaHiV-G=F8+^oZ+}jP$`(v((cgKPFuogKqfUYdcR7FLJVr& z*?k#D>oDU{7lGCmtU`{-g20k$l;RLI4~>>|qu2`@Wj+KNK~W~-UfN0`QUR%gHf2pW zes5=N#ki!eQfob#1v^1lbo}@^%%X?L38iNR?pOtC#HIHi?z zrbA#h+{23CY|6tGTBHC-QiMNuvfzSeEE3B4P|&uZO!6(-nk+CZX6R&0L(|9xn#VTb z5t;{AQ#QKh4iTQ+POIbRrkTlmdP`c~FD|DZtH%!!UDOUsekabkM8M8FQI+i*q6*X) zpS;KGx;X4ScnQzoEQF>sU~=avHtv3akG}aGUVZWv4o@E7)?LEv{$m`{)b8DTfF}>` z;dkGCi)VL_@PsfEc*z9n2PX&k?caWfH?N)$bQ^edyroi(_m4L5!U@5+uXUE^D%^}d1Th~qQ#Po(9i@0w8)55LM|3Y!Y`N* z3=zvS$0I6);EGB>k|mlZAS-<&A~!A$DdCbb3{_)a`EfC*qh&N^$D_L_O#!XFARVWMC*_2({=SGrye0*g_CMpy@r0@YWgO=H?F@ z8k5+St%DD281~NoaB%jcbx9FO09*(vS64sibit~>3oT8?-E>|?g3eE!clQV+$b#U= zYb6~i1tXGr{LAxB_&E*jT^k+VzUoe>IpZ(S+2N9{2Rge4(AV3B4_=?*x8J_PZ@zhs zUw{1!zxv`HzWwYjK6!itU%uGJHw4?4&$sb8jqUTt>-hBE0zM(&KG+|{o%vSWoNmDW zSS^MtQ~9?DM|FA>%93boaUnl@^7OdCNa{ZKX>75fi_uCpWduqX13X(0~B`fFKxko@zq26q86v zf1nq^8YX}HKmyMRJ{}%4ITtt*Xr*z%*sKXx6Q~7d+M{4Xw3bj4Lt8H7mpBb=t=K@w z5om2DJn9rnGpV>wphk((nT=Idx}Io;g(q3 zgP%!X_EC1{7=fSJg~HXGf%V%j5t-MDxbh*qb=|}->@fHfWJ`N@XnmpZw3P5#Gg1oM z(L1vZLu3gCZahKv(p^;dEaJ=W{)D4DkFm9X2alh<#@@jRZr#3zdk>zly^UY}`j@!1 zyN<(+1-7fWLvTqd@w-3#9X@{j6whz(sfpB&PIgq>*;~W&(?bn_$J;pCT*krH8g_21 zVt#fGZLOVXYwuPofF!3CAwE6}9faBX)-D#8Z_wBVkd|MIyvi{r0WxS` z4HeaBs;DH;O3~TajNJ50npzg>D=G-JYBe{lqKt+Xkp=^ePDdEp0Fyv$zv&|JzFUYg zvvba&D&CPfY77@&niTCXG%{TQO)O0BAEhiTIw6n8GT;{&3;&=vwVH;`CjxG|P;Dg- z_6wq^nF%u~!513~3r#|3NTPz3fKDbw3%rcRNSay%f@x)8Aqj{IPe2#}XW_Ns1YA^T zERrMRkw}A*^%oP&;Yg2&Mow%Ta%o-#2{EY6j8`kii=B1kr=Te-9`zaVC{2t)F)bn| zG8`#pGtDE6U!+Ea7=rlgKagMx4cW2q!4R7_xeZw~I5vc)iV~i*R#rfU~VF z%3}O**dXgNTD}LGjGsx|ZZ@lVXaY2OuGnf34UNa-(Jl`a(9AzTjUliSh$-`;rAbl9 zO1>M-%oi(#dhApRd^G4;fhI*HYV3aW@x*7AJb_z3Mi6V6nIJM@P{!pZG{kJZxTGVR^)-n zOexuS#(cJu8Vma#X0$Z9UK>9X$hvCwrjB{4C9hVByfBn_O#w};QC?fF`^f?AnnA|I zB-Iu{I7EGKY44rQK@&q$U^@eg0*M$KK_W0x7WX|2Bh_&gat-^cb1F@#!AJI`mDkbi zkiYP`|CXDWpq8SPd2R3TS}7b6II7oSpTDsWV}FafhqU&A8Az!bM^sUt8UvFQt%>IUbe`ZVLaF539-hE`(4k045 z74OJ>c+X$hgrI-^2$4CBglQtKN->Hb8YH8&s82MaE?$HBcokou3JunvucjI^ovnmdD|QXHVdqdAb_}**zPkZ4 z?X{TXi+GqX>E2`<12wd>m|nyd$dZ25C5+PWs!dWzH7%`z+u{UWRXBmlUIXm&EcTQmBnasF*xmlR|F+W3dt)&QGo}x5-+zCj2fuT?S-^B zSzd0Tk3duUe;EO0#|Ntm2s0a2=eV#etq9B2))gQ#w*-d|>>$8C$9G>nz(4=~HU8s2 zeSv@d>*x3nfB6jm^4sV5Pk(qth~2`kUSGhUzP^dye0(0?JwN#dXs<7B!?QDUxO-$A zXXkrxdaeftHWK(_$S(7#i0#$XXzKJQL=N+QV(? zGZV-ZZnWT*3OTBl^D2_=Ob2{dIu zD$KaaN(xDZAeFFTRSvPrVci^Y;BvnWXK7oPdkam-QQ<~GEd{ewIjdCDb{XaA4gzh& zjx+7qW;Sc>Q)Z;vk1r`i;3CXc6eY2|P_2sVgd3reGAv_k0-0cxY623EQxi;#$#HvX zUCY$5I`@aiq>fugD4632JV8&O666fnc&wg9MkljVQ;2doO==x&t-Ny^TBc4QFVsWe zC_#bGvH-JXgp;$fANwyohbu9N<%HK-UVrq!HFR%2jSsV8CV^xbk6%hiE+Mqic}?}3 z9lHDo6`fnLg4bEj?Mw5LC<%4qKCMlVE{+c&pY}Mm<1AkM{4c2Kp2v#p2-0bOiOx;f ze&j0t^xytpOz%F6$(^Th;np+Udh{_a-FkwP=V?_>p5wQ_`!zm)L1=yUF~0fqHNJTH z48Qx;FA22&2fzB+XZZEkukiCv9@EO6n)cPp`vz#=(9phm@syVK6fYm$#iP47ar4S$ zTsU_Q7tde7i4&(VJ+~EO6Z0ngxMSA=G`IHRz|oVK-+36mcq_7OmB=G_3JIlPq5~}i zRZCM3dV7YkXU9%V5Ns2}BRF;R2rivHg>9SWarx3UUT-TQsc~e472#MGZbX#J0$&5a z-w6K=!u$@a3A$#u%axYjh!AZ{vkU|XsxkshePi_veWVMt4> z3B`~gyrQlE8spU_StRBTp`1;9YSjcZ64O?iw0;L+ zR*1B0C)TDH@w=|Xr>}0}Khey7|IGvZ?Kdy+uYdX!|NJ`{+GG4pcJ}Q({OPOf_}yoh z2()wf!>5<1b57{t|G!#Fk9g)^J@-_v+2zrPCp2&l%c zkv2?s@_TJbVyGdG@wRHy=9LxM*??ZctgSLk!z$wsgP=(g@j4u|uwvwA7a)CoHgdE1 z-0L!totbaei}OohH&e`%(z=Qeqsb|JSsx9fHXJa9<}E2RW-tB_FxEKRf zK3tlhSrKGk9kAvQ zON~LZLXDbAM$dAc_q^O+N}v@OpeZRNHJ(h(gck)e8k&}BR-%YPj=8uxSb{ShIc8cJ z?Mt2a;{zIB^y$tzgxc>5Mo;!<` zgrjUvZ7I*+a`-x?_g+GrpzGgs8r_pe@bJ|?BGxiZi>ttT+NFj76oq?m^4b$T`r$!Dp|Y;nSB-@yYWi`12orhyVJ2 z|95=%#VZ3Z8CnWx-+uZ8zx?ur=}&uj?J^$SxQ1)z&*0w8t9W$#CSE>!j$=oT;@Ghh zIB@VN_U%7{>FKSwaPb<(r#54Deme$6W-vUt)66MW=x@T>!g3m=20agcZ`31|v0demoT^TO>6@pA~a zVh@)=l!q#4dw!l1Kt9jOpuw%!V8_z5QUkP)))iw(nhk4nJy=6yTa#XjH5sK?#qGHT zW!N+`hF{Up{?EUBfq(w(OZ?04Ug2-Qes02zfBxBZ{Qirp_ygNtX=uOy_yT_M@ECr6 z?QwW=F8GwFdqCVNl`sn(<>wsn6Pwf#SR(Ot#?<>`UgPZA#M@9PSZ>w>H}G${eHcq?HgN z<9baaQ;71F#-(xn(;Y#4zB|HwUYza9H)XS~^cEN+lhNrurteIR_elXwmZpNkYBD;7 z8&ig+DPoLi5n3`m*_aYR-q_cIxoI5QsrDRP8@Ayz4NY^TJuwwXtbV&6AJCk%rs5>w zz*d;R8iHeujj%CUjn!|$eS(MJCirNZ1uY9$f{+D33u51I*XQrS_QR!G3TjrXpFDCb0##)}UG&_#9G|!=3 zm(aKE9G1%n39C0?Wz!sA?qnbCe)=m^^=vl%b83QkVWVe%#XkoZ$~MC(cU?N>2dxL*tQE}L!;QWbq6L#$8d1Z ze#}hF;P$=87~eRHuC5U@HV+_L*$!8z9(m46WRzC&dO@t__0|@~kZY%95k#u^QO;$3 zLpN$_JJHb4gT}^QR9Cl~^)}jJb4x$UV+|(RLrvjB6%qE*xLnS16NW6OvB|*vGBfTA z5?sLrGmA&LKU|GyC~20-c!QZ~x+Pg>rhDnDr=2CM4A9z@3{sguU$w%DRhVq8H&&*8 zvn{<1nD45^e0vSH_cUWGw@tOwVWOoLvt7+-ij*U4_YhVQ6LzeNCQPcntSwR&;tQ7m z@dB;VX`1gc->~+=gN2juXk1Avpuve6&t3Z2|@}7DiiVJtx-HDjBbxv zWvlK_1n`pEGzq5$J}Z4+VMc*SKvS}anf~QX`Kk!+PnO~FrjQ9YKH-bq0-gmkC3B3q<2c9p$O#3wr%%gETuJ#p~zO(aPdAL4QVrH~ff0>{qFlpSG zAZCRdzu$g$te7CnrO`SG(_9*y%M84J#C!TUp+toYE$b5axSoR24-88tr(;(TC@D}a;dKQfg%*FfRFw|3RlKGu zlSDeUz*9T1kVR>QAlLHV>$yx5fVe%|+lCQBYhd#UWR*1`-O+^1vStkLzKlUOjdx3P zG_!G^fikbdbMpi3xcvAtw2ke-I{jVF7UTxH;Ye(Rr+N%q4qnFO&NIAM6H4NPSW2VY zcj6`*dS(n9RlQ%yCM#)(MZr$|`d|MWE$%q-LmfzVZ$-MN5$?K;1lj>?+I1Sg{^MWq z^7UtU_VguQJ%5RpFJ9sGi|6>4|NI~E%kO@UpS^l)49!^DC$zNBpW=&WxAD~rg6@-t zQ1$&w#}DE1*^@YVki^p2pnVHf*Ay^$tv; zp?wJ9+8*S2n`l$zSe6w=x-9{FpdMZtPES|AfmeTbANsm_v3>J49N4`d`*-id)~&m6 z<=P!H2iwrlB-%Pg(9kjncc>1j}_3A1R@*L=SqbjgM?tD z1{Eq_6|O=wm_V|;8ujsNjI_1$rP_k->IFlqt>X)^61@c4P;G)htHREKW^C!M$M(J^ z>>g~xj-E!$wpL?;X11|DfzhUF4AfSlL#g|Lh{4%DUCx5x%hi(92svmrY5kdoto`5*0y_~7CZWDG1pD&?Wn@mkxsN$MKICRiXMJ{>f36B-fl=va2323hcE?UeB z!cNVs^Lj6Ntj3*b9<;l(JONFmuB;HF6k5$p`0 zl57^FERYdY3#KKLQ~Tb!Y7KYs(1-}DYA0egkSgU!RoU%sTdi^c3+;xOp z2NvhVkj?emPd=xSlw(N_&&f;RBbwmSyf}vD4&%4~@xSo?)yVd>6T;&r^D@>si`I=h zux&4YE&u6nxN-9V9zJ}57X;eV$ItNSq2@ySZ}`PmpVG#jnK0uwnl9$+m-z0Br+9t; zGJZxw`}*Zw{DM%sec?DRo<4@t#}4Dn@gq2Q;wbiP+m3yN&;8rC*>2(Jp+lIS+=NNC znb|EE7#Kru-x$Kl4!FwOX;KwfnG@x&`y^b1Pm-{io7s#_v-5=3m}#9I{isSbVR&c^ zEzNv!9i{!9IFI4sNz~MJ8BbRui{%SP3D7n6Wd$O;A(q#gLzXBg9fI z3Di{7BFUw~jlFdWIo6scunA}#{FOi2P=jqWu>*YZ?q}OhkZtR3z>Z!5t-aQS zBZulLX>)OO#$)J7BuqWWhH?UvFstxKX=`CxS=bm_fba=8X-A`eOkv2+4WCZ@KG5L4Q|EKP06 z`eLN#d5~ud5_*JNS`k*S%SSgY^zOyoW}Mk?UY*BpUYxiP?5Ss}1{y>u`wXHPsx(Y+D?MX=4XBHkc+mlc@=2g52RrLT>vg_KbDn z!0Z5K`aN+E)jv z%-m)MY6fWKcsv`#y-7cTK&#Jjb>)RMk|w@StYQn z_Q?)Ha)-)i1#q8Wx;A9P?FlVqXtFpOCc&p;HJ;35EG}d%T50>VG@Um{pbZq_OlKB> zR!kTv;loM>F@VzKo-<{p;IK*EC)BjOH(r8^eZ@4x5?tviG!`fLDJ&^d`_TbyscekE zT1^{UtuQ0oDz>$D!pKfIu%$T_R%;|sI?RhYi#DW|?QcgOtt3wn;=b=&r>XH+pc;`p zCQIP*5?DMpgCG-}RQOoy=_-g!lhS%&qz5Ij0hCq_nOc$S>~#d9pjgXiu!aVt5=4}- zs5!byDh4pL>mrZu=JQu$4PmyyQICy#ub_4MI3Z*~CuNovbP3pkYV^z;#NN|)u#9k8 zL|Dnb786d3b1SeYvm66c`!I9xJeJcW1=j z5Qi_^!@bvEBcFeBRnHFdcc@UaBQb>b(Vf_~?;Jk+_BS|u;vz2Hc!aCB?&IP8C;0S> zFY#agpZ|fcK7NL;UOmKT&+g;vj~|+B$ESBL;@RyB`1;j-eD$1`#_gXzyn%a{&*1ct z1K7K5D-Q14k0S?ys{BZ+<)=Nsc(NZ0i$Se#a*H(^#(m0A;Rj_-i;Ph4@9BDvJ4X>wU5P~UA!;+l|W-=~?8wD(< zBVx)yc|0^8+FB%B120WYO<_j0Sfmy;NlgpWfOxbP;XuN)2n{VB;k|ruB*ID5#}a6c zD={H~-WvX!)6NEJl9+C(GXUG%S&R9uI@(3Eu{3Q{w&O@c5`%mR_aqZ&42IDX)%;x= zix#0Ngb1-9Vzj3yTZo3{DfJ>mxXHFkX;jK|6qx+7F9OfQ&t)_+!LFpxZI(8INnV^ML1Tog8$y2M)Wh#pVFxTIK)?Rw&uD6?el3-zQst0Gva87e z9?gVtdt;e_nN?U=rKW;3D(^xe;(!S`Duv%NG(nF*8>ZE4*38p19708Qru_zNTY`8_ z8+%SG(`?TwF=Zuc5LWYk!o!7|BX$B!vt9Gv1X?Ny!~jhFXPXJYO&UM+dZQ!X%3=n?T8QHxo2mvZd2btkz(b zN*YO5-A95=a7r}+D|Jo=&(HR$LVuGvUdL+r!)72wpjZ&Ij#pu0XJXhuDc!9xX3C5d z#Ar$yPQYd+m!w@81Ef7^-Bmk^uKAN@NWe!qgi%i1TziDJRyDK>A8ZKXBZ6loZA^(N z0-+g-z|X;&0i1d88mncf1e(cqR9_sSreqPp@%q!B@%w2o5MRRUXF6+e<>{w{VFjU= zB!K%+HL?$Z#%bhuTk!mw-(Ys%dF1kYaa0TvxJffRc3I6h?6FR4J$w-^6!cKF8nZ+?$T9{x9BHdPrRXIWAlvcpzp`DgQ5Ux;`VmFdBr=Gq^RPem|re2)9 zcpIY=TM?pZ`9ifOC0~_3-2PgW`Rh>VtVAKfR={iJ+hZo2sj4641X_s4CwLt-g&wO^ z355Gi<{}MDW6FX-g&dW&c>I1S&RmzL=YM+*PXtEYd^YYDj zvdW+z0f(Iy=0l*=X;Svn)@ASqfK@%jQB=(D+lQJ+6!zRansU(er$wDM>}(6-={8!K zs^+WzOx5kV{F;WQFrf*}sgH|*GZ}{CK0MhJB_uqAi0U?4FjGYkjU!W2n!YN92v(`E zeP{xjQuCG7 z__4x`^JQ!pxL1DYXaH}+Lz8Z!vP4i)R?kVNvu?cqm~zYbIsH< zr`odk{8pt91G9x9!^YIqr(oq zf+bl|6AIL`=sxK#s}D_6phfN*GNZV!<(GCSeWl4IXUHHwv{x>))dd%M?C@<#Ux;VcQi?}~8*or-8ZeeQA z8Eo8g6lE11*m3AQuHSr&zx=2F3y+_@#+@72O}J3w%RYVa5YGv+mk+MuMr?B)gB zy>NmsJBtUGPvicTvpBkEC(a)`inE6gW7E_eMutW)Ker8i25K9zbNe0xvyQfIba(V) zY;+p^z2mf`4r5+^+EtD{j#YVKq!-gZl;SN;8O<>9Bw6yxrnoV*@ z9iKy$Ka{x`AfyydR1?6;oKa(MGBSVMa#L?W7OXI! zQ-74;&`d+?Oje>Rp}K^X7_6%@1~%GQgN<6RsWkm+qxCX4C5}{@Fk@Fm723)xQB61r zV9IDz`KvH(D(v#3G7u%?A_ihUT3V9eQ{qUR+k6f$U$`_h+Lu7(F7=@#&xyiZ2b?xp zna{vZ;PdfX`s^$zdjmm#nG!|PR>v?(pv@2Qzsb4;sv}{PXq9j?M6 zRE5K+EsvV{&YUGqlopl{_@y*gekR<)E`CR)cKGe3u;u2U!cmBeG^@Te4{b|fJC&Kz%U@Z8f`t0JXgD;WR4FWh zQCW|-36vLGBDl3t_T@F(4a~NMO%Y)wWhfi)p=NiUrYR9>0-6#y9*#MTVJXA$&S`7VI8O31}q-Xx9g5X!CkL0g?CI z=zzAGpiy?6ar= zQcESAD8%_gc&M!=P&e>C-s*nD+a}t;!<#?(03|&4gAD;1RSZknbbUR`dO}GFBpHr696Ea&6|H0VNGbdRnyf6Z!dyoo zL?uj|zw-=P?s`5~BbF1Sg`qZFd;TdrHACiF@6rC=<9$BN4CDQb5C$jr z$fD6L%8lVe-hWYcxq*1Dw-G0AK1Y4e9AYiwsO*?QbN>uZUww!_|Cj$4S1v14@jC9^ zx`jK}FXPqId$@P)99|J-GPHXaPvYu{{kU>`Kkjn<^nqR2y=evqcWlGyBZqME$PpZ( ztxZo(V`y;P0Ij)^fS=lg2|}%}XPBQm(a}DL_BLf2(vT`!5nFR^}um2rHk5a0*q^(r7d8a&Dvb z(8{7bR)!WLciz|EvI!wqv)uJ zp*a#Fup;P;m7^mbLla-7t+cW(Rn-qi(5OoLzA!?BlPc@0>{Zb2<7WcLR)%CyW6&y) z2$Y*50Oca|)KBIt_P|v_BO~BsW`4rV%j<=`e2M#_=2(Rqoi;bB z;W58}hsd3bwS78b28zz2lb2P<+6&@|1=hg@H=HXpe>cGdcPq-PYP zm7ucH4Hjeu80P5rX?)ihFgDvLaj{;k%2|FrPUupZfnY1^Tm-cE$ z$m2&&W*!Q;J>s>h`TJ;gNoN6W&MMScg`cr~wY$=cCzFkRp;@SDYcB~Dg%m$0=+uX% zq!48~%Fv!~Qud+xy95DQk5c(*d^8)4E&G%pOcfaZd`AqoM)>ld@tN?Su{gp^`?WL) zAq1L2dJ0`Wo8k3kXf!6-(!(*@)rj2;biO@OVnC%NkknEMAg?wn+^M7#C7GzmaR8ri zzrvMD=(sCWQ*q*17mwALHzkM2$gKI$o~b`<%3(4dpD27tcwO#O`6}9$G8TDXg&0%g z&(y52n(5~>lg5nby9k-{(tNrMJwk$tp+VTPdhfOc!)cO*d%143*VPv&( zvu$xs#2oj(o+tBC`ys4SpHoREZxT%kEU+0@Y6gdyNxU9w3VVR1(a)+@~>ag4s%26*5Yzaq!ARRJKka!&OTQZGbb@fjb|6i`U=& z7UwP!TK68}!JRwC(5_!TgL^kF;Pw5h_~qvh@#4+}Jh(zbyLJ)}uAjo`gS)X~W(rdy zBbXf7h!ckn;nL~T*tu;7fi{YR2M!TpgBa)^L2u6xMusQQ+dYiN`c8Cr4WPGo1kKI8 zrucAWZ6`8|f=DZjU`<}gq~9;zpeg^|ShB%`m03ZoF9^dMZGpeM1>r;|@=K$p(D3Fx z$I#rh5s`Q!yaY@U0hn7HK>^KdL%tt{j&f5GMDv>oXsYz#Cxq00reqJVw*p}H#g#c+)8aI{q-<{5;oh%fhG+>B={QmHJ0e#!a*ytOm~?=H>6GL^nsS7czegr>H9Z4okZ zUD%LSib9(o%hzPnZcA};_ar{ObqHVHJBH8h9>G@x*|*Qm;j`O^2(@GQ`raYDy1b1* zo5iE!6S%xVyM}Oi_pmX$qtmT8G|_6z?bu8gwst3QbfTTWYcpy4n|f+6 z)D**bM>V>ug9d1Qwfqqg^V86hnCovtM@ArERIKK?*(nq-jLD1S&)B~amUqmDl? znrYH`IeBb_$jQn_Ns$e!SFT5zvK#Y@5GBx5|FJjW$Cf5Hu8)UIVc~D~S%#(rk533P z^`mKwnX(oIC(T~{WG-a-&{SYpNg>Z>1AIZd`GR&6ZZaNg?3j`yv{c%^LXXONR4V_? z5tgU1ePo=)pUGn{FgQ3wa?g|b)6vL;xyyXbl-clH7iA5;ZW|UrOC)FQ&ZFD zklC*OG$n4Rgp~|UmM9aGd20NcH4j=D%#78uWq3k}y#X45b)hE*S9sr3Z8;|7sDzGG z_)w*+bc{YL*~65-65I%{yJI$-XwSiU!tCmRX317ENy_Segg{%&U*yYjqNWL0DQF2+ zsn5&uVpzeZxv*0El=Y7~|Cpr(JjsT-(gSx!)?->!H2dDL#)XG}?OS;XZEf@|4= z8LG*=7H9HB)isNqN3Y;R!t7lh`<{R%FlB`CA#F{e#~eP#g}X12T~>oNMOFBaCbo)J zdiKUcQ(^x74GZ@n=s)6h-^&OhozMHlum6nZ!Oh4ds6M1MzE3ck>l17r^1F3c_F>bZ z%Lp}$@mYg}UNxeP8}ajh{;$|`>>5s=zlCSdU*PKHE4Xy-49=fEju#JZ;_DZ;@ZG2P z@#&*0cy;drzIb}wtUtPOhIY0Y=T02K#KIUv^004v8mVelf`IEk$4k9#P78zf^`Jja)NAex))0`{aBLW zBiI61mm9%`q9_5!zq^PQ5^2Qbwgc!MnKd&@S5&tnQQcw2pB386QB+zEhdYTGG^Ax39I_5Ml(@o zjAj%iz!J1E%|@NjlrJHgAX|inq^VytPAq8m^CcQWT;W5)Dn>}f2`jY&Y8R&9h}Bs4=bx1hrZKcS@%qKmMy6KW1FOA8$) zoTzYQt;{bbv!ju@XnO=#B_XTOrE?+sQRC1&yiZI$r z^!N^;rck5O_TO2OVfxUPtj@*SOdGNa+{mL1uHTS{xsBa;aqR%Ue0Ut+JUNBW?;XVh z8rzd|w6?=zxUj7ocMgr>%bUCL;P41;?i?uj?>n* z_az9mc0#TVyNBv=gr;_S>qcxIXu_VEVT`v`(afqa(NRa!b@Ru92V>n$XiG+DVuc7h zOVL@we_MMA0q;fyAyrAZX~t^JQf(_Ng5OQc_4^34Qmk8>feq_3xUbAi`dN^fiA}9h z+@7i63qNd_*i#WII-c4*^JN z@u@nZgj1^TEVUHStU8MV>H?q$9l`BN zUm>p3EYEi2n#n!|CIcseOyNesOUWc=3Yj-eVNn_yfp)elhafI`13&H4`9C_KEv0QO z7nl~{C15ShRT@7bma;Xi3t|hO4TKip^uv}qCj~l%Ck3v>e4)$gQh<~}eUu$x3tRW& zwq*q|tfI9Q1v|{dkqQ}pkRCGo%G>y|Y@RlKVjmGcYY50t%M2zC-iEVsh!7)S2oCF- z1TJB>biv@%7V*5YcqdL?eaPzyGEsbxNzibqeed%=GPCyxy87OEOzt^_#oWFuCysYE zgph0%;OYsSKC}~0?p?*Xlv;?8D^PBpT|Qv2kPqi6p_Iq>uhlboFdRFj5P_LkLCcFfh3lePi=nuSG2047Zo2RNZO%*Gio< z3OZTeF~-VOV7Spt`ywM#;)m8XP+IBuK|)SIQwF12I8cG|P=Y|? zHd)xhdVo-hg$S82&CM4zFw;Qis8=cW{O?F$Q$hz@fVLDNcmyo9azZ7&+CSismSXV=c{VGK;}dVVJ4tCN?dT2 zI8jL}Y^flO%Xy7xoS;)L%5xq#*@=CczApar?+(D{PsTFIWlEnc8!3$zE9xm#|*+{6&Y2Gnq8wTFMNh$csN>p-%G6hXS z2%D%+ykNtnLaq`o;>rIJpR)#$RW$MvU#St_LXY+6~7 zHryU_;Z&>A_KOVY%zgts8kv~`jS$nI>4k8j_TAZ7g7ZBEINh0T?)!`o({=&xN15d) zV5FduYO=K@vNi%rp9LeqC$&^tloc||4>Ht`q%a>};6H$tKxWyI74}op_LSkJuBUau z&)k>$Ru@(x&)06og=s>~MAv2%2HR;$eq)m|pzh5l(KLC;7~>*A&j3e?e*dhjuF%bHAooyP1b!%^W>3+(0Cb>=>52R55YF_-2=Q5I@6 zshy|cP4pRayhsbYbp0;Qp1X*?VHx`aT{KVqZSHfd^NPtCwLSs915<9nUp|wq-qoWtcPM*W;%qC2YP7-vdaCrX#oIi0A zgMCBTwPQCL8rtCrBvISY1uvHZQf0Co&257S6HIvoR#~V4u0S2q3L;pY8zRhTaGI#H zIEn&C1<$WW9Zhdwax=!a>_@n=1^EjV<~7Gzl-DscP=~5b_M$AUxw+qrN7GCQHk}yM&vpOnqod4q2C7W?;5# zZ2>-7m4j7l^O2EN%2tThh6+3-)V_Rh9G~3g^8PUcw%6Bo;j^o|@c85mo}Zn^i?f?> zc55GD)oHBk)}bj}**ijr_2KNcUfei1VfNoSGK1rD9VTJq>fUi~8^D<@y|{j08WZga zjI~x`_e2*a+bS^IQH9~U2!bAp8po5hznXV=2rALoO{V7HcEPN|Rg5EjO7y7Yi{C0!Wejak9AC1@s=nAA|K89DtWUNP>@$7? zG|f0ITT(xmV3#tpkGCxp8>XE-TL?Q^RYGWJgqlK*FL)i*WK>AeWH}OM0-E5YsvXAe z2q3Ln+uSCU_+ZjS!?J*OcT|<@b$yRX&zGTnOdESGm?;FQzB6t!hQ_8arp~)g!@4$5 z$Y*mHsF^S$mjatHHLhERX2C~>rj+|z0$N)R|Mp_DU7A5NJb1crt6jOi3eJ{`f+Ud@&17i?awAwvYJ27dSpz0G0ujmi(-j`x3KG zvszd;%Y~Qw5}KU=B9ItB(a;1e3yfUK{LC?7vn>^tl+~HAB%3CWTvJj-1Di&5-*%*x zR@2IY1Ob1^bxxyy+ZhyuJMexQZGqP@5L03Xtx4;;x3MQ0)?$KdO;H>N&(Y*!Z5GG~ zr1yE;`wQn-rp3RNQ105e9iy8MnNZ`Jk{bS9d~vl;V}9>hV~0wfF*7w2wk!GEvfAQ6 z3qJYfpD?!VDAH^Kp!~;2?FxQZO~X5J^^<=@8vm~1NC!3_ zzKmlRZsXL2>$r5~CXSytjT=`l;rivX1ltvS^7tkmT|0%BcQ4@nl~cHW_6TlYJcGH7 zBRG5H5Vp-uV{&vOZr!|&vnP*Z>!x{HPc24A=WzM@ZETvE$L!=3rpG4;zHMl2=|X4c zfT`hF*U*Xbc#|n2Txh3-#2exAR-o7shEM7C$u@*zjVN-^w8|1Fc2y#upeuG(m;%He z4R%)fDgx2R)zMWhO~356Of5#hdw`nd?Ms&YbR!O)V? zr1`9+OwCKXau+LH<%WZhvD2E$N;Kua2VsZR;@+UKHH8;tUkXVk2(iX!C29hM4x8X+ zT9{T?N{ey@d2Js`3haa#U&y?+gZC+tRps+O{9MN40xmy-PM_(IOZZhAGQ@R1{Jd{f zh?WGbKJFq6xj<*Q3zhATg@6g5svyav&+cD3i z_OH(@#k!0Vq-EQYlV66k^b%xbmm);7IkNbsKLV8pp*Q z{e;sH&TSvSiTPeUJhhqIr;M$gp|#yPJk4bf4vjaNgpo6wdriW~skvU-+c5TT<03Jc%zGo~$9B$g~phLp0TAI?Orqz#QVyEjgd@q8tQ+!N4fRRWro03zU8Kzqe) zf|)V2ZI+=4Xi6rzK2(hBg9Ug_TYA1=WpC_^_tCutDjArd^hos>TQf|^@mO<)u`Xpm z>KL`h#>x~vm7!V9GC0C>s1TR>3vs$D2iJxQ%rVw+);T{upb-i(o#ld!tW0($un}Me zbb^+E#cfLkFD_HZrTX6#woC!d>L1g~+ydE~#+UyJZPW2wU#x4Hb9nDJhE{H-^!L?| zpt!sX>r0Zfv?>G|Mh(bf9kcj=rk1iofhc8STBZ_Mw7xvQ(oAcjuwH%dW~?dD49ktk zP%&gj1D8!^*nyg68z}NM;M}ce*ig#j?DbfgM`+R5j$C+v9Gcx?KKpWIcyhVaSQa&uoV|1p7cSqRrCr8@d$$RvBY1S{5+2{WfV&ru;tt!>+ZXWhqZ_z)q4@s87*!7Xl&_4yrvZmEwrbKCM0Q6Wdu-&fQwc%!%)Fqk9z1tplh`G@IF^HDth~<`ZVJwW=iTt+EkSl})JOb5zEv zO?48b<|}hiFbl|%2s%{)iSiy^Cqe5XY(lg(T3Uqgl647cGO{==t|C-nKxRP4{UO3h zK$Ddz{8y5%O6~+24KL{MBJK&$78Ex0ne0U$4av-N<_)1X5=TAZC74yw(gZizntcWJE7J7iwrWi-qTwhGZJWf?i@Wjq#sPeO_b5KSeFU#B?>6-tuhGIT?i!|*jo|of54QHz z;M8WptJx%lC=4kBQ;6~KR4cZ0RS|T0gAa}yAMcFdb7N}dCfo2eA*2Kk zg&YMlS(7-f5cmY{iWoL09bLMX|Q7WT0ThR=;DSx^(GtfUQI zLuvSg)`LkE{B_{Q#$q!Si~6BnZgv}ZrTWlx{;MtjGtgvds_t=jybN~;!mIsxZ-A!0 zFO%HCrPZHi%|0#rOPShP8rIbz8&0%l;r0j(%?zZrY|I#%?97hM~kzLE&1^QO(07(0V}l>tn|`OwG_-!OSSKTW`QXMGz&5oxGX4I*Htse^RrrN z-B=#?<@x#2tmrW|wj#eA{)RCO>^zI+vAxKq-6&kQwm4}u6;3X-#?5J1fyTcn+^21_ zt99HzICmI*vxl&hcD0g#TV0qmOJz*1DoXPHF>~*aG6NW#-HVoyc|M~B-NiJwNW%zb z_ME|c8+>oukmagJxOE&oGY7Ea1VMK79xh$Ig}Zle)3&bQ)X{^ubmllgb^=ds zoyWuLXYu^*CEPf74CjyT!L3Ut@cPj$?AyK>yS8n`@xzBOH#LdbsVQ`K_F!~m%(Mgh z4-;xnv1`{pOij>q`$thupoIyRV30gR%A@~EDWjcuqT5&xh4l65mrk0SVEvJSyy0^K$PidvK`kJVCDKkGk02M zt`kdEWMWNPAyyG|Yc~{O?fN`4B&%`r%szbe;JC?n{P@Oxyd=yNPQ0>r7~A@)G1V3~ z1Egm=6WBf2h=b!Dm}rRLz*s9z&G+Nf)g>M z4ehf%F;n{L2~A7;t&k&uMljqSv%-#=nA7xk5nMV(Aw(;D_=60^1w+$#w7X*t8d}g; z*2{S}KI6I!PR9x+#=7Q|foMT81vMpwJe+Xi(X^W|)xc$i90?_!qrS6L(=}gh)wnqU zjey-IgVQ)Pr#bKTs0}wv=_`SZCZZtjT%HPh$-3Qd!RXRi{QP~Ux17KMZCAoJg=-zW6^$;K-0^6g|UwBL1oqntEE~O zxM&rr?QbBY?K+0*sSu=I^r;L$^})&f1UrT4)HkMZ;%Y)^Jz=w^C}FY&O`n;+6~V@F zl+eo3UA6Gi&<1y$L;c8Z6a?GMaqCJ5D}qd*QhNS6wiN}0lK{2Qmdg$Wsmv&9yEb8T z*IB}p(9N~79tE-0Dtt_!nR7MvjL%&_13Px*K9*+(%`-0I->W&!4qv#14Ynjc)KCEa zO#)g9YO+IbyaP|a{3S-_kK&{BfC+tm#P34ifx?|1W=4=*R)_s(Z(|9q?L!{3f;KyU z<^c)`@0EE1Z49mBd(k0ztJfJwBv{N;^xKUxN-g{p+-}? zavYaW9>keLyK(l&9$Y+e5ZBM2#G!rseCims&d;HGz%9L4D9G)|nk zjLGS(sI2059;!igT@PH|DipaYkW~^{sJ&Q$0!JKqwkUiuF4~vP6-Rb~k8rCuAw;{A zKR9@PIqj{XsTUzaF<#MViV3Syewa3NHPoGt7L)ndqXaX_9OExAGOIeyeEA*&P zqscnd^eiQAxNRQ3JnbmVwxP_X3`31AQ=$i<7LL)#f+%+fc&z$zO5m|M5u=G|5VZgo zrcs3)9z@ENwod?=els76a!Lt7&GW^Vb3v&wK&`vfw?-RN#-y*bjQ6L_@w0%Y1d)=w z5)%UT$=(P}?N?}08Ii?2zl`T)WE5b7DP>iH4a#1mc`YW`7Olv|2g|d~*t1n>#cV}p z3|e}&9gCK3z(>o{u}@7yq+U)hf@?j6J93)}JV)F#|GFbY)+*)>py zv8D)SIw~##mLLZz-W~V=SKp#GU_v9%T#AkMkSDaxnG7B!|NSk z!j8*rVZNMIHG?)qpgo-SLesb08P^mp3J+S@iK)<{Y)hY0Q?aOjEM;NpL%UByQ`HeA zXeg}ssbI%u5<)f!kUVcz)jkxyw8obSW*SfSfOhtHMg@u$;*(W5%=Z5&+(;nF$jlft zZvU8Y`;1_FIO*UsyJ$@%xXGr%!vdDZou$H#3T;{mB38nQ()Ja4Jl&RI3{6wPXiAvx z$Dr9w$Wb9k6(&}wQRZeskp$Y+fjm=TFfmULU|NgiiVaV|fz!sKj>a!BW)RqfO z0@e>&%H9Mw^(UoZwXTHbRFW{M^-Ac-aMl}mrIo4@372-QTb~7~bZ0H>u|7hp9XZ}6 z1ezz&I(HORecO0!oiRFNV}zdon7WSv5&O}1r>i-r`a8N!w$S54SYDf!08 zXm2t(HGS43pi2pzC7D6Y>^*~sLWVqEfB&Kl0YvKuFuCohN%7Zlmd(jHX=enNLW#SM zUc;SFzC*sR35y7;4+t&UociVjwV$pjL+i$!sO_D@PgXndlT}V6`Zi;b*7@#=Qhd0< z3s=nudNf0TyWUt@&%|DwzwrncE?vjv%a?Iz?@sL5K960Srf_oqPP~424PU*wV`i~_ zb)UzaI)pu2W^wJ@3GCak6?=DW#p&ZmO|^VKZN=kJ38@%1&2GV_na!xFX~y{E7R+rw zjE2rp_zA0g8^KGMtQ zH^SwF7mqC{aKq)KS<&+1QL6~C%Na#cp$961C7`K)ts+v1DuPSlMnOzrMlJPO2^s=i z%G$KeO>n40RdKGJ0Fo8Z5Q^Odn%{&Pm8!30xrgvlII&pA6%aU1S{qG{$0^O;K^s$_ znZV>McA0)MU8^L|vNKs(%G3la-BdE3>eIc2~sf ztFGhK6T5Nytf>JVc<)nc~DZ_mAStrXHMP+uU7cOl=dFDY$LxS6Q$GdJ+L_ zY={wPK{SW#m};-Yu90TUwI|VC8Nj}oL7dt-fjtv_Tpz&ZLH?kM`7qL2jrK$oBW+D+ zPgcT_pF?9UMbPCyer6`J($Zif(28?&X{!3(_=AIXmYN4Bd9TaR2Le8O)+e}b7plcvASR`UjgI^SK{joqj3VliQ~szBq_ z!Zfuo4xhh@)epoA%Zk7v5Xv z!j4n7`F%$5Hb1A?Yq9^<$F#KoR`KsB4tF7sFpsoNA=}r?@1z^;W4o~P@I_p?eg`Lx zpTxbJ*KzU832d92!o`zE@b$-!@bk|e;b)&c#>G^(B&Z@{2gN=6P4JM79d1+Pog?tGUZvFjZgjhX%gqzzFH)Ez$ zT)3Q2s)*Inxatv&R3j|#M5|5TSvXv6&W+RFTDvx)qgU5xGNDTqDvpHJ5=d5POd0{| z2*G6!n&Q9eKdVb{yT+IiT4pY?GHzG6QR{?`215%bf{KzrG&W4INreMtPfGewf0$qv zae55kG*~*$Z9c-xQDisgtF%>s*R;{TWMI0M223m5SeR!sVN7FXv@9io2vQm-ttP;# zzsz0gGR6&~jTU%(%ZFO2ce;AabpwNZPyi%-5&nFN|(9uwfv-{_9%&6@qE?TX;uP(AK34h~SX{X%O*hzS!3m2}Ut4 z<6Oqgc4gGbxvJWH4%F{A8GKbe*tlgsp;Ts|sHW?^!~JjZ zKJTpapnvutE7#&5O6!l`S+kZOjg5ya$7uPvWf=4qo4bsbjYhYM#J) ze&_Dw5Q?MS*x;%|xMdPq-bUny_;NUO2?x(y#hLRLaO>tZ+`n-NSI?is%_|r1>hT?X z_UtYm-MoOaNB82C2|4cO=kqvyXb*pZx1pCHo1C6Te`goE+S<`j(+FQcA;Kuakvd~i zHd<7E315JX);! zC<~C6okx(Z$J#X;uw?NnxbxC*ek6qJ3w2E$lPn z)_w>ytrIS~mco%5XLe_!jfUjLwLv9VXi&BcP5U%XP4}|kq+?T|NbO679PiOCuMQRA z4uPof;`2=en7NOYvTuRS3O}j|OoH3Fu3V^wi0q~|hb z#$_rCGG%QBayja^vxXNe%?V+6>j@P2TNc88e$!-g>i05LLuh3hFfHqPd#x9h?UNXs zJwTK4nQ~Tw)`w{x>^OD_YYU_J=~@roNfXGd_BNsS(=~3aBjC^9e}&^WpW(eU0nTlJ z_Re~bfthIpQr}%^q8BaGhxxq>@jK~4|NLPB z_Ntjy=H|_tc=qTHoXiTlKfmRx>F{Q8cJf)>U(*#PVBZ{27GGy`PTvDnUhCbxwmYHJ3svu$& z9VVO=MkJ`zKc)=EWV8|yFCobFRFko3(#=W&tI`w~4)F!*=dXS{U!aA?vee254rLd{ zmGt3{AQ6lpBCy%LNGO{z5GIf`Zp~$&l%H)wHUS}ssWeq7fmS3tD^zlbuIJ!=Jf`2x zLjcO|^qc~sT?WVFLvEGODx>i^O^7qfrYTcm+#ayI;Ae}v75)s+(ENN(2iB$)V8xnT zEL&56cWGuaw4V}cN)CB@X$I1=OR+wq1Z&faX>uj}5kN~W3n4qJ*knp-Ht5~c{kVH< z&Ol0O_^Je=q!7XE+4-$_d}a%-?%RkvN2hU}zeTAlq?xegOMt`Y_sDg{F`jU5PMZR!O*p(GYZ^%44IQC6MsiQ6J&oX)l4dxWH7{ zkCf3$2{m77sVO*IPJkuDVN;k`{b^3Z%~4du?|?rJifkr9Wa*NX$XK%)TN>TCvXLOt zeq-Omk6MzGY!|$6Qv*KHGf(ZQdHREC3n^@;ZW>mE_?yVMhV$ zlkFiIUli8|OYoA{ywYFDbG>*is1brD+{kkTM=j0RFoNcXnT|IIGF8pLGEmHYGCzWA zA*`tOlIOe>(0EM~a#T{t!ocdg<2C}VjDRV`!)XUz3uv<{fklAnUIH7T_-Wz^s=t( zM~<%!P9T1K|v_^rq2n%&QH>;zhw2|4QC@6h1XUsg!ln%aK}KV4Z0XGI^jo>W-VhsC_c zhqN_;Ze3|5>Nf6xyLJGLLtC-!$VI&T;v2kr^#UKie1eZ(+{cT@H*xCdK7wmMj_=!r zLp!%(>+A$(M@O)Geg^XsV>qyFGxlwr!N-$c z*N$kk7G0eKXd(;+vTia=>=O+@)Nb)`{EdwYouSZ_K8-+!FINfm+5Kh&}Ms&9K z!b}+>;5i69+MSceW+T9gX^wdX9;9cM^1d-M(PuHwcXM6+XR71qas&_&q@ooF6Ka~5 ztf8_R6+wcIR-$mD%1J5ArvcAy0z`wRgG$jam8l6bdXah!Xo|CoQIbmoBj|KonA?C!gf45wF#eI+lMc19WbAt5ONAn-l5e!Ik(%idndNy<6B2@ z_w;sbA8BE0!$?ySjlnXsL_O%MiD0(70n?qe=&k0DCxWf7p%McP3ADz87-+2G_vu2! z>44@z^EpaT8wsMnxzRvP^PXu&YK0nk+3<%1YZ* zDMUbfF&`q7in!l{&k4Fux2eyK&%$QLpK-e~9hFx9nx8+}N;qxtL$g#rq@i8vE#$GX zGo|y>#As=n2hAje(9S+hC5mhp@CdXWn)1emyQ;W9Qp9UG%(2hsG%#Fa>8wH4FJySU zr=I00;UicHLMI6_6(>I3mW2nr&f_Vo$gr_39V3|OcrML4ucz}b_U7QK#;>)e@q4pE zj>h5yJs$U?1DeTT!hyg0FVi+NQPuGcDEUC1aC4X(^z+PXG;VK7>I10RDcZ-6U_wyxt;+ z<`0}DNMn|r88fr2>n$4BPk7ww!WfQSe~vxp?qIzmX<+s~txiCDpV!wjEYAsGc=Hj2 zs|Vn(8Ni{NuTbc3LMBZ$&)aO~SaVhOqIO^tW)EG!u^UhE^vhr2t6%&EU;pBl`24G{ z@Y!dt@%blD3A7tHf9f!{O;2EMYzSMXHlnYi1Kq8i80hXpO`;l`#>X%{Jc#WxQ*4t4 zX2NS>Au}s=SJxoC-f}{zf!n7| z-&+|$qin^twqDcsrfo91B*9b>ugCE46!#69a#pI*sADzO%qnZujex?2G&={Om{;UA z(DHaI;i2hi5VnigSAUz62IeC4WM%n0gTO0Sh)x# zd#(*7Ii*%55ke{A^70<4vQLBc(VBRz99mi)p&^JBWOJFPv2AvmhYKEptE`Zpx!qe# zfYRFB+~z8_6J8;{^n+%m=1RW2)v5@$3Qrk9<~NgJHgnmLjPtX`&(RDCVIQBngh0~( z^VPI9K};}v>!S@Ob${`id@Lo@^75R>$tD2UatZ3Rv^=b)*`=lBqr15pmuO(0UfGS8 zm$u>2=~-IXtg*8vXXo+i@=jXXX1uzzi=Q{s=B9bvE;IGa({nrU*{$PvdT}rA6J)ne zY{8RDdvW{Z4xHONg&m_E*fQ9L!TNHHwIs2zQB(B5BYan{=Z}S4+Hj7UxmtA{o!nlKmv2Ik>sGBnup|R}+MIZ_ zIYt;Mv`82&gd9y$hyX=%)7UfhlUWr(f+n#-)5n-Tw1w$oWMTrA&M_H_G_q8ph$iY( z*iitIrD;ww0qyEwu>so0CX-Q3Y5szr#{licEUih2A3X0<0!`L+hcLZQLsOrYk~Tiw zv0!2fJ#JY@1~L6-mbqyu=zXy#jGLpyxHs)KW5XT`S~9a)0*&{y`pyJUWllPc4GKJh zlBSh8+nGxc+6~Z@(4nTJ5R(|P5ONgwQcG>ubuQ4*E)NysWP3WlH>;qr)&HhreuTw| zQ*csvP+>yTcO_fPRieoM47C;9F370KnzR%I6$X@131BK;C17c6mzpstLS<2g|NCuR z|9}8c6SxE{11bVY`%?RL9j(7lsH8xqrhV@z`GPQuG>@UObDAdPAWXhLMwLWTrlw|~ zMgYFOnlGDV5AEqJ-df`{AX8HYVsW4z(>sphCo62UG0WU^&bx%0xgPH~G=Bth2QOfJ z*IB~R{RZ~>j?|P9Y7e(#{_s_}6J0p}>}T*+^_fJFMTBg&hrd8uClPDeh^alNap=lJ zTzm2s@a^8V33qQ?z>z)Mv9Z4g?Tsxa>#@G3kw(>o!QMX1 zPE2BYbQCR3ZHSfEpo-U024pmnL`yS)+1YC{6iZ6O@cOIJ*w{(X31&@Z%$ZtkZJQZO z77Wt*_*vCL@(Vqt?@S>^Wh`p&w4dM-pltTA0b8jfVi{X;klO>Me@{(7(|#T6Qwl$~ z<;R~55Vl-7uT{w(7Eu*UH5vJ{w z6C8w^!$rtA;Vp3@WOoyA>N5+V(jOuWqlBWulN#vkA(RLrLc~D}^Oq__=rT|X(VEKL zDqieHbtq!OhGCZyN(elU2h{;Ts(G(+9vAoe5chad%j0STKD5U|=&YnwhJ0u)527yM zK}DGh4TM;KZ48rbHD-Rc{+bFtH|>SbSjuNDDxe7#lw$q*9OUHKuxw2Z7Ol=TFcZ|4 zt}8TS&vH~rxP5vj z_D}a?sd{&mB(ya^-Nhd!%0A6Q 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�CeEBu@9X*cy2M^-&g9mWn(B}p;wZn%$#i4_WHG2acwb`Sn*pHiovFOY#iz1NWKG|u}XBr z$}!p1f_{RfyDDseQR}TC(5S>V4YgzYXor~(XF3`&+)#mSe80Z0(aOAZM*U`jT-)1d z9*;XGda$9t1&w|;&l5uwo}E#)D^s5TVyHb>Zw zw>F`ogg_5^&6QupK9x68;RKyEl_+x+S*DXgs>Cj;yvC5*9CJJz;R|ZY?Ks-eg!%|O z+Vm`&BMT5p$%$#U%wQ*9OYr%4zjLV05==GZ@E&@sigYXQxzu&U7cc=J|6*~;BGl~NWle*^00281(Th%{GLG$JX#63BFh3&=2j^f7n&-0 zJOMVv}l= z6W9u5Zd{c_fFvLxCELo#tXPv_%Y6P0%gUmJ86oHs$f(#da*=t;1nK2KYND^3t&?Cc zx3V%`!m6sA12w9&-25V&hg-fT4aF`WD$Ap&s^B1v1G^vx8fod-mJ4$JBFF4FZ^1Go zCTG}p$)bWRCUlj>Utms5Oh$rCl!Tg~_v_Q=W9h<0Xba}!w)HVQwYS1z)SN6L6$DK9 zN1)v~>w>cQtC^cV0rkMfQar36=~GHgOM6e{r8%^_*7?Q_bj=)7mHq!OaS5-bEQ0YmE@fJr_53uf^q5S>Le zrG3@nppi0*b&R2DXf0M!NosCPwaEm~Ggrz?=s1C>*=G=fGEv53=H#>zk7X+=Yd4?? zusXL)kh%_;PNm2SL;Pd+&0zC6mtxOl*Ws!g?!n!Uzkp}o_yn(ie25_X79Sq|8lRmY zsHnhXYLvFka&Fm8b5-y*FHeyRJST z58Zq@p1AXBJaX%mxM1@HF5EJSn=jjg`){}m*POQnH(k0L=WLv?Od*2VI6>Cm*nlyP z)F=68?jyi7FBT1i(An5b)fG17rE16?cA^1x1WI+~ra}!*ugecQLR)~qKf;g zL)BbSS6!WXL6+ppz1hce$Q9f}br3?tA9jGq7AEur#%dm`Rzvlte1~fZ*BL6tT6PvP z%XQUOW3;Ww=G0<}rHaTYBuY3`WAjKi#$-YyI64R+WeeFj*nvG%W=cvd=MXt;TtKy| zKoTt?vT7yHrP62! z`%Qf*C0A=S3@??6J3G(Hy~y)&gvzAGQ*1GDT~uTZgkc+1*%Xy=FV$X4xiayG(M&ZI zJ>~V-Nfo(mtcUk7fJSzvauP{T$%2am3EjIA%>z+wWU>Q|RmQAnrRI~Ao~o<9hRQh1 zPBRAy37KZjO;0bd*K*nK;Gm$B*Cn8}RL9WOSZB-Ot~M?!%n?Kb5jhBrX-;vR%C^75 z)L1FirOrLnT5k!I6)V@wfrB#Rd-8KR0I5I~@13%S$OPF{Th8ws#8`VBBE{M0CB)_3 zsN~0W8WixJR8pl4P#L#X_{}p?4kKZYi{FhMKRbWLn<)XYhl;MDB19NFz_oAzLM|oI zNf?~4DgmX%rG#Ie<+4=P{bf8hC$|_$RJ)~a4x0E|%grmI3UgFe7U7poNM+>YBRj7c zQ7YO2{vTwrZ02vRj)NvQ?`x1stcU}(Y@I7L%ZiBR@wkG#d{buuHhK5TDdepAOKdJp z-j>S<%FGuoPzyY~GAjxM+~j*-=4N zq}Z|u9;Vv5hftDJhkz!Rf326Ak?P zgo+9pUifO5d})Ap~=bv!Gz{OP`0>irUe zsVLlp_Q|ct3pU~m0&-b8|KKH6ycWkaxJhr( zs{7!r>Lm=L$oAAB$J>D7NE=F{?FKV_&tEUez%S<~;jCpD=o(&&yB>Z9FMo6ZZ+vzP zpB(vyYU_JbW1k)S2K!EYg9Bgv$<)}FfB7fA{PTYiZvW{3?VIlnWJkaH21ieR<#;%r zkeA~T96xysC%!y}|g z(P^efCAy7LNh$YV8%N}Q>=>IX%F$UzxJ>p_@ip3fQ5WAUrcE8Cyy(i=IhU~W@NFr}=NJ->w==txrx=dK+xZ^a?G?e{iY#t?ZbHgdFILG{rY zD>E>vP-qX&r%(Z9v>$A$;pf&;F-9yayv2_ZJ_?|YHziM29>+458`V@30@^@*lrSsj z>lk_n)s|=o^#L~qxlP$knj>C9x(G}{-%Yt1^_ysl2B}KR%{ioju&)h!sJxX1%WwB^koUPU;-NC*bu=k&V}uHi zkf6#7`#l74hPmh$<>m5P6bl!z&-79)7UblZSyWj%+W4KM)Vx$)^72fiGFw8GwwlKV zsZzuIO^1RZ)KpjVx6J#Im2a8(gJqSdtg1E0X+BML(%e#SQpr?lJJwI5v!&6XwrX{f zIgw}{PLR~+)$u;53W4T(y}FiM4jd9wuyW;Uln}1PRDgOmDZGvaXDvi(QmO@9>)B~A zqHHJ1zp4M2x%LxgXPvbe3#jZeS1rZ4-99|HQO+6>JS3oP2vA`Kaql{hIb_6}Oo;Jj zW%!q7q_PAjrA9t+v8PKf2=T^rNMEm{kD$O}Yb83FvJ?FwLQ*K<(e1uC=*1nKLclB(E_Z$7W{56gO3+ zz^w12>vzng%8p+`b*2DrHJLxpS}nLbCe!>t1Iii)5UQmr=p4cDx*ZspCKxXIEgpRS zWqe9Sc7h7*>%adezWUpLarxi)_CNopEv3wk|LO1e@&`w$o%rEzmb>xT*WcmjmtW(^ ziIZ%{%^~E-F@j1CA%fb;qlDNIeD(D)YhQkK6vqg(Lx=WLoqdW=KY1S?efT!sd;4X) z`O0&6;h9J9@-q+Pg~#v1ZP#3aYcAS_dvCk~H(z-HZvE{AxQ*>bLha(M)0QB1+td(8 z)D4z1adu?T%E%0~G+X|}ey(e-t}}CBah?nAVlQ&o>1AZf2BQ)X?-HqUEqDhr{J z*XyIAY2i9KsmOi5ouF*xzAE_=Hcg4 zN_Kz>Dwe08Q~D$~hYEw8a~jn^eRKn)=f>#V<%e-AHko;ePx!6MU?%8 zgNwQ@GCaz{UqgjnOU3Lm_xS-T;yS9b8eX@D-$}4+=RGZ_a#hUP zMk-0EF1h8`hTI4hQ=Pht5Tz>ZBcvK4gnQU$rbwA7TdKl@VJ4L8QJ#(cRA5HSfvQiY5-z&7xLVZfI6&jTm6A_~J8sao{t8?2vgq zYI)>{l-bAlWVj%4{~Zmf)%nX!?7{)vtzT()zqDUP*$?O4~>fn9T>9C632g0%7{ z&hk1`h*Q}~X1iN3Ld78yT_Zai6}4<-M>ECsV}zqhr_>2{>= zsVYN6359(wgIZTTl{uBD67)7xbx!xTP@Vg!E;Tn>XRiAt*@PIMONlrNN=iyW8J~$9J$wY4GMIRa3pofQeV6Ucc=s3&wl9cu#}8CZBnfN|7xlm{zS= zO-Q;3u%MNm$;{+HBqz_DO%^O#j)jDl0>x!gP3E&zyjognmVs@-{3TeuDiIkgmSSgH zF<};eF)DXH!g>KqWYtNpV}yyc?y^G>3NI##8I1#@H-5 zv0lsbal2goy#^`)>-Om)+%!>4g(jyE4?#xtb_!@eTa)8iYXlmCgdm$wpe!)xIM7;f zN>Mq=$$^mDm_Ty_oF%GFXpyCkx5n^1g^T*fg{5ozC&#^MygDe88re_A_t)m7U z0ZU1amDf?;hjL)~Da@qI;tEpN8Hbq^-mjKs;tYPKLJlGgL+}u0GC5|J)>xrV!BOY< z<-%0_$63kv<$_dRPod5K`6@dQsA5OB^=v%w+$(tJ^J94L^W*sF(3kl1=r`DR{2Ltp z_Rmyhe;ruC@q1i;h)<}--hclseDJ|rT)u&K-gyOYz5YDjeC=7h{K6x6TGg%Zx&e3H za20O3`eIyj;cioCSDm*Nm+V}Ji?*vQOrHTw1s|2&+{*M5J_@caEpk~0scaFe*YJ;> z$Uk^;9y@|!tWMP2Kn6#xCH%v&11$7e5N^O1LLF6{M*NyLYi1{}Vw;+)ndof60F}?y z@m>s>=UxkDx|`U!S74x_5<^XbTpMB0fwhFm1>4tJ%+`2oou!EyW2ewf6(%#G=B(u2 zULOt-7AlS6A#n0cO?KDSndwqR9hDlY!sF$8DkWZ989Vp-vI+tr#LwuoEd0tCq9&kq za>TEiXanp#hj>jgLw3d@gitxkJRZ2%i3@;JovkRN8dD&%(o`wWV!UQq#HDQcE=vLB z$}5CVIRFcb2{eI9%1n+TL4#nWyZ{LeRd;TSRhV-}ZOCs0El2pBrE*m5S><1P8mdtp z-O{w}hRrf~!?Z#^?4E2y(trQBK0Bw%Qy%IvVRNo-E=mMQ2kzJLC|-Rb=2WFGYf@ znfGq2yO|2hgXumFI6Ao>p{6*q0M%QBgNrb~uU{rY7Zqt00U30mhj44J<~@#uc%MUP zp+Z)M5M===rm`xddeipKng~^_mnx0V#@zJ-2)U?cGBUAj*-9*4vVyO(IEcz1p#4;0 zE(1q-z-wNbZB&yv{Jt6K1PxV=;?uITb5S63D4$t%B>~Uh$#8Es8u`1;C;XMlDk(M7 z(pr_4dQqXdUj7b8`#Ui)*n?U=GXcMdFqC48@EJ?RY2Gb2uLLFh4@l(|9RZfJOXnsVV8E9#g2+6rYyL>zaSo zVk{=?RxD4zJUNT}dL9Z=60ob&i`!=cP;Ih%*q%FE8TwUo&B-z%)1ut?Wj2hP9%V{= z*wRre%EJpB>Pa zr4taT#SV<9uml%VYo|c-Q()IZ^FpjZVRNo>#-N`+Q(E;U;mll`Uk%L z+kfJlzyBA$mAUb+GA#;d|1fnHS7@3`6U>}aG2h}CANcWazQM6Czr?{~hw%Afm5kX( zfPIV)K71SRzV`;+e&;p3@#f2T_0{Ltp1~`xK82TGdK@o2^B|sQd-Bn{@z5V`#{G9* zkGpTa8V}xaJ?_2fYTWtz%W%VGXXCQH8?j@ipKTBuN4v0I#V83hnYJc4@|63woH}F< zQ72hc=qA+o=OnO#fpWM?d?+psz~u^ZR9b3|1eqBH>=Zo+`S^$CXkRg9F?O^{cXa;d z8SLTceWJY{y)|XFtoM}?AoYY-m(2~WAMCV|`gnUCHV${;!X0xK1E)ByxO=_kn5H`9 zaoC929_~xn$%I$wrvedt*_mtJtt2a#uQ}?b8mo~Rhugxuo^p29L5_&EpR(H5v!k9M z6erk0DacxG@v2KUM7T{Ur(k)&KsVZ=T56RBP$^91OO%626+8TzFx8DeU|BcdPJ1>g^jZ*Y9 zR#;W)vCamRFvq}< zL7+)(WoKp*207;4C=X6=u@ssM4ODW0kAyX;RC9!Qkus^I!AEfWsp481>JcTR z!+fRD>lDn? zwC}Q%QY=e#VFlIKstg~JmDf>oZd6*D`^pW}!(G{FYH1lE7e8((p|zUZQwyA!Fu_Xg zU#3NZOxI!8>CDl|#CZDhY*S|fT2f(|&512b^-zTpfP~%|+(*z;*nrfY%$ITmNiV4| zg}9s`&nc}$Q_mFkUUCg?dEiMr{p!2;;NVdl{r(4>{PSP&H6f<<)t~={FWJ79Li_W7 z;sjNhnm~5=t8Z{f%IxGx96o*=M^B!>@vl$d1e@|VYX0od;e+^`VB1Hqef+Vq?Z1Y% z-+mEqy#5Scd*w;I{Nkf{{^<9*fy4Yk%XFLq1~ zVckHx1tYhX`!LhfY}=Iaex$h?T^zkj-3emde60%6Q&a$|UnVdqQLloLn>m72#b$r8 z2cG;Ac5EdC0+$?Z2YLNrjk0}yZZ9R=sG>pvbWuSzbL8C`B|O=I%T0b=e;b;qmPVRt z%-eC0ovNHf79pR8owX$4$UD5olB|ZUq|WS;wxjFfuu|%F!jrfkbu=+SoyN)>rYf zeFRd#Dn-l5L)Dc9F{!foOA}39RPtHM?5XlIm3)RW5$by6;i!tzD(xbrU{#sf;bx@g z!bP>#SXE^Tx2vHR{RDn9KXas~jXdbx|KdScX7ht_4^tb(PG6iL0nUl9Q-T z3;9gSFx69!@y;5Ic2x5j`?zl*>dXCBXG}rV^XD%##}Ai+n9D+FrjnOJ3rU$Z)}n^+ zRygjq${&vpHn9vwhKRg6&b^Ya2I3zsA3lxzR01gDOg%<~Gu&f$L~j}WTn0Hvd` zfl8QAi-b8yl*>QA508_lW>QkBnH**ERDQ`ti&x+bDlnOn1x(GSnaZ;- z&RSxgkBb*BMQ5l8R}T5CrrNW6owQhjnu4$6b7oqJuiK^yam%!eK$BC5&y<-!<}BsL|1&J`dFHAtYYP(OnBhQ6 zfI4$!wn0kmtW`1<{!3|@N+VR9?F1gzFC`3?oA;vvuuBbENx5MpD34>7k01+}GE2-0 zSyqpt@>XPeYfN3mA*iNvugLHi1Q)D!oJ0gH?dQNq?*Dm&Q;wMw1t|ecFgtyDjsN51+Kj(q(msxcMu{N7;p`SFwZ{OB=!e&h)D zA3BIH4j&@ej^M;s$MNOYC#@Yid;p(+PNnwg`}pXiH}U@aui@QyUcy^%JPTE&{`iAe z@zHxP)i;2O0Y+XNv&Ff~-P+P~5Xp|%A2qGMXMrC^9 zA9jq8TSv8|8d)mqp#-;btDo+ZJGe|iWmE(lt+OKxQ0e67xeaXcW>gjGVyd__cBqPV zicuByw>Mk%eZ@*u2Ao`ka(-yxi2nSIQ#gC=D0@~=1lUu(s)(e0F+F(mFBJ9{T$ENu!eP%0_i0Y&5ob1NN!6sa~ZPMn=0_J=X;k~G^ zEGRCSlQ`;Dd|eScEP<`0KzRg9k(ZfIb>v4D?@cmC(DG2rC+t*sGh9++^H`b_Yc30$ z0_~*&^YUJ4jw?4U&9Z@HvlA|(ico>g9D>J1)m+Q{>pA$yNXxQ7>2xXqDKy1T&0n+{ z2}!ECm1CJW){k^xvb&Dzt{TO1dV{#sm8Zq@EX+5e_Vd zyBe@*W(ebbod&d_u4eN*Y^0*>sIR6HE+i0YG1b>HD=@eyi82C_AL7U@|<=2#+U8<(z;uys>GD!*eL6}QZlnj0(Rb*@~MUhp`7jQ% zxH(a;?^^4^9c#U~VbqyJletmb9^HP*LFDJC(B`ieu(EOHicCUE^ITLor<&Hq+v&^F z2@XevnTn$FTAAs^8bV=BcF?kH#Dlc8KCa4^5F7$r64hCbzZQ9+dZZSYn^{vz%jVF2 zq6&3hsj`1LbvQuNd&P@6&2c`7?-Sp?B-L%zrdMSK3}jm894FXinR@%>qBQ)1@H%aA znzgf52-G>n1%ew39} z^3Pv_qI}KixTq%l=1Q+xVhvPP>e$CRTMR&Q$=*CQigAv_rC2r$wqq?v;$78Ic06Ir z1fkKt+^uWNBkX)!$jvHXXI*ILRe*GmPz;xPs76XGiLM+d>Ij<)HqY2xnY{TlZ>7SU zD&L|yWQq$D(9T&mVW!FT109wnLvvY5V|D$d=i=gR>#=FL(-hOjp;nx;b_CN@Yl;t3 z;Z2=K0nBov?`NkaxcRA~l-sa0FW)>4J2;}2gN3{yyK8F^;HcfjYgd)%YN{9=+fq(d zN;NgbYurBGg$p)~a$T6;#l`O)L~&L&?;ShnrUtZE$EeiYR*pq6bQ!5R>|mwPd<1C` zatR{2U(1zVad`ro6q>+V?kUBFp-!s>R?ZQ31Mg>JWrgKN)Er!XR-To8QO5e5^n5H_ zyc)^;oHVK_)!kaOT!kw0%`B|>vjQ$l`F%Ut0apbC13#Z%EB4Iw@pS;PkPlfIxn@#s zQ7}6PH#%32U`qw*b~(-pcS)S3w*rSWnV z=2O{uFicQRb`u(vRF|$?OIWN@Gn%LK7UpsAa~UZi19bDcBBtG*H2>e^dRPVeN~k)bNrA;Xb$hW%#zjoopiS~V|<9) z<(Sjmfi42By{Vqck7~8Ii>j^FRF>wqlvb;eYA#B}FF379%D}3`3@)=QE=_5&8u&k} z;$WnS`*pXq8sJJfkaF?=Qb^ba{C)zs(42BI(kK+>FU11F>X%A?MMy26`V#Ewd2Q8H z{>r<#Si#x9J`=w@?R3liD7c;eo3jjR-I09UzqQhonG>hxcsj}`M$X7Q!qcFj;O zf#k(+`*Y0XsHDU)OU9L$%#3PMYSvD@zhl;gJLjB?`D;O*9aj<=)Q&rhK(PiLo| zWl)R5P0NJ|GAGJ?K9@jpVO7>CP)R*09Tvf(CRHYQNudc!Hdn^iYBC)Pa`GzFT-h>$ zN)VH})BKzOX7hCfWW3q@*C`Oiol68GEwxQ1P6tkz1}dpE<$X*kslXaS^-KaviG|~? z|Jp}MhP6&j@3rkrf>G!H)#7w2LFal>d7Y8k9<1AS5$=2HRlK$T7(PD!J@$X~0}g!i zSIY=;=o=?k+8jObA70XIwdOte&4c8xbqf|ml>?`+r&F2iUqiT$VP{$5E zD@CP8@(B~Jr(&W_-mt#g>;@zX=y))Yj& zeqz9am&bZq(ZhkrI01I{#xcYKg&1nD!=REpQ%&t!JB|SkSYiPewh$b>gx%R2#(D2t zKYB5$igqT|nI}IRF1DmKt5KSpiRP#eef42nx_KN!JYURTOl2J4y$V?!wA_pgDBV<6 zMwXcyEBMTt3EB|vV^(@L0TVA}` zGWe`ieL$wc2o=;ocPE+^KiOD|zK&K5Ql+)%cc4%WpO?=#Y!K7&WuY)Z#DN@-YpSn@ z*B3$t|94VpnY@O=!XnEiqMVLOLQqI`pOeMk27hNIgju$nTKKscX_-h$NU`i7$_gTw zDJ9k!XD!C^6>BW^Y$>6Y!{3r>smZA&J0ly5xo#nWrx>>s0{+*(o{vTI7GPsT5gyta zgc1pxI+Gi|K(@(aP9ACx$-GE~_PgOc+`ZO=-%+VOOrV*mk-&R+GnE!0sJdo9b@X_2 ztB&*Gw&@}QjS6inANQ^Iav#mVIVMRhrPzLc3T6ir3sy_&8V%aMq^za>S`Jgi`5_;Dnogsf)Mj?l&Z4&9NFe8rBDbe=~BZ^y|1|r zV;qHVoEWm=jZ^(?7OS;+Vi4zTna0IC*JAJ5Q7WcpLa56irL z(r+4UqjIVv)Rf1t!T_Xsx@ZZ3QWmfPVWo4DdGTzjEID3ij%}QuIn+{PKvJAmHz8T> zrsAlIm}1*CJwn(t5=!OV9!6_L*kalgyQN^{x!y+WxK%$(wZ)pL))a50xGQ-*M%CeP zR9wT(u8yE+i&Y|5>M1Q3s%4sCTk$4?DMVm{bf>lyq z!A$1Bq}8bwjN4EZwVa7QUbo`P&YZs-%Ly^n?K*4WN~~F(PUR^4hX6N99~W=+uT>=IpU$k^tlJ#e`H1_p9T;r#LqQ zWj+^SE60-nf+YnOyH=E$#=(%vF!$IcY?hpOn?Rm`+S=}YvMgw zwQ?0Q3ALoeM8v45m7c38KhNrqrSqPrrDj?l#oX*%LaZ3=1W|um3q}XJ&|DwGa9psHvDO?B0TS{3@bIw6OWq3$jW zbai0E%#>vg$;!@y5)>yS=UBS2?5sk#IFO0Os?p1RJ6l`O+}H#U2M@`KDO@VWn-4Wr zwfs&wNTIq@%;5Y*%kUq+Jj0--3fn49s{e2@VJDY;)lk#CS~OB_09?bC&VkLURcol! zR^p5^<|Aq8LY&j3axzk9%KYKXnZ@1p2xN0}UdHKDno?wK zaq_>+fLf|8PSRXiu>njfE8gO8llqG9>jY*y>PzpnO#l*DehMVDpTaEuT21@KTO4L_ zFzK8Erlaa|4M=A$Ck&TS(w~|ui<={z0Ba}EI_?oE=MtSmPA@w444yyBU5U1l^|u)b^j0`~FFMdX&&Rd<^^84jwyZsjaL$%*o>h zw9gKFj*s?zigyIG_uj%AZ@z+8UwaWRz5E=We&#Ve_Sl1X>d8lN%gxte=hjWwv3Vob zQ;ls|KZnihW^BT`hoi`5jt*mGl_(2P0k{Jeps83Hxp+ssUNZ+)_yd;Bp_U_fIUNkk zMV=kkZ_nS3o3A(8DES##9&KM|cTn<83vV>25TW zU4HXxaR7Ghqy4e}7AL>L&b~Z=k z5q5%uJb$AFLkk%4Cah+&I%X}kw!cz5#pFH6k#wa`(25waYR$wJuz9d5c4{&=df7QC zrb*d4^j*!&$MZ%?WM<4YcYJqVAu?04%tc-q+1q47EXYScN9DCaFYixa-&zAnTs%y!+~PCWa9F&!_gdC8kJuGL03%3xu|>uGm8adhn3FGHYF*Ys=nK{dc<)JGL&=0g4^nqy(AK!T;T z2z`9!Auc1{Vt5Mqyam_dd`n?9*b*ZIm9DG`5f9ZC72HPto;D3OW7}94RV-CwxYSIV zVV*-CkeWNQJco%%=22O}=aHG7f%=+iBqya>=dK)&xr9}WgQ$M~#&>O)#MD41+8b)o zKy~JF6`_I8ySc8G&nzEqDtN)Xr@a}2{696;R+%X=#sNk+7$opZ5aIu(rK!=JLu%w8 zL^$;jlok3fH8k))*p498x-*BCh2*q6c=$i`>o*$=n*&IIzuSuPO0HM-{X9OG3@2?I zf0wGNy-IOqd?sg6jh#Mk8GiYz1$@1n&pnmTTOPeJDl?BgQ<)ewm$qz~Q*K6}%gk`* z*Hj5xwbfJw`?uq&T&)W-h670vhq9IwcpPUXv>oFu`HRO;&NePJ{6O^8VNB% zOArz);wnm@TSCw+N)*tzj@tz?x#MdYS6XouB?!e^+}sxjmpPkoU!6Y=FRfQ|RFvaA zsn>C+X`LXsiXfB1(tF#FO(6$TS_{|6vE_fQ0uc9(6zCj~Y2Hq5{@kC}EVF4!K?MG) z4y@gI5pI9@8NBhy0V=WYa7amq39`fAeUC%m5@sjABh0?#wy*Fh71~FKkK%(vNAUg^ z2k`#qpW_2AKO)3FJ@^Ga)$)t|Z2R!Rrym;7-hStGy!FCpq+=SmK@0d)`kl^}W+*7SG8{obCPn^Hx(T#Cs<@U)m2fGy zQlNVs-p3Z2JBfkigPw7#nk|I^7W0x_*WQ4JU@4{v z9jUeHE{?=Uy9u^x0<4LzsiLNOFx^pW9npoGMlsu6k1@h;s6K+(u4+uRtJYWy?Hsks zeA!Rf<#Uwj;i$N^y24C?G7rjeLj@xP#V$nI!OET7Q>a3YQbtkkUqlFb&1qt+v&o<( z@5Q1Vb|8f%R<@%wx6tPBq{UPL9x1T`i?(Qd*>3c2LDU)>Bk$^Iw)#f^bvk zRuKrGkwBM2iIkr5E#}Fz$$c8A&;&?9HH+|DK{dCE%0VvW$y8}6Y{gWPSyT`yDRM56 zyExTinW|TFkf4D?R~veGeRUi-47N35Mp;W*lzTH^=ER}41_Y?QLsZh$+`lU5whSR9 zxtS>U33O7Qr5p@+5%p@WvdAD7EY3wqP8w9;bH`LK2O~bT#6lcA!Hp=+>lILNYGS9R&QpxpTu(ykD6b%Vil|_N z7DLup6GKOH1MgMXGN;J&Cl5z`b|6@eRcq3*c$qTyD_vG8Dx%6hqU6Luo-cwjwt&}f zNsARs?RWbS2~%ZqUj<~JcKSU0>huNp_g|jLHV^aWFEgNJYv3XCB%gm4|2I-?s@yIB zE?>SHixw?6$SqvB+!WmW`AhJB{GX?xD0Ky{osj zhx56P06S%pl-V(!?#i4=1U9aZzrJI(1b4_(Igo+-))Qzu<>5#*D2Ec6I(PgG=g=0c zp+b_UqntlhX8&l4iz_cJrDRNP$qSMyZIOY`0b1M>Qa}-W1ShE|wK$x#PW!9H_qQe> zacMx}GOpfqjM~3Ugt>MNar5T96@r)(R-n1NcoUeGCQ}(Em2kV`C?beyDaEFy9F&^Z z6VUAQPPKf04c70x5O+WN3|{?sANHO6+L8;O{Nc|y@xu=|@u%-`>{}%mcAP-IIQb>^ z9XmmFb_5?CJWQY+#C!WbXWNhWKm8Q%e*6(t*$0lPk?oxi-^Dxcy=n7iZ@%#|-gx~b zJooIArp_Mt!=1S0#w&5@dAo7Ww#~R`?{Znz;vMN-Df~*{N za&qJL+B}xGu#hmLVqr&Cn9WX{olDfG5+ngsa-SGgisq-(=_^xx8Ar!{0#e?P4P|BK z&MuG09I6<>NKiAlWMvaRsb-EUVF#%s#DbX;E6Yiyg6EZ&otqs|KCiDRJBP;?P`w2R z)?$LP*nk$~D80-VCL9_p&{u$xD}QblRSM6e0OFpyC}yd8x*FMOvt!Oq&!tk!GS~AE zRfyd86^Jco93|Z?;W?!0#=4a#+6iQj5wN+L`Rwd+ZT?6ZK+>odRBk6VO;Ag-Oz=_; zsTl>xR1U`sWf;ljvJm-Hmr4RHGxiWwNSViFrn)M^y)Y|_->DEP6%+BfQAL17sbb|W zFAqR@83vWzUJ04Gtu!Z-zrivq%qg!&&4E<}cs?a!4!aFpTR9+7!A^NCmSkse08_ww zUt%h+w;{>_gG$aQdx#r_nQ8ofRMmucYI2GNNmqycroQS4zQ&qz>)4e=BaZ_DmrS|3 zwrB`5!(ABQIXBOapo`zFocBqY_XV+BJ~N+U2&u5DIXGx*s55oe*V&2+{x;-BuOMf6 z5-Nq5RF(Fb9O}i?Xg{V#`ptw{SJz-J`$}-^@&vJlDmyKc;GueVaZn`Z6N@$D?@uj8 zm??3w=Io@llnaQN+Cv?KNZZseFZ3t1J z<=~-B&OQ%r_TYhyZXOd?X>oNX&qpUM){Wy%QsXOo(x}i}=CUuRk+=hi=F)z4KoiUs zCP;v&{uL|~2S$*@;X^>F>Ag&K@h12PNcLX)aQo@;_iXWFwBBGPc(Lid z)RLA4xl@3X7oyIykg7_x$(9g83b>Z)TC9>XQd(@boy+-VVsuQTI=`B(N9*KiDNoE? zUmcS3B6f_t9sgr~B9F^~JKBgH7hH`eUwRww>_3G4@@!Ow{BOR+@$bK9`wk}vv=iTa z;{-~7%_ZNf9pih&oXOmH=-4q!ab;OS4(`Xt`#-@)pM8Y)3AMN0dBdRg7S-AF&pnAp zAN~U#df+ZRaPO_S-Nu^fy&gan)i{0mw=p z)zO5h-cBkpIcbzx!rr0gI&2*6!RFCUOi)d&?Qg}VkuI$3Z!weN`oR`lv~?PLW{1&R z6G0z4+6_bPnCWT2B|GPE_WCjGU9V)u7h&gAKW2Lxd3*=X-8jZ`cB7u7a+!>FO!iv# zji!*t=GW%B3EiGLZ0Kvi`o4Os?X2c|!j~iSwu&ISs=_vp)?CicCaAf-eDgZXV#h9^ zDJ7S@G`*VZVF%R3PNjw&Z7EeuR%!;6NnUYhs_0zI4oxYyl;SB$WmZ8DHLwGVD2s#u zC)LMgInU$g{#68Dh>9pLJr70fwB$@t8x9(5iU_kj17)5m6J_|2nKWA&(FrjX)vSp` z%-N&ND-TbXfkhPo+yrno;gU*aB=>zcA=*fl>?>nij%))B;ogkFQ0FVzHReYODVbE#5+n;oSK2}w?6YALg&E0VD~ zDcgW17k>dQJCE0pQ(~_E$!SX8qzo4PT;9iqYJOg0J$jlN3|wsuwaCfHfQ#y=BI2aN zsw7}-evhyf;6fhF;bjweMd)s*HdAC@Yb}B$c^stV5Ny2no5SIytkG!>d0TI7+bSUP1usR)M=qnZ}b8b$h<;&LCZ${ZsRAJz(`HS(JGv?#W-<*#6qD0&}=Rizm#>d#S zd}M3TayZ_*LCbstnzl*3JxHM0z64l&?oG<<;jLc2moo@CF-L{gpX(?z&D9ZPkH~4n z%#uGtlcStLq`H=+7GoiyBB05HDAQuxWnV7*XDpYJaUe90O3pw;*a&bs#=y1WUvN{4 zD=qD3b6i};L8sStjP}vFxK8`ZY$+hcmr{mOUUJ?L)MQeW*-&Y-mZp@l$=lLxic3x) z|FIw$zgU!Fu=*9RSMPtdB<)9N>b%NOlI^ZWuD2SViWW5XO<;86c3gYMLwM!A{rKd_ zmsDW#T%;OfJD@7lU!KI#ufH;w32a{yawoq#1vxgoKK9j@IL7@1w9gM6_z`IDef&OQ z_9otZ^Hn_a^kaDZ(FgG4;}7A^+i%2m*IbV4uel62U3)2ZZ(oZIbK_V$HH@+Tc8n?} zYp4V3R9$*@2-|0dv1xn&8%F!sVX#x8IvZ^#Kve#ps%+1?FNh_hnuP_W~{ra9Ljsx zO$e^#`eu&ArTjJ%ctZ_k*gVjLZNmiUV3WO{p)wT6YNM2e}9l%Thxz6Rw1AE8l#%1{I)9Qi8P+RZ<{kHGM- zQ}X0dVGt_S1ej7*)e(rAbMq1;g;X}V@^s_=b?n%b4PLQr@@SNKQr93?`%XD;5O&HE zQX&%*uR+BxWzOubuOdW4R2qf+Y<19OaPj&ycPU_22E#~8%plCN%~2qiYBD(~6RTIG zAaS*zO!yKQ#k^M4hs)>aUKu@}(r7sh}GO~+pDNnpqsi* ztKyh)K2gUX;D`8;KwlqY3#T@}W9+tJ(FgxT?73&0NW z+4=)v6mme3LCE-3`Y0H&v~aExk7fTTQTCc(i2K)Bg=;rITk~_OqOJUmG9e0R$~bc7 z{3ZC!nG2D|L5s46WOFHxMwOOPT%9~3iT$35#+53R_6CiSJcHUaJ7Esk@DnIKQK zhc>&-^YQwzV%%m5EerQ^Uu77P7vv+`oK&GZR zG`-i-dF?n-2u%Nilc43847Du|F>Qo3*+m3ZIef?jD)XYF z(5TD^Hi5}$3X*mlSK^=)y#8ZhqP1TvO0wl?i&N|~f4L|b|Gpprzg(Dv|Kr!o@&Eac zh4>ZMh3YzS;q|xRiC5pjTl z-kzq)f?qG$yBXW(CNSB@KUtF|WWs36&Hgf3THo-;nWm;eEcB7UstELK)TfXAon#+TPj^=xmFu359^GFGoE?!>< zjWP?yD$P?e#F4d^=hS>%A=R6}s$!Kgllt-r-WsZpnixv*@+>2V=D3@)&2GmFa6&ui4+g+L=Xa|n9fgWQ|~v?*ukcsKgm>MU+PY=TX(m^~@61Bw{{+ z_RG`Guwd=QXPt?)4f%Lrv%DRpv>cP;^&^G2Z*#~|Xk0H3NX4n$zrk(U_8*iBKi4aZ zh%E^;DYR?2zXGeT=+3}{TTTIu5PL`pZbtx*?h5__ zv25uo4O7VT=h}JZ5v)2U?sOt}$=tX|@LK6Ol4zag$L8s}6J%;6fO$>7AfOCpf*Rpv zKwFZ6UlM8p+J7uaG%(A&n&qm3x1t@frUCR%Y{cc)-;NjG`2-&wI*I*9kK=%n3LiU) z&yO6otRK$uFupj|4p51inUN4XM2HQe05wgGEr#@I%&cgJR2dckhYjtrn$Bfs)8^z+Zw z-%^Wnw@l*NOLpP%y&JK0s?P#dFWxani1lIPNDo!k6n4xEa3su8b6+#|P~FLsam#2Y z_RI|$z|LJi$`NxtcF*)tjn!k2qv;01r`Nil1gnNn$4 zNZ>j_YuUbk68Fk`aJZ)p-A&bI-c>=;_IkeNprgIH9<>}?s79KCxMMuNjDwoFiD7J< z8o`FCAxsQ(Qf>OtO7$j1Cf9g5n-uXkDiC%n4HgF{bp(G2f3t315Gz+FVfC6+WN={N zD)qssV4w{Dg=lVUAjqh&2{ZDpCAeb1TsHWnj6Jb*Q)lr^A=eJ&;162}w$TDAF=Y{nn;bnBtESgl z#$Vf98ew>Y6xxg%S9Yi4flY3zJ((w+Ikd->HRR_QhqjR55y%$EA%t+4M<~eYL#9Y| z{J&b7N)ROd2r+@}bV4o;ued7HQte+VPNqpGyS|zegzXdx6~N?h5?5gkoMgJpHS_2E z1kIuGnz&wIle+uW;xwu=9aCazE`Cg0h5g(7HKxAe?*+795MJ^3zg$dp#(n<3r?0T} zrx9)m**;XY4dBA7uE(P@cQ(N&&<5|+MBQ8g+D%zmtXlKo_YQmJo4DXc=+K5@!&)E;gN^`fP3z` z71#XsQe1V(x%lnH7vQRk&d0gCw{!G3igmLS*u8bVrBIUNgFvPvvg^kNFgM(bo$DuX z^Ht~IigPyN`pfp>>@8GM8z(W=-e9%BRNQhaN1<1qy%AUJ-C&ALN=jafTgSTW^%c8k z4P<*~2eGcV!OVnnUA5>VoZ2~xp6aN@NK*xxLL~$b;Zz^9xG_~#uJQXYLd7PS4K^q< zNIlQnXXedags6aKRh;EDNO%=fRmp_s;fPlzMtK=3dGUaPwX4Dw60mKw-OeSorpy}p z9(8^%V(iS6_pl`@RTm|&s2m6_&4X2On@X@$up^SXa$AT%7&9EPw^xMBys0F}b$)&( z&#Ma4)xJ`6Rz(SBA10(c+iNWRpf2Dw04j{YDN^aNRvlD_te7%C)rQNebLVhmEDy*A zD$EG4A(I{LvPCNlPN}IXx>>{yDI0!oh)~Lghn-*r6+m(#{~HTdV!^UR15s9nf^D;r ztHjH^KT=9kX-WiLlwV|}Vpgt6<1!sZh02iOvJ_@Px6kHO@(4S*kV~Oy-b_`gm0&tA z&uw#Of>}yBKZA-*S?1j(UbtOucEoZh$u>1mRNyj4i&gAg)$w`>`gW?EJ_2Ky0~C44 z)&*T?<-nkk_q3XTs*ZTk%;y&Ixy;pG!PSE;<(7)8u8i=H1<>CbGjn2bRtDU;xhTra zKwo1OhFWX+{Jm7PwfrvG2vG@^7Alk>nGh=Ey-X#LsN|{$CaU%rpS#~(gb)WDsxVN@ zXRjikZ8eq7K%%l7qdf|Wj-iattCeu;Y_8*gpa5w}YtY0&ON0t9#OGem=PuP2<1^Mi z<@{}yP>si;5v#9OtB?}Hw6~+pOpvR1?~_xq;186UH={xz6ffxGbIr{yL^vEqv^;_` zs{CpyaVb2_%gISZ0qqrKQLc;fn%(9lnZ)OqM4(BP6;XvLF|mM_k(p~yQ);d}flkWo0YWXV&}4?R_omc*xNf)rcg)G;n2!6oF0Rnj z9=7yZKgR-}YqHH{e`#U?mQb}A;HY*4Db1Y;V1iT}S^|LsHOB<0Civ;S%!`^&Tb5La zl>}I_vV)`$TIOIP=M5>Ye>Df1aTBJ@o619DGv0c(v)X%enK8qnB4y}arz2g z3ze53CSV!F2rspNKWmLa>p$i@=0#nzttZg_ZQg48yrs#7@Rqk=^UjO#{2T9Lzf6WQ zAAT=0;@3F&o#x62w-a*oIO>4xM}SeOQGxA0^f~q&*#Dzx@x2ev*qk!YwynkKg_FVq9_IUTj=9jkQw~*tB*AbA;H$a6cxg#MCyeoyJIa zCt9l=&$ix{CjMzVF-@3F4Rzz(9UF1p_O-ZZ=XwidZej=1#?GcAR&JfLKyu-ZwYXsO z1eMk#)(y1a!Y$(lv5U7;xlQ%(^&Bqc>rF!~me+9ibT2jzG@&=-afLmWG? z<2W(J%n&=AefB=*ev!Ism8QLO?c47Ljt=nvKPv9%tx%ShEz_ev| zjcnUnFIA15+BfER2UXTRMs+0iFV$^q9wq=0%nSge4*bpeUM!uh&WuYAEV*5Wd^&~Z z!*q)wXtCLs%&Zfyp@A;TjRt_6!;WNvf)bW+!Fb5hIPtn0zk|XYDkjMQ$s%G%TG)3s zfqioT$Arnx>;TzR7RPo#W{YY3?hsf}PBKv+Htf%yDA?Gb99unUYV zj{gTG31Ax3KEjZU_C}Gk1k{-L@cgirFnLZG0b~}FMeVJ)en-duNqj~T$wdU`09m6A z-!&PD$m~c#olFWio)b7v4zEngse{Xs$7`0Rh5@!2@z`xh4%{+`1Z-wxP}ju*U~OEZ zqxgg)bE3F)+05z|vc5DYblaz3CInDVAOWFdp2Kcw5Y1!DeNA)da406>a74WsS!Ns@ z7?4y9=VP&`n-9rHdz%@+*|Vn-^3bwP%Z;UyBiGAHWk%fqYJ6-H)ChQwth(gM!$Emq(I(HG z2$k05zFR{pDJd^GK&xzKxzVO2$Ldyq37FdE`WZI{e*zdmVMk4uZktSuw-o@TdhJgu zDIyz;U}6BVI)WI59RMMgFWI+70OQ8@=f>9)DESRc`sn@g=)*tI^|E_zzez5f zIVmR&ACmd$3GIuS86TDvfYvd9+w^Er=0}F)5J2w0@|+x9U)G+XNdUp*Ku%_d2ju*b zHM!;75d?*CwUJ^|^GqR!KoStn-dY|n$_e@@;`ZTN&dN{kyGDL^#~HcnssnP(;W>Ha zw$pO;!C3_JUOBrqDQ8y30VX+F8%)bpYr}HYYEe!v_RA7LZLR=DRX`RC;21-&$bywj z59YO8H^K2N02-Pg)B36x+4O;h5xMU83clNj9Go4Mk$g@Kjp<$=pqK)|g0slT#_0Vw zTS&;-a1VgAS5^j7vJPgr58y^%>kaxO8}b3Ti`tSI4|+ko4m{SHUD%j$IqcsyQ-Q+Y~{zCn3}L zU6Wvu5vN^xBSD$Qd(Q!!sbnOhqT>SxaI(kE+GP~820J8i0JK&xF^+Cw^LuSwtL&|5 zl^qogQrBXTGTh%)-l%iU+B!-=*8wmgLn4?N!3dhT_SK2=z6Oa`Rg*NeTam@PRS8Ft z3T5eru5M)T$nMQ{2?nAnFzLkq>zcZxvY|s-+HKO_1#s))94;^%FwjIesO7w2FcCK5 za~&{wSnJ|ty z0PXNx5sWS`0|2bE8#CB%0qJaQ6JvV^*j*CGJs_NwMlZ-fw^_Q)MoHqFa#=0X)!q)a z(IE*Om&J(zbs{O^yei^&kg>SIek}ln9u=dqOy{?S0dOh&hLG1O89aAmVM-3IPRoUp2XIYJ z$pnY5_LQbhSONM594n5Ep`k%8mz4spw|F$FCEUr;vC?*62%dXt6+ulmDGn_kM zcxHo9r+HUZ)&M*^q!U}W)v68YI{|u>_D9XF^1y0BUcAsFKicP#Uz{kF9#xVLuwrRZ zON|$AH#e3cOCph|mMG~ka^JiKAP0sdf4 zo0l_3*5%qWhvncR9vdpi3NG5U=`oo?Fh90FCua_>0L<3qzMC%S^kbj9fz@G!aG4Ru6V+p}%V;TW& zei~VM62Zf#{bQ8ibHs}iStwP5g*X5tpVGCvjj^mU#D)I2tPJ(Y8b0qZz-SB%F70!c z%7F+(y?(F6oemj8cFuC;6j;CtfQbT=5&VA?zjq*pW7}<$889`9U?#x|#(N^NGMtq| zQv|U=DS{c$8TVkQmsbWCB2Wy=raM13+dLPFH-Y z7Sqv)mapgpLFN<=#l>i{iPsmF4uH&_nl{;43D(x!h0Tbpyh#e#J{5#8^RH`cM_{X$ z4uDvP0oP1jo9wD=knMYGW$T_A*;&yjHH}7qlm)EHp`}MQ0@HSh4k0WXW)m54=aKNwYOW9-uV8C%gK?Q}`p*~pw!=zVdKlW)p;g>}u7o)v?*+7EB zHP&?;n-j|;*l@jM!jkg4WNNTaoQ6*63A&{>kZAc6N>nkdQ?z7xx^?AhXe>O`<-ivis} z$hasPp&;bk(KQ9M^?979IG?$`M(@aIfJ)S;tRne2hI9Y)fn~6{X<45G%SAGk1mMzP zpVnG4Lq$Ai0bq~wsK6dF8xjF9a=RN~V;2V)b2yAd2Y|)$VjAalE}M~=$qC`KaIUB2 zFZQCbTMPCnH%FL5=HV|Nl~BiJ_6H;qkKov{k1(anL6ZE_Igxjit&>+bgg$I`&_3fVS!7 zxXHdYHv$vEh-+F6M)sny;kv}Q2v%fn1So=2EuX_)HI^*#|IP9wZ}}dZz@-3)O`p?* z=QOebo2(0Lu-*b-DuELj7XgW2wF$60Y7E$nc#Lcj8@?l-w+XlueDJlr&-Jt`E`k~V zCMa%h`n~acoA8@_iK2|m9grjEZ;_ks`Jp`f%A4}um*2{_|M>gGKC-_mGvh5Stp5Cu zzslEi$^Ygn`4T|(#YIM@VD|NA>H_lqhwsSiZ@#L|AHRL&1$pJy&&o4TKQ0g6cZWQ1 z&+T&4^;gN6lSgG^bzat&=jHIeCAs$OF}dmdF}d;lQ8|wbbY%hnw=^wBmuF>hq#zd# zugL?qUnh6na86DG$j2xg>zbk6^{QU%bzW#{^bCSO8~xWdQfd(P4LP`z@&5dEj@AFhLd242tK1=RkL7U za~xZOKs^Qa#&TrTs_=@N^@3M2DhcTa&*b>0E61Gr(X6{w*t(X zWLH(Q?8VmDW>x@8fUUZneszc7;78gW8H`Be0Cp7(NXquqVXK$2%0?-#ZNuvTfk{HAZV0CHfEE?vVGJMZ`kFuXJ+>-6nJeltO zaj#qFovj1#Z#=%B)>QidWTQxO)+TbYfa9^szmXi|!IFFMenABNVI)$soGUlhC&e_a z$Rc6`&{<3-d{0_gIi;bYQG<3qy23#NDzq-Y-X1W@Hk8%C>-MfZwrwi(rEZbsbrp8r8M{mH}BlZULAQV7Rt5 z)ZecS)MKN=IR0_9#v+3Yg=1iAdFk)V$>bQATBaAk7RK>$s_=tsi{`}v3Q7QebUG=o zs8wa+_8oh{s!HHR=|9<53lacYWVHbNnp-+lL{b5E#s+Qnr`fGGv6?N?0p`oCxv@ps zTRV^-f%(-p;B{@v+;;6M6K_|OJh(3*53hOT`LkeZ8*Ts^rTisFkrG2=$&u@3B|zJJ zj4mRNtlH(LheHZzT#KU_G1t#nb|jcxl7LoL*Co4ZOYCctJrSV(9lT0z{9soEsfH3* z5g0Z>uM*E`GWfnLJ@U0QIR5{>hYi40VqM&LpCD9XRsbS^6#-5EfAO*Jo_i6@c)RnW zd&mv|9bZqt;&a&`&HF4hlA-ap5ODdqywC4TaOC}}7OR-O3CWKw$jae!a@8&O$>YEH zwfy0O&*byJ{axAEUsUMvPk`Is)WV9c`F{cvqiT_*MhZZ_!A3^*9vIo{Z~RVu8DGNo zGPdV`{!{tsj~Ej3F+H*yS;d9PGUEh-{05lWiM46HWm%GquQSNJ zX9jaJ0|vrjpZR!D8(r_d>WG|NnvmroWZg?+a{Ji>vVp9YOy^GAzy9E?oL(N*p0Z;z z{jzT~qu!0|D_a`{s15aM*^gq3<*~e47LgUkeN-dbw1|D;^IHUXB{CmBCjS}dSFaTIfK zJ!}ZygQ5?bBy*tXV9c*fY;m9mAlD=P0ImT%Hkb$^Fh}L!^njdSAIJZaG6+B;Q}97WA{Byhu9>9L;&C9*cA1e?(^S?XZS7!Xfe@aD3>?5y z4n|g0kMpst4lJudw&HeAZ9CYRLE5^k(v3iuh{h0%Owv%_2{0-FB}85%>YmeKmejFH8$XN1T?eNtBO22lMEpd zp~Rg|`Ue*$WxAM?RWN_{)o~6QEv#5Z97+X|>X^qw1)`|dZ(6#^v_7~;mbzmjU2-XRTeUR{QEvu~= ztfQqBplpvLn0M`A>mmi4(A z8O(vXf_c$3gp;i)*AD@ZiiLs#Q+r3JmJ)ko1+98oSzTO5v*Emja3^)zo4ix9d5_zCEYKs&n?}UPEvri)#UcYXoDPOIhWC^?j{gH@ zn{2HFW-KW_veFGe3(7+TG%z+gg>1Tns4M@aC<>`<2Y|JML4jTEZ6s&`2-hL4>nd&hAJ_Hx-ehW}$9bP1$2B(s=q8A9C4YS9HF@=SzmgYTcv@b1;Td`8{=4PusiU%QbwO5_W@Te-QH~y5R{_ZJ z{VQ^0eNhgr%*mM}`{crrRXH#}EJv2c<-(z5wWm5bH!O$dN3e|n%<{5tYCzYV)^RaT zusQbscjcM5j z1~kO?z(xM(EobHQ>X_`G%qfT+og0(`$jAPKZ3>CeN$jaA(`#( zl~lm1<3eaeoTO~p;lg7+0PvLbfgQ&Ee)V)LBEu$NP?bpk#qkU>{61vI0LpV~lXBaM zB{_+JdgH-)xqkn&0@`dg0>FyOL?(vsp2qj-mwu|&Vj+MmExocbnTg0Gf^`v(lcgP) zE&|+2wq69kLc|L&?vYzg(EX$!>!W=DJU>__fY)i$k|rJe`w%eMoK3YP$E0uywV}f( zjbK&u&!eQCV|pxXaPGi0Qq?L~?y8kq0FTLv>!-e5$^d9wE89`ggso9;D;o_`4M1yd zLr_BIU1C`5Eu%G41i_2bjGYK>ZfV!DBeHa`xf;A*eN&fis&)jcV~-oBP*cv&Ic%JD zX0p)w$|B9JHfh4S-3DNz-Idn^w$9@MHa^Comq-c-W)lNh6|@l0@;IIo2>SG1+yLlr zOmgH8Cnh9irVy3BgjaGgFMux~!@UvhIqOFP(TAj9WpYp!ktosnsvm#PA^Fe-X?wSD z@-!z@w<7@WF00T|SR(>?dn*FA#UN=US|G;kW8WP2J$ug*iM0L>f>~?3QMQ1Y?c7~1bzoi%O)X$sR)D`* zEx%Z@G#brFP`HNHt)pUg?y8ik>Uvdq(n5>x-PF`9_4SQ7ha7l4`{@8)4NcmYMwVvA zd(>3b>T?WD6o`1_7blbQ__6LGYm}V;h+P1mGP0ZoWQ(ocQqhFW6F@*&e=|iNR2~ul zFRqDkV=o)Qg7*nV1SNuv0ut{N)D(OOW*n|r0xm5vV%vN^w@op}CYWsk96_(t^Trl| zQaO`re-x0E8nsJp1$>?Y>BZNU0ietAU3c^K_#S)l+ggo2=^L4oyB~W}UVisu`S>sY zkU#(T|JC7~U;q8D@+H9Rt3Ur)z5sZA@ux2VUSC`UGTtw(m3{Wb$MVj5Z^#>O{#M?4 z>s5LE4=>A$zj{V~@zfLYz`b|K4cDHNYc8CUtIwa5BL}EvoY%212f@;~9R}EO(VF%B zdu}=_PuzEt+Gx9!V?i5QLUmTI^k1i^+o6d7K8h`_=jnkjmdz3*iqKyNww@q#PcZEiPKxRi)Y3j6g)$KY?)rf$_FeD`16LWou`_6z@H^Urx*x)iZK7AD0Du zmxX~e0Lm{j_}sNo0PSR-mQ0Tz0qBo-bd(KCqq&erW%^V@Qam!14atRl6u)G^))4p* zfHPnjTzi`>WMqIs2g>lf3=(p=WgcvhX1o+o(4k{@Io%zqwKPZxHUX#-z_SA^?1~*# zQdZp}yDFNMk+ED@Ue_U&4LHXEYGu`}Qc>3?Rsa^+oEu=~LNMw}CDetZtfE1x!Pe@? z%Idn5Y1QL?Etpzcr&R%q0NRPo?F`_)O*aY_*mzyv*d^6?T|=`Oz-EQ$(~QW;(P zJ&tY_ZnU*DsVJi-;=^~zN(S%gwuAj)pW7@YIXjsRd*(PBjxu$t$)e1!A4$#(*!|(f zDLH}b=;-n^zH44iuFvAy0TaV{+@JKxO=k|tD$d)}8}oAE@QN&svn63bOZpUo4Ci~~ zJQB)d`2PTsriH0tnVSN8WpCS1zj{Kl&un~j1k5X}fX0%f7p$6VnPlozCeoOg8=Xhk zgXZ%BkXyUdf01BD>3tdd$iTWT-?CG-?bsu&D(0|DK9`q7JfUosfMx}l`2dhkryGe> z3$|9Ab4F!t0kAnI&Yg;iDloBDEioFpjJkftHMIZ$zXQNlU)vx%w(pcZNG7tbPWj=1 zi2Ur3PhJL?y>eAb`^=P~0jRkBdmkFv8$}_HtU2Vzhp2MwRw|DvbgG2N9nl$h0U@f0fhGn9^43OyxjyP zg3BgwZGy}uh;2S+bK3-?f0x|zF$GP4QVGERXPvGDVkOqb=kfWQ@6EsY|0;ZEsxDj1 zezE#e;)xYx<={Da0U-HlYQ);CC(?9m-A%MgUq#{ z7y5j$M}7dnq$i})Xcc-GrXx`q&GrHad|)OCRSzx|({jhTeJbZ4O9Zq}?1rOD%7!KY z5cGIFxjYU)A;XI(IF4u2GKwslBWrSCI-CbKfMCr=XnsyFE_6+L6(IAI89Xlzpz_M9t-iQol_HHkLs6%QR3{qCvqGd*w8@H6zN)tiI zV8j2~q={==Ed~U;n7WA!f;BB+Ukw0IIgqmg%&q|}tE#3$_TYUQTP-C=kS0pKjQ|6? zB%(=xfmiAq+I6jry=T!#5)1%Ydz(#aDIV#ti^=R1KN$k{HK&cwj1HvkhZ z`vDrXnz8_df;uglGW${Nqh;*ZNr1s|Bos6KNCt2|Odz3{1G~xMx%6Z#f(;Xd>}CV@ zjU8-_R#idqy8*P#O=9lq6sOH9U2Uz}I88+!%V6fN4rOFcn;A^YC5HAENh0y!C>we) z_N5alJc4QUGn%Z;?NB3mb@Q2;_$5IT-<>&x~@Pb#Afx}m8}N4?O1m_m@< z*lOyURM}_(ICp}L5xgiQ>FhL=9>Xmai%zFgtX7-$q)`+?rbeqPHfgi5nm|V@EHbf8 zK&u4Mb>g-3gluhTLn2WlRl9e~fxI1TtK=NQUbGj$z{t)vw@ukTZz<#F{reYf^0Q-6 zxu27+!P+PWp`fHB-;e3vmmHw&Z7}M_k|MX-HoG($kQo@c9!BLOS(phR(FU+!d9YOh zhZ{j`^OhUIgaEY(Hk%;D=WGJmCQxmH&gT71VB=$aK3~uEJg&oW<2oE4+XOc@ck_9h z0La&ou@UU*&2-ccORGID7Jo);;heZ){o;=g$ms04-2TwdQe^+W(#uDRVU<$hwqeU ze)6FF{E7SJsmJe;p90h#zT+x+?5=C&M|WQ@cV2z`qU*LQp>D`fs{5?bN!2ckF$kdFfcYiCzQEyM%xO2 zjMhr*UFt(1&IUYSkV9aM*%DBJVGIEPIo7{7gy0hJ0mxkH=0VfqDDD>#wCP)!@wp@e zkh`#NTE!xMvkAXFtUYxp{Ey5rf}rp3?nWXofGj_b{pFC>Rs$FV0x|+E`?naZ+VB{a zj0TfKs_HrcXw9;-f+CO>Wo4a4unh!Zs^z$5#);DXy*<(mmKXB4Rm4+7aE|(dT0*p% z!K@rUsjO|4Dr^L_>iTxwIyx=lcDN)DwxDHCWo_Nk3^vycK;u@AYqhze> zT1^tf^A^Si#9;>LwYDml6?44+cq_m-sB3B*xY>*3h)k*5!eHMC@C?XlTnmHQ1d=3{ zvcuXNc?ismB}HyWa4z@7yh!BcwDg!u`0!bI*_auUtB>yk2&QFjBqt~K&B^N25RQi( z-`OeC7ZCFNHD zrRM=?T6Vk$WL!VfnP_~RpoZ-SvnF{Q4DAPV7WviLk_*2M6Xm9Wb_p^xf*F}uv&kzB zU9O9LX;vu*L)#6ewgVaC&RVi0mINuhph$z@)CpiIt+lb-NWj_zGy)8_O~BjS{vE)0 ze;1h54zNO&0(XNcQjD^>v82hzN~Oa8Y2xO4e)oF(U1DVIa>d?exvZ>7<@uMDHOOT< z>*cZ?^~yTyJ3ZnK=Vf?iLrz_Hn>_jA@8qq|zLwAa_Mh_EU;ioJ{BzUJ>L2p2|Nh_d zPi(ZY`uo5BE`RyQUjTA{k-z`*ukttcow4T(fJTY_*VqVXpOK|~^hbIB{XfV%fBdcd z;dd{|E5Ck5o_qR7^4!mVC@(zoBYFC#56aITyBFZ~fV}Y3WAfCG?vtPW@CWkfy*JC_ z58N*I-wHN&;W%!ukw@;l7MbJ;x$*RV1+|;c98>@}1`s<95IehnUamW_PfL&-O)}D( zR94gvM#OR%$AGZB#IYkB!_p5Bq8H>6F4i7;;~@*|M;6KPCoZd9hI-Sw#;`tBl(mU| zIWSYyMroG!u06CU#};@$2{y#mfTYUXXN!G0HM$oJAnFBp1(Cfc5nzHLNg!~hgApCI zLI5in@_H52Xb?OF&{`YM%M6>FvCScHvJrYb6O$=q#zV=d?8k4T>&OTKej03v&s!TS z0oVYtbH3*KBMZ_WMgYd|8_z^#AHKVmJi*dZegsi~1|95!_HJD(WVtkhpcw({%7=qG zd3yyxjrLbX1hLUx`at^CYm)93A*Vz94!3jzXeg1VL98krk-?|&+c?m3FTkt321y)P z)vod;*-_r8pjO+=#%PXsv8k03d(1d6G@GCx!lzBKBRD=BAW7Gd&JO;cR!l)L0wB3A zS5=D)yRIF~i}qL+33~%ND~-xauEPa=QC&CdviQW*jU-Ni&5q38uhWtp2!wQIr;~gv z98n>O#bift>{j;?2mbD$AvA!OV3JRQ$+9_p80@(}g+wW>3PF~v>Dfp%pr;!Q3t;ba z0syf2*>DbUiUP3QR-^tM0pRu0fgi_)ZYxuTge-t5l8_NcSGx>lGe|f%M~&-f zHfaNkV<2Zw9K{Y~bs4ap9_*jekWR1kAi2o*BqZ!{sFl{)gUfQwi47S8=w<+HTnk7$}|g30?#^?gtlGs?*_=_O?!dlmYMIRi;LHKZkv?jJtK) zF1g~$?XrDG833(HCs|YVXvKTdwyh1I$I|AN+sowgD|X3D!YseOIwdawkSOwaf$L@j zH7zj`)FSc%{w|3^qH@oiS$=fDFZV9kN}z|wIXmsU?NTf`?jm3Tq;>jp0cKY!_Yr6|nHYhGkMTaY&Bys1f*Tc+n`KOHH5@8>(T1zM z!J@Y+PQkXT#-Qp&zK&(be+Npw=O&1Ke|N)oy=QzL6_?xyh-Cmzqdg|!R8f`>otFE5 z{0n*gtrX+>buUbKJx6=3!k`ODwH(#X&NX5W1KrF;X1 z_QmHPV0&M_{PF|&BmH1RPB6N(a8?=> zhxw3S`Vmyfz)q}A2u+dc1`-1(QQ>%Gt|%J-!a4lzEStCix-ne%Tq`R?1M2ueml3uS z_z^59L(lG2m&|DYCLgn6IjbactZpqI0UMv-+ zQ%HP}m{Rybu&=9al%~cuWqVx!M4A+nsj*j$6Rjz{p}fDPsSW28RgXc*#S=R3?aFPt zm(%r|fgi zNP;W3%l9M!LjY;V8zOL_VEpU4mI zzXgo!UU?Br?WJcQS5W&ASlJ!dpOx#+9@hRdO80L*e?rb2T1W6G%E9?b`N4IkC<)ygACm z>ne>O$@gRsBvQztgIWTd9~)MMP0Z7~cwJ=>NXtM+W3)pPx z*+>hket=FCSwFoKIS{je0K^_Cj(g#ZH;Pau5G=EyfPRNw+&YaW2_m=-#A7-wpdY{% zLtsn*IDH6?{Hzc%-L%hB`V0gq8WnTsXb7K0ubkZ)d|H^CI#bmO{)L_55 zig*y@IsgV7VA>mvXbG{S&5S^177JJ!okeJ!MMWhCJ?h$7w?|8eY`)FJzzzV2%RGTvr1)smsH{UB%rl+vImVBzDE+#gno_($AKWo-m20-$u|7o2j<5X1Otwl z2VmupIQ9drsulq9iz9ttSUw!PoJ0X!oQ>wPSyh<9M(7OoHJ$PcDF#oEOczr!(#!SJ z0QMjDt+yLsmIBB*wZ(&vX8=S4X(mB2uwM(#^?sa(R<-3~sWB0a;@s($IL-+_7y+I2lEmEL+rtKI=O#Aj;+s2Hs+U^;eI^k z*U1SS%fmiADj&}sUX_ix5ghZBHf3)tjLY$Tb8=*L2G`|L9k)YODSHRmo?!sPred)h zkNI#8gaAaNBO@}<-zVcELoz-*i0_Wy&3*3lsE;R0g#@x~JIZA%w#u3&G2*=9IvLjn zS@!Lw{2r`~LKDjF$*joCJODg0IIe}();7o$SAdOyZP7)f;v$f30vg#Ghke%6)Jscq zi%u;lv9xx8X{Bu0zDK@)`8J8$+U4mJlO;FE0j)u{RWyGGXap(trV+6C_f`M|H~zhiGUdHZdY=HY1@{S9 zWN`{IcpiJ&2t-s)YEK(3u9|kc)Bw<`Te#W5#BATOFy89(0bpzi;6|WhUt2?`N6U|! z?2kee-d=&vz8o9B3%|qW#=i+@mzOnxu{CNL@_SpW<@?yS?rIRTBO+JbcsGFT3;FyX z|1Dqq>%YLx{!_mE>p!slT|WEsU*)5(zLAf<_*y>v^b2|KqYvbr_ur8>-+o=*eCzi* zZF+O!^d}#`BOkv1hJ2*k>+p132!Of<=CA{d zi<0rXC5G2#5zNTE$UwOU7jks#x*Gd;I6%}3KujUyb|3%*5U6`12&x?PiN9?KIs|Vv zTK9w*xWl>+*?3zGmSeIwRrtX*GX8!FMd;4njIFV`ludKJDvto3$3Eyw#IVn3LDd81 zW|u|)V|8^40-Qx$PGtNp8sR#Sgt!qrjXKeoz+=UGHv(J3_XKc)-zaZ_gs*rpV z&}th^3Tj+mqY^U%mQ1(*csQWzX9Q^WKM~lvc#h!vRaPLgM-V0OQ9f?&Xjk9PWWXgE zu;1BXfPB~oumeDHv<%pBKh6iPvCR(l$eI09NU(;~^Kl4ZL*P2OHUU8FQO57Lo1`b; zP;p6L+^^s=lA|3~5TFJCZfz64*8`v_s6jBBswpZd0>tvYNtO3g+RxG<=L3#_;c?d5 z#{4LNsTT>~k^&l?OU419Z1B!Tz1Z*g9J~iTC+XejwVEV?+o@tso306nr@_#;mNtu| za1qzQ+RV5dT$b~#7`O@BLR4_{?Xil6`p-L{(EB$?WmG*O1 zS{$HOUQvf6r9}a4$L=a5Kn>E}jpU@gL(7W}B$O0zP|QJ*2SLte>6R)oEgYxXnr5l0 zYEZT3p7LrP=E?OkPPgU^v@5snlx^F0m)6zrI0t@m4UNi3KE`#l=Ef#z(Z8$Y@+)`B zt{uB%CEYE*ILThJcnQ#`a>OlFj?bSAD9}A~G9q_R8|BA`{BqB%1#B$(Z=w(a8ra&U zSaKwwZLe%mkRotx12FwNkP+Z^0Lb{ft>sPnw=y$4?}{?eUc7FT%@MTf0bn#du4tyL z9-!4^F1e8aB=-X3N+rY&DXTRoc+~*p>e?KtKx{P!R8dKGMezu4DF9&!k*301!3GIt z{9JCA@2=Nd1+$9)%kRZoKF-H@%iqyz@yhJ#5qaQ8Ps?xr_@R98_21-6fY~?y{Fi+D zuYbv({)WH*0=D+eH}dhcel8z;`jNc*;d}D#yKl=o@4kWC(nbNu2OqqN4fo&u zo&535-^g2k_!Su0ujKWYpOyFDcv;^1-7n=AKe-k|2 zGQo4l*5&yAB~?0JIB{6c9yzFLv^3YJhKFQgpkHFX(t6G2noT-Vn!e0+s;Od8W=95O zyuVl1Ht15$08EcTN}RcITnU*POG=bM2RwcWBil1~n(#a}3r9+ZuLF7QS(_c;3^M@Q z%9LDt0P{c$zi3_^`e~PSba_n6H5^2Fa^JkJU2wSNcoE+bL9z`2mHjweOJGTh7e0Hd zg1&%+d|*=Xgaq+Dt#!e-eO}1!LkoE%t!nJA-{W0MH(r zLx+GSbYx3JOLk9*`sRV7fCyYC1dzmO;@98C(HD z(}zr&P2UkPKp%j`h|Js4#kGfS@lYb(VbuNP>2@M{=u!2i1wn{`ri!i~jh)JDDB&mY z@Hev&m*%6r1j&u7#HN#ASDZ#ov4g7S z>Tpf)yW+D5Y8>;=zj>cV!0aXK0|?W|Hw5OEpviCsU`#d(mbEh8FZ-szeEi*VW@A#1 zA2+|PQ)Y_2+GstJ#q0e}95)X49FqN0Md=NLxqwAch03OX3P#u@Y_))`O^oAva=j01 z-)vGanj0&q0x}MkUI2*F$)8Mc-wda2_ky7f$Ti3J$%*w@T`%KcQGU-!03KDDE^`;I z8^2_ch$QeH1DQBL)T~X`H=I2zhjFg6)HpXfAX98_DCT7#o5Ge|@b0L%wKunA}-fN0eJ@%|>r zQ4vW1tLt#+EyX08z{RyVib^&cvI%xt&IB-V`}dXrn;RFXJp#67*0s2;7kkjS5!6bh zOsXKk0`b|GE11;-%1faeICKO$>^5c(5&2Y_apL~-@h#%|LI$R z*#DNl{O5nl-?07VpZ`=q`_o_lqRrIwX#C<&pUWp-d?cTI{;_=c(RG z*5uGIScL<@-VCNi#Tf06yb=Kb4)^s*G8C3D?$dq1<#1zjA%GIRq5w&suAgxnKc(~z zWP~FCi$k-c2vEbaF*B^f5cc)-Bhwwv_XyWd==MQi$){7&ht2PD%LqW%fq>seGu}{A z1_y=}(AamwaT_d+aS@x$g@KYIWT=3gz~^Paq$rEeMZaUP%%uvx@| z{geVbWVumGma4+!-(H!@r*#fm7+~53&>^UCDt0#lSIL9YB`ah72&#Ssu;vypuofeN zuoIx;1OS<|T-e+KP~&gL_iaK@qv&FGU_h2RP?F_K1UvR6)dLK7A!E1Txzht#IWRX? zN?a)P@J9e#Mjc;5hS!A8;#OVTq8UCvtG$!!WDJ-VX~ouw^P39CdR&7Pg%I2*<5vm4 z$%TD}-%B-PEQE8U_qb8*R?h(P#4%z0p`RtsIb$fy=gQsCKC%gEHa)=0N5Nj|EN60d4Thr4BQVk zP2=RDLcjEZeW!3vvVV>~kn1=n=^uG~ZCWOZJ#ut)LRJ8x$JeH0WrFJ7Ua&F`ST7s( zOQIIP%LdRe%NQ6r{ZHvA($?63{cDv`us4<$*}pai5F5)U0FeD^L{P-@7RQHVkmk)u z-10czr^kn763G_@DdA8A$pD@3t=QOyMtQ#%zy(0U{>=3B0hs&%I$Uo~k8m814d-cf zO@nOPxkt7Gc)B_an#g#ZxMsjg3254zhubck&*flYbP^%(G2tj9v%_mC*XL-M&F#u9 zJJgMz9*+bvIbE*Z)9iqmA2rn)*cfo4x29s3iG4!LtaB)>Su z#%h)xOZ{ih9Va_00o=0ywtMGH3TO{4cLVS!8VP;Zf2IuWQY<-cEpL?V3S?wDB^I{H zcnDs+C1?<&N=C*O1u?QPsv!wre2l=g31$Q^f)?+Sz43p1&F1Si*X9Uvyxk74V%c$L zjX^~n|6iwkFhP8u?*phW>cHn1q|NG+q3IPlf5Ywa z{L6ok_dowizWVz=<<9`JZ~sAStAEH>U}j%@`>lM1jez#$w``{VT>H(w`i2eEAIL`^ zzl-gU0Jpc4oqdek_uqL{-u~V5^1By*CNDknLwW9J56QDXdsv?R>4REceDIFz^PF){RVs<3I}OxC|lVTpAnHz(0Ykn5>|`r$?X1 ziO=+o9LIAealsSFMsUA39+6x!uBmIZ-;<{!Fz>VxVj_({m@MeO*ft$_Eol;rT zq6$aK_9+aZ;<37}?P8;Kw>pP3G#d~+gJLkbwPm0Z=XyP^trjMjxX+%p`ex2lvnZS3 zxzNw!3IWt^r|E~VEKwnkp6>Y8BB)gI*|ZN3w!JUf-Dk;s5bduI5aD3 zlYMev7EBGv$Y9c^fX0$yHWrp3k}+Cju`E8+OT%oikftX5PCFP>TKoL`EGgq09>V!Q zm@kMQ=P*@*H1ka$spI$WGzu-QSgz#uKmBM; zxIS=RB3Xzau2_vGB*_sZC?+jUTH6}r)>(p9RGz=+3PQko?nFShUjn$EKNFP)7A^AQ zgMo|Y#1xAJOSV@R{TwezQOJ&Ru&zC&Qr#v4<1N97fTc{T%cWpMfa2o>D*_eo^Y-5# z-@Ik%k+0$F322+oA?PTW5y-Idaef|wv#i0S{bpQ~BY5#~1+;%-Uz?1q1Z*WxyIj?c zESmycn{ZKEgVJsdiPen@BR4F=0JPKB+$@hh{et}brPt);*WZ@c-u*z{_~;XP_w&!> zqp!Y{Prmv>KL68~05wYTzfw1lFTVa%zWnM#`Rw!eIs9bey6`A;mtWF?f z#|29HJNv}uMg|ew69~EvNg{LQz(cRyiD2D{0BO}SVZ;{%$i=jOh#Qr5lsz9>m_W8V zBga=~0E#&oM21VTK^7Mwhfs38h75q~N7o!(l^NVFfd%ygGEs2jn+*q2*~ONkD%QK zHc^LQYqq#_ZdWWE17N$QKbc05M36x6w3%#L5}Ph^e1Aw4T6E+eE99{+eA3>Ea|r>Q zF7$NNV2@S<0==mVi~@kr)do-m&{J$-2WTYl9&9cr`ysocvXbvNkVps}Ok74I0&^aJ zbB-LF#0S(O%K~tXA*&tiNr~HH6)#>#p-2MktREmi2{eio?UgD3SUIjOf?6Z4x2i^?)HH)7f~D2twhf?LV(C7e z63ydJg(8Pv@^?^qN>)a{MY8L5Fw8w=RbZoC8l2-`P#LhF{&WZ|IxDN=ePHo@05|MI zfY@X{uBAnm`pDkWU~_hr=BL5Jeag1E{?>_o*U{D@bStqMj4G6g2LiG@K7zpORpnm_ z$BAtLTvMAK8IWuuB6DK{GBub%;?*a&pW817=ZECr!U)dUjI2)=Wo3F$9ZU|*)8;BC z1$>?p0OkWzEM#L~_GaAgmf>7V4lj+%2|DkrPHU<0!m)j7_PsdXFHxUUzw>lmQUacQGDMYX6u=fy<-GPE$j( z0v*AJ`!$(J>Y62c?wCBZHn*uNF^%NWf~1w@OD2b#K*o*ijC0cXf1A;Oq`|Fg;f?i8 z(ookZG%v2JsZo~Jg&1PM*52HrYr(C!E#F%$jWzYM5Vy>}$QB(uWc%LA& z30!18yk7~xDz7(686G1e;+hy)7hg~CBB1d;AKzSWL_wC~uM{tdv>_u^-pv>&drg}#)y*!^hNEMAD#kBA zl5f8Rpndp;y!Yly^7d=b%O8I8wEX6o$K{zHKOoOP`G~ym)Fbl4`)-nl@4QYP1c*KJ z#C`JEy*J7o*B+Obm`UNHPbmP!!NAyz z+@E3-D}pfl$kHkNokWJo0gUv_E6Ra|DQ%Lz9@|Z)4ye?e!i!;KmN~G33<4^%;6pSc z9?Pl2$dSb{mHuJP}K22J3M6REkb>T?!py$aH5%h7_RL!=vj$EnO1A z-yFtB+b;e-0s{w6HZ|d5Y`3blQ+aiZ26(#G@2P6S>jMDDxUNezfVnk;!5I;VGsr~q z$pn~KNfsYOKw+tqqK+i?AH^&Ls~|vc2$}uinL#kMh|M*_7(|d<^nf|_aLomQ zJnTR=jv(wY86?RMGTNf2vlHGSvh$lFR}_>}a!5LB7uaG%rOilxb#CY=8@ zol=2ovmDnX0j(O3aXpQrXV^;6g#E+emAzoU889wRdoJL73F92`+Hnk#SX5Nj<9Qs{ zVo}3gO3B;WyAUj!b((aPv%|t(Bx6yTAMBBQ%p@$nd#j|u9;T(?22H2Lxz;&z!aofz&n+V}JbqkxkQ$d&7 zV^QXR1Fo5gBG;dza^}F2j;vXopOlq_X>AdpV}1(&i|nWyES73jHc@lEj0|#lZbpWS z{nE>63xh>GpP&YYiF1g3W7?>1zgqD z^*BF_DjK0opGnXrplQz;7#7#knj0G>f$wSQ>HuIn)DMztXCCZl&df98c-7a`X_?W5 z1fjONS{d@*y;Vq__K2~mQLY;I%5x_Z0I(86Q*&Yf8UgO9qXD^h-Xf15^vk1b4rOuL zhjyMo28KqF2te+V1GGwj0l|qNL@*+7?WUrzs>GhS5v+JikW#Q~vLXZIh6}XQ^&Mm5 z^9Wj-EQsh63vxK?%xH2=`-&9HRac=A>+w6Da^Y|Lx@_pGhKWmo%Fx{>z@H+U(2Te zF=b?5e?oF9|Ji<6p3jxvMA zMNKJjA&D&3=fU3$$Z^f^V;(QE$_xOFz!p+b#_H^(99>_O(}&mf;yu1Xr~M&yc{qD$ z1wa*3)-{hTlS;K)uRbpOXNTk*{d&fZW?{G>!$?9Xac{?Gw*dswk+3X}_RA>M zi(r8qLBqa4V`r&+WCVzjeTVS<_q%!P@_nMsw6fHWCJ~a=cIk z=Ne0$gMDdr+{na3Dwn4if$sP$9kc(5Vh1`U^)J=m|DNk%`*`no0nG=e>t zL?0MdPcp3K$%To28R?D6O{e$Eg@g0zaXQ=+QkR?&&dc+6%l@P zr%MReiv38u>;NGv7*QSxAP4lar67-MXm)Z8j4Oe2KB$1kvLQi<>uFRx(%+Gw#y&fm z7;`)BOF@kWWYRW(_p zq1`DB9Zq!;X)*hx#e|Ks(QpCn1+Wmvv^01Tph}=cKx28ZPPXi>m#t(~yKrA0-(07= zcuNq&>)6{y#zh8K0x>?PMRtL)v44%OBvq|;bq-;pHP_sBRDm^Cf}z!$ls#Tq)+qn6 zts1ut5=s>0z6T$Zmw)$$yz}A5^7%JlWpvN~=id~_zM-`h!0gL!|0JIR#6J7-6Z!bl z59IYXUX#~eeMw&b-LK@;m!6Vmp8TOa@$en;+>;N< zy*HhayKgutcU*H+ZoP0wZom47+;#0S`N8!kIX|p;dw}C8VzCx$dx4E7F_HO z08K$bv8@ekAB=f)=T|=9SDah1V=A=M{3dwD|Yo!*<^Z2OvuU$0NerWCkjYtV$A8*eguRBj@1a5jn03=-wc#C z1g6T$2C1s3(`1CeIEVes|Ig!iQG~H~Z;dp7eFXt%X&h&^9N4g*xn3A_x^Qgz!O|1D z&eDJ+VQ*!VvQh5)8tkLJU{2-qku*CIr~tHJPRiPF?Gdml!OUu#EmF@>n=biYe` z$*3IcY;Fc<+4a8D0w!Xnc`!h@sToNG$DOo@&1wZ0SjCLT`4|Ne5da*`i+ebx2m92A z{qDnW@*xltNa&K$g1{RESe(E)eE>a%)$YmcrAx-dTFBudR_C0JY}28o6~gtP=j` zF9I2rj?WzP$xjY@<-sNTKlTksN9IRap|?5eL!Nx}PI>N$d*tW%`=Q$} z$YVdaPVT?utUP+xHS+kqH>elmE$0u)4W~Ec!l6Yuxo=jEu1v}b0EO#iWMgDn?1SPu zMjuC)^krlonc)Dkeu4~H24(wG#eQXQ8w)eCJ~t^dU{zdDKeRe07f$Zi5@Q?zAbF`sq%jUS~~!b6O#=9s7^2mGk~zf=y0)_a32>bm3YkvpmktM zWCkWYryk%%kTZ4x;P70&#sPrh|0zjt1S4Z3stL?+ds(dp^opux*|n!u8;)6CYXM^< zOB}<#AoC)-`OqLim2 zc^J#3bO@;#K_i6>y@=p9nn@}f2|L|*+$^SclQ{AHtN@1@xtO>x0 zppD=`HaFB0kz~ND?G#OT4grM6FNNct1GrLoYQpE`0jLbD946UeaDbtKW#PAznXwVK z6`!rXj(Ch_#k!`5<5OOZ=K#FwSX}|Q5y)!D&T#$i1#{#7tLwWI^lI>4d<~f*RiH5d zYYg8l003h-ZnQ6{Op9Wot`4J?Nx61vL;?^5(AX8wT*4-5x`(8KPVqUw3M=Zh|B*6( z4(aSfK&`25Q1Bwa*#Ybpvr*TIbat2Bfm=$_JH-RgprunA*fl||Ha2< z-TB5-8%mQ3S$A*rrzl(O9ws!*h(2SFs@JIjy+H705_7^VuC zfJI>r1s_y8Qb4pR$!}WWOK%O0a(%F=-Bqnp+hUVCupsqv#Kp0xMBHRw1TX>~8P`^T5W$BV zpR>7MMs`FH+kw~YqGU!Ljj^xX=pfwU~<|djhzy5t(aghd63xc@_bf zrAB07$Y5j0W+wr1i+HWBHPLxI92ch*nJqwRqR_8_lD$(Qddyw)SzMW&1|u-&`b%32 z&0XWNI5{L^2)Z%82QE4`UUzg^Wp_oRR5x_s7OVpSv=RW<-T~mTQxsxXmc{ZHT@!)< zj+W=hi*6N#Q2EDFBnMv-ASp&5dn4mB;JsU02ymr7EB0xT&2fq^nHYn(O3*vI#bj|S z15rSwBS#GqsdBIs+%`0KD(hk<-wLpbBYUP|(}B#GYO)XjuDzul>rlb3p-WAc>2^Vukxj+`V)WZ|BFTvXpc6PhLn^570-y@%1a7IOb>iG}VPAk9 zcAFH)X(dJ9#{!rv2TnFLAbCK5q{_~Y;MtAf$^GR56YS~))22{|ZWuU^>0QV{nVnrm zd=~&TUh4*+nT;ke8W)%c&Ks*mVhGZGNIdBKIgs${^+a#U@xGYcdf|vHkM}94-FDSc zoX`Ebb`}eIWPWr&UHmx(fC*y}-k!alzMyRl2BR4XS*HRKSrvha%HB34 zR&<9cWOGOwnGAYVNW^o5(;J#`9&w$H42;tJk_5j)wrtxi+jo`A_pjWJW8Em-09G39#bA^R9|kxnf66iGkrl*+GVejo`=UYy<1s!JaiTFaj60 zZFoId+Lb$N^_GBFQHLxPpG5#`=yXa&LrM0p>`=c0CI7f++o+N>12o&^3c7z#(Fg#( z9Pf4c_8PftXX(4}JsZI$&90dEqFGs3KO$FOf2Tb1#4qHxZ@njPefEXC{ppwT=Eq;i z8}EN2ufOw={0@)5`qm%iwKv}cLnBLjPu_g%5xhLeuU}Zmk=vH~+ z{+krg2w-<#e_XCPzA8Wb!S(Vi*xI9aT?-&PEZ3ddFXxY}$TeV3H=H>r=MUlji37+8 z=a4PZB_Spp^TKlCATAL0<8X!E z$&DcRq`(x+($|wwt1BCT!PI5LNsbIV6v0JEn)i{op#(B5f4KyEex6wK1z4hCfNiqnOR7vIBV z<#-kY0=7j}BqnHtvtBNxG{G`%{gR%$f-ohl-Tr$abzeK=R0lJq&iT*Cl8 zKLD!>L9`2rTB%>MrnVl(-ztq9Hd)^QR_BmTun3D0Obvm!0|4d$114Z~@p$2RF5Guu zE3d3p0R`7-JMlbS%k_A`j$<;|6Oy%wyc}5^l@$QkDu9dY(bpVb(~{%rRKHAcjL`Zl z0JK}OiKvzxd$i}yiEAwYfa^z6IUy4RX<3^Ylp|ng%j1LM29Sku{Cbh(ut$u&n`E0@ zL!-<8P_dwufYHHz8S2mDT5?M!oz#B0!G4077fh63)*)_>9}Jt<>7B_jKFtj*85_ln1go>PMQW<5v?|lliUbFrWySm4 zwiJ^W=+y{7V?P>=ihq7QD37kWsHCaZ!{Zd)r#pq-d2p5h%c9D^B+l}|FVEKb8 z%2um1bvhJCRdhmzMgYU-vTR6^$>zEo%aPm&p1h@0|9d;Cu%Wb7Nj#pjcy zsc~eChh$@MM&0sLIAMDMW-Oy+qj4D<=m)!sYOh)WtiO&#*L#@c*{O5vO*5Ei~=xy4mZFwE+(*&QvVajWDv}# z2(y9dIn{-OlYLtexcME7U~4Ruk-?G4agC2zuf;?YTNi?0P}PuSU~uj2W&lT2gHsb2 zOlvEHjY$D*5CMh$j2Z4ffK$k6l@n{zlJq;pjEj4|*elB;*dGWO9KSV6U4bj!{mYtwxPwO zU`B>kO#z6qvl2to2><}dvdTu;xwlqXH$jr@f$NGai?OHCi|;_s%K%te1VBW~s|5B7 z&3}h_BQib6nPVvcGlem6nJgsK&MFK5=|n(mX=zp|I(sIa0Q0y9=Ua&VUmVH_;Kcr} zs;L%}feqVM1pTnkt)2oTsslY>u!(pC$G%25Mx~{tRb}Rrg&v*a&Pm#w)3!X?r*eG) z+WEsva&&b{d^nEDh)+feX~}0(($(HB9tVenmS(;U^<`A>anB8><><<^%ns#ceQq4* zLkhG4s3Sf3o)Si}7hSzDTy{p%}I$Y=3;oB(ACKD=69 zLdN8R=DJ6T4gy9b$BO>Lu;?X8k4 zw(Qi6_GB#AdvVPKXwzo5DuZ?5x5WY;;nV|)K)TIF?PpyW$>ID4IcTU8Q(KF!t2NZs zYw4E~egYbqZ%s`dSY$c23aJ4r>}qY7v7k|&KEa-}lG2g#{huB7$$bkpd34n&KLSI0 z;Y>(bS!u)!W&ZSh3|xAEcKPmF*;U;td%&Wy&pjqTx}Wm<6I!po;q*Qo4tV{kbvd#+4Zu2}w+ELd6v%G5>bTnJ(1dlB zviz~4O1&A#W`~Egahj5PD*5Pq-vfXnTVqgTFyY$Tv5iGpo8<_2HvrBn!-WD^8T-^| zsM;slWK#TYWUhG6SSSjh;(C=;OMMhTv?FUL2v8|UK%+{Lfjt2xMJaofsx2@%yA@0e zK`kChB1>z+#RWzOMvzMN>iSeD7)Nj^$>hnL2n?NgZ$H?V-C7!W89;VQwO}p*1_=;h zb1dhqIcyGH%Q72ijA~HV5&}1aJv|v0h6luFvnd!;=|vecd)Ey3UX-FMGsH%KVt}W8 z6Q%nsyRihvk{PXm2$}>}G8q1E4}vyXB1I=$|6zkNN3O8ELqKyOV>SRdLR11Vy}Y9aO!s0*)0wP z8F-$A1|Y{VsG`Roz6-$G0tRF@aJ{h;*HuZ{UrT_(@1%%_<;5x_jdfsZbP1stqzwCV z=bl=yII^`y-G>BAGm;#xVRGHi2qwuAWIX7TbTlL}fI9syDWd2NJEfQm=m?oy*d^oH zkgQK2czVn-1;!I}cS~zaiIndpj7YQ$5)JwB-gN&!vVilKteUKa zU^)PRpd$&(VQdVh13gWWdt%&&Q5>Iy^hMkMo{DROG_)N8Mp7)EA_P$+<1``b;>B%A^Y*HW|N9( zIsw`NuulRT*>wWv)p$OweRo_(vyhnq#HuQ5kQ{K`x&w)YLHi+HV5L+#QaQP6=Uy~lTsk^{6Y$lzEa zECYk$!tyRKqsvv+Tbz`+)q`^LU3bf~FM(-&^r^h})mQT2H{ZznUzI@ZU4YtqpM5HC zfAF5X{qCFc#v8wrH(q;DUViaOb@_PuNB7AufBKL-_mg|&t{YFNdhw>S8wzHp_b*{AIKziVVW))T6zSSO%4qK@PaDnm>V6&MP9P1@&Zg41giiz1RZV0t!fl& zw@(_uxSQLML?GC4!ZM9=Lja(GG~Gk|VnlFk1RG#UE0N4dIe?%VjGF6LJw1J@UZje# zrWyeX@73ByD<_MtQANQdg8*NaPAOcWT~ol}(79t=i{Tm{{~o|^wu61KK|Jho;`v~x zK`(+_O#9_}0PcRUAok@L5YV~4rok28jb+Aa3K(#^V|R`I#yb4X$GNV=re6kO+F=o_ z`8;k~9tD%5aD?W)T)(3Y5&OHmxR7lKn(Xmm`G!iv!E{Up;vrQfI`BXCoo#S#R)4Rw z0$5rb+SFo;87!Nv`McW4n(!XO2vmNXSwZl~+%Ui`E`@kN--A7XeK^*1JBi}>8#}u2 z*;bYHQ_>#xAgOC?L1JLVF+)t!WiGvYp2AD9_|kD#_|Pn}dE^QXGBz1@I)j{VQ_DE0wo zn)P6xB(YBdc8iRI_0W2XOtc7gHk1y^(nyai4JBlLh<%bg2iSW^IXIYga|-~@4kpJI zj0pa2mZth9{jDJ%8>>5nl6THKBir;i>`0REczcIFhvl)po&?TwI@55JQA#+Mtv6to z^9Sazzhjd0+GG-saZo1>3MRq0JODBS-rLYYHEXj3Jq|grI3cImUp8KlV=GgtG^R8E z^7M!lvL&{}H9nu)sldwLPcS7r;|Q1$Tyw+40iBecM$*=YWYmZA+=25poys6#>JUyv z;CduQQDkXOCTT`miaAs?vc5PcViPRz)P&;HZEk<6_yPsnsSPe_XtQgf!s(?#ec0cr1%F1K8@p+{orOLGp60%_-9> zF*5=fA0wC%Ou1IJ6JWNt&Y%Jm_NDRhJvF$H!T9{)UYT85mz!?8O`d!4*Yef}AIQ6( zeJ&q-`L(?J<(Kjf?!W!fC-VEZ-dsb;q?-aUP&W;38OEf98;mnV?hm#{9T!%#F*!Xun*2;((mkx2XMJ zgFQV6Y7u2-WNE#L7_v}K`K3(Riwnu8HF%H1BQ~Q|MvDb7vYfarb}cWCFuMcm=}V<$ z5cm7DISu?4vkSqlT`H@aq{Bc}oL#CB$hrPR-#)S_maiD>$dDqwus8vN83Yhcj;0uc zERF%w?PlLoy9zF9!0L=(d@8pG2of;u-5&gHl@z`Y9q3sCeSRvJ6T<+Z2tEd9(mT z$%(&?!9Tt{0k#}KfNjHX z2;#f>l!@(|ECS?Rs)}@g!G#cD*+*u^cj`cSLFA@mhb;!UCMr8heiRqdmo(D!prq2Db zV|TSC2fO#yDY)_YlL6Ajoq$Fb+p1YSk^n1`7mEe^$O~Y`arE19?zm+l9|yQ3WHf_h zAcaH?0M4PBNo~pYa z2u#UhG62Lv(whoN8i1DL*qUNSCi4j#tAy;I>X&PdENl5Q6Y~hi)3CRUHdh{e20zbX zGpQ(KVYHyVePm=uS0)t9=%}9q<1A!*v@IYRPe>BiXADUQDTx}C9hB^Iv{+Q8M<)=j3sOK5i-29>8uWVuNLq}z z&Zu;>Xjzd0lFP3s^_tbzHEEw&Lj#Uab**q7T0ela*w>45fS#Hz$>BQ6<9g$I9vwl* zsyV-Hyf3Ne7uO6q0F{%&nV{5F*MNP3)#DuGx|zANOI?X<0KZ+k_R6lZaxo(DxM3gIF?)uW&9Dt1C5pK%N_&TpN{f}1ClkozBgRNj8?efjW{Pvujtk$wHOdjVd`{d}p zdAaJux(Yn#$9VPebvd#$ErVcIR4}sH`S8lT99)`}*});{$BE1}lbNBS4CZoTK^Ck& zga8Q6C8PYE>mVGv&t~L_;Zaq*QM56Ji(+wVQfHTS;Nl4Yl-j|%=xT2?x-=Lu;J0_# zH6y3In3YU0GWt-EiyPWsB)?^Rg<)Waw3x@K-GX*RDyYs zeQ@77t;p^Xgy>~y#`9YN+O*)Rs%^&e8K{xm)V1o&C^A4R_W8zmQC5a>04y7li?o&v z2LQ+iCx`GG0#b><(t!71azR%Ge!c^r)7sP`-3UHp3A7LEM8<2x_v}G(z&UChUh2ks zO@q~OlJ@FIpBf~)u~E)XpeG}vfppyKRkK*C27OMd&q}~Jill|&48Av~ANarkqF`lo ziQxV)5?pZ(bmKc2u%EhEHl<(!tdadlWG8%mb3K>|-j}T$1m9!`0E}bZfb*de*BZqp zJIe@a^%vLanve`2Nx=C=*?ekJ{t`S)Uxx&!da~IQH)#J}>66s!?&k1JD68Nhgq?M1wdMPO%!h z!~(WR*N=s<0@w=9&82a<@74=4kH1;AYi??k-W~u1*YA*!#Qjj-eY*dg^zK__{)Yziyb-Q+! z$$ZKzkL~x#bEhNn+^MKM1-8aDvEeNn?yI;)RJ^)!%tlc58*n%o6-h=m` zZ{!xL6!G2^kL+N}KzXC=qCyhyL1svR;^*=?1T?Ofabv0R``aqyKLBdqzY>6k#|V04 zd|g(b>^pKy9{b4?^78LqlMeu9pM3EJ0PRZ!vk$)fO5XkS3;Dwz-;)=917`NpOY-xd zKPeC2cemVf<5hC=4d>;qTh7a)_ueQ!d+cs`=+5iF!VUtQCIM&@a%5#ru0C~84gtu< z26Aeqd;aK#6v4z;D<^|Gwr^cV`tvHWefi5_)ipg-UI^t6t7(NPot7n|KHwr)Q_%Zco*OSA4h$h7xXHfk2$(q>k1 zM9>$~A)A!YQ=UIw;5uFuU^Jix$Si5KlKp_`u#b#uX>GXJYS|wKhUCC^AuHqB6xZLJ zxSs)&I=VO|2c`#QWh}2l9|;CoTr^}oIRL^U1rnaYHHi`{oDY>7G1wWFs2tH9WfBZ%)pf-J8&tXd8tz;RLlw;+|2c#Ne{0#wWg<`anv*EsnbxF*T<53a*etP;U~ zY-?)PeMYv&?`Xa#KA}N1W$LuHV#@|WnSqm_UjatX1c5z$EISh1%F1h`9AM7i*^YqA zjcZ|S;APn{gM@{{GU@+lH+JZn*?2arr9irM%oO5Mh&rV=ibTLdumuAEps;zDtjPt& z#Pu*Ie!B-OvmIc}K;I28(_oEby&DX{(A5bh6PH{90E*8X%co^&I4f6!k*$vB0i1rJ z-4>nl-2lFEFgLambhWigBEqt6D+0U&*Jd9WxJUNQkIL%I5bpcbB94PT7sdx9R+hkd+LuYoKwqDX4i;r@azdsjrzC@MuQ!C>fh3`- zPS-MNjm7KDfZsKQ;NckD;=f{}B-*VQ#*-*^CA z2K?QE>)3;s5=9czrU0h`8LLT0*|g$3YsKGeOy|C2j~ZFt&Ru(yz137#Ybi1b0MtM$ zzn03r#()dg5x_3$E_qZknR41}U}~-E@kq8zHRa`7c1h6OEDx^-RS=CyPV<)q-17sP0n1n3he9=`SovKm3Ke>Sl;>Q zBl+WpAA*&AAg{gsuDtx(>+n^_4EN=bW#{C=$-@9IWOTVKGNz#9GZ|d)0DPQW zbSZZ@{WuxjIPoINJlHoy$u%7=IOA$_ttXYv;e@w~+l7o=gHAI}UY~>mQ3(g*`dlgw z?XJ*wVh_HS-iV!DY-$FZFuS$PNSVCfg+u~?rV7MvmntDSDrNs9zB>X2OM51RO@g>6 zV_^g-n-f6{K!We+Mb?>!Cc$cuL2_LNAnL^bxrVnsIV}68hGYYvMpuhIFf_8W;a;!- z1iYbi48g5O4$KW9d&k9tzcYT1^v9w)vL%TuQJqQfnwX3BQbrj8ljvbD7J@&UjmfyU zHf9COyEWoBf`I}=IJb;`mmKrLz)ufCiYBNCqj1A!v`G{Jl`N!iC;#FyQ;ez_k0sYca|EK(Cxz zpH}I9CqCb9GRqYH*HBZ3Du=pv9yM@5z2P+7;#4D+T}~8|M2m!)6a2zefT8W19in1#iL?aDUeoYkdkl@?v|DX*xN-Fr5fT0H=*UVlG>D;XM-sHP^Cu-kABf#m}r z@~JR>Q>Oy-@@Nl|6o-mF4onwhIv)jScj_9C56KLhv^@ZBmK!MwaRb~~Vq;0Or4`4H z>w!o#beJW;nqyCF7BJ>a0-uBT>b6Kc;F6;YqjKTEJdz@x&}Dypiqj$zI6peI&n$(Y zO+#ZgQM-{4sOfRkCua^V>w5N3UrL=%_RWt2=rRhj{aIWOxK``y8iWnrED^eJTf{ZZ zb+t71AN$Pmy*(=aupl7_Be@6!LRw<1MbZ$BrIejAPIei?*&hAtrV|zE4A3nE`>BTWJ;9SCSM9i5$5=zku?Z{$C zo_Z5ut>91%$+Bb}7&-5A?TuS)4Lu+&(tu;h*KxW5&8S%oXsoS60_4Ft1^~x-*N$Ub zSze{Rku;?K{uSG$0^oSvL_nT76_e-A#KF*l>azdvic6l@@TfxwZLc`!vn1ho8L9u~4P3PiZ^|C=HZmG9$r4*-s8MT6NZ7CS{BUg<(`WjT^eivp7x z+^4*sKuN%2PZ~jsYhx^B65Ot2Ig=9nt(AJqQsU;e$)kd@85b`-u~cydH>T-<*oPLlh@vOOMd<8@8uW2d{LhG$xr2u zyY7^$FPxPVM-IrowPjhFosr3*qKp=@GK~vmsILcLl|{xDQI^Eah$q*`KtX(9RJq=q zItHX;amggo5(z}4kn30V8Rhd@Mg;RA_-J!1z=l$In(5MsgI_8&H$2{&RGPWRs09^&_;&eyUvZ$h_RTY3;Mr7%cB!JVX>toxYC!T}RUTZt0f3$d-!bkFX|pkVr^fmV2)YsBWMh^9Ic_CSR|I6P zT>BaWxDO;ka(rb%jxJ3|$ZiGG@oO29tc0`3DEJsm#Q}6d>7!B(!EF-El`M=KL2Yql z03ha<7y?NF3}^@d!dtFqu_uor5)UqTmPqNy5%C7ZkIa~ZHtEW5QvfsIqO>A-(PhJc zV-x~|F-cQBOD|!t77v(|Ly|albkCnbFk9jJN!TrOMUE|T>YAbt0KT`pRv8KdRU?uP zGM+*FUIN-UGF$?)9~rHJccx_c%I4^10L>7BUMds<;DA-()(NmxTO&Nby_syuu3$=L zGgr(CUFaQnJsY`mV5oVrJTM3@(i=Ow6m&YkkZ3vO!G3VzH_(xu;OGW0Svm2<4KY@R9ZLY4qP4-rlN{@TW z>ohnsK$3BAjgl;lfMzftu~DZD1W16)Xf`GjyPMWNDrFO|-;H0`O@rJecdjHHAdW(xv9zxtLGq zuN5sN_4mu6js22LrlkeR9tWsSPEG@WJVN&ly4`RT zl1`VPsuzh@J0<@qmM9Ydu%cvA3F%FPsmE!fm6xOY*JTjLDUpat6mf;#kS$0cLO#C~ zdV8e@Nyzl@2!4lKD6R=%f78p7Qw|~lzwX-tl1D2N8I~w%RLpTQyuJL&ZD3g2l`)!d ztU1JU$BsP`@ZuWBwb`j`tV;*l>aoE&#q*6|)`s(x<#ufq*t$zb!xk{JH~=joPahA- zL(2|;nnQkeB>}pay2fvLo5qb0;ss#%gsGsOuE^Ic~Br?L7mV(lspr2}^rqS9}gF zb-tU73qWh_02?!S)Lv&7m>6Hb$;1e1EKQQ3UA7(I1yCcf@qd?t5vs_9w<=1hRpxft z4glG<5|ELN5ghq___+k!HX{O7G$+1rRsxZ%Oa8YdGa8mzov3amRoKjU^ z0Jt^vmv>B+g{lTKw_Lu8Sc;_iOom=z$m~PMgUY4MZ^(EXbK$!xO1+Q)qvyy z;6=+K1DH_2!tHaSW{6WF)&)nwEg%WD*}GI zO|8FbRgB`6ZoHm0VD+^$6Q+|yNSPc*i`3N8vA?u#MwvLz#i|+vH2@k}8XJ6BhGJ=~ z1V&)H*cV0s4@-LK2ojN0P^JnAb=x0I`(?Zj=T;QVxT8tewFnyRcs+aT$Rs+zDky|- z0Eqa0ZWoe`D3U82GZVm!B{Z4|JFP}_2FYMw;=1zfRT(6Cm z-|{@J^GPj>#;_l|vETE#KA9LBms~C{Za3Hwl2{sTciGw$y$uI4)*i7vJkVJ9L27@>bNGQqTf?#|EdMA<_H}*?Qa|;quoJ)9obKg5` zRy986T3I*lQ}Dyr=)lnJyVYHUVv=2Dh?6_ZWasX3!~xFaL(&Z9ws%h@t_xOKY&u$o z&DGpzWNT!$Y3y4&5+U}_aYo-(yk|>YwcNiy3YHd?Cy#|M0-9ZZe8{hBXr=zM5<}zP z6pvhTfVRE7QMT@(Afo~I8vs6FV;38yxjw};GJ>8u5CBlL>>r8fLa-GeL&c`YpAe3?Z{YC6 zHXE|IZZM~2l|*mbRi%sY+^V^@)p>Cq6<8D(=J(>aHMUx%y1r9i=k!Em7xu?4{Ko1= zFb{h`Oki4MTg_l!27?2cAba*oKuCb39n zlkeBTmFpAzGEC(dgP@}upyt!(+f7!m6=b@Fq?}lpl0pOlqc<+6)~4jx!idZi(y}&M zkfouVIE-z`$^&v@c?|DaRMtW_`7|!F0+7<0fCL*{5qggZM?^Hpue8>_b-ApJLSQ)2ZWdKlY!rkfa6ByZ|DFkZtg^O57wz_y`Zu#0(C6l)~u9eO0Gd}+gT~waoo(E z05OjL!0+P74KgK)cgik$N>VAf6I_+d zF||=u)~W6q`=JAe0qpP5zCIjRuXH1z`4BKW5pX#YCW_-rHb*6D7%YvAxwL26 zTTzRESS}nxLWWA##yMyNG>$!?(10aDmMK|MWsp_y0T8scHe>NF)SMCx;7^r6 zsDR{z;6h;oL9Mo~0bpj(Kwby%=>#(%7=^)T8yXsWi3GqQ z-y=bfO@^^QS@xX3u_J@)XlqqaG-E%pSvVR3i^pp@1C1<>6W4FQ_PDIh4@(~sEk2%N z5`)h+0{mD`q*<~b`!0>-XBY|W4OgGiGU3X?yo>^r;$T+k6pmB2Pcj)KWqkwU!gXUb zmB#8skicfZ;0RdJSW@W9&mo{$yf>Xh5=e*%YJ49b5;#r~U^6*~FeVfIRPU>rbpUar33Cb|EShvb*9yeu!j@rJzg%B%8==Uy7_iF zaq^7x6$T}i0FVuh%Gq;g<*Ezkw6xHl&*P+u=(J_32wPg|81Dw#@`8a{q>|Q8X1BO~ zQSk*+y7sUYzpES|T>_^r1+*)+;e@C_U}!Ok(Td>W3af2X1AvK^Lmc%{4JOQ{*V-nd zS{-pji2mJ3m-G%X0>~nvm_!Mn7N^*3UVI<3dKhwoFe@s>M{%%mb#5Rn z*B_o&)85HkLXIvVOT~LyJKGSbdu885UQVw~2p8((F1v!*M7~$(kC^9(6|j^5GF*huv%hYX<1xTLt)*Z)QA9H71CVEv_^l=+n<0RJM{25S0hpa)G9rm-X;DE9CvlU>9b27| z3x`+b{E<~zUzo)8ff#|Lhrrc{&!eJ}Edp$8_Iq72IWa0D#iA_FP3c&p`RPfSo*0vO z3@jfBl-C;&FTlzU=1bKqXZW!i)0@f2q4gzMo|#l2bK~($I-^srj~(16^LV^B)1$M| z2dc zR9KenLA(azGqlvmqX#1L)Uk*>y5^P#m!0wi0IkH%O14-mH*$OaQeV|h;j3;@SoG?oRo;5n4ee;*h4_paOxFal5kT&R%TiVJ^pqkx0YFZHmIft7?F zs#3hDRAgz9U`YnX^)P-ORgeU-QV(27ETYo=i|@r! z`@ntj&?66mh21ZAfTdly>KfU9@TiPV&PyU)P{9g?73toh6!L?T#>q#P#;MC3W8(9Z zf%z4nOcoCD>j4Y10EpP&i_G60lP&=064J!bU$#7C{9$Ei10_Oh70oe~$Hkk>_A^?gC#H$X@%TZ*k!^og} z5qOdSzx7ElxTygI*C`pr96`dVy&Q+psYbXlT=aC+m9xpf^l@Giuz~<}I#@Izz|%8x6tC|CC@zi;Xm1!r6I26k z-BE$tS_L(Z+o4Dzjeub{fvMLuiVJLEx|qTDY7;Nm%ScZ|W#(MNBctM)8|D4%-(wGu z+iKKAAlPlu*=tmRI`JNZ>5wd8A5(}zU&%r|sJ(Jri=(2CYds;b$VPl-9ljqGnFKF7 zeQ@eDy(4+s(g-Hi+y>@~pa~{KgIYhpf+al%jsZnB6fY6XC|F{kWC@a`SKjCUsJNv< zQkAy&o9kcfA1lpCEB&qP4eWv-$*jK)$D#v(*NXqMY{vO-P5}Nyv0r+koKdzH0NI2f z+^OnEmaMt<#r-+h6Vm|8(LDWNR>NSjJxC4`5wKYRCd+b-jm@%S$1Z$_Mtwc!sttp! zvz=yReoW31$Y#gn(8{a=AlJmWPRBL`7ZN8gjeU_UjE@un{1(XpME5Pt%i)bxIeBEi zOplGIBM8^XO-TAI05y6kMx$|MPN`Hz+_*N!N5@o9GCe*nJw3g;>@YSoqQI5r+F7ax z&-1GI#p!fOGMSXVTpqE79;RJd8l)(Nphnir9zuc~zo*wznzzRN#}Xvh%E-o8DkeMA zUNyP`QCNb+kR?kth;!x~&k+k)D{tu$+KTItuKKlL;Jfi2+PsYpx(ib}WLD-K6c zIw`E^a)Oa{OKS(mcbF8&sMO>}OCj0_5%Bg@(0Kvuk*pQplc3hx>A)?1AHHK{Edl_U z7uXbmY%lgN9qb8cRrMWGjo;tU(4jSX&Pb|nz~>miNPJ=O`#82Dpnx?D=ExERn}o^8 z2)qGo31oy5U`wS&=76v#jLO4<(?c>25L+6~$qmQWWNkF7Yet2LOU`f1;{W~lKL9P@ z1Yo7*)cT~Zt)&p;+-5_`fxbY$zMz5?havWa{HjQdxLg1spG+c1(*dMI4zn}qX}j?1T-#IlXXyS)j{can^A)% zN3xJ1@RsG&Ww6bmR8+bUz`FrfF))LLp{$sY$ubbq8J{!E*xa1O_vi4+#yVv1Hhgx6 z2?4rQ-to?yoWGTKpX-&F~qXjdOS zC$eg5r$N`w%wQ{FFxI%23eSj)Bz&?ul94pN3tcGMn_9p!9QeN*V2$h=88X4vgx5I% zbTI_6F|e)riYm#3BiMhP2r?!xX!c!ogPn$S{0Cjq!+0)59yG;eqc@!?D)724Wa5no zQf**HbmC~NZ&YV@f?(KfM^ezD>u{9*o0!!%;@V@$5#NPC#(+t1WBG|CNL4-p+z4uH z=H}4KHY67M7(TZipGEMiu5FYC{1&PtO*l>_s$>ytS>mIzt_b!{1qbQtU@3YL}AH7=S48w_S`kmh#v;I*v0upa2$Ze(K2$W)1lfaQO2>XCS8Og%#^cJ^D)4)= z_zVIPfruqR%Jli0Xzk^7ScRite5{nP%!z9?45n`ZbFHhcl|6VqMME7pW*i85<<=cK z@p{Luy}I_=gyYA?Y)y6?-MBW|r54AszOGirf^G7{{b6}z)dPm+lAj&+1I!3$C3T~+ zG;HieyW{|E3$oAeZ{I85+Y0ai`{H_5Ntl8AJ8_@jba9=F(s?#mU$L!H!G)}iV5cr3 z03behb4^T{8=g;Lh$<)>4axwy21X#`wu4UK1hanwGOnxfv%h!c9sp;V{IAP*%70w3 zTfb8Wz$ld)k|QUN%cGAyq)pL3`N^Yl{SDX2>9c3#%(?S&?8GTKapt_7I(M}kIetbK zmNz8T+b`jGP6FXxu{n?_*0f47 z8OwtNvmN+d1hZQFCO%HLbGlh@U5u|&`yl{aM`yPpWQ#JgDouxR0agBECO>+zzqh+ z0h9=u$ncy9sy1YiR1D^Du{&_F^e4H#70})mnl96~(1)PpwU}jLY*2#EZUlUry3CW= zamu>>_m)+wva$yO zHUKtB$B^N_4 zoh@Li08`4Zeb}#)1HIDL*n}WWW@Z*6f*(h>5JWlw^jtHc^qbi~`{Nj_#=&s%02C%F zSsV|RnX0iL319@YZQIMV0@`K?lH>oGT$DhJ{(z;wxemwmHm>Wi{Kbv;sghJ- z378_q31koS4y3=JsSDo;Y{`vtg7e~N1s4Kq%n{gd&T+jj0#-_9wm3B+1HB1Zo*vfQ zc-XJKQ$B!Q0Ouwxq1Yb4p{OfU!|J7a`p}AsKzeX~dYo371`Fe~Y(LJ^g~@S%Sw;n4 z=T9A$)5i~~aqy|b2W1*SHqf7!zP=ooSX7x6d*#?>z!GDjP>{n1H>8jUkPYDVh&{{m z({k{@K7H=c(6G$U%}FQ}5<2bAOwAxsb}86#vOC!=ONN|6&9$#`0976KeI@P_(E9PY zUNBj{~>N4l{@b)l^L(T_IkPYh8tyRd0o<( z0dcs)($a}ctsN&QSQHIgH)lh!R7iG3AmjhY(0EJda;}T<@y&Tsyx-VnkxsKic9quy z%&NiM9013Fsu1e|Y$h{KBn0Lz1Awxt8^OgQeYpV%hhqrLZD1c}NvG&gP;$I?I%oyt zmEJ@``^DnHfb@a!ER2ufgfrnJ1wc$qAn5sUlKO;`Z)3r*EDZN+sjU$8$Q*)O7L02m z8<(pO%*$M%1X{CTS5pYIxsX$aQ$YmSqTUWtJ%)^zSQ~I*QHVfkJ_BPqz{XoYo{x*k?T{IKH#YuqigO{&8E#y7 zcBzb<%1ZWrvFz9z1{(!4<6upP*)BC;L6sGCU@s*Hg}T~iTwv|efZ)!4D;wB{7obVA zXMQ%@2}}q$R7AET$XdY$4$qCKvM_`UIfQ*>2XiUMdvc5ngEhgjrW&jRL7Zi|c3kv3 zckIN+w+BGT=?NhOU@|N+(hj`d0`?Gg z*<=_@cq9`O4wmEqMjFhj4nce3#0>K3YlP`&T0Hv5eRokE!bj z*T(9=n5xL$5d7)dK{m(VL11ACiUG5!yd-@(Ff2NLh><+<5G#= zNDo1l8L4>W#^2476Tyu8i?;+fKF+N)TdqyPYx8qA``7pw|7M>XlMn(Q%UnzdRE*KZ zwuF*jBG=id8s!>~7Xg{cfR0h(8Xo|T4cRH2Qz@_yiaBOS2LVn$=r_;G+wHVL-V)hUxBgIbO;*OWvCTw< zrAJS<1qolfdR}t6b!%gbRF_xbxR;9&?|Px8{2L5viA7dM zP$QtxMWocrMrC4?0^Du@$qwA7NaXTu6qw-i@Ez#>q1%>nEisbO)wWus#pn`;KPl;S zL5>|bBtQPq1M-Wf9+9Vh_K@6v{~dDe_1DR%(`RIIaz_T2)FW1oPgWtb!RG(-Q!>`N~wit&&{kgZSTN;XbI0JnYw$S%Au9Wq>&Zh)F!y$lHoZ2BF|X2oeR zsQQniSJ?YR89mp5Mv?LMAj9M=Fsl4)2%r&<54Q;LV11+cELfgh*V0(}qhklf8e};X zei#8raRiKd1U_0gH$4r_*ydK}V zN#*Y5wl1N470ZP~cz??GYXJn!WRD2wEe-A1R}Lv4c#ao(C5^yKrpUEQGDkPSzPY{; zpBKVDbm6tN2+U2|8#mjZ0BiCgX>kbM?Q;n7WX9zPE-W3gSBPU&*e1X=4)(cq16(P) z=J*}W;t}i^1PLx=RlC73X*$eaFRqt$Vn4Iln+b{^fo#4X=SNQzNko&fGlCjRj8r~W z;y!OTL5u-#4{o>b+=~n!KzH%)8U;}#2>490yt?{kBykpHZ!8mkw+08c*oyOuYi(q0 zl%~_5mt#+C0Hz)QR?unF`DL`b>PttYm`&q6^kH9l)cK!(A6%Kk@ud3=m|%5{u$_Tz z1Rekpr&e%KEw3Yb9MU^7i))Azxv2(CV4oh@w<6<%{py#>=4mpmJ|rkBi?fIqNU9u8 zRdUjqgNjA2nNh00va}#EynYtoH##yT30yDx_pQq0_^9Ojvg(|lNTy^8tjy!aca9|i zgb8uF5K9ae@pu9fLQEiwHsM_2`*Sv241nE-bIFVAjAD^eiLqMCqg=Bquc%R0R!YhG%pxgsqDzLG;U;P z6oy=yfJX2Fps@c-!Au$39^EeAx<|fGU;}uOL9w*R|C5RBMg?Sr<3< zx6#+Jq1~>GP1nlyG?vPfENk*Jui$4?Xc<#2tpH~K>$2VQzpf}#fZe(WfCX@ z#A$i>p&x*mJuW{7p#Aj6_sfI#-YVB#dtQzmKP*d2^Llb+^F^^cebP-Aa$0fWwParn zEf(DfWV|Ji5zq);T=SwVz8&m}td5LK*%^LUN0&pwv9$J}QA$t8k6Y%mu!ATvI4TVjUXMhOAu?kxrc){&XhcAw*JKnI1A&$OQd}P@rjrswFn3WM z1`uk+#pba&#R2xi1?3O|23-gPw{A&cpEV#rHJA`=$vO^h_};SvprBuvpvMWd<24jfQ>Q z-C{td$!Xt|DmOQFsGOO7f)wUZmQR(V7lDfmlBKS>p}tZ-l9{u!q5wApbiM{4sFMru z8;djZ#h zLZ!y;j%F|yWam)?B{rjXa?HoxDt+HPg3}b(7o8rq@7$w+OrRxOrHcqvYF8pSanwIq zRY|^GrGTW(;dqQJixy{em>|1kV>Q_t-PQ@D?8Bq)AB8t8L2WXzZ2+xZcrT8y;XJ)f zrbd9P0C<%HEct(K6}Znew@pA}UsgSCbv76tC(GVsYVgQxoH#r%AWQReGCwy11~wqmlSn*=iptzpmsceiiisPb6_2HKBZ$#$rPQZp!!hB$ zA+tiV2Jm7_5G}6wTPKE#y1YQsas!e^x~Oogtg6AjExCX+Hnre&b_s*MvLw!RK(bn{ zo!N{fmTyO5(AH3o1ei0@O4qQ{YygHJ!+mrL0iexw%a8ZF70@=PR6lpJWMWLFcF6(ScdQ5ibJ-363;~R# zN8QNON(_#Fv#eMS*0j5tLXJ}Z8rc~)DjX@_r&^KVRg&PhDYIj58%v5;?f{Shu=rU7 zHI^<3WLItn)5FI1-&@}yHLYf;Ye%Mzt<&liC)imil9OmGCp`d>g@t)}=>A*fsh>O` zx7~7$+;H7_Idk%etgkKN#LLU!11oa#jpt=}WK=o~R_QX~fZ+tQa@`87&E*b=#~0C& zDKr*MMU%KNA~>O);twGExA}ylQ)uAI^)P~6Gsm)EYiQ^cPIczm%3y!LnwZiHjw&M; zGDc?5oVXhehBZShW_u-v%!y6RY=C73KH1+VXAdvQ%@>Z!nFC9*JX%nJ!@;>x1);gY zUZJ@y{SujRdGUU|kr1|sI&`d#4@d#QFX6PxIRM%ESg#zNACj=uA|a~m5NtURak38= zPA)DvTmWu-FI$%Z*)N%zLlSN<32a^M9V#Gbz~;dP$A(^lR2u*#2mpuzPz}hkefVFJ zBRB9`HY{@;j2?xms%kAc+p}yJ@gX1p)alkykHBZae&3FB$JB|86^~Jn(F9gQn;rrg z)rTxMwl^EFZ|LA~7R-Sqv08v> zH-Le%{`Kji1Z+m#w`5|bj#e24>!sA5BW0pqu*sHY&30QFnxq^1hgM;6k5z+6%;>>_1qf}~UZy={WJX+*;kp&e zeq8gS`^k>&dv#5Ofv^>T$+Z$Ik`g9drcP$#CNXxDoI}Xc6uj{JIrjg`ZM(tp0FnrV zd+RsOYa4V8tPx zkTJv!4&^xayQ#clNLx+rOYE;5@Rb z#p!XG9v_qh0LA43YqKIKBgub1`SU9Rp~4;!!!Vgy->M$7}D5IpE>nDSG-Xh7hkvpgl&_>J{V5*qb$jnR#pw%>M2793kJ_Riaus6#2X+}&bKc^{kTulp(G5feU&&`Hl%4Tf7 z4;@iv`?E+mdZo6qQau;b2&7y2aIRHkSmsV3< zCvm@56`*cYC)liCy)*+h3xLgq*Slnp3;Ts$uvqK^X42I)suHE0(@wC=vOP5lTswAG zd{p;(lRB>eVjMOHAA}lcLL>Jx;X%w%pBuWNC=28z<&xc{8@?6H(mhhh^~vhOqFQ2&4G+o0$S^>#4sYa&{Tjj&uYW%%;KI zz!LF&Ij!0Zur_tH>$%E}rC16dUkP`x-?lRiBc-H z*}kK>4Xht59=|#20XQOIWP6FnVg^W>rLDeJ4)xpR{$-Cm0zi8hw?8`+kY9q0y>Pm; zJ$u}XzXQtBF1?cDmAiHO-W33o%ga>JN7Y_MU8n2-fN>-Hx^g!zw7sCL$j~SZVMF%j z8dOtzx3V${IH-awu{)M9aq^edDuYwCB*E2tOb zC9xyOszwI#l0#-SRxC&otjvlNh|UfaRFLY=kMzsY#Zl=Cc>qdjx%K=pu!}wwZBQyt z+o+?9V{&R^PO@RAqg_*fEb5_(tibqVZKHyBVkj&b?k zI*H)orn;)Grb(*6#`f%~mGbfiT%0bknrsMk>}vw!ZR(J{d#Z(|&8+W}xpAb*Aoed= z8b@9b6zIG`XOW!l-JFG_+ICmOWido|UA5#YNMq{{JGbqMTSSD_76D_G}Pe@4s< z`dSt>A)th0*N$=o28;S55|9%}9O&1W#nwkwhW*ZxV9;Sx)np5@WP%oD`3GhPr4V&1 zpr!mAUK-XC4^5A=2(Hy&Oq7^+N$mNRGT9!FFZWR=0Um(1W$SM2>o)a+ zWa34!Mh(EMt=$M#Q)-tW!(#cc5lIF=mu9sDwad5c1hDb*E48_N3$AHy+i)yOOp(A! z04B>Tt;cN&L}ISNHsdgSAk_-$M#qI{j}L<9w{FLCx484ar*1UXtfb>R5BaDB3G zjlE<%C&}U{`;SM%0Id|RWh5g=_$8sOQyOl6}N2@$3FoO`x3H;-*j&YwOd*;HCK)>hOJWCWlVPbAeAtB@}!nDzDL z0gP@nD5e6@WVUMwmb1}VdgPiJ*9^x82bCFaR&pXp+PDP4<4!d*o4vUatSRi67|1G1 z9Rgs7d~OwZL;-wN~UTuqE^5(G^C4t0@EfF!qhQ_)& zWyXz-jVfZ|bcbdn5j9oSD%lT#$+lx3ljZU6TD@Z`fX1FPDjO*Z zdG2IDw`T!rmmZ*jkMqB3;eBOi*a(6I zKZ09_(Io@LF}d#Q3-aT~?vW>de4qU2(L3dqYfs6YH=UQeZay#f-+7(fe#05LaAHID zFHg((P+o?S1s8e}03g5k08TWrr8SZbOsm^!2VmK?=AOcd6$=FPIqU-qAV5WNLJXwB za%gc988{7meX=+?D5C%$KLQEYKxh#)f}oYgb7u!~vN)7gp~lUp56GQY9hLo)1?>kL z>jBv0@O%KzNKY8-DK5(+Ic;jr2Av9G{doT(7+Wt+$X>roGCn(krx!tVMD43+a+~(r z5OjUg8+5B&-;ZG08}!KNMNnG=@bUZ1_k-o-5>fz*nCu0>rQ_06*B~v(;@to)es}h= zQMngzfl(vSu{VkqQ}jWku!8{Lb9lhAT6GPl9juG{j?((p=1#pI@%j+F!NxDLqbPy` zMHvP#9y<3EWN05{$Nr`r674kU@aO@SM80AWwQ!QZ0 zH1XXHc0%z%Wd&IY&e^gWu^6r5K!(YFD_+PMu%a$p$ZSex9~W)6Y5)pGyp9IUD(i3U z06-&i4!MzV^dPxNh!{@|g4l05%Aey3Zs|k#RY>TB=F67%0pr{6Q8alPTAqh}pBY9U#lS~ivN)o_H;S2>XF0frU*mFJJ zV`mwGtW@T!#Bt#o7Ma;*`EkeYO4*5xR#9`KS#eu!0QWZSk>iAI8-hQXwyx)5pYO!} zqI5nT2`D@Jf7^TS=19`(%r`Z&V7C-k=^>GtXZ5pQH6D=Y1r=Q+=@r=@gKai3>Ek}g7+ zfDag9a4Z3#!0Lp?v6Fe;UgVhG)8l$S8LX$w+bQjb>M1PGW>ka=B$SN0&7Mc_sX!tlU=SEa}Fm=$xb zrW12XnWe?D&!1cKAdB1AE{IJn*#Znl?09!;RlrUgmJZL=tJU0R31f_Cv=LyV{m#$N zc@7%v>+L5`1v~?`vb1Ek1ZJ~SQx+A2x_I$|M=Voqe_&w5I;kz%H|XvQqCe>jPd~zz z7^S_2Y)s&{vbbPNbF(%xI_gbCw*`vGnbB;&vq+Xi#!>(s`GlOpcTRB8*20VwMyv-| zODddE!QzTbN*$1k3QIhlobe|hMEr950K#jg} zln`sEts7c=(Pce3`A3lt|7pb5yxKO^^y@h^`BY8o#c zppodDCuVh86Ff(n^qImcv8pm>WDLUg&!A;feyN5i##Rq!Ct{GW_mcvtSzi{rnzqL` zFW8qKJht~9U$-R*t_f*C)OtH7)`J6jd`Oy;gj;`Cr>#wo+V#B^XH=g)y(w0;ZjY~> zvo~)Y*oD<;TOIFnf6kq~RXbQ3vx_T}wk2TN)qcJZQ+z0v_Sv)B_Ta*r-9K0rz|95# zGc#a!cBybN@B7@)e#ScEVp&O>?H728sln0!w0Qv$Z0%rW##YAq1#T(-ZcGAnT0)vY ziFpCwct#qkw#NiHE&(^yhuJI$7MVh@_w{(PFOi7^tH6?ALX=~oCm4*3{4gT-NI=FP z2B2lTdo7#kv5Yj(VhJgL1CSw~3qZq^NShf-Q^DT6qK7_HZN4ih=Frup-)Hna?OiI} z)YqVGXgkmEX(GyRJnu|Gn^XpvGoVHjNUt$R%N#MV^2$cN#N|4Eqbnhle(LN9a(6Hl z(fWdp&Z9k@wmv&y-C}3>1u*;eCEEita9^)p+)8Vc7Q44L<-s9+U1@8mu61AGtds*7 zSxVY4Aa!GB!R{TbSZ{}zfi(F|J?|kgvS=fK*`;mUjMn!x(wHX&p7<6Cn!yK2I~VHY zVdhP>whF|W#niG=c*X@>Q4g73ofwc(G3X{rOoYviEpGZN6jRL+K*M}sLI4<`7P7Ov zLVB1Hpiv@LTH~fw{9y!x5DiIzXU?}y0>4SDari4G93^63Q^E zGTnoI&F#MKwB5UXU~>Y4s~2}{ZFx?t>cIU@RGeQD%c-cqQc$dO(3}#WkuHOIZ*ybS zZeG7)s{)=2`+E*R_pe{KT>;zh;E?uv%XT)mtW(?LEA!^FiKIYQjC*)O;7cNT()0Hg z7goFxZ(2aNG&5tDD5JHt=?rmI>}*nOk4^)t^Yb=6HsS@ESLUaTCZ#juBkuF7tFExs znJL>@Ua<3GnX9wonzvm7Jrou4$x1CZH(&Rv)?(4P7a%5Sni5(u0XO~U(qd?&h@=P_ zakfUJtw={fp;6d*T>GQE7jCE%SVXmkbYttyLwUY#R6jZy9 z3*X!8n%J)#KkIDEE9DbVB8~3#QvsN8U6Wi2W&${osUNj$DChajgfD5c*%$ z)NYNf8EcAnTZI^4MV%N`S^%U;^YrmU`}t44w4Z+avHkqpAKEX!`N)1NruM5Je`ue) zeaCKH+O-P;v!}PO*_(H-*@LSG_VKg(_Vdrh;@-cn@xXrg?1p{%<}JG>KsvWPEiHG! zZtT;UTI_0X**<)H**<=%-`_fKA3VBb-+uH^+uyJ^uAj3T+jCx|_w#4B1YGNOOM>s| z)ouIW;Z^(m?Ys8=gUep?@aYyHjFkDFI)`#<~Pz65i(*37t<{ub4@ng!oXpQ{N@M z^ws0b8~U!>OIHz4LL?wT4-_UYl_0@vn207M;1iy>JkZ_m;8P(%L6l%yv`y@&!+{3P znF<>YWCAsS2y-Gq9rq+COH>v(oqxj>S@HDk>U1l8@-Vb_tL+0RV}~R6Bq@0akTlpQF7rxEv4z zsuz&N9kfY*Aoq>7I`ls)mhfJk9<#~*Zf~hGF1Fhu;OUn@A=;2$QACWT#j1MR#jvFK zRMQS$ibJOa18rKW$_2^<(NJ4bN>R0dl@=YtIuCNrs0=cm?bbbP5+HWySUr}EG}=um zNj)7=Y0(2gRTn)ciWj>NP1grdz<2_P6QD8l+nc+W<8JIqIZR!fdM;0GyQsbrfS?CsivTes|kXK&ib(4Yr_Ts*%gz#6grz4KZ( zVxyzu*4;ya1Su_2JX-Y5boc0;5`gt|OOYBI6KE}a)sSdQo3lCsK!~JVUs*P~bCair zzj|Cu@XqzCdN%|*dN=Wr(Q$f50G7~vA&N2R-G=of?oEXI^gp#TYX!)!zkXZ_AT>8N zAI|1kagpAq#ya1I=iP}9Qmk%%Y{-4ilLKj+9@aT(z7u&nqr&IYN#F(8fT(v>Ur(R**&FTelPe*M$W>{s7? zYM;ON(7yTM8}{AjZ`vns-L@w;5A4pRErHo3`}(7&_TEDQ(d~;~>glh)eb;{b^N;MC z5ANBMt6TP&w*UOC`}XmZTXsj<_$LCo|N9@lw?F*lmjbcJ-Yx|ub!lzFe)j28`{J!z z_SVf^`|_tUN4R42|y!#q5i<9otq_N)xYWFoI_YKIl#NO1L*$ zB@9c7QgNx~lmsQ1~!2?P>>|f_Q zoE>lzA3zPLH0pY~1a#E5BuSJ!w5WgrMn;fGh4$OjlyJWt(Ui0)>5%5TDfUjZA_aD- zH%UeFgkJpJrCDp!_YpCLp&ls)DKSG@T)=5Z;K{Q1?(VNDeFoq!iEon7kA5_aH zk(zXgX_&PXj{&jq1+nmfRIB?{`vh)i;4nV!CEyV-qCA0*6iO+H+zZTn0V^vNC{)@h z0ZpCQb}~VS04mgvJIEJHTPKKxe7#6rt(%}oDWqD@GkNVqu9mQ}v%U`B8iW7&J{%5eIeMpcZvZd=7$7D}m@W}TdhRf` z(EpdO=ZJ|jSAvvk|1ca1AZ*_Q(2?Y!?UEKme{B!L9wGkOjzz9sfPryvL{)yu! z^ls)kh}8(-&zwH1xtebkrOfA~o5nk&gi(MX)=+O<0;~Q`fve<6f4WWYKHbDyJj|a6 zTOxL;>VvsAD1cn;Y@InCt*x*(R#WzuxBCTXo%V+(_|F7p8Wbe{7cKuFP-DDwfR>{d zB##Lv&6uDLk6zTv6b6cTSuC+Da@0K7LoXPtD`aDA7c#Gak^PZ<9XkzkBSHI*elaTR zQ`eC}rIDb_RtJPeen3Y{p91P_Os8P+Rwju zX5V~x-+uJ&ef##q#{#&|1#l0=$gbM&fBhr-!>_-xpMCz8J-N1LS2pLIUA=i@$A0qR z1AB61!>(^l+ow-&`1)&`Gxpxy1N+%0kL*nWWWs;8Hri)1JslEoqqeN|b1*X!qE}}<2h;3p8i|xa0@%`Roo*T= zK!eCb7!{FlWu?^uprA-_5fO@75}^pF;q2!#O*h$hV_nn=^-PI&OhgDZ?h+u-Ww%ZO zv`8$V$Qw!$&Rtek>k)SJBP(@bMG`b@L`szA3%;0ooddxNIvt z@<_~%r~rRR+Ojm^;l6&4$ZTtA6*K9!qWmID>K*{rj7Dke)HI}Y5&#x&j<|_%QOtOK zc1-NF)>?J%_EzRxbH;f-EN~j=CZIs~pjd)fEF(w4KNnw~1Td_WYr&sUh7cB0p=M)3 ztZYL-*%ga;xa)p4quE7His1gEGqw+qClEi8Dk9m>(a~#-M2v9GA7XQPn z!v7gBejkny?6An3kgQ<;09dh}C%!e98m36!<|O-+0wks#=Cz&9)o;!gIJkMvo9FS@(})^fe~9>S@ND|6XWAHF)`^r zz{SNyTUlE6{%Kq58y@O^zEzU0({S-%rhHQ8sYjgTN;rml!YjMvL zjOsm&+k_Y*q4@o}u4Fv=e2i%BG)h4!D;Cqu$rYOy%dV*r_+WC5*`Pp=V%C_~Dcal~ z6Oc>UAqb4Z*(9phR#r-pt?=Uz*@%ULq;`UkP#P*LtBu5c(syDy)`gLX{px0~{dm94 zetW;${uv;9Hs~#5U}h|T|1$c}ay8+w*`Ji=45I?50wyI;Is~d9xtd^(7r_hg3I2Z$ zU@xu{D0$MfCN=Dvl|N0~Q+wVWN-~8fp`}&hNG@jVczIw<0Qud*kZ1UEi2--`MTlMK?9RFIM(UVD{|Fmbd?S`{p_O z@WGz_^_NfV2EMbUF=ui3%a%uaZ77+rfsTar##?N2YRCgNwk8JzSc5h{*yWl#IcdwI z{q9pE=M3`zJ+#g*OxRc#1%88Qxsje;P1GujNT4l9z|Tpj$Lbr6W}00cH2h46Wwd(0 z1l2GiVp`1_tt|pHv9z9a(8(BqjD}VuK}^IOiM%i}0IfzqLe-9#7!^J!fQ)@GFdM@9 zC~3u@>PCr}Js{*@R~yl9+a#>;uh4#_$UFVkY9D!8M-`7_no|gFqQnB9OyH|2uc+6{ z+#z8trYKM)>6zj5l$Yjl{v^ceX4s>J+C z?35Ij)4G>{*Kyq^&H+Zq|HpJ6Pw0O@6rcszFfkLLQY-)~L`e`(*Xn)%Y+NgVS5;Bv zfgRntzZn5HiPlq-lTw75-A@LPQF@EWKmsbVeSJ1C&})PES7)bfb7Rem4qv`_(W4ya z7v^nm=bWvHp%MAGva)QO0y^(sM)^4%V`))J?v1NnJ)Z<@0CZz*-L^J1+(fxAAiH(- zs(tY0o3?vyM<6?9lTyYn?(d0FuKHY}7aD*$F6Kx68EF+LCqy8kY~kO+L`V)Q?7Fw3 z-Th*e1f%T^z*JLJrFTyAS=;xd^!`Pg{QFo_y@&1-JxgMLRe8BrUBSFawULfk)cR8i z8_pzse$urX6DISCoKljjds>?9+E~nfdbQiW*>AUhxZh)cAPD4;nf?AzpZ$}@O9^Oa z1ZDsgQB3%@LeO$QmzH4^qJtek^}=UNjBZZ!^?B}31C)-7ZJiNtVJ;+pjXX4hLOekm zHU`VXr=}&_W1@7Q-1AXj#pOXAMf!`SI{WR~-X;1U;XGU`{LOxfr&J_`4Riz z?ge{vY2EJaF9)qub{Fi<&b-|dW4pJvU_X3#!G8Ji1AFuGhHZ#xUDtjuOMtD8blW=3 z5C^)%%KB|wz_dLxY?oH1b<9EAnjW@=!Hh>U64^)q$j;ojM>rBfo)z=jTbQ)jY(^UX zfagS!57sCxtX+b7Dodf^W-HgrPxDR$CGA+cI;c7??GCN^P#}^RTR@25RFK$ESMR6#;Eu~-I$u6s}Y1Ze!e+HO&twNmx zwG2sMr^_=9Il1Pp_LQBKkR%$CJUTD=qL^m*7~L7?M)ZBK8+^Hu5@*>6rG>*rNMYDj_fCqkF_L zDy3Wy5t>eRdf*M|5%edcDQ7VeZvuue_X~E?K{+DGvpI=~D+9pB+s1=R8dTorm=4N@eUqY10ib;8g{BzGTM8Nf#oW%3zYJb{~z z(ZyoXl-Yv$umtpI4Rh_nzFoO+-Y$xn!Nw-XNA32F>ke2m0<@@}&7}*Mz1n`cfPj`U zJ>9*wxxQ(W0?M(maR(=YJ(d=hya4gk#I!BU&)fXmoU^$;ts4_i?QCy*Ajs0fqFvZO zZ*x=AHaj^jFdcMdgK&P%j~uiXG5>0T)TjWrTM94LT*zVFS)B2dkh&_d+WcJ2!3xb` z3JlZrq25_|QlQqMZCaZfHMg+JG-|HJq}=w|P`b^i+t^rFqf0g5_D>owr4Nnh z##b>DiWLQbMa1EuuS=iNmRb7eQ-|z~?GA%K2oS-CcFF@rq)m~CEha{g2Zf92VHTFU z^1u-R8x=^X8WI#CX5Ybn_&>-|W73y-A>oSJsHIXpcK7C0`}Oyq+3)`5EBlw-nwbO*1CWG>#yuL-+gFbzI98CYRi83_^R01 zEqhmB^yZCo(w4{EjCgr%QjBTPnG)u~;bheI=7#P3{IE@B+HAVJ&7KIPK6`S_-o3SF zzxd>-y>)%ZE-vf$n__MItM>HLhP`uR%iec$wbBkFNu zLNAekb3*{OH907d%i8krfJY_{C*xj#_|nRZotquAj;2N%*Ls3P068KXNfYRo<`xw@ z8_9He9uxkaO1fEh_()CsHzn@Lo_N zSBN16=EaD0wkEuf8Ni0Ql0Xqa1^-w=3@qB%su!)oGRbZML=X%>2sa7UdHBL4;9zaA z41yA1fv^qEC-lw1YzQSsv&Te*-;877lPeP#2BG?a{|`S}fi!upi;m8eQ6fnk^XeIC z`T!*UB7}a8z=+;xJSE-5-V$ zK+p)kCwFUPXw*wrb#$aW7$qyE5!2%N-8})=yuNEPnt^t9cDf02YwMg1YMafCO$Rj! z91rVz>OyvQcI!EkYCtYty`EW6l8h#t)m~p25gi9zR1)ThL#Pg2zFi z35AKJ4NK^q%9CcU-<~ZJlc>^-ZEE*+F8u@Jwtuj1pZ@SY`~K?>?Pp)V<1FkqKmFK# z_4T_Ryg~Hhw;w#P?>>HPpTBuSfF@@3?Ym-MZ`xP-?nm$57LZ*Qt6H?%dvkVSdDIRT zM+Gbs_Vv5k{_X2_YiG{3r-SITsooA7Nyj}belpW8b~a)UF0P1;&D*t&Df{&C6?=MF z6I+Z8_C-_1_0e8i6|;Kt+P1BX=y%f2M^jO|yfWeJZF9U&06Ah8mPYO2f&QNy(Eh24 z(QfOSbcEjb>E)a4@3jd{JgR-{%#P}F$`TC?M)S(`De5e?x@JZ5$4#vpOea04fC*02 zA9Wd<>***Q1S-U19TMdDY3OGa^{B)g2|k3j=luvYD35dYY_T-kN(tMDe$!1yZvjNIt=I+LX(G~;d?nNP@@l5St(_e0?>mABINP$0X&59HxWH4prsNBwE+t` zj=+-MU=&=%=T`3b0YOmX;q(L2Pzh=QK=LFsJM==6U=K(Z>G#>5erc-_H|6nvsRSmD zcuFL}fcQ;OVW}SjvmU0;ijs0S710H}jaDfV7As=X!(CF2x)OF_b=>-rVpHz#qB4jW zMv;ysVTC}+)3K@B2zU|vLfyutsWCUBW~87D=$r})OB}2b_QwPqA*h@@b=Co{sHoEG z2@={}ECnV6BEW_bf)5}@r4bUMkK^|afk}hP>;#UmJwCMX_xuhpg+;O75WK>DzIHme{5It$ZpPM#&FjR;P$uY9aG`c5DPxH)4x1T}yTP~#YwMDuii8k$-J&{Apy z24T2AzyMPP956k?+R7`cJZYOm?0VhfxCA{7FzHwgh^;Tr8#N&b#vs!0+{T*q_jU`+ zTK(C2nJIx7U8Z4Yl*A&(twTyts*@1^O%DzM%vP6IoM~mm>S1jZH^v0X_pm$6o|rE8 zc6Y5$K$+?8x452RM9;>1&FS4EvAu<8;I=lgqYe+|AxMLWCs5fGAFKnLiUX#I%I%+A>LYZvUZkKVBFz7P}p{$u<3 zkKVHHK6zq)_2c*LXP>`e-wVusEKq}qy>supy?uAj?g}_aUjF2b>keq|-r2LaZl1GG zo?f)ipIz1GZF_WaS)ep(E5luG7R1*Db6OpfrX+A%6Hpy2j@d%C(*_gG0=+)Fxix3Q zZBbhq%-FubZhJCo6Vk*9&A+DO4Ro|vHWjl)0o;v^X*)kFpcErx-vo-hcWcM1dJG%} zcMz>e&QeKXQII!AStNnwqK@4zc1Eidnqg)IUf9I(AyMgLWqib@vVBGy6%uO!3X-35 z1qM0N!V%c5(RK$7x;4YVU}b;3^c5=< z;B>@0EF~brd{`+^DHE$AT8%)GlM-k|>H%o@g$U%}cmP_y<_-IdH%0Y=#vOzzN~vVf zr1=LUC&qpC|~QLz+~5xclJWP39MQhu`baDQ6!B5ou=Q&EJxKq~RmCZBqH zXJ}_r+vF8$NG2ygkOXy}FXq!a2_5buiOU`(sLy~9K0IfwQXHylsH}kr5k*wsbqHiH zGAIBIu%Z(;;rZeE*CYdu9ReG_0nGT!cK{Ut<=Y*8AO6nweNyWLXnba{Jp+H40~SD~ z-&c@2A;ltBOzW(`2tWhO7$+I9H2nrZEYLm57pPIN7iI>S5%NzmKKChPYm91v5zI6p zC5Dn#02+P9W~V2-dI*g?Y4EwSFz@C@DszmE42r=C0Q5c)NP>T~y1H6GMFeB74Ulv# zCN?CdwZ69QzB0^+qa!0WJUDpRKP}_UK05_!JKN`+k+mh-ZAy%7TELdjyTW+_#zDWh zCJ%tAN14++pt{M`y)`#8;wPIKmJ-Cd>GQsTctpwGRU~MlQpaED26Na-d!0gZj`RcJ;`@tb| zqa;>-QLX#M05N)_0a{^j2Lk}}iXgu3FqzsxE?5SjN25?_hD1#2I9>{i2uLxvGXgTI z;HNSpHa4|v%Nu((v$$dF(vB!J`pa)Ww%`2xbNl|YXZH1n55&;kv0r}mw%FMF8t*y4 zefHK(`&<1_RN{vZF4(i{oA$x|12M2!0opnH<>!y=oA<8SJGXc2!G&e9r$uK~4-S?E zPD8df)@>ISN9^A2g5BR+5Eu>FWKV|;CF3^P-6nRmV*B$$HYXN$d3C~8hciBQrUxCc z76&?QG~H@r-R(Bg*=jchU{Cd%OG{%O**K$#wlbQvl<57CG{DV?QQMuHvSz(V%?(Yi zxDHFklnSwH1n8G@xSrOp}TLGL9z9l8K623&-6-j{ObBemq z1^~z%15jW|VO|-*9lX@70vMtIiDbl-muQs+r+wn%qNyd7@e2h=6dF#n3Ro)|yaEWL zR7wa@ew48am>7{$Rr*{ewo&FmCe=C?J~Xz63C5_eC?SA(ll&z26-m$%Ac9GZP<7ZE zpBWW8UPo)n8f$~(Y$6QLYR+J~q(m3Yjq3!Is0|6IQQZW_#<~!=xIWkr=1-U^l`@DJ ztQ2EnI~sn*^lWgBqw&^AfxsL@z7Lhs3t(s3CxIDN6;jB=jtG_^2&6&JaB85(CiMJb z(sp|!Sk8&{FG*2KM(V`M>8veKmH@)+ND?t2>B%_Jrx6FL-25UvW1Y9o4+dS7FA&hV zQQE4!yvo@Nd3)Sr{A!pc2_zxemf#yesY1`s*9(wPF!0NTK*Tx#jc&~4m11#+;KV?w zrQ{XcavV&8XAAW1z5rZo!!iW4@N+nVZ2`AnyKox^Eio_vEJx?bGYx%atOLm0e@1|s zo*n1u*Q#{@DNDwQGr77>l7NZ&taLErGu7nrpYpsbbe}K>H|kv?vJrrz=HvA%`?fSU zZJX;W)+#|x>li}#M+8vQ)6-&GV#MjRKxx>6LMR$MAqGahM}j$a&z-a7#YM~Z_jxI- z@zGJO?-Fo!+w!u&XGFj6>=C$i8_hlYdItq=DJgV8FF6#Cj*hgL844BU$6DO7vL_|@ zU~|D1#)oZHpi8IsL}R_B+hdk&mGY|hoC4)UI+7rrn{!t04Sr=Y)Pf?tw^ahBh-5*t z=2y2ZjrRFyYesP@(_F)}-{2MLEx(STCMp@014szXY_1xHMeQcgJtRVRMdk) zzTR)Qe-@z8|LkAH%3d@%^7$nMG{EbH0jLScU}VR|sA%L#apGKo*(re-CdSZo$e>uU zcdY2M zy?<}de*C_+eXwgEKiaqN^!-mizGq*(b;W-C;Z6PSzJ2@tEqi)--7YRq*jzSg!(vwF z#K1ndd)}U2TC-~cEc{>F)1zWz-F9nx&c1wl)vm0K*`<{+Tg;|xeYD%IZ%oQ>z4Pwl^#79ZgjLa4O%y$;(oSz2LLL2h||ZqOm0af~nD? z7PTEg6Xccwa)4n(8Y;=q2vG8?f|mQ3L=tX_q();^RZu;=Q1hXjLeyeSB_$dxi}BBi zE$KIy%m6RUDu4}P=7jYFIA?Q90w0?gIlxL{Hyx=lp~1>dY2MV-wRlt?W^QMC`VE6f z$7WrRSG7Q}3AE^2Rw~v>QDbK?66!==dSs-IO$!;W382Csh$)Y}Iqv6a2}{0@N-L*o zNV=^}tcd<-upuJOl6G!k+?n!))j8{ua3SxFK#Lp+dQ3et(uT{5B}~OYV9f}Sa|@H! z(IQ2mwpLnp+WoPK##-B+8MvX{( zXmrV@7GzvZdNA8(g94)^v9$TwS(}-e_5^F#7=Q+FQL>8sGZL$ZU}1wp+JB4K+Mp+N z6NE#s2<5E^0-Bj#5c>)uU=xX?-kYdf20Ge1EtAHi+3ufvdiwQVHQRuW)hDnV&Sv#4 z$Ls=~Gsd#s&gjm;mOZ_7(XQ`p+v3=$6xk*zetIV>E38I9Q;?tM%24jvT+Ll_GiwBB zC|HF$mvRABjg9rDq*P_}`>a5aO8k0Pr8x19pU`tciK@pe>ws2aRPCqLOqG-y{HH}y z+=knm?ZJG)etx~rzS?WEe|j8%8Rf1B-G`Y0XfI_R+H;elK#b4$Kk#K?Qp^*Gh1K%$ ziMd})AO_1ikr$X5VPD4tX0Kw4r+=D+5bNCx30w0K=9*!441!8tJz41OVkmx`Usmr; zH>>L64rtLt#^^HL6zj0jsaacJ->|ji1-o`}&)$D>$A0+iw*BypTlR}j->~2O_yhYy zAoKLPSe8KOs}FA5Z+`Ng{gs&8r%$ffJ2$uOy*oShvmZXRFW$Ol-+pk{K6~Se*xHV_ z%3mImM%Ed#u}s3Id)w^h#(l z?cVtr+ndYUwT%g9cQX=PmsTe1{aYKhKizNd-q_S}1k7SxRJEqw9#Ku?Ad#FK)5}mK zVTOPu0h6YTB5`cHx@Ccv7Shy+Tx``Q3T zd~f_74Vh{Q#rh7gZP30`gxd=oVO8E}P+BPq7;_N+8mw4O1!!-TeOi@}yOl6nj~&6)8FcQgkvBG=ypsMTu5S@Cl`vUU}`Lgvu$S zrAfD#f;o z#Jczlt2rjN=78fqutO%N<*Ua}`TqDHPziyF{iA@mugn21_}#HXU}PQ74U;B*zHl8Q zV28nAKfcW&0P-7-!{9sC!|DJ#fQ)T@9+XJ1>s^4M0%({aiF!nFAuo*k6%}|<;wnhU zuGab{DKP>y08Y!K*bZUyp=q(dzhB@sqj}q6BLXu5I_73(EtN{y__&^5O@rr7rc!D5 zhc)W{5-5V{xmE8GO+nM?i~vz{q`FpMH(;YuL{_xV<>?vg&vg6$1gNYnEqd?=fgrt| zDX%s9=<2>r^>x~VE9bn^`SRGXZOzX+*kD>LFP6fjd3E~KX@OynozfCuDkvz>yCh{+ z^EE2q!q2uaI^ZV9NPV>pbhUZ3W08OmmPP_~Zf=1yx+ZEv))Op(tP%Uye9qDRM)~QE z)!LJ#cKg+>tcUIY^OFIu4g#nFVjk&u`1$1nG{SW;F-jx$${iAL^f?2J05X6J^CCdz z!5sjbfa$eUA!GBwRnYu*QoI<1_Q_(GprM z(scTUq$y3z*wEOd&CV~{mCFbA*27!gZvE}MSM0q9SM4J)wR;yf?9t^d&kg(b{rmQl z5AO@GuGu4j+pV2>yL*1l0qhr_J{G`TvNx`-*}J#4{QI@hjEy9twk)uEw7+2Y&x`uc z57_NG-I6pIha%s0-A7`?E)4SB=`oc^QGwvJoq0lqYVz=0e}%9n20BhLbaIO@O8n$ z@R+DF{>jE=c=2NDMYU~I{8hw^a zDAOm4`@%hkIS~mNFfGb%MJ4>&{kbq_^7Ew}N#LV=;7g>`(@E{OR)W7tAWs#37&^+! zE5`z$dR+|fRcYvG>8}aQ04WDFXKsIFXKZs^^D$&jL`L%45b#0(!v_ZFh3grtXM~`} zwk%l}erE7H0FEWc3HQlo{7=jmz>G*oA|Mge_@i2+ydacO{sQ1eIYN6SOtS@20;y@*;?a>L+|${b&f+LISO}_0^Xk=fQwQtQ|ArARPNc6=LAokz16S&gohWrehR>Jt)#f^U@W$~igsyH5Et z2as9_7LkAk)DXCrwX|kK3)Q7j0u@)u!~B8j)M8%QinXZdVWX?cTLZ zwl+QPb97;1#D=>&ZFhOj7R9cTnqO;TX`^Cn?X5J=tqp)j^ABc~bLNcRJLE;7HA+dM zT0cqEJsqvKG?Mk|L$JMMOQR)QBT}xg=+rp_YtXw><`t19QZ33@e2eY7MOxA&n^dHDd%%Toz(02fS#l(`CmH!vLr zIbmU58rxB@^cXoMg_S{YhX64!I|gP*dZ2lb2>U%1?3dqpKAQ)cpy>tsgQbycMj%Ku z(WB22mijHpo^?$LYftsr$k>#vE-l;DOZ#@`>VZAHxo-zsOPUnt?dth;&)0b4_P*HK z6?=4L)2pOEyME3-dU(OUe&?3`^0UYG(~lo`==|zPugwo8J?HHD){H&8xaQS8KDm3| zZmf*h<>ev!=-!TfeD|Eab8Ssy!@hg}me|+2z9Zy**eAy74`v;>)vRz4xks-ddN8l?e^Nz+1;?@hMbq`q699<_l?r`78_CKC~M)EGo?pFWl6 z0v?kJ+PJeIfefXg3JRETfrd&h7s8Dt;obym>dMMou^N!_LJ6X%_PI`nY6%azR1awYpfEVh zvUw85IO!3hoFj#5i}l?p0S0XBbq6fWu!jsqU;%qNA;7?AMl>g{w}o3MRY;t73+ ziLw;mp4O9cKs05*{G|-&f0P#H)vK5|1ttIrAQYMboeAk2-S>t`QO6CV9bX(lh(C-@ z=Oz{h2nK8}FjE3XFf|5X#^6}b!BN|UOpI-PpIV0N0YT0KKtthb(tV-)Sd*S3$<(kg z!uIj^qD*172jtwMAtiwC0J8!ywX$+4QhMJ2BqCMGSM#VoeWqFmK{uFyQ2+q1Tpg2u z3;xF%P_AQq*^FwoewOCr*O^lS-8W!_!65p45)eByN3xEnMv4~`^l=MN{ht0 zEYmw?k(Q*jC3|gZX3_R`XoJ3M``c@FX=lUkUftDXII#V#72DrfvTHjlwzDv14=!!m zJ9iK4&i;yBTAQ|mr4id-7`EB|E=x!1TnP1uSO{?IXrjw>lDcEP(SEsUxVH8^406K;+|tHzf>2suJM1R8`r<~W2jj0vU|_|5Qx zh)rujSPoJG36^fg5h#>9 za0dBMG-u>98h;SvQSRGu4jhxuwL~52d;uc>i|}#s(>Q-LTY!Y1p z2|$t1=E8zv2a7~=qm7Dz&kXijYeT)BVYxR5of*uCeMfDwFKNArW^dQi6={^R(__nH zSsN6njd=&*sP%Rp_CFJ&qQETsC6Iu71;d7|HwyU9i2cEQFt5TkFh#m)4*)rKM!!!v z^Q3YL3K2m=wbk`@Qom_xX!at>B!Qn5!vi$qF_P4!>FYB|+Ax~}f!is42CNYLFdCQ+ zU`Kd-s5EiRAldp5$OIU$G1dWy9+U#O`Tv+71IAS*)=kIjuu}kO7%ce?5MvpF8_O5j zSqOjtT7~9Qi2wz#BKU*w`e;kcnHZpj`8*btP#3U;xoM1`79`dUDvDJ42y)fxJyf5_ z(iSc8twke;|7*VCUt+$X#E_%LHeq5tMUP>2ByQ8R6Q3A;&M0?verwY!^%L+jKRf3w zXaF?&uZ<3kSYM{k&3m%~yPb_y+nArRg|T5RCv8iBM-a#A)QDX>w_mT7CX#_CGnHY>T)t92B??ubS7Zq)gAC|>QFf24>|uaUBC1bYBnExJaE zZo|%CY6PB?m6k~^R7*Zc4(H@qWpR=13^v(c-s-cTUrq|d0szDG$P!Rvyp#+LrUVP4 z23r7TfLmZvglV0iy-a@4^XwJCM*&4-!*%eKBWXS-X=wz4o|^ONJY zHp@ewx2xMrc4c$k_7;OuQE%MX7xf-+ExS_>mr4y2(qv|`U7qmV-_|0KtMz=dsh$o2 z->5AOciEUG!17SH9S9)bzP@GOeQ?`86`0-LnYNwzVe5)DdeSweuC8s+@}*Cp)^7uv zTq9j=cCa#Sdjhzuw5m#J?D@HQ9znOHN!m>Eql9{`1Q;|wU*G}@qPpFP+_tgu+jhu;Hc3`~`9Ur(YG-s+dR{c% z1dLWRvMC8JF))(V*?+shgB+nqO{Fc3OY@d6IeR8Y`>nP`G5>QjgEot)r>Vi#r0fhx zxuLWfO4Fp~-Mo~hn6%?qL#_K$=Z5fXUTP*6zHCV+xe z0D$x4$uk0rI&TC?L)w0&M_akeo_(W5r>J4(q19^WB_6e01fjaAn18& zx;EGq6-5y2)Gurn(}T5pfJ7sKQLUB|yKdLKBY334m(9-LMzUF3nx63v?aOm>HrUs1 zQ)8n7vo*VM>5}cNuiJ&49h;w?@&FJD8dGh5W^&rPGd(sxGwp-ixan~zy(5D*Cor2F z%34f}Xk}(n&#%w2-5r`Mz1}a6fTU>w+1~P$ZO;wcnC90=CTa1;Ivb#+RG*Y}$+$Tw z<*SoJmeo2yEz;N^g|JMDbDO0Tl*g-aaK<8l2|lTLmrBIkl0eHP>O#WK0){IENQ(FV zXp48O{`uvU{q7;`Eby6y42{pfd+-wWL-X=g02yY%@G~YuAB6%bjne`hffoZn3YO%A zh@nyK<7Dvpqy(q~3*qI)%buGuztu{Z1p6X_rh~z#l$g@uLNWGMF}*IY=CLr^?|~b1BJam!*hp9IdcU5$v-y^cCwxD30?S_g z4v-==A5&$Y6r>9)<62U=zgilw6rcXIy>VsPX8V%@UxAzyEL!BJ<1riS@76h{JUWe# zeF7a`r{1DK1SUp%7dOL6m>*}Im>kLkJ|qPGYXUiZaRk9o(F8_@pvU=7Wr=Rx2RafH zAq#VZ^`1C!%Kb%jI?fX~9zSu~*$3uHK#1dFnuX~S0f|rOqz8-zCO|hK!pz*i_CgSd ze(MZQpy$3l&QJUHakvd2Mykc@&g>3Zp0)$jLMHa&I(`E)1JD3AKeoPS?(seMi+~W6 zH1aa%Cnqe?Dt4xM1n^^Sq#PM@m;oCF-1shFYeWZ^Il#f#Fe%buJR;c>}=cl?F})lF|o1@TNS(7SXr_yF*Vx8EDG?b4>>E4>P&Xp z>imLT+}*ad#W~wqUA66%WlL+{ZShuX*NADpU~(SnmZBp@k1uvA+ilbRoi;z*>+|aI z)m_b@L0d;j>S(oeYeaxV<@`3=U!At4F)3A&ciB{%6u)XWHAX$`A0<=rMGTF|ND4ZW zOx-0`*C&OKwld^Xp4A-3#EQAKwZ7U8Mw{&yH~Q?y2kio}0LU02sIg?cd<@OOhRF(G z6*(w5JA;jBNtr4l8ojUCp$YMX7!@YPlVW2hFf$6=82q06wV*_n0E_X0nK3YLvJ99R zX3JMzJ7qt3?WFzSl@tCM?ei~QJ*5|#%IxjlMfTyXtM=^iU1>lYnm}uId3VdMA8gyL z%R6?kF=v-ImTW;<%9McYjT>8@d-nFtb$jpjhP`uh)t+8nwEek$yRtg&?CR;|4ZFKL zWAEHr*I3ndn|5_&#ET0bEDpQbkzBIrz7B7*PZ;cEZ>QZqSoY$=m)2%&G#$51YA_1W zXa_UY)h;2{B|sgL&}y*^LS4*YfQYJOhnJV32_*uED(TG)5ih1&ua~JXzevKr#weg$ zDxd)9FdqRvnCDo+t^g*$0g!{aVb-hDI@lGUQ!1dz%`ek>q5vB;IV)Xj1pv|1`5k6Q z{4u=X2rs}5prTp_`{1*KpjK`4(A+m(5kbZblUwk z4!rD3!kF`hk<#6o0iY3ONR@GlD94*3-u|Us0;;JlB9LmdVck3O@d%}-nm_F@V$z(8 zbS|wD&ZE6lP#_4SLfh0^XCkiuo4gP(C4>lx#>_mJPFbR<(b8f|vr<0rW7brZd25Z4 zo|HxFYHV99y;n>-c9>F8su#Pcpjb+YfLYIx{l**XZJ;w@vr>pwG)IQg?amb2#JaX; zh9r0dxDu=-Jm1=S2_ylfn17%4JE!9kSVFzcl46p*gM6@8Uq2xs9YifU(-ByZ`-MN# z*^i#pD*_8I_oO+(GdX!CSNo|KGaL}`;_DO(({DQg_3h6s3^`0n9&)# zQUZ16NMvME-5$w`f3HOMlzBiIEC%cg@Os^W3g4O518f?c^Yfu=3i8qd zW(7FWZ;ez7a?JoIKq)ji0%EMge}{PzP-=?Aovns|$9Djl4{eVEg(Ah=BZ?DKGs)-# zao|@2{F&eQp_#WKYYXc^!rBOaz{E;eKPeFvVr+GKW-&ca7+QCx%ftI;#Iyh(9!ATI-T{~ymH+YEQEF>rdCBX7!i>|M zU7o`T&{Wls$5|iYX~1M=fBav_`6~)IHODPfA7+j1s|rTp~p_C(lTAAbESC zCu$dm>IG<7`}TahfUCz@Ss1P#28O(p42{4K{A3=$!4iPefQ5yO?KLf5^&k&Mu-$W} zcKA79Tmcg!tUmxQZOi_&j%`>5d2eUz2LdhvQp)S1VrRu3`9uY9>dTRb6mOFt=*!x< z^)-8P_qsiOc*E}AxNJ8sAK1p+jIGR0Nkba(76>!hj9rkH^5oiM{QaFI<0k+(xlR@%|3yk@=+qGXzdWg)?I5 zOv3*FSO|UunhSFAym`EQ^$dUQL%(D zeYWWpfK$c3SPZm9AOmPQ@Cp#|*#N8nAyr61K#Mg+y%r+Thp<*kLeY+fedAAS&^;N| zeX7>|B6%7CK)17e>y$j=4Qh5OLQ+gbSxq!`*qx*44uMD+{8s_Il&*W8aL;O;b1m)1|lFp zn8Q#ArU2MrP^G%=fu25T)=ABmaw!na9@>q9bXEY@P~TuZVwXf!!jusB>=OXw_dEm4 zjg;9U0K&md&m#mP&ZAb(gzxzca{?0|0N{Q*eGltlJ33oaCI8qdOpbv`lEG&HCk!%S zz&20k21(HX80)w$mTXJ0V-NAyc7=Km@QZN|IDTlJ1pL^Bdx8%Rz;|GmB2b}uLj)tN z3&4VfF^_p404{(m0I(pmzfNF9!n-;@QN1JWDH*JHR zZ2~c@3`tv-627-ICZ(%gN_fm#rP$=1CACHhX@WDaJ*Zv*fWXbG@Fe_6=RSkHbjEn>c8+W^=!=>>j;r8OQ3T!x9Qtk$Y(BSu$P z+Lm9xdeNReyk*ZG-L@N7cAcedFD=+eU$;B;M|wK-AP4N)xp~`L9d^ddQ0HPWlr$u0ZPl-G%G-?2j zU=n}_#uRF&K_YVy`G_wKV4N^{P>I@$ad=G@9A=X4L}-1ot67J1xyXcbFG6MzzV}_X^46aO6nF;w&;|E zTu|*^L)Upmf|G*8gtc=VQX3Fr_<*=BBKBY#1XfU77;_3$Sf<3xb{8fsn`-smPg9yJ z!vd6)v{HOt`C=_3t@8i00BTY~WV$aUKpS)OVOGCMMw|4!hh3qe9Y?CQ#RH1g#=8Yj zQL8E`ks>24xTVo+e$Mu$oVjgG_P8&PprBa^qRvQzwM(JF#E9vVvgYPO`t}71p8L$S zUrgor1VeLU=syb?8P`IDA{LEPy2sovR}{4$<|}4MiW)GFsh~n#NJ8-e8MnAkv1k6qZ^c96r=cz$D5K)30YUfT4Wu|6y>%v*CL;!G0LCi!sq@i2Fm zX|zi|kY@&%VFqk(thKq3KF>+R#JDir?ZF`gg-mACz8)ZIYiQ8iYj%c408_u_TzgA{ z|8^qV<59Kr+^di>c=qgB9kWt^7SS;hQr0vF%F5hiNw;>CqrBX}TSI?ChlkG$I&1QCc8`sn9`4>)Z?}!1~vKCNMf2!L}jD zp-lm30yF+U1hVJlv;a%(>l8U_Vq}0B{g`M5SXL!a&`aLY*=-}^VqSBLwz;uo7xoVv z(C**5Y`3l**d2}ag&BcZ#)i7PY^XP5*>uV^@Tq}r+ngP-%VJ^YX0vwxV9C~}`fWHB zw<&4gO9HLErE%|NM%cbP?$dFxiiAZ4I1veiNlgSyR8s_y^rviJ0&Zt+Oj>(|mqMaU z72CE8%u-@w13GTu**s~<&0bg-rd1opGYlKxc-D^>;ZxPtg1B@UG5@`v7z}(i}n$XKFkgKNLlwNwh zlq4*BP>I+Pnk<3|aN~RY4wQZ(%o`IR75N=N^nxd2bg*vLxd=pb9spXVquarR&q2PA zGs>~J3iTJ3N$;XxcjopBc!G5r<|IolznrBTeKq1F}#yF6KbC@B`H-(zm< zi%0C@+@P(9sZDn$?B4E-bu@`73OGl5+q^mmA^wBuPEVLVD-K$-gujJq`mpaoX!gl24bPm#=$L>cW^FX$=DO`LPja_aWGDzuYgUdxp}$ zzNwf(rJ1wR+Djy00X~x2UwvK7?(q2h761$Z3^0pC0k@DRl!0N&5n4lAVtB#qkcd|^fNdPLjRjXxPRi$K#lp6gHYbz&+O)Ras zvc%q5OWKz^3H#N}erIU^NFLf7ftm3Surv+8?WK%zbY>;MdeLkc4)1y9z@^UsQn(HO zhwET>Y_I=c3<3en{C~F5(t}F0ExnPNVr`a`pl)bxwMtD)*jb|lSG^_|4gKPx_*p7k zYjWJUwr>ybU9-ElF4@l7lIVE1N2N^XZKStL%q8hejM7SUpKX+&BUcJj z78*WUHj$6`pa{dJZ9V{r>5)P7A5|dYVsbe5+r(Hf)6ofgX0RZAh#JTv`Nf{Eyj^|6yGm2jM_Oqnj1A z9$@r(liDXQDn20uB5VV;2xACMV6I6^XaR1VBT<(DkV()8m$>+NldZy5re^= zJelJ{jDc|Cdy>;>=aP{Y9n-yQmG(NUm%p*9+D+1ExJ}7SO=(u=0!sASprs=Mm_9b-@(!VG{B5t z5KNNXCxV{HK?AT;?MXi;qA;;o1ZMNH=hh3%daxko0+EaaL7X`wAlJPDsPY9SYzG*k z#Nj8cmI4H@pVD@Px^LvH1z<*-mmtiaoHauC@zcSuX)H^WBg`x-&>|u-C6J>v&DiL$ zch4qYj{LNYSRQ8PzD<J39rM0$>3eW;u%u4R0 z9I(0oGRc(gRJ)tM`Mf?ga~_9Y#66I9^JI=B7rNnU>DV z#JHSU>2t`uUK|1AdSN@ji_iW)-<|dSg)A*#YAgd&WKbm}R};A0JLLjuiH@}OWk+mL z%xr(>oZY^D)t)@OI1Nyse8jhzClp7w;7F{;y~m>cOAtBZ*RW~40z_4*cv`;5Z0R0tuo zoG!6|9leNZ%gf!b)+e?`$)#pMptMrQ7oh2-@rn`>-t`hB_=b`KGunu-U7a-RO0hs} z`uI*@b1)Rlc2whtwjfE-kyz-fwDayEA}>*_EmwsYIJ6QNunk*Rd_jh~^JDG<@!opdk>a4TXtf z#k%JNb5Mbtg!uMmDNB0pRoWg?C3WrUiA2@CFOxtolGdEm^GzqBdNy${AH=gA>F)5b ze9|*ECwpvdsM9Vkj@n#bhZm@RV}IV}9ONR_rMZQMjI*7D>Wuc6FM)~>gIQz#0=N+7 z_4MqjCf;IgS zd;&%U+vPs-971y(0>3MhcEKHPUqS?6WsN^K{8|oX+P~+Ry$EO=L(iE10a~^r$i)jC zbFNw+ZiDYU1UDaA$I?OY@H?1UXnypr0-786#88enXU^}K_IX0T;odQqd6s#4mJtC9 z=6I^1037L5+5xUo3K4+KHDU52gg=5sq$%QTiTt$Oe5#HR6-g2|tgu30+GzA*dtQ}9 z_o7rl)YRDIbswXVi1qdKILIXhXiXGXn4Z*kngarkq!iiqHqFKMHXF_MS&!a-a@6QH zJ<{K6y#lJfPJv@4>7a(iCZ+k3knCxTHVM#3uqLlHBN-;8UqBVpF=+VNE7{U37B<|O zu(`o5n-`mNrA_~Pg?=ei02(PGGua-`fyC4ZL&Nn^E@oIL=2lxHMYM+ZOp2%H}2SH zA3w8SeEq)t`kN2zS6{wkfA!6K_VxSs?6YUL?BV52yRVA zio>d^OUpcGV_)mfEsThH1+~u7dZ^U!OGwzk(ionX(b;Ch(sYPQ!&Z%EL>ri`xpCLf z)0!xlqb9Pw)|1pkmFB!OJ}AvUX&cicI*%^fo*%JsCa5OegxDm&N)8knHfA|k8UZ3y zsUVEIj$jC}EW*(v(#+!mHNwyv1ZeckBEkyR27_yshED|um=)#{mSGhPq5ui9D9kT& z=HskMzy|OD800E>!^}ef!Q_I_E7OZhkO2G2J6jxpl77cvKjfx02}n2w0K@(ex`|ka zM9@>=VT3(&=|03-GbxYG2J@cedxC}7Q? z>i}W-)P)4((Xu%vfh%a*BoNb#6Xm8;_Z8DlLme!yTIX8ej2od*Q7o{C#oU>WukFm4 zvtoDUHrAgOfVH~TTB$kHA?t0v;HZU~?;rz5U zVI9Aztg5n@lsx_i)HrXzsa$|@O03Yq>JZQXr0}@>HZ(Qz8?M2()qVgi-}Vr|U}FT0 zuw;9H46`Kuwh-V500Gb_une07;Mp(NLh)fj&Ix@7EU=zn@-Gme6&BJ1uioz+^E~G) z(Y%=Xqzq}GOpu^mrDdsg(&RRqt_! zK&w>>bhAM!|*5pb`TcPa-KD2606!MaoKtTxpu+0v1TT@kqN6rD1>r(?h38}F* zA@;U9HELZFd?dO_(9{z1AZ(@a(7Z@E zd~HRL6V}qy>MV%{nl$tzmx-Jxq98F>hP}lq#b!JhK`gFLnr=`*A!u#Vkw^&WFnLn3 zf!<`&fOUKX0X`O@;=+hC$}O>P&bwawiRfA~0^y{t4-iZ0GuKJ9Ba8+B1%xq8QZ=Mb ztkM05(yrMauxH7=B4qveu`}+goY9MqwvMj?R+J;qLMz22OynYLo~kfBdy2GDi*ZK6 zrl+IDR;I_Sys%KLs@Y4UrJCzJN3C5ieV2s0S6&cv8%)uiq1EQHK_c}e1*}Ihc7ATa zruBIWrANYPP`@Sk8Jo0kc5v( z3o|jrc0;Die#lRI<@LZ<29P+I=<|!f#^)D{_;L)Y`Bzp+E7x;n8vrfH+d2%S&}Y_j zEP^lqPJ}t&2J<`d@t!*YuNV8?y(L8bX(54<2B59UqnOq56Zef8=7(`^CsDc8;tlj3uxCRRoX zD*z2J!w-#Lk)p#M&aeMDZlm5&?h}!b%xlVL;hTfCvY(ooS}9O<0{^HbbS^|LG6?yn zD$uCp$L7M6Z7xpPv}D1`+?0bFX&2-R&W{c{3tO2Sl(L-C|5*W5%6(zDR#1p>Ul5tt zC>cdRK9n_FC6(o6Qv4!b_pv|K>M27+LPo{n+F}uBdW7r;%{+B&0=5Qsmn3x#VyKd7 zVYAOd0eHNw+`hUjuzH-eZ+4^hYXRC9o6YvqiwXPPy|n$q{jTT1ATPDa@x|e0#lz2` z=`ma%e&?pdLz5!Fg{d(du&%(oNF@L!FNvT;a!EUL3!C~v^)kCB2 z(D0~r_w-wTcE~0tXS{UG+VZkpzp!KPKD=rlKE7&SzH`TZ_URM*%OAaCU%z+9o?KnC zYn$Wt@Zyp_Z`jqXS-ZGCVblF7flA6AUEQ+l+tYS?cg`LhEZN=j3j#H1I$~{9O7D{< zg&&LX>iUW@Tb&*dDE3%ZfH#nAmFCkgfa|e{CT(w9+zyr}?9%F_O%KvMufenI2gK@T z1!iMCT{f$IBOFs=3794+&4kv~r3p+sn8sQGgV+{KjeI1kL=fhVd67U8@~{$-xHBML zVEj=;1C~pm7Ybki1N;UI7#8962tz8VlbnrTi?Dcr3{xQi8IeZHN>zIRhX<8tABh&R zR{;dRHA-e-LPTITiK*cWBO#h|08jxCKnsRQ*(n4wA@hXPXQgGL5wkCf3jOUR#IxCJsA(qA-Bj2%?kL)F>2B=$uml|M(p9KME3$VB<)lCl6KB2{7?svNZ%oJKJc67p^0BI-gcM?$zQV*9 z_|=H`(;)BJ0ZqE%iN1f7ul z-zrdS)_&4b$Z9G|tveZ)f?MmsZ27tQuGsaq)Yz}?P}*w1esVrxzqp#VuXkhicXxXn z%zk@Upmu0#1kiqaKlASnXa@%e|7zX;YW=?kG}x9{mJgVkGd2M0kcoxgX@txy04P4g z&M+UKfrXy~?JEE^)&=8qE;%HnuFX+Who+RpB{kB18ZD*?MEeGM53Q}P+rjxgo1dPw z*@+3ee15}j>tWx&dd?mSpx(WE-oAP7uKoIpXZH0wHw9D+c6V>qo?cnCOKTIhw>Ty? zmh~>d+tQdf1XAP-EsvyaHrruy18Ex(yC*t5~^W4fCf2Ptpbyg-X3Qo_>+iQ1g!8;QQ-p<8!RhiWtiKD@?snOV?+!B za$)`$!T_@j$+!Rpc}D;R%mK5#*VVwK+qt^t9C-~g!T zVda4&6375K0Wbg{CQ9y^Hzd`*_$}-bL4ir}1xN0w2}Y-M7=dRiN8XJOd$ z*Tyn!&iI?O-B3CqLDlbJ{jfypG#)=CMkas6q*721l6}#ij(U$2F-DPS(08ykm~M^$?X>O_=26a< zYvB4}lQ20LT%(j#s*c1oXQsr!dIVAc+w$~?Z7t47d5znZ?G@V)GmDEwwMb!_9?ohm zSGxansJ~n9K)F{B0ia)h{dLWg3Rl=Lb5`gxE)pyNYov}+Hq?b&+|FWWnJ_wD@$7wr?VwI988-G2Q39eqBqH?ObSql=4nZEHq= zHf*a?Jp!L0yRozAw&n5exLsPGwrkrn8na%!m>eY>sAS^L^k>|uN@=UHp0pPiCd8YF z#JZ{~F_Dz*EKYfyKcXEo?QL!f7|LK8&?J`dqHfx-*jPhVwRbWe(05dJM;Mjs#iTGU zW`lAGuHLSUG_1gU1_;5%+QeXBapY+6!Xems=>VIi#+a8OLWB0ucd;izzk?D~RKpJ< z7>PKNEjh>FgFq^j-L%55^RH(DG2TE&WykZ&6Xm|#lBC37XV8T3)(Wr zB%+Pq$D?$&4x$~Yq5@-OyC8`>5(Jg7PJ)j6gYYDTn+o>9zI2WHy_;4g?5K6uaMuwCycKuDezEp1?Xq#d|0m$Ko-ive4}Ro{gm&H#+UQLN*^ z+&F*s!Fik!U>1uJ(LM;kU|X0TK{3qHTx|<;1JKAz3(uc(aAqk5fa^S==Ni<*s(WW z;EQeMo;|DQkZ=VL6F$+GC>!;XIhfH&I~vc531Vp=JYULpzDA8e6_6sgtWqFJ02^)= zD&zEY#&td@mgIg)nbkgt_MPd9*aw?2ffe~?1NMy=+IJU|_SG&yA%Itxm|FUOFge25 z{-Xdb1h7B-|4+xi0<=FyBZiU55Z0FWjY-er7F7K?{n|Cg{iSh4# z{Eq$VizoKOM;A3N*hdfc?S~J~+m~-%wl}V=imA=nJqf5gTFwoUOV(-UmnZD@{)+8u zxhk!DX{6V(nlP=R-wPxCc2PiwS&5>>quoi%YI1Byn04vlx6wdS+F4W@5G~EedehFp z($c8uHcJ>RrI@hW4|aEX9v0?=Q2}IyCLTFj2n%w|`nxlpc#YqOKo2T=Qv!<+a@Y-K zB?mYOH2fC$BoOZS!!Q8?W}(1`^#CX?{3OWPCNNP3H6Z~te@P4UQtM@F5g-Co02s$2 zDiB7;?=d$a6flF4e2O{I3jrSnkYG;4X9ti1UMvGsqJYy)K~26-gcs%+fRgVS_(7a0 z>DVmsiLp-tPdu7Z=Ywe!|69Q7PCE#az>Ntp{4J~!QzhvMBvI2kCGRZB#;0^m5<~IpNKLio6FGx%OX~kwDN$+t2F6GTxeI>@Rflo^q*d5G_fD70$ zK#E_eUc!}xf0!fB0Hq0VBcS2r@srk}`HP7bf$zZ*x@WHo9AR)F7&9uQs9}<0K865G z>limJY8`^z8JPa3v=`fOeq1+$YoWj}-v{TceF%X0J?w|`CZz$;BJmvaBHM9rSqUO$smM|-G6*mk{_*77%FZOh5rZ9ikff$6in>-c45#5gYUGSp=}u? zOaf#fs0EBJ&vQ>|2{mtO@d^Nqk+{X%)0XbSZ#HO4OG~!5d(LiNxonT_-n5H5TLP9j zyK-*b_Sa|a!Ie$>?AcX&_s*^u*_H#><4eo-@xueLvO33L&&Oe+)*Mi>KF2zXv%z6$_|HZUb#n~!w}Z`J`i1VqpS3qKek>}-$L$&%k7 zNbsG(vH&?)Pw007sHhRh%ZktfRM3V2n${LdO;tMcBcVBrR1D5d+MixrOq*WyL(C`y zV4@s3cLXk)J0M0&6V8{&OYVvH;gTTZcmSh2_$9m%5&>8W)DXtHR?ZhNhCRX>5mc^y zBM^12E@-rEScwGi3bpR=niwx$V+go_V_eU9Sjq^FaZE6Af!pTHh*$c+Y!esbqNEV5 zJEBrxit=*3N7dX=xAkdVTVuU-N&}zGrfhd%z}lN?Eg6eQa0JDHxmR3kAkYJaB!~pf zcY%VbnrK-3M6jO_m=L0r0mDbhx)3^Ad zXR#P2rl_WRI*kYY!eAmfXY<^|7N&N%lB4;^xf37(tKr!Y6v4nG8EcI@D}t>6vd1uQ z>X`n{>pZFRNSA;UdhdBg;q~(!|1+2a00C^vuSwrC&g4n~*8ceHrc$0A+c2keZEVYZ zWX|vmxo_M{u7{<6)?nTt{JqOFK@qL30+YbxP3Hjs4YmVwW4o%VDk&6H;UT&+=24Jg zn;8HpS8V^RMqp+|wrLJyO4Vo14VK0T%#iwD?2UWRdBFrvoyH$5MO459>tmlJZDT6M z=N1#lg_Zwl=K`P+{fnYQRA!hHM?FTKW2a=&7*UaJ5gXMqqa|i<0%M5arnDOhcX>&P z%c@=}E8T5zDd@O2sEr!cv*npfX)Y|VoAYV=?SlaUSD!|&eR(cs-(N~Op#A1fz|H_N zKn*ba&7DqP{znCc{9C|`@vi_aU|s+f6Xq}w$1RZ-7c(7*vfdntxXTwt^GCkw;ilbdvxO5P_HJ1fJT#sD(>Th1FpqT?PEaN z6hR)aFGBSj^-|D6e?Wqe2?lcjP7^_;tMGl+M!uROb+G=VA9c1|4n@OeeK}t|8nGwip60poTE@YeBe6 zAd#qz84?!3?_p$ICxVIXxPA&QBTyOKN6wRIKcX!Oo^UYJz5!W&$9}xyx6XTmZX;%_pG+D z*-CVeO7*O&8zNRC<-C%V6TSOqbgdL$KBfC{Qs=_Cp4RUPc%h#i?SNRG)po&WDxq*4 z1hz=o(0r)UIRm1YPVxW27_pde9+)o!A2GpVm6}_PHX)fcKO(uML4^_WCNY`Ui#@~m z+G7M5wOU<8skKI$EY?ux7NqX>gcn;+wKh2@l1yDxkZ;$g;`R>@=|bHn;Oey>?Y4@g zb=Z#tY`=TZ>)-{bu>{z{&;LXhh++TM1IoJlU z0`!6)5PlPA-oXnQRO1e`ws11O_PYMpdNlZmUihi03A=QD+aBJzZtp&OWbeQA*xq@1 z&)$FIo_+e>Q~U7Q1AB1wz&?KSp8fFI4SVC-rhWYAl6`RhK;yigQ7tlnL1-=rrd$vJH=jcTsQ91xDm`;#%49miY#sA?x0YBfj z`_zJMS;B7kOcWptjCDK<*WmS1A*`^~=SYyY5ICZJ)7Aul4bREJLx4eqCBH+!qQN`! z(D7hvoHq{g0H`=d(9a5C%Rb`~F<1nZ{^xu54eI-l1#+$2Pqqbsxv%*Wt~4ife~5m= zx-hI8@ZwkwuG$9*03gV@BIq~{;Kq4y9j-KJu%8+Usi}dirS&XNi`7h1=z3|y13@Tj zhB=zNGD7zW3>xq6v>ff@6xVb%*Cxf>i>2ufrV`dIFeCAu`^5fTcuNqG55+nL0vJ|I z7j;~Y6(wh7-M)-l)~Gc?bKYv7qN{CNquU<$!It9Q|XFM;1T(_!1Mmt4>w^jFfTc;tOUUoS z!OQ6TIRrHr8VS{9m5o+Y7qzxTr?pAA(`r5*i(5}ukIha_+O-S2_TbJXd+Wh43`!lc#U^dIi;^}L~cX?R4Q z4fga}nY1_@vqUUXY`9Pp7;_cTgGB$4GejE-gx64Sw+AiY+d*K$kPy&-%W!s36RyL7 zC^UWXG9sK@`_;>e07uAU&O?9zhJYUHYxFy6I9BO%?V%3}wug@?MzsrPf(6b5Ne}P< z5&VYo|Qg5r7JqSHNsJ7koy%-29$(d>@tKLnI@@1)nA%#-t|@ z?7?pX_8Nd6fhh<<&J7{Sx#0WZJ_kZmij~e0!HGYDKoP1=AOxwX5p(ACvhspdsS&$HmHn5TqJqXb60CE{it!ooQ|Rq8p1*QM+c z?2#i7d|mSk?U@8>z?khgCro-lep8UI#yYNt^CurFT!(M2PIHd!{^BqYgu(Z`d!cWK zU=f}XjDxaE1Sinw5pyQ{;k=wNYCoh5l$Msc->0d$MZbOBj|~e8!KzUA6)<6maCVuY zahkJukKab!-cXyCAU6lAf(kp6ult%GY?D_g zWwl5OslEqRp8Zae|tOi9K`rO{Qso|G#`MF1`{>#p~2Glj{h|g9n6At zp?NU`t`|Yf2j8(y+n?3LEhw(By2gY>TQ!N&y*55JVG9e3w!O7!JKLLf`NF;fP>cS4qlbD4tBHSqt=)15(_J{CcXUWj+B^Ooi&R+V9Ef{=$XWRVPg2V5Y{j- zgnD0w#NQ%my!rkjW8&lG#0*DLEo_WvJqiI6utEL}zmGS^EfY^_0tSE>CRY zuK+;6i%3hH*NGN^fbMZbf{O~}GzR59VA@4taJHj+$$23J14S!f1e{j@a)Hptf7O@C z_!7a1f0Jk0-`OUXRpQ-$yTrIKL1q%IR;%ynurMQli`CWIsgkC{juFfZ> zb1CxNo_=Y-_~Sx>i(-O_nS4MZEKi70jr68n@NyqumI(KdDgV*T7*z7$8W7?LS%Msz zB$Nnlp%l{(G=E-XWn3FUDC9<=B*DUBQW`N~4fl2Hn!EfsJhOn6pVfX!JjtB0Uj$AR zNw5PDufd*lT&mpzJec};_gPYZ750I@2myUeBk&&u)*hl9Id_i3wIt$g&Jw*Wmc9p^ zxHr^_WErF%z^VbSU~vBY@2pze@Ee|Qc#pUa?u*|WfdQ31050;mC=O0^GWk|#JxsmK z0RdBEd70jwDx!azjNW}jGLzClo+43&JzZVSh}wAmyIws5t;0BCneww5A ztD-h47Fr?w7tGNt+`%O9jwpQyQ#U0vcNqdT9Wq4ic>7yDZ2X|!Kn?-ZD2?GKN7?6>za?nC=>8&HFx{SnX@u(iLrm3;XD zjTgv4>F|G_m;xsUxWn&W!K}#lhyODIjp~oTXA%Zrripn<4<$z$haPHvakU<3ja61R zS);(MHQH&3)|B;RdTcN|U=w4b-s5a%b>8+j=Iz4ff^E!C+3ZNx1~Z)&6YZx~U%52P zT7eGHI&>r+>!<2|o6U`8ZEbGcCI&Lns;foGTLorAc5Qpk9$s9xTRV$(L!SxfUl<>B zKqDs%e^`fJ=IV+{*VY1CH3`EcH0z}~dB!7$2nZP+=<`Y+z0!!LMg~3ir9c7{!3v=D zBs+}C`s0IHY3y}wA_S!HYZ1{%xH^KIP;OpGgcOq&fT4ITQITx>yi$h%h~LA^x&@w8 z6k#30pFk3Tf}~**pIH`3JFKg2w0f=g>gsyoFz3Or03*s@eO-Ax+u0WXg(zB71W}@~ z7lT@AttAw()Lv`7v9;)uQALmnX=}77`Ya{VlC)t^l*T?ZK`o=P`-~-~RHpW&sx58F zZ}R57cK&Sl?Sbr9TRF8+L)y?w?#yF$fkE=_g03Yt_Pk)7^GAI$!ksO-M4gOx~24URG2 z6b%n7zQ1t0tTuu~jC%OMaGKXv)T7d_gkvk(nW3o^=(g8kr}t+-f;}L83C0_|+F?*L z)b5@JU|(2m@0kvvawU9x{UMo*~UNF*e zXPfx}Fkt0-*Wm}fUT=)7-_a5x1d99)xm*Y5b0~72y`hAE8jFJXWDkB3uQqi{aw^)I zI?2G`6ufN4HFq+0=8bioA1GFAlZcsKp$RJf<5ZG;0U&h~rmL0DYATXRe(~uEwo+ z!tH=&Qd{i5P%DnV#!(!0GR`TEoec*4VC^z(%%=^0eI|LF$wG48567y$(zax2{Z}u_ zS;#;jKH0o}m-IJgDBWjF zE9uBv5)x;F2?)Mv6hwPUZPqe!HeEh2&+}+w%h}?~Se7iAU8DNo`c7C-6l2h3aB8Sk zo6Vkn{z^9fSqZ}6*KptXW-LB|S)L|{bzP5)#&>-(F1(75efjG3smyFnU_@80t;1%| z%J?r9SMirZr`VfOgCgwr4mmEkX0|sZAVqVN`l;Y;fmkR}N;vHtHphwHDME5p`^abe zNSMZ!FuP-YR7}w!HDhB*I>LOnTi~&pp?rlwB`qaqxW>0Q$R_WZBjt>YIe$6kxMVmQ z9|%#ZsmBQy6FX@$4xyq-k{UhTpT$FSm@)3~^I`ii8ChiPUMc0MA8_!}DYIu?b1kkN zk9b!k)(vS9SVXVxt|Z=_4wluDXz|V{tGCK+g&-mc;vXrEwOv+M!K$Oi!%`YklVi>Mg7TZ&lsdgyNfu{M{T| z-eg_?Q!jAFBc>5D>hOpnZ@3bFrL7Gh7EDB6JVx}_#iXB7-pWzeM?>hU zS^8vwz}A2_-+`VB$m^iqF2Uom#)RIzdENGnWXrfd$se ze2b7OacQbP&uEG)jQkMlm%8uONOLH*;wTPvsXH=of~z*=yhn;eKi<{-!E;9A^_Z4>72=iVHM)|T zU%pz`j9ZE1`3ZIL5f5&<`KY}aV%a}O?1Mx7<9EiL`p}-`;+PMXD^oghWy^;~AE}U0 zyMVkTK@g{rW{Piix>8)zW*QtF-%B2mEAjPB8%Zf?w9KGo)<(Svz|orbSdf4&`6&4Z;|VKPZ@psKSn%p zJ1BIY4B23SyC64dzjZ6;f9H`|h`tn~pZ3YXhSgWvchpH4khHhW5NH5dd8XeXqV_TK z{iW|*BTAScoe*wTRQt$u( literal 494239 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 z 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

ACl_v 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®uiW&Fu)={^R0Jn!mDeX@3Y{DQwUnPH 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 diff --git a/ProgramScreenshots/GroupCreating.png b/ProgramScreenshots/GroupCreating.png index 5bf6886b8356b169f97075908f60f9605cb85c4b..8d50eb9d5591b6a26ccb1c739ee293c708ee5f47 100644 GIT binary patch literal 10969 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 literal 0 HcmV?d00001 diff --git a/ProgramScreenshots/MainContext.png b/ProgramScreenshots/MainContext.png index 914d9faccc789f85eaab57647b6db6afdf431ef2..685508069f3d6a7c8a104c47439e4237d6747c11 100644 GIT binary patch literal 15129 zcmaKT1yof1+V7|!2oh3*ARyf(-45N|DIzT(DGd(YQbWVgB`KXsN_Us!z#t$oAbq#z zTlc;9eBZg3wOBI)d+*ut#4nzIgu1F64i*^}2n51WkeAj3UUxyD2cwvefp-b4G6>-1 zfvcvRB&c%q#UAhh%^IQt0fB1buy4%KfzMAq$Q!tVK)Bt1e;@QamAnIigew)KA=;j% z2U%X9U�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 NAfqZ>DftHazW|TuIbr|+ literal 13714 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 XhIc-+Tp|9C3ZV83q*ST!{O$h%>}(Eh diff --git a/ProgramScreenshots/MainWindow.png b/ProgramScreenshots/MainWindow.png index d5e847a92f7f59cf08dbe2798a82c169c6e6b1c7..eae598141c2ac9b7001e6649792b054276099ef3 100644 GIT binary patch literal 367475 zcmd42WmH_|983z#7cXAmC@ab7ym)~GdGX@a z4m#>{OQ?t=)AQ-2r;eh`i>e8#z2^&Ldues)7cXiPuIxc7X@zx6AA^LMu>iF%lv-sRl? z5SsjChe_dg@R*OR*l)eK-O)NqW-(xQk=}uWLNaqQjY}TYnq#U5Gth}~y%ILVd>uSC z!+p?-clQfBM&#GwPvyFMbFKOVn&p0^!yIVWz50-o>4^s|u=n7~(hEvWfL&@7x-QOf zkTtL}F3UT;^wx?5V~2FxnSZ{uda3L2Tv)$s?UjrkJamJJ_(j?8TO%#gbpfoiF7%F)KA7cdycn5Ps=lUVY!_)TkD@ zZh9ZGu0EM(B1y-E5FO!*2Lm;6;Wi_G69eRij7ZrBEx4=vQv+6MMJ~3T*p#whND}xD zf}5#qHH8+~BHSW-9~mBN&qOfcinnhfta}{8~wmK0nQGV=n@g zOi)#ZLT170&^!v7eNaBTWlJ#_A-(0bLn&0`DmMRkPUJN0vL$GFViad5v~y@F!2{x& zCRCHyn}j!G`sT;&45($EFIKJc9o38Gdp?YfI95sbfZD_}vJ5eVS8#DX(|2qc;j5&I zRVSmM+p%!13Bcrh=#^ONPQx@{LcCMfq_4I^e$Mz`i|4WXi?F4t^vHca#QN50m`(Sc zw1nGQ{JXoP80KWZ^+&6AmDNwA+Ub!i#$p-8`!1?6?8a0I0N?SD7Iutn>zq0@e7s7n zGZDi(z4>+aQb3OtYc;uWRZ$W_k=G_2sUzTFXrbx@=%|wodr7~q?8T@+LDG~;%W9C? zc21uCw?O8Ig`hYqb`y|`Auy{ky1LbT<7OsRKclQbdg=X4K+gWA_7e+ujNGv-!o}SWp@K7R%RU&rW zr}2vtQ0_Xxw4>0tm+3xlW~h*C$wC1QD2>0M+P^~d01CdmwX05|%e(9k$b(mKId$gi zSn%f!e)LTLz+f-c(pbJyx}Ckp&F?%;Mgf=vn)>bNoWOUyC)DRg?TwGWUzo!u0@dp? zgSd}CBRBck)eQe-(CFFB+;+$3b^g{XXzsa|Se4;bhSoc2edF5WSZ$s8s*c#b`8&*> z4pS^?952_00b@PlBrZZ3h^@Xc(Z$FX!K*k22ikqlfwFdOwX$3VGc{WoMWc(W3{p_q zs1t3;pkr&*71d@_Z0W3Xji?@?TqkkkR}P}}VY^{P*!=x>&GCjQ^AgX%`pi_r$?7v& z!fM!R8;PEG8!+U1-n~@yKMilOn-<;;=RX$Sv+^@u#-ZqkZPi;mR6=0xY1%sDbr5Kw z!LF#052d^^l?Tl}@eOa8g6fwvJrd00e&Gx}2dFChucSIPB}(P!R`dMMgFIb9y*4g8 zai7`s`>PB~K*tS;y8NcI;XD<_w;>RPFb_F|-suk?G?SfazC3EIA9QTYziAlP9l2!FUygA zFLyDYIMYO;7mkvqjdCgNhD8T?Ei@ilXkqe`5$4!A(%Z&7R_=sp^)rGj6xCvrn^#7kH{;aK4AQc=R{BU6TAO8M* zO$?L_MZdc6UlaJ-zICB6gKsB;A9ep}?EXF_!%)~D|JD`6bNzUCg2fG?oI|r7yke~| zA^*e_gXA@OPhu9`64`ZlFGZ*TBQG;;tVt$5z00%oka~oehJ(J_ zpy@0%%71iVeLPDD-c7#&zPVdx;H>K?X;ahjz2;p-N)Q$p=tYr-p<6`E&n|7>^>uxH zI6ZOMI4jU5{yY&(aw;;pVdr;n&jatpl_Em#@P?6eYMx8X2GEM1bluS0nkJ^Fhqw8h z&;tPEQcw4FuH?+j%&1jWRlet&QQ|w#^EuBy{nH;qCB2nX2N+DSx4LVT;dS})CeK&Ni&Go^PGazVJj_zgqTP#l*!v>u z+h~o_Xm7y8Gd~;_*}|9(4K4)lr!< zn=&xF{jXZ7v5PjXOkYZX{<`;NDatK~&+VP6@sezrwZr<@m+4Q!IzM;h(xM1i{@?~* zBRyV}O07@iiM84>5)4=O@_<}7gDJMzAZ;J*e>`qWxgjQkYaEhzwkO0oJCU+WVw`1S!8 z);m3o#7ims#%fW|Y;O+dtOZVL=_m2w{sMS?}JTRbo-bp(Ed-^=TMO3A{V? z*iZ;)awfN!$crIOVd*UedCDm&<~WzvB&Q~a3$mPit*)f?Gmq^pWuaRVjOI zmOekVGWSH*6<)Y~=|AwNWpg#z%-V6nZ~jt82L?86a_wGPdfpc}ZlwelfWhFGI z;FDDealeZpThkLHP+*3U#$C0t;_&;JSoq`h(_<#j;w2UXN}z_VN(MLArrxLzjJOlV zKKw*-F9uirxl}?^9Uy*cyPzg+44{>g3(e&854s|w;mVCBZM-|J+Xg+UUw@m7TUb~C zVL6_xBHSJpHR+xF5EEVQcj@${q!V2|QG}XSHYs5%jHNlkEH-mvce^ueJIpsi?NNnS z(H}z2yJ>&$-EycY18)YvelDCV6$2L2=IOnHu@AC@&QSr=cEAZlwT0E!OJrx!1{~Zv zTKb*=RN+!}SzFs;W8>B8Jsh7y!6OeBK<}Bnt8_|}_}uk$DZYf&t6%RY2SRS(N$LdI zDjQa4xPLx4vgaSJ#_g!4uQ6d9jsiSSJ@)lPE>0381ghT*uG+?c$R$>fTDVy`*GtW1 zrr-|fCYB@MZx2`kEpQ|Xv*6F7q~Em>UZ~pzZrwhh_t98>m1E6925c}}Ec(lI(o7%E z)iEHuDcCZyOBa5l+L6ZY(Xzfl7UR@9I_7I%@NfzFdb2-AaR!pR-+^5#wo~TQk~`8D z`DMDExO6R5Z;V%c8Oq&{guJ^$euvOo`_1=e24(lAHj{_1Oms;nvM-%Ed(y6*`((TA za@4nJ@Q2i)pAK|OJ?I{OD`B&4dp1L;BXOQSV|gHEh_`xq8QioKlaLVcd}!+g1_t&g zeoHNnJA3}t&Hw-a-J_$bmRd+IylFv8M9%mQo%e>!)h7h@8pawf8g1JqSInnyt*VpP zu$UY2JyLP0dkUfpfcxFm5pysld(5t}e09L<>Kkromo}=`({>+V`Vb*}Es=7M&`N}T zZD-vD>Ro+`A3B^{4z0jnIhzi-FoS1h2y^edvha)*;KJ@(&S;084}3k>Qmctw?bpqA zPnyZo!8S{CtX{|U7T8?t_N1$R=8l@%|E4Hst(K*zoXU#wMoOP{&R4mf~-b;<0uXg7NvG44-% zh?u=I__IID5gCO!%VzoWVO#%rJU*v<50zHr(@YXWlCspq0{{E9;dana$=PpwhSTJ& z)X=p4i>=M!(?Tgcr`wlnPikEOH@}?yx9_$;w1N^Erc+^Q{2+U)q2#TS8>IXjjF6|J|-_|3#zjDzCqhqTQjP!5#ymTu(-$N zuN!m&n7YHwq}YaMDZ(Bgb<~pa^MS70=0R8UMbXToyP8(>XVnq4;hH6VliEJ;aY(l7 zNk)NFAZF)Eu-xsYWo5=zY6O;OCOUg{@4@yWGmK@t8f|=uvn053@{YNE$%YkDxL;Ww zv3f#of7-lX)e<@&9^btd6XH2;xbE$1e$?m@9F)&J^l)K*T2=kjwnBp?@f0$%vSO~p z62l(Dno!paHP$CaLqpRR;^*f_2x`;~nk4^vF>mojIj9(}nl0i)w-oeEFJRM_2a}&lvAO#L9lYFPg*|H`W+8l3LIh^N?wZVq)3qK-*hQ}(1Bu09-j>isnB zp%X>;%6;KEZrNax^fk9N^&^~?l&&mSc{W40r0{OMd^v{}G0mchXKfQwyxx13=vuGI ztoEZ0*wqhLPC2!nVQnXS`(pC$qWhsUFf8{RS2D)s*k$j~ba@Pm-lbY>TlmTBrhE2N zh4V`7VJuc|Ah?fK#o#^3aU1AsvJ2)25KA6$gm61;CH=)mv+K%$;C+}Y*vN2+0aEx0 zr_3k$n+8y!5YIe=IhGOmUXlwApJ~Nkzk0fjXeNC)_`sg;?D*Am&da}Ru9h^QZTTiC zD$&u3d__bjn7sQS+f@^EI&$~&vZ=%1_E}S|xscQ5=bb#E;c;E+Rd(3bDgH3gg08<1 z(>~p8osTDv&l@LcZEbBCaR~{DxUVC!`P(hM zBc!EMI6z`mvy6SH#rJegnwxj_Ym>%nP#`J1nI${7ZGJ_VDS5u=k)-TTRzb1jDA9$m zil!u1Pt2&jS5xWMiiGfEY+qmBGT6~)7RhOzxu^dIR?~H(X;ycKktYTmJT|X&fVmQ* zUcjQaM$LE~3USi8WBQgsbeZDANP&J!U%ktTnZLkY7?fJuTD_33=C5Yz9pmyI(=!jKi9t)h9z%LXl4MUyd8A? zC_5hzp6gt+;MX#;dDi09r2lpT=Jq4XDZXW!2XOr9YAM%kZ$BJ|*(XFV&dGQ232zE-(Gr&`OwgQ_Jy$ zDsKf$9XiGN$))6%d&t--Lmy zeGN|YZV$KKzn7LM`Ah%iW^|-RzsX&_89a72$OS3&hJNXJJOf*k*>lFamw-|ArVJ^N za#mvsBis%czJM5DEXsy87(9|-T?Oi7Jn>=DL+&*_Hhd;x-;ZbSRi%V1oRvpTR{Cge zdfKxV*po*UuR*%xw_jx!lPlVT7O5>nJ^!Nj+*--&9N z!x(s-)I47HZA)h?^Fstj#w$Gh$4|vG@yM5NwkL49XFfcVNp)itDYg}%r0F&l`FLt& z?0s4Ft%naOWPm5I~4LwGCa0M@}IPmRGJ8vIfxHuIFh{P~Q`^tC`s+lMV4-|OI~ z2u0LiF~q%PwKnUAn~c!QXBSi01nflJchBK!qLjtu#(xjT(qZoM*gwBtA6W1!=;vUi zD*Le4vVG7ySlD7|xb*x?Q? z$=A~-WoJg}@xzC8R% zC}SC$wGdW?fd={X5xHbWI5@a;e5Y$A5Y_w%=3`Z-T(5X)j;n2Sc^=1 zUC)!H!*=wslTy(AgTo|gf#xl>-U;u0-gFSDWw84BLIP`fGC~yPCg16)QSV|Tt5>4h zvm`YvwO=o6D|IRF+{wWr*j(4DYwk_nxJ9{xoB z<=Nc6FVJS1^#8gIoT!LB@7R9Wep*Ras()5nP?UoO9P^g)8%qJox_)8x@m2k<1RlsawoCkD}P!-=4GLw zGU05&B``Ay|Ig+rffQ;7Aok*o-}7R|ksbY_(Koo8u0^q-<78u@z|T4C9CAa>^_HQM zu0qG@tA7BwK=eIT|Es4+T#3g|PbbH;KY#Kz6=uUY`*GwtYPVZoesI;h;o_g*AcG}c z|E@fV78u<7fjfAn`|JGG2%GNDoYF=!iw)pFjG$BE<&+|`N49z~e%Wj}!|iY0B>fpv zLunu^JDA|q{%3$C@}EVAISwWARoDD2>`@q)<)W}iSPD3nU`EyeH=cHXG@b=AV zwo3OTYw!u z9;*+Zh!V)WpP4L~m;~kpq;Gjwd5vr$-rS4MM1b#~tzy^62@7P=GkFk}uO)rq$19dhIlFx3sN2XS;APtU7WGV!;Be1dlMye-|F`Rj-G=9Jn{xF+=*i5XfwDvg{r<*M61GNRH{!3GK-_3qrkym=ZYzG&l0f;=k{)HfTeEI*eI;tT`RI6#?x7k7YX`D2$69B^4Kebhjovi5tA95SrK!oRP5&hX?l9~B)=tVkE z8wVZpizgMNt7B?qEsAt@Vl1zn>6K zcru}aj-kH^S>$q_4g2n~slV)eM+<-UC8kbzDV!7WzCGZE+Vw`kYTHE_`F zYi}cPFA0us0qQ(&YsmQ-lb+t~@ORG%A1+@(sPbX1{8kjlr95HHQ>)O5kxJ7ey%ypFk;cjSO8;NT`E z0)+>zUn49<(QG!{rDHkw3KCN7hK4fmKZ5}&nt=AUoq+;5`*H>8Eg>@Y#~|DqyO?Jb zsDouQ)&HQOF@EsZH^CSZGgTfuDQ`MBz`S&Owoi87ZB5wI01v_*WbWKE+d3=vV$dE8 zmb+&Dwm4OCI?u&Hc8}z1zat=LL5?H77+X+OO1`C6-7XnG<#!jjQhN|bik&`Pfh#qZ zG@T$R<6I!wEa)eoQ*I#tcDM{}T?Sd$HFj6Gw69nC*d^;^=^}IXLyY=*_=lr_qqD9m zwV*A`_>c&xR+sM)-&{Bs7bN;Wl)l;EdsOTl;K*n7c|&|G`I7lytI$Uc2nVbldY&~H zrgyoT-qi72lpV*(;dI!k9lM+b4X#1m#j9<8nU>rHg#rn1UyXbW0+=iWxc6XACM591 z$6U`#o!JH=i7!}}sXg6U`qqDscBh^`%A#%i7-TUIIJp6O7TnCwxxdBSXKo#Idj>N8 zGO6dA=-v=du$gAH0a*yo3*7{jNjzbjhp1aG-oqVB8W6_r<1-#N74Stnlp9m+p_|8? ziD2q|S?QpEK!-o?BsMOCm06S*UG@s=8}0u zAE}!l($!;s3oRKL88yCA@#Dio&c&kdsTQqX7^K{0c#z}~#HHENd0SKt+rAg3YqC*Q zN0!V+kcir^th(6J(myo?R-#+X7zb9@AJW+lvUvV>rr#`)wnQ_ZDz`f4{DLj3pCmgd zpF`E#pZwA6CG37%9z_rB?<4)cUJ0`zZnP%8fUe@hYztQ>%T+^t$1^%CsjbzZUpvZ0f*|5a@v{{eYXjewc zUXO9yB_&~^^74@jeU6RsG3yNlqp3JMo6IlHL8F+T;AKpaEkbBd8Vliu_=I7(3i8MY z>Ek)&^_J5)RcHKLpn!IbiQ01z-qy@yF7D(9FRtdPxJRsPLa*s|ySAnW%@9ZFB>c$L|%7LChBcV|0qERDG z6&GHrqkXWiS`R3QwEF128^}%I?INT7-t_GpbuFQb{$*p*K{LjgdEM{Gx6d$x{p>>c zv0t{+Q-qY!I`p_z^w}c%2@?ojq^o;^p3#q0pmey$@H>hTIuZTl>DXFyjAwC9RU+A7O>v-?XIoB?NYbu-1)K7(|cxlg%$3X8BK&s zsb|5{?QlxV=+C~fLF zhQO?cU(5~1vcKnHo@Q8>QL~*w3q~XxF#j~lI-p&EL z&WQ2tZ_A$=YAXa?iyfM*;(8-0FEb)r>c>9xqxl1$-(((va?t5XTz=?t zKK)UFHz8eZK20a>q(FSmoJZ;+A7}QbY01;_b;z!}xuMpEHLcB`(B4d`Nt77UyF!D? zT89}ocIH?gysYV~qoyK-%a@Gb>ZaNd#uO91`4T?rjb|m#Xl|7nZNkWx;9h&l;J;j+ zpeO`0Fv7vMrbJ&mHarhJo|CG9FhNp}42 zeaoBuQ!C^dDAVRlyc?%3YCeNPWIX0Yqp{I%cNVf)4Jo-6tV!*&?MaB+5n3t$LDv78 z`OEJ{H%>`kd7q9a=EFY)JFQs|E6IYXrGdL>_H3RB4WR&ff*IY7zIMZ_^1cgAE8+f& z$t0h?3!jfMu?KrDaKv^&EqXEmAw<8!5%48CZMSsK0mcI_e2kk{GRC{6u0w% zX|_EeXcOVzxVcJTjz4SDap1S&qI4ea@4gjV#$L+Fv8+wd#U1N}aC2c!*E^mnpuQB|QGX`j!1ww{$s7=v2K9P_C}}U>QRuX%L`e%y948lh&%fAU8rta6Xf^e< za(B_2Lm}>?;&^sZ-??^?>sPCg56y1fJoByp@N>_YsrfFZng&JeWcw5C3c)GMmvGFiVE~Lzu$^;>SI1qi&={evl%A&T^(lC zjujm`)0J7oQFMPE$)gr0Lu+&)JSm)ZEw4$+P5*4r*bVVIC~yewqwUZ@F5HpERg*df zA0RqTug`2&E+3bS4sVnYCD!q)ttb3Y2T3y{Y@SJt?il_Qht|wYgqJ^Mdu!WEo=J7$ z>0IMLZy$#IqXSnnO<+!!m?rH8j6YkJqwuEN4n)1;@{rIi6?u;|DKoOMcmpkV-06zH z51RB99$V3@I|m0b z6&0K*E*+HE;OvT~!^_P}^Hz5$y`jBhh9(cLJK(p%$*AYpy#+b#=}VQN0X?W-&Hs@{ z8kkef;OS*a2nZx6FEOnuY>(MdIJT3pl%Dmtzs4~#8dHG3hikQ^(?d>@h4E+BwFA#e z@4TjK8KfJ6yHLD$;*Xl!>_xA*$fLL@Q=i62Nv@^FKV0j&kwGfaHVLT$wE90p;@$x?Hcswj?Kew`N;%;ICCob;$ zP08uAi3{NIy)qguhU)uX7TTGGkM6r}1mitg8E(zoD_XRviAhOWAp8fG{y^LOTy#MB zCY6RjbLGd=6Ot~;a9H3-m$7&i!oP1p&$WC6SBA3`msXPKAUor3>s}Om+clJvi&dFx zP;Ft}6e~xsJ+u##9@@jwG+fyNj_?Hjot&dUNdt~`vFyhw0<+SQru=`Lh`9I`G^;K{ z!-NnNd+C9+4)dK12Gu5P`??2Q!7!_v&3&!qB9bPKS&m+}l1y6E<_FxSjVTUYGJx}m zRe)R4J>rya0new&C*RU2AX3GT~{EOoMB0aW;s4Kp(GfhP0Kc^J?v~_*S2a$b+XP>DD-Ga^r3uft$ z-!m(|Qfo@u;q$f>*K1PdR3$1O{wD+eH5~bgmKHp@fBAfIb4Zs$dro@^IzSE3JaA+Z z=(6+MXxYeC{r+#o2|`={r_OFEm6KN0<6+a zuF0gTV#QtI_*}a9pEAh4)<+g>lJgML38|rw&3bY&IQ!q82xAFik``3@mW@JetXIe0 zN%hBDV5HqFk8!JI%**m>bgYr>KShXX*Us?2zlJZ!`2X|j6Z!uqn(p6&Z`T&E`j{EJ zH|EsMmK$ICZ%=%>44pC(u*Q3jdmQos$=`avkS3F_hLRa)7mV>BHtlPuMmvL2ciS|W zYoT5npruM>bi+jj%#%G25fHz5B(}KUusYw~`6$qrFVg5(SiK>!oEwd_@W!Z_8Ly3IngHwtTv`T+htJ0z#7FK@ zfg=TQHXR+E#H6IpXcxlC`T15l780amDJ<=suY#E^^0Tu!=eAt>`Ul?7(ajlIFr`gc z`YOGU0YBhVY$m+0pNv#}5{bA%i2r&no2TqY6)43@~Zz zDSaWQn^w@5t-%DEQTAg+dh`n~65#Cu;`TJ96l;546z^HZM}A;Y@bMIg;{_lD2&?n$ zVnD_pcq1{d{<2LJqeogH0$;d|)BQwAdWnhuI1!qXHkc5x^%LN7qT*ZORG}FhfiZl*Gh0A?? z?P?1Nfe*j1)45E(DA$qHIIqx*n=~liaR>hVa`%_lE-$+IZCuaVndjS}35v1rs}W3M z8dlqjNJc)VsEzqvec4DCcc4?|3f$#B_XxMcw#_(~QnT923N+^`6q`X5TB;Vxu#S18 z+Ov8}=Mx2+J3FadH;uk{)kgs-?8et;zd-=xwyN+S1CrU{>%ToEz$1(s5M92jrNKYB zhCCyfbgB5>RM`0BmMQlW(nRZbUIW7Kz;E3W_=j+zi-s2yV zR3@!2a!NIRMDzC6y!-uPjC_WYANA@-lZ;lIHNo&+YWE7Sjgrq8^)d<;YGZfy6m_l3 z_M6vHasSk zR0_UdkZWy@zwuPP`c&$DHU1J#RBlqefr{(9c5VUs|T^2?{9>`S|Z8%LezRilIKLpvyca)6G8U7@l z-TT{i-C`u5>qn<;yp3e1&JdBj^u>CWM@thu*|+3>$uPW!8_57@^E==U*USu+P<(Au zeMG004Zwn>R)aNTG6o~$N8at{qJ)!Lm9+HDd;X%POlIQ z#yHY4Is{-Pqu#Id%3Ay$80@N+n8SvzDho0SCH;H0@*};UQ@v}lf3`MuP;fO#eL)~H z6hS^wRI91=Qv^cZ$d-&+Rb&|0nmB!(iY(W!K+h?ji7Xh}$762^Wi2T#CLi?v5@?$e z3%B34nc|XlNHAX~PgZ_otWj52*RN%2p{Z3M4zebisjnxpwX>Ugi&Hz5q@<$uHr-HJ zO-;^7>5YuB4$|K8oiDu-v0gAO9puu1^IH7+P_zylPZY;f@!>+sJ4x#3CE^q zM^2YdpW{a_=d&c%P1a$DCys0?eW)Ni7ljsY53xneY=pmX)TGKYlS}S<+1S9C=#K|f>j;RJAsT7gujBLcR z^gqbgIZIG`?uprOE*bFkt>~EW^|edGGAT9%h7PJw(FkVRz|D{zCP-21JTX|b-UbKT z)e`5y)Uf-LkbYS1)dy|uLKSvgecmm1eWkX#!er;~vCvWSbc6iCp2e_%w#4F(Meg~N z)8;wp_j^ag;@N2L=vP z--)xEoMQ}*TED1ANIFcH@tD+~LRLh<96bXjDG2y+IT(A1>qwprTc; zvd>`$N%YD`x|$BsgmL=^_gxKfWhbK7tI@q*+Rlu;XK>2nn>Svl7n}_-f3JB=--?3XfMe&ACFJ%rPj(?7RN;Eh~b zdRe4e(U-9eLn%Bd`h$LsX5_GqnaVpix+E_lTa6Ii@A#>?Oy5hpLxBOPxiZ%4G+D?e zzxA#MzUj2s9xl}2$AshdU%2M+R+^GhNqQ0a1cKM3N6mT&-RAnycFY6TDO7O3z#for zEgzge*K9Pq2g_LJKim`RO!MI>e_iumC8-+p`7_d8Y1HC}(t5EM zf;sE70jFm=vnz{c)$Wi~nRSjt88xJ=vR+3gVPFcm#nW~_LubK=d!vk<5D(5Mz*V+J z*5Ut!ukt5b&7*%umM0`TH~+H;fpNN4r5D?RBE@$I`P|usm!gs{`aM$M+Ws~=kd|k$ znM8#I&v`uuMh+w6e=8nlY>l*uv=z4fRcu zz`@0lar;!AIQ=GBheVGC0YCec!|@=IRJiI>6VZFrlOa8>lAtY@G6+(lXB)E5XV2TO z#}Dy^lIwbRnpiL?s_BcQs3d0(gGV-EHJJ4aRiLj__jL($!g3GUH0yG|7jL6G#ur1U zWpvc}AjUFUb;?>rVTG;R=+H#nUXjtVq1@zLK2%;DdtTzrp)z*J7a6Svw*kGd{uwom zjuUdeQdI3rgU$M9n0(09o3~h3ovtio$rH7K;(@k_O7u;hvI0o5x;JaawO%sA1=jq^(U6-9xk0D@oYk@_cIYc6 z;G27x2Slq=oWfK1?`I|Y~2AkRM>dHOO|&V`xk6#`e$&@ zD}t$VqvkE5k9nTmqD!VC9{glZxGMwsaGIK0c>fnC>6#WACGfuDIeBE!YhIC)d@v4+ zncJKMu~R(2W|~}+s*^Y@&+t|4RWs#W-o=jr{#B9nTrg6TO>G3ScUK_xumkh!)%adi zf?p3!N}|-d?`Y2muT~@JcyYdX)c$rC#5CnmTwBXyr0UFw?L|z>&3RP^zPegb=^KEr zGuC|h4dNnEH2>w!y9PL92<`(UU~|Gi6nSkQ1Z((~pLhZvX7SUMl|~IJ!q_jfzXm+KXI14i=~#6m z#!{>ytF5t1E(}*th+^;LES);5J$*wLt*KUc=BvFT%*~6Bq0H6_&Q8C1F~w+vODiE1 zona!FKG;&h?!gJcPx^w6earVdpy%W3 z*X)3N8NSX=68|=7R9p+iAWap%#raKvPjDmKd*-r!I<~BkdEK2EqbyNR-@sUF@6LuE zVm50iKU_k=U&gLrC8#(Ifrj1b=FLe!K(XkzBJtsahtijHHl zJQHB{y{7!O9yUh0PO`RO2sHWwH(*>=%UEsJ*>QceaIRNN7B#K>`n99sN~W}(w%y*$ zdu>oQlYS1D-JY$lS>@{Juf@u&WMex3v8>5}H8h&LnqkBPzz&=GO22Q&6G5TR9{DVg zV$M>|GUAa8`F_kTt#2OkdQiQW>e&Jco~o+#E-)HuF>jfi*XBR#U`q7|i?khR3DWaH zML#`HMd->N2FD1%qCUOaoC`rD)3$TdkVRiJsy!jxI8KSA2Oe5hRwK;>0 z?CZY~UWuboVfi`Fv($P#G>JZ@^%Jr;H^#mi!3XNY}6HU8s{7;CIv$=@29^4$ziluR6o?mu!0y0IHRs=_WhF_Lu%G*gP(cvsaPORDS`(Bs;Ea$)qH2Q zSB11I`JT_@iab{6A>4Ym9+27PE@p7FnBX4rq1BrM8#w!Fqs_ZJ%QIu0fFMLH=*w^K zYvjh`I;Jv-&ku&Ky)4`~!o8$W-{CL1MP(mFae4*rp5k+sd5yfu+3I6E^t`bXlsBxUt6SuI^!@i$4u zXn`r%j`4-xvH8R&$H!6J-D^+JE=_}bA{c;XAoYv0x=cVRk+@VZ-RO`|lI2-FO^ zq4F^;;%tZy9csc1#CFl5b@=`bS4n|9`PX0;<5%`vX}cNss(n@K5r^_y$#J1HJ*K*B zSJcsR1s!FL2JkHy`Esic&G(TptxsGfMS6Dd_pu%a#-=? zvDqnenL|U#z8CVP34#|(T*T@Re&U^bA;&vM(Fh^5Acr{(sOngPeaRuu!ZepY>E5`-A zV^Q8`U-JL$J0NSTAzX0QBa}SnLi$kqr-tG6O7y_MbSGnW6k`^Kh?g))BjQg@OsMxX zAo#EmYtSmf=r@WK;gODT9v1i#gO;k9I)RXzO=K?{9P_x)EcXXA$3UHNPxB|$iQU;yZD1q$$;J#TFf0cjwvp>ZaFyQ@XHaQMS@rcFpfIb_eF^yX`o_oibeHXGk@cF} zIu-Zf;;Wo*p0!pZWEE8WnT!om+qnF;+7VYoY7EkOfbY25@z4JNO9{80+Re`tE@axi zto?D-Pxvl)i}4S^hFrtSPPk)bE?_L+409)b>D^`Oa|Bz-a`|~w!oN7V*)3clt=5`!Jk8(?%GLz$|jD4b2E@p`nOR`-($LJS0;M#o~ zK(+6E7&W49TI9a7>HrHCX~m)X%x&)X#R;CiJ6A&&Uhfj44<}tuZ{xX7=5v#J`>M@3 z-g=_G#i-Vm zVF+XR4Z}4QsvPY6NFp-VujAItKUE|s=16Pf3Q}5K6@sg#eQ9( z#}uH^TRo~j*v`a(V_55ktV%Tcff>tDP9(}o1l-$;Kk=PnGorX&4>>W{!yC4Cs>PU6 z0oC_z07Lc8zM%yXwrp&T2viqwdwO^fEqz3|g{RaZML~sKHj*5chL6k`HooE$9kL(` zaF;k%7$3$xh{t5fvWDTEpmZH_u4mP$}Z5jgq!h1|2LmjGuBfeW=Kl z-mcoQK@s1DD^0xfgX)Kd~6Jo4jHO^IHmLH)qr#F2(^QKe< zH4RVS|3h}Do=Zfw?yTX57-;2wIVLnZ3gTEiW2PlT>Ocu&+skV z*)iV(`d(`sMbMDgGA=h78=4L9CPD}3N1$pG&-!DP6~^yc(8`L0ES8nf#hBAr%IlqIs$YKzyeXp}uy#?`1d9EYR?9iw}A+92OpQ$rmy;CLd z+tnb7PbsExkL><{u%+svjY#2EX3Q^Z-pzk;M1l8G zfuH+q3B(jxep9bT6wRsD*jzDI&zHv*1PtYS?^Tt08oqsV*xZH{*z zjYQqi4W1L#c18a0KJs93lFz-45atQX$l##qyw@oE!_HU8=qPoMe)5;pA*`9q^H!+; zK1ki&dWQlT)i=dAnUfOb;u$atkpG3q`!$hLm%vzVO-{|vqZ)LLY=K|fe7G5wlmGcN zT21aR8H)BI!u2&$FoWSCuib*Ez>y%H_o9z%h=zoAwYhNpu`rR#9Zm>Slw(JDx`W01 zD+$xa-dwh6_vsb1W5y-3SOi^ZR>V&+`v3UN`Kz&+|Cm$8kOFj#Tgp z+xB;BsEoaL=kbKQKc{zECQ=D*?%Aq#7i`v~d*!}Jp0)R?kE*0%W!+};6#vxg^z3(| zq7vG5f*|CIN#LJkp8spz%}UvUlGVnBl=KDBUpVt`?B6WXtS>$SP@SNM6Ba=`um;=s z5E~NU%7YY)2eUp$s(xT~=;vYWdh&gLF`!*VZx5dz#_vc)dwq&Lp_%8KzNf=QL{I)ncssHD;9fSPh2fXM#6j;#WK zvv66iOJ_b8R0x@nk3*}AB?3<)0JeY_mP%4c(bfen)}8~o)IXbPZ<|NI!|UOw54x1P zBKjzYe?JjlknQxvzX9Qb`R0W&BzHg_Rgy>w?McfHs6{>+R)+o@s%LS5R7KNHRZv&l zdZ%_u+kxEC$j9@v8;uHOS_ld7*aJ^l@wn>=H4&rO^XJ<&pq8$6LGO7zqM~Mkb5Z)P zTLrP&&0g~Z@%?BK-0Jwkkbr!zel6G(MM#a!FxZj4gC=1L*TedpMyygM*s@XTm*+f# zYwBm4d$1S`&Fm(gIYz)iL2YDuXX3&p0W7 zeFgY{>!D)xy>p?KFbwB2T%|TOFe0Q*?i<^#<6?Yh#6F0`D|SnQ^ty+!i}wuQteCOu zYEK5UJ>t7BG^v!-mz;dJe25#9{hjguDRI4+QVx=$4n;L(%E%{CtDX-;qaMqT^7U!2GYybW;D;yG<+8OmiztQ^Y9ND07j3D#0>1*2Cj`<)M+#x;Z><-6%pcFbKDvNV`Bidi{1A?SgT;0RVGb?jvDY%X#a=#W zxAA9FrvCqJI=Jh!hwDQc++s`3@8B=vUCIihepZZ;@)$Qgeot?S*)hpe7 zbJZtC`0MgZAp7HI11Z)G_F)IE?vL|CHLVmPgIiThf4Gm+hvhaauCu%Al)u&wHE+&M zo77Io?kRiqr!o*5?e>#M%KuRC-#4BIIR}W@rTKuDm=L4=Ru1fpCEwFSO39dzHmDPr zPG1N2z7i7T0^?B-egN9@AmhuO<1`Vm!7PrboJ~wLu-Jj2Kvn0Lj2XC9S`lZeXVTox zn(3#PXNY0-=&(0E^^Ze~_4J%<9@IUKN_5;hK68+!mZsoQY--eI#==Bt$%oDdr9>by z-yS+M$vuEv5Y2wMwnnZe%fmG-G3W;q>$SC}5-=VulRY(6fwKvw~c<}%L znSOHVr{W9AA)Q!ZmSZV1tD50N9*xE@hI-%;=;!#RDXtSp7YbKpsq3Z)Qt4CbLY18* z`6cYp_G%9bh5~q}A67rW8@p8o{12`Ze=*r*DRyr3~}k$9T`tSeM3>g>vAs zv1$jMU)YO+FxFD(swCHjGGz%72c0H&9iRGA)F%Qi5y-ws%~Hh|t(X%#E|LG%A2ZGq zxupG*5U7`uHyQ~I&#QPhd_7}xsTD6=GcuIygPV|V88NV!YPo2}Kan7VEvuoF)n{lu z<^V|wjmkf(rOVpJ==22u4D%SNPCh&=DaseSMGWk&2b-f&24FkgHWYu00<_}Rpvr_s z#MMB>XLt)x#_;Zw|L*wnp8n9p$1m9tDu2m#1OqEc(T@#;1*}JbMkCGr2;PBOr+sG_ zI?t%#7)beAhH(F>Sgkin{4SScrBo=Lsg{)OUkbU(rjEp_?Zvu>*)aN!o&r{EtENMl zgVvo`hWAfvcPpu;8NIr?Ovf?AfvKuhs)X`7YWb8 zneNG!L;rBRxXbL9`y<>5_#cd++_f%7g;p7}WQ}6nTYs*<;_!yS@cOtn9ZFc|cPnm` z$`rF%jAJ!kE1M(siNk@I4Qvl$7^m~8y0z{4&0-`nLO|!3+Sl%ZYyI#@orik%iRo5q zL~*eUInz%CvUmrxtCx$HBwhB7w=9xjPZkVEyX1kN-Hc4>=W9uijiuceU6Ob&eN2RTO;=~HJ!Vg*Fz_6GlO)*hvm^;E7+uL zGM$yxFlDVpC#~aaNt?;KhLZ%f|JI7BRD;gQ%e6b7*Q3}9db2FS8CrPhZ1EIA>TyDi zS{iziN0yzDBY=|63nG2tr3yX=hZ6(_nz?ZIs8S@@+oVxmlg;Or_`9<%OrJLV%+ERW z49fK*-+b0WxF@pD9Ux4q6}d8q-YN9R!3_kog3-$ z?SzIhE-r9mID5BzR2n;$6oz)1ES;V89M|V})G^j->j6+g`p0JUom2OAaSY2AJpI4$ zN~!@h(qEQfD{$u;(+Ca%k`O54(%AM+T^(Z20W}hdMBqlIl1O?lWLJQTiX9r}Q(s;R zb3vZDWWFqhNn>5P@3kf7PEkcOhwMA@z(V6|9>*GX$5u=Uy*iAmRCGVH3HOn=g zlcR$vtmaxNY0>3cktVv0QqTq@PeqgK)PGSpmp{J*39}$OZZDJ*r>lNCo^TQ|iqLe# zCUw=~Hwbv|$rBX{;3{zNf6MI4J3Xv7&#?|89d0QaaC0@KZRyLs_Xkuv)?L?&O)o6< z7Y@tL22DrxGkC6;Fh5%+=;100)b)E`amo0F;_<%is8Q?iv&8EK+k1S&eD9P#=WX%) zYt`=L6`p**_^1L)$x-pXl}J<8>cEnf;Q!cP<2bIj|9xuana~?CX;^zb=;b!oM3}*z z3~EWq-kIos0#$#LOwcE%@O@0~zd3%n|32{ljV4f%{jZ$=A$r2{9*Vao#*~qdiQxS{ zh?1lI|F?h4*__lnmZKD=CZBUp{lLf9>a&J7>TZ&Je_m$Yv!N^Dt{Z#ZMMRF?Rrs7} z5xVW|;J3(J`P&~LIzp2wqh4k+H#nLzx$s0?#kY6$uwrF%8@~l^WyU7haj-{Rmgcm0 zP11jJURGfdU*1p5K0fV{ zvIgD%sQQkUQ?FT4Evq8p%)a7da9^$yq~Y=WtJfg8KO^JC*7_IDP7zC&bk=4yva_9G zVti?M9uoe~7}HMy3uCH!MK5}^MAux`fswzdNg3!m&?RuVOe3GJ<>>|%!w;bD; zE;G*ls>8l&bdNL#l;?Q}5@HLe$u<=*F$0>SaPH7nmr7e16 zK_u)r`o9qY^|oYEWQ#HM9!xL=?BFTwjF3Gcyi(8!AX0xIWKA(w2ZxnWKIZ5sqVhPqm-z}tHc9Hy~mFSF%j3%PwU zhWr9V^0bsYe`k#vf`;}eJV`I?pGxw<5=rcp5KS2U+Jd`=co_{(s4Rb+GlpuLZBAvKd15bacs+kj0TL>z6qiibY z^WMXA8)fVTHx0j^=r{+U95kOs=hI?kVS4P`Xwd00v}y3^K6r|VV52&NAU*PGV*yn^ zm@kBa*XIbi_*p=8f;czO%oV6K?`_q528@?)M03<;I0&p7fQAOm&LIF=h0^8&D)KOG0um%BHfGUN;+SeLH8F?e;r#B{zt18GoR); z>a-ODDA7Muw8`YKDn3`JY@3R}Z&As@w zZvr=Hy5-dEWbfp(AS1H~64B^B zn&d5I2z@o8%a+YH)mm*#qkL}$T$=?8wQaAUGcl_=7#zQ5UfJTY98*?C^`#?B(cggL z%yG|=U3>vG#O0{>vO6;ELl-Q+p{Vi)kD?M*SE}8sTv-o1!gdzS=jmtbGkViO20}1_ zL&-ny2~mtFUl+D1asJeL5~z`m5)S6e4nP5rBvUiPcq}93^A%ch)e_O(e7EIZv_8q`WjfOrKJpf)Z*wWkCz9AEJS7h9RYYr8iGCd)YVEBO|sbFLl0ZX|f>mm8zf( z?K@p9CR1t%s%6ZQ@NJ@=hS(HgKWyN%+(tL=dz4ZbRViR|CaqynOIcjT-*-VFC15kJ zreWU9V4AYjpBrXads-`#?Isn~gj;Pp@~|(yO&N=wr)7PNt?ef1Pr`AmWPQK7Anwim z#B?mks;EHj*%DD-I5~ule9AVUxYlKxhQ4(}alfdat%cJ~&YxlbYSw1&hcUINoj|Ub zTilSn8Y1{+0%@|RPCh=S+tO`_v~0uMgZ`nt1indb&+1ej@dlKa$btM2i!)4V@COQt zgg*=voi|dNf1!3->Y)#gm<8d6u=8eT43TiW{U*y@#~wq2uWPP}Jx6macXVgGHvw%P zXtI7`I9ltEFc+^2X7L{>1k5A&n1t~Xl`kk@l5d>&e=w*aB$Hx_Z*96-K}NEEFGTrs z6FOYCdV3r159Qd(IZ+>!Yxr zW!sM~cF<3&=u8n&O6o*AXu^ilAN>&-?-e;T{_vqQS_lm8Cf{lX`ZzlTaPt*)K!P6SGt%{CDKjxMB`kJr+jJ;emBo) zQ4j0{nmjHFgVI{QD7LMJ;ELonEBvA?_=(gMt6Xj${%8CnBYR~gaoz#lrNg5Btn6Z7 zJ|=C&-dZirFwYi#AB0q#$lbDn8*Tp_8hjSeRjY^|5g#0*TAI2dcMybZw<1K-&~)n zcC<)I%^UX2n|%BBKgsMzzwd6=w?^_>y?2FD7-SM&s<>IZhTvhU_28?IXJ-%k+I$>| zKbYIoN!(e1G%37?j^#GBVD*Y^`9dT@6J%s$agXG*#}hp`!IF+TP>{Xgq*>p4j5PvBb^OLSd^{gfpUzqb^SyDhHuU4T zz@=~dgK~wDE~3yZ{pXk`Bafv*QU}S6!Im6?7ZSgek zop7!59(5(H7?!%qB?stGGjjg9Pb}#xSr0qQA54=>>g>clw?P?TRVtfpn6r^cGl_$5 zd197rh}BGPTdhnh9WKd1RB^!DH0k$gs%8QHU8NKab!e1SHnB(S<@1p4@dqJ9Mn?MC zfdn~|EGUvi{ljmgaz?szSp2uy7p>STYeO=Il?y&O;TsO!sJ~V`zx~;t%@=-K&7i7X z3?`iSJ9;-k;kuT=T5>Wz(|78XPX7Duy^`)1ji6UU^@|%I9u;3+u23vC#EN(sU34tSA%63dph-f%Vh)6%uHxq~|Dq zl2dfjWB(#=yRx&FT;a(7&0$=g$93vS1InI$A!OU8$!xfHsWo?y`AK)4wsbIRd#ct zoTPZZNu1qertq?ffbDb|>KU1VuQKiKKZ0o}XYnMjL4ZRZr1eKYf4BuEfMt00d%W>; zUPhY!XyI9{fRckrqb_5RG(TD>C|zBeIOn}!)qDj!3mt2mucY}355mVSxH1_NwKUeLuch%qfEV2Rp=B8ME&-r zY;tchJ61UCGlul+J0#KQ(WYZpG4d@3+?FVDJYeJDtR|i}2GHxgjFdKbGK&H6~<)K`{d;caw~%r`uHMLB0r?D+du(0UIylI4+@hlqAM%AlZ#*dl_uIn)BF5EwbIE z-{`-@BmBAxF@mfdjqmY|!ZdOJy)rslD`KUf&4(o?O zMkDcBitK0g(TDx-PJF+nqE)oha_&h_jZ?{r?y*9c-^4FK=G9edAHwjaxbB1gu<5Wsut*>3nvVU_Go5a;1 z$jF!xQ=6Z&;Mv;0oCjw2UIY9@Enx~?lN{7kV2x|D&Uo7Zv)bb!-dWPlI%hn!QF*6% z1q@)foBBf4podt|juSC-Qtt_*lHdQW!qL;mjTdk%xw~E1}ei#<&oSC3MDw(^2^R-cB{g$?5z z%-7N2ULW_z7sqR&*Z<8GH1A~EeGW^yb%j5 zF#$mbnsU^E$1h*9kuO$5%l9f&QMn)y3iOv=G(;=wM>*@K$Qewf0|Ck@Dwi_KDH)EL z!ln|+BOV!&>r;{IJF=DqW5yQLH_lQCtUNo6Cd#0+tvcGmzq+%OoFm=H&Btg$;t@-T z@BxfJWX3A4K1atqsoooQ*HPjCA8Jm)fkNE~zDLh?J8Vqw3ZNtbWIJ z

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%0Arg$Vz2NpJhTPbHaK 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 D1U#8H literal 371278 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

cRa;mQYijJ0_Q ze3{YcuSnC=QWwJw5MsQ52-F*P1iQ16O=D zR;-KxibSi^A(&yUzI#ybsgtHE#@JaGbedc)5K$A7Yyxh~QJEK7ZFLeL{*9+u4Zr$D z88E{ScVg$^Ku zsy!>KAA{eFzPVv+cXhWwf_!(jQIqu81W>Dzd?ONhbP@-PeTsVZf zOeQ9&^MQ_O2>i9(Z;`@xE(~6e=hT*k(s-S?6h}wqL z(>9*H_4KvgK*+#GtGfvmm235izo+*JugJOQH0fslP|-%4qZz8c&xe1Ry-xq|V7vxY zF@hg0U&n%LtgKpI!uiw1jgg3FD$@K%hc{z z+w@q%VrKcXBE#PF+)(x!Z`RaRN#nAKN@m*VbP95(%RQO>4$lzC1Ac$~N$34>Ox*qX zV%z<7$^d?@cAd92(*T-Vb9^nObQqU2`jR+?l_r64g5TlPz^I^pguV{tNjpmAAZv6-o;#+YZ}n6aqc z6g{N@ht*UPw#20&Lv^WlFcN@3saTNT80~0!gq5P9!d@b(R~ZX@Gb`nsF0F78jIoVM zpX*KzZKhzK(pFFz!64AaWv(GDraA(k~UcCSnm@5S(?wK+cFX=|I;*#R<4Xy|B%>n-Ljj&Y8ZvQjAhMy$11Th4~o z%aI$o6wS@VpsyOr93B2~Dv%2GHromPg z3~diVYB1^ZdqcoSL{og{%xyh1ffx{VyuG7j{t;T9-py1~2s#}Qbx%PD#S7aIDZ=8v zHXNV~^g^EB=TXabx0U1$>5mS7VEd=lme&$*xxV*sSe|!zb;#SXc3hj|0m4YLtx?P7 zF7Zt6@cY>P>$l(VJ8#YRk_HTq-Hu4k&P6?B4*9jX&_0;d#EH|%RU*lzsAkzVsPf^I z46MnW0hT7EKhTd(f^sToLIu1qu1{w254#^?Vk8xn5(x+;2yz;YS#Sj34j(Fq0q3}O4h5{M3QRzJW-O_U(99WR0;dqy`CVH*BH z_(x@b^d@aE*!MFdD}Dg;MzY&k`vuaooSEvA@h^(?^hNzGE(9h0nj^e+Hx>8GY;^UY^kRt0^XYZa-J-8JumtGc z9h*?UZO_cXIky5(qiCvcUR1K8*hn=C4U`qI4b@*N(dbiEQ}ByhyxwXzw6PiW7lEXv z$(mdY^(grM#(NnnAroe*vYPX>LsExE1834Nl`#`@87joo@hol1;iB z!-FrHmKS-z3}2N2oi-mkp%n$<-QaVhHd|zKR5%$_`?Srzj4nc+M$3xO#g4StzgG=X z{H@L~MS@-I>ABQO92y0j>!4I;4mY=zOlD;cTraV?-=F(#w>rg_aVgv# zKQ4GbE&JpOy~mRZzWdh-diTTHZyv4}FnGV7vc}%wyNR@25Om4SEwZMqpEZv9Wxpp_b)Zpu2IYg41O?-XtsVrMYZIZj6JE)ul`QodVl^?W{FUi%I;`mh}p4m zzQ*1V%E3mf#oCnoh-l_~KFY`lFK4gAGX$C;xZTdlRv2@3k5iHW*lIC60(G_wBTsh6 zo3{cwyw34a=BV&GagGOnvYp@1xTf>=YYd)-OAao#8WSlVQ>rlFYVCnWA?MqCCGoEm z#uf~dhU?)0Re;sP7-e1Nj$Bi#s`IL|_4e|6K$$ZrS#h^2IGrOXYI~*nhD@Z;^G)l4 zG;=KfG689tXsp+e9FN%>D#OEg6fa>U-e#=I8^-)7f$@DI)O^8D6Xy(nV03iaFunNy z91r(Hq@cE8U)aT(OJKHD!|T@r+sqQ692f{3F1A`)n6~TI_j|79{CY^55j+Zt6WrAW zKi{zL8A?(~d#&@O+WA3$L^T8bamkyPN3`*>-JLO$bCG_t7Dt4un0R^h^VWevg$%&W zoHE8EMl(h-K3fcBOJu&CA211|p)xn%6=Y-#oFRdj&Mh7uV%D4`*rysjed7HBMpgT- zEN?>ifLH3x=y9*D?_cc2Rul*pIBnN`(O{V%Q)n|=8rw-euXMo6c^+7qi_MJ|uq)7* zg&wj8oW~F1B|>$=2Y?U0yd@^2|7^~Dbooi}h$+SLjV;IUc5m?A1LN@cXMQE7V;?wD zN}i?8GV>iQ>b&olrk~J0gf|`@v4X1+e-g&LCO$`~n>XNP$r}0Jb%UBgdyHSJ?Y{l= z#p{qEvd~&JS~%k_?1ZZ?TK<>8+IZYD@rO-^QY_OR?nueUWnD5Ublpr@mrhc|@0+Jc zuwO^|9MRo(Z*&hJOSTTB5q7Xsj;9C&tEh`1U+FsF{}o z%XQb6=H~I9(=cg;r|9d-%R|nVLCLi@*EcQho?)$~3at#Sx&(~AZJGy`eW7?p<7f6} zaVa=oTq-MEt`GK2RW{L{pZR39dfRZVDA09YAKk{VZSuN>^Wmc0wU7$sSGQ$qKnH?) z1fb5$Btro!>(kfW{}46kUe^X}#=;%VF2VdVsUFI@jKcH3XMIkL^EB1xVpdwW{%MgI zID7oG)!AlG4l@)qeV`_%=OTQE^H>1SVOdV$}Q45Iu5{;K2yIsx_%}AYJ z?ha9sG?DR3PhMVL;1QY4(jrs-fIh%_L)45xM`YuUp|MtIus`QStN9;+b=;QmXT*Dz zkZaasSWTVP1~^Ww&P=C-?5Sp5e6z>_X6aIC~6;E!^h zS0r}WP2I;Kq2#Z-lgrK~DE zg_v!v&4UM2y0`aH;gc=Uodwc+oW5QJ6^J%#K?9gcZ=KvcYiN=ny>@d0bTK(TuTk>y z5pPdjGRwgP)E!53hR)FF{@9^Bz4>A>Z6qyWy5^R+yx2rkW%>UcEkJjWFS*+hH6`fG ze+`juI(rXpDJqYe+E$V-|58+wC@PN3x-s&73;f?MRRq1Cbp>19!xWE+4m*-lK2GPp zgNZlqtcqwk2U=4xKKFQ<@?h{>dk+w1fwp^VDHiSYCd>$bUlje~OFxPQi=BMCDa&b#8g%Ulc-7>gkDBd07yQVw5Fg_TZ50!_lGksIEj#@sG$63ligRnazG%z0vJj{~HE3-x z3yX-zW@B6J;NoI7+pGFUB{{#XKHR)Tj5HxPFgKR!=%k{nt{2_ZCRmGDidEk3;-w2| zkLp3HB2ryeMrb@7QzGfl>-D8GtVln+s1!#*cjCDJ1`Q-IAANo^?*6#L(O#K0)(O}w zpUD#I8B`M8Tte!$B0BGJSYNv0l8c4rK4qifia{mOIob|UA=>yRyw#X_AJ%;TQ}}I9 zyXEzv3zomrBXt8e*5P>{eY@2$P;t9`xaZ&7H)s!hf?xVcm#=Tu>+Y*7&>NsbUhi2$ zI_~#3^5u-c2QUHz6-{Q2s31CP_WWEOp_ocO^ZUPpMgf+HxNg(?=i5A+JfJ+;1p#+c zQ;OntXKxW5Y@4GMti2B35bh2CapiOF-9SU!%XQN8>&KN;r_U#S9Q2%9oX!5*-c*i- zx|%L>Sq}D18jaDwKtxpZcXl!~QdHFb;uv^Tau(i5?pIwoI7A9T`s|l*heV^oGeTTh zBO7}7`6qd~A0o||rhGJldcU43KH(ziT(az@_-HR;5d%QIME+`;YXKu3jQzml5B<7hzG z!C7mt5^9=_6ApANA9=DpKHZ*L50)m-M7=ufopxzN^t6tWT2N(;eO;inV5BLw`^|YI z_NK!28%za;LM1cz=UF~hv#n;|u^OV*>~e2pNP{M)J*9IN^t3f@z26MX(~TaJ(iWqz zK>yl;RC%7B;##uPFrxYh4mL|^UHC`+0Uk@UfA(Br(QpD^b9iT=babv#-)h7XmVD|= zVS7g8FiPf0wYwv>%m2EE%ns$zd~xT0`Kc;li(<<)Api|j1+Hb9Hlu<0z6>)e+@F{C zGcPZ1#)4VSItJ~T`Z~w=4PtykYrhL0sIqXz)P0++PjE+2d|fgp%wt__nu+CdbEqu0 zx1;4{%{n)+Dp<-s4~Oe(H+4|trAw*Jxj7D`&S$*Oih4$Vg?;AODdKsemhZcG#I)WkZVk$-t| z85~yxdCke`zPgTnb|D3jBRXSoGA1Mu?I~x5fp3JB7@p0HA6cq9``B%Y?(wkQ75Z?y z%liiVG7~=VaWhK(QFiDTOnRP;B(0q(c|^iv&-JeW5OCo)TCcBd-_sh&B=vB4o7sDd zt>*_W#h~B&@LXZGy|jS)F>z9v8mufkL5)`YBwN_XtkLb9w&rXB{)E!3sjc1M@(*R( z^9iR9yk>n+Hb-sMZr!>PSlkV^IxrBEoxqd4qB_6Gn+2aliGfKxt|8<-`JqNvj!y0U z@GAB3FyTeC-4gp#L~f%~-N~61su1TNs*)OTq@ZT_W%bGEIC;+d_K-6Ubcdcjek9uH zj*!w&y#M=#f343mG(c$X;rWcAc&)R$T~egO+a45^sPE^U2l~bVrC&7(&u-6qDqNKG zhqi`9vcxMk=>ADMg%fK@Uq=(7jTRdk($}b56dc$4e2Kf#r}wT+A?vIPCRx7&+FUG1 zxKLgH?jFiaU)r3UO$~JZ+wJ6R_-k&zb5!}fa~LGm@_HWB@_HMk_;Pp#c@0m0O}aI4 zfa&FNu}Q+oV6l%4ZB|`a-A>Zut?O-Dl~do~GCRL4*%Z5~#kX&95uMb9Xs2M;%H6hq zej3?PM5s5d=ic_ZdvzTY7FCvg5MD|2{PeePWCD|v)c(W!6CMHX`w!-HvVUZ+-O!ld z@zF6PgFm(qP~pF^@+YT{!eJaf3o1KgQRl}*Df?re(jE?vBxK`J*+%wulD%xaJ!X_fk%Q_oXgXm zl>@N=-EgtmY?hG!JIVhyRhX;2!OU_BQ(b$=KnItjxYPR^1%2vD6&+2!&pFn5<%9(z z@ytV@_qilek>@JdI4q?K>yMP`i!?U~m+9ZB)3!z#hly=$t8JzsyDlu+D-0%Oog?++ z8*T2lcq6gIg`M6AudhX;Q&Ut-wGC5aW2WwAoC6J#%qE(YVxi_N>}*kncif7*08O3o z;4!sDjx*Zw|0!G|>VDuKph5!s&;E&@|H~e0xu^%gs;Ma~z3ThCV&`r7WGUii?`AD7 z@w?ri1vlSC*%JCSTD@w=v?! zgpS32)l!X}HuPS0aGHN(D>1-wwxUZ1Br6&@fN_=%6HwbuP2uB^O4MvFJ|=x$tEalJ zukRj^aW^&%RmG7khf2Dyt)cH7NknHxtc;{J_JYBL!6f1w26dF+4|hQe-+9KCQfi(* zqPss0Hfq@0#K^&6t)e6ojuj?oCF91G{FXx*OXv$!bWRLBY$}8p`w3?(ZiVy;i9wB* zD|s9K4QsTgNZ*87ulZ?}5HUGss*Zz&VsIg;_%HLXqQdYb!j1mJZ&ixfg9q_i{Leb$ ziX;=SW2Q7SS10$?E{HptocGm-Zt4v$dJg}J21I?GbZDOl!zpNa1EH^CJ`PCj9gjhY^#T5~ zCr{Kngg@Ngz5)k`Fmo!~MQ*irfxp_i6Roskl+`B2p;=M6B%WI0r&YZXfTT z+rC~9mN}QJ^cZ$_^tX);+EI8o!~aD7ibQaVKvZpb1$@9PDz!}CmKWGr@dIhLmj%)R z>0{<`_Kp`1%1>3g6-V{9gljE!6z|KmyNlZlIzm4Fuq%qrpOYfjdc4CCTNhB3u&=wf z&|e3nGpkLe-vsSy@Se`9tMM-m&Vbe0nP>(QfOPCOAAt;J_Uw=*o+^79tn5?=2h)({ zlIP)W&S^W#-T4|Vh$YvW%d_373s~r}Fpu{qEfK2|o30yy&fATuuA9xS;UdH`cMt~K zK2K=4=%B;h_5BCi1S0hKKiT&i@-@4vYa@F;XbwlIxD2UEW>xcm2y5?U7 zF3HXJ_0`2)Ihe61HHmhB3o`#tjrRS+)7T&)XIH0@sVQxejxlGb_IcpFZni+9EtQD< zil9_LZA`vq&dKiX_jer!b(-1=uuF#8gR}F9jw~u)y>19&rohfFt)}uEv8a=}?wV*0 z4QJ#xldQ*^Syr z?B&|%?WZ=6N2_zrV%LU7gG8*oUPF9!;skV7b(4xk1$BXMzoym5@h>6TFw3@q40>)| z?xIlS3mi*f-BsS8*M_o&@}>X|S-={D=61a!KB2~p>B8IV<#v7O0mPB)iK5fXE=eeo zG!-Lf?rJ)ek-R?_|Fw_*gIRe=`cqGUWnqPUcq=48QqDQql<^i6pXGi$FVWiGXlcuG=^sZZi3UY-`gu92lj-ux-Hy!h0AeooRShw z$!pZBT&7wtk7V7Zmv)I;rRjG}M^?iokyK*#Vp<>M0$wJIzcm-i?X#cn;E{EQ$IYkg z$CbUkicY$Or4~z@#~N1j)VFV|5pYaVJHS$1B{f}dHB*jR5bxjrXi=GRjQ)i- z5pA}{>Q<&Y+PuRkT&)it6?u6$T(RGDc|<90dkqd`op9GXhh%fb=|UWMr9Iu=x7a(} zjp8I4i#a&|>FZyF)6jPA7m&xtvs4T{3^qicq#+#V1wYRnGQHI148go8b2N6NJK^NI zTV6}iS>uai>%hG~f_-+sIK~Iz*+ZD1i}n3pf@=lcC(RXa?&l8pI-TEHpA|`tkGrq< zJDd~3s9f)>4Z2Jg9rXTP=(Fbo&nr0fUQ#slbcWK%v1G78Nv0#`WK|_K>Q5iwf$j!E zDncb9cB-(s^z-UZL^?nB0<7jv?&Kfv>t28QyLg}d>!KR&LZ zlWw&;PVFW%{EWMcEN7~^!~N^Cv;JxU(d$$21)z;~ei@z>Lg5=53uxEUGBVAV(zi#2 z8EqSbm`MinOT<>~;=jfG4V1A8uOyTP7by-2K~xZcuWR}?xgG24l+QtMlhomawNNy9Z?ATB8LHo%RJaAxHGr z-dCb85{}XX;ypRT_xSnEg5+a!R++zS{2Up|17XZ1<^B;x_hSU{3Pu)CT4NP*(*%80 zosRTZT&aBM$ljRk*?z(H2c+m7FJ6lzU+8ZBem{thZ+uX1;|2#lygE%Dz`q3Cse0b* z4smCeJ{H}-hSa=yL}O5|D212)Y*cnqrmO1y#P)B`Uk_QT@fn6#3=ZaoF-I~AFYZ52 zXYrudTkc=d?r3`-wj=3r@fYA*cdX|cniMDXSrX7RurgVd%B?MHDy4)8M6%Y=#S*rG zdw8T|Va&uwKKi)3SNVGW_m!^i>k-GpHi4g>I+@+fBbTl^`EbVZ5cPx+pZUp^|7DE? zjPTx(J5A>exDj*@Qq0@LPPQ{UxudYrTbzzPLR@Vx4*I-Eb$0#dO0v^Em^QPGQ@(w8 z8GuZ*{l_0Na1j}i0Azxo(D(IDBh)~NPsIw&>!7O_$sK%2XC>=TEvQ#GEPY}2(ecAs zG^wwsP8X0Zb+9sqTzQ^8dN?+-Bh~GDdqS|~$wJN3ISC3&dp-Y@^8T8J1ohbkJ>Tf< zb@9%z zZc?a;;lG9g2AZE7C}e|TDCUys{z+eRS z8KRAn7$!APS&?}c%#eq?3TWRr@@zjBYpXfe7b`yj1*}}_u@(q>ww!D=}gNt6N_qn%HXUG-n==|!`dJNpisL~h6 zi?KegSNBC-sZAd!RU@|1xM?!x2z$0q$#Y~XQzR~E1=YGT+G(!0B1&$tH2m)GAI3ID zq>`J=W^Qrn9o$ryCsAQ@nX00uCjz~N{+nZA$?W!%6m7}iEr>t$%D(3_v{uM_SR?G_ zuj!+mV4TH)^E;rszUm0}0;anqd)oPe(zn@iPvhO=W55I2uR*uBMUumNRUj>_w#@M{ z#X{kW!~fIo(P+h5&xQq|XpJF~B|-U+Qj)FRo<2j_u=vFteeYCQ#1jJBLoA)y2+h(_ z*`0fQDlY_E&-LlY`#ZCGH3I>zNIMzF`cTGVukc$~s1^2tQlDibF!$|kL4#z(!wdc5 zOd)XdvTWia4kOtlGz{a?ATC9ZiGT6|y6*U8;=P@Z+tAD^A|e9X^DXq@dO?aLYoA7m zB#}t*YH*I;3RrCOz|4v5P{^^18+mG~1-wL_$=|XvSCQ1oII=BCJxc*-(vMF}3=a!KG&37s=LG^if&Rc{Ej3NG zpG_?d{X=8u=2BkXM;*!<93l0u8G{l~=$JTz@qK5iE9xwMW1?++(`EL-@Ak}~N#g~G z&Md8_Zf|arY@6o?8EMx&OrGCe za29Ud-_v3ESUc_U8Z}!Rt$8^q9~vsx+T$2)s+Yro4IAC9zLx~Za)PwJzwS(uPpBr7 zyGo_FWet{k`0wgV4L<*at-p$D16sRq;X-kDFQvGUW8PtkO zv(V!X^f2WixcmMQ1j=R11aWhLpDW`*CZOC>c2FaLk=`S(0ks&kK*5-*xiHCU2Xg(_ z1z~M|Cok>V+=Mp+Lmk0NJNVvvSbz+n!Gg|H?gy9+6!Hz>sW)3IT@9|d^*{Q{^$r|E z_jcR;J@%P`tqJuq4^HQgM#`g&BvwAxu@vqX(pqfkeHAv}D>B9Y>>xJQn7`pHGCSbM zvf@iM)_?oZW`5(sTWwev;~m|L5L1l5A?o0_T|Apgf92!{bEc@$b+ zpMkOiUP6A{`L4X*>vwt|n2TO%-3=flysq; zTKFlu$fEbK5y;QHuU)Pcz@9$3W#ZqIsX$?&gM}i%0C*Fl>z2~iC#pDNhH1Nr+3Nklf8DL z>m89(J(g&1V#8*2==Xg>(hHHpL@x+*!eR)9j2}7;J}6jz{bv#O6Jg8VJTxi5(JT|{ z!`H+vfqMo9_4H-HGEL{V@r$`JqLyK>*lcVrh(&6GjDKKi^Q2z9|Jpl-wt*RDHdv`2 zeR1|yBIY?lG|I?Q6f^*3YmW=F5dNr878fr5j^FVdEmEk(8kBt_r18p6sltpdGV1G& z^a>$iuA>||L-z?@s~#wym$j}U>{)VF=da@2X&m(vFNcH6bW|yOp z)u?+kSvr|_aazrAG`i@f*~Nklvnq3cT}Jz9cYQT;ttp!4(;e)}k=uL{XMr0xDdB`g zUq0=*p~(2q#m3*aCdbRmN#ZJFVS4eE(WeBV7C(>bzZNV9(Pw{;(>h?+=Q4$BBA5;^ zuO>5=yl;BGv6650tVm`wyB<+&2E6`c+i06AQE|8#c{^zjJR`d>6zCgjV!iBJeR#Sb z`9%I{Wkg@b)9K`rz~^m`?G`K71E69&sOtx~)6BbkU_X+f-_A%%An?nZCcq`{PDpjMr@g0X(+POtWo4MdH>ffcT;P%2^x82>CYTEK zSe$M~ksUI{2EBU@s_?UEF3gI_5JBy4fDll2VFn0|q`>+5-;ebFEad7|iJdU}! zD*`^pK8dYN#=o(=R!l&I{^T%Q-Tc|D)?#@D3WOU^?AC^MFIch$x*Bw=Ou7o} zs7oc8GjA<6Hj@y?9iGVji~WEg6Uxcp`a!A4e0Yp3Qd=CUSb0OI<;m1^=SN5pF~gVa z!snJ)QbKuCd13!`!(W8f{l32Oy9WwDRra@#uSbN;;^?TfT&(e5OoMg@WjNFv+T{@+ z=(HxAcsTnFs`=trlY{l(HC;2ABRLLNLb6dx*L}@Qndz_YW?GLeZBY+%1czNk zDp?}#ZlF6}GTHfjS3ImNe2nc`7Lv;nbU91nzzX}LQD)_hVJ5C;c-LX*-F=f`JrNv= z3`Av>9fAU$a2n6(`4eJMS&bi?P0|KvZkSm!ES)E~GukW*njJ;M^l4iRc!>tR-y{s? zKlcLqOxq1>pZ}xsw*f)X=>ys@ckW;U(DD8Yq$?NH`T}xS_(!U`*DNS=wlt?PHmQR| z&y0NeV6|LhnwY3um}i5)a%Mm7U|WQ?%=?xH=tP*6u{>5pjQ9n;qd~lZE3ae?I9uv4Yey?0hotro15lfrWpP482z4K4?D3&%AY}W0i z=b@xeAzhcSZ+MQ_%MUBZHS>Szd(5`kgTg&Fu2)1PLwg*q>R;-aXlF$$6A_nUT(0`H zc-b5*N5kV!MG7ptoiy}eyG*ghjFK3~%fom0jaa{%EqL;EQI_eIsg5xjulxH?o$r@%yaabq^)fA< z7N0MSga?`&H};>}FugC<)W|P3yO;Q)>wLeHiWohW^Cr|hpMsrBp`K+GM=1yhVuvgY zXp3mAc7+28rT_C^stB@oH^^GL({bMe*lT~+1f!I61y=cp@H94{)}j;wbL7!WuG1j_ zcMw=jK0Y=a+#Q=V-JvK2x)zr$BtAB>gY7HBOrbjH2M;b+^PZpXPSkM4O6&Zi7A=YpP^5aAOyOSUW&wKnoyK zCC#(+{$WO{IkotDtNZ^Y0>WVddABFko!bgQM+fCoSKt37`CULjEcgYj=b$~afEw#v z{TmxUd%X!y0SIW*^wC7)5~Y6V_1$x!_5jeow%95_pTC&E6xM5vj%b7)b* zBF4qZmhz=9EPkF3IWX`ubLDtV9p?hAygJt-Vs_H2U0zTE&}i#9ZT-|>0lMDk3(roSHLeNS zT5ICBde92k8K#Yw#UkOy)%c7(iKwH2NRI%IZ~2eg=e?b^Ru6TowzLqT#nBzA_DWER z%f=fiotM`MUK1<%Zl0Z3i+lP-PRGE(#oErBKB1S-Ink7Z(cf~JrKihlV)D;xBUUN* zH?JEEAe6f4lNCwP1M;kY0u=lU$?4vAd$2(5r480xkXDqV<_bU!zz#jj_~7!h-r`;h zZP1Y6U(FTd#Yv8m<7VK3^8#Z75CB+thi)iR_x*I2UU#;ADlMCv!%IAKcQe#*;&X5< zSCzdnbmxlL?0g;@Hec|R*kF$e*uUNOYFX>20X_dAQZs0ZAIRJ!PQ?^PD-^uGj{I9CKB=h4Y3J z(u)sWO^0@&1svZf#P~n6WuupqE}I>df1&frULIP?ZHz_#*z^D%5@26Xurko`_U_r* z(CcIHE3u#-k=%&?)!p6VG|=8Y5BlzkoG(8((c7CJA4d}DAlHNL2_M#WNUtXrrp{`8 zCIOX?rSYpdRFpH8mZpAH&}VWzn4+8A40VFe>1id8Nqiyy$sVA)@J=(9qLfY)6+8_c ze7?TwAocS)VAK~(w_zk#(wL#IG+Y%7$*{t7@_S&scSxm!0@S}7^&ln6Cf`oDF&uPz zS0qW{=@E6C+z2wXz_mVCij7s-LvbCX&3^9`LvW1Y9@RUiSBC93kBo#OMHFzBp>La!WR{hUsidMJ85j(%Fsl7!dl2Jtw#{*F zC^m8SCwN|AsKtE?X=#$|@A%9o*kz9=*75H-kVL^(Q$ zQ2^qXnbzr!Ouyn@O1AdO)YX=rYfw)wvad*!a+QRypoAkurRjT;LxK0 zfu7I&Fq-)>Uk@jfOi8{0iN1KZo<-ZTk!=h?t+-0FPP+O zf&a&oW6u>8a*3LfsoK)d;SJElS3Q}mYMo-qXaF5yCUZSb<{RmcX)1+5_q_O68jQ+> z?L2jt{=!rmx|w&vi$Qm3E)k2g^`C8ql;kv&8JuN}KV>_U`HTGQsD7^90XQ~xosV&b zd?@z)#%c6Jkdfi{bzDfAUhKD-ns=8uM-|NmUra8JIbb|&H%I_GC~zPuxB$uES0ehUiD(omwlC=%47GSAbeuL$oI7(kL}^%GrcnC_ z=keZ*{Ml!ghSdJXZ@Sbv8iS?b@u*mzy16}Xu9YimDZMEayY1%VZkeaVb!F;EA)v|z${~e=4EEhoq0RkADeKZ zp5HQYGV6Eff1m5s<*c0$w9c&hM-TU-Hxc=N3!ow;LApb=vc)aUgYr>ewUG!oBEi7m zQ$)m{;(tH5zkUs=t>Yb9mNI5HD~%EXtoyblXCCQ!NarogjV0yh*Cr}w(~Fnpw-#rf zo^C~c5=wX88Jy*9%35p`ka{fJ`_4=wWOaH5%7mT+fC_+=UiJ=r!m`Pt9q_!1Y}|hL zE9S!BU^|*xKRN{zLyfM8E@!+pn1|NbfCj;SHf>dVJ&!ByG9BZs!$aC0jjEYEx-6KhX7)7NrxdXPRZ zy($TwL*$!sed$G(IOeFz5$R9Tcxlk}(PqsYC_Ocm8hvPY{7SYWiKwa}7={94Q)F@X zQR-lhqzz!=dS;ehmOPQMf~+mzaeL`;f3}hfP+wxrkXaokNiSBOZ@pVoX2ALoV>a4MCNGUX z_d`(BlRcCQA(o3iZv34ik|?!*7dbSNoGZCM5s%DpjprALJKi?ek#cn~E9MSOiG!PS zH_J1-v-$V`OW_=DPvHd;sdn9@_F;NVyjri1t7uKY&RKSHl`pkk2iR*-y;uQ39!;cBOl2rCT0}GOUNZ!7P3n~#+$L)?Z-Ke z*HJsNJ8GI5sCg(8D>`S;6e1}&mI*ycnP5Qp4qA&)mLOB6iR|I}rNEI{V{m_3lOqVB z$NrmX_FDfP)o@=D{bysGkgw3l;&t~DB#y#&<>FW}Gvo8y8Z7ZK(XiC2tX3PEdG(Mr zM(eJ#F9bxWeYN+?Avg;vGg&)PGEoW)u>gSCD*yi&o(lsFwmE_-l}VsjpgB`ceF%%C zB`p!ju`SnwAV0*!!J*Lo06-6o5n-Q+9 zygaR{fq~SF1MwJtR}nIJuo^LL#879%U9}r zSkII+bQ*Jm&PWOB{Cd!!l-S?p&M3Vk%}QTy38iE=OH4s*Ejpoy@dlx;B zh{eDjfQXhj;J`gkvq;dv>g09R6)@0HTpX6cSB-MdTWhmUxmcMx*1C5F&F1_NTAFhC zx9AOXEO2flIxuk~)8eyFVYRDwu~HYg@F!h&UR~in_I-I|lc2+>qc;AcUGE(v%`Rwv zt&e7)s)_Y3BQ(uy8lL#23x_;N^W3w7s9 zNv%(P_;dRB^41&uDDiONOds4hRjIlcE3u^Hf|Q_MalMZXVx^M1rgpMAy9b_RxFr@A z9@MIpJU#p5^{`I&e_eKj`Oovr?OI%5up*%7mMMXxGx^o1F|aOegsrjusYjiKZZ0>g zWU%nvM0W~0hxd|X%fMYXUw-_JXlv~J{iYm9Of2Tnxj%NV?Z14l%?5>SCKkJV>h|ze z8avJ>sK(}}UBzW!8|rU^q)#HIhtN;FKK`~4`^;`iJR@s}w~ zSJ(bEaZG=E#c~=3Y_;1M6gu8%L@`2WuMNI(G66(q?om9@<(Y;f;P3-tBi z;J|l#c>5NyB&3tFJ!&>vM8$Y9=61@o5nHBG@Q(>ZwEq_Sy~6GkW|E7L-Q9MdSGIHK0v9xTj%)*G*dg%h3m#tpBImtjpiGcIFqrzIM8fDshp&yH zzj5H3`&nvdz~{&)^xDLWkc9eAq5;`bL((R;wq@=|;M&^WzA=qSj#bE;KqTBO` zt{lF%y&H54w8AdIZVCW;}-Jitu(tw;G8awn^q+=vp#lc$kZF?Qj z&*_}~;%swR=4I*f<}Bnj$1#Upm__X)sLW4G8Uci3|I;YPh|Q32Gca#n>m8kdM0o*6 z9rPdV0;9zuHwO=Zmj|yeFnW1_for8nNmyfZ3CzR@vkZ{uhrIGN-c-t71M0cyvYyv-6M zyK}SK>M=wC1|a-X$OUyo0{lr0sYrUoN@flk`1Vow++&{RVdCIg7hy1sIk?Mw@|thr zTL5CPzc4YMOQ~O=yiJzcz^i~ev;OqBp2Tr0;HE)q4+RF~)2=q{bJ$JLXs_F|sKf+6 zhgzB)tFTgvMr%RZesA3CY}YSQn!JA z{M79=ED0k@nvq)n=`*M0*rp_p+}t2O>T;)ZQm&VPN{*=C|B8EUc5r4DK%tAXY**+; zFklu`%mr8G?nm{4uLU49uFR-TN@p$$n}RRBAd23WzTo!gqCI>qCp~#T9(~q^-ta{0 zS0FZDW6WLIDJKjMOoHa;(Ev8|J=vKX~qgI#nM}tj{V0=LjbiM1D$#{>He`)YIwIGWvsfy z$UO3sX3SJVM#D_-YydS<|I6Svj>_W9GQf95GO^^-tq?h--*oCfNVX0X6jdpldnBks zL$OcygF_F_vXbosgtFLmXF8Kqv(;FrBwb%H1mqYUOn#3WEG2cfWoQit+2Hnnkw#!QIF{ z@0XHM*W`|#9Z4uH%aYgkC1r?ElS1Uj-ZEEePNA6zX#D9t3iel%I0G&`&TZ1l$J>j& zh}z`<27@_59*>UD1HAqvvRX}r!81GN z(DMDG(plq8Do+1OASV>43`UrPUi7GX(U*^t0*#gWgi2 z)R>I7zN+8LHOEH44yTy^4J)QY)_(6**6Zcns^7z&z8{77oATxBiRb65nKM`6m9~f} z*3i_GhQof_C079G4H!Yngo+3QDrl_yAk0Y@!$-bub#d=rq022Z zCX%7$zfWr2{ zM^ET`%*i?C5*joLaN|OJ)!SR7o<;`W{+ssyPc6um)o(Gh(#`aR>m(bVO_Z-WtGqY$ zS?OeD5*cL=r1gxQyp_}9Af;dn(WL5e#-}x}I$rGA@WD_&JN15{!KciNtZ^-g!(wfb zl~qX-h)}S(f4;z?Pfb`pa4}4szpT&Xy z-o3n=cTP=YeDuVM7Zx}RylE%ut<=Q)q2J>r9_K`+Fa}+sidM=?ADc!eD!I|Nx3G#4 z1Qqsb@de}?ydA0h+}U7_p{pH4&&S7m-Q=Yd4oco1y$wX8oG-PtmFb_x(wDocLe_2J zKDwSX93Q2_M{#Qr)L1&>-dF+ZO!vqLJm+fzhva#Y2zaYb|Nc=qcfPrnun*2$97Kse z*X?^S?ilb@sdBoy4cPEM5wwav{TtVP6V+z*biEVq_jJmE*iB%rFf8k(+OGSeqoXw(m%)Ob{fvtr(enovyS5r| zLH}?|K%qVLnhZxteU;m06kOAascHi^4+x~Xv(%Fd@j7H)@sL0YdmZ6 zH7zN49@aj2T~~vyuA(D5Y77FFx6?PrAKRatPyUm}Ys0JoUy>BO1d%HMkCv0<=m}c# zCrD#1(JBKI{VVH>>q^}P6;`dR>z}K1*7Du23|UkS+k8Y%mRK#Os@#L;zT4?_83dfW zHz;N(&eT{8VklFT7&kXu!OqHZ;`R>9|E3U`4Uc;(7>*;GVT(tmnoY|TOD!HLNTU^# z%y|7|Ku@2gtJQ4)bNoA54^m{0+rXNwI}jZ;*5Z9L`ag8d9a92IXOrf-H@>nyckX+I zPWhKr5Q*agD&GVXM$967r#8m^(!Il zDw9ucFJF%2AnMt9l0FF+0hw(2k43lNFZA|YN7&^x%=8J7j2%0Jy{?9(kDC+A(1jhrpAGE{5 zy=?*I5t7fG(oTZxnnq)4;=t()qjjS`rS9#E)1O@lTriWYKU<;ga66KjU0v-ln5GU@ z)Q{d=^uj-TV7Ddm0?;t-O?7^;waiH1QHQCmsW??KHgfc!VO$ngr*O@{&aqpO2H6mq zbEz|sbNsqm`S`uBLKQ0n3k<3px zoYRYtt|r91piZe!1Z-AojH_$PuOB`go_|qwFD~o+|6#Q5SN?ZNfhPu-cXzCbpgr^X z@ph3TDkAly=_(q_cPr2v=r=U83p%L|uJox23L=-5M$ju~EVe8j)X_^bXHf+#gXA`Ws4kOi?Wtnj<9Cc4ScB*Bij_0uzXRaEf2W}y2*o;cR7tEx_wO^1i*QQ0 z2+PvqIUB7SwW*;1M5&0nAb$Ap?^aGqLQ?{Oulc!c;}+BP05S=9J-ESaW@*-0HJC`< zMM8KKO8B%l)P4-h%T{p!xngNhX36j5j;RaIYv4=dEN@KJb;q?y6O9;5|5^-)G`(8$ zX)M1Af(^&qY#C`X?vNXbbO8-oxtiRViFzL(IEu6nx9qfe-_LxUBwy{hy9xJteniRX z^bG&p6%ej}fLY@TK->&`6Hbowfbs8QK z)X9qgjv* zgB;x5DZ3_tjK5`OG&LwqvhpWxh1xtg(KU8oc#C4wz(wOWAhV53AA7Q6O2D@>YqNp; z6-ZvLifEUXrN{AFAecUnEcJ z&1up}p=SZug}8S6#4*DVG>`WE5`bD$$9Z2ixy0!O@o10H*69&>f3kLm?t`{x<1La& zxeYhddVJX*IhrA{R2^SLSeEe!S9jXpksu^OD@yoiYzK#1RAgEj`dBAz?Mx-b8a_^( zOcMFy9qZ+AYBo9qc<+<1{w;tIaKm(48iJf-Tt!ii|`ppr;8#E~|}v@rzo1Vxg>+c%TR~Z6=6J&~gI?3d ze4$PlhBB48i5Lt}*cm8nXOY@HZ`_v<@^^G(QU1rVLRYGFZ+iz^>G{v6r`Z|E^MArL zrlw|*X|>qv@Oda@>)=tVrcG#%-&Y8ask-(zaJe2Ry4<1o_*K;32UQxqrUuI{H4PYp zuW9UCS>IOOn|OR)uAaA~dPzb;{#D9?+M$ZoOHc@i@1@XFk&}XW^cJ5c?46IWu-i|s zZuS;|9gEPGh9r!R?0#YJk!Nu#o!;@!zc9^8A4YM&(MfJhll^C{3D94$&VbQ5=>C{` za~jvNAx=)-U)wNO%oT(`l}Emxt&v!2MHbhY5dF~y>56nol;zxP+Pg$JM z!*uB>4#>&-dOU_VD7~-8XyTEl2~hb*r@GKQUnOs&{Z3wDxC;Fx-LoS=ztbTd{H!l< zHPURLB59OT6c9w6F<6tOvJ_OYyBlGiiBkw_ciN|Za5RS29*zmOJ7)_Ks-UQ=xa^I8 zfleGLmwd#aFyQw1%vq*LT~c4$Ql0OOdNc|Vrk(!4dnJaKLF!w z^X`Ao`W$B`JL{h7$W$clRauXe=q%GVZU{2Og>x!$zIMdVUaN<1KgrKQFyaAi=u(I6 zk8cNpYtw^?{fklv^Z7C6zT1V@V#o2|?=HdGb9~Q6P;Dvff`|z0%FINL{rX4#Qo=rl zF&Hw}DNBGC?LwS?T4LgO|GcKOv<&C;W(*uAU;etG9P%ZV2zM%V;OAZgGGx^ROk{T9 z%8Ht}3~Qziqo2c3y2i$y@o#HLt~FSH_2Q^kZMI;j5uUb8srcfLrS)SA=wh!tJ#rmu zK8Kk15ye5}%H4NsGcpF)IVVrT?T&T1>$}3hShg1AxJcz+CI;%%@K>f5h`#Kc;~B5? z5+HH+A33OT7|B1E({Q(dk}k1yWzaof%1Cqtj@(yYU+#<#fi!k=Bgw!*k6KaJcSLjF7Moi)<=-pdNlQ1aO7&$`hUVhR*^n~?)=-1Sp5D`}U9z~Sw|gCEkt{QObzfDAD4NU4BIf9#U8S$r%62lvTrJ=PN2r=8xij!gdMQ2$l!I?odnj5CA22>*-*jxwPoHp`3sy;DeyW^QYG zWjP^dQ&li@{rB}Yl});!oT{Lb0uQ-+_7AtKH7I4DUEscFNMU`}YZLxgQ%Suc7n}`n zF@SN8`ruxqXDQu@xwj--~xjHIJtjopgq zi997N3jzQD;WTjW(ST2olyv7b#mP^lU@rN+7h|C^SLxf)uLQh`GmSzdjLp6`lqZX< z|LepD*a&}@Hu;Dq^nF%@kF$D2 zV2&#{LYfzaqHa1~Tne@EY>k{vkBm=w3aj4ANrl?rU23fOhkS;d^w`o6lM5cFTQVOy zfX#pPWx-Zt-|{#Vm6gA{0L5ng+hwm@%uRAJLnJ@SCNu`tu)RsX$zt46Dp6pc??)DV z7}}WrK>-772v6V*;F%uGq|it0%{+}DI2=In=&(DhndX~z=&VG$gD1e~fAO8+>o;a6 zRut=zbJ2;-?ML;rMSX>5bq=0)ldua6R0)H7VW;fPX+QiRQTDmOEMz$15UcWQEbHG9^m(-k1L$rM4XY8H9B~F>2b{Xy|?RawF_Bi0g~}AeM>v99yc#*WdU6W z25d{aStVcLlf7uD)5Yh5;D5MKLg!Ow@8IyeD3q9hfOc6gV@^gyW)hrq@`-Y@HgOkj zFq(X%d!8Og(hxinr@6;1WqSJ!>H@Yyy#ZiM(VgpQMYczAkl&II?x9&vW^06Shj02^ zn|8g~J|4*sdWp?8lBE*yx3`~mqtfVR;)R_d92KY}apj!Pmf-$r?r zKWz>cxxTD)*z^1mN?&Po;Lx5T|NFG$=)804L2e|}9U;P$sxKB4s-(g1YE8B2|HgaK z>8*6K@v>JE^Z1&8_-fpF&{j=e=V-`v@W8S=!IZJm1qwP-u)G|ADuUO(A-|WWw%47M zYWm^N$|_HGcXxMCu{sa!HfwLdpJy#3K_Np|gfAoE2H-C|H|>CaKePEkS#aJ|AQJu$ z5?ym^##LAip5g`BX&Z_IV(UsCpD?XpHCyyTU{_~*adx54T3YgW249W_9lmOe%lRz_ zda0+Q;r2}BpS4cE_>+TZ>#;HVTq6)|uft0 zy89w%=~U6JQIk$kX$r=zaNaE$vQA)#`keiB~#0<4oNV^pWq|)s#7?y^rr_#~IfIU+j1b zE$AAd^A8)lS3SQa9=_W+GB`{ckI1eiJ0$Ko);7?k6gRvklu7*jV^qd+7J7$M>C8@4F_LFLJF_tOOFNoa{>+0SWFZp6JuiD%omIP zpPV`n{-B($N}kEV!R6y4o3RNvh(0P_C`75bySkf+`!G_ua$d#TT3FeKh3Khx znuwvGNUQ0oQ|CD5{+<8*Xu{*1oEA368VmYe2GO$5{lR_t?ZL<%+6MPIs7%d@&)D~4 z?;F`lr?SKCYKa;Z-_1bCb{W&8<#_{g;%+e)GfyxXPqd?xaEm0|P})c&ZYIIrt(Bz` z_L)mxb{au=Ne2hUz7M~ChKZHgkNPxn_agHaKR>1i*7KdwkxJ%tfU^6Hsz-&x-g;Bj z^+v*p-}}tR&bMP|jqkGv^s0Y~e)xR8TaKwx=hDO7`MQe{_;Rk~KyEZyU(&>#8*qP> z@%sA8MZVq@w)N-O=Ae0F^1J_k%J@{LPkYOHOKN?X0}&&Y=0yQ&JPCouR<_LIJTreG zp_(@EnINX>nLpfEnLtA?_$tN)^N%({Y9K7=PKYIFbT%}1K|Q2=R20FoLa*g_0-dtc z{=C{`HnhG;{qsi0XckjRv-5kYmIUC8r>E?A!}q=4A^L2yKN|fHeCa1UosH3;ta9+4 zl``2z)x?K(2b(qoO&-^ahLKRT$QaYp%bxL6!89$2rk;eUL32k903{xk`KtADzqnUsR+F=(tx``pS{%LVLY|BC`6^~NG$zLN^%KAC zEu*3545UHRnQ}{v<+$}P8tl|+_YX^q#qI+FdMO*N+mmwfdgXM}d9*h19wXyGE$~8p z^LNIksvOIQ=qPTU#sACUP^em=NLg7Ey{TPWm0Q|au@2lcE+H^KF;bSr&*x%z%t`lG1%R9%O+o`(0I@ zk^z~6M1JA4eFoaV6^4L&mmd`sNx?vy-d`%4Ki^sc^A3k3FOr$%T-!7>(F0@b$!E4} zfJui)2DdN=1pc?G0ppW!_x3l`)ES+j1_E37&vvEsgz*_=5 zW?1_>e` z0DNd(!Z=C8ztXo_-n0DtQIHsi@VKWx*wmtEh?AKiv+h+QF;a2KMaQN2!*W#TmQmpV zJbQZ}HPyUVXAno^sBEr@6zIoNWFkAJpk<`#ZjIEM-2{;kZ^rLBN(m6mi0Q`ZCU?$> zRim@h3GDAMx>`GB9?vTBt%3)Kn*Bh};oL}b$kd+1gVJoMrS@`#x zi=6A*QQj(Y$hdY+$HdTQVVv=R?rO2XZ!QMoj^rDwXmhf0F*_&T4-hveuC<4j zbd(}KrO=l$w$*14elAI>&WJZkNtQTZiYv|>nA2Gciqw0@jP>w1;7MFkP11#;5tU1- zx#a*AbQZWG#t9mhqaw%NM*CF(|7&Wism#B$ZvI8vD2W6yjp;LTj=oH_pBBf8VLs8<$r0PL=C;zL>l*Q!T=~#==NM_Q#;*`|n zt^BS*4qjCT+KyqHdZ%Xw3lV;-56iC16h^1B{XT9RiKtWQzW)Jm!?}DndrWHbDeAkD zHNwJ|+Q`dW%OAPS>l2|88`)^rHx0 zC3c)fu%opiJsM356L`uN_xZ=r8^2!|HItlRUzm+F6FG*#x8Sf2eS&Aju(W(^X~o*! zllvJ%cm*Tc|Llu>a3E39RL6guS^6ic z)ErR)PbPA~bt*S)4zytlc0mf~tK=_Sw?SwMALlRKp4qXwt?KKjA{-M&fY8#AI(@j}$khxOK=DsAd>|FDn!TiI|xj z0+~T{Mb0W3Nk~X8(?M0E4^ms2?n(f0cV}muRLIVuNl1yz!FUH%UAUTR?9|^|%~>2u zStJjdSp}10tAZZx*`av)kt*c4R!~_`ydedk3{)a|-*M%xYR~5PDeBjyDxnB0U&CaEL06;c9k+muzCDk85 zp!|3QT3CSGf|5>oB4~+=_nXRwjQz>Tlh1XhKbm6T*v9kz?WuWx&__gme?6ExYQm|U z?a8RI_yZ{U$5;xj7Co95?Ku*K;<&>DJ8c4WwpqN3ZezzS6-L|%N=%UDMpNvzrV6Zz zNprauG`(Y{(oBj#TNf@UNvC}OLsQxcBiGJPbk0^Dy8qqGbk&WZiLb7(Ai}%8WQMms zOc!=83?esQR>9@kr@V3+* zu)0qYb}ijDUuA$@KoNBZ?c+A-ZQNDuTIwMC;>vK9Z&LjJy0^c+8IvglFGA?9+s_xIH(AF2RhI^&wjBHrKxQ@ zy6tB}Or|{d7m1b@J|6!_CBGVxHQD8c@t2yRFW~s$Fd9rTw7DTIRMiTL8Hx7AFiHa* zotl;XgQJlC>B6HnE)}dnCNX7mW@?JUdZM}|Qv3d-U14Qe&|tcJF&+V@%P>~FIiB!G zButE1PEKm6k5)eNC?n8rRw*f*)6Wzp?u0ecNERQRot^M9)6E_23*2EaZm)VE^LR|S zxMc8ETt;T39J;EV6ql(VYhB7KiQH0(lc702ELW38t1( z!p*bB>aLi<$ul<-1yWQ_;V-(`)Fi(s+f~=ii7P+AFWcmzK-M+Mw+!^|ds8eS-E&;>X%1&6N(n5*sfN(LsU^EroVJ?_avHm^2kPp)Hyi=F;kf-JuF zXtIuFXo=KX$?Dq}1h|!2Z$vt*Npx;`v&A`{HE=CDhy;e{T+mL<(_W7d|XDHF*()i+|>{=QyObsebMkzn(e=*el}a{NY6i5zNWiisQhmm&sWqf zkede{!6a9DQ$8lX#c`IE|Ll4#qI0?$doS?js3m4m06C8aI&UPf&%MYO9{Fam z!HPdV!kPFwv0ZOvCv(QfpsQ3c)%#f+@u2 zGwJ0rQsjnY4c;k#RN@Y8{6TO5?U>-)NU|`N;%>)9s*`=wSl_!eiY(~_R{#+UhKh>K zV*g|R-f0Xkqc5*pn*3*QA~LQ_=T3v2GkMTkF|*|$G_8zGd4`g_rUeaJWF(G|Ej~oy z2s5QnZe5{dJTg{T&yUIJ^)QV9OIc%dk^m8RFVEe>D-mOJ?B52vflEKU`8OPDn@M}; z6MtSh{f}w4db_p%7EN-c$Bt_xhS2ml#s)~w$hz1alng_|!jX_)Vy0BUR}lNdaK2o% zH#+;N<7b~p_iQ&qedFfjwm4h{yp2_L1yK!XGMmm>t79wzRF}h+0dFncJ=zVejHGp} zih7#sp(24A#L4sFUAC<+yE3lwQ_Xv_Tprst|?B(JdYKKKteYRSq_ ztIf;j_+FOFP)vLv6@@IiF_eQLUWq)!IWUExO1zATw;n;*S@=_NNzjnwp>Z6{YB3`T zLiEWS`C~xzQ~%c=I*+>@{8(Fp{g2(nEFoqE{Y-`08n%j~<=T?MEOR}t2R%QC&t+YM zxs%-u-k#|81QdEp#{Iifg3kLBP&*;+3H99WJ~zFte}13KPJ*8IsCxVY!;-PjaIoVi zWkl1!%blj`u49F(!`bY6{_k73udnB89#4I?l9FMqMHL@k*it~j8*4~@08J=t1QTtR zmWy)n+LcTdC;)j~6G1giRdpHoO|g{2)}G-DK>S(k?ln7hJwB&SdW!!9TzYS)3UI_H z<%;Q^FN~o9VK7dXALWg1cDj2{i}M?u?oq%4ojb+5uju)WE&!!0?`ZmfHjj%v8Woa_ z;dBbnc)vMy_VXX;m=^z|0GH^2F5&@UrY(dTxpzrXu5Y8@}J;=UVU6IkdFn%jr zk&|c8=(D7fQJQMC4qJAwU20{O?^+eqZoMVTu((!c1F)*a*A}eN+;T&t!)%-p?D#Fb z-n*9kYqiyt0#Ch0e*kc3t*>7(j6TAI;kg@iJ*+YSqXK{7O=Ty(c+z4b~>q>3`P(=iB2*prtPtFZDKjR$P#s zcJB{Z$UF*gYxHl*tK(Ui@%d~dUDtsE%9NM9N$0WBREKRc|6|!fog2pU$9Nkq zbG&js1pWnIjLU$;e0;jxX0LO^9vKcE+SHA{U&6*8=-TGqWu0Dq6N%7LFgdV(O-|N$ zj#nQGBGe(~)nm&Uw8*O(6k`*afjsw=Bl3E4cXYOQ2t}Ohp%r^K)}T#kq?;L_7%Y|# z)YA?CbYwHQIyzlhn+En+kG#LeZ3-pdl1VBhr2@l)&_kaT$QVfC-9?Oa+_7)tQQ)P| zr?LA^$|hwc%uLv_ZxEcZV6j?X zjH`%5v^G74HlkVQ&7y2YiyfaX(y4RY2Z%Jx@s8n1KY+&*mA-Z7tkj$64gy}Zy>YAC z>YC0SNOSY>eL;BxM$?frrwd-~dirwy-y0_cjpK40X z;_J>_UzWd}(sp}!J+^x}7V<-VSh!!K^D9=kp2G3QP+S~TVN%A1Mpb=cQOZ-XkS7v3 zu`8#|uGb?_7Y4${EU4c*Xv_bU*H+Z%(*pm9uz3I(AXV=IusjQ>XYvQAYH;Lb=o^?! zoGMfCIK6=%Pv<1@_g&&)wK{#m+ii4@CVHiMcpsBKAKqU68fm)fR+qm#eCbBG*eXg% z(kxI_NS)5E-gRExkT{ww%d2xmov(-}uSp+WxD&O6C9WUXpa1>Y+Gwg0^7XZJbXxE8|MCGC2!Afv^Aq7>-o^Bp6Q0NJ=;p#-QD;5j zk_!_|0>clsSZH?OCTM*dv&Wd87(UFG2U9s0JB>64T@vAKagmPeRpVmB<^ryDY!eXKl|8zNdZCp;#aqNu8iHyo&UGJF_Qvn1@N*upk_ zoHR3eB8Cbj<^^d}>wUwc;Nc2#OZg03Imz33;D?i{fGLNar82+b!3(ZoLJd&dEF6an^*u}D@E4areS;2*X?YnyO;2a^7O7ap1X{u?M{z?L_O1azzKZX*f=3_C4BR8Pdt%j*1pMg|Y%9Q28q^VxjOjvp%| zj5=|6ciPL`jtBnUf?|JRkSG~hRRjmPCE#&JrB>C|mB+G;2^ z+&}q&A#2bwdh?0^N~N>F@<2ewrFzw-g`xG|5FIlrNiX~hn_8t`|I*U+ZB2u_vXhHA zN`~LC&)r5Q#?alo$g-*)?3u5lvo-DL5ju=)=HQ&Vmg|^LVv-GzR<9^m37mZT>~d`r zYK%y$+B!o+@LO0;!)qEKZczluCEifbE~Lf%=?r|QwD52aN-krOo=G-(ocxqjerN_M zQPYgh+Sl5xTTbDxmRDK4UF<^vef-LT?#H~#Q`fr#Znowab39E$2ME%6)z0XPA?a)6 z(q3Huj<1FUHUwL;-L7+YUQ=UV-xY{%uZ8@^&4~DSmU9IUqdSfdT@alv`wgx(xC?h5 z_K^-dd%p7yD~EACpD)Uz1uj<`!a^5Ps{$>_%T!tyhC^xdaN$@XVqvQ+dosACf$dhs zaE9d{Z@r82|J)bLO2R;!Tq4;R&(YGF)e{RdW>kjMI?V47H4e(AmVo%?o)&y{9DLlV zvBZ%kAiyW{x~(B_roznK@tanGNay%6Y}wuMnbnOc7d`E2|8A^n&9hX}waVmp?X~j4 zTwhli;+OXMNt)(A?*LP=MR%Y((&#J+l=hc|G7n1++poKFRr74Ee&>L5=YX?DScv8D zNz1YseZZ24s?qP`e;LCGoT?aAOYLu*Fz(u!v`t2qoq&u-x9ALdX~!n(mTB9(HV0lC z202{$JG}Es zso6$%;*UsshPTD=1MQhr>C6K6<&f&ae~F;~6U^gR@-pE6mVPTP$c#UN_Nmi%s#yIj zvmc;~d5x#AV>NO5@y}MUXQlBru_5ol4?$V+L<C^%T6z8Sbc7cAszl+hRj?6SFCvv!<|v&~e*&$`j5d zM(2*LKJ++9gZ~S6WH>3F9y{q@=ZE)E%$U*9=&lOFse*$eC{N%by`P=LTf6eku}pU+ zM#z?{EX=*Wr8RN!?pM^)vvE-@6dG9&4$`OpH*llWe^-oy`lAVju1=JWTJ%5Tc$s)a&HuNho>x%-aat}uOGhtg@?fEs!Xkwqb z*r(6KOT$14TXb|&8>A|mvJd>b^TRQwEOW%Td*{Kqnb9e`UyOqx9#&Eak1oU8n<>Hye1V-8O-6lN zh~z(^5^{O`-^O9q+=V%CrgCiPxcywYi2UqRiMl<)m;^mW=OvFd`8xtL!rRuwe+`jA zF}uByBUHF`0hAe@tCZ3aaob27Q+ztUc7;WYgiugu1gJ8y z=Gb++DB@w`-Fd>KU_pl+n1Ch&5t3l=Fl5|~S8h__DH!xRaO0+T}a~Mpj{EVPz+lJ z2T>M@S!+G}@g2Irm{+Y^CoY&ckj2}k=i6eY$kin3$Qp^+sUwE6jb-XbGNaee!-o++7GjkBr2l&5rd!XcM z$uHfJMWSw@rFGl=>3@GJ?mSl+M+>{e&Hx@7VXDd#d5lUh&|e95R{(6lXgaO3cBF#2+o3|YYTtxY~bzw zBk{1Lo1fDEj@oY=ywpRN5x%~Ga&s*ro{$k8{Eb;~A@|lGAs*xa!ZZGIe@frYtiY!7 zhK-|deh{1q?w7YU0rc$yB@b&xfRD1&-w!JLO8o39XsEG+u($W-^lrf`!sSOW(68F#=Wh(mZJS~Ox3XM+a-WSqTIO69%Vq*U1{68>@ z{>+M&$MNI`U$for!>Lggw?ptfmb}x^q_kR%mh{(O`n~=`O16OwDF*lGt4Sorm;&oo>&Z_%^ayW{&+DKUJ$TKy?ow;SG1Qqe~`t zYm)^zi?%2u9k;tIN6Wy%fK-ZOU}F;5C`cFkjK=tBq1R$7WoE-zZ5(5&<*H^+L84!C17Za1@LK*?eVBs zsVoa2gG*Ax2P~4zCx4Tb^a6egdOQi&c|lv<1vm*_|ZeQ4?n) zp%iSZjg9GSQ0n(DZz6)7ei1cWJ$+o$gg1*Lb~m%@Ego+-q;`VH*wTU?`?%L#_x{sD zUSUMJLi@Ra3m+GKolk%a5=}YLV!;vHwK+j1WpQZ!0k98BkKu~BnOm4_G z6#N}3XawSiAwh=2EJX`3u|Q}z1X6w#WPqoV)Nn`$8Xhif8OF}|wV$zjT9L4793JCw z1v~;GsfI3-iXuL3D*|SxM5x4!p08Uh(dx))VpyB|6?!UD*4|h41b@4mbkJ#+_HnD* zC%hYD?!jhoj+ zBREzX4H>O~dkD?-$R_1=_99!YhPWoWRA#d!crEa<22&Y6tCEx|(1kW9U6tPufM4x^ zGC;+3zXz@&hI~goTsiIac1M4Vjg>hjw?YMDVO@6w8Ps#v{{sUNVy8W_iqy){=DKf? ztH^7VQ(POLR%77j${lMdaam(!C&H88AqZmOpPQJw6POnjY^mOHs*n+E&LUSNVB%&t zB70{Qd@MTzD|O7#z`UFBW_SDN)Ml1F0#*u2_?B$HX$4Pp0a>@s9D3O$wo;BYth=xA zq(xr8$R8R~LL%FOl)u0f2r9BVBkadI5Qv?M{cC8)S!P~2EiS8fu-jpwh)S7@IDKuw zeY`*n`|waUv=D&|ymtS9(g{dlF#6~kyR$d_s}(W)FCLx?D%7JRVfRwLvx~tXa9SS^ z&%3g+ZjNhkZUq|;4$hmOA6w8I+G8M;jhN;4&RIaFKj+L)2(yAhe`hDO^E2^J-{D;g zFzjrez;Gitno*)+RsMIX(isKh40NoTT~j)#Gd(e zaAFV}p)DadAFqL#QDj9!&+fy zUapt=*ExSSI{Y#xQl}fNjuDSqnpmv$+x>;Bo-HF|JIFvRt5%7L48=fCiHIi3E_P+9 z@dvV2*)-anL7e!G>>pM{TraosUGS>Q(gM4>2x_|Tu=-BvP99GK@+e@${Z=0#n##~Ru&6zY^o%x_Nv@I0drF-%%AENHqD>#P)?oM3@|sf^E+#c5E?FUS6D>-wGZyY$4Efi@fdyf za*ZOr8#va~d@`^NC3s4;zaOK_twig_Jv`t3gWB}R*#rI0`TZ5~lb zSGh+)VP-E6o7x}uMB6v7RIwgUw?+Y{0^J`U1l=zee{#BAV%>5D54OK=gVf3ibJ7QP z0)qY`{|$ld4+Pg`QVxb;92fwP+a=MWRRs9`5*Npw{f(j}G46W&rC2~Z&@^J%vv%cK z>AP$QQ8XJ*JJ7@_Lns;i6I!1_tp7W?o=J9nxlKs4Sxju;&SVz@IBvSk;h+|ob5VaZL%nbTu6p9v)q@%14O3(7KlHa zW5HFViWw^*HiI^*hhpQT3IYu{<7QyP;WMQE**1V9B;%_$Y&?FwrAUckEMv-IBLm`8 zk~+J@{Zm+TWEjK7T8k%@Bhqxjtu*;@;@H*oHraK5EyQ}YRy@v65M?YrG3aK`f811R%ywb^@HOr+OalOJfLSx`%XRXJ~U zJ3jh<{D!KkQhrU@6WbR@w_NLpzIC=}SyQ`E_c-1*N&{vRCV}&)f-E_sYz@-h2D-y7 zON-uC+7s%Wz^$TYA6tcEPPwM%WyQ;Ae&Dn9FZb!{U^fEF+lAkA4N*|GKXvK}hrhOF zFHUgAkFG$hPmU&zbib_U;PhSWh*F*&jMMXl*t!a+VZx2YHJ~*uWexqgq(R43h`8$e zgK#p@CG+*obVS+r4aw33t(mLZRwt(>^Y~dpVFRp8WI$ER!&N9p*fgi;BH&F`YMEXG zw$Q~x6pL~)u}4PJq?Ek9Z_x6zPS33-CQqI(0;1Dt1VLvNd4Ll;p#1U?Phl~3>R zyGN4o^-Smxl`(sccUwhhA2ML5;a_xpgaZ8q^Wj)JQY&*xns8}cMKnXhCfG7iD`SmT zPN$l%Og_TuD@QRr2}A2Z;YB@L?*U-^8)^}6;qtE?a-r0=`1t0h@}ADzutc~~vHDJ9y)d2}lA z;`}TwlO$dh!jmhRT=h3`Tk`Hr0t0>wELJKS5`dRQ zfBgSps5AlZZUN=i6)ctCfC5;{==U9co3(HiJT#q)fA(&T{X;-%keAcOr5wzo3n|aA z9;+~3EH2JLwF}5qE;2x_M1|QAx}g!qF2Wp;-J6A@tRdJFE})$PJii5PuCg>b2dFJE z*c8-rN8a`CE~v*)koSfZy$G*mQa1S6KtZWZ9-g!p>u@(_e}DG$qDr67~#QoVqRV1I7eL~k2BF2AzC6kI#0PoJ5D4ol5X@`PaW<0qxI0U+)VnKq_6wh&1kbVk$!f*1Rzyf1%amT46 zeBNV0i>WO3`$;x7v!i!is{jGBoabvjb!`_t)om@l?f35G;WeU~;O%SPNTQ*beY|*g z?`}3!y$Eq9?$4k}=?^ttFd->|5x2S17hgAC-<8C0qNkjGw|Dv5tr9)jqTTr}Y4@N0 zZ=x)iNJU_^q*tMu27DW<1`$_PBlbp_oPFhxXF^IMn91vA2rO=Pm4ID zyG|X4;W11zi*0Ert0I({!3=yc|7KiL*#~43iwH#^<@paodo}*k#Rkl7ESJIi2$7hG z7Ao#LhQ7N70;lIlo*2_fC~nxUtyM^4niO{iwv*JNU~R6Kax68ig9RFY#@Si__$V~v z)6<5S=a&xVUg7@E?%uFSvWEgr-W@0FI4yTkLB!`fx`VI?4B$N(MlIRE#1_I!+Y1}{ z;wmMsA7rgYnt5UXp{dcpSq1AT6taxgt3}jXHR<5Q>mn?*f`C;S&0)_S7T3yZW_~_o zcb6n8W)ALrhBzZ56B!E&%t*`!UnL+-vm6Ur1 z&Er**x)AGlZS9x2HDF}&0(^N#QD|;nDZjGJ-zIbUUU5h~1X|HeOi45;?8|obgM`!W zjU!A2vef$HX5iUkJq$btJd+f>3A`L$W_9$(1JQt&rpC3lxk({*_P~y+gyXS7!WM_dS)AKYSG10m^w`3 z{Y?PTkH_h4N2$;A-0p#EzYp~9+w1ROzwaJ+t#5y!?^ErM$C@4y2}^jvuao7MljZCE zeI%jYFm_+@{SISSSI*j&mczoJpiKow=f-2h_pLL(ODdjOUrIA7sP3tUr`AU+)>Vhq zwYC1W&@n`{C3aTLs)_M&NX|w9Zfa;Z$aWSUPXD3w-<_VGL`*~s`$Itx{2H14UCA(& z4ABM#rqFC?pRHmuoC{76o6D9nN`HduKhUVh{#>hOq@#zV=`)c_LhQMVa)X#b7gz`g zZV=VQUkD9-pvdIm%EsYJ`Qd?pmmByJO8vb#Ht3`0=YCfKjhHIUuO`jhVbArG*e?dv zsbZ4QHlnFsz${GPd5{s~sb*K*(VC!e)~Oo$ckXg>Y5r5}56867zX{4iApL?13BuzQ zJi~+fcqkzP+Bedj@l2bEHfZ6SCQT(gG=rAEv&Da@WMY&zI|l6(hC4kzFnI`v-`C#H z2or*mIRHjh9~5ncY0Osw=?ns~)GvW%kf_)ZTCo9IUSYpw4?Nq@;zgbvWIK{#S2A1$ zbbkNkH!Xpl4EYXRxV!g|qk>!M9#n|(i`p)@VCt`7t90tl_~<^Tbo-6uo8h83gkd)g zBb`y$#Qvo;47Xkz1GbF~KoDK#g1t>9Icc)FC5o8%qQQ7nd|tMeJ+!;QQYQ zt+;3XyJ?V7h_r@1EAnO1;eEm)m`ecIT9uTriYby{P3)bdQna(gg4v7=|KS&EmEgC+ z-VuVft?E&d?0aX4h%N|G7{zRk1rG=E*KASb)lL{bP9N~uDs5sW#)yHt`WdC9u;Fe2 zZgM(=eKIJ6a;G$XRXAJl_N|Mb$sQswxUtkIX|#0vEBQe)0%bDD6i^hJIQVNdgJNJ^ z8~n%zSpMLF3q`Hqy6j^C#ESvCmg(4)88|otar#MzDY&ONqNy0>20wMo*W-i2cEp+b zV;)GYi%Oxg2f|=fH2bg+bn_1W)OU4I5FOikV4eYdV|p6tcM-Jx;u zEFB8FFwoH4n0a0C5|#H`J@z4$63`q@@?h=w$Y|=|3i?IyB{Z>_!Bk3GYTtGxD|hB< z+`j{ph3s{~z?C@_so^S!?j^oT?&2w+uU8x@vTqSKiSAeBvm{arS{RpSEQBAlcU z-A2OQ{T5QQhur3#*K$2?7>3Y_?X;2hRpdxL?@tt8 zUwVE+*S_zNHMvzgkBJ!GpRZ{AUhJ_oJ?>FN-QV!Qcv{d|a5hdgQz<#=!SsewMa8t( zL@G8e)7wpEJv|~uJG*PYI4ryKgZ=$`r2X~%&Yja!5G177=vjgs>vRbuH}$n6M5dZY zqm`4ZtEt1IBS>|1N;hu4j{dQ+kcrvZ@RkTeLz|*u+vod@`KDrvPG4`NX=r((O`z>- z@OkTw8?ywGS<-)Pdp3$NurDP8&b&?MFJz#Ung!Rl4({C)fuw9J5^0bC3f@!%83YLr zC+JAxep~`}bgTJNJuS3>NH=(S4)lYISXm7pDzwi0UZ8s#GuT2x7W_g=w&X-Hf8!EL z8fVh(a58OUi^`tm9~iCk2^c~;4|gV{TN_i7?$jBVE|^R8Ohu)*Fda}8O2{&NB`(L` z6B_F{pbL>dLxe!iggljSiVz<*2PY3~R8r;|T=-#dEW*p^>H3Y{Y_7JoH`9LpuPTt% z3;y)0J{LhzllwZiC~f(H-JSW?0rBf{G%;X76yj>cTZp;UTAxRM4#9E3&DDV^om{sl3YObdAm z6NViW8I)9jv4Kiui&=8lx?OwH;U0o1Znt20QIOlm^{Pi6MiQ!parQMQm*d!>4FGN= zLPG}rtwLZnMnC>soSg}-F2P(-QOTd|td(T9m(mQu(lG2D@2s|qohRj9R8kJ2_X%w* zqn0=8)cypeIOR&&W&lb4bhLM94D5(R=t`r^d%FAi@Z^jlu6w-O4X>C^mHa5nQEDdg z(}L-M{3kIJiRiWu)j{#keDN6oHC@1Gy%IN|8WhebP{0if9O{LXlNP>icDL2N4t{mj z%;EmX1qf-`ADf5L(EQUIj)ueE__iM_c;Eq`&vLtmEb{%BeFrZGugcV%z+GxT5G!2)4lo*c$IeRFR>iOnj3m;15NTjQSJ9Ow&gdRCd zKK4n!_8iu>QHNZZK|;<0lQB7KU?|~!bXsQQ6-}Dki9g0m7RQ-#ICRh0lXWVGKW6el z97yaY%lX=jgohJ1k3$Ls>pHRPhjZ8k>2#lao#eg}sLDU*P&vpuH6*NFOx=@kqFBqM zo$+`?wbdoTwgL33g3hOeI#wUOu?8-|0tLcA^pa^3=AqLy4cNl>ZNX7~+)g8X%?}KS zpPdDEsw~mpNJXr5w8H|~Hlx#m(NPQT_zH63es)-df;t0#L=XYJ;Qvb!^hmw0{&;NJ zqq@brMJs~;AWn(77FWJu=sQI!kbe1B&HfR(^S}o>Z&z&I;Y{0I81Er3l>B#?txmWS zw!=Ve6mft3pMzNii$pW(U)wp6=MgP(n+Mb=SDU$^f3fURVY6MDScwJA8u53%8I@d^ zPo9QSeJGD-oTDtweLP6&MeS>SfAsKh9a-a0NZrx5KvXRp%;`q=%Jv8~2za1N3nh0- zYG4$|2wKko1M+e(OSE_Pvr3`Mzd689tcXX2;kqR`c4SAi%c=YAYv>!(u%-cy-b4?1 z6Y>+^6MnhJ0q@P>{w)0^!llYwKndm3wX%O`25*=e4-U@78cGZvaEi@{mrk@Py%BJY+ zz&~)k)PYhB>=Xbme}`7YI3&;SRDh&?cfH3~_t_+?W#=IN(Hzi|OO=qgXMd^$fs1Q3 zv%MV@KK7g6=L@?bl8u^{rvGY_^<}3^Z&wUd6|%w(Bw783Y24ec*UR65^RUi-ruk+D zBGe+^;7e;`gFfet=6^(}gSI5Zn}{sC49*+8m8?vF#uvn^pUJBf;HngwxR>LTdAFi2#333r72?YzP!))JQ*n3IiTA}{HPxA*c zoie6+dGfsa9e4m!)*(-sOJ(wJ7Zk?S97!k<2ZeJJ=SH>rPURyW6AbUw6%Flvx_8~u z<9!KjI7akC5+*Jz9?jKnIHgEf*xwlnhW=WuTaG1wBn;U%B5oUtvZ2q8hO!Qw(0Qtp zmO?);d6N>O9W^4t4ZVT!yS-t0*#DXVpbVg_)l2xa_J7NkLhZ(o(|Jz2iW*84oo$T% zp-PXk9XZcghwaTs7|ld(o)pzbH>=2x`ZWB9M4jHcW#mQ;ZDY+DzKaMY&et9MPf?5> z+F#$Ia9z+vM$pAwo8dI9rV$?+CjLZ(;ekzGjpW}$N{IU82b2mQcp6tV zDPsHZIxfk-$tWAptO!XM`IK}JKVbsV;!;0KQ+-l(A(cK0V1BSbl zYSlL3Mh0Z;71e_eK|IokR^Z4&1h^%7E9hGAGQ5iNo3$ebO1ker@HZ8ZshJ|hSW&sf ze^k^I{6K5^Wajh!f#@lzU*doa8HOmVt_gAmUVHX_V6Ui)m;t4-V`&pvXepUjB76hL z8@*S2TwFAeu(z}-L!yFXOFKE+qdreA^964QFMWR+MbRI#uc4`Unpm3xe}|em0mJg* z<6d9wAKrk61aG%=7C8OW(HlW74I3$Je9noVlp_8&obif%*?MxX!+@{FCZuczaa87# zv^8mOw;Qv>^XAz_(%YH43tmscPmhTyja@)sNTjLc2z77Y$elvX19V-W1KJ)&$%G=L z&aH(z=|D5)%J#wx;_rdErU6$#7cTujcmq2lL?kmd1RyIoHF9ATHebLe^z+*bGThDlznK$m`@EulKR)*uT&Q8at!3Ok_k7a}% z#|tyWlTQ6laLT3l2sCU5Pn~wgrwUiVX7R+fWAfW6&_f>2GNSGILFNxmhLy~Wl6K4z zoeO^!*Sq)9H&Gtu(P1HZjXs#7W||!e?JvfiIf?c3$irf6f~%nwDXxe+g?)ERe5C|K zXltig*GE`FL5+dAy^sH=7L5Bp%oFUsSev1DV@4mpmTZR)@8ZpBcvIj8F%1^ngyub@ z{}m#71J3n1 zV81K`YNpkqs2(^b0+B|jx~fGE2oX4+YY#yRSxTkrxay)L^cP2 z5rN6IniB=SlKjLclbTUY3W`bKXNSgrfad=fQ`Rf0j4_h*+$W`qqJ|5o74pR9Tjl3ak6TC9_l zNXYw%odBLOF7sZe?utY{G+6gbJjqKzQ==xN4(5WM!NArW8j6l?B`sY_K z2IhjIjE%B)jNJWH`hG~%m0A}`XZ62dX>hY`UkpPg35C4B^tRczu4dqvn7vz*n4=-Q ze6H+qeo#=5&&fq+cy~A9!s23HQS0A4Vi2t`B-A9-jrz0J$sm~tFOxxHs-`QsO{$4r zH!Q@f((MQ2e_<)Sz*GSPZ&@fHl0`~BLef`+5H}Og;gyxHWZ`dhH)E7s%&w_A)ES;- zesOUKlHVtY;E|7t5GD8LkDjl`ccJhBS{t<0w&<|WtBvkcDwb$XZuV1}0{qbzLEWA!fir zawH%Z`y}BQj3-Y8LHh2_9WhOD6So~x0*8H8*;n=StJUS6)l`D-W^Cg9R(e|e3 zhJYyYe&K1=sEzJ1lE**wXh5)miK*#V<45fJmaSjM$9MJj{_S@SD=X^@i?#8aB+|LI zze(*Ir!_YtBj&(^EYq~Y{^2}_Ze41~Q#~gelLm$!=1~W8#A~=VzEpZ?WBm!eCGDM} zx~l(#2@myzP>{04EqF;CcRXfT1687ZIVn-oQReoeS%?s zJTgJl%gqn*5J+N1QvWb0vs^h5!2nB_F^?QK&xT@9u8i@SEsfAEtELm%nxEQE6xGOS ztkV``0Txa!ES8KIc>x|uRu#}vPH`?@_)rU3mEQzM+6kGl^*SkGTD3W0i>T z`~Wq^uEe_q9kO$uZSbN)9@WbZKJE6le}$+%Y2DC&V@kI1_JaK;xNy||7|+;OPH1b# zGME&Hp*FM$Egp2^>4vR49=sE7{Dbh~u1~;0q4IBsq3#9>T0t{5YMpp$8BO(HynG!k zBplq(zq4GTX>}x`{}7PPD2hq-f+!|CuNh6R>qR_pHcTuHldh1 zV}pQ~fJopv=TL&mvG3Rk+gsYF39Ey3LrU&=BoV8>6K6pS+aMD8KgNUA=9_pCxNzf{ z-+!q2s6sH3HGR$~#SIyFSm3Xb!B9y5#*fp5QvT=jo>$}eW7rZn9IS%)^@reun#eyW z93~5f@e+nMn}J^6Id~^Y^;MtQhBwR~N#|Z8bCH(#`u=5UBX)gtE%U zmJiIzAmw*I{e^Xw@b7>C%7A#B(;;JU-I7XhgKiEz&!yF29GwME{9*>WK;-uU-$Uj9`O%>6{`CM-J;zg*p976#FKTIx4EWW+EU?tU5(y-^ z^0~#FU#vC=g;(YBI31N9ww%k_El+3j#oiw`v^qk!*Ecw|*4Nj+bbq7pJ=4qQ3PvlJ z$~$z0EbouR-rsDu>~>qf8vcY)J9&LOI27pgte3rSh%k%Aym5DdeLj+O|2loyLCEo2 zTU3jj`$!xW$d2l-+y^f$bs%{sua_^{y$Dx9H_erh-m+jvWnWUmEGVExqM1bj&+FT$ z0K#h^(#v6_qGLrJWw8@T#gMVCrtj6*63HBn#QDeXQ8h?Zg=oStipg^3uV z1$7-=h?fkhGfU1WHqol)tWZ_pV=Nr<2^R(5o@gzVyQ?w@fe;vaAl!qSj z|HcGpyUgAsxFIz|dp8sTXORTH?j#3c$D-Zt^#gFvEp3JlnFK&Z;1qkhLkWghl(^1N zN4ghrtd##^t-wzc(8~_1P#kz;pUNdt4y85-E%Otfh3PC<^EVV?=>VzP2`1+d2MXE3 z#hheH7NcP-{?ETTgn@GK(1LQvMrNT>cxb^|CuA!h)Pa+YJ9e_jGKTiJ^7go*_Gflw zh;DKeFUbCHr$nJdePunn2EiGpq*Hz1FpQ?o)tmuWD6Qv&!I34f{LoLG@QwPVRgn8) zGWWO{~hhD=Qbxe~dRb`Q8~t9ErY%(;$1p4!We zW`Y8~VB-Ga%XJSB@{m7<_B?=?Jw>XhtfvuCHR2^lF$X3l{AXxI^(hF$-C(2~mj%23 z`U83>m-C~4FE>GYV&+g4_H^SUsy~0{1Z4$9<1l5g3$l*FQE{*@6x7ubHaN|j_c$P| z9#8j=FJJ?p(A_zJE6jo_L->83 z+uddo2?2+T2;J{j7=k{J@Y~*xINjuNpI>3qb?uztZ)=7JS<>RFW11V*J}v!Y-%#A& zP)e(JulMl6%OHu-@ca!84X<|aIK(Tmg_agp?I+Q#D)QvZzNG6sHdK!voO`)g&X*UmbIKK^7l@cB&_ z30KE16tgv@c98W?*iwle)sRe4SM-Nhd7w(jTf3IX-urdD+aca9F#3-28NL|SoZ~6Xpg;kr_kOsnf^>}RC`U%=(;i?`)$V1 zIa1&|0l`QqLpsb1hGBKtOW2zhAr2_oQ4v~3ii7xn_~h*6Mt?k#dQztdhVBF2{&Fx& zBqie%z`SW(SwwZ=^wU407#9RdS&4~joRW;I<>slzdP!}A0$R32xQVu)s2+XTY5QLP zqFx}5lZ;BCp`?tQU}Mr&LLz}`n8}%}RM7S7%E6QX)!Vw9zL8dg-Df)Rn2{O*5YzNQRF;m%A2bVCr;E8YpFFM6>=W z5wv|_ydVjnVKdp_xqQ%qEq1H0`BjyRf0+-8iis&`BeJ!dg@cwMVjzsfDa0mG6U`WA*i!2ZZ-peag(fD?0& zV5WnYLP%>n)ht;M%C&5>g1o z-5rWM6b1io#O74e(7`0nfd0tGx-6`B6ASj`6+bW(qiA|7eVSne z%5n5cPQCJE^1+{qBlxuQ&9mIX2*wyKA{1^dg>sLZXjTo2g)v*@OVjfZB#8wXulzgc5ji=vnd&bp?GzvVbJTQ zfvTQnIsz{DOlP?`KV>CxP<&Vy2-hM=GcwkJNdD3&X&Ope??Qph%J_{J^`J=#CZxs8@n~?BG`AsDaJuQjHluL z7VyZj=U{dnVrhgE7rU|xGyLNaj*abz2FfbX8o{bwPAD{oV6aCY(CDdRUK}EU<}EoD zx#z?4Lf=WE0K=6%HjBK8a^>bX99=RN_^>Q0KEIM`QRUW#P<~(kL@t$IQ2>PWzj2us z3Q<=w#;E_07qbwg&o~B?w#QV)7;zQgQ(ubf?;I?kdK=LV#D0_9S(nwTVKMxU5lfj7 z+sKajIJ7i&~U5${-9086tNd`{H;7y^PRU38_Wf2YL2)Dx5kn+(D$l(?< z)VD?@RN?}_ zt4Vl-;Z^RoQ~G)_2L~vR*+*@@MdYmzBu-H;XD$l$d{mAgQ*W; zZ5f;^t47m{ixCec^hPz+FbyYkdCrf|Kb(M7tm|o~66XAPR`mHjrWCSEkc|&cppS&8 zVf*1z>c9F8Cy5*?d*$VbVH9a(%7*NF`Fni|bE&zqmiRDrKY@k>Ihwy7tPMQ0)2_|Q z;%^CWbbi^@FiCTS4tCEghy-`Us;!Ik{xpUA3V$DwpNE5A(1RamKc1icz0eDr>U@UcK38gge--@+Yw@ZB)O(qwVhwJXSzax%Bt%%cr;)nnEBd$f|0x{)d~ z3oLTR0x#8M<(tMk?R*WJE3w+ymR~L?T@ysammp|drW1|}S zMv6a~r6gQYE@PsTl+IIAvgFK0`+_I`>?i~tN$k!CYH5Ky8eOYT-t+`q0Y93o_Qx)~2KNgJp){nI1?p2J#OD=FosL?=YmFp=-g!iHRxX}LBZa0@LPP6cki zS*l$qid!H>xmAq$LCZUZ3ZM8_Qv8I#2xakQRN?qa(Fx*i%8Yl#4Pgqbls5r3GzdEi zbGkc)e`Uds%ZF3Hj6&BI9E@r?U=svkW(KG9W+&~_pH3Zb0$zldvZj_a$DTO;xsBSI zKiX$UtP8D?ppn3e65n=4dQOhfv7y&OJxx@Yw5Jn>797sh@?;Jl7&qSeJOvIr9&ezo8iW(s&`jX>`;PR*@fW)&%Nq9 z@;o?<5a|QT{q%YxDTCv#lpR&rJg5w8<9|MvoK$4}|xFPL|^fJu5K` zTI>sbJCR7d?Fwb}QA?7A1ir1mVtTs(DoYRg7$$0qt|LI9yJwIzm4Z2z(DK8Y*JoDHoWE1C!X*b>tXlI5g0|Ud@Z&3+0SX{!d2! z2VCjakC6@I>^{?cJUKVhSk?*kJU#j>AlPa^n&Ie>`U*?zfN|LD{FQ{h$Y#s|onGv) zpc&&h02~zc`&=a2#552MiDcW{{ntMavgKm}?|_#xWCVlY@QDjX{^y+`zeLz>(WoM} zRl}BCXMRgC$1~VCG2Ihs7fA54wi)Mnz94SD#H*m@7AGKJrJ#y#5?t0mdSaU)mx@ol z)X)4pOfzK ziO+A`_BST_0^XnL5eI!l8z^!49U{Vd&FA}4{xw$!EGGmkshHAOM`ozB6iC8}+D3uN zgYKl=zF>xlRJ*eC;gu&*Fbd$ui~+0ofK^WDgKb7Z7&?Otb`Jog4ieX3UqHgyJ>;iy>Ded$Q9qaRKY8~u=1o#cUcv`WRRlIdJnGhS0E}M3=KbqS4m{f0 z-+)j@;!qX@9EpR-88^W4n=fB+E)$b->GWX=#5Lc;i1BuFWp96Z%o#JwnC|n{NTcO=!s|m({z}LvG)I|4 z9VC!THhiU?z%We1#||j3FaFKxmn#XML*h~4NJ=$}jHM1m4SWsxh2rBbmIsO)r64$n|;+h@!Nxxqr}I*KH4#E3P7mLgJ7F_ zVmPvQI;g?X<<^P>$ASh+?oLZXH#+(f#|lfmthls)mIH~f^5~t7#{cVDa)$m%KDI@i zYp#yhU$h8Mb&B_)Ifm5I<6ap4;*8qi^1!8O3J>$1ReF40vtsJ`ep5; zPD9eK5Oi!Oi)cGimI%Wv>hVz`6n0(ti#mzqEItb|W#88(9AG}+R|o0^7zpKu&8NDB zGRp+&xl6|9I241M`OTnfDv|i|zIAzW>OBKs7i0rk0J6;q@8V3(4P$M(m4_JwiiM3Q z%slv=(+QYW+iRmZYlBQMM!$=jSP*8b+-#T^AS3^wJ?H!xK5dTAhznm$bR4k=PdVWc zM9omVw}Vz}j8N+^o-ISdqoW0&`Mr1bCM7c#7Cy9Xpzs3UU5AOqsu*T8|pbvfMV34&qo}#oGg*7cthE$HpQMLk9IEg+) zKb;ZfH*Co!ZwXT~H^upD66ZIN8Nanh(Vf=M^cV2Npo|EQWD?0f#v&vRtGGn{eQY

Q<8Rk%R5netnF6l8&buM0T4Xv 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 IK7AhYKmOjAIsgCw diff --git a/ProgramScreenshots/MainWindowPause.png b/ProgramScreenshots/MainWindowPause.png index 311eebe56cf65c8ef0f550a89fd794be4c02bb7a..1c08d87ae6caa11f116d38876ddcfa5f6ad3caf1 100644 GIT binary patch literal 14676 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 XUO$XD9svAEo6Fe9>>~Wao#_7qY`@Zi diff --git a/ProgramScreenshots/MainWindowView.png b/ProgramScreenshots/MainWindowView.png index c1e9d8192d2a5c80155ae293060be5b2c745dfb3..696fb5171479f9620d2bd2cf756b98b890926f55 100644 GIT binary patch literal 9658 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 ZPOkVgAnnCl#{aDVx>`n>Rk!cP{vSWd#6kc7 literal 8664 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 HDWM4ff02I- literal 18120 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 diff --git a/ProgramScreenshots/SettingsGlobalBasis.png b/ProgramScreenshots/SettingsGlobalBasis.png index 5f191d5db9d0eb0a6455845faa917482b8870870..a36abb97a337b1e8b52b2c0eaf18b64e96722444 100644 GIT binary patch literal 27917 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 P6AVDk*;rJb^}6$KA;B() diff --git a/ProgramScreenshots/SettingsGlobalDownloader.png b/ProgramScreenshots/SettingsGlobalDownloader.png index a5b26fff304ba4aaafebe2d6003ffced5a4f59d7..384b3d764b03b0e8dbc639d74f6d19c5c9e821ee 100644 GIT binary patch literal 19737 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 Hr-UW|EjG5E literal 15581 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 the dependent fields that need to be updated when this property is changed internally. + Public NotInheritable Class DependentFields : Inherits Attribute + Public ReadOnly Fields As String() + Public Sub New(ByVal Field As String) + Fields = {Field} + End Sub + Public Sub New(ByVal Fields As String()) + Me.Fields = Fields + End Sub + End Class ''' Store property value in settings XML file Public NotInheritable Class PXML : Inherits Attribute Public ReadOnly ElementName As String @@ -59,16 +69,16 @@ Namespace Plugin.Attributes ''' Special property updater Public NotInheritable Class PropertyUpdater : Inherits Attribute Public ReadOnly Name As String - Public ReadOnly Dependencies As String() + Public ReadOnly Arguments As String() ''' Public Sub New(ByVal UpdatingPropertyName As String) Name = UpdatingPropertyName End Sub ''' Initialize a new PropertyUpdater attribute ''' The name of the property to be updated - Public Sub New(ByVal UpdatingPropertyName As String, ByVal Dependent As String()) + Public Sub New(ByVal UpdatingPropertyName As String, ByVal Arguments As String()) Name = UpdatingPropertyName - Dependencies = Dependent + Me.Arguments = Arguments End Sub End Class ''' Plugin key diff --git a/SCrawler.PluginProvider/Interfaces/IPluginContentProvider.vb b/SCrawler.PluginProvider/Interfaces/IPluginContentProvider.vb index 2bf0c9a..0b6e93f 100644 --- a/SCrawler.PluginProvider/Interfaces/IPluginContentProvider.vb +++ b/SCrawler.PluginProvider/Interfaces/IPluginContentProvider.vb @@ -17,6 +17,7 @@ Namespace Plugin Property Settings As ISiteSettings Property Name As String Property ID As String + Property Options As String Property ParseUserMediaOnly As Boolean Property UserDescription As String Property ExistingContentList As List(Of IUserMedia) @@ -25,6 +26,7 @@ Namespace Plugin Property UserExists As Boolean Property UserSuspended As Boolean Property IsSavedPosts As Boolean + Property IsSubscription As Boolean Property SeparateVideoFolder As Boolean Property DataPath As String Property PostsNumberLimit As Integer? diff --git a/SCrawler.PluginProvider/Interfaces/ISiteSettings.vb b/SCrawler.PluginProvider/Interfaces/ISiteSettings.vb index 0563589..30ed1f0 100644 --- a/SCrawler.PluginProvider/Interfaces/ISiteSettings.vb +++ b/SCrawler.PluginProvider/Interfaces/ISiteSettings.vb @@ -17,6 +17,7 @@ Namespace Plugin ReadOnly Property Icon As Icon ReadOnly Property Image As Image ReadOnly Property Site As String + ReadOnly Property SubscriptionsAllowed As Boolean Property Logger As ILogProvider Function GetUserUrl(ByVal User As IPluginContentProvider) As String Function IsMyUser(ByVal UserURL As String) As ExchangeOptions diff --git a/SCrawler.PluginProvider/My Project/AssemblyInfo.vb b/SCrawler.PluginProvider/My Project/AssemblyInfo.vb index fbd419a..668c898 100644 --- a/SCrawler.PluginProvider/My Project/AssemblyInfo.vb +++ b/SCrawler.PluginProvider/My Project/AssemblyInfo.vb @@ -32,6 +32,6 @@ Imports System.Runtime.InteropServices ' by using the '*' as shown below: ' - - + + diff --git a/SCrawler.PluginProvider/Objects/ExchangeOptions.vb b/SCrawler.PluginProvider/Objects/ExchangeOptions.vb index e761d6a..f6d6e54 100644 --- a/SCrawler.PluginProvider/Objects/ExchangeOptions.vb +++ b/SCrawler.PluginProvider/Objects/ExchangeOptions.vb @@ -11,6 +11,7 @@ Namespace Plugin Public UserName As String Public SiteName As String Public HostKey As String + Public Options As String Public Exists As Boolean Public Sub New(ByVal Site As String, ByVal Name As String) UserName = Name diff --git a/SCrawler.PluginProvider/Objects/ExitException.vb b/SCrawler.PluginProvider/Objects/ExitException.vb new file mode 100644 index 0000000..28173a2 --- /dev/null +++ b/SCrawler.PluginProvider/Objects/ExitException.vb @@ -0,0 +1,36 @@ +' Copyright (C) 2023 Andy https://github.com/AAndyProgram +' This program 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. +' +' This program is distributed in the hope that it will be useful, +' but WITHOUT ANY WARRANTY +Namespace Plugin + ''' Represents errors that occur during downloading to be thrown to the root downloading function. + Public Class ExitException : Inherits Exception + ''' Add only the message to the log, without adding a . Default: . + ''' if only the message should be added to the log; otherwise the stack trace will also be added. + Public Property SimpleLogLine As Boolean = True + ''' Don't add a message to the log. Default: . + ''' if the error is exit-only and there is no need to add a message to the log; otherwise add a message to the log. + Public Property Silent As Boolean = False + ''' Initializes a new instance of the class. + Public Sub New() + End Sub + ''' Initializes a new instance of the class with a specified error message. + ''' The message that describes the error. + Public Sub New(ByVal Message As String) + MyBase.New(Message) + End Sub + ''' + ''' Initializes a new instance of the class with a specified error message + ''' and a reference to the inner exception that is the cause of this exception. + ''' + ''' The error message that explains the reason for the exception. + ''' The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + Public Sub New(ByVal Message As String, ByVal InnerException As Exception) + MyBase.New(Message, InnerException) + End Sub + End Class +End Namespace \ No newline at end of file diff --git a/SCrawler.PluginProvider/SCrawler.PluginProvider.vbproj b/SCrawler.PluginProvider/SCrawler.PluginProvider.vbproj index a45fa8b..6e9e354 100644 --- a/SCrawler.PluginProvider/SCrawler.PluginProvider.vbproj +++ b/SCrawler.PluginProvider/SCrawler.PluginProvider.vbproj @@ -107,6 +107,7 @@ + diff --git a/SCrawler.YouTube/Base/Structures.vb b/SCrawler.YouTube/Base/Structures.vb index 58b168b..cf3bc77 100644 --- a/SCrawler.YouTube/Base/Structures.vb +++ b/SCrawler.YouTube/Base/Structures.vb @@ -58,7 +58,7 @@ Namespace API.YouTube.Base ''' Kb Public Size As Double Public Codec As String - Public Info As String + Public Protocol As String Public URL As String Public Property Index As Integer Implements IIndexable.Index Private Function SetIndex(ByVal Obj As Object, ByVal Index As Integer) As Object Implements IIndexable.SetIndex diff --git a/SCrawler.YouTube/Base/YouTubeSettings.vb b/SCrawler.YouTube/Base/YouTubeSettings.vb index 46fe325..68f2e35 100644 --- a/SCrawler.YouTube/Base/YouTubeSettings.vb +++ b/SCrawler.YouTube/Base/YouTubeSettings.vb @@ -34,13 +34,36 @@ Namespace API.YouTube.Base Friend ReadOnly Property DesignXml As XmlFile Private Property Mode As GridUpdateModes = GridUpdateModes.OnConfirm Implements IGridValuesContainer.Mode Friend ReadOnly Property PlaylistFormSplitterDistance As XMLValue(Of Integer) + Friend ReadOnly Property DownloadLocations As DownloadLocationsCollection #Region "Environment" - Public ReadOnly Property YTDLP As XMLValue(Of SFile) - Public ReadOnly Property FFMPEG As XMLValue(Of SFile) + Private ReadOnly Property ENVIR_FFMPEG As SFile Implements IDownloaderSettings.ENVIR_FFMPEG + Get + Return FFMPEG + End Get + End Property + Private ReadOnly Property ENVIR_YTDLP As SFile Implements IDownloaderSettings.ENVIR_YTDLP + Get + Return YTDLP + End Get + End Property + Private ReadOnly Property ENVIR_GDL As SFile Implements IDownloaderSettings.ENVIR_GDL + Get + Return Nothing + End Get + End Property + Private ReadOnly Property ENVIR_CURL As SFile Implements IDownloaderSettings.ENVIR_CURL + Get + Return Nothing + End Get + End Property +#End Region Public ReadOnly Property Cookies As CookieKeeper @@ -62,6 +85,22 @@ Namespace API.YouTube.Base Public ReadOnly Property OutputPathAutoChange As XMLValue(Of Boolean) + + Public ReadOnly Property OutputPathAskForName As XMLValue(Of Boolean) + Private ReadOnly Property IDownloaderSettings_OutputPathAskForName As Boolean Implements IDownloaderSettings.OutputPathAskForName + Get + Return OutputPathAskForName + End Get + End Property + + Public ReadOnly Property OutputPathAutoAddPaths As XMLValue(Of Boolean) + Private ReadOnly Property IDownloaderSettings_OutputPathAutoAddPaths As Boolean Implements IDownloaderSettings.OutputPathAutoAddPaths + Get + Return OutputPathAutoAddPaths + End Get + End Property Public ReadOnly Property OnItemDoubleClick As XMLValue(Of DoubleClickBehavior) @@ -155,6 +194,12 @@ Namespace API.YouTube.Base Public ReadOnly Property ShowFormDownTrayClick As XMLValue(Of Boolean) + + Friend ReadOnly Property ProgramText As XMLValue(Of String) + + Friend ReadOnly Property ProgramDescription As XMLValue(Of String) #End Region #Region "Defaults Video" Public ReadOnly Property DefaultVideoDefinition As XMLValue(Of Integer) + + Public ReadOnly Property DefaultVideoIncludeNullSize As XMLValue(Of Boolean) #End Region #Region "Defaults Audio" HccHB{QLfTqhpmP{JUHx3vIVCg! E0L8>hWdHyG literal 0 HcmV?d00001 diff --git a/SCrawler.YouTube/Controls/MusicPlaylistsForm.Designer.vb b/SCrawler.YouTube/Controls/MusicPlaylistsForm.Designer.vb index 5589941..48858c0 100644 --- a/SCrawler.YouTube/Controls/MusicPlaylistsForm.Designer.vb +++ b/SCrawler.YouTube/Controls/MusicPlaylistsForm.Designer.vb @@ -41,6 +41,10 @@ Namespace API.YouTube.Controls Dim ActionButton6 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Dim ActionButton7 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Dim ActionButton8 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton9 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton10 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ListColumn1 As PersonalUtilities.Forms.Controls.Base.ListColumn = New PersonalUtilities.Forms.Controls.Base.ListColumn() + Dim ListColumn2 As PersonalUtilities.Forms.Controls.Base.ListColumn = New PersonalUtilities.Forms.Controls.Base.ListColumn() Dim TT_MAIN As System.Windows.Forms.ToolTip Me.BTT_DOWN = New System.Windows.Forms.Button() Me.BTT_CANCEL = New System.Windows.Forms.Button() @@ -53,7 +57,7 @@ Namespace API.YouTube.Controls Me.CMB_FORMATS = New System.Windows.Forms.ComboBox() Me.TXT_SUBS = New PersonalUtilities.Forms.Controls.TextBoxExtended() Me.CH_DOWN_LYRICS = New System.Windows.Forms.CheckBox() - Me.TXT_OUTPUT_PATH = New PersonalUtilities.Forms.Controls.TextBoxExtended() + Me.TXT_OUTPUT_PATH = New PersonalUtilities.Forms.Controls.ComboBoxExtended() TP_MAIN = New System.Windows.Forms.TableLayoutPanel() TP_BUTTONS = New System.Windows.Forms.TableLayoutPanel() TP_PLS = New System.Windows.Forms.TableLayoutPanel() @@ -408,18 +412,41 @@ Namespace API.YouTube.Controls ActionButton7.BackgroundImage = CType(resources.GetObject("ActionButton7.BackgroundImage"), System.Drawing.Image) ActionButton7.Name = "Open" ActionButton7.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Open + ActionButton7.ToolTipText = "Choose a new location (Ctrl+O)" ActionButton8.BackgroundImage = CType(resources.GetObject("ActionButton8.BackgroundImage"), System.Drawing.Image) - ActionButton8.Name = "Clear" - ActionButton8.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear + ActionButton8.Name = "Add" + ActionButton8.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Add + ActionButton8.ToolTipText = "Choose a new location and add it to the list (Alt+O)" + ActionButton9.BackgroundImage = CType(resources.GetObject("ActionButton9.BackgroundImage"), System.Drawing.Image) + ActionButton9.Name = "Clear" + ActionButton9.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear + ActionButton10.BackgroundImage = CType(resources.GetObject("ActionButton10.BackgroundImage"), System.Drawing.Image) + ActionButton10.Name = "ArrowDown" + ActionButton10.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.ArrowDown Me.TXT_OUTPUT_PATH.Buttons.Add(ActionButton7) Me.TXT_OUTPUT_PATH.Buttons.Add(ActionButton8) + Me.TXT_OUTPUT_PATH.Buttons.Add(ActionButton9) + Me.TXT_OUTPUT_PATH.Buttons.Add(ActionButton10) + Me.TXT_OUTPUT_PATH.CaptionMode = PersonalUtilities.Forms.Controls.Base.ICaptionControl.Modes.Label Me.TXT_OUTPUT_PATH.CaptionText = "Output path" + Me.TXT_OUTPUT_PATH.CaptionVisible = True Me.TXT_OUTPUT_PATH.CaptionWidth = 112.0R + ListColumn1.Name = "COL_NAME" + ListColumn1.Text = "Name" + ListColumn1.Width = -1 + ListColumn2.DisplayMember = True + ListColumn2.Name = "COL_VALUE" + ListColumn2.Text = "Value" + ListColumn2.ValueMember = True + ListColumn2.Visible = False + Me.TXT_OUTPUT_PATH.Columns.Add(ListColumn1) + Me.TXT_OUTPUT_PATH.Columns.Add(ListColumn2) Me.TXT_OUTPUT_PATH.Dock = System.Windows.Forms.DockStyle.Fill Me.TXT_OUTPUT_PATH.Location = New System.Drawing.Point(3, 59) Me.TXT_OUTPUT_PATH.Name = "TXT_OUTPUT_PATH" Me.TXT_OUTPUT_PATH.Size = New System.Drawing.Size(428, 22) Me.TXT_OUTPUT_PATH.TabIndex = 2 + Me.TXT_OUTPUT_PATH.TextBoxBorderStyle = System.Windows.Forms.BorderStyle.FixedSingle ' 'MusicPlaylistsForm ' @@ -464,6 +491,6 @@ Namespace API.YouTube.Controls Private WithEvents CMB_FORMATS As ComboBox Private WithEvents SPLITTER_MAIN As SplitContainer Private WithEvents CH_DOWN_LYRICS As CheckBox - Private WithEvents TXT_OUTPUT_PATH As PersonalUtilities.Forms.Controls.TextBoxExtended + Private WithEvents TXT_OUTPUT_PATH As PersonalUtilities.Forms.Controls.ComboBoxExtended End Class End Namespace \ No newline at end of file diff --git a/SCrawler.YouTube/Controls/MusicPlaylistsForm.resx b/SCrawler.YouTube/Controls/MusicPlaylistsForm.resx index 0a4b79a..cd7aef0 100644 --- a/SCrawler.YouTube/Controls/MusicPlaylistsForm.resx +++ b/SCrawler.YouTube/Controls/MusicPlaylistsForm.resx @@ -233,11 +233,123 @@ + + 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 + AAAASUVORK5CYII= \ No newline at end of file diff --git a/SCrawler.YouTube/Controls/MusicPlaylistsForm.vb b/SCrawler.YouTube/Controls/MusicPlaylistsForm.vb index 02b6620..df6482e 100644 --- a/SCrawler.YouTube/Controls/MusicPlaylistsForm.vb +++ b/SCrawler.YouTube/Controls/MusicPlaylistsForm.vb @@ -8,6 +8,7 @@ ' but WITHOUT ANY WARRANTY Imports System.ComponentModel Imports SCrawler.API.YouTube.Objects +Imports SCrawler.DownloadObjects.STDownloader Imports PersonalUtilities.Forms Imports PersonalUtilities.Forms.Controls Imports PersonalUtilities.Forms.Controls.Base @@ -50,6 +51,8 @@ Namespace API.YouTube.Controls MyView.SetFormSize() End If + MyYouTubeSettings.DownloadLocations.PopulateComboBox(TXT_OUTPUT_PATH) + CMB_FORMATS.Items.AddRange(AvailableAudioFormats) If MyYouTubeSettings.PlaylistFormSplitterDistance > 0 Then SPLITTER_MAIN.SplitterDistancePercentageSet(MyYouTubeSettings.PlaylistFormSplitterDistance) @@ -102,6 +105,17 @@ Namespace API.YouTube.Controls MyYouTubeSettings.PlaylistFormSplitterDistance.Value = SPLITTER_MAIN.SplitterDistancePercentageGet MyView.DisposeIfReady() End Sub + Private Sub MusicPlaylistsForm_KeyDown(sender As Object, e As KeyEventArgs) Handles Me.KeyDown + Dim b As Boolean = True + If e.KeyCode = Keys.O And e.Control Then + MyYouTubeSettings.DownloadLocations.ChooseNewLocation(TXT_OUTPUT_PATH, False, MyDownloaderSettings.OutputPathAskForName) + ElseIf e.KeyCode = Keys.O And e.Alt Then + MyYouTubeSettings.DownloadLocations.ChooseNewLocation(TXT_OUTPUT_PATH, True, MyDownloaderSettings.OutputPathAskForName) + Else + b = False + End If + If b Then e.Handled = True + End Sub #End Region #Region "Form text" Private _InitialFormText As String = String.Empty @@ -159,10 +173,8 @@ Namespace API.YouTube.Controls End With End Sub Private Sub TXT_OUTPUT_PATH_ActionOnButtonClick(ByVal Sender As ActionButton, ByVal e As ActionButtonEventArgs) Handles TXT_OUTPUT_PATH.ActionOnButtonClick - If Sender.DefaultButton = ADB.Open Then - Dim f As SFile = SFile.SelectPath(TXT_OUTPUT_PATH.Text, "Select files destination", EDP.ReturnValue) - If Not f.IsEmptyString Then TXT_OUTPUT_PATH.Text = f - End If + If Sender.DefaultButton = ADB.Open Or Sender.DefaultButton = ADB.Add Then _ + MyYouTubeSettings.DownloadLocations.ChooseNewLocation(TXT_OUTPUT_PATH, Sender.DefaultButton = ADB.Add, MyDownloaderSettings.OutputPathAskForName) End Sub #End Region #Region "Lists' handlers" @@ -256,6 +268,7 @@ Namespace API.YouTube.Controls If Not TXT_FORMATS_ADDIT.Checked Then .PostProcessing_OutputAudioFormats.Clear() .File = TXT_OUTPUT_PATH.Text.CSFileP If MyYouTubeSettings.OutputPathAutoChange Then MyYouTubeSettings.OutputPath.Value = .File + If MyDownloaderSettings.OutputPathAutoAddPaths Then MyYouTubeSettings.DownloadLocations.Add(.File, False) End With DialogResult = DialogResult.OK Close() diff --git a/SCrawler.YouTube/Controls/VideoOption.vb b/SCrawler.YouTube/Controls/VideoOption.vb index a730200..71cdd3b 100644 --- a/SCrawler.YouTube/Controls/VideoOption.vb +++ b/SCrawler.YouTube/Controls/VideoOption.vb @@ -52,6 +52,7 @@ Namespace API.YouTube.Controls End If LBL_DEFINITION.Text = $"{m.Height}p" LBL_CODECS.Text = $"{m.Extension.StringToUpper}{d}{m.Codec.StringToUpper}{d}{m.FPS}fps{d}{m.Bitrate}k" + If Not m.Protocol.IsEmptyString Then LBL_CODECS.Text &= $" ({m.Protocol})" If Not SelectedAudio.ID.IsEmptyString Then LBL_CODECS.Text &= $" / {SelectedAudio.Extension}{d}{SelectedAudio.Codec}{d}{SelectedAudio.Bitrate}k" End If diff --git a/SCrawler.YouTube/Controls/VideoOptionsForm.Designer.vb b/SCrawler.YouTube/Controls/VideoOptionsForm.Designer.vb index 633c461..66d6b91 100644 --- a/SCrawler.YouTube/Controls/VideoOptionsForm.Designer.vb +++ b/SCrawler.YouTube/Controls/VideoOptionsForm.Designer.vb @@ -29,6 +29,10 @@ Namespace API.YouTube.Controls Dim ICON_LINK As System.Windows.Forms.PictureBox Dim TP_FOOTER As System.Windows.Forms.TableLayoutPanel Dim TP_DESTINATION As System.Windows.Forms.TableLayoutPanel + Dim ActionButton1 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(VideoOptionsForm)) + Dim ListColumn1 As PersonalUtilities.Forms.Controls.Base.ListColumn = New PersonalUtilities.Forms.Controls.Base.ListColumn() + Dim ListColumn2 As PersonalUtilities.Forms.Controls.Base.ListColumn = New PersonalUtilities.Forms.Controls.Base.ListColumn() Dim TP_OK_CANCEL As System.Windows.Forms.TableLayoutPanel Dim LB_SEP_1 As System.Windows.Forms.Label Dim LB_SEP_2 As System.Windows.Forms.Label @@ -37,8 +41,6 @@ Namespace API.YouTube.Controls Dim LBL_FORMAT As System.Windows.Forms.Label Dim LBL_SUBS_FORMAT As System.Windows.Forms.Label Dim TT_MAIN As System.Windows.Forms.ToolTip - Dim ActionButton1 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() - Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(VideoOptionsForm)) Dim ActionButton2 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Dim ActionButton3 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Dim ActionButton4 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() @@ -47,12 +49,13 @@ Namespace API.YouTube.Controls Dim ActionButton7 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Dim ActionButton8 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Dim ActionButton9 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton10 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Me.ICON_VIDEO = New System.Windows.Forms.PictureBox() Me.LBL_TITLE = New System.Windows.Forms.Label() Me.TP_HEADER_INFO_2 = New System.Windows.Forms.TableLayoutPanel() Me.LBL_TIME = New System.Windows.Forms.Label() Me.LBL_URL = New System.Windows.Forms.LinkLabel() - Me.TXT_FILE = New System.Windows.Forms.TextBox() + Me.TXT_FILE = New PersonalUtilities.Forms.Controls.ComboBoxExtended() Me.BTT_BROWSE = New System.Windows.Forms.Button() Me.BTT_DOWN = New System.Windows.Forms.Button() Me.BTT_CANCEL = New System.Windows.Forms.Button() @@ -93,6 +96,7 @@ Namespace API.YouTube.Controls CType(ICON_LINK, System.ComponentModel.ISupportInitialize).BeginInit() TP_FOOTER.SuspendLayout() TP_DESTINATION.SuspendLayout() + CType(Me.TXT_FILE, System.ComponentModel.ISupportInitialize).BeginInit() TP_OK_CANCEL.SuspendLayout() TP_WHAT.SuspendLayout() Me.TP_HEADER_BASE.SuspendLayout() @@ -267,12 +271,27 @@ Namespace API.YouTube.Controls ' 'TXT_FILE ' + ActionButton1.BackgroundImage = CType(resources.GetObject("ActionButton1.BackgroundImage"), System.Drawing.Image) + ActionButton1.Name = "ArrowDown" + ActionButton1.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.ArrowDown + Me.TXT_FILE.Buttons.Add(ActionButton1) + ListColumn1.Name = "COL_NAME" + ListColumn1.Text = "Name" + ListColumn1.Width = -1 + ListColumn2.DisplayMember = True + ListColumn2.Name = "COL_VALUE" + ListColumn2.Text = "Value" + ListColumn2.ValueMember = True + ListColumn2.Visible = False + Me.TXT_FILE.Columns.Add(ListColumn1) + Me.TXT_FILE.Columns.Add(ListColumn2) Me.TXT_FILE.Dock = System.Windows.Forms.DockStyle.Fill - Me.TXT_FILE.Location = New System.Drawing.Point(3, 3) + Me.TXT_FILE.Location = New System.Drawing.Point(1, 1) + Me.TXT_FILE.Margin = New System.Windows.Forms.Padding(1) Me.TXT_FILE.Name = "TXT_FILE" - Me.TXT_FILE.Size = New System.Drawing.Size(503, 20) + Me.TXT_FILE.Size = New System.Drawing.Size(507, 22) Me.TXT_FILE.TabIndex = 0 - Me.TXT_FILE.WordWrap = False + Me.TXT_FILE.TextBoxBorderStyle = System.Windows.Forms.BorderStyle.FixedSingle ' 'BTT_BROWSE ' @@ -283,7 +302,7 @@ Namespace API.YouTube.Controls Me.BTT_BROWSE.Size = New System.Drawing.Size(74, 22) Me.BTT_BROWSE.TabIndex = 1 Me.BTT_BROWSE.Text = "Browse" - TT_MAIN.SetToolTip(Me.BTT_BROWSE, "Choose an output file") + TT_MAIN.SetToolTip(Me.BTT_BROWSE, "Choose an output file (Right click for add a new location to the list)") Me.BTT_BROWSE.UseVisualStyleBackColor = True ' 'TP_OK_CANCEL @@ -473,21 +492,21 @@ Namespace API.YouTube.Controls ' 'TXT_SUBS ' - ActionButton1.BackgroundImage = CType(resources.GetObject("ActionButton1.BackgroundImage"), System.Drawing.Image) - ActionButton1.Name = "Open" - ActionButton1.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Open - ActionButton1.ToolTipText = "Choose subtitles" ActionButton2.BackgroundImage = CType(resources.GetObject("ActionButton2.BackgroundImage"), System.Drawing.Image) - ActionButton2.Name = "Refresh" - ActionButton2.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Refresh - ActionButton2.ToolTipText = "Reset subtitles to initial selected" + ActionButton2.Name = "Open" + ActionButton2.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Open + ActionButton2.ToolTipText = "Choose subtitles" ActionButton3.BackgroundImage = CType(resources.GetObject("ActionButton3.BackgroundImage"), System.Drawing.Image) - ActionButton3.Name = "Clear" - ActionButton3.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear - ActionButton3.ToolTipText = "Clear subtitles selection (don't download subtitles)" - Me.TXT_SUBS.Buttons.Add(ActionButton1) + ActionButton3.Name = "Refresh" + ActionButton3.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Refresh + ActionButton3.ToolTipText = "Reset subtitles to initial selected" + ActionButton4.BackgroundImage = CType(resources.GetObject("ActionButton4.BackgroundImage"), System.Drawing.Image) + ActionButton4.Name = "Clear" + ActionButton4.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear + ActionButton4.ToolTipText = "Clear subtitles selection (don't download subtitles)" Me.TXT_SUBS.Buttons.Add(ActionButton2) Me.TXT_SUBS.Buttons.Add(ActionButton3) + Me.TXT_SUBS.Buttons.Add(ActionButton4) Me.TXT_SUBS.CaptionText = "Subtitles" Me.TXT_SUBS.CaptionToolTipEnabled = True Me.TXT_SUBS.CaptionToolTipText = "The selected subtitles will also be downloaded" @@ -611,24 +630,24 @@ Namespace API.YouTube.Controls ' 'TXT_SUBS_ADDIT ' - ActionButton4.BackgroundImage = CType(resources.GetObject("ActionButton4.BackgroundImage"), System.Drawing.Image) - ActionButton4.Enabled = False - ActionButton4.Name = "Open" - ActionButton4.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Open - ActionButton4.ToolTipText = "Choose additional formats" ActionButton5.BackgroundImage = CType(resources.GetObject("ActionButton5.BackgroundImage"), System.Drawing.Image) ActionButton5.Enabled = False - ActionButton5.Name = "Refresh" - ActionButton5.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Refresh - ActionButton5.ToolTipText = "Fill in additional formats from the defaults" + ActionButton5.Name = "Open" + ActionButton5.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Open + ActionButton5.ToolTipText = "Choose additional formats" ActionButton6.BackgroundImage = CType(resources.GetObject("ActionButton6.BackgroundImage"), System.Drawing.Image) ActionButton6.Enabled = False - ActionButton6.Name = "Clear" - ActionButton6.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear - ActionButton6.ToolTipText = "Remove all additional formats" - Me.TXT_SUBS_ADDIT.Buttons.Add(ActionButton4) + ActionButton6.Name = "Refresh" + ActionButton6.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Refresh + ActionButton6.ToolTipText = "Fill in additional formats from the defaults" + ActionButton7.BackgroundImage = CType(resources.GetObject("ActionButton7.BackgroundImage"), System.Drawing.Image) + ActionButton7.Enabled = False + ActionButton7.Name = "Clear" + ActionButton7.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear + ActionButton7.ToolTipText = "Remove all additional formats" Me.TXT_SUBS_ADDIT.Buttons.Add(ActionButton5) Me.TXT_SUBS_ADDIT.Buttons.Add(ActionButton6) + Me.TXT_SUBS_ADDIT.Buttons.Add(ActionButton7) Me.TXT_SUBS_ADDIT.CaptionMode = PersonalUtilities.Forms.Controls.Base.ICaptionControl.Modes.CheckBox Me.TXT_SUBS_ADDIT.CaptionText = "Additional subtitle formats" Me.TXT_SUBS_ADDIT.CaptionToolTipEnabled = True @@ -646,24 +665,24 @@ Namespace API.YouTube.Controls ' 'TXT_EXTRA_AUDIO_FORMATS ' - ActionButton7.BackgroundImage = CType(resources.GetObject("ActionButton7.BackgroundImage"), System.Drawing.Image) - ActionButton7.Enabled = False - ActionButton7.Name = "Open" - ActionButton7.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Open - ActionButton7.ToolTipText = "Choose additional formats" ActionButton8.BackgroundImage = CType(resources.GetObject("ActionButton8.BackgroundImage"), System.Drawing.Image) ActionButton8.Enabled = False - ActionButton8.Name = "Refresh" - ActionButton8.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Refresh - ActionButton8.ToolTipText = "Fill in additional formats from the defaults" + ActionButton8.Name = "Open" + ActionButton8.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Open + ActionButton8.ToolTipText = "Choose additional formats" ActionButton9.BackgroundImage = CType(resources.GetObject("ActionButton9.BackgroundImage"), System.Drawing.Image) ActionButton9.Enabled = False - ActionButton9.Name = "Clear" - ActionButton9.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear - ActionButton9.ToolTipText = "Choose additional formats" - Me.TXT_EXTRA_AUDIO_FORMATS.Buttons.Add(ActionButton7) + ActionButton9.Name = "Refresh" + ActionButton9.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Refresh + ActionButton9.ToolTipText = "Fill in additional formats from the defaults" + ActionButton10.BackgroundImage = CType(resources.GetObject("ActionButton10.BackgroundImage"), System.Drawing.Image) + ActionButton10.Enabled = False + ActionButton10.Name = "Clear" + ActionButton10.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear + ActionButton10.ToolTipText = "Choose additional formats" Me.TXT_EXTRA_AUDIO_FORMATS.Buttons.Add(ActionButton8) Me.TXT_EXTRA_AUDIO_FORMATS.Buttons.Add(ActionButton9) + Me.TXT_EXTRA_AUDIO_FORMATS.Buttons.Add(ActionButton10) Me.TXT_EXTRA_AUDIO_FORMATS.CaptionMode = PersonalUtilities.Forms.Controls.Base.ICaptionControl.Modes.CheckBox Me.TXT_EXTRA_AUDIO_FORMATS.CaptionText = "Additional audio formats" Me.TXT_EXTRA_AUDIO_FORMATS.CaptionToolTipEnabled = True @@ -704,7 +723,7 @@ Namespace API.YouTube.Controls CType(ICON_LINK, System.ComponentModel.ISupportInitialize).EndInit() TP_FOOTER.ResumeLayout(False) TP_DESTINATION.ResumeLayout(False) - TP_DESTINATION.PerformLayout() + CType(Me.TXT_FILE, System.ComponentModel.ISupportInitialize).EndInit() TP_OK_CANCEL.ResumeLayout(False) TP_WHAT.ResumeLayout(False) TP_WHAT.PerformLayout() @@ -740,7 +759,7 @@ Namespace API.YouTube.Controls Private WithEvents CMB_SUBS_FORMAT As ComboBox Private WithEvents TXT_SUBS_ADDIT As PersonalUtilities.Forms.Controls.TextBoxExtended Private WithEvents TXT_EXTRA_AUDIO_FORMATS As PersonalUtilities.Forms.Controls.TextBoxExtended - Private WithEvents TXT_FILE As TextBox + Private WithEvents TXT_FILE As PersonalUtilities.Forms.Controls.ComboBoxExtended Private WithEvents BTT_BROWSE As Button Private WithEvents BTT_DOWN As Button Private WithEvents BTT_CANCEL As Button diff --git a/SCrawler.YouTube/Controls/VideoOptionsForm.resx b/SCrawler.YouTube/Controls/VideoOptionsForm.resx index f3ef8e9..b101c5e 100644 --- a/SCrawler.YouTube/Controls/VideoOptionsForm.resx +++ b/SCrawler.YouTube/Controls/VideoOptionsForm.resx @@ -135,6 +135,97 @@ False + + + + iVBORw0KGgoAAAANSUhEUgAAAgAAAAIACAYAAAD0eNT6AAAABGdBTUEAALGPC/xhBQAAE65JREFUeF7t + 3X2sJWddB/DdLi2lQG2hdOHuvfM887J7Cxca4ELTQMDWKigIFpBAEAgi9g+CJpJo9Q8NJhgBiYZIYspL + GlAKCkhEC4KgQlsLQkqhKi/lrYWWlxaw3dLddrerz/Q89+7dc2fbfTn3npf5fJJv2rS758z85nnOzJz5 + nZktAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMK3O3r79wVUIz65jfGNVxI/VIX69CvGO9M//a9P+e8o3B/8v + vKn9s+3fyX8dAJgmaWd+fl3E96Wd/E9XdvZHkfbvXNa+Rn45AGCS3bvjj/E/h3box5OrmxjPyy8PAEyS + XXO7zqhCeH/HDnwUOdCE+J6zdux4eH47YIrEGE8uy/Ls9Bnx/LooL0oH9b9Th/I1TVG+rCqKC+q6Xsh/ + FJgmO8vy6WknfdPQTnsjckMdwlPy2wITLO3wF6si/lGas1ekuXvX0Fzuyg9S3psOCl6qDwimQB3ji9Ok + 3btmEm907kpnEa/Mbw9Mlq1pB/6cdHZ/ZcfcPZrcXoXyrVVVFfl1gUmSdsS/libqPUMTd5NSvjktwrbB + kgDjVi1UT26K+Nnu+XrMuaud60uPWHpIfhtg3JqyfEaanHcPTdZNTRPCPy4uLj40LxIwBudt2fKAtOP/ + 0zQnN+5koIg3tpca81sC49J+LZcm5a3rJulYEq6LSV40YBOFEB6V5uFV6+flRiTsSwf9r81vDYzBCSO4 + vjfq/KAuiqfm5QM2QRPjuWnubUbz71DCn6W33zpYCmDT1EX5m92Tcuy5q47xFXkxgQ3UduqnOXfn0Bzc + xJSvz4sCbIb2pzlp8v1w/WScnKSzkjekRT1hsMTAKC0vL5/Ydud3zb1NT1FelBcL2GiDm3d0TMTJy0ea + pjk1LzYwAu3NvtLc+uTQXBtn7tYYCJtja/vQno5JOJFpQrzWb4hhNJoQnpjm1Q3D82wCcnNRFKfnxQQ2 + Qttk1zH5JjzhFmcIcHzyzb6O5aFem5J0sP/OvKjARmg7b7sm3xRkT3vDorwawJHb1t6Ep2NOTVoOtDch + yssMjFr6IPh8x8SbnsT4lrQamgPhCMzPzz+sifHjnXNpMnN5XnRglJaWlk5KE2z/0ISbxnzQQ0bgvlXz + 1ePSXPnG0NyZ+DRF8Zi8CsCo7Azh0V0TbkrzRc2B0G3wIJ9429CcmZLce4MgYJTyff87JtzU5uayLM/J + qwcM7vD5+jQ3DgzNlWnKDXldgFFJZwW/2jHZpj1727uZ5VWE3mofqJXmw4eG5sdUpqqqXXm1gFGoQnhJ + 12SbgRxoYvzjtIruK04vxRjPSvPgK0PzYmqTPqtemVcNGIU6xgu7JtusJH1ovH9ubu6UvLrQC2ncPyuN + /58Mz4fpTvnmvHrAKJQL5dO6J9ssJXxucWFhLq8yzLKtaUf5h2ncb9zz+8eUKsYP53UERmHX/PyOrsk2 + g7nJDUWYZUuPWHpIE8oPdIz92UiMn86rCoxIOmOYta8KD5uftk2Peb1hZtTzdVOHcF3HmJ+ZVCF+Ia8u + MCppcl0+PNlmOG1zYPtYYc2BzIQ0np+ZxvWPh8b5LObqvMrAqEzRo4BHmctijCfnEsBUqkP5u2ksz8Kd + PI8g5SfyagOj0jbIpQk2c01DR5Brmh3NfC4DTI324LWO8V0dY3pm48mAsEGm7OEgo0sRb9wZ4+NzGWDi + lWUZ0ti9Zt1YnvUU8fdyCYBRmsFbAh9xqhDvqEN4Xi4FTKz8s93vD4/hPiSdpJyXywCMWPtrgKuGJ12P + ck/6gPmDXAuYOHVR/lY6UN3XMXb7kDv17MAGqhaqJ6WJ1sdegDUJ726a5oG5JDB2917vL+Kl3eO1N/lQ + LgewUdIO8E0dk69vubosy+25JDA2bYNuFeJnOsZovxLjhbkkwEZZXl4+0QfOvfl2Ogg4O5cFNl1dFE9N + 4/B7Q+Oyj7mh/VzKZQE2UtM0j6iL+LWOidizhN3OPBiHuigvSmPwrvVjsn9pQnh1LguwGQa3Fo3fHp6M + Pcw97c1WcllgQy0tLZ2UDr7/qmMc9jJNiF/WkwNjMHhQ0GzfX/yIU8RLfRCxkdq+kzTfrugcf/3MgZ1l + +fRcHmCztU8Yq2P8h47J2cdcpTmQjdCE8IQ0vnzjdkjKP8nlAcZoWxXin3dP0n4l1eGb9UL92FwXOG51 + Ub48ja09w2Otz2nvTJpKs21QIWDs0lnKb6TJqTEphN3NQvncXBY4VtvSju4N3WOs17l6cXHxoblGwKRo + r8mlHeAtHZO2b9mfDohem8sCR2XX3K4z0hj65NCYklSTGONpuUzApNlVFFWaqP81NHF7mvD2tnM7lwbu + V/vwqTR2vrV+LPU7VSjf4ff+MAU0B65NeWVd12fm0sBhpTnzosHDp7rGUV8T9lVFvDiXCJgSrmEezDea + onhMrgsM25rmyuvSODkwNG56nvZyYvi5XCNg2mgOXM3tVVH9ci4L3KtpmlN9W7Y+VYhfiEkuEzCt8n3L + fzA8yXuY/b7OZEVZlovt3ew6xknf8965ublTcpmAaac5cG3C2zQ09Vv7bVAaC/+7fmz0Og6QYVZpDlyT + GD/dPlgpl4b+2Nru5NIYuGfdmOhxmhB/VBblL+QaATNKc+DBfH1nCI/OdWHGtTewSdv874fGgIT4xfYb + wlwmYNZpDlzNbVUIz85lYUblJ2i6BDacGP/u7O3bH5zLBPSF5sDV7K+L+Nu5LMyYtJP7xbSNfzy0zfue + A+03gak8WwdVAnpHc+CaxHiJ5sCZsnK9f/+6bd3v3JZ2/r+SawT0mebAg0kfjB93v/Pp136t3X693bWN + e56v6nsBhmkOXE24Ph0EnJXrwpSp63qhDuXnu7dtn1P+U1VVP5PLBHAozYGDtD+LchvU6TN4Iqa+lqGs + XO8/YVAlgMPQHLiSsC+dNb0ml4UJVxflRWm73b1+O/Y5YXcVwvNziQDun+bANYnxkvO2bHlALg0TJsZ4 + cl3ESzu3Xa8Trm+KYimXCeDIaQ48mKqIH9McOHl2zc/vaIr42a5t1vN8tCiK03OZAI6J5sCVFPFr7QNk + cl0Ys3yp6nvrtlO/s3K9f9ugSgDHSXPgILk58PxcFsYkX+93J8s1qUK8oynKF+YSAYyO5sCVhH3pgOjV + uSxsoqZpHpjq//bu7dLjFPHGND+Xc5kARk9z4JrE+JZUEl+1bpLFhYW5VPf/WLcd5N/ruj4zlwlg42gO + PCQfdXOVjdeE8MRU6xuGai9uXw2MgebA1YTrFkMoc10YsaYoX5rqfOf6uvc6e9LO/xW5RACbT3Pgam5N + B0Q/m8vCCLT3XnCQ2ZXwnWqhenIuE8D4aA5czV3OykZj19yuM1I9PzlUXwnhirIst+cyAYyf5sA1GTQH + uu/6MdoZ4+NTHb+1rq59j+v9wKTSHHhIPtI0zam5NByhNH5enGr306Fa9j1720ttuUQAE0tz4Epi/FJM + cl24b8ZNd25KdTk31whg8mkOXEm4pX1EbS4LHebn5x+WdnIf765fr3NVCOFRuUwA00Nz4Gr21kX58lwW + 1qjmq8el+nxjqF4S4yVLS0sn5TIBTB/NgWuiOfAQTVE+J9XltnV16nXCvqqIF+cSAUw3zYGH5INnb9/+ + 4Fyavtra7uRSLe4Zqk3f88MmxvNyjQBmhiavg/liVVVFrkuvLC4uPjSt/4eG6iEhXlOWZchlApg9mgNX + c3P6wD8nl6UXqvlqZ1rv/xmqQ+/ThPJv5ufnH5TLBDC7NAeuZm97n/tclplWhfCstL4/GVr/nsf1fqCH + NAeu5kB7aSSVZFabA13v786tVVFckGsE0C+aAw8mnSG/f25u7pRcmpnQbt8mlB/oWt8+pwnxWk+PBNAc + uJoqxC/MSnNgs7BQ1yFc17WePc97Z+1AD+C4aA5czU3T/qjXdED3zLQePx5ar75nf77ev3VQJQBWaQ5c + zZ4qhJfkskyVuigvapvbOtapt2lC/FFTls/IJQKgi+bA1aw0B07FGWOM8eQ6xnd1rEe/E+OX2jGdywTA + fdEcuCYx/u2kXzNudjTz6az/c53L3+NUMX7YI6EBjp7mwIO5pt3J5rpMlHKhfFpavu8PLW/fM+s/7QTY + eJoDV/PduiiWc1kmwuB6f7x7aDn7ntvrGC/MJQLgeGgOHKQK8Y46hOflsoxN0zQPbEJ8Z9cy9jxf3RnC + o3OZABgFzYGrab9efl0qyViaAxcXFubSgchnOpar77k8xnhaLhMAo6Q5cE2K+L7NfoBMHcJT0nvfvG5Z + +h3X+wE2iebAg7m6LMvtuS4bKl/v14txSMLuKoQX5BIBsBk0B64kfCfV4om5LCN33pYtD3DA1ZVwfb1Q + PzaXCYDNpDlwJWH3RnSe75rbdUZ6/X9b/369z0eLojg9lwmAcdAcuJqV5sCRaEJ4QnrNbw+9R9+zcr1/ + 26BKAIyV5sBDcll7W95cmmPSPocgvc6dQ6/b9+xpivJluUQATBDNgQdz1TE2B6phV4p446TdhAmAIens + 9ZXpQ1tz4KA58Am5LPfrrB07Hp7+zr90v1Z/UxXxU3Vdn5nLBMAk0xy4krC7WSifm8tyWGVZnl2F+M3u + 1+hxYrxkeXn5xFwmAKaB5sDV7E9nsRfnsqyTdnIvGtxiuPPv9jV7Ul1ekUsEwLTRHHgwVSjfsbS0dFIu + TWtr+6uB9P8ODP/Znue7ZVmek2sEwBTT2Laa8sr2enb7jHoHRl0JV8QYH5nHDQCzwJ0DV/P1tKO7vuO/ + 9zpVKN/qej/AjNIcKB3Z24TyVXmIADCrNAfKmtzUxHhuHhoAzDrNgZJyVQjhUXlIANAjmgN7m/Du471d + MgBTzp0D+5Sw777uiQBAz2gO7EPCLSnn500OAAOaA2c615RlGfKmBoBDaQ6cvTQhvmd+fv5BeRMDwGFp + DpyJuN4PwDHQHDjVubUqigvypgSAo6M5cPrShHjtYghl3oQAcGw0B05Rivi+ubm5U/KmA4Djozlw4rM/ + X+/fOthiADA6mgMnME2IP2rK8hl5GwHAxtAcOFH5SozxrLxpAGBjaQ4cf6oYP9w0zal5kwDA5tAcOLYc + aC/FpE1wwmBLAMAm0xy46bk91fvCXH4AGCvNgZuRIn6tKYrH5JoDwGTQHLihuTzGeFouNQBMFs2BI4/r + /QBMB82Bo0rYXYXwglxWAJh8mgOPN+H6eqF+bC4nAEwVzYHHkiL+c1EUp+caAsB00hx4FInxLalk2waV + A4AppznwfrOnLsqX53IBwOzQHHiYFPHGaqF6Ui4TAMwezYGHpirip+q6PjOXBwBmmubANjFesry8fGKu + CQD0Q4+bA/dWMf56LgMA9E8PmwO/W5blOXn1AaC/+tMcWF4ZY3xkXm0AYOabA2O8ZGlp6aS8ugDAGrPY + HLi3CeWr8voBAIczQ82BN6UDmnPzagEA92f6mwPLz1dVVeTVAQCO1LQ2B1Yh/PX8/PyD8moAAEdrupoD + w76qiBfnRQcAjtMUNAeGW1LOz8sLAIzKBDcHXlOWZciLCQCM2gQ2B142Nzd3Sl48AGCjTEhz4H7X+wFg + k425OfDWqqh+Pi8KALDJtqWDgDemHfKBoR30hqUJ8dqY5PcHAMalKcrnpJ3z94Z31qNO+/t+1/sBYIKk + k/LT6hD+Mu2oR/4rgXTW/+X02r+U3woAmDTtz/GaIv5F2nH/ZHhHfpS5J+Vf01n/S9LLbhu8OgAw0dpb + 8TYL5XPTmfvb0o78v/MOvWtHvybtzXzKT1Qx/n5d1wv5pQCAaXXvAUFRLLXd+3WMFzZF+cKUl7X/rIri + gsWFhbn8RwEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA6LEtW/4flgYiLD1qeX0A + AAAASUVORK5CYII= + + False @@ -162,8 +253,7 @@ False - - + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO wwAADsMBx2+oZAAAAR5JREFUOE+VkjFqwzAUhn2D9iShRyi+QhYbGujg3ZATZPKYdC6FQhPwlAMkg3dP @@ -174,7 +264,7 @@ cMaRN0UdBBkAAAAASUVORK5CYII= - + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6 JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAACXBIWXMAAAsTAAALEwEAmpwYAAACOElE @@ -188,17 +278,17 @@ HhQDmFjYeHVKFp7WX/Xuv9Kq9/+Vd/z7r7rv/3+l7f//y676DEwDN/9L+BVvYkKLCTgDhNkkVUyVlr74 qbbz73/VOTc/qsy89kWx+9h7qbQpJwS1bbOAscGGrB6EUTggLOqf16C55ft/HlnNAFZOXgVWdi4FRgYG VnR1MIwhwMTCyqEQ37qEmZVDFF0OE/9nAACtFF4Ey6OP+wAAAABJRU5ErkJggg== - - - - - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO - xAAADsQBlSsOGwAAAIZJREFUOE+1j10KwCAMgz2b755xl/IsvnaL2K20UfbDAmEako+ZROSTafjE12Go - tbbB43rK5xSAQq1VYFtmeQBoqZTSreVZvgTknM8yyyjA/qodsDF9gspD2Bj6B+DH+NqzhQQAG+POMnSX - AFuc5QFgn6ClHh5iOQVAKNixyucB8NY0vG9JOzzyhrdq5IRgAAAAAElFTkSuQmCC + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + xAAADsQBlSsOGwAAAIZJREFUOE+1j10KwCAMgz2b755xl/IsvnaL2K20UfbDAmEako+ZROSTafjE12Go + tbbB43rK5xSAQq1VYFtmeQBoqZTSreVZvgTknM8yyyjA/qodsDF9gspD2Bj6B+DH+NqzhQQAG+POMnSX + AFuc5QFgn6ClHh5iOQVAKNixyucB8NY0vG9JOzzyhrdq5IRgAAAAAElFTkSuQmCC + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO wwAADsMBx2+oZAAAAR5JREFUOE+VkjFqwzAUhn2D9iShRyi+QhYbGujg3ZATZPKYdC6FQhPwlAMkg3dP @@ -209,7 +299,7 @@ cMaRN0UdBBkAAAAASUVORK5CYII= - + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6 JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAACXBIWXMAAAsTAAALEwEAmpwYAAACOElE @@ -225,7 +315,7 @@ VnR1MIwhwMTCyqEQ37qEmZVDFF0OE/9nAACtFF4Ey6OP+wAAAABJRU5ErkJggg== - + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO xAAADsQBlSsOGwAAAIZJREFUOE+1j10KwCAMgz2b755xl/IsvnaL2K20UfbDAmEako+ZROSTafjE12Go @@ -233,7 +323,7 @@ AFuc5QFgn6ClHh5iOQVAKNixyucB8NY0vG9JOzzyhrdq5IRgAAAAAElFTkSuQmCC - + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO wwAADsMBx2+oZAAAAR5JREFUOE+VkjFqwzAUhn2D9iShRyi+QhYbGujg3ZATZPKYdC6FQhPwlAMkg3dP @@ -244,7 +334,7 @@ cMaRN0UdBBkAAAAASUVORK5CYII= - + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6 JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAACXBIWXMAAAsTAAALEwEAmpwYAAACOElE @@ -260,7 +350,7 @@ VnR1MIwhwMTCyqEQ37qEmZVDFF0OE/9nAACtFF4Ey6OP+wAAAABJRU5ErkJggg== - + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO xAAADsQBlSsOGwAAAIZJREFUOE+1j10KwCAMgz2b755xl/IsvnaL2K20UfbDAmEako+ZROSTafjE12Go diff --git a/SCrawler.YouTube/Controls/VideoOptionsForm.vb b/SCrawler.YouTube/Controls/VideoOptionsForm.vb index 534f5ed..e92e677 100644 --- a/SCrawler.YouTube/Controls/VideoOptionsForm.vb +++ b/SCrawler.YouTube/Controls/VideoOptionsForm.vb @@ -47,6 +47,8 @@ Namespace API.YouTube.Controls MyView.SetFormSize() End If + MyYouTubeSettings.DownloadLocations.PopulateComboBox(TXT_FILE) + If Not MyContainer Is Nothing Then With MyContainer Dim i% @@ -299,7 +301,7 @@ Namespace API.YouTube.Controls .FileSetManually = True .UpdateInfoFields() '#If DEBUG Then - ' Debug.WriteLine(.Command(False)) + 'Debug.WriteLine(.Command(False)) '#End If Else If OPT_AUDIO.Checked Then @@ -312,6 +314,7 @@ Namespace API.YouTube.Controls End With If MyYouTubeSettings.OutputPathAutoChange Then MyYouTubeSettings.OutputPath.Value = f + If MyDownloaderSettings.OutputPathAutoAddPaths Then MyYouTubeSettings.DownloadLocations.Add(f, False) DialogResult = DialogResult.OK Close() @@ -430,7 +433,7 @@ Namespace API.YouTube.Controls End Sub #End Region #Region "Footer" - Private Sub BTT_BROWSE_Click(sender As Object, e As EventArgs) Handles BTT_BROWSE.Click + Private Sub BTT_BROWSE_MouseClick(sender As Object, e As MouseEventArgs) Handles BTT_BROWSE.MouseClick Dim f As SFile #Disable Warning BC40000 If MyContainer.HasElements Then @@ -444,7 +447,13 @@ Namespace API.YouTube.Controls f = SFile.SaveAs(f, "Select the destination of the video file",,, sPattern, EDP.ReturnValue) End If #Enable Warning - If Not f.IsEmptyString Then TXT_FILE.Text = f + If Not f.IsEmptyString Then + If e.Button = MouseButtons.Right Then + MyYouTubeSettings.DownloadLocations.Add(f, MyDownloaderSettings.OutputPathAskForName) + MyYouTubeSettings.DownloadLocations.PopulateComboBox(TXT_FILE, f) + End If + TXT_FILE.Text = f + End If End Sub #End Region #End Region diff --git a/SCrawler.YouTube/Downloader/DownloadLocationsCollection.vb b/SCrawler.YouTube/Downloader/DownloadLocationsCollection.vb new file mode 100644 index 0000000..ba15afd --- /dev/null +++ b/SCrawler.YouTube/Downloader/DownloadLocationsCollection.vb @@ -0,0 +1,204 @@ +' Copyright (C) 2023 Andy https://github.com/AAndyProgram +' This program 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. +' +' This program is distributed in the hope that it will be useful, +' but WITHOUT ANY WARRANTY +Imports PersonalUtilities.Functions.XML +Imports PersonalUtilities.Functions.XML.Base +Imports PersonalUtilities.Functions.XML.Attributes +Imports PersonalUtilities.Forms.Controls +Imports PersonalUtilities.Forms.Controls.Base +Imports PersonalUtilities.Tools +Namespace DownloadObjects.STDownloader + Public Structure DownloadLocation : Implements IComparable(Of DownloadLocation), IEquatable(Of DownloadLocation), IEContainerProvider + Public Name As String + Public Path As String + + Public Model As Integer + ''' with separator + Public Sub New(ByVal Path As String) + Me.New(Path, -1) + End Sub + ''' + Public Sub New(ByVal Path As String, ByVal Model As Integer) + Me.Path = Path + Me.Model = Model + End Sub + Public Shared Widening Operator CType(ByVal Path As String) As DownloadLocation + Return New DownloadLocation(Path) + End Operator + Public Shared Narrowing Operator CType(ByVal Path As SFile) As DownloadLocation + Return New DownloadLocation(Path.PathWithSeparator) + End Operator + Public Shared Widening Operator CType(ByVal Location As DownloadLocation) As String + Return Location.Path + End Operator + Public Overrides Function ToString() As String + Return Path + End Function + Public Overloads Overrides Function Equals(ByVal Obj As Object) As Boolean + If Not IsNothing(Obj) Then + If TypeOf Obj Is DownloadLocation Then + Return Equals(DirectCast(Obj, DownloadLocation)) + Else + Return Obj.ToString = Path + End If + Else + Return False + End If + End Function + Public Overloads Function Equals(ByVal Other As DownloadLocation) As Boolean Implements IEquatable(Of DownloadLocation).Equals + Return Path = Other.Path And Model = Other.Model + End Function + Private Function ToEContainer(Optional ByVal e As ErrorsDescriber = Nothing) As EContainer Implements IEContainerProvider.ToEContainer + Return XMLGenerateContainers(Me).FirstOrDefault + End Function + Private Function CompareTo(ByVal Other As DownloadLocation) As Integer Implements IComparable(Of DownloadLocation).CompareTo + Return Name.CompareTo(Other.Name) + End Function + End Structure + Public Class DownloadLocationsCollection : Implements ICollection(Of DownloadLocation), IMyEnumerator(Of DownloadLocation) + Private ReadOnly Property Locations As List(Of DownloadLocation) + Private WorkingFile As SFile + Public Sub New() + Locations = New List(Of DownloadLocation) + End Sub + Public Sub Load(ByVal IsGlobal As Boolean, Optional ByVal IsYT As Boolean = False, Optional ByVal File As SFile = Nothing) + If Not IsGlobal Then + WorkingFile = $"Settings\DownloadLocations{IIf(IsYT, "YouTube", String.Empty)}.xml" + ElseIf Not File.IsEmptyString Then + WorkingFile = File + Else + Throw New ArgumentNullException("File", "File cannot be null in global locations instance") + End If + If WorkingFile.Exists Then + Using x As New XmlFile(WorkingFile, Protector.Modes.All, False) With {.AllowSameNames = True} + x.LoadData() + Locations.ListAddList(x.XMLGenerateInstances(Of DownloadLocation), LAP.NotContainsOnly) + End Using + End If + End Sub + Private ReadOnly Property IsReadOnly As Boolean = False Implements ICollection(Of DownloadLocation).IsReadOnly + Public ReadOnly Property Count As Integer Implements ICollection(Of DownloadLocation).Count, IMyEnumerator(Of DownloadLocation).MyEnumeratorCount + Get + Return Locations.Count + End Get + End Property + Default Public ReadOnly Property Item(ByVal Index As Integer) As DownloadLocation Implements IMyEnumerator(Of DownloadLocation).MyEnumeratorObject + Get + Return Locations(Index) + End Get + End Property + Public Shared Sub AddCmbColumns(ByRef CMB As ComboBoxExtended, Optional ByVal UseUpdate As Boolean = True) + With CMB + If UseUpdate Then .BeginUpdate() + With .Columns + .Clear() + .Add(New ListColumn("COL_NAME", "Name") With {.DisplayMember = False, .ValueMember = False, .AutoWidth = True, .Width = -1}) + .Add(New ListColumn("COL_VALUE", "Value") With {.DisplayMember = True, .ValueMember = True, .Visible = False}) + End With + If UseUpdate Then .EndUpdate(True) + End With + End Sub + Public Sub PopulateComboBox(ByRef CMB As ComboBoxExtended, Optional ByVal Current As SFile = Nothing) + Locations.Sort() + With CMB + .BeginUpdate() + + If .Columns.Count = 0 Then AddCmbColumns(CMB, False) + + .Items.Clear() + + If Count > 0 Then + .Items.AddRange(Locations.Select(Function(l) New ListItem({l.Name, l.Path}))) + .LeaveDefaultButtons = True + Else + .LeaveDefaultButtons = False + End If + + .ListAutoCompleteMode = ComboBoxExtended.AutoCompleteModes.Disabled + + .EndUpdate() + + If Not Current.IsEmptyString And Locations.Count > 0 Then + Dim i% = IndexOf(Current.PathWithSeparator) + If i.ValueBetween(0, .Items.Count - 1) Then .SelectedIndex = i + If Current.File.IsEmptyString Then CMB.Text = Current.PathWithSeparator Else CMB.Text = Current + End If + End With + End Sub + Public Function ChooseNewLocation(ByRef CMB As ComboBoxExtended, ByVal AddToList As Boolean, ByVal AskForName As Boolean) As SFile + Dim f As SFile = SFile.SelectPath(CMB.Text.CSFileP, "Select output directory", EDP.ReturnValue) + If Not f.IsEmptyString Then + CMB.Text = f.PathWithSeparator + If AddToList Then + Add(New DownloadLocation(f.PathWithSeparator), AskForName) + PopulateComboBox(CMB, f) + End If + End If + Return f + End Function + Private Sub Update() + If Locations.Count > 0 Then + Using x As New XmlFile With {.AllowSameNames = True} + x.AddRange(Locations) + x.Name = "Locations" + x.Save(WorkingFile, EDP.SendToLog) + End Using + Else + WorkingFile.Delete(,, EDP.None) + End If + End Sub + Public Sub Clear() Implements ICollection(Of DownloadLocation).Clear + If Locations.Count > 0 Then Locations.Clear() : Update() + End Sub + Public Overloads Sub Add(ByVal Item As DownloadLocation) Implements ICollection(Of DownloadLocation).Add + Add(Item, True) + End Sub + Public Overloads Sub Add(ByVal Item As DownloadLocation, ByVal AskForName As Boolean) + If Not Item.Path.IsEmptyString Then + Dim i% = IndexOf(Item) + Dim processUpdate As Boolean = True + If i >= 0 Then + If Locations(i).Model = Item.Model Then + processUpdate = False + Else + Locations(i) = Item + End If + Else + If Item.Name.IsEmptyString And AskForName Then Item.Name = InputBoxE("Enter a new name for the new location", "Location name", Item.Path) + If Item.Name.IsEmptyString Then Item.Name = Item.Path + Locations.Add(Item) + Locations.Sort() + End If + If processUpdate Then Update() + End If + End Sub + Private Sub CopyTo(ByVal Array() As DownloadLocation, ByVal ArrayIndex As Integer) Implements ICollection(Of DownloadLocation).CopyTo + Locations.CopyTo(Array, ArrayIndex) + End Sub + Public Function Contains(ByVal Item As DownloadLocation) As Boolean Implements ICollection(Of DownloadLocation).Contains + Return Not Item.Path.IsEmptyString AndAlso Locations.Contains(Item) + End Function + Public Function IndexOf(ByVal Item As DownloadLocation, Optional ByVal IgnoreModel As Boolean = False) As Integer + Return Locations.FindIndex(Function(d) d.Path = Item.Path And (d.Model = Item.Model Or IgnoreModel)) + End Function + Public Function Remove(ByVal Item As DownloadLocation) As Boolean Implements ICollection(Of DownloadLocation).Remove + If Locations.Remove(Item) Then + Update() + Return True + Else + Return False + End If + End Function + Private Function GetEnumerator() As IEnumerator(Of DownloadLocation) Implements IEnumerable(Of DownloadLocation).GetEnumerator + Return New MyEnumerator(Of DownloadLocation)(Me) + End Function + Private Function IEnumerable_GetEnumerator() As IEnumerator Implements IEnumerable.GetEnumerator + Return GetEnumerator() + End Function + End Class +End Namespace diff --git a/SCrawler.YouTube/Downloader/IDownloaderSettings.vb b/SCrawler.YouTube/Downloader/IDownloaderSettings.vb index 14ae81f..d4e5299 100644 --- a/SCrawler.YouTube/Downloader/IDownloaderSettings.vb +++ b/SCrawler.YouTube/Downloader/IDownloaderSettings.vb @@ -16,5 +16,11 @@ Namespace DownloadObjects.STDownloader ReadOnly Property OnItemDoubleClick As DoubleClickBehavior ReadOnly Property OpenFolderInOtherProgram As Boolean ReadOnly Property OpenFolderInOtherProgram_Command As String + ReadOnly Property OutputPathAskForName As Boolean + ReadOnly Property OutputPathAutoAddPaths As Boolean + ReadOnly Property ENVIR_FFMPEG As SFile + ReadOnly Property ENVIR_YTDLP As SFile + ReadOnly Property ENVIR_GDL As SFile + ReadOnly Property ENVIR_CURL As SFile End Interface End Namespace \ No newline at end of file diff --git a/SCrawler.YouTube/Downloader/VideoListForm.Designer.vb b/SCrawler.YouTube/Downloader/VideoListForm.Designer.vb index c76cf4a..882fcac 100644 --- a/SCrawler.YouTube/Downloader/VideoListForm.Designer.vb +++ b/SCrawler.YouTube/Downloader/VideoListForm.Designer.vb @@ -47,6 +47,7 @@ Namespace DownloadObjects.STDownloader Me.BTT_LOG = New System.Windows.Forms.ToolStripButton() Me.BTT_INFO = New System.Windows.Forms.ToolStripButton() Me.BTT_DONATE = New System.Windows.Forms.ToolStripButton() + Me.BTT_BUG_REPORT = New System.Windows.Forms.ToolStripButton() SEP_2 = New System.Windows.Forms.ToolStripSeparator() SEP_3 = New System.Windows.Forms.ToolStripSeparator() MENU_ADD_SEP_1 = New System.Windows.Forms.ToolStripSeparator() @@ -104,7 +105,7 @@ Namespace DownloadObjects.STDownloader 'TOOLBAR_TOP ' Me.TOOLBAR_TOP.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden - Me.TOOLBAR_TOP.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BTT_SETTINGS, Me.SEP_1, Me.MENU_ADD, SEP_2, Me.BTT_DOWN, Me.BTT_STOP, SEP_3, Me.BTT_DELETE, Me.BTT_CLEAR_DONE, Me.BTT_CLEAR_ALL, Me.SEP_LOG, Me.BTT_LOG, Me.BTT_INFO, Me.BTT_DONATE}) + Me.TOOLBAR_TOP.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BTT_SETTINGS, Me.SEP_1, Me.MENU_ADD, SEP_2, Me.BTT_DOWN, Me.BTT_STOP, SEP_3, Me.BTT_DELETE, Me.BTT_CLEAR_DONE, Me.BTT_CLEAR_ALL, Me.SEP_LOG, Me.BTT_LOG, Me.BTT_INFO, Me.BTT_DONATE, Me.BTT_BUG_REPORT}) Me.TOOLBAR_TOP.Location = New System.Drawing.Point(0, 0) Me.TOOLBAR_TOP.Name = "TOOLBAR_TOP" Me.TOOLBAR_TOP.Size = New System.Drawing.Size(584, 25) @@ -262,6 +263,16 @@ Namespace DownloadObjects.STDownloader Me.BTT_DONATE.Size = New System.Drawing.Size(23, 22) Me.BTT_DONATE.ToolTipText = "Support" ' + 'BTT_BUG_REPORT + ' + Me.BTT_BUG_REPORT.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right + Me.BTT_BUG_REPORT.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.BTT_BUG_REPORT.Image = Global.SCrawler.My.Resources.Resources.MailPic_16 + Me.BTT_BUG_REPORT.ImageTransparentColor = System.Drawing.Color.Magenta + Me.BTT_BUG_REPORT.Name = "BTT_BUG_REPORT" + Me.BTT_BUG_REPORT.Size = New System.Drawing.Size(23, 22) + Me.BTT_BUG_REPORT.Text = "Bug report" + ' 'VideoListForm ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) @@ -305,5 +316,6 @@ Namespace DownloadObjects.STDownloader Protected WithEvents BTT_ADD_SHORTS_ONLY As PersonalUtilities.Forms.Controls.KeyClick.ToolStripMenuItemKeyClick Protected WithEvents MENU_ADD As ToolStripDropDownButton Protected WithEvents BTT_DOWN As ToolStripButton + Private WithEvents BTT_BUG_REPORT As ToolStripButton End Class End Namespace \ No newline at end of file diff --git a/SCrawler.YouTube/Downloader/VideoListForm.resx b/SCrawler.YouTube/Downloader/VideoListForm.resx index 79365c2..5c0502f 100644 --- a/SCrawler.YouTube/Downloader/VideoListForm.resx +++ b/SCrawler.YouTube/Downloader/VideoListForm.resx @@ -136,88 +136,46 @@ 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 @@ -236,122 +194,164 @@ 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 - 4dDtOAAAAABJRU5ErkJggg== + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAVESURBVEhLjZVrTJNXGMcLQmdHO6AdarLSOcQBQgv0raV1 + XnBcpGjBlgo6RtSMiisoXlCiGI3RxMVLsmQftg/bhy0zmXFLdFk2JoyaOYFMGKiwlIsOaym9F152SRbo + 2f+UVmcsG0/yy9v3nOf8n3+fc9735dDoLyqKM6ekfHxz2bKRGxLJR5vF4lcwHBOc/J8YVipVv0kkt0aX + Lu27lppqwFAciApO0hgwmfh3ioq+HG5uJmOXLpHepqbADZWqI08gWInp2LmsyGFhmLX2HTsesefPk+mL + F8lIZaX3g/T0ekl8fCKm54p0rFjx4dChQ+Th6dNk7NQpYkOy9ehR0qpS3ZIJBK8jJWKRUbX6TYhb2QsX + CIu1bEsLmT55kgxptb6vxeL3kSIEMZybIpGNij9saiKPjh8nNiRNnDtH7jc3B24olT9JBYI0JD5TBG0p + tldV2ahzKj4NcfbIETINY/6aGmJOShpEmgoIOO3JyZdHamvJGApYge3YMWLHAufZs2QQ7WpXqbqy+Px0 + JAeLDMvlxROVlbap994jLMxMwxSLddMHD5LJvXtJq1Lp3ikSXUVqKRBy9MuXv9qqUNzq2b078BhJ42AC + bpzYEw9a5jp8mNxEkVw+P+MXhikaNxjsU2fOBFvCwjGL9rKNjWQK4ubcXG8aj/cZhI1ABuiGc2IZkSgd + RbqsO3cS+759xNHQQJwHDhA3ivkgZGloCHSr1XcflJfb2BMngo5ZzLHIZevrn4hn8HiXoVcLMkPi0SAY + 3FyhMON7ubzzXnV1wFFXR1zAYzIRLwT8KObfv59Mwe0UFcY9i/ugONrbqVD4ZHw+FafOV4HF4OlRDQVX + KRSuas/O7rJv20Zcu3YRD/AZjcQPh5MoOIkNnCwvJ/6NG4lfrSZe0JmX588RCK5g/R5AnfPAc+Lh4K5O + TMxsl8m6BtaunfFu3048Gg3xMAxxi8XELRAQd2wscS9aRCx8fqAtJcWnSkigG1oHssCLYF7xcATbdUcm + 65+AoANiTuACVDhITAzpy87+y5Ce/i3y3wVSsCDxYNhrakx2tdrq4PGeFwd0bCA1dcas1T7ISE4ux5J4 + sDBxv9F42F1Q4HbA/Xzi4+ARsGZmkj6dbvCtNWtysPQ/XyvB8BiNLa5NmzyOuLjnxF3oPW0XFR8DI9HR + ZAB05+QE+isqfjWoVLRN8xfx7dlz3FlS4o3k3CUSkcclJX8PpqUFqPhwSLwXdIIfGWa2n/6T+YrgKLY4 + Cgp8Dj4/KPxMW5YsIZbS0t/PrF/f3btly4Q1I4Pch2gPuE3FgZmyevXszwbD3QKZjL4gn77qvbW1zVTc + GUk8KYlYNmz4o55h2pHaUJKV9fZgWdkDC3ofFu8AbaCVFlEqZ7srKno/1WrpxnNBFMe7davNmZAQ2TnE + 6+TyNiSaAN1I4YH8/Df69PrRu1LpE/HvwDfgOuiXSmd69Poh5C4HXI5Dp7N4JZKIzk0M8wOS6kPi4S8V + 92BhoaqvomK0XSoN/Fv8q6go0pOVNWPWaMaRVwQSOd3V1TsmNBqPB6Jh5wPFxX/uiyweDm5jfn4eNnbk + TnY2uRYSN+flzX6h0TwuXbnyE+TMFUAsbqusPGErK/MNqVQB6rxRoejA+Hzi4eAa162T03a0YZ1ZrZ69 + Cucv8XgXMacDcy1CRDEpKfG9ev3nD8vKXFcKC3H6ohsxzgA+nadJ8wT3elXVO/d0uvHbWq27JC2Nfgv0 + QAzocX2ylv5IAAqwOXRd6OP/AqBHk56cLeA1EPGBWwSoY/qxpld6v5CgJuj7/+UQtGDIGIfzD+o72WmD + vfrkAAAAAElFTkSuQmCC iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAVDSURBVEhLjZVtTFNXGMcLQmdHO6AdarLSOcTxXqC3lFs3 - FceLFC3YgqBjRM2ouILiC0oUozGauPiSLNmH7cP2YctMZtwSXdzGhFE3J5ABAg4XBHRYS+l74bKXZJGe - /U9pdcay8SS/3N5znvN//n3OuffyaAwUFkaZEhI+ur5s2eg1mezDDVLpSxiO8E/+T4yoVOxvMtmNsaVL - +y8nJlZgKAqE+SdpDBmNwp7Cwi9GmpvJ+PnzpLOpyXeNZTtyRaKVmI6cywodwwzzunXr1gfcmTNk5tw5 - MlpZ6X4/ObleFh0di+m5Ih0rVnxwd/9+cv/ECTJ+/DixINl86BBpZdkbcpHoVaSELDKmVr8BcTN39izh - sJZraSEzx46Ru1qt5yup9D2kiEEE77pEYqHi95uayIMjR4gFSZOnT5Pe5mbfNZXqpwyRKAmJTxVBW4qs - VVUW6pyKz0CcO3iQzMCYt6aGmOLi7iCNBSJee3z8hdHaWjKOAmZgOXyYWLHAfuoUuYV2tbNsV7pQmIxk - f5ERhaJosrLSMv3uu4SDmRmY4rBuZt8+MrVrF2lVqZzbJJJLSC0BYp5++fKXW5XKGzd37PA9RNIEmIQb - O/bEhZY5Dhwg11EkWyhMucUwhRMVFdbpkyf9LeHgmEN7ucZGMg1xU3a2O0kg+BTCBiAHdMN5kYxEkowi - XeZt24h1925ia2gg9r17iRPFPBAabGjwdavVg/fKyizc0aN+xxzmOORy9fWPxVMEggvQqwVpAfFw4A9+ - tlic8p1C0dlTXe2z1dURB3AZjcQNAS+KeffsIdNwO02Fcc/h3i+O9nYqlR65UEjFqfNUsBg8OaqB4KvE - 4tT2zMwu6+bNxLF9O3EBj8FAvHA4hYJT2MCpsjLiXbeOeNVq4gadubneLJHoItbvBNS5ADwjHgx+Tmxs - Wrtc3jWUk/PIvWULcWk0xMUwxCmVEqdIRJyRkcS5aBEZFAp9bQkJHjYmhm5oHUgHz4N5xYPhb1ePXD4w - CUEbxOzAAaiwn4gI0p+Z+VdFcvI3yH8HZIAFifvDWlNjtKrVZptA8Kw4oGNDiYmPTFrtvZT4+DIsiQYL - E/caDAec+flOG9zPJz4BHgBzWhrp1+nuvLlqVRaW/udrxR8ug6HFsX69yxYV9Yy4A72n7aLi42A0PJwM - gR+ysnwD5eW/VrAsbdP8RTw7dx6xFxe7Qzl3SCTkYXHx37eSknxUfCQg3gc6gYlhZgfoP5mvCI5iiy0/ - 32MTCv3CT7VlyRIyXFLy+8k1a7r7Nm6cNKekkF8g2gtugh9pAUpOzuzPFRWD+XI5fUE+edW7a2ubqbg9 - lHhcHBleu/aPeoZpR2pDcXr6W3dKS+8No/dB8Q7QBlppEZVqtru8vO8TrZZuPB+E8dybNlnsMTGhnUO8 - TqFoQ6IR0I0U783Le61frx8bzMh4LP4tuAqugIHU1Ee9ev1d5C4HfJ5Npxt2y2QhnRsZ5nsk1QfEg18q - /r6CAra/vHzs64wM37/FvwwLI70oYNJoJpBXCGJ53dXVWyc1GpcLokHnQ0VFf+4OLR4MfmNeXi42drQn - M5NcDoibcnNnP9doHpasXPkxcuYKIBa3VVYetZSWem6zrI86b1QqOzA+n3gw+IbVqxW0HVexzqRWz16C - 8xcEgnOY04G5FiHCmISE6D69/rP7paWOiwUFOH3hjRhngJDO06R5gn+lqurt2zrdxE2t1lmclES/BXog - BfS4Pl5Lf8QAJdgQuC708X8O0KNJT85G8AoI+cAtAtQx/VjTK71fSFAT9P3/YgBaMGCMx/sHyjLY+hqD - P/QAAAAASUVORK5CYII= + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAVCSURBVEhLjZVtTFNXGMcLQmdHO6AdarLSOcTxXqC3ltZN + xfEiRQu2VNAxomZUXEHxBSWK0RhNNIrJkn3YPmwftsxkxi3RzWxMGCVTgYiMsuGCgA5rKX0vXPaSLNKz + /ymtzlg2nuSX23vOc/7Pv885914ODXNRUYwpKenjrmXLRq9LJB9tFItfwXBUYPJ/YkShUP4mkdwYW7p0 + 4Epysh5DMSAiMEljyGjk9xUVfTnS3EzGL1wgt5qa/NeVys48gWAlpqPnssLHMMO8adu27SF77hyZaW0l + o5WVng9SU+slsbHxmJ4r0rlixYf3DhwgD06eJOMnThArki2HD5M2pfKGVCB4HSlhi4ypVG9B3MKeP09Y + rGVbWsjM8ePknkbj/Vosfh8pQhDF6RKJrFT8QVMTeXj0KLEiafLMGdLX3Oy/rlDczBIIUpD4TBG0pdhW + VWWlzqn4DMTZQ4fIDIz5amqIKSHhLtKUQMDpSEy8OFpbS8ZRwAKsR44QGxY4Tp8m/WhXh1LZk8nnpyI5 + UGREJiuerKy0Tp89S1iYmYEpFutm9u8nU7t3kzaFwrVdJLqM1FIg5OiWL3+1TS6/cXPnTv8jJE2ASbhx + YE/caJnz4EHShSK5fH7aTwxTNKHX26ZPnQq0hIVjFu1lGxvJNMRNubmeFB7vMwgbgBTQDedEMyJRKor0 + WLZvJ7Y9e4i9oYE49u0jLhTzQsjc0ODvVakG75eXW9ljxwKOWcyxyGXr65+Ip/F4F6FXCzKC4pEgENxc + oTDte5ms+3Z1td9eV0ecwG00Eg8EfCjm27uXTMPtNBXGPYv7gDja2y2Xe6V8PhWnztPBYvD0qAaDqxAK + 0zuys3tsW7YQ544dxA28BgPxweEUCk5hA6fKy4lv/XriU6mIB3Tn5flyBIJLWL8LUOc88Jx4KLir4uMz + OqTSniG5/LFn61biVquJm2GISywmLoGAuKKjiWvRImLm8/3tSUleZVwc3dA6kAleBPOKhyLQrj6p1DwJ + QTvEHMAJqHCAqCgykJ39lz419VvkvweywILEA2GrqTHaVCqLncd7XhzQsaHk5McmjeZ+WmJiOZbEgoWJ + +wyGg66CApcd7ucTnwAPgSUjgwxotXffXr06B0v/87USCLfB0OLcsMFtj4l5TtyJ3tN2UfFxMBoZSYZA + V06O31xR8ateqaRtmr+Id9euo46SEk84506RiDwqKfm7PyXFT8VHguL9oBuYGGbWTP/JfEVwFFvsBQVe + O58fEH6mLUuWkOHS0t9PrV3b279p06QlLY38AtE74Bb4kRagrFo1e1uvHyyQSukL8umr3lNb20zFHeHE + ExLI8Lp1f9QzTAdSG0oyM9+5W1Z2fxi9D4l3gnbQRosoFLO9FRX9n2o0dOO5IILj2bzZ6oiLC+8c4nUy + WTsSjYBupHBffv4bAzrd2GBW1hPx78A1cBWY09Mf39Hp7iF3OeBy7FrtsEciCevcyDA/IKk+KB76UnH3 + FxYqByoqxq5lZfn/Lf5VRAS5gwImtXoCeUUgntNbXb1tUq12uyEacj5UXPznnvDioeA25ufnYWNH+7Kz + yZWguCkvb/YLtfpR6cqVnyBnrgBicXtl5TFrWZl3UKn0U+eNcnknxucTDwXXsGaNjLbjG6wzqVSzl+H8 + JR6vFXNaMNciRASTlBTbr9N9/qCszHmpsBCnL7IR4wzg03maNE9wr1ZVvfuzVjtxS6NxlaSk0G+BDogB + Pa5P1tIfcUAONgavC338XwD0aNKTswm8BsI+cIsAdUw/1vRK7xcS1AR9/78chBYMGuNw/gGBHdjskDgc + +QAAAABJRU5ErkJggg== iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAVDSURBVEhLjZVtTFNXGMcLQmdHO6AdarLSOcTxXqC3lFs3 - FceLFC3YgqBjRM2ouILiC0oUozGauPiSLNmH7cP2YctMZtwSXdzGhFE3J5ABAg4XBHRYS+l74bKXZJGe - /U9pdcay8SS/3N5znvN//n3OuffyaAwUFkaZEhI+ur5s2eg1mezDDVLpSxiO8E/+T4yoVOxvMtmNsaVL - +y8nJlZgKAqE+SdpDBmNwp7Cwi9GmpvJ+PnzpLOpyXeNZTtyRaKVmI6cywodwwzzunXr1gfcmTNk5tw5 - MlpZ6X4/ObleFh0di+m5Ih0rVnxwd/9+cv/ECTJ+/DixINl86BBpZdkbcpHoVaSELDKmVr8BcTN39izh - sJZraSEzx46Ru1qt5yup9D2kiEEE77pEYqHi95uayIMjR4gFSZOnT5Pe5mbfNZXqpwyRKAmJTxVBW4qs - VVUW6pyKz0CcO3iQzMCYt6aGmOLi7iCNBSJee3z8hdHaWjKOAmZgOXyYWLHAfuoUuYV2tbNsV7pQmIxk - f5ERhaJosrLSMv3uu4SDmRmY4rBuZt8+MrVrF2lVqZzbJJJLSC0BYp5++fKXW5XKGzd37PA9RNIEmIQb - O/bEhZY5Dhwg11EkWyhMucUwhRMVFdbpkyf9LeHgmEN7ucZGMg1xU3a2O0kg+BTCBiAHdMN5kYxEkowi - XeZt24h1925ia2gg9r17iRPFPBAabGjwdavVg/fKyizc0aN+xxzmOORy9fWPxVMEggvQqwVpAfFw4A9+ - tlic8p1C0dlTXe2z1dURB3AZjcQNAS+KeffsIdNwO02Fcc/h3i+O9nYqlR65UEjFqfNUsBg8OaqB4KvE - 4tT2zMwu6+bNxLF9O3EBj8FAvHA4hYJT2MCpsjLiXbeOeNVq4gadubneLJHoItbvBNS5ADwjHgx+Tmxs - Wrtc3jWUk/PIvWULcWk0xMUwxCmVEqdIRJyRkcS5aBEZFAp9bQkJHjYmhm5oHUgHz4N5xYPhb1ePXD4w - CUEbxOzAAaiwn4gI0p+Z+VdFcvI3yH8HZIAFifvDWlNjtKrVZptA8Kw4oGNDiYmPTFrtvZT4+DIsiQYL - E/caDAec+flOG9zPJz4BHgBzWhrp1+nuvLlqVRaW/udrxR8ug6HFsX69yxYV9Yy4A72n7aLi42A0PJwM - gR+ysnwD5eW/VrAsbdP8RTw7dx6xFxe7Qzl3SCTkYXHx37eSknxUfCQg3gc6gYlhZgfoP5mvCI5iiy0/ - 32MTCv3CT7VlyRIyXFLy+8k1a7r7Nm6cNKekkF8g2gtugh9pAUpOzuzPFRWD+XI5fUE+edW7a2ubqbg9 - lHhcHBleu/aPeoZpR2pDcXr6W3dKS+8No/dB8Q7QBlppEZVqtru8vO8TrZZuPB+E8dybNlnsMTGhnUO8 - TqFoQ6IR0I0U783Le61frx8bzMh4LP4tuAqugIHU1Ee9ev1d5C4HfJ5Npxt2y2QhnRsZ5nsk1QfEg18q - /r6CAra/vHzs64wM37/FvwwLI70oYNJoJpBXCGJ53dXVWyc1GpcLokHnQ0VFf+4OLR4MfmNeXi42drQn - M5NcDoibcnNnP9doHpasXPkxcuYKIBa3VVYetZSWem6zrI86b1QqOzA+n3gw+IbVqxW0HVexzqRWz16C - 8xcEgnOY04G5FiHCmISE6D69/rP7paWOiwUFOH3hjRhngJDO06R5gn+lqurt2zrdxE2t1lmclES/BXog - BfS4Pl5Lf8QAJdgQuC708X8O0KNJT85G8AoI+cAtAtQx/VjTK71fSFAT9P3/YgBaMGCMx/sHyjLY+hqD - P/QAAAAASUVORK5CYII= + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAVCSURBVEhLjZVtTFNXGMcLQmdHO6AdarLSOcTxXqC3ltZN + xfEiRQu2VNAxomZUXEHxBSWK0RhNNIrJkn3YPmwftsxkxi3RzWxMGCVTgYiMsuGCgA5rKX0vXPaSLNKz + /ymtzlg2nuSX23vOc/7Pv885914ODXNRUYwpKenjrmXLRq9LJB9tFItfwXBUYPJ/YkShUP4mkdwYW7p0 + 4Epysh5DMSAiMEljyGjk9xUVfTnS3EzGL1wgt5qa/NeVys48gWAlpqPnssLHMMO8adu27SF77hyZaW0l + o5WVng9SU+slsbHxmJ4r0rlixYf3DhwgD06eJOMnThArki2HD5M2pfKGVCB4HSlhi4ypVG9B3MKeP09Y + rGVbWsjM8ePknkbj/Vosfh8pQhDF6RKJrFT8QVMTeXj0KLEiafLMGdLX3Oy/rlDczBIIUpD4TBG0pdhW + VWWlzqn4DMTZQ4fIDIz5amqIKSHhLtKUQMDpSEy8OFpbS8ZRwAKsR44QGxY4Tp8m/WhXh1LZk8nnpyI5 + UGREJiuerKy0Tp89S1iYmYEpFutm9u8nU7t3kzaFwrVdJLqM1FIg5OiWL3+1TS6/cXPnTv8jJE2ASbhx + YE/caJnz4EHShSK5fH7aTwxTNKHX26ZPnQq0hIVjFu1lGxvJNMRNubmeFB7vMwgbgBTQDedEMyJRKor0 + WLZvJ7Y9e4i9oYE49u0jLhTzQsjc0ODvVakG75eXW9ljxwKOWcyxyGXr65+Ip/F4F6FXCzKC4pEgENxc + oTDte5ms+3Z1td9eV0ecwG00Eg8EfCjm27uXTMPtNBXGPYv7gDja2y2Xe6V8PhWnztPBYvD0qAaDqxAK + 0zuys3tsW7YQ544dxA28BgPxweEUCk5hA6fKy4lv/XriU6mIB3Tn5flyBIJLWL8LUOc88Jx4KLir4uMz + OqTSniG5/LFn61biVquJm2GISywmLoGAuKKjiWvRImLm8/3tSUleZVwc3dA6kAleBPOKhyLQrj6p1DwJ + QTvEHMAJqHCAqCgykJ39lz419VvkvweywILEA2GrqTHaVCqLncd7XhzQsaHk5McmjeZ+WmJiOZbEgoWJ + +wyGg66CApcd7ucTnwAPgSUjgwxotXffXr06B0v/87USCLfB0OLcsMFtj4l5TtyJ3tN2UfFxMBoZSYZA + V06O31xR8ateqaRtmr+Id9euo46SEk84506RiDwqKfm7PyXFT8VHguL9oBuYGGbWTP/JfEVwFFvsBQVe + O58fEH6mLUuWkOHS0t9PrV3b279p06QlLY38AtE74Bb4kRagrFo1e1uvHyyQSukL8umr3lNb20zFHeHE + ExLI8Lp1f9QzTAdSG0oyM9+5W1Z2fxi9D4l3gnbQRosoFLO9FRX9n2o0dOO5IILj2bzZ6oiLC+8c4nUy + WTsSjYBupHBffv4bAzrd2GBW1hPx78A1cBWY09Mf39Hp7iF3OeBy7FrtsEciCevcyDA/IKk+KB76UnH3 + FxYqByoqxq5lZfn/Lf5VRAS5gwImtXoCeUUgntNbXb1tUq12uyEacj5UXPznnvDioeA25ufnYWNH+7Kz + yZWguCkvb/YLtfpR6cqVnyBnrgBicXtl5TFrWZl3UKn0U+eNcnknxucTDwXXsGaNjLbjG6wzqVSzl+H8 + JR6vFXNaMNciRASTlBTbr9N9/qCszHmpsBCnL7IR4wzg03maNE9wr1ZVvfuzVjtxS6NxlaSk0G+BDogB + Pa5P1tIfcUAONgavC338XwD0aNKTswm8BsI+cIsAdUw/1vRK7xcS1AR9/78chBYMGuNw/gGBHdjskDgc + +QAAAABJRU5ErkJggg== iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAVDSURBVEhLjZVtTFNXGMcLQmdHO6AdarLSOcTxXqC3lFs3 - FceLFC3YgqBjRM2ouILiC0oUozGauPiSLNmH7cP2YctMZtwSXdzGhFE3J5ABAg4XBHRYS+l74bKXZJGe - /U9pdcay8SS/3N5znvN//n3OuffyaAwUFkaZEhI+ur5s2eg1mezDDVLpSxiO8E/+T4yoVOxvMtmNsaVL - +y8nJlZgKAqE+SdpDBmNwp7Cwi9GmpvJ+PnzpLOpyXeNZTtyRaKVmI6cywodwwzzunXr1gfcmTNk5tw5 - MlpZ6X4/ObleFh0di+m5Ih0rVnxwd/9+cv/ECTJ+/DixINl86BBpZdkbcpHoVaSELDKmVr8BcTN39izh - sJZraSEzx46Ru1qt5yup9D2kiEEE77pEYqHi95uayIMjR4gFSZOnT5Pe5mbfNZXqpwyRKAmJTxVBW4qs - VVUW6pyKz0CcO3iQzMCYt6aGmOLi7iCNBSJee3z8hdHaWjKOAmZgOXyYWLHAfuoUuYV2tbNsV7pQmIxk - f5ERhaJosrLSMv3uu4SDmRmY4rBuZt8+MrVrF2lVqZzbJJJLSC0BYp5++fKXW5XKGzd37PA9RNIEmIQb - O/bEhZY5Dhwg11EkWyhMucUwhRMVFdbpkyf9LeHgmEN7ucZGMg1xU3a2O0kg+BTCBiAHdMN5kYxEkowi - XeZt24h1925ia2gg9r17iRPFPBAabGjwdavVg/fKyizc0aN+xxzmOORy9fWPxVMEggvQqwVpAfFw4A9+ - tlic8p1C0dlTXe2z1dURB3AZjcQNAS+KeffsIdNwO02Fcc/h3i+O9nYqlR65UEjFqfNUsBg8OaqB4KvE - 4tT2zMwu6+bNxLF9O3EBj8FAvHA4hYJT2MCpsjLiXbeOeNVq4gadubneLJHoItbvBNS5ADwjHgx+Tmxs - Wrtc3jWUk/PIvWULcWk0xMUwxCmVEqdIRJyRkcS5aBEZFAp9bQkJHjYmhm5oHUgHz4N5xYPhb1ePXD4w - CUEbxOzAAaiwn4gI0p+Z+VdFcvI3yH8HZIAFifvDWlNjtKrVZptA8Kw4oGNDiYmPTFrtvZT4+DIsiQYL - E/caDAec+flOG9zPJz4BHgBzWhrp1+nuvLlqVRaW/udrxR8ug6HFsX69yxYV9Yy4A72n7aLi42A0PJwM - gR+ysnwD5eW/VrAsbdP8RTw7dx6xFxe7Qzl3SCTkYXHx37eSknxUfCQg3gc6gYlhZgfoP5mvCI5iiy0/ - 32MTCv3CT7VlyRIyXFLy+8k1a7r7Nm6cNKekkF8g2gtugh9pAUpOzuzPFRWD+XI5fUE+edW7a2ubqbg9 - lHhcHBleu/aPeoZpR2pDcXr6W3dKS+8No/dB8Q7QBlppEZVqtru8vO8TrZZuPB+E8dybNlnsMTGhnUO8 - TqFoQ6IR0I0U783Le61frx8bzMh4LP4tuAqugIHU1Ee9ev1d5C4HfJ5Npxt2y2QhnRsZ5nsk1QfEg18q - /r6CAra/vHzs64wM37/FvwwLI70oYNJoJpBXCGJ53dXVWyc1GpcLokHnQ0VFf+4OLR4MfmNeXi42drQn - M5NcDoibcnNnP9doHpasXPkxcuYKIBa3VVYetZSWem6zrI86b1QqOzA+n3gw+IbVqxW0HVexzqRWz16C - 8xcEgnOY04G5FiHCmISE6D69/rP7paWOiwUFOH3hjRhngJDO06R5gn+lqurt2zrdxE2t1lmclES/BXog - BfS4Pl5Lf8QAJdgQuC708X8O0KNJT85G8AoI+cAtAtQx/VjTK71fSFAT9P3/YgBaMGCMx/sHyjLY+hqD - P/QAAAAASUVORK5CYII= + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAVCSURBVEhLjZVtTFNXGMcLQmdHO6AdarLSOcTxXqC3ltZN + xfEiRQu2VNAxomZUXEHxBSWK0RhNNIrJkn3YPmwftsxkxi3RzWxMGCVTgYiMsuGCgA5rKX0vXPaSLNKz + /ymtzlg2nuSX23vOc/7Pv885914ODXNRUYwpKenjrmXLRq9LJB9tFItfwXBUYPJ/YkShUP4mkdwYW7p0 + 4Epysh5DMSAiMEljyGjk9xUVfTnS3EzGL1wgt5qa/NeVys48gWAlpqPnssLHMMO8adu27SF77hyZaW0l + o5WVng9SU+slsbHxmJ4r0rlixYf3DhwgD06eJOMnThArki2HD5M2pfKGVCB4HSlhi4ypVG9B3MKeP09Y + rGVbWsjM8ePknkbj/Vosfh8pQhDF6RKJrFT8QVMTeXj0KLEiafLMGdLX3Oy/rlDczBIIUpD4TBG0pdhW + VWWlzqn4DMTZQ4fIDIz5amqIKSHhLtKUQMDpSEy8OFpbS8ZRwAKsR44QGxY4Tp8m/WhXh1LZk8nnpyI5 + UGREJiuerKy0Tp89S1iYmYEpFutm9u8nU7t3kzaFwrVdJLqM1FIg5OiWL3+1TS6/cXPnTv8jJE2ASbhx + YE/caJnz4EHShSK5fH7aTwxTNKHX26ZPnQq0hIVjFu1lGxvJNMRNubmeFB7vMwgbgBTQDedEMyJRKor0 + WLZvJ7Y9e4i9oYE49u0jLhTzQsjc0ODvVakG75eXW9ljxwKOWcyxyGXr65+Ip/F4F6FXCzKC4pEgENxc + oTDte5ms+3Z1td9eV0ecwG00Eg8EfCjm27uXTMPtNBXGPYv7gDja2y2Xe6V8PhWnztPBYvD0qAaDqxAK + 0zuys3tsW7YQ544dxA28BgPxweEUCk5hA6fKy4lv/XriU6mIB3Tn5flyBIJLWL8LUOc88Jx4KLir4uMz + OqTSniG5/LFn61biVquJm2GISywmLoGAuKKjiWvRImLm8/3tSUleZVwc3dA6kAleBPOKhyLQrj6p1DwJ + QTvEHMAJqHCAqCgykJ39lz419VvkvweywILEA2GrqTHaVCqLncd7XhzQsaHk5McmjeZ+WmJiOZbEgoWJ + +wyGg66CApcd7ucTnwAPgSUjgwxotXffXr06B0v/87USCLfB0OLcsMFtj4l5TtyJ3tN2UfFxMBoZSYZA + V06O31xR8ateqaRtmr+Id9euo46SEk84506RiDwqKfm7PyXFT8VHguL9oBuYGGbWTP/JfEVwFFvsBQVe + O58fEH6mLUuWkOHS0t9PrV3b279p06QlLY38AtE74Bb4kRagrFo1e1uvHyyQSukL8umr3lNb20zFHeHE + ExLI8Lp1f9QzTAdSG0oyM9+5W1Z2fxi9D4l3gnbQRosoFLO9FRX9n2o0dOO5IILj2bzZ6oiLC+8c4nUy + WTsSjYBupHBffv4bAzrd2GBW1hPx78A1cBWY09Mf39Hp7iF3OeBy7FrtsEciCevcyDA/IKk+KB76UnH3 + FxYqByoqxq5lZfn/Lf5VRAS5gwImtXoCeUUgntNbXb1tUq12uyEacj5UXPznnvDioeA25ufnYWNH+7Kz + yZWguCkvb/YLtfpR6cqVnyBnrgBicXtl5TFrWZl3UKn0U+eNcnknxucTDwXXsGaNjLbjG6wzqVSzl+H8 + JR6vFXNaMNciRASTlBTbr9N9/qCszHmpsBCnL7IR4wzg03maNE9wr1ZVvfuzVjtxS6NxlaSk0G+BDogB + Pa5P1tIfcUAONgavC338XwD0aNKTswm8BsI+cIsAdUw/1vRK7xcS1AR9/78chBYMGuNw/gGBHdjskDgc + +QAAAABJRU5ErkJggg== diff --git a/SCrawler.YouTube/Downloader/VideoListForm.vb b/SCrawler.YouTube/Downloader/VideoListForm.vb index c25aec2..c7957e1 100644 --- a/SCrawler.YouTube/Downloader/VideoListForm.vb +++ b/SCrawler.YouTube/Downloader/VideoListForm.vb @@ -50,7 +50,11 @@ Namespace DownloadObjects.STDownloader End If If AppMode Then - If Now.Month.ValueBetween(6, 8) Then Text = "SCrawler: Happy LGBT Pride Month! :-)" + If Now.Month.ValueBetween(6, 8) Then + Text = "SCrawler: Happy LGBT Pride Month! :-)" + ElseIf Not MyYouTubeSettings Is Nothing AndAlso Not MyYouTubeSettings.ProgramText.IsEmptyString Then + Text = MyYouTubeSettings.ProgramText + End If MyNotificator = New YTNotificator(Me) MyDownloaderSettings = MyYouTubeSettings End If @@ -64,6 +68,7 @@ Namespace DownloadObjects.STDownloader BTT_LOG.Visible = False BTT_INFO.Visible = False BTT_DONATE.Visible = False + BTT_BUG_REPORT.Visible = False End If MyProgress.Visible = False LoadData() @@ -96,7 +101,7 @@ Namespace DownloadObjects.STDownloader If c.ListExists Then c.Sort(New ContainerDateComparer) SuspendLayout() - For i% = c.Count - 1 To 0 Step -1 : ControlCreateAndAdd(c(i), True, i = 0) : Next + For i% = c.Count - 1 To 0 Step -1 : ControlCreateAndAdd(c(i), True, i = 0, True) : Next ResumeLayout(False) PerformLayout() End If @@ -121,11 +126,11 @@ Namespace DownloadObjects.STDownloader #End Region #Region "Controls" Protected Sub ControlCreateAndAdd(ByVal Container As IYouTubeMediaContainer, Optional ByVal DisableDownload As Boolean = False, - Optional ByVal PerformClick As Boolean = True) + Optional ByVal PerformClick As Boolean = True, Optional ByVal IsLoading As Boolean = False) ControlInvokeFast(TP_CONTROLS, Sub() With TP_CONTROLS .SuspendLayout() - If DisableDownload Or Not MyDownloaderSettings.DownloadAutomatically Then Container.Save() + If Not IsLoading And (DisableDownload Or Not MyDownloaderSettings.DownloadAutomatically) Then Container.Save() '.AutoScroll = True '.HorizontalScroll.Visible = False .RowStyles.Insert(0, New RowStyle(SizeType.Absolute, 60)) @@ -337,13 +342,13 @@ Namespace DownloadObjects.STDownloader MyJob.Cancel() End Sub Private Sub BTT_DELETE_Click(sender As Object, e As EventArgs) Handles BTT_DELETE.Click - RemoveControls(ControlsChecked) + RemoveControls(ControlsChecked, True) End Sub Protected Overridable Sub BTT_CLEAR_DONE_Click(sender As Object, e As EventArgs) Handles BTT_CLEAR_DONE.Click - RemoveControls(ControlsDownloaded) + RemoveControls(ControlsDownloaded, False) End Sub Protected Overridable Sub BTT_CLEAR_ALL_Click(sender As Object, e As EventArgs) Handles BTT_CLEAR_ALL.Click - RemoveControls() + RemoveControls(, False) End Sub Private Sub BTT_LOG_Click(sender As Object, e As EventArgs) Handles BTT_LOG.Click MyMainLOG_ShowForm(DesignXML,,,, AddressOf UpdateLogButton) @@ -351,20 +356,23 @@ Namespace DownloadObjects.STDownloader Friend Sub UpdateLogButton() If AppMode Then MyMainLOG_UpdateLogButton(BTT_LOG, TOOLBAR_TOP) End Sub + Private Sub BTT_BUG_REPORT_Click(sender As Object, e As EventArgs) Handles BTT_BUG_REPORT.Click + Try + With MyYouTubeSettings + Using f As New Editors.BugReporterForm(MyCache, .DesignXml, .ProgramText, My.Application.Info.Version, + True, .Self, .ProgramDescription) : f.ShowDialog() : End Using + End With + Catch + End Try + End Sub Private Sub BTT_DONATE_Click(sender As Object, e As EventArgs) Handles BTT_DONATE.Click Try : Process.Start("https://github.com/AAndyProgram/SCrawler/blob/main/HowToSupport.md") : Catch : End Try End Sub Private Sub BTT_INFO_Click(sender As Object, e As EventArgs) Handles BTT_INFO.Click - Try - MsgBoxE({$"YouTube Downloader v{My.Application.Info.Version}" & vbCr & - $"Address: https://github.com/AAndyProgram/SCrawler" & vbCr & - "Created by Greek LGBT person Andy (Gay)", - "Program information"},,,, - {"OK", New MsgBoxButton("Go to site") With {.CallBack = Sub(r, n, b) Process.Start("https://github.com/AAndyProgram/SCrawler/releases")}}) - Catch - End Try + ShowProgramInfo(MyYouTubeSettings.ProgramText.Value.IfNullOrEmpty("YouTube Downloader"), + My.Application.Info.Version, False, True, MyYouTubeSettings, True,, False, MyYouTubeSettings.ProgramDescription) End Sub - Protected Overloads Sub RemoveControls(Optional ByVal Predicate As Predicate(Of MediaItem) = Nothing) + Protected Overloads Sub RemoveControls(Optional ByVal Predicate As Predicate(Of MediaItem) = Nothing, Optional ByVal RemoveFiles As Boolean = False) ControlInvokeFast(TP_CONTROLS, Sub() With TP_CONTROLS If .Controls.Count > 0 Then @@ -379,7 +387,7 @@ Namespace DownloadObjects.STDownloader For i = rCnt.Count - 1 To 0 Step -1 cnt = .Controls(rCnt(i)) .Controls.RemoveAt(rCnt(i)) - If Not cnt.MyContainer Is Nothing Then cnt.MyContainer.Delete(False) + If Not cnt.MyContainer Is Nothing Then cnt.MyContainer.Delete(RemoveFiles) : cnt.MyContainer.Dispose() cnt.Dispose() Next End If @@ -395,19 +403,24 @@ Namespace DownloadObjects.STDownloader UpdateScrolls(Nothing, Nothing) End Sub, EDP.None) End Sub - Private Overloads Sub RemoveControls(ByVal CNT As MediaItem) + Private Overloads Sub RemoveControls(ByVal CNT As MediaItem, Optional ByVal RemoveFiles As Boolean = False) ControlInvokeFast(TP_CONTROLS, Sub() - If Not CNT Is Nothing Then TP_CONTROLS.Controls.Remove(CNT) : OffsetControls() + If Not CNT Is Nothing Then + If Not CNT.MyContainer Is Nothing Then CNT.MyContainer.Delete(RemoveFiles) : CNT.MyContainer.Dispose() + TP_CONTROLS.Controls.Remove(CNT) + OffsetControls() + CNT.Dispose() + End If End Sub, EDP.None) End Sub #End Region #Region "Media controls' handlers" Private Sub MediaControl_FileDownloaded(ByVal Sender As MediaItem, ByVal Container As IYouTubeMediaContainer) If MyDownloaderSettings.ShowNotifications Then MyNotificator.ShowNotification(Container.ToString(), Container.ThumbnailFile) - If MyDownloaderSettings.RemoveDownloadedAutomatically Then RemoveControls(Sender) + If MyDownloaderSettings.RemoveDownloadedAutomatically Then RemoveControls(Sender, False) End Sub Private Sub MediaControl_Removal(ByVal Sender As MediaItem, ByVal Container As IYouTubeMediaContainer) - RemoveControls(Sender) + RemoveControls(Sender, False) End Sub Private Sub MediaControl_DownloadAgain(ByVal Sender As MediaItem, ByVal Container As IYouTubeMediaContainer) If Not Container.URL.IsEmptyString Then BufferText = Container.URL : BTT_ADD.PerformClick() @@ -432,8 +445,6 @@ Namespace DownloadObjects.STDownloader Protected Sub AddToDownload(ByRef Item As MediaItem, ByVal RunThread As Boolean) Dim hc% = Item.MyContainer.GetHashCode If MyJob.Count = 0 OrElse Not MyJob.Items.Exists(Function(i) i.MyContainer.GetHashCode = hc) Then - 'TODELETE: YT video downloader 'Item.Pending' - 'Item.Pending = True MyJob.Add(Item) Item.AddToQueue() If RunThread Then StartDownloading() @@ -457,25 +468,39 @@ Namespace DownloadObjects.STDownloader MyJob.Start() Const nf As ANumbers.Formats = ANumbers.Formats.Number Dim t As New List(Of Task) - Dim i% + Dim i%, iAbs% Dim __item As MediaItem Dim Indexes As New List(Of Integer) + Dim IndexesToRemove As New List(Of Integer) Dim maxJobCount% = MyDownloaderSettings.MaxJobsCount If maxJobCount <= 0 Then maxJobCount = 1 MyProgress.Visible = True MyProgress.Maximum = MyJob.Count Do While MyJob.Count > 0 And Not MyJob.IsCancellationRequested i = -1 + iAbs = -1 Indexes.Clear() + IndexesToRemove.Clear() For Each __item In MyJob.Items - i += 1 - If i <= maxJobCount - 1 Then - Indexes.Add(i) - t.Add(Task.Run(Sub() __item.Download(MyJob.Token))) + iAbs += 1 + If Not __item.IsDisposed And Not If(__item.MyContainer?.DownloadState, Plugin.UserMediaStates.Unknown) = Plugin.UserMediaStates.Downloaded Then + i += 1 + If i <= maxJobCount - 1 Then + Indexes.Add(iAbs) + t.Add(Task.Run(Sub() __item.Download(MyJob.Token))) + Else + Exit For + End If Else - Exit For + IndexesToRemove.Add(iAbs) End If Next + If IndexesToRemove.Count > 0 Then + For i = IndexesToRemove.Count - 1 To 0 Step -1 + If Not MyJob.Items(IndexesToRemove(i)).IsDisposed Then MyJob.Items(IndexesToRemove(i)).Pending = False + MyJob.Items.RemoveAt(IndexesToRemove(i)) + Next + End If If t.Count > 0 Then MyProgress.Information = $"Downloading {t.Count.NumToString(nf, PNumProv)}/{MyJob.Count.NumToString(nf, PNumProv)}" MyProgress.InformationTemporary = MyProgress.Information @@ -491,6 +516,7 @@ Namespace DownloadObjects.STDownloader End If Loop Indexes.Clear() + IndexesToRemove.Clear() MyProgress.Done() MyProgress.InformationTemporary = "Download completed" Catch aoex As ArgumentOutOfRangeException diff --git a/SCrawler.YouTube/Editors/BugReporterForm.Designer.vb b/SCrawler.YouTube/Editors/BugReporterForm.Designer.vb new file mode 100644 index 0000000..5d0fffb --- /dev/null +++ b/SCrawler.YouTube/Editors/BugReporterForm.Designer.vb @@ -0,0 +1,361 @@ +' Copyright (C) 2023 Andy https://github.com/AAndyProgram +' This program 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. +' +' This program is distributed in the hope that it will be useful, +' but WITHOUT ANY WARRANTY +Namespace Editors + + Partial Public Class BugReporterForm : Inherits System.Windows.Forms.Form + + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + Private components As System.ComponentModel.IContainer + + Private Sub InitializeComponent() + Me.components = New System.ComponentModel.Container() + Dim TP_MAIN As System.Windows.Forms.TableLayoutPanel + Dim TP_BUTTONS As System.Windows.Forms.TableLayoutPanel + Dim ActionButton1 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(BugReporterForm)) + Dim ActionButton2 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton3 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton4 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton5 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton6 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton7 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton8 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton9 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Me.BTT_EMAIL = New System.Windows.Forms.Button() + Me.BTT_GITHUB = New System.Windows.Forms.Button() + Me.BTT_COPY = New System.Windows.Forms.Button() + Me.BTT_CANCEL = New System.Windows.Forms.Button() + Me.BTT_ANON = New System.Windows.Forms.Button() + Me.TT_MAIN = New System.Windows.Forms.ToolTip(Me.components) + Me.TXT_DESCR = New PersonalUtilities.Forms.Controls.TextBoxExtended() + Me.TXT_URL_PROFILE = New PersonalUtilities.Forms.Controls.TextBoxExtended() + Me.TXT_URL_POST = New PersonalUtilities.Forms.Controls.TextBoxExtended() + Me.TXT_REPRODUCE = New PersonalUtilities.Forms.Controls.TextBoxExtended() + Me.TXT_EXPECT = New PersonalUtilities.Forms.Controls.TextBoxExtended() + Me.TXT_LOG = New PersonalUtilities.Forms.Controls.TextBoxExtended() + Me.TXT_FILES = New PersonalUtilities.Forms.Controls.TextBoxExtended() + TP_MAIN = New System.Windows.Forms.TableLayoutPanel() + TP_BUTTONS = New System.Windows.Forms.TableLayoutPanel() + TP_MAIN.SuspendLayout() + TP_BUTTONS.SuspendLayout() + CType(Me.TXT_DESCR, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.TXT_URL_PROFILE, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.TXT_URL_POST, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.TXT_REPRODUCE, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.TXT_EXPECT, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.TXT_LOG, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.TXT_FILES, System.ComponentModel.ISupportInitialize).BeginInit() + Me.SuspendLayout() + ' + 'TP_MAIN + ' + TP_MAIN.ColumnCount = 1 + TP_MAIN.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) + TP_MAIN.Controls.Add(Me.TXT_DESCR, 0, 0) + TP_MAIN.Controls.Add(Me.TXT_URL_PROFILE, 0, 1) + TP_MAIN.Controls.Add(Me.TXT_URL_POST, 0, 2) + TP_MAIN.Controls.Add(Me.TXT_REPRODUCE, 0, 3) + TP_MAIN.Controls.Add(Me.TXT_EXPECT, 0, 4) + TP_MAIN.Controls.Add(Me.TXT_LOG, 0, 5) + TP_MAIN.Controls.Add(TP_BUTTONS, 0, 7) + TP_MAIN.Controls.Add(Me.TXT_FILES, 0, 6) + TP_MAIN.Dock = System.Windows.Forms.DockStyle.Fill + TP_MAIN.Location = New System.Drawing.Point(0, 0) + TP_MAIN.Name = "TP_MAIN" + TP_MAIN.RowCount = 8 + TP_MAIN.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 20.0!)) + TP_MAIN.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) + TP_MAIN.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) + TP_MAIN.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 20.0!)) + TP_MAIN.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 20.0!)) + TP_MAIN.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 20.0!)) + TP_MAIN.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 20.0!)) + TP_MAIN.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 30.0!)) + TP_MAIN.Size = New System.Drawing.Size(584, 461) + TP_MAIN.TabIndex = 0 + ' + 'TP_BUTTONS + ' + TP_BUTTONS.ColumnCount = 6 + TP_BUTTONS.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) + TP_BUTTONS.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 100.0!)) + TP_BUTTONS.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 100.0!)) + TP_BUTTONS.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 100.0!)) + TP_BUTTONS.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 100.0!)) + TP_BUTTONS.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 100.0!)) + TP_BUTTONS.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 20.0!)) + TP_BUTTONS.Controls.Add(Me.BTT_EMAIL, 2, 0) + TP_BUTTONS.Controls.Add(Me.BTT_GITHUB, 3, 0) + TP_BUTTONS.Controls.Add(Me.BTT_COPY, 4, 0) + TP_BUTTONS.Controls.Add(Me.BTT_CANCEL, 5, 0) + TP_BUTTONS.Controls.Add(Me.BTT_ANON, 1, 0) + TP_BUTTONS.Dock = System.Windows.Forms.DockStyle.Fill + TP_BUTTONS.Location = New System.Drawing.Point(0, 431) + TP_BUTTONS.Margin = New System.Windows.Forms.Padding(0) + TP_BUTTONS.Name = "TP_BUTTONS" + TP_BUTTONS.RowCount = 1 + TP_BUTTONS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) + TP_BUTTONS.Size = New System.Drawing.Size(584, 30) + TP_BUTTONS.TabIndex = 7 + ' + 'BTT_EMAIL + ' + Me.BTT_EMAIL.Dock = System.Windows.Forms.DockStyle.Fill + Me.BTT_EMAIL.Location = New System.Drawing.Point(187, 3) + Me.BTT_EMAIL.Name = "BTT_EMAIL" + Me.BTT_EMAIL.Size = New System.Drawing.Size(94, 24) + Me.BTT_EMAIL.TabIndex = 1 + Me.BTT_EMAIL.Text = "email" + Me.TT_MAIN.SetToolTip(Me.BTT_EMAIL, "Create a message to send via email.") + Me.BTT_EMAIL.UseVisualStyleBackColor = True + ' + 'BTT_GITHUB + ' + Me.BTT_GITHUB.Dock = System.Windows.Forms.DockStyle.Fill + Me.BTT_GITHUB.Location = New System.Drawing.Point(287, 3) + Me.BTT_GITHUB.Name = "BTT_GITHUB" + Me.BTT_GITHUB.Size = New System.Drawing.Size(94, 24) + Me.BTT_GITHUB.TabIndex = 2 + Me.BTT_GITHUB.Text = "GitHub" + Me.TT_MAIN.SetToolTip(Me.BTT_GITHUB, "Create a MarkDown message to post to GitHub.") + Me.BTT_GITHUB.UseVisualStyleBackColor = True + ' + 'BTT_COPY + ' + Me.BTT_COPY.Dock = System.Windows.Forms.DockStyle.Fill + Me.BTT_COPY.Location = New System.Drawing.Point(387, 3) + Me.BTT_COPY.Name = "BTT_COPY" + Me.BTT_COPY.Size = New System.Drawing.Size(94, 24) + Me.BTT_COPY.TabIndex = 3 + Me.BTT_COPY.Text = "Copy" + Me.TT_MAIN.SetToolTip(Me.BTT_COPY, "Create a message and copy to your clipboard.") + Me.BTT_COPY.UseVisualStyleBackColor = True + ' + 'BTT_CANCEL + ' + Me.BTT_CANCEL.DialogResult = System.Windows.Forms.DialogResult.Cancel + Me.BTT_CANCEL.Dock = System.Windows.Forms.DockStyle.Fill + Me.BTT_CANCEL.Location = New System.Drawing.Point(487, 3) + Me.BTT_CANCEL.Name = "BTT_CANCEL" + Me.BTT_CANCEL.Size = New System.Drawing.Size(94, 24) + Me.BTT_CANCEL.TabIndex = 4 + Me.BTT_CANCEL.Text = "Cancel" + Me.BTT_CANCEL.UseVisualStyleBackColor = True + ' + 'BTT_ANON + ' + Me.BTT_ANON.Dock = System.Windows.Forms.DockStyle.Fill + Me.BTT_ANON.Location = New System.Drawing.Point(87, 3) + Me.BTT_ANON.Name = "BTT_ANON" + Me.BTT_ANON.Size = New System.Drawing.Size(94, 24) + Me.BTT_ANON.TabIndex = 0 + Me.BTT_ANON.Text = "Anon message" + Me.TT_MAIN.SetToolTip(Me.BTT_ANON, resources.GetString("BTT_ANON.ToolTip")) + Me.BTT_ANON.UseVisualStyleBackColor = True + ' + 'TXT_DESCR + ' + ActionButton1.BackgroundImage = CType(resources.GetObject("ActionButton1.BackgroundImage"), System.Drawing.Image) + ActionButton1.Dock = System.Windows.Forms.DockStyle.Top + ActionButton1.Name = "Clear" + ActionButton1.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear + Me.TXT_DESCR.Buttons.Add(ActionButton1) + Me.TXT_DESCR.CaptionDock = System.Windows.Forms.DockStyle.Top + Me.TXT_DESCR.CaptionMode = PersonalUtilities.Forms.Controls.Base.ICaptionControl.Modes.None + Me.TXT_DESCR.CaptionVisible = False + Me.TXT_DESCR.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_DESCR.GroupBoxed = True + Me.TXT_DESCR.GroupBoxText = "Describe the bug or write your message" + Me.TXT_DESCR.Lines = New String(-1) {} + Me.TXT_DESCR.Location = New System.Drawing.Point(3, 3) + Me.TXT_DESCR.Multiline = True + Me.TXT_DESCR.Name = "TXT_DESCR" + Me.TXT_DESCR.Size = New System.Drawing.Size(578, 69) + Me.TXT_DESCR.TabIndex = 0 + Me.TXT_DESCR.TextToolTip = "A clear and concise description of what the bug is" + Me.TXT_DESCR.TextToolTipEnabled = True + ' + 'TXT_URL_PROFILE + ' + ActionButton2.BackgroundImage = CType(resources.GetObject("ActionButton2.BackgroundImage"), System.Drawing.Image) + ActionButton2.Name = "Clear" + ActionButton2.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear + Me.TXT_URL_PROFILE.Buttons.Add(ActionButton2) + Me.TXT_URL_PROFILE.CaptionText = "Profile URL" + Me.TXT_URL_PROFILE.CaptionWidth = 75.0R + Me.TXT_URL_PROFILE.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_URL_PROFILE.Lines = New String(-1) {} + Me.TXT_URL_PROFILE.Location = New System.Drawing.Point(3, 78) + Me.TXT_URL_PROFILE.Name = "TXT_URL_PROFILE" + Me.TXT_URL_PROFILE.Size = New System.Drawing.Size(578, 22) + Me.TXT_URL_PROFILE.TabIndex = 1 + ' + 'TXT_URL_POST + ' + ActionButton3.BackgroundImage = CType(resources.GetObject("ActionButton3.BackgroundImage"), System.Drawing.Image) + ActionButton3.Name = "Clear" + ActionButton3.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear + Me.TXT_URL_POST.Buttons.Add(ActionButton3) + Me.TXT_URL_POST.CaptionText = "Post URL" + Me.TXT_URL_POST.CaptionWidth = 75.0R + Me.TXT_URL_POST.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_URL_POST.Lines = New String(-1) {} + Me.TXT_URL_POST.Location = New System.Drawing.Point(3, 106) + Me.TXT_URL_POST.Name = "TXT_URL_POST" + Me.TXT_URL_POST.Size = New System.Drawing.Size(578, 22) + Me.TXT_URL_POST.TabIndex = 2 + ' + 'TXT_REPRODUCE + ' + ActionButton4.BackgroundImage = CType(resources.GetObject("ActionButton4.BackgroundImage"), System.Drawing.Image) + ActionButton4.Dock = System.Windows.Forms.DockStyle.Top + ActionButton4.Name = "Clear" + ActionButton4.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear + Me.TXT_REPRODUCE.Buttons.Add(ActionButton4) + Me.TXT_REPRODUCE.CaptionDock = System.Windows.Forms.DockStyle.Top + Me.TXT_REPRODUCE.CaptionMode = PersonalUtilities.Forms.Controls.Base.ICaptionControl.Modes.None + Me.TXT_REPRODUCE.CaptionVisible = False + Me.TXT_REPRODUCE.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_REPRODUCE.GroupBoxed = True + Me.TXT_REPRODUCE.GroupBoxText = "To Reproduce" + Me.TXT_REPRODUCE.Lines = New String(-1) {} + Me.TXT_REPRODUCE.Location = New System.Drawing.Point(3, 134) + Me.TXT_REPRODUCE.Multiline = True + Me.TXT_REPRODUCE.Name = "TXT_REPRODUCE" + Me.TXT_REPRODUCE.Size = New System.Drawing.Size(578, 69) + Me.TXT_REPRODUCE.TabIndex = 3 + Me.TXT_REPRODUCE.TextToolTip = "Steps to reproduce the behavior:" & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10) & "1. Do something" & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10) & "2. See error" + Me.TXT_REPRODUCE.TextToolTipEnabled = True + ' + 'TXT_EXPECT + ' + ActionButton5.BackgroundImage = CType(resources.GetObject("ActionButton5.BackgroundImage"), System.Drawing.Image) + ActionButton5.Dock = System.Windows.Forms.DockStyle.Top + ActionButton5.Name = "Clear" + ActionButton5.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear + Me.TXT_EXPECT.Buttons.Add(ActionButton5) + Me.TXT_EXPECT.CaptionDock = System.Windows.Forms.DockStyle.Top + Me.TXT_EXPECT.CaptionMode = PersonalUtilities.Forms.Controls.Base.ICaptionControl.Modes.None + Me.TXT_EXPECT.CaptionVisible = False + Me.TXT_EXPECT.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_EXPECT.GroupBoxed = True + Me.TXT_EXPECT.GroupBoxText = "Expected behavior" + Me.TXT_EXPECT.Lines = New String(-1) {} + Me.TXT_EXPECT.Location = New System.Drawing.Point(3, 209) + Me.TXT_EXPECT.Multiline = True + Me.TXT_EXPECT.Name = "TXT_EXPECT" + Me.TXT_EXPECT.Size = New System.Drawing.Size(578, 69) + Me.TXT_EXPECT.TabIndex = 4 + Me.TXT_EXPECT.TextToolTip = "A clear and concise description of what you expected to happen." + Me.TXT_EXPECT.TextToolTipEnabled = True + ' + 'TXT_LOG + ' + ActionButton6.BackgroundImage = CType(resources.GetObject("ActionButton6.BackgroundImage"), System.Drawing.Image) + ActionButton6.Dock = System.Windows.Forms.DockStyle.Top + ActionButton6.Name = "Open" + ActionButton6.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Open + ActionButton6.ToolTipText = "Select log files to add their text to the message" + ActionButton7.BackgroundImage = CType(resources.GetObject("ActionButton7.BackgroundImage"), System.Drawing.Image) + ActionButton7.Dock = System.Windows.Forms.DockStyle.Top + ActionButton7.Name = "Clear" + ActionButton7.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear + ActionButton7.ToolTipText = "Empty" + Me.TXT_LOG.Buttons.Add(ActionButton6) + Me.TXT_LOG.Buttons.Add(ActionButton7) + Me.TXT_LOG.CaptionDock = System.Windows.Forms.DockStyle.Top + Me.TXT_LOG.CaptionMode = PersonalUtilities.Forms.Controls.Base.ICaptionControl.Modes.None + Me.TXT_LOG.CaptionVisible = False + Me.TXT_LOG.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_LOG.GroupBoxed = True + Me.TXT_LOG.GroupBoxText = "Log data" + Me.TXT_LOG.Lines = New String(-1) {} + Me.TXT_LOG.Location = New System.Drawing.Point(3, 284) + Me.TXT_LOG.Multiline = True + Me.TXT_LOG.Name = "TXT_LOG" + Me.TXT_LOG.Size = New System.Drawing.Size(578, 69) + Me.TXT_LOG.TabIndex = 5 + ' + 'TXT_FILES + ' + ActionButton8.BackgroundImage = CType(resources.GetObject("ActionButton8.BackgroundImage"), System.Drawing.Image) + ActionButton8.Dock = System.Windows.Forms.DockStyle.Top + ActionButton8.Name = "Add" + ActionButton8.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Add + ActionButton8.ToolTipText = "Add files" + ActionButton9.BackgroundImage = CType(resources.GetObject("ActionButton9.BackgroundImage"), System.Drawing.Image) + ActionButton9.Dock = System.Windows.Forms.DockStyle.Top + ActionButton9.Name = "Clear" + ActionButton9.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear + ActionButton9.ToolTipText = "Clear files" + Me.TXT_FILES.Buttons.Add(ActionButton8) + Me.TXT_FILES.Buttons.Add(ActionButton9) + Me.TXT_FILES.CaptionDock = System.Windows.Forms.DockStyle.Top + Me.TXT_FILES.CaptionMode = PersonalUtilities.Forms.Controls.Base.ICaptionControl.Modes.None + Me.TXT_FILES.CaptionVisible = False + Me.TXT_FILES.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_FILES.GroupBoxed = True + Me.TXT_FILES.GroupBoxText = "Files" + Me.TXT_FILES.Lines = New String(-1) {} + Me.TXT_FILES.Location = New System.Drawing.Point(3, 359) + Me.TXT_FILES.Multiline = True + Me.TXT_FILES.Name = "TXT_FILES" + Me.TXT_FILES.Size = New System.Drawing.Size(578, 69) + Me.TXT_FILES.TabIndex = 6 + Me.TXT_FILES.TextBoxReadOnly = True + Me.TXT_FILES.TextToolTip = "Attach files to your message (only works with anonymous message)" + Me.TXT_FILES.TextToolTipEnabled = True + ' + 'BugReporterForm + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.CancelButton = Me.BTT_CANCEL + Me.ClientSize = New System.Drawing.Size(584, 461) + Me.Controls.Add(TP_MAIN) + Me.KeyPreview = True + Me.MinimumSize = New System.Drawing.Size(600, 500) + Me.Name = "BugReporterForm" + Me.Text = "New message" + TP_MAIN.ResumeLayout(False) + TP_BUTTONS.ResumeLayout(False) + CType(Me.TXT_DESCR, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.TXT_URL_PROFILE, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.TXT_URL_POST, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.TXT_REPRODUCE, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.TXT_EXPECT, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.TXT_LOG, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.TXT_FILES, System.ComponentModel.ISupportInitialize).EndInit() + Me.ResumeLayout(False) + + End Sub + + Private WithEvents TXT_DESCR As PersonalUtilities.Forms.Controls.TextBoxExtended + Private WithEvents TXT_URL_PROFILE As PersonalUtilities.Forms.Controls.TextBoxExtended + Private WithEvents TXT_URL_POST As PersonalUtilities.Forms.Controls.TextBoxExtended + Private WithEvents TXT_REPRODUCE As PersonalUtilities.Forms.Controls.TextBoxExtended + Private WithEvents TXT_EXPECT As PersonalUtilities.Forms.Controls.TextBoxExtended + Private WithEvents TXT_LOG As PersonalUtilities.Forms.Controls.TextBoxExtended + Private WithEvents TT_MAIN As ToolTip + Private WithEvents BTT_EMAIL As Button + Private WithEvents BTT_GITHUB As Button + Private WithEvents BTT_COPY As Button + Private WithEvents BTT_CANCEL As Button + Private WithEvents BTT_ANON As Button + Private WithEvents TXT_FILES As PersonalUtilities.Forms.Controls.TextBoxExtended + End Class +End Namespace \ No newline at end of file diff --git a/SCrawler.YouTube/Editors/BugReporterForm.resx b/SCrawler.YouTube/Editors/BugReporterForm.resx new file mode 100644 index 0000000..4702b2e --- /dev/null +++ b/SCrawler.YouTube/Editors/BugReporterForm.resx @@ -0,0 +1,225 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + False + + + + + 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 + cMaRN0UdBBkAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + xAAADsQBlSsOGwAAAIZJREFUOE+1j10KwCAMgz2b755xl/IsvnaL2K20UfbDAmEako+ZROSTafjE12Go + tbbB43rK5xSAQq1VYFtmeQBoqZTSreVZvgTknM8yyyjA/qodsDF9gspD2Bj6B+DH+NqzhQQAG+POMnSX + AFuc5QFgn6ClHh5iOQVAKNixyucB8NY0vG9JOzzyhrdq5IRgAAAAAElFTkSuQmCC + + + + False + + + 17, 17 + + + Send an anonymous message. +The developer will not be able you contact you back. +You can attach files (images, photos) to your message. +If you would like a response from the developer, response, please add your contact details (email, Discord, etc.). + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6 + JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAACXBIWXMAAAsTAAALEwEAmpwYAAADmUlE + QVRIS62WWWxMURjHL220JW1HausmlFrDFKUhnUGH6bRFzJ2idImlC0Vp2mlji1A8iNhCPIjIRES8EU+W + h2oEtbSDTk3HNNM7S01VKsXjkb/vXBo3k1Ee7sMvmZzzzf//ne/+z50RAAxL1MUIG4G/YAv3HSVhF5Vw + IYNdz3LadVj9RgdTB+HQYYPHIJuE1ocSdlEJFzG+1bPRLQLinglIeCkg+XUkKvz56hnkOfQs/rmA8S9H + YEp7FDI64tAQtKhnsMapZ7zzNHsUFnbGY4VzIk70l6hnIH4wsDR7NBZ3apDrSqL5T8eFgUr1DLZ78lim + Q4N8VzK29MxEpZSBa4M16hnU+c3M9CEFpdJsVHsXos63DDcHrf9nQEXD5VymwW/5USLNwl5vJhp7dTgW + NML2pR7jbsUMS+KdMTa5Q8NQxinfBU4dRFcOyjy52OtbhwOBDTgZLKPPmTgY0ON4MBdNfSbYBupxY8Aq + G10dqMG5/nIc7ytGQ6CQRliAamkTN/g1Ai4e95Qy3iogpX0UtBRDnhRzdxq2SXOxz5eFQ70rScCEU335 + ssGxj0YS06HSm4GN3ekwdE2C1hGH1LZR0JDOJof5jwHvnIvzTa0jlooTYfktvt+fhcOBHDQFTWRgxJGP + ObAGsulZLMLWnjlY756K5c4JmNcRi6T2SGheCIihS2l5ozAo6NRhMolnUAcGV6IcwwqvFrX+JTjYuwKH + SfRAYDms/mzs9y1GFe2VSnOw1j0FejqpLN4WCX4ZufiIBwLMLxQGm12rsLQzgWKYgmLPLNTQw6ynpDSS + IBet8y+TqaVRVdFIeJrWuCcj+/0EzH43BomvIhBLI45uFiDcJ+6QwROFwa6+Amb9bGFNg6Xs9Ncd7Oy3 + Knb2eyU7/20nu9y/m136tIvEl6BC0qKoZwby3alo9JVhj7T5R7m/kJVIIityi8zyXmTiW+I10SqyIQNb + uIgNwYuuf25kFd75KPKkI49OmUWnrfYWyXv/wBb2cijhhVf6a9lGei65XclYRDd6mj0GWz2iLBJaH0rY + RSVc5Eywmhm7kuQXHX+bJlBStrh+zTi0PpSwi0q4yNFAOVvgiEcKJWUsxZn/NhT+znlofShhF5VwkRpv + MUtti4KGYjj6sYCIh5QSu4oG27stjItHU+cjeQzvkcFzFQ2KnSKLoc4FukDCXeI2GbSoaFD4ziyPxNxK + 0AUyNxOP1DOwcaG/8I+/LRB+At7psBnyDBG0AAAAAElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + xAAADsQBlSsOGwAAAIZJREFUOE+1j10KwCAMgz2b755xl/IsvnaL2K20UfbDAmEako+ZROSTafjE12Go + tbbB43rK5xSAQq1VYFtmeQBoqZTSreVZvgTknM8yyyjA/qodsDF9gspD2Bj6B+DH+NqzhQQAG+POMnSX + AFuc5QFgn6ClHh5iOQVAKNixyucB8NY0vG9JOzzyhrdq5IRgAAAAAElFTkSuQmCC + + + \ No newline at end of file diff --git a/SCrawler.YouTube/Editors/BugReporterForm.vb b/SCrawler.YouTube/Editors/BugReporterForm.vb new file mode 100644 index 0000000..be27f46 --- /dev/null +++ b/SCrawler.YouTube/Editors/BugReporterForm.vb @@ -0,0 +1,238 @@ +' Copyright (C) 2023 Andy https://github.com/AAndyProgram +' This program 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. +' +' This program is distributed in the hope that it will be useful, +' but WITHOUT ANY WARRANTY +Imports System.ComponentModel +Imports PersonalUtilities.Bots +Imports PersonalUtilities.Tools +Imports PersonalUtilities.Forms +Imports PersonalUtilities.Forms.Controls.Base +Imports PersonalUtilities.Functions.XML +Imports PersonalUtilities.Functions.Messaging +Imports BStyle = PersonalUtilities.Bots.IBot.Styles +Imports ADB = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons +Namespace Editors + Public Class BugReporterForm +#Region "Declarations" + Private Const MsgTitle As String = "Bug report" + Private ReadOnly MyView As FormView + Private ReadOnly MyFieldsChecker As FieldsChecker + Private MyProgramInfo As String + Private MyProgramInfoPopulated As Boolean = False + Private ReadOnly MyProgramText As String + Private ReadOnly MyCurrentVersion As Version + Private ReadOnly MyIsYouTube As Boolean + Private ReadOnly MyEnvirData As DownloadObjects.STDownloader.IDownloaderSettings + Private ReadOnly MyAdditText As String + Private ReadOnly MyCache As CacheKeeper +#End Region +#Region "Initializer" + Public Sub New(ByVal Cache As CacheKeeper, ByVal DesignXML As EContainer, ByVal ProgramText As String, ByVal CurrentVersion As Version, ByVal IsYouTube As Boolean, + ByVal EnvirData As DownloadObjects.STDownloader.IDownloaderSettings, Optional ByVal AdditText As String = Nothing) + InitializeComponent() + MyView = New FormView(Me, DesignXML) + MyFieldsChecker = New FieldsChecker + MyCache = Cache + MyProgramText = ProgramText + MyCurrentVersion = CurrentVersion + MyIsYouTube = IsYouTube + MyEnvirData = EnvirData + MyAdditText = AdditText + Icon = ImageRenderer.GetIcon(My.Resources.MailPic_16, EDP.ReturnValue) + End Sub +#End Region +#Region "Form handlers" + Private Async Sub BugReporterForm_Load(sender As Object, e As EventArgs) Handles Me.Load + MyView.Import() + MyView.SetFormSize() + With MyFieldsChecker + .AddControl(Of String)(TXT_DESCR, TXT_DESCR.GroupBoxText) + .EndLoaderOperations() + End With + TXT_LOG.Text = MyMainLOG + Await Task.Run(Sub() + MyProgramInfo = ProgramInfo.GetProgramText(MyProgramText.IfNullOrEmpty(IIf(MyIsYouTube, "YouTube downloader", "SCrawler")), + MyCurrentVersion, MyIsYouTube, MyEnvirData, MyAdditText) + MyProgramInfoPopulated = True + End Sub) + End Sub + Private Sub BugReporterForm_Closing(sender As Object, e As CancelEventArgs) Handles Me.Closing + MyView.Dispose() + MyFieldsChecker.Dispose() + End Sub +#End Region +#Region "Message" + Private Sub WaitLoadingDone() + While Not MyProgramInfoPopulated : Threading.Thread.Sleep(100) : End While + End Sub + Private Function CreateMessage(ByVal ForGitHub As Boolean, Optional ByVal ForDiscord As Boolean = False) As Object + Try + Dim nl$ = vbNewLine.StringDup(2) + Dim data As New List(Of BotMessage) + Dim t$ = String.Empty + Dim discordAppendNl As Action = Sub() data.Add(New BotMessage(vbNewLine)) + Dim appendNewLine As Action = Sub() If ForDiscord Then data.Add(New BotMessage(nl)) Else t &= nl + Dim ghBold As Func(Of String, Object) = Function(ByVal input As String) As Object + If ForDiscord Then + Return New BotMessage(input, BStyle.Bold) + Else + Return String.Format("{1}{0}{1}", input, IIf(ForGitHub, "**", "")) + End If + End Function + Dim appendData As Action(Of Object) = Sub(ByVal input As Object) + If ForDiscord Then + discordAppendNl.Invoke + data.Add(If(TypeOf input Is BotMessage, input, New BotMessage(input.ToString))) + Else + t.StringAppendLine(input) + End If + End Sub + + appendData(ghBold("Describe the bug")) + appendData(TXT_DESCR.Text) + If Not TXT_URL_PROFILE.IsEmptyString Then appendData($"Profile URL: {TXT_URL_PROFILE.Text}") + If Not TXT_URL_POST.IsEmptyString Then appendData($"Post URL: {TXT_URL_POST.Text}") + If Not TXT_REPRODUCE.IsEmptyString Then + appendNewLine.Invoke + appendData(ghBold("To Reproduce")) + appendData(TXT_REPRODUCE.Text) + End If + If Not TXT_EXPECT.IsEmptyString Then + appendNewLine.Invoke + appendData(ghBold("Expected behavior")) + appendData(TXT_EXPECT.Text) + End If + If Not TXT_LOG.IsEmptyString Then + appendNewLine.Invoke + If ForDiscord Then + data.Add(New BotMessage(TXT_LOG.Text, BStyle.Code)) + ElseIf ForGitHub Then + appendData($"
Log data
{TXT_LOG.Text}
") + Else + appendData(ghBold("LOG")) + appendData(TXT_LOG.Text) + End If + End If + + WaitLoadingDone() + appendNewLine.Invoke + appendData(ghBold("Release information:")) + appendData(MyProgramInfo) + + Return If(ForDiscord, data, t) + Catch ex As Exception + Return ErrorsDescriber.Execute(EDP.SendToLog + EDP.ReturnValue, ex, "[BugReporterForm.CreateMessage]") + End Try + End Function + Private Function ValidateFields(Optional ByVal SimpleMode As Boolean = False) As Boolean + If MyFieldsChecker.AllParamsOK Then + Dim opts$ = String.Empty + If TXT_URL_PROFILE.IsEmptyString Then opts.StringAppend("profile URL") + If TXT_URL_POST.IsEmptyString Then opts.StringAppend("post URL") + If TXT_LOG.Text.IsEmptyString Then opts.StringAppend("LOG") + Return opts.IsEmptyString OrElse SimpleMode OrElse + MsgBoxE({$"You haven't completed the following fields: {opts}.{vbCr}Are you sure you want to skip them?", + MsgTitle}, vbExclamation,,, {"Process", "Cancel"}) = 0 + End If + Return False + End Function +#End Region +#Region "Buttons" + Private Sub BTT_ANON_Click(sender As Object, e As EventArgs) Handles BTT_ANON.Click + Try + If ValidateFields(True) Then + Dim files As List(Of SFile) = Nothing + If TXT_FILES.Lines.ListExists Then files.ListAddList(TXT_FILES.Lines, LAP.NotContainsOnly) + Dim msgs As New List(Of BotMessage) + Dim isSimple As Boolean = False + Dim aMsg$ = String.Empty + Select Case MsgBoxE(New MMessage("Do you want to send a simple message or report a bug?", MsgTitle, + {New MsgBoxButton("Nice", "Say something nice to the developer." & vbCr & + "You can also attach cat picture :-)" & vbCr & + $"The message will be sent from the '{TXT_DESCR.GroupBoxText}' field."), + New MsgBoxButton("Simple", $"The developer will only receive the message from the '{TXT_DESCR.GroupBoxText}' field."), + New MsgBoxButton("Bug report", "The developer will receive a full bug report."), + "Cancel"}, vbQuestion) With {.ButtonsPerRow = 4, .DefaultButton = 2, .CancelButton = 3}).Index + Case 0 : msgs.Add(TXT_DESCR.Text) : aMsg = $"{vbCr}Thank you very much. I'm very grateful for your messages. You are awesome!" + Case 1 : isSimple = True : msgs.Add(TXT_DESCR.Text) + Case 2 : msgs = CreateMessage(False, True) + Case Else : Exit Sub + End Select + If msgs.ListExists Then + Dim nErr As New ErrorsDescriber(EDP.None) + Using d As New DiscordBot With {.Credential = DiscordWebHook, .User = "Anonymous user"} + d.SendMessage(New BotMessage(msgs.ToArray), EDP.ThrowException) + If isSimple Then WaitLoadingDone() : d.SendMessage(MyProgramInfo, nErr) + If files.ListExists Then files.ForEach(Sub(ff) d.SendFile(BotMessage.FromFile(ff),, nErr)) + End Using + msgs.Clear() + MsgBoxE({$"Your message has been sent to the developer.{aMsg}", MsgTitle}) + End If + End If + Catch ex As Exception + MsgBoxE({"Something is wrong. Your message has not been sent to the developer.", MsgTitle}, vbCritical) + End Try + End Sub + Private Sub BTT_EMAIL_Click(sender As Object, e As EventArgs) Handles BTT_EMAIL.Click + If ValidateFields() Then + Dim msg$ = CreateMessage(False) + Dim cmd$ = "START mailto:""andyprogram@proton.me?to=andyprogram@proton.me&subject=Application%%20bug%%20report""" + BufferText = msg + MsgBoxE({"The message has been copied to your clipboard. Click OK and paste this message into the window that opens.", MsgTitle}) + Using b As New BatchExecutor + b.FileExchanger = MyCache.NewInstance(Of BatchFileExchanger) + b.Execute(cmd) + End Using + End If + End Sub + Private Sub BTT_GITHUB_Click(sender As Object, e As EventArgs) Handles BTT_GITHUB.Click + If ValidateFields() Then + Dim msg$ = CreateMessage(True) + BufferText = msg + MsgBoxE({"The message has been copied to your clipboard. Create a new issue on GitHub and paste this message.", MsgTitle}) + Try : Process.Start("https://github.com/AAndyProgram/SCrawler/issues/new?assignees=&labels=&projects=&template=custom.md&title=") : Catch : End Try + End If + End Sub + Private Sub BTT_COPY_Click(sender As Object, e As EventArgs) Handles BTT_COPY.Click + If ValidateFields() Then + Dim msg$ = CreateMessage(MsgBoxE({"Will you post this message on GitHub?", MsgTitle}, vbQuestion + vbYesNo) = vbYes) + BufferText = msg + MsgBoxE({"The message has been copied to your clipboard.", MsgTitle}) + End If + End Sub + Private Sub BTT_CANCEL_Click(sender As Object, e As EventArgs) Handles BTT_CANCEL.Click + DialogResult = DialogResult.Cancel + Close() + End Sub +#End Region +#Region "Logs" + Private Sub TXT_LOG_ActionOnButtonClick(ByVal Sender As Object, ByVal e As ActionButtonEventArgs) Handles TXT_LOG.ActionOnButtonClick + If e.DefaultButton = ADB.Open Then + Dim files As List(Of SFile) = SFile.SelectFiles("LOGs\",, "Select log files", "Log files|*.txt|All files|*.*", EDP.ReturnValue) + If files.ListExists Then + Dim t$ + For Each file As SFile In files + t = file.GetText + If Not t.IsEmptyString Then _ + TXT_LOG.Text = $"{TXT_LOG.Text}{If(TXT_LOG.Text.IsEmptyString, String.Empty, vbNewLine.StringDup(2))}{file.Name}{vbNewLine}{t}" + Next + End If + End If + End Sub + Private Sub TXT_FILES_ActionOnButtonClick(ByVal Sender As Object, ByVal e As ActionButtonEventArgs) Handles TXT_FILES.ActionOnButtonClick + Try + If e.DefaultButton = ADB.Add Then + Dim f As List(Of SFile) = SFile.SelectFiles(,, "Select files to be sent", "Images|*.jpg;*.jpeg;*.png;*.webp;*.webm;*.gif|All files|*.*", EDP.ReturnValue) + If f.ListExists Then TXT_FILES.Lines = ListAddList(Nothing, TXT_FILES.Lines.Concat(f.Select(Function(ff) ff.ToString)), + LAP.NotContainsOnly, EDP.ReturnValue).ToArray + End If + Catch ex As Exception + End Try + End Sub +#End Region + End Class +End Namespace \ No newline at end of file diff --git a/SCrawler.YouTube/MainModShared.vb b/SCrawler.YouTube/MainModShared.vb index 8c12a36..b779e6a 100644 --- a/SCrawler.YouTube/MainModShared.vb +++ b/SCrawler.YouTube/MainModShared.vb @@ -7,6 +7,8 @@ ' This program is distributed in the hope that it will be useful, ' but WITHOUT ANY WARRANTY Imports PersonalUtilities.Tools +Imports PersonalUtilities.Tools.Web +Imports PersonalUtilities.Functions.Messaging Imports SCrawler.DownloadObjects.STDownloader Public Module MainModShared Public Property BATCH As BatchExecutor @@ -36,4 +38,98 @@ Public Module MainModShared End If End Try End Sub -End Module \ No newline at end of file + Public Sub ShowProgramInfo(ByVal ProgramText As String, ByVal CurrentVersion As Version, ByVal CheckForUpdate As Boolean, ByVal Force As Boolean, + ByVal EnvirData As IDownloaderSettings, ByVal IsYouTube As Boolean, + Optional ByRef NewVersionDestination As String = Nothing, Optional ByVal ShowNewVersionNotification As Boolean = True, + Optional ByVal AdditText As String = Nothing) + Try + Dim GoToSite As New MsgBoxButton("Go to site") With {.CallBack = Sub(r, n, b) Process.Start("https://github.com/AAndyProgram/SCrawler/releases/latest")} + If CheckForUpdate AndAlso GitHub.NewVersionExists(CurrentVersion, "AAndyProgram", "SCrawler", NewVersionDestination) Then + If ShowNewVersionNotification Or Force Then + If MsgBoxE(New MMessage($"{ProgramText}: new version detected" & vbCr & + $"Current version: {CurrentVersion}" & vbCr & + $"New version: {NewVersionDestination}", + "New version", + {"OK", GoToSite, "Disable notifications"})) = 2 Then ShowNewVersionNotification = False + End If + Else + If Force Then + Dim pVer$ = $"{ProgramText} v{CurrentVersion} ({IIf(Environment.Is64BitProcess, "x64", "x86")})" + Dim eText$ = Editors.ProgramInfo.GetProgramBaseText(ProgramText, CurrentVersion, AdditText) + Dim m As New MMessage($"{pVer}" & vbCr & + "Address: https://github.com/AAndyProgram/SCrawler" & vbCr & + "Created by Greek LGBT person Andy (Gay)", + "Program information", + {"OK", + GoToSite, + New MsgBoxButton("Environment", "Show program environment") With { + .IsDialogResultButton = False, + .CallBack = Sub(r, n, b) ShowProgramEnvir(EnvirData, IsYouTube, eText)} + }) With {.DefaultButton = 0, .CancelButton = 0} + If Not AdditText.IsEmptyString Then m.Text &= $"{vbCr}{AdditText}" + m.Show() + End If + ShowNewVersionNotification = True + End If + Catch ex As Exception + End Try + End Sub + Private Sub ShowProgramEnvir(ByVal EnvirData As IDownloaderSettings, ByVal IsYouTube As Boolean, ByVal AdditCopyText As String) + Dim m As New MMessage(Editors.ProgramInfo.GetProgramEnvirText(EnvirData, IsYouTube), "Program environment", {"OK", "Copy"}) With {.Editable = True, .DefaultButton = 0, .CancelButton = 0} + If m.Text = Editors.ProgramInfo.EnvironmentNotFound Then m.Style = vbCritical + m.Text = $"{AdditCopyText}{vbCr}{m.Text}" + If m.Show() = 1 Then BufferText = m.Text + End Sub +End Module +Namespace Editors + Public NotInheritable Class ProgramInfo + Public Const EnvironmentNotFound As String = "Environment not found" + Private Sub New() + End Sub + Public Shared Function GetProgramText(ByVal ProgramText As String, ByVal CurrentVersion As Version, ByVal IsYouTube As Boolean, + ByVal EnvirData As IDownloaderSettings, Optional ByVal AdditText As String = Nothing) As String + Return GetProgramBaseText(ProgramText, CurrentVersion, AdditText) & vbNewLine & GetProgramEnvirText(EnvirData, IsYouTube) + End Function + Public Shared Function GetProgramBaseText(ByVal ProgramText As String, ByVal CurrentVersion As Version, Optional ByVal AdditText As String = Nothing) As String + Dim pVer$ = $"{ProgramText} v{CurrentVersion} ({IIf(Environment.Is64BitProcess, "x64", "x86")})" + Dim WinVer$ = String.Empty + Try : WinVer = $"OS: {My.Computer.Info.OSFullName} ({IIf(Environment.Is64BitOperatingSystem, "x64", "x86")})" : Catch : End Try + Return pVer.StringDup(1).StringAppendLine(WinVer).StringAppendLine(AdditText) + End Function + Public Shared Function GetProgramEnvirText(ByVal EnvirData As IDownloaderSettings, ByVal IsYouTube As Boolean) As String + Try + Dim output$ = String.Empty + Using b As New BatchExecutor(True) + Dim f As SFile + Dim cmd$, ff$, vText$ + + For i% = 0 To IIf(IsYouTube, 1, 3) + cmd = "--version" + Select Case i + Case 0 : f = EnvirData.ENVIR_FFMPEG : ff = "ffmpeg" : cmd = "-version" + Case 1 : f = EnvirData.ENVIR_YTDLP : ff = "yt-dlp" + Case 2 : f = EnvirData.ENVIR_GDL : ff = "gallery-dl" + Case 3 : f = EnvirData.ENVIR_CURL : ff = "cURL" + Case Else : f = Nothing : ff = Nothing : cmd = Nothing + End Select + If Not ff.IsEmptyString Then + If f.IsEmptyString Then + output.StringAppendLine($"[{ff}] NOT FOUND") + Else + b.Reset() + b.Execute($"""{f}"" {cmd}", EDP.None) + If b.OutputData.Count > 3 Then vText = b.OutputData(3) Else vText = "undefined" + output.StringAppendLine($"{ff} version: {vText}") + End If + End If + Next + + If output.IsEmptyString Then output = EnvironmentNotFound + End Using + Return output + Catch ex As Exception + Return ErrorsDescriber.Execute(EDP.SendToLog + EDP.ReturnValue, ex, "[ProgramInfo.GetProgramEnvirText]", String.Empty) + End Try + End Function + End Class +End Namespace \ No newline at end of file diff --git a/SCrawler.YouTube/My Project/AssemblyInfo.vb b/SCrawler.YouTube/My Project/AssemblyInfo.vb index ed53f87..0e64b65 100644 --- a/SCrawler.YouTube/My Project/AssemblyInfo.vb +++ b/SCrawler.YouTube/My Project/AssemblyInfo.vb @@ -32,6 +32,6 @@ Imports System.Runtime.InteropServices ' by using the '*' as shown below: ' - - + + diff --git a/SCrawler.YouTube/My Project/Resources.Designer.vb b/SCrawler.YouTube/My Project/Resources.Designer.vb index 3b601a1..e418ab9 100644 --- a/SCrawler.YouTube/My Project/Resources.Designer.vb +++ b/SCrawler.YouTube/My Project/Resources.Designer.vb @@ -130,6 +130,16 @@ Namespace My.Resources End Get End Property + ''' + ''' Looks up a localized resource of type System.Drawing.Bitmap. + ''' + Public ReadOnly Property MailPic_16() As System.Drawing.Bitmap + Get + Dim obj As Object = ResourceManager.GetObject("MailPic_16", resourceCulture) + Return CType(obj,System.Drawing.Bitmap) + End Get + End Property + ''' ''' Looks up a localized resource of type System.Drawing.Bitmap. ''' diff --git a/SCrawler.YouTube/My Project/Resources.resx b/SCrawler.YouTube/My Project/Resources.resx index 6f8c584..16d2461 100644 --- a/SCrawler.YouTube/My Project/Resources.resx +++ b/SCrawler.YouTube/My Project/Resources.resx @@ -139,6 +139,9 @@ ..\Content\Pictures\LinkPic_32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Content\Pictures\MailPic_16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Content\Pictures\RulerPic_32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a diff --git a/SCrawler.YouTube/Objects/YouTubeMediaContainerBase.vb b/SCrawler.YouTube/Objects/YouTubeMediaContainerBase.vb index c63bed4..dfd08d8 100644 --- a/SCrawler.YouTube/Objects/YouTubeMediaContainerBase.vb +++ b/SCrawler.YouTube/Objects/YouTubeMediaContainerBase.vb @@ -65,6 +65,7 @@ Namespace API.YouTube.Objects End Set End Property Protected _MediaState As UMStates = UMStates.Unknown + Protected _MediaStateOnLoad As UMStates = UMStates.Unknown Public Property MediaState As UMStates Implements IYouTubeMediaContainer.MediaState, IUserMedia.DownloadState Get If _MediaState = UMStates.Unknown And HasElements Then @@ -591,7 +592,9 @@ Namespace API.YouTube.Objects Bitrate = 0 _MediaType = UMTypes.Undefined If SelectedVideoIndex >= 0 Then - cmd.StringAppend($"bv*[format_id={SelectedVideo.ID}]") + 'URGENT: 2023.3.4 -> 2023.7.6 + 'cmd.StringAppend($"bv*[format_id={SelectedVideo.ID}]") + cmd.StringAppend(SelectedVideo.ID) _Size = SelectedVideo.Size _MediaType = UMTypes.Video Height = SelectedVideo.Height @@ -602,7 +605,9 @@ Namespace API.YouTube.Objects End If If SelectedAudioIndex >= 0 Then Dim atCodec$ - cmd.StringAppend($"ba*[format_id={SelectedAudio.ID}]", "+") + 'URGENT: 2023.3.4 -> 2023.7.6 + 'cmd.StringAppend($"ba*[format_id={SelectedAudio.ID}]", "+") + cmd.StringAppend(SelectedAudio.ID, "+") If OutputAudioCodec.StringToLower = ac3 Then PostProcessing_AudioAC3 = True formats.StringAppend($"--audio-format {aac}", " ") @@ -633,7 +638,9 @@ Namespace API.YouTube.Objects subs = $"--write-subs --write-auto-subs --sub-format {OutputSubtitlesFormat.StringToLower} --sub-langs ""{subs}"" --convert-subs {OutputSubtitlesFormat.StringToLower}" End If If Not cmd.IsEmptyString Then - cmd = $"yt-dlp -f ""{cmd}""" + 'URGENT: 2023.3.4 -> 2023.7.6 + 'cmd = $"yt-dlp -f ""{cmd}""" + cmd = $"yt-dlp -f {cmd}" If Not MyYouTubeSettings.ReplaceModificationDate Then cmd &= " --no-mtime" cmd.StringAppend(formats, " ") cmd.StringAppend(subs, " ") @@ -1017,6 +1024,7 @@ Namespace API.YouTube.Objects Dim fc As SFile = x.Value(Name_CachePath).CSFileP If fc.Exists(SFO.Path, False) AndAlso SFile.GetFiles(fc, "*.json",, EDP.ReturnValue).Count > 0 Then Parse(Nothing, fc, IsMusic) XMLPopulateData(Me, x) + _MediaStateOnLoad = _MediaState _Exists = True If If(x(Name_CheckedElements)?.Count, 0) > 0 Then ApplyElementCheckedValue(x(Name_CheckedElements)) If ArrayMaxResolution <> -10 Then SetMaxResolution(ArrayMaxResolution) @@ -1031,6 +1039,9 @@ Namespace API.YouTube.Objects End Sub #End Region #Region "Save" + Protected Function NeedToSave() As Boolean + Return Not _MediaStateOnLoad = _MediaState And Not FileSettings.Exists + End Function Private Function GetThumbnails() As IEnumerable(Of SFile) If HasElements Then Return ListAddList(Of SFile)(New List(Of SFile)({ThumbnailFile}), @@ -1041,46 +1052,50 @@ Namespace API.YouTube.Objects End Function Public Overridable Sub Save() Implements IDownloadableMedia.Save Try - Dim fSettings As SFile = FileSettings - If fSettings.IsEmptyString Then fSettings = MyCacheSettings.NewFile - Dim f As SFile = fSettings + If NeedToSave() Then + Dim fSettings As SFile = FileSettings + If fSettings.IsEmptyString Then fSettings = MyCacheSettings.NewFile + Dim f As SFile = fSettings - If Not MediaState = UMStates.Downloaded Then - If CachePath.Exists(SFO.Path, False) AndAlso Not CachePath.Path.Contains(MyCacheSettings.RootDirectory.Path) Then - f = $"{f.PathWithSeparator}{f.Name}\" - If f.Exists(SFO.Path) Then - Dim files As List(Of SFile) = SFile.GetFiles(CachePath, "*.json", IO.SearchOption.AllDirectories, EDP.ReturnValue) - If files.ListExists Then - CachePath = f - Dim fd As SFile = f - fd.Extension = "json" - For Each f In files - fd.Name = f.Name - SFile.Move(f, fd) - Next - Else - If CachePath.Exists(SFO.Path, False) Then CachePath.Delete(SFO.Path, SFODelete.DeletePermanently, EDP.None) - CachePath = Nothing + If Not MediaState = UMStates.Downloaded Then + If CachePath.Exists(SFO.Path, False) AndAlso Not CachePath.Path.Contains(MyCacheSettings.RootDirectory.Path) Then + f = $"{f.PathWithSeparator}{f.Name}\" + If f.Exists(SFO.Path) Then + Dim files As List(Of SFile) = SFile.GetFiles(CachePath, "*.json", IO.SearchOption.AllDirectories, EDP.ReturnValue) + If files.ListExists Then + CachePath = f + Dim fd As SFile = f + fd.Extension = "json" + For Each f In files + fd.Name = f.Name + SFile.Move(f, fd) + Next + Else + If CachePath.Exists(SFO.Path, False) Then CachePath.Delete(SFO.Path, SFODelete.DeletePermanently, EDP.None) + CachePath = Nothing + End If End If End If + Else + If CachePath.Exists(SFO.Path, False) Then CachePath.Delete(SFO.Path, SFODelete.DeletePermanently, EDP.None) + CachePath = Nothing + If ThumbnailFile.IsEmptyString And HasElements Then + With ListAddList(Nothing, GetThumbnails, LAP.NotContainsOnly).ListWithRemove(Function(tf) tf.IsEmptyString) + If .ListExists Then _ThumbnailFile = .FirstOrDefault(Function(tf) tf.Exists) + End With + End If End If - Else - If CachePath.Exists(SFO.Path, False) Then CachePath.Delete(SFO.Path, SFODelete.DeletePermanently, EDP.None) - CachePath = Nothing - If ThumbnailFile.IsEmptyString And HasElements Then - With ListAddList(Nothing, GetThumbnails, LAP.NotContainsOnly).ListWithRemove(Function(tf) tf.IsEmptyString) - If .ListExists Then _ThumbnailFile = .FirstOrDefault(Function(tf) tf.Exists) - End With - End If - End If - Using x As New XmlFile With {.AllowSameNames = True} - fSettings.Extension = "xml" - FileSettings = fSettings - x.AddRange(ToEContainer.Elements) - x.Name = "MediaContainer" - x.Save(fSettings) - End Using + Using x As New XmlFile With {.AllowSameNames = True} + fSettings.Extension = "xml" + FileSettings = fSettings + If NeedToSave() Then + x.AddRange(ToEContainer.Elements) + x.Name = "MediaContainer" + x.Save(fSettings) + End If + End Using + End If Catch ex As Exception ErrorsDescriber.Execute(EDP.SendToLog, ex, $"YouTubeMediaContainerBase.Save({FileSettings})") End Try @@ -1244,25 +1259,27 @@ Namespace API.YouTube.Objects obj.Height = AConvert(Of Integer)(ee.Value("height"), NumberProvider, -1) obj.FPS = AConvert(Of Double)(ee.Value("fps"), NumberProvider, -1) obj.Bitrate = AConvert(Of Double)(ee.Value("tbr"), NumberProvider, -1) + obj.Protocol = ee.Value("protocol") + If Not obj.Protocol.IsEmptyString Then obj.Protocol = obj.Protocol.Split("_").FirstOrDefault nValue = AConvert(Of Double)(ee.Value("filesize"), NumberProvider, -1) If nValue > 0 Then obj.Size = (nValue / 1024).RoundVal(2) + If obj.Size <= 0 Then + nValue = AConvert(Of Double)(ee.Value("filesize_approx"), NumberProvider, -1) + If nValue > 0 Then obj.Size = (nValue / 1024).RoundVal(2) + End If + If obj.Size <= 0 And obj.Bitrate > 0 And Duration.TotalSeconds > 0 Then _ + obj.Size = (obj.Bitrate / 8 * Duration.TotalSeconds).RoundVal(2) + sValue = ee.Value("vcodec") If validCodecValue(sValue) Then obj.Type = UMTypes.Video obj.Codec = sValue.Split(".").First - If validCodecValue(ee.Value("acodec")) Then - obj.Type = av - If obj.Size <= 0 Then - nValue = AConvert(Of Double)(ee.Value("filesize_approx"), NumberProvider, -1) - If nValue > 0 Then obj.Size = (nValue / 1024).RoundVal(2) - End If - End If + If validCodecValue(ee.Value("acodec")) Then obj.Type = av Else sValue = ee.Value("acodec") If validCodecValue(sValue) Then obj.Type = UMTypes.Audio obj.Codec = sValue.Split(".").First - obj.Bitrate = AConvert(Of Double)(ee.Value("tbr"), NumberProvider, -1) Else Continue For End If @@ -1292,6 +1309,7 @@ Namespace API.YouTube.Objects Next End If End Sub + If MediaObjects.Count > 0 And Not MyYouTubeSettings.DefaultVideoIncludeNullSize Then MediaObjects.RemoveAll(Function(mo) mo.Size <= 0) If MediaObjects.Count > 0 Then DupRemover.Invoke(UMTypes.Audio) If MediaObjects.Count > 0 Then DupRemover.Invoke(UMTypes.Video) If MediaObjects.Count > 0 Then diff --git a/SCrawler.YouTube/SCrawler.YouTube.vbproj b/SCrawler.YouTube/SCrawler.YouTube.vbproj index abc229f..c8b3281 100644 --- a/SCrawler.YouTube/SCrawler.YouTube.vbproj +++ b/SCrawler.YouTube/SCrawler.YouTube.vbproj @@ -121,6 +121,7 @@ Form + @@ -155,6 +156,13 @@ + + BugReporterForm.vb + + + Form + + @@ -218,6 +226,9 @@ VideoOption.vb + + BugReporterForm.vb + PublicVbMyResourcesResXFileCodeGenerator Resources.Designer.vb @@ -317,5 +328,8 @@ + + + \ No newline at end of file diff --git a/SCrawler.YouTubeDownloader/MainFrame.Designer.vb b/SCrawler.YouTubeDownloader/MainFrame.Designer.vb index 7393dae..6f167d4 100644 --- a/SCrawler.YouTubeDownloader/MainFrame.Designer.vb +++ b/SCrawler.YouTubeDownloader/MainFrame.Designer.vb @@ -67,7 +67,6 @@ Partial Public Class MainFrame : Inherits SCrawler.DownloadObjects.STDownloader. Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) Me.ClientSize = New System.Drawing.Size(1008, 729) Me.Name = "MainFrame" - Me.Text = "SCrawler: Happy LGBT Pride Month! :-)" Me.TRAY_CONTEXT.ResumeLayout(False) Me.ResumeLayout(False) Me.PerformLayout() diff --git a/SCrawler.YouTubeDownloader/My Project/AssemblyInfo.vb b/SCrawler.YouTubeDownloader/My Project/AssemblyInfo.vb index 3ff188f..5c5c805 100644 --- a/SCrawler.YouTubeDownloader/My Project/AssemblyInfo.vb +++ b/SCrawler.YouTubeDownloader/My Project/AssemblyInfo.vb @@ -32,6 +32,6 @@ Imports System.Runtime.InteropServices ' by using the '*' as shown below: ' - - + + diff --git a/SCrawler/API/Base/Declarations.vb b/SCrawler/API/Base/Declarations.vb index 5a181c6..8dcd51a 100644 --- a/SCrawler/API/Base/Declarations.vb +++ b/SCrawler/API/Base/Declarations.vb @@ -6,9 +6,12 @@ ' ' This program is distributed in the hope that it will be useful, ' but WITHOUT ANY WARRANTY +Imports PersonalUtilities.Forms +Imports PersonalUtilities.Functions.RegularExpressions Namespace API.Base Friend Module Declarations Friend Const UserLabelName As String = "User" + Friend Const SearchRequestLabelName As String = "Search request" Friend ReadOnly LNC As New ListAddParams(LAP.NotContainsOnly) Friend ReadOnly UnixDate32Provider As New ADateTime(ADateTime.Formats.Unix32) Friend ReadOnly UnixDate64Provider As New ADateTime(ADateTime.Formats.Unix64) @@ -16,5 +19,58 @@ Namespace API.Base Friend ReadOnly TitleHtmlConverter As Func(Of String, String) = Function(Input) SymbolsConverter.HTML.Decode(SymbolsConverter.Convert(Input, EDP.ReturnValue), EDP.ReturnValue). StringRemoveWinForbiddenSymbols().StringTrim() + Friend ReadOnly Regex_VideosThumb_OG_IMAGE As RParams = RParams.DMS("meta.property=.og.image..content=""([^""]+)""", 1, EDP.ReturnValue) + Friend Class ConcurrentDownloadsProvider : Inherits FieldsCheckerProviderBase + Public Overrides Sub Reset() + ErrorMessage = String.Empty + MyBase.Reset() + End Sub + Public Overrides Function Convert(ByVal Value As Object, ByVal DestinationType As Type, ByVal Provider As IFormatProvider, + Optional ByVal NothingArg As Object = Nothing, Optional ByVal e As ErrorsDescriber = Nothing) As Object + Dim v% = AConvert(Of Integer)(Value, -1) + Dim defV% = Settings.MaxUsersJobsCount + If v.ValueBetween(1, defV) Then + Return Value + Else + HasError = True + If ACheck(Of Integer)(Value) Then + ErrorMessage = $"The number of concurrent downloads must be greater than 0 and equal to or less than {defV} (global limit)." + Else + TypeError = True + End If + Return Nothing + End If + End Function + End Class + Friend Class TokenRefreshIntervalProvider : Inherits FieldsCheckerProviderBase + Public Overrides Sub Reset() + ErrorMessage = String.Empty + MyBase.Reset() + End Sub + Public Overrides Function Convert(ByVal Value As Object, ByVal DestinationType As Type, ByVal Provider As IFormatProvider, + Optional ByVal NothingArg As Object = Nothing, Optional ByVal e As ErrorsDescriber = Nothing) As Object + Dim v% = AConvert(Of Integer)(Value, -1) + If v > 0 Then + Return Value + ElseIf Not ACheck(Of Integer)(Value) Then + TypeError = True + Else + ErrorMessage = $"The value of [{Name}] field must be greater than or equal to 1" + End If + HasError = True + Return Nothing + End Function + End Class + Friend ReadOnly Property CacheDeletionError(ByVal RootPath As SFile) As ErrorsDescriber + Get + Return New ErrorsDescriber(EDP.None) With {.Action = Sub(ee, eex, msg, obj) Settings.Cache.AddPath(RootPath)} + End Get + End Property + Friend Function ValidateChangeSearchOptions(ByVal User As String, ByVal NewQuery As String, ByVal CurrentQuery As String) As Boolean + Return MsgBoxE({$"Are you sure you want to change the query for user '{User}'?{vbCr}" & + "It is highly recommended to add a new user with this query instead of changing current one." & vbCr & + $"Current query: [{CurrentQuery}]{vbCr}New query: [{NewQuery}]", + "Changing a query"}, vbExclamation,,, {"Process", "Cancel"}) = 0 + End Function End Module End Namespace \ No newline at end of file diff --git a/SCrawler/API/Base/DeclaredNames.vb b/SCrawler/API/Base/DeclaredNames.vb new file mode 100644 index 0000000..2076ab4 --- /dev/null +++ b/SCrawler/API/Base/DeclaredNames.vb @@ -0,0 +1,31 @@ +' Copyright (C) 2023 Andy https://github.com/AAndyProgram +' This program 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. +' +' This program is distributed in the hope that it will be useful, +' but WITHOUT ANY WARRANTY +Namespace API.Base + Friend NotInheritable Class DeclaredNames + Friend Const Header_Authorization As String = "authorization" + Friend Const Header_CSRFToken As String = "x-csrf-token" + + Friend Const ConcurrentDownloadsCaption As String = "Concurrent downloads" + Friend Const ConcurrentDownloadsToolTip As String = "The number of concurrent downloads." + Friend Const SavedPostsUserNameCaption As String = "Saved posts user" + Friend Const SavedPostsUserNameToolTip As String = "Personal profile username" + Friend Const GifsSpecialFolderCaption As String = "GIFs special folder" + Friend Const GifsSpecialFolderToolTip As String = "Put the GIFs in a special folder" & vbCr & + "This is a folder name, not an absolute path." & vbCr & + "This folder(s) will be created relative to the user's root folder." & vbCr & + "Examples:" & vbCr & "SomeFolderName" & vbCr & "SomeFolderName\SomeFolderName2" + Friend Const GifsPrefixCaption As String = "GIF prefix" + Friend Const GifsPrefixToolTip As String = "This prefix will be added to the beginning of the filename" + Friend Const GifsDownloadCaption As String = "Download GIFs" + Friend Const UseMD5ComparisonCaption As String = "Use MD5 comparison" + Friend Const UseMD5ComparisonToolTip As String = "Each image will be checked for existence using MD5" + Private Sub New() + End Sub + End Class +End Namespace \ No newline at end of file diff --git a/SCrawler/API/Base/GDLBatch.vb b/SCrawler/API/Base/GDLBatch.vb index 4899285..9b19f4a 100644 --- a/SCrawler/API/Base/GDLBatch.vb +++ b/SCrawler/API/Base/GDLBatch.vb @@ -66,12 +66,12 @@ Namespace API.Base.GDL Return urls End Function End Module - Friend Class GDLBatch : Inherits BatchExecutor + Friend Class GDLBatch : Inherits TokenBatch Friend Property TempPostsList As List(Of String) Friend Const UrlLibStart As String = "[urllib3.connectionpool][debug]" Friend Const UrlTextStart As String = UrlLibStart & " https" - Friend Sub New() - MyBase.New(True) + Friend Sub New(ByVal _Token As Threading.CancellationToken) + MyBase.New(_Token) MainProcessName = "gallery-dl" ChangeDirectory(Settings.GalleryDLFile.File) End Sub @@ -86,8 +86,9 @@ Namespace API.Base.GDL End If End Sub Protected Overridable Async Function Validate(ByVal Value As String) As Task - If Not ProcessKilled AndAlso Await Task.Run(Of Boolean)(Function() Not Value.IsEmptyString AndAlso - TempPostsList.Exists(Function(v) Value.Contains(v))) Then Kill() + If Not ProcessKilled AndAlso Await Task.Run(Of Boolean)(Function() Token.IsCancellationRequested OrElse + (Not Value.IsEmptyString AndAlso + TempPostsList.Exists(Function(v) Value.Contains(v)))) Then Kill() End Function End Class End Namespace \ No newline at end of file diff --git a/SCrawler/API/Base/IUserData.vb b/SCrawler/API/Base/IUserData.vb new file mode 100644 index 0000000..9c01523 --- /dev/null +++ b/SCrawler/API/Base/IUserData.vb @@ -0,0 +1,88 @@ +' Copyright (C) 2023 Andy https://github.com/AAndyProgram +' This program 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. +' +' This program is distributed in the hope that it will be useful, +' but WITHOUT ANY WARRANTY +Imports System.Threading +Imports SCrawler.Plugin.Hosts +Namespace API.Base + Friend Interface IUserData : Inherits IComparable(Of UserDataBase), IComparable, IEquatable(Of UserDataBase), IIndexable, IDisposable + Event UserUpdated(ByVal User As IUserData) + Enum EraseMode As Integer + None = 0 + Data = 1 + History = 2 + End Enum + ReadOnly Property Site As String + ReadOnly Property Name As String + Property ID As String + Property Options As String + Property FriendlyName As String + Property Description As String + Property Favorite As Boolean + Property Temporary As Boolean + Property BackColor As Color? + Property ForeColor As Color? + Sub OpenSite(Optional ByVal e As ErrorsDescriber = Nothing) + Sub DownloadData(ByVal Token As CancellationToken) + Sub DownloadSingleObject(ByVal Data As YouTube.Objects.IYouTubeMediaContainer, ByVal Token As CancellationToken) + Property ParseUserMediaOnly As Boolean + ReadOnly Property IsSubscription As Boolean +#Region "Images" + Function GetPicture() As Image + Sub SetPicture(ByVal f As SFile) +#End Region +#Region "Collection support" + ReadOnly Property IsCollection As Boolean + ReadOnly Property CollectionName As String + ReadOnly Property CollectionPath As SFile + ReadOnly Property IncludedInCollection As Boolean + ReadOnly Property UserModel As UsageModel + ReadOnly Property CollectionModel As UsageModel + ReadOnly Property IsVirtual As Boolean + ReadOnly Property Labels As List(Of String) +#End Region + Property Exists As Boolean + Property Suspended As Boolean + Property ReadyForDownload As Boolean + Property HOST As SettingsHost + Property [File] As SFile + Property FileExists As Boolean + Property DownloadedPictures(ByVal Total As Boolean) As Integer + Property DownloadedVideos(ByVal Total As Boolean) As Integer + ReadOnly Property DownloadedTotal(Optional ByVal Total As Boolean = True) As Integer + ReadOnly Property DownloadedInformation As String + Property HasError As Boolean + ReadOnly Property FitToAddParams As Boolean + ReadOnly Property Key As String + Property DownloadImages As Boolean + Property DownloadVideos As Boolean + Property DownloadMissingOnly As Boolean + Property ScriptUse As Boolean + Property ScriptData As String + Function GetLVI(ByVal Destination As ListView) As ListViewItem + Function GetLVIGroup(ByVal Destination As ListView) As ListViewGroup + Sub LoadUserInformation() + Sub UpdateUserInformation() + ''' + ''' 0 - Nothing removed
+ ''' 1 - User removed
+ ''' 2 - Collection removed
+ ''' 3 - Collection split + '''
+ Function Delete(Optional ByVal Multiple As Boolean = False, Optional ByVal CollectionValue As Integer = -1) As Integer + Function EraseData(ByVal Mode As EraseMode) As Boolean + Function MoveFiles(ByVal CollectionName As String, ByVal SpecialCollectionPath As SFile) As Boolean + Function CopyFiles(ByVal DestinationPath As SFile, Optional ByVal e As ErrorsDescriber = Nothing) As Boolean + Sub OpenFolder() + Property DownloadTopCount As Integer? + Property DownloadDateFrom As Date? + Property DownloadDateTo As Date? + Sub SetEnvironment(ByRef h As SettingsHost, ByVal u As UserInfo, ByVal _LoadUserInformation As Boolean, + Optional ByVal AttachUserInfo As Boolean = True) + ReadOnly Property Disposed As Boolean + End Interface +End Namespace \ No newline at end of file diff --git a/SCrawler/API/Base/M3U8Base.vb b/SCrawler/API/Base/M3U8Base.vb index 4ebfff5..00cf96f 100644 --- a/SCrawler/API/Base/M3U8Base.vb +++ b/SCrawler/API/Base/M3U8Base.vb @@ -43,6 +43,7 @@ Namespace API.Base If ConcatFile.Name.IsEmptyString Then ConcatFile.Name = "PlayListFile" ConcatFile.Extension = "mp4" Cache = New CacheKeeper($"{DestinationFile.PathWithSeparator}_{TempCacheFolderName}\") + Cache.CacheDeleteError = CacheDeletionError(Cache) Dim cache2 As CacheKeeper = Cache.NewInstance If cache2.RootDirectory.Exists(SFO.Path) Then Dim progressExists As Boolean = Not Progress Is Nothing diff --git a/SCrawler/API/Base/SiteSettingsBase.vb b/SCrawler/API/Base/SiteSettingsBase.vb index d20b2a7..e9692a1 100644 --- a/SCrawler/API/Base/SiteSettingsBase.vb +++ b/SCrawler/API/Base/SiteSettingsBase.vb @@ -15,6 +15,13 @@ Namespace API.Base Friend ReadOnly Property Site As String Implements ISiteSettings.Site Friend Overridable ReadOnly Property Icon As Icon Implements ISiteSettings.Icon Friend Overridable ReadOnly Property Image As Image Implements ISiteSettings.Image + Protected _AllowUserAgentUpdate As Boolean = True + Protected _SubscriptionsAllowed As Boolean = False + Friend ReadOnly Property SubscriptionsAllowed As Boolean Implements ISiteSettings.SubscriptionsAllowed + Get + Return _SubscriptionsAllowed + End Get + End Property Private Property Logger As ILogProvider = LogConnector Implements ISiteSettings.Logger Friend Overridable ReadOnly Property Responser As Responser Friend ReadOnly Property CookiesNetscapeFile As SFile @@ -62,7 +69,7 @@ Namespace API.Base Friend Overridable Sub BeginInit() Implements ISiteSettings.BeginInit End Sub Friend Overridable Sub EndInit() Implements ISiteSettings.EndInit - If Not DefaultUserAgent.IsEmptyString And Not Responser Is Nothing Then Responser.UserAgent = DefaultUserAgent + If _AllowUserAgentUpdate And Not DefaultUserAgent.IsEmptyString And Not Responser Is Nothing Then Responser.UserAgent = DefaultUserAgent If CheckNetscapeCookiesOnEndInit Then Update_SaveCookiesNetscape(, True) End Sub #End Region @@ -82,6 +89,11 @@ Namespace API.Base Friend Overridable Sub Update() Implements ISiteSettings.Update If _SiteEditorFormOpened Then If UseNetscapeCookies Then Update_SaveCookiesNetscape() + If Not Responser Is Nothing Then + With Responser.Headers + If .Count > 0 Then .ListDisposeRemove(Function(h) h.Value.IsEmptyString) + End With + End If DomainsApply() End If If Not Responser Is Nothing Then Responser.SaveSettings() @@ -105,12 +117,30 @@ Namespace API.Base #End Region #End Region #Region "Before and After Download" + ''' + ''' PRE
+ ''' DownloadStarted
+ '''
+ ''' BEFORE
+ ''' Available
+ '''
+ ''' IN
+ ''' ReadyToDownload
+ ''' BeforeStartDownload
+ ''' AfterDownload
+ '''
+ ''' AFTER
+ ''' DownloadDone + '''
Friend Overridable Sub DownloadStarted(ByVal What As Download) Implements ISiteSettings.DownloadStarted End Sub + ''' Friend Overridable Sub BeforeStartDownload(ByVal User As Object, ByVal What As Download) Implements ISiteSettings.BeforeStartDownload End Sub + ''' Friend Overridable Sub AfterDownload(ByVal User As Object, ByVal What As Download) Implements ISiteSettings.AfterDownload End Sub + ''' Friend Overridable Sub DownloadDone(ByVal What As Download) Implements ISiteSettings.DownloadDone End Sub #End Region @@ -158,13 +188,13 @@ Namespace API.Base Friend Overridable Function BaseAuthExists() As Boolean Return True End Function - ''' JOB: leave or remove ''' Return BaseAuthExists() + ''' Friend Overridable Function Available(ByVal What As Download, ByVal Silent As Boolean) As Boolean Implements ISiteSettings.Available Return BaseAuthExists() End Function - ''' 'DownloadData': before processing ''' True + ''' Friend Overridable Function ReadyToDownload(ByVal What As Download) As Boolean Implements ISiteSettings.ReadyToDownload Return True End Function diff --git a/SCrawler/API/Base/Structures.vb b/SCrawler/API/Base/Structures.vb index eaf82a4..51abe75 100644 --- a/SCrawler/API/Base/Structures.vb +++ b/SCrawler/API/Base/Structures.vb @@ -12,6 +12,13 @@ Imports PersonalUtilities.Functions.XML.Base Imports PersonalUtilities.Functions.RegularExpressions Namespace API.Base Friend Module Structures + Friend Enum SiteModes As Integer + User = 0 + Search = 1 + Tags = 2 + Categories = 3 + Pornstars = 4 + End Enum Friend Structure UserMedia : Implements IUserMedia, IEquatable(Of UserMedia), IEContainerProvider #Region "XML Names" Friend Const Name_MediaNode As String = "MediaData" @@ -182,6 +189,7 @@ Namespace API.Base End With End If + 'TODO: UserMedia.SpecialFolder SpecialFolder = e.Attribute(Name_SpecialFolder).Value If Not SpecialFolder.IsEmptyString Then upath &= $"{SpecialFolder}\" If vp.HasValue AndAlso vp.Value Then upath &= $"Video\" diff --git a/SCrawler/API/Base/TokenBatch.vb b/SCrawler/API/Base/TokenBatch.vb new file mode 100644 index 0000000..924c3a0 --- /dev/null +++ b/SCrawler/API/Base/TokenBatch.vb @@ -0,0 +1,27 @@ +' Copyright (C) 2023 Andy https://github.com/AAndyProgram +' This program 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. +' +' This program is distributed in the hope that it will be useful, +' but WITHOUT ANY WARRANTY +Imports System.Threading +Imports PersonalUtilities.Tools +Namespace API.Base + Friend Class TokenBatch : Inherits BatchExecutor + Protected ReadOnly Token As CancellationToken + Friend Sub New(ByVal _Token As CancellationToken) + MyBase.New(True) + Token = _Token + End Sub + Protected Overrides Async Sub OutputDataReceiver(ByVal Sender As Object, ByVal e As DataReceivedEventArgs) + MyBase.OutputDataReceiver(Sender, e) + Await Task.Run(Sub() If Token.IsCancellationRequested Then Kill()) + End Sub + Protected Overrides Async Sub ErrorDataReceiver(ByVal Sender As Object, ByVal e As DataReceivedEventArgs) + MyBase.ErrorDataReceiver(Sender, e) + Await Task.Run(Sub() If Token.IsCancellationRequested Then Kill()) + End Sub + End Class +End Namespace \ No newline at end of file diff --git a/SCrawler/API/Base/UserDataBase.vb b/SCrawler/API/Base/UserDataBase.vb index 67019eb..1e856da 100644 --- a/SCrawler/API/Base/UserDataBase.vb +++ b/SCrawler/API/Base/UserDataBase.vb @@ -13,6 +13,7 @@ Imports System.ComponentModel Imports System.Runtime.CompilerServices Imports SCrawler.Plugin Imports SCrawler.Plugin.Hosts +Imports PersonalUtilities.Functions.Messaging Imports PersonalUtilities.Functions.XML Imports PersonalUtilities.Functions.XML.Objects Imports PersonalUtilities.Functions.RegularExpressions @@ -51,6 +52,28 @@ Namespace API.Base Friend Sub RemoveUpdateHandlers() UserUpdatedEventHandlers.Clear() End Sub + Private ReadOnly UserDownloadStateChangedEventHandlers As List(Of UserDownloadStateChangedEventHandler) + Friend Custom Event UserDownloadStateChanged As UserDownloadStateChangedEventHandler + AddHandler(ByVal h As UserDownloadStateChangedEventHandler) + If Not UserDownloadStateChangedEventHandlers.Contains(h) Then UserDownloadStateChangedEventHandlers.Add(h) + End AddHandler + RemoveHandler(ByVal h As UserDownloadStateChangedEventHandler) + UserDownloadStateChangedEventHandlers.Remove(h) + End RemoveHandler + RaiseEvent(ByVal User As IUserData, ByVal IsDownloading As Boolean) + Try + If UserDownloadStateChangedEventHandlers.Count > 0 Then + For i% = 0 To UserDownloadStateChangedEventHandlers.Count - 1 + Try : UserDownloadStateChangedEventHandlers(i).Invoke(User, IsDownloading) : Catch : End Try + Next + End If + Catch + End Try + End RaiseEvent + End Event + Private Sub OnUserDownloadStateChanged(ByVal IsDownloading As Boolean) + RaiseEvent UserDownloadStateChanged(Me, IsDownloading) + End Sub #End Region #Region "Collection buttons" Private _CollectionButtonsExists As Boolean = False @@ -58,6 +81,7 @@ Namespace API.Base Friend WithEvents BTT_CONTEXT_DOWN As ToolStripKeyMenuItem Friend WithEvents BTT_CONTEXT_EDIT As ToolStripMenuItem Friend WithEvents BTT_CONTEXT_DELETE As ToolStripMenuItem + Friend WithEvents BTT_CONTEXT_ERASE As ToolStripMenuItem Friend WithEvents BTT_CONTEXT_OPEN_PATH As ToolStripMenuItem Friend WithEvents BTT_CONTEXT_OPEN_SITE As ToolStripMenuItem Friend Sub CreateButtons() @@ -75,6 +99,7 @@ Namespace API.Base BTT_CONTEXT_DOWN = New ToolStripKeyMenuItem(tn, i) With {.Name = tnn("DOWN"), .Tag = Me} BTT_CONTEXT_EDIT = New ToolStripMenuItem(tn, i) With {.Name = tnn("EDIT"), .Tag = Me} BTT_CONTEXT_DELETE = New ToolStripMenuItem(tn, i) With {.Name = tnn("DELETE"), .Tag = Me} + BTT_CONTEXT_ERASE = New ToolStripMenuItem(tn, i) With {.Name = tnn("ERASE"), .Tag = Me} BTT_CONTEXT_OPEN_PATH = New ToolStripMenuItem(tn, i) With {.Name = tnn("PATH"), .Tag = Me} BTT_CONTEXT_OPEN_SITE = New ToolStripMenuItem(tn, i) With {.Name = tnn("SITE"), .Tag = Me} UpdateButtonsColor() @@ -91,7 +116,8 @@ Namespace API.Base cb = MyColor.EditBack cf = MyColor.EditFore End If - For Each b As ToolStripMenuItem In {BTT_CONTEXT_DOWN, BTT_CONTEXT_EDIT, BTT_CONTEXT_DELETE, BTT_CONTEXT_OPEN_PATH, BTT_CONTEXT_OPEN_SITE} + For Each b As ToolStripMenuItem In {BTT_CONTEXT_DOWN, BTT_CONTEXT_EDIT, BTT_CONTEXT_DELETE, BTT_CONTEXT_ERASE, + BTT_CONTEXT_OPEN_PATH, BTT_CONTEXT_OPEN_SITE} If Not b Is Nothing Then b.BackColor = cb : b.ForeColor = cf Next If _UserInformationLoaded Then _CollectionButtonsColorsSet = True @@ -111,12 +137,16 @@ Namespace API.Base Private Const Name_UserExists As String = "UserExists" Private Const Name_UserSuspended As String = "UserSuspended" Protected Const Name_FriendlyName As String = "FriendlyName" - Private Const Name_UserSiteName As String = "UserSiteName" + Protected Const Name_UserSiteName As String = "UserSiteName" Protected Const Name_UserID As String = "UserID" - Private Const Name_Description As String = "Description" + Protected Const Name_Options As String = "Options" + Protected Const Name_Description As String = "Description" Private Const Name_ParseUserMediaOnly As String = "ParseUserMediaOnly" + Private Const Name_IsSubscription As String = UserInfo.Name_IsSubscription Private Const Name_Temporary As String = "Temporary" Private Const Name_Favorite As String = "Favorite" + Private Const Name_BackColor As String = "BackColor" + Private Const Name_ForeColor As String = "ForeColor" Private Const Name_CreatedByChannel As String = "CreatedByChannel" Private Const Name_SeparateVideoFolder As String = "SeparateVideoFolder" @@ -142,7 +172,7 @@ Namespace API.Base #Region "Declarations" #Region "Host, Site, Progress" Friend Property HOST As SettingsHost Implements IUserData.HOST - Friend ReadOnly Property Site As String Implements IContentProvider.Site + Friend ReadOnly Property Site As String Implements IUserData.Site Get Return HOST.Name End Get @@ -160,7 +190,7 @@ Namespace API.Base End Property Protected Property ProgressPre As PreProgress = Nothing #End Region -#Region "User name, ID, exist, suspend" +#Region "User name, ID, exist, suspend, options" Friend User As UserInfo Friend Property IsSavedPosts As Boolean Implements IPluginContentProvider.IsSavedPosts Private _UserExists As Boolean = True @@ -190,14 +220,14 @@ Namespace API.Base Set(ByVal NewName As String) End Set End Property - Friend Overridable ReadOnly Property Name As String Implements IContentProvider.Name + Friend Overridable ReadOnly Property Name As String Implements IUserData.Name Get Return User.Name End Get End Property - Friend Overridable Property ID As String = String.Empty Implements IContentProvider.ID, IPluginContentProvider.ID + Friend Overridable Property ID As String = String.Empty Implements IUserData.ID, IPluginContentProvider.ID Protected _FriendlyName As String = String.Empty - Friend Overridable Property FriendlyName As String Implements IContentProvider.FriendlyName + Friend Overridable Property FriendlyName As String Implements IUserData.FriendlyName Get If Settings.UserSiteNameAsFriendly Then Return _FriendlyName.IfNullOrEmpty(UserSiteName) @@ -251,9 +281,15 @@ Namespace API.Base Return UserModel = UsageModel.Virtual End Get End Property + Friend Property Options As String = String.Empty Implements IUserData.Options, IPluginContentProvider.Options + Friend Overridable ReadOnly Property FeedIsUser As Boolean + Get + Return True + End Get + End Property #End Region #Region "Description" - Friend Property UserDescription As String = String.Empty Implements IContentProvider.Description, IPluginContentProvider.UserDescription + Friend Property UserDescription As String = String.Empty Implements IUserData.Description, IPluginContentProvider.UserDescription Protected _DescriptionEveryTime As Boolean = False Protected _DescriptionChecked As Boolean = False Protected Function UserDescriptionNeedToUpdate() As Boolean @@ -270,9 +306,9 @@ Namespace API.Base End If End Sub #End Region -#Region "Favorite, Temporary" +#Region "Favorite, Temporary, Colors" Protected _Favorite As Boolean = False - Friend Overridable Property Favorite As Boolean Implements IContentProvider.Favorite + Friend Overridable Property Favorite As Boolean Implements IUserData.Favorite Get Return _Favorite End Get @@ -282,7 +318,7 @@ Namespace API.Base End Set End Property Protected _Temporary As Boolean = False - Friend Overridable Property Temporary As Boolean Implements IContentProvider.Temporary + Friend Overridable Property Temporary As Boolean Implements IUserData.Temporary Get Return _Temporary End Get @@ -291,6 +327,24 @@ Namespace API.Base If _Temporary Then _Favorite = False End Set End Property + Private _BackColor As Color? = Nothing + Friend Overridable Property BackColor As Color? Implements IUserData.BackColor + Get + Return _BackColor + End Get + Set(ByVal b As Color?) + _BackColor = b + End Set + End Property + Private _ForeColor As Color? = Nothing + Friend Overridable Property ForeColor As Color? Implements IUserData.ForeColor + Get + Return _ForeColor + End Get + Set(ByVal f As Color?) + _ForeColor = f + End Set + End Property #End Region #Region "Channel" Friend Property CreatedByChannel As Boolean = False @@ -405,32 +459,106 @@ BlockNullPicture: Return _IsCollection End Get End Property - Friend Overridable Property CollectionName As String Implements IUserData.CollectionName + Friend Overridable ReadOnly Property CollectionName As String Implements IUserData.CollectionName Get Return User.CollectionName End Get - Set(ByVal NewCollection As String) - ChangeCollectionName(NewCollection, True) - End Set + End Property + Friend Overridable ReadOnly Property CollectionPath As SFile Implements IUserData.CollectionPath + Get + Return User.GetCollectionRootPath + End Get End Property Friend ReadOnly Property IncludedInCollection As Boolean Implements IUserData.IncludedInCollection Get Return User.IncludedInCollection End Get End Property - Friend Overridable Sub ChangeCollectionName(ByVal NewName As String, ByVal UpdateSettings As Boolean) - Dim u As UserInfo = User - u.CollectionName = NewName - u.UpdateUserFile() - User = u - If UpdateSettings Then Settings.UpdateUsersList(User) - End Sub Friend Overridable ReadOnly Property Labels As List(Of String) Implements IUserData.Labels + Protected ReadOnly Property LabelsString As String + Get + Return Labels.ListToString("|", EDP.ReturnValue) + End Get + End Property + Friend Overridable ReadOnly Property SpecialLabels As IEnumerable(Of String) + Get + Return New String() {} + End Get + End Property + ''' + ''' 0 add
+ ''' 1 replace
+ ''' 2 remove + '''
+ ''' true = w/special + Friend Shared Function UpdateLabelsKeepSpecial(ByVal Mode As Byte) As Boolean + Dim m As New MMessage("", "Update labels",, vbQuestion + vbYesNo) With {.DefaultButton = 0, .CancelButton = 0} + Select Case Mode + Case 0 : m.Text = "Do you want to exclude site-specific labels from adding?" + Case 1, 2 : m.Text = "Do you want to keep site-specific labels?" + Case Else : Return False + End Select + Return m.Show = vbYes + End Function + ''' + Friend Shared Sub UpdateLabels(ByVal User As UserDataBase, ByVal NewLabels As IEnumerable(Of String), ByVal Mode As Byte, ByVal KeepSpecial As Boolean) + Try + If User.IsCollection Then + With DirectCast(User, UserDataBind) + If .Count > 0 Then .Collections.ForEach(Sub(u) UpdateLabels(u, NewLabels, Mode, KeepSpecial)) + End With + Else + Dim nl As List(Of String) + If NewLabels.ListExists Then nl = NewLabels.ToList Else nl = New List(Of String) + + Dim lex As List(Of String) = User.SpecialLabels.ToList + If lex.ListExists Then + If User.Labels.Count = 0 Or Not KeepSpecial Then + lex.Clear() + Else + lex.ListDisposeRemove(Function(l) Not User.Labels.Contains(l)) + End If + End If + + Select Case Mode + Case 0 'add + If KeepSpecial Then nl.ListAddList(lex, LNC) + User.Labels.ListAddList(nl, LNC) + Case 1 'replace + If KeepSpecial Then + nl.ListAddList(lex, LNC) + Else + nl.ListWithRemove(lex) + End If + User.Labels.Clear() + User.Labels.ListAddList(nl, LNC) + Case 2 'remove + If KeepSpecial Then nl.ListWithRemove(lex) + User.Labels.ListWithRemove(nl) + End Select + + If User.Labels.Count > 0 Then User.Labels.Sort() + End If + Catch ex As Exception + ErrorsDescriber.Execute(EDP.SendToLog, ex, "[UserDataBase.UpdateLabels]") + End Try + End Sub #End Region #Region "Downloading" Protected _DataLoaded As Boolean = False Protected _DataParsed As Boolean = False Friend Property ParseUserMediaOnly As Boolean = False Implements IUserData.ParseUserMediaOnly, IPluginContentProvider.ParseUserMediaOnly + Friend Overridable ReadOnly Property IsSubscription As Boolean Implements IUserData.IsSubscription + Get + Return User.IsSubscription + End Get + End Property + Private Property IPluginContentProvider_IsSubscription As Boolean Implements IPluginContentProvider.IsSubscription + Get + Return IsSubscription + End Get + Set : End Set + End Property Friend Overridable Property ReadyForDownload As Boolean = True Implements IUserData.ReadyForDownload Friend Property DownloadImages As Boolean = True Implements IUserData.DownloadImages Friend Property DownloadVideos As Boolean = True Implements IUserData.DownloadVideos @@ -636,7 +764,7 @@ BlockNullPicture: Friend ReadOnly Property LVIKey As String Implements IUserData.Key Get If Not _IsCollection Then - Return $"{Site.ToString.ToUpper}_{Name}" + Return $"{IIf(IsSubscription, "SSSS", String.Empty)}{Site.ToString.ToUpper}_{Name}" Else Return $"CCCC_{CollectionName}" End If @@ -652,6 +780,8 @@ BlockNullPicture: Friend Overridable ReadOnly Property FitToAddParams As Boolean Implements IUserData.FitToAddParams Get With Settings + If IsSubscription And Not .MainFrameUsersShowSubscriptions Then Return False + If Not IsSubscription And Not .MainFrameUsersShowDefaults Then Return False If LastUpdated.HasValue And Not .ViewDateMode.Value = ShowingDates.Off Then Dim f As Date = If(.ViewDateFrom.HasValue, .ViewDateFrom.Value.Date, Date.MinValue.Date) Dim t As Date = If(.ViewDateTo.HasValue, .ViewDateTo.Value.Date, Date.MaxValue.Date) @@ -705,6 +835,7 @@ BlockNullPicture: _TempPostsList = New List(Of String) Labels = New List(Of String) UserUpdatedEventHandlers = New List(Of IUserData.UserUpdatedEventHandler) + UserDownloadStateChangedEventHandlers = New List(Of UserDownloadStateChangedEventHandler) If InvokeImageHandler Then MainFrameObj.ImageHandler(Me) End Sub Friend Sub SetEnvironment(ByRef h As SettingsHost, ByVal u As UserInfo, ByVal _LoadUserInformation As Boolean, @@ -753,12 +884,25 @@ BlockNullPicture: UserExists = x.Value(Name_UserExists).FromXML(Of Boolean)(True) UserSuspended = x.Value(Name_UserSuspended).FromXML(Of Boolean)(False) ID = x.Value(Name_UserID) + Options = x.Value(Name_Options) _FriendlyName = x.Value(Name_FriendlyName) UserSiteName = x.Value(Name_UserSiteName) UserDescription = x.Value(Name_Description) ParseUserMediaOnly = x.Value(Name_ParseUserMediaOnly).FromXML(Of Boolean)(False) Temporary = x.Value(Name_Temporary).FromXML(Of Boolean)(False) Favorite = x.Value(Name_Favorite).FromXML(Of Boolean)(False) + + If Not x.Value(Name_BackColor).IsEmptyString Then + BackColor = AConvert(Of Color)(x.Value(Name_BackColor), Nothing, EDP.ReturnValue) + Else + BackColor = Nothing + End If + If Not x.Value(Name_ForeColor).IsEmptyString Then + ForeColor = AConvert(Of Color)(x.Value(Name_ForeColor), Nothing, EDP.ReturnValue) + Else + ForeColor = Nothing + End If + CreatedByChannel = x.Value(Name_CreatedByChannel).FromXML(Of Boolean)(False) SeparateVideoFolder = AConvert(Of Boolean)(x.Value(Name_SeparateVideoFolder), AModes.Var, Nothing) ReadyForDownload = x.Value(Name_ReadyForDownload).FromXML(Of Boolean)(True) @@ -771,7 +915,6 @@ BlockNullPicture: ScriptUse = x.Value(Name_ScriptUse).FromXML(Of Boolean)(False) ScriptData = x.Value(Name_ScriptData) DataMerging = x.Value(Name_Merged).FromXML(Of Boolean)(False) - ChangeCollectionName(x.Value(Name_CollectionName), False) Labels.ListAddList(x.Value(Name_LabelsName).StringToList(Of String, List(Of String))("|", EDP.ReturnValue), LAP.NotContainsOnly, LAP.ClearBeforeAdd) LoadUserInformation_OptionalFields(x, True) End Using @@ -798,12 +941,18 @@ BlockNullPicture: x.Add(Name_UserExists, UserExists.BoolToInteger) x.Add(Name_UserSuspended, UserSuspended.BoolToInteger) x.Add(Name_UserID, ID) + x.Add(Name_Options, Options) x.Add(Name_FriendlyName, _FriendlyName) x.Add(Name_UserSiteName, UserSiteName) x.Add(Name_Description, UserDescription) x.Add(Name_ParseUserMediaOnly, ParseUserMediaOnly.BoolToInteger) + x.Add(Name_IsSubscription, IsSubscription.BoolToInteger) x.Add(Name_Temporary, Temporary.BoolToInteger) x.Add(Name_Favorite, Favorite.BoolToInteger) + + x.Add(Name_BackColor, CStr(AConvert(Of String)(BackColor, String.Empty, EDP.ReturnValue))) + x.Add(Name_ForeColor, CStr(AConvert(Of String)(ForeColor, String.Empty, EDP.ReturnValue))) + x.Add(Name_CreatedByChannel, CreatedByChannel.BoolToInteger) If SeparateVideoFolder.HasValue Then x.Add(Name_SeparateVideoFolder, SeparateVideoFolder.Value.BoolToInteger) @@ -820,7 +969,7 @@ BlockNullPicture: x.Add(Name_ScriptUse, ScriptUse.BoolToInteger) x.Add(Name_ScriptData, ScriptData) x.Add(Name_CollectionName, CollectionName) - x.Add(Name_LabelsName, Labels.ListToString("|", EDP.ReturnValue)) + x.Add(Name_LabelsName, LabelsString) x.Add(Name_Merged, DataMerging.BoolToInteger) LoadUserInformation_OptionalFields(x, False) @@ -867,7 +1016,7 @@ BlockNullPicture: #End Region #End Region #Region "Open site, folder" - Friend Overridable Sub OpenSite(Optional ByVal e As ErrorsDescriber = Nothing) Implements IContentProvider.OpenSite + Friend Overridable Sub OpenSite(Optional ByVal e As ErrorsDescriber = Nothing) Implements IUserData.OpenSite Try Dim URL$ = HOST.Source.GetUserUrl(Me) If Not URL.IsEmptyString Then Process.Start(URL) @@ -927,6 +1076,13 @@ BlockNullPicture: End Function #End Region #Region "Download functions and options" + Private __DOWNLOAD_IN_PROGRESS As Boolean = False + Friend ReadOnly Property DownloadInProgress As Boolean + Get + Return __DOWNLOAD_IN_PROGRESS + End Get + End Property + Friend PersonalToken As CancellationToken Protected Responser As Responser Protected UseResponserClient As Boolean = False Protected UseClientTokens As Boolean = False @@ -935,10 +1091,12 @@ BlockNullPicture: Private _DownloadInProgress As Boolean = False Private _EnvirUserExists As Boolean Private _EnvirUserSuspended As Boolean + Private _EnvirCreatedByChannel As Boolean Private _EnvirChanged As Boolean = False Private _PictureExists As Boolean Private _EnvirInvokeUserUpdated As Boolean = False Protected Sub EnvirDownloadSet() + PersonalToken = Nothing ProgressPre.Reset() UpdateDataFiles() _DownloadInProgress = True @@ -948,6 +1106,7 @@ BlockNullPicture: _ForceSaveUserInfo = False _EnvirUserExists = UserExists _EnvirUserSuspended = UserSuspended + _EnvirCreatedByChannel = CreatedByChannel _EnvirChanged = False _EnvirInvokeUserUpdated = False UserExists = True @@ -965,7 +1124,9 @@ BlockNullPicture: End Select End If End Sub - Friend Overridable Sub DownloadData(ByVal Token As CancellationToken) Implements IContentProvider.DownloadData + Friend Overridable Sub DownloadData(ByVal Token As CancellationToken) Implements IUserData.DownloadData + __DOWNLOAD_IN_PROGRESS = True + OnUserDownloadStateChanged(True) Dim Canceled As Boolean = False _ExternalCompatibilityToken = Token Try @@ -981,14 +1142,14 @@ BlockNullPicture: _TempMediaList.Clear() _TempPostsList.Clear() LatestData.Clear() - Dim __SaveData As Boolean = Not CreatedByChannel Or Not Settings.FromChannelDownloadTopUse + Dim __isChannelsSupport As Boolean = CreatedByChannel And Settings.FromChannelDownloadTopUse LoadContentInformation() If MyFilePosts.Exists Then _TempPostsList.ListAddList(File.ReadAllLines(MyFilePosts)) If _ContentList.Count > 0 Then _TempPostsList.ListAddList(_ContentList.Select(Function(u) u.Post.ID), LNC) - If Not DownloadMissingOnly Then + If Not DownloadMissingOnly Or IsSubscription Then ThrowAny(Token) DownloadDataF(Token) ProgressPre.Done() @@ -1010,22 +1171,37 @@ BlockNullPicture: ProgressPre.Done() ThrowAny(Token) - If UseMD5Comparison Then ValidateMD5(Token) : ProgressPre.Done() : ThrowAny(Token) + If UseMD5Comparison And Not IsSubscription Then ValidateMD5(Token) : ProgressPre.Done() : ThrowAny(Token) - If _TempPostsList.Count > 0 And Not DownloadMissingOnly And __SaveData Then + If _TempPostsList.Count > 0 And Not DownloadMissingOnly And Not __isChannelsSupport Then If _TempPostsList.Count > 1000 Then _TempPostsList.ListAddList(_TempPostsList.ListTake(-2, 1000, EDP.ReturnValue).ListReverse, LAP.ClearBeforeAdd) TextSaver.SaveTextToFile(_TempPostsList.ListToString(Environment.NewLine), MyFilePosts, True,, EDP.None) End If - _ContentNew.ListAddList(_TempMediaList, LAP.ClearBeforeAdd) - DownloadContent(Token) - ThrowIfDisposed() - If IncludeInTheFeed Then LatestData.ListAddList(_ContentNew.Where(_downContent), LNC) + _ContentNew.ListAddList(_TempMediaList, LAP.ClearBeforeAdd) + If IsSubscription Then + _ContentNew.ListAddList(_ContentNew.ListForEachCopy(Function(ByVal tmpC As UserMedia, ByVal ii As Integer) As UserMedia + tmpC.State = UStates.Downloaded + If tmpC.Type = UTypes.Picture Or tmpC.Type = UTypes.GIF Then + DownloadedPictures(False) += 1 + Else + DownloadedVideos(False) += 1 + End If + Return tmpC + End Function)) + Else + DownloadContent(Token) + ThrowIfDisposed() + End If + + CreatedByChannel = False + + If IncludeInTheFeed Or IsSubscription Then LatestData.ListAddList(_ContentNew.Where(_downContent), LNC) Dim mcb& = If(ContentMissingExists, _ContentList.LongCount(Function(c) MissingFinder(c)), 0) _ContentList.ListAddList(_ContentNew.Where(Function(c) _downContent(c) Or MissingFinder(c)), LNC) Dim mca& = If(ContentMissingExists, _ContentList.LongCount(Function(c) MissingFinder(c)), 0) If DownloadedTotal(False) > 0 Or _EnvirChanged Or Not mcb = mca Or _ForceSaveUserData Then - If __SaveData Then + If Not __isChannelsSupport Then LastUpdated = Now RunScript() DownloadedPictures(True) = SFile.GetFiles(MyFile.CutPath, "*.jpg|*.jpeg|*.png|*.gif|*.webm",, EDP.ReturnValue).Count @@ -1040,20 +1216,30 @@ BlockNullPicture: End If UpdateUserInformation() If _CollectionButtonsExists AndAlso _EnvirChanged Then UpdateButtonsColor() - ElseIf _ForceSaveUserInfo Then + ElseIf _ForceSaveUserInfo Or __isChannelsSupport Or Not _EnvirCreatedByChannel = CreatedByChannel Then UpdateUserInformation() End If ThrowIfDisposed() If Not _PictureExists Or _EnvirInvokeUserUpdated Then OnUserUpdated() - Catch oex As OperationCanceledException When Token.IsCancellationRequested + Catch oex As OperationCanceledException When Token.IsCancellationRequested Or PersonalToken.IsCancellationRequested MyMainLOG = $"{ToStringForLog()}: downloading canceled" Canceled = True + Catch exit_ex As ExitException + If Not exit_ex.Silent Then + If exit_ex.SimpleLogLine Then + MyMainLOG = $"{ToStringForLog()}: downloading canceled (exit) ({exit_ex.Message})" + Else + ErrorsDescriber.Execute(EDP.SendToLog, exit_ex, $"{ToStringForLog()}: downloading canceled (exit)") + End If + End If + Canceled = True Catch dex As ObjectDisposedException When Disposed Canceled = True Catch ex As Exception LogError(ex, "downloading data error") HasError = True Finally + If Not UserExists Then MyMainLOG = $"User '{ToStringForLog()}' not found on the site" If Not Responser Is Nothing Then Responser.Dispose() : Responser = Nothing If Not Canceled Then _DataParsed = True _ContentNew.Clear() @@ -1065,6 +1251,8 @@ BlockNullPicture: _ForceSaveUserData = False _ForceSaveUserInfo = False ProgressPre.Done() + __DOWNLOAD_IN_PROGRESS = False + OnUserDownloadStateChanged(False) End Try End Sub Protected Sub UpdateDataFiles() @@ -1087,6 +1275,13 @@ BlockNullPicture: End If End Sub Protected MustOverride Sub DownloadDataF(ByVal Token As CancellationToken) + Protected Function CreateCache() As CacheKeeper + Dim Cache As New CacheKeeper($"{DownloadContentDefault_GetRootDir()}\_tCache\") + Cache.CacheDeleteError = CacheDeletionError(Cache) + If Cache.RootDirectory.Exists(SFO.Path, False) Then Cache.RootDirectory.Delete(SFO.Path, SFODelete.DeletePermanently, EDP.ReturnValue) + Cache.Validate() + Return Cache + End Function #Region "DownloadSingleObject" Protected IsSingleObjectDownload As Boolean = False Friend Overridable Sub DownloadSingleObject(ByVal Data As YouTube.Objects.IYouTubeMediaContainer, ByVal Token As CancellationToken) Implements IUserData.DownloadSingleObject @@ -1124,7 +1319,12 @@ BlockNullPicture: DirectCast(Data, IDownloadableMedia).ThumbnailFile = _ContentNew(0).File ElseIf Settings.STDownloader_TakeSnapshot And Settings.FfmpegFile.Exists And Not Settings.STDownloader_RemoveDownloadedAutomatically Then Dim f As SFile = _ContentNew(0).File - Dim ff As SFile = f + Dim ff As SFile + If Settings.STDownloader_SnapshotsKeepWithFiles Then + ff = f + Else + ff = Settings.CacheSnapshots(Settings.STDownloader_SnapShotsCachePermamnent).NewFile + End If ff.Name &= "_thumb" ff.Extension = "jpg" f = Web.FFMPEG.TakeSnapshot(f, ff, Settings.FfmpegFile, TimeSpan.FromSeconds(1),,, EDP.LogMessageValue) @@ -1423,6 +1623,7 @@ BlockNullPicture: If __isVideo Then fileNumProvider.FileName = f.Name : f = SFile.IndexReindex(f,,, fileNumProvider) __interrupt = False + If IsSingleObjectDownload Then f.Exists(SFO.Path, True) If v.Type = UTypes.m3u8 And UseInternalM3U8Function Then f = DownloadM3U8(v.URL, v, f, Token) If f.IsEmptyString Then Throw New Exception("M3U8 download failed") @@ -1519,8 +1720,10 @@ BlockNullPicture: Protected Function ProcessException(ByVal ex As Exception, ByVal Token As CancellationToken, ByVal Message As String, Optional ByVal RDE As Boolean = True, Optional ByVal EObj As Object = Nothing, Optional ByVal ThrowEx As Boolean = True) As Integer - If Not ((TypeOf ex Is OperationCanceledException And Token.IsCancellationRequested) Or - (TypeOf ex Is ObjectDisposedException And Disposed)) Then + If TypeOf ex Is ExitException Then + Throw ex + ElseIf Not ((TypeOf ex Is OperationCanceledException And (Token.IsCancellationRequested Or PersonalToken.IsCancellationRequested)) Or + (TypeOf ex Is ObjectDisposedException And Disposed)) Then If RDE Then Dim v% = DownloadingException(ex, Message, True, EObj) If v = 0 Then LogError(ex, Message) : HasError = True @@ -1579,7 +1782,67 @@ BlockNullPicture: End Sub #End Region #End Region -#Region "Delete, Move, Merge, Copy" +#Region "Erase, Delete, Move, Merge, Copy" + Friend Shared Function GetEraseMode(ByVal Users As IEnumerable(Of IUserData)) As IUserData.EraseMode + Dim mode As IUserData.EraseMode = IUserData.EraseMode.None + If Users.ListExists Then + Dim m As New MMessage("The data of the following users will be erased:" & vbCr & vbCr, "Erase data", + {New MsgBoxButton("History and Data", "All files (images and videos) will be deleted; download history will be deleted."), + New MsgBoxButton("Data", "All files (images and videos) will be deleted; download history will not be affected."), + New MsgBoxButton("History", "All files (images and videos) will not be affected; download history will be deleted."), + New MsgBoxButton("Cancel") + }, MsgBoxStyle.Exclamation) With {.ButtonsPerRow = 4} + Dim collectionsCount% = Users.Count(Function(u) u.IsCollection) + m.Text &= Users.ListToStringE(vbNewLine, MainFrameObj.GetUserListProvider(collectionsCount > 0)) + m.Text &= vbCr.StringDup(2) + If collectionsCount > 0 Then + If collectionsCount = 1 And Users.Count = 1 Then + m.Text &= $"THIS USER IS A COLLECTION OF {DirectCast(Users(0), UserDataBind).Count} USERS. THE DATA WILL BE ERASED FOR ALL OF THEM." + Else + m.Text &= "ONE OR MORE USERS IN THE LIST IS A COLLECTION. THE DATA WILL BE ERASED FOR EACH USER OF EACH COLLECTION." + End If + m.Text &= vbCr.StringDup(2) + End If + m.Text &= "Are you sure you want to erase the data?" + Select Case m.Show + Case 0 : mode = IUserData.EraseMode.Data + IUserData.EraseMode.History + Case 1 : mode = IUserData.EraseMode.Data + Case 2 : mode = IUserData.EraseMode.History + End Select + End If + Return mode + End Function + Friend Overridable Function EraseData(ByVal Mode As IUserData.EraseMode) As Boolean Implements IUserData.EraseData + Try + Dim result As Boolean = False + If Not Mode = IUserData.EraseMode.None And Not DataMerging Then + Dim m() As IUserData.EraseMode = Mode.EnumExtract(Of IUserData.EraseMode) + If m.ListExists Then + Dim e As New ErrorsDescriber(EDP.ReturnValue) + If m.Contains(IUserData.EraseMode.History) Then + If MyFilePosts.Delete(SFO.File, SFODelete.DeleteToRecycleBin, e) Then result = True + If MyFileData.Delete(SFO.File, SFODelete.DeleteToRecycleBin, e) Then result = True + If result Then + _TempPostsList.Clear() + _TempMediaList.Clear() + _ContentNew.Clear() + _ContentList.Clear() + End If + End If + If m.Contains(IUserData.EraseMode.Data) Then + Dim files As List(Of SFile) = SFile.GetFiles(DownloadContentDefault_GetRootDir.CSFileP,, SearchOption.AllDirectories, e) + If files.ListExists Then files.RemoveAll(Function(f) Not f.Extension.IsEmptyString AndAlso (f.Extension = "txt" Or f.Extension = "xml")) + If files.ListExists Then files.ForEach(Sub(f) f.Delete(SFO.File, Settings.DeleteMode, e)) + LatestData.Clear() + result = True + End If + End If + End If + Return result + Catch ex As Exception + Return ErrorsDescriber.Execute(EDP.SendToLog + EDP.ReturnValue, ex, $"EraseData({CInt(Mode)}): {ToStringForLog()}", False) + End Try + End Function Friend Overridable Function Delete(Optional ByVal Multiple As Boolean = False, Optional ByVal CollectionValue As Integer = -1) As Integer Implements IUserData.Delete Dim f As SFile = SFile.GetPath(MyFile.CutPath.Path) If f.Exists(SFO.Path, False) AndAlso (User.Merged OrElse f.Delete(SFO.Path, Settings.DeleteMode)) Then @@ -1601,7 +1864,8 @@ BlockNullPicture: Try Dim f As SFile Dim v As Boolean = IsVirtual - If IncludedInCollection Then + + If IncludedInCollection And __CollectionName.IsEmptyString And __SpecialCollectionPath.IsEmptyString Then Settings.Users.Add(Me) Removed = False User.CollectionName = String.Empty @@ -1634,7 +1898,8 @@ BlockNullPicture: f.Delete(SFO.Path, Settings.DeleteMode, EDP.ThrowException) End If f.CutPath.Exists(SFO.Path) - Directory.Move(UserBefore.File.CutPath(, EDP.ThrowException).Path, f.Path) + SFile.Move(UserBefore.File.CutPath(, EDP.ThrowException), f, SFO.Path,, + SFODelete.EmptyOnly + SFODelete.DeleteToRecycleBin + SFODelete.OnCancelThrowException, EDP.ThrowException) If Not ScriptData.IsEmptyString AndAlso ScriptData.Contains(UserBefore.File.PathNoSeparator) Then _ ScriptData = ScriptData.Replace(UserBefore.File.PathNoSeparator, MyFile.PathNoSeparator) End If @@ -1772,10 +2037,11 @@ BlockNullPicture: ''' Friend Overridable Overloads Sub ThrowAny(ByVal Token As CancellationToken) Token.ThrowIfCancellationRequested() + PersonalToken.ThrowIfCancellationRequested() ThrowIfDisposed() End Sub #End Region - Protected Function ToStringForLog() As String + Friend Function ToStringForLog() As String Return $"{IIf(IncludedInCollection, $"[{CollectionName}] - ", String.Empty)}[{Site}] - {Name}" End Function Public Overrides Function ToString() As String @@ -1807,6 +2073,21 @@ BlockNullPicture: End Sub Private Sub BTT_CONTEXT_DELETE_Click(sender As Object, e As EventArgs) Handles BTT_CONTEXT_DELETE.Click End Sub + Private Sub BTT_CONTEXT_ERASE_Click(sender As Object, e As EventArgs) Handles BTT_CONTEXT_ERASE.Click + Const msgTitle$ = "Erase data" + Try + Dim m As IUserData.EraseMode = GetEraseMode({Me}) + If Not m = IUserData.EraseMode.None Then + If EraseData(m) Then + MsgBoxE({"User data has been erased.", msgTitle}) + Else + MsgBoxE({"User data has not been erased.", msgTitle}, vbExclamation) + End If + End If + Catch ex As Exception + ErrorsDescriber.Execute(EDP.LogMessageValue, ex, msgTitle) + End Try + End Sub Private Sub BTT_CONTEXT_OPEN_PATH_Click(sender As Object, e As EventArgs) Handles BTT_CONTEXT_OPEN_PATH.Click OpenFolder() End Sub @@ -1858,6 +2139,7 @@ BlockNullPicture: If Not BTT_CONTEXT_DOWN Is Nothing Then BTT_CONTEXT_DOWN.Dispose() If Not BTT_CONTEXT_EDIT Is Nothing Then BTT_CONTEXT_EDIT.Dispose() If Not BTT_CONTEXT_DELETE Is Nothing Then BTT_CONTEXT_DELETE.Dispose() + If Not BTT_CONTEXT_ERASE Is Nothing Then BTT_CONTEXT_ERASE.Dispose() If Not BTT_CONTEXT_OPEN_PATH Is Nothing Then BTT_CONTEXT_OPEN_PATH.Dispose() If Not BTT_CONTEXT_OPEN_SITE Is Nothing Then BTT_CONTEXT_OPEN_SITE.Dispose() UserUpdatedEventHandlers.Clear() @@ -1875,85 +2157,4 @@ BlockNullPicture: End Sub #End Region End Class -#Region "Base interfaces" - Friend Interface IContentProvider - ReadOnly Property Site As String - ReadOnly Property Name As String - Property ID As String - Property FriendlyName As String - Property Description As String - Property Favorite As Boolean - Property Temporary As Boolean - Sub OpenSite(Optional ByVal e As ErrorsDescriber = Nothing) - Sub DownloadData(ByVal Token As CancellationToken) - Sub DownloadSingleObject(ByVal Data As YouTube.Objects.IYouTubeMediaContainer, ByVal Token As CancellationToken) - End Interface - Friend Interface IUserData : Inherits IContentProvider, IComparable(Of UserDataBase), IComparable, IEquatable(Of UserDataBase), IIndexable, IDisposable - Event UserUpdated(ByVal User As IUserData) - Property ParseUserMediaOnly As Boolean -#Region "Images" - Function GetPicture() As Image - Sub SetPicture(ByVal f As SFile) -#End Region -#Region "Collection support" - ReadOnly Property IsCollection As Boolean - Property CollectionName As String - ReadOnly Property IncludedInCollection As Boolean - ReadOnly Property UserModel As UsageModel - ReadOnly Property CollectionModel As UsageModel - ReadOnly Property IsVirtual As Boolean - ReadOnly Property Labels As List(Of String) -#End Region - Property Exists As Boolean - Property Suspended As Boolean - Property ReadyForDownload As Boolean - Property HOST As SettingsHost - Property [File] As SFile - Property FileExists As Boolean - Property DownloadedPictures(ByVal Total As Boolean) As Integer - Property DownloadedVideos(ByVal Total As Boolean) As Integer - ReadOnly Property DownloadedTotal(Optional ByVal Total As Boolean = True) As Integer - ReadOnly Property DownloadedInformation As String - Property HasError As Boolean - ReadOnly Property FitToAddParams As Boolean - ReadOnly Property Key As String - Property DownloadImages As Boolean - Property DownloadVideos As Boolean - Property DownloadMissingOnly As Boolean - Property ScriptUse As Boolean - Property ScriptData As String - Function GetLVI(ByVal Destination As ListView) As ListViewItem - Function GetLVIGroup(ByVal Destination As ListView) As ListViewGroup - Sub LoadUserInformation() - Sub UpdateUserInformation() - ''' - ''' 0 - Nothing removed
- ''' 1 - User removed
- ''' 2 - Collection removed
- ''' 3 - Collection split - '''
- Function Delete(Optional ByVal Multiple As Boolean = False, Optional ByVal CollectionValue As Integer = -1) As Integer - Function MoveFiles(ByVal CollectionName As String, ByVal SpecialCollectionPath As SFile) As Boolean - Function CopyFiles(ByVal DestinationPath As SFile, Optional ByVal e As ErrorsDescriber = Nothing) As Boolean - Sub OpenFolder() - Property DownloadTopCount As Integer? - Property DownloadDateFrom As Date? - Property DownloadDateTo As Date? - Sub SetEnvironment(ByRef h As SettingsHost, ByVal u As UserInfo, ByVal _LoadUserInformation As Boolean, - Optional ByVal AttachUserInfo As Boolean = True) - ReadOnly Property Disposed As Boolean - End Interface - Friend Interface IChannelLimits - Property AutoGetLimits As Boolean - Property DownloadLimitCount As Integer? - Property DownloadLimitPost As String - Property DownloadLimitDate As Date? - Overloads Sub SetLimit(Optional ByVal Post As String = "", Optional ByVal Count As Integer? = Nothing, Optional ByVal [Date] As Date? = Nothing) - Overloads Sub SetLimit(ByVal Source As IChannelLimits) - End Interface - Friend Interface IChannelData : Inherits IContentProvider, IChannelLimits - Property SkipExistsUsers As Boolean - Property SaveToCache As Boolean - End Interface -#End Region End Namespace \ No newline at end of file diff --git a/SCrawler/API/Instagram/SiteSettings.vb b/SCrawler/API/Instagram/SiteSettings.vb index 0536199..7366845 100644 --- a/SCrawler/API/Instagram/SiteSettings.vb +++ b/SCrawler/API/Instagram/SiteSettings.vb @@ -74,9 +74,9 @@ Namespace API.Instagram Friend Const Header_IG_WWW_CLAIM As String = "x-ig-www-claim" Friend Const Header_CSRF_TOKEN As String = "x-csrftoken" Private Const Header_ASBD_ID As String = "X-Asbd-Id" - Private ReadOnly Header_Browser As New HttpHeader("Sec-Ch-Ua", """Google Chrome"";v=""113"", ""Chromium"";v=""113"", ""Not-A.Brand"";v=""24""") - Private ReadOnly Header_BrowserExt As New HttpHeader("Sec-Ch-Ua-Full-Version-List", """Google Chrome"";v=""113.0.5672.127"", ""Chromium"";v=""113.0.5672.127"", ""Not-A.Brand"";v=""24.0.0.0""") - Private ReadOnly Header_Platform As New HttpHeader("Sec-Ch-Ua-Platform-Version", """10.0.0""") + Private Const Header_Browser As String = "Sec-Ch-Ua" + Private Const Header_BrowserExt As String = "Sec-Ch-Ua-Full-Version-List" + Private Const Header_Platform As String = "Sec-Ch-Ua-Platform-Version" Friend ReadOnly Property HashTagged As PropertyValue @@ -108,9 +108,9 @@ Namespace API.Instagram Case NameOf(HH_ASBD_ID) : f = Header_ASBD_ID Case NameOf(HH_IG_WWW_CLAIM) : f = Header_IG_WWW_CLAIM Case NameOf(HH_CSRF_TOKEN) : f = Header_CSRF_TOKEN - Case NameOf(HH_BROWSER) : f = Header_Browser.Name - Case NameOf(HH_BROWSER_EXT) : f = Header_BrowserExt.Name - Case NameOf(HH_PLATFORM) : f = Header_Platform.Name + Case NameOf(HH_BROWSER) : f = Header_Browser + Case NameOf(HH_BROWSER_EXT) : f = Header_BrowserExt + Case NameOf(HH_PLATFORM) : f = Header_Platform Case NameOf(HH_USER_AGENT) : isUserAgent = True End Select If Not f.IsEmptyString Then @@ -219,20 +219,6 @@ Namespace API.Instagram Dim platform$ = String.Empty Dim useragent$ = String.Empty - Dim __UpdateHeader As Action(Of HttpHeader, Boolean) = Sub(ByVal h As HttpHeader, ByVal UpdateValueIfEmpty As Boolean) - With Responser.Headers - Dim i% = .IndexOf(h) - Dim hh As HttpHeader - If i >= 0 Then - hh = .Item(i) - If hh.Value.IsEmptyString And UpdateValueIfEmpty Then hh.Value = h.Value - Else - hh = h - End If - .Add(hh) - End With - End Sub - With Responser .Accept = "*/*" useragent = .UserAgent @@ -242,19 +228,13 @@ Namespace API.Instagram app_id = .Value(Header_IG_APP_ID) www_claim = .Value(Header_IG_WWW_CLAIM) asbd = .Value(Header_ASBD_ID) - browser = .Value(Header_Browser.Name) - browserExt = .Value(Header_BrowserExt.Name) - platform = .Value(Header_Platform.Name) + browser = .Value(Header_Browser) + browserExt = .Value(Header_BrowserExt) + platform = .Value(Header_Platform) End If .Add("Dnt", 1) - __UpdateHeader(Header_Browser, browser.IsEmptyString) - browser = .Value(Header_Browser.Name) - __UpdateHeader(Header_BrowserExt, browserExt.IsEmptyString) - browserExt = .Value(Header_BrowserExt.Name) .Add("Sec-Ch-Ua-Mobile", "?0") .Add("Sec-Ch-Ua-Platform", """Windows""") - __UpdateHeader(Header_Platform, platform.IsEmptyString) - platform = .Value(Header_Platform.Name) .Add("Sec-Fetch-Dest", "empty") .Add("Sec-Fetch-Mode", "cors") .Add("Sec-Fetch-Site", "same-origin") @@ -301,6 +281,7 @@ Namespace API.Instagram LastRequestsCountLabel = New PropertyValue(LastRequestsCountLabelStr.Invoke(LastRequestsCount.Value)) AddHandler LastRequestsCount.ValueChanged, Sub(sender, e) LastRequestsCountLabel.Value = LastRequestsCountLabelStr.Invoke(DirectCast(sender, XMLValue(Of Integer)).ValueF.Value) + _AllowUserAgentUpdate = False UrlPatternUser = "https://www.instagram.com/{0}/" UserRegex = RParams.DMS("[htps:/]{7,8}.*?instagram.com/([^/]+)", 1) ImageVideoContains = "instagram.com" diff --git a/SCrawler/API/Instagram/UserData.vb b/SCrawler/API/Instagram/UserData.vb index 35a38e8..d6dab24 100644 --- a/SCrawler/API/Instagram/UserData.vb +++ b/SCrawler/API/Instagram/UserData.vb @@ -26,6 +26,7 @@ Namespace API.Instagram Private Const Name_GetStories As String = "GetStories" Private Const Name_GetTagged As String = "GetTaggedData" Private Const Name_TaggedChecked As String = "TaggedChecked" + Private Const Name_NameTrue As String = "NameTrue" #End Region #Region "Declarations" Private Structure PostKV : Implements IEContainerProvider @@ -75,6 +76,13 @@ Namespace API.Instagram Friend Property GetTimeline As Boolean = True Friend Property GetStories As Boolean Friend Property GetTaggedData As Boolean + Private _NameTrue As String = String.Empty + Private ReadOnly Property NameTrue As String + Get + Return _NameTrue.IfNullOrEmpty(Name) + End Get + End Property + Private UserNameRequested As Boolean = False #End Region #Region "Exchange options" Friend Overrides Function ExchangeOptionsGet() As Object @@ -96,21 +104,25 @@ Namespace API.Instagram PostsToReparse = New List(Of PostKV) End Sub Protected Overrides Sub LoadUserInformation_OptionalFields(ByRef Container As XmlFile, ByVal Loading As Boolean) - If Loading Then - LastCursor = Container.Value(Name_LastCursor) - FirstLoadingDone = Container.Value(Name_FirstLoadingDone).FromXML(Of Boolean)(False) - GetTimeline = Container.Value(Name_GetTimeline).FromXML(Of Boolean)(CBool(MySiteSettings.GetTimeline.Value)) - GetStories = Container.Value(Name_GetStories).FromXML(Of Boolean)(CBool(MySiteSettings.GetStories.Value)) - GetTaggedData = Container.Value(Name_GetTagged).FromXML(Of Boolean)(CBool(MySiteSettings.GetTagged.Value)) - TaggedChecked = Container.Value(Name_TaggedChecked).FromXML(Of Boolean)(False) - Else - Container.Add(Name_LastCursor, LastCursor) - Container.Add(Name_FirstLoadingDone, FirstLoadingDone.BoolToInteger) - Container.Add(Name_GetTimeline, GetTimeline.BoolToInteger) - Container.Add(Name_GetStories, GetStories.BoolToInteger) - Container.Add(Name_GetTagged, GetTaggedData.BoolToInteger) - Container.Add(Name_TaggedChecked, TaggedChecked.BoolToInteger) - End If + With Container + If Loading Then + LastCursor = .Value(Name_LastCursor) + FirstLoadingDone = .Value(Name_FirstLoadingDone).FromXML(Of Boolean)(False) + GetTimeline = .Value(Name_GetTimeline).FromXML(Of Boolean)(CBool(MySiteSettings.GetTimeline.Value)) + GetStories = .Value(Name_GetStories).FromXML(Of Boolean)(CBool(MySiteSettings.GetStories.Value)) + GetTaggedData = .Value(Name_GetTagged).FromXML(Of Boolean)(CBool(MySiteSettings.GetTagged.Value)) + TaggedChecked = .Value(Name_TaggedChecked).FromXML(Of Boolean)(False) + _NameTrue = .Value(Name_NameTrue) + Else + .Add(Name_LastCursor, LastCursor) + .Add(Name_FirstLoadingDone, FirstLoadingDone.BoolToInteger) + .Add(Name_GetTimeline, GetTimeline.BoolToInteger) + .Add(Name_GetStories, GetStories.BoolToInteger) + .Add(Name_GetTagged, GetTaggedData.BoolToInteger) + .Add(Name_TaggedChecked, TaggedChecked.BoolToInteger) + .Add(Name_NameTrue, _NameTrue) + End If + End With End Sub #End Region #Region "Download data" @@ -195,6 +207,7 @@ Namespace API.Instagram End Function Private _DownloadingInProgress As Boolean = False Protected Overrides Sub DownloadDataF(ByVal Token As CancellationToken) + UserNameRequested = False Dim s As Sections = Sections.Timeline Dim errorFound As Boolean = False Try @@ -413,13 +426,13 @@ Namespace API.Instagram 'Check environment If Not IsSavedPosts Then If ID.IsEmptyString Then GetUserId() - If ID.IsEmptyString Then Throw New ArgumentException("User ID is not detected", "ID") + If ID.IsEmptyString Then Throw New Plugin.ExitException("can't get user ID") End If 'Create query Select Case Section Case Sections.Timeline - URL = $"https://www.instagram.com/api/v1/feed/user/{Name}/username/?count=50" & + URL = $"https://www.instagram.com/api/v1/feed/user/{NameTrue}/username/?count=50" & If(Cursor.IsEmptyString, String.Empty, $"&max_id={Cursor}") ENode = Nothing Case Sections.SavedPosts @@ -766,16 +779,18 @@ Namespace API.Instagram End Try End Sub #End Region -#Region "GetUserId" +#Region "GetUserId, GetUserName" Private Sub GetUserId() Dim __idFound As Boolean = False Try - Dim r$ = Responser.GetResponse($"https://i.instagram.com/api/v1/users/web_profile_info/?username={Name}",, EDP.ThrowException) + RequestsCount += 1 + Dim r$ = Responser.GetResponse($"https://i.instagram.com/api/v1/users/web_profile_info/?username={NameTrue}",, EDP.ThrowException) If Not r.IsEmptyString Then Using j As EContainer = JsonDocument.Parse(r) If Not j Is Nothing AndAlso j.Contains({"data", "user"}) Then With j({"data", "user"}) ID = .Value("id") + _ForceSaveUserData = True __idFound = True UserSiteNameUpdate(.Value("full_name")) Dim descr$ = .Value("biography") @@ -800,11 +815,43 @@ Namespace API.Instagram If Responser.StatusCode = HttpStatusCode.NotFound Or Responser.StatusCode = HttpStatusCode.BadRequest Then Throw ex Else - LogError(ex, "get Instagram user id") + LogError(ex, "get Instagram user ID") End If End If End Try End Sub + Private Function GetUserNameById() As Boolean + UserNameRequested = True + Try + If Not ID.IsEmptyString Then + RequestsCount += 1 + Dim r$ = Responser.GetResponse($"https://i.instagram.com/api/v1/users/{ID}/info/",, EDP.ReturnValue) + If Not r.IsEmptyString Then + Using j As EContainer = JsonDocument.Parse(r, EDP.ReturnValue) + If j.ListExists Then + Dim newName$ = j.Value({"user"}, "username") + If Not newName.IsEmptyString Then + Dim oldName$ = NameTrue + If Not newName = oldName Then + MyMainLOG = $"{ToStringForLog()}: username changed from '{oldName}' to '{newName}'" + _NameTrue = newName + Dim descr$ = $"Username changed from '{oldName}' to '{newName}' ({Now.ToStringDate(ADateTime.Formats.BaseDateTime)})!" + descr.StringAppendLine(UserDescription) + UserDescription = descr + _ForceSaveUserData = True + End If + Return True + End If + End If + End Using + End If + End If + Return False + Catch ex As Exception + LogError(ex, "get Instagram user name by ID") + Return False + End Try + End Function #End Region #Region "Pinned stories" Private Sub GetStoriesData(ByRef StoriesList As List(Of String), ByVal Token As CancellationToken) @@ -887,7 +934,7 @@ Namespace API.Instagram Protected Overrides Function DownloadingException(ByVal ex As Exception, ByVal Message As String, Optional ByVal FromPE As Boolean = False, Optional ByVal s As Object = Nothing) As Integer If Responser.StatusCode = HttpStatusCode.NotFound Then - UserExists = False + If Not UserNameRequested AndAlso GetUserNameById() Then Return 1 Else UserExists = False ElseIf Responser.StatusCode = HttpStatusCode.BadRequest Then HasError = True MyMainLOG = $"Instagram credentials have expired [{CInt(Responser.StatusCode)}]: {ToStringForLog()} [{s}]" @@ -906,7 +953,7 @@ Namespace API.Instagram ElseIf Responser.StatusCode = 560 Then MySiteSettings.SkipUntilNextSession = True Else - MyMainLOG = $"Instagram hash requested [{CInt(Responser.StatusCode)}]: {ToString()} [{s}]" + MyMainLOG = $"Something is wrong. Your credentials may have expired [{CInt(Responser.StatusCode)}]: {ToString()} [{s}]" DisableSection(s) If Not FromPE Then LogError(ex, Message) : HasError = True Return 0 diff --git a/SCrawler/API/Mastodon/EditorExchangeOptions.vb b/SCrawler/API/Mastodon/EditorExchangeOptions.vb index d0c24c9..6e1576f 100644 --- a/SCrawler/API/Mastodon/EditorExchangeOptions.vb +++ b/SCrawler/API/Mastodon/EditorExchangeOptions.vb @@ -9,9 +9,11 @@ Imports SCrawler.Plugin.Attributes Namespace API.Mastodon Friend Class EditorExchangeOptions : Inherits Twitter.EditorExchangeOptions + Friend Overrides Property MediaModelAllowNonUserTweets As Boolean Friend Overrides Property DownloadModelMedia As Boolean Friend Overrides Property DownloadModelProfile As Boolean Friend Overrides Property DownloadModelSearch As Boolean + Friend Overrides Property DownloadModelForceApply As Boolean Friend Sub New(ByVal s As SiteSettings) MyBase.New(s) End Sub diff --git a/SCrawler/API/Mastodon/SiteSettings.vb b/SCrawler/API/Mastodon/SiteSettings.vb index 1761c34..9026c92 100644 --- a/SCrawler/API/Mastodon/SiteSettings.vb +++ b/SCrawler/API/Mastodon/SiteSettings.vb @@ -13,7 +13,7 @@ Imports PersonalUtilities.Functions.XML Imports PersonalUtilities.Functions.RegularExpressions Imports PersonalUtilities.Tools.Web.Clients Imports PersonalUtilities.Tools.Web.Documents.JSON -Imports TS = SCrawler.API.Twitter.SiteSettings +Imports DN = SCrawler.API.Base.DeclaredNames Namespace API.Mastodon Friend Class SiteSettings : Inherits SiteSettingsBase @@ -46,8 +46,8 @@ Namespace API.Mastodon If Not PropName.IsEmptyString Then Dim f$ = String.Empty Select Case PropName - Case NameOf(Auth) : f = TS.Header_Authorization - Case NameOf(Token) : f = TS.Header_Token + Case NameOf(Auth) : f = DN.Header_Authorization + Case NameOf(Token) : f = DN.Header_CSRFToken End Select If Not f.IsEmptyString Then Responser.Headers.Remove(f) @@ -58,15 +58,15 @@ Namespace API.Mastodon End Sub #End Region #Region "Other properties" - + Friend ReadOnly Property GifsDownload As PropertyValue - + Friend ReadOnly Property GifsSpecialFolder As PropertyValue - + Friend ReadOnly Property GifsPrefix As PropertyValue Private ReadOnly Property GifStringChecker As IFormatProvider - + Friend ReadOnly Property UseMD5Comparison As PropertyValue @@ -82,13 +82,13 @@ Namespace API.Mastodon Domains.DestinationProp = SiteDomains DomainsLastUpdateDate = New PropertyValue(Now.AddYears(-1)) - Auth = New PropertyValue(Responser.Headers.Value(TS.Header_Authorization), GetType(String), Sub(v) ChangeResponserFields(NameOf(Auth), v)) - Token = New PropertyValue(Responser.Headers.Value(TS.Header_Token), GetType(String), Sub(v) ChangeResponserFields(NameOf(Token), v)) + Auth = New PropertyValue(Responser.Headers.Value(DN.Header_Authorization), GetType(String), Sub(v) ChangeResponserFields(NameOf(Auth), v)) + Token = New PropertyValue(Responser.Headers.Value(DN.Header_CSRFToken), GetType(String), Sub(v) ChangeResponserFields(NameOf(Token), v)) GifsDownload = New PropertyValue(True) GifsSpecialFolder = New PropertyValue(String.Empty, GetType(String)) GifsPrefix = New PropertyValue("GIF_") - GifStringChecker = New TS.GifStringProvider + GifStringChecker = New API.Twitter.SiteSettings.GifStringProvider UseMD5Comparison = New PropertyValue(False) MyDomain = New PropertyValue(String.Empty, GetType(String)) UserRelatedToMyDomain = New PropertyValue(False) diff --git a/SCrawler/API/Mastodon/UserData.vb b/SCrawler/API/Mastodon/UserData.vb index b9456ee..05c55b7 100644 --- a/SCrawler/API/Mastodon/UserData.vb +++ b/SCrawler/API/Mastodon/UserData.vb @@ -55,8 +55,8 @@ Namespace API.Mastodon If setDef Then MyCredentials = New Credentials With {.Domain = UserDomain, .Bearer = MySettings.Auth.Value, .Csrf = MySettings.Token.Value} End With With MyCredentials - Responser.Headers.Add(Twitter.SiteSettings.Header_Authorization, .Bearer) - Responser.Headers.Add(Twitter.SiteSettings.Header_Token, .Csrf) + Responser.Headers.Add(DeclaredNames.Header_Authorization, .Bearer) + Responser.Headers.Add(DeclaredNames.Header_CSRFToken, .Csrf) End With End Sub #End Region @@ -274,7 +274,7 @@ Namespace API.Mastodon ProcessException(ex, Token, $"ReparseMissing error [{URL}]") Finally If rList.Count > 0 Then - For i% = rList.Count - 1 To 0 Step -1 : _ContentList.RemoveAt(i) : Next + For i% = rList.Count - 1 To 0 Step -1 : _ContentList.RemoveAt(rList(i)) : Next rList.Clear() End If End Try diff --git a/SCrawler/API/OnlyFans/SiteSettings.vb b/SCrawler/API/OnlyFans/SiteSettings.vb index edf0232..90f036b 100644 --- a/SCrawler/API/OnlyFans/SiteSettings.vb +++ b/SCrawler/API/OnlyFans/SiteSettings.vb @@ -14,7 +14,7 @@ Imports PersonalUtilities.Tools.Web.Clients Imports PersonalUtilities.Tools.Web.Cookies Imports PersonalUtilities.Functions.RegularExpressions Namespace API.OnlyFans - + Friend Class SiteSettings : Inherits SiteSettingsBase #Region "Icon" Friend Overrides ReadOnly Property Icon As Icon @@ -29,6 +29,13 @@ Namespace API.OnlyFans End Property #End Region #Region "Declarations" +#Region "Options" + + Friend Property DownloadHighlights As PropertyValue + + Friend Property DownloadChatMedia As PropertyValue +#End Region +#Region "Headers" Private Const HeaderBrowser As String = "sec-ch-ua" Private Const HeaderUserID As String = "User-Id" Private Const HeaderXBC As String = "X-Bc" @@ -39,7 +46,7 @@ Namespace API.OnlyFans Private ReadOnly Property HH_X_BC As PropertyValue Private ReadOnly Property HH_APP_TOKEN As PropertyValue - + Private ReadOnly Property HH_BROWSER As PropertyValue Private ReadOnly Property UserAgent As PropertyValue @@ -59,6 +66,8 @@ Namespace API.OnlyFans Responser.UserAgent = Value End If End Sub +#End Region +#Region "Rules" Private ReadOnly Property LastDateUpdated_XML As PropertyValue Friend Property LastDateUpdated As Date Get @@ -81,6 +90,7 @@ Namespace API.OnlyFans "Change this value only if you know what you are doing."), PXML> Friend ReadOnly Property DynamicRules As PropertyValue #End Region +#End Region #Region "Initializer" Friend Sub New() MyBase.New("OnlyFans", ".onlyfans.com") @@ -110,13 +120,16 @@ Namespace API.OnlyFans UserAgent = New PropertyValue(IIf(.UserAgentExists, .UserAgent, String.Empty), GetType(String), Sub(v) UpdateHeader(NameOf(UserAgent), v)) End With + DownloadHighlights = New PropertyValue(True) + DownloadChatMedia = New PropertyValue(True) + LastDateUpdated_XML = New PropertyValue(Now.AddYears(-1), GetType(Date)) UseOldAuthRules = New PropertyValue(False) DynamicRulesUpdateInterval = New PropertyValue(60 * 24) DynamicRulesUpdateIntervalProvider = New FieldsCheckerProviderSimple(Function(v) IIf(AConvert(Of Integer)(v, 0) > 0, v, Nothing), "The value of [{0}] field must be greater than 0") DynamicRules = New PropertyValue(String.Empty, GetType(String)) - UserRegex = RParams.DMS("onlyfans.com/(\w+)", 1, EDP.ReturnValue) + UserRegex = RParams.DMS("onlyfans.com/([\w\._]+)", 1, EDP.ReturnValue) UrlPatternUser = "https://onlyfans.com/{0}" ImageVideoContains = "onlyfans.com" End Sub @@ -134,7 +147,7 @@ Namespace API.OnlyFans #End Region #Region "Download" Friend Overrides Function BaseAuthExists() As Boolean - Return Responser.CookiesExists And {HH_USER_ID, HH_X_BC, HH_APP_TOKEN, HH_BROWSER, UserAgent}.All(Function(v) ACheck(v.Value)) + Return Responser.CookiesExists And {HH_USER_ID, HH_X_BC, HH_APP_TOKEN, UserAgent}.All(Function(v) ACheck(v.Value)) End Function Friend Overrides Function ReadyToDownload(ByVal What As ISiteSettings.Download) As Boolean Return BaseAuthExists() And Not SessionAborted @@ -149,17 +162,36 @@ Namespace API.OnlyFans If Responser.Cookies.Changed Then Responser.SaveCookies() : Responser.Cookies.Changed = False End Sub #End Region -#Region "GetUserUrl, GetUserPostUrl" +#Region "GetUserUrl, GetUserPostUrl, UserOptions" Friend Overrides Function GetUserUrl(ByVal User As IPluginContentProvider) As String Return String.Format(UrlPatternUser, If(User.ID.IsEmptyString, User.Name, $"u{User.ID}")) End Function Friend Overrides Function GetUserPostUrl(ByVal User As UserDataBase, ByVal Media As UserMedia) As String If Not Media.Post.ID.IsEmptyString Then - Return String.Format("https://onlyfans.com/{0}/{1}", Media.Post.ID, If(User.ID.IsEmptyString, User.Name, $"u{User.ID}")) + Dim post$() = Media.Post.ID.Split("_") + Dim p$ = String.Empty + If post.ListExists Then + If post(0) = UserData.A_MESSAGE Then + If Not User.ID.IsEmptyString Then Return $"https://onlyfans.com/my/chats/chat/{User.ID}/" + ElseIf Not post(0) = UserData.A_HIGHLIGHT Then + p = post(0) + End If + End If + If p.IsEmptyString Then + Return GetUserUrl(User) + Else + Return String.Format("https://onlyfans.com/{0}/{1}", p, If(User.ID.IsEmptyString, User.Name, $"u{User.ID}")) + End If Else Return String.Empty End If End Function + Friend Overrides Sub UserOptions(ByRef Options As Object, ByVal OpenForm As Boolean) + If Options Is Nothing OrElse Not TypeOf Options Is UserExchangeOptions Then Options = New UserExchangeOptions(Me) + If OpenForm Then + Using f As New InternalSettingsForm(Options, Me, False) : f.ShowDialog() : End Using + End If + End Sub #End Region End Class End Namespace \ No newline at end of file diff --git a/SCrawler/API/OnlyFans/UserData.vb b/SCrawler/API/OnlyFans/UserData.vb index e5c6dc8..5e7dad5 100644 --- a/SCrawler/API/OnlyFans/UserData.vb +++ b/SCrawler/API/OnlyFans/UserData.vb @@ -19,26 +19,68 @@ Imports UTypes = SCrawler.API.Base.UserMedia.Types Imports UStates = SCrawler.API.Base.UserMedia.States Namespace API.OnlyFans Friend Class UserData : Inherits UserDataBase +#Region "XML names" + Private Const Name_MediaDownloadHighlights As String = "DownloadHighlights" + Private Const Name_MediaDownloadChatMedia As String = "DownloadChatMedia" +#End Region #Region "Declarations" Friend Property CCookie As CookieKeeper = Nothing Private Const HeaderSign As String = "Sign" Private Const HeaderTime As String = "Time" + Private ReadOnly HighlightsList As List(Of String) + Friend Property MediaDownloadHighlights As Boolean = True + Friend Property MediaDownloadChatMedia As Boolean = True Private ReadOnly Property MySettings As SiteSettings Get Return HOST.Source End Get End Property +#End Region +#Region "Load" Protected Overrides Sub LoadUserInformation_OptionalFields(ByRef Container As XmlFile, ByVal Loading As Boolean) + With Container + If Loading Then + MediaDownloadHighlights = .Value(Name_MediaDownloadHighlights).FromXML(Of Boolean)(True) + MediaDownloadChatMedia = .Value(Name_MediaDownloadChatMedia).FromXML(Of Boolean)(True) + Else + .Add(Name_MediaDownloadHighlights, MediaDownloadHighlights.BoolToInteger) + .Add(Name_MediaDownloadChatMedia, MediaDownloadChatMedia.BoolToInteger) + End If + End With + End Sub +#End Region +#Region "Exchange" + Friend Overrides Function ExchangeOptionsGet() As Object + Return New UserExchangeOptions(Me) + End Function + Friend Overrides Sub ExchangeOptionsSet(ByVal Obj As Object) + If Not Obj Is Nothing AndAlso TypeOf Obj Is UserExchangeOptions Then + With DirectCast(Obj, UserExchangeOptions) + MediaDownloadHighlights = .DownloadHighlights + MediaDownloadChatMedia = .DownloadChatMedia + End With + End If + End Sub +#End Region +#Region "Initializer" + Friend Sub New() + HighlightsList = New List(Of String) End Sub #End Region #Region "Download functions" Protected Overrides Sub DownloadDataF(ByVal Token As CancellationToken) - If Not CCookie Is Nothing Then CCookie.Dispose() - CCookie = Responser.Cookies.Copy - Responser.Cookies.Clear() - AddHandler Responser.ResponseReceived, AddressOf OnResponseReceived - UpdateCookieHeader() - DownloadData(IIf(IsSavedPosts, 0, String.Empty), Token) + If Not MySettings.SessionAborted Then + If Not CCookie Is Nothing Then CCookie.Dispose() + CCookie = Responser.Cookies.Copy + Responser.Cookies.Clear() + AddHandler Responser.ResponseReceived, AddressOf OnResponseReceived + UpdateCookieHeader() + DownloadTimeline(IIf(IsSavedPosts, 0, String.Empty), Token) + If Not IsSavedPosts Then + If MediaDownloadHighlights Then DownloadHighlights(Token) + If MediaDownloadChatMedia Then DownloadChatMedia(0, Token) + End If + End If End Sub Private Sub OnResponseReceived(ByVal Sender As Object, ByVal e As WebDataResponse) If e.CookiesExists Then @@ -49,9 +91,11 @@ Namespace API.OnlyFans Private Sub UpdateCookieHeader() Responser.Headers.Add("Cookie", CCookie.ToString(False)) End Sub + Friend Const A_HIGHLIGHT As String = "HL" + Friend Const A_MESSAGE As String = "MSG" Private Const BaseUrlPattern As String = "https://onlyfans.com{0}" - Private Overloads Sub DownloadData(ByVal Cursor As String, ByVal Token As CancellationToken) - +#Region "Download timeline" + Private Overloads Sub DownloadTimeline(ByVal Cursor As String, ByVal Token As CancellationToken) Dim url$ = String.Empty Dim _complete As Boolean = True Do @@ -122,15 +166,148 @@ Namespace API.OnlyFans If hasMore Then If IsSavedPosts Then tmpCursor = CInt(Cursor.IfNullOrEmpty(0)) + 10 - DownloadData(tmpCursor, Token) + DownloadTimeline(tmpCursor, Token) End If Catch ex As Exception - If ProcessException(ex, Token, $"data downloading error [{url}]") = 2 Then _complete = False + _complete = Not ProcessException(ex, Token, $"data downloading error [{url}]") = 2 End Try Loop While Not _complete End Sub +#End Region +#Region "Download highlights" + Private Overloads Sub DownloadHighlights(ByVal Token As CancellationToken) + HighlightsList.Clear() + DownloadHighlights(0, Token) + If HighlightsList.Count > 0 Then HighlightsList.ForEach(Sub(hl) DownloadHighlightMedia(hl, Token)) + End Sub + Private Overloads Sub DownloadHighlights(ByVal Cursor As Integer, ByVal Token As CancellationToken) + Dim url$ = String.Empty + Dim _complete As Boolean = True + Do + Try + Dim hasMore As Boolean = False + Dim path$ = $"/api2/v2/users/{ID}/stories/highlights?limit=5&offset={Cursor}" + If UpdateSignature(path) Then + url = String.Format(BaseUrlPattern, path) + ThrowAny(Token) + Dim r$ = Responser.GetResponse(url) + If Not r.IsEmptyString Then + Using j As EContainer = JsonDocument.Parse(r) + If j.ListExists Then + hasMore = j.Value("hasMore").FromXML(Of Boolean)(False) + With j("list") + If .ListExists Then + HighlightsList.AddRange(.Select(Function(e) e.Value("id"))) + Else + hasMore = False + End If + End With + End If + End Using + End If + End If + If hasMore Then DownloadHighlights(Cursor + 5, Token) + Catch ex As Exception + _complete = Not ProcessException(ex, Token, $"highlights downloading error [{url}]") = 2 + End Try + Loop While Not _complete + End Sub + Private Sub DownloadHighlightMedia(ByVal HLID As String, ByVal Token As CancellationToken) + Dim url$ = String.Empty + Dim _complete As Boolean = True + Do + Try + Dim specFolder$, postID$, postDate$ + Dim media As List(Of UserMedia) + Dim result As Boolean + Dim path$ = $"/api2/v2/stories/highlights/{HLID}" + If UpdateSignature(path) Then + url = String.Format(BaseUrlPattern, path) + ThrowAny(Token) + Dim r$ = Responser.GetResponse(url) + If Not r.IsEmptyString Then + Using j As EContainer = JsonDocument.Parse(r) + If j.ListExists Then + specFolder = j.Value("title").StringRemoveWinForbiddenSymbols.IfNullOrEmpty(HLID) + specFolder &= "*" + With j("stories") + If .ListExists Then + ProgressPre.ChangeMax(.Count) + For Each m As EContainer In .Self + ProgressPre.Perform() + postID = $"{A_HIGHLIGHT}_{HLID}_{m.Value("id")}" + postDate = m.Value("createdAt") + If Not _TempPostsList.Contains(postID) Then + _TempPostsList.Add(postID) + Else + Exit Sub + End If + result = False + media = TryCreateMedia(m, postID, postDate, result, True, specFolder) + If result Then _TempMediaList.ListAddList(media, LNC) + Next + End If + End With + End If + End Using + End If + End If + Catch ex As Exception + _complete = Not ProcessException(ex, Token, $"highlights downloading error [{url}]") = 2 + End Try + Loop While Not _complete + End Sub +#End Region +#Region "Download chat media" + Private Sub DownloadChatMedia(ByVal Cursor As Integer, ByVal Token As CancellationToken) + Dim url$ = String.Empty + Dim _complete As Boolean = True + Do + Try + Dim hasMore As Boolean = False + Dim postID$, postDate$ + Dim media As List(Of UserMedia) + Dim result As Boolean + Dim path$ = $"/api2/v2/chats/{ID}/media/?opened=1&limit=20&skip_users=all" + If Cursor > 0 Then path &= $"&offset={Cursor}" + If UpdateSignature(path) Then + url = String.Format(BaseUrlPattern, path) + ThrowAny(Token) + Dim r$ = Responser.GetResponse(url) + If Not r.IsEmptyString Then + Using j As EContainer = JsonDocument.Parse(r) + If j.ListExists Then + hasMore = j.Value("hasMore").FromXML(Of Boolean)(False) + With j("list") + If .ListExists Then + For Each m As EContainer In .Self + postID = $"{A_MESSAGE}_{m.Value("id")}" + postDate = m.Value("createdAt") + If Not _TempPostsList.Contains(postID) Then + _TempPostsList.Add(postID) + Else + Exit Sub + End If + result = False + media = TryCreateMedia(m, postID, postDate, result,, "Chats*") + If result Then _TempMediaList.ListAddList(media, LNC) + Next + End If + End With + End If + End Using + End If + End If + If hasMore Then DownloadChatMedia(Cursor + 20, Token) + Catch ex As Exception + _complete = Not ProcessException(ex, Token, $"chats downloading error [{url}]") = 2 + End Try + Loop While Not _complete + End Sub +#End Region Private Function TryCreateMedia(ByVal n As EContainer, ByVal PostID As String, Optional ByVal PostDate As String = Nothing, - Optional ByRef Result As Boolean = False) As List(Of UserMedia) + Optional ByRef Result As Boolean = False, Optional ByVal IsHL As Boolean = False, + Optional ByVal SpecFolder As String = Nothing) As List(Of UserMedia) Dim postUrl$, ext$ Dim t As UTypes Dim mList As New List(Of UserMedia) @@ -138,7 +315,11 @@ Namespace API.OnlyFans With n("media") If .ListExists Then For Each m In .Self - postUrl = m.Value({"source"}, "source").IfNullOrEmpty(m.Value("full")) + If IsHL Then + postUrl = m.Value({"files", "source"}, "url") + Else + postUrl = m.Value({"source"}, "source").IfNullOrEmpty(m.Value("full")) + End If Select Case m.Value("type") Case "photo" : t = UTypes.Picture : ext = "jpg" Case "video" : t = UTypes.Video : ext = "mp4" @@ -146,7 +327,9 @@ Namespace API.OnlyFans End Select If Not t = UTypes.Undefined And Not postUrl.IsEmptyString Then Dim media As New UserMedia(postUrl, t) With { - .Post = New UserPost(PostID, AConvert(Of Date)(PostDate, DateProvider, Nothing))} + .Post = New UserPost(PostID, AConvert(Of Date)(PostDate, DateProvider, Nothing)), + .SpecialFolder = SpecFolder + } media.File.Extension = ext Result = True mList.Add(media) @@ -157,6 +340,7 @@ Namespace API.OnlyFans Return mList End Function Private Sub GetUserID() + Const brTag$ = "
" Dim path$ = $"/api2/v2/users/{Name}" Dim url$ = String.Format(BaseUrlPattern, path) Try @@ -168,7 +352,9 @@ Namespace API.OnlyFans ID = j.Value("id") If Not ID.IsEmptyString Then _ForceSaveUserInfo = True UserSiteNameUpdate(j.Value("name")) - UserDescriptionUpdate(j.Value("about")) + Dim descr$ = j.Value("about") + If Not descr.IsEmptyString Then descr = descr.Replace(brTag, String.Empty) + UserDescriptionUpdate(descr) Dim a As Action(Of String) = Sub(ByVal address As String) If Not address.IsEmptyString Then Dim f As SFile = address @@ -232,7 +418,7 @@ Namespace API.OnlyFans ProcessException(ex, Token, $"ReparseMissing error [{URL}]") Finally If rList.Count > 0 Then - For i% = rList.Count - 1 To 0 Step -1 : _ContentList.RemoveAt(i) : Next + For i% = rList.Count - 1 To 0 Step -1 : _ContentList.RemoveAt(rList(i)) : Next rList.Clear() End If End Try @@ -347,6 +533,10 @@ Namespace API.OnlyFans ElseIf Responser.StatusCode = Net.HttpStatusCode.NotFound Then UserExists = False Return 1 + ElseIf Responser.StatusCode = Net.HttpStatusCode.GatewayTimeout Or Responser.StatusCode = 429 Then + If Responser.StatusCode = 429 Then MyMainLOG = $"[429] OnlyFans too many requests ({ToStringForLog()})" + MySettings.SessionAborted = True + Return 1 Else Return 0 End If @@ -354,7 +544,7 @@ Namespace API.OnlyFans #End Region #Region "IDisposable Support" Protected Overrides Sub Dispose(ByVal disposing As Boolean) - If Not disposedValue And disposing Then CCookie.DisposeIfReady(False) : CCookie = Nothing + If Not disposedValue And disposing Then CCookie.DisposeIfReady(False) : CCookie = Nothing : HighlightsList.Clear() MyBase.Dispose(disposing) End Sub #End Region diff --git a/SCrawler/API/OnlyFans/UserExchangeOptions.vb b/SCrawler/API/OnlyFans/UserExchangeOptions.vb new file mode 100644 index 0000000..dfe337d --- /dev/null +++ b/SCrawler/API/OnlyFans/UserExchangeOptions.vb @@ -0,0 +1,28 @@ +' Copyright (C) 2023 Andy https://github.com/AAndyProgram +' This program 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. +' +' This program is distributed in the hope that it will be useful, +' but WITHOUT ANY WARRANTY +Imports SCrawler.Plugin.Attributes +Namespace API.OnlyFans + Friend Class UserExchangeOptions + + Friend Property DownloadHighlights As Boolean + + Friend Property DownloadChatMedia As Boolean + Private ReadOnly MySettings As SiteSettings + Friend Sub New(ByVal u As UserData) + DownloadHighlights = u.MediaDownloadHighlights + DownloadChatMedia = u.MediaDownloadChatMedia + MySettings = u.HOST.Source + End Sub + Friend Sub New(ByVal s As SiteSettings) + DownloadHighlights = s.DownloadHighlights.Value + DownloadChatMedia = s.DownloadChatMedia.Value + MySettings = s + End Sub + End Class +End Namespace \ No newline at end of file diff --git a/SCrawler/API/PathPlugin/UserData.vb b/SCrawler/API/PathPlugin/UserData.vb index f222cc5..45c810e 100644 --- a/SCrawler/API/PathPlugin/UserData.vb +++ b/SCrawler/API/PathPlugin/UserData.vb @@ -12,7 +12,7 @@ Namespace API.PathPlugin Private Const DOWNLOAD_ERROR As String = "The path plugin only provides user paths." Friend Overrides Property UserExists As Boolean Get - Return FileExists + Return DownloadContentDefault_GetRootDir.CSFileP.Exists(SFO.Path, False) End Get Set(ByVal e As Boolean) MyBase.UserExists = e diff --git a/SCrawler/API/Pinterest/SiteSettings.vb b/SCrawler/API/Pinterest/SiteSettings.vb index 6516d83..2b64b80 100644 --- a/SCrawler/API/Pinterest/SiteSettings.vb +++ b/SCrawler/API/Pinterest/SiteSettings.vb @@ -25,25 +25,12 @@ Namespace API.Pinterest Return My.Resources.SiteResources.PinterestPic_48 End Get End Property - Private Class ConcurrentDownloadsValidator : Inherits FieldsCheckerProviderBase - Public Overrides Function Convert(ByVal Value As Object, ByVal DestinationType As Type, ByVal Provider As IFormatProvider, - Optional ByVal NothingArg As Object = Nothing, Optional ByVal e As ErrorsDescriber = Nothing) As Object - Dim v% = AConvert(Of Integer)(Value, -1) - Dim defV% = Settings.MaxUsersJobsCount - If v.ValueBetween(1, defV) Then - Return Value - Else - ErrorMessage = $"The number of concurrent downloads must be greater than 0 and equal to or less than {defV} (global limit)." - HasError = True - Return Nothing - End If - End Function - End Class - - Private ReadOnly Property ConcurrentDownloadsProvider As IFormatProvider - + Friend ReadOnly Property ConcurrentDownloads As PropertyValue - + + Private ReadOnly Property MyConcurrentDownloadsProvider As IFormatProvider + Friend ReadOnly Property SavedPostsUserName As PropertyValue #End Region #Region "Initializer" @@ -51,7 +38,7 @@ Namespace API.Pinterest MyBase.New("Pinterest", "pinterest.com") SavedPostsUserName = New PropertyValue(String.Empty, GetType(String)) ConcurrentDownloads = New PropertyValue(1) - ConcurrentDownloadsProvider = New ConcurrentDownloadsValidator + MyConcurrentDownloadsProvider = New ConcurrentDownloadsProvider CheckNetscapeCookiesOnEndInit = True UseNetscapeCookies = True UserRegex = RParams.DMS("https?://w{0,3}.?[^/]*?.?pinterest.com/([^/]+)/?(?(_)|([^/]*))", 0, RegexReturn.ListByMatch, EDP.ReturnValue) diff --git a/SCrawler/API/Pinterest/UserData.vb b/SCrawler/API/Pinterest/UserData.vb index 5843e3a..b494416 100644 --- a/SCrawler/API/Pinterest/UserData.vb +++ b/SCrawler/API/Pinterest/UserData.vb @@ -38,6 +38,12 @@ Namespace API.Pinterest Friend Property TrueUserName As String Friend Property TrueBoardName As String Friend Property IsUser As Boolean + Private Const BoardLabelName As String = "Board" + Friend Overrides ReadOnly Property SpecialLabels As IEnumerable(Of String) + Get + Return {UserLabelName, BoardLabelName} + End Get + End Property #End Region #Region "Load" Private Function ReconfUserName() As Boolean @@ -48,12 +54,12 @@ Namespace API.Pinterest IsUser = True If n.Length > 1 Then TrueBoardName = n(1) : IsUser = False If Not IsSavedPosts And Not IsSingleObjectDownload Then - Dim l$ = IIf(IsUser, UserLabelName, "Board") + Dim l$ = IIf(IsUser, UserLabelName, BoardLabelName) Settings.Labels.Add(l) Labels.ListAddValue(l, LNC) Labels.Sort() + Return True End If - Return True End If End If Return False @@ -66,7 +72,7 @@ Namespace API.Pinterest IsUser = .Value(Name_IsUser).FromXML(Of Boolean)(False) ReconfUserName() Else - If ReconfUserName() Then .Value(Name_LabelsName) = Labels.ListToString("|", EDP.ReturnValue) + If ReconfUserName() Then .Value(Name_LabelsName) = LabelsString .Add(Name_TrueUserName, TrueUserName) .Add(Name_TrueBoardName, TrueBoardName) .Add(Name_IsUser, IsUser.BoolToInteger) @@ -128,7 +134,7 @@ Namespace API.Pinterest Dim j As EContainer, jj As EContainer Dim rootNode$() = {"resource_response", "data"} Dim jErr As New ErrorsDescriber(EDP.SendToLog + EDP.ReturnValue) - Dim urls As List(Of String) = GetDataFromGalleryDL(URL, True) + Dim urls As List(Of String) = GetDataFromGalleryDL(URL, True, Token) If urls.ListExists Then urls.RemoveAll(Function(__url) Not __url.Contains("BoardsResource/get/")) If urls.ListExists Then ProgressPre.ChangeMax(urls.Count) @@ -177,7 +183,7 @@ Namespace API.Pinterest Dim images As List(Of Sizes) Dim imgSelector As Func(Of EContainer, Sizes) = Function(img) New Sizes(img.Value("width"), img.Value("url")) Dim fullData As Predicate(Of EContainer) = Function(e) e.Count > 5 - Dim l As List(Of String) = GetDataFromGalleryDL(Board.URL, False) + Dim l As List(Of String) = GetDataFromGalleryDL(Board.URL, False, Token) If l.ListExists Then l.RemoveAll(Function(ll) Not ll.Contains("BoardFeedResource/get/")) If l.ListExists Then ProgressPre.ChangeMax(l.Count) @@ -253,8 +259,8 @@ Namespace API.Pinterest Private Class GDLBatch : Inherits GDL.GDLBatch Private ReadOnly Property Source As UserData Private ReadOnly IsBoardsRequested As Boolean - Friend Sub New(ByRef s As UserData, ByVal IsBoardsRequested As Boolean) - MyBase.New + Friend Sub New(ByRef s As UserData, ByVal IsBoardsRequested As Boolean, ByVal _Token As CancellationToken) + MyBase.New(_Token) Source = s Me.IsBoardsRequested = IsBoardsRequested End Sub @@ -269,22 +275,24 @@ Namespace API.Pinterest Protected Overrides Async Function Validate(ByVal Value As String) As Task If IsBoardsRequested Then If ErrorOutputData.Count > 0 Then - If Await Task.Run(Of Boolean)(Function() ErrorOutputData.Exists(Function(ee) Not ee.IsEmptyString AndAlso + If Await Task.Run(Of Boolean)(Function() Token.IsCancellationRequested OrElse + ErrorOutputData.Exists(Function(ee) Not ee.IsEmptyString AndAlso ee.StartsWith(UrlTextStart))) Then Kill() End If Else - If Await Task.Run(Of Boolean)(Function() Not Value.IsEmptyString AndAlso - Source._TempPostsList.Exists(Function(v) Value.Contains(v))) Then Kill() + If Await Task.Run(Of Boolean)(Function() Token.IsCancellationRequested OrElse + (Not Value.IsEmptyString AndAlso + Source._TempPostsList.Exists(Function(v) Value.Contains(v)))) Then Kill() End If End Function End Class - Private Function GetDataFromGalleryDL(ByVal URL As String, ByVal IsBoardsRequested As Boolean) As List(Of String) + Private Function GetDataFromGalleryDL(ByVal URL As String, ByVal IsBoardsRequested As Boolean, ByVal Token As CancellationToken) As List(Of String) Dim command$ = $"gallery-dl --verbose --simulate " Try If Not URL.IsEmptyString Then If MySettings.CookiesNetscapeFile.Exists Then command &= $"--cookies ""{MySettings.CookiesNetscapeFile}"" " command &= URL - Using batch As New GDLBatch(Me, IsBoardsRequested) + Using batch As New GDLBatch(Me, IsBoardsRequested, Token) Return GetUrlsFromGalleryDl(batch, command) End Using End If diff --git a/SCrawler/API/PornHub/Declarations.vb b/SCrawler/API/PornHub/Declarations.vb index 30800e5..4cd4d60 100644 --- a/SCrawler/API/PornHub/Declarations.vb +++ b/SCrawler/API/PornHub/Declarations.vb @@ -6,6 +6,7 @@ ' ' This program is distributed in the hope that it will be useful, ' but WITHOUT ANY WARRANTY +Imports System.Text.RegularExpressions Imports PersonalUtilities.Functions.RegularExpressions Namespace API.PornHub Friend Module Declarations @@ -15,17 +16,11 @@ Namespace API.PornHub #Region "Declarations video" Friend ReadOnly RegexVideo_FlashVarsBlocks As RParams = RParams.DM("(?<=(flashvars_\['[nN]ext[vV]ideo'\]|flashvars_\d+[^ ]+? = media_\d+?);[\r\n]*?)(.+?)(?=;flashvars_\d+?)", 0, RegexReturn.List, EDP.ReturnValue) - 'TODELETE: PornHub old 'RegexVideo_FlashVarsBlock' declaration - 'Friend ReadOnly RegexVideo_FlashVarsBlock As RParams = RParams.DM("(?<=flashvars_\['[nN]ext[vV]ideo'\];[\r\n]*?)(.+?)(?=;flashvars_\d+?)", 0, EDP.ReturnValue) Friend ReadOnly RegexVideo_FlashVars_Vars As RParams = RParams.DM("var ([\w\d]{10,})=("".+?)(?=(;|\Z))", 0, RegexReturn.List) Friend ReadOnly RegexVideo_FlashVars_Compiler As RParams = RParams.DM("(?<=\*/)([\w\d\S]{10,})", 0, RegexReturn.List) Friend ReadOnly RegexVideo_FlashVars_UrlResolution As RParams = RParams.DMS("/(\d+)[^/]+\.mp4", 1, EDP.ReturnValue) - Friend ReadOnly RegexVideo_Video_All As RParams = RParams.DM("div class=""thumbnail-info-wrapper clearfix.+?[\r\n\s]*?\).)*?)(\).)*?)|)(\).)+?)(\
).)*?)(\)", + 0, RegexOptions.Singleline, RegexReturn.List, EDP.ReturnValue, UnicodeHexConverter) Friend ReadOnly RegexVideo_Video_VideoKey As RParams = RParams.DMS("viewkey=([\w\d]+)", 1, EDP.ReturnValue) Friend ReadOnly RegexVideoPageTitle As RParams = RParams.DMS("meta (property|name)=""[^:]+?:title"" content=""([^""]+)""", 2, EDP.ReturnValue) #End Region diff --git a/SCrawler/API/PornHub/SiteSettings.vb b/SCrawler/API/PornHub/SiteSettings.vb index e3d6969..67eecbf 100644 --- a/SCrawler/API/PornHub/SiteSettings.vb +++ b/SCrawler/API/PornHub/SiteSettings.vb @@ -27,6 +27,14 @@ Namespace API.PornHub End Property Friend Property DownloadUHD As PropertyValue + + Friend Property DownloadUploaded As PropertyValue + + Friend Property DownloadTagged As PropertyValue + + Friend Property DownloadPrivate As PropertyValue + + Friend Property DownloadFavorite As PropertyValue Friend ReadOnly Property DownloadGifs As PropertyValue @@ -35,7 +43,7 @@ Namespace API.PornHub ControlToolTip:="Download photo only from ModelHub. Prornstar photos hosted on PornHub itself will not be downloaded." & vbCr & "Attention! Downloading photos hosted on PornHub is a very heavy job."), PXML> Friend ReadOnly Property DownloadPhotoOnlyFromModelHub As PropertyValue - + Friend ReadOnly Property SavedPostsUserName As PropertyValue #End Region #Region "Initializer" @@ -44,14 +52,19 @@ Namespace API.PornHub With Responser : .CurlSslNoRevoke = True : .CurlInsecure = True : End With DownloadUHD = New PropertyValue(False) + DownloadUploaded = New PropertyValue(True) + DownloadTagged = New PropertyValue(False) + DownloadPrivate = New PropertyValue(False) + DownloadFavorite = New PropertyValue(False) DownloadGifsAsMp4 = New PropertyValue(True) DownloadGifs = New PropertyValue(CInt(CheckState.Indeterminate), GetType(Integer)) DownloadPhotoOnlyFromModelHub = New PropertyValue(True) SavedPostsUserName = New PropertyValue(String.Empty, GetType(String)) + _SubscriptionsAllowed = True UrlPatternUser = "https://www.pornhub.com/{0}/{1}" - UserRegex = RParams.DMS("pornhub.com/([^/]+)/([^/]+).*?", 0, RegexReturn.ListByMatch) - ImageVideoContains = "pornhub" + UserRegex = RParams.DMS("pornhub.com/(model|user[s]?|pornstar|channel[s]?)/([^/]+).*?", 0, RegexReturn.ListByMatch) + ImageVideoContains = "pornhub.com" End Sub #End Region #Region "GetInstance" @@ -67,11 +80,17 @@ Namespace API.PornHub End Function #End Region #Region "IsMyUser" + Private ReadOnly NonUserRegex As RParams = RParams.DM("(?<=pornhub.com/)((.+?)(?=[\?&]{1}page=\d+)|(.+))", 0, EDP.ReturnValue) Friend Overrides Function IsMyUser(ByVal UserURL As String) As ExchangeOptions Try - If Not UserURL.IsEmptyString Then + If Not UserURL.IsEmptyString AndAlso UserURL.ToLower.Contains("pornhub.com") Then Dim alist As List(Of String) = RegexReplace(UserURL.ToLower, UserRegex) - If alist.ListExists(3) Then Return New ExchangeOptions(Site, $"{alist(1)}_{alist(2)}") + If alist.ListExists(3) Then + Return New ExchangeOptions(Site, $"{alist(1)}_{alist(2)}") + Else + Dim opt$ = RegexReplace(UserURL, NonUserRegex) + If Not opt.IsEmptyString Then Return New ExchangeOptions(Site, opt.StringRemoveWinForbiddenSymbols) With {.Options = opt} + End If End If Return Nothing Catch ex As Exception @@ -81,7 +100,13 @@ Namespace API.PornHub #End Region #Region "GetUserUrl" Friend Overrides Function GetUserUrl(ByVal User As IPluginContentProvider) As String - With DirectCast(User, UserData) : Return String.Format(UrlPatternUser, .PersonType, .NameTrue) : End With + With DirectCast(User, UserData) + If .IsUser Then + Return String.Format(UrlPatternUser, .PersonType, .NameTrue) + Else + Return .GetNonUserUrl(0) + End If + End With End Function #End Region #Region "User options" diff --git a/SCrawler/API/PornHub/UserData.vb b/SCrawler/API/PornHub/UserData.vb index c2f21d7..15b1811 100644 --- a/SCrawler/API/PornHub/UserData.vb +++ b/SCrawler/API/PornHub/UserData.vb @@ -21,11 +21,15 @@ Namespace API.PornHub #Region "XML names" Private Const Name_PersonType As String = "PersonType" Private Const Name_NameTrue As String = "NameTrue" - Private Const Name_VideoPageModel As String = "VideoPageModel" Private Const Name_PhotoPageModel As String = "PhotoPageModel" Private Const Name_DownloadUHD As String = "DownloadUHD" + Private Const Name_DownloadUploaded As String = "DownloadUploaded" + Private Const Name_DownloadTagged As String = "DownloadTagged" + Private Const Name_DownloadPrivate As String = "DownloadPrivate" + Private Const Name_DownloadFavorite As String = "DownloadFavorite" Private Const Name_DownloadGifs As String = "DownloadGifs" Private Const Name_DownloadPhotoOnlyFromModelHub As String = "DownloadPhotoOnlyFromModelHub" + Private Const Name_IsUser As String = "IsUser" #End Region #Region "Structures" Private Structure FlashVar : Implements IRegExCreator @@ -50,18 +54,31 @@ Namespace API.PornHub Friend URL As String Friend ID As String Friend Title As String - Friend Function ToUserMedia() As UserMedia + Friend Type As VideoTypes + Friend Function ToUserMedia(Optional ByVal SpecialFolder As String = Nothing) As UserMedia Return New UserMedia(URL, UTypes.VideoPre) With { .File = If(Title.IsEmptyString, .File, New SFile($"{Title}.mp4")), - .Post = ID + .Post = ID, + .SpecialFolder = SpecialFolder } End Function Private Function CreateFromArray(ByVal ParamsArray() As String) As Object Implements IRegExCreator.CreateFromArray - If ParamsArray.ListExists Then + If ParamsArray.ListExists(4) Then URL = ParamsArray(0) ID = RegexReplace(URL, RegexVideo_Video_VideoKey) - URL = String.Format(UrlPattern, URL.TrimStart("/")) - Title = TitleHtmlConverter(ParamsArray(1)) + If ID.IsEmptyString Then + URL = String.Empty + Else + URL = String.Format(UrlPattern, URL.TrimStart("/")) + Title = TitleHtmlConverter(ParamsArray(1)) + If Not ParamsArray(2).IsEmptyString Then + Type = VideoTypes.Private + ElseIf Not ParamsArray(3).IsEmptyString Then + Type = VideoTypes.Tagged + Else + Type = VideoTypes.Uploaded + End If + End If End If Return Me End Function @@ -82,21 +99,24 @@ Namespace API.PornHub End Structure #End Region #Region "Enums" - Friend Enum VideoPageModels As Integer - [Default] = 0 - ConcatPage = 1 - Favorite = 2 - Undefined = -1 - End Enum Private Enum PhotoPageModels As Integer Undefined = 0 PornHubPage = 1 ModelHubPage = 2 End Enum + Private Enum VideoTypes + Undefined + Uploaded + [Private] + Tagged + Favorite + End Enum #End Region #Region "Constants" Private Const PersonTypeModel As String = "model" - Friend Const PersonTypeUser As String = "users" + Private Const PersonTypeUser As String = "users" + Private Const PersonTypePornstar As String = "pornstar" + Private Const PersonTypeCannel As String = "channels" #End Region #Region "Person" Friend Property PersonType As String @@ -111,11 +131,37 @@ Namespace API.PornHub End Property #End Region #Region "Advanced fields" - Friend Property VideoPageModel As VideoPageModels = VideoPageModels.Undefined + Friend Overrides ReadOnly Property FeedIsUser As Boolean + Get + Return IsUser + End Get + End Property Private Property PhotoPageModel As PhotoPageModels = PhotoPageModels.Undefined Friend Property DownloadUHD As Boolean = False + Friend Property DownloadUploaded As Boolean = True + Friend Property DownloadTagged As Boolean = False + Friend Property DownloadPrivate As Boolean = False + Friend Property DownloadFavorite As Boolean = False Friend Property DownloadGifs As Boolean Friend Property DownloadPhotoOnlyFromModelHub As Boolean = True + Friend Property IsUser As Boolean = True + Friend Property QueryString As String + Get + If IsUser Then + Return String.Empty + Else + Return GetNonUserUrl(0) + End If + End Get + Set(ByVal q As String) + UpdateUserOptions(True, q) + End Set + End Property + Friend Overrides ReadOnly Property SpecialLabels As IEnumerable(Of String) + Get + Return {SearchRequestLabelName} + End Get + End Property #End Region #Region "ExchangeOptions" Friend Overrides Function ExchangeOptionsGet() As Object @@ -125,8 +171,13 @@ Namespace API.PornHub If Not Obj Is Nothing AndAlso TypeOf Obj Is UserExchangeOptions Then With DirectCast(Obj, UserExchangeOptions) DownloadUHD = .DownloadUHD + DownloadUploaded = .DownloadUploaded + DownloadTagged = .DownloadTagged + DownloadPrivate = .DownloadPrivate + DownloadFavorite = .DownloadFavorite DownloadGifs = .DownloadGifs DownloadPhotoOnlyFromModelHub = .DownloadPhotoOnlyFromModelHub + QueryString = .QueryString End With End If End Sub @@ -136,96 +187,131 @@ Namespace API.PornHub Return DirectCast(HOST.Source, SiteSettings) End Get End Property + Private ReadOnly LastPageIDs As List(Of String) #End Region -#Region "Initializer, loader" +#Region "Initializer" Friend Sub New() + LastPageIDs = New List(Of String) UseInternalM3U8Function = True UseClientTokens = True End Sub +#End Region +#Region "Loader" + Private Function UpdateUserOptions(Optional ByVal Force As Boolean = False, Optional ByVal NewUrl As String = Nothing) As Boolean + + If Not Force OrElse (Not IsUser AndAlso Not NewUrl.IsEmptyString AndAlso MyFileSettings.Exists) Then + Dim eObj As Plugin.ExchangeOptions = Nothing + If Force Then eObj = MySettings.IsMyUser(NewUrl) + If (Force And Not eObj.UserName.IsEmptyString) Or (Not Force And Not Name.IsEmptyString And NameTrue.IsEmptyString) Then + If Not If(Force, eObj.Options, Options).IsEmptyString Then + If IsUser And Force Then + Return False + Else + IsUser = False + Options = If(Force, eObj.Options, Options) + NameTrue = Options + If Not Force Then + Settings.Labels.Add(SearchRequestLabelName) + Labels.ListAddValue(SearchRequestLabelName, LNC) + Labels.Sort() + Return True + End If + End If + Else + IsUser = True + Dim n$() = Name.Split("_") + If n.ListExists(2) Then + NameTrue = Name.Replace($"{n(0)}_", String.Empty) + PersonType = n(0) + End If + End If + End If + End If + Return False + End Function Protected Overrides Sub LoadUserInformation_OptionalFields(ByRef Container As XmlFile, ByVal Loading As Boolean) With Container - Dim SetNames As Action = Sub() - If Not Name.IsEmptyString And NameTrue.IsEmptyString Then - Dim n$() = Name.Split("_") - If n.ListExists(2) Then - NameTrue = Name.Replace($"{n(0)}_", String.Empty) - PersonType = n(0) - If (PersonType = PersonTypeModel Or PersonType = PersonTypeUser) And - VideoPageModel = VideoPageModels.Undefined Then VideoPageModel = VideoPageModels.Default - End If - End If - End Sub If Loading Then PersonType = .Value(Name_PersonType) NameTrue = .Value(Name_NameTrue) - VideoPageModel = .Value(Name_VideoPageModel).FromXML(Of Integer)(VideoPageModels.Undefined) PhotoPageModel = .Value(Name_PhotoPageModel).FromXML(Of Integer)(PhotoPageModels.Undefined) DownloadUHD = .Value(Name_DownloadUHD).FromXML(Of Boolean)(False) + DownloadUploaded = .Value(Name_DownloadUploaded).FromXML(Of Boolean)(True) + DownloadTagged = .Value(Name_DownloadTagged).FromXML(Of Boolean)(False) + DownloadPrivate = .Value(Name_DownloadPrivate).FromXML(Of Boolean)(False) + DownloadFavorite = .Value(Name_DownloadFavorite).FromXML(Of Boolean)(False) DownloadGifs = .Value(Name_DownloadGifs).FromXML(Of Integer)(False) DownloadPhotoOnlyFromModelHub = .Value(Name_DownloadPhotoOnlyFromModelHub).FromXML(Of Boolean)(True) - SetNames.Invoke() + IsUser = .Value(Name_IsUser).FromXML(Of Boolean)(True) + UpdateUserOptions() Else - SetNames.Invoke() + If UpdateUserOptions() Then .Value(Name_LabelsName) = LabelsString .Add(Name_PersonType, PersonType) .Add(Name_NameTrue, NameTrue) - .Add(Name_VideoPageModel, CInt(VideoPageModel)) .Add(Name_PhotoPageModel, CInt(PhotoPageModel)) .Add(Name_DownloadUHD, DownloadUHD.BoolToInteger) + .Add(Name_DownloadUploaded, DownloadUploaded.BoolToInteger) + .Add(Name_DownloadTagged, DownloadTagged.BoolToInteger) + .Add(Name_DownloadPrivate, DownloadPrivate.BoolToInteger) + .Add(Name_DownloadFavorite, DownloadFavorite.BoolToInteger) .Add(Name_DownloadGifs, DownloadGifs.BoolToInteger) .Add(Name_DownloadPhotoOnlyFromModelHub, DownloadPhotoOnlyFromModelHub.BoolToInteger) + .Add(Name_IsUser, IsUser.BoolToInteger) + + 'Debug.WriteLine(GetNonUserUrl(0)) + 'Debug.WriteLine(GetNonUserUrl(2)) End If End With End Sub #End Region #Region "Downloading" #Region "Download override" - Private Const DataDownloaded As Integer = -10 - Private Const DataDownloaded_NotFound As Integer = -20 Protected Overrides Sub DownloadDataF(ByVal Token As CancellationToken) Try Responser.ResetStatus() - If PersonType = PersonTypeUser Then Responser.Mode = Responser.Modes.Curl If IsSavedPosts Then - VideoPageModel = VideoPageModels.Favorite PersonType = PersonTypeUser NameTrue = MySettings.SavedPostsUserName.Value End If - Dim page% = 1 - Dim __continue As Boolean = True - Dim __videoDone As Boolean = False - Dim d% + Dim limit% = If(DownloadTopCount, -1) If DownloadVideos Then - If PersonType = PersonTypeUser Then Responser.Mode = Responser.Modes.Curl : Responser.Method = "POST" - If VideoPageModel = VideoPageModels.Undefined Then - __continue = False - d = DownloadUserVideos(page, Token) - Select Case d - Case DataDownloaded : __continue = True : page += 1 - Case 1 : VideoPageModel = VideoPageModels.ConcatPage - Case EXCEPTION_OPERATION_CANCELED : ThrowAny(Token) - Case DataDownloaded_NotFound : __videoDone = True - End Select - If Not __continue And Not __videoDone Then - d = DownloadUserVideos(page, Token) - Select Case d - Case DataDownloaded : __continue = True : page += 1 - Case 1 : VideoPageModel = VideoPageModels.Undefined - Case EXCEPTION_OPERATION_CANCELED : ThrowAny(Token) - Case DataDownloaded_NotFound : __videoDone = True - End Select + + If IsSavedPosts Or Not IsUser Or PersonType = PersonTypeUser Then + DownloadUserVideos(1, VideoTypes.Favorite, False, Token) + Else + If DownloadUploaded Then + LastPageIDs.Clear() + DownloadUserVideos(1, VideoTypes.Uploaded, False, Token) + End If + If DownloadTagged Then + LastPageIDs.Clear() + Dim lBefore% = _TempMediaList.Count + DownloadUserVideos(1, VideoTypes.Tagged, False, Token) + If PersonType = PersonTypePornstar And lBefore = _TempMediaList.Count Then + LastPageIDs.Clear() + DownloadUserVideos(1, VideoTypes.Tagged, True, Token) + End If + End If + If DownloadPrivate Then + LastPageIDs.Clear() + DownloadUserVideos(1, VideoTypes.Private, False, Token) + End If + If DownloadFavorite Then + LastPageIDs.Clear() + DownloadUserVideos(1, VideoTypes.Favorite, False, Token) End If End If - If __continue And Not __videoDone Then - Do While DownloadUserVideos(page, Token) = DataDownloaded And page < 100 : page += 1 : Loop + + If _TempMediaList.Count > 0 Then + _TempMediaList.RemoveAll(Function(m) Not m.Type = UTypes.m3u8 And Not m.Type = UTypes.VideoPre) + If limit > 0 And _TempMediaList.Count > limit Then _TempMediaList.ListAddList(_TempMediaList.ListTake(-1, limit), LAP.ClearBeforeAdd) End If - If _TempMediaList.Count > 0 Then _TempMediaList.RemoveAll(Function(m) Not m.Type = UTypes.m3u8 And Not m.Type = UTypes.VideoPre) End If - Responser.Method = "GET" - If DownloadGifs And Not IsSavedPosts Then DownloadUserGifs(Token) - If DownloadImages Then DownloadUserPhotos(Token) + If DownloadGifs And Not IsSavedPosts And Not IsSubscription And IsUser Then DownloadUserGifs(Token) + If DownloadImages And Not IsSubscription And IsUser Then DownloadUserPhotos(Token) Finally Responser.Mode = Responser.Modes.Default Responser.Method = "GET" @@ -234,72 +320,100 @@ Namespace API.PornHub End Sub #End Region #Region "Download video" - Private ReadOnly Property VideoPageType As String - Get - Select Case VideoPageModel - Case VideoPageModels.Default : Return "/videos/upload" - Case VideoPageModels.Favorite : Return "/videos/favorites/" - Case Else : Return String.Empty - End Select - End Get - End Property - Private ReadOnly Property VideoPageAppender As String - Get - Return If(PersonType = PersonTypeUser, "ajax?o=newest&page=", String.Empty) - End Get - End Property - Private Overloads Function DownloadUserVideos(ByVal Page As Integer, ByVal Token As CancellationToken) As Integer - Const VideoUrlPattern$ = "https://www.pornhub.com/{0}/{1}{2}{3}" - Const HtmlPageNotFoundVideo$ = "Error Page Not Found" + Friend Function GetNonUserUrl(ByVal Page As Integer) As String + If IsUser Then + Return String.Empty + Else + Dim url$ = $"https://www.pornhub.com/{Options}" + If Page > 1 Then + If url.Contains("?") Then + url &= $"&page={Page}" + Else + url = url.TrimEnd("/") + url &= $"?page={Page}" + End If + End If + Return url + End If + End Function + Private Sub DownloadUserVideos(ByVal Page As Integer, ByVal Type As VideoTypes, ByVal SecondMode As Boolean, ByVal Token As CancellationToken) Dim URL$ = String.Empty ProgressPre.ChangeMax(1) Try - Dim p$ - If PersonType = PersonTypeUser Then - p = Page + Dim specFolder$ = String.Empty + Dim tryNextPage As Boolean = False + Dim limit% = If(DownloadTopCount, -1) + If IsUser Then + URL = $"https://www.pornhub.com/{PersonType}/{NameTrue}" + If Type = VideoTypes.Uploaded Then + URL &= "/videos/upload" + ElseIf Type = VideoTypes.Tagged Then + If Not SecondMode Then URL &= "/videos" + specFolder = "Tagged" + ElseIf Type = VideoTypes.Private Then + URL &= "/videos/private" + specFolder = "Private" + ElseIf Type = VideoTypes.Favorite Then + URL &= "/videos/favorites" + If Not PersonType = PersonTypeUser Then specFolder = "Favorite" + Else + Throw New ArgumentException($"Type '{Type}' is not implemented in the video download function", "Type") + End If + If Page > 1 Then URL &= $"?page={Page}" Else - p = IIf(Page = 1, String.Empty, $"?page={Page}") + URL = GetNonUserUrl(Page) End If - URL = $"{String.Format(VideoUrlPattern, PersonType, NameTrue, VideoPageType, VideoPageAppender)}{p}" ThrowAny(Token) + 'Debug.WriteLine(URL) Dim r$ = Responser.GetResponse(URL) If Not r.IsEmptyString Then - If PersonType = PersonTypeUser And r.Contains(HtmlPageNotFoundVideo) Then Return DataDownloaded_NotFound - Dim l As List(Of UserVideo) = RegexFields(Of UserVideo)(r, {RegexVideo_Video_All}, {1, 2}) - Dim lw As List(Of UserVideo) = Nothing - If Not PersonType = PersonTypeUser Then lw = RegexFields(Of UserVideo)(r, {RegexVideo_Video_Wrong}, RegexVideo_Video_Wrong_Fields) + Dim l As List(Of UserVideo) = RegexFields(Of UserVideo)(r, {RegexUserVideos}, {6, 7, 3, 10}) + If l.ListExists Then l = l.ListTake(3, l.Count).ToList If l.ListExists Then - If lw.ListExists Then l.ListWithRemove(lw) + If IsUser Then + If Type = VideoTypes.Favorite Then + l.RemoveAll(Function(uv) uv.Type = VideoTypes.Private) + ElseIf Not PersonType = PersonTypeCannel Then + l.RemoveAll(Function(uv) Not uv.Type = Type) + End If + End If + If l.Count > 0 Then l.RemoveAll(Function(uv) uv.ID.IsEmptyString Or uv.URL.IsEmptyString) If l.Count > 0 Then Dim lBefore% = l.Count + Dim nonLastPageDetected As Boolean = False + Dim newLastPageIDs As New List(Of String) l.RemoveAll(Function(ByVal uv As UserVideo) As Boolean If Not _TempPostsList.Contains(uv.ID) Then _TempPostsList.Add(uv.ID) + newLastPageIDs.Add(uv.ID) Return False Else + If Not LastPageIDs.Contains(uv.ID) Then nonLastPageDetected = True + 'Debug.WriteLine($"[REMOVED]: {uv.Title}") Return True End If End Function) - If l.Count > 0 Then _TempMediaList.ListAddList(l.Select(Function(uv) uv.ToUserMedia)) - If l.Count = lBefore And l.Count > 0 Then Return DataDownloaded + 'Debug.WriteLineIf(l.Count > 0, l.Select(Function(ll) ll.Title).ListToString(vbNewLine)) + If l.Count > 0 Then _TempMediaList.ListAddList(l.Select(Function(uv) uv.ToUserMedia(specFolder))) + LastPageIDs.Clear() + If newLastPageIDs.Count > 0 Then LastPageIDs.AddRange(newLastPageIDs) : newLastPageIDs.Clear() + If l.Count > 0 AndAlso (l.Count = lBefore Or Not nonLastPageDetected) AndAlso + Not (limit > 0 And _TempMediaList.Count >= limit) Then tryNextPage = True End If End If End If - Return DataDownloaded_NotFound + + If tryNextPage Then DownloadUserVideos(Page + 1, Type, SecondMode, Token) Catch regex_ex As RegexFieldsTextBecameNullException - If PersonType = PersonTypeUser Or IsSavedPosts Then - Return DataDownloaded_NotFound - Else - Return ProcessException(regex_ex, Token, $"videos downloading error [{URL}]") - End If + If Not IsSavedPosts Then MyMainLOG = $"{ToStringForLog()}: videos not found. You may need to update your credentials." Catch ex As Exception - Return ProcessException(ex, Token, $"videos downloading error [{URL}]") + ProcessException(ex, Token, $"videos downloading error [{URL}]") Finally ProgressPre.Perform() End Try - End Function + End Sub #End Region #Region "Download GIF" Private Sub DownloadUserGifs(ByVal Token As CancellationToken) @@ -393,7 +507,7 @@ Namespace API.PornHub URL = String.Format(PhotoUrlPattern_ModelHub, NameTrue) Dim r$ = Responser.GetResponse(URL) If Not r.IsEmptyString Then - Dim l As List(Of PhotoBlock) = RegexFields(Of PhotoBlock)(r, {Regex_Photo_ModelHub_PhotoBlocks}, {1, 2}) + Dim l As List(Of PhotoBlock) = RegexFields(Of PhotoBlock)(r, {Regex_Photo_ModelHub_PhotoBlocks}, {1, 2}, EDP.ReturnValue) If l.ListExists Then l.RemoveAll(Function(ll) ll.Data.IsEmptyString) If l.ListExists Then ProgressPre.ChangeMax(l.Count) @@ -431,7 +545,7 @@ Namespace API.PornHub Dim page% Dim r$ = Responser.GetResponse(String.Format(PhotoUrlPattern_PornHub, PersonType, NameTrue)) If Not r.IsEmptyString Then - Dim l As List(Of PhotoBlock) = RegexFields(Of PhotoBlock)(r, {Regex_Photo_PornHub_PhotoBlocks}, {2, 1}) + Dim l As List(Of PhotoBlock) = RegexFields(Of PhotoBlock)(r, {Regex_Photo_PornHub_PhotoBlocks}, {2, 1}, EDP.ReturnValue) If l.ListExists Then l.RemoveAll(Function(ll) ll.AlbumID.IsEmptyString) If l.ListExists Then ProgressPre.ChangeMax(l.Count) @@ -539,17 +653,21 @@ Namespace API.PornHub End If Return False Catch ex As Exception - Return ProcessException(ex, Token, $"photos downloading error [{URL}]") + Return ProcessException(ex, Token, $"photos downloading error [{URL}]") = 1 End Try End Function #End Region #End Region #Region "ReparseVideo" Protected Overloads Overrides Sub ReparseVideo(ByVal Token As CancellationToken) - ReparseVideo(Token, False) + If IsSubscription Then + ReparseVideoSubscriptions(Token) + Else + ReparseVideo(Token, False) + End If End Sub - Protected Overloads Sub ReparseVideo(ByVal Token As CancellationToken, ByVal CreateFileName As Boolean, - Optional ByRef Data As IYouTubeMediaContainer = Nothing) + Private Overloads Sub ReparseVideo(ByVal Token As CancellationToken, ByVal CreateFileName As Boolean, + Optional ByRef Data As IYouTubeMediaContainer = Nothing) Const ERR_NEW_URL$ = "ERR_NEW_URL" Dim URL$ = String.Empty Try @@ -600,6 +718,54 @@ Namespace API.PornHub ProcessException(ex, Token, "video reparsing error", False) End Try End Sub + Private Sub ReparseVideoSubscriptions(ByVal Token As CancellationToken) + Try + If _TempMediaList.Count > 0 AndAlso _TempMediaList.Exists(Function(tm) tm.Type = UTypes.VideoPre) Then + Dim m As UserMedia + Dim r$, URL$, tmpName$, thumb$ + Dim c% = 0 + Dim rErr As New ErrorsDescriber(EDP.ReturnValue) + Progress.Maximum += _TempMediaList.Count + For i% = _TempMediaList.Count - 1 To 0 Step -1 + Progress.Perform() + If _TempMediaList(i).Type = UTypes.VideoPre Then + If Not DownloadTopCount.HasValue OrElse c <= DownloadTopCount.Value Then + m = _TempMediaList(i) + ThrowAny(Token) + Try + URL = m.URL_BASE + r = Responser.GetResponse(URL,, rErr) + If Not r.IsEmptyString Then + m.Type = UTypes.m3u8 + + thumb = RegexReplace(r, Regex_VideosThumb_OG_IMAGE) + If Not thumb.IsEmptyString Then m.URL = thumb + + tmpName = RegexReplace(r, RegexVideoPageTitle) + If Not tmpName.IsEmptyString Then + m.File.Name = TitleHtmlConverter(tmpName) + m.File.Extension = "mp4" + m.PictureOption = tmpName + End If + + _TempMediaList(i) = m + c += 1 + Else + _TempMediaList.RemoveAt(i) + End If + Catch mid_ex As Exception + _TempMediaList.RemoveAt(i) + End Try + Else + _TempMediaList.RemoveAt(i) + End If + End If + Next + End If + Catch ex As Exception + ProcessException(ex, Token, "subscriptions video reparsing error", False) + End Try + End Sub #End Region #Region "ReparseMissing" Protected Overrides Sub ReparseMissing(ByVal Token As CancellationToken) @@ -646,33 +812,6 @@ Namespace API.PornHub End Function #End Region #Region "CreateVideoURL" - 'TODELETE: PornHub old 'CreateVideoURL' function - 'Private Function CreateVideoURL(ByVal r As String) As String - ' Try - ' Dim OutStr$ = String.Empty - ' If Not r.IsEmptyString Then - ' Dim _VarBlock$ = RegexReplace(r, RegexVideo_FlashVarsBlock) - ' If Not _VarBlock.IsEmptyString Then - ' Dim vars As List(Of FlashVar) = RegexFields(Of FlashVar)(_VarBlock, {RegexVideo_FlashVars_Vars}, {1, 2}) - ' Dim compiler As List(Of String) = RegexReplace(_VarBlock, RegexVideo_FlashVars_Compiler) - ' If vars.ListExists And compiler.ListExists Then - ' Dim v$ - ' Dim i% - ' For Each var$ In compiler - ' i = vars.IndexOf(var) - ' If i >= 0 Then - ' v = vars(i).Value - ' If Not v.IsEmptyString Then OutStr &= v - ' End If - ' Next - ' End If - ' End If - ' End If - ' Return OutStr - ' Catch ex As Exception - ' Return ErrorsDescriber.Execute(EDP.SendToLog, ex, "[API.PornHub.UserData.CreateVideoURL]", String.Empty) - ' End Try - 'End Function Private Function CreateVideoURL(ByVal r As String) As String Try Dim OutStr$ = String.Empty @@ -705,8 +844,8 @@ Namespace API.PornHub End If End If - If outList.Count > 0 Then outList.RemoveAll(Function(u) u.IsEmptyString) - If outList.Count > 0 Then + If OutList.Count > 0 Then OutList.RemoveAll(Function(u) u.IsEmptyString) + If OutList.Count > 0 Then i = OutList.FindIndex(Function(u) u.Contains("urlset")) If i >= 0 Then OutStr = OutList(i) @@ -728,6 +867,9 @@ Namespace API.PornHub End If OutList.Clear() Return OutStr + Catch regex_ex As RegexFieldsTextBecameNullException + MyMainLOG = $"{ToStringForLog()}: something is wrong when parsing flashvars.{vbCr}{regex_ex.Message}" + Return String.Empty Catch ex As Exception Return ErrorsDescriber.Execute(EDP.SendToLog, ex, "[API.PornHub.UserData.CreateVideoURL]", String.Empty) End Try @@ -753,6 +895,12 @@ Namespace API.PornHub Return 0 End If End Function +#End Region +#Region "IDisposable Support" + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + If Not disposedValue And disposing Then LastPageIDs.Clear() + MyBase.Dispose(disposing) + End Sub #End Region End Class End Namespace \ No newline at end of file diff --git a/SCrawler/API/PornHub/UserExchangeOptions.vb b/SCrawler/API/PornHub/UserExchangeOptions.vb index f2d1556..1a4fde3 100644 --- a/SCrawler/API/PornHub/UserExchangeOptions.vb +++ b/SCrawler/API/PornHub/UserExchangeOptions.vb @@ -8,9 +8,17 @@ ' but WITHOUT ANY WARRANTY Imports SCrawler.Plugin.Attributes Namespace API.PornHub - Friend Class UserExchangeOptions + Friend Class UserExchangeOptions : Inherits Xhamster.UserExchangeOptions Friend Property DownloadUHD As Boolean + + Friend Property DownloadUploaded As Boolean + + Friend Property DownloadTagged As Boolean + + Friend Property DownloadPrivate As Boolean + + Friend Property DownloadFavorite As Boolean Friend Property DownloadGifs As Boolean @@ -18,13 +26,22 @@ Namespace API.PornHub Private ReadOnly Property MySettings As SiteSettings Friend Sub New(ByVal u As UserData) DownloadUHD = u.DownloadUHD + DownloadUploaded = u.DownloadUploaded + DownloadTagged = u.DownloadTagged + DownloadPrivate = u.DownloadPrivate + DownloadFavorite = u.DownloadFavorite DownloadGifs = u.DownloadGifs DownloadPhotoOnlyFromModelHub = u.DownloadPhotoOnlyFromModelHub + QueryString = u.QueryString MySettings = u.HOST.Source End Sub Friend Sub New(ByVal s As SiteSettings) Dim v As CheckState = CInt(s.DownloadGifs.Value) DownloadUHD = s.DownloadUHD.Value + DownloadUploaded = s.DownloadUploaded.Value + DownloadTagged = s.DownloadTagged.Value + DownloadPrivate = s.DownloadPrivate.Value + DownloadFavorite = s.DownloadFavorite.Value DownloadGifs = Not v = CheckState.Unchecked DownloadPhotoOnlyFromModelHub = s.DownloadPhotoOnlyFromModelHub.Value MySettings = s diff --git a/SCrawler/API/Reddit/IChannelLimits.vb b/SCrawler/API/Reddit/IChannelLimits.vb new file mode 100644 index 0000000..e224ce2 --- /dev/null +++ b/SCrawler/API/Reddit/IChannelLimits.vb @@ -0,0 +1,18 @@ +' Copyright (C) 2023 Andy https://github.com/AAndyProgram +' This program 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. +' +' This program is distributed in the hope that it will be useful, +' but WITHOUT ANY WARRANTY +Namespace API.Reddit + Friend Interface IChannelLimits + Property AutoGetLimits As Boolean + Property DownloadLimitCount As Integer? + Property DownloadLimitPost As String + Property DownloadLimitDate As Date? + Overloads Sub SetLimit(Optional ByVal Post As String = "", Optional ByVal Count As Integer? = Nothing, Optional ByVal [Date] As Date? = Nothing) + Overloads Sub SetLimit(ByVal Source As IChannelLimits) + End Interface +End Namespace \ No newline at end of file diff --git a/SCrawler/API/Reddit/M3U8.vb b/SCrawler/API/Reddit/M3U8.vb index 0c9b331..c064beb 100644 --- a/SCrawler/API/Reddit/M3U8.vb +++ b/SCrawler/API/Reddit/M3U8.vb @@ -75,6 +75,7 @@ Namespace API.Reddit ProgressPre = New PreProgress(Progress) Me.UsePreProgress = UsePreProgress Cache = New CacheKeeper($"{OutFile.PathWithSeparator}_{Base.M3U8Base.TempCacheFolderName}\") + Cache.CacheDeleteError = Base.CacheDeletionError(Cache) CacheFiles = Cache.NewInstance End Sub #Region "Internal functions" diff --git a/SCrawler/API/Reddit/SiteSettings.vb b/SCrawler/API/Reddit/SiteSettings.vb index 8aa0bba..0c38160 100644 --- a/SCrawler/API/Reddit/SiteSettings.vb +++ b/SCrawler/API/Reddit/SiteSettings.vb @@ -9,12 +9,16 @@ Imports SCrawler.API.Base Imports SCrawler.Plugin Imports SCrawler.Plugin.Attributes +Imports PersonalUtilities.Tools.Web.Clients +Imports PersonalUtilities.Tools.Web.Documents.JSON +Imports PersonalUtilities.Functions.XML Imports PersonalUtilities.Functions.RegularExpressions Imports DownDetector = SCrawler.API.Base.DownDetector Imports Download = SCrawler.Plugin.ISiteSettings.Download Namespace API.Reddit Friend Class SiteSettings : Inherits SiteSettingsBase +#Region "Icons" Friend Overrides ReadOnly Property Icon As Icon Get Return My.Resources.SiteResources.RedditIcon_128 @@ -25,36 +29,85 @@ Namespace API.Reddit Return My.Resources.SiteResources.RedditPic_512 End Get End Property - +#End Region +#Region "Declarations" +#Region "Authorization" + + Friend ReadOnly Property AuthUserName As PropertyValue + + Friend ReadOnly Property AuthPassword As PropertyValue + + Friend ReadOnly Property ApiClientID As PropertyValue + + Friend ReadOnly Property ApiClientSecret As PropertyValue + + Friend ReadOnly Property BearerToken As PropertyValue +#Region "TokenUpdateInterval" + + Friend ReadOnly Property TokenUpdateInterval As PropertyValue + + Private ReadOnly Property TokenUpdateIntervalProvider As IFormatProvider +#End Region + Private ReadOnly Property BearerTokenDateUpdate As PropertyValue + + Friend ReadOnly Property UseTokenForTimelines As PropertyValue + + Friend ReadOnly Property UseTokenForSavedPosts As PropertyValue + + Friend ReadOnly Property UseCookiesForTimelines As PropertyValue + Friend ReadOnly Property SavedPostsUserName As PropertyValue - +#End Region +#Region "Other" + Friend ReadOnly Property UseM3U8 As PropertyValue +#End Region +#End Region +#Region "Initializer" Friend Sub New() MyBase.New(RedditSite, "reddit.com") + + Dim token$ With Responser Dim d% = .Decoders.Count .Decoders.ListAddList({SymbolsConverter.Converters.Unicode, SymbolsConverter.Converters.HTML}, LAP.NotContainsOnly) - If d <> .Decoders.Count Then .SaveSettings() + token = .Headers.Value(DeclaredNames.Header_Authorization) End With + + AuthUserName = New PropertyValue(String.Empty, GetType(String)) + AuthPassword = New PropertyValue(String.Empty, GetType(String)) + ApiClientID = New PropertyValue(String.Empty, GetType(String)) + ApiClientSecret = New PropertyValue(String.Empty, GetType(String)) + BearerToken = New PropertyValue(token, GetType(String), Sub(v) Responser.Headers.Add(DeclaredNames.Header_Authorization, v)) + TokenUpdateInterval = New PropertyValue(60 * 12) + TokenUpdateIntervalProvider = New TokenRefreshIntervalProvider + BearerTokenDateUpdate = New PropertyValue(Now.AddYears(-1)) + UseTokenForTimelines = New PropertyValue(False) + UseTokenForSavedPosts = New PropertyValue(False) + UseCookiesForTimelines = New PropertyValue(False) SavedPostsUserName = New PropertyValue(String.Empty, GetType(String)) + UseM3U8 = New PropertyValue(True) + UrlPatternUser = "https://www.reddit.com/{0}/{1}/" ImageVideoContains = "reddit.com" UserRegex = RParams.DM("[htps:/]{7,8}.*?reddit.com/([user]{1,4})/([^/]+)", 0, RegexReturn.ListByMatch, EDP.ReturnValue) End Sub +#End Region +#Region "GetInstance" Friend Overrides Function GetInstance(ByVal What As Download) As IPluginContentProvider Return New UserData End Function - Friend Const ChannelOption As String = "r" - Friend Overrides Function IsMyUser(ByVal UserURL As String) As ExchangeOptions - Dim l As List(Of String) = RegexReplace(UserURL, UserRegex) - If l.ListExists(3) Then - Dim n$ = l(2) - If Not l(1).IsEmptyString AndAlso l(1) = ChannelOption Then n &= $"@{ChannelOption}" - Return New ExchangeOptions(Site, n) - Else - Return Nothing - End If +#End Region +#Region "Available, UpdateRedGifsToken" + Friend Property SessionInterrupted As Boolean = False + Friend Overrides Function ReadyToDownload(ByVal What As Download) As Boolean + If What = Download.Main Then Return Not SessionInterrupted Else Return True End Function Friend Overrides Function Available(ByVal What As Download, ByVal Silent As Boolean) As Boolean Try @@ -72,29 +125,40 @@ Namespace API.Reddit avg.NumToString(New ANumbers With {.FormatOptions = ANumbers.Options.GroupIntegral}) & " outage reports:" & vbCr & dl.ListToString(vbCr) & vbCr & vbCr & "Do you want to continue parsing Reddit data?", "There are outage reports on Reddit"}, vbYesNo) = vbYes Then - UpdateRedGifsToken() - Return trueValue + If trueValue Then UpdateRedGifsToken() + Return trueValue AndAlso UpdateTokenIfRequired() Else Return False End If End If End If End If - UpdateRedGifsToken() - Return trueValue + If trueValue Then UpdateRedGifsToken() + Return trueValue AndAlso UpdateTokenIfRequired() Catch ex As Exception Return ErrorsDescriber.Execute(EDP.SendToLog + EDP.ReturnValue, ex, "[API.Reddit.SiteSettings.Available]", True) End Try End Function + Friend Overrides Sub DownloadDone(ByVal What As Download) + SessionInterrupted = False + MyBase.DownloadDone(What) + End Sub Private Sub UpdateRedGifsToken() DirectCast(Settings(RedGifs.RedGifsSiteKey).Source, RedGifs.SiteSettings).UpdateTokenIfRequired() End Sub - Friend Overrides Sub UserOptions(ByRef Options As Object, ByVal OpenForm As Boolean) - If Options Is Nothing OrElse Not TypeOf Options Is RedditViewExchange Then Options = New RedditViewExchange - If OpenForm Then - Using f As New RedditViewSettingsForm(Options) : f.ShowDialog() : End Using +#End Region +#Region "IsMyUser, GetUserUrl, GetUserPostUrl" + Friend Const ChannelOption As String = "r" + Friend Overrides Function IsMyUser(ByVal UserURL As String) As ExchangeOptions + Dim l As List(Of String) = RegexReplace(UserURL, UserRegex) + If l.ListExists(3) Then + Dim n$ = l(2) + If Not l(1).IsEmptyString AndAlso l(1) = ChannelOption Then n &= $"@{ChannelOption}" + Return New ExchangeOptions(Site, n) + Else + Return Nothing End If - End Sub + End Function Friend Overrides Function GetUserUrl(ByVal User As IPluginContentProvider) As String With DirectCast(User, UserData) : Return String.Format(UrlPatternUser, IIf(.IsChannel, ChannelOption, "user"), .TrueName) : End With End Function @@ -105,5 +169,90 @@ Namespace API.Reddit Return String.Empty End If End Function +#End Region +#Region "UserOptions" + Friend Overrides Sub UserOptions(ByRef Options As Object, ByVal OpenForm As Boolean) + If Options Is Nothing OrElse Not TypeOf Options Is RedditViewExchange Then Options = New RedditViewExchange + If OpenForm Then + Using f As New RedditViewSettingsForm(Options) : f.ShowDialog() : End Using + End If + End Sub +#End Region +#Region "BeginEdit, Update" + Private _OldTokenValue As String = String.Empty + Friend Overrides Sub BeginEdit() + _OldTokenValue = BearerToken.Value + MyBase.BeginEdit() + End Sub + Friend Overrides Sub Update() + If _SiteEditorFormOpened Then + Dim newTokenValue$ = BearerToken.Value + If Not newTokenValue.IsEmptyString AndAlso Not newTokenValue = _OldTokenValue Then BearerTokenDateUpdate.Value = Now + End If + MyBase.Update() + End Sub +#End Region +#Region "Token" + + Private Function TokenPropertiesChecker(ByVal p As IEnumerable(Of PropertyData)) As Boolean + If p.ListExists Then + Dim wrong As New List(Of String) + For i% = 0 To p.Count - 1 + If CStr(p(i).Value).IsEmptyString Then wrong.Add(p(i).Name) + Next + If wrong.Count > 0 Then + MsgBoxE({$"You have not completed the following fields: {wrong.ListToString}." & vbCr & + "To use OAuth authorization, all authorization fields must be filled in.", "Validate token fields"}, vbCritical) + Return False + Else + Return True + End If + End If + Return False + End Function + Private Function UpdateTokenIfRequired() As Boolean + If (CBool(UseTokenForTimelines.Value) Or CBool(UseTokenForSavedPosts.Value)) AndAlso + {AuthUserName.Value, AuthPassword.Value, ApiClientID.Value, ApiClientSecret.Value}.All(Function(v$) Not v.IsEmptyString) Then + If CDate(BearerTokenDateUpdate.Value).AddMinutes(TokenUpdateInterval.Value) <= Now Then Return UpdateToken() + End If + Return True + End Function + Private Overloads Function UpdateToken() As Boolean + Return UpdateToken(AuthUserName.Value, AuthPassword.Value, ApiClientID.Value, ApiClientSecret.Value) + End Function + + Private Overloads Function UpdateToken(ByVal UserName As String, ByVal Password As String, ByVal ClientID As String, ByVal ClientSecret As String) As Boolean + Try + Dim result As Boolean = True + If {UserName, Password, ClientID, ClientSecret}.All(Function(v) Not v.IsEmptyString) Then + result = False + Dim r$ = String.Empty + Using resp As New Responser With { + .Mode = Responser.Modes.Curl, + .Method = "POST", + .CurlArgumentsLeft = $"-d ""grant_type=password&username={UserName}&password={Password}"" --user ""{ClientID}:{ClientSecret}""" + } + r = resp.GetResponse("https://www.reddit.com/api/v1/access_token") + End Using + If Not r.IsEmptyString Then + Using j As EContainer = JsonDocument.Parse(r) + If j.ListExists Then + Dim newToken$ = j.Value("access_token") + If Not newToken.IsEmptyString Then + BearerToken.Value = $"Bearer {newToken}" + BearerTokenDateUpdate.Value = Now + Responser.SaveSettings() + result = True + End If + End If + End Using + End If + End If + Return result + Catch ex As Exception + Return ErrorsDescriber.Execute(EDP.SendToLog + EDP.ReturnValue, ex, "[Reddit.SiteSettings.UpdateToken]", False) + End Try + End Function +#End Region End Class End Namespace \ No newline at end of file diff --git a/SCrawler/API/Reddit/UserData.vb b/SCrawler/API/Reddit/UserData.vb index e8d78c8..3464cd6 100644 --- a/SCrawler/API/Reddit/UserData.vb +++ b/SCrawler/API/Reddit/UserData.vb @@ -22,7 +22,7 @@ Imports UTypes = SCrawler.API.Base.UserMedia.Types Imports CView = SCrawler.API.Reddit.IRedditView.View Imports CPeriod = SCrawler.API.Reddit.IRedditView.Period Namespace API.Reddit - Friend Class UserData : Inherits UserDataBase : Implements IChannelData, IRedditView + Friend Class UserData : Inherits UserDataBase : Implements IChannelLimits, IRedditView #Region "XML names" Private Const Name_TrueName As String = "TrueName" #End Region @@ -46,6 +46,11 @@ Namespace API.Reddit End Property Friend Property IsChannel As Boolean = False Friend Property TrueName As String = String.Empty + Friend Overrides ReadOnly Property SpecialLabels As IEnumerable(Of String) + Get + Return {CannelsLabelName, CannelsLabelName_ChannelsForm, UserLabelName} + End Get + End Property #End Region #Region "Channels Support" #Region "IChannelLimits Support" @@ -70,9 +75,9 @@ Namespace API.Reddit #End Region Friend Property ChannelInfo As Channel Private ReadOnly ChannelPostsNames As List(Of String) - Friend Property SkipExistsUsers As Boolean = False Implements IChannelData.SkipExistsUsers + Friend Property SkipExistsUsers As Boolean = False Private ReadOnly _ExistsUsersNames As List(Of String) - Friend Property SaveToCache As Boolean = False Implements IChannelData.SaveToCache + Friend Property SaveToCache As Boolean = False Friend Function GetNewChannelPosts() As IEnumerable(Of UserPost) If _ContentNew.Count > 0 Then Return (From c As UserMedia In _ContentNew Where Not c.Post.CachedFile.IsEmptyString And c.State = UStates.Downloaded @@ -127,7 +132,7 @@ Namespace API.Reddit End Sub #End Region #Region "Load and Update user info" - Private Sub UpdateNames() + Private Function UpdateNames() As Boolean If TrueName.IsEmptyString Then Dim n$() = Name.Split("@") If n.ListExists Then @@ -145,9 +150,11 @@ Namespace API.Reddit Settings.Labels.Add(l) Labels.ListAddValue(l, LNC) Labels.Sort() + Return True End If End If - End Sub + Return False + End Function Protected Overrides Sub LoadUserInformation_OptionalFields(ByRef Container As XmlFile, ByVal Loading As Boolean) With Container If Loading Then @@ -157,7 +164,7 @@ Namespace API.Reddit TrueName = .Value(Name_TrueName) UpdateNames() Else - UpdateNames() + If UpdateNames() Then .Value(Name_LabelsName) = LabelsString .Add(Name_ViewMode, CInt(ViewMode)) .Add(Name_ViewPeriod, CInt(ViewPeriod)) .Add(Name_IsChannel, IsChannel.BoolToInteger) @@ -198,6 +205,15 @@ Namespace API.Reddit End If End Sub Protected Overrides Sub DownloadDataF(ByVal Token As CancellationToken) + With MySiteSettings + If IsSavedPosts Then + If Not CBool(.UseTokenForSavedPosts.Value) Then Responser.Headers.Remove(DeclaredNames.Header_Authorization) + Else + If Not CBool(.UseCookiesForTimelines.Value) Then Responser.Cookies.Clear() + If Not CBool(.UseTokenForTimelines.Value) Then Responser.Headers.Remove(DeclaredNames.Header_Authorization) + End If + End With + _TotalPostsDownloaded = 0 If IsSavedPosts Then Responser.DecodersError = EDP.ReturnValue @@ -302,7 +318,7 @@ Namespace API.Reddit End If End Using If POST.IsEmptyString And ExistsDetected Then Exit Sub - If Not PostID.IsEmptyString And NewPostDetected Then DownloadDataUser(PostID, Token) + If Not _PostID().IsEmptyString And NewPostDetected Then DownloadDataUser(_PostID(), Token) End If _completed = True Catch ex As Exception @@ -979,8 +995,13 @@ Namespace API.Reddit UserSuspended = True ElseIf .StatusCode = HttpStatusCode.BadGateway Or .StatusCode = HttpStatusCode.ServiceUnavailable Then MyMainLOG = $"[{CInt(Responser.StatusCode)}] Reddit is currently unavailable ({ToString()})" + Throw New Plugin.ExitException With {.Silent = True} ElseIf .StatusCode = HttpStatusCode.GatewayTimeout Then Return 1 + ElseIf .StatusCode = HttpStatusCode.Unauthorized Then + MyMainLOG = $"[{CInt(Responser.StatusCode)}] Reddit credentials expired ({ToString()})" + MySiteSettings.SessionInterrupted = True + Throw New Plugin.ExitException With {.Silent = True} ElseIf .StatusCode = HttpStatusCode.InternalServerError Then If Not IsNothing(EObj) AndAlso IsNumeric(EObj) AndAlso CInt(EObj) = HttpStatusCode.InternalServerError Then Return 1 Return HttpStatusCode.InternalServerError diff --git a/SCrawler/API/Redgifs/SiteSettings.vb b/SCrawler/API/Redgifs/SiteSettings.vb index e664b28..8319762 100644 --- a/SCrawler/API/Redgifs/SiteSettings.vb +++ b/SCrawler/API/Redgifs/SiteSettings.vb @@ -28,7 +28,7 @@ Namespace API.RedGifs Return My.Resources.SiteResources.RedGifsPic_32 End Get End Property - + Friend ReadOnly Property Token As PropertyValue Private ReadOnly Property UserAgent As PropertyValue @@ -38,22 +38,6 @@ Namespace API.RedGifs Friend ReadOnly Property TokenUpdateInterval As PropertyValue - Private Class TokenIntervalProvider : Inherits FieldsCheckerProviderBase - Public Overrides Function Convert(ByVal Value As Object, ByVal DestinationType As Type, ByVal Provider As IFormatProvider, - Optional ByVal NothingArg As Object = Nothing, Optional ByVal e As ErrorsDescriber = Nothing) As Object - TypeError = False - ErrorMessage = String.Empty - If Not ACheck(Of Integer)(Value) Then - TypeError = True - ElseIf CInt(Value) > 0 Then - Return Value - Else - ErrorMessage = $"The value of [{Name}] field must be greater than or equal to 1" - HasError = True - End If - Return Nothing - End Function - End Class Private ReadOnly Property TokenUpdateIntervalProvider As IFormatProvider #End Region @@ -64,7 +48,6 @@ Namespace API.RedGifs Dim t$ = String.Empty With Responser .Mode = Responser.Modes.WebClient - If Not .UserAgentExists Then .UserAgent = ParserUserAgent .ClientWebUseCookies = False .ClientWebUseHeaders = True t = .Headers.Value(TokenName) @@ -73,7 +56,8 @@ Namespace API.RedGifs UserAgent = New PropertyValue(Responser.UserAgent, GetType(String), Sub(v) UpdateResponse(NameOf(UserAgent), v)) TokenLastDateUpdated = New PropertyValue(Now.AddYears(-1), GetType(Date)) TokenUpdateInterval = New PropertyValue(60 * 12, GetType(Integer)) - TokenUpdateIntervalProvider = New TokenIntervalProvider + TokenUpdateIntervalProvider = New TokenRefreshIntervalProvider + _AllowUserAgentUpdate = False UrlPatternUser = "https://www.redgifs.com/users/{0}/" UserRegex = RParams.DMS("[htps:/]{7,8}.*?redgifs.com/users/([^/]+)", 1) ImageVideoContains = "redgifs" diff --git a/SCrawler/API/ThisVid/Declarations.vb b/SCrawler/API/ThisVid/Declarations.vb index a95bc94..bec2da1 100644 --- a/SCrawler/API/ThisVid/Declarations.vb +++ b/SCrawler/API/ThisVid/Declarations.vb @@ -18,5 +18,9 @@ Namespace API.ThisVid Friend ReadOnly RegExAlbumID As RParams = RParams.DMS("albumId:.'(\d+)'", 1) Friend ReadOnly RegExAlbumImagesList As RParams = RParams.DMS("""([^""]+?image\d+/?)""", 1, RegexReturn.List, EDP.ReturnValue) Friend ReadOnly RegExAlbumImageUrl As RParams = RParams.DMS("\ @@ -28,6 +30,8 @@ Namespace API.ThisVid Friend ReadOnly Property DownloadPublic As PropertyValue Friend ReadOnly Property DownloadPrivate As PropertyValue + + Friend ReadOnly Property DownloadFavourite As PropertyValue = 3 AndAlso Not data(2).IsEmptyString Then + Dim mode As SiteModes + Dim n$ = String.Empty, opt$ = String.Empty + Dim __data As Func(Of Integer, String) = Function(i) If(data.Count - 1 >= i, data(i), String.Empty) + + Select Case data(2) + Case P_Albums + Case P_Tags + mode = SiteModes.Tags + If Not __data(3).IsEmptyString Then + n = __data(3) + If Not __data(4).IsEmptyString AndAlso Not IsNumeric(__data(4)) Then opt = __data(4) + End If + Case P_Categories + mode = SiteModes.Categories + If Not __data(3).IsEmptyString Then + n = __data(3) + If Not __data(4).IsEmptyString AndAlso Not IsNumeric(__data(4)) Then opt = __data(4) + End If + Case Else + mode = SiteModes.Search + If Not __data(3).IsEmptyString AndAlso Not IsNumeric(__data(3)) Then n = __data(3) + If n.IsEmptyString AndAlso Not __data(4).IsEmptyString AndAlso Not IsNumeric(__data(4)) Then n = __data(4) + If Not n.IsEmptyString Then n = n.TrimStart("?", "q", "=") + If Not n.IsEmptyString Then + If __data(2).IsEmptyString Then + n = String.Empty + Else + opt = __data(2) + End If + End If + End Select + + opt = $"{n}@{opt}" + n = n.StringRemoveWinForbiddenSymbols + If Not n.IsEmptyString Then + n = $"{CInt(mode)}@{n}" + Return New ExchangeOptions(Site, n) With {.Options = opt} + End If + End If + End If + End If + End If + Return Nothing + End Function Friend Overrides Sub UserOptions(ByRef Options As Object, ByVal OpenForm As Boolean) If Options Is Nothing OrElse Not TypeOf Options Is UserExchangeOptions Then Options = New UserExchangeOptions(Me) If OpenForm Then diff --git a/SCrawler/API/ThisVid/UserData.vb b/SCrawler/API/ThisVid/UserData.vb index 6958ede..6c4c57d 100644 --- a/SCrawler/API/ThisVid/UserData.vb +++ b/SCrawler/API/ThisVid/UserData.vb @@ -18,7 +18,11 @@ Namespace API.ThisVid #Region "XML names" Private Const Name_DownloadPublic As String = "DownloadPublic" Private Const Name_DownloadPrivate As String = "DownloadPrivate" + Private Const Name_DownloadFavourite As String = "DownloadFavourite" Private Const Name_DifferentFolders As String = "DifferentFolders" + Private Const Name_TrueName As String = "TrueName" + Private Const Name_SiteMode As String = "SiteMode" + Private Const Name_Arguments As String = "Arguments" #End Region #Region "Structures" Private Structure Album : Implements IRegExCreator @@ -34,21 +38,127 @@ Namespace API.ThisVid End Structure #End Region #Region "Declarations" + Friend Overrides ReadOnly Property FeedIsUser As Boolean + Get + Return IsUser + End Get + End Property Friend Property DownloadPublic As Boolean = True Friend Property DownloadPrivate As Boolean = True + Friend Property DownloadFavourite As Boolean = False Friend Property DifferentFolders As Boolean = True + Friend Property TrueName As String = String.Empty + Friend Property SiteMode As SiteModes = SiteModes.User + Private Property Arguments As String = String.Empty + Friend Overrides ReadOnly Property SpecialLabels As IEnumerable(Of String) + Get + Return {SearchRequestLabelName} + End Get + End Property + Friend Property QueryString As String + Get + If SiteMode = SiteModes.User Then + Return String.Empty + Else + Return GetNonUserUrl(0) + End If + End Get + Set(ByVal q As String) + UpdateUserOptions(True, q) + End Set + End Property + Friend ReadOnly Property IsUser As Boolean + Get + Return SiteMode = SiteModes.User + End Get + End Property + Private ReadOnly Property MySettings As SiteSettings + Get + Return DirectCast(HOST.Source, SiteSettings) + End Get + End Property #End Region #Region "Loaders" + Private Function UpdateUserOptions(Optional ByVal Force As Boolean = False, Optional ByVal NewUrl As String = Nothing) As Boolean + If Not Force OrElse (Not SiteMode = SiteModes.User AndAlso Not NewUrl.IsEmptyString AndAlso MyFileSettings.Exists) Then + Dim eObj As Plugin.ExchangeOptions = Nothing + If Force Then eObj = MySettings.IsMyUser(NewUrl) + If (Force And Not eObj.UserName.IsEmptyString) Or (Not Force And TrueName.IsEmptyString) Then + Dim n$() = If(Force, eObj.UserName, Name).Split("@") + If n.ListExists(2) Then + + If Force And SiteMode = SiteModes.User Then Return False + + Dim __TrueName$, __Arguments$ + Dim __Mode As SiteModes + Dim __ForceApply As Boolean = False + Dim opt$() = If(Force, eObj.Options, Options).Split("@") + __Mode = CInt(n(0)) + If opt.Length > 1 Then + __Arguments = opt.ListTake(0, 100, EDP.ReturnValue).ListToString(String.Empty) + Else + __Arguments = String.Empty + End If + __TrueName = n(1) + + If Force AndAlso (Not TrueName = __TrueName Or Not SiteMode = __Mode) Then + If ValidateChangeSearchOptions(ToStringForLog, $"{__Mode}: {__TrueName}", $"{SiteMode}: {TrueName}") Then + __ForceApply = True + Else + Return False + End If + End If + + Arguments = __Arguments + Options = If(Force, eObj.Options, Options) + If Not Force Then + TrueName = __TrueName + SiteMode = __Mode + Settings.Labels.Add(SearchRequestLabelName) + Labels.ListAddValue(SearchRequestLabelName, LNC) + Labels.Sort() + UserSiteName = $"{SiteMode}: {TrueName}" + If FriendlyName.IsEmptyString Then FriendlyName = UserSiteName + ElseIf Force And __ForceApply Then + TrueName = __TrueName + SiteMode = __Mode + End If + Return True + Else + SiteMode = SiteModes.User + TrueName = Name + End If + End If + End If + Return False + End Function Protected Overrides Sub LoadUserInformation_OptionalFields(ByRef Container As XmlFile, ByVal Loading As Boolean) With Container If Loading Then DownloadPublic = .Value(Name_DownloadPublic).FromXML(Of Boolean)(True) DownloadPrivate = .Value(Name_DownloadPrivate).FromXML(Of Boolean)(True) + DownloadFavourite = .Value(Name_DownloadFavourite).FromXML(Of Boolean)(False) DifferentFolders = .Value(Name_DifferentFolders).FromXML(Of Boolean)(True) + TrueName = .Value(Name_TrueName) + SiteMode = .Value(Name_SiteMode).FromXML(Of Integer)(SiteModes.User) + Arguments = .Value(Name_Arguments) + UpdateUserOptions() Else + If UpdateUserOptions() Then + .Value(Name_LabelsName) = LabelsString + .Value(Name_UserSiteName) = UserSiteName + .Value(Name_FriendlyName) = FriendlyName + End If .Add(Name_DownloadPublic, DownloadPublic.BoolToInteger) .Add(Name_DownloadPrivate, DownloadPrivate.BoolToInteger) + .Add(Name_DownloadFavourite, DownloadFavourite.BoolToInteger) .Add(Name_DifferentFolders, DifferentFolders.BoolToInteger) + .Add(Name_TrueName, TrueName) + .Add(Name_SiteMode, CInt(SiteMode)) + .Add(Name_Arguments, Arguments) + + 'Debug.WriteLine(GetNonUserUrl(0)) + 'Debug.WriteLine(GetNonUserUrl(2)) End If End With End Sub @@ -60,7 +170,9 @@ Namespace API.ThisVid With DirectCast(Obj, UserExchangeOptions) DownloadPublic = .DownloadPublic DownloadPrivate = .DownloadPrivate + DownloadFavourite = .DownloadFavourite DifferentFolders = .DifferentFolders + QueryString = .QueryString End With End If End Sub @@ -111,37 +223,73 @@ Namespace API.ThisVid End Function #End Region #Region "Download functions" + Private AddedCount As Integer = 0 Protected Overrides Sub DownloadDataF(ByVal Token As CancellationToken) + AddedCount = 0 + Responser.Cookies.ChangedAllowInternalDrop = False + Responser.Cookies.Changed = False If ID.IsEmptyString Then ID = Name - If IsValid() Then + If Not IsUser OrElse IsValid() Then If IsSavedPosts Then - DownloadData(1, True, Token) + DownloadData(1, 0, Token) DownloadData_Images(Token) Else - If DownloadVideos Then - If DownloadPublic Then DownloadData(1, True, Token) - If DownloadPrivate Then DownloadData(1, False, Token) + If IsUser Then + If DownloadVideos Then + If DownloadPublic Then DownloadData(1, 0, Token) + If DownloadPrivate Then DownloadData(1, 1, Token) + If DownloadFavourite Then DownloadData(1, 2, Token) + End If + If DownloadImages And Not IsSubscription Then DownloadData_Images(Token) + Else + DownloadData(1, 0, Token) End If - If DownloadImages Then DownloadData_Images(Token) End If End If + If Responser.Cookies.Changed Then MySettings.UpdateCookies(Responser) : Responser.Cookies.Changed = False End Sub - Private Overloads Sub DownloadData(ByVal Page As Integer, ByVal IsPublic As Boolean, ByVal Token As CancellationToken) + Friend Function GetNonUserUrl(ByVal Page As Integer) As String + Dim url$ = String.Empty + Select Case SiteMode + Case SiteModes.Tags + url = $"https://thisvid.com/{SiteSettings.P_Tags}/{TrueName}/" + If Not Arguments.IsEmptyString Then url &= $"{Arguments}/" + If Page > 1 Then url &= $"{Page}/" + Case SiteModes.Categories + url = $"https://thisvid.com/{SiteSettings.P_Categories}/{TrueName}/" + If Not Arguments.IsEmptyString Then url &= $"{Arguments}/" + If Page > 1 Then url &= $"{Page}/" + Case SiteModes.Search + If Not Arguments.IsEmptyString Then + url = $"https://thisvid.com/{Arguments}/" + If Page > 1 Then url &= $"{Page}/" + url &= $"?q={TrueName}/" + End If + End Select + Return url + End Function + Private Overloads Sub DownloadData(ByVal Page As Integer, ByVal Model As Byte, ByVal Token As CancellationToken) Dim URL$ = String.Empty Try ProgressPre.ChangeMax(1) + Dim limit% = If(DownloadTopCount, -1) Dim p$ = IIf(Page = 1, String.Empty, $"{Page}/") If IsSavedPosts Then URL = $"https://thisvid.com/my_favourite_videos/{p}" + ElseIf IsUser Then + URL = $"https://thisvid.com/members/{ID}/{Interaction.Switch(Model = 0, "public", Model = 1, "private", Model = 2, "favourite")}_videos/{p}" Else - URL = $"https://thisvid.com/members/{ID}/{IIf(IsPublic, "public", "private")}_videos/{p}" + URL = GetNonUserUrl(Page) + If URL.IsEmptyString Then Throw New ArgumentNullException With {.HelpLink = 1} End If ThrowAny(Token) ProgressPre.Perform() Dim r$ = Responser.GetResponse(URL) Dim cBefore% = _TempMediaList.Count If Not r.IsEmptyString Then - Dim __SpecialFolder$ = IIf(DifferentFolders, IIf(IsPublic, "Public", "Private"), String.Empty) + Dim __SpecialFolder$ = If(DifferentFolders And Not IsSavedPosts And IsUser, + Interaction.Switch(Model = 0, "Public", Model = 1, "Private", Model = 2, "Favourite"), + String.Empty) Dim l As List(Of String) = RegexReplace(r, If(IsSavedPosts, RegExVideoListSavedPosts, RegExVideoList)) If l.ListExists Then For Each u$ In l @@ -149,6 +297,8 @@ Namespace API.ThisVid If Not _TempPostsList.Contains(u) Then _TempPostsList.Add(u) _TempMediaList.Add(New UserMedia(u) With {.Type = UserMedia.Types.VideoPre, .SpecialFolder = __SpecialFolder}) + AddedCount += 1 + If limit > 0 And AddedCount >= limit Then Exit Sub Else Exit Sub End If @@ -156,7 +306,8 @@ Namespace API.ThisVid Next End If End If - If Not cBefore = _TempMediaList.Count Then DownloadData(Page + 1, IsPublic, Token) + If Not cBefore = _TempMediaList.Count And (IsUser Or Page < 1000) Then DownloadData(Page + 1, Model, Token) + Catch aex As ArgumentNullException When aex.HelpLink = 1 Catch ex As Exception ProcessException(ex, Token, $"videos downloading error [{URL}]") End Try @@ -239,53 +390,104 @@ Namespace API.ThisVid #End Region #Region "ReparseVideo" Protected Overrides Sub ReparseVideo(ByVal Token As CancellationToken) + If IsSubscription Then + ReparseVideoSubscriptions(Token) + Else + Try + If _TempMediaList.Count > 0 Then + Dim u As UserMedia + Dim dirCmd$ = String.Empty + Dim f As SFile = Settings.YtdlpFile.File + Dim n$ + Dim cookieFile As SFile = MySettings.CookiesNetscapeFile + Dim command$ + Dim e As EContainer + ProgressPre.ChangeMax(_TempMediaList.Count) + For i% = _TempMediaList.Count - 1 To 0 Step -1 + ProgressPre.Perform() + u = _TempMediaList(i) + If u.Type = UserMedia.Types.VideoPre Then + ThrowAny(Token) + command = $"""{f}"" --verbose --dump-json " + If cookieFile.Exists Then command &= $"--no-cookies-from-browser --cookies ""{cookieFile}"" " + command &= u.URL + e = GetJson(command) + If Not e Is Nothing Then + u.URL = e.Value("url") + u.Post = New UserPost(e.Value("id"), ADateTime.ParseUnix32(e.Value("epoch"))) + If u.Post.Date.HasValue Then + Select Case CheckDatesLimit(u.Post.Date.Value, Nothing) + Case DateResult.Skip : _TempPostsList.ListAddValue(u.Post.ID, LNC) : _TempMediaList.RemoveAt(i) : Continue For + Case DateResult.Exit : Exit Sub + End Select + End If + n = TitleHtmlConverter(e.Value("title")) + If Not n.IsEmptyString Then n = n.Replace("ThisVid.com", String.Empty).StringTrim.StringTrimEnd("-").StringTrim + If n.IsEmptyString Then n = u.Post.ID + If n.IsEmptyString Then n = "VideoFile" + u.File = $"{n}.mp4" + If u.URL.IsEmptyString OrElse (Not u.Post.ID.IsEmptyString AndAlso _TempPostsList.Contains(u.Post.ID)) Then + _TempMediaList.RemoveAt(i) + Else + u.Type = UserMedia.Types.Video + _TempPostsList.Add(u.Post.ID) + _TempMediaList(i) = u + End If + e.Dispose() + End If + End If + Next + End If + Catch ex As Exception + ProcessException(ex, Token, "video reparsing error") + End Try + End If + End Sub + Private Sub ReparseVideoSubscriptions(ByVal Token As CancellationToken) Try If _TempMediaList.Count > 0 Then Dim u As UserMedia - Dim dirCmd$ = String.Empty - Dim f As SFile = Settings.YtdlpFile.File - Dim n$ - Dim cookieFile As SFile = DirectCast(HOST.Source, SiteSettings).CookiesNetscapeFile - Dim command$ - Dim e As EContainer - ProgressPre.ChangeMax(_TempMediaList.Count) + Dim n$, r$ + Dim c% = 0 + Progress.Maximum += _TempMediaList.Count For i% = _TempMediaList.Count - 1 To 0 Step -1 - ProgressPre.Perform() + Progress.Perform() u = _TempMediaList(i) If u.Type = UserMedia.Types.VideoPre Then - ThrowAny(Token) - command = $"""{f}"" --verbose --dump-json " - If cookieFile.Exists Then command &= $"--no-cookies-from-browser --cookies ""{cookieFile}"" " - command &= u.URL - e = GetJson(command) - If Not e Is Nothing Then - u.URL = e.Value("url") - u.Post = New UserPost(e.Value("id"), ADateTime.ParseUnix32(e.Value("epoch"))) - If u.Post.Date.HasValue Then - Select Case CheckDatesLimit(u.Post.Date.Value, Nothing) - Case DateResult.Skip : _TempPostsList.ListAddValue(u.Post.ID, LNC) : _TempMediaList.RemoveAt(i) : Continue For - Case DateResult.Exit : Exit Sub - End Select + If Not DownloadTopCount.HasValue OrElse c <= DownloadTopCount.Value Then + ThrowAny(Token) + r = Responser.GetResponse(u.URL,, EDP.ReturnValue) + If Not r.IsEmptyString Then + n = TitleHtmlConverter(RegexReplace(r, RegExVideoTitle)) + u.Post.ID = u.URL + If Not n.IsEmptyString Then n = n.Replace("ThisVid.com", String.Empty).StringTrim.StringTrimEnd("-").StringTrim + If n.IsEmptyString Then n = TitleHtmlConverter(u.URL.Replace("https://thisvid.com/videos/", String.Empty).StringTrim.StringTrimEnd("-").StringTrim) + If n.IsEmptyString Then n = "VideoFile" + u.File = $"{n}.mp4" + u.PictureOption = n + u.URL = RegexReplace(r, Regex_VideosThumb_OG_IMAGE) + If u.URL.IsEmptyString Then u.URL = RegexReplace(r, RegExVideosThumb1) + If u.URL.IsEmptyString Then u.URL = RegexReplace(r, RegExVideosThumb2) + If Not u.URL.IsEmptyString Then + u.URL = LinkFormatterSecure(u.URL) + u.Type = UserMedia.Types.Video + _TempPostsList.Add(u.Post.ID) + _TempMediaList(i) = u + c += 1 + Else + _TempMediaList.RemoveAt(i) + End If End If - n = TitleHtmlConverter(e.Value("title")) - If Not n.IsEmptyString Then n = n.Replace("ThisVid.com", String.Empty).StringTrim.StringTrimEnd("-").StringTrim - If n.IsEmptyString Then n = u.Post.ID - If n.IsEmptyString Then n = "VideoFile" - u.File = $"{n}.mp4" - If u.URL.IsEmptyString OrElse (Not u.Post.ID.IsEmptyString AndAlso _TempPostsList.Contains(u.Post.ID)) Then - _TempMediaList.RemoveAt(i) - Else - u.Type = UserMedia.Types.Video - _TempPostsList.Add(u.Post.ID) - _TempMediaList(i) = u - End If - e.Dispose() + Else + _TempMediaList.RemoveAt(i) End If End If Next End If Catch ex As Exception - ProcessException(ex, Token, "video reparsing error") + ProcessException(ex, Token, "subscriptions video reparsing error") + Finally + If Responser.Cookies.Changed Then MySettings.UpdateCookies(Responser) : Responser.Cookies.Changed = False End Try End Sub #End Region diff --git a/SCrawler/API/ThisVid/UserExchangeOptions.vb b/SCrawler/API/ThisVid/UserExchangeOptions.vb index 3b91793..3bf8a38 100644 --- a/SCrawler/API/ThisVid/UserExchangeOptions.vb +++ b/SCrawler/API/ThisVid/UserExchangeOptions.vb @@ -8,24 +8,29 @@ ' but WITHOUT ANY WARRANTY Imports SCrawler.Plugin.Attributes Namespace API.ThisVid - Friend Class UserExchangeOptions + Friend Class UserExchangeOptions : Inherits Xhamster.UserExchangeOptions Friend Property DownloadPublic As Boolean = True Friend Property DownloadPrivate As Boolean = True + + Friend Property DownloadFavourite As Boolean = False Friend Property DifferentFolders As Boolean = True Private ReadOnly Property MySettings As SiteSettings Friend Sub New(ByVal s As SiteSettings) DownloadPublic = s.DownloadPublic.Value DownloadPrivate = s.DownloadPrivate.Value + DownloadFavourite = s.DownloadFavourite.Value DifferentFolders = s.DifferentFolders.Value MySettings = s End Sub Friend Sub New(ByVal u As UserData) DownloadPublic = u.DownloadPublic DownloadPrivate = u.DownloadPrivate + DownloadFavourite = u.DownloadFavourite DifferentFolders = u.DifferentFolders + QueryString = u.QueryString MySettings = u.HOST.Source End Sub End Class diff --git a/SCrawler/API/TikTok/Declarations.vb b/SCrawler/API/TikTok/Declarations.vb index 2b030da..de31241 100644 --- a/SCrawler/API/TikTok/Declarations.vb +++ b/SCrawler/API/TikTok/Declarations.vb @@ -9,53 +9,8 @@ Imports PersonalUtilities.Functions.RegularExpressions Namespace API.TikTok Friend Module Declarations - Friend ReadOnly RegexEnvir As New RegexParseEnvir - Friend ReadOnly CheckDateProvider As New CustomProvider(Function(v) IIf(CType(v, Date?).HasValue, CObj(CType(v, Date?).Value), Nothing)) - Friend Class RegexParseEnvir - Private ReadOnly UrlIdRegex As RParams = RParams.DMS("http[s]?://[w\.]{0,4}tiktok.com/[^/]+?/video/(\d+)", 1, EDP.ReturnValue) - Private ReadOnly RegexItemsArrPre As RParams = RParams.DMS("ItemList"":\{""user-post"":\{""list"":\[([^\[]+)\]", 1) - Private ReadOnly RegexItemsArr As RParams = RParams.DM("\d+", 0, RegexReturn.List) - Private ReadOnly VideoPattern As New RParams(String.Empty, Nothing, 1, EDP.ReturnValue) - Private ReadOnly DatePattern As New RParams(String.Empty, Nothing, 1, EDP.ReturnValue) - Private ReadOnly UserIdFromVideo As RParams = RParams.DMS("/\?a=(\d+)", 1, EDP.ReturnValue) - Friend Function GetIDList(ByVal r As String) As List(Of String) - Try - If Not r.IsEmptyString Then - Dim l As List(Of String) = Nothing - Dim IdArr$ = RegexReplace(r, RegexItemsArrPre) - If Not IdArr.IsEmptyString Then l = RegexReplace(IdArr, RegexItemsArr) - If l.ListExists Then l.RemoveAll(Function(id) id.IsEmptyString) - Return l - End If - Return Nothing - Catch ex As Exception - Return ErrorsDescriber.Execute(EDP.SendToLog, ex, "[API.TikTok.RegexParseEnvir.GetIDList]") - End Try - End Function - Friend Function GetVideoData(ByVal r As String, ByVal ID As String, ByRef URL As String, ByRef [Date] As Date?) As Boolean - Try - [Date] = Nothing - URL = String.Empty - If Not r.IsEmptyString Then - VideoPattern.Pattern = "video"":\{""id"":""" & ID & """[^\}]+?""downloadAddr"":""([^""]+)""" - DatePattern.Pattern = """:{""id"":""" & ID & """,""desc"":.+?""createTime"":""(\d+)" - Dim u$ = RegexReplace(r, VideoPattern) - If Not u.IsEmptyString Then URL = SymbolsConverter.Unicode.Decode(u, EDP.ReturnValue) - Dim d$ = RegexReplace(r, DatePattern) - If Not d.IsEmptyString Then [Date] = ADateTime.ParseUnix32(d) - Return Not URL.IsEmptyString - End If - Return False - Catch ex As Exception - Return ErrorsDescriber.Execute(EDP.SendToLog, ex, "[API.TikTok.RegexParseEnvir.GetVideoData]", False) - End Try - End Function - Friend Function ExtractPostID(ByVal URL As String) As String - If Not URL.IsEmptyString Then Return RegexReplace(URL, UrlIdRegex) Else Return String.Empty - End Function - Friend Function ExtractUserID(ByVal VideoUrl As String) As String - If Not VideoUrl.IsEmptyString Then Return RegexReplace(VideoUrl, UserIdFromVideo) Else Return String.Empty - End Function - End Class + Friend ReadOnly SimpleDateConverter As New ADateTime("yyyyMMdd") + Friend ReadOnly RegexTagsReplacer As RParams = RParams.DM("#\w+\s?", -1, RegexReturn.Replace, + CType(Function(input$) String.Empty, Func(Of String, String)), EDP.ReturnValue) End Module End Namespace \ No newline at end of file diff --git a/SCrawler/API/TikTok/SiteSettings.vb b/SCrawler/API/TikTok/SiteSettings.vb index bf9df98..3105533 100644 --- a/SCrawler/API/TikTok/SiteSettings.vb +++ b/SCrawler/API/TikTok/SiteSettings.vb @@ -11,7 +11,7 @@ Imports SCrawler.Plugin Imports SCrawler.Plugin.Attributes Imports PersonalUtilities.Functions.RegularExpressions Namespace API.TikTok - + Friend Class SiteSettings : Inherits SiteSettingsBase Friend Overrides ReadOnly Property Icon As Icon Get @@ -23,8 +23,22 @@ Namespace API.TikTok Return My.Resources.SiteResources.TikTokPic_192 End Get End Property + + Friend Property RemoveTagsFromTitle As PropertyValue + + Friend Property TitleUseNative As PropertyValue + + Friend Property TitleUseNativeSTD As PropertyValue + + Friend Property TitleAddVideoID As PropertyValue Friend Sub New() MyBase.New("TikTok", "www.tiktok.com") + RemoveTagsFromTitle = New PropertyValue(False) + TitleUseNative = New PropertyValue(True) + TitleUseNativeSTD = New PropertyValue(False) + TitleAddVideoID = New PropertyValue(True) + UseNetscapeCookies = True UrlPatternUser = "https://www.tiktok.com/@{0}/" UserRegex = RParams.DMS("[htps:/]{7,8}.*?tiktok.com/@([^/]+)", 1) ImageVideoContains = "tiktok.com" @@ -32,12 +46,14 @@ Namespace API.TikTok Friend Overrides Function GetInstance(ByVal What As ISiteSettings.Download) As IPluginContentProvider Return New UserData End Function - Friend Overrides Function BaseAuthExists() As Boolean - Return Responser.CookiesExists - End Function Friend Overrides Function Available(ByVal What As ISiteSettings.Download, ByVal Silent As Boolean) As Boolean - 'TODO: TikTok disabled - Return False + Return Settings.YtdlpFile.Exists End Function + Friend Overrides Sub UserOptions(ByRef Options As Object, ByVal OpenForm As Boolean) + If Options Is Nothing OrElse Not TypeOf Options Is UserExchangeOptions Then Options = New UserExchangeOptions(Me) + If OpenForm Then + Using f As New InternalSettingsForm(Options, Me, False) : f.ShowDialog() : End Using + End If + End Sub End Class End Namespace \ No newline at end of file diff --git a/SCrawler/API/TikTok/UserData.vb b/SCrawler/API/TikTok/UserData.vb index 9ff3590..b6425d1 100644 --- a/SCrawler/API/TikTok/UserData.vb +++ b/SCrawler/API/TikTok/UserData.vb @@ -8,65 +8,261 @@ ' but WITHOUT ANY WARRANTY Imports System.Threading Imports SCrawler.API.Base +Imports SCrawler.API.YouTube.Objects Imports PersonalUtilities.Functions.XML Imports PersonalUtilities.Functions.RegularExpressions -Imports PersonalUtilities.Tools.Web.Clients +Imports PersonalUtilities.Tools +Imports PersonalUtilities.Tools.Web.Documents.JSON Namespace API.TikTok Friend Class UserData : Inherits UserDataBase - Protected Overrides Sub LoadUserInformation_OptionalFields(ByRef Container As XmlFile, ByVal Loading As Boolean) +#Region "XML names" + Private Const Name_RemoveTagsFromTitle As String = "RemoveTagsFromTitle" + Private Const Name_TitleUseNative As String = "TitleUseNative" + Private Const Name_TitleAddVideoID As String = "TitleAddVideoID" + Private Const Name_LastDownloadDate As String = "LastDownloadDate" +#End Region +#Region "Declarations" + Private ReadOnly Property MySettings As SiteSettings + Get + Return HOST.Source + End Get + End Property + Private ReadOnly Property RootCacheTikTok As ICacheKeeper + Get + With Settings.Cache + Dim f As SFile = $"{Settings.Cache.RootDirectory.PathWithSeparator}TikTokCache\" + If .ContainsFolder(f) Then + Return .GetInstance(f) + Else + f.Exists(SFO.Path, True) + With .NewInstance(Of BatchFileExchanger)(f) + .DeleteCacheOnDispose = False + .DeleteRootOnDispose = False + Return .Self + End With + End If + End With + End Get + End Property + Friend Property RemoveTagsFromTitle As Boolean = False + Friend Property TitleUseNative As Boolean = True + Friend Property TitleAddVideoID As Boolean = True + Private Property LastDownloadDate As Date? = Nothing +#End Region +#Region "Exchange" + Friend Overrides Function ExchangeOptionsGet() As Object + Return New UserExchangeOptions(Me) + End Function + Friend Overrides Sub ExchangeOptionsSet(ByVal Obj As Object) + If Not Obj Is Nothing AndAlso TypeOf Obj Is UserExchangeOptions Then + With DirectCast(Obj, UserExchangeOptions) + RemoveTagsFromTitle = .RemoveTagsFromTitle + TitleUseNative = .TitleUseNative + TitleAddVideoID = .TitleAddVideoID + End With + End If End Sub +#End Region +#Region "Loader" + Protected Overrides Sub LoadUserInformation_OptionalFields(ByRef Container As XmlFile, ByVal Loading As Boolean) + With Container + If Loading Then + RemoveTagsFromTitle = .Value(Name_RemoveTagsFromTitle).FromXML(Of Boolean)(False) + TitleUseNative = .Value(Name_TitleUseNative).FromXML(Of Boolean)(True) + TitleAddVideoID = .Value(Name_TitleAddVideoID).FromXML(Of Boolean)(True) + LastDownloadDate = AConvert(Of Date)(.Value(Name_LastDownloadDate), ADateTime.Formats.BaseDateTime, Nothing) + Else + .Add(Name_RemoveTagsFromTitle, RemoveTagsFromTitle.BoolToInteger) + .Add(Name_TitleUseNative, TitleUseNative.BoolToInteger) + .Add(Name_TitleAddVideoID, TitleAddVideoID.BoolToInteger) + .Add(Name_LastDownloadDate, AConvert(Of String)(LastDownloadDate, AModes.XML, ADateTime.Formats.BaseDateTime, String.Empty)) + End If + End With + End Sub +#End Region +#Region "Initializer" Friend Sub New() SeparateVideoFolder = False + UseInternalDownloadFileFunction = True End Sub +#End Region +#Region "Download functions" Protected Overrides Sub DownloadDataF(ByVal Token As CancellationToken) - Dim URL$ = String.Empty - Try - Dim PostIDs As List(Of String) - Dim PostDate As Date? = Nothing - Dim PostURL$ = String.Empty - Dim r$ - URL = $"https://www.tiktok.com/@{Name}" - r = Responser.GetResponse(URL) - PostIDs = RegexEnvir.GetIDList(r) - If PostIDs.ListExists Then - For Each __id$ In PostIDs - If Not _TempPostsList.Contains(__id) Then - _TempPostsList.Add(__id) - If RegexEnvir.GetVideoData(r, __id, PostURL, PostDate) Then - Select Case CheckDatesLimit(PostDate, CheckDateProvider) - Case DateResult.Skip : Continue For - Case DateResult.Exit : Exit Sub - End Select - If ID.IsEmptyString And Not PostURL.IsEmptyString Then ID = RegexEnvir.ExtractUserID(PostURL) - _TempMediaList.ListAddValue(MediaFromData(PostURL, __id, PostDate)) - End If - Else - Exit Sub + Dim URL$ = $"https://www.tiktok.com/@{Name}" + Using cache As CacheKeeper = CreateCache() + Try + Dim postID$, title$, postUrl$ + Dim postDate As Date? + Dim dateAfterC As Date? = Nothing + Dim dateBefore As Date? = DownloadDateTo + Dim dateAfter As Date? = DownloadDateFrom + + If _ContentList.Count > 0 Then + With (From d In _ContentList Where d.Post.Date.HasValue Select d.Post.Date.Value) + If .ListExists Then dateAfterC = .Min + End With + End If + + With {CStr(AConvert(Of String)(dateAfter, SimpleDateConverter, String.Empty)).FromXML(Of Integer)(-1), + CStr(AConvert(Of String)(dateAfterC, SimpleDateConverter, String.Empty)).FromXML(Of Integer)(-1)}.ListWithRemove(Function(d) d = -1) + If .ListExists Then dateAfter = AConvert(Of Date)(CStr(.Min), SimpleDateConverter, Nothing) + End With + + If LastDownloadDate.HasValue Then + If dateAfter.HasValue And Not DownloadDateFrom.HasValue Then + If (LastDownloadDate.Value - dateAfter.Value).TotalDays > 1 Then dateAfter = dateAfter.Value.AddDays(1) End If - Next - End If - Catch ex As Exception - ProcessException(ex, Token, $"data downloading error [{URL}]") - End Try + End If + + Using b As New TokenBatch(Token) + b.ChangeDirectory(cache) + b.Encoding = BatchExecutor.UnicodeEncoding + b.Execute(CreateYTCommand(cache.RootDirectory, URL, False, dateBefore, dateAfter)) + End Using + + ThrowAny(Token) + + Dim files As List(Of SFile) = SFile.GetFiles(cache, "*.json",, EDP.ReturnValue) + If files.ListExists Then + Dim j As EContainer + For Each file As SFile In files + j = JsonDocument.Parse(file.GetText, EDP.ReturnValue) + If j.ListExists Then + If j.Value("_type").StringToLower = "video" Then + postID = j.Value("id") + If Not _TempPostsList.Contains(postID) Then + _TempPostsList.Add(postID) + Else + Exit Sub + End If + title = j.Value("title").StringRemoveWinForbiddenSymbols + If title.IsEmptyString Or Not TitleUseNative Then + title = postID + Else + If RemoveTagsFromTitle Then title = RegexReplace(title, RegexTagsReplacer) + title = title.StringTrim + If title.IsEmptyString Then + title = postID + ElseIf TitleAddVideoID Then + title &= $" ({postID})" + End If + End If + postDate = AConvert(Of Date)(j.Value("timestamp"), UnixDate32Provider, Nothing) + If Not postDate.HasValue Then postDate = AConvert(Of Date)(j.Value("upload_date"), SimpleDateConverter, Nothing) + Select Case CheckDatesLimit(postDate, SimpleDateConverter) + Case DateResult.Skip : Continue For + Case DateResult.Exit : Exit Sub + End Select + + postUrl = j.Value("webpage_url") + If postUrl.IsEmptyString Then postUrl = $"https://www.tiktok.com/@{Name}/video/{postID}" + _TempMediaList.Add(New UserMedia(postUrl, UserMedia.Types.Video) With { + .File = $"{title}.mp4", .Post = New UserPost(postID, postDate)}) + End If + j.Dispose() + End If + Next + End If + Catch ex As Exception + ProcessException(ex, Token, $"data downloading error [{URL}]") + End Try + End Using End Sub +#End Region +#Region "ReparseMissing" + Protected Overrides Sub ReparseMissing(ByVal Token As CancellationToken) + If ContentMissingExists Then + Dim m As UserMedia + Dim i% + Dim rList As New List(Of Integer) + For i = 0 To _ContentList.Count - 1 + If _ContentList(i).State = UserMedia.States.Missing Then + m = _ContentList(i) + m.URL = m.URL_BASE + _TempMediaList.Add(m) + rList.Add(i) + End If + Next + If rList.Count > 0 Then + For i% = rList.Count - 1 To 0 Step -1 : _ContentList.RemoveAt(rList(i)) : Next + End If + End If + End Sub +#End Region +#Region "YT-DLP Support" + Private Function CreateYTCommand(ByVal Output As SFile, ByVal URL As String, ByVal IsDownload As Boolean, + Optional ByVal DateBefore As Date? = Nothing, Optional ByVal DateAfter As Date? = Nothing, + Optional ByVal PrintTitle As Boolean = False, Optional ByVal SupportOutput As Boolean = True) As String + Dim command$ = $"""{Settings.YtdlpFile}"" " + If Not IsDownload Then command &= "--write-info-json --skip-download " + If PrintTitle Then + If Not command.Contains("--skip-download") Then command &= "--skip-download " + command &= "--print title " + End If + If DateBefore.HasValue Then command &= $"--datebefore {DateBefore.Value.AddDays(1).ToStringDate(SimpleDateConverter)} " + If DateAfter.HasValue Then command &= $"--dateafter {DateAfter.Value.AddDays(-1).ToStringDate(SimpleDateConverter)} " + If MySettings.CookiesNetscapeFile.Exists Then command &= $"--no-cookies-from-browser --cookies ""{MySettings.CookiesNetscapeFile}"" " + command &= $"{URL} " + If SupportOutput Then + If IsDownload Then + command &= $"-o ""{Output}""" + Else + command &= "-o %(id)s" + End If + End If + Return command + End Function +#End Region +#Region "DownloadContent, DownloadFile" Protected Overrides Sub DownloadContent(ByVal Token As CancellationToken) DownloadContentDefault(Token) End Sub - Private Function MediaFromData(ByVal _URL As String, ByVal PostID As String, ByVal PostDate As Date?) As UserMedia - _URL = LinkFormatterSecure(RegexReplace(_URL.Replace("\", String.Empty), LinkPattern)) - Dim m As New UserMedia(_URL, UserMedia.Types.Video) With {.Post = New UserPost With {.ID = PostID}} - If Not m.URL.IsEmptyString Then m.File = $"{PostID}.mp4" - If PostDate.HasValue Then m.Post.Date = PostDate - Return m + Protected Overrides Function DownloadFile(ByVal URL As String, ByVal Media As UserMedia, ByVal DestinationFile As SFile, ByVal Token As CancellationToken) As SFile + Using b As New TokenBatch(Token) With {.FileExchanger = RootCacheTikTok} + b.Encoding = BatchExecutor.UnicodeEncoding + b.Execute(CreateYTCommand(DestinationFile, URL, True)) + End Using + Return DestinationFile End Function +#End Region +#Region "DownloadSingleObject" + Protected Overrides Sub DownloadSingleObject_GetPosts(ByVal Data As IYouTubeMediaContainer, ByVal Token As CancellationToken) + Dim f$ = String.Empty + If CBool(MySettings.TitleUseNativeSTD.Value) Then + Using b As New BatchExecutor(True) With { + .Encoding = BatchExecutor.UnicodeEncoding, + .CleanAutomaticallyViaRegEx = True, + .CleanAutomaticallyViaRegExRemoveAllCommands = True + } + b.Execute(CreateYTCommand(Nothing, Data.URL, True,,, True, False)) + b.Clean() + With b.OutputData + If .Count > 0 Then + For Each vData$ In .Self + If Not vData.Contains($": {BatchExecutor.UnicodeEncoding}") Then f = vData : Exit For + Next + End If + End With + End Using + End If + Dim m As New UserMedia(Data.URL, UserMedia.Types.Video) + If Not f.IsEmptyString Then f = TitleHtmlConverter(f) + If Not f.IsEmptyString Then + If CBool(MySettings.RemoveTagsFromTitle.Value) Then f = RegexReplace(f, RegexTagsReplacer) + f = f.StringTrim + If Not f.IsEmptyString Then + If CBool(MySettings.TitleAddVideoID.Value) Then f &= $" ({m.File.Name})" + m.File.Name = f + End If + End If + _TempMediaList.Add(m) + End Sub +#End Region +#Region "Exception" Protected Overrides Function DownloadingException(ByVal ex As Exception, ByVal Message As String, Optional ByVal FromPE As Boolean = False, Optional ByVal EObj As Object = Nothing) As Integer - If Responser.Status = Net.WebExceptionStatus.ConnectionClosed Then - UserExists = False - Return 1 - Else - Return 0 - End If + Return 0 End Function +#End Region End Class End Namespace \ No newline at end of file diff --git a/SCrawler/API/TikTok/UserExchangeOptions.vb b/SCrawler/API/TikTok/UserExchangeOptions.vb new file mode 100644 index 0000000..35b2f1f --- /dev/null +++ b/SCrawler/API/TikTok/UserExchangeOptions.vb @@ -0,0 +1,32 @@ +' Copyright (C) 2023 Andy https://github.com/AAndyProgram +' This program 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. +' +' This program is distributed in the hope that it will be useful, +' but WITHOUT ANY WARRANTY +Imports SCrawler.Plugin.Attributes +Namespace API.TikTok + Friend Class UserExchangeOptions + + Friend Property RemoveTagsFromTitle As Boolean + + Friend Property TitleUseNative As Boolean + + Friend Property TitleAddVideoID As Boolean + Private ReadOnly MySettings As SiteSettings + Friend Sub New(ByVal u As UserData) + MySettings = u.HOST.Source + RemoveTagsFromTitle = u.RemoveTagsFromTitle + TitleUseNative = u.TitleUseNative + TitleAddVideoID = u.TitleAddVideoID + End Sub + Friend Sub New(ByVal s As SiteSettings) + MySettings = s + RemoveTagsFromTitle = s.RemoveTagsFromTitle.Value + TitleUseNative = s.TitleUseNative.Value + TitleAddVideoID = s.TitleAddVideoID.Value + End Sub + End Class +End Namespace diff --git a/SCrawler/API/Twitter/EditorExchangeOptions.vb b/SCrawler/API/Twitter/EditorExchangeOptions.vb index 86d5e70..60f6a78 100644 --- a/SCrawler/API/Twitter/EditorExchangeOptions.vb +++ b/SCrawler/API/Twitter/EditorExchangeOptions.vb @@ -24,6 +24,8 @@ Namespace API.Twitter ToolTip:="Existing files will be checked for duplicates and duplicates removed." & vbCr & "Works only on the first activation 'Use MD5 comparison'.", LeftOffset:=DefaultOffset)> Friend Property RemoveExistingDuplicates As Boolean = False + + Friend Overridable Property MediaModelAllowNonUserTweets As Boolean = False @@ -36,12 +38,18 @@ Namespace API.Twitter Caption:="Download model 'Search'", ToolTip:="Download the data using the 'https://twitter.com/search?q=from:UserName+include:nativeretweets' command.", LeftOffset:=DefaultOffset)> Friend Overridable Property DownloadModelSearch As Boolean = False + + Friend Overridable Property DownloadModelForceApply As Boolean = False Private ReadOnly Property MySettings As Object Friend Sub New(ByVal s As SiteSettings) GifsDownload = s.GifsDownload.Value GifsSpecialFolder = s.GifsSpecialFolder.Value GifsPrefix = s.GifsPrefix.Value UseMD5Comparison = s.UseMD5Comparison.Value + DownloadModelForceApply = s.UseAppropriateModel.Value + MediaModelAllowNonUserTweets = s.MediaModelAllowNonUserTweets.Value MySettings = s End Sub Friend Sub New(ByVal s As Mastodon.SiteSettings) @@ -57,7 +65,9 @@ Namespace API.Twitter GifsPrefix = u.GifsPrefix UseMD5Comparison = u.UseMD5Comparison RemoveExistingDuplicates = u.RemoveExistingDuplicates + MediaModelAllowNonUserTweets = u.MediaModelAllowNonUserTweets If Not TypeOf u Is Mastodon.UserData Then + DownloadModelForceApply = u.DownloadModelForceApply Dim dm As DModels() = EnumExtract(Of DModels)(u.DownloadModel) If dm.ListExists Then DownloadModelMedia = dm.Contains(DModels.Media) diff --git a/SCrawler/API/Twitter/SiteSettings.vb b/SCrawler/API/Twitter/SiteSettings.vb index f1b1cf7..d6cac57 100644 --- a/SCrawler/API/Twitter/SiteSettings.vb +++ b/SCrawler/API/Twitter/SiteSettings.vb @@ -11,50 +11,48 @@ Imports SCrawler.Plugin Imports SCrawler.Plugin.Attributes Imports PersonalUtilities.Functions.RegularExpressions Imports PersonalUtilities.Tools.Web.Clients +Imports DN = SCrawler.API.Base.DeclaredNames Namespace API.Twitter Friend Class SiteSettings : Inherits SiteSettingsBase -#Region "Token names" - Friend Const Header_Authorization As String = "authorization" - Friend Const Header_Token As String = "x-csrf-token" -#End Region -#Region "Properties constants" - Friend Const GifsSpecialFolder_Text As String = "GIFs special folder" - Friend Const GifsSpecialFolder_ToolTip As String = "Put the GIFs in a special folder" & vbCr & - "This is a folder name, not an absolute path." & vbCr & - "This folder(s) will be created relative to the user's root folder." & vbCr & - "Examples:" & vbCr & "SomeFolderName" & vbCr & "SomeFolderName\SomeFolderName2" - Friend Const GifsPrefix_Text As String = "GIF prefix" - Friend Const GifsPrefix_ToolTip As String = "This prefix will be added to the beginning of the filename" - Friend Const GifsDownload_Text As String = "Download GIFs" - Friend Const UseMD5Comparison_Text As String = "Use MD5 comparison" - Friend Const UseMD5Comparison_ToolTip As String = "Each image will be checked for existence using MD5" -#End Region #Region "Declarations" Friend Overrides ReadOnly Property Icon As Icon Get Return My.Resources.SiteResources.TwitterIcon_32 End Get End Property + Private ReadOnly _Image As Image Friend Overrides ReadOnly Property Image As Image Get - Return My.Resources.SiteResources.TwitterPic_400 + Return _Image End Get End Property - 'TODELETE: twitter headers - '#Region "Auth" - ' - ' Private ReadOnly Property Auth As PropertyValue - ' - ' Private ReadOnly Property Token As PropertyValue - '#End Region #Region "Other properties" - + + Friend ReadOnly Property UseAppropriateModel As PropertyValue +#Region "End points" + + Friend Property UseNewEndPointSearch As PropertyValue + + Friend Property UseNewEndPointProfiles As PropertyValue +#End Region +#Region "Limits" + + Friend Property AbortOnLimit As PropertyValue + + Friend Property DownloadAlreadyParsed As PropertyValue +#End Region + + Friend ReadOnly Property MediaModelAllowNonUserTweets As PropertyValue + Friend ReadOnly Property GifsDownload As PropertyValue - + Friend ReadOnly Property GifsSpecialFolder As PropertyValue - + Friend ReadOnly Property GifsPrefix As PropertyValue Private ReadOnly Property GifStringChecker As IFormatProvider @@ -76,52 +74,38 @@ Namespace API.Twitter Throw New NotImplementedException("[GetFormat] is not available in the context of [GifStringProvider]") End Function End Class - + Friend ReadOnly Property UseMD5Comparison As PropertyValue - + Friend ReadOnly Property ConcurrentDownloads As PropertyValue + + Private ReadOnly Property MyConcurrentDownloadsProvider As IFormatProvider #End Region - 'TODELETE: twitter headers - 'Private Sub ChangeResponserFields(ByVal PropName As String, ByVal Value As Object) - ' If Not PropName.IsEmptyString Then - ' Dim f$ = String.Empty - ' Select Case PropName - ' Case NameOf(Auth) : f = Header_Authorization - ' Case NameOf(Token) : f = Header_Token - ' End Select - ' If Not f.IsEmptyString Then - ' Responser.Headers.Remove(f) - ' If Not CStr(Value).IsEmptyString Then Responser.Headers.Add(f, CStr(Value)) - ' Responser.SaveSettings() - ' End If - ' End If - 'End Sub #End Region Friend Sub New() MyBase.New(TwitterSite, "twitter.com") - 'TODELETE: twitter headers - 'Dim a$ = String.Empty - 'Dim t$ = String.Empty + _Image = My.Resources.SiteResources.TwitterIcon_32.ToBitmap With Responser - 'TODELETE: twitter headers - 'a = .Headers.Value(Header_Authorization) - 't = .Headers.Value(Header_Token) .Cookies.ChangedAllowInternalDrop = False .Cookies.Changed = False End With - 'TODELETE: twitter headers - 'Auth = New PropertyValue(a, GetType(String), Sub(v) ChangeResponserFields(NameOf(Auth), v)) - 'Token = New PropertyValue(t, GetType(String), Sub(v) ChangeResponserFields(NameOf(Token), v)) - + UseAppropriateModel = New PropertyValue(True) + UseNewEndPointSearch = New PropertyValue(True) + UseNewEndPointProfiles = New PropertyValue(True) + AbortOnLimit = New PropertyValue(True) + DownloadAlreadyParsed = New PropertyValue(True) + MediaModelAllowNonUserTweets = New PropertyValue(False) GifsDownload = New PropertyValue(True) GifsSpecialFolder = New PropertyValue(String.Empty, GetType(String)) GifsPrefix = New PropertyValue("GIF_") GifStringChecker = New GifStringProvider UseMD5Comparison = New PropertyValue(False) ConcurrentDownloads = New PropertyValue(1) + MyConcurrentDownloadsProvider = New ConcurrentDownloadsProvider UserRegex = RParams.DMS("[htps:/]{7,8}.*?twitter.com/([^/]+)", 1) UrlPatternUser = "https://twitter.com/{0}" @@ -141,6 +125,11 @@ Namespace API.Twitter Friend Overrides Function Available(ByVal What As ISiteSettings.Download, ByVal Silent As Boolean) As Boolean Return Settings.GalleryDLFile.Exists And BaseAuthExists() End Function + Friend Property LIMIT_ABORT As Boolean = False + Friend Overrides Sub DownloadDone(ByVal What As ISiteSettings.Download) + LIMIT_ABORT = False + MyBase.DownloadDone(What) + End Sub Friend Overrides Sub UserOptions(ByRef Options As Object, ByVal OpenForm As Boolean) If Options Is Nothing OrElse (Not TypeOf Options Is EditorExchangeOptions OrElse Not DirectCast(Options, EditorExchangeOptions).SiteKey = TwitterSiteKey) Then _ diff --git a/SCrawler/API/Twitter/UserData.vb b/SCrawler/API/Twitter/UserData.vb index c5f295d..d456bb7 100644 --- a/SCrawler/API/Twitter/UserData.vb +++ b/SCrawler/API/Twitter/UserData.vb @@ -20,6 +20,8 @@ Namespace API.Twitter #Region "XML names" Private Const Name_FirstDownloadComplete As String = "FirstDownloadComplete" Private Const Name_DownloadModel As String = "DownloadModel" + Private Const Name_DownloadModelForceApply As String = "DownloadModelForceApply" + Private Const Name_MediaModelAllowNonUserTweets As String = "MediaModelAllowNonUserTweets" Private Const Name_GifsDownload As String = "GifsDownload" Private Const Name_GifsSpecialFolder As String = "GifsSpecialFolder" Private Const Name_GifsPrefix As String = "GifsPrefix" @@ -32,7 +34,9 @@ Namespace API.Twitter Search = 5 End Enum Private FirstDownloadComplete As Boolean = False + Friend Property DownloadModelForceApply As Boolean = False Friend Property DownloadModel As DownloadModels = DownloadModels.Undefined + Friend Property MediaModelAllowNonUserTweets As Boolean = False Friend Property GifsDownload As Boolean = True Friend Property GifsSpecialFolder As String = String.Empty Friend Property GifsPrefix As String = String.Empty @@ -64,6 +68,8 @@ Namespace API.Twitter UseMD5Comparison = .UseMD5Comparison RemoveExistingDuplicates = .RemoveExistingDuplicates DownloadModel = DownloadModels.Undefined + DownloadModelForceApply = .DownloadModelForceApply + MediaModelAllowNonUserTweets = .MediaModelAllowNonUserTweets If .DownloadModelMedia Then DownloadModel += DownloadModels.Media If .DownloadModelProfile Then DownloadModel += DownloadModels.Profile If .DownloadModelSearch Then DownloadModel += DownloadModels.Search @@ -78,6 +84,7 @@ Namespace API.Twitter Protected Overrides Sub LoadUserInformation_OptionalFields(ByRef Container As XmlFile, ByVal Loading As Boolean) With Container If Loading Then + DownloadModelForceApply = .Value(Name_DownloadModelForceApply).FromXML(Of Boolean)(False) If .Contains(Name_FirstDownloadComplete) Then FirstDownloadComplete = .Value(Name_FirstDownloadComplete).FromXML(Of Boolean)(False) DownloadModel = .Value(Name_DownloadModel).FromXML(Of Integer)(DownloadModels.Undefined) @@ -87,6 +94,7 @@ Namespace API.Twitter DownloadModel = .Value(Name_DownloadModel).FromXML(Of Integer)(DownloadModels.Undefined) Else If FirstDownloadComplete Then + DownloadModelForceApply = False If ParseUserMediaOnly Then DownloadModel = DownloadModels.Media Else @@ -107,8 +115,10 @@ Namespace API.Twitter UseMD5Comparison = .Value(Name_UseMD5Comparison).FromXML(Of Boolean)(False) RemoveExistingDuplicates = .Value(Name_RemoveExistingDuplicates).FromXML(Of Boolean)(False) StartMD5Checked = .Value(Name_StartMD5Checked).FromXML(Of Boolean)(False) + MediaModelAllowNonUserTweets = .Value(Name_MediaModelAllowNonUserTweets).FromXML(Of Boolean)(False) Else .Add(Name_FirstDownloadComplete, FirstDownloadComplete.BoolToInteger) + .Add(Name_DownloadModelForceApply, DownloadModelForceApply.BoolToInteger) .Add(Name_DownloadModel, CInt(DownloadModel)) .Add(Name_GifsDownload, GifsDownload.BoolToInteger) .Add(Name_GifsSpecialFolder, GifsSpecialFolder) @@ -116,18 +126,29 @@ Namespace API.Twitter .Add(Name_UseMD5Comparison, UseMD5Comparison.BoolToInteger) .Add(Name_RemoveExistingDuplicates, RemoveExistingDuplicates.BoolToInteger) .Add(Name_StartMD5Checked, StartMD5Checked.BoolToInteger) + .Add(Name_MediaModelAllowNonUserTweets, MediaModelAllowNonUserTweets.BoolToInteger) End If End With End Sub #End Region #Region "Download functions" + Private Function GetContainerSubnodes() As List(Of String()) + Return New List(Of String()) From { + {{"content", "itemContent", "tweet_results", "result", "legacy"}}, + {{"content", "itemContent", "tweet_results", "result", "tweet", "legacy"}} + } + End Function Protected Overrides Sub DownloadDataF(ByVal Token As CancellationToken) - If IsSavedPosts Then - If _ContentList.Count > 0 Then _DataNames.ListAddList(_ContentList.Select(Function(c) c.Post.ID), LAP.ClearBeforeAdd, LAP.NotContainsOnly) - DownloadData_SavedPosts(Token) + If MySettings.LIMIT_ABORT Then + TwitterLimitException.LogMessage(ToStringForLog, True) Else - If _ContentList.Count > 0 Then _DataNames.ListAddList(_ContentList.Select(Function(c) c.File.File), LAP.ClearBeforeAdd, LAP.NotContainsOnly) - DownloadData_Timeline(Token) + If IsSavedPosts Then + If _ContentList.Count > 0 Then _DataNames.ListAddList(_ContentList.Select(Function(c) c.Post.ID), LAP.ClearBeforeAdd, LAP.NotContainsOnly) + DownloadData_SavedPosts(Token) + Else + If _ContentList.Count > 0 Then _DataNames.ListAddList(_ContentList.Select(Function(c) c.File.File), LAP.ClearBeforeAdd, LAP.NotContainsOnly) + DownloadData_Timeline(Token) + End If End If End Sub Private Sub DownloadData_Timeline(ByVal Token As CancellationToken) @@ -139,6 +160,8 @@ Namespace API.Twitter Dim PostDate$, tmpUserId$ Dim i% Dim dirIndx% = -1 + Dim nodes As List(Of String()) = GetContainerSubnodes() + Dim node$() Dim timelineNode As Predicate(Of EContainer) = Function(ee) ee.Value("type").StringToLower = "timelineaddentries" Dim pinNode As Predicate(Of EContainer) = Function(ee) ee.Value("type").StringToLower = "timelinepinentry" Dim entriesNode As Predicate(Of EContainer) = Function(ee) ee.Name = "entries" Or ee.Name = entry @@ -150,13 +173,15 @@ Namespace API.Twitter Dim __parseContainer As Func(Of EContainer, Boolean) = Function(ByVal ee As EContainer) As Boolean - If dirIndx <= 1 Then - nn = ee({"content", "itemContent", "tweet_results", "result", "legacy"}) - Else - nn = ee + nn = Nothing + If dirIndx > 1 Then nn = ee + If Not nn.ListExists Then + For Each node In nodes + nn = ee(node) + If nn.ListExists Then Exit For + Next End If - If Not nn.ListExists Then nn = ee({"content", "itemContent", "tweet_results", "result", "tweet", "legacy"}) If nn.ListExists Then PostID = nn.Value("id_str").IfNullOrEmpty(nn.Value("id")) @@ -181,15 +206,14 @@ Namespace API.Twitter If tmpUserId.IsEmptyString Then tmpUserId = nn.ItemF({"extended_entities", "media", 0, sourceIdPredicate}).XmlIfNothingValue. IfNullOrEmpty(nn.Value("user_id")).IfNullOrEmpty(nn.Value("user_id_str")).IfNullOrEmpty("/") - If Not ParseUserMediaOnly OrElse (Not ID.IsEmptyString AndAlso tmpUserId = ID) Then ObtainMedia(nn, PostID, PostDate) + If Not ParseUserMediaOnly OrElse + (dirIndx = 0 AndAlso MediaModelAllowNonUserTweets) OrElse + (Not ID.IsEmptyString AndAlso tmpUserId = ID) Then ObtainMedia(nn, PostID, PostDate) End If Return True End Function - tCache = New CacheKeeper($"{DownloadContentDefault_GetRootDir()}\_tCache\") With { - .CacheDeleteError = New ErrorsDescriber(EDP.None) With {.Action = Sub(ee, eex, msg, obj) Settings.Cache.AddPath(tCache)}} - If tCache.RootDirectory.Exists(SFO.Path, False) Then tCache.RootDirectory.Delete(SFO.Path, SFODelete.DeletePermanently, EDP.ReturnValue) - tCache.Validate() + tCache = CreateCache() Dim dirs As List(Of SFile) = GetTimelineFromGalleryDL(tCache, Token) If dirs.ListExists Then @@ -313,7 +337,9 @@ Namespace API.Twitter End If End If End If + DownloadModelForceApply = False FirstDownloadComplete = True + Catch limit_ex As TwitterLimitException Catch ex As Exception ProcessException(ex, Token, $"data downloading error [{URL}]") Finally @@ -328,6 +354,8 @@ Namespace API.Twitter If files.ListExists Then ResetFileNameProvider(Math.Max(files.Count.ToString.Length, 3)) Dim id$ + Dim nodes As List(Of String()) = GetContainerSubnodes() + Dim node$() Dim j As EContainer, jj As EContainer Dim jErr As New ErrorsDescriber(EDP.ReturnValue) For i% = 0 To files.Count - 1 @@ -339,19 +367,24 @@ Namespace API.Twitter ProgressPre.ChangeMax(.Count) For Each jj In .Self ProgressPre.Perform() - With jj({"content", "itemContent", "tweet_results", "result", "legacy"}) - If .ListExists Then - id = .Value("id_str") - If _TempPostsList.Contains(id) Then j.Dispose() : Exit Sub Else ObtainMedia(.Self, id, .Value("created_at")) - End If - End With + For Each node In nodes + With jj(node) + If .ListExists Then + id = .Value("id_str") + If _TempPostsList.Contains(id) Then j.Dispose() : Exit Sub Else ObtainMedia(.Self, id, .Value("created_at")) + Exit For + End If + End With + Next Next End If End With j.Dispose() End If Next + nodes.Clear() End If + Catch limit_ex As TwitterLimitException Catch ex As Exception ProcessException(ex, Token, "data downloading error (Saved Posts)") End Try @@ -408,30 +441,28 @@ Namespace API.Twitter Dim f As SFile Dim m As UserMedia If w.ListExists Then - For Each n As EContainer In w - If n.Value("type") = "animated_gif" Then - With n({"video_info", "variants"}) - If .ListExists Then - With .ItemF({gifUrl}) - If .ListExists Then - url = .Value("url") - ff = UrlFile(url) - If Not ff.IsEmptyString Then - If GifsDownload And Not _DataNames.Contains(ff) Then - m = MediaFromData(url, PostID, PostDate,, State, UTypes.Video) - f = m.File - If Not f.IsEmptyString And Not GifsPrefix.IsEmptyString Then f.Name = $"{GifsPrefix}{f.Name}" : m.File = f - If Not GifsSpecialFolder.IsEmptyString Then m.SpecialFolder = $"{GifsSpecialFolder}*" - _TempMediaList.ListAddValue(m, LNC) - End If - Return True + If w.Value("type") = "animated_gif" Then + With w({"video_info", "variants"}) + If .ListExists Then + With .ItemF({gifUrl}) + If .ListExists Then + url = .Value("url") + ff = UrlFile(url) + If Not ff.IsEmptyString Then + If GifsDownload And Not _DataNames.Contains(ff) Then + m = MediaFromData(url, PostID, PostDate,, State, UTypes.Video) + f = m.File + If Not f.IsEmptyString And Not GifsPrefix.IsEmptyString Then f.Name = $"{GifsPrefix}{f.Name}" : m.File = f + If Not GifsSpecialFolder.IsEmptyString Then m.SpecialFolder = $"{GifsSpecialFolder}*" + _TempMediaList.ListAddValue(m, LNC) End If + Return True End If - End With - End If - End With - End If - Next + End If + End With + End If + End With + End If End If Return False Catch ex As Exception @@ -460,13 +491,22 @@ Namespace API.Twitter End Function #End Region #Region "Gallery-DL Support" + Private Class TwitterLimitException : Inherits Exception + Friend Sub New(ByVal User As String, ByVal Skipped As Boolean) + LogMessage(User, Skipped) + End Sub + Friend Shared Sub LogMessage(ByVal User As String, ByVal Skipped As Boolean) + MyMainLOG = $"{User}: twitter limit reached.{IIf(Skipped, "Data has not been downloaded", String.Empty)}" + End Sub + End Class Private Class TwitterGDL : Inherits GDL.GDLBatch - Private Property Token As CancellationToken - Friend Sub New(ByVal Dir As SFile, ByVal _Token As CancellationToken) - MyBase.New + Private ReadOnly KillOnLimit As Boolean + Friend LimitReached As Boolean = False + Friend Sub New(ByVal Dir As SFile, ByVal _Token As CancellationToken, ByVal _KillOnLimit As Boolean) + MyBase.New(_Token) Commands.Clear() If Not Dir.IsEmptyString Then ChangeDirectory(Dir) - Token = _Token + KillOnLimit = _KillOnLimit End Sub Protected Overrides Async Function Validate(ByVal Value As String) As Task If Not ProcessKilled AndAlso Await Task.Run(Function() Token.IsCancellationRequested OrElse IdExists(Value)) Then Kill() @@ -482,14 +522,27 @@ Namespace API.Twitter End Try Return False End Function + Protected Overrides Async Sub ErrorDataReceiver(ByVal Sender As Object, ByVal e As DataReceivedEventArgs) + Await Task.Run(Sub() CheckForLimit(e.Data)) + End Sub + Private Sub CheckForLimit(ByVal Value As String) + If Token.IsCancellationRequested Or (KillOnLimit AndAlso Not ProcessKilled AndAlso + Not Value.IsEmptyString AndAlso Value.ToLower.Contains("for rate limit reset")) Then + LimitReached = True + Kill() + End If + End Sub End Class Private Function GetDataFromGalleryDL(ByVal URL As String, ByVal Cache As CacheKeeper, ByVal UseTempPostList As Boolean, Optional ByVal Token As CancellationToken = Nothing) As SFile - Dim command$ = $"""{Settings.GalleryDLFile}"" --verbose --no-download --no-skip --cookies ""{MySettings.CookiesNetscapeFile}"" --write-pages " + Dim command$ = String.Empty Try + Dim conf As SFile = GdlCreateConf(Cache.NewPath) + command = $"""{Settings.GalleryDLFile}"" --verbose --no-download --no-skip --config ""{conf}"" --write-pages " + command &= GdlGetIdFilterString() Dim dir As SFile = Cache.NewPath If dir.Exists(SFO.Path,, EDP.ThrowException) Then - Using batch As New TwitterGDL(dir, Token) + Using batch As New TwitterGDL(dir, Token, MySettings.AbortOnLimit.Value) If UseTempPostList Then batch.TempPostsList = _TempPostsList command &= GdlGetIdFilterString() @@ -499,10 +552,22 @@ Namespace API.Twitter 'Debug.WriteLine(command) '#End If batch.Execute(command) + If batch.LimitReached Then + If CBool(MySettings.DownloadAlreadyParsed.Value) And + SFile.GetFiles(dir, "*.txt", IO.SearchOption.AllDirectories, EDP.ReturnValue).Count > 0 Then + MySettings.LIMIT_ABORT = True + Return dir + Else + Throw New TwitterLimitException(ToStringForLog, False) + End If + End If End Using Return dir End If Return Nothing + Catch limit_ex As TwitterLimitException + MySettings.LIMIT_ABORT = True + Throw limit_ex Catch ex As Exception Return ErrorsDescriber.Execute(EDP.SendToLog, ex, $"{ToStringForLog()}: GetDataFromGalleryDL({command})") End Try @@ -511,20 +576,23 @@ Namespace API.Twitter Dim command$ = String.Empty Try Dim confCache As CacheKeeper = Cache.NewInstance(Of BatchFileExchanger) - Dim conf As SFile = $"{confCache.RootDirectory.PathWithSeparator}TwitterGdlConfig.conf" - Dim confText$ = "{""extractor"":{""cookies"": """ & MySettings.CookiesNetscapeFile.ToString.Replace("\", "/") & - """,""cookies-update"": false,""twitter"":{""cards"": false,""conversations"": true,""pinned"": false,""quoted"": false,""replies"": true,""retweets"": true,""strategy"": null,""text-tweets"": false,""twitpic"": false,""unique"": true,""users"": ""timeline"",""videos"": true}}}" - If conf.Exists(SFO.Path, True, EDP.ThrowException) Then TextSaver.SaveTextToFile(confText, conf) - If Not conf.Exists Then Throw New IO.FileNotFoundException("Can't find Twitter GDL config file", conf) + Dim conf As SFile = GdlCreateConf(confCache.RootDirectory) + + If DownloadModel = DownloadModels.Undefined And Not FirstDownloadComplete And DownloadModelForceApply Then + If ParseUserMediaOnly Then + DownloadModel = DownloadModels.Media + Else + DownloadModel = DownloadModels.Media + DownloadModels.Profile + DownloadModels.Search + End If + End If Dim outList As New List(Of SFile) Dim rootDir As CacheKeeper = Cache.NewInstance Dim dir As SFile Dim dm As List(Of DownloadModels) = EnumExtract(Of DownloadModels)(DownloadModel).ListIfNothing Dim process As Boolean - Dim bProcess As Boolean = DownloadModel = DownloadModels.Undefined Or Not FirstDownloadComplete - Using tgdl As New TwitterGDL(Nothing, Token) With { + Using tgdl As New TwitterGDL(Nothing, Token, MySettings.AbortOnLimit.Value) With { .TempPostsList = _TempPostsList, .AutoClear = True, .AutoReset = True, @@ -541,22 +609,36 @@ Namespace API.Twitter command = $"""{Settings.GalleryDLFile}"" --verbose --no-download --no-skip --config ""{conf}"" --write-pages " command &= GdlGetIdFilterString() Select Case i - Case 0 : command &= $"https://twitter.com/{Name}/media" : process = bProcess Or dm.Contains(DownloadModels.Media) - Case 1 : command &= $"https://twitter.com/{Name}" : process = bProcess Or dm.Contains(DownloadModels.Profile) - Case 2 : command &= $"https://twitter.com/search?q=from:{Name}+include:nativeretweets" : process = bProcess Or dm.Contains(DownloadModels.Search) + Case 0 : command &= $"https://twitter.com/{Name}/media" : process = dm.Contains(DownloadModels.Media) + Case 1 : command &= $"https://twitter.com/{Name}" : process = dm.Contains(DownloadModels.Profile) + Case 2 : command &= $"-o search-endpoint=graphql https://twitter.com/search?q=from:{Name}+include:nativeretweets" : process = dm.Contains(DownloadModels.Search) Case Else : process = False End Select '#If DEBUG Then 'Debug.WriteLine(command) '#End If ThrowAny(Token) - If process Then tgdl.Execute(command) + If process Then + tgdl.Execute(command) + If tgdl.LimitReached Then + If CBool(MySettings.DownloadAlreadyParsed.Value) And + SFile.GetFiles(rootDir, "*.txt", IO.SearchOption.AllDirectories, EDP.ReturnValue).Count > 0 Then + MySettings.LIMIT_ABORT = True + Exit For + Else + Throw New TwitterLimitException(ToStringForLog, False) + End If + End If + End If ThrowAny(Token) Next End Using dm.Clear() Return outList + Catch limit_ex As TwitterLimitException + MySettings.LIMIT_ABORT = True + Throw limit_ex Catch ex As Exception ProcessException(ex, Token, $"{ToStringForLog()}: GetTimelineFromGalleryDL({command})") Return Nothing @@ -565,6 +647,20 @@ Namespace API.Twitter Private Function GdlGetIdFilterString() As String Return If(_TempPostsList.Count > 0, $"--filter ""int(tweet_id) > {_TempPostsList.Last} or abort()"" ", String.Empty) End Function + Private Function GdlCreateConf(ByVal Path As SFile) As SFile + Try + Dim conf As SFile = $"{Path.PathWithSeparator}TwitterGdlConfig.conf" + Dim confText$ = "{""extractor"":{""cookies"": """ & MySettings.CookiesNetscapeFile.ToString.Replace("\", "/") & + """,""cookies-update"": false,""twitter"":{""tweet-endpoint"": ""detail"",""cards"": false,""conversations"": true,""pinned"": false,""quoted"": false,""replies"": true,""retweets"": true,""strategy"": null,""text-tweets"": false,""twitpic"": false,""unique"": true,""users"": ""timeline"",""videos"": true}}}" + If conf.Exists(SFO.Path, True, EDP.ThrowException) Then TextSaver.SaveTextToFile(confText, conf) + If Not conf.Exists Then Throw New IO.FileNotFoundException("Can't find Twitter GDL config file", conf) + Return conf + Catch file_ex As IO.FileNotFoundException + Throw file_ex + Catch ex As Exception + Return ErrorsDescriber.Execute(EDP.SendToLog, ex, "gallery-dl configuration file creating error", New SFile) + End Try + End Function #End Region #Region "ReparseMissing" Protected Overrides Sub ReparseMissing(ByVal Token As CancellationToken) @@ -576,7 +672,9 @@ Namespace API.Twitter If ContentMissingExists Then Dim m As UserMedia Dim PostDate$ - Dim j As EContainer + Dim nodes As List(Of String()) = GetContainerSubnodes() + Dim node$() + Dim j As EContainer, n As EContainer Dim f As SFile Dim i%, ii% Dim files As List(Of SFile) @@ -585,6 +683,7 @@ Namespace API.Twitter cache = Settings.Cache Else cache = New CacheKeeper(DownloadContentDefault_GetRootDir.CSFilePS) + cache.CacheDeleteError = CacheDeletionError(cache) End If ProgressPre.ChangeMax(_ContentList.Count) For i = 0 To _ContentList.Count - 1 @@ -598,7 +697,7 @@ Namespace API.Twitter Else URL = String.Format(SinglePostPattern, Name, m.Post.ID) End If - f = GetDataFromGalleryDL(URL, cache, Favorite, Token) + f = GetDataFromGalleryDL(URL, cache, False, Token) If Not f.IsEmptyString Then files = SFile.GetFiles(f, "*.txt") If files.ListExists Then @@ -606,13 +705,20 @@ Namespace API.Twitter f = RenameGdlFile(files(ii), ii) j = JsonDocument.Parse(f.GetText) If Not j Is Nothing Then - With j.ItemF({"data", 0, "instructions", 0, "entries", 0, - "content", "itemContent", "tweet_results", "result", "legacy"}) + With j.ItemF({"data", 0, "instructions", 0, "entries"}) If .ListExists Then - PostDate = String.Empty - If .Contains("created_at") Then PostDate = .Value("created_at") Else PostDate = String.Empty - ObtainMedia(.Self, m.Post.ID, PostDate, UStates.Missing) - rList.Add(i) + For Each n In .Self + For Each node In nodes + With n(node) + If .ListExists Then + PostDate = String.Empty + If .Contains("created_at") Then PostDate = .Value("created_at") Else PostDate = String.Empty + ObtainMedia(.Self, m.Post.ID, PostDate, UStates.Missing) + rList.ListAddValue(i, LNC) + End If + End With + Next + Next End If End With j.Dispose() @@ -630,7 +736,7 @@ Namespace API.Twitter Finally If Not cache Is Nothing And Not IsSingleObjectDownload Then cache.Dispose() If rList.Count > 0 Then - For i% = rList.Count - 1 To 0 Step -1 : _ContentList.RemoveAt(i) : Next + For i% = rList.Count - 1 To 0 Step -1 : _ContentList.RemoveAt(rList(i)) : Next rList.Clear() End If End Try diff --git a/SCrawler/API/UserDataBind.vb b/SCrawler/API/UserDataBind.vb index 86d3b2a..9fbaf4a 100644 --- a/SCrawler/API/UserDataBind.vb +++ b/SCrawler/API/UserDataBind.vb @@ -33,7 +33,7 @@ Namespace API End Property Friend Property CurrentlyEdited As Boolean = False Private _CollectionName As String = String.Empty - Friend Overrides Property CollectionName As String + Friend Overrides ReadOnly Property CollectionName As String Get If Count > 0 Then Return Collections(0).CollectionName @@ -41,14 +41,29 @@ Namespace API Return _CollectionName End If End Get - Set(ByVal NewName As String) - ChangeCollectionName(NewName, True) - End Set End Property - Friend Overrides Sub ChangeCollectionName(ByVal NewName As String, ByVal UpdateSettings As Boolean) - _CollectionName = NewName - If Count > 0 Then Collections.ForEach(Sub(c) c.CollectionName = NewName) + Friend Sub ChangeVirtualCollectionName(ByVal NewName As String) + If Count > 0 And Not NewName.IsEmptyString Then + Dim u As UserInfo + For Each user As UserDataBase In Collections + u = user.User + u.CollectionName = NewName + u.UpdateUserFile() + user.User = u + Settings.UpdateUsersList(u) + Next + End If End Sub + Private _CollectionPath As SFile = Nothing + Friend Overrides ReadOnly Property CollectionPath As SFile + Get + If Count > 0 And Not IsVirtual Then + Dim _RealUser As UserDataBase = GetRealUser() + If Not _RealUser Is Nothing Then Return _RealUser.User.SpecialCollectionPath + End If + Return _CollectionPath + End Get + End Property Friend Overrides ReadOnly Property Name As String Get Return CollectionName @@ -185,6 +200,43 @@ Namespace API UpdateUserInformation() End Set End Property + Friend Overrides Property BackColor As Color? + Get + If Count > 0 Then + With Collections.Select(Function(u) u.BackColor) + If .All(Function(c) c.HasValue) Then + Dim cc As Color = Collections(0).BackColor.Value + If .All(Function(c) c.Value = cc) Then Return cc + End If + End With + End If + Return Nothing + End Get + Set(ByVal b As Color?) + If Count > 0 Then Collections.ForEach(Sub(c) c.BackColor = b) + End Set + End Property + Friend Overrides Property ForeColor As Color? + Get + If Count > 0 Then + With Collections.Select(Function(u) u.ForeColor) + If .All(Function(c) c.HasValue) Then + Dim cc As Color = Collections(0).ForeColor.Value + If .All(Function(c) c.Value = cc) Then Return cc + End If + End With + End If + Return Nothing + End Get + Set(ByVal f As Color?) + If Count > 0 Then Collections.ForEach(Sub(c) c.ForeColor = f) + End Set + End Property + Friend Overrides ReadOnly Property IsSubscription As Boolean + Get + Return Count > 0 AndAlso Collections.All(Function(u) u.IsSubscription) + End Get + End Property Friend Overrides Property ReadyForDownload As Boolean Get Return Count > 0 AndAlso Collections(0).ReadyForDownload @@ -202,6 +254,16 @@ Namespace API End If End Get End Property + Friend Overrides ReadOnly Property SpecialLabels As IEnumerable(Of String) + Get + If Count > 0 Then + With Collections.SelectMany(Function(u As UserDataBase) u.SpecialLabels) + If .ListExists Then Return .Distinct + End With + End If + Return New String() {} + End Get + End Property Friend Overrides Function GetUserInformation() As String Dim OutStr$ = String.Empty If IsVirtual Then OutStr = "This is a virtual collection." @@ -268,6 +330,15 @@ Namespace API End If End Get End Property + Friend ReadOnly Property ContextErase As ToolStripMenuItem() + Get + If Count > 0 Then + Return Collections.Select(Function(c) DirectCast(c, UserDataBase).BTT_CONTEXT_ERASE).ToArray + Else + Return New ToolStripMenuItem() {} + End If + End Get + End Property Friend ReadOnly Property ContextPath As ToolStripMenuItem() Get If Count > 0 Then @@ -293,9 +364,10 @@ Namespace API _IsCollection = True Collections = New List(Of IUserData) End Sub - Friend Sub New(ByVal _Name As String) + Friend Sub New(ByVal _Name As String, Optional ByVal _Path As SFile = Nothing) Me.New - CollectionName = _Name + _CollectionName = _Name + _CollectionPath = _Path End Sub #End Region #Region "Load, Update" @@ -384,18 +456,13 @@ Namespace API Catch End Try End Sub - Friend Function GetRealUserFile() As SFile + Friend Function GetRealUser() As IUserData Dim i% = -1 If Count > 0 Then i = Collections.FindIndex(RealUser) - If i >= 0 Then Return Collections(i).File Else Return Nothing + Return If(i >= 0, Collections(i), Nothing) End Function - Friend Function GetRealUserSpecialCollectionPath() - Dim _SpecialCollectionPath As SFile = Nothing - If Count > 0 And Not IsVirtual Then - Dim _RealUser As UserDataBase = Collections.Find(RealUser) - If Not _RealUser Is Nothing Then _SpecialCollectionPath = _RealUser.User.SpecialCollectionPath - End If - Return _SpecialCollectionPath + Friend Function GetRealUserFile() As SFile + Return If(GetRealUser()?.File, New SFile) End Function #End Region #Region "ICollection Support" @@ -431,7 +498,7 @@ Namespace API ''' Friend Overloads Sub Add(ByVal _Item As IUserData) Implements ICollection(Of IUserData).Add With _Item - If .MoveFiles(CollectionName, GetRealUserSpecialCollectionPath()) Then + If .MoveFiles(CollectionName, CollectionPath) Then If Not _Item.IsVirtual And DataMerging Then DirectCast(.Self, UserDataBase).MergeData() Collections.Add(_Item) With Collections.Last @@ -480,12 +547,7 @@ Namespace API End Try End Sub Private Sub ConsolidateLabels() - If Count > 1 Then - Dim l As New List(Of String) - Dim lp As New ListAddParams(LAP.ClearBeforeAdd) - l.ListAddList(Collections.SelectMany(Function(c) c.Labels), LNC) - Collections.ForEach(Sub(c) c.Labels.ListAddList(l, lp)) - End If + UpdateLabels(Me, ListAddList(Nothing, Labels.ListWithRemove(SpecialLabels)), 1, True) End Sub Private Sub ConsolidateScripts() If Count > 1 AndAlso ScriptUse Then Collections.ForEach(Sub(c) c.ScriptUse = True) @@ -520,7 +582,14 @@ Namespace API End If End Sub #End Region -#Region "Remove, Delete" +#Region "Erase, Remove, Delete" + Friend Overrides Function EraseData(ByVal Mode As IUserData.EraseMode) As Boolean + If Count > 0 Then + Return Collections.All(Function(u) u.EraseData(Mode)) + Else + Return True + End If + End Function Friend Function Remove(ByVal _Item As IUserData) As Boolean Implements ICollection(Of IUserData).Remove If DataMerging Then MsgBoxE($"Collection [{CollectionName}] data is already merged" & vbCr & diff --git a/SCrawler/API/XVIDEOS/Declarations.vb b/SCrawler/API/XVIDEOS/Declarations.vb index f174492..3113c34 100644 --- a/SCrawler/API/XVIDEOS/Declarations.vb +++ b/SCrawler/API/XVIDEOS/Declarations.vb @@ -18,5 +18,8 @@ Namespace API.XVIDEOS Friend ReadOnly Regex_M3U8_Appender As RParams = RParams.DM("(.+)(?=/.+?\.m3u8.*?)", 0) Friend ReadOnly Regex_SavedVideosPlaylist As RParams = RParams.DM("\
+ Friend Class SiteSettings : Inherits SiteSettingsBase #Region "Declarations" Friend Overrides ReadOnly Property Icon As Icon @@ -44,6 +44,8 @@ Namespace API.XVIDEOS Domains.DestinationProp = SiteDomains DownloadUHD = New PropertyValue(False) SavedVideosPlaylist = New PropertyValue(String.Empty, GetType(String)) + + _SubscriptionsAllowed = True UrlPatternUser = "https://xvideos.com/{0}" End Sub Friend Overrides Sub EndInit() @@ -81,21 +83,19 @@ Namespace API.XVIDEOS End Function #End Region #Region "User: get, check" - Friend Function GetUserUrlPart(ByVal User As UserData) As String - Dim __user$ = User.Name.Split("_").FirstOrDefault - __user &= $"/{User.Name.Replace($"{__user}_", String.Empty)}" - Return __user - End Function Friend Overrides Function GetUserUrl(ByVal User As IPluginContentProvider) As String - Return String.Format(UrlPatternUser, GetUserUrlPart(User)) + Return DirectCast(User, UserData).GetUserUrl(0) End Function #End Region #Region "IsMyUser, IsMyImageVideo" Private Const UserRegexDefault As String = "/(profiles|[\w]*?[-]{0,1}channels)/([^/]+)(\Z|.*?)" Private Const URD As String = ".*?{0}{1}" + Private ReadOnly AbstractRegex As RParams = RParams.DM("[^/]+", 0, RegexReturn.List, EDP.ReturnValue) + Private ReadOnly SearchRegex As RParams = RParams.DMS("\?k=([^&]+)&?((.*)(&p=\d+)|(.*))", 0, RegexReturn.ListByMatch, EDP.ReturnValue) Friend Overrides Function IsMyUser(ByVal UserURL As String) As ExchangeOptions If Not UserURL.IsEmptyString Then - If Domains.Count > 0 Then + UserURL = UserURL.ToLower + If Domains.Count > 0 AndAlso Domains.Domains.Exists(Function(d) UserURL.Contains(d)) Then Dim uName$, uOpt$, fStr$ Dim uErr As New ErrorsDescriber(EDP.ReturnValue) For i% = 0 To Domains.Count - 1 @@ -103,9 +103,41 @@ Namespace API.XVIDEOS uName = RegexReplace(UserURL, RParams.DMS(fStr, 2, uErr)) If Not uName.IsEmptyString Then uOpt = RegexReplace(UserURL, RParams.DMS(fStr, 1)) - If Not uOpt.IsEmptyString Then Return New ExchangeOptions(Site, $"{uOpt}_{uName}") + If Not uOpt.IsEmptyString Then Return New ExchangeOptions(Site, $"{uOpt}@{uName}") End If Next + + Dim absList As List(Of String) = RegexReplace(UserURL, AbstractRegex) + If absList.ListExists(3) AndAlso Not absList(2).IsEmptyString Then + If absList(2) = "c" Then + If absList.Count > 3 AndAlso Not absList.Last.IsEmptyString AndAlso IsNumeric(absList.Last) Then absList.RemoveAt(absList.Count - 1) + If absList.Count > 3 Then + uName = $"{CInt(SiteModes.Categories)}@{absList.Last}" + uOpt = $"{absList.Last}@" + absList.RemoveAt(absList.Count - 1) + If absList.Count > 3 Then uOpt &= absList.ListTake(2, absList.Count).ListToString("/") + Return New ExchangeOptions(Site, uName) With {.Options = uOpt} + End If + ElseIf absList(2) = "tags" And absList.Count >= 4 Then + If Not absList.Last.IsEmptyString AndAlso IsNumeric(absList.Last) Then absList.RemoveAt(absList.Count - 1) + If absList.Count > 3 Then + uOpt = String.Empty + uName = absList.Last + absList.RemoveAt(absList.Count - 1) + If absList.Count > 3 Then uOpt = absList.ListTake(2, 100, EDP.ReturnValue).ListToString("/").StringTrimStart("/").StringTrimEnd("/") + uOpt = $"{uName}@{uOpt}" + uName = $"{CInt(SiteModes.Tags)}@{uName.StringRemoveWinForbiddenSymbols}" + Return New ExchangeOptions(Site, uName) With {.Options = uOpt} + End If + ElseIf absList.Count = 3 And Not absList(2).IsEmptyString Then + absList = RegexReplace(absList(2), SearchRegex) + If absList.ListExists(6) AndAlso Not absList(1).IsEmptyString Then + uName = $"{CInt(SiteModes.Search)}@{absList(1).StringRemoveWinForbiddenSymbols}" + uOpt = $"{absList(1)}@{absList(3).IfNullOrEmpty(absList(5))}" + Return New ExchangeOptions(Site, uName) With {.Options = uOpt} + End If + End If + End If End If End If Return Nothing @@ -116,6 +148,14 @@ Namespace API.XVIDEOS End If Return Nothing End Function +#End Region +#Region "UserOptions" + Friend Overrides Sub UserOptions(ByRef Options As Object, ByVal OpenForm As Boolean) + If Options Is Nothing OrElse Not TypeOf Options Is UserExchangeOptions Then Options = New UserExchangeOptions + If OpenForm Then + Using f As New InternalSettingsForm(Options, Me, False) : f.ShowDialog() : End Using + End If + End Sub #End Region End Class End Namespace \ No newline at end of file diff --git a/SCrawler/API/XVIDEOS/UserData.vb b/SCrawler/API/XVIDEOS/UserData.vb index b1354e8..13e520a 100644 --- a/SCrawler/API/XVIDEOS/UserData.vb +++ b/SCrawler/API/XVIDEOS/UserData.vb @@ -16,6 +16,13 @@ Imports PersonalUtilities.Tools.Web.Documents.JSON Imports UTypes = SCrawler.API.Base.UserMedia.Types Namespace API.XVIDEOS Friend Class UserData : Inherits UserDataBase +#Region "XML names" + Private Const Name_SiteMode As String = "SiteMode" + Private Const Name_TrueName As String = "TrueName" + Private Const Name_Arguments As String = "Arguments" + Private Const Name_PersonType As String = "PersonType" +#End Region +#Region "Structures" Private Structure PlayListVideo : Implements IRegExCreator Friend ID As String Friend URL As String @@ -33,23 +40,171 @@ Namespace API.XVIDEOS Return New UserMedia(URL, UTypes.VideoPre) With {.Object = Me, .PictureOption = Title, .Post = ID} End Function End Structure +#End Region +#Region "Declarations" + Friend Overrides ReadOnly Property FeedIsUser As Boolean + Get + Return SiteMode = SiteModes.User + End Get + End Property + Private Property SiteMode As SiteModes = SiteModes.User + Private Property TrueName As String = String.Empty + Private Property Arguments As String = String.Empty + Private Property PersonType As String = String.Empty + Friend Overrides ReadOnly Property SpecialLabels As IEnumerable(Of String) + Get + Return {SearchRequestLabelName} + End Get + End Property + Friend Property QueryString As String + Get + If SiteMode = SiteModes.User Then + Return String.Empty + Else + Return GetUserUrl(0) + End If + End Get + Set(ByVal q As String) + UpdateUserOptions(True, q) + End Set + End Property Private ReadOnly Property MySettings As SiteSettings Get Return DirectCast(HOST.Source, SiteSettings) End Get End Property - Protected Overrides Sub LoadUserInformation_OptionalFields(ByRef Container As XmlFile, ByVal Loading As Boolean) +#End Region +#Region "Load" + Friend Overrides Function ExchangeOptionsGet() As Object + Return New UserExchangeOptions(Me) + End Function + Friend Overrides Sub ExchangeOptionsSet(ByVal Obj As Object) + If Not Obj Is Nothing AndAlso TypeOf Obj Is UserExchangeOptions Then QueryString = DirectCast(Obj, UserExchangeOptions).QueryString End Sub + Private Function UpdateUserOptions(Optional ByVal Force As Boolean = False, Optional ByVal NewUrl As String = Nothing) As Boolean + If Not Force OrElse (Not SiteMode = SiteModes.User AndAlso Not NewUrl.IsEmptyString AndAlso MyFileSettings.Exists) Then + Dim eObj As Plugin.ExchangeOptions = Nothing + If Force Then eObj = MySettings.IsMyUser(NewUrl) + If (Force And Not eObj.UserName.IsEmptyString) Or (Not Force And TrueName.IsEmptyString) Then + Dim n$() = If(Force, eObj.UserName, Name).Split("@") + If n.ListExists(2) Then + Dim opt$ = If(Force, eObj.Options, Options) + If opt.IsEmptyString AndAlso Not IsNumeric(n(0)) Then + If Not Force Then + PersonType = n(0) + TrueName = If(Force, eObj.UserName, Name).Replace($"{PersonType}@", String.Empty) + End If + ElseIf Not opt.IsEmptyString Then + Dim n2$() = opt.Split("@") + Dim __SiteMode As SiteModes = CInt(n(0)) + Dim __TrueName$ = n2.FirstOrDefault + Dim __Arguments$ = opt.Replace($"{__TrueName}@", String.Empty) + Dim __ForceApply As Boolean = False + + If Force AndAlso (Not TrueName = __TrueName Or Not SiteMode = __SiteMode) Then + If ValidateChangeSearchOptions(ToStringForLog, $"{__SiteMode}: {__TrueName}", $"{SiteMode}: {TrueName}") Then + __ForceApply = True + Else + Return False + End If + End If + + Arguments = __Arguments + Options = opt + If Not Force Then + SiteMode = __SiteMode + TrueName = __TrueName + UserSiteName = $"{SiteMode}: {TrueName}" + If FriendlyName.IsEmptyString Then FriendlyName = UserSiteName + Settings.Labels.Add(SearchRequestLabelName) + Labels.ListAddValue(SearchRequestLabelName, LNC) + Labels.Sort() + ElseIf Force And __ForceApply Then + SiteMode = __SiteMode + TrueName = __TrueName + End If + + Return True + End If + End If + End If + End If + Return False + End Function + Protected Overrides Sub LoadUserInformation_OptionalFields(ByRef Container As XmlFile, ByVal Loading As Boolean) + With Container + If Loading Then + SiteMode = .Value(Name_SiteMode).FromXML(Of Integer)(SiteModes.User) + TrueName = .Value(Name_TrueName) + Arguments = .Value(Name_Arguments) + PersonType = .Value(Name_PersonType) + If PersonType.IsEmptyString And TrueName.IsEmptyString And Not Name.IsEmptyString Then + If Not Name.Contains("@") Then + Dim n$() = Name.Split("_") + PersonType = n(0) + TrueName = Name.Replace($"{PersonType}_", String.Empty) + End If + End If + UpdateUserOptions() + Else + If UpdateUserOptions() Then + .Value(Name_LabelsName) = LabelsString + .Value(Name_UserSiteName) = UserSiteName + .Value(Name_FriendlyName) = FriendlyName + End If + .Add(Name_SiteMode, CInt(SiteMode)) + .Add(Name_TrueName, TrueName) + .Add(Name_Arguments, Arguments) + .Add(Name_PersonType, PersonType) + + 'Debug.WriteLine(GetUserUrl(0)) + 'Debug.WriteLine(GetUserUrl(2)) + End If + End With + End Sub +#End Region +#Region "Initializer" Friend Sub New() SeparateVideoFolder = False UseInternalM3U8Function = True UseClientTokens = True End Sub +#End Region + Friend Function GetUserUrl(ByVal Page As Integer) As String + Dim url$ = String.Empty + If SiteMode = SiteModes.User Then + url = $"https://xvideos.com/{PersonType}/{TrueName}" + ElseIf SiteMode = SiteModes.Categories Then + url = "https://xvideos.com/c/" + If Not Arguments.IsEmptyString Then url &= $"{Arguments}/" + url &= TrueName + If Page > 1 Then url &= $"/{Page - 1}" + ElseIf SiteMode = SiteModes.Tags Then + url = "https://www.xvideos.com/tags/" + If Not Arguments.IsEmptyString Then url &= $"{Arguments}/" + url &= $"{TrueName}/" + If Page > 1 Then url &= Page - 1 + ElseIf SiteMode = SiteModes.Search Then + url = $"https://www.xvideos.com/?k={TrueName}" + If Not Arguments.IsEmptyString Then url &= $"&{Arguments}" + If Page > 1 Then url &= $"&p={Page - 1}" + End If + Return url + End Function + Private Sub Wait429(ByVal Round As Integer) + If (Round Mod 5) = 0 Then + Thread.Sleep(5000 + (Round / 5).RoundDown) + Else + Thread.Sleep(1000) + End If + End Sub Protected Overrides Sub DownloadDataF(ByVal Token As CancellationToken) If Not Settings.UseM3U8 Then MyMainLOG = $"{ToStringForLog()}: File [ffmpeg.exe] not found" : Exit Sub If IsSavedPosts Then If Not ACheck(MySettings.SavedVideosPlaylist.Value) Then Throw New ArgumentNullException("SavedVideosPlaylist", "Playlist of saved videos cannot be null") DownloadSavedVideos(Token) + ElseIf Not SiteMode = SiteModes.User Then + DownloadSavedVideos(Token) Else DownloadUserVideo(Token) End If @@ -59,11 +214,11 @@ Namespace API.XVIDEOS Dim isQuickies As Boolean = False Try Dim NextPage%, d% + Dim round% = 0 Dim limit% = If(DownloadTopCount, -1) Dim r$, n$ Dim j As EContainer = Nothing Dim jj As EContainer - Dim user$ = MySettings.GetUserUrlPart(Me) Dim p As UserMedia Dim EnvirSet As Boolean = False @@ -74,9 +229,12 @@ Namespace API.XVIDEOS d = 0 n = IIf(i = 0, "u", "url") Do + round += 1 + Wait429(round) ThrowAny(Token) If i = 0 Then - URL = $"https://www.xvideos.com/{user}/videos/new/{If(NextPage = 0, String.Empty, NextPage)}" + URL = GetUserUrl(0) + URL &= $"/videos/new/{If(NextPage = 0, String.Empty, NextPage)}" Else 'Quickies URL = $"https://www.xvideos.com/quickies-api/profilevideos/all/none/N/{ID}/{NextPage}" isQuickies = True @@ -95,10 +253,7 @@ Namespace API.XVIDEOS NextPage += 1 For Each jj In .Self ProgressPre.Perform() - p = New UserMedia With { - .Post = jj.Value("id"), - .URL = $"https://www.xvideos.com/{jj.Value(n).StringTrimStart("/")}" - } + p = New UserMedia($"https://www.xvideos.com/{jj.Value(n).StringTrimStart("/")}") With {.Post = jj.Value("id")} If Not p.Post.ID.IsEmptyString And Not jj.Value(n).IsEmptyString Then If Not _TempPostsList.Contains(p.Post.ID) Then _TempPostsList.Add(p.Post.ID) @@ -124,10 +279,19 @@ Namespace API.XVIDEOS If Not j Is Nothing Then j.Dispose() + If limit > 0 And _TempMediaList.Count >= limit Then _TempMediaList.ListAddList(_TempMediaList.ListTake(-1, limit), LAP.ClearBeforeAdd) If _TempMediaList.Count > 0 Then - ProgressPre.ChangeMax(_TempMediaList.Count) + If IsSubscription Then + Progress.Maximum += _TempMediaList.Count + Else + ProgressPre.ChangeMax(_TempMediaList.Count) + End If For i% = 0 To _TempMediaList.Count - 1 - ProgressPre.Perform() + If IsSubscription Then + Progress.Perform() + Else + ProgressPre.Perform() + End If ThrowAny(Token) _TempMediaList(i) = GetVideoData(_TempMediaList(i)) Next @@ -140,25 +304,40 @@ Namespace API.XVIDEOS End Try End Sub Private Sub GetUserID() - Dim r$ = Responser.GetResponse($"https://www.xvideos.com/{MySettings.GetUserUrlPart(Me)}",, EDP.ReturnValue) + Dim r$ = Responser.GetResponse(GetUserUrl(0),, EDP.ReturnValue) If Not r.IsEmptyString Then ID = RegexReplace(r, RParams.DMS("""id_user"":(\d+)", 1, EDP.ReturnValue)) End Sub Private Sub DownloadSavedVideos(ByVal Token As CancellationToken) Dim URL$ = MySettings.SavedVideosPlaylist.Value Try - Dim NextPage% = 0 + Dim NextPage% = IIf(SiteMode = SiteModes.User, -1, 0) + Dim startPage% = NextPage Dim __continue As Boolean = True Dim r$ + Dim round% = 0 Dim data As List(Of PlayListVideo) - Dim i% + Dim cBefore% + + Dim limit% = If(DownloadTopCount, -1) Do + round += 1 + Wait429(round) ThrowAny(Token) - URL = $"{MySettings.SavedVideosPlaylist.Value}{If(NextPage = 0, String.Empty, $"/{NextPage}")}" + NextPage += 1 + cBefore = _TempMediaList.Count + + If SiteMode = SiteModes.User Then + URL = $"{MySettings.SavedVideosPlaylist.Value}{If(NextPage = 0, String.Empty, $"/{NextPage}")}" + Else + URL = GetUserUrl(NextPage) + End If + r = Responser.GetResponse(URL,, EDP.ReturnValue) + If Responser.HasError Then If Responser.StatusCode = Net.HttpStatusCode.NotFound Then - If NextPage = 0 Then - MyMainLOG = $"XVIDEOS saved video playlist {URL} not found." + If NextPage = startPage Then + If SiteMode = SiteModes.User Then MyMainLOG = $"XVIDEOS saved video playlist {URL} not found." Exit Sub Else Exit Do @@ -167,26 +346,32 @@ Namespace API.XVIDEOS Throw New Exception(Responser.ErrorText, Responser.ErrorException) End If End If - NextPage += 1 + If Not r.IsEmptyString Then data = RegexFields(Of PlayListVideo)(r, {Regex_SavedVideosPlaylist}, {1, 2, 3}, EDP.ReturnValue) If data.ListExists Then If data.RemoveAll(Function(d) _TempPostsList.Contains(d.ID)) > 0 Then __continue = False If data.ListExists Then _TempPostsList.ListAddList(data.Select(Function(d) d.ID), LNC) - i = _TempMediaList.Count _TempMediaList.ListAddList(data.Select(Function(d) d.ToUserMedia()), LNC) - If _TempMediaList.Count = i Or Not __continue Then Exit Do Else Continue Do End If End If End If - Exit Do - Loop While NextPage < 100 And __continue + Loop While NextPage < 100 And __continue And _TempMediaList.Count > cBefore And (limit < 0 Or _TempMediaList.Count < limit) + If limit > 0 And _TempMediaList.Count >= limit Then _TempMediaList.ListAddList(_TempMediaList.ListTake(-1, limit), LAP.ClearBeforeAdd) If _TempMediaList.Count > 0 Then - ProgressPre.ChangeMax(_TempMediaList.Count) + If SiteMode = SiteModes.User Then + ProgressPre.ChangeMax(_TempMediaList.Count) + Else + Progress.Maximum += _TempMediaList.Count + End If For i% = 0 To _TempMediaList.Count - 1 - ProgressPre.Perform() + If SiteMode = SiteModes.User Then + ProgressPre.Perform() + Else + Progress.Perform() + End If ThrowAny(Token) _TempMediaList(i) = GetVideoData(_TempMediaList(i)) Next @@ -205,31 +390,50 @@ Namespace API.XVIDEOS If Not NewUrl.IsEmptyString Then Dim appender$ = RegexReplace(NewUrl, Regex_M3U8_Appender) Dim t$ = If(Media.PictureOption.IsEmptyString, RegexReplace(r, Regex_VideoTitle), Media.PictureOption) - r = Responser.GetResponse(NewUrl) - If Not r.IsEmptyString Then - Dim ls As List(Of Sizes) = RegexFields(Of Sizes)(r, {Regex_M3U8_Reparse}, {1, 2}) - If ls.ListExists And Not MySettings.DownloadUHD.Value Then ls.RemoveAll(Function(v) Not v.Value.ValueBetween(1, 1080)) - If ls.ListExists Then - ls.Sort() - NewUrl = $"{appender}/{ls(0).Data.StringTrimStart("/")}" - ls.Clear() - Dim pID$ = Media.Post.ID - If pID.IsEmptyString Then pID = RegexReplace(r, Regex_VideoID) - If pID.IsEmptyString Then pID = "0" - - t = t.StringRemoveWinForbiddenSymbols.StringTrim - If t.IsEmptyString Then - t = pID + If IsSubscription Then + Dim thumb$ = RegexReplace(r, Regex_VideoThumbBig) + If thumb.IsEmptyString Then thumb = RegexReplace(r, Regex_VideoThumbSmall) + If thumb.IsEmptyString Then thumb = RegexReplace(r, Regex_VideosThumb_OG_IMAGE) + If Not thumb.IsEmptyString Then + Media.URL = thumb + If Not t.IsEmptyString Then + Media.PictureOption = t + Media.File = $"{t}.mp4" Else - If t.Length > 100 Then t = Left(t, 100) + Media.PictureOption = "Video" + Media.File = "Video.mp4" End If - If Not NewUrl.IsEmptyString Then - Return New UserMedia(NewUrl, UTypes.m3u8) With { - .Post = pID, - .URL_BASE = Media.URL, - .File = $"{t}.mp4", - .PictureOption = appender - } + Return Media + Else + Return Nothing + End If + Else + r = Responser.GetResponse(NewUrl) + If Not r.IsEmptyString Then + Dim ls As List(Of Sizes) = RegexFields(Of Sizes)(r, {Regex_M3U8_Reparse}, {1, 2}) + If ls.ListExists And Not MySettings.DownloadUHD.Value Then ls.RemoveAll(Function(v) Not v.Value.ValueBetween(1, 1080)) + If ls.ListExists Then + ls.Sort() + NewUrl = $"{appender}/{ls(0).Data.StringTrimStart("/")}" + ls.Clear() + Dim pID$ = Media.Post.ID + If pID.IsEmptyString Then pID = RegexReplace(r, Regex_VideoID) + If pID.IsEmptyString Then pID = "0" + + t = t.StringRemoveWinForbiddenSymbols.StringTrim + If t.IsEmptyString Then + t = pID + Else + If t.Length > 100 Then t = Left(t, 100) + End If + If Not NewUrl.IsEmptyString Then + Return New UserMedia(NewUrl, UTypes.m3u8) With { + .Post = pID, + .URL_BASE = Media.URL, + .File = $"{t}.mp4", + .PictureOption = appender + } + End If End If End If End If diff --git a/SCrawler/API/XVIDEOS/UserExchangeOptions.vb b/SCrawler/API/XVIDEOS/UserExchangeOptions.vb new file mode 100644 index 0000000..593fefc --- /dev/null +++ b/SCrawler/API/XVIDEOS/UserExchangeOptions.vb @@ -0,0 +1,17 @@ +' Copyright (C) 2023 Andy https://github.com/AAndyProgram +' This program 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. +' +' This program is distributed in the hope that it will be useful, +' but WITHOUT ANY WARRANTY +Namespace API.XVIDEOS + Friend Class UserExchangeOptions : Inherits Xhamster.UserExchangeOptions + Friend Sub New() + End Sub + Friend Sub New(ByVal u As UserData) + QueryString = u.QueryString + End Sub + End Class +End Namespace \ No newline at end of file diff --git a/SCrawler/API/Xhamster/SiteSettings.vb b/SCrawler/API/Xhamster/SiteSettings.vb index 39b1b5e..df33387 100644 --- a/SCrawler/API/Xhamster/SiteSettings.vb +++ b/SCrawler/API/Xhamster/SiteSettings.vb @@ -12,7 +12,7 @@ Imports SCrawler.Plugin.Attributes Imports PersonalUtilities.Tools.Web.Clients Imports PersonalUtilities.Functions.RegularExpressions Namespace API.Xhamster - + Friend Class SiteSettings : Inherits SiteSettingsBase #Region "Declarations" Friend Overrides ReadOnly Property Icon As Icon @@ -39,7 +39,7 @@ Namespace API.Xhamster Domains.DestinationProp = SiteDomains DownloadUHD = New PropertyValue(False) - + _SubscriptionsAllowed = True UrlPatternUser = "https://xhamster.com/{0}/{1}" UserRegex = RParams.DMS($"/({UserOption}|{ChannelOption})/([^/]+)(\Z|.*)", 0, RegexReturn.ListByMatch) ImageVideoContains = "xhamster" @@ -77,18 +77,60 @@ Namespace API.Xhamster End If End Function Friend Overrides Function GetUserUrl(ByVal User As IPluginContentProvider) As String - With DirectCast(User, UserData) : Return String.Format(UrlPatternUser, IIf(.IsChannel, ChannelOption, UserOption), .TrueName) : End With + With DirectCast(User, UserData) + If Not .SiteMode = SiteModes.User Then + Return .GetNonUserUrl(0) + Else + Return String.Format(UrlPatternUser, IIf(.IsChannel, ChannelOption, UserOption), .TrueName) + End If + End With End Function #Region "IsMyUser, IsMyImageVideo" Friend Const ChannelOption As String = "channels" Private Const UserOption As String = "users" + Friend Const P_Search As String = "search" + Friend Const P_Tags As String = "tags" + Friend Const P_Categories As String = "categories" + Friend Const P_Pornstars = "pornstars" + Private ReadOnly NonUsersRegex As RParams = RParams.DM("https?://[^/]+/((gay)/|(shemale)/|)(pornstars|tags|categories|search)/([^/\?]+)[/\?]?(.*)", 0, + RegexReturn.ListByMatch, EDP.ReturnValue) + Private ReadOnly PageRemover_1 As RParams = RParams.DM("[\?&]?[Pp]age=\d+", 0, RegexReturn.Replace, EDP.ReturnValue, + CType(Function(input) String.Empty, Func(Of String, String))) + Private ReadOnly PageRemover_2 As RParams = RParams.DM("/\d+\?", 0, RegexReturn.Replace, EDP.ReturnValue, + CType(Function(input) "?", Func(Of String, String))) Friend Overrides Function IsMyUser(ByVal UserURL As String) As ExchangeOptions If Not UserURL.IsEmptyString AndAlso Domains.Domains.Count > 0 AndAlso Domains.Domains.Exists(Function(d) UserURL.ToLower.Contains(d.ToLower)) Then + Dim n$, opt$ Dim data As List(Of String) = RegexReplace(UserURL, UserRegex) If data.ListExists(3) AndAlso Not data(2).IsEmptyString Then - Dim n$ = data(2) + n = data(2) If Not data(1).IsEmptyString AndAlso data(1) = ChannelOption Then n &= $"@{data(1)}" Return New ExchangeOptions(Site, n) + Else + data = RegexReplace(UserURL, NonUsersRegex) + If data.ListExists(7) AndAlso Not data(5).IsEmptyString Then + n = data(5).StringRemoveWinForbiddenSymbols + If Not n.IsEmptyString And Not data(4).IsEmptyString Then + Dim mode As SiteModes + Select Case data(4) + Case P_Search : mode = SiteModes.Search + Case P_Tags : mode = SiteModes.Tags + Case P_Categories : mode = SiteModes.Categories + Case P_Pornstars : mode = SiteModes.Pornstars + Case Else : Return Nothing + End Select + n = $"{CInt(mode)}@{n}" + Dim tmpOpt$ = data(6) + + If Not tmpOpt.IsEmptyString Then + tmpOpt = RegexReplace(tmpOpt, PageRemover_1) + tmpOpt = RegexReplace(tmpOpt, PageRemover_2) + End If + 'mode@gay@tags@arguments@query + opt = $"{CInt(mode)}@{data(2)}@{data(4)}@{tmpOpt}@{data(5)}" + Return New ExchangeOptions(Site, n) With {.Options = opt} + End If + End If End If End If Return Nothing @@ -99,6 +141,14 @@ Namespace API.Xhamster End If Return Nothing End Function +#End Region +#Region "UserOptions" + Friend Overrides Sub UserOptions(ByRef Options As Object, ByVal OpenForm As Boolean) + If Options Is Nothing OrElse Not TypeOf Options Is UserExchangeOptions Then Options = New UserExchangeOptions + If OpenForm Then + Using f As New InternalSettingsForm(Options, Me, False) : f.ShowDialog() : End Using + End If + End Sub #End Region End Class End Namespace \ No newline at end of file diff --git a/SCrawler/API/Xhamster/UserData.vb b/SCrawler/API/Xhamster/UserData.vb index d5c8b5a..73102c1 100644 --- a/SCrawler/API/Xhamster/UserData.vb +++ b/SCrawler/API/Xhamster/UserData.vb @@ -19,10 +19,38 @@ Namespace API.Xhamster Friend Class UserData : Inherits UserDataBase #Region "XML names" Private Const Name_TrueName As String = "TrueName" + Private Const Name_Gender As String = "Gender" + Private Const Name_SiteMode As String = "SiteMode" + Private Const Name_Arguments As String = "Arguments" #End Region #Region "Declarations" + Friend Overrides ReadOnly Property FeedIsUser As Boolean + Get + Return SiteMode = SiteModes.User + End Get + End Property Friend Property IsChannel As Boolean = False Friend Property TrueName As String = String.Empty + Friend Property Gender As String = String.Empty + Friend Property SiteMode As SiteModes = SiteModes.User + Friend Property Arguments As String = String.Empty + Friend Overrides ReadOnly Property SpecialLabels As IEnumerable(Of String) + Get + Return {SearchRequestLabelName} + End Get + End Property + Friend Property QueryString As String + Get + If SiteMode = SiteModes.User Then + Return String.Empty + Else + Return GetNonUserUrl(0) + End If + End Get + Set(ByVal q As String) + UpdateUserOptions(True, q) + End Set + End Property Private ReadOnly Property MySettings As SiteSettings Get Return DirectCast(HOST.Source, SiteSettings) @@ -32,35 +60,106 @@ Namespace API.Xhamster Friend IsPhoto As Boolean End Structure Private ReadOnly _TempPhotoData As List(Of UserMedia) + Private Function UpdateUserOptions(Optional ByVal Force As Boolean = False, Optional ByVal NewUrl As String = Nothing) As Boolean + If Not Force OrElse (Not SiteMode = SiteModes.User AndAlso Not NewUrl.IsEmptyString AndAlso MyFileSettings.Exists) Then + Dim eObj As Plugin.ExchangeOptions = Nothing + If Force Then eObj = MySettings.IsMyUser(NewUrl) + If (Force And Not eObj.UserName.IsEmptyString) Or (Not Force And TrueName.IsEmptyString) Then + Dim n$() = If(Force, eObj.UserName, Name).Split("@") + If n.ListExists Then + If n.Length = 2 And If(Force, eObj.Options, Options).IsEmptyString Then + If Force Then Return False + TrueName = n(0) + IsChannel = True + ElseIf IsChannel Then + If Force Then Return False + TrueName = Name + ElseIf Not If(Force, eObj.Options, Options).IsEmptyString Then + Dim __TrueName$, __Arguments$, __Gender$ + Dim __Mode As SiteModes + Dim __ForceApply As Boolean = False + Dim n2 As List(Of String) = If(Force, eObj.Options, Options).Split("@").ListIfNothing + If n2.ListExists Then + IsChannel = False + __Mode = CInt(n2(0)) + __Gender = n2(1) + __Arguments = n2(3) + __TrueName = n2.ListTake(3, 100, EDP.ReturnValue).ListToString(String.Empty) + + If Force AndAlso (Not TrueName = __TrueName Or Not SiteMode = __Mode Or Not Gender = __Gender) Then + If ValidateChangeSearchOptions(ToStringForLog, + $"{__Mode}{IIf(__Gender.IsEmptyString, String.Empty, $" ({__Gender})")}: {__TrueName}", + $"{SiteMode}{IIf(Gender.IsEmptyString, String.Empty, $" ({Gender})")}: {TrueName}") Then + __ForceApply = True + Else + Return False + End If + End If + + Arguments = __Arguments + Options = If(Force, eObj.Options, Options) + If Not Force Then + TrueName = __TrueName + SiteMode = __Mode + Gender = __Gender + + UserSiteName = $"{SiteMode}: {TrueName}" + If FriendlyName.IsEmptyString Then FriendlyName = UserSiteName + Settings.Labels.Add(SearchRequestLabelName) + Labels.ListAddValue(SearchRequestLabelName, LNC) + Labels.Sort() + ElseIf Force And __ForceApply Then + TrueName = __TrueName + SiteMode = __Mode + Gender = __Gender + End If + + Return True + Else + If Force Then Return False + UserExists = False + End If + Else + If Force Then Return False + TrueName = n(0) + End If + End If + End If + End If + Return False + End Function Protected Overrides Sub LoadUserInformation_OptionalFields(ByRef Container As XmlFile, ByVal Loading As Boolean) - Dim setNames As Action = Sub() - If TrueName.IsEmptyString Then - Dim n$() = Name.Split("@") - If n.ListExists Then - If n.Length = 2 Then - TrueName = n(0) - IsChannel = True - ElseIf IsChannel Then - TrueName = Name - Else - TrueName = n(0) - End If - End If - End If - End Sub With Container If Loading Then IsChannel = .Value(Name_IsChannel).FromXML(Of Boolean)(False) TrueName = .Value(Name_TrueName) - setNames.Invoke + Gender = .Value(Name_Gender) + SiteMode = .Value(Name_SiteMode).FromXML(Of Integer)(SiteModes.User) + Arguments = .Value(Name_Arguments) + UpdateUserOptions() Else - setNames.Invoke + If UpdateUserOptions() Then + .Value(Name_LabelsName) = LabelsString + .Value(Name_UserSiteName) = UserSiteName + .Value(Name_FriendlyName) = FriendlyName + End If .Add(Name_IsChannel, IsChannel.BoolToInteger) .Add(Name_TrueName, TrueName) - setNames.Invoke + .Add(Name_Gender, Gender) + .Add(Name_SiteMode, CInt(SiteMode)) + .Add(Name_Arguments, Arguments) + + 'Debug.WriteLine(GetNonUserUrl(0)) + 'Debug.WriteLine(GetNonUserUrl(2)) End If End With End Sub + Friend Overrides Function ExchangeOptionsGet() As Object + Return New UserExchangeOptions(Me) + End Function + Friend Overrides Sub ExchangeOptionsSet(ByVal Obj As Object) + If Not Obj Is Nothing AndAlso TypeOf Obj Is UserExchangeOptions Then QueryString = DirectCast(Obj, UserExchangeOptions).QueryString + End Sub #End Region #Region "Initializer" Friend Sub New() @@ -69,11 +168,56 @@ Namespace API.Xhamster _TempPhotoData = New List(Of UserMedia) End Sub #End Region -#Region "Download base functions" +#Region "Download functions" + Friend Function GetNonUserUrl(ByVal Page As Integer) As String + If SiteMode = SiteModes.User Then + Return String.Empty + Else + Dim url$ = "https://xhamster.com/" + If Not Gender.IsEmptyString Then url &= $"{Gender}/" + Select Case SiteMode + Case SiteModes.Tags : url &= SiteSettings.P_Tags + Case SiteModes.Categories : url &= SiteSettings.P_Categories + Case SiteModes.Search : url &= SiteSettings.P_Search + Case SiteModes.Pornstars : url &= SiteSettings.P_Pornstars + Case Else : Return String.Empty + End Select + url &= $"/{TrueName}" + + Dim args$ = Arguments + If Page > 1 Then + If args.IsEmptyString Then + If SiteMode = SiteModes.Search Then + args = $"?page={Page}" + Else + args = $"/{Page}" + End If + Else + If SiteMode = SiteModes.Search Then + args = $"?{args}&page={Page}" + Else + If args.Contains("?") Then + args = $"/{args.Replace("?", $"/{Page}?")}" + Else + args = $"/{args.StringTrimEnd("/")}/{Page}" + End If + End If + End If + Else + If Not args.IsEmptyString Then args = $"{IIf(SiteMode = SiteModes.Search, "?", "/")}{args}" + End If + + url &= args + + Return url + End If + End Function + Private SearchPostsCount As Integer = 0 Protected Overrides Sub DownloadDataF(ByVal Token As CancellationToken) _TempPhotoData.Clear() + SearchPostsCount = 0 If DownloadVideos Then DownloadData(1, True, Token) - If Not IsChannel And DownloadImages Then + If Not IsChannel And DownloadImages And Not IsSubscription Then DownloadData(1, False, Token) ReparsePhoto(Token) End If @@ -85,19 +229,35 @@ Namespace API.Xhamster Dim Type As UTypes = IIf(IsVideo, UTypes.VideoPre, UTypes.Picture) Dim mPages$ = IIf(IsVideo, "maxVideoPages", "maxPhotoPages") Dim listNode$() + Dim containerNodes As New List(Of String()) Dim skipped As Boolean = False + Dim limit% = If(DownloadTopCount, -1) Dim cBefore% = _TempMediaList.Count Dim m As UserMedia + Dim checkLimit As Func(Of Boolean) = Function() limit > 0 And SearchPostsCount >= limit And IsVideo If IsSavedPosts Then URL = $"https://xhamster.com/my/favorites/{IIf(IsVideo, "videos", "photos-and-galleries")}{IIf(Page = 1, String.Empty, $"/{Page}")}" - listNode = If(IsVideo, {"favoriteVideoListComponent", "models"}, {"favoritesGalleriesAndPhotosCollection"}) + containerNodes.Add(If(IsVideo, {"favoriteVideoListComponent", "models"}, {"favoritesGalleriesAndPhotosCollection"})) ElseIf IsChannel Then URL = $"https://xhamster.com/channels/{TrueName}/newest{IIf(Page = 1, String.Empty, $"/{Page}")}" - listNode = {"trendingVideoListComponent", "models"} + containerNodes.Add({"trendingVideoListComponent", "models"}) + containerNodes.Add({"pagesCategoryComponent", "trendingVideoListProps", "models"}) + ElseIf SiteMode = SiteModes.Search Then + URL = GetNonUserUrl(Page) + containerNodes.Add({"searchResult", "models"}) + ElseIf SiteMode = SiteModes.Tags Or SiteMode = SiteModes.Categories Or SiteMode = SiteModes.Pornstars Then + URL = GetNonUserUrl(Page) + If SiteMode = SiteModes.Pornstars Then + containerNodes.Add({"trendingVideoListComponent", "models"}) + containerNodes.Add({"pagesCategoryComponent", "trendingVideoListProps", "models"}) + Else + containerNodes.Add({"pagesCategoryComponent", "trendingVideoListProps", "models"}) + containerNodes.Add({"trendingVideoListComponent", "models"}) + End If Else URL = $"https://xhamster.com/users/{TrueName}/{IIf(IsVideo, "videos", "photos")}{IIf(Page = 1, String.Empty, $"/{Page}")}" - listNode = {If(IsVideo, "userVideoCollection", "userGalleriesCollection")} + containerNodes.Add({If(IsVideo, "userVideoCollection", "userGalleriesCollection")}) End If ThrowAny(Token) @@ -111,47 +271,54 @@ Namespace API.Xhamster MaxPage = j.Value(mPages).FromXML(Of Integer)(-1) - With j(listNode) - If .ListExists Then - ProgressPre.ChangeMax(.Count) - For Each e As EContainer In .Self - ProgressPre.Perform() - m = ExtractMedia(e, Type) - If Not m.URL.IsEmptyString Then - If m.File.IsEmptyString Then Continue For + For Each listNode In containerNodes + With j(listNode) + If .ListExists Then + ProgressPre.ChangeMax(.Count) + For Each e As EContainer In .Self + ProgressPre.Perform() + m = ExtractMedia(e, Type) + If Not m.URL.IsEmptyString Then + If m.File.IsEmptyString Then Continue For - If m.Post.Date.HasValue Then - Select Case CheckDatesLimit(m.Post.Date.Value, Nothing) - Case DateResult.Skip : skipped = True : Continue For - Case DateResult.Exit : Exit Sub - End Select - End If + If m.Post.Date.HasValue Then + Select Case CheckDatesLimit(m.Post.Date.Value, Nothing) + Case DateResult.Skip : skipped = True : Continue For + Case DateResult.Exit : Exit Sub + End Select + End If - If IsVideo AndAlso Not _TempPostsList.Contains(m.Post.ID) Then - _TempPostsList.Add(m.Post.ID) - _TempMediaList.ListAddValue(m, LNC) - ElseIf Not IsVideo Then - If DirectCast(m.Object, ExchObj).IsPhoto Then - If Not m.Post.ID.IsEmptyString AndAlso Not _TempPostsList.Contains(m.Post.ID) Then - _TempPostsList.Add(m.Post.ID) - _TempMediaList.ListAddValue(m, LNC) + If IsVideo AndAlso Not _TempPostsList.Contains(m.Post.ID) Then + _TempPostsList.Add(m.Post.ID) + _TempMediaList.ListAddValue(m, LNC) + SearchPostsCount += 1 + If checkLimit.Invoke Then Exit Sub + ElseIf Not IsVideo Then + If DirectCast(m.Object, ExchObj).IsPhoto Then + If Not m.Post.ID.IsEmptyString AndAlso Not _TempPostsList.Contains(m.Post.ID) Then + _TempPostsList.Add(m.Post.ID) + _TempMediaList.ListAddValue(m, LNC) + End If + Else + _TempPhotoData.ListAddValue(m, LNC) End If Else - _TempPhotoData.ListAddValue(m, LNC) + Exit Sub End If - Else - Exit Sub End If - End If - Next - End If - End With + Next + Exit For + End If + End With + Next End If End Using End If + containerNodes.Clear() + If (Not _TempMediaList.Count = cBefore Or skipped) And - (IsChannel Or (MaxPage > 0 And Page < MaxPage)) Then DownloadData(Page + 1, IsVideo, Token) + (IsChannel Or (MaxPage > 0 And Page < MaxPage) Or (Not SiteMode = SiteModes.User And Page < 1000)) Then DownloadData(Page + 1, IsVideo, Token) Catch ex As Exception ProcessException(ex, Token, $"data downloading error [{URL}]") End Try @@ -159,30 +326,64 @@ Namespace API.Xhamster #End Region #Region "Reparse video, photo" Protected Overrides Sub ReparseVideo(ByVal Token As CancellationToken) - Dim URL$ = String.Empty + If IsSubscription Then + ReparseVideoSubscriptions(Token) + Else + Try + If _TempMediaList.Count > 0 AndAlso _TempMediaList.Exists(Function(tm) tm.Type = UTypes.VideoPre) Then + Dim m As UserMedia, m2 As UserMedia + ProgressPre.ChangeMax(_TempMediaList.Count) + For i% = _TempMediaList.Count - 1 To 0 Step -1 + ProgressPre.Perform() + If _TempMediaList(i).Type = UTypes.VideoPre Then + m = _TempMediaList(i) + If Not m.URL_BASE.IsEmptyString Then + m2 = Nothing + If GetM3U8(m2, m.URL_BASE) Then + m2.URL_BASE = m.URL_BASE + _TempMediaList(i) = m2 + Else + m.State = UserMedia.States.Missing + _TempMediaList(i) = m + End If + End If + End If + Next + End If + Catch ex As Exception + ProcessException(ex, Token, "video reparsing error", False) + End Try + End If + End Sub + Private Sub ReparseVideoSubscriptions(ByVal Token As CancellationToken) Try If _TempMediaList.Count > 0 AndAlso _TempMediaList.Exists(Function(tm) tm.Type = UTypes.VideoPre) Then Dim m As UserMedia, m2 As UserMedia - ProgressPre.ChangeMax(_TempMediaList.Count) + Dim c% = 0 + Progress.Maximum += _TempMediaList.Count For i% = _TempMediaList.Count - 1 To 0 Step -1 - ProgressPre.Perform() + Progress.Perform() If _TempMediaList(i).Type = UTypes.VideoPre Then - m = _TempMediaList(i) - If Not m.URL_BASE.IsEmptyString Then - m2 = Nothing - If GetM3U8(m2, m.URL_BASE) Then - m2.URL_BASE = m.URL_BASE - _TempMediaList(i) = m2 - Else - m.State = UserMedia.States.Missing - _TempMediaList(i) = m + If Not DownloadTopCount.HasValue OrElse c <= DownloadTopCount.Value Then + m = _TempMediaList(i) + If Not m.URL_BASE.IsEmptyString Then + m2 = Nothing + If GetM3U8(m2, m.URL_BASE) Then + m2.URL_BASE = m.URL_BASE + _TempMediaList(i) = m2 + c += 1 + Else + _TempMediaList.RemoveAt(i) + End If End If + Else + _TempMediaList.RemoveAt(i) End If End If Next End If Catch ex As Exception - ProcessException(ex, Token, "video reparsing error", False) + ProcessException(ex, Token, "subscriptions video reparsing error", False) End Try End Sub Private Overloads Sub ReparsePhoto(ByVal Token As CancellationToken) @@ -277,7 +478,16 @@ Namespace API.Xhamster If j.ListExists Then m = ExtractMedia(j("videoModel"), UTypes.VideoPre) m.URL_BASE = URL - Return GetM3U8(m, j) + If IsSubscription Then + With j("videoModel") + If .ListExists Then + m.URL = .Value("thumbURL").IfNullOrEmpty(.Value("previewThumbURL")) + Return Not m.URL.IsEmptyString + End If + End With + Else + Return GetM3U8(m, j) + End If End If End Using End If diff --git a/SCrawler/API/Xhamster/UserExchangeOptions.vb b/SCrawler/API/Xhamster/UserExchangeOptions.vb new file mode 100644 index 0000000..39ae828 --- /dev/null +++ b/SCrawler/API/Xhamster/UserExchangeOptions.vb @@ -0,0 +1,21 @@ +' Copyright (C) 2023 Andy https://github.com/AAndyProgram +' This program 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. +' +' This program is distributed in the hope that it will be useful, +' but WITHOUT ANY WARRANTY +Imports SCrawler.Plugin.Attributes +Namespace API.Xhamster + Friend Class UserExchangeOptions + + Friend Property QueryString As String + Friend Sub New() + End Sub + Friend Sub New(ByVal u As UserData) + QueryString = u.QueryString + End Sub + End Class +End Namespace \ No newline at end of file diff --git a/SCrawler/API/YouTube/SiteSettings.vb b/SCrawler/API/YouTube/SiteSettings.vb index 7f9f69d..9163f25 100644 --- a/SCrawler/API/YouTube/SiteSettings.vb +++ b/SCrawler/API/YouTube/SiteSettings.vb @@ -41,6 +41,7 @@ Namespace API.YouTube DownloadShorts = New PropertyValue(False) DownloadPlaylists = New PropertyValue(False) UseCookies = New PropertyValue(False) + _SubscriptionsAllowed = True End Sub #End Region #Region "GetInstance" diff --git a/SCrawler/API/YouTube/UserData.vb b/SCrawler/API/YouTube/UserData.vb index dea39bd..7a7ffc8 100644 --- a/SCrawler/API/YouTube/UserData.vb +++ b/SCrawler/API/YouTube/UserData.vb @@ -113,6 +113,7 @@ Namespace API.YouTube Protected Overrides Sub DownloadDataF(ByVal Token As CancellationToken) Dim pr As New YTPreProgress(ProgressPre) Try + If IsSubscription And IsMusic Then Exit Sub Dim container As IYouTubeMediaContainer = Nothing Dim list As New List(Of IYouTubeMediaContainer) Dim url$ = String.Empty @@ -191,8 +192,9 @@ Namespace API.YouTube If Settings.UserSiteNameUpdateEveryTime Or UserSiteName.IsEmptyString Then UserSiteName = .UserTitle If FriendlyName.IsEmptyString Then FriendlyName = UserSiteName End With - _TempMediaList.AddRange(list.Select(Function(c) New UserMedia(c))) + _TempMediaList.AddRange(list.Select(Function(c) New UserMedia(c) With {.URL = If(IsSubscription, c.ThumbnailUrlMedia, .URL)})) _TempPostsList.ListAddList(_TempMediaList.Select(Function(m) m.Post.ID), LNC) + If IsSubscription Then _TempMediaList.RemoveAll(Function(m) m.URL.IsEmptyString) list.Clear() End If Catch ex As Exception diff --git a/SCrawler/Channels/ChannelViewForm.vb b/SCrawler/Channels/ChannelViewForm.vb index 134d478..6c03476 100644 --- a/SCrawler/Channels/ChannelViewForm.vb +++ b/SCrawler/Channels/ChannelViewForm.vb @@ -336,7 +336,7 @@ Friend Class ChannelViewForm : Implements IChannelLimits End With Settings.Users.Add(tmpUser) With Settings.Users.Last - .Labels.Add(UserData.CannelsLabelName_ChannelsForm) + .Labels.ListAddList({UserData.CannelsLabelName_ChannelsForm, LabelsKeeper.NoParsedUser}) .UpdateUserInformation() If Settings.FromChannelCopyImageToUser And Not f.IsEmptyString And Not .File.IsEmptyString Then _ CopyFile(ListAddValue(Nothing, New ChannelsCollection.ChannelImage(cn, f)).ListAddList(Settings.Channels.GetUserFiles(.Name), c), .File) diff --git a/SCrawler/Content/Pictures/BrushToolPic_16.png b/SCrawler/Content/Pictures/BrushToolPic_16.png new file mode 100644 index 0000000000000000000000000000000000000000..301dba0dcc1d3f2f3e88913621815b0d801e4c42 GIT binary patch literal 277 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 0 Then + If AutoDownloaderSource.ShowPictureDownloaded And User.DownloadedPictures(False) > 0 And Not User.IsSubscription Then uif = DirectCast(User, UserDataBase).GetLastImageAddress uif_orig = uif If uif.Exists Then @@ -129,7 +129,7 @@ Namespace DownloadObjects ErrorsDescriber.Execute(EDP.SendToLog, ex, "[AutoDownloader.NotifiedUser.ShowNotification]") If Not User Is Nothing Then MainFrameObj.ShowNotification(SettingsCLS.NotificationObjects.AutoDownloader, - User.ToString & vbNewLine & + If(User.IsSubscription, "[Subscription] ", String.Empty) & User.ToString & vbNewLine & $"Downloaded: {User.DownloadedPictures(False)} images, {User.DownloadedVideos(False)} videos" & If(User.HasError, vbNewLine & "With errors", String.Empty)) End If @@ -142,7 +142,11 @@ Namespace DownloadObjects ElseIf Key = _Key Then Return True ElseIf KeyFolder = _Key Then - User.OpenFolder() + If User.IsSubscription Then + Return True + Else + User.OpenFolder() + End If ElseIf KeySite = _Key Then User.OpenSite() ElseIf Images.ContainsKey(_Key) Then @@ -216,6 +220,7 @@ Namespace DownloadObjects Private ReadOnly LastDownloadDateXML As Date? = Nothing Private _LastDownloadDate As Date = Now.AddYears(-1) Private _LastDownloadDateChanged As Boolean = False + Private _LastDownloadDateSkip As Date? = Nothing Friend Property LastDownloadDate As Date Get Return _LastDownloadDate @@ -227,10 +232,11 @@ Namespace DownloadObjects End Property Private ReadOnly Property NextExecutionDate As Date Get + Dim lds As Date = If(_LastDownloadDateSkip, Date.MinValue) If _PauseValue.HasValue Then - Return {LastDownloadDate.AddMinutes(Timer), _StartTime.AddMinutes(StartupDelay), _PauseValue.Value}.Max + Return {LastDownloadDate.AddMinutes(Timer), _StartTime.AddMinutes(StartupDelay), _PauseValue.Value, lds}.Max Else - Return {LastDownloadDate.AddMinutes(Timer), _StartTime.AddMinutes(StartupDelay)}.Max + Return {LastDownloadDate.AddMinutes(Timer), _StartTime.AddMinutes(StartupDelay), lds}.Max End If End Get End Property @@ -411,21 +417,33 @@ Namespace DownloadObjects Friend Sub [Stop]() If Working Then _StopRequested = True End Sub - Friend Sub Skip() + Friend Overloads Sub Skip() If LastDownloadDate.AddMinutes(Timer) <= Now Then - LastDownloadDate = Now.AddMinutes(Timer) + _LastDownloadDateSkip = Now.AddMinutes(Timer) Else - LastDownloadDate = LastDownloadDate.AddMinutes(Timer) + _LastDownloadDateSkip = LastDownloadDate.AddMinutes(Timer) End If End Sub + Friend Overloads Sub Skip(ByVal Minutes As Integer) + _LastDownloadDateSkip = If(_LastDownloadDateSkip, Now).AddMinutes(Minutes) + End Sub + Friend Overloads Sub Skip(ByVal ToDate As Date) + _LastDownloadDateSkip = ToDate + End Sub + Friend Sub SkipReset() + _LastDownloadDateSkip = Nothing + End Sub + Friend Sub ForceStart() + _ForceStartRequested = True + End Sub + Private _ForceStartRequested As Boolean = False Private _SpecialDelayUse As Boolean = False Private _SpecialDelayTime As Date? = Nothing Private Sub Checker() Try Dim _StartDownload As Boolean While (Not _StopRequested Or Downloader.Working) And Not Mode = Modes.None - If LastDownloadDate.AddMinutes(Timer) < Now And _StartTime.AddMinutes(StartupDelay) < Now And - Not IsPaused And Not _StopRequested And Not Mode = Modes.None Then + If ((NextExecutionDate < Now And Not IsPaused) Or _ForceStartRequested) And Not _StopRequested And Not Mode = Modes.None Then If Downloader.Working Then _SpecialDelayUse = True Else @@ -434,9 +452,7 @@ Namespace DownloadObjects _SpecialDelayUse = False _SpecialDelayTime = Nothing _StartDownload = False - If Settings.Automation.Count = 1 Then - _StartDownload = True - ElseIf Index = -1 Then + If Settings.Automation.Count = 1 Or _ForceStartRequested Or Index = -1 Then _StartDownload = True Else _StartDownload = NextExecutionDate.AddMilliseconds(1000 * (Index + 1)).Ticks <= Now.Ticks @@ -467,6 +483,7 @@ Namespace DownloadObjects Dim GName$ Dim i% Dim DownloadedUsersCount% = 0 + Dim DownloadedSubscriptionsCount% = 0 Dim simple As Boolean = ShowSimpleNotification And ShowNotifications Dim notify As Action = Sub() Try @@ -476,7 +493,11 @@ Namespace DownloadObjects With .Item(indx) If Keys.Contains(.Key) Then If simple Then - DownloadedUsersCount += 1 + If .IsSubscription Then + DownloadedSubscriptionsCount += 1 + Else + DownloadedUsersCount += 1 + End If Else ShowNotification(.Self) End If @@ -501,9 +522,27 @@ Namespace DownloadObjects End If End Function Dim CheckSites As Predicate(Of IUserData) = Function(u) SitesExcluded.Count = 0 OrElse Not SitesExcluded.Contains(u.Site) - users.ListAddList(Settings.GetUsers(Function(u) UserExistsPredicate(u) And CheckLabels.Invoke(u) And CheckSites.Invoke(u))) + Dim ExistsPredicate As Predicate(Of IUserData) + If Subscriptions Then + If SubscriptionsOnly Then + ExistsPredicate = UserExistsSubscriptionsPredicate + Else + ExistsPredicate = UserExistsPredicate + End If + Else + ExistsPredicate = UserExistsNonSubscriptionsPredicate + End If + users.ListAddList(Settings.GetUsers(Function(u) ExistsPredicate(u) And CheckLabels.Invoke(u) And CheckSites.Invoke(u))) + If UsersCount <> 0 And users.Count > 0 Then + users = users.ListTake(If(UsersCount > 0, -1, -2), Math.Abs(UsersCount)) + If UsersCount < 0 Then users = users.ListReverse + End If Case Modes.Default - Using g As New GroupParameters : users.ListAddList(DownloadGroup.GetUsers(g, True)) : End Using + Using g As New GroupParameters + g.LabelsExcluded.ListAddList(LabelsExcluded) + g.SitesExcluded.ListAddList(SitesExcluded) + users.ListAddList(DownloadGroup.GetUsers(g, True)) + End Using Case Modes.Specified : users.ListAddList(DownloadGroup.GetUsers(Me, True)) Case Modes.Groups If Groups.Count > 0 And Settings.Groups.Count > 0 Then @@ -522,9 +561,13 @@ Namespace DownloadObjects While .Working Or .Count > 0 : notify.Invoke() : Thread.Sleep(200) : End While .AutoDownloaderWorking = False notify.Invoke - If simple And DownloadedUsersCount > 0 Then _ - MainFrameObj.ShowNotification(SettingsCLS.NotificationObjects.AutoDownloader, - $"{DownloadedUsersCount} user(s) downloaded with scheduler plan '{Name}'") + If simple And DownloadedUsersCount + DownloadedSubscriptionsCount > 0 Then + Dim msg$ = String.Empty + If DownloadedUsersCount > 0 Then msg = $"{DownloadedUsersCount} user(s) " + If DownloadedSubscriptionsCount > 0 Then msg &= $"{IIf(DownloadedUsersCount > 0, "and ", String.Empty)}{DownloadedSubscriptionsCount} subscription(s) " + msg &= $"downloaded with scheduler plan '{Name}'" + MainFrameObj.ShowNotification(SettingsCLS.NotificationObjects.AutoDownloader, msg) + End If End With End If Catch ex As Exception @@ -534,6 +577,8 @@ Namespace DownloadObjects LastDownloadDate = Now Update() _Downloading = False + _ForceStartRequested = False + _LastDownloadDateSkip = Nothing End Try End Sub Private Sub ShowNotification(ByVal u As IUserData) diff --git a/SCrawler/Download/Automation/AutoDownloaderEditorForm.Designer.vb b/SCrawler/Download/Automation/AutoDownloaderEditorForm.Designer.vb index 88633df..5190e4c 100644 --- a/SCrawler/Download/Automation/AutoDownloaderEditorForm.Designer.vb +++ b/SCrawler/Download/Automation/AutoDownloaderEditorForm.Designer.vb @@ -66,13 +66,13 @@ Namespace DownloadObjects 'CONTAINER_MAIN.ContentPanel ' CONTAINER_MAIN.ContentPanel.Controls.Add(Me.DEF_GROUP) - CONTAINER_MAIN.ContentPanel.Size = New System.Drawing.Size(476, 308) + CONTAINER_MAIN.ContentPanel.Size = New System.Drawing.Size(476, 363) CONTAINER_MAIN.Dock = System.Windows.Forms.DockStyle.Fill CONTAINER_MAIN.LeftToolStripPanelVisible = False CONTAINER_MAIN.Location = New System.Drawing.Point(0, 0) CONTAINER_MAIN.Name = "CONTAINER_MAIN" CONTAINER_MAIN.RightToolStripPanelVisible = False - CONTAINER_MAIN.Size = New System.Drawing.Size(476, 333) + CONTAINER_MAIN.Size = New System.Drawing.Size(476, 388) CONTAINER_MAIN.TabIndex = 0 CONTAINER_MAIN.TopToolStripPanelVisible = False ' @@ -81,20 +81,22 @@ Namespace DownloadObjects Me.DEF_GROUP.CellBorderStyle = System.Windows.Forms.TableLayoutPanelCellBorderStyle.[Single] Me.DEF_GROUP.ColumnCount = 1 Me.DEF_GROUP.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) - Me.DEF_GROUP.Controls.Add(Me.TXT_GROUPS, 0, 6) Me.DEF_GROUP.Controls.Add(TP_MODE, 0, 0) - Me.DEF_GROUP.Controls.Add(Me.TXT_TIMER, 0, 8) - Me.DEF_GROUP.Controls.Add(Me.LBL_LAST_TIME_UP, 0, 10) - Me.DEF_GROUP.Controls.Add(Me.NUM_DELAY, 0, 9) - Me.DEF_GROUP.Controls.Add(TP_NOTIFY, 0, 7) + Me.DEF_GROUP.Controls.Add(Me.TXT_GROUPS, 0, 8) + Me.DEF_GROUP.Controls.Add(TP_NOTIFY, 0, 9) + Me.DEF_GROUP.Controls.Add(Me.TXT_TIMER, 0, 10) + Me.DEF_GROUP.Controls.Add(Me.NUM_DELAY, 0, 11) + Me.DEF_GROUP.Controls.Add(Me.LBL_LAST_TIME_UP, 0, 12) Me.DEF_GROUP.Dock = System.Windows.Forms.DockStyle.Fill Me.DEF_GROUP.Location = New System.Drawing.Point(0, 0) Me.DEF_GROUP.Name = "DEF_GROUP" - Me.DEF_GROUP.RowCount = 12 + Me.DEF_GROUP.RowCount = 14 Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) + Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) + Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) @@ -104,7 +106,7 @@ Namespace DownloadObjects Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20.0!)) - Me.DEF_GROUP.Size = New System.Drawing.Size(476, 308) + Me.DEF_GROUP.Size = New System.Drawing.Size(476, 363) Me.DEF_GROUP.TabIndex = 0 ' 'TXT_GROUPS @@ -118,7 +120,7 @@ Namespace DownloadObjects Me.TXT_GROUPS.CaptionText = "Groups" Me.TXT_GROUPS.CaptionWidth = 50.0R Me.TXT_GROUPS.Dock = System.Windows.Forms.DockStyle.Fill - Me.TXT_GROUPS.Location = New System.Drawing.Point(4, 169) + Me.TXT_GROUPS.Location = New System.Drawing.Point(4, 195) Me.TXT_GROUPS.Name = "TXT_GROUPS" Me.TXT_GROUPS.Size = New System.Drawing.Size(468, 22) Me.TXT_GROUPS.TabIndex = 1 @@ -222,7 +224,7 @@ Namespace DownloadObjects Me.TXT_TIMER.CaptionToolTipText = "Timer (in minutes)" Me.TXT_TIMER.CaptionWidth = 50.0R Me.TXT_TIMER.Dock = System.Windows.Forms.DockStyle.Fill - Me.TXT_TIMER.Location = New System.Drawing.Point(4, 227) + Me.TXT_TIMER.Location = New System.Drawing.Point(4, 282) Me.TXT_TIMER.Name = "TXT_TIMER" Me.TXT_TIMER.Size = New System.Drawing.Size(468, 22) Me.TXT_TIMER.TabIndex = 3 @@ -232,7 +234,7 @@ Namespace DownloadObjects Me.LBL_LAST_TIME_UP.AutoSize = True Me.LBL_LAST_TIME_UP.Dock = System.Windows.Forms.DockStyle.Fill Me.LBL_LAST_TIME_UP.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, CType(204, Byte)) - Me.LBL_LAST_TIME_UP.Location = New System.Drawing.Point(4, 282) + Me.LBL_LAST_TIME_UP.Location = New System.Drawing.Point(4, 337) Me.LBL_LAST_TIME_UP.Name = "LBL_LAST_TIME_UP" Me.LBL_LAST_TIME_UP.Size = New System.Drawing.Size(468, 25) Me.LBL_LAST_TIME_UP.TabIndex = 5 @@ -251,7 +253,7 @@ Namespace DownloadObjects Me.NUM_DELAY.ClearTextByButtonClear = False Me.NUM_DELAY.ControlMode = PersonalUtilities.Forms.Controls.TextBoxExtended.ControlModes.NumericUpDown Me.NUM_DELAY.Dock = System.Windows.Forms.DockStyle.Fill - Me.NUM_DELAY.Location = New System.Drawing.Point(4, 256) + Me.NUM_DELAY.Location = New System.Drawing.Point(4, 311) Me.NUM_DELAY.Name = "NUM_DELAY" Me.NUM_DELAY.NumberMaximum = New Decimal(New Integer() {1440, 0, 0, 0}) Me.NUM_DELAY.NumberUpDownAlign = System.Windows.Forms.LeftRightAlignment.Left @@ -271,7 +273,7 @@ Namespace DownloadObjects TP_NOTIFY.Controls.Add(Me.CH_SHOW_PIC_USER, 3, 0) TP_NOTIFY.Controls.Add(Me.CH_NOTIFY_SIMPLE, 1, 0) TP_NOTIFY.Dock = System.Windows.Forms.DockStyle.Fill - TP_NOTIFY.Location = New System.Drawing.Point(1, 195) + TP_NOTIFY.Location = New System.Drawing.Point(1, 250) TP_NOTIFY.Margin = New System.Windows.Forms.Padding(0) TP_NOTIFY.Name = "TP_NOTIFY" TP_NOTIFY.RowCount = 1 @@ -331,15 +333,15 @@ Namespace DownloadObjects ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font - Me.ClientSize = New System.Drawing.Size(476, 333) + Me.ClientSize = New System.Drawing.Size(476, 388) Me.Controls.Add(CONTAINER_MAIN) Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle Me.Icon = Global.SCrawler.My.Resources.Resources.ArrowDownIcon_Blue_24 Me.KeyPreview = True Me.MaximizeBox = False - Me.MaximumSize = New System.Drawing.Size(492, 372) + Me.MaximumSize = New System.Drawing.Size(492, 427) Me.MinimizeBox = False - Me.MinimumSize = New System.Drawing.Size(492, 372) + Me.MinimumSize = New System.Drawing.Size(492, 427) Me.Name = "AutoDownloaderEditorForm" Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide Me.Text = "AutoDownloader settings" diff --git a/SCrawler/Download/Automation/AutoDownloaderEditorForm.vb b/SCrawler/Download/Automation/AutoDownloaderEditorForm.vb index d5c771c..be19b9f 100644 --- a/SCrawler/Download/Automation/AutoDownloaderEditorForm.vb +++ b/SCrawler/Download/Automation/AutoDownloaderEditorForm.vb @@ -114,7 +114,7 @@ Namespace DownloadObjects Private Sub ChangeEnabled() Handles OPT_DISABLED.CheckedChanged, OPT_ALL.CheckedChanged, OPT_DEFAULT.CheckedChanged, OPT_SPEC.CheckedChanged, OPT_GROUP.CheckedChanged, CH_NOTIFY.CheckedChanged, CH_NOTIFY_SIMPLE.CheckedChanged - DEF_GROUP.Enabled(OPT_ALL.Checked Or OPT_DEFAULT.Checked Or OPT_SPEC.Checked) = OPT_SPEC.Checked + DEF_GROUP.Enabled(OPT_ALL.Checked Or OPT_DEFAULT.Checked Or OPT_SPEC.Checked, OPT_ALL.Checked) = OPT_SPEC.Checked TXT_GROUPS.Enabled = OPT_GROUP.Checked TXT_TIMER.Enabled = Not OPT_DISABLED.Checked NUM_DELAY.Enabled = Not OPT_DISABLED.Checked diff --git a/SCrawler/Download/Automation/SchedulerEditorForm.vb b/SCrawler/Download/Automation/SchedulerEditorForm.vb index 485c58e..55d79f4 100644 --- a/SCrawler/Download/Automation/SchedulerEditorForm.vb +++ b/SCrawler/Download/Automation/SchedulerEditorForm.vb @@ -12,8 +12,13 @@ Namespace DownloadObjects Friend Class SchedulerEditorForm #Region "Declarations" Private WithEvents MyDefs As DefaultFormOptions - Private WithEvents BTT_SKIP As ToolStripButton + Private ReadOnly MENU_SKIP As ToolStripDropDownButton + Private WithEvents BTT_SKIP As ToolStripMenuItem + Private WithEvents BTT_SKIP_MIN As ToolStripMenuItem + Private WithEvents BTT_SKIP_DATE As ToolStripMenuItem + Private WithEvents BTT_SKIP_RESET As ToolStripMenuItem Private WithEvents BTT_START As ToolStripButton + Private WithEvents BTT_START_FORCE As ToolStripButton Private WithEvents BTT_PAUSE As ToolStripDropDownButton Private WithEvents PauseArr As AutoDownloaderPauseButtons #End Region @@ -21,18 +26,52 @@ Namespace DownloadObjects Friend Sub New() InitializeComponent() MyDefs = New DefaultFormOptions(Me, Settings.Design) - BTT_SKIP = New ToolStripButton With { + MENU_SKIP = New ToolStripDropDownButton With { .Text = "Skip", - .ToolTipText = "Skip next run", + .ToolTipText = String.Empty, + .AutoToolTip = False, + .DisplayStyle = ToolStripItemDisplayStyle.Text + } + BTT_SKIP = New ToolStripMenuItem With { + .Text = "Skip", + .ToolTipText = "Delay for the number of minutes configured in the task", .AutoToolTip = True, .DisplayStyle = ToolStripItemDisplayStyle.Text } + BTT_SKIP_MIN = New ToolStripMenuItem With { + .Text = "Delay for minutes", + .ToolTipText = "Delay for a specific number of minutes", + .AutoToolTip = True, + .DisplayStyle = ToolStripItemDisplayStyle.Text, + .Tag = "m" + } + BTT_SKIP_DATE = New ToolStripMenuItem With { + .Text = "Delay by date/time", + .ToolTipText = String.Empty, + .AutoToolTip = False, + .DisplayStyle = ToolStripItemDisplayStyle.Text, + .Tag = "d" + } + BTT_SKIP_RESET = New ToolStripMenuItem With { + .Text = "Delay reset", + .ToolTipText = "Reset the delay you set earlier", + .AutoToolTip = True, + .DisplayStyle = ToolStripItemDisplayStyle.Text, + .Tag = "r" + } + MENU_SKIP.DropDownItems.AddRange({BTT_SKIP, BTT_SKIP_MIN, BTT_SKIP_DATE, New ToolStripSeparator, BTT_SKIP_RESET}) BTT_START = New ToolStripButton With { .Text = "Start", .Image = My.Resources.StartPic_Green_16, .ToolTipText = "Run selected plan", .AutoToolTip = True } + BTT_START_FORCE = New ToolStripButton With { + .Text = "Start (force)", + .ToolTipText = "Force start of the current task", + .AutoToolTip = True, + .Image = My.Resources.StartPic_Green_16 + } BTT_PAUSE = New ToolStripDropDownButton With { .Text = "Pause", .Image = My.Resources.Pause_Blue_16, @@ -47,7 +86,7 @@ Namespace DownloadObjects Private Sub SchedulerEditorForm_Load(sender As Object, e As EventArgs) Handles Me.Load With MyDefs .MyViewInitialize() - .AddEditToolbarPlus({BTT_START, BTT_SKIP, BTT_PAUSE}) + .AddEditToolbarPlus({New ToolStripSeparator, BTT_START, BTT_START_FORCE, MENU_SKIP, BTT_PAUSE}) PauseArr.AddButtons(BTT_PAUSE, .MyEditToolbar.ToolStrip) Refill() .EndLoaderOperations(False) @@ -138,10 +177,38 @@ Namespace DownloadObjects Refill() End If End Sub - Private Sub BTT_SKIP_Click(sender As Object, e As EventArgs) Handles BTT_SKIP.Click + Private Sub BTT_START_FORCE_Click(sender As Object, e As EventArgs) Handles BTT_START_FORCE.Click If _LatestSelected.ValueBetween(0, LIST_PLANS.Items.Count - 1) Then - Settings.Automation(_LatestSelected).Skip() - Refill() + With Settings.Automation(_LatestSelected) + If .Working Then .ForceStart() : Refill() + End With + End If + End Sub + Private Sub BTT_SKIP_Click(ByVal Sender As ToolStripMenuItem, ByVal e As EventArgs) Handles BTT_SKIP.Click, BTT_SKIP_MIN.Click, BTT_SKIP_DATE.Click, BTT_SKIP_RESET.Click + If _LatestSelected.ValueBetween(0, LIST_PLANS.Items.Count - 1) Then + Dim mode$ = AConvert(Of String)(Sender.Tag, String.Empty) + Select Case mode + Case String.Empty + Settings.Automation(_LatestSelected).Skip() + Refill() + Case "m" + Dim mins% = AConvert(Of Integer)(InputBoxE("Enter a number of minutes you want to delay:", Sender.Text, 60), -1) + If mins > 0 Then Settings.Automation(_LatestSelected).Skip(mins) : Refill() + Case "d" + Dim d As Date? = Nothing + Using f As New DateTimeSelectionForm(DateTimeSelectionForm.Modes.Date + + DateTimeSelectionForm.Modes.Time + + DateTimeSelectionForm.Modes.Start, Settings.Design) With { + .MyDateStart = Now.AddMinutes(60) + } + f.ShowDialog() + If f.DialogResult = DialogResult.OK Then d = f.MyDateStart + End Using + If d.HasValue Then Settings.Automation(_LatestSelected).Skip(d.Value) : Refill() + Case "r" + Settings.Automation(_LatestSelected).SkipReset() + Refill() + End Select End If End Sub Private Sub PauseArr_Updating() Handles PauseArr.Updating diff --git a/SCrawler/Download/DownloadedInfoForm.Designer.vb b/SCrawler/Download/DownloadedInfoForm.Designer.vb index cbbeaf2..0fba052 100644 --- a/SCrawler/Download/DownloadedInfoForm.Designer.vb +++ b/SCrawler/Download/DownloadedInfoForm.Designer.vb @@ -24,11 +24,14 @@ Namespace DownloadObjects Private Sub InitializeComponent() Dim SEP_1 As System.Windows.Forms.ToolStripSeparator Dim SEP_2 As System.Windows.Forms.ToolStripSeparator + Dim MENU_VIEW_SEP_1 As System.Windows.Forms.ToolStripSeparator Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(DownloadedInfoForm)) Me.ToolbarTOP = New System.Windows.Forms.ToolStrip() Me.MENU_VIEW = New System.Windows.Forms.ToolStripDropDownButton() Me.MENU_VIEW_SESSION = New System.Windows.Forms.ToolStripMenuItem() Me.MENU_VIEW_ALL = New System.Windows.Forms.ToolStripMenuItem() + Me.OPT_DEFAULT = New System.Windows.Forms.ToolStripMenuItem() + Me.OPT_SUBSCRIPTIONS = New System.Windows.Forms.ToolStripMenuItem() Me.BTT_REFRESH = New System.Windows.Forms.ToolStripButton() Me.BTT_UP = New System.Windows.Forms.ToolStripButton() Me.BTT_DOWN = New System.Windows.Forms.ToolStripButton() @@ -38,6 +41,7 @@ Namespace DownloadObjects Me.LIST_DOWN = New System.Windows.Forms.ListBox() SEP_1 = New System.Windows.Forms.ToolStripSeparator() SEP_2 = New System.Windows.Forms.ToolStripSeparator() + MENU_VIEW_SEP_1 = New System.Windows.Forms.ToolStripSeparator() Me.ToolbarTOP.SuspendLayout() Me.SuspendLayout() ' @@ -51,6 +55,11 @@ Namespace DownloadObjects SEP_2.Name = "SEP_2" SEP_2.Size = New System.Drawing.Size(6, 25) ' + 'MENU_VIEW_SEP_1 + ' + MENU_VIEW_SEP_1.Name = "MENU_VIEW_SEP_1" + MENU_VIEW_SEP_1.Size = New System.Drawing.Size(211, 6) + ' 'ToolbarTOP ' Me.ToolbarTOP.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden @@ -63,18 +72,18 @@ Namespace DownloadObjects 'MENU_VIEW ' Me.MENU_VIEW.AutoToolTip = False - Me.MENU_VIEW.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text - Me.MENU_VIEW.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.MENU_VIEW_SESSION, Me.MENU_VIEW_ALL}) + Me.MENU_VIEW.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.MENU_VIEW_SESSION, Me.MENU_VIEW_ALL, MENU_VIEW_SEP_1, Me.OPT_DEFAULT, Me.OPT_SUBSCRIPTIONS}) + Me.MENU_VIEW.Image = CType(resources.GetObject("MENU_VIEW.Image"), System.Drawing.Image) Me.MENU_VIEW.ImageTransparentColor = System.Drawing.Color.Magenta Me.MENU_VIEW.Name = "MENU_VIEW" - Me.MENU_VIEW.Size = New System.Drawing.Size(45, 22) + Me.MENU_VIEW.Size = New System.Drawing.Size(61, 22) Me.MENU_VIEW.Text = "View" ' 'MENU_VIEW_SESSION ' Me.MENU_VIEW_SESSION.AutoToolTip = True Me.MENU_VIEW_SESSION.Name = "MENU_VIEW_SESSION" - Me.MENU_VIEW_SESSION.Size = New System.Drawing.Size(180, 22) + Me.MENU_VIEW_SESSION.Size = New System.Drawing.Size(214, 22) Me.MENU_VIEW_SESSION.Text = "Session" Me.MENU_VIEW_SESSION.ToolTipText = "Show downloaded users by this session" ' @@ -82,10 +91,26 @@ Namespace DownloadObjects ' Me.MENU_VIEW_ALL.AutoToolTip = True Me.MENU_VIEW_ALL.Name = "MENU_VIEW_ALL" - Me.MENU_VIEW_ALL.Size = New System.Drawing.Size(180, 22) + Me.MENU_VIEW_ALL.Size = New System.Drawing.Size(214, 22) Me.MENU_VIEW_ALL.Text = "All" Me.MENU_VIEW_ALL.ToolTipText = "Show all users (sorted by latest download)" ' + 'OPT_DEFAULT + ' + Me.OPT_DEFAULT.AutoToolTip = True + Me.OPT_DEFAULT.Name = "OPT_DEFAULT" + Me.OPT_DEFAULT.Size = New System.Drawing.Size(214, 22) + Me.OPT_DEFAULT.Text = "Downloaded users" + Me.OPT_DEFAULT.ToolTipText = "Show downloaded users" + ' + 'OPT_SUBSCRIPTIONS + ' + Me.OPT_SUBSCRIPTIONS.AutoToolTip = True + Me.OPT_SUBSCRIPTIONS.Name = "OPT_SUBSCRIPTIONS" + Me.OPT_SUBSCRIPTIONS.Size = New System.Drawing.Size(214, 22) + Me.OPT_SUBSCRIPTIONS.Text = "Downloaded subscriptions" + Me.OPT_SUBSCRIPTIONS.ToolTipText = "Show downloaded subscriptions" + ' 'BTT_REFRESH ' Me.BTT_REFRESH.Image = Global.SCrawler.My.Resources.Resources.RefreshPic_24 @@ -179,5 +204,7 @@ Namespace DownloadObjects Private WithEvents BTT_FIND As ToolStripButton Private WithEvents BTT_UP As ToolStripButton Private WithEvents BTT_DOWN As ToolStripButton + Private WithEvents OPT_DEFAULT As ToolStripMenuItem + Private WithEvents OPT_SUBSCRIPTIONS As ToolStripMenuItem End Class End Namespace \ No newline at end of file diff --git a/SCrawler/Download/DownloadedInfoForm.resx b/SCrawler/Download/DownloadedInfoForm.resx index 51b1704..ed9625a 100644 --- a/SCrawler/Download/DownloadedInfoForm.resx +++ b/SCrawler/Download/DownloadedInfoForm.resx @@ -123,10 +123,21 @@ False + + False + 17, 17 + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAABkSURBVDhPY6AKyO86WFDQfeg/iIYKkQZAmkNbnvyXta76 + DxViYGFi+Y8PQ5VBAMhmkGYgJs8FAw9GA5EKILFiWUFixfL/IBoqRBoAafYsOvpf0jiTvEAE2QzSLGmU + MeQCkYEBAD3tUdo+/cEPAAAAAElFTkSuQmCC + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 diff --git a/SCrawler/Download/DownloadedInfoForm.vb b/SCrawler/Download/DownloadedInfoForm.vb index 5423f04..8442ced 100644 --- a/SCrawler/Download/DownloadedInfoForm.vb +++ b/SCrawler/Download/DownloadedInfoForm.vb @@ -16,7 +16,6 @@ Namespace DownloadObjects #End Region #Region "Declarations" Private MyView As FormView - Private ReadOnly LParams As New ListAddParams(LAP.IgnoreICopier) With {.Error = EDP.None} Private Opened As Boolean = False Friend ReadOnly Property ReadyToOpen As Boolean Get @@ -35,12 +34,29 @@ Namespace DownloadObjects Settings.InfoViewMode.Value = CInt(SMode) End Set End Property - Private ReadOnly _TempUsersList As List(Of IUserData) + Private ReadOnly _UsersListSession As List(Of IUserData) + Private ReadOnly _UsersListAll As List(Of IUserData) + Private ReadOnly Property Current As List(Of IUserData) + Get + Return If(ViewMode = ViewModes.All, _UsersListAll, _UsersListSession) + End Get + End Property + Private Overloads ReadOnly Property SelectedUser As IUserData + Get + If ViewMode = ViewModes.All Then + If _LatestSelected.ValueBetween(0, _UsersListAll.Count - 1) Then Return _UsersListAll(_LatestSelected) + Else + If _LatestSelected.ValueBetween(0, _UsersListSession.Count - 1) Then Return _UsersListSession(_LatestSelected) + End If + Return Nothing + End Get + End Property #End Region #Region "Initializer" Public Sub New() InitializeComponent() - _TempUsersList = New List(Of IUserData) + _UsersListSession = New List(Of IUserData) + _UsersListAll = New List(Of IUserData) If Settings.InfoViewMode.Value = CInt(ViewModes.All) Then MENU_VIEW_SESSION.Checked = False MENU_VIEW_ALL.Checked = True @@ -48,6 +64,8 @@ Namespace DownloadObjects MENU_VIEW_SESSION.Checked = True MENU_VIEW_ALL.Checked = False End If + OPT_DEFAULT.Checked = Settings.InfoViewDefault + OPT_SUBSCRIPTIONS.Checked = Not Settings.InfoViewDefault Settings.InfoViewMode.Value = ViewMode RefillList() End Sub @@ -56,8 +74,8 @@ Namespace DownloadObjects Private Sub DownloadedInfoForm_Load(sender As Object, e As EventArgs) Handles Me.Load Try If MyView Is Nothing Then - MyView = New FormView(Me) - MyView.Import(Settings.Design) + MyView = New FormView(Me, Settings.Design) + MyView.Import() MyView.SetFormSize() End If BTT_CLEAR.Visible = ViewMode = ViewModes.Session @@ -72,8 +90,9 @@ Namespace DownloadObjects Hide() End Sub Private Sub DownloadedInfoForm_Disposed(sender As Object, e As EventArgs) Handles Me.Disposed - If Not MyView Is Nothing Then MyView.Dispose(Settings.Design) - _TempUsersList.Clear() + MyView.DisposeIfReady() + _UsersListSession.Clear() + _UsersListAll.Clear() End Sub Private Sub DownloadedInfoForm_KeyDown(sender As Object, e As KeyEventArgs) Handles Me.KeyDown Dim b As Boolean = True @@ -98,25 +117,36 @@ Namespace DownloadObjects End Class Private Sub RefillList() Handles BTT_REFRESH.Click Try - _TempUsersList.Clear() Dim lClear As Action = Sub() LIST_DOWN.Items.Clear() If LIST_DOWN.InvokeRequired Then LIST_DOWN.Invoke(lClear) Else lClear.Invoke If ViewMode = ViewModes.Session Then - _TempUsersList.ListAddList(Downloader.Downloaded, LParams) + With Downloader.Downloaded + If .Count > 0 Then + With .Select(Function(u) Settings.GetUser(u, False)).Reverse + If _UsersListSession.Count > 0 Then _UsersListSession.ListWithRemove(.Self) + If _UsersListSession.Count > 0 Then + _UsersListSession.InsertRange(0, .Self) + Else + _UsersListSession.AddRange(.Self) + End If + End With + End If + End With Else - _TempUsersList.ListAddList(Settings.Users.SelectMany(Of IUserData) _ - (Function(u) If(u.IsCollection, DirectCast(u, API.UserDataBind).Collections, {u})), LParams) + _UsersListAll.ListAddList(Settings.GetUsers(Function(u) True), LAP.ClearBeforeAdd) + If _UsersListAll.Count > 0 Then _UsersListAll.Sort(New UsersDateOrder) End If - If _TempUsersList.Count > 0 Then - _TempUsersList.Sort(New UsersDateOrder) - For Each user As IUserData In _TempUsersList + Dim isDefault As Boolean = OPT_DEFAULT.Checked + If Current.Count > 0 Then Current.RemoveAll(Function(u) u.IsSubscription = isDefault) + If Current.Count > 0 Then + For Each user As IUserData In Current If LIST_DOWN.InvokeRequired Then LIST_DOWN.Invoke(Sub() LIST_DOWN.Items.Add(user.DownloadedInformation)) Else LIST_DOWN.Items.Add(user.DownloadedInformation) End If Next - If _LatestSelected >= 0 AndAlso _LatestSelected <= LIST_DOWN.Items.Count - 1 Then + If _LatestSelected.ValueBetween(0, LIST_DOWN.Items.Count - 1) Then Dim aSel As Action = Sub() LIST_DOWN.SelectedIndex = _LatestSelected If LIST_DOWN.InvokeRequired Then LIST_DOWN.Invoke(aSel) Else aSel.Invoke Else @@ -125,6 +155,7 @@ Namespace DownloadObjects Else _LatestSelected = -1 End If + Catch ies As InvalidOperationException Catch ex As Exception ErrorsDescriber.Execute(EDP.SendToLog, ex, "[DownloadedInfoForm.RefillList]") Finally @@ -133,34 +164,40 @@ Namespace DownloadObjects End Sub #End Region #Region "Toolbar controls" - Private Sub MENU_VIEW_SESSION_Click(sender As Object, e As EventArgs) Handles MENU_VIEW_SESSION.Click - MENU_VIEW_SESSION.Checked = True - MENU_VIEW_ALL.Checked = False - ViewMode = ViewModes.Session - BTT_CLEAR.Visible = True - RefillList() + Private Sub MENU_VIEW_Click(ByVal Sender As ToolStripMenuItem, ByVal e As EventArgs) Handles MENU_VIEW_SESSION.Click, MENU_VIEW_ALL.Click + Dim __refill As Boolean = False + Dim clicked As ToolStripMenuItem = Sender + Dim other As ToolStripMenuItem = If(Sender Is MENU_VIEW_SESSION, MENU_VIEW_ALL, MENU_VIEW_SESSION) + If other.Checked Then + clicked.Checked = True + other.Checked = False + __refill = True + Else + clicked.Checked = False + End If + ViewMode = IIf(MENU_VIEW_SESSION.Checked, ViewModes.Session, ViewModes.All) + ControlInvokeFast(ToolbarTOP, BTT_CLEAR, Sub() BTT_CLEAR.Visible = ViewMode = ViewModes.Session) + If __refill Then RefillList() End Sub - Private Sub MENU_VIEW_ALL_Click(sender As Object, e As EventArgs) Handles MENU_VIEW_ALL.Click - MENU_VIEW_SESSION.Checked = False - MENU_VIEW_ALL.Checked = True - ViewMode = ViewModes.All - BTT_CLEAR.Visible = False - RefillList() + Private Sub OPT_Click(ByVal Sender As ToolStripMenuItem, ByVal e As EventArgs) Handles OPT_DEFAULT.Click, OPT_SUBSCRIPTIONS.Click + Dim __refill As Boolean = False + Dim clicked As ToolStripMenuItem = Sender + Dim other As ToolStripMenuItem = If(Sender Is OPT_DEFAULT, OPT_SUBSCRIPTIONS, OPT_DEFAULT) + If other.Checked Then + clicked.Checked = True + other.Checked = False + __refill = True + Else + clicked.Checked = False + End If + Settings.InfoViewDefault.Value = OPT_DEFAULT.Checked + If __refill Then RefillList() End Sub Private Sub BTT_FIND_Click(sender As Object, e As EventArgs) Handles BTT_FIND.Click - Try - If _LatestSelected.ValueBetween(0, LIST_DOWN.Items.Count - 1) AndAlso _LatestSelected.ValueBetween(0, Downloader.Downloaded.Count - 1) Then - Dim u As IUserData = Settings.GetUser(_TempUsersList(_LatestSelected), True) - If Not u Is Nothing Then RaiseEvent UserFind(u.Key) - End If - Catch ex As Exception - End Try + Try : RaiseEvent UserFind(If(Settings.GetUser(SelectedUser, True)?.Key, String.Empty)) : Catch : End Try End Sub Private Sub BTT_CLEAR_Click(sender As Object, e As EventArgs) Handles BTT_CLEAR.Click - If LIST_DOWN.Items.Count > 0 Then - Downloader.Downloaded.Clear() - RefillList() - End If + If LIST_DOWN.Items.Count > 0 Then Downloader.Downloaded.Clear() : RefillList() End Sub #End Region #Region "List handlers" @@ -171,8 +208,8 @@ Namespace DownloadObjects End Sub Private Sub LIST_DOWN_MouseDoubleClick(sender As Object, e As MouseEventArgs) Handles LIST_DOWN.MouseDoubleClick Try - If _LatestSelected.ValueBetween(0, _TempUsersList.Count - 1) AndAlso - Not DirectCast(_TempUsersList(_LatestSelected), UserDataBase).Disposed Then _TempUsersList(_LatestSelected).OpenFolder() + Dim u As IUserData = SelectedUser + If Not If(u?.Disposed, True) Then u.OpenFolder() Catch End Try End Sub @@ -191,17 +228,12 @@ Namespace DownloadObjects u = _LatestSelected > 0 d = _LatestSelected < .Items.Count - 1 End If - Dim a As Action = Sub() - BTT_UP.Enabled = u - BTT_DOWN.Enabled = d - End Sub - If ToolbarTOP.InvokeRequired Then ToolbarTOP.Invoke(a) Else a.Invoke - a = Nothing - If Offset.HasValue AndAlso .Items.Count > 0 AndAlso - (_LatestSelected + Offset.Value).ValueBetween(0, .Items.Count - 1) Then a = Sub() .SelectedIndex = _LatestSelected + Offset.Value - If Not a Is Nothing Then - If LIST_DOWN.InvokeRequired Then LIST_DOWN.Invoke(a) Else a.Invoke - End If + ControlInvokeFast(ToolbarTOP, BTT_UP, Sub() + BTT_UP.Enabled = u + BTT_DOWN.Enabled = d + End Sub, EDP.None) + If Offset.HasValue AndAlso .Items.Count > 0 AndAlso (_LatestSelected + Offset.Value).ValueBetween(0, .Items.Count - 1) Then _ + ControlInvokeFast(LIST_DOWN, Sub() .SelectedIndex = _LatestSelected + Offset.Value, EDP.None) End With End Sub #End Region diff --git a/SCrawler/Download/Feed/DownloadFeedForm.Designer.vb b/SCrawler/Download/Feed/DownloadFeedForm.Designer.vb index 2ae226f..053b185 100644 --- a/SCrawler/Download/Feed/DownloadFeedForm.Designer.vb +++ b/SCrawler/Download/Feed/DownloadFeedForm.Designer.vb @@ -23,15 +23,25 @@ Namespace DownloadObjects Private Sub InitializeComponent() Dim SEP_1 As System.Windows.Forms.ToolStripSeparator + Dim SEP_2 As System.Windows.Forms.ToolStripSeparator + Dim MENU_VIEW As System.Windows.Forms.ToolStripDropDownButton + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(DownloadFeedForm)) + Me.OPT_DEFAULT = New System.Windows.Forms.ToolStripMenuItem() + Me.OPT_SUBSCRIPTIONS = New System.Windows.Forms.ToolStripMenuItem() Me.ToolbarTOP = New System.Windows.Forms.ToolStrip() Me.MENU_LOAD_SESSION = New System.Windows.Forms.ToolStripDropDownButton() Me.BTT_LOAD_SESSION_LAST = New System.Windows.Forms.ToolStripMenuItem() Me.BTT_LOAD_SESSION_CHOOSE = New System.Windows.Forms.ToolStripMenuItem() Me.SEP_0 = New System.Windows.Forms.ToolStripSeparator() + Me.MENU_DOWN = New System.Windows.Forms.ToolStripDropDownButton() + Me.BTT_DOWN_ALL = New System.Windows.Forms.ToolStripMenuItem() + Me.BTT_DOWN_SELECTED = New System.Windows.Forms.ToolStripMenuItem() Me.BTT_REFRESH = New System.Windows.Forms.ToolStripButton() Me.BTT_CLEAR = New System.Windows.Forms.ToolStripButton() Me.TP_DATA = New System.Windows.Forms.TableLayoutPanel() SEP_1 = New System.Windows.Forms.ToolStripSeparator() + SEP_2 = New System.Windows.Forms.ToolStripSeparator() + MENU_VIEW = New System.Windows.Forms.ToolStripDropDownButton() Me.ToolbarTOP.SuspendLayout() Me.SuspendLayout() ' @@ -40,10 +50,37 @@ Namespace DownloadObjects SEP_1.Name = "SEP_1" SEP_1.Size = New System.Drawing.Size(6, 25) ' + 'SEP_2 + ' + SEP_2.Name = "SEP_2" + SEP_2.Size = New System.Drawing.Size(6, 25) + ' + 'MENU_VIEW + ' + MENU_VIEW.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + MENU_VIEW.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.OPT_DEFAULT, Me.OPT_SUBSCRIPTIONS}) + MENU_VIEW.Image = CType(resources.GetObject("MENU_VIEW.Image"), System.Drawing.Image) + MENU_VIEW.ImageTransparentColor = System.Drawing.Color.Magenta + MENU_VIEW.Name = "MENU_VIEW" + MENU_VIEW.Size = New System.Drawing.Size(29, 22) + MENU_VIEW.Text = "View" + ' + 'OPT_DEFAULT + ' + Me.OPT_DEFAULT.Name = "OPT_DEFAULT" + Me.OPT_DEFAULT.Size = New System.Drawing.Size(145, 22) + Me.OPT_DEFAULT.Text = "Downloads" + ' + 'OPT_SUBSCRIPTIONS + ' + Me.OPT_SUBSCRIPTIONS.Name = "OPT_SUBSCRIPTIONS" + Me.OPT_SUBSCRIPTIONS.Size = New System.Drawing.Size(145, 22) + Me.OPT_SUBSCRIPTIONS.Text = "Subscriptions" + ' 'ToolbarTOP ' Me.ToolbarTOP.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden - Me.ToolbarTOP.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.MENU_LOAD_SESSION, Me.SEP_0, Me.BTT_REFRESH, Me.BTT_CLEAR, SEP_1}) + Me.ToolbarTOP.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.MENU_LOAD_SESSION, Me.SEP_0, MENU_VIEW, SEP_1, Me.MENU_DOWN, Me.BTT_REFRESH, Me.BTT_CLEAR, SEP_2}) Me.ToolbarTOP.Location = New System.Drawing.Point(0, 0) Me.ToolbarTOP.Name = "ToolbarTOP" Me.ToolbarTOP.Size = New System.Drawing.Size(484, 25) @@ -78,6 +115,33 @@ Namespace DownloadObjects Me.SEP_0.Name = "SEP_0" Me.SEP_0.Size = New System.Drawing.Size(6, 25) ' + 'MENU_DOWN + ' + Me.MENU_DOWN.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.MENU_DOWN.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BTT_DOWN_ALL, Me.BTT_DOWN_SELECTED}) + Me.MENU_DOWN.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16 + Me.MENU_DOWN.ImageTransparentColor = System.Drawing.Color.Magenta + Me.MENU_DOWN.Name = "MENU_DOWN" + Me.MENU_DOWN.Size = New System.Drawing.Size(29, 22) + Me.MENU_DOWN.Text = "Download" + Me.MENU_DOWN.Visible = False + ' + 'BTT_DOWN_ALL + ' + Me.BTT_DOWN_ALL.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16 + Me.BTT_DOWN_ALL.Name = "BTT_DOWN_ALL" + Me.BTT_DOWN_ALL.Size = New System.Drawing.Size(180, 22) + Me.BTT_DOWN_ALL.Tag = "a" + Me.BTT_DOWN_ALL.Text = "Download ALL" + ' + 'BTT_DOWN_SELECTED + ' + Me.BTT_DOWN_SELECTED.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16 + Me.BTT_DOWN_SELECTED.Name = "BTT_DOWN_SELECTED" + Me.BTT_DOWN_SELECTED.Size = New System.Drawing.Size(180, 22) + Me.BTT_DOWN_SELECTED.Tag = "s" + Me.BTT_DOWN_SELECTED.Text = "Download selected" + ' 'BTT_REFRESH ' Me.BTT_REFRESH.Image = Global.SCrawler.My.Resources.Resources.RefreshPic_24 @@ -141,14 +205,18 @@ Namespace DownloadObjects Me.PerformLayout() End Sub - - Private WithEvents ToolbarTOP As ToolStrip - Private WithEvents TP_DATA As TableLayoutPanel Private WithEvents BTT_REFRESH As ToolStripButton Private WithEvents BTT_CLEAR As ToolStripButton Private WithEvents MENU_LOAD_SESSION As ToolStripDropDownButton Private WithEvents BTT_LOAD_SESSION_LAST As ToolStripMenuItem Private WithEvents BTT_LOAD_SESSION_CHOOSE As ToolStripMenuItem Private WithEvents SEP_0 As ToolStripSeparator + Private WithEvents ToolbarTOP As ToolStrip + Private WithEvents TP_DATA As TableLayoutPanel + Private WithEvents OPT_DEFAULT As ToolStripMenuItem + Private WithEvents OPT_SUBSCRIPTIONS As ToolStripMenuItem + Private WithEvents MENU_DOWN As ToolStripDropDownButton + Private WithEvents BTT_DOWN_ALL As ToolStripMenuItem + Private WithEvents BTT_DOWN_SELECTED As ToolStripMenuItem End Class End Namespace \ No newline at end of file diff --git a/SCrawler/Download/Feed/DownloadFeedForm.resx b/SCrawler/Download/Feed/DownloadFeedForm.resx index d0947eb..913b26b 100644 --- a/SCrawler/Download/Feed/DownloadFeedForm.resx +++ b/SCrawler/Download/Feed/DownloadFeedForm.resx @@ -120,6 +120,21 @@ False + + False + + + False + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAABkSURBVDhPY6AKyO86WFDQfeg/iIYKkQZAmkNbnvyXta76 + DxViYGFi+Y8PQ5VBAMhmkGYgJs8FAw9GA5EKILFiWUFixfL/IBoqRBoAafYsOvpf0jiTvEAE2QzSLGmU + MeQCkYEBAD3tUdo+/cEPAAAAAElFTkSuQmCC + + 17, 17 diff --git a/SCrawler/Download/Feed/DownloadFeedForm.vb b/SCrawler/Download/Feed/DownloadFeedForm.vb index 2ed3b68..01a90bf 100644 --- a/SCrawler/Download/Feed/DownloadFeedForm.vb +++ b/SCrawler/Download/Feed/DownloadFeedForm.vb @@ -23,10 +23,17 @@ Namespace DownloadObjects Private DataRows As Integer = 10 Private DataColumns As Integer = 1 Private FeedEndless As Boolean = False - Private ReadOnly FileNotExist As New FPredicate(Of UserMediaD)(Function(d) Not d.Data.File.Exists) + Private ReadOnly FilterSubscriptions As New FPredicate(Of UserMediaD)(Function(d) If(d.User?.IsSubscription, False)) + Private ReadOnly FilterUsers As New FPredicate(Of UserMediaD)(Function(d) Not FilterSubscriptions.Invoke(d)) + Private ReadOnly FileNotExist As New FPredicate(Of UserMediaD)(Function(d) Not d.Data.File.Exists And Not FilterSubscriptions.Invoke(d)) Private BttRefreshToolTipText As String = "Refresh data list" Private CenterImage As Boolean = False Private NumberOfVisibleImages As Integer = 1 + Private ReadOnly Property IsSubscription As Boolean + Get + Return OPT_SUBSCRIPTIONS.Checked + End Get + End Property #End Region #Region "Initializer" Friend Sub New() @@ -56,6 +63,15 @@ Namespace DownloadObjects .AddThisToolbar() End With ToolbarTOP.Items.AddRange({New ToolStripSeparator, BTT_DELETE_SELECTED}) + With Settings + If .FeedOpenLastMode Then + If .FeedLastModeSubscriptions Then OPT_SUBSCRIPTIONS.Checked = True Else OPT_DEFAULT.Checked = True + Else + OPT_DEFAULT.Checked = True + Settings.FeedLastModeSubscriptions.Value = False + End If + End With + MENU_DOWN.Visible = OPT_SUBSCRIPTIONS.Checked UpdateSettings() RefillList() .EndLoaderOperations(False) @@ -72,7 +88,15 @@ Namespace DownloadObjects DataList.Clear() End Sub Private Sub DownloadFeedForm_KeyDown(sender As Object, e As KeyEventArgs) Handles Me.KeyDown - If e.KeyCode = Keys.F5 Then RefillList() : e.Handled = True + Dim b As Boolean = True + If e.KeyCode = Keys.F5 Then + RefillList() + ElseIf e.Control And e.KeyCode = Keys.G Then + MyRange.GoToF() + Else + b = False + End If + If b Then e.Handled = True End Sub #End Region #Region "Settings" @@ -143,8 +167,11 @@ Namespace DownloadObjects Private Sub RefillList(Optional ByVal RefillDataList As Boolean = True) DataPopulated = False If RefillDataList Then - Try : Downloader.Files.RemoveAll(FileNotExist) : Catch : End Try - DataList.ListAddList(Downloader.Files, LAP.ClearBeforeAdd, LAP.NotContainsOnly) + If Not IsSubscription Then + Try : Downloader.Files.RemoveAll(FileNotExist) : Catch : End Try + End If + DataList.Clear() + DataList.ListAddList(Downloader.Files.Where(If(IsSubscription, FilterSubscriptions, FilterUsers)), LAP.NotContainsOnly) End If MyRange.Source = DataList ControlInvokeFast(ToolbarTOP, BTT_REFRESH, Sub() BTT_REFRESH.ToolTipText = BttRefreshToolTipText) @@ -173,6 +200,14 @@ Namespace DownloadObjects Dim m As New MMessage("Saved sessions not selected", "Sessions",, vbExclamation) Dim x As XmlFile Dim lcr As New ListAddParams(LAP.NotContainsOnly + LAP.IgnoreICopier) + Dim __clearList As Action = Sub() + If IsSubscription Then + DataList.RemoveAll(FilterUsers) + Else + DataList.RemoveAll(FilterSubscriptions) + DataList.RemoveAll(FileNotExist) + End If + End Sub If Not GetLast AndAlso f.Exists(SFO.Path, False) Then fList = SFile.GetFiles(f, "*.xml",, EDP.ReturnValue) If Not GetLast AndAlso fList.ListExists Then Using chooser As New SimpleListForm(Of SFile)(fList, Settings.Design) With { @@ -192,7 +227,7 @@ Namespace DownloadObjects If x.Count > 0 Then DataList.ListAddList(x, lcr) x.Dispose() Next - DataList.RemoveAll(FileNotExist) + __clearList.Invoke RefillList(False) Else MsgBoxE(m) @@ -206,6 +241,7 @@ Namespace DownloadObjects x.LoadData() If x.Count > 0 Then DataList.Clear() : DataList.ListAddList(x, lcr) x.Dispose() + __clearList.Invoke RefillList(False) Else m.Text = "Saved sessions not found" @@ -216,6 +252,49 @@ Namespace DownloadObjects ErrorsDescriber.Execute(EDP.SendToLog, ex, $"[DownloadObjects.DownloadFeedForm.SessionChooser({GetLast})]") End Try End Sub + Private Sub OPT_Click(ByVal Sender As ToolStripMenuItem, ByVal e As EventArgs) Handles OPT_DEFAULT.Click, OPT_SUBSCRIPTIONS.Click + Dim __refill As Boolean = False + ControlInvokeFast(ToolbarTOP, Sender, + Sub() + Dim clicked As ToolStripMenuItem = Sender + Dim other As ToolStripMenuItem = If(Sender Is OPT_DEFAULT, OPT_SUBSCRIPTIONS, OPT_DEFAULT) + If other.Checked Then + __refill = True + clicked.Checked = True + other.Checked = False + Else + clicked.Checked = False + End If + Settings.FeedLastModeSubscriptions.Value = OPT_SUBSCRIPTIONS.Checked + MENU_DOWN.Visible = OPT_SUBSCRIPTIONS.Checked + End Sub, EDP.None) + If __refill Then RefillList() + End Sub +#End Region +#Region "Download" + Private Sub FeedMedia_Download(ByVal Sender As Object, ByVal e As EventArgs) Handles BTT_DOWN_ALL.Click, BTT_DOWN_SELECTED.Click + Try + Dim urls As New List(Of String) + If TypeOf Sender Is FeedMedia Then + urls.Add(DirectCast(Sender, FeedMedia).Post.URL_BASE) + ElseIf TypeOf Sender Is ToolStripMenuItem Then + Dim all As Boolean = CStr(AConvert(Of String)(DirectCast(Sender, ToolStripMenuItem).Tag, String.Empty)).StringToLower = "a" + ControlInvokeFast(TP_DATA, Sub() + urls.ListAddList((From m As FeedMedia In TP_DATA.Controls + Where m.Checked Or all + Select m.Post.URL_BASE).ListIfNothing) + TP_DATA.Controls.Cast(Of FeedMedia).ToList.ForEach(Sub(cnt) cnt.Checked = False) + End Sub) + End If + If urls.Count > 0 Then + VideoDownloader.FormShow + VideoDownloader.ADD_URLS_EXTERNAL(urls) + urls.Clear() + End If + Catch ex As Exception + ErrorsDescriber.Execute(EDP.LogMessageValue, ex, "Download subscription media") + End Try + End Sub #End Region #Region "Delete" Private Sub BTT_DELETE_SELECTED_Click(sender As Object, e As EventArgs) Handles BTT_DELETE_SELECTED.Click @@ -370,10 +449,11 @@ Namespace DownloadObjects RefillInProgress = True AllowTopScroll = False ScrollSuspended = True + Dim __isSubscriptions As Boolean = IsSubscription Dim d As List(Of UserMediaD) = MyRange.Current Dim d2 As List(Of UserMediaD) Dim i% - If d.ListExists And d.All(FileNotExist) Then + If d.ListExists AndAlso Not IsSubscription AndAlso d.All(FileNotExist) Then i = Sender.CurrentIndex Sender.HandlersSuspended = True RefillList() @@ -390,14 +470,20 @@ Namespace DownloadObjects ClearTable() If Sender.CurrentIndex > 0 And FeedEndless Then d2 = DirectCast(MyRange.Switcher, RangeSwitcher(Of UserMediaD)).Item(Sender.CurrentIndex - 1). - Where(Function(md) Not FileNotExist.Predicate(md)).ListTake(-2, DataColumns, EDP.ReturnValue).ListIfNothing + Where(Function(md) __isSubscriptions OrElse Not FileNotExist.Predicate(md)).ListTake(-2, DataColumns, EDP.ReturnValue).ListIfNothing If d2.Count > 0 Then d.InsertRange(0, d2) : d2.Clear() End If Dim w% = GetWidth() Dim h% = GetHeight() Dim p As New TPCELL(DataRows, DataColumns) Dim fmList As New List(Of FeedMedia) - d.ForEach(Sub(de) fmList.Add(New FeedMedia(de, w, h, AddressOf FeedMedia_MediaDeleted))) + d.ForEach(Sub(ByVal de As UserMediaD) + fmList.Add(New FeedMedia(de, w, h)) + With fmList.Last + AddHandler .MediaDeleted, AddressOf FeedMedia_MediaDeleted + AddHandler .MediaDownload, AddressOf FeedMedia_Download + End With + End Sub) If fmList.Count > 0 Then fmList.ListDisposeRemoveAll(Function(fm) fm Is Nothing OrElse fm.HasError) If fmList.Count > 0 Then For i = 0 To fmList.Count - 1 @@ -448,6 +534,7 @@ Namespace DownloadObjects End Function Private Sub DownloadFeedForm_ResizeEnd(sender As Object, e As EventArgs) Handles Me.ResizeEnd ResizeGrid() + UpdateButton() End Sub Private Sub DownloadFeedForm_SizeChanged(sender As Object, e As EventArgs) Handles Me.SizeChanged If Not LastWinState = WindowState And Not If(MyDefs?.Initializing, True) Then LastWinState = WindowState : ResizeGrid() @@ -480,6 +567,11 @@ Namespace DownloadObjects End With End Sub) End Sub + Private Sub UpdateButton() + ControlInvokeFast(ToolbarTOP, MENU_DOWN, Sub() MENU_DOWN.DisplayStyle = IIf(Width >= 540, + ToolStripItemDisplayStyle.ImageAndText, + ToolStripItemDisplayStyle.Image), EDP.None) + End Sub #End Region #Region "Scroll" Private AllowTopScroll As Boolean = False diff --git a/SCrawler/Download/Feed/FeedMedia.Designer.vb b/SCrawler/Download/Feed/FeedMedia.Designer.vb index 458d764..d9dca91 100644 --- a/SCrawler/Download/Feed/FeedMedia.Designer.vb +++ b/SCrawler/Download/Feed/FeedMedia.Designer.vb @@ -25,25 +25,29 @@ Namespace DownloadObjects Me.components = New System.ComponentModel.Container() Dim CONTEXT_SEP_1 As System.Windows.Forms.ToolStripSeparator Dim CONTEXT_SEP_2 As System.Windows.Forms.ToolStripSeparator - Dim CONTEXT_SEP_3 As System.Windows.Forms.ToolStripSeparator Dim TP_LBL As System.Windows.Forms.TableLayoutPanel Me.CH_CHECKED = New System.Windows.Forms.CheckBox() Me.LBL_INFO = New System.Windows.Forms.Label() Me.CONTEXT_DATA = New System.Windows.Forms.ContextMenuStrip(Me.components) + Me.BTT_CONTEXT_DOWN = New System.Windows.Forms.ToolStripMenuItem() + Me.CONTEXT_SEP_0 = New System.Windows.Forms.ToolStripSeparator() Me.BTT_CONTEXT_OPEN_MEDIA = New System.Windows.Forms.ToolStripMenuItem() Me.BTT_CONTEXT_OPEN_USER = New System.Windows.Forms.ToolStripMenuItem() Me.BTT_CONTEXT_OPEN_USER_URL = New System.Windows.Forms.ToolStripMenuItem() Me.BTT_CONTEXT_OPEN_USER_POST = New System.Windows.Forms.ToolStripMenuItem() Me.BTT_CONTEXT_FIND_USER = New System.Windows.Forms.ToolStripMenuItem() Me.BTT_CONTEXT_INFO = New System.Windows.Forms.ToolStripMenuItem() + Me.CONTEXT_SEP_3 = New System.Windows.Forms.ToolStripSeparator() Me.BTT_CONTEXT_DELETE = New System.Windows.Forms.ToolStripMenuItem() + Me.ICON_SITE = New System.Windows.Forms.PictureBox() Me.TP_MAIN = New System.Windows.Forms.TableLayoutPanel() + Me.LBL_TITLE = New System.Windows.Forms.Label() CONTEXT_SEP_1 = New System.Windows.Forms.ToolStripSeparator() CONTEXT_SEP_2 = New System.Windows.Forms.ToolStripSeparator() - CONTEXT_SEP_3 = New System.Windows.Forms.ToolStripSeparator() TP_LBL = New System.Windows.Forms.TableLayoutPanel() TP_LBL.SuspendLayout() Me.CONTEXT_DATA.SuspendLayout() + CType(Me.ICON_SITE, System.ComponentModel.ISupportInitialize).BeginInit() Me.TP_MAIN.SuspendLayout() Me.SuspendLayout() ' @@ -57,25 +61,21 @@ Namespace DownloadObjects CONTEXT_SEP_2.Name = "CONTEXT_SEP_2" CONTEXT_SEP_2.Size = New System.Drawing.Size(134, 6) ' - 'CONTEXT_SEP_3 - ' - CONTEXT_SEP_3.Name = "CONTEXT_SEP_3" - CONTEXT_SEP_3.Size = New System.Drawing.Size(134, 6) - ' 'TP_LBL ' - TP_LBL.ColumnCount = 2 + TP_LBL.ColumnCount = 3 + TP_LBL.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) TP_LBL.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) TP_LBL.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) TP_LBL.Controls.Add(Me.CH_CHECKED, 0, 0) - TP_LBL.Controls.Add(Me.LBL_INFO, 1, 0) + TP_LBL.Controls.Add(Me.LBL_INFO, 2, 0) + TP_LBL.Controls.Add(Me.ICON_SITE, 1, 0) TP_LBL.Dock = System.Windows.Forms.DockStyle.Fill TP_LBL.Location = New System.Drawing.Point(0, 0) TP_LBL.Margin = New System.Windows.Forms.Padding(0) TP_LBL.Name = "TP_LBL" TP_LBL.RowCount = 1 TP_LBL.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) - TP_LBL.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) TP_LBL.Size = New System.Drawing.Size(146, 25) TP_LBL.TabIndex = 0 ' @@ -95,17 +95,31 @@ Namespace DownloadObjects Me.LBL_INFO.AutoSize = True Me.LBL_INFO.ContextMenuStrip = Me.CONTEXT_DATA Me.LBL_INFO.Dock = System.Windows.Forms.DockStyle.Fill - Me.LBL_INFO.Location = New System.Drawing.Point(28, 0) + Me.LBL_INFO.Location = New System.Drawing.Point(53, 0) Me.LBL_INFO.Name = "LBL_INFO" - Me.LBL_INFO.Size = New System.Drawing.Size(115, 25) + Me.LBL_INFO.Size = New System.Drawing.Size(90, 25) Me.LBL_INFO.TabIndex = 1 Me.LBL_INFO.TextAlign = System.Drawing.ContentAlignment.MiddleLeft ' 'CONTEXT_DATA ' - Me.CONTEXT_DATA.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BTT_CONTEXT_OPEN_MEDIA, Me.BTT_CONTEXT_OPEN_USER, CONTEXT_SEP_1, Me.BTT_CONTEXT_OPEN_USER_URL, Me.BTT_CONTEXT_OPEN_USER_POST, CONTEXT_SEP_2, Me.BTT_CONTEXT_FIND_USER, Me.BTT_CONTEXT_INFO, CONTEXT_SEP_3, Me.BTT_CONTEXT_DELETE}) + Me.CONTEXT_DATA.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BTT_CONTEXT_DOWN, Me.CONTEXT_SEP_0, Me.BTT_CONTEXT_OPEN_MEDIA, Me.BTT_CONTEXT_OPEN_USER, CONTEXT_SEP_1, Me.BTT_CONTEXT_OPEN_USER_URL, Me.BTT_CONTEXT_OPEN_USER_POST, CONTEXT_SEP_2, Me.BTT_CONTEXT_FIND_USER, Me.BTT_CONTEXT_INFO, Me.CONTEXT_SEP_3, Me.BTT_CONTEXT_DELETE}) Me.CONTEXT_DATA.Name = "CONTEXT_PIC" - Me.CONTEXT_DATA.Size = New System.Drawing.Size(138, 176) + Me.CONTEXT_DATA.Size = New System.Drawing.Size(138, 204) + ' + 'BTT_CONTEXT_DOWN + ' + Me.BTT_CONTEXT_DOWN.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16 + Me.BTT_CONTEXT_DOWN.Name = "BTT_CONTEXT_DOWN" + Me.BTT_CONTEXT_DOWN.Size = New System.Drawing.Size(137, 22) + Me.BTT_CONTEXT_DOWN.Text = "Download" + Me.BTT_CONTEXT_DOWN.Visible = False + ' + 'CONTEXT_SEP_0 + ' + Me.CONTEXT_SEP_0.Name = "CONTEXT_SEP_0" + Me.CONTEXT_SEP_0.Size = New System.Drawing.Size(134, 6) + Me.CONTEXT_SEP_0.Visible = False ' 'BTT_CONTEXT_OPEN_MEDIA ' @@ -149,6 +163,11 @@ Namespace DownloadObjects Me.BTT_CONTEXT_INFO.Size = New System.Drawing.Size(137, 22) Me.BTT_CONTEXT_INFO.Text = "Information" ' + 'CONTEXT_SEP_3 + ' + Me.CONTEXT_SEP_3.Name = "CONTEXT_SEP_3" + Me.CONTEXT_SEP_3.Size = New System.Drawing.Size(134, 6) + ' 'BTT_CONTEXT_DELETE ' Me.BTT_CONTEXT_DELETE.Image = Global.SCrawler.My.Resources.Resources.DeletePic_24 @@ -156,22 +175,43 @@ Namespace DownloadObjects Me.BTT_CONTEXT_DELETE.Size = New System.Drawing.Size(137, 22) Me.BTT_CONTEXT_DELETE.Text = "Delete" ' + 'ICON_SITE + ' + Me.ICON_SITE.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom + Me.ICON_SITE.Dock = System.Windows.Forms.DockStyle.Fill + Me.ICON_SITE.Location = New System.Drawing.Point(28, 3) + Me.ICON_SITE.Name = "ICON_SITE" + Me.ICON_SITE.Size = New System.Drawing.Size(19, 19) + Me.ICON_SITE.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom + Me.ICON_SITE.TabIndex = 2 + Me.ICON_SITE.TabStop = False + ' 'TP_MAIN ' Me.TP_MAIN.ColumnCount = 1 Me.TP_MAIN.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) - Me.TP_MAIN.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 20.0!)) Me.TP_MAIN.Controls.Add(TP_LBL, 0, 0) + Me.TP_MAIN.Controls.Add(Me.LBL_TITLE, 0, 1) Me.TP_MAIN.Dock = System.Windows.Forms.DockStyle.Fill Me.TP_MAIN.Location = New System.Drawing.Point(0, 0) Me.TP_MAIN.Margin = New System.Windows.Forms.Padding(0) Me.TP_MAIN.Name = "TP_MAIN" - Me.TP_MAIN.RowCount = 2 + Me.TP_MAIN.RowCount = 3 + Me.TP_MAIN.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) Me.TP_MAIN.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) Me.TP_MAIN.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) Me.TP_MAIN.Size = New System.Drawing.Size(146, 146) Me.TP_MAIN.TabIndex = 0 ' + 'LBL_TITLE + ' + Me.LBL_TITLE.AutoSize = True + Me.LBL_TITLE.Dock = System.Windows.Forms.DockStyle.Fill + Me.LBL_TITLE.Location = New System.Drawing.Point(3, 25) + Me.LBL_TITLE.Name = "LBL_TITLE" + Me.LBL_TITLE.Size = New System.Drawing.Size(140, 25) + Me.LBL_TITLE.TabIndex = 1 + ' 'FeedMedia ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) @@ -186,7 +226,9 @@ Namespace DownloadObjects TP_LBL.ResumeLayout(False) TP_LBL.PerformLayout() Me.CONTEXT_DATA.ResumeLayout(False) + CType(Me.ICON_SITE, System.ComponentModel.ISupportInitialize).EndInit() Me.TP_MAIN.ResumeLayout(False) + Me.TP_MAIN.PerformLayout() Me.ResumeLayout(False) End Sub @@ -202,5 +244,10 @@ Namespace DownloadObjects Private WithEvents CH_CHECKED As CheckBox Private WithEvents LBL_INFO As Label Private WithEvents BTT_CONTEXT_INFO As ToolStripMenuItem + Private WithEvents ICON_SITE As PictureBox + Private WithEvents CONTEXT_SEP_3 As ToolStripSeparator + Private WithEvents BTT_CONTEXT_DOWN As ToolStripMenuItem + Private WithEvents CONTEXT_SEP_0 As ToolStripSeparator + Private WithEvents LBL_TITLE As Label End Class End Namespace \ No newline at end of file diff --git a/SCrawler/Download/Feed/FeedMedia.resx b/SCrawler/Download/Feed/FeedMedia.resx index 6a1dbbc..d0a3aa8 100644 --- a/SCrawler/Download/Feed/FeedMedia.resx +++ b/SCrawler/Download/Feed/FeedMedia.resx @@ -123,9 +123,6 @@ False - - False - False diff --git a/SCrawler/Download/Feed/FeedMedia.vb b/SCrawler/Download/Feed/FeedMedia.vb index 45c2c80..7606931 100644 --- a/SCrawler/Download/Feed/FeedMedia.vb +++ b/SCrawler/Download/Feed/FeedMedia.vb @@ -16,6 +16,7 @@ Namespace DownloadObjects Public Class FeedMedia #Region "Events" Friend Event MediaDeleted(ByVal Sender As Object) + Friend Event MediaDownload As EventHandler #End Region #Region "Declarations" Private Const VideoHeight As Integer = 450 @@ -55,17 +56,22 @@ Namespace DownloadObjects End Property Private ReadOnly Property ObjectsPaddingHeight As Integer Get - Return TP_MAIN.RowStyles(0).Height + PaddingE.GetOf({TP_MAIN}).Vertical(2) + Return TP_MAIN.RowStyles(0).Height + TP_MAIN.RowStyles(1).Height + PaddingE.GetOf({TP_MAIN}).Vertical(3) End Get End Property Private ReadOnly UserKey As String - Private ReadOnly Post As UserMedia - Friend ReadOnly Property Checked As Boolean + Friend ReadOnly Post As UserMedia + Private ReadOnly Media As UserMediaD + Friend Property Checked As Boolean Get Return CH_CHECKED.Checked End Get + Set(ByVal c As Boolean) + If Not CH_CHECKED.Checked = c Then ControlInvokeFast(CH_CHECKED, Sub() CH_CHECKED.Checked = c) + End Set End Property Friend ReadOnly Property Information As String + Private ReadOnly Property IsSubscription As Boolean = False Private Function GetImageResize(ByVal Width As Integer, ByVal Height As Integer) As Size If Height > 0 Then Dim h% = Height = ObjectsPaddingHeight @@ -101,46 +107,123 @@ Namespace DownloadObjects End If End Sub Private Sub ApplyColors() - If Settings.FeedBackColor.Exists Then - BackColor = Settings.FeedBackColor - LBL_INFO.BackColor = Settings.FeedBackColor + Dim b As Color? = Nothing, f As Color? = Nothing + If Not Media.User Is Nothing Then + If Media.User.BackColor.HasValue Then b = Media.User.BackColor + If Media.User.ForeColor.HasValue Then f = Media.User.ForeColor End If - If Settings.FeedForeColor.Exists Then - ForeColor = Settings.FeedForeColor - LBL_INFO.ForeColor = Settings.FeedForeColor + If Not b.HasValue And Settings.FeedBackColor.Exists Then b = Settings.FeedBackColor.Value + If Not f.HasValue And Settings.FeedForeColor.Exists Then f = Settings.FeedForeColor.Value + If b.HasValue Then + BackColor = b.Value + LBL_INFO.BackColor = b.Value + If Not LBL_TITLE.IsDisposed Then LBL_TITLE.BackColor = b.Value + End If + If f.HasValue Then + ForeColor = f.Value + LBL_INFO.ForeColor = f.Value + If Not LBL_TITLE.IsDisposed Then LBL_TITLE.ForeColor = f.Value End If End Sub #End Region +#Region "Converter" + Private Const ExtWebp As String = "webp" + Private Const ExtJpg As String = "jpg" + Private Function ConvertWebp(ByVal file As SFile, Optional ByVal NewCacheDir As Boolean = False) As SFile + If file.Extension = ExtWebp Then + If Settings.FfmpegFile.Exists Then + Dim dir As SFile + If NewCacheDir Then dir = Settings.Cache.NewPath Else dir = Settings.Cache + Dim f As SFile = file + f.Path = dir.Path + f.Extension = ExtJpg + Using imgBatch As New BatchExecutor + With imgBatch + .ChangeDirectory(dir) + .Execute($"""{Settings.FfmpegFile}"" -i ""{file}"" ""{f}""") + End With + End Using + If f.Exists Then Return f + End If + Else + Return file + End If + Return Nothing + End Function +#End Region #Region "Initializers" Public Sub New() InitializeComponent() End Sub - Friend Sub New(ByVal Media As UserMediaD, ByVal Width As Integer, ByVal Height As Integer, ByVal Handler As MediaDeletedEventHandler) + Friend Sub New(ByVal Media As UserMediaD, ByVal Width As Integer, ByVal Height As Integer) Try InitializeComponent() - File = Media.Data.File - If Not File.Exists And Media.Data.Type = UserMedia.Types.Video Then File.Path = $"{File.Path.CSFilePS}Video" - If Not File.Exists Then + Me.Media = Media + IsSubscription = If(Media.User?.IsSubscription, False) + + If IsSubscription Then + LBL_TITLE.Text = Media.Data.PictureOption.IfNullOrEmpty(Media.Data.File.Name) + If LBL_TITLE.Text.IsEmptyString Then + TP_MAIN.Controls.Remove(LBL_TITLE) + LBL_TITLE.Dispose() + TP_MAIN.RowStyles(1).Height = 0 + End If + + BTT_CONTEXT_DOWN.Visible = True + CONTEXT_SEP_0.Visible = True + BTT_CONTEXT_OPEN_USER.Visible = False + CONTEXT_SEP_3.Visible = False + BTT_CONTEXT_DELETE.Visible = False + + If Not Media.Data.URL.IsEmptyString Then + Dim ext$ = Media.Data.URL.CSFile.Extension + Dim imgFile As New SFile With {.Path = Settings.Cache.RootDirectory.Path} + With Media.User + imgFile.Name = $"{IIf(.IncludedInCollection, "{.CollectionName}", String.Empty)}{ .Site}{ .Name}_" + imgFile.Name &= (CLng(Media.Data.URL.GetHashCode) + CLng(Media.Data.File.GetHashCode)).ToString + imgFile.Extension = ExtJpg + If Not imgFile.Exists AndAlso Not ext.IsEmptyString AndAlso ext.ToLower = ExtWebp Then imgFile.Extension = ExtWebp + End With + If Not imgFile.Exists Then + Settings.Cache.Validate() + GetWebFile(Media.Data.URL, imgFile, EDP.None) + If imgFile.Exists Then File = ConvertWebp(imgFile) + Else + File = imgFile + End If + End If + Else + TP_MAIN.Controls.Remove(LBL_TITLE) + LBL_TITLE.Dispose() + TP_MAIN.RowStyles(1).Height = 0 + File = Media.Data.File + If Not File.Exists And Media.Data.Type = UserMedia.Types.Video Then File.Path = $"{File.Path.CSFilePS}Video" + End If + + If Not File.Exists And Not IsSubscription Then If Not Media.Data.SpecialFolder.IsEmptyString Then File.Path = $"{File.Path.CSFilePS}{Media.Data.SpecialFolder}".CSFileP If Not File.Exists And Media.Data.Type = UserMedia.Types.Video Then File.Path = $"{File.Path.CSFilePS}Video" End If End If + If File.Exists Then Information = $"Type: {Media.Data.Type}" Information.StringAppendLine($"File: {File.File}") Information.StringAppendLine($"Address: {File}") Information.StringAppendLine($"Downloaded: {Media.Date.ToStringDate(ADateTime.Formats.BaseDateTime)}") If Media.Data.Post.Date.HasValue Then Information.StringAppendLine($"Posted: {Media.Data.Post.Date.Value.ToStringDate(ADateTime.Formats.BaseDateTime)}") - Dim infoType As UserMedia.Types = Media.Data.Type + Dim infoType As UserMedia.Types = If(IsSubscription, UserMedia.Types.Picture, Media.Data.Type) Dim h% Dim s As Size Post = Media.Data - Select Case Media.Data.Type + Select Case infoType Case UserMedia.Types.Picture, UserMedia.Types.GIF - MyImage = New ImageRenderer(File) + Dim tmpMediaFile As SFile = ConvertWebp(File, True) + If tmpMediaFile.IsEmptyString Then Throw New ArgumentNullException With {.HelpLink = 1} + MyImage = New ImageRenderer(tmpMediaFile) Dim a As AnchorStyles = AnchorStyles.Top + If(Height > 0, 0, AnchorStyles.Left) s = GetImageResize(Width, Height) h = s.Height @@ -158,14 +241,14 @@ Namespace DownloadObjects .Padding = New Padding(0), .ContextMenuStrip = CONTEXT_DATA } - TP_MAIN.Controls.Add(MyPicture, 0, 1) + TP_MAIN.Controls.Add(MyPicture, 0, 2) BTT_CONTEXT_OPEN_MEDIA.Text &= " picture" BTT_CONTEXT_DELETE.Text &= " picture" Case UserMedia.Types.Video, UserMedia.Types.m3u8 infoType = UserMedia.Types.Video MyVideo = New FeedVideo(File) With {.Tag = File, .Dock = DockStyle.Fill, .ContextMenuStrip = CONTEXT_DATA} If MyVideo.HasError Then HasError = True - TP_MAIN.Controls.Add(MyVideo, 0, 1) + TP_MAIN.Controls.Add(MyVideo, 0, 2) BTT_CONTEXT_OPEN_MEDIA.Text &= " video" BTT_CONTEXT_DELETE.Text &= " video" h = VideoHeight @@ -181,22 +264,33 @@ Namespace DownloadObjects If .IncludedInCollection Then Information.StringAppendLine($"User collection: { .CollectionName}") Information.StringAppendLine($"User site: { .Site}") Information.StringAppendLine($"User name: {IIf(Not .FriendlyName.IsEmptyString And Not .IncludedInCollection, .FriendlyName, .Name)}") - If .Site = API.Instagram.InstagramSite Then BTT_CONTEXT_OPEN_USER_POST.Visible = False If .IncludedInCollection Then info &= $"[{ .CollectionName}]: " - info &= $"{ .Site} - {IIf(Not .FriendlyName.IsEmptyString And Not .IncludedInCollection, .FriendlyName, .Name)}" + If Settings.FeedShowFriendlyNames Or Not DirectCast(.Self, UserDataBase).FeedIsUser Then + info &= $"{ .Site} - { .FriendlyName.IfNullOrEmpty(.Name)}" + Else + info &= $"{ .Site} - {IIf(Not .FriendlyName.IsEmptyString And Not .IncludedInCollection, .FriendlyName, .Name)}" + End If End With End If If Settings.FeedAddSessionToCaption Then info = $"[{Media.Session}] {info}" If Settings.FeedAddDateToCaption Then info &= $" ({Media.Date.ToStringDate(ADateTime.Formats.BaseDateTime)})" LBL_INFO.Text = info + If Not Media.User Is Nothing AndAlso Not Media.User.HOST Is Nothing Then + With Media.User.HOST.Source + If Not .Image Is Nothing Then + ICON_SITE.Image = .Image + ElseIf Not .Icon Is Nothing Then + ICON_SITE.Image = .Icon.ToBitmap + End If + End With + End If s = New Size(Width, h + ObjectsPaddingHeight) Size = s MinimumSize = s MaximumSize = s ApplyColors() - If Not Handler Is Nothing Then AddHandler Me.MediaDeleted, Handler Else Throw New ArgumentNullException With {.HelpLink = 1} End If @@ -222,11 +316,16 @@ Namespace DownloadObjects If e.Button = MouseButtons.Left Then ControlInvoke(CH_CHECKED, Sub() CH_CHECKED.Checked = Not CH_CHECKED.Checked) End Sub Private Sub LBL_INFO_DoubleClick(sender As Object, e As EventArgs) Handles LBL_INFO.DoubleClick - If Not UserKey.IsEmptyString Then + If Not UserKey.IsEmptyString And Not IsSubscription Then Dim u As IUserData = Settings.GetUser(UserKey) If Not u Is Nothing Then u.OpenFolder() End If End Sub + Private Sub LBL_TITLE_MouseDoubleClick(sender As Object, e As MouseEventArgs) Handles LBL_TITLE.MouseDoubleClick + If Not Post.URL_BASE.IsEmptyString Then + Try : Process.Start(Post.URL_BASE) : Catch : End Try + End If + End Sub #End Region #Region "Picture / Video objects" Private Sub MyPicture_DoubleClick(sender As Object, e As EventArgs) Handles MyPicture.DoubleClick @@ -234,6 +333,9 @@ Namespace DownloadObjects End Sub #End Region #Region "Context" + Private Sub BTT_CONTEXT_DOWN_Click(sender As Object, e As EventArgs) Handles BTT_CONTEXT_DOWN.Click + RaiseEvent MediaDownload(Me, EventArgs.Empty) + End Sub Private Sub BTT_CONTEXT_OPEN_MEDIA_Click(sender As Object, e As EventArgs) Handles BTT_CONTEXT_OPEN_MEDIA.Click File.Open() End Sub @@ -251,15 +353,18 @@ Namespace DownloadObjects End Sub Private Sub BTT_CONTEXT_OPEN_USER_POST_Click(sender As Object, e As EventArgs) Handles BTT_CONTEXT_OPEN_USER_POST.Click Try - If Not UserKey.IsEmptyString And Not Post.Post.ID.IsEmptyString Then - Dim u As IUserData = Settings.GetUser(UserKey) - If Not u Is Nothing Then - Dim url$ = UserDataBase.GetPostUrl(u, Post) - If Not url.IsEmptyString Then - Try : Process.Start(url) : Catch : End Try - End If + Dim url$ = String.Empty + If IsSubscription Then + url = Post.URL_BASE + Else + If Not UserKey.IsEmptyString And Not Post.Post.ID.IsEmptyString Then + Dim u As IUserData = Settings.GetUser(UserKey) + If Not u Is Nothing Then url = UserDataBase.GetPostUrl(u, Post) End If End If + If Not url.IsEmptyString Then + Try : Process.Start(url) : Catch : End Try + End If Catch ex As Exception ErrorsDescriber.Execute(EDP.LogMessageValue, ex, $"[FeedMedia.OpenPost({UserKey}, {Post.Post.ID})]") End Try diff --git a/SCrawler/Download/Groups/DownloadGroup.vb b/SCrawler/Download/Groups/DownloadGroup.vb index 081566b..45f1fa3 100644 --- a/SCrawler/Download/Groups/DownloadGroup.vb +++ b/SCrawler/Download/Groups/DownloadGroup.vb @@ -144,6 +144,17 @@ Namespace DownloadObjects.Groups (.Temporary = CheckState.Indeterminate Or user.Temporary = CBool(.Temporary)) And (.Favorite = CheckState.Indeterminate Or (user.Favorite = CBool(.Favorite))) And (Not UseReadyOption Or .ReadyForDownloadIgnore Or user.ReadyForDownload = .ReadyForDownload) And user.Exists + Dim CheckSubscription As Predicate(Of IUserData) = Function(ByVal user As IUserData) As Boolean + If .Subscriptions Then + If .SubscriptionsOnly Then + Return user.IsSubscription = True + Else + Return True + End If + Else + Return user.IsSubscription = False + End If + End Function Dim CheckLabelsExcluded As Predicate(Of IUserData) = Function(ByVal user As IUserData) As Boolean If .LabelsExcluded.Count = 0 Then Return True @@ -165,7 +176,16 @@ Namespace DownloadObjects.Groups Dim CheckSites As Predicate(Of IUserData) = Function(user) _ (.Sites.Count = 0 OrElse .Sites.Contains(user.Site)) AndAlso (.SitesExcluded.Count = 0 OrElse Not .SitesExcluded.Contains(user.Site)) - Return Settings.GetUsers(Function(user) CheckLabels.Invoke(user) AndAlso CheckSites.Invoke(user) AndAlso CheckParams.Invoke(user)) + Dim users As IEnumerable(Of IUserData) = + Settings.GetUsers(Function(user) CheckLabels.Invoke(user) AndAlso CheckSites.Invoke(user) AndAlso + CheckParams.Invoke(user) AndAlso CheckSubscription.Invoke(user)) + If .UsersCount = 0 Or Not users.ListExists Then + Return users + Else + users = users.ListTake(If(.UsersCount > 0, -1, -2), Math.Abs(.UsersCount)) + If .UsersCount < 0 Then users = users.ListReverse + Return users + End If End With Else Return Nothing diff --git a/SCrawler/Download/Groups/GroupDefaults.vb b/SCrawler/Download/Groups/GroupDefaults.vb index a5a99b4..3f433a8 100644 --- a/SCrawler/Download/Groups/GroupDefaults.vb +++ b/SCrawler/Download/Groups/GroupDefaults.vb @@ -13,10 +13,14 @@ Namespace DownloadObjects.Groups Public Class GroupDefaults : Inherits TableLayoutPanel Private ReadOnly TP_1 As TableLayoutPanel Private ReadOnly TP_2 As TableLayoutPanel + Private ReadOnly TP_3 As TableLayoutPanel Private ReadOnly CH_TEMPORARY As CheckBox Private ReadOnly CH_FAV As CheckBox Private ReadOnly CH_READY_FOR_DOWN As CheckBox Private ReadOnly CH_READY_FOR_DOWN_IGNORE As CheckBox + Private ReadOnly CH_SUBSCRIPTIONS As CheckBox + Private ReadOnly CH_SUBSCRIPTIONS_ONLY As CheckBox + Private WithEvents NUM_USERS_COUNT As TextBoxExtended Private WithEvents TXT_LABELS As TextBoxExtended Private WithEvents TXT_SITES As TextBoxExtended Friend WithEvents TXT_NAME As TextBoxExtended @@ -48,6 +52,32 @@ Namespace DownloadObjects.Groups FillTP(TP_1, CH_TEMPORARY, CH_FAV) TP_2 = New TableLayoutPanel With {.CellBorderStyle = TableLayoutPanelCellBorderStyle.Single, .Margin = New Padding(0), .Dock = DockStyle.Fill} FillTP(TP_2, CH_READY_FOR_DOWN, CH_READY_FOR_DOWN_IGNORE) + + CH_SUBSCRIPTIONS = New CheckBox With {.Text = "Subscriptions", .Name = "CH_SUBSCRIPTIONS", .Checked = False, .Dock = DockStyle.Fill} + CH_SUBSCRIPTIONS_ONLY = New CheckBox With {.Text = "Subscriptions only", .Name = "CH_SUBSCRIPTIONS_ONLY", .Checked = False, .Dock = DockStyle.Fill} + TP_3 = New TableLayoutPanel With {.CellBorderStyle = TableLayoutPanelCellBorderStyle.Single, .Margin = New Padding(0), .Dock = DockStyle.Fill} + FillTP(TP_3, CH_SUBSCRIPTIONS, CH_SUBSCRIPTIONS_ONLY) + + NUM_USERS_COUNT = New TextBoxExtended + With NUM_USERS_COUNT + .BeginInit() + .CaptionText = "Users" + .CaptionToolTipText = "The number of users that to be downloaded." & vbCr & + "The number is 0 = all users." & vbCr & + "Number greater than 0 = number of users from the beginning to the end of the list." & vbCr & + "Number less than 0 = number of users from end to the beginning of the list." + .CaptionToolTipEnabled = True + .CaptionWidth = 50 + .ControlMode = TextBoxExtended.ControlModes.NumericUpDown + .NumberMinimum = Integer.MinValue + .NumberMaximum = Integer.MaxValue + .NumberUpDownAlign = LeftRightAlignment.Left + .Dock = DockStyle.Fill + .Buttons.Add(New ActionButton(ADB.Clear) With {.ToolTipText = "Reset value"}) + .ClearTextByButtonClear = False + .Value = 0 + .EndInit() + End With End Sub Private Sub InitTextBox(ByRef TXT As TextBoxExtended, ByVal Caption As String, ByVal Buttons As ActionButton()) TXT = New TextBoxExtended @@ -76,6 +106,9 @@ Namespace DownloadObjects.Groups CH_FAV.Dispose() CH_READY_FOR_DOWN.Dispose() CH_READY_FOR_DOWN_IGNORE.Dispose() + CH_SUBSCRIPTIONS.Dispose() + CH_SUBSCRIPTIONS_ONLY.Dispose() + NUM_USERS_COUNT.Dispose() TXT_LABELS.Dispose() With TP_1 .Controls.Clear() @@ -89,6 +122,12 @@ Namespace DownloadObjects.Groups .ColumnStyles.Clear() .Dispose() End With + With TP_3 + .Controls.Clear() + .RowStyles.Clear() + .ColumnStyles.Clear() + .Dispose() + End With End Sub Protected Overrides Sub InitLayout() MyBase.InitLayout() @@ -98,11 +137,13 @@ Namespace DownloadObjects.Groups CellBorderStyle = TableLayoutPanelCellBorderStyle.Single ColumnCount = 1 ColumnStyles.Add(New ColumnStyle(SizeType.Percent, 100)) - RowCount = 7 + RowCount = 9 RowStyles.Add(New RowStyle(SizeType.Absolute, 25)) RowStyles.Add(New RowStyle(SizeType.Absolute, 28)) RowStyles.Add(New RowStyle(SizeType.Absolute, 25)) RowStyles.Add(New RowStyle(SizeType.Absolute, 25)) + RowStyles.Add(New RowStyle(SizeType.Absolute, 25)) + RowStyles.Add(New RowStyle(SizeType.Absolute, 28)) RowStyles.Add(New RowStyle(SizeType.Absolute, 28)) RowStyles.Add(New RowStyle(SizeType.Absolute, 28)) RowStyles.Add(New RowStyle(SizeType.Percent, 100)) @@ -110,8 +151,13 @@ Namespace DownloadObjects.Groups Controls.Add(TXT_NAME, 0, 1) Controls.Add(TP_1, 0, 2) Controls.Add(TP_2, 0, 3) - Controls.Add(TXT_LABELS, 0, 4) - Controls.Add(TXT_SITES, 0, 5) + Controls.Add(TP_3, 0, 4) + Controls.Add(NUM_USERS_COUNT, 0, 5) + Controls.Add(TXT_LABELS, 0, 6) + Controls.Add(TXT_SITES, 0, 7) + End Sub + Private Sub NUM_USERS_COUNT_ActionOnButtonClick(ByVal Sender As ActionButton, ByVal e As ActionButtonEventArgs) Handles NUM_USERS_COUNT.ActionOnButtonClick + If Sender.DefaultButton = ADB.Clear Then NUM_USERS_COUNT.Value = 0 End Sub Private Sub TXT_LABELS_ActionOnButtonClick(ByVal Sender As ActionButton, ByVal e As ActionButtonEventArgs) Handles TXT_LABELS.ActionOnButtonClick Select Case Sender.DefaultButton @@ -163,6 +209,9 @@ Namespace DownloadObjects.Groups .Favorite = CH_FAV.CheckState .ReadyForDownload = CH_READY_FOR_DOWN.Checked .ReadyForDownloadIgnore = CH_READY_FOR_DOWN_IGNORE.Checked + .Subscriptions = CH_SUBSCRIPTIONS.Checked + .SubscriptionsOnly = CH_SUBSCRIPTIONS_ONLY.Checked + .UsersCount = NUM_USERS_COUNT.Value .Labels.Clear() .Labels.ListAddList(Labels) .LabelsExcluded.Clear() @@ -182,6 +231,9 @@ Namespace DownloadObjects.Groups CH_FAV.CheckState = .Favorite CH_READY_FOR_DOWN.Checked = .ReadyForDownload CH_READY_FOR_DOWN_IGNORE.Checked = .ReadyForDownloadIgnore + CH_SUBSCRIPTIONS.Checked = .Subscriptions + CH_SUBSCRIPTIONS_ONLY.Checked = .SubscriptionsOnly + NUM_USERS_COUNT.Value = .UsersCount Labels.ListAddList(.Labels) LabelsExcluded.ListAddList(.LabelsExcluded) @@ -195,7 +247,8 @@ Namespace DownloadObjects.Groups End Sub Private _Enabled As Boolean = True Private _JustExcludeOptions As Boolean = False - Friend Overloads Property Enabled(Optional ByVal LeaveExcludeOptions As Boolean = False) As Boolean + Friend Overloads Property Enabled(Optional ByVal LeaveExcludeOptions As Boolean = False, + Optional ByVal LeaveSubscriptionsAndUsersCount As Boolean = False) As Boolean Get Return _Enabled End Get @@ -204,6 +257,8 @@ Namespace DownloadObjects.Groups _JustExcludeOptions = False TP_1.Enabled = e TP_2.Enabled = e + TP_3.Enabled = e Or LeaveSubscriptionsAndUsersCount + NUM_USERS_COUNT.Enabled = e Or LeaveSubscriptionsAndUsersCount If e Then TXT_LABELS.Enabled = True TXT_SITES.Enabled = True diff --git a/SCrawler/Download/Groups/GroupEditorForm.Designer.vb b/SCrawler/Download/Groups/GroupEditorForm.Designer.vb index 9cc09f8..a27c27f 100644 --- a/SCrawler/Download/Groups/GroupEditorForm.Designer.vb +++ b/SCrawler/Download/Groups/GroupEditorForm.Designer.vb @@ -35,13 +35,13 @@ Namespace DownloadObjects.Groups 'CONTAINER_MAIN.ContentPanel ' CONTAINER_MAIN.ContentPanel.Controls.Add(Me.DEFS_GROUP) - CONTAINER_MAIN.ContentPanel.Size = New System.Drawing.Size(476, 141) + CONTAINER_MAIN.ContentPanel.Size = New System.Drawing.Size(476, 196) CONTAINER_MAIN.Dock = System.Windows.Forms.DockStyle.Fill CONTAINER_MAIN.LeftToolStripPanelVisible = False CONTAINER_MAIN.Location = New System.Drawing.Point(0, 0) CONTAINER_MAIN.Name = "CONTAINER_MAIN" CONTAINER_MAIN.RightToolStripPanelVisible = False - CONTAINER_MAIN.Size = New System.Drawing.Size(476, 166) + CONTAINER_MAIN.Size = New System.Drawing.Size(476, 221) CONTAINER_MAIN.TabIndex = 0 CONTAINER_MAIN.TopToolStripPanelVisible = False ' @@ -53,30 +53,32 @@ Namespace DownloadObjects.Groups Me.DEFS_GROUP.Dock = System.Windows.Forms.DockStyle.Fill Me.DEFS_GROUP.Location = New System.Drawing.Point(0, 0) Me.DEFS_GROUP.Name = "DEFS_GROUP" - Me.DEFS_GROUP.RowCount = 7 + Me.DEFS_GROUP.RowCount = 9 Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 0!)) Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) + Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) + Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) - Me.DEFS_GROUP.Size = New System.Drawing.Size(476, 141) + Me.DEFS_GROUP.Size = New System.Drawing.Size(476, 196) Me.DEFS_GROUP.TabIndex = 0 ' 'GroupEditorForm ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font - Me.ClientSize = New System.Drawing.Size(476, 166) + Me.ClientSize = New System.Drawing.Size(476, 221) Me.Controls.Add(CONTAINER_MAIN) Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle Me.Icon = Global.SCrawler.My.Resources.Resources.GroupByIcon_16 Me.KeyPreview = True Me.MaximizeBox = False - Me.MaximumSize = New System.Drawing.Size(492, 205) + Me.MaximumSize = New System.Drawing.Size(492, 260) Me.MinimizeBox = False - Me.MinimumSize = New System.Drawing.Size(492, 205) + Me.MinimumSize = New System.Drawing.Size(492, 260) Me.Name = "GroupEditorForm" Me.ShowInTaskbar = False Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide diff --git a/SCrawler/Download/Groups/GroupParameters.vb b/SCrawler/Download/Groups/GroupParameters.vb index 1d77172..6451ee9 100644 --- a/SCrawler/Download/Groups/GroupParameters.vb +++ b/SCrawler/Download/Groups/GroupParameters.vb @@ -18,6 +18,9 @@ Namespace DownloadObjects.Groups Property Favorite As CheckState Property ReadyForDownload As Boolean Property ReadyForDownloadIgnore As Boolean + Property Subscriptions As Boolean + Property SubscriptionsOnly As Boolean + Property UsersCount As Integer End Interface Friend Class GroupParameters : Implements IGroup, IDisposable Protected Const Name_Name As String = "Name" @@ -25,6 +28,9 @@ Namespace DownloadObjects.Groups Protected Const Name_Favorite As String = "Favorite" Protected Const Name_ReadyForDownload As String = "RFD" Protected Const Name_ReadyForDownloadIgnore As String = "RFDI" + Protected Const Name_Subscriptions As String = "Subscriptions" + Protected Const Name_SubscriptionsOnly As String = "SubscriptionsOnly" + Protected Const Name_UsersCount As String = "UsersCount" Protected Const Name_Labels As String = "Labels" Protected Const Name_Labels_Excluded As String = "LabelsExcluded" Protected Const Name_Sites As String = "Sites" @@ -38,6 +44,9 @@ Namespace DownloadObjects.Groups Friend Property Favorite As CheckState = CheckState.Indeterminate Implements IGroup.Favorite Friend Property ReadyForDownload As Boolean = True Implements IGroup.ReadyForDownload Friend Property ReadyForDownloadIgnore As Boolean = False Implements IGroup.ReadyForDownloadIgnore + Friend Property Subscriptions As Boolean = False Implements IGroup.Subscriptions + Friend Property SubscriptionsOnly As Boolean = False Implements IGroup.SubscriptionsOnly + Friend Property UsersCount As Integer = 0 Implements IGroup.UsersCount Friend Sub New() Labels = New List(Of String) LabelsExcluded = New List(Of String) @@ -50,6 +59,9 @@ Namespace DownloadObjects.Groups Favorite = e.Value(Name_Favorite).FromXML(Of Integer)(CInt(CheckState.Indeterminate)) ReadyForDownload = e.Value(Name_ReadyForDownload).FromXML(Of Boolean)(True) ReadyForDownloadIgnore = e.Value(Name_ReadyForDownloadIgnore).FromXML(Of Boolean)(False) + Subscriptions = e.Value(Name_Subscriptions).FromXML(Of Boolean)(False) + SubscriptionsOnly = e.Value(Name_SubscriptionsOnly).FromXML(Of Boolean)(False) + UsersCount = e.Value(Name_UsersCount).FromXML(Of Integer)(0) Dim l As New ListAddParams(LAP.NotContainsOnly) If Not e.Value(Name_Labels).IsEmptyString Then Labels.ListAddList(e.Value(Name_Labels).Split("|"), l) @@ -63,6 +75,9 @@ Namespace DownloadObjects.Groups New EContainer(Name_Favorite, CInt(Favorite)), New EContainer(Name_ReadyForDownload, ReadyForDownload.BoolToInteger), New EContainer(Name_ReadyForDownloadIgnore, ReadyForDownloadIgnore.BoolToInteger), + New EContainer(Name_Subscriptions, Subscriptions.BoolToInteger), + New EContainer(Name_SubscriptionsOnly, SubscriptionsOnly.BoolToInteger), + New EContainer(Name_UsersCount, UsersCount), New EContainer(Name_Labels, Labels.ListToString("|")), New EContainer(Name_Labels_Excluded, LabelsExcluded.ListToString("|")), New EContainer(Name_Sites, Sites.ListToString("|")), diff --git a/SCrawler/Download/MissingPostsForm.vb b/SCrawler/Download/MissingPostsForm.vb index a09e926..be0d017 100644 --- a/SCrawler/Download/MissingPostsForm.vb +++ b/SCrawler/Download/MissingPostsForm.vb @@ -11,11 +11,13 @@ Imports SCrawler.API.Base Imports PersonalUtilities.Forms Imports PersonalUtilities.Forms.Toolbars Imports PersonalUtilities.Functions.Messaging +Imports ECI = PersonalUtilities.Forms.Toolbars.EditToolbar.ControlItem Namespace DownloadObjects Friend Class MissingPostsForm #Region "Declarations" Private WithEvents MyDefs As DefaultFormOptions Private ReadOnly MUsers As List(Of IUserData) + Private WithEvents BTT_DELETE_ALL As ToolStripButton Private WithEvents BTT_DOWN_ALL As ToolStripButton Private WithEvents BTT_INFO As ToolStripButton #End Region @@ -24,6 +26,13 @@ Namespace DownloadObjects InitializeComponent() MUsers = New List(Of IUserData) MyDefs = New DefaultFormOptions(Me, Settings.Design) + BTT_DELETE_ALL = New ToolStripButton With { + .Text = "Delete ALL", + .ToolTipText = String.Empty, + .AutoToolTip = False, + .Image = PersonalUtilities.My.Resources.DeletePic_Red_24, + .DisplayStyle = ToolStripItemDisplayStyle.ImageAndText + } BTT_DOWN_ALL = New ToolStripButton With { .Text = "Download ALL", .ToolTipText = String.Empty, @@ -44,7 +53,7 @@ Namespace DownloadObjects Private Sub MissingPostsForm_Load(sender As Object, e As EventArgs) Handles Me.Load With MyDefs .MyViewInitialize() - .AddEditToolbarPlus({EditToolbar.ControlItem.Separator, BTT_DOWN_ALL, BTT_INFO}) + .AddEditToolbar({ECI.Update, ECI.Separator, ECI.Delete, BTT_DELETE_ALL, ECI.Separator, BTT_DOWN_ALL, BTT_INFO}) .EndLoaderOperations(False) End With RefillList() @@ -258,11 +267,17 @@ Namespace DownloadObjects ErrorsDescriber.Execute(EDP.SendToLog, ex, $"[DownloadObjects.MissingPostsForm.FindUser]") End Try End Sub - Private Sub DeletePost() Handles MyDefs.ButtonDeleteClickE, BTT_DELETE.Click + Private Sub DeletePost(ByVal Sender As Object, ByVal e As EventArgs) Handles MyDefs.ButtonDeleteClickE, BTT_DELETE.Click, BTT_DELETE_ALL.Click Const MsgTitle$ = "Remove missing posts" Dim UsersToUpdate As New List(Of UserDataBase) Try - Dim data As List(Of ListViewItem) = LIST_DATA.SelectedItems.ToObjectsList.ListCast(Of ListViewItem) + Dim data As List(Of ListViewItem) + Dim isAll As Boolean = Sender Is BTT_DELETE_ALL + If isAll Then + data = LIST_DATA.Items.ToObjectsList.ListCast(Of ListViewItem) + Else + data = LIST_DATA.SelectedItems.ToObjectsList.ListCast(Of ListViewItem) + End If If data.ListExists Then Dim lp As New ListAddParams(LAP.NotContainsOnly) Dim usersCount% = ListAddList(Nothing, data.Select(Function(d) d.Group.Header), LAP.NotContainsOnly).ListIfNothing.Count @@ -288,7 +303,7 @@ Namespace DownloadObjects MsgBoxE({"Operation canceled", MsgTitle}) End If Else - MsgBoxE({"No selected posts", MsgTitle}) + MsgBoxE({IIf(isAll, "No posts found to delete", "No selected posts"), MsgTitle}) End If Catch ex As Exception ErrorsDescriber.Execute(EDP.SendToLog, ex, "[DownloadObjects.MissingPostsForm.DeletePost]") diff --git a/SCrawler/Download/STDownloader/DownloaderUrlForm.Designer.vb b/SCrawler/Download/STDownloader/DownloaderUrlForm.Designer.vb index a61a221..8047e66 100644 --- a/SCrawler/Download/STDownloader/DownloaderUrlForm.Designer.vb +++ b/SCrawler/Download/STDownloader/DownloaderUrlForm.Designer.vb @@ -28,8 +28,12 @@ Namespace DownloadObjects.STDownloader Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(DownloaderUrlForm)) Dim ActionButton2 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Dim ActionButton3 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton4 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton5 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ListColumn1 As PersonalUtilities.Forms.Controls.Base.ListColumn = New PersonalUtilities.Forms.Controls.Base.ListColumn() + Dim ListColumn2 As PersonalUtilities.Forms.Controls.Base.ListColumn = New PersonalUtilities.Forms.Controls.Base.ListColumn() Me.TXT_URL = New PersonalUtilities.Forms.Controls.TextBoxExtended() - Me.TXT_PATH = New PersonalUtilities.Forms.Controls.TextBoxExtended() + Me.TXT_PATH = New PersonalUtilities.Forms.Controls.ComboBoxExtended() CONTAINER_MAIN = New System.Windows.Forms.ToolStripContainer() TP_MAIN = New System.Windows.Forms.TableLayoutPanel() CONTAINER_MAIN.ContentPanel.SuspendLayout() @@ -92,20 +96,44 @@ Namespace DownloadObjects.STDownloader ActionButton2.BackgroundImage = CType(resources.GetObject("ActionButton2.BackgroundImage"), System.Drawing.Image) ActionButton2.Name = "Open" ActionButton2.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Open + ActionButton2.ToolTipText = "Choose a new location (Ctrl+O)" ActionButton3.BackgroundImage = CType(resources.GetObject("ActionButton3.BackgroundImage"), System.Drawing.Image) - ActionButton3.Name = "Clear" - ActionButton3.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear + ActionButton3.Name = "Add" + ActionButton3.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Add + ActionButton3.ToolTipText = "Choose a new location and add it to the list (Alt+O)" + ActionButton4.BackgroundImage = CType(resources.GetObject("ActionButton4.BackgroundImage"), System.Drawing.Image) + ActionButton4.Name = "Clear" + ActionButton4.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear + ActionButton5.BackgroundImage = CType(resources.GetObject("ActionButton5.BackgroundImage"), System.Drawing.Image) + ActionButton5.Name = "ArrowDown" + ActionButton5.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.ArrowDown Me.TXT_PATH.Buttons.Add(ActionButton2) Me.TXT_PATH.Buttons.Add(ActionButton3) + Me.TXT_PATH.Buttons.Add(ActionButton4) + Me.TXT_PATH.Buttons.Add(ActionButton5) + Me.TXT_PATH.CaptionMode = PersonalUtilities.Forms.Controls.Base.ICaptionControl.Modes.Label Me.TXT_PATH.CaptionText = "Output" Me.TXT_PATH.CaptionToolTipEnabled = True Me.TXT_PATH.CaptionToolTipText = "Output path" + Me.TXT_PATH.CaptionVisible = True Me.TXT_PATH.CaptionWidth = 40.0R + ListColumn1.Name = "COL_NAME" + ListColumn1.Text = "Name" + ListColumn1.Width = -1 + ListColumn2.DisplayMember = True + ListColumn2.Name = "COL_VALUE" + ListColumn2.Text = "Value" + ListColumn2.ValueMember = True + ListColumn2.Visible = False + Me.TXT_PATH.Columns.Add(ListColumn1) + Me.TXT_PATH.Columns.Add(ListColumn2) Me.TXT_PATH.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_PATH.ListAutoCompleteMode = PersonalUtilities.Forms.Controls.ComboBoxExtended.AutoCompleteModes.Disabled Me.TXT_PATH.Location = New System.Drawing.Point(4, 33) Me.TXT_PATH.Name = "TXT_PATH" Me.TXT_PATH.Size = New System.Drawing.Size(476, 22) Me.TXT_PATH.TabIndex = 1 + Me.TXT_PATH.TextBoxBorderStyle = System.Windows.Forms.BorderStyle.FixedSingle ' 'DownloaderUrlForm ' @@ -134,6 +162,6 @@ Namespace DownloadObjects.STDownloader End Sub Private WithEvents TXT_URL As PersonalUtilities.Forms.Controls.TextBoxExtended - Private WithEvents TXT_PATH As PersonalUtilities.Forms.Controls.TextBoxExtended + Private WithEvents TXT_PATH As PersonalUtilities.Forms.Controls.ComboBoxExtended End Class End Namespace \ No newline at end of file diff --git a/SCrawler/Download/STDownloader/DownloaderUrlForm.resx b/SCrawler/Download/STDownloader/DownloaderUrlForm.resx index f385b3a..299ec6d 100644 --- a/SCrawler/Download/STDownloader/DownloaderUrlForm.resx +++ b/SCrawler/Download/STDownloader/DownloaderUrlForm.resx @@ -144,11 +144,123 @@ + + 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 + AAAASUVORK5CYII= \ No newline at end of file diff --git a/SCrawler/Download/STDownloader/DownloaderUrlForm.vb b/SCrawler/Download/STDownloader/DownloaderUrlForm.vb index 2a405cc..dcd4b49 100644 --- a/SCrawler/Download/STDownloader/DownloaderUrlForm.vb +++ b/SCrawler/Download/STDownloader/DownloaderUrlForm.vb @@ -8,6 +8,7 @@ ' but WITHOUT ANY WARRANTY Imports PersonalUtilities.Forms Imports PersonalUtilities.Forms.Controls.Base +Imports ADB = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons Namespace DownloadObjects.STDownloader Friend Class DownloaderUrlForm Private WithEvents MyDefs As DefaultFormOptions @@ -22,6 +23,7 @@ Namespace DownloadObjects.STDownloader .MyViewInitialize(True) .AddOkCancelToolbar() TXT_URL.Text = URL + Settings.DownloadLocations.PopulateComboBox(TXT_PATH) TXT_PATH.Text = Settings.LatestSavingPath.Value If TXT_PATH.Text.IsEmptyString Then TXT_PATH.Text = Application.StartupPath.CSFileP.PathWithSeparator .MyFieldsChecker = New FieldsChecker @@ -31,8 +33,20 @@ Namespace DownloadObjects.STDownloader .EndLoaderOperations() End With .EndLoaderOperations() + .MyOkCancel.EnableOK = True End With End Sub + Private Sub DownloaderUrlForm_KeyDown(sender As Object, e As KeyEventArgs) Handles Me.KeyDown + Dim b As Boolean = True + If e.KeyCode = Keys.O And e.Control Then + Settings.DownloadLocations.ChooseNewLocation(TXT_PATH, False, Settings.STDownloader_OutputPathAskForName) + ElseIf e.KeyCode = Keys.O And e.Alt Then + Settings.DownloadLocations.ChooseNewLocation(TXT_PATH, True, Settings.STDownloader_OutputPathAskForName) + Else + b = False + End If + If b Then e.Handled = True + End Sub Private Sub MyDefs_ButtonOkClick(ByVal Sender As Object, ByVal e As KeyHandleEventArgs) Handles MyDefs.ButtonOkClick If MyDefs.MyFieldsChecker.AllParamsOK Then URL = TXT_URL.Text @@ -41,10 +55,8 @@ Namespace DownloadObjects.STDownloader End If End Sub Private Sub TXT_PATH_ActionOnButtonClick(ByVal Sender As ActionButton, ByVal e As ActionButtonEventArgs) Handles TXT_PATH.ActionOnButtonClick - If Sender.DefaultButton = ActionButton.DefaultButtons.Open Then - Dim f As SFile = SFile.SelectPath(TXT_PATH.Text.CSFileP, "Select output directory", EDP.ReturnValue) - If Not f.IsEmptyString Then TXT_PATH.Text = f.PathWithSeparator - End If + If Sender.DefaultButton = ADB.Open Or Sender.DefaultButton = ADB.Add Then _ + Settings.DownloadLocations.ChooseNewLocation(TXT_PATH, Sender.DefaultButton = ADB.Add, Settings.STDownloader_OutputPathAskForName) End Sub End Class End Namespace \ No newline at end of file diff --git a/SCrawler/Download/STDownloader/DownloaderUrlsArrForm.Designer.vb b/SCrawler/Download/STDownloader/DownloaderUrlsArrForm.Designer.vb index ffc7698..babbd6f 100644 --- a/SCrawler/Download/STDownloader/DownloaderUrlsArrForm.Designer.vb +++ b/SCrawler/Download/STDownloader/DownloaderUrlsArrForm.Designer.vb @@ -27,8 +27,12 @@ Namespace DownloadObjects.STDownloader Dim ActionButton1 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(DownloaderUrlsArrForm)) Dim ActionButton2 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton3 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton4 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ListColumn1 As PersonalUtilities.Forms.Controls.Base.ListColumn = New PersonalUtilities.Forms.Controls.Base.ListColumn() + Dim ListColumn2 As PersonalUtilities.Forms.Controls.Base.ListColumn = New PersonalUtilities.Forms.Controls.Base.ListColumn() Dim FRM_URLS As System.Windows.Forms.GroupBox - Me.TXT_OUTPUT = New PersonalUtilities.Forms.Controls.TextBoxExtended() + Me.TXT_OUTPUT = New PersonalUtilities.Forms.Controls.ComboBoxExtended() Me.TXT_URLS = New System.Windows.Forms.RichTextBox() CONTAINER_MAIN = New System.Windows.Forms.ToolStripContainer() TP_MAIN = New System.Windows.Forms.TableLayoutPanel() @@ -77,18 +81,40 @@ Namespace DownloadObjects.STDownloader ActionButton1.BackgroundImage = CType(resources.GetObject("ActionButton1.BackgroundImage"), System.Drawing.Image) ActionButton1.Name = "Open" ActionButton1.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Open + ActionButton1.ToolTipText = "Choose a new location (Ctrl+O)" ActionButton2.BackgroundImage = CType(resources.GetObject("ActionButton2.BackgroundImage"), System.Drawing.Image) - ActionButton2.Name = "Clear" - ActionButton2.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear + ActionButton2.Name = "Add" + ActionButton2.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Add + ActionButton2.ToolTipText = "Choose a new location and add it to the list (Alt+O)" + ActionButton3.BackgroundImage = CType(resources.GetObject("ActionButton3.BackgroundImage"), System.Drawing.Image) + ActionButton3.Name = "Clear" + ActionButton3.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear + ActionButton4.BackgroundImage = CType(resources.GetObject("ActionButton4.BackgroundImage"), System.Drawing.Image) + ActionButton4.Name = "ArrowDown" + ActionButton4.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.ArrowDown Me.TXT_OUTPUT.Buttons.Add(ActionButton1) Me.TXT_OUTPUT.Buttons.Add(ActionButton2) + Me.TXT_OUTPUT.Buttons.Add(ActionButton3) + Me.TXT_OUTPUT.Buttons.Add(ActionButton4) Me.TXT_OUTPUT.CaptionText = "Output path" Me.TXT_OUTPUT.CaptionWidth = 70.0R + ListColumn1.Name = "COL_NAME" + ListColumn1.Text = "Name" + ListColumn1.Width = -1 + ListColumn2.DisplayMember = True + ListColumn2.Name = "COL_VALUE" + ListColumn2.Text = "Value" + ListColumn2.ValueMember = True + ListColumn2.Visible = False + Me.TXT_OUTPUT.Columns.Add(ListColumn1) + Me.TXT_OUTPUT.Columns.Add(ListColumn2) Me.TXT_OUTPUT.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_OUTPUT.ListAutoCompleteMode = PersonalUtilities.Forms.Controls.ComboBoxExtended.AutoCompleteModes.Disabled Me.TXT_OUTPUT.Location = New System.Drawing.Point(3, 3) Me.TXT_OUTPUT.Name = "TXT_OUTPUT" Me.TXT_OUTPUT.Size = New System.Drawing.Size(378, 22) Me.TXT_OUTPUT.TabIndex = 0 + Me.TXT_OUTPUT.TextBoxBorderStyle = System.Windows.Forms.BorderStyle.FixedSingle ' 'FRM_URLS ' @@ -117,9 +143,10 @@ Namespace DownloadObjects.STDownloader Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font Me.ClientSize = New System.Drawing.Size(384, 261) Me.Controls.Add(CONTAINER_MAIN) + Me.Icon = Global.SCrawler.My.Resources.Resources.ArrowDownIcon_Blue_24 + Me.KeyPreview = True Me.MinimumSize = New System.Drawing.Size(400, 300) Me.Name = "DownloaderUrlsArrForm" - Me.Icon = Global.SCrawler.My.Resources.ArrowDownIcon_Blue_24 Me.ShowInTaskbar = False Me.Text = "Urls array" CONTAINER_MAIN.ContentPanel.ResumeLayout(False) @@ -129,8 +156,9 @@ Namespace DownloadObjects.STDownloader CType(Me.TXT_OUTPUT, System.ComponentModel.ISupportInitialize).EndInit() FRM_URLS.ResumeLayout(False) Me.ResumeLayout(False) + End Sub - Private WithEvents TXT_OUTPUT As PersonalUtilities.Forms.Controls.TextBoxExtended + Private WithEvents TXT_OUTPUT As PersonalUtilities.Forms.Controls.ComboBoxExtended Private WithEvents TXT_URLS As RichTextBox End Class End Namespace \ No newline at end of file diff --git a/SCrawler/Download/STDownloader/DownloaderUrlsArrForm.resx b/SCrawler/Download/STDownloader/DownloaderUrlsArrForm.resx index fbe3f6b..04fd3f1 100644 --- a/SCrawler/Download/STDownloader/DownloaderUrlsArrForm.resx +++ b/SCrawler/Download/STDownloader/DownloaderUrlsArrForm.resx @@ -136,11 +136,123 @@ + + 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 + AAAASUVORK5CYII= diff --git a/SCrawler/Download/STDownloader/DownloaderUrlsArrForm.vb b/SCrawler/Download/STDownloader/DownloaderUrlsArrForm.vb index 500b26a..b3e5597 100644 --- a/SCrawler/Download/STDownloader/DownloaderUrlsArrForm.vb +++ b/SCrawler/Download/STDownloader/DownloaderUrlsArrForm.vb @@ -8,6 +8,7 @@ ' but WITHOUT ANY WARRANTY Imports PersonalUtilities.Forms Imports PersonalUtilities.Forms.Controls.Base +Imports ADB = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons Namespace DownloadObjects.STDownloader Friend Class DownloaderUrlsArrForm Private WithEvents MyDefs As DefaultFormOptions @@ -25,14 +26,16 @@ Namespace DownloadObjects.STDownloader End If End Get End Property - Friend Sub New() + Friend Sub New(ByVal InitialList As IEnumerable(Of String)) InitializeComponent() MyDefs = New DefaultFormOptions(Me, Settings.Design) + If InitialList.ListExists Then TXT_URLS.Text = InitialList.ListToString(vbNewLine) End Sub Private Sub MyForm_Load(sender As Object, e As EventArgs) Handles Me.Load With MyDefs .MyViewInitialize() .AddOkCancelToolbar() + Settings.DownloadLocations.PopulateComboBox(TXT_OUTPUT) TXT_OUTPUT.Text = Settings.LatestSavingPath.Value.PathWithSeparator If TXT_OUTPUT.Text.IsEmptyString Then TXT_OUTPUT.Text = Application.StartupPath.CSFileP.PathWithSeparator .MyFieldsChecker = New FieldsChecker @@ -41,17 +44,26 @@ Namespace DownloadObjects.STDownloader .EndLoaderOperations() End With .EndLoaderOperations() + .MyOkCancel.EnableOK = True End With End Sub + Private Sub DownloaderUrlsArrForm_KeyDown(sender As Object, e As KeyEventArgs) Handles Me.KeyDown + Dim b As Boolean = True + If e.KeyCode = Keys.O And e.Control Then + Settings.DownloadLocations.ChooseNewLocation(TXT_OUTPUT, False, Settings.STDownloader_OutputPathAskForName) + ElseIf e.KeyCode = Keys.O And e.Alt Then + Settings.DownloadLocations.ChooseNewLocation(TXT_OUTPUT, True, Settings.STDownloader_OutputPathAskForName) + Else + b = False + End If + If b Then e.Handled = True + End Sub Private Sub MyDefs_ButtonOkClick(ByVal Sender As Object, ByVal e As KeyHandleEventArgs) Handles MyDefs.ButtonOkClick If MyDefs.MyFieldsChecker.AllParamsOK Then MyDefs.CloseForm() End Sub Private Sub TXT_OUTPUT_ActionOnButtonClick(ByVal Sender As Object, ByVal e As ActionButtonEventArgs) Handles TXT_OUTPUT.ActionOnButtonClick - If e.DefaultButton = ActionButton.DefaultButtons.Open Then - Dim f As SFile = TXT_OUTPUT.Text.CSFileP - f = SFile.SelectPath(f, "Select a folder for files", EDP.ReturnValue) - If Not f.IsEmptyString Then TXT_OUTPUT.Text = f.PathWithSeparator - End If + If Sender.DefaultButton = ADB.Open Or Sender.DefaultButton = ADB.Add Then _ + Settings.DownloadLocations.ChooseNewLocation(TXT_OUTPUT, Sender.DefaultButton = ADB.Add, Settings.STDownloader_OutputPathAskForName) End Sub End Class End Namespace \ No newline at end of file diff --git a/SCrawler/Download/STDownloader/VideoDownloaderForm.vb b/SCrawler/Download/STDownloader/VideoDownloaderForm.vb index 813c339..8045573 100644 --- a/SCrawler/Download/STDownloader/VideoDownloaderForm.vb +++ b/SCrawler/Download/STDownloader/VideoDownloaderForm.vb @@ -13,20 +13,33 @@ Imports PersonalUtilities.Forms.Controls.KeyClick Namespace DownloadObjects.STDownloader Friend Class VideoDownloaderForm Private WithEvents BTT_ADD_URLS_ARR As ToolStripMenuItemKeyClick + Private WithEvents BTT_ADD_URLS_EXTERNAL As ToolStripMenuItemKeyClick Private Const UrlsArrTag As String = "URLS_ARR" + Private Const TAG_EXTERNAL As String = "EXTERNAL" Private ReadOnly ControlNonYT As New FPredicate(Of MediaItem)(Function(i) Not i.MyContainer.SiteKey = API.YouTube.YouTubeSiteKey) Private ReadOnly ControlsDownloadedNonYT As New FPredicate(Of MediaItem)(Function(i) i.MyContainer.MediaState = Plugin.UserMediaStates.Downloaded And ControlNonYT.Invoke(i)) + Private ReadOnly Property ExternalUrlsTemp As List(Of String) Public Sub New() InitializeComponent() + ExternalUrlsTemp = New List(Of String) AppMode = False Icon = My.Resources.ArrowDownIcon_Blue_24 BTT_ADD_PLS_ARR.Text = $"YouTube: {BTT_ADD_PLS_ARR.Text}" BTT_ADD_NO_SHORTS.Text = $"YouTube: {BTT_ADD_NO_SHORTS.Text}" BTT_ADD_SHORTS_ONLY.Text = $"YouTube: {BTT_ADD_SHORTS_ONLY.Text}" BTT_ADD_URLS_ARR = New ToolStripMenuItemKeyClick("Add an array of URLs", PersonalUtilities.My.Resources.PlusPic_Green_24) With {.Tag = UrlsArrTag} + BTT_ADD_URLS_EXTERNAL = New ToolStripMenuItemKeyClick With {.Tag = TAG_EXTERNAL} MENU_ADD.DropDownItems.Insert(1, BTT_ADD_URLS_ARR) Text = "Video downloader" End Sub + Protected Overrides Sub VideoListForm_Disposed(sender As Object, e As EventArgs) + ExternalUrlsTemp.Clear() + MyBase.VideoListForm_Disposed(sender, e) + End Sub + Friend Sub ADD_URLS_EXTERNAL(ByVal UrlsList As IEnumerable(Of String)) + ExternalUrlsTemp.ListAddList(UrlsList, LAP.ClearBeforeAdd, LAP.NotContainsOnly) + If ExternalUrlsTemp.Count > 0 Then BTT_ADD_URLS_EXTERNAL.PerformClick() + End Sub Protected Overrides Function LoadData_GetFiles() As List(Of IYouTubeMediaContainer) Try Dim l As List(Of IYouTubeMediaContainer) = Nothing @@ -43,17 +56,19 @@ Namespace DownloadObjects.STDownloader Return ErrorsDescriber.Execute(EDP.SendToLog, ex, "VideoListForm.LoadData_GetFiles", New List(Of IYouTubeMediaContainer)) End Try End Function - Protected Overrides Sub BTT_ADD_KeyClick(ByVal Sender As ToolStripMenuItemKeyClick, ByVal e As KeyClickEventArgs) Handles BTT_ADD_URLS_ARR.KeyClick + Protected Overrides Sub BTT_ADD_KeyClick(ByVal Sender As ToolStripMenuItemKeyClick, ByVal e As KeyClickEventArgs) Handles BTT_ADD_URLS_ARR.KeyClick, + BTT_ADD_URLS_EXTERNAL.KeyClick Dim __tag$ = UniversalFunctions.IfNullOrEmpty(Of Object)(Sender.Tag, String.Empty) - If Not __tag = "a" And Not __tag = UrlsArrTag Then + If Not __tag = "a" And Not __tag = UrlsArrTag And Not __tag = TAG_EXTERNAL Then MyBase.BTT_ADD_KeyClick(Sender, e) Else Dim url$ = String.Empty Try - url = BufferText + Dim isExternal As Boolean = __tag = TAG_EXTERNAL + If Not isExternal Then url = BufferText Dim disableDown As Boolean = e.Shift Dim output As SFile = Settings.LatestSavingPath - Dim isArr As Boolean = __tag = UrlsArrTag + Dim isArr As Boolean = (__tag = UrlsArrTag Or (isExternal And ExternalUrlsTemp.Count > 1)) Dim formOpened As Boolean = False Dim media As IYouTubeMediaContainer Dim formValues As Func(Of DialogResult) = Function() As DialogResult @@ -67,6 +82,8 @@ Namespace DownloadObjects.STDownloader Settings.LatestSavingPath.Value = output If Settings.STDownloader_UpdateYouTubeOutputPath Then _ API.YouTube.MyYouTubeSettings.OutputPath.Value = output + If Settings.STDownloader_OutputPathAutoAddPaths Then _ + Settings.DownloadLocations.Add(output, False) Return DialogResult.OK Else Return DialogResult.Cancel @@ -103,22 +120,26 @@ Namespace DownloadObjects.STDownloader If output.IsEmptyString Then output = API.YouTube.MyYouTubeSettings.OutputPath If isArr Then - Dim urls As List(Of String) + Dim urls As List(Of String) = Nothing Dim cntAdded As Boolean = False - Using fa As New DownloaderUrlsArrForm + If isExternal Then urls = New List(Of String)(ExternalUrlsTemp) + Using fa As New DownloaderUrlsArrForm(urls) fa.ShowDialog() If fa.DialogResult = DialogResult.OK Then urls = fa.URLs.ToList output = fa.OutputPath + If Settings.STDownloader_UpdateYouTubeOutputPath Then API.YouTube.MyYouTubeSettings.OutputPath.Value = output + If Settings.STDownloader_OutputPathAutoAddPaths Then Settings.DownloadLocations.Add(output, False) Else Exit Sub End If End Using If urls.ListExists Then urls.ListForEach(Function(uu, ii) uu.StringTrim,, False) - urls.RemoveAll(Function(uu) url.IsEmptyString OrElse Not url.StartsWith("http") OrElse Not canProcessUrl(uu, False)) + urls.RemoveAll(Function(uu) uu.IsEmptyString OrElse Not uu.StartsWith("http") OrElse Not canProcessUrl(uu, False)) End If If urls.ListExists Then + output.Exists(SFO.Path, True) For Each url In urls If Not TryYouTube.Invoke Then media = FindSource(url, output) @@ -131,6 +152,7 @@ Namespace DownloadObjects.STDownloader MsgBoxE({"There are no valid URLs in the list", "Add URLs array"}, vbCritical) End If Else + If isExternal Then url = ExternalUrlsTemp.FirstOrDefault If formValues.Invoke = DialogResult.Cancel Then Exit Sub If canProcessUrl(url, True) Then If TryYouTube.Invoke Then Exit Sub @@ -153,11 +175,14 @@ Namespace DownloadObjects.STDownloader If media Is Nothing Then MsgBoxE({$"The URL you entered is not recognized by existing plugins.{vbCr}{url}", "Download video"}, vbCritical) Else + output.Exists(SFO.Path, True) ControlCreateAndAdd(media, disableDown) End If End If Catch ex As Exception ErrorsDescriber.Execute(EDP.LogMessageValue, ex, $"Error when trying to download video from URL: [{url}]") + Finally + ExternalUrlsTemp.Clear() End Try End If End Sub @@ -181,14 +206,14 @@ Namespace DownloadObjects.STDownloader If Settings.STDownloader_RemoveYTVideosOnClear Then MyBase.BTT_CLEAR_DONE_Click(sender, e) Else - RemoveControls(ControlsDownloadedNonYT) + RemoveControls(ControlsDownloadedNonYT, False) End If End Sub Protected Overrides Sub BTT_CLEAR_ALL_Click(sender As Object, e As EventArgs) If Settings.STDownloader_RemoveYTVideosOnClear Then MyBase.BTT_CLEAR_ALL_Click(sender, e) Else - RemoveControls(ControlNonYT) + RemoveControls(ControlNonYT, False) End If End Sub Protected Overrides Sub MyJob_Finished(ByVal Sender As Object, ByVal e As EventArgs) diff --git a/SCrawler/Download/TDownloader.vb b/SCrawler/Download/TDownloader.vb index 6976014..c941801 100644 --- a/SCrawler/Download/TDownloader.vb +++ b/SCrawler/Download/TDownloader.vb @@ -22,6 +22,7 @@ Namespace DownloadObjects Friend Event SendNotification As NotificationEventHandler Friend Event Reconfigured() Friend Event FeedFilesChanged(ByVal Added As Boolean) + Friend Event UserDownloadStateChanged As UserDownloadStateChangedEventHandler #End Region #Region "Declarations" #Region "Files" @@ -124,6 +125,8 @@ Namespace DownloadObjects End Try End Sub #End Region + Friend ReadOnly Property ActiveDownloading As List(Of IUserData) + Friend Property QueueFormOpening As Boolean = False Friend ReadOnly Property Downloaded As List(Of IUserData) Private ReadOnly NProv As IFormatProvider #End Region @@ -272,6 +275,7 @@ Namespace DownloadObjects #Region "Initializer" Friend Sub New() Files = New List(Of UserMediaD) + ActiveDownloading = New List(Of IUserData) Downloaded = New List(Of IUserData) NProv = New ANumbers With {.FormatOptions = ANumbers.Options.GroupIntegral} Pool = New List(Of Job) @@ -406,6 +410,9 @@ Namespace DownloadObjects Dim Keys As New List(Of String) Dim h As Boolean = False Dim host As SettingsHost = Nothing + Dim waitQueueForm As Action = Sub() + While QueueFormOpening : Thread.Sleep(100) : End While + End Sub For Each _Item As IUserData In _Job.Items If Not _Item.Disposed Then Keys.Add(_Item.Key) @@ -413,8 +420,11 @@ Namespace DownloadObjects If host.Source.ReadyToDownload(Download.Main) Then host.BeforeStartDownload(_Item, Download.Main) _Job.ThrowIfCancellationRequested() + waitQueueForm.Invoke DirectCast(_Item, UserDataBase).Progress = _Job.Progress t.Add(Task.Run(Sub() _Item.DownloadData(Token))) + ActiveDownloading.Add(_Item) + RaiseEvent UserDownloadStateChanged(_Item, True) i += 1 If i >= limit Then Exit For End If @@ -431,11 +441,14 @@ Namespace DownloadObjects Dim dcc As Boolean = False If Keys.Count > 0 Then For Each k$ In Keys + waitQueueForm.Invoke i = _Job.Items.FindIndex(Function(ii) ii.Key = k) If i >= 0 Then With _Job.Items(i) If DirectCast(.Self, UserDataBase).ContentMissingExists Then MissingPostsDetected = True - host.AfterDownload(_Job.Items(i), Download.Main) + If ActiveDownloading.Count > 0 AndAlso ActiveDownloading.Contains(.Self) Then ActiveDownloading.Remove(.Self) + RaiseEvent UserDownloadStateChanged(.Self, False) + host.AfterDownload(.Self, Download.Main) If Not .Disposed AndAlso Not .IsCollection AndAlso .DownloadedTotal(False) > 0 Then If Not Downloaded.Contains(.Self) Then Downloaded.Add(Settings.GetUser(.Self)) With DirectCast(.Self, UserDataBase) @@ -518,6 +531,7 @@ Namespace DownloadObjects [Stop]() Pool.ListClearDispose Files.Clear() + ActiveDownloading.Clear() Downloaded.Clear() End If disposedValue = True diff --git a/SCrawler/Download/UserDownloadQueueForm.Designer.vb b/SCrawler/Download/UserDownloadQueueForm.Designer.vb new file mode 100644 index 0000000..3148764 --- /dev/null +++ b/SCrawler/Download/UserDownloadQueueForm.Designer.vb @@ -0,0 +1,66 @@ +' Copyright (C) 2023 Andy https://github.com/AAndyProgram +' This program 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. +' +' This program is distributed in the hope that it will be useful, +' but WITHOUT ANY WARRANTY +Namespace DownloadObjects + + Partial Friend Class UserDownloadQueueForm : Inherits System.Windows.Forms.Form + + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + Private components As System.ComponentModel.IContainer + + Private Sub InitializeComponent() + Dim TOOLBAR_BOTTOM As System.Windows.Forms.StatusStrip + Me.LIST_QUEUE = New System.Windows.Forms.ListBox() + TOOLBAR_BOTTOM = New System.Windows.Forms.StatusStrip() + Me.SuspendLayout() + ' + 'TOOLBAR_BOTTOM + ' + TOOLBAR_BOTTOM.Location = New System.Drawing.Point(0, 189) + TOOLBAR_BOTTOM.Name = "TOOLBAR_BOTTOM" + TOOLBAR_BOTTOM.Size = New System.Drawing.Size(284, 22) + TOOLBAR_BOTTOM.TabIndex = 1 + TOOLBAR_BOTTOM.Text = "StatusStrip1" + ' + 'LIST_QUEUE + ' + Me.LIST_QUEUE.Dock = System.Windows.Forms.DockStyle.Fill + Me.LIST_QUEUE.FormattingEnabled = True + Me.LIST_QUEUE.Location = New System.Drawing.Point(0, 0) + Me.LIST_QUEUE.Name = "LIST_QUEUE" + Me.LIST_QUEUE.Size = New System.Drawing.Size(284, 189) + Me.LIST_QUEUE.TabIndex = 0 + ' + 'UserDownloadQueueForm + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(284, 211) + Me.Controls.Add(Me.LIST_QUEUE) + Me.Controls.Add(TOOLBAR_BOTTOM) + Me.Icon = Global.SCrawler.My.Resources.Resources.ArrowDownIcon_Blue_24 + Me.KeyPreview = True + Me.MinimumSize = New System.Drawing.Size(300, 250) + Me.Name = "UserDownloadQueueForm" + Me.Text = "User download queue" + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + + Private WithEvents LIST_QUEUE As ListBox + End Class +End Namespace \ No newline at end of file diff --git a/SCrawler/Download/UserDownloadQueueForm.resx b/SCrawler/Download/UserDownloadQueueForm.resx new file mode 100644 index 0000000..c9c1d89 --- /dev/null +++ b/SCrawler/Download/UserDownloadQueueForm.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + False + + + 17, 17 + + \ No newline at end of file diff --git a/SCrawler/Download/UserDownloadQueueForm.vb b/SCrawler/Download/UserDownloadQueueForm.vb new file mode 100644 index 0000000..ca4ed96 --- /dev/null +++ b/SCrawler/Download/UserDownloadQueueForm.vb @@ -0,0 +1,180 @@ +' Copyright (C) 2023 Andy https://github.com/AAndyProgram +' This program 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. +' +' This program is distributed in the hope that it will be useful, +' but WITHOUT ANY WARRANTY +Imports System.Threading +Imports System.ComponentModel +Imports SCrawler.API.Base +Imports PersonalUtilities.Forms +Namespace DownloadObjects + Friend Class UserDownloadQueueForm + Private ReadOnly MyVew As FormView + Private ReadOnly Tokens As List(Of CancellationTokenSource) + Private Structure ListUser + Friend ReadOnly User As UserDataBase + Friend IsDownloading As Boolean + Private ReadOnly _UserString As String + Private ReadOnly Property UserString As String + Get + Return $"[{IIf(IsDownloading, "-", "+")}] {_UserString}" + End Get + End Property + Friend ReadOnly Key As String + Friend Sub New(ByVal _User As IUserData) + User = _User + Key = _User.Key + IsDownloading = True + _UserString = DirectCast(User, UserDataBase).ToStringForLog() + If Not User.FriendlyName.IsEmptyString Then _UserString &= $" ({User.FriendlyName})" + End Sub + Public Shared Widening Operator CType(ByVal _User As UserDataBase) As ListUser + Return New ListUser(_User) + End Operator + Public Shared Widening Operator CType(ByVal _User As ListUser) As String + Return _User.ToString + End Operator + Public Overrides Function ToString() As String + Return UserString + End Function + Public Overrides Function Equals(ByVal Obj As Object) As Boolean + Try : Return Not IsNothing(Obj) AndAlso TypeOf Obj Is ListUser AndAlso Key.Equals(CType(Obj, ListUser).Key) : Catch : End Try + Return False + End Function + End Structure + Public Sub New() + InitializeComponent() + MyVew = New FormView(Me, Settings.Design) + Tokens = New List(Of CancellationTokenSource) + End Sub + Private Sub UserDownloadQueueForm_Load(sender As Object, e As EventArgs) Handles Me.Load + Try + MyVew.Import() + MyVew.SetFormSize() + With Downloader + .QueueFormOpening = True + If .ActiveDownloading.Count > 0 Then + For Each user As UserDataBase In .ActiveDownloading + ApplyHandlers(user, user.DownloadInProgress) + LIST_QUEUE.Items.Add(New ListUser(user)) + Next + End If + AddHandler .UserDownloadStateChanged, AddressOf Downloader_UserDownloadStateChanged + AddHandler .Downloading, AddressOf Downloader_Downloading + .QueueFormOpening = False + End With + Catch aoutex As ArgumentOutOfRangeException + Catch iex As IndexOutOfRangeException + Catch ex As Exception + ErrorsDescriber.Execute(EDP.SendToLog + EDP.ShowMainMsg, ex, "Error when opening user download queue form") + Finally + Downloader.QueueFormOpening = False + End Try + End Sub + Private Sub UserDownloadQueueForm_Closing(sender As Object, e As CancelEventArgs) Handles Me.Closing + e.Cancel = True + Hide() + End Sub + Private Sub UserDownloadQueueForm_Disposed(sender As Object, e As EventArgs) Handles Me.Disposed + MyVew.Dispose() + Tokens.ListClearDispose + End Sub + Private Sub UserDownloadQueueForm_KeyDown(sender As Object, e As KeyEventArgs) Handles Me.KeyDown + Dim b As Boolean = True + If e.KeyCode = Keys.Delete Then + CancelUserDownload() + ElseIf e.KeyCode = Keys.F And e.Control Then + FindUser() + Else + b = False + End If + If b Then e.Handled = True + End Sub + Private Sub Downloader_Downloading(ByVal Value As Boolean) + ControlInvokeFast(LIST_QUEUE, Sub() If Not Value Then LIST_QUEUE.Items.Clear() : Tokens.ListClearDispose, EDP.None) + End Sub + Private Async Sub Downloader_UserDownloadStateChanged(ByVal User As IUserData, ByVal IsDownloading As Boolean) + Await Task.Run(Sub() + Try + ControlInvokeFast(LIST_QUEUE, Sub() + Dim u As New ListUser(User) + ApplyHandlers(User, IsDownloading) + If IsDownloading Then + LIST_QUEUE.Items.Add(u) + Else + LIST_QUEUE.Items.Remove(u) + End If + LIST_QUEUE.Refresh() + End Sub) + Catch ex As Exception + End Try + End Sub) + End Sub + Private Async Sub User_UserDownloadStateChanged(ByVal User As IUserData, ByVal IsDownloading As Boolean) + Await Task.Run(Sub() + Try + ControlInvokeFast(LIST_QUEUE, + Sub() + Dim lu As New ListUser(User) + Dim i% = LIST_QUEUE.Items.IndexOf(lu) + If i >= 0 Then + lu = LIST_QUEUE.Items(i) + If Not lu.User Is Nothing And Not lu.IsDownloading = IsDownloading Then + lu.IsDownloading = IsDownloading + LIST_QUEUE.Items(i) = lu + LIST_QUEUE.Refresh() + End If + End If + End Sub) + Catch + End Try + End Sub) + End Sub + Private Sub ApplyHandlers(ByVal User As IUserData, ByVal IsDownloading As Boolean) + Try + If Not User Is Nothing Then + With DirectCast(User, UserDataBase) + If IsDownloading Then + AddHandler .UserDownloadStateChanged, AddressOf User_UserDownloadStateChanged + Else + RemoveHandler .UserDownloadStateChanged, AddressOf User_UserDownloadStateChanged + End If + End With + End If + Catch + End Try + End Sub + Private Sub CancelUserDownload() + Const msgTitle$ = "Stop user download" + Try + Dim lu As ListUser = GetUserSelectedUser() + If Not lu.User Is Nothing AndAlso + MsgBoxE({$"Are you sure you want to stop downloading the following user?{vbCr}{lu}", msgTitle}, vbExclamation + vbYesNo) = vbYes Then + Dim token As New CancellationTokenSource + lu.User.PersonalToken = token.Token + token.Cancel() + Tokens.Add(token) + MsgBoxE({"Cancel user download processed.", msgTitle}) + End If + Catch ex As Exception + End Try + End Sub + Private Sub FindUser() + Try + MainFrameObj.FocusUser(GetUserSelectedUser().Key, True) + Catch ex As Exception + End Try + End Sub + Private Function GetUserSelectedUser() As ListUser + Dim lu As ListUser = Nothing + ControlInvokeFast(LIST_QUEUE, Sub() + Dim sIndx% = LIST_QUEUE.SelectedIndex + If sIndx >= 0 Then lu = LIST_QUEUE.Items(sIndx) + End Sub) + Return lu + End Function + End Class +End Namespace \ No newline at end of file diff --git a/SCrawler/Editors/CollectionEditorForm.Designer.vb b/SCrawler/Editors/CollectionEditorForm.Designer.vb index c091daa..5035e9a 100644 --- a/SCrawler/Editors/CollectionEditorForm.Designer.vb +++ b/SCrawler/Editors/CollectionEditorForm.Designer.vb @@ -26,6 +26,7 @@ Namespace Editors Dim ActionButton1 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(CollectionEditorForm)) Dim ActionButton2 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton3 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Me.CMB_COLLECTIONS = New PersonalUtilities.Forms.Controls.ComboBoxExtended() CONTAINER_MAIN = New System.Windows.Forms.ToolStripContainer() CONTAINER_MAIN.ContentPanel.SuspendLayout() @@ -56,11 +57,17 @@ Namespace Editors ActionButton1.Name = "Add" ActionButton1.ToolTipText = "Add new collection" ActionButton2.BackgroundImage = CType(resources.GetObject("ActionButton2.BackgroundImage"), System.Drawing.Image) - ActionButton2.Name = "ArrowDown" - ActionButton2.Visible = False + ActionButton2.Name = "Open" + ActionButton2.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Open + ActionButton2.ToolTipText = "Choose a different destination for the new collection (Ctrl+O)" + ActionButton3.BackgroundImage = CType(resources.GetObject("ActionButton3.BackgroundImage"), System.Drawing.Image) + ActionButton3.Name = "ArrowDown" + ActionButton3.Visible = False Me.CMB_COLLECTIONS.Buttons.Add(ActionButton1) Me.CMB_COLLECTIONS.Buttons.Add(ActionButton2) + Me.CMB_COLLECTIONS.Buttons.Add(ActionButton3) Me.CMB_COLLECTIONS.Dock = System.Windows.Forms.DockStyle.Fill + Me.CMB_COLLECTIONS.Lines = New String(-1) {} Me.CMB_COLLECTIONS.ListDropDownStyle = PersonalUtilities.Forms.Controls.ComboBoxExtended.ListMode.Simple Me.CMB_COLLECTIONS.Location = New System.Drawing.Point(2, 0) Me.CMB_COLLECTIONS.Name = "CMB_COLLECTIONS" diff --git a/SCrawler/Editors/CollectionEditorForm.resx b/SCrawler/Editors/CollectionEditorForm.resx index c30579c..669ae0e 100644 --- a/SCrawler/Editors/CollectionEditorForm.resx +++ b/SCrawler/Editors/CollectionEditorForm.resx @@ -144,6 +144,17 @@ + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + wwAADsMBx2+oZAAAAR5JREFUOE+VkjFqwzAUhn2D9iShRyi+QhYbGujg3ZATZPKYdC6FQhPwlAMkg3dP + WQwhyWIyJIUW5NqyPb7oCVtIlhVTwYf8nv7/t2zJagel9KmqKsIACYL9RjI8UHz5zshougZr/AEvbxEP + aZCDBY3VslixaJvX3wzkkDiOwbZtDRGA5vdNAg+TL27qgmt5XkBG/gTdAG7Gt+3PP9oOaEGFCVEC6rp+ + 5g9MfM/c5e4OsEZMZkQEtGL5H2DdZ5JRArDwPA+iKII0TfkC9vroC9j5vq8JTWw3WzWgLMtZGIaa0MR8 + vlAD8PYlSaIJTTiOowY0p0Bc19XEJo6HE59FAPuMzyAINKGJ1XLFZxHALtMrnkBXOIQIIIQ8YvF/KrgB + cMaRN0UdBBkAAAAASUVORK5CYII= + + + iVBORw0KGgoAAAANSUhEUgAAAgAAAAIACAYAAAD0eNT6AAAABGdBTUEAALGPC/xhBQAAE65JREFUeF7t 3X2sJWddB/DdLi2lQG2hdOHuvfM887J7Cxca4ELTQMDWKigIFpBAEAgi9g+CJpJo9Q8NJhgBiYZIYspL diff --git a/SCrawler/Editors/CollectionEditorForm.vb b/SCrawler/Editors/CollectionEditorForm.vb index cbe0d35..450f7e4 100644 --- a/SCrawler/Editors/CollectionEditorForm.vb +++ b/SCrawler/Editors/CollectionEditorForm.vb @@ -8,15 +8,24 @@ ' but WITHOUT ANY WARRANTY Imports PersonalUtilities.Forms Imports PersonalUtilities.Forms.Controls.Base +Imports ADB = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons Namespace Editors Friend Class CollectionEditorForm Private WithEvents MyDefs As DefaultFormOptions Private ReadOnly Collections As List(Of String) - Friend Property [Collection] As String = String.Empty + Friend Property MyCollection As String = String.Empty + Private _MyCollectionSpecialPath As SFile = Nothing + Friend ReadOnly Property MyCollectionSpecialPath As SFile + Get + Return _MyCollectionSpecialPath + End Get + End Property Friend Sub New() InitializeComponent() MyDefs = New DefaultFormOptions(Me, Settings.Design) Collections = New List(Of String) + Icon = PersonalUtilities.Tools.ImageRenderer.GetIcon(My.Resources.DBPic_32, EDP.ReturnValue) + If Not Icon Is Nothing Then ShowIcon = True End Sub Private Sub CollectionEditorForm_Load(sender As Object, e As EventArgs) Handles Me.Load Try @@ -27,7 +36,7 @@ Namespace Editors Dim ecol As List(Of String) = ListAddList(Nothing, (From c In Settings.Users Where c.IsCollection Select c.CollectionName), LAP.NotContainsOnly) If ecol.ListExists Then ecol.Sort() : Collections.ListAddList(ecol, LAP.NotContainsOnly) : ecol.Clear() If Collections.Count > 0 Then CMB_COLLECTIONS.Items.AddRange(Collections.Select(Function(c) New ListItem(c))) - If Not Collection.IsEmptyString And Collections.Contains(Collection) Then CMB_COLLECTIONS.SelectedIndex = Collections.IndexOf(Collection) + If Not MyCollection.IsEmptyString And Collections.Contains(MyCollection) Then CMB_COLLECTIONS.SelectedIndex = Collections.IndexOf(MyCollection) .DelegateClosingChecker = False .EndLoaderOperations() End With @@ -39,29 +48,41 @@ Namespace Editors Collections.Clear() End Sub Private Sub CollectionEditorForm_KeyDown(sender As Object, e As KeyEventArgs) Handles Me.KeyDown - If e.KeyCode = Keys.Insert Then AddNewCollection() : e.Handled = True Else e.Handled = False + If e.KeyCode = Keys.Insert Or (e.KeyCode = Keys.O And e.Control) Then AddNewCollection(Not e.KeyCode = Keys.Insert) : e.Handled = True End Sub Private Sub MyDefs_ButtonOkClick() Handles MyDefs.ButtonOkClick If CMB_COLLECTIONS.SelectedIndex >= 0 Then - Collection = CMB_COLLECTIONS.Value.ToString + MyCollection = CMB_COLLECTIONS.Value.ToString With Settings.LastCollections - If .Contains(Collection) Then .Remove(Collection) - If .Count = 0 Then .Add(Collection) Else .Insert(0, Collection) + If .Contains(MyCollection) Then .Remove(MyCollection) + If .Count = 0 Then .Add(MyCollection) Else .Insert(0, MyCollection) End With MyDefs.CloseForm() Else MsgBoxE("Collection not selected", MsgBoxStyle.Exclamation) End If End Sub - Private Sub CMB_COLLECTIONS_ActionOnButtonClick(ByVal Sender As ActionButton, ByVal e As EventArgs) Handles CMB_COLLECTIONS.ActionOnButtonClick - If Sender.DefaultButton = ActionButton.DefaultButtons.Add Then AddNewCollection() + Private Sub CMB_COLLECTIONS_ActionOnButtonClick(ByVal Sender As ActionButton, ByVal e As ActionButtonEventArgs) Handles CMB_COLLECTIONS.ActionOnButtonClick + If e.DefaultButton = ADB.Add Or e.DefaultButton = ADB.Open Then AddNewCollection(e.DefaultButton = ADB.Open) End Sub Private Sub CMB_COLLECTIONS_ActionOnListDoubleClick(ByVal Sender As Object, ByVal e As EventArgs, ByVal Item As ListViewItem) Handles CMB_COLLECTIONS.ActionOnListDoubleClick Item.Selected = True MyDefs_ButtonOkClick() End Sub - Private Sub AddNewCollection() - Dim c$ = InputBoxE("Enter new collection name:", "Collection name") + Private Sub AddNewCollection(ByVal OpenMode As Boolean) + Dim c$ = String.Empty + If OpenMode Then + Using f As New GlobalLocationsChooserForm With {.MyIsCollectionSelector = True} + f.ShowDialog() + If f.DialogResult = DialogResult.OK Then + c = f.MyCollectionName + _MyCollectionSpecialPath = $"{f.MyDestination.Path.CSFilePS}{c}\" + End If + End Using + Else + _MyCollectionSpecialPath = Nothing + c = InputBoxE("Enter new collection name:", "Collection name") + End If If Not c.IsEmptyString Then If Not Collections.Contains(c) Then Collections.Add(c) @@ -69,7 +90,11 @@ Namespace Editors CMB_COLLECTIONS.SelectedIndex = CMB_COLLECTIONS.Count - 1 Else Dim i% = Collections.IndexOf(c) - If i >= 0 Then CMB_COLLECTIONS.SelectedIndex = i + If i >= 0 Then + CMB_COLLECTIONS.SelectedIndex = i + _MyCollectionSpecialPath = Settings.UsersList.FirstOrDefault(Function(u) u.CollectionName = c).SpecialCollectionPath + MsgBoxE({$"The '{c}' collection already exists", "Add a new collection"}, vbExclamation) + End If End If End If End Sub diff --git a/SCrawler/Editors/ColorPicker.vb b/SCrawler/Editors/ColorPicker.vb index 6d1226f..a318dc3 100644 --- a/SCrawler/Editors/ColorPicker.vb +++ b/SCrawler/Editors/ColorPicker.vb @@ -92,10 +92,18 @@ Namespace Editors ForeColorImpl = Nothing End If End Sub + Friend Sub ColorsSetUser(ByVal b As Color?, ByVal f As Color?) + BackColorImpl = b + ForeColorImpl = f + End Sub Friend Sub ColorsGet(ByRef b As XMLValue(Of Color), ByRef f As XMLValue(Of Color)) If BackColorImpl.HasValue Then b.Value = BackColorImpl.Value Else b.ValueF = Nothing If ForeColorImpl.HasValue Then f.Value = ForeColorImpl.Value Else f.ValueF = Nothing End Sub + Friend Sub ColorsGetUser(ByRef b As Color?, ByRef f As Color?) + b = BackColorImpl + f = ForeColorImpl + End Sub #End Region #Region "Buttons handlers" Private Sub COLOR_BUTTONS_Click(ByVal Sender As Button, ByVal e As EventArgs) Handles BTT_COLORS_BACK.Click, diff --git a/SCrawler/Editors/GlobalLocationsChooserForm.Designer.vb b/SCrawler/Editors/GlobalLocationsChooserForm.Designer.vb new file mode 100644 index 0000000..19f2b07 --- /dev/null +++ b/SCrawler/Editors/GlobalLocationsChooserForm.Designer.vb @@ -0,0 +1,227 @@ +' Copyright (C) 2023 Andy https://github.com/AAndyProgram +' This program 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. +' +' This program is distributed in the hope that it will be useful, +' but WITHOUT ANY WARRANTY +Namespace Editors + + Partial Friend Class GlobalLocationsChooserForm : Inherits System.Windows.Forms.Form + + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + Private components As System.ComponentModel.IContainer + + Private Sub InitializeComponent() + Dim CONTAINER_MAIN As System.Windows.Forms.ToolStripContainer + Dim ActionButton1 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(GlobalLocationsChooserForm)) + Dim ActionButton2 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton3 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim TP_LOCATIONS_USER As System.Windows.Forms.TableLayoutPanel + Dim ActionButton4 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Me.TP_MAIN = New System.Windows.Forms.TableLayoutPanel() + Me.CMB_LOCATIONS = New PersonalUtilities.Forms.Controls.ComboBoxExtended() + Me.FRM_LOCATIONS = New System.Windows.Forms.GroupBox() + Me.OPT_LOCATION_1 = New System.Windows.Forms.RadioButton() + Me.OPT_LOCATION_2 = New System.Windows.Forms.RadioButton() + Me.OPT_LOCATION_3 = New System.Windows.Forms.RadioButton() + Me.TXT_COL_NAME = New PersonalUtilities.Forms.Controls.TextBoxExtended() + CONTAINER_MAIN = New System.Windows.Forms.ToolStripContainer() + TP_LOCATIONS_USER = New System.Windows.Forms.TableLayoutPanel() + CONTAINER_MAIN.ContentPanel.SuspendLayout() + CONTAINER_MAIN.SuspendLayout() + Me.TP_MAIN.SuspendLayout() + CType(Me.CMB_LOCATIONS, System.ComponentModel.ISupportInitialize).BeginInit() + Me.FRM_LOCATIONS.SuspendLayout() + TP_LOCATIONS_USER.SuspendLayout() + CType(Me.TXT_COL_NAME, System.ComponentModel.ISupportInitialize).BeginInit() + Me.SuspendLayout() + ' + 'CONTAINER_MAIN + ' + ' + 'CONTAINER_MAIN.ContentPanel + ' + CONTAINER_MAIN.ContentPanel.Controls.Add(Me.TP_MAIN) + CONTAINER_MAIN.ContentPanel.Size = New System.Drawing.Size(584, 251) + CONTAINER_MAIN.Dock = System.Windows.Forms.DockStyle.Fill + CONTAINER_MAIN.LeftToolStripPanelVisible = False + CONTAINER_MAIN.Location = New System.Drawing.Point(0, 0) + CONTAINER_MAIN.Name = "CONTAINER_MAIN" + CONTAINER_MAIN.RightToolStripPanelVisible = False + CONTAINER_MAIN.Size = New System.Drawing.Size(584, 251) + CONTAINER_MAIN.TabIndex = 0 + CONTAINER_MAIN.TopToolStripPanelVisible = False + ' + 'TP_MAIN + ' + Me.TP_MAIN.ColumnCount = 1 + Me.TP_MAIN.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) + Me.TP_MAIN.Controls.Add(Me.CMB_LOCATIONS, 0, 0) + Me.TP_MAIN.Controls.Add(Me.FRM_LOCATIONS, 0, 2) + Me.TP_MAIN.Controls.Add(Me.TXT_COL_NAME, 0, 1) + Me.TP_MAIN.Dock = System.Windows.Forms.DockStyle.Fill + Me.TP_MAIN.Location = New System.Drawing.Point(0, 0) + Me.TP_MAIN.Name = "TP_MAIN" + Me.TP_MAIN.RowCount = 3 + Me.TP_MAIN.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) + Me.TP_MAIN.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) + Me.TP_MAIN.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) + Me.TP_MAIN.Size = New System.Drawing.Size(584, 251) + Me.TP_MAIN.TabIndex = 0 + ' + 'CMB_LOCATIONS + ' + ActionButton1.BackgroundImage = CType(resources.GetObject("ActionButton1.BackgroundImage"), System.Drawing.Image) + ActionButton1.Name = "Open" + ActionButton1.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Open + ActionButton1.ToolTipText = "Choose a new location (Ctrl+O)" + ActionButton2.BackgroundImage = CType(resources.GetObject("ActionButton2.BackgroundImage"), System.Drawing.Image) + ActionButton2.Name = "Clear" + ActionButton2.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear + ActionButton3.BackgroundImage = CType(resources.GetObject("ActionButton3.BackgroundImage"), System.Drawing.Image) + ActionButton3.Name = "ArrowDown" + ActionButton3.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.ArrowDown + Me.CMB_LOCATIONS.Buttons.Add(ActionButton1) + Me.CMB_LOCATIONS.Buttons.Add(ActionButton2) + Me.CMB_LOCATIONS.Buttons.Add(ActionButton3) + Me.CMB_LOCATIONS.CaptionChecked = True + Me.CMB_LOCATIONS.CaptionMode = PersonalUtilities.Forms.Controls.Base.ICaptionControl.Modes.CheckBox + Me.CMB_LOCATIONS.CaptionText = "Global path" + Me.CMB_LOCATIONS.CaptionToolTipEnabled = True + Me.CMB_LOCATIONS.CaptionToolTipText = "If checked, the path will be added to the global paths" + Me.CMB_LOCATIONS.CaptionVisible = True + Me.CMB_LOCATIONS.ChangeControlsEnableOnCheckedChange = False + Me.CMB_LOCATIONS.Dock = System.Windows.Forms.DockStyle.Fill + Me.CMB_LOCATIONS.Lines = New String(-1) {} + Me.CMB_LOCATIONS.Location = New System.Drawing.Point(3, 3) + Me.CMB_LOCATIONS.Name = "CMB_LOCATIONS" + Me.CMB_LOCATIONS.Size = New System.Drawing.Size(578, 22) + Me.CMB_LOCATIONS.TabIndex = 0 + Me.CMB_LOCATIONS.TextBoxBorderStyle = System.Windows.Forms.BorderStyle.FixedSingle + ' + 'FRM_LOCATIONS + ' + Me.FRM_LOCATIONS.Controls.Add(TP_LOCATIONS_USER) + Me.FRM_LOCATIONS.Dock = System.Windows.Forms.DockStyle.Fill + Me.FRM_LOCATIONS.Location = New System.Drawing.Point(3, 59) + Me.FRM_LOCATIONS.Name = "FRM_LOCATIONS" + Me.FRM_LOCATIONS.Size = New System.Drawing.Size(578, 189) + Me.FRM_LOCATIONS.TabIndex = 2 + Me.FRM_LOCATIONS.TabStop = False + Me.FRM_LOCATIONS.Text = "Locations" + ' + 'TP_LOCATIONS_USER + ' + TP_LOCATIONS_USER.ColumnCount = 1 + TP_LOCATIONS_USER.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) + TP_LOCATIONS_USER.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 20.0!)) + TP_LOCATIONS_USER.Controls.Add(Me.OPT_LOCATION_1, 0, 0) + TP_LOCATIONS_USER.Controls.Add(Me.OPT_LOCATION_2, 0, 1) + TP_LOCATIONS_USER.Controls.Add(Me.OPT_LOCATION_3, 0, 2) + TP_LOCATIONS_USER.Dock = System.Windows.Forms.DockStyle.Fill + TP_LOCATIONS_USER.Location = New System.Drawing.Point(3, 16) + TP_LOCATIONS_USER.Margin = New System.Windows.Forms.Padding(0) + TP_LOCATIONS_USER.Name = "TP_LOCATIONS_USER" + TP_LOCATIONS_USER.RowCount = 3 + TP_LOCATIONS_USER.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33333!)) + TP_LOCATIONS_USER.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33333!)) + TP_LOCATIONS_USER.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33333!)) + TP_LOCATIONS_USER.Size = New System.Drawing.Size(572, 170) + TP_LOCATIONS_USER.TabIndex = 0 + ' + 'OPT_LOCATION_1 + ' + Me.OPT_LOCATION_1.AutoSize = True + Me.OPT_LOCATION_1.Dock = System.Windows.Forms.DockStyle.Fill + Me.OPT_LOCATION_1.Location = New System.Drawing.Point(3, 3) + Me.OPT_LOCATION_1.Name = "OPT_LOCATION_1" + Me.OPT_LOCATION_1.Size = New System.Drawing.Size(566, 50) + Me.OPT_LOCATION_1.TabIndex = 0 + Me.OPT_LOCATION_1.TabStop = True + Me.OPT_LOCATION_1.Text = "Location user 1" & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10) & "Location collection 1" + Me.OPT_LOCATION_1.UseVisualStyleBackColor = True + ' + 'OPT_LOCATION_2 + ' + Me.OPT_LOCATION_2.AutoSize = True + Me.OPT_LOCATION_2.Dock = System.Windows.Forms.DockStyle.Fill + Me.OPT_LOCATION_2.Location = New System.Drawing.Point(3, 59) + Me.OPT_LOCATION_2.Name = "OPT_LOCATION_2" + Me.OPT_LOCATION_2.Size = New System.Drawing.Size(566, 50) + Me.OPT_LOCATION_2.TabIndex = 1 + Me.OPT_LOCATION_2.TabStop = True + Me.OPT_LOCATION_2.Text = "Location user 2" & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10) & "Location collection 2" + Me.OPT_LOCATION_2.UseVisualStyleBackColor = True + ' + 'OPT_LOCATION_3 + ' + Me.OPT_LOCATION_3.AutoSize = True + Me.OPT_LOCATION_3.Dock = System.Windows.Forms.DockStyle.Fill + Me.OPT_LOCATION_3.Location = New System.Drawing.Point(3, 115) + Me.OPT_LOCATION_3.Name = "OPT_LOCATION_3" + Me.OPT_LOCATION_3.Size = New System.Drawing.Size(566, 52) + Me.OPT_LOCATION_3.TabIndex = 2 + Me.OPT_LOCATION_3.TabStop = True + Me.OPT_LOCATION_3.Text = "Location user 3" & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10) & "Location collection 3" + Me.OPT_LOCATION_3.UseVisualStyleBackColor = True + ' + 'TXT_COL_NAME + ' + ActionButton4.BackgroundImage = CType(resources.GetObject("ActionButton4.BackgroundImage"), System.Drawing.Image) + ActionButton4.Name = "Clear" + ActionButton4.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear + Me.TXT_COL_NAME.Buttons.Add(ActionButton4) + Me.TXT_COL_NAME.CaptionText = "Collection name" + Me.TXT_COL_NAME.CaptionToolTipEnabled = True + Me.TXT_COL_NAME.CaptionToolTipText = "Collection folder to be created in the destination" + Me.TXT_COL_NAME.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_COL_NAME.Lines = New String(-1) {} + Me.TXT_COL_NAME.Location = New System.Drawing.Point(3, 31) + Me.TXT_COL_NAME.Name = "TXT_COL_NAME" + Me.TXT_COL_NAME.PlaceholderEnabled = True + Me.TXT_COL_NAME.PlaceholderText = "Enter collection name here..." + Me.TXT_COL_NAME.Size = New System.Drawing.Size(578, 22) + Me.TXT_COL_NAME.TabIndex = 1 + ' + 'GlobalLocationsChooserForm + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(584, 251) + Me.Controls.Add(CONTAINER_MAIN) + Me.KeyPreview = True + Me.MinimumSize = New System.Drawing.Size(600, 290) + Me.Name = "GlobalLocationsChooserForm" + Me.Text = "Choose a new location" + CONTAINER_MAIN.ContentPanel.ResumeLayout(False) + CONTAINER_MAIN.ResumeLayout(False) + CONTAINER_MAIN.PerformLayout() + Me.TP_MAIN.ResumeLayout(False) + CType(Me.CMB_LOCATIONS, System.ComponentModel.ISupportInitialize).EndInit() + Me.FRM_LOCATIONS.ResumeLayout(False) + TP_LOCATIONS_USER.ResumeLayout(False) + TP_LOCATIONS_USER.PerformLayout() + CType(Me.TXT_COL_NAME, System.ComponentModel.ISupportInitialize).EndInit() + Me.ResumeLayout(False) + + End Sub + Private WithEvents CMB_LOCATIONS As PersonalUtilities.Forms.Controls.ComboBoxExtended + Private WithEvents OPT_LOCATION_1 As RadioButton + Private WithEvents OPT_LOCATION_2 As RadioButton + Private WithEvents OPT_LOCATION_3 As RadioButton + Private WithEvents FRM_LOCATIONS As GroupBox + Private WithEvents TP_MAIN As TableLayoutPanel + Private WithEvents TXT_COL_NAME As PersonalUtilities.Forms.Controls.TextBoxExtended + End Class +End Namespace \ No newline at end of file diff --git a/SCrawler/Editors/GlobalLocationsChooserForm.resx b/SCrawler/Editors/GlobalLocationsChooserForm.resx new file mode 100644 index 0000000..6b21a20 --- /dev/null +++ b/SCrawler/Editors/GlobalLocationsChooserForm.resx @@ -0,0 +1,244 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + False + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + wwAADsMBx2+oZAAAAR5JREFUOE+VkjFqwzAUhn2D9iShRyi+QhYbGujg3ZATZPKYdC6FQhPwlAMkg3dP + WQwhyWIyJIUW5NqyPb7oCVtIlhVTwYf8nv7/t2zJagel9KmqKsIACYL9RjI8UHz5zshougZr/AEvbxEP + aZCDBY3VslixaJvX3wzkkDiOwbZtDRGA5vdNAg+TL27qgmt5XkBG/gTdAG7Gt+3PP9oOaEGFCVEC6rp+ + 5g9MfM/c5e4OsEZMZkQEtGL5H2DdZ5JRArDwPA+iKII0TfkC9vroC9j5vq8JTWw3WzWgLMtZGIaa0MR8 + vlAD8PYlSaIJTTiOowY0p0Bc19XEJo6HE59FAPuMzyAINKGJ1XLFZxHALtMrnkBXOIQIIIQ8YvF/KrgB + cMaRN0UdBBkAAAAASUVORK5CYII= + + + + + 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 + AAAASUVORK5CYII= + + + + False + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + xAAADsQBlSsOGwAAAIZJREFUOE+1j10KwCAMgz2b755xl/IsvnaL2K20UfbDAmEako+ZROSTafjE12Go + tbbB43rK5xSAQq1VYFtmeQBoqZTSreVZvgTknM8yyyjA/qodsDF9gspD2Bj6B+DH+NqzhQQAG+POMnSX + AFuc5QFgn6ClHh5iOQVAKNixyucB8NY0vG9JOzzyhrdq5IRgAAAAAElFTkSuQmCC + + + \ No newline at end of file diff --git a/SCrawler/Editors/GlobalLocationsChooserForm.vb b/SCrawler/Editors/GlobalLocationsChooserForm.vb new file mode 100644 index 0000000..9dc6d53 --- /dev/null +++ b/SCrawler/Editors/GlobalLocationsChooserForm.vb @@ -0,0 +1,217 @@ +' Copyright (C) 2023 Andy https://github.com/AAndyProgram +' This program 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. +' +' This program is distributed in the hope that it will be useful, +' but WITHOUT ANY WARRANTY +Imports SCrawler.API.Base +Imports SCrawler.DownloadObjects.STDownloader +Imports PersonalUtilities.Forms +Imports PersonalUtilities.Tools +Imports PersonalUtilities.Forms.Controls.Base +Imports ADB = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons +Namespace Editors + Friend Class GlobalLocationsChooserForm +#Region "Statics" + Friend Shared ReadOnly Property ModelHandler(ByVal Model As PathCreationModel) As PathMoverHandler + Get + Dim pattern$ + Select Case Model + Case PathCreationModel.Path : pattern = "{0}\" + Case PathCreationModel.Path_UserName : pattern = "{0}\{2}\" + Case PathCreationModel.Path_UserSite_UserName : pattern = "{0}\{1}\{2}\" + Case PathCreationModel.Collection : pattern = UserInfo.CollectionUserPathPattern + Case Else : Return Nothing + End Select + Return New PathMoverHandler(Function(u, d) String.Format(pattern, d.PathNoSeparator, u.Site, u.Name).CSFileP) + End Get + End Property + Friend Shared Function GetModelByLocation(ByVal Locations As SFile) As Integer + If Settings.GlobalLocations.Count > 0 Then + Dim i% = Settings.GlobalLocations.IndexOf(Locations, True) + If i >= 0 Then Return Settings.GlobalLocations(i).Model + End If + Return -1 + End Function +#End Region +#Region "Declarations" + Private WithEvents MyDefs As DefaultFormOptions + Friend ReadOnly Property MyModelHandler As PathMoverHandler + Get + Select Case True + Case OPT_LOCATION_1.Checked : Return ModelHandler(If(MyIsCollectionSelector, PathCreationModel.Collection, PathCreationModel.Path)) + Case OPT_LOCATION_2.Checked : Return ModelHandler(PathCreationModel.Path_UserName) + Case OPT_LOCATION_3.Checked : Return ModelHandler(PathCreationModel.Path_UserSite_UserName) + Case Else : Return Nothing + End Select + End Get + End Property + Friend ReadOnly Property MyModel As PathCreationModel + Get + Select Case True + Case OPT_LOCATION_1.Checked : Return If(MyIsCollectionSelector, PathCreationModel.Collection, PathCreationModel.Path) + Case OPT_LOCATION_2.Checked : Return PathCreationModel.Path_UserName + Case OPT_LOCATION_3.Checked : Return PathCreationModel.Path_UserSite_UserName + Case Else : Return PathCreationModel.Path_UserSite_UserName + End Select + End Get + End Property + Friend ReadOnly Property MyDestination As DownloadLocation + Get + Return New DownloadLocation With {.Path = CMB_LOCATIONS.Text.CSFileP, .Model = MyModel} + End Get + End Property + Friend Property MyIsMultipleUsers As Boolean = False + Friend Property MyInitialLocation As SFile + Private _MyNonMyltipleUser As IUserData + Private _UserSite As String = String.Empty + Private _UserName As String = String.Empty + Friend Property MyNonMyltipleUser As IUserData + Get + Return _MyNonMyltipleUser + End Get + Set(ByVal u As IUserData) + _MyNonMyltipleUser = u + If Not u Is Nothing And Not u.IsCollection Then + _UserSite = u.Site + _UserName = u.Name + End If + End Set + End Property + Friend Property MyIsCollectionSelector As Boolean = False + Friend Property MyCollectionName As String + Get + Return TXT_COL_NAME.Text + End Get + Set(ByVal NewName As String) + TXT_COL_NAME.Text = NewName + End Set + End Property +#End Region +#Region "Initializer" + Friend Sub New() + InitializeComponent() + MyDefs = New DefaultFormOptions(Me, Settings.Design) + Icon = ImageRenderer.GetIcon(My.Resources.FolderPic_32, EDP.ReturnValue) + If Icon Is Nothing Then ShowIcon = False + End Sub +#End Region +#Region "Form handlers" + Private Sub GlobalLocationsChooserForm_Load(sender As Object, e As EventArgs) Handles Me.Load + With MyDefs + .MyViewInitialize() + .AddOkCancelToolbar() + If Not MyIsCollectionSelector Then + TP_MAIN.Controls.Remove(TXT_COL_NAME) + TP_MAIN.RowStyles(1).Height = 0 + End If + Settings.GlobalLocations.PopulateComboBox(CMB_LOCATIONS) + If MyIsCollectionSelector Then + FRM_LOCATIONS.Enabled = False + OPT_LOCATION_1.Checked = True + Else + OPT_LOCATION_3.Checked = True + End If + .MyFieldsChecker = New FieldsChecker + With .MyFieldsCheckerE + .AddControl(Of String)(CMB_LOCATIONS, "Location") + If MyIsCollectionSelector Then .AddControl(Of String)(TXT_COL_NAME, TXT_COL_NAME.CaptionText) + .EndLoaderOperations() + End With + .EndLoaderOperations() + UpdateOptions(False) + End With + End Sub + Private Sub GlobalLocationsChooserForm_KeyDown(sender As Object, e As KeyEventArgs) Handles Me.KeyDown + If e.KeyCode = Keys.O And e.Control Then + CMB_LOCATIONS.Button(ADB.Open).PerformClick() + e.Handled = True + End If + End Sub +#End Region +#Region "Ok, Cancel" + Private Sub MyDefs_ButtonOkClick(ByVal Sender As Object, ByVal e As KeyHandleEventArgs) Handles MyDefs.ButtonOkClick + If MyDefs.MyFieldsChecker.AllParamsOK Then + If CMB_LOCATIONS.Checked Then _ + Settings.GlobalLocations.Add(New DownloadLocation With {.Path = CMB_LOCATIONS.Text.CSFileP, .Model = MyModel}, + Settings.STDownloader_OutputPathAskForName) + MyDefs.CloseForm() + End If + End Sub +#End Region +#Region "Controls" + Private Sub TXT_COL_NAME_ActionOnTextChanged(sender As Object, e As EventArgs) Handles TXT_COL_NAME.ActionOnTextChanged + UpdateOptions(True, False, False) + End Sub + Private Sub CMB_LOCATIONS_ActionOnButtonClick(ByVal Sender As ActionButton, ByVal e As ActionButtonEventArgs) Handles CMB_LOCATIONS.ActionOnButtonClick + If e.DefaultButton = ADB.Open Or e.DefaultButton = ADB.Add Then + Dim t$ = "Select a new destination for " + If MyIsMultipleUsers Then + t &= "multiple users" + Else + t &= $"{IIf(If(MyNonMyltipleUser?.IsCollection, False), "collection", "user")}" + If Not MyNonMyltipleUser Is Nothing Then t &= $" [{MyNonMyltipleUser}]" + End If + + Dim f As SFile = SFile.SelectPath(MyInitialLocation, t) + If Not f.IsEmptyString Then + _SuspendUpdate = True + CMB_LOCATIONS.Text = f.PathWithSeparator + _SuspendUpdate = False + UpdateOptions(True) + End If + End If + End Sub + Private Sub CMB_LOCATIONS_ActionSelectedItemBeforeChanged(ByVal Sender As Object, ByVal e As EventArgs, ByVal Item As ListViewItem) Handles CMB_LOCATIONS.ActionSelectedItemBeforeChanged + _SuspendUpdate = True + End Sub + Private Sub CMB_LOCATIONS_ActionSelectedItemChanged(ByVal Sender As Object, ByVal e As EventArgs, ByVal Item As ListViewItem) Handles CMB_LOCATIONS.ActionSelectedItemChanged + Dim i% = CMB_LOCATIONS.SelectedIndex + If i.ValueBetween(0, Settings.DownloadLocations.Count - 1) Then + Select Case Settings.DownloadLocations(i).Model + Case PathCreationModel.Path, PathCreationModel.Collection : OPT_LOCATION_1.Checked = True + Case PathCreationModel.Path_UserName : OPT_LOCATION_2.Checked = True + Case PathCreationModel.Path_UserSite_UserName : OPT_LOCATION_3.Checked = True + End Select + End If + _SuspendUpdate = False + UpdateOptions(False, False, False) + End Sub + Private Sub CMB_LOCATIONS_ActionOnCheckedChange(ByVal Sender As Object, ByVal e As EventArgs, ByVal Checked As Boolean) Handles CMB_LOCATIONS.ActionOnCheckedChange + If Not MyDefs.Initializing Then CMB_LOCATIONS.CaptionText = IIf(Checked, "Global path", "Path") + End Sub + Private Sub CMB_LOCATIONS_ActionOnTextChanged(ByVal Sender As Object, ByVal e As EventArgs) Handles CMB_LOCATIONS.ActionOnTextChanged + UpdateOptions(False) + End Sub + Private _SuspendUpdate As Boolean = False + Private Sub UpdateOptions(ByVal ResetColName As Boolean, Optional ByVal UpdateLocation As Boolean = True, Optional ByVal UpdateColName As Boolean = True) + Const uSiteDef$ = "[UserSite]" + Const uNameDef$ = "[UserName]" + If Not _SuspendUpdate Then + _SuspendUpdate = True + Dim loc As SFile = SFile.GetPath(CMB_LOCATIONS.Text) + If Not loc.IsEmptyString Then + If MyIsCollectionSelector And ResetColName Then + If UpdateColName Then TXT_COL_NAME.Text = loc.Segments.LastOrDefault + If UpdateLocation Then loc = loc.CutPath + CMB_LOCATIONS.Text = loc.PathWithSeparator + End If + Dim cName$ = TXT_COL_NAME.Text + If Not cName.IsEmptyString Then cName &= "\" + Dim p$ = loc.PathWithSeparator + Dim uSite$ = If(MyIsMultipleUsers, uSiteDef, _UserSite.IfNullOrEmpty(uSiteDef)) + Dim uName$ = If(MyIsMultipleUsers, uNameDef, _UserName.IfNullOrEmpty(uNameDef)) + OPT_LOCATION_1.Text = p & vbCr & $"{p}{cName}{uSite}_{uName}\" + OPT_LOCATION_2.Text = $"{p}{uName}\" + OPT_LOCATION_3.Text = $"{p}{uSite}\{uName}\" + Else + With {OPT_LOCATION_1, OPT_LOCATION_2, OPT_LOCATION_3}.ToList : .ForEach(Sub(opt) opt.Text = String.Empty) : End With + End If + _SuspendUpdate = False + End If + End Sub +#End Region + End Class +End Namespace \ No newline at end of file diff --git a/SCrawler/Editors/GlobalSettingsForm.Designer.vb b/SCrawler/Editors/GlobalSettingsForm.Designer.vb index 8adcac7..3b40d7c 100644 --- a/SCrawler/Editors/GlobalSettingsForm.Designer.vb +++ b/SCrawler/Editors/GlobalSettingsForm.Designer.vb @@ -36,6 +36,8 @@ Namespace Editors Dim ActionButton8 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Dim ActionButton9 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Dim ActionButton10 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton11 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton12 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Dim TP_FILE_NAME As System.Windows.Forms.TableLayoutPanel Dim TP_FILE_PATTERNS As System.Windows.Forms.TableLayoutPanel Dim LBL_DATE_POS As System.Windows.Forms.Label @@ -48,14 +50,14 @@ Namespace Editors Dim TP_CHANNELS As System.Windows.Forms.TableLayoutPanel Dim TAB_BEHAVIOR As System.Windows.Forms.TabPage Dim TP_BEHAVIOR As System.Windows.Forms.TableLayoutPanel - Dim ActionButton11 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() - Dim ActionButton12 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton13 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton14 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Dim TP_OPEN_INFO As System.Windows.Forms.TableLayoutPanel Dim TP_OPEN_PROGRESS As System.Windows.Forms.TableLayoutPanel Dim TAB_DOWN As System.Windows.Forms.TabPage Dim TP_DOWNLOADING As System.Windows.Forms.TableLayoutPanel - Dim ActionButton13 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() - Dim ActionButton14 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton15 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton16 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Dim TP_MISSING_DATA As System.Windows.Forms.TableLayoutPanel Dim TAB_FEED As System.Windows.Forms.TabPage Dim TP_FEED As System.Windows.Forms.TableLayoutPanel @@ -63,8 +65,6 @@ Namespace Editors Dim TAB_NOTIFY As System.Windows.Forms.TabPage Dim TP_NOTIFY_MAIN As System.Windows.Forms.TableLayoutPanel Dim TP_ENVIR As System.Windows.Forms.TableLayoutPanel - Dim ActionButton15 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() - Dim ActionButton16 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Dim ActionButton17 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Dim ActionButton18 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Dim ActionButton19 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() @@ -73,9 +73,11 @@ Namespace Editors Dim ActionButton22 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Dim ActionButton23 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Dim ActionButton24 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton25 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton26 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Dim TAB_STD As System.Windows.Forms.TabPage Dim TP_STD As System.Windows.Forms.TableLayoutPanel - Dim ActionButton25 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton27 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Dim ListColumn1 As PersonalUtilities.Forms.Controls.Base.ListColumn = New PersonalUtilities.Forms.Controls.Base.ListColumn() Dim ListColumn2 As PersonalUtilities.Forms.Controls.Base.ListColumn = New PersonalUtilities.Forms.Controls.Base.ListColumn() Me.TXT_GLOBAL_PATH = New PersonalUtilities.Forms.Controls.TextBoxExtended() @@ -91,6 +93,9 @@ Namespace Editors Me.TXT_USER_AGENT = New PersonalUtilities.Forms.Controls.TextBoxExtended() Me.TXT_USER_LIST_IMAGE = New PersonalUtilities.Forms.Controls.TextBoxExtended() Me.COLORS_USERLIST = New SCrawler.Editors.ColorPicker() + Me.COLORS_SUBSCRIPTIONS = New SCrawler.Editors.ColorPicker() + Me.TXT_PRG_TITLE = New PersonalUtilities.Forms.Controls.TextBoxExtended() + Me.TXT_PRG_DESCR = New PersonalUtilities.Forms.Controls.TextBoxExtended() Me.OPT_FILE_NAME_REPLACE = New System.Windows.Forms.RadioButton() Me.OPT_FILE_NAME_ADD_DATE = New System.Windows.Forms.RadioButton() Me.CH_FILE_NAME_CHANGE = New System.Windows.Forms.CheckBox() @@ -124,6 +129,12 @@ Namespace Editors Me.CH_STD_EVERY = New System.Windows.Forms.CheckBox() Me.CH_STD_YT_LOAD = New System.Windows.Forms.CheckBox() Me.CH_STD_YT_REMOVE = New System.Windows.Forms.CheckBox() + Me.CH_FEED_OPEN_LAST_MODE = New System.Windows.Forms.CheckBox() + Me.CH_STD_YT_OUTPUT_ASK_NAME = New System.Windows.Forms.CheckBox() + Me.CH_STD_YT_OUTPUT_AUTO_ADD = New System.Windows.Forms.CheckBox() + Me.BTT_RESET_DOWNLOAD_LOCATIONS = New System.Windows.Forms.Button() + Me.CH_STD_SNAP_KEEP_WITH_FILES = New System.Windows.Forms.CheckBox() + Me.CH_STD_SNAP_CACHE_PERMANENT = New System.Windows.Forms.CheckBox() Me.TXT_CHANNELS_ROWS = New PersonalUtilities.Forms.Controls.TextBoxExtended() Me.TXT_CHANNELS_COLUMNS = New PersonalUtilities.Forms.Controls.TextBoxExtended() Me.CH_DOWN_IMAGES_NATIVE = New System.Windows.Forms.CheckBox() @@ -138,6 +149,7 @@ Namespace Editors Me.TXT_SCRIPT = New PersonalUtilities.Forms.Controls.TextBoxExtended() Me.TXT_DOWN_COMPLETE_SCRIPT = New PersonalUtilities.Forms.Controls.TextBoxExtended() Me.CH_UNAME_UP = New System.Windows.Forms.CheckBox() + Me.CH_UICON_UP = New System.Windows.Forms.CheckBox() Me.TXT_FEED_ROWS = New PersonalUtilities.Forms.Controls.TextBoxExtended() Me.TXT_FEED_COLUMNS = New PersonalUtilities.Forms.Controls.TextBoxExtended() Me.CH_FEED_ENDLESS = New System.Windows.Forms.CheckBox() @@ -159,7 +171,7 @@ Namespace Editors Me.TAB_MAIN = New System.Windows.Forms.TabControl() Me.TAB_ENVIR = New System.Windows.Forms.TabPage() Me.CONTAINER_MAIN = New System.Windows.Forms.ToolStripContainer() - Me.CH_UICON_UP = New System.Windows.Forms.CheckBox() + Me.CH_FEED_SHOW_FRIENDLY = New System.Windows.Forms.CheckBox() TP_BASIS = New System.Windows.Forms.TableLayoutPanel() TP_IMAGES = New System.Windows.Forms.TableLayoutPanel() TP_FILE_NAME = New System.Windows.Forms.TableLayoutPanel() @@ -198,6 +210,8 @@ Namespace Editors CType(Me.TXT_IMGUR_CLIENT_ID, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.TXT_USER_AGENT, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.TXT_USER_LIST_IMAGE, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.TXT_PRG_TITLE, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.TXT_PRG_DESCR, System.ComponentModel.ISupportInitialize).BeginInit() TP_FILE_NAME.SuspendLayout() TP_FILE_PATTERNS.SuspendLayout() TP_CHANNELS_IMGS.SuspendLayout() @@ -255,16 +269,19 @@ Namespace Editors TP_BASIS.Controls.Add(Me.TXT_MAX_JOBS_USERS, 0, 3) TP_BASIS.Controls.Add(Me.TXT_MAX_JOBS_CHANNELS, 0, 4) TP_BASIS.Controls.Add(Me.CH_CHECK_VER_START, 0, 5) - TP_BASIS.Controls.Add(Me.TXT_IMGUR_CLIENT_ID, 0, 7) - TP_BASIS.Controls.Add(Me.CH_SHOW_GROUPS, 0, 10) - TP_BASIS.Controls.Add(Me.CH_USERS_GROUPING, 0, 11) - TP_BASIS.Controls.Add(Me.TXT_USER_AGENT, 0, 6) - TP_BASIS.Controls.Add(Me.TXT_USER_LIST_IMAGE, 0, 8) - TP_BASIS.Controls.Add(Me.COLORS_USERLIST, 0, 9) + TP_BASIS.Controls.Add(Me.TXT_IMGUR_CLIENT_ID, 0, 9) + TP_BASIS.Controls.Add(Me.CH_SHOW_GROUPS, 0, 13) + TP_BASIS.Controls.Add(Me.CH_USERS_GROUPING, 0, 14) + TP_BASIS.Controls.Add(Me.TXT_USER_AGENT, 0, 8) + TP_BASIS.Controls.Add(Me.TXT_USER_LIST_IMAGE, 0, 10) + TP_BASIS.Controls.Add(Me.COLORS_USERLIST, 0, 11) + TP_BASIS.Controls.Add(Me.COLORS_SUBSCRIPTIONS, 0, 12) + TP_BASIS.Controls.Add(Me.TXT_PRG_TITLE, 0, 6) + TP_BASIS.Controls.Add(Me.TXT_PRG_DESCR, 0, 7) TP_BASIS.Dock = System.Windows.Forms.DockStyle.Fill TP_BASIS.Location = New System.Drawing.Point(3, 3) TP_BASIS.Name = "TP_BASIS" - TP_BASIS.RowCount = 13 + TP_BASIS.RowCount = 16 TP_BASIS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) TP_BASIS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) TP_BASIS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) @@ -274,12 +291,14 @@ Namespace Editors TP_BASIS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) TP_BASIS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) TP_BASIS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) + TP_BASIS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) + TP_BASIS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) + TP_BASIS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) TP_BASIS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) TP_BASIS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) TP_BASIS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) TP_BASIS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) - TP_BASIS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20.0!)) - TP_BASIS.Size = New System.Drawing.Size(570, 362) + TP_BASIS.Size = New System.Drawing.Size(570, 445) TP_BASIS.TabIndex = 0 ' 'TXT_GLOBAL_PATH @@ -294,6 +313,7 @@ Namespace Editors Me.TXT_GLOBAL_PATH.CaptionToolTipEnabled = True Me.TXT_GLOBAL_PATH.CaptionToolTipText = "Root path for storing users' data" Me.TXT_GLOBAL_PATH.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_GLOBAL_PATH.Lines = New String(-1) {} Me.TXT_GLOBAL_PATH.Location = New System.Drawing.Point(4, 4) Me.TXT_GLOBAL_PATH.Name = "TXT_GLOBAL_PATH" Me.TXT_GLOBAL_PATH.Size = New System.Drawing.Size(562, 22) @@ -323,6 +343,7 @@ Namespace Editors Me.TXT_IMAGE_LARGE.CaptionToolTipText = "Maximum large image size by height" Me.TXT_IMAGE_LARGE.ControlMode = PersonalUtilities.Forms.Controls.TextBoxExtended.ControlModes.NumericUpDown Me.TXT_IMAGE_LARGE.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_IMAGE_LARGE.Lines = New String(-1) {} Me.TXT_IMAGE_LARGE.Location = New System.Drawing.Point(3, 3) Me.TXT_IMAGE_LARGE.Name = "TXT_IMAGE_LARGE" Me.TXT_IMAGE_LARGE.NumberMaximum = New Decimal(New Integer() {256, 0, 0, 0}) @@ -339,6 +360,7 @@ Namespace Editors Me.TXT_IMAGE_SMALL.CaptionToolTipText = "Maximum small image size by height" Me.TXT_IMAGE_SMALL.ControlMode = PersonalUtilities.Forms.Controls.TextBoxExtended.ControlModes.NumericUpDown Me.TXT_IMAGE_SMALL.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_IMAGE_SMALL.Lines = New String(-1) {} Me.TXT_IMAGE_SMALL.Location = New System.Drawing.Point(287, 3) Me.TXT_IMAGE_SMALL.Name = "TXT_IMAGE_SMALL" Me.TXT_IMAGE_SMALL.NumberMaximum = New Decimal(New Integer() {256, 0, 0, 0}) @@ -357,6 +379,7 @@ Namespace Editors Me.TXT_COLLECTIONS_PATH.CaptionToolTipEnabled = True Me.TXT_COLLECTIONS_PATH.CaptionToolTipText = "Set collections folder name (name only)" Me.TXT_COLLECTIONS_PATH.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_COLLECTIONS_PATH.Lines = New String(-1) {} Me.TXT_COLLECTIONS_PATH.Location = New System.Drawing.Point(4, 62) Me.TXT_COLLECTIONS_PATH.Name = "TXT_COLLECTIONS_PATH" Me.TXT_COLLECTIONS_PATH.Size = New System.Drawing.Size(562, 22) @@ -373,6 +396,7 @@ Namespace Editors Me.TXT_MAX_JOBS_USERS.CaptionWidth = 50.0R Me.TXT_MAX_JOBS_USERS.ControlMode = PersonalUtilities.Forms.Controls.TextBoxExtended.ControlModes.NumericUpDown Me.TXT_MAX_JOBS_USERS.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_MAX_JOBS_USERS.Lines = New String(-1) {} Me.TXT_MAX_JOBS_USERS.Location = New System.Drawing.Point(4, 91) Me.TXT_MAX_JOBS_USERS.Name = "TXT_MAX_JOBS_USERS" Me.TXT_MAX_JOBS_USERS.NumberMinimum = New Decimal(New Integer() {1, 0, 0, 0}) @@ -392,6 +416,7 @@ Namespace Editors Me.TXT_MAX_JOBS_CHANNELS.CaptionWidth = 50.0R Me.TXT_MAX_JOBS_CHANNELS.ControlMode = PersonalUtilities.Forms.Controls.TextBoxExtended.ControlModes.NumericUpDown Me.TXT_MAX_JOBS_CHANNELS.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_MAX_JOBS_CHANNELS.Lines = New String(-1) {} Me.TXT_MAX_JOBS_CHANNELS.Location = New System.Drawing.Point(4, 120) Me.TXT_MAX_JOBS_CHANNELS.Name = "TXT_MAX_JOBS_CHANNELS" Me.TXT_MAX_JOBS_CHANNELS.NumberMinimum = New Decimal(New Integer() {1, 0, 0, 0}) @@ -418,19 +443,20 @@ Namespace Editors Me.TXT_IMGUR_CLIENT_ID.Buttons.Add(ActionButton6) Me.TXT_IMGUR_CLIENT_ID.CaptionText = "Imgur Client ID" Me.TXT_IMGUR_CLIENT_ID.Dock = System.Windows.Forms.DockStyle.Fill - Me.TXT_IMGUR_CLIENT_ID.Location = New System.Drawing.Point(4, 204) + Me.TXT_IMGUR_CLIENT_ID.Lines = New String(-1) {} + Me.TXT_IMGUR_CLIENT_ID.Location = New System.Drawing.Point(4, 262) Me.TXT_IMGUR_CLIENT_ID.Name = "TXT_IMGUR_CLIENT_ID" Me.TXT_IMGUR_CLIENT_ID.Size = New System.Drawing.Size(562, 22) - Me.TXT_IMGUR_CLIENT_ID.TabIndex = 7 + Me.TXT_IMGUR_CLIENT_ID.TabIndex = 9 ' 'CH_SHOW_GROUPS ' Me.CH_SHOW_GROUPS.AutoSize = True Me.CH_SHOW_GROUPS.Dock = System.Windows.Forms.DockStyle.Fill - Me.CH_SHOW_GROUPS.Location = New System.Drawing.Point(4, 288) + Me.CH_SHOW_GROUPS.Location = New System.Drawing.Point(4, 372) Me.CH_SHOW_GROUPS.Name = "CH_SHOW_GROUPS" Me.CH_SHOW_GROUPS.Size = New System.Drawing.Size(562, 19) - Me.CH_SHOW_GROUPS.TabIndex = 10 + Me.CH_SHOW_GROUPS.TabIndex = 13 Me.CH_SHOW_GROUPS.Text = "Show groups" TT_MAIN.SetToolTip(Me.CH_SHOW_GROUPS, "Grouping users by site") Me.CH_SHOW_GROUPS.UseVisualStyleBackColor = True @@ -439,10 +465,10 @@ Namespace Editors ' Me.CH_USERS_GROUPING.AutoSize = True Me.CH_USERS_GROUPING.Dock = System.Windows.Forms.DockStyle.Fill - Me.CH_USERS_GROUPING.Location = New System.Drawing.Point(4, 314) + Me.CH_USERS_GROUPING.Location = New System.Drawing.Point(4, 398) Me.CH_USERS_GROUPING.Name = "CH_USERS_GROUPING" Me.CH_USERS_GROUPING.Size = New System.Drawing.Size(562, 19) - Me.CH_USERS_GROUPING.TabIndex = 11 + Me.CH_USERS_GROUPING.TabIndex = 14 Me.CH_USERS_GROUPING.Text = "Use user grouping" TT_MAIN.SetToolTip(Me.CH_USERS_GROUPING, "Group users by groups and/or labels") Me.CH_USERS_GROUPING.UseVisualStyleBackColor = True @@ -461,10 +487,11 @@ Namespace Editors Me.TXT_USER_AGENT.CaptionToolTipEnabled = True Me.TXT_USER_AGENT.CaptionToolTipText = "Default user agent to use in requests" Me.TXT_USER_AGENT.Dock = System.Windows.Forms.DockStyle.Fill - Me.TXT_USER_AGENT.Location = New System.Drawing.Point(4, 175) + Me.TXT_USER_AGENT.Lines = New String(-1) {} + Me.TXT_USER_AGENT.Location = New System.Drawing.Point(4, 233) Me.TXT_USER_AGENT.Name = "TXT_USER_AGENT" Me.TXT_USER_AGENT.Size = New System.Drawing.Size(562, 22) - Me.TXT_USER_AGENT.TabIndex = 6 + Me.TXT_USER_AGENT.TabIndex = 8 ' 'TXT_USER_LIST_IMAGE ' @@ -480,10 +507,11 @@ Namespace Editors Me.TXT_USER_LIST_IMAGE.CaptionToolTipEnabled = True Me.TXT_USER_LIST_IMAGE.CaptionToolTipText = "Background image for user list" Me.TXT_USER_LIST_IMAGE.Dock = System.Windows.Forms.DockStyle.Fill - Me.TXT_USER_LIST_IMAGE.Location = New System.Drawing.Point(4, 233) + Me.TXT_USER_LIST_IMAGE.Lines = New String(-1) {} + Me.TXT_USER_LIST_IMAGE.Location = New System.Drawing.Point(4, 291) Me.TXT_USER_LIST_IMAGE.Name = "TXT_USER_LIST_IMAGE" Me.TXT_USER_LIST_IMAGE.Size = New System.Drawing.Size(562, 22) - Me.TXT_USER_LIST_IMAGE.TabIndex = 8 + Me.TXT_USER_LIST_IMAGE.TabIndex = 10 ' 'COLORS_USERLIST ' @@ -491,12 +519,57 @@ Namespace Editors Me.COLORS_USERLIST.CaptionText = "Userlist colors" Me.COLORS_USERLIST.CaptionWidth = 103 Me.COLORS_USERLIST.Dock = System.Windows.Forms.DockStyle.Fill - Me.COLORS_USERLIST.Location = New System.Drawing.Point(1, 259) + Me.COLORS_USERLIST.Location = New System.Drawing.Point(1, 317) Me.COLORS_USERLIST.Margin = New System.Windows.Forms.Padding(0) Me.COLORS_USERLIST.Name = "COLORS_USERLIST" Me.COLORS_USERLIST.Padding = New System.Windows.Forms.Padding(0, 0, 2, 0) Me.COLORS_USERLIST.Size = New System.Drawing.Size(568, 25) - Me.COLORS_USERLIST.TabIndex = 9 + Me.COLORS_USERLIST.TabIndex = 11 + ' + 'COLORS_SUBSCRIPTIONS + ' + Me.COLORS_SUBSCRIPTIONS.ButtonsMargin = New System.Windows.Forms.Padding(1, 2, 1, 2) + Me.COLORS_SUBSCRIPTIONS.CaptionText = "Subscriptions color" + Me.COLORS_SUBSCRIPTIONS.CaptionWidth = 103 + Me.COLORS_SUBSCRIPTIONS.Dock = System.Windows.Forms.DockStyle.Fill + Me.COLORS_SUBSCRIPTIONS.Location = New System.Drawing.Point(1, 343) + Me.COLORS_SUBSCRIPTIONS.Margin = New System.Windows.Forms.Padding(0) + Me.COLORS_SUBSCRIPTIONS.Name = "COLORS_SUBSCRIPTIONS" + Me.COLORS_SUBSCRIPTIONS.Padding = New System.Windows.Forms.Padding(0, 0, 2, 0) + Me.COLORS_SUBSCRIPTIONS.Size = New System.Drawing.Size(568, 25) + Me.COLORS_SUBSCRIPTIONS.TabIndex = 12 + ' + 'TXT_PRG_TITLE + ' + ActionButton11.BackgroundImage = CType(resources.GetObject("ActionButton11.BackgroundImage"), System.Drawing.Image) + ActionButton11.Name = "Clear" + ActionButton11.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear + Me.TXT_PRG_TITLE.Buttons.Add(ActionButton11) + Me.TXT_PRG_TITLE.CaptionText = "Program title" + Me.TXT_PRG_TITLE.CaptionToolTipEnabled = True + Me.TXT_PRG_TITLE.CaptionToolTipText = "Change the title of the main window if you need to" + Me.TXT_PRG_TITLE.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_PRG_TITLE.Lines = New String(-1) {} + Me.TXT_PRG_TITLE.Location = New System.Drawing.Point(4, 175) + Me.TXT_PRG_TITLE.Name = "TXT_PRG_TITLE" + Me.TXT_PRG_TITLE.Size = New System.Drawing.Size(562, 22) + Me.TXT_PRG_TITLE.TabIndex = 6 + ' + 'TXT_PRG_DESCR + ' + ActionButton12.BackgroundImage = CType(resources.GetObject("ActionButton12.BackgroundImage"), System.Drawing.Image) + ActionButton12.Name = "Clear" + ActionButton12.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear + Me.TXT_PRG_DESCR.Buttons.Add(ActionButton12) + Me.TXT_PRG_DESCR.CaptionText = "Program description" + Me.TXT_PRG_DESCR.CaptionToolTipEnabled = True + Me.TXT_PRG_DESCR.CaptionToolTipText = "Add some additional info to the program info if you need" + Me.TXT_PRG_DESCR.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_PRG_DESCR.Lines = New String(-1) {} + Me.TXT_PRG_DESCR.Location = New System.Drawing.Point(4, 204) + Me.TXT_PRG_DESCR.Name = "TXT_PRG_DESCR" + Me.TXT_PRG_DESCR.Size = New System.Drawing.Size(562, 22) + Me.TXT_PRG_DESCR.TabIndex = 7 ' 'TP_FILE_NAME ' @@ -930,11 +1003,11 @@ Namespace Editors ' Me.CH_STD_YT_LOAD.AutoSize = True Me.CH_STD_YT_LOAD.Dock = System.Windows.Forms.DockStyle.Fill - Me.CH_STD_YT_LOAD.Location = New System.Drawing.Point(4, 166) + Me.CH_STD_YT_LOAD.Location = New System.Drawing.Point(4, 218) Me.CH_STD_YT_LOAD.Name = "CH_STD_YT_LOAD" Me.CH_STD_YT_LOAD.Padding = New System.Windows.Forms.Padding(100, 0, 0, 0) Me.CH_STD_YT_LOAD.Size = New System.Drawing.Size(568, 19) - Me.CH_STD_YT_LOAD.TabIndex = 6 + Me.CH_STD_YT_LOAD.TabIndex = 8 Me.CH_STD_YT_LOAD.Text = "Load downloaded YouTube videos to the form" TT_MAIN.SetToolTip(Me.CH_STD_YT_LOAD, "If checked, downloaded YouTube videos will be loaded to the form. Otherwise, all " & "downloaded data will be loaded to the form except YouTube data.") @@ -944,16 +1017,92 @@ Namespace Editors ' Me.CH_STD_YT_REMOVE.AutoSize = True Me.CH_STD_YT_REMOVE.Dock = System.Windows.Forms.DockStyle.Fill - Me.CH_STD_YT_REMOVE.Location = New System.Drawing.Point(4, 192) + Me.CH_STD_YT_REMOVE.Location = New System.Drawing.Point(4, 244) Me.CH_STD_YT_REMOVE.Name = "CH_STD_YT_REMOVE" Me.CH_STD_YT_REMOVE.Padding = New System.Windows.Forms.Padding(100, 0, 0, 0) Me.CH_STD_YT_REMOVE.Size = New System.Drawing.Size(568, 19) - Me.CH_STD_YT_REMOVE.TabIndex = 7 + Me.CH_STD_YT_REMOVE.TabIndex = 9 Me.CH_STD_YT_REMOVE.Text = "Clear YouTube videos when clearing the list" TT_MAIN.SetToolTip(Me.CH_STD_YT_REMOVE, "If checked, YouTube videos will also be removed from the list. This action will a" & "lso affect the standalone 'YouTubeDownloader' app.") Me.CH_STD_YT_REMOVE.UseVisualStyleBackColor = True ' + 'CH_FEED_OPEN_LAST_MODE + ' + Me.CH_FEED_OPEN_LAST_MODE.AutoSize = True + Me.CH_FEED_OPEN_LAST_MODE.Dock = System.Windows.Forms.DockStyle.Fill + Me.CH_FEED_OPEN_LAST_MODE.Location = New System.Drawing.Point(4, 192) + Me.CH_FEED_OPEN_LAST_MODE.Name = "CH_FEED_OPEN_LAST_MODE" + Me.CH_FEED_OPEN_LAST_MODE.Size = New System.Drawing.Size(568, 19) + Me.CH_FEED_OPEN_LAST_MODE.TabIndex = 7 + Me.CH_FEED_OPEN_LAST_MODE.Text = "Open last mode (users or subscriptions)" + TT_MAIN.SetToolTip(Me.CH_FEED_OPEN_LAST_MODE, "If disabled, the user mode will be used when initializing the feed.") + Me.CH_FEED_OPEN_LAST_MODE.UseVisualStyleBackColor = True + ' + 'CH_STD_YT_OUTPUT_ASK_NAME + ' + Me.CH_STD_YT_OUTPUT_ASK_NAME.AutoSize = True + Me.CH_STD_YT_OUTPUT_ASK_NAME.Dock = System.Windows.Forms.DockStyle.Fill + Me.CH_STD_YT_OUTPUT_ASK_NAME.Location = New System.Drawing.Point(4, 270) + Me.CH_STD_YT_OUTPUT_ASK_NAME.Name = "CH_STD_YT_OUTPUT_ASK_NAME" + Me.CH_STD_YT_OUTPUT_ASK_NAME.Padding = New System.Windows.Forms.Padding(100, 0, 0, 0) + Me.CH_STD_YT_OUTPUT_ASK_NAME.Size = New System.Drawing.Size(568, 19) + Me.CH_STD_YT_OUTPUT_ASK_NAME.TabIndex = 10 + Me.CH_STD_YT_OUTPUT_ASK_NAME.Text = "Output path: ask for a name" + TT_MAIN.SetToolTip(Me.CH_STD_YT_OUTPUT_ASK_NAME, "Ask for a name when adding a new output path to the list.") + Me.CH_STD_YT_OUTPUT_ASK_NAME.UseVisualStyleBackColor = True + ' + 'CH_STD_YT_OUTPUT_AUTO_ADD + ' + Me.CH_STD_YT_OUTPUT_AUTO_ADD.AutoSize = True + Me.CH_STD_YT_OUTPUT_AUTO_ADD.Dock = System.Windows.Forms.DockStyle.Fill + Me.CH_STD_YT_OUTPUT_AUTO_ADD.Location = New System.Drawing.Point(4, 296) + Me.CH_STD_YT_OUTPUT_AUTO_ADD.Name = "CH_STD_YT_OUTPUT_AUTO_ADD" + Me.CH_STD_YT_OUTPUT_AUTO_ADD.Padding = New System.Windows.Forms.Padding(100, 0, 0, 0) + Me.CH_STD_YT_OUTPUT_AUTO_ADD.Size = New System.Drawing.Size(568, 19) + Me.CH_STD_YT_OUTPUT_AUTO_ADD.TabIndex = 11 + Me.CH_STD_YT_OUTPUT_AUTO_ADD.Text = "Output path: auto add" + TT_MAIN.SetToolTip(Me.CH_STD_YT_OUTPUT_AUTO_ADD, "Add new paths to the list automatically.") + Me.CH_STD_YT_OUTPUT_AUTO_ADD.UseVisualStyleBackColor = True + ' + 'BTT_RESET_DOWNLOAD_LOCATIONS + ' + Me.BTT_RESET_DOWNLOAD_LOCATIONS.Dock = System.Windows.Forms.DockStyle.Right + Me.BTT_RESET_DOWNLOAD_LOCATIONS.Location = New System.Drawing.Point(382, 322) + Me.BTT_RESET_DOWNLOAD_LOCATIONS.Name = "BTT_RESET_DOWNLOAD_LOCATIONS" + Me.BTT_RESET_DOWNLOAD_LOCATIONS.Size = New System.Drawing.Size(190, 22) + Me.BTT_RESET_DOWNLOAD_LOCATIONS.TabIndex = 12 + Me.BTT_RESET_DOWNLOAD_LOCATIONS.Text = "Reset download locations" + TT_MAIN.SetToolTip(Me.BTT_RESET_DOWNLOAD_LOCATIONS, "All saved download locations will be deleted") + Me.BTT_RESET_DOWNLOAD_LOCATIONS.UseVisualStyleBackColor = True + ' + 'CH_STD_SNAP_KEEP_WITH_FILES + ' + Me.CH_STD_SNAP_KEEP_WITH_FILES.AutoSize = True + Me.CH_STD_SNAP_KEEP_WITH_FILES.Dock = System.Windows.Forms.DockStyle.Fill + Me.CH_STD_SNAP_KEEP_WITH_FILES.Location = New System.Drawing.Point(4, 140) + Me.CH_STD_SNAP_KEEP_WITH_FILES.Name = "CH_STD_SNAP_KEEP_WITH_FILES" + Me.CH_STD_SNAP_KEEP_WITH_FILES.Padding = New System.Windows.Forms.Padding(100, 0, 0, 0) + Me.CH_STD_SNAP_KEEP_WITH_FILES.Size = New System.Drawing.Size(568, 19) + Me.CH_STD_SNAP_KEEP_WITH_FILES.TabIndex = 5 + Me.CH_STD_SNAP_KEEP_WITH_FILES.Text = "Keep video thumbnail with files" + TT_MAIN.SetToolTip(Me.CH_STD_SNAP_KEEP_WITH_FILES, "Only works with 'Create video thumbnail'.") + Me.CH_STD_SNAP_KEEP_WITH_FILES.UseVisualStyleBackColor = True + ' + 'CH_STD_SNAP_CACHE_PERMANENT + ' + Me.CH_STD_SNAP_CACHE_PERMANENT.AutoSize = True + Me.CH_STD_SNAP_CACHE_PERMANENT.Dock = System.Windows.Forms.DockStyle.Fill + Me.CH_STD_SNAP_CACHE_PERMANENT.Location = New System.Drawing.Point(4, 166) + Me.CH_STD_SNAP_CACHE_PERMANENT.Name = "CH_STD_SNAP_CACHE_PERMANENT" + Me.CH_STD_SNAP_CACHE_PERMANENT.Padding = New System.Windows.Forms.Padding(100, 0, 0, 0) + Me.CH_STD_SNAP_CACHE_PERMANENT.Size = New System.Drawing.Size(568, 19) + Me.CH_STD_SNAP_CACHE_PERMANENT.TabIndex = 6 + Me.CH_STD_SNAP_CACHE_PERMANENT.Text = "Leave the thumbnails cache" + TT_MAIN.SetToolTip(Me.CH_STD_SNAP_CACHE_PERMANENT, "If disabled, video thumbnails will be deleted after SCrawler closes." & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10) & "Only works " & + "with 'Create video thumbnail' and 'Keep video thumbnail with files'.") + Me.CH_STD_SNAP_CACHE_PERMANENT.UseVisualStyleBackColor = True + ' 'TP_CHANNELS_IMGS ' TP_CHANNELS_IMGS.ColumnCount = 2 @@ -978,6 +1127,7 @@ Namespace Editors Me.TXT_CHANNELS_ROWS.CaptionToolTipText = "How many lines of images should be shown in the channels form" Me.TXT_CHANNELS_ROWS.ControlMode = PersonalUtilities.Forms.Controls.TextBoxExtended.ControlModes.NumericUpDown Me.TXT_CHANNELS_ROWS.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_CHANNELS_ROWS.Lines = New String(-1) {} Me.TXT_CHANNELS_ROWS.Location = New System.Drawing.Point(3, 3) Me.TXT_CHANNELS_ROWS.Name = "TXT_CHANNELS_ROWS" Me.TXT_CHANNELS_ROWS.Size = New System.Drawing.Size(278, 22) @@ -992,6 +1142,7 @@ Namespace Editors Me.TXT_CHANNELS_COLUMNS.CaptionToolTipText = "How many columns of images should be shown in the channels form" Me.TXT_CHANNELS_COLUMNS.ControlMode = PersonalUtilities.Forms.Controls.TextBoxExtended.ControlModes.NumericUpDown Me.TXT_CHANNELS_COLUMNS.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_CHANNELS_COLUMNS.Lines = New String(-1) {} Me.TXT_CHANNELS_COLUMNS.Location = New System.Drawing.Point(287, 3) Me.TXT_CHANNELS_COLUMNS.Name = "TXT_CHANNELS_COLUMNS" Me.TXT_CHANNELS_COLUMNS.Size = New System.Drawing.Size(278, 22) @@ -1005,7 +1156,7 @@ Namespace Editors TAB_BASIS.Location = New System.Drawing.Point(4, 22) TAB_BASIS.Name = "TAB_BASIS" TAB_BASIS.Padding = New System.Windows.Forms.Padding(3) - TAB_BASIS.Size = New System.Drawing.Size(576, 368) + TAB_BASIS.Size = New System.Drawing.Size(576, 451) TAB_BASIS.TabIndex = 0 TAB_BASIS.Text = "Basis" ' @@ -1015,7 +1166,7 @@ Namespace Editors TAB_DEFAULTS.Location = New System.Drawing.Point(4, 22) TAB_DEFAULTS.Name = "TAB_DEFAULTS" TAB_DEFAULTS.Padding = New System.Windows.Forms.Padding(3) - TAB_DEFAULTS.Size = New System.Drawing.Size(576, 368) + TAB_DEFAULTS.Size = New System.Drawing.Size(576, 451) TAB_DEFAULTS.TabIndex = 1 TAB_DEFAULTS.Text = "Defaults" ' @@ -1041,7 +1192,7 @@ Namespace Editors TP_DEFS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) TP_DEFS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) TP_DEFS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) - TP_DEFS.Size = New System.Drawing.Size(570, 362) + TP_DEFS.Size = New System.Drawing.Size(570, 445) TP_DEFS.TabIndex = 0 ' 'CH_DOWN_IMAGES_NATIVE @@ -1061,7 +1212,7 @@ Namespace Editors TAB_DEFS_CHANNELS.Location = New System.Drawing.Point(4, 22) TAB_DEFS_CHANNELS.Name = "TAB_DEFS_CHANNELS" TAB_DEFS_CHANNELS.Padding = New System.Windows.Forms.Padding(3) - TAB_DEFS_CHANNELS.Size = New System.Drawing.Size(576, 368) + TAB_DEFS_CHANNELS.Size = New System.Drawing.Size(576, 451) TAB_DEFS_CHANNELS.TabIndex = 4 TAB_DEFS_CHANNELS.Text = "Channels" ' @@ -1085,7 +1236,7 @@ Namespace Editors TP_CHANNELS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) TP_CHANNELS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) TP_CHANNELS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) - TP_CHANNELS.Size = New System.Drawing.Size(570, 362) + TP_CHANNELS.Size = New System.Drawing.Size(570, 445) TP_CHANNELS.TabIndex = 0 ' 'TXT_CHANNEL_USER_POST_LIMIT @@ -1099,6 +1250,7 @@ Namespace Editors Me.TXT_CHANNEL_USER_POST_LIMIT.CaptionWidth = 50.0R Me.TXT_CHANNEL_USER_POST_LIMIT.ControlMode = PersonalUtilities.Forms.Controls.TextBoxExtended.ControlModes.NumericUpDown Me.TXT_CHANNEL_USER_POST_LIMIT.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_CHANNEL_USER_POST_LIMIT.Lines = New String(-1) {} Me.TXT_CHANNEL_USER_POST_LIMIT.Location = New System.Drawing.Point(4, 33) Me.TXT_CHANNEL_USER_POST_LIMIT.Name = "TXT_CHANNEL_USER_POST_LIMIT" Me.TXT_CHANNEL_USER_POST_LIMIT.NumberMaximum = New Decimal(New Integer() {1000, 0, 0, 0}) @@ -1113,7 +1265,7 @@ Namespace Editors TAB_BEHAVIOR.Controls.Add(TP_BEHAVIOR) TAB_BEHAVIOR.Location = New System.Drawing.Point(4, 22) TAB_BEHAVIOR.Name = "TAB_BEHAVIOR" - TAB_BEHAVIOR.Size = New System.Drawing.Size(576, 368) + TAB_BEHAVIOR.Size = New System.Drawing.Size(576, 451) TAB_BEHAVIOR.TabIndex = 5 TAB_BEHAVIOR.Text = "Behavior" ' @@ -1144,23 +1296,24 @@ Namespace Editors TP_BEHAVIOR.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) TP_BEHAVIOR.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) TP_BEHAVIOR.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20.0!)) - TP_BEHAVIOR.Size = New System.Drawing.Size(576, 368) + TP_BEHAVIOR.Size = New System.Drawing.Size(576, 451) TP_BEHAVIOR.TabIndex = 0 ' 'TXT_FOLDER_CMD ' Me.TXT_FOLDER_CMD.AutoShowClearButton = True - ActionButton11.BackgroundImage = CType(resources.GetObject("ActionButton11.BackgroundImage"), System.Drawing.Image) - ActionButton11.Enabled = False - ActionButton11.Name = "Clear" - ActionButton11.Visible = False - Me.TXT_FOLDER_CMD.Buttons.Add(ActionButton11) + ActionButton13.BackgroundImage = CType(resources.GetObject("ActionButton13.BackgroundImage"), System.Drawing.Image) + ActionButton13.Enabled = False + ActionButton13.Name = "Clear" + ActionButton13.Visible = False + Me.TXT_FOLDER_CMD.Buttons.Add(ActionButton13) Me.TXT_FOLDER_CMD.CaptionMode = PersonalUtilities.Forms.Controls.Base.ICaptionControl.Modes.CheckBox Me.TXT_FOLDER_CMD.CaptionText = "Folder cmd" Me.TXT_FOLDER_CMD.CaptionToolTipEnabled = True Me.TXT_FOLDER_CMD.CaptionToolTipText = "The command to open a folder." Me.TXT_FOLDER_CMD.Dock = System.Windows.Forms.DockStyle.Fill Me.TXT_FOLDER_CMD.LeaveDefaultButtons = True + Me.TXT_FOLDER_CMD.Lines = New String(-1) {} Me.TXT_FOLDER_CMD.Location = New System.Drawing.Point(4, 160) Me.TXT_FOLDER_CMD.Name = "TXT_FOLDER_CMD" Me.TXT_FOLDER_CMD.PlaceholderEnabled = True @@ -1193,17 +1346,18 @@ Namespace Editors 'TXT_CLOSE_SCRIPT ' Me.TXT_CLOSE_SCRIPT.AutoShowClearButton = True - ActionButton12.BackgroundImage = CType(resources.GetObject("ActionButton12.BackgroundImage"), System.Drawing.Image) - ActionButton12.Enabled = False - ActionButton12.Name = "Clear" - ActionButton12.Visible = False - Me.TXT_CLOSE_SCRIPT.Buttons.Add(ActionButton12) + ActionButton14.BackgroundImage = CType(resources.GetObject("ActionButton14.BackgroundImage"), System.Drawing.Image) + ActionButton14.Enabled = False + ActionButton14.Name = "Clear" + ActionButton14.Visible = False + Me.TXT_CLOSE_SCRIPT.Buttons.Add(ActionButton14) Me.TXT_CLOSE_SCRIPT.CaptionMode = PersonalUtilities.Forms.Controls.Base.ICaptionControl.Modes.CheckBox Me.TXT_CLOSE_SCRIPT.CaptionText = "Close cmd" Me.TXT_CLOSE_SCRIPT.CaptionToolTipEnabled = True Me.TXT_CLOSE_SCRIPT.CaptionToolTipText = "This command will be executed when SCrawler is closed" Me.TXT_CLOSE_SCRIPT.Dock = System.Windows.Forms.DockStyle.Fill Me.TXT_CLOSE_SCRIPT.LeaveDefaultButtons = True + Me.TXT_CLOSE_SCRIPT.Lines = New String(-1) {} Me.TXT_CLOSE_SCRIPT.Location = New System.Drawing.Point(4, 189) Me.TXT_CLOSE_SCRIPT.Name = "TXT_CLOSE_SCRIPT" Me.TXT_CLOSE_SCRIPT.PlaceholderEnabled = True @@ -1285,7 +1439,7 @@ Namespace Editors TAB_DOWN.Controls.Add(TP_DOWNLOADING) TAB_DOWN.Location = New System.Drawing.Point(4, 22) TAB_DOWN.Name = "TAB_DOWN" - TAB_DOWN.Size = New System.Drawing.Size(576, 368) + TAB_DOWN.Size = New System.Drawing.Size(576, 451) TAB_DOWN.TabIndex = 6 TAB_DOWN.Text = "Downloading" ' @@ -1317,17 +1471,17 @@ Namespace Editors TP_DOWNLOADING.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) TP_DOWNLOADING.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) TP_DOWNLOADING.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) - TP_DOWNLOADING.Size = New System.Drawing.Size(576, 368) + TP_DOWNLOADING.Size = New System.Drawing.Size(576, 451) TP_DOWNLOADING.TabIndex = 1 ' 'TXT_SCRIPT ' - ActionButton13.BackgroundImage = CType(resources.GetObject("ActionButton13.BackgroundImage"), System.Drawing.Image) - ActionButton13.Name = "Open" - ActionButton14.BackgroundImage = CType(resources.GetObject("ActionButton14.BackgroundImage"), System.Drawing.Image) - ActionButton14.Name = "Clear" - Me.TXT_SCRIPT.Buttons.Add(ActionButton13) - Me.TXT_SCRIPT.Buttons.Add(ActionButton14) + ActionButton15.BackgroundImage = CType(resources.GetObject("ActionButton15.BackgroundImage"), System.Drawing.Image) + ActionButton15.Name = "Open" + ActionButton16.BackgroundImage = CType(resources.GetObject("ActionButton16.BackgroundImage"), System.Drawing.Image) + ActionButton16.Name = "Clear" + Me.TXT_SCRIPT.Buttons.Add(ActionButton15) + Me.TXT_SCRIPT.Buttons.Add(ActionButton16) Me.TXT_SCRIPT.CaptionMode = PersonalUtilities.Forms.Controls.Base.ICaptionControl.Modes.CheckBox Me.TXT_SCRIPT.CaptionText = "Script" Me.TXT_SCRIPT.CaptionToolTipEnabled = True @@ -1336,6 +1490,7 @@ Namespace Editors Me.TXT_SCRIPT.CaptionWidth = 120.0R Me.TXT_SCRIPT.ChangeControlsEnableOnCheckedChange = False Me.TXT_SCRIPT.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_SCRIPT.Lines = New String(-1) {} Me.TXT_SCRIPT.Location = New System.Drawing.Point(4, 144) Me.TXT_SCRIPT.Name = "TXT_SCRIPT" Me.TXT_SCRIPT.PlaceholderEnabled = True @@ -1351,6 +1506,7 @@ Namespace Editors Me.TXT_DOWN_COMPLETE_SCRIPT.CaptionToolTipText = "This command will be executed after all downloads are completed" Me.TXT_DOWN_COMPLETE_SCRIPT.CaptionWidth = 120.0R Me.TXT_DOWN_COMPLETE_SCRIPT.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_DOWN_COMPLETE_SCRIPT.Lines = New String(-1) {} Me.TXT_DOWN_COMPLETE_SCRIPT.Location = New System.Drawing.Point(4, 173) Me.TXT_DOWN_COMPLETE_SCRIPT.Name = "TXT_DOWN_COMPLETE_SCRIPT" Me.TXT_DOWN_COMPLETE_SCRIPT.PlaceholderEnabled = True @@ -1387,12 +1543,23 @@ Namespace Editors Me.CH_UNAME_UP.Text = "Update user site name every time" Me.CH_UNAME_UP.UseVisualStyleBackColor = True ' + 'CH_UICON_UP + ' + Me.CH_UICON_UP.AutoSize = True + Me.CH_UICON_UP.Dock = System.Windows.Forms.DockStyle.Fill + Me.CH_UICON_UP.Location = New System.Drawing.Point(4, 56) + Me.CH_UICON_UP.Name = "CH_UICON_UP" + Me.CH_UICON_UP.Size = New System.Drawing.Size(568, 19) + Me.CH_UICON_UP.TabIndex = 2 + Me.CH_UICON_UP.Text = "Update user icon and banner every time (where supported)" + Me.CH_UICON_UP.UseVisualStyleBackColor = True + ' 'TAB_FEED ' TAB_FEED.Controls.Add(TP_FEED) TAB_FEED.Location = New System.Drawing.Point(4, 22) TAB_FEED.Name = "TAB_FEED" - TAB_FEED.Size = New System.Drawing.Size(576, 368) + TAB_FEED.Size = New System.Drawing.Size(576, 451) TAB_FEED.TabIndex = 7 TAB_FEED.Text = "Feed" ' @@ -1408,10 +1575,12 @@ Namespace Editors TP_FEED.Controls.Add(Me.CH_FEED_STORE_SESSION_DATA, 0, 6) TP_FEED.Controls.Add(Me.TXT_FEED_CENTER_IMAGE, 0, 1) TP_FEED.Controls.Add(Me.COLORS_FEED, 0, 2) + TP_FEED.Controls.Add(Me.CH_FEED_OPEN_LAST_MODE, 0, 7) + TP_FEED.Controls.Add(Me.CH_FEED_SHOW_FRIENDLY, 0, 8) TP_FEED.Dock = System.Windows.Forms.DockStyle.Fill TP_FEED.Location = New System.Drawing.Point(0, 0) TP_FEED.Name = "TP_FEED" - TP_FEED.RowCount = 8 + TP_FEED.RowCount = 10 TP_FEED.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) TP_FEED.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) TP_FEED.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) @@ -1419,9 +1588,10 @@ Namespace Editors TP_FEED.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) TP_FEED.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) TP_FEED.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) + TP_FEED.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) + TP_FEED.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) TP_FEED.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) - TP_FEED.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20.0!)) - TP_FEED.Size = New System.Drawing.Size(576, 368) + TP_FEED.Size = New System.Drawing.Size(576, 451) TP_FEED.TabIndex = 0 ' 'TP_FEED_IMG_COUNT @@ -1448,6 +1618,7 @@ Namespace Editors Me.TXT_FEED_ROWS.CaptionToolTipText = "How many lines of images should be shown in the feed form" Me.TXT_FEED_ROWS.ControlMode = PersonalUtilities.Forms.Controls.TextBoxExtended.ControlModes.NumericUpDown Me.TXT_FEED_ROWS.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_FEED_ROWS.Lines = New String(-1) {} Me.TXT_FEED_ROWS.Location = New System.Drawing.Point(3, 3) Me.TXT_FEED_ROWS.Name = "TXT_FEED_ROWS" Me.TXT_FEED_ROWS.NumberMaximum = New Decimal(New Integer() {50, 0, 0, 0}) @@ -1464,6 +1635,7 @@ Namespace Editors Me.TXT_FEED_COLUMNS.CaptionToolTipText = "How many columns of images should be shown in the feed form" Me.TXT_FEED_COLUMNS.ControlMode = PersonalUtilities.Forms.Controls.TextBoxExtended.ControlModes.NumericUpDown Me.TXT_FEED_COLUMNS.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_FEED_COLUMNS.Lines = New String(-1) {} Me.TXT_FEED_COLUMNS.Location = New System.Drawing.Point(290, 3) Me.TXT_FEED_COLUMNS.Name = "TXT_FEED_COLUMNS" Me.TXT_FEED_COLUMNS.NumberMaximum = New Decimal(New Integer() {20, 0, 0, 0}) @@ -1517,6 +1689,7 @@ Namespace Editors Me.TXT_FEED_CENTER_IMAGE.CaptionWidth = 50.0R Me.TXT_FEED_CENTER_IMAGE.ControlMode = PersonalUtilities.Forms.Controls.TextBoxExtended.ControlModes.NumericUpDown Me.TXT_FEED_CENTER_IMAGE.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_FEED_CENTER_IMAGE.Lines = New String(-1) {} Me.TXT_FEED_CENTER_IMAGE.Location = New System.Drawing.Point(4, 33) Me.TXT_FEED_CENTER_IMAGE.Margin = New System.Windows.Forms.Padding(3, 3, 2, 3) Me.TXT_FEED_CENTER_IMAGE.Name = "TXT_FEED_CENTER_IMAGE" @@ -1543,7 +1716,7 @@ Namespace Editors TAB_NOTIFY.Controls.Add(TP_NOTIFY_MAIN) TAB_NOTIFY.Location = New System.Drawing.Point(4, 22) TAB_NOTIFY.Name = "TAB_NOTIFY" - TAB_NOTIFY.Size = New System.Drawing.Size(576, 368) + TAB_NOTIFY.Size = New System.Drawing.Size(576, 451) TAB_NOTIFY.TabIndex = 8 TAB_NOTIFY.Text = "Notifications" ' @@ -1573,7 +1746,7 @@ Namespace Editors TP_NOTIFY_MAIN.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) TP_NOTIFY_MAIN.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) TP_NOTIFY_MAIN.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) - TP_NOTIFY_MAIN.Size = New System.Drawing.Size(576, 368) + TP_NOTIFY_MAIN.Size = New System.Drawing.Size(576, 451) TP_NOTIFY_MAIN.TabIndex = 0 ' 'TP_ENVIR @@ -1596,24 +1769,25 @@ Namespace Editors TP_ENVIR.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) TP_ENVIR.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) TP_ENVIR.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) - TP_ENVIR.Size = New System.Drawing.Size(576, 368) + TP_ENVIR.Size = New System.Drawing.Size(576, 451) TP_ENVIR.TabIndex = 0 ' 'TXT_YTDLP ' - ActionButton15.BackgroundImage = CType(resources.GetObject("ActionButton15.BackgroundImage"), System.Drawing.Image) - ActionButton15.Name = "Open" - ActionButton15.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Open - ActionButton16.BackgroundImage = CType(resources.GetObject("ActionButton16.BackgroundImage"), System.Drawing.Image) - ActionButton16.Name = "Clear" - ActionButton16.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear - Me.TXT_YTDLP.Buttons.Add(ActionButton15) - Me.TXT_YTDLP.Buttons.Add(ActionButton16) + ActionButton17.BackgroundImage = CType(resources.GetObject("ActionButton17.BackgroundImage"), System.Drawing.Image) + ActionButton17.Name = "Open" + ActionButton17.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Open + ActionButton18.BackgroundImage = CType(resources.GetObject("ActionButton18.BackgroundImage"), System.Drawing.Image) + ActionButton18.Name = "Clear" + ActionButton18.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear + Me.TXT_YTDLP.Buttons.Add(ActionButton17) + Me.TXT_YTDLP.Buttons.Add(ActionButton18) Me.TXT_YTDLP.CaptionText = "yt-dlp" Me.TXT_YTDLP.CaptionToolTipEnabled = True Me.TXT_YTDLP.CaptionToolTipText = "Path to yt-dlp.exe file" Me.TXT_YTDLP.CaptionWidth = 80.0R Me.TXT_YTDLP.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_YTDLP.Lines = New String(-1) {} Me.TXT_YTDLP.Location = New System.Drawing.Point(4, 62) Me.TXT_YTDLP.Name = "TXT_YTDLP" Me.TXT_YTDLP.Size = New System.Drawing.Size(568, 22) @@ -1622,19 +1796,20 @@ Namespace Editors ' 'TXT_FFMPEG ' - ActionButton17.BackgroundImage = CType(resources.GetObject("ActionButton17.BackgroundImage"), System.Drawing.Image) - ActionButton17.Name = "Open" - ActionButton17.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Open - ActionButton18.BackgroundImage = CType(resources.GetObject("ActionButton18.BackgroundImage"), System.Drawing.Image) - ActionButton18.Name = "Clear" - ActionButton18.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear - Me.TXT_FFMPEG.Buttons.Add(ActionButton17) - Me.TXT_FFMPEG.Buttons.Add(ActionButton18) + ActionButton19.BackgroundImage = CType(resources.GetObject("ActionButton19.BackgroundImage"), System.Drawing.Image) + ActionButton19.Name = "Open" + ActionButton19.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Open + ActionButton20.BackgroundImage = CType(resources.GetObject("ActionButton20.BackgroundImage"), System.Drawing.Image) + ActionButton20.Name = "Clear" + ActionButton20.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear + Me.TXT_FFMPEG.Buttons.Add(ActionButton19) + Me.TXT_FFMPEG.Buttons.Add(ActionButton20) Me.TXT_FFMPEG.CaptionText = "ffmpeg" Me.TXT_FFMPEG.CaptionToolTipEnabled = True Me.TXT_FFMPEG.CaptionToolTipText = "Path to ffmpeg.exe file" Me.TXT_FFMPEG.CaptionWidth = 80.0R Me.TXT_FFMPEG.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_FFMPEG.Lines = New String(-1) {} Me.TXT_FFMPEG.Location = New System.Drawing.Point(4, 4) Me.TXT_FFMPEG.Name = "TXT_FFMPEG" Me.TXT_FFMPEG.Size = New System.Drawing.Size(568, 22) @@ -1643,19 +1818,20 @@ Namespace Editors ' 'TXT_CURL ' - ActionButton19.BackgroundImage = CType(resources.GetObject("ActionButton19.BackgroundImage"), System.Drawing.Image) - ActionButton19.Name = "Open" - ActionButton19.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Open - ActionButton20.BackgroundImage = CType(resources.GetObject("ActionButton20.BackgroundImage"), System.Drawing.Image) - ActionButton20.Name = "Clear" - ActionButton20.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear - Me.TXT_CURL.Buttons.Add(ActionButton19) - Me.TXT_CURL.Buttons.Add(ActionButton20) + ActionButton21.BackgroundImage = CType(resources.GetObject("ActionButton21.BackgroundImage"), System.Drawing.Image) + ActionButton21.Name = "Open" + ActionButton21.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Open + ActionButton22.BackgroundImage = CType(resources.GetObject("ActionButton22.BackgroundImage"), System.Drawing.Image) + ActionButton22.Name = "Clear" + ActionButton22.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear + Me.TXT_CURL.Buttons.Add(ActionButton21) + Me.TXT_CURL.Buttons.Add(ActionButton22) Me.TXT_CURL.CaptionText = "cURL" Me.TXT_CURL.CaptionToolTipEnabled = True Me.TXT_CURL.CaptionToolTipText = "Path to curl.exe file" Me.TXT_CURL.CaptionWidth = 80.0R Me.TXT_CURL.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_CURL.Lines = New String(-1) {} Me.TXT_CURL.Location = New System.Drawing.Point(4, 33) Me.TXT_CURL.Name = "TXT_CURL" Me.TXT_CURL.Size = New System.Drawing.Size(568, 22) @@ -1664,18 +1840,19 @@ Namespace Editors ' 'TXT_GALLERYDL ' - ActionButton21.BackgroundImage = CType(resources.GetObject("ActionButton21.BackgroundImage"), System.Drawing.Image) - ActionButton21.Name = "Open" - ActionButton21.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Open - ActionButton22.BackgroundImage = CType(resources.GetObject("ActionButton22.BackgroundImage"), System.Drawing.Image) - ActionButton22.Name = "Clear" - ActionButton22.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear - Me.TXT_GALLERYDL.Buttons.Add(ActionButton21) - Me.TXT_GALLERYDL.Buttons.Add(ActionButton22) + ActionButton23.BackgroundImage = CType(resources.GetObject("ActionButton23.BackgroundImage"), System.Drawing.Image) + ActionButton23.Name = "Open" + ActionButton23.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Open + ActionButton24.BackgroundImage = CType(resources.GetObject("ActionButton24.BackgroundImage"), System.Drawing.Image) + ActionButton24.Name = "Clear" + ActionButton24.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear + Me.TXT_GALLERYDL.Buttons.Add(ActionButton23) + Me.TXT_GALLERYDL.Buttons.Add(ActionButton24) Me.TXT_GALLERYDL.CaptionText = "gallery-dl" Me.TXT_GALLERYDL.CaptionToolTipText = "Path to gallery-dl.exe file" Me.TXT_GALLERYDL.CaptionWidth = 80.0R Me.TXT_GALLERYDL.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_GALLERYDL.Lines = New String(-1) {} Me.TXT_GALLERYDL.Location = New System.Drawing.Point(4, 91) Me.TXT_GALLERYDL.Name = "TXT_GALLERYDL" Me.TXT_GALLERYDL.Size = New System.Drawing.Size(568, 22) @@ -1684,19 +1861,20 @@ Namespace Editors ' 'TXT_CMD_ENCODING ' - ActionButton23.BackgroundImage = CType(resources.GetObject("ActionButton23.BackgroundImage"), System.Drawing.Image) - ActionButton23.Name = "Refresh" - ActionButton23.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Refresh - ActionButton24.BackgroundImage = CType(resources.GetObject("ActionButton24.BackgroundImage"), System.Drawing.Image) - ActionButton24.Name = "Clear" - ActionButton24.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear - Me.TXT_CMD_ENCODING.Buttons.Add(ActionButton23) - Me.TXT_CMD_ENCODING.Buttons.Add(ActionButton24) + ActionButton25.BackgroundImage = CType(resources.GetObject("ActionButton25.BackgroundImage"), System.Drawing.Image) + ActionButton25.Name = "Refresh" + ActionButton25.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Refresh + ActionButton26.BackgroundImage = CType(resources.GetObject("ActionButton26.BackgroundImage"), System.Drawing.Image) + ActionButton26.Name = "Clear" + ActionButton26.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.Clear + Me.TXT_CMD_ENCODING.Buttons.Add(ActionButton25) + Me.TXT_CMD_ENCODING.Buttons.Add(ActionButton26) Me.TXT_CMD_ENCODING.CaptionText = "CMD Encoding" Me.TXT_CMD_ENCODING.CaptionToolTipEnabled = True Me.TXT_CMD_ENCODING.CaptionToolTipText = "Command line encoding" Me.TXT_CMD_ENCODING.CaptionWidth = 80.0R Me.TXT_CMD_ENCODING.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_CMD_ENCODING.Lines = New String(-1) {} Me.TXT_CMD_ENCODING.Location = New System.Drawing.Point(4, 120) Me.TXT_CMD_ENCODING.Name = "TXT_CMD_ENCODING" Me.TXT_CMD_ENCODING.Size = New System.Drawing.Size(568, 22) @@ -1707,7 +1885,7 @@ Namespace Editors TAB_STD.Controls.Add(TP_STD) TAB_STD.Location = New System.Drawing.Point(4, 22) TAB_STD.Name = "TAB_STD" - TAB_STD.Size = New System.Drawing.Size(576, 368) + TAB_STD.Size = New System.Drawing.Size(576, 451) TAB_STD.TabIndex = 10 TAB_STD.Text = "Downloader" ' @@ -1721,13 +1899,18 @@ Namespace Editors TP_STD.Controls.Add(Me.CH_STD_AUTO_REMOVE, 0, 2) TP_STD.Controls.Add(Me.CMB_STD_OPEN_DBL, 0, 3) TP_STD.Controls.Add(Me.CH_STD_TAKESNAP, 0, 4) - TP_STD.Controls.Add(Me.CH_STD_UPDATE_YT_PATH, 0, 5) - TP_STD.Controls.Add(Me.CH_STD_YT_LOAD, 0, 6) - TP_STD.Controls.Add(Me.CH_STD_YT_REMOVE, 0, 7) + TP_STD.Controls.Add(Me.CH_STD_UPDATE_YT_PATH, 0, 7) + TP_STD.Controls.Add(Me.CH_STD_YT_LOAD, 0, 8) + TP_STD.Controls.Add(Me.CH_STD_YT_REMOVE, 0, 9) + TP_STD.Controls.Add(Me.CH_STD_YT_OUTPUT_ASK_NAME, 0, 10) + TP_STD.Controls.Add(Me.CH_STD_YT_OUTPUT_AUTO_ADD, 0, 11) + TP_STD.Controls.Add(Me.BTT_RESET_DOWNLOAD_LOCATIONS, 0, 12) + TP_STD.Controls.Add(Me.CH_STD_SNAP_KEEP_WITH_FILES, 0, 5) + TP_STD.Controls.Add(Me.CH_STD_SNAP_CACHE_PERMANENT, 0, 6) TP_STD.Dock = System.Windows.Forms.DockStyle.Fill TP_STD.Location = New System.Drawing.Point(0, 0) TP_STD.Name = "TP_STD" - TP_STD.RowCount = 9 + TP_STD.RowCount = 14 TP_STD.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) TP_STD.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) TP_STD.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) @@ -1736,8 +1919,13 @@ Namespace Editors TP_STD.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) TP_STD.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) TP_STD.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) + TP_STD.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) + TP_STD.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) + TP_STD.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) + TP_STD.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!)) + TP_STD.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) TP_STD.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) - TP_STD.Size = New System.Drawing.Size(576, 368) + TP_STD.Size = New System.Drawing.Size(576, 451) TP_STD.TabIndex = 0 ' 'TXT_STD_MAX_JOBS_COUNT @@ -1747,6 +1935,7 @@ Namespace Editors Me.TXT_STD_MAX_JOBS_COUNT.CaptionToolTipText = "Maximum number of jobs" Me.TXT_STD_MAX_JOBS_COUNT.ControlMode = PersonalUtilities.Forms.Controls.TextBoxExtended.ControlModes.NumericUpDown Me.TXT_STD_MAX_JOBS_COUNT.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_STD_MAX_JOBS_COUNT.Lines = New String(-1) {} Me.TXT_STD_MAX_JOBS_COUNT.Location = New System.Drawing.Point(4, 4) Me.TXT_STD_MAX_JOBS_COUNT.Name = "TXT_STD_MAX_JOBS_COUNT" Me.TXT_STD_MAX_JOBS_COUNT.NumberMaximum = New Decimal(New Integer() {10, 0, 0, 0}) @@ -1782,10 +1971,10 @@ Namespace Editors ' 'CMB_STD_OPEN_DBL ' - ActionButton25.BackgroundImage = CType(resources.GetObject("ActionButton25.BackgroundImage"), System.Drawing.Image) - ActionButton25.Name = "ArrowDown" - ActionButton25.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.ArrowDown - Me.CMB_STD_OPEN_DBL.Buttons.Add(ActionButton25) + ActionButton27.BackgroundImage = CType(resources.GetObject("ActionButton27.BackgroundImage"), System.Drawing.Image) + ActionButton27.Name = "ArrowDown" + ActionButton27.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.ArrowDown + Me.CMB_STD_OPEN_DBL.Buttons.Add(ActionButton27) Me.CMB_STD_OPEN_DBL.CaptionMode = PersonalUtilities.Forms.Controls.Base.ICaptionControl.Modes.Label Me.CMB_STD_OPEN_DBL.CaptionText = "DoubleClick opens" Me.CMB_STD_OPEN_DBL.CaptionToolTipEnabled = True @@ -1801,6 +1990,7 @@ Namespace Editors Me.CMB_STD_OPEN_DBL.Columns.Add(ListColumn1) Me.CMB_STD_OPEN_DBL.Columns.Add(ListColumn2) Me.CMB_STD_OPEN_DBL.Dock = System.Windows.Forms.DockStyle.Fill + Me.CMB_STD_OPEN_DBL.Lines = New String(-1) {} Me.CMB_STD_OPEN_DBL.Location = New System.Drawing.Point(4, 85) Me.CMB_STD_OPEN_DBL.Name = "CMB_STD_OPEN_DBL" Me.CMB_STD_OPEN_DBL.Size = New System.Drawing.Size(568, 22) @@ -1823,11 +2013,11 @@ Namespace Editors ' Me.CH_STD_UPDATE_YT_PATH.AutoSize = True Me.CH_STD_UPDATE_YT_PATH.Dock = System.Windows.Forms.DockStyle.Fill - Me.CH_STD_UPDATE_YT_PATH.Location = New System.Drawing.Point(4, 140) + Me.CH_STD_UPDATE_YT_PATH.Location = New System.Drawing.Point(4, 192) Me.CH_STD_UPDATE_YT_PATH.Name = "CH_STD_UPDATE_YT_PATH" Me.CH_STD_UPDATE_YT_PATH.Padding = New System.Windows.Forms.Padding(100, 0, 0, 0) Me.CH_STD_UPDATE_YT_PATH.Size = New System.Drawing.Size(568, 19) - Me.CH_STD_UPDATE_YT_PATH.TabIndex = 5 + Me.CH_STD_UPDATE_YT_PATH.TabIndex = 7 Me.CH_STD_UPDATE_YT_PATH.Text = "Update the YouTube output path when you change the output path." Me.CH_STD_UPDATE_YT_PATH.UseVisualStyleBackColor = True ' @@ -1846,7 +2036,7 @@ Namespace Editors Me.TAB_MAIN.Location = New System.Drawing.Point(0, 0) Me.TAB_MAIN.Name = "TAB_MAIN" Me.TAB_MAIN.SelectedIndex = 0 - Me.TAB_MAIN.Size = New System.Drawing.Size(584, 394) + Me.TAB_MAIN.Size = New System.Drawing.Size(584, 477) Me.TAB_MAIN.TabIndex = 1 ' 'TAB_ENVIR @@ -1854,7 +2044,7 @@ Namespace Editors Me.TAB_ENVIR.Controls.Add(TP_ENVIR) Me.TAB_ENVIR.Location = New System.Drawing.Point(4, 22) Me.TAB_ENVIR.Name = "TAB_ENVIR" - Me.TAB_ENVIR.Size = New System.Drawing.Size(576, 368) + Me.TAB_ENVIR.Size = New System.Drawing.Size(576, 451) Me.TAB_ENVIR.TabIndex = 9 Me.TAB_ENVIR.Text = "Environment" ' @@ -1864,40 +2054,40 @@ Namespace Editors 'CONTAINER_MAIN.ContentPanel ' Me.CONTAINER_MAIN.ContentPanel.Controls.Add(Me.TAB_MAIN) - Me.CONTAINER_MAIN.ContentPanel.Size = New System.Drawing.Size(584, 394) + Me.CONTAINER_MAIN.ContentPanel.Size = New System.Drawing.Size(584, 477) Me.CONTAINER_MAIN.Dock = System.Windows.Forms.DockStyle.Fill Me.CONTAINER_MAIN.LeftToolStripPanelVisible = False Me.CONTAINER_MAIN.Location = New System.Drawing.Point(0, 0) Me.CONTAINER_MAIN.Name = "CONTAINER_MAIN" Me.CONTAINER_MAIN.RightToolStripPanelVisible = False - Me.CONTAINER_MAIN.Size = New System.Drawing.Size(584, 394) + Me.CONTAINER_MAIN.Size = New System.Drawing.Size(584, 477) Me.CONTAINER_MAIN.TabIndex = 0 Me.CONTAINER_MAIN.TopToolStripPanelVisible = False ' - 'CH_UICON_UP + 'CH_FEED_SHOW_FRIENDLY ' - Me.CH_UICON_UP.AutoSize = True - Me.CH_UICON_UP.Dock = System.Windows.Forms.DockStyle.Fill - Me.CH_UICON_UP.Location = New System.Drawing.Point(4, 56) - Me.CH_UICON_UP.Name = "CH_UICON_UP" - Me.CH_UICON_UP.Size = New System.Drawing.Size(568, 19) - Me.CH_UICON_UP.TabIndex = 2 - Me.CH_UICON_UP.Text = "Update user icon and banner every time (where supported)" - Me.CH_UICON_UP.UseVisualStyleBackColor = True + Me.CH_FEED_SHOW_FRIENDLY.AutoSize = True + Me.CH_FEED_SHOW_FRIENDLY.Dock = System.Windows.Forms.DockStyle.Fill + Me.CH_FEED_SHOW_FRIENDLY.Location = New System.Drawing.Point(4, 218) + Me.CH_FEED_SHOW_FRIENDLY.Name = "CH_FEED_SHOW_FRIENDLY" + Me.CH_FEED_SHOW_FRIENDLY.Size = New System.Drawing.Size(568, 19) + Me.CH_FEED_SHOW_FRIENDLY.TabIndex = 8 + Me.CH_FEED_SHOW_FRIENDLY.Text = "Show friendly names instead of usernames" + Me.CH_FEED_SHOW_FRIENDLY.UseVisualStyleBackColor = True ' 'GlobalSettingsForm ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font - Me.ClientSize = New System.Drawing.Size(584, 394) + Me.ClientSize = New System.Drawing.Size(584, 477) Me.Controls.Add(Me.CONTAINER_MAIN) Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle Me.Icon = Global.SCrawler.My.Resources.Resources.SettingsIcon_48 Me.KeyPreview = True Me.MaximizeBox = False - Me.MaximumSize = New System.Drawing.Size(600, 433) + Me.MaximumSize = New System.Drawing.Size(600, 516) Me.MinimizeBox = False - Me.MinimumSize = New System.Drawing.Size(600, 433) + Me.MinimumSize = New System.Drawing.Size(600, 516) Me.Name = "GlobalSettingsForm" Me.ShowInTaskbar = False Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide @@ -1914,6 +2104,8 @@ Namespace Editors CType(Me.TXT_IMGUR_CLIENT_ID, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.TXT_USER_AGENT, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.TXT_USER_LIST_IMAGE, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.TXT_PRG_TITLE, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.TXT_PRG_DESCR, System.ComponentModel.ISupportInitialize).EndInit() TP_FILE_NAME.ResumeLayout(False) TP_FILE_NAME.PerformLayout() TP_FILE_PATTERNS.ResumeLayout(False) @@ -2056,5 +2248,15 @@ Namespace Editors Private WithEvents CH_STD_YT_LOAD As CheckBox Private WithEvents CH_STD_YT_REMOVE As CheckBox Private WithEvents CH_UICON_UP As CheckBox + Private WithEvents COLORS_SUBSCRIPTIONS As ColorPicker + Private WithEvents CH_FEED_OPEN_LAST_MODE As CheckBox + Private WithEvents CH_STD_YT_OUTPUT_ASK_NAME As CheckBox + Private WithEvents CH_STD_YT_OUTPUT_AUTO_ADD As CheckBox + Private WithEvents BTT_RESET_DOWNLOAD_LOCATIONS As Button + Private WithEvents CH_STD_SNAP_KEEP_WITH_FILES As CheckBox + Private WithEvents CH_STD_SNAP_CACHE_PERMANENT As CheckBox + Private WithEvents TXT_PRG_TITLE As PersonalUtilities.Forms.Controls.TextBoxExtended + Private WithEvents TXT_PRG_DESCR As PersonalUtilities.Forms.Controls.TextBoxExtended + Private WithEvents CH_FEED_SHOW_FRIENDLY As CheckBox End Class End Namespace \ No newline at end of file diff --git a/SCrawler/Editors/GlobalSettingsForm.resx b/SCrawler/Editors/GlobalSettingsForm.resx index 1ff4215..847ff0a 100644 --- a/SCrawler/Editors/GlobalSettingsForm.resx +++ b/SCrawler/Editors/GlobalSettingsForm.resx @@ -238,6 +238,22 @@ xAAADsQBlSsOGwAAAIZJREFUOE+1j10KwCAMgz2b755xl/IsvnaL2K20UfbDAmEako+ZROSTafjE12Go tbbB43rK5xSAQq1VYFtmeQBoqZTSreVZvgTknM8yyyjA/qodsDF9gspD2Bj6B+DH+NqzhQQAG+POMnSX AFuc5QFgn6ClHh5iOQVAKNixyucB8NY0vG9JOzzyhrdq5IRgAAAAAElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + xAAADsQBlSsOGwAAAIZJREFUOE+1j10KwCAMgz2b755xl/IsvnaL2K20UfbDAmEako+ZROSTafjE12Go + tbbB43rK5xSAQq1VYFtmeQBoqZTSreVZvgTknM8yyyjA/qodsDF9gspD2Bj6B+DH+NqzhQQAG+POMnSX + AFuc5QFgn6ClHh5iOQVAKNixyucB8NY0vG9JOzzyhrdq5IRgAAAAAElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + xAAADsQBlSsOGwAAAIZJREFUOE+1j10KwCAMgz2b755xl/IsvnaL2K20UfbDAmEako+ZROSTafjE12Go + tbbB43rK5xSAQq1VYFtmeQBoqZTSreVZvgTknM8yyyjA/qodsDF9gspD2Bj6B+DH+NqzhQQAG+POMnSX + AFuc5QFgn6ClHh5iOQVAKNixyucB8NY0vG9JOzzyhrdq5IRgAAAAAElFTkSuQmCC @@ -288,7 +304,7 @@ You can find more detailed information about the missing posts in the form that False - + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO xAAADsQBlSsOGwAAAIZJREFUOE+1j10KwCAMgz2b755xl/IsvnaL2K20UfbDAmEako+ZROSTafjE12Go @@ -296,7 +312,7 @@ You can find more detailed information about the missing posts in the form that AFuc5QFgn6ClHh5iOQVAKNixyucB8NY0vG9JOzzyhrdq5IRgAAAAAElFTkSuQmCC - + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO xAAADsQBlSsOGwAAAIZJREFUOE+1j10KwCAMgz2b755xl/IsvnaL2K20UfbDAmEako+ZROSTafjE12Go @@ -316,7 +332,7 @@ You can find more detailed information about the missing posts in the form that False - + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO wwAADsMBx2+oZAAAAR5JREFUOE+VkjFqwzAUhn2D9iShRyi+QhYbGujg3ZATZPKYdC6FQhPwlAMkg3dP @@ -327,7 +343,7 @@ You can find more detailed information about the missing posts in the form that cMaRN0UdBBkAAAAASUVORK5CYII= - + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO xAAADsQBlSsOGwAAAIZJREFUOE+1j10KwCAMgz2b755xl/IsvnaL2K20UfbDAmEako+ZROSTafjE12Go @@ -356,25 +372,6 @@ You can find more detailed information about the missing posts in the form that False - - - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO - wwAADsMBx2+oZAAAAR5JREFUOE+VkjFqwzAUhn2D9iShRyi+QhYbGujg3ZATZPKYdC6FQhPwlAMkg3dP - WQwhyWIyJIUW5NqyPb7oCVtIlhVTwYf8nv7/t2zJagel9KmqKsIACYL9RjI8UHz5zshougZr/AEvbxEP - aZCDBY3VslixaJvX3wzkkDiOwbZtDRGA5vdNAg+TL27qgmt5XkBG/gTdAG7Gt+3PP9oOaEGFCVEC6rp+ - 5g9MfM/c5e4OsEZMZkQEtGL5H2DdZ5JRArDwPA+iKII0TfkC9vroC9j5vq8JTWw3WzWgLMtZGIaa0MR8 - vlAD8PYlSaIJTTiOowY0p0Bc19XEJo6HE59FAPuMzyAINKGJ1XLFZxHALtMrnkBXOIQIIIQ8YvF/KrgB - cMaRN0UdBBkAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO - xAAADsQBlSsOGwAAAIZJREFUOE+1j10KwCAMgz2b755xl/IsvnaL2K20UfbDAmEako+ZROSTafjE12Go - tbbB43rK5xSAQq1VYFtmeQBoqZTSreVZvgTknM8yyyjA/qodsDF9gspD2Bj6B+DH+NqzhQQAG+POMnSX - AFuc5QFgn6ClHh5iOQVAKNixyucB8NY0vG9JOzzyhrdq5IRgAAAAAElFTkSuQmCC - - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO @@ -433,6 +430,25 @@ You can find more detailed information about the missing posts in the form that + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + wwAADsMBx2+oZAAAAR5JREFUOE+VkjFqwzAUhn2D9iShRyi+QhYbGujg3ZATZPKYdC6FQhPwlAMkg3dP + WQwhyWIyJIUW5NqyPb7oCVtIlhVTwYf8nv7/t2zJagel9KmqKsIACYL9RjI8UHz5zshougZr/AEvbxEP + aZCDBY3VslixaJvX3wzkkDiOwbZtDRGA5vdNAg+TL27qgmt5XkBG/gTdAG7Gt+3PP9oOaEGFCVEC6rp+ + 5g9MfM/c5e4OsEZMZkQEtGL5H2DdZ5JRArDwPA+iKII0TfkC9vroC9j5vq8JTWw3WzWgLMtZGIaa0MR8 + vlAD8PYlSaIJTTiOowY0p0Bc19XEJo6HE59FAPuMzyAINKGJ1XLFZxHALtMrnkBXOIQIIIQ8YvF/KrgB + cMaRN0UdBBkAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + xAAADsQBlSsOGwAAAIZJREFUOE+1j10KwCAMgz2b755xl/IsvnaL2K20UfbDAmEako+ZROSTafjE12Go + tbbB43rK5xSAQq1VYFtmeQBoqZTSreVZvgTknM8yyyjA/qodsDF9gspD2Bj6B+DH+NqzhQQAG+POMnSX + AFuc5QFgn6ClHh5iOQVAKNixyucB8NY0vG9JOzzyhrdq5IRgAAAAAElFTkSuQmCC + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6 JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAACXBIWXMAAAsTAAALEwEAmpwYAAACOElE @@ -448,7 +464,7 @@ You can find more detailed information about the missing posts in the form that VnR1MIwhwMTCyqEQ37qEmZVDFF0OE/9nAACtFF4Ey6OP+wAAAABJRU5ErkJggg== - + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO xAAADsQBlSsOGwAAAIZJREFUOE+1j10KwCAMgz2b755xl/IsvnaL2K20UfbDAmEako+ZROSTafjE12Go @@ -462,7 +478,7 @@ You can find more detailed information about the missing posts in the form that False - + iVBORw0KGgoAAAANSUhEUgAAAgAAAAIACAYAAAD0eNT6AAAABGdBTUEAALGPC/xhBQAAE65JREFUeF7t 3X2sJWddB/DdLi2lQG2hdOHuvfM887J7Cxca4ELTQMDWKigIFpBAEAgi9g+CJpJo9Q8NJhgBiYZIYspL diff --git a/SCrawler/Editors/GlobalSettingsForm.vb b/SCrawler/Editors/GlobalSettingsForm.vb index 34d205c..d49e5e4 100644 --- a/SCrawler/Editors/GlobalSettingsForm.vb +++ b/SCrawler/Editors/GlobalSettingsForm.vb @@ -33,10 +33,14 @@ Namespace Editors TXT_MAX_JOBS_USERS.Value = .MaxUsersJobsCount.Value TXT_MAX_JOBS_CHANNELS.Value = .ChannelsMaxJobsCount.Value CH_CHECK_VER_START.Checked = .CheckUpdatesAtStart + TXT_PRG_TITLE.Text = .ProgramText + TXT_PRG_DESCR.Text = .ProgramDescription TXT_USER_AGENT.Text = .UserAgent TXT_IMGUR_CLIENT_ID.Text = .ImgurClientID TXT_USER_LIST_IMAGE.Text = .UserListImage.Value COLORS_USERLIST.ColorsSet(.UserListBackColor, .UserListForeColor, SystemColors.Window, SystemColors.WindowText) + COLORS_SUBSCRIPTIONS.ColorsSet(.MainFrameUsersSubscriptionsColorBack, .MainFrameUsersSubscriptionsColorFore, + SystemColors.Window, SystemColors.WindowText) CH_SHOW_GROUPS.Checked = .ShowGroups CH_USERS_GROUPING.Checked = .UseGrouping 'Environment @@ -83,9 +87,13 @@ Namespace Editors CMB_STD_OPEN_DBL.EndUpdate(True) CMB_STD_OPEN_DBL.SelectedIndex = [Enum].GetValues(GetType(StdDblClck)).ToObjectsList(Of StdDblClck).ToList.IndexOf(.STDownloader_OnItemDoubleClick.Value) CH_STD_TAKESNAP.Checked = .STDownloader_TakeSnapshot + CH_STD_SNAP_KEEP_WITH_FILES.Checked = .STDownloader_SnapshotsKeepWithFiles + CH_STD_SNAP_CACHE_PERMANENT.Checked = .STDownloader_SnapShotsCachePermamnent CH_STD_UPDATE_YT_PATH.Checked = .STDownloader_UpdateYouTubeOutputPath CH_STD_YT_LOAD.Checked = .STDownloader_LoadYTVideos CH_STD_YT_REMOVE.Checked = .STDownloader_RemoveYTVideosOnClear + CH_STD_YT_OUTPUT_ASK_NAME.Checked = .STDownloader_OutputPathAskForName + CH_STD_YT_OUTPUT_AUTO_ADD.Checked = .STDownloader_OutputPathAutoAddPaths 'Downloading CH_UDESCR_UP.Checked = .UpdateUserDescriptionEveryTime CH_UNAME_UP.Checked = .UserSiteNameUpdateEveryTime @@ -125,6 +133,8 @@ Namespace Editors CH_FEED_ADD_SESSION.Checked = .FeedAddSessionToCaption CH_FEED_ADD_DATE.Checked = .FeedAddDateToCaption CH_FEED_STORE_SESSION_DATA.Checked = .FeedStoreSessionsData + CH_FEED_OPEN_LAST_MODE.Checked = .FeedOpenLastMode + CH_FEED_SHOW_FRIENDLY.Checked = .FeedShowFriendlyNames End With .MyFieldsChecker = New FieldsChecker With .MyFieldsCheckerE @@ -191,11 +201,14 @@ Namespace Editors .MaxUsersJobsCount.Value = CInt(TXT_MAX_JOBS_USERS.Value) .ChannelsMaxJobsCount.Value = TXT_MAX_JOBS_CHANNELS.Value .CheckUpdatesAtStart.Value = CH_CHECK_VER_START.Checked + .ProgramText.Value = TXT_PRG_TITLE.Text + .ProgramDescription.Value = TXT_PRG_DESCR.Text .UserAgent.Value = TXT_USER_AGENT.Text DefaultUserAgent = TXT_USER_AGENT.Text .ImgurClientID.Value = TXT_IMGUR_CLIENT_ID.Text .UserListImage.Value = TXT_USER_LIST_IMAGE.Text COLORS_USERLIST.ColorsGet(.UserListBackColor, .UserListForeColor) + COLORS_SUBSCRIPTIONS.ColorsGet(.MainFrameUsersSubscriptionsColorBack, .MainFrameUsersSubscriptionsColorFore) .ShowGroups.Value = CH_SHOW_GROUPS.Checked .UseGrouping.Value = CH_USERS_GROUPING.Checked 'Environment @@ -239,9 +252,13 @@ Namespace Editors .STDownloader_RemoveDownloadedAutomatically.Value = CH_STD_AUTO_REMOVE.Checked .STDownloader_OnItemDoubleClick.Value = CInt(CMB_STD_OPEN_DBL.Value) .STDownloader_TakeSnapshot.Value = CH_STD_TAKESNAP.Checked + .STDownloader_SnapshotsKeepWithFiles.Value = CH_STD_SNAP_KEEP_WITH_FILES.Checked + .STDownloader_SnapShotsCachePermamnent.Value = CH_STD_SNAP_CACHE_PERMANENT.Checked .STDownloader_UpdateYouTubeOutputPath.Value = CH_STD_UPDATE_YT_PATH.Checked .STDownloader_LoadYTVideos.Value = CH_STD_YT_LOAD.Checked .STDownloader_RemoveYTVideosOnClear.Value = CH_STD_YT_REMOVE.Checked + .STDownloader_OutputPathAskForName.Value = CH_STD_YT_OUTPUT_ASK_NAME.Checked + .STDownloader_OutputPathAutoAddPaths.Value = CH_STD_YT_OUTPUT_AUTO_ADD.Checked 'Downloading .UpdateUserDescriptionEveryTime.Value = CH_UDESCR_UP.Checked .UserSiteNameUpdateEveryTime.Value = CH_UNAME_UP.Checked @@ -282,6 +299,8 @@ Namespace Editors .FeedAddSessionToCaption.Value = CH_FEED_ADD_SESSION.Checked .FeedAddDateToCaption.Value = CH_FEED_ADD_DATE.Checked .FeedStoreSessionsData.Value = CH_FEED_STORE_SESSION_DATA.Checked + .FeedOpenLastMode.Value = CH_FEED_OPEN_LAST_MODE.Checked + .FeedShowFriendlyNames.Value = CH_FEED_SHOW_FRIENDLY.Checked FeedParametersChanged = .FeedDataRows.ChangesDetected Or .FeedDataColumns.ChangesDetected Or .FeedEndless.ChangesDetected Or .FeedStoreSessionsData.ChangesDetected Or .FeedBackColor.ChangesDetected Or .FeedForeColor.ChangesDetected Or @@ -364,5 +383,18 @@ Namespace Editors Private Sub TXT_CMD_ENCODING_ActionOnButtonClick(ByVal Sender As ActionButton, ByVal e As ActionButtonEventArgs) Handles TXT_CMD_ENCODING.ActionOnButtonClick If Sender.DefaultButton = ADB.Refresh Then TXT_CMD_ENCODING.Text = SettingsCLS.DefaultCmdEncoding End Sub + Private Sub BTT_RESET_DOWNLOAD_LOCATIONS_Click(sender As Object, e As EventArgs) Handles BTT_RESET_DOWNLOAD_LOCATIONS.Click + Try + Const msgTitle$ = "Reset download locations" + If Settings.DownloadLocations.Count = 0 Then + MsgBoxE({"There are no saved download locations.", msgTitle}) + ElseIf MsgBoxE({$"Are you sure you want to delete all ({Settings.DownloadLocations.Count}) download locations?", msgTitle}, + vbExclamation + vbYesNo) = vbYes Then + Settings.DownloadLocations.Clear() + MsgBoxE({"All download locations deleted.", msgTitle}) + End If + Catch + End Try + End Sub End Class End Namespace \ No newline at end of file diff --git a/SCrawler/Editors/UserCreatorForm.Designer.vb b/SCrawler/Editors/UserCreatorForm.Designer.vb index 1d427e9..84340b4 100644 --- a/SCrawler/Editors/UserCreatorForm.Designer.vb +++ b/SCrawler/Editors/UserCreatorForm.Designer.vb @@ -36,6 +36,7 @@ Namespace Editors Dim ActionButton6 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Dim ActionButton7 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Dim ActionButton8 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() + Dim ActionButton9 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton() Me.CH_PARSE_USER_MEDIA = New System.Windows.Forms.CheckBox() Me.CH_READY_FOR_DOWN = New System.Windows.Forms.CheckBox() Me.BTT_OTHER_SETTINGS = New System.Windows.Forms.Button() @@ -56,8 +57,9 @@ Namespace Editors Me.TP_DOWN_IMG_VID = New System.Windows.Forms.TableLayoutPanel() Me.CH_DOWN_IMAGES = New System.Windows.Forms.CheckBox() Me.CH_DOWN_VIDEOS = New System.Windows.Forms.CheckBox() - Me.TXT_SPEC_FOLDER = New PersonalUtilities.Forms.Controls.TextBoxExtended() + Me.TXT_SPEC_FOLDER = New PersonalUtilities.Forms.Controls.ComboBoxExtended() Me.TXT_SCRIPT = New PersonalUtilities.Forms.Controls.TextBoxExtended() + Me.COLOR_USER = New SCrawler.Editors.ColorPicker() TT_MAIN = New System.Windows.Forms.ToolTip(Me.components) CONTAINER_MAIN = New System.Windows.Forms.ToolStripContainer() CONTAINER_MAIN.ContentPanel.SuspendLayout() @@ -105,10 +107,10 @@ Namespace Editors 'BTT_OTHER_SETTINGS ' Me.BTT_OTHER_SETTINGS.Dock = System.Windows.Forms.DockStyle.Fill - Me.BTT_OTHER_SETTINGS.Location = New System.Drawing.Point(1, 1) + Me.BTT_OTHER_SETTINGS.Location = New System.Drawing.Point(353, 1) Me.BTT_OTHER_SETTINGS.Margin = New System.Windows.Forms.Padding(1) Me.BTT_OTHER_SETTINGS.Name = "BTT_OTHER_SETTINGS" - Me.BTT_OTHER_SETTINGS.Size = New System.Drawing.Size(101, 26) + Me.BTT_OTHER_SETTINGS.Size = New System.Drawing.Size(98, 26) Me.BTT_OTHER_SETTINGS.TabIndex = 1 Me.BTT_OTHER_SETTINGS.Text = "Options (F2)" TT_MAIN.SetToolTip(Me.BTT_OTHER_SETTINGS, "Other settings") @@ -139,17 +141,18 @@ Namespace Editors Me.TP_MAIN.Controls.Add(Me.TP_SITE, 0, 3) Me.TP_MAIN.Controls.Add(Me.TP_TEMP_FAV, 0, 4) Me.TP_MAIN.Controls.Add(Me.TP_READY_USERMEDIA, 0, 6) - Me.TP_MAIN.Controls.Add(Me.TXT_DESCR, 0, 10) + Me.TP_MAIN.Controls.Add(Me.TXT_DESCR, 0, 11) Me.TP_MAIN.Controls.Add(Me.TXT_USER_FRIENDLY, 0, 1) Me.TP_MAIN.Controls.Add(Me.TP_ADD_BY_LIST, 0, 7) Me.TP_MAIN.Controls.Add(Me.TXT_LABELS, 0, 8) Me.TP_MAIN.Controls.Add(Me.TP_DOWN_IMG_VID, 0, 5) Me.TP_MAIN.Controls.Add(Me.TXT_SPEC_FOLDER, 0, 2) - Me.TP_MAIN.Controls.Add(Me.TXT_SCRIPT, 0, 9) + Me.TP_MAIN.Controls.Add(Me.TXT_SCRIPT, 0, 10) + Me.TP_MAIN.Controls.Add(Me.COLOR_USER, 0, 9) Me.TP_MAIN.Dock = System.Windows.Forms.DockStyle.Fill Me.TP_MAIN.Location = New System.Drawing.Point(0, 0) Me.TP_MAIN.Name = "TP_MAIN" - Me.TP_MAIN.RowCount = 11 + Me.TP_MAIN.RowCount = 12 Me.TP_MAIN.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) Me.TP_MAIN.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) Me.TP_MAIN.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) @@ -160,6 +163,7 @@ Namespace Editors Me.TP_MAIN.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!)) Me.TP_MAIN.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 26.0!)) Me.TP_MAIN.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 26.0!)) + Me.TP_MAIN.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 26.0!)) Me.TP_MAIN.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) Me.TP_MAIN.Size = New System.Drawing.Size(454, 461) Me.TP_MAIN.TabIndex = 0 @@ -167,7 +171,10 @@ Namespace Editors 'TXT_USER ' Me.TXT_USER.CaptionText = "User name" + Me.TXT_USER.CaptionToolTipEnabled = True + Me.TXT_USER.CaptionToolTipText = "You must enter the user's URL in this field." Me.TXT_USER.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_USER.Lines = New String(-1) {} Me.TXT_USER.Location = New System.Drawing.Point(4, 4) Me.TXT_USER.Name = "TXT_USER" Me.TXT_USER.PlaceholderEnabled = True @@ -178,11 +185,11 @@ Namespace Editors 'TP_SITE ' Me.TP_SITE.ColumnCount = 2 - Me.TP_SITE.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 103.0!)) Me.TP_SITE.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100.0!)) + Me.TP_SITE.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 100.0!)) Me.TP_SITE.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 20.0!)) - Me.TP_SITE.Controls.Add(Me.CMB_SITE, 1, 0) - Me.TP_SITE.Controls.Add(Me.BTT_OTHER_SETTINGS, 0, 0) + Me.TP_SITE.Controls.Add(Me.CMB_SITE, 0, 0) + Me.TP_SITE.Controls.Add(Me.BTT_OTHER_SETTINGS, 1, 0) Me.TP_SITE.Dock = System.Windows.Forms.DockStyle.Fill Me.TP_SITE.Location = New System.Drawing.Point(1, 88) Me.TP_SITE.Margin = New System.Windows.Forms.Padding(0) @@ -197,6 +204,16 @@ Namespace Editors ActionButton1.BackgroundImage = CType(resources.GetObject("ActionButton1.BackgroundImage"), System.Drawing.Image) ActionButton1.Name = "ArrowDown" Me.CMB_SITE.Buttons.Add(ActionButton1) + Me.CMB_SITE.CaptionCheckAlign = System.Drawing.ContentAlignment.MiddleLeft + Me.CMB_SITE.CaptionMargin = New System.Windows.Forms.Padding(4, 3, 3, 3) + Me.CMB_SITE.CaptionMode = PersonalUtilities.Forms.Controls.Base.ICaptionControl.Modes.CheckBox + Me.CMB_SITE.CaptionText = "Subscription" + Me.CMB_SITE.CaptionTextAlign = System.Drawing.ContentAlignment.MiddleLeft + Me.CMB_SITE.CaptionToolTipEnabled = True + Me.CMB_SITE.CaptionToolTipText = resources.GetString("CMB_SITE.CaptionToolTipText") + Me.CMB_SITE.CaptionVisible = True + Me.CMB_SITE.CaptionWidth = 103.0R + Me.CMB_SITE.ChangeControlsEnableOnCheckedChange = False ListColumn1.Name = "_COL_KEY" ListColumn1.Text = "Key" ListColumn1.ValueMember = True @@ -208,10 +225,11 @@ Namespace Editors Me.CMB_SITE.Columns.Add(ListColumn1) Me.CMB_SITE.Columns.Add(ListColumn2) Me.CMB_SITE.Dock = System.Windows.Forms.DockStyle.Fill - Me.CMB_SITE.Location = New System.Drawing.Point(103, 3) + Me.CMB_SITE.Lines = New String(-1) {} + Me.CMB_SITE.Location = New System.Drawing.Point(0, 3) Me.CMB_SITE.Margin = New System.Windows.Forms.Padding(0, 3, 3, 3) Me.CMB_SITE.Name = "CMB_SITE" - Me.CMB_SITE.Size = New System.Drawing.Size(346, 22) + Me.CMB_SITE.Size = New System.Drawing.Size(349, 22) Me.CMB_SITE.TabIndex = 0 Me.CMB_SITE.TextBoxBorderStyle = System.Windows.Forms.BorderStyle.FixedSingle ' @@ -285,16 +303,18 @@ Namespace Editors Me.TXT_DESCR.Dock = System.Windows.Forms.DockStyle.Fill Me.TXT_DESCR.GroupBoxed = True Me.TXT_DESCR.GroupBoxText = "Description" - Me.TXT_DESCR.Location = New System.Drawing.Point(4, 290) + Me.TXT_DESCR.Lines = New String(-1) {} + Me.TXT_DESCR.Location = New System.Drawing.Point(4, 317) Me.TXT_DESCR.Multiline = True Me.TXT_DESCR.Name = "TXT_DESCR" - Me.TXT_DESCR.Size = New System.Drawing.Size(446, 167) - Me.TXT_DESCR.TabIndex = 10 + Me.TXT_DESCR.Size = New System.Drawing.Size(446, 140) + Me.TXT_DESCR.TabIndex = 11 ' 'TXT_USER_FRIENDLY ' Me.TXT_USER_FRIENDLY.CaptionText = "Friendly name" Me.TXT_USER_FRIENDLY.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_USER_FRIENDLY.Lines = New String(-1) {} Me.TXT_USER_FRIENDLY.Location = New System.Drawing.Point(4, 33) Me.TXT_USER_FRIENDLY.Name = "TXT_USER_FRIENDLY" Me.TXT_USER_FRIENDLY.Size = New System.Drawing.Size(446, 22) @@ -351,6 +371,7 @@ Namespace Editors Me.TXT_LABELS.CaptionText = "Labels" Me.TXT_LABELS.CaptionWidth = 50.0R Me.TXT_LABELS.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_LABELS.Lines = New String(-1) {} Me.TXT_LABELS.Location = New System.Drawing.Point(4, 235) Me.TXT_LABELS.Margin = New System.Windows.Forms.Padding(3, 2, 3, 3) Me.TXT_LABELS.Name = "TXT_LABELS" @@ -406,38 +427,59 @@ Namespace Editors ActionButton6.BackgroundImage = CType(resources.GetObject("ActionButton6.BackgroundImage"), System.Drawing.Image) ActionButton6.Name = "Clear" ActionButton6.ToolTipText = "Clear" + ActionButton7.BackgroundImage = CType(resources.GetObject("ActionButton7.BackgroundImage"), System.Drawing.Image) + ActionButton7.Name = "ArrowDown" + ActionButton7.Tag = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons.ArrowDown Me.TXT_SPEC_FOLDER.Buttons.Add(ActionButton5) Me.TXT_SPEC_FOLDER.Buttons.Add(ActionButton6) + Me.TXT_SPEC_FOLDER.Buttons.Add(ActionButton7) + Me.TXT_SPEC_FOLDER.CaptionMode = PersonalUtilities.Forms.Controls.Base.ICaptionControl.Modes.Label Me.TXT_SPEC_FOLDER.CaptionText = "Special path" + Me.TXT_SPEC_FOLDER.CaptionVisible = True Me.TXT_SPEC_FOLDER.Dock = System.Windows.Forms.DockStyle.Fill + Me.TXT_SPEC_FOLDER.Lines = New String(-1) {} Me.TXT_SPEC_FOLDER.Location = New System.Drawing.Point(4, 62) Me.TXT_SPEC_FOLDER.Name = "TXT_SPEC_FOLDER" Me.TXT_SPEC_FOLDER.Size = New System.Drawing.Size(446, 22) Me.TXT_SPEC_FOLDER.TabIndex = 2 + Me.TXT_SPEC_FOLDER.TextBoxBorderStyle = System.Windows.Forms.BorderStyle.FixedSingle ' 'TXT_SCRIPT ' - ActionButton7.BackgroundImage = CType(resources.GetObject("ActionButton7.BackgroundImage"), System.Drawing.Image) - ActionButton7.Enabled = False - ActionButton7.Name = "Open" ActionButton8.BackgroundImage = CType(resources.GetObject("ActionButton8.BackgroundImage"), System.Drawing.Image) ActionButton8.Enabled = False - ActionButton8.Name = "Clear" - Me.TXT_SCRIPT.Buttons.Add(ActionButton7) + ActionButton8.Name = "Open" + ActionButton9.BackgroundImage = CType(resources.GetObject("ActionButton9.BackgroundImage"), System.Drawing.Image) + ActionButton9.Enabled = False + ActionButton9.Name = "Clear" Me.TXT_SCRIPT.Buttons.Add(ActionButton8) + Me.TXT_SCRIPT.Buttons.Add(ActionButton9) Me.TXT_SCRIPT.CaptionMode = PersonalUtilities.Forms.Controls.Base.ICaptionControl.Modes.CheckBox Me.TXT_SCRIPT.CaptionText = "Script" Me.TXT_SCRIPT.CaptionToolTipEnabled = True Me.TXT_SCRIPT.CaptionToolTipText = "Execute script after downloading this user" Me.TXT_SCRIPT.CaptionWidth = 65.0R Me.TXT_SCRIPT.Dock = System.Windows.Forms.DockStyle.Fill - Me.TXT_SCRIPT.Location = New System.Drawing.Point(4, 262) + Me.TXT_SCRIPT.Lines = New String(-1) {} + Me.TXT_SCRIPT.Location = New System.Drawing.Point(4, 289) Me.TXT_SCRIPT.Margin = New System.Windows.Forms.Padding(3, 2, 3, 3) Me.TXT_SCRIPT.Name = "TXT_SCRIPT" Me.TXT_SCRIPT.PlaceholderEnabled = True Me.TXT_SCRIPT.PlaceholderText = "Leave blank to use the default script..." Me.TXT_SCRIPT.Size = New System.Drawing.Size(446, 22) - Me.TXT_SCRIPT.TabIndex = 9 + Me.TXT_SCRIPT.TabIndex = 10 + ' + 'COLOR_USER + ' + Me.COLOR_USER.ButtonsMargin = New System.Windows.Forms.Padding(1) + Me.COLOR_USER.CaptionText = "Color" + Me.COLOR_USER.CaptionWidth = 55 + Me.COLOR_USER.Dock = System.Windows.Forms.DockStyle.Fill + Me.COLOR_USER.Location = New System.Drawing.Point(2, 261) + Me.COLOR_USER.Margin = New System.Windows.Forms.Padding(1, 1, 2, 1) + Me.COLOR_USER.Name = "COLOR_USER" + Me.COLOR_USER.Size = New System.Drawing.Size(449, 24) + Me.COLOR_USER.TabIndex = 9 ' 'UserCreatorForm ' @@ -492,7 +534,7 @@ Namespace Editors Private WithEvents TXT_LABELS As PersonalUtilities.Forms.Controls.TextBoxExtended Private WithEvents CH_DOWN_IMAGES As CheckBox Private WithEvents CH_DOWN_VIDEOS As CheckBox - Private WithEvents TXT_SPEC_FOLDER As PersonalUtilities.Forms.Controls.TextBoxExtended + Private WithEvents TXT_SPEC_FOLDER As PersonalUtilities.Forms.Controls.ComboBoxExtended Private WithEvents CMB_SITE As PersonalUtilities.Forms.Controls.ComboBoxExtended Private WithEvents BTT_OTHER_SETTINGS As Button Private WithEvents TXT_SCRIPT As PersonalUtilities.Forms.Controls.TextBoxExtended @@ -501,5 +543,6 @@ Namespace Editors Private WithEvents TP_TEMP_FAV As TableLayoutPanel Private WithEvents TP_READY_USERMEDIA As TableLayoutPanel Private WithEvents TP_DOWN_IMG_VID As TableLayoutPanel + Private WithEvents COLOR_USER As ColorPicker End Class End Namespace \ No newline at end of file diff --git a/SCrawler/Editors/UserCreatorForm.resx b/SCrawler/Editors/UserCreatorForm.resx index 7e231d4..6c89bed 100644 --- a/SCrawler/Editors/UserCreatorForm.resx +++ b/SCrawler/Editors/UserCreatorForm.resx @@ -216,6 +216,12 @@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA6LEtW/4flgYiLD1qeX0A AAAASUVORK5CYII= + + + Create a subscription instead of a user. +This mode means that files will not be downloaded. Instead, a video preview (screenshot) will be loaded. You can choose what to download, open a post, etc. +The download goes through a standalone downloader. +You can see downloaded subscriptions in the feed. @@ -264,6 +270,96 @@ + + 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 + AAAASUVORK5CYII= + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO wwAADsMBx2+oZAAAAR5JREFUOE+VkjFqwzAUhn2D9iShRyi+QhYbGujg3ZATZPKYdC6FQhPwlAMkg3dP @@ -274,7 +370,7 @@ cMaRN0UdBBkAAAAASUVORK5CYII= - + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO xAAADsQBlSsOGwAAAIZJREFUOE+1j10KwCAMgz2b755xl/IsvnaL2K20UfbDAmEako+ZROSTafjE12Go diff --git a/SCrawler/Editors/UserCreatorForm.vb b/SCrawler/Editors/UserCreatorForm.vb index 0b2ac0c..656e3b0 100644 --- a/SCrawler/Editors/UserCreatorForm.vb +++ b/SCrawler/Editors/UserCreatorForm.vb @@ -80,8 +80,26 @@ Namespace Editors Return TXT_SCRIPT.Text End Get End Property + Friend ReadOnly Property IsSubscription As Boolean + Get + Return CMB_SITE.Checked + End Get + End Property + Private _UserBackColor As Color? = Nothing + Friend ReadOnly Property UserBackColor As Color? + Get + Return _UserBackColor + End Get + End Property + Private _UserForeColor As Color? = Nothing + Friend ReadOnly Property UserForeColor As Color? + Get + Return _UserForeColor + End Get + End Property Private FriendlyNameIsSiteName As Boolean = False Private FriendlyNameChanged As Boolean = False + Friend Property Options As String = String.Empty #End Region #Region "Exchange, Path, Labels" Friend Property MyExchangeOptions As Object = Nothing @@ -99,7 +117,9 @@ Namespace Editors End If End Get End Property + Private SpecialPathHandler As PathMoverHandler = Nothing Friend ReadOnly Property UserLabels As List(Of String) + Private LabelsIncludeSpecial As Boolean = False #End Region #Region "Initializers" ''' Create new user @@ -146,6 +166,7 @@ Namespace Editors .MyViewInitialize(True) .AddOkCancelToolbar() CH_AUTO_DETECT_SITE.Enabled = False + Settings.GlobalLocations.PopulateComboBox(TXT_SPEC_FOLDER) With CMB_SITE .BeginUpdate() .Items.AddRange(Settings.Plugins.Select(Function(p) New ListItem({p.Key, p.Name}))) @@ -155,6 +176,9 @@ Namespace Editors Dim NameFieldProvider As IFormatProvider = Nothing If UserIsCollection Then + CMB_SITE.CaptionEnabled = False + CMB_SITE.Checked = False + Icon = If(ImageRenderer.GetIcon(My.Resources.DBPic_32, EDP.ReturnValue), Icon) Text = $"Collection: {UserInstance.CollectionName}" @@ -163,6 +187,7 @@ Namespace Editors TXT_USER.Buttons.AddRange({ADB.Refresh, ADB.Clear}) TXT_USER.Buttons.UpdateButtonsPositions() TXT_SPEC_FOLDER.Buttons.Clear() + TXT_SPEC_FOLDER.Buttons.LeaveDefaultButtons = False TXT_SPEC_FOLDER.TextBoxReadOnly = True TXT_SPEC_FOLDER.Buttons.UpdateButtonsPositions() @@ -177,6 +202,7 @@ Namespace Editors .Add(New RowStyle(SizeType.Absolute, 28)) .Add(New RowStyle(SizeType.Absolute, 28)) .Add(New RowStyle(SizeType.Absolute, 26)) + .Add(New RowStyle(SizeType.Absolute, 26)) .Add(New RowStyle(SizeType.Percent, 100)) End With .RowCount = .RowStyles.Count @@ -187,7 +213,8 @@ Namespace Editors .Add(TP_DOWN_IMG_VID, 0, 3) .Add(TP_READY_USERMEDIA, 0, 4) .Add(TXT_LABELS, 0, 5) - .Add(TXT_DESCR, 0, 6) + .Add(COLOR_USER, 0, 6) + .Add(TXT_DESCR, 0, 7) End With .Refresh() .Update() @@ -214,9 +241,12 @@ Namespace Editors CH_DOWN_VIDEOS.CheckState = state(.Item(0).DownloadVideos, Function(p, v) p.DownloadVideos = v) CH_READY_FOR_DOWN.CheckState = state(.Item(0).ReadyForDownload, Function(p, v) p.ReadyForDownload = v) CH_PARSE_USER_MEDIA.CheckState = state(.Item(0).ParseUserMediaOnly, Function(p, v) p.ParseUserMediaOnly = v) + _UserBackColor = .BackColor + _UserForeColor = .ForeColor + COLOR_USER.ColorsSetUser(.BackColor, .ForeColor) TXT_DESCR.Text = .GetUserInformation.StringFormatLines - UserLabels.ListAddList(.Labels) - If UserLabels.ListExists Then TXT_LABELS.Text = UserLabels.ListToString + UpdateSpecificLabels(True) + TXT_LABELS.Buttons.Insert(0, New ActionButton(ADB.Refresh) With {.ToolTipText = "Show/hide site-specific labels"}) End With NameFieldProvider = New CollectionNameFieldProvider @@ -235,14 +265,16 @@ Namespace Editors TXT_SPEC_FOLDER.Text = User.SpecialPath Dim i% = Settings.Plugins.FindIndex(Function(p) p.Key = User.Plugin) If i >= 0 Then CMB_SITE.SelectedIndex = i + CMB_SITE.Checked = User.IsSubscription SetParamsBySite() - CMB_SITE.Enabled = False If Not UserInstance Is Nothing Then + CMB_SITE.Enabled = False Text = $"User: {UserInstance.Name}" If Not UserInstance.FriendlyName.IsEmptyString Then Text &= $" ({UserInstance.FriendlyName})" TXT_USER.Enabled = False TXT_SPEC_FOLDER.TextBoxReadOnly = True TXT_SPEC_FOLDER.Buttons.Clear() + TXT_SPEC_FOLDER.Buttons.LeaveDefaultButtons = False TXT_SPEC_FOLDER.Buttons.UpdateButtonsPositions() With UserInstance If .HOST.Key = PathPlugin.PluginKey Then TXT_SPEC_FOLDER.Enabled = False @@ -263,6 +295,7 @@ Namespace Editors CH_READY_FOR_DOWN.Checked = .ReadyForDownload CH_DOWN_IMAGES.Checked = .DownloadImages CH_DOWN_VIDEOS.Checked = .DownloadVideos + COLOR_USER.ColorsSetUser(.BackColor, .ForeColor) TXT_SCRIPT.Checked = .ScriptUse TXT_SCRIPT.Text = .ScriptData TXT_DESCR.Text = .Description.StringFormatLines @@ -312,6 +345,7 @@ Namespace Editors #End Region #Region "Ok, Cancel" Private Sub MyDef_ButtonOkClick(ByVal Sender As Object, ByVal e As KeyHandleEventArgs) Handles MyDef.ButtonOkClick + Const msgTitle$ = "Create user" If UserIsCollection Then If MyDef.MyFieldsChecker.AllParamsOK Then With UserInstance @@ -321,7 +355,23 @@ Namespace Editors If Not CH_DOWN_VIDEOS.CheckState = CheckState.Indeterminate Then .DownloadVideos = CH_DOWN_VIDEOS.Checked If Not CH_READY_FOR_DOWN.CheckState = CheckState.Indeterminate Then .ReadyForDownload = CH_READY_FOR_DOWN.Checked If Not CH_PARSE_USER_MEDIA.CheckState = CheckState.Indeterminate Then .ParseUserMediaOnly = CH_PARSE_USER_MEDIA.Checked - DirectCast(UserInstance, UserDataBind).Collections.ForEach(Sub(u) u.Labels.ListAddList(UserLabels, LAP.ClearBeforeAdd, LAP.NotContainsOnly)) + + Dim __ubc As Color? = Nothing, __ufc As Color? = Nothing + COLOR_USER.ColorsGetUser(__ubc, __ufc) + Dim __cConv As Func(Of Color?, String) = + Function(__inputColor) If(__inputColor.HasValue, CStr(AConvert(Of String)(__inputColor.Value, String.Empty)), String.Empty) + If Not __cConv(UserBackColor) = __cConv(__ubc) Or Not __cConv(UserForeColor) = __cConv(__ufc) Then + If MsgBoxE({"Are you sure you want to apply the new colors to all users in the collection?", msgTitle}, vbYesNo + vbExclamation) = vbYes Then + .BackColor = __ubc + .ForeColor = __ufc + End If + End If + + If Not .Labels.ListEquals(UserLabels) Then _ + UserDataBase.UpdateLabels(.Self, UserLabels, 1, + Not DirectCast(.Self, UserDataBase).SpecialLabels.ListExists OrElse + UserDataBase.UpdateLabelsKeepSpecial(1)) + CollectionName = TXT_USER.Text .UpdateUserInformation() End With @@ -332,63 +382,74 @@ Namespace Editors If MyDef.MyFieldsChecker.AllParamsOK Then Dim s As SettingsHost = GetSiteByCheckers() If Not s Is Nothing Then - Dim tmpUser As UserInfo = User.Clone - With tmpUser - .Name = TXT_USER.Text - .SpecialPath = SpecialPath(s) - .Site = s.Name - .Plugin = s.Key - .UpdateUserFile() - End With - User = tmpUser - Dim ScriptText$ = TXT_SCRIPT.Text - If Not ScriptText.IsEmptyString Then - Dim f As SFile = ScriptText - If Not SFile.IsDirectory(ScriptText) And Not UserInstance Is Nothing Then - With DirectCast(UserInstance, UserDataBase) : f.Path = .MyFile.Path : End With - End If - TXT_SCRIPT.Text = f - End If - If Not UserInstance Is Nothing Then - With DirectCast(UserInstance, UserDataBase) - .User = User - Dim setFriendly As Boolean = True - If FriendlyNameIsSiteName Then - If Not FriendlyNameChanged Then - setFriendly = False - Else - setFriendly = MsgBoxE({"Are you sure you want to set the site name as the friendly name?" & vbCr & - $"Friendly name: { .FriendlyNameOrig}" & vbCr & - $"Site name: { .UserSiteName}" & vbCr & - $"Your choice: {TXT_USER_FRIENDLY.Text}", "Friendly name change"}, vbExclamation,,, - {"Confirm", New Messaging.MsgBoxButton("Decline", "Friendly name will not be changed")}) = 0 - End If - End If - If setFriendly Then .FriendlyName = TXT_USER_FRIENDLY.Text - .Favorite = CH_FAV.Checked - .Temporary = CH_TEMP.Checked - .ReadyForDownload = CH_READY_FOR_DOWN.Checked - .DownloadImages = CH_DOWN_IMAGES.Checked - .DownloadVideos = CH_DOWN_VIDEOS.Checked - .UserDescription = TXT_DESCR.Text - If Not MyExchangeOptions Is Nothing Then .ExchangeOptionsSet(MyExchangeOptions) - Dim l As New ListAddParams(LAP.NotContainsOnly + LAP.ClearBeforeAdd) - If .IsCollection Then - With DirectCast(UserInstance, UserDataBind) - If .Count > 0 Then .Collections.ForEach(Sub(c) c.Labels.ListAddList(UserLabels, l)) - End With - Else - .Labels.ListAddList(UserLabels, LAP.NotContainsOnly, LAP.ClearBeforeAdd) - End If - .ParseUserMediaOnly = CH_PARSE_USER_MEDIA.Checked - .ScriptUse = TXT_SCRIPT.Checked - .ScriptData = TXT_SCRIPT.Text - .UpdateUserInformation() + If IsSubscription And Not s.Source.SubscriptionsAllowed Then + MsgBoxE({$"Subscription mode for site [{s.Name}] is not allowed", msgTitle}, vbCritical) + Exit Sub + Else + COLOR_USER.ColorsGetUser(_UserBackColor, _UserForeColor) + Dim tmpUser As UserInfo = User + With tmpUser + .Name = TXT_USER.Text + .Site = s.Name + .Plugin = s.Key + .IsSubscription = IsSubscription + Dim sp As SFile = SpecialPath(s) + If Not sp.IsEmptyString AndAlso Not SpecialPathHandler Is Nothing And UserInstance Is Nothing Then _ + sp = SpecialPathHandler.Invoke(.Self, sp) + .SpecialPath = sp + .UpdateUserFile() End With + User = tmpUser + Dim ScriptText$ = TXT_SCRIPT.Text + If Not ScriptText.IsEmptyString Then + Dim f As SFile = ScriptText + If Not SFile.IsDirectory(ScriptText) And Not UserInstance Is Nothing Then + With DirectCast(UserInstance, UserDataBase) : f.Path = .MyFile.Path : End With + End If + TXT_SCRIPT.Text = f + End If + If Not UserInstance Is Nothing Then + With DirectCast(UserInstance, UserDataBase) + .User = User + Dim setFriendly As Boolean = True + If FriendlyNameIsSiteName Then + If Not FriendlyNameChanged Then + setFriendly = False + Else + setFriendly = MsgBoxE({"Are you sure you want to set the site name as the friendly name?" & vbCr & + $"Friendly name: { .FriendlyNameOrig}" & vbCr & + $"Site name: { .UserSiteName}" & vbCr & + $"Your choice: {TXT_USER_FRIENDLY.Text}", "Friendly name change"}, vbExclamation,,, + {"Confirm", New Messaging.MsgBoxButton("Decline", "Friendly name will not be changed")}) = 0 + End If + End If + If setFriendly Then .FriendlyName = TXT_USER_FRIENDLY.Text + .Favorite = CH_FAV.Checked + .Temporary = CH_TEMP.Checked + .ReadyForDownload = CH_READY_FOR_DOWN.Checked + .DownloadImages = CH_DOWN_IMAGES.Checked + .DownloadVideos = CH_DOWN_VIDEOS.Checked + COLOR_USER.ColorsGetUser(.BackColor, .ForeColor) + .UserDescription = TXT_DESCR.Text + If Not MyExchangeOptions Is Nothing Then .ExchangeOptionsSet(MyExchangeOptions) + Dim l As New ListAddParams(LAP.NotContainsOnly + LAP.ClearBeforeAdd) + If .IsCollection Then + With DirectCast(UserInstance, UserDataBind) + If .Count > 0 Then .Collections.ForEach(Sub(c) c.Labels.ListAddList(UserLabels, l)) + End With + Else + .Labels.ListAddList(UserLabels, LAP.NotContainsOnly, LAP.ClearBeforeAdd) + End If + .ParseUserMediaOnly = CH_PARSE_USER_MEDIA.Checked + .ScriptUse = TXT_SCRIPT.Checked + .ScriptData = TXT_SCRIPT.Text + .UpdateUserInformation() + End With + End If + GoTo CloseForm End If - GoTo CloseForm Else - MsgBoxE("User site not selected", MsgBoxStyle.Exclamation) + MsgBoxE({"User site not selected", msgTitle}, MsgBoxStyle.Exclamation) End If End If Else @@ -409,6 +470,7 @@ CloseForm: Try If Not _TextChangeInvoked And Not UserIsCollection Then _TextChangeInvoked = True + Options = String.Empty If Not CH_ADD_BY_LIST.Checked Then Dim s As ExchangeOptions = GetSiteByText(TXT_USER.Text) Dim found As Boolean = False @@ -421,6 +483,7 @@ CloseForm: End If CMB_SITE.SelectedIndex = i TXT_USER.Text = s.UserName + Options = s.Options found = True End If End If @@ -479,10 +542,27 @@ CloseForm: End Sub Private Sub TXT_SPEC_FOLDER_ActionOnButtonClick(ByVal Sender As ActionButton, ByVal e As EventArgs) Handles TXT_SPEC_FOLDER.ActionOnButtonClick If Sender.DefaultButton = ADB.Open Then - Dim f As SFile = Nothing - If Not TXT_SPEC_FOLDER.Text.IsEmptyString Then f = $"{TXT_SPEC_FOLDER.Text}\" - f = SFile.SelectPath(f) - If Not f.IsEmptyString Then TXT_SPEC_FOLDER.Text = f.PathWithSeparator + Using ff As New GlobalLocationsChooserForm With {.MyInitialLocation = TXT_SPEC_FOLDER.Text} + ff.ShowDialog() + If ff.DialogResult = DialogResult.OK And Not ff.MyDestination.Path.IsEmptyString Then + Settings.GlobalLocations.PopulateComboBox(TXT_SPEC_FOLDER) + Dim i% = Settings.GlobalLocations.IndexOf(ff.MyDestination) + If i.ValueBetween(0, TXT_SPEC_FOLDER.Count - 1) Then TXT_SPEC_FOLDER.SelectedIndex = i + TXT_SPEC_FOLDER.Text = ff.MyDestination.Path + SpecialPathHandler = ff.MyModelHandler + End If + End Using + End If + End Sub + Private Sub TXT_SPEC_FOLDER_ActionOnTextChanged(sender As Object, e As EventArgs) Handles TXT_SPEC_FOLDER.ActionOnTextChanged + SpecialPathHandler = Nothing + End Sub + Private Sub TXT_SPEC_FOLDER_ActionSelectedItemChanged(ByVal Sender As Object, ByVal e As EventArgs, ByVal Item As ListViewItem) Handles TXT_SPEC_FOLDER.ActionSelectedItemChanged + Dim i% = TXT_SPEC_FOLDER.SelectedIndex + If i.ValueBetween(0, Settings.GlobalLocations.Count - 1) Then + SpecialPathHandler = GlobalLocationsChooserForm.ModelHandler(Settings.GlobalLocations(i).Model) + Else + SpecialPathHandler = Nothing End If End Sub Private Sub CH_TEMP_CheckedChanged(sender As Object, e As EventArgs) Handles CH_TEMP.CheckedChanged @@ -517,8 +597,21 @@ CloseForm: Select Case Sender.DefaultButton Case ADB.Open : ChangeLabels() Case ADB.Clear : UserLabels.Clear() + Case ADB.Refresh : UpdateSpecificLabels(False) End Select End Sub + Private Sub UpdateSpecificLabels(ByVal IsInit As Boolean) + If DirectCast(UserInstance, UserDataBase).SpecialLabels.ListExists Then + If Not IsInit Then LabelsIncludeSpecial = Not LabelsIncludeSpecial + UserLabelName.Clone() + UserLabels.ListAddList(UserInstance.Labels, LAP.NotContainsOnly) + If Not LabelsIncludeSpecial Then UserLabels.ListWithRemove(DirectCast(UserInstance, UserDataBase).SpecialLabels) + If UserLabels.Count > 0 Then UserLabels.Sort() + TXT_LABELS.Text = UserLabels.ListToString + Else + If Not IsInit Then MsgBoxE({"Users in this collection do not have site-specific labels", "Change labels view"}, vbExclamation) + End If + End Sub Private Sub TXT_SCRIPT_ActionOnButtonClick(ByVal Sender As ActionButton, ByVal e As EventArgs) Handles TXT_SCRIPT.ActionOnButtonClick SettingsCLS.ScriptTextBoxButtonClick(TXT_SCRIPT, Sender) End Sub @@ -535,17 +628,27 @@ CloseForm: If u.ListExists Then Dim NonIdentified As New List(Of String) Dim UsersForCreate As New List(Of UserInfo) + Dim UsersForCreate_Options As New List(Of String) Dim BannedUsers() As String = Nothing Dim uu$ Dim ulabels As List(Of String) = ListAddList(Nothing, UserLabels).ListAddValue(LabelsKeeper.NoParsedUser, LAP.NotContainsOnly) Dim tmpUser As UserInfo Dim s As SettingsHost = GetSiteByCheckers() - Dim sObj As ExchangeOptions + Dim sObj As ExchangeOptions = Nothing Dim Added% = 0 Dim Skipped% = 0 Dim uid% - Dim sf As Func(Of SettingsHost, String) = Function(__s) SpecialPath(__s).PathWithSeparator - Dim __sf As Func(Of String, SettingsHost, SFile) = Function(Input, __s) IIf(sf(__s).IsEmptyString, Nothing, New SFile($"{sf(__s)}{Input}\")) + Dim __getUserSpecialPath As Func(Of UserInfo, SettingsHost, SFile) = + Function(ByVal __user As UserInfo, ByVal __s As SettingsHost) As SFile + Dim sp As SFile = SpecialPath(__s).PathWithSeparator + If sp.IsEmptyString Then + Return Nothing + ElseIf Not SpecialPathHandler Is Nothing Then + Return SpecialPathHandler.Invoke(__user, sp) + Else + Return $"{sp}{__user.Name}\" + End If + End Function Settings.Labels.Add(LabelsKeeper.NoParsedUser) @@ -559,15 +662,19 @@ CloseForm: Else s = Nothing End If + ElseIf i = 0 Then + sObj = GetSiteByText(uu) End If - If Not s Is Nothing Then - tmpUser = New UserInfo(uu, s) With {.SpecialPath = __sf(uu, s)} + If Not s Is Nothing AndAlso (Not IsSubscription OrElse s.Source.SubscriptionsAllowed) Then + tmpUser = New UserInfo(uu, s) + tmpUser.SpecialPath = __getUserSpecialPath(tmpUser, s) tmpUser.UpdateUserFile() uid = -1 If Settings.UsersList.Count > 0 Then uid = Settings.UsersList.IndexOf(tmpUser) If uid < 0 And Not UsersForCreate.Contains(tmpUser) Then UsersForCreate.Add(tmpUser) + UsersForCreate_Options.Add(sObj.Options) Else Skipped += 1 End If @@ -585,6 +692,7 @@ CloseForm: If StartIndex = -1 Then StartIndex = Settings.Users.Count Settings.Users.Add(UserDataBase.GetInstance(tmpUser, False)) With Settings.Users.Last + .Options = sObj.Options .FriendlyName = TXT_USER_FRIENDLY.Text .Favorite = CH_FAV.Checked .Temporary = CH_TEMP.Checked diff --git a/SCrawler/GlobalSuppressions.vb b/SCrawler/GlobalSuppressions.vb index 03e7648..94960e5 100644 --- a/SCrawler/GlobalSuppressions.vb +++ b/SCrawler/GlobalSuppressions.vb @@ -5,4 +5,5 @@ Imports System.Diagnostics.CodeAnalysis - \ No newline at end of file + + \ No newline at end of file diff --git a/SCrawler/ListImagesLoader.vb b/SCrawler/ListImagesLoader.vb index 4c3effb..e5d65ef 100644 --- a/SCrawler/ListImagesLoader.vb +++ b/SCrawler/ListImagesLoader.vb @@ -199,9 +199,12 @@ Friend Class ListImagesLoader ElseIf CheckUserCollection(User) Then .BackColor = Color.LightSkyBlue .ForeColor = Color.MidnightBlue + ElseIf User.IsSubscription Then + .BackColor = If(User.BackColor, Settings.MainFrameUsersSubscriptionsColorBack.Value) + .ForeColor = If(User.ForeColor, Settings.MainFrameUsersSubscriptionsColorFore.Value) Else - .BackColor = Settings.UserListBackColorF - .ForeColor = Settings.UserListForeColorF + .BackColor = If(User.BackColor, Settings.UserListBackColorF) + .ForeColor = If(User.ForeColor, Settings.UserListForeColorF) End If End With Return LVI diff --git a/SCrawler/MainFrame.Designer.vb b/SCrawler/MainFrame.Designer.vb index a36f9d3..07e02cc 100644 --- a/SCrawler/MainFrame.Designer.vb +++ b/SCrawler/MainFrame.Designer.vb @@ -32,18 +32,22 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form Dim CONTEXT_SEP_4 As System.Windows.Forms.ToolStripSeparator Dim CONTEXT_SEP_5 As System.Windows.Forms.ToolStripSeparator Dim SEP_4 As System.Windows.Forms.ToolStripSeparator - Dim MENU_VIEW_SEP_1 As System.Windows.Forms.ToolStripSeparator - Dim MENU_VIEW_SEP_3 As System.Windows.Forms.ToolStripSeparator Dim MENU_VIEW_SEP_2 As System.Windows.Forms.ToolStripSeparator + Dim MENU_VIEW_SEP_4 As System.Windows.Forms.ToolStripSeparator + Dim MENU_VIEW_SEP_3 As System.Windows.Forms.ToolStripSeparator Dim TRAY_SEP_1 As System.Windows.Forms.ToolStripSeparator Dim MENU_DOWN_ALL_SEP_1 As System.Windows.Forms.ToolStripSeparator + Dim TRAY_SEP_2 As System.Windows.Forms.ToolStripSeparator Dim MENU_DOWN_ALL_SEP_2 As System.Windows.Forms.ToolStripSeparator Dim MENU_DOWN_ALL_SEP_3 As System.Windows.Forms.ToolStripSeparator - Dim TRAY_SEP_2 As System.Windows.Forms.ToolStripSeparator Dim MENU_DOWN_ALL_SEP_4 As System.Windows.Forms.ToolStripSeparator - Dim MENU_DOWN_ALL_SEP_5 As System.Windows.Forms.ToolStripSeparator - Dim MENU_DOWN_ALL_SEP_6 As System.Windows.Forms.ToolStripSeparator + Dim MENU_INFO As System.Windows.Forms.ToolStripDropDownButton + Dim MENU_VIEW_SEP_1 As System.Windows.Forms.ToolStripSeparator Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(MainFrame)) + Me.MENU_INFO_SHOW_INFO = New System.Windows.Forms.ToolStripMenuItem() + Me.MENU_INFO_SHOW_QUEUE = New System.Windows.Forms.ToolStripMenuItem() + Me.MENU_INFO_SHOW_MISSING = New System.Windows.Forms.ToolStripMenuItem() + Me.MENU_INFO_SHOW_USER_METRICS = New System.Windows.Forms.ToolStripMenuItem() Me.MENU_SETTINGS = New System.Windows.Forms.ToolStripDropDownButton() Me.BTT_SETTINGS = New System.Windows.Forms.ToolStripMenuItem() Me.Toolbar_TOP = New System.Windows.Forms.ToolStrip() @@ -51,16 +55,21 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form Me.BTT_EDIT_USER = New System.Windows.Forms.ToolStripButton() Me.BTT_DELETE_USER = New System.Windows.Forms.ToolStripButton() Me.BTT_REFRESH = New System.Windows.Forms.ToolStripButton() - Me.BTT_SHOW_INFO = New PersonalUtilities.Forms.Controls.KeyClick.ToolStripButtonKeyClick() Me.BTT_FEED = New System.Windows.Forms.ToolStripButton() Me.BTT_CHANNELS = New System.Windows.Forms.ToolStripButton() Me.BTT_DOWN_SAVED = New System.Windows.Forms.ToolStripButton() Me.MENU_DOWN_ALL = New System.Windows.Forms.ToolStripDropDownButton() Me.BTT_DOWN_SELECTED = New SCrawler.ToolStripKeyMenuItem() + Me.MENU_D_DOWN_ALL = New System.Windows.Forms.ToolStripMenuItem() Me.BTT_DOWN_ALL = New SCrawler.ToolStripKeyMenuItem() + Me.BTT_DOWN_ALL_SUBSCR = New SCrawler.ToolStripKeyMenuItem() Me.BTT_DOWN_SITE = New SCrawler.ToolStripKeyMenuItem() + Me.BTT_DOWN_SITE_SUBSCR = New SCrawler.ToolStripKeyMenuItem() + Me.MENU_D_DOWN_ALL_SITE = New System.Windows.Forms.ToolStripMenuItem() Me.BTT_DOWN_ALL_FULL = New SCrawler.ToolStripKeyMenuItem() + Me.BTT_DOWN_ALL_FULL_SUBSCR = New SCrawler.ToolStripKeyMenuItem() Me.BTT_DOWN_SITE_FULL = New SCrawler.ToolStripKeyMenuItem() + Me.BTT_DOWN_SITE_FULL_SUBSCR = New SCrawler.ToolStripKeyMenuItem() Me.BTT_DOWN_VIDEO = New System.Windows.Forms.ToolStripMenuItem() Me.BTT_ADD_NEW_GROUP = New System.Windows.Forms.ToolStripMenuItem() Me.BTT_SILENT_MODE = New System.Windows.Forms.ToolStripMenuItem() @@ -72,6 +81,8 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form Me.BTT_VIEW_SMALL = New System.Windows.Forms.ToolStripMenuItem() Me.BTT_VIEW_LIST = New System.Windows.Forms.ToolStripMenuItem() Me.BTT_VIEW_DETAILS = New System.Windows.Forms.ToolStripMenuItem() + Me.BTT_MODE_SHOW_USERS = New System.Windows.Forms.ToolStripMenuItem() + Me.BTT_MODE_SHOW_SUBSCRIPTIONS = New System.Windows.Forms.ToolStripMenuItem() Me.BTT_SITE_ALL = New System.Windows.Forms.ToolStripMenuItem() Me.BTT_SITE_SPECIFIC = New System.Windows.Forms.ToolStripMenuItem() Me.BTT_SHOW_ALL = New System.Windows.Forms.ToolStripMenuItem() @@ -90,6 +101,7 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form Me.BTT_LOG = New System.Windows.Forms.ToolStripButton() Me.BTT_VERSION_INFO = New System.Windows.Forms.ToolStripButton() Me.BTT_DONATE = New System.Windows.Forms.ToolStripButton() + Me.BTT_BUG_REPORT = New System.Windows.Forms.ToolStripButton() Me.Toolbar_BOTTOM = New System.Windows.Forms.StatusStrip() Me.BTT_PR_INFO = New System.Windows.Forms.ToolStripStatusLabel() Me.PR_PRE = New System.Windows.Forms.ToolStripProgressBar() @@ -104,11 +116,12 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form Me.BTT_CONTEXT_DOWN_DATE_LIMIT = New SCrawler.ToolStripKeyMenuItem() Me.BTT_CONTEXT_EDIT = New System.Windows.Forms.ToolStripMenuItem() Me.BTT_CONTEXT_DELETE = New System.Windows.Forms.ToolStripMenuItem() + Me.BTT_CONTEXT_ERASE = New System.Windows.Forms.ToolStripMenuItem() Me.BTT_CONTEXT_COPY_TO_FOLDER = New System.Windows.Forms.ToolStripMenuItem() Me.BTT_CONTEXT_FAV = New System.Windows.Forms.ToolStripMenuItem() Me.BTT_CONTEXT_TEMP = New System.Windows.Forms.ToolStripMenuItem() Me.BTT_CONTEXT_READY = New System.Windows.Forms.ToolStripMenuItem() - Me.BTT_CONTEXT_GROUPS = New System.Windows.Forms.ToolStripMenuItem() + Me.BTT_CONTEXT_GROUPS = New PersonalUtilities.Forms.Controls.KeyClick.ToolStripMenuItemKeyClick() Me.BTT_CONTEXT_SCRIPT = New System.Windows.Forms.ToolStripMenuItem() Me.BTT_CONTEXT_ADD_TO_COL = New System.Windows.Forms.ToolStripMenuItem() Me.BTT_CONTEXT_COL_MERGE = New System.Windows.Forms.ToolStripMenuItem() @@ -137,17 +150,17 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form CONTEXT_SEP_4 = New System.Windows.Forms.ToolStripSeparator() CONTEXT_SEP_5 = New System.Windows.Forms.ToolStripSeparator() SEP_4 = New System.Windows.Forms.ToolStripSeparator() - MENU_VIEW_SEP_1 = New System.Windows.Forms.ToolStripSeparator() - MENU_VIEW_SEP_3 = New System.Windows.Forms.ToolStripSeparator() MENU_VIEW_SEP_2 = New System.Windows.Forms.ToolStripSeparator() + MENU_VIEW_SEP_4 = New System.Windows.Forms.ToolStripSeparator() + MENU_VIEW_SEP_3 = New System.Windows.Forms.ToolStripSeparator() TRAY_SEP_1 = New System.Windows.Forms.ToolStripSeparator() MENU_DOWN_ALL_SEP_1 = New System.Windows.Forms.ToolStripSeparator() + TRAY_SEP_2 = New System.Windows.Forms.ToolStripSeparator() MENU_DOWN_ALL_SEP_2 = New System.Windows.Forms.ToolStripSeparator() MENU_DOWN_ALL_SEP_3 = New System.Windows.Forms.ToolStripSeparator() - TRAY_SEP_2 = New System.Windows.Forms.ToolStripSeparator() MENU_DOWN_ALL_SEP_4 = New System.Windows.Forms.ToolStripSeparator() - MENU_DOWN_ALL_SEP_5 = New System.Windows.Forms.ToolStripSeparator() - MENU_DOWN_ALL_SEP_6 = New System.Windows.Forms.ToolStripSeparator() + MENU_INFO = New System.Windows.Forms.ToolStripDropDownButton() + MENU_VIEW_SEP_1 = New System.Windows.Forms.ToolStripSeparator() Me.Toolbar_TOP.SuspendLayout() Me.Toolbar_BOTTOM.SuspendLayout() Me.USER_CONTEXT.SuspendLayout() @@ -204,21 +217,21 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form SEP_4.Name = "SEP_4" SEP_4.Size = New System.Drawing.Size(6, 25) ' - 'MENU_VIEW_SEP_1 + 'MENU_VIEW_SEP_2 ' - MENU_VIEW_SEP_1.Name = "MENU_VIEW_SEP_1" - MENU_VIEW_SEP_1.Size = New System.Drawing.Size(228, 6) + MENU_VIEW_SEP_2.Name = "MENU_VIEW_SEP_2" + MENU_VIEW_SEP_2.Size = New System.Drawing.Size(228, 6) + ' + 'MENU_VIEW_SEP_4 + ' + MENU_VIEW_SEP_4.Name = "MENU_VIEW_SEP_4" + MENU_VIEW_SEP_4.Size = New System.Drawing.Size(228, 6) ' 'MENU_VIEW_SEP_3 ' MENU_VIEW_SEP_3.Name = "MENU_VIEW_SEP_3" MENU_VIEW_SEP_3.Size = New System.Drawing.Size(228, 6) ' - 'MENU_VIEW_SEP_2 - ' - MENU_VIEW_SEP_2.Name = "MENU_VIEW_SEP_2" - MENU_VIEW_SEP_2.Size = New System.Drawing.Size(228, 6) - ' 'TRAY_SEP_1 ' TRAY_SEP_1.Name = "TRAY_SEP_1" @@ -227,37 +240,78 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form 'MENU_DOWN_ALL_SEP_1 ' MENU_DOWN_ALL_SEP_1.Name = "MENU_DOWN_ALL_SEP_1" - MENU_DOWN_ALL_SEP_1.Size = New System.Drawing.Size(228, 6) - ' - 'MENU_DOWN_ALL_SEP_2 - ' - MENU_DOWN_ALL_SEP_2.Name = "MENU_DOWN_ALL_SEP_2" - MENU_DOWN_ALL_SEP_2.Size = New System.Drawing.Size(228, 6) - ' - 'MENU_DOWN_ALL_SEP_3 - ' - MENU_DOWN_ALL_SEP_3.Name = "MENU_DOWN_ALL_SEP_3" - MENU_DOWN_ALL_SEP_3.Size = New System.Drawing.Size(228, 6) + MENU_DOWN_ALL_SEP_1.Size = New System.Drawing.Size(218, 6) ' 'TRAY_SEP_2 ' TRAY_SEP_2.Name = "TRAY_SEP_2" TRAY_SEP_2.Size = New System.Drawing.Size(167, 6) ' + 'MENU_DOWN_ALL_SEP_2 + ' + MENU_DOWN_ALL_SEP_2.Name = "MENU_DOWN_ALL_SEP_2" + MENU_DOWN_ALL_SEP_2.Size = New System.Drawing.Size(218, 6) + ' + 'MENU_DOWN_ALL_SEP_3 + ' + MENU_DOWN_ALL_SEP_3.Name = "MENU_DOWN_ALL_SEP_3" + MENU_DOWN_ALL_SEP_3.Size = New System.Drawing.Size(218, 6) + ' 'MENU_DOWN_ALL_SEP_4 ' MENU_DOWN_ALL_SEP_4.Name = "MENU_DOWN_ALL_SEP_4" - MENU_DOWN_ALL_SEP_4.Size = New System.Drawing.Size(228, 6) + MENU_DOWN_ALL_SEP_4.Size = New System.Drawing.Size(218, 6) ' - 'MENU_DOWN_ALL_SEP_5 + 'MENU_INFO ' - MENU_DOWN_ALL_SEP_5.Name = "MENU_DOWN_ALL_SEP_5" - MENU_DOWN_ALL_SEP_5.Size = New System.Drawing.Size(228, 6) + MENU_INFO.AutoToolTip = False + MENU_INFO.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.MENU_INFO_SHOW_INFO, Me.MENU_INFO_SHOW_QUEUE, Me.MENU_INFO_SHOW_MISSING, Me.MENU_INFO_SHOW_USER_METRICS}) + MENU_INFO.Image = Global.SCrawler.My.Resources.Resources.InfoPic_32 + MENU_INFO.ImageTransparentColor = System.Drawing.Color.Magenta + MENU_INFO.Name = "MENU_INFO" + MENU_INFO.Size = New System.Drawing.Size(57, 22) + MENU_INFO.Text = "Info" ' - 'MENU_DOWN_ALL_SEP_6 + 'MENU_INFO_SHOW_INFO ' - MENU_DOWN_ALL_SEP_6.Name = "MENU_DOWN_ALL_SEP_6" - MENU_DOWN_ALL_SEP_6.Size = New System.Drawing.Size(228, 6) + Me.MENU_INFO_SHOW_INFO.AutoToolTip = True + Me.MENU_INFO_SHOW_INFO.Image = Global.SCrawler.My.Resources.Resources.InfoPic_32 + Me.MENU_INFO_SHOW_INFO.ImageTransparentColor = System.Drawing.Color.Magenta + Me.MENU_INFO_SHOW_INFO.Name = "MENU_INFO_SHOW_INFO" + Me.MENU_INFO_SHOW_INFO.Size = New System.Drawing.Size(212, 22) + Me.MENU_INFO_SHOW_INFO.Text = "Info (download summary)" + Me.MENU_INFO_SHOW_INFO.ToolTipText = "Open the 'Info' form (show download summary)." + ' + 'MENU_INFO_SHOW_QUEUE + ' + Me.MENU_INFO_SHOW_QUEUE.Image = Global.SCrawler.My.Resources.Resources.InfoPic_32 + Me.MENU_INFO_SHOW_QUEUE.Name = "MENU_INFO_SHOW_QUEUE" + Me.MENU_INFO_SHOW_QUEUE.Size = New System.Drawing.Size(212, 22) + Me.MENU_INFO_SHOW_QUEUE.Text = "Users download queue" + ' + 'MENU_INFO_SHOW_MISSING + ' + Me.MENU_INFO_SHOW_MISSING.AutoToolTip = True + Me.MENU_INFO_SHOW_MISSING.Image = Global.SCrawler.My.Resources.Resources.InfoPic_32 + Me.MENU_INFO_SHOW_MISSING.Name = "MENU_INFO_SHOW_MISSING" + Me.MENU_INFO_SHOW_MISSING.Size = New System.Drawing.Size(212, 22) + Me.MENU_INFO_SHOW_MISSING.Text = "Missing posts" + Me.MENU_INFO_SHOW_MISSING.ToolTipText = "Open the 'Missing' form (show information about missing posts)." + ' + 'MENU_INFO_SHOW_USER_METRICS + ' + Me.MENU_INFO_SHOW_USER_METRICS.AutoToolTip = True + Me.MENU_INFO_SHOW_USER_METRICS.Image = Global.SCrawler.My.Resources.Resources.InfoPic_32 + Me.MENU_INFO_SHOW_USER_METRICS.Name = "MENU_INFO_SHOW_USER_METRICS" + Me.MENU_INFO_SHOW_USER_METRICS.Size = New System.Drawing.Size(212, 22) + Me.MENU_INFO_SHOW_USER_METRICS.Text = "User metrics" + Me.MENU_INFO_SHOW_USER_METRICS.ToolTipText = "Open the ""User metrics' form (show information about the user's metrics (such as " & + "size, number of files, etc.))." + ' + 'MENU_VIEW_SEP_1 + ' + MENU_VIEW_SEP_1.Name = "MENU_VIEW_SEP_1" + MENU_VIEW_SEP_1.Size = New System.Drawing.Size(228, 6) ' 'MENU_SETTINGS ' @@ -279,7 +333,7 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form 'Toolbar_TOP ' Me.Toolbar_TOP.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden - Me.Toolbar_TOP.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.MENU_SETTINGS, SEP_1, Me.BTT_ADD_USER, Me.BTT_EDIT_USER, Me.BTT_DELETE_USER, Me.BTT_REFRESH, Me.BTT_SHOW_INFO, Me.BTT_FEED, Me.BTT_CHANNELS, Me.BTT_DOWN_SAVED, SEP_2, Me.MENU_DOWN_ALL, Me.BTT_DOWN_STOP, SEP_3, Me.MENU_VIEW, SEP_4, Me.BTT_LOG, Me.BTT_VERSION_INFO, Me.BTT_DONATE}) + Me.Toolbar_TOP.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.MENU_SETTINGS, SEP_1, Me.BTT_ADD_USER, Me.BTT_EDIT_USER, Me.BTT_DELETE_USER, Me.BTT_REFRESH, MENU_INFO, Me.BTT_FEED, Me.BTT_CHANNELS, Me.BTT_DOWN_SAVED, SEP_2, Me.MENU_DOWN_ALL, Me.BTT_DOWN_STOP, SEP_3, Me.MENU_VIEW, SEP_4, Me.BTT_LOG, Me.BTT_VERSION_INFO, Me.BTT_DONATE, Me.BTT_BUG_REPORT}) Me.Toolbar_TOP.Location = New System.Drawing.Point(0, 0) Me.Toolbar_TOP.Name = "Toolbar_TOP" Me.Toolbar_TOP.Size = New System.Drawing.Size(934, 25) @@ -322,15 +376,6 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form Me.BTT_REFRESH.Text = "Refresh" Me.BTT_REFRESH.ToolTipText = "Refresh user list" ' - 'BTT_SHOW_INFO - ' - Me.BTT_SHOW_INFO.Image = Global.SCrawler.My.Resources.Resources.InfoPic_32 - Me.BTT_SHOW_INFO.ImageTransparentColor = System.Drawing.Color.Magenta - Me.BTT_SHOW_INFO.Name = "BTT_SHOW_INFO" - Me.BTT_SHOW_INFO.Size = New System.Drawing.Size(48, 22) - Me.BTT_SHOW_INFO.Text = "Info" - Me.BTT_SHOW_INFO.ToolTipText = resources.GetString("BTT_SHOW_INFO.ToolTipText") - ' 'BTT_FEED ' Me.BTT_FEED.Image = Global.SCrawler.My.Resources.Resources.RSSPic_512 @@ -361,7 +406,7 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form 'MENU_DOWN_ALL ' Me.MENU_DOWN_ALL.AutoToolTip = False - Me.MENU_DOWN_ALL.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BTT_DOWN_SELECTED, MENU_DOWN_ALL_SEP_1, Me.BTT_DOWN_ALL, Me.BTT_DOWN_SITE, MENU_DOWN_ALL_SEP_2, Me.BTT_DOWN_ALL_FULL, Me.BTT_DOWN_SITE_FULL, MENU_DOWN_ALL_SEP_3, Me.BTT_DOWN_VIDEO, MENU_DOWN_ALL_SEP_4, Me.BTT_ADD_NEW_GROUP, MENU_DOWN_ALL_SEP_5, Me.BTT_SILENT_MODE, MENU_DOWN_ALL_SEP_6, Me.BTT_DOWN_AUTOMATION, Me.BTT_DOWN_AUTOMATION_PAUSE}) + Me.MENU_DOWN_ALL.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BTT_DOWN_SELECTED, Me.MENU_D_DOWN_ALL, Me.MENU_D_DOWN_ALL_SITE, MENU_DOWN_ALL_SEP_1, Me.BTT_DOWN_VIDEO, MENU_DOWN_ALL_SEP_2, Me.BTT_ADD_NEW_GROUP, MENU_DOWN_ALL_SEP_3, Me.BTT_SILENT_MODE, MENU_DOWN_ALL_SEP_4, Me.BTT_DOWN_AUTOMATION, Me.BTT_DOWN_AUTOMATION_PAUSE}) Me.MENU_DOWN_ALL.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16 Me.MENU_DOWN_ALL.ImageTransparentColor = System.Drawing.Color.Magenta Me.MENU_DOWN_ALL.Name = "MENU_DOWN_ALL" @@ -374,49 +419,100 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form Me.BTT_DOWN_SELECTED.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16 Me.BTT_DOWN_SELECTED.ImageTransparentColor = System.Drawing.Color.Magenta Me.BTT_DOWN_SELECTED.Name = "BTT_DOWN_SELECTED" - Me.BTT_DOWN_SELECTED.Size = New System.Drawing.Size(231, 22) + Me.BTT_DOWN_SELECTED.Size = New System.Drawing.Size(221, 22) Me.BTT_DOWN_SELECTED.Text = "Download selected (F5)" - Me.BTT_DOWN_SELECTED.ToolTipText = "Download selected user." & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10) & "F5: download, include in the feed." & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10) & "Ctrl+F5: download, e" & - "xclude from feed." + Me.BTT_DOWN_SELECTED.ToolTipText = "Download selected user." & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10) & "F5: download, include in the feed." + ' + 'MENU_D_DOWN_ALL + ' + Me.MENU_D_DOWN_ALL.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BTT_DOWN_ALL, Me.BTT_DOWN_ALL_SUBSCR, Me.BTT_DOWN_SITE, Me.BTT_DOWN_SITE_SUBSCR}) + Me.MENU_D_DOWN_ALL.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16 + Me.MENU_D_DOWN_ALL.Name = "MENU_D_DOWN_ALL" + Me.MENU_D_DOWN_ALL.Size = New System.Drawing.Size(221, 22) + Me.MENU_D_DOWN_ALL.Text = "Download all (F6)" ' 'BTT_DOWN_ALL ' Me.BTT_DOWN_ALL.AutoToolTip = True Me.BTT_DOWN_ALL.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16 Me.BTT_DOWN_ALL.Name = "BTT_DOWN_ALL" - Me.BTT_DOWN_ALL.Size = New System.Drawing.Size(231, 22) + Me.BTT_DOWN_ALL.Size = New System.Drawing.Size(237, 22) Me.BTT_DOWN_ALL.Text = "Download all (F6)" - Me.BTT_DOWN_ALL.ToolTipText = "Download all users marked 'Ready for download' from all sites." & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10) & "F5: download, inc" & - "lude in the feed." & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10) & "Ctrl+F5: download, exclude from feed." + Me.BTT_DOWN_ALL.ToolTipText = "Download all users marked 'Ready for download' from all sites." & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10) & "F6: download, inc" & + "lude in the feed." + ' + 'BTT_DOWN_ALL_SUBSCR + ' + Me.BTT_DOWN_ALL_SUBSCR.AutoToolTip = True + Me.BTT_DOWN_ALL_SUBSCR.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16 + Me.BTT_DOWN_ALL_SUBSCR.Name = "BTT_DOWN_ALL_SUBSCR" + Me.BTT_DOWN_ALL_SUBSCR.Size = New System.Drawing.Size(237, 22) + Me.BTT_DOWN_ALL_SUBSCR.Text = "Download all subscriptions" + Me.BTT_DOWN_ALL_SUBSCR.ToolTipText = "Download all subscriptions marked 'Ready for download' from all sites." ' 'BTT_DOWN_SITE ' Me.BTT_DOWN_SITE.AutoToolTip = True Me.BTT_DOWN_SITE.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16 Me.BTT_DOWN_SITE.Name = "BTT_DOWN_SITE" - Me.BTT_DOWN_SITE.Size = New System.Drawing.Size(231, 22) + Me.BTT_DOWN_SITE.Size = New System.Drawing.Size(237, 22) Me.BTT_DOWN_SITE.Text = "Download all site users" Me.BTT_DOWN_SITE.ToolTipText = "Download all users marked 'Ready for download' from specific sites." ' + 'BTT_DOWN_SITE_SUBSCR + ' + Me.BTT_DOWN_SITE_SUBSCR.AutoToolTip = True + Me.BTT_DOWN_SITE_SUBSCR.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16 + Me.BTT_DOWN_SITE_SUBSCR.Name = "BTT_DOWN_SITE_SUBSCR" + Me.BTT_DOWN_SITE_SUBSCR.Size = New System.Drawing.Size(237, 22) + Me.BTT_DOWN_SITE_SUBSCR.Text = "Download all site subscriptions" + Me.BTT_DOWN_SITE_SUBSCR.ToolTipText = "Download all subscriptions marked 'Ready for download' from specific sites." + ' + 'MENU_D_DOWN_ALL_SITE + ' + Me.MENU_D_DOWN_ALL_SITE.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BTT_DOWN_ALL_FULL, Me.BTT_DOWN_ALL_FULL_SUBSCR, Me.BTT_DOWN_SITE_FULL, Me.BTT_DOWN_SITE_FULL_SUBSCR}) + Me.MENU_D_DOWN_ALL_SITE.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16 + Me.MENU_D_DOWN_ALL_SITE.Name = "MENU_D_DOWN_ALL_SITE" + Me.MENU_D_DOWN_ALL_SITE.Size = New System.Drawing.Size(221, 22) + Me.MENU_D_DOWN_ALL_SITE.Text = "Download all [FULL]" + ' 'BTT_DOWN_ALL_FULL ' Me.BTT_DOWN_ALL_FULL.AutoToolTip = True Me.BTT_DOWN_ALL_FULL.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16 Me.BTT_DOWN_ALL_FULL.Name = "BTT_DOWN_ALL_FULL" - Me.BTT_DOWN_ALL_FULL.Size = New System.Drawing.Size(231, 22) + Me.BTT_DOWN_ALL_FULL.Size = New System.Drawing.Size(274, 22) Me.BTT_DOWN_ALL_FULL.Text = "Download all [FULL]" Me.BTT_DOWN_ALL_FULL.ToolTipText = "Download all users from all sites. The 'Ready for download' option will be ignore" & "d." + ' + 'BTT_DOWN_ALL_FULL_SUBSCR + ' + Me.BTT_DOWN_ALL_FULL_SUBSCR.AutoToolTip = True + Me.BTT_DOWN_ALL_FULL_SUBSCR.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16 + Me.BTT_DOWN_ALL_FULL_SUBSCR.Name = "BTT_DOWN_ALL_FULL_SUBSCR" + Me.BTT_DOWN_ALL_FULL_SUBSCR.Size = New System.Drawing.Size(274, 22) + Me.BTT_DOWN_ALL_FULL_SUBSCR.Text = "Download all subscriptions [FULL]" + Me.BTT_DOWN_ALL_FULL_SUBSCR.ToolTipText = "Download all subscriptions from all sites. The 'Ready for download' option will b" & + "e ignored." ' 'BTT_DOWN_SITE_FULL ' Me.BTT_DOWN_SITE_FULL.AutoToolTip = True Me.BTT_DOWN_SITE_FULL.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16 Me.BTT_DOWN_SITE_FULL.Name = "BTT_DOWN_SITE_FULL" - Me.BTT_DOWN_SITE_FULL.Size = New System.Drawing.Size(231, 22) + Me.BTT_DOWN_SITE_FULL.Size = New System.Drawing.Size(274, 22) Me.BTT_DOWN_SITE_FULL.Text = "Download all site users [FULL]" - Me.BTT_DOWN_SITE_FULL.ToolTipText = "Download all users from specific sites. The 'Ready for download' option will be i" & - "gnored." + Me.BTT_DOWN_SITE_FULL.ToolTipText = resources.GetString("BTT_DOWN_SITE_FULL.ToolTipText") + ' + 'BTT_DOWN_SITE_FULL_SUBSCR + ' + Me.BTT_DOWN_SITE_FULL_SUBSCR.AutoToolTip = True + Me.BTT_DOWN_SITE_FULL_SUBSCR.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16 + Me.BTT_DOWN_SITE_FULL_SUBSCR.Name = "BTT_DOWN_SITE_FULL_SUBSCR" + Me.BTT_DOWN_SITE_FULL_SUBSCR.Size = New System.Drawing.Size(274, 22) + Me.BTT_DOWN_SITE_FULL_SUBSCR.Text = "Download all site subscriptions [FULL]" + Me.BTT_DOWN_SITE_FULL_SUBSCR.ToolTipText = resources.GetString("BTT_DOWN_SITE_FULL_SUBSCR.ToolTipText") ' 'BTT_DOWN_VIDEO ' @@ -424,7 +520,7 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form Me.BTT_DOWN_VIDEO.Image = Global.SCrawler.My.Resources.Resources.ArrowDownPic_Blue_24 Me.BTT_DOWN_VIDEO.ImageTransparentColor = System.Drawing.Color.Magenta Me.BTT_DOWN_VIDEO.Name = "BTT_DOWN_VIDEO" - Me.BTT_DOWN_VIDEO.Size = New System.Drawing.Size(231, 22) + Me.BTT_DOWN_VIDEO.Size = New System.Drawing.Size(221, 22) Me.BTT_DOWN_VIDEO.Text = "Standalone downloader" Me.BTT_DOWN_VIDEO.ToolTipText = "Download video by URL" ' @@ -432,7 +528,7 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form ' Me.BTT_ADD_NEW_GROUP.Image = Global.SCrawler.My.Resources.Resources.PlusPic_24 Me.BTT_ADD_NEW_GROUP.Name = "BTT_ADD_NEW_GROUP" - Me.BTT_ADD_NEW_GROUP.Size = New System.Drawing.Size(231, 22) + Me.BTT_ADD_NEW_GROUP.Size = New System.Drawing.Size(221, 22) Me.BTT_ADD_NEW_GROUP.Text = "Add a new download group" ' 'BTT_SILENT_MODE @@ -440,7 +536,7 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form Me.BTT_SILENT_MODE.AutoToolTip = True Me.BTT_SILENT_MODE.Image = Global.SCrawler.My.Resources.Resources.MessagePic_16 Me.BTT_SILENT_MODE.Name = "BTT_SILENT_MODE" - Me.BTT_SILENT_MODE.Size = New System.Drawing.Size(231, 22) + Me.BTT_SILENT_MODE.Size = New System.Drawing.Size(221, 22) Me.BTT_SILENT_MODE.Text = "Silent mode" Me.BTT_SILENT_MODE.ToolTipText = "Turn off notifications temporarily." & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10) & "This setting is not stored in the settings f" & "ile. It is valid until you turn it off or close the program." & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10) @@ -449,14 +545,14 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form ' Me.BTT_DOWN_AUTOMATION.Image = Global.SCrawler.My.Resources.Resources.ScriptPic_32 Me.BTT_DOWN_AUTOMATION.Name = "BTT_DOWN_AUTOMATION" - Me.BTT_DOWN_AUTOMATION.Size = New System.Drawing.Size(231, 22) + Me.BTT_DOWN_AUTOMATION.Size = New System.Drawing.Size(221, 22) Me.BTT_DOWN_AUTOMATION.Text = "Automation" ' 'BTT_DOWN_AUTOMATION_PAUSE ' Me.BTT_DOWN_AUTOMATION_PAUSE.Image = Global.SCrawler.My.Resources.Resources.Pause_Blue_16 Me.BTT_DOWN_AUTOMATION_PAUSE.Name = "BTT_DOWN_AUTOMATION_PAUSE" - Me.BTT_DOWN_AUTOMATION_PAUSE.Size = New System.Drawing.Size(231, 22) + Me.BTT_DOWN_AUTOMATION_PAUSE.Size = New System.Drawing.Size(221, 22) Me.BTT_DOWN_AUTOMATION_PAUSE.Text = "Pause automation" ' 'BTT_DOWN_STOP @@ -472,7 +568,7 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form 'MENU_VIEW ' Me.MENU_VIEW.AutoToolTip = False - Me.MENU_VIEW.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BTT_VIEW_LARGE, Me.BTT_VIEW_SMALL, Me.BTT_VIEW_LIST, Me.BTT_VIEW_DETAILS, MENU_VIEW_SEP_1, Me.BTT_SITE_ALL, Me.BTT_SITE_SPECIFIC, MENU_VIEW_SEP_2, Me.BTT_SHOW_ALL, Me.BTT_SHOW_REGULAR, Me.BTT_SHOW_TEMP, Me.BTT_SHOW_FAV, Me.BTT_SHOW_DELETED, Me.BTT_SHOW_SUSPENDED, Me.BTT_SHOW_LABELS, Me.BTT_SHOW_NO_LABELS, Me.BTT_SHOW_EXCLUDED_LABELS, Me.BTT_SHOW_EXCLUDED_LABELS_IGNORE, Me.BTT_SHOW_SHOW_GROUPS, MENU_VIEW_SEP_3, Me.BTT_SHOW_LIMIT_DATES_NOT, Me.BTT_SHOW_LIMIT_DATES_IN}) + Me.MENU_VIEW.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BTT_VIEW_LARGE, Me.BTT_VIEW_SMALL, Me.BTT_VIEW_LIST, Me.BTT_VIEW_DETAILS, MENU_VIEW_SEP_1, Me.BTT_MODE_SHOW_USERS, Me.BTT_MODE_SHOW_SUBSCRIPTIONS, MENU_VIEW_SEP_2, Me.BTT_SITE_ALL, Me.BTT_SITE_SPECIFIC, MENU_VIEW_SEP_3, Me.BTT_SHOW_ALL, Me.BTT_SHOW_REGULAR, Me.BTT_SHOW_TEMP, Me.BTT_SHOW_FAV, Me.BTT_SHOW_DELETED, Me.BTT_SHOW_SUSPENDED, Me.BTT_SHOW_LABELS, Me.BTT_SHOW_NO_LABELS, Me.BTT_SHOW_EXCLUDED_LABELS, Me.BTT_SHOW_EXCLUDED_LABELS_IGNORE, Me.BTT_SHOW_SHOW_GROUPS, MENU_VIEW_SEP_4, Me.BTT_SHOW_LIMIT_DATES_NOT, Me.BTT_SHOW_LIMIT_DATES_IN}) Me.MENU_VIEW.Image = CType(resources.GetObject("MENU_VIEW.Image"), System.Drawing.Image) Me.MENU_VIEW.ImageTransparentColor = System.Drawing.Color.Magenta Me.MENU_VIEW.Name = "MENU_VIEW" @@ -503,6 +599,20 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form Me.BTT_VIEW_DETAILS.Size = New System.Drawing.Size(231, 22) Me.BTT_VIEW_DETAILS.Text = "Details" ' + 'BTT_MODE_SHOW_USERS + ' + Me.BTT_MODE_SHOW_USERS.CheckOnClick = True + Me.BTT_MODE_SHOW_USERS.Name = "BTT_MODE_SHOW_USERS" + Me.BTT_MODE_SHOW_USERS.Size = New System.Drawing.Size(231, 22) + Me.BTT_MODE_SHOW_USERS.Text = "Show users" + ' + 'BTT_MODE_SHOW_SUBSCRIPTIONS + ' + Me.BTT_MODE_SHOW_SUBSCRIPTIONS.CheckOnClick = True + Me.BTT_MODE_SHOW_SUBSCRIPTIONS.Name = "BTT_MODE_SHOW_SUBSCRIPTIONS" + Me.BTT_MODE_SHOW_SUBSCRIPTIONS.Size = New System.Drawing.Size(231, 22) + Me.BTT_MODE_SHOW_SUBSCRIPTIONS.Text = "Show subscriptions" + ' 'BTT_SITE_ALL ' Me.BTT_SITE_ALL.Name = "BTT_SITE_ALL" @@ -632,6 +742,16 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form Me.BTT_DONATE.Text = "Donate" Me.BTT_DONATE.ToolTipText = "Support" ' + 'BTT_BUG_REPORT + ' + Me.BTT_BUG_REPORT.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right + Me.BTT_BUG_REPORT.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.BTT_BUG_REPORT.Image = CType(resources.GetObject("BTT_BUG_REPORT.Image"), System.Drawing.Image) + Me.BTT_BUG_REPORT.ImageTransparentColor = System.Drawing.Color.Magenta + Me.BTT_BUG_REPORT.Name = "BTT_BUG_REPORT" + Me.BTT_BUG_REPORT.Size = New System.Drawing.Size(23, 22) + Me.BTT_BUG_REPORT.Text = "Bug report" + ' 'Toolbar_BOTTOM ' Me.Toolbar_BOTTOM.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BTT_PR_INFO, Me.PR_PRE, Me.PR_MAIN, Me.LBL_JOBS_COUNT, Me.LBL_STATUS}) @@ -691,9 +811,9 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form ' 'USER_CONTEXT ' - Me.USER_CONTEXT.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BTT_CONTEXT_DOWN, Me.BTT_CONTEXT_DOWN_LIMITED, Me.BTT_CONTEXT_DOWN_DATE_LIMIT, Me.BTT_CONTEXT_EDIT, Me.BTT_CONTEXT_DELETE, Me.BTT_CONTEXT_COPY_TO_FOLDER, CONTEXT_SEP_1, Me.BTT_CONTEXT_FAV, Me.BTT_CONTEXT_TEMP, Me.BTT_CONTEXT_READY, Me.BTT_CONTEXT_GROUPS, Me.BTT_CONTEXT_SCRIPT, Me.BTT_CONTEXT_ADD_TO_COL, Me.BTT_CONTEXT_COL_MERGE, Me.BTT_CONTEXT_CHANGE_FOLDER, CONTEXT_SEP_2, Me.BTT_CHANGE_IMAGE, CONTEXT_SEP_3, Me.BTT_CONTEXT_OPEN_PATH, CONTEXT_SEP_4, Me.BTT_CONTEXT_OPEN_SITE, CONTEXT_SEP_5, Me.BTT_CONTEXT_INFO}) + Me.USER_CONTEXT.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BTT_CONTEXT_DOWN, Me.BTT_CONTEXT_DOWN_LIMITED, Me.BTT_CONTEXT_DOWN_DATE_LIMIT, Me.BTT_CONTEXT_EDIT, Me.BTT_CONTEXT_DELETE, Me.BTT_CONTEXT_ERASE, Me.BTT_CONTEXT_COPY_TO_FOLDER, CONTEXT_SEP_1, Me.BTT_CONTEXT_FAV, Me.BTT_CONTEXT_TEMP, Me.BTT_CONTEXT_READY, Me.BTT_CONTEXT_GROUPS, Me.BTT_CONTEXT_SCRIPT, Me.BTT_CONTEXT_ADD_TO_COL, Me.BTT_CONTEXT_COL_MERGE, Me.BTT_CONTEXT_CHANGE_FOLDER, CONTEXT_SEP_2, Me.BTT_CHANGE_IMAGE, CONTEXT_SEP_3, Me.BTT_CONTEXT_OPEN_PATH, CONTEXT_SEP_4, Me.BTT_CONTEXT_OPEN_SITE, CONTEXT_SEP_5, Me.BTT_CONTEXT_INFO}) Me.USER_CONTEXT.Name = "USER_CONTEXT" - Me.USER_CONTEXT.Size = New System.Drawing.Size(222, 430) + Me.USER_CONTEXT.Size = New System.Drawing.Size(222, 452) ' 'BTT_CONTEXT_DOWN ' @@ -734,6 +854,13 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form Me.BTT_CONTEXT_DELETE.Size = New System.Drawing.Size(221, 22) Me.BTT_CONTEXT_DELETE.Text = "Delete user / collection" ' + 'BTT_CONTEXT_ERASE + ' + Me.BTT_CONTEXT_ERASE.Image = Global.SCrawler.My.Resources.Resources.BrushToolPic_16 + Me.BTT_CONTEXT_ERASE.Name = "BTT_CONTEXT_ERASE" + Me.BTT_CONTEXT_ERASE.Size = New System.Drawing.Size(221, 22) + Me.BTT_CONTEXT_ERASE.Text = "Erase data" + ' 'BTT_CONTEXT_COPY_TO_FOLDER ' Me.BTT_CONTEXT_COPY_TO_FOLDER.Image = Global.SCrawler.My.Resources.Resources.PastePic_32 @@ -757,16 +884,19 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form ' 'BTT_CONTEXT_READY ' + Me.BTT_CONTEXT_READY.Image = Global.SCrawler.My.Resources.Resources.OkPic_32 Me.BTT_CONTEXT_READY.Name = "BTT_CONTEXT_READY" Me.BTT_CONTEXT_READY.Size = New System.Drawing.Size(221, 22) Me.BTT_CONTEXT_READY.Text = "Change ready for download" ' 'BTT_CONTEXT_GROUPS ' + Me.BTT_CONTEXT_GROUPS.AutoToolTip = True Me.BTT_CONTEXT_GROUPS.Image = Global.SCrawler.My.Resources.Resources.TagPic_24 Me.BTT_CONTEXT_GROUPS.Name = "BTT_CONTEXT_GROUPS" Me.BTT_CONTEXT_GROUPS.Size = New System.Drawing.Size(221, 22) Me.BTT_CONTEXT_GROUPS.Text = "Change labels" + Me.BTT_CONTEXT_GROUPS.ToolTipText = "Change user labels." & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10) & "Ctrl+click to include site-specific labels." ' 'BTT_CONTEXT_SCRIPT ' @@ -784,6 +914,7 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form ' 'BTT_CONTEXT_COL_MERGE ' + Me.BTT_CONTEXT_COL_MERGE.Image = Global.SCrawler.My.Resources.Resources.DBPic_32 Me.BTT_CONTEXT_COL_MERGE.Name = "BTT_CONTEXT_COL_MERGE" Me.BTT_CONTEXT_COL_MERGE.Size = New System.Drawing.Size(221, 22) Me.BTT_CONTEXT_COL_MERGE.Text = "Merge collection files" @@ -791,6 +922,7 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form 'BTT_CONTEXT_CHANGE_FOLDER ' Me.BTT_CONTEXT_CHANGE_FOLDER.AutoToolTip = True + Me.BTT_CONTEXT_CHANGE_FOLDER.Image = Global.SCrawler.My.Resources.Resources.FolderPic_32 Me.BTT_CONTEXT_CHANGE_FOLDER.Name = "BTT_CONTEXT_CHANGE_FOLDER" Me.BTT_CONTEXT_CHANGE_FOLDER.Size = New System.Drawing.Size(221, 22) Me.BTT_CONTEXT_CHANGE_FOLDER.Text = "Change folder" @@ -954,7 +1086,7 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form Private WithEvents BTT_CONTEXT_COL_MERGE As ToolStripMenuItem Private WithEvents LBL_JOBS_COUNT As ToolStripStatusLabel Private WithEvents BTT_DOWN_VIDEO As ToolStripMenuItem - Private WithEvents BTT_SHOW_INFO As PersonalUtilities.Forms.Controls.KeyClick.ToolStripButtonKeyClick + Private WithEvents MENU_INFO_SHOW_INFO As ToolStripMenuItem Private WithEvents BTT_CHANNELS As ToolStripButton Private WithEvents LIST_PROFILES As ListView Private WithEvents MENU_VIEW As ToolStripDropDownButton @@ -967,7 +1099,7 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form Private WithEvents BTT_SHOW_LABELS As ToolStripMenuItem Private WithEvents BTT_SHOW_NO_LABELS As ToolStripMenuItem Private WithEvents BTT_EDIT_USER As ToolStripButton - Private WithEvents BTT_CONTEXT_GROUPS As ToolStripMenuItem + Private WithEvents BTT_CONTEXT_GROUPS As PersonalUtilities.Forms.Controls.KeyClick.ToolStripMenuItemKeyClick Private WithEvents BTT_VERSION_INFO As ToolStripButton Private WithEvents BTT_CONTEXT_DOWN_LIMITED As ToolStripKeyMenuItem Private WithEvents BTT_CONTEXT_READY As ToolStripMenuItem @@ -1013,4 +1145,17 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form Private WithEvents BTT_TRAY_CHANNELS As ToolStripMenuItem Private WithEvents BTT_TRAY_DOWNLOADER As ToolStripMenuItem Private WithEvents PR_PRE As ToolStripProgressBar + Private WithEvents BTT_CONTEXT_ERASE As ToolStripMenuItem + Private WithEvents MENU_INFO_SHOW_MISSING As ToolStripMenuItem + Private WithEvents MENU_INFO_SHOW_USER_METRICS As ToolStripMenuItem + Private WithEvents BTT_MODE_SHOW_USERS As ToolStripMenuItem + Private WithEvents BTT_MODE_SHOW_SUBSCRIPTIONS As ToolStripMenuItem + Private WithEvents MENU_D_DOWN_ALL As ToolStripMenuItem + Private WithEvents MENU_D_DOWN_ALL_SITE As ToolStripMenuItem + Private WithEvents BTT_DOWN_ALL_SUBSCR As ToolStripKeyMenuItem + Private WithEvents BTT_DOWN_SITE_SUBSCR As ToolStripKeyMenuItem + Private WithEvents BTT_DOWN_ALL_FULL_SUBSCR As ToolStripKeyMenuItem + Private WithEvents BTT_DOWN_SITE_FULL_SUBSCR As ToolStripKeyMenuItem + Private WithEvents BTT_BUG_REPORT As ToolStripButton + Private WithEvents MENU_INFO_SHOW_QUEUE As ToolStripMenuItem End Class \ No newline at end of file diff --git a/SCrawler/MainFrame.resx b/SCrawler/MainFrame.resx index 56e777a..64790e9 100644 --- a/SCrawler/MainFrame.resx +++ b/SCrawler/MainFrame.resx @@ -147,46 +147,51 @@ False - + + False + + False False - - False - False False + + False + False False - - False - False - + False - + False 132, 17 - - Left-click: open the 'Info' form (show download summary). -Right click: open the 'Missing' form (show information about missing posts). -Ctrl+Shift+Click: open the "User metrics' form (show information about the user's metrics (such as size, number of files, etc.)). + + Download all users from specific sites. The 'Ready for download' option will be ignored. +Shift+Click to download, including non-existent users. +Ctrl+Shift+Click to download, excluding from the feed, including non-existent users. + + + Download all subscriptions from specific sites. The 'Ready for download' option will be ignored. +Shift+Click to download, including non-existent users. +Ctrl+Shift+Click to download, excluding from the feed, including non-existent users. @@ -207,6 +212,21 @@ Ctrl+Shift+Click: open the "User metrics' form (show information about the user' 9k7wdgtW4wRqSHlCP7y2AjWmbMB7Y7DzqgZdz2iF9zrxCDXq2oU9uLz31+tgAcHahhp1DSFY9pGhRl29 CFYXxrMoQ7BmsZfFPkoRpHWow+56hX26BWkRatR1gRIEaQLvUMMpOyhCkBpxBzWcMoOgLUMNm0vUIWj2 ebaJF7jj5+hGTiqE/f+bxDRGUIt8LIp+AC/GHt3tQnwvAAAAAElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG + YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9 + 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw + bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc + VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9 + c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32 + Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo + mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+ + kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D + TgDQASA1MVpwzwAAAABJRU5ErkJggg== diff --git a/SCrawler/MainFrame.vb b/SCrawler/MainFrame.vb index 74cf8e0..68fd7f4 100644 --- a/SCrawler/MainFrame.vb +++ b/SCrawler/MainFrame.vb @@ -25,6 +25,7 @@ Public Class MainFrame Friend MyChannels As ChannelViewForm Friend MySavedPosts As DownloadSavedPostsForm Private MyMissingPosts As MissingPostsForm + Private DownloadQueue As UserDownloadQueueForm Private MyFeed As DownloadFeedForm Private MySearch As UserSearchForm Private MyUserMetrics As UsersInfoForm = Nothing @@ -44,11 +45,16 @@ Public Class MainFrame End With BTT_IMPORT_USERS = New ToolStripMenuItem With {.Text = "Import", .Image = My.Resources.UsersIcon_32.ToBitmap} MENU_SETTINGS.DropDownItems.AddRange({New ToolStripSeparator, BTT_IMPORT_USERS}) + BTT_BUG_REPORT.Image = My.Resources.MailPic_16 End Sub #End Region #Region "Form handlers" Private Async Sub MainFrame_Load(sender As Object, e As EventArgs) Handles Me.Load - If Now.Month.ValueBetween(6, 8) Then Text = "SCrawler: Happy LGBT Pride Month! :-)" + If Now.Month.ValueBetween(6, 8) Then + Text = "SCrawler: Happy LGBT Pride Month! :-)" + ElseIf Not Settings.ProgramText.IsEmptyString Then + Text = Settings.ProgramText + End If Settings.DeleteCachePath() MainFrameObj = New MainFrameObjects(Me) MainFrameObj.ChangeCloseVisible() @@ -94,6 +100,8 @@ Public Class MainFrame UpdateLabelsGroups() SetShowButtonsCheckers(.ShowingMode.Value) CheckVersion(False) + BTT_MODE_SHOW_USERS.Checked = .MainFrameUsersShowDefaults + BTT_MODE_SHOW_SUBSCRIPTIONS.Checked = .MainFrameUsersShowSubscriptions BTT_SITE_ALL.Checked = .SelectedSites.Count = 0 BTT_SITE_SPECIFIC.Checked = .SelectedSites.Count > 0 BTT_SHOW_LIMIT_DATES_NOT.Tag = ShowingDates.Not @@ -151,6 +159,7 @@ Public Class MainFrame Downloader.Dispose() MyProgressForm.Dispose() InfoForm.Dispose() + DownloadQueue.DisposeIfReady() MyMissingPosts.DisposeIfReady() MyFeed.DisposeIfReady() MainFrameObj.ClearNotifications() @@ -360,6 +369,7 @@ CloseResume: Settings.Users.Add(UserDataBase.GetInstance(f.User)) With Settings.Users.Last If Not .FileExists Then + .Options = f.Options .Favorite = f.UserFavorite .Temporary = f.UserTemporary .ParseUserMediaOnly = f.UserMediaOnly @@ -367,6 +377,8 @@ CloseResume: .DownloadImages = f.DownloadImages .DownloadVideos = f.DownloadVideos .FriendlyName = f.UserFriendly + .BackColor = f.UserBackColor + .ForeColor = f.UserForeColor .Description = f.UserDescr .ScriptUse = f.ScriptUse .ScriptData = f.ScriptData @@ -403,18 +415,19 @@ CloseResume: End Sub #End Region #Region "Info, Feed, Channels, Saved posts" - Private Sub BTT_SHOW_INFO_KeyClick(ByVal Sender As Object, ByVal e As Controls.KeyClick.KeyClickEventArgs) Handles BTT_SHOW_INFO.KeyClick - If e.MouseButton = MouseButtons.Right Then - If MyMissingPosts Is Nothing Then MyMissingPosts = New MissingPostsForm - If MyMissingPosts.Visible Then MyMissingPosts.BringToFront() Else MyMissingPosts.Show() - ElseIf e.MouseButton = MouseButtons.Left Then - If e.Control And e.Shift Then - If MyUserMetrics Is Nothing Then MyUserMetrics = New UsersInfoForm - MyUserMetrics.FormShowS - Else - InfoForm.FormShow() - End If - End If + Private Sub MENU_INFO_SHOW_INFO_Click(sender As Object, e As EventArgs) Handles MENU_INFO_SHOW_INFO.Click + InfoForm.FormShow() + End Sub + Private Sub MENU_INFO_SHOW_QUEUE_Click(sender As Object, e As EventArgs) Handles MENU_INFO_SHOW_QUEUE.Click + DownloadQueue.FormShow(EDP.LogMessageValue) + End Sub + Private Sub MENU_INFO_SHOW_MISSING_Click(sender As Object, e As EventArgs) Handles MENU_INFO_SHOW_MISSING.Click + If MyMissingPosts Is Nothing Then MyMissingPosts = New MissingPostsForm + If MyMissingPosts.Visible Then MyMissingPosts.BringToFront() Else MyMissingPosts.Show() + End Sub + Private Sub MENU_INFO_SHOW_USER_METRICS_Click(sender As Object, e As EventArgs) Handles MENU_INFO_SHOW_USER_METRICS.Click + If MyUserMetrics Is Nothing Then MyUserMetrics = New UsersInfoForm + MyUserMetrics.FormShowS End Sub Private Sub ShowFeed() Handles BTT_FEED.Click, BTT_TRAY_FEED_SHOW.Click If MyFeed Is Nothing Then MyFeed = New DownloadFeedForm : AddHandler Downloader.FeedFilesChanged, AddressOf MyFeed.Downloader_FilesChanged @@ -439,22 +452,39 @@ CloseResume: End Sub #End Region #Region "Download" - Private Sub BTT_DOWN_SELECTED_KeyClick(sender As Object, e As MyKeyEventArgs) Handles BTT_DOWN_SELECTED.KeyClick + Private Sub BTT_DOWN_SELECTED_KeyClick(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_DOWN_SELECTED.KeyClick DownloadSelectedUser(DownUserLimits.None, e.IncludeInTheFeed) End Sub - Private Sub BTT_DOWN_ALL_KeyClick(sender As Object, e As MyKeyEventArgs) Handles BTT_DOWN_ALL.KeyClick - Downloader.AddRange(Settings.GetUsers(Function(u) u.ReadyForDownload And u.Exists), e.IncludeInTheFeed) +#Region "Down all" + Private Sub BTT_DOWN_ALL_KeyClick(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_DOWN_ALL.KeyClick + Downloader.AddRange(Settings.GetUsers(Function(u) u.ReadyForDownload And UserExistsNonSubscriptionsPredicate.Invoke(u)), e.IncludeInTheFeed) End Sub - Private Sub BTT_DOWN_SITE_KeyClick(sender As Object, e As MyKeyEventArgs) Handles BTT_DOWN_SITE.KeyClick - DownloadSiteFull(True, e.IncludeInTheFeed) + Private Sub BTT_DOWN_ALL_SUBSCR_KeyClick(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_DOWN_ALL_SUBSCR.KeyClick + Downloader.AddRange(Settings.GetUsers(Function(u) u.ReadyForDownload And UserExistsSubscriptionsPredicate.Invoke(u)), e.IncludeInTheFeed) End Sub - Private Sub BTT_DOWN_ALL_FULL_KeyClick(sender As Object, e As MyKeyEventArgs) Handles BTT_DOWN_ALL_FULL.KeyClick - Downloader.AddRange(Settings.GetUsers(UserExistsPredicate), e.IncludeInTheFeed) + Private Sub BTT_DOWN_SITE_KeyClick(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_DOWN_SITE.KeyClick + DownloadSiteFull(True, e.IncludeInTheFeed, False) End Sub - Private Sub BTT_DOWN_SITE_FULL_KeyClick(sender As Object, e As MyKeyEventArgs) Handles BTT_DOWN_SITE_FULL.KeyClick - DownloadSiteFull(False, e.IncludeInTheFeed, e.Shift) + Private Sub BTT_DOWN_SITE_SUBSCR_KeyClick(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_DOWN_SITE_SUBSCR.KeyClick + DownloadSiteFull(True, e.IncludeInTheFeed, True) End Sub - Private Sub DownloadSiteFull(ByVal ReadyForDownloadOnly As Boolean, ByVal IncludeInTheFeed As Boolean, Optional ByVal IgnoreExists As Boolean = False) +#End Region +#Region "Down full" + Private Sub BTT_DOWN_ALL_FULL_KeyClick(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_DOWN_ALL_FULL.KeyClick + Downloader.AddRange(Settings.GetUsers(UserExistsNonSubscriptionsPredicate), e.IncludeInTheFeed) + End Sub + Private Sub BTT_DOWN_ALL_FULL_SUBSCR_KeyClick(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_DOWN_ALL_FULL_SUBSCR.KeyClick + Downloader.AddRange(Settings.GetUsers(UserExistsSubscriptionsPredicate), e.IncludeInTheFeed) + End Sub + Private Sub BTT_DOWN_SITE_FULL_KeyClick(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_DOWN_SITE_FULL.KeyClick + DownloadSiteFull(False, e.IncludeInTheFeed, False, e.Shift) + End Sub + Private Sub BTT_DOWN_SITE_FULL_SUBSCR_KeyClick(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_DOWN_SITE_FULL_SUBSCR.KeyClick + DownloadSiteFull(False, e.IncludeInTheFeed, True, e.Shift) + End Sub +#End Region + Private Sub DownloadSiteFull(ByVal ReadyForDownloadOnly As Boolean, ByVal IncludeInTheFeed As Boolean, + ByVal Subscription As Boolean, Optional ByVal IgnoreExists As Boolean = False) Using f As New SiteSelectionForm(Settings.LatestDownloadedSites.ValuesList) f.ShowDialog() If f.DialogResult = DialogResult.OK Then @@ -463,6 +493,7 @@ CloseResume: Settings.LatestDownloadedSites.Update() If f.SelectedSites.Count > 0 Then Downloader.AddRange(Settings.GetUsers(Function(u) f.SelectedSites.Contains(u.Site) And (u.Exists Or IgnoreExists) And + u.IsSubscription = Subscription And (Not ReadyForDownloadOnly Or u.ReadyForDownload)), IncludeInTheFeed) End If End If @@ -521,7 +552,7 @@ CloseResume: End Sub #End Region #Region "View" -#Region "1 - view mode" +#Region "1 - view mode list" Private Sub BTT_VIEW_LARGE_Click(sender As Object, e As EventArgs) Handles BTT_VIEW_LARGE.Click ApplyViewPattern(ViewModes.IconLarge) End Sub @@ -558,7 +589,17 @@ CloseResume: End If End Sub #End Region -#Region "2 - view site" +#Region "2 - view mode users" + Private Sub BTT_MODE_SHOW_USERS_Click(sender As Object, e As EventArgs) Handles BTT_MODE_SHOW_USERS.Click + Settings.MainFrameUsersShowDefaults.Value = BTT_MODE_SHOW_USERS.Checked + RefillList() + End Sub + Private Sub BTT_MODE_SHOW_SUBSCRIPTIONS_Click(sender As Object, e As EventArgs) Handles BTT_MODE_SHOW_SUBSCRIPTIONS.Click + Settings.MainFrameUsersShowSubscriptions.Value = BTT_MODE_SHOW_SUBSCRIPTIONS.Checked + RefillList() + End Sub +#End Region +#Region "3 - view site" Private Sub BTT_SITE_ALL_Click(sender As Object, e As EventArgs) Handles BTT_SITE_ALL.Click Settings.SelectedSites.Clear() Settings.SelectedSites.Update() @@ -580,7 +621,7 @@ CloseResume: End Using End Sub #End Region -#Region "3 - view filters" +#Region "4 - view filters" Private Sub BTT_SHOW_ALL_Click(sender As Object, e As EventArgs) Handles BTT_SHOW_ALL.Click SetShowButtonsCheckers(ShowingModes.All) End Sub @@ -665,7 +706,7 @@ CloseResume: End Using End Function #End Region -#Region "4 - view dates" +#Region "5 - view dates" Private Sub BTT_SHOW_LIMIT_DATES_NOT_IN_Click(ByVal Sender As ToolStripMenuItem, ByVal e As EventArgs) Handles BTT_SHOW_LIMIT_DATES_NOT.Click, BTT_SHOW_LIMIT_DATES_IN.Click Dim r As Boolean = False @@ -717,6 +758,15 @@ CloseResume: Private Sub BTT_DONATE_Click(sender As Object, e As EventArgs) Handles BTT_DONATE.Click Try : Process.Start("https://github.com/AAndyProgram/SCrawler/blob/main/HowToSupport.md") : Catch : End Try End Sub + Private Sub BTT_BUG_REPORT_Click(sender As Object, e As EventArgs) Handles BTT_BUG_REPORT.Click + Try + With Settings + Using f As New BugReporterForm(.Cache, .Design, .ProgramText, My.Application.Info.Version, + False, .Self, .ProgramDescription) : f.ShowDialog() : End Using + End With + Catch + End Try + End Sub #End Region #Region "List handlers" Private _LatestSelected As Integer = -1 @@ -753,6 +803,32 @@ CloseResume: Private Sub BTT_CONTEXT_DELETE_Click(sender As Object, e As EventArgs) Handles BTT_CONTEXT_DELETE.Click DeleteSelectedUser() End Sub + Private Sub BTT_CONTEXT_ERASE_Click(sender As Object, e As EventArgs) Handles BTT_CONTEXT_ERASE.Click + Const msgTitle$ = "Erase data" + Try + Dim users As List(Of IUserData) = GetSelectedUserArray() + If users.ListExists Then + Dim m As IUserData.EraseMode = UserDataBase.GetEraseMode(users) + If Not m = IUserData.EraseMode.None Then + Dim nd As New List(Of IUserData) + For Each user As IUserData In users + If Not user.EraseData(m) Then nd.Add(user) + Next + If nd.Count = 0 Then + MsgBoxE({"All user data has been erased.", msgTitle}) + Else + MsgBoxE(New MMessage("The data of the following users has not been erased:" & + vbCr.StringDup(2) & nd.ListToStringE(vbCr, GetUserListProvider(True)), msgTitle,, + MsgBoxStyle.Exclamation) With {.Editable = True}) + End If + End If + Else + MsgBoxE({"No user selected", msgTitle}, vbExclamation) + End If + Catch ex As Exception + ErrorsDescriber.Execute(EDP.LogMessageValue, ex, msgTitle) + End Try + End Sub Private Sub BTT_CONTEXT_COPY_TO_FOLDER_Click(sender As Object, e As EventArgs) Handles BTT_CONTEXT_COPY_TO_FOLDER.Click CopyUserData() End Sub @@ -784,19 +860,24 @@ CloseResume: End Sub) End If End Sub - Private Sub BTT_CONTEXT_GROUPS_Click(sender As Object, e As EventArgs) Handles BTT_CONTEXT_GROUPS.Click + Private Sub BTT_CONTEXT_GROUPS_Click(ByVal Sender As Object, ByVal e As Controls.KeyClick.KeyClickEventArgs) Handles BTT_CONTEXT_GROUPS.KeyClick Const MsgTitle$ = "Label change" Try Dim users As List(Of IUserData) = GetSelectedUserArray() If users.ListExists Then Dim l As List(Of String) = ListAddList(Nothing, users.SelectMany(Function(u) u.Labels), LAP.NotContainsOnly) + Dim lex As List(Of String) = ListAddList(Nothing, users.SelectMany(Function(u As UserDataBase) u.SpecialLabels), LNC) + Dim initialCount% = l.Count + Dim isOneUser As Boolean = users.Count = 1 AndAlso Not users(0).IsCollection + Dim inclSpec As Boolean = (e.Control And (users.Count > 1 Or (users.Count = 1 And users(0).IsCollection))) Or isOneUser + If Not inclSpec Then l.ListWithRemove(lex) Using f As New LabelsForm(l) With {.WithDeleteButton = l.Count > 0} f.ShowDialog() If f.DialogResult = DialogResult.OK Then Dim labels As List(Of String) = f.LabelsList - Dim lp As New ListAddParams(LAP.NotContainsOnly) - Dim a As Action(Of IUserData) = Sub(u) u.Labels.ListAddList(labels, lp) Dim cMsg As New MMessage("Operation canceled", MsgTitle) + Dim upMode As Byte + Dim keepSpecial As Boolean = True If labels.ListExists Then Select Case MsgBoxE(New MMessage($"What do you want to do with the selected labels?{vbCr}Selected labels:{vbCr}{labels.ListToString(vbCr)}", MsgTitle, @@ -806,27 +887,25 @@ CloseResume: New MsgBoxButton("Remove", "These labels will be removed from the existing ones"), "Cancel" }, vbExclamation) With {.ButtonsPerRow = 2}).Index - Case 0 : lp.ClearBeforeAdd = True - Case 1 : lp.ClearBeforeAdd = False - Case 2 : a = Sub(u) u.Labels.ListDisposeRemove(labels) + Case 0 : upMode = 1 + Case 1 : upMode = 0 + Case 2 : upMode = 2 Case Else : cMsg.Show() : Exit Sub End Select Else If MsgBoxE({"Are you sure you want to remove all labels?", MsgTitle}, vbExclamation + vbYesNo) = vbYes Then - a = Sub(u) u.Labels.Clear() + upMode = 1 Else cMsg.Show() Exit Sub End If End If + + If lex.ListExists AndAlso Not isOneUser AndAlso (l.ListContains(lex) Or (Not inclSpec And Not l.Count = initialCount)) Then _ + keepSpecial = UserDataBase.UpdateLabelsKeepSpecial(upMode) + users.ForEach(Sub(ByVal u As IUserData) - If u.IsCollection Then - With DirectCast(u, UserDataBind) - If .Count > 0 Then .Collections.ForEach(a) - End With - Else - a.Invoke(u) - End If + UserDataBase.UpdateLabels(u, labels, upMode, keepSpecial) u.UpdateUserInformation() End Sub) End If @@ -881,6 +960,8 @@ CloseResume: Dim _col_user As Predicate(Of IUserData) = Function(u) u.IsCollection Dim userCollection As UserDataBind = users.Find(_col_user) Dim _col_name$ = String.Empty + Dim _col_dest As SFile = Nothing + Dim allUsersIsSubscriptions As Boolean Dim userProvider As IFormatProvider = GetUserListProvider(False) If Not userCollection Is Nothing Then i = users.LongCount(Function(u) _col_user(u)) @@ -895,17 +976,23 @@ CloseResume: If _col_name.IsEmptyString Then Using f As New CollectionEditorForm f.ShowDialog() - If f.DialogResult = DialogResult.OK Then _col_name = f.Collection + If f.DialogResult = DialogResult.OK Then + _col_name = f.MyCollection + _col_dest = f.MyCollectionSpecialPath + End If End Using End If If _col_name.IsEmptyString Then MsgBoxE({"The destination collection has not been selected.", MsgTitle}, vbExclamation) Else + With (From u In users Where Not u.IsCollection Select u.IsSubscription) + allUsersIsSubscriptions = .ListExists AndAlso .All(Function(u) u) + End With With Settings userCollection = .Users.Find(Function(u) u.IsCollection And u.CollectionName = _col_name) Dim Added As Boolean = userCollection Is Nothing If Added Then - .Users.Add(New UserDataBind(_col_name)) + .Users.Add(New UserDataBind(_col_name, _col_dest)) MainFrameObj.CollectionHandler(DirectCast(.Users.Last, UserDataBind)) userCollection = .Users.Last End If @@ -915,10 +1002,18 @@ CloseResume: Dim __ModelAskForDecision As Boolean = False If Not Added Then __modelCollection = userCollection.CollectionModel If Added Then - __ModelAskForDecision = True + If allUsersIsSubscriptions Then + __modelUser = UsageModel.Virtual + __modelCollection = UsageModel.Virtual + Else + __ModelAskForDecision = True + End If ElseIf userCollection.CollectionModel = UsageModel.Virtual Then __modelUser = UsageModel.Virtual __modelCollection = UsageModel.Virtual + ElseIf allUsersIsSubscriptions Then + __modelCollection = userCollection.CollectionModel + __modelUser = UsageModel.Virtual Else __ModelAskForDecision = True End If @@ -966,7 +1061,11 @@ CloseResume: For Each user As UserDataBase In users If Not user.IsCollection Then Try - user.User.UserModel = IIf(user.HOST.Key = PathPlugin.PluginKey, UsageModel.Virtual, __modelUser) + If user.IsSubscription Then + user.User.UserModel = UsageModel.Virtual + Else + user.User.UserModel = IIf(user.HOST.Key = PathPlugin.PluginKey, UsageModel.Virtual, __modelUser) + End If user.User.CollectionModel = __modelCollection userCollection.Add(user) RemoveUserFromList(user) @@ -1027,23 +1126,84 @@ CloseResume: End If End Sub Private Sub BTT_CONTEXT_CHANGE_FOLDER_Click(sender As Object, e As EventArgs) Handles BTT_CONTEXT_CHANGE_FOLDER.Click + ChangeUserDestination(GetSelectedUserArray(), True) + End Sub + Private Function ChangeUserDestination(ByVal users As IEnumerable(Of IUserData), ByVal InitialInvoke As Boolean, + Optional ByVal NewUsersLocation As STDownloader.DownloadLocation? = Nothing) As Boolean Const MsgTitle$ = "Change user folder" + Dim automationPaused As Boolean = Not Settings.Automation.Pause = PauseModes.Disabled Try - If Downloader.Working Then - MsgBoxE({"Some users are currently downloading." & vbCr & - "You cannot change paths while downloading." & vbCr & - "Wait until the download is complete.", MsgTitle}, vbCritical) - Exit Sub - Else - Downloader.Suspended = True - End If - Dim users As List(Of IUserData) = GetSelectedUserArray() + Dim msgShowing As New ErrorsDescriber(If(InitialInvoke, EDP.ShowMainMsg, EDP.None)) If users.ListExists Then + If Downloader.Working Then + MsgBoxE({"Some users are currently downloading." & vbCr & + "You cannot change paths while downloading." & vbCr & + "Wait until the download is complete.", MsgTitle}, vbCritical) + Return False + Else + If InitialInvoke Then + Downloader.Suspended = True + If Not automationPaused Then Settings.Automation.Pause = PauseModes.Unlimited + End If + End If + + Dim locationChooser As GlobalLocationsChooserForm + Dim newLoc As STDownloader.DownloadLocation + If users.Count > 1 Then + Dim multiUserMsgTxt$ = "You have selected multiple users to change their destinations." & vbCr & + "It is highly recommended to change the destination for one user at a time." + If users.ListExists(Function(u) u.IsCollection And Not u.IsVirtual) Then _ + multiUserMsgTxt &= vbCr & vbCr & "A collection was also found in your selection." & vbCr & + "The collection movement model is always the only one, regardless of the path model you choose." + multiUserMsgTxt &= vbCr & vbCr & $"Selected users:{vbCr}{users.ListToStringE(vbCr, GetUserListProvider(True))}." + + Select Case MsgBoxE({multiUserMsgTxt, MsgTitle}, vbExclamation,,, + {New MsgBoxButton("Process", "Change the destination for all the users you selected"), + New MsgBoxButton("First only", "Process only the first user in the selection"), + "Cancel"}).Index + Case 0 + locationChooser = New GlobalLocationsChooserForm With { + .MyIsMultipleUsers = True, + .MyNonMyltipleUser = If(users.FirstOrDefault(Function(u) Not u.IsCollection), users(0)), + .MyIsCollectionSelector = users.All(Function(u) u.IsCollection) + } + With locationChooser + .ShowDialog() + If .DialogResult = DialogResult.OK Then + newLoc = .MyDestination + .Dispose() + Else + .Dispose() + ShowOperationCanceledMsg(MsgTitle) + Return False + End If + End With + With users.Where(Function(u) Not ChangeUserDestination({u}, False, newLoc)) + If .ListExists Then + If .Count = users.Count Then + MsgBoxE({"None of the users' destinations have been changed!", MsgTitle}, vbCritical) + Return False + Else + MsgBoxE({$"The following users' destinations have not been changed:{vbCr}" & + users.ListToStringE(vbCr, GetUserListProvider(True)), MsgTitle}, vbCritical) + Return True + End If + Else + MsgBoxE({"Users' data has been moved", MsgTitle}) + Return True + End If + End With + Case 1 : users = New List(Of IUserData) From {users.First} + Case Else : ShowOperationCanceledMsg(MsgTitle) : Return False + End Select + End If + If users.Count = 1 Then Dim CutOption% = 1 Dim _IsCollection As Boolean = False Dim CurrDir As SFile Dim colName$ = String.Empty + Dim pathHandler As PathMoverHandler With users(0) If .IsCollection Then _IsCollection = True @@ -1054,50 +1214,74 @@ CloseResume: MsgBoxE({"This is a virtual collection." & vbCr & "The virtual collection path cannot be changed." & vbCr & "To change the paths of users included in a virtual collection, " & - "you must split the collection and then change the user paths.", MsgTitle}, vbCritical) - Exit Sub + "you must split the collection and then change the user paths.", MsgTitle}, vbCritical, msgShowing) + Return False Else CurrDir = .GetRealUserFile If CurrDir.IsEmptyString Then - MsgBoxE({"Non-virtual users not found", MsgTitle}, vbCritical) - Exit Sub + MsgBoxE({"Non-virtual users not found", MsgTitle}, vbCritical, msgShowing) + Return False End If CurrDir = CurrDir.CutPath(IIf(.DataMerging, 3, 2)) - colName = CurrDir.Segments.LastOrDefault + colName = .CollectionName Dim vu As IEnumerable(Of IUserData) = .Where(Function(vuu) vuu.UserModel = UsageModel.Virtual Or vuu.HOST.Key = PathPlugin.PluginKey) If vu.ListExists Then - If MsgBoxE({"This collection contains virtual users and/or paths." & vbCr & - "If you continue, the virtual user paths will not be changed." & vbCr & - "The following users have been added to the collection in virtual mode:" & vbCr & - vu.ListToStringE(vbCr, GetUserListProvider(False)), MsgTitle}, - vbExclamation,,, {"Continue", "Cancel"}) = 1 Then MsgBoxE({"Operation canceled", MsgTitle}) : Exit Sub + If InitialInvoke AndAlso MsgBoxE({"This collection contains virtual users and/or paths." & vbCr & + "If you continue, the virtual user paths will not be changed." & vbCr & + "The following users have been added to the collection in virtual mode:" & vbCr & + vu.ListToStringE(vbCr, GetUserListProvider(False)), MsgTitle}, + vbExclamation,,, {"Continue", "Cancel"}) = 1 Then ShowOperationCanceledMsg(MsgTitle) : Return False End If End If End With ElseIf .HOST.Key = PathPlugin.PluginKey Then - MsgBoxE({"This is the path (not user). The paths cannot be changed.", MsgTitle}, vbCritical) - Exit Sub + MsgBoxE({"This is the path (not user). The paths cannot be changed.", MsgTitle}, vbCritical, msgShowing) + Return False Else CurrDir = .Self.File.CutPath(1) End If - Dim NewDest As SFile = SFile.SelectPath(CurrDir, $"Select a new destination for {IIf(_IsCollection, "collection", "user")} [{ .Self}]") - Dim NewDest2 As SFile + If NewUsersLocation.HasValue Then + newLoc = NewUsersLocation.Value + Else + locationChooser = New GlobalLocationsChooserForm With {.MyInitialLocation = CurrDir} + locationChooser.MyNonMyltipleUser = .Self() + If _IsCollection Then + locationChooser.MyIsCollectionSelector = True + locationChooser.MyCollectionName = colName + End If + With locationChooser + .ShowDialog() + If .DialogResult = DialogResult.OK Then + newLoc = .MyDestination + colName = .MyCollectionName + .Dispose() + Else + .Dispose() + If InitialInvoke Then ShowOperationCanceledMsg(MsgTitle) + Return False + End If + End With + End If + + If .IsCollection Then + pathHandler = GlobalLocationsChooserForm.ModelHandler(PathCreationModel.Collection) + Else + pathHandler = GlobalLocationsChooserForm.ModelHandler(newLoc.Model) + End If + + Dim NewDest As SFile + If .IsCollection Then + If Not InitialInvoke Then + NewDest = $"{newLoc.Path.CSFilePS}{SettingsCLS.CollectionsFolderName}\{ .CollectionName}\" + Else + NewDest = $"{newLoc.Path.CSFilePS}{ .CollectionName}\" + End If + Else + NewDest = pathHandler.Invoke(DirectCast(.Self, UserDataBase).User, newLoc.Path.CSFileP) + End If If Not NewDest.IsEmptyString Then - NewDest = $"{NewDest.PathWithSeparator}{colName}\" - NewDest2 = $"{NewDest.PathWithSeparator}{CurrDir.Segments.LastOrDefault().StringAppend("\", String.Empty)}" - Dim choice% = MsgBoxE(New MMessage($"You are changing the user's [{ .Self}] destination" & vbCr & - $"Current destination: {CurrDir.PathNoSeparator}" & vbCr & - $"New destination [1]: {NewDest.PathNoSeparator}" & vbCr & - $"New destination [2]: {NewDest2.PathWithSeparator}", - MsgTitle, - {New MsgBoxButton("Confirm [1] (Enter)", "Move the data to the destination [1]."), - New MsgBoxButton("Confirm [2]", "Move the data to the destination [2].") With {.KeyCode = Keys.D2}, - "Cancel"}, - MsgBoxStyle.Exclamation) With {.AppendKeyCode = False}) - If choice < 2 Then - If choice = 1 Then NewDest = NewDest2 - If Not NewDest.IsEmptyString AndAlso + If Not NewDest.IsEmptyString AndAlso (Not NewDest.Exists(SFO.Path, False) OrElse ( SFile.GetFiles(NewDest,, IO.SearchOption.AllDirectories, EDP.ThrowException).ListIfNothing.Count = 0 AndAlso @@ -1105,54 +1289,92 @@ CloseResume: Not NewDest.Exists(SFO.Path, False) ) ) Then - If SFile.Move(CurrDir, NewDest, SFO.Path,,, EDP.ShowMainMsg + EDP.ReturnValue) Then - Dim ApplyChanges As Action(Of IUserData) = Sub(ByVal __user As IUserData) - With DirectCast(__user, UserDataBase) - Dim u As UserInfo = .User - Settings.UsersList.Remove(u) - If _IsCollection Then + If SFile.Move(CurrDir, NewDest, SFO.Path,,, EDP.ReturnValue + If(InitialInvoke, EDP.ShowMainMsg, 0)) Then + Dim colRootDef As SFile = Settings.CollectionsPathF + Dim __UserSpecialPathsEquals As Func(Of UserInfo, Boolean, Boolean) = + Function(ByVal __user As UserInfo, ByVal __isCol As Boolean) As Boolean + Dim u1 As UserInfo = __user + Dim u2 As UserInfo = __user + If __isCol Then + u1.CollectionName = colName + u1.SpecialPath = Nothing + u1.SpecialCollectionPath = Nothing + u2.CollectionName = colName + u2.SpecialPath = Nothing + u2.SpecialCollectionPath = NewDest + Else + u1.CollectionName = String.Empty + u1.SpecialPath = Nothing + u1.SpecialCollectionPath = Nothing + u2.CollectionName = String.Empty + u2.SpecialPath = NewDest + u2.SpecialCollectionPath = Nothing + End If + u1.UpdateUserFile() + u2.UpdateUserFile() + Return u1.File = u2.File + End Function + Dim ApplyChanges As Action(Of IUserData) = Sub(ByVal __user As IUserData) + With DirectCast(__user, UserDataBase) + Dim u As UserInfo = .User + Settings.UsersList.Remove(u) + If _IsCollection Then + u.CollectionName = colName + If Not __UserSpecialPathsEquals(u, True) Then u.SpecialCollectionPath = NewDest Else - u.SpecialPath = NewDest + u.SpecialCollectionPath = Nothing End If - u.UpdateUserFile() - Settings.UsersList.Add(u) - .User = u - .UpdateUserInformation() - End With - End Sub - If .Self.IsCollection Then - With DirectCast(.Self, UserDataBind) - For Each user In .Collections : ApplyChanges(user) : Next - End With - Else - ApplyChanges(.Self) - End If - Settings.UpdateUsersList() - MsgBoxE({"User data has been moved", MsgTitle}) + u.SpecialPath = Nothing + Else + u.CollectionName = String.Empty + If Not __UserSpecialPathsEquals(u, False) Then + u.SpecialPath = NewDest + Else + u.SpecialPath = Nothing + End If + u.SpecialCollectionPath = Nothing + End If + u.UpdateUserFile() + Settings.UsersList.Add(u) + .User = u + .UpdateUserInformation() + End With + End Sub + If .IsCollection Then + With DirectCast(.Self, UserDataBind) + For Each user In .Collections : ApplyChanges(user) : Next + End With + Else + ApplyChanges(.Self) End If - Else - MsgBoxE({$"Unable to move user data to new destination [{NewDest}]{vbCr}Operation canceled", MsgTitle}, MsgBoxStyle.Critical) + Settings.UpdateUsersList() + MsgBoxE({"User data has been moved", MsgTitle},, msgShowing) + Return True End If Else - MsgBoxE({"Operation canceled", MsgTitle}) + MsgBoxE({$"Unable to move user data to new destination [{NewDest}]{vbCr}Operation canceled", MsgTitle}, MsgBoxStyle.Critical, msgShowing) End If Else - MsgBoxE({$"You have not entered a new destination{vbCr}Operation canceled", MsgTitle}, MsgBoxStyle.Exclamation) + MsgBoxE({$"You have not entered a new destination{vbCr}Operation canceled", MsgTitle}, MsgBoxStyle.Exclamation, msgShowing) End If End With Else - MsgBoxE({"You have selected multiple users. You can change the folder only for one user!", MsgTitle}, MsgBoxStyle.Critical) + MsgBoxE({"You have selected multiple users. You can change the folder only for one user!", MsgTitle}, MsgBoxStyle.Critical, msgShowing) End If Else - MsgBoxE({"No one user selected", MsgTitle}, MsgBoxStyle.Exclamation) + MsgBoxE({"No one user selected", MsgTitle}, MsgBoxStyle.Exclamation, msgShowing) End If + Return False Catch ex As Exception - ErrorsDescriber.Execute(EDP.ShowAllMsg, ex, "Error while moving user") + Return ErrorsDescriber.Execute(EDP.ReturnValue + If(InitialInvoke, EDP.ShowAllMsg, EDP.SendToLog), ex, "Error while moving user", False) Finally - Downloader.Suspended = False + If InitialInvoke Then + Downloader.Suspended = False + If Not automationPaused Then Settings.Automation.Pause = PauseModes.Disabled + End If End Try - End Sub + End Function #End Region #Region "3 - change image" Private Sub BTT_CHANGE_IMAGE_Click(sender As Object, e As EventArgs) Handles BTT_CHANGE_IMAGE.Click @@ -1193,6 +1415,7 @@ CloseResume: BTT_CONTEXT_DOWN.DropDownItems.AddRange(.ContextDown) BTT_CONTEXT_EDIT.DropDownItems.AddRange(.ContextEdit) BTT_CONTEXT_DELETE.DropDownItems.AddRange(.ContextDelete) + BTT_CONTEXT_ERASE.DropDownItems.AddRange(.ContextErase) BTT_CONTEXT_OPEN_PATH.DropDownItems.AddRange(.ContextPath) BTT_CONTEXT_OPEN_SITE.DropDownItems.AddRange(.ContextSite) End With @@ -1201,6 +1424,7 @@ CloseResume: BTT_CONTEXT_DOWN.DropDownItems.Clear() BTT_CONTEXT_EDIT.DropDownItems.Clear() BTT_CONTEXT_DELETE.DropDownItems.Clear() + BTT_CONTEXT_ERASE.DropDownItems.Clear() BTT_CONTEXT_OPEN_PATH.DropDownItems.Clear() BTT_CONTEXT_OPEN_SITE.DropDownItems.Clear() End If @@ -1248,7 +1472,7 @@ CloseResume: #Region "Operation providers" Private OperationsUserListProvider As IFormatProvider = Nothing Private OperationsUserListProviderCollections As IFormatProvider = Nothing - Private Function GetUserListProvider(ByVal WithCollections As Boolean) As IFormatProvider + Friend Function GetUserListProvider(ByVal WithCollections As Boolean) As IFormatProvider If WithCollections Then If OperationsUserListProviderCollections Is Nothing Then _ OperationsUserListProviderCollections = New CustomProvider(Function(v, d, p, n, ee) @@ -1393,46 +1617,46 @@ ResumeDownloadingOperation: f.ShowDialog() If f.DialogResult = DialogResult.OK Then Dim NeedToUpdate As Boolean = True - If user.IsCollection Then - If user.IsCollection And Not user.CollectionName = f.CollectionName Then - If Not user.IsVirtual AndAlso Downloader.Working Then - MsgBoxE({"Some users are currently downloading." & vbCr & + If user.IsCollection And Not user.CollectionName = f.CollectionName Then + If Not user.IsVirtual AndAlso Downloader.Working Then + MsgBoxE({"Some users are currently downloading." & vbCr & "You cannot change collection name while downloading." & vbCr & "Wait until the download is complete.", MsgTitle}, vbCritical) - Exit Sub - Else - If Not user.IsVirtual Then - Dim colFile As SFile = DirectCast(user, UserDataBind).GetRealUserFile - If Not colFile.IsEmptyString Then - colFile = colFile.CutPath(IIf(DirectCast(user, UserDataBind).DataMerging, 1, 2)) - If Not colFile.IsEmptyString Then - Dim nf As SFile = $"{colFile.CutPath(1).PathWithSeparator}{f.CollectionName}".CSFilePS - If Not SFile.Rename(colFile, New SFile With {.Path = f.CollectionName}, SFO.Path, - New ErrorsDescriber(True, False, False, New SFile)).IsEmptyString Then - RemoveUserFromList(user) - Dim __user As UserInfo - For Each ColUser As UserDataBase In DirectCast(user, UserDataBind).Collections - __user = ColUser.User - Settings.UsersList.Remove(__user) - __user.CollectionName = f.CollectionName - If Not __user.SpecialCollectionPath.IsEmptyString Then __user.SpecialCollectionPath = nf - __user.UpdateUserFile() - ColUser.User = __user - Settings.UsersList.Add(__user) - Next - user.UpdateUserInformation() - UserListUpdate(user, True) - NeedToUpdate = False - End If + Exit Sub + Else + If Not user.IsVirtual Then + Dim rUser As UserDataBase = DirectCast(user, UserDataBind).GetRealUser + If Not rUser Is Nothing Then + Dim colPathCurr As SFile = rUser.User.GetCollectionRootPath + Dim colPathNew As SFile = SFile.GetPath(colPathCurr.CutPath.PathWithSeparator & f.CollectionName) + If Not colPathCurr.Exists(SFO.Path, False) Then + MsgBoxE({"Original location of collection not found. Operation canceled.", MsgTitle}, vbCritical) + ElseIf colPathNew.Exists(SFO.Path, False) Then + MsgBoxE({"The new collection location already exists. Operation canceled.", MsgTitle}, vbCritical) + Else + If Not SFile.Rename(colPathCurr, colPathNew, SFO.Path, New ErrorsDescriber(True, False, False, New SFile)).IsEmptyString Then + RemoveUserFromList(user) + Dim __user As UserInfo + For Each ColUser As UserDataBase In DirectCast(user, UserDataBind).Collections + __user = ColUser.User + Settings.UsersList.Remove(__user) + __user.CollectionName = f.CollectionName + If Not __user.SpecialCollectionPath.IsEmptyString Then __user.SpecialCollectionPath = colPathNew + __user.UpdateUserFile() + ColUser.User = __user + Settings.UsersList.Add(__user) + Next + user.UpdateUserInformation() + UserListUpdate(user, True) + NeedToUpdate = False End If End If - Else - RemoveUserFromList(user) - user.CollectionName = f.CollectionName - user.UpdateUserInformation() - UserListUpdate(user, True) - NeedToUpdate = False End If + Else + RemoveUserFromList(user) + DirectCast(user, UserDataBind).ChangeVirtualCollectionName(f.CollectionName) + UserListUpdate(user, True) + NeedToUpdate = False End If End If End If diff --git a/SCrawler/MainFrameObjects.vb b/SCrawler/MainFrameObjects.vb index 7c6c7ce..6b4ffa7 100644 --- a/SCrawler/MainFrameObjects.vb +++ b/SCrawler/MainFrameObjects.vb @@ -62,6 +62,9 @@ Friend Class MainFrameObjects : Implements INotificator Friend Sub UpdateLogButton() MyMainLOG_UpdateLogButton(MF.BTT_LOG, MF.Toolbar_TOP) End Sub + Friend Function GetUserListProvider(ByVal WithCollections As Boolean) As IFormatProvider + Return MF.GetUserListProvider(WithCollections) + End Function #End Region #Region "Notifications" Private Sub INotificator_ShowNotification(ByVal Text As String, ByVal Image As SFile) Implements INotificator.ShowNotification diff --git a/SCrawler/MainMod.vb b/SCrawler/MainMod.vb index 875cc00..0729dbf 100644 --- a/SCrawler/MainMod.vb +++ b/SCrawler/MainMod.vb @@ -9,9 +9,7 @@ Imports System.Runtime.CompilerServices Imports PersonalUtilities.Functions.XML.Objects Imports PersonalUtilities.Functions.RegularExpressions -Imports PersonalUtilities.Forms.Toolbars Imports PersonalUtilities.Tools -Imports PersonalUtilities.Tools.Web Imports SCrawler.API.Base Imports SCrawler.Plugin.Hosts Imports SCrawler.DownloadObjects @@ -21,6 +19,8 @@ Friend Module MainMod Friend ReadOnly LinkPattern As RParams = RParams.DMS("[htps:]{0,6}[/]{0,2}(.+)", 1) Friend ReadOnly FilesPattern As RParams = RParams.DM("[^\./]+?\.\w+", 1, EDP.ReturnValue) Friend Delegate Sub NotificationEventHandler(ByVal Sender As SettingsCLS.NotificationObjects, ByVal Message As String) + Friend Delegate Sub UserDownloadStateChangedEventHandler(ByVal User As IUserData, ByVal IsDownloading As Boolean) + Friend Delegate Function PathMoverHandler(ByVal User As UserInfo, ByVal DestinationPattern As SFile) As SFile Friend Const LVI_TempOption As String = "Temp" Friend Const LVI_FavOption As String = "Favorite" Friend Const LVI_CollectionOption As String = "Collection" @@ -68,6 +68,14 @@ Friend Module MainMod [Default] = 0 Virtual = 1 End Enum + Friend Enum PathCreationModel As Integer + Undefined = -1 + Path = 1 + Path_UserName = 2 + Path_UserSite_UserName = 3 + DefaultUser = Path_UserSite_UserName + Collection = 4 + End Enum Friend Downloader As TDownloader Friend InfoForm As DownloadedInfoForm Friend VideoDownloader As STDownloader.VideoDownloaderForm @@ -77,6 +85,8 @@ Friend Module MainMod Friend ReadOnly DateTimeDefaultProvider As New ADateTime(ADateTime.Formats.BaseDateTime) Friend ReadOnly FeedVideoLengthProvider As New ADateTime("hh\:mm\:ss") With {.TimeParseMode = ADateTime.TimeModes.TimeSpan} Friend ReadOnly UserExistsPredicate As New FPredicate(Of IUserData)(Function(u) u.Exists) + Friend ReadOnly UserExistsSubscriptionsPredicate As New FPredicate(Of IUserData)(Function(u) u.Exists And u.IsSubscription) + Friend ReadOnly UserExistsNonSubscriptionsPredicate As New FPredicate(Of IUserData)(Function(u) u.Exists And Not u.IsSubscription) Friend ReadOnly LogConnector As New LogHost Friend DefaultUserAgent As String = String.Empty #Region "File name operations" @@ -91,6 +101,11 @@ Friend Module MainMod End Class #End Region Friend Property MainProgress As MyProgressExt + Friend Sub ShowOperationCanceledMsg(Optional ByVal MsgTitle As String = Nothing) + Dim m As New MMessage("Operation canceled") + If Not MsgTitle.IsEmptyString Then m.Title = MsgTitle + m.Show() + End Sub Friend Function GetLviGroupName(ByVal Host As SettingsHost, ByVal IsCollection As Boolean) As ListViewGroup() Dim l As New List(Of ListViewGroup) Dim t$ @@ -125,8 +140,11 @@ Friend Module MainMod End If End Function Friend Sub CheckVersion(ByVal Force As Boolean) - If Settings.CheckUpdatesAtStart Or Force Then _ - GitHub.DefaultVersionChecker(My.Application.Info.Version, "AAndyProgram", "SCrawler", - Settings.LatestVersion.Value, Settings.ShowNewVersionNotification.Value, Force) + With Settings + If .CheckUpdatesAtStart Or Force Then + ShowProgramInfo(.ProgramText.Value.IfNullOrEmpty("SCrawler"), My.Application.Info.Version, True, Force, .Self, False, + .LatestVersion.Value, .ShowNewVersionNotification.Value, .ProgramDescription) + End If + End With End Sub End Module \ No newline at end of file diff --git a/SCrawler/My Project/AssemblyInfo.vb b/SCrawler/My Project/AssemblyInfo.vb index a6c5e50..835ef06 100644 --- a/SCrawler/My Project/AssemblyInfo.vb +++ b/SCrawler/My Project/AssemblyInfo.vb @@ -32,6 +32,6 @@ Imports System.Runtime.InteropServices ' by using the '*' as shown below: ' - - + + diff --git a/SCrawler/My Project/Resources.Designer.vb b/SCrawler/My Project/Resources.Designer.vb index 0953ba6..60a588e 100644 --- a/SCrawler/My Project/Resources.Designer.vb +++ b/SCrawler/My Project/Resources.Designer.vb @@ -110,6 +110,16 @@ Namespace My.Resources End Get End Property + ''' + ''' Looks up a localized resource of type System.Drawing.Bitmap. + ''' + Friend ReadOnly Property BrushToolPic_16() As System.Drawing.Bitmap + Get + Dim obj As Object = ResourceManager.GetObject("BrushToolPic_16", resourceCulture) + Return CType(obj,System.Drawing.Bitmap) + End Get + End Property + ''' ''' Looks up a localized resource of type System.Drawing.Bitmap. ''' diff --git a/SCrawler/My Project/Resources.resx b/SCrawler/My Project/Resources.resx index 6e7f93e..a3b77c7 100644 --- a/SCrawler/My Project/Resources.resx +++ b/SCrawler/My Project/Resources.resx @@ -217,4 +217,7 @@ ..\Content\Pictures\TagPic_24.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Content\Pictures\BrushToolPic_16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + \ No newline at end of file diff --git a/SCrawler/PluginsEnvironment/Hosts/DownloadableMediaHost.vb b/SCrawler/PluginsEnvironment/Hosts/DownloadableMediaHost.vb index 778393a..0f57803 100644 --- a/SCrawler/PluginsEnvironment/Hosts/DownloadableMediaHost.vb +++ b/SCrawler/PluginsEnvironment/Hosts/DownloadableMediaHost.vb @@ -145,11 +145,13 @@ Namespace Plugin.Hosts f.Extension = "xml" FileSettings = f End If - Using x As New XmlFile With {.AllowSameNames = True} - x.AddRange(ToEContainer.Elements) - x.Name = "MediaContainer" - x.Save(FileSettings) - End Using + If NeedToSave() Then + Using x As New XmlFile With {.AllowSameNames = True} + x.AddRange(ToEContainer.Elements) + x.Name = "MediaContainer" + x.Save(FileSettings) + End Using + End If End Sub Public Overrides Function GetHashCode() As Integer Return URL.GetHashCode diff --git a/SCrawler/PluginsEnvironment/Hosts/PropertyValueHost.vb b/SCrawler/PluginsEnvironment/Hosts/PropertyValueHost.vb index cff7a9e..286e2ba 100644 --- a/SCrawler/PluginsEnvironment/Hosts/PropertyValueHost.vb +++ b/SCrawler/PluginsEnvironment/Hosts/PropertyValueHost.vb @@ -16,9 +16,15 @@ Imports PersonalUtilities.Forms.Controls.Base Imports ADB = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons Namespace Plugin.Hosts Friend Class PropertyValueHost : Implements IPropertyValue, IComparable(Of PropertyValueHost) - Friend Const LeftOffsetDefault As Integer = 100 - Friend Event OnPropertyUpdateRequested(ByVal Sender As PropertyValueHost) +#Region "Events" Private Event ValueChanged As IPropertyValue.ValueChangedEventHandler Implements IPropertyValue.ValueChanged +#End Region +#Region "Declarations" + Private ReadOnly Keeper As SettingsHost + Protected Source As Object 'ReadOnly + Protected Member As MemberInfo + Friend ReadOnly Options As PropertyOption + Friend Overridable ReadOnly Property Name As String Protected _Type As Type Friend Overridable Property [Type] As Type Implements IPropertyValue.Type Get @@ -28,6 +34,11 @@ Namespace Plugin.Hosts _Type = t End Set End Property + Friend ReadOnly IsTaskCounter As Boolean + Friend ReadOnly Exists As Boolean = False +#Region "XML" + Private ReadOnly _XmlName As String +#End Region #Region "Control" Friend Property Control As Control Protected ControlNumber As Integer = -1 @@ -40,6 +51,20 @@ Namespace Plugin.Hosts End If End Get End Property + Friend Const LeftOffsetDefault As Integer = 100 + Protected _LeftOffset As Integer? = Nothing + Friend Overridable Property LeftOffset As Integer + Get + If _LeftOffset.HasValue Then + Return _LeftOffset + Else + Return If(Options?.LeftOffset, LeftOffsetDefault) + End If + End Get + Set(ByVal NewOffset As Integer) + _LeftOffset = NewOffset + End Set + End Property Protected Overridable ReadOnly Property Control_ThreeStates As Boolean Get Return Options.ThreeStates @@ -91,7 +116,11 @@ Namespace Plugin.Hosts With DirectCast(Control, TextBoxExtended) .CaptionText = Control_Caption .CaptionToolTipEnabled = Not Control_ToolTip.IsEmptyString - .CaptionWidth = LeftOffset + If LeftOffset > 0 Then + .CaptionWidth = LeftOffset + Else + Using l As New Label : .CaptionWidth = .CaptionText.MeasureTextDefault(l.Font).Width : End Using + End If If Not Control_ToolTip.IsEmptyString Then .CaptionToolTipText = Control_ToolTip : .CaptionToolTipEnabled = True .Text = CStr(AConvert(Of String)(Value, String.Empty)) With .Buttons @@ -114,9 +143,19 @@ Namespace Plugin.Hosts Private Sub TextBoxClick(ByVal Sender As ActionButton, ByVal e As EventArgs) Try If Sender.DefaultButton = ADB.Refresh AndAlso Not Source Is Nothing AndAlso Not UpdateMethod Is Nothing Then - If CBool(UpdateMethod.Invoke(Source, Nothing)) Then - RaiseEvent OnPropertyUpdateRequested(Me) + Dim args As Object = Nothing + Dim i% + If UpdateMethodArguments.ListExists Then + Dim a As New List(Of String) + For Each arg$ In UpdateMethodArguments + i = Keeper.PropList.FindIndex(Function(p) Not p Is Me And p.Name = arg) + If i >= 0 Then a.Add(AConvert(Of String)(Keeper.PropList(i).GetControlValue(), String.Empty)) Else a.Add(String.Empty) + Next + If a.Count > 0 Then args = a.ToArray + End If + If CBool(UpdateMethod.Invoke(Source, args)) Then DirectCast(Control, TextBoxExtended).Text = CStr(AConvert(Of String)(Value, String.Empty)) + If Dependents.Count > 0 Then Dependents.ForEach(Sub(d) d.UpdateDependence()) End If End If Catch ex As Exception @@ -158,29 +197,7 @@ Namespace Plugin.Hosts Return Nothing End If End Function - Private Sub UpdateProviderPropertyName() - If ProviderValueIsPropertyProvider Then DirectCast(ProviderValue, IPropertyProvider).PropertyName = Name - End Sub #End Region -#Region "Compatibility" - Protected Source As Object 'ReadOnly - Protected Member As MemberInfo - Friend Overridable ReadOnly Property Name As String - Private ReadOnly _XmlName As String - Friend ReadOnly Options As PropertyOption - Protected _LeftOffset As Integer? = Nothing - Friend Overridable Property LeftOffset As Integer - Get - If _LeftOffset.HasValue Then - Return _LeftOffset - Else - Return If(Options?.LeftOffset, LeftOffsetDefault) - End If - End Get - Set(ByVal NewOffset As Integer) - _LeftOffset = NewOffset - End Set - End Property #Region "Providers" Friend Property ProviderFieldsChecker As IFormatProvider Private Property ProviderValue As IFormatProvider @@ -195,27 +212,37 @@ Namespace Plugin.Hosts ProviderValueInteraction = Instance.Interaction End If End Sub + Private Sub UpdateProviderPropertyName() + If ProviderValueIsPropertyProvider Then DirectCast(ProviderValue, IPropertyProvider).PropertyName = Name + End Sub #End Region +#Region "Updaters, Checkers" Friend PropertiesChecking As String() Friend PropertiesCheckingMethod As MethodInfo Private UpdateMethod As MethodInfo - Private _UpdateDependencies As String() = Nothing - Friend ReadOnly Property UpdateDependencies As String() - Get - Return _UpdateDependencies - End Get - End Property - Friend Sub SetUpdateMethod(ByVal m As MethodInfo, ByVal Dependencies As String()) + Private UpdateMethodArguments As String() + Friend Sub SetUpdateMethod(ByVal m As MethodInfo, ByVal _UpdateMethodArguments As String()) UpdateMethod = m - _UpdateDependencies = Dependencies + UpdateMethodArguments = _UpdateMethodArguments End Sub - Friend ReadOnly IsTaskCounter As Boolean #End Region - Friend ReadOnly Exists As Boolean = False +#Region "Dependents" + Private ReadOnly DependentNames As New List(Of String) + Private ReadOnly Dependents As New List(Of PropertyValueHost) + Private Sub UpdateDependence() + If TypeOf Control Is CheckBox Then + DirectCast(Control, CheckBox).Checked = CBool(AConvert(Of Boolean)(Value, False)) + Else + DirectCast(Control, TextBoxExtended).Text = CStr(AConvert(Of String)(Value, String.Empty)) + End If + End Sub +#End Region +#End Region #Region "Initializer" Protected Sub New() End Sub - Friend Sub New(ByRef PropertySource As Object, ByVal Member As MemberInfo) + Friend Sub New(ByRef Keeper As SettingsHost, ByRef PropertySource As Object, ByVal Member As MemberInfo) + Me.Keeper = Keeper Source = PropertySource Name = Member.Name @@ -229,6 +256,7 @@ Namespace Plugin.Hosts IsTaskCounter = Not Member.GetCustomAttribute(Of TaskCounter)() Is Nothing _XmlName = If(Member.GetCustomAttribute(Of PXML)()?.ElementName, String.Empty) If Not _XmlName.IsEmptyString Then XValue = CreateXMLValueInstance([Type], True) + DependentNames.ListAddList(Member.GetCustomAttribute(Of DependentFields)?.Fields, LAP.NotContainsOnly) Exists = True End If End Sub @@ -239,6 +267,13 @@ Namespace Plugin.Hosts Value(False) = XValue.Value End If End Sub + Friend Sub SetDependents(ByVal Props As List(Of PropertyValueHost)) + If DependentNames.Count > 0 And Props.Count > 0 Then + For Each prop As PropertyValueHost In Props + If DependentNames.Contains(prop.Name) Then Dependents.Add(prop) + Next + End If + End Sub #End Region #Region "Value" Protected ReadOnly Property ExternalValue As PropertyValue diff --git a/SCrawler/PluginsEnvironment/Hosts/SettingsHost.vb b/SCrawler/PluginsEnvironment/Hosts/SettingsHost.vb index 9ab651c..d40d84e 100644 --- a/SCrawler/PluginsEnvironment/Hosts/SettingsHost.vb +++ b/SCrawler/PluginsEnvironment/Hosts/SettingsHost.vb @@ -131,17 +131,6 @@ Namespace Plugin.Hosts End Set End Property Friend ReadOnly Property GetUserMediaOnly As XMLValue(Of Boolean) -#End Region -#Region "Host internal functions" - Private Sub PropHost_OnPropertyUpdateRequested(ByVal Sender As PropertyValueHost) - If Sender.UpdateDependencies.ListExists Then - Settings.BeginUpdate() - For Each p As PropertyValueHost In PropList - If Sender.UpdateDependencies.Contains(p.Name) Then p.UpdateValueByControl() - Next - Settings.EndUpdate() - End If - End Sub #End Region Friend Sub New(ByVal Plugin As ISiteSettings, ByRef _XML As XmlFile, ByVal GlobalPath As SFile, ByRef _Temp As XMLValue(Of Boolean), ByRef _Imgs As XMLValue(Of Boolean), ByRef _Vids As XMLValue(Of Boolean)) @@ -188,10 +177,11 @@ Namespace Plugin.Hosts Dim Updaters As New List(Of MemberInfo) Dim Providers As New List(Of MemberInfo) Dim PropCheckers As New List(Of MemberInfo) + Dim m As MemberInfo For Each m In Members If m.MemberType = MemberTypes.Property Then - PropList.Add(New PropertyValueHost(Source, m)) + PropList.Add(New PropertyValueHost(Me, Source, m)) With DirectCast(m, PropertyInfo) If .PropertyType Is GetType(Responser) AndAlso m.GetCustomAttribute(Of DoNotUse)() Is Nothing Then _ResponserGetMethod = .GetMethod End With @@ -218,7 +208,7 @@ Namespace Plugin.Hosts For Each m In Updaters up = m.GetCustomAttribute(Of PropertyUpdater)() i = PropList.FindIndex(Function(p) p.Name = up.Name) - If i >= 0 Then PropList(i).SetUpdateMethod(DirectCast(m, MethodInfo), up.Dependencies) + If i >= 0 Then PropList(i).SetUpdateMethod(DirectCast(m, MethodInfo), up.Arguments) Next Updaters.Clear() End If @@ -252,6 +242,7 @@ Namespace Plugin.Hosts Next PropCheckers.Clear() End If + PropList.ForEach(Sub(p) p.SetDependents(PropList)) End If _Path = New XMLValue(Of SFile)("Path",, _XML, n, New XMLToFilePathProvider) @@ -277,7 +268,6 @@ Namespace Plugin.Hosts For Each p As PropertyValueHost In PropList p.SetXmlEnvironment(_XML, n) p.LeftOffset = MaxOffset - AddHandler p.OnPropertyUpdateRequested, AddressOf PropHost_OnPropertyUpdateRequested Next End If diff --git a/SCrawler/PluginsEnvironment/Hosts/UserDataHost.vb b/SCrawler/PluginsEnvironment/Hosts/UserDataHost.vb index a5ba1fa..f051bdc 100644 --- a/SCrawler/PluginsEnvironment/Hosts/UserDataHost.vb +++ b/SCrawler/PluginsEnvironment/Hosts/UserDataHost.vb @@ -48,11 +48,13 @@ Namespace Plugin.Hosts .LogProvider = LogConnector .Name = Name .ID = ID + .Options = Options .ParseUserMediaOnly = ParseUserMediaOnly .UserDescription = UserDescription .UserExists = .UserExists .UserSuspended = UserSuspended .IsSavedPosts = IsSavedPosts + .IsSubscription = IsSubscription .SeparateVideoFolder = SeparateVideoFolderF .DataPath = MyFile.CutPath.PathNoSeparator .PostsNumberLimit = DownloadTopCount diff --git a/SCrawler/SCrawler.vbproj b/SCrawler/SCrawler.vbproj index ba8e50d..c983650 100644 --- a/SCrawler/SCrawler.vbproj +++ b/SCrawler/SCrawler.vbproj @@ -113,11 +113,11 @@ My Project\app.manifest - - ..\packages\LibVLCSharp.3.6.6\lib\net40\LibVLCSharp.dll + + ..\packages\LibVLCSharp.3.7.0\lib\net40\LibVLCSharp.dll - - ..\packages\LibVLCSharp.WinForms.3.6.6\lib\net40\LibVLCSharp.WinForms.dll + + ..\packages\LibVLCSharp.WinForms.3.7.0\lib\net40\LibVLCSharp.WinForms.dll ..\packages\Microsoft.Bcl.Async.1.0.168\lib\net40\Microsoft.Threading.Tasks.dll @@ -166,12 +166,15 @@ Form + + + @@ -191,6 +194,7 @@ + @@ -202,6 +206,7 @@ + RedditViewSettingsForm.vb @@ -216,15 +221,18 @@ + + + @@ -307,6 +315,12 @@ Form + + UserDownloadQueueForm.vb + + + Form + ColorPicker.vb @@ -314,6 +328,12 @@ UserControl + + GlobalLocationsChooserForm.vb + + + Form + UsersInfoForm.vb @@ -514,12 +534,18 @@ VideoDownloaderForm.vb + + UserDownloadQueueForm.vb + CollectionEditorForm.vb ColorPicker.vb + + GlobalLocationsChooserForm.vb + GlobalSettingsForm.vb @@ -618,7 +644,6 @@ - @@ -670,14 +695,17 @@ + + + - This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - + + \ No newline at end of file diff --git a/SCrawler/SettingsCLS.vb b/SCrawler/SettingsCLS.vb index baddf2e..65d6663 100644 --- a/SCrawler/SettingsCLS.vb +++ b/SCrawler/SettingsCLS.vb @@ -26,6 +26,7 @@ Friend Class SettingsCLS : Implements IDownloaderSettings, IDisposable Private Const SitesValuesSeparator As String = "," Friend Const CookieEncryptKey As String = "SCrawlerCookiesEncryptKeyword" Private Const EnvironmentPath As String = "Environment\" + Friend Const CollectionsFolderName As String = "Collections" Friend Const DefaultCmdEncoding As Integer = BatchExecutor.UnicodeEncoding Friend ReadOnly Design As XmlFile Private ReadOnly MyXML As XmlFile @@ -83,8 +84,41 @@ Friend Class SettingsCLS : Implements IDownloaderSettings, IDisposable Friend ReadOnly Property YtdlpFile As ProgramFile Friend ReadOnly Property GalleryDLFile As ProgramFile Friend ReadOnly Property CurlFile As ProgramFile + Private ReadOnly Property ENVIR_FFMPEG As SFile Implements IDownloaderSettings.ENVIR_FFMPEG + Get + Return FfmpegFile + End Get + End Property + Private ReadOnly Property ENVIR_YTDLP As SFile Implements IDownloaderSettings.ENVIR_YTDLP + Get + Return YtdlpFile + End Get + End Property + Private ReadOnly Property ENVIR_GDL As SFile Implements IDownloaderSettings.ENVIR_GDL + Get + Return GalleryDLFile + End Get + End Property + Private ReadOnly Property ENVIR_CURL As SFile Implements IDownloaderSettings.ENVIR_CURL + Get + Return CurlFile + End Get + End Property #End Region Friend ReadOnly Property Cache As CacheKeeper + Private _CacheSnapshots As CacheKeeper = Nothing + Friend ReadOnly Property CacheSnapshots(ByVal Permanent As Boolean) As CacheKeeper + Get + If Permanent Then + If _CacheSnapshots Is Nothing Then _CacheSnapshots = New CacheKeeper("_CacheSnapshots\") With {.DeleteCacheOnDispose = False, .DeleteRootOnDispose = False} + Return _CacheSnapshots + Else + Dim dir As SFile = $"{Cache.RootDirectory.PathWithSeparator}Snapshots\" + Cache.AddPath(dir) + Return Cache.GetInstance(dir) + End If + End Get + End Property Friend ReadOnly Plugins As List(Of PluginHost) Friend ReadOnly Property Users As List(Of IUserData) Friend ReadOnly Property UsersList As List(Of UserInfo) @@ -92,6 +126,8 @@ Friend Class SettingsCLS : Implements IDownloaderSettings, IDisposable Friend ReadOnly Property Labels As LabelsKeeper Friend ReadOnly Property Groups As Groups.DownloadGroupCollection Friend ReadOnly Property LastCollections As List(Of String) + Friend ReadOnly Property DownloadLocations As STDownloader.DownloadLocationsCollection + Friend ReadOnly Property GlobalLocations As STDownloader.DownloadLocationsCollection Friend Property Automation As Scheduler Friend ReadOnly Property BlackList As List(Of UserBan) Private ReadOnly BlackListFile As SFile = $"{SettingsFolderName}\BlackList.txt" @@ -108,6 +144,8 @@ Friend Class SettingsCLS : Implements IDownloaderSettings, IDisposable BlackList = New List(Of UserBan) Plugins = New List(Of PluginHost) LastCollections = New List(Of String) + GlobalLocations = New STDownloader.DownloadLocationsCollection + GlobalLocations.Load(True,, $"{SettingsFolderName}\GlobalLocations.xml") Dim n() As String = {"MediaEnvironment"} @@ -130,7 +168,7 @@ Friend Class SettingsCLS : Implements IDownloaderSettings, IDisposable LastCopyPath = New XMLValue(Of SFile)("LastCopyPath",, MyXML,, New XMLToFilePathProvider) SeparateVideoFolder = New XMLValue(Of Boolean)("SeparateVideoFolder", True, MyXML) - CollectionsPath = New XMLValue(Of String)("CollectionsPath", "Collections", MyXML) + CollectionsPath = New XMLValue(Of String)("CollectionsPath", CollectionsFolderName, MyXML) UserAgent = New XMLValue(Of String)("UserAgent",, MyXML) If Not UserAgent.IsEmptyString Then DefaultUserAgent = UserAgent @@ -162,6 +200,10 @@ Friend Class SettingsCLS : Implements IDownloaderSettings, IDisposable DefaultDownloadImages, DefaultDownloadVideos) If tmpPluginList.ListExists Then Plugins.AddRange(tmpPluginList) + MainFrameUsersShowDefaults = New XMLValue(Of Boolean)("UsersShowDefaults", True, MyXML) + MainFrameUsersShowSubscriptions = New XMLValue(Of Boolean)("UsersShowSubscriptions", True, MyXML) + MainFrameUsersSubscriptionsColorBack = New XMLValue(Of Color)("UsersSubscriptionsColorBack", MyColor.OkBack, MyXML) + MainFrameUsersSubscriptionsColorFore = New XMLValue(Of Color)("UsersSubscriptionsColorFore", MyColor.OkFore, MyXML) FastProfilesLoading = New XMLValue(Of Boolean)("FastProfilesLoading", True, MyXML) MaxLargeImageHeight = New XMLValue(Of Integer)("MaxLargeImageHeight", 150, MyXML) MaxSmallImageHeight = New XMLValue(Of Integer)("MaxSmallImageHeight", 15, MyXML) @@ -176,6 +218,7 @@ Friend Class SettingsCLS : Implements IDownloaderSettings, IDisposable ClosingCommand = New XMLValueAttribute(Of String, Boolean)("ClosingCommand", "Use",,, MyXML) AddHandler ClosingCommand.ValueChanged, Sub(s, ev) MainFrameObj?.ChangeCloseVisible() InfoViewMode = New XMLValue(Of Integer)("InfoViewMode", DownloadedInfoForm.ViewModes.Session, MyXML) + InfoViewDefault = New XMLValue(Of Boolean)("InfoViewDefault", True, MyXML) ViewMode = New XMLValue(Of Integer)("ViewMode", ViewModes.IconLarge, MyXML) ShowingMode = New XMLValue(Of Integer)("ShowingMode", ShowingModes.All, MyXML) ShowGroupsInsteadLabels = New XMLValue(Of Boolean)("ShowGroupsInsteadLabels", False, MyXML) @@ -217,8 +260,15 @@ Friend Class SettingsCLS : Implements IDownloaderSettings, IDisposable STDownloader_RemoveDownloadedAutomatically = New XMLValue(Of Boolean)("RemoveDownloadedAutomatically", False, MyXML, n) STDownloader_OnItemDoubleClick = New XMLValue(Of DoubleClickBehavior)("OnItemDoubleClick", DoubleClickBehavior.Folder, MyXML, n) STDownloader_TakeSnapshot = New XMLValue(Of Boolean)("TakeSnapshot", True, MyXML, n) + STDownloader_SnapshotsKeepWithFiles = New XMLValue(Of Boolean)("SnapshotsKeepWithFiles", True, MyXML, n) + STDownloader_SnapShotsCachePermamnent = New XMLValue(Of Boolean)("SnapShotsCachePermamnent", False, MyXML, n) STDownloader_RemoveYTVideosOnClear = New XMLValue(Of Boolean)("RemoveYouTubeVideosOnClear", False, MyXML, n) STDownloader_LoadYTVideos = New XMLValue(Of Boolean)("LoadYouTubeVideos", False, MyXML, n) + STDownloader_OutputPathUseYT = New XMLValue(Of Boolean)("OutputPathUseYT", False, MyXML, n) + STDownloader_OutputPathAskForName = New XMLValue(Of Boolean)("OutputPathAskForName", True, MyXML, n) + STDownloader_OutputPathAutoAddPaths = New XMLValue(Of Boolean)("OutputPathAutoAddPaths", True, MyXML, n) + DownloadLocations = New STDownloader.DownloadLocationsCollection + DownloadLocations.Load(False, STDownloader_OutputPathUseYT) n = {"Feed"} FeedDataColumns = New XMLValue(Of Integer)("DataColumns", 1, MyXML, n) @@ -232,6 +282,9 @@ Friend Class SettingsCLS : Implements IDownloaderSettings, IDisposable FeedBackColor.SetExtended("FeedColorBack",, MyXML, n) FeedForeColor = New XMLValue(Of Color) FeedForeColor.SetExtended("FeedColorFore",, MyXML, n) + FeedOpenLastMode = New XMLValue(Of Boolean)("OpenLastMode", False, MyXML, n) + FeedLastModeSubscriptions = New XMLValue(Of Boolean)("LastModeSubscriptions", False, MyXML, n) + FeedShowFriendlyNames = New XMLValue(Of Boolean)("ShowFriendlyNames", True, MyXML, n) n = {"Users"} FromChannelDownloadTop = New XMLValue(Of Integer)("FromChannelDownloadTop", 10, MyXML, n) @@ -264,6 +317,8 @@ Friend Class SettingsCLS : Implements IDownloaderSettings, IDisposable ShowNotificationsSTDownloader = New XMLValue(Of Boolean)("STDownloader", True, MyXML, n) ShowNotificationsSTDownloaderEveryDownload = New XMLValue(Of Boolean)("STDownloaderEveryDownload", True, MyXML, n) + ProgramText = New XMLValue(Of String)("ProgramText",, MyXML) + ProgramDescription = New XMLValue(Of String)("ProgramDescription",, MyXML) ExitConfirm = New XMLValue(Of Boolean)("ExitConfirm", True, MyXML) CloseToTray = New XMLValue(Of Boolean)("CloseToTray", True, MyXML) OpenFolderInOtherProgram = New XMLValueUse(Of String)("OpenFolderInOtherProgram",,, MyXML) @@ -707,8 +762,23 @@ Friend Class SettingsCLS : Implements IDownloaderSettings, IDisposable End Get End Property Friend ReadOnly Property STDownloader_TakeSnapshot As XMLValue(Of Boolean) + Friend ReadOnly Property STDownloader_SnapshotsKeepWithFiles As XMLValue(Of Boolean) + Friend ReadOnly Property STDownloader_SnapShotsCachePermamnent As XMLValue(Of Boolean) Friend ReadOnly Property STDownloader_RemoveYTVideosOnClear As XMLValue(Of Boolean) Friend ReadOnly Property STDownloader_LoadYTVideos As XMLValue(Of Boolean) + Friend ReadOnly Property STDownloader_OutputPathUseYT As XMLValue(Of Boolean) + Friend ReadOnly Property STDownloader_OutputPathAskForName As XMLValue(Of Boolean) + Private ReadOnly Property IDownloaderSettings_OutputPathAskForName As Boolean Implements IDownloaderSettings.OutputPathAskForName + Get + Return STDownloader_OutputPathAskForName + End Get + End Property + Friend ReadOnly Property STDownloader_OutputPathAutoAddPaths As XMLValue(Of Boolean) + Private ReadOnly Property IDownloaderSettings_OutputPathAutoAddPaths As Boolean Implements IDownloaderSettings.OutputPathAutoAddPaths + Get + Return STDownloader_OutputPathAutoAddPaths + End Get + End Property #End Region #Region "User metrics" Friend ReadOnly Property UMetrics_What As XMLValue(Of Integer) @@ -730,6 +800,10 @@ Friend Class SettingsCLS : Implements IDownloaderSettings, IDisposable #End Region #End Region #Region "View" + Friend ReadOnly Property MainFrameUsersShowDefaults As XMLValue(Of Boolean) + Friend ReadOnly Property MainFrameUsersShowSubscriptions As XMLValue(Of Boolean) + Friend ReadOnly Property MainFrameUsersSubscriptionsColorBack As XMLValue(Of Color) + Friend ReadOnly Property MainFrameUsersSubscriptionsColorFore As XMLValue(Of Color) Friend ReadOnly Property FastProfilesLoading As XMLValue(Of Boolean) Friend ReadOnly Property MaxLargeImageHeight As XMLValue(Of Integer) Friend ReadOnly Property MaxSmallImageHeight As XMLValue(Of Integer) @@ -751,6 +825,7 @@ Friend Class SettingsCLS : Implements IDownloaderSettings, IDisposable Friend ReadOnly Property DownloadsCompleteCommand As XMLValueAttribute(Of String, Boolean) Friend ReadOnly Property ClosingCommand As XMLValueAttribute(Of String, Boolean) Friend ReadOnly Property InfoViewMode As XMLValue(Of Integer) + Friend ReadOnly Property InfoViewDefault As XMLValue(Of Boolean) Friend ReadOnly Property ViewMode As XMLValue(Of Integer) Friend ReadOnly Property ViewModeIsPicture As Boolean Get @@ -812,6 +887,9 @@ Friend Class SettingsCLS : Implements IDownloaderSettings, IDisposable Friend ReadOnly Property FeedStoreSessionsData As XMLValue(Of Boolean) Friend ReadOnly Property FeedBackColor As XMLValue(Of Color) Friend ReadOnly Property FeedForeColor As XMLValue(Of Color) + Friend ReadOnly Property FeedOpenLastMode As XMLValue(Of Boolean) + Friend ReadOnly Property FeedLastModeSubscriptions As XMLValue(Of Boolean) + Friend ReadOnly Property FeedShowFriendlyNames As XMLValue(Of Boolean) #End Region #Region "New version properties" Friend ReadOnly Property CheckUpdatesAtStart As XMLValue(Of Boolean) @@ -854,6 +932,8 @@ Friend Class SettingsCLS : Implements IDownloaderSettings, IDisposable Friend ReadOnly Property ShowNotificationsSTDownloaderEveryDownload As XMLValue(Of Boolean) #End Region #Region "Other program properties" + Friend ReadOnly Property ProgramText As XMLValue(Of String) + Friend ReadOnly Property ProgramDescription As XMLValue(Of String) Friend ReadOnly Property ExitConfirm As XMLValue(Of Boolean) Friend ReadOnly Property CloseToTray As XMLValue(Of Boolean) Friend ReadOnly Property OpenFolderInOtherProgram As XMLValueUse(Of String) diff --git a/SCrawler/SiteResources.Designer.vb b/SCrawler/SiteResources.Designer.vb index dff6ac0..2322380 100644 --- a/SCrawler/SiteResources.Designer.vb +++ b/SCrawler/SiteResources.Designer.vb @@ -274,16 +274,6 @@ Namespace My.Resources End Get End Property - ''' - ''' Looks up a localized resource of type System.Drawing.Bitmap. - ''' - Friend Shared ReadOnly Property TwitterPic_400() As System.Drawing.Bitmap - Get - Dim obj As Object = ResourceManager.GetObject("TwitterPic_400", resourceCulture) - Return CType(obj,System.Drawing.Bitmap) - End Get - End Property - ''' ''' Looks up a localized resource of type System.Drawing.Icon similar to (Icon). ''' diff --git a/SCrawler/SiteResources.resx b/SCrawler/SiteResources.resx index fc91260..93beb33 100644 --- a/SCrawler/SiteResources.resx +++ b/SCrawler/SiteResources.resx @@ -181,9 +181,6 @@ Content\Icons\SiteIcons\TwitterIcon_32.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - Content\Pictures\SitePictures\TwitterPic_400.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - Content\Icons\SiteIcons\XhamsterIcon_32.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a diff --git a/SCrawler/UserFinder.vb b/SCrawler/UserFinder.vb index bca903e..8eac2f2 100644 --- a/SCrawler/UserFinder.vb +++ b/SCrawler/UserFinder.vb @@ -83,7 +83,8 @@ Friend Class UserFinder : Implements IDisposable .SpecialCollectionPath = x.Value(UserInfo.Name_SpecialCollectionPath), .UserModel = x.Value(UserInfo.Name_Model_User).FromXML(Of Integer)(UsageModel.Default), .CollectionModel = x.Value(UserInfo.Name_Model_Collection).FromXML(Of Integer)(UsageModel.Default), - .CollectionName = x.Value(UserInfo.Name_Collection) + .CollectionName = x.Value(UserInfo.Name_Collection), + .IsSubscription = x.Value(UserInfo.Name_IsSubscription).FromXML(Of Boolean)(False) } u.Merged = x.Value(UserInfo.Name_Merged).FromXML(Of Boolean)(False) FoundUsers.Add(u) diff --git a/SCrawler/UserInfo.vb b/SCrawler/UserInfo.vb index 639c6c3..223daaa 100644 --- a/SCrawler/UserInfo.vb +++ b/SCrawler/UserInfo.vb @@ -12,11 +12,12 @@ Imports SCrawler.Plugin.Hosts Imports PersonalUtilities.Functions.XML Imports PersonalUtilities.Functions.XML.Base Partial Friend Module MainMod - Friend Structure UserInfo : Implements IComparable(Of UserInfo), IEquatable(Of UserInfo), ICloneable, IEContainerProvider + Friend Structure UserInfo : Implements IComparable(Of UserInfo), IEquatable(Of UserInfo), IEContainerProvider #Region "XML Names" Friend Const Name_UserNode As String = "User" Friend Const Name_Site As String = "Site" Friend Const Name_Plugin As String = "Plugin" + Friend Const Name_IsSubscription As String = "IsSubscription" Friend Const Name_Collection As String = "Collection" Friend Const Name_Model_User As String = "ModelUser" Friend Const Name_Model_Collection As String = "ModelCollection" @@ -30,6 +31,7 @@ Partial Friend Module MainMod Friend Site As String Friend Plugin As String Friend File As SFile + Friend IsSubscription As Boolean Friend SpecialPath As SFile Friend SpecialCollectionPath As SFile Friend Merged As Boolean @@ -65,6 +67,7 @@ Partial Friend Module MainMod Name = x.Value Site = x.Attribute(Name_Site).Value Plugin = x.Attribute(Name_Plugin).Value + IsSubscription = x.Attribute(Name_IsSubscription).Value.FromXML(Of Boolean)(False) CollectionName = x.Attribute(Name_Collection).Value CollectionModel = x.Attribute(Name_Model_Collection).Value.FromXML(Of Integer)(UsageModel.Default) UserModel = x.Attribute(Name_Model_User).Value.FromXML(Of Integer)(UsageModel.Default) @@ -101,6 +104,7 @@ Partial Friend Module MainMod End Function #End Region #Region "FilePath" + Friend Const CollectionUserPathPattern As String = "{0}\{1}_{2}\" Friend Sub UpdateUserFile() File = New SFile With { .Separator = "\", @@ -109,23 +113,39 @@ Partial Friend Module MainMod .Name = $"{UserDataBase.UserFileAppender}_{Site}_{Name}" } End Sub + Friend Function GetCollectionRootPath() As SFile + If IncludedInCollection And Not IsVirtual Then + Dim ColPath$ = If(SpecialCollectionPath.IsEmptyString, Settings.CollectionsPathF, SpecialCollectionPath).PathNoSeparator + If SpecialCollectionPath.IsEmptyString Then ColPath &= $"\{CollectionName}" + Return ColPath.CSFileP + Else + Return Nothing + End If + End Function Private Function GetFilePathByParams() As String If [Protected] Then Return String.Empty - Dim ColPath$ = If(SpecialCollectionPath.IsEmptyString, Settings.CollectionsPathF, SpecialCollectionPath).PathNoSeparator - If SpecialCollectionPath.IsEmptyString Then ColPath &= $"\{CollectionName}" - If Not SpecialPath.IsEmptyString Then - Return $"{SpecialPath.PathWithSeparator}{SettingsFolderName}" - ElseIf Merged And IncludedInCollection Then - Return $"{ColPath}\{SettingsFolderName}" - Else - If IncludedInCollection And Not IsVirtual Then - Return $"{ColPath}\{Site}_{Name}\{SettingsFolderName}" - ElseIf Not Settings(Plugin) Is Nothing Then - Return $"{Settings(Plugin).Path.PathNoSeparator}\{Name}\{SettingsFolderName}" + If IsSubscription Then + If Not Settings(Plugin) Is Nothing Then + Return $"{Application.StartupPath.CSFilePSN}\{SettingsFolderName}\Subscriptions\{Settings(Plugin).Key}\{Name}\{SettingsFolderName}" Else - Dim s$ = Site.ToLower - Dim i% = Settings.Plugins.FindIndex(Function(p) p.Name.ToLower = s) - If i >= 0 Then Return $"{Settings.Plugins(i).Settings.Path.PathNoSeparator}\{Name}\{SettingsFolderName}" Else Return String.Empty + Return String.Empty + End If + Else + Dim ColPath$ = GetCollectionRootPath().PathNoSeparator + If Not SpecialPath.IsEmptyString Then + Return $"{SpecialPath.PathWithSeparator}{SettingsFolderName}" + ElseIf Merged And IncludedInCollection Then + Return $"{ColPath}\{SettingsFolderName}" + Else + If IncludedInCollection And Not IsVirtual Then + Return $"{String.Format(CollectionUserPathPattern, ColPath, Site, Name)}{SettingsFolderName}" + ElseIf Not Settings(Plugin) Is Nothing Then + Return $"{Settings(Plugin).Path.PathNoSeparator}\{Name}\{SettingsFolderName}" + Else + Dim s$ = Site.ToLower + Dim i% = Settings.Plugins.FindIndex(Function(p) p.Name.ToLower = s) + If i >= 0 Then Return $"{Settings.Plugins(i).Settings.Path.PathNoSeparator}\{Name}\{SettingsFolderName}" Else Return String.Empty + End If End If End If End Function @@ -134,6 +154,7 @@ Partial Friend Module MainMod Friend Function ToEContainer(Optional ByVal e As ErrorsDescriber = Nothing) As EContainer Implements IEContainerProvider.ToEContainer Return New EContainer(Name_UserNode, Name, {New EAttribute(Name_Site, Site), New EAttribute(Name_Plugin, Plugin), + New EAttribute(Name_IsSubscription, IsSubscription.BoolToInteger), New EAttribute(Name_Collection, CollectionName), New EAttribute(Name_Model_User, CInt(UserModel)), New EAttribute(Name_Model_Collection, CInt(CollectionModel)), @@ -155,27 +176,11 @@ Partial Friend Module MainMod #Region "IEquatable Support" Friend Overloads Function Equals(ByVal Other As UserInfo) As Boolean Implements IEquatable(Of UserInfo).Equals Return Site.StringToLower = Other.Site.StringToLower And Name.StringToLower = Other.Name.StringToLower And - (Not Plugin = PathPlugin.PluginKey Or SpecialPath = Other.SpecialPath) + IsSubscription = Other.IsSubscription And (Not Plugin = PathPlugin.PluginKey Or SpecialPath = Other.SpecialPath) End Function Public Overloads Overrides Function Equals(ByVal Obj As Object) As Boolean Return Equals(DirectCast(Obj, UserInfo)) End Function -#End Region -#Region "ICloneable Support" - Friend Function Clone() As Object Implements ICloneable.Clone - Return New UserInfo With { - .Name = Name, - .Site = Site, - .Plugin = Plugin, - .File = File, - .SpecialPath = SpecialPath, - .Merged = Merged, - .CollectionName = CollectionName, - .CollectionModel = CollectionModel, - .UserModel = UserModel, - .[Protected] = [Protected] - } - End Function #End Region End Structure End Module \ No newline at end of file diff --git a/SCrawler/UserSearchForm.vb b/SCrawler/UserSearchForm.vb index 8dc50cc..ea18085 100644 --- a/SCrawler/UserSearchForm.vb +++ b/SCrawler/UserSearchForm.vb @@ -24,14 +24,14 @@ Friend Class UserSearchForm Friend Sub New(ByVal User As IUserData, ByVal Mode As Modes) Key = User.Key IsCollection = User.IsCollection - Text = $"[{IIf(IsCollection, "C", "U")}] " + Me.Mode = Mode + Text = $"[{Mode.ToString.First.ToString.ToUpper}] [{IIf(IsCollection, "C", "U")}] " If IsCollection Then Text &= $"[{User.CollectionName}] " Else If User.IncludedInCollection Then Text &= $"[{User.CollectionName}] " Text &= $"[{User.Site}] [{User.Name}]" End If - Me.Mode = Mode End Sub Private Function CompareTo(ByVal Other As SearchResult) As Integer Implements IComparable(Of SearchResult).CompareTo If CInt(Mode).CompareTo(CInt(Other.Mode)) = 0 Then @@ -41,7 +41,9 @@ Friend Class UserSearchForm End If End Function Public Overrides Function Equals(ByVal Obj As Object) As Boolean - With DirectCast(Obj, SearchResult) : Return Key = .Key And Mode = .Mode : End With + 'TODO: [UserSearchForm]: updated equal function + With DirectCast(Obj, SearchResult) : Return Key = .Key : End With + 'With DirectCast(Obj, SearchResult) : Return Key = .Key And Mode = .Mode : End With End Function End Structure Public Sub New() @@ -125,7 +127,7 @@ Friend Class UserSearchForm If .Count > 0 Then For i = 0 To .Count - 1 With .Item(i) - If Not __isUrl AndAlso __name AndAlso .Self.Name.ToLower = t Then Results.ListAddValue(New SearchResult(.Self, SearchResult.Modes.Name), RLP) + If Not __isUrl AndAlso __name AndAlso .Self.Name.ToLower.Contains(t) Then Results.ListAddValue(New SearchResult(.Self, SearchResult.Modes.Name), RLP) _addValue(.Self, SearchResult.Modes.URL, _p_url) _addValue(.Self, SearchResult.Modes.Description, _p_descr) _addValue(.Self, SearchResult.Modes.Label, _p_labels) diff --git a/SCrawler/packages.config b/SCrawler/packages.config index ac4353d..1e554cb 100644 --- a/SCrawler/packages.config +++ b/SCrawler/packages.config @@ -1,10 +1,10 @@  - - + + - + \ No newline at end of file

1YEwb_;O$ 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 literal 14616 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 z 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�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%0AVj@!v>g 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 Qf_@?=bxShqhW@kv11v?AYXATM diff --git a/ProgramScreenshots/SettingsSiteOnlyFans.png b/ProgramScreenshots/SettingsSiteOnlyFans.png index 6603b68c8267f1d4f78d8a55cdd24b0bd9f4c8c5..d60a05739c71e7b1527063117c234f5e06191bb4 100644 GIT binary patch literal 22131 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 G2~7aX2+=SA literal 20623 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 literal 16932 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 E2ghfNIsgCw diff --git a/ProgramScreenshots/SettingsSiteReddit.png b/ProgramScreenshots/SettingsSiteReddit.png index 721a33aafc3bb21e28ade1d3f6213fab1bb3f03e..8fd79ccb123841fda29ef1f3b3d8dfbf5f157624 100644 GIT binary patch literal 24956 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 diff --git a/ProgramScreenshots/SettingsSiteThisVid.png b/ProgramScreenshots/SettingsSiteThisVid.png index cc304cdedd75258d4575b6064ce4f17511b4e8cf..a724569ea397f913e24f4b30f1661c3f8096038c 100644 GIT binary patch literal 15340 zcmd6OXH=8jwr*4eQA!X+q&ERYnsjLbQK^Crq=R%Rp|=oFK!`|@E=rLis5EH_p#%jX z6s1ZHMJa|BI*AYh_l^4P{q1wkKIiD*$Bpc01^AwD9LY6Ek8wE%v0`}k`sd+j zHhr3;HE;gNNIrVW3iFDbw@x`@e*S}_epVjcN`8iOqpX_m zS92N==+$vyL<33k;1~#GQ*sPg;j2qDEFh54*>K>SHw+p;lRHs-he4nVTHr$kOJG&&3 z4@e7!U3iJckzT%yy5YtfY~p6Ks%#+82M$GqbNkP)=%=%LSDiXr@u8Xpeb27)s#|xf z&e)xuIEXsf%bDFX6eq?5{R$5Z6e{&c!zExUxdNVs9u9{%n66<{skvajKn{k{HIdbRr-Im2FXDv62?;Kp-EO%Pz}LVSdUdD)%gVEoaQ(fyGDB##vLkBpYoDaF|O+jUU&;HcDoP8rc5!wI*;%r3vx~*$#Q0PbhC^hQ<8JewW3rj!jkUw~ zs9U@H{RGzlJ^#B^K5sGs)df8uLSNF|!E<@N`K-1@h~k8NJ=j}4&|(V19VCrLQ=qI6 z$1g7&;)jbh8JS4VO!pgd1%I##izt3Z?9*yoIL>o`M&3esMnXn;q?p3h>!#F zRQhn!{S=S3gCu)*FU(UJE-?3@vH!_?TZyU}jh$u-BKST8p2LZz(+s z0@3z~d+LkCGMs{JDZCxC#(NxzrUg6TEI1$`Gro&#Dlxcj*Ue=_X|rM5bDVsu%}w@U zrR?athd}eC{npO%a&oCOiNnwFYO>BFe76|*h)PLIW%b?4Od!xh4pGD#gO~Di;Rr@v zqJJ!-0EHqT0|I&SaVjG2DNKb_H4xmPOUDG#E&Vf4>LAdSzUm0T6hG_>03PRICl~^J zaH;+$gWTjq0e4=^(osS(6jv4o1YXg>v6di zJ_*n%-%)At@b<{Q%CPUEF?pi8#q1Cs*m4EsM^x0!SQi$Ea4effWS(e@_fx*`iar5^ z5zwcH-wA=+w{KU%NFG7!t!EsjFz~jj9yPH9_5HvyYZeU}D>E7vptH_WD-C-xkx)7F z)@e2?2YuD*;F0Ux^iQ5qH2KU%yI?~5P^r00aD$|5%25{XdUj`DbKHddQ@&eA%+P$5 z4sSm{kS$2eIJY_Mt`ksKb9G4EGJOx4yS%3s+BB>g^Su8F?K5Y^ZT-%FpS^kgpX2Ex!%EQtMSsR zJ9etY!#dr~I=xBol-!{~afHg{?Z`cwfs_);cX{-FJl$;EW_h|oW~G@LDS>lt&(Md>!o7)Zt<3ggM(|Hnt<~*LBPAo)q>BW&zjn1_$Z&nrtRAh^@lX z{Vu6zI9Exg22E`y4;?BVh6NCp{N{({UgDC~%g5!G4Hg$ds!g$9du3H5re~!b5iAdI4T9Nke zZj6yiFBJ>a`>!Sr7MG`+LmLewn)YHa5eQ2M(|Z3>3!g7?!VjJK`jCUgCS9GWVg}&z zQ7qx@qNiIR<(}VHcpbrg7buQdAytwK^}ZOHvt@c1mvs0Ha?mTj8FFdn-Ckol25WoQ zpNDdW{7f^toHkS)9%>LAha&~4;=A6hk(|Dfl8muls+b?>{fV-KJV*c3qb!WaI72U= zTh-QVS2g!3W`?Q8j%>?T%L3}$^s+Ll~i>n3C1gGriq(7dTf@MR$cq? z<)w&7re`>MaP#YJ!?}1tMC`5W&k^U`B2U)CE%F%z(9p#l=o)jN_ZEnjanA&z2$`Xh}7c{UHmmQJKDOLex z3Hy4gJ7?;HO3CIX`K!{(Z5fX)AGE%dm|IE;**|fwR*h8WSLt1TUa8mO_HK=6qa%5L z%(}{AZqg*3v_kPQu&$pGDW6zUu#TEm(!c%PbviyV)u$|eNf$bkvFW?RQ82jUWFvM! z`fBC6)H8Gzi&i_x@!<~~*(C78{b=($I- zk+rmzEPXghPIY9F*9MiB*Ic}SGHk#lL&w|?x znadkI3HLQ8Key9*()?jzCYI2<$PKBZh#868Dhk6YEc!O#tTNY@y+&cWwaJ#3q%X?l z@@36WJnVg8;7vfgw#SR#sYrlHkjJdTRyeXc3`iMjHx^3ioGM-6UxF=Al;$zq1sCV8 zxZ*jhDzefSVoASa4j2efedYrr_0`ki9s9-;t4; z+e5p&9)3aL?(pS*jiz|$KMl1uYNib3r z0JqC?PZ38(wl7Jcra!eKVw8}ljr4gHKAm!AL<;nq?tW1sn^>=K`g+HPwhU)=*N$F5 zgbpC-f_q-3;H;MIP;|~Yqk6_J-J^G zTlhB^d*whg3r6=%pWiKh-635Xw`X6RL-0Dw$hW^qK2WPo&DpBo&v4$^EvT>F3!}~E zyTvX8gBCV+<@l5ta=f}6Z&+NLbq7UtV7H4eBIXkoA86mJw146@*@zLz zAKj|{W*QKeZzI(%$z1TQKF5oejD2@cQoL-f!+_PIKQ>oMGAuv1-h2i!ZdV`sdQb-O zbIf~guefKScy4ndS&9>zJK@eNTpmi+tkyXt zrNiWbMQ?(s6240}fl~-kFh}u0T00d%7uFxU-^MKEzsaz4(6C>fY^=2T7#_d&y&t?D zu{tFOgb&iVPXbri-n!#CAqK4s<$yAJwL0Cr;&bCK&KC8rz3PdfIXODWgoEDEfHXI&88n-+%Thvv|K1Xg zY?e@!+!!{ET5a@GC5Ch$Em@?oe(06uynY`CF~-L7(b&`mB(%|op)|?sbJ~jQ!KtTF zEz4)qmQ`Ap^l=mACb`SQ1*+G~&`pMoQ`RI`sEI$O#0=|Tz&(63gn6uKug4Utpw4K# z$MGEVSRIG?gMxi57bfZF{i~oZwjcC zm_07jD1g5#Jo~uCnx#TaJSy~vUsEX?=A%<;H6BxO=3Q?Yil!2}Xa?sg!V#i{HwmMD zBCOZ&k%g8?50i);JQsY)DGlA+cq<>{1(>1QXGk_tjy0G(dv3TCTSy?fTKcc3O{PO* z@8|3tN%a?yXjoR5#{R zkmLCC`${iK-y>NARH`IZC3ZGRVFoe3Tvlf|V&`oJBd7kz+GDWad~S3n8lNqqr-rhB zb()16Hu&!D$*YMfyYu;@#}WH9ag)dUhxdN2DEiSebEqwE3O<_5lcr2>JsLEcrqB!6 zou?EopO9%eUv=`My88K;yg~pnkcqGZig&+`NRSr7Z_K5rBd_WV<5nz!qRP*qy(J&# zKH&bk>2^UNgGK>ubsGmnR_Nz`D>~<{#S`|8HGt~S-2u2x@KdVfSf>T+<*@eQm1*e( zbR(`ydyYJuMw-$ja`bW>#2f>dmRxeNIk=+9dt#qtU)MJS&&|DvV2GiznLljEL&LuA zn7~^99~Q*|k&-vtJp+)$^t5i)%cIOsvtS|Q!mfBK?P35ryqcN{oqWFV-;%%IDvckY zcL3pvxga*xAU!~3ZN@XK>U1E!>w0+lDM^->63V2XM1yqh0Rf<;IQdLG&^WI;M&lD{ zX^?L2zvOz}5!(5E+Sb4{ZqhyYf6w^-u}8CgZ$)P5UKZLDm{A?u0V;gZ%&^9W?D z=&*57eAwb))4(>(8GvV{)URT2oE#w#rqvICo|U5@qj<`a-#N;c^HxHgrVoIW8@ z4m-FIL?9by+)cEsC$%pQ4tJHJCWX_jL$6M0d@8Ffv8*>PL;v7ly(0U}8MioC>@e4v zDvUVQ(#{^CebH8sp7)C{E;7kzIzCkE(mTFOoeyW?4Zyj;o)hx{(9=dTs%Iqy2=UKm zi!09#==|&*e0ICML5nBYEqyu2f3-Rs(Ma(gGIi=;xz5Gkl_oBO3K}Xg72N#sC7Jbx z;>YpDpvAXE-q<)vM6CB=68|q&PUi_65^74}T$tZvfW6j+DIAYw?mFUf%!{#3AP;3N z?>54R->`Ml#C1SJ06{-0^5#W@`V044ZOLf{g3o%# zD;FxmlNy+kE6h-V%@({k9vY3xa;e0Z9jc$XUzWC?YO5xE5j~5wGVvzt@|eNR?C>N7 z9RAis_wahQxpj`)^45r`Z<{1K_4UzG_$-n_giDIx^AF1`q=koh{(|g1=x?_2?YA%Y?zh5L+u8l9rS(p_qQ{i|> zV7RF9Bsf~Ybg!IP=zHUBlVy~X7aahExiu`SsyZLn-C(|yP3cOT+rk$}0)L;Ul zXeQbxAJ{WA!A?w1p>(Or-R$=$O#-6aCw@ zTcR^w4TNUcTQBQRqwNOVtzS+^xEdabQM>oDbar+(n23}1o(V)I4|A`g-#2ZI92O6! zx|2C$Q}AegK>5Xc?_UXq)XGBkzL5hAmWDp7lEwwGykQNd^z$1Fg$N4fuAQ3;-)g~U)<8jar%q9Ad zx&v6l@;G{6@6J=nhxc~hFPJpdJs4vy<_Z1z-MjDVnGS$k+qcG?{t=Ye$!qLBk>+ez zKscRf%;z$NX`i~)H?tMQ40~EgDbbOxEg-BAQl~$a!hP`lu8V%I!j?}eaz#-a)1#|p zF)7*Qv#RyB`RstCX8PwkrPbxCY$ND7G2lEV)h#0>()gx*2R@CVS|HD^+^j}7Pc#YG zY+3U|eL1iC%r$oFnt7+(bu(3Y^H2i5ez`S&kR5bHe0>9bh$}o}7@1K7%ZUHxtZcnx0T!EZMixa42ey0Za9`@(Um*Et2~%n@s}#{ulp#QZv@ z*N6>5>t}N`@x@=k0kGwPtKdiJe^=lAO`af7ZMAQ9Z%638fC;Z<;k zlo?TyiyDetPDdbChl`mz85#50e@BtuC}q>2vCIEs++$OGmF@$=qy26_#;AdAgEmpz zeCq(1-kT%u3ppV?@U5FcYZ&q@G9mO1CV)7)v01;;N!(_I6c!fFu48$7Y8H^ldSIV` zXdI(qKe1=p@BBH*G%o7%izW$oZf|$f3ssKdrz@GR-u(Kxc!7q6kw0K>o(aA11KNcw zE>DUp%Dxa_jCz|?2a+n-^uAt!y~OE4mP&DO+&xK=7w<4BzGM0$1VU}BJy(- zBj;@GOnkDE&yV)z$0rOxO2DMQ=ssDIR1?z#pC1rY5hAznW!Xd+O?wc~71Q=%!B4U7 zl3Y$lo|&dfv-*4M&o+q{$lU|?;pF1{LA^#vG~ut!`-!qC&)?gm-O?R%|0b2&hNb}7 zuV(k$63ZTZDizh07$oSaLxF4jL(^mi|^_pMH zL`B|XT=Y7(UkaE1i0vg9(GC4Qiqn3$%#xcQ!UE}>ZPrRGOOvg{U)8^NY-Yn>Ic;*x z%fz(O=ajK^rGMk;SzxrfE3U8jl8%OJp2iXUQT}i~V-uBem^zx`QrlU5#8At`D6MQp z1O~wWnh}L2F&gEb3=LZe99@s7ntknr;ae(uA;LKnHi0wQJ}#hp1Y2nEa&|sHAx(=( z=~GG6{DqE{iTXx>**XAOn`yQBiPAXtvXFxwTHzO z5L+SF3fM2YoyJXExj9r;e0Ee)>GKW7f7LF(Q%8=witxCw| z!bUM6z1`CK;MMpk>rpS|HmYO#FI1H&_pc!HeMo<*PDQX^+%ttX(P&!sUZht?D9qxf zOq%Fdb6H9$V)n?@??l8~S;dhyN~7Gs1Gnh-lEy$DoJWrnhbln&PhBNI0f69;YNG0B zFSMH#nPq3t?&(~S>y)Hx6Gw-Zj-nU&G|*zDW%ZzjCa<{!t z6b_f3m5E}#TuIzgBr|9at?Z}V2$JgW1k%&N`#gyl9^)EY;q%rowu@#ChhseI2`fR~ z%*EY39ynhWZ9VEd0)SD}F*DbKzU6eMp9%GTvbU#P)Tv;6F^w)1bAA|GWDf2F=h@o- zmLWS{HuZ<|)HSN?J5FxC;GN<&S|K6kkL0_w_rC89t(9dw>p(Dl|K1LH_=d;PRu%R8 z2|hri%u%1;v>hx-66)MM0~j@(W9rdFI^GZ?Ou)ps%FV(Pb0Wjp;;1sTCQqP^j|5lB z0vjadztkoTzp}8GZ2*@MvZE(vKXIBjbub-%$AjF>5%j(XoEHqh`eQ!3qT3ZO+{JKh zMrRfXH7uYy!`r2?4O(hp3y;0=Q8;@X(j9HotEaAEZ$#BDf3yfNEsDnfqj2;0E2Ru6 zVD)PsLS{f9DONC`Q)r)R!~pji&pVC@usXicC^)Or>#Qxvs?DxIfs@j+#SjGxI0b}l z+(5Zk4l{^JiYAeMz!04A;ziPEl~dR5_7aSaB_PSY?c`BL`aG7%L@zoP95k#4xAfDt zQ4*wh1<*qJ<$U+G+QW~Yum=*=5l0g%k+$qZwGr`EO?ZOe-W!Y+$nzl|LjSpkMghBK zH7%0>>^?nb?x%%)DQzf@hJgIA5hjkm2js{N*SkCG$qVqe|9u_j)Ch(OTl(+sggm?s(Vk zXc5+w@uiMkf1w5WBh9EI27y6}i8$!?4EJoOZdKSF0$rw_JEMS^d~C{NaOtCP z?cLilrFf3I3C%uw6lFlJ?otvgN=U)ct67561nZ_=)fc-g&SDrA5F*G3`f-m?Zu=_G zs$TMJ*Zv)&b+ZXIZoC*8GtTa?`Z1mnBuW*yfGfPM8i8nhY@^uYUqDvoA<8b>XL&67 zoRTj%B@$3iK&HnQv!WWa$F=f;OWX}L4V?l-xn9;^{d(NQG4)eyYUJbP@j2$=-EMpn zX7A_g)kC0fR5GN+2wXAUi3KQ=>^+7~1wgsW9Qv0l7wV1a|3JR}ZVi8LE*!h6{$Thi zlnVrMJpAi0rL|dr%O9Du8urZ$$_UvRqws559B=tz3l=F=*a3lH2d0qXyG zXn6bAuPL9iRn3RWt*2BG&d2CApS&a>9Z%^B#%@w9l2!V~TzThUd>R3VEUrAZzx(%eC$SvQ8YI%CI)52o(VWx-peEO zvC9H=Rsz+J{4dyD9(|_6owCup4=pXmy<}^0T{ylUvnP)Ooxs2-HqZm@u+&$jW+-{06lZ zONT*$i&TfR_Pmz`*56eCDx|?5J8eJiJLQWdHm(GypqgZ^y%9S{R75qw^u6j6h;FAL zM~qN-570NzwZ9vPZiKei>5twbccz-ApR#(I!m!B3tfW}9x*geyq@0bLs$SB4Oq)g| zWLbn+n`7B6#|A(rMON!)mKZ=%z|pkPvWRnD>(oRT2Z42-4 zDr`|cyiAUXj!wg32HL7SjYR_s`?MG-n_bu?qC;# zH6oV=8=H#V8Igc4cS$&*eyBP@HGsW(R~b83W&rIQS+~$RAdY1F)Z-reH>xH#I)Sdx z0f%_jAN*0&MR8;N(qWK2u%>Gft*=66Y(8!6fGr(tGSU{lD4`1(OALYqsz zpl|J%9W)FCBGLiMW1KIqylbR?7~{3^D-cY=f$ph)h~dwV6^9czMG}CB#jXkj*;88A z&YJIzDcr~wLC6ZyM{F4zfOWsR)g0|ul48(@fm=^z3_ptWs%o54lHjb8%693AORsLt zrKy|hl~(Rqn3V4~*DFj=r32Yq6GVKyB5j{i@wyy7GkZEh`*t3m^JC@-d0Rl3gx)x; z$)-C#Ji0GiErgZJ7gBlt?bVEnvvzX~&I7BB^YOMTg!iwT4|iN(0_k)7ePUL&w-i`0 zmKo0FMi4I!CbyhvSCsn;g6+wNl|I3{_QiZ&?OHV;DcfTLaz+ei9o!aNrxb%QeAA}x zo?4Gq{rF`WhRTM&mBgoTzodPpsBdEDrVO%a`%`o5a`1v>M=Qow?7NiY*}-;vN0}y81y-i%3W-vMW+-6 zr5E|~dZOna&=>QAq!RyE$xD9;k&aJPzzLgBn+Y&3nxn%hMqj(w*A2_OC&uCVO*0<}&m8#)FoPc$m__s?3C-(pY7Yd#sE z*gl&?(vP`6nph>)lz(}i3$gt+zM_**h2MxPp6*58P2n+_=cVbWZFNQ372%l%eCTdw zT1ESGy-o0u9rrm^Cieijt00J{#N9ti4|;$AY@zkp&9*cQG0tv;US)VPMKlAEUl{6P z&sv)i*fKJjvt=Ocmlf-yp{0ICWdEYjJi4>325*?UJ?z6)j`sBMac>=NwHu!~j&Da5 z+0Bk^+Lm&E27xAkqkhGHsq>c&F|5)M%G?ymnFK|*#|eu1!V97<%AD=xV=nR9A|l-WY6%ki1zH8#+^?q9kCPL6A7c?aq}^BZ6vx>UeRu!n4* z_twARXN2*3=HwyiASOUaWd?m%`(MbfkunPb@|FdiTV?K!-Ym{L> z*m~R%(1%(U$b%~pt$bI3)Y9iu05I7ffL*Sgl;!Aer#abX5H>}5jXy5nvP)#V&pyMj zWCj8q;YWOZ$O+l<`{f(sZ)QGwSpm_|3U{WlEdcIAhSC9urvg^}4}Zswp%1!~y!F0~ zyG;=&nR-L>ccWOl(OwZ5XEf~__KSY_o7<4;;RIJ1N70+?iYQqB%rZJ;=AELi$LZJD z)4OyUm&!;ljy!om*#E(y*PX$c?ok2}%B01#+IwU{U3=pQAEm z7$(1(<`TtuT}Z-yS;++b8Dyy&1I4W;RVO}9Z@1{s>%>@IfR~5V@&3lbU(p8G(N`15 zX|(`cBoia!AM6KteEiua#;wrUc;Dn!Fo1j+`G<;RSX^!nyqLp*QbkZ~-2N1E3=j%` zH~XK$_k8p;QC%K}^Jl4hd>nIBp-5K+I^d?QQ&Fbd;{YjMt)=vuz_Ort1IoX7xpxJ_2AmV_M#u8bqTQX6TsNA_vXdVFmiFIxa|OBvWM@!@H}zW zUD!{7VI)-ESuwX+f6X>?3L5XKn?e)r)<0}C9Tk6vOZbo=VL&>KyCqwUUZ<2VkMI~Y zvjoNZm;`;^4lrFm1d2WNt8eGt-Ve4d+NQ_)IP9+$R8M%29!M^k2ruCyp8`c2{t7B* zJ1V?%4rE`+Cat%K-iS9O9Ran)|KeYNl%%6CxZ^NlpvjE^HGz6}b4VQ*f9?`0h3cW- zQQ5*@Jb0)&Tsv5~Wpck=Re2h@iZ4B@9Hn+(3+<~e@9-&ZRrXKcA1yr#^WY2_!_$Fc znStqz^Yt4VNFoYYgMx8_3=@2LANd>4-A|~Qsh!ylxhIzzpYb?ioV~7G?izS8NYyS~ zt>gvKKsJANm!K&B0pN+$dHzy+u`It9`&;eJT>Iao*QpAxa24=zAgSXXKWwf7pJN&S zJv;qCvK}V1QpF_D{o6x~Y!Rn`#!|O`+rd8*BCy>rkYIv_kinE1=tC?7{PxkmYCdH| zZ893_owE|DUh>LFzWaR}uosNL?Eeh}3thizJOXCP8V#)Vx6Wfc33=f)GA2*RjkN8p zbFkZW)}|MFa2Y$+n}?nASd~3@yx(0pv|s)6STj*EBWZoY)wk_f`0QA4oTW4BQ1RK< zt9s>Bj&T@t?e{@%r9Gu(V&p-F@I#87z|ySVuuA#lS{Fl2jgz9EmwcNOT7*Catf-97 zEhFlM#DI8Q)%6G+etUcJSi_7H-2D4Bt@zQL$Q)zvdCvM?^?EC(!Ruru*Q3Wky{!Kk zgP(9K@Cl`z=sL~Bqb~{!*A*4k*t^%$pdq*)@pz&*r?SLC4sFV{OQGzo9qS9Bpbzc8 zBHQD%Ut(*>C_+Qsusyy0}J67<@|Fe8loXGy5+ZtkAm!|7LrTHBGX|; zpjR9g$@(<&p2F}X<5i1d&;&qqKeW{Lu5hJuVl!pvS;nT^yLJ}?A3ysZpS)qEH-z#u z(0Ts=NEKG-O-9hG+<3nM2SgwokUbyn8AFnYMkXw7S1RD%tO1vE&tTuq*-!BUW0;q13{iuS^djY^pw*CFR!N1Bd zxo_n1CF1m-?tig?U)kdG0Dz>vQj0sBff8YQq1cz)lxZm`a*N_Y-3T-#INM}O53Ex) zC@%7B-&eJmv^O08QD zeCXlX1Ylu}K*=`$3AT&R;AA2r8zjVih4@BfyKpmepRwB$Tv5#IXl+#M zXZO08RVPPE8y9YrSI8}s(mSr}5_fw@L>G!0G1si)7+AzxC0iMeS$SLG(i+b=HDRLN z8YG7Amn+0%y7s5?`!IqY+EN)6?TN;@yhmCQ(c;!XgjGQ}^Boh48Gt{g$4sabijvXw zhUy~8f%e&Q3zH%+o^wpfJ#(EksKZZHk#9fp$7ZQLrgV&y^7Z#@Uq(IDhwTC=pmO)# zzo&=~j3NC`#)#)J@?vxnS-o`2Gx1CDs~56SxQYoPsUgi6;Ue_tTCbhJ7h!474v@y704^FWiT12J_0}4EXH|L* zUyp?H&CtN_w%ysy*hZfMFI_>O-nind#`Mn2+e}FV0V9M#@7?KwsSUjWLN~MWd3EoP zM>jrnh;+?3W%3(l`=u@GH@AJAqGY+ma8Gkj>D8mM&_k$|HY06pCG64?z^ z^VpyJvauu?W|U2CR-PN~a_lnbnVMbpQ`0}Tz`#L}N@5mBmyo1QrA}+96HCzV_o7T&CDC zy*O!YJx*`aJ)jOJIH*ij7u5Ve^*AUYdmEj0v#nhTCwDfK9TrGwim>qn{?=2_iq+Fle13W zQ=NdawFx@ji-rd)tDOUqVd&-HIkCBJb;@m4&6R^rlTO}Sa>e{U_Ek{p2b)~@v@e-@ z14LPsOf?Z)z~Dl0*31SfxbjtU8K!!S5Co%3jOGbO0L1kTZ$REEah)*XdUc=w6q*RH zbZYhL=IM#1Wr5aun&`?Rsw21B*KBRvfv*qcr^w2jW}u-jjqwIaCU>ZrDlSKs#vS{y9z ze*7%!36}LX9k-CV1g3U2P5)g2P(#)JzL?zu?9~!cWhw9IAt&Szt`9sFn}U=6I{hAN zuSj6eVUTH~vaq#cQ*tL~PkI=+lRW!+ZZ*|a%};;GYF~OpMxd0=9RBg#0dVw9==Ezs z67>A_p$8-!|7<|$b^nG11K~)OE%T;x>IUOsYac5KNqUzQrU zaOjh;)xTVfdedHufa{HJV>QfHic`%&Uf9=G9pwdTL#c1bsD5GzdpF=B3z~Rjqqx}cl#ge;+CEK#?@dZR~8?Re95p(ahh8VenQ`pfm$E0Q-hpR#q7DPW|}Xs#$N zOPTt2p08Zr=yJdvJ<|>k+sAvuPHKASl<4ivmqJs;pPuPD;UFd`Y_EvYuf$)=jK0DA zLU3x{>8cRUBLN?FPp%JNno++}_w*0)P`uV2p*Q#47nJ9AoXeIQZQ@mYy4^;7SNLxv zJWyLM*n4{0Fm<9FW+@iguz0u9Z&C#r_t#h3 zrO^M_YJa<&+UmnkpdQj^qhC+bkCtTu;FVIk9Gc!#xoxvIDR96`_yJs)aM4iXH%RB| L4M>@$P5A!-l|ajY literal 14716 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 diff --git a/ProgramScreenshots/SettingsSiteTikTok.png b/ProgramScreenshots/SettingsSiteTikTok.png index 6ddb4a9e1d03c0080ac66b1c6e64b2e017ae703e..369450512c2cd70c3556091c5c89074bfb37a7c3 100644 GIT binary patch literal 16025 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 R2jp##-VI}InC88x{{^TK-Dm&+ literal 13181 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 ~Ff$^=HK?bO)bT0T19@WM|CV%k?j@dj z2Z3}+%@UxMQ!vi?wQk*HKO`Q^$8m5cyZV^FdCH?jMm$Zk?z#^+_WAXDM^A1gi}I6tlU+mY<6XNO8XzuEVQ>F|0Kcq8>SATPk)(WoA13 z92nC6&OaE#KNwLbt-@(&@tYC-MVi>2Z7KcZpf@)GOA!3w$y_k;)a#H95Z7i}O!qeD wV1nSlQ;zoLu0B;{B;Yv76z6stwolHqvY0>7PI(0+rO3!MRCJ*g%8$bS7uqL}n$C4*Z2# z1c5@vG$kU-8jWC2M%X+%G8F_3ns&?aSjN`c2^tXS1Cv~2Szxp2R@&>Wz)psWz#Q3) zk);Ly9B706(&_qb^nO<=hcu5t)3ILx0$A*;gePtNtPdO&;;~TNIA33C{s`UrJ$1WD z=k@Y)+JRIPf-!I*tWz)ubTgH3M3K;Qf*<71$EB=~$X5l56i_4@G{57xA%8^5qM65> zNoY=~0-n~r>O<8F+WdPKbcYHXse%fd)buy9-#&{2!=CiJ4s8Vxce6N#L-rE0;+JJX zZs)Py9eMnm!??ryolx2Rj*6IsrLDHGDcE7p^Y0jJ%~aCi7^2x1zdj0QKW84?6l^-g zvz^=Yl?5j_E$xb$tO0gxs18&;2wakeyOUv6!4Tj7iVJp(Z;g(p-zG(P$?rZ^xbq5w z(9XJ%b2%M1H|1Lt%%mUDJSNgB5}}X)9OZ19Y^1E;-bte1G)~-q%04HSJYkSQvROf1 zJNLqM@4eY}^YmL7H$s{t?gcckG+;P9>1Mz=YWCF87x~vpuZ=nbhR{||n?H@m7*2yb zses$aB#1FfD;n6HSnM9Wa;kLyt?hj($voKq9iwh14R`dgWI%hmrn_$R-O!UT3I07K8E9o`y6%( zq4=rm6?mQjJAJNxd#q{8C{a*hGIfctu@$N%Bs=~nmZTz#u+XaVK-T0!3k;n-Gj{@TthM4b(v#5mC z9nN`n^ty@QqJwQ2K%mD;))c@ghN%5Cep)5qTh3>IV2~^RUwuU&tm_#SBM=GFF8M|#lX9>!=0stul6~q zF^s~-I`W5wSyCSP!@^3mACm^TBXut-Yxz-AahGVnPP%0u%q@KQ&0t}=^=N0CaQs5n zgW$F>US;jMyF8S{&Ot@31y(|wCyi?v^KI?tip;%NdO<1PC6(cIytlfb4Zh_{hjwdx zS4%mr?}Q^oCJ5h>4_=LQF|(Y|cPZcZV~}&J+Nds#*oQ5&CNK!LduIl$+-@4!?i$-m z_3Au<3gw3GoP%)%v#TdJv>Y5_%l8KsjFJ>INeQO9U$~LEoSp%M!hpHWrZxPSwdWFP zLRaeQM#|FUdlUI%1jPcn)i2W}VD;W=k#OJ}*@JIkLxZ$b+{_Z%Ir2jGpR*E^`E@2F zsJWP*zDL&_p5Y!T%v5`D*ejMOmarQ$WSy+pP!&j0ZcMwypK}H05@}dfLqM)3mM2y| zPOzYhy{~z%EmZYMUsv+CVT0Y~UU?%ozKQLE>J4bKBip-(WZCp>c@RJ$!V`ZP;kUcaSKRUt`^FEW=w zyrS<;GT4E-1tcWD-Ii?_7Rwu?E3KLyh|KA(^iYv^n-8!R+8js-Uay*N9m{pj|GlHM zm@}Vb=7ZnTf-+w?tF-66Df>^)VG&L1^fX-s2|3ABI`TESoU@SDNzYy(Prz!sYh6)m zuGw->Y*&W3^L!_Z+k5!a&)IS&x8pfQwVW)uU%pRPU*F#nvZH--Tx5=?YQfUy%9yvQ zh}>Nt(XFmPw&(_O_j__t=2lg3LZ!hs#CH3%mXzEr98(SA1JewrU_!iNFAwdPMAK(0J` z!czB^aJvRc*P;-NYG&M!!@`BPZsq>Y`#TssPuS@1t!Q1<@ca;9U~z;^m`~&mKj<{0 z8$t51rt}{*|q|CH_7?!e3*fgRG?GmH>q$H_>tMF+&jxlok>dmVW zjhsNRXR4?1nRB?gB#doxiZ1iJ?J(9)PqSIX>#gmhtm#8t{WiKcPx2*`2lQFaMn_H2 zoN2yXGi+WTu|1yqNuE$YS=&hH5pQrto}Fq;n|gXxF-|+9dBCO1r;%n1tuLTxVrwdN zl7ZjoSXck*%(gv+IgD`@OKvvz+Nl1t)f{9@AWYm29VldNt9UGHP_uLIZLRS3^oO+l z>He|EjZuzPPngERxvNf;Zv`S{clvI5?tbw%+W%P5vom&*mvyvt+W-5fks4Z229mg z9OrK+-?)p**k>|Y`MqgB*ZWb4?|GqpX%{~RQj-qn zq%llhtF9BDa(-4f5eQ3HcAbNuY-({x3@&27%KdA3nYj#qh$D;cQmBA;2~ zDY-}5X)YxOI?n3L#2V6WC9vI08yn=j;9Q!rPoIl4I1wGAFu+)J5tx)gRrH}O?^jrZ zpyP;U_BUqye6OXV&8y_KP{s@DDokBX`{t!qqGfRmx8WAHxJqY;q0!*mSoF z^=SRSzbUb4i=eLAoEf3rifcVy42ATwN_(r0m7CZbC=QFI0s)j{;_oo`!{p5FyNnf&Aclo?ze3VssEC4+aM^*LJLRa@h z-ZOVrRd`#RzzxM%(*`P2mMAOUIqWM`Q+-j%C!i}v++J~NNDeTvqQ3V<9O*mJi_Ge0FoIMdKMIV$+|H^f%p zLalu+cm;YF6_1rzHhN|S_uDdTpaZ^kmoGc>*Au!~U?vGd6KH$1_d4B_flF+q&TVbC z1jcik45g21k427GcXOts^Mu+o9a*DLQqW{@ zGC8_xxM{E31cc+VVos}I=fw{sLzQ$?T;ER%Kl!a`=k-RC5XY40Saf83vorEWceQ3b zhk`jQWZ7+SxttTdi1aJ@8nT%?(Sen9jc_3Cpu}KW7J_(5 zG@j%S6jl|i@s1WEe$v=Umo_~o=jG1QK<~Q&c|k^D^Y_^S+iJHxW|fL8A~{2O^OR}x zu1069Ghb5Del5*w|CyjXS5E#Cb4F-nJR3Q4 zU^ylz^DZqo?h-g0xKM+$F70jk;0G-pPt37Ft0MI~zp2dk?D_S0K_-Ma2y(h-| z5-mOjd&4hV9AS9dbMYi0y3wcNz|M8F7}QbRhAUDB7R z>SUgzg+%$}{3UhKl}@Zymjo}>vA2~vICK3}KK@90@I!9Y`J5|5q5%|ukUTsf-=tc%RL z0SmF~^g!Ce%%<;F=(w$YCqPb2odyq`HtP2eQ>+;gc5ftu+RCs0f$j}}V7-`bKfnBD zr+PiiB6X?!G;uZ zJq!&^_trD}SV>Z3NOyGt$5n8K!#DKCQEFeyWM;b{;!=gR>$;B~lumc|Q$SJSN)~)f7Km4E+z$JTM^r|h}B8(3<9U~7qErPtjaJ%zt(mbnU-%XHnnDGvcCfRyB^UdqiN1NPS=RfHQUp=LI6Z~9|1{OHpj{aglUbUdEUB`Xl ztA(Q*Gkiu4hi6F;GKaoD!wnQ;BW7CQ`6&ME%GS{fRGjhhE=TnP7~{>hw@7nnxyw|O zQ9SGIKa$M##^;ZqaNZ+&$6)0`M%5#@@LTx9U8%sSHgx`qg7XFPm-*<{<_p@B6L8NP z&Bc~*yXaIV#^`H;!ijjoTh+Nk=Bala5}&@&wP1hQYo|6v%rCC^|5vuilyE%-(!4E% zhst3SB85^i1+8$Gdg4}SmF%+8aHN{V1ZV#Y%!3^$P3WbejuH8hq>RbvqVs=Wxe9;($=haZf zT=QSv=+*uxpEb%di;`Y-Hx(o)4L7l1By}Z|dAbW(P?99Zshkfeg}Ml)3Vhzu+0 z(Q@Si<`HK$M@~o0rNZ7|AitHq-y7lDdSyR&uh;V%jl95g%L$=+06+^|N~8#4dD}=S z%zQ`eg#&6G-Dtb?`L#r3xMetJb$El3)h87`f4IZyVv_HL?#b2r;-?cSPhTuor~L{y zm!7)T)w0KCl%h;`iUMFm+MOmjx7#-4ITP5PB=jj{^ft;@sRf`*1o<=ojb#=Q7mXw9WqGw zu3eB@r55&rVd{eF!Ngc%V0Dmk)$oXsWvF`9ba+g4V8>H|9gVW)3rgNiR;;aZQlHHt z%=P@&m5pG;BoAZekCZ*yyt|DI4l0!m+%4GNS7^Dr{$!(fVG6gAh+vm7UXdiGFwy^B zIX<|2iM@{?Ccrn&lNz84wJn=m6NYRZU_N@>0DXOQS;jKcy86JCt9&aoatgMxOBxb! zf&NS_yTC+@u2oy8nYyEc-*0UZ%o|vp%SxdrMcc;g0jgV&OaMkiIDg^HFTF$)faN26t}`rPyhBiJ&qS{gl^~g>|^>G zlt>HFqB3rKFTW@=fq#aD7dl=mHK?d9z0#nbU&=d~;n*KyuS9-2zLPUa-JC2&%x!!l zp329o`$4nvt%+z=aa}UFiVMTXkK*Rv%hS!R6}(e0GybNHGC8iXrX0ZK*G6-J8yMo~ z@oNcqF59#pxBU(=ePtSryY>}VugNYx)4st7AerOmk1Cq6#$TKK-yM={N3M-mwaE*A zYJ2Rj3xu=7^^=^0Nw3-ARy{74+Y1x&ocSb`GqfqIw4ENCo2Rc!)>$@B`gcR@T zK`&pQeAOJHX9TVqNT{0wo&dL`b1%TK=6bS=KOvNexB>8Yy!l)qr6O>Kbh}+{BXuKy zpkMDdfS6BIVTXl>@r8v(dY))Ul3!@nnw!|I84lLtk&Ph6LWiG;qc|h9%U-_uE;evY zs~WdI&9fiqm~iagPMc3Opns$qpfdRxonghC+n*R)ROLN!(1lfs^<)G)wCuv!h|9c@ zu`$5H|3GH-7s=?ZQ~t`sYMg*bLB*MAgl1SWzVKHfml)4`ORRziEY|-A-0|P3=3DD; zOJU3=F03HXrBI+85i^X{1E}W@JakHSlS*N#lF5Z5iP{2*VjG<}^J{VjNota{Zmh}7 z_761z+9A8#Y~(?Ki%a{L}(; zllKhwEr=nl2N#hd@Z6g1*a}tEL-A-jO?n{ezwDfs396D82Gwa2m(At85J6jB1yJ3l z!`j#Us}!`NQ4(scLLNAL3j`IP4scpinCw|8KiGKPHJxS?KmrA(O|&vF@4nbT43`&aC|XO!RmqWL}D5y_eN zTY+g*Br9W3LToAO4eU-G!!t{~M)T&N2%^{s62EnHdd`63^CR<{9)TI3?Q2!)TZ}p2 zG@vvRVr}?1Z{c}jF>SuMFRh1bB4urW>)q$tbw?9qj5~6@(I{Fi1T~uh=?lu!5MEn{ zli3;_j@lY{IJ3TzH>x~K%u#mwDiS$}h&v7H1p%#qdd~cXPpW!nhL{B-FSd%0Kw*}H zLKk1V<66xM1h1spt6sB?p!XfAleRlakAo~iqLhw+rk66P65$j~O*-R`mcNyTE6?3D z#>?02h?`p2#uo2?>m(0ZA(p>Ew3mw_$m#s3K5l1Yu40kw*!Pn*W=&&DS4~wZ`Th1M z+}xN9_#u9Bsn3=643Q8;9XVMtgg%6B?^CK7(7Z{n)Xi=@v>Y8joJAV2wQk9QK8S*W zb?K>rMoDbcPoou-I1hAWz`t}7|E$LUug#RdJH(HVCtha6an!Kz{jq4e2lMq#0ibXB zIEiS#!{EZqk|b~GVF4aTKD279ZC<8Y()DeeNwgQ}P7LuADV(AT3c>(4Ssi>r_y|_I ztD2-fg@OCLdnoN_j#mDtkLctS?Fn~0Dpd18@u_J!3~kPuQy?Pd{3{xb9!wso@$@%P zTQ^!iP}9TYsGDEzt?}dO_UvA(y)4Xe(|j=d)i>J;RJ?(y^TJq4yaDSHRc9^ok*VH> zbdz;Vl~>@v6p&MWXRS#;q!1fH)R&(2Dw94Zr!lAkY|WEagx=FlakN_>6~;i1RFM5l ziRwkx7v6a2kcno$S(`q1i}A*B)qC_ahG0~7fu$@8Mv^O;El;CI#oginy%|Bp)Zvo? z?wVTM?ySX`z1o&11-vImmr&J+R zei$$E5CLUip&OA7^*gYcX}AU<}s?` z)tYM~m4bCV2Cf2U>GZ-7Tp3)2_bHHNts?WCHpn&3Shx7{1WM3I3~=(t zoTBQ~=eX}JOw$cL7sjJ5Gi!Qt`{35XU!$Vxw{N~-=?%Ur?gK8A{MhKlV`~^0%ci{^ zKRs2));N}*Amf*@djv&1f@!%8)ole72M4cp)#H)i#;I(9>06-dq`=lnu5gBS6wX}r z>^%c2W+JxzDwzyiSg(r)$}1Td8BznL_5Z+AhB&Lemb8Hmrt*wE077P40SUt^vj5oO z&t3d0+e8pseqkL_%7Duf$vE-kbKL$DiQ4?!{RIG9_U;*w4izGoed!Gv*jP%g5nDX$ zXbRA)M`Uzg!nq2f1kv$vdc-e(p;OYOkBH@idCN#>KjMk>zNMBttFM)$K8C5`wUg1J zM`hd8+xW@=DGa+0MWkAj&wa)AJSi5^;T^)K#TzM<1fx{lgucqJvw}jR0G5#N++{7( z6Kk!21=6o!5~uNoXzm)1|MfiUi|PtnusomVFW zuUTITjNXDGyRV%GU6%+w!Pta2LT%!fTnIKK9DZ3!PJ zbt!gNzyQ3R^4y8!apK>eZ$LlBUQ?v?hz~T&Kgn>Up!}M z#!VYBk0Ml+$6G77oph2NsUq0Lq&3r{vq4-hB6doAH$nWjE3zf4B?B1`Cjd#pZ^S*d ziG4st#eEO{Y7--L;ly&38`NHl*>9KmOhsj9QI6(l8{C|MP_9UAaSk`iCD*+m0~v|| zdwyM;HvNUF!z)>8)kM@iV5hG9IKMipx$Ds#=edspB4KHj%%?yaq5q=k_z(8g-$m?Q zKNdMi4`TqD;FUK25xj(EjGr{D->mWgftZN+i~7fREn=wseky4h@-Ahg;7X&J<4d^J+*Z*~HM^yL2m(RvYyAKJ7ou zC%z^n`N)bKfIs=1|F8pALFqS3Nxl!dWAKg-CTrD>T%%AM`#vb&zK7LfTaf*Wh=(bulUQyuX~U6yRJll1jie=p^iw9w)61fF$IN(G^y;$Ch9N494AZ@7u*zW{v` zy+aGuViL`$8^(-FrDc8)#F%yWDP{TWK})heVA?Ymr-DY1n%|`_8-zv#(eM*Qd6w%l zI(?Re#rBY15lGf7l(|VA8~YpwV^+b0dF*}1iinz^o1`HNfb0Ba8D-04mbTd*>H}AMylAwGhvyugrb-eOpTBTLd=XjM$|?g;r(Ms>nYN^24hW%Nb<@ zZ6NUCqvt@6(*b||(=%8FvqJE-#ob15*X2Plw?qJi%kUIhXQ zA2X3cCn_YO3jHOg_8+X&ClR#Se0%2rq;MDj;iD05d_Urgd#`! zbH$Y`vA6}eDibB}B$izcKRu#~(!YvtMJ-My$^&q}n-_kGT2=YpQNJ3z=jr$Ke zewHIfk|OI)op+P07HbqCw$Z;X?H-CneF`Kvvq+1HEj!bj_U&JfnGB7JLrOtBpdICf z=P(vcH|jyN7!HYupoDTKu{~jnrH*obeI?L!w_oy>bqAjzR72515}iF5$jp2MSM;_m z+&-r^Qs{=Fn8v!p)f&=+aXiZ#2^&L!N5?9MCJJGnSKtZ5txcU)H62(F6sS^`7}=i3 z-gk1KrG#kIbt5qw3Y9B51W5i3^Hl(b6{aNnR}C~{Q7oOKn=>%}fZX>kl6fVfEd$t{ zPhj`Y%S?O$)WL=|Gt6coBtM@s3W$6lav<^nc^Qc7fGQ3!`hTm^`!Z8YQ$QTCRt?d z)?zD3hz1ZX`~OyHYH%nWN4eeB3Vpd69$atE7-9?Lw+u^g`?D9+ED~KEF^rVl8qYXS zJ-!Sibvs>J%Da(cMP!MPG}V$3kqc_?Aa1Sc zD3?wsEkQ27a<}4dyje$fJm+l9P@!@eLC*bJ6{>J(5bw$itf&;vHq+n@&CAhqX}XWH zUOI>Sxt0f5srT8Bx>YLD^o1-&ct^1Di<=wCMS2*uz>Ug_@Y798%1+5y)0ftTEfQ{O zSBcIkK9CfIfE}jQ8-rPj@|sy2rQDu0TBlg|Vn~n-+4fvHdi7}c@+#lf;3uEQ>q#Cf z0giS6wn+h+pKI-De0J5>3h`YJoIk4DL7n)*g6FdcPe3>M zh!L4XsaSKQ{iy)`jbw2UAV2}m!OFDCqxcfwI%)sg{^LNqVwdE7p}PTWlB9;*K&JJs z7+>nW-lPK31L&oU`=MRO$4!0x{oMpSPUQ?Y+sXm`3{YdX#haYppaZ3WfXvVq8cD^) zBH{7^Q23pv;kLWbHw=*S6SZahjsUEW4F{G1gL%$z85fWx!W1r(qa245USCD#J)ey|i9^(u{@0TVOYIjwCn> z{Y6@k(={|Q38)I!xF+`pSqg5)nv)`6s0X1hyR~jiba45gp#oV#FnTgaa!2E*?St=< zKBu~(#iaz$*jD`JlKyGQzvEV#PxP9!KM^q%vw3yj?nt)FzC$QWi+f70>KquLz75 z9+Z0;F#fu~$Q=I2UA`}~C5IE`WUX!$IVL1Ssfj&aEJYC_%>2{&t-+-ody*uNfkvj) z5+$l2+TC*C&C(F2ct8nvgj_;DxHdq~zWPa{O}qgK8sr9yomi~KF)B56Pp?ZR7p2QW z;ml1Gw|YUkO=I@AU2eML(oOOsxMCXS zIUd*yXg=0Q?%X$z;o$tVPmdin5gXcpA~I;LNFUCLU#cLmjcBZ|v;e-)blJwbhGCm?;EN5zqXKHLN@?NG^7 z0>Gh=XT;2r570eo!)iRMt*u+f()Mim|B4#VUQi5lobaY;_%Qv zJu@>IkK0e6Rgxaw;_q6ZRf=GPFK>tt3s@Lx-Sp+i(pk_I;<~@mpflih&G_`g6@2w^ zcVHFFwrbki<+yjn>-3M%ehcU~0QQ%{`QXq|Zd^M#zPV#iZFowE6}=HOu^+r$;R4O* z9K_6Gl}q%f6=47r!!PU=rF!)2kj)_txIX>iZMS?eT1(y-U(FGHnb!D6O*gOzdFvA< zKj*Sce`LB34tWYB^rI?&Hsv|=A@5_`qwC=gaTk^PYUM{Bx83<#OkcZytXd|ggK7WE z(PDHTqxz-rRX$DTPy>W8j)LAdgK-XuH^Wu#)Zr(_3Rki^UZt~nbseImQoSSs_+~Jy zaB7ecumShNo{>{iv)+gmdq!J+KP=LWVUu4|=5j;M+UqH@jFRTfycynJO@-G1K1npe z(QeFF_6JOMcLwC%VDBfyTwWOWI69cN&QXIiI!W^t78*g07_3hb>9=1J7T{2LrJTa4 zx8M<-1qttE%xOSk@L1H##UI+?$b3c0&HGf267F|IN37?XRN(POn7&MdzlUHHP>*7O z`nK~lozPECN(x-KUlvYy2y^XlrGWR`UqP)d>EBtac-vrq^%`^MnE{iQ_{s0?`2O~$ zT$5W>JK-2WmtMvyGk*-p>badMZ-CcC3$bA4YDseC{>)Fpkx!Ca(G{g^9T?J$ydDCX z=|8&>Y6^A}j38r0LH7Blq(-fsF%a2c(^jbs>-DJ9w47zmyJxiICBa>2F596Q^m9j zM^;o3lcS{T!tqG!M*OP4fHD(F z$g>~V_*d@$#O~-ag{{@vX1N0T`phpeSnbRD(tFtaVEu@Y@pgp+LnLgV^h>;-_0jZR zzzwlOlx3^?bY4H5(U<*Gzvkja7EngvSXoAFP|V1NvsyRE-Zk-r^B^>vQ4f6_Z#I{uR$wd5|8FEcqKQdQL$X zJpBEyvN<_}6LHyIgm0lYFu!%Og60F@K7Wth|7c-#8pZBc8|DlYnyw=$9s|ir_m9ZE z#_7pLOaSIQ&s9Njdq@pOl#uBN|uLUJwJ$f7Z_dQGp71a9bs-h%( z%Vg|5wB9rqPl+Eb4K$E;4r03wclrW!cD9fGCsy`_=rB0=Vdh6G$#^qbwQc~42|60+*V!<#oA3!8{g9_nFUj^t$BUrkW^ih^ zga8!bVexwjL$1h@hnkyVotvNM%wLvrN*_Mwvi{)FHZVfP$Tq^?@AO3y@8twLlIkQAUxfQ*uvQR)59=AHHF z#96qVOYWJM$Aa)n-l7+R09Qj3JVIsHzSZFxcD?}4UuLp!U!BR&b+hoBFi02`U3Nc>U7ryZfg7qR;s z@w@zzl7|cxcoX_m%26l=E*V>zT-})6bNA)bGG}59Psp{lUef1t?_fVN?K<4UYVIOm zV{Z2^-Tsa{2df$`ImfZJ%D%AkGhhMuh3utj7gNA z1^nNw^nX?=(!*+A70rT1Ruce?6*LX@&hj{t(eNQ?)XU33@(@513J67ZvtS;zx5;I- zj#5navu4ZTaw|Is>>H1YUJr!O?!m%ik!jrZVAzKgAUfM^gL#s#Yw@gJa`nHa<`jDi zeBE2o=n-z_eWG`D_Vg)Fie1a!{$ALZP?_C_wDadB269b*u1zHQ3h zWesSG)vnMt>x0UPi12=BBo0QezEGomY062tsM(sYeaa>eoPS9vplzZTU$p~W8j9+X z*BN#v6tB8U2PbdVCBjOiD$HZjH3h+Ztf+`6tNc-rn8R8p;p3|ylfwpP+NWGrAM9;D zC)e+M=^RD^7i}94`)m|X>>nu*J&h% z))d)o3nc8|o+GHGTZ1RBVp5$SC9cMaAjV*lvN^bQwmI`9N4E#Hg3>@odp~c3|G2xw zG1ddsUz`2TuRL+dWz89H3dN0Fm$YWU^$c`g-n@KziQ_ydkosPZ(C_bYaJu)+lhY=4ei~coKD6{o^NqNtK_{|DKw>@2gdr7l z9=7d`#k)1IOWrHlF4H*7dM@0QW@#;n6*f2dxaVwG8TcMeb{z$qTgAT0xnCYQh;w0r z7M|RwavpUBxe`xz2#`879#Yn<%-n@fX20sbnq}xMD!iYmX6r!f=p>24??3~sm*AMh z)$%MA{-&pQBF!sgAStT?VM<#Q;lBl`ZaswYK4D{l>INrJ-@qQxt2Iwczip}zJ#!8h z8&Dr;F+*AwxAAUk01%5w`|cW(yeE>E|KF2(f4aH=Z_*`mYeWL zGr(XH`(eM5e+VjWE!X6mZ#)X-ytP8qd3F?4S0gF(XDnHlcAQYL_Q~jOkx07SuQmca$llS(`wq6U*pd;biAo z?hd#9-RyoQZz|=xcTeEXKZ$JHzF8k2F+$vUJD*YFScJ8J%*Y0%QZ?|5MlLoli%U#p zyotL{#sv+yTS*dfnMjm!DBXLL2Z-IstD5X(qVf3W>i8(sv#{A3`Q#Zzb*b(~WDvBi zj#++k?;*STsI^%mrQ9Cvebx%g!sU{WS9?pBVj<9LOG}oIKtLLR067m7Lh`c+f&I}+ z`Db?EKU6^fmrjj1Ahx==a7{u-^8&CF#y`Zmz`*Ql#&tmQ8AZ9o3hXj4({YD5sUZQ( zbR;Mc4tTFbKIZu;0s9IFbd3vs&SzkN)BQsk_7(OMgZ>z&Ev~3RyLp}AW{UbLv-n2&-WBpKi8HwG~8&}RH8_WOYPQ510F!Vg-^;+<_aju z)v?Y-mjmQ__ei@rG{XR;L5&cvO;G(gX@LT!MIFuzeW>!=F#p;T*htOEtoq({e;q9$ z33L?Ny1Xd>fvws#fB5uR|AUo6{|z4|r5l#q*>#pkdUTG)gvbVb_>u$j{)Oq*KkrhP z)&p(n?Taxss&PtnnXDTke~~I^Fp+uz z%^@!++6=atRIASmmRv=DU-rJBb_MR_gu_U^0kknODh4*D!S4p#gzr9(+<>o2)w7h; zW%pos(bFuYPn#Q!0v!;M++nV9RtRl|e6m)`jE9>8EF$F4z! zgfI%4o;{?6Fw)d3j!2-Q{icNgDRJpD+M0mS$n-vF@_TI<;SsKVmz*+;YO4Kr>~4F` z|DhhOKF6Ui{%Ja+3N9DTa2hv}X<9(-(s-)!5eqe>xI#EjRF<1tiQY$u^x;A*jieWN13~Yqf0*+T6Ug z#rYwDjV^F=xV7V(4vd<E(aV7yiE0m==b*7RJiSw!3>1%r3L?9`gIzZQ?dkkpkMFH0bVuyHvxH|1+fH1r=^kcxQ-Eg107lL({M4TQyrX};QRL57oOYJfea8{x#5(*o z8C|Rr5bsp5Q0ZmPSEb4GZV~@VJ7{Mi`6c-$=5Slv&1U_IgAfL;o zg{UhgNDX_u{C+;O(xe1&i);RSa61FG5%?DrF{u{{g43L8no#v?P7a>Bc-sxOw?36jb8g&=TSh-DQEzDFUZ@V5TFl?CXC-p zKSoe;`vzYF6ekTssh3*OQ%{FRUzQE?uYPw@-D((j8%Qp(YxRS`tu72Yo#V!hG0rhp zZRVjC>PMdnK)wMp68H5U0{Z3Q7kPs06g2E9s}-&0u=+)2B0t@@(P9FO`5RDiMFZEG z4Bs$cZQtOVH$14c{E+iL?6Ge6Y51q%e$CB66WLn1#OufleZl_GL zkL<2Rjtw#-7C)lZCk|?*DFaN{KW4FBlvcD%z#^8fbp!8$9v{c&Ti zKxiZUyZNcjN~cU9{&);Hi#-b^`7M``nHkcbf^a-oQT-l-L1JREOBhpzo1BAd;422t zYOaCX9|9shkvyAK`Ja#MMQuVibhG-O#$*4Iq`x6b(l;GOT$9vuBP(%Q?pHaKT&1+z zv==N#b9Jg-H*#7hjD%b~q2>TaYl!Fd?h)|h|3+^v>Kbu6RXJb$E9ZmBo;Nd+PQZTO zKmzT}6!L_d?sXxvfbS(bzH|8*U0nY+qsy;c@qg9!QFGT9zJ9o!=W6{OXi)yW?9X|? z?Krh}wCeM4-`)%mI9FZ-a9er?XA;jnI%(5P^0Nw&53x%Uzw@M1U7@dwFS^je2r}d& zekPkUNiFSZDHE~O7dxF;8Q0AQGFAb~hX>?9n}63Wvo7^4J?(?$4l4u6;RDPCMsBfy zi--kg^=(UVTO&K#?Q`bErSBCfPa29_8!w%VX}iZQJh77zM-H(F!@+N4KVxVT^p51$ zZl_=?5|;Fz-aG6&UR^N@lZ46egG|YRTQF(>MCzx|V@tA4kIu`a-_sW|h1Oe;hMhF5 z7`h!>1w-J_-wLGf?`Pj$(ZN1#e(Ex09)5x4+^!J=+rT=q_By+b6@7dN^57t{K4BTsNa#(aL3`KL@C>=qtY3^AF7O;~t3Q;jB~W z-^E*YR>N(hyOCP81YZGPIXUUy4D^-r5h@et)nYFMR^_O0(d+88*LdqBa=wB*z7Tl%bidCSP($cD9$^-DJn+tQ)CYa! zW;(X9v*JJZINh7JioW=8rFnm~_TEI!IiF!4xK+>Snb({B?Gug4BJ-A`U`zuB;$t|q zb3q>||IK)P$KWpOiShAV|2W=x_p_t}DoD~g9C0~y;N!02d2X$ouP;`kn#n_mte1E) z4R__4Qy|?xv{oIR;1Gbk{_pSK`IXH6?@dPCyTs`XnAJ`@Fj1jfP~$kl2l@~@GVDJC zYh2HG<^Gx2aO=gB5c8tlyHA|k2XhG)qM>K*<^OAq@N4P7{BLIT5*?Jox)RH)Ti%&t z8H5FZali!=0D?rsjg;v0rr)xkpYKkt)wMLgHMNo}Y^gjzW$w`W zW~`q_jX02P77Yl(7Nv|wIX!_ic$L6%ff!2d@_{4>yz@p1yN(t_!QJ2_z!YXJW~v#r zNKVad$z-(6IoyANUS71jQQ1Tipu1HU%`MjNz5ehrkk+Fnfq^)mc=-+ZpGV}nfkAYe zU*@S7fT46x?Aq5J4-HnL5?=43wAC4I@Q-<5yP}Bl$Ysn+Qi}6k6E)7Zqi-Kod(7Qq zxuXv=bu>`-4n8RB8YWM)OwRe5!?&KMb6^0W#|if3p3Jbv>&?DxFFYB4b)ad4&ADif!D|__&uz zXpU-`2|QdHZQ(ofFtl@UM>1{|Rx?5o$)-#Y(7zr<7!-v&&2QcF&98dwC@ zm{AWsN&?;wpn|iI2lGrWnI}xJuhUrIFf+dOPrsd`6bpjZDFmRuKx%&uq+|)-!Z7oQ zxjWP`OH76Q(=vlP2!G5%*8=YZ@c8@WbIAVDj2Ytr0-& zk3!rnMwD(l5ify(KSxzP3c2686*n>c2iZ^#PZy+etgQ_eQ!qba=vr|ly%JSk6)Frkj4cNkJ=61Q$;9PnS3sxe_EFir5YmW(64 zrz)E-)(4>~W&*!j?;6WAGtllB8{B(4(0NWec%<$lZh(A}yBf3ZHA0x+XTMnU1LXmL zU0+Eoc5R}j7q-puw=x2PNBTV?rvK#J%>PrzwMR8^XJO8|D@Chfvq)>f2vI4ZqDuuS zXcQ42h}l+wB9h<&Qgk6_>%Rgi=L0TrVL7%2&0 zAq4UuOdc~k@!)CCp4~rZ{+K&+fA=x>-tT@MSxs7EUi_hl(YU6epsHJwy7S3C@ygoe zOTGWS-SUrHhuhDO_h<{&B!=|uoNL=~{NkTSc>FoZM)&0B|W&Rh~L0if1UR_nkY_5zW+V5 z`|$=FG4Qw!d_?Lv;%lk2reS4^(~lcroLz&sUH&c&18n^EvIAqOh{7anBq9-j2!L@0 z5k`2!M>^5+&gMhNti8?yMQXgnGH?(~pRMBA3LMB=l}3i<E2NkG3 zld97;{c>|$-jg;sIYcus4}qbX0c0gOcq4BL`F^Z}{11GJ(S$Sz6;Fp$hZtuqT~VKV!SB>Fj5h zVgccfArH1pzmU{n6_{gQ|MoTYrW(*%VjE2(6G(tFK?yH{VYPY^BzcF3tQ+sT~mTt$gDr~uPz&aJiF#z$lWFuW)(e2`1riW=*fYU(hO9WvL% zm5DBAR`M{`8NIqESpE%U*+ln?*7)M~Z*ENVcP7t=i-royr#*9yW)2xmvEhDRDY9iN zuw~qS&O6g9V%hugZO7Px(e-*#D8&!YFrT85W@21C5bokX3YUEG`-%X5WiK-`h-ndD zl01~f)}sUTQ1P{#V1E+u7Sv zYQj8Jak;rQIr5VO+P%z`Yck0((^hp)t9bObkkR$skw%H})eybNxndulRsGIv`;_hq zog4hC+OU3A zh_w{_(#4DPp-&k+PNZCDL+#6iDN6{A#m4Z$gpQf~V*HvmWpr|E?4Bh-()U+*L)KyQ zyA$BSFR~n}-%wdk8(%?;6X_2}PEnke*KkO{WU?S}r}-dU#DPB1H*lpaG?&uPl*Vm3Zp`fX z)c(ATm6RoI_D0$pLANt=?(A#$aQ3Xbrhnj0DoRCecB4wv56B3YQdY0{YAwt|k6ajL zGY#Osjy2{+0H-6(qJ-d}{bjBZi-#|LG*TPgo+B}MVjZ6(c-Dtux2P8-MC?RQ!7uB{ zezZ=x#-I1o=XLhi$3*jAyUWJ{Z1?YF|RRT+9Q1xXb_1?BwJ)-upCK&c_<=p0*1dTM*&`?}f#@L;jI z?~Nf&mUz9fxSDSr?ZCQrk!{-yJydqpf`W!wteaM6y&{3)tw_0}X;8(=NW)uwiXi#} z<@KwMD6O3&`-}r`xC}3~JA3zqd+`K(pqKiZXXsRZ!!HwKJx}a9bf~ag{FsHpM7fYW z_a`g$+&s?KvORZZts|G%=5b=wbf3uN+SD0nRBziGrG^U4qtf0-p<=N%Pjmoo2;&A$ zK9_OOQJ^~W{s;Ovo-IWqOg2Ivg;*qJSumi9QhihoG`R7f6wATVQr%}(iO{d|O1*-1fYB10Cx%2`O|Af*l2scJ2iOGO`3 zrS*{QWXOr%bt}NR2gktlnHU54ZED1FRx*VLPcMgGDZsG@EoKd=+u|?kL?$pgKLtSE zjC4?r&cSsSJy%oi;>Q`Hk3TDP%~I?zzsnVrY07;UMr__}DPFj?1xRP{r literal 17594 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 Lslke5pTGY<(VfB- diff --git a/ProgramScreenshots/SettingsTwitterUser.png b/ProgramScreenshots/SettingsTwitterUser.png index af6ec99d27110ed7d31695d86406ffef6366f3e7..5389e0a266a778744179ff2d15d717456ef4869a 100644 GIT binary patch literal 11948 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 literal 10176 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 diff --git a/ProgramScreenshots/TrayContextMenu.png b/ProgramScreenshots/TrayContextMenu.png index 4b7e67c699e06692c7dcbcdb2267ded7978cb8fb..5ce971260af0a435906cb0006fdb57480fac1b2d 100644 GIT binary patch literal 5328 zcmZu#cTiL9@htol3WD#@X6ffz!_$m&w*&KxL7K8?4or5_m?J@yZ-^mvsy zk&&@DL$x8ML3W!3bZKT^UOn5&)f?Mo%E+mtt@!cYf>(#dUF%D~r)XfJ`ztXG$5v!) zIazPlN@vz@2bLH8K;YFib{*com)^X1{YlS>!ifxWrH))*+aw<1#Fzt?3AFp35qY}h zcQQjz3;(Wq1f6?z`5@f;B;aHwwEbtQGVZ8bPfzdJ9S?ztxj6<32bsF|cD0qw&4ZQI z)twar;c#VbZI`%^Eb;oohm6tT;m@vKUhz#$az^g%B3+9d%9aV@_l-4y zv#|Vudwc92&sz*zh_R)A_xQEVxR9O&3ER$%)6DZyKy)=}=!@Nt5vWK~$r}wHofv5|*aM{CUpDyPc-yxL5^=P4M*NNF?MSVN67KQ{lWJgk zifh}lH&(~l%+qePF=uVGTFesX{KYQU#=M#_;MEAip%L{N_c7lXqv+cbg`+l>)KZGG zEZojxsS|h1z35KctIrcCylq!1O2?2ltMYB_uR$KG<{(@0^yP+X^S>oMiH-th8Rvs)?=s=|I%t4JG6a9mXL*C( z^ep49CUq&G#oC57XOG9DXs`LBvp4Ewh+aotwcA##f_hG^*ch0`C-qfm_ zES78$^|X@G2P~&8{>qA-lVwVE-Y2NNL|f#_e`Z?#Yc0LVT-s#Gd%Lmhz;#&{LzsCs z>G0>=M@%oKL0@O%k16myg08}m0mbUc%&h`2IIr;2#S`|MpA`(WAg<48()Bg@OG-jw zZh$gPHIfSxM=7Ct77YIbsU~pVhe~NE?Is$e|5%xckQRcu^^+RZP$XM3yX+=;Y|y~r z!)#P9`aal3U_v{@DFkaAF9~uLnBp&Q`y|hZ@UL~S3`~_DZE&+||2BQYob|}9VlZ48 zSg;q0rJ4KNrP-#-Hs1|5q8B7qRaPn5c^3e&Q1H>K)Ha^kzXSc{Nadb*^Hyw3SbhbK zXs=+)FW}~a|L%Kh*`;+olp+F*c_eQ@tcAhZnj3vQ8^Rn*9IN;jbDH23nUm|+#Y$s? zac&|jPo83Bou`VkWo$ou)nAzs5sGfsP+RTP@u5!d%N77UFrsq-m9OR|-Vx1HsQb|d zjv3tqqrG^OBPw446n(i>D@(t{WR7BkDg%#xzj@Yyk++p$(teFns((?_ae!{HUn6Kq=?ODNHs3#vqA2OW0a^w4 zp(ZdJ8%;WcgfM1HxFrmM{0dIzzv(*yR|U>#BUs)Xpt@G0K>U^Q|Aii~>++7mla;TU&2Nvi3IfoH_}#3ADL(al@fJJ3WA zfS~K?i6voBzP6`4Vx>IdwiWB#J8D;;4Adtxy+J7y`ZjZGvuBln%cwU z{li51xKcI03kGG3}d3{N94}a$Ch%#%D+?F?H=dKFz0f2bkiIi zL9mzC_j;Ee86@pMFq+Yeq%Mw1`(1-d-KB`6SeOLv%FSR+^jct;%BH2ZW z89%Gyzr=4&fM}B*Ld|CeD7)^51xuy6M>+~H1a8*M;|W)92e&-gl&!IOgkX*-nkQU5 z*MA-GB@%M>3u8fK<__HbW-@f~NT{JYzZW~z+0>z!eMw`6|A7qCk;1E(Hys<<-fj!O$kfkiuce0a6kWIF*#JTl^8uo+%7Bd> zWwPo^Ed`|&~bmacz5J@HWp*t+{j>c;-up5tRLH&PPiKSUy%UsK&u zG@hlAj1>Mf5>GZeN9DbEtio+QwgJs0ih)y_o>jeT8%|vQFP&f(+;axV8ER_o3#_(xD3s_B=OrL|e zUJyaQJ_Pa3wj`5v=hI0p3Op10MRs3}Lg6IQ?}d-!cc0ys<5O@LSOyv_;xKp;7cKnDA8FN78AH?g;sQ`xa}BzE>5;e1{a)W7xd zR)S5s4LnRVf^q(EOR0zW$?*mD+V9V8KM=Bd`fCA=5$W0$tiz*FWIx~F1amOD_&tshxdMraA{KcKI)=B+&M+IoF`|9g*#&BQ4%ZM@D za?*CSp2>Z4Cd#CwO+58Jv>lRYPU52YTDD_$U^i*{U~N8AcJ?f-9RGpo%aOjxT{4 zm`Jg>Oe1ouwYCVEc%3Q9*gpr=&9LXi^V|O@Q$lfDN;o-V*Xalw7Ntu{g$q%=sTfOm z3@ID47)6DmN$Dt;W(v33H^}$Yg?EPhH-Jzjk6on%+;%H=T`)f7DA`3R?*v#`3xR`UWoba#{SbUcL<`d*^IvHrJnG8NQKg!F1> zM;V)sO_bsxu{0-E;4`c}8vo+*!kruBOi`USCnAobT6QfO4R^UkY^qq?v#aH7@-r28EW0MPrDxVhjL5pLSQIp>7{JQ5cnGkP<%%&G zDMGekA8onwK3xwlqQeETAkdtmm<;>#^zG+jrcL(b8JO2UC7_9^+BS*pu2mL9KtAYr#lL>7gUGq*{(& z3J|m9t?;?M;>2b#RY@l?08+}y@ET9HT}#82@76)r+wWff)$%*`!PEyAhK7cQC0)3D zN?&o4f*oCwD?u)Uc0zjR*5Xnl9+v&YQKW!M#!+;&hGxed9S~=7kgc^~b zbdJr+Q5SyB64#xh?CQ~6;#N%YUZS4Q=nBs{zelujL|j<0A!~4CJtM73dpSm{bwH~`w?buT>jo<3C z&Ut;XJ?`Q@ztKbAshaoGVb@Rj4H~Uf`XRK2auho~u#7`b46v~!SDPUx2PHaBd^A+2 zl4x%Qx3#|Lz@)bCAz?HH3iz0^$HOM<==afdCkJe6^Jgw@^OeEZ@J*8`otefw(c!0u zK2m;risg7JUn%mDo37U#idcLt^yw@8~ zPoirsTUo#7MN)jvwWj1Ntcnt0lf`~7P;O25k%t4s6rm762|{(OyLrJg8GZG*n(wm= zm*|EYa!;lyUcP*3c|o0Y=ZvHbS{=U8uw%{`&lV(Xw>#Hvc%Kn{tSEJsV!tAa(=PW7 zRAh$3eizQVZq8=B9 z!#0df>h_EWO1dK+%!01^ek%O+!16X*3tk3!uDLr4d4{_1idxbFKdr;k#b!i{))oHL zCR>Y*aP#&6ZMOUABe=Ib$Vsgf`TRjlli=J{9qljD(DbhMr)C_iU@J>C&&-~R6E?+` zs31p!<*BoC*aBz0if8ye1H}8u`OCklp%!iQb9rghSWT$y%tTM?&h*PHtV+?eQpw>t z?0S(xNcg*;O%9|(Qbc&}3Y^Xe)ME#|)uto;y(xf(9CYC1bgZgqX{RG>Xpv%9BxHw) zgF(mF`QX_4L_pp^=-&#s_R-GOk(K%tT(~CfY?V8%ZTB3OGdEekdhlu?y5{p7F0cEC zwrOR)!ZAk2l3FV#S*Z8hv372uJk#$H+Rv){Ck8uK+-gQot9hr7G+JG?;gtk}9|OQ} z^&QP^8l)^2tuefqQBp6LhD2;n!Vn~7*eUnlT>6i1gh9RAy5yz4qNFJ%aW{{Au)fPW&C|&w{R6 zmbXmj0(rvZLgh>^51YMTqbQW*JYc)~RrU;GGA^2XS`3h%m6kA>0O2u}Lw0|!Y19&5 zf&qzE)_42xqpPF%uMMu=XZU#h)cFziS|su6zUhOI;9QsfXA`Y{Z(c&DPcUs)JtL+l&kL^ire0ng!FseSTbH>NK50L({Xmt=6UJzj^Qns3 z-PPJs#7gn0sA#?{&3n5LsG|9aX#6JD5ytFyOO28vC`_m_M79m!#If|a=M(H z3jOhxO%($Ky&O5%Xw#$r_{#b&Ln;r$K?YcBv>;G(4=FU{J88>Uq`etJvxV*c9D_JEfrHoN2cflC49 z&zhDfI&|dD!iHf^kcbioea?tNF3Ph)B#x4%bsQhXRJQEPZY(6fIh(L{=s7$7Q84^gdzLsFBPztbPL6ghdHcr6zuc65n8GEP)xfg) z7q16jE2`t-?pR@9A@DKRqTt&{L~jL!(5G4G;A~SXxYq2|x3;c0*1yt+UIMB_dce{S zx1S>p%}q5#01Xje(_&sP=U)YjV_wi%1$5uqmhX;`qfn4_N!jun+lM+Ba0ry&_RNva z@5^D#MiVvpVDS8plZBz4ny`u72X%F;R1;q&!?r?eQ)$rAbvK+pp175Xi`_WyGu3-& zF4o2DV<36CF*}Ak<<~YTU>*NvY#Zj_fNXd&EnCK;WXj|}7%=%cOs+5Tw7hhFsQ=aW zMFP_{E5IMHc%z$83{XMaAQ~Yr+SZ zkd5!gJsw@k0`@NpBMXfYX=|1r9&Tlt`$8tAk1U61u@wR(9nw-IBE{22hP2M0BSsxD{x%w8s?#_>npFQe7xLM1qzeUF~}Sm?XY_=-`%r!zH^zQ*DT zPX`g`?>V!g&((G#U0{Afx+`UMIH*He5yUq;Vz)7AG(0uj%`t` zrjryl3NR$vtGR5Jy!F5kDq2kcQ{FkkkJ2VtYPQ_#;PK31)FfEl{-{OPq_k~OBfkgm z;Z7)p`Wpn0v`FxG`mX>=#^nW(3!M<%bGzWU9V<@Az(L>6?p@3z(2l1>O|gh;ft7=Mg-)zugiaD+byc1E7;`+A;eaAnXR;)>Tc)C@T8 z!Oo>2lM8y_k$$ma&Zj8_&`g`|E7m^T5~)Qu25W{S^^{fuldXP|uad`0Np`oABpFo4NV{6|VbuQt2m(SB literal 4399 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 XyVxg4QrF2R2b~!VZd7A%EB3ztx}kRJ diff --git a/ProgramScreenshots/UserDefaultQueryOptions.png b/ProgramScreenshots/UserDefaultQueryOptions.png new file mode 100644 index 0000000000000000000000000000000000000000..ab33df8e42f43dbbadec2f5cf08d575a7cc7cfe0 GIT binary patch literal 3921 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 literal 0 HcmV?d00001 diff --git a/README.md b/README.md index e9efeec..d1ca639 100644 --- a/README.md +++ b/README.md @@ -40,20 +40,21 @@ A program to download photo and video from [any site](#supported-sites) (e.g. Yo - Pinterest boards, users, saved posts; - Imgur images, galleries and videos; - Gfycat videos; - - PornHub images, videos, save (liked) posts; - - XHamster images, videos, saved posts; - - XVIDEOS videos, saved posts; - - ThisVid images, videos, saved posts; + - PornHub images, videos, save (liked) posts, search queries, search categories; + - XHamster images, videos, saved posts, search queries, search categories, search tags; + - XVIDEOS videos, saved posts, search queries, search categories; + - ThisVid images, videos, saved posts, search queries, search categories, search tags; - [Other](#supported-sites) supported sites -- Parse [channel and view data](https://github.com/AAndyProgram/SCrawler/wiki/Channels) -- Download [saved Reddit, Twitter and Instagram posts](https://github.com/AAndyProgram/SCrawler/wiki/Home#saved-posts) +- Parse [Reddit channel and view data](https://github.com/AAndyProgram/SCrawler/wiki/Channels) +- Download [saved posts](https://github.com/AAndyProgram/SCrawler/wiki/Home#saved-posts) - Add users from parsed channel - **Advanced user management** - **Automation** ([downloading data automatically](https://github.com/AAndyProgram/SCrawler/wiki/Settings#automation) every ```X``` minutes) -- **Feed** ([feed](https://github.com/AAndyProgram/SCrawler/wiki#feed) of downloaded media files) +- **Feed** ([feed](https://github.com/AAndyProgram/SCrawler/wiki#feed) of downloaded media files and subscriptions posts) - Labeling users - Create [download groups](https://github.com/AAndyProgram/SCrawler/wiki/Settings#download-groups) - Adding users to favorites and temporary +- Adding users and search queries in the **Subscription** mode (download post preview, but do not download the media file) - [Filter exists users](https://github.com/AAndyProgram/SCrawler/wiki#view) by label or group - Selection of media types you want to download (images only, videos only, both) - [Download a special video](https://github.com/AAndyProgram/SCrawler/wiki#download-separate-video), image or gallery @@ -71,7 +72,7 @@ A program to download photo and video from [any site](#supported-sites) (e.g. Yo - **OnlyFans** - **Mastodon** - **Instagram** -- TikTok (*currently broken*; [limited](https://github.com/AAndyProgram/SCrawler/wiki/Settings#tiktok-limits)) +- TikTok - RedGifs - Pinterest - Imgur @@ -193,6 +194,8 @@ F5-->[*] # Contact me +[e-mail](mailto:andyprogram@proton.me): andyprogram@proton.me + Matrix (Element): https://matrix.to/#/@andyprogram:matrix.org Discord (contact the developer): andyprogram diff --git a/SCrawler.PluginProvider/Attributes/Attributes.vb b/SCrawler.PluginProvider/Attributes/Attributes.vb index 0dd2c6a..371d5e2 100644 --- a/SCrawler.PluginProvider/Attributes/Attributes.vb +++ b/SCrawler.PluginProvider/Attributes/Attributes.vb @@ -44,6 +44,16 @@ Namespace Plugin.Attributes Name = PropertyName End Sub End Class + '''