From b43adb740625f76304423a6c4e563a290981c07a Mon Sep 17 00:00:00 2001 From: Matt Montgomery <33811686+ConfusedPolarBear@users.noreply.github.com> Date: Sat, 11 Apr 2020 16:24:40 -0500 Subject: [PATCH 001/365] Add quick connect --- src/controllers/auth/login.js | 48 ++++++++++++++++++++++++ src/libraries/apiclient/apiclientcore.js | 23 +++++++++++- src/login.html | 4 ++ 3 files changed, 74 insertions(+), 1 deletion(-) diff --git a/src/controllers/auth/login.js b/src/controllers/auth/login.js index 4296b8bfb3..746384a64c 100644 --- a/src/controllers/auth/login.js +++ b/src/controllers/auth/login.js @@ -150,6 +150,53 @@ define(["apphost", "appSettings", "dom", "connectionManager", "loading", "layout }); } + function loginQuickConnect() { + var apiClient = getApiClient(); + var identifier = "" + var interval = 0; + var friendlyName = "test"; + $.get('/QuickConnect/Initiate?FriendlyName=' + friendlyName).then(json => { + if (!json.Secret || !json.Code) { + Dashboard.alert({ + message: json.Error, + title: "Error" + }); + return; + } + + Dashboard.alert({ + message: "Authorize request " + json.Code + " to continue", + title: "Quick Connect Code" + }); + + loading.show(); + + identifier = json.Secret; + interval = setInterval(() => { + $.get('/QuickConnect/Connect?Secret=' + identifier).then(x => { + if(x.Authenticated) { + apiClient.quickConnect(x.Authentication).then((result) => { + var user = result.User; + var serverId = getParameterByName("serverid"); + var newUrl; + + if (user.Policy.IsAdministrator && !serverId) { + newUrl = "dashboard.html"; + } else { + newUrl = "home.html"; + } + + loading.hide(); + Dashboard.onServerChanged(user.Id, result.AccessToken, apiClient); + Dashboard.navigate(newUrl); + clearInterval(interval); + }); + } + }); + }, 5000); + }); + } + view.querySelector("#divUsers").addEventListener("click", function (e) { var card = dom.parentWithClass(e.target, "card"); var cardContent = card ? card.querySelector(".cardContent") : null; @@ -183,6 +230,7 @@ define(["apphost", "appSettings", "dom", "connectionManager", "loading", "layout Dashboard.navigate("forgotpassword.html"); }); view.querySelector(".btnCancel").addEventListener("click", showVisualForm); + view.querySelector(".btnQuick").addEventListener("click", loginQuickConnect); view.querySelector(".btnManual").addEventListener("click", function () { view.querySelector("#txtManualName").value = ""; showManualForm(view, true); diff --git a/src/libraries/apiclient/apiclientcore.js b/src/libraries/apiclient/apiclientcore.js index 557a4e1033..80be946a60 100644 --- a/src/libraries/apiclient/apiclientcore.js +++ b/src/libraries/apiclient/apiclientcore.js @@ -356,7 +356,28 @@ define(["events", "appStorage"], function(events, appStorage) { instance.onAuthenticated ? instance.onAuthenticated(instance, result).then(afterOnAuthenticated) : afterOnAuthenticated() }, reject) }) - }, ApiClient.prototype.ensureWebSocket = function() { + }, ApiClient.prototype.quickConnect = function (token) { + if (!token) return Promise.reject(); + var url = this.getUrl("Users/AuthenticateWithQuickConnect"), + instance = this; + return new Promise(function(resolve, reject) { + var postData = { + Token: token + }; + instance.ajax({ + type: "POST", + url: url, + data: JSON.stringify(postData), + dataType: "json", + contentType: "application/json" + }).then(function(result) { + var afterOnAuthenticated = function() { + redetectBitrate(instance), resolve(result) + }; + instance.onAuthenticated ? instance.onAuthenticated(instance, result).then(afterOnAuthenticated) : afterOnAuthenticated() + }, reject) + }) + }, ApiClient.prototype.ensureWebSocket = function() { if (!this.isWebSocketOpenOrConnecting() && this.isWebSocketSupported()) try { this.openWebSocket() } catch (err) { diff --git a/src/login.html b/src/login.html index 8e48901c11..343b85906e 100644 --- a/src/login.html +++ b/src/login.html @@ -42,6 +42,10 @@ + + + + Incoming login requests: +
+ +
+ diff --git a/src/quickconnect.html b/src/quickconnect.html new file mode 100644 index 0000000000..770796a10e --- /dev/null +++ b/src/quickconnect.html @@ -0,0 +1,29 @@ +
+
+
+
+
+

Quick Connect

+
+
+ + Quick connect is: Failed to load status + +
+ + +
If unchecked, users will have to click the Activate button in their profile before initiating a quick connect login.
+
+ + +
+
+
\ No newline at end of file diff --git a/src/scripts/librarymenu.js b/src/scripts/librarymenu.js index 11c89b01da..930df8be49 100644 --- a/src/scripts/librarymenu.js +++ b/src/scripts/librarymenu.js @@ -349,6 +349,12 @@ define(["dom", "layoutManager", "inputManager", "connectionManager", "events", " href: "devices.html", pageIds: ["devicesPage", "devicePage"], icon: "devices" + }); + links.push({ + name: "Quick Connect", + href: "quickconnect.html", + pageIds: ["quickConnectPage", "quickConnectPage"], + icon: "devices" }); links.push({ name: globalize.translate("HeaderActivity"), diff --git a/src/scripts/routes.js b/src/scripts/routes.js index 9c3db58a7f..1520e96632 100644 --- a/src/scripts/routes.js +++ b/src/scripts/routes.js @@ -72,6 +72,12 @@ define([ transition: "fade", controller: "user/subtitles" }); + defineRoute({ + path: "/mypreferencesquickconnect.html", + autoFocus: false, + transition: "fade", + controller: "user/quickconnect" + }); defineRoute({ path: "/dashboard.html", @@ -103,6 +109,12 @@ define([ roles: "admin", controller: "device" }); + defineRoute({ + path: "/quickconnect.html", + autoFocus: false, + roles: "admin", + controller: "quickconnect" + }); defineRoute({ path: "/dlnaprofile.html", autoFocus: false, diff --git a/src/scripts/site.js b/src/scripts/site.js index 3b992eaf2b..311478c019 100644 --- a/src/scripts/site.js +++ b/src/scripts/site.js @@ -829,6 +829,7 @@ var AppInfo = {}; define("displaySettings", [componentsPath + "/displaysettings/displaysettings"], returnFirstDependency); define("playbackSettings", [componentsPath + "/playbacksettings/playbacksettings"], returnFirstDependency); define("homescreenSettings", [componentsPath + "/homescreensettings/homescreensettings"], returnFirstDependency); + define("quickConnectSettings", [componentsPath + "/quickconnectsettings/quickconnectsettings"], returnFirstDependency); define("playbackManager", [componentsPath + "/playback/playbackmanager"], getPlaybackManager); define("layoutManager", [componentsPath + "/layoutManager", "apphost"], getLayoutManager); define("homeSections", [componentsPath + "/homesections/homesections"], returnFirstDependency); From fdfdcd60fe3d7a66cfc334f0692978fc3bb8e27c Mon Sep 17 00:00:00 2001 From: Matt Montgomery <33811686+ConfusedPolarBear@users.noreply.github.com> Date: Mon, 13 Apr 2020 16:23:16 -0500 Subject: [PATCH 003/365] Switch off of jQuery --- CONTRIBUTORS.md | 1 + .../quickconnectsettings/quickconnectsettings.js | 8 +++++--- src/controllers/auth/login.js | 12 ++++++------ src/controllers/quickconnect.js | 16 +++++++++------- src/controllers/user/menu.js | 2 +- src/controllers/user/quickconnect.js | 9 +++++++++ src/mypreferencesquickconnect.html | 6 +++--- src/quickconnect.html | 2 +- 8 files changed, 35 insertions(+), 21 deletions(-) diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md index aa3ec707e3..ffbf054829 100644 --- a/CONTRIBUTORS.md +++ b/CONTRIBUTORS.md @@ -34,6 +34,7 @@ - [Ryan Hartzell](https://github.com/ryan-hartzell) - [Thibault Nocchi](https://github.com/ThibaultNocchi) - [MrTimscampi](https://github.com/MrTimscampi) + - [ConfusedPolarBear](https://github.com/ConfusedPolarBear) # Emby Contributors diff --git a/src/components/quickconnectsettings/quickconnectsettings.js b/src/components/quickconnectsettings/quickconnectsettings.js index a30db441e6..ed7985dcfa 100644 --- a/src/components/quickconnectsettings/quickconnectsettings.js +++ b/src/components/quickconnectsettings/quickconnectsettings.js @@ -15,12 +15,14 @@ define(['require', 'apphost', 'layoutManager', 'focusManager', 'globalize', 'loa } function list(apiClient) { - var elem = $("#quickConnectIncoming"); - elem.html(""); + console.debug("getting json"); apiClient.getJSON("/QuickConnect/List").then(json => { - console.debug("raw json", json); + var elem = $("#quickConnectIncoming"); + elem.html(""); + console.debug("raw json", json, "length is", json.length); for(var i = 0; i < json.length; i++) { var current = json[i]; + console.debug("current is", current); var html = "
  • " + current.Code + " - " + current.FriendlyName + " - "; if(!current.Authenticated) { diff --git a/src/controllers/auth/login.js b/src/controllers/auth/login.js index f5dc9b487b..845ae9a38f 100644 --- a/src/controllers/auth/login.js +++ b/src/controllers/auth/login.js @@ -153,10 +153,10 @@ define(["apphost", "appSettings", "dom", "connectionManager", "loading", "layout function loginQuickConnect() { var apiClient = getApiClient(); var friendlyName = "test"; - - var url = apiClient.getUrl("/QuickConnect/Initiate?FriendlyName=" + friendlyName); - apiClient.getJSON(url) - .then(json => { + + var url = apiClient.getUrl("/QuickConnect/Initiate?FriendlyName=" + friendlyName); + apiClient.getJSON(url) + .then(json => { if (!json.Secret || !json.Code) { Dashboard.alert({ message: json.Error, @@ -173,9 +173,9 @@ define(["apphost", "appSettings", "dom", "connectionManager", "loading", "layout loading.show(); var interval = setInterval(() => { - var url = apiClient.getUrl('/QuickConnect/Connect?Secret=' + json.Secret); + var url = apiClient.getUrl('/QuickConnect/Connect?Secret=' + json.Secret); apiClient.getJSON(url) - .then(data => { + .then(data => { if(data.Authenticated) { apiClient.quickConnect(data.Authentication).then((result) => { var user = result.User; diff --git a/src/controllers/quickconnect.js b/src/controllers/quickconnect.js index e3d1f76054..5c3c8f9a18 100644 --- a/src/controllers/quickconnect.js +++ b/src/controllers/quickconnect.js @@ -2,13 +2,15 @@ define(["jQuery", "loading", "libraryMenu", "fnchecked"], function ($, loading, "use strict"; function loadPage(page, status) { + console.debug("status is \"" + status + "\""); + var active = (status == "Active"); var available = (status == "Available") || active; - - $("#quickConnectStatus").text(status.toLocaleLowerCase()); - $("#chkQuickConnectAvailable").checked(available); - $("#chkQuickConnectActive").checked(active); - + + page.querySelector("#quickConnectStatus").textContent = status.toLocaleLowerCase(); + page.querySelector("#chkQuickConnectAvailable").checked = available; + page.querySelector("#chkQuickConnectActive").checked = active; + loading.hide(); } @@ -44,8 +46,8 @@ define(["jQuery", "loading", "libraryMenu", "fnchecked"], function ($, loading, } $(document).on("pageinit", "#quickConnectPage", function () { - $("#quickConnectPage").off("submit", onSubmit).on("submit", onSubmit); - $("#btnQuickConnectSubmit").click(onSubmit); + document.querySelector("#quickConnectPage").onsubmit = onSubmit; + document.querySelector("#btnQuickConnectSubmit").onclick = onSubmit; }).on("pageshow", "#quickConnectPage", function () { loading.show(); var page = this; diff --git a/src/controllers/user/menu.js b/src/controllers/user/menu.js index ff8db72681..f5d05c5be3 100644 --- a/src/controllers/user/menu.js +++ b/src/controllers/user/menu.js @@ -24,7 +24,7 @@ define(["apphost", "connectionManager", "layoutManager", "listViewStyle", "emby- page.querySelector(".lnkHomePreferences").setAttribute("href", "mypreferenceshome.html?userId=" + userId); page.querySelector(".lnkPlaybackPreferences").setAttribute("href", "mypreferencesplayback.html?userId=" + userId); page.querySelector(".lnkSubtitlePreferences").setAttribute("href", "mypreferencessubtitles.html?userId=" + userId); - page.querySelector(".lnkQuickConnectPreferences").setAttribute("href", "mypreferencesquickconnect.html?userId=" + userId); + page.querySelector(".lnkQuickConnectPreferences").setAttribute("href", "mypreferencesquickconnect.html?userId=" + userId); if (window.NativeShell && window.NativeShell.AppHost.supports("clientsettings")) { page.querySelector(".clientSettings").classList.remove("hide"); diff --git a/src/controllers/user/quickconnect.js b/src/controllers/user/quickconnect.js index d6f2ae25c1..6e63bcdc08 100644 --- a/src/controllers/user/quickconnect.js +++ b/src/controllers/user/quickconnect.js @@ -2,6 +2,13 @@ define(["quickConnectSettings", "dom", "globalize", "loading", "userSettings", " "use strict"; return function (view, params) { + function notImplemented() { + Dashboard.alert({ + message: "This button is not implemented yet, you must check the checkbox labeled \"Always accept quick connect login requests\" in the dashboard", + title: "Not implemented" + }); + } + var quickConnectSettingsInstance = null; var hasChanges; var userId = params.userId || ApiClient.getCurrentUserId(); @@ -9,6 +16,8 @@ define(["quickConnectSettings", "dom", "globalize", "loading", "userSettings", " view.addEventListener("viewshow", function () { console.debug("defining instance"); + $("#btnQuickConnectActivate").click(notImplemented); + quickConnectSettingsInstance = new QuickConnectSettings({ serverId: ApiClient.serverId(), userId: userId, diff --git a/src/mypreferencesquickconnect.html b/src/mypreferencesquickconnect.html index 326ce51b48..b9ffdfaccd 100644 --- a/src/mypreferencesquickconnect.html +++ b/src/mypreferencesquickconnect.html @@ -1,12 +1,12 @@
    - Incoming login requests:
      -
    • Failed to load incoming requests
    • -
    +
  • Failed to load incoming requests
  • + diff --git a/src/quickconnect.html b/src/quickconnect.html index 770796a10e..875716285c 100644 --- a/src/quickconnect.html +++ b/src/quickconnect.html @@ -16,7 +16,7 @@
    If unchecked, users will have to click the Activate button in their profile before initiating a quick connect login.
    From c37e8f2f1bcb827893fe32a3fcf77107964a853e Mon Sep 17 00:00:00 2001 From: Matt Montgomery <33811686+ConfusedPolarBear@users.noreply.github.com> Date: Sat, 18 Apr 2020 19:20:15 -0500 Subject: [PATCH 004/365] Implement auto refresh and activate button --- .../quickconnectsettings.js | 85 +++++++++++++------ src/controllers/auth/login.js | 75 ++++++++-------- src/controllers/quickconnect.js | 54 +++++++----- src/controllers/user/quickconnect.js | 63 +++++++------- src/mypreferencesmenu.html | 4 +- src/mypreferencesquickconnect.html | 2 +- src/quickconnect.html | 6 +- src/scripts/librarymenu.js | 2 +- src/scripts/site.js | 2 +- 9 files changed, 170 insertions(+), 123 deletions(-) diff --git a/src/components/quickconnectsettings/quickconnectsettings.js b/src/components/quickconnectsettings/quickconnectsettings.js index ed7985dcfa..fc167802d8 100644 --- a/src/components/quickconnectsettings/quickconnectsettings.js +++ b/src/components/quickconnectsettings/quickconnectsettings.js @@ -1,11 +1,10 @@ -define(['require', 'apphost', 'layoutManager', 'focusManager', 'globalize', 'loading', 'connectionManager', 'homeSections', 'dom', 'events', 'listViewStyle', 'emby-select', 'emby-checkbox'], function (require, appHost, layoutManager, focusManager, globalize, loading, connectionManager, homeSections, dom, events) { +define(['require', 'apphost', 'layoutManager', 'focusManager', 'globalize', 'loading', 'connectionManager', 'listViewStyle', 'emby-select', 'emby-checkbox'], function (require, appHost, layoutManager, focusManager, globalize, loading, connectionManager) { "use strict"; function authorizeRequest(event) { var lookup = event.data.lookup; - var apiClient = event.data.apiClient; var url = ApiClient.getUrl("/QuickConnect/Authorize"); - apiClient.ajax({ + ApiClient.ajax({ type: "POST", url: url, data: { @@ -13,46 +12,72 @@ define(['require', 'apphost', 'layoutManager', 'focusManager', 'globalize', 'loa } }, true); } - - function list(apiClient) { - console.debug("getting json"); - apiClient.getJSON("/QuickConnect/List").then(json => { - var elem = $("#quickConnectIncoming"); + + QuickConnectSettings.prototype.list = function(argPage) { + ApiClient.getJSON("/QuickConnect/List").then(json => { + var elem = $(argPage.querySelector("#quickConnectIncoming")); elem.html(""); - console.debug("raw json", json, "length is", json.length); - for(var i = 0; i < json.length; i++) { + for (var i = 0; i < json.length; i++) { var current = json[i]; - console.debug("current is", current); var html = "
  • " + current.Code + " - " + current.FriendlyName + " - "; - - if(!current.Authenticated) { + + if (!current.Authenticated) { html += "authorize"; - } - else { + } else { html += " (already authorized)"; } - + html += "
  • "; elem.append(html); - $("#qc" + current.Lookup).click({ lookup: current.Lookup, apiClient: apiClient}, authorizeRequest); + $("#qc" + current.Lookup).click({ lookup: current.Lookup }, authorizeRequest); } + + return true; + }).catch((e) => { + console.error("Unable to get quick connect login requests. error:", e); }); - } + }; + + QuickConnectSettings.prototype.activate = function() { + var url = ApiClient.getUrl("/QuickConnect/Activate"); + ApiClient.ajax({ + type: "POST", + url: url, + contentType: "application/json", + dataType: "json" + }).then((json) => { + let message = json.Error; + + console.log("message is \"" + message + "\""); + if (message && message !== "") { + console.error("Error activating quick connect. Error: ", json.Error); + + Dashboard.alert({ + title: "Unable to activate quick connect", + message: message + }); + + return false; + } + + Dashboard.alert({ + message: "Already active" + }); + + return true; + }).catch((e) => { + console.error("Error activating quick connect. Error:", e); + throw e; + }); + }; function QuickConnectSettings(options) { this.options = options; } QuickConnectSettings.prototype.loadData = function () { - loading.show(); - - var apiClient = connectionManager.getApiClient(this.options.serverId); - - list(apiClient); - - console.debug("request list finished"); - - loading.hide(); + this.options.interval = setInterval(this.list, 5000, this.options.page); + this.list(this.options.page); }; QuickConnectSettings.prototype.submit = function () { @@ -60,8 +85,14 @@ define(['require', 'apphost', 'layoutManager', 'focusManager', 'globalize', 'loa }; QuickConnectSettings.prototype.destroy = function () { + console.debug("clearing refresh interval", this.options.interval); + clearInterval(this.options.interval); this.options = null; }; + QuickConnectSettings.prototype.interval = function (interval) { + this.options.interval = interval; + }; + return QuickConnectSettings; }); diff --git a/src/controllers/auth/login.js b/src/controllers/auth/login.js index 845ae9a38f..94fa15d412 100644 --- a/src/controllers/auth/login.js +++ b/src/controllers/auth/login.js @@ -152,51 +152,54 @@ define(["apphost", "appSettings", "dom", "connectionManager", "loading", "layout function loginQuickConnect() { var apiClient = getApiClient(); - var friendlyName = "test"; - + var friendlyName = navigator.userAgent; // TODO: what should this be changed to? + var url = apiClient.getUrl("/QuickConnect/Initiate?FriendlyName=" + friendlyName); apiClient.getJSON(url) - .then(json => { - if (!json.Secret || !json.Code) { + .then(json => { + if (!json.Secret || !json.Code) { + Dashboard.alert({ + message: json.Error, + title: "Error" + }); + + return false; + } + Dashboard.alert({ - message: json.Error, - title: "Error" + message: "Authorize request " + json.Code + " to continue", + title: "Quick Connect Code" }); - return; - } - Dashboard.alert({ - message: "Authorize request " + json.Code + " to continue", - title: "Quick Connect Code" - }); + loading.show(); - loading.show(); + var interval = setInterval(async function() { + let connectUrl = apiClient.getUrl('/QuickConnect/Connect?Secret=' + json.Secret); + let data = await apiClient.getJSON(connectUrl); + if (data.Authenticated) { + let result = await apiClient.quickConnect(data.Authentication); + var user = result.User; + var serverId = getParameterByName("serverid"); + var newUrl = "home.html"; - var interval = setInterval(() => { - var url = apiClient.getUrl('/QuickConnect/Connect?Secret=' + json.Secret); - apiClient.getJSON(url) - .then(data => { - if(data.Authenticated) { - apiClient.quickConnect(data.Authentication).then((result) => { - var user = result.User; - var serverId = getParameterByName("serverid"); - var newUrl; + if (user.Policy.IsAdministrator && !serverId) { + newUrl = "dashboard.html"; + } - if (user.Policy.IsAdministrator && !serverId) { - newUrl = "dashboard.html"; - } else { - newUrl = "home.html"; - } + loading.hide(); + Dashboard.onServerChanged(user.Id, result.AccessToken, apiClient); + Dashboard.navigate(newUrl); + clearInterval(interval); - loading.hide(); - Dashboard.onServerChanged(user.Id, result.AccessToken, apiClient); - Dashboard.navigate(newUrl); - clearInterval(interval); - }); + return true; } - }); - }, 5000); - }); + return false; + }, 5000); + + return true; + }).catch((e) => { + console.error("Unable to initiate quick connect login request. Error:", e); + }); } view.querySelector("#divUsers").addEventListener("click", function (e) { @@ -240,7 +243,7 @@ define(["apphost", "appSettings", "dom", "connectionManager", "loading", "layout view.querySelector(".btnSelectServer").addEventListener("click", function () { Dashboard.selectServer(); }); - view.addEventListener("viewshow", function (e) { + view.addEventListener("viewshow", function () { loading.show(); if (!appHost.supports('multiserver')) { diff --git a/src/controllers/quickconnect.js b/src/controllers/quickconnect.js index 5c3c8f9a18..a6ebc381ce 100644 --- a/src/controllers/quickconnect.js +++ b/src/controllers/quickconnect.js @@ -1,9 +1,8 @@ -define(["jQuery", "loading", "libraryMenu", "fnchecked"], function ($, loading, libraryMenu) { +define(["jQuery", "loading", "fnchecked"], function ($, loading) { "use strict"; + var page; function loadPage(page, status) { - console.debug("status is \"" + status + "\""); - var active = (status == "Active"); var available = (status == "Available") || active; @@ -16,44 +15,53 @@ define(["jQuery", "loading", "libraryMenu", "fnchecked"], function ($, loading, function onSubmit() { loading.show(); - - var available = $("#chkQuickConnectAvailable").is(":checked") ? "Available" : "Unavailable"; + + var newStatus = page.querySelector("#chkQuickConnectAvailable").checked ? "Available" : "Unavailable"; + if (newStatus && page.querySelector("#chkQuickConnectActive").checked) { + newStatus = "Active"; + } + var url = ApiClient.getUrl("/QuickConnect/Available"); - + ApiClient.ajax({ type: "POST", data: { - "Status": available + "Status": newStatus }, url: url }, true).then(() => { - if($("#chkQuickConnectActive").is(":checked")) { - url = ApiClient.getUrl("/QuickConnect/Activate"); - ApiClient.ajax({ - type: "POST", - url: url - }, true); - } - Dashboard.alert({ message: "Settings saved", title: "Saved" }); + + setTimeout(updatePage, 500); + + return true; + }).catch((e) => { + console.error("Unable to set quick connect status. error:", e); }); - + loading.hide(); return false; } - $(document).on("pageinit", "#quickConnectPage", function () { - document.querySelector("#quickConnectPage").onsubmit = onSubmit; - document.querySelector("#btnQuickConnectSubmit").onclick = onSubmit; - }).on("pageshow", "#quickConnectPage", function () { - loading.show(); - var page = this; + function updatePage() { var promise1 = ApiClient.getQuickConnect("Status"); - Promise.all([promise1]).then(function (responses) { + Promise.all([promise1]).then((responses) => { loadPage(page, responses[0]); + return true; + }).catch((e) => { + console.error("Unable to get quick connect status. error:", e); }); + } + + $(document).on("pageshow", "#quickConnectPage", function () { + loading.show(); + page = this; + + page.querySelector("#btnQuickConnectSubmit").onclick = onSubmit; + + updatePage(); }); }); diff --git a/src/controllers/user/quickconnect.js b/src/controllers/user/quickconnect.js index 6e63bcdc08..fae5d49865 100644 --- a/src/controllers/user/quickconnect.js +++ b/src/controllers/user/quickconnect.js @@ -1,50 +1,55 @@ define(["quickConnectSettings", "dom", "globalize", "loading", "userSettings", "autoFocuser", "listViewStyle"], function (QuickConnectSettings, dom, globalize, loading, userSettings, autoFocuser) { "use strict"; - return function (view, params) { - function notImplemented() { - Dashboard.alert({ - message: "This button is not implemented yet, you must check the checkbox labeled \"Always accept quick connect login requests\" in the dashboard", - title: "Not implemented" - }); - } - + return function (view) { var quickConnectSettingsInstance = null; - var hasChanges; - var userId = params.userId || ApiClient.getCurrentUserId(); - var currentSettings = userId === ApiClient.getCurrentUserId() ? userSettings : new userSettings(); + view.addEventListener("viewshow", function () { - console.debug("defining instance"); - - $("#btnQuickConnectActivate").click(notImplemented); - quickConnectSettingsInstance = new QuickConnectSettings({ - serverId: ApiClient.serverId(), - userId: userId, - element: view.querySelector(".quickConnectSettingsContainer"), - userSettings: currentSettings, - enableSaveButton: false, - enableSaveConfirmation: false, - autoFocus: autoFocuser.isEnabled() + page: view, + interval: 0 }); - + + view.querySelector("#btnQuickConnectActivate").addEventListener("click", () => { + quickConnectSettingsInstance.activate(quickConnectSettingsInstance); + }); + quickConnectSettingsInstance.loadData(); - }); - view.addEventListener("change", function () { - hasChanges = true; + + ApiClient.getQuickConnect("Status").then((status) => { + let btn = view.querySelector("#btnQuickConnectActivate"); + + if (status === "Unavailable") { + btn.textContent = "Quick connect is not available on this server"; + btn.disabled = true; + return false; + } + + else if (status === "Available") { + return false; + } + + btn.style.display = "none"; + return true; + }).catch((e) => { + throw e; + }); }); view.addEventListener("viewbeforehide", function () { - hasChanges = false; - if (quickConnectSettingsInstance) { quickConnectSettingsInstance.submit(); } + onDestroy(); }); view.addEventListener("viewdestroy", function () { + onDestroy(); + }); + + function onDestroy() { if (quickConnectSettingsInstance) { quickConnectSettingsInstance.destroy(); quickConnectSettingsInstance = null; } - }); + } }; }); diff --git a/src/mypreferencesmenu.html b/src/mypreferencesmenu.html index c8db1d17f3..bfc5e793ef 100644 --- a/src/mypreferencesmenu.html +++ b/src/mypreferencesmenu.html @@ -51,13 +51,13 @@
    - +
    Quick Connect
    - +
    diff --git a/src/mypreferencesquickconnect.html b/src/mypreferencesquickconnect.html index b9ffdfaccd..d92e49a427 100644 --- a/src/mypreferencesquickconnect.html +++ b/src/mypreferencesquickconnect.html @@ -2,7 +2,7 @@ - + Incoming login requests:
      diff --git a/src/quickconnect.html b/src/quickconnect.html index 875716285c..9a7dfdfb3e 100644 --- a/src/quickconnect.html +++ b/src/quickconnect.html @@ -6,9 +6,9 @@

      Quick Connect

    - + Quick connect is: Failed to load status - +
    If unchecked, users will have to click the Activate button in their profile before initiating a quick connect login.
    - + diff --git a/src/scripts/librarymenu.js b/src/scripts/librarymenu.js index 930df8be49..2accf4948d 100644 --- a/src/scripts/librarymenu.js +++ b/src/scripts/librarymenu.js @@ -350,7 +350,7 @@ define(["dom", "layoutManager", "inputManager", "connectionManager", "events", " pageIds: ["devicesPage", "devicePage"], icon: "devices" }); - links.push({ + links.push({ name: "Quick Connect", href: "quickconnect.html", pageIds: ["quickConnectPage", "quickConnectPage"], diff --git a/src/scripts/site.js b/src/scripts/site.js index 311478c019..3b8abf2bfe 100644 --- a/src/scripts/site.js +++ b/src/scripts/site.js @@ -829,7 +829,7 @@ var AppInfo = {}; define("displaySettings", [componentsPath + "/displaysettings/displaysettings"], returnFirstDependency); define("playbackSettings", [componentsPath + "/playbacksettings/playbacksettings"], returnFirstDependency); define("homescreenSettings", [componentsPath + "/homescreensettings/homescreensettings"], returnFirstDependency); - define("quickConnectSettings", [componentsPath + "/quickconnectsettings/quickconnectsettings"], returnFirstDependency); + define("quickConnectSettings", [componentsPath + "/quickconnectsettings/quickconnectsettings"], returnFirstDependency); define("playbackManager", [componentsPath + "/playback/playbackmanager"], getPlaybackManager); define("layoutManager", [componentsPath + "/layoutManager", "apphost"], getLayoutManager); define("homeSections", [componentsPath + "/homesections/homesections"], returnFirstDependency); From 43d01146a23b9ee9c4044a5d0b545ee6fe6ce692 Mon Sep 17 00:00:00 2001 From: Matt Montgomery <33811686+ConfusedPolarBear@users.noreply.github.com> Date: Sun, 19 Apr 2020 01:39:05 -0500 Subject: [PATCH 005/365] Fix linting --- .../quickconnectsettings/quickconnectsettings.js | 2 +- src/controllers/quickconnect.js | 4 ++-- src/controllers/user/quickconnect.js | 4 +--- src/libraries/apiclient/apiclientcore.js | 7 ++++--- 4 files changed, 8 insertions(+), 9 deletions(-) diff --git a/src/components/quickconnectsettings/quickconnectsettings.js b/src/components/quickconnectsettings/quickconnectsettings.js index fc167802d8..c65782cafe 100644 --- a/src/components/quickconnectsettings/quickconnectsettings.js +++ b/src/components/quickconnectsettings/quickconnectsettings.js @@ -61,7 +61,7 @@ define(['require', 'apphost', 'layoutManager', 'focusManager', 'globalize', 'loa } Dashboard.alert({ - message: "Already active" + message: "Successfully activated" }); return true; diff --git a/src/controllers/quickconnect.js b/src/controllers/quickconnect.js index a6ebc381ce..35e5516f45 100644 --- a/src/controllers/quickconnect.js +++ b/src/controllers/quickconnect.js @@ -2,7 +2,7 @@ define(["jQuery", "loading", "fnchecked"], function ($, loading) { "use strict"; var page; - function loadPage(page, status) { + function loadPage(status) { var active = (status == "Active"); var available = (status == "Available") || active; @@ -49,7 +49,7 @@ define(["jQuery", "loading", "fnchecked"], function ($, loading) { function updatePage() { var promise1 = ApiClient.getQuickConnect("Status"); Promise.all([promise1]).then((responses) => { - loadPage(page, responses[0]); + loadPage(responses[0]); return true; }).catch((e) => { console.error("Unable to get quick connect status. error:", e); diff --git a/src/controllers/user/quickconnect.js b/src/controllers/user/quickconnect.js index fae5d49865..2b03dec415 100644 --- a/src/controllers/user/quickconnect.js +++ b/src/controllers/user/quickconnect.js @@ -23,9 +23,7 @@ define(["quickConnectSettings", "dom", "globalize", "loading", "userSettings", " btn.textContent = "Quick connect is not available on this server"; btn.disabled = true; return false; - } - - else if (status === "Available") { + } else if (status === "Available") { return false; } diff --git a/src/libraries/apiclient/apiclientcore.js b/src/libraries/apiclient/apiclientcore.js index 04421b8372..e1892505fc 100644 --- a/src/libraries/apiclient/apiclientcore.js +++ b/src/libraries/apiclient/apiclientcore.js @@ -358,8 +358,8 @@ define(["events", "appStorage"], function(events, appStorage) { }) }, ApiClient.prototype.quickConnect = function (token) { if (!token) return Promise.reject(); - var url = this.getUrl("Users/AuthenticateWithQuickConnect"), - instance = this; + var url = this.getUrl("Users/AuthenticateWithQuickConnect"); + var instance = this; return new Promise(function(resolve, reject) { var postData = { Token: token @@ -372,7 +372,8 @@ define(["events", "appStorage"], function(events, appStorage) { contentType: "application/json" }).then(function(result) { var afterOnAuthenticated = function() { - redetectBitrate(instance), resolve(result) + redetectBitrate(instance); + return resolve(result); }; instance.onAuthenticated ? instance.onAuthenticated(instance, result).then(afterOnAuthenticated) : afterOnAuthenticated() }, reject) From bf03a7ba57af89f1a38c41457dbe7c70f501a04d Mon Sep 17 00:00:00 2001 From: Matt Montgomery <33811686+ConfusedPolarBear@users.noreply.github.com> Date: Sat, 25 Apr 2020 15:46:22 -0500 Subject: [PATCH 006/365] Improve UI --- .../quickconnectsettings.js | 42 ++++++++++++++----- src/controllers/auth/login.js | 42 ++++++++++++------- src/controllers/quickconnect.js | 12 ++---- src/mypreferencesmenu.html | 2 +- src/mypreferencesquickconnect.html | 5 +-- src/quickconnect.html | 5 --- src/scripts/librarymenu.js | 2 +- 7 files changed, 65 insertions(+), 45 deletions(-) diff --git a/src/components/quickconnectsettings/quickconnectsettings.js b/src/components/quickconnectsettings/quickconnectsettings.js index c65782cafe..59250df76a 100644 --- a/src/components/quickconnectsettings/quickconnectsettings.js +++ b/src/components/quickconnectsettings/quickconnectsettings.js @@ -11,25 +11,45 @@ define(['require', 'apphost', 'layoutManager', 'focusManager', 'globalize', 'loa "Lookup": lookup } }, true); + + require(["toast"], function (toast) { + toast("Request authorized"); + }); + + // prevent bubbling + return false; } QuickConnectSettings.prototype.list = function(argPage) { ApiClient.getJSON("/QuickConnect/List").then(json => { + let found = false; var elem = $(argPage.querySelector("#quickConnectIncoming")); - elem.html(""); - for (var i = 0; i < json.length; i++) { - var current = json[i]; - var html = "
  • " + current.Code + " - " + current.FriendlyName + " - "; + elem.text("No pending login requests"); - if (!current.Authenticated) { - html += "authorize"; - } else { - html += " (already authorized)"; + for (var i = 0; i < json.length; i++) { + if (!found) { + elem.html(""); + found = true; } - html += "
  • "; + var current = json[i]; + + let html = '
    '; + html += '
    ' + current.Code + '
    '; + html += '
    ' + current.FriendlyName + '
    '; + html += '
    '; + + if (!current.Authenticated) { + html += 'authorize'; + } else { + html += " (authorized)"; + } + + html += '
    '; elem.append(html); + $("#qc" + current.Lookup).click({ lookup: current.Lookup }, authorizeRequest); + $("#div" + current.Lookup).click({ lookup: current.Lookup }, authorizeRequest); } return true; @@ -60,8 +80,8 @@ define(['require', 'apphost', 'layoutManager', 'focusManager', 'globalize', 'loa return false; } - Dashboard.alert({ - message: "Successfully activated" + require(["toast"], function (toast) { + toast("Successfully activated"); }); return true; diff --git a/src/controllers/auth/login.js b/src/controllers/auth/login.js index 94fa15d412..ff36939fb2 100644 --- a/src/controllers/auth/login.js +++ b/src/controllers/auth/login.js @@ -152,7 +152,7 @@ define(["apphost", "appSettings", "dom", "connectionManager", "loading", "layout function loginQuickConnect() { var apiClient = getApiClient(); - var friendlyName = navigator.userAgent; // TODO: what should this be changed to? + var friendlyName = navigator.userAgent; var url = apiClient.getUrl("/QuickConnect/Initiate?FriendlyName=" + friendlyName); apiClient.getJSON(url) @@ -174,25 +174,37 @@ define(["apphost", "appSettings", "dom", "connectionManager", "loading", "layout loading.show(); var interval = setInterval(async function() { - let connectUrl = apiClient.getUrl('/QuickConnect/Connect?Secret=' + json.Secret); - let data = await apiClient.getJSON(connectUrl); - if (data.Authenticated) { - let result = await apiClient.quickConnect(data.Authentication); - var user = result.User; - var serverId = getParameterByName("serverid"); - var newUrl = "home.html"; + try { + let connectUrl = apiClient.getUrl('/QuickConnect/Connect?Secret=' + json.Secret); + let data = await apiClient.getJSON(connectUrl); + if (data.Authenticated) { + let result = await apiClient.quickConnect(data.Authentication); + var user = result.User; + var serverId = getParameterByName("serverid"); + var newUrl = "home.html"; - if (user.Policy.IsAdministrator && !serverId) { - newUrl = "dashboard.html"; + if (user.Policy.IsAdministrator && !serverId) { + newUrl = "dashboard.html"; + } + + loading.hide(); + Dashboard.onServerChanged(user.Id, result.AccessToken, apiClient); + Dashboard.navigate(newUrl); + clearInterval(interval); + + return true; } + } catch (e) { + Dashboard.alert({ + message: "Quick connect was deactivated before the login request could be approved", + title: "Unexpected error" + }); - loading.hide(); - Dashboard.onServerChanged(user.Id, result.AccessToken, apiClient); - Dashboard.navigate(newUrl); + console.error("Unable to login with quick connect", e); clearInterval(interval); - - return true; + loading.hide(); } + return false; }, 5000); diff --git a/src/controllers/quickconnect.js b/src/controllers/quickconnect.js index 35e5516f45..3432e79231 100644 --- a/src/controllers/quickconnect.js +++ b/src/controllers/quickconnect.js @@ -3,12 +3,10 @@ define(["jQuery", "loading", "fnchecked"], function ($, loading) { var page; function loadPage(status) { - var active = (status == "Active"); - var available = (status == "Available") || active; + var available = status === "Available" || status === "Active"; page.querySelector("#quickConnectStatus").textContent = status.toLocaleLowerCase(); page.querySelector("#chkQuickConnectAvailable").checked = available; - page.querySelector("#chkQuickConnectActive").checked = active; loading.hide(); } @@ -17,9 +15,6 @@ define(["jQuery", "loading", "fnchecked"], function ($, loading) { loading.show(); var newStatus = page.querySelector("#chkQuickConnectAvailable").checked ? "Available" : "Unavailable"; - if (newStatus && page.querySelector("#chkQuickConnectActive").checked) { - newStatus = "Active"; - } var url = ApiClient.getUrl("/QuickConnect/Available"); @@ -30,9 +25,8 @@ define(["jQuery", "loading", "fnchecked"], function ($, loading) { }, url: url }, true).then(() => { - Dashboard.alert({ - message: "Settings saved", - title: "Saved" + require(["toast"], function (toast) { + toast("Settings saved"); }); setTimeout(updatePage, 500); diff --git a/src/mypreferencesmenu.html b/src/mypreferencesmenu.html index bfc5e793ef..6f753e5554 100644 --- a/src/mypreferencesmenu.html +++ b/src/mypreferencesmenu.html @@ -51,7 +51,7 @@
    - + tap_and_play
    Quick Connect
    diff --git a/src/mypreferencesquickconnect.html b/src/mypreferencesquickconnect.html index d92e49a427..b58ca8074f 100644 --- a/src/mypreferencesquickconnect.html +++ b/src/mypreferencesquickconnect.html @@ -3,10 +3,9 @@ Activate - Incoming login requests:
    -
      -
    • Failed to load incoming requests
    • +
      +
      Failed to load incoming requests
    diff --git a/src/quickconnect.html b/src/quickconnect.html index 9a7dfdfb3e..7d7ec879a6 100644 --- a/src/quickconnect.html +++ b/src/quickconnect.html @@ -14,11 +14,6 @@ Enable quick connect on this server - -
    If unchecked, users will have to click the Activate button in their profile before initiating a quick connect login.
    -
    Failed to load incoming requests
    +
    ${MessagePleaseWait}
    diff --git a/src/quickconnect.html b/src/quickconnect.html index 7d7ec879a6..dff74eb836 100644 --- a/src/quickconnect.html +++ b/src/quickconnect.html @@ -3,16 +3,16 @@
    -

    Quick Connect

    +

    ${QuickConnect}

    - Quick connect is: Failed to load status + ${LabelCurrentStatus}
    diff --git a/src/scripts/librarymenu.js b/src/scripts/librarymenu.js index 131dcf7472..e3ef65f22f 100644 --- a/src/scripts/librarymenu.js +++ b/src/scripts/librarymenu.js @@ -351,7 +351,7 @@ define(["dom", "layoutManager", "inputManager", "connectionManager", "events", " icon: "devices" }); links.push({ - name: "Quick Connect", + name: globalize.translate("QuickConnect"), href: "quickconnect.html", pageIds: ["quickConnectPage", "quickConnectPage"], icon: "tap_and_play" diff --git a/src/strings/en-us.json b/src/strings/en-us.json index d5fc40ef01..ad390a0fe2 100644 --- a/src/strings/en-us.json +++ b/src/strings/en-us.json @@ -48,6 +48,7 @@ "AuthProviderHelp": "Select an Authentication Provider to be used to authenticate this user's password.", "Auto": "Auto", "AutoBasedOnLanguageSetting": "Auto (based on language setting)", + "Authorize": "authorize", "Backdrop": "Backdrop", "Backdrops": "Backdrops", "Banner": "Banner", @@ -63,6 +64,7 @@ "Browse": "Browse", "BrowsePluginCatalogMessage": "Browse our plugin catalog to view available plugins.", "BurnSubtitlesHelp": "Determines if the server should burn in subtitles when transcoding videos. Avoiding this will greatly improve performance. Select Auto to burn image based formats (VOBSUB, PGS, SUB, IDX) and certain ASS or SSA subtitles.", + "ButtonActivate": "Activate", "ButtonAdd": "Add", "ButtonAddImage": "Add Image", "ButtonAddMediaLibrary": "Add Media Library", @@ -140,6 +142,7 @@ "ButtonTrailer": "Trailer", "ButtonUninstall": "Uninstall", "ButtonUp": "Up", + "ButtonUseQuickConnect": "Use Quick Connect", "ButtonViewWebsite": "View website", "ButtonWebsite": "Website", "CancelRecording": "Cancel recording", @@ -231,6 +234,7 @@ "EnableNextVideoInfoOverlayHelp": "At the end of a video, display info about the next video coming up in the current playlist.", "EnablePhotos": "Display photos", "EnablePhotosHelp": "Images will be detected and displayed alongside other media files.", + "EnableQuickConnect": "Enable quick connect on this server", "EnableStreamLooping": "Auto-loop live streams", "EnableStreamLoopingHelp": "Enable this if live streams only contain a few seconds of data and need to be continuously requested. Enabling this when not needed may cause problems.", "EnableThemeSongs": "Theme songs", @@ -587,6 +591,7 @@ "LabelCountry": "Country:", "LabelCriticRating": "Critic rating:", "LabelCurrentPassword": "Current password:", + "LabelCurrentStatus": "Current status:", "LabelCustomCertificatePath": "Custom SSL certificate path:", "LabelCustomCertificatePathHelp": "Path to a PKCS #12 file containing a certificate and private key to enable TLS support on a custom domain.", "LabelCustomCss": "Custom CSS:", @@ -1260,6 +1265,11 @@ "Programs": "Programs", "Quality": "Quality", "QueueAllFromHere": "Queue all from here", + "QuickConnect": "Quick Connect", + "QuickConnectActivationSuccessful": "Successfully activated", + "QuickConnectAuthorizeCode": "Authorize request {0} to continue", + "QuickConnectNoPending": "No pending login requests", + "QuickConnectNotAvailable": "Quick connect is not available on this server", "Raised": "Raised", "Rate": "Rate", "RecentlyWatched": "Recently watched", From a6d37e763319c1e65f1a7358a1b8ac0895b6492c Mon Sep 17 00:00:00 2001 From: Matt Montgomery <33811686+ConfusedPolarBear@users.noreply.github.com> Date: Sun, 26 Apr 2020 17:47:31 -0500 Subject: [PATCH 008/365] Change missed var declarations into let --- .../quickconnectsettings/quickconnectsettings.js | 8 ++++---- src/controllers/auth/login.js | 14 +++++++------- src/controllers/quickconnect.js | 10 +++++----- src/controllers/user/quickconnect.js | 2 +- 4 files changed, 17 insertions(+), 17 deletions(-) diff --git a/src/components/quickconnectsettings/quickconnectsettings.js b/src/components/quickconnectsettings/quickconnectsettings.js index 6010fab5c3..45bfe815cc 100644 --- a/src/components/quickconnectsettings/quickconnectsettings.js +++ b/src/components/quickconnectsettings/quickconnectsettings.js @@ -23,16 +23,16 @@ define(['require', 'apphost', 'layoutManager', 'focusManager', 'globalize', 'loa QuickConnectSettings.prototype.list = function(argPage) { ApiClient.getJSON("/QuickConnect/List").then(json => { let found = false; - var elem = argPage.querySelector('#quickConnectIncoming'); + let elem = argPage.querySelector('#quickConnectIncoming'); elem.innerText = globalize.translate('QuickConnectNoPending'); - for (var i = 0; i < json.length; i++) { + for (let i = 0; i < json.length; i++) { if (!found) { elem.innerHTML = ""; found = true; } - var current = json[i]; + let current = json[i]; let html = '
    '; html += '
    ' + current.Code + '
    '; @@ -57,7 +57,7 @@ define(['require', 'apphost', 'layoutManager', 'focusManager', 'globalize', 'loa }; QuickConnectSettings.prototype.activate = function() { - var url = ApiClient.getUrl("/QuickConnect/Activate"); + let url = ApiClient.getUrl("/QuickConnect/Activate"); ApiClient.ajax({ type: "POST", url: url, diff --git a/src/controllers/auth/login.js b/src/controllers/auth/login.js index 86e8874e7e..8b0bcdd28d 100644 --- a/src/controllers/auth/login.js +++ b/src/controllers/auth/login.js @@ -151,10 +151,10 @@ define(["apphost", "appSettings", "dom", "connectionManager", "loading", "layout } function loginQuickConnect() { - var apiClient = getApiClient(); - var friendlyName = navigator.userAgent; + let apiClient = getApiClient(); + let friendlyName = navigator.userAgent; - var url = apiClient.getUrl("/QuickConnect/Initiate?FriendlyName=" + friendlyName); + let url = apiClient.getUrl("/QuickConnect/Initiate?FriendlyName=" + friendlyName); apiClient.getJSON(url) .then(json => { if (!json.Secret || !json.Code) { @@ -173,15 +173,15 @@ define(["apphost", "appSettings", "dom", "connectionManager", "loading", "layout loading.show(); - var interval = setInterval(async function() { + let interval = setInterval(async function() { try { let connectUrl = apiClient.getUrl('/QuickConnect/Connect?Secret=' + json.Secret); let data = await apiClient.getJSON(connectUrl); if (data.Authenticated) { let result = await apiClient.quickConnect(data.Authentication); - var user = result.User; - var serverId = getParameterByName("serverid"); - var newUrl = "home.html"; + let user = result.User; + let serverId = getParameterByName("serverid"); + let newUrl = "home.html"; if (user.Policy.IsAdministrator && !serverId) { newUrl = "dashboard.html"; diff --git a/src/controllers/quickconnect.js b/src/controllers/quickconnect.js index 3432e79231..93b74a1b52 100644 --- a/src/controllers/quickconnect.js +++ b/src/controllers/quickconnect.js @@ -1,9 +1,9 @@ define(["jQuery", "loading", "fnchecked"], function ($, loading) { "use strict"; - var page; + let page; function loadPage(status) { - var available = status === "Available" || status === "Active"; + let available = status === "Available" || status === "Active"; page.querySelector("#quickConnectStatus").textContent = status.toLocaleLowerCase(); page.querySelector("#chkQuickConnectAvailable").checked = available; @@ -14,9 +14,9 @@ define(["jQuery", "loading", "fnchecked"], function ($, loading) { function onSubmit() { loading.show(); - var newStatus = page.querySelector("#chkQuickConnectAvailable").checked ? "Available" : "Unavailable"; + let newStatus = page.querySelector("#chkQuickConnectAvailable").checked ? "Available" : "Unavailable"; - var url = ApiClient.getUrl("/QuickConnect/Available"); + let url = ApiClient.getUrl("/QuickConnect/Available"); ApiClient.ajax({ type: "POST", @@ -41,7 +41,7 @@ define(["jQuery", "loading", "fnchecked"], function ($, loading) { } function updatePage() { - var promise1 = ApiClient.getQuickConnect("Status"); + let promise1 = ApiClient.getQuickConnect("Status"); Promise.all([promise1]).then((responses) => { loadPage(responses[0]); return true; diff --git a/src/controllers/user/quickconnect.js b/src/controllers/user/quickconnect.js index 035aef8f2f..bee0c1b817 100644 --- a/src/controllers/user/quickconnect.js +++ b/src/controllers/user/quickconnect.js @@ -2,7 +2,7 @@ define(["quickConnectSettings", "dom", "globalize", "loading", "userSettings", " "use strict"; return function (view) { - var quickConnectSettingsInstance = null; + let quickConnectSettingsInstance = null; view.addEventListener("viewshow", function () { quickConnectSettingsInstance = new QuickConnectSettings({ From 8655de4469c3aade0e1f949169c8f536a43e210b Mon Sep 17 00:00:00 2001 From: Matt Montgomery <33811686+ConfusedPolarBear@users.noreply.github.com> Date: Fri, 1 May 2020 13:49:06 -0500 Subject: [PATCH 009/365] Rename to camel case --- .../quickConnectSettings.js} | 0 src/controllers/{quickconnect.js => quickConnect.js} | 0 src/controllers/user/{quickconnect.js => quickConnect.js} | 0 ...referencesquickconnect.html => myPreferencesQuickConnect.html} | 0 src/{quickconnect.html => quickConnect.html} | 0 5 files changed, 0 insertions(+), 0 deletions(-) rename src/components/{quickconnectsettings/quickconnectsettings.js => quickConnectSettings/quickConnectSettings.js} (100%) rename src/controllers/{quickconnect.js => quickConnect.js} (100%) rename src/controllers/user/{quickconnect.js => quickConnect.js} (100%) rename src/{mypreferencesquickconnect.html => myPreferencesQuickConnect.html} (100%) rename src/{quickconnect.html => quickConnect.html} (100%) diff --git a/src/components/quickconnectsettings/quickconnectsettings.js b/src/components/quickConnectSettings/quickConnectSettings.js similarity index 100% rename from src/components/quickconnectsettings/quickconnectsettings.js rename to src/components/quickConnectSettings/quickConnectSettings.js diff --git a/src/controllers/quickconnect.js b/src/controllers/quickConnect.js similarity index 100% rename from src/controllers/quickconnect.js rename to src/controllers/quickConnect.js diff --git a/src/controllers/user/quickconnect.js b/src/controllers/user/quickConnect.js similarity index 100% rename from src/controllers/user/quickconnect.js rename to src/controllers/user/quickConnect.js diff --git a/src/mypreferencesquickconnect.html b/src/myPreferencesQuickConnect.html similarity index 100% rename from src/mypreferencesquickconnect.html rename to src/myPreferencesQuickConnect.html diff --git a/src/quickconnect.html b/src/quickConnect.html similarity index 100% rename from src/quickconnect.html rename to src/quickConnect.html From d8cfe064e60379033fdf61a963efbc27296130af Mon Sep 17 00:00:00 2001 From: Matt Montgomery <33811686+ConfusedPolarBear@users.noreply.github.com> Date: Fri, 1 May 2020 14:18:04 -0500 Subject: [PATCH 010/365] Changed code to camel case --- src/controllers/user/menu.js | 2 +- src/scripts/librarymenu.js | 2 +- src/scripts/routes.js | 8 ++++---- src/scripts/site.js | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/controllers/user/menu.js b/src/controllers/user/menu.js index f5d05c5be3..9482b26cb5 100644 --- a/src/controllers/user/menu.js +++ b/src/controllers/user/menu.js @@ -24,7 +24,7 @@ define(["apphost", "connectionManager", "layoutManager", "listViewStyle", "emby- page.querySelector(".lnkHomePreferences").setAttribute("href", "mypreferenceshome.html?userId=" + userId); page.querySelector(".lnkPlaybackPreferences").setAttribute("href", "mypreferencesplayback.html?userId=" + userId); page.querySelector(".lnkSubtitlePreferences").setAttribute("href", "mypreferencessubtitles.html?userId=" + userId); - page.querySelector(".lnkQuickConnectPreferences").setAttribute("href", "mypreferencesquickconnect.html?userId=" + userId); + page.querySelector(".lnkQuickConnectPreferences").setAttribute("href", "myPreferencesQuickConnect.html?userId=" + userId); if (window.NativeShell && window.NativeShell.AppHost.supports("clientsettings")) { page.querySelector(".clientSettings").classList.remove("hide"); diff --git a/src/scripts/librarymenu.js b/src/scripts/librarymenu.js index e3ef65f22f..d123395ca0 100644 --- a/src/scripts/librarymenu.js +++ b/src/scripts/librarymenu.js @@ -352,7 +352,7 @@ define(["dom", "layoutManager", "inputManager", "connectionManager", "events", " }); links.push({ name: globalize.translate("QuickConnect"), - href: "quickconnect.html", + href: "quickConnect.html", pageIds: ["quickConnectPage", "quickConnectPage"], icon: "tap_and_play" }); diff --git a/src/scripts/routes.js b/src/scripts/routes.js index 1520e96632..f0806f56e0 100644 --- a/src/scripts/routes.js +++ b/src/scripts/routes.js @@ -73,10 +73,10 @@ define([ controller: "user/subtitles" }); defineRoute({ - path: "/mypreferencesquickconnect.html", + path: "/myPreferencesQuickConnect.html", autoFocus: false, transition: "fade", - controller: "user/quickconnect" + controller: "user/quickConnect" }); defineRoute({ @@ -110,10 +110,10 @@ define([ controller: "device" }); defineRoute({ - path: "/quickconnect.html", + path: "/quickConnect.html", autoFocus: false, roles: "admin", - controller: "quickconnect" + controller: "quickConnect" }); defineRoute({ path: "/dlnaprofile.html", diff --git a/src/scripts/site.js b/src/scripts/site.js index 3b8abf2bfe..ca8a828b0b 100644 --- a/src/scripts/site.js +++ b/src/scripts/site.js @@ -829,7 +829,7 @@ var AppInfo = {}; define("displaySettings", [componentsPath + "/displaysettings/displaysettings"], returnFirstDependency); define("playbackSettings", [componentsPath + "/playbacksettings/playbacksettings"], returnFirstDependency); define("homescreenSettings", [componentsPath + "/homescreensettings/homescreensettings"], returnFirstDependency); - define("quickConnectSettings", [componentsPath + "/quickconnectsettings/quickconnectsettings"], returnFirstDependency); + define("quickConnectSettings", [componentsPath + "/quickConnectSettings/quickConnectSettings"], returnFirstDependency); define("playbackManager", [componentsPath + "/playback/playbackmanager"], getPlaybackManager); define("layoutManager", [componentsPath + "/layoutManager", "apphost"], getLayoutManager); define("homeSections", [componentsPath + "/homesections/homesections"], returnFirstDependency); From 2655b4dca3da200f9dc720f37b4d6e7f32b4d839 Mon Sep 17 00:00:00 2001 From: Matt Montgomery <33811686+ConfusedPolarBear@users.noreply.github.com> Date: Mon, 4 May 2020 17:23:57 -0500 Subject: [PATCH 011/365] Migrate API changes to apiclient repo --- src/libraries/apiclient/apiclientcore.js | 25 ------------------------ 1 file changed, 25 deletions(-) diff --git a/src/libraries/apiclient/apiclientcore.js b/src/libraries/apiclient/apiclientcore.js index e1892505fc..557a4e1033 100644 --- a/src/libraries/apiclient/apiclientcore.js +++ b/src/libraries/apiclient/apiclientcore.js @@ -356,31 +356,6 @@ define(["events", "appStorage"], function(events, appStorage) { instance.onAuthenticated ? instance.onAuthenticated(instance, result).then(afterOnAuthenticated) : afterOnAuthenticated() }, reject) }) - }, ApiClient.prototype.quickConnect = function (token) { - if (!token) return Promise.reject(); - var url = this.getUrl("Users/AuthenticateWithQuickConnect"); - var instance = this; - return new Promise(function(resolve, reject) { - var postData = { - Token: token - }; - instance.ajax({ - type: "POST", - url: url, - data: JSON.stringify(postData), - dataType: "json", - contentType: "application/json" - }).then(function(result) { - var afterOnAuthenticated = function() { - redetectBitrate(instance); - return resolve(result); - }; - instance.onAuthenticated ? instance.onAuthenticated(instance, result).then(afterOnAuthenticated) : afterOnAuthenticated() - }, reject) - }) - }, ApiClient.prototype.getQuickConnect = function(verb) { - var url = this.getUrl("/QuickConnect/" + verb); - return this.getJSON(url); }, ApiClient.prototype.ensureWebSocket = function() { if (!this.isWebSocketOpenOrConnecting() && this.isWebSocketSupported()) try { this.openWebSocket() From 985396af14ce0fc37a1f418561f60c92fbf40664 Mon Sep 17 00:00:00 2001 From: grafixeyehero Date: Tue, 30 Jun 2020 00:47:34 +0300 Subject: [PATCH 012/365] Move tvlatest tab to suggestions section --- src/controllers/shows/tvlatest.js | 64 ------ src/controllers/shows/tvrecommended.js | 276 +++++++++++++++---------- src/tv.html | 28 ++- 3 files changed, 176 insertions(+), 192 deletions(-) delete mode 100644 src/controllers/shows/tvlatest.js diff --git a/src/controllers/shows/tvlatest.js b/src/controllers/shows/tvlatest.js deleted file mode 100644 index 08e420a595..0000000000 --- a/src/controllers/shows/tvlatest.js +++ /dev/null @@ -1,64 +0,0 @@ -define(['loading', 'components/groupedcards', 'cardBuilder', 'apphost', 'imageLoader'], function (loading, groupedcards, cardBuilder, appHost, imageLoader) { - 'use strict'; - - function getLatestPromise(context, params) { - loading.show(); - var userId = ApiClient.getCurrentUserId(); - var parentId = params.topParentId; - var options = { - IncludeItemTypes: 'Episode', - Limit: 30, - Fields: 'PrimaryImageAspectRatio,BasicSyncInfo', - ParentId: parentId, - ImageTypeLimit: 1, - EnableImageTypes: 'Primary,Backdrop,Thumb' - }; - return ApiClient.getJSON(ApiClient.getUrl('Users/' + userId + '/Items/Latest', options)); - } - - function loadLatest(context, params, promise) { - promise.then(function (items) { - var html = ''; - appHost.supports('imageanalysis'); - html += cardBuilder.getCardsHtml({ - items: items, - shape: 'backdrop', - preferThumb: true, - showTitle: true, - showSeriesYear: true, - showParentTitle: true, - overlayText: false, - cardLayout: false, - showUnplayedIndicator: false, - showChildCountIndicator: true, - centerText: true, - lazy: true, - overlayPlayButton: true, - lines: 2 - }); - var elem = context.querySelector('#latestEpisodes'); - elem.innerHTML = html; - imageLoader.lazyChildren(elem); - loading.hide(); - - require(['autoFocuser'], function (autoFocuser) { - autoFocuser.autoFocus(context); - }); - }); - } - - return function (view, params, tabContent) { - var self = this; - var latestPromise; - - self.preRender = function () { - latestPromise = getLatestPromise(view, params); - }; - - self.renderTab = function () { - loadLatest(tabContent, params, latestPromise); - }; - - tabContent.querySelector('#latestEpisodes').addEventListener('click', groupedcards.onItemsContainerClick); - }; -}); diff --git a/src/controllers/shows/tvrecommended.js b/src/controllers/shows/tvrecommended.js index 8087a03096..fc165cf1e5 100644 --- a/src/controllers/shows/tvrecommended.js +++ b/src/controllers/shows/tvrecommended.js @@ -6,8 +6,6 @@ define(['events', 'inputManager', 'libraryMenu', 'layoutManager', 'loading', 'do name: globalize.translate('TabShows') }, { name: globalize.translate('TabSuggestions') - }, { - name: globalize.translate('TabLatest') }, { name: globalize.translate('TabUpcoming') }, { @@ -27,14 +25,11 @@ define(['events', 'inputManager', 'libraryMenu', 'layoutManager', 'loading', 'do case 'suggestions': return 1; - case 'latest': - return 2; - case 'favorites': return 1; case 'genres': - return 4; + return 3; default: return 0; @@ -59,101 +54,159 @@ define(['events', 'inputManager', 'libraryMenu', 'layoutManager', 'loading', 'do } } + function initSuggestedTab(page, tabContent) { + var containers = tabContent.querySelectorAll('.itemsContainer'); + + for (var i = 0, length = containers.length; i < length; i++) { + setScrollClasses(containers[i], enableScrollX()); + } + } + + function loadSuggestionsTab(view, params, tabContent) { + var parentId = params.topParentId; + var userId = ApiClient.getCurrentUserId(); + console.debug('loadSuggestionsTab'); + loadResume(tabContent, userId, parentId); + loadLatest(tabContent, userId, parentId); + loadNextUp(tabContent, userId, parentId); + } + + function loadResume(view, userId, parentId) { + var screenWidth = dom.getWindowSize().innerWidth; + var options = { + SortBy: 'DatePlayed', + SortOrder: 'Descending', + IncludeItemTypes: 'Episode', + Filters: 'IsResumable', + Limit: screenWidth >= 1920 ? 5 : screenWidth >= 1600 ? 5 : 3, + Recursive: true, + Fields: 'PrimaryImageAspectRatio,MediaSourceCount,BasicSyncInfo', + CollapseBoxSetItems: false, + ParentId: parentId, + ImageTypeLimit: 1, + EnableImageTypes: 'Primary,Backdrop,Banner,Thumb', + EnableTotalRecordCount: false + }; + ApiClient.getItems(userId, options).then(function (result) { + if (result.Items.length) { + view.querySelector('#resumableSection').classList.remove('hide'); + } else { + view.querySelector('#resumableSection').classList.add('hide'); + } + + var allowBottomPadding = !enableScrollX(); + var container = view.querySelector('#resumableItems'); + cardBuilder.buildCards(result.Items, { + itemsContainer: container, + preferThumb: true, + shape: getThumbShape(), + scalable: true, + overlayPlayButton: true, + allowBottomPadding: allowBottomPadding, + cardLayout: false, + showTitle: true, + showYear: true, + centerText: true + }); + loading.hide(); + + require(['autoFocuser'], function (autoFocuser) { + autoFocuser.autoFocus(view); + }); + }); + } + + function loadLatest(view, userId, parentId) { + var options = { + userId: userId, + IncludeItemTypes: 'Episode', + Limit: 30, + Fields: 'PrimaryImageAspectRatio,BasicSyncInfo', + ParentId: parentId, + ImageTypeLimit: 1, + EnableImageTypes: 'Primary,Backdrop,Thumb' + }; + ApiClient.getLatestItems(options).then(function (items) { + var section = view.querySelector('#latestItemsSection'); + var allowBottomPadding = !enableScrollX(); + var container = section.querySelector('#latestEpisodesItems'); + cardBuilder.buildCards(items, { + parentContainer: section, + itemsContainer: container, + items: items, + shape: 'backdrop', + preferThumb: true, + showTitle: true, + showSeriesYear: true, + showParentTitle: true, + overlayText: false, + cardLayout: false, + allowBottomPadding: allowBottomPadding, + showUnplayedIndicator: false, + showChildCountIndicator: true, + centerText: true, + lazy: true, + overlayPlayButton: true, + lines: 2 + }); + loading.hide(); + + require(['autoFocuser'], function (autoFocuser) { + autoFocuser.autoFocus(view); + }); + }); + } + + function loadNextUp(view, userId, parentId) { + var query = { + userId: userId, + Limit: 24, + Fields: 'PrimaryImageAspectRatio,SeriesInfo,DateCreated,BasicSyncInfo', + ParentId: parentId, + ImageTypeLimit: 1, + EnableImageTypes: 'Primary,Backdrop,Thumb', + EnableTotalRecordCount: false + }; + query.ParentId = libraryMenu.getTopParentId(); + ApiClient.getNextUpEpisodes(query).then(function (result) { + if (result.Items.length) { + view.querySelector('.noNextUpItems').classList.add('hide'); + } else { + view.querySelector('.noNextUpItems').classList.remove('hide'); + } + + var section = view.querySelector('#nextUpItemsSection'); + var container = section.querySelector('#nextUpItems'); + cardBuilder.buildCards(result.Items, { + parentContainer: section, + itemsContainer: container, + preferThumb: true, + shape: 'backdrop', + scalable: true, + showTitle: true, + showParentTitle: true, + overlayText: false, + centerText: true, + overlayPlayButton: true, + cardLayout: false + }); + loading.hide(); + + require(['autoFocuser'], function (autoFocuser) { + autoFocuser.autoFocus(view); + }); + }); + } + + function enableScrollX() { + return !layoutManager.desktop; + } + + function getThumbShape() { + return enableScrollX() ? 'overflowBackdrop' : 'backdrop'; + } + return function (view, params) { - function reload() { - loading.show(); - loadResume(); - loadNextUp(); - } - - function loadNextUp() { - var query = { - Limit: 24, - Fields: 'PrimaryImageAspectRatio,SeriesInfo,DateCreated,BasicSyncInfo', - UserId: ApiClient.getCurrentUserId(), - ImageTypeLimit: 1, - EnableImageTypes: 'Primary,Backdrop,Thumb', - EnableTotalRecordCount: false - }; - query.ParentId = libraryMenu.getTopParentId(); - ApiClient.getNextUpEpisodes(query).then(function (result) { - if (result.Items.length) { - view.querySelector('.noNextUpItems').classList.add('hide'); - } else { - view.querySelector('.noNextUpItems').classList.remove('hide'); - } - - var container = view.querySelector('#nextUpItems'); - cardBuilder.buildCards(result.Items, { - itemsContainer: container, - preferThumb: true, - shape: 'backdrop', - scalable: true, - showTitle: true, - showParentTitle: true, - overlayText: false, - centerText: true, - overlayPlayButton: true, - cardLayout: false - }); - loading.hide(); - - require(['autoFocuser'], function (autoFocuser) { - autoFocuser.autoFocus(view); - }); - }); - } - - function enableScrollX() { - return !layoutManager.desktop; - } - - function getThumbShape() { - return enableScrollX() ? 'overflowBackdrop' : 'backdrop'; - } - - function loadResume() { - var parentId = libraryMenu.getTopParentId(); - var screenWidth = dom.getWindowSize().innerWidth; - var limit = screenWidth >= 1600 ? 5 : 6; - var options = { - SortBy: 'DatePlayed', - SortOrder: 'Descending', - IncludeItemTypes: 'Episode', - Filters: 'IsResumable', - Limit: limit, - Recursive: true, - Fields: 'PrimaryImageAspectRatio,SeriesInfo,UserData,BasicSyncInfo', - ExcludeLocationTypes: 'Virtual', - ParentId: parentId, - ImageTypeLimit: 1, - EnableImageTypes: 'Primary,Backdrop,Thumb', - EnableTotalRecordCount: false - }; - ApiClient.getItems(ApiClient.getCurrentUserId(), options).then(function (result) { - if (result.Items.length) { - view.querySelector('#resumableSection').classList.remove('hide'); - } else { - view.querySelector('#resumableSection').classList.add('hide'); - } - - var allowBottomPadding = !enableScrollX(); - var container = view.querySelector('#resumableItems'); - cardBuilder.buildCards(result.Items, { - itemsContainer: container, - preferThumb: true, - shape: getThumbShape(), - scalable: true, - showTitle: true, - showParentTitle: true, - overlayText: false, - centerText: true, - overlayPlayButton: true, - allowBottomPadding: allowBottomPadding, - cardLayout: false - }); - }); - } function onBeforeTabChange(e) { preLoadTab(view, parseInt(e.detail.selectedTabIndex)); @@ -184,26 +237,22 @@ define(['events', 'inputManager', 'libraryMenu', 'layoutManager', 'loading', 'do break; case 2: - depends.push('controllers/shows/tvlatest'); - break; - - case 3: depends.push('controllers/shows/tvupcoming'); break; - case 4: + case 3: depends.push('controllers/shows/tvgenres'); break; - case 5: + case 4: depends.push('controllers/shows/tvstudios'); break; - case 6: + case 5: depends.push('controllers/shows/episodes'); break; - case 7: + case 6: depends.push('scripts/searchtab'); } @@ -222,7 +271,7 @@ define(['events', 'inputManager', 'libraryMenu', 'layoutManager', 'loading', 'do if (index === 1) { controller = self; - } else if (index === 7) { + } else if (index === 6) { controller = new controllerFactory(view, tabContent, { collectionType: 'tvshows', parentId: params.topParentId @@ -289,19 +338,20 @@ define(['events', 'inputManager', 'libraryMenu', 'layoutManager', 'loading', 'do var self = this; var currentTabIndex = parseInt(params.tab || getDefaultTabIndex(params.topParentId)); var initialTabIndex = currentTabIndex; + var suggestionsTabIndex = 1; self.initTab = function () { - var tabContent = self.tabContent; - setScrollClasses(tabContent.querySelector('#resumableItems'), enableScrollX()); + var tabContent = view.querySelector(".pageTabContent[data-index='" + suggestionsTabIndex + "']"); + initSuggestedTab(view, tabContent); }; self.renderTab = function () { - reload(); + var tabContent = view.querySelector(".pageTabContent[data-index='" + suggestionsTabIndex + "']"); + loadSuggestionsTab(view, params, tabContent); }; var tabControllers = []; var renderedTabs = []; - setScrollClasses(view.querySelector('#resumableItems'), enableScrollX()); view.addEventListener('viewshow', function (e) { isViewRestored = e.detail.isRestored; initTabs(); diff --git a/src/tv.html b/src/tv.html index ceb5c51b44..c646ecdb44 100644 --- a/src/tv.html +++ b/src/tv.html @@ -23,8 +23,15 @@
    +
    +
    +

    ${HeaderLatestEpisodes}

    +
    -
    +
    +
    + +

    ${HeaderNextUp}

    @@ -33,16 +40,7 @@
    -
    -
    -
    -

    ${HeaderLatestEpisodes}

    -
    -
    -
    -
    -
    -
    +
    -
    +
    -
    +
    -
    +
    @@ -69,6 +67,6 @@
    -
    +
    From 429c47f414851bf95f24736ce2e08e370c397eac Mon Sep 17 00:00:00 2001 From: nyanmisaka Date: Thu, 25 Jun 2020 16:53:45 +0800 Subject: [PATCH 013/365] add tonemapping settings --- src/components/itemMediaInfo/itemMediaInfo.js | 12 +++++ src/components/playerstats/playerstats.js | 28 ++++++++++ src/controllers/dashboard/encodingsettings.js | 26 +++++++++ src/encodingsettings.html | 53 +++++++++++++++++++ src/strings/en-us.json | 26 ++++++++- src/strings/zh-cn.json | 26 ++++++++- 6 files changed, 169 insertions(+), 2 deletions(-) diff --git a/src/components/itemMediaInfo/itemMediaInfo.js b/src/components/itemMediaInfo/itemMediaInfo.js index 81c84b6a23..ad5f261ec6 100644 --- a/src/components/itemMediaInfo/itemMediaInfo.js +++ b/src/components/itemMediaInfo/itemMediaInfo.js @@ -90,6 +90,18 @@ define(['dialogHelper', 'require', 'layoutManager', 'globalize', 'userSettings', if (stream.BitDepth) { attributes.push(createAttribute(globalize.translate('MediaInfoBitDepth'), stream.BitDepth + ' bit')); } + if (stream.VideoRange) { + attributes.push(createAttribute(globalize.translate('MediaInfoVideoRange'), stream.VideoRange)); + } + if (stream.ColorSpace) { + attributes.push(createAttribute(globalize.translate('MediaInfoColorSpace'), stream.ColorSpace)); + } + if (stream.ColorTransfer) { + attributes.push(createAttribute(globalize.translate('MediaInfoColorTransfer'), stream.ColorTransfer)); + } + if (stream.ColorPrimaries) { + attributes.push(createAttribute(globalize.translate('MediaInfoColorPrimaries'), stream.ColorPrimaries)); + } if (stream.PixelFormat) { attributes.push(createAttribute(globalize.translate('MediaInfoPixelFormat'), stream.PixelFormat)); } diff --git a/src/components/playerstats/playerstats.js b/src/components/playerstats/playerstats.js index a65baf3553..e3fe6452f8 100644 --- a/src/components/playerstats/playerstats.js +++ b/src/components/playerstats/playerstats.js @@ -279,6 +279,34 @@ define(['events', 'globalize', 'playbackManager', 'connectionManager', 'syncPlay }); } + if (videoStream.VideoRange) { + sessionStats.push({ + label: globalize.translate('LabelVideoRange'), + value: videoStream.VideoRange + }); + } + + if (videoStream.ColorSpace) { + sessionStats.push({ + label: globalize.translate('LabelColorSpace'), + value: videoStream.ColorSpace + }); + } + + if (videoStream.ColorTransfer) { + sessionStats.push({ + label: globalize.translate('LabelColorTransfer'), + value: videoStream.ColorTransfer + }); + } + + if (videoStream.ColorPrimaries) { + sessionStats.push({ + label: globalize.translate('LabelColorPrimaries'), + value: videoStream.ColorPrimaries + }); + } + var audioInfos = []; if (audioCodec) { diff --git a/src/controllers/dashboard/encodingsettings.js b/src/controllers/dashboard/encodingsettings.js index 0f54f9d70f..d728321284 100644 --- a/src/controllers/dashboard/encodingsettings.js +++ b/src/controllers/dashboard/encodingsettings.js @@ -8,12 +8,20 @@ define(['jQuery', 'loading', 'globalize', 'dom', 'libraryMenu'], function ($, lo page.querySelector('#chkDecodingColorDepth10Hevc').checked = config.EnableDecodingColorDepth10Hevc; page.querySelector('#chkDecodingColorDepth10Vp9').checked = config.EnableDecodingColorDepth10Vp9; page.querySelector('#chkHardwareEncoding').checked = config.EnableHardwareEncoding; + page.querySelector('#chkTonemapping').checked = config.EnableTonemapping; $('#selectVideoDecoder', page).val(config.HardwareAccelerationType); $('#selectThreadCount', page).val(config.EncodingThreadCount); $('#txtDownMixAudioBoost', page).val(config.DownMixAudioBoost); page.querySelector('.txtEncoderPath').value = config.EncoderAppPathDisplay || ''; $('#txtTranscodingTempPath', page).val(systemInfo.TranscodingTempPath || ''); $('#txtVaapiDevice', page).val(config.VaapiDevice || ''); + $('#txtOpenclDevice', page).val(config.OpenclDevice || ''); + $('#selectTonemappingAlgorithm', page).val(config.TonemappingAlgorithm); + $('#selectTonemappingRange', page).val(config.TonemappingRange); + $('#txtTonemappingDesat', page).val(config.TonemappingDesat); + $('#txtTonemappingThreshold', page).val(config.TonemappingThreshold); + $('#txtTonemappingPeak', page).val(config.TonemappingPeak); + $('#txtTonemappingParam', page).val(config.TonemappingParam || ''); page.querySelector('#selectEncoderPreset').value = config.EncoderPreset || ''; page.querySelector('#txtH264Crf').value = config.H264Crf || ''; page.querySelector('#selectDeinterlaceMethod').value = config.DeinterlaceMethod || ''; @@ -59,6 +67,14 @@ define(['jQuery', 'loading', 'globalize', 'dom', 'libraryMenu'], function ($, lo config.EncodingThreadCount = $('#selectThreadCount', form).val(); config.HardwareAccelerationType = $('#selectVideoDecoder', form).val(); config.VaapiDevice = $('#txtVaapiDevice', form).val(); + config.OpenclDevice = $('#txtOpenclDevice', form).val(); + config.EnableTonemapping = form.querySelector('#chkTonemapping').checked; + config.TonemappingAlgorithm = form.querySelector('#selectTonemappingAlgorithm').value; + config.TonemappingRange = form.querySelector('#selectTonemappingRange').value; + config.TonemappingDesat = $('#txtTonemappingDesat', form).val(); + config.TonemappingThreshold = $('#txtTonemappingThreshold', form).val(); + config.TonemappingPeak = $('#txtTonemappingPeak', form).val(); + config.TonemappingParam = $('#txtTonemappingParam', form).val(); config.EncoderPreset = form.querySelector('#selectEncoderPreset').value; config.H264Crf = parseInt(form.querySelector('#txtH264Crf').value || '0'); config.DeinterlaceMethod = form.querySelector('#selectDeinterlaceMethod').value; @@ -141,6 +157,16 @@ define(['jQuery', 'loading', 'globalize', 'dom', 'libraryMenu'], function ($, lo page.querySelector('#txtVaapiDevice').removeAttribute('required'); } + if ('nvenc' == this.value) { + page.querySelector('.fldOpenclDevice').classList.remove('hide'); + page.querySelector('#txtOpenclDevice').setAttribute('required', 'required'); + page.querySelector('.tonemappingOptions').classList.remove('hide'); + } else { + page.querySelector('.fldOpenclDevice').classList.add('hide'); + page.querySelector('#txtOpenclDevice').removeAttribute('required'); + page.querySelector('.tonemappingOptions').classList.add('hide'); + } + if (this.value) { page.querySelector('.hardwareAccelerationOptions').classList.remove('hide'); } else { diff --git a/src/encodingsettings.html b/src/encodingsettings.html index 858375b145..c020df9121 100644 --- a/src/encodingsettings.html +++ b/src/encodingsettings.html @@ -31,6 +31,11 @@
    ${LabelVaapiDeviceHelp}
    +
    + +
    ${LabelOpenclDeviceHelp}
    +
    +

    ${LabelEnableHardwareDecodingFor}

    @@ -89,6 +94,54 @@
    +
    +
    + +
    ${AllowTonemappingHelp}
    +
    +
    + + +
    +
    + +
    ${TonemappingRangeHelp}
    +
    +
    + +
    ${LabelTonemappingDesatHelp}
    +
    +
    + +
    ${LabelTonemappingThresholdHelp}
    +
    +
    + +
    ${LabelTonemappingPeakHelp}
    +
    +
    + +
    ${LabelTonemappingParamHelp}
    +
    +
    +
    +
    + + +
    diff --git a/src/controllers/user/quickConnect/index.js b/src/controllers/user/quickConnect/index.js new file mode 100644 index 0000000000..80543a0b58 --- /dev/null +++ b/src/controllers/user/quickConnect/index.js @@ -0,0 +1,78 @@ +import QuickConnectSettings from 'quickConnectSettings'; +import globalize from 'globalize'; +import toast from 'toast'; + +export default function (view) { + let quickConnectSettingsInstance = null; + + view.addEventListener('viewshow', function () { + let codeElement = view.querySelector('#txtQuickConnectCode'); + + quickConnectSettingsInstance = new QuickConnectSettings({ + page: view, + interval: 0 + }); + + view.querySelector('#btnQuickConnectActivate').addEventListener('click', () => { + quickConnectSettingsInstance.activate(quickConnectSettingsInstance).then(() => { + renderPage(); + }); + }); + + view.querySelector('#btnQuickConnectAuthorize').addEventListener('click', () => { + if (!codeElement.validity.valid) { + toast(globalize.translate('QuickConnectInvalidCode')); + + return; + } + + let code = codeElement.value; + quickConnectSettingsInstance.authorize(code); + }); + + renderPage(); + }); + view.addEventListener('viewbeforehide', function () { + if (quickConnectSettingsInstance) { + quickConnectSettingsInstance.submit(); + } + onDestroy(); + }); + view.addEventListener('viewdestroy', function () { + onDestroy(); + }); + + function onDestroy() { + if (quickConnectSettingsInstance) { + quickConnectSettingsInstance.destroy(); + quickConnectSettingsInstance = null; + } + } + + function renderPage(forceActive = false) { + ApiClient.getQuickConnect('Status').then((status) => { + let btn = view.querySelector('#btnQuickConnectActivate'); + let container = view.querySelector('.quickConnectSettingsContainer'); + + // The activation button should only be visible when quick connect is unavailable (with the text replaced with an error) or when it is available (so it can be activated) + // The authorization container is only usable when quick connect is active, so it should be hidden otherwise + container.style.display = 'none'; + + if (status === 'Unavailable') { + btn.textContent = globalize.translate('QuickConnectNotAvailable'); + btn.disabled = true; + btn.classList.remove('button-submit'); + btn.classList.add('button'); + } else if (status === 'Active' || forceActive) { + container.style.display = ''; + btn.style.display = 'none'; + } + + return true; + }).catch((e) => { + throw e; + }); + } + + renderPage(); +} diff --git a/src/myPreferencesQuickConnect.html b/src/myPreferencesQuickConnect.html deleted file mode 100644 index 4f1f9febab..0000000000 --- a/src/myPreferencesQuickConnect.html +++ /dev/null @@ -1,11 +0,0 @@ -
    - - -
    -
    -
    ${MessagePleaseWait}
    - -
    -
    diff --git a/src/quickConnect.html b/src/quickconnect.html similarity index 89% rename from src/quickConnect.html rename to src/quickconnect.html index dff74eb836..671bb88d77 100644 --- a/src/quickConnect.html +++ b/src/quickconnect.html @@ -1,6 +1,6 @@
    -
    -
    +
    +

    ${QuickConnect}

    @@ -19,6 +19,6 @@ -
    +
    -
    \ No newline at end of file +
    diff --git a/src/scripts/routes.js b/src/scripts/routes.js index 3472d66496..ec623a485c 100644 --- a/src/scripts/routes.js +++ b/src/scripts/routes.js @@ -94,10 +94,11 @@ define([ controller: 'user/home/index' }); defineRoute({ - path: '/myPreferencesQuickConnect.html', + alias: '/mypreferencesquickconnect.html', + path: '/controllers/user/quickConnect/index.html', autoFocus: false, transition: 'fade', - controller: 'user/quickConnect' + controller: 'user/quickConnect/index' }); defineRoute({ alias: '/mypreferencesplayback.html', @@ -145,10 +146,10 @@ define([ controller: 'dashboard/devices/device' }); defineRoute({ - path: '/quickConnect.html', + path: '/quickconnect.html', autoFocus: false, roles: 'admin', - controller: "quickConnect" + controller: 'dashboard/quickconnect' }); defineRoute({ path: '/dlnaprofile.html', diff --git a/src/strings/en-us.json b/src/strings/en-us.json index 57a025d8b7..17e4662d2a 100644 --- a/src/strings/en-us.json +++ b/src/strings/en-us.json @@ -48,7 +48,7 @@ "AuthProviderHelp": "Select an Authentication Provider to be used to authenticate this user's password.", "Auto": "Auto", "AutoBasedOnLanguageSetting": "Auto (based on language setting)", - "Authorize": "authorize", + "Authorize": "Authorize", "Backdrop": "Backdrop", "Backdrops": "Backdrops", "Banner": "Banner", @@ -816,6 +816,7 @@ "LabelPublicHttpPortHelp": "The public port number that should be mapped to the local HTTP port.", "LabelPublicHttpsPort": "Public HTTPS port number:", "LabelPublicHttpsPortHelp": "The public port number that should be mapped to the local HTTPS port.", + "LabelQuickConnectCode": "Quick connect code:", "LabelReadHowYouCanContribute": "Learn how you can contribute.", "LabelReasonForTranscoding": "Reason for transcoding:", "LabelRecord": "Record:", @@ -1322,8 +1323,12 @@ "QuickConnect": "Quick Connect", "QuickConnectActivationSuccessful": "Successfully activated", "QuickConnectAuthorizeCode": "Authorize request {0} to continue", - "QuickConnectNoPending": "No pending login requests", - "QuickConnectNotAvailable": "Quick connect is not available on this server", + "QuickConnectAuthorizeSuccess": "Request authorized", + "QuickConnectAuthorizeFail": "Unknown quick connect code", + "QuickConnectDescription": "To sign in with quick connect, select the Quick Connect button on the device you are logging in from and enter the displayed code below.", + "QuickConnectInvalidCode": "Invalid quick connect code", + "QuickConnectNotAvailable": "Ask your server administrator to enable quick connect", + "QuickConnectNotActive": "Quick connect is not active on this server", "Raised": "Raised", "Rate": "Rate", "RecentlyWatched": "Recently watched", From 5b9533c927fb9981461c8cd5697583be202ebbb8 Mon Sep 17 00:00:00 2001 From: nyanmisaka Date: Wed, 19 Aug 2020 18:00:13 +0800 Subject: [PATCH 016/365] minor changes --- src/controllers/dashboard/encodingsettings.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/controllers/dashboard/encodingsettings.js b/src/controllers/dashboard/encodingsettings.js index d33e7fa7e8..05d5d9b31c 100644 --- a/src/controllers/dashboard/encodingsettings.js +++ b/src/controllers/dashboard/encodingsettings.js @@ -79,7 +79,7 @@ import libraryMenu from 'libraryMenu'; config.TonemappingDesat = form.querySelector('#txtTonemappingDesat').value; config.TonemappingThreshold = form.querySelector('#txtTonemappingThreshold').value; config.TonemappingPeak = form.querySelector('#txtTonemappingPeak').value; - config.TonemappingParam = form.querySelector('#txtTonemappingParam').value; + config.TonemappingParam = form.querySelector('#txtTonemappingParam').value || '0'; config.EncoderPreset = form.querySelector('#selectEncoderPreset').value; config.H264Crf = parseInt(form.querySelector('#txtH264Crf').value || '0'); config.DeinterlaceMethod = form.querySelector('#selectDeinterlaceMethod').value; @@ -162,7 +162,7 @@ import libraryMenu from 'libraryMenu'; page.querySelector('#txtVaapiDevice').removeAttribute('required'); } - if ('nvenc' == this.value) { + if (this.value == 'nvenc') { page.querySelector('.fldOpenclDevice').classList.remove('hide'); page.querySelector('#txtOpenclDevice').setAttribute('required', 'required'); page.querySelector('.tonemappingOptions').classList.remove('hide'); From 9f92c1d158b1c01b279eb9b46f70c06d93986f22 Mon Sep 17 00:00:00 2001 From: nyanmisaka Date: Tue, 25 Aug 2020 01:57:21 +0800 Subject: [PATCH 017/365] expose max_muxing_queue_size to user --- src/controllers/dashboard/encodingsettings.html | 4 ++++ src/controllers/dashboard/encodingsettings.js | 2 ++ src/strings/.en-us.json.swp | Bin 0 -> 16384 bytes src/strings/en-us.json | 4 +++- src/strings/zh-cn.json | 4 +++- 5 files changed, 12 insertions(+), 2 deletions(-) create mode 100644 src/strings/.en-us.json.swp diff --git a/src/controllers/dashboard/encodingsettings.html b/src/controllers/dashboard/encodingsettings.html index 402532e600..4032939a89 100644 --- a/src/controllers/dashboard/encodingsettings.html +++ b/src/controllers/dashboard/encodingsettings.html @@ -129,6 +129,10 @@
    ${LabelDownMixAudioScaleHelp}
    +
    + +
    ${LabelMaxMuxingQueueSizeHelp}
    +
    @@ -47,32 +45,18 @@ - - - - - - - -
    + +
    + + + +
    diff --git a/src/controllers/playback/video/index.js b/src/controllers/playback/video/index.js index 420268ea75..5da8ec45d8 100644 --- a/src/controllers/playback/video/index.js +++ b/src/controllers/playback/video/index.js @@ -21,50 +21,6 @@ import 'css!assets/css/videoosd'; /* eslint-disable indent */ - function seriesImageUrl(item, options) { - if (item.Type !== 'Episode') { - return null; - } - - options = options || {}; - options.type = options.type || 'Primary'; - if (options.type === 'Primary' && item.SeriesPrimaryImageTag) { - options.tag = item.SeriesPrimaryImageTag; - return connectionManager.getApiClient(item.ServerId).getScaledImageUrl(item.SeriesId, options); - } - - if (options.type === 'Thumb') { - if (item.SeriesThumbImageTag) { - options.tag = item.SeriesThumbImageTag; - return connectionManager.getApiClient(item.ServerId).getScaledImageUrl(item.SeriesId, options); - } - - if (item.ParentThumbImageTag) { - options.tag = item.ParentThumbImageTag; - return connectionManager.getApiClient(item.ServerId).getScaledImageUrl(item.ParentThumbItemId, options); - } - } - - return null; - } - - function imageUrl(item, options) { - options = options || {}; - options.type = options.type || 'Primary'; - - if (item.ImageTags && item.ImageTags[options.type]) { - options.tag = item.ImageTags[options.type]; - return connectionManager.getApiClient(item.ServerId).getScaledImageUrl(item.PrimaryImageItemId || item.Id, options); - } - - if (options.type === 'Primary' && item.AlbumId && item.AlbumPrimaryImageTag) { - options.tag = item.AlbumPrimaryImageTag; - return connectionManager.getApiClient(item.ServerId).getScaledImageUrl(item.AlbumId, options); - } - - return null; - } - function getOpenedDialog() { return document.querySelector('.dialogContainer .dialog.opened'); } @@ -164,7 +120,6 @@ import 'css!assets/css/videoosd'; currentItem = item; const displayItem = itemInfo.displayItem || item; updateRecordingButton(displayItem); - setPoster(displayItem, item); let parentName = displayItem.SeriesName || displayItem.Album; if (displayItem.EpisodeTitle || displayItem.IsSeries) { @@ -172,42 +127,6 @@ import 'css!assets/css/videoosd'; } setTitle(displayItem, parentName); - const titleElement = view.querySelector('.osdTitle'); - let displayName = itemHelper.getDisplayName(displayItem, { - includeParentInfo: displayItem.Type !== 'Program', - includeIndexNumber: displayItem.Type !== 'Program' - }); - - if (!displayName) { - displayName = displayItem.Type; - } - - titleElement.innerHTML = displayName; - - if (displayName) { - titleElement.classList.remove('hide'); - } else { - titleElement.classList.add('hide'); - } - - const mediaInfoHtml = mediaInfo.getPrimaryMediaInfoHtml(displayItem, { - runtime: false, - subtitles: false, - tomatoes: false, - endsAt: false, - episodeTitle: false, - originalAirDate: displayItem.Type !== 'Program', - episodeTitleIndexNumber: displayItem.Type !== 'Program', - programIndicator: false - }); - const osdMediaInfo = view.querySelector('.osdMediaInfo'); - osdMediaInfo.innerHTML = mediaInfoHtml; - - if (mediaInfoHtml) { - osdMediaInfo.classList.remove('hide'); - } else { - osdMediaInfo.classList.add('hide'); - } const secondaryMediaInfo = view.querySelector('.osdSecondaryMediaInfo'); const secondaryMediaInfoHtml = mediaInfo.getSecondaryMediaInfoHtml(displayItem, { @@ -222,12 +141,6 @@ import 'css!assets/css/videoosd'; secondaryMediaInfo.classList.add('hide'); } - if (displayName) { - view.querySelector('.osdMainTextContainer').classList.remove('hide'); - } else { - view.querySelector('.osdMainTextContainer').classList.add('hide'); - } - if (enableProgressByTimeOfDay) { setDisplayTime(startTimeText, displayItem.StartDate); setDisplayTime(endTimeText, displayItem.EndDate); @@ -277,7 +190,6 @@ import 'css!assets/css/videoosd'; currentItem = item; if (!item) { - setPoster(null); updateRecordingButton(null); Emby.Page.setTitle(''); nowPlayingVolumeSlider.disabled = true; @@ -314,7 +226,20 @@ import 'css!assets/css/videoosd'; } function setTitle(item, parentName) { - Emby.Page.setTitle(parentName || ''); + let itemName = itemHelper.getDisplayName(item, { + includeParentInfo: item.Type !== 'Program', + includeIndexNumber: item.Type !== 'Program' + }); + + if (itemName && parentName) { + itemName = `${parentName} - ${itemName}`; + } + + if (!itemName) { + itemName = parentName || ''; + } + + Emby.Page.setTitle(itemName); const documentTitle = parentName || (item ? item.Name : null); @@ -323,38 +248,6 @@ import 'css!assets/css/videoosd'; } } - function setPoster(item, secondaryItem) { - const osdPoster = view.querySelector('.osdPoster'); - - if (item) { - let imgUrl = seriesImageUrl(item, { - maxWidth: osdPoster.clientWidth, - type: 'Primary' - }) || seriesImageUrl(item, { - maxWidth: osdPoster.clientWidth, - type: 'Thumb' - }) || imageUrl(item, { - maxWidth: osdPoster.clientWidth, - type: 'Primary' - }); - - if (!imgUrl && secondaryItem && (imgUrl = seriesImageUrl(secondaryItem, { - maxWidth: osdPoster.clientWidth, - type: 'Primary' - }) || seriesImageUrl(secondaryItem, { - maxWidth: osdPoster.clientWidth, - type: 'Thumb' - }) || imageUrl(secondaryItem, { - maxWidth: osdPoster.clientWidth, - type: 'Primary' - })), imgUrl) { - return void (osdPoster.innerHTML = ''); - } - } - - osdPoster.innerHTML = ''; - } - let mouseIsDown = false; function showOsd() { From 3f592881583d18025f8475b58e3f2366a56225e4 Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Thu, 20 Aug 2020 20:39:33 +0200 Subject: [PATCH 019/365] Improve Up Next dialog --- src/assets/css/videoosd.css | 51 +++++--------------- src/components/mediainfo/mediainfo.js | 12 ++--- src/components/upnextdialog/upnextdialog.css | 23 +++++++-- src/components/upnextdialog/upnextdialog.js | 13 +++-- 4 files changed, 44 insertions(+), 55 deletions(-) diff --git a/src/assets/css/videoosd.css b/src/assets/css/videoosd.css index 7273121f53..9995a7ff84 100644 --- a/src/assets/css/videoosd.css +++ b/src/assets/css/videoosd.css @@ -6,18 +6,29 @@ -ms-user-select: none; } -.osdPoster img, .videoOsdBottom { bottom: 0; left: 0; right: 0; + position: fixed; + background: linear-gradient(0deg, rgba(16, 16, 16, 0.6) 0%, rgba(16, 16, 16, 0) 100%); + padding-top: 7.5em; + padding-bottom: 1.75em; + display: flex; + flex-direction: row; + justify-content: center; + will-change: opacity; + transition: opacity 0.3s ease-out; + color: #fff; + user-select: none; + -webkit-touch-callout: none; } .osdHeader { transition: opacity 0.3s ease-out; position: relative; z-index: 1; - background: linear-gradient(180deg, rgba(16, 16 16, 0.75) 0%, rgba(16, 16, 16, 0.15) 80%, rgba(16, 16, 16, 0) 100%); + background: linear-gradient(180deg, rgba(16, 16, 16, 0.6) 0%, rgba(16, 16, 16, 0) 100%); backdrop-filter: none; color: #eee; height: 7.5em; @@ -88,21 +99,6 @@ opacity: 0.6; } -.videoOsdBottom { - position: fixed; - background: linear-gradient(0deg, rgba(16, 16, 16, 0.75) 0%, rgba(16, 16, 16, 0.15) 80%, rgba(16, 16, 16, 0) 100%); - padding-top: 10em; - padding-bottom: 1.75em; - display: flex; - flex-direction: row; - justify-content: center; - will-change: opacity; - transition: opacity 0.3s ease-out; - color: #fff; - user-select: none; - -webkit-touch-callout: none; -} - .videoOsdBottom-hidden { opacity: 0; } @@ -157,27 +153,6 @@ user-select: none; } -.osdPoster { - width: 10%; - position: relative; - margin-right: 0.5em; -} - -.osdPoster img { - position: absolute; - height: auto; - width: 100%; - -webkit-box-shadow: 0 0 1.9vh #000; - box-shadow: 0 0 1.9vh #000; - border: 0.08em solid #222; - user-drag: none; - user-select: none; - -moz-user-select: none; - -webkit-user-drag: none; - -webkit-user-select: none; - -ms-user-select: none; -} - .osdTitle, .osdTitleSmall { margin: 0 1em 0 0; diff --git a/src/components/mediainfo/mediainfo.js b/src/components/mediainfo/mediainfo.js index 1d78d490a2..d5da29d3bc 100644 --- a/src/components/mediainfo/mediainfo.js +++ b/src/components/mediainfo/mediainfo.js @@ -100,11 +100,10 @@ import 'emby-button'; return html; } - export function getMediaInfoHtml(item, options) { + export function getMediaInfoHtml(item, options = {}) { let html = ''; const miscInfo = []; - options = options || {}; let text; let date; let minutes; @@ -289,7 +288,9 @@ import 'emby-button'; return getMediaInfoItem(m); }).join(''); - html += getStarIconsHtml(item); + if (options.starRating !== false) { + html += getStarIconsHtml(item); + } if (item.HasSubtitles && options.subtitles !== false) { html += '
    CC
    '; @@ -418,9 +419,8 @@ import 'emby-button'; return false; } - export function getPrimaryMediaInfoHtml(item, options) { - options = options || {}; - if (options.interactive == null) { + export function getPrimaryMediaInfoHtml(item, options = {}) { + if (options.interactive === undefined) { options.interactive = false; } diff --git a/src/components/upnextdialog/upnextdialog.css b/src/components/upnextdialog/upnextdialog.css index 067804919f..754fd418ca 100644 --- a/src/components/upnextdialog/upnextdialog.css +++ b/src/components/upnextdialog/upnextdialog.css @@ -1,9 +1,24 @@ -.upNextDialog { - width: 30vw; +.upNextContainer { + box-sizing: border-box; position: fixed; - left: auto; + top: 0; bottom: 0; - right: 0; + left: 50%; + transform: translateX(-50%); + padding: 1em; + display: flex; + flex-grow: 1; + width: calc(100vh * (16 / 9)); + height: 100vh; + justify-content: end; + align-items: flex-end; +} + +.upNextDialog-container { + border-radius: 5px; + width: 30em; + height: 11em; + left: auto; padding: 1%; display: flex; flex-direction: column; diff --git a/src/components/upnextdialog/upnextdialog.js b/src/components/upnextdialog/upnextdialog.js index c665d81173..8d3202cc1c 100644 --- a/src/components/upnextdialog/upnextdialog.js +++ b/src/components/upnextdialog/upnextdialog.js @@ -17,9 +17,7 @@ import 'flexStyles'; function getHtml() { let html = ''; - html += '
    '; - html += '
    '; - + html += '
    '; html += '
    '; html += '

     

    '; @@ -29,8 +27,6 @@ import 'flexStyles'; html += '
    '; html += '
    '; - html += '
    '; - html += '
    '; html += '
    '; + html += '
    '; return html; } @@ -73,9 +70,11 @@ import 'flexStyles'; const elem = instance.options.parent; - elem.querySelector('.upNextDialog-overview').innerHTML = item.Overview || ''; - elem.querySelector('.upNextDialog-mediainfo').innerHTML = mediaInfo.getPrimaryMediaInfoHtml(item, { + criticRating: false, + originalAirDate: false, + starRating: false, + subtitles: false }); let title = itemHelper.getDisplayName(item); From e38fa15e4d40d1ccc6e51e10bb6052502317adea Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Sat, 22 Aug 2020 02:38:06 +0200 Subject: [PATCH 020/365] Constrain width only on desktop --- src/assets/css/videoosd.css | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/assets/css/videoosd.css b/src/assets/css/videoosd.css index 9995a7ff84..a23a4cf8ee 100644 --- a/src/assets/css/videoosd.css +++ b/src/assets/css/videoosd.css @@ -105,10 +105,13 @@ .osdControls { flex-grow: 1; - max-width: calc(100vh * 1.77); padding: 0 0.8em; } +.layout-desktop .osdControls { + max-width: calc(100vh * 1.77 - 2vh); +} + .videoOsdBottom .buttons { padding: 0.25em 0 0; display: -webkit-box; From 1812df57ad9a45c40b24378f5bc35953bceead40 Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Sat, 22 Aug 2020 14:07:54 +0200 Subject: [PATCH 021/365] Fix up next dialog on Chrome --- src/components/upnextdialog/upnextdialog.css | 67 ++++---------------- src/components/upnextdialog/upnextdialog.js | 2 - 2 files changed, 11 insertions(+), 58 deletions(-) diff --git a/src/components/upnextdialog/upnextdialog.css b/src/components/upnextdialog/upnextdialog.css index 754fd418ca..efb0366488 100644 --- a/src/components/upnextdialog/upnextdialog.css +++ b/src/components/upnextdialog/upnextdialog.css @@ -1,25 +1,10 @@ .upNextContainer { - box-sizing: border-box; position: fixed; - top: 0; + right: 0; bottom: 0; - left: 50%; - transform: translateX(-50%); - padding: 1em; - display: flex; - flex-grow: 1; - width: calc(100vh * (16 / 9)); - height: 100vh; - justify-content: end; - align-items: flex-end; -} - -.upNextDialog-container { - border-radius: 5px; width: 30em; - height: 11em; - left: auto; - padding: 1%; + padding: 1em; + margin: 0 2em 2em 0; display: flex; flex-direction: column; will-change: transform, opacity; @@ -38,18 +23,18 @@ font-weight: 500; } -.upNextDialog-poster { - display: none; - max-width: 40%; - max-height: 15%; - position: relative; - margin-right: 1em; - flex-shrink: 0; - margin-bottom: 0.5em; +.upNextDialog-nextVideoText, +.upNextDialog-title { + width: 25.5em; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; } .upNextDialog-buttons { + width: 29.75em; justify-content: end; + align-content: flex-end; } .upNextDialog-button { @@ -61,34 +46,4 @@ .upNextDialog { flex-direction: row; } - - .upNextDialog-poster { - max-width: initial; - max-height: initial; - width: 30%; - margin-bottom: 0; - } -} - -@media all and (max-width: 50em) { - .upNextDialog-overview { - display: none !important; - } -} - -.upNextDialog-poster-img { - position: absolute; - bottom: 0; - left: 0; - right: 0; - height: auto; - width: 100%; - box-shadow: 0 0.0725em 0.29em 0 rgba(0, 0, 0, 0.37); - user-drag: none; - border: 0; - user-select: none; - -moz-user-select: none; - -webkit-user-drag: none; - -webkit-user-select: none; - -ms-user-select: none; } diff --git a/src/components/upnextdialog/upnextdialog.js b/src/components/upnextdialog/upnextdialog.js index 8d3202cc1c..1d55556710 100644 --- a/src/components/upnextdialog/upnextdialog.js +++ b/src/components/upnextdialog/upnextdialog.js @@ -17,7 +17,6 @@ import 'flexStyles'; function getHtml() { let html = ''; - html += '
    '; html += '
    '; html += '

     

    '; @@ -42,7 +41,6 @@ import 'flexStyles'; // main html += '
    '; - html += '
    '; return html; } From 02015aaa9c60e727242c34363a7130d2c069a831 Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Sat, 29 Aug 2020 18:32:42 +0200 Subject: [PATCH 022/365] Adjust OSD color for WCAG compliance --- src/assets/css/videoosd.css | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/assets/css/videoosd.css b/src/assets/css/videoosd.css index a23a4cf8ee..f0792c2c45 100644 --- a/src/assets/css/videoosd.css +++ b/src/assets/css/videoosd.css @@ -11,7 +11,7 @@ left: 0; right: 0; position: fixed; - background: linear-gradient(0deg, rgba(16, 16, 16, 0.6) 0%, rgba(16, 16, 16, 0) 100%); + background: linear-gradient(0deg, rgba(16, 16, 16, 0.75) 0%, rgba(16, 16, 16, 0) 100%); padding-top: 7.5em; padding-bottom: 1.75em; display: flex; @@ -28,7 +28,7 @@ transition: opacity 0.3s ease-out; position: relative; z-index: 1; - background: linear-gradient(180deg, rgba(16, 16, 16, 0.6) 0%, rgba(16, 16, 16, 0) 100%); + background: linear-gradient(180deg, rgba(16, 16, 16, 0.75) 0%, rgba(16, 16, 16, 0) 100%); backdrop-filter: none; color: #eee; height: 7.5em; From 0db000e5b51b1a66cb7b6150879314b8e3d2918e Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Sun, 30 Aug 2020 13:47:37 +0200 Subject: [PATCH 023/365] Fix CSS selector for top OSD header --- src/assets/css/videoosd.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/assets/css/videoosd.css b/src/assets/css/videoosd.css index f0792c2c45..b2446d5d48 100644 --- a/src/assets/css/videoosd.css +++ b/src/assets/css/videoosd.css @@ -24,7 +24,7 @@ -webkit-touch-callout: none; } -.osdHeader { +.skinHeader-withBackground.osdHeader { transition: opacity 0.3s ease-out; position: relative; z-index: 1; From 8900da42d8f08b1700e04e3296203c49f2dd7aac Mon Sep 17 00:00:00 2001 From: Cameron Date: Tue, 1 Sep 2020 10:07:06 +0100 Subject: [PATCH 024/365] Hide Alphapicker when not sorting alphabetically (movies --- src/controllers/movies/movies.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/controllers/movies/movies.js b/src/controllers/movies/movies.js index 91b428ec68..d48812cb94 100644 --- a/src/controllers/movies/movies.js +++ b/src/controllers/movies/movies.js @@ -26,6 +26,11 @@ import 'emby-itemscontainer'; const updateFilterControls = () => { if (this.alphaPicker) { this.alphaPicker.value(query.NameStartsWithOrGreater); + if (query.SortBy.indexOf('SortName') === 0) { + this.alphaPicker.visible(true); + } else { + this.alphaPicker.visible(false); + } } }; From 477ecfdc9fd8fe2185a8aab9e7c0b06152f8887e Mon Sep 17 00:00:00 2001 From: Cameron Date: Tue, 1 Sep 2020 10:09:22 +0100 Subject: [PATCH 025/365] Hide Alphapicker when not sorting alphabetically (TV) --- src/controllers/shows/tvshows.js | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/controllers/shows/tvshows.js b/src/controllers/shows/tvshows.js index 281c921e48..31ef72621d 100644 --- a/src/controllers/shows/tvshows.js +++ b/src/controllers/shows/tvshows.js @@ -198,7 +198,16 @@ import 'emby-itemscontainer'; function updateFilterControls(tabContent) { const query = getQuery(tabContent); - self.alphaPicker.value(query.NameStartsWithOrGreater); + + if (self.alphaPicker) { + self.alphaPicker.value(query.NameStartsWithOrGreater); + + if (query.SortBy.indexOf('SortName') === 0) { + self.alphaPicker.visible(true); + } else { + self.alphaPicker.visible(false); + } + } } const self = this; From d8cb6068940d56034a92314754d2b3fdb0d08cef Mon Sep 17 00:00:00 2001 From: Cameron Date: Tue, 1 Sep 2020 10:09:28 +0100 Subject: [PATCH 026/365] Hide Alphapicker when not sorting alphabetically (Music) --- src/controllers/music/musicalbums.js | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/controllers/music/musicalbums.js b/src/controllers/music/musicalbums.js index 7ea8fa254a..5bb8546e76 100644 --- a/src/controllers/music/musicalbums.js +++ b/src/controllers/music/musicalbums.js @@ -186,7 +186,16 @@ import 'emby-itemscontainer'; const updateFilterControls = (tabContent) => { const query = getQuery(); - this.alphaPicker.value(query.NameStartsWithOrGreater); + + if (this.alphaPicker) { + this.alphaPicker.value(query.NameStartsWithOrGreater); + + if (query.SortBy.indexOf('SortName') === 0) { + this.alphaPicker.visible(true); + } else { + this.alphaPicker.visible(false); + } + } }; let savedQueryKey; From ab7fafa891b5c26ec758424a91c594fed7e03efb Mon Sep 17 00:00:00 2001 From: Cameron Date: Tue, 1 Sep 2020 10:12:10 +0100 Subject: [PATCH 027/365] Remove ailiasing this --- src/controllers/shows/tvshows.js | 47 ++++++++++++++++---------------- 1 file changed, 23 insertions(+), 24 deletions(-) diff --git a/src/controllers/shows/tvshows.js b/src/controllers/shows/tvshows.js index 31ef72621d..17407e4c5d 100644 --- a/src/controllers/shows/tvshows.js +++ b/src/controllers/shows/tvshows.js @@ -54,8 +54,8 @@ import 'emby-itemscontainer'; return context.savedQueryKey; } - function onViewStyleChange() { - const viewStyle = self.getCurrentViewStyle(); + const onViewStyleChange = () => { + const viewStyle = this.getCurrentViewStyle(); const itemsContainer = tabContent.querySelector('.itemsContainer'); if (viewStyle == 'List') { @@ -67,13 +67,13 @@ import 'emby-itemscontainer'; } itemsContainer.innerHTML = ''; - } + }; - function reloadItems(page) { + const reloadItems = (page) => { loading.show(); isLoading = true; const query = getQuery(page); - ApiClient.getItems(ApiClient.getCurrentUserId(), query).then(function (result) { + ApiClient.getItems(ApiClient.getCurrentUserId(), query).then((result) => { function onNextPageClick() { if (isLoading) { return; @@ -109,7 +109,7 @@ import 'emby-itemscontainer'; sortButton: false, filterButton: false }); - const viewStyle = self.getCurrentViewStyle(); + const viewStyle = this.getCurrentViewStyle(); if (viewStyle == 'Thumb') { html = cardBuilder.getCardsHtml({ items: result.Items, @@ -196,25 +196,24 @@ import 'emby-itemscontainer'; }); } - function updateFilterControls(tabContent) { + const updateFilterControls = (tabContent) => { const query = getQuery(tabContent); - if (self.alphaPicker) { - self.alphaPicker.value(query.NameStartsWithOrGreater); + if (this.alphaPicker) { + this.alphaPicker.value(query.NameStartsWithOrGreater); if (query.SortBy.indexOf('SortName') === 0) { - self.alphaPicker.visible(true); + this.alphaPicker.visible(true); } else { - self.alphaPicker.visible(false); + this.alphaPicker.visible(false); } } - } + }; - const self = this; const data = {}; let isLoading = false; - self.showFilterMenu = function () { + this.showFilterMenu = function () { import('components/filterdialog/filterdialog').then(({default: filterDialogFactory}) => { const filterDialog = new filterDialogFactory({ query: getQuery(tabContent), @@ -229,11 +228,11 @@ import 'emby-itemscontainer'; }); }; - self.getCurrentViewStyle = function () { + this.getCurrentViewStyle = function () { return getPageData(tabContent).view; }; - function initPage(tabContent) { + const initPage = (tabContent) => { const alphaPickerElement = tabContent.querySelector('.alphaPicker'); const itemsContainer = tabContent.querySelector('.itemsContainer'); @@ -244,7 +243,7 @@ import 'emby-itemscontainer'; query.StartIndex = 0; reloadItems(tabContent); }); - self.alphaPicker = new AlphaPicker({ + this.alphaPicker = new AlphaPicker({ element: alphaPickerElement, valueChangeEvent: 'click' }); @@ -253,8 +252,8 @@ import 'emby-itemscontainer'; alphaPickerElement.classList.add('alphaPicker-fixed-right'); itemsContainer.classList.add('padded-right-withalphapicker'); - tabContent.querySelector('.btnFilter').addEventListener('click', function () { - self.showFilterMenu(); + tabContent.querySelector('.btnFilter').addEventListener('click', () => { + this.showFilterMenu(); }); tabContent.querySelector('.btnSort').addEventListener('click', function (e) { libraryBrowser.showSortMenu({ @@ -286,8 +285,8 @@ import 'emby-itemscontainer'; }); }); const btnSelectView = tabContent.querySelector('.btnSelectView'); - btnSelectView.addEventListener('click', function (e) { - libraryBrowser.showLayoutMenu(e.target, self.getCurrentViewStyle(), 'Banner,List,Poster,PosterCard,Thumb,ThumbCard'.split(',')); + btnSelectView.addEventListener('click', (e) => { + libraryBrowser.showLayoutMenu(e.target, this.getCurrentViewStyle(), 'Banner,List,Poster,PosterCard,Thumb,ThumbCard'.split(',')); }); btnSelectView.addEventListener('layoutchange', function (e) { const viewStyle = e.detail.viewStyle; @@ -297,17 +296,17 @@ import 'emby-itemscontainer'; onViewStyleChange(); reloadItems(tabContent); }); - } + }; initPage(tabContent); onViewStyleChange(); - self.renderTab = function () { + this.renderTab = function () { reloadItems(tabContent); updateFilterControls(tabContent); }; - self.destroy = function () {}; + this.destroy = function () {}; } /* eslint-enable indent */ From 840ef01a1303582584b914a31c650822fe57c6b5 Mon Sep 17 00:00:00 2001 From: Cameron Date: Tue, 1 Sep 2020 10:13:15 +0100 Subject: [PATCH 028/365] Replace loops for for..of --- src/controllers/shows/tvshows.js | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/controllers/shows/tvshows.js b/src/controllers/shows/tvshows.js index 17407e4c5d..7d76c78faa 100644 --- a/src/controllers/shows/tvshows.js +++ b/src/controllers/shows/tvshows.js @@ -169,18 +169,18 @@ import 'emby-itemscontainer'; let elems = tabContent.querySelectorAll('.paging'); - for (let i = 0, length = elems.length; i < length; i++) { - elems[i].innerHTML = pagingHtml; + for (const elem of elems) { + elem.innerHTML = pagingHtml; } elems = tabContent.querySelectorAll('.btnNextPage'); - for (let i = 0, length = elems.length; i < length; i++) { - elems[i].addEventListener('click', onNextPageClick); + for (const elem of elems) { + elem.addEventListener('click', onNextPageClick); } elems = tabContent.querySelectorAll('.btnPreviousPage'); - for (let i = 0, length = elems.length; i < length; i++) { - elems[i].addEventListener('click', onPreviousPageClick); + for (const elem of elems) { + elem.addEventListener('click', onPreviousPageClick); } const itemsContainer = tabContent.querySelector('.itemsContainer'); @@ -194,7 +194,7 @@ import 'emby-itemscontainer'; autoFocuser.autoFocus(page); }); }); - } + }; const updateFilterControls = (tabContent) => { const query = getQuery(tabContent); From 4968f71858834e0ad29f9ad446698d0faa2e808d Mon Sep 17 00:00:00 2001 From: Cameron Date: Tue, 1 Sep 2020 10:14:14 +0100 Subject: [PATCH 029/365] Replace loops for for..of --- src/controllers/music/musicalbums.js | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/src/controllers/music/musicalbums.js b/src/controllers/music/musicalbums.js index 5bb8546e76..5ecb553024 100644 --- a/src/controllers/music/musicalbums.js +++ b/src/controllers/music/musicalbums.js @@ -155,20 +155,21 @@ import 'emby-itemscontainer'; overlayPlayButton: true }); } + let elems = tabContent.querySelectorAll('.paging'); - for (let i = 0, length = elems.length; i < length; i++) { - elems[i].innerHTML = pagingHtml; + for (const elem of elems) { + elem.innerHTML = pagingHtml; } elems = tabContent.querySelectorAll('.btnNextPage'); - for (let i = 0, length = elems.length; i < length; i++) { - elems[i].addEventListener('click', onNextPageClick); + for (const elem of elems) { + elem.addEventListener('click', onNextPageClick); } elems = tabContent.querySelectorAll('.btnPreviousPage'); - for (let i = 0, length = elems.length; i < length; i++) { - elems[i].addEventListener('click', onPreviousPageClick); + for (const elem of elems) { + elem.addEventListener('click', onPreviousPageClick); } const itemsContainer = tabContent.querySelector('.itemsContainer'); @@ -209,10 +210,12 @@ import 'emby-itemscontainer'; mode: 'albums', serverId: ApiClient.serverId() }); + events.on(filterDialog, 'filterchange', function () { getQuery().StartIndex = 0; reloadItems(tabContent); }); + filterDialog.show(); }); }; @@ -232,6 +235,7 @@ import 'emby-itemscontainer'; query.StartIndex = 0; reloadItems(tabContent); }); + this.alphaPicker = new AlphaPicker({ element: alphaPickerElement, valueChangeEvent: 'click' @@ -244,6 +248,7 @@ import 'emby-itemscontainer'; tabContent.querySelector('.btnFilter').addEventListener('click', () => { this.showFilterMenu(); }); + tabContent.querySelector('.btnSort').addEventListener('click', (e) => { libraryBrowser.showSortMenu({ items: [{ @@ -276,10 +281,12 @@ import 'emby-itemscontainer'; button: e.target }); }); + const btnSelectView = tabContent.querySelector('.btnSelectView'); btnSelectView.addEventListener('click', (e) => { libraryBrowser.showLayoutMenu(e.target, this.getCurrentViewStyle(), 'List,Poster,PosterCard'.split(',')); }); + btnSelectView.addEventListener('layoutchange', function (e) { const viewStyle = e.detail.viewStyle; getPageData().view = viewStyle; @@ -288,6 +295,7 @@ import 'emby-itemscontainer'; onViewStyleChange(); reloadItems(tabContent); }); + tabContent.querySelector('.btnPlayAll').addEventListener('click', playAll); tabContent.querySelector('.btnShuffle').addEventListener('click', shuffle); }; From f7d0b9491619262a8e420552872d16a6a5b9ca49 Mon Sep 17 00:00:00 2001 From: Dmitry Lyzo Date: Tue, 1 Sep 2020 13:32:12 +0300 Subject: [PATCH 030/365] Babel libarchive --- webpack.dev.js | 2 +- webpack.prod.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/webpack.dev.js b/webpack.dev.js index 3d0c2a48a0..33e171daa8 100644 --- a/webpack.dev.js +++ b/webpack.dev.js @@ -15,7 +15,7 @@ module.exports = merge(common, { rules: [ { test: /\.js$/, - exclude: /node_modules[\\/](?!date-fns|epubjs|jellyfin-apiclient|query-string|split-on-first|strict-uri-encode|xmldom)/, + exclude: /node_modules[\\/](?!date-fns|epubjs|libarchive|jellyfin-apiclient|query-string|split-on-first|strict-uri-encode|xmldom)/, use: { loader: 'babel-loader', options: { diff --git a/webpack.prod.js b/webpack.prod.js index 52d6d0a865..408eb4bb59 100644 --- a/webpack.prod.js +++ b/webpack.prod.js @@ -8,7 +8,7 @@ module.exports = merge(common, { rules: [ { test: /\.js$/, - exclude: /node_modules[\\/](?!date-fns|epubjs|jellyfin-apiclient|query-string|split-on-first|strict-uri-encode|xmldom)/, + exclude: /node_modules[\\/](?!date-fns|epubjs|libarchive|jellyfin-apiclient|query-string|split-on-first|strict-uri-encode|xmldom)/, use: { loader: 'babel-loader', options: { From eccaad366e6150c7dfa2010275714ee8dba8aa07 Mon Sep 17 00:00:00 2001 From: Dmitry Lyzo Date: Tue, 1 Sep 2020 23:52:27 +0300 Subject: [PATCH 031/365] Add timeout for polyfilled CustomElements (webOS 1.2) --- src/components/viewContainer.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/components/viewContainer.js b/src/components/viewContainer.js index 9d64130cdb..6be8cfd19b 100644 --- a/src/components/viewContainer.js +++ b/src/components/viewContainer.js @@ -82,7 +82,8 @@ import 'css!components/viewManager/viewContainer'; } allPages[pageIndex] = view; - setControllerClass(view, options).then(() => { + // Timeout for polyfilled CustomElements (webOS 1.2) + setControllerClass(view, options).then(() => new Promise((resolve) => setTimeout(resolve, 0))).then(() => { if (onBeforeChange) { onBeforeChange(view, false, options); } From 748592fa9310732bff082466a3308a51f24740bb Mon Sep 17 00:00:00 2001 From: Dmitry Lyzo Date: Wed, 2 Sep 2020 01:06:07 +0300 Subject: [PATCH 032/365] Remove nested Promise --- src/components/viewContainer.js | 75 +++++++++++++++++---------------- 1 file changed, 38 insertions(+), 37 deletions(-) diff --git a/src/components/viewContainer.js b/src/components/viewContainer.js index 6be8cfd19b..bbec0c0e65 100644 --- a/src/components/viewContainer.js +++ b/src/components/viewContainer.js @@ -36,54 +36,56 @@ import 'css!components/viewManager/viewContainer'; const newViewInfo = normalizeNewView(options, isPluginpage); const newView = newViewInfo.elem; - return new Promise((resolve) => { - const currentPage = allPages[pageIndex]; + const currentPage = allPages[pageIndex]; - if (currentPage) { - triggerDestroy(currentPage); - } + if (currentPage) { + triggerDestroy(currentPage); + } - let view = newView; + let view = newView; - if (typeof view == 'string') { - view = document.createElement('div'); - view.innerHTML = newView; - } + if (typeof view == 'string') { + view = document.createElement('div'); + view.innerHTML = newView; + } - view.classList.add('mainAnimatedPage'); + view.classList.add('mainAnimatedPage'); - if (currentPage) { - if (newViewInfo.hasScript && window.$) { - mainAnimatedPages.removeChild(currentPage); - view = $(view).appendTo(mainAnimatedPages)[0]; - } else { - mainAnimatedPages.replaceChild(view, currentPage); - } + if (currentPage) { + if (newViewInfo.hasScript && window.$) { + mainAnimatedPages.removeChild(currentPage); + view = $(view).appendTo(mainAnimatedPages)[0]; } else { - if (newViewInfo.hasScript && window.$) { - view = $(view).appendTo(mainAnimatedPages)[0]; - } else { - mainAnimatedPages.appendChild(view); - } + mainAnimatedPages.replaceChild(view, currentPage); } - - if (options.type) { - view.setAttribute('data-type', options.type); + } else { + if (newViewInfo.hasScript && window.$) { + view = $(view).appendTo(mainAnimatedPages)[0]; + } else { + mainAnimatedPages.appendChild(view); } + } - const properties = []; + if (options.type) { + view.setAttribute('data-type', options.type); + } - if (options.fullscreen) { - properties.push('fullscreen'); - } + const properties = []; - if (properties.length) { - view.setAttribute('data-properties', properties.join(',')); - } + if (options.fullscreen) { + properties.push('fullscreen'); + } - allPages[pageIndex] = view; + if (properties.length) { + view.setAttribute('data-properties', properties.join(',')); + } + + allPages[pageIndex] = view; + + return setControllerClass(view, options) // Timeout for polyfilled CustomElements (webOS 1.2) - setControllerClass(view, options).then(() => new Promise((resolve) => setTimeout(resolve, 0))).then(() => { + .then(() => new Promise((resolve) => setTimeout(resolve, 0))) + .then(() => { if (onBeforeChange) { onBeforeChange(view, false, options); } @@ -101,9 +103,8 @@ import 'css!components/viewManager/viewContainer'; $.mobile.activePage = view; } - resolve(view); + return view; }); - }); } } From 6553cea696995f565cea607edfd03e465d70c8bc Mon Sep 17 00:00:00 2001 From: "Brian J. Murrell" Date: Thu, 3 Sep 2020 10:33:59 -0400 Subject: [PATCH 033/365] Add BR: git for all distros Seems the Fedora yarn package also doesn't Requires: git so add it as a BuildRequires:. Signed-off-by: Brian J. Murrell --- fedora/jellyfin-web.spec | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/fedora/jellyfin-web.spec b/fedora/jellyfin-web.spec index 1d85e5ae6b..d4af00d36b 100644 --- a/fedora/jellyfin-web.spec +++ b/fedora/jellyfin-web.spec @@ -2,7 +2,7 @@ Name: jellyfin-web Version: 10.7.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: The Free Software Media System web client License: GPLv3 URL: https://jellyfin.org @@ -11,11 +11,12 @@ Source0: jellyfin-web-%{version}.tar.gz %if 0%{?centos} BuildRequires: yarn -# sadly the yarn RPM at https://dl.yarnpkg.com/rpm/ uses git but doesn't Requires: it -BuildRequires: git %else BuildRequires: nodejs-yarn %endif +# sadly the yarn RPM at https://dl.yarnpkg.com/rpm/ uses git but doesn't Requires: it +# ditto for Fedora's yarn RPM +BuildRequires: git BuildArch: noarch # Disable Automatic Dependency Processing From 28928ead7cfb101f7b8d55fd21361e0bcfb0fa44 Mon Sep 17 00:00:00 2001 From: Matt Montgomery <33811686+ConfusedPolarBear@users.noreply.github.com> Date: Thu, 3 Sep 2020 16:19:35 -0500 Subject: [PATCH 034/365] Modified to work with latest server code --- .../quickConnectSettings.js | 39 ++------ src/controllers/dashboard/quickconnect.js | 5 +- src/controllers/session/login/index.js | 93 ++++++++----------- src/controllers/user/quickConnect/index.js | 2 - src/strings/en-us.json | 1 + 5 files changed, 51 insertions(+), 89 deletions(-) diff --git a/src/components/quickConnectSettings/quickConnectSettings.js b/src/components/quickConnectSettings/quickConnectSettings.js index 35f051a121..a62cfc2298 100644 --- a/src/components/quickConnectSettings/quickConnectSettings.js +++ b/src/components/quickConnectSettings/quickConnectSettings.js @@ -5,21 +5,14 @@ export class QuickConnectSettings { constructor() { } authorize(code) { - let url = ApiClient.getUrl('/QuickConnect/Authorize'); + let url = ApiClient.getUrl('/QuickConnect/Authorize?Code=' + code); ApiClient.ajax({ type: 'POST', - url: url, - data: { - 'Code': code - } + url: url }, true).then(() => { - require(['toast'], function (toast) { - toast(globalize.translate('QuickConnectAuthorizeSuccess')); - }); + toast(globalize.translate('QuickConnectAuthorizeSuccess')); }).catch(() => { - require(['toast'], function (toast) { - toast(globalize.translate('QuickConnectAuthorizeFail')); - }); + toast(globalize.translate('QuickConnectAuthorizeFail')); }); // prevent bubbling @@ -30,28 +23,16 @@ export class QuickConnectSettings { let url = ApiClient.getUrl('/QuickConnect/Activate'); return ApiClient.ajax({ type: 'POST', - url: url, - contentType: 'application/json', - dataType: 'json' - }).then((json) => { - let message = json.Error; - - if (message && message !== '') { - console.error('Error activating quick connect. Error: ', json.Error); - - Dashboard.alert({ - title: 'Unable to activate quick connect', - message: message - }); - - return false; - } - + url: url + }).then(() => { toast(globalize.translate('QuickConnectActivationSuccessful')); - return true; }).catch((e) => { console.error('Error activating quick connect. Error:', e); + Dashboard.alert({ + title: globalize.translate('HeaderError'), + message: globalize.translate('DefaultErrorMessage') + }); throw e; }); } diff --git a/src/controllers/dashboard/quickconnect.js b/src/controllers/dashboard/quickconnect.js index 22f4781b7d..9d08bb6b48 100644 --- a/src/controllers/dashboard/quickconnect.js +++ b/src/controllers/dashboard/quickconnect.js @@ -26,13 +26,10 @@ import loading from 'loading'; let newStatus = page.querySelector('#chkQuickConnectAvailable').checked ? 'Available' : 'Unavailable'; - let url = ApiClient.getUrl('/QuickConnect/Available'); + let url = ApiClient.getUrl('/QuickConnect/Available?Status=' + newStatus); ApiClient.ajax({ type: 'POST', - data: { - 'Status': newStatus - }, url: url }, true).then(() => { require(['toast'], function (toast) { diff --git a/src/controllers/session/login/index.js b/src/controllers/session/login/index.js index d0446de099..aa5c8cc2d2 100644 --- a/src/controllers/session/login/index.js +++ b/src/controllers/session/login/index.js @@ -154,71 +154,56 @@ import 'emby-checkbox'; }); } + // FIXME: Clicking ok on the code dialog redirects back to the homepage. function loginQuickConnect() { let apiClient = getApiClient(); - let friendlyName = navigator.userAgent; - let url = apiClient.getUrl('/QuickConnect/Initiate?FriendlyName=' + friendlyName); - apiClient.getJSON(url) - .then(json => { - if (!json.Secret || !json.Code) { - console.error('Malformed quick connect response', json); - return false; - } + let url = apiClient.getUrl('/QuickConnect/Initiate'); + apiClient.getJSON(url).then(function (json) { + if (!json.Secret || !json.Code) { + console.error('Malformed quick connect response', json); + return false; + } - Dashboard.alert({ - message: Globalize.translate('QuickConnectAuthorizeCode', json.Code), - title: Globalize.translate('QuickConnect') - }); + Dashboard.alert({ + message: globalize.translate('QuickConnectAuthorizeCode', json.Code), + title: globalize.translate('QuickConnect') + }); - loading.show(); - - let interval = setInterval(async function() { - try { - let connectUrl = apiClient.getUrl('/QuickConnect/Connect?Secret=' + json.Secret); - let data = await apiClient.getJSON(connectUrl); - if (data.Authenticated) { - let result = await apiClient.quickConnect(data.Authentication); - let user = result.User; - let serverId = getParameterByName('serverid'); - let newUrl = 'home.html'; - - if (user.Policy.IsAdministrator && !serverId) { - newUrl = 'dashboard.html'; - } - - loading.hide(); - Dashboard.onServerChanged(user.Id, result.AccessToken, apiClient); - Dashboard.navigate(newUrl); - clearInterval(interval); - - return true; - } - } catch (e) { - Dashboard.alert({ - message: 'Quick connect was deactivated before the login request could be approved', - title: 'Unexpected error' - }); - - console.error('Unable to login with quick connect', e); - clearInterval(interval); - loading.hide(); + let interval = setInterval(function() { + let connectUrl = apiClient.getUrl('/QuickConnect/Connect?Secret=' + json.Secret); + apiClient.getJSON(connectUrl).then(async function(data) { + if (!data.Authenticated) { + return; } - return false; - }, 5000); + clearInterval(interval); - return true; - }).catch((e) => { - Dashboard.alert({ - message: Globalize.translate('QuickConnectNotActive'), - title: 'Error' + let result = await apiClient.quickConnect(data.Authentication); + Dashboard.onServerChanged(result.User.Id, result.AccessToken, apiClient); + Dashboard.navigate('home.html'); + }, function (e) { + clearInterval(interval); + + Dashboard.alert({ + message: globalize.translate('QuickConnectDeactivated'), + title: globalize.translate('HeaderError') + }); + + console.error('Unable to login with quick connect', e); }); + }, 5000); - console.error('Quick connect error: ', e); - - return false; + return true; + }, function(e) { + Dashboard.alert({ + message: globalize.translate('QuickConnectNotActive'), + title: globalize.translate('HeaderError') }); + + console.error('Quick connect error: ', e); + return false; + }); } view.querySelector('#divUsers').addEventListener('click', function (e) { diff --git a/src/controllers/user/quickConnect/index.js b/src/controllers/user/quickConnect/index.js index 80543a0b58..2d6f4b15c8 100644 --- a/src/controllers/user/quickConnect/index.js +++ b/src/controllers/user/quickConnect/index.js @@ -73,6 +73,4 @@ export default function (view) { throw e; }); } - - renderPage(); } diff --git a/src/strings/en-us.json b/src/strings/en-us.json index b46020794e..b4442ee0f9 100644 --- a/src/strings/en-us.json +++ b/src/strings/en-us.json @@ -1156,6 +1156,7 @@ "QuickConnectAuthorizeCode": "Authorize request {0} to continue", "QuickConnectAuthorizeSuccess": "Request authorized", "QuickConnectAuthorizeFail": "Unknown quick connect code", + "QuickConnectDeactivated": "Quick connect was deactivated before the login request could be approved", "QuickConnectDescription": "To sign in with quick connect, select the Quick Connect button on the device you are logging in from and enter the displayed code below.", "QuickConnectInvalidCode": "Invalid quick connect code", "QuickConnectNotAvailable": "Ask your server administrator to enable quick connect", From 723472aca58a0cc4a4cfbbcbaea8267e83341c48 Mon Sep 17 00:00:00 2001 From: Matt Montgomery <33811686+ConfusedPolarBear@users.noreply.github.com> Date: Thu, 3 Sep 2020 16:51:15 -0500 Subject: [PATCH 035/365] Complete modifications to work with latest server code --- src/controllers/dashboard/quickconnect.js | 7 +- src/controllers/session/login/index.js | 115 ++++++++++--------- src/controllers/user/quickConnect/index.html | 2 +- src/controllers/user/quickConnect/index.js | 20 +--- src/quickconnect.html | 2 +- src/strings/en-us.json | 2 +- 6 files changed, 71 insertions(+), 77 deletions(-) diff --git a/src/controllers/dashboard/quickconnect.js b/src/controllers/dashboard/quickconnect.js index 9d08bb6b48..012f7b7aa3 100644 --- a/src/controllers/dashboard/quickconnect.js +++ b/src/controllers/dashboard/quickconnect.js @@ -1,4 +1,6 @@ import loading from 'loading'; +import toast from 'toast'; +import globalize from 'globalize'; /* eslint-disable indent */ @@ -32,10 +34,7 @@ import loading from 'loading'; type: 'POST', url: url }, true).then(() => { - require(['toast'], function (toast) { - toast('Settings saved'); - }); - + toast(globalize.translate('SettingsSaved')); setTimeout(updatePage, 500); return true; diff --git a/src/controllers/session/login/index.js b/src/controllers/session/login/index.js index aa5c8cc2d2..c49ed0aee6 100644 --- a/src/controllers/session/login/index.js +++ b/src/controllers/session/login/index.js @@ -19,8 +19,7 @@ import 'emby-checkbox'; var user = result.User; loading.hide(); - Dashboard.onServerChanged(user.Id, result.AccessToken, apiClient); - Dashboard.navigate('home.html'); + onLoginSuccessful(user.Id, result.AccessToken, apiClient); }, function (response) { page.querySelector('#txtManualName').value = ''; page.querySelector('#txtManualPassword').value = ''; @@ -41,6 +40,60 @@ import 'emby-checkbox'; }); } + function authenticateQuickConnect(apiClient) { + let url = apiClient.getUrl('/QuickConnect/Initiate'); + apiClient.getJSON(url).then(function (json) { + if (!json.Secret || !json.Code) { + console.error('Malformed quick connect response', json); + return false; + } + + Dashboard.alert({ + message: globalize.translate('QuickConnectAuthorizeCode', json.Code), + title: globalize.translate('QuickConnect') + }); + + let connectUrl = apiClient.getUrl('/QuickConnect/Connect?Secret=' + json.Secret); + + let interval = setInterval(function() { + apiClient.getJSON(connectUrl).then(async function(data) { + if (!data.Authenticated) { + return; + } + + clearInterval(interval); + + let result = await apiClient.quickConnect(data.Authentication); + onLoginSuccessful(result.User.Id, result.AccessToken, apiClient); + }, function (e) { + clearInterval(interval); + + Dashboard.alert({ + message: globalize.translate('QuickConnectDeactivated'), + title: globalize.translate('HeaderError') + }); + + console.error('Unable to login with quick connect', e); + }); + }, 5000, connectUrl); + + return true; + }, function(e) { + Dashboard.alert({ + message: globalize.translate('QuickConnectNotActive'), + title: globalize.translate('HeaderError') + }); + + console.error('Quick connect error: ', e); + return false; + }); + } + + function onLoginSuccessful(id, accessToken, apiClient) { + Dashboard.onServerChanged(id, accessToken, apiClient); + Dashboard.navigate('home.html'); + } + function showManualForm(context, showCancel, focusPassword) { context.querySelector('.chkRememberLogin').checked = appSettings.enableAutoLogin(); context.querySelector('.manualLoginForm').classList.remove('hide'); @@ -154,58 +207,6 @@ import 'emby-checkbox'; }); } - // FIXME: Clicking ok on the code dialog redirects back to the homepage. - function loginQuickConnect() { - let apiClient = getApiClient(); - - let url = apiClient.getUrl('/QuickConnect/Initiate'); - apiClient.getJSON(url).then(function (json) { - if (!json.Secret || !json.Code) { - console.error('Malformed quick connect response', json); - return false; - } - - Dashboard.alert({ - message: globalize.translate('QuickConnectAuthorizeCode', json.Code), - title: globalize.translate('QuickConnect') - }); - - let interval = setInterval(function() { - let connectUrl = apiClient.getUrl('/QuickConnect/Connect?Secret=' + json.Secret); - apiClient.getJSON(connectUrl).then(async function(data) { - if (!data.Authenticated) { - return; - } - - clearInterval(interval); - - let result = await apiClient.quickConnect(data.Authentication); - Dashboard.onServerChanged(result.User.Id, result.AccessToken, apiClient); - Dashboard.navigate('home.html'); - }, function (e) { - clearInterval(interval); - - Dashboard.alert({ - message: globalize.translate('QuickConnectDeactivated'), - title: globalize.translate('HeaderError') - }); - - console.error('Unable to login with quick connect', e); - }); - }, 5000); - - return true; - }, function(e) { - Dashboard.alert({ - message: globalize.translate('QuickConnectNotActive'), - title: globalize.translate('HeaderError') - }); - - console.error('Quick connect error: ', e); - return false; - }); - } - view.querySelector('#divUsers').addEventListener('click', function (e) { const card = dom.parentWithClass(e.target, 'card'); const cardContent = card ? card.querySelector('.cardContent') : null; @@ -239,7 +240,11 @@ import 'emby-checkbox'; Dashboard.navigate('forgotpassword.html'); }); view.querySelector('.btnCancel').addEventListener('click', showVisualForm); - view.querySelector('.btnQuick').addEventListener('click', loginQuickConnect); + view.querySelector('.btnQuick').addEventListener('click', function () { + const apiClient = getApiClient(); + authenticateQuickConnect(apiClient); + return false; + }); view.querySelector('.btnManual').addEventListener('click', function () { view.querySelector('#txtManualName').value = ''; showManualForm(view, true); diff --git a/src/controllers/user/quickConnect/index.html b/src/controllers/user/quickConnect/index.html index 5f698a4a6b..15df59ff17 100644 --- a/src/controllers/user/quickConnect/index.html +++ b/src/controllers/user/quickConnect/index.html @@ -1,4 +1,4 @@ -
    +
    diff --git a/src/controllers/user/quickConnect/index.js b/src/controllers/user/quickConnect/index.js index 2d6f4b15c8..9e8d1a3b31 100644 --- a/src/controllers/user/quickConnect/index.js +++ b/src/controllers/user/quickConnect/index.js @@ -8,10 +8,7 @@ export default function (view) { view.addEventListener('viewshow', function () { let codeElement = view.querySelector('#txtQuickConnectCode'); - quickConnectSettingsInstance = new QuickConnectSettings({ - page: view, - interval: 0 - }); + quickConnectSettingsInstance = new QuickConnectSettings(); view.querySelector('#btnQuickConnectActivate').addEventListener('click', () => { quickConnectSettingsInstance.activate(quickConnectSettingsInstance).then(() => { @@ -30,24 +27,17 @@ export default function (view) { quickConnectSettingsInstance.authorize(code); }); + view.querySelector('.quickConnectSettingsContainer').addEventListener('submit', (e) => { + e.preventDefault(); + }); + renderPage(); }); view.addEventListener('viewbeforehide', function () { if (quickConnectSettingsInstance) { quickConnectSettingsInstance.submit(); } - onDestroy(); }); - view.addEventListener('viewdestroy', function () { - onDestroy(); - }); - - function onDestroy() { - if (quickConnectSettingsInstance) { - quickConnectSettingsInstance.destroy(); - quickConnectSettingsInstance = null; - } - } function renderPage(forceActive = false) { ApiClient.getQuickConnect('Status').then((status) => { diff --git a/src/quickconnect.html b/src/quickconnect.html index 671bb88d77..b5b6d48991 100644 --- a/src/quickconnect.html +++ b/src/quickconnect.html @@ -17,7 +17,7 @@
    diff --git a/src/strings/en-us.json b/src/strings/en-us.json index b4442ee0f9..df5b6a36c6 100644 --- a/src/strings/en-us.json +++ b/src/strings/en-us.json @@ -1153,7 +1153,7 @@ "Quality": "Quality", "QuickConnect": "Quick Connect", "QuickConnectActivationSuccessful": "Successfully activated", - "QuickConnectAuthorizeCode": "Authorize request {0} to continue", + "QuickConnectAuthorizeCode": "Enter code {0} to login", "QuickConnectAuthorizeSuccess": "Request authorized", "QuickConnectAuthorizeFail": "Unknown quick connect code", "QuickConnectDeactivated": "Quick connect was deactivated before the login request could be approved", From f10535fc8c616679a611dad2046e656030fb3cc1 Mon Sep 17 00:00:00 2001 From: Nyanmisaka Date: Fri, 4 Sep 2020 21:45:12 +0800 Subject: [PATCH 036/365] update strings --- src/controllers/dashboard/encodingsettings.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/controllers/dashboard/encodingsettings.html b/src/controllers/dashboard/encodingsettings.html index 00fcaa53e4..388d2edbad 100644 --- a/src/controllers/dashboard/encodingsettings.html +++ b/src/controllers/dashboard/encodingsettings.html @@ -118,7 +118,7 @@
    From e9caf5e336bd2830d5ebc66853d6a55b057c8aea Mon Sep 17 00:00:00 2001 From: Ian Walton Date: Mon, 7 Sep 2020 12:54:12 -0400 Subject: [PATCH 037/365] Add auto-cast feature. --- package.json | 1 + src/components/autocast.js | 49 +++++++++++++++++++ .../playback/playerSelectionMenu.js | 21 ++++++++ src/scripts/libraryMenu.js | 8 +++ src/scripts/site.js | 1 + src/strings/en-us.json | 1 + 6 files changed, 81 insertions(+) create mode 100644 src/components/autocast.js diff --git a/package.json b/package.json index 5ca5c15151..1521a1d918 100644 --- a/package.json +++ b/package.json @@ -177,6 +177,7 @@ "src/components/remotecontrol/remotecontrol.js", "src/components/sanatizefilename.js", "src/components/scrollManager.js", + "src/components/autocast.js", "src/plugins/experimentalWarnings/plugin.js", "src/plugins/sessionPlayer/plugin.js", "src/plugins/htmlAudioPlayer/plugin.js", diff --git a/src/components/autocast.js b/src/components/autocast.js new file mode 100644 index 0000000000..3572f42bb2 --- /dev/null +++ b/src/components/autocast.js @@ -0,0 +1,49 @@ +import events from 'events'; +import playbackManager from 'playbackManager'; + +export function supported() { + return typeof(Storage) !== 'undefined'; +} + +export function enable(isEnabled) { + if (!supported()) return; + + if (isEnabled) { + const currentPlayerInfo = playbackManager.getPlayerInfo(); + + if (currentPlayerInfo && currentPlayerInfo.id && currentPlayerInfo.id) { + localStorage.setItem('autocastPlayerId', currentPlayerInfo.id); + } + } else { + localStorage.removeItem('autocastPlayerId'); + } +} + +export function isEnabled() { + if (!supported()) return false; + + const playerId = localStorage.getItem('autocastPlayerId'); + const currentPlayerInfo = playbackManager.getPlayerInfo(); + + return (currentPlayerInfo && playerId && currentPlayerInfo.id === playerId); +} + +function onOpen() { + if (!supported()) return; + + const playerId = localStorage.getItem('autocastPlayerId'); + + playbackManager.getTargets().then(function (targets) { + for (var i = 0; i < targets.length; i++) { + if (targets[i].id == playerId) { + playbackManager.trySetActivePlayer(targets[i].playerName, targets[i]); + break; + } + } + }); +} + +const apiClient = window.connectionManager.currentApiClient(); +if (apiClient) { + events.on(apiClient, 'websocketopen', onOpen); +} diff --git a/src/components/playback/playerSelectionMenu.js b/src/components/playback/playerSelectionMenu.js index 7799613400..3fe5be70d8 100644 --- a/src/components/playback/playerSelectionMenu.js +++ b/src/components/playback/playerSelectionMenu.js @@ -6,6 +6,7 @@ import playbackManager from 'playbackManager'; import appRouter from 'appRouter'; import globalize from 'globalize'; import appHost from 'apphost'; +import * as autocast from 'autocast'; function mirrorItem(info, player) { var item = info.item; @@ -219,6 +220,16 @@ function showActivePlayerMenuInternal(dialogHelper, playerInfo) { html += ''; } + html += '
    '; + + if (autocast.supported()) { + html += ''; + } + html += '
    '; html += '
    '; @@ -237,6 +248,12 @@ function showActivePlayerMenuInternal(dialogHelper, playerInfo) { chkMirror.addEventListener('change', onMirrorChange); } + var chkAutoCast = dlg.querySelector('.chkAutoCast'); + + if (chkAutoCast) { + chkAutoCast.addEventListener('change', onAutoCastChange); + } + var destination = ''; var btnRemoteControl = dlg.querySelector('.btnRemoteControl'); @@ -269,6 +286,10 @@ function onMirrorChange() { playbackManager.enableDisplayMirroring(this.checked); } +function onAutoCastChange() { + autocast.enable(this.checked); +} + document.addEventListener('viewshow', function (e) { var state = e.detail.state || {}; var item = state.item; diff --git a/src/scripts/libraryMenu.js b/src/scripts/libraryMenu.js index 04edecf198..7a332a853c 100644 --- a/src/scripts/libraryMenu.js +++ b/src/scripts/libraryMenu.js @@ -52,6 +52,7 @@ import 'flexStyles'; lazyLoadViewMenuBarImages(); bindMenuEvents(); + updateCastIcon(); } function getCurrentApiClient() { @@ -910,6 +911,12 @@ import 'flexStyles'; } } + function ensureHeader() { + return new Promise(function (resolve) { + window.connectionManager.user(getCurrentApiClient()).then(updateUserInHeader).then(resolve); + }); + } + let currentPageType; pageClassOn('pagebeforeshow', 'page', function (e) { if (!this.classList.contains('withTabs')) { @@ -996,6 +1003,7 @@ import 'flexStyles'; }; window.LibraryMenu = LibraryMenu; + renderHeader(); export default LibraryMenu; diff --git a/src/scripts/site.js b/src/scripts/site.js index f14670d82d..e8f00080f1 100644 --- a/src/scripts/site.js +++ b/src/scripts/site.js @@ -591,6 +591,7 @@ function initClient() { define('metadataEditor', [componentsPath + '/metadataEditor/metadataEditor'], returnFirstDependency); define('personEditor', [componentsPath + '/metadataEditor/personEditor'], returnFirstDependency); define('playerSelectionMenu', [componentsPath + '/playback/playerSelectionMenu'], returnFirstDependency); + define('autocast', [componentsPath + '/autocast'], returnFirstDependency); define('playerSettingsMenu', [componentsPath + '/playback/playersettingsmenu'], returnFirstDependency); define('playMethodHelper', [componentsPath + '/playback/playmethodhelper'], returnFirstDependency); define('brightnessOsd', [componentsPath + '/playback/brightnessosd'], returnFirstDependency); diff --git a/src/strings/en-us.json b/src/strings/en-us.json index e39199c56f..074d9c95f1 100644 --- a/src/strings/en-us.json +++ b/src/strings/en-us.json @@ -183,6 +183,7 @@ "EditImages": "Edit images", "EditMetadata": "Edit metadata", "EditSubtitles": "Edit subtitles", + "EnableAutoCast": "Set as Default", "EnableBackdropsHelp": "Display backdrops in the background of some pages while browsing the library.", "EnableCinemaMode": "Cinema mode", "EnableColorCodedBackgrounds": "Color coded backgrounds", From c8c8be39cda9258bebb0adf18a72062cee70d003 Mon Sep 17 00:00:00 2001 From: Ian Walton Date: Mon, 7 Sep 2020 13:10:38 -0400 Subject: [PATCH 038/365] Appease SonarCloud. --- src/components/autocast.js | 4 ++-- src/components/playback/playerSelectionMenu.js | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/components/autocast.js b/src/components/autocast.js index 3572f42bb2..4d191a62da 100644 --- a/src/components/autocast.js +++ b/src/components/autocast.js @@ -5,10 +5,10 @@ export function supported() { return typeof(Storage) !== 'undefined'; } -export function enable(isEnabled) { +export function enable(enabled) { if (!supported()) return; - if (isEnabled) { + if (enabled) { const currentPlayerInfo = playbackManager.getPlayerInfo(); if (currentPlayerInfo && currentPlayerInfo.id && currentPlayerInfo.id) { diff --git a/src/components/playback/playerSelectionMenu.js b/src/components/playback/playerSelectionMenu.js index 3fe5be70d8..dcf36dd9b4 100644 --- a/src/components/playback/playerSelectionMenu.js +++ b/src/components/playback/playerSelectionMenu.js @@ -224,8 +224,8 @@ function showActivePlayerMenuInternal(dialogHelper, playerInfo) { if (autocast.supported()) { html += ''; } From fba96da9548ee7cba28a912339c910fcd90ffed2 Mon Sep 17 00:00:00 2001 From: Matt Date: Wed, 9 Sep 2020 17:34:08 -0400 Subject: [PATCH 039/365] Alpha picker only returns items starting with selected letter --- src/controllers/list.js | 2 +- src/controllers/movies/movies.js | 4 ++-- src/controllers/movies/movietrailers.js | 4 ++-- src/controllers/music/musicalbums.js | 4 ++-- src/controllers/music/musicartists.js | 4 ++-- src/controllers/shows/tvshows.js | 4 ++-- 6 files changed, 11 insertions(+), 11 deletions(-) diff --git a/src/controllers/list.js b/src/controllers/list.js index fe04fc18e8..07e07eeb05 100644 --- a/src/controllers/list.js +++ b/src/controllers/list.js @@ -163,7 +163,7 @@ import 'emby-scroller'; instance.setFilterStatus(hasFilters); if (instance.alphaPicker) { - query.NameStartsWithOrGreater = instance.alphaPicker.value(); + query.NameStartsWith = instance.alphaPicker.value(); } return query; diff --git a/src/controllers/movies/movies.js b/src/controllers/movies/movies.js index ab5aff9ecd..e05b1fa96a 100644 --- a/src/controllers/movies/movies.js +++ b/src/controllers/movies/movies.js @@ -25,7 +25,7 @@ import 'emby-itemscontainer'; const updateFilterControls = () => { if (this.alphaPicker) { - this.alphaPicker.value(query.NameStartsWithOrGreater); + this.alphaPicker.value(query.NameStartsWith); } }; @@ -168,7 +168,7 @@ import 'emby-itemscontainer'; if (alphaPickerElement) { alphaPickerElement.addEventListener('alphavaluechanged', function (e) { let newValue = e.detail.value; - query.NameStartsWithOrGreater = newValue; + query.NameStartsWith = newValue; query.StartIndex = 0; itemsContainer.refreshItems(); }); diff --git a/src/controllers/movies/movietrailers.js b/src/controllers/movies/movietrailers.js index f2c7feada7..def55d919a 100644 --- a/src/controllers/movies/movietrailers.js +++ b/src/controllers/movies/movietrailers.js @@ -185,7 +185,7 @@ import 'emby-itemscontainer'; const updateFilterControls = (tabContent) => { const query = getQuery(tabContent); - this.alphaPicker.value(query.NameStartsWithOrGreater); + this.alphaPicker.value(query.NameStartsWith); }; const data = {}; @@ -216,7 +216,7 @@ import 'emby-itemscontainer'; alphaPickerElement.addEventListener('alphavaluechanged', function (e) { const newValue = e.detail.value; const query = getQuery(tabContent); - query.NameStartsWithOrGreater = newValue; + query.NameStartsWith = newValue; query.StartIndex = 0; reloadItems(); }); diff --git a/src/controllers/music/musicalbums.js b/src/controllers/music/musicalbums.js index 7947aa1376..42490fd2f4 100644 --- a/src/controllers/music/musicalbums.js +++ b/src/controllers/music/musicalbums.js @@ -186,7 +186,7 @@ import 'emby-itemscontainer'; const updateFilterControls = (tabContent) => { const query = getQuery(); - this.alphaPicker.value(query.NameStartsWithOrGreater); + this.alphaPicker.value(query.NameStartsWith); }; let savedQueryKey; @@ -219,7 +219,7 @@ import 'emby-itemscontainer'; alphaPickerElement.addEventListener('alphavaluechanged', function (e) { const newValue = e.detail.value; const query = getQuery(); - query.NameStartsWithOrGreater = newValue; + query.NameStartsWith = newValue; query.StartIndex = 0; reloadItems(tabContent); }); diff --git a/src/controllers/music/musicartists.js b/src/controllers/music/musicartists.js index 32e0a22a07..3517437622 100644 --- a/src/controllers/music/musicartists.js +++ b/src/controllers/music/musicartists.js @@ -169,7 +169,7 @@ import 'emby-itemscontainer'; const updateFilterControls = (tabContent) => { const query = getQuery(tabContent); - this.alphaPicker.value(query.NameStartsWithOrGreater); + this.alphaPicker.value(query.NameStartsWith); }; const data = {}; @@ -201,7 +201,7 @@ import 'emby-itemscontainer'; alphaPickerElement.addEventListener('alphavaluechanged', function (e) { const newValue = e.detail.value; const query = getQuery(tabContent); - query.NameStartsWithOrGreater = newValue; + query.NameStartsWith = newValue; query.StartIndex = 0; reloadItems(tabContent); }); diff --git a/src/controllers/shows/tvshows.js b/src/controllers/shows/tvshows.js index ef45eba0f7..fee4fd24a5 100644 --- a/src/controllers/shows/tvshows.js +++ b/src/controllers/shows/tvshows.js @@ -198,7 +198,7 @@ import 'emby-itemscontainer'; function updateFilterControls(tabContent) { const query = getQuery(tabContent); - self.alphaPicker.value(query.NameStartsWithOrGreater); + self.alphaPicker.value(query.NameStartsWith); } const self = this; @@ -231,7 +231,7 @@ import 'emby-itemscontainer'; alphaPickerElement.addEventListener('alphavaluechanged', function (e) { const newValue = e.detail.value; const query = getQuery(tabContent); - query.NameStartsWithOrGreater = newValue; + query.NameStartsWith = newValue; query.StartIndex = 0; reloadItems(tabContent); }); From 17fb508d048f746d2ac5a68a4f647c1856a2a167 Mon Sep 17 00:00:00 2001 From: cvium Date: Thu, 10 Sep 2020 11:10:24 +0200 Subject: [PATCH 040/365] Add known proxies config option --- src/controllers/dashboard/networking.html | 5 +++++ src/controllers/dashboard/networking.js | 6 ++++++ src/strings/en-us.json | 2 ++ 3 files changed, 13 insertions(+) diff --git a/src/controllers/dashboard/networking.html b/src/controllers/dashboard/networking.html index 899d0976b7..9fb08aa661 100644 --- a/src/controllers/dashboard/networking.html +++ b/src/controllers/dashboard/networking.html @@ -43,6 +43,11 @@
    ${LanNetworksHelp}
    + +
    + +
    ${KnownProxiesHelp}
    +
    diff --git a/src/controllers/dashboard/networking.js b/src/controllers/dashboard/networking.js index a7f3076056..7fc161a90b 100644 --- a/src/controllers/dashboard/networking.js +++ b/src/controllers/dashboard/networking.js @@ -30,6 +30,11 @@ import 'emby-select'; }).filter(function (s) { return s.length > 0; }); + config.KnownProxies = form.querySelector('#txtKnownProxies').value.split(',').map(function (s) { + return s.trim(); + }).filter(function (s) { + return s.length > 0; + }); config.IsRemoteIPFilterBlacklist = form.querySelector('#selectExternalAddressFilterMode').value === 'blacklist'; config.PublicPort = form.querySelector('#txtPublicPort').value; config.PublicHttpsPort = form.querySelector('#txtPublicHttpsPort').value; @@ -108,6 +113,7 @@ import 'emby-select'; page.querySelector('#txtPublicHttpsPort').value = config.PublicHttpsPort; page.querySelector('#txtLocalAddress').value = config.LocalNetworkAddresses[0] || ''; page.querySelector('#txtLanNetworks').value = (config.LocalNetworkSubnets || []).join(', '); + page.querySelector('#txtKnownProxies').value = (config.KnownProxies || []).join(', '); page.querySelector('#txtExternalAddressFilter').value = (config.RemoteIPFilter || []).join(', '); page.querySelector('#selectExternalAddressFilterMode').value = config.IsRemoteIPFilterBlacklist ? 'blacklist' : 'whitelist'; page.querySelector('#chkRemoteAccess').checked = config.EnableRemoteAccess == null || config.EnableRemoteAccess; diff --git a/src/strings/en-us.json b/src/strings/en-us.json index e39199c56f..0f61286e92 100644 --- a/src/strings/en-us.json +++ b/src/strings/en-us.json @@ -451,6 +451,7 @@ "ItemCount": "{0} items", "Items": "Items", "Kids": "Kids", + "KnownProxiesHelp": "Comma separated list of IP addresses of known proxies used when connecting to your Jellyfin instance. This is required to make proper use of X-Forwarded-For headers. Requires a reboot after saving.", "Label3DFormat": "3D format:", "LabelAbortedByServerShutdown": "(Aborted by server shutdown)", "LabelAccessDay": "Day of week:", @@ -598,6 +599,7 @@ "LabelInNetworkSignInWithEasyPasswordHelp": "Use the easy pin code to sign in to clients within your local network. Your regular password will only be needed away from home. If the pin code is left blank, you won't need a password within your home network.", "LabelInternetQuality": "Internet quality:", "LabelKeepUpTo": "Keep up to:", + "LabelKnownProxies": "Known proxies:", "LabelKidsCategories": "Children's categories:", "LabelKodiMetadataDateFormat": "Release date format:", "LabelKodiMetadataDateFormatHelp": "All dates within NFO files will be parsed using this format.", From fa7d8bf4daf4fb2aba5a706219b77d68f3b5b83a Mon Sep 17 00:00:00 2001 From: Matt Montgomery <33811686+ConfusedPolarBear@users.noreply.github.com> Date: Thu, 10 Sep 2020 15:04:06 -0500 Subject: [PATCH 041/365] Apply suggestions from code review --- .../quickConnectSettings.js | 4 - src/controllers/dashboard/quickconnect.js | 90 +++++++++---------- src/controllers/user/quickConnect/index.js | 5 -- 3 files changed, 45 insertions(+), 54 deletions(-) diff --git a/src/components/quickConnectSettings/quickConnectSettings.js b/src/components/quickConnectSettings/quickConnectSettings.js index a62cfc2298..e802f92ba1 100644 --- a/src/components/quickConnectSettings/quickConnectSettings.js +++ b/src/components/quickConnectSettings/quickConnectSettings.js @@ -36,10 +36,6 @@ export class QuickConnectSettings { throw e; }); } - - submit() { - return false; - } } export default QuickConnectSettings; diff --git a/src/controllers/dashboard/quickconnect.js b/src/controllers/dashboard/quickconnect.js index 012f7b7aa3..87c88d8a41 100644 --- a/src/controllers/dashboard/quickconnect.js +++ b/src/controllers/dashboard/quickconnect.js @@ -2,57 +2,57 @@ import loading from 'loading'; import toast from 'toast'; import globalize from 'globalize'; -/* eslint-disable indent */ +const unavailable = 'Unavailable'; +const available = 'Available'; +const active = 'Active'; +let page; - let page; - export default function(view) { - view.addEventListener('viewshow', function () { - page = this; - loading.show(); - page.querySelector('#btnQuickConnectSubmit').onclick = onSubmit; - updatePage(); - }); - } - - function loadPage(status) { - let available = status === 'Available' || status === 'Active'; - - page.querySelector('#quickConnectStatus').textContent = status.toLocaleLowerCase(); - page.querySelector('#chkQuickConnectAvailable').checked = available; - - loading.hide(); - } - - function onSubmit() { +export default function(view) { + view.addEventListener('viewshow', function () { + page = this; loading.show(); + page.querySelector('#btnQuickConnectSubmit').onclick = onSubmit; + updatePage(); + }); +} - let newStatus = page.querySelector('#chkQuickConnectAvailable').checked ? 'Available' : 'Unavailable'; +function loadPage(status) { + let check = status === available || status === active; - let url = ApiClient.getUrl('/QuickConnect/Available?Status=' + newStatus); + page.querySelector('#quickConnectStatus').textContent = status.toLocaleLowerCase(); + page.querySelector('#chkQuickConnectAvailable').checked = check; - ApiClient.ajax({ - type: 'POST', - url: url - }, true).then(() => { - toast(globalize.translate('SettingsSaved')); - setTimeout(updatePage, 500); + loading.hide(); +} - return true; - }).catch((e) => { - console.error('Unable to set quick connect status. error:', e); - }); +function onSubmit() { + loading.show(); - loading.hide(); - return false; - } + let newStatus = page.querySelector('#chkQuickConnectAvailable').checked ? available : unavailable; - function updatePage() { - ApiClient.getQuickConnect('Status').then((response) => { - loadPage(response); - return true; - }).catch((e) => { - console.error('Unable to get quick connect status. error:', e); - }); - } + let url = ApiClient.getUrl('/QuickConnect/Available?Status=' + newStatus); -/* eslint-enable indent */ + ApiClient.ajax({ + type: 'POST', + url: url + }, true).then(() => { + toast(globalize.translate('SettingsSaved')); + setTimeout(updatePage, 500); + + return true; + }).catch((e) => { + console.error('Unable to set quick connect status. error:', e); + }); + + loading.hide(); + return false; +} + +function updatePage() { + ApiClient.getQuickConnect('Status').then((response) => { + loadPage(response); + return true; + }).catch((e) => { + console.error('Unable to get quick connect status. error:', e); + }); +} diff --git a/src/controllers/user/quickConnect/index.js b/src/controllers/user/quickConnect/index.js index 9e8d1a3b31..00fc5488b9 100644 --- a/src/controllers/user/quickConnect/index.js +++ b/src/controllers/user/quickConnect/index.js @@ -33,11 +33,6 @@ export default function (view) { renderPage(); }); - view.addEventListener('viewbeforehide', function () { - if (quickConnectSettingsInstance) { - quickConnectSettingsInstance.submit(); - } - }); function renderPage(forceActive = false) { ApiClient.getQuickConnect('Status').then((status) => { From c8b6b44b7bf79c5a14055c6262b85b5af9cd7554 Mon Sep 17 00:00:00 2001 From: Deniz Date: Thu, 10 Sep 2020 17:05:39 +0000 Subject: [PATCH 042/365] Translated using Weblate (Turkish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/tr/ --- src/strings/tr.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/tr.json b/src/strings/tr.json index f480257f69..9730857ea8 100644 --- a/src/strings/tr.json +++ b/src/strings/tr.json @@ -614,5 +614,6 @@ "LabelSize": "Boyut:", "LabelSimultaneousConnectionLimit": "Eşzamanlı yayın limiti:", "LabelServerName": "Sunucu adı:", - "ButtonSyncPlay": "SyncPlay" + "ButtonSyncPlay": "SyncPlay", + "Settings": "Ayarlar" } From eb67f3fb8893a858bcf17cd31e1f0646eeb4d899 Mon Sep 17 00:00:00 2001 From: Moritz Date: Thu, 10 Sep 2020 16:29:02 +0000 Subject: [PATCH 043/365] Translated using Weblate (German) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/de/ --- src/strings/de.json | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/strings/de.json b/src/strings/de.json index 4979faf1da..4e3a002b86 100644 --- a/src/strings/de.json +++ b/src/strings/de.json @@ -1365,5 +1365,10 @@ "SpecialFeatures": "Besonderheiten", "Poster": "Poster", "Photo": "Foto", - "Other": "Sonstiges" + "Other": "Sonstiges", + "Bwdif": "BWDIF", + "UseDoubleRateDeinterlacingHelp": "Diese Einstellung verwendet die Halbbildrate beim Deinterlacing, oft auch als Bob-Deinterlacing bezeichnet, die die Bildrate des Videos verdoppelt, um eine vollständige Bewegung wie beim Betrachten von Interlaced-Video auf einem Fernseher zu erzielen.", + "UseDoubleRateDeinterlacing": "Verdoppelung der Bildfrequenz beim Deinterlacing", + "LabelIconMaxResHelp": "Maximale Auflösung der Icons, die über die Eigenschaft upnp:icon bereitgestellt wird.", + "LabelAlbumArtMaxResHelp": "Maximale Auflösung des Albumcovers, die über die Eigenschaft upnp:albumArtURI bereitgestellt wird." } From 8c0e35487484cb9145a5a74abe6eb0002a6c9eb2 Mon Sep 17 00:00:00 2001 From: Hilman Maulana Date: Fri, 11 Sep 2020 05:08:27 +0000 Subject: [PATCH 044/365] Translated using Weblate (Indonesian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/id/ --- src/strings/id.json | 296 ++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 286 insertions(+), 10 deletions(-) diff --git a/src/strings/id.json b/src/strings/id.json index 1d5ef06332..c7a83a9efa 100644 --- a/src/strings/id.json +++ b/src/strings/id.json @@ -3,8 +3,8 @@ "ButtonSignOut": "Sign out", "HeaderEasyPinCode": "Kode Pin Mudah", "HeaderSetupLibrary": "Atur pustaka media Anda", - "LabelContentType": "Tipe konten:", - "LabelCountry": "Negara:", + "LabelContentType": "Tipe konten :", + "LabelCountry": "Negara :", "LabelFinish": "Selesai", "LabelLanguage": "Bahasa:", "LabelSaveLocalMetadata": "Simpan artwork dan metadata ke dalam folder media", @@ -31,7 +31,7 @@ "Favorites": "Favorit", "Genres": "Aliran", "HeaderAlbumArtists": "Album Artis", - "HeaderContinueWatching": "Lanjutkan Menonton", + "HeaderContinueWatching": "Lanjut Menonton", "Artists": "Artis", "AllowMediaConversion": "Izinkan konversi media", "AllEpisodes": "Semua episode", @@ -203,7 +203,7 @@ "DeleteImageConfirmation": "Anda yakin ingin menghapus gambar ini?", "DeleteImage": "Hapus Gambar", "DeleteDeviceConfirmation": "Anda yakin ingin menghapus perangkat ini? Ini akan muncul kembali saat pengguna login lagi.", - "DeinterlaceMethodHelp": "Pilih metode deinterlacing yang akan digunakan saat melakukan transcoding konten interlace.", + "DeinterlaceMethodHelp": "Pilih metode deinterlacing yang akan digunakan saat software mentranskode konten yang saling terkait. Ketika akselerasi perangkat keras yang mendukung penghilangan interlacing perangkat keras diaktifkan, penghilang antar-kabel perangkat keras akan digunakan alih-alih pengaturan ini.", "DefaultSubtitlesHelp": "Subtitel dimuat berdasarkan bendera default dan paksa dalam metadata yang disematkan. Preferensi bahasa dipertimbangkan ketika beberapa opsi tersedia.", "CustomDlnaProfilesHelp": "Buat profil khusus untuk menargetkan perangkat baru atau mengganti profil sistem.", "ColorTransfer": "Transfer warna", @@ -253,7 +253,7 @@ "LanNetworksHelp": "Daftar alamat IP atau entri IP / netmask yang dipisahkan koma untuk jaringan yang akan dipertimbangkan di jaringan lokal saat memberlakukan pembatasan bandwidth. Jika disetel, semua alamat IP lainnya akan dianggap berada di jaringan eksternal dan tunduk pada pembatasan bandwidth eksternal. Jika dibiarkan kosong, hanya subnet server yang dianggap berada di jaringan lokal.", "DashboardServerName": "Server : {0}", "LabelUserRemoteClientBitrateLimitHelp": "Ganti nilai global default yang ditetapkan di pengaturan pemutaran server.", - "LabelTranscodingTempPathHelp": "Tentukan jalur kustom untuk file transcode yang disajikan ke klien. Biarkan kosong untuk menggunakan default server.", + "LabelTranscodingTempPathHelp": "Tentukan lokasi kustom untuk file transcode yang disajikan ke klien. Biarkan kosong untuk menggunakan default server.", "LabelSyncPlayTimeOffset": "Pengimbangan waktu dengan server :", "LabelServerName": "Nama Server :", "LabelServerHostHelp": "192.168.1.100:8096 atau https://myserver.com", @@ -264,7 +264,7 @@ "LabelMoviePrefixHelp": "Jika prefiks diterapkan pada judul film, masukkan di sini agar server dapat menanganinya dengan benar.", "LabelLocalHttpServerPortNumberHelp": "Nomor port TCP untuk server HTTP.", "LabelLocalHttpServerPortNumber": "Nomor port HTTP lokal :", - "LabelKodiMetadataEnablePathSubstitutionHelp": "Mengaktifkan substitusi jalur dari jalur gambar menggunakan pengaturan substitusi jalur server.", + "LabelKodiMetadataEnablePathSubstitutionHelp": "Mengaktifkan substitusi lokasi dari lokasi gambar menggunakan pengaturan substitusi lokasi server.", "LabelHttpsPortHelp": "Nomor port TCP untuk server HTTPS.", "LabelServerNameHelp": "Nama ini akan digunakan untuk mengidentifikasi server dan akan menggunakan nama host server secara default.", "LabelBaseUrlHelp": "Tambahkan subdirektori khusus ke URL server. Misalnya: http://example.com/<baseurl> ", @@ -277,7 +277,7 @@ "LabelAbortedByServerShutdown": "(Dibatalkan oleh penghentian server)", "HeaderServerSettings": "Pengaturan Server", "HeaderServerAddressSettings": "Pengaturan Alamat Server", - "HeaderSelectServerCachePathHelp": "Jelajahi atau masukkan jalur yang akan digunakan untuk file cache server. Folder harus dapat akses.", + "HeaderSelectServerCachePathHelp": "Jelajahi atau masukkan lokasi yang akan digunakan untuk file cache server. Folder harus dapat akses.", "HeaderSelectServerCachePath": "Pilih lokasi Cache Server", "HeaderProfileServerSettingsHelp": "Nilai-nilai ini mengontrol bagaimana server akan menampilkan dirinya kepada klien.", "HeaderConnectToServer": "Sambungkan ke server", @@ -348,7 +348,7 @@ "Features": "Fitur", "Favorite": "Favorit", "FastForward": "Maju cepat", - "FFmpegSavePathNotFound": "Kami tidak dapat menemukan FFmpeg menggunakan jalur yang Anda masukkan. FFprobe juga diperlukan dan harus ada di folder yang sama. Komponen ini biasanya digabungkan dalam unduhan yang sama. Harap periksa jalurnya dan coba lagi.", + "FFmpegSavePathNotFound": "Kami tidak dapat menemukan FFmpeg menggunakan lokasi yang Anda masukkan. FFprobe juga diperlukan dan harus ada di folder yang sama. Komponen ini biasanya digabungkan dalam unduhan yang sama. Harap periksa lokasi dan coba lagi.", "Extras": "Ekstra", "ExtractChapterImagesHelp": "Mengekstrak gambar bab akan memungkinkan klien untuk menampilkan menu pemilihan adegan grafis. Prosesnya bisa lambat, membutuhkan banyak sumber daya, dan mungkin memerlukan beberapa gigabyte ruang. Ini berjalan saat video ditemukan, dan juga sebagai tugas yang dijadwalkan setiap malam. Jadwal dapat dikonfigurasi di area tugas terjadwal. Tidak disarankan untuk menjalankan tugas ini selama jam penggunaan puncak.", "ExtraLarge": "Ekstra besar", @@ -360,7 +360,7 @@ "ErrorGettingTvLineups": "Terjadi kesalahan saat mengunduh daftar TV. Harap pastikan informasi Anda benar dan coba lagi.", "ErrorAddingXmlTvFile": "Ada kesalahan saat mengakses file XMLTV. Harap pastikan file tersebut ada dan coba lagi.", "ErrorAddingTunerDevice": "Terjadi kesalahan saat menambahkan perangkat tuner. Harap pastikan itu dapat diakses dan coba lagi.", - "ErrorAddingMediaPathToVirtualFolder": "Terjadi kesalahan saat menambahkan jalur media. Harap pastikan jalurnya valid dan Jellyfin memiliki akses ke lokasi itu.", + "ErrorAddingMediaPathToVirtualFolder": "Terjadi kesalahan saat menambahkan lokasi media. Harap pastikan lokasi valid dan Jellyfin memiliki akses ke lokasi itu.", "ErrorAddingListingsToSchedulesDirect": "Terjadi kesalahan saat menambahkan daftar ke akun Jadwal Langsung Anda. Jadwal Langsung hanya mengizinkan jumlah daftar terbatas per akun. Anda mungkin perlu masuk ke situs web Jadwal Langsung dan menghapus daftar orang lain dari akun Anda sebelum melanjutkan.", "Episodes": "Episodes", "Episode": "Episode", @@ -371,5 +371,281 @@ "EnableThemeVideosHelp": "Putar video tema di latar belakang saat menjelajahi pustaka.", "EnableThemeSongsHelp": "Putar lagu tema di latar belakang saat menjelajahi pustaka.", "EnableStreamLoopingHelp": "Aktifkan ini jika live streaming hanya berisi beberapa detik data dan perlu terus diminta. Mengaktifkan ini saat tidak diperlukan dapat menyebabkan masalah.", - "EnableStreamLooping": "Putar otomatis live streaming" + "EnableStreamLooping": "Putar otomatis live streaming", + "LabelEnableAutomaticPortMap": "Aktifkan pemetaan port otomatis", + "LabelEmbedAlbumArtDidlHelp": "Beberapa perangkat lebih memilih metode ini untuk mendapatkan seni album. Orang lain mungkin gagal bermain dengan opsi ini diaktifkan.", + "LabelEmbedAlbumArtDidl": "Sematkan seni album di Didl", + "LabelEasyPinCode": "Kode pin mudah :", + "LabelDynamicExternalId": "{0} Id:", + "LabelDropShadow": "Bayangan jatuh :", + "LabelDroppedFrames": "Frame jatuh :", + "LabelDropImageHere": "Lepaskan gambar di sini, atau klik untuk menelusuri.", + "LabelDownloadLanguages": "Unduh bahasa :", + "LabelDownMixAudioScaleHelp": "Tingkatkan audio saat downmixing. Nilai satu akan mempertahankan volume aslinya.", + "LabelDownMixAudioScale": "Peningkatan audio saat downmixing :", + "LabelDisplaySpecialsWithinSeasons": "Tampilkan spesial dalam musim mereka ditayangkan", + "LabelDisplayOrder": "Urutan tampilan :", + "LabelDisplayName": "Nama tampilan :", + "LabelDisplayMode": "Mode tampilan :", + "LabelDisplayLanguageHelp": "Menerjemahkan Jellyfin adalah proyek yang sedang berlangsung.", + "LabelDisplayLanguage": "Bahasa tampilan :", + "LabelDiscNumber": "Nomor disk :", + "LabelDidlMode": "Mode DIDL :", + "LabelDeviceDescription": "Deskripsi perangkat", + "LabelDeinterlaceMethod": "Metode deinterlacing :", + "LabelDefaultUserHelp": "Menentukan pustaka pengguna mana yang harus ditampilkan pada perangkat yang terhubung. Ini dapat diganti untuk setiap perangkat menggunakan profil.", + "LabelDefaultUser": "Pengguna awal :", + "LabelDefaultScreen": "Layar awal :", + "LabelDeathDate": "Tanggal kematian :", + "LabelDay": "Hari :", + "LabelDateTimeLocale": "Tanggal waktu lokal :", + "LabelDateAddedBehaviorHelp": "Jika ada nilai metadata, nilai itu akan selalu digunakan sebelum salah satu opsi ini.", + "LabelDateAddedBehavior": "Tanggal ditambahkan perilaku untuk konten baru :", + "LabelDateAdded": "Tanggal Ditambahkan :", + "LabelCustomRating": "Peringkat khusus :", + "LabelCustomDeviceDisplayNameHelp": "Berikan nama tampilan khusus atau biarkan kosong untuk menggunakan nama yang dilaporkan oleh perangkat.", + "LabelCustomCssHelp": "Terapkan gaya kustom Anda sendiri di antarmuka web.", + "LabelCustomCss": "CSS Kustom :", + "LabelCurrentPassword": "Kata sandi saat ini :", + "LabelCriticRating": "Peringkat kritik :", + "LabelCorruptedFrames": "Bingkai rusak :", + "LabelCommunityRating": "Peringkat komunitas :", + "LabelCollection": "Koleksi :", + "LabelChannels": "Saluran :", + "LabelCertificatePasswordHelp": "Jika sertifikat Anda memerlukan kata sandi, harap masukkan di sini.", + "LabelCertificatePassword": "Kata sandi sertifikat :", + "LabelCancelled": "Dibatalkan", + "LabelCache": "Cache :", + "LabelBurnSubtitles": "Membakar subtitle :", + "LabelBlockContentWithTags": "Blokir item dengan tag :", + "LabelBlastMessageIntervalHelp": "Menentukan durasi dalam detik antara pesan ledakan hidup.", + "LabelBlastMessageInterval": "Interval pesan hidup", + "LabelBitrate": "Bitrate :", + "LabelBirthYear": "Tahun lahir :", + "LabelBirthDate": "Tanggal lahir :", + "LabelBindToLocalNetworkAddress": "Ikat ke alamat jaringan lokal :", + "LabelAutomaticallyRefreshInternetMetadataEvery": "Segarkan metadata secara otomatis dari internet :", + "LabelAuthProvider": "Penyedia Otentikasi :", + "LabelAudioSampleRate": "Tingkat sampel audio :", + "LabelAudioLanguagePreference": "Bahasa audio yang disukai :", + "LabelAudioCodec": "Codec audio :", + "LabelAudioChannels": "Saluran audio :", + "LabelAudioBitrate": "Kecepatan bit audio :", + "LabelAudioBitDepth": "Kedalaman bit audio :", + "LabelArtistsHelp": "Pisahkan beberapa artis dengan titik koma.", + "LabelArtists": "Artis :", + "LabelAppNameExample": "Contoh : Sickbeard, Sonarr", + "LabelAppName": "Nama aplikasi", + "LabelAllowedRemoteAddressesMode": "Mode filter alamat IP jarak jauh :", + "LabelAllowedRemoteAddresses": "Filter alamat IP jarak jauh :", + "LabelAllowHWTranscoding": "Izinkan transcoding perangkat keras", + "LabelAlbumArtists": "Artis album :", + "LabelAlbumArtPN": "Seni album PN :", + "LabelAlbumArtMaxWidth": "Lebar maksimal seni album :", + "LabelAlbumArtMaxHeight": "Tinggi maksimal seni album :", + "LabelAlbumArtHelp": "PN digunakan untuk seni album, dalam atribut dlna : profileID di upnp : albumArtURI. Beberapa perangkat memerlukan nilai tertentu, terlepas dari ukuran gambarnya.", + "LabelAlbumArtMaxResHelp": "Resolusi maksimum seni album yang diekspos melalui properti upnp : albumArtURI.", + "LabelAlbum": "Album :", + "LabelAirsBeforeSeason": "Tayang sebelum musim :", + "LabelAirsBeforeEpisode": "Tayang setelah musim :", + "LabelAirsAfterSeason": "Tayang setelah musim :", + "LabelAirTime": "Jam tayang :", + "LabelAirDays": "Hari tayang :", + "LabelAccessStart": "Waktu mulai :", + "LabelAccessEnd": "Akhir waktu :", + "LabelAccessDay": "Hari dalam seminggu :", + "Label3DFormat": "Format 3D :", + "Kids": "Anak-anak", + "Items": "Item", + "ItemCount": "{0} item", + "InstantMix": "Instant mix", + "InstallingPackage": "Memasang {0} (versi {1})", + "ImportMissingEpisodesHelp": "Informasi tentang episode yang hilang akan diimpor ke database Anda dan ditampilkan dalam musim dan serial. Ini dapat menyebabkan pemindaian pustaka jauh lebih lama.", + "ImportFavoriteChannelsHelp": "Hanya saluran yang ditandai sebagai favorit di perangkat tuner yang akan diimpor.", + "Images": "Gambar", + "Image": "Gambar", + "Identify": "Mengenali", + "HttpsRequiresCert": "Untuk mengaktifkan koneksi aman, Anda perlu memberikan sertifikat SSL terpercaya, seperti Let's Encrypt. Harap berikan sertifikat, atau nonaktifkan koneksi aman.", + "Horizontal": "Horisontal", + "Home": "Home", + "HideWatchedContentFromLatestMedia": "Sembunyikan konten yang ditonton dari media terbaru", + "Hide": "Sembunyikan", + "Help": "Tolong", + "HeaderYears": "Tahun", + "HeaderXmlSettings": "Pengaturan Xml", + "HeaderXmlDocumentAttributes": "Atribut Dokumen Xml", + "HeaderXmlDocumentAttribute": "Atribut Dokumen Xml", + "HeaderVideos": "Video", + "HeaderVideoTypes": "Jenis Video", + "HeaderVideoType": "Jenis Video", + "HeaderVideoQuality": "Kualitas video", + "HeaderUsers": "Pengguna", + "HeaderUser": "Pengguna", + "HeaderUploadImage": "Unggah Gambar", + "HeaderUpcomingOnTV": "Yang Akan Datang Di TV", + "HeaderTypeText": "Masukkan teks", + "HeaderTypeImageFetchers": "{0} Pengambil Gambar", + "HeaderTuners": "Tuner", + "HeaderTunerDevices": "Perangkat Tuner", + "HeaderTranscodingProfileHelp": "Tambahkan profil transcoding untuk menunjukkan format mana yang harus digunakan saat transcoding diperlukan.", + "HeaderTranscodingProfile": "Profil Transcoding", + "HeaderTracks": "Trek", + "HeaderThisUserIsCurrentlyDisabled": "Pengguna saat ini dinonaktifkan", + "HeaderTaskTriggers": "Pemicu Tugas", + "HeaderSystemDlnaProfiles": "Profil Sistem", + "HeaderSyncPlayEnabled": "SyncPlay diaktifkan", + "HeaderSyncPlaySelectGroup": "Bergabung dengan grup", + "HeaderSubtitleProfilesHelp": "Profil subtitle mendeskripsikan format subtitle yang didukung oleh perangkat.", + "HeaderSubtitleProfiles": "Profil Subtitle", + "HeaderSubtitleProfile": "Profil Subtitle", + "HeaderSubtitleDownloads": "Download Subtitle", + "HeaderSubtitleAppearance": "Penampilan Subtitle", + "HeaderStopRecording": "Berhenti Merekam", + "HeaderStatus": "Status", + "HeaderStartNow": "Mulai sekarang", + "HeaderSpecialEpisodeInfo": "Info Episode Spesial", + "HeaderSortOrder": "Urutan Sortir", + "HeaderSortBy": "Sortir dengan", + "HeaderSeriesStatus": "Status Seri", + "HeaderSeriesOptions": "Opsi Seri", + "HeaderSendMessage": "Mengirim pesan", + "HeaderSecondsValue": "{0} Detik", + "HeaderSeasons": "Musim", + "HeaderScenes": "Adegan", + "HeaderRunningTasks": "Menjalankan Tugas", + "HeaderRevisionHistory": "Jejak Revisi", + "HeaderRecordingPostProcessing": "Merekam Post Processing", + "PathNotFound": "Lokasi tidak dapat ditemukan. Harap pastikan lokasinya valid dan coba lagi.", + "XmlTvPathHelp": "Lokasi ke file XMLTV. Jellyfin akan membaca file ini dan secara berkala memeriksanya untuk pembaruan. Anda bertanggung jawab untuk membuat dan memperbarui file.", + "MessageChangeRecordingPath": "Mengubah folder rekaman Anda tidak akan memindahkan rekaman yang ada dari lokasi lama ke yang baru. Anda harus memindahkannya secara manual jika diinginkan.", + "MediaInfoPath": "Lokasi", + "LabelffmpegPathHelp": "Lokasi ke file aplikasi ffmpeg atau folder yang berisi ffmpeg.", + "LabelffmpegPath": "Lokasi FFmpeg :", + "LabelTranscodePath": "Lokasi transcode :", + "LabelSeriesRecordingPath": "Lokasi perekaman seri :", + "LabelRecordingPath": "Lokasi awal perekaman :", + "LabelPostProcessorArgumentsHelp": "Gunakan {path} sebagai lokasi ke file rekaman.", + "LabelPath": "Lokasi :", + "LabelOptionalNetworkPathHelp": "Jika folder ini dibagikan di jaringan Anda, menyediakan lokasi berbagi jaringan dapat memungkinkan klien di perangkat lain untuk mengakses file media secara langsung. Misalnya, {0} atau {1}.", + "LabelOptionalNetworkPath": "Folder jaringan bersama :", + "LabelMovieRecordingPath": "Lokasi perekaman film :", + "LabelMetadataPathHelp": "Tentukan lokasi khusus untuk karya seni dan metadata yang diunduh.", + "LabelMetadataPath": "Lokasi metadata :", + "LabelKodiMetadataSaveImagePathsHelp": "Ini disarankan jika Anda memiliki nama file gambar yang tidak sesuai dengan pedoman Kodi.", + "LabelKodiMetadataSaveImagePaths": "Simpan lokasi gambar dalam file nfo", + "LabelKodiMetadataEnablePathSubstitution": "Aktifkan substitusi lokasi", + "LabelCustomCertificatePathHelp": "Lokasi ke file PKCS #12 yang berisi sertifikat dan kunci pribadi untuk mengaktifkan dukungan TLS di domain khusus.", + "LabelCustomCertificatePath": "Lokasi khusus sertifikat SSL :", + "LabelCachePath": "Lokasi cache :", + "HeaderSelectTranscodingPathHelp": "Jelajahi atau masukkan lokasi yang akan digunakan untuk file transcode. Folder tersebut harus dapat ditulisi.", + "HeaderSelectMetadataPath": "Pilih Lokasi Metadata", + "HeaderSelectCertificatePath": "Pilih Lokasi Sertifikat", + "HeaderSelectTranscodingPath": "Pilih Lokasi Transcoding Temporary", + "HeaderSelectPath": "Pilih Lokasi", + "HeaderSelectMetadataPathHelp": "Jelajahi atau masukkan lokasi yang ingin Anda gunakan untuk metadata. Folder tersebut harus dapat ditulisi.", + "HeaderRemoteAccessSettings": "Pengaturan Akses Jarak Jauh", + "HeaderResponseProfile": "Profil Tanggapan", + "HeaderRemoveMediaLocation": "Hapus Lokasi Media", + "HeaderRemoveMediaFolder": "Hapus Folder Media", + "HeaderRemoteControl": "Kontrol Jarak Jauh", + "HeaderResponseProfileHelp": "Profil respons menyediakan cara untuk menyesuaikan informasi yang dikirim ke perangkat saat memutar jenis media tertentu.", + "HeaderRecordingOptions": "Opsi Perekaman", + "HeaderRecentlyPlayed": "Terakhir diputar", + "HeaderProfileInformation": "Informasi Profil", + "HeaderPreferredMetadataLanguage": "Bahasa Metadata Pilihan", + "HeaderPluginInstallation": "Instalasi Plugin", + "HeaderPleaseSignIn": "Silakan masuk", + "HeaderPlaybackError": "Kesalahan Pemutaran", + "HeaderPlayback": "Pemutaran Media", + "HeaderPlayOn": "Mainkan", + "HeaderPlayAll": "Mainkan Semua", + "HeaderPinCodeReset": "Atur Ulang Kode Pin", + "HeaderPhotoAlbums": "Album Foto", + "HeaderPaths": "Lokasi", + "HeaderPasswordReset": "Atur Ulang Kata Sandi", + "HeaderPassword": "Kata sandi", + "HeaderParentalRatings": "Peringkat Orang Tua", + "HeaderOtherItems": "Item Lainnya", + "HeaderOnNow": "Sekarang", + "HeaderNextVideoPlayingInValue": "Video Berikutnya Diputar di {0}", + "HeaderNextEpisodePlayingInValue": "Episode Berikutnya Diputar di {0}", + "HeaderNewDevices": "Perangkat Baru", + "HeaderNewApiKey": "Kunci API Baru", + "HeaderNavigation": "Navigasi", + "HeaderMyMediaSmall": "Media Saya (kecil)", + "HeaderMyMedia": "Media Saya", + "HeaderMyDevice": "Perangkat Saya", + "HeaderMusicQuality": "Kualitas Musik", + "HeaderMoreLikeThis": "Lainnya Seperti Ini", + "HeaderMetadataSettings": "Pengaturan Metadata", + "HeaderMediaFolders": "Folder Media", + "HeaderMedia": "Media", + "HeaderLoginFailure": "Kegagalan Login", + "HeaderLiveTvTunerSetup": "Penyiapan TV Tuner Langsung", + "HeaderLibrarySettings": "Pengaturan Pustaka", + "HeaderLibraryOrder": "Memesan Pustaka", + "HeaderLibraryFolders": "Folder Pustaka", + "HeaderLibraryAccess": "Akses Pustaka", + "HeaderLibraries": "Pustaka", + "HeaderLatestRecordings": "Rekaman Terbaru", + "HeaderLatestMusic": "Musik Terbaru", + "HeaderLatestMovies": "Film Terbaru", + "HeaderLatestMedia": "Media Terbaru", + "HeaderLatestEpisodes": "Episode Terbaru", + "HeaderKodiMetadataHelp": "Untuk mengaktifkan atau menonaktifkan metadata NFO, edit perpustakaan dan temukan bagian penghemat metadata.", + "HeaderKeepSeries": "Pertahankan Seri", + "HeaderKeepRecording": "Terus Rekam", + "HeaderInstantMix": "Mix Instan", + "HeaderInstall": "Install", + "HeaderImageSettings": "Pengaturan Gambar", + "HeaderImageOptions": "Opsi Gambar", + "HeaderIdentifyItemHelp": "Masukkan satu atau lebih kriteria pencarian. Hapus kriteria untuk meningkatkan hasil pencarian.", + "HeaderIdentificationHeader": "Header Identifikasi", + "HeaderIdentificationCriteriaHelp": "Masukkan setidaknya satu kriteria identifikasi.", + "HeaderIdentification": "Identifikasi", + "HeaderHttpsSettings": "Pengaturan HTTPS", + "HeaderHttpHeaders": "Header HTTP", + "HeaderGuideProviders": "Penyedia Data Panduan TV", + "HeaderFrequentlyPlayed": "Sering Dimainkan", + "HeaderForKids": "Untuk anak-anak", + "HeaderFetcherSettings": "Pengaturan Pengambil", + "HeaderFetchImages": "Ambil Gambar :", + "HeaderFeatureAccess": "Akses Fitur", + "HeaderExternalIds": "ID Eksternal :", + "HeaderError": "Kesalahan", + "HeaderEnabledFieldsHelp": "Hapus centang pada bidang untuk menguncinya dan mencegah datanya berubah.", + "HeaderEnabledFields": "Bidang Diaktifkan", + "HeaderEditImages": "Edit Gambar", + "HeaderDVR": "DVR", + "HeaderDownloadSync": "Unduh & Sinkronkan", + "HeaderDirectPlayProfileHelp": "Tambahkan profil putar langsung untuk menunjukkan format mana yang dapat ditangani perangkat secara asli.", + "HeaderDirectPlayProfile": "Profil Putar Langsung", + "HeaderDevices": "Perangkat", + "HeaderDeviceAccess": "Akses Perangkat", + "HeaderDeveloperInfo": "Info Pengembang", + "HeaderDetectMyDevices": "Deteksi Perangkat Saya", + "HeaderDeleteTaskTrigger": "Hapus Pemicu Tugas", + "HeaderDeleteProvider": "Hapus Penyedia", + "HeaderDeleteItems": "Hapus Item", + "HeaderDeleteItem": "Hapus Item", + "HeaderDeleteDevice": "Hapus Perangkat", + "HeaderDefaultRecordingSettings": "Pengaturan Awal Perekaman", + "HeaderDateIssued": "Tanggal diterbitkan", + "HeaderCustomDlnaProfiles": "Profil Kustom", + "HeaderContinueListening": "Lanjut Mendengarkan", + "HeaderContainerProfileHelp": "Wadah profil menunjukkan batasan perangkat saat memainkan format tertentu. Jika batasan berlaku maka media akan ditranskode, bahkan jika formatnya dikonfigurasi untuk pemutaran langsung.", + "HeaderContainerProfile": "Wadah Profil", + "HeaderConnectionFailure": "Koneksi Bermasalah", + "HeaderConfirmRevokeApiKey": "Cabut Kunci API", + "HeaderConfirmProfileDeletion": "Konfirmasi Penghapusan Profil", + "HeaderConfirmPluginInstallation": "Konfirmasi Instalasi Plugin", + "HeaderConfigureRemoteAccess": "Konfigurasi Akses Jarak Jauh", + "HeaderCodecProfileHelp": "Profil codec menunjukkan batasan perangkat saat memainkan codec tertentu. Jika batasan berlaku maka media akan ditranskode, meskipun codec dikonfigurasi untuk pemutaran langsung.", + "HeaderCodecProfile": "Profil Codec", + "HeaderChapterImages": "Gambar Bagian", + "Other": "Lainnya", + "Directors": "Direktur", + "Director": "Direktur", + "Depressed": "Murung", + "Data": "Data" } From 111820fe84f8b5e9333d00598372008817584359 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Kucharczyk?= Date: Fri, 11 Sep 2020 13:28:07 +0000 Subject: [PATCH 045/365] Translated using Weblate (Czech) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/cs/ --- src/strings/cs.json | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/src/strings/cs.json b/src/strings/cs.json index 22a8c4ae12..697f13ea7f 100644 --- a/src/strings/cs.json +++ b/src/strings/cs.json @@ -1373,5 +1373,29 @@ "Other": "Ostatní", "Bwdif": "BWDIF", "UseDoubleRateDeinterlacingHelp": "Toto nastavení při odstranění prokládání zdvojnásobuje snímkovou frekvenci, aby výsledné video vypadalo stejně plynule, jako při přehrávání prokládaného obsahu v televizi.", - "UseDoubleRateDeinterlacing": "Zdvojnásobit snímkovou frekvenci při odstranění prokládání" + "UseDoubleRateDeinterlacing": "Zdvojnásobit snímkovou frekvenci při odstranění prokládání", + "LabelTonemappingParamHelp": "Pro ladění algoritmu mapování tónů. Doporučená a výchozí hodnota je NaN. Obecně je pole ponecháváno prázdné.", + "LabelTonemappingParam": "Parametr mapování tónů:", + "LabelTonemappingPeakHelp": "Tato hodnota nahradí signální/nominální/referenční vrchol. Užitečné, pokud je informace o vrcholu z metadat nespolehlivá, nebo při mapování tónů z nižšího rozsahu na vyšší. Doporučená a výchozí hodnota je 0.", + "LabelTonemappingPeak": "Vrchol mapování tónů:", + "LabelTonemappingThresholdHelp": "Parametry algoritmu mapování tónů jsou přizpůsobené jednotlivým scénám. Tato mez se používá pro zjištění, zda se scéna změnila. Pokud rozdíl mezi aktuální průměrnou světlostí snímku a průběžným průměrem tuto mez překročí, bude průměr a vrchol světlosti scény přepočítán. Doporučené a výchozí hodnoty jsou 0,8 a 0,2.", + "LabelTonemappingThreshold": "Mez mapování tónů:", + "LabelTonemappingDesatHelp": "Snižuje barevnost příliš světlých míst obrazu. Vyšší hodnoty umožňují zachovat více barevných informací. Nepřirozené barvy v příliš světlých místech budou nahrazeny plynulým přechodem na bílou barvu a obraz tak bude vypadat přirozeněji na úkor barevných detailů v těchto místech. Doporučené a výchozí hodnoty jsou 0 a 0,5.", + "LabelTonemappingDesat": "Snížení barevnosti při mapování tónů:", + "TonemappingRangeHelp": "Výstupní rozsah barev. Automaticky znamená stejný jako vstupní.", + "LabelTonemappingRange": "Rozsah mapování tónů:", + "TonemappingAlgorithmHelp": "Mapování tonů je možné dále ladit. Pokud možnostem zde nerozumíte, je možné ponechat vše ve výchozím nastavení.
    Doporučená hodnota je Reinhard.", + "LabelTonemappingAlgorithm": "Algoritmus mapování tónů:", + "AllowTonemappingHelp": "Mapování tónů umožňuje změnit dynamický rozsah videa z HDR na SDR bez ztráty důležitých informací původního obrazu, např. detailů a barev.", + "EnableTonemapping": "Zapnout mapování tónů", + "LabelOpenclDeviceHelp": "Zařízení OpenCL použité pro mapování tónů. Nalevo od tečky je číslo platformy, napravo pak číslo zařízení na této platformě. Výchozí hodnota je 0.0. Soubor aplikace ffmpeg, který obsahuje metodu pro hardwarovou akceleraci OpenCL, je povinný.", + "LabelOpenclDevice": "Zařízení OpenCL:", + "LabelColorPrimaries": "Primární barvy:", + "LabelColorTransfer": "Převod barev:", + "LabelColorSpace": "Barevný prostor:", + "LabelVideoRange": "Rozsah videa:", + "MediaInfoColorPrimaries": "Primární barvy", + "MediaInfoColorTransfer": "Převod barev", + "MediaInfoColorSpace": "Barevný prostor", + "MediaInfoVideoRange": "Rozsah videa" } From 81166cffe1f71335cb958cd7e5cdbc064171c4fc Mon Sep 17 00:00:00 2001 From: ben-dl Date: Fri, 11 Sep 2020 18:06:09 +0000 Subject: [PATCH 046/365] Translated using Weblate (German) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/de/ --- src/strings/de.json | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/strings/de.json b/src/strings/de.json index 4e3a002b86..4baee1cb69 100644 --- a/src/strings/de.json +++ b/src/strings/de.json @@ -1370,5 +1370,11 @@ "UseDoubleRateDeinterlacingHelp": "Diese Einstellung verwendet die Halbbildrate beim Deinterlacing, oft auch als Bob-Deinterlacing bezeichnet, die die Bildrate des Videos verdoppelt, um eine vollständige Bewegung wie beim Betrachten von Interlaced-Video auf einem Fernseher zu erzielen.", "UseDoubleRateDeinterlacing": "Verdoppelung der Bildfrequenz beim Deinterlacing", "LabelIconMaxResHelp": "Maximale Auflösung der Icons, die über die Eigenschaft upnp:icon bereitgestellt wird.", - "LabelAlbumArtMaxResHelp": "Maximale Auflösung des Albumcovers, die über die Eigenschaft upnp:albumArtURI bereitgestellt wird." + "LabelAlbumArtMaxResHelp": "Maximale Auflösung des Albumcovers, die über die Eigenschaft upnp:albumArtURI bereitgestellt wird.", + "EnableTonemapping": "Tone Mapping aktivieren", + "LabelOpenclDeviceHelp": "Dies ist das OpenCL-Gerät, welches für Tone Mapping genutzt wird. Die linke Seite des Punktes ist die Plattform-Nummer, und die rechte Seite ist die Gerätenummer. Der Standardwert ist 0.0. ffmpeg mit OpenCL-Hardwarebeschleunigung wird benötigt.", + "LabelOpenclDevice": "OpenCL-Gerät:", + "LabelColorSpace": "Farbraum:", + "MediaInfoColorSpace": "Farbraum", + "VideoAudio": "Videoton" } From eec822ef34085e079e66948e8915078cbd6957ff Mon Sep 17 00:00:00 2001 From: dkanada Date: Sat, 12 Sep 2020 05:44:06 +0900 Subject: [PATCH 047/365] enable prefer-const rule for eslint --- .eslintrc.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.eslintrc.js b/.eslintrc.js index dfb65cb4d4..dc8729fb2a 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -44,10 +44,9 @@ module.exports = { 'no-restricted-globals': ['error'].concat(restrictedGlobals), 'no-trailing-spaces': ['error'], '@babel/no-unused-expressions': ['error', { 'allowShortCircuit': true, 'allowTernary': true, 'allowTaggedTemplates': true }], - //'no-unused-vars': ['error', { 'vars': 'all', 'args': 'none', 'ignoreRestSiblings': true }], 'one-var': ['error', 'never'], 'padded-blocks': ['error', 'never'], - //'prefer-const': ['error', {'destructuring': 'all'}], + 'prefer-const': ['error', {'destructuring': 'all'}], 'quotes': ['error', 'single', { 'avoidEscape': true, 'allowTemplateLiterals': false }], '@babel/semi': ['error'], 'space-before-blocks': ['error'], From a5776e98a72bae941c9c3e9f3f909bbb9dfbdb85 Mon Sep 17 00:00:00 2001 From: dkanada Date: Sat, 12 Sep 2020 05:46:15 +0900 Subject: [PATCH 048/365] always use const when possible --- src/components/notifications/notifications.js | 32 ++++----- src/components/playback/playbackmanager.js | 8 +-- .../subtitleeditor/subtitleeditor.js | 70 +++++++++---------- src/components/viewContainer.js | 2 +- src/controllers/movies/movies.js | 8 +-- src/controllers/movies/moviesrecommended.js | 14 ++-- src/plugins/comicsPlayer/plugin.js | 24 +++---- src/scripts/clientUtils.js | 2 +- 8 files changed, 80 insertions(+), 80 deletions(-) diff --git a/src/components/notifications/notifications.js b/src/components/notifications/notifications.js index cf3ae88345..7f0e68f1d9 100644 --- a/src/components/notifications/notifications.js +++ b/src/components/notifications/notifications.js @@ -31,7 +31,7 @@ function closeAfter(notification, timeoutMs) { function resetRegistration() { /* eslint-disable-next-line compat/compat */ - let serviceWorker = navigator.serviceWorker; + const serviceWorker = navigator.serviceWorker; if (serviceWorker) { serviceWorker.ready.then(function (registration) { serviceWorkerRegistration = registration; @@ -47,7 +47,7 @@ function showPersistentNotification(title, options, timeoutMs) { function showNonPersistentNotification(title, options, timeoutMs) { try { - let notif = new Notification(title, options); /* eslint-disable-line compat/compat */ + const notif = new Notification(title, options); /* eslint-disable-line compat/compat */ if (notif.show) { notif.show(); @@ -67,7 +67,7 @@ function showNonPersistentNotification(title, options, timeoutMs) { } function showNotification(options, timeoutMs, apiClient) { - let title = options.title; + const title = options.title; options.data = options.data || {}; options.data.serverId = apiClient.serverInfo().Id; @@ -95,7 +95,7 @@ function showNewItemNotification(item, apiClient) { body = item.SeriesName + ' - ' + body; } - let notification = { + const notification = { title: 'New ' + item.Type, body: body, vibrate: true, @@ -103,7 +103,7 @@ function showNewItemNotification(item, apiClient) { data: {} }; - let imageTags = item.ImageTags || {}; + const imageTags = item.ImageTags || {}; if (imageTags.Primary) { notification.icon = apiClient.getScaledImageUrl(item.Id, { @@ -117,7 +117,7 @@ function showNewItemNotification(item, apiClient) { } function onLibraryChanged(data, apiClient) { - let newItems = data.ItemsAdded; + const newItems = data.ItemsAdded; if (!newItems.length) { return; @@ -140,7 +140,7 @@ function onLibraryChanged(data, apiClient) { EnableTotalRecordCount: false }).then(function (result) { - let items = result.Items; + const items = result.Items; for (const item of items) { showNewItemNotification(item, apiClient); @@ -159,7 +159,7 @@ function showPackageInstallNotification(apiClient, installation, status) { return; } - let notification = { + const notification = { tag: 'install' + installation.Id, data: {} }; @@ -188,12 +188,12 @@ function showPackageInstallNotification(apiClient, installation, status) { } if (status === 'progress') { - let percentComplete = Math.round(installation.PercentComplete || 0); + const percentComplete = Math.round(installation.PercentComplete || 0); notification.body = percentComplete + '% complete.'; } - let timeout = status === 'cancelled' ? 5000 : 0; + const timeout = status === 'cancelled' ? 5000 : 0; showNotification(notification, timeout, apiClient); }); @@ -220,8 +220,8 @@ events.on(serverNotifications, 'PackageInstalling', function (e, apiClient, data }); events.on(serverNotifications, 'ServerShuttingDown', function (e, apiClient, data) { - let serverId = apiClient.serverInfo().Id; - let notification = { + const serverId = apiClient.serverInfo().Id; + const notification = { tag: 'restart' + serverId, title: globalize.translate('ServerNameIsShuttingDown', apiClient.serverInfo().Name) }; @@ -229,8 +229,8 @@ events.on(serverNotifications, 'ServerShuttingDown', function (e, apiClient, dat }); events.on(serverNotifications, 'ServerRestarting', function (e, apiClient, data) { - let serverId = apiClient.serverInfo().Id; - let notification = { + const serverId = apiClient.serverInfo().Id; + const notification = { tag: 'restart' + serverId, title: globalize.translate('ServerNameIsRestarting', apiClient.serverInfo().Name) }; @@ -238,8 +238,8 @@ events.on(serverNotifications, 'ServerRestarting', function (e, apiClient, data) }); events.on(serverNotifications, 'RestartRequired', function (e, apiClient) { - let serverId = apiClient.serverInfo().Id; - let notification = { + const serverId = apiClient.serverInfo().Id; + const notification = { tag: 'restart' + serverId, title: globalize.translate('PleaseRestartServerName', apiClient.serverInfo().Name) }; diff --git a/src/components/playback/playbackmanager.js b/src/components/playback/playbackmanager.js index 82bce8075e..a68663a769 100644 --- a/src/components/playback/playbackmanager.js +++ b/src/components/playback/playbackmanager.js @@ -1110,8 +1110,8 @@ class PlaybackManager { self.increasePlaybackRate = function (player) { player = player || self._currentPlayer; if (player) { - let current = self.getPlaybackRate(player); - let supported = self.getSupportedPlaybackRates(player); + const current = self.getPlaybackRate(player); + const supported = self.getSupportedPlaybackRates(player); let index = -1; for (let i = 0, length = supported.length; i < length; i++) { @@ -1129,8 +1129,8 @@ class PlaybackManager { self.decreasePlaybackRate = function (player) { player = player || self._currentPlayer; if (player) { - let current = self.getPlaybackRate(player); - let supported = self.getSupportedPlaybackRates(player); + const current = self.getPlaybackRate(player); + const supported = self.getSupportedPlaybackRates(player); let index = -1; for (let i = 0, length = supported.length; i < length; i++) { diff --git a/src/components/subtitleeditor/subtitleeditor.js b/src/components/subtitleeditor/subtitleeditor.js index 2ade9966cb..8697a9a747 100644 --- a/src/components/subtitleeditor/subtitleeditor.js +++ b/src/components/subtitleeditor/subtitleeditor.js @@ -18,9 +18,9 @@ let currentItem; let hasChanges; function downloadRemoteSubtitles(context, id) { - let url = 'Items/' + currentItem.Id + '/RemoteSearch/Subtitles/' + id; + const url = 'Items/' + currentItem.Id + '/RemoteSearch/Subtitles/' + id; - let apiClient = window.connectionManager.getApiClient(currentItem.ServerId); + const apiClient = window.connectionManager.getApiClient(currentItem.ServerId); apiClient.ajax({ type: 'POST', @@ -38,7 +38,7 @@ function downloadRemoteSubtitles(context, id) { } function deleteLocalSubtitle(context, index) { - let msg = globalize.translate('MessageAreYouSureDeleteSubtitles'); + const msg = globalize.translate('MessageAreYouSureDeleteSubtitles'); import('confirm').then(({default: confirm}) => { confirm({ @@ -51,10 +51,10 @@ function deleteLocalSubtitle(context, index) { }).then(function () { loading.show(); - let itemId = currentItem.Id; - let url = 'Videos/' + itemId + '/Subtitles/' + index; + const itemId = currentItem.Id; + const url = 'Videos/' + itemId + '/Subtitles/' + index; - let apiClient = window.connectionManager.getApiClient(currentItem.ServerId); + const apiClient = window.connectionManager.getApiClient(currentItem.ServerId); apiClient.ajax({ @@ -70,9 +70,9 @@ function deleteLocalSubtitle(context, index) { } function fillSubtitleList(context, item) { - let streams = item.MediaStreams || []; + const streams = item.MediaStreams || []; - let subs = streams.filter(function (s) { + const subs = streams.filter(function (s) { return s.Type === 'Subtitle'; }); @@ -86,7 +86,7 @@ function fillSubtitleList(context, item) { html += subs.map(function (s) { let itemHtml = ''; - let tagName = layoutManager.tv ? 'button' : 'div'; + const tagName = layoutManager.tv ? 'button' : 'div'; let className = layoutManager.tv && s.Path ? 'listItem listItem-border btnDelete' : 'listItem listItem-border'; if (layoutManager.tv) { @@ -126,7 +126,7 @@ function fillSubtitleList(context, item) { html += '
    '; } - let elem = context.querySelector('.subtitleList'); + const elem = context.querySelector('.subtitleList'); if (subs.length) { elem.classList.remove('hide'); @@ -137,18 +137,18 @@ function fillSubtitleList(context, item) { } function fillLanguages(context, apiClient, languages) { - let selectLanguage = context.querySelector('#selectLanguage'); + const selectLanguage = context.querySelector('#selectLanguage'); selectLanguage.innerHTML = languages.map(function (l) { return ''; }); - let lastLanguage = userSettings.get('subtitleeditor-language'); + const lastLanguage = userSettings.get('subtitleeditor-language'); if (lastLanguage) { selectLanguage.value = lastLanguage; } else { apiClient.getCurrentUser().then(function (user) { - let lang = user.Configuration.SubtitleLanguagePreference; + const lang = user.Configuration.SubtitleLanguagePreference; if (lang) { selectLanguage.value = lang; @@ -171,9 +171,9 @@ function renderSearchResults(context, results) { context.querySelector('.noSearchResults').classList.add('hide'); for (let i = 0, length = results.length; i < length; i++) { - let result = results[i]; + const result = results[i]; - let provider = result.ProviderName; + const provider = result.ProviderName; if (provider !== lastProvider) { if (i > 0) { @@ -184,7 +184,7 @@ function renderSearchResults(context, results) { lastProvider = provider; } - let tagName = layoutManager.tv ? 'button' : 'div'; + const tagName = layoutManager.tv ? 'button' : 'div'; let className = layoutManager.tv ? 'listItem listItem-border btnOptions' : 'listItem listItem-border'; if (layoutManager.tv) { className += ' listItem-focusscale listItem-button'; @@ -194,7 +194,7 @@ function renderSearchResults(context, results) { html += ''; - let bodyClass = result.Comment || result.IsHashMatch ? 'three-line' : 'two-line'; + const bodyClass = result.Comment || result.IsHashMatch ? 'three-line' : 'two-line'; html += '
    '; @@ -231,7 +231,7 @@ function renderSearchResults(context, results) { html += '
    '; } - let elem = context.querySelector('.subtitleResults'); + const elem = context.querySelector('.subtitleResults'); elem.innerHTML = html; loading.hide(); @@ -242,8 +242,8 @@ function searchForSubtitles(context, language) { loading.show(); - let apiClient = window.connectionManager.getApiClient(currentItem.ServerId); - let url = apiClient.getUrl('Items/' + currentItem.Id + '/RemoteSearch/Subtitles/' + language); + const apiClient = window.connectionManager.getApiClient(currentItem.ServerId); + const url = apiClient.getUrl('Items/' + currentItem.Id + '/RemoteSearch/Subtitles/' + language); apiClient.getJSON(url).then(function (results) { renderSearchResults(context, results); @@ -258,7 +258,7 @@ function reload(context, apiClient, itemId) { fillSubtitleList(context, item); let file = item.Path || ''; - let index = Math.max(file.lastIndexOf('/'), file.lastIndexOf('\\')); + const index = Math.max(file.lastIndexOf('/'), file.lastIndexOf('\\')); if (index > -1) { file = file.substring(index + 1); } @@ -282,9 +282,9 @@ function reload(context, apiClient, itemId) { } function onSearchSubmit(e) { - let form = this; + const form = this; - let lang = form.querySelector('#selectLanguage', form).value; + const lang = form.querySelector('#selectLanguage', form).value; searchForSubtitles(dom.parentWithClass(form, 'formDialogContent'), lang); @@ -293,10 +293,10 @@ function onSearchSubmit(e) { } function onSubtitleListClick(e) { - let btnDelete = dom.parentWithClass(e.target, 'btnDelete'); + const btnDelete = dom.parentWithClass(e.target, 'btnDelete'); if (btnDelete) { - let index = btnDelete.getAttribute('data-index'); - let context = dom.parentWithClass(btnDelete, 'subtitleEditorDialog'); + const index = btnDelete.getAttribute('data-index'); + const context = dom.parentWithClass(btnDelete, 'subtitleEditorDialog'); deleteLocalSubtitle(context, index); } } @@ -305,14 +305,14 @@ function onSubtitleResultsClick(e) { let subtitleId; let context; - let btnOptions = dom.parentWithClass(e.target, 'btnOptions'); + const btnOptions = dom.parentWithClass(e.target, 'btnOptions'); if (btnOptions) { subtitleId = btnOptions.getAttribute('data-subid'); context = dom.parentWithClass(btnOptions, 'subtitleEditorDialog'); showDownloadOptions(btnOptions, context, subtitleId); } - let btnDownload = dom.parentWithClass(e.target, 'btnDownload'); + const btnDownload = dom.parentWithClass(e.target, 'btnDownload'); if (btnDownload) { subtitleId = btnDownload.getAttribute('data-subid'); context = dom.parentWithClass(btnDownload, 'subtitleEditorDialog'); @@ -321,7 +321,7 @@ function onSubtitleResultsClick(e) { } function showDownloadOptions(button, context, subtitleId) { - let items = []; + const items = []; items.push({ name: globalize.translate('Download'), @@ -347,7 +347,7 @@ function showDownloadOptions(button, context, subtitleId) { function centerFocus(elem, horiz, on) { import('scrollHelper').then(({default: scrollHelper}) => { - let fn = on ? 'on' : 'off'; + const fn = on ? 'on' : 'off'; scrollHelper.centerFocus[fn](elem, horiz); }); } @@ -355,9 +355,9 @@ function centerFocus(elem, horiz, on) { function showEditorInternal(itemId, serverId, template) { hasChanges = false; - let apiClient = window.connectionManager.getApiClient(serverId); + const apiClient = window.connectionManager.getApiClient(serverId); return apiClient.getItem(apiClient.getCurrentUserId(), itemId).then(function (item) { - let dialogOptions = { + const dialogOptions = { removeOnClose: true, scrollY: false }; @@ -368,7 +368,7 @@ function showEditorInternal(itemId, serverId, template) { dialogOptions.size = 'small'; } - let dlg = dialogHelper.createDialog(dialogOptions); + const dlg = dialogHelper.createDialog(dialogOptions); dlg.classList.add('formDialog'); dlg.classList.add('subtitleEditorDialog'); @@ -379,7 +379,7 @@ function showEditorInternal(itemId, serverId, template) { dlg.querySelector('.subtitleSearchForm').addEventListener('submit', onSearchSubmit); - let btnSubmit = dlg.querySelector('.btnSubmit'); + const btnSubmit = dlg.querySelector('.btnSubmit'); if (layoutManager.tv) { centerFocus(dlg.querySelector('.formDialogContent'), false, true); @@ -388,7 +388,7 @@ function showEditorInternal(itemId, serverId, template) { btnSubmit.classList.add('hide'); } - let editorContent = dlg.querySelector('.formDialogContent'); + const editorContent = dlg.querySelector('.formDialogContent'); dlg.querySelector('.subtitleList').addEventListener('click', onSubtitleListClick); dlg.querySelector('.subtitleResults').addEventListener('click', onSubtitleResultsClick); diff --git a/src/components/viewContainer.js b/src/components/viewContainer.js index c39ad2ba84..0c0b705b52 100644 --- a/src/components/viewContainer.js +++ b/src/components/viewContainer.js @@ -14,7 +14,7 @@ import 'css!components/viewManager/viewContainer'; } controllerUrl = Dashboard.getPluginUrl(controllerUrl); - let apiUrl = ApiClient.getUrl('/web/' + controllerUrl); + const apiUrl = ApiClient.getUrl('/web/' + controllerUrl); return import(apiUrl).then((ControllerFactory) => { options.controllerFactory = ControllerFactory; }); diff --git a/src/controllers/movies/movies.js b/src/controllers/movies/movies.js index e05b1fa96a..01111d4c1b 100644 --- a/src/controllers/movies/movies.js +++ b/src/controllers/movies/movies.js @@ -163,11 +163,11 @@ import 'emby-itemscontainer'; itemsContainer.fetchData = fetchData; itemsContainer.getItemsHtml = getItemsHtml; itemsContainer.afterRefresh = afterRefresh; - let alphaPickerElement = tabContent.querySelector('.alphaPicker'); + const alphaPickerElement = tabContent.querySelector('.alphaPicker'); if (alphaPickerElement) { alphaPickerElement.addEventListener('alphavaluechanged', function (e) { - let newValue = e.detail.value; + const newValue = e.detail.value; query.NameStartsWith = newValue; query.StartIndex = 0; itemsContainer.refreshItems(); @@ -237,7 +237,7 @@ import 'emby-itemscontainer'; libraryBrowser.showLayoutMenu(e.target, this.getCurrentViewStyle, 'Banner,List,Poster,PosterCard,Thumb,ThumbCard'.split(',')); }); btnSelectView.addEventListener('layoutchange', function (e) { - let viewStyle = e.detail.viewStyle; + const viewStyle = e.detail.viewStyle; userSettings.set(savedViewKey, viewStyle); query.StartIndex = 0; onViewStyleChange(); @@ -274,7 +274,7 @@ import 'emby-itemscontainer'; this.showFilterMenu = function () { import('components/filterdialog/filterdialog').then(({default: filterDialogFactory}) => { - let filterDialog = new filterDialogFactory({ + const filterDialog = new filterDialogFactory({ query: query, mode: 'movies', serverId: ApiClient.serverId() diff --git a/src/controllers/movies/moviesrecommended.js b/src/controllers/movies/moviesrecommended.js index 5b85fbadae..4036128b51 100644 --- a/src/controllers/movies/moviesrecommended.js +++ b/src/controllers/movies/moviesrecommended.js @@ -58,7 +58,7 @@ import 'emby-button'; } function loadResume(page, userId, parentId) { - let screenWidth = dom.getWindowSize().innerWidth; + const screenWidth = dom.getWindowSize().innerWidth; const options = { SortBy: 'DatePlayed', SortOrder: 'Descending', @@ -154,8 +154,8 @@ import 'emby-button'; } function loadSuggestions(page, userId, parentId) { - let screenWidth = dom.getWindowSize().innerWidth; - let url = ApiClient.getUrl('Movies/Recommendations', { + const screenWidth = dom.getWindowSize().innerWidth; + const url = ApiClient.getUrl('Movies/Recommendations', { userId: userId, categoryLimit: 6, ItemLimit: screenWidth >= 1920 ? 8 : screenWidth >= 1600 ? 8 : screenWidth >= 1200 ? 6 : 5, @@ -172,7 +172,7 @@ import 'emby-button'; const html = recommendations.map(getRecommendationHtml).join(''); page.querySelector('.noItemsMessage').classList.add('hide'); - let recs = page.querySelector('.recommendations'); + const recs = page.querySelector('.recommendations'); recs.innerHTML = html; imageLoader.lazyChildren(recs); @@ -381,16 +381,16 @@ import 'emby-button'; const suggestionsTabIndex = 1; this.initTab = function () { - let tabContent = view.querySelector(".pageTabContent[data-index='" + suggestionsTabIndex + "']"); + const tabContent = view.querySelector(".pageTabContent[data-index='" + suggestionsTabIndex + "']"); initSuggestedTab(view, tabContent); }; this.renderTab = function () { - let tabContent = view.querySelector(".pageTabContent[data-index='" + suggestionsTabIndex + "']"); + const tabContent = view.querySelector(".pageTabContent[data-index='" + suggestionsTabIndex + "']"); loadSuggestionsTab(view, params, tabContent); }; - let tabControllers = []; + const tabControllers = []; let renderedTabs = []; view.addEventListener('viewshow', function (e) { initTabs(); diff --git a/src/plugins/comicsPlayer/plugin.js b/src/plugins/comicsPlayer/plugin.js index 7d0ac92df9..2928231391 100644 --- a/src/plugins/comicsPlayer/plugin.js +++ b/src/plugins/comicsPlayer/plugin.js @@ -19,14 +19,14 @@ export class ComicsPlayer { play(options) { this.progress = 0; - let elem = this.createMediaElement(); + const elem = this.createMediaElement(); return this.setCurrentSrc(elem, options); } stop() { this.unbindEvents(); - let elem = this.mediaElement; + const elem = this.mediaElement; if (elem) { dialogHelper.close(elem); this.mediaElement = null; @@ -40,7 +40,7 @@ export class ComicsPlayer { } onWindowKeyUp(e) { - let key = keyboardnavigation.getKeyName(e); + const key = keyboardnavigation.getKeyName(e); switch (key) { case 'Escape': this.stop(); @@ -87,20 +87,20 @@ export class ComicsPlayer { } setCurrentSrc(elem, options) { - let item = options.items[0]; + const item = options.items[0]; this.currentItem = item; loading.show(); - let serverId = item.ServerId; - let apiClient = window.connectionManager.getApiClient(serverId); + const serverId = item.ServerId; + const apiClient = window.connectionManager.getApiClient(serverId); libarchive.Archive.init({ workerUrl: appRouter.baseUrl() + '/libraries/worker-bundle.js' }); return new Promise((resolve, reject) => { - let downloadUrl = apiClient.getItemDownloadUrl(item.Id); + const downloadUrl = apiClient.getItemDownloadUrl(item.Id); const archiveSource = new ArchiveSource(downloadUrl); var instance = this; @@ -169,18 +169,18 @@ class ArchiveSource { } async load() { - let res = await fetch(this.url); + const res = await fetch(this.url); if (!res.ok) { return; } - let blob = await res.blob(); + const blob = await res.blob(); this.archive = await libarchive.Archive.open(blob); this.raw = await this.archive.getFilesArray(); this.numberOfFiles = this.raw.length; await this.archive.extractFiles(); - let files = await this.archive.getFilesArray(); + const files = await this.archive.getFilesArray(); files.sort((a, b) => { if (a.file.name < b.file.name) { return -1; @@ -189,9 +189,9 @@ class ArchiveSource { } }); - for (let file of files) { + for (const file of files) { /* eslint-disable-next-line compat/compat */ - let url = URL.createObjectURL(file.file); + const url = URL.createObjectURL(file.file); this.urls.push(url); } } diff --git a/src/scripts/clientUtils.js b/src/scripts/clientUtils.js index 4d3c049e8c..73801867c0 100644 --- a/src/scripts/clientUtils.js +++ b/src/scripts/clientUtils.js @@ -141,7 +141,7 @@ export function alert(options) { } export function capabilities(appHost) { - let capabilities = { + const capabilities = { PlayableMediaTypes: ['Audio', 'Video'], SupportedCommands: ['MoveUp', 'MoveDown', 'MoveLeft', 'MoveRight', 'PageUp', 'PageDown', 'PreviousLetter', 'NextLetter', 'ToggleOsd', 'ToggleContextMenu', 'Select', 'Back', 'SendKey', 'SendString', 'GoHome', 'GoToSettings', 'VolumeUp', 'VolumeDown', 'Mute', 'Unmute', 'ToggleMute', 'SetVolume', 'SetAudioStreamIndex', 'SetSubtitleStreamIndex', 'DisplayContent', 'GoToSearch', 'DisplayMessage', 'SetRepeatMode', 'SetShuffleQueue', 'ChannelUp', 'ChannelDown', 'PlayMediaSource', 'PlayTrailers'], SupportsPersistentIdentifier: window.appMode === 'cordova' || window.appMode === 'android', From 6b6841c8c81ab3c24da9b85f008e5601cd3758dd Mon Sep 17 00:00:00 2001 From: Cameron Date: Fri, 11 Sep 2020 22:39:53 +0100 Subject: [PATCH 049/365] Update CONTRIBUTORS.md --- CONTRIBUTORS.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md index 778d899ef7..672795cce1 100644 --- a/CONTRIBUTORS.md +++ b/CONTRIBUTORS.md @@ -39,6 +39,7 @@ - [Andrei Oanca](https://github.com/OancaAndrei) - [Cromefire_](https://github.com/cromefire) - [Orry Verducci](https://github.com/orryverducci) + - [Camc314](https://github.com/camc314) # Emby Contributors From 09c7d73c633938a0f25d4bf45462208bda870676 Mon Sep 17 00:00:00 2001 From: ben-dl Date: Fri, 11 Sep 2020 21:37:22 +0000 Subject: [PATCH 050/365] Translated using Weblate (German) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/de/ --- src/strings/de.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/de.json b/src/strings/de.json index 4baee1cb69..b0af47256e 100644 --- a/src/strings/de.json +++ b/src/strings/de.json @@ -1376,5 +1376,6 @@ "LabelOpenclDevice": "OpenCL-Gerät:", "LabelColorSpace": "Farbraum:", "MediaInfoColorSpace": "Farbraum", - "VideoAudio": "Videoton" + "VideoAudio": "Videoton", + "AllowTonemappingHelp": "Tone Mapping kann die Dynamic Range eines Videos von HDR zu SDR umwandeln und dabei Bilddetails und Farben beibehalten. Dies funktioniert zur Zeit nur mit dem NVENC HEVC-Decoder beim Transkodieren von HDR10 oder HLG-Videos." } From db98cf09b66b4a1fb6e3a0dfeb421e9fff29fa57 Mon Sep 17 00:00:00 2001 From: millallo Date: Sat, 12 Sep 2020 06:04:52 +0000 Subject: [PATCH 051/365] Translated using Weblate (Italian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/it/ --- src/strings/it.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/strings/it.json b/src/strings/it.json index e56bb17d6d..60f312a4c6 100644 --- a/src/strings/it.json +++ b/src/strings/it.json @@ -1370,5 +1370,7 @@ "Other": "Altro", "Data": "Dati", "Bwdif": "BWDIF", - "UseDoubleRateDeinterlacing": "Raddoppia il frame rate durante il deinterlacciamento" + "UseDoubleRateDeinterlacing": "Raddoppia il frame rate durante il deinterlacciamento", + "KnownProxiesHelp": "Lista degli IP separati da virgola dei proxy utilizzati per connettersi a Jellyfin. Ciò consente di gestire al meglio gli header X-Forwarded-For. Richiede il reboot.", + "LabelKnownProxies": "Proxy conosciuti:" } From 141787281a15bf1e6ae1df630893f715660c3b4b Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Sat, 12 Sep 2020 07:20:25 +0000 Subject: [PATCH 052/365] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index f17e623a7a..db359774fc 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -1388,5 +1388,33 @@ "Other": "மற்றவை", "Bwdif": "BWDIF", "UseDoubleRateDeinterlacingHelp": "டீஇன்டர்லேசிங் செய்யும் போது இந்த அமைப்பு புலம் வீதத்தைப் பயன்படுத்துகிறது, இது பெரும்பாலும் பாப் டீஇன்டர்லேசிங் என அழைக்கப்படுகிறது, இது டிவியில் ஒன்றோடொன்று இணைக்கப்பட்ட வீடியோவைப் பார்க்கும்போது நீங்கள் பார்ப்பது போன்ற முழு இயக்கத்தையும் வழங்க வீடியோவின் பிரேம் வீதத்தை இரட்டிப்பாக்குகிறது.", - "UseDoubleRateDeinterlacing": "செயலிழக்கும்போது பிரேம் வீதத்தை இரட்டிப்பாக்குங்கள்" + "UseDoubleRateDeinterlacing": "செயலிழக்கும்போது பிரேம் வீதத்தை இரட்டிப்பாக்குங்கள்", + "LabelMaxMuxingQueueSizeHelp": "அனைத்து ஸ்ட்ரீம்களையும் துவக்கக் காத்திருக்கும்போது இடையகப்படுத்தக்கூடிய அதிகபட்ச பாக்கெட்டுகள். Ffmpeg பதிவுகளில் \"வெளியீட்டு ஸ்ட்ரீமுக்கு இடையகப்படுத்தப்பட்ட பல பாக்கெட்டுகள்\" பிழையை நீங்கள் இன்னும் சந்தித்தால் அதை அதிகரிக்க முயற்சிக்கவும். பரிந்துரைக்கப்பட்ட மதிப்பு 2048 ஆகும்.", + "LabelMaxMuxingQueueSize": "அதிகபட்ச மக்ஸிங் வரிசை அளவு:", + "LabelTonemappingParamHelp": "டோன் மேப்பிங் வழிமுறையை டியூன் செய்யுங்கள். பரிந்துரைக்கப்பட்ட மற்றும் இயல்புநிலை மதிப்புகள் NaN ஆகும். பொதுவாக அதை காலியாக விடவும்.", + "LabelTonemappingParam": "டோன் மேப்பிங் அளவுரு:", + "LabelTonemappingPeakHelp": "இந்த மதிப்புடன் சமிக்ஞை / பெயரளவு / குறிப்பு உச்சத்தை மேலெழுதவும். காட்சி மெட்டாடேட்டாவில் உட்பொதிக்கப்பட்ட உச்ச தகவல் நம்பகத்தன்மையற்றதாக இருக்கும்போது அல்லது குறைந்த வரம்பிலிருந்து அதிக வரம்பிற்கு டோன் மேப்பிங் செய்யும்போது பயனுள்ளதாக இருக்கும். பரிந்துரைக்கப்பட்ட மற்றும் இயல்புநிலை மதிப்புகள் 0 ஆகும்.", + "LabelTonemappingPeak": "டோன் மேப்பிங் உச்சம்:", + "LabelTonemappingThresholdHelp": "டோன் மேப்பிங் அல்காரிதம் அளவுருக்கள் ஒவ்வொரு காட்சிக்கும் நன்றாக வடிவமைக்கப்பட்டுள்ளன. காட்சி மாறிவிட்டதா இல்லையா என்பதைக் கண்டறிய ஒரு வாசல் பயன்படுத்தப்படுகிறது. தற்போதைய சட்ட சராசரி பிரகாசத்திற்கும் தற்போதைய இயங்கும் சராசரிக்கும் இடையிலான தூரம் ஒரு நுழைவு மதிப்பை மீறினால், காட்சி சராசரி மற்றும் உச்ச பிரகாசத்தை மீண்டும் கணக்கிடுவோம். பரிந்துரைக்கப்பட்ட மற்றும் இயல்புநிலை மதிப்புகள் 0.8 மற்றும் 0.2 ஆகும்.", + "LabelTonemappingThreshold": "டோன் மேப்பிங் தொடக்கநிலை:", + "LabelTonemappingDesatHelp": "இந்த பிரகாசத்தின் அளவைத் தாண்டிய சிறப்பம்சங்களுக்கு தேய்மானத்தைப் பயன்படுத்துங்கள். அதிக அளவுரு, அதிக வண்ண தகவல்கள் பாதுகாக்கப்படும். இந்த அமைப்பு சூப்பர்-சிறப்பம்சங்களுக்கான இயற்கைக்கு மாறான வண்ணங்களைத் தடுக்க உதவுகிறது, அதற்கு பதிலாக (சுமூகமாக) வெள்ளை நிறமாக மாறுவதன் மூலம். இது வரம்பற்ற வண்ணங்களைப் பற்றிய தகவல்களைக் குறைக்கும் செலவில், படங்கள் மிகவும் இயல்பானதாக உணரவைக்கும். பரிந்துரைக்கப்பட்ட மற்றும் இயல்புநிலை மதிப்புகள் 0 மற்றும் 0.5 ஆகும்.", + "LabelTonemappingDesat": "டோன் மேப்பிங் டெசாட்:", + "TonemappingRangeHelp": "வெளியீட்டு வண்ண வரம்பைத் தேர்ந்தெடுக்கவும். ஆட்டோ என்பது உள்ளீட்டு வரம்பைப் போன்றது.", + "LabelTonemappingRange": "டோன் மேப்பிங் வரம்பு:", + "TonemappingAlgorithmHelp": "டோன் மேப்பிங் நன்றாக இருக்கும். இந்த விருப்பங்களை நீங்கள் அறிந்திருக்கவில்லை என்றால், இயல்புநிலையை வைத்திருங்கள்.
    பரிந்துரைக்கப்பட்ட மதிப்பு ரெய்ன்ஹார்ட்.", + "LabelTonemappingAlgorithm": "பயன்படுத்த டோன் மேப்பிங் வழிமுறையைத் தேர்ந்தெடுக்கவும்:", + "AllowTonemappingHelp": "டோன் மேப்பிங் ஒரு வீடியோவின் டைனமிக் வரம்பை எச்.டி.ஆரிலிருந்து எஸ்.டி.ஆருக்கு மாற்றும், அதே நேரத்தில் பட விவரங்களையும் வண்ணங்களையும் பராமரிக்கும், அவை அசல் காட்சியைக் குறிக்கும் மிக முக்கியமான தகவல்கள். தற்போது NVENC HEVC டிகோடரைப் பயன்படுத்தும்போது மற்றும் HDR10 அல்லது HLG வீடியோக்களை டிரான்ஸ்கோடிங் செய்யும் போது மட்டுமே செயல்படும்.", + "EnableTonemapping": "டோன் மேப்பிங்கை இயக்கு", + "LabelOpenclDeviceHelp": "இது ஓப்பன்சிஎல் சாதனம் ஆகும், இது டன்மேப்பிங்கிற்கு பயன்படுத்தப்படுகிறது. புள்ளியின் இடது புறம் இயங்குதள எண், மற்றும் வலது புறம் இயங்குதளத்தின் சாதன எண். இயல்புநிலை மதிப்பு 0.0. OpenCL வன்பொருள் முடுக்கம் முறையைக் கொண்ட ffmpeg பயன்பாட்டுக் கோப்பு தேவை.", + "LabelOpenclDevice": "OpenCL சாதனம்:", + "LabelColorPrimaries": "வண்ண முதன்மைகள்:", + "LabelColorTransfer": "வண்ண பரிமாற்றம்:", + "LabelColorSpace": "வண்ண இடம்:", + "LabelVideoRange": "வீடியோ வரம்பு:", + "MediaInfoColorPrimaries": "வண்ண முதன்மைகள்", + "MediaInfoColorTransfer": "வண்ண பரிமாற்றம்", + "MediaInfoColorSpace": "வண்ண இடம்", + "MediaInfoVideoRange": "வீடியோ வரம்பு", + "LabelKnownProxies": "அறியப்பட்ட பிரதிநிதிகள்:", + "KnownProxiesHelp": "உங்கள் ஜெல்லிஃபின் நிகழ்வோடு இணைக்கும்போது பயன்படுத்தப்படும் அறியப்பட்ட ப்ராக்ஸிகளின் ஐபி முகவரிகளின் கமாவால் பிரிக்கப்பட்ட பட்டியல். எக்ஸ்-ஃபார்வர்ட்-ஃபார் தலைப்புகளை முறையாகப் பயன்படுத்த இது தேவைப்படுகிறது. சேமித்த பிறகு மறுதொடக்கம் தேவை." } From 2023ce37eb8b760269c43df9e46d69208aeea69a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Kucharczyk?= Date: Sat, 12 Sep 2020 11:20:21 +0000 Subject: [PATCH 053/365] Translated using Weblate (Czech) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/cs/ --- src/strings/cs.json | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/strings/cs.json b/src/strings/cs.json index 697f13ea7f..15cb46f70a 100644 --- a/src/strings/cs.json +++ b/src/strings/cs.json @@ -1397,5 +1397,9 @@ "MediaInfoColorPrimaries": "Primární barvy", "MediaInfoColorTransfer": "Převod barev", "MediaInfoColorSpace": "Barevný prostor", - "MediaInfoVideoRange": "Rozsah videa" + "MediaInfoVideoRange": "Rozsah videa", + "LabelMaxMuxingQueueSizeHelp": "Maximální počet paketů, které je možné napřed načíst při čekání na spuštění všech proudů. Pokud se stále zobrazuje chyba \"Příliš mnoho paketů načtených napřed ve výstupním proudu\" v protokolech ffmpeg, zkuste hodnotu zvýšit. Doporučená hodnota je 2048.", + "LabelMaxMuxingQueueSize": "Maximální velikost muxovací fronty:", + "LabelKnownProxies": "Známé proxy servery:", + "KnownProxiesHelp": "Čárkami oddělený seznam IP adres známých proxy serverů pro připojení k instanci Jellyfin. Vyžadováno pro správné využití HTTP hlavičky X-Forwarded-For. Vyžaduje restart." } From 70d7a561c5f4e9508782774374fb518e52ae7cb7 Mon Sep 17 00:00:00 2001 From: Thomas Schwery Date: Sat, 12 Sep 2020 11:28:16 +0000 Subject: [PATCH 054/365] Translated using Weblate (French) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fr/ --- src/strings/fr.json | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/src/strings/fr.json b/src/strings/fr.json index 587bc1a555..907c67f23e 100644 --- a/src/strings/fr.json +++ b/src/strings/fr.json @@ -1373,5 +1373,22 @@ "PosterCard": "Affiche", "UseDoubleRateDeinterlacing": "Multiplier par deux la fréquence d'images lors du désentrelacement", "Bwdif": "BWDIF", - "UseDoubleRateDeinterlacingHelp": "Ce réglage utilise la fréquence de trame lors du désentrelacement, souvent appelé \"bob deinterlacing\", qui double la fréquence d'image de la vidéo pour fournir un mouvement fluide comme en regardant une vidéo entrelacée sur un téléviseur." + "UseDoubleRateDeinterlacingHelp": "Ce réglage utilise la fréquence de trame lors du désentrelacement, souvent appelé \"bob deinterlacing\", qui double la fréquence d'image de la vidéo pour fournir un mouvement fluide comme en regardant une vidéo entrelacée sur un téléviseur.", + "LabelTonemappingDesat": "Désaturation tonale :", + "TonemappingRangeHelp": "Sélectionnez la gamme de couleur de sortie. Auto représente la même gamme qu'en entrée.", + "LabelTonemappingRange": "Gamme de mappage tonal :", + "TonemappingAlgorithmHelp": "Le mappage tonal peut être affiné. Si vous n'êtes pas familier avec ces options, gardez les valeurs par défaut.
    La valeur recommandée est Reinhard.", + "LabelTonemappingAlgorithm": "Sélectionnez l'algorithme de mappage tonal à utiliser :", + "AllowTonemappingHelp": "Le mappage tonal peut transformer la gamme dynamique d'une vidéo de HDR à SDR tout en maintenant les détails et les couleurs d'image qui sont des informations importantes pour la représentation de la scène originale. Actuellement, ne fonctionne uniquement lorsque le décodeur NVENC HEVC est utilisé et que des vidéos HDR10 ou HLG sont transcodées.", + "EnableTonemapping": "Activer le mappage tonal", + "LabelOpenclDeviceHelp": "Ce dispositif OpenCL est utilisé pour le mappage tonal. La partie à gauche du point est le numéro de plate-forme et la partie à droite est le numéro du dispositif sur la plate-forme. La valeur par défaut est 0.0. Le fichier de l'application ffmpeg contenant l'accélération matérielle OpenCL est nécessaire.", + "LabelOpenclDevice": "Dispositif OpenCL :", + "LabelColorPrimaries": "Couleurs primaires :", + "LabelColorTransfer": "Transfert couleur :", + "LabelColorSpace": "Espace couleur :", + "MediaInfoColorPrimaries": "Couleurs primaires", + "MediaInfoColorTransfer": "Transfert couleur", + "MediaInfoColorSpace": "Espace couleur", + "LabelKnownProxies": "Proxies connus :", + "KnownProxiesHelp": "Liste séparée par des virgules d'adresses IP des proxies connus utilisés pour se connecter à l'instance Jellyfin. Ceci est nécessaire afin de pouvoir utiliser correctement les entêtes X-Forwarded-For. Nécessite un redémarrage après sauvegarde." } From 1dd771d446a3b55efabe1d18ecff62f527ca0388 Mon Sep 17 00:00:00 2001 From: Thomas Schwery Date: Sat, 12 Sep 2020 12:07:41 +0000 Subject: [PATCH 055/365] Translated using Weblate (French) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fr/ --- src/strings/fr.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/strings/fr.json b/src/strings/fr.json index 907c67f23e..ed243f98a4 100644 --- a/src/strings/fr.json +++ b/src/strings/fr.json @@ -1390,5 +1390,7 @@ "MediaInfoColorTransfer": "Transfert couleur", "MediaInfoColorSpace": "Espace couleur", "LabelKnownProxies": "Proxies connus :", - "KnownProxiesHelp": "Liste séparée par des virgules d'adresses IP des proxies connus utilisés pour se connecter à l'instance Jellyfin. Ceci est nécessaire afin de pouvoir utiliser correctement les entêtes X-Forwarded-For. Nécessite un redémarrage après sauvegarde." + "KnownProxiesHelp": "Liste séparée par des virgules d'adresses IP des proxies connus utilisés pour se connecter à l'instance Jellyfin. Ceci est nécessaire afin de pouvoir utiliser correctement les entêtes X-Forwarded-For. Nécessite un redémarrage après sauvegarde.", + "LabelTonemappingThreshold": "Seuil de mappage tonal :", + "LabelTonemappingDesatHelp": "Désature les couleurs qui dépassent ce niveau de luminosité. Plus ce paramètre est élevé, plus les informations de couleur seront préservées. Ce paramètre permet d'éviter les couleurs anormalement éclatantes pour les couleurs super-lumineuses en les transformant (de manière lisse) en blanc. Ceci rend l'image plus naturelle au prix d'une réduction d'information dans les couleurs hors-gamme. Les valeurs recommandées et par défaut sont 0 et 0.5." } From 8f24c4d2c94b0e712028858b45ae8f7793578da1 Mon Sep 17 00:00:00 2001 From: Moritz Date: Sat, 12 Sep 2020 19:50:13 +0000 Subject: [PATCH 056/365] Translated using Weblate (German) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/de/ --- src/strings/de.json | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/strings/de.json b/src/strings/de.json index b0af47256e..d6104fba72 100644 --- a/src/strings/de.json +++ b/src/strings/de.json @@ -1377,5 +1377,10 @@ "LabelColorSpace": "Farbraum:", "MediaInfoColorSpace": "Farbraum", "VideoAudio": "Videoton", - "AllowTonemappingHelp": "Tone Mapping kann die Dynamic Range eines Videos von HDR zu SDR umwandeln und dabei Bilddetails und Farben beibehalten. Dies funktioniert zur Zeit nur mit dem NVENC HEVC-Decoder beim Transkodieren von HDR10 oder HLG-Videos." + "AllowTonemappingHelp": "Tone Mapping kann die Dynamic Range eines Videos von HDR zu SDR umwandeln und dabei Bilddetails und Farben beibehalten. Dies funktioniert zur Zeit nur mit dem NVENC HEVC-Decoder beim Transkodieren von HDR10 oder HLG-Videos.", + "TonemappingRangeHelp": "Wählen Sie den Ausgabefarbbereich aus. Auto ist derselbe wie der Eingabebereich.", + "TonemappingAlgorithmHelp": "Das Tonemapping kann fein abgestimmt werden. Wenn Sie mit diesen Optionen nicht vertraut sind, behalten Sie einfach den Standardwert bei.
    Der empfohlene Wert ist Reinhard.", + "LabelTonemappingAlgorithm": "Wählen Sie den zu verwendenden Tonemapping-Algorithmus aus:", + "LabelKnownProxies": "Bekannte Proxys:", + "KnownProxiesHelp": "Kommagetrennte Liste von IP-Adressen bekannter Proxys, die bei der Verbindung mit Ihrer Jellyfin-Instanz verwendet werden. Dies ist erforderlich, um die X-Forwarded-For-Header korrekt verwenden zu können. Erfordert nach dem Speichern einen Neustart." } From 1014c6cd352b0d702f341a761018e1ee2a513336 Mon Sep 17 00:00:00 2001 From: millallo Date: Sun, 13 Sep 2020 17:59:00 +0000 Subject: [PATCH 057/365] Translated using Weblate (Italian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/it/ --- src/strings/it.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings/it.json b/src/strings/it.json index 60f312a4c6..f1e30b754f 100644 --- a/src/strings/it.json +++ b/src/strings/it.json @@ -568,7 +568,7 @@ "LabelModelName": "Nome Modello", "LabelModelNumber": "Numero Modello", "LabelModelUrl": "Modello URL", - "LabelMonitorUsers": "Monitora l'attività da:", + "LabelMonitorUsers": "Monitora l'attività di:", "LabelMovieCategories": "Categorie film:", "LabelMoviePrefix": "Prefisso film:", "LabelMoviePrefixHelp": "Se un prefisso viene applicato ai titoli di film, inseriscilo qui in modo che il server possa gestirlo correttamente.", From 71c44dccd6ab690bb720b47d01ec1c9b26bcf12d Mon Sep 17 00:00:00 2001 From: grafixeyehero Date: Mon, 14 Sep 2020 00:04:55 +0300 Subject: [PATCH 058/365] move music tabs suggestions to the second position --- .../homeScreenSettings/homeScreenSettings.js | 8 ++-- src/controllers/music/music.html | 40 +++++++++---------- src/controllers/music/musicrecommended.js | 19 ++++----- src/controllers/shows/tvrecommended.js | 34 ++++++++-------- 4 files changed, 51 insertions(+), 50 deletions(-) diff --git a/src/components/homeScreenSettings/homeScreenSettings.js b/src/components/homeScreenSettings/homeScreenSettings.js index 3348348f20..5825d19a24 100644 --- a/src/components/homeScreenSettings/homeScreenSettings.js +++ b/src/components/homeScreenSettings/homeScreenSettings.js @@ -88,13 +88,13 @@ import 'emby-checkbox'; }); } else if (type === 'music') { list.push({ - name: globalize.translate('Suggestions'), - value: 'suggestions', + name: globalize.translate('Albums'), + value: 'albums', isDefault: true }); list.push({ - name: globalize.translate('Albums'), - value: 'albums' + name: globalize.translate('Suggestions'), + value: 'suggestions' }); list.push({ name: globalize.translate('HeaderAlbumArtists'), diff --git a/src/controllers/music/music.html b/src/controllers/music/music.html index 84d324857d..aba8379f81 100644 --- a/src/controllers/music/music.html +++ b/src/controllers/music/music.html @@ -8,7 +8,26 @@ } } -
    +
    +
    +
    + + + + + +
    + +
    +
    + +
    +
    +
    +
    +
    +
    +
    @@ -34,25 +53,6 @@
    -
    -
    -
    - - - - - -
    - -
    -
    - -
    -
    -
    -
    -
    -
    diff --git a/src/controllers/music/musicrecommended.js b/src/controllers/music/musicrecommended.js index a93bfea4e3..7b11a8eb21 100644 --- a/src/controllers/music/musicrecommended.js +++ b/src/controllers/music/musicrecommended.js @@ -177,9 +177,9 @@ import 'flexStyles'; function getTabs() { return [{ - name: globalize.translate('Suggestions') - }, { name: globalize.translate('Albums') + }, { + name: globalize.translate('Suggestions') }, { name: globalize.translate('HeaderAlbumArtists') }, { @@ -195,7 +195,7 @@ import 'flexStyles'; function getDefaultTabIndex(folderId) { switch (userSettings.get('landing-' + folderId)) { - case 'albums': + case 'suggestions': return 1; case 'albumartists': @@ -221,7 +221,7 @@ import 'flexStyles'; export default function (view, params) { function reload() { loading.show(); - const tabContent = view.querySelector(".pageTabContent[data-index='0']"); + const tabContent = view.querySelector(".pageTabContent[data-index='" + suggestionsTabIndex + "']"); loadSuggestionsTab(view, tabContent, params.topParentId); } @@ -268,11 +268,11 @@ import 'flexStyles'; switch (index) { case 0: - depends = 'controllers/music/musicrecommended'; + depends = 'controllers/music/musicalbums'; break; case 1: - depends = 'controllers/music/musicalbums'; + depends = 'controllers/music/musicrecommended'; break; case 2: @@ -296,7 +296,7 @@ import 'flexStyles'; import(depends).then(({default: controllerFactory}) => { let tabContent; - if (index == 0) { + if (index == 1) { tabContent = view.querySelector(".pageTabContent[data-index='" + index + "']"); this.tabContent = tabContent; } @@ -306,7 +306,7 @@ import 'flexStyles'; if (!controller) { tabContent = view.querySelector(".pageTabContent[data-index='" + index + "']"); - if (index === 0) { + if (index === 1) { controller = this; } else if (index === 7) { controller = new controllerFactory(view, tabContent, { @@ -360,9 +360,10 @@ import 'flexStyles'; } let currentTabIndex = parseInt(params.tab || getDefaultTabIndex(params.topParentId)); + const suggestionsTabIndex = 1; this.initTab = function () { - const tabContent = view.querySelector(".pageTabContent[data-index='0']"); + const tabContent = view.querySelector(".pageTabContent[data-index='" + suggestionsTabIndex + "']"); const containers = tabContent.querySelectorAll('.itemsContainer'); for (let i = 0, length = containers.length; i < length; i++) { diff --git a/src/controllers/shows/tvrecommended.js b/src/controllers/shows/tvrecommended.js index 048d27d45d..da47f9f318 100644 --- a/src/controllers/shows/tvrecommended.js +++ b/src/controllers/shows/tvrecommended.js @@ -66,16 +66,16 @@ import 'emby-button'; } function initSuggestedTab(page, tabContent) { - var containers = tabContent.querySelectorAll('.itemsContainer'); + const containers = tabContent.querySelectorAll('.itemsContainer'); - for (var i = 0, length = containers.length; i < length; i++) { + for (let i = 0, length = containers.length; i < length; i++) { setScrollClasses(containers[i], enableScrollX()); } } function loadSuggestionsTab(view, params, tabContent) { - var parentId = params.topParentId; - var userId = ApiClient.getCurrentUserId(); + const parentId = params.topParentId; + const userId = ApiClient.getCurrentUserId(); console.debug('loadSuggestionsTab'); loadResume(tabContent, userId, parentId); loadLatest(tabContent, userId, parentId); @@ -83,8 +83,8 @@ import 'emby-button'; } function loadResume(view, userId, parentId) { - var screenWidth = dom.getWindowSize().innerWidth; - var options = { + const screenWidth = dom.getWindowSize().innerWidth; + const options = { SortBy: 'DatePlayed', SortOrder: 'Descending', IncludeItemTypes: 'Episode', @@ -105,8 +105,8 @@ import 'emby-button'; view.querySelector('#resumableSection').classList.add('hide'); } - var allowBottomPadding = !enableScrollX(); - var container = view.querySelector('#resumableItems'); + const allowBottomPadding = !enableScrollX(); + const container = view.querySelector('#resumableItems'); cardBuilder.buildCards(result.Items, { itemsContainer: container, preferThumb: true, @@ -128,7 +128,7 @@ import 'emby-button'; } function loadLatest(view, userId, parentId) { - var options = { + const options = { userId: userId, IncludeItemTypes: 'Episode', Limit: 30, @@ -138,9 +138,9 @@ import 'emby-button'; EnableImageTypes: 'Primary,Backdrop,Thumb' }; ApiClient.getLatestItems(options).then(function (items) { - var section = view.querySelector('#latestItemsSection'); - var allowBottomPadding = !enableScrollX(); - var container = section.querySelector('#latestEpisodesItems'); + const section = view.querySelector('#latestItemsSection'); + const allowBottomPadding = !enableScrollX(); + const container = section.querySelector('#latestEpisodesItems'); cardBuilder.buildCards(items, { parentContainer: section, itemsContainer: container, @@ -169,7 +169,7 @@ import 'emby-button'; } function loadNextUp(view, userId, parentId) { - var query = { + const query = { userId: userId, Limit: 24, Fields: 'PrimaryImageAspectRatio,SeriesInfo,DateCreated,BasicSyncInfo', @@ -186,8 +186,8 @@ import 'emby-button'; view.querySelector('.noNextUpItems').classList.remove('hide'); } - var section = view.querySelector('#nextUpItemsSection'); - var container = section.querySelector('#nextUpItems'); + const section = view.querySelector('#nextUpItemsSection'); + const container = section.querySelector('#nextUpItems'); cardBuilder.buildCards(result.Items, { parentContainer: section, itemsContainer: container, @@ -345,12 +345,12 @@ import 'emby-button'; const suggestionsTabIndex = 1; self.initTab = function () { - var tabContent = view.querySelector(".pageTabContent[data-index='" + suggestionsTabIndex + "']"); + const tabContent = view.querySelector(".pageTabContent[data-index='" + suggestionsTabIndex + "']"); initSuggestedTab(view, tabContent); }; self.renderTab = function () { - var tabContent = view.querySelector(".pageTabContent[data-index='" + suggestionsTabIndex + "']"); + const tabContent = view.querySelector(".pageTabContent[data-index='" + suggestionsTabIndex + "']"); loadSuggestionsTab(view, params, tabContent); }; From 3cc20ce480df43a23a3f6562436f4cac26112161 Mon Sep 17 00:00:00 2001 From: grafixeyehero Date: Mon, 14 Sep 2020 01:09:59 +0300 Subject: [PATCH 059/365] add more Landing Screen Options --- .../homeScreenSettings/homeScreenSettings.js | 12 ++++++++---- src/controllers/movies/movies.html | 12 ++++++------ src/controllers/music/music.html | 2 +- src/controllers/shows/tvrecommended.html | 2 +- src/controllers/shows/tvrecommended.js | 10 ++++++++-- 5 files changed, 24 insertions(+), 14 deletions(-) diff --git a/src/components/homeScreenSettings/homeScreenSettings.js b/src/components/homeScreenSettings/homeScreenSettings.js index 5825d19a24..5138935408 100644 --- a/src/components/homeScreenSettings/homeScreenSettings.js +++ b/src/components/homeScreenSettings/homeScreenSettings.js @@ -75,16 +75,20 @@ import 'emby-checkbox'; value: 'suggestions' }); list.push({ - name: globalize.translate('Latest'), - value: 'latest' + name: globalize.translate('Upcoming'), + value: 'upcoming' }); list.push({ name: globalize.translate('Genres'), value: 'genres' }); list.push({ - name: globalize.translate('Favorites'), - value: 'favorites' + name: globalize.translate('Networks'), + value: 'networks' + }); + list.push({ + name: globalize.translate('Episodes'), + value: 'episodes' }); } else if (type === 'music') { list.push({ diff --git a/src/controllers/movies/movies.html b/src/controllers/movies/movies.html index dddda3f7f9..5c905d1225 100644 --- a/src/controllers/movies/movies.html +++ b/src/controllers/movies/movies.html @@ -1,6 +1,6 @@
    -
    +
    @@ -17,7 +17,7 @@
    -
    +

    ${HeaderContinueWatching}

    @@ -43,7 +43,7 @@

    ${MessageNoMovieSuggestionsAvailable}

    -
    +
    @@ -59,7 +59,7 @@
    -
    +
    @@ -71,7 +71,7 @@
    -
    +
    @@ -85,7 +85,7 @@
    -
    +
    diff --git a/src/controllers/music/music.html b/src/controllers/music/music.html index aba8379f81..0ec339db95 100644 --- a/src/controllers/music/music.html +++ b/src/controllers/music/music.html @@ -85,7 +85,7 @@
    -
    +
    diff --git a/src/controllers/shows/tvrecommended.html b/src/controllers/shows/tvrecommended.html index 0d7b7dced8..75e1546936 100644 --- a/src/controllers/shows/tvrecommended.html +++ b/src/controllers/shows/tvrecommended.html @@ -54,7 +54,7 @@
    -
    +
    diff --git a/src/controllers/shows/tvrecommended.js b/src/controllers/shows/tvrecommended.js index da47f9f318..9955df6b58 100644 --- a/src/controllers/shows/tvrecommended.js +++ b/src/controllers/shows/tvrecommended.js @@ -36,12 +36,18 @@ import 'emby-button'; case 'suggestions': return 1; - case 'favorites': - return 1; + case 'upcoming': + return 2; case 'genres': return 3; + case 'networks': + return 4; + + case 'episodes': + return 5; + default: return 0; } From d3c5b83b290ab5ed3baef95f44ba7c182f5ca563 Mon Sep 17 00:00:00 2001 From: grafixeyehero Date: Mon, 14 Sep 2020 01:23:20 +0300 Subject: [PATCH 060/365] clean up unused search tab condition --- src/controllers/movies/movies.html | 2 -- src/controllers/movies/moviesrecommended.js | 5 ----- src/controllers/music/music.html | 2 -- src/controllers/music/musicrecommended.js | 5 ----- src/controllers/shows/tvrecommended.html | 2 -- src/controllers/shows/tvrecommended.js | 5 ----- 6 files changed, 21 deletions(-) diff --git a/src/controllers/movies/movies.html b/src/controllers/movies/movies.html index 5c905d1225..ec2a975db1 100644 --- a/src/controllers/movies/movies.html +++ b/src/controllers/movies/movies.html @@ -88,6 +88,4 @@
    -
    -
    diff --git a/src/controllers/movies/moviesrecommended.js b/src/controllers/movies/moviesrecommended.js index 4036128b51..44b0fe25fe 100644 --- a/src/controllers/movies/moviesrecommended.js +++ b/src/controllers/movies/moviesrecommended.js @@ -320,11 +320,6 @@ import 'emby-button'; if (index === suggestionsTabIndex) { controller = this; - } else if (index === 6) { - controller = new controllerFactory(view, tabContent, { - collectionType: 'movies', - parentId: params.topParentId - }); } else if (index == 0 || index == 3) { controller = new controllerFactory(view, params, tabContent, { mode: index ? 'favorites' : 'movies' diff --git a/src/controllers/music/music.html b/src/controllers/music/music.html index 0ec339db95..43251226c9 100644 --- a/src/controllers/music/music.html +++ b/src/controllers/music/music.html @@ -105,6 +105,4 @@
    -
    -
    diff --git a/src/controllers/music/musicrecommended.js b/src/controllers/music/musicrecommended.js index 7b11a8eb21..6c569ddd41 100644 --- a/src/controllers/music/musicrecommended.js +++ b/src/controllers/music/musicrecommended.js @@ -308,11 +308,6 @@ import 'flexStyles'; if (index === 1) { controller = this; - } else if (index === 7) { - controller = new controllerFactory(view, tabContent, { - collectionType: 'music', - parentId: params.topParentId - }); } else { controller = new controllerFactory(view, params, tabContent); } diff --git a/src/controllers/shows/tvrecommended.html b/src/controllers/shows/tvrecommended.html index 75e1546936..dbfac37b91 100644 --- a/src/controllers/shows/tvrecommended.html +++ b/src/controllers/shows/tvrecommended.html @@ -67,6 +67,4 @@
    -
    -
    diff --git a/src/controllers/shows/tvrecommended.js b/src/controllers/shows/tvrecommended.js index 9955df6b58..db7bef2d50 100644 --- a/src/controllers/shows/tvrecommended.js +++ b/src/controllers/shows/tvrecommended.js @@ -285,11 +285,6 @@ import 'emby-button'; if (index === 1) { controller = self; - } else if (index === 6) { - controller = new controllerFactory(view, tabContent, { - collectionType: 'tvshows', - parentId: params.topParentId - }); } else { controller = new controllerFactory(view, params, tabContent); } From db76b40affa67fcec41d4daec0c6a4c79dee62f1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9D=D0=B8=D0=BA=D0=BE=D0=BB=D0=B0=D0=B9=20=D0=98=D0=B2?= =?UTF-8?q?=D0=B0=D0=BD=D0=BE=D0=B2?= Date: Sun, 13 Sep 2020 19:55:51 +0000 Subject: [PATCH 061/365] Translated using Weblate (Bulgarian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/bg/ --- src/strings/bg-bg.json | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/src/strings/bg-bg.json b/src/strings/bg-bg.json index c0a63032f2..f4d6dfc317 100644 --- a/src/strings/bg-bg.json +++ b/src/strings/bg-bg.json @@ -1352,5 +1352,32 @@ "MessagePluginInstallError": "Възникна грешка при инсталирането на добавката.", "PlaybackRate": "Скорост на възпроизвеждане", "NextTrack": "Прескочи към следващ", - "LabelUnstable": "Нестабилна" + "LabelUnstable": "Нестабилна", + "LabelOpenclDevice": "Устройство OpenCL:", + "LabelColorPrimaries": "Цветни първични елементи:", + "LabelColorTransfer": "Цветен трансфер:", + "LabelColorSpace": "Цветово пространство:", + "LabelVideoRange": "Видео обхват:", + "MediaInfoColorPrimaries": "Цветни първични материали", + "MediaInfoColorTransfer": "Цветен трансфер", + "MediaInfoColorSpace": "Цветово пространство", + "MediaInfoVideoRange": "Видео обхват", + "Bwdif": "Филтър БВДИФ", + "VideoAudio": "Видео Аудио", + "Video": "Видео", + "ThumbCard": "Малък постер", + "Subtitle": "Субтитри", + "SpecialFeatures": "Специални функции", + "SelectServer": "Избери сървър", + "Restart": "Рестартирай", + "ResetPassword": "Нулира парола", + "Profile": "Профил", + "PosterCard": "Плакат карта", + "Poster": "Плакат", + "Photo": "Снимки", + "MusicVideos": "Музикални видеа", + "LabelKnownProxies": "Познати проксита:", + "Image": "Картинка", + "Other": "Други", + "Data": "Данни" } From 7d77cc9900d7adb434f38b4e718dbff0a97688b8 Mon Sep 17 00:00:00 2001 From: Franco Castillo Date: Sun, 13 Sep 2020 23:51:02 +0000 Subject: [PATCH 062/365] Translated using Weblate (Spanish (Argentina)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/es_AR/ --- src/strings/es-ar.json | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/src/strings/es-ar.json b/src/strings/es-ar.json index 521f4ef98f..5f303b1ce2 100644 --- a/src/strings/es-ar.json +++ b/src/strings/es-ar.json @@ -1373,5 +1373,22 @@ "Other": "Otro", "Bwdif": "BWDIF", "UseDoubleRateDeinterlacingHelp": "Esta configuración utiliza la velocidad de campo al desentrelazar, a menudo denominado desentrelazado bob, que duplica la velocidad de fotogramas del video para proporcionar un movimiento completo como lo que vería al ver un video entrelazado en un televisor.", - "UseDoubleRateDeinterlacing": "Duplique la velocidad de fotogramas al desentrelazar" + "UseDoubleRateDeinterlacing": "Duplique la velocidad de fotogramas al desentrelazar", + "LabelTonemappingParam": "Parámetro de mapeo de tonos:", + "LabelTonemappingPeak": "Pico de mapeo de tonos:", + "LabelTonemappingThreshold": "Umbral de mapeo de tonos:", + "LabelTonemappingRange": "Rango de mapeo de tonos:", + "LabelTonemappingAlgorithm": "Seleccione el algoritmo de mapeo de tonos para usar:", + "EnableTonemapping": "Habilitar mapeo de tonos", + "LabelOpenclDeviceHelp": "Este es el dispositivo OpenCL que se utiliza para el mapeo de tonos. El lado izquierdo del punto es el número de plataforma y el lado derecho es el número de dispositivo en la plataforma. El valor predeterminado es 0.0. Se requiere el archivo de aplicación ffmpeg que contiene el método de aceleración por hardware OpenCL.", + "LabelOpenclDevice": "Dispositivo OpenCL:", + "LabelColorPrimaries": "Primarias de color:", + "LabelColorTransfer": "Transferencia de color:", + "LabelColorSpace": "Espacio de color:", + "LabelVideoRange": "Rango de video:", + "MediaInfoColorPrimaries": "Primarias de color", + "MediaInfoColorTransfer": "Transferencia de color", + "MediaInfoColorSpace": "Espacio de color", + "MediaInfoVideoRange": "Rango de video", + "LabelKnownProxies": "Proxies conocidos:" } From 270f585b265f40012c76bc6e95553576cc8b285b Mon Sep 17 00:00:00 2001 From: Daniyar Itegulov Date: Mon, 8 Jun 2020 17:44:55 +1000 Subject: [PATCH 063/365] Make book plugin render EPUBs continuously for mobile devices --- src/plugins/bookPlayer/plugin.js | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/src/plugins/bookPlayer/plugin.js b/src/plugins/bookPlayer/plugin.js index 0303275be2..8cde3f400f 100644 --- a/src/plugins/bookPlayer/plugin.js +++ b/src/plugins/bookPlayer/plugin.js @@ -1,3 +1,4 @@ +import browser from 'browser'; import loading from 'loading'; import keyboardnavigation from 'keyboardnavigation'; import dialogHelper from 'dialogHelper'; @@ -230,6 +231,23 @@ export class BookPlayer { return elem; } + render(elem, book) { + if (browser.mobile) { + return book.renderTo(elem, { + width: '100%', + height: '100%', + manager: 'continuous', + flow: 'scrolled-doc', + offset: 0 + }); + } else { + return book.renderTo(elem, { + width: '100%', + height: '100%' + }); + } + } + setCurrentSrc(elem, options) { const item = options.items[0]; this._currentItem = item; @@ -248,7 +266,7 @@ export class BookPlayer { import('epubjs').then(({default: epubjs}) => { const downloadHref = apiClient.getItemDownloadUrl(item.Id); const book = epubjs(downloadHref, {openAs: 'epub'}); - const rendition = book.renderTo(elem, {width: '100%', height: '97%'}); + const rendition = this.render(elem, book); this._currentSrc = downloadHref; this._rendition = rendition; From 14583cf18e824308f6e7741da95e3204129cf8d1 Mon Sep 17 00:00:00 2001 From: Daniyar Itegulov Date: Mon, 14 Sep 2020 18:51:03 +1000 Subject: [PATCH 064/365] Add next/prev chapter buttons for mobile devices Also removes touch events as they interfere with continuous scrolling --- src/plugins/bookPlayer/plugin.js | 75 +++++++++++++++++--------------- src/plugins/bookPlayer/style.css | 46 ++++++++++++++++---- 2 files changed, 77 insertions(+), 44 deletions(-) diff --git a/src/plugins/bookPlayer/plugin.js b/src/plugins/bookPlayer/plugin.js index 8cde3f400f..0c3d6850aa 100644 --- a/src/plugins/bookPlayer/plugin.js +++ b/src/plugins/bookPlayer/plugin.js @@ -19,6 +19,8 @@ export class BookPlayer { this.onDialogClosed = this.onDialogClosed.bind(this); this.openTableOfContents = this.openTableOfContents.bind(this); + this.prevChapter = this.prevChapter.bind(this); + this.nextChapter = this.nextChapter.bind(this); this.onWindowKeyUp = this.onWindowKeyUp.bind(this); } @@ -123,26 +125,6 @@ export class BookPlayer { } } - onTouchStart(e) { - // TODO: depending on the event this can be the document or the rendition itself - const rendition = this._rendition || this; - const book = rendition.book; - - // check that the event is from the book or the document - if (!book || this._loaded === false) return; - - // epubjs stores pages off the screen or something for preloading - // get the modulus of the touch event to account for the increased width - if (!e.touches || e.touches.length === 0) return; - - const touch = e.touches[0].clientX % dom.getWindowSize().innerWidth; - if (touch < dom.getWindowSize().innerWidth / 2) { - book.package.metadata.direction === 'rtl' ? rendition.next() : rendition.prev(); - } else { - book.package.metadata.direction === 'rtl' ? rendition.prev() : rendition.next(); - } - } - onDialogClosed() { this.stop(); } @@ -151,27 +133,33 @@ export class BookPlayer { const elem = this._mediaElement; elem.addEventListener('close', this.onDialogClosed, {once: true}); - elem.querySelector('.btnBookplayerExit').addEventListener('click', this.onDialogClosed, {once: true}); - elem.querySelector('.btnBookplayerToc').addEventListener('click', this.openTableOfContents); + elem.querySelector('#btnBookplayerExit').addEventListener('click', this.onDialogClosed, {once: true}); + elem.querySelector('#btnBookplayerToc').addEventListener('click', this.openTableOfContents); + if (browser.mobile) { + elem.querySelector('#btnBookplayerPrev').addEventListener('click', this.prevChapter); + elem.querySelector('#btnBookplayerNext').addEventListener('click', this.nextChapter); + } } bindEvents() { this.bindMediaElementEvents(); document.addEventListener('keyup', this.onWindowKeyUp); - document.addEventListener('touchstart', this.onTouchStart); // FIXME: I don't really get why document keyup event is not triggered when epub is in focus this._rendition.on('keyup', this.onWindowKeyUp); - this._rendition.on('touchstart', this.onTouchStart); } unbindMediaElementEvents() { const elem = this._mediaElement; elem.removeEventListener('close', this.onDialogClosed); - elem.querySelector('.btnBookplayerExit').removeEventListener('click', this.onDialogClosed); - elem.querySelector('.btnBookplayerToc').removeEventListener('click', this.openTableOfContents); + elem.querySelector('#btnBookplayerExit').removeEventListener('click', this.onDialogClosed); + elem.querySelector('#btnBookplayerToc').removeEventListener('click', this.openTableOfContents); + if (browser.mobile) { + elem.querySelector('#btnBookplayerPrev').removeEventListener('click', this.prevChapter); + elem.querySelector('#btnBookplayerNext').removeEventListener('click', this.nextChapter); + } } unbindEvents() { @@ -180,11 +168,9 @@ export class BookPlayer { } document.removeEventListener('keyup', this.onWindowKeyUp); - document.removeEventListener('touchstart', this.onTouchStart); if (this._rendition) { this._rendition.off('keyup', this.onWindowKeyUp); - this._rendition.off('touchstart', this.onTouchStart); } } @@ -194,6 +180,16 @@ export class BookPlayer { } } + prevChapter(e) { + this._rendition.prev(); + e.preventDefault(); + } + + nextChapter(e) { + this._rendition.next(); + e.preventDefault(); + } + createMediaElement() { let elem = this._mediaElement; if (elem) { @@ -214,13 +210,22 @@ export class BookPlayer { elem.id = 'bookPlayer'; let html = ''; - html += '
    '; - html += ''; + + if (browser.mobile) { + html += '
    '; + } + + html += '
    '; + html += '
    '; + html += ''; + html += ''; html += '
    '; - html += '
    '; - html += ''; html += '
    '; + if (browser.mobile) { + html += '
    '; + } + elem.innerHTML = html; dialogHelper.open(elem); @@ -236,9 +241,7 @@ export class BookPlayer { return book.renderTo(elem, { width: '100%', height: '100%', - manager: 'continuous', - flow: 'scrolled-doc', - offset: 0 + flow: 'scrolled-doc' }); } else { return book.renderTo(elem, { @@ -266,7 +269,7 @@ export class BookPlayer { import('epubjs').then(({default: epubjs}) => { const downloadHref = apiClient.getItemDownloadUrl(item.Id); const book = epubjs(downloadHref, {openAs: 'epub'}); - const rendition = this.render(elem, book); + const rendition = this.render('viewer', book); this._currentSrc = downloadHref; this._rendition = rendition; diff --git a/src/plugins/bookPlayer/style.css b/src/plugins/bookPlayer/style.css index e37b995f31..99aad62260 100644 --- a/src/plugins/bookPlayer/style.css +++ b/src/plugins/bookPlayer/style.css @@ -7,18 +7,20 @@ background: #fff; } -.topRightActionButtons { - right: 0.5vh; +.topButtons { top: 0.5vh; z-index: 1002; - position: absolute; + position: sticky; } -.topLeftActionButtons { - left: 0.5vh; - top: 0.5vh; - z-index: 1002; - position: absolute; +#btnBookplayerToc { + float: left; + margin-left: 2vw; +} + +#btnBookplayerExit { + float: right; + margin-right: 2vw; } .bookplayerButtonIcon { @@ -37,3 +39,31 @@ .bookplayerErrorMsg { text-align: center; } + +#viewer { + align-items: flex-start; +} + +#btnBookplayerPrev { + margin: 0.5vh 0.5vh; + color: black; +} + +#btnBookplayerNext { + margin: 0.5vh 0.5vh; + color: black; +} + +.button-wrapper { + text-align: center; + position: relative; + height: 0; +} + +.top-button { + margin: 0.5vh 2em; +} + +.bottom-button { + margin: 2em 0.5vh; +} From 0062a3b1b2ec550e8f6e688b61a42e9c07654d03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Kucharczyk?= Date: Mon, 14 Sep 2020 08:48:35 +0000 Subject: [PATCH 065/365] Translated using Weblate (Czech) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/cs/ --- src/strings/cs.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/strings/cs.json b/src/strings/cs.json index 15cb46f70a..098cd9e3d2 100644 --- a/src/strings/cs.json +++ b/src/strings/cs.json @@ -187,8 +187,8 @@ "HeaderAdmin": "Administrátor", "HeaderAlbumArtists": "Umělci alba", "HeaderAlert": "Upozornění", - "HeaderApiKey": "Klíč Api", - "HeaderApiKeys": "Klíče API", + "HeaderApiKey": "Klíč k API", + "HeaderApiKeys": "Klíče k API", "HeaderApiKeysHelp": "Externí aplikace musí mít klíč k API, aby mohly komunikovat se serverem. Klíče jsou vydávány přihlášením k běžnému uživatelskému účtu nebo ruční žádostí o klíč.", "HeaderApp": "Aplikace", "HeaderAudioBooks": "Audio knihy", @@ -202,7 +202,7 @@ "HeaderCodecProfileHelp": "Kodek profily označují omezení daného zařízení pro přehrávání pomocí specifických kodeků. Jestliže je omezení aplikováno, média budou překódovany i v případě, že kodek je nakonfigurován pro přímé přehrávání.", "HeaderConfirmPluginInstallation": "Potvrzení instalace zásuvného modulu", "HeaderConfirmProfileDeletion": "Potvrdit smazání profilu", - "HeaderConfirmRevokeApiKey": "Odvolat klíč Api", + "HeaderConfirmRevokeApiKey": "Odvolat klíč k API", "HeaderConnectToServer": "Připojit k serveru", "HeaderConnectionFailure": "Připojení selhalo", "HeaderContainerProfile": "Profil obalů", @@ -261,7 +261,7 @@ "HeaderMyDevice": "Moje zařízení", "HeaderMyMedia": "Moje média", "HeaderMyMediaSmall": "Moje média (malé)", - "HeaderNewApiKey": "Nový klíč API", + "HeaderNewApiKey": "Nový klíč k API", "HeaderNextEpisodePlayingInValue": "Přehrávání další epizody za {0}", "HeaderNextVideoPlayingInValue": "Přehrávání dalšího videa za {0}", "HeaderOnNow": "Právě teď", @@ -1278,7 +1278,7 @@ "ButtonTogglePlaylist": "Playlist", "LabelStable": "Stabilní", "LabelChromecastVersion": "Verze Chromecastu", - "ApiKeysCaption": "Seznam povolených API klíčů", + "ApiKeysCaption": "Seznam povolených klíčů k API", "LabelEnableHttpsHelp": "Naslouchání na uvedeném portu HTTPS. K fungování je nutné nakonfigurovat i platný certifikát.", "LabelEnableHttps": "Povolit HTTPS", "HeaderServerAddressSettings": "Nastavení adresy serveru", From a5800ac2e3a932fcec3bdceeb66e355b926928c4 Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Mon, 14 Sep 2020 12:34:11 +0000 Subject: [PATCH 066/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 27 ++++++++++++++++++++------- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index 57333b5a3a..5543564a11 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -147,7 +147,7 @@ "AllComplexFormats": "Tất cả các định dạng phức tạp (ASS, SSA, VOBSUB, PGS, SUB, IDX, ...)", "AllChannels": "Tất cả các kênh", "Alerts": "Cảnh Báo", - "Albums": "Albums", + "Albums": "Bộ Sưu Tập", "Aired": "Đã phát sóng", "AirDate": "Ngày phát sóng", "AdditionalNotificationServices": "Duyệt qua danh mục plugin để cài đặt các dịch vụ thông báo bổ sung.", @@ -193,7 +193,7 @@ "ColorTransfer": "Chuyển đổi màu", "ColorSpace": "Bộ mã màu", "ColorPrimaries": "Những màu chủ đạo", - "Collections": "Bộ sưu tập", + "Collections": "Bộ Sưu Tập", "ClientSettings": "Cài đặt thiết bị phát", "CinemaModeConfigurationHelp": "Chế độ Cinema giúp bạn mang lại trải nghiệm rạp chiếu phim ngay tại phòng khách với khả năng phát trailers và những đoạn mở đầu tuỳ chọn trước phần chính của bộ phim.", "ChannelNumber": "Kênh số", @@ -280,7 +280,7 @@ "HeaderApiKey": "API Key", "HeaderAllowMediaDeletionFrom": "Cho Phép Xoá Nội Dung", "HeaderAlert": "Thông Báo", - "HeaderAlbumArtists": "Nghệ Sĩ Album", + "HeaderAlbumArtists": "Bộ Sưu Tập Nghệ sĩ", "HeaderAdmin": "Quản Trị", "HeaderAdditionalParts": "Phần Bổ Sung", "HeaderAddUpdateImage": "Thêm/Thay Đổi Hình Ảnh", @@ -301,18 +301,18 @@ "GuestStar": "Ngôi sao khách mời", "GroupVersions": "Chia nhóm theo phiên bản", "GroupBySeries": "Chia nhóm theo bộ", - "Genres": "Thể loại", + "Genres": "Thể Loại", "Genre": "Thể loại", "General": "Tổng Hợp", "Fullscreen": "Toàn màn hình", "Friday": "Thứ Sáu", "FormatValue": "Định dạng: {0}", - "Folders": "Thư mục", + "Folders": "Thư Mục", "Filters": "Bộ lọc", "File": "Tập tin", "FetchingData": "Đang tải thêm thông tin", "Features": "Mục đặc trưng", - "Favorites": "Mục yêu thích", + "Favorites": "Sở Thích", "Favorite": "Mục yêu thích", "FastForward": "Tua nhanh", "FFmpegSavePathNotFound": "Máy chủ không thể tìm thấy chương trình FFmpeg trong đường dẫn bạn đã nhập. FFprobe thì cũng cần thiết và phải nằm trong cùng thư mục bên trên. Những phần mềm này thường được tổng hợp cùng nhau trong một lượt tải. Hãy thử lại sau khi kiểm tra đường dẫn.", @@ -701,5 +701,18 @@ "LabelPassword": "Mật khẩu:", "LabelNotificationEnabled": "Bật thông báo này", "LabelNewsCategories": "", - "LabelStable": "Ổn Định" + "LabelStable": "Ổn Định", + "LabelTonemappingAlgorithm": "Chọn thuật toán ánh xạ Tone màu để sử dụng:", + "TonemappingAlgorithmHelp": "Ánh xạ Tone màu có thể được tinh chỉnh. Nếu bạn không quen với tùy chọn này, hãy giữ mặc định.
    Giá trị mặc định: Reinhard.", + "TonemappingRangeHelp": "Chọn dải màu đầu ra. Tự động là giống như dải màu đầu vào.", + "StopPlayback": "Dừng Phát", + "Preview": "Xem Trước", + "SubtitleVerticalPositionHelp": "Số dòng nơi văn bản xuất hiện. Số dương cho biết từ trên xuống. Số âm cho biết từ dưới lên.", + "Movies": "Phim", + "Photos": "Ảnh", + "Playlists": "Danh Sách Chơi", + "Shows": "Các Chương Trình", + "Songs": "Các Bài Hát", + "Sync": "Đồng Bộ", + "ValueSpecialEpisodeName": "Đặc Biệt - {0}" } From d3d02af2a586900c5569bad1c5d7327cd7a1615e Mon Sep 17 00:00:00 2001 From: Serhiy Date: Mon, 14 Sep 2020 15:41:34 +0000 Subject: [PATCH 067/365] Translated using Weblate (Italian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/it/ --- src/strings/it.json | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/strings/it.json b/src/strings/it.json index f1e30b754f..5d794dbc2b 100644 --- a/src/strings/it.json +++ b/src/strings/it.json @@ -1372,5 +1372,11 @@ "Bwdif": "BWDIF", "UseDoubleRateDeinterlacing": "Raddoppia il frame rate durante il deinterlacciamento", "KnownProxiesHelp": "Lista degli IP separati da virgola dei proxy utilizzati per connettersi a Jellyfin. Ciò consente di gestire al meglio gli header X-Forwarded-For. Richiede il reboot.", - "LabelKnownProxies": "Proxy conosciuti:" + "LabelKnownProxies": "Proxy conosciuti:", + "LabelColorSpace": "Spazio colore:", + "LabelVideoRange": "Range video:", + "MediaInfoColorSpace": "Spazio colore", + "ThumbCard": "Miniatura", + "PosterCard": "Locandina", + "LabelOpenclDevice": "Dispositivo OpenCL:" } From 660f2216356c60fd7409054967d110a112f00934 Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Mon, 14 Sep 2020 13:14:49 +0000 Subject: [PATCH 068/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 113 +++++++++++++++++++++++++++++++++----------- 1 file changed, 85 insertions(+), 28 deletions(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index 5543564a11..c4b3ce343d 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -29,7 +29,7 @@ "LabelDay": "Ngày:", "LabelEnableDlnaPlayTo": "Cho phép DLNA chạy để", "LabelEvent": "Sự kiện:", - "LabelFinish": "Kết thúc", + "LabelFinish": "Xong", "LabelLanguage": "Ngôn ngữ:", "LabelName": "Tên:", "LabelNewPassword": "Mật khẩu mới:", @@ -112,7 +112,7 @@ "BurnSubtitlesHelp": "Xác định xem máy chủ có nên ghi phụ đề khi chuyển đổi video hay không. Tránh thực hiện việc này sẽ cải thiện hiệu suất máy chủ đáng kể. Chọn Tự động để ghi các phụ đề có định dạng dựa trên hình ảnh (VOBSUB, PGS, SUB, IDX, ...) và một vài phụ đề ASS/SSA nhất định.", "Browse": "Duyệt", "BoxRear": "Hộp (mặt sau)", - "Books": "Sách", + "Books": "Các Quyển Sách", "BookLibraryHelp": "Âm thanh và sách văn bản được hỗ trợ. Xem lại {0} hướng dẫn đặt tên sách {1}.", "Blacklist": "Danh sách đen", "BirthPlaceValue": "Nơi sinh: {0}", @@ -121,13 +121,13 @@ "Backdrops": "Phông nền", "Backdrop": "Phông nền", "Auto": "Tự động", - "AuthProviderHelp": "Chọn Nhà cung cấp xác thực sẽ được sử dụng để xác thực mật khẩu người dùng này.", + "AuthProviderHelp": "Chọn nhà cung cấp xác thực được dùng để xác thực mật khẩu người dùng này.", "Audio": "Âm thanh", "AspectRatio": "Tỷ lệ khung hình", "AskAdminToCreateLibrary": "Yêu cầu quản trị viên tạo thư viện.", "Ascending": "Tăng dần", "AsManyAsPossible": "Càng nhiều càng tốt", - "Artists": "Nghệ Sĩ", + "Artists": "Các Nghệ Sĩ", "AroundTime": "Khoảng", "Anytime": "Bất cứ lúc nào", "AnyLanguage": "Ngôn Ngữ Bất Kỳ", @@ -187,7 +187,7 @@ "ConfirmDeleteItems": "Xoá những mục này sẽ xoá chúng khỏi ổ cứng và thư viện của bạn. Bạn có chắc chắn muốn tiếp tục?", "ConfirmDeleteItem": "Xoá mục này sẽ xoá nó khỏi ổ cứng và thư viện của bạn. Bạn có chắc chắn muốn tiếp tục?", "ConfirmDeleteImage": "Bạn có chắc chắn xoá ảnh này?", - "ConfigureDateAdded": "Thiết lập cách xác định \"ngày thêm vào\" trong mục cài đặt Thư Viện của phần quản lý máy chủ Jellyfin", + "ConfigureDateAdded": "Định cấu hình cách xác định ngày đã thêm trong trang tổng quan trong cài đặt thư viện máy chủ Jellyfin", "Composer": "Tác giả", "CommunityRating": "Đánh giá của cộng đồng", "ColorTransfer": "Chuyển đổi màu", @@ -197,7 +197,7 @@ "ClientSettings": "Cài đặt thiết bị phát", "CinemaModeConfigurationHelp": "Chế độ Cinema giúp bạn mang lại trải nghiệm rạp chiếu phim ngay tại phòng khách với khả năng phát trailers và những đoạn mở đầu tuỳ chọn trước phần chính của bộ phim.", "ChannelNumber": "Kênh số", - "Channels": "Kênh", + "Channels": "Các Kênh", "ChannelNameOnly": "Chỉ kênh {0}", "ChannelAccessHelp": "Chọn những kênh để chia vẻ với người dùng này. Người quản lý sẽ có thể thay đổi toàn bộ kênh bằng cách sử dụng bộ quản lý thông tin.", "ChangingMetadataImageSettingsNewContent": "Thay đổi về thiết lập của việc tải thông tin hoặc hình ảnh sẽ chỉ có tác dụng với những nội dung mới được thêm vào thư viện. Để những thiết lập mới có tác dụng với nội dung đã có sẵn, bạn sẽ phải cập nhật lại thông tin của chúng.", @@ -222,7 +222,7 @@ "Directors": "Đạo Diễn", "Director": "Đạo Diễn", "DirectStreaming": "Phát trực tuyến", - "DirectStreamHelp2": "Phát trực tuyến sử dụng rất ít tài nguyên máy chủ mà không giảm chất lượng video.", + "DirectStreamHelp2": "Phát trực tiếp sử dụng ít sức mạnh xử lý với chất lượng video bị giảm thiểu chút ít.", "DirectStreamHelp1": "Nội dung này tương thích với thiết bị về độ phân giải và dạng mã hoá (H.264, AC3, v.v.), nhưng lại không tương tích định dạng (mkv, avi, wmv, v.v.). Video sẽ được chuyển đổi định dạng trực tiếp ngay trước khi phát trên thiết bị.", "DirectPlaying": "Phát trực tiếp", "DeviceAccessHelp": "Thiết lập này chỉ áp dụng cho những thiết bị có thể định danh và sẽ không chặn được truy cập từ trình duyệt. Chọn lọc thiết bị người dùng sẽ chặn người dùng này truy cập từ những thiết bị mới cho đến khi được duyệt.", @@ -233,7 +233,7 @@ "DeleteUserConfirmation": "Bạn có chắc chắn muốn xoá người dùng này?", "DeleteMedia": "Xoá nội dung", "DeleteDeviceConfirmation": "Bạn có chắc chắn muốn xoá thiết bị này? Nó sẽ xuất hiện lại khi người dùng đăng nhập bằng thiết bị đó.", - "DeinterlaceMethodHelp": "Chọn phương pháp khử xen kẽ khi chuyển mã những nội dung sử dụng phương pháp quét xen kẽ.", + "DeinterlaceMethodHelp": "Chọn phương pháp khử xen kẽ để sử dụng khi phần mềm chuyển mã nội dung xen kẽ. Khi tăng tốc phần cứng hỗ trợ khử xen kẽ phần cứng được bật, trình khử xen kẽ phần cứng sẽ được sử dụng thay cho cài đặt này.", "DefaultSubtitlesHelp": "Phụ đề được sử dụng dựa vào thiết lập mặc định (default) và bắt buộc (forced) trong phần thông tin bổ trợ. Tuỳ chọn ưu tiên ngôn ngữ sẽ có tác dụng khi có nhiều phụ đề khác nhau.", "DefaultMetadataLangaugeDescription": "Đây là thiết lập mặc định chung, bạn có thể tuỳ chỉnh thiết lập riêng cho từng thư viện.", "DisplayModeHelp": "Chọn kiểu bố trí giao diện mà bạn muốn.", @@ -247,12 +247,12 @@ "EditImages": "Chỉnh sửa hình ảnh", "Edit": "Chỉnh sửa", "EasyPasswordHelp": "Mã PIN tiện lợi được sử dụng cho việc truy cập offline trên những thiết bị được hỗ trợ và cũng có thể sử dụng dành cho truy cập dễ dàng trong nội mạng.", - "DropShadow": "Đổ Bóng", + "DropShadow": "Bóng đổ", "DrmChannelsNotImported": "Những kênh được bảo vệ bản quyền sẽ không được nhập vào.", "DownloadsValue": "{0} đã tải xuống", "EnableColorCodedBackgrounds": "Màu nền theo loại kênh", "HeaderDateIssued": "Ngày Phát Hành", - "HeaderContinueWatching": "Tiếp Tục Xem", + "HeaderContinueWatching": "Tiếp Tục Xem Tiếp", "HeaderContinueListening": "Tiếp Tục Nghe", "HeaderCodecProfileHelp": "Bộ giải mã chỉ ra những kiểu mã hoá nhất định mà một thiết bị có thể phát. Nếu một nội dung không thể phát, nó sẽ được chuyển mã, thậm chí nếu kiểu mã hoá đó được thiết lập phát trực tiếp.", "HeaderContainerProfileHelp": "Bộ định dạng chỉ ra những định dạng nhất định mà một thiết bị có thể phát. Nếu nội dung có định dạng không thể phát, nội dung sẽ được chuyển đổi định dạng, kể cả khi định dạng đó được thiết lập phát trực tiếp.", @@ -275,7 +275,7 @@ "HeaderAudioBooks": "Sách Nói", "HeaderAppearsOn": "Xuất Bản Vào", "HeaderApp": "Ứng dụng", - "HeaderApiKeysHelp": "Những ứng dụng khác cần có \"API key\" để tương tác với máy chủ Jellyfin. Những mã này được tạo ra bằng cách đăng nhập vào máy chủ Jellyfin, hoặc bạn có thể cung cấp cho ứng dụng một mã truy cập.", + "HeaderApiKeysHelp": "Ứng dụng bên ngoài cần có \"khóa API\" để giao tiếp với máy chủ Jellyfin. Khóa được cấp theo cách đăng nhập bằng tài khoản người dùng thông thường hoặc cấp khóa cho ứng dụng theo cách thủ công.", "HeaderApiKeys": "API Keys", "HeaderApiKey": "API Key", "HeaderAllowMediaDeletionFrom": "Cho Phép Xoá Nội Dung", @@ -325,10 +325,10 @@ "ErrorPleaseSelectLineup": "Hãy chọn một danh sách và thử lại. Nếu không có danh sách nào sẵn sàng, hãy chắc chắn rằng thông tin tài khoản, mật khẩu, và mã bưu điện đều chính xác.", "ErrorStartHourGreaterThanEnd": "Thời gian kết thúc phải lớn hơn thời gian bắt đầu.", "ErrorGettingTvLineups": "Có lỗi xảy ra khi tải danh sách TV này. Hãy thử lại khi chắc chắn rằng thông tin của bạn chính xác.", - "ErrorDeletingItem": "Có lỗi xảy ra khi xoá mục này khỏi máy chủ Jellyfin. Hãy thử lại sau khi kiểm tra chắc chắn rằng máy chủ Jellyfin có quyền ghi/xoá vào thư mục nội dung.", + "ErrorDeletingItem": "Có lỗi xảy ra khi xoá mục này khỏi máy chủ Jellyfin. Hãy kiểm tra xem máy chủ Jellyfin có quyền ghi/xoá vào thư mục đa phương tiện và thử xóa lại sau.", "ErrorAddingXmlTvFile": "Có lỗi xảy ra khi truy cập tài liệu XMLTV. Hãy thử lại khi chắc chắn rằng tài liệu này tồn tại.", "ErrorAddingTunerDevice": "Có lỗi xảy ra khi thêm vào thiết bị bắt sóng này. Hãy thử lại khi chắc chắn rằng nó có thể truy cập.", - "ErrorAddingMediaPathToVirtualFolder": "Có lỗi xảy ra khi thêm đường dẫn này. Hãy chắc chắn rằng đường dẫn này đúng và máy chủ Jellyfin có quyền truy cập dữ liệu ở đường dẫn đó.", + "ErrorAddingMediaPathToVirtualFolder": "Có lỗi xảy ra khi thêm đường dẫn phương tiện này. Vui lòng đảm bảo đường dẫn chính xác và Jellyfin được phép truy cập vào vị trí đó.", "ErrorAddingListingsToSchedulesDirect": "Có lỗi xảy ra khi thêm danh sách này vào tài khoản Schedules Direct của bạn. Schedules Direct chỉ cho phép một số lượng danh sách nhất định mỗi tài khoản. Bạn có thể cần phải đăng nhập vào trang web của Schedules Direct và xoá những danh sách khác trước khi có thể thêm danh sách mới.", "Episodes": "Tập", "Episode": "Tập", @@ -385,7 +385,7 @@ "HeaderLatestRecordings": "Bản Ghi Âm/Ghi Hình Mới Nhất", "HeaderLatestMusic": "Âm Nhạc Mới Nhất", "HeaderLatestMedia": "Nội Dung Mới Nhất", - "HeaderKodiMetadataHelp": "Để bật hoặc tắt dữ liệu từ NFO, hãy chỉnh sửa thư viện trong phần cài đặt thư viện của Jellyfin và điều chỉnh phần lưu trữ dữ liệu bổ trợ.", + "HeaderKodiMetadataHelp": "Để bật hoặc tắt chức năng tệp thông tin chi tiết NFO, hãy chỉnh sửa thư viện và xác định vị trí nơi lưu tệp NFO.", "HeaderKeepSeries": "Lưu Series", "HeaderKeepRecording": "Tiếp Tục Ghi Âm/Ghi Hình", "HeaderInstantMix": "Trộn Lẫn Nhanh", @@ -421,7 +421,7 @@ "HeaderDeleteDevice": "Xoá Thiết Bị", "HeaderDefaultRecordingSettings": "Thiết Lập Ghi Âm/Ghi Hình Mặc Định", "HeaderRecordingOptions": "Tuỳ Chọn Ghi Âm/Ghi Hình", - "HeaderProfileServerSettingsHelp": "Những thông tin này về máy chủ Jellyfin sẽ hiển thị trên các thiết bị phát được kết nối.", + "HeaderProfileServerSettingsHelp": "Các giá trị này kiểm soát cách máy chủ sẽ tự hiển thị với máy khách.", "HeaderServerSettings": "Cài Đặt Máy Chủ", "HeaderSeriesStatus": "Trạng Thái Series", "HeaderSeriesOptions": "Tuỳ Chọn Series", @@ -513,15 +513,15 @@ "LabelAccessStart": "Thời gian bắt đầu:", "LabelAccessEnd": "Thời gian kết thúc:", "LabelAccessDay": "Ngày trong tuần:", - "LabelAbortedByServerShutdown": "(Đã huỷ bởi máy chủ ngừng hoạt động)", + "LabelAbortedByServerShutdown": "(Bị hủy bỏ do máy chủ ngừng hoạt động)", "Label3DFormat": "Định dạng 3D:", "Kids": "Trẻ Em", "Items": "Mục", "ItemCount": "{0} mục", "InstantMix": "Trộn Lẫn Nhanh", "InstallingPackage": "Đang cài đặt {0} (phiên bản {1})", - "ImportMissingEpisodesHelp": "Nếu bật tuỳ chọn này, thông tin bị thiếu trong các tập phim sẽ được nhập vào cơ sở dữ liệu của máy chủ Jellyfin và hiển thị trong các phần và series. Điều này có thể làm việc quét thư viện lâu hơn rất nhiều.", - "ImportFavoriteChannelsHelp": "Nếu bật tuỳ chọn này, chỉ những kênh yêu thích trong thiết bị bắt sóng sẽ được nhập vào.", + "ImportMissingEpisodesHelp": "Thông tin về các tập bị thiếu sẽ được nhập vào cơ sở dữ liệu của bạn và hiển thị trong các phần và loạt phim. Điều này có thể làm quá trình quét thư viện lâu hơn đáng kể.", + "ImportFavoriteChannelsHelp": "Chỉ các kênh được đánh dấu là ưa thích trên thiết bị dò kênh mới được nhập.", "Images": "Hình Ảnh", "Identify": "Nhận Dạng", "HttpsRequiresCert": "Để bật kết nối bảo mật, bạn cần phải cung cấp một Chứng Chỉ SSL đáng tin cậy, ví dụ như \"Let's Encrypt\". Hãy cung cấp Chứng Chỉ SSL hoặc là tắt tính năng kết nối bảo mật.", @@ -633,20 +633,20 @@ "LabelImportOnlyFavoriteChannels": "Giới hạn để chỉ nhập vào những kênh yêu thích", "LabelImageType": "Loại hình ảnh:", "LabelImageFetchersHelp": "Kích hoạt và xếp hạng chương trình tải hình ảnh theo thứ tự ưu tiên.", - "LabelIdentificationFieldHelp": "Một phần chuỗi không phân biệt viết hoa/thường hoặc regex expression.", + "LabelIdentificationFieldHelp": "Một chuỗi không phân biệt viết hoa/thường hoặc biểu thức chính quy.", "LabelIconMaxWidth": "Chiều ngang tối đa của biểu tượng:", "LabelIconMaxHeight": "Chiều cao tối đa của biểu tượng:", - "LabelHttpsPortHelp": "TCP port mà máy chủ Jellyfin HTTPS nên kết nối vào.", - "LabelHttpsPort": "HTTPS port trên máy chủ:", + "LabelHttpsPortHelp": "Số cổng TCP cho máy chủ HTTPS.", + "LabelHttpsPort": "Số cổng HTTPS cục bộ:", "LabelHomeScreenSectionValue": "Mục trên trang chủ {0}:", - "LabelHomeNetworkQuality": "Chất lượng mạng trong nhà:", + "LabelHomeNetworkQuality": "Chất lượng mạng nhà:", "LabelHardwareAccelerationTypeHelp": "Hỗ trợ phần cần những thiết lập bổ sung.", - "LabelHardwareAccelerationType": "Hỗ trợ phần cứng:", + "LabelHardwareAccelerationType": "Tăng tốc phần cứng:", "LabelEncoderPreset": "Thiết lập cài sẵn của mã H264 và H265:", "LabelH264Crf": "CRF của mã H264:", - "LabelGroupMoviesIntoCollectionsHelp": "Khi hiển thị danh sách phim, các bộ phim thuộc về một bộ sưu tập sẽ hiển thị trong một nhóm.", - "LabelGroupMoviesIntoCollections": "Nhóm phim vào bộ sưu tập", - "LabelServerNameHelp": "Tên này sẽ được sử dụng để phân biệt máy chủ và giá trị mặc định là tên của máy tính chủ.", + "LabelGroupMoviesIntoCollectionsHelp": "Khi hiển thị danh sách phim, các bộ phim trong một bộ sưu tập sẽ hiển thị như một mục được nhóm lại.", + "LabelGroupMoviesIntoCollections": "Gom nhóm các phim vào bộ sưu tập", + "LabelServerNameHelp": "Tên này sẽ được dùng để phân biệt máy chủ và sẽ mặc định là tên của máy tính chủ.", "LabelFriendlyName": "Tên thân thiện:", "LabelFormat": "Định dạng:", "LabelForgotPasswordUsernameHelp": "Nhập vào tên tài khoản nếu bạn nhớ nó.", @@ -703,7 +703,7 @@ "LabelNewsCategories": "", "LabelStable": "Ổn Định", "LabelTonemappingAlgorithm": "Chọn thuật toán ánh xạ Tone màu để sử dụng:", - "TonemappingAlgorithmHelp": "Ánh xạ Tone màu có thể được tinh chỉnh. Nếu bạn không quen với tùy chọn này, hãy giữ mặc định.
    Giá trị mặc định: Reinhard.", + "TonemappingAlgorithmHelp": "Ánh xạ Tone màu có thể được tinh chỉnh. Nếu bạn không quen với tùy chọn này, hãy giữ mặc định.
    Giá trị mặc định: Reinhard.", "TonemappingRangeHelp": "Chọn dải màu đầu ra. Tự động là giống như dải màu đầu vào.", "StopPlayback": "Dừng Phát", "Preview": "Xem Trước", @@ -714,5 +714,62 @@ "Shows": "Các Chương Trình", "Songs": "Các Bài Hát", "Sync": "Đồng Bộ", - "ValueSpecialEpisodeName": "Đặc Biệt - {0}" + "ValueSpecialEpisodeName": "Đặc Biệt - {0}", + "Filter": "Bộ lọc", + "New": "Mới", + "Shuffle": "Xáo trộn", + "Share": "Chia sẻ", + "ShowAdvancedSettings": "Hiển thị cài đặt nâng cao", + "ShowIndicatorsFor": "Hiển thị các chỉ số cho:", + "ShowLess": "Hiển thị ít hơn", + "ShowMore": "Hiển thị thêm", + "ShowYear": "Hiển thị năm", + "ShowTitle": "Hiển thị tiêu đề", + "RepeatEpisodes": "Lặp lại các tập", + "RepeatMode": "Chế Độ Lặp Lại", + "RepeatAll": "Lặp lại tất cả", + "Repeat": "Lặp lại", + "RemoveFromPlaylist": "Xóa khỏi danh sách phát", + "RemoveFromCollection": "Xóa khỏi bộ sưu tập", + "RememberMe": "Ghi nhớ Tôi", + "ReleaseDate": "Ngày phát hành", + "RefreshQueued": "Làm mới đã xếp hàng đợi.", + "RefreshMetadata": "Làm mới thông tin chi tiết", + "RecordingScheduled": "Ghi theo lịch trình.", + "RefreshDialogHelp": "Thông tin chi tiết được làm mới trên cài đặt và dịch vụ internet được bật trong trang tổng quan.", + "Refresh": "Làm mới", + "Record": "Ghi lại", + "RecommendationStarring": "Diễn Viên Chính {0}", + "RecommendationDirectedBy": "Do {0} đạo diễn", + "RecommendationBecauseYouWatched": "Bởi vì bạn đã xem {0}", + "RecommendationBecauseYouLike": "Bởi vì bạn thích {0}", + "RecentlyWatched": "Đã xem gần đây", + "Rate": "Đánh giá", + "OptionResumable": "Có thể tiếp tục", + "OptionSpecialEpisode": "Đặc biệt", + "OptionSubstring": "Chuỗi con", + "OptionResElement": "thành phần res", + "MessageItemsAdded": "Đã thêm vào các mục.", + "MessageInvalidForgotPasswordPin": "Đã nhập mã pin không hợp lệ hoặc hết hạn. Vui lòng thử lại.", + "MessageInvalidUser": "Sai tên đăng nhập hoặc mật khẩu. Vui lòng thử lại.", + "MessageItemSaved": "Mục đã được lưu.", + "LabelTVHomeScreen": "Màn hình chính chế độ TV:", + "OptionProtocolHttp": "HTTP", + "OptionPlainVideoItemsHelp": "Tất cả các video được trình bày trong DIDL như \"object.item.videoItem\" thay vì một loại cụ thể hơn, chẳng hạn như \"object.item.videoItem.movie\".", + "OptionPlainVideoItems": "Hiển thị tất cả video dưới dạng các mục video thuần túy", + "OptionPremiereDate": "Ngày công chiếu", + "OptionProtocolHls": "Luồng Trực Tiếp HTTP", + "OptionRandom": "Ngẫu Nhiên", + "OptionRegex": "Biểu thức chính quy", + "OptionRequirePerfectSubtitleMatch": "Chỉ tải xuống phụ đề phù hợp nhất với tệp video của tôi", + "OptionReportByteRangeSeekingWhenTranscodingHelp": "Điều này là bắt buộc đối với một số thiết bị không có thời gian tìm kiếm tốt.", + "OptionReportByteRangeSeekingWhenTranscoding": "Báo cáo máy chủ có hỗ trợ tìm kiếm byte khi chuyển mã", + "OptionReleaseDate": "Ngày Phát Hành", + "MessageForgotPasswordInNetworkRequired": "Vui lòng thử lại trong mạng nhà của bạn để bắt đầu quá trình đặt lại mật khẩu.", + "MessageImageTypeNotSelected": "Vui lòng chọn một kiểu ảnh từ menu thả xuống.", + "MessageImageFileTypeAllowed": "Chỉ các tệp JPEG và PNG được hỗ trợ.", + "LabelKnownProxies": "Các Proxy đã biết:", + "LabelIconMaxResHelp": "Độ phân giải tối đa của các biểu tượng được hiển thị thông qua thuộc tính upnp:icon .", + "KnownProxiesHelp": "Danh sách địa chỉ IP của các proxy đã biết được sử dụng khi kết nối với phiên bản Jellyfin của bạn được phân tách bằng dấu phẩy. Đây là bắt buộc để sử dụng đúng các tiêu đề X-Forwarded-For. Yêu cầu khởi động lại sau khi lưu.", + "Image": "Hình Ảnh" } From 3fa3f3e56b33f6b763467299ec7fca182f489a2a Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 14 Sep 2020 20:28:13 +0000 Subject: [PATCH 069/365] [Security] Bump bl from 1.2.2 to 1.2.3 Bumps [bl](https://github.com/rvagg/bl) from 1.2.2 to 1.2.3. **This update includes a security fix.** - [Release notes](https://github.com/rvagg/bl/releases) - [Commits](https://github.com/rvagg/bl/compare/v1.2.2...v1.2.3) Signed-off-by: dependabot-preview[bot] --- yarn.lock | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/yarn.lock b/yarn.lock index 25e4d12c68..8fa0ad14ea 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1896,9 +1896,9 @@ bindings@^1.5.0: file-uri-to-path "1.0.0" bl@^1.0.0: - version "1.2.2" - resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.2.tgz#a160911717103c07410cef63ef51b397c025af9c" - integrity sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA== + version "1.2.3" + resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.3.tgz#1e8dd80142eac80d7158c9dccc047fb620e035e7" + integrity sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww== dependencies: readable-stream "^2.3.5" safe-buffer "^5.1.1" @@ -9880,9 +9880,9 @@ safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@~5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519" - integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg== + version "5.2.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== safe-regex@^1.1.0: version "1.1.0" From 436dfb85e56821209a49e4a36dcc419e39510b75 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 14 Sep 2020 20:31:20 +0000 Subject: [PATCH 070/365] Bump query-string from 6.13.1 to 6.13.2 Bumps [query-string](https://github.com/sindresorhus/query-string) from 6.13.1 to 6.13.2. - [Release notes](https://github.com/sindresorhus/query-string/releases) - [Commits](https://github.com/sindresorhus/query-string/compare/v6.13.1...v6.13.2) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 3a74cd9d67..ebb5da98ec 100644 --- a/package.json +++ b/package.json @@ -77,7 +77,7 @@ "material-design-icons-iconfont": "^6.1.0", "native-promise-only": "^0.8.0-a", "page": "^1.11.6", - "query-string": "^6.13.1", + "query-string": "^6.13.2", "resize-observer-polyfill": "^1.5.1", "screenfull": "^5.0.2", "sortablejs": "^1.10.2", diff --git a/yarn.lock b/yarn.lock index 25e4d12c68..0be2dcc996 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9237,10 +9237,10 @@ query-string@^5.0.1: object-assign "^4.1.0" strict-uri-encode "^1.0.0" -query-string@^6.13.1: - version "6.13.1" - resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.13.1.tgz#d913ccfce3b4b3a713989fe6d39466d92e71ccad" - integrity sha512-RfoButmcK+yCta1+FuU8REvisx1oEzhMKwhLUNcepQTPGcNMp1sIqjnfCtfnvGSQZQEhaBHvccujtWoUV3TTbA== +query-string@^6.13.2: + version "6.13.2" + resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.13.2.tgz#3585aa9412c957cbd358fd5eaca7466f05586dda" + integrity sha512-BMmDaUiLDFU1hlM38jTFcRt7HYiGP/zt1sRzrIWm5zpeEuO1rkbPS0ELI3uehoLuuhHDCS8u8lhFN3fEN4JzPQ== dependencies: decode-uri-component "^0.2.0" split-on-first "^1.0.0" From b4386473e66291d082ba2d1566a6869bb0364176 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 14 Sep 2020 20:31:59 +0000 Subject: [PATCH 071/365] Bump stylelint from 13.7.0 to 13.7.1 Bumps [stylelint](https://github.com/stylelint/stylelint) from 13.7.0 to 13.7.1. - [Release notes](https://github.com/stylelint/stylelint/releases) - [Changelog](https://github.com/stylelint/stylelint/blob/master/CHANGELOG.md) - [Commits](https://github.com/stylelint/stylelint/compare/13.7.0...13.7.1) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 3a74cd9d67..a0fd03a962 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,7 @@ "postcss-loader": "^3.0.0", "postcss-preset-env": "^6.7.0", "style-loader": "^1.1.3", - "stylelint": "^13.7.0", + "stylelint": "^13.7.1", "stylelint-config-rational-order": "^0.1.2", "stylelint-no-browser-hacks": "^1.2.1", "stylelint-order": "^4.1.0", diff --git a/yarn.lock b/yarn.lock index 25e4d12c68..70a0e73330 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10830,10 +10830,10 @@ stylelint-order@^4.1.0: postcss "^7.0.31" postcss-sorting "^5.0.1" -stylelint@^13.7.0: - version "13.7.0" - resolved "https://registry.yarnpkg.com/stylelint/-/stylelint-13.7.0.tgz#8d7a4233063b2f06e9f28b3405ff189e334547b5" - integrity sha512-1wStd4zVetnlHO98VjcHQbjSDmvcA39smkZQMct2cf+hom40H0xlQNdzzbswoG/jGBh61/Ue9m7Lu99PY51O6A== +stylelint@^13.7.1: + version "13.7.1" + resolved "https://registry.yarnpkg.com/stylelint/-/stylelint-13.7.1.tgz#bee97ee78d778a3f1dbe3f7397b76414973e263e" + integrity sha512-qzqazcyRxrSRdmFuO0/SZOJ+LyCxYy0pwcvaOBBnl8/2VfHSMrtNIE+AnyJoyq6uKb+mt+hlgmVrvVi6G6XHfQ== dependencies: "@stylelint/postcss-css-in-js" "^0.37.2" "@stylelint/postcss-markdown" "^0.36.1" From 0bd89010d3780e5c77478c1545531f86fd4a230e Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 14 Sep 2020 20:32:26 +0000 Subject: [PATCH 072/365] Bump hls.js from 0.14.11 to 0.14.12 Bumps [hls.js](https://github.com/video-dev/hls.js) from 0.14.11 to 0.14.12. - [Release notes](https://github.com/video-dev/hls.js/releases) - [Changelog](https://github.com/video-dev/hls.js/blob/master/docs/release-process.md) - [Commits](https://github.com/video-dev/hls.js/compare/v0.14.11...v0.14.12) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 3a74cd9d67..ac4ce520c9 100644 --- a/package.json +++ b/package.json @@ -65,7 +65,7 @@ "fast-text-encoding": "^1.0.3", "flv.js": "^1.5.0", "headroom.js": "^0.11.0", - "hls.js": "^0.14.11", + "hls.js": "^0.14.12", "howler": "^2.2.0", "intersection-observer": "^0.11.0", "jellyfin-apiclient": "^1.4.1", diff --git a/yarn.lock b/yarn.lock index 25e4d12c68..96eb1f6d17 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5484,10 +5484,10 @@ hex-color-regex@^1.1.0: resolved "https://registry.yarnpkg.com/hex-color-regex/-/hex-color-regex-1.1.0.tgz#4c06fccb4602fe2602b3c93df82d7e7dbf1a8a8e" integrity sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ== -hls.js@^0.14.11: - version "0.14.11" - resolved "https://registry.yarnpkg.com/hls.js/-/hls.js-0.14.11.tgz#b3d123c45b1feb8c5c19f70574074fa0a77e016b" - integrity sha512-l7fm8AAEIIVc9r+RZbVAPcpccWIk6oludZ7R78B/ZJsYvuL5LJF8h0o8iayoIcbPT8ArM8vBhOkWFbe9q46Kew== +hls.js@^0.14.12: + version "0.14.12" + resolved "https://registry.yarnpkg.com/hls.js/-/hls.js-0.14.12.tgz#d57042115bee8570861482a8245cbd8b064a6cb4" + integrity sha512-ye0KUhGp/K36gUb49MV5sA+uvEy4GVX4mJur8Bd2uCyLKpZs2zVm6aPHLR8iF3SBKbDF6n/SDHVgrTQxKSmsZQ== dependencies: eventemitter3 "^4.0.3" url-toolkit "^2.1.6" From bc0c690defa9158335a6a11579dd8d7698fa0211 Mon Sep 17 00:00:00 2001 From: Thomas Schwery Date: Mon, 14 Sep 2020 19:58:47 +0000 Subject: [PATCH 073/365] Translated using Weblate (French) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fr/ --- src/strings/fr.json | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/strings/fr.json b/src/strings/fr.json index ed243f98a4..83490ba61a 100644 --- a/src/strings/fr.json +++ b/src/strings/fr.json @@ -1392,5 +1392,10 @@ "LabelKnownProxies": "Proxies connus :", "KnownProxiesHelp": "Liste séparée par des virgules d'adresses IP des proxies connus utilisés pour se connecter à l'instance Jellyfin. Ceci est nécessaire afin de pouvoir utiliser correctement les entêtes X-Forwarded-For. Nécessite un redémarrage après sauvegarde.", "LabelTonemappingThreshold": "Seuil de mappage tonal :", - "LabelTonemappingDesatHelp": "Désature les couleurs qui dépassent ce niveau de luminosité. Plus ce paramètre est élevé, plus les informations de couleur seront préservées. Ce paramètre permet d'éviter les couleurs anormalement éclatantes pour les couleurs super-lumineuses en les transformant (de manière lisse) en blanc. Ceci rend l'image plus naturelle au prix d'une réduction d'information dans les couleurs hors-gamme. Les valeurs recommandées et par défaut sont 0 et 0.5." + "LabelTonemappingDesatHelp": "Désature les couleurs qui dépassent ce niveau de luminosité. Plus ce paramètre est élevé, plus les informations de couleur seront préservées. Ce paramètre permet d'éviter les couleurs anormalement éclatantes pour les couleurs super-lumineuses en les transformant (de manière lisse) en blanc. Ceci rend l'image plus naturelle au prix d'une réduction d'information dans les couleurs hors-gamme. Les valeurs recommandées et par défaut sont 0 et 0.5.", + "LabelTonemappingParamHelp": "Affine l'algorithme de mappage tonal. Les valeurs recommandées et par défaut sont indéfinies. Laissez en général ces valeurs vides.", + "LabelTonemappingPeak": "Pic de mappage tonal :", + "LabelTonemappingThresholdHelp": "Les paramètres de l'algorithme de mappage tonal sont affinés pour chaque scène. Un seuil est utilisé pour détecter lorsque la scène change. Si la distance entre la moyenne actuelle de la luminosité du cadre et la moyenne mobile actuelle dépasse la valeur du seuil, la moyenne et le pic de la luminosité du cadre sont recalculés. Les valeurs recommandées et par défaut sont 0.8 et 0.2.", + "LabelVideoRange": "Plage vidéo :", + "MediaInfoVideoRange": "Plage vidéo" } From 7a6cbc6b609a734568ecfb347cc437a93544a568 Mon Sep 17 00:00:00 2001 From: Harry Sintonen Date: Tue, 15 Sep 2020 00:52:22 +0000 Subject: [PATCH 074/365] Translated using Weblate (Finnish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fi/ --- src/strings/fi.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/strings/fi.json b/src/strings/fi.json index 2c73fbcd14..861eda2698 100644 --- a/src/strings/fi.json +++ b/src/strings/fi.json @@ -61,7 +61,7 @@ "AllowMediaConversion": "Salli median muunto", "AllowMediaConversionHelp": "Salli tai kiellä pääsy median muunnostoimintoon.", "AllowOnTheFlySubtitleExtractionHelp": "Sisäiset tekstitykset voidaan lähettää päätelaitteille ilmitekstinä, jotta videota ei tarvitsisi uudelleenkoodata. Joissain järjestelmissä tämä voi viedä paljon aikaa ja aiheuttaa toiston pysähtymisen purun ajaksi. Poista tämä käytöstä polttaaksesi tekstiykset suoraan videoon, mikäli päätelaite ei tue tekstityksiä.", - "AllowRemoteAccess": "Salli etäyhteydet tähän Jellyfin palvelimeen.", + "AllowRemoteAccess": "Salli etäyhteydet tähän palvelimeen.", "AllowRemoteAccessHelp": "Jos merkki puuttuu, kaikki ulkopuoliset yhteydet estetään.", "AllowedRemoteAddressesHelp": "Pilkuilla eroteltu lista IP-osoitteista tai IP/verkonpeite merkinnöistä verkoille, joille sallitaan etäyhteys palvelimeen. Tyhjäksi jätetty lista tarkoittaa, että kaikki osoitteet sallitaan.", "AlwaysPlaySubtitles": "Näytä aina tekstitykset", @@ -145,10 +145,10 @@ "ColorTransfer": "Värien siirto", "CommunityRating": "Yhteisön arvosana", "Composer": "Säveltäjä", - "ConfigureDateAdded": "Lisäyspäivämäärän määritykset löytyvät kirjaston asetuksien alta Jellyfin-palvelimen kojelaudalla", + "ConfigureDateAdded": "Lisäyspäivämäärän määritykset löytyvät kirjaston asetuksien alta palvelimen kojelaudalla", "ConfirmDeleteImage": "Poista kuva?", - "ConfirmDeleteItem": "Tämän esineen poistaminen poistaa sen sekä tiedostojärjestelmästä että mediakirjastosta. Haluatko varmasti jatkaa?", - "ConfirmDeleteItems": "Näiden esineiden poistaminen poistaa ne sekä tiedostojärjestelmästä että mediakirjastosta. Haluatko varmasti jatkaa?", + "ConfirmDeleteItem": "Tämän kohteen poistaminen poistaa sen sekä tiedostojärjestelmästä että mediakirjastosta. Haluatko varmasti jatkaa?", + "ConfirmDeleteItems": "Näiden kohteiden poistaminen poistaa ne sekä tiedostojärjestelmästä että mediakirjastosta. Haluatko varmasti jatkaa?", "ConfirmDeletion": "Vahvista poistaminen", "ConfirmEndPlayerSession": "Haluaisitko sammuttaa Jellyfinin tähän aikaan {0}?", "Connect": "Yhdistä", From e529411c3804fa8971e28e48a3e30c643a08e370 Mon Sep 17 00:00:00 2001 From: "federico.antoniazzi.000" Date: Tue, 15 Sep 2020 00:29:46 +0000 Subject: [PATCH 075/365] Translated using Weblate (Italian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/it/ --- src/strings/it.json | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/strings/it.json b/src/strings/it.json index 5d794dbc2b..02ee3e0684 100644 --- a/src/strings/it.json +++ b/src/strings/it.json @@ -1373,10 +1373,12 @@ "UseDoubleRateDeinterlacing": "Raddoppia il frame rate durante il deinterlacciamento", "KnownProxiesHelp": "Lista degli IP separati da virgola dei proxy utilizzati per connettersi a Jellyfin. Ciò consente di gestire al meglio gli header X-Forwarded-For. Richiede il reboot.", "LabelKnownProxies": "Proxy conosciuti:", - "LabelColorSpace": "Spazio colore:", - "LabelVideoRange": "Range video:", + "LabelColorSpace": "Spazio colori:", + "LabelVideoRange": "Intervallo video:", "MediaInfoColorSpace": "Spazio colore", "ThumbCard": "Miniatura", "PosterCard": "Locandina", - "LabelOpenclDevice": "Dispositivo OpenCL:" + "LabelOpenclDevice": "Dispositivo OpenCL:", + "MediaInfoVideoRange": "Intervallo video", + "UseDoubleRateDeinterlacingHelp": "Questa opzione usa il campo frequenza durante il deinterlacciamento, detto anche \"bob deinterlacing\", il quale raddoppia il frame rate del video per fornire \"full motion\" come se guardassi un video interlacciato su una TV." } From 4533f8f1acebb4178b77618ebab72904c1a58b0d Mon Sep 17 00:00:00 2001 From: Harry Sintonen Date: Tue, 15 Sep 2020 01:30:26 +0000 Subject: [PATCH 076/365] Translated using Weblate (Finnish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fi/ --- src/strings/fi.json | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/strings/fi.json b/src/strings/fi.json index 861eda2698..fd4df6d781 100644 --- a/src/strings/fi.json +++ b/src/strings/fi.json @@ -4,7 +4,7 @@ "ButtonCancel": "Peruuta", "ButtonSignOut": "Sign out", "Delete": "Poista", - "DeleteImage": "Poista Kuva", + "DeleteImage": "Poista kuva", "DeleteImageConfirmation": "Oletko varma että haluat poistaa tämän kuvan?", "DeleteUser": "Poista käyttäjä", "DeleteUserConfirmation": "Oletko varma että haluat poistaa tämän käyttäjän?", @@ -150,7 +150,7 @@ "ConfirmDeleteItem": "Tämän kohteen poistaminen poistaa sen sekä tiedostojärjestelmästä että mediakirjastosta. Haluatko varmasti jatkaa?", "ConfirmDeleteItems": "Näiden kohteiden poistaminen poistaa ne sekä tiedostojärjestelmästä että mediakirjastosta. Haluatko varmasti jatkaa?", "ConfirmDeletion": "Vahvista poistaminen", - "ConfirmEndPlayerSession": "Haluaisitko sammuttaa Jellyfinin tähän aikaan {0}?", + "ConfirmEndPlayerSession": "Haluaisitko katkaista etätoiston kohteessa {0}?", "Connect": "Yhdistä", "ContinueWatching": "Jatka katselua", "Continuing": "Jatketaan", @@ -159,9 +159,9 @@ "DatePlayed": "Toistopäivämäärä", "Default": "Oletus", "ErrorDefault": "Pyynnön käsittelyssä tapahtui virhe. Yritä myöhemmin uudelleen.", - "DefaultMetadataLangaugeDescription": "Nämä ovat sinun oletuksetasetukset ja niitä voidaan muokata kirjastokohtaisesti.", + "DefaultMetadataLangaugeDescription": "Nämä ovat sinun oletusasetuksesi ja niitä voidaan muokata kirjastokohtaisesti.", "DefaultSubtitlesHelp": "Tekstitykset ladataan pakotettu- ja oletusmäärityksien upotetun metadatan mukaan. Kieliasetukset otetaan huomioon, kun on enemmän kuin yksi tekstitys josta valita.", - "DeleteDeviceConfirmation": "Oletko varma, että haluat positaa tämän laitteen? Se ilmaantuu uudelleen seuraavan kerran, kun jokin käyttäjä kirjautuu sillä.", + "DeleteDeviceConfirmation": "Oletko varma, että haluat poistaa tämän laitteen? Se ilmaantuu uudelleen seuraavan kerran, kun jokin käyttäjä kirjautuu sillä.", "DeleteMedia": "Poista media", "Descending": "Laskeva", "Desktop": "Työpöytä", @@ -1010,7 +1010,7 @@ "ValueCodec": "Codec: {0}", "ValueAudioCodec": "Audio Codec: {0}", "SeriesYearToPresent": "{0} - Nykyhetki", - "DeinterlaceMethodHelp": "Valitse lomituksen poistomenetelmä, jota käytetään lomitetun sisällön transkoodaukseen.", + "DeinterlaceMethodHelp": "Valitse lomituksen poistomenetelmä, jota käytetään lomitetun sisällön transkoodaukseen. Mikäli omituksen poiston hallitsevaa rautakiihdytettyä purkua käytetään, ei tätä asetusta oteta huomioon.", "FormatValue": "Muoto: {0}", "General": "Yleinen", "FetchingData": "Noudetaan lisätietoja", @@ -1045,5 +1045,6 @@ "ApiKeysCaption": "Lista aktiivisista API-avaimista", "HeaderApiKeysHelp": "Ulkoiset sovellukset tarvitsevat API-avaimen voidakseen toimia Jellyfin -palvelimen kanssa. Avaimet myönnetään joko kirjautumalla sisään Jellyfin -käyttäjätunnuksella tai myöntämällä sellainen sovellukselle manuaalisesti.", "HeaderAdditionalParts": "Muut osat", - "HeaderActiveRecordings": "Käynnissä olevat nauhoitukset" + "HeaderActiveRecordings": "Käynnissä olevat nauhoitukset", + "Data": "Tieto" } From 323be6152e5527cfeb11f0d2b99542ca71ca6ac1 Mon Sep 17 00:00:00 2001 From: Harry Sintonen Date: Tue, 15 Sep 2020 01:41:43 +0000 Subject: [PATCH 077/365] Translated using Weblate (Finnish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fi/ --- src/strings/fi.json | 164 ++++++++++++++++++++++++++++---------------- 1 file changed, 104 insertions(+), 60 deletions(-) diff --git a/src/strings/fi.json b/src/strings/fi.json index fd4df6d781..04348d5d4b 100644 --- a/src/strings/fi.json +++ b/src/strings/fi.json @@ -1,8 +1,8 @@ { "MessageBrowsePluginCatalog": "Selaa lisäosakuvastoamme katsoaksesi saatavilla olevia lisäosia.", - "ButtonAddUser": "Lisää Käyttäjä", + "ButtonAddUser": "Lisää käyttäjä", "ButtonCancel": "Peruuta", - "ButtonSignOut": "Sign out", + "ButtonSignOut": "Kirjaudu ulos", "Delete": "Poista", "DeleteImage": "Poista kuva", "DeleteImageConfirmation": "Oletko varma että haluat poistaa tämän kuvan?", @@ -10,10 +10,10 @@ "DeleteUserConfirmation": "Oletko varma että haluat poistaa tämän käyttäjän?", "FileNotFound": "Tiedostoa ei löydy.", "FileReadCancelled": "Tiedoston luku on peruutettu.", - "FileReadError": "Virhe tiedoston luvun aikana.", + "FileReadError": "Virhe tiedostoa luettaessa.", "LabelAudioLanguagePreference": "Äänen ensisijainen kieli:", "LabelCountry": "Maa:", - "LabelCurrentPassword": "Tämän hetkinen salsana:", + "LabelCurrentPassword": "Tämän hetkinen salasana:", "LabelFinish": "Valmis", "LabelLanguage": "Kieli:", "LabelMaxParentalRating": "Suurin sallittu ikäraja:", @@ -57,7 +57,7 @@ "AllowOnTheFlySubtitleExtraction": "Salli tekstitysten purkaminen lennossa", "AccessRestrictedTryAgainLater": "Pääsy on toistaiseksi estetty. Yritä myöhemmin uudelleen.", "Aired": "Esityspäivä", - "AllowHWTranscodingHelp": "Salli virittimen muuntaa bittivirtaa lennossa. Tämä voi vähentää muunnoksen tarvetta Jellyfin-palvelimella.", + "AllowHWTranscodingHelp": "Salli virittimen muuntaa bittivirtaa lennossa. Tämä voi vähentää videomuunnoksen tarvetta palvelimella.", "AllowMediaConversion": "Salli median muunto", "AllowMediaConversionHelp": "Salli tai kiellä pääsy median muunnostoimintoon.", "AllowOnTheFlySubtitleExtractionHelp": "Sisäiset tekstitykset voidaan lähettää päätelaitteille ilmitekstinä, jotta videota ei tarvitsisi uudelleenkoodata. Joissain järjestelmissä tämä voi viedä paljon aikaa ja aiheuttaa toiston pysähtymisen purun ajaksi. Poista tämä käytöstä polttaaksesi tekstiykset suoraan videoon, mikäli päätelaite ei tue tekstityksiä.", @@ -89,14 +89,14 @@ "Box": "Laatikko", "BoxRear": "Laatikko (takaa)", "Browse": "Selaa", - "ButtonAddMediaLibrary": "Lisää Mediakirjasto", - "ButtonAddScheduledTaskTrigger": "Lisää Liipaisin", - "ButtonAddServer": "Lisää Palvelin", + "ButtonAddMediaLibrary": "Lisää mediakirjasto", + "ButtonAddScheduledTaskTrigger": "Lisää liipaisin", + "ButtonAddServer": "Lisää palvelin", "ButtonArrowLeft": "Vasen", "ButtonArrowRight": "Oikea", "ButtonAudioTracks": "Ääniraidat", "ButtonBack": "Takaisin", - "ButtonChangeServer": "Vaihda Palvelinta", + "ButtonChangeServer": "Vaihda palvelinta", "ButtonEditOtherUserPreferences": "Muokkaa tämän käyttäjän profiilia, kuvaa ja henkilökohtaisia asetuksia.", "ButtonForgotPassword": "Unohtuiko salasana", "ButtonFullscreen": "Kokonäyttötila", @@ -136,7 +136,7 @@ "Categories": "Kategoriat", "ChangingMetadataImageSettingsNewContent": "Muutokset metadatan tai kuvituksien lataamisasetuksiin vaikuttaa ainoastaan tulevaan kirjaston sisältöön. Päivittääksesi myös vanhan sisällön sinun täytyy päivittää metadata manuaalisesti.", "ChannelAccessHelp": "Valitse kanavat jotka jaetaan tämän käyttäjän kanssa. Järjestelmänvalvojat pystyvät muuttamaan kaikkia kanavia käyttämällä metadatan hallintatyökalua.", - "ChannelNameOnly": "Kanava {0} ainoastaan", + "ChannelNameOnly": "Vain kanava {0}", "Channels": "Kanavat", "CinemaModeConfigurationHelp": "Elokuvatila tuo teatterikokemuksen suoraan olohuoneeseesi mahdollistamalla trailereiden ja omien introjen toistamisen ennen päänumeroa.", "Collections": "Kokoelmat", @@ -169,8 +169,8 @@ "DeviceAccessHelp": "Tämä pätee ainoastaan laitteisiin, jotka voidaan tunnistaa uniikkina ja ei estä selainpääsyä. Uusien laitteiden suodattaminen estää niiden käyttämisen ennen hyväksyntää täältä.", "DirectPlaying": "Suoraan toistaminen", "DirectStreamHelp1": "Tämä media on yhteensopiva laitteen kanssa katsoen resoluutiota ja mediatyyppiä (H.264, AC3, jne.), mutta se ei ole yhteensopivassa tiedostosäiliössä (mkv, avi, wmv, jne.). Tämä video uudelleenpakataan lennossa ennen laitteeseen lähetystä.", - "DirectStreamHelp2": "Tiedoston suoraan toistaminen käyttää erittäin vähän prosessorin resursseja ilman laadun heikentämistä.", - "DirectStreaming": "Suora suoratoisto", + "DirectStreamHelp2": "Tiedoston suoratoisto käyttää erittäin vähän prosessorin resursseja ilman laadun heikkenemistä.", + "DirectStreaming": "Suoratoisto", "Director": "Ohjaaja", "Directors": "Ohjaajat", "Disc": "Levy", @@ -178,7 +178,7 @@ "DisplayInMyMedia": "Näytä kotinäytöllä", "DisplayInOtherHomeScreenSections": "Näytä kotinäytöllä osastoja kuten viimeisin media ja jatka katselua", "DisplayMissingEpisodesWithinSeasons": "Näytä puuttuvat jaksot tuotantokausissa", - "DisplayMissingEpisodesWithinSeasonsHelp": "Tämän pitää aktivoida TV-kirjastoille myös palvelimen asetuksissa.", + "DisplayMissingEpisodesWithinSeasonsHelp": "Tämä pitää aktivoida TV-kirjastoille myös palvelimen asetuksissa.", "DisplayModeHelp": "Valitse ulkonäkö, jonka haluat käyttöliittymälle.", "DoNotRecord": "Älä tallenna", "Down": "Alas", @@ -193,7 +193,7 @@ "EditSubtitles": "Muokkaa tekstityksiä", "ChannelNumber": "Kanavan numero", "CancelSeries": "Peruuta sarja", - "CopyStreamURL": "Kopioi Toiston Osoite", + "CopyStreamURL": "Kopioi toisto-osoite", "ButtonAddImage": "Lisää kuva", "Movies": "Elokuvat", "HeaderContinueWatching": "Jatka katsomista", @@ -211,35 +211,35 @@ "CopyStreamURLSuccess": "Osoite kopioitu onnistuneesti.", "DeathDateValue": "Kuoli: {}", "CustomDlnaProfilesHelp": "Luo uusi profiili kohdistaaksesi uuteen laitteeseen tai ohittaaksesi järjestelmäprofiilin.", - "ErrorAddingMediaPathToVirtualFolder": "Media-polkua lisätessä ilmeni ongelma. Varmista, että polku on kirjoitettu oikein ja Jellyfin Palvelimella pääsy sijaintiin.", + "ErrorAddingMediaPathToVirtualFolder": "Media-polkua lisätessä ilmeni ongelma. Varmista, että polku on kirjoitettu oikein ja Jellyfinillä on pääsy tähän sijaintiin.", "Episodes": "Jaksot", "EndsAtValue": "Päättyy {0}", "Ended": "Päättynyt", "EnableThemeSongsHelp": "Soita tunnussäveliä taustalla selatessasi kirjastoa.", "EnableStreamLoopingHelp": "Laita tämä päälle, jos suoratoistot sisältävät vain muutaman sekuntin verran dataa jota tarvitsee pyytää jatkuvasti. Tämän päälle laittaminen ilman toiminnon tarvetta voi aiheuttaa ongelmia.", - "EnablePhotosHelp": "Kuvat tunnistetaan ja näytetään muiden media-tiedostojen ohessa.", + "EnablePhotosHelp": "Kuvat tunnistetaan ja näytetään muiden mediatiedostojen ohessa.", "EnablePhotos": "Näytä valokuvat", "EnableNextVideoInfoOverlay": "Näytä seuraavan videon tiedot toiston aikana", - "EnableHardwareEncoding": "Salli rauta-tason muunnoksen kiihdytys", + "EnableHardwareEncoding": "Salli videomuunnoksen rautakiihdytys", "EnableExternalVideoPlayers": "Ulkoiset videosoittimet", "EnableDisplayMirroring": "Näytön peilaus", - "EnableColorCodedBackgrounds": "Väri-koodatut taustat", - "EnableCinemaMode": "Teatteri-tila", + "EnableColorCodedBackgrounds": "Värikoodatut taustat", + "EnableCinemaMode": "Teatteritila", "EnableBackdropsHelp": "Näytä taustat tietyillä sivuilla selatessasi kirjastoa.", "EnableExternalVideoPlayersHelp": "Videota soitettaessa näytetään erillinen valikko.", "Depressed": "Painettu", - "ButtonSplit": "jaa", + "ButtonSplit": "Jaa", "AskAdminToCreateLibrary": "Pyydä järjestelmän ylläpitäjää luomaan kirjasto.", - "EnableStreamLooping": "Looppaa suoralähetykset", + "EnableStreamLooping": "Uudelleentoista suoralähetykset automaattisesti", "EnableNextVideoInfoOverlayHelp": "Näytä videon lopussa tietoja seuraavasta videosta soittolistalla.", - "ClientSettings": "Pääte-asetukset", + "ClientSettings": "Pääteasetukset", "AllowFfmpegThrottlingHelp": "Kun uudelleenkoodaus tai remux ehtii tarpeeksi toiston edelle, keskeytä laskenta jotta laskentaresursseja kuluu vähemmän. Tämä on hyödyllistä jos katselet hyppimättä eri kohtiin. Älä käytä jos toiston kanssa ilmenee ongelmia.", "AllowFfmpegThrottling": "Rajoita uudelleenkoodaus", - "ErrorDeletingItem": "Tiedostoa poistaessa Jellyfin Palvelimelta ilmeni virhe. Varmista, että Jellyfin Palvelimella on kirjoitusoikeudet mediakansioon ja kokeile uudestaan.", + "ErrorDeletingItem": "Tiedostoa palvelimelta poistaessa ilmeni virhe. Varmista, että Jellyfinillä on kirjoitusoikeudet mediakansioon ja kokeile uudestaan.", "ErrorAddingXmlTvFile": "XMLTV-tiedostoa käyttäessä tapahtui virhe. Varmista, että tiedosto on olemassa ja kokeile uudestaan.", "ErrorAddingTunerDevice": "Viritintä lisätessä ilmeni ongelma. Varmista, että se on kytketty oikein ja kokeile uudestaan.", - "EnableThemeVideosHelp": "Soita tunnusvideoita taustalla, selatessasi kirjastoa.", - "AlbumArtist": "Albumin Artisti", + "EnableThemeVideosHelp": "Soita tunnusvideoita taustalla selatessasi kirjastoa.", + "AlbumArtist": "Albumin artisti", "Album": "Albumi", "Played": "Toistetut", "PlayFromBeginning": "Toista alusta", @@ -321,7 +321,7 @@ "LabelPreferredDisplayLanguage": "Ensisijainen näyttökieli:", "LabelOriginalTitle": "Alkuperäinen nimi:", "LabelOriginalAspectRatio": "Alkuperäinen kuvasuhde:", - "LabelEnableAutomaticPortMapHelp": "Automaattisesti ohjaa reitittimesi julkiset portit palvelimesi paikallisiin portteihin UPnP:n kautta. Tämä ei välttämättä toimi kaikkien reitittimien tai verkkoasetusten kanssa. Muutokset tulevat voimaan vasta palvelimen uudelleenkäynnistyksen yhteydessä.", + "LabelEnableAutomaticPortMapHelp": "Ohjaa reitittimesi julkiset portit automaattisesti palvelimesi paikallisiin portteihin UPnP:n avulla. Tämä ei välttämättä toimi kaikkien reitittimien tai verkkoasetusten kanssa. Muutokset tulevat voimaan vasta palvelimen uudelleenkäynnistyksen yhteydessä.", "LabelEnableAutomaticPortMap": "Salli reitittimen porttien automaattinen avaaminen (UPnP)", "LabelDownloadLanguages": "Latauskielet:", "LabelDisplaySpecialsWithinSeasons": "Näytä erityiset jaksot kausien sisällä, jolloin ne ilmestyivät", @@ -331,13 +331,13 @@ "LabelDateTimeLocale": "Päivämäärä ja aika:", "LabelCustomRating": "Mukautettu luokitus:", "LabelCustomCss": "Mukautettu CSS:", - "LabelCertificatePassword": "Sertifikaatin salasana:", + "LabelCertificatePassword": "Varmenteen salasana:", "LabelArtistsHelp": "Erota useita käyttämällä ;", "LabelAppNameExample": "Esimerkiksi: Sickbeard, Sonarr", "LabelAppName": "Sovelluksen nimi", "LabelAllowedRemoteAddressesMode": "Etä-IP-osoitesuodattimen tila:", "LabelAllowedRemoteAddresses": "Etä-IP-osoitesuodatin:", - "LabelAllowHWTranscoding": "Salli laitteistolla transkoodaus", + "LabelAllowHWTranscoding": "Salli rautatranskoodaus", "LabelAlbumArtMaxWidth": "Albumin kuvan maksimileveys:", "LabelAlbumArtMaxHeight": "Albumin kuvan maksimikorkeus:", "LabelAbortedByServerShutdown": "(Keskeytetty palvelimen sammutuksen takia)", @@ -345,7 +345,7 @@ "Horizontal": "Horisontaalinen", "HideWatchedContentFromLatestMedia": "Piilota toistettu sisältö \"uusin media\"-luettelosta", "HeaderUpcomingOnTV": "Tulossa televisiossa", - "HeaderTypeImageFetchers": "{0} Kuvien hakijat", + "HeaderTypeImageFetchers": "{0} kuvien hakijaa", "HeaderTranscodingProfile": "Transkoodausprofiili", "HeaderTracks": "Raidat", "HeaderThisUserIsCurrentlyDisabled": "Tämä käyttäjä on poistettu käytöstä", @@ -362,7 +362,7 @@ "HeaderRemoveMediaLocation": "Poista mediasijainti", "HeaderRecordingOptions": "Tallennusasetukset", "HeaderRecentlyPlayed": "Äskettäin toistetut", - "HeaderProfileServerSettingsHelp": "Nämä arvot mukauttavat sitä, kuinka Jellyfin-palvelin esittää itsensä laitteelle.", + "HeaderProfileServerSettingsHelp": "Nämä arvot mukauttavat sitä, kuinka palvelin esittää itsensä laitteelle.", "HeaderProfileInformation": "Profiili-informaatio", "HeaderPreferredMetadataLanguage": "Ensisijainen metadatan kieli", "HeaderPinCodeReset": "Nollaa PIN-koodi", @@ -699,7 +699,7 @@ "InstallingPackage": "Asennetaan {0} (versio {1})", "HeaderVideoTypes": "Videotyypit", "HeaderVideoType": "Videotyyppi", - "HeaderUploadImage": "Lataa kuva", + "HeaderUploadImage": "Lähetä kuva", "HeaderTypeText": "Kirjoita teksti", "HeaderTunerDevices": "Viritinlaitteet", "HeaderTuners": "Virittimet", @@ -711,9 +711,9 @@ "HeaderSortBy": "Lajittele", "HeaderSelectServerCachePath": "Valitse palvelimen välimuistin polku", "HeaderSelectPath": "Valitse polku", - "HeaderSelectCertificatePath": "Valitse sertifikaatin polku", + "HeaderSelectCertificatePath": "Valitse varmenteen polku", "HeaderSelectMetadataPath": "Valitse metadatan polku", - "HeaderSecondsValue": "{0} Sekuntia", + "HeaderSecondsValue": "{0} sekuntia", "HeaderRunningTasks": "Käynnissä olevat tehtävät", "HeaderRevisionHistory": "Versiohistoria", "HeaderRemoveMediaFolder": "Poista mediakansio", @@ -726,8 +726,8 @@ "LabelLanNetworks": "Lähiverkot:", "LabelKodiMetadataDateFormat": "Julkaisupäivämäärän muoto:", "LabelImageType": "Kuvan tyyppi:", - "LabelIconMaxWidth": "Ikonin enimmäisleveys:", - "LabelIconMaxHeight": "Ikonin enimmäiskorkeus:", + "LabelIconMaxWidth": "Kuvakkeen enimmäisleveys:", + "LabelIconMaxHeight": "Kuvakkeen enimmäiskorkeus:", "LabelGroupMoviesIntoCollections": "Ryhmitä elokuvat kokoelmiin", "LabelFormat": "Muoto:", "LabelFont": "Kirjasinlaji:", @@ -782,7 +782,7 @@ "HeaderApiKeys": "API-avaimet", "HeaderApiKey": "API-avain", "HeaderAdmin": "Ylläpitäjä", - "HeaderAddUpdateImage": "Lisää/Päivitä kuva", + "HeaderAddUpdateImage": "Lisää/päivitä kuva", "HeaderAddToPlaylist": "Lisää soittolistaan", "HeaderAddToCollection": "Lisää kokoelmaan", "HeaderActiveDevices": "Aktiiviset laitteet", @@ -798,12 +798,12 @@ "LabelLocalHttpServerPortNumber": "Paikallisen HTTP-portin numero:", "LabelKodiMetadataSaveImagePaths": "Tallenna kuvien polut NFO-tiedostojen sisälle", "LabelKidsCategories": "Lasten kategoriat:", - "LabelHttpsPortHelp": "TCP-portin numero, jota Jellyfinin HTTPS-palvelimen tulee kuunnella.", + "LabelHttpsPortHelp": "HTTPS-palvelimen TCP-portin numero.", "LabelHttpsPort": "Paikallisen HTTPS-portin numero:", "LabelHardwareAccelerationTypeHelp": "Laitteistokiihdytys vaatii ylimääräistä määritystä.", "LabelHardwareAccelerationType": "Laitteistokiihdytys:", - "LabelEncoderPreset": "H264 and H265 encoding preset:", - "LabelH264Crf": "H264 encoding CRF:", + "LabelEncoderPreset": "H264- ja H265-enkoodaukset esiasetus:", + "LabelH264Crf": "H264-enkoodauksen CRF:", "LabelForgotPasswordUsernameHelp": "Anna käyttäjätunnuksesi, jos muistat sen.", "LabelEveryXMinutes": "Joka:", "LabelEndDate": "Päättymispäivä:", @@ -811,7 +811,7 @@ "LabelEnableDlnaDebugLoggingHelp": "Luo suuria lokitiedostoja ja tulisi käyttää vain tarvittaessa vianmääritystä varten.", "LabelEnableDlnaServerHelp": "Sallii verkon UPnP-laitteiden selata ja toistaa sisältöä tältä palvelimelta.", "LabelEnableDlnaServer": "Ota DLNA-palvelin käyttöön", - "LabelEnableDlnaPlayTo": "Salli DLNA toisto", + "LabelEnableDlnaPlayTo": "Salli DLNA-toisto", "LabelEnableDlnaDebugLogging": "Ota DLNA:n virheenjäljitys käyttöön", "LabelEnableBlastAliveMessages": "Lähetä hereilläolo -viesti", "LabelEnableBlastAliveMessagesHelp": "Ota tämä käyttöön, jos muilla verkon UPnP-laitteilla on ongelmia palvelimen havaitsemisessa.", @@ -824,11 +824,11 @@ "LabelDeviceDescription": "Laitteen kuvaus", "LabelDefaultScreen": "Oletusnäyttö:", "LabelDefaultUser": "Oletuskäyttäjä:", - "LabelCustomCertificatePathHelp": "Polku PKCS # 12-tiedostoon, joka sisältää sertifikaatin ja yksityisen avaimen, jotta TLS-tuki voidaan sallia henkilökohtaiselle verkkotunnukselle.", - "LabelCustomCertificatePath": "Mukautetun SSL-sertifikaatin polku:", + "LabelCustomCertificatePathHelp": "Polku PKCS #12-tiedostoon joka sisältää varmenteen ja yksityisen avaimen jolla TLS-tuki otetaan käyttöön omalle verkkotunnukselle.", + "LabelCustomCertificatePath": "Mukautetun SSL-varmenteen polku:", "LabelContentType": "Sisältötyyppi:", "LabelChannels": "Kanavat:", - "LabelCertificatePasswordHelp": "Jos sertifikaattisi vaatii salasanaa, laita se tähän.", + "LabelCertificatePasswordHelp": "Jos varmenteesi vaatii salasanaa, laita se tähän.", "LabelRuntimeMinutes": "Pituus (minuutteja):", "LabelReleaseDate": "Julkaisupäivä:", "Genre": "Tyylilaji", @@ -906,7 +906,7 @@ "LabelInternetQuality": "Verkkoyhteyden laatu:", "LabelEmbedAlbumArtDidl": "Upota albumin kuvamateriaali Didl:iin", "LabelDeinterlaceMethod": "Lomituksen poistamismenetelmä:", - "LabelAudioBitDepth": "Audion bittisyvyys:", + "LabelAudioBitDepth": "Äänen bittisyvyys:", "LabelAlbumArtists": "Albumin artistit:", "Items": "Kohteet", "ItemCount": "{0} kohdetta", @@ -919,7 +919,7 @@ "HeaderRecordingPostProcessing": "Tallennuksen jälkikäsittely", "HeaderParentalRatings": "Ikärajat", "HeaderOtherItems": "Muut kohteet", - "HeaderLiveTvTunerSetup": "Live-TV virittimen määritys", + "HeaderLiveTvTunerSetup": "Live-TV-virittimen määritys", "HeaderLibrarySettings": "Kirjaston asetukset", "HeaderGuideProviders": "TV-ohjelmaoppaiden tarjoajat", "HeaderEnabledFields": "Käytössä olevat kentät", @@ -941,19 +941,19 @@ "LabelEnableRealtimeMonitor": "Ota reaaliaikainen seuranta käyttöön", "LabelDropImageHere": "Pudota kuva tähän, tai paina selataksesi.", "LabelDroppedFrames": "Pudotettuja kuvia:", - "LabelDidlMode": "DIDL tila:", + "LabelDidlMode": "DIDL-tila:", "LabelCustomDeviceDisplayNameHelp": "Tätä nimeä käytetään laitteen tunnistamiseen. Jos tyhjä, käytetään laitteen nimeä.", - "LabelCustomCssHelp": "Käytä omaa CSS: ää web-käyttöliittymään.", + "LabelCustomCssHelp": "Käytä omia CSS-tyylimäärittelyjä web-käyttöliittymään.", "LabelCorruptedFrames": "Korruptoituneita kuvia:", "LabelCriticRating": "Kriitikoiden luokitus:", "LabelCommunityRating": "Yhteisön luokitus:", "LabelCancelled": "Peruttu", "LabelBlockContentWithTags": "Estä kohteet tunnisteilla:", - "LabelBitrate": "Bitrate:", - "LabelAudioSampleRate": "Audion näytteenottotaajuus:", - "LabelAudioChannels": "Audiokanavia:", - "LabelAudioBitrate": "Audion bitrate:", - "LabelAudioCodec": "Audio codec:", + "LabelBitrate": "Bittinopeus:", + "LabelAudioSampleRate": "Äänen näytteenottotaajuus:", + "LabelAudioChannels": "Äänikanavia:", + "LabelAudioBitrate": "Äänen bittinopeus:", + "LabelAudioCodec": "Äänen pakkauksenhallinta:", "LabelSubtitleDownloaders": "Tekstitysten lataajat:", "LabelSpecialSeasonsDisplayName": "Erikoiskauden näyttönimi:", "LabelSortTitle": "Lajitteluotsikko:", @@ -996,7 +996,7 @@ "LabelLibraryPageSize": "Kirjastosivun kohteiden määrä:", "LabelLibraryPageSizeHelp": "Asettaa kirjastosivulla näytettävien kohteiden määrän. Arvo 0 poistaa sivutuksen käytöstä.", "Unrated": "Luokittelematon", - "ExtractChapterImagesHelp": "Pikkukuvien luominen mahdollistaa sovellusten näyttää graafiikkaa valintavalikoissa. Prosessi voi olla hidas, prosessoria kuormittava ja saattaa vaatia useita gigatavuja tilaa. Se suoritetaan, kun videoita havaitaan, ja myös yöksi suunniteltuna tehtävänä. Aikataulu on konfiguroitavissa ajoitetuissa tehtävissä. Tätä tehtävää ei ole suositeltavaa suorittaa korkean kuormituksen aikana.", + "ExtractChapterImagesHelp": "Kappalekuvien luominen mahdollistaa sovellusten näyttää graafisia kohtausvalikoita. Prosessi voi olla hidas, prosessoria kuormittava ja saattaa vaatia useita gigatavuja tilaa. Se suoritetaan, kun videoita havaitaan, sekä myös yöksi suunniteltuna tehtävänä. Aikataulu on muokattavissa ajoitetuissa tehtävissä. Tätä tehtävää ei ole suositeltavaa suorittaa korkean kuormituksen aikana.", "OnWakeFromSleep": "Lepotilasta poistuttaessa", "WeeklyAt": "{0}sin klo {1}", "Whitelist": "Sallitut", @@ -1017,13 +1017,13 @@ "Features": "Ominaisuudet", "ErrorStartHourGreaterThanEnd": "Loppumisajan on oltava myöhemmin kuin aloitusaika.", "MediaInfoAnamorphic": "Anamorfinen", - "ErrorGettingTvLineups": "TV esiintyjälistan lataamisessa tapahtui virhe. Varmista, että tiedot on oikein ja yritä uudelleen.", + "ErrorGettingTvLineups": "TV-esiintyjälistan lataamisessa tapahtui virhe. Varmista, että tiedot on oikein ja yritä uudelleen.", "EnableDetailsBannerHelp": "Näyttää julistekuvan yksityiskohdat -sivun ylälaidassa.", - "EnableDetailsBanner": "Yksityiskohtien banneri", + "EnableDetailsBanner": "Yksityiskohtien julistekuva", "ButtonSyncPlay": "SyncPlay", "HeaderAccessSchedule": "Käyttöoikeusaikataulu", "HeaderAccessScheduleHelp": "Luo käyttöoikeusaikataulu rajoittaaksesi käyttöä tietylle aikavälille.", - "HardwareAccelerationWarning": "Hardwarekiihdytyksen käyttöönotto voi aiheuttaa epävakautta joissain ympäristöissä. Varmista että sekä käyttöjärjestelmäsi että videoajurisi ovat ajan tasalla. Mikäli huomaat ongelmia videotoistossa säädettyäsi tätä asetusta, sinun täytyy muuttaa asetus takaisin kohtaan \"Ei mitään\".", + "HardwareAccelerationWarning": "Rautakiihdytyksen käyttöönotto voi aiheuttaa epävakautta joissain ympäristöissä. Varmista että sekä käyttöjärjestelmäsi että videoajurisi ovat ajan tasalla. Mikäli huomaat ongelmia videotoistossa säädettyäsi tätä asetusta, sinun täytyy muuttaa asetus takaisin kohtaan \"Ei mitään\".", "EncoderPresetHelp": "Valitse nopeampi arvo kohentaaksesi suorituskykyä tai hitaampi arvo parantaaksesi kuvanlaatua.", "H264CrfHelp": "Constant Rate Factor (CRF) on x264 -enkooderin kuvanlaadun vakioasetus. Voit valita arvon lukujen 0 ja 51 väliltä, jossa matalammat arvot tarkoittavat parempaa kuvanlaatua (suurempien tiedostokokojen hinnalla). Järkevät arvot ovat väliltä 18-28. Vakioarvo x264:lle on 23, joten voit käyttää sitä lähtökohtana.", "GuideProviderSelectListings": "Valitse listaukset", @@ -1034,8 +1034,8 @@ "ErrorSavingTvProvider": "TV-palveluntarjoajaa lisättäessä tapahtui virhe. Varmista sen saatavuus ja yritä uudestaan.", "ErrorPleaseSelectLineup": "Valitse lineup ja yritä uudestaan. Mikäli lineuppeja ei ole saatavilla, varmista että käyttäjätunnuksesi, salasanasi sekä postinumerosi ovat oikein.", "ErrorAddingListingsToSchedulesDirect": "Lineuppia Schedules Direct -käyttäjätunnuksellesi lisättäessä ilmeni virhe. Schedules Direct sallii vain rajallisen määrän lineuppeja yhdelle käyttäjätunnukselle. Mikäli haluat jatkaa, voit esimerkiksi kirjautua Schedules Direct -sivustolle ja poistaa muita listauksia käyttäjätunnukseltasi.", - "EnableDecodingColorDepth10Vp9": "Salli 10-bittinen hardware dekoodaus (VP9)", - "EnableDecodingColorDepth10Hevc": "Salli 10-bittinen hardware dekoodaus (HEVC)", + "EnableDecodingColorDepth10Vp9": "Salli 10-bittinen rautapurku (VP9)", + "EnableDecodingColorDepth10Hevc": "Salli 10-bittinen rautapurku (HEVC)", "HeaderCastAndCrew": "Näyttelijät ja henkilökunta", "HeaderCancelSeries": "Peruuta sarja", "HeaderCancelRecording": "Peruuta tallennus", @@ -1043,8 +1043,52 @@ "HeaderBlockItemsWithNoRating": "Estä kaikki joissa ei ole luokitusta tai jonka luokitusta ei voida tunnistaa:", "HeaderAppearsOn": "Esiintyy seuraavissa", "ApiKeysCaption": "Lista aktiivisista API-avaimista", - "HeaderApiKeysHelp": "Ulkoiset sovellukset tarvitsevat API-avaimen voidakseen toimia Jellyfin -palvelimen kanssa. Avaimet myönnetään joko kirjautumalla sisään Jellyfin -käyttäjätunnuksella tai myöntämällä sellainen sovellukselle manuaalisesti.", + "HeaderApiKeysHelp": "Ulkoiset sovellukset tarvitsevat API-avaimen voidakseen toimia palvelimen kanssa. Avaimet myönnetään joko kirjautumalla sisään normaalilla käyttäjätunnuksella tai myöntämällä sellainen sovellukselle manuaalisesti.", "HeaderAdditionalParts": "Muut osat", "HeaderActiveRecordings": "Käynnissä olevat nauhoitukset", - "Data": "Tieto" + "Data": "Tieto", + "LabelImportOnlyFavoriteChannels": "Rajaa vain suosikkikanaviin", + "LabelHomeNetworkQuality": "Kotiverkon laatu:", + "LabelFriendlyName": "Käyttäjäystävällinen nimi:", + "LabelFileOrUrl": "Tiedosto tai URL:", + "LabelFailed": "Epäonnistui", + "LabelExtractChaptersDuringLibraryScan": "Tallenna kappalekuvat kirjastojen skannauksen yhteydessä", + "LabelBaseUrl": "Perus-URL:", + "LabelEvent": "Tapahtuma:", + "LabelEnableSingleImageInDidlLimit": "Rajoita yhteen upotettuun kuvaan", + "LabelEnableHttps": "Ota HTTPS käyttöön", + "LabelEnableHardwareDecodingFor": "Ota rautapurku käyttöön:", + "LabelDownMixAudioScale": "Äänen tehostus alasmiksatessa:", + "LabelDateAddedBehavior": "Lisäyspäivämääräkäytös uudelle sisällölle:", + "LabelBlastMessageInterval": "Hereiläolo-viestin väli", + "LabelBindToLocalNetworkAddress": "Kiinnitä verkko-osoitteeseen:", + "LabelAirsBeforeSeason": "Lähetetään ennen kautta:", + "LabelAirsBeforeEpisode": "Lähetetään ennen jaksoa:", + "LabelAirsAfterSeason": "Lähetetään kauden jälkeen:", + "LabelAirDays": "Lähetyspäivät:", + "LabelAccessStart": "Aloitusaika:", + "LabelAccessEnd": "Lopetusaika:", + "InstantMix": "Välitön miksaus", + "Image": "Kuva", + "HttpsRequiresCert": "Ottaaksesi suojatut yhteydet käyttöösi tulee sinun toimittaa luotettu SSL-varmenne (esim. Let's Encrypt). Ole hyvä ja toimita varmenne tai ota suojattu yhteys pois käytöstä.", + "HeaderSyncPlayEnabled": "Ryhmäkatselu päällä", + "HeaderSyncPlaySelectGroup": "Liity ryhmään", + "HeaderServerAddressSettings": "Palvelimen osoiteasetukset", + "HeaderOnNow": "Nyt lähetyksessä", + "HeaderLibraryOrder": "Kirjaston järjestys", + "HeaderLibraryAccess": "Kirjastopääsy", + "HeaderKeepSeries": "Pidä sarja", + "HeaderKeepRecording": "Jatka tallennusta", + "HeaderInstantMix": "Välitön miksaus", + "HeaderImageSettings": "Kuva-asetukset", + "HeaderImageOptions": "Kuvaoptiot", + "HeaderIdentificationHeader": "Tunnistusotsake", + "HeaderHttpsSettings": "HTTPS-asetukset", + "HeaderHttpHeaders": "HTTP-otsakkeet", + "HeaderFeatureAccess": "Pääsy toimintoihin", + "HeaderDVR": "DVR", + "HeaderDeviceAccess": "Laitepääsy", + "HeaderDeleteTaskTrigger": "Poista tehtävälaukaisin", + "HeaderChannelAccess": "Kanavapääsy", + "Other": "Muu" } From 55a083106159b7cd7a527a62ad7ef948eae43fd4 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 15 Sep 2020 05:44:46 +0000 Subject: [PATCH 078/365] Bump css-loader from 4.2.2 to 4.3.0 Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 4.2.2 to 4.3.0. - [Release notes](https://github.com/webpack-contrib/css-loader/releases) - [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md) - [Commits](https://github.com/webpack-contrib/css-loader/compare/v4.2.2...v4.3.0) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/package.json b/package.json index 24ea42c72a..4e6af20e55 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,7 @@ "browser-sync": "^2.26.12", "confusing-browser-globals": "^1.0.9", "copy-webpack-plugin": "^5.1.1", - "css-loader": "^4.2.2", + "css-loader": "^4.3.0", "cssnano": "^4.1.10", "del": "^5.1.0", "eslint": "^7.8.1", diff --git a/yarn.lock b/yarn.lock index d8e766ba12..ffe1e37d36 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3034,10 +3034,10 @@ css-has-pseudo@^0.10.0: postcss "^7.0.6" postcss-selector-parser "^5.0.0-rc.4" -css-loader@^4.2.2: - version "4.2.2" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-4.2.2.tgz#b668b3488d566dc22ebcf9425c5f254a05808c89" - integrity sha512-omVGsTkZPVwVRpckeUnLshPp12KsmMSLqYxs12+RzM9jRR5Y+Idn/tBffjXRvOE+qW7if24cuceFJqYR5FmGBg== +css-loader@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-4.3.0.tgz#c888af64b2a5b2e85462c72c0f4a85c7e2e0821e" + integrity sha512-rdezjCjScIrsL8BSYszgT4s476IcNKt6yX69t0pHjJVnPUTDpn4WfIpDQTN3wCJvUvfsz/mFjuGOekf3PY3NUg== dependencies: camelcase "^6.0.0" cssesc "^3.0.0" @@ -3049,7 +3049,7 @@ css-loader@^4.2.2: postcss-modules-scope "^2.2.0" postcss-modules-values "^3.0.0" postcss-value-parser "^4.1.0" - schema-utils "^2.7.0" + schema-utils "^2.7.1" semver "^7.3.2" css-prefers-color-scheme@^3.1.1: @@ -9930,7 +9930,7 @@ schema-utils@^1.0.0: ajv-errors "^1.0.0" ajv-keywords "^3.1.0" -schema-utils@^2.6.5, schema-utils@^2.6.6, schema-utils@^2.7.0, schema-utils@^2.7.1: +schema-utils@^2.6.5, schema-utils@^2.6.6, schema-utils@^2.7.1: version "2.7.1" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.1.tgz#1ca4f32d1b24c590c203b8e7a50bf0ea4cd394d7" integrity sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg== From 504519e4c83c5575d342239fb08e1a433841895a Mon Sep 17 00:00:00 2001 From: Harry Sintonen Date: Tue, 15 Sep 2020 03:39:57 +0000 Subject: [PATCH 079/365] Translated using Weblate (Finnish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fi/ --- src/strings/fi.json | 89 +++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 82 insertions(+), 7 deletions(-) diff --git a/src/strings/fi.json b/src/strings/fi.json index 04348d5d4b..7529df6202 100644 --- a/src/strings/fi.json +++ b/src/strings/fi.json @@ -220,7 +220,7 @@ "EnablePhotosHelp": "Kuvat tunnistetaan ja näytetään muiden mediatiedostojen ohessa.", "EnablePhotos": "Näytä valokuvat", "EnableNextVideoInfoOverlay": "Näytä seuraavan videon tiedot toiston aikana", - "EnableHardwareEncoding": "Salli videomuunnoksen rautakiihdytys", + "EnableHardwareEncoding": "Salli videomuunnoksen laitteistokiihdytys", "EnableExternalVideoPlayers": "Ulkoiset videosoittimet", "EnableDisplayMirroring": "Näytön peilaus", "EnableColorCodedBackgrounds": "Värikoodatut taustat", @@ -794,7 +794,7 @@ "LabelMaxScreenshotsPerItem": "Kuvakaappausten enimmäismäärä per kohde:", "LabelLoginDisclaimerHelp": "Viesti, joka näytetään kirjautumissivun alareunassa.", "LabelLockItemToPreventChanges": "Lukitse tämä kohde estääksesi tulevat muutokset", - "LabelLocalHttpServerPortNumberHelp": "TCP-portin numero, jota Jellyfinin HTTP-palvelimen tulee kuunnella.", + "LabelLocalHttpServerPortNumberHelp": "HTTP-palvelimen TCP-portin numero.", "LabelLocalHttpServerPortNumber": "Paikallisen HTTP-portin numero:", "LabelKodiMetadataSaveImagePaths": "Tallenna kuvien polut NFO-tiedostojen sisälle", "LabelKidsCategories": "Lasten kategoriat:", @@ -1010,7 +1010,7 @@ "ValueCodec": "Codec: {0}", "ValueAudioCodec": "Audio Codec: {0}", "SeriesYearToPresent": "{0} - Nykyhetki", - "DeinterlaceMethodHelp": "Valitse lomituksen poistomenetelmä, jota käytetään lomitetun sisällön transkoodaukseen. Mikäli omituksen poiston hallitsevaa rautakiihdytettyä purkua käytetään, ei tätä asetusta oteta huomioon.", + "DeinterlaceMethodHelp": "Valitse lomituksen poistomenetelmä, jota käytetään lomitetun sisällön transkoodaukseen. Mikäli omituksen poiston hallitsevaa laitteistokiihdytettyä purkua käytetään, ei tätä asetusta oteta huomioon.", "FormatValue": "Muoto: {0}", "General": "Yleinen", "FetchingData": "Noudetaan lisätietoja", @@ -1023,7 +1023,7 @@ "ButtonSyncPlay": "SyncPlay", "HeaderAccessSchedule": "Käyttöoikeusaikataulu", "HeaderAccessScheduleHelp": "Luo käyttöoikeusaikataulu rajoittaaksesi käyttöä tietylle aikavälille.", - "HardwareAccelerationWarning": "Rautakiihdytyksen käyttöönotto voi aiheuttaa epävakautta joissain ympäristöissä. Varmista että sekä käyttöjärjestelmäsi että videoajurisi ovat ajan tasalla. Mikäli huomaat ongelmia videotoistossa säädettyäsi tätä asetusta, sinun täytyy muuttaa asetus takaisin kohtaan \"Ei mitään\".", + "HardwareAccelerationWarning": "Laitteistokiihdytyksen käyttöönotto voi aiheuttaa epävakautta joissain ympäristöissä. Varmista että sekä käyttöjärjestelmäsi että videoajurisi ovat ajan tasalla. Mikäli huomaat ongelmia videotoistossa säädettyäsi tätä asetusta, sinun täytyy muuttaa asetus takaisin kohtaan \"Ei mitään\".", "EncoderPresetHelp": "Valitse nopeampi arvo kohentaaksesi suorituskykyä tai hitaampi arvo parantaaksesi kuvanlaatua.", "H264CrfHelp": "Constant Rate Factor (CRF) on x264 -enkooderin kuvanlaadun vakioasetus. Voit valita arvon lukujen 0 ja 51 väliltä, jossa matalammat arvot tarkoittavat parempaa kuvanlaatua (suurempien tiedostokokojen hinnalla). Järkevät arvot ovat väliltä 18-28. Vakioarvo x264:lle on 23, joten voit käyttää sitä lähtökohtana.", "GuideProviderSelectListings": "Valitse listaukset", @@ -1034,8 +1034,8 @@ "ErrorSavingTvProvider": "TV-palveluntarjoajaa lisättäessä tapahtui virhe. Varmista sen saatavuus ja yritä uudestaan.", "ErrorPleaseSelectLineup": "Valitse lineup ja yritä uudestaan. Mikäli lineuppeja ei ole saatavilla, varmista että käyttäjätunnuksesi, salasanasi sekä postinumerosi ovat oikein.", "ErrorAddingListingsToSchedulesDirect": "Lineuppia Schedules Direct -käyttäjätunnuksellesi lisättäessä ilmeni virhe. Schedules Direct sallii vain rajallisen määrän lineuppeja yhdelle käyttäjätunnukselle. Mikäli haluat jatkaa, voit esimerkiksi kirjautua Schedules Direct -sivustolle ja poistaa muita listauksia käyttäjätunnukseltasi.", - "EnableDecodingColorDepth10Vp9": "Salli 10-bittinen rautapurku (VP9)", - "EnableDecodingColorDepth10Hevc": "Salli 10-bittinen rautapurku (HEVC)", + "EnableDecodingColorDepth10Vp9": "Salli 10-bittinen laitteistopurku (VP9)", + "EnableDecodingColorDepth10Hevc": "Salli 10-bittinen laitteistopurku (HEVC)", "HeaderCastAndCrew": "Näyttelijät ja henkilökunta", "HeaderCancelSeries": "Peruuta sarja", "HeaderCancelRecording": "Peruuta tallennus", @@ -1090,5 +1090,80 @@ "HeaderDeviceAccess": "Laitepääsy", "HeaderDeleteTaskTrigger": "Poista tehtävälaukaisin", "HeaderChannelAccess": "Kanavapääsy", - "Other": "Muu" + "Other": "Muu", + "Writers": "Kirjoittajat", + "Video": "Video", + "Upload": "Lähetä", + "TabAccess": "Pääsy", + "Subtitle": "Tekstitys", + "ShowMore": "Näytä lisää", + "ShowLess": "Näytä vähemmän", + "SeriesSettings": "Sarjan asetukset", + "SelectServer": "Valitse palvelin", + "RepeatMode": "Toistomoodi", + "RepeatOne": "Toista yksi", + "ResetPassword": "Nollaa salasana", + "Restart": "Aloita alusta", + "Rewind": "Kelaa alkuun", + "SaveChanges": "Tallenna muutokset", + "Profile": "Profiili", + "ProductionLocations": "Tuotantosijainnit", + "PreviousTrack": "Hyppää edelliseen", + "PlaybackRate": "Toistonopeus", + "PictureInPicture": "Kuva kuvassa", + "Photo": "Valokuva", + "Person": "Henkilö", + "PackageInstallFailed": "{0} (version {1}) asennus epäonnistui.", + "PackageInstallCompleted": "{0} (version {1}) asennus valmis.", + "PackageInstallCancelled": "{0} (version {1}) asennus peruttu.", + "NextTrack": "Hyppää seuraavaan", + "MusicVideos": "Musiikkivideot", + "MinutesAfter": "minuuttia jälkeen", + "MinutesBefore": "minuuttia ennen", + "MessageSyncPlayErrorMedia": "Ryhmäkatselun päällekytkentä epäonnistui! Mediavirhe.", + "MessageSyncPlayErrorNoActivePlayer": "Ei aktiivista soitinta. Ryhmäkatselu on kytketty pois päältä.", + "MessageSyncPlayErrorMissingSession": "Ryhmäkatselun päällekytkentä epäonnistui! Puuttuva istunto.", + "MessageSyncPlayErrorAccessingGroups": "Virhe ryhmälistaa luettaessa.", + "MessageSyncPlayLibraryAccessDenied": "Pääsy sisältöön on rajattu.", + "MessageSyncPlayJoinGroupDenied": "Lupa ryhmäkatselun käyttöön tarvitaan.", + "MessageSyncPlayCreateGroupDenied": "Lupa ryhmän luomiseen vaaditaan.", + "MessageSyncPlayGroupDoesNotExist": "Ryhmään liittyminen epäonnistui koska sitä ei ole olemassa.", + "MessageSyncPlayPlaybackPermissionRequired": "Toistolupa tarvitaan.", + "MessageSyncPlayNoGroupsAvailable": "Ei ryhmiä. Aloita ensin jokin toisto.", + "MessageSyncPlayGroupWait": "{0} puskuroi…", + "MessageSyncPlayUserLeft": "{0} poistui ryhmästä.", + "MessageSyncPlayUserJoined": "{0} liittyi ryhmään.", + "MessageSyncPlayDisabled": "Ryhmäkatselu otettu pois käytöstä.", + "MessageSyncPlayEnabled": "Ryhmäkatselu otettu käyttöön.", + "MediaInfoBitDepth": "Bittisyvyys", + "LabelVaapiDevice": "VA API-laite:", + "LabelUserLoginAttemptsBeforeLockout": "Väärien kirjautumisyritysten määrä ennen tilin lukitsemista:", + "LabelSyncPlayAccess": "Ryhmäkatselupääsy", + "LabelSyncPlayAccessNone": "Pois käytöstä tälle käyttäjälle", + "LabelSyncPlayAccessJoinGroups": "Salli käyttäjän liittyä ryhmiin", + "LabelSyncPlayAccessCreateAndJoinGroups": "Salli käyttäjän luoda ryhmiä ja liittyä niihin", + "LabelSyncPlayLeaveGroupDescription": "Poista ryhmäkatselu käytöstä", + "LabelSyncPlayLeaveGroup": "Poistu ryhmästä", + "LabelSyncPlayNewGroupDescription": "Luo uusi ryhmä", + "LabelSyncPlayNewGroup": "Uusi ryhmä", + "LabelSportsCategories": "Urheilukategoriat:", + "LabelSortBy": "Järjestä:", + "LabelServerHost": "Isäntä:", + "EnableFasterAnimations": "Nopeammat animaatiot", + "LabelRequireHttps": "Vaadi HTTPS", + "LabelRecord": "Tallenna:", + "LabelPlayMethod": "Toistotapa:", + "LabelKodiMetadataEnablePathSubstitution": "Salli polkujen korvaaminen", + "LabelKnownProxies": "Tunnetut välityspalvelimet:", + "LabelKeepUpTo": "Pidä tallessa:", + "HeaderRemoteAccessSettings": "Etäkäytön asetukset", + "LabelNewsCategories": "Uutiskategoriat:", + "LabelUnstable": "Epävakaa", + "LabelStable": "Vakaa", + "LabelChromecastVersion": "Chromecastin versio", + "LabelModelUrl": "Malli-URL", + "LabelModelName": "Mallinimi", + "LabelModelDescription": "Mallikuvaus", + "LabelModelNumber": "Mallinumero", + "LabelInNetworkSignInWithEasyPassword": "Salli sisäverkkokirjautuminen helpolla PIN-koodilla" } From 69d7feeb481b34a782f4fa5f96a5f120cfb27563 Mon Sep 17 00:00:00 2001 From: Hilman Maulana Date: Tue, 15 Sep 2020 04:23:27 +0000 Subject: [PATCH 080/365] Translated using Weblate (Indonesian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/id/ --- src/strings/id.json | 61 +++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 59 insertions(+), 2 deletions(-) diff --git a/src/strings/id.json b/src/strings/id.json index c7a83a9efa..858b8169a1 100644 --- a/src/strings/id.json +++ b/src/strings/id.json @@ -6,7 +6,7 @@ "LabelContentType": "Tipe konten :", "LabelCountry": "Negara :", "LabelFinish": "Selesai", - "LabelLanguage": "Bahasa:", + "LabelLanguage": "Bahasa :", "LabelSaveLocalMetadata": "Simpan artwork dan metadata ke dalam folder media", "LabelSaveLocalMetadataHelp": "Menyimpan artwork dan metadata langsung ke folder media akan meletakkan mereka di tempat yang mudah diedit.", "LabelTimeLimitHours": "Batas waktu (jam):", @@ -647,5 +647,62 @@ "Directors": "Direktur", "Director": "Direktur", "Depressed": "Murung", - "Data": "Data" + "Data": "Data", + "LabelMaxResumePercentageHelp": "Judul dianggap diputar penuh jika dihentikan setelah waktu ini.", + "LabelMaxResumePercentage": "Persentase lanjutkan maksimum :", + "LabelMaxParentalRating": "Rating orang tua maksimum yang diizinkan :", + "LabelMaxChromecastBitrate": "Kualitas streaming Chromecast :", + "LabelMaxBackdropsPerItem": "Jumlah maksimum tampilan latar per item :", + "LabelMatchType": "Jenis kecocokan :", + "LabelManufacturerUrl": "Produsen URL", + "LabelManufacturer": "Produsen :", + "LabelLogs": "Log :", + "LabelLoginDisclaimerHelp": "Sebuah pesan yang akan ditampilkan di bagian bawah halaman login.", + "LabelLoginDisclaimer": "Penolakan login :", + "LabelLockItemToPreventChanges": "Kunci item ini untuk mencegah perubahan di masa mendatang", + "LabelLineup": "Berbaris :", + "LabelLibraryPageSizeHelp": "Menetapkan jumlah item untuk ditampilkan di halaman psutaka. Setel ke 0 untuk menonaktifkan paging.", + "LabelLibraryPageSize": "Ukuran halaman pustaka :", + "LabelLanNetworks": "Jaringan LAN :", + "LabelKodiMetadataUserHelp": "Simpan data menonton ke file NFO untuk digunakan aplikasi lain.", + "LabelKodiMetadataUser": "Simpan data menonton pengguna ke file NFO untuk :", + "LabelKodiMetadataEnableExtraThumbsHelp": "Saat mengunduh gambar, mereka dapat disimpan ke extrafanart dan extrathumbs untuk kompatibilitas tema Kodi yang maksimal.", + "LabelKodiMetadataEnableExtraThumbs": "Salin extrafanart ke bidang extrathumbs", + "LabelKodiMetadataDateFormatHelp": "Semua tanggal dalam file NFO akan diurai menggunakan format ini.", + "LabelKodiMetadataDateFormat": "Format tanggal rilis :", + "LabelKidsCategories": "Kategori anak-anak :", + "LabelKnownProxies": "Proksi yang dikenal :", + "LabelKeepUpTo": "Ikuti terus :", + "LabelInternetQuality": "Kualitas internet :", + "LabelInNetworkSignInWithEasyPasswordHelp": "Gunakan kode pin yang mudah untuk masuk ke klien dalam jaringan lokal Anda. Kata sandi biasa Anda hanya akan dibutuhkan di luar rumah. Jika kode pin dibiarkan kosong, Anda tidak memerlukan kata sandi di dalam jaringan rumah Anda.", + "LabelInNetworkSignInWithEasyPassword": "Aktifkan masuk jaringan dengan kode pin mudah saya", + "LabelImportOnlyFavoriteChannels": "Batasi untuk saluran yang ditandai sebagai favorit", + "LabelImageType": "Jenis gambar :", + "LabelImageFetchersHelp": "Aktifkan dan beri peringkat pada pengambil gambar pilihan Anda dalam urutan prioritas.", + "LabelIdentificationFieldHelp": "Substring atau ekspresi ekspresi reguler tidak peka huruf besar kecil.", + "LabelIconMaxWidth": "Lebar maksimum ikon :", + "LabelIconMaxHeight": "Tinggi maksimum ikon :", + "LabelIconMaxResHelp": "Resolusi maksimum ikon yang diekspos melalui properti ikon upnp.", + "LabelExtractChaptersDuringLibraryScanHelp": "Hasilkan gambar bab saat video diimpor selama pemindaian pustaka. Jika tidak, mereka akan diekstraksi selama tugas terjadwal gambar bab, memungkinkan pemindaian pustaka biasa selesai lebih cepat.", + "LabelExtractChaptersDuringLibraryScan": "Ekstrak gambar bab selama pemindaian pustaka", + "LabelBaseUrl": "URL Dasar :", + "LabelEveryXMinutes": "Setiap :", + "LabelEvent": "Peristiwa :", + "LabelEpisodeNumber": "Nomor episode :", + "LabelEndDate": "Tanggal akhir :", + "LabelEnableSingleImageInDidlLimitHelp": "Beberapa perangkat tidak akan merender dengan baik jika beberapa gambar disematkan dalam Didl.", + "LabelEnableSingleImageInDidlLimit": "Batasi untuk satu gambar yang disematkan", + "LabelEnableRealtimeMonitorHelp": "Perubahan file akan segera diproses pada sistem file yang didukung.", + "LabelEnableRealtimeMonitor": "Aktifkan pemantauan waktu nyata", + "LabelEnableHttpsHelp": "Dengarkan di port HTTPS yang dikonfigurasi. Sertifikat yang valid juga harus diberikan agar ini berlaku.", + "LabelEnableHttps": "Aktifkan HTTPS", + "LabelEnableHardwareDecodingFor": "Aktifkan decoding perangkat keras untuk :", + "LabelEnableDlnaPlayToHelp": "Deteksi perangkat dalam jaringan Anda dan tawarkan kemampuan untuk mengontrolnya dari jarak jauh.", + "LabelEnableDlnaPlayTo": "Aktifkan DLNA Play To", + "LabelEnableDlnaDebugLoggingHelp": "Buat file log besar dan sebaiknya hanya digunakan seperlunya untuk tujuan pemecahan masalah.", + "LabelEnableDlnaDebugLogging": "Aktifkan logging debug DLNA", + "LabelEnableDlnaClientDiscoveryIntervalHelp": "Menentukan durasi dalam detik antara pencarian SSDP.", + "LabelEnableDlnaClientDiscoveryInterval": "Interval penemuan klien", + "LabelEnableBlastAliveMessages": "Ledakan pesan hidup", + "KnownProxiesHelp": "Daftar alamat IP yang dipisahkan koma dari proxy yang diketahui digunakan saat menghubungkan ke instance Jellyfin Anda. Ini diperlukan untuk menggunakan header X-Forwarded-For dengan benar. Membutuhkan reboot setelah menyimpan." } From 1ca4a9960559d43644e69f823e4c1b508fab7c3f Mon Sep 17 00:00:00 2001 From: dkanada Date: Tue, 15 Sep 2020 15:03:06 +0900 Subject: [PATCH 081/365] minor style changes --- src/controllers/session/login/index.html | 2 +- src/quickconnect.html | 2 +- src/scripts/libraryMenu.js | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/controllers/session/login/index.html b/src/controllers/session/login/index.html index d22d903a1d..8c69456168 100644 --- a/src/controllers/session/login/index.html +++ b/src/controllers/session/login/index.html @@ -43,7 +43,7 @@ ${ButtonManualLogin} - diff --git a/src/quickconnect.html b/src/quickconnect.html index b5b6d48991..2b646837c6 100644 --- a/src/quickconnect.html +++ b/src/quickconnect.html @@ -7,7 +7,7 @@
    - ${LabelCurrentStatus} +
    ${LabelCurrentStatus}
    -
    - -
    ${ImportMissingEpisodesHelp}
    -
    -

    ${HeaderChapterImages}

    diff --git a/src/strings/ar.json b/src/strings/ar.json index 27966775fc..99a426e12f 100644 --- a/src/strings/ar.json +++ b/src/strings/ar.json @@ -226,7 +226,6 @@ "HeaderXmlSettings": "إعدادات xml", "HeaderYears": "السنوات", "ImportFavoriteChannelsHelp": "فقط القنوات التي علّمت في المفضلة على جهاز المولف ستورد.", - "ImportMissingEpisodesHelp": "المعلومات الناقصة للحلقات ستورّد إلى قاعدة بياناتك وستعرض داخل المواسم والمسلسلات. قد تتسبب هذه بأوقات أطول بكثير عند تمشيط المكتبات.", "LabelAbortedByServerShutdown": "(تم إهماله بسبب عملية إغلاق الخادم)", "LabelAccessDay": "يوم الأسبوع:", "LabelAccessEnd": "وقت النهاية:", diff --git a/src/strings/bg-bg.json b/src/strings/bg-bg.json index c0a63032f2..e5febc8fb2 100644 --- a/src/strings/bg-bg.json +++ b/src/strings/bg-bg.json @@ -211,7 +211,6 @@ "Horizontal": "Водоравно", "Identify": "Разпознаване", "Images": "Изображения", - "ImportMissingEpisodesHelp": "Ако е активирано, информация за липсващи епизоди ще бъде добавена в базата данни на Джелифин и ще бъде показвана заедно със сезони и серии. Това може да доведе до значително по-дълго сканиране на библиотеката.", "InstallingPackage": "Инсталиране на {0} на версия {1})", "InstantMix": "Пускане на подобни", "Label3DFormat": "Триизмерен формат:", diff --git a/src/strings/cs.json b/src/strings/cs.json index 22a8c4ae12..bd0311cb3e 100644 --- a/src/strings/cs.json +++ b/src/strings/cs.json @@ -340,7 +340,6 @@ "Identify": "Identifikovat", "Images": "Obrázky", "ImportFavoriteChannelsHelp": "Jen kanály označené jako oblíbené na zařízení tuneru budou importovány.", - "ImportMissingEpisodesHelp": "Informace o chybějících epizodách budou importovány do databáze a zobrazí se u sezón a seriálů. Skenování knihovny se tím může značně prodloužit.", "InstallingPackage": "Instalace {0} (Verze {1})", "InstantMix": "Okamžité míchání", "ItemCount": "{0} položek", diff --git a/src/strings/da.json b/src/strings/da.json index 59b726a2d6..98f81bd2a8 100644 --- a/src/strings/da.json +++ b/src/strings/da.json @@ -305,7 +305,6 @@ "Identify": "Identificer", "Images": "Billeder", "ImportFavoriteChannelsHelp": "Hvis aktiveret, importeres der udelukkende kanaler der er markeret som favoritter på tuner-enheden.", - "ImportMissingEpisodesHelp": "hvis aktiveret, vil information omkring manglende episoder bliver importeret ind i din Jellyfin-database og blive vist i sæsoner og serier. Dette medfører muligvis længere biblioteksscanninger.", "InstallingPackage": "Installerer {0} (version {1})", "InstantMix": "Instant Mix", "ItemCount": "{0} elementer", diff --git a/src/strings/de.json b/src/strings/de.json index cd4428c124..10784f2c4f 100644 --- a/src/strings/de.json +++ b/src/strings/de.json @@ -382,7 +382,6 @@ "Identify": "Identifizieren", "Images": "Bilder", "ImportFavoriteChannelsHelp": "Nur auf dem Tuner favorisierte Kanäle werden importiert.", - "ImportMissingEpisodesHelp": "Informationen über fehlende Episoden werden in deine Datenbank importiert und innerhalb von Staffeln angezeigt. Dies kann zu deutlich längeren Bibliothek Scans führen.", "InstallingPackage": "Installiere {0} (Version {1})", "InstantMix": "Schnellmix", "ItemCount": "{0} Einträge", diff --git a/src/strings/el.json b/src/strings/el.json index 9d809703f6..2dafdcd408 100644 --- a/src/strings/el.json +++ b/src/strings/el.json @@ -350,7 +350,6 @@ "Horizontal": "Οριζόντια", "Identify": "Αναγνώριση", "Images": "Εικόνες", - "ImportMissingEpisodesHelp": "Εάν είναι ενεργοποιημένη, οι πληροφορίες σχετικά με τα επεισόδια που λείπουν θα εισαχθούν στη βάση δεδομένων σας Jellyfin και θα εμφανιστούν σε εποχές και σειρές. Αυτό μπορεί να προκαλέσει σημαντικά μεγαλύτερες σαρώσεις βιβλιοθήκης.", "InstallingPackage": "Εγκατάσταση {0}", "InstantMix": "Άμεση Mix", "ItemCount": "{0} στοιχεία", diff --git a/src/strings/en-gb.json b/src/strings/en-gb.json index 94bce3fee7..0a7ffc36f5 100644 --- a/src/strings/en-gb.json +++ b/src/strings/en-gb.json @@ -871,7 +871,6 @@ "LabelEnableDlnaClientDiscoveryIntervalHelp": "Determines the duration in seconds between SSDP searches.", "LabelEnableAutomaticPortMapHelp": "Automatically forward public ports on your router to local ports on your server via UPnP. This may not work with some router models or network configurations. Changes will not apply until after a server restart.", "InstallingPackage": "Installing {0} (version {1})", - "ImportMissingEpisodesHelp": "Information about missing episodes will be imported into your database and displayed within seasons and series. This may cause significantly longer library scans.", "HeaderSubtitleAppearance": "Subtitle Appearance", "LabelProtocol": "Protocol:", "LabelProfileVideoCodecs": "Video codecs:", diff --git a/src/strings/en-us.json b/src/strings/en-us.json index 0f61286e92..64f775b6ec 100644 --- a/src/strings/en-us.json +++ b/src/strings/en-us.json @@ -445,7 +445,6 @@ "Image": "Image", "Images": "Images", "ImportFavoriteChannelsHelp": "Only channels that are marked as favorite on the tuner device will be imported.", - "ImportMissingEpisodesHelp": "Information about missing episodes will be imported into your database and displayed within seasons and series. This may cause significantly longer library scans.", "InstallingPackage": "Installing {0} (version {1})", "InstantMix": "Instant mix", "ItemCount": "{0} items", diff --git a/src/strings/es-ar.json b/src/strings/es-ar.json index 521f4ef98f..520a3ba2c7 100644 --- a/src/strings/es-ar.json +++ b/src/strings/es-ar.json @@ -598,7 +598,6 @@ "LabelAppNameExample": "Ejemplo: Sickbeard, Sonarr", "LabelAlbumArtMaxWidth": "Ancho máximo de la carátula del álbum:", "LabelAlbumArtMaxHeight": "Altura máxima de la carátula del álbum:", - "ImportMissingEpisodesHelp": "Si está habilitado, la información sobre capítulos faltantes se importará a su base de datos Jellyfin y se mostrará dentro de temporadas y series. Esto puede causar escaneos de bibliotecas significativamente más largos.", "HeaderSyncPlayEnabled": "SyncPlay habilitado", "HeaderSyncPlaySelectGroup": "Unirse a un grupo", "HeaderResponseProfileHelp": "Los perfiles de respuesta proporcionan una forma de personalizar la información enviada al dispositivo cuando se reproducen ciertos tipos de medios.", diff --git a/src/strings/es-mx.json b/src/strings/es-mx.json index 1d0a81df4e..9414173c66 100644 --- a/src/strings/es-mx.json +++ b/src/strings/es-mx.json @@ -399,7 +399,6 @@ "Identify": "Identificar", "Images": "Imágenes", "ImportFavoriteChannelsHelp": "Si se habilita, solo los canales marcados como favoritos en el dispositivo sintonizador serán importados.", - "ImportMissingEpisodesHelp": "Si se habilita, la información sobre los episodios faltantes se importará a la base de datos de Jellyfin y se mostrarán dentro de las temporadas y series. Esto puede causar escaneos de biblioteca significativamente más largos.", "InstallingPackage": "Instalando {0} (versión {1})", "InstantMix": "Mix instantáneo", "ItemCount": "{0} elementos", diff --git a/src/strings/es.json b/src/strings/es.json index ebd6ed698c..5c4d686271 100644 --- a/src/strings/es.json +++ b/src/strings/es.json @@ -349,7 +349,6 @@ "Identify": "Identificar", "Images": "Imágenes", "ImportFavoriteChannelsHelp": "Sólo los canales guardados como favoritos en el sintonizador se importarán.", - "ImportMissingEpisodesHelp": "La información sobre los episodios que faltan se importará en su base de datos y se mostrará en temporadas y series. Esto puede causar exploraciones de bibliotecas significativamente más largas.", "InstallingPackage": "Instalando {0} (versión {1})", "InstantMix": "Mix instantáneo", "ItemCount": "Elementos {0}", diff --git a/src/strings/es_419.json b/src/strings/es_419.json index 4efa45afca..623d53b2ff 100644 --- a/src/strings/es_419.json +++ b/src/strings/es_419.json @@ -868,7 +868,6 @@ "ItemCount": "{0} elementos", "InstantMix": "Mix instantáneo", "InstallingPackage": "Instalando {0} (versión {1})", - "ImportMissingEpisodesHelp": "La información sobre los episodios faltantes se importará a la base de datos y se mostrarán dentro de las temporadas y series. Esto puede causar escaneos de biblioteca significativamente más largos.", "ImportFavoriteChannelsHelp": "Solo los canales marcados como favoritos en el dispositivo sintonizador serán importados.", "Images": "Imágenes", "Identify": "Identificar", diff --git a/src/strings/fa.json b/src/strings/fa.json index 834b0a9474..a8f2202430 100644 --- a/src/strings/fa.json +++ b/src/strings/fa.json @@ -926,7 +926,6 @@ "Identify": "Identify", "Images": "Images", "ImportFavoriteChannelsHelp": "If enabled, only channels that are marked as favorite on the tuner device will be imported.", - "ImportMissingEpisodesHelp": "If enabled, information about missing episodes will be imported into your Jellyfin database and displayed within seasons and series. This may cause significantly longer library scans.", "InstallingPackage": "Installing {0} (version {1})", "InstantMix": "Instant mix", "ItemCount": "{0} items", diff --git a/src/strings/fr.json b/src/strings/fr.json index 587bc1a555..e76925ef8d 100644 --- a/src/strings/fr.json +++ b/src/strings/fr.json @@ -398,7 +398,6 @@ "HttpsRequiresCert": "Pour activer les connexions sécurisées, vous devrez fournir un certificat SSL vérifié, comme ceux fournis par Let's Encrypt. Veuillez fournir un certificat ou désactiver les connexions sécurisées.", "Identify": "Identifier", "ImportFavoriteChannelsHelp": "Seules les chaînes ajoutées aux favoris sur le tuner seront importées.", - "ImportMissingEpisodesHelp": "Les informations à propos des épisodes manquants seront importées dans votre base de données et affichées dans les saisons et séries. Cela peut accroître significativement la durée d'actualisation de la médiathèque.", "InstallingPackage": "Installation de {0} (version {1})", "InstantMix": "Mix instantané", "ItemCount": "{0} éléments", diff --git a/src/strings/hu.json b/src/strings/hu.json index 1bccbf1721..c393fc5c88 100644 --- a/src/strings/hu.json +++ b/src/strings/hu.json @@ -665,7 +665,6 @@ "Hide": "Elrejtés", "Horizontal": "Vízszintes", "HttpsRequiresCert": "A biztonságos kapcsolatok engedélyezéséhez megbízható SSL-tanúsítványt kell használni, mint például a Let's Encrypt. Kérlek add meg a tanúsítványt, vagy tiltsd le a biztonságos kapcsolatokat.", - "ImportMissingEpisodesHelp": "A hiányzó epizódokra vonatkozó információk a Jellyfin adatbázisába kerülnek importálásra és megjelenítésre kerülnek az évadokban és sorozatokban. Ez jelentősen hosszabb könyvtárvizsgálatot okozhat.", "InstantMix": "Azonnali keverés", "ItemCount": "{0} elem", "Items": "Elemek", diff --git a/src/strings/it.json b/src/strings/it.json index e56bb17d6d..d178027199 100644 --- a/src/strings/it.json +++ b/src/strings/it.json @@ -385,7 +385,6 @@ "Identify": "Identifica", "Images": "Immagini", "ImportFavoriteChannelsHelp": "Solo i canali che sono contrassegnati come preferiti sul dispositivo di sintonizzazione verranno importati.", - "ImportMissingEpisodesHelp": "Le informazioni relative agli episodi mancanti saranno importate nel database e mostrate all'interno di Serie e Stagioni. Questo può causare scansioni della libreria più lente.", "InstallingPackage": "Installazione di {0} (versione {1})", "InstantMix": "Mix istantaneo", "ItemCount": "{0} elementi", diff --git a/src/strings/ja.json b/src/strings/ja.json index f63441ac9c..00d9fb34e4 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -917,7 +917,6 @@ "ValueTimeLimitSingleHour": "タイムリミット: 1 時間", "Wednesday": "水曜日", "LabelPreferredDisplayLanguage": "優先する表示言語:", - "ImportMissingEpisodesHelp": "所有してないエピソードの情報がデータベースにインポートされ、シーズンとシリーズ内に表示されます。ライブラリの読み込み時間が非常に長くなる可能性があります。", "LabelBindToLocalNetworkAddress": "ローカルネットワークアドレスにバインド:", "LabelDownMixAudioScale": "ダウンミキシング時の音声ブースト:", "HeaderNavigation": "ナビゲーション", diff --git a/src/strings/kk.json b/src/strings/kk.json index fa005f55b8..a7ec7a951b 100644 --- a/src/strings/kk.json +++ b/src/strings/kk.json @@ -412,7 +412,6 @@ "Identify": "Anyqtaý", "Images": "Sýretter", "ImportFavoriteChannelsHelp": "Qosylǵanda, túner qurylǵysyndaǵy tańdaýly retinde belgilengen ǵana arnalar shetten ákelinetin bolady.", - "ImportMissingEpisodesHelp": "Qosylǵanda, joq epızodtar týraly aqparat sizdiń Jellyfin derekqorǵa ákelinedi jáne maýsymdar men telehıkaıalar aıasynda paıda bolady. Tasyǵyshhana skanerleýde bul aıtarlyqtaı uzaq ýaqyt alýy múmkin.", "InstallingPackage": "{0} ({1} nusqasy) ornatylýda", "InstantMix": "Lezdik qospalaý", "ItemCount": "{0} tarmaq", diff --git a/src/strings/ko.json b/src/strings/ko.json index 9cc0f7f6ae..22922f4c28 100644 --- a/src/strings/ko.json +++ b/src/strings/ko.json @@ -192,7 +192,6 @@ "Help": "도움말", "Images": "이미지", "ImportFavoriteChannelsHelp": "활성화 시, 튜너 장치에서 즐겨찾기로 표시된 채널만 불러옵니다.", - "ImportMissingEpisodesHelp": "이 기능을 사용하면 누락 된 에피소드에 대한 정보가 Jellyfin 데이터베이스로 가져와 시즌 및 시리즈 내에서 표시됩니다. 이로 인해 상당히 긴 라이브러리 스캔이 발생할 수 있습니다.", "InstallingPackage": "{0} 설치 중 ( {1} 버전)", "InstantMix": "인스턴트 믹스", "ItemCount": "{0} 항목", diff --git a/src/strings/lt-lt.json b/src/strings/lt-lt.json index 6c62ae9ca4..960f01ba7d 100644 --- a/src/strings/lt-lt.json +++ b/src/strings/lt-lt.json @@ -713,7 +713,6 @@ "HideWatchedContentFromLatestMedia": "Paslėpti matytą turinį iš naujausių medijos duomenų", "Horizontal": "Horizontalus", "LabelAccessDay": "Savaitės diena:", - "ImportMissingEpisodesHelp": "Jei įjungta, informacija apie trūkstamus epizodus bus importuota į jūsų „Jellyfin“ duomenų bazę ir rodoma serialuose. Tai gali įtakoti ilgesnį bibliotekos nuskaitymą.", "LabelAudioChannels": "Garso takeliai:", "LabelAutomaticallyRefreshInternetMetadataEvery": "Automatiškai atnaujinti metaduomenis iš interneto:", "LabelAudioSampleRate": "Garso takelio diskr.sparta:", diff --git a/src/strings/nb.json b/src/strings/nb.json index a7b1363574..f63da8e6ea 100644 --- a/src/strings/nb.json +++ b/src/strings/nb.json @@ -313,7 +313,6 @@ "Identify": "Identifiser", "Images": "Bilder", "ImportFavoriteChannelsHelp": "Kun kanaler som er markert som favoritt på tuneren bli importert.", - "ImportMissingEpisodesHelp": "Informasjon om manglende episoder vil bli importet til databasen og bli vist under sesonger og serier. Dette kan føre til at skanning av biblioteket tar betydelig lengre tid.", "InstallingPackage": "Installerer {0} (versjon {1})", "InstantMix": "Direktemiks", "ItemCount": "{0} elementer", diff --git a/src/strings/nl.json b/src/strings/nl.json index dcdfa80e78..194fdbca59 100644 --- a/src/strings/nl.json +++ b/src/strings/nl.json @@ -389,7 +389,6 @@ "Identify": "Identificeer", "Images": "Afbeeldingen", "ImportFavoriteChannelsHelp": "Alleen kanalen die als favoriet aangemerkt zijn op de tuner zullen geïmporteerd worden.", - "ImportMissingEpisodesHelp": "Informatie over ontbrekende afleveringen zal in uw database worden geïmporteerd en weergegeven in seizoenen en series. Dit kan aanzienlijk langere bibliotheekscans veroorzaken.", "InstallingPackage": "Installeren van {0} (versie {1})", "Kids": "Kinderen", "Label3DFormat": "3D formaat:", diff --git a/src/strings/pl.json b/src/strings/pl.json index 0893252ce3..fba8804ed6 100644 --- a/src/strings/pl.json +++ b/src/strings/pl.json @@ -410,7 +410,6 @@ "Identify": "Identyfikuj", "Images": "Obrazy", "ImportFavoriteChannelsHelp": "Jeśli aktywne, tylko kanały oznaczone jako ulubione na tunerze, będą importowane.", - "ImportMissingEpisodesHelp": "Informacje o brakujących odcinkach zostaną zaimportowane do bazy i będą wyświetlane na listach sezonów i seriali. Może to jednak znacznie wydłużyć czas skanowania biblioteki.", "InstallingPackage": "Instalowanie {0} (wersja {1})", "InstantMix": "Szybki remiks", "ItemCount": "{0} pozycje", diff --git a/src/strings/pt-br.json b/src/strings/pt-br.json index f1effb7a2f..6d581645b7 100644 --- a/src/strings/pt-br.json +++ b/src/strings/pt-br.json @@ -396,7 +396,6 @@ "Identify": "Identificar", "Images": "Imagens", "ImportFavoriteChannelsHelp": "Se ativado, apenas canais que estão marcados como favoritos no sintonizador serão importados.", - "ImportMissingEpisodesHelp": "Se ativado, as informações dos episódios que faltam serão importadas para seu banco de dados do Jellyfin e exibidas dentro das temporadas e séries. Isto pode causar lentidão no rastreamento da biblioteca.", "InstallingPackage": "Instalando {0} (versão{1})", "InstantMix": "Mix instântaneo", "ItemCount": "{0} itens", diff --git a/src/strings/pt-pt.json b/src/strings/pt-pt.json index 502f2952ba..ff190308ac 100644 --- a/src/strings/pt-pt.json +++ b/src/strings/pt-pt.json @@ -198,7 +198,6 @@ "Identify": "Identificar", "Images": "Imagens", "ImportFavoriteChannelsHelp": "Se ativado, apenas canais que estão marcados como favoritos no sintonizador serão importados.", - "ImportMissingEpisodesHelp": "Se ativado, a informação acerca dos episódios em falta será importada para a base de dados do Servidor Jellyfin e mostrada dentro das temporadas e séries. Isto pode aumentar significativamente a duração da análise da biblioteca.", "InstantMix": "Mix instântaneo", "ItemCount": "{0} itens", "Label3DFormat": "Formato 3D:", diff --git a/src/strings/pt.json b/src/strings/pt.json index dd3dc6e960..b6464e86ec 100644 --- a/src/strings/pt.json +++ b/src/strings/pt.json @@ -420,7 +420,6 @@ "ItemCount": "{0} itens", "InstantMix": "Mistura instântanea", "InstallingPackage": "A instalar {0}", - "ImportMissingEpisodesHelp": "Quando activado, a informação acerca dos episódios em falta será importada para a base de dados do Servidor Jellyfin e mostrada dentro das temporadas e séries. Isto pode aumentar significativamente a duração da análise da biblioteca.", "ImportFavoriteChannelsHelp": "Quando activado, apenas serão importados canais que estão marcados no sintonizador como favoritos.", "Images": "Imagens", "Identify": "Identificar", diff --git a/src/strings/ro.json b/src/strings/ro.json index f2be928cd7..7c243bd5f9 100644 --- a/src/strings/ro.json +++ b/src/strings/ro.json @@ -38,7 +38,6 @@ "HeaderTaskTriggers": "Declanșatori Sarcini", "HeaderUsers": "Utilizatori", "Help": "Ajutor", - "ImportMissingEpisodesHelp": "Informația despre episoadele lipsă va fi importată în baza de date și va fi afișată în cadrul serialelor. Aceasta poate cauza un timp semnificativ mai îndelungat la scanarea bibliotecilor.", "LabelArtists": "Artisti:", "LabelArtistsHelp": "Separară înșiruirea artiștilor utilizând ;", "LabelAudioLanguagePreference": "Preferințe de limbă pentru audio:", diff --git a/src/strings/ru.json b/src/strings/ru.json index 144a2d4ecb..3eb7b8f7dc 100644 --- a/src/strings/ru.json +++ b/src/strings/ru.json @@ -413,7 +413,6 @@ "Identify": "Распознать", "Images": "Изображения", "ImportFavoriteChannelsHelp": "Будут импортированы только каналы, которые обозначены как избранное на тюнерном устройстве.", - "ImportMissingEpisodesHelp": "Информация об отсутствующих эпизодах будет импортирована в вашу базу данных и отображена в пределах сезонов и сериалов. Это может заметно увеличить время сканирования медиатеки.", "InstallingPackage": "Устанавливается {0} (версия {1})", "InstantMix": "Автомикс", "ItemCount": "{0} элемент(а/ов)", diff --git a/src/strings/sk.json b/src/strings/sk.json index 5dafa0d791..57767c18d5 100644 --- a/src/strings/sk.json +++ b/src/strings/sk.json @@ -241,7 +241,6 @@ "Horizontal": "Horizontálne", "Identify": "Identifikovať", "Images": "Obrázky", - "ImportMissingEpisodesHelp": "Informácie o chýbajúcich epizódach budú importované do Vašej databázy a budú zobrazené v sériách a seriáloch. Toto môže spôsobiť podstatne dlhšie skenovania knižníc.", "InstallingPackage": "Inštalujem {0} (verzia{1})", "ItemCount": "{0} položiek", "Items": "Položky", diff --git a/src/strings/sl-si.json b/src/strings/sl-si.json index a8a7cbd3a8..56aa43b2e7 100644 --- a/src/strings/sl-si.json +++ b/src/strings/sl-si.json @@ -533,7 +533,6 @@ "LabelDisplayMode": "Način prikaza:", "LabelBindToLocalNetworkAddressHelp": "Preglasi lokalni IP naslov za HTTP strežnik. V kolikor pustite prazno se strežnik poveže z vsemi možnimi naslovi. Sprememba vrednosti zahteva ponovni zagon.", "InstallingPackage": "Nameščanje {0} (različica {1})", - "ImportMissingEpisodesHelp": "Podatki o manjkajočih epizodah bodo dodani v bazo podatkov in prikazani znotraj sezon in serij. To lahko občutno podaljša čas uvoza v knjižnjico.", "ImportFavoriteChannelsHelp": "Uvoženi bodo zgolj programi, ki so na sprejemniku označeni kot priljubljeni.", "LabelEnableDlnaServerHelp": "Omogoči UPnP napravam v omrežju da brskajo in predvajajo vsebine.", "LabelFolder": "Mapa:", diff --git a/src/strings/sv.json b/src/strings/sv.json index 9f4afd6cc0..15606c39c2 100644 --- a/src/strings/sv.json +++ b/src/strings/sv.json @@ -371,7 +371,6 @@ "Identify": "Identifiera", "Images": "Bilder", "ImportFavoriteChannelsHelp": "Endast kanaler som är märkta som favoriter på den här TV-mottagaren kommer att importeras.", - "ImportMissingEpisodesHelp": "Information om saknade episoder kommer att importeras till din Jellyfin-databas och visas i seriesäsongerna. Detta kan innebära att biblioteksskanningar tar en avsevärt längre tid.", "InstallingPackage": "Installerar {0} (version {1})", "InstantMix": "Omedelbar mix", "ItemCount": "{0} objekt", diff --git a/src/strings/ta.json b/src/strings/ta.json index f17e623a7a..e8b3f2346f 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -469,7 +469,6 @@ "ItemCount": "{0} உருப்படிகள்", "InstantMix": "உடனடி கலவை", "InstallingPackage": "{0} (பதிப்பு {1}) ஐ நிறுவுகிறது", - "ImportMissingEpisodesHelp": "காணாமல் போன அத்தியாயங்கள் பற்றிய தகவல்கள் உங்கள் தரவுத்தளத்தில் இறக்குமதி செய்யப்பட்டு பருவங்கள் மற்றும் தொடர்களில் காண்பிக்கப்படும். இது கணிசமாக நீண்ட நூலக ஸ்கேன்களை ஏற்படுத்தக்கூடும்.", "ImportFavoriteChannelsHelp": "ட்யூனர் சாதனத்தில் பிடித்ததாகக் குறிக்கப்பட்ட சேனல்கள் மட்டுமே இறக்குமதி செய்யப்படும்.", "Images": "படங்கள்", "Identify": "அடையாளம் காணவும்", diff --git a/src/strings/vi.json b/src/strings/vi.json index 57333b5a3a..4c9f811b1d 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -520,7 +520,6 @@ "ItemCount": "{0} mục", "InstantMix": "Trộn Lẫn Nhanh", "InstallingPackage": "Đang cài đặt {0} (phiên bản {1})", - "ImportMissingEpisodesHelp": "Nếu bật tuỳ chọn này, thông tin bị thiếu trong các tập phim sẽ được nhập vào cơ sở dữ liệu của máy chủ Jellyfin và hiển thị trong các phần và series. Điều này có thể làm việc quét thư viện lâu hơn rất nhiều.", "ImportFavoriteChannelsHelp": "Nếu bật tuỳ chọn này, chỉ những kênh yêu thích trong thiết bị bắt sóng sẽ được nhập vào.", "Images": "Hình Ảnh", "Identify": "Nhận Dạng", diff --git a/src/strings/zh-cn.json b/src/strings/zh-cn.json index 1a4f73d9d4..3933f8cae3 100644 --- a/src/strings/zh-cn.json +++ b/src/strings/zh-cn.json @@ -374,7 +374,6 @@ "Identify": "识别", "Images": "图片", "ImportFavoriteChannelsHelp": "只有在协调器设备中被标记为我的最爱的频道才会被导入。", - "ImportMissingEpisodesHelp": "缺少的剧集信息将被导入到你的数据库并分季分剧显示。可能会大大延长媒体库扫描时间。", "InstallingPackage": "正在安装 {0}(版本 {1})", "InstantMix": "即时混音", "ItemCount": "{0} 项", diff --git a/src/strings/zh-tw.json b/src/strings/zh-tw.json index f65bd6b91a..1d50f91da2 100644 --- a/src/strings/zh-tw.json +++ b/src/strings/zh-tw.json @@ -559,7 +559,6 @@ "Identify": "識別", "Images": "圖片", "ImportFavoriteChannelsHelp": "若啟用,僅於調諧器設備中被標記為我的最愛的頻道才會被導入。", - "ImportMissingEpisodesHelp": "缺失劇集的資料將導入您的媒體庫,並在季度與系列中顯示。 可能導致媒體庫掃描延長。", "InstallingPackage": "正在安裝 {0}(版本 {1})", "InstantMix": "即時混音", "Items": "項目", From e05a6f48f7e2247c2f7abb3c9d9483be7d7d712b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anton=20Fernandez=20Pr=C3=ADncipe?= Date: Sat, 19 Sep 2020 12:24:35 +0000 Subject: [PATCH 105/365] Translated using Weblate (Galician) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/gl/ --- src/strings/gl.json | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/strings/gl.json b/src/strings/gl.json index e87ce46770..534ed0b4eb 100644 --- a/src/strings/gl.json +++ b/src/strings/gl.json @@ -12,5 +12,9 @@ "Aired": "Emitido", "AddToPlaylist": "Engadir á lista de reprodución", "Add": "Engadir", - "ButtonSyncPlay": "SyncPlay" + "ButtonSyncPlay": "SyncPlay", + "Collections": "Colecións", + "Channels": "Canles", + "Books": "Libros", + "Artists": "Artistas" } From 08d87dff0102c9797f910fba013acbd18b36c846 Mon Sep 17 00:00:00 2001 From: Thomas Schwery Date: Sat, 19 Sep 2020 18:24:33 +0000 Subject: [PATCH 106/365] Translated using Weblate (French) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fr/ --- src/strings/fr.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings/fr.json b/src/strings/fr.json index a7f3328360..a464f7785b 100644 --- a/src/strings/fr.json +++ b/src/strings/fr.json @@ -1377,7 +1377,7 @@ "LabelTonemappingDesat": "Désaturation tonale :", "TonemappingRangeHelp": "Sélectionnez la gamme de couleur de sortie. Auto représente la même gamme qu'en entrée.", "LabelTonemappingRange": "Gamme de mappage tonal :", - "TonemappingAlgorithmHelp": "Le mappage tonal peut être affiné. Si vous n'êtes pas familier avec ces options, gardez les valeurs par défaut.
    La valeur recommandée est Reinhard.", + "TonemappingAlgorithmHelp": "Le mappage tonal peut être affiné. Si vous n'êtes pas familier avec ces options, gardez les valeurs par défaut. La valeur recommandée est Reinhard.", "LabelTonemappingAlgorithm": "Sélectionnez l'algorithme de mappage tonal à utiliser :", "AllowTonemappingHelp": "Le mappage tonal peut transformer la gamme dynamique d'une vidéo de HDR à SDR tout en maintenant les détails et les couleurs d'image qui sont des informations importantes pour la représentation de la scène originale. Actuellement, ne fonctionne uniquement lorsque le décodeur NVENC HEVC est utilisé et que des vidéos HDR10 ou HLG sont transcodées.", "EnableTonemapping": "Activer le mappage tonal", From c8e8486e2a7882c8f843a3948aae41f34c926034 Mon Sep 17 00:00:00 2001 From: Muhammad Idrus Date: Sun, 20 Sep 2020 05:15:18 +0000 Subject: [PATCH 107/365] Translated using Weblate (Indonesian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/id/ --- src/strings/id.json | 43 ++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 42 insertions(+), 1 deletion(-) diff --git a/src/strings/id.json b/src/strings/id.json index 858b8169a1..3c64e4603b 100644 --- a/src/strings/id.json +++ b/src/strings/id.json @@ -704,5 +704,46 @@ "LabelEnableDlnaClientDiscoveryIntervalHelp": "Menentukan durasi dalam detik antara pencarian SSDP.", "LabelEnableDlnaClientDiscoveryInterval": "Interval penemuan klien", "LabelEnableBlastAliveMessages": "Ledakan pesan hidup", - "KnownProxiesHelp": "Daftar alamat IP yang dipisahkan koma dari proxy yang diketahui digunakan saat menghubungkan ke instance Jellyfin Anda. Ini diperlukan untuk menggunakan header X-Forwarded-For dengan benar. Membutuhkan reboot setelah menyimpan." + "KnownProxiesHelp": "Daftar alamat IP yang dipisahkan koma dari proxy yang diketahui digunakan saat menghubungkan ke instance Jellyfin Anda. Ini diperlukan untuk menggunakan header X-Forwarded-For dengan benar. Membutuhkan reboot setelah menyimpan.", + "LabelProtocolInfo": "Info protokol:", + "LabelProtocol": "Protokol:", + "LabelProfileVideoCodecs": "Video codecs:", + "LabelProfileContainersHelp": "Dipisah dengan koma. Ini semua bisa ditinggalkan kosong untuk mengaplikasikan semua penyimpan.", + "LabelProfileContainer": "Penyimpan:", + "LabelProfileCodecsHelp": "Dipisah menggunakan koma. Semua bisa ditinggalkan kosong untuk menggunakan semua codecs.", + "LabelPreferredSubtitleLanguage": "Bahasa teks yang diinginkan:", + "LabelPreferredDisplayLanguage": "Tampilan bahasa yang diinginkan:", + "LabelPostProcessor": "Aplikasi setelah proses:", + "LabelPlayMethod": "Metode putar:", + "LabelPlaylist": "Daftar putar:", + "LabelPlaceOfBirth": "Tempat lahir:", + "LabelPasswordRecoveryPinCode": "Kode pin:", + "LabelPasswordConfirm": "Password (konfirmasi):", + "LabelPassword": "Password:", + "LabelOverview": "Tinjauan:", + "LabelOriginalTitle": "Judul asli:", + "LabelNumber": "Nomor:", + "LabelNotificationEnabled": "Aktifkan notifikasi ini", + "LabelNewsCategories": "Kategori baru:", + "LabelNewPasswordConfirm": "Konfirmasi password baru:", + "LabelNewPassword": "Password baru:", + "LabelNewName": "Nama baru:", + "LabelUnstable": "Belum stabil", + "LabelStable": "Stabil", + "LabelChromecastVersion": "Versi Chromecast", + "LabelName": "Nama:", + "LabelMusicStreamingTranscodingBitrateHelp": "Tentukan maksimum bitrate ketika streaming musik.", + "LabelMovieCategories": "Kategori film:", + "LabelModelNumber": "Nomor model", + "LabelModelName": "Nama model", + "LabelModelDescription": "Deskripsi model", + "LabelMetadataDownloadLanguage": "Unduhan bahasa yang disarankan:", + "LabelMetadata": "Metadata:", + "LabelMessageTitle": "Judul pesan:", + "LabelMessageText": "Pesan teks:", + "LabelMaxStreamingBitrate": "Kualitas streaming maksimum:", + "LabelCurrentStatus": "Status saat ini:", + "EnableQuickConnect": "Aktifkan sambung-cepat pada server ini", + "ButtonActivate": "Aktifasi", + "Authorize": "Izinkan" } From 74bfc558a01fc8a13e393709a45dcec355ab76ed Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Sat, 19 Sep 2020 16:51:37 +0000 Subject: [PATCH 108/365] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index 4ee151a266..ed3dfceab3 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -1401,9 +1401,9 @@ "LabelTonemappingDesat": "டோன் மேப்பிங் டெசாட்:", "TonemappingRangeHelp": "வெளியீட்டு வண்ண வரம்பைத் தேர்ந்தெடுக்கவும். ஆட்டோ என்பது உள்ளீட்டு வரம்பைப் போன்றது.", "LabelTonemappingRange": "டோன் மேப்பிங் வரம்பு:", - "TonemappingAlgorithmHelp": "டோன் மேப்பிங் நன்றாக இருக்கும். இந்த விருப்பங்களை நீங்கள் அறிந்திருக்கவில்லை என்றால், இயல்புநிலையை வைத்திருங்கள்.
    பரிந்துரைக்கப்பட்ட மதிப்பு ரெய்ன்ஹார்ட்.", + "TonemappingAlgorithmHelp": "டோன் மேப்பிங் நன்றாக இருக்கும். இந்த விருப்பங்களை நீங்கள் அறிந்திருக்கவில்லை என்றால், இயல்புநிலையை வைத்திருங்கள். பரிந்துரைக்கப்பட்ட மதிப்பு ரெய்ன்ஹார்ட்.", "LabelTonemappingAlgorithm": "பயன்படுத்த டோன் மேப்பிங் வழிமுறையைத் தேர்ந்தெடுக்கவும்:", - "AllowTonemappingHelp": "டோன் மேப்பிங் ஒரு வீடியோவின் டைனமிக் வரம்பை எச்.டி.ஆரிலிருந்து எஸ்.டி.ஆருக்கு மாற்றும், அதே நேரத்தில் பட விவரங்களையும் வண்ணங்களையும் பராமரிக்கும், அவை அசல் காட்சியைக் குறிக்கும் மிக முக்கியமான தகவல்கள். தற்போது NVENC HEVC டிகோடரைப் பயன்படுத்தும்போது மற்றும் HDR10 அல்லது HLG வீடியோக்களை டிரான்ஸ்கோடிங் செய்யும் போது மட்டுமே செயல்படும்.", + "AllowTonemappingHelp": "டோன் மேப்பிங் ஒரு வீடியோவின் டைனமிக் வரம்பை எச்டிஆரிலிருந்து எஸ்.டி.ஆருக்கு மாற்றும், அதே நேரத்தில் பட விவரங்களையும் வண்ணங்களையும் பராமரிக்கும், அவை அசல் காட்சியைக் குறிக்கும் மிக முக்கியமான தகவல்கள். உட்பொதிக்கப்பட்ட HDR10 அல்லது HLG மெட்டாடேட்டாவுடன் வீடியோக்களை டிரான்ஸ்கோடிங் செய்யும் போது மட்டுமே தற்போது செயல்படுகிறது. பிளேபேக் சீராக இல்லாவிட்டால் அல்லது தோல்வியுற்றால், தயவுசெய்து தொடர்புடைய வன்பொருள் டிகோடரை அணைக்க கருதுங்கள்.", "EnableTonemapping": "டோன் மேப்பிங்கை இயக்கு", "LabelOpenclDeviceHelp": "இது ஓப்பன்சிஎல் சாதனம் ஆகும், இது டன்மேப்பிங்கிற்கு பயன்படுத்தப்படுகிறது. புள்ளியின் இடது புறம் இயங்குதள எண், மற்றும் வலது புறம் இயங்குதளத்தின் சாதன எண். இயல்புநிலை மதிப்பு 0.0. OpenCL வன்பொருள் முடுக்கம் முறையைக் கொண்ட ffmpeg பயன்பாட்டுக் கோப்பு தேவை.", "LabelOpenclDevice": "OpenCL சாதனம்:", From f7d29af9ee22f17f6fbbf810dfd2ff85df13431b Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Sun, 20 Sep 2020 08:51:19 +0000 Subject: [PATCH 109/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 132 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 130 insertions(+), 2 deletions(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index 8c10dc3f3b..ed4211aa5a 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -936,7 +936,7 @@ "MediaInfoLanguage": "Ngôn ngữ", "MediaInfoInterlaced": "Xen kẽ", "MediaInfoFramerate": "Tỷ lệ khung hình", - "MediaInfoForced": "Miễn cưỡng", + "MediaInfoForced": "Bắt Buộc", "MediaInfoExternal": "Bên ngoài", "MediaInfoDefault": "Mặc định", "MediaInfoCodec": "Bộ giải mã", @@ -1016,5 +1016,133 @@ "LabelSyncPlayAccessCreateAndJoinGroups": "Cho phép người dùng tạo và tham gia nhóm", "LabelSyncPlayLeaveGroupDescription": "Tắt SyncPlay", "LabelSonyAggregationFlagsHelp": "Xác định nội dung của phần tử aggregationFlags trong không gian tên urn: schemas-sonycom: av.", - "LabelServerHost": "Máy chủ:" + "LabelServerHost": "Máy chủ:", + "OptionSaveMetadataAsHiddenHelp": "Thay đổi điều này sẽ áp dụng cho dữ liệu mô tả mới được lưu về sau. Các tệp dữ liệu mô tả hiện có sẽ được cập nhật vào lần tiếp theo chúng được máy chủ lưu.", + "OptionSaveMetadataAsHidden": "Lưu dữ liệu môt tả và hình ảnh dưới dạng tệp ẩn", + "OptionRequirePerfectSubtitleMatchHelp": "Yêu cầu kết hợp hoàn hảo sẽ lọc phụ đề để chỉ bao gồm những phụ đề đã được kiểm tra và xác minh với tệp video chính xác của bạn. Bỏ chọn điều này sẽ làm tăng khả năng phụ đề được tải xuống, nhưng sẽ làm tăng khả năng văn bản phụ đề bị điền sai hoặc không chính xác.", + "OptionPlainStorageFoldersHelp": "Tất cả các thư mục được biểu diễn trong DIDL dưới dạng \"object.container.storageFolder\" thay vì một loại cụ thể hơn, chẳng hạn như \"object.container.woman.musicArtist\".", + "OptionPlainStorageFolders": "Hiển thị tất cả các thư mục dưới dạng thư mục lưu trữ đơn giản", + "OptionParentalRating": "Xếp hạng Phụ Huynh", + "OptionOnInterval": "Vào một khoảng thời gian", + "OptionNew": "Mới…", + "OptionMissingEpisode": "Thiếu Tập Phim", + "OptionMax": "Tối đa", + "OptionLoginAttemptsBeforeLockoutHelp": "Giá trị bằng 0 có nghĩa là giữ mặc định ba lần thử đối với người dùng bình thường và năm lần thử đối với quản trị viên. Đặt giá trị này thành -1 sẽ tắt tính năng này.", + "OptionLoginAttemptsBeforeLockout": "Xác định số lần đăng nhập không chính xác có thể được thực hiện trước khi xảy ra khóa người dùng.", + "OptionIgnoreTranscodeByteRangeRequestsHelp": "Các yêu cầu này sẽ được thực hiện nhưng sẽ bỏ qua phần đầu dải byte.", + "OptionIgnoreTranscodeByteRangeRequests": "Bỏ qua các yêu cầu phạm vi byte chuyển mã", + "OptionHlsSegmentedSubtitles": "Phụ đề được phân đoạn HLS", + "OptionHideUserFromLoginHelp": "Hữu ích cho tài khoản quản trị viên cá nhân hoặc ẩn. Người dùng sẽ cần đăng nhập thủ công bằng cách nhập tên người dùng và mật khẩu của họ.", + "OptionExtractChapterImage": "Bật trích xuất hình ảnh mỗi cảnh quay", + "OptionExternallyDownloaded": "Tải xuống bên ngoài", + "OptionEveryday": "Mỗi ngày", + "OptionEstimateContentLength": "Ước tính độ dài nội dung khi chuyển mã", + "OptionEnableM2tsModeHelp": "Bật chế độ m2ts khi mã hóa thành mpegts.", + "OptionEnableM2tsMode": "Bật chế độ M2ts", + "OptionEnableForAllTuners": "Bật cho tất cả các thiết bị dò", + "OptionEnableExternalContentInSuggestionsHelp": "Cho phép đưa các đoạn giới thiệu trên internet và các chương trình truyền hình trực tiếp vào nội dung được đề xuất.", + "OptionEnableExternalContentInSuggestions": "Bật nội dung bên ngoài trong phần đề xuất", + "OptionEnableAccessToAllLibraries": "Bật cho phép truy cập vào tất cả các thư viện", + "OptionEnableAccessToAllChannels": "Bật cho phép truy cập vào tất cả các kênh", + "OptionEnableAccessFromAllDevices": "Bật cho phép truy cập từ tất cả các thiết bị", + "OptionDownloadImagesInAdvanceHelp": "Theo mặc định, hầu hết các hình ảnh chỉ được tải xuống khi khách hàng yêu cầu. Bật tùy chọn này để tải xuống trước tất cả các hình ảnh khi phương tiện mới được nhập. Điều này có thể khiến quá trình quét thư viện lâu hơn đáng kể.", + "OptionDownloadImagesInAdvance": "Tải xuống hình ảnh nâng cao", + "OptionDisplayFolderViewHelp": "Hiển thị các thư mục cùng với các thư viện phương tiện khác của bạn. Điều này có thể hữu ích nếu bạn muốn có chế độ xem thư mục đơn giản.", + "OptionDisplayFolderView": "Hiển thị chế độ xem thư mục để hiển thị các thư mục phương tiện thuần túy", + "OptionDisableUserHelp": "Máy chủ sẽ không cho phép bất kỳ kết nối nào từ người dùng này. Các kết nối hiện có sẽ bị chấm dứt đột ngột.", + "OptionDateAddedImportTime": "Sử dụng ngày đã quét vào thư viện", + "OptionDateAddedFileTime": "Sử dụng ngày tạo tệp", + "OptionDaily": "Hằng ngày", + "OptionCustomUsers": "Tùy Chọn", + "OptionCriticRating": "Xếp Hạng Phê Bình", + "OptionBluray": "Đĩa Blu-ray", + "OptionAutomaticallyGroupSeriesHelp": "Loạt phim nằm trên nhiều thư mục trong thư viện này sẽ được tự động hợp nhất thành một loạt phim duy nhất.", + "OptionAutomaticallyGroupSeries": "Tự động hợp nhất các loạt phim được trải dài trên nhiều thư mục", + "OptionAllowVideoPlaybackTranscoding": "Cho phép phát lại video yêu cầu chuyển mã", + "OptionAllowSyncTranscoding": "Cho phép tải xuống và đồng bộ hóa phương tiện yêu cầu chuyển mã", + "OptionAllowRemoteSharedDevicesHelp": "Các thiết bị DLNA được coi là chia sẻ cho đến khi người dùng bắt đầu kiểm soát chúng.", + "OptionAllowRemoteSharedDevices": "Cho phép điều khiển từ xa các thiết bị dùng chung", + "OptionAllowRemoteControlOthers": "Cho phép điều khiển từ xa những người dùng khác", + "OptionAllowMediaPlaybackTranscodingHelp": "Việc hạn chế quyền truy cập chuyển mã có thể gây ra lỗi phát lại trên ứng dụng khách do định dạng phương tiện không được hỗ trợ.", + "OptionAllowMediaPlayback": "Cho phép phát lại phương tiện", + "OptionAllowManageLiveTv": "Cho phép quản lý ghi truyền hình trực tiếp", + "OptionAllowLinkSharingHelp": "Chỉ các trang web chứa thông tin phương tiện được chia sẻ. Các tệp phương tiện không bao giờ chia sẻ công khai. Chia sẻ giới hạn thời gian và sẽ hết hạn sau {0} ngày.", + "OptionAllowLinkSharing": "Cho phép chia sẻ mạng xã hội", + "OptionAllowContentDownloading": "Cho phép tải xuống và đồng bộ hóa phương tiện", + "OptionAllowBrowsingLiveTv": "Cho phép truy cập TV trực tiếp", + "OptionForceRemoteSourceTranscoding": "Bắt buộc chuyển mã các nguồn phương tiện từ xa (như LiveTV)", + "OptionAllowAudioPlaybackTranscoding": "Cho phép chuyển mã khi phát lại âm thanh", + "OptionAllUsers": "Tất Cả Người Dùng", + "OptionAdminUsers": "Quản Trị Viên", + "Option3D": "3D", + "OnlyImageFormats": "Chỉ những định dạng ảnh này (VOBSUB, PGS, SUB)", + "OnlyForcedSubtitles": "Bắt Buộc Duy Nhất", + "OnlyForcedSubtitlesHelp": "Chỉ những phụ đề được đánh dấu là bắt buộc mới được tải.", + "OneChannel": "Một kênh", + "Off": "Tắt", + "NumLocationsValue": "{0} thư mục", + "Normal": "Bình thường", + "None": "Không", + "NoSubtitlesHelp": "Phụ đề sẽ không được tải theo mặc định. Chúng vẫn có thể được bật theo cách thủ công trong khi phát lại.", + "NoSubtitleSearchResultsFound": "Không tìm thấy kết quả nào.", + "MessageNoPluginConfiguration": "Không có cài đặt nào cho Plugin này để định cấu hình.", + "MessageNoNextUpItems": "Không tìm thấy. Bắt đầu xem chương trình của bạn!", + "NoNewDevicesFound": "Không tìm thấy thiết bị mới. Để thêm bộ dò mới, hãy đóng hộp thoại này và nhập thông tin thiết bị theo cách thủ công.", + "NoCreatedLibraries": "Có vẻ như bạn chưa tạo bất kỳ thư viện nào. {0} Bạn có muốn tạo một cái ngay bây giờ không? {1}", + "No": "Không", + "NextUp": "Tiếp Theo", + "NextTrack": "Chuyển đến kế tiếp", + "Next": "Kế tiếp", + "News": "Tin Tức", + "NewEpisodesOnly": "Chỉ Các Tập Mới", + "NewEpisodes": "Tập Mới", + "NewCollectionNameExample": "Ví dụ: Bộ sưu tập Chiến tranh giữa các vì sao", + "NewCollectionHelp": "Bộ sưu tập cho phép bạn tạo các nhóm phim và nội dung thư viện khác được cá nhân hóa.", + "NewCollection": "Bộ Sưu Tập Mới", + "Never": "Không Bao Giờ", + "Name": "Tên", + "MySubtitles": "Phụ Đề Của Tôi", + "Mute": "Tắt Âm Thanh", + "MusicVideos": "Video Âm Nhạc", + "MusicVideo": "Video Âm Nhạc", + "MusicLibraryHelp": "Xem lại {0} hướng dẫn đặt tên nhạc {1}.", + "MusicArtist": "Nghệ Sĩ Âm Nhạc", + "MusicAlbum": "Album nhạc", + "Movie": "Phim", + "MovieLibraryHelp": "Xem lại {0} hướng dẫn đặt tên phim {1}.", + "MoveRight": "Di chuyển sang phải", + "MoveLeft": "Di chuyển sang trái", + "MoreMediaInfo": "Thông Tin Phương Tiện", + "MoreUsersCanBeAddedLater": "Có thể thêm nhiều người dùng hơn sau đó từ trong bảng điều khiển.", + "MoreFromValue": "Thêm từ {0}", + "Mobile": "Di động", + "MinutesBefore": "phút trước", + "MinutesAfter": "phút sau", + "MetadataSettingChangeHelp": "Thay đổi cài đặt dữ liệu mô tả sẽ ảnh hưởng đến nội dung mới được thêm vào. Để làm mới nội dung hiện có, hãy mở màn hình chi tiết và bấm nút làm mới hoặc thực hiện làm mới hàng loạt bằng trình quản lý dữ liệu mô tả.", + "MetadataManager": "Quản lý dữ liệu mô tả", + "Metadata": "Dữ liệu mô tả", + "MessageSyncPlayErrorMedia": "Không thể bật SyncPlay! Lỗi phương tiện.", + "MessageSyncPlayErrorMissingSession": "Không thể bật SyncPlay! Thiếu phiên.", + "MessageSyncPlayErrorNoActivePlayer": "Không tìm thấy trình phát đang hoạt động. Phát đồng bộ SyncPlay đã bị tắt.", + "MessageSyncPlayErrorAccessingGroups": "Đã xảy ra lỗi khi truy cập danh sách nhóm.", + "MessageSyncPlayLibraryAccessDenied": "Quyền truy cập vào nội dung này bị hạn chế.", + "MessageSyncPlayJoinGroupDenied": "Cần có quyền để sử dụng SyncPlay.", + "MessageSyncPlayCreateGroupDenied": "Cần có quyền để tạo nhóm.", + "MessageSyncPlayGroupDoesNotExist": "Không thể tham gia nhóm vì nó không tồn tại.", + "MessageSyncPlayPlaybackPermissionRequired": "Cần có quyền phát lại.", + "MessageSyncPlayNoGroupsAvailable": "Không có nhóm nào. Bắt đầu phát thứ gì đó trước.", + "MessageSyncPlayUserLeft": "{0} đã rời bỏ nhóm.", + "MessageSyncPlayUserJoined": "{0} đã tham gia nhóm.", + "MessageSyncPlayDisabled": "Phát đồng bộ SyncPlay đã tắt.", + "MessageSyncPlayEnabled": "Phát đồng bộ SyncPlay đã được bật.", + "MessageYouHaveVersionInstalled": "Bạn hiện đã cài đặt phiên bản {0}.", + "MessageUnsetContentHelp": "Nội dung sẽ được hiển thị dưới dạng các thư mục thuần túy. Để có kết quả tốt nhất, hãy sử dụng trình quản lý dữ liệu mô tả để đặt loại nội dung của thư mục con.", + "MessageUnableToConnectToServer": "Chúng tôi không thể kết nối với máy chủ đã chọn ngay bây giờ. Hãy đảm bảo rằng nó đang chạy và thử lại.", + "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Các vị trí phương tiện sau sẽ bị xóa khỏi thư viện của bạn:", + "MessageReenableUser": "Xem bên dưới để kích hoạt lại", + "MessagePluginInstallDisclaimer": "Các plugin do các thành viên cộng đồng xây dựng là một cách tuyệt vời để nâng cao trải nghiệm của bạn với các tính năng và lợi ích bổ sung. Trước khi cài đặt, hãy lưu ý về những ảnh hưởng mà chúng có thể có trên máy chủ của bạn, chẳng hạn như quét thư viện lâu hơn, xử lý nền bổ sung và giảm độ ổn định của hệ thống.", + "MessagePluginConfigurationRequiresLocalAccess": "Để định cấu hình plugin này, vui lòng đăng nhập trực tiếp vào máy chủ cục bộ của bạn.", + "MessagePleaseWait": "Vui lòng đợi. Việc này có thể phải mất một ít thời gian.", + "MessagePleaseEnsureInternetMetadata": "Hãy đảm bảo rằng việc tải xuống dữ liệu mô tả trên internet đã được bật.", + "LabelSeriesRecordingPath": "Đường dẫn Ghi lại Phim Bộ:" } From 0f12f2e2c9f70d2bcb16ee1bb3feb96faf7de679 Mon Sep 17 00:00:00 2001 From: Alex Moran Date: Sun, 20 Sep 2020 11:01:56 +0000 Subject: [PATCH 110/365] Translated using Weblate (Pirate) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/pr/ --- src/strings/pr.json | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/strings/pr.json b/src/strings/pr.json index 7983d0bb97..a43da6372f 100644 --- a/src/strings/pr.json +++ b/src/strings/pr.json @@ -20,5 +20,9 @@ "AddToCollection": "Add to ye collection", "AdditionalNotificationServices": "Browse th' plugin scroll t' invoke additional bell-ringing.", "AddToPlaylist": "Add t' ye playlist", - "AddToPlayQueue": "Add t' ye play queue" + "AddToPlayQueue": "Add t' ye play queue", + "StopPlayback": "Belay That", + "ClearQueue": "Swab the Decks", + "Alerts": "Avast Ye", + "AirDate": "Maiden Voyage" } From 5f5eeefd62176e33f68c066f3e7eb5a43b4e7b18 Mon Sep 17 00:00:00 2001 From: jeremletrol81 Date: Sun, 20 Sep 2020 11:26:15 +0000 Subject: [PATCH 111/365] Translated using Weblate (French) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fr/ --- src/strings/fr.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/fr.json b/src/strings/fr.json index a464f7785b..ee1af587a7 100644 --- a/src/strings/fr.json +++ b/src/strings/fr.json @@ -1413,5 +1413,6 @@ "EnableQuickConnect": "Activer la connexion rapide sur ce serveur", "ButtonUseQuickConnect": "Utiliser la Connexion Rapide", "ButtonActivate": "Activer", - "Authorize": "Autoriser" + "Authorize": "Autoriser", + "LabelTonemappingParam": "Paramètre de mappage tonal :" } From b0d50ff7b18ac3bb61e73ab825a833e905f729aa Mon Sep 17 00:00:00 2001 From: Alex Moran Date: Sun, 20 Sep 2020 11:09:25 +0000 Subject: [PATCH 112/365] Translated using Weblate (Pirate) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/pr/ --- src/strings/pr.json | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/strings/pr.json b/src/strings/pr.json index a43da6372f..88cee84f94 100644 --- a/src/strings/pr.json +++ b/src/strings/pr.json @@ -1,5 +1,5 @@ { - "TabLogs": "Crow's Nest", + "TabLogs": "Capt'n's Logs", "HeaderAdmin": "Cap'n", "WelcomeToProject": "Ahoy, matey! This be Jellyfin!", "ButtonOk": "Aye", @@ -24,5 +24,16 @@ "StopPlayback": "Belay That", "ClearQueue": "Swab the Decks", "Alerts": "Avast Ye", - "AirDate": "Maiden Voyage" + "AirDate": "Maiden Voyage", + "SearchResults": "X Marks The Spot", + "Songs": "Shantees", + "SelectAdminUsername": "Capt'n's Title.", + "OnWakeFromSleep": "Show A Leg", + "TabDashboard": "The Helm", + "TabContainers": "Chests", + "ValueOneSong": "1 shantee", + "ValueSongCount": "{0} shantees", + "Yes": "Ay", + "PathNotFound": "That Be Uncharted Waters Friend.", + "LastSeen": "Ship Last Sighted {0}" } From b61261f5cbf2a78f5c78eeb17cdf262e3b6318d6 Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Mon, 21 Sep 2020 07:38:49 +0000 Subject: [PATCH 113/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index ed4211aa5a..e7818f848c 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -1144,5 +1144,25 @@ "MessagePluginConfigurationRequiresLocalAccess": "Để định cấu hình plugin này, vui lòng đăng nhập trực tiếp vào máy chủ cục bộ của bạn.", "MessagePleaseWait": "Vui lòng đợi. Việc này có thể phải mất một ít thời gian.", "MessagePleaseEnsureInternetMetadata": "Hãy đảm bảo rằng việc tải xuống dữ liệu mô tả trên internet đã được bật.", - "LabelSeriesRecordingPath": "Đường dẫn Ghi lại Phim Bộ:" + "LabelSeriesRecordingPath": "Đường dẫn Ghi lại Phim Bộ:", + "PinCodeResetConfirmation": "Bạn có chắc chắn muốn đặt lại mã pin không?", + "PinCodeResetComplete": "Mã pin đã được đặt lại.", + "PictureInPicture": "Ảnh trong ảnh", + "Photo": "Hình Ảnh", + "Person": "Người", + "PerfectMatch": "Kết hợp hoàn hảo", + "People": "Mọi người", + "PasswordResetProviderHelp": "Chọn nhà cung cấp đặt lại mật khẩu sẽ được sử dụng khi người dùng này yêu cầu đặt lại mật khẩu.", + "PackageInstallFailed": "Cài đặt {0} (phiên bản {1}) không thành công.", + "PackageInstallCompleted": "Đã hoàn tất cài đặt {0} (phiên bản {1}).", + "PackageInstallCancelled": "Đã hủy cài đặt {0} (phiên bản {1}).", + "Overview": "Tổng Quát", + "OriginalAirDateValue": "Ngày phát sóng ban đầu: {0}", + "OptionWeekly": "Hàng tuần", + "OptionWeekends": "Ngày cuối tuần", + "OptionWeekdays": "Các ngày trong tuần", + "OptionWakeFromSleep": "Đánh Thức Khi Đang Ở Chế Độ Ngủ", + "OptionUnairedEpisode": "Các tập không mong muốn", + "OptionTvdbRating": "Xếp hạng TVDB", + "OptionAllowVideoPlaybackRemuxing": "Cho phép phát lại video yêu cầu chuyển đổi mà không cần mã hóa lại" } From 1c72a8d0a0286190b1c274c93a7a74f5c36ed4bd Mon Sep 17 00:00:00 2001 From: josteinh Date: Mon, 21 Sep 2020 08:08:21 +0000 Subject: [PATCH 114/365] =?UTF-8?q?Translated=20using=20Weblate=20(Norwegi?= =?UTF-8?q?an=20Bokm=C3=A5l)=20Translation:=20Jellyfin/Jellyfin=20Web=20Tr?= =?UTF-8?q?anslate-URL:=20https://translate.jellyfin.org/projects/jellyfin?= =?UTF-8?q?/jellyfin-web/nb=5FNO/?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/strings/nb.json | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/strings/nb.json b/src/strings/nb.json index a7b1363574..8e7bac93ee 100644 --- a/src/strings/nb.json +++ b/src/strings/nb.json @@ -1369,5 +1369,13 @@ "Other": "Annet", "VideoAudio": "Film lyd", "Photo": "Bilde", - "LabelAlbumArtMaxResHelp": "Høyeste tillatte oppløsning for album cover som er tilgjengelig via upnp:albumArtURI." + "LabelAlbumArtMaxResHelp": "Høyeste tillatte oppløsning for album cover som er tilgjengelig via upnp:albumArtURI.", + "LabelKnownProxies": "Kjente proxyer:", + "LabelIconMaxResHelp": "Maks oppløsning av minibilder som vises via egenskapvalget upnp:icon.", + "LabelCurrentStatus": "Nåværende status:", + "KnownProxiesHelp": "Kommaseparert liste med IP-adresser av kjente proxyer brukt til å tilkoble din Jellyfin-instans. Dette er påkrevd for å tilkoble korrekt, ved å bruke X-Forwardet-For headers. Omstart er påkrevd etter lagring.", + "EnableQuickConnect": "Bruk rask tilkobling på denne tjeneren", + "ButtonUseQuickConnect": "Bruk rask tilkobling", + "ButtonActivate": "Aktiver", + "Authorize": "Autoriser" } From 2d413338c2f5451fcc293128042e80d4210044e5 Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Mon, 21 Sep 2020 07:50:40 +0000 Subject: [PATCH 115/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 105 +++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 100 insertions(+), 5 deletions(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index e7818f848c..2f49b852d8 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -58,7 +58,7 @@ "OptionPlayCount": "Số lần phát", "OptionTrackName": "Tên bài", "ParentalRating": "Parental Rating", - "PasswordMatchError": "Mật khẩu và mật khẩu xác nhận cần phải khớp nhau .", + "PasswordMatchError": "Mật khẩu và mật khẩu xác nhận cần phải trùng khớp nhau .", "PasswordResetComplete": "Mật khẩu đã được cài đặt lại.", "PasswordResetConfirmation": "Bạn có chắc muốn reset mật khẩu?", "PasswordSaved": "Mật khẩu đã được lưu.", @@ -658,7 +658,7 @@ "LabelMaxParentalRating": "Xếp hạng tối đa cho phép của phụ huynh:", "LabelMaxChromecastBitrate": "Chất lượng truyền tải Chromecast:", "LabelMaxBackdropsPerItem": "Số lượng phông nền tối đa mỗi mục:", - "LabelMatchType": "Loại tương thích:", + "LabelMatchType": "Loại phù hợp:", "LabelManufacturerUrl": "URL của nhà sản xuất", "LabelManufacturer": "Nhà sản xuất:", "LabelLogs": "Logs:", @@ -761,7 +761,7 @@ "OptionProtocolHls": "Luồng Trực Tiếp HTTP", "OptionRandom": "Ngẫu Nhiên", "OptionRegex": "Biểu thức chính quy", - "OptionRequirePerfectSubtitleMatch": "Chỉ tải xuống phụ đề phù hợp nhất với tệp video của tôi", + "OptionRequirePerfectSubtitleMatch": "Chỉ tải xuống phụ đề đúng nhất khớp với tệp video của tôi", "OptionReportByteRangeSeekingWhenTranscodingHelp": "Điều này là bắt buộc đối với một số thiết bị không có thời gian tìm kiếm tốt.", "OptionReportByteRangeSeekingWhenTranscoding": "Báo cáo máy chủ có hỗ trợ tìm kiếm byte khi chuyển mã", "OptionReleaseDate": "Ngày Phát Hành", @@ -1019,7 +1019,7 @@ "LabelServerHost": "Máy chủ:", "OptionSaveMetadataAsHiddenHelp": "Thay đổi điều này sẽ áp dụng cho dữ liệu mô tả mới được lưu về sau. Các tệp dữ liệu mô tả hiện có sẽ được cập nhật vào lần tiếp theo chúng được máy chủ lưu.", "OptionSaveMetadataAsHidden": "Lưu dữ liệu môt tả và hình ảnh dưới dạng tệp ẩn", - "OptionRequirePerfectSubtitleMatchHelp": "Yêu cầu kết hợp hoàn hảo sẽ lọc phụ đề để chỉ bao gồm những phụ đề đã được kiểm tra và xác minh với tệp video chính xác của bạn. Bỏ chọn điều này sẽ làm tăng khả năng phụ đề được tải xuống, nhưng sẽ làm tăng khả năng văn bản phụ đề bị điền sai hoặc không chính xác.", + "OptionRequirePerfectSubtitleMatchHelp": "Yêu cầu phù hợp nhất sẽ lọc phụ đề để chỉ bao gồm những phụ đề đã được kiểm tra và xác minh với tệp video chính xác của bạn. Bỏ chọn điều này sẽ làm tăng khả năng phụ đề được tải xuống, nhưng sẽ làm tăng khả năng văn bản phụ đề bị điền sai hoặc không chính xác.", "OptionPlainStorageFoldersHelp": "Tất cả các thư mục được biểu diễn trong DIDL dưới dạng \"object.container.storageFolder\" thay vì một loại cụ thể hơn, chẳng hạn như \"object.container.woman.musicArtist\".", "OptionPlainStorageFolders": "Hiển thị tất cả các thư mục dưới dạng thư mục lưu trữ đơn giản", "OptionParentalRating": "Xếp hạng Phụ Huynh", @@ -1164,5 +1164,100 @@ "OptionWakeFromSleep": "Đánh Thức Khi Đang Ở Chế Độ Ngủ", "OptionUnairedEpisode": "Các tập không mong muốn", "OptionTvdbRating": "Xếp hạng TVDB", - "OptionAllowVideoPlaybackRemuxing": "Cho phép phát lại video yêu cầu chuyển đổi mà không cần mã hóa lại" + "OptionAllowVideoPlaybackRemuxing": "Cho phép phát lại video yêu cầu chuyển đổi mà không cần mã hóa lại", + "SortByValue": "Sắp xếp theo {0}", + "Sort": "Sắp xếp", + "SmartSubtitlesHelp": "Phụ đề phù hợp với tùy chọn ngôn ngữ sẽ được tải khi âm thanh bằng tiếng nước ngoài.", + "Smart": "Thông minh", + "Smaller": "Nhỏ hơn", + "Small": "Nhỏ", + "SkipEpisodesAlreadyInMyLibraryHelp": "Các tập sẽ được so sánh bằng cách sử dụng số tập và mùa, khi có sẵn.", + "SkipEpisodesAlreadyInMyLibrary": "Không ghi các tập đã có trong thư viện của tôi", + "SimultaneousConnectionLimitHelp": "Số luồng đồng thời tối đa được phép. Nhập 0 không giới hạn.", + "SettingsWarning": "Việc thay đổi các giá trị này có thể làm mất ổn định hoặc lỗi kết nối. Nếu bạn gặp bất kỳ sự cố nào, chúng tôi khuyên bạn nên thay đổi chúng về mặc định.", + "Settings": "Cài đặt", + "ServerUpdateNeeded": "Máy chủ này cần được cập nhật. Để tải xuống phiên bản mới nhất, vui lòng truy cập {0}", + "ServerRestartNeededAfterPluginInstall": "Jellyfin sẽ cần được khởi động lại sau khi cài đặt plugin.", + "ServerNameIsShuttingDown": "Máy chủ tại {0} đang ngừng hoạt động.", + "ServerNameIsRestarting": "Máy chủ tại {0} đang khởi động lại.", + "SeriesYearToPresent": "{0} - Hiện tại", + "SeriesSettings": "Cài đặt loạt phim", + "SeriesRecordingScheduled": "Đã lên lịch ghi loạt phim.", + "SeriesDisplayOrderHelp": "Thứ tự các tập theo ngày phát sóng, thứ tự DVD hoặc đánh số tuyệt đối.", + "SeriesCancelled": "Đã hủy loạt phim.", + "Series": "Loạt Phim", + "SendMessage": "Gửi tin nhắn", + "SelectServer": "Chọn Máy Chủ", + "SelectAdminUsername": "Vui lòng chọn tên đăng nhập cho tài khoản quản trị.", + "Season": "Mùa", + "SearchResults": "Kết Quả Tìm Kiếm", + "SearchForSubtitles": "Tìm kiếm phụ đề", + "SearchForMissingMetadata": "Tìm kiếm dữ liệu mô tả bị thiếu", + "SearchForCollectionInternetMetadata": "Tìm kiếm tác phẩm nghệ thuật và dữ liệu mô tả trên Internet", + "Search": "Tìm kiếm", + "Screenshots": "Ảnh chụp màn hình", + "Screenshot": "Ảnh chụp màn hình", + "Schedule": "Lên lịch", + "ScanLibrary": "Quét thư viện", + "ScanForNewAndUpdatedFiles": "Quét các tệp mới và các tệp đã cập nhật", + "SaveSubtitlesIntoMediaFoldersHelp": "Lưu phụ đề kế bên tệp video để quản lý chúng được dễ dàng hơn.", + "SaveSubtitlesIntoMediaFolders": "Lưu phụ đề vào thư mục phương tiện", + "SaveChanges": "Lưu thay đổi", + "Runtime": "Thời gian chạy", + "Rewind": "Tua lại", + "ResumeAt": "Tiếp tục từ {0}", + "Restart": "Khởi động lại", + "ResetPassword": "Đặt lại mật khẩu", + "ReplaceExistingImages": "Thay thế hình ảnh hiện có", + "ReplaceAllMetadata": "Thay thế tất cả dữ liệu mô tả", + "RepeatOne": "Lặp lại một lần", + "Recordings": "Bản ghi", + "MessageChangeRecordingPath": "Thay đổi thư mục ghi của bạn sẽ không đưa các bản ghi hiện có từ chỗ cũ sang chỗ mới. Bạn sẽ cần đưa chúng đi theo cách thủ công nếu muốn.", + "RecordingCancelled": "Đã hủy ghi.", + "RecordSeries": "Ghi lại loạt phim", + "QuickConnectNotActive": "Kết nối nhanh không hoạt động trên máy chủ này", + "QuickConnectNotAvailable": "Yêu cầu quản trị viên máy chủ của bạn bật kết nối nhanh", + "QuickConnectInvalidCode": "Mã kết nối nhanh không hợp lệ", + "QuickConnectDescription": "Để đăng nhập bằng kết nối nhanh, hãy chọn nút Kết nối nhanh trên thiết bị bạn đang đăng nhập và nhập mã hiển thị bên dưới.", + "QuickConnectDeactivated": "Kết nối nhanh đã bị vô hiệu hóa trước khi yêu cầu đăng nhập có thể được chấp thuận", + "QuickConnectAuthorizeFail": "Mã kết nối nhanh không xác định", + "QuickConnectAuthorizeSuccess": "Yêu cầu được cho phép", + "QuickConnectAuthorizeCode": "Nhập mã {0} để đăng nhập", + "QuickConnectActivationSuccessful": "Đã kích hoạt thành công", + "QuickConnect": "Kết nối nhanh", + "Quality": "Chất lượng", + "Programs": "Chương Trình", + "Profile": "Hồ sơ", + "ProductionLocations": "Nơi sản xuất", + "Producer": "Nhà sản xuất", + "Primary": "Chính Thức", + "PreviousTrack": "Chuyển đến phần trước", + "Previous": "Trước", + "Premieres": "Công chiếu", + "Premiere": "Công chiếu", + "PreferEmbeddedEpisodeInfosOverFileNames": "Ưu tiên thông tin tập được nhúng hơn tên tệp", + "PreferEmbeddedEpisodeInfosOverFileNamesHelp": "Điều này sử dụng thông tin tập từ siêu dữ liệu được nhúng nếu có.", + "PreferEmbeddedTitlesOverFileNamesHelp": "Điều này xác định tiêu đề hiển thị mặc định khi không có siêu dữ liệu internet hoặc siêu dữ liệu cục bộ.", + "PreferEmbeddedTitlesOverFileNames": "Ưu tiên tiêu đề được nhúng hơn tên tệp", + "MessageGetInstalledPluginsError": "Đã xảy ra lỗi khi nhận danh sách các plugin hiện được cài đặt.", + "MessagePluginInstallError": "Đã xảy ra lỗi khi cài đặt plugin.", + "MessagePluginInstalled": "Plugin đã được cài đặt thành công. Máy chủ sẽ cần được khởi động lại để các thay đổi có hiệu lực.", + "PosterCard": "Thẻ áp phích", + "Poster": "Áp phích", + "PleaseSelectTwoItems": "Vui lòng chọn ít nhất hai mục.", + "PleaseRestartServerName": "Vui lòng khởi động lại Jellyfin vào {0}.", + "PleaseEnterNameOrId": "Vui lòng nhập tên hoặc ID bên ngoài.", + "PleaseConfirmPluginInstallation": "Vui lòng nhấp vào OK để xác nhận bạn đã đọc ở trên và muốn tiếp tục cài đặt plugin.", + "PleaseAddAtLeastOneFolder": "Vui lòng thêm ít nhất một thư mục vào thư viện này bằng cách nhấp vào nút Thêm.", + "Played": "Đã Phát", + "PlaybackErrorNoCompatibleStream": "Ứng dụng khách này không tương thích với phương tiện và máy chủ không gửi định dạng phương tiện tương thích.", + "PlayNextEpisodeAutomatically": "Tự động phát tập tiếp theo", + "PlayNext": "Lượt tiếp theo", + "PlayFromBeginning": "Phát từ đầu", + "PlayCount": "Số lần phát", + "PlaybackRate": "Tỷ lệ phát lại", + "PlaybackData": "Dữ liệu phát lại", + "PlayAllFromHere": "Phát tất cả từ đây", + "Play": "Phát", + "PlaceFavoriteChannelsAtBeginning": "Đặt các kênh yêu thích ở đầu" } From 52c9032b1d5b0bd5d3d9241667cc7c7ddd957edb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9E=A5=EA=B1=B4?= Date: Mon, 21 Sep 2020 09:03:31 +0000 Subject: [PATCH 116/365] Translated using Weblate (Korean) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ko/ --- src/strings/ko.json | 222 ++++++++++++++++++++++++++++++++------------ 1 file changed, 164 insertions(+), 58 deletions(-) diff --git a/src/strings/ko.json b/src/strings/ko.json index 9cc0f7f6ae..8cfa17f56e 100644 --- a/src/strings/ko.json +++ b/src/strings/ko.json @@ -150,7 +150,7 @@ "HeaderPleaseSignIn": "로그인하십시오", "HeaderPluginInstallation": "플러그인 설치", "HeaderProfileInformation": "프로필 정보", - "HeaderProfileServerSettingsHelp": "이 값은 Jellyfin 서버가 장치에 자신을 어떻게 표시할지를 제어합니다.", + "HeaderProfileServerSettingsHelp": "이 값은 서버가 클라이언트에 자신을 표시하는 방법을 제어합니다.", "HeaderRecentlyPlayed": "최근 재생됨", "HeaderRemoteControl": "원격 제어", "HeaderRemoveMediaFolder": "미디어 폴더 제거", @@ -161,12 +161,12 @@ "HeaderScenes": "장면", "HeaderSeasons": "시즌", "HeaderSelectMetadataPath": "메타데이터 경로 선택", - "HeaderSelectMetadataPathHelp": "메타데이터를 보관할 경로를 탐색 또는 입력하세요. 쓰기 가능한 폴더여야 합니다.", + "HeaderSelectMetadataPathHelp": "메타 데이터에 사용할 경로를 찾아 보거나 입력합니다. 폴더는 쓰기 가능해야합니다.", "HeaderSelectPath": "경로 선택", "HeaderSelectServerCachePath": "서버 캐시 경로 선택", "HeaderSelectServerCachePathHelp": "서버 캐시 파일에 사용할 경로를 탐색 또는 입력하세요. 쓰기 가능한 폴더여야 합니다.", "HeaderSelectTranscodingPath": "트랜스코딩 임시 경로 선택", - "HeaderSelectTranscodingPathHelp": "트랜스코딩 임시 파일에 사용할 경로를 탐색 또는 입력하세요. 쓰기 가능한 폴더여야 합니다.", + "HeaderSelectTranscodingPathHelp": "트랜스 코딩 파일에 사용할 경로를 찾아 보거나 입력합니다. 폴더는 쓰기 가능해야합니다.", "HeaderSendMessage": "메시지 전송", "HeaderServerSettings": "서버 설정", "HeaderSetupLibrary": "미디어 라이브러리 설정", @@ -191,8 +191,8 @@ "HeaderYears": "연도", "Help": "도움말", "Images": "이미지", - "ImportFavoriteChannelsHelp": "활성화 시, 튜너 장치에서 즐겨찾기로 표시된 채널만 불러옵니다.", - "ImportMissingEpisodesHelp": "이 기능을 사용하면 누락 된 에피소드에 대한 정보가 Jellyfin 데이터베이스로 가져와 시즌 및 시리즈 내에서 표시됩니다. 이로 인해 상당히 긴 라이브러리 스캔이 발생할 수 있습니다.", + "ImportFavoriteChannelsHelp": "튜너 장치에서 즐겨찾기로 표시된 채널만 가져옵니다.", + "ImportMissingEpisodesHelp": "누락 된 에피소드에 대한 정보는 데이터베이스로 가져 와서 시즌 및 시리즈 내에 표시됩니다. 이로 인해 라이브러리 스캔이 상당히 길어질 수 있습니다.", "InstallingPackage": "{0} 설치 중 ( {1} 버전)", "InstantMix": "인스턴트 믹스", "ItemCount": "{0} 항목", @@ -211,7 +211,7 @@ "LabelAlbumArtists": "앨범 아티스트:", "LabelAppName": "앱 이름", "LabelArtists": "아티스트:", - "LabelArtistsHelp": "; 를 사용하여 여러 개 분리", + "LabelArtistsHelp": "세미콜론으로 여러 아티스트를 구분합니다.", "LabelAudioLanguagePreference": "선호하는 오디오 언어:", "LabelBirthDate": "생일:", "LabelBirthYear": "출생 년도:", @@ -229,11 +229,11 @@ "LabelCustomCertificatePath": "사용자 지정 SSL 인증서 경로:", "LabelCustomCertificatePathHelp": "커스텀 도메인에서 TLS를 지원할 수 있도록 인증서 및 개인키가 포함 된 PKCS #12 파일의 경로입니다.", "LabelCustomCss": "사용자 지정 CSS:", - "LabelCustomCssHelp": "사용자 정의 스타일링을 웹 인터페이스에 적용합니다.", + "LabelCustomCssHelp": "웹 인터페이스에 사용자 정의 스타일을 적용하십시오.", "LabelCustomRating": "사용자 평점:", "LabelDateAdded": "추가한 날짜:", "LabelDateAddedBehavior": "새 콘텐츠에 대한 날짜 추가 동작:", - "LabelDateAddedBehaviorHelp": "메타데이터에 지정된 값이 있으면 항상 이 옵션들에 우선하여 사용됩니다.", + "LabelDateAddedBehaviorHelp": "메타데이터 값이 있는 경우 항상 먼저 사용됩니다.", "LabelDay": "날짜:", "LabelDeathDate": "사망일:", "LabelDefaultUser": "기본 사용자:", @@ -249,16 +249,16 @@ "LabelEasyPinCode": "간편 PIN 코드:", "LabelEmbedAlbumArtDidl": "DIDL에 앨범 아트 삽입", "LabelEnableAutomaticPortMap": "자동 포트 맵핑 사용", - "LabelEnableDlnaClientDiscoveryInterval": "클라이언트 탐색 간격 (초)", - "LabelEnableDlnaClientDiscoveryIntervalHelp": "Jellyfin이 수행하는 SSDP 검색 간격(초)을 결정합니다.", + "LabelEnableDlnaClientDiscoveryInterval": "클라이언트 탐색 간격", + "LabelEnableDlnaClientDiscoveryIntervalHelp": "SSDP 검색 간격(초)을 결정합니다.", "LabelEnableDlnaDebugLogging": "DNLA 디버그 로그 사용", "LabelEnableDlnaDebugLoggingHelp": "매우 큰 로그 파일을 생성합니다. 문제해결을 위해 필요한 경우에만 사용하여야 합니다.", "LabelEnableDlnaPlayTo": "다음에서 DNLA 재생 사용:", - "LabelEnableDlnaPlayToHelp": "네트워크 내 장치를 감지하고 원격으로 제어할 수 있는 기능을 제공합니다.", + "LabelEnableDlnaPlayToHelp": "네트워크 내에서 장치를 감지하고 원격으로 제어 할 수있는 기능을 제공합니다.", "LabelEnableDlnaServer": "DLNA 서버 활성화", "LabelEnableDlnaServerHelp": "네트워크 내의 UPnP 장치가 콘텐츠를 탐색하고 재생할 수 있게 허용합니다.", "LabelEnableRealtimeMonitor": "실시간 모니터링 사용", - "LabelEnableRealtimeMonitorHelp": "지원하는 파일 시스템에서는 변경 사항이 즉시 실행됩니다.", + "LabelEnableRealtimeMonitorHelp": "파일 변경 사항은 지원되는 파일 시스템에서 즉시 처리됩니다.", "LabelEndDate": "종료일 :", "LabelEvent": "이벤트:", "LabelEveryXMinutes": "마다:", @@ -269,13 +269,13 @@ "LabelForgotPasswordUsernameHelp": "기억하고 있다면, 사용자명을 입력하세요.", "LabelFormat": "포맷:", "LabelFriendlyName": "별칭:", - "LabelServerNameHelp": "이 이름은 서버를 구분하는데 사용합니다. 기본값으로 컴퓨터 이름을 사용합니다.", + "LabelServerNameHelp": "이 이름은 서버를 식별하는 데 사용되며 기본값은 서버의 호스트 이름입니다.", "LabelGroupMoviesIntoCollections": "컬렉션으로 영화 묶기", - "LabelGroupMoviesIntoCollectionsHelp": "영화 목록을 표시할 때 컬렉션에 포함된 영화가 한 개로 묶여진 항목으로 보여줍니다.", + "LabelGroupMoviesIntoCollectionsHelp": "영화 목록을 표시 할 때 컬렉션의 영화는 하나의 항목으로 표시됩니다.", "LabelHardwareAccelerationType": "하드웨어 가속:", "LabelHardwareAccelerationTypeHelp": "하드웨어 가속은 추가 설정이 필요합니다.", "LabelHttpsPort": "로컬 HTTPS 포트 번호:", - "LabelHttpsPortHelp": "Jellyfin의 HTTPS 서버가 바인딩해야하는 TCP포트 번호", + "LabelHttpsPortHelp": "HTTPS 서버의 TCP 포트 번호입니다.", "LabelIconMaxHeight": "아이콘 최대 높이:", "LabelIconMaxWidth": "아이콘 최대 너비:", "LabelIdentificationFieldHelp": "대소문자를 구별하지 않는 부분 문자열 또는 정규 표현식.", @@ -289,7 +289,7 @@ "LabelKodiMetadataSaveImagePaths": "NFO 파일에 이미지 경로 저장", "LabelLanguage": "언어:", "LabelLocalHttpServerPortNumber": "로컬 HTTP 포트 번호:", - "LabelLocalHttpServerPortNumberHelp": "Jellyfin HTTP 서버의 TCP 포트 번호입니다.", + "LabelLocalHttpServerPortNumberHelp": "HTTP 서버의 TCP 포트 번호입니다.", "LabelLockItemToPreventChanges": "변경할 수 없게 항목 잠금", "LabelLoginDisclaimer": "로그인 고지사항:", "LabelLoginDisclaimerHelp": "로그인 페이지 하단에 표시할 메세지", @@ -308,7 +308,7 @@ "LabelMetadataPath": "메타데이터 경로:", "LabelMetadataPathHelp": "다운로드한 아트워크와 메타데이터를 저장할 위치를 지정합니다.", "LabelMetadataSavers": "메타데이터 저장기:", - "LabelMetadataSaversHelp": "메타데이터를 저장할 형식을 선택합니다.", + "LabelMetadataSaversHelp": "메타 데이터를 저장할 때 사용할 파일 형식을 선택하십시오.", "LabelMethod": "방법:", "LabelMinBackdropDownloadWidth": "다운로드할 배경 이미지 최소 넓이:", "LabelMinScreenshotDownloadWidth": "다운로드할 스크린샷의 최소 너비:", @@ -317,9 +317,9 @@ "LabelModelNumber": "모델 번호", "LabelModelUrl": "모델 URL", "LabelMonitorUsers": "다음의 활동 모니터링:", - "LabelMovieRecordingPath": "영화 녹화 경로 (옵션):", + "LabelMovieRecordingPath": "동영상 녹화 경로 :", "LabelMusicStreamingTranscodingBitrate": "음악 트랜스코딩 비트레이트:", - "LabelMusicStreamingTranscodingBitrateHelp": "음악 스트리밍 시 최대 비트 전송률을 지정합니다.", + "LabelMusicStreamingTranscodingBitrateHelp": "음악을 스트리밍 할 때 최대 비트 전송률을 지정합니다.", "LabelName": "이름:", "LabelNewName": "새 이름:", "LabelNewPassword": "새 비밀번호:", @@ -355,14 +355,14 @@ "LabelRecordingPathHelp": "녹화를 저장할 기본 위치를 지정합니다. 비어 있는 경우 서버의 프로그램 데이터 폴더가 사용됩니다.", "LabelReleaseDate": "개봉일:", "LabelRemoteClientBitrateLimit": "인터넷 스트리밍 비트레이트 제한 (Mbps):", - "LabelRuntimeMinutes": "상영 시간 (분):", + "LabelRuntimeMinutes": "재생 시간:", "LabelSaveLocalMetadata": "아트워크와 메타데이터를 미디어 폴더에 저장", "LabelSaveLocalMetadataHelp": "아트워크 및 메타데이터를 미디어 폴더에 직접 저장하면 쉽게 편집 할 수 있습니다.", "LabelSelectUsers": "사용자 선택:", "LabelSelectVersionToInstall": "설치할 버전 선택:", "LabelSendNotificationToUsers": "다음으로 알림 전송:", "LabelSerialNumber": "시리얼 번호", - "LabelSeriesRecordingPath": "시리즈 녹화 경로 (옵션) :", + "LabelSeriesRecordingPath": "시리즈 기록 경로 :", "LabelServerHost": "호스트:", "LabelServerHostHelp": "192.168.1.100:8096 또는 https://myserver.com", "LabelSkipIfAudioTrackPresent": "오디오 트랙이 다운로드 언어와 일치하면 건너뛰기", @@ -418,7 +418,7 @@ "MessageConfirmProfileDeletion": "이 프로필을 삭제하겠습니까?", "MessageConfirmRecordingCancellation": "이 녹화를 취소하겠습니까?", "MessageConfirmRemoveMediaLocation": "이 미디어 위치를 제거하겠습니까?", - "MessageConfirmRestart": "Jellyfin 서버를 다시 시작하겠습니까?", + "MessageConfirmRestart": "Jellyfin을 다시 시작 하시겠습니까?", "MessageConfirmShutdown": "정말로 서버를 종료하겠습니까?", "MessageContactAdminToResetPassword": "비밀번호를 재설정하려면 시스템 관리자에게 문의하십시오.", "MessageDeleteTaskTrigger": "이 작업 트리거를 삭제하겠습니까?", @@ -432,7 +432,7 @@ "MessageItemsAdded": "항목 추가됨", "MessageNoMovieSuggestionsAvailable": "현재 추천 영화를 사용할 수 없습니다. 영화 보기를 시작하고 평가를 하면 추천을 볼 수 있습니다.", "MessageNoPluginsInstalled": "설치된 플러그인이 없습니다.", - "MessageNoTrailersFound": "예고편이 없습니다. 예고편 채널을 설치하여 인터넷 예고편 라이브러리를 추가하면 향상된 영화 환경을 경험할 수 있습니다.", + "MessageNoTrailersFound": "인터넷 예고편 라이브러리를 추가하여 영화 경험을 향상 시키려면 예고편 채널을 설치하세요.", "MessageNothingHere": "아무것도 없습니다.", "MessagePasswordResetForUsers": "다음 사용자는 비밀번호를 재설정했습니다. 재설정을 수행하는데 사용된 핀 코드로 로그인 할 수 있습니다.", "MessagePleaseEnsureInternetMetadata": "인터넷 메타데이터 다운로드가 켜져 있는지 확인하세요.", @@ -470,7 +470,7 @@ "OptionDateAddedImportTime": "라이브러리에 추가된 날짜 사용", "OptionDatePlayed": "재생한 날짜", "OptionDisableUser": "이 사용자 사용 안 함", - "OptionDisableUserHelp": "서버가 이 사용자의 연결을 허용하지 않습니다. 현재 연결이 예고없이 종료됩니다.", + "OptionDisableUserHelp": "서버는 이 사용자의 연결을 허용하지 않습니다. 기존 연결이 갑자기 종료됩니다.", "OptionDislikes": "싫어함", "OptionDisplayFolderViewHelp": "미디어 라이브러리 옆에 폴더를 표시합니다. 이는 일반적인 폴더 보기를 원하는 경우에 유용합니다.", "OptionDvd": "DVD", @@ -487,7 +487,7 @@ "OptionHideUserFromLoginHelp": "비공개 또는 숨겨진 관리자 계정에 유용합니다. 사용자는 수동으로 사용자 이름과 비밀번호를 입력하여 로그인해야 합니다.", "OptionHlsSegmentedSubtitles": "HLS 분할된 자막", "OptionIgnoreTranscodeByteRangeRequests": "트랜스코드 바이트 범위 요청 무시", - "OptionIgnoreTranscodeByteRangeRequestsHelp": "활성화된 경우 이러한 요청은 존중되지만 바이트 헤더 범위는 무시됩니다.", + "OptionIgnoreTranscodeByteRangeRequestsHelp": "이러한 요청은 수락되지만 바이트 범위 헤더는 무시됩니다.", "OptionImdbRating": "IMDb 평점", "OptionLikes": "좋아함", "OptionMax": "최대", @@ -495,9 +495,9 @@ "OptionOnInterval": "기간", "OptionParentalRating": "등급", "OptionPlainStorageFolders": "모든 폴더를 일반 저장소 폴더로 표시", - "OptionPlainStorageFoldersHelp": "활성화 된 경우 모든 폴더는 \"object.container.person.musicArtist\"와 같이보다 구체적인 유형 대신 \"object.container.storageFolder\"로 DIDL에 표시됩니다.", + "OptionPlainStorageFoldersHelp": "모든 폴더는 DIDL에서 \"object.container.person.musicArtist\"와 같은보다 구체적인 유형 대신 \"object.container.storageFolder\"로 표시됩니다.", "OptionPlainVideoItems": "모든 비디오를 일반 비디오 항목으로 표시", - "OptionPlainVideoItemsHelp": "활성화 된 경우 모든 비디오는 \"object.item.videoItem.movie\"와 같이보다 구체적인 유형 대신 \"object.item.videoItem\"로 DIDL에 표시됩니다.", + "OptionPlainVideoItemsHelp": "모든 비디오는 DIDL에서 \"object.item.videoItem.movie\"와 같은보다 구체적인 유형 대신 \"object.item.videoItem\"으로 표시됩니다.", "OptionPlayCount": "재생 횟수", "OptionPremiereDate": "Premiere 일자", "OptionProtocolHls": "HTTP 실시간 스트리밍", @@ -507,16 +507,16 @@ "OptionSaveMetadataAsHidden": "메타데이터와 이미지를 숨김 파일로 저장", "OptionSpecialEpisode": "스페셜", "OptionTrackName": "트랙 이름", - "OptionTvdbRating": "TVDb 평점", + "OptionTvdbRating": "TVDB 평가", "OptionUnairedEpisode": "방송하지 않은 에피소드", "OptionWakeFromSleep": "슬립모드에서 깨우기", "OptionWeekdays": "주중", "OptionWeekends": "주말", "OptionWeekly": "주", "OriginalAirDateValue": "최초 방송일: {0}", - "PackageInstallCancelled": "{0} 설치 취소됨", - "PackageInstallCompleted": "{0} 설치 완료", - "PackageInstallFailed": "{0} 설치 실패", + "PackageInstallCancelled": "{0} (버전 {1}) 설치 취소.", + "PackageInstallCompleted": "{0} (버전 {1}) 설치 완료.", + "PackageInstallFailed": "{0} (버전 {1}) 설치 실패.", "ParentalRating": "등급", "PasswordMatchError": "비밀번호와 비밀번호 확인이 일치해야 합니다.", "PasswordResetComplete": "비밀번호가 재설정되었습니다.", @@ -703,7 +703,7 @@ "Disconnect": "연결 끊기", "DirectPlaying": "다이렉트 재생", "DirectStreaming": "다이렉트 스트리밍", - "DirectStreamHelp2": "다이렉트 스트리밍은 비디오 퀄리티의 손실없이 매우 적은 처리능력을 사용합니다.", + "DirectStreamHelp2": "다이렉트 스트림은 비디오 품질 손실을 최소화하면서 처리 능력을 거의 사용하지 않습니다.", "DetectingDevices": "장치 감지", "Desktop": "데스크탑", "Default": "기본", @@ -775,8 +775,8 @@ "Programs": "프로그램", "Previous": "이전", "PreferEmbeddedTitlesOverFileNames": "파일 이름보다 내장된 제목 선호", - "MessagePluginInstalled": "플러그인이 성공적으로 설치되었습니다. 변경사항을 적용하려면 Jellyfin 서버를 재시작하십시오.", - "PleaseRestartServerName": "Jellyfin 서버를 재시작하십시오 - {0}.", + "MessagePluginInstalled": "플러그인이 성공적으로 설치되었습니다. 변경 사항을 적용하려면 서버를 다시 시작해야합니다.", + "PleaseRestartServerName": "Jellyfin을 다시 시작하십시오. {0}.", "PleaseEnterNameOrId": "이름 또는 외부 ID를 입력하십시오.", "PlayNextEpisodeAutomatically": "자동으로 다음 에피소드 재생", "PlayNext": "다음 재생", @@ -785,7 +785,7 @@ "Overview": "개요", "OptionSubstring": "Substring", "OptionProtocolHttp": "HTTP", - "OptionNew": "새로운..", + "OptionNew": "새로운…", "OptionIsSD": "SD", "OptionIsHD": "HD", "OptionEnableForAllTuners": "모든 튜너 장치 활성화", @@ -865,7 +865,7 @@ "LabelOriginalTitle": "원본 제목:", "LabelPersonRole": "규칙:", "LabelMovieCategories": "영화 카테고리:", - "LabelOptionalNetworkPath": "(옵션) 공유 네트워크 폴더:", + "LabelOptionalNetworkPath": "공유 네트워크 폴더:", "LabelNewsCategories": "뉴스 카테고리:", "LabelMaxStreamingBitrate": "최대 스트리밍 퀄리티:", "LabelLanNetworks": "LAN 네트워크:", @@ -907,7 +907,7 @@ "MessageNoServersAvailable": "자동 서버 탐색을 사용했지만, 서버가 발견되지 않았습니다.", "MessageDownloadQueued": "다운로드 대기 중.", "MessageDirectoryPickerLinuxInstruction": "Linux on Arch Linux, CentOS, Debian, Fedora, OpenSUSE, Ubuntu의 경우 서비스 사용자에게 최소한 저장 위치에 대한 읽기 권한을 부여해야 합니다.", - "MessageDirectoryPickerBSDInstruction": "BSD의 경우, Jellyfin이 FreeNAS Jail에 액세스할 수 있도록 하려면 FreeNAS Jail 내에 스토리지를 구성해야 할 수도 있습니다.", + "MessageDirectoryPickerBSDInstruction": "BSD의 경우 Jellyfin이 미디어에 액세스 할 수 있도록 FreeNAS Jail 내에 스토리지를 구성해야 할 수 있습니다.", "LatestFromLibrary": "최근 {0}", "LabelYear": "년도:", "LabelVaapiDeviceHelp": "하드웨어 가속에 쓰이는 렌더 노드입니다.", @@ -934,7 +934,7 @@ "HeaderLibraryOrder": "라이브러리 순서", "HeaderDefaultRecordingSettings": "기본 녹화 설정", "HeaderBlockItemsWithNoRating": "등급 정보가 없거나 인식 불가능한 항목 차단:", - "HeaderApiKeysHelp": "외부 애플리케이션은 Jellyfin 서버와 통신하기 위해 API키를 가지고 있어야 합니다. 키는 Jellyfin 계정으로 로그인하거나 수동으로 키를 부여하여 발급할 수 있습니다.", + "HeaderApiKeysHelp": "서버와 통신하려면 외부 애플리케이션에 API 키가 있어야합니다. 키는 일반 사용자 계정으로 로그인하거나 애플리케이션에 수동으로 키를 부여하여 발급됩니다.", "HeaderAllowMediaDeletionFrom": "미디어 제거 허용", "HardwareAccelerationWarning": "하드웨어 가속을 활성화하면 일부 환경에서 불안정해질 수 있습니다. 운영체제 및 비디오 드라이버가 최신 상태인지 확인하십시오. 이 기능을 활성화한 후 비디오를 재생하는 데 어려움이 있을 경우 설정을 다시 '사용 안 함'으로 변경하십시오.", "GuestStar": "게스트 출연", @@ -946,7 +946,7 @@ "ExtraLarge": "매우 큼", "ErrorStartHourGreaterThanEnd": "종료 시간은 시작 시간보다 커야 합니다.", "Display": "디스플레이", - "DirectStreamHelp1": "이 미디어는 해상도 및 미디어 유형(H.264, AC3 등)과 관련하여 장치와 호환되지만, 파일 컨테이너(mkv, avi, wmv 등)와는 호환되지 않습니다. 비디오는 장치로 스트리밍 되기 전에 즉각 재포장됩니다.", + "DirectStreamHelp1": "미디어가 해상도 및 미디어 유형 (H.264, AC3 등)과 관련하여 장치와 호환되지만 호환되지 않는 파일 컨테이너 (mkv, avi, wmv 등)에 있습니다. 비디오는 장치로 전송되기 전에 즉석에서 다시 패키징됩니다.", "Descending": "내림차순", "Continuing": "계속", "ConfirmEndPlayerSession": "정말로 {0}의 Jellyfin을 종료하시겠습니까?", @@ -961,7 +961,7 @@ "RecentlyWatched": "최근 시청함", "PleaseAddAtLeastOneFolder": "추가 버튼을 클릭하여 하나 이상의 폴더를 라이브러리에 추가하십시오.", "PlaybackData": "재생 데이터", - "PasswordResetProviderHelp": "비밀번호 재설정 제공자를 선택하십시오. 비밀번호 재설정이 요청될때 사용됩니다.", + "PasswordResetProviderHelp": "이 사용자가 암호 재설정을 요청할 때 사용할 암호 재설정 공급자를 선택합니다.", "NoSubtitleSearchResultsFound": "결과가 없습니다.", "NoNewDevicesFound": "새로운 장치를 찾지 못했습니다. 새 튜너를 추가하려면 이 대화상자를 닫고 장치 정보를 직접 입력하십시오.", "MessageNoAvailablePlugins": "가능한 플러그인 없음", @@ -996,7 +996,7 @@ "HeaderPreferredMetadataLanguage": "선호하는 메타데이터 언어", "HeaderLiveTvTunerSetup": "실시간 TV 튜너 설정", "HeaderLatestMovies": "최근 영화", - "HeaderKodiMetadataHelp": "NFO 메타데이터를 활성화/비활성화하려면, Jellyfin 라이브러리 설정에서 라이브러리를 편집하고 메타데이터 보호기 섹션을 찾으십시오.", + "HeaderKodiMetadataHelp": "NFO 메타 데이터를 활성화 또는 비활성화하려면 라이브러리와 메타데이터 보호 섹션을 편집하세요.", "HeaderKeepRecording": "녹화 유지", "HeaderForKids": "아이들용", "HeaderDetectMyDevices": "내 장치 탐색", @@ -1040,7 +1040,7 @@ "DisplayMissingEpisodesWithinSeasons": "시즌 내 누락된 에피소드 표시", "EnableBackdropsHelp": "라이브러리를 탐색하는 동안 일부 페이지의 배경을 표시합니다.", "ErrorAddingXmlTvFile": "XMLTV 파일에 액세스하는 동안 오류가 발생했습니다. 파일이 존재하는지 확인 후 다시 시도하십시오.", - "ErrorDeletingItem": "Jellyfin 서버에서 항목을 제거하는 중에 오류가 발생했습니다. Jellyfin 서버가 미디어 폴더에 대해 쓰기 권한이 있는지 확인한 후 다시 시도하십시오.", + "ErrorDeletingItem": "서버에서 항목을 삭제하는 중에 오류가 발생했습니다. Jellyfin에 미디어 폴더에 대한 쓰기 권한이 있는지 확인하고 다시 시도하십시오.", "HeaderConfigureRemoteAccess": "원격 접근 구성", "HeaderCastAndCrew": "배역 및 제작진", "HeaderNextEpisodePlayingInValue": "{0}뒤에 다음 에피소드 재생", @@ -1061,7 +1061,7 @@ "DisplayInMyMedia": "홈화면에 표시", "DisplayInOtherHomeScreenSections": "보고 있는 것이나 최신 미디어 등을 홈 페이지에 표시합니다", "DisplayMissingEpisodesWithinSeasonsHelp": "서버 환경설정에서도 TV 라이브러리가 활성화되어있어야 합니다.", - "ErrorAddingMediaPathToVirtualFolder": "미디어 경로를 추가하는 데에 오류가 발생했습니다. 경로를 다시 확인하거나 Jellyfin 서버가 해당 경로에 접근할 수 있는지 확인해 주세요.", + "ErrorAddingMediaPathToVirtualFolder": "미디어 경로를 추가하는 중에 오류가 발생했습니다. 경로가 유효하고 Jellyfin이 해당 위치에 액세스 할 수 있는지 확인하세요.", "ErrorGettingTvLineups": "TV 구성을 다운로드 하는 중에 오류가 발생하였습니다. 정보가 맞는지 확인한 후 다시 시도해 주세요.", "BoxRear": "상자 (후면)", "Absolute": "절대", @@ -1080,7 +1080,7 @@ "ColorTransfer": "컬러 변환", "AskAdminToCreateLibrary": "라이브러리를 생성하려면 관리자에게 문의하십시오.", "LabelCorruptedFrames": "손상된 프레임:", - "LabelBindToLocalNetworkAddressHelp": "(선택) 로컬 IP 주소 대신 이 주소로 http 서버를 바인딩합니다. 비어있으면 서버가 가능한 모든 주소로 바인딩합니다. 이 항목을 수정하면 Jellyfin 서버를 재시작해야 합니다.", + "LabelBindToLocalNetworkAddressHelp": "HTTP 서버의 로컬 IP 주소를 대체하십시오. 비어있는 경우 서버는 사용 가능한 모든 주소에 바인딩됩니다. 이 값을 변경하려면 다시 시작해야합니다.", "LabelAirsBeforeSeason": "시즌 이전 방송:", "LabelAirsBeforeEpisode": "에피소드 이전 방송:", "LabelAirsAfterSeason": "시즌 이후 방송:", @@ -1101,7 +1101,7 @@ "MessageLeaveEmptyToInherit": "상위 항목의 설정이나 전역 설정값을 그대로 적용하기 위해서는 공백으로 두십시오.", "MessageImageTypeNotSelected": "드롭다운 메뉴에서 이미지 유형을 선택하십시오.", "MessageCreateAccountAt": "{0}에서 계정 만들기", - "MessageConfirmRevokeApiKey": "정말 api 키를 무효화하시겠습니까? Jellyfin 서버와의 연결이 예고 없이 중단될 수 있습니다.", + "MessageConfirmRevokeApiKey": "이 API 키를 취소 하시겠습니까? 이 서버에 대한 응용 프로그램의 연결이 갑자기 종료됩니다.", "MessageConfirmAppExit": "종료하시겠습니까?", "MediaIsBeingConverted": "미디어가 재생 중인 디바이스와 호환되는 형식으로 변환되는 중입니다.", "MediaInfoRefFrames": "참조 프레임", @@ -1109,7 +1109,7 @@ "MapChannels": "채널 매핑", "Large": "크게", "LanNetworksHelp": "대역폭을 강제로 제한할 때 로컬 네트워크로 간주되는 쉼표로 구분된 IP 주소 및 IP/서브넷 마스크 목록입니다. 지정될 경우 모든 다른 IP 주소는 외부 네트워크로 간주되며 외부 대역폭 제한이 적용됩니다. 공백일 경우 서버의 서브넷만이 로컬 네트워크로 간주됩니다.", - "LabelffmpegPathHelp": "ffmpeg 실행 파일 혹은 ffmpeg를 포함하는 폴더 경로입니다.", + "LabelffmpegPathHelp": "ffmpeg를 포함하는 ffmpeg 응용 프로그램 파일 또는 폴더의 경로입니다.", "LabelXDlnaDocHelp": "urn:schemas-dlna-org:device-1-0 네임스페이스에 포함된 X_DLNADOC 요소의 내용을 결정합니다.", "LabelXDlnaDoc": "X-DLNA doc:", "LabelXDlnaCapHelp": "urn:schemas-dlna-org:device-1-0 네임스페이스에 포함된 X_DLNACAP 요소의 내용을 결정합니다.", @@ -1130,7 +1130,7 @@ "LabelReasonForTranscoding": "트랜스코딩 원인:", "LabelProtocolInfoHelp": "디바이스에서 GetProtocolInfo 요청을 처리할 때 사용될 값입니다.", "LabelPostProcessorArguments": "후처리 명령어:", - "LabelOptionalNetworkPathHelp": "이 폴더가 네트워크 공유 폴더라면 네트워크 공유 경로를 제공하여 Jellyfin 클라이언트가 미디어 파일에 직접 접속하도록 설정할 수 있습니다.", + "LabelOptionalNetworkPathHelp": "이 폴더가 네트워크에서 공유되는 경우 네트워크 공유 경로를 제공하면 다른 장치의 클라이언트가 미디어 파일에 직접 액세스 할 수 있습니다. 예 : {0} 또는 {1}.", "LabelMoviePrefixHelp": "영화 제목에 접두사가 적용되었다면 서버가 제대로 처리할 수 있도록 여기에 입력하십시오.", "LabelMoviePrefix": "영화 접두사:", "LabelMinResumePercentageHelp": "이 비율을 넘기 전에 정지되면 재생되지 않은 것으로 간주됩니다.", @@ -1149,11 +1149,11 @@ "LabelKodiMetadataEnableExtraThumbs": "추가 팬아틀 추가 섬네일 필드로 복사하기", "LabelKeepUpTo": "대기 한계:", "LabelHomeScreenSectionValue": "홈 화면 영역 {0}:", - "LabelBaseUrlHelp": "서버에 더 세부적인 URL로 접속하려면 여기에 서브 디렉토리를 추가하십시오.", + "LabelBaseUrlHelp": "서버 URL에 사용자 지정 하위 디렉터리를 추가합니다. http://example.com/<baseurl>", "LabelEnableSingleImageInDidlLimitHelp": "Dili 내에 여러 이미지가 삽입되면 일부 디바이스가 제대로 작동하지 않을 수 있습니다.", "LabelEnableSingleImageInDidlLimit": "하나의 내장 이미지로 제한", "LabelEnableBlastAliveMessagesHelp": "네트워크 상의 다른 UPnP 장치가 안정적으로 발견되지 않는다면 이 옵션을 활성화하십시오.", - "LabelEnableAutomaticPortMapHelp": "UPnp를 통해 로컬 포트를 외부 포트에 자동으로 매핑하도록 시도합니다. 일부 공유기 기종에서는 지원하지 않을 수 있습니다. 변경사항을 적용하려면 서버를 다시 시작하십시오.", + "LabelEnableAutomaticPortMapHelp": "UPnP를 통해 라우터의 공용 포트를 서버의 로컬 포트로 자동 전달합니다. 일부 라우터 모델 또는 네트워크 구성에서는 작동하지 않을 수 있습니다. 변경 사항은 서버를 다시 시작할 때까지 적용되지 않습니다.", "LabelEmbedAlbumArtDidlHelp": "일부 디바이스는 앨범아트를 얻을 때 이 방법을 선호합니다. 다른 디바이스에서는 실패할 수 있습니다.", "LabelDefaultScreen": "기본 화면:", "LabelDateTimeLocale": "날짜/시간 로케일:", @@ -1162,8 +1162,8 @@ "MessageReenableUser": "재활성화는 아래를 참조하십시오", "MessagePluginConfigurationRequiresLocalAccess": "이 플러그인을 구성하려면 로컬 서버에 직접 로그인하십시오.", "MessageNoCollectionsAvailable": "컬렉션을 사용하면 영화, 시리즈 및 앨범의 개인화 된 그룹을 즐길 수 있습니다. + 버튼을 클릭하여 컬렉션 만들기를 시작합니다.", - "LabelPlayerDimensions": "플레이어 화면 크기:", - "LabelParentNumber": "부모 번호:", + "LabelPlayerDimensions": "플레이어 넓이:", + "LabelParentNumber": "Parent number:", "LabelLineup": "라인업:", "LabelDroppedFrames": "드롭 프레임:", "LabelDeinterlaceMethod": "디인터레이싱 방법:", @@ -1172,7 +1172,7 @@ "EnableColorCodedBackgrounds": "컬러코드가 삽입된 배경", "DropShadow": "하단 그림자", "Depressed": "압축된", - "DeinterlaceMethodHelp": "비월주사식 콘텐츠를 순차주사로 변환할시 사용할 비월제거 방법을 선택하십시오.", + "DeinterlaceMethodHelp": "소프트웨어가 인터레이스 콘텐츠를 트랜스 코딩 할 때 사용할 디인터레이싱 방법을 선택합니다. 하드웨어 디인터레이싱을 지원하는 하드웨어 가속이 활성화되면이 설정 대신 하드웨어 디인터레이스가 사용됩니다.", "ClientSettings": "클라이언트 설정", "BoxSet": "박스 세트", "Artist": "아티스트", @@ -1185,21 +1185,21 @@ "MoveRight": "오른쪽으로 이동", "MoveLeft": "왼쪽으로 이동", "MoreFromValue": "{0} 에서 더 자세히", - "MetadataSettingChangeHelp": "변경된 메타데이터 설정은 새 콘텐츠에 적용됩니다. 기존의 콘텐츠에 적용하려면 상세 화면에서 새로 고침 버튼을 누르거나 메타데이터 매니저를 통해 일괄적으로 새로 고침을 수행하십시오.", - "MessagePluginInstallDisclaimer": "Jellyfin 커뮤니티에서 만들어진 플러그인은 Jellyfin의 기능과 편의성을 향상시킬 수 있습니다. 다만 이러한 플러그인은 라이브러리 스캔 속도 저하, 추가 백그라운드 프로세싱, 시스템 불안정과 같은 문제를 야기할 수 있다는 것을 유념하시기 바랍니다.", + "MetadataSettingChangeHelp": "메타 데이터 설정을 변경하면 앞으로 추가되는 새 콘텐츠에 영향을줍니다. 기존 콘텐츠를 새로 고치려면 세부 정보 화면을 열고 새로 고침 버튼을 클릭하거나 메타 데이터 매니저를 사용하여 대량 새로 고침을 수행합니다.", + "MessagePluginInstallDisclaimer": "커뮤니티 회원이 만든 플러그인은 추가 기능과 혜택을 통해 경험을 향상시킬 수있는 좋은 방법입니다. 설치하기 전에 더 긴 라이브러리 스캔, 추가 백그라운드 처리 및 시스템 안정성 감소와 같이 서버에 미칠 수있는 영향에 유의하십시오.", "LabelLibraryPageSizeHelp": "라이브러리 페이지에 표시될 항목 수를 조절합니다. 0으로 지정 시 페이징을 비활성화합니다.", "LabelLibraryPageSize": "라이브러리 페이지 크기:", "LabelEnableBlastAliveMessages": "서버 활성화 메세지", "OptionEnableExternalContentInSuggestionsHelp": "제안 항목에 인터넷 예고편과 라이브 TV 프로그램이 포함되도록 허용합니다.", "OptionEnableExternalContentInSuggestions": "제안 항목에 외부 콘텐츠 허용", - "OptionDownloadImagesInAdvanceHelp": "기본적으로 대부분의 이미지는 Jellyfin 앱에서 요청할 때에만 다운로드됩니다. 새 미디어를 추가할 때 모든 이미지를 미리 다운로드하려면 이 옵션을 활성화하십시오. 라이브러리 스캔이 심각하게 지연될 수도 있습니다.", + "OptionDownloadImagesInAdvanceHelp": "기본적으로 대부분의 이미지는 클라이언트가 요청할 때만 다운로드됩니다. 새 미디어를 가져올 때 모든 이미지를 미리 다운로드하려면이 옵션을 활성화합니다. 이로 인해 라이브러리 스캔이 상당히 길어질 수 있습니다.", "OptionDownloadImagesInAdvance": "미리 이미지 다운로드", "OptionDisplayFolderView": "일반적인 미디어 폴더를 볼 수 있는 폴더 보기를 표시합니다", - "OptionAutomaticallyGroupSeriesHelp": "활성화하면 라이브러리 내의 여러 폴더에 분산된 시리즈를 하나의 시리즈로 병합합니다.", + "OptionAutomaticallyGroupSeriesHelp": "이 라이브러리 내의 여러 폴더에 분산 된 시리즈는 자동으로 단일 시리즈로 병합됩니다.", "OptionAutomaticallyGroupSeries": "여러 폴더에 분산된 시리즈를 자동으로 병합합니다", "OptionAllowVideoPlaybackRemuxing": "변환이 필요한 비디오를 재인코딩하지 않고 재생하는 것을 허용", "OptionAllowSyncTranscoding": "트랜스코딩이 필요한 미디어의 다운로드 및 싱크 허용", - "OptionAllowMediaPlaybackTranscodingHelp": "트랜스코딩 접근을 제한하면 Jellyfin 앱에서 지원되지 않는 미디어 형식을 재생할 때 문제가 발생할 수 있습니다.", + "OptionAllowMediaPlaybackTranscodingHelp": "트랜스 코딩에 대한 액세스를 제한하면 지원되지 않는 미디어 형식으로 인해 클라이언트에서 재생 실패가 발생할 수 있습니다.", "OptionForceRemoteSourceTranscoding": "원격 미디어 소스를 강제 트랜스코딩 (라이브 TV 등)", "OnlyForcedSubtitlesHelp": "'강제'로 표시된 자막만 불러옵니다.", "OnlyForcedSubtitles": "강제로 설정한 자막만", @@ -1213,5 +1213,111 @@ "ButtonSyncPlay": "SyncPlay", "HeaderDVR": "DVR", "EnableDecodingColorDepth10Vp9": "10비트 VP9하드웨어 디코딩 사용합니다", - "EnableDecodingColorDepth10Hevc": "10비트 HEVC하드웨어 디코딩 사용합니다" + "EnableDecodingColorDepth10Hevc": "10비트 HEVC하드웨어 디코딩 사용합니다", + "QuickConnectNotAvailable": "퀵커넥트를 활성화하려면 서버 관리자에게 문의하십시오", + "QuickConnectInvalidCode": "잘못된 퀵커넥트 코드", + "QuickConnectDescription": "퀵커넥트로 로그인하려면 로그인중인 장치에서 퀵커넥트 버튼을 선택하고 아래 표시된 코드를 입력하십시오.", + "QuickConnectDeactivated": "로그인 요청이 승인되기 전에 Quick connect가 비활성화되었습니다", + "QuickConnectAuthorizeFail": "알수없는 퀵커넥트 코드", + "QuickConnectAuthorizeSuccess": "승인 요청", + "QuickConnectAuthorizeCode": "Enter code {0} to login", + "QuickConnectActivationSuccessful": "성공적으로 활성화되었습니다", + "QuickConnect": "퀵커넥트", + "Profile": "프로파일", + "ProductionLocations": "Production 위치", + "Primary": "기본", + "PreviousTrack": "이전으로 건너 뛰기", + "PreferEmbeddedEpisodeInfosOverFileNames": "파일 이름보다 삽입 된 에피소드 정보 선호", + "PreferEmbeddedEpisodeInfosOverFileNamesHelp": "가능한 경우 삽입 된 메타 데이터의 에피소드 정보를 사용합니다.", + "PreferEmbeddedTitlesOverFileNamesHelp": "인터넷 메타 데이터 또는 로컬 메타 데이터를 사용할 수없는 경우 기본 표시 제목을 결정합니다.", + "MessageGetInstalledPluginsError": "현재 설치된 플러그인 목록을 가져 오는 중에 오류가 발생했습니다.", + "MessagePluginInstallError": "플러그인을 설치하는 동안 오류가 발생했습니다.", + "PosterCard": "포스터 카드", + "Poster": "포스터", + "PleaseConfirmPluginInstallation": "위 내용을 읽었으며 플러그인 설치를 계속하려면 확인을 클릭하십시오.", + "PlaybackErrorNoCompatibleStream": "이 클라이언트는 미디어와 호환되지 않으며 서버는 호환되는 미디어 형식을 전송하지 않습니다.", + "PlaybackRate": "재생율", + "PlaceFavoriteChannelsAtBeginning": "처음에 즐겨찾는 채널 배치", + "Photo": "사진", + "Person": "사람", + "People": "인물", + "OptionSaveMetadataAsHiddenHelp": "이를 변경하면 앞으로 저장되는 새 메타 데이터에 적용됩니다. 기존 메타 데이터 파일은 다음에 서버에서 저장 될 때 업데이트됩니다.", + "OptionRequirePerfectSubtitleMatchHelp": "완벽한 일치를 요구하면 정확한 비디오 파일로 테스트 및 확인 된 자막 만 포함하도록 자막이 필터링됩니다. 선택을 취소하면 자막이 다운로드 될 가능성이 높아지지만 시간이 잘못되었거나 잘못된 자막 텍스트가 발생할 가능성이 높아집니다.", + "OptionRequirePerfectSubtitleMatch": "비디오 파일과 완벽하게 일치하는 자막만 다운로드", + "OptionReportByteRangeSeekingWhenTranscodingHelp": "This is required for some devices that don't time seek very well.", + "OptionReportByteRangeSeekingWhenTranscoding": "트랜스 코딩시 서버가 byte seeking을 지원한다고 보고", + "OptionRegex": "Regex", + "OptionRandom": "랜덤", + "OptionLoginAttemptsBeforeLockoutHelp": "0 값은 기본값을 상속 함을 의미합니다. 일반 사용자는 세 번, 관리자는 다섯 번 시도합니다. -1로 설정하면 기능이 비활성화됩니다.", + "OptionLoginAttemptsBeforeLockout": "잠금이 발생하기 전에 발생할 수있는 잘못된 로그인 시도 횟수를 결정합니다.", + "OptionEstimateContentLength": "트랜스 코딩시 콘텐츠 길이 추정", + "OptionEquals": "옵션이 똑같음", + "OptionEnableM2tsModeHelp": "mpegts로 인코딩 할 때 m2ts 모드를 활성화합니다.", + "NextTrack": "다음으로 넘기기", + "MusicVideos": "뮤직 비디오", + "MessageSyncPlayErrorMedia": "SyncPlay를 활성화하지 못했습니다! 미디어 오류입니다.", + "MessageSyncPlayErrorMissingSession": "SyncPlay를 활성화하지 못했습니다! 세션이 없습니다.", + "MessageSyncPlayErrorNoActivePlayer": "활성화된 플레이어가 없습니다. SyncPlay가 비활성화되었습니다.", + "MessageSyncPlayErrorAccessingGroups": "그룹 목록에 액세스하는 중에 오류가 발생했습니다.", + "MessageSyncPlayLibraryAccessDenied": "이 콘텐츠에 대한 액세스가 제한됩니다.", + "MessageSyncPlayJoinGroupDenied": "그룹을 생성 할 권한이 필요합니다.", + "MessageSyncPlayCreateGroupDenied": "그룹을 생성하려면 권한이 필요합니다.", + "MessageSyncPlayGroupDoesNotExist": "그룹이 존재하지 않기 때문에 추가하지 못했습니다.", + "MessageSyncPlayPlaybackPermissionRequired": "재생 권한이 필요합니다.", + "MessageSyncPlayNoGroupsAvailable": "사용 가능한 그룹이 없습니다. 먼저 플레이 하십시오.", + "MessageSyncPlayGroupWait": "{0}이 버퍼링 중…", + "MessageSyncPlayUserLeft": "{0} 을(를) 그룹에서 탈퇴.", + "MessageSyncPlayUserJoined": "{0} 을(를) 그룹에 추가.", + "MessageSyncPlayDisabled": "SyncPlay가 비활성화되었습니다.", + "MessageSyncPlayEnabled": "SyncPlay가 활성화되었습니다.", + "MessageNoGenresAvailable": "일부 메타 데이터 제공 업체가 인터넷에서 장르를 가져올 수 있도록합니다.", + "MessageAddRepository": "저장소를 추가하려면 헤더 옆에있는 버튼을 클릭하고 요청 된 정보를 입력합니다.", + "LabelRepositoryNameHelp": "다른 저장소와 구별하기위한 사용자 정의 이름입니다.", + "LabelRepositoryName": "저장소 이름", + "LabelRepositoryUrlHelp": "The location of the repository manifest you want to include.", + "LabelRepositoryUrl": "저장소 URL", + "HeaderNewRepository": "새 저장소", + "MessageNoRepositories": "저장소가 없습니다.", + "LabelSyncPlayAccess": "SyncPlay 접속", + "LabelSyncPlayAccessNone": "이 사용자는 비활성화", + "LabelSyncPlayAccessJoinGroups": "사용자가 그룹에 추가하는걸 허용", + "LabelSyncPlayAccessCreateAndJoinGroups": "사용자가 그룹을 만들고 추가 하는걸 허용", + "LabelSyncPlayLeaveGroupDescription": "SyncPlay 비활성화", + "LabelSyncPlayLeaveGroup": "그룹 탈퇴", + "LabelSyncPlayNewGroupDescription": "새 그룹 만들기", + "LabelSyncPlayNewGroup": "새 그룹", + "LabelSyncPlaySyncMethod": "동기화 방법 :", + "LabelSyncPlayPlaybackDiff": "재생 시차 :", + "MillisecondsUnit": "밀리초", + "LabelSyncPlayTimeOffset": "서버와의 시간 오프셋 :", + "EnableFasterAnimationsHelp": "더 빠른 애니메이션 및 전환 사용", + "EnableFasterAnimations": "더 빠른 애니메이션", + "LabelRequireHttpsHelp": "선택하면 서버가 HTTP를 통한 모든 요청을 HTTPS로 자동 리디렉션합니다. 서버가 HTTPS에서 수신하지 않는 경우에는 효과가 없습니다.", + "LabelRequireHttps": "HTTPS가 필요합니다", + "LabelQuickConnectCode": "퀵커넥트 코드:", + "LabelUnstable": "불안정", + "LabelStable": "안정", + "LabelChromecastVersion": "크롬캐스트 버전", + "LabelKnownProxies": "알려진 프록시 :", + "LabelIconMaxResHelp": "upnp : icon 속성을 통해 노출되는 아이콘의 최대 해상도.", + "LabelEnableHttpsHelp": "구성된 HTTPS 포트에서 수신합니다. 이를 적용하려면 유효한 인증서도 제공해야합니다.", + "LabelEnableHttps": "HTTPS 활성화", + "LabelCurrentStatus": "현재 상태:", + "LabelAlbumArtMaxResHelp": "upnp : albumArtURI 속성을 통해 노출 된 앨범 아트의 최대 해상도입니다.", + "KnownProxiesHelp": "Jellyfin 인스턴스에 연결할 때 사용되는 알려진 프록시의 쉼표로 구분 된 IP 주소 목록입니다. 이것은 X-Forwarded-For 헤더를 올바르게 사용하는 데 필요합니다. 저장 후 재부팅해야합니다.", + "Image": "이미지", + "HeaderSyncPlayEnabled": "SyncPlay 활성화", + "HeaderSyncPlaySelectGroup": "그룹에 추가", + "HeaderServerAddressSettings": "서버 주소 설정", + "HeaderRemoteAccessSettings": "원격 접속 설정", + "HeaderHttpsSettings": "HTTPS 설정", + "ApiKeysCaption": "활성화 된 API 키 목록", + "Other": "기타", + "EnableDetailsBannerHelp": "항목 디테일 페이지 상단에 배너 이미지를 표시합니다.", + "EnableDetailsBanner": "디테일 배너", + "EnableQuickConnect": "이 서버에 퀵커넥트 사용", + "Data": "데이터", + "ButtonUseQuickConnect": "퀵커넥트 사용", + "ButtonActivate": "활성화", + "Authorize": "승인" } From 83fde741bcabadd4b742cbbb3d413b9816af3980 Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Mon, 21 Sep 2020 08:26:28 +0000 Subject: [PATCH 117/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 84 ++++++++++++++++++++++++--------------------- 1 file changed, 44 insertions(+), 40 deletions(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index 2f49b852d8..bd90bf5e65 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -2,7 +2,7 @@ "Add": "Thêm", "All": "Tất cả", "MessageBrowsePluginCatalog": "Duyệt qua các danh mục plugin của chúng tôi để xem các plugin có sẵn.", - "ButtonAddUser": "Thêm người dùng", + "ButtonAddUser": "Thêm Người Dùng", "ButtonCancel": "Thoát", "ButtonRemove": "Gỡ bỏ", "ButtonSelectDirectory": "Lựa chọn trực tiếp", @@ -10,7 +10,7 @@ "Delete": "Xóa", "DeleteImage": "Xóa hình ảnh", "DeleteImageConfirmation": "Bạn có chắc muốn xóa hình ảnh này?", - "DeleteUser": "Xóa người dùng", + "DeleteUser": "Xóa Người Dùng", "FileNotFound": "Không tìm thấy tệp tin.", "FileReadCancelled": "Tệp tin đọc đã bị hủy.", "FileReadError": "Có một lỗi xảy ra khi đọc tệp tin này.", @@ -22,7 +22,7 @@ "HeaderRecentlyPlayed": "Phát gần đây", "HeaderStatus": "Trạng thái", "HeaderSystemDlnaProfiles": "Hồ sơ hệ thống", - "HeaderUsers": "dùng", + "HeaderUsers": "Người Dùng", "LabelAudioLanguagePreference": "Ngôn ngữ thoại ưa thích:", "LabelCountry": "Quốc gia:", "LabelCurrentPassword": "Mật khẩu hiện tại:", @@ -34,8 +34,8 @@ "LabelName": "Tên:", "LabelNewPassword": "Mật khẩu mới:", "LabelNewPasswordConfirm": "Xác nhận mật khẩu mới:", - "LabelSaveLocalMetadata": "Lưu các ảnh nghệ thuật và metadata vào trong các thư mục media", - "LabelSaveLocalMetadataHelp": "Lưu các ảnh nghệ thuật và metadata vào trong các thư mục media, sẽ đưa chúng vào một nơi bạn có thể chỉnh sửa dễ dàng hơn.", + "LabelSaveLocalMetadata": "Lưu các ảnh bìa phim và dữ liệu mô tả vào trong các thư mục phương tiện", + "LabelSaveLocalMetadataHelp": "Lưu ảnh bìa phim vào trong các thư mục phương tiện, sẽ đưa chúng vào một nơi có thể chỉnh sửa dễ dàng hơn.", "LabelTime": "Thời gian:", "LabelYoureDone": "Bạn đã hoàn thành!", "MaxParentalRatingHelp": "Nội dung với đánh giá cao hơn sẽ được ẩn đi từ người dùng này.", @@ -69,7 +69,7 @@ "TabCatalog": "Danh mục", "TabLatest": "Mới nhất", "TabMyPlugins": "Các plugin của tôi", - "TabNetworks": "Các mạng", + "TabNetworks": "Mạng", "TabProfiles": "Hồ sơ", "TabServer": "Máy chủ", "TabUpcoming": "Sắp diễn ra", @@ -246,7 +246,7 @@ "EditMetadata": "Chỉnh sửa thông tin", "EditImages": "Chỉnh sửa hình ảnh", "Edit": "Chỉnh sửa", - "EasyPasswordHelp": "Mã PIN tiện lợi được sử dụng cho việc truy cập offline trên những thiết bị được hỗ trợ và cũng có thể sử dụng dành cho truy cập dễ dàng trong nội mạng.", + "EasyPasswordHelp": "Mã PIN tiện lợi được sử dụng cho việc truy cập ngoại tuyến trên thiết bị có hỗ trợ và cũng được sử dụng để đăng nhập trong mạng dễ dàng.", "DropShadow": "Bóng đổ", "DrmChannelsNotImported": "Những kênh được bảo vệ bản quyền sẽ không được nhập vào.", "DownloadsValue": "{0} đã tải xuống", @@ -313,7 +313,7 @@ "FetchingData": "Đang tải thêm thông tin", "Features": "Mục đặc trưng", "Favorites": "Sở Thích", - "Favorite": "Mục yêu thích", + "Favorite": "Yêu thích", "FastForward": "Tua nhanh", "FFmpegSavePathNotFound": "Máy chủ không thể tìm thấy chương trình FFmpeg trong đường dẫn bạn đã nhập. FFprobe thì cũng cần thiết và phải nằm trong cùng thư mục bên trên. Những phần mềm này thường được tổng hợp cùng nhau trong một lượt tải. Hãy thử lại sau khi kiểm tra đường dẫn.", "Extras": "Đặc biệt", @@ -372,7 +372,7 @@ "HeaderMyDevice": "Thiết Bị Của Tôi", "HeaderMusicQuality": "Chất Lượng Âm Nhạc", "HeaderMoreLikeThis": "Nội Dung Tương Tự", - "HeaderMetadataSettings": "Cài Đặt Dữ Liệu Bổ Trợ", + "HeaderMetadataSettings": "Cài Đặt Dữ Liệu Mô Tả", "HeaderMediaFolders": "Thư Mục Chứa Nội Dung", "HeaderMedia": "Nội Dung", "HeaderLoginFailure": "Đăng Nhập Không Thành Công", @@ -473,7 +473,7 @@ "LabelCertificatePasswordHelp": "Nếu chứng chỉ của bạn cần mật khẩu, hãy nhập nó ở đây.", "LabelCertificatePassword": "Mật khẩu chứng chỉ:", "LabelCancelled": "Đã Huỷ", - "LabelCachePathHelp": "Chọn một đường dẫn cho những tập tin lưu tạm như là hình ảnh. Bỏ trống để sử dụng cài đặt mặc định của máy chủ.", + "LabelCachePathHelp": "Chọn vị trí cho những tệp bộ nhớ đệm chẳng hạn như hình ảnh. Bỏ trống để sử dụng cài đặt mặc định.", "LabelCachePath": "Đường dẫn cache:", "LabelCache": "Cache:", "LabelBurnSubtitles": "Nhúng phụ đề:", @@ -483,9 +483,9 @@ "LabelBitrate": "Bitrate:", "LabelBirthYear": "Năm sinh:", "LabelBirthDate": "Ngày sinh:", - "LabelBindToLocalNetworkAddressHelp": "Không bắt buộc. Cài đặt đè địa chỉ IP nội bộ để kết nối đến máy chủ HTTP. Nếu bỏ trống, máy chủ sẽ cài đặt vào toàn bộ những địa chỉ nội bộ có sẵn. Nếu thay đổi tuỳ chọn này, cần phải khởi động lại máy chủ Jellyfin để có tác dụng.", - "LabelBindToLocalNetworkAddress": "Cài đặt vào địa chỉ nội bộ:", - "LabelAutomaticallyRefreshInternetMetadataEvery": "Tự động cập nhật dữ liệu bổ trợ từ Internet:", + "LabelBindToLocalNetworkAddressHelp": "Không bắt buộc. Ghi đè địa chỉ IP cục bộ để kết hợp với máy chủ HTTP. Nếu bỏ trống, máy chủ sẽ cài đặt vào toàn bộ những địa chỉ nội bộ có sẵn. Nếu thay đổi tuỳ chọn này, yêu cầu khởi động lại máy chủ Jellyfin để có tác dụng.", + "LabelBindToLocalNetworkAddress": "Liên kết với địa chỉ mạng cục bộ:", + "LabelAutomaticallyRefreshInternetMetadataEvery": "Tự động cập nhật dữ liệu mô tả từ Internet:", "LabelAuthProvider": "Nhà Cung Cấp Xác Thực:", "LabelAudioSampleRate": "Sample rate âm thanh:", "LabelAudioCodec": "Bộ giải mã âm thanh:", @@ -542,7 +542,7 @@ "HeaderUploadImage": "Tải Lên Hình Ảnh", "HeaderUpcomingOnTV": "Sắp Phát Sóng Trên TV", "HeaderTypeText": "Nhập nội dung", - "HeaderTypeImageFetchers": "{0} Trình Tải Hình Ảnh", + "HeaderTypeImageFetchers": "Trình tải hình ảnh tự động cho {0}", "HeaderTuners": "Bộ Điều Khiển Thu Phát Sóng", "HeaderTunerDevices": "Thiết Bị Bắt Sóng", "HeaderTranscodingProfileHelp": "Thêm hồ sơ chuyển mã để chỉ ra những định dạng nên dùng khi cần chuyển mã.", @@ -596,9 +596,9 @@ "LabelEnableDlnaDebugLogging": "Bật tính năng gỡ lỗi DLNA", "LabelEnableDlnaClientDiscoveryIntervalHelp": "Xác định thời gian tính bằng giây giữa các lần tìm kiếm SSDP thực hiện bởi Jellyfin.", "LabelEnableDlnaClientDiscoveryInterval": "Thời gian tìm kiếm thiết bị phát (giây)", - "LabelEnableBlastAliveMessagesHelp": "Bật tính năng này nếu máy chủ không thể kết nối chắc chắn với những thiết bị UPnP trong mạng của bạn.", + "LabelEnableBlastAliveMessagesHelp": "Bật cái này nếu máy chủ không được các thiết bị UPnP khác trên mạng của bạn tìm ra một cách đáng tin cậy.", "LabelEnableBlastAliveMessages": "Phát tin nhắn trực tiếp", - "LabelEnableAutomaticPortMapHelp": "Tự động chuyển tiếp những port công khai trên bộ định tuyến đến port trên máy chủ thông qua UPnP. Cài đặt này có thể không hoạt động trên một số loại bộ định tuyến hoặc thiết lập mạng. Thay đổi sẽ được áp dụng sau khi khởi động lại máy chủ.", + "LabelEnableAutomaticPortMapHelp": "Tự động chuyển tiếp các cổng công cộng trên bộ định tuyến của bạn tới các cổng cục bộ trên máy chủ của bạn qua UPnP. Điều này có thể không hoạt động với một số bộ định tuyến hoặc cấu hình mạng. Thay đổi sẽ được áp dụng sau khi khởi động lại máy chủ.", "HeaderServerAddressSettings": "Cài Đặt Địa Chỉ Máy Chủ", "HeaderRemoteAccessSettings": "Cài Đặt Truy Cập Từ Xa", "HeaderHttpsSettings": "Cài Đặt HTTPS", @@ -614,7 +614,7 @@ "LabelLineup": "Danh sách diễn viên:", "LabelLibraryPageSizeHelp": "Cài đặt số lượng mục hiển thị trong một trang thư viện. Cài đặt 0 để vô hiệu hoá việc phân trang.", "LabelLibraryPageSize": "Kích thước trang của thư viện:", - "LabelLanNetworks": "Mạng nội bộ:", + "LabelLanNetworks": "Mạng Cục Bộ:", "LabelKodiMetadataUserHelp": "Lưu dữ liệu xem vào tập tin NFO dành cho những ứng dụng khác sử dụng.", "LabelKodiMetadataUser": "Lưu thông tin người xem vào tập tin NFO dành cho:", "LabelKodiMetadataSaveImagePathsHelp": "Cài đặt này được khuyến cáo nếu bạn có những hình ảnh đặt tên không đúng với hướng dẫn của Kodi.", @@ -628,11 +628,11 @@ "LabelKidsCategories": "Những thể loại của trẻ em:", "LabelKeepUpTo": "Theo kịp:", "LabelInternetQuality": "Chất lượng Internet:", - "LabelInNetworkSignInWithEasyPasswordHelp": "Sử dụng mã PIN đơn giản để đăng nhập thiết bị phát trong mạng nội bộ. Mật khẩu thông thường sẽ chỉ cần khi không truy cập nội mạng. Nếu mã PIN để trống, bạn sex không cần mật khẩu trong mạng nội bộ.", - "LabelInNetworkSignInWithEasyPassword": "Kích hoạt đăng nhập nội mạng bằng mã PIN đơn giản", + "LabelInNetworkSignInWithEasyPasswordHelp": "Dùng mã PIN tiện lợi để đăng nhập thiết bị trong mạng cục bộ. Mật khẩu thông thường của bạn sẽ chỉ cần thiết khi ở nhà. Nếu để trống mã PIN, bạn sẽ không cần mật khẩu trong mạng nhà của mình.", + "LabelInNetworkSignInWithEasyPassword": "Bật đăng nhập trong mạng bằng mã PIN tiện lợi", "LabelImportOnlyFavoriteChannels": "Giới hạn để chỉ nhập vào những kênh yêu thích", "LabelImageType": "Loại hình ảnh:", - "LabelImageFetchersHelp": "Kích hoạt và xếp hạng chương trình tải hình ảnh theo thứ tự ưu tiên.", + "LabelImageFetchersHelp": "Kích hoạt và xếp hạng trình tải hình ảnh tự động theo thứ tự ưu tiên.", "LabelIdentificationFieldHelp": "Một chuỗi không phân biệt viết hoa/thường hoặc biểu thức chính quy.", "LabelIconMaxWidth": "Chiều ngang tối đa của biểu tượng:", "LabelIconMaxHeight": "Chiều cao tối đa của biểu tượng:", @@ -682,14 +682,14 @@ "LabelMinBackdropDownloadWidth": "Chiều rộng tối thiểu của phông nền tải xuống:", "LabelMethod": "Phương pháp:", "LabelMetadataSaversHelp": "Chọn định dạng tập tin để sử dụng khi lưu mô tả chi tiết của bạn.", - "LabelMetadataSavers": "Định dạng dữ liệu bổ trợ:", - "LabelMetadataReadersHelp": "Sắp xếp thứ tự ưu tiên của những nguồn dữ liệu bổ trợ. Tập tin đầu tiên được tìm thấy sẽ được sử dụng.", - "LabelMetadataReaders": "Bộ đọc dữ liệu bổ trợ:", - "LabelMetadataPathHelp": "Thiết lập một đường dẫn tuỳ ý cho những hình ảnh và dữ liệu bổ trợ.", - "LabelMetadataPath": "Đường dẫn dữ liệu bổ trợ:", - "LabelMetadataDownloadersHelp": "Kích hoạt và sắp xếp thứ tự ưu tiên của các trình tải dữ liệu bổ trợ. Trình tải có thứ tự ưu tiên thấp sẽ chỉ sử dụng để tải những thông tin bị thiếu.", + "LabelMetadataSavers": "Lưu Dữ liệu Mô Tả Dưới Dạng:", + "LabelMetadataReadersHelp": "Sắp xếp thứ tự ưu tiên những dữ liệu mô tả cục bộ. Tập tin đầu tiên được tìm thấy sẽ được đọc.", + "LabelMetadataReaders": "Trình đọc dữ liệu mô tả:", + "LabelMetadataPathHelp": "Chọn một đường dẫn để tải xuống hình ảnh và dữ liệu mô tả.", + "LabelMetadataPath": "Đường dẫn dữ liệu mô tả:", + "LabelMetadataDownloadersHelp": "Kích hoạt và sắp xếp thứ tự ưu tiên của các trình tải dữ liệu mô tả. Trình tải có thứ tự ưu tiên thấp sẽ chỉ sử dụng để tải những thông tin bị thiếu.", "LabelMetadataDownloadLanguage": "Ngôn ngữ tải ưu tiên:", - "LabelMetadata": "Dữ liệu bổ trợ:", + "LabelMetadata": "Dữ Liệu Mô Tả:", "LabelMessageTitle": "Tiêu đề tin nhắn:", "LabelMessageText": "Nội dung tin nhắn:", "LabelMaxStreamingBitrateHelp": "Thiết lập bitrate tối đa khi truyền tải.", @@ -818,7 +818,7 @@ "LabelRuntimeMinutes": "Thời gian chạy:", "LabelRequireHttpsHelp": "Nếu được chọn, máy chủ sẽ tự động chuyển hướng tất cả các yêu cầu qua HTTP sang HTTPS. Điều này không ảnh hưởng nếu máy chủ không nghe trên HTTPS.", "LabelRequireHttps": "Yêu cầu HTTPS", - "LabelRemoteClientBitrateLimitHelp": "Giới hạn tốc độ bit tùy chọn trên mỗi luồng cho tất cả các thiết bị ngoài mạng. Điều này hữu ích để ngăn các thiết bị yêu cầu tốc độ bit cao hơn mức kết nối internet của bạn có thể xử lý. Điều này có thể dẫn đến việc tăng tải CPU trên máy chủ của bạn để chuyển mã video nhanh chóng xuống tốc độ bit thấp hơn.", + "LabelRemoteClientBitrateLimitHelp": "Giới hạn tốc độ bit trên mỗi luồng cho tất cả các thiết bị ngoài mạng. Nó hữu ích để ngăn các thiết bị yêu cầu tốc độ bit cao hơn mức kết nối internet của bạn có thể xử lý. Điều này có thể dẫn đến việc tăng tải CPU trên máy chủ của bạn để chuyển mã video nhanh chóng xuống tốc độ bit thấp hơn.", "LabelRemoteClientBitrateLimit": "Giới hạn tốc độ bit phát trực tuyến Internet (Mbps):", "LabelReleaseDate": "Ngày phát hành:", "LabelRefreshMode": "Chế độ làm mới :", @@ -826,7 +826,7 @@ "LabelRecordingPath": "Đường dẫn ghi mặc định:", "LabelRecord": "Ghi lại:", "LabelReasonForTranscoding": "Lý do chuyển mã:", - "LabelQuickConnectCode": "Mã kết nối nhanh:", + "LabelQuickConnectCode": "Mã số kết nối nhanh:", "LabelPublicHttpsPortHelp": "Số cổng công cộng sẽ được ánh xạ tới cổng HTTPS cục bộ.", "LabelPublicHttpsPort": "Số cổng HTTPS công khai:", "LabelPublicHttpPortHelp": "Số cổng công khai sẽ được ánh xạ tới cổng HTTP cục bộ.", @@ -862,7 +862,7 @@ "LabelOverview": "Tổng quát:", "LabelOriginalTitle": "Tiêu đề ban đầu:", "LabelOriginalAspectRatio": "Tỷ lệ khung hình gốc:", - "LabelOptionalNetworkPathHelp": "Nếu thư mục này được chia sẻ trên mạng của bạn, việc cung cấp đường dẫn chia sẻ mạng có thể cho phép máy khách trên các thiết bị khác truy cập trực tiếp vào các tệp phương tiện. Ví dụ: {0} hoặc {1}.", + "LabelOptionalNetworkPathHelp": "Nếu thư mục này được chia sẻ trong mạng nhà của bạn, việc cung cấp đường dẫn chia sẻ mạng có thể cho phép ứng dụng khách trên các thiết bị khác truy cập trực tiếp vào các tệp phương tiện. Ví dụ: {0} hoặc {1}.", "LabelOptionalNetworkPath": "Thư mục mạng được chia sẻ:", "LabelNumberOfGuideDaysHelp": "Việc tải xuống nhiều ngày hơn dữ liệu hướng dẫn cung cấp khả năng lên lịch trình trước và xem nhiều danh sách hơn, nhưng cũng sẽ mất nhiều thời gian hơn để tải xuống. Tự động sẽ chọn dựa trên số lượng kênh.", "LabelNumberOfGuideDays": "Số ngày tải xuống dữ liệu hướng dẫn:", @@ -880,7 +880,7 @@ "EnableDecodingColorDepth10Vp9": "Bật giải mã phần cứng 10 bit cho VP9", "EnableDecodingColorDepth10Hevc": "Bật giải mã phần cứng 10-bit cho HEVC", "Data": "Dữ liệu", - "ButtonUseQuickConnect": "Sử dụng Kết nối nhanh", + "ButtonUseQuickConnect": "Dùng Kết Nhanh", "ButtonActivate": "Kích hoạt", "Authorize": "Ủy quyền", "MessagePlayAccessRestricted": "Việc phát lại nội dung này hiện bị hạn chế. Vui lòng liên hệ với quản trị viên máy chủ của bạn để biết thêm thông tin.", @@ -1113,7 +1113,7 @@ "MoveRight": "Di chuyển sang phải", "MoveLeft": "Di chuyển sang trái", "MoreMediaInfo": "Thông Tin Phương Tiện", - "MoreUsersCanBeAddedLater": "Có thể thêm nhiều người dùng hơn sau đó từ trong bảng điều khiển.", + "MoreUsersCanBeAddedLater": "Có thể thêm nhiều người dùng hơn sau đó từ trong trang tổng quan.", "MoreFromValue": "Thêm từ {0}", "Mobile": "Di động", "MinutesBefore": "phút trước", @@ -1150,7 +1150,7 @@ "PictureInPicture": "Ảnh trong ảnh", "Photo": "Hình Ảnh", "Person": "Người", - "PerfectMatch": "Kết hợp hoàn hảo", + "PerfectMatch": "Trùng khớp hoàn hảo", "People": "Mọi người", "PasswordResetProviderHelp": "Chọn nhà cung cấp đặt lại mật khẩu sẽ được sử dụng khi người dùng này yêu cầu đặt lại mật khẩu.", "PackageInstallFailed": "Cài đặt {0} (phiên bản {1}) không thành công.", @@ -1193,7 +1193,7 @@ "SearchResults": "Kết Quả Tìm Kiếm", "SearchForSubtitles": "Tìm kiếm phụ đề", "SearchForMissingMetadata": "Tìm kiếm dữ liệu mô tả bị thiếu", - "SearchForCollectionInternetMetadata": "Tìm kiếm tác phẩm nghệ thuật và dữ liệu mô tả trên Internet", + "SearchForCollectionInternetMetadata": "Tìm kiếm ảnh bìa phim và dữ liệu mô tả trên Internet", "Search": "Tìm kiếm", "Screenshots": "Ảnh chụp màn hình", "Screenshot": "Ảnh chụp màn hình", @@ -1218,13 +1218,13 @@ "QuickConnectNotActive": "Kết nối nhanh không hoạt động trên máy chủ này", "QuickConnectNotAvailable": "Yêu cầu quản trị viên máy chủ của bạn bật kết nối nhanh", "QuickConnectInvalidCode": "Mã kết nối nhanh không hợp lệ", - "QuickConnectDescription": "Để đăng nhập bằng kết nối nhanh, hãy chọn nút Kết nối nhanh trên thiết bị bạn đang đăng nhập và nhập mã hiển thị bên dưới.", - "QuickConnectDeactivated": "Kết nối nhanh đã bị vô hiệu hóa trước khi yêu cầu đăng nhập có thể được chấp thuận", + "QuickConnectDescription": "Để đăng nhập bằng kết nối nhanh, hãy chọn nút Kết Nối Nhanh trên thiết bị bạn đang đăng nhập và nhập mã hiển thị bên dưới.", + "QuickConnectDeactivated": "Kết nối nhanh đã bị vô hiệu hóa trước khi yêu cầu đăng nhập được chấp nhận", "QuickConnectAuthorizeFail": "Mã kết nối nhanh không xác định", - "QuickConnectAuthorizeSuccess": "Yêu cầu được cho phép", + "QuickConnectAuthorizeSuccess": "Yêu cầu đã được cho phép", "QuickConnectAuthorizeCode": "Nhập mã {0} để đăng nhập", - "QuickConnectActivationSuccessful": "Đã kích hoạt thành công", - "QuickConnect": "Kết nối nhanh", + "QuickConnectActivationSuccessful": "Kích hoạt thành công", + "QuickConnect": "Kết Nối Nhanh", "Quality": "Chất lượng", "Programs": "Chương Trình", "Profile": "Hồ sơ", @@ -1259,5 +1259,9 @@ "PlaybackData": "Dữ liệu phát lại", "PlayAllFromHere": "Phát tất cả từ đây", "Play": "Phát", - "PlaceFavoriteChannelsAtBeginning": "Đặt các kênh yêu thích ở đầu" + "PlaceFavoriteChannelsAtBeginning": "Đặt các kênh yêu thích ở đầu", + "TabNetworking": "Kết Nối Mạng", + "WizardCompleted": "Đó là tất cả những gì chúng ta cần bây giờ. Jellyfin đã bắt đầu thu thập thông tin về thư viện phương tiện của bạn. Kiểm tra một số ứng dụng của chúng tôi, sau đó nhấp vào Hoàn thành để xem Trang tổng quan.", + "TabDashboard": "Trang tổng quan", + "LabelScheduledTaskLastRan": "Lần cuối chạy {0}, mất{1}." } From 0d9cb036222429e7bd21b39a30c6284aca8fbcd4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9E=A5=EA=B1=B4?= Date: Mon, 21 Sep 2020 10:22:45 +0000 Subject: [PATCH 118/365] Translated using Weblate (Korean) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ko/ --- src/strings/ko.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/ko.json b/src/strings/ko.json index 8cfa17f56e..4c6d8c634c 100644 --- a/src/strings/ko.json +++ b/src/strings/ko.json @@ -1319,5 +1319,6 @@ "Data": "데이터", "ButtonUseQuickConnect": "퀵커넥트 사용", "ButtonActivate": "활성화", - "Authorize": "승인" + "Authorize": "승인", + "QuickConnectNotActive": "이 서버에서 퀵커넥트가 활성화되지 않았습니다" } From ff3f8cedfe4b0905b67c5bdcf999c2cb74c27ac4 Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Mon, 21 Sep 2020 10:19:32 +0000 Subject: [PATCH 119/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index bd90bf5e65..4162eaff65 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -312,7 +312,7 @@ "File": "Tập tin", "FetchingData": "Đang tải thêm thông tin", "Features": "Mục đặc trưng", - "Favorites": "Sở Thích", + "Favorites": "Yêu Thích", "Favorite": "Yêu thích", "FastForward": "Tua nhanh", "FFmpegSavePathNotFound": "Máy chủ không thể tìm thấy chương trình FFmpeg trong đường dẫn bạn đã nhập. FFprobe thì cũng cần thiết và phải nằm trong cùng thư mục bên trên. Những phần mềm này thường được tổng hợp cùng nhau trong một lượt tải. Hãy thử lại sau khi kiểm tra đường dẫn.", @@ -521,7 +521,7 @@ "InstantMix": "Trộn Lẫn Nhanh", "InstallingPackage": "Đang cài đặt {0} (phiên bản {1})", "ImportMissingEpisodesHelp": "Thông tin về các tập bị thiếu sẽ được nhập vào cơ sở dữ liệu của bạn và hiển thị trong các phần và loạt phim. Điều này có thể làm quá trình quét thư viện lâu hơn đáng kể.", - "ImportFavoriteChannelsHelp": "Chỉ các kênh được đánh dấu là ưa thích trên thiết bị dò kênh mới được nhập.", + "ImportFavoriteChannelsHelp": "Chỉ các kênh được đánh dấu là yêu thích trên thiết bị dò kênh mới được nhập.", "Images": "Hình Ảnh", "Identify": "Nhận Dạng", "HttpsRequiresCert": "Để bật kết nối bảo mật, bạn cần phải cung cấp một Chứng Chỉ SSL đáng tin cậy, ví dụ như \"Let's Encrypt\". Hãy cung cấp Chứng Chỉ SSL hoặc là tắt tính năng kết nối bảo mật.", @@ -630,7 +630,7 @@ "LabelInternetQuality": "Chất lượng Internet:", "LabelInNetworkSignInWithEasyPasswordHelp": "Dùng mã PIN tiện lợi để đăng nhập thiết bị trong mạng cục bộ. Mật khẩu thông thường của bạn sẽ chỉ cần thiết khi ở nhà. Nếu để trống mã PIN, bạn sẽ không cần mật khẩu trong mạng nhà của mình.", "LabelInNetworkSignInWithEasyPassword": "Bật đăng nhập trong mạng bằng mã PIN tiện lợi", - "LabelImportOnlyFavoriteChannels": "Giới hạn để chỉ nhập vào những kênh yêu thích", + "LabelImportOnlyFavoriteChannels": "Hạn chế các kênh được đánh dấu là yêu thích", "LabelImageType": "Loại hình ảnh:", "LabelImageFetchersHelp": "Kích hoạt và xếp hạng trình tải hình ảnh tự động theo thứ tự ưu tiên.", "LabelIdentificationFieldHelp": "Một chuỗi không phân biệt viết hoa/thường hoặc biểu thức chính quy.", @@ -1259,7 +1259,7 @@ "PlaybackData": "Dữ liệu phát lại", "PlayAllFromHere": "Phát tất cả từ đây", "Play": "Phát", - "PlaceFavoriteChannelsAtBeginning": "Đặt các kênh yêu thích ở đầu", + "PlaceFavoriteChannelsAtBeginning": "Đặt các kênh yêu thích ở phần đầu", "TabNetworking": "Kết Nối Mạng", "WizardCompleted": "Đó là tất cả những gì chúng ta cần bây giờ. Jellyfin đã bắt đầu thu thập thông tin về thư viện phương tiện của bạn. Kiểm tra một số ứng dụng của chúng tôi, sau đó nhấp vào Hoàn thành để xem Trang tổng quan.", "TabDashboard": "Trang tổng quan", From cb432fafb719e64e9839c649e67d89127b8f3b09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9E=A5=EA=B1=B4?= Date: Mon, 21 Sep 2020 10:23:28 +0000 Subject: [PATCH 120/365] Translated using Weblate (Korean) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ko/ --- src/strings/ko.json | 137 +++++++++++++++++++++++++++++++++++++------- 1 file changed, 117 insertions(+), 20 deletions(-) diff --git a/src/strings/ko.json b/src/strings/ko.json index 4c6d8c634c..99c63c2f6c 100644 --- a/src/strings/ko.json +++ b/src/strings/ko.json @@ -215,7 +215,7 @@ "LabelAudioLanguagePreference": "선호하는 오디오 언어:", "LabelBirthDate": "생일:", "LabelBirthYear": "출생 년도:", - "LabelBlastMessageInterval": "활성 메세지 간격(초)", + "LabelBlastMessageInterval": "활성 메세지 간격", "LabelBlastMessageIntervalHelp": "서버 활성화 메세지 간의 지속 시간을 초 단위로 결정합니다.", "LabelCache": "캐시:", "LabelCachePath": "캐시 경로:", @@ -577,11 +577,11 @@ "TabParentalControl": "자녀 보호", "TabPlugins": "플러그인", "TabProfiles": "프로필", - "TabResponses": "반응", + "TabResponses": "응답", "TabScheduledTasks": "예약 작업", "TabServer": "서버", "TabStreaming": "스트리밍", - "TabUpcoming": "방송 예정", + "TabUpcoming": "예정", "Tags": "태그", "TellUsAboutYourself": "자신에 대해 알려주세요", "ThisWizardWillGuideYou": "이 마법사는 설정 과정을 안내합니다. 시작하려면 선호하는 언어를 선택하세요.", @@ -640,7 +640,7 @@ "AddToPlayQueue": "재생 대기열에 추가", "AddedOnValue": "{0} 추가됨", "AirDate": "방영 일자", - "Aired": "방영됨", + "Aired": "방영순", "Alerts": "알림", "AllComplexFormats": "모든 복잡한 포맷 (ASS, SSA, VOBSUB, PGS, SUB, IDX,...)", "AllLibraries": "모든 라이브러리", @@ -737,7 +737,7 @@ "TV": "TV", "Suggestions": "제안", "SubtitleOffset": "자막 오프셋", - "SubtitleAppearanceSettingsAlsoPassedToCastDevices": "이 설정은 이 장치에서 시작되는 크롬캐스트 재생에도 적용됩니다.", + "SubtitleAppearanceSettingsAlsoPassedToCastDevices": "이 설정은이 기기에서 시작된 모든 크롬캐스트 재생에도 적용됩니다.", "Studios": "스튜디오", "StopRecording": "녹화 중지", "Sports": "스포츠", @@ -750,10 +750,10 @@ "ShowYear": "년도 표시", "ShowTitle": "제목 표시", "ShowAdvancedSettings": "고급 설정 표시", - "ServerUpdateNeeded": "Jellyfin 서버를 업데이트해야합니다. 최신 버전을 다운로드하려면, {0}을 확인하십시오.", - "ServerRestartNeededAfterPluginInstall": "플러그인을 설치한 후에 Jellyfin 서버를 재시작해야합니다.", - "ServerNameIsShuttingDown": "Jellyfin 서버 - {0}은 가동중지되었습니다.", - "ServerNameIsRestarting": "Jellyfin 서버 - {0}은 재시작중입니다.", + "ServerUpdateNeeded": "이 서버를 업데이트해야합니다. 최신 버전을 다운로드하려면 {0}을 (를) 방문하십시오.", + "ServerRestartNeededAfterPluginInstall": "플러그인을 설치 한 후 Jellyfin을 다시 시작해야합니다.", + "ServerNameIsShuttingDown": "{0}의 서버가 종료됩니다.", + "ServerNameIsRestarting": "{0}의 서버가 다시 시작됩니다.", "SeriesSettings": "시리즈 설정", "Series": "시리즈", "SendMessage": "메세지 발송", @@ -767,7 +767,7 @@ "Runtime": "런타임", "RepeatMode": "반복 모드", "RepeatEpisodes": "에피소드 반복", - "RememberMe": "기억하기", + "RememberMe": "날 기억해", "ReleaseDate": "출시일", "RefreshMetadata": "메타데이터 새로 고침", "Recordings": "녹화", @@ -956,7 +956,7 @@ "Anytime": "언제든지", "XmlTvNewsCategoriesHelp": "이 카테고리의 프로그램은 뉴스 프로그램으로 표시됩니다. 여러개를 '|'으로 구분하십시오.", "Smart": "스마트", - "SeriesYearToPresent": "{0} - 제공", + "SeriesYearToPresent": "{0} - N/A", "RemoveFromCollection": "콜렉션에서 제거", "RecentlyWatched": "최근 시청함", "PleaseAddAtLeastOneFolder": "추가 버튼을 클릭하여 하나 이상의 폴더를 라이브러리에 추가하십시오.", @@ -1019,7 +1019,7 @@ "Ended": "종료", "EndsAtValue": "{0}에 종료", "HeaderDateIssued": "발행일", - "ConfigureDateAdded": "라이브러리 설정의 Jellyfin 서버 대시보드에서 추가된 날짜를 결정하는 방법 구성", + "ConfigureDateAdded": "추가 된 날짜가 라이브러리 설정 아래의 대시 보드에서 결정되는 방식 구성", "EnableStreamLoopingHelp": "라이브 스트림에 몇 초의 데이터만 포함되어 있고 지속적으로 요청해야하는 경우, 이 옵션을 활성화하십시오. 필요하지 않은 경우, 이 기능을 사용하면 문제가 발생할 수 있습니다.", "BurnSubtitlesHelp": "영상을 트랜스코딩할 때 자막 포맷에 따라 서버에서 영상 안에 자막을 입힐지를 결정합니다. 영상에 자막을 입히지 않으면 서버 성능이 향상됩니다. 일부 ASS/SSA 자막을 포함하여 자막 포맷(VOBSUB, PGS, SUB/IDX 등)에 따라 자막을 영상에 입히려면 자동을 선택하십시오.", "EnableNextVideoInfoOverlay": "재생 중에 다음 비디오 정보 표시", @@ -1146,7 +1146,7 @@ "LabelKodiMetadataEnablePathSubstitutionHelp": "서버의 경로 대체 설정을 이용하여 이미지 경로 대체를 활성화합니다.", "LabelKodiMetadataEnablePathSubstitution": "경로 대체 활성화", "LabelKodiMetadataEnableExtraThumbsHelp": "이미지를 다운로드할 때는 Kodi 스킨과의 최대한의 호환성을 위해 추가 팬아트와 추가 섬네일 중 어느 형식으로도 저장될 수 있습니다.", - "LabelKodiMetadataEnableExtraThumbs": "추가 팬아틀 추가 섬네일 필드로 복사하기", + "LabelKodiMetadataEnableExtraThumbs": "추가된 팬아트를 추가된 썸네일 필드에 복사", "LabelKeepUpTo": "대기 한계:", "LabelHomeScreenSectionValue": "홈 화면 영역 {0}:", "LabelBaseUrlHelp": "서버 URL에 사용자 지정 하위 디렉터리를 추가합니다. http://example.com/<baseurl>", @@ -1163,7 +1163,7 @@ "MessagePluginConfigurationRequiresLocalAccess": "이 플러그인을 구성하려면 로컬 서버에 직접 로그인하십시오.", "MessageNoCollectionsAvailable": "컬렉션을 사용하면 영화, 시리즈 및 앨범의 개인화 된 그룹을 즐길 수 있습니다. + 버튼을 클릭하여 컬렉션 만들기를 시작합니다.", "LabelPlayerDimensions": "플레이어 넓이:", - "LabelParentNumber": "Parent number:", + "LabelParentNumber": "부모 번호:", "LabelLineup": "라인업:", "LabelDroppedFrames": "드롭 프레임:", "LabelDeinterlaceMethod": "디인터레이싱 방법:", @@ -1220,11 +1220,11 @@ "QuickConnectDeactivated": "로그인 요청이 승인되기 전에 Quick connect가 비활성화되었습니다", "QuickConnectAuthorizeFail": "알수없는 퀵커넥트 코드", "QuickConnectAuthorizeSuccess": "승인 요청", - "QuickConnectAuthorizeCode": "Enter code {0} to login", + "QuickConnectAuthorizeCode": "로그인하려면 {0} 코드를 입력하세요.", "QuickConnectActivationSuccessful": "성공적으로 활성화되었습니다", "QuickConnect": "퀵커넥트", "Profile": "프로파일", - "ProductionLocations": "Production 위치", + "ProductionLocations": "프로덕션 위치", "Primary": "기본", "PreviousTrack": "이전으로 건너 뛰기", "PreferEmbeddedEpisodeInfosOverFileNames": "파일 이름보다 삽입 된 에피소드 정보 선호", @@ -1244,9 +1244,9 @@ "OptionSaveMetadataAsHiddenHelp": "이를 변경하면 앞으로 저장되는 새 메타 데이터에 적용됩니다. 기존 메타 데이터 파일은 다음에 서버에서 저장 될 때 업데이트됩니다.", "OptionRequirePerfectSubtitleMatchHelp": "완벽한 일치를 요구하면 정확한 비디오 파일로 테스트 및 확인 된 자막 만 포함하도록 자막이 필터링됩니다. 선택을 취소하면 자막이 다운로드 될 가능성이 높아지지만 시간이 잘못되었거나 잘못된 자막 텍스트가 발생할 가능성이 높아집니다.", "OptionRequirePerfectSubtitleMatch": "비디오 파일과 완벽하게 일치하는 자막만 다운로드", - "OptionReportByteRangeSeekingWhenTranscodingHelp": "This is required for some devices that don't time seek very well.", + "OptionReportByteRangeSeekingWhenTranscodingHelp": "이것은 시간을 잘 찾지 못하는 일부 장치에 필요합니다.", "OptionReportByteRangeSeekingWhenTranscoding": "트랜스 코딩시 서버가 byte seeking을 지원한다고 보고", - "OptionRegex": "Regex", + "OptionRegex": "정규식", "OptionRandom": "랜덤", "OptionLoginAttemptsBeforeLockoutHelp": "0 값은 기본값을 상속 함을 의미합니다. 일반 사용자는 세 번, 관리자는 다섯 번 시도합니다. -1로 설정하면 기능이 비활성화됩니다.", "OptionLoginAttemptsBeforeLockout": "잠금이 발생하기 전에 발생할 수있는 잘못된 로그인 시도 횟수를 결정합니다.", @@ -1274,7 +1274,7 @@ "MessageAddRepository": "저장소를 추가하려면 헤더 옆에있는 버튼을 클릭하고 요청 된 정보를 입력합니다.", "LabelRepositoryNameHelp": "다른 저장소와 구별하기위한 사용자 정의 이름입니다.", "LabelRepositoryName": "저장소 이름", - "LabelRepositoryUrlHelp": "The location of the repository manifest you want to include.", + "LabelRepositoryUrlHelp": "manifest를 추가 할 저장소 목록의 위치입니다.", "LabelRepositoryUrl": "저장소 URL", "HeaderNewRepository": "새 저장소", "MessageNoRepositories": "저장소가 없습니다.", @@ -1320,5 +1320,102 @@ "ButtonUseQuickConnect": "퀵커넥트 사용", "ButtonActivate": "활성화", "Authorize": "승인", - "QuickConnectNotActive": "이 서버에서 퀵커넥트가 활성화되지 않았습니다" + "QuickConnectNotActive": "이 서버에서 퀵커넥트가 활성화되지 않았습니다", + "Raised": "양각", + "LabelMaxMuxingQueueSizeHelp": "모든 스트림이 초기화 될 때까지 기다리는 동안 버퍼링 할 수있는 최대 패킷 수입니다. ffmpeg 로그에서 \"출력 스트림에 대해 버퍼링 된 패킷이 너무 많음\"오류가 계속 발생하면이를 늘리십시오. 권장 값은 2048입니다.", + "LabelMaxMuxingQueueSize": "최대 muxing 대기열 크기 :", + "Preview": "미리보기", + "SubtitleVerticalPositionHelp": "텍스트가 나타나는 줄 번호입니다. 양수는 하향식을 나타냅니다. 음수는 상향식을 나타냅니다.", + "LabelSubtitleVerticalPosition": "세로 위치 :", + "ClearQueue": "대기열 지우기", + "StopPlayback": "재생 중지", + "LabelTonemappingParamHelp": "톤 매핑 알고리즘을 조정합니다. 권장 및 기본값은 NaN입니다. 일반적으로 비워 둡니다.", + "LabelTonemappingParam": "톤 매핑 매개변수:", + "LabelTonemappingPeakHelp": "이 값으로 신호 / 공칭 / 기준 피크를 재정의합니다. 디스플레이 메타 데이터에 포함 된 피크 정보를 신뢰할 수 없거나 낮은 범위에서 높은 범위로 톤 매핑 할 때 유용합니다. 권장 및 기본값은 0입니다.", + "LabelTonemappingPeak": "톤 매핑 피크 :", + "LabelTonemappingThresholdHelp": "톤 매핑 알고리즘 매개 변수는 각 장면별로 미세 조정됩니다. 그리고 임계 값은 장면이 변경되었는지 여부를 감지하는 데 사용됩니다. 현재 프레임 평균 밝기와 현재 실행 평균 사이의 거리가 임계 값을 초과하면 장면 평균과 최고 밝기를 다시 계산합니다. 권장 및 기본값은 0.8 및 0.2입니다.", + "LabelTonemappingThreshold": "Tonemapping 임계값 :", + "LabelTonemappingDesatHelp": "이 밝기 수준을 초과하는 하이라이트에는 채도를 낮추십시오. 매개 변수가 높을수록 더 많은 색상 정보가 보존됩니다. 이 설정은 대신 (부드럽게) 흰색으로 바뀌어 수퍼 하이라이트의 색상이 부 자연스럽게 날아가는 것을 방지합니다. 이렇게하면 범위를 벗어난 색상에 대한 정보를 줄이는 대신 이미지가 더 자연스럽게 느껴집니다. 권장 및 기본값은 0과 0.5입니다.", + "LabelTonemappingDesat": "톤 매핑 desat:", + "TonemappingRangeHelp": "출력 색상 범위를 선택합니다. 자동은 입력 범위와 동일합니다.", + "LabelTonemappingRange": "Tonemapping 범위 :", + "TonemappingAlgorithmHelp": "톤 매핑을 미세 조정할 수 있습니다. 이러한 옵션에 익숙하지 않은 경우 기본값을 유지하십시오. 권장 값은 Reinhard입니다.", + "LabelTonemappingAlgorithm": "사용할 톤 매핑 알고리즘을 선택합니다:", + "EnableBlurHashHelp": "아직 로드 중인 이미지는 고유한 자리 표시자와 함께 표시됩니다.", + "WeeklyAt": "{0} 요일에 {1}", + "PersonRole": "{0}(으)로", + "Bwdif": "BWDIF", + "ShowIndicatorsFor": "다음에 대한 표시기 표시 :", + "ResumeAt": "{0}에서 재생", + "MessageChangeRecordingPath": "녹음 폴더를 변경해도 기존 녹음은 이전 위치에서 새 위치로 마이그레이션되지 않습니다. 원하는 경우 수동으로 이동해야합니다.", + "Premieres": "첫날", + "AllowTonemappingHelp": "톤 매핑은 원본 장면을 표현하는 데 매우 중요한 정보 인 이미지 세부 정보와 색상을 유지하면서 HDR에서 SDR로 비디오의 동적 범위를 변환 할 수 있습니다. 현재는 HDR10 또는 HLG 메타 데이터가 포함 된 비디오를 트랜스 코딩 할 때만 작동합니다. 재생이 부드럽 지 않거나 실패하면 해당 하드웨어 디코더를 끄십시오.", + "EnableTonemapping": "톤 매핑 활성화", + "LabelOpenclDeviceHelp": "이것은 톤 매핑에 사용되는 OpenCL 장치입니다. 점의 왼쪽은 플랫폼 번호이고 오른쪽은 플랫폼의 장치 번호입니다. 기본값은 0.0입니다. OpenCL 하드웨어 가속 방법이 포함 된 ffmpeg 응용 프로그램 파일이 필요합니다.", + "LabelOpenclDevice": "OpenCL 장치:", + "LabelColorPrimaries": "원색:", + "LabelColorTransfer": "색상 이동:", + "LabelColorSpace": "컬러 스페이스:", + "LabelVideoRange": "비디오 길이:", + "MediaInfoColorPrimaries": "원색", + "MediaInfoColorTransfer": "색상 이동", + "MediaInfoColorSpace": "컬러 스페이스", + "MediaInfoVideoRange": "비디오 길이", + "ButtonPlayer": "플레이어", + "ButtonCast": "캐스트", + "EnableBlurHash": "이미지에 blurred placeholders 사용", + "UnsupportedPlayback": "Jellyfin은 DRM으로 보호되는 콘텐츠의 암호를 해독 할 수 없지만 보호 된 제목을 포함하여 모든 콘텐츠가 시도됩니다. 일부 파일은 암호화 또는 대화 형 제목과 같은 기타 지원되지 않는 기능으로 인해 완전히 검은 색으로 나타날 수 있습니다.", + "OnApplicationStartup": "애플리케이션 시작시", + "EveryXHours": "매 {0}시간", + "EveryHour": "매시간", + "EveryXMinutes": "매 {0} 분마다", + "OnWakeFromSleep": "잠에서 깨어날 때", + "DailyAt": "매일 {0}", + "LastSeen": "마지막으로 본 {0}", + "ListPaging": "{0}-{1} 의 {2}", + "WriteAccessRequired": "Jellyfin에 이 폴더에 대한 쓰기 권한이 필요합니다. 쓰기 권한을 확인하고 다시 시도하십시오.", + "PathNotFound": "경로를 찾을 수 없습니다. 경로가 유효한지 확인하고 다시 시도하십시오.", + "Yadif": "YADIF", + "XmlTvMovieCategoriesHelp": "이러한 범주의 프로그램은 영화로 표시됩니다. 여러 개를 '|'로 구분하십시오.", + "XmlTvKidsCategoriesHelp": "이러한 범주의 프로그램은 어린 이용 프로그램으로 표시됩니다. 여러 개를 '|'로 구분하십시오.", + "XmlDocumentAttributeListHelp": "이러한 속성은 모든 XML 응답의 루트 요소에 적용됩니다.", + "Writers": "작가", + "ViewAlbumArtist": "앨범 아티스트 보기", + "VideoAudio": "비디오 오디오", + "Video": "비디오", + "Vertical": "세로", + "UserAgentHelp": "사용자 정의 사용자 에이전트 HTTP 헤더를 제공하십시오.", + "UseDoubleRateDeinterlacingHelp": "이 설정은 종종 bob 디인터레이싱이라고하는 디인터레이싱시 필드 속도를 사용합니다. 이는 비디오의 프레임 속도를 두 배로 늘려 TV에서 인터레이스 비디오를 볼 때와 같은 풀 모션을 제공합니다.", + "UseDoubleRateDeinterlacing": "디인터레이스시 프레임 속도 두 배", + "TvLibraryHelp": "{0} TV 이름 지정 가이드 {1}를 검토하세요.", + "ThumbCard": "미리보기 카드", + "Thumb": "미리보기", + "TheseSettingsAffectSubtitlesOnThisDevice": "이 설정은이 기기의 자막에 영향을 줍니다", + "TabRepositories": "저장소", + "SyncPlayAccessHelp": "이 사용자가 SyncPlay 기능에 대한 액세스 수준을 선택합니다. SyncPlay를 사용하면 다른 장치와 재생을 동기화 할 수 있습니다.", + "Subtitle": "자막", + "SubtitleDownloadersHelp": "우선 순위에 따라 선호하는 자막 다운로더를 활성화하고 순위를 매 깁니다.", + "SubtitleAppearanceSettingsDisclaimer": "이러한 설정은 그래픽 자막 (PGS, DVD 등) 또는 자체 스타일이 포함 된 ASS / SSA 자막에는 적용되지 않습니다.", + "SpecialFeatures": "특별한 기능", + "SmartSubtitlesHelp": "오디오가 외국어 인 경우 언어 기본 설정과 일치하는 자막이 로드됩니다.", + "Smaller": "소문자", + "SmallCaps": "작은 대문자", + "SkipEpisodesAlreadyInMyLibraryHelp": "가능한 경우 시즌 및 에피소드 번호를 사용하여 에피소드를 비교합니다.", + "Filter": "필터", + "New": "새로운", + "ShowMore": "자세히보기", + "ShowLess": "간략히보기", + "SettingsWarning": "이러한 값을 변경하면 불안정하거나 연결 실패가 발생할 수 있습니다. 문제가 발생하면 기본값으로 다시 변경하는 것이 좋습니다.", + "SeriesDisplayOrderHelp": "방송 날짜, DVD 순서 또는 절대 번호로 에피소드를 설정하십시오.", + "SelectServer": "서버 선택", + "SelectAdminUsername": "관리자 계정의 사용자 이름을 선택하십시오.", + "Season": "시즌", + "ScanForNewAndUpdatedFiles": "새 파일 및 업데이트 된 파일 검색", + "SaveSubtitlesIntoMediaFoldersHelp": "비디오 파일 옆에 자막을 저장하면보다 쉽게 관리 할 수 있습니다.", + "SaveChanges": "변경 사항을 저장하다", + "Restart": "재시작", + "ResetPassword": "패스워드 리셋", + "ReplaceAllMetadata": "모든 메타데이터 교체", + "RepeatOne": "반복", + "RefreshDialogHelp": "메타 데이터는 대시 보드에서 활성화 된 설정 및 인터넷 서비스를 기반으로 새로 고쳐집니다." } From ef4370bf3bbbc73df48abb2f0e80d274cb2ad3df Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Mon, 21 Sep 2020 10:23:50 +0000 Subject: [PATCH 121/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 94 ++++++++++++++++++++++++++++++++++++--------- 1 file changed, 76 insertions(+), 18 deletions(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index 4162eaff65..85ac283006 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -131,8 +131,8 @@ "AroundTime": "Khoảng", "Anytime": "Bất cứ lúc nào", "AnyLanguage": "Ngôn Ngữ Bất Kỳ", - "AlwaysPlaySubtitlesHelp": "Phụ đề phù hợp với sở thích ngôn ngữ sẽ được tải bất kể ngôn ngữ âm thanh.", - "AlwaysPlaySubtitles": "Luôn hiển thị phụ đề", + "AlwaysPlaySubtitlesHelp": "Phụ đề phù hợp với tùy chọn ngôn ngữ sẽ được tải bất kể ngôn ngữ âm thanh là gì.", + "AlwaysPlaySubtitles": "Luôn luôn Phát", "AllowedRemoteAddressesHelp": "Danh sách địa chỉ IP được phân tách bằng dấu phẩy hoặc các mục IP/netmask cho các mạng sẽ được phép kết nối từ xa. Nếu để trống, tất cả các địa chỉ sẽ được cho phép.", "AllowRemoteAccessHelp": "Nếu không được chọn, tất cả các kết nối từ xa sẽ bị chặn.", "AllowRemoteAccess": "Cho phép kết nối từ xa đến Máy chủ Jellyfin.", @@ -153,7 +153,7 @@ "AdditionalNotificationServices": "Duyệt qua danh mục plugin để cài đặt các dịch vụ thông báo bổ sung.", "AddedOnValue": "Đã thêm {0}", "AddToPlaylist": "Thêm vào danh sách phát", - "AddToPlayQueue": "Thêm vào hàng đợi", + "AddToPlayQueue": "Thêm vào hàng đợi phát", "Absolute": "Tuyệt đối", "ButtonSend": "Gửi", "ButtonSelectView": "Chọn chế độ xem", @@ -195,7 +195,7 @@ "ColorPrimaries": "Những màu chủ đạo", "Collections": "Bộ Sưu Tập", "ClientSettings": "Cài đặt thiết bị phát", - "CinemaModeConfigurationHelp": "Chế độ Cinema giúp bạn mang lại trải nghiệm rạp chiếu phim ngay tại phòng khách với khả năng phát trailers và những đoạn mở đầu tuỳ chọn trước phần chính của bộ phim.", + "CinemaModeConfigurationHelp": "Chế độ Rạp Chiếu Phim mang lại trải nghiệm rạp chiếu phim ngay tại phòng khách với khả năng phát trailers và những đoạn mở đầu tuỳ chọn trước phần chính của bộ phim.", "ChannelNumber": "Kênh số", "Channels": "Các Kênh", "ChannelNameOnly": "Chỉ kênh {0}", @@ -327,7 +327,7 @@ "ErrorGettingTvLineups": "Có lỗi xảy ra khi tải danh sách TV này. Hãy thử lại khi chắc chắn rằng thông tin của bạn chính xác.", "ErrorDeletingItem": "Có lỗi xảy ra khi xoá mục này khỏi máy chủ Jellyfin. Hãy kiểm tra xem máy chủ Jellyfin có quyền ghi/xoá vào thư mục đa phương tiện và thử xóa lại sau.", "ErrorAddingXmlTvFile": "Có lỗi xảy ra khi truy cập tài liệu XMLTV. Hãy thử lại khi chắc chắn rằng tài liệu này tồn tại.", - "ErrorAddingTunerDevice": "Có lỗi xảy ra khi thêm vào thiết bị bắt sóng này. Hãy thử lại khi chắc chắn rằng nó có thể truy cập.", + "ErrorAddingTunerDevice": "Đã xảy ra lỗi khi thêm thiết bị dò. Hãy đảm bảo rằng nó có thể truy cập được và thử lại.", "ErrorAddingMediaPathToVirtualFolder": "Có lỗi xảy ra khi thêm đường dẫn phương tiện này. Vui lòng đảm bảo đường dẫn chính xác và Jellyfin được phép truy cập vào vị trí đó.", "ErrorAddingListingsToSchedulesDirect": "Có lỗi xảy ra khi thêm danh sách này vào tài khoản Schedules Direct của bạn. Schedules Direct chỉ cho phép một số lượng danh sách nhất định mỗi tài khoản. Bạn có thể cần phải đăng nhập vào trang web của Schedules Direct và xoá những danh sách khác trước khi có thể thêm danh sách mới.", "Episodes": "Tập", @@ -376,7 +376,7 @@ "HeaderMediaFolders": "Thư Mục Chứa Nội Dung", "HeaderMedia": "Nội Dung", "HeaderLoginFailure": "Đăng Nhập Không Thành Công", - "HeaderLiveTvTunerSetup": "Cài Đặt Bộ Bắt Sóng TV", + "HeaderLiveTvTunerSetup": "Thiết lập Bộ dò TV Trực tiếp", "HeaderLibrarySettings": "Cài Đặt Thư Viện", "HeaderLibraryOrder": "Thứ Tự Thư Viện", "HeaderLibraryFolders": "Thư Mục Của Thư Viện", @@ -544,7 +544,7 @@ "HeaderTypeText": "Nhập nội dung", "HeaderTypeImageFetchers": "Trình tải hình ảnh tự động cho {0}", "HeaderTuners": "Bộ Điều Khiển Thu Phát Sóng", - "HeaderTunerDevices": "Thiết Bị Bắt Sóng", + "HeaderTunerDevices": "Thiết Bị Dò", "HeaderTranscodingProfileHelp": "Thêm hồ sơ chuyển mã để chỉ ra những định dạng nên dùng khi cần chuyển mã.", "HeaderTranscodingProfile": "Hồ Sơ Chuyển Mã", "LabelEnableAutomaticPortMap": "Kích hoạt tính năng tự động kết nối các port", @@ -696,7 +696,7 @@ "LabelMaxStreamingBitrate": "Chất lượng phát tối đa:", "LabelMaxScreenshotsPerItem": "Số lượng ảnh chụp tối đa mỗi mục:", "LabelMaxResumePercentageHelp": "Nội dung sẽ được cho là đã kết thúc nếu ngừng phát sau thời gian này.", - "ButtonSyncPlay": "SyncPlay", + "ButtonSyncPlay": "Đồng Bộ Phát", "LabelPasswordConfirm": "Mật khẩu (xác nhận):", "LabelPassword": "Mật khẩu:", "LabelNotificationEnabled": "Bật thông báo này", @@ -710,7 +710,7 @@ "SubtitleVerticalPositionHelp": "Số dòng nơi văn bản xuất hiện. Số dương cho biết từ trên xuống. Số âm cho biết từ dưới lên.", "Movies": "Phim", "Photos": "Ảnh", - "Playlists": "Danh Sách Chơi", + "Playlists": "Danh sách phát", "Shows": "Các Chương Trình", "Songs": "Các Bài Hát", "Sync": "Đồng Bộ", @@ -756,7 +756,7 @@ "LabelTVHomeScreen": "Màn hình chính chế độ TV:", "OptionProtocolHttp": "HTTP", "OptionPlainVideoItemsHelp": "Tất cả các video được trình bày trong DIDL như \"object.item.videoItem\" thay vì một loại cụ thể hơn, chẳng hạn như \"object.item.videoItem.movie\".", - "OptionPlainVideoItems": "Hiển thị tất cả video dưới dạng các mục video thuần túy", + "OptionPlainVideoItems": "Hiển thị tất cả video dưới dạng các mục video đơn giản", "OptionPremiereDate": "Ngày công chiếu", "OptionProtocolHls": "Luồng Trực Tiếp HTTP", "OptionRandom": "Ngẫu Nhiên", @@ -888,9 +888,9 @@ "MessageNoTrailersFound": "Cài đặt kênh đoạn giới thiệu để nâng cao trải nghiệm phim của bạn bằng cách thêm thư viện đoạn giới thiệu trên internet.", "MessageNoServersAvailable": "Không có máy chủ nào được tìm thấy bằng cách sử dụng tính năng khám phá máy chủ tự động.", "MessageNoPluginsInstalled": "Bạn chưa cài đặt plugin nào.", - "MessageNoMovieSuggestionsAvailable": "Hiện tại không có bộ phim nào được đề xuất. Hãy bắt đầu xem và xếp hạng các bộ phim của bạn, sau đó quay lại để xem các đề xuất của bạn.", + "MessageNoMovieSuggestionsAvailable": "Hiện tại không có phim nào được đề xuất. Hãy bắt đầu xem và xếp hạng các bộ phim của bạn, sau đó quay lại để xem các đề xuất của bạn.", "MessageNoGenresAvailable": "Cho phép một số bên cung cấp dữ liệu lấy các thể loại từ internet.", - "MessageNoCollectionsAvailable": "Bộ sưu tập cho phép bạn thưởng thức các nhóm Phim, Bộ và Album được cá nhân hóa. Nhấp vào nút + để bắt đầu tạo bộ sưu tập.", + "MessageNoCollectionsAvailable": "Bộ sưu tập giúp bạn thưởng thức các nhóm Phim, Phim Bộ và Album được tùy chỉnh theo cách của bạn. Bấm nút + để tạo bộ sưu tập.", "MessageAddRepository": "Nếu bạn muốn thêm kho lưu trữ, hãy nhấp vào nút bên cạnh tiêu đề và điền thông tin được yêu cầu.", "LabelRepositoryNameHelp": "Tên tùy chỉnh để phân biệt kho lưu trữ này với bất kỳ kho lưu trữ nào khác được thêm vào máy chủ của bạn.", "LabelRepositoryName": "Tên kho lưu trữ", @@ -1047,8 +1047,8 @@ "OptionEnableAccessFromAllDevices": "Bật cho phép truy cập từ tất cả các thiết bị", "OptionDownloadImagesInAdvanceHelp": "Theo mặc định, hầu hết các hình ảnh chỉ được tải xuống khi khách hàng yêu cầu. Bật tùy chọn này để tải xuống trước tất cả các hình ảnh khi phương tiện mới được nhập. Điều này có thể khiến quá trình quét thư viện lâu hơn đáng kể.", "OptionDownloadImagesInAdvance": "Tải xuống hình ảnh nâng cao", - "OptionDisplayFolderViewHelp": "Hiển thị các thư mục cùng với các thư viện phương tiện khác của bạn. Điều này có thể hữu ích nếu bạn muốn có chế độ xem thư mục đơn giản.", - "OptionDisplayFolderView": "Hiển thị chế độ xem thư mục để hiển thị các thư mục phương tiện thuần túy", + "OptionDisplayFolderViewHelp": "Hiển thị các thư mục cùng với các thư viện phương tiện khác của bạn. Nó có thể hữu ích nếu bạn muốn xem thư mục đơn giản.", + "OptionDisplayFolderView": "Hiển thị chế độ xem thư mục để hiển thị các thư mục phương tiện đơn giản", "OptionDisableUserHelp": "Máy chủ sẽ không cho phép bất kỳ kết nối nào từ người dùng này. Các kết nối hiện có sẽ bị chấm dứt đột ngột.", "OptionDateAddedImportTime": "Sử dụng ngày đã quét vào thư viện", "OptionDateAddedFileTime": "Sử dụng ngày tạo tệp", @@ -1250,12 +1250,12 @@ "PleaseConfirmPluginInstallation": "Vui lòng nhấp vào OK để xác nhận bạn đã đọc ở trên và muốn tiếp tục cài đặt plugin.", "PleaseAddAtLeastOneFolder": "Vui lòng thêm ít nhất một thư mục vào thư viện này bằng cách nhấp vào nút Thêm.", "Played": "Đã Phát", - "PlaybackErrorNoCompatibleStream": "Ứng dụng khách này không tương thích với phương tiện và máy chủ không gửi định dạng phương tiện tương thích.", + "PlaybackErrorNoCompatibleStream": "Ứng dụng khách không tương thích với phương tiện và máy chủ không gửi định dạng phương tiện tương thích.", "PlayNextEpisodeAutomatically": "Tự động phát tập tiếp theo", - "PlayNext": "Lượt tiếp theo", + "PlayNext": "Phát kế tiếp", "PlayFromBeginning": "Phát từ đầu", "PlayCount": "Số lần phát", - "PlaybackRate": "Tỷ lệ phát lại", + "PlaybackRate": "Tốc độ phát lại", "PlaybackData": "Dữ liệu phát lại", "PlayAllFromHere": "Phát tất cả từ đây", "Play": "Phát", @@ -1263,5 +1263,63 @@ "TabNetworking": "Kết Nối Mạng", "WizardCompleted": "Đó là tất cả những gì chúng ta cần bây giờ. Jellyfin đã bắt đầu thu thập thông tin về thư viện phương tiện của bạn. Kiểm tra một số ứng dụng của chúng tôi, sau đó nhấp vào Hoàn thành để xem Trang tổng quan.", "TabDashboard": "Trang tổng quan", - "LabelScheduledTaskLastRan": "Lần cuối chạy {0}, mất{1}." + "LabelScheduledTaskLastRan": "Lần cuối chạy {0}, mất{1}.", + "UseDoubleRateDeinterlacingHelp": "Cài đặt này sử dụng giá trị tỉ lệ khi khử xen kẽ, thường được gọi là khử xen kẽ bob, tăng gấp đôi tốc độ khung hình của video để cung cấp chuyển động đầy đủ như những gì bạn sẽ thấy khi xem video xen kẽ trên TV.", + "UseDoubleRateDeinterlacing": "Tăng gấp đôi tốc độ khung hình khi khử xen kẽ", + "TvLibraryHelp": "Xem lại {0} hướng dẫn đặt tên TV {1}.", + "Tuesday": "Thứ ba", + "Transcoding": "Chuyển mã", + "Trailers": "Đoạn giới thiệu", + "TabAccess": "Truy cập", + "SystemDlnaProfilesHelp": "Cấu hình hệ thống ở chế độ chỉ đọc. Các thay đổi đối với cấu hình hệ thống sẽ được lưu vào cấu hình tùy chỉnh mới.", + "Sports": "Thể thao", + "SpecialFeatures": "Các tính năng đặc biệt", + "SortName": "Sắp xếp tên", + "SortChannelsBy": "Sắp xếp các kênh theo:", + "SmallCaps": "Chữ hoa nhỏ", + "MediaInfoCodecTag": "Thẻ mã hóa", + "TitleHostingSettings": "Cài đặt máy chủ", + "TitleHardwareAcceleration": "Tăng tốc phần cứng", + "Thursday": "Thứ năm", + "ThumbCard": "Thẻ ảnh thu nhỏ", + "Thumb": "Ảnh thu nhỏ", + "TheseSettingsAffectSubtitlesOnThisDevice": "Các cài đặt này ảnh hưởng đến phụ đề trên thiết bị này", + "ThemeVideos": "Video Giao diện", + "ThemeSongs": "Bài hát Giao diện", + "TagsValue": "Thẻ: {0}", + "Tags": "Thẻ", + "TabStreaming": "Luồng", + "TabScheduledTasks": "Công việc đã lên lịch", + "TabResponses": "Phản hồi", + "TabParentalControl": "Kiểm soát của cha mẹ", + "TabOther": "Khác", + "TabNotifications": "Thông báo", + "TabNfoSettings": "Cài đặt NFO", + "TabMusic": "Nhạc", + "TabLogs": "Nhật ký", + "TabCodecs": "Bộ giải mã", + "TabRepositories": "Kho lưu trữ", + "TabAdvanced": "Nâng cao", + "Suggestions": "Đề xuất", + "Subtitles": "Phụ đề", + "Subtitle": "Phụ đề", + "SubtitleDownloadersHelp": "Bật và xếp hạng các trình tải xuống phụ đề ưa thích của bạn theo thứ tự ưu tiên.", + "SubtitleAppearanceSettingsDisclaimer": "Các cài đặt này sẽ không áp dụng cho phụ đề đồ họa (PGS, DVD, v.v.) hoặc phụ đề ASS / SSA được nhúng kiểu riêng của chúng.", + "StopRecording": "Dừng ghi", + "LabelSubtitleVerticalPosition": "Vị trí dọc:", + "LabelMaxMuxingQueueSize": "Kích cỡ hàng đợi phát ngẫu nhiên tối đa:", + "SubtitleAppearanceSettingsAlsoPassedToCastDevices": "Các cài đặt này áp dụng cho mỗi lần bắt đầu phát lại Chromecast trên thiết bị này.", + "SyncPlayAccessHelp": "Chọn cấp độ truy cập cho người dùng này vào tính năng Phát Đồng Bộ. Phát Đồng Bộ cho phép đồng bộ phát lại với các thiết bị khác.", + "TabDirectPlay": "Phát Trực Tiếp", + "TitlePlayback": "Phát lại", + "Unplayed": "Chưa Phát", + "UserProfilesIntro": "Jellyfin hỗ trợ hồ sơ người dùng bao gồm cài đặt hiển thị chi tiết, trạng thái phát và kiểm soát của phụ huynh.", + "ViewPlaybackInfo": "Xem thông tin phát lại", + "XmlTvKidsCategoriesHelp": "Các chương trình có các danh mục này sẽ được hiển thị dưới dạng chương trình dành cho trẻ em. Phân tách nhiều bằng '|'.", + "XmlTvMovieCategoriesHelp": "Các chương trình có các danh mục này sẽ được hiển thị dưới dạng phim. Phân tách nhiều bằng '|'.", + "XmlTvNewsCategoriesHelp": "Các chương trình có các danh mục này sẽ được hiển thị dưới dạng chương trình tin tức. Phân tách nhiều bằng '|'.", + "XmlTvSportsCategoriesHelp": "Các chương trình có các danh mục này sẽ được hiển thị dưới dạng chương trình thể thao. Phân tách nhiều với '|'.", + "UnsupportedPlayback": "Jellyfin không thể giải mã nội dung được DRM bảo vệ nhưng sẽ được cố gắng giải mã tất cả nội dung, bao gồm cả các tiêu đề được bảo vệ. Một số tệp có thể xuất hiện hoàn toàn màu đen do mã hóa hoặc các tính năng không được hỗ trợ, chẳng hạn như tiêu đề tương tác.", + "EnableBlurHashHelp": "Hình ảnh đang được tải sẽ được hiển thị với một trình giữ chỗ duy nhất.", + "ButtonPlayer": "Trình Phát" } From 0057e10ae852128d9679938b6aa4b785969688cb Mon Sep 17 00:00:00 2001 From: pucherot Date: Mon, 21 Sep 2020 12:14:02 +0000 Subject: [PATCH 122/365] Translated using Weblate (Spanish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/es/ --- src/strings/es.json | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/src/strings/es.json b/src/strings/es.json index 76ac4a9249..3fbaaa6709 100644 --- a/src/strings/es.json +++ b/src/strings/es.json @@ -1370,5 +1370,24 @@ "LabelIconMaxResHelp": "Máxima resolución de los iconos expuesta a través de la propiedad upnp:icon.", "LabelAlbumArtMaxResHelp": "Máxima resolución del material artístico del álbum expuesta a través de la propiedad upnp:albumArtURI.", "Other": "Otro", - "VideoAudio": "Vídeo Audio" + "VideoAudio": "Vídeo Audio", + "ThumbCard": "Tarjeta miniatura", + "QuickConnectNotActive": "Conexión Rápida no está activa en este servidor", + "QuickConnectNotAvailable": "Pídale al administrador del servidor que habilite la Conexión Rápida", + "QuickConnectInvalidCode": "Código de Conexión Rápida incorrecto", + "QuickConnectDescription": "Para iniciar sesión con Conexión Rápida, pulse el botón Conexión Rápida en el dispositivo desde el que está iniciando sesión e ingrese el código que se muestra a continuación.", + "QuickConnectDeactivated": "Conexión Rápida se desactivo antes que se pudiera aprobar la solicitud de inicio de sesión", + "QuickConnectAuthorizeFail": "Código de Conexión Rápida desconocido", + "QuickConnectAuthorizeSuccess": "Solicitar autorización", + "QuickConnectAuthorizeCode": "Introducir código de identificación", + "QuickConnectActivationSuccessful": "Activado satisfactoriamente", + "QuickConnect": "Conexión Rápida", + "LabelQuickConnectCode": "Código de Conexión Rápida:", + "LabelKnownProxies": "Proxies conocidos:", + "LabelCurrentStatus": "Estado actual:", + "KnownProxiesHelp": "Lista separada por comas de las direcciones IP de los proxies que se utilizan al conectarse a su Jellyfin. Esto es necesario para hacer un uso adecuado de los cabeceras X-Forwarded-For. Requiere reiniciar después de guardar.", + "EnableQuickConnect": "Activar \"Conexión Rápida\" en este servidor", + "ButtonUseQuickConnect": "Conexión Rápida", + "ButtonActivate": "Activar", + "Authorize": "Autorizar" } From 44ff21c8030ff368501d71ac6fba5d8c9b8b8557 Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Mon, 21 Sep 2020 12:13:52 +0000 Subject: [PATCH 123/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 83 ++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 78 insertions(+), 5 deletions(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index 85ac283006..28d1a6c3c4 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -99,7 +99,7 @@ "ButtonGotIt": "Hiểu rồi", "ButtonFullscreen": "Toàn màn hình", "ButtonForgotPassword": "Quên mật khẩu", - "ButtonEditOtherUserPreferences": "Chỉnh sửa thông tin, hình ảnh và sở thích cá nhân.", + "ButtonEditOtherUserPreferences": "Chỉnh sửa hồ sơ, hình ảnh và sở thích cá nhân của người dùng này.", "ButtonChangeServer": "Đổi máy chủ", "ButtonBack": "Lùi", "ButtonAudioTracks": "Track âm thanh", @@ -702,9 +702,9 @@ "LabelNotificationEnabled": "Bật thông báo này", "LabelNewsCategories": "Chuyên mục tin tức:", "LabelStable": "Ổn Định", - "LabelTonemappingAlgorithm": "Chọn thuật toán ánh xạ Tone màu để sử dụng:", - "TonemappingAlgorithmHelp": "Ánh xạ Tone màu có thể được tinh chỉnh. Nếu bạn không quen với tùy chọn này, hãy giữ mặc định.
    Giá trị mặc định: Reinhard.", - "TonemappingRangeHelp": "Chọn dải màu đầu ra. Tự động là giống như dải màu đầu vào.", + "LabelTonemappingAlgorithm": "Chọn thuật toán ánh xạ tông màu để sử dụng:", + "TonemappingAlgorithmHelp": "Ánh xạ tông màu có thể được tinh chỉnh. Nếu bạn không quen với tùy chọn này, hãy giữ mặc định. Giá trị mặc định: Reinhard.", + "TonemappingRangeHelp": "Chọn dải màu đầu ra. Tự động nghĩa là giống như dải màu đầu vào.", "StopPlayback": "Dừng Phát", "Preview": "Xem Trước", "SubtitleVerticalPositionHelp": "Số dòng nơi văn bản xuất hiện. Số dương cho biết từ trên xuống. Số âm cho biết từ dưới lên.", @@ -1321,5 +1321,78 @@ "XmlTvSportsCategoriesHelp": "Các chương trình có các danh mục này sẽ được hiển thị dưới dạng chương trình thể thao. Phân tách nhiều với '|'.", "UnsupportedPlayback": "Jellyfin không thể giải mã nội dung được DRM bảo vệ nhưng sẽ được cố gắng giải mã tất cả nội dung, bao gồm cả các tiêu đề được bảo vệ. Một số tệp có thể xuất hiện hoàn toàn màu đen do mã hóa hoặc các tính năng không được hỗ trợ, chẳng hạn như tiêu đề tương tác.", "EnableBlurHashHelp": "Hình ảnh đang được tải sẽ được hiển thị với một trình giữ chỗ duy nhất.", - "ButtonPlayer": "Trình Phát" + "ButtonPlayer": "Trình Phát", + "LabelOpenclDeviceHelp": "Đây là thiết bị OpenCL được sử dụng để chỉnh tông màu. Phía bên trái của dấu chấm là số nền tảng và phía bên phải là số thiết bị trên nền tảng. Giá trị mặc định là 0,0. Tệp ứng dụng ffmpeg có chứa phương pháp tăng tốc phần cứng OpenCL là bắt buộc.", + "LabelMaxMuxingQueueSizeHelp": "Số gói tối đa có thể được lưu vào bộ đệm trong khi chờ tất cả các luồng khởi tạo. Hãy thử tăng nó lên nếu bạn vẫn gặp lỗi \"Quá nhiều gói được lưu vào bộ đệm cho luồng đầu ra\" trong nhật ký ffmpeg. Giá trị được đề xuất là 2048.", + "ClearQueue": "Xóa hàng đợi", + "LabelTonemappingParamHelp": "Điều chỉnh thuật toán ánh xạ tông màu. Các giá trị được đề xuất và mặc định là NaN. Nói chung là để trống.", + "LabelTonemappingParam": "Tham số ánh xạ tông màu:", + "LabelTonemappingPeakHelp": "Ghi đè tín hiệu / không đáng kể / đỉnh tham chiếu với giá trị này. Hữu ích khi thông tin đỉnh được nhúng trong siêu dữ liệu hiển thị không đáng tin cậy hoặc khi ánh xạ tông màu từ dải thấp hơn đến dải cao hơn. Các giá trị được đề xuất và mặc định là 0.", + "LabelTonemappingPeak": "Đỉnh ánh xạ tông màu:", + "LabelTonemappingThresholdHelp": "Các thông số thuật toán ánh xạ tông màu được tinh chỉnh theo từng cảnh. Và một ngưỡng được sử dụng để phát hiện xem cảnh có thay đổi hay không. Nếu khoảng cách giữa độ sáng trung bình của khung hình hiện tại và mức trung bình chạy hiện tại vượt quá giá trị ngưỡng, chúng tôi sẽ tính toán lại độ sáng trung bình của cảnh và độ sáng cao nhất. Các giá trị được đề xuất và mặc định là 0,8 và 0,2.", + "LabelTonemappingThreshold": "Ngưỡng ánh xạ tông màu:", + "LabelTonemappingDesat": "Khử bão hòa tông màu:", + "LabelTonemappingDesatHelp": "Áp dụng khử bão hòa cho các vùng sáng vượt quá mức độ sáng này. Thông số này càng cao thì thông tin màu càng được bảo toàn. Cài đặt này giúp ngăn các màu bị lóa không tự nhiên để tạo ra những vùng siêu nổi bật, bằng cách (trơn tru) chuyển thành màu trắng. Điều này làm cho hình ảnh cảm thấy tự nhiên hơn, với chi phí là giảm thông tin về các màu nằm ngoài phạm vi. Các giá trị được đề xuất và mặc định là 0 và 0,5.", + "LabelTonemappingRange": "Phạm vi ánh xạ tông màu:", + "AllowTonemappingHelp": "Ánh xạ tông màu có thể chuyển đổi dải động của video từ HDR sang SDR trong khi vẫn duy trì chi tiết và màu sắc của hình ảnh, đây là những thông tin rất quan trọng để thể hiện cảnh gốc. Hiện chỉ hoạt động khi chuyển mã video với siêu dữ liệu HDR10 hoặc HLG được nhúng. Nếu quá trình phát lại không mượt mà hoặc không thành công, vui lòng xem xét việc tắt bộ giải mã phần cứng tương ứng.", + "EnableTonemapping": "Bật Ánh xạ tông màu", + "LabelOpenclDevice": "Thiết bị OpenCL:", + "LabelColorPrimaries": "Màu cơ bản:", + "LabelColorTransfer": "Chuyển màu:", + "LabelColorSpace": "Không gian màu:", + "LabelVideoRange": "Phạm vi video:", + "MediaInfoColorPrimaries": "Màu cơ bản", + "MediaInfoColorTransfer": "Chuyển màu", + "MediaInfoColorSpace": "Không gian màu", + "MediaInfoVideoRange": "Phạm vi video", + "ButtonCast": "Diễn viên", + "EnableBlurHash": "Bật làm mờ trình giữ chỗ cho hình ảnh", + "OnApplicationStartup": "Khi khởi động ứng dụng", + "EveryXHours": "Mỗi {0} giờ", + "EveryHour": "Mỗi tiếng", + "EveryXMinutes": "Mỗi {0} phút", + "OnWakeFromSleep": "Khi thức dậy sau giấc ngủ", + "WeeklyAt": "{0}s tại {1}", + "DailyAt": "Hàng ngày lúc {0}", + "LastSeen": "Xem lần cuối {0}", + "PersonRole": "với tư cách là {0}", + "ListPaging": "{0}-{1} của {2}", + "WriteAccessRequired": "Jellyfin yêu cầu quyền ghi vào thư mục này. Hãy đảm bảo quyền ghi và thử lại.", + "PathNotFound": "Không thể tìm thấy đường dẫn. Vui lòng đảm bảo đường dẫn hợp lệ và thử lại.", + "Yesterday": "Hôm qua", + "Yes": "Đúng", + "XmlTvPathHelp": "Đường dẫn đến tệp XMLTV. Jellyfin sẽ đọc tệp này và kiểm tra định kỳ để cập nhật. Bạn chịu trách nhiệm tạo và cập nhật tệp.", + "XmlDocumentAttributeListHelp": "Các thuộc tính này được áp dụng cho phần tử gốc của mọi phản hồi XML.", + "Whitelist": "Danh sách trắng", + "WelcomeToProject": "Chào mừng đến với Jellyfin!", + "Wednesday": "Thứ tư", + "Watched": "Đã xem", + "ViewAlbumArtist": "Xem album nghệ sĩ", + "ViewAlbum": "Xem album", + "VideoAudio": "Âm thanh Video", + "Vertical": "Theo chiều dọc", + "ValueVideoCodec": "Mã hóa Video: {0}", + "ValueTimeLimitSingleHour": "Giới hạn thời gian: 1 giờ", + "ValueTimeLimitMultiHour": "Giới hạn thời gian: {0} giờ", + "ValueSongCount": "{0} bài hát", + "ValueSeriesCount": "{0} Bộ Phim", + "ValueSeconds": "{0} giây", + "ValueOneSong": "1 bài hát", + "ValueOneSeries": "1 Bộ", + "ValueOneMusicVideo": "1 video âm nhạc", + "ValueOneMovie": "1 phim", + "ValueOneEpisode": "1 tập", + "ValueMusicVideoCount": "{0} video nhạc", + "ValueMovieCount": "{0} phim", + "ValueEpisodeCount": "{0} tập", + "ValueDiscNumber": "Đĩa {0}", + "ValueConditions": "Điều kiện: {0}", + "ValueCodec": "Mã hóa: {0}", + "ValueAudioCodec": "Mã hóa âm thanh: {0}", + "UserAgentHelp": "Cung cấp phần đầu HTTP tác nhân người dùng tùy chỉnh.", + "Upload": "Tải lên", + "Up": "Lên", + "Unrated": "Chưa được xếp hạng", + "Unmute": "Bỏ tắt tiếng", + "Uniform": "Cùng một kiểu" } From fcc110447d8ad32717b551773923380295bc74c8 Mon Sep 17 00:00:00 2001 From: pucherot Date: Mon, 21 Sep 2020 13:38:30 +0000 Subject: [PATCH 124/365] Translated using Weblate (Spanish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/es/ --- src/strings/es.json | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/strings/es.json b/src/strings/es.json index 3fbaaa6709..9a7fb536f1 100644 --- a/src/strings/es.json +++ b/src/strings/es.json @@ -1389,5 +1389,20 @@ "EnableQuickConnect": "Activar \"Conexión Rápida\" en este servidor", "ButtonUseQuickConnect": "Conexión Rápida", "ButtonActivate": "Activar", - "Authorize": "Autorizar" + "Authorize": "Autorizar", + "LabelTonemappingThreshold": "Límite del mapeo de Tono:", + "LabelColorPrimaries": "Primarias de color:", + "MediaInfoColorPrimaries": "Primarias de color", + "TonemappingRangeHelp": "Seleccione la gama de colores de salida. Auto selecciona el mismo valor que la gama de entrada.", + "LabelTonemappingRange": "Rango de mapeo de Tono:", + "TonemappingAlgorithmHelp": "El mapeo de tonos se puede ajustar con precisión. Si no está familiarizado con estas opciones, mantenga la opción predeterminada. El valor recomendado es Reinhard.", + "LabelTonemappingAlgorithm": "Seleccione el algoritmo de mapeo de Tonos:", + "EnableTonemapping": "Habilitar mapeo de Tono", + "LabelOpenclDevice": "Dispositivo OpenCL:", + "LabelColorTransfer": "Transferencia de color:", + "LabelColorSpace": "Espacio de color:", + "LabelVideoRange": "Rango de video:", + "MediaInfoColorTransfer": "Transferencia de color", + "MediaInfoColorSpace": "Espacio de color", + "MediaInfoVideoRange": "Rango de video" } From 56a04d8e0782c4ce8db78130d987063577d11b5f Mon Sep 17 00:00:00 2001 From: pucherot Date: Mon, 21 Sep 2020 14:22:15 +0000 Subject: [PATCH 125/365] Translated using Weblate (Spanish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/es/ --- src/strings/es.json | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/strings/es.json b/src/strings/es.json index 9a7fb536f1..f760af180e 100644 --- a/src/strings/es.json +++ b/src/strings/es.json @@ -1075,7 +1075,7 @@ "Descending": "Descendiente", "DirectStreamHelp1": "El tipo de archivo (H.264, AC3, etc.) y la resolución son compatibles con el dispositivo, pero no el contenedor (mkv, avi, wmv, etc.). El vídeo será re-empaquetado al vuelo antes de transmitirlo al dispositivo.", "DirectStreamHelp2": "La transmisión directa del archivo usa muy poco procesamiento sin mínima pérdida de calidad en el vídeo.", - "Director": "Dirección de", + "Director": "Dirección", "Directors": "Directores", "Display": "Visualización", "DisplayInMyMedia": "Mostrar en la pantalla de inicio", @@ -1404,5 +1404,9 @@ "LabelVideoRange": "Rango de video:", "MediaInfoColorTransfer": "Transferencia de color", "MediaInfoColorSpace": "Espacio de color", - "MediaInfoVideoRange": "Rango de video" + "MediaInfoVideoRange": "Rango de video", + "LabelMaxMuxingQueueSize": "Tamaño máximo de la cola de entremezclado:", + "LabelTonemappingParamHelp": "Ajuste el algoritmo de mapeo de Tono. El valor recomendado y predeterminados es NaN. Generalmente déjelo en blanco.", + "LabelTonemappingParam": "Parámetros del mapeo de Tono:", + "LabelTonemappingPeak": "Pico del mapeo de Tono:" } From 545d062873d9b1279db6a8ab75ac11a25384d07a Mon Sep 17 00:00:00 2001 From: Thomas Schwery Date: Mon, 21 Sep 2020 17:05:43 +0000 Subject: [PATCH 126/365] Translated using Weblate (French) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fr/ --- src/strings/fr.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings/fr.json b/src/strings/fr.json index ee1af587a7..bf80687183 100644 --- a/src/strings/fr.json +++ b/src/strings/fr.json @@ -1379,7 +1379,7 @@ "LabelTonemappingRange": "Gamme de mappage tonal :", "TonemappingAlgorithmHelp": "Le mappage tonal peut être affiné. Si vous n'êtes pas familier avec ces options, gardez les valeurs par défaut. La valeur recommandée est Reinhard.", "LabelTonemappingAlgorithm": "Sélectionnez l'algorithme de mappage tonal à utiliser :", - "AllowTonemappingHelp": "Le mappage tonal peut transformer la gamme dynamique d'une vidéo de HDR à SDR tout en maintenant les détails et les couleurs d'image qui sont des informations importantes pour la représentation de la scène originale. Actuellement, ne fonctionne uniquement lorsque le décodeur NVENC HEVC est utilisé et que des vidéos HDR10 ou HLG sont transcodées.", + "AllowTonemappingHelp": "Le mappage tonal peut transformer la gamme dynamique d'une vidéo de HDR à SDR tout en maintenant les détails et les couleurs d'image qui sont des informations importantes pour la représentation de la scène originale. Actuellement, ne fonctionne uniquement lorsque des vidéos avec des métadonnées HDR10 ou HLG sont transcodées. Si la lecture n'est pas fluide ou échoue, considérez d'éteindre le décodeur matériel correspondant.", "EnableTonemapping": "Activer le mappage tonal", "LabelOpenclDeviceHelp": "Ce dispositif OpenCL est utilisé pour le mappage tonal. La partie à gauche du point est le numéro de plate-forme et la partie à droite est le numéro du dispositif sur la plate-forme. La valeur par défaut est 0.0. Le fichier de l'application ffmpeg contenant l'accélération matérielle OpenCL est nécessaire.", "LabelOpenclDevice": "Dispositif OpenCL :", From 7f8019d01f73a235edbd3e7872cf44310ce013e1 Mon Sep 17 00:00:00 2001 From: Nelson Tham Date: Mon, 21 Sep 2020 19:04:42 +0000 Subject: [PATCH 127/365] Translated using Weblate (Chinese (Traditional)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/zh_Hant/ --- src/strings/zh-tw.json | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/strings/zh-tw.json b/src/strings/zh-tw.json index f65bd6b91a..54d8593590 100644 --- a/src/strings/zh-tw.json +++ b/src/strings/zh-tw.json @@ -1364,5 +1364,9 @@ "Photo": "相片", "LabelIconMaxResHelp": "透過 upnp:icon 屬性使用的圖示最高解析度。", "LabelAlbumArtMaxResHelp": "透過 upnp:albumArtURI 屬性使用的專輯封面最高解析度。", - "Other": "其它" + "Other": "其它", + "EnableQuickConnect": "在此服務器上啟用快速連接", + "ButtonUseQuickConnect": "使用快速連接", + "ButtonActivate": "啟用", + "Authorize": "授權" } From 746793ec6f5576c3e5cad0d0f07e663c88d012d4 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 21 Sep 2020 20:37:27 +0000 Subject: [PATCH 128/365] Bump sortablejs from 1.10.2 to 1.12.0 Bumps [sortablejs](https://github.com/SortableJS/Sortable) from 1.10.2 to 1.12.0. - [Release notes](https://github.com/SortableJS/Sortable/releases) - [Commits](https://github.com/SortableJS/Sortable/commits) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index d0d0e796e0..44b81ed2d2 100644 --- a/package.json +++ b/package.json @@ -80,7 +80,7 @@ "query-string": "^6.13.2", "resize-observer-polyfill": "^1.5.1", "screenfull": "^5.0.2", - "sortablejs": "^1.10.2", + "sortablejs": "^1.12.0", "swiper": "^6.2.0", "webcomponents.js": "^0.7.24", "whatwg-fetch": "^3.4.1" diff --git a/yarn.lock b/yarn.lock index f88fa8b0f0..4199b1779d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10300,10 +10300,10 @@ sort-keys@^2.0.0: dependencies: is-plain-obj "^1.0.0" -sortablejs@^1.10.2: - version "1.10.2" - resolved "https://registry.yarnpkg.com/sortablejs/-/sortablejs-1.10.2.tgz#6e40364d913f98b85a14f6678f92b5c1221f5290" - integrity sha512-YkPGufevysvfwn5rfdlGyrGjt7/CRHwvRPogD/lC+TnvcN29jDpCifKP+rBqf+LRldfXSTh+0CGLcSg0VIxq3A== +sortablejs@^1.12.0: + version "1.12.0" + resolved "https://registry.yarnpkg.com/sortablejs/-/sortablejs-1.12.0.tgz#ee6d7ece3598c2af0feb1559d98595e5ea37cbd6" + integrity sha512-bPn57rCjBRlt2sC24RBsu40wZsmLkSo2XeqG8k6DC1zru5eObQUIPPZAQG7W2SJ8FZQYq+BEJmvuw1Zxb3chqg== source-list-map@^2.0.0: version "2.0.1" From 1350cbc4e4d30118e874e1ea173e842a85fe16f7 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 21 Sep 2020 20:39:00 +0000 Subject: [PATCH 129/365] Bump html-webpack-plugin from 4.4.1 to 4.5.0 Bumps [html-webpack-plugin](https://github.com/jantimon/html-webpack-plugin) from 4.4.1 to 4.5.0. - [Release notes](https://github.com/jantimon/html-webpack-plugin/releases) - [Changelog](https://github.com/jantimon/html-webpack-plugin/blob/master/CHANGELOG.md) - [Commits](https://github.com/jantimon/html-webpack-plugin/compare/v4.4.1...v4.5.0) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index d0d0e796e0..216273a584 100644 --- a/package.json +++ b/package.json @@ -40,7 +40,7 @@ "gulp-sass": "^4.0.2", "gulp-sourcemaps": "^2.6.5", "gulp-terser": "^1.4.0", - "html-webpack-plugin": "^4.4.1", + "html-webpack-plugin": "^4.5.0", "lazypipe": "^1.0.2", "node-sass": "^4.13.1", "postcss-loader": "^3.0.0", diff --git a/yarn.lock b/yarn.lock index f88fa8b0f0..f9373a8e2e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5569,10 +5569,10 @@ html-tags@^3.1.0: resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-3.1.0.tgz#7b5e6f7e665e9fb41f30007ed9e0d41e97fb2140" integrity sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg== -html-webpack-plugin@^4.4.1: - version "4.4.1" - resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-4.4.1.tgz#61ab85aa1a84ba181443345ebaead51abbb84149" - integrity sha512-nEtdEIsIGXdXGG7MjTTZlmhqhpHU9pJFc1OYxcP36c5/ZKP6b0BJMww2QTvJGQYA9aMxUnjDujpZdYcVOXiBCQ== +html-webpack-plugin@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-4.5.0.tgz#625097650886b97ea5dae331c320e3238f6c121c" + integrity sha512-MouoXEYSjTzCrjIxWwg8gxL5fE2X2WZJLmBYXlaJhQUH5K/b5OrqmV7T4dB7iu0xkmJ6JlUuV6fFVtnqbPopZw== dependencies: "@types/html-minifier-terser" "^5.0.0" "@types/tapable" "^1.0.5" From c17a9d36adc1fbc86083af30dd373261b6d1c13b Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 21 Sep 2020 20:39:46 +0000 Subject: [PATCH 130/365] Bump webpack from 4.44.1 to 4.44.2 Bumps [webpack](https://github.com/webpack/webpack) from 4.44.1 to 4.44.2. - [Release notes](https://github.com/webpack/webpack/releases) - [Commits](https://github.com/webpack/webpack/compare/v4.44.1...v4.44.2) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 15 +++++---------- 2 files changed, 6 insertions(+), 11 deletions(-) diff --git a/package.json b/package.json index d0d0e796e0..7b114f7b9e 100644 --- a/package.json +++ b/package.json @@ -50,7 +50,7 @@ "stylelint-config-rational-order": "^0.1.2", "stylelint-no-browser-hacks": "^1.2.1", "stylelint-order": "^4.1.0", - "webpack": "^4.44.1", + "webpack": "^4.44.2", "webpack-merge": "^4.2.2", "webpack-stream": "^6.1.0", "worker-plugin": "^5.0.0" diff --git a/yarn.lock b/yarn.lock index f88fa8b0f0..d064761701 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1297,12 +1297,7 @@ ajv-errors@^1.0.0: resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" integrity sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ== -ajv-keywords@^3.1.0, ajv-keywords@^3.4.1: - version "3.4.1" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.4.1.tgz#ef916e271c64ac12171fd8384eaae6b2345854da" - integrity sha512-RO1ibKvd27e6FEShVFfPALuHI3WjSVNeK5FIsmme/LYRNxjKuNj+Dt7bucLa6NdSv3JcVTyMlm9kGR84z1XpaQ== - -ajv-keywords@^3.5.2: +ajv-keywords@^3.1.0, ajv-keywords@^3.4.1, ajv-keywords@^3.5.2: version "3.5.2" resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== @@ -12002,10 +11997,10 @@ webpack-stream@^6.1.0: vinyl "^2.1.0" webpack "^4.26.1" -webpack@^4.26.1, webpack@^4.44.1: - version "4.44.1" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.44.1.tgz#17e69fff9f321b8f117d1fda714edfc0b939cc21" - integrity sha512-4UOGAohv/VGUNQJstzEywwNxqX417FnjZgZJpJQegddzPmTvph37eBIRbRTfdySXzVtJXLJfbMN3mMYhM6GdmQ== +webpack@^4.26.1, webpack@^4.44.2: + version "4.44.2" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.44.2.tgz#6bfe2b0af055c8b2d1e90ed2cd9363f841266b72" + integrity sha512-6KJVGlCxYdISyurpQ0IPTklv+DULv05rs2hseIXer6D7KrUicRDLFb4IUM1S6LUAKypPM/nSiVSuv8jHu1m3/Q== dependencies: "@webassemblyjs/ast" "1.9.0" "@webassemblyjs/helper-module-context" "1.9.0" From eeb5c84ae7a3b5371f1216e2dc25ef2739043817 Mon Sep 17 00:00:00 2001 From: Andrew Rabert Date: Mon, 21 Sep 2020 17:46:51 -0400 Subject: [PATCH 131/365] Optimize images Used: - `oxipng --zopfli --opt max --strip all` - `jpegoptim --all-progressive --strip-all` --- src/assets/img/avatar.png | Bin 3571 -> 1637 bytes src/assets/img/icon-transparent.png | Bin 39651 -> 23534 bytes src/assets/splash/ipad_splash.png | Bin 44353 -> 30256 bytes src/assets/splash/ipad_splash_l.png | Bin 44006 -> 32817 bytes src/assets/splash/ipadpro1_splash.png | Bin 48759 -> 35139 bytes src/assets/splash/ipadpro1_splash_l.png | Bin 46324 -> 35577 bytes src/assets/splash/ipadpro2_splash.png | Bin 58190 -> 41737 bytes src/assets/splash/ipadpro2_splash_l.png | Bin 53247 -> 42460 bytes src/assets/splash/ipadpro3_splash.png | Bin 50458 -> 36223 bytes src/assets/splash/ipadpro3_splash_l.png | Bin 47044 -> 36299 bytes src/assets/splash/iphone5_splash.png | Bin 27006 -> 20176 bytes src/assets/splash/iphone5_splash_l.png | Bin 32486 -> 20616 bytes src/assets/splash/iphone6_splash.png | Bin 29236 -> 21658 bytes src/assets/splash/iphone6_splash_l.png | Bin 34037 -> 21777 bytes src/assets/splash/iphoneplus_splash.png | Bin 42934 -> 28756 bytes src/assets/splash/iphoneplus_splash_l.png | Bin 42309 -> 32056 bytes src/assets/splash/iphonex_splash.png | Bin 42405 -> 31878 bytes src/assets/splash/iphonex_splash_l.png | Bin 44968 -> 34548 bytes src/assets/splash/iphonexr_splash.png | Bin 31989 -> 23870 bytes src/assets/splash/iphonexr_splash_l.png | Bin 36913 -> 26684 bytes src/assets/splash/iphonexsmax_splash.png | Bin 46402 -> 31165 bytes src/assets/splash/iphonexsmax_splash_l.png | Bin 44271 -> 34109 bytes src/themes/purplehaze/bg.jpg | Bin 300045 -> 198076 bytes src/touchicon512.png | Bin 38341 -> 25694 bytes src/touchicon72.png | Bin 3524 -> 3516 bytes 25 files changed, 0 insertions(+), 0 deletions(-) diff --git a/src/assets/img/avatar.png b/src/assets/img/avatar.png index 0453f2489704e37852b32a4d0e0a50e01dca422a..4023d1c5c7775388429a9f7b252fe0971320b75e 100644 GIT binary patch literal 1637 zcmah~Yg7^j6h_kwkxcM`nE3+K#KOYT9;5~#p=tI~$5hN$Cnd(L~<_wl5cnvT@f9w0^hPmM*5?i&39;e%v458|R3%T6eJ_u|)QmS^v9JJD~} zhp_=xiM-sY)vuEd`!9C{PyfilM7MEC(>SW`Trkn}u9SObdK(pXYQVqXa$B)~A3=6; zN#uc60X_=JY~X!wQCRH#HlIaYU1uF@+@IGCsJ9Q;L5mS1Nic7BQf-tJNf3IiBb|-P zM0yJ!Lnw`+hLX-~>zPMp)|v>2q;ir6=nbB^W?1fA|tmTv1RX0y^47f&D9UJ6P zJA0yvR3S|5|Dn{B<1#y1g-Wl`DIY2^O*^_sE6{h`obqnIb&|bzc09pc^xnDsY>Sv3 zG#CK_9U9?aM+VbOHrjzVwnVURkytKhn36O&$p9T%%)=)2rH$BkB+oVb+ypG!Xni`rTS@<^*N4+zu5$GXPU|fqWK3Xa1+C+`Y z|A_;k3z&7hplLm&(&2oK(u|Q#mIogEv}t)W#j&oj-)WhBMoj(J6)MY{TYvgHi~nv zC6BO6XHbX7$9hnxw~?QnM^uJw$B1qP9~3r?^}(Q51D`OCLpZq}IS{CgTXt_XvU(!X z`4>MXQU6}zPRkd=L0gm?x=JcRUo|2P7|7f?+(X1ckmvc9JY~`SZWX1&J6WVf$r-+svP600w#>E`_IW`kFrqRKHd)GD zU4}5jfnN3f-u)C=hX$X1t#qWIfdQCHDvZY0WG_gIp`#}(SnEcz#yyH|hWJ3t=dkJ~ ztJ2j0>M;2#DR+-nY8&8sF%dl>en=qB^rCYnOQAJ(cR6Or(XQ4a& zFbmRIx4`$pbF@yR?{1yPb)h!EsqJi;h7U7%97Q5)FGY@Z4^tR&c{I)W~rKFR))3Km62hmhdRz2vuLZ;;N2XAM)}UcU;kU zWol=RxS`76RbY0!aO<5r*a*<{!1Z|PzJcr$0b6E zJffsXt(R!rolngC;QZ*~j2&*U*SOD`SvJ&3e$iCbmKtOZJ+LHl?bF{!*f9kpZz1wG zd&+nO&jbW9)VUeKa8dBeL(dCI+ZDVmF~LDn)|8@7V6-)us73VB$-1$V>ph2fUPxNr z0{TjpeXdnyk%{^4`3~!*oAT_l3@#;_p)wn@+a5Aj-EFN+zHa40=c1dX`EqMst8|uo z;Z4fwK~K{WeyWkDoU^=RcyXOAK==Pb|H~6tBlx%nkq^#P9xJA;RV2a@e7#RZ+P|1? B&~pF) literal 3571 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 literal 44353 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 diff --git a/src/assets/splash/ipadpro1_splash.png b/src/assets/splash/ipadpro1_splash.png index 9e7fdb7f6ce019d91498406c42a623475c59af02..c5afa50986f7d924a7cdd2c5bb8ea7aa136e179e 100755 GIT binary patch literal 35139 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

    @A?+Li)u_6FKmVst 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 diff --git a/src/assets/splash/ipadpro1_splash_l.png b/src/assets/splash/ipadpro1_splash_l.png index cffad337c811429b1f2523f3668eb606e892f969..f5ef6f3b04e730471a66500bad91b8a4c3df92ef 100644 GIT binary patch literal 35577 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

    U-_NlbzOR84Z5yYy`In2uvV2vzUHU#TuPMt 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 HYT*9>=33PG literal 46324 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 }7S_n<6b=h)2J) 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 diff --git a/src/assets/splash/ipadpro2_splash_l.png b/src/assets/splash/ipadpro2_splash_l.png index 588902a2b11e245b70891f8ab006bfe66e1c28fa..ec17e3e81ba170ade85e1b3101ac3f71aad6fc81 100644 GIT binary patch literal 42460 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 E2Z(mOaR2}S literal 53247 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�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 m0VnxeZchAeuzzQmMkz>n1degzdf)Y~wNHSN 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 A3IG5A diff --git a/src/assets/splash/ipadpro3_splash_l.png b/src/assets/splash/ipadpro3_splash_l.png index a0b6c569044fcd00d5c61210c5c13bd2de528137..df275b3448414fe6f50b791a78d56426fdfd8fb1 100644 GIT binary patch literal 36299 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 BlvMx# literal 47044 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 DI+fct;FUaW_K`+vP2wSj^A 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 G{67H8m1$N0 literal 27006 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 diff --git a/src/assets/splash/iphone5_splash_l.png b/src/assets/splash/iphone5_splash_l.png index 28fa8838e12158ec07a6912c1ae2ab97f77a2da9..789f50f62822fa4ff46ccb08627d507dca25334a 100644 GIT binary patch literal 20616 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

    S@BgKmf6Z#V;aMtlVsf^}b;I(mCnWPi@aYTc< z1zElvemx@Pm?3-Aej!#>H2o8Z9b;bLrW}3~;)Z2;m*TwE)C1750p@eJ%Rez1SUn;V zVQHf&N}-LW3V?Nd<=o|cNyz_H9;Yu5y00yO^J&g1;OThtO%`0vrB?Kht<~*;Uk$=A zC2j(F2Y{t`9{&e5QX~TCv{stOzyX{Icr_zsC)HW~HHO)%I6s?g{g0V%^qRXUpiajC zQ~Ebk8FCSC5gB1Xb>aorrh<->Xgl~+NHTGvkq{89Z;&>G_o2Xhtq@a;Xiz7~8!sMp zhp#0`f!Cmv)Jd)?!H5j~UJTPtRf~QZ?0D_98i_};1;cbgwYSzM7`%IYcI#nId&A}` zUsckKgfyXF0=&|6>lp^$V@9C`fcYpf;Rv91Q5oh2y9wD~*-;Ov&V#t|!nFZ#2?9D~ z#byeZp-}L+LZ!=R6$8xn0^QP(op2$Czf+5zUoS~$>`oK~_lvIjV2Xar&fi!&_;UYg#BP@NC z+9kmU9(`E_#8l$JWNVN;xO3o2*vVLg0i;f%VS3Pb=9 zz1LkTgMWkTX^DEkx|!hOkm6JmIt^Gj1)%c=XkO$R3NXx1J%BrFYSB%!K0uKC{GHOL zP{inr??~yF?yUmua7r@R+w7ATT?VWi#3JW4!g?_syaxbQQv-bOdKbLmV6F#W%oWxtuZn1P5c zs^8zn^~bgJD`m>F80KVjC^*2)$7s=Qg#1@G%_!G=N{ha6Se($Ixf(#)5v+0UFhRaog{9zQKXlu;N=TR0mAzC4;bm5CNGi6w?0oV>pZ8Mc-hvk@&Sj3D4ijt@@HJBDfUpRU-ZVETdQc6zd(Yt%*I>M6RIY96v>IBAeo2V+1%`>t1^}DKzaK%e zjIxKX5u2&bk|3}hLC@OQWU4Ru@f?2y@YK(P076RiEvl~OMG(81*Y|-_h9Vr9HnF*D z)@(J>z-0+SBT4`~+eo9(BI8Oxi%gp>c@PyN0&Jdr0>Iy0`_U6TnmS?bcR$b#`k}*s;crxqu2O6awpwNtEIY-N($Qh=!(weZobKV^bHL!?PNPE5}!~FUp zlHJ0NPF;HoeEyWmU;~dH-xq<1H!8ps1px5tqOW{3Hmy6cSR3kZaqty*Ap&CJmn<5s zGv5AAOw=~)P8m2pv82=s*}F0U!^DFTd>;@I@o#04rp3s#9Uu&3PQ)Na1AB*d3y09W z*rLv&yTIXKW(njCxNm9XO3LLyKCIY_3Bjg=uB$eP%>V>1hkfPr1qa(>B=CA2_p-J; z^B}damZZ%#BMOC{AavN1fazqqDOD?X42{~QWR$hGtn-{l(|sO90}B6-NNiln9`JKd z?%TjP6LrFa9RBQzO%cKE-rC5MH*dN-F3Mjhg3CA+eEfL}Ti0<3oTr05NC1n@0hbg5 z1+*Gu&m!o+KxhZ{|k{Nfs zT^dLc3*KTm{1FCl&qzQ|oWZyu`@qXHjC2)JvHIFb z&aj}%0N=_BpT||6wc)HdhwY<7>h*v*K~8&e+%R;11mmG*n@ z`Nx6xRsY^P(&&oXf>sXe zFR*Fjw(htqIY8)tr@yXQb#`y=5&G2S!kd4pWI_cmwxk4EUWu)<^Snrz3zLvD#MRC*N?<<3tcXy>D3a>PU3QaCp~P zu*L(PDBF|a35@*&8Jr{B5XjR|@quX#UL&Qwj|+<|#XfoO%IUaqAR?m20fmy6$c&tOyla z-*vNcnPdOlXj}_Ds_m*1{f%8sTe|8*tU2ovTKRt0OS05+-Y(|tKNQD(8ih->809%wMg-v9K+|NQ$uJ@LQz;^w3OJT)}*zmE7HzPS15 zKdte<`y%w{zuDElj`$zG2ragP8^HL#`JuW0>KDZRZ~uTASnQMT40GUd5a;XdpF7c< z+y2K2Z9vTZ*B>+cH*5Z1{*Kze8Sx#+ynmf~^OJx5(YOEKU;Gb0Be&;=-zOc`I;%lo P2AHan`mOXEcc1+qt@_Ld literal 32486 zcmeFZcT`hdw>P>G6$KHIrc^~ir5k!z0qN3vF9E5c1VRTNr8f}*(h;OL={-TESLvNd z??HMecjtMZ^WJmrINx`_asR!CF&twjtUcFSbN$vVzd12f^^GhkF)c9w0HpGA(&_+k z)d>Ku1l+g+e&eluuLJ;YY1&9hsY=_pI@z0f0)Sj7QU{@_adhT~m3#GL_OFO<>(@Z3V*n6P$mNq?3E+~~h-F%@1cVTMWZ|HuywXAtz(pYkbqQD_ZMF(B zWFz_4wb1FI}_wip=um1ttX=Y-Dd#TTvgWTMCc)WHs-k0nM}-yxD$u(+DeYRN&VWVCYwj?l)s?K z?)FYZp~~lw>f-u+m!NW%7gulYssTIb-5o7q=$$X)RRdM+2k&>4xRRa`0md=#c%_tB z_Lb}M+1HpIze@AiJ|3GH=_Qf_FAAG~&MDVlz>CkTmyw)8Km-ZHy?a9Yg47lFgiJ}C zL@wLt?FhCGnkTle66=ND%_0aOxLs)mQ0O*ak8*k^DmEAV;)D5>`HvsqN`XM#(+{_J zd5B2Vq7;f+M21aytIeOF+9fJ~-*_|sB&D6ju$=*(NvARptmC0_=W6(`$NM)aeti1& zDCH*NNAisauR`B4zmt0c38jDa>S>5@i;gr)SyJA^>N}(@WGxTpA3I0YDowL8-Vtvh znP-rXq5Vo=^JX$OOCAOZiC~WHcxHK9IF*B?yJN|cUrz zjvOjer#ed+9hL>jvsZZCo5hyLR*+_!d0S&^SgRm*J$rUgNk4sgkgJl3;pLN|D_$bv z(Z;XGeu=JGo$~o2{azdmq~A-r#T&%?Gl9HQ&SH_ril^(oR>W4s`v~5MjR?m!cGg&% z7PzU`^GBc8dc>CPmm$lqml>CDE<>$oD$-lc6ThYCT^0#Zr?XfiD+Io|S435me5==k z4G)iSj7*RG7={c#whbRH7cgtnIjZt87PZ8~iJ+zj7zJoJv@ zYJa!TFF(KNOzl!2tenD|(vX549vLYf@g06r5I#bar&GACC0Tg+;-WYxEhzT7ibZ+Q zD~r0e+mRHsHT;)@!^4$hw}yLu#o2L<+5ZyD_B7dxj7N<=Etcc_GU`*TUu;#(uHRod zG3h?}a#Ev8v8u50$j)RKJ7TsmzVQcsEV2i;b-TSbJ-jwHGUhfEIm9_^l+&Pil!B!Y zk56kd&P!7*Re}}HK5OFgRlvMX&*lDwQ}9o|yno?HnDg%a%daofUS@wky3TOjH^?i< zf>h&{HSH)ZBmX8}X2fPBb0l$u_Ps6Mdb9n$@oAwBUCYMd+Ro#!oei^}!Pjn6kQUyn zwjMt)+g7S&{la>}TBxM2giRdGd6Pq-Z2j30B5pA$I&E5uar*uzZ0;-wXZt!yIFaRZ zufUY8`}ZQu^bfIVLtE7M^El7az!;efnY32@a0_bj_|tfTc=PV6_;ybJ63(4L?KeJy4xNOS6x3Gg`AVq$r`#a zr;4Sxq}rx(iNyA$^_j0k_9e(dUY|z9MHDf44$1sv>Bw%$9$5PRG)rwDi#pQw{(*hv z)@sB+;p>{{%f zZ47@L9?4I&$r@VDNmUV4rpc|b`UX*lR9o+>5T{l;svlWKcP_=kl$<|9 zT)XP>b2LbD7*lh^BPAXDSs(H8yXq_x`O%}(FzHl@S_vahe%~A=Nh2lGRVx^=UT2kBUn)lu==&RAdTQ6l@h|d*l+! z{By8MojoKKDOQ}R2eo`f`wbKO_TM+Fg|%I&`#gCB-(urETN;Zz9rhfS6MDCe@1RUq zUiJMr4@7gg7*%==beF25MGUQst22r=HvW{-bysykmjr3fIAA9t&c7*r+gyQ7qw+7UOg#^Gqo~r@1&S?8;))u}Y|jf)3*B@QO0fDA6*-=q z2#40mgpHhHQ62tj+dZ#7uh!GP_0{!J(rP+w$79u41J@>jT6dLHy_v!KF}gsyQhVa* z;mQdg*QI3yCJfzF#p0vr+T`myqP;x&sW`ei+ujb>ch(TJl{3X&<3IgyVxW%KY-R0w zX;6@nRf9I)r^v9jw3%3h$*IKR*(hs54ySj-p(eJ~xOEoe-*G=>Y)#W!^=zl&(mFb2PaLsoy`65*=bZ*a z{dS)F&CQ6W-~6-r7PabDcJQe``)5MCk%T++92u)4RdNaE+?_nxC>!I($f2A!mKT## zYd+MZO>@;=oR57n!C>^95}a%1)B2hU&a93$aJ=)9-Xh|n(GoX2o#xEue~KFYRg#OQ z!X18T*o;}uDrk?7rc0}p6dt4)bzM7>M%TR(j|!!hrleiC0B-QU;B%m*J@Q=&-w5kB0FCDQFA%%JrA|3-@*gP<_HP57l^J)j1mm< z{~o7U^1BHrG5j_V1ZvIem`o;d1ddMrJTG6yeh1Txn@)0it^hznf&WJUB&FN~fNNtm zn!0dZWhD^{m;;xYCCnVk<>3IPCg6{lq=%E4g&h?Bz#M9A<0#I&-GF9(U}GuHti!L& zqwFLFeQP7<!bgWAPsf3aItZM+rS(j;3b-w!`$HF%-~A@wFL*Ke~Wc= z{YOop!ni%moVcHJ@!+@g_drXFe~)u=bFu$>a!U(ts6EsH>IioQ$3Fk}Sf{rzIL!4e z?0+Hp-@pDZ6M(8!R{r-K|Ls~F9R59pD_q7M+{Ql&`EN(NYI-_Bxz(YrFgF(qsEj+f z%t!d$IEhHPK+WJV7fl$<{yz>%^*@&UKuQXKFhUQWDw|o@IO6y5>_5E)l{SMz#hJko z!kj$(oIHG*&-q1oghhDq&mufL{~D?cv$V1D{O^YH3yAOt{+FR3ZY<5 zU@i`3;I3^P%&ei@PL9^h5B{x75h<8G%mthnTpjPkuQ<)y`$!Hsj- z*jS2~3G?s>3kX?pn)C7Vaq{t6KIas&G=I)%#m{Rdz{_K0X=Wz$AMZ=UEZp$Ni+}%L zNVkMpfHMB?Ss_qz0Rc`3ginamOi-AQ(^62tir-?qmTcing4ko@fHdS{ofq^ zzh-xZS-}xzF3^|Opzi+95XSw#+JUQ?`~QCZ|7Yj;Er^{QtcEe-vc#*38iw z3ffU_X8ex0@fPP_$HV>qJh{Jr_n)lOe+&mr9{%y)wif*GZ)**81Vy`mwm44Zr!fH7 zYspK$)bvQ%nn9!(j(K8mD{nBU@oV22ny=`>?=*dU@cl}F7RTLZq3f;d@tfl=;aij} zWvSyQ!Y9ISQcUdIqa5^{4KvLTxMIy|ZibOwz42+aiL>ia;OMA*vv1m^uL;qY$~k`0 zh|}%e6#Fc`VxB*CF<*Cdzp$=O?{7b{q^NX+r@4UN`Z5`RKS*6=!+++H{-2Ma8vaKc z{{x2qxeNdQHU)7>*lVDHRF5q%5I`7N50y_URfO!5nn*Y={r(buc3t)~$J+(~Jjn9^ zfcMp)f`g&cUZf&cpC1;ElnV*rG!GA9sg{$FbpJiAk}i7svne;NZ^~k*Nf!Xx^m==H zhnlVfFSHbOJCoz5eUA!`dh%1bnX94l4;6&3Xw8*5$RjWlOk22ymFNqKGGc&-;tn{` zkc~|DDZ=4YNme5vBKT={^{|bCw7uQ=&Pf`DiT9ieMhN#~m>bL@o?M{p?pK@cAz2TbhUSRRqsBBXP^|*++WuERb15Qi#&59wkd( z_=U8X5l2}ObWfmqnA_uG-_=u8l4=S7Os~8H*C(?)>h5zGk1?7q*Pr%%LhgK+3a@xd z361L0^4=TNBB@6E9iBXN%)bICJ;ZOCt;lxfPk7C_qwAKTnqljTtx9O^_UFOMTrsG* zysvV18%u)<9PJlqPyhfLfiJEBpW$>C->>f?&WqOQjMz>esEVIxRsJk9K`b`gX<#;|5JzMF8R&saipA`%=c ziyxbrYINjpy2s6WS048<^e-3LZ1ye%B*lBKqL!pH|=ttlcx+ zOnzfQ=~Uh7#%b1KY(|YoCdjTZBaZI!_!<*QK8Vx&{H229O#l$YZ&iI7eM(4Xe8jt; zGAzYv9-%;^lU?4UpxZ54on6#3=gO^Zr3e7Wc;Fz94mTv+w+oKK{JlQFr~`$J*$|rb zSw;K#+A@I&)V(H8m}UE$?!u%%9N-a6<&G&h0>xh}sQgu~I<2-=4^eU1NJ2Y%z<;+~ zE4d&9G#SCuQI!{M!1{a4Jc$feisNUS5e@&b^C>sHs?v93(48S34jcI1ftoNb4Vvyy)_ma zYB~NfG$d<~N@wSpZ1zSMh?H)HBE!ms;np$kqqL|paD#?;@x;0l^_N3}K3vEi%Cz|B zmduBF`!{+^c9N^^hAtNL8N4y{IIzVC4@F)9e!l{zXc?KP-A`~lJxYW}ejrP{kt9Rz zrs-v>=S0Jvs8qb!coIpWLVC-H(?1Km<19Je1VDhDfreFI|ID8{!}>SUt~06Dn)M}0 zae7ZPl=#DcoQw>lxpYC-F}`R1d7b>Sv&;aX4+k~5T;93Ky?s1W9rR|(Ws!QTxv4{n zl^%mYeW_8Zta$o$|5Ii-vUiv}3GIi8k=;GiU2M7nWV`^Ec(1(WwB-O@W{Z8jqUCcv zYfu~tjZ_$$_Rqd-Hd#?TsB&H5gEI;pO6wV12b$l5Q0CcBJ4l}_Tje4rM|iU>e+(^u zolO+4+#;szV&`CNt{1vsZ4&lP2LOgal>rn84&T*xBil4be-A9|nvYUAiVMB!R@U-K z#(~c3dVRken%olu0JV4sL8r#6FRTT8N6YW3S!INWyi61_hS<6zCpB0K%1fdg+WXOi zKOeXO0pvO71VGo2Hs)lY7j4V(Y2N0z)}~zbMdDKGFwL*lLF9??pnDnXEMKA$+II|X zSG1v8d>aV31Dc5!_iYEOaGOE>BUZ#xg9p679z`qAAk4<459ILM4>LzJcSGqICof>? z&$uQ4ATCnz5&#DD(ovTtTy}cA&SdIKve{>tUk0qF&;BBpr13as8S4nEPl}Ik>l=#} zTi!+x0CxgFRfViO6iRq(e5z5h{Gt%0For~e@U_gWkGo>5xc6yp;Bsi?D3~7f0Q7it z$q7_pjxR|it*IK+Dahbbtdv8K=2bKkAg{B%yQT}ZR5VS7QA<66ggRbtY@)%4+HqRy z8gOGwyXJS6f!|0u>-ASclN!cJdX%&CEGDrDI<%Nl@o-UZFNJ-+`BPF+s@B-=Wj^r8y`t zt$tX#LTPDRJA?I&Wk!+1H~_d41S;l+OaCrny6pV>{7{G#>*K+Xp&ubjxAs3iq%ebK zbH$7NreZX3HHbetG!nvGX24sF7cpS290DmiWh43sFW{@l+^ND$)%o5MMg4LopRFB1?<|LUh4mQQg_HiQ2gb_^J~b74Tv%ZHWwn+ALloOH}pw zU0REiJKhgzhKzW;FiCt8bS*;R=nXksiM3K%T7MaCv?Y!xJIeroj90K}L<9hcK`aEk z=VY4MS9G;oX((OY>&p!BAXERkM!pWga1etoTAa;DE$4T-4EdcuNy#DzXI^l3c*pj% z&Tc{~S;YOG@?ZtCVcL_WCx=bEf)1F`+|}xGX`Ez;o|^l=})1< zxdJ#Zk;DVC#HTkJi8@`35H#MJUM+f*FA2Ddly>?uNjw4*ir_i!M|~Jo{~RhHL;tw| z1Mq-(7quZ#Rc6uP0pnux)~rYM_-NLLJ8IUOXVzO$%Z%sk2b2e$o}8SICsvf+003sZ z`X4ZFEIZCL?Gwaw{L4VVzSQ@)Ykwe3RE<{9iF+oU%Dl?SZd6q3wh_GCYmnsy177em zs}j7Zvg_dUgYR*N`p20>fG$ms5*kRq(yv8%FH!+^}5Qn z3b9-I^%`aDzzZaP)`Ru8y61nAqA3|0lEq$U4URyaWwX6kx%yoZWo=AE@iO<2jGqZ% zsHFs3TLUe-tAHjs2sF+756JVyWs~m56)5kIe}VByU-_Sh6s18<^31lVQ@Q`FYh zeW-?8)hlzuTK)c{*+XiKl1gdmxajH8=jLYB<) z(r$sj9#ZtRUzYz4KwKQA7sFOnFLc4k7Yuk_jL7SEM#CLbSF( zSpaD69~t)E^9;*?X7lpbU{6U~Z2@59A^!{s04P-mZCxPU5A+v zWSjXkaK8Gbf}39A!W@CIDcfA0JY;c5PH?kV%o&^v-|xDQWHe^Y+%SJeXl&3Pv@zP` ziz~$C>0Sj)t1FU{lXJaEfq?vqOz4&*W`~JF`_({Z;tkD$gs^B%73omToF-fs|1`|$ zE3Qrub+W%43qf%%teIcCmH2DcU+Xl)*m`0k zH~nm?9k+E!p%N8Ada5HKA^_i-s3it+MtwbtRTgD zdcD-gqMzwvbqP&NyGCY=>lpuS*Ul*Eeex&MlWuU0w!dMGFfCJj>6xp&f+X9_U|i^U z{P1X1RK)F6$p%3W5+Fbi?>t7#-MWLw?2jX~l&+vqL$w(kl-c1>&n!99iTv*1%hLgW z=gsrN0l`7vgJaaAXn3E=l&WYyKcNxbpU0I&MO^W`&qYj`Aq)UF2eQutFz?+T=9hvg$WPu^`%GAmlqW18A*86^j1W~?MAQF z;Df5YN&WZ)i9b5tiJ4%)X|^VtZ7>H7l`gNksDEGTJje9Ul?gm5Ivbw!OqQ96cdp6> zoqOET%QY*t5AjP5XR_Y7(+2MI{zh@D>PH5ff+}L-Lc=wd-?hscpY>H--;#DSqEQ@4 zOL|(tN}chvu-JitjzPjdhy({(IPhAS9vY04V=p!&E%Zv>yb+dSt=xL%d_msIK|CTZ zr#)MZ-kVRCaQn@^BiXdJ-#W&1kYb2>EBiwsM1Vww0ivc&(`~@IaF#lTx*VTt4<;&Y znV|y}0tSZxdR#Uv{$^)rhaQ1&kwu|XPVyk7kQ}9nR`uEUas4ak`W3Qt$^BH1DYiPN zla3Qbq6E%*;Y2wqZ8iOXyeW;=NTIIEtic)YqrS{P2`qOzh4-`>y|x;h1+N3O)cBRh zd!MbRPfV6&9mBm|XRE|TMnsdbd~JEgn8U}hi>?whDJ z#^e9?x9!o%7~3~NptUNmkpKbO6n zKbpNM_f5Lww*otB<`{UXK$rBvu55NNve)3-+;}pM4>D~KGeZDaaex-CM?YQ{?Xdvs z&9|XC=#^1>on06V?wliI0$HvZy54D7pATJ|Bb59mMsx?@X~1uHwBCQ|%+av6aNkE?Hrs!tRni~(tHuKRbU3@P zy>vg#sBG0r)C?)gHlsm3-Rd%+q*)5vT-^}&KAHbs+i(TwF$K;2=hVp!5y`rxu}`62 z^Q59W^We$`tUj8jWQUgru|z0(gyMiySRqgF7>onCr12i(!Ty=f59Ojf1)3YtR8UbHLj_5xKj~n0OS? zL*{%sJvyZ0xJK!$({S@Dm+7@<&oBeA-pe&5wvOu&!j`YZpkX@!522B+)FvpWZ!5by z9(3SFRYTW64m;xqZG|hN{vK~&do`}m+Uvu6zh8fq^z5S04dHHwT?76er;?M^yAG_$ z7fnpK*%PebBk046hvnjKr)q1HkQmMeiR8ZF)^QTRbU71@l`DGN1##<{IneAC(9K9Q zBDn_Yb#;guaJvKk1A=gt%c!2kt$|1F>3XwOyaqRT%fLYn?k71na(Jt>nZ2>cu77Vc z=nGy}S5Ebo0josY7$!}9mS~B6k2KMV`f7v%;vOU2X>z;&h63(n7ojTeOGtx0$imPv zGEfd!Kh*NJ&Fm3po6!;2Nt>e>(Xsc*v%%U9fr-Br7an+wiI#^=c9L7C+RYrq)@^@o z={uRU>S*iDZ3w2}7Bmtte6w=bj2icsvs5l=w!yTOV#G~{x8AtCkwHu=5h>@;urS6U z5l0MIF>sv_223o>ZAet391P~l*6;Fn!=l68Cg}>Np>_4~F<)k}6=w@rB7i6M*B8(zWLB7UZW)mYp%?lH zvk&8Rnrofh63wY)%8pk9bh-&-ctiViP1M8M|KO0FRb2+CZOCryN_4K zgFy9#3$q!0jiZ0v{`wNziTfoA&p%&M3H%Z>%OtkT^jbDJ91|*J`NLkbexoqU>3i7J zWWuaDiWF$RB?TH5J7Wv?zW0R^i>LAUOkA9*E_}(;6*_Tba@kFhaJyx)^KpaIPNenW zIrq)`kT0_tnL_GB{i5YRs3)AJxE~MkI}2O^J`3MdAOOZ1qhZf{|HNft=2JLwnILmp z=J`{Q$?}UQ=_iNb{>v)QczaLwO8Eu3Q+cgJ-Mv1z!ev#7`uXD@nd{9tvl*nzW%n~p zQTU4j0XDK=gj(W2w`_vW_6^=Jc!$qh=RM?S;zLzOXS|oY`!BxtsAyb^mOLTS@m8Tp zUw@q)4#J($Gt+A)HNnBh`sXxsRuZ(r*Fm@an>N1k)3)(h=)A^z#bILK+_&$k8?y#U zxFeTk(Z`$qwDfDdn6_bBM(o)@w4b%Ty|f#DmOFLemK|SULTE!z%yf~o?L~=6InrMX zBru2*&Iy|NH;dUZH4g9We!MHTQ3+j@{60F=y2}zg2qqH-%Ld$+C#YDJHcYqXI@2oS z{k4tFX{>`v9d|UP7B%sGq$3!ydYjtOPM(><^bwy9=5GB{~sJz^T|aKM?`uj@0QO z{qjSHwF|P95jZ$Tn0qL;*EZI3#N&I2y;vW}QlUzx9@JdrAdU&Ro#v%kk2U5Xufr~< zD_d`v+g|~AESuy=qvR)-hv3=Fc>SJZ;Ni7ybhSw4+We-4d)vE!AiCk3Ce2Z@q_foI2Dw zJRiG%man09i_FM(vkW&@z14hswneae^|y_+nou`!biBQf_s_@KfY=I{_=3Bc+)8wgzNU4AW^Zoz}Ty9SFr$SjQiQt7;- zg_Q?(LUIk|At!42ia(tBTlf-q26++?kG>zIsbez?FbWWAf8T7;7!1W7}m_2i5@ z&K)0?YNa{nGXi&DV94md^8{zZCwUjf#M?SPzDgl^c`;Avwl#YY{B%AKKIL1MK2$Iz z@e@uA)V{{&VS(rnmZF{%S zVkFTVK#%+1@}`^ix1hb5Av|wi3WopCu@B|kz0i^HFFVpq;q0*#*Ll-eo6Bb-HTK>0 znX6_!7a>iqMrG+Vg9Q<&W_-A1C*_-SGE241CUMZ4=@br9vpUP$=1rc5t+|-v`hm&P z`)4L6T@xDI?4VZE2}b<)Knqwxx{bmQ_y)`t1&2m>Ac?`7D2kmosOCQ#DO!4UG>}Z8hywgZfd& z@8>$4zqqk%FKS+6>Eq26#U#7_A0X{D3p>x=MxE0noc7%-#nBF8ybqUFSh>!_#ll~u zTr&e%RA^LbcukY!7!UU>D@cC_gCRR_8t1kFuHq*9^PQd}{`o5Fm@Y8o`?+G`dHB1= z!eK7S<@ZQws^~@7Rwxqc&+1~DSleAR_+15R8$WZtR_hI>V^nzW2p1KBnFv@%ZWxqQ z91?@{Nn>4wy@&lVxUVC&+VTF*%g$(=Dct_)D0pPcvsqazK2N)MQ7i zRdd)aVfzc(3&H&A9)2xvk4k;EQ(QHw+3!`*Csm&fYF}@8?`+riH!*$= zG>=puF#X*Da4$&eZLL?AP0)xu+tJ)3~(1LSo9!S9Q|Pem06z z+mVfNOjY~uuKF|5(G6HVRB2kvgF_QTIM4?g`9*dmj{wu__)x3o09%#b@z^L`VNs%v zyDGP_3ni`mJbb?W47a_;9z0)!(??{V{d%W^0&lK_H1a;OMBa$|GIAX%f{0;!l1{; zU&8w`!`bHMRqp6 zKma7vl%6;_v>mKTVQ&YyYu5Y!GSsE%7A>BlK1-Ioh_%7}&OaO-5k>e^7rSMPm&H`j z+!j0B_m@QM9M~8lQ<;3{+HnWfi1RPIcg10~{ItjtTKIG0c!%}X@zXwy{tKx_Wsvja zPV8RF!4nnETW+aLv&SSi?ap@zFr)(UhehJ%iM7FA4W;5!uE%F8OewR6ac)C7(bH~I zrDJ1#ZjJ>d?${(PSlQjt&LM7t)9BGu`->)PyJTv zFTTBr3Ft&7hJw{J0C2`b>H5iWyopWeHiwvYinZv^4=WP%7awmf5z%|*xP{B%ocb|h zCsU73=7{Zo%CRLj!NyhuiacL%j6B|vHh+1R6F<5n8!av#DPD;kD&^8UdjUc2%$8{D z7qg@(@=*zDdy@I7PPAZ>kX`!un@c|>^Z&#Hzz&|T?V&6*7%NTpZvyQL$0FU&VvaqZ zNHMmHDejBX%b2u#-O(&Da_EC7j4^6)`FG*{1Wwe+WrM$9Y(e7W2=W%Gq1V9^|A&(g zDX2h<`f9W*ZY47n*cj2<5dr}UAdT4^VH$ccTa_K{#QBKi+U>+U*6&c^Zs+sw(itzl z?95vzJRT&Q*_jHbu@C)3C`xVLh~q@3zfqZ5qLMW}@j9BgxNFuStq10}IxZs7FPIbc zf2^Ee`B$KN->m(Is7P}CIp(N8^A}m-ujl6+ZB`+UM^+ijP)Ef1k1W!w`@*%2_1#VDR?OA<{ z@S`@yD*!P*XS@Kp*ePxQjN{?4q;GNDCw-GMAn9Pl0d}439+alnxd_ePzNKg066tXLDu=&mJw^0t$uuuk-tgN2qD1s0ragy`NC7>4I6%AH9kyY{P&OM zD7#QQLz1cSdX#Sbu2{@Toh6%vf%>MX=drcgQ$eJX^>+Ok!q!%w)uD`F(^uu(xq~GM zYS1NtT}U${Bb%-PFAVXjdP7!nqAI{IK_Hg#{$VE8l=9Q-UwRE$JwvTtYvUHO z+}Q9kcd47~C!;gC5|pFyoQ?3&gZ%FGb$tZp1Xi?Gdlft1Nz>2h^=faR6UBGWQ?q_h zdcvcvPoO6my){R?30BI;Ko69o>}|9X6<8yRUcj2(1B)9-&lUQJ#b7l0Xs--mI={@x z1WQMxMp#GR07=`ps+v+v<&sov)%*)@CfvfnfZ4!e^ADVK!zT@coQ>aZo5!ZiQ*Tjl z-~|hwcbODxJk08BISzi7csub16B6rz{`ABcx0{XPeLe;=b#5Om-k5#%J>i*%$5009 zeT~gV@RW#vj!W^tEn{(C`1Y7v!b(2(0AG5Zqj0#!L{Jn1Q&BS`06fPF_bPg;*O0%} z_G97W?I42|wY6%L_=qTct!xZMX|WY#3yD0M-ra~t-g(xWdFN=dWtH)<0a#z2u09j2 z7#b+^+)G3=GS+UMM?E^Lvr=0vwYrs@hxM^;pIw3ZTIZB;&h8QbWq(i9=-Ml5*l$!E z`cLGu*}(1Z_ZI#Dd%eqQreV)ybfj8txSNt{>ls=9?8f@aO!=9h{g%<&SSY;qsMi{G zXJ6P<-K*0>vwn+ zrZ)Yin2j-%UFToL3o0o(rARQNb|X_?lV6!n9xd|zmPr!5xH?;U2xr;}oC4Q2hNSY> z(ifagw%aOb0YgAmywNx)BGRdY`QD@l<9&*D#r5RyE8VEQL6h;9zH#!;5q*Qn)jlmT zfx|j{uj!E`4Mh3hzB>r|=9Jkux5hKZIG_*5nW80ccfZ4CF+o6n3=E9rnJ1j5+UJWI z0n;e(9%wk6{goO{n?TJ-2j?M{e`HS69cy@)=Ck|zgvO!-Z5R)oaoa1+`DCNE#B>1- z18?m^D08(O1X*V@R%)9Yt&$Wjn=Xo2)EoOw)5^wd*ty0%WVsnCIa29`P(Dklr2~L_ zV9lgCuDr!-qw7c*kJQ?>+Pbb+5}Q@~gsiAFW!kKhnC+&0ot=1?`PnI1Wlf0-SYMC` zXPz91n7loEet1wghUUfAcO!nc<4hzZGsTYQo0Oc-{a0kw?~Z9bU+!;K~u*WcBr|t zk+a2A2-Cgie*s-X`ragdYZ|(2Q)zvmfB#jc7FL(CVAcwYzL9Ro7vQ_NH5bR zZ{p}IHy-BMU|zK%FkhG3{7N$4*x@^(ClgtLk67%F^u?)2-gSikKO5tSp> z)V>+`8BFOS(4Q#%vT*KQS^)ji>;y1J*ti{28V(KZI8RN7n1B>5CH{i<^|c=L6+3W? zlifp>teM`6R`9pPVaTHPTMhgs9CdNChjoPv_nXzNZq0Cn-4LX)>6W(iYp+MzVXRPI zkFuo1gOARcZq_C_H}VYT?RQX&$Vk&t!wR-1wZAt3Kqfx?qm+L#cvRw1`$y<2zuKDG z8knL;c>ggd(>6f~lZIEroJe^iJ`*;zuHR0hG8FKe!$e9N=tz#Fdwb8fmfqS=+4Iq; zL2R)kfuWreWkS~^!e4)inh;RBjn`AmR0Cs*25-%NBUs$}UK|RNGBN1QGjBAHRkW5V z*;1`7FDg zg2NG`?m-_%$YB4R3CY#fWWdavst7Y0cdHm+?MaqTKLGBMsC3h(ppF>*TS&Dl+r zs7zkgTnChB|DK{D0bTKM3d{&l(hhfJv%^^=J(fr`&gD^wn!UvalFv#$Qb@2FC0^;8 zXvi&sYYJk{`#%G+=@OdMkO9_+2WWi{BDd^n zd{woCLi-pzzOMX8p1%-P?|Gr)R>mAJjH&zTF!m(u=rh>3gs&g7&WI~w)ROZlmK=Cu zKvv#bEo6b=yg2%=?X8RMdnAI-(a_c)vM`%?_cuC57uB@GP_kd^#^zv7Dp$|EzV{o?GEl9wdlG_o*d z4_d?0)JfOH^I4B>?gY29Nc2a!#|%$SsThzYcJ3#}yOd92*Ek#eThj*FnU?0~(&0@0 z-*-qyZo&6L*NI!3`Wp_i@ORr5f45y`n$EZQ*YuyUlhnn&uEa*xghQte$&4>HjyJfw zb4JMEJq>+T5%W5+O$mZ*P5bVB*OcfptFI-;7uECbYO^hLX!y^eKk@#7w0=}uqu|a5 zYc1u58<{y(8cljY9-d74EM1jfKb7DiY2ZFDHvX?tdxy#4ZYWba%7wsOY^HY2 zy2UM%3G7MA$G0*C$a`%dd~CyVH4KI8j^@8uOFuTHmZ<~@v~2=3n=8WQ35d{ZcnoEN z7;1ta#TD|;rFqeqX?lTSM@Ym{yWjpgM%$bSTI;+QZ0D*xud7vAtrRGmO~lt=yRlL{ zeVzuX*1Q?ah^z1cfs_{Py&VKnmoVdFs~k7Ag~^8b62^Zuh{R^I8hLw<8OZpD>U-ER zt0!iPA56z=8?6eHBM6t?7Hy2z7F6n0fc5qAjN578Wy|f^>$9tFtf}_%s}$FIjcb)! zxh;0rJ#k*BHAfQ+Zh|`oTFa#^v3=1)U#|po;)_O|E;?hPwnGOCDr{hPLt|ie`P{%4 z*`o{J^MeHF7-{+&mLYO(4Y=`UZi84U*ruS43`G3-w3f8tc&-c1(E}z@Vv-_veORnP zUrD7|V*}Nv;WtFc%76^YFFcIC=E;xE)^X&C^Oy91(ckEYrEPO@*FSVRL|iR~{(2%S zFnyGV?3!m{)}WM#2N;48N>F(2ta~S|l!n&VDBQyeyDpDxKRq(`px;q=16H(rX$sv| zWSb&Iffq7(pRGPUbMP@&oZlHsXNOmTfxSG=2@`#U!yIo!_uaKyIaCSXSVT3dtpy?m z64pdK`Vu&9uKq@bah6GQ*ey6nO13^4juyW-DT{e|F%kidQXpe$sLhhkc%>gROW0U9Q!+ z(@$za4UFKUX~IVrDyW@k7RZ z>P@e{oBxYc`&VfC`PO*HM+g!1)h+Q?dSAqsIJx-pN3jBie82;IRe-ICb;(vm_$q1Q zw^S%dQ!#Aon1_pb|4G)EPMa)0WFU3hgD2#zNxf-#NC7rMh)Nc8Hv#z$wkG9=sEj79 zNjXewg*TdWR!Z|Q5AKkNdM~m+WN6$Plufbos0SwlUxRC!DmWRmH*uNh`8vujl5 zzJ48?=CxqAGisb>pX0buk4Q)pwN|?dpUR9>I2uLrvWc5F8@OEr$L8BNUuVa*RN$US zim3Y(OnHNlV$h2EwaV39RhnnwX1BRS2vFkZk?)jV?<=W^lyt6wvVm1{jl=1=?fqNE z1w8_pb$%D#cIA;#R0V%`N*WfyjDZmnn z+f4G?^iX=w%=(ZJxPzBYwR@CfXYAY}uSv(sUgqrCG42h0<_(IG_aYu8lCc|;@dlL- z`??7J?xf4RrC3zM;cq=xc6L>VH(l93G^sp%$$r~IKwCzE?*qMaIm4B_eaLlAAymAi zWo8i=b9H@M>nYD~inaYcAEO8pBlk!&zYl5_dU-nysz+Mm^WYH7W?1mj14#E^x`U0c zT6o`nAA9%=MGbO}!LU!p5|W3jm*~MWD{Ezy?I*5Tt+eo;NH6KD_|AATxse% zNs`RmwmGLUPE}+o?=mKKVR6XcVXB&oXkFB!57PVnD6THcV$ZmDu0Tz?u+L~(_c z_f&5&p#?ysohFS|bz_~YbH%QK1Ug6uBWOS=hyfo~`L&Q5L#&1wcf@^cLGsorU_8SS)S}!e4R%6BU zHD7Dqe}O)#%^Ey-PrcvE<(yyxHZ+E5)Sa>M*_UDEA3@I5)xtp{0ZQv=s|B3?) z$rGR~5#VcYuvNvOq2)hUjD`Jns)!w!KPlTWDrLLe^%-Rp3eN;va|$>Vh`7NzTdtB1 zG~fQ`k1Db}ze~$C;Zq+>BH`WH?<8IC)*)Kn1y2(T3#SfMr$G_~v?zCE!NSSuHBpuy z2Rf)*8H|vJQ6SZFqLRua`G;x&N+-usL8qXy!2GxdY%qIIXk1d(?4A zeIZF(?<2DQ*&|DBt;^uxlk%ROz%&(X3;aK!sDRH3Pk3v%P)~LbbV_1p-tLu-7;zXZ zh7y_#d?@WS>(1F=gmb;3hoGH^z zNz|+;A{oE~(-tqBizjb3|ris4HV>SqR zyOz1d*{f&?_F#ExxsGC=l8Dts|N8DqmYBDi2ZxohFb@u+s`D+1apJ7~tqCZ8k#P+V zdawg;JrBO5va>BdgA!}-@xCSi09p~C##lMZu!g7Z_`ga333+vI1s&??B#-sp(&!~w zi|veC2BRnq$|pysB$SVCCEiidYn~-cGBT55?P7QJF=~V=Bx|0;T!wS|7$p*tyaKH* zr#Q@o zz%m;3@b^8CKuhpM+1BflyJo~0m)pmjuse41yRQ;I`FXN}iesV+1!;}PyTx7<(7GkT zuOiyomLz~`DhMyrdCqRknuKdH*gm^M&DLcscG}S_2ZJ8o>0KTnd!{cR1OCZ{%%-_a zofzy~Z8LN|?V4_<oYDx@jtpd`M8>=zjb7M|H%0MU+sN~Kh)j({%G?= z5<*$>r0k4R_9i`L$xilV5XLTLh#^Z!Swfbfv1cF42%%vtiDJf*ec!i?eI2{+ndkHU z{{D&IXI|x{S9vezoco;nzV7R~Iy^#bR}vJ)hG^3BLFlEs0MuFB$&~GRXrhdTd&-iN z_VXJNYV6VW7yaA32hTmhju3Hh-aFR%K6`1QOX?hxdS}#Gdgc2@o%v$M6mDVK6(~x& z$I6=bq(`d-%B$=$26*w?UVNPMO&0ed`a)os;+7+Ew4(`mO&sWJC9Q0--aAc5qew#s zmgvHzA#_{cFA&`_)MYzudHTJ^9}ojHtP;K?s=YSx0P2Wr<()#u=lV8~@hlO}cA6oO(m4%+U-YD-3^mTjUq) z#v!Iq+K6UMx&z4pcXKNqUF!q31>!v#x5;<3wodR@$0S~IU@mzAPvRZTw->55_8jJk z(TDzQph@?k4%I!cmoWWr%o_cv!a@hkk{~B$!uNRXYO@VOwztr9nq?eE&YIQvfjN0ZA_-YvV#W| zZcnY%n+YW=(}-sk?xrG*#&X)sVlyetn~z3+p~d$&{Fnst7ym7QNTp8Cd}Ki4mQF`K z_hL}x-2H7vBTt#V=bXUlh;%<$N*WKTIotq1OCm|?twpN9lb?B8kNZ=VS|3h9!vOtM5=s}(f^F!9!)?OgwSoTS1Nir;lF`ctKJo2z)O*F)b&bpilj-1kIoO*nG; zYcggJQg-u#UrB%t=nBbZ2ss?x%RvuwYK#K##C(eyY>vZ)NHkYdXx);b@jJ7 z6jS}8lbfZ3_(|zHvD6)^>$@50F&K#WK_K3oAr(G0uB1#!l~XuzYaYhg0!HHY8d_U+)J~nZ-Tk}3)Jv; z-qyoGZN>nFb|S;q4!B;db9}R`&a1QkfaVcZNEBt9!{{9u#B*&;)a+*efW@#xZ#M^y za2P=Zav14qb6N#SH`V;`y#>f6)_*TvF(VdCdu(z!k!1uR$?VZ(2~o+l9$!vz3aZ#2 z^nKyVbI?YGbBkX!&&XMrPy&J~5IEB*MN=nITFYx5Obhb+T{@KWLO20XrOnzhATq^$ zr{$-Lc_8^`!1W&jN`u7+f%oRWxXYdXwNP>g4~7hQ(H_tNQN-*615u11{Z+JukNo=$ z1(v~tyA9RGPg#2XI9*J?sg{SS+J>6@?a7nRnaYAxPtH3GYG`)^#int(?LlI30(gdipKZ$N0*=ABb%|!s{*UBl-7+wLUNK14e z!Noxd`U<^R>)a?In(7sFaa3* zl;~$rVRUb+$tRq%fvAH-#E$tD8G?WZTQJ#84X{s*@}MM_fNIwlF%Zb)?ui=YuhPuT z6%Ap5&SF@1f^56_X%#@$t$9B4z9jxxR=FegvQhSkK8o_U=3i8JUyo4sO(k2U^|-R;t?ajjEqNFT(4Sb~)~bKU5P}0$khdpxkR`m@Vw&ghyq= z8}LKs-KTo*^Bb)?M@3%T39E(8-nPhDnLrUi?l8!CMUw_HNxesTzNeqc59{^h7$?C0 z1!|zQC7*Bsiy^P6bpnjTd0QE1m6Y3F{{t_i=5HX8u1&m%5fuBoA#dwL_?YRX7YgOL0mUUF!HW2OmxDLZGyoY=M)et5S_nX>_NA+ zaui($V_m=hH7~(IxXghUO*nSF&2|xD@ERPuPTLFb0Qt~SJZz*`A>hL(~-= zDpBBQ;Z(kw#tMN@=~z0|_|1#+7`q9Ka}&@2U0a3iJU%OBHFKC9bnNC+EZsd4bdz@- zTpCc&%O3cJnp$BtQ%0R{HNW;_AB%JBs-wKm7)nn9JXG0;`}1{Y<1YR~-lw$|<$~BL zfVmL#kb*9|Sg?WZ!Wm!%$02`K{walSr@&C_+r|Y^lg%Z$2eic@pGJbRl3!a`0NMwb zR2Y{y7U10d>0(K{_!~zF;yga4+sK@UC!Gn(xK#F|v6?#FAqhaVcPlw?6DyxH#Jc8# zzMxe+z|8_1G*i6fia*fZL-r=1-g=hMu^wo{vXcy@&%RTky@r~q`!K80R9=w|@{dQC z+1%eiby?a(=@9Jd>}!OF;NdPKSS&YfZn(XgSBPX_6dd=aGq$GG9V@;-HLbDq1?F<&%&sGKgZMqhS}(o$4-pqqeL%8* z)b!pbvTg#t7`Ldf(G5gk4L0zLTb^sl;`n{7V~NhVLEe@~bZDdjdf*JC^<>}VYZ-$GUy@(nt!2?Rd@lZTV=vl9AkA+%Vl^Tn zLhA0<+&krCTz{TvFEEFLGy=z$EzA;tiQCsomHb1z+@jeTzaGzEA&YeHNEqAgt6TM- zE;$?sX@$h6bU=;Ksg)j6s0CIxTJ03mM?`bD==dyluk-WaV)sbq=|GI5&;2KWD^|F# zvFYjBA3nE1_;T?45TUD*&2Hhd+;i7*b-r^vU>!eyG6jCSPrfOF!z(?YBNpQW{7gI0 zDX~vefRh+hykd6ddL#Cq*>;nMPrR3h zk>6N8dD`~DXj9$Gs_eMhN`Dq-i%vMyvXRTFRq%4B2OdAaO z40c{A3+t$BHavuK?Qcu+g?A_O8SfDVkGk=7FT zitM!IZtLx}pWQG0HJDo(y4Qc_o!`60WUuS+%!mc+tW{Xk>pvU4Tm8SH9jLTeZTCsr zN6{IfzOT88mv0OuBLu3)uW&5fF{kL`-Dh{vBEKvHj(mAzwB}9ca2SOE%}3J>?|!!D z%(c6uOpo2^$KvHbD-uqGryIgL zRn0*%yZ2dy>Mq2GG&ftV>R3|N>Stf4Zr(UOdb(zwwm5mE?v>Np#`;zFM{y;Sj}+Qo z;#mEfDSxd_L9Egr6NX0ckm*`<;#8Z`)2x$ax3 z&?0?aJ-uDMCYJrlNed>kMh@<)70aIqu2C1aFEH*zMqc<3u@iNH62-6`bzwX5!uCaq zWpk9pFjnZn$>({Fm;R3xFF)e%;U<7{ko8sFiJ@@pfVaxAfMrA-J>-)n2!EYY*YB=0 zfbo}t=P=KZ8cQuz0+6?s#VfHsvVBGLWNq{$#{Zw`R_Rwu*&uC2w}<6)8ch%e#H~QI zX;2Q*Mm(g!I=#2cB@DSz`OR^buz!}>-9~jHZ>!5_wN0!_y(bJ_IL*EjF=y{;d6xB# zl!Uu=u@_tLe8Ik9O})gpdhM_H5Mxq>+VqH;>sg2$E!gTm4A(j&?C->=0l|Toyw7^? z6=xOJtM@iyC}w1{Z6cL$yveRE5j~RiY3LNBmkLyz?Te2zQ`+v>Y)_oZEd7~zwj)DO zX4LOi--fQ_J8hod0sN)vptAwuA#(h%jnZf=54Ik#hAuIg43^^XcDTn6*h;6O)EH%u zFhAAX%`|JA_wmKM#$E*$CYfF3hii$YPZ)RUl!o-<9=EyAm zb51Ct4=r^2g2%5RNWOAyrSBFQH4A`~K(p-;L^MF9=6eLBMxR!=Lq4Iw$p3v_1dsZD zFbdIx%B*%TcF7yG39CG|4J4 zAMo{oqEv+&<&_GhW7A?C9PirN)#vpEfBl(_jlC-j2W;uh1Gl0&u{n@)^a0Q??Ph>gsh0f))YD;orv z%&yG4)rFqb)-K?ljNqR6eQ_yed8lB!=C{=2q}2uJcUvXXc*4az2+u%gH88*8v(0;itin^3n?&!gU#_#<57S*}DvdsT zPS8x}m{oa~*_!cj{gjGH{VcY<`1%Q(l`6k|an*N^J;*IzQ2XfvagDUYJB_zdYT|5i zj=wS&NTMR2@7J8=?S`k$?^XuZUuWqgCD)xS;>nCu=rrHBOReZr_2=EY09ls*0yAJP z(YTpHoGXpUNqQhz8oQwAS5~$d0>1J!SuPxslP<6^Ldrm2?ZLL`P!)eH zF_d@a48W{_jY8d&GiaZ6m?t^S{Tw=3r@yQF}H0lqtvaJ z&p>c~Ac}gO4M@tjc_cnVS==xyt-S_)BfkxI$hu9;n#;Jx`~QF_YOXu`%?z8WT!3>q ztV|dNFA4*rMJ{(5%UM?ebu8mPIO0xdj<$`ON|iRH5?vs@!euVuf?NMA z5G~EI0tT8M{HQQmb1wdC;m*mT?|?!_0g=cVH78W2XxlcGa$e-BjdUJ#(6jm%k5aPw zLi&O=szB1H#HZSLhgek6gg+CQ|MTShsk|p7v;JIWq3Dfc)P3T|&?%nZ@POH;;dlGW zah5&_EmAsurOwYZE5!igW##zj!$1?W8zu?K7QE=J88nI?a=8JyB~P6*Z11M@{=-OL zE04Dz8NALC-C?fITIqJ|Z6lT`bSb9-fBf1~=-vl8Ti#%FUW z@2C0HDQT+y+uO5%foI1F2E<7}7H9VR>({Bwt`s-c$<|)8J}LXXgVo~>hAnJ*Or9HN zv-2c=VW{xiJ%f~B;akF^x;Z{P>Ml&aEz0uWxdS2jAoYA8X*%$=wKQ2X3*>g56w9+O zO9=KQ!KHi1c)yw2lM+H~i{tZ_!jaAmWSX|PsQ@on-BqG9OhA>t|MI&_#8>gCuMCh+ z|IaQ+&(-;tYr!yGP_7c)y0SDZ!{gjlDcgooFW~LrfnYHaNg)<3SNU0xHuTsjj0}{f zVL=?q@Mz>6t$+FYnB^Dua%M#H+dCz`4{PNm(Qy8u@qmNI+Q!h+B|GOK{Xpp%=;Se6 zTIqRL4CBoPz@N_4u4KFq35cBA@;urwi@W`OIZB-I;|Y&*+P!!?4H(Bwf_hr;~Dcp>^Xz#HW2#pXL>U6Z`oKwa!Rmk&iUU@lp{4gjPM zjZG6{ULfsrG50&EVx@51+iR^28dq>9@4fQBOO$%C46>I3x1zzV_@zX%Ld7RM?z|T; zAqv7U7ijjT{L5eN@|cRB%Dk>D5Ic72oyxwUW*Zghw!yIk$`-Q3D5fBDVEu^|h7ylf zlqh#!FA|9#83J^o?H>yM%fA`5EoH10*rS|75r_mA+~96};g-$J*Go1^dTIMqXGtSUhLlqZ)WCPL5XkuV>e9CHq!hw{h>8D042wI`Z5 z$8Jx?XXXc1mI0JWmX2$%y^)e`Uy!hs2VA&gz}p`ON7+249V;sV{sw4H z^3i}arVVQFnnDT4@L2Z*)*w36qcmU3_o!iAe&a?8J|3`b0DSE+eyWG1_a3k<=`X5s zTh2fDxp70Fqt<<@RXw+z;J$N6Gdx#XfDwrX=s2zeIv8hGAzAjk2>qB%K;xaHY?0vg zUyqO|CveZIzyvo-qP;H7zoZ-kdo9hRGnT3IpbYY#%TLL(=-W1WD)6nnY~YEb1jgd4 zmGk_YB3=mzDUX%I*LwClsj??z{3h+Ycg4bN;aIfOO0%eOtl8Jwm9~2Me!(|mX27m}rvYU&r`kY!+l{7n{MB{R9gV5OSW_8DE7e@4m(P(e$$1VW z7?Pj^owaC<8oT?jUa!qw?=0cny9)3N$5(mTg5wIoeW9y_WE5q&a^HP{xL%MDMcGa< zC}!<6Zt-x^vVUn|WM^UIV_{U~`ND36Sp>~gux0j{R1d5c^p}Mw+S{zv!+Ng~yv&Is zfO}X?R8+jFkUPqzj$FPDX|Wwojly!RYS;qa<86WjlC}}b!9M6We(X? zBEl8>6OY|TVRQDdRfZyH=vIoy_1v4cPA8mF%@UD?*9lhf=WZA^RYE{6G=Az0aB-p~ zyjpAkIO&6JP=w?`kxujB`>o}L0jXYxuh$NWHI%bO+ReGyO;F*I%R(JF8RPF`Tl#X# zw%dx-!|(h_CSAFD?Ft7$;mgdfZnUbAR10=$5cI9R3L#hNT*-v1lr`=dHO z8L;mWz6lkh*{4SU$`l|?F|~vb*xbO~j3@GSFEprQ%%^wd z1-e=^aBDsiW}rJ)5t3Dk)#s0Pew>9g6uvQ5cd>su^ikHnd`$D^<9oEiT{mGO-@<22 zf^ecw>Nx|rUa%GyH1FY8kCs-<^Q+|5~)4xiI?x0#!PCi#^3IHZ$r`SQpGm=25id6(zVi2ggZaA3ZDII&rj2>dACsUd z;rsR_)v)YQU)cnq`20sz(($?GCTxzYx&jNp!~>w$sh;P~61q+r0i+Gj&(UCNLcbUM zyi5cR2Y@}O1K)_eqdJZ$00n|K>697EWP+n?7zm4mwZM7PN5-^2=%9MZa^V>*nICu) zKiUMJx#wj<2xMQEXljt|UB-qWh#y%DrSz0R`;&N81`9nMC=94@I`DJv4oEeMZN6Hf zx?0cu5Ozi9?aTPmH5B`Smhm)vb!kCfN%YPI@9T)LOpa@7ye~^`KE%j9Jvbh_p{37w z(L1NRvHj*Ka?@yIWAc`tsrdoT4 zQ-RY;M(e>GfTmRFyyqyBd6D^w=e@&7Hi6f3WoNJ<^V>L+v?Q|=+gtie7^oGyMGG!)1V%CqVDeDR&lqx`%st3jF$Bd)EqP_&Gf zdAR`O(=0VBAPuJ4RJevO#`S=lFbv?Ro|ok<=mbU1#()&84Oi!$QeI8oqUkt#iT}Js?R1np?O(}+EBW7n?87Hbn^+Ha<=@~^%px|$S?pC z14&pOH0Xw3E{fTMY{YA=sfO|xybi~|uj4299R^;7nVJHirbpC2 zXLgaCHD#bX;lID@Y^O|(zi0WK_!lP{XIwy@xo=vJycw|uH3Uw0AW#b~)~>cut?>{T z%3q3AG2LNoYrIDy!B+NJT0&9um8<329bwp{MUr-bo1KH%gY4guK&uC zoIG?AQj@e_E&(7qJ!lJ5>+jqs8|l5h`VY7k9U?Jkbuca`9P!o5l0%>No|`XGn_ub!nHHdP4-a`@ph2(FFFXqUu+Nd!?a-ZUe z?!s~4XHk)p9~OSE6}wY6ddNH1uB;K3h1lKd=@+cQ;E%R-ALoBFy0nd~=bd{%MUL|C z<~f1GBc1e`>G)2G;>{N>0px*#vEWk=JgFFjvSq+R$42nr%k`NRbx{kBRKOm0nOz8N?ixN*Jbs9y&(BQ z;jvh`B5y0$x-o7+*HFXl{@ZoJSAflau1z@AkOJsj2>tcly(J;-=ef#AA*AtXSjO zKCfDR>*rX!b`#|HU8i_Is6}zD5vvs2m^M#QpWtzVgEBC5kvA@J>!n|`HUSC-xy+;E zsE!PoUF#L~fOKzhNFK-k;qeP4t3BPMc{is*%pwfw33AVD88gqcnEWc^Dv1{=Osmrl zpmphqk)AQ$4<+YM(!I`|1`@d{iQX~4>jGai%==;I{P;^ZHy)3xlOte?6zx$jI&Y4F`E&Fveje8pH1pIMO4(wk#+9(C^1K{yl$)(8qeEG56oSt%q(D;K>5><^v)^&9#k#*!VLedWE5p@}y;sU#}|F_ua86Ux(wL!>fF z>m{H#)e=8Wiy)22MEw)C^sDq&@j&mW2HT60Ogk~^YyJq_<-jHr$R$Ua+AH`K-##3t zWsjIjmRYh~ho@vP2T62#l{6ydaKMh_nRf75!bgeK3tRP2LvItu@-b-qTp>)&1gn?j zN;(sd9y96ndV&^$cIX9jWlD?_;QU~*&sDlB?2pGU@1F%A z3DwD#DH>@Mb+q+|(TqGaFDYhNk!#*iWgIEtrqPvLo{&mA7IfKy4VbEEeHe;806pI- z2`|KLe()p?h^c2;e-hym{#+pKz-kbMS+>W0XY3NBZ||S7z>2OpDZ626!?S^=U1YP! zT+wA%YkBYG3Sh)|9!kSpA3$1GVpEOCo6-o(O8-#aI}<4@jO0MwJJRw0O%NO_K;hKDHSQldR+ z%&3yczV+rltnh1PQy*E z8=sruQNmF8+Q8lD!I3Pns_S{E_DAZ<6aJMt9Y2gG`2kt}L}Ys-GxZqIx2dM1PVvT^ z@gx45iC%4KW%>mBf?A~YwrWxSct)6NyTtl?uFjnl-uTc(4|As22GUpi<*-fv-f2O& zsCo&O&a>o{b&Qi<>W_>SkY^y>gx8*<4GaDRHLu;Z~ zvLSy%z>7ZgXdCzVL4I#2_N`OxW+Qv-VH8?mYZi^_!2c+oV(E~50Ysy$SJrx73vUV6 zmJ%D$BSc~P1$ngYoQ!pCjjt4IcB`Mh5`}UNFZws$amXXllF@Tqm2*j~*E62&x;Pg7S#Zd{#g)pWX;9{2k%GjqbR(+9D>wdj#e zc)@BIkdslHFeuZcc$cLrE|zgHUe60X*0a4V$?QEf-7h{is2`0x^C@fKe}kV4SOtErijDX8st7x_ z8`&x>zbN$ok>X7`xtf+*e`g@cxtZPyaBWai1WhInF+*<*rLe{tWEo|GM6$IKAxykb zEK@F@20;#F_vhjgUpUZWBAF-AxoI1?G{3D4M?_s9Mkf>+r9CEW*erHkrGYe3Wi?^g z7D;i-Z+<4f80h7tdgl^PbqpD>9|)DITm?E8qOAnTGDY>?Cx00nM|hMx#7)r)Z9WrL zD|61F8bp=34&O&M%kAnd_6p4W)-H;^P6N@u2$mSXl8xU%!``C&9L}t(BpZu;6em#4 z{ED%w93~7K3Rw%i>!8DbY|NZJ$m*)^LkK0W^uFVI4}5SH#Ypp;?kjm*{<>q{T4Mt? z+m=j_`WdQVFw40xsWRR5$D2J)xw)d0ZbGwKmLiJ_S5zjzo7xnDC4}Z)r^ospDQ)@}mfPzOSXP}z=-0_q}ZJkQwYGoARriw*r6u~;; z0v*I^1C&2jYT2=pZJP9EN!4@ZxKGkvy@&V$mX@!AS}P3I#x%E8U*#?kH~n>MRZ$35 z;M4TE@C~s4T^7>(mNKWiu=Bv}xHV}n_MnJ`c4@kJaQ>nhFqNVr2%ogDwiV^s&K4wc zABto)FY4^H)M`uCc&E|0Y^~Xsw-thj)I@d11qA(r7~+!g7kndqMFj*QocZ?LEi+KD{(BklkEL%G&b2^vk)mfxSmN_#ZnM z@HMl+;1%T7CV;%Ha!7U@W~S8~9Bh5k9zD`ur6phXNP5gTCH11}ef#{ELGoeDf4r6P zNB(SMR(h!_P}xDtHhu){spoEt3T%w#Zm?_5h^JI^@Q}RHzAQZy1LkvJXQ-DHLgzcW znCcjfkNqCd9siOJ$k!GA7VuGm2hL&&@Ea^rbI;4_zSGc%b3AR)MCG~?l7wyatL{%= zBl92o+gdGk4Zd0pKAbJvneEOT71(6g9!k&}f{mU6hC$SsG*rzgE%)36eyGmm`Tm~r zzP|FFp7P$Fj<(*mwq7X#W+BUFY^!M4LrsS-FZlUlCC=kpg#YHpN*T03@wfTO{}?}1ZF2V`6^%yS(`Z0FjawdgxxLssr-KPG;HsCZOLo(mnZ1X zG4)K?=*yGY!}{!3+FrG*UB)M~uf`E`OTelY>~awE7_1907gOs;xHBx6`w8o%wfE(g zZd1QCOC$E=K9LoPRYy3nESU3RR1u4Gj1PzO5CA0}SP}+Y8b00_9?mvK3g{>gX9n&3 z(eeM{<>CF{r}EEpxS<=TZGvDnL4G!;jh4Ts9$KvqJka*f>%X>CqVi7I-J9m$1`C=uJ*6AIp2fH%~ZKe~O87pswSGsciNy16Hmuf-M`tue%lV!}8q8ZWp= zV3<@NU#I80xw?BEU@?adj;-*|FiEMdG#+kNrmLLSIJrw*w)-#Pb;JMR6(9&4{&vu4ezr>dT+Y3LO#l|6Ka z=ujxs9@Wc=x+oOQPZWw)au*FeQ7V3^gF@+FQ&qgAf2)_=b(;Ym(&X)*&kRqS$-G5} zx~Xo1LPeobSJ&RWU(5eH#r?bI|8vCw3hV+DK%rJ@B<1hFHi>)vIw}kK<6!gpwLu2; z&z}eX{5kyWKm5+$o+F?8*Z2P?&k-s9TK=#1|Jn0@wvE3n|KDxfV27Xgi+<$;_jQ&T zJ2Fn4KF#MA8~3^8T?@lCTYOwJeYA0QY3~nLXO*w1u4lwAPrTVWrd2#1jbeBuRyNYr zIv8km)id;mdC%O{ua0&%4kt-zp-}?cFpb0};=q|3TNM>I<2w%isGG&7Vo)H?><&e?(3*0 z;;7(zV|v||=e`W;lB0|Tm5M z!g|ESw`%7HqntMqZ&1InoZ8{1UiT?I{y+<}B zWkp@4e%U^YYbU9I#L4{(|8yXS!A#UWH@TFmP6A`!IH$w;HSJpsCtPvPFT*~I6%gJM z3E_0Vf_YS~Mj*<}3!0lMq4D;6VVJ3LU?(Xw#oD^`HI3988Y#hzK11f$F*{&69JZM# zLszBTaMm5i`9n2>sK)NtEwmwP7%hmp6$<~q^Nm9~_PAcg$FglsN#d)SJOg4<)?aV` z_(sqPyxh>3b9E;rH&+jZIchz7-NgTj0)`YoKf6^Vb^BS#1vUqn;(7>D7@PQKX_s594o zCr*SGB?E75*70ca1%2gwHowhjK#T%L(O_0Uv0vfpsqc&Ti|Y|9 zDF1f998()Q-k+!=h(&{GSZ8H>mzYb+@=n#5PIsdznzGvB#o}+U*{ThVZQZo=OBOnU z>NdQHr4fJMP;Fonz;2<|vKDrdY#S5Mf#v)P25bLoG zPuW_p6WyI`ow!lK6US}27B9dQ5xJ6jVe!%!7gIy4j{QCa1vCapeGkej)@15$Z*!X1 za%o!cHDn#hOc!0#RqopFaJDlpLDnQ)0+A|vUy0?fAF;=7;e;8nzf|kVvF&eJ$ThE( zUlq}UDPGAd(DDu|+)3J(BuyyUD$b1)PciPREYVNrfnTFmN*i+uUAS$?L2$U6j+QEW z^IGwr1v=SQ-woDW|7j3q`$z1AK96a`HEr=#$04*F0Y4erJNd_HDfZZ3gITKq!^=H% zh!UK`+Smg|E>?K7YzZ)xVk6EHs(;O*y{sGR{34#>SL#e!d)ho!w70?Hvs`}O?>Uu9 zO7?9PkDSi*POs=xm2s(y+Qmq-+tqvN9-FJ-9lu?t?wlqp&)N0c-K5#hS-;6OJ|NJh z_bkrA!8h~Gn~G;YN`FS#tf0Efe^mS4eHfO>@$#6mFOPdu7aeIhDr~=vt?!MPaWd~4 z6zV7ub|nY4C*5I<*B7fDZv_Mw-&k-(^T#) zcXf}^G75_ddpveB%+vh$eAo#|I@Ep}6hS8~sBD(YgQxc9O!E~&b^Zq$uZk90r@KPz zGI~|?eTTN}b6roA>_pzZsKl$gSFTx%RRmM|wh~v>9YRwAaz($j&X`;j)}RPSj&Yul z+=aY)^LXdFR`?U_=q;Dfy`9CmG_+1lQ4FnO9=xlpR$VbnhiOnD;;8*v+SaeDSI5+p zDUOyh4Bge^BA7>p;_{K~Q}v(2W{{1b_3&Iz!qlMYUq z+q_T72y!UiTgQq*r81zjtoL?saA#YSQcNQXap!ZL(54(V*YPh-chy{p2*MdjQ#BJY z>wByr)`)Pyv6Ys5#1(Cth>cca4@^C-9`cn2rO1w&_1^7MHSa!`$umYzY8Vy56k4ol zo#$%^qlhlvSgZfolVWs?Dq3-pt;kZrbsqQdVq8EQ11-6Xg*gw=j4)n2&11*UFoyoD zx8)aisbue=o|#HNf2$ao)@clmq;|9afF9bkGJ^eE8iQQIv+|IuXk_t_C9S~BRk~I& zgR6uK4#6~(Y*$)xsAZtZ0k@V}Lel%qgbNq)>(r?GeMhQD7FgNWDmKrY$Kw`ePfM;P zvgUmhin|sVyyI6<@umuvW#1v{tFIcZr@wozaB!b1J)w=R=y^y-l8vP&1sjUj-t`V% zZfYG+LZNhapibtTs*E0I^PwYY+6rK}t_fk9Z_TJT+{Ckw@|`^QnEEZFPlXhTaB*8f zOp3SydhK}xEg8K{$M#9e?H961ebqNT=8vOr{M%5h*BY`Ok6OHx4*uTT9ZXMx^Bsvu ziN43LkXbbUQte+0K9_v`Xq?Ry7K4xZ5hrOR!^MX=I@`5df=yCSQBUk>cZk%R>I1pf zgOO#p)|)fxDxnk6lZzsG)XfG4t_J_~_-*0oHOKdms>3Vp(`A*-AJkx7!xb8@2kW$C z`+Ay^I<<@&%OXh+53O&{yMq|%a~lP&Rxz--6zh{1dg<{`U2iy78cwGsq;5N%c2~S3 z^{|Qi#FBFrae{4yp2VaK%Si`67Oz@&3b}Ct$Ot$tqhIVxUcaR}Xvy8JR|tVUAvBcD z4AF;7Ye^nQ6zkp(O7OY%;iE-Q8W32O*pD?VG7Qa-E5?UeHCq07pT%2Qomt762(h_d z!%Z45yFpi}s(nut^|Tb)jwuMm^<~qNRWoQxM%6MNv^5UAu9uS5(rlqRWFdtyO&;8ywoEROAcLZy&R7< zN-?z(#hf-eBE{Q|j?es<$4M z-B~>HMrmvRTkF`IfH6^wROYYF*Phl&*Y~|Sj?MHyn?_GW?^t=dTy#Q_U52IgM$=Z@ zZmOP7Uo&eIBOc8A*j>HwR?2OpH{@X~zjTJHUAHE9*#c{xQc5(W1`_3G<`QIfA-;kO zOFcg_mC4fu_y*WzloMc&SAG1NTRe1+Q0z>3&P~L1riRlrCME|;-X9kEd2Blsp;#TX z&ZlezKf#`~ASB-?D-p=P*C;5?A5cC*d`M49(?DQIgHMiUPt30GAyZV7KZNzQ56K6t zxaBf+c|l4H&0fbKzoC~YQ?2t3=X|QcBW&;oTg5?})yLy#1ZB2Y%-#@=Gb3DRHzBYF znG7$9x!&%nbGp;*ocy!W!5{6{5=lb|`5vXQGb!J12D=o$Gk3~-ow_T+L)UwHrT<@@bupHS7Ykc3!{tF_MYuFf6m3JF9e7?w@Ul)g@f0=%DdB zGGi`u-QDcb9IcZM{u&i!o!6Z>YYd0BirYTlrLJ*mm|~sGY`JFg5@()Lki;({>TG30 zOTJV>Q^Mb{OUHJ7&>*mY_?Wr`idX5yS9v_6-G1hb@LHt7L2@#BX zuC>XEJ$sGez*=aRg?1Pk2@t2e55D&Dj-3 z*G+$HkPrmGnqZUpt@kMXJXcmRp6XrS;^u^RhKph>qpNVO6R|nj(y7NKU%b277E9yx zcsH$6XcR-ZxToGDS7|KueVp3jfIL+OS)r||=U>ILY&P)>5;gcBeW^;lC#XhuMY+YY_Xy}QQ5(=|NnHt6=Ay75E zbhHE~RTu8Yu6Krn)9>o-ka~w1EzSjP&8Y>q1st*w%=lTptat!rqz8NXlDMk)zAqZ0 z(LUjx>aZ63(}0cL)y?i2zgsq5$E~rq#@yVZ&np2K`l9F!&K(&30_VKk+2PS+dPsIg zu<5>org>*Y#<|ijM2Ooejba{xc0YI4N5l8I;ro@G-BlJVWsAk4dgwI{EZVPn%2BTL zX2HW-zDh2K-!(x}qK-CQw72((6yT`e5GBNif&<10R#UDP;gXm-xJ{1)OV`kdbDPVD~5QA87bF~$5;zsQtX5=3(~ePznxS$TQGf-!?5RO+(sGCI1NO) z6;J#NJ(+-=HLwpNDEF20o=(VMeR2aHO9oDjaa=SII9U1|zv<}IUEM-UUfW?P?m;Xa z(sr(Tc^sAJ3%}4;EaIQ-k5EL*x(9F?f0aBTnNW-~-$;zoke0J4T(X?OMslS1ms#z>BffG4JI+eyI?k*izFmg+_9ua)fc;Mg6;PNc_{A>wN4^!S zhv`}KI*-3@jAvvTBCI0GUB$e#P@L`sBC|%n$IZE8AUqt~tHw?8X}5!U?8&Bw1kWnz zTMK_zn-S0c|SS zz`XFR_qUY%SsGNy5lDW-N>uV`O2Brkn`~sYG`mjVM~Lx*RzWVIWw?!##MzYS%>?Yj z<+(?>$59x>(Ox2HtJjSBgR$Nv#RZn2(p?3?Wj@M93`64HNH`W4=JQ(=+H=H~CT|MT zzY&3*nt*n*{kp3Ck_F>DwhRfmIN?#YIkk+N6CL*^!WdC`pW(gF$#ZV!OY8I@i%A){ zy4CTDvoSuiYw~sZAlBa{^beLwXJ97oR>sNhb=lmGaymssp}bE`oO494MflT_*|yHm zoZI^3RCqA&K1bm>;w+QlX>Al?9JFmzf*XkQ2_cC0jPXIReJ%F0H|DW;d#l)rhu8U= zdo+%sFbc4DsXE<0tBm}EMe}59 zUl4Yr?)+V$IFm9ul6+*3(gT2}QF0*LlU`*M0dczJsk?)(SJk3vC_WS#FD%i^>YACd z?l1lJw|3ID58J6_TD|X$441(SUB+fLkseV$wCQT6u1L~=x(+XPI==pW6bdH+a>c63 z3jT0cXMoznGv%zkdC1uHFXhvBR^kR}VH>9hYtGnwTv!|m8Jpxd|N22r2-q`X1+kVn z)|1x10@)1CD4+-qAX42ep35wGJ&>3RV)!0JA85`m?39d5HY19q@^g>IiUm#!w)Hx4 zgpS?g>4HFA2LUSAx?rV=hQ)IH!O3cin`EUU>A%!F+Rii8ULH-_5CRE-BI9B7^AL&?-lytK2 zX`svZI{C9&riLD2<6yb<7hz8~?X16Pd46OsHc>cP*UFdSGA{xeu&Fm&>tGCkI*lQz z<@~;+y9aiojIKffTbvZU$(vkPEDGkzp^mON?%H^#;#Kbl?CJBR;l@q7q=Va_u!~6b zp?8Tm;Fh_W@}ne76o6V4h5x^56N}9gxC$mKh_`Jhr#=>+Dz(qnSDFC_})hS_wEu$OR)QB{)U%x zBQb-jCwC#j)U`8LI?JOIrh1o*I=cb)t#(T{)%xQZbFIV5DV(fhv4Me-Jl;&|H*fwH zO?l_6i}vfj0XC$=>p7IxTG&0~kyEFOh=LLSeX6!N7oeo$o{QD)W1CH<2c+!r*F>Sn ztiKsK#c5(RQ4?w;?=)!5qlfm()Den1DbwC0)}G3cM7ZN>#fYT6d4s35l4&F%#oOs9 z_sO0kbeLnt{DH}ZRO$Linv(Y%ol+j9HTcT@kFW((x~ z;9qn)8FtGq8fKh2M;dIrx89g-(v&>GDhja&>Qdy?2K|QK3x%O@cRJ9AVJbGS_`H42ivLi-^Fl^P=&6dk1V-*$PQ+Y&xT?1GaTC!PBVvTcXcu? z*>E|FboL_i#1!k99-ogPj+WyzUPJB%;(g0KGB;a$c%JZ!WMGs%W`w{5QYO`cQ(8Ut zp6m7amhXP^0JUZ))OC+He7IRp>5p)tCGX=b@}>7Td0l?OqG?uIIhn>wlv4*kb;vwE zqWlpt$hKqBY+fa|@hTzu9c9BN(nljrL$Uh@H4krjeX6J)a_W}fo{Fyap)+S18a*L7 zobHU^Cwkxq!wVD>1Wu%fZxx+@INm50Y#{CtF=@qn@;*`=;Nq^&6lFf#vUy5FNq!xa zB`u*7{XqRxz*=uV&}V@R<7_g*8{La-KSBz~UwX;!wV}v|-K*4RTO-I3FjN5;28tQi zVf|b=Oha*Gpd}w3rt#9fd`!nouSaz%s^y+P)UZU4@byHjjPftfuz_X)Ic4U9PmF}H zXxXptqBJ_*Hyqw~!OJ*B(|RYuEXfrAG@J5c6~Ji6RJ~ZgG5k@P`7=kYKH-SOTWWg7 zp^zCsw!j#%>aaD~EN-^z;-A*woPiB_0bslOJ}7IK$|x=JA&JkNbl@;i8reZII?+}2 zuCK-vc<4zx+*hbn3;cDu}jBNe=njK);zqzP9L+hZ1~FIuZSD? zj~M3Q2NjKrX&1VvX-IsGtyuakF0i0SmJ~|GhvHnI94#ke)1w%YNVVE#!w+{OCll++ zqo=LXHW7V25`l(DmeB-7_ZHx#YJt>FcWbH22>ni4rcU(xs}PeluG)YcdtrejlFye(Yun+mJ zZeqDB5g$G}y&V*CUvuuEBXy)iM=Qm}a%(4!Xd1O3LScBY4p92{#wf={ymLv-u6w2S zxmXlR!z;-Mx)~p_ncS{C&SZ1{peFF(9gGuf;IX+7G_L$hDMn3|!hjpYy-SyCC+Kpm z&v^B|A75gpBb@|p(t_Z^E|rKq#CuS^LT;3NhECL0yhJqCf-u-v5D_}wAf5AsZ8s8p zIV9Rm0oUrCXvs0AHzN5cj5g`KP7;u>m*EEZfGK}RVM*24CI^hfwcW*v#@{~{BB73h z8(~^_Z;cKKT5%x9{mN)4705w;k+QS5_R~(0f2TR8u)m{3W#R(7Khly7rr=1j()sne zmaxQp+xLq!UN!3oq4phW)aeXXZmCix8>Q%(r|C$=)^6VPiK8&^r|Ks{ z1r>$^^{(A|D@IFhhVpMBq1wxJ@dRCm>@6)1|5_-~{LmFD!1UhY(QDBDILi{=cAx+9 z#CS@{LNXbAd_2}pCzz{YR#=e+aZbo?kb>nW4Mi1L;@(y!wFf1O_UTZdVHe%ihY_uO z%1W{bYn|jHK74hS;DrQfJmXkwV;LX1Dkfw*qN>KdB2glk8kb-i$yTw3gxq&O0z&VY zC3bzbqa)Fg=BYWhhDZeLfDHD#O3iPF3u=MTK;D5m z5TFNe2TdvpjihM<)*#+x)5(1~iAC zT;pMC)1K_-4!1jHOig-$W!0}nbmX{tAvHTS%-$48r`&-1914cwSJ$)KIgS!dhWv>T zUN6fuyJ?WtJ8pH&@S%>vk%i2MVEHkpFO(`y_@qQzIF$YT!3yhVbt6$5T3 zv3{~$Eb8=L@1vQTO=2I~naNpnI@z^2-`aiqYJiqsPC6LfC7HN~Jkb`R7*)NWiay}gr_ z?BOeqRNNOwYqVcjF|IXm#?cpT8X_(ad{OmAU}FYr zYBs65CZ8n_?0lF{*Nulseu7jgVw|)c6Rr@6zFFd3W40mmw+Q+Xmrns=F0x+z<8-0Khxs3$L4 zqMpKUNysRy8s?NgoBBLlM*<>u57e(UI8Ap3&b!jVT0P_qPaRrCRgQyllu$s|)F_4& z?BsUNwJx!&I|#UD8=Dkwloc%5Lu_TT0*DNpUUgC%434DVWU z`z)u}T@6Ubul)+yR?h?glR05T#0E}H{y#zPC%>FYH_Fo#`d zgcR8?G<=#PS6!x_-SaOv|1O%6De%@f$8{nShDOJZlvk~FK|oW04@>6+fY#-qz|d$S z-yM$g+nckgcU+WKz%PgNuynuJwHO=Md8T%RWf60_NP^!&&9bdv`*hUBc5O<-<7s7B7iNyQ!jK0 zY6uTJqYC?dOTkaqIqG|>^ME$yZ-AH+O%(emdt?;v-_(7Qf5n2flQT&A;W;_Y-UaAHzo2lJ-tmNS`b zoZr4XReOcNI>zQGj8P9VIgqNMTl+@Q_~&jLXiM%CZWr^9oRgjVvh+ z*uUQo-S-8u2z<}g-=g@NikB>0t}#Fp_C6g+7=mKV1RJ!=wcnFd+dMgSB9df$r|FI9 zNH3Igt*=KKdk<%gMEg>AI6d{HoSua%lxou(#CaM?IpfcJ6pdH1Mk1)>>xE_@DhNZaO23GEC|<_{SuN;8#Xf{73V zLbc;n=nHUgE5$(mJ_DHVv&DEw~xaug(>1wO)MV z<=F-{9csg4kT1E{hn5L3rmqe%Gq2`pon)A7ZtS;lP4s=a;XdVP$wNmPQDe?iKVc|- zhWPTa|La-VQ9=3R4RXv%>=_f$YzE@(Zei`}L!UnzwjV&gbG50VX{$BMSkG|J`+nN57!SVU9=%e=BLk89C8R(_5k0?863>M- zCY&G^be7eVD@r4=EqZ^pDJmK+Qh1*VQQ~_Y9?-L-tb3s=E`fF-$KiV{wCNdo*kw(> zY$BROPYRz0mP1>+}l;Z~Wb@Lc7+GOq8ov>~MMYKD* z??IcWd)S1~kaTgy!4EOGQAPuZf+K=e5$qBQ=!$_l8cI~iE>c{wz z)-&0zjAA2-5e0_!I{tfuO?!-B8y-1DQhDmEZ#q56A1__~TiNO24jnW7>u6vWE0NA}9R0$8sx_ zGxOL(byf0}Y}~*#2vkw$Xvq(TqcpmHKGW7pMhD8ysnG4h2T76oG z)=&woGjW6~gy^ZVbUUHA@<;)z-7D;!^XE$IAoq9BMXy!EFpobp5S{MnB#ibMi4utYBPmnEC(SD5|Xvq#>hQk~R ze3ef7^0zlMdX&+Ts@p{|heO1319OFsP(ekKX#B&iY`U2RTEa-p5Y_Utcj@d0Ms@zy z9y@&~bV?uuv(u4SAhY#`Up|%RGQH+CooC*C9MXREKohsMA^s8nZ?7MY>;eGB2@5jh z8ot8`XIm4c!Vl0lX|db-xTwPP#-nsPQpM!CrOpEg1FYbt9CH8G)nAfO98t5F5x03i zPbW#l2J)01xQPl{5-zl<#9eH^ZguQ4qmqFh!NTd!sMgD5(*x#f^U}dwxuoM($M7!_ zjOaY~(L)f6*3Mwj3FEPxU$=M#tpq5C8a65I8o>2c;RaxU z$SaP6*6A8gq0Ri^;wtX^{Vd<_c>4n!>486dnEUg%k^9g}|U# zE$qsFmG`{mbMoPAsLm}3$wk&^*|iv^Gg5;3ge`%gzpzr>pEz*NiG!!z4k!+$pd#)1`sbJz+_pr{RVHevY!TY zgn4qHsHne2IZr)y1SuPh zQGUiaR7V>%odRQq@e1Y48C$cPBKgW@n2Ty&T^go8)=G2joT7Fg={}PlIHqtL#&PqkiuH3VgI)V+cFvp`*0J&w0*^jG92HM#P38pta zJbb)% z(sLuXru{_npCD&yRHLwx`zWo2$DN9um^mLSy&{tbo|_2=p7j>Gc}E#ql6rp|mjX~y zCZg%Q`rA2HZ($e8UVWIkoseL@ZCKj0@67Vvt=3sM36=|`)^%#ZT$)41)KeN;H6=c2BH4PIlU23iX@2l?R$~#WTLO=Fkqx^&1m&_25Ausw-Qh zBms$Vyq0Sn9H)me)|n#IGC2%OF`_AZsxKwnJw7jw73{j<)c>SXSj_#F-X^}4RvsO%@v+%2W=ARC>Q-@k(l0#iNxqa| z?w`tGwlQaTBDhFNW@VGynOS0R7rvn@LGsXI4@crG+F zLT(D3mcZva^_!#Kbzc*x2bURr?-(2j1mIz9_4QFc4@MOCJ648=hT?$$V^h0QqL-r> zIM+_gy>joP0@KxD3z3adAjCfx|2il48O^?(uxqcFG>}WcljKJ*riKkH%2D5Bc{s0u zp+bc7a&JuA=aK{wd@{W4)s_st?(>$6;Q5QR^9y&0LLpRP67Y2bAPmf}&`aAI4m{XS zxcHcO2X4k z0T7w;)U*X^;dd1CBQ|8-L27s~IR1%811xirZK?kNu)e?%<1^_Mc(z}h`7R1&4^(1_ z*vXrjHF{I$sqiN8D#XQ(AEQ3X293HrP}5b}{iu;1`xfXDAcnb611%5ztgqDV9U`|@ zJN93a6DJbTE-B0#Zd@1N$E+lSW%Fp*|sf;Kg3B0H}{ zoT8Z>^foV}DY?#5o3!>caZQIMMg1f_QURXZc%=k&8B7f4{&q|~-hzUeCGaV7cQq6& z`)zvnGSSmOh`Qn)@BTHVkTp-cSsygr@*SVBmy!cI6fEvqsw;(52(rSjP_)X4wwZIY zZbxe7L0RC$C~t%iBMEMkDcuDpFZ&p^z>+sJb=lvF57wq7WP=7FjnB+zLsZzEdMKoTvb zyBRQm1{DubZE$QEan+~mjw2<22c)#cmM~7HQA1(LwT5BgHvNsAUWxH2wg&9#dG~{P z640NRtn}CZ*n?D#sIiYLE@A+$XQ0o`VY9bms0knPv%9*MP!)v*+9DP& zgYHUEeR)iRmjUR?moyZiFe+H3woo#(&5|m29dR-ml)rQHmeZrPyp-ZO5bv;gLYzP8i2D!yNzc_%-f20&CA- zMl{++gFl>thPK!^z{5O;!UJgY_^sGC%1uv`)w|ApORO?Kw2xjCWBL-OnOqYA^`J%L zD{cg&)uuIj9P1&Y(m_U?lpDqTCY>rIIw_vx_0BSHPa7u?n#?Uvee+w+5fH`5BAvAf zwhKh30d3^mBF`AEdPCAIkG}?Lpr+IAeoG~N6(s}7E?ea%oGU8aQO2h)&Wul(N&N5| zP3GDoCXd$vCvOwmk=EiUw`tQ&g_Vn9_(L0xzYTjJ;KM!+=@Bjv9zz4D2PRuSO;uMF zu2Cp$KO|OEj^F8+A)nc9AXMCSEay|&$jhPphE2ZY)j4iO_WOXm6VXVAD=2WLK`tra zwXP#ovEo*hQoE(=hpGI-ejCKR_6FMexjc5-C_3ud(JrK%emqa@W}=8wq2EB@)?IpZ zL&|C=Q0JX=B&~X8NJE+PRuJwZWplAtTQsw|i#l01SN3R#}-R|@x>23nnDo$nLGj5}l=CNEl6XEez=$KA$yI2=E>s#x< z)f?WSrzP7UwczYROf(hlFS6_P zHM$k{H5<&|-cU|&+D71KT z=*X%0_9ta3#}FPa}o3xg_`JGu4+Y9Z#x{Cxb&#E;y|mTQ9g zgrB|^=!9!L2xraC`P|*^Uds2|vI=+AJHP(+x%zb_JCW1XHGK27>Ef#Ac8%JsVv}Dt zC-&S=_SyIm|Cly>U1<25)oA~-#wjO#C9wIb#vb;uaK~d=} zHMejXTt#s6F`z|HP5_UAI3O)2RI&hbDVG9w1V?8CO==B&N^%b9o{rx#xZ-wXNLxZ$Ce^q+vPcrIoyQ^DwlZs@%#q94HT*{LcHYE=(#sPJMjt1(U>*^?A9c z>I?38pFuU=#&=O+kD&^pz-59UlWH)&2an`7zP3_x5h$c@h=bO70k;ZS5Kair$fAj1 z0nx_P;cE5Fn3Ux26$9Mrh2be()wyp>Hlr<99F#Y6?nMqZ?)kd;f<3u9-*>|Ejl|@u zT{^PmKPo>YDoB=nu8ioNwmiquf0k=-L;1@WyTcUWdQM*s@8zc8T5YS9Q0am*TdiU> z50Ujunr4C2J&_y0a?3>(S|$PU?@Gz9UUNl$exo$D?t@w4$KDxsqHdm7_3-msVlsHn6?!8ez{v_6I zYt~70E8Jy}Q7b3#&`!hR`u88~gk zuk9)&DUUgq?fMtHRo9N3;JlUSF*{d(_c7Co>T~x=*K=|(Yorp#KVm2jxlo7LW*Lt+ z@X1Kd?$+{4baOGL$l=e~^XR;FY8TEwnD;o3C2y>fk`4w6T;q|zz$k2;4q&PWj7i5C z#oGqP^Rg!J9z48aA8VGKViGSC=#a_UtdbMS;BP@%xTMuLRM0or)VpeHvJs~*6K`nvqe`#nmsQ+3QUVQne+mLr=!^ORLgR^PR4!wdk${Ac;_PtWWF{xxyOqbMD`HwE-(%U!Fc48spd zWtVmxy%q^B7zDRVCe2o-+F5F;XwKm zf*S*8Jp8u;m>CSaK|6lGjn@{3O~GV{Tg!rhcvJmbn1SF1gi3?kRYKnAH9ug?4F+i_ zg&ei*zeF|`8#2uQELY+ZZ;*itXatH=0Nw%1Hm3$pIQ6a}vnCA~#&HNYZ3=M@t5f4` zhmi=GaB*GaE)7^lgb+J-P5?K;_tTM%xB+0m{U-ouoeWPoYSwX-2=k@Z^5_aZ82Gzm zPwRwCGWg@gta#wpxRx%$K@cClo$`+uj&W?-hUtPDg3&H&xLCk5OH{5|7_)bGv&V_0FX0?o7fTZt^ zmM|zi)+^NtmnHxZ6`%X1*tL-VI22`QU2HBlj?%33b6T z4oKGn^B4x)+D}`4jJq3iUW`hdoZT0M+eNw4|L&jdYZorQY=PvVOK&0ZNdpj7a%0I` zG6n|VGSKC483mbFXxZ{x*{a;1{|BuS?ivJT%*D^aTtgS!o_GdbZf78Cl5FTneyzF$ zJkWrBK{hZ&^tK463G+U0YSz! zt5<`hf^0Axet`%zM-FW4Ao%V^ui+Gp*K0CD>SN{6eo3GgMLe|(T9Chdj%sc#MuP%O zfNMgSU$6_mFLYod8LWBqkk)HO=i|=X3DY{+fwYz|DGtN-zbKU|)ZCBx8|#Wgr$jJx z+u^4sd#Hp2RKGsr2lKd20~j`15-6uZFRmYH$qVAlz%j4Xh;A&(>(f!!HF6&2uZg%; zLn$_c4q_Ir6^6uHXvu;;bfkUY82~dpL>O@AR0n?i*;W}(7Btf2ilDQKWJx1uUCwU3 zw4x;sz}`9`#)x8uq^fX9H(-1}pYb)2USIaH6WGJeU3CIwBJ(D=Jcoe`rWZ$>ti35xJV0}B zz%~ii=4Hu~N_c_e%s&KUzS%Ev8$p3`3nj!$NODX#^i5sQUcLsdQUYUONjOpzMI#9@ z89pv$0{26B;^;|x8HCuSQ%qMC`YuH!#s8^->z?<+wFPy!3j?}@GzXfX>{O_T0(-VI zF2`{;K^1??rHL2T99VVNJ%(sAPhLxAiPE9~5>-SBVfMvA&%7L@QiUHqP-V`0+;vWJj$qI=adf0-aG}8tww06zAE3A)su^FZ z*u4KB7Y%HI?ah0A%m(7-zrDA0SHHJ$qf#Q3SIOMqk)-1DtD+A@eeN(lH?cOpsj_Epiu0uB~#x zN)_BJDW^_Ee+laTzv*}-d538 z=fUO&mWvE09CyO9s0P=k=&YzI*^EPSXVT&F4O=HY$@}f=e<`c;Z7FWU13Fv#Kv^?k zqL^QSTcQ#pL3;)-B8QTfsXFwjL&w+4uzOD$J&C@{nBW3g2TVhmRN^-3>S!cWu%n`w ziufAb#)m8w(J;$Ev0Tlu?<#+WA2>MsnT|J4yX_4x4TKIwoFsH88t%}NXJ9XOu=T2I zw6tWOHv$+K%UIo^&?5z29 zqa{zkMtQt3zz_sNApgT=fDdT+)uUOdFl|>BsWyB#hkAqc`Pp!j(l$QcV;LfHb}D)^ zW1Bg-1~4?14;Shf0SxD;l(BN4iOhuy;5;Yr3{zBYFCS1>IyayyHYdQ+hx~4del59hnz*|nQcdJk@V5j; zTsRE2f9k1NUAqy6&(Y9gZxlLfWa?d3^}{_a2MJ}ZkO@Ok#t+Sh1MR}nTz=oqti4cZ zw_l4l*0g2G%%2c+aP<@T`$$=zD!x;=2PyEw_L+wDVz?_Gq!>#t7+ffGYa2?>=+3>cW_a7TRpa0Y&6^~b$wUx2B zHg!Q~Wl(1&aPDegXz`}%@7q~Px9yXT#cjJLUHd}1_PvMOmh3Slz3=I=wd&rTyVLZl zWvzR*M>*}|XJe_a!Gz&&cs=&^o#=3~pCjr2NY)=YWO`ABEAA&-^e}V$%Y{c7X}@=U zf%)aB#L%SpY@aQ;3eTg+KZbL(ame>R`r+}5HvixHr^UYM{`qH*{)2xY2}gRn?HH(L zhx}$&g{!~L_UGa#l;AehD+Uw}?j8N>4?Or!p2PqC58wZ1&l6#(|J`fAR{phzzsvNu z=YQY&U+@3@IkMCLT-<-B!oM&7*LVK@{BL6YcdGr{^S_Jr@5KFg&;Qvr{w~(P6ZhXe z|C_k~wQc+}asS_@bq%I}V3z;C;{J84f0^0;1Lyqz8Lbm~-)=)A0rJvj*IhH_+eFk2 Z6uL8?b>P|F1v%uos*;vsjy&eh{{=R*5_tds literal 29236 zcmeFZ`B#(K(gv#S=|)9B8%0ndqNk-55dj%wisAqcfQpEMKqCqWhCxJz5TY%EiW(f5 zi3)-sg9wB{kkzg>@4NS|UG>ycPgT5i z%)wS^`MTwc7A;abWVipsqD8;37A^YKWa)44e?Imb!GAU`I<$Z9$%u@}fs5!z7t-dW zG>eS~e(|#1yYgQbJpZ+7&8mOx-OIx$zWRHka3sF=?)xu1vti;DzNi-M6P24h-g3%d z+oqdjbM}Y;Y4=<^zu@G6^9OgAnaHWg!K{`IZTzYcYm%s;pr8O&JV}ry^Q7>Hr>I8F zMT<6Vq%K~x@t6Po@qc#spA-Bq82*O@|3k$8rGx*a#s6`F|8b-L5ySr&1_K@sJSD?NOG0{(wJkZSsltuoC1-8dR=*UKW1M&e_+$F>~`s!i`Xeg#P}R-v>`i zFGhHa^XObIJ|62Py*O8?1b-Nqx;U2{hDfj-%~)QEtJ1$hI+-VFSbyz&ti_)5HNFK+ z8QtxT?MGtP51tLzuB&D>8g~yGQl(){dGrd|^WWw!Mg)EfYU((i_^aifSa@oGt4fWY zW#!Po)R!7XdQqz%Hq@QcJ-C`BeKXxNm3S8)uX-eA&6X9_MqH`ZqUAc&#hX6m5;LerPg&d`R`h5@v};nd;Se?j!U=v(G?sujg77B_gETKQfoq` z{rRH;Gh9KJ_$-c|v1?lgcj|Ga4vS_~S&JSQxH+HR73dui(AlQc?eRVUy&nI5 z7Zw$?oX<&TG*#Q<B3E88_wNUEYAPFJDVY z61cYe(Y~6KN&S5Zp?6INI9Fbd4{qj4V-~r>I%`Jat(%%Y#5L5JkSP%;{qx!tKLdpG zx&6FWKO|*r>U((OTjD+^{E|iezr(lBe;>L?_k1GVT9=);7)>B%Z*l zENax;7{;+JS;{VynAO#e*rb;*f0{{8zYh?OcjDt*2+?W|sQK-6b=B5XBQJYK=r3ao zxP;qkIEwn9Tc|d=ymEBDjo?A46s>0E$-W&}tWu^EXovAw0MQ|nsOS#uOs_B z%XXsQkbD-Irv)pF?SbP}nULEnl3e3CI6Y5_XV(l_QdWeIOD15{JgBaST%3EFz;ba7 z*!k05pL~{TsS@VnE0WTpeqJ)cI9^B~HF4aml^zCVB@50ju2~LWU7V|uzGmX_2VC#`*|yOOntd8u)T(&(luQ5*CO zrMCq;UX~bqu<`%Q!F4uSxs*4&W^$$)d88(%FzHfLmCPrCjK$^_u*|)K%Id0vr+K3R z&#kx|+_JSN(i6~5l`-EI z??;l5B~;i^sD-r(i8W_wSvT8x%*j1nAX;p`8GOIZ?Z(*58`@9FYg!LN+2%91=X%RNF6)+ z?>*H^!><`umD1i%2|gp&aLHLeQ&N-E@m68Vy$@ojo6F^$wL`UWaPuA%e8gPh zRCAYp<8%U}>18_0K^(s1=3|Jzp;n@4oaqzk?&$!ufnvTaPS!EO^bK=cscr{_O`frB z;U;FUf9iYfY4FMiBr^bPI>2xq(5;J>*3y$-Aup=2KCC@)WVbYec!PvgyR>F2eD z$E?x{C`a`PpXJt=aA~VHn!r)j2MQXWY3P^VtD%TKyW_G4@sOjXGWMfmtq(b$!O5oa}=y{{h+6*L0zSY zjcOq1oUzlJmRsiw_-I{H+GZ*a0`r|FKK9*>))$i6Uz%;ImaKjnZchsid>0fGjncm; zzn>3kC&~bKytOM9wu7LA8EhB`Gq5a|R6g^yXZK<~uc?Dq5U#vhp5R;8%TP_djg+Qb z(5`sI!I4%+N=hTE5a4q$SNdCmXYVJ{-)~;q^k7~;N4kE=en8rCuMc1E(p_H7*rJPr z9p5CSjfuRMDdsaHB?hzr;r-TNr09Li&WobYy;$FChauI?sD}|hcyN5!)eu@kPa-~2KW9x*Uj0?ayV}4l{3EFT6((KhT+z-J?F`^XgGhlr8GsC zs=^Em4u%KEB%?i2=HhLS;GuKfDHUh3>%mM9x96Oioo~yWCm~1Bvbelas~^8?SnY*G zxa8y}z>UT!No8z!vebCm#@|)`{Vfm>!P;EE_1!Ul!Fz?za5mDICMRk5qGK1~DvkOE z0vbO=vVTON8jj7#q3MPE?#T?1_bSEwIKcWfEQPC{D-?Lq8a(#AVWG$L!IuReb0qA= zPanYj_z>)Oe_F}ZjF97IEqHQilHdwh`db&$2ZN$HZSdpmw<`GRMCdI2y0g|-9_>hF3BU4{f+Y1^o+~C z%D{1H?P9w`SfQ{_^{Qw!Gjr~rjcD0NNJ=ki8@rXW19y#o>C6A;n>qKFw8ryYqEk2( zV)6eAhkxwI8G-NtXHDYZsy!&_&&BuaJ>xZNt(S=f!dC@*`u|P6z9Y}vNzw>!K3T0iep_ns&*FBa`bjfYBd`L`k3jSU3kbGM`KgrM-9^Dt+<#oLH#+FyBE;TeHV@6>Cp& zX&B>rA^!d9Fo{8%jsMnB1gUbK9K*C>^aMy(=iYTqicnS!%vyi1P`a-LkL}Q4g5eVQ zrYVM)0EV=9k@;=7)7V2da%E9aH5S(!&H;uJGl~esYzqBr9PRZN?b#os?4Xjp^k*-E z96Ky@U-=hZ`ASrM0XhM%FR~x(=UsKP z(;J>|yIYo}WK|H*Zj#J68g|-5_~AQ12l()bMxY-Y+&4(@S}fVio}ff;b&U2TZ=_y# z2oj9=#OdL_BuM%P9tavtukpYU9bU;CaX{*^UNQeMS~A_6t4P1sooIf^WB6d#@-_nI z?3e$0OZDB)!-5pBDa*z>Vl6&hEW(#hwE5w_i@eMHq~BU`jXCK);d31amGBz(0);O( zfe8|MCd+JT8raGnXh~2t*B-gZdJ$pqP z0sCMf0PA4)+jC4*_$b&sN}*x7n@Y?Y6YD7LStfEj7mHoQ+zWI{>FNFM3slS*D#}-#J@Eq3qK^PnnRZ(&G3-|t&e$=5RR#E3o?6Ul50qFXv|p7!yWmCNE>FFB{qxwq zsvzrG=ajP9D~z%wf9ilwu2Zxvy2MdU&He8N!X+W2A|r^VA4c)1ul?z%x8cl8_=aCe zz?Gh{*(cG9Kg!&w@fvxe$?b^rtjNYcwF^nO&HIIf)N&W>eaYiGO&umG=e3Hu34Pe5p8`7q2D2n-Ou1cm;`=pw` z@iZO?CYSeB@`qlB_F$72AbtUWgUqRakux^ulaytTuB;z79qchDTMWs;H#ZnrO>YYB z2^)68yO;jviL{WdOfo#D(lbh!fRBmh z(yD24u>KY8ir)h(bd0?^mcRkvVo*Re+I0+fH)6cAl@jz5;?lA1bo9R#p;TFWdQBX^ zxxKYv==`CdL-c^qZRg;0bJ>oVz!zyooWBzLdCIPKoguO;2wWw|?DFnAc%lKfdhsLR zUft`yVNcHe)snyrm6TqK>+S!2dk)KO%5^L&{}ATti;w3Gz53qtU*3_E8}grwQi8m^ zyO7MkIMyR=?e$ei0ur+6@iJ0ZWD%foWOlt~7cz@S;b@A3>Yv30x(@#U|O*n$;UvXLyGhp-b!zS1man72Lr%ub96z6Kh#P z&)zvB=&IZp*)+6_-kpg*)gjNy_H-g^?B~u)cPOkq8E^-gPfRJga7RSP^CNdW(*;y= zd+*i>U0^9)ezNUaMeW``INx?`AUhmZ`SS@FK6H$=-ISteDLp-F<9`bv`b%GeW~f7a zLEt#4$jYi}=zO<4=G36%14>BFPHswr&m*C7uC>v%bIZavZtIC31dYK(FyE$=EH#;B zbk9pK`;xLSO;0+deFmcll?u2uxzS6^qYY*oye`QWkB7yNXXY#CA?BU}-kKZ`>aIsB zo2q1G2&m>Cm2R{p4B&c``J&->KLGI$2xY4>;8VYzwtT>RUaIr2v9oaGyM3yJ3m6m| zV)q;g*~Mz6Rg4;jF>0PeiMBmQw(FoOMD2!Cnzb7a9`#5QbSzr_2le`&D;QS)t}C0= z{|R(-fnA4pSq+Rg1dwvwDhpowb?c(=a^8JbwmA5UKABVbDVxB-e*D)JB>gUmk~}uRk~~&hCT(YU2&6x^EJh++oIHU{efU+V}L(tKR+ zlWyY7+~e2Z=N|7w4^z~fuiw_8UcXK7KgW{;4KWpfTH<*Ap5FY%-Ye|;f{twm!ouuN zm(lwpJt^T=KFzlopMm6eo42N|B=#qKRy|ys2iG1QYjLbJa17%e5kBuJBc=Q%C5;S=fos0Ogt6uN^C% z{y|qhnQ_6}^f6|EFM|#i!JaeDC+VtHI#5zThIovsBj}^be@yGrTbHTiSnFSV0){&- z;MVP^tN!8mYxE{3qCAVrM7aSDDf~mjy|lAiwtH}+{=4ns_iLDU=`pk{WIW5bV$DvY zYxt$%PoGa_Nlt%}9}OyzOF%$=)HK9R2$hduJW9uV*saI-?`?m2+Sv!oN&f@5x)vN( zv$czyDyUnOCbPY|Rj|$6&yTq0X3_}K*EO*1Qx9{Cb?KtvpAR7S-{G~TJ+IfMBFsc* z#`>^!49+ipo2b`6ek$5#Y09rSNs{H74JAx8VlECey$8z@ztr95S6D%!e89oAgLd)! zpwkoL$;I#-(52hK?3=&-nu(2WfI^&bhv&3jvMO*4X~>OiDVDyy|12;FGhM*glG=qzTV4${5>5c36dW2B1OE`J05a z9yF&?Zu5kAkvUb`+wb-ECglWv%_n0B$R_UC;AT-YJ?M8lc6*ezF@3(xX+o;?8*e(< z$l@?QW?vJze(gtMQjH}qP1fu0Ov(j5`{J zlbKBq3ZP>uw3wU)k_o9}nwsm_l(PQ2;9lg{p+jDr0)Atu``V^%_}sT$cgdCOpl%*< zjv*D^4r!XAGzpqKe_~LeqPPNtA)3Vbcn`{`aSgk(kR- zwOKL+kvt+X&fRs?M}U%x|TtATJwipmNWoM2_xz=2lrQtyE(b zA0UN|&9~Vg@2B#6`*yPT@2esKrS6?wmn0~>R=lrjiRQ?hmA;OLT_;vzAhq#_1nlX` z8U2)JEA91lzL~}#zn;17M4u~8+?_3+0y*f}fYKAoh;6+m`=R+#yRxFbL`9b$6WuxA zHi>^It;)@BS(1@BZrbQxP)zE5pUzJai*ScT%o_1g$Acavhp)t39aafH@U6 zHdt?ax^k`$k!|Ht1)TZa!GI^?fUz?mIY`BE>Q*R}7syONtSJFP>cKL+Xxpq-^by&6 zf1@jx*B*7=l99o8=vK_v#7L$;HJaKuJ8$7eR=hy-wY*)5Ia_Z_Y z8>+7?1jZjNJ94a30sSwOlOhHFRs8W+&uH)GcFZlBhU&MrfaUQ}jMMwM080=^xxt<$ zs31m}{}Cv8PU%Pdv4J*!pu2?GnT?TV={L#LoCAuEaq1G}ipoxlFHp*(A%3~!n4s)@ z3+pM{)N5BEeP69OKPdoS2wKwgx5v^o{;zbUJ@+HSnMycg=&$tiY#?K6uw*JvN6NGv zL+XwiKTa{-KFFz5hFUd9-r1>l^i(Rt6W0~5$9jU%%}v4R>4R2+SkotxXKzSIAb}Qv zXHo=(WW$S-jq!f^KPs$9avsC(jt|COA+_whdg-T>Pcsa=@T#9@l3m|1ioo9CsTO5p zct$QwOf(izVE9-neYfa4p!U_WkQvrVh-S{Mj_#JAgu~La=jW0>(8qX=uJweqWl2#_ zBg;*R1U6>2eQGS*Gv2*+N9;S(lLExWkFk+%F_}P+Zpf7~?1+B~x1(?8L~2l@QqQTA zZws$=0a<2#uOaWHXI{W=ov`sgK8i3^yDACk9om{t+J+~BL*oKP>^{lnenWAWw$2{8d{Y3793rs#S{HNZL~r+tY~+sUuC#PlHWF z%ooDrtb^fHZZJbSFh9F)r{#7l(E*S+t(~a=k92F!x1h#M9Clqzzp@?X)Sl7J)a!37 z3^^}mpfdmxM@yyi)u)4oqT*l?owVH3P7lg7qO7w*tKgrj3YpUcD~uXNO78Dh%vT}I z-#W_b=bcr|hnADCHRZ47C6KsOKg|R4C~Q?pdjQ<#RCm_T3UOSYRMkHqD$n}W*(m;o zmApWKH!znRsN)X^H>36CGFUo6Y|wjZDlx>K6hnW9K|EP7h&>&83G5hNdhqB&&-kn* zfk$QA28!_}%BM@89F4-tslr*i`hec=y`zuZwiJ5Ka`4Y(p5_)WbnKQ~h&T_z)2r^r z7rvkZULXmPa5?_N9qk2#eYr@^VI1}W-k3NFeXKpRf@+**xEwr89 z0rSi{u~sYS4)2882@a@P0y2^P*_bYqw02(nnASUb-)W2Lh_$E|>;m~XV*vCL(9de| z;w>E!tn}c1BNv;JciBCV4KIRqjvCT^Ike&wxoEW8(*@D0luu<>235rzHLDr6*$Xd$ zto?r^GmIlfedpAZ-q8o`L&uFk7u+79U9n;mk={U{4NO*GT0?2EwOPU~ch2ykF#N?_ zg|7Ul#maQR6Wjt^u_XC*QVpgnF`u+G`REo^LUHtHo17IYr~;L`&BG)&HVM~nKg02P z`2%?@Y?SO-E`;O(eYgf$YeSRdp;Vt>?|^aGGYTZ_!G!`t`m7l7Xo1e#Km|KEbzGgw z&+YYn++KLm!WFa0>0Vqf0en^7@k-!%E`JzENfAU}9uFPp^y)56>_3QB$iQy@H<=v; z<{5?UmxeXi{j)%4ePl=^JT1q>;rWB@fwYH$jLRCkg3p`15f3jI8M-_|P}XEGPv@Uq zDi+}2`Rb!lLlKQ}y`X4Yrw>zjKHV{+99pbJ7F3+Ikx^iq?*NVuPQui{e4I4PPn$bX zhkySFvN3Jfe*@~eW*hfmY8qKWmn=b4%1oqo z!Yx5qNxwJRpyVB1mkvQY2W;oxiU*4d<~TV1y%OrgpZuc~@`#QhAUtXU+yXTD1R-xp za%1drqG4$J9lcxf-ct%n4!N2n?D|}!6g6fVbx^ij5Yw8YuCP}DnPqPih=zM~W7ZZJ z^#Nj~PY7un?gdI^VsW)hdt_2n&Mr^C>bVpnbRI#hVR#H|?!e4qL2=fD0*g*W=kkn_S1LV0XOh6+-(LUdgVt~8L9_;x z-YR@eVaeV9ihV3M*XmKFpfp0wz6C|egOb-Ug{l(A1?`hghdSX^xM$Z)Sc*ltnq%d0%W)K zOp@t-AyYqkeJfH>`>DuAYX8e)$Eqc_3e&2Jo|BMSu;+&fq{A48Z?lEtngB5SS|Cg{ zmQ+h}Ulxx)7HlZfFu&+^X6*^+%wBS}tIs}A?ikREz5G*xy?*T@So=A5 zyjx#ZcQNIf9OISVbMf21`rKdsX7Yvyuxk^w6P3n90`Qh62YY<1(%|Lo zv8gIj?63McPcBPJpE{m@6DyosBGoJ~^ccAQ9X!KtVv99ZSuS9zg-WKQ-7)G`KL~(Z zouBp&H$iK&XScMfWJ=yvsN5jhc4_yl^VcdVN3Oq%;^><;Fk54~90oPs%F8poruwbqJmMTmJ$y<94)7cf@MnMy^H2YO+H@q8VAqO< zz_W}{fXy7|e(1klmV{s-v=?fQu)Be&Q-3i+JAH<3Qf|A-TTGd8L_))yQ(*Nd<-vWpY%O}cQUE462yzsrKUA7)Bpn&8Z6zblKgXPorB!? z44hm6YzLW5E}U5ZYzbjk)@;2s_L$er*$ zS-{-p*(a<&N<{lIIGwqqp;E6w)nq5&KFkWt;cPcg!HyLvHD-_%rhyUejpC1~4xSaX zeOEit4nq^4;(CpZ?&VtNUHWZSQ|lh9>eG%<1mzCTP=0b^z5!J(Us7bkUyvUow9Du7 zZG6~Q7$i}XfvRKVcx~{+5n5a+m~|6mgpIFsR`bYN5DHEc$Q4VXXb^sHx>(npy5-!C zI6dX!HB4{!YP~_qwI00`#Y3o#SYOTO+W0F#;}^zWN|=?zS@#st=kRCJM<1!Gi?-o{ z708dqD(ay()DpcZlvr%Ny%ysryQv?a#vuR}TCB1*+kCe8)oc3H&)1SE7kbUJhfer# zlVLTh$DjeO4Ta4H?h*{K#m3H0H#Tbe^`tGMd?X~f_CiA>4l4DFOivrOmKg5q2*@j6 zi43u_ymwo{1x5l~Y87j}vZwO;duNp=aA%b{rbPGqquS_M%?&KfWFilIty#ygvkCK= zL{t>#MujPmAqMM!?p4BYN33H0=mewb`BoKh+e^9jr#)tD{GnU%>kfH*y>>ibtiL4aQ8 zIRO56Ve>(8?si$$lF3vK^#SB4l>SCC1zOP6HGvIn>EVKnmqU9`=g) za9;Q93S0ez?#dzujO5#$$f;>y-Dbw^P)3z7?ddTbiFE0}w!a+q{QMo>+};{g0Lnt% z7p%H~Ut`VPU2&3979^W#m|uH>!W4N=$eH1nHPd7w%Wq$me&i4AzA$?fqha3>D}lA>h!_GAA`nq#yPxXS&5#21ll?~d}_Y!Nq0IRAl7*}fMAYXlueF~iJBBfQLc#;>#o_OLs1NceAS?3xf`k>A z#t-bqxrem4`{AZSYdO-LK*;0>AkV9-j-6Dl#ijDK!P zrp$)Qb)K|??L5o|e}7?~1YLg8A~>RI^h1gHtjIgPdvH6o4KLa;s}%}j^)K5V1}nJA zC^yn`F1;5jJi-2vv+kJFm{Gb6WdA^w>m<}?x@{`)>n5Q&8oNH z(l)1;wrA;_?YOzXI}rZ2Fok z)rcCf)RSF=ZPk+g_a`qjjw@LIxiBbW1KI7>E0qbhIm}DFIb+D*4+CtF0R9ucz#*Xn z?P6RLHrU;ZO}^AxWS#0Khv$bL{<`D_#bJ-YrTk}Z9`=}ndw#BBy)|ZO#dux>C2HXa z(PjNSC~=qF5DY#NWVo*T6dqy5`;?a{5qWEOOPs1am$fTnRz>kNGX(6O6YO`{O&zM9 zm9BQo_Z*z6gJd;pIIW(5!_4EoW>omy0jWQTb zt+n{0n1kQ8XK_w~lnOE)7*W{OnL@fpNs1qfrZxH zHJ`VCsc|J#=28j43Nf>@^(Ci3uL%v~J`4O(mQVUKJ+92n^TGHeSW+*?1jl>aw!RV5 zGOg<+sz<|%-)J;Uug!<%fJCOfWjh+HmycBU`u^)A2qLlYBe9)y!PW~f;^^}o@E3W1 zckOu3&MQMNdq;auGz{Ko>Sp3k{+Msm)P$kCh0cIX;vRde^DNi5p%+{7L_oa~kN^yN zM5Z{$aE`dxaIdYG*9q|6f`>FcQ3mf)o%Sb+fKW@UOVP59Q^+{bA9fR2r*LdNZ zw&K_j{^VgX|D(^jfrdXoqz9h%0ZvtRK=|@tzn=L6S=<8a5B8>|H|o2@oGgXzPhVd` zx`HDV1bW>3dg~3}B*&9M{SMHsfciX6ctZiH+-HT(lhju9VteoKARqjtU9pu4a}rOS zq$@UOHK^D0^XvgP1+dwx_DB!jf^6Ekiiu`R4={{Ajtq|1{w}A7X?&5l#rB*nR?@GQ z)O1_+0k{AWjU^a|3(Plm(n>tHGMk}y0O~?A`w?O!g|IYf2JW*{Aj*VFLN1g+`Ba+(AfBL}U=?6z)vcSOSA|urQg`0Ck zL}v-KBdTPjF|zLcDD|dw;yw8p@h|v38>#^`OikH(BPa&Amh591X)Wq^VRjw?opAF=}WME>;x3J zk2>T3C^-nIzW@uN2Zi4D-GeJxJ*P4bi^Ds7=9VbP5?(1JQBR6(M&M4rez$zmQac)2Hzvbn4qOSS=Cf8VCi}}k~wmWATPLK91h_#7Yk%HXJ6I6wcO8jm9F|Z zr{2%Em4$J=I^ElxAi`9-%m+b5SF28{DFBAJolYFPRnjz9Ep(Dvm1$J)PA&#D6aAlv zj_Da^H-)7;amryNFH3q*n5U?~x1!fLj{o08Z%UHZmrpQdkT3p$i;8Qm>ESKt^ zcOe7oOsEvdjbQh$R?=u$#C@4QB1_yLGQspADE|*PQz6Z5foUOzQEF?j=Uj6?JwAjF zV~9RRf&KFAOO&H!6KU62?btDf(J$s%a0@=i@Y?hnkEMS2g;8ES*3!)du|=t*4q0{5 z*?EnLK6-Pv4ddPKYA3wSrKiW_^iNQO2e|MF9Y7s9fs~rPxlnEzFMMqTZmA!wRp1}> z!dmC4_pux)aGkq&(xx}Nb;uKuN5}c=U1?Wd&KI#QJEG1$#hzTvQN=WC-g=gZMhQSac?9Rk zA=H@El}_T$0E@WGy9&w08t9qqw!37#hpp*CU#)EmmC%`Ns~OO8JSb}|zx_2k>7Fko zep``RDJ1)`uff#qerOD-0QNL`b_c6PJd_66=YU%2%OtFTQCl~f$K*QmzShV zPXNQEL-gzCv_d*c@(a>pmGLCIPhQx@mbRbh@jX_>t!|fP1+ERlKF`foc-OZ^`7C%aCncoBAx#>?)~!4a_LPwVKuasPFZCWWU8plNTfon3j*wS)SC8=Ua%}2I+^A zrb4lFeZjWit<`SM&g$V~Dzf>o(xfyXhVmYgwl8++zAnj1L2AA)D#TV4snl+f|hV)BvPuoUQOJ(JoyIZ5lw zGl0~5TmktbMQQOzM_BMRjJGKR2m@b~d8^le zrwxfgmLc5@zV+b$CA+6&f@ulU(Kt@nxAUsxelM1N3543E53|Gt+GHn7>DO&!l4NC| zS^rbspnX1RnIE=M)4bZFufB18yW}h=yc+;tLL}22BZAj6#UDkwNg!rTQf3;M@XGdIAZ{@K32`lh&XIgXb8@5PV+^AyH$dsu7KE+oUH;%a(k!t=gw! z%6@VIwIhd^&R0$4Spd-ry+QBC9f7-Ffw&yt|6hv*3Q#-lzu?Kv>(j7*5%=bbv z41vokREkCSd>i!1N`P?c6vwa6E3y-Z!wd%8I_8HX6hSagG@P`(gn5G`Uin+5RD1T@ zWm!UI9)Yc!L=EM@TvP<1B|uoeMv#2s70@HWi;^{K9e0HPGYcRl6Oqs5;G3Krsa-K2 zAjH5zx7xEDVWA73>fAvND*Xz0N4I`yKrON0*uP|i?*n>BhRow|X>_(t6^db*gx0wB zg!~69CYTL^J`X&Q_V(B%6zikVxxBY9LmGAn($^Ue3frQ4sMuC|Y;gnTs}o4gyXE~ML)6CKL4mMphR23?`STib51~scHvW4_VO5c zV-ao_3J{pqkxj^f`4pE&qL9;0RV1qr(e2<4P^vFkp2$BZ)Lb%GxlXN8BFz{)v?c@WUM^_E*UXPmQ94q z0A*o7k_Xa*6@U?Z5(_z`LP!1k}|flt>`$4l!QQ@al5V17H8BSOZe@ zAcSiupfyZgvqUQN8oYF+z;ae!79I!)k7u`T1j4w2H#mtKfNp)Ybzy4AF7EE1q0&k3 z1M=l%n}>mEs1YE3E`YoT-7j!}jJ%Tgf%IV7K+uC^B~OC{b}h0cI#1 z_RK>{iq)#0*e`@p-4vKR-dBZHJE)Wjr5gOh5JXkk+|Xaz#zin<u)!Pmn z2WiGqF@IkoOhPQ>OKZ1K0}$pASJ!5MZr{4IVP~$pe9UAMkkvuanTT^gv9Yqbv;sY= zfT)B4H|dF14zB3`3SRIF0LWjm<_YFU_OStuG>Gj$E8Nx*&GsbqWv1-ayZt=HH!1S> z#;1Qjy?OKL#+PQ#j_=)*aV%tc7iVSgm_tU}!wiQ!M|@A)l{|~Kn0t=#2kp<9JLn}z zf5vzm^E+Pg%AXA%=6Y*=Yw6o)I!%`tX=i;8wj_4`zHkA`d_LU@ZItTZ7 zkbsMtZdac+#W!E0dmqN0+QVMO3SRv!n!%jz`3+!2QiGWmg$chuFj^-yy4f_+ae7Vo z;4C5z#>qG2e6fC|ln<&7n?EObLPb22Php&er&iM&mOK3kc@u8!utDvl)W%iGjQGyrpZhEH2wcjkqN2^;>mJt*^U`Dbp+mDtAwP2zfws0AIMKG(e{(0Y zIC`ilr7R|V#X7_1vkjp|X|Ar`BdUnLup~14P(^T~x72FC@aEcvJFE0D8cXs_B=*aW zY0{N#Z`Hb3I`Q{1Cc-x4Ts4(O%%OzFx`?gf-F@D3Q_D)v&7(rZUp#rty$pk$(yHkG zhL%}p3-3>_OJ7LcCqh1l>F;V5dA9{4H!zz#1%|(&qMpu<{%aP>b=&LrZ?v^iTIoK9jls-|JC%t zWv#Vck*{Rh*0~F5T^Z&%`E4d${c{>S^rrtE4I?A9?O)YjkGB10r&@z58+u-Esr)9p)hdKY_X0ZO{B-ehC_geh> z703-NFl6VE9e;|?Eas|$<3&U{chj}{^|2R_F zQax(5VZA#FN6#J->i z9i|`>r;yL>Kz@lzifX3tOl|~5R)Cq|)cYBeizNlkJpMzD0wYqn@HmXCr>Pm0lFqmi{Er`eq6B@Avxmad0Sw{0Wx8zOZH* ze{O!H@_X-HQnQG|zNO(CcL*dCb7b zyYWz7bB=~@^PTF^w#m5UX1+s%xx;Qw{OLFTF5BINe`S=i-kAx%TZQmi_nq>Xi7u>} zd0djw)0LV$dDlq)o2swJ8&e0`)cNgaq{lL@zPnL6MWqb?Fsf|n_`{{8+-b+{ha*Mz zrj5F89@pu_JhZT_d-kf#D6M`opdFo8}Iut@MlWg$gr?@++&G93^ zk9(}ezfA%UlVbkp&?ay<$$ zGb2$KeU$j^4hn!}{&c9?=h``4xmH~ATRN87KaLWXL7e@4adg*P&fi3%EA+IObZp^I z)zqdSib{g;Em~^(pT|yc+VrizZ>)gcEKB9YL@IWYwUPU+NO+F@1!Lg>f-b z_ymoU6a`IHO#Ls>NvtTV8MGaD59_bx9VSm0%5a6)Xc74x1A zXsgO65<8Ft75*Ad$)DoLy;yaks30D$L!Fh7UH=oFi6*|#d2d&>&xVAWONa+%w1J5x zFcTx4l9MHMPmwFK!cT4G;Q9bdSMaa%MehGu;CwDF&8bI@ZEF<)-21J`m0GuXRuo># z+;O$-W+vr#(p`mn{ShSOsoT6KE__=~yL65H=0dBz@cYRJ)#u+4Y8KL#p&X*KP{QXG z7yQOaD+DcX_x?dbUd1GtkM&&*qEL1fRn>`nf9u^}wa*ZjDLu&UKtj7xp3J1d6rx{X z;0|%>UTmspQpYn+m=lwQEd*yPX%tt84Thd1AHjO;L4jEfeco3^jDDo8PQz{o)H^Q; z395xysG&WPbUa1cM~(37W0J_ADXA#r7d?J12HS|p67{KJ$8&pLNo`jcu3{yp7Au!{Sgf?q%XASKEh*5UYTvJQ zVWB{g;&n@!P{QxidhE7qxik3nv&o0)9st%^^KF6I^-Pq|g-+zAe#UDYvjWd6-=%W9 ze+RaNHQ(mYJqW)~U^aSpW%^Nj;SO09d zYw+uA3^#}(WNfT}1KsPE%<@#u@tvg`mZZBK#>Ri@ZygW@j?2AKYnmYDE(!TglNh9> zDLj#gu4OF?w;Sp`Q&9Dyl9w)67d`>zLP!L1;kIliV zER^t83F4-z2XduOm*tCD-=(uhtM>ikqED=#$YTuKo5;aw0&i003rprJ)vcn>jgwXh znx{$)=yYsJfc&ucNZQ)q345MBMokY5UX`jujEjq=-T9__2{2T!kEClYSq&ADr-;X<^v@y0D)? zpF5B;o**b`65leh&=+33Gc%Hz-Te0cus1am$%c8f#=VTM<_mB(d#htv(1x4CG_#d7 z%rvQc*C)N@yUgjzN-VT$@@%_2aJx7-#7TgyW-g*x)x!EF{Dy30ZHc%t#nc-_<~0n1 z2uVT8+*nCy7xL6{zNzy5p7LK`AYGoK8#UKa<2c1k05J||us3>d1B(F=aNkNUL9S-v z*mE1T0yyFdwD;`$Lobk?FAs3u-!fn@e9z4&dY>Z?m-z_wS`^b2B-E?E4kv+VFD$CoUrrbB#j#5=u3A_hX)*u z8c{KrkJBd#^mBNv@^b+)>K+h=!_nJ3`TOTd8e>nujFqF$v19o8HZYJy7m_zi5O=S) zzG)jYw^Iv#dlWGjuQEJ{Vz4_h^2ci8s z5WR`xT-6Y{ktm!3q8lW)$Jf_;H-GPZ71N`ukgxwGB*_&dZ&CEtIeLeC{ zLZE0Tt3eVT(n3bGQZ;nFhu-defyCZB4q-got9XveTkHKX6yMsrmUwe3YFiw7Uni1y zYB#m^F3(iCIegG^B`t=V=;wb?PddNE9crGpY7S>largRXcOnVW{kh&%F1LBIMYJw) z-r6HtHT%Wez7);vJ(~J@XIk1vsax=)fWUj&p&~OM060cF@trtW= z_^)NEP-nfUv=L%D@(zU{GW=2!wR5D?Rkf&S-w|nT@D+8lD@RwjT@JZZdo}1N`umL( ziD<2XcwYaUYkI!^6=i-&wiWz*=RRce7)@4yNwOq-am^O$v+GPV&hg{>e?X5pDf~Zc*xHd{npgHAl%l6YPO+e(f~YT#RkJo@f~g& z+5NOt4+EvODW&{}Df84(gW+oZa|he}N=8sZ+7~FF4amY^N$F=D!-Q-xB}nTIJ20kv zwn6oiF?i)AJ_Esr`-G$m0+&TSiv3+R^V?5ey@n2%L;ai8%o zJbm>@M+R|I{0jJO9qn%GPQS@s^%%yl1~J281Li&Koik|bTW3fyT4h;6OCLgNw;F4p z9wp=AzzJZL>zdj10L(#J^8~RQY$k{{?K6%weHs9P_cbd~TG}J8mw-R3fmL<^-suU&_W^qF6jT$C}HKGxjHS1 zQ9mQi+LIh>vFqg%U^wCePyV;P{&+y#kR*X0ltxxyqa9>6dHy&xa^hKVLw0Ae8y0>n zaP|E?O?JzLev2R$NAkxwuf>;N0bLtZzX-_4B$SRmXex^UkguCebt=mSA@H zP^XdJEGI-;ofW>Nt{&e;HPK;`*#F2%yW7Vfi8Cj>VkoycUUv?Y#P$&H~cIC`s71|!;E?#nOXlmNv3S+AQqgTnm ztMjhG&)YiZz9>oc9Ekk-(^IoLr9%n$mcJ1(Y8-yF8ZE#mh~#S!M7rNS2zTdieSch? z<*t>(>z3a){2)Z-Y79m4<((O;=tju*lv^(#+P0~(K0Q@)FfXH2G8af{bS@4GkSK~r zr~JOzj449>iE?%w?7O`f*{oM9S!r5XeX$?$z12dw`dQ}_w?SOHiPZ9ohhW&um)TSr zG2dyxe$?*Gm<&B9$~jR}o=NGr{2ZG|C0ns}E96%b)|GL@-_owrSe_mg+z+7F1W_yw zpxvq}alCZa*ansbOSJDS%}1Dty~7L_8xShKkwe$KPL+k+SEdQyHy)SFj2H|{uGZo-6rp9T*WJ=gf-9nD>uSCQON$$>8)v)zlaM z_rKF6yT4olM;;WEnel7zt>0Ygf7dOJ`s37D@!{Gv9TH5$RFExzfrJo}%(*wk>HG=v`|*Jf z1aj|v&+?peo^#&!7F0RRR#Nhz{!JwnsZB_M{9ss&mSp8n;;JT0e+y?{7X36x74x%l zDW26_3Bjd(=tHD@Z3vEhn-$sQFG*hsFujIhBrZWDFhQ zR9Jcfvff?jp}_ufZq%4ZlwcxuI`eSIU71ArI0Q9|0JjJx4u|IEyalgf;J$JY#CL^_ zR~xQx|lPCiXfKv zf(K&rIL8}Mgb6Ho7a-wpZHTtNQZ>{k zQz{LJ)X9E+DT?hT-JuWG&;lzSvpus14pVY%VGHTxRU!p`-p!@dR!vBW$q_{m0^)>$ zPoj4vvFFcxywi|(T}viufI}0IE8x)}ul!S!=&Ye!z%30*W`Sxn8YnRSvgdkalkJ&^ zFt&_X-Ycu5&>%r%;Cq6S(}DB>Nsf?hf;oTz+3)BXYdNJ{x(X40_ z({*8E3+!pqx`EW^Mk$?PydTPCpWIy$>htgY&Q^_Dj`GSW^via`Siil0VV|!VFyS!e zTMw=K|3yXLCNUl8^6#Jw0z1J&2QW#^etr^*#uDM1`KnE4QGKOAioQ8d_CO(^Qd`K6 z6eV{0YP&+9K4h8|gHR!C&PyuhEtXsbFhDG23j_Dg7Iu(CF(vSf9*)}7;(Re3)(FJ3 zM5sA?G7Vu4BF?*OpiD+7;7g5}I#7@>vk6Csy6?={p!E)@q5 z1KDH7i-G2tsk~b99HoIF^<*d)KraDbOp-kYQw2pROcfT*f@x34>kbTK<)fLjM!7)v z)cCUOLkDRxh7WbON9WI`robY0TljveNJ^ng8Xw!G0USKS6?m2R8p!)T+RVCPY<2-Z zAQJ9JY{Q3yCp!%-@cizgxCOicX|~P%ZFRBj9hs>zT8%RpjK_Wx@n69;0?I{CQ9(9? zCV}AFfEu#m9$0XeyDD~d;cS_2w1Dgi1BVR@JR{894Www2hOT}O3E{Tul}R@vduYcX z4?8D;P6BwiD~uAawrfczJ$a(QE^rJ*ML@6v_dt^DDly$kw$o;_dF>3>2qi2wcIaz| zWXj*-6kQQ0-9heOL7EKY1BmY2Ukdl~MsERnqBR;#O6q*nq44J#Jcs~>=KO^VN%89^ z{S*FX>kNP?w#6t*QO6@p74S`oi=Lp-hhzCcq?^^81pyuCtiRVmV#ct(2(|Woksx^c z;;7uI8x@a@fE-OscKU$+qVRSQ(n(NItU^JsF9B@m(2uL_$Unogi8ZNZGgmuEG?aog zjC$VJS2;Su$wq}-B&K6>DJdwdW3(2{VqB~_E3i=@fR1tjN!oK|t|yV%d~0j-9a-Jy zYj+F`{&SZkZ##k6gx_f>4~qukE+kH94!f3MRe(dVDsSlX@If{&+b_rn&s!v3K_G7g z%gqGn04NaO6npC)NaN^5$N zcLcTtwn{zryp)u601A}V2 zfTBM6cuGQ$G>6tE3H6~kN6{M5pB@UY2&UATSx>~GX6MbsUzQBYHRz?U)sH6G45n(r zMZP=TI$rHDQcU1>%kA10cy04=892`i{r<#V2v-2J_r>(id4(4|7Ss2)o7dJ`j3)a6 zi3EGZg{rhTRYQK9YO}4LRP@<qsNTE>xk!ud&F|gtTQKGmyUSry$J2LhscVN^R=TZNQ(X^Ir|7NycgaL*# zjr|;O0Smj#T+_E2XQyXJa@gZ)r5Zg4t=OELkC|1t|%@|wj z05eGUnS^tR@*QPb=@@CR4{O14x6bRYk2YweEHi_h0*r%XtHADc_PFN>Tk(x7KWVtNWUx z2+_jDCBue~(H@q*wvD=+a&oumnQ>r~D}nK_l(KJT`ao*d)0W#EcA?pJT?Bj)E%YrBPc7r6>NT*^i=`)YV{AqQp3!NC8D z`)IZWLif~i3aO(({fuOGI31|g_Bov<`r~zS`72Ac4R&T&aL~2o;h3ywd z%y2>ChwXc#Pp_J)S^0_yo94d;;zh&$Q5I(9dKdL`x-^3}chPbG+7Fq1l|0HaK&WYuKP{qT9*NjO~|04F*NiFlihSgQ< zZll;60F#ZvezI4W6q?sn6xD{3=x?uIsMcAYNjS9Xe#N$Qt3*91*La@+oC)F9@?Z2SkH}QOH7U`I_Q>9LuOSEkfb*`p*Dm}Y#osrDhpDJi@QzR#ZV&#HEipC10;=qe~ zb_lYYuhB`WUZklD3DoHdHA44ooWC>xH`l6_LzMmIlNNPxmD-*^W=Oe86gXmwp3t*p zt5;WQ8t(MVpHmIb5nElK>|CEowAVgGF?H}CP#t!a9xUPt$%GeeB(fG?_WNjT*O5gf zL1ZG%tH{^dW5vWH9BE5x7~9tCnGj1)JxXr6Nvxtzl^M}rZQtZMb^klhSBHXg!W&Qe z>D1$3v(}|wyk8}&>3e>kpk}JoeAGneTgIu4o$LK?_8%^Z3qLn;^MD^ep=lE)$vcIg zSY{|Sc5sm#EP?}WPeym*o5D>=8#fHhj`amiT0uI5G}u6?&gC%JhWFxZm9HtAjMh8* zS{k2PGe&Bh*~E=|;q0F9BE$XWtrWbvsxC*vi%By%m`O3Yu2*Axo#DQ2|5@Ez7OKOI z^~Y3m`$;-$A2`FopQQ#y^amiH_rKou?CTrBUF^83W^&#lAtU@C@^d7$Oy4G*X83KJ z`zCvvI_-Sz{tJ(_8_*_ikxzoa_A(c5;9Ijm`q4c8HVl>AxY(Ym_|im2s6%y zN~pw)(_oxRG2>he!;HhbFZ!+LUGI9=`@DZVYdybbt^1yJueqpoKmK=L_+P%f|8a!>m8bWA z%<}$k4*1{Wd;jC~{w^;#$6H7<-|E`VV3bZP)wv_z`R5~?(i?(v$*Bt~Tdtu@&Abx` z=xXwH!H* zyS^`UOCC?0%Jg@hiCph{TZ}8(D?coo7|~&)R#0)v!F8&tFW4dCN_)9g@S@SayF6?u z^BZQ|PpGJ%s7l35`S_&NB!!cb5BgCi`TBM$T|X|Y5rC6FlC$tFf?-us3K#9e8x!UO z;JW&)-5s+nuTD-ZJ-nl}%q}90RS{s1F1IGOqB%UmE;CJ&KVypPd;XvX7Z=!}=t(c# zo8bS5;BP-xr&rPTO;F2SsR1n=;;-1w@9^J_x@9VWJdo~y4h$DjjPZ7~BdYr7p!uaC zBKUZ=%%RX4*>yvX%~h!Nh}XTK;=KkZ8M!abxW9fjir~X4guU}iX-f9+XmicvOxr(v z$qw&za?2Mt@s9s)#Zbk0e(75g-V7s&j^4-5rbS5m+BLOkYpq@*fOuP7tmailoO6XW zu8k#!qA+>|wa#+VdmGYwgMIyXDPjLE?@haIjCI=|-{A>7v9Mr(L~SzU`gAtzYlyfU zwds1U@#)O9lL7+Zm{*S3c10xxM001HH7TYF4MUSYmIJp;2Cmxs*B6HWvkKY8)ycLI zGjIFsk@~a{e_tUo^_EVAhNac<%T~v)m{@Aw@LoKU&Cc;pipn)?vT0-Aba94B^o(bE zXs;LPg&yPci`KmJ&6#*fj9+>!#ira{i2OPv*}pe=YUV>>eB;0IjX~zL#T~x4!;Mi` z5+f6`zGK6>xJi_o0-CepY)XK&F-B|R%hH`TI44+o?w#_XPV9dJz`K zJp&fkqG@Ux(Um;qvmVadaTg{dKnE3@SxQ4?$PqBciAw$kOIPjR7JkLu*-XWd<2yyi zG|6z#~E5k+upK?G7JIP0!iivoIhx8Jm*araU=18~nq&f3u^xV|#o1Dq_TtyXWZp3B1C@ zas-OLD-`9K+8kV{o)DaSDyEC`uG>KN8J%bd$tr(YQjRvn$O{Nu6_x=&IfJ(JE8^g& zv=&Ey?1*kgFoUC~IyECWsXTuRTcbMR@N2DrKr6Moap1^IJ7PCa0-`hytSiat8rAF^)MBE`w<8i@dQ*F5X< z!-K$NkY(=Q7*pwa`)8koXio;gWhW+YO4iMK6Zr-qOIw#H<;weUrAeqxKPGWg48R+> z(%rKsw!C)i6D*?bSv4wE9~%p={dJiA3-K;XR|8t(tj-7SX6 z!l(FZP^SKs3SvAWxM-4wLi}G11Wy`ZRtgB5XCr9s^R{DByWl!@#A;y!JRGjUg_QeF z_q~b%Iu-i@*?aUiOV6@l3AqN>HI;Pcjb}0*u)uDDYe40Qx{^C`r$XdTN_PGJmpO6% zI$SsGh!$M6zFgQ*lhk7@GDjcvoztiY4KorJ5IFKL0@!*%`bi!5iT*Q0{x$4~<}(WUF`n*t(x)y&FROPx#j6I>GW*`aopg?KIDDeIDR=o|BOp%s4!K zE^(DEE=apoq^z%-K3ei6&kSt6mbti*myR}vXF6vEtrpHD>T0to?K<(xiEBv|GF9 zqkps-FW6gtI}AoY84FL|{c+2m>i!HT;(}^})>M&@F3#0Li{ij`N6UCnY1|vxq}k%8 zAF%PwmdIi1ymFlpRIb+|(oxA+UEHE?=#shXRCaEIOD-dqtZPa~HSqjwH}?>~Ro1 z+66dl-H2eBjRB|3nX9yIn;_iq408I-2g9{C;!!~l^ubn0vVRvo zrNEYH)?VnMV_pNS>!UW1lXASVb+K$GVn((%ZEm(M8`iLRt)c&*7X;5v41afQFaz@l z4qsa;ip?~zd7`jHGv2R0n=_Fe?Pot5QUZ2&B=5o~EkqUmdz4q|NSo6tsR$203x-4z z#dovE7gz(~W*cNU9o?JA1a>eafuGwk9a{4wWxEvao9wxh-u(NajbVF2m*Q7o;l}5| zi~P=U5|w*X0)x8^hl|~bcmTd6n$5I`@7VWu73kbFIsU6*4Jz%v6Lw@H9PA^)=#Rj8 zKCy6!(A_fs!j2Y@il%K{TFKR-w%>)^iG`G@B4u6NE?#E=iE2Exi7bw0TQP@*?_8+( zsbGZI7Xc9g*#~D9z8VwL0cFZ)a^jebjVUDRik~|$O3Cz+FLwffvLEh$cHS3-`?OlRaLlb9JDGu|pZiHO{y;(BFymjZ~0|OtTmrQj+ zAODQW60ygQyn;KfrnI__2D%JSXfbQ=yw-t@fLp&WtP3|NvBuZl(Ww}Pv-du{6Vp^7 z%xa=D3E7LDRYvPLE_ICRFC~)j_h7H?+!^|llPasAP0DcF^_xUpJrvAXUA7Z5aZAT_ z2>+(Mcl>`?%eAGfF?Fh_BA6i`t4WgJ&Hkz%lTaaAs#K9;s!d4VRV>-9sc4!# z&>M*vGm$VV)*$svcwxyswIpRB8P2vzPt;*@dDekVM}avb_8$H^+Q9D|remVe08BXA zgjw(7n+u0!d@^FAwOt7Tlc*KS6o+B=No8-Lip)-{zoxf7u=gLLz;{J==U4&;g=;QWH0aydC8lz-LrH|wt_CM3($Sz;1Ge5!M*5QGs12&U$l*= zfI#ShG!<*ppPk_L8V&%{)<-B_UNuRtzpUzYT;ETYU=mu@C=Tsry&RHqgbc@u*>P#! z|IEX`&p&9`^SavS$p$jnFk9H-dTQSoZvMkP64fYA7x$7kOX_A#G7Y{Qcp9^F$&7g^ zENj^rCY`0dkxV$!O`;l_PujkGZSL8>h)a|7_#c7R*=0$Di2SjcYEg9)YuhC-KX961 zeZ*f{ezz{JBW6sb!x=;M_S3~lc5ft$^DNPv^3xjBf-H7oDP<|@KO4w5@jIuZ)LerZ z+MH`xvVD_}{>6O)&&NwArr|RLgX?>Jl6RI zJ4p8Mx#j!5Z85iT>*}O4+X&q=^k!s@SzI5ho|m}{TII)=efAI@fFdV)#zpM>rR%GK zyTs+XZ6J^QaRMeGSmrYJyVkr_K>0f;53i({JgCXY=F&e!x=d8gPqetori@wazx-|XTi2Q#u}fSHZ- z2$3ZZE?7LmrLUAWyK-K)%jR1my~9reqm)RO$_TM0OXE!zewtJ{+6zPQ0e!k^;q(C0 z|F0xQ!+2t(^R2k>r&Q@wZ%Sv59k%Y44)86f?|(9zClwDa#p??pQilqqe@bR_Xq!vS ziGc& z29B>rg7v8XR>SFLpI2P+!C&95kfMFA1~WEA&mP@#7_p zuc4OP9g!5h{~2r_!L3bIZZ5UqCpMD9IWz6dv3_ZXuYrnkZae zyAFvHIjG(L+~!5~D%2=ZOzqq0m|C8@@E(ziXCD4y5hdNR)OMZdA{3EN-Dx6p(iNWRH!8%_iMkLayW-8Oaq6}96 zY9I~~7_H?T*OC3Hi}Fj>Z9in9%#vr3lymzF+uhA5o}H?HqSR~%~bo6$D2`SAUI+l?FlImGW560Hf45?gFSd|&c< zLXPIyKMf5hcD!TdgHht7FiLm1Jt{9LQ|CA*Y86;BAX#DBLiqZ0y6IpLX@C(zyjL^>gynoYt_{8&Z z&-R{NwZvXxDkn$tQEP5toeB8x(&xD`D#cQm4%`QNe6V&;YFU)wg3L)ON@!_So(^FE zztzM-F3U#HWas#$OIu&R>#t^Ke;Np}#tqP!XHr>Yrh zK^4_x6QW_mx4PsPU;3$6q;as=|2G%-NnmnX*`!uM;(y|B_jZmP>e>f7W>PJfF`nmD zYoOq07_$%rC6H<|y0Q-3dvJt0I^&eA%#-Ja0kGZ$!W_l3@!ZwS$LAiA3NkkZ`Tx2<3Dl4V=A?U*v^ zmii_{w#xAUsxw*f^JVJ#Qz4;oIb{?13N|6KKp8s)t;Qw{gOkgdx3u*BJ|ZxelT^Ne zY&GtTb)HK(bo717>u|{C8xg;snqlh&q?UhrBxkF%WOduhpYo#q+uo3zmdU50WZ$qb%awC&6W_-vS^=->s>3Nv6LO?rLO{j zGsF;fVSF=2jRq-I!q_}vC9h~3iJN68I=-U9dAcRaCN8q@%yMT;J4m@*Jt`_A26o*AD#D)0ZQEO=3(CKyRQ;62miEPJA1|eXqJQ<}1^eOES zDq>w&)O)w%mi89)8>ro?Q$;-9)P{B0umm=pJ9#x z5}&(!;M^7aZgVPaql||)A*+09P1lIf*U%nswM60Ff0~pI@udc3IJXso7|HQFF&%Hp zSUgJtEbHHg~pDos2P2rpWK+Gda7o?KY+@d61T+P?{!P|Og?%uRy6rqPE zF3NbIQEotsk|c$q6|HV5@EKr^8nKRu@=mv;H^64t)oYW5LGf|j3jeJhEIfgd|nid!iRG^dsZ|yg((}xumPcHw*tv-VxMD}63BidkjXL+`6l6(%B6Iq;GkuKOe zZuXqz+~7~)wWQFO<-eXXS%XR_N`F4>w6GOHx=&10Kk~$ti(cKp#X)>vi1YlSrX0vF zTS3=d%x6n6^ipIl)l(OjjEL_232z(n_H9-YliP9ifLo(GXHT-WFlN?Gf~>0`7#Ys(i@C=j$vKiIN!ED?4LfBoQe$-^`$#hzW3z zoFcxS>qsd|X~0A<@SEYBG*AP{W1c!T-gmxfOP%$YtZQ$SSwiz^>@}TeBr!?w1N~Ea zrQ{u7waF`LX623AI1%|rDE;M#D3I@|m5G~2VW7#kHeh=_x zP}93LT~e3!`aSIBP`Bhzpnq2*utl@pXlb!C0tZ@V#@@J%g4V#+Yvo%Ktb{D6F=iZx zGY{Jo)YF(Y2$u757NmLOcBuU^J4Ke9tXj^S;WVL(GlN~$R-`=KlW!48wF{`#g4>pY z(gXs`uECJ*#>pdlGcFCM9T-YjxO^Ro<8Bs+gwgDp081~iA`Bh$qZOIK|<2CUv8E!5u^mrgKVZ34~mHeLYFrq@f!FlVMPCBN%N*9Moi5Q)T z)I-hNIklMoWtBTk>$-0)WX**V!+DPqCPfQWMg}v7E{cA0^A> zTO>8TnkxFslalEP)PfTJwd!6>j#cw>pPBpI^_fzbiDuTI1%9@MA~_anwgj?QP}x^C zb#W%z8_8wlvR>&C+mgWPqPg%M@Zv->U7WLBBHbJ3>c}67ZBw@`c_gP>4XCI@@fw~1 z>-Y`eP~|)(`sl>%zog>X&d`aG(gh?yGeAC7qD;{qzQg83O^I+DBf@1o$TYGz24_Mf z(Gu`MHvWC~{D9F>k1ChZnfeq^S%CS;Hw0V~(IO9|FPY+MBjeXN)C***D+lu}qVfzz z+%w9B)3lXPZcy&zu&&{Emyc=(_>@hFcxNCgskb*U(k%QLw7L9}-7(0y>oSOsCaeK5E$lx zGcgD>Q6!cWF2$N^jFPAZ)*HxO%A3f2^*x93GY*!1p9w5)EhZ^zH6#=-w6Zp8MeM*! zIUhJKo1c(meC-FFdCpyi(b~Ty4{x8c zk>_;+w?G8xsy`r-Wuj!fj0X+mS2=-t_eg|SU;d-u2LJRw|JderN{ZQldh@9jvCE`3 zO?#&4UUz_Yz?mf#?5gjnXN#l}an^#t(S3&ISG^-0o@WrWACssqvVVn6Z>+07PbJ4} zHnA!QNd7TOelzsGUV*9{MynTFI(w*16@ZO_gYlG4S6OGhV~-};tn|XxO^a|FLadqN zadSQ47M7mZ^14~`;+R@-f=;V-H2%yOUo03*2PNd)I1!%nqBa9a;Wxr^ z&LS8UB!chi{t;7@qCYGe6`TL(z1;$6HfXjv)3>jg=GML{Wl7K6t$29wQbPqry8sXu z)W}0ILJ!M&Q=YAkcj2p17&jUawr!mzjUVYgZGz|$4iC!|&)F2*#@5jR2=R=!#1=iY zg!-!$i!gX0vKt8+rIv!;J!v6jhw>8z^O3T?%xhZ9x*QNeR?~~YBM40bB%ml$encT6 zy(PwHkkyvy{C7pSbPD{ib-Ki%5bM%cR>R8Pr?Qx=pSv(axp$DSQR(gcLj2gvgG!23 z*6YWGW}v(EDnSIFI&}%Zunkf7e=8!*#HfLdOSoe?1c|PBN?~uM?Wa?r2g3VW;J96RApcIFJ5NjFtA|iE*Ioan3>gm)-<#E- z3q+$iZS#eu+?|;ywMsfB*dCGk{X9}KT37B^ zZ>)Sw7iUnaPEu&JKF=^+Ch%Pv>G$kOvP+_e6I`G!x6l~f)<+2`GnMbY0Xjb9WUBcw zN@{?#5t?&o#98W2Vs4?%a8$8#MIS^KQ34?;w4r%-sEL1%OT&3ptslC%3)6)9wM*it z$<1HuB1YdXG=flkcss^d4e(1c8Oo?HF7R7F%~mC%f6&t<~GeEVJ#iD3LPweQ#|rqk0&!Y^(M4!F9;#orTlW z5v|ei34nT%xyoCH6Z+b>%G$zAC>|6e5aS3m89bRKQap8NwUlF4``)Q@vi@~T1Wa)Q zq5M0CmS=$i9JPLmXl!$(%W1H#xg(U+shJ|?SgIavvqaUYx}DhKkvTeZ#WP*p{v}dF zAmT!-JKbwUmEn-%6&+iC$ZP|x4ARFx4FP9;f5trYQC}|b{uRd#x#-VZeVY)V zgQ@%Rles5z%zp4H!RUNYQ$U>soPyZ0^v%AxbF;798#U+gMbq0S?s!RS;a1;Dp}na9 zdz|MXi_~viJr=}B_k)_3Um?Spp!Ue<(Y8rc>C0>!Emt}j#L(nGy@3wpk3Kjp6B@op z#MpF~fAL_fR4}7i8x6!tgOs7r$D#emYg{F8_e&C>bzy+ zOdY!7{Tc8!p-LB52jq5upgkC9tup=UCi`rE(5{@;k0Y)aWlAcy2#%L`sb^X`XKLfJ zzas$ZN~Sx|>}^1=C+P8BI%oLZ-HU-KcY@1#PWcN-MCfeMQ;@`8YV%e7CMu&6 zniyH$%gz%8$q`{7{yOLu>+u1pB*BT5u*!H?24&|b)9 ze8eZ6Tz@dVU{y?SI8&wl&{jsPE6oZYih%n3nIdReXNd920PhBnu&Sp+_z9lg4xePg z!fp46tl3df;DaT90aDe+l;~nf>!Qbf%e{kY9)_nlRM-M`)@ZBlT^}lzkM77 z&K|#Gppyi*{DrWTbR~;nWTWN1XuYjD4Np0@Yl9fa%OKb}fV^?hY=n*d73{n&Js<9- z&8bivKzs%YQ{)&B@=XrHbpJ^>w$1%(7vB9IBVN981ZFT)p#e8qSfWWiGrVTewo0>1@FXH^G-awfxBF4y3Gj`pzZ zX+DQ{jN$+Rk59n?y9;F0{^w?<_1!n2vi1d8*~qLXbVJw{32CFV-L12gg|M_bBApD~ z4zT$m#pzk_=%BxRShz1IQVEZ#Z>TW^SA^Mxr2}kd`Frkvy`)rK?LAKYGd>3YuNGNf zwx!CxDP}$%yLs!6U%AOVwk1kqOc@CP1#0=MST{o7hk@FWo zR3Y!cOmwoU^@v-Dhrv7c;)g0W1tDH&0aYQ1Rv>w&IEUYJ?v3uvt;!l5z=@y%^t$|e z;QSC<1m9R>LNmXLOAk>NTHLonvS8$2Wbnj2r#@obrzF6l`wsxy9fiYv_m^ghh zam!zWT=BZ@`PdOlW;TI{=MH^g-PZw^^uQ?9X?KoN7%ok8OcHdg@x+MZB%EvQd`(ti zoNd~Lnv{RDVI;sn1q5>uLjR1-UbCA^?D74|-rI%p+ZKk3NK_o8JzrmFtxhrI(h)#u zX92gchPky>0HIKePJaJwVBU0SD!$weo! zk?4;{+awO2yF#m1*k}_n0o>}^Z)9A{U8}*&+aGAU%I#CqrMG8u0NjDwzIF8=()=b` z#a-tI&s**Pd&7V9y4!Ad5s`A#lF%XxgtDvwD&;Wj>pjxlO3DP?ZA{nt|8$+wCznqnogA4^rMlvnPPEFlx?H)h&K&md<&e1Wf zOxScx(M@Ne3Z{5SG$?Mh8hUtgKPH2FLjk1jsYAADi|Voi0tZp}c1*7&=EtU(He3gD z4hYU1YoT0Y2#*x07Z9EQ)@E3AFtk=}3R_5ni4Sn&Nkd=UbP9FnG-)ebGp7J?k|wxXv5r) z@@i92$aya*5E=WU`D`|}Oj+6J5G@u02@ge1R^<~^T4 zo%?nSD0&;BvPO5#?T1Md5YmnLv-&a|CC{F!!qm{N=gC19^Sdy(Ts*c8^s#l5+E5Fa zftS}FpFf!IUTtK6ntAyeX{)FLOHrL1>9I_(fW-ge93(PC)r|3b`&VTpY{wYeR2Cb9 zdUEg!aBD4yw2{&Tb>Hwdc`ctXkYW~4zTO`sTUrVNW);v$D!z(wg}%F! zh3~Hw+`4D;nRlykYmas=UnSg0I^(9m@$!y2eyMWO|0u2gM#;Ye=W`wV6XTxn`R1+h zs!!}&c}c@K&l8|C>@wr117%ew^vWAM?jyZ0owoYMzL5&}?0Z`$Le*9w9X#a%ILdwf zCu&D#f|ECqleivOa$S`mfm>R!xXVwaZ+rx~%+Q;3CPMbi{$(uQsl*uHO_$mt;=^33mZi2!e!BpP{i%fIv^ zBr`j#;m;^F8kAAc)ZsH>R4vFK&8BL&{5m%E@Wh$8f>w}0SpK`bd##6aIzG4!0LC0T zE^zh86%%S#B8h5RM^ZLvP++}!9&!Sk-ZNT9XATMok?V4=V(Z=#YkwK`{ImR@l&huY zy12Ka!3@jG91*UhVb`ATpjm)%QzVa$sV>wGk*ImeLS&E{rqnA61QXT<-k2<*1TjqG zR45E+P%+N~JIF72!(MgUTWZhK4o!`D7}W!?c3a>k-olkRb` z&$uI1p8vVglwm1*0fw^pw|(?%No${coUJ|yI$Km4KpYAeUH(#vGe zmVjhq1DTTH0NeCXf>VDP?_GXKHP2zBk;Z`@=oMJtKTmXVo@gSy#&vFwe89c62WH58 zu62l#4;Ch`O;8aky>D=k8WFEscCFw+V)DE%^yI!+YIpjpE4BD_s{^}oAI_Tsq8BWAsq z^;-$j^4*50h^OkFD7BXtrll6$_-?DVu3$2z;)?5~(}t9#mGs!(|4xZT3%vqMT5%%|%I_dXlHPn<(jeO z&A}wRq7o7Orvd)88rP7ASAgUOAcyB37V{=Fi+?Wh5e<2=|C^t;jn2hwFTU;@5ng-l z+`+STJD!Nrlm()9YwT%SsV)Yn^^r5zrJoD~<}m9S-J?`B;yZ1)uwbZ^8l zzPZHOKw`AdX3crI|12z6B0%N6tQ$Z$p^3(&`fnE2yil-m`0*Bgg(40sXT%Sbm&LaY zta+@A+A1J0O+xaEq-rBb)!gh);3F|AJH_q>HTT6_Mj>HCK*jj%mc_Hb`0i0Lhe>`< zaLKD5*e&vCwpg7c#(grRr`#hEEF@%^q+7cnsY&4^yZ6Ip0?BKW&1ARf)oE zWJk`8ia(G5`()5;#Rru#YftFjxmZ@Di#sZ_21Z0fcXjd&;M&)4?cKXVRNP_#m)&IRQPYj12|Byr?ZnL*Q|OW zM;dxnFYC5zBU!&l9ODj8Sm`=b22=hih_79{6eq5WBi`6VR-c@>pA?f8F|h4!erzgr zFffZ(6bIvI+HNs|k?OJ)o-~*{x^fZLgq5V8a>tG&zJ(>HL`bMx2r&0#upmDgns~I( zMjWNu_RIa}TD4Bj`UN;ZfBzQ~w@;p;3Q!(wdqj0uL@%@%=ldjTOX`Y69NfO;nZ|cI z(+3S1aW&{=SiLFtxKFX?mtpf{u47Au9hpe1#N;HEi*1cM@NJdA3q)ARd)L$ihMw!Z zPg3^OiE(SIe4xEs?Gw<)HS$Jm#|jMytsSaJ;}Ogpi(|c7-@SoMgw#6fc0iRQYCCuFi^T-Kc~T*?qf3w1ANG7_T{< zq#Q0%JkqJ_HhPWzCS)n8zdt-wEw$k@J${g-Si;oaeDb5%iP7~BghCC-QS4KN=|2=WJ#@l{cCN{GJ!Whb&rY3Z}^T}%P*D} zvuCVzK5@n+s#XM_0`3hiVK!&kPc2^c(R&Ga6NZd@v?yMUED}}b5HISj9b=vIiR(WP ziGXGWlvGsf40vgKV+?VN_VPtzugwd#iJkZ$Amh?TtDEn{3YLvMQdqRn5}bI!da@{duxI$>J2g=V7Pb8I0yC-O^5z=`XAjrjqo7@%e_ z?|~v!9CH8h0~cN!2vrk8k-U^G6_H?-(Z%tT)ktGUb9?Kgf;3WAemA;ueRfc4qb9}c z<8u;q8LudvUCAhepCLY3y6wlqVm0p16CksQ@IJcA@?7@H#s_Szl#|R_d0J+F=3Ei5 zuAlOU@R^W?PAVGB&3>#jGwNQuE+2FYWTRuH$(9bibmm3ZAV!v265YG@aB(iKAu5?s zvF-X}vG*c6ry2Xkrm--Dt8T_wFLXahY~9~qo|nU#WPiFLL?-n2(J^U!5lFwMuA^ew zZ~P($-Op)wJNx=-n9<`K?L@Cv*@5RecQ*7^i0t|Ka)0*uu7wA~tQ)6LTwAOh6W}S$UtTGbP_X21zw7_K zQE|i_IG4K+3@^eK4o4Ri6aKU~hh^q@7H4EWZX4dNw%($%YJ<3w-sK{VsG*m3^NBz&0TOYkaLkRdntiSUOl! z64Rtcs@*kL6da7pE^jo>&tM)A=K0Rr;(mVIj^&O&JeS$#uMS>Y0 zC&7xS7&j2Xj*}`51hkgI490H?#Lum(yzFGy7`&`7a#u_j7e+N=ON57xHbd;%6r?D) zW*6q0I`pxuoC9JR9&d7O-5mN0A3j{U4E3&kI3(`kYePXp*EEIl*s_V+-5)fHf_YEv ze!1y;H_?=>L)JsHu}N^QDlEdflP?6>`81NrOX~dnyHCTLMdmOb`WY~CUa-p^6=Pm< zseeNGRI!x=LqUv9 zgUNKQ0BM)^BD`mFmZv7&#a|L@GZk}hd)k<0&il;_(!>-NuDcA;WY8L#Sq_9hZ=$!f zi}VWL9{%TA?~S#>d(;$Nh?3%BSCe2Pm!F``1_I8@U5Ia zHx!Hy(3&+!X`m`^a{}LeiSQQ%OFs_AGMBz)5yLJ#$MpH>cz4hUl9-M$=$BQ4*(Ux) zv%5}NLR#+YviW>iDVM?zlg9CK+s<^13&o4gmj0*{5!sO+o@H%%K~Z+EqmHeU+hq^t z1-aiRb=vm!RzAJ`GEesBbs?$N=!WKJEw>N2ei1r7HCuMQ)$BFjC2F+7DtEyvCo;vG zH|~t`P6y~IL6I`ddapxOC5%iye&^GfvMxq!h3(?eHve#zGS&IdNpJt0v-}P)!v*9Z zBvlJ`6%lLS_{-<@zYQ(Nj)<)f_aM*Z4vi>ignMkiVZ*hrO-ILz&AENGh;d4YxU4$* z=8ct^rdRt=AGuv$NpXDesp8k4Pbc=;HR*n|8~NwQp1U_ye6M(5Z({D~I9$iOogZzR zPC58R)csP8!p@^U&i#*^izYUSdL%1Y&tx=q3mx*Z%5HPdupJ|hmlb?{^eDRB8~1!m z3$4PY;q)MpZm-@7jVXVZUL?Kl-$+*HPOucT@qOXQ3mS8P8Sk4Tog-v7x(johe<38Yx2WcnoEq2gtJqwj?HAftd(+wcbUw|_7v*C&B=*z0`?*i$ z=RzxjIPMkR+a}$sXXoBLmP22%g`()Guf$9?ABcrCUWT&_0A6#a_=S8e!FomT@!M zPdQBbYvF#j)}87;rs!^LV|>Mj_~vC%$P5ycH~dmH|9%-gg3j6 z86-tAB?)hjDxP#;Z8T{h0?o=LmZY=$ieYKMW)KOY0%V_Dcys6V7??<23-99qx$Hy* z0Mfe`wsU!kl+=ZDoyURgT}HL4lWK2ke;2fxau+X{vozskJANq~LhhLnTCQ)xN#hqi z8fK-ZxCU4@;OrCmMKDbjRgXl_Jes}cy2s*+SR>`2W^8f~W|YG(X;yen@2vA*2RPwt zpB(@v0mT~Q=MQ>3R10DtL9qNsrvkfGz6+MI-1LbrJ#_%mpam~8kVLN;EB%p5)Ij*R zvJo4f{izREF3g&tW01u20R)~Rb&`Z=nKNwZ{Y!AM7b!w_bWqoTW9S$I$Cy!}q(bGF z&bB&^U_1cs3cudb%MB7;$#hpuADwK8-+|>rZu;2_by5kN1#cDsR&M-&=u`3&IyJih zNBxm9>ZE-HRTpQ~FGQZiK%qHv&N2<8VMR2I7VwH{MR*&~M(m9{kVhz^+5P3hX5X7> zYhXUQtA<1klRv~;xPt*_K)9DfRF((y5*tfM)cScNwlCx+i!q>=p5Oy5&qR2K%S4Lt z(nddF(i3=Jx2zjuBiSB$G26sonuFVkP_N=lwnAOU0RaJeHsrBm+wup>g;kqj#2Wep z*AbclJRIJcRzwPIHLiPJ5aZnB;>NUeb#Y<{$$(1HZBX$)o3k`+`o0}gG6<94tHDn% zqlB74p@9GDoN|W|lx?msT3+`ESgZ>LJo|M0!Mt7RhD`UNUOE z0P`FW*yM&x64mNH7Ax1ZSl+GBhT42)Az%SjIW7yL4i70DZ=G(Ai$((iKHd;SqW0|< zBFn)~on7Fa6fcY-#q=hq;X&T;k})DbKWd=a&re`3gG{w(=J(On1~81%F)~SKDuUcK zgdF2`Hi^0)mR$|)I4_Ogpq5x&=3IdYsfst^86YB6Eg-$5uMKB`}iqFA7d8NaPgeeRGzm8`{KA=7RfIfv0EQ+z|BZ+El z6U<13bY*G}9{cYHManj3(Cji`XymQ`eCOjH;LW8OVB`%EvT8>co`J)p6BD#3`OcrA z)u)-oc87f@Tpy=1<$&jO9}U3Db%Bz*HXGVBP#L6xlnkACu64fFtL--hi^SpNPWK$K1dL~JPXD%)Upa^X-mkEV? z!-&2Rfv}RI$nx?(AMZl@4K8-hvBf%j-VJ6r#A#FdJ83J9P*fUW6G+v18O4RB`BYE& zHgO>FN00|^c8FjndyKd5z_<^xKTzgy>!pn`wUhiDPV`3;(jW14)WvrbOB=LIvqBCqdXe1>p0G#qg4G`v~4Uefpe zy%E4ISwwuWj}zg3n=wG?;?{u2LZGdO8WLg*B=xcz;Hb`E@^vt)s?j?Ym^}LkJgaQ{ zcGXtc@S;fa`Q3DVJOLIdH{L^MI>FAELA`X$17KrZpaI>4)o@em5I!+X$j0(EoBBo# zez_=KsUNf-N?W+#jddoe>f#dQz|F5Uz^gn^gS7yPs^DS64*-(-n`y+JsiA8#Q6ClN zW6FFlL|k{SJmBY+IFR1<u^b-K8Jm+Rn+Fb^2oH=yeO9pXE-%8_3q`evWN zi2_?N%JxCGd3}*u?vOjynKDj~hhF&VZ5aN7w%BIOMAJUX)JYmh((t0JBk!M=v6j{9 z0(W69iN1H4%O7%4Z49NS2^^_-2f&M#G{y9v-IVCJFb)Z`*xtd6L}hrZ&0pFG+F9J_ z0zy#cvGI^6fPFM%vMDLb*y&DX+qf2y>m&AnamxE5Oog7nlAAZ{;^tw^>#{$EY$8u4 zx#LgxmxSKGC2%(x86>&o^;_YQlvdfF(l>PG0YLV>s{$E2sva;Lye+VDm=oB#(*WEH zqwf50r$ELx3f#i#PWv0b#K>m_%_5N1AtXQN?i`N7#A)N4e)<@K(!?#AB2m-uq8R?9 zcB>{OI;#TkdI!8mEx48}E(`q&t&R$Z#uGhfpy>vGPvHHN?u@k4`5w_ONlL%UA^Pp+ zpw)Izh_U&6_dC&NDCKy)U-pUJ$j( z%=LoPzY4$n9WbSmwdJI~zPM6Q^RD>g!{siz$br8V#o*vavdt58=6JRYPvZee*>xF7 z*#b^!d@yaiQ0vmbm4nAj>>c1u$M?`K{LcM$KGQNuXV1NJw~b{~Ok9X+!^uXAM|$!B zW2<$Du`Fd<_k=DkHG?RQ*521bd;UyTy5K|<6uF4&%EiWCDJ%)932g0SeRE3hQgZsd zaicEo=j1Vp>8nLQO8gh@uQ8V}E5q>~r)}yLH!33!Oaxf6D`oGB%;(PGOB+ zpqYKDVPwDZesrTIxTQfIf^W# zt$&p+BN8@38i))L=sH?Bx^BhlC<-f8wRLHzy z({=lm^C!a*_%k)&2ZbHuwJ4-Ju^}CYNdJBy;HjWWj zvhNPRh-E%}{v)T|*tj-^r80V8P|f=2Ag1osX`3;3tqo*paMy!H!mP642dvJHQDcR| zN9|*sMIT6B<%S=w3{ke#w%JbH)iZ7tXs^DAyf2(&1pMiakn6RdH-EBKKksGA?e3Dz zY(wR1tJ$B?s}GFrRTqqsz2v0&N@eWxu;z2E*~_DE);|z&6+`=G?xRGvl1Wq=U(@4H z?e`+?T$opIigQD?7w_!ouDqGYqYN5rOfiE?)JX=RTQW-4R!?YR1O z5j0u9?oW2}1$~dZuL~vn$>V-=dSn>W|+ZFe9{Z=jhg@eVR_r*!q#ev|Z7YF|v{vH_eTI%B9^#628$lJhw zuS5pWmKOit^(FGk$>Qt1OD`ELj`J^__tH9%HxK@6zWo32i^X*=T4r%a{|#3nZy_xC zFEVBSKXsP>|8Dia?#lmGuUtI3|7W25AKR literal 34037 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 SahRsR%W}#W6VB^D`F{Wzupz<# literal 42934 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%0D(mI=mwEfO2f~}pD&Gp%eQw3wy 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 z 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 QHwx_sdiM*|pS}M70PjWv0ssI2 diff --git a/src/assets/splash/iphonex_splash.png b/src/assets/splash/iphonex_splash.png index 2d9698c287839593b723dac5d25f721ada9e4edc..435bbe07a997f27800895c2170d90efc9aeba8cf 100755 GIT binary patch literal 31878 zcmdqJcU05ewl0kNDu_lR*Z={eAV>+)r7MV(ND-AHO+loCp@&fPm5zV{66vA_q=U3j z0+v9eL!?)wgbs$#>s%!pO!* zM@I)ySG%rDNB5T{9o=DnhW+4^3#!-W=;*vP)vsT>F*8&*#}))c=HeNWh+-Fu+vahkrl(;sO6N z10Vm|E_s!SbJC;#!&KYI9QqyG1{ z{c{8UyXM*5{C~gbf3}1_vfICP9$NVQv(^9id;Y&as4u=83;+S>7#2!7M?Zqc|9+zX zyu3d*<-fMYf7d*;J^#5W_k3jX$p296{Le@Be{!t|u^cf5a-LqIp&&Vjg~qZ{4nWjLMbn~|A0g~`m!T*rcc%>LxzKYsd04}U%n zZBe^R{G)kjU;eZG{5$8_wZgw)KmXc1|Dr?uYX~nY%MA z%THG#c_`&Bd$iPv7?l!z)fLQ*5?%*BgHoAKs~!bM_tA9&@omDt`AYP2_DQut#XNoa zE!Cyfr74Qtf=Lc*weHqKzwNJYzm*hc?e}j51QC4y$=J2hL5cTn)Z`;r#lg#PY+b?P zXVa+Yj7OW!O{*CTTus~v8kK8KAXl15F- zjb(i^+&4XYR>nl+=LEWdl1LjIOT2HoXa>^R1l1!{E%tI*SZGTl%2sjai@O3|cw zo5yVno3s&Pu>pNQk->ymMJZ0DBf`?oRH(w$JHFub`Rg{etc1QgVVd0%l?z}j= z;z~Jvk`M2rzpO`o$66IZsi%E;*abO!R z;}4HY99fG`WTmH)=y^TxbJ#pBZ9NmcY@+9L=h11~NS%eKviSm1E- z?o38ozVk@@eSYV@$c-$&H_?mWu_S+92*fQQDl;)#rHD;tN~WQ8$1RLUSP0g#%0nLWt?LQJIa;*1?cC zSMznGdeyt|mI!gJb}X0K2pcyY-F+Y=lLI0f0_TM2=VKMucJL3A0&$@uq+26)UheNF zdw$l2WVS0OXLSO#fHtmlNo`%JyzhL{0`X!5LaJSYz}t8Q9(M-ueI<$_uh@OXG`^D9 zflAuj*=w=62vebg3#AR)I9_5@9E4&QFGUzjKniliI_)f{s~D;3OQZfVbbkF{vG47c z9MaH5V$>4*u(M!>G+Z+RtK2j{R28TyO&N%AhXcuJnVIfW=FHMD9#~)A=`GJZW8m)) zq(od$SgaLi3=x}wcgn_-fDlBTA0J#Sc!*N2?2HOrRTqmyd?!Zr zBQ}hZJz^A&8l{w(2he1E5Qd*F&Npp*&l?o>6D`BEOA_*I`=C-Hu_uVwI{czx19cXK z*}_|Zs)KC~XxICVzXq~s^Vdd=K`4k$o8X3m_j2$${6p`YmaLE3UKRAfD&jo=mw?~9 z5@yTvm(}L5>C_&mel+UJhck$cdnxla$$V;q_g=cisS@UUtuN4% z+HNZIMh>nC{AqorU!%-6Iq z5GNf+Ut?;E7P)AqKd>V5;A9aO9UTZ@;NIo%k%!Cjdx%*4jcquzK-@t%yaaEZi{qL| zIe!ya41A5j`3M(6#(`#pV76iUCPnzATGB-G=?k)EvE;-B*CW8ZjX3bd$8Nu@BiJhS z*NOH-Y@eQWa7yt9m?MgOtpIal)Re7X&B+{^#5&kSA!FR&><9G!yo5!?bQ5;OLrta0;mimV2IhZs@s1 zM&5{}N1rDtmQ(gwp#d->_`wsc3FrOwxuZTgSK#t@JD}B%0s>c&4Q#_Xrz8ol&>7lQ zgU$MyOGEyFCvps6vB!7u9Xj^vG2d)FQqZOkS}lixP-0oxhS5T{!2*#8pQL$!g|AMT z7*<@oC&;pgR}Dx9)tR{ta(5S)Gq<6;v<-ELu{g{S! z!RQ_%k;VHMs*N;#;R19aD-ah_@DQoIInfVRMZ|KhmCKsVT5k!-WNM`sog_o_o`CZN(L^EuOP4u+ln$BNUI_w^dgc5@@(0w zjvj4hK^)y(HG^B^V1l=41XiULs%Q?ZpWg#;8MW#u==QBN=g0FPs}BaEdxy)9E=~Ke zO^=OKkbw^rDk*RNT>_y@TGTBBt|IP2kYh+2XTf5R>fSbrJ;FTibF-l!$eSQvT;+9@ z-iOtvR&V!>kY)o~p-v81&mb0NXHX8_ zD3x(}{Fj5f+cRkI=fL-x-{6c@kZgliTYwEpi?I!>PIH!8nlVt-MJ6~1LH0|_PZf;V zKeo)-dCECKkTs_9XAutac}B7+PU@Wbg=QdS(7gM+<-70W4%wBazh)IBzR6klL%A-k zt;GJ&MSs;0ksXN$?R`CTci}N$T}SRhD6m%$B=9lGHCrQJh7dj$CEmSJ%unq3?^%Q` z+wfiB=jpY&Ng0h_f5s1GF|VNVjzP&tvoW)nBDDUN6O{x_K?=@Zt{Uv>(}1IMLO`Mc zCcWQAdHl;UazJ8uyfEL!L5{b?LeWqI|K-4XWT*;p{k zGRdwClUA#1H$P3DJAL?)^766VJpd6r@0H~6;QlP|_7g;&lX3J-?865RuDsnWw0HGN zP1c%F+SKjSn2Ya#4oL&7`xHg<>2`sYDDRFO#Y3vG)VrL!=p3eAv=aMuvTMvBJ}7YY zXk5^GNJ%!8z49#~-EjQ4X|#*Gb^|p|j7blKY8AomRbI{Nx~Y=@ex_JbH|9Gm9kFZwabrW1?w^q4M`b_f=TKnN{Jtl%AIP{&i0 z1ekVxrv^A%**?pzh3c0UHrwpO=~G1Z+mX3$kQ2Q~7mCo$0jW+=M?>XGZA;~T0y4v} zDl~R}|JSg!gGRfNcB=ewWOs`$oQ+7516;{K=GMx48DvUOVP0#mtyRk3G5B{vBQ8C( zGm*giIf;g~R8WtU?4q#X!>k$O1j!{uJ|6&*#vrA>4H2e{T4pFrKEZ@l=SSStvZLN! zeqN&Wx(7PHLkRSoKZ?#!ud3aaT9R+Eh(<%)wSFJRb%E>T_2CATSv?JPy!-nDJ(KDJ zJ-0k>PZbnr9SD#p%UKZCP`pw;689FCdzbtmb2pT_ceY+ z0Lx3G-ldXbzjp$y6*bB<8w}{*;S*(|f;jzFak2!i-k1ZaGMYv>8n!~`KYoBI_y}sw zVxO+$eW1APygB=O1;I}`U>A%c8w$i-$k*;FZ}#$v6FgpR%EHfin4YqjsO|5}+-bh0 zY)s)Xeb$dyTHqPua6>Mg-iwdHo@ow#Wuy61JN(3`WeBC=kraVR&l|(6i!CiUN&S4o zik-!@XYdzZ8bWcrO~iIRk|3NUV!hU;4h`OMmp?YtZ*O4%lzCdL`8pV4eEFvb8{>kc z?Sr{;)_FW`XW<`UUn?FmBIXq2$TwAIIRtxrun$hS0`FiQ`jIdbFFUwxw1+^iRqYbJ z%STq~3f_YZ5*i=4n$b(Nq#S@Bn=`MHmcga-9$PBbY}8ctt}VDDyPEds$6aGGeB%}8 zo(UU|uqP?_SuBPB&6Tzs72o(((=CqvHpqGHBMa%Vr~dNjdh#XF0x%C5A^YHJ5u|Zu zQa|FElSZ%K;pdsZH(+|*tCmX*ztCo&JBO9cWE+;q1o@+^OSzLfIDpW?n_4~^*pG;} z;(XrHj`8%H1Yti5 zTjG%MO2-}Y=THbzI(9TcAvQB;P;ariJBDPJ@A4b6BEEUM$NPP*>EDUB4jw87`D1f2 z5N9tpdR?+_l7sN&U1>pBn60(b+N@I~ViquHO)ku!UIYG)#G+*Bq)W;h`#r}XH{R%K zZKI{mCL`rd*V*XM)t`5dahj*zo193Fl_L#o_pj5k5v?p^W{i+2TR$>=U>BcmE8@gY zLnu9BOb(OjTm4@MU&v#urZIkwT5Q8&k=XjwQXYBjzem{JBul=O@5a!RVS3C>E{vny zASm^0vVWzBY#W-3bf0-)XtXt7?GRk*;|v%gUVO8}eAVIJtdRE3Uk~o?dd(;FSa~iE zzqd%WF>TfdZa@bqIMdyI#{4b2d(n29rLy<^b<=ns!L4FUeUPcDWkk1hIimnzmVm#? zr1q5*Y)UP%atd$^+`fH7MmE`K5IQeaxSRK0F;zDWtl`bB zzsv{L1`HfJ#aS%1w%LxXTWEX+s+^L=?^TWu%nK+Bi~@XDtk!Yw&myMShYRPhA77Rp z=1Dh^d*)Bx+w!~F`uJbVXr5|Nz~qtAU{w_pLj~K?=19h)jTt!`PUG1Y>VV2S3%-i1 z96|*6jC?k_=dgGvRcNpH?%<`mF8jE!4+90{d*CW1)6C_M@Zcgxo|em&42#x%t?Y&Bgw&7w$synH+? zuCSqeF?(y)M7XIz&H&IjPRyvOm%iNQMNxF4BQ~M+uidQwA})wA4)wY;(9>*g>4n5$ za|)G;5X`Eyzz2GcWfQR;wfds#@QN+^p5sIOj+DA95|p0uL* zi1UsFAuj{)-&`MEwyyby^Zc=l^s1$V_MaRk!oZ{0?n)9g{X(RCgvTJy>3Nuacb(=( z^d&JSmwu>Ii(Kj81zka*LA$q9M6UG^luJ@UI`)w)yiQ+y9bWeI*PcVC)b`b-3;5=p zMWpmXs~xW?SNaYYMhP?TXCyEdEc*Ln+Qt3y`VpG(l7xnfMAA2Uiwx@-lg|?gzh-X9 zs_O5>Q~T{C6z-iH`KRmb$Z)r#Dj?^fGczX4Q5y*r$yp6@AYJJ{mH2h?}{^ezO z+Nggt`pF)iWOh$-@GH^4dA-eGoe;Qsw=fcc4%=a`evn{5(#wWEg$3Nz9O92e^hr1b zV?YA(mOh{@$!&jH27j4r_k@FuqFn_?$crPS0}brMnPN=ocAO_`T&2$>5_GNdT_O-O zgM$*O3e-1gFohA*-X*wSSA~DCA8xIdQEZRk>!VjXCsILCFrEdgx-jb>X_s%nDOdUB zV_369R-N1j>)@6vv7-$b^d*ncyN~bXB-x-FU)* zg&JpAb^Q^6OzUkulyPQP5zO@c83d|gTfB-8yW@Gt5(pu{%YKz^8t*^Ee5|DtT5Scm z=wg9u+OoR3ao)S6Faw2$0>TPzZ&FtR3;}xtv@M`;2J28Us4_b5@tE@4=zrn0%ud`v z7ycry0fSp5E_p;k8zQ@UClWsjgr^Z{ibfBSG`Aw0Gp?U9!8n3Fvdc~y`TH-B3uD4u zzC)`&T!C{4Zd??}zr&DZ5c~J}dj5NUiOHzf{fJ`VC`W+)(~syIHLZUooVl4Dt)Kt; z_^!zx7rAAIO;nmKRMY{Ls`0BE5Pb@ZwFQRhlV%49&X)5(*is~ohgL|LH1xfsU)7ju z#UAB80ia>8j48=RD86#jeirCi%mbm!WrwlLzpGgw&sIpMPX*p(8?G-9pT)&kc%!$U z+u>%XQhw7IRk^eHUJK%*2DyGv)arCV6@`Zi>QhKcc5X6wgF#mrA8UIP%W*EThnz*$ zG*)=q;u5+g#js-VFH6YOY|`)8R1~#IDyaHJDiH>u>15LdbyC}G{Mw^>m0`SNJESkd zAOn_r76HVNDj|mybl}5~>OD$|atw|o?!az9YB`x5?{zL+?LyfEbMfy;O5<)aB)xWmYYnEd zmpVi^G9Ka4y~(XHoPC6!$0wlVmM zRy&KnzAL_m4Uzk=J(K;*1ELpN!NNB;=a%W(HL&!}eZ|Bh)eAnJq}3uDBro*+a9nol z@|tg_rd-O-=;__^o=GiAo7}wlU4SOQl*4@U$I_%N@Comdh#{s{mw8r>7HwY{@Nf!6 zZLO@|^ZRyl5=mkWHj$q4A%&KRYbto7g*((q&~XmTwx6JgQ&U>aYAj3hHU;Q-v?Qru zsAW4|f_o_-p`YUvobs^}rf}C8UMn2d9eMM{ejnX<0j--WgO;@&k4NwakWj6AW5jP z;=C?SP_)}Dyi#&Irxhyuvf-7;PwW6BrDbtoB%Ft=dD-cQsnPf93*kKOoBDj%dRVQv zj+A@FOLhdaBmrd+A`34-Uvi?Fn|E23<_j(y-aBi$XU%r!Eb%(ZmD^iH>~{gcBFAQy z-5|W~?}9~QS0wzJp7RWv4%d>dY?R-t4iC%J`*xS0WsHAUXnX9iB`3FaFf|f^nrY}+ zyi(+O1M31y0Vn~eKi!L$UtUbHV22iJnUexny_cj|AG{Kc8>rQ__cS#7juG?mI2eH# znPIoM_`Q67#C+-mBToT++;e|IN6gBWpo8+}Y~ul`SR6j40wrSki(T1OWbOT)V14xk zV)bFImJ9?ri1DOvl$z4Lm{{cKULhEOS(NluXo%o(6c&;K=9clS#xM1K_{LaftTl6O z+FFgjUq^8%e=w?1x$Ilx*Bjdy&whjYfsd~XEk!DwO-F_`LGKno>|4Ho`toTC2Vl6^Y7oM#c#Var|2^4i{Hp+I# z3^~8VpkBOz!99)ZAFSw3b?2FeNc_WJj^9{$y=1t7E4W?=t7`pacg;16q;)Xh{!n{o z=dtS!z%va!$Z6{#}(_kK`+{Q6CXRf8*QGMj9A29%&rOG|}2QtK`$LQ1r+tX*| z{;pF6_sGGb>FzMzb-1$;kU2C%g3j0Xj7_uMnECvJQ|~q|ffccz$m1wTi9j^6bCxTL zd*hY*EKYLBhZR10RPKbN4SkpcgDY5kBn%ngI)h7!7JKI+4(;v!rL5#L z`NOHvAPP9Sw{d;%`nrlFM>|UOMdX>?1WtE_&rP!pkICE_wc_Lk)eFWUSjsBfqXTt( zs+~V5`+Y8DSrJ#j-3~P)<7mSl8c!(zF>F4K z@gen-^m-Bm74HyYA0n+S?U4(+dF5uI>n5=d;`)Nsuqd&|(eBq$#S9}zM z8{BK?V}DbjyvHMzvl#zs!pJOk`zIQ8&?s?H!CyxC@gw)?gFv=q4~Rs7tkOrs-Xu3E zhR>BxoQ=As0Q57UYtj8krA{G|i%pa_yBCO9`S9w~wMCc4_?0jk8BH29@zy)hvT(ye zsF|an$ow_c`HuH7aGoV}m{LZ_<)v87e&%L5gYVGsWfG|%Mr23af%@*rm&4f35bxjG z_&KTk#mAKKc{#YrMwWe=oBYl=77hD&A27ugvhlnYKAn0um<<+AJ0a@S*y2jil}21;KS zJoHgc1eihuNbANlq}h_(YHh+`BBQ_KzcA|uJf$Bx9)ajLFgNWjNiR?~t57)|6$#J; zkW{+At^_?#cRKAD9M&S2_>r4>S>Kljb~!}{1HCKXz926fOW?v>x8(G+$OuBcV~Url zlDeTUS`i~UG(oDYn&-9&7M6|mMBDUD<6~s1&lnUKVpq7iB>#c3!>zryEr(pt>R%e4 zJyza)vgW0^@Ifml9nXYkX|g1~F5pf?L3^O572qNOs|MaNh4M48SDGI-;m<*|_hyiK z=%aQ6h^iaM@_k}u4v8Ioc4(Jv(OrZ8jAoV9CqbQzf#wd~xN#(s9e}=H>uR1UlaWGW@91_lwaA~Z!=`0#0iD|5r|6sqM-YNR4IXf;ptvhd!p0zEv`}C z-6nV?r-yxlQ)Pnjm)2zr$Aj1??l^jP;ln<(&`YvlV&rG?)NvXsTdzr%qHflX;x{PTi?co}E$!QS+=1#Lk;@p`pLXg(nr;oPy^aS9yd#-qITNKTjWyxK_Jr zzao?%NkG#q@iEU~RqLb8^&I4R@w$_rCmrl~9T}`R2@-^qsuf(!7ddx95n=arrj-~O znpgMJeES`GW<7gLz%DqYARFcz=3zY5*fTl8rZEvJ5qnJBkLR&*d`vE^nFCYaz4A!V ztIeUmAyQ1zw?c#+9%w?(;t%VEihs zRkCfHH#`vc$$$+lAN#sX?y-anD#7iQa)TtVs!2X*pORKJ17Lo=Q43gK3K zwAGr^R(mfsBW$M9V5#C2gmODpicqTOm&AEbYl0DSxmZ6XfyKp`ISF;9h@0B_xk}0+ zBiu&?l8!&1dss!3m7<;5!m(j;j(V<&#;7=*gln>^=UzUbwQN?Qv_QO$=5}aSum|Xu zRs%sU$B9Ydq){xPiLRVAhGH)Ar4AiXuAfo_0H6*tb{rL$MA?kCa%iZlSal-w4 z*>nB^$Tj7(&gXS@W~uSB!{I!3Y#@x&U?4z2>1~H3sim)EO~u!gw$+BnK>dl-{lnm`cei1v@j%MBf{=h ze|HLQi8Xu9^o{4lrIS-2@76_RxjO~#%;Ll;)%f-D65l^5A7<$vH@zrF>Has=p&HcHt>5nb7=ly2qwt(RwtfdO4CLOhIZ z9}JFuEr#&QZ$%$g;ZI5^u!j4MSb$Uq2-TJ4nmO-N_Z9Lrv_Vp#<*YZlA8gfP2&|MTJZQc@Ho`+ORJpqcMV+k8fV54kQ#)53$LP_>hL!SRv((zhrkR&ueDcYs=AHM{zsWD_pOJRSkLPoJU^Ga^^mv5^!o+arTO(5ehJka=ggPvDg=_T4z%Xvl7 zp&L3>rwFgf7d9VpD}DZGH_9@5!S=7fd4Bnpxf*^6#G!fuR|m<}p(EvY7$K=QZbZGc zRlVnT!Z8?;jG8$0O-`^76K__ns(Cw--^=f4M9%pWm)gr;Y_|17n6S3NNBlyFv)Bof zmaThwl#o5iiH^u~m~FVpJQDF0unf6q29-h1<4Y|l}Eqh2He9K9Kj-l@=U1o24f^E9yrnVAf?GNNaYddMM02@ z+h`Q!ofJCbr4QtGw%8fl0=DEzU2T1964$bgz%?1S|FU4 z8#DvnSUIH}rkq3Z(a!?sV3 z(#RR(%gOl3Ha{^YN$X&-NU7NKJ>%btRA-N02O~%P&U6p#74#`$^Eg-aslY2vf*kgE z2|aI75^uQ9iO~eoJ>*kEz9SvK*UoR^SpVr} zm!_j|Q}-L#pxs?%;|biImZ~XA->o#?09|G4TeeFumD`31T!>ES=}l(gg`E{^qDQze z-TG2ne5GqeuyX-AqmPWEyH}(Yspo8z<<@fw9vXXc%57x1IG+Sf*$P^X$l!c9rLp@` zE3_JXC9y$n#;NSqE4i6B?&piFJJvTB+j{1V0Krgs$azSxPR{jt*sgJ2>&v60WYB6E z?r%KJosV5g7I8qC`zRYN^{5&FDIaQivTnSE;)IK93aBS$^g548f? z43Cw?=1u>%zuqJ^_aXpS)l>)MEu3~u4B$_1T$ga^(p#(i5S>xZV#xJ`O(g#MZx}qJ5syoBe6|JoqHUqb%zUctf>EkI;V@y^kE^kVqb^aZu^#5 zrnj&`?#IUFL}qGcI_LHA2>uQkr7(?gHe*ptnWc!!pdN&xMi$~g91(tvKT-0lU#HM8 zV+E*BG(qR;ZC{<5wy3;87n80KcoiDgXtKRyN8RR8&;&ufaFzujEP853o?y;<;Z2jqWb2rHsPEK(qSPUR7VKjxlNSbf_CoV`VDr%D!} z-5@7|nl$xDOTPel^ceiNaVEY&1f}n6O4kHl@h~nwar%WSAL9{mxAw%HA8f;r22Kp8 zSf1DNl2}{|jy??M8=$XD5DH{s}E#MSR z_-UMLp`_cFThkiWZ693ibc0@xFgFEyVjyh8{j|zHGv3Eo0VVaNU6oq>y1h9W_R5GG zz+gDgGZ;-hr}QLYT{6r@2X?EACpUMBHyDL)I|hrPZE}Y-%sV$|7TencT$R=ZP-miv)HLTU1g2KDo+*a$O|Lp zY{Me}Ndm-}m?a2hG#1T2&Z*xhuVr^-YKmQzPn5fh=jPS}LuKzS(cRLW6Z3b^c!$e9 zmKZgAaB?)n64wX{oESuO_%U)|K;$JtF{t~dSvFapFFk2Jj}Z`K>E)Hpbtdwti!l|k z5BD2*p@mOInlWifG%&~?GyVBMb7L)zUY&h7b;d|0_V4AYUqin7DSfaD&gMt~+=VitdIvgDPU*0a zs8Xfqy{OKin0#8PXb!UQ{*|g<){5^JLVkzKIq3l7TPNGRa;Lfk+<+yu4M1_`Sw1-9Guc^b^m9&oPjkAeA*y@!o?rPeFSrgx zBTx;%XOK2;e&_^S$))mj8uSirzTyDhiAiNr_`vBL z`{1xTxyNV_s{1xfz4CVMVvN;)kFK=c46~T*1C=uuOB-~^u1b%2=$)=LgOE&)U8;?3 z?s#)O+wj-nNQ5rX86^p2ctSXqw4|*;=2Xc^(zRXmKNZm1R{HonvX2Guw9Uo?^SGjU z9_r=_-ZiK1Z7UkId1*!Z3k~1LV+Eu<%tKCVaR4Z!>vd(;)q+a546f>_F0C=Wfhq8S zyGXB52IZL7m_e^*dA@L+Q8p8(#HIwu6QCDid~ zFt}Xo;2@$nBRb-qzS5EC<5E0snr^10F3QID1r0l(X6}No>^*fay9sc=OM*(Ls?5%u zG>~s;q4nvQ&^yRU9uMP%z7>+kyvum#rLxYKz&fBXc(NqAxv+A|6qFYClU0CZgGUQG zWUrs+dGD_?I_a2wso%m!+52$-gc1aFw8Hlg%EA&tq1IwWmlDWJ={OQG_u2pa%4qMz zAbgsg*^NY=rnY6G-HH-{rs zzFmq8KNzi%!;-3UV>B>(`L$*#(657nfl7d`v)Vy)<2& zV7|8&0tGca)Q@EVZ?DIFeqgIm>HSTBBJOq} z>Q4lAo)z9{z5$_(0fe~N&`eylVhQa}Jiy=CSooW1*@IhPu^(W~4RXI~bzvLk{A3Pe zZw3{(NI-2{9*@l~U+zQ9xhUE)BYp>e_7lvzp{w;bKn<9|HoRfvB=N9OX8NfAc?%s! zt63~702H)7xMDGjzmrcL-W z@cg8k_T+CLm7O<$pbU1F&x?J@I(&Cw(Z3`l*AB!QsNDU*eJJeTK;04^(;8q8!GMC18A1K&Tc`l?F8an*TNV$ihwoSSkY zK=KHL3F?Ti;|-;kS%cMbPFY0|io#1G7I}niI2@>{wBY9<=L{@zfAkKk?FrL)e?*O8 z>I#pyF>^GE0o0*SN0=)xN71La*J7GH+XnJ&2zuUh1(b z=Q;U|qt5|Jr1{A?=IG;j;Zs-4wul?-V3CqEY%!ReRI5I!r0=CP?Kyr|K#b`bkpAu1 zhc&?-K)=Jo*xa;vQFCWePYI*IuV_Ci&?iAap(mRRM9+GURgIKLRs{TByV_@XZC&HQ zyaF6)0SNl4FFB{;Zi+&V$79|TK<7p{OLc#M4O)Ph3YP z|M}vqNT)4#TK#G^j0DA!7I}bCO7VB_m}ei(y`sDR>R}u`5`ugr+|;#mU$hfizKLf^ zsE@?sF&BX&&Krl*>Q@_)6rX}{`lQMW3?`0gr$)#|n+4o9%Kc$J2x1gHRef;ABXjlq z0=S^QE9Rz2xbimX*adSLI2%uyR4BGWl_x?)Vwd8okH19a15kWOPOT4ZJm6t`uh2%M zc*RATz@~(OUy;rq&jvRG{X~e^XN?v_=8b+PIgbyo&$FriUh|hIpN}5d@&aU>YwgFt zRiU3Fq`^-1v5*67*aN9*7ca1e%tjAL+4n-{qkz^TN!4i%=V>EiB^vuGUrV?R2zT6^ z(6v4*k4Qi7As-DA^(Id;J@pvgS#eQA(Nl{x3RLzqnsN1sMrvmGRHY7eJfZO!$jH%p zyGg@-Op*ETPUiBnMY#tJzwakvMQE8C;8Tl12UM6@0q)?twIC@Rchp98kRirDBJux(0SaXrTEioylzot!xZ zt~QkDD|^SIW(>e~nm3puIS?~p**&vAIMpUdoc_Kt z@+%)hj@-Fiss<;vj*Ta^>iEWJDOY|y1fkg0u?>e+j_A&j zYr4r6UPA^-amGKBhfY_GyextsP03F^jGZk~sDUZ%>XxJ6^$A*Y@zWdX9KukzABy3o zezFS|BVs9}!ZzQFN+xP=GK!ZgA1fPslT%yXHa;tcP>6u@9r-H~(P*kMQ9jBRul~U$ zw2p~wgVYH;%fMNFvwp1gNYIpFnV$CGZ+$nTO1grv8Sxz|6-HB^GU|%jn(BgdPM?bT zZt92PflwZxB?)$*RHqVk=VEIJ$$n+5E{EOtSLpI;2Y~j92OYei!Cpj=nRJA)o<9}{ zZ8Q?_qm54-(k6e}Zu_30@}@sf7aav>t=EO5GUL86`24(va&XfJKp6DiCb+cc4b1eC zy0W*JpD@po?_4u?O-A(bG9yR*i4uA+10b=0Toz&$(VUr7*;_upC$P|9x}DZyP2(xz z#@_W4(ONUGZ^AicQ$>%-Px}zcpb#(ZE`T+MV?8)9&Lx7ir70eVH7+c_32R*9S}WBA zl-1OEYaSVb+CeI8ayj&wmcfGeu;7#K+UHlQ8r7-&&>>>g`g238q^I4_KFeo+w0_Vb zPT(?Zhvt1Of>lvKx72ufEFXO-(>JeK47AefJG!zS1l52`_y9*xp)&BT@g`G}!|Js- zgWvxCWaO>ev|3^jxN6<_1*oPaQrqz?J!&)8Vft8Jw+L4gBOB$-&wz;KfDK>}K*oqb zq?O6;>ydX32)qzGvg}0gO_F6~jJSPdYJjQ`K)Gpxiw1!#~KIDGJWdm%y<(o zYIB5S3V3@zO-Gz@IdcWe5DK)dCwKyA=(3>7+PurB^y>k2nKkjKs4J>#Y76RqRX8Z6 zX!YpB2LEi}>ifSS6h<&WS)MSWR2k6;1pg2dkymmpwF96U2_Q222}{qFXVg3H<|i=f zFE_@s8h!i^lsAJv0FyY*i<&h>I$XG}HKUoT6LfG~LNA4Nvihqc+%O7gTrWY!k3zkY zAQVa|JfFWZe!T2P?j06%blpj~-NrKydGhZ2H2RILzjN|#L&#=5u)`Jw^JI$PEbjv+IZ$tQqC=-{jvYg%eBiFCj zO7qVK)IZH;i$JRQMi2Ft(-N(tpfu-Jr2EuR=m-0Ski7!3m5+nXd_%b1grx)O#4H2n zD1HxXe$GQKCeQtHK729j`OO=NNn0Z$@tORQ%dR_1*Te}8dhO7b`0`WVJ--PQ+!z^F z*5fKJZF3p8c8OL}fi5tI4<6&X!Ii~`j$=Q)7PBX?`j^$*w3=m!LtVlD-T0N(#hZ3K z#kN-u}!w2%V1HK{5_*>~Q2Yt0ZTemBD5A;tgB4Q1NsS14=6rS)c#qvz_E zCBy0(G_Dg*#cq86v4C>(eutM)5-jCmkGr1M>+;Ep+&O|DtwAUoZy@9ni0H`~9~-Lr za7ncNqdgd&j2{+TS1 z0M9;LUQO7L&)Es;CQJPtmM)<_3*X1;jP@|sbGj%gVwwDI$l8i?(J9z2l4l?iF;iEo zcv@vFS`(C*Ah~?fOUq=M7jsZfyhy!FG~O~-?JP^mJx)jzdBuRu2}+ldyo?j%uM&_( zpRZWG`Cw`KRgPKblJWN~+#Sozz|~*#=tFr}H{ayeUtZUHGTtPL483=ce4+G8MmNpX zbi?i8J?Eh-r4fFtL(ud_xo*KeM5onU@DZ<&>sou@Et!6GJosgd*o^7hX1RQ;hvcVa zJ?k~0{AdrOGj7Qx!3-hp+GJ{o@XBkaf(!%jjTT#(j*=ALNQ6_ zQ@_1AC1Z5qAUSH=1zE#u!I&NwR-X{sEp|Lso;gwEM@s7yi($^OOU_K+Tsyh1cn0z( ziR%W0a;U_rkN%i65Wyy)ex$;3fp#V9VMf~KzeWGD39wmUpmPnS_Nl*EOycM{*@h#D zq>x^&k4gyv*RLltJjn^Qa?4EL5m#3>R@uS1&Q)#p`}DLqT`#D4$gQ(1Wep8|K=RlcqCqIbAXTHCnRbsm!PG@fAM2t6N0g0jD{RVQ9V#=)T ztIb>wHcY!Mm^PgK*e--^dm0&{K)pHy^>YS?61QHn`N1*n`nBXkSNU#tpFWy7DaJIz z8jbqFiFtU0>HQHV|FL)b1332W=C*FRFa69B@6AXQoa@UV8sCV}^GP~upfW+n7tJmg zG1Qs|^R0gqcx9!5XZih%Df9e}EG3-#_sRn=w^WmrC>T2+I4+Z}wk14Ji1R=8#I2jN zD>X7D9@Ux!%k>@}Aw3%dc|0WD@6^S+p#MWNn&y{~turkEAvM90Us;6UoBOH0oFd@I zjZ&RuRI`4X&U3RHYBq+DTjriQyb{59Vwnbfhw1K%F}R0wAY`?vIM>1VAQ=lwJZhYM z%y`a~jyw5Ugy#4vh#*C{dN)h;`qg%-)Z4@0Es(A0Lo#~97m zvn}1hYFm3db0=Q7lb_}V;+74}wTd36oM2*n&uHGW7d4wnUyr3FuG2Hc(dWW)H;^G^ zGruHX>fD^5V+huX`wrf7+x!eJWkwR2(O)85u5+jfvhSYl)lluvb(|@-=GZr;ecCKh3=2MqW(r z>H=8>G^7V9@o4H~Pw(Ar>Khh<98JN@74npa~T!%*+oS-2aOG=(J=T zoFaCMmg8?j!lYj&F&8A#wH{|sk(3^AqjC}Oo#@1(~XzUK>{&P(^; zBvhH$d!ULA)-=udc6gWy@|i~2g?(=biv&a<$~L&6`#Xh)vlR1J_h7{n#Qjh zL*qc>okoHMpBwPOkJ(n;*~SC8dqj+>7p;yK6!CD&UY{lmNcb}xraL(8uQC2kaiJHA zX$4nLJaJnyLRs<-K55g%NUom>lFucTZoH zyB=|b8N7U5+uC?w1xM(2C)-9Io-z5obDo}AHi;efr7@!wl)N~?~Uxk@WEw!Q%(%V6 zv$E<4VlLHPq!(pJJxsm5g9cvNQ&4maf?OaFdEA9Xx{C8nIMjaINBO-~{mU7@U)|6= zvmR(VxCD29{xbSPxT4;8V(%m?@2R?P7yr_=GraoIVp^p%PH~{8fRI=PK^iHr4d1f} zDQjEFR{H+?v@E|Z3MiUvX6&-4w*cG1d2;YY^HZx;b`~4C5UH(hoyQ^sDQ$Q$Pr?C) zv66*+V`8pfSqoeU5W5^F5y2`WJwECN9@uoYf5qt^ z{4MaHc?O}Q>tb4ehF7h{C?c=N$kfH7l04^ZF?lHxkvGu=)n90Z4!J)CO)gq}e`9EX zGfL_A#;*RYJ?FYDOAD^a4rn?Wbje8dK-vI0vf~T<)8*-{84l~MvW)eC#G;TNPt18$ z6$=cs?k5#c4$VKVc<)tOetYVrllLRXwZ=h8vXPANa{E2BI=J=+UTDk#JNWsX3j^O; z!Y!V6i8gZx6XO2IKA(k*yz*`aO;-?U3JwO!-b3J<$DAV(4Yd1+>#wJAgMG*?I`r&D z)qv4@Y0Uf7Cr^}kc@;wl@xPA#<ea^I`BTZ( zh}HK=df@7F5RdDP2byS1qo;J^mE}LWL7?A3%a4K?#cS`!|>UhC;Mjl_k z8J6dln}z=HrPh$I{g~Ploy-?9UVW<GZ2{2(F*g5+%JNbzu0UyYN z;1T*QrY7@w9UFPE#XfQR8;@@EC@F2H_e+HRSxbKHfUJ}pegAsJj!Q+KBuZ+#@g z@eFFQ<(oz6`G_G#E8*w();jEw2a&7@f&bOslSeguWlgn;6;qI@(h|W&L<%BQc7)() z5GtvNAcC?hn<8KU4U23pF+h<`O>qH15ZOdTAp!xHNMsj^g0jShO)4Y}TY@5d_eUt- za5_4KGvnzwGylDl<-PmveRsd_KAySANT=kE9;a=%@g%sA55f_;jf`3cP7Gd?Dp^^W zy^uU6a2S5~UD}5a?k-1hm3{#g2ljnNmHw?FALYIf+e3C-YEw$)Teu_uCr6+8XYk zxb`5u0B@zW+BQJzPLIB?(+EXwl(w>A(8#b=Z`}z- zH0Ll2Js$pnjwOB((k2f6jnMA~3{wU;QolIM0^3M-cbXTl8R-T+E&240tOEzT?UiKq z700K)qw!xguE@7~(w4#$YpHhg;`2&>W%{0(bo3JUl?&~FepN=|tGOZb%jkiYas~SM~D?sh0 z3Aj+FVDSch71(dmFx4WPT? zh|Jiwh-!#RQ_XoPvH8FeTzuUB)kes%b#s-gmsT(`GG`Q!%LuuBz#4{E4 zQ(^QQvXt+@J&M#4_I=~3s=32P zH&75-5E+tRzCCJd>q@22w8P|j?^u$530Q#}^dZ*POv4yBy(RIzfZLK5g8=frPtx%P z6M@Z%v2W8`8#^5&2-}Mv+;CB4!V#)SjH4k!oeNi7J5w+ncREm9EX>sTlP8&JKS|;% z4$z$Iagfon#a#}v4IFKX-q42xVW+8O#B)=5?S&xVdcYI?pTXWz8!~hD?+J(Kudkdo z9j;lbymgU%4%slQ3RXMN#p8&Yz&ih)XmSs?ZTF<^dv)=ZP*?p&6qPnn?;lVYfZJxW&7&dz81gMDIFmR)nem3G`G@jn+waTlTsFb2-Mar&3e zkog81VbVw#orKuO|-8-3*M*OgU1o1pnWNKSUN+ zW1K}i=x?rjlbMYrn2?8b6hRz5Sb9L3CH0dBlxg=(ZgeRPR^L;nH+{4oFY${Ss4qTJ z0ZJ?h&7v7;(Rq2dDbm1{QkQZt6B$5W>yv1fMG8|5T_R8fbQMGXk-GS96xXdMq$S=K zBM~_b$>}(9TIGa`aU`?(JyiqQ`Kb(&KMy1Xe&&pdf<__&q04-fxg8R2UK70=5>fnQ zXa<7#kookj+aK0Fj9{&IZIWP?k3-J^4HWk+s#RjOb}2@-7KdxAmqfE#mmMN+)_aHj z#b1J)J`MQo0iP&#-M&{Pm^x@wrA;rXxq&f_3wY915ub@>Ek~zeLK?v)@OX<9UJ=P{DLGa^lEaI=Mhz?p*A$e>L(CyhRfaK54zT7Rrq7lH-TCaDUC z)31Tut35)qni9`YLXYS3!_Hq5oer7xe@@4BTgh(L-^EQl*7E>YV&8VKnibF?T99G@ZNf#nHb|%<0_Ddk z4V?q>C~=Tb*_9|7N#cu1v1vM^6VLBRuMd)%PKIhYOFlN`-Dsr8;es}ADyu+o>+S;P z;JDNm&`DI1zy{@!_-*wz(iw&C7*}5llGcvjp0-_)TA5Y9Nq5gXO$QYB%lFc(0T3bU z1E3c8=1!dcIS_=DJ~WFr@FL&vg#<;qT_UuvYb4h*qv*8DzP+u>69fq_5e2=YK zSTVV~4rmA-R>U`;xDHxB;B0w_I7p(Vpjkwe2U!oiB&h~%dhg1j!sHHFhqd>KM1i|r zTBb9WogntNGd!zO?T%8Y1Sv2349&6x=lv~Qg*!}UYTd@Lv2I|!VJA^sPcdSV%)8?@ zBmB{;hT(TNK*c5!hSZdcv*sK@?T9+;tuo$f_K3JimO=s+D!S<7kv}4^%|+BQ8>_Kv407_-di}iHDPTE99VGX{ z24WnlN&Ff(p_YKF%52`Ef~XU0{E7aR;a0y_3}_3OBFy&CwPRw@;@;oY>%OpjSLyi1 z62iV9RHJEufMI~i&3hbfHxH8dG8Y;0nxKJgaFC(5(5`Gzc=%FL(n0CS$i{Laum=*L zlK4XYmtnU`1*s;4&O#r6l& zH=ADd`*xbx+fQxHztULStS4_!oclfTW@ZnK{d_g*Fqy+7qqwU;sZOg{2i6su!lirb z`a&&igKf{5uOI$GZV6oHL8R|tt^N7CUGkpu(+rKZT-{`IbNqAfc9&#m(QRNy6lh;k z-<16iicCPgKE24k?7@kmG|hz6VIwEA_@@sRCb#4Y8WDsok|&ytxoc!PIo;h}DLS;& z)bg3_L9ch=Yla-Xpo?0uEQJMgi{?PxN|O?bP?At|-Z<23mH&=C>hiUHUm34hLVHAx zHu<|CXD_mB%~vMpOtgtHWV`T1yYgi+UoeKMRV_6_nx2j&#G$w}AX>re)fABFZ`zUE z$PpBQLGgaMdaR?6<9Vq^Ju=>DuSu@XciUcPVbm504wi^@f{c9O9-U3apWo0_EZJK1 zs8dg}KtT;Jwe(HiZod$#)}WK^`0MrhUA_k@S4p$NK@An)`?_0IESj$vm6;taceT;> zw(vJgvQ-@t!j%fG}2O@=ASt0>t@ASm*2OSvW_qCeJ|&MlMG5N5LY;VxhiMO z%D$Sht({33VLpuuu;!8cm%(AVSaY(urdEb=GhkV0_w%5~_eM_Op53u~5WC|ygEy}w z0~{lr8D9A(MdS8Dh;!ty$f;jEx`#b#PU-RVbXUtmWoqpMzK z3{?sUw+e|?o8G-FUX*q0ly0E0-WdH}zsb=rp7^z1>0Q2uwR~5Z-1R*&%&sd z(?}hD!4tk60dl`x4wu<0Dx2KfI8vNJEMCX) z-G12TY@Tmq<`J^8<>~HLPTg&>9}BqAR_>`e&oDkQe^1QLGwfE}vk5K;E?Bd6k}>PS z4l-7_{`@mfBFuFl-1JB{{;A&jrZc0t4nEZ@2%l=5DKyL#%d>$J{&j*6t+T)UOR%2c z>g1S>xX)e~{<)d_%qL+WH$TN=Sf6U0e^0aWIXp@*zuxfk1Me@}v;F^1mhkkQIf6nB zgkR@>gqnH40zrlF2o#DwGd~u7o%s>!Ke`Tmmf8h>c$Qw9Ex$h`jX@C4`fBzZbCLR= zYMuEhuaEBMEtm$gc0aS1kN)isgJKrC{{!It8`qiI*j%VN`#1j_IWt)Lz+mZfjtYq4nn#QO!g5FKGix12*Mu-fNqZOWX-6m zKM(%9l~<$GKbY~t>%1AYEYv{wb>^qTr+^ZgzJGD6Sm^ysVOuEr%>4LM5$aQ|Grt2d zPXzw82{l9GKL%#g?__=Zgc%rHy=G3*_#>L*BVWx=sqhCOk~Sx(W~`Kt!0?f;ga>ay Ye8Neo==`wn06>xL+e{5_Zgo8If41X=&;S4c literal 42405 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ÐYy9 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 diff --git a/src/assets/splash/iphonexr_splash.png b/src/assets/splash/iphonexr_splash.png index 0f911eb2e889de75b9eb81da45f898655ff10708..b6072df329193a72cbbbe9cfb5e79cdb1bf89d9d 100755 GIT binary patch literal 23870 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 literal 31989 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 literal 36913 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 literal 46402 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 SD;qYy`%zQ>Vv)wJpZ*t}Dx53; literal 44271 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%0DZi^(apr^k9r(m?S;7o%S+D2_vw zUb$Zd^Jnz-4dm@Y?-oerz)UBtYQC!|>I?RpZ|?r>_a9Id31Le``q34+dSyOp%AUVQ zk;#mh8HHd@!>v1C@~TXUn0PN3*9{W2bajwML!+oC;uDaX%_Z;Rl4<1U<+u_|DT7*MNc(E!JYQi3kM zV68p5Ltk33hle&Y-3ux7m;|FpxgQu^$Y05wk}(*G1)S`K%pb=g*9ef=M;}SH28by< zlM-EXCHb8h{D6IfUPy24zC*y}*8|;at>u}*?zOy6(tSv7`4*bhylXy z;nhVk{&wO&pa1I7|LVyg@S_c=JT@l#qG00s+Ng`l?;YbJ8*Y>^HDgsX7#TjgH9Kv=;xZQzF&|% zj`4D4@kR>sM!0i@_#K-i#G&Nsu|^b_5Sx}x1p?gf5MGAXJ!K_ZWZ1mtC7tg{mZp2$ zPO|rlV`D_CU9`Sv_1;iJ$$>N{yxf`mBN7rho6Kl=2^UMRfw;*C*@Z2SU7?KKiSCU4 z`vD^O6?I@dqo8Tm_`>0+sKi|@dqytYuW{dNv1@}KM4^6N{T}_VPd>e8Ze5GiLW_m# z`S(^TH|L}LL_4VuY{sE_Gle4DMkmp;ClzXx$U85o*)UWx;a_`9N#Z-h9@ICaAk8-kwuJucsNRlJ=6}WWo3e#)uqoBhA^z zhcyd8yvE6sha*Nz&aIftERg&N^I~SIQ1S?PKg*rbHvsQq_`5~m(^R`Uv#VgP`vH>g z(DMj4pj&YL|9(&{zc~L{Y)ojeZK)vMwGjq#676~t2YNYSN9(^np{E2n?&}7&%ckcTa8WV())Uxm#7U1eSLLlkv`Ywe;{wlU0-i4^t;5 zhE|45BRilTgF(H;sVrch;64X=*w-{-`{1M1UncTEMom61J1*G0qAy~ZtI;)k9x_BC zi5Nj#LO=BMs>zmE?+_zmW4mv5w^V{k6o0RJV2b(Er#XN8=BMA|Z6dYj&2e@k7a^Bz zI?wM*g*}C=$QI`Wyc3-hpfi%OA)3DZs$|BsUIYqi>8vCgU8_(FZ3+hWDN>7kuB4bX zLQ@wK$|_i(430kF=gBeP43#h;GGwL*gfSDYPlbUj-I#Dpo)#-*GqA%%1{tX1K4)|R z?Bew6tv)NW-FkAwC2B;+J~(aBP&f?hsi@Ob$*CjP83GT1zoHs}4;n^Du9rJtmiW4H z@Cyd{nic6?1-lSig&!l}AZZ?q{{D!)0}1`j{xmq=!cIfwJ9_o<|ewg ze=F?vC)RHs{_xkQ-VB;T+dSx<{N|xPcx8MeWJ60PBoHag&1u_W2{=^%W{=WnewHjD z3B@HYHfvl#Qfg#k6ra^s+|#K5CX!+1mjyaTjxQ9R2)?m4%rPP&aoZF>I&0MJ#=+(a z&z*i-XVe1L4Gz+%q}kPmS9ymXv$&TYVlE{4lOn&a>YIln$0G%}HUo*pny@GEFJ|W? zx<&8y_vFw7^HE@wVyZ?A`a}<>30nF(Tl)KV7Zl`_;5zHyD6=Cn6Eh);ZZ#2ZLWwm3 zw+pSx8V-87IxU!T^LN|t+($KQ*Zy7p`^mo?vJH&-DnayO)r1X$Qjx^XLqV_XYOBkn zm?x`OmS(|O62bd0BBeqFn(b#a8*5Zk{G!c{WT;?7C5@>Q7vk+`BjS}>sbQ0j6BHsl z)$kmYS+z5L3#SXb8pcj>1|6b--0wE5$ve=J9X3(K=dtq>w@NAYX_qymx26?#DabZX zA_037eDOinjx_vQp-3sX56=tk%uj$oXjc+Km&_yh)nZclyMnJh11uwBt&z?74=v3J zUJ)(*qB}_U7BhO!dK~J?I3zH2KPeFC27JCr*M+vi0`%@+;*oRyQ`PdTpZ-BZX?kc< z0)=Xp8Cc`m42~Q=CmFYDsoiFf_U}!mzA+~d*LfbP}DHk1xC1`Tzl#^&9+lbh+&O!F*9A4S%RCC zbx~iJLRbbr5VWXQi$=#q77fI%hbxvcG1Y`BhR|^L;Tmj>09Wic>_B%skSSe&a+UV1 zckO1c(6Qaj7tj|iL&b}H9dITHw~rWE)9MBh7S)W6dD};zfaq|WV5Caj02oS`aWtzx zsLz0>l3}D(7+K`y9|6k3`Y-rDEU~@nyLh<%ejyH`yq5VmQVZ5O?+2s)38#iA%l;wf%O@m=`in8*ngl0L(hgHci zL>NgBB=gR=Z}h{V!!S2eT1*!Hj%N(&qzoKm^DxMUckXdVm{w}8Ky!uBZuk9TX;;V) z$$dx;Y=6wI@%wI}O}o&RiHro#`n-MPiyz4UdFW4PKM|`}h01UmXoej^wKoqz_K%(S z!Gsrr7!h620!HdfrX2MQrP(a@)8=*30Bol~)Fv?5iChQ2{>9l*xM2x4*s}5o+=?)+jXK}1J$wN<&EvIa8+pAVbURX_^ z_UvMG-hnaP=HaL&Pd5+#qFZkL9o9aN+6^#NHl{w4s#UWJn&qH&+)gQxJ*uTJY5c))d$xnh1?So?*t19T2Be9RRIOFfXU}w}u`fMZ2d(<6Ge1k%i@X9uAH=JRT9< zc_lgj`96kQ3lhS>_lK&|VsO2C;Q5yVdb{18!~JUySM8PW&35hSE;X|L`CqrP;pNxg zj@W)eLbVhUc&hd_1h3d+ix_`%1vXKmXH3cw1qr}`0>o>?5TqgrUL+gxWfzhuEOJ3% z(W~a2jTx4*d(I&RroUrq_=s8BT7g5+XVxWklo&4R+y@&lSqDVuO? zJA1voYkWz0dAOkBi~gmtd%rIE?!L#%#9C?s{BUr~QfE_L1XPfW4JYis?aI>Vp8vvAhO0{6H{>k%aaeXvx!a zYB)_K1z61_&@T$mtdlx1EW%)sJT}Od66+Ub{S$iiAYtxI{U~ecGBRl}pt)P*DNP5U zNF8%cMU3TsSBM)fD#dU3L_-*i-QFAzkoj1VYq_LI^|xp3L+XQmNWNZ>3mHl(&ho&K z(xVF!3j@fcUG7K?Cm<+jRiGOVT3?|@RL5sRTH^b=t)7A?R5C1d54;W@JRN$;u7?yv zPh_&}-OrbZ1Hs< zdHrqltE7GD;6GR3jun>jDs7c(9jf@l9wBN-)ZYDp*y3(-E}<@os*{Iw<4ag};e;>K zO;seqXPSdT)XABi2)qL_kr|wt2?Hne^$3L5@y?Y1aV9*A71@+8jImVrV_Uq}TYcV) zKn#H$ZmSV>`=}G8yJ1Yb_U*r)ectm|r@hZkWqIj(So9rMb))I~g-k^(DCL>a6n4_X z?LKoeZNl3=qy`#9IX+fPq^BX4O6D%x?&fK987T%wpD1QcQt)ZiVMI4n4KN_g2H#|hl4~FXQ;I9P&N{&P-7V|p^%rV52k|@&QW#_Fb>yYsBFg2n1df4qhdI&54z}3aN187g=m=6 z;VW&H!RA3rKd;J)WBW-kSLO|_+Pw)(yDB6EKQ~j=Bx?$2%S^bK;zP;`Mn?PR1zaow z#T^S;tkTFrovd3@_Zun&_O{Gq_*Vnt@|1{<`&r_m+@bLnBhF(#xeUSYQ$a%SjJvhY zk3e_TDgKv+yE0pHU4j3-bW>s1%o>E;t1 zgfe9j>JH|F8J^oEJM+EadG+^QNhPapuEYMD3-#bpRgfBd zF+Z$jJ@Y=peQ)}mQn%>dZb7H*WxlKvJifm?yq|va^T*5QTwc67+67)oO&NZ1WSDiZ2Sk-Gs^XQ43;O;>`NoZ@b(CFDQ9Vqql ze%uK^33Ite^DW%Ly@JfC2&c$a{L8YmR9&g@55NBN^5uI}Rdx>xQjpC=kY14+$8GY1 zXXs(YPY1{vJy<8`q=K3M3xGgVv6jl*ZsQ|#)D@e_R`bIJ` zTPOt%7M8@zDT%3?!UUn0ky2^WCj|ECXtev5avFF^fI@Vzt+}JaPxy(Od&nsg7=um^_@*sc5TV4J0k@vKVvw6PeRN6s22!-UOgl)fE!=LMU> zq0~ogFuNh8Wrc*)E6nb7k;!rhT!mQ-SgjjeP?wsN63hGLWc7-YLZqclm7X&2+E0#l z#f2n8E9b!zS88P5FFt%Y(hHikJ0PnnqDRn^`8*;P=^sz$cdTiP^B6Yl;NGN=s%#q; zsV%t~4~4Se%w*Tyke*UwrOmArNyKNd<~6y47SpcUy<*0p=c2^IkO_=|6&NB%fr|&9 zRdG8NT5A04ziw-smra$rFlk=$C}x@j9i^7oraKwtA{LVXs6+oBUGD+b#MZS9BTW#L zXs8N7;7D(wC{hn4pj1J+6zRcsT+JkB4e0F&{`D>*vlP}`MsG#X!1cm~@f~-;i<2uiuzo?3q29+a+ zYR z(FyQBZg-?gXGgYR`6 zm;8h2zr?^ZOcK^-Cd)G7hca$`x>l9(M&dT>8SA>MF2ix=1(Ia|i`^h&0KFzl55v+h zVA!=(7UAjvGNQY`=X5&GBjV+7ovFLmblam&dLQs6r&c2Yrt5+@~p84G|s%tfUR;t z>_QpB^J5)b%!_)*SYiH%&bl*b)1(6U<*JK?)L?oxd%2dUn|b-4j=z(&`vfq3h5-B3 zI?oC4ep>SZ?eaf8yNmnG`RlLxF`seoFSY8FyPK@*{L-J(A85iZ@mnGDa`5W%(!)~> zT6un)qGh$~M7=9yG8N%@Ua?q~xtkiSPm}S!(u_^ND(mjeOm&-ES(*3K1aa0x2|-ib z_~rUSUl)%u5LbF2gFDxin&;@JS9uajFQ%EkQHbpVIlhW5?n3$Hc=3e^ms@{pxQkmy z3zyMG6%Uu_v19Al&bottFsk87KXa9s39s=^(SY4TQKqCIHMz1N3G6(8~Z4rIGIGKP4?!mtP^sC`F zC@zcZuJYnNI8OEg0q`>8KS#2MT&;`P%MESH;mLPeu1_aE7%DHRai8$>t9|>o-}+<{ z7%3=M$~1RXcXQWn5pyBUGD0Q4HG9Lg!f~;6-&VO6%wq@*D_Sfmc60(T< zV%mQJKR_;5u1*MYuTa242UOEqrzm*Ku}e3z&he~y0>YyQxT07B!Q~IurqC_B94lOI zEpL$aN0N2jgN_AY6QBhfC9zX7;QxW(DH^T3Xu1dBKQ&n@`@;4fNR)3bjbu8>-<(WM zu&R?T0Pk77otoMIreyHV1M7@?<`02IUBGN-F;7{=8rOSziW!roh7mT?5pL$7h7lf& zrq-n$E?%w$2nx{9C6wOzV|^k*gstd~wR(4P`58|k_Q>Z`x4S^_nDfii#c5;ZJtu2{ z7U{sUAZhr!Pl6{1fQ({R09Th%KsvFGILkE|WzHY)(DGUpt9fC+wnl7s=^YWSe|-${ zBTz^2|IzB;6pfK(JhuuAG|_E-1~LBTW0I1lqIL1ax~A9_DA7sJQnUtMU7vo>T<}f6 zL+ez0eYs@9ZO`cpfB84B{FzGSAK*t4Jj{W)j6s6Z7|(KmK;r+oo(#9v;Qrc;jl`St z(7pyKt&aA+^$Rh>H#~w5|MV1NPq^mUlAeJNZB_vn1ha}TbaCih9q{JiD^+zYtpgo_ANu-vN3+*h&+kO5~o05eeR zLGd=2Soy1q>JJDN^%)vkYML`=sQ&YJ@eJhZeQN1H@6cSLg?iKR{hFp?07uWzQJ>s= zTnedwQK8Xh%%A}&jy~3%G1Fix*1(pKBu!45%osG1Ldl84gYpy!6rVLp z%p4CXM)BE1n@ZqnOWK9ZOwBYtQ3#(v8Xzc1<`u6(jjD4Kd`vD3W*Y1RkS4t>wWxgS za`XHLqI?V*A2qO$XuQT}oBdSD;5y4_M+gcOo98oV%xXXy&y_5VSPhWGAmtitkZ8w} zPp0Pi#x@oAm|X1D63U}J>ljQm*zu4iCjZAH^wq3l>_oO=GmS4|Yn`$nTYOpHuZ~94mYd$&@UdwZxmVKtWX=X9_9FWD zWtG2|%fpKP$yJLI$xf!%S#D&u<_e9HpH|l8_dH7`%_`e%>}yIF;BV%QR!j5q2$O78 zQ<5(OipW~xBVKB#@)SNN*(@D87iiN>Z10Ne!%V}kE22wigK@v9hgm|d9%_}t$qj0i zBPXYjmfNd>pXRdLT*gD^u8+<${gE?lUtzG@aC5!8$T6VkvAHc*=+uLk0sCQ{*9~gI z%1UHDeOVtUkjQfFpZDx_3X^5558QXIdS%!(g_O0mGBuGoF8p-eaJIEXDo#KkOR&ay zb7Royk<9aXub~3LOar0k6`XMePej<_b06kPwpNSBYAY$-?fvkwXUIfGWYMsv^@)P< zt-h74FMSI~^*5Z(X9*_1Kb8^x6x+?8L|J*jNT@#zApqXyq1K<$U6p189mHr)+~cC% zS#cUnK~$v})b#9pfmdC*_`nHTrCf2{j2+>Wqo74Zo<6{eaqjJ%J^-zt?y;#6-sS#< z7urK^?;gAqV~a&>PmS;`_g{^3{8$YaSwA_JGZA5n)fQ8}{UvB8{c3C{7ww#KMN&%7 z4HdV(e#gFnm5d!3h5G9Ss>e6=?{Q}D7DeqmN$2l7VfwNJw=8t3A)b`I6ydBr$P*Kc zqZBWFNxD@n9&Z=io`&h>|M)Rd?aXlo^F7X!{czdsz;Pv^isPm~?y+Jz!yfxJ7uSn$ z7AAiT{rnRCyg7I)=S8yd)jcoEjIV`!r0G2Ray@AH(M@@JQh?{1mgv zJ2ndQ_{sZOtstZI@cT_U$Ge}yb#`x-{i9N`=c^6JoXc(hu9j|i<|p?jOk2+LZ)yc` zl3pFIYt11ntB3Hs;hImssC0I3Z>i-czk_zT)t@F>_C^`FHJ_rFeP>Tj#tz4=ssmP% zl#TL^hYo&GDaj&P55s{>IngTUXYg&Iw&O-w-dnw1%T@7CoU6U&O0yfK^`1W-XB;WD zCBBUhkt}m6;OzD7c;}{dZ1i%qN3}n38UFd`G0icOhWFNYS9pBLNDn;Ti6`EvpzbhF zirNV_zR>o;qQi-^w|UdwiN_Z3?bTLPrde_@a!Kq_R27(Wns%!D-0KBS;o0CUKCmjWcUy66b7^%TIhIjuJ*vkrh9!$tKtKi0W&|p z->NpnKh4X7_=UWkf`4oI*rV9?ObMJb2BZq0umjtP@lL$w_fH>vBg1|GA?rRKmH9c< z#Rs;`SoT%|rjs9m1>Rz+cKwas01N5Vu5W@<1DfH9i3jkH>#Kky5tusOsR?kRm;E{iM=5u_fb(l$3+EOf4|xO*Qf$TpeDqtB-(N83Qq$hnU%fp}O&FI=AYnSN2H~?) z-EYO~wp3gCquwdO03%?@c&BN9Ab@W{DaF{@s#iKfbH*22(tF?-7hv+S$!}F-pH~ml ze|rW#2DIyFO&^CX@{C{{5&?;yQ`1;td;t7w>kWIx!wWr1_II{IFb^ju6XQdRK6x!D z!xNWPuM}`@J{73LocWO0tTF|z$q5|%6~1eWIX~I|R2KG6=|a`^$6ntrN;7tZj{ShG z5~t}9{m`@3z({t$k5TJAu#Gj#gY*N~wNmD%gD^s0UBC!HOh^;S2sat4{B2LM8c56@ z`0l00>DO><@=t8it-@ba2!8NmBElMr5GsqiQ^#byQM^A9ysqL8YsT2>ye;@ZDVPf0 zQ1Q&bNQeQqdP2#9~C* zGI0ApW&hdwUvy8yG&gp5?Oy=alrz@8{11P?5|jdwa+^ngOJKZF_OD2=|6A~1Lg#z3 z|CZZ2`gbuq*ryat{g1A{l@<#h|2h4O%4qN3eD=i*r=L#u?Ll3yaFL3dn)(bC z-MO=8z!nV^)tQS_S0U1WQq%Ck@6gg+g0iX`o7_#((7YcJ`LYvFFUv3E;O+Cf{s-*? zwKHm`vBsXp#>NP?>>y)f2Qvh#G5DAvQrXQ?L&yP1j>7rdI{Di(KjahxyzS|{!C`h* zW5WSH1gjZ^lJZaau>IsLshU$-t<+9sA74)~W2Ac8ttd;__w$5v+%m+%! zsyEy)#r4A2SaD%&oTykaHckT{D=sGd<{u65T5)cMKiS}#PV zv2o|b6*kK%5e)eJH|&Ra{x`9IW3u-YRu?fQn2y|tJ}YzoVDrh;-|BM!<)3mEV`D{= z5Smdh`B9d!CFvzWMUn$j%v`}U6Ezet&;w{zNK~7*KXR#l19CLa?HR;ukV{WtFx!F<2Y#F ze~Hgd_sh}Qi<%-AOdV}TnA+)`P}|oT*!;=>{eGUewr!wxGp=B97U?w zbDs}<$i>RV3bF0%vZ1-#_;Fq{dEV(S1*d9Nr>J{hS`_veu6~pe6}}q9Q*Z2|9$h+< z7jWVHd6fxyc|}ZM%y~^I?|C%_wh*l=wsfgynI}4(qN0ikzJ-LDsP7(RG}qGDcs>5F z`TKY77$(rup*SzICB#E!<_Vg~DhKk{rRNU`J)vmz?>tA4DE@Qck2z7OnK>)n-QAD- zGIzRn2x;m3XyUpu#EP7gOP8bmTKbNurOR3&LYtj!A`mFk! zeDvA&vo!QY^k_nFVC?xnk&xF>SLg4mzqYyW?0F@DZrFfXK|xMlLG5)&Q-#yVojnyJ z)ik`|3$|JQYye&-?qO=r5-~F+9(Wyt(E(dex_AyUc9u;ux8p9??UGpigSF{jz?! zrP$lsp$e^;BY9Jm+EY{>b1pC_7)8$<%beiI4D^hQ@;&sDQ@rrf+(ywr(Y}D?4{tkI zQK9pFoBJLR^`x^AS(#j0{rPA?9>E-`_f8#XuE}{%Ag_9aF`X9pb!g4eQQzv9zbU79 z-s;)2ioGE6S#+l#Cr=9Gj(S7{EhiVmRNWBsSI*f#dheo{Uj^+r_K&QO2Du?@|E%MN? z+@4p7q7k5u`m>|2uP>58M*61Kn$P=Onh)dKd4YdjNx;02xf*3jIUs$tBQlctd{=Md z(uN;=;>*em8piWI)OdlWMUt6Qz9qr+f&lSqB$k1K$*ZqBqNwrblIe1{VJyy9hJR6= z-0w_Iwz!}eMmxVrPU^UUL<@r>EDBI2)$L$;HL#?H(HF7L^P$v^#GY z={w~f%pJ^o)ti=;J2_D2ZkmoU457uz39-EIYzcruPs;^SH>RiOm6~I5We$>FX_3ST zMq+4q)ZVYWa^Jk6Aa{;IT3AL#Mo5Q-nn6b9YTv|>;Fe&Z*?V$MvwvvdyxmX7MCP{0 zzblZ>2>g+Xe)pqjs3WmV7gj~3Z}$Ant*o4_qI03w!l4hkzPzBaQsd5IyVU~hCyg)h$jE`XPs77QPp`$rdDv;JPJh-9 z0w7cA=`Sx>xHL0QevXm!&;4f9b@t3>AMJ*AVq)Zlukj4hSEFcXsF@ik7BAk6qPhL% zhIe)j?R;jsQ-0##&@%h-Lm!^pZPF%&<Y|PcZz9<3y$S8h%fo9|Tosj*@+zN)=LGpe#A#>%2I`}YV;bWS+ zL{Cq5Ip!F-cn08ZW(M)A06)~&m5{;CH*gXVS?k6|+h-cmB2C1c;i~vyR%VVSfKG8A zCnqc9z7GA_^IfDt;;NxR$X>DqEK0+h8IT8d$z6%2)BcbIGXjliR*0!PCl@C~-G{F0 z@{h{JPEvAOlv8VuH)+&rf>yu6Op8DTs{G+1u z3OXlzKm2HXhKW3iO7RP@`6lgb+v6@HEi9xX0MN{EwXe8xUa3W?X{G{4XIF!^7e4gK z!*DAEri(wg-`Dv5YDZrr#bC_w%!!&4n@{$V?{@8A{O9C!2Dp+aF| z_v#U}tPr{!b2Cm&U&aSQ zSi=+*dY<+AbP_6B1pcf9u|;t!KZ6W#Rl9&D_u={6#7(2rFy6Ut7HKaIMGWLV(DYBy zt5H<h z>E6HJP`W+sZg2r3uJ$uLd^hoUvjDU8g;N2`phT9w3Op$cKpS}`iI(H+v(=qdcmL#M zr+>;0mp(fUs zttu=6+2S_|)XdEB6xyijNU(LmW5S4!e9}Tb{YAA*=nh3&z|dV>plRWJU!4}{MhWyg z;JZKctdr&^U$^4k$C4C|J3%b|$Ke)hA~7!j|GG%iPJ&Tldj1 z!lFRuJNKRMSUwDfH8>>)+_<2V6MlB<)W`0y@zL2xg(8p&7Vr|lK`|iv-Dq4tRC&hS zmWZbPsu;R;96oqLYTJsx(fWLgP)g$FW=;_O`9fX&Pf!7M^l?ER_-w<_g=BppkMR}E z;Hmxchfbeu`>PJUBX=G{fOqCBB4~jHqv>^`xvy|DkOdOIYTw9#1)a1no%+tMxJ7ha zo{JJLyNZtkArS*o*z2i%l@$*nvPdWQ7nRg;_$d5{fw)6nU&P=Mv=AFm)1GDg8ZyjC z_^|mJeL-PF=gMe!+DZG0;D!@f$k^>H?IX4;h-aXNFlM7)!EF!8E2>O$hvuoATI~Fy z%Jm{CtBU>Ao7TrI@9-D@gsAXMNhO6HZ*OlyrLP7f6=ASl|2);O-=ra*PprKY@9wmxoqTBMoWqD;VCVytF@J#o%{@Y5g*TdZe!i1& z%3Wc_J}+|Le(=;ECPwa^=Z}@(FQCR^BbgMw8nJa+xJ4Cy+>pC2&$0W9YAIam_$T+` z)De?sM`LB=0)9xR{F~oRX&smWPfyir%?pU=lV4QFfS3DTt}%JL*TT~HjR6w93GTa4Bu@n}a;uUO>uo>naV zqEf~!(%i*dSaiqZD~qqdw2MfzpKZQOeCedUq1e82<`-2du>5(S^FL?LZYHYAG{^mU z<*&%7cQaKviCY)8?vrvi5=BApD*Ov?>Ph>u#PWa`jQ=NfB^LkwYH{PoeMN=E0%Cyt z1^NP~KCqZdpPJZl`0$6n%4u}T7jd4(E(rG22yanoX$7OZ?-xJ%Y)vDDqW+KEqKoZ# z6!NmEr7;4hC5?@vAE)T6{+;E z$g}Mot^XP-uvAR)(sDp|p|ho@=~p~C4VK0o+Ijwh(bM4s9ih=VirB(+Wu@ikBt%QZ zDyY~%I|(f0W$fT#$pvwDgg0$lPJ3-m1mw^&_#gkEID6grp|QKo{vhO$F|)|0jypE@ z>PJ~p7E7n@=g*&C=9E7^q)<(|TbY>|BQ;*ff!-5AKqGcQOp4ksba&2-Bl=&8O;d9- zOJg$^FB?Q^YAV|+#4Bwa4lx*ZE})%xcZC84{H&jFNiFCkmz9BTGEi_`!cl_C-OBjB zr_)BKrzQvZr0@Y$9OMdsQVjX#5-u=YKye4HHAlRnV(XbsYkie{Gi}jai(DW| zcrG=zWMHDW7)!)XQ@Ye_m#LyO;;wqL+R5y3ZIN}jtqf~N>WyX}ulPwl@Ln>{kNb+PXE!y!gGh>?XYZcJ+#_H_ zMOC>5KJPU)zVoFJH?CV)+%ubG1*m&t3q-P@7RFA$m8mWFLLKYt==55@+E-pYQVZWH zJ-04g)_TU%^bTbt1Pr4rv89+B8~d@4ERLhU1Jzms}NZMp8CV+j#E3p`;R zr`tHyAW>?K|F|z)4_6W@ylE7*!a}JeGQNG0(A_v!YCRBphSk``1p$Tx9DWbTm_chy z`miPVg~mk!@#sS0);ZC(I0r?$Eh$Q6nD5PIZkBfD31tKUhd{8InWwt2e=w^$-&Pk0 zMkGAUErq=1g91t5-umzc3Yf04xVREHN3<9V7L$)VCycF*`*R>Fwyv#2Vnk82?a|v( zz4?-6@aD}|6{moI6JW`X^Ut?JHFEyi>)MdYYCXH3IMBHLsl%sL zLMH_qe|O*)6=)k+)Jw!^%$Jt{+{TFtV+Vk924clZ%7n4+>r`x8%y{V#buo(ragwUH zOBY&#>`6brHe4i_Tbr7i-9e;wS{Wn!+eZ37u_q3yNRFs@#)(Omyj48tW?z~Y)1kC~ zG#1JvMAt!d{f_-v0P$w}Ump;z6&G%*cv9gC`v6N# zdo#8h{EN!Z+?t))dh!)3CAtyp`;;*oR;zn90bd8=A`gY@#l=*lA{)gdW5rt!o&frQ z?tH@;uUla7D>hO%fz@V`)z~{b#Fm3@)8~j6ry|-;z0vjoT-Sop0WoCkVnrFSdjPN( zoeDTN9o^;d4`pK{OSa6sad=>C{Lqv#ln0>kC#XgA&WQosmrh`75%#V+iD3Jheh!b-Jp;A&@vN#2dmy=wbsH{L< zym-Xn><90~?I@1=o0)g#+q&FgD5;awEs1-%2iPm@-TbF5Tl8SDA$I3LfxP}k z9iM%Abu3^@XdEI?MeMDGULuz4!p=eG;#55v3zD74r~JuXQ)5I+jgIrzcn1$h`215T zB8w&_apNCWGvv2YG6!t=QRR?pPNr4-k(6G;If08YU5;?h_&t5?V8LJ&Db!xDJ>%-$ zJLuS2s8BxWRcYeLxoAC-%7rw1FppY9F4_oe=XH!)j305We-Ecou{WA`E8S3~4}O<7 z;8wDsdiNl=wCvbuI{0nFlA6bQ^IXc$qBk31ptz`&s9|2e)NTav4L#vRCh3N2dO1Eo?aKPjcIJ9$ME zKC{Mq-@%2_2Ey|6zPeQ(8;!4p-&M(??0(PqI(ru!od7HV@#)|Hp1c1qtM)g!{Yz>_ zxS#q5Mk3#zO0Bz92U+|+Ic?zG?~~vC*U2o`{=-Bl6^I3xD3`A7{bpkSFB8%KF!@)4 zIC?|?E zh>-sxy7>Q6QbJ0IqyhyDbtO}5g`182uxkin9PU3sr%j1Iw+G*Hs<{49qC}yw3z9N* zLG&UO4Vb(@2c{;_g4+|6`3q+*Las_*;)DOGPHjv>s}XU>q0^7q}w<|*Q~2|;Jn^5$BSNY##X@>C_Y)bn7(bgMRyHXXwdW4t4DnD+2_6G z@jv(eCTAyG>f@gnyqsY;lDZ}+SQEVsrZ5b3X$dAnvNSxn7>v}t7&PmZJY*Sbry!Zt z-Wm^YghdS={GEKen7sg%M)5JGkEF%uYe3?&O(3Xy zLmE)CZ+Kt47jk-U?rkc&>vJCiM}FdC##%u>hU!;&IWMy-Gr?7fuKZpX;WA18@{pB7 z2@pLP^z}6uAJppjzMH9GICfB2-b&pG66E~whhmV)m{=zlFSDQnV<%%r(jxL&;S}^4 z1f_UO19XKD7h?%pyWG3X!6$DsHW z{;o-c%3i$atE#Q?`X_6RoSs&Fd`z5QU{FjhYKV`qY)oSLeR`&b3~9?sgyr-dkr*@!*N9LsSwud|kh5=>K|>iBV9HyCvq!%0GM~Iv_8a~3OJkCZoh+BZ z<19IUfQcKfK$PseR;_|$)DTd*;x@4keOrOz-hWt|1G>5dKiq0`xaq)Hro|^;;YBD|Ktacl+hXpwt9}@k3KyG0*tl~4$tje6{QGyP#44Ut%l5ZF8{q6b!r9^Us zdPF~8$3vf;ci)wj8I$vhSo#LPsPGcIsF&%%VBo-@rKP0-$uw9tH<^)e737m;NbJ&@ z^167Du|k&*&Y-Bs)`&%gVQ>1qA_hEc6{9atd?&B^Z6sh6ra4ba2M>IqlxRN9J7>u+%w;2qD zYOLi)8M|I3NAoj5MO-dAh#R;H2=Eb&H27KVb7>pmF%*xyK=Jc277h&!@yTa^NgrpO zsu*i8bxS(@lL&O-;O^=g9J1Ee@K%|_zIc@^ttaB6e=SB^>IbAAeVdnc$axwrap?x25LQqTT_YAOtl_;&z+Z@b%7hXC-#V$h9Gw~j9AS=-k z`pglMh4=PLmQF_rjOqypzR#+AR=JmsB79ZJoFwfIyFRzQG%5BRYoV5Ha7ob$R*C8Y z?gQ~X>%|462$q#bjoxN=xSlBv@cSIS2({EVaDWHg%E&rd$h0{WqP5I^EOp)?`MksT zapzh+zgj&Np{OFQw>8jMejh`l%RPQriNDDx!Ep#+4A2I`SgAxbbs~6Htj*-AN(%fcz$ub2NxG{B-bjYug}0q(O&JgEQ7W- z01Mtj7Jeg}?4be4z8!4aUj}$X(z9yyhx9>Qve**|T4OJ=?*_!wWnODfxHMpyacjF) zFeE7{DMvUaCMH`15_dZt(Rl-Sgx~ccV@5ZeG4~}T%tt0oYzhj=3nO(nWQq0n0f`9zHc z4>?rV)m^!$uK86(xB?&i@Rq*5)MX8*Rk!qyZw&C&-S1sp1j3+Il;+riiwA@H0#vJB zkJ0^AeKOS2Q1zux7b0C-Tifu_%SUOn(tgIgEFG5hpm^~Q3FF)TO7R@3!EZVaP4PPdpWISDtt9tU?|ZRGSrvAD(Q}!%VRT^7xF?Qlf8y$OA-U*t#yvc6 zEY#|Gp@5(uY-_}hH_{6(ha>vx>vy^`I`Bh-G71R-UCsn8L5vhL(y4c>Og>!)+a;L5 zBIT+9^`E!?L;PCmyvAhbBGIaOA&u(Gil-tl^Dood@_-54)w0mw|e; z*v1$NJ+I{>8kq0iQs;x92BsjWS(SWgbjv)76as&djtnj{G_8?Chq3-)AVm95J5Dak zAb-3}a2x7TNPP4Pcvy}0vJk6af_`g-BGx-}s7ug|#wt@8j?rluy4u?^I3HZ5D&K68 zAbzdHt`LcGc6Js7Io<`U1@eNrgrE@ZB1*|+P00f;{R-wFd)--(BNFP-mG}}0^Gio{ z5go8HjxMD2?Hf*Agh_HM{Oev!=8&OZb=rwIKmUxxB_i~8ZP$XHRvn78{T!Vx<0Hus z%JC8sX(1gs`B?57I>sP3`I$;4faj1P|Gd)1)ZS15gFSlUx=& z7_>CJ3H8>0a2|w8$iT&74A}b_4L;5*z^)^mRJRdp6=y`zR ze^@l%PdgQ`)S{a3m}LAs-`tjnUtBo9MT# zA+F)DwBG-ux9br3(}lFmY+dyzWl~C)(Ysy2Djp;`YeVN+8}B%2)U~CY=jljdxMHiS zu)*I|>pw*rp3YW0<537@c}_~!dB#WDVCT4OYD15f6<^)}v^44>0UA{-?Bdl~99FJ0=g*$^>tglb7xP|rK32ZbRYIlzsL zL0)$WBKmf^Et|}Gzhej-93+fYG(LUyyoEsM9m7~)n%`YpbZ+Fx9^&Ie;_V{4Cdqu_ zAfE+UW|p(Zi7}bA3XJjk%2^xCCw|Q4P-E!ZM+F6iN~dSbM!n;OTC1e*93Vj+QC6jg zGkQt4=HAeSq~8L=U7Kw&`nXle?`7q#asE9=a}UG~@2yE%^vfZG_4QR?FwApIU(Z_@ zhJ_`%Y^c+zSF{U1nk0P9yBpQ$)*`11Ws3G}&>-~A@Fv*(qLN*N-tO4l9kY4vw!9Vb zl{^KKBW#pK2aN_cS<=mwWl@&4iX02pi*STWXXQ&?i@BDOTA0nG^%Sp4T0L+ZHAYTu z?nN%U4XNB4;_tEwZmmNX?533s5_%ti#Dgx_t`)j;X~4$A5Yf%p*LV>$lE=VmdwitD zWscff_oz$hj`-~uL$3b$9gQb&($X>K33I4^P;k}p;2^IY9&crtStxOdgqnOPXBlUI z8G(OMk1?yh$cV{^d+rTq>6ukwFbG>*-DULdj$VW~jrRz~A-WEbD1w@ue3-TxcZJjl z3Kv z)p=$R_E63$9tGZOJc-dMP~DbY-qLyA)4KWUQub}$oV0VQBxQqFFS0hkY47YGeC~VELZV}?d`_Dci1}MlqoW2(OCV41(W_XVI6@&vCqC)D(6vX6 z#DQ%B*G+alE?8CaEe#+1gIc@m*5Xe;ZKBgs35y(1MD>E5k1#puSk1mCl=Scz7AGe4 zoZPC$y`}RdD5SNm=+d2Z4fZz=T7A3p|4`%18lmf{u5PeXa2;}lg)xb_qI)mospt9q zz*?T*pE-A-^1aXKFCRdN_=E`B12=Y)loOkTER`w{D)M@-xEI> zSh2B}KC+#37fAhE)Q6tW`wVmOp5oG z%%ehi`gF?JE3@#*g6Z-v_n__Jdm+N?~PA+i5E- zBQU$K&9|-vTIosaer;oIDi8!!E$Fbg_!i999*Kvt*J5Fq9x#^LWc_p+@}pyvdPq5b zyMtUg3$qs^g~&izShV3J5@~6hkKZv_*7O?I@?OPRJ)uiWsL(-6Bae+mCSe`oN$+sj z=3w-q6ryn6(njxC)oFfvG2w7*y|-p?-f3_Qqmwo#?liYwFuqfpz!Bl-*>G|+G_SFM zB7*+sEo*fLk_SVT3JZ4hb6MG2rka86<{8f>)x5*#`H(hy-ke;!dxO9{@kfN+0#JGL zCd{(K@^W4cYW;08FtCl`_Ub%j>UhNmBd>iZ%zlyX6`l=GPJOVwYv1^z)Z$`N(nW{O zE_ht3tH;$Yq3EK|;^DJjL*y#%8bkqMYWv2s{b2YK#$rVW{Urz)0w;^} zdA=I#eV6tJ=w-<=81M@Ujz4ZyyBQW^)xgB8xjjPuDKv+e5Bfz_7TTNh&aH>Da`rh{ zO(CRB*#V;+3KBSsH(Ob`Dz5L)GV?86YS|L#3cqo$kBgLXl~GZ8ksE1sFO=i#XYr#! zRfZ4=kf47M7VR$!B2Dc_V54HDVdz&qjh5sSZ{>R6HB1CX=b18`wAo<8#N^U(5+|1G zp~BcvXX6{Utm+VFs$4Tai|OIu#a~)kjvI-4&b!|-{~%0-UUlh1kDVRoKJu})3ao;q zV?S6NQL^1pS!-!`Bi+jG=7JzOk1XvKn2J)PR@-3sE@2-pe)3P_tRRfN{d&~Q200YN zVbL+0fT_or_aI@MM=-lGV4G9KqFM7rg(>#IOsFg*-JX2j{UnZs*LUx@1Jme4AoKaQ zz4NY6&=lB_UE76ehtB`#4|KXhfMIz3f`WoVl;KBUk_CAR)}HiGK2qZoEbyL`ZFrZ! zW*E6(6E+kSeJ~4CW!UcDO=^QBkd7zYu8b`$VOZ44)C4{yI6|7+!c`9LNhygJmF=aS z+fH2(o3Mi)y7V3jA4g-*I-38NWVjhK~!yju_ILuzjeABHw#C2=>J;3e3U@-dx zHA^SL;N`)=$voMkPsmR}pi+C(CZAfpotpZs%7rDoITYVZSS8n620075@~QAPA|Ke% z2PiYV*u`?~Ml3Ir8`3&vx1?AiRu6+h)li1lqOtg1pP)~kjZ@~Oxes@5m*NRzNe*o9 z@EtU!XsF6t1CkrtH5No5ELy9c&8&U&%4hb*iWG|l8l8sjX3XoQp11Rnv+;^`adbGs zFWjrREX6IIaU}81WwmNon~zy%>}aXk&`-tU${^(M0qzRHB}8R5)L~n>RZX#Kv$tjL zyIpG6yk&0Yz#d25ZC)fhyLp@%BD!FF*?M?#XDnPn=PB80O%^b0Yz}EG zA@~zeH>aW3P8&|sa$2^_Erh~uVh46trBti&_)jh#hmkI87p4Q2-J;qfpS0yZe)`7F zlQ7oWW(R}WRal@q$U8@~zo>}Q-h50Wac20sOnoVHNcwlf@N6TuX9A={qf^pSurJhF zih381jxLw9(kqt~p56CRR!Q$IAbi3^tRAa@#s^zQ8+*gOX1mzkRn^-?LvUV}7L_d~ z(soZ>h^;V~_N=>&^b&(jlr~MKVmF7GbDW#LxUhRP-~4o} zZGAYXxX4&HE;A0js{HP3D`7rN`ow+bWE(vHv38T=(w9s_y3CQINI|ztFb;11g?sr9 z48czqW8&Z!d1`lTt|O-(dbg%nKOG)M;<~5OBZVfjf)`J zx88^8pku-+d+M_dT)zEeX%?#9t`>}ALi94CR4n4l%^#JzV3&V%H0JI`KD;@VC$Bje zn$pzxSiFK2=YsD|u&kb~2>cS6a~|eYU+WBQEU?F_)ptUcLxB#fx6?Rm1EiBQ0`_^pdP)*BxZ(^cw3r*B<=)sN!Cn+1=Q5BaUIi}$SW3NYK~&x*PI7z2xJJNZSi5p!d@MP0j)frhfO zBFBPy5xsJqhq*BGQCpwJFtv&AmL}larj$3?3i-JWwU1X z5H<(j2{Rmi8w|qPT{cNheCrl#d_2CH(rm*Q^v`m`1Wu}g90uI5AFKjq5KaH0O8X85 zX|PC*PYl^!w*g9L_Vip9tp|<-!Kky!Guzp{79#0Mg=)gQ4U^0RpCe1e7hQQgff6dvtDA2O(=~y74N&4qJpLIpJhuYf_Xx6Q`n0XW zdE#(1xv>i>5_CJoV3qY&cG8XQH|_jey*gUSMP1zl`HXMt`9}-uijBps3uKeGAvMc3 z6$$J6V8Q91gx$O;*l6tH4`-Cg?;b5YS{J48o~u5B9KnA(b6L2)q- zVVQwj3`-RWnvzV5^gQvE)F~ZXT%JAKwHFdrc@QRZ6khYM=Ud~%#LS{gI9{gZrf%sG zbZtw;rm*FFau0wN{CTW!i#QRzSlc&G*Zo;~FO9K`|0o?}iNIK(Ume>?+WlW9dQ2mb z=;)GRNs9=dGUD3ebPF(Ebt|DT^Ydqu@2oh|x{HfTXv2iHl;R0VbDAvPfG&Vl^uVr= z9zS3CapM=&{%QLmqIup5ho5|CY{5+QHn;T@717f*HMJ94|NNPl7KYu>H8m?6o(#Sf zhWXr<$3zNh3iBqDPaYgRJ?8pZbR1sslcVZ*67HII!z)vKmZ?oDU)Ll}+k`w4vSyNE zNBeZ|#i8}de2^9LxM;}kEc)4=Q}9#XguHC!dL&`NjpC5@L#B~IKO2d0k*9i@c8XPc zwfml;!yXB==T~QRc}fZ@cT;->(ot8qyXgC|DXpR8KAL zrpA?!jGPDi=UdDzdO_Q|f;}}YcwpDc{=8z%gug4cLU%c(BKNx#6C$l-Y;jZd(UD!n z2$=E|CVdcgQ>~8Tm!8U2ryU9NG>*vUyF$&O!{qVeBJ;g><$L)mSK7Kl@T%I9Qcbuk zi;tGlq%2}hgCxt-(tg;tZzLc=Yv55H^=@2s_wXL{L%+k5xgwtlTM?^(R@0`|@@>xN<3=b}v8%Th zL`5b>in0KHmO#}}F2zFJ&<&Vc__4(bTFO}OFVK_bcfvyBaLL)OX;WN+f`%p(y$+;mQ?$!>s>hhAMb zap4>CZNoj>;INc{OK|-S++Lp0p6d47E3r1V><#cZ4ko=$WP!l+hF*hjlV1N*Ym=NR zU6X}{93AsRPusUr5>j;2%cO-hz1SOBpgpqMkTv*|1vg82sE6y8ERBq5GJ5qb&^^=e zoXy=TaF5OA^N{T$Nu`|Kr^1HkOwx4yS&N+NCDT}OU$De9uTJfQ$2Z(+79S^n*Xy54 zLQXBGiQV9cCC^@|BSI55KI0}iyq*^>HhwD#oxOt7u{i70a9%{$1^_2BE(>TY3DWQI z^up@wq5axZ;)WmMQ_!$vd-lQb5Z}jd(FC6W+|=S59&6&lHZi4@<5>!hNS*;9BneCs zLR<#B3n|SeY4>!^ZxnbJnIGQJ9yn-j$a;0q_&D#oJ@Rd>m6aV_FI{7C4f$xI#l}{W z;>boMIA7P!+9ZuJ&D!q5=NlZ>CMhi@JH#zrb90M25g#9)fabf!>%*cVc8{URrU%WR zZwwlnhvN?4TN#PnU~LvRR;9JqNaKju&^5`aL2gQN(23~9#R7;>*jGd@Z0W_}KD?8x zO92j*^zhXy@0P3u$7*qsQcS^Ptv3e!PxBs~vys?*d>%Rra30u%Q%o!E9Lqf@MHnXvsu#nmizS=?sk zRRd!2eXHEJSeq^ll{H@=NNa;iU+uewM~WsJR+E_~DeICs0|CS`06xhyJ8WtiYa@_p z!0w!FiE_e*PtX?2B16&B5AkJzqYot;c=jz@Q*g5>&B~uavf`kaUPRYcL~9#xPUET3 zHCaweOsU|IYbIjB5zxMGJH$<`ff$>>xrq3HB>(nN`I=v;waMD?qLtn7@IteVt%x>= zg4pGhW{L=pKy*-mz>1qqQ_(TD0s=ST#K1KkdFYy3l#A#F4inQnZDz#8hLu=xB0-Xm z(jve47>&f;fF~`)F?pd5fb-XG5Bq_3wP8UqE(j!sx+SY`nc;_sSc)&EKw|+Iij5UV zTwVYdoZ0sI+-z#HSfvLv2@w4q(jtc4BF2W;g|r*2EwW_wMWH^ZniLy^s6Pod+{>&Ybglzn14~ zd7pW`&www1NwTpLaK#x z-xpt3wRobwqYo8K=DG&vMb`H~is$`@$@`#8>EHJrMl%{UvgtFj*&ma9d^-*old8^c z?IVR3xf@lH`Oo|7dt3HH+$%Xnm5G@A(fgjbHSzIP_O@*uIsN;>!@zH_h&dp>IfM5i zYB5YE|J`Lo?pahm@bCn}4~?LI`85Iv;f%x3kR(R;e}7us`Z&r^1%O`ezmjPTx=AiH#&I#mH&_Pxph=#Ql0VtC@SU#`|+20S+bhD5H9LumqVHrbL zVG;-*3?jR>Wj@|_8F&r)<`_(Hp_EcTi;^X)W8FjWLLVy(ujN<@uAeBYJ6P6EBJYoOR zN9@EdgM{d%1{z~ok?+Q&LM+=2K*vGAfSSvPJPhpN#!N1Haimk!U!`cQVQH!Zt*~2V zNbwQF#%lxfCyZ0wVv!B0ku^?;TRG-o4ucHZ($pS{x5XTg08$M*T7fkVau) z@7#?n!pyIN`=^`-v2%Z3^0}4tLb71Ldu>c!-3e`1ZHRgL`rC2aw!viYcn)=OU`KCu z8TM*FwvM`w3Z>;DR$vQ=!!t1E=;#BkR1MJz!6Ai09x&fb>n$If^DnU{w z66RP&RpSt19_rV!cHafVLxzM?tH^hy*`FK%_%D!8WHfI9O(XD*?buUShpz7L00$mI zc!3ZlovNPfnPYU~3aBa?BK6%Ej)gh^U%DTAmA!p`H%mPS0K~~ZY%aGAx+r_*?O49- zZDkN2H5Y-1%g7zysJ{<(G z(l4i;htu>Ije{j+>Vp!%#{0sm!^lwHS+jAIMq&Bp)%op+2}rlf03;OhU6yqwZeBpc zsqVY=3=%3xX48j|M$inR!%%hLDvP7Nf_?kK%*~I#XPqYxLij`Qw+|EvuN-N%J`QU# z1)c{q>b#t(=Ubno=i{G^8d2pkJM+jfDZ6DP$4;EgGJ_eM4{k31Ruj0Su_lgTZ`<*E}Dc?3CfzuD9CepW#abjdH=Z2 zttaUNCQn$@XNc`Dze+Z%OM~epbv+Wpj3`8K0l+7?LJYebXh3G)J^laOGek2J1HZ! zmEWfqOxSY|VPkaeA!&Nw*M{kRg}TUYQ@HF^`A4YlKiej$H6vaN0e4;psMz*Q@B1UP zc$EGOtnN^;fE|C&T0Dv#a3>YW1tfM3AfNu{@CF#G@PCL{?Q0nE!gmhXRwDaT%YnFV z^g=ZJz^WJUnA-XL`SX5#M0v=h70d+rbEEz?1h}99n*?W1+Wv==h_iiu=C$j^L*sr2 z1z61TpU3#n)h%0UJP6MWh-zx+@Ellg`E5&$XJIO|_^F_TghZgZ@9*6T7Vl5AWT~1P zA^LXFvg?62P`i#jIvw@l-y0My*If#i5k3^MuLp3JK3M67{g8~j;Chx0{nwMJXQ1x` zbW3|ekMQIkm7F5&&tgMvi#u2MyB&T}B%dtoQ`gS4da!!nc%b%qx5KYZM8{v0Fzb{5 z(Y1Q8XTIN!KM9+y$^YPe9_-2Qck6)7@c(o3W?$-v)Qu_ny$5^#fB*mA1d-u%VK`*; z|IN&QbNGLX0`l2>7Wwz-_;nMJJu>4jlRFZ_WFPzI|o9+cNGyTe5$*(sq{Foe3)~SrZz(9W7z547&-I zadxn~<4kyI$;toPO^dS={JUEwG#HP@yhipMTip4mtiygh6)izkmgSsS{4=I!BD>Z| z)^m&r|M#hj$1U#ue~kZMO#V0b|0PI@EXa7$e$~l{-R3*LTmFx@4+o; zJL7(RIJ!uXcI@$2-oId7qN_kRvYo4Z7r+}R$d3755ZEtO;PCCOhX&OC#Ao{khVY~+N#@rxKJIla6*~r zDOOrTiSHZt^Xag8yn{k|7mA!rME4pTWmLX3WGD!S7&9u2mF`GMDXbPXIM`VE0U9;Y zsJO+WLJ+EOxPJxGlnHN;C!`}v-p4;UIP>vi=FRHzQF-0DUQ@}p6Y`(Wh_z@-Qb-w0 z8 z{C9+-MD(Wm-H|S`r_w!4J|58Cyt@AGx4Fimb&o;6+z^MgM9=1 zhCf0$cTp4VBXzP|b>AaVjGF0`4=_L7b6*V&9L0+giDKw8Ab{Rx2Pr9KJ@~=*O$_BI zhH|l;XuBC`^RH%f7z!GThJa1y2|E;{(x7nbxpM)p&YiokzP&zer2MsnOW}0XL!tv{ zagG@SuUe!RKTfHk6`<`FH3uVAMg<;%Aq^4BFc|45!#HRNG-e>9fH=Z-=TTem-s4dWg?)-}CXBLQ^eDmv462~4Ohm8p*WIvtj(@`5 zlB;HaX#IMO#Ju(Lx2%uO0Udh28gA)Hbq|TO$6C9dW(~G9g~ur#Y%~VeOF?tW#)hO` zfLkep!N`afW}pHODNH!42cj;Z;u1Z8Ph-;pWumjF3J4Df7mJEZB%{Y8{T24AYt!QD z)ptkQ*WWC`NN$=<7~B(R^I2gpg91mYgwdqxIJ?d&62-)oKl1<)N>Oo9(ZZoofns8) zKwAX`RZuEX%wcUPxDnuC4~kI%&D9J9*ND;KMPYdeNCqORtE+3-mzGD`TM8m2F%tF% z0fyJLWK_1+v?uhbp`UVg8d8Yfk3l8MU@bs7kw`oQvW0>QMK^&^QouJuIT96ekBB)7 zaw~)Mdq4ppL}}B<(5Wb@zPn^SiuQ#|c+9sH@Yk;|uX(0TpNrPQmUg?oV><18@bMx0 zg(m^$6zl*F0*XHmz>61!F%(2M#p<1oioFf|f}5g`MEMCT5I`VN1iMJ+Q9<1oh4Dm* za2ssF<4DT+RTB2=<5AVq6eEkHicehT~~cTq$w*B(Nds{ zdjJ3g<$)j(K{XJ;p&|f+(N4S~tXzy@AjnoOPE%VPEW{WI5>HT!O<(FW)V08w*01NL zJqEyA3Ep6`*7wa$KKuOavkLlbF)Bei{c69G=#B@)E^7ggpdirHdlYFNWk}it@*t>- z-4sZKAPc9q1rHSQ)WWDPpnp+~9QkgIvPEAE6}6FJHL2aA&Lt z`|=Xr@cd7_dxCRR!pQ{AV=**YWmmV44{A&av=|Q~MgblUA&>*-f;WbYVz8XDl**Sy z94LqtyMVPSh-f>7{VGeL<=^A+@N7(b2R_oWV+Z}Pvp4an;t3}V9ufzphQo0i~gbGPGca-EL=9bU- zcu3j!A+#RHg0=zye3nts1mO@ON>7-9Jc1w|g&=Uyd*T42F}8rpAikhOh?`M~M^#Yq ze}q=tv63gQlKdmYM{fL8Uc|h?4c4+BUk@srs^vFG4XWOY?z`iJ{+WL>BYv+HOYExH zr~u3+x$sM>0*q&PUzic1Ae;uF<8&106p|Fk7Q?83FaaYfFU&v;M8i-To`l!-7zw8@ zG_JZ9jZ5Gk#F$#nFIOAj%?47}ys+ng`y}@E0nwrVy!Eaxq~Zd|P2fHRRYL~oP+7TX zQ6f;D7`QY*Bzk8w0Z}4EhPRB$Qb6Ql;Os#E0_fI%J}rpw5k%1HcQa+VkLq_v(BsDW z@@kTpe0D;CbKSu2QWbGVrh;9E!|H*S(hz|Bb1;mU9k3r4#aOh`W-;(#upnYX#N~)C zm3Kg*#Zj6{K}d9bYOK};+44vUdkC=uvR?!d^cy_BJb~ZEr#fU)MSbK8yniT6C?6bF zx>L#u+A%K0+l-1aOpp#yR0Q#I7vEQTT-3PE52DP>W63S>{kELUltq(kWJOq;{(3O z#vk*`1r5VpOfILosViPo*OQ?l<|0rkK2-PKQy55s^MH9aBRZ>CMD-c45Fml^9`W0w z=N43|D)rh^QKhtq%$u(L@DK| zqEfBYy(rdB!$inwQVMFKB&jEd>QJOjv7jMDRRA#Iw9V)^;|InJmDT7nHTTtG?>;Wb z3I<@A$uLIMzCJC2CSY35>dt{#Mp!{K@+eMQ>kcEt*jmg39TY15TyF5bsEIPDN|!0!^o^Q3zoHkAt0S*X8wa

    jd&T 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%0AxtwZ@ua=@?&`eM^d793gs1e*XfSopdrngsOB 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 G!2bZ^0q9zsBQPNzvp?r@B6*)_s7@x zBbiyVX3bh_)>`*k{fnWOGZuoJ9deQ&JtgUA-X1)IM*C&?0Jg($| zJ0w0SmY<$Fhp}kE!jTIgV2nA=U@+<51&bCfEPTUj*uALt*x$F!Ch51f+3b7OHfWWt&C4=uGHqX#J?7IF<*kEX zx_#E)k=Bu3#w2TdqI@?pY)ASS4%Rb9?0!1mNE_o2W74>B6LI!$w& zG|6$=n^UGtn=<81r%Be&i=WYxfBm+3ZQ{h&9A10f!Qu6(4h{}e=`V+=qqjKyPYM{R zXE=>xgfR;3Y}^>OPBwN=dK)lZ_UZz*tOTrr!AX)XY+%&r{5oHP$HerKAd&x z!r}7M*IOPAd{^JhnR$G%U$yjXcd{p;XzzmT2j*TTbnA9cx?~bJ_z$fV5++$3#vp&;_;mvq@p=XxO2Wuy;&Iq*mV9uCL3DGMi z1e_VuF)eI=;Jq{U3tIZ8jkPIG-2V0Ud7)=quevAhk`y_eKEJHIZ(4_>XV!q~i|cK# zcf=mqgT|w~Z(RQ@U}3D&?r)p#tK$FRlkw51!0oEkfSX%buSZOcUAWGBr1|O1K%3eA zwwK>5eb;B*nEin^>uf!C1=_ey-OqK}ENwobzPM}6uD}oH9q8TtA8!`cm#SOzk-KA@ ze1j^A0}jt#KV!mzBf%RY-fw5x1WuJN2%7?r@VdSG&~3%5yBTd&W&G zd4KJg3p3xF^JvYf>1&V99V1RX{?nRe+s*}#Uw4|h(srwde~NvsKUKK$=Q-29I63{) zq6-fSgD1zlJ96h)Xp7ipe%FHw)4I#1F)rBpd}Kd6d=KNoU(Ue8u1SvU{`+cSQT^KF zIdA6NDLHUt=IM(kr_Y9em%e(h?R{UjN0Wm##7_Dq>$@`n`I}}Qc>4GFMQffOdT{Z< zryHU}|2jG7ouJ9*=0%MtpKZK%+V$ZK)w-1tN4LMdAm!^62K=3xc6Cm}sfN?Zk6Z`( z-c7Fb8UJwZgX@-a5$l~c)_8P}y^gK%IKK9BjoU-VO>6FDeevY2w@w{AaLI#9ynFrc z2`hgH5uA$L{Z{G5MS*9ar8TQ+7W_2f-8C0B#BcgSJks*?uK$E%8=5PM>`om#t~}In z{cn@`TlJ&E{^+#TtCt^K#vbn*NJj1{ZbZyZCf#IR=0q}Mb!u%^9h zO?$n&KjN9^4{x45C)g?ZF;*qFUSnIYJ%aDo;g4S97>tR@De*~ZTqG?SNrO|`FfamA z(}K41`3cq>>yy&r;*yX=`T~7S|N17R(C3cUdxPRL=p3u#)98EX%cEt+rT9lD#s#kp z4ThxAhmGD4kizHh2#QNXlDXS=$H2u&i~vRogAf09FkBfyj5tOb17Rf7MKLBMzse0~ z)?!vCq$Rzm(WLE2d_r1$lC?;RSbRp@)Hb5;AQbI)9Bxzn1s>vfRvb3TVGvyJtl>p9I`78 zUM`H#_@tdLyU&5X5D0Zz%}-0?CnoTdcD}f2(#tD!6@Hig+ROC7_?^3ce_`Uw3sARL z`RTc0*J~~Eb%r0S8YY*`%U|m}de3^z;Z;o;-uqw7zSpd2^t@zQbI$nVx!p7C`FQI$ zeA!q>Dc~mhGvUP~fn;k9NNegkhUbnQa3ul00pGyK=0(ccZ@zt%vdEeq2H!99EVZW4 zBmYH;wag(nXV5ciKpv4pW4juyeuVmNxS%E0gMKQE>xokZXJ3VpuH^ScbM(q2@OK2Jgt=(Uk<_So%w zBq=uaU*>#F+CsQyUDD}^@@h0f;=hb$#_Ct2ezY2auLiZXSz}WZ;$z}cw~N0R@LG?t$dzcc>Tin}(5E}d&lgEC%=M$-6xaY=D0 z(P?q9kiZE3IQgZ)m@t}|PNA=?Pu%GWKmWViZ-=BL{K4#4JO7U<8&h}w(KL;XPDl%m z-uZ`I4l!{F3Bhq0Y3ozh1#kT5<>EK)W%3^~kKe^lL46Y9cfRZ?$I-^GdzlO^XU4|u zh(@f7@%VjlDQW*E`<9o+xy)WH9Qf zalc>fCM3YJ_@7cIZMQC?|0#VUyy9K|n%z1BXVVV?s|~~1`-$~l;UB&DS<4^ABTV4V ztWOx}aNz7pOG{>ZdM2gLkEZ#v`7!)N&y46~&xP|Bcrrfl&Pa}q*%O!Mx;+l8F~`kN zt8jCTkL9?9EZw+ZW3q4DuK0CmN?Z`?9~^`3iCG!z=I!PBK?XY`F*z|VE!s6BF(E0H zoxyRl7S4uaI@#0B)tV)3568{QYq^GQ3~=@3r^LA~oxjW@X5o@WuFF@>U$|_+%0)}w zcLnZlx#xoAo(mUyELaG{9eeRg*B2i*cv?#A4tC(04_`bB&Nyx_8kL@&K0kf&e16JK z&xI>juJl~6$aB#m56Iz>`f*ZPbcRP#s{6|l*2Ja8q{Lf2GgrDq@H&t*jvLf;vpd4Ul|t{w;+1S zj)l>$?jOZ}(Fwn=m9OubmA*bpmn~ljPh7oX$@0}}d{(afaLs~cA1+_IV&OtJ*Vq{L z4t`2vG`x`b#OR%Ip1YIdcDlL#)&wh**~pKL{P?thn= zo>|tnvMxRqT;q>ljQyavy)TXu;$5vHj~yLDGYlNJ)aZS2v2HIC2CS={oN z1s*F`EMDXhys;Y3b1^ zaXvd?+`OFM0WU}CA6WU9CCBWFPTCmfc&mQ=*2mb7VKYQTM9{B%J5B%l|#w7t#O9w~qcd~?4v_ol?C5#6B z|NXb^XtM1eK6Zcnytosx+S)R zFvpFxA2Z%=0?0E!mcSTm2hV?X5iZ#=ZO7S+XH1y*Iw&~oK$u`hSIKtlcm(P<#>sy2 z*teNe+!*5)PW4&jK5hJ_)o(<WzXLSTEJJA2d zxi!J5Yd>7>7c+bFmXN<(xpwEl)7XP)ClAG)|Gq)lIcLR=XUN=@>~-rmgl-MnxhsD6 zzVwWb(Zio+A31vL)aft3`udx1FMM}Ve5t6oyrQzIx<-Ee#~Y0|fBLyarN&$D-h24y z*RJj!{Qx;g4LvtP^JyW)7(4qhW5$dfYo7>Jb^;-V{lc*fw<$iGn2VyP?j5%}%l*W( zz_Z)mSUmpnJ3rj^O?fiCQoQ@k0orvKcP_m<8GUbZ%N)`Zl9CqGQ1>$^D)*|Pl5 zVQYn-&H2lz3+1$;;`FGbVzyt%juo#|6~9R;)`jlMIP&$S>YJ_ILo3&BjsN)QH$^o+ z-R*fkm%SluH+t;bV)@Va^u|9bADW#NEFEW)yt5ArkqIasp*7=js?wHv0Y@xLox?V02XZQK z%s}7nR?QLoRzY4l?Sj57`x?#Z8R zCxH{FgH8@tli5_HsbZd5PGS4Ga6MB~2-PtNUp(Rd%X}{?ufuvcdt~9-fng)uEQcHD zI_a=xvJW$~a0JpuMF1I%XOg}uxj|#ZdDJ!z-BLPdCIvl#Dd{GNp z+C#E=9a)XCOqrfpwTigU{*~FO*-u2Ezu4D!QH^$zlMxPA$DS9Zx6i?kinlTzI*JuY z*mLrmkag6yIcm8@s!abdYx6RWk-vCU+i4HVz6!rYeED~CX1@6nQfx%D1>H>6 zJqA*?ekGwEVF=BlM$Lg-FX;kye-+&OmZ^dn-V`a&FnPq6C(Rt=c}XzRJ8PI@#L)Ay z*SQ0O_09>X0~T%ZqWq;yS>%0@Pv3W+7+akYewu4qI}1zaXBHAM&Zw3YOFk#HbmJ07 z7;jN}hf=020y9WR7@Wckk0v{Fr?#6-qL0MJf#tQt?M&W1-sQNGA?+Qxu25n$O}b&nH^O` z?R`qbJi_ORid+neR#Vv+Qc)$1W*DEreRnyjm#M4dZdT3V!3RY%(F!KKi)6OKq2{p1 z0IP2yUP7o>RSrM1=-M!WbDXV?i=O2~Nu%Ey_HG+t{K#pYfb@NDKf(y~)|&6-CG3<& ziwdC^Esa`Z1^Vk0Gd0ZDW#5w7@vanyYYrI6-N`JpZrjih4Y2^sR1tEetspE8av}Rvb-9Nt{Q-$>q+mK)2?z91YJMxQXt-Y5p z!l5Qis}EM^tyqXJDCjf<(;eX&Ro`i*hD;h}!4|vHdrTPDAA1o6^DA%b8R6ZrrID%KlFg>|gy#5FJvVdf3 z^D(iuNZo^%Lp#FIGUp7p5eAo1>51AY;}Ikt`UZfrN39>p(?^rrXoH` zl8<%L&-TSREb;=0Ij5gDQ>^;|Y08pa^f8|**eBjHflYlbs#7R}B+V$&nxktLsMsl3 z>>ck0a}`DwyYQ|~6=j?FnKMz1moQb?caOV89J$Mjx-ifljhBm#P`w;M0CCR|>dGJx z8LwF+HsM%I3DWCrsHQMZI5)C;gyCd)X1K@YDRG{+K+Fw#gkQ}haK(K2ZL{|S7zYNK z4NtB#+fcW1^^ZCDm6sm8}0x;bO=%uR<&HvGc*d!36#sb zBW#gy!|$L(qs5e)IWPa}lt<8@ToW!|&=@|B-F?HcvPV_U!a7|Zc(=mH73%YnvZYs} z=rNN<$Yxj$!h7lFu)BY3x--J)Y*Ylv7;s{F13F!D;bT_yDP~(J^i0Ggk)dXU@i(Y+ z)#?=_{&~U8Dw9j55-%duoY(fWY30(B_*zk`Nrh?;tU#_`vgDinOHQa4DU<~yrq2t{ zWmQkJWNRiEk#iN!$@9#9CK1xnSbW?sVndXfGU+hn9EW{vpOX_Vt_IYAPbNp1Sj8l)rOgcIZv&eEzrYrJ2g(eykGpB9Fe( zikqFvH9^vMqI5@|IR}-F3D?R8$2CQGSlYDzM8y%~sHm@k-AmsIZ(9>|aUC%+w|;~X zWm(#H0Xa8*DKQ@A7Z#i&cYDyNljECiQWu@kQ$*Ix5r(X{?$WLN>Nf2WeK|4XjlsK9 zd#=pECwm$qgO8C7ZSMpXlLnL!?sXf^m0<@}GxnUop`P*}rZiXXi%G4 zi~`b+cZpDY-B+r+QG<`Az>rCumx1{)iZGMLktgO=4Vg%`hTTUS7m{$yyaUK$gdu?? zk`Sg}pqCbzfY|Jua>pB9i1a+}nMp)$AAH0Nfv)k#U}eV|F)~odeq_*uNEvSon>qI# zO84SB8hT*#q0}~Zb5SSGS>~eD9-il4QY@BAnaZ|~J&ls)d`^lTcUFsbU{SofBw~_- z+;+GiDGNV(k-62QZ-DUS#MuH0J4)2QVKk-MWrwdIPIx^&8jZ9Kjyq2#A0eD?j^HDvP-dB%EYbNGWvVEJ>)#N|?noYtCB=8gYuO-nU~`#SdEWh=;2 zj_DohqBG|{ro5yDfV>c@Rq$Cp=#Ox@-kjBZV5^uF_gLebg^6NJ!c~D7~ zdR5)y*XafSfT^0xgWul17BIF~>|voisUAX(dk%@NimsblS=jCiVw#irNYtL*<-dASVJ&4ls3>xI9S)@{gclPIJG$g(ciE z&fD7{>gQ(Ofhiw7-6*P}5;>teOS41`y7Da5HRxygscAj+bJQDO1B7?*RtfUUyLENu z28oiB>eMsBa2ys z!8SBns!XYdP<_2a?QJ-OR7s}{Yp8i1|TbbTH}_9I4Wvv%j5es$>OPE2Z>mk z=}juM!oEE8pe!CnYrae@_3^7c43-f!tfMgZl6dEo+ZGptmw7GG!m9igVmMO4dxrP}rAw0(q z3&d7Thq_DLCEYUK9T85Qa|GKxSnz}joTDBfd%cMK$|+L&aa}6QeF3#aiND4)?zMQe z%>y_zIlI5_J5<9a{wj*1WSL4;y>nWKG0QS!Qn9rs@GucRc-J`!;0YKdjDv`EN1DPW z;>Si9+42QTphF05WjTqtXY-U61vCn?qdSp>otGYq(tWQU$dTVRMDFn+iJXJap}(I~ zasXR<=YG75hP4ga%j)dNX_qN5%Js5{4WIS*ed{IU!&9{7tP(I#up`9JWMg^O_qD#I zG2)Z-;St7l!ENUZWm9PwhbSJ(%-cKL5!dX&%bnD=7X~cj@NQ$+op|+PFes8)r3oH->cbB8VMo^G1;+5K z5yq6hyj{8TFPrdS;xk980Et$uBV6QZc*Hs?kX_`w7Z3sMqRXjBfi4WZ?Y%~UZewyM z{+0{ku9O6j*8yjw!DK*2Za2>~r6C^@xeA2$JG=gyS^tBd{whbAN3S36JuKaz+4F}C zwbZr?4{0;~WNJNFW7e^?*QD3$U(O|7_KO;1wUjKauF!Dq2 zmD#(2#u%_(K{*sa1=`iu+;|BeXdk>b-g%Gonoe8v5mHRvT1V;0;{2LWk&i*M8>}j) z%@;-V2$7rFtj$C7_FkqEUsD#68jSEol4=A3U=Lm}7kT|Tzd`A-JN+CLIn8r`MO{F?_n#%*2DV_I{t#X& z=MN}qCm~_^HCf^UL1%*`*Wc>K!sRcfUbw9UB!m7zi z<@0UCGUTLwl~M47h_S^|smm(#iAzDc?HQD$ZM`Vn77H$T8+TnARluJDSS1Ppzu$I* z@pnO)Ge0*%C9GzKcc@n<0$eDZhaa$Ts~FE{dlONwP-=z{{~AfQafI<$`27X)6Y>i! zRrs9b)x^6LBn3D~7XmK=Fiz5U)-hZLOIr^SxsNF)li6VFVG%R?OYnVESsf;juCf8^ z3=6WZJf{jTKL}2DUcwZ-900B5zA1(imY2>KoF#;Ub(9>D=U-hr!tfflXFpj&e0e;x zZg47c8J{Q6=1Xu?sPt-A=lN!e*6Z;qOKXCZIYSb+Wg(!WH=_zveJ3 z&B@}@%87mQP;xgejpiG)Zz0kvb4M6H7L!@T-?j~jRtFT|nrlWv!ivABlWmcEU`0G?t-52au+14cv^F`_^EIvln2(Oesz#5+VF{vj{ z1Q7<&&Ttd^=MsJ&&^spJ{fX zPYAc~6f;d_&Jn>mR|?&R1r=;v#IKp>|?l6RLt=6?cTTUip zd;1-Mt>J^CUcolp@GhkEpU7cl>IWCP2@5I-MhtHPCigP?s7VK`)4N$zNjrur_7itm zM$>?IF9yt+h8sDQdk4IhUVwI3CxB54xaTFGle%1O(NjGbvc1%!K&{AQ=TaUt2_Ci(UH;-fSWQ zzT@(II>y3$@wI;PcxS3ZFH?gK9>l{&X-YkK zK}snwJK301ewFwUnEi&f5A*o&?0cR=#(r?J_&&tBFR6{Jyo~SI4+1UZ`QmO_M4Dqy z@73qPcU}Iv345Kbng<0|u?K0-^b%W|fBDT3Mx$j`TbNwq7<#Nt&uPheq?We_T8Kcl z6b>iD8@97hKyP(B1~=KM|3h%r8O@8C>sa{@zs+KC=#0bxm&aap1AgL-4?l_A?yf;^ zNBLh~bnl_iTkK5;z%*pN0Vq(zZuaskeZPu2H&2-$E?px?{1RK_2hQ~-Wdi%g7TS7) z=e|l=I?1C+sm&ILMMvb6m35g#sJmniG0_ou&boB#qnyhp3~N44yUh|NyIJn7_(6Xt zq?AW&IF^QoM%Y*y`}@wY@z4=QgVrc{4SnDz{}lsYJL^kJoBj;@dc(6JFTG#zn?C@0 z=xHdvg1eW-M&)L5ma8XUZ6gf#Q7YoiaC3HLHF>^4${I*jp${7R4gPzwRO1MjN~1Ue z@LqzjIj0!y>^l?$_6a34d)+L9j=^y<2RRVn4fGIm4$k#gjNJLZWwGU($m+rKl9N5S zccva2Wz1=B8u)Zw?OZ)gj-Lt!?%QfiekZNFu$(x=eYk(^bgR%CQ zi2VP|_zHi!eRtSDK*`(MN<&XKxsiZ1v1)DUN*kwRoi6?JFGs#;UP4p13C;%z|Y>EZNOTFVqzzzz!^2}=avya!{8WR6;uNZr5#-5FvqZ-2*cP9f#RhukU>#iHHVkOLNUlPe24Zkr7>9$QD9;I zHDLg{GCLY%Th6c_JJwT3*h5lEd+(@iUPunwWf1bMQ0j|Z{)cmT*aotxr&n8P&;HdO zGZdfX)nqk!KXt5iDCdfK5F1ekWIt=HDrP!VsQF37J%lD>qN&hX@Xx$dyC*<9$Qnuu z+JR3dx!({K;VGGQ8oOV}2Yc`Zo_*KJ)#y(#LuD+zJz6F%h&Yfn039BP!gEZLEdN@t zy>-}2D&aV#pQ37vY||Y8V78A+beA;4vc?D7n>lQcR>6fLbv^NwB3`dS_-He{^EO>M zWR)21`H6w*?_rrQAiEKroJ^{%!jRn#wNxLxT<9?k*m`)Ssdn0W&I)FPr1u~5AmF0C z2FSnz7N;jmiLbetoed?y4$g5CfG5!;AllC?LZi4Or{?f*Ca3m0?pNVpOikJo>Uxs+ zI$VIU%fgV;!KSiJ>Yro|SKb#j3v@RT=?Cb~uV)I0UP2gar%`dkiR06$*8}5kr@a{@DuC747#jug(Aju}aa=cTb2`a<^_-{G1A4Zebv&K4jvW{R8>|V#TTzb`Zu; zfpv`^!U)Kq%ETpLTxt8=1^qY#>zUaA7@};JbilF4LO}p5G~~r$7&p8L zcodo@7MJXlmcKQ^fbfC1gz<@y`rNXPHM|O@`3=!o2rp3*PS`=|aI6T}m18CqGaS4? zZ$mZ~FAJGU+!GSqa66dt!rl-VJ-sgN!0_D5q`XERAP{h$zGzaUBaeYLH*ZvEIW<12!{DKOF3QD% z#P(<>bPxDcL%P~dG0+gY%W49@D(VFOp+Q>i(qkbFEj*fjqWQpFv{2tdl!!JN)*y1A z^&bmcie@f`hy==MK97JO-)IQ-ij0_t;841$QI10gT>lQ(kR0iB=`lMf^PZ4R+)#8{ zbUNCd|6r$4bk%g5m6vo-TArIG3%SD{JYfcA46s^*wup!M;H6+i@k?xCm3N1wQCFmD zwYlL&1SaN>>VYu$-CBu)2 zxG2%kg&%WiR6ynH&l&~0a>bQkc7{bZp>EcwHJVPL)QW_T+J2&AOBOBf#*Z``K) zs~~Z2r@BZznWH{MY;}%K>&$H&<^o@~#&Q1TX<#NoLyD(K{USKcx&B3JW_Wl3!UCaAT;HMb*LwMj}ct-3v)Zq*&auO$~7U`8y9tf?cW6k`zHDMX98-Y zlYjLhon{F}FBwc9$+w)E<_i zXNhbu|B*t@?aTQXKH0CExgB|b!n1>NX<1sroUk6N4@nydx)AxU{~$!*}$&Xy~G1q5YW!NZ<_}+@)O#K zYwCfiuN7R8$$(x@qESIT`1aK95IX+8Sw-7@%^s<_6&8G~O@_3N={H;xOJ*Xi)2U2n z6hj~g4dqOod8erf2(5IG$H6GyHVqTQY( z9T66YXt4D*zfq}^-s9|AGSK$fs2G5cP+c{2;q%De+aUjfs9=$sl&PSt62EWh4`uiRIYI zhhTTJL?|6a{hFoQEZ)+A&tG2#K8(~k)mGbQzX&}G=5*#W12RBFWFRMehE12Ec$KT4 z182VQ+1L00ikH4!}Bq z-eE!&%TIv)K?l_b)q1vG+uK3P$y@7(9R*76{E9|!)G=^^k(-`F;D@f)*CW5osTvY! zzkEs{cFrji`Txi@;*`)%@{l|}+mcUS0LCXox=m0O&UjA#GRJa8lnpu#{`*MN#yW*T z(I!9-k=r0NbD;o?3p&C$3gH+k;@V+q<0Q0-b>%Ra#LQ+*cy@%!`K+8)9c@y=oSSe(-c1MC-;8JPfq{I+Mk zh1g1b!TwALe*pY4K6ZuIRAD8_a~R z9J$Q98VDsK^Ju33b5WfaA(reHqSR43LS7pKaKr0enuR0H1UEz$nbBzKG@xh&O5ET8 zm>7fHx&aPqIkN=8|E3UQ@jQut?QOo5m_#O3A~)P z*7y7(267v#(sC-ND?tTxiLG&rCf9|$q2PeLPl-2vTRvzmGz!!{Q$ zS$-`9Dl~w2Icd{Dw37G18+qv$L|kx9P%y|e=7-Q>Ni*31#{nX(_k(751eID2umN!$qqPOGh^R`sjFOhxaOl{+nyozv4h#ZzAATXig*o-82J)+i z8V9HipU5GR=Lr}Fr5?}~-{8{IDDR?)uqbo3sZTf*jG)MMF@UB-!)8)nkCL}nc~7S{ zAnoia3VoxRRLowp~HuarSqPUxm)__AWq);38S*H=>3D z#Cv}6&lw~D-K&CxoNtMVlDdLktcC1z%iB)TvHV4jVp!6T34qHl|B-z?i92MHZSGLN z5k+Fn$GR?VDDb-M)R*nNWG&hOu|Z|VI*AFOzhAcR0lOdUIklP% zP=^XqjzK=pO;Tc)|+^H5ENapzN7CZR6(XF5IPCB$F5LO4RPX z7j1Gk2l#W)dctyym3$le3nfy?IZ+r+i zqQ}1qa0Ntf0_Wg7auf(CMq2(mFd+ru38Jeqz6id*RQ-X2AA!}Ch-qGc;qW5Lu6=9| z#?~aK!}|NI=%H*H9g07_2bVwUg-9R}_B3wD1eica@ujtc-C=YBNc^yBkobY2W)06p zZ#RM!OG+j*h(QBPt)jLVmmoLy_8F%)NoJBnL1uFu(E0nO7Nir`A>>-{SZFH#60BkX z9lD65y=SOE`eqqu5+#OAmnK<=G|Z7?k>W0O1*m02+@#=vUVsvK7=h7Ie~67-f+Lv8 zAXjuw2g8tEwL})C!cjULsV&dJN~8n1;1>1KVFj8c=-B%lWHtK=iL?Rda;NrZ&#H*n_Y6Owbynu5XG+66%2JCqOo#Ha%Wsf ziPCd)vME5!2=rL;1a7UeWHKzfrok^zH8%o+8|9xEE8=n2_cLm|hNpC?OEy7HpbBy$ z_EUYO%mQ$kRbjEf+}O1hmlOBVUzr0S?P1K|fXS!SM`aOM-)WFa^qD~#=-F#=4leNj z-lq3Q-qjUIM{mX1C4?~5uI(&ZMtnVeu${QBgg}J$=z#tLUV0V;Hz^hR(^B?Lds!1k z@{hxN1 z?|2tMWG1?s{V3YZ(PQWZ(yH}4FZQtm2a&e8GM);QblHlXk`VA1n=LS&3GOX;85y%k zqoB;EOS!)p>17UkYlTYZP?xvyg)@dtB#=dZ5y!xfbEo>QzDeE=%mfZsSB=QY2L

    LqnRRKC6t+3@v)qQ|FA_Zm~I2*q4tbgh)~DLy&o3t2%HFP}FI}=2_BJqNq%9 zxE(I_S#JdV0S@1S&l5PN^(*!DS?YiT_p?MGf(WHS6(o9Ae?1wA0sz(Bbm7 zV+T%y_U_ayaLtB>ZhpcXXQp*GnGa0 zq*IeYmX~ffB)oq<70$SaW!>&7nxV~+)F|Ra=E)S}?;cs@TeO!jQB()6-{YyLY zO^l@ujL6yinnQNOU?Ns{MeZ2KZE?wTcTNZ@{lRf2XaK^d;D?!8*NAX1Ggr`G-C6n% z(PTh9GzvhGTiSY{U&e{V!+y0vc*%Y?=x_1?^7`POPP7oGrx20LwtgT2|K9rnnD{L- zL3&3+4nEQp&Omg3Qxwq=e7%dmqzw<_m^k5}($jvg{=pf6S<6LT5fI$bR$L5$YPsK* zi9GB)%wNfQ;4;v8J?d+;a$pucr$L=40DrsB9ClEa0hLwv_u!e{6b`WlfoggQ#H%gF zE*dYO#44zncN7@+?O1xJixR{JMXGvEdZ)M2Y-l^>l@}3De3c8bL9;JJ418Raz+PbN z!CWxU!T}&4%RVqZDim?|-N7PkAYx@&_X=C&OD+Ic@Bn;f104%Y=cnCa>u9SRr6~f5 z3`if~5>cX*UQGnwpTp(6tpTdcGVWM7ZvIRk^ZB`m?Cq!XZGo8L+c7&c_%b zih>A@gLEFgX5te?ucDJ@_UTd`7NR$NTyhaHu>SxiV<0N?74%b;oRmYv0z-rx2>1i= z7(9Vb7K2KPomwSj3jt;o5;@?R$xJQ@&7{yBxQ}iSz5%!|1mPZ7I8Zm2G6=~mqYFxG zLwZ5%@jXPQutJcWfnbu>Re{hZ{0^Jghz)g0df?$8d^$p)eq!DojyjLOfo$Loc#-Fo z#o%1Tdn+{?;GRY@`8BImtfBw)E`U?p+KowM?^+f0m&RsOaUnQK-m36e~Q%qhlfH< zt#;ga%t^g0+(gIXk*u%!K^uA|zoL-|;rXJT$_VoF+(D4HC%`o|{PzEo8!9wi%nhC4 zVQGYN*C2nZ`Bh8!UyAoHE2FkJFKB22;(`B2nec%ToZ|{R(X|RNy%+gsoj=(Tf zdYK!G1J9s0GAjq0oi|l0ODBhBddu2FMY%HtC3mnTgm25vWiE#5!CT0OEA+E)tvumd zAj&yt-e~CmE)juJ7*cn+tZSIlB3ak-)epqcitGU@q!8@LR3ck`2Mdx3fUhHtMkOj` z)5H$dCRs2sqWZ7UK`p~^H$%+(H^F~8R4z4F7yA@}-Rb=&SbKmC?VS5_Ae6wn52}1? zRDfo$L8QM~3}!mBm&OKkEJ16;BTdMbGc=G$1$2@ACU~L1AIJpNjkE;dtd-%`e)$1g zg&Nwjw&V$oK#hM1 z(dPD3$kZk<^79-ioJyVnk%|18aH9ZcVU4m-6Y0o1OQQoCM5b;qf?fc&3S{9WxN}qo zD7;a0P-cxTa5DZ*O9ShXGIskqRHA*9X93zx2nYP-)aT0$Iu*a|#S z$^1p=O~!DPw#WbK`e)Fi-=TP9)(}fG0lm$M-PEg{$u0u!8gy`biB%y|P-)WAK$dp% zQ|AQ7#rOhRB&PwQ{kpPrf4H$gV22l<#9cl6G3G!JjPa%B`;KozY)JD29Pa(F?DI;2khp1&HRo3Zq7PyH_7@sYuh7>AL5(#BVDrR0 zfixdHy361(`{2dw$5}%Ph~liS0}-Y<(W0{~H)H@8dy_THu9orUfabSJ5dvQNtpoPe ztb2F-LOSqLkV7HKM)Ri@|t+#gte;dTcufkMhmH`)7BhvQEJNbrSrP*Xuqz4eM&-2 zJY;vp46(pC_SGD+)RCLi#-FE({wk;#uh;P-_SpQ|{JjiG8PLl^g@!;caiOV4i=K|M#W)jE(b-h89q)%C^3-AXA*%Zxkq<8YJXbAOIL)ME8A)C1LxfSZA9Gt^7oO z6Z~pD#)o)EF0I~Iy;YJ^t2Cf*mFy+%`I!h4y}P08AdLry%$PM)0h73xOm>VMY9y)0 z5Q?sCuIu4}CS}TuVH%zDA#57q!jms_dG4Hxk-N#;pWkl<4Ozm>owRucfqi$D+GwEp zgi|aaK6imDdwUaXjsY9z1=t0)@&JJ;aUQkdezXnsqB@Yr5J5KzsBEAD_DvmOtOc$O z9u1~{KUJL89#sGq8)iAVZ4SVa>ab%ZijolRSZ?AA?x5AX$y<$^40KE*92%wQWA~BE>?NcDSDL?HFBK>=yJqBGJ^5B4$2vU_J4Qmze z={gOXP|t`Bb|Z|xfP%3ULJPT#K-{dT%iHTJ^q?^?Ck@aHjR=T*Nq+TdcU^9XSj?NP zqsS02fp>H@pF!Wl&Nn`$2$kocCjnem{+~{N8{mO!`2HjjJpYiw>xR3U=rDHuNot zo;a7?--PW-s=9<+qjio(3UeaVM!l9O1XVW(03GMU?u@nkUW_Sm;#E(hBp!4KAlKZb zy@X!OzYG=Obj$p0)Qj@_f>|X|ys}nPf&?h#4sqLB4jV)Ye)1l7a2t<)0U~%gvT+IM z=?@wrcO7dd|Mul@F3Q>b)l~h$HJcuC|ZZ@!18TO(ezp*1f4TL6M8PUmRkc2bIP!hkco_VGUms7YF7gNADFiRfcD8 zj+6QUtx!3Qv%oL3HR|3DUh!J=h97o92^$Y?@nJuP8x|ccYJ&H7t9TM}xUq|{%yb#- zGE6{RlcfYk1lwWw{_*@ zx%FU`m1=o+E^L4)!Lx^Q1$TfOF~L3tEB*o5oVD-P0TdEcv!IgO3It-_1oll(B@Uu@ zLE5N;t^u0jAsC!(9JGuDxF7-aa@#~v``#qhkT+9So4s`a0o401qCZ`0%i;9F7Mci5 zw-J>^wzXyX@d(#&K`Qq+$PuNhGC4$U*aKRa5S1OVUt!mFhD~jq#_z3X-(5n?!h1;S z$|qMLcx6)Xh}nP1n0eB$4e2;T{$lt115@=>;<^#JInmTQrX2y1InY3bND?pxEPyFy zh!vfh&FbEWQV{^hrIq$5UE}0@45G-Z1Q>(Z22?(TC-wK)hV_6uKtA9{2M#X7m<`N; zZFnrRO8(e!aF#Ax9Nvk$a!g!s2%{km%oixZgL-rUbYq|dp@rPAI|6G#wxRt|-QEv% znI^Q1lYaiGjt&WEgzReKhgCEYF$*@zNmsel16-pQQ9Y}IS7ZMGJW#5vRB;J% ze9o|GFke~&+v{$!s8v8A5M>u&=P7>FPI|52XIh&)m@iQ$*O|{tvH--CF_QI~bbh*6 z#_PlvT(Efd{UC%bfe`>nZkns7evD)S8ALxV`JhCJmlhu+`1?#Cc$qt^Q#+I|TgBYE z8BC8Hd9bHJy1SD0+;ls`ze9hX-ga$a7g(sTHyO4srFZY02&e+`NLgB3&=RG!Xe-A( zCD=662{B>lIrQgCoW~RT^_|jvvxdRUWsQfJ&P21Y)eoW$TN##v+5;z*2M$W39cyj; zs~Sshxxna+0di$f!-4H#-xr7XHz|UYCCxLDZ$h*^suk_X@pl!hL1xGVAU~!;oae!K z=gu&}UGK;DdilM9;$6fsH=+1<_^ejoO_ ziPxgkXJ+UiaFEx6c0=A@&61W6}VDOfVlF(@y=-js2~TNh=Bd+{{crmw?u z2SMi|56r$OzfJ%g;v>p$$x>t{NdJO!-POxj`fD{k7pLkMfA*|*6V?Jz3D01HPRq4CJ^0n+(S;P#!Ap%YON?Gbq zHJr@BvxAwpF7>Tckd$G5C3;<`stzdzg|riOUdb$t6`W_FXQvWxfiUxA{@>%KHikkt zxwTjWFhygxStd)<+B)jkzxZXVkJyjsOa%F=z%d;YMC@VFoLq(k*4tNKJ^<*j() z$KCAqwb)S3-`(<%J_yQ6t04{nyAcZsp=bpE9d@X(;fpJr|G0bL4_bQ=BAz@!OAP9R z=>7gy#eNSDID@|F5{OLDfp8jGSpTztLH#j^Do{yq)qsO#&~qN!HaZ6n!`)_}5Xzhd zQrLe6+X`yJbfAPux1&`R0tVT4)!y7{dmr|R8`=tkK*0c>A!IuT!O*xXrn+w@rL_f< z^nW#AjYvduyDWZ&SR_!JmkN@n5SgIrfARI_QB9wDA2$wC8;dQefv1N5}HDii|^BxI;6ha&A0Z zRv0uaA9VECezKj9Y-bMsBihYy>T7n})_lYMN{T`u>bMyN&i~}P#cB0rTL|EwaImxF zG2DEs$BnT;i5SMy@hM|r5rgF!6r5d#?h!7}<>wQ?Cip+~j8xKk5Gu4m5_y*B71)=~P`h)$3fBgz6W<961-4aeiamgN2C(yKPrM{BS0<=8539v3DGfJ4vpS^ntNr zvHq27RpV`|L{)0ykQet@mg0szjaxU8RS<&fgK|(bxHm=SkZ$Nx0t87Qpcx;87$9oY01lu`qN+D+okXsX?Fl96 zT!a)PP(IM)!XuOxG&}X$Ozn`U=9>XmBeIpKxb5`npn2jvU|k4`wtDK-jU|9OK!cj5 z@REySwmTcIlBFkoG%S$=i=K2q?LA|AYXZz^Pn<5n7S4vZ>DNKMzir?=41z=CiNZmj zk0eSL)3_m|S;0_bT#{x9saw%+oPCCUu-VXgP4O(G1)C1J&~jZC|KcQv=R^yw|JpW} z+ZLi7O}ZbBp@H^z&VyW0=yQ~K%UCIGaPs&s!PNIN>%JK1zJaC*qgyIDA#feECZWGr zq6@-LY_#y|8T{F2GxX#9KY)InCr+F8w9il7*-qnthOF>rhq*{d{|;NZc2T!Q-*lR% zLz4BP_qWP?uh^$}cAnt-gg&ubn+?YYIWg^;@(V@CKc0WP^k|4ChS()p(^Wt7&Ibur zo$El20oH@onv~VWJ^!_>WaVKP;PXb$qstP8=fFm}qD0Q|>5aR9`c$D=#YSkVRQ0T| zDPlU+doDa(brmy=SSp!jR*DU4;ey#`TB~>~lX&f-TE;cy4C<|4q)w(VL}^o93&)qQ zr#D(x)p(f&5!}?Uv$G&f+cz|-ilZx{Wr7H9Zj|`5=W=n(JVPH?{NyIS*s@gC*)b+t zTVnVo_%9e1*!{fR4crVM9#E{qKtA|iW-@h#^a~eRt_a<~aCHi0cNDb!EOJ^srVJr4 ze-!CKVYOY5Rfe>9vE;{HY!dr;Dg4?gJtiNM)Z?aWH$-3%KNZZ_fu`$&rbw~s2K79i*7;j3YavE3?Ikjfz8 zNV6g*LA~2{F^iI(VbL)b5*aul8a#-TUpob^!YWSxKP61#jOMrw#0G?6x;W?~X|c&c zG}5u?%c992#LJxWXOO}Wj1Gc43RMcX48=%%-~uVj74xW@ME3S?9O`hM<(y~W{AIf( zw8fMG1%fREF92+fQe3^&?ho;gUuXpcqne?4_RWzFW@akt^G9V=&v7Q)esu_n6IX;C zC#8#^S+>Jsg^C86K_VKfU-J5N#suXq+zS!nP`A(>Y~)&^Xuv>54t<5M$@37gL+fro z)9@l!*vdDYa+>`m`oqvz-5=x1sR*JjBZpz_ip?m%YrW>N)u-h z%iVlfyG*d>CJG?8CQ=`!z%sCf{eT)_{q4153G@!UW{c`J{?QK-@8LNBVcHV`Py_5GY~DuU2^P+K_z(Y+ z?EC*qC>je%ywGEuQ3>IHTMv;c;3Yr`fa7eqvyS|cMn}*-5)%mK8yYo!!&1Tj1{8Df z*|K;!vv$oALe?K~B1p`D+`O_p#u4ed+qTYctiwlqn(JPbh;*C9a1j#rj0MuEQmtFS zeJ{22LRBzou(hV7*LnO`ojgTd*u@vn%V^M&Sle@+98iDm2eElVZPIJyb(6^n(vVV; z#@*%?BFVJ!onm_M0p~{^zm^??$72i3+gxeks8eOBL^kiaz8lj954LhH!PoSJ*p#1B z<-|KAVd{-38Daw@vHzRdEJuyWeNvFQNRyUAhy{*=md}NVj>o2uhQw?einYF_U?2R? zd+_#TGm@V%JMN3D2fM9b!Gc{9kfU~e;(-+<6WlsVh(8@q8CZZIe2!a%euZJ9QIn6+6|cWF4Mm;3zM|TQ>brsL61lh zr5ce{(rLsS>>W%}-vx?97F3)+DgP-|sztz!LLLf=gfpGH<~jd%xcR6|B3zH0t-oXl z*BQgZY2*k-3kR z2CC%EA&1*v=G994j|3Mqi|=$tKZ-7#`PkJGl%hJe z8Pm}&8{##em$V)E*wwcTLSeSL- zwViz(8TT_D<4?-x>A$UT-i1`zpoJ5nrO{!WK*4T8-NPs@dw*#^HEo6XVWc+wZn1T3 z49yqcDl%J55JjSSn~VAC;?lDtK&obF3Mvdl5eV|M#OJvN5TW$B`|vQ|eh^}eYqB<; zKJ?c>c@HnHW(Mc#c<)#dghZuvjm#?>WO)?I5bG-W-9UrrSeh;!R!Y)8Azh3PPn|iR zm{i`~iUo?5@5m);VQYlO`aytuvk0c(kPNqbJh?8iAJ`(>G&5Dh9Ra@V`QktF@?#5E#j+$BcDlHXf_{{hy@+dckx@l4P$3p2be>t31-dZ zY%iEPHDjJy^*dOu*tk#uh#E{^HmZuL!L~Wii1L0E_JwcTD6-1=l_I;hh z?UKcTZi2?gS5N1;YbIq_-F2MKoo(mBiRl6_b4a8{u^|*XgI9#aQo+mF8V++ry(trY z4AuVx#u*p9MnhcfAzWMJQ5sHvx)jL^$v`X+23?AlEWZm41Ef1{@VdCZ@OiM+(q8dG z+c?g^Y;jxcAT83{;;vF%1$2Nuyw!d}aDql@gA5dV;Dj{Vua;`wp=~m79#D0}*9hBh zb3D|SdnsNYF6yfUjmwNSOilT5dJJI$F)nW`DoH3&o)p}xAC5&jp-bD+Mg?H-4bq=8 zqx5ToF#p%aZ>O!OU08Q3H}DN7MU`=o0K=!-3(A#o`q@vsY)Ap!+`KpO0+&!bg}+=I z(jfrkr%ICM#1VRe$Rc!>B$QSk4je_PtbM)kmlVHIKaonDDr`@IC2)gZJ1$p?%YM?U z-*NNS8hvhsL69aCeEF@nzgKap`x8Mis7aL1(?nln9k15utGjC^P{or6or%*})wRRE zN|yLNPD3LZ4)jVHA_dL*YFI8WFYf#b5BA|DgTIC^|JPRQs5iK_Q{GD;4RE{YKcHF^gaDHiYlq{>I#v@w1f|FaaJVPQLT9crrOPqVP%lfF@VUa!cRUL>%;7B00mCxIR2SxJoCV5l0;M;Bq5ArcP%lB)T0?$AX{BK)pUw; zNo=b+xR1VEimeMB3;D8+HLAl!tG201}uIjfOJowu#d75NJ02yaA{t&3jd&OTLw(W)R!Yctri zf&*i5T-oD~(5(!=O#g*84FNS#!QT*kc(5v}{vji&az1BJ3*}#tA#M$A7v!9MW_nvY zL=v%K%edm+BOJT%S0u=6seTN)IRt8$s~I>mjJ)IEH?H$&yhq;`ZttL_w&-DG!q1NJGHj>%>pQfFIka0QvtMaPvzt(43Z~PzTa|&gTWkNobKpTRx^q z@}XJZ@D5+aOpWygGW1p-qMw9P1$?8MX+Fh(&7JSw}R6 zRayRA$#nJjIIwtJ?5K02w+NA-%L$GP&s9}1TDFp^JVV`COnn!$)sGw(Nmz6`Ocf|Q z7;{DsU`Pu6*rN|7Em3ZC3(*fM?^@$=JKoOZLzB`0k3disI$XjaK49wCnlyaRB8!(c zm=~dInJc*tBcup-PM8;v^;r*J9B4-r7F0MS^|zey7+$cz($N*n*$&^iX$B$C1Oq%7 z<^NGwGvC`ZnaX$n%uuAy0ewQ=Ve&fMaWzw(2)?lm`m z*edyF_nbGhMogvi5bQwz@X~t&C|DrgxuolJr0ko5z3FY|rYlRs*CygMtWaBza+=`q zM&KW8vz--UE`X86LW-577Xi)M2)cn1geN#>Ip-UYGAK01!G&Hmet?BjS8H9osJF${ z_`tfB*X_3F7(PqH_c|Ee4{f^UIdWQ4`1-0D&8lP3jgGFJdV?731jIiVZl_h{NEC=i z(2r{qbu~aOpx5wOVvv}L5n=o1q<{uphf|G1}qb{iNJaa*)QXAt$c2DXM*PcS%hHWqFNmj`b1B#Yw^1X8>$maGxo< zVez_ohVA0C5>0XxX-o<`PuMq@i(_z{xym+0@~<3jTRNK5ek=oYUXuQI*!9=PyMFQEC2p19Sp=T3Oy~ z!ug{_&g2k{!CQv!&9mafHGJdLGJi{D_;zMo-HbWX!i>_gvG<|J8z+Rn-&m5FjvNQ_ zzUdPIwR=p4ANLYh2UL=CbT#S^e(v>B?McEE?ep+;$W6hEsNW~Ju|T5p@Kuww>shxH z>0{wu$PfW}NRtSIgyDnR>uRCY(bx0+^Dr~zVb+Qr@_AA!DeWtSG+}&Mu$pgB_;F3T z2>YWiOP)D_y$It!=A!V7nKX5R-QlP-e@|)I1D@j?2j^b0QwC~-ukslfMB#ZirL7`Q z;;9X`zZlK3&4&jN@ct4(?v{OmG{Jtw@Opj#GmR zI5Td@>vJZ)dQsTWcv~38eXj#@#feCq>vM5RA4aGlb>)&yoXv~Or+=%#Fs~iAoPUPB z`7F&pGnc$yPC%hB0cCIs;)8ytep6}fxGVML-Ikpc%Ab__pfzG`hf{y-SwmigD>lN; z)F!=pLiGk*jlo+}TxFj|I4U0iX>=S~1V>9o9wzN~S4}jRV{pR3qYl9Y)q6;RpI*MF z7Z59MO(K1d)6uKvA-#C>|Lf4#@SW%_z;=MEK7u=Ft0ImxA+Ms{h%TJ7E*^i(-4@Cq zWdeu~y?)$xhXdS)Ys^(&Kd?!&a*Kj0fa(RF5N-q#aQ?(2xJY`nd`~;MhHL3bfpUA& zDIp?fMV+#ta`n3jCoY{bPWK>c+#quqts2o zDgmrcX(|cx&dwSJKFBSfgkj6o%TYxCqOQ?(l^VQb1 z=?Ki{ew#*3W81pn6wOAVeEA@&H|e4t&i}|6KgJ>6 zRDK~?T39g^zt}&EC));Abz-h1Klm6Wn!~oEjasPxH zS|M(>g!mim2cj;O$-jWZQwJ*pBin@yK#~cWx2#tX4E49pU`J`*Mg#LY_?X`&Hy|i+ z5|di8LYr|F?9g)#mCC4|95vz=e)*ANEuGSD$ku(Np=Q%H&HAL`u z$w50nDa4B_NoWis5{h_e#v=-mcf?PSg~e3A51=Dk5k|SfF`QcRJ1|4nm=+0b7=;HV z8#m^E15=brx{ppVz;f*fbJO3)!%hl*VAEec4ZGRN(u{;LLF!p87UpHEDnxmqg6i4i zyTCD5&E+7}vUUuwZUaq<9qUs647!BGOTh8dGYB$tBNEVb8a}MlW88*J{cm&`stXVQ zLXv{3V+SxCxcqBE#jQ-7ADA|nb@_KKRnH24hnF%!E})@9|4O}jIv@vjrft+kp$>l3 zDnqVp<*0o3Zanu>4Eu6~f;m zh?pLsE`<+PeZIpA%f&BsO0z_W5j3i(7jZWH88p#z`~^;RM9Ip9xJU}n=&Z*8Y9Oi* ze0^p?MfYz{+r^8l$_FEp9e_cY=3bO)Nv;Fn>85EI!vJipHLZL{OHu(#1vzd+3Z(TQ zTh_e017m{yb3>{C7i6BX&`Z3BA4G%lxUvbrpaOfmip!yvM8lBmt#}!++h_NSgYZiv z$!BNEMC#0BeTp)~wm<8x`+V^3!&B@_v0=mvbE7YeoEQdtQjqZU@ArhoM<=6NC%Nf#SvjE zGDl?G2p7SbrH-MN#DKa$qf@oqrXpEs6U`Tc$7s*yY&QXI^i5$8XYJ$HXza*e| zjlR3R=csJ$M6i$`%^+twsse2cdoW0bgHcd`c+ecAr&$BB+O+0Wq>S)NJ?N{t~O^|cutt`LfeNV*(^V+S}$^R5b zl@BZy-e6_p;NQH5nN%?!PDUp&2s*8k+46#S8QSMNR6rJ=(=ID6J#n@Tmrxvu)pI-B z7^l8lr}{*1xISMX@DZ-|DUN5}|iScagGP5eK0uaYodE)Bj{1bD%#kA-6 z@pIwtHqd*nTwwEtYKSkb z9v5ir?>%lv^wM9JK(o3m_$Yk!>Yfksx=)3F8qu~U;nerSOO3KV-SAg-ocSS<#;Ghr zqw1Nh@FI@Cjp?Z%;@YW|LeoanFb6ENVTIH*R^cBn;1b&-|G$3*fidGuUE+nVTf$JS zg3F>vL{Btg7Zd;Dn8(!Gm?mo6r1v~a3+(gt?fCgH6C*I1>vZp(_xsfNmrh5~=1)c) z0X8aEbZ@3*uOeeJ5K&NO@;&vHwhs|8USDbiv;k2mTlo(;C{`qm3>>|VUS$RiHU0CG zFP9VC!c(80k5l+Ai8t;73wf~1L@fNSP}~kd+a)1KAT1GQD8r}%CQ~c2kZ%cb@BZJW z#MaQ!ft@0LPbVVt-%ip^$~%+0q$rh!0L-SZ7g2h zGr4~S3Tdvfg#?HNukFlCHf&vP3gH<}yX=MH(=jpN3vl|LMhEUsVD@`@t9ZzT{!fs@ zewqj8-QeR9#lZM4F|>{QH8==ao@4qOPXz8U}G|d+WZE8+sAMy{-_GRcc1)z z6v@XPQ`6#iAfWp714~K9uC{LX?R2$Gv+D<^W1xJ3%QC^Vat=@y!t3E%kot4zjcwLt z3_o)6Jgk;biduPm9ps8YiA<#C=wE<9BqF`p+>`JXhnb^Lu5k$LR*ls}n_zvtM{t1(DqbGnT_63GGM0Z|ieX z2prpWI&XmxwF>kjkdHy&6W_xXnZ7$JGgW|&tLKDbyWsnHU(GjEhVa0PQeqA_8#f?4 zYJ(u~5VzSng$?#j_-9Ev2v`l%xobih9rkxvn zP7{OR9$I~le?1P*<*rR)n`J|CQmQx>{#g*Sf)sjCoD|=ggTDXDZz4g6I7ZD~z)3pz$pB>EqRy5*`vDf{+K<_!WTiE-+2_PVyMnj!Qd<|Y1?mLVK2qR8${4!F zx+Ny7V|algUAtl;rlJL8rrMHZB;}$YvmrI0Mhx^Z&`M9J>LTzi zaDr>s>uv@HB$@MSQEAMH)gKVn{y5X7#x3h($WpdKhU43Nt`-C^LkNCptGWnDj6iwU zgwmr^sF#-G;UbEHw1ur0xE>AO4FN(+0i}dm0{sgdDtri3l?Li~1smef=kN?3aDIt)BE#Ql-w>xdK^mR7CGGXN1|Dg(ncM#iI*rS+(YPV1EEC1;f@B8`JSPLe zj^k*CIOKxs+iAUk%EGn2+Ovhh4=+eOIMCsj3h)}|qp2E2oh<00)Xzwy4u)|9LkWxL zsfDZ;e2!R22fAcnJ?JSIGSo@IPLxjDrESCzw(J3%6|RZ08|_o!NC#Dj)($GKML^qW z(-m^WPOSJfKy&RcE1~#Lj6N8khhXf;(}McIaVk)N|1b(KNQ5!9U?Gi0ELobH zG_5~;^=$llpsF<3RG%EbjLc_8OCf&~*Rp3ZXZ=1_?YN$rmrO}d$U*+9;T`*`wIt)) zNBsg;?8g_wYF>w~6~+Blpt? zS7cx)z-{^QZA%z)xm^l5WUb{%!7Wy->UmIWQiX!0<91u0UBQTGTL-71`e4u5+2tg$ zq4O*k>eNQHESBzjQ=%wxSsSsHzuVzX22~1&lfq+Lrh|#Um z`VL2J0XR{6tR(*=TYihAMkP?4w{R{k_FtzL&f@&CSPd6wuOhWoq{LSv&Li_q6@H9w zIqtOKl{Cg>SRK(PIpI`V_rlZpXjF=c)}^JFUFbBXssqB z%TH<$VzV(ZTZuG#hehj7-eIOT=|Hto0cI(-6;taxb^efUx5P~3ic0vS9CxS>Z5lK~sm!&2+n@5%4PGCb^LMrjOjtn_ zY^f%7NB8UN2@9#rpjUnZ266f$yrQeAtiRf1?+uG;W#Q|yp&NJ|_KGQw2-G0^<~-K0 z>XoS+^~W7Hbq;TMqy3A|Z&3xOsqZ==KZY3NIuhO3rzH9lOU5z!>@<__iP9 zem?(QlF4Lw?xHO<0vAU91SH_J#C-CP{~6T4Bu~n=9x5w0vnZ(3sVqOA6?b6+3$T|e ze2eF3jsEXQ#I#a-WCUT`rp(q{!b@`w9*cST-I$`yLktgMB-x z{x_;y$}gb%VBxqOdIRVw2wC7Ttivh@9+W4EKkhtgVFM(m?m249+TVhhs+Kwg${TDgTM0^qM=e} zHiP@PK5$Xgx_<|~YHJMn=1UA+Sy9?z6Nazup5HIRJ%R{_2bKt>rMImMzCaR0bCfz# z6qy4;hkm?G-^3sezKVh34Oo#Y#Jz_g_KcBQJrAFdZ>%V62d;%~UJ4~gDK&E&qAyY9 z4_~A=VWb-HxSuCZHv$@u-7$bG0XUV7{T-QG$4Yaa8F5SKcHF?_ao7koy^HGv@gw6B z+FFL|R z4FE~vT$3Otsci1i#tD9#<999z&+UOPLwo8~fJsFXsREleQdGz1Mje0pv@t6a(9ntL zMNL7sGKt&Dj6>F7-a@f&8K?G1`A@UtRIeWQ^18mfxtG8E43fI{Esl;NC-8zCy9mlIy;bZz;*)t^6ih5TgEE zyE18X02zLD$IvGz zKAI=E@^vZ1ahj2`LU^|W#J7STN#^z+>tQ`r2K7PHk$fOQZm8dLRso}^by2T(!ClKQ z2r?3t0c_D)!f)Igo>rD`9vE;2mJQx=wI^u)w)qLvBtdh=E~o;U8m2t+tpo3OkY);t zHh*Q(1i=Vyl*QdF+j3KS3^md1NNEgXJ6qW{1=7b4W6)g*FNl}&1|4)K6dbi1j)#{m?^lSa z6);q5M-O#400KWgUzU0+T7hsyntC2BbL>Ty{gpY;9t7`(ZxVcYNQUeNgpRlH%RDhh zsLcq44iAL&ikXe7*CgUw-+WK4L(wAIoz)-JZDEGe#U+M$-Dls1fN(BWp44HTJ{jnz zO-xk%@QuPD#_C_g)(8ldM-#j^ zA;pd`DEFVAR z60d+0(aL@2&P?mySzWQ;E}MG{xN8rV0SSmCgKur_DF{KCu@Oj{^-rL7W0dZ?bd&?0 zC1Bf3*7u-Ti`Ms%-BP3Gd9bQ#T7oL16zFj*za>@BP`Vka4cZ_druwwW_ujVt zebPTrBFA(@H+%(prTbb{9)(>1_4d zCuRh=-;e&UaD$$*6ECHg=mR*E3P)jN@%wlVo7s zvr=%=H{^=O>Ar(mW5tdNLd!zZbv4iHp!p~uw(V@l5}d$ zp4w`beTs=cg*uOCN?WaQ;5|j{twUHy~8|-7PgIF&XV}WE7Q$m(wlAvoYFio$+ zE{Hl8mAQ3N`i6j!@)4w{A~hLYY>-xezINAl+_31f_Pd!mIQcERcV?I1zf>LrsvmONrekTQLuXl zH#Jo7yTg8yG16|m69!bp0#ADovWPK$$ z0JTQ`#!s_AEmCN~!%`jN%_k8+wg@_5+)uAd-NyTTBs$Jp7bqangmB-F2d@I3uVK7( zmC?=bQQ-cK7L3mxHW2{RZ!bKRtw08j40OJyGLUDlQ zN~Dk5KYI@8zGTBDd>INa8`Jd_&L0s0g=24Xa`@6jona!ilmt!g`})FD>F*Q$bKIYN zAiOcpwIJpR&^Tvfw0y*8r4`s&NeQTF5FxUJ5z4T$Rm^UwM-FOa2YM&qPXLq*;p4AU zozA`QK$dy#i6`?l8eH;&qtDh804V~bh+&dZI`V@?e&3KFQOR#C`!w@WZN(;t!)3)?b zhvjGBeGUhT@UD?!TB?Seoi?X=IKf^NqTW|t+ZA0ZzVmXnVgaROO2!^7=wW2G+5a7z z9y%XSRSL)`G)&}xNIi$ho&BO-|Hg>mVi;#W2H60fOj(QYu0r13bNvIMfXBZPxC~*K z)fU3t6pH7SfwQGdgbXCQ=!+8rBv_gJ9aX%7>nckfhea^7XHjW52a(f@*&xeQLW#hF zkV;Qgxh}4@RkUTdat~w*?BwEh5j&e=3yz_uf?yQ#9ZddpCgz)5cM^Br1h_iGY{~08 zy*2W<5z4towmF{8L9G{+8>IGy%nrwCd(H{X=v?d#K{x1S!DVHte@^cqlzYES$F#92 z9^E>~qc+1hT(OcpD+unYIA*BBPoe9g#EzyY@N+I*2>*1gG5R3^#mu5BW^pdXwy-_U zj^0DuMAn(JZQTQ&Wq&uMvLmd|vfA!iGIr3HWuhOMiPZS7*tEavzTg-D)-0+KImY9) z#)!74%;ks7s#yD&W3Cd_8VR>17F!|1>gl*26sb#y1}S{xQk;JH`sUseh{eH326r_! zn@`P%O}&*HFk!Dma~il1`KE|&OeF=~M}+hg-{x96!OCC_ylt7eJgyqT3IB&5Ii(ch z6J6`7bYUP}s%8i`dFkTX`My=hFyi1Z(F`!mupdSgi9`Iwd;sKc^En>uFjR`^>0 zS%@~t-hc)2iWn;{&T%>SB=sO?^t;}FMl7b(BMY|fx}8zy8&zvEMA~H`ac2&mPPcCt zESzalMR_d3UpgMUO<3e*|IuiTlysNZe}^n7%WHjG4!P`Dzv!_%r_C(qwuT--r?t3h*jEr%vyAg=uRTFSh!xz8s(RqM z1UKGmN09R(BQsbkLT>$6Y*2zW6!7%AD)yDb0>KPn_uhzFr^)(fF$hnk*sAE;+86~4 z&KhqX*QI}fv8kpRa`{EjCAJjhQH%8tfY9_9g;WwcE~L;i zIojqJ(1QKEajQEm_^##O3?QoqMv&r|-eSAm+1fDtRl5j8Di_%T0spw(;9f<-rS1iY zD+Eh(h!znk!SsdfEJBha5gH_GAZ-w~6m$k6L0G+AW1aHCyCaGOp0FN%hc!OZE#7`a z(2U>>9#lm%F4<7+Ngw1tU-|N0c%KrlO#(Q3cxxkq6=OwGEm{{Lzu)+J4QMFt8cR%0Sp3%Cb6ruXNK=CZX2 z$+Ypb$;+*a**p(Cj|$hHL2q1ui-0Tq?ZYmbniU~(U^`Z^YoXfUUc%iDKPuYn7aSa~wAdGo7gViJ<-`)yDr`LAWq&x9VpsI_sY}!R1F-2jS5lgD7d#$yYacmc?pA zS`JPb{Nu3e{B%_@ffxp1`(&Wpl^CWiJ^88>Ar+=1#9U=Hd=|=W*-z)qHmRDhIB2Hj zOT~(b(b_1#MfkfiS8Etos@s>KItCynKIEWi{eHUY30AGL$$*kBvSTUP6Z&vGuIFDA zv`3X;u}DF%35Ave)9X^qkl}xe{3Ad;0NL%pU!!G%;07;pX9^8lLLv4xja+aIulc0_ zU2-!LG#v08F_g{1Z)YTZun-BuL1Dp~6wTGP-6pIYNkD=Er0grPNLqAYeO7I@ZE>{L z?5OO+5wd1@ck2C#U+136U5zy-i0Y;45x1-h{j7#!oBWQ zoH-t)4|t3sR6?*lJWQw5oRfD49&x?9l_?qm%+}$(09+>pCaH?fV`L&_YrZ{_%ZRI) z082)H(AwRJuXXWG{ds0)8`hduVzDS8PLUJ;w_^z!awF%XY1l!)n)YwR~qn6eu3ijZ>a5vzS3tm0Ssi1<9_~^p28sT|NBLUDh z2mh0AN!>w*lg&}f%g>Cxy!fcaj&xjg)x?Sf)c z#}CZSb6tnRKiYV(_sWFl1^3?MSHH-$7WH?3!zx=H(Ir;gEj=AaSX4s_!|dNOmI-?YJ*%F(iw`kk|5oM}JRZ^z1VAK?dnc3}=aC>)jg7{qbG6M$?ULPg9rU z32y9w`J-%>$Z zX`PPlbez+En+BKOXD3P8Lek?UvIDs%Sz=)kl^bk}(UIKbxp8C)S3?@05^T4L}y=on!;J# z0Bwfs>Sk{Hk#l`y;H#znX26eHf?cB{8kLCp&@1@e=2m%VG6OdJ8^~9AyhW;+y&%;(Lmjye`!IEsD zZoQ9mgj8XmF;6^)R|Suyvo6l67#7tWS*O0=sk-_t+`lIRAql!LML}46wqoKOlAkUB z9!&KO>ZVz$ef6Hkl9Zq@1SgE0ew1c;Da|W)jU4mM-cI|a>w@+T#n$D>`mrTL z3vVkFJ9R53M)tO2oMMT|h~hera&H(Sq((Q(wPXr)sXp_wvBZv&gr|-YHcgh}qGJrU zCYE*r9wR~MWkqsyA6aQCtjII1w20jgAq8S1OTnnJoU+f7hM8KBjIL)Z#}g!m3@?N8 z=)Nq3lLQI+`vm(;%e5USlXPN}M7`r=5yK3du84Z;BVI>fX0Lo5UoHH7ygiJWlJ-P! zXeJ^#ap!Om+V|}+kz!W&7L9KNBI6ihy4l)L0h+D#y`wpBn(j{^nGRz`>`POsB zr2Lm6BXsT`PVl^BaWFHT2?X}N)K?u!aX+dAO&_UZO5j&M_Q=~k*TRV}x+?|;jC%k)7 zMv@nU_SyK#3#9cIJQ9RrZxc+&KA&ydw<%bza4(h=t2da*>ctkS1+Qwi786e1@v?$R z*dm5#^b%?nz?=*O*;z-Sj_es0Ipp%>gmS}49C>)qUFQl5(OY2)Zz5L=Tn4)*8lBz~ zotBc!F(w*+9*(E;gbxUa%evbFHZx{(s-hn%pHg&V(a4w*nCe4)W}QaeyC)XZ?#zis z{Q-1lY17B7fqauPgtC1Yf=6wA=Ei>t8g?+9=+rk*lMlBChftt z=}C&zF-ClYUwRfErn29szVvih_fliEcugAxO)#*R-;w?zs~I@bQFUMNg-kdN(UZN} zntkIMPyLSdo&A_mmo%p{xUp*|V~C3T;oSu5boLL@bGn+=6j%+TqU!0BDOIdz=)Fa# zV}u>y#^w(}yU5ynfR{9%({Se%dBH5#Lh0n+FC_>*ukmUt}8JDh(%< z(8l4-y?bK1e`?vrmIJVPQGY2`PcJg5-U^{H9e?`}}vH)p~*YWI&3s32U+tTgc8Jl*G)7Vpg1Vk-C#HrTL%06A~ z>O>&6Tsb8Cg&NR-{%8+&DG(;{V%)|>9R`P>f?9^uN4}{8sH`6t+)rO^_vNY~xuiQQ z&6%I(XN%GUAd_vxBG8XGPN2n4`nS0=bFkv;`t>)Btmc(5-MjG?%N&alfe0x)!(bEJ~EW;$I5xM$OU+*|rYL$5aLOh_|!KHbJ#V zCH16D)69A}dKnVJ3t%hh8R>s7TjR;8w7rX$ojn9O1dRmOpL@Ikuc#n6t_GNvQ2|e5 zh!%N7kQOFXy2`e|KOO9Pn(xRs9CP2#)qnYi@Wwk0)WPUte6H|BkfK+|-1lt*CH+a* z1>mJUmhD7QC%b44CI=jN5=__ZoZ+b+)#th}UGpVw=%~|zg%mhp*Y}h7YOivHUDY(x z7$F-u@$Ahy5XZ0;w7P<>uM4qvG19adcpYaIDw2RjScP*lF&pX4!YDs>iXkCkT%U8^ zrV{%W?ZE7%(_MU*aJA}0HE6M-+IkFbMG==;h`@U!_?l==xWWuJJ`IVe*XfQLgy}B0 z+8`|fP5pW^A(VXZ)Q2L05Rd+PKV>gu)XlQNEePTwJi<+f&?=k^qe^rSc+&f$Ag>1c zAt;_Kzc`jn_8pkD@nJuWhJ%C6*x~D02ESA>LOeLILh=nRJ(jI;XG^6GWG#40h{iPJ zYfa*ALT_ZWK|gwA>6d}NYh657}uGF zqrU6@dBJSkn{+$ry>?M1oV2UT5>!WCe?yAh4E1i4x|Cq2lMs^d3i45K0LbYQeFA}! z+hx#t0qW2psH(^RbvC%CXKc3x+d~}#U@T+aNKhAJ^%*HzIbM=jQyN5665i|Jib$DH2V%(&f@ zHNHa3buZ(9uHW1E*cFW|)JX4S?sG5;Q0(-?X@aQlLQp5o=!Ai`8X>`K6cc}|#Amov zwl>7?!J9t|g9%N|SoFkGAHER;Oyddz5)d;8p9Lh$m!Xf@#hl+J<8NW&fhncLiZMLD zJ>{yPslwkYB}^FG> zU~AA6XWFn2?ZRJ#zg0tuF$g(%^)N&`%%bj>b~2=jRe z28Sgb>h1GX%(R-cnZbeRN9&9Q?Fg8;KV-il zpF)*FoIp!NscAZc-7frzR0Ybcn$Z|q0EtH-82%%eOotK_XnF8S{Rv^-+uYuAanwxP zhxw~b2Ad5aP0k$n4j#x5tfR0&gSg%@v_r6&G6f4%AmeN1(RWR##a1%NLKPkmo_P$u zZlJ?1ai};Hk|$*CxHdBt{(;DZd5_9^4E0C2flL}GVyEr&R&xRL%q@s8EBE(PRwQ0y zrV7so-^Jkr1UI1p$oN0LX&WWC`Ex+U?21jF7@qekfW2z#r1ULOapfa@EN zAOe^khO>?Dx=yG*i6l^q{)y<9_@={7Iu-tp$F2{Ul^*rq4evD)yhPX4o%;3k9uw;} zl^KhBSGPg9X+OQ^n|scGiq=($4IkygEsqrA2`jNJq=zJp=B|H>bLrl2 zfTNB(tzsEkK7HTw$4lMEIlqW)*G@IFYX4!jb57(@V#kyxU1{xz929y2U43OFfF23T-EDsnLgnmBq_+Y&IZzb z1eXEi8?tm7VL<%lp2Ra)-toUe#f9jsZKJ;DLN2&wuLTnO>ml?_(?hfn^Ya=YKR`0~ zBb#BaVnI4!7XFCy)@K}#iDho|^kRhCFqmBSwWdwQQlg&N`@Xz)IoLk|-5)nnt`q&n zchi0OiB^Sn{3n8M+YAXB07uSPZJGu!&F(=Q5xG!n@%u0befP5Tmq4$QuQX|*>&)N-P-L4@kh9)Q9C4QhnBMs0At7^?wHO z{|tJ_?frMRo0Vpn_zKS z!m&b7hD9}r^yN`vH$G}ZwWnfo5rP{to*n)R&xdFm=U9XaLLoYXuX+r#Ewgz1^Fzo| z9(LWk2<8DK&;EBQD{2_x%#X^sBW&mA>9YhAMe(M^a}$3MWcg0@)sJ-*iOq-Pk;? z8!!zcTDmB;h+5MyOwD~`6ZZm&j-yMAn5X7O4s^8H6U(u+e5%jctbBeAeK6L>^Zf;@ zK3um@37OQQoHBj~g)#atpRVqn>wCppJ#<(T(xpc5HI|PVXNRn8=zA^XiIt zDX2j?ACt9)w@HKe)e7T$-&R>Ne1AL?)3zpHPU#L@lyB3F14d?1;e+vP2G%=7;-Zjt; zU8JWkh_WEms@jJ9SX8;^Ys z!?QDn(@C^RGR+Dhmb)$yPo$+Cq}77%XBanEb@d`S5bbYTsg^xh272T=P0$`v;p|10 zBGNC?a(R9*V>V8|mDcFKLB|2ktyP@gmF^Ei z6ROsL84jEpP){!2w<)Z$&k{SlVCsGNatgQ^#YkDipQNkk?_%A*&4_ZSX3V1xClvQo z3C=cRI5Rmenbp90l)^Kq>o*w?^JHDXq3JJGry*y77QwK{la2y-OivW2nu}cIWt0d5 z7k!95rf6Xu^+Q=ej+2eHFgyo~DfMc|kPgcL+V>UQ!}83zk@#)%nJFs})sf`7FNatT zwLnv7LHD#W?kM^dq@`?l-7+k*_^wM2v$XjafQmrcW2Au z#D=_S61Yh^PsI%Tyi+Bbz0>;xbkFZ)&%lg$iu_Uu@)y}gm2~HdO!BzMu-bI{(kGZW zsRJSQcLv%+H2dU$PAN+-VrNS2WF&7;Ai+HrJp={l7|}A%4{O16OVfhoRm&y%_{`HdE}@c*IeO~9Hw^X`8XEmfyb z>(<2tr*?|VSi899H9>1F)~Q5gl_f~Ab!VwOib+GH)S|W}I%>667DbJ02`&%_hM=fX zyPyq8s4)o|6_dvhP#%H_$^6ev=l#Fe@4Du?W^pPBf#?3-=X=iQ=>JD}4feNr&+KPg zs%AXz`vrc=oZ_0fUMueoD`$Y4nsrs(-)jx78SVPGjJ4z2O>JA9GFI3T!xsn>fwlb3(kGQ3@QeN5Aq|=1~O} z)uyUo{0=I*s%iZvPLzT4E?E+?d^Cg*tH-;gpd^9ynOk0I2qV92e`-Hf2QTmx-rd^u z{h`_Ria3N$bpEq_))>e18P&KOqSllJJ3)s;!Stb%7cN+_{@@P8X4mlkOh16vF?Zk% zkuhO`@QU@M*LXPQnPVz(L(7jorSruYx=d&BUz0-A>`Ft>05rcCM^TofUz+PED~NAuV)T*1E7uI}6+E!l#nuYjADdI{am zNmOjV5EmZ%>VzX;p3@ zUbEq9QvuWo+y>z-q|W_6!%36!k-<%^Si;9@VrDucXdH~j8dr3QBN&p-;u;LJS zGloOSTs<$);xT+e?|xm;ij)L)Gu+2iq`J!t(uA`aL5g;p`Rm{dTLG4W)ngV}`>c6S z|A``Lp&H>`*fvDWbUnx22w?7@9|KfV`Y%ux>?tB3I5bp6p*q!%m_ft60Z*UsQP4y% zC1r<%cMxePN3M1E93`GTG&0oCvbyOiHr)H+i*&FXC%|!FyQUm<#?1|Rfik+Yj#yJf@QedIwP@LO~}E_ z$lchWNUHAgBvvr(Y~LvrlKaS`fu)o_7L8}6KE8SvPmJb{ZMZ#M5viwS0mlG8%>v|m zkR<^y`o;rq4SQWh4;|Ks4NV}-4UY#@a4ZZ87nnS*pRlwAV=;!I6C9R@_XOw8Ko@cv zkz964wgqB(z@=M6SXdZn44y~h2M(kQp zfaBvUZvRwA^UkTpcgswgcj~Z6tKxPYY>j;lXfOANLcDQhqn#~I0cNR!S`&g-;-E4) z*KvKm=Wj7z_AshELyRDY?JlgEM;%&)fbsU*0%bFEWC|YFJa<{A!E^nD8>jFV1X=o= z=y{>vKh<>6+wCx~MIIhio94AKn#Nt_Xr-+>4sCq2^X3qJ#mWgB zZOdaBNM*a1CN<-pf>xpx4)Ztl#(~gtep(2wS?C}!U+An1X0071=~t)^ z5o#Jo_CSKI^HuJ1GA@k9__!1%$`D?Qd8#TGk5uVIeOK!qb$ z|6>(DQ2}46_x6h6oIBq$e;)(>uurKTBe)1P1$fwRbYT@#(HM+9*2Zy8hn|;=v1hJE zHT)SZ{zB&yKY2h^3yMCE8RU^7vG+V!jn|3mT%Z3A&^rszmBLp)=!OaO$O;MD4kH2w zvF1d}YOxPWgDf3h|V;rGbkA* zv&>sd5$b`>pg~twkhEFsQO}d1At)EfcrK7Lm#ye<-r-K>{tr&d0kEkrzO)7=;rhvU#bumznbbRL|LPg}? zm@Czq1(K^UR+6+TauQhyRAvO=0u8cAMz3xgIU2w`eq(k=di|jeGAjk#=Kx5~a~2PwQ>%b<92j-9rYWh?AB{)=6ha9#S3KXM# z5p~yPYy~JAGGq)0Xw+@E!~!cop`p_2ON1cx{S&f--EPn(ar>EE72-XDTEqJ<4kVgK z79T@jh8V@39}BNtM)Km9sFen7e0;8087aRjv}I7!LZT5Jab_q6B2+7am2F?*0kJ{w zGd*UMX#E2;3SDX02PyaGg2eQ)xtbN-+;`O=Q+&$lu^A?$AZ#w^jVM{(J=QT@Dr4JQ z6v6d10DaoKP8ZE>`#7{@bB%U6`z$1`MK;|QZPnjObUt^dd0C!*`d;?gd9@maYH3r^ zhKnlv3L&9V8Wdc?`QBz;raPS?jh7mM053j@qdcN+sSNZBsmx$a$>!puekZ)yYmDJ8 z`CO@HA6>9v5a_`bRSk;=c_WgbxpH{Dm&;(vBqIu#;!Z=yiiu39X>-|0b?O>^C_LszGHbmxrKtV_O#cd;*#ZL*X zS^+;qI!@*%Q^ObG-un`?i13lz24g+r(&r)+F2XL;8r&dKk8r578hCgAP~&vXr5EAN zne||e65r$y0S->MPv;udoBlato1DROn{Y6c@-47ZMlnT&fN2jAF zsf^eID;kG!g%_awTYel&q`DTfaj{1t^=g4$#eULbO^U%I_#aBfbHvn zUeXdZ<^hN7DMX|6$o+Y1L*nRvSGQ`$rK<__Argh1P3sU=1(&>HOsDZZU(j54Cg)c5 zM$8t(&w*F*D2Qx3f|9h#0OTmp141@wKhfsTqx&97-%%z|2gO_yK9MQoA9yv1Vb`gf zcQgiw5y!PC;p%+me0D6jnq)>qLklXOM`8JM>D5m1T@YEmWo=#uY5oBzl~ki{#eWti!!+!$SAQ7^W0UUe_PD@x>^hSst77K)^G(@6YkV;>sBu+2KIe}#1FQVBmX#A4d2*PNpzZ3@ zs!_kDbT1!EFDZb@B*X5y%jxE>3+xV3m6XKYGsGFBy zK+8}3!-5xNRmbP~i~AOyCjOxEt*Nb=6^I|VR2_fuulWb0jbTV-t8Lgn2_w|eOevpK z5frFj?|nQ27jlEUtC-ySeHp+!RxCiv1*0)}-LWrRyQyywGO^WW6 zMf{Drq6l>f)lZC-<=UiKdHsF1srF{!{fN4~fx2c;@BR>4IQKT?N=$@mk5Qo77z8(QtVc+=MrP~TpA>cD-Z-)F0hZWa`OF3okz^Qb==Y6 zVVqdqI6p2{22zZ8rTmQ;WTmev#mg^21ciRMWc6LV)sD3A-s?i*dm+s@<{W~;5`i`U& zog4iM%?4KTCklwRU@L$qIF7|p=ZJvJlH*Me1iF$r2M4RoiFZZCu0pcDUvkke_HyS7 zFd?2>jghJO5EA35-Bes~N4Q`Lc81feOO1J2=AlL$&6{EG4?6WnG{JzLDEx5+x zf$<>sadZ#ee$Oy78~H==?L6B2aVplx-)y7>G4z<3yxtt_dXV)zcl+O2hIZSTDsKCk zp=Bp&_#pA{{>|{pJKVbAALzs%XJ}QQJVa+@2$_s(+g8n=Y<@M46;-v)JaI>_HC|fR z9vyXBy7HLhUnbM$X;Xy9H`=OZ^!Bv|7GHb`@sR5Sus3MbX}Og zs(H_lO!;Rxul>!U%`eYmUV|D9Q!KY#$~zj$tGUsO(MC}x{dDf=wymH=L2U@7Me9A3 z93z6enfaKF)=~x$)K4eQ5o&#l+#fS6L{DDR_GfkdpbHBEQUjx(5eP0CulsaJB4Vmk z>K|Wnu1OSit;>}wkBoN8)ei^l9X$01od!TFPr%qGMaZ_Ru-1Ow7})EMoLn(CxaO07 zEF_)9wT6&f?p)&-6t9A2o>%aeA^&1BU^NV(1g`9_go=!%1BFwCAt7ax)Gx_dQq`bMFTJw~Pe5 zM^uji?c_65l4!;@Qli<)?t|mP{eO;&t?Yr4kQllqJdAc;eXX2M{=%I(T_?`z4pBzP z1QUh#hqr3hP@iRipkNYZMURfsk03hx5g0t0mCBdDkX4UCc{*JCs6bmtC$AkDzQ9|z zU;i(5!ysFM0LU9eIU_0g`6;@sl5KPgH~WRkXI;(IAdl)bM-h0Yo8(`c%r})XxD?^4 z+BLbFx)JMt0@xZjrsgI~Im*afC?g}GR80s0V-ZN%c9QGF4rzk>Y$PkT0V9;V>Ed!u zPkvC4vS~EzF-5H1`Ivh|czLchW8mDNMfF&Y2;icWB~BE&U`9v=M27x%ewM!nqsbbo=DjGQ z%ajYMTjXDb$c$KFK`rc_0M+0+b$u&PntFbV6p_z#J3Dz}EpGLV z>lJZhpTeo@m|(1Aeu6apr=}mXk-D*zN<} zMzYd(GDl$IA`GO1gb~75B(gpSuGGuM3`^MKWYSGQT^S}I1>7B;P|@_20+22~#14sG zc#*?w0;wFfU=Q_#eewjBC4gfMvUz`G z#Z<$ZGQ_mF>td8(^61Qw!fMX1m0Mk@!Wx)F!wE$WZjQCgKjLVgBnVA{AAOczG4g;R zhCk?XQQexE=!HWSMzTQw-%QmPMbWQgki#7txV&RSi@tO_Cs(5tz$27 zU1abhObY4u-bTXWVTMqr*9vgY1@32?JAq0?yb{;^4~#F3pGyvTlWF4zy3+l|q2c#s zrh|&eLeja8DvFDLfG3J zw4nY_xRmy70WY4>-Oz%2th3m4YN4eot(X3jJ|{CT8$x>P^yFT-*DK$z1EgGu^j?-R z0G8z-*#_fU$%o+&-Vt{dCHzEJhxs5DGJ@hH8;qJC2`QnFxoPd-B4(fU6r;`d*R+X2 zM)_MI*Re4Ti7anT&O&$%mpx5DP%IuzkzhE_hb!QY0ej`9W3c(jA_TYQ*?bQ``#@=m za}JslyoN*etIsJL${*9~NB4*K0LK~2%2KKhvXhh8_2(>xP}Ia`A!rucgLikC$x=KfOkmSiV>YI?_GtW%iUwokM|;E=^jiT{%x-DiT! zb4}J&tU5k_#+uzy#Wqc1b47CS!r6|j;tS@*8Mv&cpDo$)hkB0i^5uaPQxa!$$vbC} zl}!P0c@roaTi9Wzt-qY=%`fW4+&k zodSO3XLlW(T+!{AmH%&v#dmub5TsRWvn15y*3-X7tc108R2DYT-GzYy_-(A z#;;ydZ!>>bSTSudq^fSq(=9J#r9vlCA02H}U1%RRf@vO=>mp`4;Z3Ws2?-29h?@R7^=1~ zJoiK0j2;Sbi~mj$s?P^hwk{to?SzCmxIXte<1j!dcR~~ZNBaMyiT`zAsMYNVL&#ON zH}D(eyxK2>=lQ`2OV`Cgro@E5u35-5ehz48G_942P%$QwPb^7CF$ildtp7qVt3QNs zLZ&2wJdx#-cJ?_GgB>SK*Ey*SevX7y>Nz=#RV^n`jqNL=2#8d_bT&e*6|?S=CD-pT zS@rvtCgpsy{{Lf0;oJ?iiFNT9peOCw15c=&bcrf)NykJ`ZT6 zKzih2-vQ%^nW+4T-L_$Jx<2E1IA0`72&)2ll4C3Lc-3#{P=$76m6-nInd1;^ZN_nT z=5XN|n<0E#sl$xXBFDW@Cgc5nZd9UFhEDdy&j9N}Q<(_SWpF55poOhLE(9qPr9jyT zt5+P%UIQQ4;WbbLj@9l?MZ-t~=6(er79Rq+g*?UoZeNnI!Eu@4VzlBG&@em(Hv^b^Ly>CYzEHLk^BI3ckW~fN~!%(CEIT01lK0O z$r+Au!L^8Prhaen&xYM15(*ha0Jk^Ld6(%rf1)tl0)eJ-T~*#vPd8MDd~jr+aGwOL zk#eXbc*HeLVrb(Br}A8UG+-feu{)C-V35C)IL$oSo|GZWvB=W$Ny@fp44TS1p@^?2=ElE_vmBz28ney&ipFlo<$ScJ+9XfIMS<1E z@{uJvdXu-TuuENd{-0|^%!nJr*l}c(_fI-E`SW;JtIgvrTf43rjcrR~l($6bMVp1d zWNq#GbxJLg)xTE+-G_lld<)r>?l6$afy;oka8;UMp4(;z!j}zWsa--%DrQB4+J%p{ zuN9-8hx+Li3j(;C;?U#X^msVOYQg}Ez-`>hPf4ygLpXVsLmwC@PsNCau4jz4&CiP) z)`#vViv{!M*Ne~D@oi%?Hi2F75WYYHz`XABu0&Ksbqh|H6}^w-7o$bD+3KX1vy2Ji z$9oxA5)eiZDk0NN!SVjXk9`{NC3ly+`XQP&JXQe7t*Y!X##gv)g+*hzS(80mUDga3 zLDx!}!m%gYZGX5CRgrf6Vfh6qaGBYU!{pFwsv#j}Rf^M6 zDa@vBp{}Z)zLH`d35iXwDYf~ejnx};Cyogp6CT)ZcN2V+_hnDR?-w%*h18}_G2x9rw-~M~RLL zj^VO(0?W<&D-!d5!(6Ju7aJ9b1)uxGA@H$cg8-|1)}^g1tUnkuz-^NXl!o_bYU?)W zii8&TNuz@LrVwY*R-_y+raTQt4O-1J2!gS0=M2O3XY>zEO^!to}Ps=tSz zf@`|#&T?V-d{8Nfqmi1#Y&2HA~*4-!pFHekbg*(&Yh(Wliha1KQIy>wST z2oEfcRZ^frP&@}2(@u-3d@>&}ZPAtjcp*I{6l)fYo`wgc0?TwN1X%Ewy5!T4b%+;B z6a(r0J41_Bln83xo#TEqjx{GI3Y5yvNtx*`ZKruX8cI72Z-^swcIS`iIpfE->P%Z& zs*B5(hKC!?5y3yF0e>~V-W~O={Xk3A7H8e6F2e|Nl6HTqL#aemvjiK4O@d_g)Z zH7lzZxJuKVK1ZLmCXaSXlT(KOksWvF_S#W zbmUio%V*cWb(}lt_0AFC4=(B zcdxG6ncec7YC$dIX%C{3uM`nm#n*#z(n!|`u%Ez3q!02I#Tvu} zg*4%-Cxb)AG`K0iM@S#?fI|=$kgh)gZb7}34Qn5asM}T+62TOnM$b- zzfwJUDWzmPsL?mMu08OR2*MXTFByO?8m{gyzKEp?xm(KtZ!n?BYlGomAd@#N;K-8m zx*Qj7&>u0b?SqI?72d2_?OFzrV!^18Y}Wd9+?-Jaa&Fv1&rsKoWtSUw`t!{f6bU#9 zp<6Qin77D5FIT7IM$J|W8isVWg(3Y&=OG>}98=slVcX}!aJHgr92HG} z*>0n%!Q4OqQjZ%HnkLbvLZ2lDOXOuFXkpV;1-*DE^t#wN?XLS@S!cZB(sRHi^%Z^Le`nL4q-un6wg3I^#;WpbVb=N3A&L(+p` znsnY7qE|gSLF$^C_Uk_Z5^GEEgGB$^e$#8M2|=?FrBpUjYc?79GP3wm?xgQ#5$|OJ zK7zciOIvmMSRvGpbzr-cjzrCuD$D-y8o z>h(w>c};ym31N`<3!V+GD%+phE$23L`Z|#|s6U1N5;Os?C{`Z8*@?XEngsIdBreyg=SlAECZd<57f zUwLi@@thwDGr?SUqE7aFmBa|M!Y+1l3L+*ppUpqLYbSMI?^vc_Lg^HXhe5O=2u+S1 zLSoYF!=`Pup06XcLlvc>juB**0+6*B#8kTKU~PCY!sAB(>)=GibIk)juO7Z;?>cX7fPiegXhWqut3&%FcHAqqi_ z2XPlJ%}pc=FL6-iP?#F%QlujL_M>}QpIC{=sz_d@&%^JLpLdr#Po1elohtYb*T9&F zd+i>fyFn`kYxDlX@Dw*LEBr0{B4VQ=>o>qHV-xtaG9*d!*nMco&6+L&IU6QVsT-jd`>#|65@XE_5NHQ<)f9E-kP2y9a}<7iQZp zMXHn?h4{VVizds4fGns~ZNRVKnh11du;MA_C|@|)W;8(x+S`+b9L;V>H$&?@QaYnw z0kJ}{EP$2ej%wj%i->vg5H*rq#4a1|Jbn;93!dr^-n=F3%#&_U)5Mvf}893PAdWqfUWvwsFGBgv^T=cEvuiT^o%&Dt=Hl>sl)YIaV|RzPR)+ zRn}d%mldA%&*+lrP@EbucfgxkP=Z-tcC$OG_~LI5I6%YUtk+B|Jc@P9Ke@_f9Zc*! z!x*Rhg@V&kMbeAzSk|0~m49Yj^*7y_%*uHvyo~CQSEEk%cb<6?Zp!7}+S^$jT!xT` zdwKBLcinQpNDZ&d@4LNH@DuDD7DsfJW7qC^^pJ_8ec@VDG%0Sw-b9SttmA_aD*flw zhlUTj)GJ8mt8;#oK4j&QBv4l)IkLkmtv!$>f?`;y2Vjaqrt0u=1;UWVIp! zBT%cKKr`s7&y!?O=g^HIaunr+2tR@zKBYq>LK+78GlmR&%d=79e7`t(?aEZwnz#yJ zn?&0IZoHx=bdFC&TfD2IqwpWMEhr z9*QQ8W8gBm)8)WAlhPCfK185J3Fspe`np+zi;s&Q2=*5T=~d}uOj&^dlV&?!-(4TK zt%r`c8Q%|h!FsQ&NxXh7bLTsW!g*^dDOYLM=uBT1Cr2MevZ6mk_?$`kiPjbe;rT5< zJgZrkD>k7L;-ZAz$2mut_jtTaNZgr;q&j|)YhhjsY>|f>cZEqI|2Sm|>Za9bE!XdQ zQ2_*3yQDxpd?g`c4G$u#4J25TzwG>Xka~jvT?jcLbk_y$ylIF*6iX~v!eqEo`2t09 zqWLoAAdFBLvIQ`fUa#0O2gLO&)Lk+C>e^RgP}r4 z3u-<(g1P-+iLE7qp>9}f&ovbZ)mulBAr(o;v3;FDknBsA&>`E7(`l^F10hN_+2F4< zR-%1WBkh-YZ@E+9;R-|!MXUavaWJiB6+x%s%G_dvs9{yX+A>AcIPE#m)sPZ=(nl7n zY#;78QG0=RCu)f`y4S4FV4aAeC z&lNjVy;cVf9&NGH1{!>JaK1^pa*NiR;ntcr32GB;a>>2t;VD=K=jq!h96-=jp}<6D zj-`((G+Bf(zYn3=z-nMcVJd18*H8GB*$B2)QV&-DO3=zLtG{%o7fr-8YEHpqJHYQC zje6Ca3~M7JP#(R&qgjpd(&vU@QkM@`Df$zEtXRDehu`Lrw}fz^d%m!RH&6yNFqq9J{c_S5sjYzJCZ z`-_h$@OQ8IwkRhH@R;A!ro|v-{9}x-#=T|MJ)`QER0%a*pnghE3Nkm_n?p)g9|A#I zD5NevCqYgcR*q0qq*uMj`eIaTzqkA~`s&%Xo!rO46+w#C(PO|p(8?B(YSu2U3FZh# zv5EeymYy=qhgFi{DqvvqLygwmaH=>~g=wM`0A0ZHb`K*b@eG{d$TX7BzqyD}k1a7(9JNH^(Gc8TQcW7e}`+SAn zy>Ufc^8DW-Wl(m+LRFL`2~rwY4EIG%8`aoVGw!KZ&_!=-4!Mm%eQUqg`GP1iMNe!AG=L)^k&udpaUcP)`Wz zbR%3PsF)vO8yw!;cxWik>UV*i3TO%L!b;Uxc|>GzeP|CMEo|V4Njir8WNf#cL>LdT zi*mm5;7YcXg*0q6L(~vkEaeP`;Zl6$-#IKVAJ~KXQ8`Lj#T?8s2f2a@gNrY1cRUEDJggUBf zxd*ehV+lWYf$*{wUSCXlBKO0wthlO|dPARJ4{^aq_5$xcCbn8{a3m!>|OlR30HfSAfli>FSwY9S4O7_{%&6;40RZjVZyWmd9 zk2;%2yY_| z!)+^WUe~W` zw%L7LT}2c(;!XIMmuux==6D!DmOyht#lVH;9((P*w(YhRnojd9_%vI><|u)If4gW- zyDUCL^*sBAjo2|FFBc))dllC%g*wVu!AMP?eqit*HP$>w7epH~x_ z9(=)^6^=h3L6#;2Q#_&#LfPSXsk*pA2$;sos~4X6#NXd6J~00`jy40RsG`BX^1qM| zvr}$(M4DhQIeq;j8NtOIcg-|3Mcs#8!g-7HCy~j z1y=p;&>|Eyo*5`nD90^gtw)O*K`4esUO;#C5SXR<5oq8%kdz{0GUI*WEhGlbSa)Dv zxji_q2nL1=jY;bAKQh3)+n3t?^Q76N5fBg<{24^^hm-aKuW9u_;fI|LbzlNQdwOq8$Os{%t+T^ z*+d+uhx;W`#0;CnP(0H-Aa$8Le4WgF7Lz3C9t-9jeYy!1FjN z5_$~rn84pcy{$$D_%=$&A{8yfQ*lPvGYj+}S+9G|i@0NwvR3zYL@hN!tY@|j*YKP= zFi4yd925j;G7kGJ$lO9ua#}p7hh+H4UJNWpG;l(*>1ExH3qfSz66UkvNTBgey5|xL zWq8}(QRtawtJl`TsT!-!8s*#J-e@d{4TBRETN%)?K0yn~0#Plen|}9xb5@2-?JE*V z2`}g~Tt`Wt$C^h)UwVGd4abZYcMnF3dL(@Q-gTGLP9Oaac9FM>wm+|7gRk;h>*}!y zEi^MADNuf>tK31lGu#jS;`*Stw~ujd^mf|2?g|wXsr}>c?#GLR>)|`e9(Q^b2a;7B zNaCZsUrm7w%Uv6gD}GW~6?Awtax*kdJmo%K8_>BJPz71(7 z$VeLqX(Wldu?VZR7ej*Ua>eVSC)i9!SfX!%{gjwQnZZa?{)m1!-4lnE2jI9hBQX#T z$O+*kB35E+Rp}7qy|_Tq28cu-GU*Li4lQyxxWY$+Jw8IL7L-#sX!nRwhL=!bIF$}9 znj1)RCm2_B7EcW##v58=={L*6Oue$iz}E8jj)%tJ$xfD)s#;-dR~th*QJ%Z2C%s;H zjK~qW)j8BgG?(eo$3~S3_nnEr1rudA=XSl-F1nq>94|gsF$Q}Ac#em($bwqSM_wf5 zIjzLFsksFOs#{S4u|#Rt=atg$eklHyep_({>cAuP{YXQkjzX zd)-vQ`EUF(^YRVGZ?R|^rOvykF}Nv+ONA_CgsqErZ_)gYE|1p2bE07cE>}t89Xt zfWAD8+HT}0zDDmE|KE2uv`ltL4WlV6FR?GNdze4DSc$9bq5Pp#w1p?iFRjCo0vMRmxys`5^GfdY-%GXg%AlY&?Tv zhwMe+D`A@1xK)SZfjI=8>;<1B`!Q--QA`qT*Uv`5)l@tsT;|8~vLD|AqPZuqvakVw z?MN`qio?nG;GVWJ|5M6x!0++9w6cigcv0!)-iHX8c5fE9Q`8Om+marHA#ly8?&`JQ z61w;pf)jcj`H_w6-r>R;Y(iBNe$iD@dkyY|WqFR9n~VjG0caZnwLIM5c8t-LDMaN_ z*vB;X-5v+6MSwjns^V$Uw){%8lLHRcON%q%xd1|rf~KTQdV}`2Sa-{X=ep_8y472e zH;)&U(|ULsHc6T^s{KjK#sh{I7L>SwS(%1mg^OJL+4m;(;P#nkH|(TGFA#0cduYJs z;Fh;CO&Y^ZP2Yioudkh6yMp@Ot4llWxgxH)yFm}c#-CS(?)XqfQqy;fpfMAHU`#Ko zuPq42wA-#dwrB!DrWKM{t4*|I8V`F`wL>ha;DJD#;BqZC!|%daqbSFb`S-P*NliBJ*$y3vN8tqOj; z$@I4co^pCbpAJ4z$NzlyhQMz({QOJRx_#ou-HxJlTk%hkijdLOI zRAN37q38ZC=W=cdE!tG@sWP}`9%(sC(G7_81u?*Zv@(6@Etzu{$sL<1jkUtVjML(W zWAii)u;(qNuW}ec**rA;u;y^2VR}isS0(^OL>%6Z`Q`9adbIn*bX}M_W)jOzN zgGxr*$PP5Jlx&{Eu_nD?xgLulPbdxNTZhviMND z^OU10IW3&O4TbIZjDT;%^0nU3v~BhY@oJ2xL}}Ri|F*M|Ex?sgUJ0V04c)i~Sz~Ny z+QdAtIy%u*gfrDT7~3q-DpBuLv%uqwXw1S%&$QxhENHC#O@pHeN5-R^@$S@B!ZSAj zmuU(rNyMyx-FQf{_l{g%OX}GKKzCS)w9lh*-DRP z3Ivn(r@B&?3(X7Z8s0?-`NXtpdpbI}$WiTDTpU>aZ{g!)X+L^7>2(*dI`d}SK$G~( z_^F1LK?1KB3~wx{XFC@^)PoLyj7`X4f+b}larzTw$n#(B#=a1(s)t_8{Zf~e>b&(m zN4*s|Hn_hQJDX*gD1M#!;F8^R>$C;8-nN6$Vk-2!R6W^0>v#2 z1KV%-%}x?o_D3FrY6W}Zxfz^4(*gHdICd<(cs|Xk1`!5G^e+M}_Q)#0+^{|W&O8+E z%byVJQ?b>>=S7(_gqmb&dX$bdqPrIE$bJkJVV zXt~af4?aId$wTE~LN^ZZM}E`LqMSBnYOM9?O!zvZnJ0e~K|AWiFI3k8ps-N5<6H*a z`xCfKP0@q@bu|4x?rlM)Y^XCt zYw~LbKMPUSO;}wt15wr^`9{^R0ipctQyh1Z@MZ-{uT-yW6xPpje0U1r1>Qhbo_-?) zB8_UCvlSeY5k8!~a4iDdLiRa7NUnJQob5RFF$50ZLQGEB79IMHqg*vkG7PP4v`Buy z(6fyCd$feVJz$J}1Z=t(vBZA2v-H9}LuK*#3jD#Td5nWhNO{gv3Dh~U@Mc+w`>yCL z;2#y5p7UKlJVVm;UA_Y-Fg>-d>Nq~HPm8fQg=dSnWK%bRj=3{vV2ghOel&#W&b@@} zGCWs8EIp1B;*N?RH;l6E+rh)~LjL-TgR$B`P%vJk^QVTU$ojpYvek1l|CpgQS}q}? zLfaYlc{H3VMoYHT;J;svB{_ooO^(>21tH1nCz~&)aTBEi)NaHjQ1_MWCuK_6xN@z0 z*j#{kFgMRC_uSd6|$ zWvIUyRPZoM^E3NxW5gisEzOm!hzyLph@AGT_T~ryK)ySpk*YF=_Di>OIUxe2atff{ z1|`(5w!-4r)0`(Wnwt886p`-;?T2Y7D-p|v(1rW)1u?8nHNH}sfIWGS{c5YA_BSaa zrpH1j2tW)Zm1e=?8ddoRE;L)#vjlL>_C}$=z^WM? zsW!Y15g6YEnqLwpz?~TX%5hhr|J@5Oef}FJWYlYDscPI?Ht0k_1mbYsV5~~d$mrv> ze?Gao+c7`rfWN_gqT0aBJd6Oz&HY+Mbd-F~gA%&yn^)lezI^$v=y;U=JDi0Q_g$}? zqmKwa8!A(Yi#B7XQPn7xGe7*GR({IJxe@MIhk8x=iwh(d#fv=N%|a@LSECHGN~6=z zN`k55Wqxoa5}sZ8)$FrMojI`}I-T_y@6Sn@_7lSIFJH6j{G@??Z!`sr=ki{j>C`-` zqO*!^=f9&gyuxex6K+r8H8G0lZH5n=8s3>4;@|-2pQJ+rLxic3KXcclJ|FmcX4m)A z4NbqF9ql|9g4QyRH{%mK478hPYHcWv=PuzrzRLlWbX2wTH}!cGvXIyB2^~%IuVGxIS5$@TU6X1GMYPXX;rn zp0-gR(|;>ji9G9bhSluxi_aVPoECy<6NO08SDuV+W~Wcw-+QcwE~tA$LGAIEVAHND z4#Upr?g6K=RWOlr$@S^H{$;DIVt2D}NNt#BFxrg3kp6QJ8O01-4bxldAH-^|=bmL<&?^QI((T?aRo6qxLMeoWZA28Se+YGq_L0Bj!D}Va|oni~HUMXm#?!j%{fFDzd@EP`(aP!XX z@`o33q?@OA0K6i|2228NX{sO^BenwA>csf87d76 zk>+s6=#77OMJV8N?7*{RUqmDIS6`VsF$~}_f0GmES~6g!jvR9MU>O2cWEI$%Ru?cg zuBW87mQ24y)ezx(e%9~BD~zXp2NxaPre977Pr(;6HZ4{pcB3e2d!P)#d4)QUEKLjx zHHaWuXmp3o6gt#jvYoJj4+<`c;LIz4=ib?C{~fv~+5JrLglxanRJ2Ko4m1mV1o5{< z!T@Q-A|cSc(|!q^pa@nTAhdWKBn+9dFo-n6q|-$>2FgPlTB?~}MLEGhO;tX3uf)?o ztN@4&H0c0o83(5;e(KS~e=*n^X;X!&=IMAs+Ebl6Ea5 zF2-u#4Af+`U?AD1Bz0BcI!^CBdgYW0iaF^?geE3ZN5eMfXvkG9(biOx(dac=E!{lLx&vy^~ z{@axjX(N^D5dM4j*eu4cvB8X^r{7KVo(TY&=J!4RW>Nd^9Aj(wG!0+d%f35p2>$r} zQ~u&Vb%nKsCx>^KEH@l_hJKT*ohW(+zI~$?6{-!{(x>9KU}ZukJugwrYjXEdPY`^y zJ{#QS26K_3ca%H{>LnO1(#3{>Z;PL2*H*+~;JD}4LQ;M{LB0PZr8=N39~Ii`LDDL! z^6MZ>CU5{KNA4v&n*h!+2Jzf%1!99}=7inN(JIMeH*yBdIc0i6RPTGQg{ zAMrv&m3zA#rAB$IzsWJih|ejNZ!<6CC2wY*TOVozg|KP_ywE$tTdegq*$bQ}<)D=> z);l=#za)H^vMJWKl?66pMiCxII9f5vTOQEc5mu0V2iQbeT##I&^|`}Sa2l7F(|IY6 zC9)v1u^=+=Q>w5TRCYDzC62@3Zh|(ziO^(nZd>uXLmR_lvQXyQr6$ zSG8%ear}hPg%AMX49t9;`hE&|Jc&kq+WVNBH9gIFH90w+y5~GMUAK1w`NcfKN|BH6 zvqv7ITg=(U%D{)lMf}hng*_vCrB-HKzP?yAw%+^QNCaxF-!A9WmGJ5l21dIm`$GD3paXmNZtlE! zjInVA;rT!?pOoonqsy*iowQRCS*k^AHztZnfFLI)z0O?In%0(I#{yBRg2_rDs-&9g z=fXs;rYKzK`C#^^pj^HhDWdPcLs)7wY%_o&7`@B!sKD5FvVA@E0;S>>!dN& zA@O_$eDOhiMIX<^jiz>b-O=3CjB+3=(SIW5*ImZ}vHKb0UNr=Xi%#PUHrn~`YQ6AM z7&Mkb;hb7GiQtH+Wo=t;^WlMB0xYzRAf9~kF!5w`74{CF$f($w8(=@ z@8FtuO?8)rct!*pgj?xlbXo+wE=eW%< zH5`G|C&85lAOuHuRU4!!z+r4$qD#*Zd0F9ymxjdqpz`aQ-2>oS!6CA3$gUH^Evlr<}Xh4fTADXvf$>?s^76mR_=lxC9@@KN6qjmbh{qV+{zc z!iCX3#MyfO^bLAH0$=(K2Ow$fOB6?t)vXIed|!AwmA=fK_^+( z6Prln^;d%G`aEGRkr_IMVdmNH^#4UNHP_==g!yAlEljOlHxWj~vnpiEE{0yB=5!guJm@rN zOrjjO;O*on1feOpPZfxjJ_zb%`wAfzpjo4YvbEq0Qh~q0v?qGk50{Vc=^#sn&qA1#999>KxRuSOHIJI0L(g@e}$p8SE3- zYpgl_6Y27NP&yh1`w)FSyJ1WQ*i?Cfi$eyy@>N5s9YA_;){ejiggm)2t#2?xCk>q5D)t&9O)r^h}(rq$+Xn1FB{VQ@~xo4YuqW$qZ6HGzZlIMD?$|EE`jfWUUh>w6%cRnaT`$Ol74R2PZ%(N-)4y;<5#9yqG^s%1^bJkEtEl(!EV*gt#z*v!W@3qwmcqJ}2bHzrC5C00y zUbATto=vNFlI4@<*FD&9*}6K?s$b#!`-H`cxX~$^@`rKia`KbXAVS1M%=~2N|n65?ah(>$s>yt4Q&|$O5-&_eQEHj@H(J z4%T7?8Dlrr?x2cRS^52??o}JKFjHLG!eG~md61qK7XGgg;q>B* zA*)8u$1Qz8RFksO@Jn2I0Hg%OW^yM{$1#zG+FQZWx{z3PDFPgNwi?sGo8>qSK?lS> zD<2)NdHwE>$EF!8!30f&i=jpxw}MphNty>l&#KpR+J6UMrI+11{wG$VT!^$(RE2|n zcky#<0RZ8^-u}@m)WjQRV_oG@~k3{lWF9nIk$<9JSM3B z8BHkl<%^2BoO!TK-A)k{4OM4HizPfq7M!F>A>PrTQDr|KN9PG(fc!+k_5kp0*^6qMG*3W7qxn3!I&G@xKLHhf zY~h&GY92@%ZejLgK%^hQ-wu~JkaSta^@*ifqQg=1QRiZmvB% zx-+uwRb$nl?c2H+Qz?bo5zO?3Q^52v;$buaayeiqRIHV3N#Z|J)L=fkz!re5I| zRbi(+qnmvP38;++S*eu9X3m}~OE`l`Ba!YZQ_N-8XxgOR82ujS^jfjda7c{dID9_l zR3o>Nl0DyE2iYI2&OM6wpZ^^mftAn`_lTGR1X)!G0#Xs5Nmc zC_y^sPms`graxLv|6G6x!m@h-XFVhhzobLc!@KkJKLK&Fgaw@ZFb7COTu3JL2)7({ ztYj#X*C=m!ZzEgFd#9{KQ6~hvESv&3Bg7fXXnmv5xB8r#2(6+A(^yjIf0snY_!4+c zO`FgjhtDPlGlT-5j4v~u3~Elh`#6$!_OWY7OZ@H$efa5qyXecI79SyCssW<5D#vXA zpCd73n<5(K0KlE8Dhy566Q1)WCCN+h3x_UPOuOEvQ@56Qvnb&cJ?PK|Y@a{uf%xdz8aZ@d8Vra;S$%j z*9d6qKLLNkyrgNd5(Efxk#mOKvGj6EXThOC$uACXDkfielN5;thl*G#u)<%9=_5gl zu#23F?*w4409!hn^II!mh(wy<<^`MHL-41o$9I}91h!Nh4Q}i+Ley|0%+fFf9GG61 z?WIX-YvtfRX>Cod`a)1N_9|*qbz!4Y_p=v;$JO{AsQV?nS^?=u^NZ8f+ujN1b-jte zcyS{^;TTnvqp*SW$GQo*I~_7HVOc=1sLbW%qdlvhTJx2s)0MoLx|JxhL~_n@zeI~c zE%JUhzg3fv&+vIrPVyLc7d9_&%_UL$vi$5PFJNJI89&o*>Gr^i1I9@h#Z|^6XKJbz zO_EG*1L8D8u;dP?d4R&g2~5%Keh<0~LBL+ZuD49}BmIw^rz09i-~9cLTYAMYF=GAKRK>YpJ@4^4|go z3`@r28-b7&U3hMnMme+)6~XvwK!#5gDt|$h%8J_7IQnR{4-nB;Z$LGWD12gYGb;m8 zeb(9tTfbJiYUo{351!WA=51K1Km5?Ja0be9Gp8Dstin)vmD_a)uFGX%fU-AJj!xDm zD>H;ci{iqN%BcZ|9qEv+(zwboiy}{+`A@)pED@~a^*vUGV^uPsXCu?ZXj zpukl3cjf|Qm&N!T($SHcBHWir$2b}<_3&~deM1Lql zhspm()7!@-eeeJOnrocZl69)BwZyjeovTh4J6p>*A+>7mD#^4oFEF##g?W`y_9i6P znyWUcS!=6=$_g(*yAVYYn=NX!tWdBBOsyHb6|{VViLl?}?LNPM&e`pBW`gp5JztOK z<8goVYE5DZ3m^S5!#8_NW`1iL66)tN!%DGvDUG!@YghehtL+3T^aV{%I5lxTHs}8> zeoS}HELZ>GgX0pvE?Lt#LJ8~QOqmtNSjo+@H7D7(OORPrZl%4gl^^{WS_(P_LIV9< zgT;E)SnemPlXtqk2p~$d{rEM`FQr=N)Wh2EnE#Y*Ct4aAP8rERak!7XH)>M38 zoz|_ilxSJC#AjMb3JSW7E zZGw#xImE-vEBIB4qlqV3_(I@-^#u_qs4EMrPT%5fA*{YTKk>*hKC; z(8blNL7{ov7Q>*x1XPB&q1!x|ZoPXFKCs1TuNn2PF3aG+qY%x`RF3Ue>y^XC?;jx* zXlr69rbB?``PYN)7$!&eyeOF6C47jY=yskE3yaB6Ne1$(nehv-yl;UXz7_Qq;vITu z%w!ez9plj8mQH6zsbWd@1fN7lE_K-T4bDhT8AV^CWs*_C5ZkMAIM_ zHiYI1m~XW_jmp1lP!ir;{XHu_qWsf#Jqb>;L~RX-$Y(=Z?C0{FfgQb-|I)3lAR5I= zHLDl}>6qPc>b@11*?ZwvTZ1Sm=$S}$mUX;@lNbcAN6{WK6k~y|I!iC%zpPoGal=&! zrj-qggv#Ya$w%ayuBA=qzyA}>>(7DNtXE$hjx}MzMDFB;DsG(J~wkl z>!P6_LaXo3(uYEqSe`{KZCS--JvB#3qTj`P59^lm<``BP;9m0c&Hj}TYtyn8(V>+8 z{e%lV*~|T^<)>LK3x@ypxuWglv``5lRSUYzgkI2ON@@3!7ztm4+o@b0qlC+rD(9LVmwb387uzJoKX$x2+wGd&@M*cGk%rn znk!Ickwf>C$78}a9l&1b9VI%;B$1$f_coPMcNaVo?xred6rfzpBhG1-K@8dMvR^hP znQ&ACj5%5dS4fcga29oDGtu|Roi!$3b5(F_M$qBj+ojPF^ktNI{4%70T>7YQq)nn* z!UDExGF?@zd3<`A3X{)H-oc741>eqC{eNqY-bcuqI!sM@G5E|JTCWi*mJW;Bb`Kfv z8=+^Uvt4T^=7>XFUu4iEQtSmVUs>P;A&+Y6rvvAq1nvTK7&|IiX~sv3h^d|Mr1kS> zq|Q_|3cONS2Sqsz&Xyo0O4HTtYq?F9ORC5hRJ$5IFv;|3Ql(QY&P+pnR;i~jGo-h* z@svF78=Pl^5`Yfi$GS;J{AOw0Wlzs0c)xQYw4*k)_x3+j511WC%(OlDy=moa)np%Z zJ8|EP+XE8^aOEC1{E*BXnq=we@mB%5`35~vjXKE&fun&Q1K`y5Sv2IZ3>=2IR5Uyn z`W5!nr|5M8K&A8u6u$%AWv)-Q6E&Pn_*Lq50Vd(Y(2h7Qu}pAmy^PHn(cSw;L>c|1 z@dhSgWfe6!V8c|JzfnGV%BGsweJ=ZLGw%j$GEvH?VDf!eZ-@rV9{Tq!^}?xP zFY4i5+e*MFkahze3djuDeuLq8wOb)B-y>AP zWXY)B`UO4hbuIdifY=nHr|u;sZ(kC8|kqwl(@ zqjg|wnL-L~r7i|Oc5TenME7K7lc75O|Anv}XX_-i0S z7%kr0@FByEYCm#=G=CP!?GQH)qKrLnA=y}9*!Vg^rOH9!-BlTerYMAY-Ih1t6FqQj z=%KLoBaAkyz8ff)3))3E<*4%&{ zbOz+EF$egCF6C=XqdEDwv>KgS-#ir2?!)>_N9$=_n4fXfT!%Ssd^Z3S`Xa@3RIjts z1&s&$>FtjyDk7}v(2}Yy5N@)^8%HrwM1n?f-m$Pz>^|2MzUAapg5Pdh%Wm;P(ZYxy;`k}k7@5rNwa!GoWB(Y7iJ{tG*6TCr@9rdW3v;kVP~zR z%t%mHu?p9w6WFAH}|E0fA3viQ-{`@PS5HPg?{ zTudIKZ_n4!6Qy9%xsBBE-Fp1Ho;wGq$}PsR_+e<|h3xb(KM2}h$KNjtQJl#`SGxrH zkb$Qkk%8SOG7&9<2~RkxaFHfkg0_fvBL(6R^lAHiU>NGMn-|S8p1|eP%nOsVYM5Dm zw`g0%IEQyIP}yy141(AxsoSc=Xg4gppVZx257A%*$k0X!NFCW*-PNk|ugbyx1Hy^u zj)G{9N0$nSo3L|o6P(k{Spe`iiUUbuJHG!9DruA29`emD^DI6@8%>K;Wq6a>Wy&J2 z9VdR%J%^c_8CG_c`d*eYpFp3pL~qLCY&|8AxWD2##ZAMUp~5Jzuuj9+ooRS|0qAL` zVN$4uwwTL}=#@VQT%)q8L)+vHGOdd=maZvGN=j#HA}Z2tvqa)HCK0ew@Vz_nh_ON% zki<0tNi$utq9ud$^T&;Ym&M7ZzIAWe$KFOY^*iDtZkB(w%W2B6o?i%Ii}fHFuFUlr ze|nxmAcq0M#eb(Tyk?|kK8!JN`GxZ?RP{WI`YwvmMVHVvqQYi{Q{5V&=Ol`)p4s+& z$%hRGBLddDI#I~=Ti5emsiqsp{>gd7w(jz;xFJuMf2dz^4LzzEUX@y~q-D)xx({eS z*coAjB*@0?;b7LeJ3TLaMDq|Pm--h45}cKo+cpkjs@OCHf2%Bo#Tk())p-0qGV$18aEgW*w^TQ*{{Y3=u z7!xoD(so7{mP&p=WzeovPGTZ38lo3Yy@^cOR~V(F^;9G@a=CiIn{Dv69}4XCxbwjrfGwa=Bx-wAUjgZ}OiXFij6?VV z6qv28>`vYzp}HcQS_d2l9CSMoltp=_G2VnB0|tmnPE8q@-nagp?OMl(ndV<>y)414 zHQV`!Zl2Tb!2Y9|@!UHoe2{I5zpec;U*b|@Y;aqM- zzakB964AA0_QFV6nA)$8Q=4lTx(R=~Qg~m-57=Jme8O0B3L>uJ0M$^BPf3+)B@+Vl zV}^D#MQbax(Qm}Iiq$Mu8!z>7Ov)%Qy8+eEVv=bNOb~V%zuTTII5N9-gc9yRI2iF? zm@7vL&L+_%s^3_KMQo!Cq~o~|Byf_l;W&Z2m(@z0E--!o+Z$TpVfkRJ0rv906%EHi z%wrEwpAdhYak5-ZWl;f}pn@6mSjey*+4>Q=fjT5yInkfCVKR}gVUK34jmj6bOV&(f z-$+Kn%(Y<>xmv!~$LWB-gXQE9>4Foy&S8(JW;DGr+AyjS&Kp2A=Gr}Jd&r>9_5@)- zGNk^4>0DON8&P3MC!rerjj}nx_&K-*ku(8zc{mR3y$i`EZ1+ZWV}$ZAT;-z!JgUgl zu|=wJ;`KLZaWj|K`IeRWq8ejQn&ZpoFzVeHq1)1+vergFj8%K&QRGZC)3uWEo5F$C z{8E7J`>i5qpAJ?$=;nK6cu8>>6A*l)aiuU~eA0#sTN}ArxoS1+j4&!X?spgwE}!S@ z#2i=pFj`zWB)qHSznq8lgWG{^jIXt|lr~Q4&1mawIU;#3?sE~i{LNlt8F+1~KY077 zB2lVFF++f3Dr6wV@L+ept%o>N%EQKoRl+|v(^N1B@Jhm*3wzK~GoM`TSAJdABhrV6 z(*9x}DM^0I;`Mxy-evd>)vE9THCLnu(5-6NL)m!1#N-9?n$;QPx~`FIhp)XOQwl)` zur56eA}dv_k}}RleJX^LbW)tQwl(A=ZE0a(Z9axtw;7opFLlE!eK3k%f3B1n%?-B! z4WDT-06W)qiVXfT!Sro7(V9FW8Xa&KPXt1L?QA;7Y>v;)dZdf{EwEXQ`V&HZt3*d< zU$p9bg}{%YJFmUOKz<>(iCpL2O0o{~kvZ-InkF+0>HacdgBzqCN|8GNcaeXX{E_fW z#QpP+p>khNx=K6wIcVPM%aZErh-;4vMiWWDmb9akyLucfSbb5 zg>J>iH7XU(_bOALh{Q4=3!28cMmg^X%27d|W$pDtSpp+wRY@Om_T$)({s_j&km6V` z6|vc!jOy>7<0d~#cs~wgD`pzj3Gim7;h-9T)6%JDhAG(2!}g~yA8x$@U_t02q26Di z$>@HL1c&8C7P^M-4htVtj3agtPd&jy?&q_KtaSp|RO=z*O2U5VR%oy{6=kRvxE@dC zg(-busn5hH^{!ieDvqvHhttFj-Jw`7Uo_N(&(}52!#mihbmzrERlDYS>R&#Our_Gn zSyCf$%YKSSA~TB#q~#S)wfK1W;+ne zsC_|Y@a9yhTCht1S-MN#loyv~*Q7RR1a`#evqmnxj?glH&iat2M5f{;c#$wV3SF2_ z5bG2t2&V0#Hd63Xj&CK6Z?%EtqsGO}kHv+DwaYS~0ca153I?>&p^gZ_FPDenqroZr$Hl)Q&WjKf?F$g#5 zsuOOaaF*L;;;a-*!s3pj3i?XQ3B_(^5&JnN2o%0_>sPewqFohM^)|tqTD%<=jlLOC z-IgTE^(p*}p^`YJ-V{_S4M+q-O?}v^f494Q9K|JN1dyuO7UT{I%hGL{#6vWMW1`@b zYnK9&Ai2X(O!uw`kql8|3nf^@MttNSM5{@JN;+UPzDX2upS>|0TKmdAV#(X`=%cv! zJ?YSchEm7O3_)VVs~Js9i0P(kN4wP^yyg)Lrb&p7sZ zB^-lkX%y@hbCI&3TUIO3=Ok>8Br9jzUtr*%x8|@ys8z?%9}hBrX~X3Iy!0Xi{r9d#}VpjD%RL>80u#K=vlEW>VMT>`M&n~w`_ zey+(=MMfz74p6`NgaG=b?ksu=@&+cFS;B48cjcGi#feK)?y>Ib0yrcZI~#?ylWc7P z|F@9gPdg#v^avgy5P}xq3mJy}6#c4O;GN(+OeZZOtO95U1m?V>jzMm($H-aI*iLwUxO&-GWpX%=1y`$x1t9t zCj?4)L8!BLZ<5c`rl>l=+)fP}(2Lf(v*QBf~gbFy(*UHA51B_OeV%+ zk(G!_dgs$gU9EXaW7TB`<3z!zJ;l^qH&1Snw{URiekV)l#{0H+~Le`>W zd;=Vm$6}WObQnIM4+>)?Yg@7ImRJS_7xOQcKELi-H9EO<37ipudW-I6*(3i8XJppq zIusgb8U!z+L5Mr&GAtN)$aet}gN!!{&y60er8L5-j@B#kRfkgso$V|bWxjcs&~JYr zBw9m3?rsMa!1!60ffBsEX4v1y)kPZAKOLCu#oq#i3?N-;_KwBPG4B;_S{6tb7MVJ1 z^}JO_U>>UG!DxzE&_l9B#3{ThjY9y|&|$7$d})I@v3O8@2aEQNJkk+IsC@G;j%HYD z1ToYvGrUqNtomO80H5D$?}T%K7t1LB&Ax%OA-va1Nkarp4y5ow!5(&)uXfb{{T!`i!o>a2EkMCcn| z2(DJV2u#?4serlTjyWzu@p_d?`x>!p1<@aPN7#3by}cnmec0U|Ha9LMO{nC(N|6cX z=qMN&Dq)xpGM7RJOivsf&ROWP1BwL<$5n)M+B)>5@QWdo4hHE{NEKl<@QVO*R<}yS zKK~23KTsl^Y<;qb8ONy0>TBk!9_MgbaE&OHaiVr$&?|=mb#8Iax#jGP^iX`>dH(8q zTsh3zm_<7VRhr?UtSJJc1_DHGpd{-fayQ$m4U{SM_&{xW%+6-jGwQy@DqC=OXu<%@ z+*7EHHVyZ_$IaIpw@)#|!6uPV!&aUEJxHM+U*}@qNHYVZ`sr9?>0HSZVBa!4I%( z;A)>OcvDjBh0%|1(i`?G7=VLMevZRn|DJ@bW#zk2CD$i*zxt zhHzymhr9KkO5@WPA<35)urBc|o(}KSgTmaB*(*K4S)Uv|SMw@vl;T5qZ7v zDY5PNCKQ#?Qlx2GKV9@X?$6(8QZpHLqPUaD&uK6vMzki!QLnj?WeF``(OcbtpE#BQ3F9s5 zO56B#;*d4~>Z4I_MBL>haTADBbY^A43HROA}wNE zvK{<@Abj-sj#i=%LnZf~7uk{tf3$+=>Wx~1ROtW#<;rxd_ZFj0t&i1-zTkufIp{m9Hjy>hk?PKKs{J#H6j5xou~PE zXTiXzi$#-SyAcOC-zA{vDaT9{ZV1l-M+p5PX5xlpLqsWfTFwLAN*cn2wl%QE>9s`# z-7CL1L+rG;;wWev9`}epLxeQOH%KCGzpUjxmU!0bla&1nkSBq4_>6iJIOn_pLH zCdy-`msi)S^xo+bf!=V95qC+*}0m_paevDisa_s!v9_%p00=+<|*i8L{n8lelwa#$K# zY-k>E4u;bfmnx5_Ew}YM;x?M!`w-OmQn>ql`1Tg#;8G)c+@V9R#PXYD4vG>F%vtRE zOS#4k=*6QP(fvh3Di&uW{E=XV)X!sI--{1fJ3JR8ml~Gr#JJug%&f@2h{%k`_#J#2 zdt6#s*i^K^+dFpCV~ivA$%#kIJ?J#7$L7Tt2&9E+`763Wc@Bd`q znMlVUT-V`iJ#;XYr@2>yR+y*SUXSGn`H-<{JT8rruJ(rb=|$c)&J&2R;(aymw7}aD;s^JFB6B#yzRpr)h9fD@iP#tJhf*d7LxIwEpvsvC$F&m z$-bGEGhHdtY+T))3qiK819F1kOF$NLL{E<=RqWwGY@z)UYW*!xL-uiHJ7)pSLk4xv8VyPnORY@h}JXpQv@sGH+Gw67%#^7*SgK@Oq#sncsdtk z6G&%EJ_nGyLL!4+!R^gMWhiI6AAm{ZlIFN_(5DG&BUb6CH_vdGLFFDw0|F4RX*u`}I%7D34XtSoA#5bB=;vO=M{uueu8nO0nP0eLjajfz@^rSUxI^NM#9 zWX8opz0nQa#kX(M-7pgYruvk?FJNw$4jn zL#S73cBT>2u#)I0_Om7nYt}rsc`_csM$QzT-^{MTw58HNw?6?-tBSU(&<{dQFuP+g z#F;I~Xj16ZXd-%z|aO_ zLa;F)DG6`gIt-TX(fPRSr2S-zw%}7&C=sRidV&fUt(k?m*X)Jed4Lec9ax_2AN*+S2ZbE)Hy;< zgBM1xAd2SCGR*QKe0+A`ZZWy9SLo%m9^-WzN(>W_ZbYF+*-Aqp;8V1D@|3lbcob@5 z4QHcW@MC;lE1mb7Ba>toaSg|N0D@L;k@36Hyl7^(Cr@3eU~i_d7~pM#)9^#IDy=BM zr15DukXFB#AS85ydmKGELrmBT*Cz@g7Z>4v4)?}%4{3^Hr}Yc=z<}NjxO)KhE1RC% zkB4FenhOn1ME^x+-UkQVe<9XIMYA*UoOur${ls1br+<2xo$vgQSdN1x0^qL!VjK8a za9ee95}z+*VY4A8MTcQ~{3(!-K=c^P%Ct!);8V{<*DV zcXON)tJ+8s<&X_EM{B#xtIGaGXvV&OX&E>?aRjbflD2tNZFi=zG*o(*Ja(GPhtmt3SRj`AP-hT0;elXdua0n zz3Ep9wKT1hmg|#bsqYut8jVU{`=f{o|5_T0fOERnvGo!r5N)at&mU;4_J1%EYZq6# z8cw{Y+2PCO{vrPyU)BJy7d zW^l#SEEVPbHf zv^%Vp+VMDnndmE1)04~pdjnqxOMN=FtEJPbsIk@II|e}{n|5hdGH_F^c9kyRmykdI z{GJnXr0^cm)<_m=1DC+7bc&$V6t*mnUgQ8;xAj8Mu7$*dd{73m z8_kv>pd4~wv*bH{rk4o{L#MjanS6~g!J#!cdzqLCmDs6TTuTjQPY?}2Vk{NgokpQx zIRuV9onCVQQ7ezT1L04jzgadR|028=diMNN1T7S6gdpJZE zVxyz;K-O#>>PBQZsJ(_#oPB@jA$E)*_6enilkC5Wctg;ju~!@HQtZGJzKyN`mc-p% zjL&9@-HaDlT&)4wlhr;-6I(7tT==e*7aQ<3i~1_642%k|)bs*`2Fa?4vF4VDiVV)z zOF-L@*HNh#OFgeR+hc-mmfN@xM5x5)BwLB>FbYUCpM}3r1$pQoP*lmx*>vy^vSpGIcN=b?+|~UIQLg8SmxQ z{zY>krco<1`JAuA2mNF@uNaR|g-Kp**|6y8567vkBTa18Z#J)nis|@j9?=)DF|xKB zQhZv@yW{g!F&Sj=>qD9LOFG(O#WMLdgOSI4%CYRppfk5)#gu1AlNJ>>kn3&2Grt}m zjS9kk)x%H=8aUhkA!g7XgSTlzuL)$`ux~WmtKi*JX(Hq^**1%3DX!Yfp~SXpS5h0N zHzOy(SyTfgo%MFjBv+BN{4In;r%QwhAy|gEF8D%>5KB@9Y|@%}Sh&zn$;(~(1B7ni zV^@;CND}YvgH#{K#L3->aL7iEuw5-!F^+h&9Ey@lPeKT$&jKjZ-5A_y)QsX?U(99u zf)EJJ8(xk_@=i`jjV@kTu}H0oD<9V&wJaV@v~e=li9xK{IURcyp3z*;5fBnAxWjr{ zCPzv>g9|sdv@n8?Y9U;O4h!XB`Bn24#Y#mr|2~;L&_|KqccX(>e~P*eq>6c42Dyhd z@P=A0&y&Y5Xc1Q3W`vdaF%%(Wx4tkPrj|uSMz-KLujNkYv9KBB!*=tS`9S;{#rfz4mX#|T6S zM?f5@hesGJ{d)GJobUejkqOSdyn9F$H`&V}D-dVHT*KMZ? zXqbfaN{2zV4;dAy$$Ak#AmF~wQlaL<+IIGMe(4sY zpX1t58XbY52Lq`_xot>r1JL9p;*{m*jbtuwW|)q9)qy0cl1e298= zE(J6S4}_-cvr%JbFN=_t#uRSwVW#=gMeGi<6`J{S^aiDHwoSp#VhA>ZwnEHaOzk#0EX46xi6fjeCpZvu^v!q`fZ?9!mEhCrpK4_|4$gJ6@XjO zeJJLgy&X*zQHmr}DOyO@;o!}UqkWAdeXsHE>@n-;nMNd3Yz@i7Ys7>66skheu|m_( z<56FgQ;7Gij;lA7eju&q5Isz*cTk+LqYK9~9l`CP?IV2TRh0Zuu$TDP6W4R3!@<-N zo#IFi!csd(2x+&Cu0%r%1|du!cG`egN*$f;fuHfTI;9Nd;8s6WWIYN|b;C@TxWx8& zNN_k$vxj{O{X;-yrc9^n)Sn&9$!V|}Nd5(3+a$O~>}I@H*FUHY7jhHuyVA}TtTlc~ z@Gd~{7sipkxsC^seTaTS(ol+X?lGdq9l)EMEoi9ok&Vzv2l_LTu~x00C@2MNbF2=C zsC$~t)fom}iXexsX9ZFWr{zd{y$EG9{L99-?VfF8Xb;RtV~JlG6U%b1*dn%gw5JJx zgrGD{!7!zPE4P3`MVc@lVdY`3sE10sSiUDCIRVhr!P#ukC$WG19VKM$jO7`ILH`S} z{f?x3qIe;!xRtJqrZO-yvNP~#UL0pK>-g{Og<4+O45H}9F}%UR=DMs$jpTxEs}A$V zSAx_Fa~DOMEWdTb!}N>)TrA$QU}Gu&BN#)K#mTNE8@K-L1Di`MId7PmgMG!`2Zu?+ zkOR{|gaxSzhDI+BUG-Yb-#&=ptMvV>ioJElGLQ+z_}Q5z*$r3tNhp>Z-areBkQOmCb`Y<>X4xRG!8d^uOXSto zVHny6slcV&;a6(2tr|-Q6L+~Xt;W1nN%3(2uq|ypxN@c7geg9vQXy`J5^>SzkJz_qj>taJr&sAvcgQ)a49aQ^Y2a@%aL79FFX*|9cR zHGcLDtgT?r-Q)u=pq*xR%F)mkGO(P9PLnSpyQCuPckDapVK;qoc_BWH<;8QvO{QE^0 zD#vl<0J0)9*t}ZB<(<=z_#m$nS7OUG46Skzysj#Kt*QM|K0->mfxzB8SUS@g@$S2r z4`}2Z>2Y`{G^Hx2sCDC1%hP1ps79fj=U)fgiQ(g^HrErIH$LMYc1YJe z_Pu4_aRm0WQ5Xiwa$dm?tJ-yLummoJmvWd`)70dM;-(0$85X$K&p3?#m2ogZmNkt^ z#D2FQ9!%QvIQNBDD}fE0EiX^#*9rl{1nQxZc2>Nja%Cb2s(5ua@;o#2HsWc8rUs#1 zzWNPT+x&pwSvo~?mq%4M&^bJW*j|s8$)h!j92D*RBBC{mH38Ys;F@{)HS>lcR6peL z5Lm2byxiwFl~IH8s&a3D00g|r9k7sy&tGg@`5N{Mi6nOyBsSNa7A75~XrxjP&L z09FA>{|V(L2!MUcFmU@^z3iGk8>QpBs>xP)+-J4)h5KS_Dfm+pJRuDOfj8y8lS;@p zxe^#-)eY?5#GvuC$XVs=PO*idJ{)1Zhymn8EV_~TmjV)l%wOc6c(=gtI#;so&WizZ z9-2>3C~n1A++>Q0-A~4+f9xt94<`AwU9L}Wkk^ioV^sh;!~izcT>Wr8ewFe_%6Y}A zM!hA|2&&a{@~yED(M1E;nh2W}vpr&y8+N(_f?UaLFYT^&Daz2?vCo(G?tlAZ6lUI& zG-G=2*n}ZT&a|miM6TiW*HzX3IxSxTDSedhWe<6?6zT^TDOqQ`uT*3B(8H_Friy-$ z)&%C9L-qo(kWah9j+1X?X7v92h-l3;y!R-u4;?<3$pxp#udWKFx}ArJ4b(oZ5_`yi z^=VntORMIS6W(H`4BSWJHqHL6Z|iQW;pJ}gn_Ki>J*YzUYn2x_a{`kE2BPwDy%#=g zo!nKb~?_EfV|ju$Q~cq%p|xK8(;AB6j2 zUxU<1z?L!Isb4p6zr*nQqRau-{Zw4hL%9#Qcj(xU9BrpbTE-CgzolC_>C}rZ*_;!&z_gJngk$2ac=RQ6@U9&hKQ4BUr})LOzo`v)9&O_ z`k_!c%K&E5q?Be=_!epDiVU2bFjc%z)q%HKUq%;-FmN9BBAqe9%(B?u0GR0~SkDLr z1EYc#NG+uFfD^ZTehNQe|GH7GVPWa_e0CO&x8(@J&mdK+iOYJCe<%1rP{oSR#DxfWtz* zwl5%>o+%E0_}o^QrA@$u)G0O0og%0PX$y=paK)H>nsHu(Ng_TM2e|`Zvo;3KsY+Ls zp)A5UGEKmFjcKITs{PAiKcm?^1GGB7-?&sAl`(&eVP@j1N&G7G`7vsW{aP(@&&EzoEgC}^q(JjVaq2WaWu zaaN<+_As!|b!rwIMT@yXByuynLoih)l7_rEjl0+8+3DB~GQm(A$3sHJ3fQ&0x!bJPh}gHz-~vKVFv^(6Ov+PhEL+0A z=$n|P)Cz2WX)^tWVM2{2sAlsXQiNKkr>XTIYt@w=ZXLSO>#Z<+nc;0B9Z97|4!S+W z6(|L4=xr)ft_=rds{^knU5d?y6DMw}=zb_NI~ZV?seOnmPn(+1$LXOmuI(*<6f3dX zZSNzfynPg|V0fEE(?N6CBdl4RjW}(-s1^qI8_D!AmQ>~+uwiwV2c0^VnTC}MwF7j* zD6SDV#U``5y^wwTjM3S-i^9c#Cj>zywU#Ng-5hB?2k?$=<(lc?HVQ2gHkE0J>?S>& zhlWBxVCO;3&Iv&JlPQ3WQ*cXoK?!&Lrf?{+;%euhP4jiQ_gWJO%)$PuIKkUKe?e+> zPM3kheR(lCuiNV2BYyn#k~CMlULquuTaLaS*k%6%uV_PfX4=llWn1Td8&@!tc5%p_8a;)KW*tuN%8>dFP*4s0B&(yQ~=i9zGI9Ay9rhLS6;Ycy; zx5Xfoin&j7X9E=@#agBJZmyxm|Lpsh^Kd+Mq9Qrqv*jurw2~BLS_3}wGlwj#cptoR z;+=1)l*NL#aU;*LKemMwF5q801(8+c<-8bzY^W%~jviM6I63zQq_m z=w0r(^*^GrO!+kciXq`TXInPr}%6^qu;Scal!h0@+it}om^hSM^Ns0>mpSv<^?yFsof z=EMn_&HtK@^L>Y_l%+C`(!$xoQZSX#wG4AjeqlsdT^9lx@xdYSSz-$q03>;B?!R2? z+7N)ouaQE~oJ5@FWPSm7ytKnHgcLH$*MxXvozNGaP&Pm5)eEtTW}Sl&Cmte9K=Mi90RgA8?Rk^ zN347S^mss$Yt^h==p6Ae4~0lt>-QKHthUpfSOsHPRJ-Q`P_h7|#4qNM+wfB`wJy_$ zs-!N!%gkFM3`5s&sp+pd#uF|)8>++^A|6JyitKQ&e7)a`LJj!&X}ZTC=L zbM!CmRxhrF150Q&QDb{7k{~lfS@pq!AKJ#cQ)o`i@iEl*XyEwF`g5>6j#IsrDAvWn za&gC;R-S^tJHb00d57bR*uRP1X*YVOn=rLs2HL&*8OM<;U;QqtiWSoEVB>u9Au2`K z+$QgWG-BNrAiiR*wI@JHD9sVApMC-#bmD~|%&$BRUor_eY~oR*m0sg+V;iHH4AZhK z04}eILrfdb(|exk=%`ZaN3_dhN>vcshKJzW^tvTzr-k_lkg?%~t}k}MY|8mGWH>vk zT{cq1a*6n%S64ka(3%4&xafrBHySU zN-qDe_^Jez)5Gyd5;5*|o3kS+K3ev|%8dS_VV~(T+_*+uc@g3yisuKD60P71Jv!lW zB(ol*a^mL669COPQ{)aDaew}oH|OBSXSR7Sofs=THOX2k3AyMqQJDQc|HQk}T4Bv3 znqiQ)(kTdU0qSq}$5y)a<%>efXK?g`XD^{?L&@h83X-kWYZ=z^aEXbBjskKz4~?Y3yAb zgkX^v0SdoX*x&u<%;D!vNU=}tw)VmJz4p}ek&Rfed(kP5OLNzUJUq?j5pzaH7 zL7PXHkqc&&u>HGCi~=agpffCP6=ulompvC40IBz6;_peOt5bnk)}eX5kt@m3t@#MC zHm4ojh&}jT!4wR^=90#Vx8#W1gni@+EB$pfLR|9cA;-UtW&fs#&bSH^rHcAl2)LGo z(WU7P`}v$?1rQjxNUt5;%yNc*Ucs&c5i>PJ zVw}&;E9md~;S7j7NYCOKdvrOzrFMT&?O7Hl?RMdYQI8S*6yBTBO6O07P&}^i>O6(f zQv`=Y-8!v*{eP1UOM0K6AQnJS1olyRlUe2)b~bmw57lq1TKu=UUR@g^+6Zt(CzOgm z75M5(p5RcPphiWJL| zmp5iWcF3c5SjF5XY^EsrT3sCsbpJ`t1g?mex(Zl(+d4=D>ek)OYmdaiWU90uu@y;H z-Ce9wzbe%v%(+-xOT%pQRz=3b<=s!RXQK;bG}}!4bkGy33C1sF$xNo+Jg~3Bn5SHI zILo`xr3}GHetRzfOjb3>SBJ`Qd^zt=;%wf~LcPtvor1%zMSa_FLhisYNLil-m_Lp! z?-0witckWWG(p2?DQnFguzhk6>*savvrlt?r74mS9Z;V!3>$I5W(q#?lh3jm*1?k% zgB=qZ^0<1^E{)%OnSJXGD;_1VP6btrB5sXFo1HOg%~ayAH!NzWGOTvA3(?k5Jd~z;QG^3z8pIcbxy*=h<8Wgz8r0 zIn`O+eC$Bgk5DA_yb;}IM8ZM&5kp}*>!G#7m}5n;h|&>S@l9y-_b`6|v;LSZSi$as z&q@yAmWd0H6(^*ygo58=y|bG~9k?o@@e+QZ^e&Zz`PW_6)v*-pj@}2*qjGBcL2T>? z(wiln`k^sr7z|J9_mRzYd!91PANO7*_FxzhAU|-}?2hwSbCCM~=G!|1o&CyqMDs@( zIUyP>%mI5lQ^;m_0f`_qzru+Y{NTlnR!!-1WKOR=gmsc%j3%J?-Zqi2sRiO!T3 z*#BtQgi?05kyT;*cdE|P99E)?i}ipq@2kIQTqfl{<`4KxrALC7+HrYgom9pr$cT>u zQftXvq8 zMFIWqUX~T0%xrD-gL^ z_n)>c#3%tynNbbU2+s-dbJmTJO~pS_s%jb7drG)SOre~Qd*#Kq)5QI%YJB#IbtfaK z$?lXvL3qoij{&`o2seq~i9e#h>18AxeSo&RUx zf~UDoxYzZ`Bj5W*6Pl*1e(QYmRFGHL#_(T2j1ClV$I~?~s2eaZQX?vJV;X%^p(=d? z)(_LO&#o*zRxmR9$L}`AAd3W>X{kU5%SS8;T88>m#+x5|jqcwyHy%e0M9e)F%`u%P zT$(*2P6*4Wy*T|5_}EGFtC`>v_`>uFLxLfG(Fxo{$-V(|28NFG4A>dy6PNlV9jEV7 zWnfzF5~L3n&$ic`W2_ER05OSO364F4AS{qGb~+jn`$RiC5Z=9gGibI&A-!6V@sVSA z!R77zXfovJ>Ka@Gdqd{nydNnVshsOr95Et$(ES6S!?2NyFIXW?4U+LI*pE5)=`d4I9h84zf{D2V($t_R?7;6v#@wx!bj(^ZS%({tikBX!{ud?f@s~$ew-ui!5M8_2blsj zqeQpeoB*f=gp`K5aOj|wuD`6erwL3VrpBLx)$K71bY(_BGwkSvSH=sIF;WOM>^AVo zwk*LTc%cj6;iKhDZo;4>CmbG&2;(NQmx{^1#O`DDeieZR?LX5w?$5~<@(}dDf*3k< zyEunYw}q1+S?i+>vN|4oj&#LO*!x~mVJ)vyl^F6^&;{^d0TbhS@6~{4>BxQzky4uA zZGEm>j@?g(I>Eqe zxZo>v?|zj+@^p1GFo)HJ-zrZP~}WLknhW2j27k=Lmv)|-i%O$|X<_s1j=F&qDKFnxs&qgjq%-eCET{!?dtXtj1fpqo@Q|Wf#aUBKD z-q)+Ad&DlKunRk)qoLhHVvTHv-^~iv#rKDp!s*I6Vf2CTh}@|3 z0Vwi}H&C@0>R7f@aE7>j#_PXrvNj^ z*?c(c?E9|H4_bL^??PuTzG2(T*|g+^Yc)$0qxpO}EiPSR#QcYSsKG49WAN6&Os}fT zy8w!Fwc_k(m3B*WB;X(Ic%uQAh`}Nz3x|dyerv;0%yQ}ie*M3okT|)rKG!E(ptxQ1 z%}m9D;M61=Y|&|;Id{>UlRd&d;KmRam#bbIk2v;?Q{t6ri2sZxm!LFcQ6|3E4*Q_( zQT_$r7tS`|+-u#J8T^+h2XP7q-BJsEj&}`Xk!74{y@D`+G7RwGe?crz=&H9P4I0YN z$iTvaG+%zfQhZ=w?s)mTA}rF|GGUXYjh_6Tknwz#@hx$laVST0X?2Odc<~i-KWfzO znHMqS2y@)l{Lkn|h4ip1JB+W>br(ggLmdOIE`3p6Tpq%Pa?K=8F!NY^oY3%d0E*=o z1@@!83^9`{8h(#ITkzRAW*kqmAWU%8!)cfM7Axb$m5_>|uZiV#DqenlD5_EH@*mk+ z{~A$_Ho+OBFBTc>6rza~)FIYSSxf~nuJ3>{+|vw!moArV*n0~nr!>uTPNJx@=Ki5HLvY+ zJio5#P)KInqg(?-#F@7sOD@B0K&O5Up#CC9*i2ZwUUA+4qT-5V01Fd7vK5UYRcj^< zHZiIXT>GorCaMNCnhs1VS1)3dScXU6aGsFxgKjGDYzi%91*A_mgf1%8s~ z;}6C4?*2*Ei-yEjToFI-Exq{m*@gKhuRKCI^y42JRjPHlAg)mB0{zY1& zc{6b?*)VD@te*CA_O|>=)?9CYZ$Unk&L1^{1146{4d6;#uvXL+!zWTNL>>fWi+{l8 zfndh03AX)DrmJSMj@v%U!|c^tJt<&8!ki+wA4K$5YO0vf63Uek@|dJ02(27=A^jz_ z@_LTUXxh!g3G(TC&|4Nj&-fbuA6q%ms58wb_5UFn|N5(4Z%RS|+ALL<2UP!R6K+en z5+f+*k@RbP23u*yG4J82$gm^@c zHX&3i@w+25k55XvO)HG`LqK3$D~l?Ma<6WXb$B>`q}*NB5Wn2DkyVJ{x~J3!jzoGB zLT?0Wi(mHkEGCyp)y`flNZzTSi=gho-oD*c1&o#%CNiOVIDTvGDKuCO!<*#857>+w zY^-IFLJ3I@(APNL>2RZ_Z4(WM04)Mh6=ptFE)f?y9jj??=xDs2@ zmpX5*7gw1-aM^EkDQIHFpLuou0b6TI=z_B|P@VtbUkD0NX%>aI%czEt0-?btpzKFY zM&~@rEU@`7(#vWDG|d}E{e}Rn?dYEb5+~qZP$5pXi>7;);jaKh$`uoIT~J^dQpQU# z<0U#aapKYgw&Sgm!pYj(gdvNj^IJS;VUGBpuyQ3v6-&>jcq9KB{bz&pfsHzaZ|t#0 z+|I!j7eU@7*oM8WKCl;x^M95L|__wC;JIO+&fIq1GiHthr1WFL$p zQ>7QCX+ca2>BYej@b${Mjz8v45mbtZ>zrZ?pQv2F5}1$h?L}RAgA3VQ9XRA&oE;qV zawc%xV`XU+KvJa(gMcX4;eAGK8sD=Z^jEM={s;yd(vHH$4#V<5S);bPc}!OK+Hy{b z58jHm9a$iaV0%%y5+!N~z@$c0NH6FHxO!X{1A=F?>>I`vXn?2!LAH3LdxbZroP9|9 zCB}uF97J_zjy;i?)?Bwz&~Z)kxvP@FLVy(orD&y}t7UQ6g`bBHc1wsj*lr6`==+Ly z7ui(4mmd9}z=jeWxQAmZEoixn=Z^?afxXt&CFu3U@+Z*|A9Km}RdOONeXYTftp&5W z5AnY*To|Y~CJf4;)nE9)Sk`ih&v}a3;HSN`@VWza#8U+SFRH&+%cj0Cmb?#Ffzokx z9kq%$gtZkZYzrW2Y@aCAeOQvO+M`m#=k80h?L1s;IplW)w(gQ8V#LY((3`t)Ot!bd znT#FEClxh*min^RSuk;~R;jBKTEak?E$~ zn8zP>pSC@^Lwzs2FhqkbL%lN`A{=>^VRaSu)A-UUy^TKB-!YvG1rq0z^-p)Jb@WW; z`r`E?WV=Lo{zJ?fb07tYVf$TZ^h?HOyR}2A_9Gox=ZOmfNxLL0zeXlp#LgDnrHg|) z4FBGxQe$Gd@*^A)B9P>8hK1D>2yhyU4xt_7%Y=?Q6YutNxy4@%)u~(UR&Wo^~+5KUf&7Sg}c@Se42#4OrY~`pB~X2 z>B*^?hX0E6pt%{BnNFaFSCoWT*>L0|%qn z|Bl5r*kQ1R#!Yr_KG0oy5jC7AJl})1Febm=7eB}@(*|4(Kn(o0pe2bG`0{}P?8@Qj zSFq8Q6exg!3^T-r;`8t^J`x%BmIj8^$Wkg%wik_sOBCm0b5h8C&St^YgED0oHkH{l z(jvvKY{Kt;BIxg}yN9moWCE}y>dOoZup+z$OYcQG7ji?Rr9ZJ^0-!oWpC|Q%p@xWaEOSj^~sDQ-GWQ>^n(s685d7u#_h?AIua?fOC z)Fj(NL~ap`nM95~A?$}aAq=tf-U2Ibw|>%Clsw;^G~XsS7T*$8-{*X+19)Rxf7adW zwyAmFfFN3V+IHDCV_L%h$I`h6Bz^C1y!4c(wdt?5)h>c&PlQ| z%?sA7b@!4|2H|C`W3^3cwo|KwuHqH6R22J)n-#Uzu%TcfVp^$uL$dsWA+X=`b?3jc zGh2%A{k%WV`*~iEYoch^iD;zEmnFga5{Mk?zuWs2m5Ux*a_!f~r0K=W3XqMJ7O&*R zBo-!;v{M36R_*j++Ym>u`uF4`G1ik}cO_kWqk9LW_pZFX* zai^8~w3R%0+2e;!pKaD6xg?<=J9(x&)@Stk{n1ty&egLa*(v^aBM>CYq9Ad=bV)la zko(vwt&g<~B2Iqm0Rqix+R_0ZKmGA_^f3t}Fikm39F`r3RVX&DeBrPmV_Jynl2T;b z)vEPAe~yU+M?wbNg&-5_2>YHudQ7NX6H6bl9b*j8Nbb6V_D0~~Yo|fv=@pYtQMXNn zs3oh7p()?piqWr(ngjMI$P;SeIW#gN!&=nSHsKk0Y%0@n6%Z}oryQDkRoQF0pq%^| zhi>n4`-+QiNvnDAk*GKc@o-nb=?6#2e)T|y42jy^j$U9c-Wfs{eS9jyAU(99AqPHI zJOqXyZ=m#Io3#na-dy`HXZ+&O-|9?;GTk5EYlb9#TS0>klzgVA3Ds-!N6#K}EV0?y z2wMw`9gha8pY{LV;M|V|&wv>}42++Zb9dR3*gHYA?C>o^4+xIec5)j2Xk4dm-3T+FT?cP+lH4#?Ob2*9I8{_vJad z#>1+~XOn}VQYcp+M+cuAH+E3!nmf@7Sbh^rB?04d%2I-1S07v z!8?Avt`XzP7uZLPMlSZ^JigYlreuXC61UNkBg|sn>PTLYLf{pPy0x5q#+NVItD_>AnMWYtP=eJ#U3Xy9Ues3Wm!&Qk};QTz%V43CfLwfxZBSx zObwc=-mDo#NlJ)(NZW@r4b1YQ!Ze&wSTy$!M$}zK(VT|r^+>Qckn>`Y4s~HU0nmUc zXAf{xOU;>G@FJhguH|%G8plfG9U}uq08W@}I|~^A)4&jD-sF`O(I-~4QfCJyy4j@s zKSFDV30|MP2w1`&X4gVwQaK-J(VfnfWu2>_bEmHigM>w-ad~o_m&a&Wt2}K*zM5(K zG&7_7)XUWMLr!~GMz@RlPKu0D*i~Vlm)&|me^Q$;Nf&78yfKcYK4$nR(;3ynm-;G* z2Hrbu>h6v>b6rx|Eb`5I?ke_xbc;ONSiUJnyw5qn=J*SpJ=i@A6f#n|ykx1Ak;bt> z9pkm20+i2AoncvGPnd-@hWX<*S0ARIe!DnEkPlx-?3Oa>di^-@ldm%~9%hmOT-l!a z&-*)GP^5?3PWx1?j-E3ADjBNe@xj@-PlX>y#G&v}%dexaz$Jc?b;XdyJ7iBW?QI-5 z&Pm{3fLwv_pjmk1w>e&p8=!)w@R$j-7xF81a${jCdN-O!5m*4O3aRg&BZZMF?CUgg z`j&JHTa+#yv^u?Nu$j8>I8Igk{fc30fQRN!gX*7N{|0+{qb+Df+ktN z{T`YaX~bi6EeiNxo}iK85jEPpcwVoiB)>W}01zj0P+lycSfUhgtm|Z?t!T|Pv?2tT zXPMq57QDjhLD1s>I!9JwemdkZ&xXUFc1&8_e+M&Q=NZAFL0v7aO6LZF?9*E+ty^d` z`Onmr(${Zzr)2``cWDuoL1$^H|M)ptv^VwZ)C+{vHp2vNcQ`1yy0z#-Hwhvt7xr_X z?w~(nB?xWz8+@`&*@*%=!a@5;y(V}y2*VV|&pmB1`eGek?j$UG#s|a%T0D|!P^#f# zo3eD^Lg~j}9w`6Y$S#j?rz(a~o^3#Px=Rq7fBuV1{8{~`1Nj%`b<=i_PPI{2T#jwU zLWhYiSw+Wc;!bI?`SbMjlzv-LaFH4fE4IekH>fwi_gpqFxIrW(vyDafrQ*-icSsyw zQ?g%a0sp)PM=Db6HqG4Ph*^dp#7KZ0t?re?CRa_m#kDs|`^>9k?-<4}TbRs3j%gs`WTLYkd(g!4|<#87)FIQ4cfZ5Y}CHt>NE$V zL4%7T&`rJ|Ce`j1UfS=nqo%#aI4wl0%A-5H#^|#}=h(1!bjbER(6=)-`EngF^S3(hR;+3%X z4p`=b#2sS42B&V``j8a(jPD+D9VZErGcbOK>FkscP1rEl{~kPP-9%Lqq?2)f8gKJQ^bmM>#F zu_>%Q(X7QXe@poR+~4qx`_t`(Fu0y{bRPk1YB9U+NSI3#kNZWHGg4a3dUyaa+YYwq z5uj7117*GuSEf0wNy?yz`k8P;?hOFE8?CWBal38EejVkBH#(}HC%0=Wy{vn=BI&G>&!i2WerwSen3VvL?&<)8I7a%-1 zo6XhRfHt_3bpgR@cxB0Jc%57MmT&2|5?SGYxfo>qJ>e4_1v^9~Z_3y97`7VF5kY(E zYMA1<+a)XJ*jopbQQg8jZ@57*WBi-H&ntB!0rE2S&Jwz;%HVZpy~`@0tgHP);SkE2 z&R8}1QR~4-ylih9E2^w3{P(#<%1gqO+a+Ic7xbD-q%}yFz@>t}hEFDbjP&WOsS@GF zw(THhq}w+DtzGhWHr{sNe1POo?_7h`F!fHf3ziAv?+27?sgrX&rZIHo{bv3r7Eg~k zW>bDynXcsTAB5n!pDld1tZfIz0=D7nA7Mi&3?Fjby#=T2OkB>uJ4>hAbCNpM?OG&D z&GDE;(J0&|_piru7`)ZC8tT_h55GJ}vF^_?04HbR<)zvrBR%#uazj4)aGE>I^f~zi zIw8X4{)BSOa5chHuCic!5; zw~n!K;|n~iDOkPqzwTFeeNm$Ude+hH{-pnB(wImqzkiH@b@OyzcDsn0jYa>f``~8; zl4K{`3&ahm>O@g+TW*^0SE6Y8O7vaxNb$)e&l_6+)s>NH(Qlc;E#}WibG98}U zFpn>V2CzxcNM!fhmn?am9ahaw4fd$i#dPiiZ`kCzd44q9HPZ0$Fg7LM8n`8Ri-TYw z?s(e2xX1Wv3VyNj#qxy7xTfKr7&!FoDZp8sM503C+nMv+O5*zJ!me{Q!I3MbqsO-v zhiX;|eSHbT54wQqY0H7)Pfysx{jH27je1`H&jrR;ckK|h42R<-{Ys@r({+qM(s>5e zX-0{AU8i;XO24>n;f*Z0xfo^dCc_M_gdBGAWXNoNnKa~|awQ-$>DE0kaFxNPc-VNQRjL_(jWkY04|{hL5pRE>EG3%BtHRT4l`US_=PUI?<6k&@}EM`zmG!AnukUiiP4i} zQzHx5;eAu?ILuWc{ExWOjY^I;2D7)BP^lJaGVN-v2xMOPVpob&wo6|GdY7Lm7+W3q zUpq!h`oG>T{7#F<;1l-UIze}Mg`UKF@6YpPV_bk z{OiZ~>1A0yg=-72o%X5!ABTeI@TGZ{p8Dnrfw^J;2g(i!I}xB8eG{Pp zi+7$vlLP`8wAOGm5H>&mvc$O!*fP*+1Rxy%X{aZbjxKyUtmdzLI{T3gM4c+e6FM34 zR|m&CC|sa6!dr+gG$-D9iVeHRI#Us`307dk zIq)-29`#%oPax3J?(BMh8-z=uVTGWvK0r>;Od9-(@Lzl4lZost>Za5%tJ0!y>dQDK zXku9&-5|z?B-tme4OoxgTSPUH8BpTI(aNf#L7YH&V2HtvCKtI(s_n2YKBorXXS8BF zh{-Yu0V%$8nzsfj&3Ra;5A8j+-Qm${sU6ES69rKL& zpR_=O!$ssw$HHjNvK(Iw=zelOV{@W4OKSGTO1~KUgv1P#!j~Kx1F;he+LBPPBV@_` zi=h3lo*sy*YC-aw>@7ZzwLnh`e~`%p$z`n<;a6}9UL%uAzR<|Bl8bKuP?1eF%E&ZZ zV-5c8?vxbN-3U^q8&1CPzj%XNosD3<+izvTL)H(nIMF>uHQAZ4Vj1p@Vy!y2ZNlsL zzO(#@nV62K8S{3?oR)5O%OIRzTj0}K0US334K%bPN16$``tKK>`VmJ`8HtaD$EW<# zA*xy2qhAJW_~9Kg9bHLc^ez82WS}h&fI!1C-#+|^lIp_5RhL*t$K`>A0;S`(SuQC} zwmW869HPZ=5l{j(oYIz6%t}NdFI}Rhv?tE3DAOx!*;!zm9SwSdhKHTZdXX_24xofY zy4(ixghIg)i_nA;KwrT5b@wf}4GoEfYLxs?YxIR_3!xA+_IA?LglxLHA%Pd8CH!Tt zk(cKpFW9YeUXfPB3YzZs!V&VX8wBQpgLw|Vvi$YUKDx!+rskEHq{Lx>h=-pLP;73J5_fb0<+I1rp7FDVC1%a6W{XYZL9 zfmuvz$tl77vGRp#$R(;`b3R0&$u8KrbIz4mt!c&}5j#E&(S8!OZZ0gNCQpp(AM&2S zQ&!(E#gy?BF3?y19z>3qXTC4YfUQ3FT}vX}nVY-cwSSWF?GY+0Z(T8YAPE1TeM2uJ z0hOetJUQKc2Jz=Gs`;1<)>XflcF!CfkB6LR;{*<1IjBt3c4suacdEJ|$qsBuVggFbhlM&?A(! zmI_~KRUM|f??umF7JS)GPHhqGq*g5^4?9fX0qFN#j<|+5z3uORqwc~!4@ErJp?4?j zP|O)n(kjG4@T!M}+X&%jouJ>Btwzu3J`{3HEo^eXlDMz-cSJlv$5JfC{SFe>Vm1U zTX^X4L)p%!j88h~Li*0aHRT@#Y1KgyCE#%cxOnt_PfElJ-aPG5)yDJ|dAF3q7gvPi z6TM+(*2eF7@yi`|9~d#KU`u=pibFa7K06vqEp^~2L1W#kyR=NV-&*4lD!-HD*C-zu z{T5U@zf3p$R0g#vYX)jQz@xC%WZy~mD!tP?)V$CB-Dds2e*sXywh{|s3wN*bYgm1T zb@x3S-w-G!rtF;vbO^C~^bB@_{)2Rd2LgK1OuFVg zWG{Vs;Y|$z$aD_Y3K#OBi~r}lbZSwr`4B|y#q@##U%A`Y+&0TFOx+waE>CYd!cy^_ z3T(Y~OnXGNSV(rdfTUJe>=x1SVw7ODP3Yt9k2RbKS3$wncV zzE)|?8mJ~*qzVSvdoDb;Uwa|w-mmVp3*n@|_k;a~qZjG|40aIFJ{%)v_rZPv;{LfC zg*dC&b&UkZ3DannM4awSR*udO7P@bJ^4AlbyKBe{?fN(vfI6bEU!%4o6rgK zC)tpSPao!yqv_fBjtE1dkhY*Tyo^rLd6ctJ5lZVHM+8}P!7TloV0J_TRP&f!531>T zdIL)4MWeWFaj1$&W3Ouz@Af^KZ3)_IZO&Ui#ywK$M`JLP*`}p}QtA<^^c-ggaaC9! zJqQ~cl`{7Vsy0vok_u`kD(lgNc+}Ai{qZsTDyx$GIE!tmKuDDay-BjLk-4)>(=N*J zufSWrR-Z!Zh%u~o3^6kwg8j;-HxAfcVXWBX8rC1n}C6IdBrV)4e1dV=>Tj) zKE$WB@Kn_?Vm9D9-uq14F1XTfh??q5GL&ZeUy%rX%kq(;9I3lSZqb+baXWE^=9|c6 zdCW@zdjO)!B|nnjJQaJPO@9Z~^E!UzU<`wBORL4aN)}Plr|SEGDBU5YC@v$?RG8 zXB46}{Uc?U2z?&zWmxNJ+-p4DUYr-d`VnGc>l#d|BgT<*T!DiG!8)ZczrK%K;H9!f z%INV25OKuvugbWQH>4R!k-IwGOCVRUceil0o{!)FG3{>2f$9tc>Y@6s(vt z6of72HIZpww0w!L;*c9?;2OqyUW|lkdM{t50}Vg)KrB zu}^T%m1xS{`o2(oidhNAV;->}?T=g|AMHn$_%FKtr-!7DVQ_&qq|lx%p9=Y3vw^A5 zOif@0jHK+D&eN5J_*c%OlXJ(5SbgGTaov=k*a^GMX&Nv@SA?m%@O#w2m#Qnv2amgZ zTXO|W7NbJ7kPp*O5@&$Nqo8Eaq@Q*&cL8%CQ!kIs1FtH4Bq%FVf3~-Luk*4n{kGyg zdL_hXB+&FL$t}0YvAqATf$NmPW0}Y2cvetVh+gz$k&A@@0*nuf!(?;2BEM=f9Ey#N zrbX<~d4`bd8q>(26<(_Dl|-8aakZ{H(CaU>&@wQ5Uw){omWN_a5Ctm4cbI#f`DK!X|?|>V^?-tc#P3hp&gDYTT2u>n#I;i@T8! zDC#ED2#331vL|OV`+mt|tm=Yc@@^yZbQoaKIGM)xLbX}bwjFbb8-~nQYE8ev*SWVYw?dSGzG;`c2{5%P<=Dd~CDt_lZ_BxcdOT*R7YF5*o zl#Cas_-tJ*HcHl_Q~qO*_;Tlk(t;)Y^Y!(PdvEAg7PKy0SVfm+-J<%>E~nX>@|~)v zq=?Ezl}MU|ZYln4mreCa|7Bj}8MM0Ti)sSqo-2R}wE$sIIZCjgncQT`BFmnY&K5=0u8z?tCz z6M!}ujHV!LzY4l}a6ET7&vlz;VOEmE}bJJu{_Y^i~d z7!`ZFCdp~PZvBX;l?=+?jHpZ$<; zeNC_%{X>l%V+0SHl{4#|8;yt0lJB?yoZDuc4GMk#l1By-VH+*D#c^Q#j^UyHvDda3 z_EGRQb|`E~04p#ux0IjDI`QY2SH(|~%A$W0{6;6Ave>}&-xSq-imhmCeC|N&CuAGW zE81c(Q3M`Or#PMYgdVf7aQUc0v(Py};9DPgY9$RDZ4a4P4YxbG=ZwdSstIi^XqNjT z=wJ9PG$Wb|1qUEY8tY*HvM{!qJe4nQAKP|VyFOe6C|{#^6C63#9?AMu33&hVrTU!;4Ve&;|miNOU*-7WRt!;2kJvhv;5$!{42q&;d~_a8wql1ARTAE1%2f{{*%RSKw;yh zSI$26+5swQMT}JpnMcQeA$W%)rWWWV)B>I7@BsDS2rTLG*nm1v6_V>=Gcb zfn>Ed)=L2vOtJ#3i)b9yBQi?6CNkNtK@i(pGTWZ8O?~vdA!v>Lnx3)nxpl=HN$spi zX}K2GOs*u^za&<$V17^MVL#te*f?l9M`J0xoVjo;lGt`fwjK`zTp`8wUmcjBk;Be& zQq-FMP?jQ!l%Adw!Ct;)Z$OG4-R9GoIsrB`NZhVhij7ghkW0i!Wn_>`O(lnW)^ zLbsH?ppIsvzy1-{TAzZi?KMfTk3Q!^tR^=5K=^5NWub?fs#!!<1`OjG8njogEBl)D zc%0_ih~X^Dyc|$CyK>-Q90tP=Q8-o09Ews`&L@AAsQWO=V~sM_em@SE=l8a$xQTo8 z5ogww==il|={vIaamkTRsnn01#9c~noStMnt3lZX;L^sGsJp^upCO}g zdJxp&2?JTHSU9gGsDM-o(7jLq40QmaB>Dr!@EfG*dY{z;)pWpVA=>CwBOO^DGopGbYL7{T@_x#2B@>%*^@X| z#t@kgDd4TjbxF}T6K&2ZVxK zVt$2%eha569|R#rTJUKUl;p`<9s2Uxv$Z_*{Axg+Xa`h=``K%?zSHn>Q zYxwVTYb!Z<;gHKBdoh*R#t|px#V>Jmt%)6ae9kx}#es&6Y~i8@hGt=YmE~)mI-?7C zi4Is~wC18!&cTV%d_S4sUlorigJkg&R0xJa1t|$u_`31islqen>+P&- zS#o+2`gW<&sF*tH8)58-d`3!!M|SpB;4j!Bi3&?Iem0_{`H3^`=)y$XKq`!=6X|hf zSB=+#3W%iYd&e+_WJqgzjC}aB`bI9G1ro8}UCh_}Ylq0m;#WK>En}@)eJ$J2a8M{?B_wNlku0J(i`9*e+&C}v$uhA9fXR7cdyeis+$H2A#Ka}r;t6`;ThDXEO>BZixe^lNwNStPmgYvB7UGR(<0OM~n5l z@R*oamj^vST|tz!21nLXJZ*oDd569QoN&E+;&$|F#h!Dm2i)#hsCXOfDZ&Etqfepa4kRb;u%aynq2V?*X-yjmK#dl56(g+I1RX=7> zXu$p-N5a`g7i?nYK~RGpUV!9Q)Wa0OKqJ>nxFgZf%g0lJPlLLCn69~M+lE3JJ{5$3 zX@e*oWgV$#GGr2TtC>!<7_TBY*4PRRGa)R0O8Y8WSJBSRUK#}oH>LFw!RiZWatt#I zcgnCF*)R*=_I`ROXVysT!2$3u!;y#Jd>($p9$+C((A33&`s^(pJXtrZjWWJ3cp!t0 zK1L?K9wT!t$6Y?V&1EOSaI^Ct7(c9aied0T?V^spKQ*d|7W8k77ygQuL$ru&qsS1o zAc9B{_2gsU1AC_33>!Jwi7fpiV4nT!y)vAJop>p0w92uzrXnIn@PomH=lq_Dd{yjI zvOpYw=i}Nm8XAr~Z&m_4AN`<2Pw8PbWf7V0qO(OCC!W5~k&NqEDM+Z(37lr)BHDBZJ>^wuIu&A3MEkT1g5|W=Xwr-+KVjhuCZ^+L~#C;l~PLc`hM@>8dy2wpj z@V#a-E8#29&znJ=u^0m#fZwFKfhV!p;SR9cI>;E=0tui>n7x$yxS#{Bn~_Z z52GSXWk}^T4qQO7XB13A*QgqBw5Pf(=51|&miS-WLj=1_Z_?7wD98Uxi zkdi%&oq~TrtOIcW>GYQ2;C*E)awA3Y7+FbH4Ez{Iv$Yn2Ivcr>{-42ibV5n9W%U=Fn zR=B~9Q>cZpmYTJe-z>@SMfB`q!gRCtcG2My(%|%o49yk}Q4^E{g($v?Wd&PRu+v<t=Rl|K zCF(&w(xO-tz(zsCHgZ5WLS5hMFdZQ{ZZ+>*xIRaNjerbSx}7`<3>J!a@y><06gd(FETMu% z^?Q-0&5h`O5`F7lMcwc^JWg-S3(HT2$d?d`+qJZtM>_EiT zEC4Fb4{9TnF{iQSFkQ%t@K-yn{%06zTq#${9b^tg3MxsYoEMC=b~T^tZL;d)=av8?4Mgz2dNDIDkU4q6Yn=I}9IXW8^G#Wmxx7-@0Ub{~ikDj|^Q~ zQAB@^wMzit(FOhO=JE{|bJHEzx&*Lv?4QpR&*U=%!&rI^OEOTinqSrF9%-kY=5KOs zI^ZL!kQtqUH+`H$6o{dRhFuxJrX>$^oIJjwo}J3IAEYY;%8dH*_c|=*3D#z1qWQ4W zpWv%g&h@zBM`~uy>NjX(h*m1O>c8%1etPqAd9?3sm=<>y^!_2aqL8Sm@~31_*ALvz zER959Z7X7R!LbQVc6p_ywvT0rnV>;jSC%DT`<}FJGF<>*+L?yuoxn&0f`n9OF>Rt? z#gqw>4C*eP9_>GJOf7FLT!_#3sA`N%E;gzoI$~ab&NgEJ%G&bOVj}K8I1|;AaI5;* zcHscL228QB;#J`djcgY;jx7-VAa1+Ei+wNGI6e?_s>Yx3$#0*Bxte~_<|5naUlIul z7z$@O)^;`~0a!`T*YuaVsPF3+I9H#2SrFSTFaO(MieTpvW?6IjoF>O@!K!W2%6iBV z6GfYV2@m7NynzwjVl)S={4eP{r~{&cJGZ2?Fx+wPfnFS*l%BQA2HdH2_K1Ezd%-Jc zo(J61am!lXS-9+&(srI$1$sn`$-H9d-Yx6LQeN#L#sXeshsm@#oLLe}G4AN9ZTkK5 zTGzi#|LQmWAUtHlFIo)9cn7OuIXQuIKPexmt;dj4d$jH~CKhkyXjdE)9yHeq1U{BQrI2ifeJ2G* zk_1r-)(1km3v+^|mNb+_zzf=T*Z+zK%GT(x@zbn`L&4A7u7h@SFd~n%!7-m9QpQ<+ z89Th9aSLOU+O_?sfobyWt0G(9_7{W=q{0{;Bu)ALxwqrg8#y- zh0F4ke7JCwSFmpSwPdBB z2clG3kM8F+o|L`)zt_k0W&3#DEPzw&SpF;OW3T1v8uDKwo4Sdwe3~s1%nt0m1BG-t zgDHkQq$Z#&wKJE}KQa+qaR4}}j*<4yt=D=Of|R{2W)RHh?y~7YuLAIx{!(N*;G2gZ zqrDRAmM3#;#2hfoo7%EPFCm-}Y4}%SXP>Zzvktjv<5_F|XF0p)IlgCNy$8zDVkf~gi_=gADGU_&cLEt5ig`Jk9H#0fN{GxBfhxm%WD@DXu zdxV~OMpTez8AuZGt>FZup0T#BYO+}pPgo)_asAeK49iJ%agTuqjRk{&W(?2&%=p4| zW`|EB2$8_nAVPJ4Enl^!^*FY=vZ&`I?3g^^ zbj0sxt!wt6Nv`LZv6Q!7kN62QA(Q%OzRHNP^DSpjLB#1f{7chlO}Nb$aQc$zrin)N z4;M~b`m?nVjFLw zs|0t2hbpthj_v?XS?lp2nebd#CY5-lWLivI=Z(+|%VczjSaA2cWj!wye}NLb=(2V7 zq^qt{$V;KOAWJ{%Lo6X^S45;*GY4v1!Cd@MqOYaEy+m)n)X`VgOyi2TnQ%j@4+z-%S0GI{Uk38-1Hp4L8PU<-8DVI+iEqVcb!t z;Fp$Y*7?_JI8``t(9^Z9FziBkHaSxKmO6D4rFFC0@vYRsYQVK=x*J>1b+gpe5pN%F z#dzTj9#PPX+|A!c&LY;~3md28Z2$Ehsd@(9UKE;6JS)=rKYdGZUD6WQKQQ=pHs?$i zbO8`<2Xr^&Wy<)sU83SQl{`oZEhDORz-waDB+!f5{h6)QMs4v!i}|t;3`4sp^bMS# z1kuKmLrqPZ(d*_BvIwPNL5iaj2-7BcOiah%u*2lTix`_7$Y}%c{d1)7;7ryHt*26@x2O%Q9u$}>{nf!{f9ylk z96CPvy{A7f3bn87nx$y}Vq=>Bngxgy6qK#flEjEAOQ+fl-$hu#kOLpCXW*I%mKqa} z4ahM>N2s~0*;nw~dh@LmNOqn%2)b{f?n~^V!S3($wAzF123wi#gdY zItR{6WFZReqjg2Mo>|}AF{Ov3drf14%RdlbUMVbNLXfcFy0CMw|8gt)vtaKh?CNy= zChB!~mo(kt>U-M-$`g^x9hk4+(w@SV?UeomphqvPK>g4@B_|?Jj%=Ev}?d zz8iu;2e~X}ZI;CRL{#qb3uTu4x1Y}dLw*24OOj9yDvl2V5rELN66A-tRM7?J$-oANc$PrM~B+#1eVJic!iv7B&TVn*l) z#3BJwJg5}TtTz~I!O!ljqj2L-;a~zV)5cFKfxSbqLL<`>2YvHmgUcHcf|TSVr(cllKj?Ey%Ms2%LrZ?I54kTBo2@( zpCNC8{Q!tlXkk{30rZR53-p#^sp-~JNl8wySjSD&s>Xk8XoM@IwE$rh z1Vw?#M#K}<3ZtwD4C^?PA>7kN?)4~Rs0?$pGsWpXUWX9OtC~2tlWY;#H1*O&>?>4t zghtMEHY*_!$W=oj5rSLGJR@JwuK^%NiZI$y)RcfCFRS8xp&4x*TH-^SGL9iKZGg4O zqRPNGNN*eXW;vX!l_5h;VZdC%LD8k~qvh!DBDUiC=9GW+D{01e(vk7(AG3uW)1%na z?X~(vDNiJbH1z9^{da5A>zXpHNm4Lu6n(bQ@;dP(VOtaSv0jw4{5?4hj~5XAZ7 zMq-sJ-m6L6L*9lU!o)6|c{!vt8?x}_r{u2Ya@l=QkL-NgBg2Vu>61_a&h+GI&#jaa zTN9Jn?P~u7D+?@wMZOi%D+nDEnfT=fb+P->l+j2$E><<{cVVvZe-JwbN0Far{8L-r1--H7 zem)imKTajHvQ3bKAxcGDk+10oJHH3OMGR!j_zoK zHMAI3v&21&=tqW)15I0SCR{GYeQ2ZYF?;Q?);ha4C_)S?cGnWd7fkm79UVpG@+bmc z03x#Wk~31P^uID~+H);Vxv2bktv^n6cF!cDzEBANdnCNaa>BRbRn`w*yR$33jh@(- zAYoPq$pqa(q-At(yoWN_HsQTcvfbwcck?9}lSg&TRg2Ry0ckh!STp6riN_3i4{*1L}P^0dY zIgL(@Y^`#2biVkq@GN`FXA5ydHX@#kR$4IbmFo((_&#Nu&>upPGlB9O6D^5TBJSg- zj3(bL4wHsc4$Gvre+dP;{tbTmLGJ>$$vm4+#P=!|2c5%ka9#Z5AHs~Fhz1{vJ;=@+ zm`;kpo=ql%c=)sjEB`M57@ZDN=l8R5P9CbM2a~FBJRz`~S~fFWU;Ns zb?dMqpXv$5WdE%H(==@i1_!wY*-`556k5hx2@`M~_9Kyl0s(oLg(Em%FC@Bvy}>$p z)e1om&c_Yn)*hrqeZ>%lu8lk$cEM}}a=VELJtOR1=^>#p940&ig<+bxbwR`6SysO#qHncSu}{tC z(~`8c#xi9IfX*0{k_OB%lj-BlVTlC#0D2?tx+5E;N-gYxdK?YdCg7#DW4V~37>CZ; zoz&`9lJNo#F0?Tne(a>*vdRcS9(}no!ULaQS1|COJoeU8NcM=fR7e@A!6@EL>j(GZ zy}@k3gSM+x#>uu5pD zSV=zyCyP+OK2H}DHwfRquQDX&jrPg*&wsQMpQBt%usYr73vR~S<$O~ZYli~-3#{yR zXVF_YlX#n20)lW9oOw$1-~%J}g;|aF!-OT+DD~midN|C4#P{!oYis5ir*fBIiL5rg z^%B;a#(x8JahIu)1$e^#9CKcLXB_5@L7uJ%wx@IbT)s04L&6hcNBOBydnI6ve?hNs z`^S)R{WVW2abSDURZRzM%x7!#ZbR8AqZ zn6h&+1)qYf!xUc~2TlTC<>!V2UWn8wRzpILc$M_(VpR)`{A@Z!U87I1O?t4I+E`CV z?TG++{)LLb-UQV|8CEsH>fKR*p5v9Tjgm9%C-@vfWL6s!`ZcN?b|w=iDfPhcuNZpm z@wPLzSGi8EeBWd_tmM-cS@JU>FU+oQ`D_2*%R?Fbw#Vla^Q8+5>yp%mx;M}5SM>H#Ch^pUmCU|lOGvw zJtI%L0;s$O%Fcmze;ty@gS>*@=66A&Z!fjAN{ekI<9TYaNk6Mp=@w&BBYv54{N^}6htpBFvfFUKz zw}QGOzIqkDw)Z6!u+*R}&DXHiD@UxsLX3^5HgAc-)-n;L_N{ABw}C8<`xhb}v*RQ? zKS&c~yhar)D`ap0`r0b;tE>GZ}oFZzQ}!9T)BviF7w zcb=gNL+c>%>ePeUxR+VKf9>svj41!R_0xYeHrlim+h5nNeiiZ`{A(#C6NjAfQ>=NC z)dg-YXyBYDS(DqQejl*@Dq z{7W#Xn)ZPQYu)sv#V8q;35pQtSFWDwal**jtc)(%&aMt$`-XMJ#H{QfJ7QWs6 z3bQTZtVR>r_6!qI_CW~|dX|jB3e-1Os|L3ORQNkN^knwyK0zvP{f|3gG{I`BuZ2QS z`vK1m+|PC_Mo4;Zio=3W&oxmUFA^?J4SGOqaA<-(FEC=S*?|1K7SMS7y_vupSqI4r zSa}Q|(;r|Xx2iPOxsQ2O?sZ;|1EYfWn72uSkSS-s@VaQ^Zb?)Br<0l$e&j$eypeTu zz2wFLx%`A);Rn5?IS*}IZrFi(ltI|}#Eh5(8;#>rXeVz<1<^+@4RGg9$$H-Zkj!f^ z%5l!N;^W1yLcc~8`u6aDut(&6{&fYApW|Gjwty26O8=@+_h#;5A^P+NnpSPWAR|)A zc>Z<#&Y=jF@FMWV-{>zfl4fWnS>wMxP&O87g0Zt?O~jc%)>CJrZ<#Wt{XmKwf!@VZ zDeqfGD#u(T?JQhGe*5;Iwqbu>#MoZL!Ue!wSrW}(>x1Pd%BT0ER8xL}E*a~UWP~!% zb0Xon&{#UZzm1gim~xKRqi4MiKNi+Ltw)LYG+j)}ZXRt|ebE9-$Gru(YKT+zgt5|} zkdwFt1BIbsbZKZun!QOlIdfL6uwXR<}tvr6KAF5eJ=Z46r8^WFe+#i0%wS5@Y^?-~S&^aaQsyi&_ zSl~n9No1^git)%a4cUIBC}R@*b-tcm+1qqXEK=?+bVk$7WIrFY;q2T}VJOV7pyca0 zaMiJaz-vM8!`hlH7${s_P3Cf}>Bt$vVS#r;B9<{*B(b1@@@o;XVD`bB)MI!XKmUk) zrGMSRu8~2QU1QjCw4lZ>cVR@7uSF>I10y~nOSQE}q@{7Mv%`~@PZO2R>c0#imG)^? zj_A@@#=2_j$F;JZD(L56mpb{Udko{bYtS*qi$YeF*NgJh{2rG89 zuH(vfP1e7>!{Emu!D(y_=iGlmCH{orCL_40onn~oCkL1Q_ciN0&XBffxpjICKBLb< zGIoYUp$ir0<8#dw^NLtayy_=Hx&L{M0i}(9`8*(@rPvAz4BxH^F22|?a$$eMD#2k% z?U|m^dAfLZRhzKs&MoI^p?T}9*61B3QvxQx??&`!YMqCyiF{>M37H2RDEKAf>Kg=D zGY56_M}uF6urwrrz78Q39=}`zbNl%;42HEmXh_Ga8izVnJom&yDuU@-dSy*s%q_YB z#&2b=F}J(da!ALY9!mb%a(DK0Z$CUhvLRl5_0W>EM_4}>6j{(9{ttK+afIF;AW#=p z$q?aW1lk=WY;O(GF$bOsq*0>zXhRJ1ux(T1?6tM?47?O7f}rIHAeD7WW`m;(JPVxj zwk8&cS($)b`(Itjx`qFwV&g8Xu}kChigiqm_?% zno18L9&ue6zXkzVh#D(Ui0VRp$DZ*@o!-<0wIfh)`wRRkMDo~HtVpgip;XXoj$g`h8Jn55h*H)gd%M-V2R-4P9WXQt?WSDh zHPU^*_3|)TXq6x#Kk4FMgvrM)E$qKx39^p|xGZ9$2LssX1nmKA#@N%**^ z+n20_>yaq-DWtnrK;_zohOdow@xF*1X#emb!2U)rYCDoC0A4liqmtp7-SePr0!D}y zCV^zD4bNngH5++lWjyk$SjQmn0cKJfBC+_Bbm__-_P|NF7KD#r?JA>=jnn;sk$<#9 z^)vApDEC&9G=?~^qqAq9SjT6i`&a->xn@*^d#7a+qB=09Zi1EN=U#*Qr3zyb3Hqyf zeVQSPu2IKVZjr?Q7k?Uqe#6Cm0x%eEllE3Dlzz{wVmUwBi{w~BHI#> zbvBTNnx17$^Rki>7;JQA+B`T7(*kc#D3}-EY2TM{u#G@n+eU*RFk~3lQ73-xTlQvS z86A9i=7Jwy&~=RVX!@6bG#g|KKz+OW7&B4DWT53g}9UJ2bqMtKJ09~8o|=p6ORx(N+Kl=twgkl4^QT$5G+$r zI@d~LIN{R@?$oXWOm&&zLgk9TZ4lXHr4nqIr*6R;V zomX8g?-s6z^63!WD`BiUL%p-8#~i-~t~cu{XEpY5<$dGo@n}SW8*lGMLs{#kDLp3N zqB1^vc@#eTWFqIxobRZUqO-SjE2$s-jOLSjq_ki&1(-g8Qnr3=7Ec|jj3cMfwhoj{ zQBp2GS#h30r($~P_Gc)mMX2&$bm%^HJ3cV60LksOZ|-k1Di#L_J`kod8!DaMclhjB zxiZa*-c!KgwF$2WNrcn&@-d{+X|Y$>z7H=`u=*r-GF&J>HpI zrt?wT35CRc1jv&sC=8{W=$d>l%{GSPsx_D>WQW#NAVok=7}!(_mz%migC>w597kNvPHw%+6x}(*fMi z1l81{afntOo{H zw>H<_ECDb7WpJa-I(bCuYh*K+9{Y8uJV{GJoJy)7Hgffy>dO?(#?qEW>&wIQ7r|Q) zp{P*^NBcDj<4`r4q9X*Kc4iStVWThBE?XlK>d-$*bkV3Eu?K?WyMLUpOA9T$WsTBD zNIoC96u!<+;U~-3D6NU5uE~mNH$Va21aw_1A9g~V9zmn4Gh_pWhGPoD zRv7mPjR0r_-(knk^u%FAaTgliQwE(qP14ikNOl|Dysx`&yih~vka&8llNtBepFfw`hv>EILaFoTtEz^y7#qyb#M7x0~0h;c7Q(`+L7l0FWSMp$B0SAD<(jc zc9wy=vj8I<;&yFh?sN%ksb8S$1h%@n5P@FB3TJ=94h4aA1f0dK2nu30lt35kp6C&yU$ozlxLpW?0rZBSrZ_XnQ&gleC)h-Y%8$$$Ae%wh zt``G7`wg_AcKN`eEJ3Cx(kJd4_&;Sqn zmr}eCILjwv|H6;bz%+IkjcF=^T21ph0BDjjaM_|_yj`1LJ`X#gF;a*=qogt=K`9t}reI2@&+~FA1e7Ne z(_c8d_Nx)~1m%h_Zi)q^sQML@yIx0)Ae?J7Qm+AjAH5!8lQiNK5U(dFfUgaRC!PTK z1VM==ha9DWXP6=YAp0$ZV!C%cqJJ6ZC`WHJYM}fUIFo^N(3R&*Jj!V#ml_XlGrqeh z=!tj)+VejGv#&}Vo%V|_sO{9Tl@dH9`h<6HlCmIL>V|3KbJk-n2Rz_&LQozjxWT$T&;yn3WRQ&XJ|8g03k8K7Jo@QJiiUGJ|L@L?U$ZomMlq*{9bK1L z)PD8v=X*UVh;Q#?UMcm68}IR}zaUxJ@N5>Mf$2k<*XXzYc$_IG8uyzkbDE}up+WsW zPv;)jWZlPol#IJ9xC=`yH!4jsQ*QIT+_22ZQl^4}2t&m(`nzKgMY9 zuT~c8uS?fzt-@VvaF6^GGXTBkfettd_nV0P@H;UnhHU#2k;Ee(HY-b;R>iDc3aRWc zdldm0=kQ-<@UmoWXSY@5)^&oM&PF_H+p3VbiMZ`q92MI0E662#{n2n9a_g5fe!vnr z)6o*yZ!3XPv{U(mECjiRp9HA#xclETIEsf|jj$UKp0!`h)P{g87Qm2Iq&&%OKU>+N z#+P}(1KSc8)xkuIX&)ep+NyuC)Fi?W3*R`%JI6axlZ{iTK%oRK1L`O39^`8Oc5nqc z7eSqh^v#`%paPG1M428Bcs38X{yypc>Mzs1>+`Jl#I%9{HWM)%pg?6|iPYc( zC6VY(z%D+?X%Jyn(MyEwVls)b2yX9neyXXd`kO2sKpm`(Eskv#@i85^?Xls+53Y>_ z3uQNx!62zh#iTSRM_t9Ohu1L)s!edf_MK;cl19qGAWl6%PLT9xQVJVe0+aP4gbx?e z#i*6am-zG{u~CWLgLeHQn^pgAw#MT3uv{(4`KJpKkb8ltU|p<$m!B(5TmjEol_s{7 zmNTtzIX;P7`48N`dZ?iU%Hn6ax#ETfTpe;WRDHmV5n~~%eY*`llrhw!x;%Xo7(8xF za&{J59o1O_v*CDOi`&{8TaOl2Kr!mu1q>-ON3FV3p46U_`?(_6FGA}8P8SFPQv>SY zLHi#kCtWA^dD?3kk0_zapywkw2ibtHLU}pB)R#zqrhGoy0p_DS-`m{qS405x>h|B# z);xzw1DiQq>2-P=+$iC$sb1gdxXbb#nq-K5F%sqO+|E%YVLuTq_r2f_v_V1(QMbwf z0LT8$zQBC@Mg8GtG>HZf_9I%iD8F)%_AG;|AmnU0%jHBc^{5XBQGxra-?&E_%V z{^A|9yKz~xTd2eidE(?+^c9Nd-0SCe*yh4Kz1d#Ip{+l?oV})d&{3PKeaijcWv(If zI{9j2o&De~?wO^uk64ccjID#@c*&r}@RChg)wL~~46t0U-l&TYWiF32#O_sQ!NYMD zmx>{o0VXBwg#WOgINx1*=3??cL3MUH3QQ6l$u_sv4+Sn|Ct~stw+~E6c z|MS31WZN6`jrdgavnZSHD*?fi5v6-OQ3xAsf=osHuiq8^bLaM_k%32;Sg5IqMgA+2 z8;`9u5Mf%QllMi7_#NbjB38@35EYlx3I!cgolz4 ziy7+acb})i%_x2s?xiB2A`iJ&rR;noV8_AEcrelHGxF|ImewA$%>$rj+z*RwTk#k} zjj`o?I2tgv`!)u8XN*MhK$*qtfRb}$-BEqPMHAgjnoz-cp}2%PMktKCNgLIe6>enUtNowjxAV+^$- zc0UWAtVe4_dPmC6nfed^gp1tyvF$Q#t7lUUE{0v+2>$zVVnD^m;jmz5i8z;DQSG*O zs2Jxfm|I6*(i^IcwKX?UYN3n&5G#+RRN4pbjR*Pa^*a3;NJ~Onq6i~_m6K>#hqRcv z`k&?Wi=wRO#BGdgrV$)hZ~qPS;h<-4S!rD=>jEDFHy}n;*yWcmf;efIik!i}FWRDh z5ToYS^N!-IGWZHcnDOrK_?5kSqW0i3)XuqMkE_QP(~45=KSSNLFAzA^>Mjhf`qwPs zF54mY+6jrlI7h26`2QS%^i!Y-1D~QE5~Z5BuKj;?0N>Ccu8ZsI`jW%c%3sDV2FOjX zJ4str88lwg6~>zudTGVfT8p7%KRcfGDbm5%3~qIq_+q8Xe}4cH&Kcv>W>jXN)lSLn zYS!E_vps4qr;UAV?LMG*X!CgAPeT5qN6nl56Y>W>82{LQ@lYscB1ez?rN@7;I=4WC za$0=$%%C%EGVaAQVhFGA)O_nn{L>w9rXh%~Vs1;dB5><+T@@bS-+L$zU_@u#oWE@! zgvnbYzEZ{2Rv4Fp$-XaD(t*)%S{*Wrwo=x*({5_L*`QxN%b9O|I05pb6hL^{fM+GU zH|Ool#@K{Jq(7ZXQ4>&|I=iP3A>-y_A~sARXtO{_%r$|7z~I?hP=YT=pfGnKH%Zs#-z*orVVl>my-Qk$}wmS(Y` zDCwR+RY3cqp{(f+n7*Gq7x$p8+|8QWShEPuH4XbYC{rK5lHWtV`hs)m*qPdW^oBC$ z@7u)yfloJ$Jpb=}+Xyr5^NILeSjMNNpl78MVOgbwX*=a z)v+J=kz9KJPB=4}LRX&P52PTiOOS^oGxN##1kCbZ9dy)Ou8E@8AH@vKaCQchN@sKP ztAc9|aW&}L+Z*Vpd9!45Aa(KOVY}n2l1es0eIQ`9KU&4>rfrF|MdKH)paR%YkNlgR z@KkBTiR2TH{QzD5)>uHf#stmmpP&#Oy50%%?NmQPghZK(8CAMUo`#Q!i>q;ZdA97Z z-KnWQx}6Azav3P`)yT3?tcN5}m~TN+$cyNy;dj`pBn^=mGagvr`3UP0X)=?j#_)ma znIpDiGc3rBG=W`_>uJYh+oRV#abw9ZO^JZ5i0i0tP+LS93$N;4eY$*0TJ~v=gVKkl z8dCTOq?3@2;z%Y>wZ*e`uh*Q|?US!sJg?IB-h8zo6@^3T3hP(%Z14TY(-d5tW1Erg z4}qmce};GYbxQ5H>au+7)9f|hB$pwQbQZE>=HND$Ip+^v)f4W^kp3RbqpHbRT7qcx zeY4>y_eZQ{2o$Br^cT{#A3ou}bYECMqBZIHeD~|YzrdKF)Go{{ zd#HOxy5=WnFVAZ*uy{2Lqlp@8*Dls0a~LPGHWXJ7zWI#s(w`7nvSpSK<|TQ4Fme96 zbj^?cJww+k=OLK>xjhP1_;K!EtduRR?!1TEZMBhIdxmtpjD|=M!dz%^_fQeXJZWu4 z{x?2(lI=aLfEtE0oJAAJqJ=}ZUA78Z4$?Mac@NBNK*RA(Ol%rKhWaXM*JwXYNvk8I zn4rR!cv%Lqt14&cHadCp2{|??8H2!C$di2pr-~$4exjQ9kM=hE&CNXlNy|S$ANo!P zN#C!6%=5%pN>((;dF)8~(THOF_!83|xTKODm5wik3D=fni zP04SbK;@1DQrSpsLNiFG;y5s5z^dd;=qix4#2igN^-v?EyfsgdSV{#T9YHV`ZFknJ zfTFchx}L^=OjWIrm3BmQYN>qXKcnnd<8*Ay9w?0_tgs+{KT3^-K*+h7iR5dC$q@pP zG z7y>K_TGZb*hKZ8oZVVV*NK48kkEwC$I=8fipq|(rOf64bHL*+#jU)=CIpv!| zfv+y&*oOTjP?h&HiBIXr=Tq1(`yV(3IKlp}sjkvr;O@Py{=c#cv$AC#;ypg23lOlJr83=n1xBbHFY zLfdcKi8;>AY&5Wa4%=KHyjT?=Xf9FSCg1jlsY(?|eYHi|fslb&!mL4?8`8m-rw9y@) zw^AWi>-aYkKto!s2zbdMU-RVD>3$BW?HP5QK65(QiytE`MPL5$_+f9vu1TH9IIl34j$^>s@>z&qm`R^+)6rI}W=BYNM~B5fM&uZq zhv%=BilfcKHSlj_9AO;6W00h72jeJI1`2$XF2GC&Ip;9QZs0J}YiqETM?<0F=N#fX zXP^IQmd2%4ia6EmwX4Ipm?)&@Ie%l^VhOe_SFlD3#9$j&eaxybe{GkpW3KvoJo=@S zcsfL!UX#C1+{Rw}J@B4v?o`@>=XdhH`v&r$8~Sedn;{V-KgY{WiMOo{yYnwEd>r;O zd%anxEU+ifb$oYi@%enY!v0+iHWT`52m$RBvpi5)vETWBb;h_KTiqm;ZA{~4C3VGoiX}= z#M5Lkeyw4@B~3hGW4357mm~}BH3#G2%K`&}N5HcY5&6JMLFng{uxDH&BS6K1W}!9z zG_Ti%!KfP++8lM4UqIr3zOL{&qTC}es_D8C`r*O@%PNN?8n3fF+5@D1{QWZLru<=Q zru*GHMhprdzc6;v%O@jGgfLmH8Z1x3H!+*@E=%_@H%C5pZs;X}6n!ou+ALt2dnZ_7 zVK3@QeeCRdyo3jviO32B=uKF!B4#&)3kN+H*Uz(o%!AL;t`0U{J0+E}XNRP`?0unA ziQ=U*@q{%S+sSzttc1Ucl!8ak=30N&$XG_{5t}gwvIlzu1QUQsSd7DI7&m-lIv_+o&i5Z)BW+|EX*tD>xz+$IY_!G--+)AySy;}z~N=C$DZ6+U3dle0G? zhO$%HSHh_z_xtNnnp>PHtD#@Xu6A1-(z-GZy2nQF6xezjqt_`|sF5w~GkMRS3QJ}; z-G5LX?=B78wVf5Qn&*zswJ&y&SJfrh%?QZq(1wOSe->{2AYp_0TW{p4-~$zcjG0}# zQqOv{oR=vsseK0k@Uva6&csP*a(KPkZSTPL*)7EWbFZMu%&O*fT#14_8CnRUWX)tX z{Vo}6!V#Xq)SaM3ro~pY3=x3mcUHWQF=jWGrOWBvMl%AMg9Jmcr7xsJmF;wsJ=v|C%)O`46w!MNIK0inFzPo%o>q;rauq@-;?px8`b)sm}#>DSc$Aw z?NvU2s9awjuY#*v*PL%gXttcY|0XH}fon*Yt7{CJp`Yo)Tei`1hY-n4Bnv3)MH^cs zZsaucGnK&A*@0;P`M7B$RbB?SZasa8+pH%Q@rr$@9>kqu1!UX=N%46 zkYlZ*`pp!q688HajpaeCSx>{!3zRkizoH5nPU1g7o}3ww0-%y;#rSv?+$WW!09oVr zdyz7?f$1oZlPw#_wqM0~xWcMu7Y27$Q#Mshz{7Tr7dOF|s^fCo+i)irsm4$ffKzeR zuwYQ$mF5umO4d_Ehh|#5xHa1&&#JtN?b_E*`G|6cF($c-lEW!NX;_}O;H5$Sfx3jU zTR0IQMO70)l*t4ON1;c~$FdFW?wD*Y1=5hG+_R?}?iCf4wk_fwGsdj{-=7(blzo;4 z2}!Py5;lsG_knGWF+_N5OVF%52er2>S;zg~BG{N+l5(%ZXO?Vyx=#N-*n(k&&@JF?_EM_>Cv+JY z)Yl>7%($POMCv_)=czaH-{Y8nl!oB!J4L1gxDnOqdo@?M>&_AkVlH(@4AC8odJA#P z#)P6uQ<8jjcp>i7p1P^kl33+5v(a^sTR(@G|5UfxJD6Q~N0n8chmjI3n<8d(QJb|l zs;JHR{$bCi5D7<)f=nLT0LwGSJl4fWzR9#;`QL950L)`L$mxp?KIdz;COkOko zy~zFga*Wtu9I115llMy2mI0P>4BE!^8b3wQv3a?#uSYSqSK#;_M)nU1qr3T7d@U=X z0?Z;!zplbK=eOAcT`ndWU0-WJ-Ew)-2Ha=zy3R%{bAAd^VC=a!{DNECs$b-NClNEd zpMxy?b)Xk~y1B8Jc*iD9_4fs4I5fT1rp29WOD>Ud`eyfxiGCqEe!4wQe?YT#b+Q3D zUnQ*(U%Ho-o|CKJBA1qFsy>d=^icY|st)O@ql_b`!ZMDRiEE#aSvz4o{NAnH4|4So z^>LHjuTLBt9`U8Gj;yoUwqOJP6)nzAN-U+MxE0Eo~jT_7axkMsNL8`NjY)#}}L*mY!Ts+nwf2NnK6K zd2dwIaC_~TygPb?kQ2X(YoMYgx0gVilH!5MKU||Lj+4>tcZ!HqI8c>Xf1vpB33qXj z22N2uot&WppunM+vv?l|JPv;}vCOay5YXCf?l1^HeBHxJp(wQ3e8LB?gOv!O?6(}5 zDredl;jW-K<`UKB=~T!?zpLko+ewA(ZY)WmhX9+YU5UrV8lFy8NReBEtZ*~ZPOrw6 zM@&rYyfw<*gx{1cPYzp>8hBekibCP>fTQ<3qkvlswt<6HVUTQ#J&3J}GLDuiN}hsZ z6!RQy#z#E&XKo6k{;EefyB28itw?0d zv3Aa`Z}1|p2tIJ4=|^|2xOtA3nk@wzV?t{e;n-4}oQ~hdSdc}sQjbj*-1k|qgxZ@j zxH)^h4*%ptArI^-@LF&NHrKO?0J`tI$1z-#DC zgd#9b{v4($p*UbD@$6>miZRYzTj1{SXF7q4^>9zRhHk7a|6%}jpjDfZr;i2` zIkB56p9aXKeVEV~SNx4lEF>$3RgIeJ0o&Y#t`VQKoL4i41``M57wNU{WOpt=T0{Cu z?tYQQ^rP#p%k~~!NWZs)ajFw}Ao?DGK%tS(jSH?k>)U!f|2A{eE^5RP9w)BSRA&7X zRD|%P(>nwz_)8L>aM_YXS{?Kd^WbLfT$7@%@~l-Y5TLdQL_6j7(>C7ic`w;!MpUux z=81m-+WKJsGit3N1(3@9YHYHUb2`_}ibY5nJf}sr_sZN$e4CCx>;7mS8JuUA9iLvl zVG7Ck!^}S=DZbmzrbr;M7a;?Os>lhJ$o- zIvN+Cv3wpX34Ig76x?eC5JcYNp?1J>;k7kSJex}^q1@!y!53XR%i+f-Xq4NpJVtVK zvg+>o@&v3lL>p;&FsMeBY($>UC1cpb0%T*8;CX5Qf9kM`0b?wrSc2{u zk8O=Em{?pxee3XKqlgJV{2Xd7<<&4JQ1gpUD#i>;5X=_T3350m!v^TCchgZB!BOxH zmKlm;B@lGt*WgT&r@Y|8Fy0&Rr?Q&nA`^r9wpL(o@m8vh>8mcYg20KGFh*T&Y^$e% zf{36eC`5fU5P{Iu9*eB-fAK6px$mR{)SC;;)h213o8-5DMW%cP=jCD)zjDCAx}Ugh zu%VQA!=6L{uTGUlDIz&FN;T9x;T|PI{3YrH<{mtNB7%+VYk5l4Em%%{YR(c~e<UM^hnTU8Y&!!++_BvFOC3Lwy8}Bz;wqxlCe~{c8 zvtgo_Qk3^<&k`lcC0+jnU7`-edRxa6p8E)|$g^1^&tYzbuoo#?h7uS`M|blOl%{;P z#)Vc@WAN{2S8Y`+0G$K;vA^+$*l*lIg_vg4tbbaS7yJl|uGz9h3AI+txYHac;9j4I zL9#`+!uByxSsK`T>9!!7KQGl9P^hrZ{7xdFlDj}1b>R4cq6Bj9u3WJHs{W-G$@|Rv z83R+RUK4~+By!1y)vro`6aLE*+qeb-jESE1H&j`w&r^3vkF8^VlA0;vw5dK`8WuFV zYf5u+@?k`Idrq3&YqhoUzAHW=q!J(=acc)`AABQV>hg4NBeqNvjH8=$UY5T&6H-r* zc|tE0aNlM9Yh=d>0`;{2)#8_J|Fa!Aewa?uo@?!B)`iX{(!3~B$Zj8OhjOg_O}1hj*5tHL%2v^DPT zi3m_xGXvt z7F=*$lcUXHL#+NwHh)@Lp3}JGl10A&msLIeK5cOy@nLr;OO3b6L%6{qKghvP!&4$k z7Se}!yKl&5;Xq46P~ir~FP0+|L*%i;vd{YPnmjq$B7{(>6OaqE2!mwAuuuI-xQyl3 zmgi&_#-5C2rbQb62w{gdABDc{&Y(P2PH$*wgmY^T@0SAB2oFfxZz42M7M0ev%qJ%= zF_`|Cb7wzUoWmU6l>cZRMcIsy6i%LJvpqweUod2!d#9*Ozkub@b#eEJv9!n~wKq!9 zq>3)tqF=Cq3+^5YYb$EADA&i3t7n2mAHhpY&UbQ}@y6Nt2;SXR z`_3NEj_uYDM&@DN5sK8Z;peELtifyyOQ>T!&>)P&36X3Uj(iA__Hj2qCMS->sOi|1 ze0Wa}GbyTaU%DuvSO0Ft;t^pRMElKd+NRGT0KR{Yr{eXj>g@B^;ORuF;$-fF?Zk_F z8iz6Yi0}eP@OT1W)RNv2IqBz2zEI-$UNvBQuOT2I`KRY;R+c4;&%7598p5Ek z$~WJr>^DpD^I~c6W)z(mq43^wFy`Pw_Gz1|YA=xt6PHGK8I6oXZ1o)Js$BA^!^1=6 zVD0h_{d##sNVn>hhkgyz}Qr#LPjcH4uO>GLppfrU_^xIA?t<#Ihv=OA}O~bXv zFFWt;F{g6LbkMX61{xBeMMiHLTtLy#D^Or@EKA|}$gXn(k|CVkZXX?TEL3#JS1?Eu{#PG%7RIg5hG_$l#!D9lZC{F8HnP<_q)=-1k00G?2$>J5t$)dQzwA;p{j@sRBR` zr|?{-Z~#+`Q2koTm%0n`&bf{fllgpp4R=8=fg|QXMl<1kZ;$u zSC~3bYKd@kwv2;H-xJ!n20vl$0Kz2lh=s?`QhO-QG&~ zgEWYA6Z`wRuR<_LF?O6Luav?+Q(?O9A|Xh+mgn%Y1o0M`-FXiPDAg_~4uEs&VIXGo z2x=KX+<+nBTu24P8%ODOaT7)q!H;oA<%8{hm$@rs;!qDA+Su8uCwQ@dQuXjrGo{=! z^)o#5i{POupLzmVW2-{-r5sz?BlMw~mEu}Z)l(6gQFtF|A_J6_v(;VwSNT?tOhLR( zQI;L1{+CDhOwDL@>HTxX@C(J`qN(@%MQ*FzmqeLV?lTnMqu@Xg+%-xX@p;6?2#Th} zg{t=V@#BTi=ju9>3FL4U3fd-c(=@dQXJ`5a=1=ZO>*C>PKp|4^xe$^-O0Yiyv2XuV z-1ZA{G>ep7Ih5{MxC<}nPIjWu9)UmPE{YqHIYGw)XNW85AwYt|i@ zM@DH;1ZvDB@+6C%3)QN{px(xbU|pyTv>Q+vAv0xGCq6X=vS^aH<>S=dR1wtNx&C=r zJ|ju$gmM@;QfgHr0>AuLC=z`>7ZnQ!JXy#ZdJ_mx#^C(_ZJNTk(GxNG&?w*=K+ef2 zPd_(KQ}uQjjKOf)OxsO$T9wqpeRINNU?sO&>W(f^{_x-Xc>kkmt>@dwuCpBBgA!~B+p6?8c-&c3zT5|t z%7kURG?|G6rT8=)4XM1B>e!N`$f~pvf#C*jD;M9w@nM+C%tDMB1P=zEhr|5%{Qy4M zHebE%`Vfi|V+w8q4=TD7x|YTS)qtcQvFqv=0d2N<3vuOfv{aL6;rX=xYVUvn=kwo=2P z`+?2ikgLPi!w}$SnfAQ z?;c(cJ8~q-ei>?==7n9tx_}0pW~~(#6kk|2y_||V54ct^Q$h8%H)s#&C$?Z3yvNJW zEl7|OwYx2*5pUiNIsa}ift5%=66f&01#Dr}eC$ycdinQU4{}MG|2|Zx^Jw`RYxb^l zjGQ#)mcoy5P@Rf*d2@icA^{0wjVztQz(DJHBw=`b8g+gTc$>y+Qa03^sE6X^vB9Oy z!Z>v80fVvXeJxppV=~aqub*J;VO-Ia7UBj}C5)U1AKlPdXHu@XUUsJ_6L7#Ld)V#akZ5DcyF zC+FJ+$Y;_|Nb;w{$4ZTBP_L0-GYU}Or0Hrnm|XxhMb;dG;nv*Gv^HR`GRYj6Pkn)) zsxERD8T=N66txyT)FR)a%r8e(@`CfqEr7Ruw-%9tg2A6hK%|JHh9Ln#y6ib@!8W2$ z>D4b-;N^P~f@SYyFwfD;zt|=V;v0EG)!d(N+9@%)YAtFFO|X$tXDZx7k{T+63ym7l zZffS=wdlML*iF}UAU`&g0T&gHHHv4IUX{+2b{IE@5pQymcW(O-^p=KqcI4{PITaVbp^Ov*lRD#P{mD3FFJw0T z`jsl7ly~SR#qgMS6UnGVW4qYETrHV>rbRuHU@m3Ie}{>qDfu?9VhVhxgZ9!Ba><%< zJA}Sd@M}GIQ#5fPNS2j)YOh#%Y)B_+dQVW{rwYt!Ad< zMyuj)71!vaGZ)6AbU`LNHp~?*BLa{&=UE$0y1y|p8Z?OqT86ZnZsp&e-r`1HX9U!dPr@< zIJmZ(u34+aDk1k2sbg;ON2g{s@!aXe_@lxq7740xvzoeROccdWZ$Vs6VI%RsdLtr} z+fMmN<)ifmak~V{mbc6O*mTM|5%Y^6sJv=xTrHlpOBdTp z4m18*ezh65UrPCpDswJ@yh;O{2vSa@Ol3qQ!b_Rgk>(l?p@)Z3ditH!Ww95)Qqp10 zaf;_gP4WPp@E8P$I9kFm$z)OhVaoB@!M`ViM6jjkNp$M2a}cR*U5DLue+VAxLmzkj zPq3}R@6o@CF*pyjj2=D#!aLUqL~H%vBwfcyME2hzXPOqv!WO=I9eG6% zec5zv9?6At<5V2w-1uQcAZTmmD3YOE*c@Q>hwV<1@%kK?%+#*14B9`S-v&A$NYSL* zt{EMSw1ZeK#nb3Ln`#*z4%NUz;}V1o|Gpe{E4^tE`b3YT2_&#A2r_cXWujzVW?{CF zZ!_+yD6-#-V6_z>)`;clB|7Vh;Dw<(Q8lUDju!cCH8!HY0gGP4X^3X;rX|PK7Js|h zA&w~Lb^pri3q&~O$cQ623YWSSylRQxla2OX7Q9O`L!=&ne$IyWeG`GGagS1Y}+l&94m%Zx=cgF+O&IgE(YsG{NWeY3-*?*LO##u~NTN>0D zO#+lr&#G5(9E-vv>tyNrP0wGCxZCG%fF=`5l__rp+I)kSSb4Q-n`d=x0XO!-+kPSC zpKJbLk-I*(>r2Fh7z-k1UjRv&=aFnk0CM~mf*oGlgaGz{WRRUd$)ZC5(ZwPmzY=VG zhDgJ5KzIS>H>Pzq9znkt1%6Q((dIo;A=%ZdEh*Um$)$U*7XXbnsZg|3F19@1KJ3CI zCtHY_Oi1;A8ArsfHbxEi%|&!qfqONtY|^NU@^A>}a~bc*nLcy<^So2@Y&*j`6)UPR zX{iMvP+3%_`)F=grN)OyL=7{&>Wf*O6jG5ahH#8?QItP24G6+_=kNtW)*}QkEVg|j z(zF)6uPflb8MUbZUXI0-Vzl%biU(iWONgW!x)4J{_%=IZ9#}6RPEKy|XAg^ZP2t_b z`fFlyG*ynA9#-z2fWKm13X#NT;a(_GX_-K%zW)TT*rD0aXok}`X4n99%7G9^DIgrWx? zjEap+j!{K$%4xe15veUMNr}Ka)Tp1s*7ZT5+O9UW!>cvo{dJYU%VjH7LBt?p!@fcJ zq?;`|1TS>9is93|ipY=(nOg3PAmIO!f6mVa0J#bSCyRhBo*a%AhCn)~%$Sj9(29V?II<>~s;j;NRqY?boZz^XXt$qm~ zd~){zk*~8=9$Tu!&9qbXt+pb#cKKns8%TvS0*2uIzsYbRo3B0O8n)=Cvs^pBz~}rb zRN{s&32?oB?eib-*y5y%AWQ(t?+!y)%IFmiLEs}rlMJV6&UAgSapGa%z(C$?cmORx zTkVWk856MTz*OT3tF9Lt_P^a(&EY~AWdF8y9)n0@nD3sUEvDtK@)I{`1@6NlANrAE zqwW~+jwZn{Hb=i`9^u5jP+CsQohBAa`%D1=KUgMrNBV_a`2%JmS7W1MNv9Fa49V=~ zGCw4xYzgZ6=EZ-8WtPR(GBnv)WoQSL>X%2twu_LqdJ)wQAxc_IehpK(qklV)l;lPG z+>>xb5=sb#-VjEbMeAvMP5>%^5adX0b>(A-JG$IEjxeqYc~%hDJZE@>Bw26~=39Yp z9~d;rQO>K%bR@k$$1^7$P&FfEj5#k!l@mF#bVxhJ?P!=wWzpwC3wcyPp6}Kn$t(SY zZ*U&O93Pqu+q$shSVV?5mMC*I>uig&hs{j~q!4ihi-iWf+FRS08OOOV91qy;^U@D= zuDL6By^K-;>I?lum_kHD(Y^LF5YR2FJXC<~BB)|BIkb<`@*HQMxD2nHK_lN`doSWqwxfcoWjMGUeHNJA z_B?9aL1zX}8!@}yd@spmJV4-9m|VlKGnGJ!RKEmnFDl+ym?xQ8Oo47KQ#~v;F&C z?Ow{d%9n!{*Uu8)oko?ZIP59O19}j1Dli!(bN_z@!qoKL+TtADqDa`ozDC}%8pMyF z2(7N5?Pvs;nCV+y;9kpnxOq4rzCQ{5&^@8XL=rW`>r}iMrlVO%64{Q;{nEbbE_hBl z(3z@tqc&H9jm1Z{X+9+oF`@IW7>U+X{A5a`XVHja)U|^FY07zTq%*WEI zo@rd)!bGh#fSTiVKRWANn`+k>mXoLfBg`-GmQX$yY74^mI2x107e;la=4wbqIAi-v zgorb}SoUEeB38Jkb}-x`)wiW8&V{!WO0KPph~7abvX5kRln43Mxqt#_jUh16yMi;@&{S5V;p9z|>Wg^l{qeh+B%XLe%5n7x+;k(jThJJRi>{F`x8$+!yMWMnL#&SwH?cdr5pW1-gFh^ zE0lA;U2pPGv<)kU1G^@ZJmp`}7-|EkYqD|_L~V%HZy90U=PD(vR!^3gY#o4N%<>ST(2HTaIF}fIo9QN9F@?v8D>h+Q&U>{mz~`5%jDH}eZ9Fr)4M;kTCX>d(#8uV&tVF zYAdCI-R!s$$IO6JBLJ;}^}h^#HTSjg{8OD9rvpSP%z7@ZE}`lf{EWg1r{LNAW-O@B zog>1pHXLL1A35ve#Cyk+ONN#TJi~*nNAQZgbADdo=>tw+5!J@eHBr@H+7(ZqLF$Mx! zi3kBB@A^Yv+$BV7ONhXX0H9xSgK6iLzZV-jH0zVO<;y#@R>zm|Zq!k~vBdYLFe;}F z0ykd>BP*6p5xq`L$@;1(j2qdffYDO^z9un-+qvV|G(eo*bPUSKIy9yW=TPeY7nP!;( z+2K`;=4(B79_*$%2p@)~EDQKmF` z=F1vDlOj+^ahNGFiHT!Ra%o|k$scv_>(|R=@$Pg^zu2h ztV`ritUEujQux#n#e4AUWq*1qLS?dPTU1YA9OgzcfyylKVd(z#iN{XkyQ^05V12A} zH2!Tn)5ar>JOyl%P{zT5x;7o@hDEGLH&IC+lAx+zYs?ukEQ}|^#ng=<0}`bU)J?#jzh9Rbugjcg|KX)H zeKYrf>bCbZIBTK|%Cg!6%r7xU|MWr@%%lb2lSugBbK2fJA&%C2KAMNwLBbFbU&YK} zb(0!eE{eI(nzd9$-#yrXf$_wz8o_Wdm(;$4Nu*lZbV4hSN=D?G6t?rgJs%G?7w})) zovJ64sw#t@@p09~Xr8+T%=YF9%y@Cj7>ZF9PSgs~{byoHTOs4Ihxvu7^%b&B8%>%} zisWtle!GT>ObZ%al90v%*t-1~fguYm8)iLdI51l$bDitR`&h7`)AKw1*;#UclSt%o zIWFV;R_*#G?b^^_FD?VxHcAcx{)Pfa^3WIxrVY_GSfbRX1yACp{!Isui!`-07*wFe zS2^#ab1HK5fJB5K5(V98JL~2ChCCllXiak5=!^ySKt~Hs*8)#P5kg#NCgTJWAvMYP z1>?G%vbMVSJD+%X-0COrt(-z4sz-Kmv?3U-USNG0psS$h(3%2&P%XWB3{L1xaMpLA zQp(C;4(E{TuCkL|lyK9u{5-F22X6pc4ZRB3>lQw-jyzh|u1?J^(|P+w-^a04MSpn| zJ~JjeaJrm|a&m1~w6bg7F&GnvC58O%zBZo9fuc-5`xLEiAZO+Pn8TR@P?rm{prsK~ z^>$|B6s}R_0|h#(bg|3?8#u+dWb5=mT!pVVeDg8 zS|e-dEs&phGDGSxli7^m*Y%jY)GxvK<%nm;9`0r$3OoP^X1c504MbGovkY|#&Lm}M z<71Gf>XC^?zw`|GV?gZ0*cDWB3N&I~Hyxr0<5vtS2Sxb`{%#JuEeRnq4mMkWj-dD9 zpJ&Lg>T`#wlGo7|_7nN;x9Np~VQv~pM5CLA)EJZh5~bvu8scO4bZmX{s0|@Kxx=2E z?eF7g{C8Lvlm#uUlrN4#-w18RHd-Q{S&|jX#IEo=AX%!5QDJB$gP0Rda{naM7~1jw zGJaE+MqeIuc^aaMJr1ag{}ysvYk{Yv2s9eQ*0D6o9^m`UAF=TZjO7>=7&=xpdjoaFmWc z%q%E8{|UMVDGc{`v|LrnQB`E z_DtUZ&MZS+0`n8mHwgL?3kkKdL6a0&Tg_4rvTQ9-XJ8b5+27C4ZO1rDfQgLbJL$R% z@dXh{K^MOhgm{0!?{lLW*B8ZJ!DwC0BCoi5=Xa2igb_bdWuI`!oH{IK4!?q^Dizdh z2(52F8G^!7`VsG;j7kd8I1}w+SFX00kd-t+-&3LzOUR3^2z}s@ zF}<@kRZ{r3wO2C=Jq zvM0c9o_j_g1(;avTye8`kWxr)nu*s~`(c2oT;w_(e@Kj>t=w@1DDLs|uSeVE&ZYSe z4!IBcGOIPTC5#?8KL#WE7Z3Hkg!4HW%}}Zvx{ZP~NGzfFpe-5qAI24SgckMT?l=SI z`!V7M$+;GoSXy(W8#&C)X~W2koL>Icn)k7;(fy0Iv36&KMp1Q`nKCXcISR^6@poUj zAi5}WF4e{054L6yQ+27XYFN-U;9Nz%+MtoJoAQ$-vP z&KX5ACS+~C>;v-k!L{!Q!S~QyhM@DaIt+-w57pKk`eC(Lv-Qv|_f zqKvX+cYCCau5|x07;+eOqy9!yE0373bl~-l>zbq zr9kIp{OK>ptsTiIk%QS>1PN071r1CZ$|u~8L3_!th*S48)@91FhoD0o@@@YE`BT5z zv-6icL&i{?iLKi6rR?NM-KiL=CxU`O9C!?;Fhzx^Vx@pd)lcAg1|1c&wW>{@Pr>bl zFl1}$=o6p?MNGX~uG*A;+tT%UHU)RfM?CiDPp#&DT^}LIJi0;?KfV0J-MA&yNA!m@ zS)~w2oM}xpHE%nAyab#H!|X4hu7E`~V~%E>rL60tbfK(JY_J~P>+L{US5g;|%BjD| zKOK4Fd|>vOiyU*WT{_QJg0$0J>L&JOaV>kzPqniJw=CzMvCW+yXeX&v5Oyx^SZ2&)rs=X_sR6g2l(s4K&O-p4ck= z%YULex~;^_wEAE(wVv-d7{4`Q8z$qpwXNH zq2}k(6nH;Hs{GF6F;uoQgPS;J839&C&AcXvfrjnqT%$UAFg1IBkfkm`wv>{4qGP%?PUXZWjsk{?HKU^2mBo;AV0Hl7w$nI_QTn)r zf96tv#n={~B7U?B--RCJ*E&jNp>+Qq_9)sw>GipfnaI@G&0#_$`jE1hDXNGAE>fbR zGE+XI1`|~4zL|PdN`RSaxD;8(Jre2m93UV@%nl+G=MenYujzmP*7umokPPD!21MTgQHMcu`Jld@}Gm{- z-b*^ac@1XLz;;pqWQ0Y*F;eIxl)rs598LP<;krp~(~)NsNQN!b)WwULyO#U!=aR{c zhi9Sj(D4R?0xXHesbg*ce{0zD8PKH{Diyi`o#BExiRUgCmlLokp0PFnaGsVyuMtAq;Eazd3`6 z_-5x`#s!N^GX<(7)pywlJ6am$_?ewV+le?3;&r5DN2M5yml}F?N~kSfXvWjQ$+c_j zkJON&pPO}Id!zqeiF^im^c%Ce(v*UOyZeDTSXtLiYuW_i?~Plsu}2M0m7sZ)U{!Rxr7rUTbgVDR~kX75yYUQ z?tOQz?>a*1=)J^Sz z)fU={_cgd{I8(KTJ>;e?B%ayrt8MoI>dJEg9saC4PM>R6?t(%zeoCs>cMru~*J%`Y z>u4*M!8(Z|?yMA5LIJ>$z}mbKU8UBVs!jqR_rsaMPyzQe+4UoK8*04q6@S}SrsoMY zs!~8=en86tTVHO5>n@ZL!ota<@ssxhSW-^#tm|ASUwb5P^VJqisQS9jQ9nJ5u?H>s zVfQRhKh!>rGW0g*#FheXdGxw}g5ZW6-s`Po2|i7=I*O}tq&zX4{GHKc;Yp&vm z92Nw5;s%I143I#I=Un3beg-83;U@a6l(+3`ANnNT~?HIsi0L zE!pALnA^NLFz8XAkVk8%xRn2(w7x74jn5}oWe4_n94CWs$U;ouV9LfJ)&#{>?U>S& zV^y28!hDWwhwBc5%d?6saHzcXn0x_JnsKWbd!A0$zbj~ax9|^1-8hsTeSUS*y8VTw z@?aU=^wK(=_CBvyIC|`_D67%djM2X+FrE3)+QF~|?q$c8hfF3XFBk=lfaPMTd5s(g zSdh=SM47vsos6~WB5SV|^a<$65uy5Ww5aghPM-RESVdRn>Pk{l4WFwrw#lBtN7_L} ztWqC~Xg7zpNVR3*5?ozg0DF?+YE$F#?Cp!01w6OW+1VN%$7y5q>VZ#Y9 zpYU|s^-~>3vB`v~)zqz}L2Umt{piO-#yN31-XnBDcH9~+_7Nb3Z~w9QeH}2=OFie4 zwsMmZ*@{#?WwzLsP(V10Q2T{$zMc4bFsp}2d=9Ehaf zi-0_c)!z+wcH)LQ`(oBM3Oe^edY1b&0$1+yPUGXj*tkP;RCvx0GirN% zxL0ka&|{*N+^;27o{xHU!`yGc0AJ<4J!IG>kBDssRSV7eQ@-@-G9t#f5x4}*jD{{# zLflmJ;k;YZLK{M(?B~hfw-f8>q;CE~N=vlanapdBL`aS4uI=jA2m~AP4O*MPVpCWa@)fRII8P`|&{Bax~Oxl=ghc|$eT?kiO- z7EFkVsdfLIL2Me!G{|2}$0-^>Rq?@g0_6`yXUb|~Z+ItK>N8@s%qw3jm2WJa1#MH{ zu`>+<$q%^NdfSS zFDrEGybsU+0{r}C5%d@i42FW*>2_QT7{qk?G?dlBc^M-Ks8{jRm#>Ebr$71>imT@BgNI7IG0yMZ zcgXc%fILD`#dW92NDC6I$ohAfW_dWLZ7H@GHKWcK2da^_i>@;Fpo`=e7S%P$z@ zn-moGV7m^Uv~NQuQo*hnKxXGW=We)MMFBDdTi0Z3SfmCW|5lHET4^ogk8vdkk@rb> zl*y<(B>J1j!mJ$I_w#KZ2k~zMsA08hKXLaHwUi=sv!f!C2@l=7q5%ucr^OVWV<`p* z&5WwZsu%voq?UBtpP@@X$bED9ew_48opc}%-;8O^e(pr#*;Sd+fhK z9;LP}t?H9SYGo*bn%<<&o?K^sXM(QlN|ZC$S+uA?$8QQg|w%wj)*K5%EW+ad(t5KjVb7UJSl0U$6Q&LIl<~hrC?(xhjuN zq60P)aOn_01R~5QOd4&$;hj0)uIK%J>LrLO2xH+Nb#X)#EXNqKMVYA30@xyL=Y`;3J%;A20;yzx%E|!YXOxv=AqcH|a6H+xTKkC5|HIVVfHhhF?f)nl-=5%G zm_4~+*-x?u&9tP&HqDHzWGV>A!_Y9FkSAe?*W4yqk!j4LG9TDf)XBp(P+%|^!!W0r zp^fcA=a`C$+a*kti{ZxB|GfDAfB)lu9QSb_-Q9*Tw(Il$obU5|oifNi5xhoTT3+OR z$<>u>Rqgj#s|+PAWk9e$na!kV;L}!US~IOP3DmyLqbdSE^t-KmhR`Lkw4g_pkShIY(4C)! z=0e;FNT?moYhYZR0eI~rpC^$zEMtR33F_K4BvT>)K!nx1%>dj+yU&>L0`)93JS7oX z9a=Znif)i7=ihqIwW88i;*RoQM8E&Cedc)6Y zliwo8!vI<}+L=_Yrad2X>MWsA^z+Jsw-#7J5uj-vR`ye9xL&yixvCNTcr9JtdofNnbX3(* zPhh$*zlA`|tXdDoyHWvMAjzmY4TVJX-LRRNO%{!cH+n@MqF6`&f#_57@w;1U;aG*g z@VKIm9ioqjJ${wbex}0~Q?mTS5Ny3{*j3@@KXIl)n^2w+`GE1!rqa9iM`W@0zZn9t zM`pk~$rBG}3hwx-MjJ3tNoSkDh9|+He;ZRDxTe4%@NL%@H0E+ar4+nl>#YJlTBjd51CIEM`YLnou?QOq1Wg%c1&g<0L9t3+J&ZF~rwlof)-6y`#Ri36#Y z44m&vVF9>1Uef(Iy=*m18#DlMJg8!-lm%)1xZlNEh&L0zTDI^Vfu3g00g?D+% z^gG_hT48h8<|X4y&^s7Y$+#SXVUejfNfkZ#kk?rkPV)3B@FSxO zM3(~mC9|%{DO8~XxqS?F<#F>`L)Vks$WiVW~i)S^{BV+h)m!y z7P=a^n*;3O34&y*C8Cfj;1*$+=eyY+%c+C#bKZR%a#EO+VSPSo*yNE+xkpKep5cjG z=m9+UPs(K9Pn7qsnUvN8;Y2bb}f^_ z#B?y8L@C4jR6B_nvt%TUr@K#0@iMI^C@Pg=kLE~W5c74`Vr|-SV_(l8JQ645T3@hR zQuHJiSn_*-L}KNGge_%cj2;=N@PfPjml!^Uk3d~J*rcy{eHVMlR{ePuJ`1`>IY)_p zJ`4$tYUPYEuVy#=Ksj#IIG#A(%tlsQ&3Fbnu`JI9Z;=x~+vmsBE52?u(fw|(b#)*5 zA&RZ8_13(zJlayse06k@z-WQtP*-nOla)a>`-)5w4eK)}i;p`iDC_dRA4fpRtp2J^ zvS=Z0KR!FG0z0U;uQ?o5gm%SGxY)bZ?v7}*1T9Ov!)@Y_Y}VRc5}At4Feg5f2d1FG znTjbv^u^cQ?rfaH`Yc@}tmjD<&G$zcTh^2(8`iR2D&+T5q1g6F`rFvYiC?+>AZq_=*k(n)#%UPfAO8Z&5B{DEoE}h!KB@BzwRr;C8!_s@D ziqRrkb982On5V-gS;s#5@l4r09U7)k>9{rmH$&ec>ND$?-Y}<_(b7+D<)*OKq#ySz znfELuP5V+Pu`J>)&$ljb0*s2!bDOtiK<`7M9I2pg{0HL8Bhs|&ijoz6vO1V7@jBdX zZNtp;d6{ZgAhA?%ErVpbM}G8OI_SLk7jZq{=|u18fI0?t1b~xo!=mZE8}43#OmZ2r zkvd-l-S0k?S!S+^28JObJ*%KEbt5qp4@o1@Yvf?`=$wu&~60EY49S!6)oG6?2d(juuxQ;&LVs&dy%DTqR70dJdPI`_l~7 zHf@qShj@3|cI=O^_T4(J6rZY7^7lpoBr(KQmx83}N~}&O&;0@vRh&B-d{-bs;$5P~ zn)XTfJg=fqt|aNQ8st|k@beM+S(v)o+J+ENYbskcu&;Oym6jWwhqJbh91o^k3w}GX z1|h@bXSBUoE;`~a>=ziH5iBmF$RIvo)%$?fMskDEiSBYiod7!nRpA)zyyA@tuxpuQ z32eZ*7BF1~orWY;S{OksfPoXq*_|N&&;IW^j_xeeX#qb>ZN9biQBJ#C#vrh|X#AFQM6M%DxA{PggtJjm z`-x+xuX0YWd7=J$69Wl8)EQd;Hs^PDAlg?6Z{I>@QPqE9Jy4w(JM#K}-Skw*;skV? z+IoH~Ln$HFFrLE&a3ubY%*l1(zPE&|m_mTPmYcg`AT4Ec=gd~X&S^UULH+msBjS~c z%C0q;K#}IMK3;>jKzhOZ6r5%s0l`7T_q(e4(0Vj&+ z4`Y%f7F@GlicsmlS5&?XPw53y;~R07i3%oo{gNCew=;`|FI~61o++#=dpLYytGDtD zVUptJgDuH>#F-RoWU}m!FdUlu^rz3|5qvvt#e}hj$-7=*-bte0g5O41}UPlv`)dj z`@LuYeKQM*OU%&0*!Z*zFT)&lP@;X=*!f^2U}|>pd0(~2ui=__&iwpvrIh_WHhp^N z_-I;Z3dQ~nN)9kR?&AZ%d#YBvDF~(pT(2VnWYRnmB-84M?z7asooH}GqB9cqL-57f zEqIy%YYZ^;_#QiRTr(k*+aWElafRiD+|~;CQ8e@NGfcYiKr(|bUkJrEn92hvlw{Zw zGqr|X_%kPsjQInu|xgzRhSpP9;&o8nV}A7iGAU!UEOFK<(Nf#CH?u3w%21minp;4KJJ2G^w7kthfm&_r} z8MrpgY$CphLX!K`2S|t^fTv92wpa~=8+*^WZ?so)$iJH-CT{*^HK4GXL319J8H6vJgdG@ z#cCfH?R)_F8hz^p0-vnloD*y2$oJUp4%Krtk2sXL_H5R?3YP(=yAu>rT_}-@auTKV zp-9>UxqQh6dyYIwJK_e)d!@+6nnD{xlH3S=czPW>oL9);nslM$qLQa06M1(Q zMT5J^XqHWA(0dGN`Y9Wlq3LnOn0f^IWriZUKRIh9?*KBbZX_QSP3iX~y138jy7^_~ zLhTTg3u>vWIU2R8Uwi3+rm}wc3qzZHpeyVJ9?K6WCTLpoI+H2w#&Ds*`rgW@2xVc0 zuo_qHbnFDDdOn^aay<^SMZp?sIV=;##_D}^`kth2o1d~}nUJ-dmd!n3n&WB}BrSq? z03bInt>{N=+cL$KrsX$gTb}`%fE#O*Atp7of#0qT3Zp-mX`JBbXcgU~S68ETaydkuwW!KHpfu$8E+&67IT%N-u zyRswl_}}etocP7!N@n9<+}Y?*zX)c=;04S!cQVkgM&Wypw9RoH;9N8H$T3&EX&pXr zEwO6XAOsI5joEC=zTYMTaef1kxQHs;sk78hzm}! z@zMG_PXG+76`dU~X_^2i8R!>q2*M+?X&4!Bjo#eJM9^l;w$d3;xbrOV7x+gQUE$^g z!yTq-jK3iYH)fmtcl09lYBuPGZ{R6XF6#dSTW8R-H#3-$zy42@z(n-g#4 zY-SON)u;_kA&fpV^P%V9*wSYkJ1tYQz}CgUFgzALw2d~1%S>{j1iNb#0EvMs#p(sQ z62^aVA}A{mY;T_;T1nikWaFJug(_%`7Cmi2A^d&~E;ZUvkWSoIFD)O!FTkyh7ySek zhWWVGSu#- zjY_T(qJvw#x9|Xr7}0urhC>noKoQqE|8DW*atRNbXt_2FgI^*$u#GaJG0O;KNei8g z33II$TMYn-00rkq`b!Mq7X6=mey@9hnyfibN80Ks1h4@-XJtZ~@HSDu_1TMEzn6dc zM236I1L`BPrt+a@Q?&Px>qGw*tgRV5e$BQNJ4eR`oU7~c$)a0K^a0)JMz*fcD)Qoz zl$@xZu3fPZ3xw+(=uY`^Y2ZxH0O#n!4aCnCUIxLb+N(`CPR%rwvJz{q$8<@Nkf|ao z-!NesIYRG^VORzcVqp#Ow^0DfV~_j~u(AIB3XN?e=wv|CI?sr_@7iPMT=Sq5p}gMm zfu4+;n1uBIp?9fwq>Po<{%N|Z(IgZe{g}@i$hRshXMwK3U6SYeC_`Bg@-8>4^fk`U z%=Y8KK;Nq7d^P{DGB4D5X z9FH84HB4-IWCDh(@Mqx9-?H_{j zqDKa0+LmiiidHgf4-!#|-@4Pi$^y_eK9_EX!!iV?C;jz)U(-bAl{gL12I$`a#LI1B zaY}0D8hh;oV_v{y3blZy#?AHgnh(Zlo@1)j<1||AX}9uizJ}ByV;c}odFkC|p1&_vA!L2Awz)U35KE9;BD8!d z`DkX?W^|)b)=4*dhW--*1lOyBXnVTdi9)h3GKM13N3^=wSePkpnB;?_;*GF`+-hUlGwTdvq zo*acRt;BpbRBe4FTh?P3nM~)Q$lex%#c5L+NcZ>XRo3_BMl%bH(r2lN#&g_se6*8~ zQ`Nppl!diwGDAgqA2$SH{=*0=y=RB(>n_+Llv(j~FGZp+dk1&v507%3`vP|a!iS2c z0H5?Em+FLim_@ygRM}j#fZVjQ-dRs;q4ik^fR()>T57B(dY>-<$fv*m5#pia9*E)G^Np}X-|!BTbb zU8F#d&IX+U9yWkJ-|C+?k?N*?du}do_^{eKA}U)FXtN)3)pLtx8gBM#!^xTV*q-~a z@9mQ`3oC^!2-~pzvGv4Ft{uY*_73AfH*?!6)S~lOep%IrOo$%x$e7s?C)}7_6#h%# zB|69QBM%sx23)06jxaM&T+P98Ls-CLDKlWe)M7WP0G~I3v}GgTdGjr19p0f1juYyi zkd2T!FQ^)?$eknXA!*t=(O)P5vm@84MW@N?Bp+_h>qOm?BOrGO+d$dGRk;8m*;KBr z8b|jixStqW&iA)Zw{Y$};XAyA?#0@}R=)1Pg4Dau4WfO;2kEzo?#+jZ1cLE5k%-CM z#&L}r+Mt)hvV%B~8k$EL>`xnhjrf+C-H;cx_W6%P`A@t~E$8M3Vg4|yL62Mrhadub zt(bdkF!0iUcToL3YK%yIUY{-nRI&Yo3@^1q(jzT8rMHkuh z3s7MEIoff5fP_fCi*Sh$7kR{uRVkDbWHN{7E_xMMRJ=`n5F?0wYned3>BtQ^yLun21mr+1W zZ8-+F!%ou(*tXJPVsMUWS)voAMV%|+%3wy^^DGGBE3e7g0&SiVJXx#-*fey5u&&*+ zEM8poJ>9_iRDMTtm+tHBIuec6@SNX?)r06@bqN|5RU~S2UjTpnEq@l=7Oo=~>FMw^ zjv(xu+4VK^p+exG@KMA1lU?2 zjY`o*(E@af4Br@3EvGnAsd9l|*5h}mOIe=`Uy8!Rq;9~FB-#u5CI1Fgp0^*My=$g^ zi%8lmM}jKdiK~7nE3*@UI|$TydGOzu%keM~Yup3-I%CJhLQOdXS;jZ4QIlH48kDgL ztx9Md@o8{)@0fB=#z(2W@BrcqN-;O8i6wH+ORNS6{!LjAU)91^zCb;VPN5+*@_OQu zFM>M3j~7G5*jM^n?6BE zNgjI-SzIvt1zuYN&qNsQ8eH-8g}R+{OU~ihp5hFaqdA z{qS!P7!a}<2J#u{;T}qhT;VgaZeM1wT-Xa?0dK7lhcR=hW%g0rnKrOre zG*lY#r8&+M5~95`$Kz0DjdlVPan9J~036(PfH*Z3PBlEdP>sB7u^?VeeBX&B2++C; zB)N+B1+GjpEd7CKcVoGMQ0EKXPn-0koyqs9;PPSGfN3tnj|Ha(!__iaTJ@^%*jmhn z)5?qX!9uyQ45Q9>N{_NYR&s0v{ppT>0=A=%5|=qxZ*(bV?4w>%nsCZtC(KN9H*++&FOa~$BhSAXEWdT}vrYY%7#ru2i%TE&UHQHs0mScA ze+V9&2Z#HXn-oM}|2@QkZXJ=yjfvn`oDJeqfU9W)Xu@HECcGPd3XE=>-5D@fj6oX4 zWQ8e@_{8dj^3}RY>`~=&LakOfR<+fC12v~<`N7^Wu@F?$74w2YbG2^^E{T6t!7chq zsuUEmivG)CY!BC-co89)Tm83!UJPZ@DU7ocU7G|0=WMx&0g^27jBc9kAz z(c!u$xqwqp)E!aW*`iA3^I9->XG7Y!JyD9}BGxKX_`y9R^s=p;sqLd-g)U39AoZ(% zgK)`&$GMD2tdwi98yNcv16MhhcxyEu1%=`2YzPH5ky}^|emMf+=W_@wQbP50nC$!P zUhtI$Q0@qa8ypA8q0LF+hLGe(=sy`SMJ-RVY4{ctfHA6i$Ec(`Y&KwI<9PkdCJDjh z(4TH?ca!ayR+6gyh zy0L#wZeXoubOid^TSE-n71oKgLT-1Mu!eKXU4Zy(hFxC^dBp1V7(k}Yj}Rc5is1^r z9ALgX?=w{t>AeFTKX4p-(&UWY1T88A!pRH0vPRx8(cKBlNT^N-PiLP`IPjPX!0ETa z(E_;4umzWB!;T7X}s)himGFY7A) zqofb34_L<0iTI&JFv={~OB;si*Tj{bi?_$&6(w!eCbi$NMo`&zPiFP{nkiXHO`scQ zQjFVDm;K9hq=3sHt=#Qpr4fHV)z1ISR~^RFlCxmW>ui~z!U_%U79;7X5AHL61x1sL zMWP!se_*iR0P2;g3Qv4=qh1FaRV$~1r`%_N{BJ%Rof`vWWVYa z)tM0b?7?i<#niNgXG{9`88{VD5M6q`Qm8mH5>j*Ax!RF*1oY}YU-aVo zxPP`yw@!Nx<8=0mGeZvuo8}@Y{+dPrJoFBu?$2-FA?cMOj52fJ;07mD-eNfJC4TNz z#eoHO>j%E0nH{PyAu7($K5d8&NlM)rb`&+lC9yM?`YqV1wD9MlV@+~*>r@yn&W$Py zdd-FmqizR)frmHF#PXt>de+ULY_aKCB~hFi9J0jJQ~NbD;R!BhiXTDk>h zg$%OvsgTr912Jr!tp@==~iEWJ~t}PM@$e!}!uW{BrZGFRGgY-?GR(2x!QH44X z=4Z_?i?r<8lUN=#0=g-Kp8M>mPsOfZ{5E1E_;be>bAG>&gO_AYgX@D?JeMH;x}x?2 zM6dStB4qwXlUK^Uvk!Ve>4pBrm7wrjAC=vaGzyZhD=JQ6mW}0RBHS?vx!Ob7b+gw$ z$Gbyh{lNLwEh~86c@Tz7{0*&(iPM65?0J!m)#)V$@H!{qU3nITz~CRWn`|>S5O9vN zzQS)WGaBEdRC38cSQf8CuBdSbmL97ecBaJr+mB%t9fD;tv^E@Vt=zffc%xc!AuvX@~n3M54 z_D~e~GmmEGGK0uB-#wQii_L)w!c8z_OvTVDH!PWqmn%vnw{a84e25kOaMERH3_4PO zL)r!js+UY0w&hW{3TzIROWU1Q#idQ+wN*4}V6(&;Lt{(|)dRSPzRaW*S7I}Om1&OV zJEKu__o3+DOaFxD?UX3-mM)IiDLd}rf2iW`ng5pAALiFRs|fx$5OHls!qPZ=?jKZLg-m}K@8%+0iN4(rPXB!?W!=BbiH(4OtZ z?`;038Cr>9lX;b2pqsdDHoW|rF6BY+WUon|r({0m;J+SuTY6WZP(1&RbET zRT4}c?Gs)@x~Rl>){f{&FYnVlp`vAnU!*)0_7}(SEG3HY%5iYX)48ura$yAHIU($8o?N+ ztfthi6pHo~Jj-1!PyHF_tsKz}EUySA9Kv*c6ax6M0WgmxqBiJ7iTD-5!)nNmffW`@ znm%_L^6iYggSla#3!qWFJxiO#SYN<`12IBp0F-@G@B@^gBd;p$w|Z|47~Ut>jxxJ7 zlG*sYhJMctA-}`VkOhP7fW)o-Dw9-aiaoK3HQVj;=C}--(lKA8_Y5g?x2#{x?EllO z4sG^n1c}scRM7#hs!O0=51r|kJVeRLilAnl*^Vy;Ka7xy^uN@9$`bRCxUF0O*fz=u zwbuFW&#a~urfBiKsU`8;HEh4NBo(6{Tf_MYYm%eXD?5eY?RE`PBG#gLSvkb}tb}IQ zvan7)9oJD)F^Ilg(aS}_(4G1m`_F3$dN2P5%7aEZJ(<=oCp$oCrWSWpF7*fDTMhtH z!v>Y-Rq>TRt>`WOCmvyCpY=<|^?iMWa4d__Z&&Q+uGy6@gJ(p1(bfKaT;;kjpG>M% z3Xi)!!S184r*jVqRVB>+r*V&bd6etZFpm~w&DeTVC18`{Y;OD#(OWSX_}RmpOWZ}1 zpLVak;o3&OEW>}EB;GiRppr|V2c^wK^9T79PK-=*<@zDd$G~<~q7zr5Z-rTd6OfS+ zq!ZqQ4C{j~Ib7bTC;5#xT=cYMgubxw?tIUu^vZl|ro&O}x<+4vMSKKXuS>2DO*#U| z?ju9jRD06WN4f5pPBortW#>H0eyijrF@3~|e}jB+drGK`={EP>by|AKC-64UQqDJb zXkLAQ3fr_8VRTsGAyz7)dJpi6Kd<_k=|{gW>Bf$s;HhoQxDjPS1797IgFEmp_WD$@ zGbh9D?z?w}Q}DRR(#|v`6y!a`DqyN#YP`>fDOkBQwyp=R4G|m}Hu*U(p30b6&X@)R z4?w|TD$e9B%gR&Wp177GKzw*JVVUIBL-(&GYIZ*H5?eB&P%bIjg55Q~ zjeg+KuGKp~9Hd^DMtW{M^*X00k9ujAuI2V#m+P=0!?WzMcIS06B>HJa6m`YcS-RF3 zG7SE!%2*{UH^0+RSLy6Zrg!~F<38Qi+k?mmZju&px2zU=OvZxJ1IeW3No%CMFp~S) z{L(sc<=>oq%~O7U_y4MUdTUmryty1K3TE#`==bT8&fR7qO9gM9Hk{Z&{tDNH?P5;^bOcByJZc#4+T%eqQznE^D%)u0aM$~DHagEuh zx)w7VdD6BP8AfLMxKCY0Pdmy)h|?F`X^8+)%mc?kP1q$IlS~BfT6r#hGmO#Tj`AGi z46weF4GAa~nny*WrrJ6lfL)_X|LYT_^=AwW9jv$it4yT2DX2@a4NO8Km@=<+&0%&| zURzH|@^w?qlYt=|r%kL?kw|+Chp0Q9OUO`Pw}NgM?#14!V&UO3si5((^f=7#`8ZrT=fD@JY8HE@hg) z48>0C4%Bqxd1^Djt%3-K#*iacjkzEG=YwFRi&QKaAokn6l{tv9js*8OV=L2VTNeu7 z_vjVD+C&hxu)j8?ypLr_5OV^~ROy&RDz+RMW9Z9G!$%$uMNkr}A$%#UIxHB_v=f+N zTf`y^n~=*?GcW!xMwM>jTD8Qmd8I^;H~Ti&ad0{#*f7Gj>rRE5XRi6 ze#jdLNx4q0&L3!Js19dm((GY@DmfD0+uS}UQV`166Sy`!P74j0cnUZHjQkDlZ*7&r z6Un{XbEH9KmT!WnT7*mBHpkJvGR3w%62VXud?pjP;(M&#o03*XSTgnPeud;>s2U~g zV$s5|<>F%FoCb20Qyl(RJE zky9bLkAl{5H&kXtTFKHG+R|`tOkKF%p-$KicP^fsb)M{c^w1n8hg~?|*v)vB;*aDM zy3U(43;ep#O#3#MNt0XvjU9zE4axMColwy?z9`y{$pDiZTI(5%r%i?2YM;F%nY#uv z!=L6V7!;o!d)^o(YKY4lGHR?h$HChls!J7h-sgAwbbFSwRtHHWS4X+2;ZQn!_vws| z%Aimz=PzD2e}pdh$R6*#$eQnUP2Pyj!FZT$ulx@PE4n?xhjh7A7f{^6{bDUM&Ok0P zb|8|nTbT~nGS6uRmrSnJaW108gpa%Tg@G5xgqVy|yXMF{7+ea}pt{ZKI?5XYXEf1;Y8~)J%%#|#sc1B9 zHgw66H$zYv(*JdfDXkKIf9-uLivO9IUYBY81L5Ymqf%%lPYGgksoh^hA%4rGhJS)r zBJkiWK8gbku2Xsl=`bpoo$f38CM3|p@jBem{p08j;JTG0`hA!=TcMd=Hdn&NXoN=T z890Tlfu+Aw?=R=Td`S29R623~fpo7@#nMRMm;-YII>TTmyd2t90oYZa3X9zZ_lC*u zxxo-?n5pF@eA$3vm{VxT#W_TYHz^h{>x8{KZu*8fl7&DZGrYuD>jBOfo}!j>rLQI( zW~3{>^#1cB$uuQD0LSthBhVpt6dKNrGmv_VJj>s84w`BfsxiW3xEIHD9DNM#2LE87 z%@LG`=*UYi?Z?ADI@5d}_6Lb=hf44yY!8_-0Ws&k>)HlW(q2s#g1YCo3l&Q^H$Dkg zif<4Fh_j}{FX(>YoHvA?OOJ66$~v@wRYLpw&XZyOb9QN6nIDJ20MrR3E6->sgYJjH zpw>ggu{Z#LJAq}eoC$$?qfHQeC;Coj4#eQEf!w!sErXOO=DT@!uX2h+zmGl`*e(}7 zswO`|g=)dUjG9QSX#t9zo5&K0(Xw6zH>0FHmoM-*?jlwMRrVOCcc26sN2gJAcoCT7 zX4-3e;OBbVB-w3gc^TO;^zdc4spfi;NtUn~2Yoo~O+_JutHBbRa=0MM= zV7E&ZiO>crU0Fr@LP4)mF+HPaF2E~)Nxpa&{Y;Dzvd~tqooK(^0bjTS$r7j#AEf#= zmPa{%LZ~z|#gE{>KHR$FAUZyfFm+X+GSw4TY~4S;eATp`JA%E=6M$gk+>ssUyHkCY z+}T})nT!b~qQFO7;==WLGrpiSzrk9k$}UBe%NZQ?`R_)%|ZKjYM>Q0$*}09pvD znp98X@BWET!b&x4&ZAJ07=~+E-LE*b?g$o#3!B(80NWO08|3KsH|CRjD~r*@R_}Q3 zb2PFnHXzIpTU$18Wav6KgGaXm1jeLJK{&0PV@iE&)R*;xV7YpNAPK#!&I&TPzXGNS zR&KLV|Fi=5!<};@pyaga^gmk9MRR_ajND`5G)I_9VstpXQZyBx)YIZaz1IDj-~1t7 z<%m2>_oN8mH#7WY2!(*6?pqzYe+`O;nIA>yiG%h`B8Dc`>_;6Csgx)AYp)Voj1+mX z*qBMoo!FO2{R=GmL63`FPvEnAWK1v6%cJ0&}SfBEn|)o71bs zwUmXvPJRH{lQdGpMbe0kngR?=>mK?m7@ zXSu$bZvAo+Za%m0h*_22e~PJf<@2sEEdzUFh5~H^#u@b(6qvekKtj{jre{Zn>R?P2 z*HJO@WqZbo-x@iq2dOBm?=~+mt13Sm8T;F2_gM?@r>6SPVp|Rfq#F?K(cfM@NUhYckzR-j2#A@NFSH{HYvI z*dDS^Ahh5KC}>Vg7Wm|l`~;~!%oW4bKFusfFMo?7GLN5nD}ZL7#u@2_F{ zT<+XHtDsQ3Cy})#ZV1aPl7g8~q5E7^{z;!h-a($U&L7wg-;QU&c2M5Kc&_uQrRvl4 zPuK8@-t;+QLk$??(xuvzAd$o10`d9{`5>nITCUiRt}{wbPxV9ZsFoNqqLqcgEKVzj z?i^7L^G44!IdApCS20>V@NH{ILR`YLXyhz&7uG9@1E;_v*h03XeP$mop zucDlHFtlls&KMqhKuug1`!44o7MsBoQ*M}je8?SI_W?*bALg6C=bRGDO3X@eYC&bt zQGxK)o#{&Yq37C*4P36UP6<8f2j5_4>}v<92m|@9(-o(Avj{^A`aCHi!k>vo-SfSw zpT8*2UE|qAEZNDFxIP$A$pz!AQ{AU~(RMb=*dh{95u|;GlOCcjjCiC7%g*ww%tOTr zZwLqT3w-%OuegfNjqXgk8sOvcTm;)H+QEx*sb^7?SU==WMf>JG>gl< z=#PD)kbAVEcM|7NTR9!D=V&94dq?Dh5iDE*S5hbzZ>PbinluqHj!^w*MAkEeXAf+H zN3kz2Mw48{i}Z(?#rQ645Mjg{_hqPqW1GU=SN2p5BIi@)PA02!@pB=R?LQe?mE1%< z%^NkHKgQ@#vJuBkan5ogmk{mJ>BIZLDl%2uJ|{FHp296pysBNox@@C4QsjsJY0&z6c zIv&~6Osl^1G!An(z=Rbo0j~KN%2iKe+meG9F0*85IedLG^oA^|biL1Wp6&u;QV*X7 zqEdj`F+R=45dx_UATUVVQ%>`0^7w!UzV>)U#jjH-NQZX|dP0fPK6{a(A)QxShh+o0 zygC`in+;;fuAT)wX(Z-n=6H#N?q*^eQMe~xeMxsnlQZPlN?%iC@j zzJQ$+50o9HLv>6rFH~rODEvtM>9dK z_#t*M4kN3tT;EShI9gA%89K_JO7n`F|&iNc)(? zA`vu(gklf+T&e&zqWEa&Qw6V-V;iO&I1-|gP;u=yL%Aev*Vg(r4~p~4)i z`(UAtp@7;qkFg-qi~C0*a=Z=U5ASg43*2~JYWtK_U+&|p>Ey50ac)d_$m}IA#lep6DZT3_6q>LIyFSSgG|Q+X0wGBa_A)uD0p=%O*-(wd;|cN zk7Ci{E5g=eUQWPheA;RG4-*SrKsF5m2}Eb3vMjoj0bh)ZZ5Y!F9MBPP#yS$H-OFSh z_A2|j-JIK4vkV9NVVCLDzV5IYHtrMsf_$IVD`x74&t<$naA)o5*~@uuCHzO`Y=&-3e7{tUVoph0oW>YN$NJw05=ETzndt4Mc8Sk)aBm< z?PEcp8?H!J{^L1kdmZ}Ayz;{MGR8Vfs+|}Qw8ky8>$YLjKU|lp`cbNOoHxb(lV0B- zP-5BDw>cAqS;(@T;bZ07zjHtbZZysw`wBbQs7f;ue_t;?^;(go0NOb8m| zU*F)G>_@vAjib+anmFkCTqYO} zMu4@kr+m$$SA9)UF2iTL0+Nvko*}unQaD@$f%olEz-J~CKSNvTTk*3`J)M+Krl$)o z097-IFgcTOwbKqWwCP$X zfgZ_J6;iFJo2wZWt#~^r;LY8L*@Z%-5zLU#xzu$z=!$XEBG?HmeBH4*dUpD)FpcTS5e3R zj4_Fb{~6b7{_}NQ+nqV$-t-yD5Hk#|5mY|In;nQ^aVlz7_w@CgQ{6JRW2rmM0U*hi zi-3zgf#u8ps#CDDF3TB#1GYSs25GU!@Y<5;)^~E~8xD86lE4ayo96`*=5VHYJA*w< z@!uQ1y}nejRG|ku28Pz}nM##q3{c}{XKGl>tozOZeFoa+;C`r!z$8k!=RGXAF-V0+ zn66<3`4B+u?sp+3$}j#K6gQxn9PRCfWHAJ!Mqu#Vur0Vll~97Nubz@b!0@T79gM=u4F;&laT&_ZQe ztp314{kqPp%=(ol$*wo0F5=nVyh?b$fn?eP#Nf|ER`G2-LA#hjd)FsSbJla%vrMfj zZJIO|0`=Ci@-hP5;-dl-PlP1ppc|?@0pX0np<&zH#nuXV4px&|(Kq|BgrogPxT|Vb z1CUt_(nG%nHC0LFMmB<@7kQGE3{4%g^!H*d?$xn}%aCn4cJ4mt>tO{Mw=6MB?K}AH zCWx96&LyxvkrYpuGZBMSJ43Qgu@?=UdsR_UHc*4uZSDI3W54kRw^5*6u32xL^d1Js zfdc~Jw66>cBkf73lMk((od-?j?UV!#OdKZ_hIUbLCkTO;umA>JjVD>BK-=2-&c)$f zTOzj23>e`;3d>@{g8D3e5-JRhdT}-X2dkno^TwXEl{{LAi!?J3?BBtS-?z3V2JNWW z)$Pxxb&blZ4fkE|gKgxrqV3Lo+FT{t;Q$q)|L|eMqq8*_5h%Y?0rDQ`{5Fd zRl^9)6qbh~Kr8YSq4-F^*VXzQG?_6l zxuyk9QBN9k0dP!)>tEA9a4L^%f)}RUvw;vvS^3K&DW*1j`CGBrAB0hOfEnl-y8974 z;sXk3;7dYMhk{^8R8$`?BN>j@RTymzn_h<_!cZLBP_3!qPnv>EO63D)Ap~t(s8y|a z-0=V)D&_}R7XfEcD>|5KDJA3;0~Rle1*mL8DnxWKodS16S8diL$1wdQHSl(+-FA3E zlLLN5g(9QRc{+v&OPO2cZ7;%$kZoB#u8|AJ8L%FNrLsAzF`(0yS{6u*@P~ z(G{W6?-IEl(q+tBa}WN+`O09s2`kRs+`BZo%^~Gj_qtRy=VczF$0&vs^ZzU~T&1sN zS{K5roeYNe4aIOrNjx)<;FQfl%0|14yu+=>%wI$+d%PP(uki0OzRV)O@NSeSXV0<_ zeJLxhWJPaNMDIX9INx2x?Vf|{ttFvHUdH#@=6y+A{rEmQuJmXn)WgBf_-n*(s@;4? zUjOf6;_`Lta({Zip<$#m8R)LzzOgJo2Y_Sp;T{*K()FoqY(#4H-n-sa2ZR2Tn-M?x z65XbLdO*G2;J+BLCuJ&Y^;0=owx(6|iaEx^?yW7zt zf>GqKAw{DJF(jfRcxRq_IX5Zq^?lo`M%msr> z%IB3YJs@KC8c#st{e0PW)x+BPm`=5jb1j+lq$>rH?4~++eYoA@qlWHv zCUv4ca8MhnL3@Z5D)(SON%`)@S-R-&bT@svvv72lbm7L-82A-$N>rTfcooW;V+eM> z6Qy;tn!SUl&vhbe0=j6JRI?tNozERqx;=C;r(lVwW2v`WIilSBCXu&TkaT&ZnHikE zoRd7{mCvXxlMN$@Wt7Gxvbdj$cF2th#|*%0t?4bh;2$aQ4)S$&l(zf$= zL-behhur3se?U%(bfWZ4+Rr4ta6)+luGW0Ba~lMQQ3+>L6LtD(#AbCY=gI*9s(GWK z)4?%GvU#Nfyv^=%U2xN2gfZK`tje=^@6?WNlBwGi14*J)ORbaU;)hH3H+vQUA94`C zGg{Mx>Y=u#Is@t>_{#Mi!KJMCNrAXH;O*<_h(k@O@D6N$^3lcE-|BT>pbV5ms@HaE z-Wr0Z6#5(Phf$($J)XlI>e0^BnFB{laE1w~rKG;M+WrJ^FZyYLJAeJ>AfxO1%_RV2 zW@KC_(N7kw`ZS)tQP3@s8m}Wfb2vtsbh!qC!y-sGf$a{MT2<^i#bV~p0$$Y(Buq!V zDLva~YVmcn{Rh_(Si_*=YljwA&Q~1i_qwoAdOBj6z-MaA6sm=F zY(Yz?uIe{rljQ^&S2hr*@%m5lB-2|NxT_d`bjZ-*G&7&b*-gF;a1);PU4C8_KTQQV zR}O5XsPl!VQ;)Jt_(j191o<(Uu>p9uYekk4y{Ia*2{(2OE)06hjyVOerk*>1pBw+R z{u5X5)v>R70|`yNfh^zI&pv%dHuL__L10@D{;A@$BL|EA}Gks@UFZ;xe+eKtuf3zcvCDh)1$I!sN-%M zs4y6gk*L$u&@6Dc z0PXaB)@ARuHm=vM2+Hx;H=XKbahQSxtyv#Wl#qoDIF5gJU^`VtzEKMUsz)RqWt7?q zz$m*BLJNo9lA!BXyK2l+v+*Z3D1+d-8+MA<(kSFIb6o}_|IhqF+qX65q{)&;VU*`9 zRzg^p94hEutl^_Py`Ei6S+2tcbR9O%E)CqZPZ6&OON!8K6b>XAHyO9Dm4;y;{6=Qr zJf`mD(N`m|3h!mN2oMc&abec_>mso>DB>742@=>Qk*0%f5Tpuru=}oz8gl$(Fgw=j zHU=(8Yxs7_@0^C=rZ{Q#ieK^Jw_>8KqkcK)K?OW_+jthT2iTYqfd_{Gh_?hZ(c;sD z=;CR+=>+3Br+#ZXrmu)0B<{Cn!$Rb~B!iz|7ycV_Uumq+E{ry3v53_me_zV4$5Vsi%M%>JAM0)S(Dg&Xyv#y)UX=F{sK9(Ii+ZJKQswQ$)%7YCo*BknJ;Xm${9&2I7HOS&i_mrZcZL|R^7yVLC|EL`^E zQ#tLg7uPJy1Hr5GzO`jpNz{FJ>zT0SLhOI8!k-FsL+?L`l1oMBrel583uy#))}?&BTv$ z2f=q;zg#j99eOrY_zOHiuL9OK$vft$r@gzE|FB{RMX1PHqQ-?mHhXWT3oqL0IH08- zFL=^@ixXV0G9Y0)2vJ7qDEj;B*=nW=? zsj#VjWonm;Ac_!qo!Y6xPyBs8Mr19{o`yiXbH!3oVhS!zI{?mAD%C94FJ8Ug&TEkKSuPkcdK{Y#f)?|c@=^g_BH_9FoqOT|AGWO;3V zy@97;ZJ|JYIk6Opr}iRwDcC?NU}AYjckaaZvRPR}j&RuKxlTQRAmT7=PzkHwH5U5d z>@iBylL_~TVQUZRsCl=OETgP%AmRb$KaOF4j{7@MpRn0kq!|xvs?d*!t?Q#mlu=e; zO0PBH2^}Eiy{>xo$svQ$PtH%0ax=eQK9LRu8H=i-f9I1Ih{O@mw;22a1 z%aRabk=|O}mfi)MtIqK5Fn5b1#42KJXvs(U0xG23T2F<1fYT5#XFDRH3tP8m!bbxc zWy$wP5t_xgm+46p9uut2K}mA*E8JBPjw1f%8W2JUp>`q=v#-Z5IDaPtWXQe8L_yLm zb-8y0s{p2d)Kv~EXJJ26j@G26B`t>I^qG11zV5(Kew5gK%pTeASPZ%>lh7j8A)+HC zTgu;^@%avVcS~olK;IUf5>48Z3&F_CxoN_0W$ogd98{#tjTn-#GeWiA5OsLDusB=j zvL|TA?ig^!uRV^G&}PhfFzvWZLcnYXnq19fr$oO^H4jda6TZRE3M1 z%PudV98W5Y9|aqAyK2i05{vdue1ICN1lh=5YJa}qwzrQ`)Hb0_-kwJ^8Zf`GEUBe< zAE@&0w08xB2CNIWO$234d7#8RhlH5%b@Ye-V&%PiY#;4%8SmAtwS@et7W18RhujJ-_2b_ec@5JFHJY;OZz&kIu9-=~K0M+HwAkUx&if4Qx2JWC-V?w>Ui^ zWe@B)kAGE{TZ^}+`<7mq-i>D13miZ;oSkmJ#JDb51`C}uh+YJMW!5~FtzB`js4h6C z6hgIng>YBpFYKkJYJN*RWgYlCNK9F$`f{u0hlxwM(j|>55q7FBFMUJ$O=8jFl#C1PPVQ=LEdzNTl3( zN=0i|bGlR#O&;PKVcTM%QtgAAVRa9UaFNz;g#hEn(BD`e?Ebyp1r5RW8~Zw8@9GZX zAoBwU>ySvj9K9*|SQ#)vn3|c?-D$W=wXI`H88cy_~to?9a_t5PT$k0)T33L6N(xXMXsO|up3grJwYJJ8ru z_KktYyi$Ad7H#O%t_U>Vvq0T@4S0~jEZ1p6cY(=b-@Val4z1r11+yXRC;2$Z%D${1 zk+*0y0bdcYFQFHLFt|CnAF;>w|Gx3!i!pVgiXJz)c3#itufm0PgY{fog)#=q@niWF zhhJPR{Mn4@@-mn-H08&B7OhYE~c8HVWQ({*NbYSU%OnicgjPg{h=biQ9$t zG11Sx4fKNl;}?W5G? z#D7PR!h!wkw~_R@&xwC6xojLPs=@{NOtp1dfDpweOgu!HORI5)DCJH;8@&RB%Yt<7t+PzGN!H~6H`?j?U^=Xd2rd-!P zVz%Y9(2!37?_ez2SD`rx+-UVqdBndkI#Z%HmK7Q&St zV}V=6zOZElZn3TEU2;%}xk4k6Kikt*rWVbTG?!zx?U$P!*Ir^BwF%*Hp*sA}L@@=D zD@y>sTLLRc<>oE47jaH#D%KOS3*mz4ql{RfblE;ex@Y{{`M#`WN6;h(goAzJ&X>7q zx;e6_aF4KmG6KQJ={-vDh`hf49S_FqJnE9P{d%tJD7|NrOy)9fel?pqY$EcjK`{~K z>sE|}sYV&~r<|lbD6FZPg732Dmk+p+S^P&x>tb*i2ige90yu2avW(i$gCZepvm)ar zO136_9Q$d?UZYQn>%?Y1gB@eCrjMI7VBgqgcm(hSw%m1d=^C1zPG2sL2BWO3vu*E7>O^;RRGjWo7<8j;g*@|Tf5g)sMQLn@>Yx>(2B;9WBds1K6RPqz|M+! zg{_0v)~TcbeOJyRnH3a)n)ye0L{D_(7A%~7CtcroaM-@wLscBjd{DZ1l0E0oL0_$Vf_Sr+p?x=^EfqLoHk3QcX_b?#-R{Bi6OVka$ zWQtMqXfC-uN+d0#Ql)5-fJTm5XsGcpt??QLI)Vsy!*j{70>uA_{m7_+$?Qw(%Z9)2 zfiWi;v^UaNFasp9;@SRuRiDtE-3ARGv@>l8wMy0)M6GY75306fj6P&EjO0U&fGq&} z(0jpNpL2N`H&5fg_goQ_^xqvGbvf;9u&{fn8aCz&dIm~KX5&zs@d7yJXm2(4+zk^N zVHi;5cUr-K6y@XiUiTbl(AOSBEHlH=pwqkf^a84i4HQHag2KMYQ3ludM?i^VBav*! zUft0H2T7C#%*Ddxon%2ow?__|L|5jC@IIXmKxA~Q`f($*wTFQJ5#pEUPo;kqVV4dF zIqxxwFi=~EP|eC0PxjRqb2x5iO$<>b zdHg2+ovk=eSugEnw?Y{ZEkeW%JR0qgHm|Q8ji}p#0=pdED(WsPtV;%ZI5F|W4U7oR zWbQUNbDha;Eb|08A~B=Ip6kcigY4C*kGmsT`>&ao{|*9dt2lB}i!NBcts6eEnNx=F zoLiyRz0e;dPum{D%?lUTcZXZxZ`!}hS}y5}%~boYq0RO9WXaT^UoqGZVpR z3>g;y691X#khrbPYO`*7OX}{K{h-%vuRNLSJm!QU%SgWN{u$TxeZoRN;#@i?GOu3) ze4*zLOcF{za1TDF1r&DM{x1if~G=wW8EMwz(W+4;RD(-T+^>(gGFEmTvX7gx>~s z8!agn#Bu4J->5~Ex1VOSrxs9iU&P35;2N>r1(NG{JD1I%nJ(xWPbj|c!Z*kTuVIU? zOIfGt!QLqBWYN}6|4Y>A?`7^^EM8uyS{4UOsa-UgZafzOhSktQrsErL-~HAKr!9KV zlyblE^EkI7HQ{&T*P{Y%Rw?;(^K7JTvd!Z8{QpkG=}S6(D&u?o0u_a_C&uZP8NcSRQrN#wzz=RVpq>7;+n5v5!h~4s3|w$zcaEt! zsqa?l2j!PgT|UhyEO`l&35=&ZvdJ%H&m@E>Wwys28AnC&InMgVrTy9Nj-{lU zb9qzHTuEhzKOnua@wXv_G? zoTRDro~k#7Y^+!6-#KmR53MiWV?!648?XznuI^N+4X(9a)`~?CJ6iS0!s4|igDc~h zPL+7f?{Suo62(v6Bx&jbBxgJ~uO=*!t1;Ks95A2pUJ@A(vcXKY+^j8qArLN1iRBYT z;w#|z$}jjT!e^c57xh3JF!XXUfP8mMdRl5Ic@<8Odd7W>XN=y4A%kjr3QYNaJhK`5FJYwqsYA{V48KAfixQv4%808oqLIXIdDN4)hWI!-(vw@ zX>3MjX8s9`K65hFfBJ5RAUiug)6BaoEYv{V@~IJWyYhGerkx2eu_ar;70bvBM0L7< zMj&^bvie1~HXi<&cZVQ?-lbOmoGn-lJx0Go7YcB@5wx*OKFg3Gp;Bxipduj>1PYE~ z3zh?WVTM7i?h9>+*t*y!l_P$O^45psh)e=2TC8C6q3Og_&m|p4;xyQe(ef{_#$^5- z>}sd>vj({>N^SlW>~HMxs#$g8%*F$jPpX0SKh4)_4H5RV-Eb*%_GoKJg+bqJ^>(1B ztxO0=P7&+Mq)==HInfTW*B193%kw@r6K$BPtV^$kJ5VJlR6-__H!vD2Qfob4?GzH zWMpeiqsddxG}hoe!HRa%#x??B(8(wwd)T(PCFMLG2`DoqG^sn{6x}^Af7qozOC49!3W?8pR3>H?@i2+X%if^|8Q@EV4WEsW)mJCXAw+6}b8!=qMu9Ex& z1-ByTB0+)ZhBsSQ=rCkRw`&qe;KaLO>r;ziCXmUuMVgaAH*1FC4>tysh{FxR2-&#J z|M!?ra`Y&Rb*V4IRRBRoCf}YyeD%S7Hd+lbZUxIO4d3Rn=fpmPZPUlT*Wa0m1x(E{ zpk}?eGXq8CLvZK<{X2BKAJWjvlAm1Hz!dU*pRYIjBD75xWiFQGD zj;9UvU;F5Tw$~EiMQNbXdXo?T)z)y*Uhov??eZuHi&jLDcPI|8{5c<&xI2OmMTb+& zuwJr-en{M?C!m9@9cz{P*=$C>AylxLIF8o^lg!FiI8?+&vtp$Q9LEcWtE$+5*-tr0 zO~UoEF*I`y<#p$DguF&0|n8NS^O8YhL`Pd8NQp z&XPhJ2l)DBg$4dZ6|^{~#nN)T8N&D9%}f`pyaYeJVO1PhmV|0}*Kp-lR)wYtSvrj?we z-U{#Qa_muq8!tZfy2-bNT|;~6)yRZr+7SVt`4P9o*z+BsuP2* zfW?&6IKRUB28qQPk|<3-Mm^YtKFAn_*ud%TxtQM8`j;{HMo>K?E?y?Wbyn4d{f<=chIbH2j=)gx zWJxaWhB)Ac;%sa7Dg|$*!E3Om0~h{NMa8k!4>NC?eID9KaZ|9Jb|!GMz7F4ou>@&W z=Xw$137@pw%EqOl;0%9h0Tv7gX~rF)<|JOL61w?_g80fZimAQn;rIyGxsfNb1#2P> zdKTR3cXbJ}rz+IO&K6X@d}-};?ySgt^nOdq7m3&mO)ExTfG0OQ3q_%V>}^%})v9JX zzek&3uyE*RjFLK$`E1~hPLwIEC?#As-B>bAZvmbu!{bbGD%ww z$@$C5>rW&$74UzP=ay0_OC(QU%vX8V1n5}n?)lzJ$mLj1<2m^c-|f{n1_2wTlKSrm zvRAL}(ch0bRyv<=?kUp4?HCgHR5sXempu5Z*)Jy|QCzWVTJyoC0f#8L3671lzD)G> zMpC~)rH7orejwWNaTi|DfjeNOm*O;UL3VM~T6dRb9QA*R*X0qVHyn3EKIq2c;^yjr z@NsrqzN2bRvMTo}Md)I$OKUJsl)-e-r`uB9-3W{*j)`P@zN1#g-)Bbkuf{rFXj>!M zK<{j<1**Y{fn#c>neIZ*fDVeqvW-eKpkG|#*IV9(NusOI<48@v4qPe%kL%C0KO@lM zWS8PgWbx>T`EU$bE;}}V9x>I1&}~jj_uN zr^3z>tS-(X#TZCg!vGJ}j+~*nfr=>15#OB+pTLR~-&{0&6F%^F&{NN6iuCjSlb~Un zOu^lN*juCeVq}J3b&@XSTc^D&=KK==jgdwpqC{GARBUFxKvKLtGoNY&pRk6bdsz*C z2XI17^?DwoG&T#?)rmR!cfTZ(5+by%NdXup;1E^me_mq*@+@~O3Ht|vx%JXmHa}{? zAKOu(05;Z9;&-cQ*f9^UBgBJMX-_k8=l|GJSrA4WJ&#?dU~=^)$}h<^FwB>eq%Ik! zBk~rGII$qT2iOig*)pZ*X+yLnMvn_~j|&L1f)INd##3GD-9Qh@;c#DRh>HwV5}>(ZvHXhB*M0t|kWvS1gMQKr6cO>`3G(`QVdp9pUIPm(#b>aGm~1 z4k<#H9B~z=zD)tM-#%&9Y`kPW?$!{^So*rtQ1ueq3Ij^J)NX*el@U*t{Qj#G<>A;4 zq?7MNg*d!Sisoh^)=$f|Z%M9>tV0rRG>wez3CIpuD2pRyuufg!R%~Z{IU)!sjA&L36o6LLI;I#si?KU%G|@1LGHxBY z2YV26!k5`pu}N)QM>jUW8^MT~`y!!{Tm`#rI~S*Va2qfuz6v;R+{K&eJB%LB1H%0? z+nuM#m>pWle~bvrWQn`kQDHfxPE8EUzeW+LlT8; zSe#s-Ubz5i<%M{2zNJvZq~D$ex6yl8#zQT;O%cdH1)|i(BACgKq#-D$JB((Dx5nfI zSU=GPep~d)!xXmYE4b^^bjY!~OUilY!ZJc3_WhR)w$w@P=$0J>SoFLazs&C-X4=Q| zW19F~O zXOAw~^?5+vj!puW1+ae6RlJkD@uBcYP|MAR&K)(zF>W?2XZoT!ZsDlAS{MO+`yzweN zyoAbCht`MmcTxei54ed~9dm9Je%$BFo=}qLRHvg~y+WOOPr+Oaw8O&@tE^AQQz;)f z?j+&|)vgww-Q*A$mP>Yg!XG%v3jV&&aeRhoUqum_=B3;YJfhBEsL=VtjKo(Hsa@mf zxv)5k!eXj_0dMI|JHLc=3{-X5_s8L2Zf9vEYW)Ir%ueeYfW+A50;g`6=2Yp72h@VZ zgzJ@92Zbmk06@LT&Bi{u#;g#1udE&g9k;LhAx9gcl(~yjc&sT>ZOXpi)}&6H*we&h zo$r3g%`zdj+vx-y2*bp(zjwUQIr~={L z=MRXLa8!H^pA!OYdAU!Ds+^9W8JzaN?!d2ivO1wKWo3WSJYoNtL+TiG#XlJb^?X`j zNRkHx9_z2j5Kx6N!H9;K{n>v9O=9l%5!qw{x>ZC8K2SYy#a{YJbi&d+x~b-8U#&@8 z%w21WQt4`E{Ke1SfYUz0zB5u6vx`hJdg2HdO$B7F2hAEdKj5YCmx9yR0qWL33Xvr- zyAKKGVG3ARjq`xA^PMcjotTHv>!o9CnoL}t%v}ozsB32#z8tk-lZ%efj-5AETDEBi zQMG}88Ij1xQ9zhHrccQDmwM#v;|cYypyPfIfLCh#6YArm36Y$r|K(%PY;B|)Jc+sJaYWL-okEh1Ha2fFvkuKRMxs+_%+=^4L z`WNO?N&mI?&56g+Mo|db%f%~rSLO(yw-&xkghVye;s@ zxJt-U&udsEJ@yjr5*9Fy{d@5mA)S(YtsezBMvEeuyXe3VkFh>N9YNXDENZmSmQgA~ z!<%i3Wxb{J($3#dH|8z6f)yU=P{dQ?c!Js`k}XC2D_A!mmaR*KtX|8k5X2u}U+T_u ztAwRsx{*@$cI+mdb9{teg9x9 z+wuP|#&6AXDBBpccPZJl#7YhFzh&sQ3#Z%)tM|V2fcs`IZCFY;Yb7Krvao;js1p5p z)NKR=kLVRhwN@OZwHKE7yMKT&`2U=oi*%FW0cQ0E%LiyiWyBD^{(l1lZUbqS&!hpmp_7b||Hl?M#?A}>sUFrHp39l2-W71dUGc(d zzu-vR38N?#?kQ4?TcGI)y~e~3 z8q_JfP3^cX6CI-`%Z;i`*UMB}h+^f4Fba1C0Knp6!Aj2pbpx^12Go5^?cFg((&U8J zTt}@b&H-->hZ7rfMMwfUOOI{eTgZg$VlV%lb0|r4%@daX#ZlO&Xy=u=9-3{hLgJqjc4Lcu9_6u0r~T_xM|5rglMA zCK}r#X%~HMVU%do%hl{ab+w%14Nx)00c;CkhY!)jhjMd9+(Qq`DK8CyGAyI?3ja3s z8k%`3m8GK8-Ce5fAr&EChSs-B>n2jGEQP7Qx)H@_ZNoW>bN(({l~xmmolZunIf<>1 zl@B-`b1=%VK1XN)5{DmaY&1C$EsNRbzB;Lm6tIhk;XE+O}furgnPsjo|f zFex=-!#C|%5*gvB>#QIrVrFQzcekaJNpctgcQ8GINcBW4gV>XPzl0#Wy3J_Qkiy8> z9iTmlpl)338)USvxZ0orHQRS`xX84I^$tAfETGnFjo$CNG%!S*=Jz6ASvB8lN`dv3 ztO%_~Fi@gP*6<&C+S0_wDP68wjl5>5sR9~sfQcywJb$5Fhh?(U+L)TiJ6j%zwge(z zRM>=7&DRJ;u|Rb5N{)U3t1s+}iaLl$JhCU1<+D9aapecC%ftJ?n0+j{g<+z_pwy!c z)f>)SarA&)a#o?P^)f4s_d?68@$==?QMfNy4sq9ukgwM*&p4~dD8(k@+A|P1Tb6-% zCE7eUv^+l*y=J80;DlCRyQ?vEJr9%+`t|%0yJ0hWQv*@$(o&$3DqtRtCg8~|iHhwx zuxnA9XeGk27P}dXhA+OqhgG#A|7GqL!&TG&uz=MWPG07h(XP)`YFMwf<5?BGdh#21}x-w@5Klu2%AGKncInxb>kTUXc` zV0?&Aw(0A}uG87L&LgfS2{Z-3TBhITe!b+sbM@=XWsW{SUzKsEcH8 z>J`dJmcMpLE!qiVVTRn64DYOWhvb0>ThLA%YWL;1dg)R|hsUwzo+{np7zLipgKR&o zH_)Hg-$A{M_4qe3uQ9S<_%H=N)p%Z{UP0{-$8XIVS$7^;fs%`PdT+DsIBTQ;AR!a~ zWc4%Q5GR4dA~tjhR0RZ$T7KV$1I}b>XS!eZ*mPa}QXCwu5eK0jq(8&pF~a#|mQ3G_ z9wVHyDi(-AsU#mfp$KZ?fHSmI(l?ihgDb45%FB~ki}MmH*E{hSJLm8oVs`DVyBr1Fn!XXI&6(9N5sa|iJ zK~5TjMWdQMk_PnVqbKO3Yj#>C#WISEa9tFvF!!({zSqTnV3GI?BfXgVm90Ho(#52vhvFrDE0+_E@H(0C%iB2(=M{vzQS1ckahjt8z22JLcFvegTcMXh(}R z8LFUjgeVeakM{Mmg|=2Ds8bJQHLtTFfW-q&Y|o$XXI8+KooKVYUDJK`8w`3FRq*T= zVev(aBeX^}8ccEq8PBX**bvT6M?20Dc)60D`_KphtZv^2xWk%ptXu*BC~JaP!Cp~Eo5gt6 z;Iz7r-7;=IZNQmc}Kky)4(^~qb7L6zUGcxOjF7O z0ii#pqLilIoQ%tE*?fLi3q9a^H$sr0#S&cOug8Ilde@Ylh_;-TI3ktjf-^JvK(j)q zA$6Nj>0EdhM_vPb1WD-i93k`kfkQTLj2{FIfGZ;PMmp&)~a%kg`7zExrIC@oC+ z_F%xr;tSK4QcC5H0dKFXrXMwL+fGvPf*kaS;>fHCVsTdvHo(FMW&%ZQNJ|DyfiI!6 z{3vl176bOP4aT)-2+uG^)PHX_f-a_QW4f^zo&Z&`cF4E2cvEBXRtvyP_fl}({i~v7 zzSK6B_*KULW2DKM;@fZ#*`U+{&Y;wkfS&o2DDxQ8#(Z@RBK&|mXgB~`M{kM)u+w6%29vU@1pY^NaY6zpU*S7@+M4i2X%An7 zsjJg*t__XWO(q@+0vqf9X*OR<6^yCkXlC-ZDH&hKgIa;KNBmdti$DdGOp-9*l+$W1vcqp!s zxprY9D7U%r&_|#H*4AWi_@H6{a8+#5SC7GAAlJ$s5r${P_0K?YiEy+eyh5E`CJ*le z)$-0N{`J)!*$QLM7{AQmtrKpd3s}CojSw|d-HhizF6-fRl>2|laBxxnTn;`DlCQI&6uMKn{ zjebLQ2X`JsWuYk@L`e2J$pS+MRfCEQ;5~1sRFG>VcLbk*A&to+;*cxNoh)INl??f+ zhR24-p{S2|PjzyjD}KuLN~)jth_xvEvZd2D>s@i_r;;B9q%QQ-C8q+$ zYi9+rwwD`AY`X*rfMo#L;aLvg7mxaqV2fT@8^BnU!z_-wX>#UxE^jm~!6n5G~#Tp$!OkSS9U(Jlw}A z_o;Dhzv;wnez=uSfobuC+8Om&L?h1EFGRqjQ|eoHD;MR>mtb~$EGL=jgJPWD#0Q>y znMcjPvgDc9M~{34b-I{RYP^bilXz`R#%xp;Q)JDH5|_7fOS&{YmJ5z?b6&!SkipfM=ny@a-K4xxc8G@-|z4blE zBk&|{3)X%Zp(xU<~TVI~+Zb7$&*!mbA_61J~?|?DilL zQ#~gq+Y=q>y2ruFDpUyM<%ZT*bMJJvO5qVoots481~%|MHZpsK?ebYhah*@S9PPTc z!g#9CKrd1nreW+21A8-)nj{NDJ%NE=~pC>gBCJ2_e?gZj94H{BXu2tJG%|Ry-XE%~y zFc}HY65x_3(pZCQw)l?APIwmWg~Wgq+5NVK=G1rDI{Ntr%W;$}>n+8@1Bb|v7XtLZ^8hHp&QZzUXkw_}_?>eETY&^supzpU(1*@`PoK4eF0O8%p#cF13E2Zi z%MZd^rAsS~OI0xdQbO*?3j)`ZJtKb{c(ShuBg4Jeqp*7pu+GA!2&fNx)hXYyZ_jG{ z%o@`A6@b~aG!)eeWnWp$6`)mqamAPy9@7BhU4wNmO{u~^2~U%rd`hi+An8p5n2^^K zV@!*w-yJY{}-&*s^n>le!8`WXit9P7??n6NDG=e z>WD@-HsG=tc1_a8d$S=HC}sD;gf-%`BfG%lB9_^=dV4uW0`xLw_2<};=UDvct2K(x zJ|9&i^A<1rf&3^X5n;wEKK;*5Qsc)NT+JdhBv3BWT$nr36VxjOjS~QD!P7}cbVTv` z>u}DVk_BNca9L7iPPN^|Aof~hK-KeikPhAxxa9HEt`^>-J~4D<=HpF#4@wM^YC}>N z%ZoSh?*QeYzJw1H3;!0>l&R2`fnIk^!Z$*CJ{e6l0YOpLW^gszcOye0f}{ZfdVpuA z)_DooD9|+>KC50zvQ|9zWJwlYW6-~(+C6p1)^tdEMNmldm@QL#L9YI@A~XMgk{Wf3#Zr&fw7pLI;{&4 zPkBfds!^{t=#_3J+^1%v8UT?u5y8zYdm*5ca$%?lLUGQ8IjE&&+h0A%pPwu1wCC|^ z9$J@2shXItA}MU4`AQMKo~1N`8vZJXJAB?2gs3a%x20LRPSwhnj@f!;&y3MYPhJ0( zU%;a&8BANN8e}pTPLHJKr|$1|6xFKBg8X5ou|*f653k(GR7p-xSDu@aOyT*AME93E zUh#-uODdb3_C4wqr}=+r2BC#xNwqE^&QRv3i!=50B{IxjCG?WgY zkn&|g)_RQQ5+agjY1SZ-6(AS-;EKbOv>r^Ws>28_b1Z)O_P8Q|DeeVChMy!$-<(70 zkQgjZSy8-tCT{&9cFT3_1h7ddsyiH|covRG>aNO!2$$?Jiw8HFu>V|}Nt~7#P$MgU z(D*nqchHxbC^kf)*^%X$?GPbWkC zQ6Y}sxRGJ0FA59oU*H31B$syR8wz={$al$*Y`m>b9*l$^R_ESrsDi+;fkyuybSw?9 zX9ohT;@<6%9HChWNP2rM8jnW50S}}RrDvLb?DbWj3V1f;;nLUW#=2jav#s4{CHK9W zY(HEMW%8IBaoxLm;4rKM_Gqyt+xk)O;x79ap%*4yM}6#;5KwZbp?^%)PHb6J`F1p~ zUvzl6PMz4!wh8hsfNV;&8IV|ngYlxbNfAFY2I-qh02~3SSvjjSF~mqKkv^4Him*~& zjncNI7+iRQ%w@E_(9rKVL%jgM3ktA?D##FULtuU&q0goyqXN5JpDG3(JqhGC1~erF z4&)iIU{;q=GQwS`BW`=cQ96tD#+Ds)hJnGcJ#3DszUTW|jgnQ0B~}OsxX*_P7+_ye z-vmYN#@0hlDK6}_!9U5`Brde3cd$f$6@Q`h{Sfkm9J(j7&|1p>a~7C^y#9^WA2_T5 z0-U9n;&Ifoym7CG-R$@DbR5CXoYmGr9&! zdiT3SsmVQXD;RXc%lX-v;8~HHo};ii^6G=4H1I>T&&K}dwXjy{wnNm%3SoVLu*9}+ zWVHeuh+{FOFEVz`XM9D01MTL?gl% z*(9Np=!+ziy|B50KJ-aFQ>nZVikAf?n*EScLcBh^04>lkw^#s^{uO1)I*`!^iR*Xw zh3d&l$mUDgENBqB*}oOh!oH9=k#u-Alc-0rYdqh;o8J)r2zQbJepNqpXb)D?+B|IN znFh>V{~HDu#OdORn{i%W+q+h8ufE@;F9kj17mTacT@|~!$ZbNrnZ*}msNB_sp!H>iIRP*6)yE{f=EluA0nm;py{ z3!dCI-|hEbq0%y;UM;+0lvb9{!kK(;ERk_`C-f0i*rhoJ0Te04E2v^rl8`AH;=fT) zeD6?v1*6zTIoGe`SZs?5lc}SaF*;bETsAyP$7Ql-bwn%%0+vsK(M69^p4L5qU4iEW z`Yu$XD2MWRm>ZGguz#jNyYOuRF552M+?7A$S7K(sOu38WL(he{ zDQm!SYWiPJta5p!pU$x6LK3bDiieg#d^i^|U+>R_eV$F<7*5jEYe?g;L=Sr&Ek1Q} zNQzlvHt-wnbFWwH=}y01=zeDdIMjUQ7P`%I<+!ApdZR{xcoVd}^`nLq1Pa_n6jmav zYN+d{-kghTPq(uETg;8!P*7Hdknc2m4?IH{RIClAekloX>>I6**m$VQBlMr5G5)sT z$DiCP@QGq(r``*P$paPvQA}vvPhl2&1siT=9hitR$O{dABOkB_HiV)Vp;&%Ao_1_D z@l4Q(`<8Fj-0Yd`7@d}X;-D5=vDBf&uLGC^8|lc!%6hGPyA(k^CjxC-xHyZPpC{%&{z+c9RY{(1oi8dXYk~l zBS&Qjl|zzjPU8Nj_{LFgGbmX)Y6dxezAxrg1&hbXy!?z=V^3UPxqa$>U-?jKi)C8m#SdloQDLFbI6ae^MKnJFIDwVGg*Ct74fT3s3__Fy;IwGIKod232ya2 zSgV~2nc|dEFrR-ZN?l9jGQs4!oh)BH3y8`xs$}&wCaK?(n2BG_6?nIA_k66>u-^LO zOzn6fQ%Yc(I1oU=#~|x~BzGbmi17m0Z7 zeF^2PZp-OHMo^C@aD~l2nv$)~EE}Famqv${hv^cJjFD?FyicT>lrU^x@@=Tbj%UmZ zgTu2ixDgi;i|WRCurv_YskT(#I)eFFRt^{@=|1a z5Vv7n`lFdMu0vP^1O(6Wc=~3+rz|xhzKjYUu&qM=aSr+f1s^76xjuRU!PPQ!b;aHb zK;6_c_b(BhMI{G4nOBN2xsUQnOCRtz)d*Hk3p^GjVXqUVob4{&@k1o>oo|cc@Dlo! zW2)0eU-`HcW!2(AA^p^)>2A$=#>6$B`9qWv)<4{R3Yr(r58s{paAu8@Zd4qO7l5;6 zHi24-D%P84oGK!t#`@xpKcC_tU4}_+tL#>vF1{4_)enbKq`1hzF7)d+g((6+I*_-a zhCf}D1p{dzuXOQz$t94l0KKmvCt-Gh?hl7Utpv?|LYItx@&o7^!wszefGG&$9-2!u z#18?}W5KOn*L89>BAiv@wu<0DsQZZn(uIyqu&8}N9yUpKMC7V!oA!R%HaO|OnOs$W*PoW>nZa@JO?n98`C&QQL zT=|kLLtwI^JY8iX#24NMuC!`HI;lu8hZo6=W;Sg38muNB#qtQPcwl(*fz-qQB`$&j z`hiCgJ6-=VLcrKQ;y;KUY6EJ2=61*j$T<2HEYR}=97#8V{fMb7JxB`X{^`s9ly5Bu zrU8TuRxVFQF+Arm`w>MkMslrfUp+d}2HXd%6e1Fv=CJ&!i^g=V{}E;q7&?uMG{lcH z>xDhmr({8tVw)iGfHhf~H;t}hm?+vj}kVZ z41|2G)_V*IC3;5NPU;AUeOxd_=RX4hbJ+!ukT`le7}!K{K+mkY2v?dI)=nrINJwDd zQEWq(AJKw(F=NgMr%0_I6%CyCgdxPk3Z|1k%=dO>ye+WorGC$eLw2?5Wpgqb-bNhf z$0tq(B)m)w#;kz;rUF-)SE2SL`=P*xYi-<>*prbLF9UhVHfD@bh07^O?B;NF?W3| zA}5W4^&v%aA!EJJM@DT4+IeYVmpg4HKyAcBCi1W@}9(%$e?U zyToUwGxxuziI$Z=v!S=N4B`PSm}ktku^&9wPcD0@cP3!cG;u%X)X9Je0SlS2K70 ziioFc1HSz}TBPFDh+@u7M_m~!io6+hAP^4T*y;E9RnO?F;it8NM}N|r)@nC>5>Wbo z!b-R~yv2e=Bgzh1xiiX>|+ZMLOGJ};q`M#adyg%!G2alWTxwReO0J)eHQ16{~g z9p(Oy=abPn{Lrf`r115pdsWM4oImnp{3$`8a@iPh;P_k zk-*C4??Id)XV?H$Nit?JsCCdOB@ZqR3`sZWSKKFIO7|tij9o`J742YabqL^bmz!8r zW9r)L2%y+ray>M3s<{kXOP77|Q!I7&*3U=# zAd;rf=siEp0>}0$OdsU{oApM){n?5MHxV}~e-~*$m5JxZH--&Ivt0A$&IP;8Iw2~J zaUyHfM`4m0Gf7%PJZPoDO}ziQJ}RD%cQl=W60_zZPDAKRE~PAb+Ft?JdpMcLgd^it z-8Q4!`XZ*Tcd0g>?9;U^gD|72EtOkZ!WFrhD1w(X$-px0<5A}F>}xJ?+WQ&LFa*=B zL6H<9l0)7KUNzVj3KQ>`xN2SvyqhTW%O(v9EaNL@<>@=5=r;Nyu9DYdS$FUt2oPs; z%*Yv5>oGfk0g4^?vTTGlP0NZm5KYS2Amzz!(GOTn&Xju%#!c4Tk^BA#qMFwtD z>nz#{2%SkzOwmsDZDhN!6t!h|s=c^*i>KAKyL2Nu@0~~D&a{Yy?GZ?J?6tW}l>D;H zq9ZQbp3LL9^7_%s4pG9Bc*Jop*`Bhj`2Cv*Q^QYL9>>uXA;q8j)zntvSN;Q8PXM5U z5waSVgS41gQD#mm^1yqZ2mXVa>?f5E{H#Qo-Y{VLGN;1lxd%!qepar`>9=N;u*^jU(5WI^@v*oS z0VnQj=gHEwVrT3^w5E;7R{{*zgtF~4%uAaD>57#>CjA1AAiYo=(&uiyB4Ji82(cfI z1d&7A({pP&z~i%rJ4EskjlitX!_Eq;((K;?N?~1a0v0vyQe}Op>|VIIrdiwbY``^^ z)*@YDg5SV()bRKNu<^U>WiTS5I!v)WHWnZ7b@yFt#c} z{7$Sw(+95Xj42pREp}KAzs-{KhDK2i;MxG}P)B~1H!KkK&Z8D|X zdBj8p!^CLFVN;?uU)@VB;>jDy+2D&-&<7Hz?10{P-}4C!OMdv6owx_o2TOz9?I9JR z+|Odcv#euG{Lq?*;&W0bBDXwSECu96iDH{NK0@$SS_|OT=OxaSW^CXhA-7=#SS&vW zJEK^JrH5aB(b=a%ukvPEWsm07Sl3Nq6}-;;$J5&;mGKy)N)jmc4u7}T)ni?SF+qmv zx1oEIlM|`;e7C4glHW08XM~6=B|pyV0#9N|k>E2Pb&7XEU0IH;@Cg3)J+6N%@#L>g z6CRx+_$to5Yl`L>@%sO*rDY!7j)cnJGihekHwFf_SRK!mmEHCq$sb{VN^2yyxnHl~ zAPXZ^EAi`bv>KoN8M8`~BU%~!kL+QfLvbSO=Vavz<3dOoy$gl`%fp(|_P>L^Wuu3` za$>OSh;pVmOZoONaog~%zC2WbbKJ#fX8g&onV|ju*n0oCChI-^8ztkE38ySQrQ0k$ zQKzGxPMNmjm>w&tb7T?<#E+q2a=jG-GHL z8)rC1-1Kes&EM}d0xOdDC@fROyrv4)Z3w zf)zKZ6?D#@|GY_o!UKv4gnEuX2#Zr(RZB`^6l&N$FYKk*h|qTEkD?1W}(E#MIz<+dQ{M8>X8(oYv_C{fx9 z1lZm;(lB$JcO?*Jh|^Tn#k}$5j@zyQM6F2TqBQB#=7cGCgE*1Vs-F$RqaLJ?Zv$oQ zT1Iae9SbnhvMy%Yoa?S3K6g*FX<^z@jEcsiSM)O}u1x?ey+_+t&iq28eynVEVOrE; z`35aq`}#RivOil170IU*rRrw}HgRdlMN`6S--L8DkPx8!no=nK7FGKu&V&f_eXTen z+4MEa<#Y$dRoh-^9Um9l9p%C+uc9W(W->x#^?^-PEPFzvf3HW*0)t=)HlHwQS1irM79^ArSc!i&u-G zR$a-RJK`LnO5Lw~yL%Y+jq;6gRj*fVlvhC^AbJa4?mhV1)~NbPP-^41z+j0Xb&|-~ zH}~ZLiA5B)S4~&h8A=kZ{u!7SO2ul7F7)AsnUBhzE<}l7Vot&%@mZjaf{a0U1EHfN z6lF4IFD0Uc(pDfUHt%LCj({c~$n`4L?|WDXUb|X0lUm2^b$weXg^I$YB{gd;_PxP( zALUN;+vdxj)1qT}14BHdreN2%@V8E=(cp3USd{rNkz8&OWj-Ie{ye?%2&V==YB{zQ z7)n_Dn$2qI*_@K9>R?6}QA{Zo^fHB4RCsFfV(ekmeA7rVl&2Y-fM~1G#@@JDparGI zvD3f44xe5VT4SMoK{kGo-z4+Og%>=I3!WIyBd-WH68N` z2{;o;G27TxriIIgwI3B`0ZGv|L%H`c37+%$=HMFNe!Fz1WW;={Z~o<3>XU}CS3*1c z{x-7t%1h%LmFg@OF46RDZ|>ncC7;sko+)Ywzvp3x5_D5-lFi(4=GhRW8I8M*qAdOD zsh&_ebp{bva?_6CYX}P4^8d;>P2W!~sj)2w2&9QiPtS#>(6hT7yANVDXfne?c~$gb zxL=+#iP}`sFwqGyhao+vY;@q%P>!5{?qZ2NJICG59ya=&4g|DFYl41kg5VXUf4tzboDr4jxDDgxK4m_JlTc%d2;THC`s%rpn@*X^~Ur~vP*WDHn)$0L<)Gu_aPFC zs#|smk{CgoM#;;6Ms}pxt<-q8`?~J2tM2mhCu25B9;cnapcJo-9}Nc%(rMw>U?B9I zFUApG!RS|~4SCOVXw>G$K*l9KI~~Co9EGB4$b<1TEG{dP(+D_&>h)g7wFbd0khQIS zW82rP1~~@}Mp7|wH|CP1L(_=kC8Wvjhmjc=U@@AMzu`~6juuTc|9&uEvhx|YS}UP zNb;alI<7MCxj0??Ee0na!d8jF_P?^w40(WJ_`F=7N5{;k`p>}`G%k<1jq0{%W`=$9 zknBX!>C!5nzV;PN=A8Y@AThWQ(lCxD_T$P+IpZ&_MJ1;u{D?3VFm{#cS(PVHEh4D} z7>&vbKNbqDwI)|W(%!&2*$JBjP)i+mK+%!o)~eqtq`9TG6^gpZm)Z&|cL#m#Y6HXr zz^{EM)@SqYSPsa|YYJ*V5tCkvHqpdKDt{PIk3Xh{mUlZn zan#i`?y!JDwgJ61AxjpaeKC#u&oeGosc@X4uDX}t#xM1Kw>%04CBIy2x0+hC_}|Ey zxcUgh9wMS_|2oGa;V*_DaE7ygK>_`jo$u-{N>sqm4cIUT~V`z;*dH9@+1j@D(YXjQ7FEXvaBFie?UjJn~7f-557N z?db<$T5@GC&S}#g>}IDf(5(rLsF;`m^}MgJVVSD3m{$zCdwAK;6Pmvzc`y0g(L8|n zQ~((L6lT-;3^jFsxEIboxI09`;_S@(Blf6ysC82GVGvUwzRI@@9@ENyc4Ae(>R$h? zSK$K169b)l@x*$pD;D)%XY_x58!)P`qqWoZ&*)W91K{quTjDt?73IAXuCW9x4b{h5 zVO`l6D!JZ&h0gv6-`Sh~ek`nl=9tboIqqSW@x9lK4Q9+W6wV9Sle6sm#ZCotxp?su zVfPOF>RV)6c$r(G`0nLVNlyb``Ku(6{VsNRj4U60fRsK?V(&AQuezK3oHf|q&TS~F z5BFH1_O~_x6#NNoJBE9>?wc5U877x|#9t~ktlV}IDP})nD19Js`Wf7~x@u&ml4=1qCu`sdd$UmbP$bF;$0K;(Ad2M9uq(Oq9@ei; zr~o4R(0o`a?Nl2U{Qy0e;Bb^E@AV(Vpkg36${hpXYRE%V$7G*|#uj0x;6LwL7HW2y zHnx^}HqAx23@#z>S9n3+m93zfB<3Bm?wzLdU{5TD8aVIT0{2U~ttJ9P{47Aiz1Z*) zk?}nDZf~gc^gYLEJTRfM&+)ifMRe5Vq#lHKU${kZcB6;W|U|9>_p@ z4bzT8d;)pP1W)l_CCM2>Aq%(`((0*TgBB;mYtvr$CBC;jHl>~FyEkwI`7W@ISigFl z#C2nyFbYq3=7?+g!88bWJ6a>@czhUd^#IUw-c^dajEp{|bQxtSMOQlOAX76xImn(= zr~M&>q>X}JCPgxgU6e7NnQCDii#QV@OQ0-TImGT6kDpJ^_8}r(*5gqRa*fr1Wy!p- zh;9WEkUcT%Gt4_n{S>FM)S9k5%@%yH#B5f;d>92m3h%X0dVb);3lx4zW9=SL+S*-A z@CHg8_QD>Yo@T@tY>+}EeQFkkn%VH+w>E)Fbx9k-Y7pC!Pp+GQA_cG?7{PC|LQLLXtxJH34#J4n~mgkSX7N^XM&2lX*Bd2W0;vWdf@O* z)7|&Wxt%5`6V2E#ykz@zvHzC|H5P=SH%w?-tB#>t%y9EJOt1l$3A^g{a9+Og{Uu@q zhb)2Y(r<(Vw>6p^x=dQ7#65<+O&u@gOcz6CH3>2}+J4Jc@z0V|e}ei9F2{cF8{FTm zz;)a*3|u`33pCQhmXqX28s$}MY66H|Kp=T5vY%uRLlv@%M5|b61Hbm|yDYspGmp{nMf2gdlfU=xD(43Yg(94@eSu+a`#Ydg^#tdP+jClu89ev#F5EBZf>y@7@;*AY+mmQE8mpHx5M%g@)88JK>Q?(!C*xxt(F~D& z230~!Y3-N-ztK+=hkzTjJ-gUy=v;EJ25T23128_kl3Qaz+TZt_lJ>5_t`OsfRGu6T z!kSzwC+m=^4CbUuy7m&@S|8kRMyau3J)SQ90H*vuBKVox&<3rr%Vb6fpP2zp%=iAv zRA4jlw*D$IY{VYvmLXUbHbihvI<<#VdAaeSA*?)m8s*oSwaulmMvjs$?G98sSKY1^fGSS+JWKZy=swZQB_Lr>Ya%|HM`XfcP z3Gis}GOewn8u?v|B>EZIkG(@6WSUpx-J(X!gTB*kdlM}B$6UbkmHUV9ejzIgxl`!Z znKwG*9Sc&p>Z7tRYAnMc@V(E&5t25))zqGZh0iPaVeD7hI*`|LUn-GEbW9VvfnB9Vrm|;TdTp(Zv zegbqWU7l4@WHQ(KjmWnjiV1>vsKnL9631n7=^2>~dhfh!-0fS+tSn5CT4rd#_3XVLgvLuO^Wa1h$s zg&>0k`%ZCP{ZN@AZvdg)-zj$}2rLvKDwM^fZ>(G`$kY8*SiR;}N!4F^G%RNx zd&id}tx?BRY5G0KdNCoXM9es%dXP%-u})S{Da*ko1A@qsD&uP-zizZv#PQbnw$Qd$ z;5B+RU$!Sy7%ViEeETc)1*|@Z@?$$mT@hKjTzCU~l)jRR_KyXcz6f}5B6)y9pD^S2 zM~Qirjjfy#6phZzv-7K7zwK&s9_FM~C~m>hKT8#XFK%6gBIM(fFs1nA_rT!9u;{wL z3%y%e3yk8?j?d!T7R+hKfM-*I^_{zHxWF(9$f?x*w;A^S0XRhsFu!(W-1C^0!t2>e z$P~Yih&=l;*c9orkiSd{j^qi=CtH*E+(rl;7QknKsCkvQ`uUq04C2C1`Yqn{1aUFaLU`}Bl`Jr{VVH@)6JNnB=0c;AOKMXCQXiPOh-s| z3CBPqzR^GgnmPi)N*JFQ95M~}rls~_p9;#w3ERRkRrSafNZ|Os5u_eyj^PC{aO|Cn z{l*(`j3arXmA4KH$Bn!UJ(NzBxG}G}0cD6QV;&Y`P>;zQFWaZrF%R0>UaET2{BM<2 z70kxaBKf453@!e4xgE)BT1+jfhi3#{>wAQuJBV=;&d@cuT3BZvAMvdmXHdI#MH6~9 zCS0-Z*x|QiUSEvDcsA~Rws4t!`UW-m{ymD!o z9Ed0Jt6?y)B92xG9E84JK8^w>$WA`02F$19<>(-d6t|vvISaq+9vo?vL!z~Ohon$f z(lBl0Rv5-9lY&S~i>tTqjoOy6x13oZ$^{$BNDa;*$f*vtdccZ!-;ecHs8dx#21=VU z*OopzNS;$n9lRS4+WcJoNMDM~Ft34sNAo*G(R*%uEJ9gSk6jIIzXMsvbg^X124t>H z_Fe}&wTWxRJIK%w4rSiudimC`$Pa-<4S0euWa8k?z?CM%37kTCWbyGwx^7V>%;N*z zJWI-bq~Dq-S#?}}VC#trS<8fwIUtuig=L2EQ*DdP#Qc}~IjLTp0kk{kHTYd{STq~5 z!G%y{%sU&QA>NQG#LAtbykijyaaFuV{e}q6jKK+}mvZMFI9B0HAlTXSSiO zRGTnOSsU6cY*p$W)|+^C?i0)FUP(3Xq%S%}B(N z#|GZhjJ!7DIo=GMrby5gx~p(kuvmNyh`YshwbDkXJtMQ>TlveZ70h4$9r{k?1Rxaa zu72jFs6H|DqsMI*s5@_|9wNtLs;g##wMOkOaXf+;Pt8H;jJ(QHUa%1R<_frddsN1>LsSpSzlT;0y^rUhDf7LBA-~Cp7v7AblORY|Q_&Sg4H%4Vp-WYbF`Tqk$Yx+Mrhkd~P!EqtQg|h0ZpLXA zR{-yY&7esHU>Rwn%aQQ0=C9<#`5cFjA_g3^Y35#azo(|`SpS7ESrgrO^g&pq;*Rl9 z5`xC|5<0yC*v*>$>rwNnzKOmE(J&;TlZ4$Ez4um3V3P1LJ571A^R$^TUJFeV;!1dV z5;HPQ7cY;JepGd1ugh_m`>-|neQ+h6D2vfZ&wGB^GB#+y4x>CsdKfz*JA6_A6wOWLap~X^N>{S0VrC z!&*^Jw44|K@-wx%O1WQ<9WfENgK?2wdKMO-pW4L#?Q4EesJ z%*i!sJQ2m=`Z<7e;;oC*j7fTmJ(Z9DlhUI%I{}*rRD>^OGExgL!jp1RU3^?!03qHL z|Ku#!m6-d%q(DTXcr@Rnh1i^25y@cBcxHzThQ6OdeM|4LOW;l!8ifE5=3z#yO<#x^ zI<^N$rIMGqt-KteN}MX!3%T{S*=TJ6nOZdyVhMBx3L#5Eh$S(7*Kj(oMf;8^&9Ofm zcbg!;n4#Gg(Vz=oYMbhn5~;@ruY>FpZ+k+~$$ba1^JxGhod-Q<5z*LM`B*1-y&b#_ z-yLSB(}|VBvMyT$&MDBcp^UHuSe*V=c7nOru@AEnY#nq^lTAbY+H2bru8vQ0IhIyr z8WOeeUBry!b8o%QPF0982skf4k>ftr252Vm7FXTc=*lUc!ly;+xIOA=zIc!_+f~$` zC_{3ZUH$9$D;Ii&ODk5OjJOt)zM#2sZ2{+#oGzCYn6>n4)X*X}91MYFh4F_&;%H|m z{k26*<=Pam2a&79?NiSQ3^nziM(RjsVBHan+eMilwKWL_g8hw8P~1BUz(4H(*A`-n zgDnDx3d=SBE~z3zoV0*mcnsB3dOj8pB+ixnY%Gw~!u`PRo)K7o+M3K%Zs%Wv6O%$O zXgdyG2ET(%`HY<*Xu|jDkkQL+&nfyzx>@$fxdi}R;^r%=r1KS`TG#Xx@V|dmf#7O@ zF!vGYV=_^Sv_WnuL=A~m2cF(6eM}qSQaI%Li{R?&mkWD5bW-JVqE+Vi-@+TH!KeQZ z>e{H%5!W?azfG)k2W0~|^8mW=)OV`lL!I(1h2^pf>h@H!UWtR;Kbs7Gv5Dp$w6`s+ zju?CYLD=1A@wngOVj)paR4N{Byu3uaB!(sgJ-c++dccN!D{zwx5XRGF1rEu!KSDnd&&yjj{1=7Lq0jqLpM$12h=2 z0dma0_jW5_zSu6<9e&Uz^Clf(@YcwZhZ~@&dPE@Eu-;b39dzz8tb|}Oei_-(V4i_d z#<;vf+!3_}`h^M`%!LvI%879M&o5v+48W8?9t~<+u^BhoSvdoM_t}V1!Jsd%2aWPy zqI%RrX5&l5h60`Tqp}ZnntFkuUtfgW6O7$OG*d0Dhw6acAHjP1ez(OK->eS;uC+a6 zr04%A^riR5cut5m&~ke_)=W+Uz4#7{GrlfGcEm}lv2BRmc=EXuh9v#F+CWAZBoyxT zh+*SyM9EK5HDT=j6(Z!uOVW^4B9qdd9xUI?+leIOmUnd|BAm=X91w{8VLtaR=bl

    WVNi|ps~Ata4v97+@z4arJ;n~uPU-k2e+w?pb8tyd@-p;_OkCkp`_ zrY-Jvf=(xU3ts|LBkP` zf-VW#eDu#FC3>OPd4_8=8O@X6gh8jVQv^Kc)c@5BTtpJkpa?D51vENAeqx8n8N92& z3n1=SD+b2r-tlYX?Xhw5BkS$1T^tHOatkkWj-h(nKm9ddwWUJ#rLA{N;X;_vJL7kD zERsHAd+qO&yy9P?%7~Vra*=F*RI4%U9;|#BYFU;P7H^DW8^1p$Fk0|Um~cFkddu(X z54kiPL{dKpFKZEKRV(apFImV(fiG;)2F*Q=3UIuaj;Xg9q}unF`cAf3ZB1CDok_t` zK29l$ax_(5~nluVuOWv{mrie5gW`%)P zc#yx4*&1?(&1S@SJjz|&s4{r1+Qf-;UIs27UK27U+(&&s(ZVx8pN8DIZC}q6-uPva zcrS+5Id4)wr4l9cwS-g#&!7fn7`5^~XV#?6RF5oHUD)B%BLjJwF(8oj!1Iy48041( z7~z|pHT(+Z33HpXoT`eUKZtfJXNFFbdTCLwj;WkWxPr~< z#E7TZ$)SjubA3|aSl#E5dHa&{03@pM74a1HNvGGTTJiDVS z0J;=saKR1?I)3a`=joPHKjgM=3u(#rJbtstrKW#TT|ehfmD>*xQCrUyds<1KU#cXy!dKci&)q|8~hUupyaA$?D;FGCED^_ z$*r~i<6X9B0U0*=yGwR;!vk^vhc4m5r;4qT^eGgrKCb*(giY+{E~ip)yTC) zgs~u~%^!9}RtK`mx$}27djZE@O!dgCd)1r!+3N-D?ji|>%I1Vih7B`?U~Jg42DuxH z{j41eptYR=V-l+CLfqs(1<$yq<4Z5VRRWU+sF>d6Rv}tIj|oUCwve8BQwX`jX`8?A zTe%ONw*0?wVrGDe;M&1n=^{3XT???H+fu`1Uf(fgxkz}GFfo)SLLU|=Nmj-05Ja#Y zMmr)A#=w7=ePC^i#oFl>N~{9{{GHEk+bx+IG>iqW$cxbd&HrBouo`v5y*q9??2%#i zo8v)+vrxB!y9Cf^`avSpam(DY%RP=#gnFk>#A8xuyt0kk5P9mwg}8wljSZ!((pd?5 zDGth;qO+Q)6t-GrX=p1yvV%JeD`WgkA*^jqSYa!Vr8@lBb3pqDs|5lmp=fXr=Hmsk zj_!aWWt>CNFcnAREZ;MSL%DlZ7d3@i~|$z*n> zTtZco^&i&ecMV|>kHWm8cPJMG+m9MbHh<>0|Dg1 z-2E`dTs=}pyRe436UE|_{yb2VMAF~?5{Be*i#n~)Ocv+CcQNphtMEfS6sW@jr%j)N z{k@k&Y~n2(l@)EC^3 z;cOK*N%N463vvT8!syCxjA7V1jR_Ftyq+>jcilT||? z0ZQjG)DGO0x2)D`MkKxg*xYrJ%?>*W=7a&Autt*B)a&ez(+hi{G8|>-Hr=Oe(ZLYE zv((M;WZ&adgMeivp-`wOLt=zzJN^~&6yqiez3&L{3KUj}D7fxmW}+c+?%?B+uOU+u z2^k&G0m-Eb;LLs#GVtp}m=oG`z3{^HItvmky4`W7CS+-8H!Lj}eTCa+69G>~fyec% zbu_ZRzq=U?M`C>$v4y;7CADN`fwfRN(y`zoi6m(f!?g0Xu*{vZ_v;5?>wS&oFWRy; zMdEubbNEp&C`4WZU-aR!p9zx~V?z2?`vGqz1Un6eRCd3QNdbzVe;?2rpK)>#k2 zB3~!2na}1hx?NPurw_v7fd|@X|5_^zD?0tKK$92Uz{}qa_3^(*zCz4Ajd8MVjbfc*k5sL$mU3xr4}kc~Gn;M_OK&ex-5A(-PTxhX&V7BgAnRrI=4&Y8iJA==&Ke5Y&+v3w=)|*B6PkIGn3rr5$HEF=t`BaMnwgB(4jzk5?YDSppLQd`)Qb6_4OUn%#H)asj&v5e7SO ze)}}C)>VeId?H6gLX%6qN|gOvsBeRCP?U!h6TAt|os=ZE(nWLyIM!lA&pnT}*S7Zw z3K$UgLo)b7x;)<}lyg_fJRpHV&+>$M$UHLA<18f2P{D(+qy`QH(So{OM};K)%JtaJdTri2?e`i%+w^pdNj^#|f79DiGAoHnS<= zWa!Uafw@~{AM*TwrSJNZ6XeYx_`SQZa?7TevjJwRH7fpF%;Kh^REt&PbX|k~y4hK{ ziuXY#)&TBGsA=qEOs`-e7G9mJB^X_36h2=LnL%rs#AM{xw4>|m_bw|>Jc)?=QD0(A z`a0}0j=}w1>QRaRu5!+`)V{+a1p~)s+6)wmaH&`&@j;Ljyl~R6_!Kt_;?6+WC~0&2 z;fgGwxiZ$iQwYK(Azq?dfZGYT4Qv@)!jSB@Y;gw?#7aeL)DyZ{)*>|HZeR5LIEvff67p&s_}N?ePWf^Nc>mz8EX>w_}ETUv-}mQ9bt9!o*S% zQ!lMMsDgl&F=U^xD_;MS>haVVmUCYOuJ+%?e=gx6(qia;jP^8z7EAz+NF{Q>*(i@} zh!_(Y7*`$aztJ$^rh7U4tX8Y?a2C4|I}f= z2THNUF9O;#kxtStQ(KI?EGeR`sgWvI)OPKv1;7FJ-U|&4oae3JE@EqD!opV)b82!3 zpB-5lV;KWIpzenam-49TxgFxJpqm? zWMH-GRhYMWKsj$hg90}GNcRyS2Xn(6CMV@}?ZW4IsD`)EfY*g1tMYT>O-Lq*L1Zp{ zeK%m#vyCNv?I5ugdr#>0!ZbxLzwh4Gy!?CKBA~LN>OdbKP zA(i030mRawUXVcU`Rst_>?HUau#|uIrff}7!$ka?+eil43mF%Ck(>^Y_I|X-;P-N-_)zwX23gaAQUr_Qj)%jU%wt= z60f7bpU6^?CWfh?RkWQ{8kiRN;?T`^fURY!W4}h>wV{O0Y&9oUgvF)Ius6l%L#Y+>qZUZhu&$GA@UJ7wem8dz?9q}2Up;jmA)88fBZQ!WJE|AANkFu!vqRmIyX(8y=P1M>SJ;3;~+ zoS@sQz34L=M!KOSde+<8tmE@OP6*xe(3@n3A+u}odYd>@bRB^qVo%j^$Yu}MwTV7T z03c$K%>8)#CmYE!0{l^j@b(niPv>XqR|h&`=rq~>-z&ADzx)3F=5op*61F@-`YFYR z-TF0VgBb2t)U`{QSukf=V-HE6Vh@p0xF)Jk5rF7mT-I>F+Jwh29!)7(Z`QHn<3ZGP zFBsCNlm5|;Sp>|t|HyFeB?hAzflbx!rj^`zw4@1bZsB;N9*OK(peWYN1z>CHz5Xi^ zX<436`mLsJWG(B3RnRaz2z$~W$X~dH_$`|RRHD$7_xni^>77x7zIQeAU{{b;U?d{U zj;#I$zkug{50039!K>E~^Mo}16IqH(hI6&*DfaO#%A+YZAExg+9u{{0`fDpevf0Hk zU%kNYLn>LgHuf?2B|J6J6;W|@8Fv-zE~I2L&e%7;WR#Qzh$*O)06f-smCYZkC4LZk5QxzB+9u7n>pn2pn`yOGmj z&Smg*hTx{u#a2YViZ?;K<8{X1fmwXD1TY*On6d^k=sb>o1`H6#h8ngi3?>qro8p2t zTCRU=GdUE`2bjeBoFzEaiy;yfz<4@RF*=AnX$xW2X5#XVT#GLM<~Un0-Jb(t&hf3( zP#8vVsn$4{8it`jSoILs?2rK3;$DBAw6xcrW)<1K#v?jmAF|p@#ujm&6R$@XtO+Ut zYN<7@?s3a#;D`07Wx_2+}1EBJ?73!1+^@ zv^8zlOohso<7wK#y*C34Ae^uLKd#4Sd}a>*l>I~@Ns}nT9D7NIdQ00S9a<-oHtnms zViM~tXyH(jHF`0Xp^I>|gQI{0KVFqJ%K`=EhdyN)Lw9BZPngr%>nx&BqMS1P=3+w8 z_VN&&Kg9k8>r#gso(&pRJItV&LA5cdiznAh$32&%WPln|&R1+WgT;fBo1Yp{d7?jS z+e5$-!p!OEKA|Q7w@OK^!5_QFK6 zvXSS$H;9#DH2o=N%NT(rw7?fKK?TYK@~8X7ZT7EuTfjn0-6aaFz@PiNG72~BzQC4x zV(YF@WDWd1vXcXj^4B+skS~*DTujIU`pm$um-}Wymjk&DX8A$zy;!I3dsKh+F)@+q z4~U>zbpD7z4CW=q#EH0;@LymwP%&QP%88CQz{P441u+dhNMb__fECv+mHeX8fkq;pz$CE_|l2aF+_u4?WGXQDCcw19ebW~4W^nicUtWWB7 zRFu>(b6$JRcUI>4q3j0ySVMgGBCeWI_Mz&t7~y-jyr0zXLFjpO<bcUkyL6ckwA#u6^A*N||j@)%O0`N4`yV2X&W8S`ml?`@UUd<(ed97_ zyMP%K8_X+n+|9jEfT!HgyJ3+c8QR@+kWmh&py0TgGun$Rb7A&GvY?PVDKO`%Ph-sA zb#C9u-8R-sYS~R10G4ki$77Pit0A>7Kxp$4PY^d{`s+< zZwJh`R2dZ$w0`xmD2J|J97RR9X(v(L8UEZ5=lM66{SqVX&p-}W+d_dCEodj-S$UQ^ z|BlhTvIPHdBlX~T4Zuk?f_bLrM|^RbaQ*WxTQ9uViN(-3Lef`?-y(ejaSY%ye5b$Z zML>l`X)?z^$jF(2d0G^azVJ7fS|*rR*+_p-how~8SE3w@dj}Lm)d7G;3pcPN8OD?E z&LAkq030VheAi!87g&7+`Z5JJy;e&AYe*oc_;lWKcnenNAld|wLt#y9x--Nv1%!>~ zOJz^lZm3#6Yo-hO~Lh4G?e=+2Uf8 z4z_YEcK_~_xsS9Sl0N4;Fzl-h|*5y3BfDHPL3b%?Ti`?o0i z#{46Om^zitqctQR6?RL^AGelcK>Dx`!`5ZYMA4`p`sW*}=3tK<&qBN!Xv>LK zsQy|b%S!43>(ntdwui%qLS|z`WO;7;cH=09g|?x;@^bC!N97egSl4%KteZdbNj;=${>O|R&w z+>B5gbIctfaZ(U*S3(I|{rFZW@^E(M`!HpM2tb13;ad%S&(u{mTuCgPV+b|vajGMY zP-iI3XvSNYGonmY8!3mGXEDNz05SMWc!&w|X1p_`h>ygNu1(MQR(^sreL&~niJ17W;+$wVa+{6(x~W-t z&lj&eBJ<`w4;>eBZid{)c5vOw-G2Fp7p9OjKvGiZm?(Ka2Ihu1*%fGd(KI$``n_w1 zFUAzhyy@^+T=~CO3I{b$&i^eTgsvvp|5&j2^ZOhhf!Yobmt#d+AL>-0iy4`eFZ*ti z@S@kTPS!Fb&@qgTECOn)jO{(lXBUJwpXu%Q=4la4wASv=EzG+9b zl!&vofnTuXfOmDK;c=UEvlbo+M-`2jzQFH zIS~Y%G@t7RKRAN^;u(zccV_{6@ZL)}mys9qDsrpv!^NFR9slVFuQOdeo=ZLAKEgFN zjCiqZnXhy^)=m!5K_(iQ0)nx?a|J54vEi|g5zMhharUn-0gHC12eXQ#0rt5cDj}Vt zqM=U)m5L08&D*B*p?WK%ZFF)}%vo`>lf&69r~d?n?M+(!P3Jr4+$5qM-q$#7|}2h-XJy zLqk2`=DtpJWyrg*Cpiu4=rDkGrR*#|dk~Z^<()}FpVas~k^x1f8UH4ls$U2d;lFIJ zP80%v5gX_N*6P0#4uRQ8_Plx?co##eLEq|MZPmTlLLmIAAS6QKHFsTd&~7=j(NSUQ!vA-a+P; zzlnr(m}mgm$uc@(I!!OY4GHcK)Mm1l++m0S3KJiawUB|hr#R(U4tt1htKd4Y0~v(| zp(#6KQ`~QSrAe1E^76^DK~ z?&oEyLRxl%-fG1vD5fu;%cgT5iyDPop$XzH7$z!Mri@t~l0a%7H$hr2-&{o1buqLX zK+z2$BYC?ba8)>{LYe5q1P7v||LyNx>ZFNBag^VE8#)xo%Z}YbXgN;vWD!yQ7915kx5>9*alEXxu< z_=|85V*z-%klw*{F*V9C=$%!yBbOz7-92`n;Ud^e<&w1f{s2e)u#u@r#;Bs5bFYLV z9+Losua#lax2I}Mu0MfJf$C}<1{B{q3?BZ_eeRCzvwQbP&PA7lJgXj_4IRUk7)ADn z6Gs-yt1W=yPlw0a^t{vl!y+Pre%Nn^#?4;-VuH=|WAnj*<3G`qwsLK5Xf#mWDvf}P z0>r9HEP|iJr&i8=^37Plx6*2hn5n^fdAR#1IFZM@z$U0Rw>b}$Gq1W|DcMYH`i@zp%olx-yD>*K>Z&c2&W+=}kvkkZ;Z!f@{*50i^Oo&-5Nx~J(j@VA=UKl` zlN^P^)&N|%Y@b??3NOJMZ6HyOVuu#pS{{`E7?o4eRzBu$vS@UzW=P!X_z?~3rR9sb zg2OP4yv_b|eSz(-O7j3+eV+R+A0eOP+o{sOZUnuObbi92*D)#3pea8dlm0z+IKcO5{3xKsn>%Lqh zW3ZgA3Y^I6O-t>^?YGm^(PM-CF$lX05ck7&eqF$j!b20qU~j-Gpe0f2UbfCqr)xHg z`A2z~&%-=}Z3n6#3bZIa&CKZ3j7%G`6KLE*qv%8U$0cy*)plG5hgYQ6!0Vq*I(!g#Ln#2DwKBzsA0jW{tN z(LE2s7OGgmQq5`o37m$#DXbHw_@B*7LjjENH@50Cos0o|0V^8zrDl}0I^o3utDD|7 zg}&3PdtBO(0ji8rbS<9)B(t#-wMkhRTFNTn)d+niV6;TQ2%|9!@*DLVIf2*Aho21d zgc8;on^qX(O-s@hoeG<$it(I%$+qWJ_J!awun3S|u?&BPXbP2`GqIXhZMB@(55xvkqv~xW1TC88y09)F>5|4vm7m8H+P}Ua#HX9<%N7E4a zdHDd*VtBshLF*60ohvP*eftLF;K(8GDmgWIa@28O z=#JcX93~79<3~x$Fl}x|)w5S%pi9nDEuwxTRBGT$O~qdT5j>iet>Gogl96fkSe8Te z*?$i$#H?xjI}Zz?5_#^AMJGJxIX4&$Ti@}O_ZV=zUwI1E8vhOe)8=jA;DBt;z_0r( zTpF2}>GXRQsrqFatr>yCEn#EwL4NVNgS~(&O)O5*ugOP~>{zS@Bmn9SloZGWFIV9N z(xqh@P;6dh{-V8SF)AdDg_!KZjRnf2)_x=yfgr=-|8lTT_uJgUo4?nz@`K%x zx>C-$+xyd-!z@*p{?u&e*(JGgwZ9W>{mtbD29`c#IF$4dg+CI)nm}gaE=kBB*I!|~ z5G!r-TBSN^9o88*7wV!(%ILrmStHKVurau&`$Km7F{a}465iHF#o>+x3lGI5>8T`t zE((VPS(QY(s^>tfd4njq7A~C-Hbj^Tl?!h^87T=|9fPy$gK<(e^btv6MWWnCBibCo z>N%X_6R%f+_Z`LX7ypL45UYCo10s^(uW6UlLPspzNin1~?r-0A;C*Md=vO0sRPw03&sp)ueb zb$OP=lhiL!0w1Oo){s7>N+ zH;ln{p8P0xzJ@6KtxMeJC>-H|Yoe4w{iI5wj`56QaWCv&!B#T5%;>g1c; z{Y^Xlcg({vp45uZVLALp!0ZM$__-R+7313 zgRo;jR1&q6wB#w45w{DFXE8PIC{KoX2y^;W@2Y4W*X<%?FcqaWKn&1SZyqZO`IeH* z?@0y>q_&h#~8t(blvq^tG$= z`i|kqhmly3ojHmbbfDq|*3j?0)_;{{)X!P&LF;eo$`+08pAw6pZkkC-WSuO0xp3IE zX;%`LS|Ym}*U|0@#Uf=qQ$O2Xt`^zQ7F3$MkRL(Od2iAI zJY{oU7E4B^^I7EYCW_mFH|1QE^dX!w?c96L;+$s-ae1L{ig$nawKfgf4t4Em=Ja{) zY8W|dSFy6Y?BfylJk7Uk1+1D;k80u8gS>H5*h31y>V1zhXUmZ|b*B{mt8?`bPHz4J zZs{tr&fw!EF7s58oXj?TOz@VKYI0?a@W-gZ1+DQnZ#)hNd5N*2wAZO2opO}lf(YsO zTacQ;^e#t#lh4h>LH9u{1{K5rStMF1dwL(@bD6XL^NL#P#K)z-2@KE#Vu-v$@*npr zf>sdR2QubWz3e;5zInR+Y=SWS1O^?(0Av2WB=XGf*ctMx7un^u2*9-InRy*C ziq(q&GB%#|4_cC=&UkI$UG`^q%1mH3Ma=iX9I^wTMDJ70NHZc@0~5dOJaZQyD3UQ2J^lhsw?&%MLOX1izAaPCvROTtjz$ zNu}@x$c~*vCpw!0(E-W^R0QKR>8S%^1fk~$4wBFeLrR9!6mwlq*|9GO&CMDzn`B9M zSR!nx7{;v@ksg(|<*3wjGhm3s(=gTZ#X1U`gSK)ce%djdL{x+jP3~s%p+srj zD=IvT1HtwvsR4i6ZxBVs;bupe75B2Oj~bdK_g!Pkq(G;H+;2u<^s54?VHq~h|378q z|CS9WG}z%pk2%Jz5z@>4B5V$dNu)+9`}}`B^8@MYUW2!O7r7tkbPV`ABd|;8@T)ls zP39_2$4n~AAUDH#`SxNtg0^}}PQ4gyFD!qY`5R_Tf_W9p9CAPTa;&NPf2a^_Av+FjgWO#U|mFZK+CY z40E46iaD_(0kd*aLMh;xtcy_~S;^tAA|g%2+KJ6@_mZ-3iBiJ2_S}UtRXXyAA`FzL z1A*A_0oArz_HF;D-~g$)Z&{WPv4{G}M$v3+!keM@+|0nqA4HpgRB&Tg;ad#}!A;Sf zM}a2j9T>7eTCxrN3nZ)lx0g?|K&z<7`UQap<@TTo*eH-YNt_6ru@yzUts`F47}F4% zvYfi5l7DnEf?r`vkF|frOP*kpP(S2Y33}Y|BDBgFpJ0m_sG9h-NKPD`$Qr4oe5h}b zCfUq-9r?1aCM!g&Iu-0G?VEy>=5>e*LFL*iWv=w!UP06Ow|nf$BNqON8Ut^Or4Rsip7?4M(N$)Qf50Qwgi1KT-;H%V4+yD>1}x#`r}JsB9kO3 zjcYRFN+{s$J9wL_;}>Vnl?SqtG;x!(X|blG!#7@K;RC;MtW|0SQaw&z{}f5BvN#8Y zw6Lob2=5HEy>;RGz0kY_U@G~N0;#^Me8jhUiL`ho#bR=D?kV67p1>@4OXUQ%BEW5I z+Y9(nSnze9z8D1ty;yh$3L>DsO6s22yc)i=HShLTZWnuZ!N16U^PNiELof;#@gy?* zkzqqz5pVlIqmFq4BxuK$Vi~A9SY#Pe!?^R`27tTHmope4l&aL`ygo}hM3_XwoWK;C z_$jo>Gn#r@t zk0Hl}vY-ydR~u9Q8o~O!19l0rRTI@SARO^VTKlKZ|hIM1nwbRooVec8+o@ zmax+UE)yu2Nv-M+H&jM9!$}VI4e{Tq zm6=8QM@W`Kk0YYB{B%NisTU9B7ARyp23c8aJh)4|bzDK{L@;aHOzQX|_un+~*V*Rq z%DE`GqO|ev?=xU~H?N|78@2_i#$IP(>OFRXFA)`U`*s9CVLCYcFokAro3KaL!VGpZi2zD^TO`{NSS+v$pm!rR7(>Y~O7k>c@ zef|lUwZZZEKy>fD49sS~HFN4?m#$rjNskq6n-U~;uI--S#_{8$g(kDt z87g&y%=~BBA*UY#LK?&RbHjn_L%fw=aQkQM4am!n%Dm{6HtIKQ9? zp&)==df1mg=C4O05rz6@4K$15ckr9r_YTPtER`V#p&m4W>YP#PJ8eTovmD8d<%rs~ zufPEq?99R3H%oqBX2OmfL{ii3MK`u8?nG8tqAQOtfe$@+UE6912gYH_lvs2KkfdJz z4rA#tNkh?*=e7Ebge@@54)S)G(PE6sYM_KiRF2OMh2r^9d_cae(*_Kr107Gfop5%b zR5~o)C3Y(OCB-Y%7&8nS=>n_pw$>jB*VKkcIu6I*>&&YHV!6F9`zCZpCl#Uis7Hxb zFSm+>is^1a!2-RpFu$zO>ga6Cq#(6i%2Db(ZQ6I4P5#bCCPVT1aEu zU?76VUROEgkfa3}j7ySH%9^SECJ8C%iq5LKaT?>1iXMVJ6?RFVr&5R!!MzsjiA(fR zL@|m%E*Yuer^2G_5<(53Y#38SrIzxxj-fJ}>dnZ4__ykJ3$gn5VJYz;<~{3+NN_xR z0H)iU;{S)I_YY{Q-v7rfO8OFrYPFSxF<6nf=1@-*KRu%e;wY>>}t$6}{7_ zh@(<-v7w(PSbz`6<47y>l%wpMyPRk4b6U`wf-h)kfQd)yOa~55HIAEr&Z?)!>X+hk z_ZI3%$BIqR_cghXR?u4&V-HIZ4eN6H(O7?nc;rns!_WPGsbzLxOXED-KcP=TiW6DA zh&>*tp36IubV!j6^3LDwB7Rdq%1P5ENGcHtqmPxy-EfLL4QHh`SQj2XROek6NCB ztZzaz#_1dQ4SWD+;#%&}6F9cg9V)~#MqhVg5{;>SO~5Ncinq2uWiJ_Nidgb|8YPIXszyl@Lwd2*$QxeU|oBVKrSBQ@0YM zfy^Z-V%M3IPmWr@|DNzfzLB+6Lhq0Gft>-B4#ERXQBZOpFHv8I5YGNmFop+zQ_9zh zva&KD*eh?2hcw_p-iz{^3m%AHegF{P`!btWAnp|v-#|dYpTp?R<}Hj_Lx+w+{$oTp zWmHWuVFsF>{N05>^^5L{33Yj>JdJe*504oQ$#idRL`&<0QnF?730pFUVP8ABhR5}8 z-9cPp?w){((p}xp{DAk7BFbDE*l3|*9wuQwyz!`eS5jTcNHL%Hwhp*1wS~_pSXqh` z=aqEh-MkR?Qyeomt{<>pRG=b}_ejdp-xStCm(bC&?@t7S{xZ*6SzwQaCMAnXN0(MC zQj`WhWAtNq=vTRaEz|E26g~?Ump0gp$SHWC0SG+|1P@Lc2xfc`eO}oF@0;@{yN>-xXDmDJ(yBMyBZ(ORb5?*0jDE6<*EDZ5l{JN>RxkiSX6bWe4T9uXB+v{pYI z@;u*J^QHaOV$indN)}WVb0;Miv3HMp*P+(9#AhR~h>W~lu^zFDsv=f~UDOD8p=*}h zG`r%+3hekQWCJErQC0E6{-KLGHWIr}5BnUTsru22W2Elx`OLx_Ar#Ysj+eROMaH{@ zHWAsilI|6)x{v#A8!ik5I#xLpxcs3|IAg_7_B+CX6~LR015-d5W~frE_KZ9%%w+W= z?AO8TLOhr8w8^m>|3n`;Ll5GZDH;kjF|l%Jgo8Z~Kw97{V2l>*3MNy5MT)sWF^Qfd zGoic8gRH=E2xy>~-9dO4wEZJAD!lO`J7@IbB?h52ZQ2ud|KR;d_-6}m!bk{P)X-ne z1<>@(k;8k9dh}O&KqI`2+QACZVrG$FHHu`D!D74=LMmRiXZ#C1G7x#$D2+s8!?M3I zUC7{}7k0G^;OrGaol}f9Ao&B~(z*I<#U#hEhdD(h)H#Fpa$J7~CU(0!h*{AhlN#}Eq>_4Gp?I#plXcMv8 z0|3xM8zv ze;L*Y`!J@Kn-XfXBMW9cjmbA_s3wY99e;Sr6axebH!KKtdX|F(C}=B(r2wT=*udRC zAsJ9F^3X^+E}1xfwsJjro}Vfm-a?AK9Kv7N#oTMxZ`a)Les+d#>{vHiqXOD2ZV4E7cKT^=6lXg=&+ z!WJXR(1O&V$n38!F`0-Q^q~)f!Zt27bq4#LtgRcdhCyZLM2R|BfilVyNAaB^VOdx& zGyW~$gSWcf7w=#`M>A$mWb!j?6t$^rW2EpIgdXL7OC?4Yw4gdD8?iH~SkdSDj1{oS zJv_=k=)#uUKd1qU?L(6AT)_D1=(++q206SF|A?l!^PW_;@6PwquiOrexzV4K~vi| zVW!CqAMm|*>Fj4o5VwcmLTSEx8cgEyGZ~mw{cU_T0F;27T{ zM>YvLOMsQ%0Kcw9a~F!9qJf#P$b9H z;BnFzi(_80y$=F@*~qIP;*ibZX>mEG34!L{xd5@61KxMaz+Q1DzNj;KVUTSVr}0$1 zoEH#3He0FlnyCoU8yQnD_Q^$?r`s2j>^hG3^fS_G)KoLL40X~6P>uKvE-8x0! z`efSU>h4Vf9LWH)Qy+f5dz&{6W`O(oAyho!tRxRrX<6?^l@w(U$TN;y`*1P$xFrCL zHL6{bjEyM@=DVf->Z8=^9u@VHuX&&$q5G|Su)rF}IkMtV!^K{wd2JQ7x_7{9)$))_A%OgaFQ58$^MMne)iD+Cu;-XA!hQLuG`ElJA~pI=JW^0^bT$pE5= z%_2k0x9hT&G4G6zx@7T2x->Rj+YEQHtU;cmi~Sby-gK#b7jF~9azjHAfz1zFhwQp* z8V0wM{lUD#*+O*olx{)Q?xAtw=>0#)x3r)i=w)yxFbx#LT##Bkf=8&{z;~`Go|B{n zHh+%@gQtHDK^*{y7^r>pcH}uCxL|&R^wyMPpT^#7n4Agjf4?s#kUk#x(Ukv);Qy`b zR@A{*o)K0&BfLHfK5HF!5;y2TD4;5FAAtZq6Q1T^&syT5077SYMCzfbw^Fk?obZMS z9PnLeo~eHsBoWDVMdfjbIGpaCvvt7JPpzRhOr20!+O!%N8mET5@wM>~RPk$Y$>21hN#@IieyuZ@M{3t;Q;#7X z#{Cn?eRG)^bzdRgejm%2$25aS7N%mH=!)Ln4b2$vaSf7&wzH1+(+}YCL42G8#)P9O zuH6)d`VG_YVr%E>KVYyH^Gbls_{J0!%HK?DsnlJDwkyPsIn49kEU5JH8j20kU*?UW zzB5h>ko-$YUvL-);*U%HH-d4fWQ>&G;Eq?o@aN*Y8SB9v_aj=pR@SJ4#@6d>S}Z*n zR;T8`G?pV}a*~731Cw|m0xECF5IgG*A>Ye*nu`~0H5rz7CjvCt1iY?CKAg?{DC`n- z!={HQA3vU-q}#E5L9wsnNP)UBVu>%aqH3GE6<=^C6q>=!u=}axKpozXPA3KG$d`&C zk>gE`Xu1~sjbyYBT@vh-HVi-JHhBD6QC;QkNK2nByb{ajy~wDm%tCD-D+Dh(zHu#! z0QO^HDyfL#wp-*s#OTV@ty4^FVD#rmsaBsc%QfsJzpYi3Qy-)cgg8%kWZr7_{EQ$X6D#pw zIv96o`I)fVFbqI`LCO398_P1$kB2&jv|5xk?@|61beGivEdW=_x~gURd$5oJ%y3@+ zOOO}_q{?V)i7ZlX9~SUQSth!;99Tk|i5@$ovr_4<_SMkPl^daz#y1R*LEfR~U8c1Z z!OABm66caAw4m}I_}-_sihxdhnZjb-z?_xoT^Fu9&2=s6C=WJaZ^d^K^UZkB_RUNuOi*u zqWo?i*=iX$u|{|ub1OcJ-B3@j`mwUWWb8&^jvTeiDXeR72Lk+YGGY=Z3dfAse^7P+ zO|bUq@4Db}kO<#^w;xeN!JhjHuRnr>H=K#EaL-PNkgqC-xY3E1NEEgB+Ik7h+{|PDtB9cnyWbzRMA~ zEz{MCfzT6#l=v%T<#76&=^Ka_Btx9KsTMH?1N=!Iysf2bGX(l@fzsL9Q+l*Y8gZnT zaCYOR%n}je<(zeJxQ5h&Pe6ip$;@QgDg;upyx^Lc(Gj(ypUIjb|<2bJ}p^$qEPanY;p2J?e;&G>Y0-}FJxXKy~Owcz1fT`uhM@3n@ zO<~Lb&abGNw#`1*(rj6G+pbp#5#B}|WPWU8dF6E_*Rf%z;V>mSS{65Jc=KNYY+<8} zlu8vbi2v)*0EMHYj*wvDtqy@~wLQAp)ZEjjT@uj(nKSl5V?|Rx18s@+l6}JXTS-T+ z8y^ImYB;|C{7(crGR}!WTA#TTPupWmkBypPGvufFXnP1kIkSgOK$((e0TOkY+mQhI zIJ0|@&hvV&^Q1Nr+yvNu;+so%V~OsJm;+vw}vU@@X35efKy=7$`InnzP^^wOvK?6O3%Gh zuyUs=^_Yofm>R1->!vq52k(O~b-W50c{0(3jbd=7y8Tu5|NPM<50D4?m<_3NS|Xjv zHZ2aDSmMiwlg$-vO&IqXKeN^jXxFbrWMq@Ivu3aG+N97DJ1kIoU?rGl`gmc8Z@mH+ zZx6r;MBvTE3RsT_VrU1$kb%|(!8Ndrv^>3eYG^Q=ACuBy*f9^FR27ntcTr;Tr|=*}Uwq4M$&zyFk4^k_QUx%WucM>5mAn z!|M#y21E}zO!@jpKt|#asNvk)S5Pb?=Evt&16YUJ#9<0|4)EHk@+kPNkn6Nc4U*l} z1}hHjB_Y*l;MX4M4;V7G1rZf@#u*JSCat&T|>?~;bq=umA5Sf z@oBo=6e}5?Eg+tm2acT1E4*Q*;*+S9UQ&`0i8L<+DuPhq<*HW@cZXLO;InUGO@!M~ z*KT6z<#0lj zQwdbgD9*BlGA8sA9(qcWO1hts^1Es=c2Db9tS-GTH0(WZbgGTdA_?`nA#o;-^4A=x zPjHT-xYD7dSc1*456X8z;z9OfvmqO-`1Qu%G`!8ku*iaLB^0Uo*wf+9Cvg5@-uGEQ zooA-fk)#uu9$8>&e&CC%wrWNXW=XfXK-N5kt;figf*cHLIuvp_+xl&cN(N&dhX_PC z-5(gaIL`eFus7hBAG`$U%IhFoumIBp$sOM#p!n$fCph4i#$i4nP!+(MmgikJa9YTD z6!rt^N+@H%UEHPm*`!_U%hli8$1I0hE=G^>5J$5?%vB|5=P~Jh$f|V6@!E6srXH0A z^IQh7bnV?-Ib)1cJD()>}tbSX0TCv*qGh-yI35k=tKz+O9; z50D;FOs-_Xh_BDKTlBh;h|IIpAp^u)8oBO^CB&m0U+^|JZF2J8N>_p1)O@hD) zdLW)0l|&tadd+T0P7R8B`>k0qRdu;}!1MaxJ;|&30$Ri>^4OD5(s8B*hn}Cn1v{Ip z;;?{^B##r9q3N6KV3i|;BzZqF|A*NXN4Uqo;7vW0W@ST+Dpk;Y5?=oM`D_y{UsUAX z87{p{R;;ub!Bg``X4}GuCi|Vaisr2(mU9|8K6?g+etB1@d#lg>^kPGwV+u?B5}qou zwSaJl?Z*6u(`F00A3LeVNbx@~&|wt!<{Fr=pxl&)k~$frnqV5)R0@N zhpRBbmQwdD2j2@{Kcdu(xyIy&c8bzZ)ot+uefCiVbm6H2<6=l9{Gc0_0uXw<8pS=A zOVsCCb9q|8J|Cfh8WIsg(ZlJR!Pa9ZLoi@Ip9s)#n-gT3&wcu0q`YpkGP=}rh^bY{ z8Zf{-O(T5h__UX@aBV8`wu~^zyPvv%AJK<4L$wB(gv8s>Xq+*FWq;Kl_yy0B$NTm{ zNfZm*|9B9Ld@k+-@yJ_Cc^m+)awGiv_cz3AE>0+vpDG!_j%kOV6aP=_Aw+W(mS4Ez z|L53GKbSWN4r}q83VOu9&AXHIMYY};M-%$P0@iz~jMs>@N^wdcMN7b!3d*K=J5e{2 zif0(4bI;iyGqkDVYvOQH`9qHInup?XtmV$b2444Bo;PD7{|DgWIi8A_>obw!(pF}B zlUlzFr@ha*AxWQft*^K5Dzocv(T0Rc9TbG)!XO2JCb74V)My)|Vv+M(x{2m%7MF`_vy9nnff9u6RSuxC0r{g=g#h$gpV>lMHU z*$L3x!=N|}RvJ`CKu3Hjy%4RX%WQ8mbL)2XI>xX(zn4&eY!|**pnj(+g>5iLt4ef& zM1BnUPX*09E1P&^y1kmoE-CA+go(D*c>!9PxBp3Adp4Jk=Eynr`;fxBnvK(Eq&QDyi&Eh_AXdS4^gL&13zy}fqX{$)aOA%&X70l z6^w&438+W695j7N6`%FI8_UWmLN2QpJtP*XFK~Mo?iAhP3+d$Fh#2c7763$nTtYgLpMHK=S1g0cwZ5cDid=uDj zAX|&wv>XJ~EJlYoQqxg%6w$#%HqNpH?)Y5W>sZH|ylXkPr<}v!~Eos@&eM5R`Ia3BB zS-1OWREs;h&#PDp^uDE!_q7XuLon>Q-2L~njMQTMhJ$7;+tkhD`W;PCiXCyOrBNek z3Nk;!7=FHFe>jjIn#kt7*y;*b0tMN8AIECsRx7_qL!7>D(>_KvI?v|!gf0k{#X~cK zg0_0C4F9N}^q`F4-$LVOoY_%pb>zo5k}Al?VYbuZ&wqlusObLE_LZNrn~?bHjnl@Z zLXuoy-31)PLH1aZv6H3aFFwS?t@f)*%#a)up*{dak-mvZ#4nFeZ9mxl(>W=B15~}v z<+i#JVSYmagV0$l{J+uH{aj6gUil6JXcfd(JkEKBWSn^0kC_o6_4>?R(eaR^V5qz` z1vV<~KRn=gUh^dSc#MA3Y+U2q2e_`(5^={lZA!QB%8$nzCIXxQ#!wU@2hSfU>=EJG zd5Wlyllfi2@{v(j1Oi1~<+Bly-BT+w!nA<0*C4n-=Q?(GD*`ISjsrLOh*Fgig-H6A zz(GDCqHJq%NIgRKWC+bcoX4Q(3u1@Up<~r1zlFFk36(r^o3h#;_?f&RdN*%0G$gH{ z;8Wwjf0wKLxRBATP7N;Pm(XF+=4e@i%ULe9*{9}_S@DJ%`t`jR;DEYh+YOET&rszX z8PS>!I>R64Iiw?IYl{9x7~V__kWR&B;!}_g@y(Le`)^{;=Iw2W^HXh~EgW9telj+} z^OK*0aW7&ArkFLGIuZI$TX_-Af0T&+BjOgBlkdf&-YwC{!m9qr!^$L^=`O!4%Jls* z;zk7opQ%lr8DXbK4?s6gcUF0d4X7j{JI8&prhfa={(VS$m7*c!AJDp^1yA`bKdq7o z->tFMZRC^s&PIq3BjoJWA#30u@cz7R3?!nld{&W_<@ve%TWM}&fiD%(bnqbD(V(RH zhs*9JcJ~!z1+Ti2r5C$@`>+f?z90NsMcwN5xMYd7ck`=#h)tD)oN#1Dul8=a0pplH z#*I49bCc0X)qETd9zGsy)KKkwVF7G9F!V|RixPuSxEPuXBqt%t2lhQHp@PE`jy3Lf z?0-vxq4_)a5|J{jywTO<3HTd$?U(MaAY%5Fv(3;_~roa>sxMLz1MH>ZAAd? zyssue8E`ng6!Zd;d+^x9F(rfU9}c?H@DkKpCe||{d-P!JA9Bs;=a1hLQcVQUMk(gBUr}yo6R^J`Cg(4 zN7p^t)Swp`I-_^Q zNFCKo(S*Dny;%BVenb#YjRWLPnzT&sS6XS931v8XP&7!?z<=B&4lY{YfujVm z-U)ST&rCwrW@+-W(p( zqPJ#DrAfO`ZDP=I-P7fM?FSXP&^9mLIF-5VGZ+L(>>U5XfMAj`zl3q!1sWf}lK7BA zg@IQx2Glnig09U8bq5}d1ETp_fgLW%3B}-ZRLX3KpN{eWrVT?*bb5*C1MbTbQ#u(5 z`gaa2g;?}gL&li6RQQLugR4qXtrhWkblrk5n`FHRNtEfBWGEyjLB)HHTECD_q>tR5 zD}q3=Q?zx;m&&5Z5B3VyPY0|>$!@X$`xG$u!lSeo!Y!fKi5}99wx}RdW-zcocYv;i z#XdKepToSeEz4}0zI?fz{S40IwS=c#G-!ghJISX@O9#T)L^M>iV(A)EF3^Xk^`QCA zjwSm1Z5+P?-1_L3L4XGV1Q}bOHHW#{{l?kc@p(;y%HHV0cXO6mPZ+s!qgzC3saXQE z@mrA)+R`EC?fJULmyRACfE6ivp{h+m3&m+gS`wpamrRLdbYIBDdJEmh#ESP4qq~(VW0ZjrrC-9ym6jq&n~K%gCz}rrz0*0s z9N~WN3t}v`_O2Z`Do8C|Tn}{yRDdvTtOhwOgXHcLkQDP_E)dAtY$20rW9=%=NpZX* zp!Poe*YKoWp2!!GS1Ht}1z@kEsR;nuhSeAePD59}%ww#zeMqHpi}^J^ic?pH>4g?9 zJZLaYxBbeUQ4U81S9j_@W~mszYe*Fplo30*?MM3^OfL2w+Ap$+ldRRGF0l7YObQx7O>l%6;{R!l z0eNA}hivs+RAn-pKc^C~)jp*`!jyy9>2Fz$@>fe=Xs+WOb={*oje~OIJ}oXXbkZ_k zkcIbQ58E6y$mO>AwgTNreP`CN*%+)$C2Ya#8rlA-bm2@iVkK$sR2!etkOO~368U12 zR}2e=jP584`uv?pZa@V95M9A`5lF8jY-Dy{4Pp8}05WzzQnY>OV~WCbL5u*A5z~2; z3<&JxHU{Qt09hs1c+rq8$6WXAQlt-a@c`vI6ljLuYv^}EYDyPv;|DHF6l|qnc3CuRe!SFw!VCSgez)&6vRag% zca~qJtrjYxL8CRq3KB*6v8d%@`6OPkFP#T>0m&nBDlY3J_=#Hgi^!QX8!JTeDo=?9 zISww!-`v78?w5VqKD&AK?7x-3*e==r3SVvM2TL9ydJz!!Uq1vFdTRF*#)?DFUkv2u z^Tn-4om{^S)LHUOAW!6GV$Cx5zdixTwdK~72NkFNM4kG_mtTqrn%crvP*NNp7lwxr zquBEs`MF|Djjkb$g`OSJoR55egkf=V1gRZry{O`7LxRo!xj8h?E8Xq>qM}7Uyp+sC za-LJvERnwaA_Vlv>1waFtF+0p!FK1={m*}c6M7zHm)FG%=CV z_E{ALqng{mx!kD&L395s4F}vsQIDP=D)~>GhMON^R^lvDnBi`d=C<&Orab894xN7= zrl@37wb&i6raJX^xm<`arZXV|XntAypM6*1qOg(trI<=LSrK+^2xHMr?U2`jwlSwc zC?VHl=(v5%PtF@Qqc8o|nX|qI!NmGcZ%wH!59VJCXht=B+TKmyo2`M+Ka_vE{N~fy zpghvgod{q3XSfWAD&;x#2}IAfp%tV}h~**E%Ub#n%c65OE zuWnK1hRL9xzcLHewe6K3R6t6+oQQ9mdLfX%A%R+R2on2{VN8w+J>jX^puw<=UCaJc z1E?-@sMES(2iNuBThU*7IzJZL?y;mEGgw(v!<^D*wuZ{_dz?^sDVVQ@xQl_p2T4vi z7(E(096P9JQNzXi+Y~e zK=9`_b{{|dt#_%mPp!U2Oc+R1;jjhkKv=Nsf0szK+{3a$? zlB+M9lSD|!vh7MCAz)ZKAB6wP9120R}C_4t?N^E14(qv$}iEB zdHm(lpUEo=1Y>gN0ihx4uzd3qPjK<=zx;-81|foXfg)}U;JR`S3XmJP_a(6hM@*f@ z8dRc-589D!;XfeC(^3PU!YaIR=nf!~E*TVj$13pS86AO}>pfg|uew|{ONja@>~rE^ z6;Utj_mbr>2P}q%Z-wxx9O!q_Cm0pJ1-l;(l|#S~RVVD{`u7BU-zKti7C&Z+^_J5E zkOI8@n;l2p$UNrLM-c#&nYaCK_eW1aX~@0gm%C(Leav%tu;2x^BA})YnSvF#>6SZG zAfWlV;fl%I3Y@LFqBYw0L-hCzXqr%%f!%!j-7sRgY7jWA3qdx=L62GvtCLwD{C}kH zBqH)@3!sJO=b4DNLLHp-!(GH5Y04Q`-OCuV+^<*m@PS;6lzZ@Ji4YKDPqJJ6mmeCDUY)OZZ~Geg{!e_fK;4FrR%Bq-sBoA7gqF6{V{Y0_L51(I3(Z*K)9$a`U{hJgy4>Oy!nh94vaGr>4IJ2K@h_IwagizMlV zY+m;c5Qv(0+TYnFn04tNtn>%m9UVd>tFHu|VwTW`esoNC12(CF! z015vTZm0x9$umOlYO(tRVNW_T$Gx^lS*3i{vtV6LHR1=&Qx zf186WgZQ>?6E0(XM3wiE!e=U{bS%}5vIVQy049J}FG!>j3eHcWz6o_PYQ;BnkKOV{n zitGreIA$`1N3LxOUms3qhaqcyDoA<1yU*$8;!=mUjr8Fu(QfPyEuF-pqDyon==oy? z6LEPyGiTa37^@mT(HDx=uw&6GA~*5_jf_?zREE3cJ!M9F#EBnn0O>YKp+0;!S1IO> zgNqjxBAFFN&7H=JW)+dXN7tQ?lMni#f|xQ8*d(;>k1Y)hLtn@r>djG@etVGPPxtH; zC8NhLkVnkM<^0Cd0$Atf$PG~j=?wtz6HEP7?xp1_Y_0~)>Y0B_+7kE35G-5Tp+3)3 zad(wp$2)QC^cz;s<~3=jZ@Mcpw)Z>D4+>j1XTfOaTeHoocw^hhj6Ud1Y{keawX9CP zpeng(mOgI5+<+rpggCZcKS1Q0^0+7iDYlFV)Oe{1TYor|eIW(&%NVyS0O%T$IVIUG zq$28HP%bwc*Y4nCk?+RzZls9amVgEB`+T?d3&;Tc3I$lA$MN=&Be2i@0&n9>l{8zx zs9#KBLyrL|^9Pta5GRb3;M|rMQXpTti0JrV6=%N36B|jnhsxLG?a{~dt|`z;BMX)y z1oycmksn;K>cwyqT-R(loD@dQCO!{}&K@XmA5tZoaYttkX%-xTMrig<~ z_HQgz$DpHnsk&!@-)9XSL@u9q zBZlLX%iusZZ3cFQ*i#QJaz9Cz|zj6*!#AgkZ^XV73>gee1O&BDSM zt?;-d1Z7=2GD<-5qsRcbexKdnH?$8cpBKafj})ZIvkzgAK};q^+&X*KRX;1~hRRPt zqbKek!oS`mxqfTPw?Cx@;WfN1+<$qrpo)v+PR9-f&&89&@No}GaHzz7IW!17JaRIH zl`lXmbbmw~OIB&yxOea9>)w^;?IJ(;jOYQ$#vc|#H#V7d#Gfg{o<7kkK-qlyF!X$v zjAziv`IbLW1d(~EscLj^qiXGZ`>Rf_OkEYX{t=hs*e@i5z%6;fHuMWR#$eR?iQb>4q!)KW|O>Ie3APzFYa;R2M5Zto%~eT84lTga}>rLJG0%t`g;C zg|masr6Da=T_Fvac!o|Zgtn#rKcQa?b*P=wDu5Y;S)$WnAuaKJ$yD24Rf-1%uovcS*QRK-shz!h3IJe697#0g ztq&iImH>5;SX443p19B!chQfyJ(JuUB8XXXkmD{E|xoVoU&1dEZMw`QRh#u*Au?q>yQA1L68`xLy zCw)aE6k#Pw`-HqnNIxInSe8c&G|soDZ+BO2c%!As0}T-_=e_cJ@Z`*M;MxXv5V=bs ze+r=DM<3g%x-sfV#$?rar#7gBW}@1!n{`T`GmgxB*7jLNV@$uR%pgO4w7dt)jcnA3 z+;pfXixxOG1NP@Id~}&KWVPF@w~WD<8|~8o;_XCAh~0nE>)5o7QDJ9QAm16WE?xx` z5qvk4xY^C(JCgpOT>&oH&68m@xbd=FdlsjJ0RiqSVXKY#gi104aivEF5F)T=N;vXH z@*gJqup>isgCunTUy_9LP*B0vt|C~t zYL7x|;Nxu!Hqw+Px0NX5dM^Z&vgY|r(;efyFmervv_yPcP_R!U-Tm0$SM~G5!$YBA z7&npRPnL7ARrqOHB>@~l#o?qZkkPe#J*S&a1>cYJy$5yy?+HK`-c@YIDvre;ZKnZ@ zQ5}&idTDqnD$*e00}OE{?>Z!T zQbt$GGPCxLiw7l%VOD+6s>Si{X%-Hnb%w>Ve-y#6=P*9r1tc`eSE|MbDd$L6S}L$u zD&-*i2?g!}_(lO#@eY3Iz%;Lm({142pCs`Si~)7r&~iN|XCjbQ&xZ1#FX&JdRpBQ0 zQ6&`a>TlXYvCa~;4;n?RCiL|9s%gS&*acXy>j52rP}GfTHZztQ=2YFc7%HUTMX0tU zi*D_(XgijzdK;^zuzqEkffZEeEod!+xMy){X*5ugA=*9pl%Xh|VS1eb5T(4157kz| z=gu2V#-tj1yU^3``ihrbhv9Rp_iZJ)Z50hpUyQ3lXxr4Of64{3K&SqJV!UP7w_lK` zzmqq>i-r+$gyc4<>l;j_=UGSGcAs+Dg*i$nw74UpxCg;$w?d4Q_FVPhX45V)+^ODf?6$ zw#iH+a`aG;XsqamQqs721A~fynSDB9_ZKGoh;;A;23yLhx~E`LcdDf9tZ4Fafa#GP zrpwC9>JiD>yghZd8+ZXUCI`FGnIq4u;UW6J72O5Ztm9qZHP%549k%;_E79^!zI&Gn zt@)9eqvu`(msQd+WZejT0n;lORyPa#f{5`OpUy;Y*$2`d>i#2+d_G1n8Q(V43$hj! zr2R z>9PiJJByeZc{RNVyuRtFd<7N5IOv_b@f&)ypu89iL6|tYzb8DH2cR!Ke|ru{zhymZ z;7xiTZL^GH@$VT^TzSl{JaTJFPDu7$|Cta-s!0%`NN1`ZE$A-#iTERye|#dqtmf+x z_J1t6Lv5nP%b22&X*gXTP9<3NGS3TkV?XQ~Nwp7D&>q(Un#n-WbO-%5_Z9GZpY0w* zumGe)68=X(#pOHVg$EyHzaHxkz3o#Pba;hK6BXr5=(WA=$F3U`xoWsB`PNwR5%MaE zJlX?ifjThyWxFn>%E^w(wVw^UU#mw{h)a4fvZz+AydoPEr2O(c^y=ZKYPjD+&IDxL z%&~{mLpR~0`ZMLrToFrcy2(D5J1yu{L75-yO`^~$uss~c>)wNiw%}%g1rXzd`VXVe zq|9w$Jm+!DU=ZTun{x$`8c8)@hu0k}rBw#;UsZ{f+aAEtYQQr?8r3@W+65P6_NMRn zBbmzEKJ6;hX6ClqjmSj<7I1(87|>cK54a*=C>UI1auuLiDhiNASh}n61=~GreW#-o z&-Bz%Up*9*Wz3?y0nbrCFp@5vr%#pA$B?ZiL+NaR?3a1=_mn4s?A%{|ALsTi@v9Ys z(`B_kjT7g1wuD(9CU?FOC;gdUMrtuIRilZMgHmjj@1VVkymk+dTe!ei2q5g%S`kI% z?T$>Bq&7uEW{CEeS6z;lek8&-hQT~BGhc*Rf`^?CY{G7S4O7fex>zS!a2R?h*q8mF ztMCc=^pR+I8un(uE%3a@HiE8`QdPgh&k6gnazP|@5HJKN7CiADWfvO5kYO-Ob;9II zcT~%oB)~{Qz0T5uFc9Js3W~ zkWTDHzep5k8{iF=^wuZyhhBRAo2bQz1#%u%j`>z~D;dd#;a zt(b7x!QratY)i!cRN`}9sYVnqVVpQ9Ep*>to#>3X$XB$D3eR&Eu-5FOC$DG-;O0$W zE=0l^`j;?-+|MN8ek$J#SJEU|0h^Pi?(54yS z@wpnce#%Yu+vXf=<>Wk{%?s#vu!XRp0J$YDA=Z&Xl0l1akjodOU66A*kk>W!I+}=j zfsFC46D1Q)6OV$c5z)npIcP-NHLS8(98^<>^ti*}*a!15z|t$>wa`+l2s;Rf&QJ_i zX;}HbX~3uukJy?j4Wjz^^U|Y39z+@{Qm{2Ix0%z@CnSL^&k-@5y!OUq9VsTDJ4p{O z5=1i?&N(J{F<>Y2=iOx6R6H^7FGmLNd@ROSZwqStHF9eAU5KC zzwRgU6~g1mlV(9h&+H`KFsobc+%4Mt@5zY4=ssA~@=q}j9}jTC8zMsKRxmf+N7Ze} zQLfN|c?)s8|DuGe;p%zsimx#vZ6?m|8-eu=O&!@s=+v9E@UHp6@2F-Lx& zZg_#$FYoZJB5(XANq$@p2Vy4#s`byCj5nYUxwsM)o{``W{xku`Xb_12fUIQ3INmZ#-T%^t=0Lew^&;@~$5m0IfmUr1(kw#A{EdkH}*tkZ1Wx;=hhS~ zv(H7l!$Gte2Xhr{qVP}w8>Z3np`TnWlzzRN@!e$RO@`*ZgdCuN1%-gZ&L=0J_K6iF z-&=2@XQPyt;&=j}-FUG?jp%^MK%9N6ZREwy|5a)yRIXBlGb%Fq02{g)VF+6?P}P*U zB`vWDQ9ZA1viUEUbPOEl68o6xL(S;kf~2qaU&1p0CyA$`z*TUgXV^GZS~P|J!6U`o z?hZA#N_YUVyCmNMg@N@)jM?xG9_&M4Ps?J2@`%&ca^~Krtmqt+cY|<#Yt;EOyK=xj zZx;0JIkiafFAdQMx_&1?mqabL2IcY(xV!}|avtgh*Ki!o*lr1x6jryv#eV{?bH~2W zc|NYTZr;S)F^+fhPCsJ*BQU|dANrl2qImL2ep@3*5x{%tCO!-nQZ^sG0XvYa_v!uM zx+jBrl!)(^#+;&Vb)T(OMvq}muoWT9ckirpgi}q944t9Nw`qr>!SmXxoBV6|FhwnSXbSjl)jT;`{~1_=5a??es>h=L{DANbpgptc%vVr1yWqb5h6IgWN3 zSxr(MN^c$M(!eyg){-$f%8ciS+h<4Hg|f>&?Wz zq!IWwG}8N7`wAr}ogKao(Fb5TaDUZ5L+XV65Z6Aik=h8&xy|TG3z&G>wySChmTMrp zRYER2)oZzSYYO8k#o{{+eatPEb=CoUip$mU7pC`#6qnKQf~@`Ca8*%)1L++1ELG)l z`ZnJd8L+5jv^QM$5L09b8}MfJ+Y#|FN7)m-on1TO?-Fnq(IN*Fo7qK;`>$ad*O?fM zSMjY#9)<>HS77TA3?FHMeCSQ*KoaER=bo=-1*&3B{nCYFI^5BjM4|Fv8VJe~ZOYGl zvMU?7ff5CH`p2WNmFJnG+2Ii+S|MLxX|l`l8`*RZ?*XS^p?wHE$CfUra^er8{-U?v zwj_%80*qMF%Dg!8k3MAPzgR$~pHk~#4^5y_LB2$YJe6dbei=s0N$gWV&efeJ_CAMI zHdWZH!IUxPdoOPR{U72_>4lP5C+)>=AGU5rf4Tv4fQJkXLTZqC zkbHEsLHOZ^%>W|oWJH~*d@ja$^ya_`4v8@saGjPUq|M7INd#crZr&OTcc$@@a{IrN zPHA6dOW~U1CCsFXA0eikKyfQN| zddU8(pRgp2$+wo3C;rIwOpca#W1xQ3G z%7gkWV|YKh~TVI=ycg0<>H z6rKU2LWPl;q-oGCn5;z29(Sp>jvNAqQ+hy~WJ!Goa~8!DVU#zOY}$l+VApPr&0zFF zJD;pO)WyEbM~N-36W6fC=s1JX4RT9pLZuTyFE3AHV=>#vxj5+~>^BFLvBOcU ztXAC$^PaahqJ1T8UAF|wF+<{E#2~I~en@oT30z67U=HIOt04#wSqBGxj9Y&UBNC!D zEGvWPk;iij>emQ77B#xbdx%f_(mfH;8pidj%%(7z=mSQdG?DJA315d9o3=oIku%80 z3`$T)+9Vjp7blHsaZO;51S!Mi9oDOi`=K-cCd{n>9QWxDni5ei4bkR23mVLx?K05& zY&r1_hKW4H-aX3R|J;P~I6^g~IFbJ>r=vBA-J9$$<&h)o`Q4%w@6#q1U-htyY=sm7 zaxXkC#S?F3*~m}-9P>4a6*;QpNQ`K8&#UXvp%CN`eO=lcO4h=gnmWHgnoq?Ls>{Yz zQulmKp=|Q+@tF{p$?BM@|6K$lsY29!kwAekSSBZpw6tft7W*jV<8{9uD`7olszjLl zP#)WG$@bQt!ry-D?A;hc5s|7smultWsQQ<$L25E{oVa=k;sLDu73N_7gd*_EZ!5{) zR(=ek@Byw=^%z3JF3dxE?=mc30Zz;Q?=4Ub)oln#jQd#ITWsmlz@{%G>qG^k=U&z#!D-9B zD?(SQgmDOv9mIY5q10ssqi8!|UMJeonn#^=Uf+r_#nK%(17WK-O|E~SR$Rs>eFHaMBtH03SZ*?o$|6VhdV<+n;EdfPQC(ry?2 zJz^1kwkQ3z+wWD}!spQCd{ux}E6giCWD0^P8=R%XL|~%Yh&3IRJ66&y(}d?9b-%W^ zL_J`8<_$@zC!BHE%c)fyp6&=R!Rrx41=&?Bq9DdZ)$=OI?`#NFQFS zXB)u%*MwbyKo|ytipHsDTTH6Xf*k5l)AyfynF{=1@2 zf39YWEc93f;thTm7#?j<*V;2&d_hZ8W#KG;ph+Ygj@)LV!y^+bi zr7AjR!M)zOEhNS-Jsi1V8U%kz@#r)RE7xWP(f6}oh{y>bL_s& zvw64vG!@MEFwuSu=mWIaCgxM^`gJfJ1YQQVJ-?|ThI-2Rar#Av~DVzia~{E zFZH4giT!(A&QI}c%*o<>R}Yv|!rM_Jki? zh7p7pu3evmBf@Ol$JE+0l?QQSy79unp?G*^I+Zeohh9r*Q@tn5R@ZlT478OXfh zq3_|1Z!AM7N-10T2!3xK1qJSLzO>)I%7?=jDL^j#<ZNRZ3(tFwFojOfVO)% ztk>rCU-AA>wj1~lw7XrihR2b8p^X}lH46tH7OQ=>YWuRG#!el)dN+KT64Y5`+?ul5 zOB#8t$@MMXVysNalR@V2WI_Us)qf%6XGVVKHb$We1~GjjoSho>U5-n8rg6?tGPbaHZZH*s;E z{jq*c(bWB<;`xdem$PZao0e@b7MEMGH}65*plc{NIC5DfGuo9lflo!aM??kPvEfeR zRup&n3$RMt+}#{Yq02?FT|ln|L^2;}cl>8)@r4dVBrDf9@kKA^$h@VKW0TOE&WqT2(L+2kZA~#_s!=nd=Mxyx6B|9GqBo)< zct{D|#vq7+HaP1!cLhEe!x%vK`h)Cws0=xj`xeQ6_|P<{@He?#3tFdQckXr7S`U68 zgtRef(t$xC@+s&)1ly#`(VjVA<9T}T3?9S56Rm{Tlr|M!#k@WAXBvhPoYZK{Fwxn3 zOmh$CaaV5qU6xmY?9gz8_bTHzJFGauEn# z6cM0|WTLTdu2GPNo;hBqE^Cq*ZF$u`H_^`Z#KKjC$JN)c=``YCq2SI#snkFX0+o0+ zX(`67ApSw?eEw!OQ%Ou+X_MTy?pfBpG7)wM_b%?sl`3eB+L39d+_FzyBaqpk8K1{ebzV_dF;;i~z)0A(zt$FBMAe#J)8`-?wRQ(1h3fb=^=NhVA2> zZ|{Al*aCCdM*UL&^nV0lk`8VW8>B4=+jx_#WjZ`=NQrr;WMw&O19r@Gzd)lds_uEH z@=vP`=DG+w7P1b0nfMJ`?Hyu|`4lz1dt)9kPT+iAPhTfIkt*Z7TgrMdxKAss)&ATGDw6hL2RRvk}K!l-7tQUbq8ru}JLk*a313^9TuD@i8# z2VcaLHSxH`2G~(5}OpNoBC4@{=@L%oW&Xp1=Qim|d01~kB zY5|^2_#Clymn9eRTTZ`%4XM^%o+fklJYAW4g#9tk`#M8Sml=5v4)2Fxj8R}lZ`se5 z?YuSRRBfo%#Hw0-*_TJgmEZm{?hXCpHo0*2&d^^u-SYT$1o=1xSflwPk$oLfI2O`d zAPBjD@3(kt>`u6k0Kz*X1nb}7QM@5~K(ZF}->c_C9s&FXXdG)xvexXyUz?B<5yCTk z+B`5A{=IZP&+lWb{Rp@BIS4(D(d5BL*h()qdLUYcOo6GP4$nWy>Zr>1riG5nn-t_h zStD{5GIkoNv`>)VB8i78I#$ld{)sOnB$}n7ZFi~i2zOH5?>?WW_Ls^HwxGhxa~F^R zA%k6z8&=W2ggfPEf%6D2;In^*oePn}lPM}e*%6f4n5cjr+6wv7JC@rp6gt11jUs9&NUgy9#T^1dW)^hOs29)#{$ z%r6feaLVF!?Fc{jox5QTjTaENd@MEh`8XBe~W-0P8~^U<{n)Bfk1K zkx#6Il1!>i3(!0RdT*Gs8V|~6asswZ_7+S)17HSnk;@GBKt>}8@N_1|08x)f*b}bL zJ}=?0J6@h|&j)CNSVZC=3?x3;?ZC?{RcEjqT0jPmqiy+Dfi17=Z68+CGmU?vY@Qf$k0&T4t(HU4~_YB8HHD&aRp?rln;kP z8<6Cq9wJ*J<;jLH*B&bVZj{as(sz@z(2eC;*(=!c_$)w9CnuIE}a@dpC>&lk_@>2n5NX47W+x5=G}fC7`hQPLV{Q7Pp?a@y)0sDIN@OuMOlBz3T_gq%WXDSica7)04oL1w-U_*mgt>0^G)Ca1Q>Qe*pi-nmoem0LmcMWBwla zo%p?fLd2pd7GFa&$$;OWJ>`rx9H9r-Nwm8ll%IZ$yqZU7Azfr)p)@e9x2CLB!ZVSc z7*3_$nvwvv%UH-`Ik)$lR3tKJQy(|=2z(|k=ssdej9x%*-GQ)=$W(qDP>=lk1;i-4 zgEMb*iM2MLUxU&M!`mQ2Ko`deV|}5`FKO&>o6fn!m!L!_lk-$k6QZk$uTr{uyUdJx) zXP$F)yVy`KJh2xM@;A5$MRXi-ne3W5oo8S7|9@0{e_T`b{=Y`KYbD(DmZh=T)hoAK zYSuMv*MVL$teZ>|1o<)iRVt{6c>HnZm_$Wtf@WnO3+9h(0^1I#I2ay=V$L6R(O^3y zZbMO#9oR%U8*XfUpYQegejktTUzN$&&dzziU+?En%E5HI4_1=%?%f}vHcvw!dzk(4 z=#ka{*q8b`1#g&!#+Eveghwh=)*d5!6O+YYB+cQn@to;?T#NnW9h<3VtkR04Y5p5? zw*|&h3I~>JD}r*A9Ld&dV3-r|1JH^1P~!|unKg)t-5**Ee?wT!_Y_SFpO>j@?CS4@ z=!4`co5j5tq0h<9xzEbh9)zLpKBSRp5C#l}Q~~URPmPVrcNNWWz42WxDJzn_v)R`{ zu)SyA^nH+R+rcdS4G71xK4xZr*TPbWcKy_Q!VBNsk1gY^1FLjTuSIz2;@HyokIaMd zCOotY?PhI#u0|@{FAP0dC?D+3wE1Dd;X{7Cp!W_>~&t7-(8XDcU?xXvO zW&cmV&?v>R|3`cZv=9m{&u`*N>GLY z6bwkmWn1?{NBC_}4V;hIHhe?5h>g=m37vNAU`40>zLfNb!ATw!qcSdz|D^MK!J zY-wK=z542tl%;)cC0J>N3o{msTKf}DZKZbacbC4gA8tO^*LY`L-=Uja%R-wmWsTpM zu0GBdLCeG_UH0WM58XEa^B~dJT^(4hnOqL);bSX?k&?eU0L?W=)~e)!G2k>O_B%&$ zBe!{fq5C>*Z_W%<-GrAw94>)usQOaQwX0*lKPJ5;?{w^Zz`y;71Q8$RU+^}khBG(w z`HZE$yID&yL3_EhFt@VvzgpUNbTQ8q12BMbu??%PB|avH3o1$%mm)`i zF@Eqdn^c4;qs93Z2VNiv$xdLO+KUp$>x`X)vNrLVVf6jj-UZl(?v4lsioh~#^wECd zrfqh!aWq04Za-fvtDPYnIVAl28l+O5rDF6ie)SsK-~>;rY;o!4vHpi{yW;ET`Ivfa z;-s6f9pQh|p+`G~{>=O!&g8GHLnaZ)Gx96%PoUC^;Tf<-XI?P`+Yw+B^dv)?H_R!| z7gc_6hQ2&zP|XrQb335@3|`Ws^1REZ%9j*EAOnW+-)x?>_x5Fy1wrjwAm9^Bant24E* zFhy9($H2^1;4;y`h&@I1RBsG=*TPV}+hMASlXU`iTz8n+(@-REwBV}c!H>FoEow*LZbU-ts&8oo$Upz^!^KE zCNdFbfHnij&==Zfk0U$xcm@D(P23!JD=s)}_Eu?Iw9?_AjkYn&*iAJclqtc36cXJ@meaKn_CEx@w@5UL>5Dt6u#qX4Qn!->J zEE$X^{x;$BeL;1bh61&RW-3b{WJm2cIKw$3WvE36 z8w>9VOIf0RBe}&b$p6J4nX1l`Nip5o||yUyNT&vm*@1dV^E z=ej(B(PkjXcn(qlHbzFll>iBV)ZOVkP7BZ`5VkqfaUA9V2HFLQ5ADu)GebGq9ONqU zxazPB;I3$uYN@TZwPibyI!-Psi2Y35}3^81I)b^hvIpQ5nGSQT=Ocj4B*_OhZ=ODQ*O+0?acq}lZhZ?QE#swgNLfq*OAUNL2qa0gAM02LA;|+iFkm4|d z{y6oyk;85ATT{jDF5S~4-hg4hptgguBFQq93DqY7>?{PXaTMao_JHqaL6xz5lKTtV zYpAMk?{jy_Pz?3V!5hkQS&FzSuom0fJTHM4S{G+)HpS?H<9DIq@DrgS8oI>~R!f~j zTUX^z^31wbn)u{Fq2PN!Ek0)Q>8VY}bpX`ToRwOb^7pWL@UTD_FhN6I$%8uT1HaBwBw_Nevp)9;ouNxXz>b;<{v$ccHt z?;eZZs(yKDgl_#^$91dqxU|WW3d7&KM$9qur8j#|$7UoOSS!2;j1rSmL+y0juMLBU zHbQ#f+aX!thue>+^WUZI#-sNbyBwMul0RTfX$wsX1$cMkHsKcCq3Ztpc|K!9>~DJM zwNCCa)rp_~bO;Cc-UeX(Ncvc0n9$z75>d>c8Qh1c1=0(uYro{8{BJ&qWH}_QMZKP5 zP>#}{T#QI`$NXlAeBG!;f8Ye;gE{mi8AJ>Ry|-+>Bbz!9OrX?aG(gfpSTS%*e)?}=g(fdH#B zwSg$uwV?egl<;nQ>W)5s+)~v5)OG3X4GA&hh2o8WmtGUc8&XS*LoyR8XOo^YFGvK~ zmUrhh$J#$YZ~f@!`6@NkooiKfwsIbGIOqIKYQPDFP*O|PxBPnP?H?WXIbn0-^8qT? z_Bra#pee8<9p=AXKD(oY)~5Xk-y^~d>Ap;ywsW>TEzYT7EkZi9WY!C?Si?5w=|b6<`&`$nGSj zKCi!wlpKt?t=c_PPI z0kVJcv-yA<3Ny*cK9$-lD|&9c;~vfzOJi;uIF)ae;<4*4A!p0f1gDK#E2jkSrcHJCd$pa@qsaR z!ND`rUo{Rlmf9=ky}}W8<Zq>Z_aR#JogqV;pR1xTMymnw5} z36md}nJ|RLSsp6#7P3PDee1{C9M+nxjl@YaA1h!(?BI`ktOH0A3B$lUeH+(Uw0~J- zctQ_{kt$@wBrzJ%`res=YtYS&h#!;%db=-2)_xP-71nu@`VktqT4a3Bj+<+e@Cit9vQKOP+l6J{8%Zxk%=Hd7?=a96F_v^YFr)E z`C17SlB-D6z!XH@LvQ0QO`oE80LP%yevie!+SG?o?Ux+(NdlOji&V*tmd5Zh}#S6nB89Jmj^ z{eR<;Dg;)xaRj0LU271303-tsW{oK0v)DoTVjv(#p)cWQb30_4$C3yHe_`blI1Aqg z(B^d}tl`UQ$ipaL_PG6g=EqY=zSgY$_?@s2RKbWSz;>9fL>UJJd46Y^EC6B%O(HN4 z0obsF=L?^PZn66B=Y_;PFq3pjLk{^{`G1!x(N+Ml4wGf%90lbdEHe8?Bad(>42h_B zMg92NZKMcE+%rP7_%U|Fq%8F- z52S%VUV6y?wZ<$Cz9;l1AzM1XOh`az?;QdjnttQIIf_{>F?!`_BA|F@NYO^>Vg8$w_*#V7kn(gg@RYDzG+jy&cL`x`=pN$$Iry-F`~Q_E zMHmE}mYrz)WKugVx>QR)gsgfwDrF(0kxZ^S8SoC1E3D{(#!W=MDvzwG)UCyop5wFm z5{zY4Z{X`3g+3Fip?bgjSf$N>{#WI(HHc1F^81ju2XTf-i51x2;CVfq|Av<4n?YoP)a6-KLt{J$*^RSE}8J$z`V~0&>6VLD+ zg_iKW&=iOvDoGVpD7>!U%JEcL|H9!H$Vj?bP$a&OObh{kTBs zDli5ZRZ7;mWLwKXwP46k!yImNu-OK2(Dq;Hh55lBKWZhw614Y6JxSVB*#8n&l&Ml^m+JFmi9h1s!k3^0tCK1`ZOn1Yu`!D5YSFvVWqe}#!Oc@ee9Y=TFU zC=t#;!wq$gB!32Mn(B3Q#NJZ%Ujkw*DxI7EU1+_!x%4H^ zrD|_hZS>HWzYwsPh&>=rv6rcpBVZgrgDtMvR-{J1!T zAdMkO!cLHjK2=Ik@C&;1MbZmVbMK5)Ai zN6LOhg~%^ye#9UQa~)HGNj#@{Bx>K$qF;pA(vJMM{AxKwAmfTpJ~q}43z028BfVHw z|B&A#((NE18(d9DKzE@T@5Hb;z9e6S)TX;*{St^fv29PsEcW~~JmCKwY;Wh!9j$0- zhBYJ#-7{*7y%2LDW}OZWAxL}Q!eP@FNhp!p!8FGSsqK4AJ^kK}8I0oC457ne7wPxe zJDr%Ev46Qrw5`Lz>v{F-6$p z4?r%2F_9Q7eJDdX`v5Lopv_h2SHVaqMHT`MQCdniYGL#2wZ0 zk^|kB27@zv%W2zoKd7v+QE1uD575p7WCU8_{-OBPD_xvoP6&LKzPQ#EJD37!!MT?} zCs|NUAJ{(_cS|-{GEBd6DRoj#aHcswLf6;h4a-@@t^)j#k;psd$L-G{cVT?0h}jm` z22EFmFpIwMp}!BIr$By$EaCh``GE48Y(0iF&rhbl^|jBzQW+?hWy@Bq!nr5g`Zawn zO~aTY%9sM~F&m_ff=YVsf%+oL_3*0rRnT+8OPcZmd$mlTxc3s1G+w1dUFnZ6GmJ@rUtA)UwnFAU;>Wo6f>0aeJ zaTQBWD($`G_dy$La~Zr@r^|h%qSaZu&bLcEuJY#Y4_)g z%p*mqPsWR@Pb#%y#$p)V5;C9ut+ELwpPhr4?#B3jT$kA0AlvW}ekHD1+D(gY?RwP- z3o|wRW)>B2@lI2?+`&*g3Zav-MLW>}6{wWFWVJj=HGZc&^sK8fS(o1n;V_h$B!lu@ ztSh}gVv7Ud@or2Bf~aeHbLffRVvzFv2*|??$OEp+Ki+jOq$fM^u{m%^rctwDSNi|5 zBR$kah~C6rc_L;J+?DEDxGh2b(`;Y4LU7JKa7b*$@lM^6_LZskq(py06>;>SkQHIy7k(%^MNog7y6g{Jrm437^a1nS@lol-VTsK>_#&vD`8(+w;R4mUBx*lcu*NgLxD-W97O2R7Vt(z0w)RfOa~^o7a49- zZCKvNp^V~Y0sj*LK#E_DXRneZ4ahbv4oE6)Kd*2iW>%kQNki>jQ&h9~hSj~p zElWG%AX<=Y*aIev)f%?oYrw&GMYu4qJ1J z!xg2#`K+Mmv;ZR_L}^M9vJIWUa;Tr*8ic-FX-LHa)2_m{%LQcv+ff@(hhzYaGFmy0 zH@^grLdQ{n(ysmvMcpGgZlbN?U~!F>*)|q;4hyHkhQIUGFJXM}Is}F8+4u}T#*b)* zP-z7H9HhMKfNRok0W!wVRpUCf(q_3@t_QO61eEq0nznN{)U+wHF? zkfA)>+)}c+6>&?;A#)gogn>ndae?Fc`h+tnsLZ@qElZ)ksQqhGH#xAjRA39pmS`~q zaq_?ONAR&x1yq{yq;S>O8xM&@eV{xGzI~|h-E~SDIlF+@5ysqo^%X9a^uVWq_Xucb zMFZsk2?oI9dOQ#Vpb=|j;e;nI_GcFZW=vqn1&9?GLXwPn6dTmh{VqLV4eXnU=sLuo zEdgkv_n^H8(rR4SuvF)HBtB)Vjo>EDfj0z(zAh!K%Le0nM5-$3$?>#d;Wr4OKh0DM zGc5?Q=0dGFa=VB8!wxvuN8`C`nRS;9IQgx!bD>Br|B}sezz)aFK)Ww%wQBmf%JzS@JBf5{e?z9hLOA;FXukp?mz#_dRY&AvqJQZC@QA%MIqYR z=RPmY*>4-EI-OPtm1=^sWD}qC(Dh0UVG}?y{6sfeH1vw}NPQ#qN$p@BqC?p1l7+wF zxCJrfQe;X~uWt8Oqx`Wo&wa2&TxlEWhVW8s%^y?p_3(uxWl79l62{Y%x=e^Iw)`Y*hjb3b!)IiF77nm5`g_%e;m(hYpUbnkCC zzEi|VfmK4j>7#zgYLBdQf6>~=Z@3HQ6_BNc}Dx43>+^3q8W=ijU7bwR> z!5JRM?6?5a8N}ZW-+zLRhnLejjNb9*jTzu7E-Kh3V7d zGAV2_W8*sTSR;g^#x`XWa1ew(DZ>2@7+$9K^Ogt_X$5WTyFT2F3z9utY zn>3EP_!`zf`&n%&f)<+WJO^D^gk>g_T95F)A}~+9X7lAk^cuZURQwi>!q~M)LPTv% z^y=a>!$aSA?+~%`rydLE7@&^IV^2O7HNM?GJ)s_JjiDZXu{JO*`Ge0R1p7zL6$8`U+8rwMj@1jLY034N4>H>eDvMc|;x^c`$-!GSKuU2- zl?1ZSoO~k7?C*p#_bi#N^3__PI?wVG89bqQ{xG@R-7^r=emnt&ihlm@Z+h>Ll*>OP zu4K{}m2)h3on2i3rdQNbAvo(1&bfI+9sHAMivif#PW*E2BK;)MGd2q6D7o@UN5*Q* zT$0U;$^cNH`5EyrAZ?xDY3YWz0xFU%HE^s5smX>};JdcM>cVqN_o98V#?XT@4d zOavLomzLqMq?GKtwPrw}dgK%+P zT&(XHG#Mh@WhWnCNW*s?nkU3A`u<;VCXcD4tQKh05DDY~CA)G2aE_W+%IZhBze2^7 zH8_{$$%*_uuU~~)SD+U}RD#FH9CZMS?{Q6Fx0lZ#DISHPSRbf(a=RUUPspOKED06b z-~G#R%sQ#);{xl-VKtw{W(#HNs*TW9ii7H_MUQP~wtt5V_W%yedtbkqxh@$*5?R zBO4|W8dN)U{-`_hEOB+tlzJABen_x!#VpJcJ`F-GntJd&^x@g$Wa-HWp$dRLg~a8o zIQTw9Tet-Unsg~Btyb8T$jrCSlUjoK$!{1QEDF6R&-xP<7N6q!N-9fS|9HO4Bc8*o zq%MctX>gHVMiu}{G{yZXaIVsNz#?`6Q3-MIjvmFEZj$gJbc~Dug5?TtvC88vYqT=i z^i99(x`|Ilv)>C*X~^}m2k%`3@UvSyV=>F+4mrP zV!e<;=e{cHau!Sw)F%zY5@vJ;)th5DCbIU0DW24FTT@g*?F*uTz+vD8xv%4CNM@+U zi`#G}>O%}vWGzMAELg2V`NG!vi}&0%xEonMChhjKAABqOk7f9}&!L_y{OIaGE$n;Yi{ejvTNzTT!T z2L!l~dkGUaGTxQWG+4qe;k?xgbRKr7m;pq`O7HU*GLQS-FJn^$%O#*cbGQnGe9r@T zV_~Mb9XXAUJ7#EKQ^G)Cpve{q<*+AZoTD8Ej|;g zTDm6AnLoeb8z0);Qr<6eR3WB2b={vZVJ>mvc9@ zK)%p^i5P^Ll-+62FeXJW+a_yo)>F}%L3Nw5d>lr}PjJw&`4n%t1`u1-9g9oO7shtO%asZnT;xNNe08+vZuXXn?x!C0s9fCyC3ASSCh1AaO-gEM#mW0~peE)8w zPHZ>b>}{yz-Y#$-+d*0*LhWR%V6SQtYHSl%gsOapu7K8g3a$5u2%$>asY6U6N}_HD z4h#H>7Tw!$02%b}Av)?3kj}!fC>S|92GQM^PD(cs&n#>%;aTMqPPaDyD4zVs&VXGq zoDOOFGN~B&K&tomo`AODLTaez3ETub;bIY`!SC{Td;5gDEG7+EP$uC)p~yk*DDT4D`t(ASZxSpt7kAEIoKz2+K~vZkb>` zNdWBh&t@Pf>qg3nD&@T3hHW2$6OdX*W+8%i4)=TOHP2>Dr$tW9!03>q@5&8+`8+H1 zCKV5JC-vj>l@C5=!n7#9=jW-i$4-^~5v=cE0gj*T+@0p|mq%|NKB!WI!}^>rwbWCo z)YUgTq3(2BUFVaFmV90NTs4Lo1XSq`NLrP)!`9VMtoeNz0cx(4LngzM7$~yh%2a+f zs}!8{K%h#NSd48r-k42Lm%mTs6YGNs?r$5-9tPG*??It7b3skNk!0x?FsZL3yag@h*$#3t-Y{(=8AjmUjFd7N z$aVsRhhpCgBWP^!x1)?h@g@IH+|@8qx5A^&Ny0JW>t3|mxWB~<*%FoQ?O!vgvXvlJ z=D;~nz&mp?iogMzutD!j4GoTv!cU_y&W%dq9lf*fkd#gyC1B5^vt}y4^_cXsZU!n- z<*_d9H2&u(&62{1{?1@$``OBtl~BDvk_I-clDb0Zx{~!rS25zc%Culk4v;9cY?{IS zen5miK?_NZfR7|;JW!;wX5&z(MWHgSgv6x4mqj-IWvsufG!Z}4g*OaU5QC%}w;Bv~ z8~C-*8LTu~C{OZ&aa!|+OMKG|6pTOeEp@P48SRoOZYvx<@JyJ)oi39yZ+a-KiCs*I z3r9o*@((SmbJ_)3SdTF7h9I}2pWizUi)bI2Jz$sSU_b?`_Vxikg8w^?UeSHLAhs~{ zUKh0X7-V-MG350YeYXH@0d_H1L%t?xN=*UoIu-c$9U{fA*&GJo9u>kec2Lb3p|Wl$ zJRFDJ$MR6EoHr~KgcXtWu3ThMwM1Q6I5^6a#J7r7n_nzx76-XqfU=PwN5-;i{8{?4 zWKeeXJ~<_k!@nJ-vMRtz5~YoX{a4**tRE&S!L-~Y@j3e#)Lfk_-TXXiF?dmB%N4_H zxJ4QubBx}i3vfAPI`VcxlL4sc(CvTwa%G;D?_dVzK=ce46L1i1WGnpie-Bh|;_ zFom#f!ydT$`7*QbhC~Ru_q6O9f|iW>tJG3a#%KvILD$riG$B(UMgh5vb>Wjj|2`-g zAWq7CglEm@qmcnfqgqrjQ60Bcaxr=cE*ICmLNKNU6dRkd@o7A-ooddp|if`_o{J?kVh{|78z&@n~K0N@n0!tG{~uxK~#>(X82$Utq0L9qc5bOLh~xR(azx~p9wW-HjNV-ZOyA?BeQC?oax;^cR?Zzfzn0*!T4LROd~PJ<+%quYie$ zzPTSe{(P1%Nrlm72Whh+>(7LCJKZuS5`~r2q=fG#YIPF=52r?_g`=i!r9^?k>*rs{ z0Zx^yUl1u}lnMi)Y%T8I>+HWC^#w_={ z^;$bsI!6*zUxo%dCHUWOb|o-SrcD1u-6si}!3@p0?w_um6{`CT6Gxqbq-2p&>%Z_0 z2FfQ)%MR3TZo!Rjn6(dvgjQ_3kHrtl;i4rHv1KJ_^0k%Kk$t`#&_LL-Y5_Of-Op=S z5LwQ8oLesYyblgelIlrXP!DdVNSJg)adVI!bt?I1${E+<=(APZW?4e2h`JQq6wEF@n^6Ke z$0p)3x#(*+9wvrhn1j7<9{v={)(!Tp#r3`_SWlqt%>yMeT|m<_#1U({ZS()_g=-0H z4!~yAW!Oo+CuuR*)X$H56L5k1#Am~rG)gFa$S{ME*Qme@*`BZBMfzeGT98xmns-p? z-44Mybj(HUWAR`Rh`?l$?Q=4b^(ienK&5FL}WFQpqdG4b0(3-%VsNX?%8Jyo`LR>0KlP`H&!x5Nv z-2y6uyl!VV2#9jNjOjB5o(c%_@F2jP;adukB1f~oYLP1rv_2H$*nrfY-G`n>aR`-4*ac>Uwzhm7jh)X4c&N1%p8Nx3r*5%+jG>2x!Adt8>x!yv(G{>Q zEb^|;8v~qqO|&e*1hE4KGNg5qCO{t?GF0!XK6enk+m$6SOr8UN^L+%a+s%PNr4W@C zAyeY4?IWU7z^@|s2<4OO*`Qym9r_}Mz|b}bfncS5%~v5ljo0+vHK1Y?Fbu>*OfgZC z;P)occ98-tifK5+3!)63P*d>jN=c?SFr6Jz&yw&+v2L$DeNj<*4dJM^;RW^Fq!oiI zo3;|w;xGWwChvZfq+tbXP9M~G%+9F%pv$a;;y|0s=RtsrQ)Ml*eXa?%R~<&x2K({-lq8;Q;W~ zr~wASryrDVn4-P}T^ht7L$;xX)Qb!`q4@NgJKWsgha5JtOLO@oaYiogQjAv>?AF)# zDxxR#ii1f!QF9GWJ#$OSns>@d`o1|X%4J3PGr>k5_&w;my*3^L2xO({h*sU-520#5Ca@wF-kC2&KuUe-PXTRT^w4#PYOEpmZxt$t z#y{*mvAr2rd}pjno)lw1>p31ER#edrC)-sDrH(=!9ty_gJ2p1>xHn6sT1?trB)rO@i z$>e8A_lPR-pum~M6;GgsX%v!=MygKyl1@-2pFh;i)qVjF_`QQ=HI)YOz4<^jFrLIb z&%ced6F4FiwXRSh&MHfv7EH8Y_w=3s3?rl5HNd^Y&L4Cjnuyfa{JZVimAslzql9^s z9FRQB@7ld^e&&Hkbk4!whg^*V^U+-TH<_;do`g$9LBhsTAorQbsLI%a!jNz@l*|T2 zhGIl;o40r9OD#ZDeTVSE3>qT3B7wfpm+pF*BC6kkE^JQuL!}Ooe6T+-sJHNI6QL zhhnW7)>DBg&4ZA$3Y4riXi#zfD?Ga2B0uH&tedt0;pacA+Mej=-#Hq+a#7CaF>BCr z|J9%K%X+QSJ9&`#loKI703CV02#QirW1z^yKAQ!TMVfLmyB-8iu*96pxAJ9`>N%dJ zexd3gpn~{EL=-~tXm)#EqBTc!Tjz}j!>!85#(Nj?tVK^EZAIK$NxEDtw;$qfwnD4i zf?Gm30awkRpkJrnL#CKgpleWyS&OMi1e|}8qJIpVEr*V@Oyx`tZ}Vrv$5;S15K49< zczOlY(l&q3NLio+T59D&uj6nR@ULb10r;D8qBl=~i0;-D2FeE<#eFAZnqfN`mxDs# zTQe?DOesin<~Rj?B&q_)yagGUIU=IO}#!!N-fzLP(hw{ozOn zIVh8}vIzwVdd%`U?Z!tM1CNZghg+a=bJ_D+?yr@t_I2ww^ z9Ee$?Fp6wVJz^Hqtfk9&()N&ht#dFw;DMYq^7|)|qXi@%eijj676zh)u%wi#PJkgd z%LNrDIesco(IxI59wS3r-#wx$_AIoXE5zb#mYSU?z)bAFRq_%FZ|3I1MhKrGfJGhA1$7CCDMjg2N@#StCY@HV5#sBeJgO_aTuo#DGR6U^9ZiL8t;L zgDJp#bf#VowYOq$s}ES?7Zdc;RMo72*|`VqDUaTLuxN2J5%ES% zW)&u+Jy@*;{k&d%RYEnVVTTN9dQ^cJ{VwYK#Ww)U3MgdMXcjAqJ;V=Xcw^CF&Ao00{I9{cXk!vRaJQg&upb~^Y16^%N zf1j9MGAStf8->p=BCCu9idr8;Z+H+zwc4{-3c$^F(O@#}Q^Y|sF|bhuytFfYrg5h7 znjk|Q;WuV_&~Ko<)yQgRm9mX>p$0(Ei#Q2^~aDy!06xBa^$4rj*Ek zyBEI~S=oxpIbjM1U(uq9?_n=yUE@nq0d$Xrj>vysmiIscys}N{J;%nX{Q7 ztLHVH=;sM4SV*x(L$l=9GLiL>QKNkb_emT>-E#0B#49G1nI2>Y`+V!-nNh{{9GE+8 zD#y(Y29gy(xJJc55$(cX0o2x7#+KE-pgvDn7#u$)!c#amhy$Q){NL)#rf+15Lc_3G z>hRZl&{P$@V)7Hsu|1Jedwj~lOyI{k#DrXxS9U5*_hAW0jB#iq)_rIZuzzAdc*u{M z_e5P>ufDhHtm(A07%I?Fp{9~8t)eu3`0{+MeVP$uQ?^QV`o9Ut5j!aNMqs_-U}E{i z%s!J|#x9Va|AlBfqgQ`PH#P@Vr<#9gDS{L zBC#(HX(e1G^?B7Gv@xbCRPa3~DOUaZNnbZ2O&-PiFwR^E4a$>%WO%Pk)r){-W!kB! z{0&5UkSrw(9HT>JLfnpm1`*f|)5g1kqO zwE-J=4cMjyw+SiBF!PvzL}A$m17yeG;R71;A#V3z5fH+AG`dr{YbW#e&K+Uy)`sc= zrM>FWcS4GTcQ-~A$h*Un2bYa52W$=<;YKmXFU- z4&f7@co~6!RrJxJHhKOC-imz5^@scUc!R>OrxCDHH4iP}y?17WGp+7Vj;b%TzD#V% zia0IOQl)oLwgqvZI<~(~aZ1|rmPDayTiQw?cZ`sUH%-4O>OPJ#MnqWGB-H!X%fKZC zh+`)Np>35U)+SH!fg@ zpyW@uCO4+T1AECI*Z?6a1_r$A>!8F|vTTpI{5`@cc~!LaWiAd8W{ArGy~Sme5HInP zIk_nLR{6h@tuNh*+?4fal3R3#%}lKK4a<)g!@tzDNWTHU0Wt34dZ4*!K(|6hlrz+T zok?#}B9?kKH#Mf;*Ez>_jw@L*=dl@`&T=xvcpz5^deC&Xby`V%mPLVsE`s*6VH3Hs z0EEwR0Si->v!xpm71yD9?9!3p$x1jHXfmsi144TigwJV}`Zcnx)B9uFTH_;iLmxt` zfd6lG^}`kZV*XaF_j+u0fOEnwlhfxp>}uoG7ed`|C9&$wRt3H#cy#<#5FS5+1GN1W zi|*su!F8dg(96BWMmbj8xbw=>N8#f-aA{)>7WP7_1G{Y$lI;-lO#?r&9ilmSf`nk8 zB+>|D1l$Nv9NJ|NF9v;>NHK(EB@+V2f&i{cybus~5JyUTJW!apa4k41EY(63iKH$^ zAt#H65CL0vEg$D;(2&}%G`YeSPtvZcq(1B<4cH10_pQqpA6|*WS->3&+_^e@L<6Jg7xx%WPys8%@}PMbBW;ay=g6#-O(EWcd*~Ys?ck? zd&X_zxEWT%7bwB;+*;Fe^fS7X0k2^k%yt$uCr7j}*>NyI_x`-;-n0D9?114AAPQuw z?DkVx)U9>RkU%k!vaNAs=!Z4I) zR}dZWLQHUMc=AEKOEDRiyv+$u0z0`0q3((WWPuh!lhoF$horG_rNzB9Q>LjEewU zfNb5rxEi+c1^Wk8_x53N8?nM4__2ZIMgmGS9HH;?W8WJ54p0jbR(C6Ev!Sugw)LZW zbKGcD-Svm->}PWkpszB6Y5*&c+csYE#OrZ4gq!P`p;J?!h&pw2Bd)>m{IuJ}C-< zwPWd{x+9r?5IE7Rg|@Gtd3LT!4bXS)NLn;_Bev4@rO2W&Cl;SV6g#5ZD`>;vI~?dF ziw56IYkZnT0c^)vQwE^r9dcbsu%0meKw3bgcrYE~5RBO6ru9de(QzEHe;vmy?MDk( ztB~b~l!uU5z*FW7_+bak#tM?hMZNUO(C+RMlpZ{*nRV(H@qssAMn=b z6(FDD@%f5>RbE?4``T?2l|lLGoje-t$4+B=UZj}+;YZ0D8t~LtKLAw&s0Dd&j5e(i zxCc_kV+>D}_$`i_Mfw8UUz>0^@*d-#ifbiCixnQLHq9n&{3Qe&mTCU+0>%{l61?9< z;Sho^zIwo0`Q6ikt(P(?As8lKpR$I}VT<8WVvKkV0~V!%gm2&J{>z6r&y>&H_3iZ4at8jFFw_8rlx05;k| z!9e_`aszqZgyWmIlq;jKeigH}*WsYOdJrK;D`NbCbr?M|5yj+$1PS9X2a*Vine6+q z8jl+2*eN)sCn7kvr9y0ab5P;zBsDrneQZStqyZ(%F|wSZbfn0A8@(vT@SOM3Kd~!d z7y*j%HtJ5nigAeCZ-tm(L8Qs|0gAdZl!q^cXEt`ED5;#}yvLSiGXT1I$NyuJ2xf9q zP21Q-jVP}Y@44bEYu)8z?gMzC%aq?T?(7^=H8S-vD9 z_b0t4V*!&<3Ead~x|(P?TI_yp2K+=y!<_beZG1eV+yLOAF4O-IyDG8)`mtFy6DGT* zD5-^e>6acg*J-zijg6~x8kl?K=2hTnvT%6r_ADz&1@eGJ=d7sWs?avwx71FTZe-c| z$`<{0|J|s1JYV^Qkx=<}+=mm{N(B3bwr<|GK-HVD#!6pO;%$wPI@8ZS*BLazGMJJ0 zMVBG}#$q(E_g=+U14B&VZTcENDTo_W(7A;=h^ zYx0r8eSoF@kVMVe_Y>fLWM+Sc55})dHZVa|TO9lW=}kis0S(4WPumE+p6M&ZG}Fdt zGKwPb4KT?qcWkpr(v$Tw`9t_u%N6Eh6l7_kN4lF>cb4Bsn;1*l00)M6n7m7wcH z$kK4`5Beqq*6oQ(9s>AB@2(MCXXsnc=WoR*u99thfbzUV>JYnm?0vOUecEUKhfs}V zH}P++K)`x%`=&vbvGirz{5iqoz%N1gHILC<>U=BCij!7#t5LrB1Z~^LEq_O%@rHUA z!e(E$6NzHVtFfxJZ|Tc7?g-R{&Pw>nuZiJMSSr zxMh37L2QqeDw79F?t|QjPv%dkkx>1RU%HL59roC9X%UMK6BY+b2qCG(ume%}=D-PO zMbE^T15M;YZ0Yw{%Yf2m&<%OOe`Y4(YfngT;^4l*eHmG*jRZ~~5AuY!_EUG&10~P^ zE<^PMcB=FzsSCKLJdIs?0jPQl0^}mkq(bTQnG{0~63~bYMhI+41~!!1JfK9f=?~O} zE@*7l!+f0;*Gd#8y%}p4P`%+X!Og}YI?Yew^IB;~d?dJ>L%$FCvZy|}D}3OFE8l88 z_kWX7^ckzCq<^BhNs4wE452c0XD=HM#Kggnpqa%(%FeuqX24}82exO?Kmdf;4t_5+ z(}~Oql&bRJq5|ZayBbFUg9&t~_=S8r?LCam80ZY_$57v(v%yjAN&OD5+N=1D0beU9 zG0-8_dR83Sc&kA3?;k`bBN2U|;&y}7_Z3klA5HBv3|oL>%{-Ttf8nb@`7+Mbc{}dG z6a>y%L83t+_n&P*(ZRJL@n|udCWFNyUmu@#Olr9;+3#6Zxd!&;GFj_B>#3`WkW0jL zXDh8L`hJ9NEv}z_7QYVP)luY}id9@PPSO8)f@p<+l5c&}pt`r8E2do`%>1dvrdDXL z&y1kG3~Wjl(m%y|Nqxf@DuOVSIS+)FW6GXbzB3Pv)Jt@LG7tB}k5OxTHuZfN-0)YBN5= zh*4>)=FSv>Pp#-QEISKDIllDwL1%kO6W?(Gf%YfC^TDgstcOlTjn zP}!h7&62TA#x1}&x>Fg72cEcgkzt~od?0-A?SVHDI0_{GGu1jZ{&VMMuR}dF#oNfCnE@NLFV2DOU`s0UoGARc!&LP9|#Xjtkm}1NW z0qZQxskXm5za#JY1N-`h(iN}6Gm!iU@&n2#W)a~kpj1_ zv3`{GKNwG7riSif0`P-NL|@{uM(4;=t_+18*y|w5;kJioNqnnb!LHX5o6&lxK|0+g zR>~pjHY+*@uMqe^NCl1pi|TJOdPgol7Aqf)XC>+Hj{h#R9ers4nY{4VqO#g_r8em}U+IL?cpC2aiG_OV{JuwC+q=x- zA&-b2wk?{xeI&yl$wusdi%t=2fd?9=Oc?VQm84vf{N{THiL5T6seL=%q<^C-z(83% z7^MZwO1Uv~X?%7hXVRY<+Arx18g-ATqg)All18lK{@#WP05k6*k!>lSoc+BY zLu`QLHuO2+R!^urE?67=h~J|RZ3x?tvx#yiTXAYWjt)50Rmjux8-NU9dN>TLg$Kep zJF*Q2ha-DG1CkoOJbkRS_e-m6tppJ(Y_{R?{cbxx5XTDPJ&F1K+O?wGX`$wlM=8G# zIU@V->0r&E`AW;opF)LbHdl4OIebvLI7&PFOXOMBgcn)JOuC84(k_K+<=pQ>esu(! ziWIzAIjl4r+WoT-u^d6UIYT^rwUK};>LncjGMveZxT)MrY7m$CR-W54)70g*=NK%; zKX+pASgO%-?WKtY;XI87a4xBPbgCY4<@+dPS|5*!5D*riay|c^L4CmHiTIp>5>%1F zMf0!1N4|A)Fl%(EJeWeZc<=oalY)BvF#H69M1H0W_1-%~0veHvFb?3-$WS$)_@3Bf zAQpj^6xAWBinGXF7m)c1)B)2&oVEqC2Z8&6r^w0K1AK?kXsw1w21cP~xQn0d#{}Zh zqb-WG;-xVPEIhaZSzq0>(J}7hjkjq0f3rUF&U2Y~+PzK%FieE{l*Dy?*d!cF} z!6~jdlJ>R!^cxo4VUN%snx^zYW&8rkif?m1FhdEJRf>i`EFBGgrLYE>>r?VE0C|XJ z*1(d&E0O{avrn1s@AM^<`8ISp&hm{^o0`F3X;=gE&uvMIqntZMQ$No$+u-qWc5$cn zAqn1AAyk*u*Air#odZG;55CfOWEMG0RXOfuw&+na%G?J_?|v~-RJj81N&XbHRbM0w z&NiRt&&idb1l07%sL5aE~G`wJOUs{FS;C0FoVDU^IJGs0>;1>c7Zj{>9$%j z0?uTfU59el75X*eQYCB{$Qqx`5$awN7U1kv^PVMGCr^sZr^~zXpJ#FZm?PTob(5B&`ljk1-=Y*nw#ii*Rv}D$q z?KwXk`E0l(avvo7kE1L1CTUa4w)P|c^;iiz5+yEF1r+rq`6J2@&lhfHYfnaNOATs8 zW{3dH*3h;5Phe3~g({h}LvG&S;>pyAZ;=MbQZ0|I%g*6(xKm|>wyeSiH@}<)$-zg`2h&2-`6BS4+Y8pDdF?WY7wq`tI#36 z_2FQqqXA;tsso`i#ML%9YO~Nu$8(jprMLe3f7p8W_$KSS{~ux6Iklaz={&S`H#lyG ziaRK-w`pa})x&JT0xdnHAZ}<2lnNJz#5C)eRzzDAm8qlUp!7tVRtas>UJZ_Fad_Va z+ayRy0u)A@t8FOsN=nj%@ADJf{k#A8J@$A^#2%6>*Y)|lKd+-PC4U{YF4lhLaKD@2 zs9NBX+tH1g@ilv;uA_L?oSE6bKI4p=J&pyL{WLv$m$LUh;GIN_7PYKAWuR{rq}Bix zx#uCt0$2=O11a%7NWU>84Rt-{J7QFt zpMvu0vhIc(7K~44sw~hjiX9cBWHoZF;C5<@vmt@zjz5yp54DgL+wwswHxRaXTmf$$ z#r``DB@Y=LTm-kQWD5Dj%O%zBt&&N*6IHT#BHenMVn?70D+%|y7k2I+-{fD07{P7+ zXE@VhVPbkc$)D8uLNF&X-Sv#xS}N4f zp5d^=qWq(JKm0^B2mIx5O7cZz#RbQ#(8^}58BzygVbFO~#k%`r7$3GQ)ih@~EweuW zmt!$WvSdcT(jJAN8hH=r@T*-6JkRZIm;<3%r`n0kQ4H&z?Wh)nQZGu@L0|6mVvU*+F&uaq zB~5J0ZOyjp?1cj8Sw9&!!so9~ykm4UA6!yj+Ozx)rIfe@7jU~~;6tgwN~GI2vdF?` zjQAIG@R#W{38m@wrEv%XdbE#APR19KhCU=_<^tu5ZjR3x4RicokunENM3;&wuQ*WW ztXL$n4>5N|6JfUC?mn&ow9)TQ-uXy+b)G(I{U*AhTN_B*pX80GwK}Gfl|pc@>oRL= z74u4j+dp&ruScm)j-3Dcq!T|<%zA#{a7VLqD(uzvK|2zitKS^okUTf^3~r06h;2C0 zd1^3rR^{LRH97s-sPbRKPY%ox8muxVuPK8(x3kP+$z*iA=-N1KJg_pM{c&J_P#QJO zGS4ZFop~=OxYEl^32n$q)+_l%Byn&cRGh*+I+v*Tm`bDy}`o}!T9Qz0DIyTN& zi?hTnhMl>lkrSW@pK=1Mb#6#;x|$p{NkhMw2-%aUg?m9pUr?I{3-ttkUD5YuTXV+# z67I?3C(W!)a;w8S5*hkFxBtsICDF5YfBu8b8IE-GF$5z-(tRN;p(s^oG# zjON1ZGp@)%{Ry^0puf-_%POAXz|vkZa&7pYP91{RAJ!7~GnY^{g0k%~Rm7DA5^)@d zwFhsfd%hnqw`7;{yI5T0Gd)yYyiVJ=*@j%pgcB7feTK6J_mgUqZxFI$KFtc*p3W9p zp(ndyy+FGFCazN&Iatwt%EW*gS8Oy4qDOr%+`8RyKopuKD4+1=*?#g@4Qe*VwnDZ{ zO<})!fSq959BN95Jx1Ab$Ni!$B8wDwt2ysV3`>`uy>FFJDx`*r0p-#`6H;hXgN-@u z55B~;;E2Cz_LV8&izA8S|CSWU=9tAd4MLq=zzLMSnV8VBOB;noXP0s^W=9@@ED3>f zc~|rtZj`;z>?gOR zvcH2`FT=T!e?U?qhTi`ASgTFGExt&zp~lz|gMhWAR{7%9jt+n9OO8W8&2e7^O3dhX zJ2|{hJQ@FJlFD#YP%eVwbzKzD397;?=S~LKh$K(ki1m9YMSk-ls^6peHfibim6K2< ztf@z$X%WdZ{Jqk9J{hjQGaDz#454K)0 zeqjKv%V-c{*dmiC<%8Q`KO~AQvRCnCAx~D82(&uQ$^|qUW=;i#j5Kn z9CUsLA2-p*J8*xhYd+d=L%M&ayH=rH7f13`gJZ90{`L%qCKdE)C78qUB5yi#R)Mk( z{-Eo0MWAZkY-g=wI!wppxS)IBDdm-4>P~+nc3VvAhbyv`Tc0;3kEEM(XavZ26(k9~ z!C1ll*5^2ErbD;O`oWD#p2RFf5C@)+ig$@abbDVS1%%X};d%QuOUD_Thx7CcE-4k; zSXFsE)6tHb@(MHaycBhvmDnTTC6B!g<)x(&3&pW%#FaUu{O#Si-GGn{t()Q;9-LrZ zb-j-2hGjm6kvBs2EY8%!#@+3K{x#j1zx#8UPq;F(zhjTQxl1miGT4{L8gh1 zFJ32afc+KR;mI8)wSVS#9GG5enf4MzxKjLLR69Th4ZH1iNy-tAlLY5F)e%j+CFjA~K@#C&^MxkDd*GLT)xQK#t+jklxP1d{f+X8Z^l zxQv&PYS&E(a)#qJBWecrx8;BrEdqg}l~P z*a}ud_Ig~B+R)++JQvxym?v3w$eHoGt)>eLKwQcdv7hkcS{_jX<$W-X8 zNzc70AL@CgsWgpmN7*rC5oBd!Qddo=a0%2?y;!xqq_WhLLRTQ`BFc7$moaNqRR&`d z$P@WXZmYja+b%qU*{mjvALpt-JZlkcZYhj4G(UGr=hB^KF53I>FD@Xm+Om2RjOfXk z=1KhaDry2r3p2wltNFZF7gZ+8Y1CF1u z=BMK$nx)m~U8Kwi>(9ZYfGl|{TPjOBzP&#^hp7gS$+{;K^YxSEg1z0*c+DxIvE+N9 z=A57Hyq2+KTiL7DiSTP7VNuhy=G-C*o^%#yCWrNE&+)?lD!QaCiWnoW2Oj;$M(4+& zE9O_RRu~3Th994?E*{J!!)aB+efil+Q}I|}%}=ELWLZuR=D2Ef$K!QifwE}5-)zjM zFG)mMb|<*a*@y{Bl*1ZP`ld1sGwFn+!fMkGU$I`a^}B+j1n+~vVF~zzklV6Q@o?v_ zO}}DT=mS0?muX^3YWH8G3KbIlLobGT$sU2xoA}QfPlV zh`V^h2n{kv5vB}c!r1r14Q>^| zF>=ZDYP?F64$MNF!`V298AJr}zh<+&uwvg4MSk3Xp*o%!f15Gys$n*JN1jDq-3jyg}p;2Mkay%0;_6f8mRDGWy z@V`U|Du2vaBmX6pyN|y)99G%PcGNLqK^Yeq`9rRco0qnc|f4<0#f5G z#zCeRbb8kNjd;~-bSPu`>o5DB#vrr_X(X--Pg^gUy>Gtp8y-TF?}^Xs|EO%)lz!Ud zddho7clL$Cut;Q?)Xy&CB>I4-e^*!X?vA;J9y{SqJ+eHYQ^Nuk*1&RC2 z<5ea0OWxDV%LrdV2{UrS8(tqB_bPP5-hT59DNZiITS+G%(->U==o!ieqlk{!z;srm zOy_Lpu8VMC+~NXsSCNl)p6GG&vlF{Xk^RhXtE?-7o&R>#k(B%{a&OK!C(|U@`}PG#u%By@zwZ8| zi(R?T#C?_E&8n0aAYGX-7;s^Da&In+?!$GeY2g{?ZSQz|t^Gj~UNg(GzGj3&hoGw@ zyamJj`_|@MKHbv2D@8YQ);5{U%O~O|OX5zTSB3Sn#m%1)Bj}z(?El4Gk7F z&B2NiJJ1#Q6we;jaDqTB;sL3V(%Pm9G!|)(kOEZ@{EXw1am9ww!@MviDnlwUAa&WL zdbUqIN?%%G{L7bks4Sl#b77P&B3XTxvTYmcpzP@a=0R!;Nyu-k^;XBwSP6v0H0;uA zHsbXm4u_DL&VMq$`nXxPB+DzMFFpa{^m|70b(%s1xuY`)pR}sSci`li5trPo6@zG* zl@ZLUzWEh~Cunyn3%c@nUVSAKS(O$SJQCI!3*czW9hpIf7ds~BKk?$m0(I&TLK%!^ zK0g$nB4LyhgMBOJ@WM=_NqmZx&Dy3NyaaJ-3B~K|$$z7-ItlDWKp9%>OWw#puH+R_R7$+QEN`lzxz_qE;#_pld%Eh>!h`|VPQH@Re5En{bm)WtUN$Fow`G`a z6_Zb(IIT|P@qY0b_9fra2aW`G&#SC|T2)Ssu0i~&d-o2ZkENKB(!1#c=-;HTQv`Ux z%iE5tgJMOL_0Ez2rsP}XI@3nN@4ikDMMXu%63xmfX|3Cr`R196m3R2)3wkQZ(9_H# ztM)&2N01E9rK$NZac$0e#^g{D9*CuR$&Zts%2IEA{gIg<-J29td24LFz*y^IFgjE#PpJCFdHAr zB%r`HgpS_v>0-rlBoEg}!@pMU0ckaUp%JuI351TblwO+eN}BO+n>6|*k%Qt8e@Jb7 z%zEzbkYm3jKiri&A!4cg<*f=$Btmzv9E)ke-D`_|%T1+d7s~m}n(KLN1O-wc;1#T# zFPVjNbsD?kP_ZbrcQkRf=?3i7KZO+=2hJ3ymA0LjiFY-j1diM5xDCqqm*yIE>93r4 zrSrR;s3}V9J@3M2i27v%l8<`C1&tnPagHW2PScM;Ub=9CBBY(LD*S{*cr-{|ln-Gd zgh^Y&Wo%=E8zfmI%G7w(Gemj3CPv?W=HdtPl|<^LU*hK=E)_Ag@9$XOwO)kJ=rr9ya%brtB!#xcGr%uwpkExOnnC_I|lcPqYq%8Tztt0 zJL%zYZbQOW(Az>J?Gy6u!wX2YG2?`;00`*f(0844@}ZK{ zgRjhkwwij{z}MAogBfkPBc)TI2EYAp`_Bocx3p3vsE%lszjWQ4Xr9@gPHdt(?!hK% z)XjGOIoYtWmATBVmO5)e4*1pzt3n~$YHJ?p5^4Lu~D+UGT`H4^=ysL{nPRi-_noD@XgCNvkQSS%sG z_{UFYhKg7;>mIZE^3~}O;7;?M(urcuYT|j}WVy+RGTrUfIV#&O8DB@4V|q!jP{+jm zqNXomEEQZBayB)ZhU?zzY*8J%2{Po3TNC7(kYlg?M(*Pk+&htQtyN7$qF|W=DI{b` zb(Q4S0flrRlF2q}oj$|LjPCubL{VajPa9q!KKg0@$tB3kBdSKsIkv)h!u@}lCtHPKI5Uc|bNmIj%50|&!rJV1?hl8KBRFm<}wgOpKdT*3Cxz~BO2d0J1rUIA0;+Rp__F|=;mmT?b}SS~M^l z1T4EuP*IF>Z|l`eQ?Dc*z_w$1tph4=JRbIn^><=`ncZr#0FTai4>ceBN@V9}j_av;&%KfFCwVJYHhRU~CZcD9C|cfU)!cVUtXrDJuxkm z=*U62_A<-mn0ue%9>h=btTRzxJ2+x(VIe8lYbMcU&Lc&B&sYc)CaLQ}&wm}yIFk{~ zzwG=D;AkFNEK+xiu%&DEJ7sa;P62{z6ym zJ%GX5m`~{2(?OBKX3p)cTs20Bv19atbLr)-m>{VcClXBOE0NOb&k(|&D+_1U*NLlN zBXFE_ymWny23L^iT4IK3rpjrSW9bDp0PDWD9Z%d7*0@`{w7V}y-A6l^r-p9P1@bmW z&5+wtgmTRZ`T|Ep5a;Xc%KOk<+OPw$OdhpN*S=Q}N7|vd z#f&*X#A6)w=+zMy@AGQjsW;Njav*c=N%}hRVw`p1I(L1KKy@~8t+YcqHbYfXJHDoMtg8$3&q9L-X6=QQk_$(e}{d|GzSPP;4Hy8)S zuHR>VZs+1mfldF>*IW#vy$ck0{%giM?}mSx>_}8grFxGxQgK%_En0Ez69y zftsX?)FHeZuiLpcj&F~VdoI|mLn#+rYnhIIdarGcP_L_%Knq)<$t;&I@Yb5{LkY=h zDjFMusk!Z9%iY^B@jlK*Y{WMBno-|I!P9(ob<*{LT&{qlY1mt7PP0aXMo1X>BbF~; z!a#M8`FhSAF6+U!o!K%F11p{oBiG3*m!to^D3qL=sLqLwU~l`DjCt+Kr;aE-@T_)c z?n3p@(eUh%(-{wlBy|(%CnI}7Uz3hZh#f*}`Z&QVGzZIg3UuVQw$*kmo>Xpi7@^A! zUZ3R497hu%KYAa(+9^~ss@~CYFphbF`C>S={teaLNR3{7y#eA=X9p-=k_gwrU4idt z+je)o^VL-CC02wD<+=b};@9AyUrF z8CJ|c6`Mir>h}ADjEJ-m*bD~i?LG=%n8nRjv25UG*2n)54nalBv zJ3aj5LPM|{3TnoQpC z%#?f#(3LdNod@MANI_J!!ZZ!=D|K8vW*H9a*+k&Y9B18Vzw;OW5y6lk4G9yMS+HjD z1=Z%lz|)lnbE4=Mf3?U8<)7JXk)Bq&qy8c5TxYWCjgQjIXC(i0q4yyW6B~`2hYY!GH$;dyF;Z%>WR#+c;gn1_d;bl^_%Q z!-unp-@T|-xizJiFk5Gx?(DO++rNu&$B=aZL|E>y?0n&&=NzwBqBH*<}*5P?AmmT1^IBz6kq zH3BGc?|iX}UP`oLqskwCk>Q+r$Uy4g%zf5>WYHHe4U|%^-@UXQMVHv=^OieyiqXh= z=nNqeH-+}?^V(MMhU#>r%-kyvG;6GsO0tj-(hdr*K6 zPx+l9eFzIV;j~|IL7|~6NuE4?frUfBcj}lmGpcmv#gliU^R))Zc&WBN^jKW<+c0m7 z02kq`=8T`0k=o5mD%0rs=YB(|zCiGNgC5Oz zo!?IdALH|e@0GVNlukdM*n<=K26=5j>gT=SP1Z*9&qyL^Ox{Vw@i6$_$OTU=80%1? znG_kwm|3GmtEIXX=3?JV^S@P=D2<&4O^wn?q&eASJtK7|t+g2!DnHGy0%aRHeJq1; zl*dWTmG<1nCksH~*T%6iA^e-3{`K~EVgs8#XwHM?i~iHy3_$YGod}0xT!%N|NNo)@0>M4+soG$! z&VHDZpyqyRWS@N{IP{S1_83pi?{&5%n=x45{06;5xu1));Fp}Gw#2H{HvscCg!@dA zN8SwNH8r`CK(XogAcaTcb(XK%z55RVRXUIf(YK^D`6SIsIG)4OY6^uIW==7I>$?PI zEOM+4mo2K+#`!iWOIPd%V~VK~7ziK|QwlXci>sGB+&9YkZk=-2Tqu?W2+sg{_h<(7 zMN4pvY3<>SBK83v_l+uZST-*QjkN zNI65CG8_74gJz`6JPFo0Wk?6!UxfaChP+*AOgTfRPVT)Mmgur!+SVKBYxS3e7Y@)Y; zL#Nn9>vVqN4o}<_NxzQ75+tlmA=2eEBLa?~3n?mZzuL!ICrWmmz`7gX~ zNNOl=oBBX&vVTTbth~$FFtIgkpop#)_YsW)g^;2f_KRIP*vK_ABAhJno=#}H6sI>Y z?#9Z^#Xc0BHy{WOz%+}klqnU`zg&$VdCRtnF80>#j(@0K*HHKb@1%INy17!m8-&vG zI6^zqJj%i?#<%3&7G)D@vn(*xi(^Q2BX8PUFv}5SQSWn)+W&0MyOx(1L~;xhgCuUD zIE0(SMi`84frHrwp@0r;f~#N^JTqdsq886{{uO6Rx9JV_sK|xSugYX(Vbt0r{7kWJ zqG8e>2ewrpKC6?~#u^Uu9B#R%3X;R-`pGmfOvFTY($&?VM=TcnS1bBl2TDHH7J9Ss z9n^c+I9OK!>ryJlt5z!UeDxgKCsu}O!GNo5J!xvfCyT`jifgX%-xZy#e< zyE^HI2)Rrv>RBwK(%MgSqu?KyxgyiuTQmhbi!ZG;nnTp2ubXL(LNFZe%-Tt6#S)-} z{lX)Ar+lmxhiv?s2Q>%s>&2WLBCe3bX?NDwVzWFbzyU`LQJ?YQfv->&e4}6e@tvxC zk97De;a?c{v@NWR-*{{}uV8pjShsVzBe^4dc2kD=ZiFO zmn%t=?uz#7kQDW!?j?_H7UGIld0S-og$ez4_NY!Rf2qSF4`zP_n#E+&H+^E0!OtDJ;QJo zXc9X{jFx2y<;{GW+AAU~|y z&Z6E%DcF@C1%|u{?T7$OQB85y(ejkDRXwhs$7I*Qg(6$HKgsrKEJhD~sZ#de_4VG7>FNhs7v`?pOw_4EYcLq;bTqHVeqIF%weYoJOjBYzQS?MTWvZ=?%{H{T(HH{F?qM8Y$xpCMEts} z1VeC_&Z^^1=(rwoq#xzwIhmKE-MPEC`2 zFC5D>OI;_Q@8lf8cY5E`tP_RGu42La)I6nu^144Mkf$#)OULhlXZ=ug4KckGHJFF@ z8PgEp8hYQ^s6s5AeK!1!yzxU^;kBYnBZYUkOw^5m10GX7$!N=5#WP}&6Fatm9oZ;e zvma8-C6q(MR@Gi(t7HPY>YNQSp6xs#NWg@2QcMUOMlusc3dowPAUFT)6p4(w_pWw*&+9B+5>C zD8npy+Stb_>}qa%v;4s0kLmtNAX(V{1D&+(q2#dr`_mhy&!33He)C~Mt2eQK`1}#` zB6fdx9*=DeM|hF2wz^gSikJqdRSO0nQrm_5vP9rd8^q6t?*LS3+kb_@Be9>xuoow+ zM=I190*8K|pVpfH(dLoEW!d}wQ}?esBmNujh+oK565g2X!J1U3lRO8bn%&XBn$D&0 zemJim!nu`ee|6*^5nqPmtyir7lMwjK*qk_;USdl6Brf*T$#Ffd&9O3Kjm8vmlh@%dsl@=%A@*u^gs zDehi~CA(L5UJrDR7SkIw{emkX+#x366qijD65H+800$VtjyMHb&;3M9b2Un@(ugvv zK+c^X^~nUXrDX(-K@RbwN#FOT__h$?QYS<_m?nIg;`g32Y!VX_g)q{QCq1w-a59Zk zL;{V7+lV2xgKH(?ahoV2>R!O~r>o}s-nXqTz(XUj75K4N71N3^zZzcTV-&%3Ue{xQ za;FCXir?aIO>iS3Th<~81rd9_H>VyG^9o^IhI$!f+(2c+iM(~cK(2%+5}HER*BVKe z$$c0-CP2hDNdp#+58hlLui?}QLnu4QPG3CtNwxk)8Ni*_9AQ4J554^zKmehX^xX|(;OI+tyYP0nM(ICnlMup&; zcCza1k;4cx&7a|AwSIU-9g@EI7(u{D(+BCjcNt4X^23(|i)eJaij{=D;Z;}z-!~&Q zQld=8y1FaOZbHawyDcGabu|`}ywtkhYuui!x2NYoG7x5DGN6WHBs1kn=MsFC?OBzm z0T!y+@Mx;+#q&#K4>H+G#M(|O5bfbmW_C5Xe06LX-`(<1`RBQs3r2!F%t8#r9UID0 za3={VuD(~sK#?y}ejpzXsJO|aDM)e2@;PFSo8hXO_)L$*OJ;7mVa)~;lbeUpZy{V# za5sW#e-jh!Q6ha66fl<913wZRj{q$YOf)&;!A-KA$dtEMC`O_<^wj(aD5pqochu=d zQ6u|Li2%b4=kMo+iz3Zd<%)_%b5opk2Sm-E<}$#?;xf}@Jjw8F%(*)0&rE)}+16Eq zw)9txk|UgiCxz%@-3+N+I-F_s#$$xudYy{KNv94k>?bI>pVuXu8}9A;2A)fz#PL@% z$46mfYj8<7+>3z-nkqBC*zU{TVY(TZh5HeJ%h7b+UgIhzelJLM`)uD6$>^kiypkk=5-f=lj%vM0bp3OJB` zh7r#(AK45MJk_%PJ%2CTU3Zt@2Kw|^Zf_2K#>DYo*H8JluO`whMvg+-=sgF<($m^( z=PrjiwOZ2J`rQL@{3!NapR4y6Ka7&WGtt-)64yF2_rGy)v=lfIdtq zBeHSBE$sFi0!t4cWg=luYxAl+NR6w84?U4YUP|xQa?SW+`MJMJrzv&yOwqQdnsd#| zyP822@EK1bw3fX5lA*gyk`mfw)HbKJC7e?7{+J1o*)hS6=Ks6&PXFlVfpgEV5u!2S zL0WUCglcN7e?UWz!P{fW!@wLz?g~OI{B;fc+}nldRph5t&I!~T9!XqpSEvP&Pb6wh zLQabxaZqHnIG_wjD?PYJx3BWk8xj@$35{qHpr-4!WSSL=NeOiyRPuBY|J_$q3KCh_ za}tYkKex!42}3`jbNUr4Q$T>#SDlmHlh*2XPs~`o|9ag>Bz#u%S#Q3pd}H8w^-TGJ z)I6M_xfNB63q+QNXmDDn*--4$(F4~C70v!M%W38$wO^;Ut4A|MibjyVD3q;sw6zAH z25af;8(!tKjmG)IKNA}g^f&)dx8lg5gw>tY7m z2sJ5UYLrCu9n50~zk@=6w7$?`=MsDtd6^EtVJ_4F8CIOZ!A@Gl;Z(n`$uX8-y<{}u z>`=?0iMCb@(l=D!bAYK#h*1}T%yMQHr}HeYOOM9EP=qREqv9S*Uks4y)evsNsCjK^ zD2ckz5j*SL+XdfIO2`T(2k$>avHYiPSZ+$;UcVqAwPyHqDxZ=(T$4$Hk z_LPkjG=JlqtCg>;s!-8?dNbQ_eAy%(d_=@0T<9JZybBVqRYhnD# zNzvTB=$Sn}$Gj;ny7M*RS&lXubjyWW2rf&UZuE9%^(_8S!XHQ_Q<)@e(+I|<@Hya{ zhUS((h^UQEf)}gBz?2wxn=yDXyP|a?@D>+p-Dn)V-r4+#xR6hkadL8OPw@!YS-km= z))ontOQv})Vu~aRjS|=Cj`zSk>+rzqj~I6`5wLOIGMnABlk5nw8Hn@|zdyjhR_EMb zlK%+|cq;lz+xTUq-ONtJ*IX3j&RD)VQ;ZY_eZ#$`E6g>^p;dC@$UE27-mM$eEdOO9 z4Avfkv|?KdQ=Y+`O=SH~Q*ixQD;9qul(o%4ETdh-<2xFW0kR#A&QNosb9+@uH~PeT z#FJ2~tcaHwlDPJD!ZK<}RP(XoIa-Q=E3InXL~!6YJRPlpRmKMoq6;&o4}yF+0qn#i z%2|!;ulIM6}j!3h0ZEi%{W8E4W~@@K}m$#1$>KEA1M6y7_BCtloe6Q zP7tVX6Q=ICaBtG7i(``UIF7lj;CHrh`?kPhYL=e z16Y)W5NMB%nua-1*rx|$6#&q)LNO$whVqI)5{Prz#gu_?#N$4CU5^AJ5H^fAS7$?T zJTa{HyPiona3{(UV;W5kre5{UR-r6sA9HPNohar{b|r8514TM+c<>H1#^#(!OaYd# zS6=x838F87dMn19|Goj= zVWcY>hk14ZJ;`(B~kna4*jU;QB4|Mu+9R7aM<~Z22R`(YS#m(@WyY z^mw*zV$ir@=D?H515ci1_;@%@8Wpj+9(Q{>dVx|plb?xlDfL?G&myX0i#gYDFkS59 zXrImEzjOgn$)x5A@PK#wt5@Smt1CMfTKfKKO;N*^NLjca-;#?o8cFMOQyx~8h?O48~U z7D?l3^Wo!pak&qsaB3Nx6ymwiia z*lWsw_}1%Vrkiec%opPFeg9Pd=QP@jH`Huq9yedF4G2Tbbhq`}A1e>7e$*nLlpo1# z$g~Zn5LaJ!vEO;m+&~GD3P<9a3mskE#OMEzIOk7qfc8ZuaunSy`dJq@-L_=^UG<|( z6*3;-b9cJ^af@bYTW4h%jAv2rzi0xgLE4Z?(9L_*0&tm5Op*6paqzL8(7bGGE0|8# zMO)~Ej@iq&KDL@&lVUixW%lAJ@oOC^Bxq@L6s&BH{S9vNLDVZdWT~P3mI_-!`&!52 zo<9@YB<)_%)nG{!#zn(#<~p}d3u}fF5FYrWTex6UylM%$im1*7bZl==1KVu{(7KoK zLcdu-C)LdAowcMmF%398=uLZ&3jbfU?j z`oOB?^)JO2_Zn*h!-kcya8XgcYWm_kuK@^JKmzM*79TQ8&~6A}EPIkYPAfj``pb$g zUCX&XxN`|bI9>T6AM;*(PD65fpn{!e8P~0a@*iJzSEh*Lb8juBI!U<(Oqd12k{T66 z!cAaMP!q=T<55gi1r8a%(DXK;20|WNb!BE>$A17ug3xqLJet@8g>sPa5O!sbeWSP6 z6WX#(s54kk`EH4;fvnV#)Dis}Q4-WXS4%_=TOr9ie5B@U;VvhGE-}<}MG)h?MOYp~ zzvwd7imX-p)k!lsFwvaYEy8Y;1uFQ30K8)XT59y5NZR)NU|hhwN=3%_MHO34NchIC zT|9ec{a=y>S~&;PoxwpXU@~l^kx$&j$5KWU)C|_dfg{G5%#F1(O`DyQmFNlGX_5~A zlj+2?T$mju4;8Id`A)_SzZ)^tXQDE@|ENhi>*)>AVOE13Lm(b+hjvSGa5uw~fl*t*r-f79G z$d&Y?%k71X*>l7@#}do4S~6S9*sE2Er?Ez}eOCFt=rU(_<>jKFz}|{zLinGQ<_m(L zS#L&w2N%e#XGaPInJCYfvQZpkF0X@oi%uj%9NVIV98*8vDHwy-ewj4-Nm9Q+PXgwm zg%XffBF9+oP64P05j^`)Br5V2_0Ib`z)(O{1Wnt~{BcnA><}{z2#m2R_myh#XC+@- zBPQG!K_p#~>dM<+u)&8y@&7nrGCn9Yx3kq0pB8G29_L)D!mHV^9T=|t)rLq-7#@@5$#wgfK(Mrn~UJW>-wirEym^~8^()^&1v+b6N=g!ikg zA4!0duA9n5e-xQLk~$QN<2ZjBW28mzuM(5C+s612C*RL8U*|j zox*w4fOP*{4Ohe!V`_DqcWAqWsHV|xPpx|Pn-8e>@ooxOYm}~dv>N7v^*Gm|vX}XO zr+TlbUGqh-jx!qQVw#$srxykib%E1L0L_dh!6p@B9)s!_>Q%L9e0L-OSZwk4Jhfmh z+L+%}bRXQJie!E~Z^=8+sI;8WGYu@#ta~!yB%_AUFo)Zd9~U6-XQahDrBA}nyr;opRps=gl@~ZskUWP> zxiwT+7o}j#vfvZ1?(vK#Bhgwx})+V69|(6@cee^ImX2N#t_;$J-3|M7R7dZk&O{R2_q ze&U``%jZfbbDgk=dHU)i1|s1{ymkcQc#5x-TOe2TEe}Vtdu=rVoleSzXG%$QdRjzi z9W8tW+Wj`^D+2OOPMNWhi2cz7dWaUwe~du{(5QLj_myq8Q1l9*A*yg9Rmj3#@6Jg~ z{&bpeS+}-Ydvp4+s*>KroD{dEz#3;DJr!trudag>8uy+gLK53z*fBO3*E_iQHwe$t z5>TKR+5jT9wnFd68T(-x(14xDajVmMUf`hVPxN(E25POAUpO`SLz_}~w4&*i@T3GV zXkLg3>L~~SYnxrto7AiYA3X6W*W9+A@mB8Nh)Q(Srln4lA-3`#K|yc*RVrLU5sEV+wF>hBJ^(2xwl& zXNU9h&H1bvUM9y-{^B3Szifwwr^H5io_7k?8}yskIqjv)Wd0_*btK}8(uo3pfiOW| zEl8Uja~={X`)fK%F{9QHaj9+Wmrg{SQjOlOljB4t2+&21PMIHtVmM)sM8#s+xEAuy zru4CzyQm#cW}++=tGltC_aL?2>in0+q;c97>Q8n*ag9q5^g#kZgco=8P|oVtK9S3?b+BC_)Zr1%}q0o?Hr*w>F|>H|vWH95E9$beRz<8LUrl#Ctd6woSbjx_lAXXe3%oA$ zy3CTBfFC%*y3H5!;qDo(U|X5Z)IF*B?dTs!az75w<6WJ>m2qFl#l1 zL=H?L!VOMcAh8~2qH%Ov*206l+O;ExGK1emm{$2?EoDpZ{Knt?dbGJBKEL1hXn?@atDmL9f0+#+BD>D=vh(uSJ<#bykD z>dn`-7axv7Ob3%yHe|dhiN}}&Y}y9|_+{c#b^%K6FVT!oLmap*`r$1C%_a^dazby< z5tm=c!sBG(yUB9#2G#!gvk27_cQtFtKGs~WeN_50?HVpZejFkWPO?J5 zgthA09BN08L4gqIGl+OX`#!@h)!CGc`JyyUrrwN+6lZcw9!)vn=Qc9!I?SAr7oo#R zsYwp|Rj)bs8G#CWnt1zDMcr<7PH(E#aqWg7YjB~|C5*ZSG7dWS?%fP3^+FLsITN^q z0RPj4qv$%wA2mGC#Gc4+6q}HPh34#&S0_yoloAmmdxV}5RE2w6?9L}(P!i1RYrIyb zLJ%@O=6hQoc}%||2h%z_l?xtA3SwN-ih)T1ZtcaCJvCFLMWq+q; zPbh1wDNT{6D@D3!MHFmkJo>*kGl4)MU zjO}W2-~Bps0+ieB8hyhYn=GXfjy9G~-_Dx*4VGGK?aT%l{0i%eRKxy`7D`LvLuX}j z2OUVH?hm$*$Fj!}4DDtf%FN@ydF;bA$_v60{Bv%e zY2ZeOGU<7*CRDS>tT&}Ud-plqTOtW3`_a#pdf{@aRVp~i3Odxp0cZ8j;y*EqxYBnl zX7p>eHto}?G>6)D3Cux$me25stqe~lpeLx8a>KxfKTt;3*~=+dyLGJm(}Mmg9c6ltDrS_d8;1Xfp&>btftYm&TjpaTBrNL2%uLTU`0Az8 zz$6DS-L@p=mrVWui+5~WV5uPqAq4Azbi#lBMG{fZY4FgLQ~Hi3Qb?!RgO`a|gTo*z zvu+)G#P4mKTxNbKrs4T~ujZR;Qi+%Wf~OyudpEg2kpzz@#B1BS&3Lvl04%*x^$1-Z zWf5wZP4c3c@WGSOJ9nl_(5-!?rQ($z>V@*T!F`GseLVh!n`1;H{SPWzV+i8W6l|t= zy@hw4FWEngJxBr&TtHxzf$aU5OPX;F^90#x2`-c%WSSgCt=Jd25A-M7ko3==+{$MV zRNBSv~l<;G`S@Id9_|>XF|>&3z@l z{k-dLEStEA$hv^Os94vVB!KKVVVzBnawS&BcIT`LZ*&u8_u5QdVp;MELEN}4Xqy@g zN`}=H_uA_>$@hDEvfGxDV&0*|c zFGi;|dv@ZL-b=;xLIIuJ%dmA$>;DN2#``Ph0#^*C)$S4-U%<!}C=`Wx8Wn6c{7=nDbc zt%5U(=5zTvOGWHfW(Z{pTYuilTb)}!DqidRqHM?F?`=|tS13im7K)k<{w@sGyk6F*wAwGcVNw+)V-+b?hewwX`(^#71c+A>g6RLe#hnX|~@`yEPCp&9m)$pg_ zrhp>PQ0Vhc4A<<5?$C(F*NHF^nJ^6WNXI?i7NwNT^3LiV+K`A$A&3$&=2z%riF{aU zcq(N`GcFi{E!z^m!qBY`)fTAPL5di}s^N{+^M1zh56Sq+9bc;rLP3=8W`6fRzjI@g z|8&j6g3LbI7v!zQl{ndSE#EEhW-)cJgth=^D)TL0*+OxInhbH#Z8V|tVMn>TzWFR} z*I2nYEirJJQREp6W(%Z@kCJ38I6`E4Il7w@-P@aVY#FKy=tVVED_rX|Hu%gd=!y`O zqd&=QAhb_BJ`+U<9Au7}h-^79pFzeGj^Xyl`*ZCT($Xj$f7#HNxr?3iq#Rn}Jz16u z<2cx1*& zwsRi0r7G><_m$GsB%833kh^W$#Y$q84lfBjYkbi3G0>Q^s>FGT`=mZ}ut`igWx#}A z7zP@}-`!yxUK;GQl%JZ8WD)xEu{RsmzfN;p&jZ_Bqb1!lDVP+CND$ZH@x)9LWab^6<9;^^$7b@1@ z@PYRe1QBEZT~(ER#`%kpLsz066IW5gI2}EOMAi3*d^epfrN>hz!dNdRzLy+u)+_Xo zMw~rvHQ@jZ&D?j{i)8Q2x^0IWKA+yVtEY@OH~stxGSME6iZP8xQig4AO`oVi{+uH) zZr#>U%dgSC`1H*xgt`a!NQ({>v-D=t%Spak`hhf1T!d{8aJt zn&5lh1Kqh>a|S%aK0yk6>;31?MI>zFL=`zqL^2r>@=r;FBxitI?lTmnb7LylTn=b9 zjC?NZoZ1$d3=5tBv?~*+lZ6pb@MM{mZ;OiT+rU$J-x1hzU>*V>pxj>yRz9h})DS;`2l?G7g^-NUA}cV-uxbgKkZ%2uTB2Gk}i-sKRknGah_5 ztl|H?E)7ZT%y45sdyr`(r5}wdG8(kIOyKU%AOn=B_Ql48Rm{-1w;>z^d-myi9~Jus zV^~1jYiK6U=1H;L6=-snC~_(UefwSFLvv#Xj%p1+igXS_6o`4NC~>%S)z|W1E*g63 zCFHlrjzmryz{Qt@-Bxe8L{h~sr$k}?HTTiY#+y;)p3EEo`MdLlg3|Sr(t9`RA^|Me zrXfCH$c)p$J>))96_qIMl1Mk%YnO!Lb78D3XdcIIY=iL|g8G$T4LaY#3ChOly7|3+ z%H7pNc#T|mo#87I9^~5gR?4N$$(%6@7bxFqiYab(=uB%l49{sq?qOcBML4vpbiJ=w z&3%sl=!_Uz=RYcW#nRratz}0+L@N#l6Jj%R=QM#XxN+1>i6SkU6@C*bs1%M)GB>Ft<^Jx8z2Y)G*!3enaryjiw zjjrPeFYQ;c$*>}CV3XptM5Tr9ovUU3qv(3Iv2*Koa&Mn~g-||kL=}=Uai##YT+jV- zq--L?Eu=I{af!nZ1|IdAHxzd`utEl8t_EH|OIP+OJa+^K}Xq zE(fzi5&@#EY%s7Uh)WW2J{Jg@=FS}uBb+s$hxDfT{QF92@N_GXTRRJO)f;5Dkwe~RX z@g)L_sdq`Uvqhq?d+P&HP{#G}vu*X^4HOoenaS7JpCMCoAh)1(K|>hsfDJi!oMtk5_)6TnvmA7A`mfhbT-dWrWC zE43Rr=sUN$d%S=80A08P zY)Z)oZYUNE#{d6JfG<*94t`R&nTS=6ALQ*9{9E#lY8k}JFG^4#R4TOCXvB@gPr=1;-2)S#9fG_?Fy;sPg+Um5mN?iihSx}n&oQp;*f6z(3YLe`={ayP@k96!x zmmNFj*F2VVp`Ir}Bt(qZb-d2dK?*4* zAt1dq(##0F&YbtYO@6IfI~k}%q`Vp6YBtB#v)K~3*_X*is{vu2+f&!WVO%cA*ILLE z5C@jPBF;d%BR^rn%k*qsVfyncLF&~LP!2`|#Pk5BFW;PUF4d)~Bk?b@xQOYj*T929 zTNw0?hstS&G#~fE4zc>kWvb#@ABV!?Fx}Df#ojAUD@Txz5>^o=>Ov?97&g3n$^7sL z#j_YoC1Vs!@7Vtf+%jZ2d1`bguBgMQR4o%VgE_|idU9S7GF50Jjow_C*zfz6x#0cX z@HGrU*=3xd?BL_yJ(=dr$#Qhd6lJM z3R)d*3CIgcedSDz1U8!Wmfq$i)&x1nOu95VZSx1R+bm|@?Em?rIFgXys3lC+9`=bD zg;lL4U|JpxHesKSBTe>DLYu=TEK7oO7a#n!U{>7&;I&>BK$GfZab=Qc$rV~u zt@62e@0$`7EthtKU{yf@$^c5x^_jVw{)~u)SieEVoj#E1dTI>Yi#uPn^(6v`yDP=4 zA+q7aCXvzIUQH5tm#yHjq=WpIL@%NrLMvCsTA6RQ!j@Mp1{1QKb*pC1n@NEkVIz_) z^95d-Xr5EgCg6Xxh*5}r`js^PWugq9!2v8diJuEJV*zZ^@okKM+>wE8p}^}hK(5`V zy~q14r(CvRNh8&SigMVPj~B6>{z2#04OBu@5Fc|9w1T75>i3i{gx#ny@Yzq0^+ z;Fx5}VhFjZY615whE}tX+N3B|tHc1BL^6jURV|5njG%lPj00>v=4os_!;~st z5tuu-Wg?S<)Bejx)nTnl7;hcZSweV!EF?A)quWxEX3@$<{V%V>p`R@)o$N-4aA#{# z+0i*CDV;)?iIcTG2ndU5$O}-nS|K}rT~;JUW)R>kJZ|K*H!&1telO9{(qI7eSDMkx&Q0jJhj-;M2Gt!WsnKPLSmaSHYzx&4uuT{MJx7+HsB~NY15#fRd5#UL$Easv|wp& z+ECzbO46ji_jRYBJ7=%o>-GDKlH9o;zW4Y0y{_wXeXh?XMZsFW3kr@vaRse{H&Lr0 zxx{u??pCzEg#%Kfv{EQqbO?>{?aCU*KM)UI3_)~xf|cB>mM~Pdli7y(>9zKFEmomH z{K(*N->gAZ!{K-KvQKTQu5qZ6ne;k^h>;YU=p)rko`XQg*&*1X)y{qR{0ti| z2AzvM5?cr6BuKi3YB_0kX;i9sjhc7S*&2_FNUhjwi_7a{0y zHlI!Q069*4mKXZ*#5EMb6)KUf_Ywd=YTF7d<)T1tBo|^3Ifodf!bbW~JR1B9mpnIF zo%z^5$H3-7#D;|*#+yi_x-dx@*n?zoHNEUY|0^e=Mm$*(U@#?c6xxqCs}8K_kK!v_ zH?a7b>92KZ2*Z@1@wFI80j*IOD8dBE3;tHPphYimr+EWj1~X`s>&ik6qCc@QhP?V! z8cC5+2voeLc>crZ>3l=^H5y{^C#6@;Y@uxA0$Jon8}N1EGtdps^XwOc(QwfV33Gp| zy!tCj9vVO0ORKAAFsL2@GwL(8V%PfrkTlmEYw*(zbC1={O6#XuIa`- zRU>B-%S++WiIkVuIkdjMhuh;au+P=z`bCg=1Lizg3`^sw&YrnGVK&Vs-g6%bpIt_q z8LVbK4G*O5B;D*UYszXys^i_eR>KH5dtWf;aqH*O0M63tn!S#-KX6C0_!W2F(kmSp zLQc<9R2m8B5&_}Sq`>-fa<_?idwl)4aRNZI<(e#&RvO}9$*E#P`nvjuY4fV%g^aUr zo_&_R*|jDiW2@T z(GGtSXclW^o=A(EeTD2DK|05_M_r4i(Wf_P-1$SR0=yot6_G01JQTaU4M>0xLquNn zF|wsM4M)X_RwLq%d$tK>fxGo9`xE!Y=CSw_#L9-Qe55tgb1ue(!oJKo$$+pVOMio! z%yVMi4>Cgl77F2>*;J{itUMb}o6&FRRNdgydLL2)N=Fk4nSj1+AKuSC3iMu7FsO5- z<}AI|4#Z$OTy@>_`tgS3;-Ig^t2O2#=$DKP*&OyOPjIKCI;4AtZ$WmP+OOGfuPME` zS`{89%#OOhj&rFl5CU!ECskwxyMX1@s(K~h_K3s8`VrL(6x!z#{=+}{opmgYfI{ln zh{*kecOF2jSraFLB2N-P*s5w;)@Ly$tSC@oVx=rrH9~FcC_-MLjo_S8;0jnFIj~D0 zg0gR&-fY>ujhyZ2XEF1%4hegR%$MtV@sjN)7v>)cDTnmor!FY-1=$uyheysLYcMbD zcu8tc=Sm{k*D$@d$XK_CLL%JdY)lL{1vZ_kIL64TWV%4^6U>4lh<)I1xSw{br#+-L zJN<-zj(OapH{I9<(oeSB1-s6QekBuuyJ}Z0{RN7n%CCKnPDj5n;;8Znv?E%als~xG z@tHU{wOLynxiDUukSc?v=LqDOGx5wO;>t;RWr8VytOI>+uAslK|L(@foO6&}4n98a zWVZK-^?TBD{%Y7E_^p4R@?A4Zzh+|0x?R@HnR+0^``M^yfVUuHKgAQqmT2yT5X<9`! z$XPk!sdEWf_DcHJioi+{h3}G`oIf2wdxUq+`CTO6K-=m?B){FQ!V{f|ldM@sNioCd z)a(L`P2sCZAl9E&5#-R|7dAB;x=()rq7k3t6c$uk&OrVNw3&?*F8)tX@s0ie&IFDT$(e z>=YE+gO6W03X##|>chdQTHwufk=1xlCSS8VcREEc1rhXVhu$RW%?hdgQ>s&HTk$0+ zryH+lP4~cxab!2mvk1w2b~)45wW1IMt|i_|+Wjmhc-45-#E%}M*m6yB1HB#oQW1+_ z2ficxX2G6mEJ}F6RNJ_yg~6N=9{+aVP**k1N@l83?o`ur0C{8nfT-RrpXM5_(H+GV zMHn*#&ydBAG3?h ze6czEj%{^aqj3-G_u_K;ErG?YK%^rSsQLd;_Fe z95%o!zzSaLzsfk|m^!a|SdzAE1axf1pk4y2R=fgcYEM!PEFhXVE@l8e(FBYH>dU+ zDSExC>&&B8QWbBaRdvZbAp;K#v43Q>B)XdCBzvlVzWPGY8nV3gZ;IQBa96wvze1wW zLs8nDTMln%b`hb}S&oBfFH$_P6;xYII+>u!Hpd)raMODm#j@ zuhyNZGZaCYc(;eBNN_W2Q|4!+NeW0W2c`B+;J8-Z@=1>Zv~qFs9k}4m^>A`Ck<#n+ zt-hj{Of`hf{6$(`p|cndgg6b)hW9^5Z`PB1n25RDS zOAp%a@q%?UOBx@7djqDd8=RVie3KFK@_ah8BR!bDDO=fffC`DWRSD$q9jLXcBA%RN z9n_r_03s=1jC89Fpcf_d2TF6Ta4lI4?3~mpir{Gd9A7rf;8>EY{&?A;=%T0}>L&UD zhyzWG2$y!(c5OG6q8ntIa6_%-{?=4N%VJUa-1|dHLbM@X-tM9`;mz)mS%QV^U^$B~ z<(^=48m6#?4DHsm zXZakKCNJ_jcyJ!{(7ZYjb1ggl;GN`BuuMGmE8*Z;kOh8|PRzHW`0g6A9g+K~%N9rG z>G8=ib-Cij!-XwC8XeNkhv-Cg8B(3+l0MxMuKqjc@{lU5&}<%fJV$*z5;o5yyv-^S znhDSd{z0uejye{~L*~Iy5YUS$#p_c{R4`wU9izfyKS>qIP{FXntvmWF`*v}K)&kzI zK(ZibO4YZ}JAmZ>4C<;PvnYIZvR(9v)p!|`6yWXzBWb%TV~$1I26md}v|4-632}&9 zQFJmpQnYuF@Y9O~^;_xit*$pXoF4s>t@QEeq(HlD9J8+j*L!y`A4N*(P%|s4LU(u+ z&+@GUrv$0$22 zo0n5s!!&8zAH$dMk6WoV920d#&~(f@1ZvLFx(JEwfTIiVA!|(<$XXkI`QDPgmX*TA;ien7k@iscCo69)Vv91_lq~0v@QKPk{UyQycCC90ss9mk^7+eVoH}2QLd8zbl+@He9)!UD?P?pD2CB32!>|h zPA2hClL%F>XF5oR99N2BfmW(|s<&(x_l<;{)MB)O6TAN-gk87W2IFbXkz;%3a%Wx#lPq+bFp;VKm_uWlA=rgo^e; zOvxN5jEfC6K;(QiWFD8nL zvj|GwifEs$Z;_{b`WR3EV;1zzlc;u+D=wXvzZ-lrfW%n7jSR|HEC%r7%hq%B$dPSj zSCm8_*8B&<)VtFU!13NtR#LRQZ*q@yd8I@^>FtfvAPkZO=!);Aad-j$}Ub(|)(4blO2T#Mtn_JNkstM>qLcYbQG@MO7E4eTK_;=St8@tN;-fi5vGP{Lo*~$|Z_0wA93@y+aG7&JX zMBto^fZH-No(63#KBosGjF5}h`enR&3)Dxd9&B~L`K>&EeyF6PPjUSmM8fgpde(W- zSl+;iu2#`|69uGt$F=O6MWyT0WRS~Tjnib^%t~u zBpRG$;bZ3M6bC|ygy+FvkPPnFQdLweM!IpIbmN3!CBd)k7c`jwPwWkG zBapf2rlW|A*lW;BPL&BoY^6loPpbPnMHLX69myk+GSs;92O#4^y@=N2X;g3o(-S0v zK|dRGI(Di{#+U)c(#-)+P9x!ckL&~R)fE8uT@x)8GJBZccn7<)2=N1%naGSMmu#jX*mK5EAYIG zv`&L+jkGYl@gTa6oVdg3%egt_K0_c;!L^~lZh_`+dcUxrn-2JZ_+|($v%S*dm1ilZkyl>qPe(T1P_$9W;3Xij z5v-_Xcd$$z4*T*lAVv_00ud>xt}N_B%7w&Evj6l;$b~>uGugqu^g)qI`S6Id-P&XK zcSV5X(e|X0A$%e*XNkbUBE<%=r^ZIIvu3=rE$}Gp!10(zD3>pW*q9yOU%sJqIJ@U| z;?ghnr{>r)v21jegTg*TsWL$VGJl_NQAY2YaP`Zm=`s4HpIhm6ZPMp9ZvAbWncRXtGqZHwFINxR2+AGT=1{0BVYv8j5H3BmR7n;Y zCttp#KuiEp@Ar6XCPPKQ@hMG=%u)TgaN~iJ%dNGE4YwsVg(U^Ki296l<0MGRD_&OG zmU*rp3eLJ+{~J2>h+f1v`UJG4=Zy88(`?#9(P76(CT25>>S%l8#OPg=lCa0$lC(kU zQrtJE=FGlc*He!B`=0c6QB!b?w94v4T==XpCyeBer0x1YMfIX+FgV~Eb0&^~kVrBM zaz8*C=wO2_IA=h4i>y6CyF?*tOS3^Q+r-yw#p3#9<7$zRRw7lS%OgyI3bkT9hDh>h z8vh5g(bX^366BuVZ!Vk6G(M~hSGzX}%O@zv7oq%PF#wr&gwUw2YgFi`e-yH1rQd{Gk z4OfuiXQ8enK}-ABS!QcrBi-so3_e;TgHfO^k8KQ5zi~KyI9z3IudYkE%~Z@*Ep}SS!O)`V(8^% z7=dwn`#!UdcL9uZq5d3vm0F`lBEU)GKk!{PY6TcIZ(kx!N#@}B;NmHjmSgt?8}*B- zpI#lvnY|93%~@5J!|Ys<-cBdw)Nn@FJ}4%zzd3ZA0~13i7r^4NEjXhmOw&_osFNQ9WzXoV)rwPlG*Bp+HYm ze52g0(rA|BiR7PgJ4i=dM-tpVu`2{I=#)KA2uOj<3q4&2ZXl{vKtv9R3nLr|>LQb? zfBwb1Wr3{1jGNAb(Ra=zZ^CbM5Qgd%frgI#iarO{#{4B)m!ZBma@%+`B}sr$liR8V z#}d#9V6+a3U+-<2S0<2zRr&Bj@qm4m&ywQ4pYH*(dxt=c)Vpgb)2?wlc*PE$;1dL3@{JuM`){! zB37c9<2H3%=68FrR-V z=WRcN9_FnBI&qd)-RtHd3P?Kw87%+QY&2M z)EsNnpRxzHN;qedqxjOkKD(O#jq zihjTz-kFdt)c(cMmZ%R6tvRTtIrm|HfM9gqOVXG#-~sYld6$49t#0mTuOuHc9XUcC zqQC-fj?qnP;Rvt_+^#a4<0XQRc_JmjaSLPmsF3^HC3eLSHPLNc*8(Pva;O*@m;ZyJo}sJ*Yh!GeAwJ!-pXt?)!rd2%EelGJebvq>A_ zaY@v2hFQMSuwBcpUk@SSLoM%GWjZmi!}g_%~Fy-00DS9YWlZRWGN-4ddERlS)`gdSCCdFzHo>D)|tA(u}dN6zlzj9{T0`- zfR6nnVG+Kox{ZW|pp&_{W4HS}#d)o|a%26E8Vd4{{TQ>n{MIiD^qyIkcOf^p7p3NB z7Cv=jXM`rLtq3Seprm2wx5K3g&Hn9$}EY;%)dhUdGtBw;C@uM7M$H&N2ioqO0YmwsE13%pRNFA|?;wjL~w z7}u4Iku4wcrr{{9=>ar&G7(YBwUgA|k%Hp%7b=0x4-1M+97or9fx>6_JJROe`)Yb` z-@yLOmc_TPe|N3nW=Vdud_vOWs6lGRy}G)KYBS8H21JqCbRXD43)%@xh{um)~b4(U)KEpB?kDc2G`j4Blw$`;`J(^LFkg_d1 zErFrYxPBtVCAA)7Cvp=SJUD++w9OtYvbD9nKjJ)|)w89TJMJ-}v;8gQ-JY`&8_%+A zFa1P4xXgg73u+ypyKMu`P7jufOn;SAu!f;__oj?Ck_QU=Vy>J)ZXvc;uNw_UNH~z}@_nuz2>E^3EDY81>qG+J{n@DKz)W9G?<0N~Z zbaa?^zvW=DAM#*6s$0Zl&KTp9{X`T5rc2(!a^k$QY8lj{prhcww&gsh9$iWoBN};G z)uSW~YNhW2$LHLfv}$1cwn`%rBUq%M5<4vw7*#l1f)#7~Ay5RgtQi2HWT%7h+xAw& z800;OYgDJ9%pl2{rLD0I5&8lSX!#86CsvOH3=;{<-B<^+hq5$6XqIP3QGIXKB1xfD z;3{G8&RqJ(wSWZNVhJO#zhC)1@xp&><9BZP72&Iu80D+5nqi`7JkTaQ57P<$wK^qD zN3fFfJTYr!EbP=$1!p67_)B!j6 z>Yd(rV=H5><#ceFnrT*E4JOg#f~xuC1*MBF#8&9NAlAVw_Esuy;KA1oA^TQAvI&<_ ztopLR9K9%I+Gl}&Wq+)!VIp)&Q=K}$0d0W}Y5HfiQ|!}OkjxObkP}R#N1|W#?e$w7 z^Jse#6Y-RySxxy8J8(_r023)_Xbr@@h!@+6a1zPN@;s@7EK0?3Cghe}ljUoZg zeRb;TX}aK3KP!R)r=Lmlog~=c07>(nu(j*cVS z4Y0xagODJxZ%|SaV=#yo|9{5KF!EZn6YylHrhWg+F6AblLJ!&W7Z4uwJ5CFI=?&x#|lXuQigQO9Dhb z2Spxxlua%m^{cu@uGLY!^{U|r_3V4c>&`wnZ%``Vyn5z#h4! zM^bYZOAWqc^Upl5Oew-mdEq-J0F1x<4r%D) z`POpbq&IGrDns|8aYaDTMk@7K0@WEDB-k=rx|)ooPhBzbwSldf)xx|A5>Hm^ z;i4h%|8X)c$o-bj7exvhhi+S`Zl_kB%#y@3Ru8mf%SR84oYQv@XDE}U=4uR!>Qal0 z0$h=7Nyp(Oi?w`Vod39bY+?jz4Gh{hB(_~EB39)HO?kTd@E)FV4EK5~mG*Ma+R$re z&5o|ukj@Sl+^VJdEzP)Jsx9xJ@}llcifhH{=F0K)NGq|8xz1cS9d81;oW#BHj+`|H zVyRj@j0Re=MkNukYur55bS}-g0K4uoNvrZA+7m8R-kRn*a|5I@2ZrlJzgl8JqL;K@ zs7{}!r5llQvEd`w?@LAQ@e(l&Y}%i66nPr2wNY)SUh8G9ICi;y60}&{v zK-~An^ZH$Bv>q>H#AwZ+55@ixwkFU&?<+AjzTVExlT{!w> zG5kSKp(4=70k}ehU_Qa3($5Cp`sBsXt}Dg0p@Em#2n0D#i$xdDw)o?XPF2M3{0U~% z@W)za=UO$PLzIr@)x7L`OekIp*hM<*ol*=5nyW3l07%_??{zq`Zqg+7v2AMi8GEw#!SqcUmh`7W)Jy;jMlc?1yZYbE zr&X0w&K$Q6l?2+L$q-|V=>HBnO&7#i7TOQ|DD*_3K~RNQWF=r(vXx*8anw$je7Is# zEX7}Jo--(OuGTZ~BpQ>XJ)N^DqX|bs5)~2h^8g>9nj%)!k)HDf`P3}YUW%n2;CjV~ z7HznkvGezp6OxflD59Gv^Z>e#*t_-q)nw4u?*;(Uhc)dO3?H}=NLcq=Os%BsRcqI4 zo|lXL286vT+ka=I4qxzE=lHq}X6hC`CL9wQl%=d-0z9`{9OJ3+2AXKsAtfhrPNv{0 zXayDOLAUxK-V}|_pvmc#nHZ1dPr1L*rIuTLz3ul1jeKA`!F8L|vAUKUN4~I?FR9G3 z(3YXI>t%!)TCGEsh~g3!&Rpbqc>`%dTER}Q@l0SCZ}2!45FY;NphUQ}P7$4FEHcyrqC~@Ef6#XjLS-*p|BFGmV(ga}_WXM|R z$TbNI2Keo=levf9A(G@zkQ$em-}&{A>S>qB&fy3csb3=rD2Y(kLSfiUTrh~sxp;xl zmmu6}58iH7b>y+Z=B0CZEV*4-1dmlhcl;-D(71(jdOWPzmVT2IupFZVfZnak2DW0i z=7ob24BO;!nc#%Gu+E+kpiq;>0$j{$Vw|Yz#~p?BLS6hTlw!C(b1fB&Ew}1 zs#EEZNxnge8B^c^F|YVl9*SqwONVRb?q9~NT?#G>?^cy}tCv6)r@xCNfR>@)#{b{8 z+D%dZ#_jQGBSdJ|4dmoKGyUaL$q8w@fYsH$3blK3;PDPlSXhI$yDiv!=>gV4`ooU= zPU2!`F-$nufSSOiK*76$tMR6n?iOB;PoWFrIbQAa?)u^4yCokt28{H7D$&oS(>a3( z^q6e^x2=|srwI)j{Ww}irMoVifSfkA^~~0j$X-aOd9TBqH?HbB6b;!gU18tsHIz!DU^uaMja6w_kWcO(Im?EmRH=vO2A^Jp(8RNygMp_# zRaY46sS*^YiG7f!-$@E#N&1y6`5zyQG7oDd`Ft06`hI~LU1`|U0m9!6(?Op}`U`-j zq1+_ck1r${{ZXwuvl4z_V65_1;6c{V2tsbM)PD7_wu*2+9k#*S#ZB@9IE?EGiB>cD zWvEl4#RkXui|gZ4X`%NGJ*8tif9ffaPNal#3AAtR-+qu^4)s68jO+@rk`_+G6lF-QE{NL+^-*M~54o5U|?(=mFmz>4R64*yreNgMsu|Qjw*-E5|%T zCg?0EFV7{yMw2F?vlHg>Cq>e|oUlk`*CR!*RfmZ_~ZV6s5?`OS*0fEZd7 za!fA@c3WauIOqfrlBrE6p`Gelktl%*DQn^=Sh#H93HBpJhzx1zMP{)?bJDwo?X$*? z#hTB?y^{1bHU>={jVQ}*@H_^l@k&ykIaympm1MPzKAFaI_V-vGPimyOMhO@n(quvB z_?^z4N(~=J-?<v_dXRUB%I zT3v(&nV>ket?mohYi)k(>D{%iMGxv!>!AG~O%TXeB*F}ENcl1;Y(Oc;>^8<6$bVM* zdlY18ra9zVR1ZFQ0XaTQBN%=1h@pvc9eVzDxWQ5rYaX_CXGMp`8OQYsM-7=f)k0=7 z-Ti|4IH87ghmiPlW^^l*E62bei)8acRmSNjP0JoQOp>k3KaB{~X25Dm!;&FlgAC@UL7=v_3P9&n z3EK#^F;t7GsuA>KfNe^&L=i|JrKttL)F~0ZWD+k+H66}ozU6J$667oNw#R6M2;gZ| zH!+vP`bC+>cX_35H}S0ye)BI=h%Rk-F}Ejzhlyr_Tc|;&$&pKb#wxASV5R{sVGHSE zHGna(UNYuDH5Dqz@IH(L-$7~0vCX0%pT#J#&*hC?tE+#HW6WbZ5{y71QRaz(8Ue&2m6QJh-)sL~GY z0fL-kuINW#azyr_j$pgS6R)W^>K2+&6UaIs7S5R$LOk~t>0j*a!LJ}uZ_ zXSOtTLIoO2%OcV7FGEuW(LavS!cgw)pG<3v1_%BD-|KQ!n(<$nR$eu>^?%sg%OAR_ zRbR7sTB*Oi?E)C!h2W%*=goS1X~OKLxj%DV?x1$IK>k0(|7}m$%gq<>2&?I# zLL)zLJmqe!4bKnk?=c)#I+Bj4U7H^4n?D+NdvV^IO4fuU>PL4KoiU93IX_fbb>sY# z)-SK05>@PSg7~bTxZjLy&Fk3^K{EB@NrBn=MN>japL-JSu{VK8{TWgEfsXWyv&BcE zpVqx@i>{G}aQ$xKfy#e7S^B>H8Kvt^d(YpB&rP8_a`xGi(Hp|?#z7#d+t|$hJi%9H z4HhP!Ek0%qG$oHL+Yo)sJX~5^q4WGv`|#xT4@H&Ohpy}6vwr-M{of;n)eSSZy|^^# z;uY@hZ6o)q=BrG{4ZGC9x7~w>(l36G4+B%$8@_A*L-c^B;7)hX-`ufl|Hom|@3fD` zZfD5qUY&9_<&1vmbx){+kJ(SsBzv8$%X;+p<`bN6!-149zianr+dsgdulT9`%7O!) zKm4@lZT92V+Pa>I*;b_+to=*$DsE_GR^*%4%jZGMM8`D?n~$51+5h4B>9>0$M^hqC z*oRA9<4neiNu^1v+|MXJvti`7TcSG*BeT3z!$XrQiXC5Yb@6adO5|}l{wF#5MSZ2L z`Pwu36;ozhEZq|ML;7gkjYI8kdKx$O9J&wJ%J8M~m*1D1|E5p9lOSZ9kNEw$j(Hb< z;R_^>c$bEAi!WvtM|Vu+SHb>;N_*o*B{HOaXX~%9pEBA*ZzKz$y0lEOPqmzyKyX=n z-g4}n@{w81(f98(pv2hygY$|nEiW3f2RB5Q)Za*`UiAQu?mY}j3-L_JuPtNW?OT_- zVKnXsZAt2Xr4K{gOLRT=xwq&-GPh|yZ#gk-cERgo-_?)1ve_}=uI6A17p%SLJT>%& z>0BjcdNZHZ#=k~YOpmUV)3O{=j5ofKha)-m+r15sstI$SGG>OyPJFokhof<)GD@Ov zGo!S}Y>Tc5M$VxKdu?>dzQ_*qNCmqMs?wT;-UGZ6){ZLhU z|Q|A5gKNpNtwAowN+Pl--D-Qb&W@G4@!RYGb@B#al zoy7~Y3ien`TsSge;Qi&Cy7HQ9e8IzvN6JNKup`rcXh&vr8UMd=$hS7BEJDF)en7iz zE^X_-%YABQlvz>v;ml$7pHs9yC z9*4Ga1;*?bVXiP3-=V7=Py)e&#WHNJp?lruO6QEm{q4L={twc-llEBb-XMdz)*w&6 z^u{>{qEGtW=eL=LOY2v>R{WE&b+9ww_FZq6CkUKT+@~IwJN$C&4hQ2q+ubktFnf2z z?xAPOJo~Au$)m_2CHcdTt>%!nHJx?#OGo%Vf7Wp7aXI20Il|YJJ|mo#75Ti*e&|8% zF6+a(z{MF{<~i^kG!G+$IIGd`UYHwqchlgWF!Lb zR*%NLaclF)ms{wp(e)$yLBn$j)@bs@v<;CH?tggfzc$GPp?vb#kHO8fu<|s8B zO(Ro=)PQ$O@kq(x(YX74yp!*Y6poa&+k1cJyI^*&I7(CSNJ-_je_uKp_xehE?*#i6 zp0$uMeOQKMfsASRL*8s{Wr6<-*3hk{iyw~0eX025Qg3E+DULhZ80<;oQtMse%4M8r zAtxG*+fu#W@ICYJ6=Me-bhy^OB{!WtA)}W);4>a2g;kJ~zh+8w_Faba8||T#u93O! zmkN%ykH#$@u%9cMJkn!lui5?)$2RU6jcfZ6jf>6oKiZusbFF00SI0CD7sy%c=l@(1 zePt-{@-5n2T0T&G?v>a{0=t+b@)A!KM_&m#Zk{Y>FnevKBPCCa4NWwO+LAY}_Klpx zt1roihB;i=pI{FD^X-ntjsM7g=#LAcOPgg~1Y;A%Gf>qWow0-QFtaj740qfgP2g?D zMu!*C^kk%@^p@N&c#`MGj;aq|JsNlM$ts@hDX~U9kIE3%hD(=!Z3s;V-W?m~H<`o&*tiayWo*)w$0Xx!NQvNJQZYcVta`>V&d z4Hu+EEp6_LhYgVlfv%sK4jRnak(RH|FL&Wdcdtp_XY6K(&tiA;_4hf?zUIuw&7lJ^xo$0y|-#4 zw5ua1i(4D~?&p>!_dPV%;NNH)jXToV-+e%qWx99Erje45qi20zDn;5ZCM%9j=p~c& zr&HvJXZ8*lF6|)ywWdBgo6Y+CHns<^@sV>Ahg7$>^QESi*clw}I!0!&7xzBMy59TA z%VJCZ`-Seb@YoL2_@O)Y`^~bw7yGv}N4S#6b)bIDz z*T#?S_0FHoDPb$uu0LG5S53y+tmqGe-26PY1>TUBJ^WUsK}}}|40LSJHo&}rq|2vQ z?6F;1Ge$#i%iBKI$%-7?g}YnZ=0|7zurM-a=d-EM4m2&(pjMPEXjJ6MbSm4-Q zUpYx(r2_se?J;`$uDq*a~&6FYd^-oc@Cx7;uYKEmaW*@}rBkOH zt1jH)4s41U4NqqV)20U7zd`n!>+-F>BVG1JQ{)r|!?akg+h$Pz3(H6*#8VZy>1&od zmyLGjWoKo+rz-!ZV3-x(6@SsG^e-};$|#M#JyjbhzKkRUv@fx^c}$9PRpKOJK-bx* z0&84%K5_wzJSn=w`Lnj-uYcL-x{$Xz^6xP($JQ?w&5AjDT@5o7Pvd6g@-Jl|GUQRk zqf_Rpiv5X8-kxiy4R22_iQljeeHVU-2PxOYz0_RDEFR@!&F_-Co#fH(HeDXYZ$EYU z%bZ2{o@3YKmw7{NhI0->Wa?#z*}lW?o_fhEb)IGA9BLSiQ~y&uWYBE)+fJNnLzvr6F^Y?P`RU24 z`KB!!b7!4lD+5zJ_IOlpC(63dezJHp?!IDl^#dRLQFpXvU+K`|=s98!y45i!w2%cHJCSKD zT9Mkz3Y~A2K_Vv0@h#E&SUzN5^QYMPq3E6ca_ra-Qbv|;ASjjy$1>~2#$1U+ zA8_})?v}usH)nLcWs*2AaHDVVkV#^19=*wUbg~4aC%QL9A7GB$ks`6d`0^7^j3f^w zy1w?Q-~fNrjt#Ce4fiIGyxP@I*!h4#!cHUp&y(2YsX$z=6CZ28rO2sOB5WmftL^;_ z!|9A756?%h`ee)xR}Ie`jr;e=RvTeKEfx@C{_2^wI2oZv?uu7^Ls;RjTVVNsh+s4SblWctWKiHwJkp5NVIUs z(o`HfX+dc$D%S-K{vK zow2ybr%ws%20qiE3)$7f2elIot<}e$QQ9|XmlsEUBG0*IROue{uHy>#d*`d&W=}S0At8m)jVJ{>jXelN$mZ$iTNG19kjXZdlNj{Yk!=)SAI0o1Z(KWla)c6?y&wU2D1+WnLeGLbxMH)N=+7jr< zZgKFbYrfnAmtk|>c!3kPRHwR!zvP$)~7l~bdxnklY;DmuxzOU%3`uEq z(!L1OD(D*5QekO|4L^_lCaJ^uk$CQ3hRJellKF@o8P+!)bM93fUufqJ4;639YR*|` zR+9x%OWdm)tP8DXY3#7pj<54Fi{uugI6BF!fJrcu)^@;;DinsQU^-;5*rw)4td4-KHuuWQeek^NySInfb z&wO2)eg=obgN=Rto(-y{B|{vipmALJ7tR&|2%4#V|0d$0Z@YU(M5yB8y39BIxYCw& z)B0nX)VPT1@y6z`AV-TGM~rwN0xOqQs{D4J_n4`m#?qJF2iJM(8(ilU+~5?9TdkgU zRGsT?jE(;q9b~G-01MnQ|NdIDt@#jfZ+x4AbP`c>WhH6hYed6-O4QhMMx|raTVf)J zMKxtSVzn^kO{R7}_S__C3%qx75dO>j7?Mac3sw2#Q=n}HLGIUWtB=R0tuXehbF4J3 zuk~m*K+A2qRCNEgFiaS%;&9eTtm=|OcinR@4wmqdv^I~EgKc*FAw9?=^utM*I*5bt^sn4HrXp?7x@MHlIjD`rs+1 zam|xf!@z?rZz@4F69;;af6Q3HawnO_Dc;nJut+VsQ3ZOTFyz*1D!>ED=07c+?P6lP zeg#bqVt<~Y`5A3Daa~EOmLSL<8f=lx8mR6SPT%z`ruQ@r?{|Yoah-O`%}i+sN=T0^ z{u<>QG_4Ev=wLUx5j*e=I=^#&67~ln~(U6X=QX*HhOE% z7Obu&waKA{;pQDI0KGeJRnMF!cLiWYo}Ag=^F((FO|?8R;(o1!Aao#aB^3Wk7u{@* zZSKHVicquNqMmcJ#C>v{9{QF@IX`q4jLg}Hy@+uP8_tdugXVkP4HWi^Lk2m0;xv&LIsgk0HANAySxTtq0(*kB40!Fl4FmJYshf6l(W zTcGKFXYYeyk9J?aX+hC8d1rIouIICNcYS$u;EVa}It}U*os}qdM{udvqmAr+_ANBz zWsQB)_;cZI z%N2L^w$ye;R^d&68|+q6s>&IOMmbbHx|!)+is&4H=IZxWU7qul)`TFXGWDV#GUzpC zrYaf>o>$|Pf7$w{Gg{eF`X~hbF^*PZ68B!1=Ywi+7nobuLw|#R%_Zt@=7)rDZ(R^o z{^O$dH{=4d(UQ%!{pJsA+$Lsyk$XK@kXWy(BsEy|xe|h2k!nd>OyN`UM1y|x^Ex=< zbzeLo?)%~sJP-6rBdeuX9z{zLSBf3E=RLi0)|yS~_^CUs4MCrF;{307m`+-dd&FcF_PJZbuAV%j~ce z3WuWeq%d-iEV`o@(OC~0m<{7xn>4AmTJ{ih`dk#2EXBb+s@nGov0?XJ5QWpt%+$Mw zTQ5H6j1lhfL38oZ*4o393U3qOnUQSDTiE|`*32L6M|PdRY%fAkj>6g&wCmQS!iy2S z*|HxzLndl&CHr={748GYH@0fwI77}(fYo(5`-#XR9{~xz@Yae4ns^)IuofwT>60wOQKnQA6QU6g+3=`p?sj45 za+}O-QI^IssUdqiv6+ESCKFYRM&V#zmB6ptTn!{4!tY027d)w0I+$Hg1ZG&zENa7Y z_>8_9LO-yl_7eQiy9)NY4}G{JdpK?Eabg%-yNN;RBV+G}zdaj!e%j&VK4l1+!#_ls zJ0^o}P_jp|?PW0WNqj~Em|XRM!q&i7ZKO^*7~3rnt3NIQ9Tf8Niwdqd!vm>3{(Uo9 z+jN;!)<%3(L$t7Am%S^(dU#k(RjRhyLrxF5YgS?P_?A`?wxAj0v}b0ozJtSEL7-CG={@)-5J z{;4Yf5e~mnj7naQN)Dl2lM44nNcSg$c0HXglsd=?22(}`=C$Wd;f@hfmkicKLQ9bJ zHvFkpd=L5V(?6!0AjO6jO;z@Xm>Ua8x||ZEUJ@N2M7u_@_tfgFhSr_Z(20$ysNnf| z16}6qYr6M(80_|P=tXwzpji?^wSV&ZffYpX*>b1gy7=635q;K*+!MJ{X+4TH#CMHM z*V~CglG{3O?5k+QeX7CPFm2fT6Ay97zTISt16$d5L~)SO)#!zq*9ZwDp&$Id3|UR7 zMrs$fur2Ze{^;y$f*`!>v*^0pSdZx_u7+5iTaI+sAzyx%YpMUGIGBD>wXmM#haN6t zkJiHsRn&@2^(Oa7qUzU~i;m6uaE+(}WCX8XPLPKV{QGg^Pf`u8tq9}17lI<5#xEo* zf|6t}Dsd>QtL->HIBq#Kl&yW6XbAm$-Jrv`BpnG6R8{4}ZQ%o}{>=z=oQU&>w;GVp zBJb(Hk%r04mAm_XKoDOQO=TN8No3Bxpli!5jbu~FBqzI!GTX~MkPUI4b^>~pXXeHFAuS3`z?}}IcJZ(!i5(iio^8hR zMPLJ)X0$~Dq;=)?uqbP6JbMH`L1I@%l6x*gM<3zDhm~y|P%&0b*@|jSr#4Nc~1MT#0kB z!xN-{{}=sJJW!Jcts?i=baNoe>y{_`}9kNYb{nz=)BK>-!->sNjXRC~1_Y z`fH54aalpwS|4#e*84_U#X495QnNJRoC7eb%OTGf(PidFNP^k@AhTg#-O-Ora|@ph z@!i`Xqt^@Uq_gLWVCNA~8UguqZSPSyHS0kYNB$fi57^d8)h=Dmudm$95(^{;B_@o5 zckGmhUVi;rb-Pp_dgrchcQGDhrs!>44NiHKIG|&|ZXEebu}$HFeuPbC6`3w$#vOm1 z$&|++WH#)@bYC_lE$eG9r?6lb8}PEr`2Re%?SGF`x&V?lh#X`i>kr3~@fIIxmAr;! z5VW-QPQegJ4UD_W=rT~hSWbEo`2Mi81=0K_hNgpv<1N8M%ZwIoE_@r;xo&D~ypp~! z#{(J4U`xIL>u0C3sh~c=@`#|xaW320{XHT89a(V3vim3TpecWqfX4Bl-GCCW^@G>1 zhtvaHW8DOxJtX&#g=^bT7fxmy7{ET7Y0(o^{`^-ZU_-NkE)OGK-bV2kU*@#@L*oY{ z*)o%qWk}H`?W|ICWF9YcK5T>3!ba{pHZMpWTS&!<1RIH7i z2=vZ+@Q@Uf^r-5lJsa=~Mhy|MKiIunwem~TX`O2)FQD^M%%M*|yCX0x7@E@u?ZO@O zDqN^ch1D*I@ZO;TeFZ2)W!G{~Z1ED=-C zU60k>N`Su?Bb`0z@4qaHCfP{mP=rs<;dg3i4N;KB2BbEk21zZfkN6`f09hS&c5GE~{b%@QV}gD_9X(K^&TDp9Pt6dXh+4Si6+}H$B1mDpiR|(fi#8s`vtP z(f7|@PSvg*_^ZdnA=)jRc6SrNq0w+3GKD8 z@eqV=4U}}eZpAGvPvMzF!NVEg_h`Ni^_ojua90BUg62u!E!6wchizvx5WD=9ZA;wOdvFMvjw|Yix<0cH(Gd z#kR0!(Yq~$9MfGi>?Ap8W_ielWaCl}DSrArh|NDR1Pv7%8-4nq#WeOT-XC3+;?x>f z(T8lm^5lea#z(R`Q};o_d7c9dg}ok_@s=;u4D@**Htxo0#G@p0`yDlI<022g5kH!c zgY0hj18Oo@ylRd+fYDOyk|-tI*&fW9dF_N2?+W2VCJYzZEIGm zx&U-kT@8l>im*#8n;Dc=dQcrxdzTO)TzZ4QbMgG&5kr}AwggPBJgo7gcn#2sJSmYy z2N87Zx>5Lz3YrcEuT^o?V%bg`Lzi#qyZz^ZI}WI$m^nqC2IpD{vpnO;T_{RnbL=rBS;AQQL^_w`G-DTIN#O3KPg`8;n`7mSq0tF zO3F(4HTcNxm-ikV58=63eAX@x7-ZmWIeIyw+kI6+wmeVe|Mx>S-auP2yWDrNB`gp%i?U zfQ)#fv-WaUE!mIZMdQ(d4IXyRfxepK?9diOb#FIcLd3mFTWDej@{^KXf^^g7VH(x% zDN{=A`g6Q08rFy`?sZDA-%P!paEyl#KZ>nhjE8>?w-ccuboYxLS4vx7{(wd8Tj3*e z6hvA42nR11xBw)IFK!Rb^zi(Svp0TdLCh6lOhPsd?ju_&NMEf*D_uo!Gwkn9z00Y zH;I;hm=H*|2*TpUu=#qQkSqD6N|5Y*3H*&079cV9U742{J2+g_NykDhNNh$0-5aRQ zmn!25_n|FFiY*ZBOPF<-aoYsloLX!7{Zl8_JR3sS$;KzR<&Bnwj>j5&R$;{HZk0 zJ*duL+XYgR7r6&S$?;VKGyBGQ3Sg3T?|!g`+9I%YxMwVz(f)bx&&FwJIaQdOysFh} z5BUgPA7-VYx*c1#E=^5kUty<`*hRR!nN1CP9pkE#MA8*zJOJNu)YPW=Ez>PT6LJq- z{nn>6N7Z68J!=%KFA60{-A2u75i=&QrwaKf*$%~nK(O=@n`=N zRgW+RGhr8pqCS8+9e3uAI#4iw&X^bC6SJo1l`bb`w&M6}h#6-e|J8aEny7X1B}hr^ z{9ewGxdU~`{PGS-BS#sm7#Z+v3D~_={B~CJCbE}9go35cT`cpB>cOD2&_d~tP$kGNhpXuMW#GlCI^@+!d(a#D*(IalHxY>n&c7Xp+9mwV3#4&eIo=%7G)NC%@ zt-MU8ECqz5%j~^<4>^+qID^Py1oof}BL+v`6pKmbQ~DJ#9-KA-n6>suq2w8jn~s&&YcMW}AbPyWII)imkKGp{l!&qEEml0j zwW?n&44iJF*)AM5$pT9cmlpAv-|qjwovWk!Y*NzX?amcrg93#23;ox7z{c0o8OR#w z75sb%Jr=!ExjWeA2@Yw~J#`F=aO+1mhXaZigh`=&!KARQyR#~x+c%>rm<*`B<#Nnl zrYI}_zjdY&%2}ZI8b9GWRd_GtMTi^ecc6fxxJxvJls!tMCcq)-UIN0yoKZe&F4E`H zXRmP^^cEJ252$-3ne_%HH_^j>uu#-m&yS?mJpyNOl1f5^WPn#(MH$UeVQm%NR|koA z^a3;kIB^M!O91o_pB;6VcY9vo$;p$TUEHqau8Yd^PPaBF&q`n;0bQVFD$NxYBim>{ zDWV~=gxjdDG4O+dyotwX9QL!s`j4gVJnp1Giw>K5HPE0U*+Uw-zH1sp0^)sZ7bhXP z6xjmIoZ&^~TJVbx?@Ora@1d0-2A2cO=rs$%gpTpML#E3VD!@=~CtnZE(#)3h$|y6b zW$w`OK>K{W=_f39gml~x8A^1?^Wt$BacfJ(&6?)u-`hU(@{!=Dc*EO~RtLWz%{EYj1RySP8pI2aACXM3GW-R`z(`N(PVPCe0 zpp4ES!u$ySfR@zYNcLV1pkNmk_CO)cu^FdbIgbzBCK>>ZFy%L`3Mu`Z1@??O^1TE> zmglfu1@~<`Coy<`y8RQ{k>N zifHY3xnz1^Ys7HrAV+}y()SC|_KL^Vb4r}hj8@zwZe8LGyxm?ilB~t_?Ya#hslQlu zbM=FJi$BM)ipIvqQzJhcA~O0D--`4KpM4P{a%HEE&#~Kkl=_=HZ7YW0RA*23IG$6o zIb}=aN|U}9n|Wp$;~Con9e&n&UY+SmZpQf=_eWW=%|351cs!T@nEiW@#bmFad zV~Vj`bgHjBb7P=p=h%-WAS)`x`f^|MnF$|v+1-auqy{b5qEW5OVJi}LW-V0Jqn$7H zZe;bb^VFhqbxOlC;aV@Rh^)-RlvBR%fBUgbg}osW~g5vKTGM zb4{k9S@B!6cNS4$POMF>LWvRWLj!Br1B#*2b^Te@Z_J>R0nZY=6e89rx$CNThXwH# z%J?uXEK88iZoJ*HLXN6<+e_1uuT>wLVe-5}ElPCO&6~1x4<{62k{Q_H@)_JO;)rg* zd4%sBO);QwR#+2VecHlMI8L@OgoMY=$uDLPpc$aD(2uwC!Ep zrKTsTqzCsnJv{E`U-A*Y(JlqC-&~@c&Pn(!o#U&YJc3u4N!qu}e(X|VU?d|O*N6Rz zq~KeaA7?0?CqmA2E7bVUBxP)}i~9Jcb9KFY_yPVYXd>5&{Wy&%3*EkVQ(sB_Y?EWA zQ=dX&i@`VpJ?O+9b$jZjE!p6)sYp4%?P<~RG)(0M_NPUVu%=>`X-hI;?lSr-`t7og z9Q?7OAC3Fs4?jJFmBwurY>{i)a~V<---ugYAmQrhMc2_W)7-76(&y@hx?#OS>`vf3 zK8;vPFL}H`i4T<3#FRhvqe}De9IW|b&k-TnxVsXSFKqD_#v`z`BG`@d_?7|o-UoHo zO2ZV2FcX7bxb`x{jPiTS(4C8u;r&h<+UkdP6v1|xLewjY;AtP4mJ8d)0v&u|By*M) zhciSlO$#lIsfu=X;eD$?taD`plXmZDWHWZal08~?-gDaO-8=mv z?b=b!>KUw+b733wU!8=SwCw3jGL9z^lL;eR1fqlHm_ZlO^j5-6j6crfd|Qf(mb0wk z5PGhlQJI&oK7Cv--xcocBgV|*eR`j)J@`{HzT=(IRr6miUsO=vvsf)%7P6%BX}5lT zuhwPSw(r4*am-?-6fx<-V|cdz-cTl;cWO^k_}9%_u?7Q#@f=lV=s+iGcIY*t*A&gI z-$vjx5sTFdq_c~}q^WAwneLD{ah<-nBW{v{n%>1`{OVuu= z57n~7E?SfX**>`!6?0^-4k}bmWELGn${NC=2@=MK&f=R6H_dF)TswHZ5-A@}r%^6r z>tv0n@F`j1{ATQSAx#d-a}p7su!pd>3sd;WUYuXF+SM@7wDTvH}>GP_CaoV*NT7#Dtsw|1M;$M`;MsnB%2!)MeOwS<`V5<&pPs~G3;ZH{!>mQ2y<8$>@e!!8^>e&LO-kte8?M84C%e>ft*i zgdb~Guk6vp5)Y*jFZ#pQRO2yu#6>bqz`#ScBgHA~dBJAPQg@uKAi`X>z&LtP4qBAK^R&Pzqlz@8t5eH!pj@yF<4-W^T`|``6L>{ z9d$vxt(&GK7IRo|!aav#y0R8*=V%j!H`MJruFEobsX4B7NhPHncbApG-r z$f(?bh>g`L{)lelg>mk(rA^7K4nyV`2CzPog3I?3kld}>7tAAvoeM64*Ucn-el}Qu zuP!|N{3N>!!h)}tg54Uv$<^1-jhVP!N6v$h__G!axE+FFVW)s^{Q!vPi%fhHo&M+K56@hJ8 z+G`}ct2!{SpA%rqew>N(J2vEv@GEv5KV!p_%teBo+Bp??$w)rgIJwFf=X&1sHN)%X zvB%O(J7Gs^=-@id9&j&15bCe|<*oTlh619T&eI@8KqQ?ut?d;zb7C2+vM?O%>-7rJsQWc>%5);6e@>6*cbOa!m%)ub!gODx2xr!{2BM zTS(<`;)t#sF$1D^EO*d3r^2E@4S@;IlXLqNcc;W+D;#Czd9KHJ3>Mlw zPmCiz_lK7#+46Q#l9DIV|L94X!3O)z&qiQQLWC*}xt8~pyz6;xif1e6izi~nJN@C~ zQs6}G0wf$YXdyybM<-0u@HOTUWQ!K2clrqaRQC-<(F`>BDs^ZFV)5E-O=170F(HRz z*LSGZ`W^;>`v8KlK~CsgyoXCCMZ&0!q6nO#I^6YL-=8f|)eVLKGaIR(7e%c|4773V z0(#O0uI-RiD*4c?kb$NS;yDRB5LJ!>pV5`M%!ExO)cvBYpaqJK-LJu=vleaHZQYpD zqtRwj!;5+I@vHD!tvMNNMr_9&S4d(2FMgt0Ve2U5J~x%UejY!!aPqy0yPd38z}4G`9m3dNKrvb`WtSn{5WRv5-;e!cG|DHWlpq%Z`sR z|J{(m#+wM49aA8VR`v%)1Dc|J`*Po@Jwp%Lvlktvi;<1ri?GImnWWcjE*~X2Ki^WF zS)s%dwUlfcWJX{k{;-@7;ZsV&vFi8x)Vdmee=ZYu;AnV|dk`tf6IYmY<38*~5_g;C z2hbM)=OnXt#JAPTNb)CQ2gOM2AwRVAu*=)2wp;H-)x_mcy{8VGK5e8nHL=t%-g7N9 zeDmo(+z@(w0l?U)S~=zK!1IyGWraF{)9n{@=2Dcy3y7_9k!%1li2AhR%MnILB74%v~t9gZPybqr?uPnHV<-l=H znH+CW9}AZ2rl1D!+5(qQ&h@N_(y&H&ES;Ok>t; z^pzEg;MN0ZZlo9JStC|_F^ZwHLT>k?R(gs@@TcQ>a&)e?PtB}yMBUFHLF`+$RkQp} zuo+<31gttRM2y5%i=v}k01gv706H9`sVaVQJ=2zc1iG{n80_i9Z+XjS-N7t(yKput z!!qAoI8?8PFS*R@+Gz}MgnX~V;{yCgt6}{OHAH9HX-w>w8ssn`4azBKt{Fbw3!h>@ z%YCKB2FB2#dqs8%w+k^dkmPq+!Q6zl(~5qQ&YCp*EeP$3R9_D{3-_a*GYa+cA;VM4 z;_kB5uMXF*UH!{It(ZD8+|!)y*%7?F4EB3oVL*0Etej5Kj?CZtjiN8dO8db>zJPiO zL7RxYYBM~QX!AuR0+Z{58zPWkj-mXBlbC zdnnMR_2U$@ydRWy7bo_qriD-(Si;Q+tk`aTsl@1E(}AA-F6_Q?Kya~7r*l(`9_op5 z+WGxppS8a{6Y9|d?p=@^n)!l)h(*~vm<^gYKq4wn^ikfJl6!n(X}HFZ&^N>Ib2&K4 zUv$>{wr@;rIzkItD|Mz#$yV;r6>+)70A-wpuXB7qeqs5tiIhh&{T*h&H;fU!-h?(s~l$ z6*DZcxtCbF!K&L=miI$lSPVr{6H!>jb2OUh$_h~4J`pp4I1|l^NjsU``A|8K3x>#| zGka$iYHa%_p%AOjvcUe*f~r9*d$Bv%KG~?`T&AcIXt!E$F1XFLEc)*98hk69EU~)U z=Mx9c&35l{UrCa|*37YE!InB^Z85TpJ!bKFEX?yQH@MR^I5R$@-{(Qdq%u)|l}+=c z?KQ-|u4l0_c`ZjH@r#k|G57kY%`6$r(gyW`mK}@!y~}v!+WcdsT}|5cvF~oWtAIw- z#ZkRm`hwNC|BMt}OQ~(1xHjN6ljP*j9#Mc9Nkn>)>~%`E3aHyae1mCQYHO58J7?C&2ud_WD@2 zZL9QF_pJZ1mUJMLGKh0U3^B>JrbpJSvrYbRkMm1m`~r7K%trL6%u_FHdzeEVbC?Zl3-CXE0|d4OUg60uff&CZl&&=gD( zqh~ZXSw{)Hg8wm^gghrHbKbbS+N$fy^aK+z?eH3$ImY_B7W|D_8%$Q+z(BQLz*WMs z1FAbWQL2pYJB#rNc)4;+zd;01_717xb+Ws&UYb_yd+Wg+?=Q{b?+meeNz3#Ax&fF6 zeYkzbdv?W-O9+hJ!$;+?g5EL#Ujw@!_dwi9Zo8=XMpZX?w-8x5Y{syQv{ZxRG+vj| zp=M9i%O(>0B5QCJhzY>L(aQxuLkYG(n}!2cRO4tQEr{dmTPK>ve4mNgQ9r4olN2O% zYJT&$6$@%NGcn3#vPIhzKCc&ka1FX6uFMowdvoOSe{$F$ z(-8Ui5S7`Ij>Za}w3BL(mG!a@+euA~`o<)_9pv_F+?YYO%UbB5n-`7SVl)fj+ z@p{Jkhoh{Q>zQc-!JlkxJF>(;Rqv#s%$=AHqDmYWI@gsVSGZZZXC+jm-ky**Aq|MN zNf#W?Gr^lnQgs@69UO61{MHQKw23a`m@*k1`;29={Cs~e2>jGPQd614Gcjbl>#`Y`=`9)`RM9Q9%#Yme_tBEQ z7yQ6 zKa%~JD~;_}bEbOo8CphjM@6~gi5--H!>sCqRIlrbG;!>ax~C%~vB64Y60%%OdaFo~ z6c}FG_>EKhweJyXRs-fh^w29E<-~5!70S*nL9+<%znaUl zzqL~_KKJutiI(w&HS9T9$}?o!spUqD)x@m5#Tw0{7nP=h9vaZafBvU~{Ih>e0aK~r zSM1fBPy^HOu_Rlp(XzjdWXnQ^Hc##un4}ZiYH=A@xIq?r!2|=6G-f6#+|qYVDdS#@ zWaz#YB*;Z_?fu&t91FOhu-$&AKtZ0iVjRo4J`3E^d9B_?=0E@2Yrx<$kjk!{J~wus z2V}HsdW|A*K8H2ye+af>SNpBWED)Qf1KiWLg=6MrLtI92d=0C*1{#aeow*7=L##F< zbVWkzq&l?x53H;&LzZ&;V`Oj12s}7N#k$9906C_R3Z8yq?QgwB@W{ihRUa-`xDWz4 zn7*dRU+v!{bruWFtfPbbGEROlb!|KJL2`n)2_z=I0?$pzLKEyfG)K&v)^V5BL_GTa z;o^fz@L%mO)F4p?S|b6S1BQMY@mqq?{mgqD?_X2+cyLV-aFSK$@2|^Af0sM|5cDBU zA8sX(q-t=s;oZM}cfse$*}u7s#d{zEQ>V&Eb&!IgehDxjVEd8$t4K0C7*W`F z#xqp$))9$F*DKT_pq`7l=FiXR@+9cEkbMT5UlS{rq83@QH(u>8+{jtN0fD%=j!_Bx z>PP4R4}`mQJVthCvry4uAiCQOEB)#`EHy=aciSP=#qMmxibTqi8~zb_T;k55p7|2c zD1k5pl^eEZFU=HdKI6W)!G}W}A#zC=@H^L1;^GO22l}9v^qr|a2Q*|P*#cZJwdMct zsq>|R66jam;86Em3D`~|g;rULwA}2lA;=DG5>lxC{7=OVj2iKbb1LPHfn=;{zShK0 zy4izSTqdi=wc|3m;Z>-Y2&tUv5jgKsqxe%oh+ysyB!N5E6_~wV5&~{s>~2_&n<1Sq zXvewsVzLZf#g1$76iIm~+T>FovBV!l4`f_vkoFsj%Ni=Z|>*(zM*|D7VMVUxqQ-9pI(Pp79zx55Q~%NKYML zr|PMy#r}jWe_jWt8N2tZqQ0lG1xQk-?9Hm-D~T?#&Jdw|R*?F{I58ch(n#dhnWR4b z46N3vi@R??uSY?3$~`1O{(3Jf>KU=0>{M~+pj;nO5(Ng+Mh*u*t>ntyI8Tfkn3KD@ zZI&$*!1h4Q;V29Uk>3~9SfB$=%Kderzz535l z`06y!F#YCY?gc{CVIP!YU51n|q@ZKjjgMR+zAd5=an68F&2sx4Xfk7ux7LZ=*?@$( zXkruq7a%F^_Ll~%R~u|kaS1cbi1t2ELzKC6j(wb(6#bR|W)2H8JH9sCj=SIou+8Gy zn(?%;^bK+0tL=H;T5k-ZD(V4b3S0>1rj(Ot!Lba%j*N)`qSgn0*ebwzp;&3iH|r1} zT$*V4o)!jh<6Jf1{^u-oor$Qy#=3Cd8 ztg6AAS|I+GIN@gOL7wuJN(XuL^Xq>E;UOA(uBJu!euzWnxiD=Y6fFY|chYcG(Z!Db zFld}{w4nYed?f%fv12liBLy5bSvPc(K<5lw!yWe--8+5o+;IN+!9v^Sqi^WS_wjR# zN8gv)VibMQi`N?&l`wZ((ph2xRDxpa0g>m|SW}nvfTjYzR-Kg3I+qekc3cN(12DwS zqfg6_WH;1Ch>+wt0}{cX#5T@dQPxDnqy-lUd(t?hUM_1SmiWO@>!G65w^2M5pSHhC z+p3AO{)O;kT|D&9N~%Cs)vy*JND631vtKT#s$qc{`z6fDm)GFw?9?PAqFJ*a2=F9O63dX(fM%E z2!tWXliLAx`_UJC&;rHX3$QT5vq0)dA)x2J*N3sT+3APaciYQ*fm6sw};clPBU=DVXFnm2phpPOLW zuefCx29Eoj`mae3^SGPbkotGlU~EoayJX6%@%{_EgnZ*@&%NUIAJv_OJQKAA%&o#k zPjnntslT~2PZ>80CqO?_F zNfeLptr=_|@bfG%(0(tW$+-eC-UKx!@3M?&0;p;kr?HW{mC!7~cVY>Co=!m)AEDct zg`htuiU0P|zM$TA4qyvkBCx+B*^y9PxtgWO?fN>U$Xf6*CEX$P^O`*LU(u5q6`o%n zZsrm2HzzmF@qy^_J;`HtiO{9rBiZW{V16z&N?I^gJbR62y%0gc=K#tT2yJ(F;g^Ks zfbf6zt{F4zg#$e6^WX9dYg}*{@Yo%>W?V886vK^KJqrtk=42bD+M-Sqc@L~BulmxA zrS)QdA&{hQShtX`yL=bk*iM0F?Kj}n*$f94VYIqJz=f-pOk>o7UoU)B2i5Nnw-o@< z1N55ny{$>ghLB6p0*!bEe8TeD--WkwYMUz1L}fg{zK=xQW+K}n_1Ps7v~>Uk987^c z1Hj!l?o^6`F5jM8cr9>baS~+0A*^_rA|VuWNX=(0+LeN266x`!iKUW~QzQ)k-yt}l zhS&*i$|SM2W~1?WfvVy(p(#$ui~197%`gDff|c!%<;8%q7!!T}$Nnli@a&B<3J3#I zT%W;-ZDJ~Gg9g&>4n(`EZT}5J#Sf!Usx`OB@IGdvGZ(TnCUlj8F#FW>YA%o2<_EWO z{GB1$i?1oCqkwh*TUC|zF?t-+VPyt zlf<$88C>-ZE{&E>Us(9cTbM9xPRT5E;b`nbs8b62%t5t@^1?!e2?=MMgdARS=NSep z5MQFsPf>>tiIF~PY-z9EGb{I2Wd zm)2kt?&Bl_=t*sq;2Qq?MK|-3X9fSr{!AHi@@WDY3(ghl>blgU1rGan%>Zvt0qDI{ zv{qb2*j2>9UGSi9i&5KDb^%v)t6pnec)K;`do!DKrkP&r5*aOg^|Xe+_1HQe&enRm zvNlLhoGOYOd9&xnwof~{a~>@#+xh|FmsHwB4s)kn7~7d*?^r^wJp~Y27do)jrdINW znhy<>f19p8;tZ%z2k;Cp$U=epm)Y^Zg}(C4Bnc9x@4iHyU$7-tQUEmAWTP}o_iLtH zmMNhnI9=Q*mxlW=xlE2Nq&!O|v(o+HmB_WE9f))23MDl+_Wk_Oe(4BaYP`79_LjRq z+5wm4qXGS>pxVmEl;7hLNf_ruIh_Ijc`jh-? z$4&A6WWV0h(yd*R*IM{bcZ`ksHBlbY-d>w&Z8AEY^@rrtc=G9}A^R%*?tD-UF101< z#zH0)Vl}47Dy4;zG7r@981zx8oX4uYyP>R_^0=)8{T_zNM$8-?Jnv_ z_Dh}|_>}7*f0>8qY#7+esu2YXtmNpfF!38_H@S)__2G@zWNUCR4%x4Q42`9^Y#VFX z4->lJqzXUyJT|&r)4#Us;QMo|#;;OM{w$ur;yIR3}<|W*7#?l_0hfVBja8<0ve(km^JNW{P z&-a>mu2D+im7cy4{N2mY=|h|1HL`i~@(;HCmv1`zXujygiPRP|47)#)ecm6&|9oUg zJ&=xu%Rzzl!#?EBNI^wv(qEA63jXj-9>V_Wr4523U$a;zQ;T;as(}=mh3Fv*uV?`_ zUt%RcO-e2JpCrj^YXPQo+x z&=_x8>Bn|l49hf1V{yHB*V_>900BOuNj?Woa3*fPtV3o);pxl4iU;0a>iS#vH#4=} zq3si=?`g*q1G5ecenApQfQykDaC<)aK&WgPeJsl|{o3f-!buu3UAwzQJi6%BGV5kz16?f5*_Ecs}Fm2?ZlTFoH|M|dF$J;VDAI{Fqt7<8ChF+)i`Kxo=;J2 z(8%>`)yyy7$ye%muamxfmyfVUK_UWCm(|LuK|Z?RW|yL&2#l9nRM{<9=nJKj<`XWI z2?@5_ojvsJ)ho}7?W?Beo>~-nymNQ(O;mq*KwG7Lv>{QDaCU91%@b8sadWgf-GMg? z5BmQ3Gh_3kPaL9BRL@DicODX(vGosIvLnu>C?vCpv%Mo{KK`k(JExA-&MkU(G8vC1 zy}MkTtF9DQU7dbeBmHIGo9ZoFwv-n5vd(WL<1hAYDBoLa`(W~Nc)=|m#nY7uV7Dhu z_dIJrUxq;HXymSOHp6L6`^I4?P5k6ehfE$LUEk}GX0?UqUy^6U-`ys^P0qq05m{); zTc)xaTw;;0F27%P`PpnL4i-$ulE4MmKI5~K;7>oKV?uJx3{?`R{(evYhaF;;^!gg8HM5aPh+ZF_Uy3Z-MAYo%b&?6Qc8V12&7KlF&p zzWrz&tC1#XBLYE2GuXZDfFoaA579(lWg!}hs>_KLo@?;F5_;<7=t#CZv}e547W`R* zvuA5}eNlrG2ha~Qq%Y;6!#F;A*M67VBlwL}Zd%OYn8=-?H-1QYjE!&NhkeBCHxSS_RwqVA8^g}B6m6fRbDo9i);3L4LjM~ z$&?TQhk5pF(@9a4|EuIm1EKoD{*_8Q{bec3Xt9)#J(Qu6L`H-*M%IKBp^z&Pk|bqk zDm&TNY@@Oyq#9eckwRk|8U{0S?|skw|L=$Q>+6FLGjq;)*57l^bDs08o%g^&;OA;k z;On+Q(g4SXm3S?w?jCdFuFyA3zmPQwgUk|!cp$sLT0~14RP{{Kf!b3VzvPi49!!$3 zhVyK}6!MlEzzXcH+%gij*bN$Uj5-eGcW`HWS5;2tmDIRc_iPQPH&^V+k_~(D){*=0 zUncQJ!u5CD6*|Nrf5(2f3Ect2XBR)t1>+U{xfp(E+8wB)spbM(x~!8J^&eU(4C%(E zZ5og;s}QLqlN0f-S0dJqWvhU08z%lXuuVT&Q?usnq-9n5D|p+(Wi=HHw*>6W1seG0 zYEMcYXj<|r+D`@LZM5ZB++a;jr`vd5YvT!+61G)vTO^18pA9N{_MDgmp6Ej=82|DW zwqO$3c>73sDsPgQUaRMaaVoKsIs)Ad&)Wq-qNJPh7rf>?gXt8q@kp73{;ViSdoHw% zlghXPk;?t;1De-N-{-k|g2W}?+ovNBPUmT5t`|PnGES01;zBwJM_vN`JF?aQ0xti( z1AV%^9fFyic{8CrQm?M34bCGSAeTg5QQ8AlZA|#B3apvFRqqBkZNv|f_6TD@A?7Pr zr)-}5T%+daE|D*8rja^0Qb5GLjnKgJ4Fs$<7l|aH@5IgfQ(0*y-LsqIB=uUUui65z z12<7oAmU^RD6nKz))eDEq>ku3-2pwNCoV=?_@ts+PdI^xJbRG>`^DnOs?dBt@ay2x zl|C7o-C{Rmsr%(b{S%sy3MK*$YbjWtK>rRsNsEJA!zUYgM8Udev8xA7VjM-^y2Sm& zXvN^=gE97qDF&S(C|d%qi-h%L0DUzpN*eHOmaI>^Z+$`k1bOB>+pV2Ln|U@~%~eFO z@=BlX8vy=EG~)Dge^8;TZHx*YOZ&TJwpcP$rD2fh}U?}#;_Y+VSt2z6S59TE}bd5#&bqwxL{ zXS(kf_SvrzL^gSF)oh9dLPzVr*-3PAQGp}-(O+XX7ZWQ}(RbPt+K-bY2O7ra7QylH z9F}Qje#YpZe{rS_7N#walEY~veuyt%#APP;;S}~ppt2ABK2*w`HPb91XsEX0`X*o( zVH9c_ihlu$4vPm#O&psy0Z{*u!jq54uq@c9c9AL~E0imK-v*YuCENtR0o12}gW$a# zc_$lHFYzfsVI&&3p(wQEg>dT*mu`cgU7r)#?tZb0nya-;O|vcnFQ?uAjW#E)IzJY=rjTW>~w;6;~4}UkF0$`dy+8+ z88Z)$JGIA&F(jt!6pb1OqR8Iv#eXRK?mh6lBhB#q`emF%`VI?9*DV|TRq5~m90xXE zkDIffX6e+d1%SpNJ8r=17=AQE=NG2VmmRF_-ur;}02w?`6x@}Jw|+hYcg#1Bjq|*{ z54@+JkMks}hcHR~dL1n^0k5StcajPm8ok$1_UNqJ`lOb~*)O39EA4 z_q=scRRVAnSAD@x)S;|chJl53689bK;1~^adM((3{E*9(j)-z$scOlX0bL2Lv|wrG z${|WRMa@paMaBOlBxO{es%|s~2IZj9>$AtN`1sQ&nA`JH;{ZBRK&>QOFcHp3y|hOh z+Csi*%mVP$#37hq=JtXkl-!B-T@#WR;0Bn3osd1$^WU0H0nzg=o8Hkugaa2M21j#=TWYI77MK zQI2vP3f}Bm^dxBELq-{hcKFG}jF(7|WTv&u8yNybImlR9?H9#n%`5vaweC z?cooiuDiQ>HbcQXKAR~2_>%O(nUI+1TyAPou4!`Y25TKdBokg%MDwzl3DjX|OwR6d zQw3*D^%IA``WHyy!z!Jmp8B=8r^)1s>`1FPtFTL{ZXb*-tRB6z@lb2LEyD}R#luOd z4Ki7S*|D@K3PwD4w%kb2rY!Dv64{yps0v6%-vv2dmV$$RuJ1wXiEQH~FO~>DlzFS# z>YdMZ%Tr0q^AX?G_H4^;X%o5Q072wMoPQtb>?6E%Z@h+9uX9?evzwGrTut&0Xqa>S zK1-Gcu7@!Sp4KU0n)h*Zg?*&*B!cO@uwvI)v$@zD5Rck$m0K2hUErumS>Y48u863L z_05W!{El-QAv^Q4T?=s5Aa8c|fXb&Oj{|w<o!Szw#dzUBjTePY_4VUkq_jdG)9;hmMp|Lvt%prKwk$5*bq|< z>9{#+n?YfPjFIgZK2C2*J>)iD#pMnLB9_C1&exm;-!KZ!nL3hjt=dll8OyM+J?1pdL#LJ8`dzxqV z$^Sew4d>a;hn&(RA9(+9AH*JJ&iFU{ z0AUmw7UN5RNCDv>SF+_NzBe0VUeAHU7Wm{iJCA3VyM1qyut9TlwxRNa+b?VlRP32a zqQomOknmHRE?vIZo^Vt9P!Ng#$|Xw43j01@dbu@6Bv zRn3Yk_xx!a+>RDpe)3{-qmr9CWiy+V&U4A}d3R{X-MlZ+VKl|p8ogaZ<~H?8z0zg} zZ=zeJ&OTQ*vg`iIU;mAO-4I9O28mB{;5EjSwt^BZ1~Sm%ezHphyFfy9dJ@r>A8?|% zB^oC3_L4eR3@5mSsbdWN!6Wb)W2}5dSEAM(aPv zs+|@lPX1Er{dAU5e^)R2+)?%JgPFgzYu;)3R_z=5l3XS+9CpdncV9<)!?TI8(e^vH z$d1}t=bt|?GRz!n%iMQ993P>h2jDQHvA1QBXl6(P=qRyZJ;^Wf|^$ox1QLGmqD}e0557PogWqQqzg2w^!KN z)k(?XqDQu%#*(>9VR%Ord;aOVOJN$*C0E_XmiC1o$@uztV)Dv6gEfIa8#Jl}bz>%f z49rOVrgv3(D@_i(>mNg|+!cv+H#{XQBbY0I>h0wSDWWa*T*3J~MZtAUz%bNQUKplb zSTrMV`_=+x#oS&s2GmZ6l5Z1!DxKd1SMW6T*yY#l&zDiQ&&o8k`t~u<@>@s!2GYri z9iARnD;274)xAqWV6bwm-+8R$CR5)ad^e zb`A^E%Kl!XRfI}e>`u+^EG;v9apHRS?w^Xm-J7!~iLbf0toZ#@0gIOu+Bk-NQLgz4@VtF9ltJMtm+8UOn(+~yHp$+%9j&ByuaJ@wxNRQ=SJ z21&Z9s(V=Cf!mvZIP7#vG;gojwhlH|UbmMRdhnFls=O!Uy9IX455>Qk1c??l1ymVp zaXfcu@+4PW;dy)ac4`mGM8}Doeza!?_8*i4h@oe+z8946{IM8-mO88)tgcz@IQ6#a zaKg6F@nIW2#_v0+e|xjDvh%lF%_ln7wMV!IU6gZ|T(=i5qRMxE2fV5~yC+wpFP~OA=d7OYQBdFdYNl_nYK`vR5YdafGUDyo-)@n#Q#Sv@Qx4;F zP+ki8*a*iZnzYu@k%T|Pl4a)X!k`lT1SA*ZsKloW*~>o!DZv@k6d$|<-xHuw zag2nim^Hs?P+6^xt;>WbC}e3G4r1$s43I2oL^3~(YRKr` zk93zGLdsXGwOvqy2;?A*Xgg{6l`oh@!~a<#o|`R(CJD3r6BO*i2#0zf8s2q=#V^Tr zSR@dzVRrQvwnZnIGe^b!!a>9A{w|yVdp|QL5wFHHoTZEVmEeUjs1%5IHBbL#BHVpf z2wMV$v!nPZSVD^t-ik(m)&WMdF#(uAtBuO8)<&jmFE!6-j18lOo6`RS5QMw^ag9?8l9*Ed3iSKTlR+z2%X{b4k`c&2Z*0`&&CW;4bz&@ zniaTd8kBz@MqiSDz1*=*iO2Wc<1jrgS*^+FP$Y8632jCfK#zfD^diTi1WX}%cLrKG z(Ztt;=~{~iU=WSef*;|ey$7V)jEOSA3(Mdos)z|oN$gYOa^ofwo&)^dA2|}-wWy=7 zagZ-pG3crrRUbH1iztR{r=j`-#lLlakT=r zt|{mxPKvW3cTP!WHNKRrz*!;%#Ln_>uVs-*gO;6``Zlh10BuolGip`}L{Z8eITeXC z%s@v@R^zT;{aU-ZG&E&^WXs{@N`Y>{a#^Iy6zC$qvS52SKvgOJQXG}V8X!F;<$3@UFvRt z-Ac)-Q{*8|B=XZ9*5S2-&$8grZ6lTCw~c0GPP=Si(MSV0bd(&x9TAD}*uk}Hf^2y` z7H+|6Pk+yG zjbjfv`qKy6cRjQ+xIBKG1LkHp+r6@cJ)@D4^%k9%wUqrc6S29&XtWTU(gj5A3+#rZ%JsVv zS2`g4CW<=1w)5rqUiE{Gp!FhLm9ZNB7+`5i$RqHd(nZyu1@+PPuoeUR2#yQ6nw?_O z@;S|l@w{V|ALhY=;b}l`_a6+9u5b}yY7`c^ut@jO$DG9^mNVkdMZzaKF~#9=(uM(| zd?_B+Ni+gP3xF2}6#NS6J<0zRd1-L0I8e^}!E4>C#$s_gXIRAjt(gBjKn6U-?BDi; zO9ud0uJiPB2l1L>#R&!~Zk>dFPnXlOH}0ML>(G(!u-~9+r8ozUXaK^a?qg03k8+hi zPD)34huGwzdaBNlnL~f_w3~c<&w+v#4(?kQo`06#f$Ps^|0(@nf9AiKM(1g2fRz#U zp^as|lR2I*c7Mhx6cgrZGqoG9c4AKR$jl@@d#QVzWCMbQd^0-ygWc8&(5M5C;4QSC z&8fwvRH-K;Z&Ki30)!}X>n&| zrnbM{yujVPiNJj@=8k^>(t``8C0sDg0M^vFf>qRm+b%>gTW_E85v_M5aj3jy30HoN zj>7?%=f?p+_Y*F~w=vPJ&(LK8W@`y&|JdfQBYNf3orM_7tvAN0A{25%EA2j*QP>y_r{gYVB`C(H>3^V0+)D6YlGO);o4$fQ)+UH4`2`ljT)EVAIs!=&wr?{A> z<&)=QkMavEalH+A&Nztx;sx0tOcCA5X6!}CGML~H(?7wTs^j%yjVu?mJJB-Xn2*)T zea8y+-YX<>onasV1L^Bga^(Oui9z)M@#t15ISnzwl-&Ch)>0B-Mjx`Doy;$2aIT9}sWL47kc5=ib`56&xVEXlDyFt~1I&!6s3pr!OYYqExT&v62BT~4k zwK`qsG3@2<;Qwvu(eKt*C1m*s>f#0(w)-ADS~^tc$i7K;7euY!9SoH_ zH2nN%Zn-k@F>iaGt}>=`SPn?T+nr8qK_MoHI6yFh;Qd1<8l&SIeYN&Jfhq2`o%H6z z>m^$YF$!s`W{z`sO5Ay6R3rk~5Q5OSQ2o9EHvEp2jekIWaaUMmcq+Y<;5YqQjb5V| zkRSWJ>b2ad%Cq5PpIdv@tTnO}|6yQxiLjLk=HteVpWa?{oY;SxmW2R}KVlIJN|-m9 zDmtFhSkhKIw4$aM_2xr#yM&@=BePyU`FodjMdm*1s_gy_o`uW$r9eyhAd>Kc+Nm>G zN7OoY9b7#hOKtbOn^1I)IOJ65_g4AQo7`L15#N-UkiI*N39nrdi^U1NW0u=y2}*$b zlOF-h8*;;AaVFOLAO~Z&fF?TRpCh&P-E&os1nYLGAM&{~TrroW(4QJ$G^4&fp(@jg z_&pwtNyPRyqfL)Npcn&jkT*C0^DOh;(e&KmnrN55u>;rz52d>d6{|P+6;?6V3O$DA z4|EN=zP)sDNQe4D-B|_8W68_O%WAJ&ai=y_<+&KYDKm7tVNhIk!SCmioxdr~%W_Nt(DrVu$^gFs{!OUr#^?cn|hQCb5bUuOV>gdSU^mB`U)6ca# z9Uppra(#%@m+fa4J@sv};M3>2*h$Zj=-ysB{=CH;2C*@7W={Gn{T3cQ&&-)$M)|QN z_{-ZBOzAhKoQau`T0=L)QL6QmjyH+SAI=pFkrEA<_?x^3tI0ovZHyql$seTWH+Shf zMSt3hQ7zLE30pM(3o6G>IroD~yUW7f!4Ahl=k`CVtArii)DSJ~eQ?CU-$$&cRUSx1 zFrrS_)OcS4tbM22+RFA>_prn|Ze)o_Vf@Nm!T@9HPH^&7Iwo39rb`9gHhbuWy?V5| zoj368C`9zy?HsXyVIrH_*69nJ+Bhot!m7jJv0IjpQ>DGDYueqDu4#7yj0#t`WP%)P ze&wvECYY=p&Ay?)X2?-baANn4u39|2zv%o4ef)m(B2$lOzpUr!1+E-oltjMlTCXn< zF06B?XD!?=UZ|H%+2Z4MKi1S&_|I?l-k_Zfp-G~T6Z`^E$eN{_IKu;nsQRe*8<=P4 z^e58x7K%>QOlg{S=HkbvfVj{-)C0eJAD`U1{GAh+RiRI^qh zCpicR3Sj(~KcQ9mN7)&(^o3$HMwQLxW2iUdBx#Quj(+ZPb8ED$~m^U7s#05$;QyXaPF< z0?oVabaYQTD!(JJ9*hmBWgPV+pTEriBWF%^!)Hq8KSKd}zVqts)hE%FlN^HGXedW3 z6BC-GdMmT9z|$o3AlrL^x)&{$89LfV!BXPHOJ!vS*XEuz3bwh2s9Nd1-)Wp;7ga?1 z^P3?vxH`~2e;3E9G8I_=T3@)-T5+_i`DVbyyPr&jlgpwuOwQWY#(wAOtxr3q>~)#HT3l?y}2BJ26O53 zON?>3{3bB_Wt6Hytcdf)H!+Y&tk4MqOD6t1DSLXFawSWU|`7b?5;}J!v zvk?l3_UE%rOBb(&uh&h#>>F})zxb|QPeRTg*#fz@RqFFzgEou_y$aFh9Wxysq5Lwv zf9DfD#G3X@v98&6p7}m)JiuI+wqs)bqbTqOpI+Q{MQKZ>-$kigUfWF5m(~~w?>tqMx&o?q_qhcnpfb{|m4i?FaO(=2H5dJq zAG9T&VBmK~M&*V)Ib{6^jyt;L&{3rmpGUU3x~~aYA$y`ljQyW2i8UjA47Nfx(dNU7 zy;VR)&;!}c$%NXjaN)pU=9nJ1E&-Q%Smn+Omj9nWA@4VfMv))kd($Cq*Hnb5tWwi?(SwtK|ukLR7xeKyF*I4y9SUD7`lg2ey~| zYi)esCm7#47Wg-T`zr%45Qwzr{ud*Ki9}O&=9*r>JRv-v_{VFdFC-VQ)AiK=qMu70sUW-UfKl-=aW4!xF!uk8KSgv!%UED+R=RB3j=-@?6(py@ zHVPy&b;At0Tf#<>M24oQ!ksfJov(vz7z$YM$yo`*SbEZ9c%A=|nRCaETK=Y)xEb~` z&Em}f;nK!8SitO5`V`X2X>Zkf6sWOTAHBc;N2PoCO`TnYKo)$sg?MrK@j-F*_VWVZYAKY_Xv8>z#`pBv20g{Us$xuE=xJL6r2Sd(lIsk)X3(7KN#H z7$+sphf?fE%R3uG|6RpMspMMPMX=!OL;^m)NISz{NAbk0hlifz2?s;KmjN4@T__tGePjW4O#a2hcSpEI7;vl zpipfBzvt3s9ZUToZrEqSxNkube5g+@(gx^W7ggMqWcbbc`GE51>c0!O2iSSR{|VFC zZ8gha3ogTSk4MP6ySVjl`aE6SkR(v~x^&i~BV@#UMyab&^I5@Y(E=ezj@$G~T4 zcRU-5lPFA1D&jl!f{>l70vX|8E?{krdprE9))yr~%`0`)i@lA%h6Ro* zVE(jCztk};R!!2{n$wAbu>rV#lnRT`V7rHF-No`PIGhik$)3h#F~=llbZ1}Y_4>_j zQW?UzLoACaJDdeS=`nEPU&58>%yzTBn~s6bby)l}O{|X)S5i#B>OU1nL4@~YT4ha{ zx$!6NAAO+ML^2oKi%!UrE?_hxe`L^u0w?3s9<^WsN{-0$s$aDp5BE8GC##r92C18m>L z6TAk+DL{68y-4_`w5}{Ua=Wu*GChe0tQ~Q0jTjKxmS!{C{!6q#IBSzt7tNl#1Jt)1 zeFx>9IDD9^wYR7B9UEBp9-NssUGp=@y^%#442cOn1y$fdJdu3l%?Eb=hwO9H4?j|k{_eL+`Qxgdxv;vGbSTFl-v;)ne={QGIyiF2AMc+}&)+n1 zs*!Gx!GbxMRn`tKDon}pr?|aRSU6rXJ(JVGk93%GkxUi3W>|Vd zIEf-0Bd~KaN-Oo=sqvaQ*MYC@UfN90m!g0SUS)kVrp{^0Tshv+8fRItPOpi-${ zR)i9v51O63dPttX@X(ceMF^Zv#G`D6DNpIJ;&91WF*sk2XFjrt>)A?(pqMmttz_|ymxHH^KlR)u97Fa0$1hPOh>d(kWd3LlHxUqc1U-SXTrwe&j*p5V-_O4dG% zV2P3kJS6@A#SgO^Qt~oujc2>x={C&}T20qG5{nMi0i(l+n09Rw<16l}1rCyPakSt&? zl3Ro?s~9vFbI1ZZv_GC~;!OSZ!@_38zt@Pmgz5Rz=0lJY#^J<%YQN+V0~Y$=);n3D z5#{n;3O=^=tx2#iZ1@wL>nnYxR`biJ_#TSDZja^q<3j6s@HXQ=jb-Zg3AP=rwN&Rp z;A3b0v}S0y9cd$AKG*kpIquT3nl;7yPSisBtm z0SDiOHDYC`CYk{qmECch{$*OEaQWUn2)#ver}YyA2KDvxdz?DICZojGvnG-S8~X?U z%~VLg$vEsaTSxh%QSu(ED=(V$ghStaA(UrUOZtgN7=Z^kQf$0TKGTMvXVE(k=YJuJ zKGk-(+kBD>#Od$;Lq&OQ_t?+3ntA5u6KM^w@x9qN>r1rPr7jKYfJpVKWBw9ty3n(0p7KK&tT%E-OlY8y8kob8$^wyoqhiA z+dzhw3!(&slu=TDEx=J~x2|iUWMNuwl%D|(^f1@3LUyYVc|$yShZ|CP5_shpkw|=x zcu*-|rL01bFNjj!1KpD#^kIl#diz&X&y5;zR1{!PiT>GiGlJN- zXv{1G%2zJXl=@j=bwsbkUMHmgXK{t_h0jsrC+b za(R~GU~7(E78olBG}PIKKE=DD`o4C-tY!;4&X%qwOLGmym-hsq@roN+@6tikQ)rmB zr;ey`qRFTZ=P*Wh*#yZOpl^00{6=F-6O4tzNNV}FkgaZVBr|e> z61US9#c5UQL-hgG37rtMm57WmF|i6C-FXncd_*D-h*k6M`g^L3GmPLb530B4Vh+{H zJ>6?57VJ$a{Ek(F#rC9beMKc%PgJDMi4p%9z5rnEteOY*oB1pZ)PF9H6nN#E z=Jh2~9_+lmBw7$_z0}IQApg)ZX6|YLIZ@-)ku|cVsW&9(v3AF+KMNN}+PbrCXnwg5 zqd{oh{sy`SWGp?jCm{T)zcE&NS3`d!Ufee?&N0Q3nqISvXZCGulojsg1# zNIn?w@3Bwea1pWx?y+7xJ`T_uoWQFJtUrKQL`v8WP$u)f+$^JpmF<>17Htf`y;uDR zIM3u%+5NLKOMY#~6+?VCWr0+x9 zy3zbQoRz}4s;i?Gb;i`dhlpC|uk3zxJl|5M<7ebCjwcEUoXb>C2%fL8-U|jM3j@=K ziuw9LB8O8B(Wy}Kn*q24_dN!BLSwB6zo`l1nw{2<_nw~2L4?>gYBcm7l2*|JXyjxr1LE~mijqr5E zxOX8yzHA9(?%E>1)QwD%pN0}Q^{$cAggj5IdtGmnP3_3&`6L{=YU8$Bi3&*-*SMBG z4XrCOVJc;pD`EfuSCV;ksXl@+p&>&3W35-!WYO$(4mqDYilslH*Ji>bA#tv6%pZS8 zHD@u96+7=k5)UZP(Lj7JB{_E22KQ}~Rd3UI_SHY110O@7kfU zg$)jokDd*Y0E3JK;lEz|S`9zl4;z8tN}}QE&Chfk+FSr^bO`3=)`&JDTX~4Pw1yZo z_X^mrd}WR={9ZC%>#^Wnk94{)#Gva0a^O6~ z)L=c3m;e-#5r9wEQIHsUS<>f^-RZh&*tpvezWn=dan_`?{d4ipogL=Y($r?(CwZvI zY|7`kQM0FA7Z=4(Ek@b!HGxQ?A;NI8R9A!X4Y#QJ5VH{lAKg;C{C7L{%ToP`jFjiy zu6DuSK>yDog~%=>%DgZASH-F~26o;Xz^Udv^KY)Q$sK4Vl`U&PI=x23wcdMRPdy`O zIr`5g0cfZelCZX-yD{xSM3a3C)OOL2nLv3P0Y6WoSJ}=sK~jZAitX1iNg}+{>n9UQ zY&7lE`)jXB{iJUNY?xf^?bYPK&lmtp`B2CnxIzNs@7#ZJ@Zfq!^D_Df=M!fAnUYw( zye7;nymWiDP2d;JN+4R{$P03oWO8Y|I*uBdWm6HTEeM4f1NQ(B!qnj8;R ztn*BJaDo>lQ!Lb(@N>#&FSvm+Di#QNMf!rRXQrT_AUASLn|NpRB5NaeWoh^ASh9lB z?vBrf=PRcSuF;Q3s9*5Gtjkgbktn?a`0nxU`fK#! zD7d|~V_{_RQ{a)Ao>aKR^R`tPIS^}ifw=R@Z;I!DsKoc8DxEdz$tdLJH;t`QuD zgx~OJl9fY=zW5Vag0Isg3wiRSu;`rgKJhx4(~>2qRvhM`up_{vfKCU0d}IPurd5cF zp80X?o9(0O2ooaw=AeHy-kWP~PnT29b#~-dr@ACZlx06ggf#De1Zr)Cdxcug?21^? z`iotO*Y2;?m5rQ`UX_J(w9}AyiUTQqstXnzX-DfH`LN?rB&rL>9o9x5Hi=DwsX=q+ zR!djdTlaom^(a*4Ya{X6+~W?H*Et5F!&*n#ej5@1K7b@nLqJN%@d9N~a`QASw8<)u z$A@tinj4*0>HuX+H+urhtM@%C6l#Z__E*A2i}wRhNpIg!3zK%v$pyHX5DU-7PNJrH zr%TGv!8a?6Z63?j=bbKq=(3ccyhrBzWppd2LLfUI=KU8+Fy`-uMJ4Tt+yn?E?f(s zHo^eUtXS#jJ%o)5NkklsL>pPmLXV>jBQM6#$u=q{Eypx9|E>4O_)k18;^gmu$tLGF z!$C`=B=2yv3_f+s9>@21+lVqUemETphx5Q$R9KkjjGJkduXJ=<0rSZ2J73W{a8Y>&21v zO4FzQg0arcldan|+~X}hUdBuON3hw~6`{%LOqS*ilT~bcA?SdR+f_AlaF)+lD+V91 zUw}1}U$AFd@f7QH%N6=VtWkO0QeP+TO3^xVA-=l`9rwo^s!t{CY~kN+(OZQ)nPkpt z3VE}SVOxN72*cGeyyrz$Y((RHidcGOPq3jwbUsQeP=o-pJa{k+Ffg0EraW<+z_)r834uDD zer9D3C@zcqMNP6KbGAxB|K0-&r0XRuZ~8U&Dked8SYBR2^C69?$B5HT)cy-_1gjB9 z{;!nu>6U_O_dGGz9OMoAas-at4YnDO>lomwwtN0dL}5&kce*}6ZYA#;SdL84vf|6UplRB^Ma^ekp|Ve!XNxb#Zu@>HWMoD$ssmheUG?ZR-{CLjI|0v;N}}Ww537PYNHy z7^k?#dybQ9iG}`PJyjlLDcUyTxX9^kgBWs(M=Eilnv zaH9kEr`B$ELqvzC3Z&d8D>Qn47P?AA3AWk!U12YbeL||TMU{zlCoUt+mwcRoZy88cK?x?A0PkrR#;w+ zLk=KCm@lNMG3VEy3TXq9;}P_N054)J#zYZC#LmNfIW<|;A4z}6RGpde5qsx zN-?~S82d)&)mW?b_P$jLsT>#xdAaF@^mD{)1qBn zvjVo78>L-v$%Jiq*QOeb;zlKgLq+4DC`f8!T1F4;(>N$+1JA?L`hj4XFyh=@lzZdO zH&tdv-=w2X$dDi|slC$@YX>dIJs4Sqxs)oJK(GoL<}2zydJ8~RiP!C_1fCE{P9@_a z4y0&q^f`gi$Qski?ga*6w?G*xGESW%%)_C+f>>I7nJ2eZ;HX3(fsgurZy^MY-BoXa z;_nUmWuWuqWS*bA``=W>NM`c_JkOjTCPnLX*M&G}LI;w!`q^qV!)x*!e{mnkcU?$t zW6U@F^;g4Byrc;{Eeosdc(huo0FTm;eiD0CKV=Pa8vJ~@6GgheCUQKc%XD5iOz){q zkeA3J%gV3*y!@fF;B1$C(z)$>aSl-PBq~^aBM%EL6P7_YUuy|a2L9WbPNIh<$#Ps_ zNKgyn@ozJPmr;?+QNm(?5&Gd3EeMp4^t?d-R!9XJo7N_&E;u~4qH#8>0_Ad5M zWJu??+gXu>4%YO6rR}rXbA?QG2N21&sR^rElpW&1SE)GyvPnSV{y+17& z*pNRXkNo?1ch>0lFwumi=vR@I&HYwB-#Urd%EbQlgKOOpjFF)j-;F$T>I~7h)Q&;& zw%_^vkC}zsOb@&X<^Cv9g1RW~(V-Hy)$V)!etx_0$3fSHTM{&DZW(3HpYZz~T}j7i zUVd&^b_nkBt0#ZEZ>gEgIcf;WdYB_8V)5kG_#u?aH~mszZ!zOBHO7P z_Gk_YTA+}ieCs#XnP-Fu5$`Uv+rf4IZ9nb`MJwKayw+X~0p`GP?nL!V}1-+owEAs+ws6+b|CJpHfC!jAgmP!V4XX{pAXgARD;1t=d~ ziUu47Mo-MvFFAu(heKwMZs%ALUdS|atv>7JkW_4JLTW&%UlQ{(B`qkf3ukUCI%_+= zZ%Pu2zWfwqe@%){)%*Er%;7Ly-z(6P^QP37>?$e1yTlnJ@ZYi2t;WIY>eA$p3b z?%jVDDwy%*{s2^PUfg{%u1Eht2?bePmD_&DgGm%EI;8hQ-j!UD{h=}cu?%PogVhAh zWNid6^*ecTd_Vce-1y{Mf%JAaA~4wBr?C@4rmKR#@Y$Yi394l>B8FLf@ra0yWpuiL z7xy^9eMO8i>b}F579Zo>r?A$-!h;bm{~XXCNCFd`9-w>7bp8{G6PlDLk@2u`_X9$W zxFHumsp@Y%1VWKd!d<%x}27~BI|Ac$e0 zfABdTqup-u)B@sT&#KK52OM5_`k~I!uiH+@#fQ?Yi?yfBi|WAl)qwANhC|oto}F!< zl^@i0+(m}6Y2mKAE=AjleS2MGetUR2Awukp`^KRBH{H^NqEA)z5!+Rg@Yf_8sXd-e!p!k+l%+Zwv_WEwsL2oig>66 z)W^rbo546NT~Yz4p`6DWv7L}>(|BMKVM`qmR5n{=0%D~;U)o9z0EzAy7BNm(AY=D@GdeC5dD7-;)aNu~z!V8W^M5pKsuTl6g;tKiew4y_Qxjt>om_pfgI zXj(vy2gPewo}hkxssMw#U!3qU(zp(|mZ*SlPYJm}|2z4a&uYm8Qw&3$>`hiP>6beN ze{P@cn-AYScVRj(RE}i?#E9=#DqkRh(f>ZrdkW|K-B4lhDaQSRii{M&6Q%Dp#u$l~ zg=OSPKC@ah3&m0#!?RIsCpx&c>Xs)a$6>LUCf~-KpDN)V?1Y%@0w>_HQJpt*NBp|T zGf5Cq-j3SubjY)|P`x%gif06xpwHM7DLb?5 zdTRQ8%=1L%{ zJ6JK*$0@Uyv7Z2?kv||Olf|^ZceKL|ODRrus4Qw|i&u0?+s7R(!J18*6LrBJw*0;y zTwE;8wH?8={v#2P3Lo?8EUqYjRzg|K-QYEJUaF0Fmq6u!#4(?+1i%{J*5c2p-Jv); zuJny!Imwno@0cGp<{1LKV)h(n@Qn|T*&Fv&zbUuue}y!85`gx%g%eELp0oZ{UtCn- zSTsgA|8<>1|3a_&?S_D{K{;@77%ym_flKGrVh-bnHY@Yr-=`*j@oYv%T?6(voTmcE z1f?dmts0{pfh;e8^jxi8Qj2r*vv;NnMB%}PvV^MbEG!P=;JEOQ;}?+v}CIjNmjR|k7}>jhFs~dop75k+mXD} z(b~R?Ia{wwzYrEQt+o4fGik=ZY>CQz%x{{3AkH6@!_^ZFzn*;#CEFp(hcq z97iR0Jp@O>{#o8+n00;f4)pH}69^A4UyHf=nE<6#s}64IWR-x(dFiI@?Bm~Qp>S|^z*$kv~dn6 z*0zb-CUpsoCdl&7r>tPcu#nQhRvghLJQU7%V+Uvy8on?qI;Ws27q-y-tvhNBw;q+X zw`)`+{os|PICANEyN7GyJ9!(xhKK$4e%Ix&|Nf$p<*y$fVuapOMp&^iK@RiQC0X#9 z^i!D{KgRM#W{nzQ06t<@<5}b8+3%Xe(1z8ku&56&DZ|n&tOJ-pLwGYwkrguVv6;AB z0eC_>^S9dbpLz_Agz^N+Zqn;d`I+#7^^Yz73jRdioE=W=?4!^AJ(+Wq*8w&kZ_iZY z%h9=mb0nv}Xa=Jph)%s}`=ZH=YFLZ5o*dQ6I5s`}0gyFDgV_)CGcWC8%HDQ09@78Q z9m;t?Q$hjg05g)HAOO!Y^HOiJkbR$7i=CVPIvd!1rOm?c@S~)G6+-LrGJ!SEhgj%u zTcO3;dlL9nte^GN@NW&o14nSMr7U!|Df#~f{Fing$(&81mY3S4JZ{F;muDOb>xh|T`&W%;|^qdSA-3I+gT=|*DOkuR+_dyAC#o@Qq zYZfD-Ia}M2#kMYJa2I_H?p6^AAGg)iJx=iPafX9Htd8NhA=q z4@oD4odL$lYQ31#5teu8Rl;?aa_Of$Rc+C6si6fnHjp`LR8vyTTkc^1 zSv6a-JS7wI6bIGi8ga%zc>$vuiZQ|L!YMfaJBxz%ATc`mkAF4A;kJ>y&v4(`FsP6o z$UVc*e^%W^<3V=S=wcLfUt{O|Qou$1hQnhZX-thI@;Yy|4l(d8U^w`#*ZY-h=Y>dv zat-XTlhBWveq}mU<8pz)P8H4x2ecade~GVOVS+GKaBbCB&P6L7PDE=V&Gr+O@GT~% ze0lqh&ze^{U|%j?Er7$GnX^C!t(N@wyvb$-ot{<0aHo$dc_9VT85~UF=^lWg?R2)c zx+=u>*MNxU^7#?yg%vw5{VhMX@?`S!tgNT)%$*ovn-|ygSv(tVB=%foYg z>{wUDMnyyojhIcxkLyt_h@T0LLczOaQ~f9+`59ILkj^WK5!`%#xpbLFW_LaVj623b zH`S~OvK*`{wV`wL1Xhsa1X&= ze?BvN6S&vRmyX-!i22y7{{tnvlf)%1-N(yj)j8D#@5Vk>-KYPAGYaIALFuyT(S{~4 zv*+YuK5^<@wCImtR}U)CJrRz;D+Dv?XD^;?e2ut*3CdmT7o{|!x(8LROsnpGK6mN= zrm?NEaI7<>;)1yw=j*fFZiY!ZM%U^(t3y9FF8Jr!c3xAznk8Qp|P8qLLpbfPj2>I{JWYI0RPcdsE5~fMz;MVq;(GlzH!ob;K9Vh zZlisOgeqGG{6lY3zPA5zXw->ws2?+jA(wYL$5bCqp}wuyhSpM}ZWkKvPPt_0{_A?^ z^wfNGx_We63zLrGSBNltei-LZbBOq;NI`9NJ00`R%|}dOBV8yU|Zh zkGg73vxjkPUhgL*SNb~{SufCTfK2fEkH=q2@-_*?T5|K6#J56N?uS5gKiJ!~<8+qm z+H6&^4PLcFK~C(zC@@D9@3zY7IQDoq$Pv?oeh2Yb@da0bS(`&^Gr1lFZ-(g#6!y`u z)s_l~Jh?hHbeYs z92oM`iRcQJ41*ntY`Jy_79hzFGa4=b7y()SKd$G&aSzEn=gvy!g|z&k;Mi0%ubG0Q zD0-h@|J_uKeN6_ieH`*l$)F_l>JM<|?NREL(4xb$s1hJwe`Y?jo2msuH3JnAo|)=m z&J~Q+9tbzE9LXi$)m`7)pNX!9P`0o71G1`ix7kP0T?%i^PbMhC`pYw#Pn6~Q7?i}E z$iYPd@G)0OIU<=H8_Voa+rTr^#lFWJ3c&hdU96!{BcM4iCkG5-#Rgs{D;V}pe||iarFY#CGRi&>wTI3omr6(3pn-(W5?eo6Tl$hKuEk{>YS$@Fn6IX z_KVJF6pMejM5Rq+U2*oT{eGbHABU0G%?FDF$>}%5HRaAL>?!ML%a>~!b8N=B3+2P- z%U?M6A^QljSk@&d^6)LDsb7fevnTK|wS}|z&9gTY9llHScsKhRv2>cCXX*EOxX_w2 zP>aL$0)PmMC#~|9Z9e^3IFu2xr{!cD+7kuP^yv}Xp=j`R?qcS&*FSG3zPUjGyBQ$M zW>fJzAJo$Tm<|Jb#r()X+s8dbLs1+6HX`zFL-;Vp!QQ z-P>-S$g*S7RebC~SdI5HpG8Ld84Ctj9}-kN*yLpCtShdsg~XhA6aE-&hL3ErYI6g+ z;20s<4-~wX0IC;P2s9j;&8fb)HtWph)#g-&-O23QjM1}(O-O^QET3{?Iy9CeS|-w? zTw;k$KgWOUFxUSL=8@-H=n3SLgAzN;kB8pn<7pKU10F+ruUZdd9^xJZKn;*HBc7fe z4V#9heUdO(p07Qjhe_pEE=_(o51gM72wy5RtvPW@jZ_CGEPF1SJxpIa89-aYoskIq z$v9vvNfX!oGNZvohEZM-$j)$1dvJbTVNZzY+N?4Kw*f3guaFMGvzfV#~nby=m2$#@Tprmz)Fr&Rj@|Nm1KS9zOgb zM@dhgi}?am$qPVwSx2q98qgtqX&nlPlfH(O#8`U&QAz6uRqWCp7rd|5m4FqdiY0?YGf zKWw^`#Z|9;#+4wF#||HxLW!(5aix+X++qv|atr39ztIrW?Je5l3)eJ$>PPP+n^1pY zP^C>6kuJ{&OAEKJh$-ppco3nF&WgeJ-Ve(!n}ujR{XzmDFP=NY3u77}i!T#(fwW6T z6l(N!ptuJwC7<1m0R#3sBGN_$QS*EIR<-$bZ`KWGkN;&lr!fJGlY#zvI24sa*k9J) zeR-Yh`mI5ZP!mYwa3-YowtmRbZs~LGDi{LnPw?E&tw?AjwopUy#Tke%;qRh-rRYHC zRpGF`G>BmP{rQQT;Ck2cj;AS^OE}OFlEHh?4*sJ50^iof*C4&{AZVPm#s%*iNO#5ecSnXp`I>KPYBTA+ znKCS=Zdhe%tnngC`oB4PZ4fbA*tSuc&jSy-q-PCg19EGN)fL{DwWJF|MVBvA%E%#Cr}Asf3hvndacAB&@VbUgO1oqy5phCV8n z2spX0?FlFPPB8&}Cr02PqzOw(38p&Zfx;=Kra#lDpcKvB36VW%V0hLz_8xF}tEFg$ zcdyTPsf33xE)oyi#F$-T}47KVUM=w3bO7*mrTm` z_wIT_$HJP0w>)+%rpC)`x4`ynVnWp8=Mtr8ptYC*!($6Y|3xdxHx)Z{R}sI#A`h^w z{h85Zl#b2)EqH`J=24!MfM2H*OQ2NdeiBp)rkh~4(DFM;FtK?euO19I|1U}EG6!A{ z8_%AvoE=}nV#eEDtnVlK7;TK4ie;)g7_-$X$^|4nd-s2H6XP_7?qs$qecHhWom&br zzbO>2@=~v76vA-EIw<$Ro@1-k8<0L8a~ZWb4k#Q85;8wX&W-4iiQ3vu>Z1w7N`F{d zH-t^TyY5?s^0A@t{?nkMFM2H9lGK}h6*P*;pZm9Q%GxRXnOnT)e#cLBrb|@4?$DeG zd$>*m!<8PG+92)r)dZ0vGKP3sXV>FV@<-vQYQQ2hcHgfiV+7Y{VF{SL9h7N zqtJ=)DxdcXW%|k4)hJr<2yU?HSBrk^AQs{9drY~hFA zWi6y%5OY)ldD)=m!BP3O~-*FM-6V#8KsO;v^*BFg$}sB>s3x|h8a92zX7%tT(yGdMc-mE!2-pZnNAqz1k>|V3WnaT zHN&&N&z)5{zDV}f?0v9NFie!41g=vUO!?EwCTvt6?vp3fLdZPbB00N^FtAYcFdEPd zlkC&EK9l-~>Z{;V&XE@nuk!-L`4SBEm0C@oKnkx!f%Im&8;&2*! zfHxc#i@|)ENoo#;OI2ddY&uT+)*ZJ3m9XaZ1?ZGBpe1Xqj zYKEfx-Bw}4ryl~#i5&Ke&zT4WJ@_N^@5dVEwE)ON9Wg|okT2(TP}~N+Fu_j(aQH$> z$P*q8GBXY~E?XM=RmuzJ>lphllR`Y{E;eFt>`nE~B%xhk&YilbI9LRVVy;fjb^LYF zO1)Qps^rq(*3G@X(sgl`1L6*RM5`!WDO$tyY4Ub1a2%YTBu$-vmD5 z>9nhmTvrDj)|A1{nDAZny$3!tFu}{vpH9Hcsqngfd;BCIY+y@?*p65b)7cmSL&-mHzA7UXDrZh~h1;yiY5T>N?V9*=Sy(58UVc~+aeiQuw%qXI<%=|ws7;1#HH z8aq#-(^z0Nk87b~mwByeRq&r@K)j>Ag>C-A2%cyjFSe*Wi(Vv}wLs!shzaCeUuC() zD_|CjZ#*Bu2xPyVlZZ()>E8rj+buyxq#RZ&BHM&j@4I<)0_Lk9z86ci($4~2#Zn;0 z`np60qbyh5;DSzR8IqZM-%T>-9xvLP(!QBk7j@Tr^)Macy1kz>;eHB?V#bmi(5`rZ zN3WuO=MLx2cHk=3Crfjta0a+E=K@oS!c~svL*23**WpBb$w5WzFRf$~uW+BvqM_=B z5(iKFaRqw$N1lQLji?>JYIO6>-j1vg@?8J`*19_#VC(K#_7@ToTqXK)}F1x56t;4dnHYoa8j3>Sm1 z>t~_Z;n1hRKy;h*92Ywe{cUq$robcV_BxtK>Ma?BNs-G0Wa0L4;-h^_WSR`~i-IQa zyX)CS4XZNw?6$*nJy0vGNp5#%dGVq`vFq4k7wkR*Ygt>V^LCfl2cQWeUjgUp99tSS zm>EFfe98t>t3(g1itKzz!y?Owl%pO9n~?2G06i(nfq?!`8`AM?ao@4chjBa00m0_F zJNgHJ$F zxI?)c(Rz#FzK*UAJb7AUD*19Du_S6|o1p3B~ zSj^l9LSIMGyAF?L>xi@pIw83Ag>Qw&+H6~26)u>MV=fU&uo<~g-Tg2wcK1LArD+i_ zZ}Feb|6Uj-0WB&MO07z^-?ROlADq)BTVouo+2u6eaezJmIQgftM&hH72CidZMIN@_ zgLgD0A0oMuL%FsYR?t)F-h*hhC6jP4G@X z#jZo?{44I!i=&YR`a?yJVlOJzL(t{G;w?j{NQv%M!cUxM1r6sG+vP|H9U`9q<1*Ks zb3N*3$73(qerKtw9vSu<^kk@v7=t8RWMVF#8E8L~pnQ+9K5{$8xb`@Ca4-mil9ezF z^ZvF`PshcPU;tiVqe&@L#8uxYBTSMVxR(~vGSQm?mvpqnnD4J1cc}JZEq&fs{pnLD zy;?}3kvX4S5nhm`|U(mpQoE6kT6FF!@f(|MozE%iMr5Z|0C z3ksw&i~nP*)qpv_t^Ydd;;3mj8upqLXH!+|q2adQO7sEZSTeefDsKSFwg5NN^l9i()7QL6EY_PIc zJ_|g~vc-b6jNkC27Mq z-u$iKXDqI2(l=hHwO7LM+MtF5Ojck{Aga^)XUOwY{u@L+>akCEYW&WTr0+V_E84yo zdL=AcYn|B;Y2iTI4_o)69g2DKZ#vWZO|KT`-Y9R3d|JFzBo0nTlm_M1_q=BP_=Gwd zQsYv{X&MFwc9FQ9dAUQt%pZKF1K#4 z8a2{1E(d1!#Z5}liEpCwhlM-3A15=Iw)(=Lu^xVN7(i_oz|m$4jLWn-LE1X}F))*h zVqS9MZvUQ}-hV5SXfz+1Gjk!Q^%z}dhxoMR`y-C4ue^;7Q>?RELlc&h7IJ$$YZ8rv zGFYx)qMH1HP7gT?j-jji$>y|*1A{DPyXh&80)C}D%kuI7kiQd z0bH%o78`&qu{koPc?ULVw={8OdF3cC@Evsh_aD(LBgS!qGU119`!+Jgg(*~LPXoK_ z5qfV{`eAw|f?=Revt6Tm;i7_Qq>2M18-H(cZFeN4%>gHi;b_+J2Ygpb7`t5Tv_Xnqg+{ z@pte2*82WrvF4ojys`JQpZ)Cp0ysu1rSao~%Lx~i9C*Vjg_vUA)9A!$NT(g0oq6pz z_3Q;(MLy_fiVmn0reX9m?=qHZd_L#C;`le?NnejK&N-)yM4uJh-!FNyZQfn4{8m`` z?Z)t5jC4te4Bd+RlUPl}7)=}(JBvXd)Z^%r1#$iQy>x5fB0ysXR^0h>DASGrAM;sF zN0|iF1%7!DTY9KSqr1o7Mk>Z5^AiLn=MHArbto>xMi1_}H$s9`67*I|U^Ioax<|R) z9x|NpXrQG!%Pwl(`VB9c6>>bYX4ffzhKrzHK^s9lbnqE;5Ah!}z`Dt1p#GWJB+Zpa z@k0s!L}~xhdv5Kq5}GU7`@-rco$vw15gdsQExCW1n7D%I%TnMR>y@6TKdX|IHEe0Y z--rmUCFdS7j~IXA!x2C&vsyoKpX*Tc&>DY1n>tGS?V~mSWVyW}iktq*5!e<*@ zKm_S}m3D!#)BI+My(v$wgspli$tOedZTS*K=sl*%bYj_0UXK^i5ZX6~dDKZj84}UH8NPQ$j@i_kf4+l?Rzt6U zHAjT1m~HC4Hg%51@_e(@Z+(CG^*~RBD%iIR3yF#VQOF5gb3SkO_a05yY% zdQ3>ZqH*Jm)6?)2OS&8BAO=p+xA$k5GA@qitl|kzRPidpF;|{z)XrD{m*;N`jKIRr zeQ0DSbcN}K#ql#L*Ac#mibl>HvRtgq8Bl)4(ABN^2~=}-a9Vsx74>vt55Xp^+msGF z6U7FHPSRByu3+kWcr5`F3{ zvb))kn$9~q!V_H}dxm8SDLWlyCH6keetehbWc+No^3@TFK7!X~!`+eA2D);6YAg_o zBi@Al5HYY>p*oZ55VNpxDO z_H@{-TrYD5wO%x7U=@Au*6#pIFb#Mz{;wX7VI8CDeRquxIu^@WXR>g;OO!^_%RX_L z!GWMYc6K`ZqOyQ+wcQdcnobOH0m&RE<3a7;=EHD*PBuIoB8wvXc0s}$7|!NAl+7TI zQI+2>&4h6ay2VjN9pac@_kIWM!xKH26bSt4!!cM!#Hwx!1-YE`SqwH`guGlaW}NNo zJ{P3FzM-*=f3fuZv&BN_Sf%W&5P`2$V%sqsk7S(abige6?$+cga!~#OKtQQ#qI$K^ zxg||#fmGTHt*0WHFiU~*p2sPZil{CAVF-4_1Q|2XfniLd7FZ2&-Pj5`E}rz~jJ%|_ zgg0j|)0d{ESTZ0V1;O69a0Th3ACg7=+Fbp6={xl#J+;uv>319(@JKN3ohx@hew$h^ zeHmqT4abCP15400g7P&dZ>=P5K(0+LcUvM9RZ$TkL_sZj|Pi}@t3$bS@!zE2Qwb|(M-E4-+Te*qW9rq$jyujnJQ_#asnRKK@!$3nZkfT{!oM#L-Xj zQ_%D8?{lY1?V9w_0Fdyrly0_^R*_c21w;Y_?oJBAYoM{5#WI#&xm>;o(F_0|&#M}T zP?-7+FmTJM;Sb+`1bL>hwk8J14uG`lx?0OaZTR|NeeI7)-4_Ym z%8eg=t92#4oVWOR_^X~>%~oDi+T^~GQ7b$QmMBkHG^tE7pYVJ>KrQUNrHq8rymzoscAUk&_r6hX$s4Eh z*w?tWb4CtK)pgWRe2pzcG#(y^J@H~a1=D!yS@wpl6oE=U-w#axUfKV*KN(2)#+g2U z95=#F7^F@BrZyS&JLsvU1b(<+6hmSa$fp1r%0*GGryWOCn)yp!AXAEx6XAk?jebzX8*xK{ju!%($b}0z!JpGkOX@g z?h==fG}2GozL6=w2#{g}GDobi(R)WiLD)H>DYM75idUL$1B9F}io&c86seVpl`Lrk zr0_|^g-(_{cRdeHN+bqf(_d4}-Ol9F@)7q*g!$>njXxZA-3^=v{BuC&o8mgfmV(R1 zOzUgH)jX+3I3|#Td({#wOBWRY#wG@O;AE;~qZq!D#LQ)q=qH2PCUQtZqER~DWhKGH zgQjm@xo;{5LhDej>!z;XFT&Sfszs&%f9UJl_v=eQl?TPm2+vacrWalwASfbOq?*IQ z-XuSN_{0r(fo1Uxx4rfJ8pUx$gNo>(GV51M5b-6?VZtZ2snrfzgmx`f$v)~EBD$-6 zS}+qJQzTfhEIH9`>3f}R8;hjCi^Hi#z2=%i{akg&Ce&O@gmREo0!~P2COlCrnL(ob ztK8y@Iw&Av8{dw5F9^i6&BEfBlYVW-##9!BcRC;K@hfmykBFQVrw#EwmvmT#MU}{v z;MK+azF5duhMguu4sbIF!AAl+UZ-*Sm(-Fc&V(m+^?`Hw(Yvxfq%Vg~Gt2de8UI0l-Dre)p<*XD5>LOKv^1SaWU zZPzE`Mffnt^F_P?(rApO={oOKJd{&KHHdfw%f97KU`a2Tdh(QLlFgTyGYJnEa*+}@ z2l4x3b0yG%QoFIx*jBM548F@n**%Q4K7F4v5QNAW+og>nQ`LIr>p&@pY67{OGs$Vn zFCVZ0yCwtl{X*oX##%#hwjE5^d-roAoqk{Jc|o!t)rSE;k9yH=th8Cb)7OHt-@$De z{}2TESJ21SJUF*M>X8OO8}$NBe&?+&z2n+bgRyu&kHS43g-v$1#L-t8+{A~}}( zYIM_5tBpNG)-j(Z$}gUXfpo|`N#~8ah<@>)aNfP&_R$q2coRndUQlE&!3|XT%wX6j z7tj6B57X8fw1!DP)XO$*wAkdii}b&F4Q+oVQK}d{z(0bUM|kI|6gKm_Ihrsld1?m2 zs*SN?=fNMjgnXy1)O-o5I(Y^_l-78$)gRCM_2)&Ol0{bPd%c_IL}2#|rCE`QzPvxe z;d>u>|MbkutSi_zcwh(EYh`N8pP6#_d~}H2gDuZTXro-7s$+OL_}cPNHa!KQld-(i zELpNq{fDo-fd;b05OWUgR)|bwGP0Gj0>?8>~QChx( z9HJ-Vh&vVktT=(Vw|~bbq;Y5o$i4w?ZHUaY@6S#&hRtnPW;u=|PREIb-uM4&rh<_{ z;??xe8M3FTv?8Ku=Us2Xe8O=k(Gy!WMD1Y$UP`R-oPHEm_2nGOfbtyelD+tFc8~aO z|5GINZ|@qrGpiPU=aANZ2j+@0f;tJTjl1f*d`iA}=rsNIS8b74WZ)7YsGs*Orrn4n zO#F4m<#xqDDCb$ocI>71F@w-{vAAu$%mN>)mtL_@hLo3cCx7X7P#_=jcwudYE|wue z8wmGuNt_P;yHXRd{w(0+BUmLkGxxCnAx_->wTO}hm?Gftu{pIuay$!SsZ6cdm!%8~ zJ{`K`K|N4~J6BRwUoa@g6WKkz7@B^fWgruw1*9oeA~3_pUFzRQ#)c{G2Je9dD6*(! zGqOhrTO*_))ZGl`hJ)U%l^5ci9%5B5v{_68SYD5<%nyWSBC|I zf(2Mma^$`XljQ@vsR^s+S91#wa=}WO#VUt&jISq^(h{D+ zOr{0=mR?{#foao4Hf6+F`M{p0vfudeCDD^MdZAgnL$<5xKEm29S%Bf$@yyy6552u1 zshZsEbO`!3wH>Y}zUK7>4|}CrYu^+5`ZLN$Qkm1Kg*ii9w3?n>eN>{*_+7FB>iWFHTk0kj3!z$Q%FTTHv7E5k1$n_R|!Z z;+)GZKWbh|!G5!|{*l)ING%Ey-T6H2*Mp_qFg)!sYhU zATj58pmId?mM%aa7zKT`!ZcXp+%M3{LUu|%QLPKSiM6>A59ld-$-x2q82p8g2p~Px z4io7AVm&E*g)jy#N}2fsSj z4FysV3_+dnPWi&J7V^F32~&G<9zvf+xa+mGGNl1jr5y95GFIb~LLA2$roLWMSyIye zfRA+=U*@b>w_~7_s(IX>D_;hrB6{8`5C%|^M86e!LerMA*SisG>|4kDO7CgP7 z`)DQ~r>`6f7Oc19y^a6AiVJ)Vq;BoaD}GJ;+b&*z2O6ldB+4Ns{yfgtCM(=(&f+?U{h z2mdkg`SnJ7HgG;O)J%UcIQF!l^8(G%~b-56eK@Ma}w&m z$f%lwxhZ5MG z!F=>@V7lQneV2X2cbYph@6__bz?3_f$pd!IJT^C5=sU__Y6SI6V0=lmUsEbn+;xkK zF+zD=eolk@6x*8ic#T0+*NM%k374JwaNJq)u32sgeW4dlRjmzzzlJFcO56v=e^#d9 z-$QZ%WW_Z6=&Z}w|ESp`dVmb3*KY7E;O6wJ;Zj6EzQEMG znN)nw7y!xG+GO*A}rEwfZzCfM>$YiHu#qh2Zo)>l_R9;moW$0 z)%-I*^Hq}p@(8hh5Of6FW(=EnO$UAirJG(q+`B)~fc$n6#mQ<2B_UkDA2wIrhowF^ zxJqFY)*yRTS>HsImuiQh09O4V@hZd0L#z$L;K9M&IB1zLk-kQ-2UdT-7yb!~kP@q- zH`n9$eH!eQi0b`V#+9k=sIoyN8dKm!K$wNmKiRs+fnecCS`Dfekk)nLO=SLliJGVl zk9W-uG$%>c3J1%ejEx)fY}aii-KJ6rgbmsZIZ<|PdpmDPm;Syn2%8a-PsI)l>Q3dR zud1t`UY=!7`NIZ;rnVC*GzLD}N241(x13#GTP&fa8e1k8?>)ADD%1T$@M$2{)6d0r z_}Ah`v9U~qLsiXKM0t#&{0@`;eKYnrTBMmdK?6HEe`C+q*kZ>%-~`Gr2I^+okR=AvVKw|ps`Zfa9PVO2ZgUxdRJAMBvx38n8vp6bR$Ai$q$MD9Kz&Vln zO=^1<_B_jV$2jkEN3-H~^HCRuIH%cx``K5wGz|OQ4=ffphZR$=jlX9j#cGmewfj(l z@$E-BCbvsxWMd8lb8{F?`$kuzuR0~ZXRk|2+WK9H>3&MD- zm`Cq&7hh?^vUi@u!c3!>?-DvN5T9Eix9=fAO@pu!qokq#7@s~?$3@gq=%qJPMr4;o z!`p~_-`U^+g!W%Q!ABq1juccyqFmK_3NKh++$YDAblQYwpm+;;U+wKwB>P#J)zBz1 zRDRSxS^aFYe|3#hP8WCLd{(_nxod}*swA@Y%(~{lkuqwH8=LXG_HkIS$iM@}z$S_e z64>^t1`@zXF<0*i(hnW~;Q1^j;Vpe&28+}j@wb-4C1X(9`}o;sc98~dX3#qKb_}T@ zPiqgy5gXH#ag3Tea~LwvXE^Ab+llgb^;7Z0wH10M+>ICD;N5`^&s8K3wv)?dLL4^R z#j##}n}YFX_zwIpx+D{Y8^CWWSR#FcqE@6WoPeKQeWMzZrqwnc)B2_0E00c#P00J3 zXk@Fy4ET-z(0_oAwd?EDgx*$?f?X~h9hV)$>(0IzJ`&Fky z24mOu&xfCN)oGt39@iPuMf8n_S=8w^1URzR|CvX1_dx};isGUrzp;j*WoOY)rUOl_kXKbJbZ?FoS{t` z%vG;(|oXfolJIQW~;p*xUQH3uBp8H~m zfuuOPbjFgZx^EER=eK~4uoR=V;TFQ7H$kEB!&Q=U$wNMoFY^p6-_dlzQ`JM8%pQwE znM!E&qKBE?h%jfv zXWn?BApA#IjauN>V}3`en`;Cd>P# zofvAUHmca2F4$rCUv$5dWV`*Dvlq0EL84Fk7Ug}ethd$ zf5Job9wo$)ftrkK-=L4N)QN%BMxg8o-8siHUY94J?{*xeq$QAbYd_x*2WY#c8jVR- zwrmAm;)|SDk;+6fFrV8DorTc6Ye2>Md}1av#6CHSp!P94Tn>*nlgs4e|0Osjq@Qm$ z+ABE4e24S_H1o9u{=XKW#o_qRN(~IXF_^ySX7@$AJ5E38HGd>3VaTJh`r~C>Y~61X zEcdz=h~7{lL5O9hIP0y)Q@$<8c*j@-p6g^eoJZX!=Zw_^oWH=m2zqXK0&Afu42pVdP@ z@>eHD@nu-xe1*RE$N6?g8=)D)+RGKPvxmSE(TZ|sEo6o1R>Q}bde);G!zo{Ik?StK zxYl1I`v`bCyr3HF_&t8rU?a-^T<`DZ#WMEE*uiZ=2KDL4@os$5bUF=Grr@CLGvjl;vpCOwI@!e4rih;7XPQ_1t%W@O*bD*uM^w?5BafM`%36K( z*5Z`!&A#4=o=OIA8_|hrg%ygI?<})PJetuhjqVnhZ?KmjLvF|BuGEDu#4KoPW4w_DoC0u)`U}Bh^KM=-*b`YC*49bWl~vG+n9Tt#5+k?v=|$vcl|WC z%26x>Q*iokxv+D`UY^F+*I}bq4PRS+Q@>YQf(M*&`$9ct(Y)jobYc zd(5hPoikt)HQO25d>JeL56=Qq_&?l}5m+=%72FOB65km+?RG@?;Lw(tnb6&@l=F7G zfM4+V&_94Uu83Yy`W13YP`)$yat~U~H8Pp^h~EtH z{ox{&61uhX4^}r$fXH{UX|qHIq!zlw;Bj3vvq+h79$p-^61wngqWDl0#gETKC+mHr zbF6oViLXi{3S9YRf^mlnKPtk0okbzEu9#q*MDi*(sfbQ7M|@lNgVb5iJ1?(KzN;vjq)01;7aus zcSRGBwUj%|KbW~D!Tf`RWq`4SW5RLY-mJJBV^a8`39n`*+SLlZ_A^D~o;}9>$(Vg~ z6cv$is96b<+C>EmcMSTvnn3g97>lhAQgyf!t1GwqdEiC7ahVK*viNZu>SEIJkWQjNev^W4N|pFiDlks?z|yr-;GSSYsuiYSLb#>CwM+mp z;KdREu`xbUk%V;C?VZ10kpaHFFnW&5?#={sLq7^&<+S8A6aM55xFY54?c`=54D=?I zZ&f}em1z~tc^o?T!-Agh#kbs?+PbsYxXf!>W!gU~V?31P!~qOS$^02XcRJ|N4A&E= zL)z6{YaGu(X~}a5K+_FlWk|CX(Sg3_>(y|t$n}QeBUiA;`WWg56OcuX9w%2lZaZpp zU)Dp7XG5)VeXUZYk6yQE0)2faQ8{at!nlGmZnI%1yRL5d$D&W2GMdx`OT;URA{0&< zrZd2T-{zu`ga`dKXMo=2aU}ag`yl$xIUVx zw6|mtYMgos8Sl8d7SPnhN0`Y-c#io(45`5`s?tj-eOE=XEHhDLd%*kKaZxSswh`>L zl+=85fs0~)?!9vHaX#Kj>o9+_Nj`s`_v)r}0QPNE^s!!zRsc4eM+jIPyQ{eN6IZOgwkxl zGl}4nrq>kZ^ji>OS&)>#vLk@^hASE^bRlklxOJZa*Fw@jk*pt&Q zR4es`T-dUtE@9WJHhfW9nIBS~PF9T_ZA8ES0$2EakD{fy*Z_YUQ04GMiGd12BA0o& zz4gpD4dubAT`j>&|2oGL5a$IYQ-Y1Zk*rB-jgQj`QTfCD^lg8ub+mZFpE4$*W;FIy zUwOUUl=yRIEFqRhsgm;)0uFS(({Mu1n|e?A@6u(8TSSgw(~p1<7r+6&gOUR>AYa?9 zO7c4iGzA$VGj(By=gY0lHH>(lVAHSUxU>$vkS!{9}mIMg|j1x7ZPz zGZ6w7-Idtz+P`%SI$2Q=@tc`Z#z65 z1?Wx_i~hN!nBi_L1IqGYq^r(&pBU??f=vWW@}To(^Vx&8HaIBG^^#^yN?a2=^a%~1 zD!_mR1z&zkF3wC(vBaUXHs1el4)1^Ss;$Va$X@~fx2K&EnePK{UX>T2t103o4p>_m zO;sQ920zwvEcD$u37~o{_g)FSvfO$UWgO$hTC{vWo2f+ z$eo3~jqA>}>X2vb+Dg`0j~~2wrj9Nh-E=|)Fv)a;wq!kWKtz?8twArQDb(;+fsuvQ zV_FQ_qgoF#vNQWV_gk!Q7|AL#T-weKac5; z4d3~A^q?C<6N7yhMkJRhc6(KSGQQjZk67m<0I+307~|a~reC~ep_+{*K>OZz91o9J z-Z}fF_beC!tc;ewz1Houhq?1MY`ZaolfKPctQYnWT-@t4^?dXLADp%4Wsncekdwui z$Htf|JG}{#Tz4-G3v@jV^AFf>D`^*~CVgZ{gS&e=$26%XHZPYhi!v384bNWVqSp&k zThxpuU2p+>N4|I06rdBJi9`fndT?<8iNFV*o3eAfX+WFJJ?jUr!E z)*s{wad`ri8TJU{2ht5li?0&i<*bZ9JIbpnMd@wIOD1XrTT1>$k4We)T{p#nN8IMp3 zAx z^0~l?T?51YF3bANZd*fTyCOj$?S%!2`kpPIfVS@dBUelOIs~DO5Sp|Sx-vFBH~4? zjwkaeP@AEH-SAL3)jRew!};AR-BfEeoE+D>ty59&@n1OLK~xS$VE`Bt%{S-r;N>B7 zSkgtO%GV6p8)V4Vd1sH6k=RroC4vtTkj`kRwfI-?m{p9OGMe-FfW!4O`X~e*&^bbu zDL38tM&vHn#;|hV4%~w+C%Fx0U=eho#8{=Gk@efZ+xyWhP?Y*Uqh)$ z8r)#IJ5)bOb=OcBi3uLkgk6hyW5d*mFETuyxGSwGi$0hEa(l#E;7gBk{N8k0or5if z@n7Vph`1YqpPF+(pNb*|YJr#?Xo=y8J!~R1$Zi5HI=r>eCVhpyd}9T?+O=aG?tJ7p zZ+!NIym21&9{ax0#g*;?`n|3$xTGgP+LFLcvYHUkksDh;1O|uuX_!6E+K*~HV@JMv zgsM{*eTGA1d_A_VII-t1Df;5B=2o6*h_X-ii#Bz&HG*5|hS$vP7LCJ8U$yhhP^8kE zDM;BK<@$Y7weZO@8Ej_zewBQj)=5*cRTdr81S@7s#b z0&hXtalV@o&Kgy1%-34oDl=$T0GkD6OuQs%N6rX*X1cKih9p;4DM9bhILyTXKqug) zq4~X?blC={ogx2l1|EUqJGA(>>muM|KzIO4g<+08?2R7Q@D40vY|-X6Re13yvo3Cc zY!T$7@r0+R0X`t>;B6T|1{I!i57@aJ_ge{!bG7Y2ya1P@?^C)+nMq+QufyH`hkSb& zuRFVH1M){=#On$IjI(zTC;dIDEbt@vR3}vvk#>mTU)g|a_RT`15cB}PH!%y2XCU>5 zNF~&yOO3{Xsc#f0d>yAzZx3_kFP({I&Z~IzbX(qmxU-SlNQkDhJDKy&)v`D}1};VY ziCTlX&3$eM6_btZOlxe}ivdp@HGzX6I+9Nzj&zlb0rUdz9T8CygFmy{X^|P}Mq`K1 z>2^ek04liEvz>0JM9~w!Rb!mgFupUm|7E1m^34e14MWA`KPyA`XsOP6=~ToX?Aim~ z+2(&nxtB42<*NEtJeZ(1BU*7U%1~a z24H0*Z?;D?oSxrDB8EhNaLPDer@hAsmtN#6zq_`QK3S=UdD?dvyugzEYRGxlU6{)1 z>)xZJ)FQ#a+P#cf>}zD7>u!s^zXNvWY^)W3_EFj;<)09P8 z6b6-?Tt#340opf-f4KJ5byTRd(f37FmN)G0_JZqOm6K?^z)58>Cu|7DVVLht+r9kl2B_L`DG|13(T_fjzYa%9 zsTWRvL&XeZ2xQ({8QDdM!_P}dDsCQ!AJ5GQUAj8sV441P?k1wyO2%_s0UYVE-^GPK zfCenoROqQpnRyqX?1yHx(e>+CoU+6lXZQg$Xv!Ct$-YF-wZ&3GV1pKZb@^yz%C8vR z3V_j6J8W)%6?*=&o$yvgNd;Mee#wK*d`$sD6(S^UhVRc%i^yFyLVrkrj_iegr#h^# z<6~VU$ZgeAjMP@(xMxH`R;0RI){{IvN2$e~NFd+#m=|e&Z-D_r0`JpFJ!4nn>y%#& zxspdA!t_=r$pJh47KN=v7e^h9aP$J$vMl#=hReE{Yv0s>7~@B#uf`En+ksenC7UUxkA!kxS$rWue$Wlw@naA2z0D ztiyUq8SY=+d4(H!%yAWcx4jKTN6Lb3k}P?t%G4qCniFU2{fa87I`$sixxNsVL1m*9 z-{P6-5h~tNG5dD@N=VMuXs3zQU78W&i(&x5W#^V(qxMS~=2ScVEY=X-iLjd=>FPcpqV-xWpz)uak)^ZZ zJ4;m+wIyuBQ}*d#B8*m_?R3U75>9*CzE7aGXk&jTkhI=kD9PVID&r#o0FS2pTy86Z z$@Xei(Ya2Ex0M`LzE{cL>_q69fhfwi@~XonK~9UmNszG+$>)*uvd`W&I&yk#3>!;Z zD1CY=OG<58$SmR@$!(H>|KnxzUzGnda!Ucx+gUdhy?6z;(W?ILw>BMg$56?Y&{pu? zD&t$c72SKWL*-teB2kJc^)l^#n6a{m!FYnH&dZxio)Fy2ASmQdd`ge>anE?)*T;T1IMPMddaQNe08g);d+K?T zhuC_l67B??L(V>Arpy)xleXNs;r=^h6GO&T(66Q4uw%35VFvm7@FZUCipvW_2|zjz zMwF^%PcyXsu2_e)KXAmdS?Gu8P-g-mHC_(RkURv#Ea0Ue=>dU1&pu&r+uIfwd#mv! zYo*v2_jBxCzsM$%Xz764uh(yZS`4Gi#J|*Iud?-a2DVxvc9uo){@yRy=F%y(pF$2k zKn4YL`K63N@#s(Y0AIw~?=aU+jll*uR%*Px+@}6K-f?R#^w!T^v>GFTEDvT@^rUu# zf>II;8%bBK0S$~lFCw$By!L-a=N3689P^U?+Sy(i$r=sAW@8A{_I{@~5ii@R#8&7H z#J=y22k0VB53Co?5?)c1OqOLh^z-+pD^bJNQ5%mZ>vOY6SEfq_xLsl61F9KtFA>RA z#KX?j2%Mh6gFl)gj}Cv5PSw<9uXClU3rJE$!{n$sWdS<*PX3c%Lt;uoliL&3vg@6> zL)AK>&IBOK(u4!gKo5Idi}%u(Ds#TI^-{`J2W{QTsLHO6{s}>S4iuA-u{c;>j@X2?J3s@rsoFAS$FZWp zd-Wik7>%3j}k8@EnW3S-^lP_ zW~oKLvlI`H*mjX|?G*hQD0fdZQHc*ykTZ3ChbNJeAq4rlB1l6MN=Q(!?nEj1bS4!# zpL!Gmvfp!>G>PQr-g&XA{PFCfWQThIFSe^;*@uhmc5!875Bb!q@Zy&?MbBI_rel?g z?QX@p@@Vr2I#&TY^>w8AcX?Qnzko6ZE$NHM0LIP{?Ecl7IA{$)FkSDTT+JH_3=iHj z2T~$Fv&JWcxV>`GCL+p2aub@V-Xhq7WiK{!!AX3~uCeU7PZ5_b2pu@TMd6YVwiKoe zv5m8XJ3A++DCOZeOP`y00b*>c9M2CXD4}Lr*D0 zW~A0ENr;)S#`=7DEzIY;JtF;@#_U&~eSsZaOn;yWZE-;U_rtx6)KhL=@+O-syqwe9 zoQ1%6Vt}rv=|m^)jRi3VrCAQ42?bCLvX7tc^9n$ce#G_m5JtXTCzX*^m==oB)09~1 zk{3v~!1%sKtHuDW3=42z!6F=?hFai2CN(Fx1Z*qcKL{d~!M0h@hR{Y!yj~}dNac8T zrHPxK&t{&ct2iDOw*yrvJp0=#8TCy@Z{`(fz?x%~nxK5KdPB>~gq2`>wiyh@v>#f9 zkKgle3gE4-gNZ(p&=z_y#Xw%OpxL@i41C4eumJb1o3(D<;xU3+no&GM6S<0 ze>OzvM>nzh3AM~p0~$}AL}2_eF>$B7>{gUCF{r6k)kbk@nn)z6PsCk6lc8`Fib_VN zek6^eO&lO}IBHveka!Vrt(m6YrrSPHER>4T*f%%s^*R6a!{=0w*bvk3Z<|BHKAES} zZ;UP0Ppb^BDb$AkJYXE&Hn;QL85d8L_BZ5SbGIbu4@#XEg>+86<_INe<+fF;`zJ;S zWz(yT^zz64Df2kdUciGyA*kr!>F5S8|KH@xVZBnz z42arQwS_hOtBVed%>Y*Sz}bg=zE7^4D(>X&!(uo5;O(BWPJ22AgSx_oYXZxpuGodQ zkdrdazNj@ryHv9%P(hEM{vmIW#+8;&FF%*^V!viI*Oxx>YXjGx%ameYKhc8bYgMAF z38iymy#A7E=!ClKet-VzC&gIKkqgi@nVsbR&i<^bCU=OXL~Om)f>Y*pzvR*bs6obS zam_2uV)|#`i){MBkD;FLD^rbTg})dJt}@+vT2b0Ocl%IXW8b?FZ;uXve0(EtJg(7S~x|H|SIn)B^cr=dmoQtqGXFHGHuCkjMS5Ehdb_Hq-UoabrLq zN2OV`MyvqKPqb#*LU#h1!)}bVMFfZ9$WyA8#6gS2JQozm`L?H|3W&055+b%(_`kms zNX~mUKVl6pdy(*^zo$6E)J~ET$Fby%4&QWa**XYw>?G-rI*wtOQPqQ^@i7iRZ%^?U zuBuOX=6Uc!)#F%Il&IA)o<|bZ_a0vXPT$VP7@W9zNdNY^Xdu3=JjPDC)`52n^;tuQ z*$Q(r?&8%{)LrY^7Yp1L!+n3+W z-MXZPMA#4AJCnnn>L3O%+ei&k(rZT58^XG^&X0S2exKL~-A>ALB$jv4ejS=e)zLjR zD$7@sVikd(;*H0x`7Of)lEr_$I@Vw5`)?uR3#OfEzh+pZBOAM&!SwwW*^TC;k`L1~uW*P{1~o!%v_Jkw{3v-%mIR7!_ABDgTj6Mw5tWS< zrFa2%mTN-w3I`pTO4_qIMC>=_RE%2OIU~XQ?ESI0V$^XssiDY{hNvH@=={gZwb1Et zrSc5E?h*YlP)6Wt9-~5)PMd8}X|}!?@7|bf{V5|4R=S-5m=MzW;Mx@wfTI^hkDUzz z^uv;x#DsE(8{v6$s6>0S%;u{()biCa_Tg#Ou%aGl#dcU+Lwj!-JW6m4?*A3Ly-fYy87Od7RVewi9 z&*nF5_c%rqcb0AEcnTM$a`vS|0pKB-ioEPA2ILfsyd$x^f4~a#Q&Fy$bpu>vYS~cG zbYK4!evh}q1#d>NRAf8Sl@@QcOP zjpkRW>w8%>a&nnqnIcR&)~?6T?MtXTC79h1B9bH0vDlCLW2>!`*=~9+Dm=zd``D^d za~;FBJ>3?#kJ?)Pe0Uz>iEET}jbUut(>hBF-4w*yAqjbr(WR9t)Y^P@0M*d5- zd?0mQg!Cm$hFTCbX*V6hPc#S^hNdwlt{nb4APBBlA6c!hemG&flnd-*G6eIOG*Xq( zj!$r1oPkh}UsnMqjhMn3)J2drIcsq~!rdiLI<5%$LxvA%#c0|XrJ#{ISHW$inCBex z8{$Yf)GRo)-i`{{%1^jk5Umzf^J30bviv{}Ha&P=o&2n5XL;|m%vQ4OMJC#uiHifY z_6!|o(WdV^eq@{C(S4Bp{(CccLPz@$emHKp%90~RZ~lk7nfwPWC_AgIo}hnOy4|C5 zsa!iW@70^k)!&z!TQTA0C|Tt2i#xuAdrg`;Mybh;S6F|&t8ulP!Uu`J!hX|+S!}pd z%P5(tGE2SYK>BYhP6YQ13>eJu{0CYmRR81OSU)gW%)i~Qg?#p;_C^0v(j1d3D?uCcWz5B#oqVcWXNdctlT0sp&xGV#Pq0h_5jw6AlPA?+g zt2+L}ladUPPe2M#G8v40#y!ON|LJ=ux}9y@%>CF5#I zThRhV{#9GaJ&4>B-v`Hr*S;YnK*jZ3b88Yi zJShQ|4w?;`-LxYpx+(-vms5t>H@YJV_)j)S-cw*6y^fQ zF4psh^0GfO&{a_Q0ir98$=0YL4n@AzPaLws)pYQcZXk65bjxp@_c?GLoR(rZe4H^A z6qTmeW?d?^G@tr15`b%V=qoue;UzerD$yTrTAcq6Mj5^Qm(z*q?{Qc)7JOuuFz;3UDVqHqw&tm?ZGLnQ&tp5>pHFu@N zvPDukf6)?VF%+guw>w*JuE8Jc`a#f!-qE1tas_~uNXM*>`!Cw@gZqt!e#8DVp^<+~ z%{RCXQ)=G`c{Tmp234xZUT+#?O8b~3p^>0_rg|ARH8uFVw_WEy)Ifmdbrwyt)0^S4 zz^d$J_JgZP%(HU21Axhoax43+!Yabf@$da#SQT8(9m~TrKUaWY>pa^WMxvlP|Hu(B zeEIqIe?+~{Mb%@F5gusx~0eXk( z{xPG}jS3DEu>aHCng2uiy?=bhFr#dvCfS!%hQgQ$Nf|z-#9pu`u1cFF=4m`5n)}v?lsWshA+oh5gC@MPm9=>4C7i z%zeGKi9g?&{2I&Y>5bWDjW2{9F8lEV;DFS-lCJeGGi)Zqm%r-x_h+4U>-$y4s^Vwk z2JFLxK@f++rUlu51L{kxffqpw9UVq3-4VESA z1LH)`1YFVkyNu6R*6UgN28MW3IV=SzCpRX7KtbS>Md{cLCHh1O+AC_CMN=3pO(?{< zd9N0{?C-i76Is0Sg=%ifk+R+1uh>l!NYZE=7mx$lh4Mm!1m&d@0 zH7~Z-byYC9V{vM7GkWvx##$WxdJM?5HsbU1gJ~vhSy09;P-duUmo-3>0h>F9x36jR ztteHgo%?m!n5hHsO6Vl!pWu0{1j+9sM8bBtQLF`U=EkkcnY{!_T4 zWjVzdSRM0j;$!k)s5a4GMm1e8whcIn&CiIb1G20Auv1GpiFAZC--1>N9AG<0Ot*6T zCA~4^7Sn_sqv_ji=DrViD0s`5Q|l~jkJXp2^!_X)In{^hJg{-ZDP`Zg*p(Sgs_J3| z?J)VOA7wtJVo8o?k@}eNSbg-&LuY-d&I)1uG^wHGVbO_wc*33qz5w_mttCU^Y!k}p zSo7siWZBNwm2>UXoC@2-rH~JEmNaZ}+6}ez-zglbU`XT8Y*XRZqhA(T6S8a*ppf~Z z{dzjfVWVyH-;U<;8i>_I^Rb0_Nf|Qxp!^m;VSmvVpc9@6^9iDCDJgDD#m|ZSlc2sx zsyW-F!q0Uj>nEzxE-|g0VexKx)2pYKr$stl>c&p-7ETGnTdhFtz>fEpqI6Af z2VwWuqB|q|MFREGH1?2A2-o2YF!EKVM3>jCSx>S!O?ldzgIAZyDA79Q~qC>*)nbF+X`V1iGw2E%E!X*j}l6 zs}-3ig^&Ei=d@w(!#r%O!AeIgsx}TNhK=leRwU(_d&A`E2i2U*jw6?h69Q#{sx%cb z3V>W5m-Djlp~ergY(izN-SdPkwqZIpRM08+vKyXdl;ejhQGu5*n}y&OPC(EQcT{cnVwzs#6F| zMSS(yC;8Q=4>Hkbb?3>i(|yma66d#61h^~PW0yRt`vERWz^_oI#n+pO8vGHN)PY?? zYZC%JCF;Z0okM4Fr0eE7Ko{e(Z(c7dY+<`@|M6KIM7aSA^ zfwv9Saz`G#a+yt%k5Gk_@OB6pA!U3Tt!9CVxS>>j;n~cot*o<5&XYu1C_Z=IvW(t8 zh4Xe6cxo;F*Qm!VJnlLIF7FI7H9t#qnP#~l?zHOr;;!b+!8pjHD0Ro0Do^gc z3`ez)YO%LYu#Tnqr{Tfp6h2(YpSf_KHS`r#namlGn2xW~O5zj?h9uJIy8~MF03UJ7 z(G$^!+S0z2A<6V;Mb3J-9N5pk6TeuNnf{%7Ci-F%7&VMJCVR>zZKEG_S51EkIn46T zTy6T^uQjjW2c#lf3nc(~@P?jWA>`iWW!AXiIq&m^K}rzd9+e#T-=U6Aim?}<0ay~p z47@IQX0sdEP74#fFE$D~nazCzOBQZ@6-3&UhJS|!1dEDsdU_{jK|pM|yJSD;-Tl^X z%)(ROb_LWd@<#PoMF;18OmT`O&N-nCM722I!SjJ16!3wuLPavio= zz)5BL8xlgSE*Hf08m4Jgm)_+>@T(d~6L=W3>ufM3v(XG`Wk$ZOykC_Mr?B6&C#XDE zRjwIJ^;=$Q_3UNPe77+(mVgkVw(DbEnORC>H~YmtxgpT)CaRy_Gq_sNAEKoe)}_J| z3~IZxo@VX!kB)Fy_VBekb0wa^$w|ju8@}g&8!e zEAsqG7AdfkTg!C=d=c&(`MsZL*AKH5E)Q5r{J%Jm6#4!tc!c3OsEOB&KC39K|Kip_ z$oks#;0U?0tMs} zrI~Bra)7gaB&LDLQE6*Pr~xDn*?Sspg{q4NYc@l=zL?_w`(3}etzf>VX}9Fv0&QNq zCX+&mLh2rSOp4$q=nA9{GkIfftUdNF{bbFu8&V9=ev5n3)(eDvA^ahi7(=? z+UVgm22f}m3e-WcISqOW1qq&B;%uf63$61|e4;S@^AnvMy8%qB$Ledsw&^gA6mU|1 znY4Lc7$s6C3d-Ns>{g(p1)Vccf8adK!nSPqtQO>4%j?D$W38tU$G0q>r~Kn5p)Ox{ z33aAEy4ZXNp?uHO`o=L5N54x~j@#(|WtJ$PCofDGjxH*38Yn9%0uF4_yH3Zcd^_Uu zl4mmaiSaIO{qA0SR7K}gKfDJ!z6$Gs9-DDvX5DizT8q^u3i{ec7XzB#9wwIbV^~Ee)N7GZX~%5Yp20yh%_nl5pi7 z1rH<;l_S4Yd{=I|7YZQQN*)<2AK9M=vP>N(H!nj=Go$9{;mL7X?j4~ZCipaDaShGK z)U9_QPTgj10hlv9Is*>VM;@M9Ey?QC%%0;&J#%L5MC;hg^!2&3*1*`1PGp3wPQN6VRo!Wu$WHIMtWJ#3$#z1mLZhZtF{}3( zW<~>oDHcKGB@a?R8mtT4Ny=ria*!DLzdU| zkvLH$8)(SsmQVA7y9+`yU)9$`s+=B$%`~{3l?EAr0xY<1l0T7jUZCdc(BWDJA;%V1 zo-`ciH4uSxU0FKL+uv9hEKf2X_J?|)yu|7T1fPRl#P|mU>7W34f{htwFSX*GP>32j z3?j}~ni^FjF9|I&fC@oQ(7_AxE+YDkE`zUlW})FEJ51VsCx066EuMLv0?Ys__X0q3&sb;n@KF0LQ(ee)K9xC0Ya@uT4+?hSdfm8b|EU@ue9rRr pH`vrdLJb)p-Tt544Hw6`5D{;y7>~5~fgs@e$JoN?-C39W{{v0+8HWG> diff --git a/src/touchicon72.png b/src/touchicon72.png index 101143aa2d825015dc11800301a16f5afda19b74..dfefc075f2c49b04b52270af0353eb3a653c3ae8 100644 GIT binary patch delta 3514 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 delta 3522 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 From 61efaa2fa4f9ca745b75b75c047c3864d44c5270 Mon Sep 17 00:00:00 2001 From: gnehs Date: Tue, 22 Sep 2020 02:17:06 +0000 Subject: [PATCH 132/365] Translated using Weblate (Chinese (Traditional)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/zh_Hant/ --- src/strings/zh-tw.json | 44 +++++++++++++++++++++++++++++++++++------- 1 file changed, 37 insertions(+), 7 deletions(-) diff --git a/src/strings/zh-tw.json b/src/strings/zh-tw.json index 54d8593590..0b953aa8dd 100644 --- a/src/strings/zh-tw.json +++ b/src/strings/zh-tw.json @@ -469,7 +469,7 @@ "HeaderLoginFailure": "登入失敗", "HeaderMedia": "媒體", "HeaderMetadataSettings": "中繼資料設定", - "HeaderMoreLikeThis": "更多類似的", + "HeaderMoreLikeThis": "類似影片", "HeaderMusicQuality": "音質", "HeaderMyDevice": "我的裝置", "HeaderMyMedia": "我的媒體", @@ -590,7 +590,7 @@ "LabelAuthProvider": "認證提供者:", "LabelAutomaticallyRefreshInternetMetadataEvery": "從網路自動抓取中繼資料:", "LabelBindToLocalNetworkAddress": "綁定本地網路地址:", - "LabelBindToLocalNetworkAddressHelp": "(選用)覆蓋 HTTP 伺服器綁定的本地 IP 位址。如果留空,伺服器將會監聽所有可用的地址。改變此欄位需重啟 Jellyfin 伺服器。", + "LabelBindToLocalNetworkAddressHelp": "(選用)覆蓋 HTTP 伺服器綁定的本地 IP 位址。留空則將監聽所有可用的位址。更改此欄位需重啟伺服器。", "LabelBirthDate": "出生日期:", "LabelBirthYear": "出生年:", "LabelBlastMessageInterval": "活動信號的時間間隔", @@ -721,7 +721,7 @@ "DashboardOperatingSystem": "作業系統:{0}", "LabelVideoCodec": "影片編碼:", "LabelYear": "年:", - "LatestFromLibrary": "最新 {0}", + "LatestFromLibrary": "最新的{0}", "Logo": "標誌", "ManageLibrary": "管理媒體庫", "MarkPlayed": "標記為已播放", @@ -1159,7 +1159,7 @@ "LabelKodiMetadataSaveImagePathsHelp": "若如果您的圖片檔案名稱不符合 Kodi 規範,建議啟用。", "LabelKodiMetadataUser": "儲存這些使用者的觀看資料到 NFO 檔案中:", "LabelKodiMetadataUserHelp": "儲存觀看資料到 NFO 檔案中以便其他應用程式使用。", - "LabelMetadataReadersHelp": "優先排序您的中繼資料屬性來源,首個找到的文件將被讀取。", + "LabelMetadataReadersHelp": "優先排序您的中繼資料屬性來源,將會讀取首個找到的檔案。", "LabelMetadataSavers": "中繼資料儲存方式:", "LabelModelDescription": "型號描述", "LabelModelName": "型號名稱", @@ -1365,8 +1365,38 @@ "LabelIconMaxResHelp": "透過 upnp:icon 屬性使用的圖示最高解析度。", "LabelAlbumArtMaxResHelp": "透過 upnp:albumArtURI 屬性使用的專輯封面最高解析度。", "Other": "其它", - "EnableQuickConnect": "在此服務器上啟用快速連接", - "ButtonUseQuickConnect": "使用快速連接", + "EnableQuickConnect": "在此伺服器上啟用 Quick Connect", + "ButtonUseQuickConnect": "使用 Quick Connect", "ButtonActivate": "啟用", - "Authorize": "授權" + "Authorize": "授權", + "QuickConnectDescription": "要使用 Quick Connect 登入,請選擇您登入的裝置上的「Quick Connect」按鈕,然後輸入下面顯示的代號。", + "QuickConnectDeactivated": "在登入請求獲得批准之前無法使用 Quick Connect", + "LabelOpenclDevice": "OpenCL 裝置:", + "LabelColorTransfer": "色彩轉換:", + "LabelColorSpace": "色域:", + "LabelVideoRange": "動態範圍:", + "MediaInfoColorTransfer": "色彩轉換", + "MediaInfoColorSpace": "色域", + "MediaInfoVideoRange": "動態範圍", + "Bwdif": "BWDIF", + "UseDoubleRateDeinterlacing": "去交錯時將影格數量翻倍", + "ThumbCard": "縮圖卡片", + "SpecialFeatures": "特殊功能", + "QuickConnectNotActive": "Quick Connect 尚未於該伺服器上啟用", + "QuickConnectNotAvailable": "聯繫伺服器管理員以啟用 Quick Connect", + "QuickConnectInvalidCode": "Quick Connect 代號無效", + "KnownProxiesHelp": "連接到 Jellyfin 介面時使用的已知 Proxy IP 位址之逗號分隔列表。這是正確使用 X-Forwarded-For 標頭所需的。儲存後需要重新啟動。", + "LabelMaxMuxingQueueSize": "最大混合器佇列大小:", + "VideoAudio": "影片音訊", + "Video": "影片", + "QuickConnectAuthorizeFail": "未知的 Quick Connect 代號", + "QuickConnectAuthorizeSuccess": "需要認證", + "QuickConnectAuthorizeCode": "輸入代號 {0} 來登入", + "QuickConnectActivationSuccessful": "成功啟用", + "QuickConnect": "Quick Connect", + "PosterCard": "海報卡片", + "PlaybackRate": "播放速度", + "LabelQuickConnectCode": "Quick Connect 代號:", + "LabelKnownProxies": "已知 Proxy:", + "LabelCurrentStatus": "目前狀態:" } From ecad2e4bda6427bc15bb1a0115b5a2b11801d6c9 Mon Sep 17 00:00:00 2001 From: Ian Walton Date: Tue, 22 Sep 2020 07:34:46 -0400 Subject: [PATCH 133/365] Fix PR issues. --- src/components/playback/playerSelectionMenu.js | 8 +++----- src/scripts/autocast.js | 6 ++---- src/scripts/libraryMenu.js | 6 ------ 3 files changed, 5 insertions(+), 15 deletions(-) diff --git a/src/components/playback/playerSelectionMenu.js b/src/components/playback/playerSelectionMenu.js index dcf36dd9b4..0afa56faf4 100644 --- a/src/components/playback/playerSelectionMenu.js +++ b/src/components/playback/playerSelectionMenu.js @@ -220,18 +220,16 @@ function showActivePlayerMenuInternal(dialogHelper, playerInfo) { html += ''; } - html += '

    '; if (autocast.supported()) { - html += '
    '; - html += '
    '; html += ''; diff --git a/src/scripts/autocast.js b/src/scripts/autocast.js index 4d191a62da..84e07b32cd 100644 --- a/src/scripts/autocast.js +++ b/src/scripts/autocast.js @@ -11,7 +11,7 @@ export function enable(enabled) { if (enabled) { const currentPlayerInfo = playbackManager.getPlayerInfo(); - if (currentPlayerInfo && currentPlayerInfo.id && currentPlayerInfo.id) { + if (currentPlayerInfo && currentPlayerInfo.id) { localStorage.setItem('autocastPlayerId', currentPlayerInfo.id); } } else { @@ -29,8 +29,6 @@ export function isEnabled() { } function onOpen() { - if (!supported()) return; - const playerId = localStorage.getItem('autocastPlayerId'); playbackManager.getTargets().then(function (targets) { @@ -44,6 +42,6 @@ function onOpen() { } const apiClient = window.connectionManager.currentApiClient(); -if (apiClient) { +if (apiClient && supported()) { events.on(apiClient, 'websocketopen', onOpen); } diff --git a/src/scripts/libraryMenu.js b/src/scripts/libraryMenu.js index 7a332a853c..680143ccf1 100644 --- a/src/scripts/libraryMenu.js +++ b/src/scripts/libraryMenu.js @@ -911,12 +911,6 @@ import 'flexStyles'; } } - function ensureHeader() { - return new Promise(function (resolve) { - window.connectionManager.user(getCurrentApiClient()).then(updateUserInHeader).then(resolve); - }); - } - let currentPageType; pageClassOn('pagebeforeshow', 'page', function (e) { if (!this.classList.contains('withTabs')) { From cd78c7bf9795136a79d22d95af4093b9c1368ef0 Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Tue, 22 Sep 2020 14:46:24 +0000 Subject: [PATCH 134/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 86 ++++++++++++++++++++++++--------------------- 1 file changed, 45 insertions(+), 41 deletions(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index 28d1a6c3c4..749629eb83 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -1,12 +1,12 @@ { "Add": "Thêm", "All": "Tất cả", - "MessageBrowsePluginCatalog": "Duyệt qua các danh mục plugin của chúng tôi để xem các plugin có sẵn.", + "MessageBrowsePluginCatalog": "Duyệt qua danh mục plugin của chúng tôi để xem các plugin có sẵn.", "ButtonAddUser": "Thêm Người Dùng", "ButtonCancel": "Thoát", "ButtonRemove": "Gỡ bỏ", "ButtonSelectDirectory": "Lựa chọn trực tiếp", - "ButtonSignOut": "Sign out", + "ButtonSignOut": "Đăng xuất", "Delete": "Xóa", "DeleteImage": "Xóa hình ảnh", "DeleteImageConfirmation": "Bạn có chắc muốn xóa hình ảnh này?", @@ -68,11 +68,11 @@ "Sunday": "Chủ Nhật", "TabCatalog": "Danh mục", "TabLatest": "Mới nhất", - "TabMyPlugins": "Các plugin của tôi", + "TabMyPlugins": "Plugin Của Tôi", "TabNetworks": "Mạng", "TabProfiles": "Hồ sơ", "TabServer": "Máy chủ", - "TabUpcoming": "Sắp diễn ra", + "TabUpcoming": "Sắp Công Chiếu", "TellUsAboutYourself": "Nói cho chúng tôi biết đôi điều về Bạn", "ThisWizardWillGuideYou": "Thủ thuật này sẽ hướng dẫn quá trình cài đặt cho bạn. Để bắt đầu, vui lòng lựa chọn ngôn ngữ bạn ưa thích.", "UninstallPluginConfirmation": "Bạn có chắc muốn gỡ bỏ{0}?", @@ -121,7 +121,7 @@ "Backdrops": "Phông nền", "Backdrop": "Phông nền", "Auto": "Tự động", - "AuthProviderHelp": "Chọn nhà cung cấp xác thực được dùng để xác thực mật khẩu người dùng này.", + "AuthProviderHelp": "Chọn cách xác thực dùng để xác thực mật khẩu người dùng này.", "Audio": "Âm thanh", "AspectRatio": "Tỷ lệ khung hình", "AskAdminToCreateLibrary": "Yêu cầu quản trị viên tạo thư viện.", @@ -147,7 +147,7 @@ "AllComplexFormats": "Tất cả các định dạng phức tạp (ASS, SSA, VOBSUB, PGS, SUB, IDX, ...)", "AllChannels": "Tất cả các kênh", "Alerts": "Cảnh Báo", - "Albums": "Bộ Sưu Tập", + "Albums": "Albums", "Aired": "Đã phát sóng", "AirDate": "Ngày phát sóng", "AdditionalNotificationServices": "Duyệt qua danh mục plugin để cài đặt các dịch vụ thông báo bổ sung.", @@ -208,13 +208,13 @@ "Banner": "Ảnh bìa", "Art": "Nghệ thuật", "Artist": "Nghệ Sĩ", - "AllowFfmpegThrottlingHelp": "Tạm dừng quá trình chuyển mã hoặc chuyển đổi định dạng để tiết kiệm tài nguyên máy chủ khi việc này đã đủ để phát so với vị trí hiện tại. Điều này hữu hiệu khi không tua nhanh thường xuyên lúc nghe nhạc hoặc xem phim. Hãy tắt tính năng này nếu có hiện tượng giật lag khi nghe nhạc hoặc xem phim.", + "AllowFfmpegThrottlingHelp": "Tạm dừng quá trình chuyển mã hoặc chuyển đổi định dạng để tiết kiệm tài nguyên máy chủ khi việc này đã đủ để phát so với vị trí hiện tại. Điều này hữu hiệu khi không tua nhanh thường xuyên lúc nghe nhạc hoặc xem phim. Tắt tính năng này nếu bạn gặp sự cố khi phát lại.", "AllowFfmpegThrottling": "Điều tiết sự chuyển mã", "AlbumArtist": "Nghệ sĩ Album", "Album": "Album", "DisplayMissingEpisodesWithinSeasonsHelp": "Thiết lập này cũng phải được kích hoạt trong thiết lập máy chủ dành cho thư viện phim bộ.", "DisplayMissingEpisodesWithinSeasons": "Hiển thị những tập phim bị thiếu trong mỗi phần", - "DisplayInOtherHomeScreenSections": "Những phần hiển thị trên trang chính như là nội dung mới nhất và nội dung tiếp theo", + "DisplayInOtherHomeScreenSections": "Hiển thị các phần của màn hình trang chủ như là phương tiện gần đây nhất và xem tiếp", "DisplayInMyMedia": "Hiển thị trên trang chính", "Display": "Hiển thị", "Disconnect": "Ngắt kết nối", @@ -252,11 +252,11 @@ "DownloadsValue": "{0} đã tải xuống", "EnableColorCodedBackgrounds": "Màu nền theo loại kênh", "HeaderDateIssued": "Ngày Phát Hành", - "HeaderContinueWatching": "Tiếp Tục Xem Tiếp", + "HeaderContinueWatching": "Xem Tiếp", "HeaderContinueListening": "Tiếp Tục Nghe", "HeaderCodecProfileHelp": "Bộ giải mã chỉ ra những kiểu mã hoá nhất định mà một thiết bị có thể phát. Nếu một nội dung không thể phát, nó sẽ được chuyển mã, thậm chí nếu kiểu mã hoá đó được thiết lập phát trực tiếp.", - "HeaderContainerProfileHelp": "Bộ định dạng chỉ ra những định dạng nhất định mà một thiết bị có thể phát. Nếu nội dung có định dạng không thể phát, nội dung sẽ được chuyển đổi định dạng, kể cả khi định dạng đó được thiết lập phát trực tiếp.", - "HeaderContainerProfile": "Bộ Định Dạng", + "HeaderContainerProfileHelp": "Hồ sơ định dạng chỉ ra những định dạng nhất định mà một thiết bị có thể phát. Nếu nội dung có định dạng không thể phát, nội dung sẽ được chuyển đổi định dạng, kể cả khi định dạng đó được thiết lập phát trực tiếp.", + "HeaderContainerProfile": "Hồ Sơ Định Dạng", "HeaderConnectionFailure": "Kế Nối Thất Bại", "HeaderConnectToServer": "Kết Nối Đến Máy Chủ", "HeaderConfirmRevokeApiKey": "Thu Hồi Quyền Truy Cập API Key", @@ -264,7 +264,7 @@ "HeaderConfirmPluginInstallation": "Xác Nhận Cài Đặt Plugin", "HeaderConfigureRemoteAccess": "Thiết Lập Truy Cập Từ Xa", "HeaderCodecProfile": "Bộ Giải Mã", - "HeaderChapterImages": "Hình Ảnh Phân Đoạn", + "HeaderChapterImages": "Hình Ảnh Phân Cảnh", "HeaderChannelAccess": "Quyền Truy Cập Kênh", "HeaderCastAndCrew": "Diễn Viên & Ê-kíp", "HeaderCancelSeries": "Huỷ Series", @@ -283,7 +283,7 @@ "HeaderAlbumArtists": "Bộ Sưu Tập Nghệ sĩ", "HeaderAdmin": "Quản Trị", "HeaderAdditionalParts": "Phần Bổ Sung", - "HeaderAddUpdateImage": "Thêm/Thay Đổi Hình Ảnh", + "HeaderAddUpdateImage": "Thêm / Đổi Hình Ảnh", "HeaderAddToPlaylist": "Thêm vào Danh Sách Phát", "HeaderAddToCollection": "Thêm vào Bộ Sưu Tập", "HeaderActivity": "Hoạt Động", @@ -332,8 +332,8 @@ "ErrorAddingListingsToSchedulesDirect": "Có lỗi xảy ra khi thêm danh sách này vào tài khoản Schedules Direct của bạn. Schedules Direct chỉ cho phép một số lượng danh sách nhất định mỗi tài khoản. Bạn có thể cần phải đăng nhập vào trang web của Schedules Direct và xoá những danh sách khác trước khi có thể thêm danh sách mới.", "Episodes": "Tập", "Episode": "Tập", - "EndsAtValue": "Kết thúc tại {0}", - "Ended": "Đã kết thúc", + "EndsAtValue": "Kết thúc lúc {0}", + "Ended": "Đã Kết Thúc", "EnableThemeVideosHelp": "Phát nền những video chủ đề khi lướt qua thư viện nội dung.", "EnableThemeSongsHelp": "Phát những bài hát chủ đề khi lướt qua thư viện nội dung.", "EnableStreamLoopingHelp": "Cho phép tính năng này nếu live streams chỉ dài một vài giây và cần được lặp lại liên tục. Bật tính năng này khi không cần thiết có thể gây ra nhiều vấn đề khác.", @@ -392,7 +392,7 @@ "HeaderInstall": "Cài Đặt", "HeaderImageSettings": "Thiết Lập Hình Ảnh", "HeaderImageOptions": "Tuỳ Chọn Hình Ảnh", - "HeaderIdentifyItemHelp": "Hãy nhập một hoặc nhiều điều kiện tìm kiếm. Xoá điều kiện để tăng số lượng kết quả tìm kiếm.", + "HeaderIdentifyItemHelp": "Hãy nhập một hoặc nhiều tiêu chí tìm kiếm. Xoá tiêu chí để tăng số lượng kết quả tìm kiếm.", "HeaderIdentificationHeader": "Thông Tin Nhận Biết Trong Phần Đầu", "HeaderIdentificationCriteriaHelp": "Nhập vào ít nhật một thông tin nhận biết.", "HeaderIdentification": "Thông Tin Nhận Biết", @@ -406,7 +406,7 @@ "HeaderEnabledFieldsHelp": "Bỏ chọn một mục để khoá lựa chọn đó và không để nó thay đổi.", "HeaderEnabledFields": "Những Mục Được Kích Hoạt", "HeaderEditImages": "Chỉnh Sửa Hình Ảnh", - "HeaderEasyPinCode": "Mã PIN Đơn Giản", + "HeaderEasyPinCode": "Mã PIN Tiện Lợi", "HeaderDownloadSync": "Tải Xuống Và Đồng Bộ", "HeaderDirectPlayProfileHelp": "Thêm thiết lập phát trực tiếp để chỉ ra những định dạng mà thiết bị có thể phát trực tiếp mà không cần chuyển mã.", "HeaderDirectPlayProfile": "Thiết Lập Phát Trực Tiếp", @@ -486,7 +486,7 @@ "LabelBindToLocalNetworkAddressHelp": "Không bắt buộc. Ghi đè địa chỉ IP cục bộ để kết hợp với máy chủ HTTP. Nếu bỏ trống, máy chủ sẽ cài đặt vào toàn bộ những địa chỉ nội bộ có sẵn. Nếu thay đổi tuỳ chọn này, yêu cầu khởi động lại máy chủ Jellyfin để có tác dụng.", "LabelBindToLocalNetworkAddress": "Liên kết với địa chỉ mạng cục bộ:", "LabelAutomaticallyRefreshInternetMetadataEvery": "Tự động cập nhật dữ liệu mô tả từ Internet:", - "LabelAuthProvider": "Nhà Cung Cấp Xác Thực:", + "LabelAuthProvider": "Cách Xác Thực:", "LabelAudioSampleRate": "Sample rate âm thanh:", "LabelAudioCodec": "Bộ giải mã âm thanh:", "LabelAudioChannels": "Các kênh âm thanh:", @@ -520,14 +520,14 @@ "ItemCount": "{0} mục", "InstantMix": "Trộn Lẫn Nhanh", "InstallingPackage": "Đang cài đặt {0} (phiên bản {1})", - "ImportMissingEpisodesHelp": "Thông tin về các tập bị thiếu sẽ được nhập vào cơ sở dữ liệu của bạn và hiển thị trong các phần và loạt phim. Điều này có thể làm quá trình quét thư viện lâu hơn đáng kể.", + "ImportMissingEpisodesHelp": "Thông tin về các tập phim bị thiếu sẽ được nhập vào cơ sở dữ liệu của bạn và hiển thị trong các mùa và loạt phim bộ. Điều này có thể làm quá trình quét thư viện lâu hơn đáng kể.", "ImportFavoriteChannelsHelp": "Chỉ các kênh được đánh dấu là yêu thích trên thiết bị dò kênh mới được nhập.", "Images": "Hình Ảnh", "Identify": "Nhận Dạng", "HttpsRequiresCert": "Để bật kết nối bảo mật, bạn cần phải cung cấp một Chứng Chỉ SSL đáng tin cậy, ví dụ như \"Let's Encrypt\". Hãy cung cấp Chứng Chỉ SSL hoặc là tắt tính năng kết nối bảo mật.", "Horizontal": "Nằm Ngang", "Home": "Trang Chủ", - "HideWatchedContentFromLatestMedia": "Ẩn những nội dung đã xem khỏi phần nội dung mới nhất", + "HideWatchedContentFromLatestMedia": "Ẩn nội dung đã xem khỏi phương tiện mới nhất", "Hide": "Ẩn", "Help": "Trợ Giúp", "HeaderYears": "Năm", @@ -550,11 +550,11 @@ "LabelEnableAutomaticPortMap": "Kích hoạt tính năng tự động kết nối các port", "LabelEmbedAlbumArtDidlHelp": "Một vài thiết bị ưu tiên phương pháp này để tải bìa album. Một số thiết bị khác có thể không phát được nếu tuỳ chọn này được kích hoạt.", "LabelEmbedAlbumArtDidl": "Bìa album trong Didl", - "LabelEasyPinCode": "Mã PIN đơn giản:", + "LabelEasyPinCode": "Mã PIN tiện lợi:", "LabelDynamicExternalId": "{0} Id:", "LabelDropShadow": "Đổ bóng:", "LabelDroppedFrames": "Những khung hình bị loại bỏ:", - "LabelDropImageHere": "Kéo thả hình ảnh vào đây, hoặc click để lựa chọn hình ảnh.", + "LabelDropImageHere": "Kéo thả hình ảnh vào đây, hoặc bấm vào đây để lựa chọn hình ảnh.", "LabelDownloadLanguages": "Ngôn ngữ tải xuống:", "LabelDownMixAudioScaleHelp": "Tăng cường âm lượng khi trộn âm thanh. Giá trị bằng 1 sẽ giữ nguyên âm lượng gốc.", "LabelDownMixAudioScale": "Tăng cường âm lượng khi trộn âm thanh:", @@ -603,8 +603,8 @@ "HeaderRemoteAccessSettings": "Cài Đặt Truy Cập Từ Xa", "HeaderHttpsSettings": "Cài Đặt HTTPS", "HeaderDVR": "DVR", - "LabelExtractChaptersDuringLibraryScanHelp": "Trích xuất hình ảnh của video được nhập vào trong lúc quét thư viện. Nếu không thì hình này này sẽ được trích xuất thông qua những tác vụ định kì, giúp cho quá trình quét thư viện diễn ra nhanh hơn.", - "LabelExtractChaptersDuringLibraryScan": "Trích xuất hình ảnh từng chương khi quét thư viện", + "LabelExtractChaptersDuringLibraryScanHelp": "Tạo hình ảnh phân cảnh khi video được nhập trong quá trình quét thư viện. Nếu không thì hình này này sẽ được trích xuất thông qua những tác vụ định kì, giúp cho quá trình quét thư viện diễn ra nhanh hơn.", + "LabelExtractChaptersDuringLibraryScan": "Trích xuất hình ảnh phân cảnh khi quét thư viện", "LabelBaseUrlHelp": "Thêm một thư mục con tùy chỉnh vào đường dẫn máy chủ. Ví dụ: http://example.com/<baseurl>", "LabelLoginDisclaimerHelp": "Một tin nhắn sẽ hiển thị ở phía cuối của trang đăng nhập.", "LabelLoginDisclaimer": "Hiển thị khi đăng nhập:", @@ -711,7 +711,7 @@ "Movies": "Phim", "Photos": "Ảnh", "Playlists": "Danh sách phát", - "Shows": "Các Chương Trình", + "Shows": "Chương Trình TV", "Songs": "Các Bài Hát", "Sync": "Đồng Bộ", "ValueSpecialEpisodeName": "Đặc Biệt - {0}", @@ -734,9 +734,9 @@ "RememberMe": "Ghi nhớ Tôi", "ReleaseDate": "Ngày phát hành", "RefreshQueued": "Làm mới đã xếp hàng đợi.", - "RefreshMetadata": "Làm mới thông tin chi tiết", + "RefreshMetadata": "Làm mới dữ liệu mô tả", "RecordingScheduled": "Ghi theo lịch trình.", - "RefreshDialogHelp": "Thông tin chi tiết được làm mới trên cài đặt và dịch vụ internet được bật trong trang tổng quan.", + "RefreshDialogHelp": "Dữ liệu mô tả được làm mới dựa trên cài đặt và dịch vụ internet được bật trong trang tổng quan.", "Refresh": "Làm mới", "Record": "Ghi lại", "RecommendationStarring": "Diễn Viên Chính {0}", @@ -815,7 +815,7 @@ "EnableFasterAnimationsHelp": "Sử dụng hoạt ảnh và chuyển tiếp nhanh hơn", "EnableFasterAnimations": "Hoạt ảnh nhanh hơn", "LabelScreensaver": "Bảo vệ màn hình:", - "LabelRuntimeMinutes": "Thời gian chạy:", + "LabelRuntimeMinutes": "Thời lượng:", "LabelRequireHttpsHelp": "Nếu được chọn, máy chủ sẽ tự động chuyển hướng tất cả các yêu cầu qua HTTP sang HTTPS. Điều này không ảnh hưởng nếu máy chủ không nghe trên HTTPS.", "LabelRequireHttps": "Yêu cầu HTTPS", "LabelRemoteClientBitrateLimitHelp": "Giới hạn tốc độ bit trên mỗi luồng cho tất cả các thiết bị ngoài mạng. Nó hữu ích để ngăn các thiết bị yêu cầu tốc độ bit cao hơn mức kết nối internet của bạn có thể xử lý. Điều này có thể dẫn đến việc tăng tải CPU trên máy chủ của bạn để chuyển mã video nhanh chóng xuống tốc độ bit thấp hơn.", @@ -835,8 +835,8 @@ "LabelProtocolInfo": "Thông tin giao thức:", "LabelProtocol": "Giao thức:", "LabelProfileVideoCodecs": "Bộ giải mã video:", - "LabelProfileContainersHelp": "Phân cách bằng dấu phẩy. Điều này có thể được để trống để áp dụng cho tất cả các vùng chứa.", - "LabelProfileContainer": "Chứa đựng:", + "LabelProfileContainersHelp": "Phân cách bằng dấu phẩy. Để trống để áp dụng cho tất cả các định dạng.", + "LabelProfileContainer": "Định dạng:", "LabelProfileCodecsHelp": "Phân cách bằng dấu phẩy. Điều này có thể được để trống để áp dụng cho tất cả các bộ giải mã.", "LabelProfileCodecs": "Bộ giải mã:", "LabelProfileAudioCodecs": "Bộ giải mã âm thanh:", @@ -860,7 +860,7 @@ "LabelParentalRating": "Đánh giá của phụ huynh:", "LabelParentNumber": "Số chính:", "LabelOverview": "Tổng quát:", - "LabelOriginalTitle": "Tiêu đề ban đầu:", + "LabelOriginalTitle": "Tiêu đề gốc:", "LabelOriginalAspectRatio": "Tỷ lệ khung hình gốc:", "LabelOptionalNetworkPathHelp": "Nếu thư mục này được chia sẻ trong mạng nhà của bạn, việc cung cấp đường dẫn chia sẻ mạng có thể cho phép ứng dụng khách trên các thiết bị khác truy cập trực tiếp vào các tệp phương tiện. Ví dụ: {0} hoặc {1}.", "LabelOptionalNetworkPath": "Thư mục mạng được chia sẻ:", @@ -1018,7 +1018,7 @@ "LabelSonyAggregationFlagsHelp": "Xác định nội dung của phần tử aggregationFlags trong không gian tên urn: schemas-sonycom: av.", "LabelServerHost": "Máy chủ:", "OptionSaveMetadataAsHiddenHelp": "Thay đổi điều này sẽ áp dụng cho dữ liệu mô tả mới được lưu về sau. Các tệp dữ liệu mô tả hiện có sẽ được cập nhật vào lần tiếp theo chúng được máy chủ lưu.", - "OptionSaveMetadataAsHidden": "Lưu dữ liệu môt tả và hình ảnh dưới dạng tệp ẩn", + "OptionSaveMetadataAsHidden": "Lưu dữ liệu mô tả và hình ảnh dưới dạng tệp ẩn", "OptionRequirePerfectSubtitleMatchHelp": "Yêu cầu phù hợp nhất sẽ lọc phụ đề để chỉ bao gồm những phụ đề đã được kiểm tra và xác minh với tệp video chính xác của bạn. Bỏ chọn điều này sẽ làm tăng khả năng phụ đề được tải xuống, nhưng sẽ làm tăng khả năng văn bản phụ đề bị điền sai hoặc không chính xác.", "OptionPlainStorageFoldersHelp": "Tất cả các thư mục được biểu diễn trong DIDL dưới dạng \"object.container.storageFolder\" thay vì một loại cụ thể hơn, chẳng hạn như \"object.container.woman.musicArtist\".", "OptionPlainStorageFolders": "Hiển thị tất cả các thư mục dưới dạng thư mục lưu trữ đơn giản", @@ -1033,7 +1033,7 @@ "OptionIgnoreTranscodeByteRangeRequests": "Bỏ qua các yêu cầu phạm vi byte chuyển mã", "OptionHlsSegmentedSubtitles": "Phụ đề được phân đoạn HLS", "OptionHideUserFromLoginHelp": "Hữu ích cho tài khoản quản trị viên cá nhân hoặc ẩn. Người dùng sẽ cần đăng nhập thủ công bằng cách nhập tên người dùng và mật khẩu của họ.", - "OptionExtractChapterImage": "Bật trích xuất hình ảnh mỗi cảnh quay", + "OptionExtractChapterImage": "Bật trích xuất hình ảnh mỗi phân cảnh", "OptionExternallyDownloaded": "Tải xuống bên ngoài", "OptionEveryday": "Mỗi ngày", "OptionEstimateContentLength": "Ước tính độ dài nội dung khi chuyển mã", @@ -1141,7 +1141,7 @@ "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Các vị trí phương tiện sau sẽ bị xóa khỏi thư viện của bạn:", "MessageReenableUser": "Xem bên dưới để kích hoạt lại", "MessagePluginInstallDisclaimer": "Các plugin do các thành viên cộng đồng xây dựng là một cách tuyệt vời để nâng cao trải nghiệm của bạn với các tính năng và lợi ích bổ sung. Trước khi cài đặt, hãy lưu ý về những ảnh hưởng mà chúng có thể có trên máy chủ của bạn, chẳng hạn như quét thư viện lâu hơn, xử lý nền bổ sung và giảm độ ổn định của hệ thống.", - "MessagePluginConfigurationRequiresLocalAccess": "Để định cấu hình plugin này, vui lòng đăng nhập trực tiếp vào máy chủ cục bộ của bạn.", + "MessagePluginConfigurationRequiresLocalAccess": "Để cấu hình plugin này, vui lòng đăng nhập trực tiếp vào máy chủ cục bộ của bạn.", "MessagePleaseWait": "Vui lòng đợi. Việc này có thể phải mất một ít thời gian.", "MessagePleaseEnsureInternetMetadata": "Hãy đảm bảo rằng việc tải xuống dữ liệu mô tả trên internet đã được bật.", "LabelSeriesRecordingPath": "Đường dẫn Ghi lại Phim Bộ:", @@ -1194,7 +1194,7 @@ "SearchForSubtitles": "Tìm kiếm phụ đề", "SearchForMissingMetadata": "Tìm kiếm dữ liệu mô tả bị thiếu", "SearchForCollectionInternetMetadata": "Tìm kiếm ảnh bìa phim và dữ liệu mô tả trên Internet", - "Search": "Tìm kiếm", + "Search": "Tìm Kiếm", "Screenshots": "Ảnh chụp màn hình", "Screenshot": "Ảnh chụp màn hình", "Schedule": "Lên lịch", @@ -1203,7 +1203,7 @@ "SaveSubtitlesIntoMediaFoldersHelp": "Lưu phụ đề kế bên tệp video để quản lý chúng được dễ dàng hơn.", "SaveSubtitlesIntoMediaFolders": "Lưu phụ đề vào thư mục phương tiện", "SaveChanges": "Lưu thay đổi", - "Runtime": "Thời gian chạy", + "Runtime": "Thời lượng", "Rewind": "Tua lại", "ResumeAt": "Tiếp tục từ {0}", "Restart": "Khởi động lại", @@ -1255,15 +1255,15 @@ "PlayNext": "Phát kế tiếp", "PlayFromBeginning": "Phát từ đầu", "PlayCount": "Số lần phát", - "PlaybackRate": "Tốc độ phát lại", - "PlaybackData": "Dữ liệu phát lại", + "PlaybackRate": "Tốc độ phát", + "PlaybackData": "Chi tiết dữ liệu luồng phát", "PlayAllFromHere": "Phát tất cả từ đây", "Play": "Phát", "PlaceFavoriteChannelsAtBeginning": "Đặt các kênh yêu thích ở phần đầu", "TabNetworking": "Kết Nối Mạng", "WizardCompleted": "Đó là tất cả những gì chúng ta cần bây giờ. Jellyfin đã bắt đầu thu thập thông tin về thư viện phương tiện của bạn. Kiểm tra một số ứng dụng của chúng tôi, sau đó nhấp vào Hoàn thành để xem Trang tổng quan.", "TabDashboard": "Trang tổng quan", - "LabelScheduledTaskLastRan": "Lần cuối chạy {0}, mất{1}.", + "LabelScheduledTaskLastRan": "Lần cuối chạy {0}, mất {1}.", "UseDoubleRateDeinterlacingHelp": "Cài đặt này sử dụng giá trị tỉ lệ khi khử xen kẽ, thường được gọi là khử xen kẽ bob, tăng gấp đôi tốc độ khung hình của video để cung cấp chuyển động đầy đủ như những gì bạn sẽ thấy khi xem video xen kẽ trên TV.", "UseDoubleRateDeinterlacing": "Tăng gấp đôi tốc độ khung hình khi khử xen kẽ", "TvLibraryHelp": "Xem lại {0} hướng dẫn đặt tên TV {1}.", @@ -1345,7 +1345,7 @@ "MediaInfoColorTransfer": "Chuyển màu", "MediaInfoColorSpace": "Không gian màu", "MediaInfoVideoRange": "Phạm vi video", - "ButtonCast": "Diễn viên", + "ButtonCast": "Truyền Trực Tiếp", "EnableBlurHash": "Bật làm mờ trình giữ chỗ cho hình ảnh", "OnApplicationStartup": "Khi khởi động ứng dụng", "EveryXHours": "Mỗi {0} giờ", @@ -1394,5 +1394,9 @@ "Up": "Lên", "Unrated": "Chưa được xếp hạng", "Unmute": "Bỏ tắt tiếng", - "Uniform": "Cùng một kiểu" + "Uniform": "Cùng một kiểu", + "ValueContainer": "Định dạng: {0}", + "TabContainers": "Định dạng", + "OptionEmbedSubtitles": "Nhúng trong định dạng", + "MediaInfoContainer": "Định dạng" } From 8e3f336d7f8b926f6fb6fcb39c7fe95d40d5e539 Mon Sep 17 00:00:00 2001 From: Olegario Date: Tue, 22 Sep 2020 16:49:07 +0000 Subject: [PATCH 135/365] Translated using Weblate (Spanish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/es/ --- src/strings/es.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/strings/es.json b/src/strings/es.json index f760af180e..e41fe91e1b 100644 --- a/src/strings/es.json +++ b/src/strings/es.json @@ -1408,5 +1408,8 @@ "LabelMaxMuxingQueueSize": "Tamaño máximo de la cola de entremezclado:", "LabelTonemappingParamHelp": "Ajuste el algoritmo de mapeo de Tono. El valor recomendado y predeterminados es NaN. Generalmente déjelo en blanco.", "LabelTonemappingParam": "Parámetros del mapeo de Tono:", - "LabelTonemappingPeak": "Pico del mapeo de Tono:" + "LabelTonemappingPeak": "Pico del mapeo de Tono:", + "LabelTonemappingDesat": "Mapeo de tonos desaturado:", + "UseDoubleRateDeinterlacingHelp": "Esta configuración utiliza la velocidad de campo al desentrelazar, a menudo denominado desentrelazado bob, que duplica los fotogramas del video para proporcionar un movimiento contínuo, como lo vería al ver un video entrelazado en un televisor.", + "PosterCard": "Tarjeta de presentación" } From 978b0d3821420b0d61d3f16ef84a7c06c3c616d1 Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Tue, 22 Sep 2020 16:26:52 +0000 Subject: [PATCH 136/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index 749629eb83..9747d77ebc 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -112,7 +112,7 @@ "BurnSubtitlesHelp": "Xác định xem máy chủ có nên ghi phụ đề khi chuyển đổi video hay không. Tránh thực hiện việc này sẽ cải thiện hiệu suất máy chủ đáng kể. Chọn Tự động để ghi các phụ đề có định dạng dựa trên hình ảnh (VOBSUB, PGS, SUB, IDX, ...) và một vài phụ đề ASS/SSA nhất định.", "Browse": "Duyệt", "BoxRear": "Hộp (mặt sau)", - "Books": "Các Quyển Sách", + "Books": "Sách", "BookLibraryHelp": "Âm thanh và sách văn bản được hỗ trợ. Xem lại {0} hướng dẫn đặt tên sách {1}.", "Blacklist": "Danh sách đen", "BirthPlaceValue": "Nơi sinh: {0}", From c7bdc2ca6ffacefde07ba095daacc4401bfec8b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Kucharczyk?= Date: Wed, 23 Sep 2020 07:30:04 +0000 Subject: [PATCH 137/365] Translated using Weblate (Czech) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/cs/ --- src/strings/cs.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/cs.json b/src/strings/cs.json index 332457bb07..412f38ce6b 100644 --- a/src/strings/cs.json +++ b/src/strings/cs.json @@ -1417,5 +1417,6 @@ "EnableQuickConnect": "Povolit rychlé připojení k tomuto serveru", "ButtonUseQuickConnect": "Použít rychlé připojení", "ButtonActivate": "Aktivovat", - "Authorize": "Autorizovat" + "Authorize": "Autorizovat", + "EnableAutoCast": "Nastavit jako výchozí" } From c218e6886564bd73a28f61e385f90db7f55aa1c6 Mon Sep 17 00:00:00 2001 From: GiJaLo Date: Wed, 23 Sep 2020 10:14:42 +0000 Subject: [PATCH 138/365] Translated using Weblate (Dutch) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/nl/ --- src/strings/nl.json | 39 +++++++++++++++++++++++++++++++++++---- 1 file changed, 35 insertions(+), 4 deletions(-) diff --git a/src/strings/nl.json b/src/strings/nl.json index 10e96aada2..4369f26f56 100644 --- a/src/strings/nl.json +++ b/src/strings/nl.json @@ -100,7 +100,7 @@ "ColorTransfer": "Kleuroverdracht", "CommunityRating": "Community-beoordeling", "Composer": "Componist", - "ConfigureDateAdded": "Configureer hoe datum toegevoegd wordt bepaald in het Jellyfin Server dashboard onder de instellingen van de documentbibliotheek", + "ConfigureDateAdded": "Configureer hoe de datum van toevoeging wordt bepaald in het dashboard onder de bibliotheekinstellingen", "ConfirmDeleteImage": "Afbeelding verwijderen?", "ConfirmDeleteItem": "Verwijderen van dit item zal het verwijderen uit zowel het bestandssysteem als de Media Bibliotheek. Weet u zeker dat u wilt doorgaan?", "ConfirmDeleteItems": "Het verwijderen van deze items verwijdert ze van het bestandssysteem en uit uw bibliotheek. Weet u zeker dat u verder wilt gaan?", @@ -413,7 +413,7 @@ "LabelAppName": "Applicatie Naam", "LabelAppNameExample": "Voorbeeld: Sickbeard, Sonarr", "LabelArtists": "Artiest:", - "LabelArtistsHelp": "Scheidt artiesten met een ;", + "LabelArtistsHelp": "Scheid meerdere artiesten met een puntkomma.", "LabelAudioLanguagePreference": "Voorkeurs audiotaal:", "LabelAutomaticallyRefreshInternetMetadataEvery": "Vernieuw metagegevens automatisch van het internet:", "LabelBindToLocalNetworkAddress": "Binden aan het lokale netwerk adres:", @@ -1331,7 +1331,7 @@ "ClearQueue": "Leeg wachtrij", "StopPlayback": "Stop afspelen", "ButtonPlayer": "Speler", - "EnableBlurHashHelp": "Afbeeldingen die nog laden worden getoond als een wazige placeholder", + "EnableBlurHashHelp": "Afbeeldingen die nog worden geladen, worden weergegeven met een unieke tijdelijke aanduiding.", "EnableBlurHash": "Schakel wazige placeholders voor plaatjes in", "Writers": "Schrijvers", "ViewAlbumArtist": "Bekijk album artiest", @@ -1387,5 +1387,36 @@ "LabelCurrentStatus": "Huidige status:", "KnownProxiesHelp": "Een door komma gescheiden lijst van IP adresen van bekende proxies. Die gebruikt worden bij het verbinden met je Jellyfin instantie. Dit is nodig om goed gebruik te maken van X-Forwarded-For headers. Reboot nodig na opslaan.", "EnableQuickConnect": "Schakel Quick Connect in op deze server", - "ButtonUseQuickConnect": "Gebruik Quick Connect" + "ButtonUseQuickConnect": "Gebruik Quick Connect", + "LabelMaxMuxingQueueSizeHelp": "Maximaal aantal pakketten dat kan worden gebufferd terwijl wordt gewacht tot alle streams zijn geïnitialiseerd. Probeer het te verhogen als u nog steeds de fout \"Te veel pakketten gebufferd voor uitvoerstroom\" tegenkomt in ffmpeg-logboeken. De aanbevolen waarde is 2048.", + "LabelMaxMuxingQueueSize": "Maximale grootte van de wachtrij:", + "LabelColorPrimaries": "Primaire kleur:", + "MediaInfoColorPrimaries": "Primaire kleur", + "LabelTonemappingParamHelp": "Stem het toonmapping-algoritme af. De aanbevolen en standaardwaarden zijn NaN. Laat het in het algemeen leeg.", + "LabelTonemappingParam": "Tonemapping-parameter:", + "LabelTonemappingPeakHelp": "Overbrug signaal/nominaal/referentiepiek met deze waarde. Handig wanneer de ingebouwde piekinformatie in de metadata van de display niet betrouwbaar is of wanneer tonemapping van een lager bereik naar een hoger bereik. De aanbevolen en standaardwaarden zijn 0.", + "LabelTonemappingPeak": "Tonemapping-piek:", + "LabelTonemappingThresholdHelp": "De parameters van het tonemapping-algoritme worden voor elke scène nauwkeurig afgesteld. En een drempel wordt gebruikt om te detecteren of de scène is veranderd of niet. Als de afstand tussen de huidige gemiddelde helderheid van het frame en het huidige lopende gemiddelde een drempelwaarde overschrijdt, zouden we het scènegemiddelde en de piekhelderheid opnieuw berekenen. De aanbevolen en standaardwaarden zijn 0,8 en 0,2.", + "LabelTonemappingThreshold": "Tonemapping drempel:", + "LabelTonemappingDesatHelp": "Pas desaturatie toe voor highlights die dit helderheidsniveau overschrijden. Hoe hoger de parameter, hoe meer kleurinformatie behouden blijft. Deze instelling helpt om onnatuurlijk uitgeblazen kleuren voor superhooglichten te voorkomen door (vloeiend) in wit over te gaan. Hierdoor voelen afbeeldingen natuurlijker aan, wat ten koste gaat van informatie over kleuren die buiten het bereik vallen. De aanbevolen en standaardwaarden zijn 0 en 0,5.", + "LabelTonemappingDesat": "Tonemapping-desat:", + "TonemappingRangeHelp": "Selecteer het uitvoerkleurbereik. Auto is hetzelfde als het invoerbereik.", + "LabelTonemappingRange": "Tonemapping-bereik:", + "TonemappingAlgorithmHelp": "Tone mapping kan worden verfijnd. Als u niet bekend bent met deze opties, behoudt u gewoon de standaardwaarde. De aanbevolen waarde is Reinhard.", + "LabelTonemappingAlgorithm": "Selecteer het te gebruiken Tone mapping-algoritme:", + "AllowTonemappingHelp": "Tone mapping kan het dynamische bereik van een video transformeren van HDR naar SDR met behoud van beelddetails en kleuren, wat zeer belangrijke informatie is voor het weergeven van de originele scène. Werkt momenteel alleen bij het transcoderen van video's met ingesloten HDR10- of HLG-metadata. Als het afspelen niet soepel verloopt of mislukt, overweeg dan om de bijbehorende hardwaredecoder uit te schakelen.", + "EnableTonemapping": "Schakel Tone mapping in", + "LabelOpenclDeviceHelp": "Dit is het OpenCL-apparaat dat wordt gebruikt voor tonemapping. De linkerkant van het punt is het platformnummer en de rechterkant is het apparaatnummer op het platform. De standaardwaarde is 0,0. Het ffmpeg-toepassingsbestand met de OpenCL-hardwareversnellingsmethode is vereist.", + "LabelOpenclDevice": "OpenCL-apparaat:", + "LabelColorTransfer": "Kleuroverdracht:", + "LabelColorSpace": "Kleurbereik:", + "LabelVideoRange": "Videobereik:", + "MediaInfoColorTransfer": "Kleuroverdracht", + "MediaInfoColorSpace": "Kleurbereik", + "MediaInfoVideoRange": "Videobereik", + "QuickConnect": "Quickconnect", + "LabelQuickConnectCode": "Quickconnect code:", + "EnableAutoCast": "Stel in als standaard", + "ButtonActivate": "Activeer", + "Authorize": "Geef toestemming" } From 6d30b95738182add1837631eb782d74856bd7bf8 Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Wed, 23 Sep 2020 12:28:23 +0000 Subject: [PATCH 139/365] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index ed3dfceab3..49f1057789 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -1432,5 +1432,6 @@ "EnableQuickConnect": "இந்த சேவையகத்தில் விரைவான இணைப்பை இயக்கவும்", "ButtonUseQuickConnect": "விரைவு இணைப்பைப் பயன்படுத்தவும்", "ButtonActivate": "செயல்படுத்து", - "Authorize": "அதிகாரமளி" + "Authorize": "அதிகாரமளி", + "EnableAutoCast": "இயல்புநிலைக்கு அமை" } From b2b09a72cf08969439b562d10fa757b43bae6cfd Mon Sep 17 00:00:00 2001 From: Juan Sanchez Date: Wed, 23 Sep 2020 18:47:55 +0000 Subject: [PATCH 140/365] Translated using Weblate (Spanish (Mexico)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/es_MX/ --- src/strings/es-mx.json | 40 +++++++++++++++++++++++++--------------- 1 file changed, 25 insertions(+), 15 deletions(-) diff --git a/src/strings/es-mx.json b/src/strings/es-mx.json index 1d0a81df4e..057bc51998 100644 --- a/src/strings/es-mx.json +++ b/src/strings/es-mx.json @@ -22,7 +22,7 @@ "AllowMediaConversionHelp": "Permitir o denegar acceso a la función de convertir medios.", "AllowOnTheFlySubtitleExtraction": "Permitir la extracción de subtítulos sobre la marcha", "AllowOnTheFlySubtitleExtractionHelp": "Los subtítulos incrustados pueden extraerse de los videos y entregarse a los clientes en texto plano para ayudar a evitar la transcodificación de video. En algunos sistemas, esto puede tardar mucho tiempo y provocar que la reproducción de video se detenga durante el proceso de extracción. Deshabilite esta opción para que los subtítulos incrustados se graben con transcodificación de video cuando no estén soportados de forma nativa por el dispositivo cliente.", - "AllowRemoteAccess": "Permitir conexiones remotas a este servidor Jellyfin.", + "AllowRemoteAccess": "Permitir conexiones remotas a este servidor.", "AllowRemoteAccessHelp": "Si no se marca, se bloquearán todas las conexiones remotas.", "AllowedRemoteAddressesHelp": "Lista separada por comas de direcciones IP/máscaras de red para las redes a las que se les permitirá conectarse remotamente. Si se deja en blanco, se les permitirá a todas las direcciones remotas.", "AlwaysPlaySubtitles": "Siempre reproducir", @@ -106,7 +106,7 @@ "ColorTransfer": "Transferencia de color", "CommunityRating": "Calificación de la comunidad", "Composer": "Compositor", - "ConfigureDateAdded": "Configura cómo se determina la fecha de adición en el panel de control del servidor Jellyfin en la configuración de la biblioteca", + "ConfigureDateAdded": "Configura cómo se determina la fecha de adición en el panel de control en la configuración de la biblioteca.", "ConfirmDeleteImage": "¿Eliminar imagen?", "ConfirmDeleteItem": "Eliminar este elemento lo eliminará tanto del sistema como de tu biblioteca de medios. ¿Estás seguro de querer continuar?", "ConfirmDeleteItems": "Eliminar estos elementos los eliminará tanto del sistema como de tu biblioteca de medios. ¿Estás seguro de querer continuar?", @@ -137,8 +137,8 @@ "DetectingDevices": "Detectando dispositivos", "DeviceAccessHelp": "Esto solo se aplica a los dispositivos que pueden ser identificados de manera única y no impedirá el acceso desde navegadores. Filtrar el acceso a los dispositivos de los usuarios les impedirá usar nuevos dispositivos hasta que hayan sido aprobados aquí.", "DirectPlaying": "Reproducción directa", - "DirectStreamHelp1": "El medio es compatible con el dispositivo en cuanto a la resolución y tipo de medio (H.264, AC3, etc.), pero está en un contenedor de archivo incompatible (mkv, avi, wmv, etc.). El video será reempaquetado sobre la marcha antes de transmitirlo al dispositivo.", - "DirectStreamHelp2": "Transmitir directamente un archivo usa muy poco poder de procesamiento sin ninguna perdida en la calidad de video.", + "DirectStreamHelp1": "El medio es compatible con el dispositivo en cuanto a la resolución y tipo de medio (H.264, AC3, etc.), pero está en un contenedor de archivo incompatible (mkv, avi, wmv, etc.). El video será reempaquetado en tiempo real antes de transmitirlo al dispositivo.", + "DirectStreamHelp2": "Transmitir directamente un archivo usa muy poco poder de procesamiento con una pérdida mínima en la calidad de video.", "DirectStreaming": "Transmisión directa", "Directors": "Directores", "Disc": "DIsco", @@ -179,10 +179,10 @@ "EndsAtValue": "Termina a las {0}", "Episodes": "Episodios", "ErrorAddingListingsToSchedulesDirect": "Hubo un error agregando la programación de tu cuenta de Schedules Direct. Schedules Direct solo permite un numero limitado de programaciones por cuenta. Tal vez necesites acceder al sitio web de Schedules Direct y eliminar otras programaciones de tu cuenta antes de continuar.", - "ErrorAddingMediaPathToVirtualFolder": "Hubo un error agregando la ruta de medios. Por favor, asegúrate de que la ruta es válida y que el proceso del servidor Jellyfin tiene acceso a ese destino.", + "ErrorAddingMediaPathToVirtualFolder": "Hubo un error agregando la ruta de medios. Por favor, asegúrate de que la ruta es válida y que el servidor Jellyfin tiene acceso a ese destino.", "ErrorAddingTunerDevice": "Hubo un error al agregar el dispositivo sintonizador. Por favor, asegúrate de que esté disponible e inténtalo de nuevo.", "ErrorAddingXmlTvFile": "Hubo un error accediendo al archivo XMLTV. Por favor, asegúrate de que el archivo existe e inténtalo de nuevo.", - "ErrorDeletingItem": "Hubo un error eliminando el elemento del servidor Jellyfin. Por favor, verifica que el servidor Jellyfin tiene permisos de escritura en la carpeta del medio e inténtalo de nuevo.", + "ErrorDeletingItem": "Hubo un error eliminando el elemento del servidor. Por favor, verifica que Jellyfin tiene permisos de escritura en la carpeta del medio e inténtalo de nuevo.", "ErrorGettingTvLineups": "Hubo un error al descargar la programación de TV. Por favor, asegúrate de que tu información sea correcta e inténtalo de nuevo.", "ErrorStartHourGreaterThanEnd": "La hora de finalización debe ser mayor que la hora de inicio.", "ErrorPleaseSelectLineup": "Por favor, selecciona una programación e inténtalo de nuevo. Si no hay disponible ninguna, entonces, por favor, verifica que tu nombre de usuario, contraseña, y código postal sean correctos.", @@ -231,7 +231,7 @@ "HeaderAllowMediaDeletionFrom": "Permitir eliminación de medios de", "HeaderApiKey": "Clave API", "HeaderApiKeys": "Claves API", - "HeaderApiKeysHelp": "Las aplicaciones externas deben tener una clave API para poder comunicarse con el servidor Jellyfin. Las claves se emiten al iniciar sesión con una cuenta Jellyfin, o al otorgar manualmente una clave a la aplicación.", + "HeaderApiKeysHelp": "Las aplicaciones externas deben tener una clave API para poder comunicarse con el servidor. Las claves se emiten al iniciar sesión con una cuenta de usuario normal, o al otorgar manualmente una clave a la aplicación.", "HeaderAppearsOn": "Aparece en", "HeaderAudioBooks": "Audiolibros", "HeaderAudioSettings": "Configuración de audio", @@ -291,7 +291,7 @@ "HeaderInstantMix": "Mix instantáneo", "HeaderKeepRecording": "Conservar grabación", "HeaderKeepSeries": "Conservar serie", - "HeaderKodiMetadataHelp": "Para habilitar o deshabilitar los metadatos NFO, edite una biblioteca en la configuración de bibliotecas de Jellyfin y ubica la sección grabadores de metadatos.", + "HeaderKodiMetadataHelp": "Para habilitar o deshabilitar los metadatos NFO, edita una biblioteca y ubica la sección grabadores de metadatos.", "HeaderLatestEpisodes": "Últimos episodios", "HeaderLatestMedia": "Últimos medios", "HeaderLatestMovies": "Últimas películas", @@ -332,7 +332,7 @@ "HeaderPluginInstallation": "Instalación de complemento", "HeaderPreferredMetadataLanguage": "Idioma preferido para los metadatos", "HeaderProfileInformation": "Información del perfil", - "HeaderProfileServerSettingsHelp": "Estos valores controlan como el servidor Jellyfin se presentará al dispositivo.", + "HeaderProfileServerSettingsHelp": "Estos valores controlan como el servidor se presentará al dispositivo.", "HeaderRecentlyPlayed": "Reproducido recientemente", "HeaderRecordingOptions": "Opciones de grabación", "HeaderRecordingPostProcessing": "Post procesado de las grabaciones", @@ -398,8 +398,8 @@ "HttpsRequiresCert": "Para habilitar las conexiones seguras, necesitarás proporcionar un certificado SSL de confianza, como el de Let's Encrypt. Por favor, proporciona un certificado o desactiva las conexiones seguras.", "Identify": "Identificar", "Images": "Imágenes", - "ImportFavoriteChannelsHelp": "Si se habilita, solo los canales marcados como favoritos en el dispositivo sintonizador serán importados.", - "ImportMissingEpisodesHelp": "Si se habilita, la información sobre los episodios faltantes se importará a la base de datos de Jellyfin y se mostrarán dentro de las temporadas y series. Esto puede causar escaneos de biblioteca significativamente más largos.", + "ImportFavoriteChannelsHelp": "Solo los canales marcados como favoritos en el dispositivo sintonizador serán importados.", + "ImportMissingEpisodesHelp": "La información sobre los episodios faltantes se importará a la base de datos y se mostrarán dentro de las temporadas y series. Esto puede causar escaneos de biblioteca significativamente más largos.", "InstallingPackage": "Instalando {0} (versión {1})", "InstantMix": "Mix instantáneo", "ItemCount": "{0} elementos", @@ -427,7 +427,7 @@ "LabelAppName": "Nombre de la aplicación", "LabelAppNameExample": "Ejemplo: Sickbeard, Sonarr", "LabelArtists": "Artistas:", - "LabelArtistsHelp": "Separar múltiples empleando ;", + "LabelArtistsHelp": "Separa artistas múltiples empleando punto y coma (;).", "LabelAudioLanguagePreference": "Idioma preferido de audio:", "LabelAutomaticallyRefreshInternetMetadataEvery": "Actualizar automáticamente los metadatos desde Internet:", "LabelBindToLocalNetworkAddress": "Vincular a la dirección de red local:", @@ -1153,7 +1153,7 @@ "ButtonInfo": "Info", "ButtonOk": "OK", "ButtonTrailer": "Trailer", - "AuthProviderHelp": "Selecciona un proveedor de autenticación que se utilizará para autenticar la contraseña de este usuario.", + "AuthProviderHelp": "Selecciona un proveedor de autenticación que se utilizará para confirmar la contraseña de este usuario.", "Director": "Director", "Extras": "Extras", "General": "General", @@ -1269,7 +1269,7 @@ "Album": "Álbum", "Yadif": "YADIF", "LabelDeinterlaceMethod": "Método de desentrelazado:", - "DeinterlaceMethodHelp": "Seleccione el método de desentrelazado que se usará al transcodificar contenido entrelazado.", + "DeinterlaceMethodHelp": "Seleccione el método de desentrelazado que se usará al transcodificar contenido entrelazado. Cuando se habilite hardware con soporte de aceleración por hardware, se utilizará este.", "Filter": "Filtro", "New": "Nuevo", "LabelLibraryPageSizeHelp": "Establece el número de elementos a mostrar en una página de biblioteca. Establece en 0 para deshabilitar el paginado.", @@ -1343,5 +1343,15 @@ "ClearQueue": "Limpiar cola", "StopPlayback": "Detener reproducción", "Writers": "Escritores", - "ViewAlbumArtist": "Ver el artista del album" + "ViewAlbumArtist": "Ver el artista del album", + "LabelAlbumArtMaxResHelp": "Máxima resolución del arte del álbum expuesto via con la propiedad upnp:albumArtURI.", + "KnownProxiesHelp": "Lista de direcciones de IP separadas por comas de todos los proxies conocidos que se utilizan para tu instancia de Jellyfin. Esto es necesario para utilizar correctamente los encabezados X-Forwarded-For. Requiere reiniciar despues de grabar.", + "Image": "Imagen", + "Other": "Otros", + "EnableQuickConnect": "Habilitar conexión rápida en este servidor", + "EnableAutoCast": "Configurar por defecto", + "Data": "Datos", + "ButtonUseQuickConnect": "Usar conexión rápida.", + "ButtonActivate": "Activar", + "Authorize": "Autorizar" } From 09220510e6053ddc1627405ff401627affde8b15 Mon Sep 17 00:00:00 2001 From: Juan Sanchez Date: Wed, 23 Sep 2020 19:01:11 +0000 Subject: [PATCH 141/365] Translated using Weblate (Spanish (Mexico)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/es_MX/ --- src/strings/es-mx.json | 139 ++++++++++++++++++++++++++++++----------- 1 file changed, 102 insertions(+), 37 deletions(-) diff --git a/src/strings/es-mx.json b/src/strings/es-mx.json index 057bc51998..8fc8a0abd9 100644 --- a/src/strings/es-mx.json +++ b/src/strings/es-mx.json @@ -154,7 +154,7 @@ "Download": "Descargar", "DownloadsValue": "{0} descargas", "DrmChannelsNotImported": "Los canales con DRM no serán importados.", - "DropShadow": "Sombra paralela", + "DropShadow": "Sombra inferior", "EasyPasswordHelp": "Tu código PIN fácil se utiliza para el acceso sin conexión en los clientes soportados y también puede utilizarse para acceder fácilmente cuando se está en la misma red.", "Edit": "Editar", "EditImages": "Editar imágenes", @@ -431,10 +431,10 @@ "LabelAudioLanguagePreference": "Idioma preferido de audio:", "LabelAutomaticallyRefreshInternetMetadataEvery": "Actualizar automáticamente los metadatos desde Internet:", "LabelBindToLocalNetworkAddress": "Vincular a la dirección de red local:", - "LabelBindToLocalNetworkAddressHelp": "Opcional. Sobrescribe la dirección IP local a la que se vincula el servidor http. Si se deja vacío, el servidor se vinculará a todas las direcciones disponibles. Cambiar este valor requiere reiniciar el servidor Jellyfin.", + "LabelBindToLocalNetworkAddressHelp": "Ignora la dirección IP local del servidor http. Si se deja vacío, el servidor se vinculará a todas las direcciones disponibles. Cambiar este valor requiere reiniciar el servidor.", "LabelBirthDate": "Fecha de nacimiento:", "LabelBirthYear": "Año de nacimiento:", - "LabelBlastMessageInterval": "Intervalo de mensajes de vida (segundos)", + "LabelBlastMessageInterval": "Intervalo de mensajes de vida.", "LabelBlastMessageIntervalHelp": "Determina la duración en segundos del intervalo entre mensajes de vida.", "LabelBlockContentWithTags": "Bloquear elementos con las etiquetas:", "LabelBurnSubtitles": "Quemar subtítulos:", @@ -454,7 +454,7 @@ "LabelCustomCertificatePath": "Ruta del certificado SSL personalizado:", "LabelCustomCertificatePathHelp": "Ruta a un archivo PKCS #12 que contiene un certificado y una clave privada para habilitar el soporte TLS en un dominio personalizado.", "LabelCustomCss": "CSS personalizado:", - "LabelCustomCssHelp": "Aplica tu propio estilo personalizado a la interfaz web.", + "LabelCustomCssHelp": "Aplica tus propio estilos personalizados a la interfaz web.", "LabelCustomDeviceDisplayNameHelp": "Proporcione un nombre personalizado para mostrar o déjalo vacío para usar el nombre reportado por el dispositivo.", "LabelCustomRating": "Calificación personalizada:", "LabelDateAdded": "Fecha de adición:", @@ -487,8 +487,8 @@ "LabelEnableAutomaticPortMapHelp": "Redirecciona automáticamente los puertos públicos de tu router a los puertos locales de tu servidor a través de UPnP. Esto puede no funcionar con algunos modelos de routers o configuraciones de red. Los cambios no se aplicarán hasta después de reiniciar el servidor.", "LabelEnableBlastAliveMessages": "Bombardeo de mensajes de vida", "LabelEnableBlastAliveMessagesHelp": "Habilita esto si el servidor no es detectado de manera confiable por otros dispositivos UPnP en tu red.", - "LabelEnableDlnaClientDiscoveryInterval": "Intervalo de descubrimiento de clientes (segundos)", - "LabelEnableDlnaClientDiscoveryIntervalHelp": "Determina la duración en segundos entre búsquedas SSDP realizadas por Jellyfin.", + "LabelEnableDlnaClientDiscoveryInterval": "Intervalo de descubrimiento de clientes.", + "LabelEnableDlnaClientDiscoveryIntervalHelp": "Determina la duración en segundos entre búsquedas SSDP.", "LabelEnableDlnaDebugLogging": "Habilitar el registro de depuración de DLNA", "LabelEnableDlnaDebugLoggingHelp": "Crea grandes archivos de registro y solo se debe usar cuando se requiera para solucionar problemas.", "LabelEnableDlnaPlayTo": "Habilitar Reproducir En mediante DLNA", @@ -497,7 +497,7 @@ "LabelEnableDlnaServerHelp": "Permite a dispositivos UPnP en tu red explorar y reproducir contenido.", "LabelEnableHardwareDecodingFor": "Habilitar decodificación por hardware para:", "LabelEnableRealtimeMonitor": "Activar monitoreo en tiempo real", - "LabelEnableRealtimeMonitorHelp": "Los cambios en los archivos serán procesados inmediatamente, en los sistemas de archivo soportados.", + "LabelEnableRealtimeMonitorHelp": "Los cambios en los archivos serán procesados inmediatamente en los sistemas de archivo soportados.", "LabelEnableSingleImageInDidlLimit": "Limitar a una sola imagen incrustada", "LabelEnableSingleImageInDidlLimitHelp": "Algunos dispositivos no se renderizarán correctamente si se incrustan varias imágenes en DIDL.", "LabelEndDate": "Fecha de fin:", @@ -513,7 +513,7 @@ "LabelForgotPasswordUsernameHelp": "Introduce tu nombre de usuario, si lo recuerdas.", "LabelFormat": "Formato:", "LabelFriendlyName": "Nombre amistoso:", - "LabelServerNameHelp": "Este nombre se usará para identificar el servidor y se predeterminará al nombre de la computadora del servidor.", + "LabelServerNameHelp": "Este nombre se usará para identificar el servidor y se predeterminará al nombre de host del servidor.", "LabelGroupMoviesIntoCollections": "Agrupar películas en colecciones", "LabelGroupMoviesIntoCollectionsHelp": "Cuando se muestran listados de películas, las películas que pertenecen a una colección serán mostradas agrupadas en un solo artículo.", "LabelH264Crf": "CRF de codificación H264:", @@ -523,7 +523,7 @@ "LabelHomeNetworkQuality": "Calidad en red local:", "LabelHomeScreenSectionValue": "Sección {0} de la pantalla de inicio:", "LabelHttpsPort": "Número de puerto local HTTPS:", - "LabelHttpsPortHelp": "El número de puerto TCP al que el servidor HTTPS de Jellyfin debería enlazar.", + "LabelHttpsPortHelp": "El número de puerto TCP al del servidor HTTPS.", "LabelIconMaxHeight": "Altura máxima del ícono:", "LabelIconMaxWidth": "Ancho máximo del ícono:", "LabelIdentificationFieldHelp": "Una subcadena indiferente a las mayúsculas y minúsculas o una expresión regular (regex).", @@ -549,7 +549,7 @@ "LabelLanguage": "Idioma:", "LabelLineup": "Programación:", "LabelLocalHttpServerPortNumber": "Número de puerto local HTTP:", - "LabelLocalHttpServerPortNumberHelp": "El número de puerto TCP al que el servidor HTTP de Jellyfin debería enlazar.", + "LabelLocalHttpServerPortNumberHelp": "El número de puerto TCP del servidor HTTP.", "LabelLockItemToPreventChanges": "Bloquear este elemento para evitar cambios futuros", "LabelLoginDisclaimer": "Aviso legal:", "LabelLoginDisclaimerHelp": "Un mensaje que se mostrará en la parte inferior de la página de inicio de sesión.", @@ -591,7 +591,7 @@ "LabelMovieCategories": "Categorías de películas:", "LabelMoviePrefix": "Prefijo de la película:", "LabelMoviePrefixHelp": "Si un prefijo es aplicado al título de las películas, introdúcelo aquí para que el servidor pueda manejarlo correctamente.", - "LabelMovieRecordingPath": "Ruta para las grabaciones de películas (opcional):", + "LabelMovieRecordingPath": "Ruta para las grabaciones de películas:", "LabelMusicStreamingTranscodingBitrate": "Velocidad de bits de transcodificación de música:", "LabelMusicStreamingTranscodingBitrateHelp": "Especifica la velocidad de bits máxima al transmitir música.", "LabelName": "Nombre:", @@ -603,8 +603,8 @@ "LabelNumber": "Número:", "LabelNumberOfGuideDays": "Número de días de datos de la programación a descargar:", "LabelNumberOfGuideDaysHelp": "Descargar más días de datos de programación permite programar con mayor anticipación y ver más listados, pero tomará más tiempo en descargar. Auto hará la selección basada en el número de canales.", - "LabelOptionalNetworkPath": "(Opcional) Carpeta de red compartida:", - "LabelOptionalNetworkPathHelp": "Si esta carpeta es compartida en su red, proveer la ruta del recurso compartido de red puede permitir a las aplicaciones Jellyfin en otros dispositivos acceder a los archivos de medios directamente. Por ejemplo, {0} o {1}.", + "LabelOptionalNetworkPath": "Carpeta de red compartida:", + "LabelOptionalNetworkPathHelp": "Si esta carpeta es compartida en su red, proveer la ruta del recurso compartido de red puede permitir a los clientes en otros dispositivos acceder a los archivos de medios directamente. Por ejemplo, {0} o {1}.", "LabelOriginalAspectRatio": "Relación de aspecto original:", "LabelOriginalTitle": "Título original:", "LabelOverview": "Resumen:", @@ -644,7 +644,7 @@ "LabelReleaseDate": "Fecha de estreno:", "LabelRemoteClientBitrateLimit": "Limite de velocidad de bits para la transmisión por Internet (Mbps):", "LabelRemoteClientBitrateLimitHelp": "Un límite opcional de velocidad de bits por transmisión para todos los dispositivos fuera de la red. Esto es útil para evitar que los dispositivos soliciten una tasa de bits más alta de la que puede manejar tu conexión a Internet. Esto puede provocar un aumento de la carga de la CPU en el servidor para transcodificar los videos sobre la marcha a una velocidad de bits inferior.", - "LabelRuntimeMinutes": "Duración (minutos):", + "LabelRuntimeMinutes": "Duración:", "LabelSaveLocalMetadata": "Guardar las ilustraciones en las carpetas de los medios", "LabelSaveLocalMetadataHelp": "Guardar ilustraciones en las carpetas de los medios los colocará en un lugar donde se pueden editar fácilmente.", "LabelScheduledTaskLastRan": "Última ejecución {0}, tomando {1}.", @@ -656,7 +656,7 @@ "LabelSelectVersionToInstall": "Seleccionar versión a instalar:", "LabelSendNotificationToUsers": "Enviar la notificación a:", "LabelSerialNumber": "Número de serie", - "LabelSeriesRecordingPath": "Ruta para las grabaciones de series (opcional):", + "LabelSeriesRecordingPath": "Ruta para las grabaciones de series:", "LabelServerHost": "Servidor:", "LabelServerHostHelp": "192.168.1.100:8096 o https://miservidor.com", "LabelSimultaneousConnectionLimit": "Límite de transmisiones simultáneas:", @@ -772,13 +772,13 @@ "MessageConfirmProfileDeletion": "¿Estás seguro de querer eliminar este perfil?", "MessageConfirmRecordingCancellation": "¿Cancelar grabación?", "MessageConfirmRemoveMediaLocation": "¿Estás seguro de querer remover esta ubicación?", - "MessageConfirmRestart": "¿Estás seguro de que deseas reiniciar el servidor Jellyfin?", - "MessageConfirmRevokeApiKey": "¿Estás seguro de querer revocar esta clave API? La conexión de la aplicación con el servidor Jellyfin será terminada abruptamente.", + "MessageConfirmRestart": "¿Estás seguro de que deseas reiniciar Jellyfin?", + "MessageConfirmRevokeApiKey": "¿Estás seguro de querer revocar esta clave API? La conexión de la aplicación con el servidor será terminada abruptamente.", "MessageConfirmShutdown": "¿Estás seguro de que deseas apagar el servidor?", "MessageContactAdminToResetPassword": "Por favor, contacta a tu administrador para restablecer tu contraseña.", "MessageCreateAccountAt": "Crear una cuenta en {0}", "MessageDeleteTaskTrigger": "¿Estás seguro de querer eliminar este disparador de tarea?", - "MessageDirectoryPickerBSDInstruction": "Para BSD, quizás necesites configurar el almacenamiento dentro de tu «FreeNAS Jail» de manera que permita a Jellyfin accederlo.", + "MessageDirectoryPickerBSDInstruction": "Para BSD, quizás necesites configurar el almacenamiento dentro de tu «FreeNAS Jail» de manera que permita a Jellyfin acceder a tus medios.", "MessageDirectoryPickerLinuxInstruction": "Para Linux en Arch Linux, CentOS, Debian, Fedora, openSUSE o Ubuntu, debes conceder al usuario del servicio al menos permisos de lectura a tus ubicaciones de almacenamiento.", "MessageDownloadQueued": "Descarga puesta en la cola.", "MessageEnablingOptionLongerScans": "Habilitar esta opción podría resultar en escaneos de bibliotecas significativamente más largos.", @@ -800,7 +800,7 @@ "MessagePleaseEnsureInternetMetadata": "Por favor, asegúrate de que la descarga de metadatos de Internet está habilitada.", "MessagePleaseWait": "Por favor, espera. Esto podría tomar un minuto.", "MessagePluginConfigurationRequiresLocalAccess": "Para configurar este complemento por favor, inicia sesión en tu servidor local directamente.", - "MessagePluginInstallDisclaimer": "Los complementos desarrollados por miembros de la comunidad Jellyfin son una gran forma de mejorar tu experiencia con Jellyfin con características y beneficios adicionales. Antes de instalar, por favor, conoce el impacto que pueden ocasionar en tu servidor Jellyfin, tales como escaneo más largo de bibliotecas, procesamiento en segundo plano adicional y reducción de la estabilidad del sistema.", + "MessagePluginInstallDisclaimer": "Los complementos desarrollados por miembros de la comunidad son una gran forma de mejorar tu experiencia con características y beneficios adicionales. Antes de instalar, por favor, conoce el impacto que pueden ocasionar en tu servidor, tales como escaneo más largo de bibliotecas, procesamiento en segundo plano adicional y reducción de la estabilidad del sistema.", "MessageReenableUser": "Ver abajo para volver a habilitar", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Las siguientes ubicaciones de medios se removerán de tu biblioteca:", "MessageUnableToConnectToServer": "No podemos conectarnos al servidor seleccionado en este momento. Por favor, asegúrate de que está funcionando e inténtalo de nuevo.", @@ -852,7 +852,7 @@ "OptionAllowLinkSharingHelp": "Solo son compartidas páginas web que contienen información sobre los medios. Los archivos de medios nunca son compartidos públicamente. Los compartidos tienen un límite de tiempo y expirarán después de {0} días.", "OptionAllowManageLiveTv": "Permitir gestión de grabación de TV en vivo", "OptionAllowMediaPlayback": "Permitir reproducción de medios", - "OptionAllowMediaPlaybackTranscodingHelp": "Restringir el acceso a la transcodificación podría causar fallas en la reproducción en las aplicaciones Jellyfin debido a los formatos de medios no soportados.", + "OptionAllowMediaPlaybackTranscodingHelp": "Restringir el acceso a la transcodificación podría causar fallas en la reproducción en los clientes debido a los formatos de medios no soportados.", "OptionAllowRemoteControlOthers": "Permitir control remoto de otros usuarios", "OptionAllowRemoteSharedDevices": "Permitir control remoto de dispositivos compartidos", "OptionAllowRemoteSharedDevicesHelp": "Los dispositivos DLNA se considerarán compartidos hasta que un usuario comience a controlarlos.", @@ -861,7 +861,7 @@ "OptionAllowVideoPlaybackRemuxing": "Permitir reproducción de video que requiera conversión sin recodificar", "OptionAllowVideoPlaybackTranscoding": "Permitir la reproducción de video que requiera de transcodificación", "OptionAutomaticallyGroupSeries": "Fusionar automáticamente series esparcidas a través de múltiples carpetas", - "OptionAutomaticallyGroupSeriesHelp": "Si se habilita, las series que se reparten a través de múltiples carpetas dentro de esta biblioteca serán fusionadas en una sola serie.", + "OptionAutomaticallyGroupSeriesHelp": "Las series que se reparten a través de múltiples carpetas dentro de esta biblioteca serán fusionadas en una sola serie.", "OptionCommunityRating": "Calificación de la comunidad", "OptionCriticRating": "Calificación de los críticos", "OptionCustomUsers": "Personalizado", @@ -871,12 +871,12 @@ "OptionDateAddedImportTime": "Usar la fecha de escaneo en la biblioteca", "OptionDatePlayed": "Fecha de reproducción", "OptionDisableUser": "Desactivar este usuario", - "OptionDisableUserHelp": "Si se desactiva, el servidor no aceptará conexiones de este usuario. Las conexiones existentes serán finalizadas abruptamente.", + "OptionDisableUserHelp": "El servidor no aceptará conexiones de este usuario. Las conexiones existentes serán finalizadas abruptamente.", "OptionDislikes": "No me gusta", "OptionDisplayFolderView": "Mostrar una vista de carpetas para mostrar las carpetas simples de los medios", "OptionDisplayFolderViewHelp": "Muestra las carpetas junto con sus otras bibliotecas de medios. Esto puede ser útil si deseas tener una vista simple de carpeta.", "OptionDownloadImagesInAdvance": "Descargar las imágenes con antelación", - "OptionDownloadImagesInAdvanceHelp": "Por defecto, la mayoría de las imágenes solo son descargadas cuando son solicitadas por una aplicación Jellyfin. Habilita esta opción para descargar todas las imágenes por adelantado, a medida que se agreguen nuevos medios. Esto podría causar escaneos de bibliotecas significativamente más largos.", + "OptionDownloadImagesInAdvanceHelp": "Por defecto, la mayoría de las imágenes solo son descargadas cuando son solicitadas por un cliente. Habilita esta opción para descargar todas las imágenes por adelantado, a medida que se agreguen nuevos medios. Esto podría causar escaneos de bibliotecas significativamente más largos.", "OptionDvd": "DVD", "OptionEmbedSubtitles": "Incrustar dentro del contenedor", "OptionEnableAccessFromAllDevices": "Habilitar acceso desde todos los dispositivos", @@ -898,7 +898,7 @@ "OptionHideUserFromLoginHelp": "Útil para cuentas privadas o de administrador ocultas. El usuario tendrá que iniciar sesión manualmente introduciendo su nombre de usuario y contraseña.", "OptionHlsSegmentedSubtitles": "Subtítulos segmentados HLS", "OptionIgnoreTranscodeByteRangeRequests": "Ignorar solicitudes de transcodificación de rango de bytes", - "OptionIgnoreTranscodeByteRangeRequestsHelp": "Si se habilita, estas solicitudes serán honradas pero se ignorará el encabezado de rango de bytes.", + "OptionIgnoreTranscodeByteRangeRequestsHelp": "Estas solicitudes serán honradas pero se ignorará el encabezado de rango de bytes.", "OptionImdbRating": "Calificación de IMDb", "OptionLikes": "Me gusta", "OptionMax": "Máximo", @@ -907,9 +907,9 @@ "OptionOnInterval": "En un intervalo", "OptionParentalRating": "Clasificación parental", "OptionPlainStorageFolders": "Mostrar todas las carpetas como carpetas de almacenamiento simples", - "OptionPlainStorageFoldersHelp": "Si se habilita, todos las carpetas serán representadas en DIDL como «object.container.storageFolder» en lugar de un tipo más específico, como «object.container.person.musicArtist».", + "OptionPlainStorageFoldersHelp": "Todos las carpetas serán representadas en DIDL como «object.container.storageFolder» en lugar de un tipo más específico, como «object.container.person.musicArtist».", "OptionPlainVideoItems": "Mostrar todos los videos como elementos de video simples", - "OptionPlainVideoItemsHelp": "Si se habilita, todos los videos serán representados en DIDL como «object.item.videoItem» en lugar de un tipo más específico, como «object.item.videoItem.movie».", + "OptionPlainVideoItemsHelp": "Todos los videos serán representados en DIDL como «object.item.videoItem» en lugar de un tipo más específico, como «object.item.videoItem.movie».", "OptionPlayCount": "Contador de reproducciones", "OptionPremiereDate": "Fecha de estreno", "OptionProtocolHls": "Transmisión en vivo por HTTP", @@ -921,7 +921,7 @@ "OptionResElement": "Elemento res", "OptionResumable": "Reanudable", "OptionSaveMetadataAsHidden": "Guardar metadatos e imágenes como archivos ocultos", - "OptionSaveMetadataAsHiddenHelp": "Cambiar esto se aplicará a los nuevos metadatos guardados en el futuro. Los archivos de metadatos existentes serán actualizados la próxima vez que sean guardados por el servidor Jellyfin.", + "OptionSaveMetadataAsHiddenHelp": "Cambiar esto se aplicará a los nuevos metadatos guardados en el futuro. Los archivos de metadatos existentes serán actualizados la próxima vez que sean guardados por el servidor.", "OptionSpecialEpisode": "Especiales", "OptionSubstring": "Subcadena", "OptionTrackName": "Nombre de la pista", @@ -959,9 +959,9 @@ "PleaseAddAtLeastOneFolder": "Por favor, agrega al menos una carpeta a esta biblioteca dando clic al botón Agregar.", "PleaseConfirmPluginInstallation": "Por favor, haz clic en OK para confirmar que has leído lo que se encuentra arriba y que deseas proceder con la instalación del complemento.", "PleaseEnterNameOrId": "Por favor, introduce un nombre o ID externo.", - "PleaseRestartServerName": "Por favor, reinicia el servidor Jellyfin - {0}.", + "PleaseRestartServerName": "Por favor, reinicia el servidor {0}.", "PleaseSelectTwoItems": "Por favor, selecciona al menos dos elementos.", - "MessagePluginInstalled": "El complemento ha sido instalado con éxito. El servidor Jellyfin necesitará ser reiniciado para que los cambios surtan efecto.", + "MessagePluginInstalled": "El complemento ha sido instalado con éxito. El servidor necesitará ser reiniciado para que los cambios surtan efecto.", "PreferEmbeddedTitlesOverFileNames": "Preferir títulos incrustados a los nombres de archivo", "PreferEmbeddedTitlesOverFileNamesHelp": "Esto determina el título mostrado por defecto cuando no hay disponibles metadatos en Internet o localmente.", "Premiere": "Estreno", @@ -986,7 +986,7 @@ "RecordingScheduled": "Grabación programada.", "Recordings": "Grabaciones", "Refresh": "Actualizar", - "RefreshDialogHelp": "Los metadatos son actualizados basándose en las configuraciones y servicios de Internet que estén activados en el panel de control de tu servidor Jellyfin.", + "RefreshDialogHelp": "Los metadatos son actualizados basándose en las configuraciones y servicios de Internet que estén activados en el panel de control del servidor.", "RefreshMetadata": "Actualizar metadatos", "RefreshQueued": "Actualización puesta en la cola.", "ReleaseDate": "Fecha de estreno", @@ -1023,10 +1023,10 @@ "SeriesRecordingScheduled": "Grabación de series programadas.", "SeriesSettings": "Configuración de la serie", "SeriesYearToPresent": "{0} - Actualidad", - "ServerNameIsRestarting": "El servidor Jellyfin - {0} se está reiniciando.", - "ServerNameIsShuttingDown": "El servidor Jellyfin - {0} se está apagando.", - "ServerRestartNeededAfterPluginInstall": "El servidor Jellyfin necesitará reiniciarse después de instalar un complemento.", - "ServerUpdateNeeded": "Este servidor Jellyfin necesita ser actualizado. Para descargar la última versión, por favor, visita {0}", + "ServerNameIsRestarting": "El servidor {0} se está reiniciando.", + "ServerNameIsShuttingDown": "El servidor {0} se está apagando.", + "ServerRestartNeededAfterPluginInstall": "Jellyfin necesitará reiniciarse después de instalar un complemento.", + "ServerUpdateNeeded": "Este servidor necesita ser actualizado. Para descargar la última versión, por favor, visita {0}", "Settings": "Configuración", "SettingsSaved": "Configuración guardada.", "SettingsWarning": "Cambiar estos valores podría causar inestabilidad o fallas de conexión. Si experimentas cualquier problema, recomendamos volver a los valores por defecto.", @@ -1241,7 +1241,7 @@ "LastSeen": "Ultima vez visto {0}", "PersonRole": "como {0}", "ListPaging": "{0}-{1} de {2}", - "WriteAccessRequired": "El servidor Jellyfin requiere permiso de escritura en esta carpeta. Por favor, asegúrate de tener acceso de escritura e inténtalo de nuevo.", + "WriteAccessRequired": "Jellyfin requiere permiso de escritura en esta carpeta. Por favor, asegúrate de tener acceso de escritura e inténtalo de nuevo.", "PathNotFound": "No se pudo encontrar la ruta. Por favor, asegúrate de que la ruta es válida e inténtalo de nuevo.", "Season": "Temporada", "PreferEmbeddedEpisodeInfosOverFileNames": "Preferir información del episodio incrustada a los nombres de archivo", @@ -1299,7 +1299,7 @@ "MessageSyncPlayGroupDoesNotExist": "Fallo al unirse al grupo porque éste no existe.", "MessageSyncPlayPlaybackPermissionRequired": "Permiso de reproducción requerido.", "MessageSyncPlayNoGroupsAvailable": "No hay grupos disponibles. Empieza a reproducir algo primero.", - "MessageSyncPlayGroupWait": "{0} está cargando...", + "MessageSyncPlayGroupWait": "{0} está cargando…", "MessageSyncPlayUserLeft": "{0} abandonó el grupo.", "MessageSyncPlayUserJoined": "{0} se ha unido al grupo.", "MessageSyncPlayDisabled": "SyncPlay deshabilitado.", @@ -1353,5 +1353,70 @@ "Data": "Datos", "ButtonUseQuickConnect": "Usar conexión rápida.", "ButtonActivate": "Activar", - "Authorize": "Autorizar" + "Authorize": "Autorizar", + "LabelMaxMuxingQueueSizeHelp": "Número máximo de paquetes que se pueden almacenar en búfer mientras se espera que se inicialicen todos los flujos. Intente aumentarlo si todavía encuentra el error \"Demasiados paquetes almacenados en búfer para el flujo de salida\" en los registros de ffmpeg. El valor recomendado es 2048.", + "LabelMaxMuxingQueueSize": "Tamaño máximo de la cola de muxing:", + "Preview": "Previsualización", + "SubtitleVerticalPositionHelp": "Número de línea donde aparece el texto. Los números positivos indican de arriba hacia abajo. Los números negativos indican de abajo hacia arriba.", + "LabelSubtitleVerticalPosition": "Posición vertical:", + "LabelTonemappingParamHelp": "Configuración del algoritmo de mapeo de tonos. Los valores recomendados y predeterminados son NaN. Generalmente déjelo en blanco.", + "LabelTonemappingParam": "Parámetros de mapeo de tonos:", + "LabelTonemappingPeakHelp": "Anule la señal/nominal/pico de referencia, con este valor. Útil cuando la información de picos incorporada en los metadatos de la pantalla no es confiable o cuando el mapeo de tonos de un rango más bajo a un rango más alto. El valor recomendado y predeterminado es 0.", + "LabelTonemappingPeak": "Pico de mapeo de tonos:", + "LabelTonemappingThresholdHelp": "Los parámetros del algoritmo de mapeo de tonos se ajustan con precisión para cada escena. Y se usa un umbral para detectar si la escena ha cambiado o no. Si la distancia entre el brillo promedio del cuadro actual y el promedio actual excede un valor de umbral, volveríamos a calcular el brillo promedio y pico de la escena. Los valores recomendados y predeterminados son 0.8 y 0.2.", + "LabelTonemappingThreshold": "Umbral de mapeo de tonos:", + "LabelTonemappingDesatHelp": "Aplique desaturación para reflejos que superen este nivel de brillo. Cuanto mayor sea el parámetro, más información de color se conservará. Esta configuración ayuda a evitar colores apagados de forma no natural para las altas luces, convirtiéndose (suavemente) en blanco. Esto hace que las imágenes se sientan más naturales, a costa de reducir la información sobre colores fuera de rango. Los valores recomendados y predeterminados son 0 y 0.5.", + "LabelTonemappingDesat": "Desaturación del mapa de tonos:", + "TonemappingRangeHelp": "Seleccione la gama de colores de salida. Auto es el mismo que el rango de entrada.", + "LabelTonemappingRange": "Rango de mapeo de tonos:", + "TonemappingAlgorithmHelp": "El mapeo de tonos se puede ajustar con precisión. Si no está familiarizado con estas opciones, mantenga las predeterminadas. El valor recomendado es Reinhard.", + "LabelTonemappingAlgorithm": "Selecciona el algoritmo de mapeo de tonos:", + "AllowTonemappingHelp": "El mapeo de tonos puede transformar el rango dinámico de un video de HDR a SDR mientras mantiene los detalles y colores de la imagen, que son información muy importante para representar la escena original. Actualmente solo funciona cuando se transcodifican videos con metadatos HDR10 o HLG integrados. Si la reproducción no es fluida o falla, considere apagar el decodificador de hardware.", + "EnableTonemapping": "Habilitar mapeo de tonos", + "LabelOpenclDeviceHelp": "Este es el dispositivo OpenCL que se utiliza para el mapeo de tonos. El lado izquierdo del punto es el número de plataforma y el lado derecho es el número de dispositivo en la plataforma. El valor predeterminado es 0.0. Se requiere el archivo de aplicación ffmpeg que contiene el método de aceleración de hardware OpenCL.", + "LabelOpenclDevice": "Dispositivo OpenCL:", + "LabelColorPrimaries": "Colores primarios:", + "LabelColorTransfer": "Transferencia de color:", + "LabelColorSpace": "Espacio de color:", + "LabelVideoRange": "Rango del video:", + "MediaInfoColorPrimaries": "Colores primarios", + "MediaInfoColorTransfer": "Transferencia de color", + "MediaInfoColorSpace": "Espacio de color", + "MediaInfoVideoRange": "Rango del video", + "Bwdif": "BWDIF", + "VideoAudio": "Audio del video", + "Video": "Video", + "UseDoubleRateDeinterlacingHelp": "Esta configuración utiliza la velocidad de campo al desentrelazar, a menudo denominado desentrelazado bob, que duplica la velocidad de fotogramas del video para proporcionar un movimiento completo como lo que vería al ver un video entrelazado en un televisor.", + "UseDoubleRateDeinterlacing": "Duplicar la velocidad de fotogramas al desentrelazar", + "ThumbCard": "Tarjeta miniatura", + "Subtitle": "Subtítulo", + "SpecialFeatures": "Características especiales", + "SelectServer": "Seleccionar servidor", + "Restart": "Reiniciar", + "ResetPassword": "Reinicializar contraseña", + "QuickConnectNotActive": "La conexión rápida no está habilitada en este servidor.", + "QuickConnectNotAvailable": "Pídele al administrador que habilite la conexión rápida.", + "QuickConnectInvalidCode": "Código de conexión rápida inválido.", + "QuickConnectDescription": "Para entrar con conexión rápida, selecciona el botón de Conexión rápida en el dispositivo desde donde intentas entrar e introduce el código que se muestra debajo.", + "QuickConnectDeactivated": "La conexión rápida fue desactivada antes de que la petición pudiera ser aprobada", + "QuickConnectAuthorizeFail": "Código de conexión rápida desconocido", + "QuickConnectAuthorizeSuccess": "Petición autorizada", + "QuickConnectAuthorizeCode": "Introduce el codigo {0} para entrar.", + "QuickConnectActivationSuccessful": "Activada exitosamente", + "QuickConnect": "Conexión rápida", + "Profile": "Perfil", + "PreviousTrack": "Regresar al previo", + "MessageGetInstalledPluginsError": "Ocurrió un error al tratar de obtener la lista de los complementos instalados.", + "MessagePluginInstallError": "Ocurrió un error al instalar el complemento.", + "PosterCard": "Tarjeta póster", + "Poster": "Póster", + "PlaybackRate": "Tasa de reproducción.", + "Photo": "Foto", + "NextTrack": "Saltar al siguiente", + "MusicVideos": "Videos musicales", + "LabelQuickConnectCode": "Código de conexión rápida:", + "LabelUnstable": "Inestable", + "LabelKnownProxies": "Proxies conocidos:", + "LabelIconMaxResHelp": "Resolución máxima de los íconos expuestos por medio de la propiedad upnp:icon.", + "LabelCurrentStatus": "Estatus actual:" } From 9deae848eb6df4c4e0cb247ff9eb42684f2854ca Mon Sep 17 00:00:00 2001 From: Tim Meier Date: Thu, 24 Sep 2020 05:56:42 +0000 Subject: [PATCH 142/365] Translated using Weblate (German) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/de/ --- src/strings/de.json | 44 ++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 40 insertions(+), 4 deletions(-) diff --git a/src/strings/de.json b/src/strings/de.json index d6104fba72..d7b1eb697f 100644 --- a/src/strings/de.json +++ b/src/strings/de.json @@ -1270,7 +1270,7 @@ "Yadif": "YADIF", "LabelLibraryPageSizeHelp": "Setzt die Anzahl der auf einer Seite angezeigten Objekte. Setze auf 0, um alle Elemente auf einer Seite anzuzeigen.", "LabelLibraryPageSize": "Bibliothek Seiten Größe:", - "DeinterlaceMethodHelp": "Wähle die Deinterlacing-Methode zum Transkodieren von Inhalten im Zeilensprungverfahren (Interlace). Sofern bei unterstützten Geräten Deinterlacing durch Hardwarebeschleunigung aktiviert ist, wird der Hardware-Deinterlacer anstelle dieser Einstellung verwendet.", + "DeinterlaceMethodHelp": "Wähle die Deinterlacing-Methode zum Transkodieren von Inhalten im Zeilensprungverfahren (Interlace). Sofern bei unterstützten Geräten Deinterlacing durch Hardwarebeschleunigung aktiviert ist, wird der Hardware-Deinterlacer anstelle dieser Einstellung verwendet.", "LabelDeinterlaceMethod": "Deinterlacing-Methode:", "UnsupportedPlayback": "Jellyfin kann keine DRM-geschützten Inhalte entschlüsseln, aber es wird versucht, alle Inhalte unabhängig davon zu entschlüsseln, einschließlich geschützter Titel. Einige Dateien können aufgrund der Verschlüsselung oder anderer nicht unterstützter Funktionen, wie z.B. interaktive Titel, komplett schwarz erscheinen.", "Filter": "Filter", @@ -1377,10 +1377,46 @@ "LabelColorSpace": "Farbraum:", "MediaInfoColorSpace": "Farbraum", "VideoAudio": "Videoton", - "AllowTonemappingHelp": "Tone Mapping kann die Dynamic Range eines Videos von HDR zu SDR umwandeln und dabei Bilddetails und Farben beibehalten. Dies funktioniert zur Zeit nur mit dem NVENC HEVC-Decoder beim Transkodieren von HDR10 oder HLG-Videos.", + "AllowTonemappingHelp": "Tone Mapping kann die Dynamic Range eines Videos von HDR zu SDR umwandeln und dabei Bilddetails und Farben beibehalten. Dies funktioniert zur Zeit beim Transkodieren von eingebettetem HDR10 oder HLG-Metadaten. Falls die Wiedergabe nicht flüssig oder fehlerhaft ist, ist es empfehlenswert den zuständigen Hardware-Dekodierer zu deaktivieren.", "TonemappingRangeHelp": "Wählen Sie den Ausgabefarbbereich aus. Auto ist derselbe wie der Eingabebereich.", - "TonemappingAlgorithmHelp": "Das Tonemapping kann fein abgestimmt werden. Wenn Sie mit diesen Optionen nicht vertraut sind, behalten Sie einfach den Standardwert bei.
    Der empfohlene Wert ist Reinhard.", + "TonemappingAlgorithmHelp": "Das Tonemapping kann fein abgestimmt werden. Wenn Sie mit diesen Optionen nicht vertraut sind, behalten Sie einfach den Standardwert bei. Der empfohlene Wert ist Reinhard.", "LabelTonemappingAlgorithm": "Wählen Sie den zu verwendenden Tonemapping-Algorithmus aus:", "LabelKnownProxies": "Bekannte Proxys:", - "KnownProxiesHelp": "Kommagetrennte Liste von IP-Adressen bekannter Proxys, die bei der Verbindung mit Ihrer Jellyfin-Instanz verwendet werden. Dies ist erforderlich, um die X-Forwarded-For-Header korrekt verwenden zu können. Erfordert nach dem Speichern einen Neustart." + "KnownProxiesHelp": "Kommagetrennte Liste von IP-Adressen bekannter Proxys, die bei der Verbindung mit Ihrer Jellyfin-Instanz verwendet werden. Dies ist erforderlich, um die X-Forwarded-For-Header korrekt verwenden zu können. Erfordert nach dem Speichern einen Neustart.", + "LabelMaxMuxingQueueSizeHelp": "Maximale Anzahl von Paketen, die gepuffert werden können, während auf die Initialisierung aller Streams gewartet wird. Versuchen Sie, sie zu erhöhen, wenn Sie in den ffmpeg-Protokollen immer noch auf den Fehler \"Zu viele Pakete für den Ausgabestrom gepuffert\" stoßen. Der empfohlene Wert ist 2048.", + "LabelMaxMuxingQueueSize": "Maximale Größe der Muxing-Warteschlange:", + "LabelTonemappingParamHelp": "Stimmen Sie den Tonemapping-Algorithmus ab. Die empfohlenen und Standardwerte sind NaN. Lassen Sie ihn im Allgemeinen leer.", + "LabelTonemappingParam": "Tonemapping-Parameter:", + "LabelTonemappingPeakHelp": "Überschreiben Sie Signal/Nennwert/Referenzspitze mit diesem Wert. Nützlich, wenn die eingebettete Spitzenwertinformation in den Metadaten der Anzeige nicht zuverlässig ist oder wenn die Tonzuordnung von einem niedrigeren zu einem höheren Bereich erfolgt. Die empfohlenen und Standardwerte sind 0.", + "LabelTonemappingPeak": "Tonemapping-Spitze:", + "LabelTonemappingThresholdHelp": "Die Parameter des Tonemapping-Algorithmus werden für jede Szene fein abgestimmt. Und ein Schwellenwert wird verwendet, um zu erkennen, ob sich die Szene geändert hat oder nicht. Wenn der Abstand zwischen der durchschnittlichen Helligkeit des aktuellen Frames und dem aktuellen laufenden Durchschnitt einen Schwellenwert überschreitet, würden wir den Szenendurchschnitt und die Spitzenhelligkeit neu berechnen. Die empfohlenen und Standardwerte sind 0,8 und 0,2.", + "LabelTonemappingThreshold": "Tonemapping-Schwelle:", + "LabelTonemappingDesatHelp": "Wendet die Entsättigung für Lichter an, die diesen Helligkeitsgrad überschreiten. Je höher der Parameter, desto mehr Farbinformationen bleiben erhalten. Diese Einstellung hilft dabei, unnatürlich ausgeblasene Farben für Super-Highlights zu vermeiden, indem sie sich stattdessen (sanft) in Weiß verwandeln. Dadurch fühlen sich Bilder natürlicher an, auf Kosten der Reduzierung von Informationen über Farben außerhalb des Farbbereichs. Die empfohlenen und voreingestellten Werte sind 0 und 0,5.", + "LabelTonemappingDesat": "Tonemapping-Entsättigung:", + "LabelTonemappingRange": "Tonemapping-Bereich:", + "LabelColorPrimaries": "Hauptfarben:", + "LabelColorTransfer": "Farbübertragung:", + "LabelVideoRange": "Video-Bereich:", + "MediaInfoColorPrimaries": "Hauptfarben", + "MediaInfoColorTransfer": "Farbübertragung", + "MediaInfoVideoRange": "Video-Bereich", + "ThumbCard": "Miniaturansichtkarte", + "QuickConnectNotActive": "Schnellverbindung ist auf diesem Server nicht aktiv", + "QuickConnectNotAvailable": "Frag deinen Server-Administrator dass er Schnellverbindung erlaubt", + "QuickConnectInvalidCode": "Falscher Schnellverbindungs-Code", + "QuickConnectDescription": "Um mit Schnellverbindung einzuloggen wählst du den Schnellverbindungs-Knopf auf dem gewünschten Gerät aus und gib den unten angezeigten Code ein.", + "QuickConnectDeactivated": "Schnellverbindung war deaktiviert bevor der Login verifiziert werden konnte", + "QuickConnectAuthorizeFail": "Unbekannter Schnellverbindungs-Code", + "QuickConnectAuthorizeSuccess": "Anfrage autorisiert", + "QuickConnectAuthorizeCode": "Gib zum Login den Code {0} ein", + "QuickConnectActivationSuccessful": "Erfolgreich aktiviert", + "EnableQuickConnect": "Schnellverbindung auf diesem Server aktivieren", + "QuickConnect": "Schnellverbindung", + "PosterCard": "Posterkarte", + "LabelQuickConnectCode": "Schnellverbindungs-Code:", + "LabelCurrentStatus": "Aktueller Status:", + "EnableAutoCast": "Als Standard setzen", + "ButtonUseQuickConnect": "Schnellverbindung nutzen", + "ButtonActivate": "Aktivieren", + "Authorize": "Autorisieren" } From 2ad36cbde8378e266c670007729c0b20fc648c77 Mon Sep 17 00:00:00 2001 From: Adam Bokor Date: Thu, 24 Sep 2020 05:01:03 +0000 Subject: [PATCH 143/365] Translated using Weblate (Hungarian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/hu/ --- src/strings/hu.json | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/strings/hu.json b/src/strings/hu.json index 1bccbf1721..30bbef6a28 100644 --- a/src/strings/hu.json +++ b/src/strings/hu.json @@ -1367,5 +1367,10 @@ "MusicVideos": "Zenei videóklippek", "Image": "Kép", "Other": "További", - "Data": "Adat" + "Data": "Adat", + "EnableQuickConnect": "Gyors kapcsolódás engedélyezése a szerveren", + "EnableAutoCast": "Beállítás alapértelmezettként", + "ButtonUseQuickConnect": "Gyors kapcsolódás használata", + "ButtonActivate": "Aktiválás", + "Authorize": "Felhatalmaz" } From 517b538bb31a5e1b4c28126079cc3950f065a745 Mon Sep 17 00:00:00 2001 From: Darkwolf Date: Thu, 24 Sep 2020 05:38:22 +0000 Subject: [PATCH 144/365] Translated using Weblate (Pirate) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/pr/ --- src/strings/pr.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/strings/pr.json b/src/strings/pr.json index 88cee84f94..2066256656 100644 --- a/src/strings/pr.json +++ b/src/strings/pr.json @@ -17,7 +17,7 @@ "AccessRestrictedTryAgainLater": "Ye arn't appearin' on the list o' the livin'!", "ButtonSyncPlay": "SyncPlay", "AddedOnValue": "Upended {0}", - "AddToCollection": "Add to ye collection", + "AddToCollection": "Add t' ye collection", "AdditionalNotificationServices": "Browse th' plugin scroll t' invoke additional bell-ringing.", "AddToPlaylist": "Add t' ye playlist", "AddToPlayQueue": "Add t' ye play queue", @@ -35,5 +35,6 @@ "ValueSongCount": "{0} shantees", "Yes": "Ay", "PathNotFound": "That Be Uncharted Waters Friend.", - "LastSeen": "Ship Last Sighted {0}" + "LastSeen": "Ship Last Sighted {0}", + "Aired": "Sailed" } From 64d46967248a01042aef01110b06693c55c08e50 Mon Sep 17 00:00:00 2001 From: Hilman Maulana Date: Thu, 24 Sep 2020 10:34:19 +0000 Subject: [PATCH 145/365] Translated using Weblate (Indonesian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/id/ --- src/strings/id.json | 51 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 50 insertions(+), 1 deletion(-) diff --git a/src/strings/id.json b/src/strings/id.json index 3c64e4603b..df1d6d40f6 100644 --- a/src/strings/id.json +++ b/src/strings/id.json @@ -745,5 +745,54 @@ "LabelCurrentStatus": "Status saat ini:", "EnableQuickConnect": "Aktifkan sambung-cepat pada server ini", "ButtonActivate": "Aktifasi", - "Authorize": "Izinkan" + "Authorize": "Izinkan", + "LabelScheduledTaskLastRan": "Terakhir berlari {0}, mengambil {1}.", + "LabelRuntimeMinutes": "Durasi :", + "LabelRequireHttps": "Memerlukan HTTPS", + "LabelRemoteClientBitrateLimit": "Batas kecepatan bit streaming internet (Mbps) :", + "LabelReleaseDate": "Tanggal rilis :", + "LabelRefreshMode": "Mode penyegaran :", + "LabelRecord": "Merekam :", + "LabelReasonForTranscoding": "Alasan transcoding :", + "LabelQuickConnectCode": "Kode koneksi cepat:", + "LabelPublicHttpsPortHelp": "Nomor port publik yang harus dipetakan ke port HTTPS lokal.", + "LabelPublicHttpsPort": "Nomor port HTTPS publik :", + "LabelPublicHttpPortHelp": "Nomor porta publik yang harus dipetakan ke port HTTP lokal.", + "LabelPublicHttpPort": "Nomor port HTTP publik :", + "LabelProtocolInfoHelp": "Nilai yang akan digunakan saat menanggapi permintaan GetProtocolInfo dari perangkat.", + "LabelProfileCodecs": "Codec :", + "LabelProfileAudioCodecs": "Codec audio :", + "LabelPostProcessorArguments": "Argumen baris perintah pasca-prosesor :", + "LabelPleaseRestart": "Perubahan akan berlaku setelah memuat ulang klien web secara manual.", + "LabelPlayerDimensions": "Dimensi pemain :", + "LabelPlayer": "Pemain :", + "LabelPlayDefaultAudioTrack": "Putar trek audio default apa pun bahasanya", + "LabelPersonRoleHelp": "Contoh : Supir truk es krim", + "LabelPersonRole": "Peran :", + "LabelPasswordResetProvider": "Penyedia Reset Kata Sandi :", + "LabelParentalRating": "Peringkat orang tua :", + "LabelParentNumber": "Nomor induk :", + "LabelOriginalAspectRatio": "Rasio aspek asli :", + "LabelNumberOfGuideDaysHelp": "Mengunduh lebih banyak data panduan senilai hari memberikan kemampuan untuk menjadwalkan lebih awal dan melihat lebih banyak cantuman, tetapi juga akan membutuhkan waktu lebih lama untuk mengunduh. Otomatis akan memilih berdasarkan jumlah saluran.", + "LabelNumberOfGuideDays": "Jumlah hari data panduan untuk diunduh :", + "LabelMusicStreamingTranscodingBitrate": "Bitrate transcoding musik :", + "LabelMoviePrefix": "Awalan film :", + "LabelMonitorUsers": "Pantau aktivitas dari :", + "LabelModelUrl": "Model URL", + "LabelMinScreenshotDownloadWidth": "Lebar unduhan tangkapan layar minimum :", + "LabelMinResumePercentageHelp": "Judul dianggap tidak dimainkan jika dihentikan sebelum waktu ini.", + "LabelMinResumePercentage": "Persentase minimum melanjutkan :", + "LabelMinResumeDurationHelp": "Durasi video terpendek dalam hitungan detik yang akan menyimpan lokasi pemutaran dan memungkinkan Anda melanjutkan.", + "LabelMinResumeDuration": "Durasi minimum melanjutkan :", + "LabelMinBackdropDownloadWidth": "Lebar unduhan tampilan latar minimum :", + "LabelMethod": "Metode :", + "LabelMetadataSaversHelp": "Pilih format file yang akan digunakan saat menyimpan metadata Anda.", + "LabelMetadataSavers": "Penghemat metadata :", + "LabelMetadataReadersHelp": "Beri peringkat sumber metadata lokal pilihan Anda dalam urutan prioritas. File pertama yang ditemukan akan dibaca.", + "LabelMetadataReaders": "Pembaca metadata :", + "LabelMetadataDownloadersHelp": "Aktifkan dan beri peringkat pengunduh metadata pilihan Anda dalam urutan prioritas. Pengunduh dengan prioritas lebih rendah hanya akan digunakan untuk mengisi informasi yang hilang.", + "LabelMaxStreamingBitrateHelp": "Tentukan bitrate maksimum saat streaming.", + "LabelMaxScreenshotsPerItem": "Jumlah tangkapan layar maksimum per item :", + "EnableAutoCast": "Ditetapkan sebagai default", + "ButtonUseQuickConnect": "Gunakan Koneksi Cepat" } From a22b0801d1b1a7bad662faa0d3091e20631d72dc Mon Sep 17 00:00:00 2001 From: bittersweet shimmer Date: Thu, 24 Sep 2020 16:39:47 +0000 Subject: [PATCH 146/365] Translated using Weblate (Polish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/pl/ --- src/strings/pl.json | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/strings/pl.json b/src/strings/pl.json index 860d369d32..04fa279c6e 100644 --- a/src/strings/pl.json +++ b/src/strings/pl.json @@ -1372,5 +1372,9 @@ "Photo": "Zdjęcie", "LabelIconMaxResHelp": "Maksymalna rozdzielczość ikon udostępnianych przez upnp:icon.", "LabelAlbumArtMaxResHelp": "Maksymalna rozdzielczość okładki albumu udostępnianej przez upnp:albumArtURI.", - "Other": "Inne" + "Other": "Inne", + "QuickConnectActivationSuccessful": "Aktywowano pomyślnie", + "LabelCurrentStatus": "Bieżący status:", + "EnableAutoCast": "Ustaw jako Domyślny", + "ButtonActivate": "Aktywuj" } From 1d938a08f34b5bc37cf69ee9e6abb215b0957e1c Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Fri, 25 Sep 2020 01:34:07 +0000 Subject: [PATCH 147/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index 9747d77ebc..b928a4fa39 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -1147,7 +1147,7 @@ "LabelSeriesRecordingPath": "Đường dẫn Ghi lại Phim Bộ:", "PinCodeResetConfirmation": "Bạn có chắc chắn muốn đặt lại mã pin không?", "PinCodeResetComplete": "Mã pin đã được đặt lại.", - "PictureInPicture": "Ảnh trong ảnh", + "PictureInPicture": "Trình phát thu nhỏ", "Photo": "Hình Ảnh", "Person": "Người", "PerfectMatch": "Trùng khớp hoàn hảo", @@ -1355,7 +1355,7 @@ "WeeklyAt": "{0}s tại {1}", "DailyAt": "Hàng ngày lúc {0}", "LastSeen": "Xem lần cuối {0}", - "PersonRole": "với tư cách là {0}", + "PersonRole": "Vai diễn {0}", "ListPaging": "{0}-{1} của {2}", "WriteAccessRequired": "Jellyfin yêu cầu quyền ghi vào thư mục này. Hãy đảm bảo quyền ghi và thử lại.", "PathNotFound": "Không thể tìm thấy đường dẫn. Vui lòng đảm bảo đường dẫn hợp lệ và thử lại.", From f0b651508815077b7fc5befae14bae63d8c1a30f Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Fri, 25 Sep 2020 02:03:01 +0000 Subject: [PATCH 148/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index b928a4fa39..6309960f6c 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -314,7 +314,7 @@ "Features": "Mục đặc trưng", "Favorites": "Yêu Thích", "Favorite": "Yêu thích", - "FastForward": "Tua nhanh", + "FastForward": "Tua Nhanh Hơn", "FFmpegSavePathNotFound": "Máy chủ không thể tìm thấy chương trình FFmpeg trong đường dẫn bạn đã nhập. FFprobe thì cũng cần thiết và phải nằm trong cùng thư mục bên trên. Những phần mềm này thường được tổng hợp cùng nhau trong một lượt tải. Hãy thử lại sau khi kiểm tra đường dẫn.", "Extras": "Đặc biệt", "ExtractChapterImagesHelp": "Trích xuất hình ảnh từ những phân đoạn chính sẽ cho phép thiết bị phát hiển thị bảng lựa chọn cảnh thông qua những hình ảnh đó. Quá trình đó có thể chậm, cần nhiều tài nguyên máy chủ, và có thể cần một vài gigabytes trống. Điều này sẽ được thực hiện khi video được tìm thấy, và cũng như trong tác vụ hàng đêm. Thời gian thực hiện tác vụ này có thể điều chỉnh trong phần cài đặt tác vụ thường xuyên. Không nên thực hiện quá trình này trong giờ sử dụng cao điểm.", @@ -717,7 +717,7 @@ "ValueSpecialEpisodeName": "Đặc Biệt - {0}", "Filter": "Bộ lọc", "New": "Mới", - "Shuffle": "Xáo trộn", + "Shuffle": "Phát ngẫu nhiên", "Share": "Chia sẻ", "ShowAdvancedSettings": "Hiển thị cài đặt nâng cao", "ShowIndicatorsFor": "Hiển thị các chỉ số cho:", @@ -1102,7 +1102,7 @@ "Never": "Không Bao Giờ", "Name": "Tên", "MySubtitles": "Phụ Đề Của Tôi", - "Mute": "Tắt Âm Thanh", + "Mute": "Tắt Tiếng", "MusicVideos": "Video Âm Nhạc", "MusicVideo": "Video Âm Nhạc", "MusicLibraryHelp": "Xem lại {0} hướng dẫn đặt tên nhạc {1}.", @@ -1204,7 +1204,7 @@ "SaveSubtitlesIntoMediaFolders": "Lưu phụ đề vào thư mục phương tiện", "SaveChanges": "Lưu thay đổi", "Runtime": "Thời lượng", - "Rewind": "Tua lại", + "Rewind": "Tua Chậm Lại", "ResumeAt": "Tiếp tục từ {0}", "Restart": "Khởi động lại", "ResetPassword": "Đặt lại mật khẩu", @@ -1393,7 +1393,7 @@ "Upload": "Tải lên", "Up": "Lên", "Unrated": "Chưa được xếp hạng", - "Unmute": "Bỏ tắt tiếng", + "Unmute": "Bật Tiếng", "Uniform": "Cùng một kiểu", "ValueContainer": "Định dạng: {0}", "TabContainers": "Định dạng", From 4c34d405d143b884bd2897b3ac6f845eff335b76 Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Fri, 25 Sep 2020 02:21:53 +0000 Subject: [PATCH 149/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index 6309960f6c..c491664693 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -17,7 +17,7 @@ "HeaderCustomDlnaProfiles": "Hồ sơ khách hàng", "HeaderFeatureAccess": "Truy cập tính năng", "HeaderFrequentlyPlayed": "Phát thường xuyên", - "HeaderLatestEpisodes": "Các tập phim mới nhất", + "HeaderLatestEpisodes": "Tập phim mới nhất", "HeaderLatestMovies": "Phim mới nhất", "HeaderRecentlyPlayed": "Phát gần đây", "HeaderStatus": "Trạng thái", @@ -73,7 +73,7 @@ "TabProfiles": "Hồ sơ", "TabServer": "Máy chủ", "TabUpcoming": "Sắp Công Chiếu", - "TellUsAboutYourself": "Nói cho chúng tôi biết đôi điều về Bạn", + "TellUsAboutYourself": "Cho chúng tôi biết thông tin về bạn", "ThisWizardWillGuideYou": "Thủ thuật này sẽ hướng dẫn quá trình cài đặt cho bạn. Để bắt đầu, vui lòng lựa chọn ngôn ngữ bạn ưa thích.", "UninstallPluginConfirmation": "Bạn có chắc muốn gỡ bỏ{0}?", "HeaderUninstallPlugin": "Gỡ bỏ Plugin", @@ -208,7 +208,7 @@ "Banner": "Ảnh bìa", "Art": "Nghệ thuật", "Artist": "Nghệ Sĩ", - "AllowFfmpegThrottlingHelp": "Tạm dừng quá trình chuyển mã hoặc chuyển đổi định dạng để tiết kiệm tài nguyên máy chủ khi việc này đã đủ để phát so với vị trí hiện tại. Điều này hữu hiệu khi không tua nhanh thường xuyên lúc nghe nhạc hoặc xem phim. Tắt tính năng này nếu bạn gặp sự cố khi phát lại.", + "AllowFfmpegThrottlingHelp": "Tạm dừng quá trình chuyển mã hoặc chuyển đổi định dạng để tiết kiệm tài nguyên máy chủ khi việc này đã đủ để phát so với vị trí hiện tại. Nó hữu ích khi xem mà không cần tua. Tắt nó đi nếu trình phát gặp sự cố.", "AllowFfmpegThrottling": "Điều tiết sự chuyển mã", "AlbumArtist": "Nghệ sĩ Album", "Album": "Album", @@ -330,7 +330,7 @@ "ErrorAddingTunerDevice": "Đã xảy ra lỗi khi thêm thiết bị dò. Hãy đảm bảo rằng nó có thể truy cập được và thử lại.", "ErrorAddingMediaPathToVirtualFolder": "Có lỗi xảy ra khi thêm đường dẫn phương tiện này. Vui lòng đảm bảo đường dẫn chính xác và Jellyfin được phép truy cập vào vị trí đó.", "ErrorAddingListingsToSchedulesDirect": "Có lỗi xảy ra khi thêm danh sách này vào tài khoản Schedules Direct của bạn. Schedules Direct chỉ cho phép một số lượng danh sách nhất định mỗi tài khoản. Bạn có thể cần phải đăng nhập vào trang web của Schedules Direct và xoá những danh sách khác trước khi có thể thêm danh sách mới.", - "Episodes": "Tập", + "Episodes": "Tập Phim", "Episode": "Tập", "EndsAtValue": "Kết thúc lúc {0}", "Ended": "Đã Kết Thúc", @@ -340,7 +340,7 @@ "EnableStreamLooping": "Tự động phát lại live streams", "EnablePhotosHelp": "Hình ảnh sẽ được nhận diện và hiển thị bên cạnh những nội dung media.", "EnablePhotos": "Hiển thị hình ảnh", - "EnableNextVideoInfoOverlayHelp": "Khi ở phần cuối video, hiển thị thông tin về video tiếp theo trong danh sách phát hiện tại.", + "EnableNextVideoInfoOverlayHelp": "Lúc cuối video, hiển thị thông tin video sắp phát tiếp theo trong danh sách phát hiện tại.", "EnableNextVideoInfoOverlay": "Hiển thị thông tin video tiếp theo ở phần cuối video", "EnableHardwareEncoding": "Sử dụng phần cứng để hỗ trợ chuyển mã", "EnableExternalVideoPlayersHelp": "Phần mềm phát video từ thiết bị sẽ được hiển thị khi bắt đầu phát video.", @@ -363,7 +363,7 @@ "HeaderOtherItems": "Những Mục Khác", "HeaderOnNow": "Phát Sóng Hiện Tại", "HeaderNextVideoPlayingInValue": "Video Tiếp Theo Sẽ Phát trong {0}", - "HeaderNextEpisodePlayingInValue": "Tập Tiếp Theo Sẽ Được Chạy trong {0}", + "HeaderNextEpisodePlayingInValue": "Tập Tiếp Theo Đang Phát ở {0}", "HeaderNewDevices": "Thiết Bị Mới", "HeaderNewApiKey": "Mã API Mới", "HeaderNavigation": "Điều Hướng", @@ -520,7 +520,7 @@ "ItemCount": "{0} mục", "InstantMix": "Trộn Lẫn Nhanh", "InstallingPackage": "Đang cài đặt {0} (phiên bản {1})", - "ImportMissingEpisodesHelp": "Thông tin về các tập phim bị thiếu sẽ được nhập vào cơ sở dữ liệu của bạn và hiển thị trong các mùa và loạt phim bộ. Điều này có thể làm quá trình quét thư viện lâu hơn đáng kể.", + "ImportMissingEpisodesHelp": "Thông tin các tập phim bị thiếu sẽ được nhập vào cơ sở dữ liệu của bạn và hiển thị trong các phần và loạt phim bộ. Điều này có thể làm quá trình quét thư viện lâu hơn đáng kể.", "ImportFavoriteChannelsHelp": "Chỉ các kênh được đánh dấu là yêu thích trên thiết bị dò kênh mới được nhập.", "Images": "Hình Ảnh", "Identify": "Nhận Dạng", From 4c8da2fe0c027facf4eb94cb8592edc2ccff3c4f Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Fri, 25 Sep 2020 03:04:37 +0000 Subject: [PATCH 150/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 70 +++++++++++++++++++++++---------------------- 1 file changed, 36 insertions(+), 34 deletions(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index c491664693..7f2199279d 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -140,14 +140,14 @@ "AllowOnTheFlySubtitleExtraction": "Cho phép trích xuất phụ đề trực tiếp", "AllowMediaConversionHelp": "Cấp hoặc từ chối truy cập vào tính năng chuyển đổi media.", "AllowMediaConversion": "Cho phép chuyển đổi media", - "AllowHWTranscodingHelp": "Cho phép bộ chỉnh chuyển mã stream khi đang chơi. Điều này có thể giúp giảm tải của máy chủ khi chuyển mã.", + "AllowHWTranscodingHelp": "Cho phép bộ dò chuyển mã phát trực tiếp. Nó có thể giúp giảm tải của máy chủ khi chuyển mã.", "AllLibraries": "Tất cả các thư viện", "AllLanguages": "Tất cả các ngôn ngữ", "AllEpisodes": "Tất cả các tập phim", "AllComplexFormats": "Tất cả các định dạng phức tạp (ASS, SSA, VOBSUB, PGS, SUB, IDX, ...)", "AllChannels": "Tất cả các kênh", "Alerts": "Cảnh Báo", - "Albums": "Albums", + "Albums": "", "Aired": "Đã phát sóng", "AirDate": "Ngày phát sóng", "AdditionalNotificationServices": "Duyệt qua danh mục plugin để cài đặt các dịch vụ thông báo bổ sung.", @@ -223,7 +223,7 @@ "Director": "Đạo Diễn", "DirectStreaming": "Phát trực tuyến", "DirectStreamHelp2": "Phát trực tiếp sử dụng ít sức mạnh xử lý với chất lượng video bị giảm thiểu chút ít.", - "DirectStreamHelp1": "Nội dung này tương thích với thiết bị về độ phân giải và dạng mã hoá (H.264, AC3, v.v.), nhưng lại không tương tích định dạng (mkv, avi, wmv, v.v.). Video sẽ được đóng gói lại nhanh chóng trước khi được gửi đến thiết bị.", + "DirectStreamHelp1": "Nội dung này tương thích với thiết bị về độ phân giải và loại mã hoá (H.264, AC3, v.v.), nhưng lại không tương thích định dạng (mkv, avi, wmv, v.v.). Video sẽ được đóng gói nhanh chóng trước khi được gửi đến phát trên thiết bị.", "DirectPlaying": "Phát trực tiếp", "DeviceAccessHelp": "Thiết lập này chỉ áp dụng cho những thiết bị có thể định danh và sẽ không chặn được truy cập từ trình duyệt. Chọn lọc thiết bị người dùng sẽ chặn người dùng này truy cập từ những thiết bị mới cho đến khi được duyệt.", "DetectingDevices": "Đang tìm kiếm thiết bị", @@ -254,12 +254,12 @@ "HeaderDateIssued": "Ngày Phát Hành", "HeaderContinueWatching": "Xem Tiếp", "HeaderContinueListening": "Tiếp Tục Nghe", - "HeaderCodecProfileHelp": "Bộ giải mã chỉ ra những kiểu mã hoá nhất định mà một thiết bị có thể phát. Nếu một nội dung không thể phát, nó sẽ được chuyển mã, thậm chí nếu kiểu mã hoá đó được thiết lập phát trực tiếp.", + "HeaderCodecProfileHelp": "Hồ sơ mã hóa chỉ ra những kiểu mã hoá nhất định mà một thiết bị có thể phát. Nếu một nội dung không thể phát, nó sẽ được chuyển mã, thậm chí nếu kiểu mã hoá đó được thiết lập phát trực tiếp.", "HeaderContainerProfileHelp": "Hồ sơ định dạng chỉ ra những định dạng nhất định mà một thiết bị có thể phát. Nếu nội dung có định dạng không thể phát, nội dung sẽ được chuyển đổi định dạng, kể cả khi định dạng đó được thiết lập phát trực tiếp.", "HeaderContainerProfile": "Hồ Sơ Định Dạng", "HeaderConnectionFailure": "Kế Nối Thất Bại", "HeaderConnectToServer": "Kết Nối Đến Máy Chủ", - "HeaderConfirmRevokeApiKey": "Thu Hồi Quyền Truy Cập API Key", + "HeaderConfirmRevokeApiKey": "Thu hồi khóa API", "HeaderConfirmProfileDeletion": "Xác Nhận Xoá Hồ Sơ", "HeaderConfirmPluginInstallation": "Xác Nhận Cài Đặt Plugin", "HeaderConfigureRemoteAccess": "Thiết Lập Truy Cập Từ Xa", @@ -276,8 +276,8 @@ "HeaderAppearsOn": "Xuất Bản Vào", "HeaderApp": "Ứng dụng", "HeaderApiKeysHelp": "Ứng dụng bên ngoài cần có \"khóa API\" để giao tiếp với máy chủ Jellyfin. Khóa được cấp theo cách đăng nhập bằng tài khoản người dùng thông thường hoặc cấp khóa cho ứng dụng theo cách thủ công.", - "HeaderApiKeys": "API Keys", - "HeaderApiKey": "API Key", + "HeaderApiKeys": "Khóa API", + "HeaderApiKey": "Khóa API", "HeaderAllowMediaDeletionFrom": "Cho Phép Xoá Nội Dung", "HeaderAlert": "Thông Báo", "HeaderAlbumArtists": "Bộ Sưu Tập Nghệ sĩ", @@ -315,7 +315,7 @@ "Favorites": "Yêu Thích", "Favorite": "Yêu thích", "FastForward": "Tua Nhanh Hơn", - "FFmpegSavePathNotFound": "Máy chủ không thể tìm thấy chương trình FFmpeg trong đường dẫn bạn đã nhập. FFprobe thì cũng cần thiết và phải nằm trong cùng thư mục bên trên. Những phần mềm này thường được tổng hợp cùng nhau trong một lượt tải. Hãy thử lại sau khi kiểm tra đường dẫn.", + "FFmpegSavePathNotFound": "Không tìm thấy FFmpeg bằng đường dẫn bạn đã nhập. FFprobe cũng được yêu cầu và phải cùng thư mục. Cả hai thường được để chung trong cùng một gói tải xuống. Hãy kiểm tra đường dẫn và thử lại.", "Extras": "Đặc biệt", "ExtractChapterImagesHelp": "Trích xuất hình ảnh từ những phân đoạn chính sẽ cho phép thiết bị phát hiển thị bảng lựa chọn cảnh thông qua những hình ảnh đó. Quá trình đó có thể chậm, cần nhiều tài nguyên máy chủ, và có thể cần một vài gigabytes trống. Điều này sẽ được thực hiện khi video được tìm thấy, và cũng như trong tác vụ hàng đêm. Thời gian thực hiện tác vụ này có thể điều chỉnh trong phần cài đặt tác vụ thường xuyên. Không nên thực hiện quá trình này trong giờ sử dụng cao điểm.", "ExtraLarge": "Rất Lớn", @@ -365,7 +365,7 @@ "HeaderNextVideoPlayingInValue": "Video Tiếp Theo Sẽ Phát trong {0}", "HeaderNextEpisodePlayingInValue": "Tập Tiếp Theo Đang Phát ở {0}", "HeaderNewDevices": "Thiết Bị Mới", - "HeaderNewApiKey": "Mã API Mới", + "HeaderNewApiKey": "Khóa API Mới", "HeaderNavigation": "Điều Hướng", "HeaderMyMediaSmall": "Nội Dung Của Tôi (cỡ nhỏ)", "HeaderMyMedia": "Nội Dung Của Tôi", @@ -431,7 +431,7 @@ "HeaderSelectServerCachePathHelp": "Hãy chọn đường dẫn để lưu tập tin ghi tạm cho máy chủ. Máy chủ phải có quyền ghi trên thư mục đó.", "HeaderSelectServerCachePath": "Chọn Đường Dẫn Ghi Tạm Cho Máy Chủ", "HeaderSelectPath": "Chọn Đường Dẫn", - "HeaderSelectMetadataPathHelp": "Duyệt qua hoặc nhập đường dẫn bạn muốn sử dụng cho các mô tả dữ liệu. Máy chủ phải có quyền ghi trên thư mục đó.", + "HeaderSelectMetadataPathHelp": "Duyệt hoặc nhập đường dẫn sử dụng cho mô tả dữ liệu. Thư mục này phải ghi được.", "HeaderSelectMetadataPath": "Chọn Đường Dẫn Thông Tin Bổ Trợ", "HeaderSelectCertificatePath": "Chọn Đường Dẫn Đến Chứng Chỉ", "HeaderSecondsValue": "{0} Giây", @@ -483,7 +483,7 @@ "LabelBitrate": "Bitrate:", "LabelBirthYear": "Năm sinh:", "LabelBirthDate": "Ngày sinh:", - "LabelBindToLocalNetworkAddressHelp": "Không bắt buộc. Ghi đè địa chỉ IP cục bộ để kết hợp với máy chủ HTTP. Nếu bỏ trống, máy chủ sẽ cài đặt vào toàn bộ những địa chỉ nội bộ có sẵn. Nếu thay đổi tuỳ chọn này, yêu cầu khởi động lại máy chủ Jellyfin để có tác dụng.", + "LabelBindToLocalNetworkAddressHelp": "Ghi đè địa chỉ IP cục bộ cho máy chủ HTTP. Nếu bỏ trống, máy chủ sẽ kết hợp tất cả địa chỉ có sẵn. Thay đổi giá trị này buộc phải khởi động lại.", "LabelBindToLocalNetworkAddress": "Liên kết với địa chỉ mạng cục bộ:", "LabelAutomaticallyRefreshInternetMetadataEvery": "Tự động cập nhật dữ liệu mô tả từ Internet:", "LabelAuthProvider": "Cách Xác Thực:", @@ -573,11 +573,11 @@ "LabelDefaultScreen": "Màn hình mặc định:", "LabelDeathDate": "Ngày mất:", "LabelDateTimeLocale": "Ngày giờ địa phương:", - "LabelDateAddedBehaviorHelp": "Nếu có sẵn giá trị mô tả dữ liệu, nó sẽ luôn được sử dụng trước một trong các tùy chọn này.", + "LabelDateAddedBehaviorHelp": "Nếu có giá trị dữ liệu mô tả, nó sẽ luôn được sử dụng trước một trong các tùy chọn này.", "LabelDateAddedBehavior": "Ngày thêm hành vi cho nội dung mới:", "LabelDateAdded": "Ngày thêm vào:", "LabelCustomRating": "Đánh giá tuỳ chọn:", - "ApiKeysCaption": "Danh sách các mã API đang hoạt động", + "ApiKeysCaption": "Danh sách các Khóa API hiện được bật", "LabelBaseUrl": "URL cơ bản:", "LabelEveryXMinutes": "Mỗi:", "LabelEpisodeNumber": "Tập số:", @@ -586,7 +586,7 @@ "LabelEnableSingleImageInDidlLimit": "Giới hạn chỉ một hình ảnh nhúng", "LabelEnableRealtimeMonitorHelp": "Các thay đổi đối với tệp sẽ được xử lý ngay lập tức trên các hệ thống tệp được hỗ trợ.", "LabelEnableRealtimeMonitor": "Bật tính năng theo dõi thời gian thực", - "LabelEnableHttpsHelp": "Cho phép máy chủ nghe trên cổng HTTPS đã định cấu hình. Chứng chỉ hợp lệ cũng phải được định cấu hình để điều này có hiệu lực.", + "LabelEnableHttpsHelp": "Cho phép máy chủ nghe trên cổng HTTPS đã cấu hình. Chứng chỉ hợp lệ cũng phải được định cấu hình để điều này có hiệu lực.", "LabelEnableHttps": "Bật HTTPS", "LabelEnableHardwareDecodingFor": "Bật tính năng giãi mã phần cứng cho:", "LabelEnableDlnaServerHelp": "Cho phép các thiết bị UPnP trong mạng của bản để duyệt và phát nội dung.", @@ -595,7 +595,7 @@ "LabelEnableDlnaDebugLoggingHelp": "Tạo những tập tin gỡ lỗi lớn và chỉ nên được sử dụng khi cần thiết để xử lý sự cố.", "LabelEnableDlnaDebugLogging": "Bật tính năng gỡ lỗi DLNA", "LabelEnableDlnaClientDiscoveryIntervalHelp": "Xác định thời gian tính bằng giây giữa các lần tìm kiếm SSDP thực hiện bởi Jellyfin.", - "LabelEnableDlnaClientDiscoveryInterval": "Thời gian tìm kiếm thiết bị phát (giây)", + "LabelEnableDlnaClientDiscoveryInterval": "Thời gian dò tìm thiết bị phát (giây)", "LabelEnableBlastAliveMessagesHelp": "Bật cái này nếu máy chủ không được các thiết bị UPnP khác trên mạng của bạn tìm ra một cách đáng tin cậy.", "LabelEnableBlastAliveMessages": "Phát tin nhắn trực tiếp", "LabelEnableAutomaticPortMapHelp": "Tự động chuyển tiếp các cổng công cộng trên bộ định tuyến của bạn tới các cổng cục bộ trên máy chủ của bạn qua UPnP. Điều này có thể không hoạt động với một số bộ định tuyến hoặc cấu hình mạng. Thay đổi sẽ được áp dụng sau khi khởi động lại máy chủ.", @@ -681,7 +681,7 @@ "LabelMinResumeDuration": "Thời lượng phát tiếp tục tối thiểu:", "LabelMinBackdropDownloadWidth": "Chiều rộng tối thiểu của phông nền tải xuống:", "LabelMethod": "Phương pháp:", - "LabelMetadataSaversHelp": "Chọn định dạng tập tin để sử dụng khi lưu mô tả chi tiết của bạn.", + "LabelMetadataSaversHelp": "Chọn định dạng tập tin dùng để lưu dữ liệu mô tả của bạn.", "LabelMetadataSavers": "Lưu Dữ liệu Mô Tả Dưới Dạng:", "LabelMetadataReadersHelp": "Sắp xếp thứ tự ưu tiên những dữ liệu mô tả cục bộ. Tập tin đầu tiên được tìm thấy sẽ được đọc.", "LabelMetadataReaders": "Trình đọc dữ liệu mô tả:", @@ -770,7 +770,7 @@ "MessageImageFileTypeAllowed": "Chỉ các tệp JPEG và PNG được hỗ trợ.", "LabelKnownProxies": "Các Proxy đã biết:", "LabelIconMaxResHelp": "Độ phân giải tối đa của các biểu tượng được hiển thị thông qua thuộc tính upnp:icon .", - "KnownProxiesHelp": "Danh sách địa chỉ IP của các proxy đã biết được sử dụng khi kết nối với phiên bản Jellyfin của bạn được phân tách bằng dấu phẩy. Đây là bắt buộc để sử dụng đúng các tiêu đề X-Forwarded-For. Yêu cầu khởi động lại sau khi lưu.", + "KnownProxiesHelp": "Phân tách bằng dấu phẩy danh sách địa chỉ IP của các proxy đã biết được sử dụng khi kết nối với Jellyfin. Đây là bắt buộc để sử dụng đúng các tiêu đề X-Forwarded-For. Yêu cầu khởi động lại sau khi lưu.", "Image": "Hình Ảnh", "LabelSyncPlayLeaveGroup": "Rời khỏi nhóm", "LabelSyncPlayNewGroupDescription": "Tạo một nhóm mới", @@ -799,8 +799,8 @@ "LabelSkipIfGraphicalSubsPresent": "Bỏ qua nếu video đã có phụ đề được nhúng", "LabelSkipIfAudioTrackPresentHelp": "Bỏ chọn mục này để đảm bảo tất cả video đều có phụ đề, bất kể ngôn ngữ âm thanh.", "LabelSkipIfAudioTrackPresent": "Bỏ qua nếu bản âm thanh mặc định khớp với ngôn ngữ tải xuống", - "LabelSkipForwardLength": "Bỏ qua độ dài phía trước:", - "LabelSkipBackLength": "Bỏ qua độ dài phía sau:", + "LabelSkipForwardLength": "Bỏ qua đoạn trước:", + "LabelSkipBackLength": "Bỏ qua đoạn sau:", "LabelSize": "Kích cỡ:", "LabelSimultaneousConnectionLimit": "Giới hạn luồng đồng thời:", "LabelServerName": "Tên máy chủ:", @@ -827,9 +827,9 @@ "LabelRecord": "Ghi lại:", "LabelReasonForTranscoding": "Lý do chuyển mã:", "LabelQuickConnectCode": "Mã số kết nối nhanh:", - "LabelPublicHttpsPortHelp": "Số cổng công cộng sẽ được ánh xạ tới cổng HTTPS cục bộ.", + "LabelPublicHttpsPortHelp": "Số cổng công khai sẽ được ánh xạ tới cổng HTTPS cục bộ.", "LabelPublicHttpsPort": "Số cổng HTTPS công khai:", - "LabelPublicHttpPortHelp": "Số cổng công khai sẽ được ánh xạ tới cổng HTTP cục bộ.", + "LabelPublicHttpPortHelp": "Số cổng công khai sẽ được ánh xa tới cổng HTTP cục bộ.", "LabelPublicHttpPort": "Số cổng HTTP công khai:", "LabelProtocolInfoHelp": "Giá trị sẽ được sử dụng khi phản hồi các yêu cầu GetProtocolInfo từ thiết bị.", "LabelProtocolInfo": "Thông tin giao thức:", @@ -842,11 +842,11 @@ "LabelProfileAudioCodecs": "Bộ giải mã âm thanh:", "LabelPreferredSubtitleLanguage": "Ngôn ngữ phụ đề ưu tiên:", "LabelPreferredDisplayLanguage": "Ngôn ngữ hiển thị ưa thích:", - "LabelPostProcessorArgumentsHelp": "Sử dụng {path} làm đường dẫn đến tệp ghi.", - "LabelPostProcessorArguments": "Đối số dòng lệnh của bộ xử lý sau:", - "LabelPostProcessor": "Ứng dụng sau xử lý:", - "LabelPleaseRestart": "Các thay đổi sẽ có hiệu lực sau khi tải lại ứng dụng khách web theo cách thủ công.", - "LabelPlayMethod": "Phương pháp chơi:", + "LabelPostProcessorArgumentsHelp": "Dùng {path} làm đường dẫn đến tệp ghi.", + "LabelPostProcessorArguments": "Đối số dòng lệnh xử lý hậu kỳ:", + "LabelPostProcessor": "Ứng dụng xử lý hậu kỳ:", + "LabelPleaseRestart": "Thay đổi sẽ có hiệu lực sau khi bấm tải lại trang web thủ công.", + "LabelPlayMethod": "Cách Phát:", "LabelPlaylist": "Danh sách phát:", "LabelPlayerDimensions": "Kích thước trình phát:", "LabelPlayer": "Trình phát:", @@ -856,9 +856,9 @@ "LabelPersonRole": "Vai trò:", "LabelPath": "Đường dẫn:", "LabelPasswordRecoveryPinCode": "Mã PIN:", - "LabelPasswordResetProvider": "Nhà cung cấp Đặt lại Mật khẩu:", - "LabelParentalRating": "Đánh giá của phụ huynh:", - "LabelParentNumber": "Số chính:", + "LabelPasswordResetProvider": "Cách Đặt lại Mật khẩu:", + "LabelParentalRating": "Đánh giá phụ huynh:", + "LabelParentNumber": "Số Phụ Huynh:", "LabelOverview": "Tổng quát:", "LabelOriginalTitle": "Tiêu đề gốc:", "LabelOriginalAspectRatio": "Tỷ lệ khung hình gốc:", @@ -1015,7 +1015,7 @@ "LabelSyncPlayAccessJoinGroups": "Cho phép người dùng tham gia nhóm", "LabelSyncPlayAccessCreateAndJoinGroups": "Cho phép người dùng tạo và tham gia nhóm", "LabelSyncPlayLeaveGroupDescription": "Tắt SyncPlay", - "LabelSonyAggregationFlagsHelp": "Xác định nội dung của phần tử aggregationFlags trong không gian tên urn: schemas-sonycom: av.", + "LabelSonyAggregationFlagsHelp": "Xác định nội dung của phần tử aggregationFlags trong không gian tên urn:schemas-sonycom:av.", "LabelServerHost": "Máy chủ:", "OptionSaveMetadataAsHiddenHelp": "Thay đổi điều này sẽ áp dụng cho dữ liệu mô tả mới được lưu về sau. Các tệp dữ liệu mô tả hiện có sẽ được cập nhật vào lần tiếp theo chúng được máy chủ lưu.", "OptionSaveMetadataAsHidden": "Lưu dữ liệu mô tả và hình ảnh dưới dạng tệp ẩn", @@ -1289,7 +1289,7 @@ "TagsValue": "Thẻ: {0}", "Tags": "Thẻ", "TabStreaming": "Luồng", - "TabScheduledTasks": "Công việc đã lên lịch", + "TabScheduledTasks": "Tác vụ đã lên lịch", "TabResponses": "Phản hồi", "TabParentalControl": "Kiểm soát của cha mẹ", "TabOther": "Khác", @@ -1334,7 +1334,7 @@ "LabelTonemappingDesat": "Khử bão hòa tông màu:", "LabelTonemappingDesatHelp": "Áp dụng khử bão hòa cho các vùng sáng vượt quá mức độ sáng này. Thông số này càng cao thì thông tin màu càng được bảo toàn. Cài đặt này giúp ngăn các màu bị lóa không tự nhiên để tạo ra những vùng siêu nổi bật, bằng cách (trơn tru) chuyển thành màu trắng. Điều này làm cho hình ảnh cảm thấy tự nhiên hơn, với chi phí là giảm thông tin về các màu nằm ngoài phạm vi. Các giá trị được đề xuất và mặc định là 0 và 0,5.", "LabelTonemappingRange": "Phạm vi ánh xạ tông màu:", - "AllowTonemappingHelp": "Ánh xạ tông màu có thể chuyển đổi dải động của video từ HDR sang SDR trong khi vẫn duy trì chi tiết và màu sắc của hình ảnh, đây là những thông tin rất quan trọng để thể hiện cảnh gốc. Hiện chỉ hoạt động khi chuyển mã video với siêu dữ liệu HDR10 hoặc HLG được nhúng. Nếu quá trình phát lại không mượt mà hoặc không thành công, vui lòng xem xét việc tắt bộ giải mã phần cứng tương ứng.", + "AllowTonemappingHelp": "Ánh xạ tông màu có thể biến đổi dải động của video từ HDR sang SDR trong khi vẫn duy trì chi tiết và màu sắc của hình ảnh, đây là những thông tin rất quan trọng để thể hiện cảnh gốc. Hiện chỉ hoạt động khi chuyển mã video với siêu dữ liệu HDR10 hoặc HLG được nhúng. Nếu quá trình phát lại không mượt mà hoặc không thành công, vui lòng xem xét việc tắt bộ giải mã phần cứng tương ứng.", "EnableTonemapping": "Bật Ánh xạ tông màu", "LabelOpenclDevice": "Thiết bị OpenCL:", "LabelColorPrimaries": "Màu cơ bản:", @@ -1394,9 +1394,11 @@ "Up": "Lên", "Unrated": "Chưa được xếp hạng", "Unmute": "Bật Tiếng", - "Uniform": "Cùng một kiểu", + "Uniform": "Đồng dạng", "ValueContainer": "Định dạng: {0}", "TabContainers": "Định dạng", "OptionEmbedSubtitles": "Nhúng trong định dạng", - "MediaInfoContainer": "Định dạng" + "MediaInfoContainer": "Định dạng", + "Raised": "Nâng lên", + "EnableAutoCast": "Đặt làm mặc định" } From f0441b0cafc9cfb4927b76fbc75804b118bc8235 Mon Sep 17 00:00:00 2001 From: cvium Date: Fri, 25 Sep 2020 12:52:36 +0200 Subject: [PATCH 151/365] Fix PIN request and reset route --- package.json | 2 +- src/controllers/session/forgotPassword/index.js | 1 + src/scripts/routes.js | 4 ++-- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index a38cf6c843..d2072a85a9 100644 --- a/package.json +++ b/package.json @@ -214,7 +214,7 @@ "src/components/castSenderApi.js", "src/controllers/session/addServer/index.js", "src/controllers/session/forgotPassword/index.js", - "src/controllers/session/redeemPassword/index.js", + "src/controllers/session/resetPassword/index.js", "src/controllers/session/login/index.js", "src/controllers/session/selectServer/index.js", "src/controllers/dashboard/apikeys.js", diff --git a/src/controllers/session/forgotPassword/index.js b/src/controllers/session/forgotPassword/index.js index 0f2464e2d8..5b92e255da 100644 --- a/src/controllers/session/forgotPassword/index.js +++ b/src/controllers/session/forgotPassword/index.js @@ -41,6 +41,7 @@ import globalize from 'globalize'; type: 'POST', url: ApiClient.getUrl('Users/ForgotPassword'), dataType: 'json', + contentType: 'application/json', data: JSON.stringify({ EnteredUsername: view.querySelector('#txtName').value }) diff --git a/src/scripts/routes.js b/src/scripts/routes.js index d2d8e91886..8e2440b140 100644 --- a/src/scripts/routes.js +++ b/src/scripts/routes.js @@ -62,11 +62,11 @@ import 'detailtablecss'; defineRoute({ alias: '/forgotpasswordpin.html', - path: '/controllers/session/redeemPassword/index.html', + path: '/controllers/session/resetPassword/index.html', autoFocus: false, anonymous: true, startup: true, - controller: 'session/redeemPassword/index' + controller: 'session/resetPassword/index' }); defineRoute({ From a6dbe11d6fa97eabcfdd26bb0688db2df376f6d3 Mon Sep 17 00:00:00 2001 From: radiusgreenhill Date: Fri, 25 Sep 2020 10:35:02 +0000 Subject: [PATCH 152/365] Translated using Weblate (Thai) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/th/ --- src/strings/th.json | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/strings/th.json b/src/strings/th.json index 8eff59cd82..65315b4aba 100644 --- a/src/strings/th.json +++ b/src/strings/th.json @@ -4,5 +4,11 @@ "Add": "เพิ่ม", "Actor": "นักแสดง", "AccessRestrictedTryAgainLater": "ขณะนี้การเข้าถึงถูกจำกัด โปรดลองอีกครั้งในภายหลัง", - "Absolute": "แน่นอน" + "Absolute": "แน่นอน", + "RemoveFromPlaylist": "ลบออกจากเพลย์ลิสต์", + "Playlists": "เพลย์ลิสต์", + "LabelPlaylist": "เพลย์ลิสต์:", + "HeaderAddToPlaylist": "เพิ่มไปยังเพลย์ลิสต์", + "ButtonTogglePlaylist": "เพลย์ลิสต์", + "AddToPlaylist": "เพิ่มไปยังเพลย์ลิสต์" } From 4f7021a69afbd5ed26918b8250943709d8dc9166 Mon Sep 17 00:00:00 2001 From: Franco Castillo Date: Fri, 25 Sep 2020 19:04:34 +0000 Subject: [PATCH 153/365] Translated using Weblate (Spanish (Argentina)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/es_AR/ --- src/strings/es-ar.json | 146 ++++++++++++++++++++++++----------------- 1 file changed, 87 insertions(+), 59 deletions(-) diff --git a/src/strings/es-ar.json b/src/strings/es-ar.json index 5f303b1ce2..dad00f9439 100644 --- a/src/strings/es-ar.json +++ b/src/strings/es-ar.json @@ -170,8 +170,8 @@ "DetectingDevices": "Detectando dispositivos", "DeviceAccessHelp": "Esto aplica solo a dispositivos que pueden ser identificados y esto no va a prevenir el acceso con el navegador. Filtrar el acceso a los dispositivos del usuario va a prevenir el uso con nuevos dispositivos, hasta que estos sean aprobados.", "DirectPlaying": "Reproducción directa", - "DirectStreamHelp1": "El medio es compatible con el dispositivo con respecto a la resolución y el tipo de medio (H.264, AC3, etc.), pero está en un contenedor de archivos incompatible (mkv, avi, wmv, etc.). El video se volverá a empaquetar sobre la marcha antes de transmitirlo al dispositivo.", - "DirectStreamHelp2": "La transmisión directa de un archivo utiliza muy poca potencia de procesamiento sin pérdida de calidad de video.", + "DirectStreamHelp1": "El medio es compatible con el dispositivo en cuanto a resolución y tipo de medio (H.264, AC3, etc.), pero en un contenedor de archivos incompatible (mkv, avi, wmv, etc.). El video se volverá a empaquetar sobre la marcha antes de enviarse al dispositivo.", + "DirectStreamHelp2": "La transmisión directa utiliza muy poca potencia de procesamiento con una mínima pérdida de calidad de video.", "DirectStreaming": "Transmisión directa", "Director": "Director", "Directors": "Directores", @@ -215,10 +215,10 @@ "EndsAtValue": "Termina en {0}", "Episodes": "Capítulos", "ErrorAddingListingsToSchedulesDirect": "Ocurrió un error al añadir el alineamiento a tu cuenta de Schedules Direct. Schedules Direct solo permite una cantidad limitada de alineamientos por cuenta. Quizás necesites ingresar al sitio de Schedules Direct y eliminar otros alineamientos de tu cuenta antes de continuar.", - "ErrorAddingMediaPathToVirtualFolder": "Ocurrió un error al agregar la ruta de medios. Por favor, asegurate que la ruta es válida y que el proceso que sirve Jellyfin tiene acceso a esa ubicación.", + "ErrorAddingMediaPathToVirtualFolder": "Hubo un error al agregar la ruta del medio. Asegúrese de que la ruta sea válida y que Jellyfin tenga acceso a esa ubicación.", "ErrorAddingTunerDevice": "Ocurrió un error al añadir el dispositivo sintonizador. Por favor asegurate que está disponible e intenta de nuevo.", "ErrorAddingXmlTvFile": "Ocurrió un error al acceder al archivo de XmlTV. Por favor asegúrate de que el archivo existe e intenta de nuevo.", - "ErrorDeletingItem": "Ocurrió un error al eliminar el ítem del servidor Jellyfin. Por favor verifica que el servidor Jellyfin tiene permiso de escritura a la carpeta de medios e intenta de nuevo.", + "ErrorDeletingItem": "Se produjo un error al eliminar el elemento del servidor. Verifique que Jellyfin tenga acceso de escritura a la carpeta multimedia e intente nuevamente.", "ErrorGettingTvLineups": "Ocurrió un error al descargar la guía de programación de TV. Por favor asegúrate que tu información es correcta e intenta de nuevo.", "ErrorStartHourGreaterThanEnd": "La hora de fin tiene que ser mayor que la de inicio.", "ErrorPleaseSelectLineup": "Por favor selecciona un alineamiento e intenta de nuevo. Si no existen alineamientos disponibles, asegúrate de que tu nombre de usuario, contraseña y código postal son correctos.", @@ -263,7 +263,7 @@ "HeaderAudioBooks": "Audiolibros", "HeaderAppearsOn": "Aparece en", "HeaderApp": "Aplicación", - "HeaderApiKeysHelp": "Se requiere que las aplicaciones externas tengan una clave de API para comunicarse con el servidor Jellyfin. Las claves se emiten iniciando sesión con una cuenta Jellyfin, u otorgando manualmente una clave a la aplicación.", + "HeaderApiKeysHelp": "Las aplicaciones externas deben tener una clave de API para comunicarse con el servidor. Las claves se emiten iniciando sesión con una cuenta de usuario normal o otorgando manualmente una clave a la aplicación.", "HeaderApiKeys": "Claves de API", "HeaderApiKey": "Contraseña API", "HeaderAllowMediaDeletionFrom": "Permitir el borrado de medios desde", @@ -307,7 +307,7 @@ "HeaderCastAndCrew": "Reparto", "HeaderCancelSeries": "Cancelar serie", "H264CrfHelp": "El Factor de velocidad constante (CRF) es la configuración de calidad predeterminada para el codificador x264. Puede establecer los valores entre 0 y 51, donde valores más bajos resultarían en una mejor calidad (a expensas de tamaños de archivo más altos). Los valores correctos están entre 18 y 28. El valor predeterminado para x264 es 23, por lo que puede usar esto como punto de partida.", - "DeinterlaceMethodHelp": "Seleccione el método de desentrelazado que se usará al transcodificar contenido entrelazado.", + "DeinterlaceMethodHelp": "Seleccione el método de desentrelazado que se utilizará cuando el software transcodifique contenido entrelazado. Cuando la aceleración de hardware que admite el desentrelazado de hardware está habilitada, se utilizará el desentrelazador de hardware en lugar de esta configuración.", "HeaderExternalIds": "IDs externos:", "HeaderError": "Error", "HeaderEnabledFields": "Campos habilitados", @@ -384,7 +384,7 @@ "ItemCount": "{0} artículos", "InstantMix": "Mezcla instantánea", "InstallingPackage": "Instalando {0} (versión {1})", - "ImportFavoriteChannelsHelp": "Si está habilitado, solo se importarán los canales que estén marcados como favoritos en el dispositivo sintonizador.", + "ImportFavoriteChannelsHelp": "Solo se importarán los canales que estén marcados como favoritos en el dispositivo sintonizador.", "Images": "Imágenes", "Identify": "Identificar", "HttpsRequiresCert": "Para habilitar conexiones seguras, deberá proporcionar un certificado SSL confiable, como Let's Encrypt. Proporcione un certificado o desactive las conexiones seguras.", @@ -431,12 +431,12 @@ "HeaderSeriesStatus": "Estado de la serie", "HeaderSeriesOptions": "Opciones de serie", "HeaderSendMessage": "Enviar mensaje", - "HeaderSelectTranscodingPathHelp": "Examine o ingrese la ruta a utilizar para transcodificar archivos temporales. La carpeta debe ser grabable.", + "HeaderSelectTranscodingPathHelp": "Busque o ingrese la ruta para usar para transcodificar archivos. La carpeta debe poder escribirse.", "HeaderSelectTranscodingPath": "Seleccionar ruta temporal de transcodificación", "HeaderSelectServerCachePathHelp": "Examine o ingrese la ruta a utilizar para los archivos de caché del servidor. La carpeta debe ser grabable.", "HeaderSelectServerCachePath": "Seleccionar ruta de caché del servidor", "HeaderSelectPath": "Seleccionar ruta", - "HeaderSelectMetadataPathHelp": "Examine o ingrese la ruta en la que desea almacenar metadatos. La carpeta debe ser grabable.", + "HeaderSelectMetadataPathHelp": "Busque o ingrese la ruta que le gustaría usar para los metadatos. La carpeta debe poder escribirse.", "HeaderSelectMetadataPath": "Seleccionar ruta de metadatos", "HeaderSelectCertificatePath": "Seleccionar ruta del certificado", "HeaderSecondsValue": "{0} segundos", @@ -452,7 +452,7 @@ "HeaderRecordingPostProcessing": "Grabación posterior al procesamiento", "HeaderRecordingOptions": "Opciones de grabación", "HeaderRecentlyPlayed": "Recientemente reproducido", - "HeaderProfileServerSettingsHelp": "Estos valores controlan cómo el servidor Jellyfin se presentará al dispositivo.", + "HeaderProfileServerSettingsHelp": "Estos valores controlan cómo se presentará el servidor a los clientes.", "HeaderProfileInformation": "Información del perfil", "HeaderPreferredMetadataLanguage": "Lenguaje de metadatos preferido", "HeaderPluginInstallation": "Instalación de complementos", @@ -476,11 +476,11 @@ "HeaderDVR": "DVR", "LabelBlockContentWithTags": "Bloquear elementos con etiquetas:", "LabelBlastMessageIntervalHelp": "Determina la duración en segundos entre los mensajes explosivos vivos.", - "LabelBlastMessageInterval": "Intervalo de mensaje vivo (segundos)", + "LabelBlastMessageInterval": "Intervalo de mensajes en vivo", "LabelBitrate": "Tasa de bits:", "LabelBirthYear": "Año de nacimiento:", "LabelBirthDate": "Fecha de nacimiento:", - "LabelBindToLocalNetworkAddressHelp": "Opcional. Anule la dirección IP local para vincular el servidor http. Si se deja vacío, el servidor se vinculará a todas las direcciones disponibles. Cambiar este valor requiere reiniciar el servidor Jellyfin.", + "LabelBindToLocalNetworkAddressHelp": "Reemplace la dirección IP local del servidor HTTP. Si se deja vacío, el servidor se vinculará a todas las direcciones disponibles. Cambiar este valor requiere reiniciar.", "LabelBindToLocalNetworkAddress": "Enlace a la dirección de red local:", "LabelAutomaticallyRefreshInternetMetadataEvery": "Actualizar automáticamente los metadatos desde internet:", "LabelAuthProvider": "Proveedor de autenticación:", @@ -503,7 +503,7 @@ "LabelCache": "Caché:", "LabelBurnSubtitles": "Grabar subtítulos:", "LabelAudioBitDepth": "Profundidad de bits de audio:", - "LabelArtistsHelp": "Separar usando múltiples ;", + "LabelArtistsHelp": "Separe varios artistas con un punto y coma.", "LabelInNetworkSignInWithEasyPassword": "Habilitar el inicio de sesión en la red con mi código PIN fácil", "LabelImportOnlyFavoriteChannels": "Restringir a canales marcados como favoritos", "LabelImageType": "Tipo de imagen:", @@ -511,7 +511,7 @@ "LabelIdentificationFieldHelp": "Una subcadena que no distingue entre mayúsculas y minúsculas o expresión regular.", "LabelIconMaxWidth": "Ancho máximo del ícono:", "LabelIconMaxHeight": "Altura máxima del ícono:", - "LabelHttpsPortHelp": "El número de puerto TCP al que debe unirse el servidor HTTPS de Jellyfin.", + "LabelHttpsPortHelp": "El número de puerto TCP para el servidor HTTPS.", "LabelHttpsPort": "Número de puerto HTTPS local:", "LabelHomeScreenSectionValue": "Sección de la pantalla de inicio {0}:", "LabelHomeNetworkQuality": "Calidad de la red doméstica:", @@ -519,9 +519,9 @@ "LabelHardwareAccelerationType": "Aceleración por hardware:", "LabelEncoderPreset": "Preajuste de codificación H264 y H265:", "LabelH264Crf": "H264 que codifica CRF:", - "LabelGroupMoviesIntoCollectionsHelp": "Al mostrar listas de películas, las películas que pertenecen a una colección se mostrarán como un elemento agrupado.", + "LabelGroupMoviesIntoCollectionsHelp": "Al mostrar listas de películas, las películas de una colección se mostrarán como un elemento agrupado.", "LabelGroupMoviesIntoCollections": "Agrupar películas en colecciones", - "LabelServerNameHelp": "Este nombre se usará para identificar el servidor y será el nombre predeterminado de la computadora del servidor.", + "LabelServerNameHelp": "Este nombre se utilizará para identificar el servidor y será el nombre de host del servidor por defecto.", "LabelFriendlyName": "Nombre amigable:", "LabelFormat": "Formato:", "LabelForgotPasswordUsernameHelp": "Ingrese su nombre de usuario, si lo recuerda.", @@ -531,7 +531,7 @@ "LabelFailed": "Fallido", "LabelExtractChaptersDuringLibraryScanHelp": "Genere imágenes de capítulos cuando se importen videos durante el escaneo de la biblioteca. De lo contrario, se extraerán durante la tarea programada de las imágenes de los capítulos, lo que permitirá que el análisis de la biblioteca regular se complete más rápido.", "LabelExtractChaptersDuringLibraryScan": "Extraer imágenes de capítulos durante el escaneo de la biblioteca", - "LabelBaseUrlHelp": "Agrega un subdirectorio personalizado a la URL del servidor. Por ejemplo: http://ejemplo.com/<baseurl>", + "LabelBaseUrlHelp": "Agregue un subdirectorio personalizado a la URL del servidor. Por ejemplo: http://example.com/ ", "LabelBaseUrl": "URL base:", "LabelEveryXMinutes": "Cada:", "LabelEvent": "Evento:", @@ -539,19 +539,19 @@ "LabelEndDate": "Fecha final:", "LabelEnableSingleImageInDidlLimitHelp": "Algunos dispositivos no se procesarán correctamente si se incrustan varias imágenes en Didl.", "LabelEnableSingleImageInDidlLimit": "Limitar a una sola imagen incrustada", - "LabelEnableRealtimeMonitorHelp": "Los cambios en los archivos se procesarán de inmediato, en los sistemas de archivos compatibles.", + "LabelEnableRealtimeMonitorHelp": "Escuche en el puerto HTTPS configurado. También se debe proporcionar un certificado válido para que esto surta efecto.", "LabelEnableRealtimeMonitor": "Habilitar monitoreo en tiempo real", - "LabelEnableHttpsHelp": "Permite que el servidor escuche en el puerto HTTPS configurado. También se debe configurar un certificado válido para que esto surta efecto.", + "LabelEnableHttpsHelp": "Escuche en el puerto HTTPS configurado. También se debe proporcionar un certificado válido para que esto surta efecto.", "LabelEnableHttps": "Habilitar HTTPS", "LabelEnableHardwareDecodingFor": "Habilite la decodificación por hardware para:", "LabelEnableDlnaServerHelp": "Permite a los dispositivos UPnP en su red navegar y reproducir contenido.", "LabelEnableDlnaServer": "Habilitar servidor DLNA", - "LabelEnableDlnaPlayToHelp": "Detecta dispositivos dentro de tu red y ofrece la posibilidad de controlarlos de forma remota.", + "LabelEnableDlnaPlayToHelp": "Detecte dispositivos dentro de su red y ofrezca la capacidad de controlarlos de forma remota.", "LabelEnableDlnaPlayTo": "Habilitar DLNA para reproducir", "LabelEnableDlnaDebugLoggingHelp": "Cree archivos de registro grandes y solo se deben usar según sea necesario para fines de resolución de problemas.", "LabelEnableDlnaDebugLogging": "Habilitar el registro de depuración DLNA", - "LabelEnableDlnaClientDiscoveryIntervalHelp": "Determina la duración en segundos entre las búsquedas SSDP realizadas por Jellyfin.", - "LabelEnableDlnaClientDiscoveryInterval": "Intervalo de descubrimiento del cliente (segundos)", + "LabelEnableDlnaClientDiscoveryIntervalHelp": "Determina la duración en segundos entre búsquedas SSDP.", + "LabelEnableDlnaClientDiscoveryInterval": "Intervalo de descubrimiento de clientes", "LabelEnableBlastAliveMessagesHelp": "Habilítelo si el servidor no es detectado confiablemente por otros dispositivos UPnP en su red.", "LabelEnableBlastAliveMessages": "Explosión de mensajes vivos", "LabelEnableAutomaticPortMapHelp": "Reenvíe automáticamente los puertos públicos de su enrutador a los puertos locales de su servidor a través de UPnP. Es posible que esto no funcione con algunos modelos de enrutadores o configuraciones de red. Los cambios no se aplicarán hasta después de reiniciar el servidor.", @@ -581,12 +581,12 @@ "LabelDefaultScreen": "Pantalla predeterminada:", "LabelDay": "Día:", "LabelDateTimeLocale": "Fecha hora local:", - "LabelDateAddedBehaviorHelp": "Si un valor de metadatos está presente, siempre se usará antes de cualquiera de estas opciones.", + "LabelDateAddedBehaviorHelp": "Si hay un valor de metadatos, siempre se usará antes de cualquiera de estas opciones.", "LabelDateAddedBehavior": "Comportamiento de fecha agregada para contenido nuevo:", "LabelDateAdded": "Fecha agregada:", "LabelCustomRating": "Calificación personalizada:", "LabelCustomDeviceDisplayNameHelp": "Proporcione un nombre personalizado para mostrar o déjelo vacío para usar el nombre informado por el dispositivo.", - "LabelCustomCssHelp": "Aplique su propio estilo personalizado a la interfaz web.", + "LabelCustomCssHelp": "Aplique sus propios estilos personalizados en la interfaz web.", "LabelCustomCss": "CSS personalizado:", "LabelCustomCertificatePathHelp": "Ruta a un archivo PKCS #12 que contiene un certificado y una clave privada para habilitar el soporte TLS en un dominio personalizado.", "LabelCustomCertificatePath": "Ruta del certificado SSL personalizado:", @@ -598,11 +598,11 @@ "LabelAppNameExample": "Ejemplo: Sickbeard, Sonarr", "LabelAlbumArtMaxWidth": "Ancho máximo de la carátula del álbum:", "LabelAlbumArtMaxHeight": "Altura máxima de la carátula del álbum:", - "ImportMissingEpisodesHelp": "Si está habilitado, la información sobre capítulos faltantes se importará a su base de datos Jellyfin y se mostrará dentro de temporadas y series. Esto puede causar escaneos de bibliotecas significativamente más largos.", + "ImportMissingEpisodesHelp": "La información sobre episodios perdidos se importará a su base de datos y se mostrará dentro de las temporadas y series. Esto puede provocar exploraciones de bibliotecas significativamente más largas.", "HeaderSyncPlayEnabled": "SyncPlay habilitado", "HeaderSyncPlaySelectGroup": "Unirse a un grupo", "HeaderResponseProfileHelp": "Los perfiles de respuesta proporcionan una forma de personalizar la información enviada al dispositivo cuando se reproducen ciertos tipos de medios.", - "HeaderKodiMetadataHelp": "Para habilitar o deshabilitar metadatos NFO, edite una biblioteca en la configuración de la biblioteca Jellyfin y localice la sección de ahorradores de metadatos.", + "HeaderKodiMetadataHelp": "Para habilitar o deshabilitar metadatos NFO, edite una biblioteca y busque la sección de protectores de metadatos.", "EnableDetailsBannerHelp": "Muestra una imagen de la pancarta en la parte superior de la página de detalles del elemento.", "EnableDetailsBanner": "Detalles de la pancarta", "EnableDecodingColorDepth10Vp9": "Habilitar la decodificación por hardware de VP9 de 10-Bit", @@ -647,7 +647,7 @@ "LabelServerName": "Nombre del servidor:", "LabelServerHostHelp": "192.168.1.100:8096 o https://miservidor.com", "LabelServerHost": "Host:", - "LabelSeriesRecordingPath": "Ruta de grabación de la serie (opcional):", + "LabelSeriesRecordingPath": "Ruta de grabación de las series:", "LabelSerialNumber": "Número de serie", "LabelSendNotificationToUsers": "Enviar la notificación a:", "LabelSelectVersionToInstall": "Seleccione la versión para instalar:", @@ -661,7 +661,7 @@ "LabelScheduledTaskLastRan": "Última ejecución {0}, tomando {1}.", "LabelSaveLocalMetadataHelp": "Guardar las ilustraciones en carpetas de medios las colocará en un lugar donde puedan editarse fácilmente.", "LabelSaveLocalMetadata": "Guardar ilustraciones en carpetas de medios", - "LabelRuntimeMinutes": "Tiempo de ejecución (minutos):", + "LabelRuntimeMinutes": "Tiempo de ejecución:", "LabelRequireHttps": "Requerir HTTPS", "LabelRemoteClientBitrateLimit": "Límite de velocidad de transmisión en Internet (Mbps):", "LabelReleaseDate": "Fecha de lanzamiento:", @@ -707,8 +707,8 @@ "LabelOverview": "Visión general:", "LabelOriginalTitle": "Título original:", "LabelOriginalAspectRatio": "Relación de aspecto original:", - "LabelOptionalNetworkPathHelp": "Si esta carpeta se comparte en su red, el suministro de la ruta compartida de la red puede permitir que las aplicaciones Jellyfin en otros dispositivos accedan directamente a los archivos multimedia. Por ejemplo, {0} o {1}.", - "LabelOptionalNetworkPath": "(Opcional) Carpeta de red compartida:", + "LabelOptionalNetworkPathHelp": "Si esta carpeta se comparte en su red, proporcionar la ruta del recurso compartido de red puede permitir que los clientes de otros dispositivos accedan directamente a los archivos multimedia. Por ejemplo, {0} o {1}.", + "LabelOptionalNetworkPath": "Carpeta de red compartida:", "LabelNumberOfGuideDaysHelp": "La descarga de datos de la guía por más días proporciona la capacidad de programar con mayor anticipación y ver más listados, pero también tomará más tiempo descargarlos. Auto elegirá en función de la cantidad de canales.", "LabelNumberOfGuideDays": "Número de días de datos de guía para descargar:", "LabelNumber": "Número:", @@ -720,9 +720,9 @@ "LabelStable": "Estable", "LabelChromecastVersion": "Versión de Chromecast", "LabelName": "Nombre:", - "LabelMusicStreamingTranscodingBitrateHelp": "Especifique una tasa de bits máxima cuando transmita música.", + "LabelMusicStreamingTranscodingBitrateHelp": "Especifique una tasa de bits máxima al transmitir música.", "LabelMusicStreamingTranscodingBitrate": "Velocidad de bits de transcodificación de música:", - "LabelMovieRecordingPath": "Ruta de grabación de películas (opcional):", + "LabelMovieRecordingPath": "Ruta de grabación de películas:", "LabelMoviePrefixHelp": "Si se aplica un prefijo a los títulos de las películas, ingréselo aquí para que el servidor pueda manejarlo correctamente.", "LabelMoviePrefix": "Prefijo de película:", "LabelMovieCategories": "Categorías de películas:", @@ -738,7 +738,7 @@ "LabelMinResumeDuration": "Duración mínima de la reanudación:", "LabelMinBackdropDownloadWidth": "Ancho mínimo de descarga de fondo:", "LabelMethod": "Método:", - "LabelMetadataSaversHelp": "Elija los formatos de archivo para guardar sus metadatos.", + "LabelMetadataSaversHelp": "Elija los formatos de archivo que utilizará al guardar sus metadatos.", "LabelMetadataSavers": "Ahorradores de metadatos:", "LabelMetadataReadersHelp": "Clasifique sus fuentes de metadatos locales preferidas en orden de prioridad. Se leerá el primer archivo encontrado.", "LabelMetadataReaders": "Lectores de metadatos:", @@ -762,12 +762,12 @@ "LabelLogs": "Registros:", "LabelLoginDisclaimerHelp": "Un mensaje que se mostrará en la parte inferior de la página de inicio de sesión.", "LabelLockItemToPreventChanges": "Bloquee este elemento para evitar futuros cambios", - "LabelLocalHttpServerPortNumberHelp": "El número de puerto TCP al que debe unirse al servidor Jellyfin mediante HTTP.", + "LabelLocalHttpServerPortNumberHelp": "El número de puerto TCP para el servidor HTTP.", "LabelLocalHttpServerPortNumber": "Número de puerto HTTP local:", "LabelLibraryPageSize": "Tamaño de página de la biblioteca:", "LabelLanguage": "Idioma:", "LabelLanNetworks": "Redes LAN:", - "OptionAutomaticallyGroupSeriesHelp": "Si está habilitado, las series que se distribuyen en varias carpetas dentro de esta biblioteca se fusionarán automáticamente en una sola serie.", + "OptionAutomaticallyGroupSeriesHelp": "Las series que están distribuidas en varias carpetas dentro de esta biblioteca se fusionarán automáticamente en una sola serie.", "OptionAutomaticallyGroupSeries": "Combinar automáticamente series que se extienden a través de múltiples carpetas", "OptionAllowVideoPlaybackTranscoding": "Permitir reproducción de video que requiere transcodificación", "OptionAllowVideoPlaybackRemuxing": "Permitir reproducción de video que requiere conversión sin volver a codificar", @@ -776,7 +776,7 @@ "OptionAllowRemoteSharedDevicesHelp": "Los dispositivos DLNA se consideran compartidos hasta que un usuario comienza a controlarlos.", "OptionAllowRemoteSharedDevices": "Permitir el control remoto de dispositivos compartidos", "OptionAllowRemoteControlOthers": "Permitir el control remoto de otros usuarios", - "OptionAllowMediaPlaybackTranscodingHelp": "Restringir el acceso a la transcodificación puede causar fallas de reproducción en las aplicaciones Jellyfin debido a formatos de medios no compatibles.", + "OptionAllowMediaPlaybackTranscodingHelp": "Restringir el acceso a la transcodificación puede causar fallas de reproducción en los clientes debido a formatos de medios no admitidos.", "OptionAllowMediaPlayback": "Permitir reproducción de medios", "OptionAllowManageLiveTv": "Permitir la administración de grabaciones de TV en vivo", "OptionAllowLinkSharingHelp": "Solo se comparten páginas web que contienen información de medios. Los archivos multimedia nunca se comparten públicamente. Las acciones tienen un límite de tiempo y caducarán después de {0} días.", @@ -826,7 +826,7 @@ "Mobile": "Móvil", "MinutesBefore": "minutos antes", "MinutesAfter": "minutos después", - "MetadataSettingChangeHelp": "Cambiar la configuración de metadatos afectará el contenido nuevo que se agrega en el futuro. Para actualizar el contenido existente, abra la pantalla de detalles y haga clic en el botón actualizar, o realice actualizaciones masivas utilizando el administrador de metadatos.", + "MetadataSettingChangeHelp": "Cambiar la configuración de metadatos afectará el contenido nuevo agregado en el futuro. Para actualizar el contenido existente, abra la pantalla de detalles y haga clic en el botón Actualizar, o realice actualizaciones masivas usando el administrador de metadatos.", "MetadataManager": "Administrador de metadatos", "Metadata": "Metadatos", "MessageSyncPlayErrorMedia": "¡Error al habilitar SyncPlay! Error de medios.", @@ -839,7 +839,7 @@ "MessageSyncPlayGroupDoesNotExist": "No se pudo unir al grupo porque no existe.", "MessageSyncPlayPlaybackPermissionRequired": "Se requiere permiso de reproducción.", "MessageSyncPlayNoGroupsAvailable": "No hay grupos disponibles. Comienza a reproducir algo primero.", - "MessageSyncPlayGroupWait": "{0} está almacenando...", + "MessageSyncPlayGroupWait": "{0} se está almacenando en búfer…", "MessageSyncPlayUserLeft": "{0} ha abandonado el grupo.", "MessageSyncPlayUserJoined": "{0} se ha unido al grupo.", "MessageSyncPlayDisabled": "SyncPlay deshabilitado.", @@ -849,7 +849,7 @@ "MessageUnableToConnectToServer": "No podemos conectarnos al servidor seleccionado en este momento. Asegúrese de que se esté ejecutando e intente nuevamente.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Las siguientes ubicaciones de medios se eliminarán de su biblioteca:", "MessageReenableUser": "Ver abajo para volver a habilitar", - "MessagePluginInstallDisclaimer": "Los complementos creados por miembros de la comunidad Jellyfin son una excelente manera de mejorar su experiencia Jellyfin con características y beneficios adicionales. Antes de la instalación, tenga en cuenta los efectos que pueden tener en su servidor Jellyfin, como escaneos de bibliotecas más largos, procesamiento en segundo plano adicional y disminución de la estabilidad del sistema.", + "MessagePluginInstallDisclaimer": "Los complementos creados por miembros de la comunidad son una excelente manera de mejorar su experiencia con características y beneficios adicionales. Antes de instalar, tenga en cuenta los efectos que pueden tener en su servidor, como análisis de bibliotecas más prolongados, procesamiento en segundo plano adicional y disminución de la estabilidad del sistema.", "MessagePluginConfigurationRequiresLocalAccess": "Para configurar este complemento, inicie sesión directamente en su servidor local.", "MessagePleaseWait": "Por favor espere. Esto puede tardar un minuto.", "MessagePleaseEnsureInternetMetadata": "Asegúrese de que la descarga de metadatos de Internet esté habilitada.", @@ -883,13 +883,13 @@ "MessageEnablingOptionLongerScans": "Habilitar esta opción puede resultar en escaneos de biblioteca significativamente más largos.", "MessageDownloadQueued": "Descarga en cola.", "MessageDirectoryPickerLinuxInstruction": "Para Linux en Arch Linux, CentOS, Debian, Fedora, openSUSE o Ubuntu, debe otorgar al usuario del servicio al menos acceso de lectura a sus ubicaciones de almacenamiento.", - "MessageDirectoryPickerBSDInstruction": "Para BSD, es posible que deba configurar el almacenamiento dentro de su jaula (Jail) FreeNAS para permitir que Jellyfin acceda a él.", + "MessageDirectoryPickerBSDInstruction": "Para BSD, es posible que deba configurar el almacenamiento dentro de su jaula de FreeNAS para que Jellyfin pueda acceder a sus medios.", "MessageDeleteTaskTrigger": "¿Estás seguro de que desea eliminar este activador de tarea?", "MessageCreateAccountAt": "Cree una cuenta en {0}", "MessageContactAdminToResetPassword": "Póngase en contacto con el administrador del sistema para restablecer su contraseña.", "MessageConfirmShutdown": "¿Está seguro de que desea apagar el servidor?", - "MessageConfirmRevokeApiKey": "¿Está seguro de que desea revocar esta clave de API? La conexión de la aplicación al servidor Jellyfin se cerrará abruptamente.", - "MessageConfirmRestart": "¿Está seguro de que desea reiniciar el servidor Jellyfin?", + "MessageConfirmRevokeApiKey": "¿Está seguro de que desea revocar esta clave de API? La conexión de la aplicación a este servidor se interrumpirá abruptamente.", + "MessageConfirmRestart": "¿Estás seguro de que deseas reiniciar Jellyfin?", "MessageConfirmRemoveMediaLocation": "¿Estás seguro de que deseas eliminar esta ubicación?", "MessageConfirmRecordingCancellation": "¿Cancelar grabación?", "MessageConfirmProfileDeletion": "¿Estás seguro de que deseas eliminar este perfil?", @@ -938,7 +938,7 @@ "LearnHowYouCanContribute": "Aprende cómo puedes contribuir.", "LatestFromLibrary": "Últimos {0}", "Large": "Grande", - "LabelffmpegPathHelp": "La ruta al archivo de la aplicación ffmpeg o la carpeta que contiene ffmpeg.", + "LabelffmpegPathHelp": "La ruta al archivo o carpeta de la aplicación ffmpeg que contiene ffmpeg.", "LabelffmpegPath": "Ruta de FFmpeg:", "LabelZipCode": "Código postal:", "LabelYear": "Año:", @@ -1000,12 +1000,12 @@ "OptionEnableAccessFromAllDevices": "Habilite el acceso desde todos los dispositivos", "OptionEmbedSubtitles": "Incrustar dentro del contenedor", "OptionDvd": "DVD", - "OptionDownloadImagesInAdvanceHelp": "Por defecto, la mayoría de las imágenes solo se descargan cuando lo solicita una aplicación Jellyfin. Active esta opción para descargar todas las imágenes de antemano, ya que se importan nuevos medios. Esto puede causar escaneos de biblioteca significativamente más largos.", + "OptionDownloadImagesInAdvanceHelp": "De forma predeterminada, la mayoría de las imágenes solo se descargan cuando lo solicita un cliente. Habilite esta opción para descargar todas las imágenes por adelantado, ya que se importan nuevos medios. Esto puede provocar exploraciones de bibliotecas significativamente más largas.", "OptionDownloadImagesInAdvance": "Descargar imágenes por adelantado", "OptionDisplayFolderViewHelp": "Mostrar carpetas junto con sus otras bibliotecas de medios. Esto puede ser útil si desea tener una vista de carpeta simple.", "OptionDisplayFolderView": "Mostrar una vista de carpeta para mostrar carpetas de medios simples", "OptionDislikes": "No me gustas", - "OptionDisableUserHelp": "Si está deshabilitado, el servidor no permitirá ninguna conexión de este usuario. Las conexiones existentes se terminarán abruptamente.", + "OptionDisableUserHelp": "El servidor no permitirá ninguna conexión de este usuario. Las conexiones existentes terminarán abruptamente.", "OptionDisableUser": "Deshabilitar este usuario", "OptionDatePlayed": "Fecha de reproducción", "OptionDateAddedImportTime": "Use la fecha escaneada en la biblioteca", @@ -1050,7 +1050,7 @@ "ReleaseDate": "Fecha de lanzamiento", "RefreshQueued": "Actualizar cola.", "RefreshMetadata": "Actualizar metadatos", - "RefreshDialogHelp": "Los metadatos se actualizan en función de la configuración y los servicios de Internet que están habilitados en el panel del servidor Jellyfin.", + "RefreshDialogHelp": "Los metadatos se actualizan en función de la configuración y los servicios de Internet que están habilitados en el panel.", "Refresh": "Actualizar", "Recordings": "Grabaciones", "RecordingScheduled": "Grabación programada.", @@ -1077,9 +1077,9 @@ "PreferEmbeddedEpisodeInfosOverFileNamesHelp": "Esto usa la información de los metadatos incrustados del capítulo si está disponible.", "PreferEmbeddedTitlesOverFileNamesHelp": "Esto determina el título de visualización predeterminado cuando no hay metadatos de Internet o metadatos locales disponibles.", "PreferEmbeddedTitlesOverFileNames": "Preferir títulos incrustados sobre nombres de archivo", - "MessagePluginInstalled": "El complemento se ha instalado correctamente. El servidor Jellyfin deberá reiniciarse para que los cambios surtan efecto.", + "MessagePluginInstalled": "El complemento se ha instalado correctamente. Será necesario reiniciar el servidor para que los cambios surtan efecto.", "PleaseSelectTwoItems": "Seleccione al menos dos elementos.", - "PleaseRestartServerName": "Reinicie el servidor Jellyfin - {0}.", + "PleaseRestartServerName": "Por favor reinicie el servidor Jellyfin en {0}.", "PleaseEnterNameOrId": "Por favor, introduzca un nombre o una ID externa.", "PleaseConfirmPluginInstallation": "Haga clic en Aceptar para confirmar que ha leído lo anterior y desea continuar con la instalación del complemento.", "PleaseAddAtLeastOneFolder": "Agregue al menos una carpeta a esta biblioteca haciendo clic en el botón Agregar.", @@ -1100,7 +1100,7 @@ "PerfectMatch": "Combinación perfecta", "People": "Personas", "PasswordSaved": "Contraseña guardada.", - "PasswordResetProviderHelp": "Elija un proveedor de restablecimiento de contraseña para usar cuando este usuario solicite un restablecimiento de contraseña", + "PasswordResetProviderHelp": "Elija un proveedor de restablecimiento de contraseña que se utilizará cuando este usuario solicite un restablecimiento de contraseña.", "PasswordResetConfirmation": "¿Estás seguro de que deseas restablecer la contraseña?", "PasswordResetComplete": "La contraseña ha sido restablecida.", "PasswordMatchError": "La contraseña y la confirmación de la contraseña deben coincidir.", @@ -1117,7 +1117,7 @@ "OptionTrackName": "Nombre de la pista", "OptionSubstring": "Subcadena", "OptionSpecialEpisode": "Especiales", - "OptionSaveMetadataAsHiddenHelp": "Cambiar esto se aplicará a los nuevos metadatos guardados en el futuro. Los archivos de metadatos existentes se actualizarán la próxima vez que el servidor Jellyfin los guarde.", + "OptionSaveMetadataAsHiddenHelp": "Cambiar esto se aplicará a los nuevos metadatos guardados en el futuro. Los archivos de metadatos existentes se actualizarán la próxima vez que el servidor los guarde.", "OptionSaveMetadataAsHidden": "Guardar metadatos e imágenes como archivos ocultos", "OptionResumable": "Reanudable", "OptionResElement": "elemento res", @@ -1132,9 +1132,9 @@ "OptionProtocolHls": "Transmisión en vivo HTTP", "OptionPremiereDate": "Fecha de estreno", "OptionPlayCount": "Cuento de reproducciones", - "OptionPlainVideoItemsHelp": "Si está habilitado, todos los videos se representan en DIDL como \"object.item.videoItem\" en lugar de un tipo más específico, como \"object.item.videoItem.movie\".", + "OptionPlainVideoItemsHelp": "Todos los videos se representan en DIDL como \"object.item.videoItem\" en lugar de un tipo más específico, como \"object.item.videoItem.movie\".", "OptionPlainVideoItems": "Mostrar todos los videos como elementos de video simples", - "OptionPlainStorageFoldersHelp": "Si está habilitado, todas las carpetas se representan en DIDL como \"object.container.storageFolder\" en lugar de un tipo más específico, como \"object.container.person.musicArtist\".", + "OptionPlainStorageFoldersHelp": "Todas las carpetas se representan en DIDL como \"object.container.storageFolder\" en lugar de un tipo más específico, como \"object.container.person.musicArtist\".", "OptionPlainStorageFolders": "Mostrar todas las carpetas como carpetas de almacenamiento sin formato", "OptionParentalRating": "Calificación parental", "OptionOnInterval": "En un intervalo", @@ -1146,7 +1146,7 @@ "OptionIsSD": "SD", "OptionIsHD": "HD", "OptionImdbRating": "Calificación de IMDb", - "OptionIgnoreTranscodeByteRangeRequestsHelp": "Si está habilitado, estas solicitudes serán atendidas pero ignorarán el encabezado del rango de bytes.", + "OptionIgnoreTranscodeByteRangeRequestsHelp": "Estas solicitudes se aceptarán pero ignorarán el encabezado del rango de bytes.", "OptionIgnoreTranscodeByteRangeRequests": "Ignorar las solicitudes de rango de bytes de transcodificación", "OptionHlsSegmentedSubtitles": "Subtítulos segmentados HLS", "OptionHideUserFromLoginHelp": "Útil para cuentas de administrador privadas u ocultas. El usuario deberá iniciar sesión manualmente ingresando su nombre de usuario y contraseña.", @@ -1183,7 +1183,7 @@ "LastSeen": "Visto por última vez {0}", "PersonRole": "como {0}", "ListPaging": "{0}-{1} de {2}", - "WriteAccessRequired": "El servidor Jellyfin requiere acceso de escritura a esta carpeta. Asegúrese del acceso de escritura e intente nuevamente.", + "WriteAccessRequired": "Jellyfin requiere acceso de escritura a esta carpeta. Asegúrese de tener acceso de escritura y vuelva a intentarlo.", "PathNotFound": "La ruta no se pudo encontrar. Asegúrese de que la ruta sea válida e intente nuevamente.", "Yes": "Sí", "Yadif": "YADIF", @@ -1308,10 +1308,10 @@ "SettingsWarning": "Cambiar estos valores puede causar inestabilidad o fallas de conectividad. Si tiene algún problema, le recomendamos cambiarlos a los valores predeterminados.", "SettingsSaved": "Configuraciones guardadas.", "Settings": "Configuraciones", - "ServerUpdateNeeded": "Este servidor Jellyfin necesita ser actualizado. Para descargar la última versión, visite {0}", - "ServerRestartNeededAfterPluginInstall": "El servidor Jellyfin deberá reiniciarse después de instalar un complemento.", - "ServerNameIsShuttingDown": "Servidor Jellyfin: {0} se está cerrando.", - "ServerNameIsRestarting": "Servidor Jellyfin: {0} se está reiniciando.", + "ServerUpdateNeeded": "Este servidor debe actualizarse. Para descargar la última versión, visite {0}", + "ServerRestartNeededAfterPluginInstall": "Jellyfin deberá reiniciarse después de instalar un complemento.", + "ServerNameIsShuttingDown": "El servidor en {0} se está apagando.", + "ServerNameIsRestarting": "El servidor en {0} se está reiniciando.", "SeriesYearToPresent": "{0} - Presente", "SeriesSettings": "Configuraciones de la serie", "SeriesRecordingScheduled": "Grabación de la serie programada.", @@ -1390,5 +1390,33 @@ "MediaInfoColorTransfer": "Transferencia de color", "MediaInfoColorSpace": "Espacio de color", "MediaInfoVideoRange": "Rango de video", - "LabelKnownProxies": "Proxies conocidos:" + "LabelKnownProxies": "Proxies conocidos:", + "LabelMaxMuxingQueueSizeHelp": "Número máximo de paquetes que se pueden almacenar en búfer mientras se espera que se inicialicen todos los flujos. Intente aumentarlo si todavía encuentra el error \"Demasiados paquetes almacenados en búfer para el flujo de salida\" en los registros de ffmpeg. El valor recomendado es 2048.", + "LabelMaxMuxingQueueSize": "Tamaño máximo de la cola de muxing:", + "LabelTonemappingParamHelp": "Sintonice el algoritmo de mapeo de tonos. Los valores recomendados y predeterminados son NaN. Generalmente déjelo en blanco.", + "LabelTonemappingPeakHelp": "Anule la señal/nominal/pico de referencia con este valor. Útil cuando la información de picos incrustada en los metadatos de visualización no es confiable o cuando el mapeo de tonos de un rango más bajo a un rango más alto. Los valores recomendados y predeterminados son 0.", + "LabelTonemappingThresholdHelp": "Los parámetros del algoritmo de mapeo de tonos se ajustan con precisión para cada escena. Y se usa un umbral para detectar si la escena ha cambiado o no. Si la distancia entre el brillo promedio del cuadro actual y el promedio actual excede un valor de umbral, volveríamos a calcular el brillo promedio y pico de la escena. Los valores recomendados y predeterminados son 0.8 y 0.2.", + "LabelTonemappingDesatHelp": "Aplique desaturación para reflejos que superen este nivel de brillo. Cuanto mayor sea el parámetro, más información de color se conservará. Esta configuración ayuda a evitar colores apagados de forma no natural para las altas luces, convirtiéndose (suavemente) en blanco. Esto hace que las imágenes se sientan más naturales, a costa de reducir la información sobre colores fuera de rango. Los valores recomendados y predeterminados son 0 y 0,5.", + "LabelTonemappingDesat": "Desaturación del mapa de tonos:", + "TonemappingRangeHelp": "Seleccione la gama de colores de salida. Auto es el mismo que el rango de entrada.", + "TonemappingAlgorithmHelp": "El mapeo de tonos se puede ajustar con precisión. Si no está familiarizado con estas opciones, mantenga las predeterminadas. El valor recomendado es Reinhard.", + "AllowTonemappingHelp": "El mapeo de tonos puede transformar el rango dinámico de un video de HDR a SDR mientras mantiene los detalles y colores de la imagen, que son información muy importante para representar la escena original. Actualmente solo funciona cuando se transcodifican videos con metadatos HDR10 o HLG integrados. Si la reproducción no es fluida o falla, considere apagar el decodificador de hardware correspondiente.", + "QuickConnectNotActive": "La conexión rápida no está activa en este servidor", + "QuickConnectNotAvailable": "Pida al administrador del servidor que habilite la conexión rápida", + "QuickConnectInvalidCode": "Código de conexión rápida no válido", + "QuickConnectDescription": "Para iniciar sesión con conexión rápida, seleccione el botón Conexión rápida en el dispositivo desde el que está iniciando sesión e ingrese el código que se muestra a continuación.", + "QuickConnectDeactivated": "La conexión rápida se desactivó antes de que se pudiera aprobar la solicitud de inicio de sesión", + "QuickConnectAuthorizeFail": "Código de conexión rápida desconocido", + "QuickConnectAuthorizeSuccess": "Solicitud autorizada", + "QuickConnectAuthorizeCode": "Ingrese el código {0} para iniciar sesión", + "QuickConnectActivationSuccessful": "Activado con éxito", + "QuickConnect": "Conexión rápida", + "LabelQuickConnectCode": "Código de conexión rápida:", + "LabelCurrentStatus": "Estado actual:", + "KnownProxiesHelp": "Lista separada por comas de direcciones IP de proxies conocidos que se utilizan al conectarse a su instancia de Jellyfin. Esto es necesario para hacer un uso adecuado de los encabezados X-Fordered-For. Requiere reiniciar después de guardar.", + "EnableQuickConnect": "Habilitar la conexión rápida en este servidor", + "EnableAutoCast": "Establecer por defecto", + "ButtonUseQuickConnect": "Utilizar conexión rápida", + "ButtonActivate": "Activar", + "Authorize": "Autorizar" } From 51ef5ff20667998cf3907338318f9f7cc708f64a Mon Sep 17 00:00:00 2001 From: Eben van Deventer Date: Fri, 25 Sep 2020 19:21:47 +0000 Subject: [PATCH 154/365] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 93 ++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 84 insertions(+), 9 deletions(-) diff --git a/src/strings/af.json b/src/strings/af.json index 85c9c817c3..0de72527bb 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -1,21 +1,21 @@ { "Auto": "Outo", - "AuthProviderHelp": "Kies 'n Authentication Provider vir die egtheid van gebruiker se wagwoord.", + "AuthProviderHelp": "Kies 'n sekuriteitsverskaffer om hierdie gebruiker se wagvoor te bevestig.", "Audio": "Klank", - "AspectRatio": "Aspek verhouding", + "AspectRatio": "Aspek-verhouding", "Ascending": "Boontoe", "AsManyAsPossible": "So veel moontlik", "Artists": "Kunstenare", "Art": "Kuns", - "AroundTime": "Omtrent {0}", + "AroundTime": "Ongeveer", "Anytime": "Enige tyd", - "AnyLanguage": "Enige taal", + "AnyLanguage": "Enige Taal", "AlwaysPlaySubtitlesHelp": "Subtitels wat ooreenstem met taal voorkeur sal gelaai work ongeag oudio taal.", - "AlwaysPlaySubtitles": "Subtitels word altyd toegelaat", + "AlwaysPlaySubtitles": "Speel Altyd", "AllowedRemoteAddressesHelp": "Komma skeiding lys van IP adresse of IP/netmask toegange van netwerke wat toegelaat word vir afgeleë konneksies. As die leeg gelos sal enige afgeleë konneksies toegelaat word.", "AllowRemoteAccessHelp": "As afgetik, alle afgeleë verbinding sal geblokkeer word.", - "AllowRemoteAccess": "Toelating tot afgeleë verbinding na hierdie Jellyfin bediener.", - "AllowOnTheFlySubtitleExtractionHelp": "Ingebedde ondertitels kan uitgepak word uit videos en bedien word na kliënte in eenvoudige teks om transkodeering van video te verlig. Op sekere sisteme kan die langer vat en video terugspeel vertraag deur die ekstraksie metode. Deaktiveer die opsie om ingebedde ondertitels in video te heg tydens transkodeer vir die gebruik van eie kliënt toestel.", + "AllowRemoteAccess": "Laat eksterne konneksies toe na hierdie lêerbediener.", + "AllowOnTheFlySubtitleExtractionHelp": "Ingebedde onderskrifte kan onttrek word uit videos en bedien word aan kliënte in eenvoudige teks om transkodeering van video te verminder. Op sekere stelsels kan dit langer vat en die terugspeel van video vertraag. Deaktiveer die opsie om ingebedde onderskrifte in video te heg tydens transkodering vir die gebruik van eie kliënt-toestelle.", "AllowOnTheFlySubtitleExtraction": "Laat toe die onmiddellike ondertitel ekstraksie", "AllowMediaConversionHelp": "Gee of weier toegang to die media omskepping funksie.", "AllowMediaConversion": "Laat media omsitting toe", @@ -23,7 +23,7 @@ "AllLibraries": "Alle biblioteke", "AllLanguages": "Alle tale", "AllEpisodes": "Alle episodes", - "AllComplexFormats": "Alle ingewikkelde formate (ASS, SSA, VOBSUB, PGS, SUB/IDX, ens.)", + "AllComplexFormats": "Alle Ingewikkelde Formate (ASS, SSA, VOBSUB, PGS, SUB, IDX, ens.)", "AllChannels": "Alle kanale", "All": "Als", "Alerts": "Waarskuwings", @@ -132,5 +132,80 @@ "TabNetworking": "Netwerking", "TabNetworks": "Netwerke", "TabMusic": "Musiek", - "TabLogs": "Logs" + "TabLogs": "Logs", + "Channels": "Kanale", + "ChannelNumber": "Kanaal nommer", + "ChannelNameOnly": "Slegs Kanaal {0}", + "ChannelAccessHelp": "Kies die kanale om met hierdie verbruiker te deel. Administrateurs sal alle kanale kan wysig met die metadata bestuurder.", + "ChangingMetadataImageSettingsNewContent": "Veranderinge tot metadate of kuns aflaai verstellings sal slegs van toepassing wees op nuwe inhoud wat in die versameling gevoeg word. Om veranderinge toe te pas op bestaande titels sal u titels se metadata individueel moet vervris.", + "Categories": "Kategorieë", + "CancelSeries": "Kanselleer reeks", + "CancelRecording": "Kanselleer opname", + "ButtonWebsite": "Webtuiste", + "ButtonUseQuickConnect": "Gebruik Vinnige Konneksie", + "ButtonUninstall": "Verwyder", + "ButtonTrailer": "Voorskou", + "ButtonTogglePlaylist": "Snitlys", + "ButtonSubmit": "Dien In", + "ButtonSplit": "Verdeel", + "ButtonStop": "Stop", + "ButtonStart": "Begin", + "ButtonSignOut": "Skakel Uit", + "ButtonSignIn": "Skakel In", + "ButtonShutdown": "Skakel Af", + "ButtonSend": "Stuur", + "ButtonSelectView": "Kies uitsig", + "ButtonScanAllLibraries": "Skandeer Alle Versamelings", + "ButtonRevoke": "Herroep", + "ButtonResume": "Hervat", + "ButtonResetEasyPassword": "Herstel maklike PIN kode", + "ButtonRename": "Herbenoem", + "ButtonRemove": "Verwyder", + "ButtonRefreshGuideData": "Vervris Gids Data", + "ButtonQuickStartGuide": "Vinnige Begin Gids", + "ButtonPreviousTrack": "Vorige Snit", + "ButtonPause": "Staak", + "ButtonParentalControl": "Ouerbeheer", + "ButtonOpen": "Maak Oop", + "ButtonOk": "Regso", + "ButtonNextTrack": "Volgende Snit", + "ButtonNetwork": "Netwerk", + "ButtonMore": "Meer", + "ButtonManualLogin": "Handmatige Inteken", + "ButtonLibraryAccess": "Versameling toegang", + "ButtonInfo": "Inligting", + "ButtonGotIt": "Het Dit So", + "ButtonFullscreen": "Volskerm", + "ButtonForgotPassword": "Vergete Wagwoord", + "ButtonEditOtherUserPreferences": "Wysig die verbruiker se profiel, foto en persoonlike voorkeure.", + "ButtonCancel": "Kanselleer", + "ButtonBack": "Terug", + "ButtonAudioTracks": "Klankbane", + "ButtonArrowRight": "Regs", + "ButtonArrowLeft": "Links", + "ButtonAddUser": "Voeg Verbruiker", + "ButtonAddScheduledTaskTrigger": "Voeg Sneller", + "ButtonAddMediaLibrary": "Voeg Media Versameling", + "ButtonAddImage": "Voeg Beeld", + "ButtonActivate": "Aktiveer", + "MessageBrowsePluginCatalog": "Blaai deur ons inprop-sagteware versameling om beskikbare inprop-sagteware te sien.", + "Browse": "Blaai Deur", + "BoxRear": "Boks (agterkant)", + "BoxSet": "Boksstel", + "Box": "Boks", + "Books": "Boeke", + "BookLibraryHelp": "Klank- en Skriftelike boeke word ondersteun. Hersien die {0} boek benamingsgids {1}.", + "Blacklist": "Swartlys", + "BirthPlaceValue": "Geboorteplek: {0}", + "BirthLocation": "Geboorteplek", + "BirthDateValue": "Gebore: {0}", + "Banner": "Banier", + "Backdrops": "Agtergronde", + "Backdrop": "Agtergrond", + "Authorize": "Magtig", + "AskAdminToCreateLibrary": "Vra 'n administrateur om 'n versameling te skep.", + "Artist": "Kunstenaar", + "AllowFfmpegThrottlingHelp": "Wanneer 'n transkodering of remux ver genoeg voor die huidige terugspeel posisie is, vertraag die proses sodat dit minder hulpbronne verbruik. Hierdie is meer gebruiklik wanneer daar nie gereeld gesoek word tydens die kyk van video nie. Skakel hierdie af as u terugspeel probleme ervaar.", + "AllowFfmpegThrottling": "Smoorklep Transkoderings", + "Album": "Album" } From eadca28e965ae918ddaa88049d21e7466e1c527d Mon Sep 17 00:00:00 2001 From: Eben van Deventer Date: Fri, 25 Sep 2020 19:54:57 +0000 Subject: [PATCH 155/365] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/strings/af.json b/src/strings/af.json index 0de72527bb..afb0983eef 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -56,7 +56,7 @@ "LastSeen": "Laas gekyk {0}", "PersonRole": "soos {0}", "ListPaging": "{0}-{1} van {2}", - "WriteAccessRequired": "Jellyfin Bediener benodig skryf toegang tot die leêr. Maak asseblief seker dat dit skryf toegang het en probeer weer.", + "WriteAccessRequired": "Jellyfin benodig skryf toegang tot die leêr. Maak asseblief seker dat dit skryf toegang het en probeer weer.", "PathNotFound": "Die pad kon nie gevind word nie. Maak asseblief seker dat die pad geldig is en probeer weer.", "Yesterday": "Gister", "Yes": "Ja", @@ -67,7 +67,7 @@ "XmlTvKidsCategoriesHelp": "Programme met die kategorieë sal vertoon word as programme vir kinders. Verdeel met veelvuldige '|'.", "XmlDocumentAttributeListHelp": "Hierdie kenmerke word toegepas tot die wortel element van elke XML reaksie.", "Writer": "Skrywer", - "WizardCompleted": "Dit is al wat ons benodig vir nou. Jellyfin het begin om inligting van jou media biblioteek te versamel. Kyk na van ons apps, en dan klik Finaliseer om die Paneelbord.", + "WizardCompleted": "Dit is al wat ons benodig vir nou. Jellyfin het begin om inligting van jou media biblioteek te versamel. Kyk na van ons toeps, en klik dan Finaliseer om die Paneelbord te verkry.", "Whitelist": "Witlys", "WelcomeToProject": "Welkom tot Jellyfin!", "Wednesday": "Woensdag", @@ -207,5 +207,8 @@ "Artist": "Kunstenaar", "AllowFfmpegThrottlingHelp": "Wanneer 'n transkodering of remux ver genoeg voor die huidige terugspeel posisie is, vertraag die proses sodat dit minder hulpbronne verbruik. Hierdie is meer gebruiklik wanneer daar nie gereeld gesoek word tydens die kyk van video nie. Skakel hierdie af as u terugspeel probleme ervaar.", "AllowFfmpegThrottling": "Smoorklep Transkoderings", - "Album": "Album" + "Album": "Album", + "HeaderAlbumArtists": "Album Kunstenaars", + "Genres": "Genres", + "Favorites": "Gunstellinge" } From 478dd44d8eefbd27cbe8bff9be0025f78e6696db Mon Sep 17 00:00:00 2001 From: Eben van Deventer Date: Fri, 25 Sep 2020 19:57:20 +0000 Subject: [PATCH 156/365] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 118 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 117 insertions(+), 1 deletion(-) diff --git a/src/strings/af.json b/src/strings/af.json index afb0983eef..598bdcac31 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -210,5 +210,121 @@ "Album": "Album", "HeaderAlbumArtists": "Album Kunstenaars", "Genres": "Genres", - "Favorites": "Gunstellinge" + "Favorites": "Gunstellinge", + "ExtraLarge": "Ekstra Groot", + "ExitFullscreen": "Verlaat volskerm", + "EveryNDays": "Elke {0} dae", + "ErrorSavingTvProvider": "Daar was 'n fout met die berging van die TV-verskaffer. Maak asseblief seker dat dit beskikbaar is en probeer weer.", + "ErrorPleaseSelectLineup": "Kies asseblief 'n gids en probeer weer. As geen gids beskikbaar is nie, maak asseblief seker dat u verbruikersnaam, sleutelwoord en poskode korrek is.", + "ErrorStartHourGreaterThanEnd": "Eindetyd moet later wees as die begintyd.", + "ErrorGettingTvLineups": "Daar was 'n fout met die aflaai van die TV gids. Maak asseblief serker u inligting is korrek en probeer weer.", + "ErrorDeletingItem": "Daar was 'n fout met die uitveë van die item van die bediener af. Maak asseblief seker dat Jellyfin skryf-toegang het tot die media gidslêer en probeer weer.", + "ErrorAddingXmlTvFile": "Daar was 'n fout in die toegang tot die XMLTV lêer. Maak asseblief seker dat die lêer bestaan en probeer weer.", + "ErrorAddingTunerDevice": "Daar was 'n fout met die toevoeg van die inteken-toestel. Maak asb seker dat dit toeganklik is en probeer weer.", + "ErrorAddingMediaPathToVirtualFolder": "Daar was 'n fout in die toevoeg van die media bergingsplek. Maak asb seker dat die gemelde bergingsplek korrek is en dat Jellyfin toegang het tot daardie bergingsplek.", + "ErrorAddingListingsToSchedulesDirect": "Daar was 'n fout in die toevoeg van die lys tot u Schedules Direct rekening. Schedules Direct laat slegs 'n beperkde hoeveelheid lyste per rekening toe. U mag dit nodig vind om in te skakel op die Schedules Direct webtuiste om sekere lyste te verwyder van u rekening alvorens u kan voortgaan.", + "Episodes": "Episodes", + "Episode": "Episode", + "EndsAtValue": "Eindig om {0}", + "Ended": "Geëindig", + "EnableDetailsBannerHelp": "Wys 'n banier-beeld bo aan die item besonderhede blad.", + "EnableDetailsBanner": "Besonderhede Banier", + "EnableThemeVideosHelp": "Speel tema-videos in die agtergrond terwyl deur die versameling geblaai word.", + "EnableThemeSongsHelp": "Speel tema-liedjies in die agtergrond terwyl daur die versameling geblaai word.", + "EnableStreamLoopingHelp": "Aktiveer hierdie as die lewendige stroom net 'n paar sekondes data bevat en gereeld versoek moet word. Om hierdie te aktiveer wanneer dit nie nodig is nie kan probleme veroorsaak.", + "EnableStreamLooping": "Auto-lus lewendige strome", + "EnableQuickConnect": "Aktiveer vinnige-inskakel op hierdie bediener", + "EnablePhotosHelp": "Beelde sal opgetel en gewys word saam met ander media leêrs.", + "EnablePhotos": "Wys fotos", + "EnableNextVideoInfoOverlayHelp": "Aan die einde van 'n video, wys inligting oor die volgende video op die snitlys.", + "EnableNextVideoInfoOverlay": "Wys volgende video se inligting tydens terugspeel", + "EnableHardwareEncoding": "Aktiveer hardeware enkodering", + "EnableExternalVideoPlayersHelp": "'n Eksterne speler spyskaart sal gewys word wanneer video terugspeel begin.", + "EnableExternalVideoPlayers": "Eksterne videospelers", + "EnableDisplayMirroring": "Beeld weerspieëling", + "EnableDecodingColorDepth10Vp9": "Aktiveer 10-Bis hardeware dekodering vir VP9", + "EnableDecodingColorDepth10Hevc": "Aktiveer 10-Bis hardeware dekodering vir HEVC", + "EnableColorCodedBackgrounds": "Kleurgepasde agtergronde", + "EnableCinemaMode": "Teater verstelling", + "EnableBackdropsHelp": "Wys agtergronde in die agtergrond van sekere blaaie terwyl die versameling deurblaai word.", + "EnableAutoCast": "Stel as Standaard", + "EditSubtitles": "Wysig onderskrifte", + "EditMetadata": "Wysig metadata", + "EditImages": "Wysig beelde", + "Edit": "Wysig", + "EasyPasswordHelp": "U maklike PIN kode word gebruik vir aflyn toegang op ondersteunde kliënte en kan ook gebruik word vir maklike in-netwerk inskakeling.", + "DrmChannelsNotImported": "Kanale met DRM sal nie ingetrek word nie.", + "DownloadsValue": "{0} afgelaaide items", + "Download": "Laai af", + "Down": "Af", + "DoNotRecord": "Moet nie opneem nie", + "DisplayModeHelp": "Kies die uitleg-styl wat u wil hê vir die koppelvlak.", + "DisplayMissingEpisodesWithinSeasonsHelp": "Hierdie moet ook geaktiveer wees vir TV versamelings in die bediener verstellings.", + "DisplayMissingEpisodesWithinSeasons": "Wys vermisde episodes binne reekse", + "DisplayInOtherHomeScreenSections": "Wys in tuisskerm afdelings soos die nuutste media en hou aan kyk", + "DisplayInMyMedia": "Wys tuis skerm", + "Display": "Wys", + "Disconnect": "Ontkoppel", + "Disc": "Skyf", + "Directors": "Ressigeurs", + "Director": "Ressigeur", + "DirectStreaming": "Direkte stroming", + "DirectStreamHelp2": "Direkte stroming gebruik baie min verwerkings-krag met minimale verliese aan videogehalte.", + "DirectStreamHelp1": "Die media is versoenbaar met die toestel met betrekking tot resolusie en media tipe (H264, AC3, ens.), maar in 'n nie-versoenbare lêertipe (mkv, avi, wmv, ens.). Die video sal outomaties herverpak word alvorens dit na die toestel versend kan word.", + "DirectPlaying": "Direkte speling", + "DeviceAccessHelp": "Hierdie verwyder slegs na toestelle wat uniek geidentifiseer kan word en sal nie blaaier-toegang beperk nie. Die filter van verbruikers-toestelle se toegang sal hulel verhoed om nuwe toestelle te voeg totdat hulle hier goedgekeur word.", + "DetectingDevices": "Soek na toestelle", + "Desktop": "Werkskerm", + "Descending": "Afwaarts", + "DeleteUserConfirmation": "Is u seker dat u hierdie verbruiker wil verwyder?", + "DeleteUser": "Verwyder Verbruiker", + "DeleteMedia": "Verwyder media", + "DeleteImageConfirmation": "Is u seker dat u hierdie beeld wil verwyder?", + "DeleteImage": "Verwyder Beeld", + "DeleteDeviceConfirmation": "Is u seker dat u hierdie toestel wil verwyder? Dit sal weer verskyn die volgende keer wat 'n verbruiker daarmee inteken.", + "Delete": "Verwyder", + "DeinterlaceMethodHelp": "Kies die destrikkingsmetode om te gebruik wanneer sagteware verstrikte inhoud transkodeer. Wanneer hardeware-versnelling aangeskakel is en die nodige hardeware beskikbaar is, word die hardeware destrikker gebruik eerder as hierdie versnelling.", + "DefaultSubtitlesHelp": "Onderskrifte word gelaai gebasseer op die standaard en geforseerde verstellings in die ingeboude metadata. Taal-voorkeure word in ag geneem wanneer verskeie opsies beskikbaar is.", + "DefaultMetadataLangaugeDescription": "Hierdie is jou standaard-verstellings en kan gespesifiseer word op 'n per-versameling basis.", + "ErrorDefault": "Daar was 'n probleem met die verwerking van die versoek. Probeer asseblief later weer.", + "Default": "Standaard", + "DeathDateValue": "Oorlede: {0}", + "DatePlayed": "Datum gespeel", + "DateAdded": "Datum toegevoeg", + "Data": "Data", + "CustomDlnaProfilesHelp": "Skep 'n persoonlike profiel om 'n nuwe toestel te teiekn of om die stelsel-profiel to oorheers.", + "CriticRating": "Filkritiek gradering", + "CopyStreamURLSuccess": "URL suksesvol gekopieër.", + "CopyStreamURL": "Kopieër Stroom URL", + "Continuing": "Voortsettend", + "ContinueWatching": "Kyk voort", + "Connect": "Konnekteer", + "ConfirmEndPlayerSession": "Wil u Jellyfin afskakel op {0}?", + "ConfirmDeletion": "Bevestig Uitvee", + "ConfirmDeleteItems": "As u hierdie items uitvee sal dit beide die lêers op u stelsel en die inhoud in die media versameling uitvee. Is u seker u wil voortgaan?", + "ConfirmDeleteItem": "As u hierdie item uitvee sal dit beide die lêer op u stelsel en die inhoud in die media versameling uitvee. Is u seker u wil voortgaan?", + "ConfirmDeleteImage": "Verwyder beeld?", + "ConfigureDateAdded": "Bepaal hoe datum gelaai gebruik word in die paneelbord onder versameling-instellings", + "Composer": "Komponis", + "CommunityRating": "Gemeenskapgradering", + "ColorTransfer": "Kleur oordrag", + "ColorSpace": "Kleurruimte", + "ClientSettings": "Kliënt Verstellings", + "CinemaModeConfigurationHelp": "Die teater-verstelling bring die teater ervaring reguit na jou sitkamer toe met die vermoë om voorprente en u eie inleidings voor die film te speel.", + "ButtonSelectDirectory": "Kies Lêergids", + "ButtonChangeServer": "Verander Lêerbediener", + "ButtonAddServer": "Voeg Lêerbediener", + "BurnSubtitlesHelp": "Bepaal of die lêerbediener onderskrifte moet inbrand wanneer videos getranskodeer word. Om dit nie te doen nie sal uitvoering verbeter. Kies Brand Outomaties om beeld-gebasseerde formate (VOBSUB, PGS, SUB, IDX, ens.) en sekere ASS of SSA onderskrifte in te brand.", + "ShowYear": "Wys jaar", + "ShowTitle": "Wys titel", + "Raised": "Gelig", + "OptionResElement": "res element", + "DropShadow": "Valskadu", + "Sync": "Sinkroniseer", + "Songs": "Liedjies", + "Shows": "Televisie Reekse", + "Playlists": "Snitlyste", + "Photos": "Fotos", + "Movies": "Flieks", + "HeaderContinueWatching": "Kyk Verder" } From 121c208c9df966eb28077c5eee5a6d59af63ad48 Mon Sep 17 00:00:00 2001 From: Eben van Deventer Date: Fri, 25 Sep 2020 20:48:12 +0000 Subject: [PATCH 157/365] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/strings/af.json b/src/strings/af.json index 598bdcac31..22573fab10 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -326,5 +326,8 @@ "Playlists": "Snitlyste", "Photos": "Fotos", "Movies": "Flieks", - "HeaderContinueWatching": "Kyk Verder" + "HeaderContinueWatching": "Kyk Verder", + "Extras": "Ekstras", + "ExtractChapterImagesHelp": "Die onttrekking van hoofstuk-beelde sal kliënte toelaat om grafiese hoofstuk-keuse spyskaart-opsies te hê. Die proses kan stadig wees, baie hulpron intensief wees en etlike gigagreupe se spasie benodig. Dit hardloop wanner die videos ontdek word asook as 'n nagtelike geskeduleerde taak. Die skedule kan verstel word in die geskeduleerde take area. Dit word nie aanbeveel om die taak tydens piek-verbruik ure te hardloop nie.", + "Folders": "Lêergidse" } From 4b847b81fddbc4f7ab87b781a7f9d487f8a027cc Mon Sep 17 00:00:00 2001 From: Eben van Deventer Date: Fri, 25 Sep 2020 20:54:44 +0000 Subject: [PATCH 158/365] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/af.json b/src/strings/af.json index 22573fab10..d0c504db8b 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -329,5 +329,6 @@ "HeaderContinueWatching": "Kyk Verder", "Extras": "Ekstras", "ExtractChapterImagesHelp": "Die onttrekking van hoofstuk-beelde sal kliënte toelaat om grafiese hoofstuk-keuse spyskaart-opsies te hê. Die proses kan stadig wees, baie hulpron intensief wees en etlike gigagreupe se spasie benodig. Dit hardloop wanner die videos ontdek word asook as 'n nagtelike geskeduleerde taak. Die skedule kan verstel word in die geskeduleerde take area. Dit word nie aanbeveel om die taak tydens piek-verbruik ure te hardloop nie.", - "Folders": "Lêergidse" + "Folders": "Lêergidse", + "FFmpegSavePathNotFound": "Ons kry nie FFmpeg op die bergingsplek wat u ingesleutel het nie. FFprobe word ook bendoig en moet in die selfde gidslêer bestaan. Hierdie komponente is normaalweg saam gebondel ten tye van aflaai. Maak asseblief seker dat die bergingsplek korrek is en probeer weer." } From 4865df95399691466f2bd2543b9174bd5081e0da Mon Sep 17 00:00:00 2001 From: Eben van Deventer Date: Fri, 25 Sep 2020 20:54:53 +0000 Subject: [PATCH 159/365] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/strings/af.json b/src/strings/af.json index d0c504db8b..d809d628c3 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -330,5 +330,7 @@ "Extras": "Ekstras", "ExtractChapterImagesHelp": "Die onttrekking van hoofstuk-beelde sal kliënte toelaat om grafiese hoofstuk-keuse spyskaart-opsies te hê. Die proses kan stadig wees, baie hulpron intensief wees en etlike gigagreupe se spasie benodig. Dit hardloop wanner die videos ontdek word asook as 'n nagtelike geskeduleerde taak. Die skedule kan verstel word in die geskeduleerde take area. Dit word nie aanbeveel om die taak tydens piek-verbruik ure te hardloop nie.", "Folders": "Lêergidse", - "FFmpegSavePathNotFound": "Ons kry nie FFmpeg op die bergingsplek wat u ingesleutel het nie. FFprobe word ook bendoig en moet in die selfde gidslêer bestaan. Hierdie komponente is normaalweg saam gebondel ten tye van aflaai. Maak asseblief seker dat die bergingsplek korrek is en probeer weer." + "FFmpegSavePathNotFound": "Ons kry nie FFmpeg op die bergingsplek wat u ingesleutel het nie. FFprobe word ook bendoig en moet in die selfde gidslêer bestaan. Hierdie komponente is normaalweg saam gebondel ten tye van aflaai. Maak asseblief seker dat die bergingsplek korrek is en probeer weer.", + "Favorite": "Gunstelling", + "FastForward": "Vinnig-vorentoe" } From 2b5b2ee5b0e844f1d595bb15433eb74102607734 Mon Sep 17 00:00:00 2001 From: Eben van Deventer Date: Fri, 25 Sep 2020 20:55:24 +0000 Subject: [PATCH 160/365] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/af.json b/src/strings/af.json index d809d628c3..7f5f20d9e9 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -332,5 +332,6 @@ "Folders": "Lêergidse", "FFmpegSavePathNotFound": "Ons kry nie FFmpeg op die bergingsplek wat u ingesleutel het nie. FFprobe word ook bendoig en moet in die selfde gidslêer bestaan. Hierdie komponente is normaalweg saam gebondel ten tye van aflaai. Maak asseblief seker dat die bergingsplek korrek is en probeer weer.", "Favorite": "Gunstelling", - "FastForward": "Vinnig-vorentoe" + "FastForward": "Vinnig-vorentoe", + "Features": "Funksies" } From a12b756df9b16ca0ea0aeba488f5faee89970de1 Mon Sep 17 00:00:00 2001 From: Eben van Deventer Date: Fri, 25 Sep 2020 20:55:34 +0000 Subject: [PATCH 161/365] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/af.json b/src/strings/af.json index 7f5f20d9e9..9dedee4d00 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -333,5 +333,6 @@ "FFmpegSavePathNotFound": "Ons kry nie FFmpeg op die bergingsplek wat u ingesleutel het nie. FFprobe word ook bendoig en moet in die selfde gidslêer bestaan. Hierdie komponente is normaalweg saam gebondel ten tye van aflaai. Maak asseblief seker dat die bergingsplek korrek is en probeer weer.", "Favorite": "Gunstelling", "FastForward": "Vinnig-vorentoe", - "Features": "Funksies" + "Features": "Funksies", + "FetchingData": "Soek addisionele data" } From f43788f443b6063e9d55630e0a1fa0c2bf9c69c7 Mon Sep 17 00:00:00 2001 From: Eben van Deventer Date: Fri, 25 Sep 2020 20:55:44 +0000 Subject: [PATCH 162/365] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/af.json b/src/strings/af.json index 9dedee4d00..f03913aca5 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -334,5 +334,6 @@ "Favorite": "Gunstelling", "FastForward": "Vinnig-vorentoe", "Features": "Funksies", - "FetchingData": "Soek addisionele data" + "FetchingData": "Soek addisionele data", + "File": "Lêer" } From a0f0e1eb8f0a724b2456baf5ff2d273e33b25935 Mon Sep 17 00:00:00 2001 From: Eben van Deventer Date: Fri, 25 Sep 2020 20:55:53 +0000 Subject: [PATCH 163/365] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/af.json b/src/strings/af.json index f03913aca5..8df49a67c2 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -335,5 +335,6 @@ "FastForward": "Vinnig-vorentoe", "Features": "Funksies", "FetchingData": "Soek addisionele data", - "File": "Lêer" + "File": "Lêer", + "FileNotFound": "Lêer nie gevind." } From 85944f7d501c14820fff2e12a611bd43e117a580 Mon Sep 17 00:00:00 2001 From: Eben van Deventer Date: Fri, 25 Sep 2020 20:56:08 +0000 Subject: [PATCH 164/365] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/af.json b/src/strings/af.json index 8df49a67c2..96e61f0f08 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -336,5 +336,6 @@ "Features": "Funksies", "FetchingData": "Soek addisionele data", "File": "Lêer", - "FileNotFound": "Lêer nie gevind." + "FileNotFound": "Lêer nie gevind.", + "FileReadCancelled": "Die lees van die lêer is gekanselleer." } From 5a5f6f3ea9cb57fcb5be138ec28e5ec8e6f24b68 Mon Sep 17 00:00:00 2001 From: Eben van Deventer Date: Fri, 25 Sep 2020 20:56:24 +0000 Subject: [PATCH 165/365] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/af.json b/src/strings/af.json index 96e61f0f08..e45ef37270 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -337,5 +337,6 @@ "FetchingData": "Soek addisionele data", "File": "Lêer", "FileNotFound": "Lêer nie gevind.", - "FileReadCancelled": "Die lees van die lêer is gekanselleer." + "FileReadCancelled": "Die lees van die lêer is gekanselleer.", + "FileReadError": "A fout het voorgekom tydens die lees van die lêer." } From 9277f7ce757c325d160379dc48853a15f3c98fb0 Mon Sep 17 00:00:00 2001 From: Eben van Deventer Date: Fri, 25 Sep 2020 20:56:31 +0000 Subject: [PATCH 166/365] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/af.json b/src/strings/af.json index e45ef37270..26e9e565d0 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -338,5 +338,6 @@ "File": "Lêer", "FileNotFound": "Lêer nie gevind.", "FileReadCancelled": "Die lees van die lêer is gekanselleer.", - "FileReadError": "A fout het voorgekom tydens die lees van die lêer." + "FileReadError": "A fout het voorgekom tydens die lees van die lêer.", + "Filters": "Filters" } From 33a7f015576a35ca7ecf151c86960e3fe0d00006 Mon Sep 17 00:00:00 2001 From: Eben van Deventer Date: Fri, 25 Sep 2020 20:56:39 +0000 Subject: [PATCH 167/365] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/af.json b/src/strings/af.json index 26e9e565d0..c7b256ac9c 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -339,5 +339,6 @@ "FileNotFound": "Lêer nie gevind.", "FileReadCancelled": "Die lees van die lêer is gekanselleer.", "FileReadError": "A fout het voorgekom tydens die lees van die lêer.", - "Filters": "Filters" + "Filters": "Filters", + "FormatValue": "Formaat: {0}" } From 821f53927df5bdbc968ce2992bf548f0ed42bedf Mon Sep 17 00:00:00 2001 From: Eben van Deventer Date: Fri, 25 Sep 2020 20:56:45 +0000 Subject: [PATCH 168/365] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/strings/af.json b/src/strings/af.json index c7b256ac9c..7a21cc5120 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -340,5 +340,7 @@ "FileReadCancelled": "Die lees van die lêer is gekanselleer.", "FileReadError": "A fout het voorgekom tydens die lees van die lêer.", "Filters": "Filters", - "FormatValue": "Formaat: {0}" + "FormatValue": "Formaat: {0}", + "Fullscreen": "Volskerm", + "Friday": "Vrydag" } From 61fcf408e22ecc0adaecf0d0f19efdad8da5c22a Mon Sep 17 00:00:00 2001 From: Eben van Deventer Date: Fri, 25 Sep 2020 20:56:57 +0000 Subject: [PATCH 169/365] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/strings/af.json b/src/strings/af.json index 7a21cc5120..ce8a13aa8a 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -342,5 +342,7 @@ "Filters": "Filters", "FormatValue": "Formaat: {0}", "Fullscreen": "Volskerm", - "Friday": "Vrydag" + "Friday": "Vrydag", + "Genre": "Genre", + "General": "Algemeen" } From 5a8a2e5bd0ba93440889e88d254684471a311f38 Mon Sep 17 00:00:00 2001 From: Eben van Deventer Date: Fri, 25 Sep 2020 20:57:07 +0000 Subject: [PATCH 170/365] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/af.json b/src/strings/af.json index ce8a13aa8a..69b527b01c 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -344,5 +344,6 @@ "Fullscreen": "Volskerm", "Friday": "Vrydag", "Genre": "Genre", - "General": "Algemeen" + "General": "Algemeen", + "Other": "Ander" } From 57158b9ac9ea11a451e825d324620a3166a341bd Mon Sep 17 00:00:00 2001 From: Eben van Deventer Date: Fri, 25 Sep 2020 20:57:16 +0000 Subject: [PATCH 171/365] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/af.json b/src/strings/af.json index 69b527b01c..1d27354020 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -345,5 +345,6 @@ "Friday": "Vrydag", "Genre": "Genre", "General": "Algemeen", - "Other": "Ander" + "Other": "Ander", + "GroupBySeries": "Groepeer volgens reeks" } From 2d304f60b00bfedfd5cba7f57ed36b13ed447477 Mon Sep 17 00:00:00 2001 From: Eben van Deventer Date: Fri, 25 Sep 2020 20:57:23 +0000 Subject: [PATCH 172/365] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/af.json b/src/strings/af.json index 1d27354020..b8cac11dac 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -346,5 +346,6 @@ "Genre": "Genre", "General": "Algemeen", "Other": "Ander", - "GroupBySeries": "Groepeer volgens reeks" + "GroupBySeries": "Groepeer volgens reeks", + "GroupVersions": "Groepeer weergawes" } From cb80bbe7486962fc327380df896b7a518faaa36a Mon Sep 17 00:00:00 2001 From: Eben van Deventer Date: Fri, 25 Sep 2020 20:57:30 +0000 Subject: [PATCH 173/365] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/strings/af.json b/src/strings/af.json index b8cac11dac..85b5f369b0 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -347,5 +347,7 @@ "General": "Algemeen", "Other": "Ander", "GroupBySeries": "Groepeer volgens reeks", - "GroupVersions": "Groepeer weergawes" + "GroupVersions": "Groepeer weergawes", + "Guide": "Gids", + "GuestStar": "Gaskunstenaar" } From 9d0ff1d238298997ee76dba5caf100065965234d Mon Sep 17 00:00:00 2001 From: Eben van Deventer Date: Fri, 25 Sep 2020 20:57:42 +0000 Subject: [PATCH 174/365] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/af.json b/src/strings/af.json index 85b5f369b0..68c0ab8793 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -349,5 +349,6 @@ "GroupBySeries": "Groepeer volgens reeks", "GroupVersions": "Groepeer weergawes", "Guide": "Gids", - "GuestStar": "Gaskunstenaar" + "GuestStar": "Gaskunstenaar", + "GuideProviderLogin": "Skakel In" } From 35146331c1749ba36b5151ccdce0b30780434654 Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Sat, 26 Sep 2020 03:53:31 +0000 Subject: [PATCH 175/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index 7f2199279d..0a320f0307 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -147,7 +147,7 @@ "AllComplexFormats": "Tất cả các định dạng phức tạp (ASS, SSA, VOBSUB, PGS, SUB, IDX, ...)", "AllChannels": "Tất cả các kênh", "Alerts": "Cảnh Báo", - "Albums": "", + "Albums": "Albums", "Aired": "Đã phát sóng", "AirDate": "Ngày phát sóng", "AdditionalNotificationServices": "Duyệt qua danh mục plugin để cài đặt các dịch vụ thông báo bổ sung.", From 13f096997641bbd7226152e7c5bfac0abae60fb8 Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Sat, 26 Sep 2020 03:58:17 +0000 Subject: [PATCH 176/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index 0a320f0307..46518cdf4c 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -783,7 +783,7 @@ "LabelSubtitlePlaybackMode": "Chế độ phụ đề:", "LabelSubtitleFormatHelp": "Ví dụ: srt", "LabelSubtitleDownloaders": "Trình tải xuống phụ đề:", - "LabelStreamType": "Loại luồng:", + "LabelStreamType": "Loại luồng phát:", "LabelStopping": "Đang dừng lại", "LabelStopWhenPossible": "Dừng lại khi có thể:", "LabelStatus": "Trạng thái:", @@ -993,7 +993,7 @@ "LabelType": "Kiểu:", "LabelTunerType": "Loại bộ dò:", "LabelTunerIpAddress": "Địa chỉ IP của bộ dò:", - "LabelTriggerType": "Loại kích hoạt:", + "LabelTriggerType": "Kích hoạt kiểu:", "LabelTranscodingThreadCountHelp": "Chọn số luồng tối đa để sử dụng khi chuyển mã. Giảm số luồng sẽ giảm mức sử dụng CPU nhưng có thể không chuyển đổi đủ nhanh để có trải nghiệm phát lại mượt mà.", "LabelTranscodingThreadCount": "Số luồng chuyển mã:", "LabelTranscodingProgress": "Tiến trình chuyển mã:", @@ -1031,7 +1031,7 @@ "OptionLoginAttemptsBeforeLockout": "Xác định số lần đăng nhập không chính xác có thể được thực hiện trước khi xảy ra khóa người dùng.", "OptionIgnoreTranscodeByteRangeRequestsHelp": "Các yêu cầu này sẽ được thực hiện nhưng sẽ bỏ qua phần đầu dải byte.", "OptionIgnoreTranscodeByteRangeRequests": "Bỏ qua các yêu cầu phạm vi byte chuyển mã", - "OptionHlsSegmentedSubtitles": "Phụ đề được phân đoạn HLS", + "OptionHlsSegmentedSubtitles": "Phụ đề phân đoạn HLS", "OptionHideUserFromLoginHelp": "Hữu ích cho tài khoản quản trị viên cá nhân hoặc ẩn. Người dùng sẽ cần đăng nhập thủ công bằng cách nhập tên người dùng và mật khẩu của họ.", "OptionExtractChapterImage": "Bật trích xuất hình ảnh mỗi phân cảnh", "OptionExternallyDownloaded": "Tải xuống bên ngoài", @@ -1057,7 +1057,7 @@ "OptionCriticRating": "Xếp Hạng Phê Bình", "OptionBluray": "Đĩa Blu-ray", "OptionAutomaticallyGroupSeriesHelp": "Loạt phim nằm trên nhiều thư mục trong thư viện này sẽ được tự động hợp nhất thành một loạt phim duy nhất.", - "OptionAutomaticallyGroupSeries": "Tự động hợp nhất các loạt phim được trải dài trên nhiều thư mục", + "OptionAutomaticallyGroupSeries": "Tự động gộp các bộ phim được trải dài trên nhiều thư mục", "OptionAllowVideoPlaybackTranscoding": "Cho phép phát lại video yêu cầu chuyển mã", "OptionAllowSyncTranscoding": "Cho phép tải xuống và đồng bộ hóa phương tiện yêu cầu chuyển mã", "OptionAllowRemoteSharedDevicesHelp": "Các thiết bị DLNA được coi là chia sẻ cho đến khi người dùng bắt đầu kiểm soát chúng.", @@ -1400,5 +1400,23 @@ "OptionEmbedSubtitles": "Nhúng trong định dạng", "MediaInfoContainer": "Định dạng", "Raised": "Nâng lên", - "EnableAutoCast": "Đặt làm mặc định" + "EnableAutoCast": "Đặt làm mặc định", + "Studios": "Studios", + "Bwdif": "BWDIF", + "Yadif": "YADIF", + "Writers": "Người viết", + "Writer": "Người viết", + "Video": "Video", + "ValueOneAlbum": "1 album", + "ValueMinutes": "{0} phút", + "ValueAlbumCount": "{0} albums", + "TrackCount": "{0} bản nhạc", + "TabPlugins": "Plugins", + "TV": "TV", + "SubtitleOffset": "Phần bù phụ đề", + "OptionEquals": "Bằng", + "OptionCaptionInfoExSamsung": "Thông tin chú thích ví dụ (Samsung)", + "MessageSyncPlayGroupWait": "{0} đang tải …", + "MediaInfoAnamorphic": "Phim điện ảnh màn ảnh rộng", + "LabelXDlnaCap": "Phần đầu X-DLNA:" } From 6f7819366042c210c00aa46a867677a0d8519d55 Mon Sep 17 00:00:00 2001 From: Dmitry Lyzo Date: Sat, 26 Sep 2020 12:27:14 +0300 Subject: [PATCH 177/365] Fix 'file:' fetching (bundled apps) --- src/scripts/settings/webSettings.js | 35 +++++++++++++++++++++++++++-- 1 file changed, 33 insertions(+), 2 deletions(-) diff --git a/src/scripts/settings/webSettings.js b/src/scripts/settings/webSettings.js index 2ffe290d88..e28e0e84ff 100644 --- a/src/scripts/settings/webSettings.js +++ b/src/scripts/settings/webSettings.js @@ -1,9 +1,40 @@ let data; +// `fetch` with `file:` support +// Recent browsers seem to support `file` protocol under some conditions. +// Based on https://github.com/github/fetch/pull/92#issuecomment-174730593 +async function fetchLocal(url, options) { + return new Promise((resolve, reject) => { + const xhr = new XMLHttpRequest; + + xhr.onload = () => { + // `file` protocol has invalid OK status + let status = xhr.status; + if (xhr.responseURL.startsWith('file:') && status === 0) { + status = 200; + } + + resolve(new Response(xhr.responseText, {status: status})); + } + + xhr.onerror = () => { + reject(new TypeError('Local request failed')); + } + + xhr.open('GET', url); + + if (options && options.cache) { + xhr.setRequestHeader('Cache-Control', options.cache); + } + + xhr.send(null); + }); +} + async function getConfig() { if (data) return Promise.resolve(data); try { - const response = await fetch('config.json', { + const response = await fetchLocal('config.json', { cache: 'no-cache' }); @@ -22,7 +53,7 @@ async function getConfig() { async function getDefaultConfig() { try { - const response = await fetch('config.template.json', { + const response = await fetchLocal('config.template.json', { cache: 'no-cache' }); From 45c63c94b7a694db95a2eef2ee0214decd609da1 Mon Sep 17 00:00:00 2001 From: rethi61 Date: Sat, 26 Sep 2020 06:39:01 +0000 Subject: [PATCH 178/365] Translated using Weblate (French (Canada)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fr_CA/ --- src/strings/fr-ca.json | 42 ++++++++++++++++++++++++++++++++++++++---- 1 file changed, 38 insertions(+), 4 deletions(-) diff --git a/src/strings/fr-ca.json b/src/strings/fr-ca.json index b1f78ad066..dd5069c847 100644 --- a/src/strings/fr-ca.json +++ b/src/strings/fr-ca.json @@ -64,11 +64,11 @@ "Thursday": "Jeudi", "TrackCount": "{0} pistes", "Tuesday": "Mardi", - "UserProfilesIntro": "Jellyfin supporte nativement les profils utilisateurs, les préférences d'affichage, la sauvegarde de l'état de lecture et le contrôle parental.", + "UserProfilesIntro": "Jellyfin supporte les profils d'utilisateurs, les préférences d'affichage, la sauvegarde de l'état de lecture et le contrôle parental.", "ValueSpecialEpisodeName": "Spécial - {0}", "Wednesday": "Mercredi", "WelcomeToProject": "Bienvenue dans Jellyfin !", - "WizardCompleted": "C'est tout ce dont nous avons besoin pour l'instant. Jellyfin a commencé à collecter les informations de votre bibliothèque de médias. Jetez un oeil à quelques unes de nos applications, puis cliquez sur Terminer pour consulter le Tableau de bord du serveur.", + "WizardCompleted": "C'est tout ce dont nous avons besoin pour le moment. Jellyfin a commencé à récolter les informations de votre bibliothèque de médias. Jetez un oeil à quelques unes de nos applications, puis cliquez sur Terminer pour consulter le Tableau de bord.", "Absolute": "Absolu", "AccessRestrictedTryAgainLater": "Accès restreint. Veuillez réessayer plus tard.", "Actor": "Acteur(trice)", @@ -128,7 +128,7 @@ "BoxRear": "Dos de boîtier", "Browse": "Parcourir", "MessageBrowsePluginCatalog": "Explorer notre catalogue des plugins pour voir les plugins disponibles.", - "AllowHWTranscodingHelp": "Permets au syntonisateur de transcoder les flux à la volée. Cela peut aider à réduire le transcodage requis par le serveur.", + "AllowHWTranscodingHelp": "Permet au récepteur TV de transcoder les flux à la volée. Cela peut aider à réduire le transcodage requis par le serveur .", "BurnSubtitlesHelp": "Détermine si le serveur doit graver les sous-titres lors du transcodage vidéo. Éviter ceci améliorera les performances du serveur. Sélectionnez Auto pour graver les formats basés sur l'image (par exemple, VOBSUB, PGS, SUB/IDX etc) ainsi que certains sous-titres ASS/SSA.", "ButtonAddMediaLibrary": "Ajouter une médiathèque", "ButtonAddScheduledTaskTrigger": "Ajouter un déclencheur", @@ -221,5 +221,39 @@ "ColorTransfer": "Transfert de couleur", "ColorSpace": "Espace colorimétrique", "ColorPrimaries": "Primaires colorimétriques", - "EnablePhotos": "Voir les photos" + "EnablePhotos": "Voir les photos", + "DefaultMetadataLangaugeDescription": "Ce sont vos paramètres par défaut. Ils peuvent être personnalisés pour chaque médiathèque.", + "ErrorDefault": "Il y a eu une erreur lors du traitement de la demande. Veuillez réessayer plus tard.", + "Data": "Données", + "CustomDlnaProfilesHelp": "Créer un profil personnalisé pour un nouvel appareil ou pour remplacer un profile système.", + "Continuing": "En cours", + "CinemaModeConfigurationHelp": "Le mode cinéma amène le grand écran directement à votre salon avec la possibilité de jouer des bandes-annonces et des introductions personnalisées avant la lecture de vos médias.", + "ButtonUseQuickConnect": "Utiliser la connexion rapide", + "ButtonActivate": "Activer", + "Authorize": "Autoriser", + "Episodes": "Épisodes", + "Episode": "Épisode", + "Ended": "Terminé", + "EnableThemeSongsHelp": "Jouer les bandes sonores en arrière-plan pendant la navigation de la médiathèque.", + "EnableStreamLoopingHelp": "À activer si le contenu de la diffusion en continu ne contient que quelques secondes de données et nécessite des requêtes sans arrêt. Lorsque non nécessaire, l'activation de cette option peut causer des problèmes.", + "EnableStreamLooping": "Lecture en boucle des diffusions en direct", + "EnableQuickConnect": "Activer la connexion rapide sur ce serveur", + "EnablePhotosHelp": "Les images seront détectées et affichées avec les autres fichiers multimédia.", + "EnableExternalVideoPlayers": "Lecteurs vidéos externes", + "EnableColorCodedBackgrounds": "Arrière-plans avec code de couleurs", + "EnableCinemaMode": "Mode cinéma", + "EnableBackdropsHelp": "Afficher des images à l'arrière-plan de certaines pages de la médiathèque.", + "EnableAutoCast": "Définir par défaut", + "EditSubtitles": "Modifier les sous-titres", + "EditMetadata": "Modifier les métadonnées", + "EditImages": "Modifier les images", + "HeaderVideos": "Vidéos", + "Yes": "Oui", + "RecommendationDirectedBy": "Réalisé par {0}", + "LabelMetadata": "Métadonnées :", + "HeaderUsers": "Utilisateurs", + "HeaderUser": "Utilisateur", + "HeaderAudioBooks": "Livres audio", + "HeaderApiKeys": "Clés API", + "HeaderApiKey": "Clé API" } From 7b173a8c0681966edc196b9e1ac00435b3f3a5c5 Mon Sep 17 00:00:00 2001 From: Tomi Date: Sat, 26 Sep 2020 09:56:21 +0000 Subject: [PATCH 179/365] Translated using Weblate (Finnish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fi/ --- src/strings/fi.json | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/strings/fi.json b/src/strings/fi.json index 7529df6202..687eabc718 100644 --- a/src/strings/fi.json +++ b/src/strings/fi.json @@ -332,7 +332,7 @@ "LabelCustomRating": "Mukautettu luokitus:", "LabelCustomCss": "Mukautettu CSS:", "LabelCertificatePassword": "Varmenteen salasana:", - "LabelArtistsHelp": "Erota useita käyttämällä ;", + "LabelArtistsHelp": "Erota useita käyttämällä puolipistettä (;).", "LabelAppNameExample": "Esimerkiksi: Sickbeard, Sonarr", "LabelAppName": "Sovelluksen nimi", "LabelAllowedRemoteAddressesMode": "Etä-IP-osoitesuodattimen tila:", @@ -1165,5 +1165,9 @@ "LabelModelName": "Mallinimi", "LabelModelDescription": "Mallikuvaus", "LabelModelNumber": "Mallinumero", - "LabelInNetworkSignInWithEasyPassword": "Salli sisäverkkokirjautuminen helpolla PIN-koodilla" + "LabelInNetworkSignInWithEasyPassword": "Salli sisäverkkokirjautuminen helpolla PIN-koodilla", + "HeaderCodecProfileHelp": "Dekooderiprofiilit määrittävät laitteen rajoitukset, kun se toistaa erityyppisiä koodauksia. Jos rajoitus on voimassa, sisältö koodataan uudelleen, vaikka koodaustyypiksi on asetettu suora toisto.", + "Authorize": "Valtuuta", + "EnableAutoCast": "Aseta oletukseksi", + "ButtonActivate": "Aktivoi" } From 2e6211ce31b3966c19c461b9269d9478f87b08e4 Mon Sep 17 00:00:00 2001 From: Panopoulos Andreas Date: Sat, 26 Sep 2020 11:20:39 +0000 Subject: [PATCH 180/365] Translated using Weblate (Greek) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/el/ --- src/strings/el.json | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/strings/el.json b/src/strings/el.json index 9d809703f6..40538ceab8 100644 --- a/src/strings/el.json +++ b/src/strings/el.json @@ -1,9 +1,9 @@ { "Absolute": "Απόλυτο", - "AccessRestrictedTryAgainLater": "Η πρόσβαση είναι επί του παρόντος περιορισμένη. Παρακαλώ δοκιμάστε ξανά αργότερα.", + "AccessRestrictedTryAgainLater": "Η πρόσβαση είναι περιορισμένη προς το παρόν. Παρακαλώ δοκιμάστε ξανά αργότερα.", "Actor": "Ηθοποιός", "Add": "Προσθήκη", - "AddToCollection": "Πρόσθεσε στη συλλογή", + "AddToCollection": "Προσθήκη στη συλλογή", "AddToPlayQueue": "Προσθήκη στην ουρά αναπαραγωγής", "AddToPlaylist": "Πρόσθεσε σε λίστα", "AddedOnValue": "Προστέθηκε {0}", @@ -1047,8 +1047,10 @@ "Episode": "Επεισόδιο", "EnableDetailsBannerHelp": "Εμφάνιση εικόνας στο πάνω μέρος της σελίδας λεπτομερειών του αντικειμένου.", "Data": "Δεδομένα", - "CopyStreamURLSuccess": "Σύνδεσμος αντιγράφηκε με επιτυχία.", + "CopyStreamURLSuccess": "Ο σύνδεσμος αντιγράφηκε με επιτυχία.", "CopyStreamURL": "Αντιγραφή Συνδέσμου Ροής", "ClientSettings": "Ρυθμίσεις πελάτη", - "ChangingMetadataImageSettingsNewContent": "Οι αλλαγές στις ρυθμίσεις λήψης μεταδεδομένων ή εικόνων θα εφαρμοστούν μόνο στο νέο περιεχόμενο που προστίθεται στη βιβλιοθήκη σας. Για να εφαρμόσετε τις αλλαγές στους υπάρχοντες τίτλους, θα πρέπει να ανανεώσετε τα μεταδεδομένα τους χειροκίνητα." + "ChangingMetadataImageSettingsNewContent": "Οι αλλαγές στις ρυθμίσεις λήψης μεταδεδομένων ή εικόνων θα εφαρμοστούν μόνο στο νέο περιεχόμενο που προστίθεται στη βιβλιοθήκη σας. Για να εφαρμόσετε τις αλλαγές στους υπάρχοντες τίτλους, θα πρέπει να ανανεώσετε τα μεταδεδομένα τους χειροκίνητα.", + "ButtonActivate": "Ενεργοποίηση", + "Authorize": "Εξουσιοδότηση" } From a38685775c4f2d603ab9319e2923d6993e4ba3f0 Mon Sep 17 00:00:00 2001 From: frankieh Date: Sat, 26 Sep 2020 05:50:34 -0700 Subject: [PATCH 181/365] Add missing button type attribute --- src/components/metadataEditor/metadataEditor.template.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/metadataEditor/metadataEditor.template.html b/src/components/metadataEditor/metadataEditor.template.html index aad3557bad..f080ecacdb 100644 --- a/src/components/metadataEditor/metadataEditor.template.html +++ b/src/components/metadataEditor/metadataEditor.template.html @@ -251,7 +251,7 @@

    -
    '; html += '
    '; html += ''; - html += ``; - html += ``; - html += ``; - html += ``; + html += ''; + html += ''; + html += ''; + html += ''; html += ''; html += '
    '; html += '
    '; @@ -43,13 +43,16 @@ import 'flexStyles'; skinHeader.classList.add('skinHeader-blurred'); skinHeader.innerHTML = html; + headerBackButton = skinHeader.querySelector('.headerBackButton'); headerHomeButton = skinHeader.querySelector('.headerHomeButton'); + mainDrawerButton = skinHeader.querySelector('.mainDrawerButton'); headerUserButton = skinHeader.querySelector('.headerUserButton'); headerCastButton = skinHeader.querySelector('.headerCastButton'); headerAudioPlayerButton = skinHeader.querySelector('.headerAudioPlayerButton'); headerSearchButton = skinHeader.querySelector('.headerSearchButton'); headerSyncButton = skinHeader.querySelector('.headerSyncButton'); + retranslateUi(); lazyLoadViewMenuBarImages(); bindMenuEvents(); updateCastIcon(); @@ -73,8 +76,26 @@ import 'flexStyles'; appRouter.back(); } + function retranslateUi() { + if (headerSyncButton) { + headerSyncButton.title = globalize.translate('ButtonSyncPlay'); + } + + if (headerAudioPlayerButton) { + headerAudioPlayerButton.title = globalize.translate('ButtonPlayer'); + } + + if (headerCastButton) { + headerCastButton.title = globalize.translate('ButtonCast'); + } + + if (headerSearchButton) { + headerSearchButton.title = globalize.translate('Search'); + } + } + function updateUserInHeader(user) { - renderHeader(); + retranslateUi(); let hasImage; @@ -153,14 +174,10 @@ import 'flexStyles'; } function bindMenuEvents() { - mainDrawerButton = document.querySelector('.mainDrawerButton'); - if (mainDrawerButton) { mainDrawerButton.addEventListener('click', toggleMainDrawer); } - const headerBackButton = skinHeader.querySelector('.headerBackButton'); - if (headerBackButton) { headerBackButton.addEventListener('click', onBackClick); } @@ -772,10 +789,6 @@ import 'flexStyles'; } function updateBackButton(page) { - if (!headerBackButton) { - headerBackButton = document.querySelector('.headerBackButton'); - } - if (headerBackButton) { if (page.getAttribute('data-backbutton') !== 'false' && appRouter.canGoBack()) { headerBackButton.classList.remove('hide'); From 112c4a7940d44068bda275c2baadda34e9a3ed78 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jurij=20Martin=C4=8Di=C4=8D?= Date: Sat, 26 Sep 2020 16:03:09 +0000 Subject: [PATCH 184/365] Translated using Weblate (Slovenian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/sl/ --- src/strings/sl-si.json | 57 +++++++++++++++++++++++++++++++++++------- 1 file changed, 48 insertions(+), 9 deletions(-) diff --git a/src/strings/sl-si.json b/src/strings/sl-si.json index a8a7cbd3a8..cbb2095729 100644 --- a/src/strings/sl-si.json +++ b/src/strings/sl-si.json @@ -215,7 +215,7 @@ "Disconnect": "Prekini povezavo", "Disc": "Disk", "DirectStreaming": "Neposredno pretakanje", - "DirectStreamHelp2": "Neposredno pretakanje porabi zelo malo procesorske moči in ne povzroči izgube kvalitete videa.", + "DirectStreamHelp2": "Neposredno pretakanje porabi zelo malo procesorske moči z minimalno izgubo kvalitete videa.", "DirectStreamHelp1": "Predstavnost je kompatibilna z napravo glede resolucije in vrste (H.264, AC3, itd.), vendar je v nepodprtem kontejnerju (mkv, avi, wmv, itd.). Predstavnost bo sproti prepakirana pred prenosom na napravo.", "DefaultSubtitlesHelp": "Podnapisi so naloženi na podlagi privzetih in prisiljenih oznak v metapodatkih. Če je na voljo več podnapisov, so upoštevane jezikovne nastavitve.", "HeaderSelectServerCachePathHelp": "Izberite ali vnesite pot, v katero se bodo zapisovali predpomnjeni podatki. Mapa mora omogočati pisanje.", @@ -367,7 +367,7 @@ "ExtraLarge": "Zelo veliko", "ExitFullscreen": "Izhod in celozaslonskega načina", "ErrorSavingTvProvider": "Prišlo je do težave pri shranjevanju TV ponudnika. Preverite ali je dostopen in poskusite znova.", - "ErrorPleaseSelectLineup": "Prosimo izberite postajo in poskusite znova. Če ni na voljo nobene postaje, preverite ali so vaše uporabniško ime, geslo in poštna številka pravilni.", + "ErrorPleaseSelectLineup": "Prosimo izberite postajo in poskusite znova. Če ni na voljo nobene postaje, preverite vaše uporabniško ime, geslo in poštno številko.", "ErrorAddingListingsToSchedulesDirect": "Prišlo je do težave pri dodajanju postaj na vaš Schedules Direct račun. Schedules Direct omogoča omejeno število postaj na posameznem računu. Preden nadaljujete se morate prijaviti v vaš Schedules Direct in odstraniti ostale postaje z računa.", "ErrorGettingTvLineups": "Prišlo je do težave pri prenosu TV postaj. Preverite ali so podatki pravilni in poskusite znova.", "ErrorAddingTunerDevice": "Prišlo je do težave pri dodajanju sprejemnika. Preverite ali je dostopen in poskusite znova.", @@ -531,7 +531,7 @@ "LabelDisplayOrder": "Vrstni red prikaza:", "LabelDisplayName": "Prikazano ime:", "LabelDisplayMode": "Način prikaza:", - "LabelBindToLocalNetworkAddressHelp": "Preglasi lokalni IP naslov za HTTP strežnik. V kolikor pustite prazno se strežnik poveže z vsemi možnimi naslovi. Sprememba vrednosti zahteva ponovni zagon.", + "LabelBindToLocalNetworkAddressHelp": "Preglasi lokalni IP-naslov za HTTP-strežnik. V kolikor pustite prazno, se strežnik poveže z vsemi možnimi naslovi. Sprememba vrednosti zahteva ponovni zagon.", "InstallingPackage": "Nameščanje {0} (različica {1})", "ImportMissingEpisodesHelp": "Podatki o manjkajočih epizodah bodo dodani v bazo podatkov in prikazani znotraj sezon in serij. To lahko občutno podaljša čas uvoza v knjižnjico.", "ImportFavoriteChannelsHelp": "Uvoženi bodo zgolj programi, ki so na sprejemniku označeni kot priljubljeni.", @@ -929,7 +929,7 @@ "LabelSimultaneousConnectionLimit": "Omejitev števila sočasnih predvajanj:", "LabelServerName": "Ime strežnika:", "LabelServerHostHelp": "192.168.1.100:8096 ali https://myserver.com", - "LabelServerHost": "Naslov:", + "LabelServerHost": "Naslov strežnika:", "LabelSeriesRecordingPath": "Pot za snemanje serij:", "LabelSerialNumber": "Serijska številka", "LabelSendNotificationToUsers": "Pošlji obvestilo na:", @@ -977,7 +977,7 @@ "LabelTranscodingProgress": "Napredek prekodiranja:", "LabelTranscodingFramerate": "Hitrost prekodiranja:", "LabelTranscodes": "Prekodiranje:", - "LabelTranscodingTempPathHelp": "Določite pot po meri za datoteke prekodiranja. Pustite prazno za uporabo privzete lokacije.", + "LabelTranscodingTempPathHelp": "Določite pot po meri za začasne datoteke prekodiranja. Pustite prazno za uporabo privzete lokacije.", "LabelTranscodePath": "Pot prekodiranja:", "LabelTrackNumber": "Številka skladbe:", "LabelTime": "Čas:", @@ -987,7 +987,7 @@ "LabelSupportedMediaTypes": "Podprti tipi predstavnosti:", "LabelSubtitlePlaybackMode": "Način podnapisov:", "LabelSubtitleFormatHelp": "Primer: srt", - "LabelSubtitleDownloaders": "Pridobivanje podnapisov:", + "LabelSubtitleDownloaders": "Pridobi podnapise:", "Wednesday": "Sreda", "ValueVideoCodec": "Video kodek: {0}", "ValueTimeLimitSingleHour": "Časovna omejitev: 1 ura", @@ -1023,7 +1023,7 @@ "LibraryAccessHelp": "Izberite knjižnice, ki bodo deljenje s tem uporabnikom. Upravitelji bodo lahko urejali metapodatke z upraviteljem metapodatkov.", "LeaveBlankToNotSetAPassword": "To polje lahko pustite prazno za uporabo brez gesla.", "LearnHowYouCanContribute": "Poglejte, kako lahko pomagate.", - "LabelffmpegPathHelp": "Pot do datoteke aplikacije ffmpeg ali mape, ki jo vsebuje.", + "LabelffmpegPathHelp": "Pot do aplikacije ffmpeg ali mape, ki jo vsebuje.", "LabelffmpegPath": "Pot FFmpeg:", "LabelZipCode": "Poštna številka:", "LabelYear": "Leto:", @@ -1072,7 +1072,7 @@ "Episode": "Epizoda", "EnableDetailsBannerHelp": "Prikaži sliko pasice na vrhu strani podrobnosti.", "EnableDetailsBanner": "Pasica s podrobnostmi", - "DeinterlaceMethodHelp": "Izberite način razpletanja pri prekodiranju prepletenih vsebin.", + "DeinterlaceMethodHelp": "Izberite način razpletanja pri prekodiranju prepletenih vsebin brez strojnega pospeševanja. Ob vklopljenem strojnem pospeševanju prekodiranja, ki podpira razpletanje, bo ta nastavitev zanemarjena.", "ButtonSyncPlay": "SyncPlay", "LabelDynamicExternalId": "{0} Id:", "LabelDroppedFrames": "Izpuščene sličice:", @@ -1298,5 +1298,44 @@ "LastSeen": "Nazadnje viden {0}", "PersonRole": "kot {0}", "ListPaging": "{0}-{1} od {2}", - "WriteAccessRequired": "Jellyfin potrebuje dostop za pisanje v to mapo. Prosimo zagotovite dostop za pisanje in poskusite znova." + "WriteAccessRequired": "Jellyfin potrebuje dostop za pisanje v to mapo. Prosimo zagotovite dostop za pisanje in poskusite znova.", + "LabelMaxMuxingQueueSizeHelp": "Najvišje število paketov v predpomnilniku med čakanjem na začetek pretakanja. Povečaj, če se v ffmpeg zapisniku pojavlja napaka: \"Too many packets buffered for output stream\". Priporočena vrednost: 2048.", + "RefreshDialogHelp": "Metapodatki se osvežujejo na podlagi nastavitev in internetnih storitev, ki so izbrane v nadzorni plošči.", + "RecordingScheduled": "Snemanje načrtovano.", + "QuickConnectNotActive": "Quick Connect ni aktiven na tem strežniku", + "QuickConnectNotAvailable": "Za možnost povezave Quick Connect kontaktiraj skrbnika", + "QuickConnectInvalidCode": "Neveljavna Quick Connect koda", + "QuickConnectDescription": "Za vpis s Quick Connect izberi Quick Connect na napravi preko katere se vpisuješ in vnesi kodo.", + "QuickConnectDeactivated": "Quick Connect je bil deaktiviran pred dokončanjem vpisa", + "QuickConnectAuthorizeFail": "Neznana Quick Connect koda", + "QuickConnectAuthorizeSuccess": "Avtorizirano", + "QuickConnectAuthorizeCode": "Vnesi kodo {0} za vpis", + "QuickConnectActivationSuccessful": "Aktivirano", + "QuickConnect": "Quick Connect", + "Profile": "Profil", + "PosterCard": "Kartica posterja", + "Poster": "Poster", + "Photo": "Fotografija", + "OptionSpecialEpisode": "Posebne epizode", + "OptionResumable": "Nadaljuj", + "OptionEmbedSubtitles": "Vgradi podnapise", + "LabelSpecialSeasonsDisplayName": "Prikazno ime posebne sezone:", + "LabelQuickConnectCode": "Koda za Quick connect:", + "LabelUnstable": "Nestabilno", + "LabelKnownProxies": "Znani posredniški strežniki:", + "LabelIconMaxResHelp": "Najvišja ločljivost ikon preko upnp:icon.", + "LabelCurrentStatus": "Trenutno stanje:", + "KnownProxiesHelp": "Seznam IP-naslovov znanih posredniških strežnikov za povezovanje z Jellyfin. To je potrebno za pravilno delovanje X-Forwarded-For zaglavij. Naslovi so ločeni z vejico. Sprememba vrednosti zahteva ponovni zagon.", + "LabelAlbumArtMaxResHelp": "Najvišja ločljivost grafike albuma preko upnp:albumArtURI.", + "Items": "Elementi", + "ItemCount": "{0} elementov", + "Image": "Slika", + "HeaderRecordingPostProcessing": "Obdelava snemanja", + "Other": "Drugo", + "EnableQuickConnect": "Omogoči Quick Connect za ta server", + "EnableAutoCast": "Nastavi kot privzeto", + "Data": "Podatki", + "ButtonUseQuickConnect": "Uporabi Quick Connect", + "ButtonActivate": "Aktiviraj", + "Authorize": "Pooblasti" } From f9579e6f057702648c861d58c055bbb4110db8f4 Mon Sep 17 00:00:00 2001 From: Dmitry Lyzo Date: Sat, 26 Sep 2020 22:48:55 +0300 Subject: [PATCH 185/365] Fix theme video --- src/plugins/htmlVideoPlayer/plugin.js | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/plugins/htmlVideoPlayer/plugin.js b/src/plugins/htmlVideoPlayer/plugin.js index d07e6aae58..32f96c8e2e 100644 --- a/src/plugins/htmlVideoPlayer/plugin.js +++ b/src/plugins/htmlVideoPlayer/plugin.js @@ -114,7 +114,6 @@ function tryRemoveElement(elem) { return new Promise(resolve => { const duration = 240; elem.style.animation = `htmlvideoplayer-zoomin ${duration}ms ease-in normal`; - hidePrePlaybackPage(); dom.addEventListener(elem, dom.whichAnimationEvent(), resolve, { once: true }); @@ -1328,17 +1327,24 @@ function tryRemoveElement(elem) { this.#videoDialog = dlg; this.#mediaElement = videoElement; + if (options.fullscreen) { + hidePrePlaybackPage(); + } + // don't animate on smart tv's, too slow if (options.fullscreen && browser.supportsCssAnimation() && !browser.slow) { return zoomIn(dlg).then(function () { return videoElement; }); } else { - hidePrePlaybackPage(); return videoElement; } }); } else { + if (options.fullscreen) { + hidePrePlaybackPage(); + } + return Promise.resolve(dlg.querySelector('video')); } } From c058a4e749ccbfe78a454b1dec5679f5e212ed79 Mon Sep 17 00:00:00 2001 From: josteinh Date: Sat, 26 Sep 2020 18:13:35 +0000 Subject: [PATCH 186/365] =?UTF-8?q?Translated=20using=20Weblate=20(Norwegi?= =?UTF-8?q?an=20Bokm=C3=A5l)=20Translation:=20Jellyfin/Jellyfin=20Web=20Tr?= =?UTF-8?q?anslate-URL:=20https://translate.jellyfin.org/projects/jellyfin?= =?UTF-8?q?/jellyfin-web/nb=5FNO/?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/strings/nb.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/nb.json b/src/strings/nb.json index 8e7bac93ee..b782782982 100644 --- a/src/strings/nb.json +++ b/src/strings/nb.json @@ -1377,5 +1377,6 @@ "EnableQuickConnect": "Bruk rask tilkobling på denne tjeneren", "ButtonUseQuickConnect": "Bruk rask tilkobling", "ButtonActivate": "Aktiver", - "Authorize": "Autoriser" + "Authorize": "Autoriser", + "EnableAutoCast": "Sett som standard" } From 10fc9d1731675cb1e6068174c806224cb91f81cf Mon Sep 17 00:00:00 2001 From: 4d1m Date: Sat, 26 Sep 2020 17:45:20 +0000 Subject: [PATCH 187/365] Translated using Weblate (Romanian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ro/ --- src/strings/ro.json | 43 ++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 42 insertions(+), 1 deletion(-) diff --git a/src/strings/ro.json b/src/strings/ro.json index b9a3a37821..7b5f1d49de 100644 --- a/src/strings/ro.json +++ b/src/strings/ro.json @@ -1378,5 +1378,46 @@ "EnableQuickConnect": "Activează conectarea rapidă pe acest server", "ButtonUseQuickConnect": "Folosește conectarea rapidă", "ButtonActivate": "Activează", - "Authorize": "Autorizează" + "Authorize": "Autorizează", + "LabelMaxMuxingQueueSizeHelp": "Numărul maxim de pachete care pot fi tamponate în așteptarea inițializării tuturor fluxurilor. Încercați să o măriți dacă întâmpinați încă o eroare „Prea multe pachete tamponate pentru fluxul de ieșire” în jurnalele ffmpeg. Valoarea recomandată este 2048.", + "LabelMaxMuxingQueueSize": "Dimensiunea maximă a cozii de mux:", + "LabelTonemappingParamHelp": "Reglați algoritmul de mapare a tonurilor. Valorile recomandate și implicite sunt NaN. În general, lăsați-l necompletat.", + "LabelTonemappingParam": "Parametrii tonemapping:", + "LabelTonemappingPeakHelp": "Suprascrie semnalul/nominalul/ vârful de referință cu această valoare. Util când informațiile de vârf încorporate în metadatele afișate nu sunt fiabile sau când maparea tonurilor de la un interval inferior la un interval mai mare. Valorile recomandate și implicite sunt 0.", + "LabelTonemappingPeak": "Vârf de tonemapping:", + "LabelTonemappingThresholdHelp": "Parametrii algoritmului de cartografiere a tonurilor sunt reglați pentru fiecare scenă. Și un prag este folosit pentru a detecta dacă scena s-a schimbat sau nu. Dacă distanța dintre luminozitatea medie a cadrului curent și media curentă de rulare depășește o valoare prag, vom recalcula media scenei și luminozitatea maximă. Valorile recomandate și implicite sunt 0,8 și 0,2.", + "LabelTonemappingThreshold": "Pragul tonemapping:", + "LabelTonemappingDesatHelp": "Aplicați desaturare pentru evidențieri care depășesc acest nivel de luminozitate. Cu cât parametrul este mai mare, cu atât vor fi păstrate mai multe informații despre culoare. Această setare ajută la prevenirea culorilor neobișnuit de suflate pentru super-evidențiere, transformându-se (fără probleme) în alb. Acest lucru face ca imaginile să se simtă mai naturale, cu prețul reducerii informațiilor despre culorile din afara gamei. Valorile recomandate și implicite sunt 0 și 0,5.", + "LabelTonemappingDesat": "Tonemapping desat:", + "TonemappingRangeHelp": "Selectați gama de culori de ieșire. Auto este același cu intervalul de intrare.", + "LabelTonemappingRange": "Gama tonemapping:", + "TonemappingAlgorithmHelp": "Cartarea tonurilor poate fi reglată fin. Dacă nu sunteți familiarizați cu aceste opțiuni, păstrați doar valoarea implicită. Valoarea recomandată este Reinhard.", + "LabelTonemappingAlgorithm": "Selectați algoritmul de mapare a tonurilor pe care să îl utilizați:", + "AllowTonemappingHelp": "Cartarea tonurilor poate transforma gama dinamică a unui videoclip de la HDR la SDR, menținând în același timp detaliile și culorile imaginii, care sunt informații foarte importante pentru reprezentarea scenei originale. În prezent funcționează numai la transcodarea videoclipurilor cu metadate HDR10 sau HLG încorporate. Dacă redarea nu este netedă sau eșuează, vă rugăm să luați în considerare oprirea decodorului hardware corespunzător.", + "EnableTonemapping": "Activați maparea tonurilor", + "LabelOpenclDeviceHelp": "Acesta este dispozitivul OpenCL care este utilizat pentru tonemapping. Partea stângă a punctului este numărul platformei, iar partea dreaptă este numărul dispozitivului de pe platformă. Valoarea implicită este 0,0. Este necesar fișierul aplicației ffmpeg care conține metoda de accelerare hardware OpenCL.", + "LabelOpenclDevice": "Dispozitiv OpenCL:", + "LabelColorPrimaries": "Colori primare:", + "LabelColorTransfer": "Transfer de culoare:", + "LabelColorSpace": "Spațiul de culoare:", + "LabelVideoRange": "Gama video:", + "MediaInfoColorPrimaries": "Colori primare", + "MediaInfoColorTransfer": "Transfer de culoare", + "MediaInfoColorSpace": "Spațiul de culoare", + "MediaInfoVideoRange": "Gama video", + "QuickConnectNotActive": "Conectarea rapidă nu este activă pe acest server", + "QuickConnectNotAvailable": "Solicitați administratorului de server să permită conectarea rapidă", + "QuickConnectInvalidCode": "Cod de conectare rapidă nevalid", + "QuickConnectDescription": "Pentru a vă loga cu conectare rapidă, selectați butonul Conectare rapidă de pe dispozitivul de la care vă conectați și introduceți codul afișat mai jos.", + "QuickConnectDeactivated": "Conectarea rapidă a fost dezactivată înainte ca solicitarea de conectare să poată fi aprobată", + "QuickConnectAuthorizeFail": "Cod de conectare rapidă necunoscut", + "QuickConnectAuthorizeSuccess": "Cerere autorizată", + "QuickConnectAuthorizeCode": "Introduceți codul {0} pentru autentificare", + "QuickConnectActivationSuccessful": "Activat cu succes", + "QuickConnect": "Conectare rapidă", + "LabelQuickConnectCode": "Cod de conectare rapidă:", + "LabelKnownProxies": "Proxyuri cunoscute:", + "LabelCurrentStatus": "Stare curentă:", + "KnownProxiesHelp": "Lista separată prin virgulă a adreselor IP ale proxy-urilor cunoscute utilizate la conectarea la instanța dvs. Jellyfin. Acest lucru este necesar pentru a utiliza în mod corespunzător antetele X-Forwarded-For. Necesită o repornire după salvare.", + "EnableAutoCast": "Setați ca implicit" } From bfb4359c8d37d578335428e2524f89450688211d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jurij=20Martin=C4=8Di=C4=8D?= Date: Sun, 27 Sep 2020 00:08:02 +0000 Subject: [PATCH 188/365] Translated using Weblate (Slovenian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/sl/ --- src/strings/sl-si.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/sl-si.json b/src/strings/sl-si.json index cbb2095729..652e3e77be 100644 --- a/src/strings/sl-si.json +++ b/src/strings/sl-si.json @@ -1337,5 +1337,6 @@ "Data": "Podatki", "ButtonUseQuickConnect": "Uporabi Quick Connect", "ButtonActivate": "Aktiviraj", - "Authorize": "Pooblasti" + "Authorize": "Pooblasti", + "HeaderBranding": "Promocija" } From 56d71798381e036a243118815194be9e963b9fda Mon Sep 17 00:00:00 2001 From: Dmitry Lyzo Date: Sun, 27 Sep 2020 17:48:29 +0300 Subject: [PATCH 189/365] Fix webOS 1.2 and lint --- src/scripts/settings/webSettings.js | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/scripts/settings/webSettings.js b/src/scripts/settings/webSettings.js index e28e0e84ff..80587713bf 100644 --- a/src/scripts/settings/webSettings.js +++ b/src/scripts/settings/webSettings.js @@ -1,25 +1,33 @@ let data; +const urlResolver = document.createElement('a'); + // `fetch` with `file:` support // Recent browsers seem to support `file` protocol under some conditions. // Based on https://github.com/github/fetch/pull/92#issuecomment-174730593 +// https://github.com/github/fetch/pull/92#issuecomment-512187452 async function fetchLocal(url, options) { + urlResolver.href = url; + + const requestURL = urlResolver.href; + return new Promise((resolve, reject) => { const xhr = new XMLHttpRequest; xhr.onload = () => { // `file` protocol has invalid OK status let status = xhr.status; - if (xhr.responseURL.startsWith('file:') && status === 0) { + if (requestURL.startsWith('file:') && status === 0) { status = 200; } + /* eslint-disable-next-line compat/compat */ resolve(new Response(xhr.responseText, {status: status})); - } + }; xhr.onerror = () => { reject(new TypeError('Local request failed')); - } + }; xhr.open('GET', url); From 7ac0d5ef9bfbd1daa928ba673feab1e0254a3726 Mon Sep 17 00:00:00 2001 From: Eben van Deventer Date: Sun, 27 Sep 2020 15:46:11 +0000 Subject: [PATCH 190/365] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 144 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 143 insertions(+), 1 deletion(-) diff --git a/src/strings/af.json b/src/strings/af.json index 68c0ab8793..65e73ba9a3 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -350,5 +350,147 @@ "GroupVersions": "Groepeer weergawes", "Guide": "Gids", "GuestStar": "Gaskunstenaar", - "GuideProviderLogin": "Skakel In" + "GuideProviderLogin": "Skakel In", + "HeaderSelectMetadataPath": "Kies Metadata Lêerpad", + "HeaderSelectCertificatePath": "Kies Sertifikaat Lêerpad", + "HeaderSecondsValue": "{0} Sekondes", + "HeaderSeasons": "Reekse", + "HeaderScenes": "Tonele", + "HeaderRunningTasks": "Aktiewe Take", + "HeaderRevisionHistory": "Terugvoer Geskiedenis", + "HeaderResponseProfileHelp": "Terugvoer profiele verleen 'n metode om spesiale inligting te kies wat aan die teostel gestuur word wanneer spesifieke media-tipes gespeel word.", + "HeaderResponseProfile": "Terugvoer Profiel", + "HeaderRemoveMediaLocation": "Verwyder Media Lokasie", + "HeaderRemoveMediaFolder": "Verwyder Media Gidslêer", + "HeaderRemoteControl": "Afstandbeheer", + "HeaderRemoteAccessSettings": "Eksterne Toegang Verstellings", + "HeaderRecordingPostProcessing": "Opname Naverwerking", + "HeaderRecordingOptions": "Opname Opsies", + "HeaderRecentlyPlayed": "Onlangs Gespeel", + "HeaderProfileServerSettingsHelp": "Hierdie waardes beheer hoe die bediener homself aan kliënte voorstel.", + "HeaderProfileInformation": "Profiel Inligting", + "HeaderPreferredMetadataLanguage": "Voorkeur Metadata Taal", + "HeaderPluginInstallation": "Inprop-toepassing Installasie", + "HeaderPleaseSignIn": "Skakel asseblief in", + "HeaderPlaybackError": "Terugspeel Fout", + "HeaderPlayback": "Media Terugspeel", + "HeaderPlayOn": "Speel Aan", + "HeaderPlayAll": "Speel Alles", + "HeaderPinCodeReset": "Herstel PIN Kode", + "HeaderPhotoAlbums": "Foto Albums", + "HeaderPaths": "Lêerpaaie", + "HeaderPasswordReset": "Herstel Wagwoord", + "HeaderPassword": "Wagwoord", + "HeaderParentalRatings": "Ouer Beperkings", + "HeaderOtherItems": "Ander Items", + "HeaderOnNow": "Nou Aan", + "HeaderNextVideoPlayingInValue": "Volgende Video Begin Speel in {0}", + "HeaderNextEpisodePlayingInValue": "Volgende Epsiode Begin Speel in {0}", + "HeaderNewDevices": "Nuwe Toestelle", + "HeaderNewApiKey": "Nuwe API Sleutel", + "HeaderNavigation": "Navigasie", + "HeaderMyMediaSmall": "My Media (klein)", + "HeaderMyMedia": "My Media", + "HeaderMyDevice": "My Toestel", + "HeaderMusicQuality": "Musiek Gehalte", + "HeaderMoreLikeThis": "Meer Soos Hierdie", + "HeaderMetadataSettings": "Metadata Verstellings", + "HeaderMediaFolders": "Media Gidslêers", + "HeaderMedia": "Media", + "HeaderLoginFailure": "Aansluit Fout", + "HeaderLiveTvTunerSetup": "Lewendige TV Inskakelaar Konfigurasie", + "HeaderLibrarySettings": "Versameling Verstellings", + "HeaderLibraryOrder": "Versameling Volgorde", + "HeaderLibraryFolders": "Versameling Gidslêers", + "HeaderLibraryAccess": "Versameling Toegang", + "HeaderLibraries": "Versamelings", + "HeaderLatestRecordings": "Nuutste Opnames", + "HeaderLatestMusic": "Nuutste Musiek", + "HeaderLatestMovies": "Nuutste Flieks", + "HeaderLatestMedia": "Nuutste Media", + "HeaderLatestEpisodes": "Nuutste Episodes", + "HeaderKodiMetadataHelp": "Om NFO metadata te aktiveer of deaktiveer, verander 'n versameling en spoor die metadata-berger afdeling.", + "HeaderKeepSeries": "Hou Reeks", + "HeaderKeepRecording": "Hou aan Opneem", + "HeaderInstantMix": "Onmiddelike Mengsel", + "HeaderInstall": "Installeer", + "HeaderImageSettings": "Beeld Verstellinge", + "HeaderImageOptions": "Beel Opsies", + "HeaderIdentifyItemHelp": "Sleutel een of meer soek kriteria in. Verwyder kriteris om soek-resultate te vermeerder.", + "HeaderIdentificationHeader": "Identifikasie Kopstukke", + "HeaderIdentificationCriteriaHelp": "Sleutel minstens een identifikasie kriterium in.", + "HeaderIdentification": "Identifikasie", + "HeaderHttpsSettings": "HTTPS Verstellinge", + "HeaderHttpHeaders": "HTTP Kopstukke", + "HeaderGuideProviders": "TV Gids Data Verskaffers", + "HeaderFrequentlyPlayed": "Gereeld Gespeel", + "HeaderForKids": "Vir Kinders", + "HeaderFetcherSettings": "Soeker Verstellings", + "HeaderFetchImages": "Soek Beelde:", + "HeaderFeatureAccess": "Funksie Toegang", + "HeaderExternalIds": "Eksterne IDs:", + "HeaderError": "Fout", + "HeaderEnabledFieldsHelp": "Ontkies 'n veld om dit te sluit en te verhoed dat die veld se data verander kan word.", + "HeaderEnabledFields": "Geaktiveerde Velde", + "HeaderEditImages": "Wysig Beelde", + "HeaderEasyPinCode": "Maklike PIN Kode", + "HeaderDVR": "DVO", + "HeaderDownloadSync": "Laai af en Synkroniseer", + "HeaderDirectPlayProfileHelp": "Voeg direkte speel profile om aan te dui watter formate die toestelle natuurlik kan hanteer.", + "HeaderDirectPlayProfile": "Direkte Speel Profiel", + "HeaderDevices": "Toestelle", + "HeaderDeviceAccess": "Toestel Toegang", + "HeaderDeveloperInfo": "Ontwikkelaar Inligting", + "HeaderDetectMyDevices": "Tel My Toestelle Op", + "HeaderDeleteTaskTrigger": "Verwyder Taak Sneller", + "HeaderDeleteProvider": "Verwyder Verskaffer", + "HeaderDeleteItems": "Verwyder Items", + "HeaderDeleteItem": "Verwyder Item", + "HeaderDeleteDevice": "Verwyder Toestel", + "HeaderDefaultRecordingSettings": "Standaard Opname Verstellings", + "HeaderDateIssued": "Datum Uitgereik", + "HeaderCustomDlnaProfiles": "Eie Profile", + "HeaderContinueListening": "Hou Aan Luister", + "HeaderContainerProfileHelp": "Houer profiele dui die beperkinge van enige toestelle aan wanneer spesifieke formate gespeel word. Indien 'n beperking van toepassing is sal die media getranskodeer word, selfs as die formaat gestel is vir direkte spel.", + "HeaderContainerProfile": "Houer Profiel", + "HeaderConnectionFailure": "Konneksie Fout", + "HeaderConnectToServer": "Konnekteer aan Bediener", + "HeaderConfirmRevokeApiKey": "Herroep API Sleutel", + "HeaderConfirmProfileDeletion": "Bevestig Profiel Verwydering", + "HeaderConfirmPluginInstallation": "Bevestig Inprop-Toepassing Installasie", + "HeaderConfigureRemoteAccess": "Stel Eksterne Toegang Op", + "HeaderCodecProfileHelp": "Codec profiele dui die beperkinge van 'n toestel aan wanneer spesifieke codecs gespeel word. As 'n beperking van toepassing is sal die media getranskodeer word, selfs al is die codec verstel vir direkte spel.", + "HeaderCodecProfile": "Codec Profiel", + "HeaderChapterImages": "Hoofstuk Beelde", + "HeaderChannelAccess": "Kanaal Toegang", + "HeaderCastAndCrew": "Rolverdeling en Bemanning", + "HeaderCancelSeries": "Kanselleer Reeks", + "HeaderCancelRecording": "Kanselleer Opname", + "HeaderBranding": "Handelsmerk", + "HeaderBlockItemsWithNoRating": "Blok items met geen of onherkenbare beperkingsinligting:", + "HeaderAudioSettings": "Klank Verstellings", + "HeaderAudioBooks": "Klankboeke", + "HeaderAppearsOn": "Verskyn Op", + "HeaderApp": "Toep", + "ApiKeysCaption": "Lys aktiewe API sleutels", + "HeaderApiKeysHelp": "Eksterne toepassings word vereis om 'n API sleutel te hê om te kommunikeer met die bediener. Sleutels word utigereik deur in te sluit in die normale verbruikers rekening of deur self 'n sleutel toe te staan aan die toepassing.", + "HeaderApiKeys": "API Sleutels", + "HeaderApiKey": "API Sleutel", + "HeaderAllowMediaDeletionFrom": "Laat Media Verwydering Toe Van", + "HeaderAlert": "Waarskuwing", + "HeaderAdmin": "Admin", + "HeaderAdditionalParts": "Addisionele Dele", + "HeaderAddUpdateImage": "Voeg/Dateer Beeld Op", + "HeaderAddToPlaylist": "Voeg tot Snitlys", + "HeaderAddToCollection": "Voeg by Versameling", + "HeaderActivity": "Aktiwiteit", + "HeaderActiveRecordings": "Aktiewe Opnames", + "HeaderActiveDevices": "Aktiewe Toestelle", + "HeaderAccessScheduleHelp": "Skep 'n toegangskedule om toegang te beperk tydens sekere tydgleuwe.", + "HeaderAccessSchedule": "Toegangsskedule", + "HardwareAccelerationWarning": "Die aktivering van hardeware versnelling mag stabiliteit belemmer in sekere omgewings. Verseker dat u bedryfstelsel en video drywers ten volle op datum is. As u probleme ervaar in die terugspeel van video nadat hierdie geaktiveer is sal u die verstelling terug moet stel na Geen.", + "HDPrograms": "HD programme", + "EncoderPresetHelp": "Kies 'n vinniger waarde om optrede te verbeter, of 'n stadiger waarde om gehalte te verbeter.", + "H264CrfHelp": "Die Konstante Tempo Faktor (KTF) is die standaard kwaliteit verstelling vir die x264 enkodeerder. Jy kan die waardes stel tussen 0 en 51, waar laer waardes beter gehalte lewer (ten koste van hoër lêer-groottes). Sinvolle waardes is tussen 18 en 28. Die standaard vir x264 is 23, gebruik dit dus as 'n beginpunt.", + "GuideProviderSelectListings": "Kies Gids" } From 53f62e6decd672eb55e40189791e8ac7fb788f14 Mon Sep 17 00:00:00 2001 From: Eben van Deventer Date: Sun, 27 Sep 2020 16:32:16 +0000 Subject: [PATCH 191/365] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/af.json b/src/strings/af.json index 65e73ba9a3..c607e7597d 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -492,5 +492,6 @@ "HDPrograms": "HD programme", "EncoderPresetHelp": "Kies 'n vinniger waarde om optrede te verbeter, of 'n stadiger waarde om gehalte te verbeter.", "H264CrfHelp": "Die Konstante Tempo Faktor (KTF) is die standaard kwaliteit verstelling vir die x264 enkodeerder. Jy kan die waardes stel tussen 0 en 51, waar laer waardes beter gehalte lewer (ten koste van hoër lêer-groottes). Sinvolle waardes is tussen 18 en 28. Die standaard vir x264 is 23, gebruik dit dus as 'n beginpunt.", - "GuideProviderSelectListings": "Kies Gids" + "GuideProviderSelectListings": "Kies Gids", + "HeaderSelectMetadataPathHelp": "Soek of sleutel lêerpad in wat u vir metadata wil gebruik. Die gidslêer moet skryfbaar wees." } From 8c028719d1186d225638fbec179332960c6d7afa Mon Sep 17 00:00:00 2001 From: Eben van Deventer Date: Sun, 27 Sep 2020 16:32:32 +0000 Subject: [PATCH 192/365] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/af.json b/src/strings/af.json index c607e7597d..3f1f4add64 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -493,5 +493,6 @@ "EncoderPresetHelp": "Kies 'n vinniger waarde om optrede te verbeter, of 'n stadiger waarde om gehalte te verbeter.", "H264CrfHelp": "Die Konstante Tempo Faktor (KTF) is die standaard kwaliteit verstelling vir die x264 enkodeerder. Jy kan die waardes stel tussen 0 en 51, waar laer waardes beter gehalte lewer (ten koste van hoër lêer-groottes). Sinvolle waardes is tussen 18 en 28. Die standaard vir x264 is 23, gebruik dit dus as 'n beginpunt.", "GuideProviderSelectListings": "Kies Gids", - "HeaderSelectMetadataPathHelp": "Soek of sleutel lêerpad in wat u vir metadata wil gebruik. Die gidslêer moet skryfbaar wees." + "HeaderSelectMetadataPathHelp": "Soek of sleutel lêerpad in wat u vir metadata wil gebruik. Die gidslêer moet skryfbaar wees.", + "HeaderSelectPath": "Kies Lêerpad" } From 21aec93e39b1eb300f890a70d0c0b3abfc91de49 Mon Sep 17 00:00:00 2001 From: Dmitry Lyzo Date: Sat, 26 Sep 2020 19:40:16 +0300 Subject: [PATCH 193/365] Fix subtitles display on Tizen 2.x - hide controls if only they are enabled --- src/plugins/htmlVideoPlayer/style.css | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/plugins/htmlVideoPlayer/style.css b/src/plugins/htmlVideoPlayer/style.css index 880ea86743..7d984b69aa 100644 --- a/src/plugins/htmlVideoPlayer/style.css +++ b/src/plugins/htmlVideoPlayer/style.css @@ -17,7 +17,11 @@ order: -1; } -video::-webkit-media-controls { +/* Controls are enabled for devices that don't support autoplay. They will be hidden when playback starts. + In Tizen 2.3 (and probably other old web engines), subtitles are located under '-webkit-media-controls' tree. + Therefore, we hide controls only if they are enabled. + */ +video[controls]::-webkit-media-controls { display: none !important; } From 0afed019fd91b264c46145c3bdf71f355d390868 Mon Sep 17 00:00:00 2001 From: Eben van Deventer Date: Sun, 27 Sep 2020 16:33:00 +0000 Subject: [PATCH 194/365] Translated using Weblate (Afrikaans) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/af/ --- src/strings/af.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/strings/af.json b/src/strings/af.json index 3f1f4add64..725c756d55 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -494,5 +494,8 @@ "H264CrfHelp": "Die Konstante Tempo Faktor (KTF) is die standaard kwaliteit verstelling vir die x264 enkodeerder. Jy kan die waardes stel tussen 0 en 51, waar laer waardes beter gehalte lewer (ten koste van hoër lêer-groottes). Sinvolle waardes is tussen 18 en 28. Die standaard vir x264 is 23, gebruik dit dus as 'n beginpunt.", "GuideProviderSelectListings": "Kies Gids", "HeaderSelectMetadataPathHelp": "Soek of sleutel lêerpad in wat u vir metadata wil gebruik. Die gidslêer moet skryfbaar wees.", - "HeaderSelectPath": "Kies Lêerpad" + "HeaderSelectPath": "Kies Lêerpad", + "HeaderSelectTranscodingPath": "Kies Transkodering Tydelike Lêerpad", + "HeaderSelectServerCachePathHelp": "Soek of sleutel die lêerpad in om te gebruik vir bediener kasgeheue. Die gidslêer moet skryfbaar wees.", + "HeaderSelectServerCachePath": "Kies Bediener Kasgeheue Lêerpad" } From 1888d06af8ed64ca7c8f70051e46d823598c02df Mon Sep 17 00:00:00 2001 From: Leo Date: Mon, 28 Sep 2020 10:27:16 +0000 Subject: [PATCH 195/365] Translated using Weblate (Spanish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/es/ --- src/strings/es.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/es.json b/src/strings/es.json index e41fe91e1b..8b7dba1e5d 100644 --- a/src/strings/es.json +++ b/src/strings/es.json @@ -1411,5 +1411,6 @@ "LabelTonemappingPeak": "Pico del mapeo de Tono:", "LabelTonemappingDesat": "Mapeo de tonos desaturado:", "UseDoubleRateDeinterlacingHelp": "Esta configuración utiliza la velocidad de campo al desentrelazar, a menudo denominado desentrelazado bob, que duplica los fotogramas del video para proporcionar un movimiento contínuo, como lo vería al ver un video entrelazado en un televisor.", - "PosterCard": "Tarjeta de presentación" + "PosterCard": "Tarjeta de presentación", + "EnableAutoCast": "Marcar como predeterminado" } From d5dad66eecad2331763393f26b436c3c55b63852 Mon Sep 17 00:00:00 2001 From: Nyanmisaka <799610810@qq.com> Date: Mon, 28 Sep 2020 12:32:07 +0000 Subject: [PATCH 196/365] Translated using Weblate (Chinese (Simplified)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/zh_Hans/ --- src/strings/zh-cn.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/zh-cn.json b/src/strings/zh-cn.json index 02fa8ef897..d52560e371 100644 --- a/src/strings/zh-cn.json +++ b/src/strings/zh-cn.json @@ -1417,5 +1417,6 @@ "EnableQuickConnect": "在此服务器上启用 Quick Connect", "ButtonUseQuickConnect": "使用 Quick Connect", "ButtonActivate": "启用", - "Authorize": "授权" + "Authorize": "授权", + "EnableAutoCast": "设置为默认" } From e0b1a3b55f814509a439d752befc87425974857f Mon Sep 17 00:00:00 2001 From: Dmitry Lyzo Date: Mon, 28 Sep 2020 15:55:39 +0300 Subject: [PATCH 197/365] Fix ES6 import - browser --- src/scripts/site.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/scripts/site.js b/src/scripts/site.js index 501f8258de..d386243138 100644 --- a/src/scripts/site.js +++ b/src/scripts/site.js @@ -203,7 +203,7 @@ function initClient() { createConnectionManager().then(function () { console.debug('initAfterDependencies promises resolved'); - require(['globalize', 'browser'], function (globalize, browser) { + require(['globalize', 'browser'], function (globalize, {default: browser}) { window.Globalize = globalize; loadCoreDictionary(globalize).then(function () { onGlobalizeInit(browser, globalize); From c73cf7814db9d12056f9d6ac1ca5f9d5e2abe62f Mon Sep 17 00:00:00 2001 From: Frederik Andersen Date: Mon, 28 Sep 2020 18:03:04 +0000 Subject: [PATCH 198/365] Translated using Weblate (Danish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/da/ --- src/strings/da.json | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/src/strings/da.json b/src/strings/da.json index 59b726a2d6..0b1c08a54b 100644 --- a/src/strings/da.json +++ b/src/strings/da.json @@ -11,16 +11,16 @@ "AllChannels": "Alle kanaler", "AllEpisodes": "Alle episoder", "AllLibraries": "Alle biblioteker", - "AllowHWTranscodingHelp": "Tillader tuneren at transkode streams \"on the fly\". Dette kan hjælpe med at reducere transkodningen, der kræves af serveren.", + "AllowHWTranscodingHelp": "Tillad tuneren at omkode streams \"on the fly\". Dette kan hjælpe med at reducere omkodningen, der kræves af serveren.", "AllowMediaConversion": "Tillad media konvertering", "AllowMediaConversionHelp": "Giv eller nægt adgang til Konvertér Media featuren.", "AllowOnTheFlySubtitleExtraction": "Tillad udtræk af undertekster on-the-fly", - "AllowOnTheFlySubtitleExtractionHelp": "Indeholdte undertekster kan trækkes ud af videoer og leveres til klienter i ren tekst for at afhjælpe video omkodning. På nogle systemer kan dette tage lang tid og forårsage at afspilning kan hænge mens den udtrækker. Slå dette fra, for at have undertekster brændt ind i vha. video omkodningen når der ikke er indbygget understøttelse for ren tekst undertekster i klient enheden.", - "AllowRemoteAccess": "Tillad fjernadgang til denne Jellyfin Server.", + "AllowOnTheFlySubtitleExtractionHelp": "Indeholdte undertekster kan trækkes ud af videoer og leveres til klienter i ren tekst for at afhjælpe video omkodning. På nogle systemer kan dette tage lang tid og forårsage at afspilning kan hænge under udtrækningen. Slå dette fra, for at have undertekster brændt ind i video omkodningen når det er supporteret på klient enheden.", + "AllowRemoteAccess": "Tillad fjernadgang til denne server.", "AllowRemoteAccessHelp": "Hvis ikke markeret, vil alle fjernforbindelser blive blokeret.", "AllowedRemoteAddressesHelp": "Komma seperareret liste over IP adresser og netmasker der har ret til fjernadgang. Hvis blank er alle adresser tilladte.", "Anytime": "Altid", - "AroundTime": "Omkring {0}", + "AroundTime": "Omkring", "AsManyAsPossible": "Så mange som muligt", "AspectRatio": "Billedformat", "Audio": "Lyd", @@ -32,7 +32,7 @@ "MessageBrowsePluginCatalog": "Gennemse vores plugin-katalog for at se tilgængelige plugins.", "ButtonAddMediaLibrary": "Tilføj Mediebibliotek", "ButtonAddScheduledTaskTrigger": "Tilføj udløser", - "ButtonAddServer": "Tilføj Server", + "ButtonAddServer": "Tilføj server", "ButtonAddUser": "Tilføj bruger", "ButtonArrowLeft": "Venstre", "ButtonArrowRight": "Højre", @@ -739,9 +739,9 @@ "OptionOnInterval": "Interval", "OptionParentalRating": "Aldersgrænse", "OptionPlainStorageFolders": "Vis alle mapper som standardmapper", - "OptionPlainStorageFoldersHelp": "Når dette er aktiveret, bliver alle mapper vist i DIDL som \"object.container.storageFolder\" i stedet for mere specifikke typer, som f. eks. \"object.container.person.musicArtist\".", + "OptionPlainStorageFoldersHelp": "Alle mapper vises i DIDL som \"object.container.storageFolder\" i stedet for en mere specifik type, som f. eks. \"object.container.person.musicArtist\".", "OptionPlainVideoItems": "Vis alle videoer som standardvideo", - "OptionPlainVideoItemsHelp": "Når dette er aktiveret, bliver alle videoer vist i DIDL som \"object.item.videoItem\" i stedet for mere specifikke typer, som f. eks. \"object.item.videoItem.movie\".", + "OptionPlainVideoItemsHelp": "Alle videoer vises i DIDL som \"object.item.videoItem\" i stedet for en mere specifik type, som f. eks. \"object.item.videoItem.movie\".", "OptionPlayCount": "Gange afspillet", "OptionPremiereDate": "Præmieredato", "OptionReleaseDate": "Udgivelsesdato", @@ -1262,8 +1262,8 @@ "FetchingData": "Henter yderligere data", "Episode": "Afsnit", "DeinterlaceMethodHelp": "Vælg hvilken konverteringsmulighed der skal bruges til transkodning af indhold.", - "CopyStreamURLSuccess": "URL blev kopieret.", - "CopyStreamURL": "Kopiér stream URL", + "CopyStreamURLSuccess": "URL kopieret.", + "CopyStreamURL": "Kopier stream URL", "ClientSettings": "Klient Indstillinger", "ButtonSplit": "Opdel", "BoxSet": "Box Set", @@ -1276,5 +1276,10 @@ "Filter": "Filtrer", "New": "Nye", "ButtonTogglePlaylist": "Spilleliste", - "ButtonSyncPlay": "SyncPlay" + "ButtonSyncPlay": "SyncPlay", + "HeaderRemoteAccessSettings": "Fjernkontrolsindstillinger", + "HeaderHttpsSettings": "HTTPS Indstillinger", + "EnableAutoCast": "Brug som standard", + "Data": "Data", + "ButtonActivate": "Aktiver" } From 596f4fc4f2bffcb3c8940bd9764dd056527c31b5 Mon Sep 17 00:00:00 2001 From: Thomas Schwery Date: Mon, 28 Sep 2020 18:54:11 +0000 Subject: [PATCH 199/365] Translated using Weblate (French) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fr/ --- src/strings/fr.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/strings/fr.json b/src/strings/fr.json index bf80687183..cb269f1f6f 100644 --- a/src/strings/fr.json +++ b/src/strings/fr.json @@ -1414,5 +1414,7 @@ "ButtonUseQuickConnect": "Utiliser la Connexion Rapide", "ButtonActivate": "Activer", "Authorize": "Autoriser", - "LabelTonemappingParam": "Paramètre de mappage tonal :" + "LabelTonemappingParam": "Paramètre de mappage tonal :", + "LabelTonemappingPeakHelp": "Redéfini le signal/nominal/crête de référence. Utile lorsque l'information de crête intégrée dans les métadonnées d'affichage n'est pas fiable ou lorsque le mappage tonal d'une gamme inférieure à une gamme supérieure. La valeur recommandée et la valeur par défaut sont 0.", + "EnableAutoCast": "Définir comme Défaut" } From be2dcc69d81e31c2aa797ed5b73987ae92a0931e Mon Sep 17 00:00:00 2001 From: Thomas Schwery Date: Mon, 28 Sep 2020 19:11:26 +0000 Subject: [PATCH 200/365] Translated using Weblate (French) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fr/ --- src/strings/fr.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/strings/fr.json b/src/strings/fr.json index cb269f1f6f..39b092d4b9 100644 --- a/src/strings/fr.json +++ b/src/strings/fr.json @@ -1416,5 +1416,7 @@ "Authorize": "Autoriser", "LabelTonemappingParam": "Paramètre de mappage tonal :", "LabelTonemappingPeakHelp": "Redéfini le signal/nominal/crête de référence. Utile lorsque l'information de crête intégrée dans les métadonnées d'affichage n'est pas fiable ou lorsque le mappage tonal d'une gamme inférieure à une gamme supérieure. La valeur recommandée et la valeur par défaut sont 0.", - "EnableAutoCast": "Définir comme Défaut" + "EnableAutoCast": "Définir comme Défaut", + "LabelMaxMuxingQueueSizeHelp": "Nombre maximum de paquets qui peuvent être mis en mémoire tampon en attendant que tous les flux soient initialisés. Essayez de l'augmenter si vous rencontrez des erreurs \"Trop de paquets en mémoire tampon pour le flux de sortie\" dans les journaux ffmpeg. La valeur recommandée est 2048.", + "LabelMaxMuxingQueueSize": "Taille maximale de la queue de multiplexage :" } From 187330532832a1147c4362a1eabbd02bb2e0127d Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 28 Sep 2020 20:03:26 +0000 Subject: [PATCH 201/365] Bump swiper from 6.2.0 to 6.3.2 Bumps [swiper](https://github.com/nolimits4web/Swiper) from 6.2.0 to 6.3.2. - [Release notes](https://github.com/nolimits4web/Swiper/releases) - [Changelog](https://github.com/nolimits4web/swiper/blob/master/CHANGELOG.md) - [Commits](https://github.com/nolimits4web/Swiper/compare/v6.2.0...v6.3.2) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index d2072a85a9..17fbe8bf96 100644 --- a/package.json +++ b/package.json @@ -81,7 +81,7 @@ "resize-observer-polyfill": "^1.5.1", "screenfull": "^5.0.2", "sortablejs": "^1.12.0", - "swiper": "^6.2.0", + "swiper": "^6.3.2", "webcomponents.js": "^0.7.24", "whatwg-fetch": "^3.4.1" }, diff --git a/yarn.lock b/yarn.lock index a2695f11f4..e0b70e91bd 100644 --- a/yarn.lock +++ b/yarn.lock @@ -11004,10 +11004,10 @@ svgo@^1.0.0, svgo@^1.3.2: unquote "~1.1.1" util.promisify "~1.0.0" -swiper@^6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/swiper/-/swiper-6.2.0.tgz#f9dafdc2ccb5d6dd2bd728c78db87605329cb50e" - integrity sha512-lOQeWRAHXwWPDu6k5cJYkf/eVRq2IUiHpMSGS143PVBg91J+2ZCXwM+Uv2sUckrZn3AMGcpcpnEBqD8Rwz9XGQ== +swiper@^6.3.2: + version "6.3.2" + resolved "https://registry.yarnpkg.com/swiper/-/swiper-6.3.2.tgz#3eb337ff58f425841a27400a7b0215234d94f3c1" + integrity sha512-mseVNXAsNNSfp3fHuZlMnsToc3ulM3X3on2EC8GMi4+/DwD9SSieSSIQroUbxkIMmCCIvpDN1Ese7o0Ls9I4lw== dependencies: dom7 "^3.0.0-alpha.7" ssr-window "^3.0.0-alpha.4" From 0a09cc303d6bcfde63aef26914aa418f302d48dd Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 28 Sep 2020 20:04:38 +0000 Subject: [PATCH 202/365] Bump query-string from 6.13.2 to 6.13.4 Bumps [query-string](https://github.com/sindresorhus/query-string) from 6.13.2 to 6.13.4. - [Release notes](https://github.com/sindresorhus/query-string/releases) - [Commits](https://github.com/sindresorhus/query-string/compare/v6.13.2...v6.13.4) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index d2072a85a9..bc9408b31e 100644 --- a/package.json +++ b/package.json @@ -77,7 +77,7 @@ "material-design-icons-iconfont": "^6.1.0", "native-promise-only": "^0.8.0-a", "page": "^1.11.6", - "query-string": "^6.13.2", + "query-string": "^6.13.4", "resize-observer-polyfill": "^1.5.1", "screenfull": "^5.0.2", "sortablejs": "^1.12.0", diff --git a/yarn.lock b/yarn.lock index a2695f11f4..56d53c88a2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9232,10 +9232,10 @@ query-string@^5.0.1: object-assign "^4.1.0" strict-uri-encode "^1.0.0" -query-string@^6.13.2: - version "6.13.2" - resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.13.2.tgz#3585aa9412c957cbd358fd5eaca7466f05586dda" - integrity sha512-BMmDaUiLDFU1hlM38jTFcRt7HYiGP/zt1sRzrIWm5zpeEuO1rkbPS0ELI3uehoLuuhHDCS8u8lhFN3fEN4JzPQ== +query-string@^6.13.4: + version "6.13.4" + resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.13.4.tgz#b35a9a3bd4955bce55f94feb0e819b3d0be6f66f" + integrity sha512-E2NPIeJoBEJGQNy3ib1k/Z/OkDBUKIo8IV2ZVwbKfoa65IS9unqWWUlLcbfU70Da0qNoxUZZA8CfKUjKLE641Q== dependencies: decode-uri-component "^0.2.0" split-on-first "^1.0.0" From 92ba7fe8be3540c6364aaba86d6fee8930005d4b Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 28 Sep 2020 20:04:56 +0000 Subject: [PATCH 203/365] Bump jellyfin-apiclient from 1.4.1 to 1.4.2 Bumps [jellyfin-apiclient](https://github.com/jellyfin/jellyfin-apiclient-javascript) from 1.4.1 to 1.4.2. - [Release notes](https://github.com/jellyfin/jellyfin-apiclient-javascript/releases) - [Commits](https://github.com/jellyfin/jellyfin-apiclient-javascript/compare/v1.4.1...v1.4.2) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index d2072a85a9..d58828cd90 100644 --- a/package.json +++ b/package.json @@ -68,7 +68,7 @@ "hls.js": "^0.14.12", "howler": "^2.2.0", "intersection-observer": "^0.11.0", - "jellyfin-apiclient": "^1.4.1", + "jellyfin-apiclient": "^1.4.2", "jellyfin-noto": "https://github.com/jellyfin/jellyfin-noto", "jquery": "^3.5.1", "jstree": "^3.3.10", diff --git a/yarn.lock b/yarn.lock index a2695f11f4..1eea893d58 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6343,10 +6343,10 @@ isurl@^1.0.0-alpha5: has-to-string-tag-x "^1.2.0" is-object "^1.0.1" -jellyfin-apiclient@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/jellyfin-apiclient/-/jellyfin-apiclient-1.4.1.tgz#5e544a19bc001b16669eb7ecf46bb7d652365e41" - integrity sha512-BTTRucQ4tCLyiZ9kR9nAoxqxYp5/z+MCzkayy9vmMZ5C7jlVVsnxAXuuZjoa+AgXMjohXcM5Ci54myfJM1pRkA== +jellyfin-apiclient@^1.4.2: + version "1.4.2" + resolved "https://registry.yarnpkg.com/jellyfin-apiclient/-/jellyfin-apiclient-1.4.2.tgz#0a7ab7b371380cfb1bc9789204439b8dfdcdbafd" + integrity sha512-xUvt1G0cDlam6hJgC5Jr6EE5botzdEMGxeer3Vm0+zhM7nb8iFnRmQRmTpVbXtYS8NLiHsiUmK1RLlelgtWDYg== "jellyfin-noto@https://github.com/jellyfin/jellyfin-noto": version "1.0.3" From 9ad93128586a9743f698dedbdb2639dd9405b9b4 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 28 Sep 2020 20:05:38 +0000 Subject: [PATCH 204/365] Bump hls.js from 0.14.12 to 0.14.13 Bumps [hls.js](https://github.com/video-dev/hls.js) from 0.14.12 to 0.14.13. - [Release notes](https://github.com/video-dev/hls.js/releases) - [Changelog](https://github.com/video-dev/hls.js/blob/master/docs/release-process.md) - [Commits](https://github.com/video-dev/hls.js/compare/v0.14.12...v0.14.13) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index d2072a85a9..83c0a48f63 100644 --- a/package.json +++ b/package.json @@ -65,7 +65,7 @@ "fast-text-encoding": "^1.0.3", "flv.js": "^1.5.0", "headroom.js": "^0.11.0", - "hls.js": "^0.14.12", + "hls.js": "^0.14.13", "howler": "^2.2.0", "intersection-observer": "^0.11.0", "jellyfin-apiclient": "^1.4.1", diff --git a/yarn.lock b/yarn.lock index a2695f11f4..c25bf41d03 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5479,10 +5479,10 @@ hex-color-regex@^1.1.0: resolved "https://registry.yarnpkg.com/hex-color-regex/-/hex-color-regex-1.1.0.tgz#4c06fccb4602fe2602b3c93df82d7e7dbf1a8a8e" integrity sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ== -hls.js@^0.14.12: - version "0.14.12" - resolved "https://registry.yarnpkg.com/hls.js/-/hls.js-0.14.12.tgz#d57042115bee8570861482a8245cbd8b064a6cb4" - integrity sha512-ye0KUhGp/K36gUb49MV5sA+uvEy4GVX4mJur8Bd2uCyLKpZs2zVm6aPHLR8iF3SBKbDF6n/SDHVgrTQxKSmsZQ== +hls.js@^0.14.13: + version "0.14.13" + resolved "https://registry.yarnpkg.com/hls.js/-/hls.js-0.14.13.tgz#824395a0631c8e32bf0e8de06873f1d89774bada" + integrity sha512-0u61R0t6DcgJ7Ofr0RUlfrNrkP2gn5pHL+5clKmITY1P7pztyj5aoVw2/9SbeoM6k4shg5iPyuZb+7I32ZzqFQ== dependencies: eventemitter3 "^4.0.3" url-toolkit "^2.1.6" From 18e4b3a226bdb1764796a990d0d2b95ffc66f2a7 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 28 Sep 2020 20:05:52 +0000 Subject: [PATCH 205/365] Bump del from 5.1.0 to 6.0.0 Bumps [del](https://github.com/sindresorhus/del) from 5.1.0 to 6.0.0. - [Release notes](https://github.com/sindresorhus/del/releases) - [Commits](https://github.com/sindresorhus/del/compare/v5.1.0...v6.0.0) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 34 +++++++++++++++++----------------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/package.json b/package.json index d2072a85a9..bb192b1ac2 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "copy-webpack-plugin": "^5.1.1", "css-loader": "^4.3.0", "cssnano": "^4.1.10", - "del": "^5.1.0", + "del": "^6.0.0", "eslint": "^7.9.0", "eslint-plugin-compat": "^3.5.1", "eslint-plugin-eslint-comments": "^3.2.0", diff --git a/yarn.lock b/yarn.lock index a2695f11f4..631021cd1a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3403,18 +3403,18 @@ define-property@^2.0.2: is-descriptor "^1.0.2" isobject "^3.0.1" -del@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/del/-/del-5.1.0.tgz#d9487c94e367410e6eff2925ee58c0c84a75b3a7" - integrity sha512-wH9xOVHnczo9jN2IW68BabcecVPxacIA3g/7z6vhSU/4stOKQzeCRK0yD0A24WiAAUJmmVpWqrERcTxnLo3AnA== +del@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/del/-/del-6.0.0.tgz#0b40d0332cea743f1614f818be4feb717714c952" + integrity sha512-1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ== dependencies: - globby "^10.0.1" - graceful-fs "^4.2.2" + globby "^11.0.1" + graceful-fs "^4.2.4" is-glob "^4.0.1" is-path-cwd "^2.2.0" - is-path-inside "^3.0.1" - p-map "^3.0.0" - rimraf "^3.0.0" + is-path-inside "^3.0.2" + p-map "^4.0.0" + rimraf "^3.0.2" slash "^3.0.0" delayed-stream@~1.0.0: @@ -4975,7 +4975,7 @@ globals@^12.1.0: dependencies: type-fest "^0.8.1" -globby@^10.0.0, globby@^10.0.1: +globby@^10.0.0: version "10.0.2" resolved "https://registry.yarnpkg.com/globby/-/globby-10.0.2.tgz#277593e745acaa4646c3ab411289ec47a0392543" integrity sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg== @@ -5105,7 +5105,7 @@ got@^8.3.1: url-parse-lax "^3.0.0" url-to-options "^1.0.1" -graceful-fs@4.X, graceful-fs@^4.0.0, graceful-fs@^4.1.10, graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.2: +graceful-fs@4.X, graceful-fs@^4.0.0, graceful-fs@^4.1.10, graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.2, graceful-fs@^4.2.4: version "4.2.4" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb" integrity sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw== @@ -6149,7 +6149,7 @@ is-path-cwd@^2.2.0: resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-2.2.0.tgz#67d43b82664a7b5191fd9119127eb300048a9fdb" integrity sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ== -is-path-inside@^3.0.1: +is-path-inside@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.2.tgz#f5220fc82a3e233757291dddc9c5877f2a1f3017" integrity sha512-/2UGPSgmtqwo1ktx8NDHjuPwZWmHhO+gj0f93EkhLB5RgW9RZevWYYlIkS6zePc6U2WpOdQYIwHe9YC4DWEBVg== @@ -7935,10 +7935,10 @@ p-map-series@^1.0.0: dependencies: p-reduce "^1.0.0" -p-map@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-3.0.0.tgz#d704d9af8a2ba684e2600d9a215983d4141a979d" - integrity sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ== +p-map@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" + integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== dependencies: aggregate-error "^3.0.0" @@ -9830,7 +9830,7 @@ rimraf@2.6.3: dependencies: glob "^7.1.3" -rimraf@^3.0.0: +rimraf@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== From 5f6c4eb05d579572c2e879044bb119e0e82b71ac Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 28 Sep 2020 20:06:44 +0000 Subject: [PATCH 206/365] Bump eslint-plugin-import from 2.22.0 to 2.22.1 Bumps [eslint-plugin-import](https://github.com/benmosher/eslint-plugin-import) from 2.22.0 to 2.22.1. - [Release notes](https://github.com/benmosher/eslint-plugin-import/releases) - [Changelog](https://github.com/benmosher/eslint-plugin-import/blob/master/CHANGELOG.md) - [Commits](https://github.com/benmosher/eslint-plugin-import/compare/v2.22.0...v2.22.1) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/package.json b/package.json index d2072a85a9..c9f39b035e 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,7 @@ "eslint": "^7.9.0", "eslint-plugin-compat": "^3.5.1", "eslint-plugin-eslint-comments": "^3.2.0", - "eslint-plugin-import": "^2.21.2", + "eslint-plugin-import": "^2.22.1", "eslint-plugin-promise": "^4.2.1", "file-loader": "^6.1.0", "gulp": "^4.0.2", diff --git a/yarn.lock b/yarn.lock index a2695f11f4..50195c8b45 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3957,7 +3957,7 @@ escape-string-regexp@^2.0.0: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== -eslint-import-resolver-node@^0.3.3: +eslint-import-resolver-node@^0.3.4: version "0.3.4" resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz#85ffa81942c25012d8231096ddf679c03042c717" integrity sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA== @@ -3995,17 +3995,17 @@ eslint-plugin-eslint-comments@^3.2.0: escape-string-regexp "^1.0.5" ignore "^5.0.5" -eslint-plugin-import@^2.21.2: - version "2.22.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.22.0.tgz#92f7736fe1fde3e2de77623c838dd992ff5ffb7e" - integrity sha512-66Fpf1Ln6aIS5Gr/55ts19eUuoDhAbZgnr6UxK5hbDx6l/QgQgx61AePq+BV4PP2uXQFClgMVzep5zZ94qqsxg== +eslint-plugin-import@^2.22.1: + version "2.22.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.22.1.tgz#0896c7e6a0cf44109a2d97b95903c2bb689d7702" + integrity sha512-8K7JjINHOpH64ozkAhpT3sd+FswIZTfMZTjdx052pnWrgRCVfp8op9tbjpAk3DdUeI/Ba4C8OjdC0r90erHEOw== dependencies: array-includes "^3.1.1" array.prototype.flat "^1.2.3" contains-path "^0.1.0" debug "^2.6.9" doctrine "1.5.0" - eslint-import-resolver-node "^0.3.3" + eslint-import-resolver-node "^0.3.4" eslint-module-utils "^2.6.0" has "^1.0.3" minimatch "^3.0.4" From f345c90f7ef993d206d7b1f7d54dbc774657ccfb Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 28 Sep 2020 20:07:13 +0000 Subject: [PATCH 207/365] Bump stylelint from 13.7.1 to 13.7.2 Bumps [stylelint](https://github.com/stylelint/stylelint) from 13.7.1 to 13.7.2. - [Release notes](https://github.com/stylelint/stylelint/releases) - [Changelog](https://github.com/stylelint/stylelint/blob/master/CHANGELOG.md) - [Commits](https://github.com/stylelint/stylelint/compare/13.7.1...13.7.2) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index d2072a85a9..6040d6daa7 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,7 @@ "postcss-loader": "^3.0.0", "postcss-preset-env": "^6.7.0", "style-loader": "^1.1.3", - "stylelint": "^13.7.1", + "stylelint": "^13.7.2", "stylelint-config-rational-order": "^0.1.2", "stylelint-no-browser-hacks": "^1.2.1", "stylelint-order": "^4.1.0", diff --git a/yarn.lock b/yarn.lock index a2695f11f4..e6f5380164 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10825,10 +10825,10 @@ stylelint-order@^4.1.0: postcss "^7.0.31" postcss-sorting "^5.0.1" -stylelint@^13.7.1: - version "13.7.1" - resolved "https://registry.yarnpkg.com/stylelint/-/stylelint-13.7.1.tgz#bee97ee78d778a3f1dbe3f7397b76414973e263e" - integrity sha512-qzqazcyRxrSRdmFuO0/SZOJ+LyCxYy0pwcvaOBBnl8/2VfHSMrtNIE+AnyJoyq6uKb+mt+hlgmVrvVi6G6XHfQ== +stylelint@^13.7.2: + version "13.7.2" + resolved "https://registry.yarnpkg.com/stylelint/-/stylelint-13.7.2.tgz#6f3c58eea4077680ed0ceb0d064b22b100970486" + integrity sha512-mmieorkfmO+ZA6CNDu1ic9qpt4tFvH2QUB7vqXgrMVHe5ENU69q7YDq0YUg/UHLuCsZOWhUAvcMcLzLDIERzSg== dependencies: "@stylelint/postcss-css-in-js" "^0.37.2" "@stylelint/postcss-markdown" "^0.36.1" From 542d3976b97bcc8a994f90ffafa18ea9cff916da Mon Sep 17 00:00:00 2001 From: Tomi Date: Tue, 29 Sep 2020 04:22:30 +0000 Subject: [PATCH 208/365] Translated using Weblate (Finnish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fi/ --- src/strings/fi.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/strings/fi.json b/src/strings/fi.json index 85e0f6f9a5..4c912e154d 100644 --- a/src/strings/fi.json +++ b/src/strings/fi.json @@ -1179,5 +1179,8 @@ "HeaderDirectPlayProfileHelp": "Lisää suoratoistoprofiileja osoittaaksesi, missä muodossa laite tukee suoratoistoa.", "HeaderContainerProfileHelp": "Sisältöprofiilit ilmaisevat laitteen rajoitukset tiettyjä formaatteja toistettaessa. Jos rajoitusta sovelletaan, media koodataan uudelleen, vaikka muoto on määritetty suoratoistoa varten.", "EnableQuickConnect": "Salli nopea yhteyden muodostaminen tälle palvelimelle", - "ButtonUseQuickConnect": "Käytä nopeaa yhdistämistä" + "ButtonUseQuickConnect": "Käytä nopeaa yhdistämistä", + "ImportMissingEpisodesHelp": "Tiedot kadonneista jaksoista tuodaan tietokantaan ja näytetään kausina ja sarjoina. Tämä voi aiheuttaa huomattavasti pidempiä kirjastojen tarkistusajoja.", + "ImportFavoriteChannelsHelp": "Ainoastaan kanavat, jotka on merkitty suosikkiksi viritinlaitteessa, tuodaan.", + "HeaderTranscodingProfileHelp": "Lisää transkoodausprofiileja osoittamaan, mitä muotoja tulisi käyttää, kun transkoodaus on tarpeen." } From 87adf471b12209003b0aab1da95bce748871e6ac Mon Sep 17 00:00:00 2001 From: Tomi Date: Tue, 29 Sep 2020 04:28:44 +0000 Subject: [PATCH 209/365] Translated using Weblate (Finnish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fi/ --- src/strings/fi.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/strings/fi.json b/src/strings/fi.json index 4c912e154d..d1b794b17e 100644 --- a/src/strings/fi.json +++ b/src/strings/fi.json @@ -1182,5 +1182,7 @@ "ButtonUseQuickConnect": "Käytä nopeaa yhdistämistä", "ImportMissingEpisodesHelp": "Tiedot kadonneista jaksoista tuodaan tietokantaan ja näytetään kausina ja sarjoina. Tämä voi aiheuttaa huomattavasti pidempiä kirjastojen tarkistusajoja.", "ImportFavoriteChannelsHelp": "Ainoastaan kanavat, jotka on merkitty suosikkiksi viritinlaitteessa, tuodaan.", - "HeaderTranscodingProfileHelp": "Lisää transkoodausprofiileja osoittamaan, mitä muotoja tulisi käyttää, kun transkoodaus on tarpeen." + "HeaderTranscodingProfileHelp": "Lisää transkoodausprofiileja osoittamaan, mitä muotoja tulisi käyttää, kun transkoodaus on tarpeen.", + "LabelAlbumArtMaxResHelp": "Upnp: albumArtURI -ominaisuuden kautta näytetyn albumikuvan enimmäistarkkuus.", + "KnownProxiesHelp": "Pilkuilla erotettu luettelo tunnettujen välityspalvelinten IP-osoitteista, joita käytetään muodostettaessa yhteyttä Jellyfin-palvelusi. Tämä vaaditaan X-Forwarded-For-otsikkojen oikeaan käyttöön. Uudelleenkäynnistys vaaditaan tallennuksen jälkeen." } From bc2f0610dd1215f805a1ef569b7ff79eb96fdf76 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 29 Sep 2020 08:49:55 +0000 Subject: [PATCH 210/365] Bump eslint from 7.9.0 to 7.10.0 Bumps [eslint](https://github.com/eslint/eslint) from 7.9.0 to 7.10.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v7.9.0...v7.10.0) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 32 ++++++++++++++++++++++++++------ 2 files changed, 27 insertions(+), 7 deletions(-) diff --git a/package.json b/package.json index c7de7e3443..25d9615a1b 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "css-loader": "^4.3.0", "cssnano": "^4.1.10", "del": "^6.0.0", - "eslint": "^7.9.0", + "eslint": "^7.10.0", "eslint-plugin-compat": "^3.5.1", "eslint-plugin-eslint-comments": "^3.2.0", "eslint-plugin-import": "^2.22.1", diff --git a/yarn.lock b/yarn.lock index aac90f3c66..ba30699ff7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4024,7 +4024,7 @@ eslint-rule-composer@^0.3.0: resolved "https://registry.yarnpkg.com/eslint-rule-composer/-/eslint-rule-composer-0.3.0.tgz#79320c927b0c5c0d3d3d2b76c8b4a488f25bbaf9" integrity sha512-bt+Sh8CtDmn2OajxvNO+BX7Wn4CIWMpTRm3MaiKPCQcnnlm0CS2mhui6QaoeQugs+3Kj2ESKEEGJUdVafwhiCg== -eslint-scope@5.1.0, eslint-scope@^5.1.0: +eslint-scope@5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.0.tgz#d0f971dfe59c69e0cada684b23d49dbf82600ce5" integrity sha512-iiGRvtxWqgtx5m8EyQUJihBloE4EnYeGE/bz1wSPwJE6tZuJUtHlhqDM4Xj2ukE8Dyy1+HCZ4hE0fzIVMzb58w== @@ -4040,6 +4040,14 @@ eslint-scope@^4.0.3: esrecurse "^4.1.0" estraverse "^4.1.1" +eslint-scope@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" + integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== + dependencies: + esrecurse "^4.3.0" + estraverse "^4.1.1" + eslint-utils@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" @@ -4052,10 +4060,10 @@ eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== -eslint@^7.9.0: - version "7.9.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.9.0.tgz#522aeccc5c3a19017cf0cb46ebfd660a79acf337" - integrity sha512-V6QyhX21+uXp4T+3nrNfI3hQNBDa/P8ga7LoQOenwrlEFXrEnUEE+ok1dMtaS3b6rmLXhT1TkTIsG75HMLbknA== +eslint@^7.10.0: + version "7.10.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.10.0.tgz#494edb3e4750fb791133ca379e786a8f648c72b9" + integrity sha512-BDVffmqWl7JJXqCjAK6lWtcQThZB/aP1HXSH1JKwGwv0LQEdvpR7qzNrUT487RM39B5goWuboFad5ovMBmD8yA== dependencies: "@babel/code-frame" "^7.0.0" "@eslint/eslintrc" "^0.1.3" @@ -4065,7 +4073,7 @@ eslint@^7.9.0: debug "^4.0.1" doctrine "^3.0.0" enquirer "^2.3.5" - eslint-scope "^5.1.0" + eslint-scope "^5.1.1" eslint-utils "^2.1.0" eslint-visitor-keys "^1.3.0" espree "^7.3.0" @@ -4123,6 +4131,13 @@ esrecurse@^4.1.0: dependencies: estraverse "^4.1.0" +esrecurse@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" + integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== + dependencies: + estraverse "^5.2.0" + estraverse@^4.1.0, estraverse@^4.1.1: version "4.3.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" @@ -4133,6 +4148,11 @@ estraverse@^5.1.0: resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.1.0.tgz#374309d39fd935ae500e7b92e8a6b4c720e59642" integrity sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw== +estraverse@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.2.0.tgz#307df42547e6cc7324d3cf03c155d5cdb8c53880" + integrity sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ== + esutils@^2.0.2: version "2.0.3" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" From fe8bddaa03ab8604963992c157638e27584468cf Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Tue, 29 Sep 2020 08:34:49 +0000 Subject: [PATCH 211/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index 46518cdf4c..32d3cd187e 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -234,7 +234,7 @@ "DeleteMedia": "Xoá nội dung", "DeleteDeviceConfirmation": "Bạn có chắc chắn muốn xoá thiết bị này? Nó sẽ xuất hiện lại khi người dùng đăng nhập bằng thiết bị đó.", "DeinterlaceMethodHelp": "Chọn phương pháp khử xen kẽ để sử dụng khi phần mềm chuyển mã nội dung xen kẽ. Khi tăng tốc phần cứng hỗ trợ khử xen kẽ phần cứng được bật, trình khử xen kẽ phần cứng sẽ được sử dụng thay cho cài đặt này.", - "DefaultSubtitlesHelp": "Phụ đề được sử dụng dựa vào thiết lập mặc định (default) và bắt buộc (forced) trong phần thông tin bổ trợ. Tuỳ chọn ưu tiên ngôn ngữ sẽ có tác dụng khi có nhiều phụ đề khác nhau.", + "DefaultSubtitlesHelp": "Phụ đề được tải dựa trên mặc định và bắt buộc gắn cờ trong dữ liệu mô tả. Ngôn ngữ ưa thích được xem xét khi có nhiều lựa chọn.", "DefaultMetadataLangaugeDescription": "Đây là thiết lập mặc định chung, bạn có thể tuỳ chỉnh thiết lập riêng cho từng thư viện.", "DisplayModeHelp": "Chọn kiểu bố trí giao diện mà bạn muốn.", "Download": "Tải xuống", @@ -322,7 +322,7 @@ "ExitFullscreen": "Thoát khỏi chế độ toàn màn hình", "EveryNDays": "Mỗi {0} ngày", "ErrorSavingTvProvider": "Có lỗi xảy ra khi lưu thông tin của nhà cung cấp TV này. Hãy thử lại khi chắc chắn rằng nó có thể truy cập.", - "ErrorPleaseSelectLineup": "Hãy chọn một danh sách và thử lại. Nếu không có danh sách nào sẵn sàng, hãy chắc chắn rằng thông tin tài khoản, mật khẩu, và mã bưu điện đều chính xác.", + "ErrorPleaseSelectLineup": "Hãy chọn một danh sách và thử lại. Nếu không có danh sách nào, hãy kiểm tra tên đăng nhập của bạn, mật khẩu, và mã bưu điện cho đúng.", "ErrorStartHourGreaterThanEnd": "Thời gian kết thúc phải lớn hơn thời gian bắt đầu.", "ErrorGettingTvLineups": "Có lỗi xảy ra khi tải danh sách TV này. Hãy thử lại khi chắc chắn rằng thông tin của bạn chính xác.", "ErrorDeletingItem": "Có lỗi xảy ra khi xoá mục này khỏi máy chủ Jellyfin. Hãy kiểm tra xem máy chủ Jellyfin có quyền ghi/xoá vào thư mục đa phương tiện và thử xóa lại sau.", @@ -886,10 +886,10 @@ "MessagePlayAccessRestricted": "Việc phát lại nội dung này hiện bị hạn chế. Vui lòng liên hệ với quản trị viên máy chủ của bạn để biết thêm thông tin.", "MessagePasswordResetForUsers": "Những người dùng này đã đặt lại mật khẩu của họ. Giờ đây, họ có thể đăng nhập bằng mã pin đã được sử dụng để thực hiện đặt lại.", "MessageNoTrailersFound": "Cài đặt kênh đoạn giới thiệu để nâng cao trải nghiệm phim của bạn bằng cách thêm thư viện đoạn giới thiệu trên internet.", - "MessageNoServersAvailable": "Không có máy chủ nào được tìm thấy bằng cách sử dụng tính năng khám phá máy chủ tự động.", + "MessageNoServersAvailable": "Không tìm thấy máy chủ nào qua tính năng phát hiện máy chủ tự động.", "MessageNoPluginsInstalled": "Bạn chưa cài đặt plugin nào.", - "MessageNoMovieSuggestionsAvailable": "Hiện tại không có phim nào được đề xuất. Hãy bắt đầu xem và xếp hạng các bộ phim của bạn, sau đó quay lại để xem các đề xuất của bạn.", - "MessageNoGenresAvailable": "Cho phép một số bên cung cấp dữ liệu lấy các thể loại từ internet.", + "MessageNoMovieSuggestionsAvailable": "Hiện tại không có phim nào được đề xuất. Hãy xem và đánh giá các phim của bạn, sau đó quay lại đây để xem các đề xuất của bạn.", + "MessageNoGenresAvailable": "Kích hoạt cho phép một số bên cung cấp dữ liệu mô tả lấy các thể loại từ internet.", "MessageNoCollectionsAvailable": "Bộ sưu tập giúp bạn thưởng thức các nhóm Phim, Phim Bộ và Album được tùy chỉnh theo cách của bạn. Bấm nút + để tạo bộ sưu tập.", "MessageAddRepository": "Nếu bạn muốn thêm kho lưu trữ, hãy nhấp vào nút bên cạnh tiêu đề và điền thông tin được yêu cầu.", "LabelRepositoryNameHelp": "Tên tùy chỉnh để phân biệt kho lưu trữ này với bất kỳ kho lưu trữ nào khác được thêm vào máy chủ của bạn.", @@ -1130,7 +1130,7 @@ "MessageSyncPlayCreateGroupDenied": "Cần có quyền để tạo nhóm.", "MessageSyncPlayGroupDoesNotExist": "Không thể tham gia nhóm vì nó không tồn tại.", "MessageSyncPlayPlaybackPermissionRequired": "Cần có quyền phát lại.", - "MessageSyncPlayNoGroupsAvailable": "Không có nhóm nào. Bắt đầu phát thứ gì đó trước.", + "MessageSyncPlayNoGroupsAvailable": "Không có nhóm nào. Hãy phát thứ gì đó trước.", "MessageSyncPlayUserLeft": "{0} đã rời bỏ nhóm.", "MessageSyncPlayUserJoined": "{0} đã tham gia nhóm.", "MessageSyncPlayDisabled": "Phát đồng bộ SyncPlay đã tắt.", @@ -1236,8 +1236,8 @@ "Premieres": "Công chiếu", "Premiere": "Công chiếu", "PreferEmbeddedEpisodeInfosOverFileNames": "Ưu tiên thông tin tập được nhúng hơn tên tệp", - "PreferEmbeddedEpisodeInfosOverFileNamesHelp": "Điều này sử dụng thông tin tập từ siêu dữ liệu được nhúng nếu có.", - "PreferEmbeddedTitlesOverFileNamesHelp": "Điều này xác định tiêu đề hiển thị mặc định khi không có siêu dữ liệu internet hoặc siêu dữ liệu cục bộ.", + "PreferEmbeddedEpisodeInfosOverFileNamesHelp": "Nó sử dụng thông tin tập phim từ dữ liệu mô tả được nhúng nếu có sẵn.", + "PreferEmbeddedTitlesOverFileNamesHelp": "Điều này xác định tiêu đề hiển thị mặc định khi không có dữ liệu mô tả từ internet hoặc cục bộ.", "PreferEmbeddedTitlesOverFileNames": "Ưu tiên tiêu đề được nhúng hơn tên tệp", "MessageGetInstalledPluginsError": "Đã xảy ra lỗi khi nhận danh sách các plugin hiện được cài đặt.", "MessagePluginInstallError": "Đã xảy ra lỗi khi cài đặt plugin.", From b97e0e73ceb84d7c695e53d3888a4a24036dcab9 Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Tue, 29 Sep 2020 09:01:10 +0000 Subject: [PATCH 212/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index 32d3cd187e..78cc04c27f 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -99,7 +99,7 @@ "ButtonGotIt": "Hiểu rồi", "ButtonFullscreen": "Toàn màn hình", "ButtonForgotPassword": "Quên mật khẩu", - "ButtonEditOtherUserPreferences": "Chỉnh sửa hồ sơ, hình ảnh và sở thích cá nhân của người dùng này.", + "ButtonEditOtherUserPreferences": "Chỉnh sửa hồ sơ, ảnh và sở thích cá nhân của người dùng này.", "ButtonChangeServer": "Đổi máy chủ", "ButtonBack": "Lùi", "ButtonAudioTracks": "Track âm thanh", @@ -479,7 +479,7 @@ "LabelBurnSubtitles": "Nhúng phụ đề:", "LabelBlockContentWithTags": "Chặn những mục có nhãn:", "LabelBlastMessageIntervalHelp": "Xác định thời gian tồn tại giữa các tin nhắn (tính bằng giây).", - "LabelBlastMessageInterval": "Thời gian tồn tại của tin nhắn (giây)", + "LabelBlastMessageInterval": "Khoảng thời gian gửi tin nhắn tồn tại (giây)", "LabelBitrate": "Bitrate:", "LabelBirthYear": "Năm sinh:", "LabelBirthDate": "Ngày sinh:", From 90539890d0877120992bbfeb5bc08ceb55f41deb Mon Sep 17 00:00:00 2001 From: nextlooper42 Date: Tue, 29 Sep 2020 22:00:00 +0000 Subject: [PATCH 213/365] Translated using Weblate (Slovak) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/sk/ --- src/strings/sk.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/strings/sk.json b/src/strings/sk.json index 5dafa0d791..3e389d6a2d 100644 --- a/src/strings/sk.json +++ b/src/strings/sk.json @@ -1352,5 +1352,7 @@ "MessagePluginInstallError": "Pri inštalácií zásuvného modulu došlo k chybe.", "NextTrack": "Ďalšia", "LabelUnstable": "Nestabilný", - "PlaybackRate": "Rýchlosť prehrávania" + "PlaybackRate": "Rýchlosť prehrávania", + "ButtonActivate": "Aktivovať", + "Authorize": "Autorizovať" } From bf0c0751e094ddeb3dd56e62c3b91472cab3a44d Mon Sep 17 00:00:00 2001 From: Hilman Maulana Date: Wed, 30 Sep 2020 04:56:00 +0000 Subject: [PATCH 214/365] Translated using Weblate (Indonesian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/id/ --- src/strings/id.json | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/src/strings/id.json b/src/strings/id.json index df1d6d40f6..e819810b8c 100644 --- a/src/strings/id.json +++ b/src/strings/id.json @@ -794,5 +794,28 @@ "LabelMaxStreamingBitrateHelp": "Tentukan bitrate maksimum saat streaming.", "LabelMaxScreenshotsPerItem": "Jumlah tangkapan layar maksimum per item :", "EnableAutoCast": "Ditetapkan sebagai default", - "ButtonUseQuickConnect": "Gunakan Koneksi Cepat" + "ButtonUseQuickConnect": "Gunakan Koneksi Cepat", + "LabelSortTitle": "Urutkan judul :", + "LabelSortOrder": "Sortir urutan :", + "LabelSortBy": "Urutkan dengan :", + "LabelSonyAggregationFlagsHelp": "Menentukan konten elemen aggregationFlags di guci: schemas-sonycom: av namespace.", + "LabelSonyAggregationFlags": "Bendera agregasi Sony :", + "LabelSkipIfGraphicalSubsPresentHelp": "Mempertahankan versi teks dari subtitel akan menghasilkan pengiriman yang lebih efisien dan mengurangi kemungkinan transcoding video.", + "LabelSkipIfGraphicalSubsPresent": "Lewati jika video sudah berisi subtitel tersemat", + "LabelSkipIfAudioTrackPresentHelp": "Hapus centang ini untuk memastikan semua video memiliki subtitle, apa pun bahasa audionya.", + "LabelSkipIfAudioTrackPresent": "Lewati jika trek audio default cocok dengan bahasa unduhan", + "LabelSkipForwardLength": "", + "LabelSkipBackLength": "", + "LabelSize": "Ukuran :", + "LabelSimultaneousConnectionLimit": "Batas aliran stream :", + "LabelSerialNumber": "Nomor seri", + "LabelSendNotificationToUsers": "Kirim notifikasi ke :", + "LabelSelectVersionToInstall": "Pilih versi untuk diinstal :", + "LabelSelectUsers": "Pilih pengguna :", + "LabelSelectFolderGroupsHelp": "Folder yang tidak dicentang akan ditampilkan dengan sendirinya dalam tampilannya sendiri.", + "LabelSelectFolderGroups": "Secara otomatis mengelompokkan konten dari folder berikut ke dalam tampilan seperti Film, Musik dan TV :", + "LabelSeasonNumber": "Nomor musim :", + "EnableFasterAnimationsHelp": "Gunakan animasi dan transisi yang lebih cepat", + "EnableFasterAnimations": "Animasi lebih cepat", + "LabelScreensaver": "Screen saver :" } From 0969a5192bd351288aa9a548bf8a45c5bcc74c05 Mon Sep 17 00:00:00 2001 From: Hilman Maulana Date: Wed, 30 Sep 2020 05:05:00 +0000 Subject: [PATCH 215/365] Translated using Weblate (Indonesian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/id/ --- src/strings/id.json | 56 ++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 53 insertions(+), 3 deletions(-) diff --git a/src/strings/id.json b/src/strings/id.json index e819810b8c..d6a2ef23bd 100644 --- a/src/strings/id.json +++ b/src/strings/id.json @@ -9,7 +9,7 @@ "LabelLanguage": "Bahasa :", "LabelSaveLocalMetadata": "Simpan artwork dan metadata ke dalam folder media", "LabelSaveLocalMetadataHelp": "Menyimpan artwork dan metadata langsung ke folder media akan meletakkan mereka di tempat yang mudah diedit.", - "LabelTimeLimitHours": "Batas waktu (jam):", + "LabelTimeLimitHours": "Batas waktu (jam) :", "LabelYoureDone": "Kamu sudah selesai!", "MessageNothingHere": "Tidak ada disini.", "MessagePleaseEnsureInternetMetadata": "Pastikan unduh metadata dari internet diaktifkan.", @@ -796,7 +796,7 @@ "EnableAutoCast": "Ditetapkan sebagai default", "ButtonUseQuickConnect": "Gunakan Koneksi Cepat", "LabelSortTitle": "Urutkan judul :", - "LabelSortOrder": "Sortir urutan :", + "LabelSortOrder": "Urutkan perintah :", "LabelSortBy": "Urutkan dengan :", "LabelSonyAggregationFlagsHelp": "Menentukan konten elemen aggregationFlags di guci: schemas-sonycom: av namespace.", "LabelSonyAggregationFlags": "Bendera agregasi Sony :", @@ -817,5 +817,55 @@ "LabelSeasonNumber": "Nomor musim :", "EnableFasterAnimationsHelp": "Gunakan animasi dan transisi yang lebih cepat", "EnableFasterAnimations": "Animasi lebih cepat", - "LabelScreensaver": "Screen saver :" + "LabelScreensaver": "Screen saver :", + "LabelUserLoginAttemptsBeforeLockout": "Upaya masuk yang gagal sebelum pengguna terkunci :", + "LabelUserLibraryHelp": "Pilih pustaka pengguna mana yang akan ditampilkan ke perangkat. Biarkan kosong untuk mewarisi setelan default.", + "LabelUserLibrary": "Pustaka pengguna :", + "LabelUserAgent": "Agen pengguna :", + "LabelUser": "Pengguna :", + "LabelUseNotificationServices": "Gunakan layanan berikut :", + "LabelTypeText": "Teks", + "LabelTypeMetadataDownloaders": "{0} pengunduh metadata :", + "LabelType": "Tipe :", + "LabelTunerType": "Jenis tuner :", + "LabelTunerIpAddress": "Alamat IP Tuner :", + "LabelTriggerType": "Jenis Pemicu :", + "LabelTranscodingThreadCountHelp": "Pilih jumlah maksimum utas yang akan digunakan saat transcoding. Mengurangi jumlah utas akan menurunkan penggunaan CPU tetapi mungkin tidak mengonversi cukup cepat untuk pengalaman pemutaran yang lancar.", + "LabelTranscodingThreadCount": "Jumlah utas transcoding :", + "LabelTranscodingProgress": "Proses transcoding :", + "LabelTranscodingFramerate": "Transcoding framerate :", + "LabelTranscodes": "Transcode :", + "LabelTrackNumber": "Nomor jejak :", + "LabelTitle": "Judul :", + "LabelTime": "Waktu :", + "LabelTheme": "Tema :", + "LabelTextSize": "Ukuran teks :", + "LabelTextColor": "Warna teks :", + "LabelTextBackgroundColor": "Warna latar teks :", + "LabelTagline": "Slogan :", + "LabelTag": "Tag :", + "LabelTVHomeScreen": "Layar utama mode TV :", + "LabelSyncPlayAccess": "Akses SyncPlay", + "LabelSyncPlayAccessNone": "Dinonaktifkan untuk pengguna ini", + "LabelSyncPlayAccessJoinGroups": "Izinkan pengguna untuk bergabung dengan grup", + "LabelSyncPlayAccessCreateAndJoinGroups": "Izinkan pengguna untuk membuat dan bergabung dengan grup", + "LabelSyncPlayLeaveGroupDescription": "Nonaktifkan SyncPlay", + "LabelSyncPlayLeaveGroup": "Meninggalkan grup", + "LabelSyncPlayNewGroupDescription": "Buat grup baru", + "LabelSyncPlayNewGroup": "Grup baru", + "LabelSyncPlaySyncMethod": "Metode sinkronisasi :", + "LabelSyncPlayPlaybackDiff": "Perbedaan waktu pemutaran :", + "MillisecondsUnit": "ms", + "LabelSupportedMediaTypes": "Jenis Media yang Didukung :", + "LabelSubtitlePlaybackMode": "Mode subtitle :", + "LabelSubtitleFormatHelp": "Contoh : srt", + "LabelSubtitleDownloaders": "Pengunduh subtitle :", + "LabelStreamType": "Jenis Stream :", + "LabelStopping": "Berhenti", + "LabelStopWhenPossible": "Hentikan jika memungkinkan :", + "LabelStatus": "Status :", + "LabelStartWhenPossible": "Mulailah jika memungkinkan :", + "LabelSportsCategories": "Kategori olahraga :", + "LabelSpecialSeasonsDisplayName": "Nama tampilan musim spesial :", + "LabelSource": "Sumber :" } From 92dfd129dcfd79840f2f460ca82a99727d28d611 Mon Sep 17 00:00:00 2001 From: Frederik Andersen Date: Wed, 30 Sep 2020 09:43:38 +0000 Subject: [PATCH 216/365] Translated using Weblate (Danish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/da/ --- src/strings/da.json | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/strings/da.json b/src/strings/da.json index 0b1c08a54b..16d31eddc6 100644 --- a/src/strings/da.json +++ b/src/strings/da.json @@ -27,7 +27,7 @@ "BirthDateValue": "Født: {0}", "BirthLocation": "Fødselslokation", "BirthPlaceValue": "Fødselssted: {0}", - "BookLibraryHelp": "Lyd- og tekstbøger er understøttet. Se {0}guiden til navngivning af bøger{1}.", + "BookLibraryHelp": "Lyd- og tekstbøger er understøttet. Se {0}bognavngivningsguiden{1}.", "Browse": "Gennemse", "MessageBrowsePluginCatalog": "Gennemse vores plugin-katalog for at se tilgængelige plugins.", "ButtonAddMediaLibrary": "Tilføj Mediebibliotek", @@ -107,10 +107,10 @@ "Edit": "Rediger", "EditImages": "Rediger billeder", "EditSubtitles": "Rediger undertekster", - "EnableCinemaMode": "Aktiver Biograftilstand", - "EnableColorCodedBackgrounds": "Aktiver Farvekodet baggrunde", + "EnableCinemaMode": "Biograftilstand", + "EnableColorCodedBackgrounds": "Farvekodet baggrunde", "EnableHardwareEncoding": "Aktiver hardware indkoding", - "EnablePhotos": "Vis fotoer", + "EnablePhotos": "Vis fotos", "EnablePhotosHelp": "Billeder registreres og vises sammen med andre mediefiler.", "EnableStreamLooping": "Auto-gentag live streams", "EnableStreamLoopingHelp": "Aktiver dette hvis live streams kun indeholder få sekunders data og skal efterspørgsel hele tiden. Aktivering af dette uden det er nødvendigt kan forårsage problemer.", @@ -156,8 +156,8 @@ "HeaderAdditionalParts": "Andre stier", "HeaderAlert": "Advarsel", "HeaderAllowMediaDeletionFrom": "Tillad Media Sletning Fra", - "HeaderApiKey": "API Nøgle", - "HeaderApiKeys": "API Nøgler", + "HeaderApiKey": "API-nøgle", + "HeaderApiKeys": "API-nøgler", "HeaderApiKeysHelp": "Eksterne applikationer skal have en API-nøgle for at kunne kommunikere med Jellyfin. Nøgler udstedes ved at logge ind med en Jellyfin konto, eller ved manuelt at tildele applikationen en nøgle.", "HeaderAudioSettings": "Lydindstillinger", "HeaderBlockItemsWithNoRating": "Klokér titler uden eller med ukendt bedømmelses information:", @@ -232,7 +232,7 @@ "HeaderMoreLikeThis": "Mere Som Denne", "HeaderMyDevice": "Min Enhed", "HeaderMyMedia": "Mine medier", - "HeaderNewApiKey": "Ny API Nøgle", + "HeaderNewApiKey": "Ny API-nøgle", "HeaderNewDevices": "Nye Enheder", "HeaderOnNow": "Vises Nu", "HeaderOtherItems": "Andre elementer", @@ -329,7 +329,7 @@ "LabelAllowedRemoteAddresses": "Fjernadgang IP adresse filter:", "LabelAllowedRemoteAddressesMode": "Fjernadgang IP adresse filter mode:", "LabelAppName": "App navn", - "LabelAppNameExample": "F. eks: Sickbeard, Sonarr", + "LabelAppNameExample": "F.eks: Sickbeard, Sonarr", "LabelArtists": "Artister:", "LabelArtistsHelp": "Angiv flere ved at sætte ;", "LabelAudioLanguagePreference": "Foretrukket lydsprog:", @@ -983,7 +983,7 @@ "DisplayModeHelp": "Vælg det ønskede tema for grænsefladen.", "Down": "Ned", "DownloadsValue": "{0} hentninger", - "DropShadow": "Drop Skygge", + "DropShadow": "Baggrundsskygge", "EditMetadata": "Redigér metadata", "EnableBackdropsHelp": "Vis baggrundsbilleder i baggrunden af nogle sider mens man gennemser biblioteket.", "EnableDisplayMirroring": "Visning afspejling", From 896e6a95898a60ffe917019ed3f40db3435d56d5 Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Wed, 30 Sep 2020 09:38:05 +0000 Subject: [PATCH 217/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index 78cc04c27f..035835a698 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -176,7 +176,7 @@ "DatePlayed": "Ngày phát", "DateAdded": "Ngày thêm vào", "CustomDlnaProfilesHelp": "Tạo một bộ thiết lập tuỳ chọn dành cho một thiết bị mới hoặc thay thế một thiết lập hệ thống.", - "CriticRating": "Đánh giá phê bình", + "CriticRating": "Đánh giá chấm điểm", "CopyStreamURLSuccess": "URL đã được sao chép.", "CopyStreamURL": "Sao Chép URL Phát Sóng", "Continuing": "Tiếp tục", @@ -464,7 +464,7 @@ "LabelCustomCss": "CSS tuỳ chọn:", "LabelCustomCertificatePathHelp": "Đường dẫn đến tập tin PKCS #12 chứa chứng chỉ (certificate) và khoá riêng (private key) để bật tính năng TLS trên một tên miền tuỳ chọn.", "LabelCustomCertificatePath": "Đường dẫn đến chứng chỉ SSL:", - "LabelCriticRating": "Đánh giá phê bình:", + "LabelCriticRating": "Đánh giá chấm điểm:", "LabelCorruptedFrames": "Những khung hình bị lỗi:", "LabelContentType": "Loại nội dung:", "LabelCommunityRating": "Đánh giá của cộng đồng:", @@ -1054,7 +1054,7 @@ "OptionDateAddedFileTime": "Sử dụng ngày tạo tệp", "OptionDaily": "Hằng ngày", "OptionCustomUsers": "Tùy Chọn", - "OptionCriticRating": "Xếp Hạng Phê Bình", + "OptionCriticRating": "Xếp Hạng Chấm Điểm", "OptionBluray": "Đĩa Blu-ray", "OptionAutomaticallyGroupSeriesHelp": "Loạt phim nằm trên nhiều thư mục trong thư viện này sẽ được tự động hợp nhất thành một loạt phim duy nhất.", "OptionAutomaticallyGroupSeries": "Tự động gộp các bộ phim được trải dài trên nhiều thư mục", From 89f3036b5ad84935421b584d8328a90c884865cf Mon Sep 17 00:00:00 2001 From: Frederik Andersen Date: Wed, 30 Sep 2020 09:54:24 +0000 Subject: [PATCH 218/365] Translated using Weblate (Danish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/da/ --- src/strings/da.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/strings/da.json b/src/strings/da.json index 16d31eddc6..e60206a133 100644 --- a/src/strings/da.json +++ b/src/strings/da.json @@ -331,7 +331,7 @@ "LabelAppName": "App navn", "LabelAppNameExample": "F.eks: Sickbeard, Sonarr", "LabelArtists": "Artister:", - "LabelArtistsHelp": "Angiv flere ved at sætte ;", + "LabelArtistsHelp": "Separer flere kunstnere ved at bruge semikolon.", "LabelAudioLanguagePreference": "Foretrukket lydsprog:", "LabelAutomaticallyRefreshInternetMetadataEvery": "Genopfrisk automatisk metadata fra internettet:", "LabelBindToLocalNetworkAddress": "Bind til lokal netværksadresse:", @@ -735,7 +735,7 @@ "OptionImdbRating": "IMDB bedømmelse", "OptionMax": "Maks", "OptionMissingEpisode": "Manglende episoder", - "OptionNew": "Ny...", + "OptionNew": "Ny…", "OptionOnInterval": "Interval", "OptionParentalRating": "Aldersgrænse", "OptionPlainStorageFolders": "Vis alle mapper som standardmapper", @@ -1254,7 +1254,7 @@ "LabelCorruptedFrames": "Korrupte frames:", "LabelBitrate": "Bitrate:", "LabelAuthProvider": "Autentificeringsudbyder:", - "LabelAudioSampleRate": "Lydeksempelfrekvens:", + "LabelAudioSampleRate": "Lydopsamlingsfrekvens:", "LabelAudioCodec": "Lyd codec:", "LabelAudioChannels": "Lyd kanaler:", "LabelAudioBitrate": "Lyd bitrate:", From 96fb126c3f46a08cdd243d6fd7203b10c5da0e67 Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Wed, 30 Sep 2020 10:42:00 +0000 Subject: [PATCH 219/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index 035835a698..a6fc3a856a 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -880,7 +880,7 @@ "EnableDecodingColorDepth10Vp9": "Bật giải mã phần cứng 10 bit cho VP9", "EnableDecodingColorDepth10Hevc": "Bật giải mã phần cứng 10-bit cho HEVC", "Data": "Dữ liệu", - "ButtonUseQuickConnect": "Dùng Kết Nhanh", + "ButtonUseQuickConnect": "Dùng kết nối nhanh", "ButtonActivate": "Kích hoạt", "Authorize": "Ủy quyền", "MessagePlayAccessRestricted": "Việc phát lại nội dung này hiện bị hạn chế. Vui lòng liên hệ với quản trị viên máy chủ của bạn để biết thêm thông tin.", From bb975660d346b8b585ea19a399fbd287dc0ef9a5 Mon Sep 17 00:00:00 2001 From: WWWesten Date: Wed, 30 Sep 2020 17:57:30 +0000 Subject: [PATCH 220/365] Translated using Weblate (Russian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ru/ --- src/strings/ru.json | 39 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 38 insertions(+), 1 deletion(-) diff --git a/src/strings/ru.json b/src/strings/ru.json index 20df7a795a..a948827cd6 100644 --- a/src/strings/ru.json +++ b/src/strings/ru.json @@ -1373,5 +1373,42 @@ "LabelAlbumArtMaxResHelp": "Максимальное разрешение обложки альбома, являемое через свойство upnp:albumArtURI.", "Image": "Рисунок", "Other": "Другое", - "Data": "Данные" + "Data": "Данные", + "LabelMaxMuxingQueueSize": "Макс. размер очереди мультиплексирования:", + "LabelTonemappingParam": "Параметр сопоставления цветов:", + "LabelTonemappingPeak": "Пиковое сопоставление тонов:", + "LabelTonemappingThreshold": "Порог сопоставления тонов:", + "LabelTonemappingDesat": "Сопоставление тонов обесцвечивания:", + "TonemappingRangeHelp": "Выберите цветовой диапазон вывода. Авто то же, что и диапазон ввода.", + "LabelTonemappingRange": "Диапазон сопоставления тонов:", + "LabelTonemappingAlgorithm": "Выбрать используемый алгоритм сопоставления тонов:", + "EnableTonemapping": "Включить сопоставление тонов", + "LabelOpenclDevice": "Устройство OpenCL:", + "LabelColorPrimaries": "Основные цвета:", + "LabelColorTransfer": "Передача цвета:", + "LabelColorSpace": "Цветовое пространство:", + "LabelVideoRange": "Диапазон видео:", + "MediaInfoColorPrimaries": "Основные цвета", + "MediaInfoColorTransfer": "Передача цвета", + "MediaInfoColorSpace": "Цветовое пространство", + "MediaInfoVideoRange": "Диапазон видео", + "QuickConnectNotActive": "Quick connect неактивен на данном сервере", + "QuickConnectNotAvailable": "Попросите администратора сервера включить Quick Connect", + "QuickConnectInvalidCode": "Неверный код Quick Connect", + "QuickConnectDescription": "Чтобы войти в систему с помощью Quick Connect, нажмите кнопку «Quick Connect» на устройстве, с которого вы выполняете вход, и введите указанный ниже код.", + "QuickConnectDeactivated": "Quick connect был деактивирован до утверждения запроса на вход", + "QuickConnectAuthorizeFail": "Неопознанный код connect code", + "QuickConnectAuthorizeSuccess": "Запрос авторизован", + "QuickConnectAuthorizeCode": "Введите код {0} для входа", + "QuickConnectActivationSuccessful": "Активировано успешно", + "QuickConnect": "Quick Connect", + "LabelQuickConnectCode": "Код Quick connect:", + "LabelKnownProxies": "Известные прокси:", + "LabelCurrentStatus": "Текущее состояние:", + "KnownProxiesHelp": "Разделенный запятыми список IP-адресов известных прокси, используемых при подключении к вашему экземпляру Jellyfin. Это необходимо для правильного использования заголовков X-Forwarded-For. Требуется перезагрузка после сохранения.", + "EnableQuickConnect": "Включить quick connect на этом сервере", + "EnableAutoCast": "Задать по умолчанию", + "ButtonUseQuickConnect": "Использовать Quick Connect", + "ButtonActivate": "Активация", + "Authorize": "Авторизация" } From 8bcce836efcd0aea33af427d2610057c836ca23b Mon Sep 17 00:00:00 2001 From: nextlooper42 Date: Wed, 30 Sep 2020 20:56:25 +0000 Subject: [PATCH 221/365] Translated using Weblate (Slovak) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/sk/ --- src/strings/sk.json | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/strings/sk.json b/src/strings/sk.json index 3e389d6a2d..6ca0d23193 100644 --- a/src/strings/sk.json +++ b/src/strings/sk.json @@ -202,7 +202,7 @@ "HeaderPinCodeReset": "Obnoviť PIN kód", "HeaderPlayAll": "Prehrať všetko", "HeaderPlaybackError": "Chyba prehrávania", - "HeaderPleaseSignIn": "Prosím prihláste sa", + "HeaderPleaseSignIn": "Prihláste sa, prosím", "HeaderPreferredMetadataLanguage": "Uprednostňovaný jazyk metadát", "HeaderProfileInformation": "Informácie o profile", "HeaderRecentlyPlayed": "Nedávno prehrávané", @@ -215,7 +215,7 @@ "HeaderSelectPath": "Vybrať priečinok", "HeaderSendMessage": "Poslať správu", "HeaderServerSettings": "Nastavenia servera", - "HeaderSetupLibrary": "Nastavte Vaše knižnice médií", + "HeaderSetupLibrary": "Nastavenie Vašich knižníc médií", "HeaderSortBy": "Zoradiť podľa", "HeaderStartNow": "Začať teraz", "HeaderStopRecording": "Zastaviť nahrávanie", @@ -479,7 +479,7 @@ "Mobile": "Mobil", "Monday": "Pondelok", "MoreFromValue": "Viac od {0}", - "MoreUsersCanBeAddedLater": "Ďalší používatelia môžu byť pridaný neskôr cez Dashboard.", + "MoreUsersCanBeAddedLater": "Ďalších používateľov môžete neskôr pridať cez Dashboard.", "MoveLeft": "Posunúť vľavo", "MoveRight": "Posunúť vpravo", "Movies": "Filmy", @@ -712,7 +712,7 @@ "Vertical": "Vertikálne", "ViewAlbum": "Zobraziť album", "Wednesday": "Streda", - "WelcomeToProject": "Vitajte v Jellyfin!", + "WelcomeToProject": "Vitajte v Jellyfine!", "WizardCompleted": "To je zatiaľ všetko, čo potrebujeme. Jellyfin začal zhromažďovať údaje o vašej multimediálnej knižnici. Pozrite si niektoré z našich aplikácií a potom kliknite na Dokončiť pre zobrazenie Dashboardu.", "Yes": "Áno", "Yesterday": "Včera", @@ -758,7 +758,7 @@ "DashboardOperatingSystem": "Operačný systém: {0}", "DashboardArchitecture": "Architektúra: {0}", "LabelWeb": "Web:", - "LeaveBlankToNotSetAPassword": "Toto pole môžete nechať prázdne pre nastavenie bez hesla.", + "LeaveBlankToNotSetAPassword": "Môžete nechať prázdne pre nastavenie bez hesla.", "List": "Zoznam", "Logo": "Logo", "MessageImageFileTypeAllowed": "Sú podporované iba súbory JPEG a PNG.", @@ -1244,7 +1244,7 @@ "PlaybackErrorNoCompatibleStream": "Tento klient nie je kompatibilný s médiom a server neposiela kompatibilný mediálny formát.", "AllowFfmpegThrottlingHelp": "Keď sa transkódovanie alebo remuxovanie dostane do bodu, kedy je dostatočne vopred voči súčasnej polohe prehrávania, pozastaví proces aby spotrebovával menej zdrojov. Toto je najviac užitočné, keď sa pozerá obsah bez pretáčania. Vypnite túto možnosť, pokiaľ má vaše prehrávanie problémy.", "AllowFfmpegThrottling": "Obmedzenie transkódovania", - "PreferEmbeddedEpisodeInfosOverFileNames": "Preferovať vložen[ informáciu o epizóde pred názvom súboru", + "PreferEmbeddedEpisodeInfosOverFileNames": "Preferovať vloženú informáciu o epizóde pred názvom súboru", "PreferEmbeddedEpisodeInfosOverFileNamesHelp": "Toto využíva informáciu o epizóde z vložených metadát, pokiaľ sú dostupne.", "ClientSettings": "Nastavenie klienta", "Album": "Album", @@ -1354,5 +1354,6 @@ "LabelUnstable": "Nestabilný", "PlaybackRate": "Rýchlosť prehrávania", "ButtonActivate": "Aktivovať", - "Authorize": "Autorizovať" + "Authorize": "Autorizovať", + "ButtonUseQuickConnect": "Použiť rýchle pripojenie" } From 56113e60966c399233e0afc36b8094fcba021bee Mon Sep 17 00:00:00 2001 From: zack871024 Date: Wed, 30 Sep 2020 23:06:12 +0000 Subject: [PATCH 222/365] Translated using Weblate (Chinese (Traditional)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/zh_Hant/ --- src/strings/zh-tw.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/zh-tw.json b/src/strings/zh-tw.json index 0b953aa8dd..07ce7bfa4d 100644 --- a/src/strings/zh-tw.json +++ b/src/strings/zh-tw.json @@ -1398,5 +1398,6 @@ "PlaybackRate": "播放速度", "LabelQuickConnectCode": "Quick Connect 代號:", "LabelKnownProxies": "已知 Proxy:", - "LabelCurrentStatus": "目前狀態:" + "LabelCurrentStatus": "目前狀態:", + "EnableAutoCast": "設為預設" } From 0ba90d1a6d6f8ddda77996e5157fab1246afb8cd Mon Sep 17 00:00:00 2001 From: Bydio Eds Date: Thu, 1 Oct 2020 12:09:45 +0000 Subject: [PATCH 223/365] Translated using Weblate (Spanish (Mexico)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/es_MX/ --- src/strings/es-mx.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/strings/es-mx.json b/src/strings/es-mx.json index 8fc8a0abd9..1dbbe469ff 100644 --- a/src/strings/es-mx.json +++ b/src/strings/es-mx.json @@ -459,7 +459,7 @@ "LabelCustomRating": "Calificación personalizada:", "LabelDateAdded": "Fecha de adición:", "LabelDateAddedBehavior": "Comportamiento de la fecha de adición para nuevo contenido:", - "LabelDateAddedBehaviorHelp": "Si un valor de metadatos está presente, siempre se utilizará antes de cualquiera de estas opciones.", + "LabelDateAddedBehaviorHelp": "Si un valor de metadatos está presente, siempre se utilizará antes que cualquiera de estas opciones.", "LabelDateTimeLocale": "Configuración regional de fecha y hora:", "LabelDay": "Día:", "LabelDeathDate": "Fecha de defunción:", @@ -515,7 +515,7 @@ "LabelFriendlyName": "Nombre amistoso:", "LabelServerNameHelp": "Este nombre se usará para identificar el servidor y se predeterminará al nombre de host del servidor.", "LabelGroupMoviesIntoCollections": "Agrupar películas en colecciones", - "LabelGroupMoviesIntoCollectionsHelp": "Cuando se muestran listados de películas, las películas que pertenecen a una colección serán mostradas agrupadas en un solo artículo.", + "LabelGroupMoviesIntoCollectionsHelp": "Cuando se muestran listados de películas, las películas dentro de una colección serán mostradas agrupadas en un solo artículo.", "LabelH264Crf": "CRF de codificación H264:", "LabelEncoderPreset": "Codificación H264 y H265 preestablecida:", "LabelHardwareAccelerationType": "Aceleración por hardware:", @@ -593,7 +593,7 @@ "LabelMoviePrefixHelp": "Si un prefijo es aplicado al título de las películas, introdúcelo aquí para que el servidor pueda manejarlo correctamente.", "LabelMovieRecordingPath": "Ruta para las grabaciones de películas:", "LabelMusicStreamingTranscodingBitrate": "Velocidad de bits de transcodificación de música:", - "LabelMusicStreamingTranscodingBitrateHelp": "Especifica la velocidad de bits máxima al transmitir música.", + "LabelMusicStreamingTranscodingBitrateHelp": "Especifica la tasa de bits máxima al transmitir música.", "LabelName": "Nombre:", "LabelNewName": "Nuevo nombre:", "LabelNewPassword": "Contraseña nueva:", @@ -722,7 +722,7 @@ "LabelYoureDone": "¡Has terminado!", "LabelZipCode": "Código postal:", "LabelffmpegPath": "Ruta del FFmpeg:", - "LabelffmpegPathHelp": "La ruta hacia el archivo de la aplicación ffmpeg, o la carpeta que contenga ffmpeg.", + "LabelffmpegPathHelp": "La ruta hacia el archivo ejecutable de ffmpeg, o la carpeta que contenga el mismo.", "LanNetworksHelp": "Lista separada por comas de direcciones IP o entradas de IP/máscara de red para las redes que se considerarán en la red local al aplicar las restricciones de ancho de banda. Si se establecen, todas las demás direcciones IP se considerarán como parte de la red externa y estarán sujetas a las restricciones de ancho de banda externa. Si se deja en blanco, solo se considera a la subred del servidor estar en la red local.", "Large": "Grande", "LatestFromLibrary": "Últimas - {0}", From 510e5a761320ad915c47c866cc148268dd9f1e72 Mon Sep 17 00:00:00 2001 From: Page Asgardius Date: Fri, 2 Oct 2020 00:40:20 +0000 Subject: [PATCH 224/365] Translated using Weblate (Spanish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/es/ --- src/strings/es.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/strings/es.json b/src/strings/es.json index 8b7dba1e5d..8e8568ef24 100644 --- a/src/strings/es.json +++ b/src/strings/es.json @@ -1412,5 +1412,8 @@ "LabelTonemappingDesat": "Mapeo de tonos desaturado:", "UseDoubleRateDeinterlacingHelp": "Esta configuración utiliza la velocidad de campo al desentrelazar, a menudo denominado desentrelazado bob, que duplica los fotogramas del video para proporcionar un movimiento contínuo, como lo vería al ver un video entrelazado en un televisor.", "PosterCard": "Tarjeta de presentación", - "EnableAutoCast": "Marcar como predeterminado" + "EnableAutoCast": "Marcar como predeterminado", + "LabelTonemappingDesatHelp": "Aplicar desaturación a realces que excedan este nivel de brillo. Mientras más alto el parámetro, se preservará más información de color. Este ajuste ayuda a prevenir la aparición de colores innecesariamente apagados en realces altos, cambiándolos gradualmente a blanco. Esto hace que las imágenes se vean más naturales, a cambio de reducir información relativa a los colores que estén fuera del rango. Se recomiendan los valores predeterminados 0 y 0.5.", + "AllowTonemappingHelp": "El mapeo de tonos puede transformar el rango dinámico de un video HDR a SDR mientras se mantienen los detalles y colores en la imagen, por lo tanto es importante para representar la escena original. Actualmente solo funciona cuando se transcodifican videos con metadatos HDR10 o HLG incrustados. Si la reproducción no es fluida o falla, considere desactivar el decodificador por hardware correspondiente.", + "LabelOpenclDeviceHelp": "Este es el dispositivo OpenCL que se usará para el mapeo de tonos. La parte izquierda del punto es el número de plataforma, la derecha es el número de dispositivo en la plataforma. El valor predeterminado es 0.0. Se requiere especificar el archivo ejecutable ffmpeg con el método de aceleración por Hardware para OpenCL." } From 9d8f74e0c1d1dbfff156ff5fbbb5743a2e992a42 Mon Sep 17 00:00:00 2001 From: Page Asgardius Date: Fri, 2 Oct 2020 00:59:39 +0000 Subject: [PATCH 225/365] Translated using Weblate (Spanish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/es/ --- src/strings/es.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/strings/es.json b/src/strings/es.json index 8e8568ef24..0ca1c361b3 100644 --- a/src/strings/es.json +++ b/src/strings/es.json @@ -1415,5 +1415,8 @@ "EnableAutoCast": "Marcar como predeterminado", "LabelTonemappingDesatHelp": "Aplicar desaturación a realces que excedan este nivel de brillo. Mientras más alto el parámetro, se preservará más información de color. Este ajuste ayuda a prevenir la aparición de colores innecesariamente apagados en realces altos, cambiándolos gradualmente a blanco. Esto hace que las imágenes se vean más naturales, a cambio de reducir información relativa a los colores que estén fuera del rango. Se recomiendan los valores predeterminados 0 y 0.5.", "AllowTonemappingHelp": "El mapeo de tonos puede transformar el rango dinámico de un video HDR a SDR mientras se mantienen los detalles y colores en la imagen, por lo tanto es importante para representar la escena original. Actualmente solo funciona cuando se transcodifican videos con metadatos HDR10 o HLG incrustados. Si la reproducción no es fluida o falla, considere desactivar el decodificador por hardware correspondiente.", - "LabelOpenclDeviceHelp": "Este es el dispositivo OpenCL que se usará para el mapeo de tonos. La parte izquierda del punto es el número de plataforma, la derecha es el número de dispositivo en la plataforma. El valor predeterminado es 0.0. Se requiere especificar el archivo ejecutable ffmpeg con el método de aceleración por Hardware para OpenCL." + "LabelOpenclDeviceHelp": "Este es el dispositivo OpenCL que se usará para el mapeo de tonos. La parte izquierda del punto es el número de plataforma, la derecha es el número de dispositivo en la plataforma. El valor predeterminado es 0.0. Se requiere especificar el archivo ejecutable ffmpeg con el método de aceleración por Hardware para OpenCL.", + "LabelMaxMuxingQueueSizeHelp": "El número máximo de paquetes que se pueden almacenar en buffer mientras se espera a que se inicialicen todos los flujos. Intente aumentar este valor si aún encuentra el mensaje de error \"Demasiados paquetes en buffer para transmitir\" en las bitácoras de ffmpeg. El valor recomendado es 2048.", + "LabelTonemappingPeakHelp": "Se omitirán los picos de referencia con este valor. Util cuando la información de pico incrustada en los metadatos de imagen no es confiable o cuando se hace un mapeo de tonos de un rango bajo a uno más alto. Se recomienda el valor predeterminado 0.", + "LabelTonemappingThresholdHelp": "Los parámetros del algoritmo de mapeo de tonos se ajustan en cada escena. Se usa un umbral para detectar si la escena ha cambiado o no. Si el brillo promedio se sale del umbral entre el fotograma actual y el próximo, se volveran a calcular los valores de brillo promedio y de pico. Se recomiendan los valores predeterminados 0.8 y 0.2." } From 2373138048886704b3ce408118b3fcea87ea9ba3 Mon Sep 17 00:00:00 2001 From: vinibutturi Date: Fri, 2 Oct 2020 10:04:23 +0000 Subject: [PATCH 226/365] Translated using Weblate (Portuguese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/pt/ --- src/strings/pt.json | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/strings/pt.json b/src/strings/pt.json index d08244d010..22353520d5 100644 --- a/src/strings/pt.json +++ b/src/strings/pt.json @@ -808,7 +808,7 @@ "ConfirmDeleteItems": "Apagar estes itens resultará na sua remoção da biblioteca e do sistema de ficheiros. Tem a certeza que deseja continuar?", "ConfirmDeleteItem": "Apagar este item resultará na sua remoção da biblioteca e do sistema de ficheiros. Tem a certeza que deseja continuar?", "ConfirmDeleteImage": "Apagar a imagem?", - "ConfigureDateAdded": "Configure a forma como é atribuída a data de adição, no painel de controlo do Servidor Jellyfin, em definições da Biblioteca", + "ConfigureDateAdded": "Configure a forma como é atribuída a data de adição, no painel de controle, em definições da Biblioteca", "Composer": "Compositor", "CommunityRating": "Avaliação da comunidade", "ColorTransfer": "Transferência de cores", @@ -1200,5 +1200,9 @@ "HeaderDVR": "DVR", "ApiKeysCaption": "Lista das chaves de API ativadas no momento", "ButtonTogglePlaylist": "Lista de leitura", - "ButtonSyncPlay": "SyncPlay" + "ButtonSyncPlay": "SyncPlay", + "Data": "Dados", + "ButtonUseQuickConnect": "Usar conexão rápida", + "ButtonActivate": "Ativar", + "Authorize": "Autorizar" } From 61d3887b77775a6400b3015803c826aec14d854f Mon Sep 17 00:00:00 2001 From: vinibutturi Date: Fri, 2 Oct 2020 10:16:06 +0000 Subject: [PATCH 227/365] Translated using Weblate (Portuguese (Brazil)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/pt_BR/ --- src/strings/pt-br.json | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/src/strings/pt-br.json b/src/strings/pt-br.json index c2d38e2ea9..db25a07431 100644 --- a/src/strings/pt-br.json +++ b/src/strings/pt-br.json @@ -1352,7 +1352,7 @@ "MessageGetInstalledPluginsError": "Um erro ocorreu durante a requisição da lista de plugins atualmente instalados.", "MessagePluginInstallError": "Um erro ocorreu durante a instalação do plugin.", "PlaybackRate": "Taxa de Reprodução", - "SubtitleVerticalPositionHelp": "Numero da linha onde o texto aparece. Números positivos indicam de cima para baixo. Números negativos indicam de baixo para cima.", + "SubtitleVerticalPositionHelp": "Número da linha onde o texto aparece. Números positivos indicam de cima para baixo. Números negativos indicam de baixo para cima.", "VideoAudio": "Vídeo Áudio", "Video": "Vídeo", "Subtitle": "Legenda", @@ -1384,5 +1384,20 @@ "EnableQuickConnect": "Habilitar Quick Connect nesse servidor", "ButtonUseQuickConnect": "Usar Quick Connect", "ButtonActivate": "Ativar", - "Authorize": "Autorizar" + "Authorize": "Autorizar", + "LabelTonemappingDesat": "Desaturação do mapeamento de tons:", + "TonemappingRangeHelp": "Selecione a variadade de cores da saída. Auto é a mesma variedade da entrada.", + "LabelTonemappingRange": "Range do mapeamento de tons:", + "TonemappingAlgorithmHelp": "Mapeamento de tons podem ser ajustados. Se você não esta familiariazado com essas opções, mantenha os valores padrões. O valor recomendado é Reinhard.", + "LabelTonemappingAlgorithm": "Selecione o algoritmo de mapeamento de tons a ser usado:", + "AllowTonemappingHelp": "Mapeamento de tons pode transformar o range dinamico de um video HDR em SDR enquanto mantém os detalhes e cores da imagem, que são informações importantes na representação da cena original. Atualmente funciona apenas durante o transcoding de videos com HDR10 embutidos ou metadata HLG. Se a reprodução falhar ou nao estiver suave, por favor considere desativar o decodificador de hardware correspondente.", + "EnableTonemapping": "Ativar mapeamento de tons", + "LabelOpenclDeviceHelp": "Dispositivo OpenCL usado para a mapeação de tons. Os números ao lado esquedo do ponto (.) são referentes ao número da plataforma, os números a direita representam o número do dispositivo dentro da plataforma. O valor padrão é 0.0. O arquivo da aplicaçao ffmpeg contendo o método de aceleraçao de hardware OpenCL é obrigatório.", + "LabelOpenclDevice": "Dispositivo OpenCL:", + "LabelColorPrimaries": "Cores primárias:", + "UseDoubleRateDeinterlacing": "Dobrar a taxa de quadros quando estiver desinterlaçando", + "LabelQuickConnectCode": "Código de conexão rápida:", + "LabelKnownProxies": "Proxies conhecidos:", + "KnownProxiesHelp": "Lista de endereços IPs, separados por vírgula, de proxies conhecidos usados para conectar na sua instância do Jellyfin. Isso é necessário para usar de forma adequada os cabeçalhos X-Forwarded-for. Essa alteração necessita que o sistema seja reiniciado após salvar.", + "EnableAutoCast": "Definir como padrão" } From f0848ff1faeaf22ec51a736dc72a0542a459f80c Mon Sep 17 00:00:00 2001 From: vinibutturi Date: Fri, 2 Oct 2020 10:09:11 +0000 Subject: [PATCH 228/365] Translated using Weblate (Portuguese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/pt/ --- src/strings/pt.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/strings/pt.json b/src/strings/pt.json index 22353520d5..903618cc94 100644 --- a/src/strings/pt.json +++ b/src/strings/pt.json @@ -776,7 +776,7 @@ "Director": "Realizador", "DirectStreaming": "Reprodução directa", "DirectStreamHelp2": "A reprodução directa de um ficheiro requer pouco processamento e não implica perda de qualidade num vídeo.", - "DirectStreamHelp1": "O tipo de multimédia (H.264, AC3, etc.) e a sua resolução são compatíveis com o dispositivo, no entanto, o formato (mkv, avi, wmv, etc.) não é. O conteúdo é reempacotado em tempo real antes de ser enviado para o dispositivo.", + "DirectStreamHelp1": "O tipo de multimídia (H.264, AC3, etc.) e a sua resolução são compatíveis com o dispositivo, no entanto, o formato (mkv, avi, wmv, etc.) não é. O conteúdo sera reempacotado em tempo real antes de ser enviado para o dispositivo.", "DirectPlaying": "Reprodução directa", "DeviceAccessHelp": "Apenas se aplica a dispositivos que podem ser identificados como únicos e que não impedem o acesso ao navegador. Filtrar o acesso a dispositivos a um utilizador, impede-o de utilizar novos dispositivos, até estes serem aprovados aqui.", "DetectingDevices": "Procurando dispositivos", @@ -1127,7 +1127,7 @@ "Never": "Nunca", "Artist": "Artista", "LabelDeinterlaceMethod": "Método de desentrelaçamento:", - "DeinterlaceMethodHelp": "Selecione o método de desentrelaçamento para converter conteúdo entrelaçado.", + "DeinterlaceMethodHelp": "Selecione o método de desentrelaçamento para conversão via software de conteúdo entrelaçado. Quando a aceleração via hardware com suporte a desentrelaçamento estiver ativa, ela será usada ao invés dessa configuração.", "Movie": "Filme", "LabelLibraryPageSize": "Tamanho da página da biblioteca:", "Album": "Álbum", From 90f46b8dc301e8bd68d2d06bb20ac349de60e3ad Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Fri, 2 Oct 2020 14:46:17 +0000 Subject: [PATCH 229/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index a6fc3a856a..946057adef 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -778,7 +778,7 @@ "LabelSyncPlaySyncMethod": "Phương pháp đồng bộ hóa:", "LabelSyncPlayPlaybackDiff": "Chênh lệch thời gian phát lại:", "MillisecondsUnit": "ms", - "LabelSyncPlayTimeOffset": "Thời gian bù đắp với máy chủ:", + "LabelSyncPlayTimeOffset": "Thời gian bù đắp máy chủ:", "LabelSupportedMediaTypes": "Các loại phương tiện được hỗ trợ:", "LabelSubtitlePlaybackMode": "Chế độ phụ đề:", "LabelSubtitleFormatHelp": "Ví dụ: srt", @@ -1161,7 +1161,7 @@ "OptionWeekly": "Hàng tuần", "OptionWeekends": "Ngày cuối tuần", "OptionWeekdays": "Các ngày trong tuần", - "OptionWakeFromSleep": "Đánh Thức Khi Đang Ở Chế Độ Ngủ", + "OptionWakeFromSleep": "Đánh thức chế độ ngủ", "OptionUnairedEpisode": "Các tập không mong muốn", "OptionTvdbRating": "Xếp hạng TVDB", "OptionAllowVideoPlaybackRemuxing": "Cho phép phát lại video yêu cầu chuyển đổi mà không cần mã hóa lại", @@ -1351,7 +1351,7 @@ "EveryXHours": "Mỗi {0} giờ", "EveryHour": "Mỗi tiếng", "EveryXMinutes": "Mỗi {0} phút", - "OnWakeFromSleep": "Khi thức dậy sau giấc ngủ", + "OnWakeFromSleep": "Hoạt động khi đánh thức chế độ ngủ", "WeeklyAt": "{0}s tại {1}", "DailyAt": "Hàng ngày lúc {0}", "LastSeen": "Xem lần cuối {0}", From 2696df1bc829e388302e470205b4209f547dec63 Mon Sep 17 00:00:00 2001 From: Adam Bokor Date: Sat, 3 Oct 2020 10:21:11 +0000 Subject: [PATCH 230/365] Translated using Weblate (Hungarian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/hu/ --- src/strings/hu.json | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/strings/hu.json b/src/strings/hu.json index 30bbef6a28..0c9aaa1de9 100644 --- a/src/strings/hu.json +++ b/src/strings/hu.json @@ -1372,5 +1372,20 @@ "EnableAutoCast": "Beállítás alapértelmezettként", "ButtonUseQuickConnect": "Gyors kapcsolódás használata", "ButtonActivate": "Aktiválás", - "Authorize": "Felhatalmaz" + "Authorize": "Felhatalmaz", + "Bwdif": "BWDIF", + "SpecialFeatures": "Speciális funkciók", + "QuickConnectNotActive": "A gyors csatlakozás nem engedélyezett ezen a szerveren", + "QuickConnectNotAvailable": "Kérd meg a szerver adminisztrátorát, hogy engedélyezze a gyors csatlakozást", + "QuickConnectInvalidCode": "Érvénytelen csatlakozási kód", + "QuickConnectDescription": "A gyors kapcsolódáshoz való bejelentkezéshez, válaszd a Gyors Csatlakozás gombot azon az eszközön, amelyre be szeretnél jelentkezni és add meg az alul látható kódot.", + "QuickConnectDeactivated": "A gyors csatlakozás letiltásra került a belépési kérés engedélyezése előtt", + "QuickConnectAuthorizeFail": "Ismeretlen gyors kapcsolódási kód", + "QuickConnectAuthorizeSuccess": "Kérés hitelesítve", + "QuickConnectAuthorizeCode": "Írd be a(z) {0} kódot a bejelentkezéshez", + "QuickConnectActivationSuccessful": "Sikeresen aktiválva", + "QuickConnect": "Gyors csatlakozás", + "LabelQuickConnectCode": "Gyors kapcsolódás kódja:", + "LabelKnownProxies": "Ismert proxyk:", + "LabelCurrentStatus": "Jelenlegi állapot:" } From 20bfa5f66adaf5112f997bade03672f191d437c5 Mon Sep 17 00:00:00 2001 From: togashi23 Date: Sat, 3 Oct 2020 13:53:26 +0000 Subject: [PATCH 231/365] Translated using Weblate (Japanese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ja/ --- src/strings/ja.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/strings/ja.json b/src/strings/ja.json index f63441ac9c..e8e3872680 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -1097,5 +1097,7 @@ "LabelPlayerDimensions": "プレーヤーサイズ:", "LabelUnstable": "不安定", "LabelMaxParentalRating": "最大許容ペアレントレイティング:", - "LabelKodiMetadataEnablePathSubstitutionHelp": "サーバーのパス補完を使った画像パスの補完を有効にする。" + "LabelKodiMetadataEnablePathSubstitutionHelp": "サーバーのパス補完を使った画像パスの補完を有効にする。", + "ButtonActivate": "アクティベート", + "Authorize": "承認" } From c7bd1fa12e704581cafc84e7d8d9db5fb951aa40 Mon Sep 17 00:00:00 2001 From: Peter McNeil Date: Sat, 3 Oct 2020 19:52:13 +0000 Subject: [PATCH 232/365] Translated using Weblate (English (United Kingdom)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/en_GB/ --- src/strings/en-gb.json | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/strings/en-gb.json b/src/strings/en-gb.json index 28cfa8c409..33b498fdc3 100644 --- a/src/strings/en-gb.json +++ b/src/strings/en-gb.json @@ -1381,9 +1381,9 @@ "LabelTonemappingDesat": "Tonemapping desat:", "TonemappingRangeHelp": "Select the output colour range. Auto is the same as the input range.", "LabelTonemappingRange": "Tonemapping range:", - "TonemappingAlgorithmHelp": "Tone mapping can be fine-tuned. If you are not familiar with these options, just keep the default.
    The recommended value is Reinhard.", + "TonemappingAlgorithmHelp": "Tone mapping can be fine-tuned. If you are not familiar with these options, just keep the default. The recommended value is Reinhard.", "LabelTonemappingAlgorithm": "Select the Tone mapping algorithm to use:", - "AllowTonemappingHelp": "Tone mapping can transform the dynamic range of a video from HDR to SDR while maintaining image details and colours, which are very important information for representing the original scene. Currently works only when using NVENC HEVC decoder and transcoding HDR10 or HLG videos.", + "AllowTonemappingHelp": "Tone mapping can transform the dynamic range of a video from HDR to SDR while maintaining image details and colors, which are very important information for representing the original scene. Currently works only when transcoding videos with embedded HDR10 or HLG metadata. If the playback is not smooth or fails, please consider turning off the corresponding hardware decoder.", "EnableTonemapping": "Enable Tone mapping", "LabelOpenclDeviceHelp": "This is the OpenCL device that is used for tonemapping. The left side of the dot is the platform number, and the right side is the device number on the platform. The default value is 0.0. The ffmpeg application file containing the OpenCL hardware acceleration method is required.", "LabelOpenclDevice": "OpenCL Device:", @@ -1417,5 +1417,6 @@ "EnableQuickConnect": "Enable quick connect on this server", "ButtonUseQuickConnect": "Use Quick Connect", "ButtonActivate": "Activate", - "Authorize": "Authorise" + "Authorize": "Authorise", + "EnableAutoCast": "Set as Default" } From c35edc0720a265b6e1ebc195443083d0ea8dd157 Mon Sep 17 00:00:00 2001 From: Odd-Roar Brouer-Wangen Date: Sat, 3 Oct 2020 20:37:35 +0000 Subject: [PATCH 233/365] =?UTF-8?q?Translated=20using=20Weblate=20(Norwegi?= =?UTF-8?q?an=20Bokm=C3=A5l)=20Translation:=20Jellyfin/Jellyfin=20Web=20Tr?= =?UTF-8?q?anslate-URL:=20https://translate.jellyfin.org/projects/jellyfin?= =?UTF-8?q?/jellyfin-web/nb=5FNO/?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/strings/nb.json | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/strings/nb.json b/src/strings/nb.json index b782782982..aad303dd8f 100644 --- a/src/strings/nb.json +++ b/src/strings/nb.json @@ -1371,12 +1371,23 @@ "Photo": "Bilde", "LabelAlbumArtMaxResHelp": "Høyeste tillatte oppløsning for album cover som er tilgjengelig via upnp:albumArtURI.", "LabelKnownProxies": "Kjente proxyer:", - "LabelIconMaxResHelp": "Maks oppløsning av minibilder som vises via egenskapvalget upnp:icon.", + "LabelIconMaxResHelp": "Maksimal oppløsning av ikoner som vises via upnp:icon egenskapet.", "LabelCurrentStatus": "Nåværende status:", "KnownProxiesHelp": "Kommaseparert liste med IP-adresser av kjente proxyer brukt til å tilkoble din Jellyfin-instans. Dette er påkrevd for å tilkoble korrekt, ved å bruke X-Forwardet-For headers. Omstart er påkrevd etter lagring.", "EnableQuickConnect": "Bruk rask tilkobling på denne tjeneren", "ButtonUseQuickConnect": "Bruk rask tilkobling", "ButtonActivate": "Aktiver", "Authorize": "Autoriser", - "EnableAutoCast": "Sett som standard" + "EnableAutoCast": "Sett som standard", + "QuickConnectNotActive": "Hurtig tilkobling er ikke aktiv på denne serveren", + "QuickConnectNotAvailable": "Be serveradministratoren om å aktivere hurtig tilkobling", + "QuickConnectInvalidCode": "Ugyldig hurtig tilkoblingskode", + "QuickConnectDescription": "Hvis du vil logge på med hurtig tilkobling, velger du Hurtig tilkobling-knappen på enheten du logger på fra, og skriver inn koden som vises nedenfor.", + "QuickConnectDeactivated": "Hurtig tilkobling ble deaktivert før påloggingsforespørselen kunne godkjennes", + "QuickConnectAuthorizeFail": "Ukjent hurtig tilkoblingskode", + "QuickConnectAuthorizeSuccess": "Forespørsel autorisert", + "QuickConnectAuthorizeCode": "Skriv inn kode {0} for å logge inn", + "QuickConnectActivationSuccessful": "Aktivert", + "QuickConnect": "Hurtig tilkobling", + "LabelQuickConnectCode": "Hurtig tilkoblingskode:" } From c4fb887b0af50fe43513d8644fa786b73767f564 Mon Sep 17 00:00:00 2001 From: Odd-Roar Brouer-Wangen Date: Sat, 3 Oct 2020 20:43:11 +0000 Subject: [PATCH 234/365] =?UTF-8?q?Translated=20using=20Weblate=20(Norwegi?= =?UTF-8?q?an=20Bokm=C3=A5l)=20Translation:=20Jellyfin/Jellyfin=20Web=20Tr?= =?UTF-8?q?anslate-URL:=20https://translate.jellyfin.org/projects/jellyfin?= =?UTF-8?q?/jellyfin-web/nb=5FNO/?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/strings/nb.json | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/src/strings/nb.json b/src/strings/nb.json index aad303dd8f..faad01f657 100644 --- a/src/strings/nb.json +++ b/src/strings/nb.json @@ -1389,5 +1389,19 @@ "QuickConnectAuthorizeCode": "Skriv inn kode {0} for å logge inn", "QuickConnectActivationSuccessful": "Aktivert", "QuickConnect": "Hurtig tilkobling", - "LabelQuickConnectCode": "Hurtig tilkoblingskode:" + "LabelQuickConnectCode": "Hurtig tilkoblingskode:", + "EnableTonemapping": "Aktiver tonekartlegging", + "LabelOpenclDeviceHelp": "Dette er OpenCL-enheten som brukes til tonemapping. Venstre side av prikken er plattformnummeret, og høyre side er enhetsnummeret på plattformen. Standardverdien er 0.0. Ffmpeg-applikasjonsfilen som inneholder OpenCL-maskinvareakselerasjonsmetoden kreves.", + "LabelOpenclDevice": "OpenCL-enhet:", + "MediaInfoColorPrimaries": "Primærfarger", + "LabelColorPrimaries": "Primærfarger:", + "LabelColorTransfer": "Fargeoverføring:", + "LabelColorSpace": "Fargeområde:", + "LabelVideoRange": "Videoområde:", + "MediaInfoColorTransfer": "Fargeoverføring", + "MediaInfoColorSpace": "Fargeområde", + "MediaInfoVideoRange": "Videoutvalg", + "Bwdif": "BWDIF", + "UseDoubleRateDeinterlacingHelp": "Denne innstillingen bruker feltfrekvensen når du fjerner linjefletting, ofte referert til som bob deinterlacing, som dobler bildefrekvensen til videoen for å gi full bevegelse som det du ville se når du ser linjeflettet video på en TV.", + "UseDoubleRateDeinterlacing": "Doble bildefrekvensen ved fjerning av linjefletting" } From 9defa3da24d408e2c917413d8396320e15aa3353 Mon Sep 17 00:00:00 2001 From: Odd-Roar Brouer-Wangen Date: Sat, 3 Oct 2020 20:52:46 +0000 Subject: [PATCH 235/365] =?UTF-8?q?Translated=20using=20Weblate=20(Norwegi?= =?UTF-8?q?an=20Bokm=C3=A5l)=20Translation:=20Jellyfin/Jellyfin=20Web=20Tr?= =?UTF-8?q?anslate-URL:=20https://translate.jellyfin.org/projects/jellyfin?= =?UTF-8?q?/jellyfin-web/nb=5FNO/?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/strings/nb.json | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/strings/nb.json b/src/strings/nb.json index faad01f657..0fb092f2de 100644 --- a/src/strings/nb.json +++ b/src/strings/nb.json @@ -1403,5 +1403,20 @@ "MediaInfoVideoRange": "Videoutvalg", "Bwdif": "BWDIF", "UseDoubleRateDeinterlacingHelp": "Denne innstillingen bruker feltfrekvensen når du fjerner linjefletting, ofte referert til som bob deinterlacing, som dobler bildefrekvensen til videoen for å gi full bevegelse som det du ville se når du ser linjeflettet video på en TV.", - "UseDoubleRateDeinterlacing": "Doble bildefrekvensen ved fjerning av linjefletting" + "UseDoubleRateDeinterlacing": "Doble bildefrekvensen ved fjerning av linjefletting", + "LabelMaxMuxingQueueSizeHelp": "Maksimalt antall pakker som kan buffres mens de venter på at alle strømmer skal initialiseres. Prøv å øke den hvis du fremdeles støter på \"For mange pakker bufret for utdatestrøm\" -feil i ffmpeg-logger. Den anbefalte verdien er 2048.", + "LabelMaxMuxingQueueSize": "Maks køstørrelse for muxing:", + "LabelTonemappingParamHelp": "Still inn algoritmen for tonekartlegging. De anbefalte og standardverdiene er NaN. La det vanligvis være tomt.", + "LabelTonemappingParam": "Tonemapping parameter:", + "LabelTonemappingPeakHelp": "Overstyr signal / nominell / referansetopp med denne verdien. Nyttig når den innebygde toppinformasjonen i metadata på skjermen ikke er pålitelig eller når tonekartlegging fra et lavere område til et høyere område. De anbefalte og standardverdiene er 0.", + "LabelTonemappingPeak": "Tonemapping topp:", + "LabelTonemappingThresholdHelp": "Tonekartingsalgoritmeparametrene finjusteres for hver scene. Og en terskel brukes til å oppdage om scenen har endret seg eller ikke. Hvis avstanden mellom gjeldende rammens gjennomsnittlige lysstyrke og det nåværende løpende gjennomsnittet overstiger en terskelverdi, vil vi beregne scenegjennomsnittet og topplysstyrken på nytt. De anbefalte og standardverdiene er 0,8 og 0,2.", + "LabelTonemappingThreshold": "Tonemapping terskel:", + "LabelTonemappingDesatHelp": "Påfør desaturering for høydepunkter som overstiger dette lysstyrken. Jo høyere parameteren er, jo mer fargeinformasjon blir bevart. Denne innstillingen hjelper til med å forhindre unaturlig utblåste farger for superhøydepunkter ved å (jevnt) bli til hvitt i stedet. Dette får bilder til å føles mer naturlige, på bekostning av å redusere informasjon om farger utenfor fartsområdet. De anbefalte og standardverdiene er 0 og 0,5.", + "LabelTonemappingDesat": "Tonemapping avvalgt:", + "TonemappingRangeHelp": "Velg utskriftsfargeområdet. Auto er det samme som inngangsområdet.", + "LabelTonemappingRange": "Tonemapping-område:", + "TonemappingAlgorithmHelp": "Tonekartlegging kan finjusteres. Hvis du ikke er kjent med disse alternativene, er det bare å beholde standardinnstillingen. Den anbefalte verdien er Reinhard.", + "LabelTonemappingAlgorithm": "Velg algoritmen for tonekartlegging som skal brukes:", + "AllowTonemappingHelp": "Tonekartlegging kan forvandle det dynamiske området til en video fra HDR til SDR samtidig som bildedetaljer og farger opprettholdes, noe som er veldig viktig informasjon for å representere den originale scenen. Fungerer for øyeblikket bare når du omkoder videoer med innebygd HDR10- eller HLG-metadata. Hvis avspillingen ikke er jevn eller mislykkes, bør du vurdere å slå av den tilsvarende maskinvaredekoderen." } From 355620f06b36577a40928ef718c75d0987de7031 Mon Sep 17 00:00:00 2001 From: "Joshua M. Boniface" Date: Sun, 4 Oct 2020 12:08:23 -0400 Subject: [PATCH 236/365] Implement frontend component of max user sessions --- src/controllers/dashboard/users/useredit.html | 8 ++++++++ src/controllers/dashboard/users/useredit.js | 2 ++ src/strings/en-us.json | 3 +++ 3 files changed, 13 insertions(+) diff --git a/src/controllers/dashboard/users/useredit.html b/src/controllers/dashboard/users/useredit.html index f4dc8c096b..d501d0ba26 100644 --- a/src/controllers/dashboard/users/useredit.html +++ b/src/controllers/dashboard/users/useredit.html @@ -190,6 +190,14 @@

    +
    +
    + +
    ${OptionMaxActiveSessions}
    +
    ${OptionMaxActiveSessionsHelp}
    +
    +
    +
    '; @@ -236,7 +236,7 @@ class FilterMenu { dlg.innerHTML = globalize.translateHtml(html, 'core'); - var settingElements = dlg.querySelectorAll('.viewSetting'); + const settingElements = dlg.querySelectorAll('.viewSetting'); for (let i = 0, length = settingElements.length; i < length; i++) { if (options.visibleSettings.indexOf(settingElements[i].getAttribute('data-settingname')) === -1) { settingElements[i].classList.add('hide'); @@ -257,7 +257,7 @@ class FilterMenu { centerFocus(dlg.querySelector('.formDialogContent'), false, true); } - var submitted; + let submitted; dlg.querySelector('form').addEventListener('change', function () { submitted = true; diff --git a/src/components/focusManager.js b/src/components/focusManager.js index a9ec377cce..90ff8b0703 100644 --- a/src/components/focusManager.js +++ b/src/components/focusManager.js @@ -3,7 +3,7 @@ import dom from 'dom'; import scrollManager from 'scrollManager'; - var scopes = []; + const scopes = []; function pushScope(elem) { scopes.push(elem); } @@ -15,7 +15,7 @@ import scrollManager from 'scrollManager'; } function autoFocus(view, defaultToFirst, findAutoFocusElement) { - var element; + let element; if (findAutoFocusElement !== false) { element = view.querySelector('*[autofocus]'); if (element) { @@ -46,9 +46,9 @@ import scrollManager from 'scrollManager'; } } - var focusableTagNames = ['INPUT', 'TEXTAREA', 'SELECT', 'BUTTON', 'A']; - var focusableContainerTagNames = ['BODY', 'DIALOG']; - var focusableQuery = focusableTagNames.map(function (t) { + const focusableTagNames = ['INPUT', 'TEXTAREA', 'SELECT', 'BUTTON', 'A']; + const focusableContainerTagNames = ['BODY', 'DIALOG']; + const focusableQuery = focusableTagNames.map(function (t) { if (t === 'INPUT') { t += ':not([type="range"]):not([type="file"])'; } @@ -69,7 +69,7 @@ import scrollManager from 'scrollManager'; function normalizeFocusable(elem, originalElement) { if (elem) { - var tagName = elem.tagName; + const tagName = elem.tagName; if (!tagName || tagName === 'HTML' || tagName === 'BODY') { elem = originalElement; } @@ -79,10 +79,10 @@ import scrollManager from 'scrollManager'; } function focusableParent(elem) { - var originalElement = elem; + const originalElement = elem; while (!isFocusable(elem)) { - var parent = elem.parentNode; + const parent = elem.parentNode; if (!parent) { return normalizeFocusable(elem, originalElement); @@ -115,7 +115,7 @@ import scrollManager from 'scrollManager'; } if (elem.tagName === 'INPUT') { - var type = elem.type; + const type = elem.type; if (type === 'range') { return false; } @@ -132,11 +132,11 @@ import scrollManager from 'scrollManager'; } function getFocusableElements(parent, limit, excludeClass) { - var elems = (parent || getDefaultScope()).querySelectorAll(focusableQuery); - var focusableElements = []; + const elems = (parent || getDefaultScope()).querySelectorAll(focusableQuery); + const focusableElements = []; - for (var i = 0, length = elems.length; i < length; i++) { - var elem = elems[i]; + for (let i = 0, length = elems.length; i < length; i++) { + const elem = elems[i]; if (excludeClass && elem.classList.contains(excludeClass)) { continue; @@ -159,7 +159,7 @@ import scrollManager from 'scrollManager'; return true; } - var classList = elem.classList; + const classList = elem.classList; if (classList.contains('focuscontainer')) { return true; @@ -208,7 +208,7 @@ import scrollManager from 'scrollManager'; } function getOffset(elem) { - var box; + let box; // Support: BlackBerry 5, iOS 3 (original iPhone) // If we don't have gBCR, just use 0,0 rather than error @@ -225,7 +225,7 @@ import scrollManager from 'scrollManager'; if (box.right === null) { // Create a new object because some browsers will throw an error when trying to set data onto the Rect object - var newBox = { + const newBox = { top: box.top, left: box.left, width: box.width, @@ -255,27 +255,27 @@ import scrollManager from 'scrollManager'; return; } - var focusableContainer = dom.parentWithClass(activeElement, 'focusable'); + const focusableContainer = dom.parentWithClass(activeElement, 'focusable'); - var rect = getOffset(activeElement); + const rect = getOffset(activeElement); // Get elements and work out x/y points - var point1x = parseFloat(rect.left) || 0; - var point1y = parseFloat(rect.top) || 0; - var point2x = parseFloat(point1x + rect.width - 1) || point1x; - var point2y = parseFloat(point1y + rect.height - 1) || point1y; + const point1x = parseFloat(rect.left) || 0; + const point1y = parseFloat(rect.top) || 0; + const point2x = parseFloat(point1x + rect.width - 1) || point1x; + const point2y = parseFloat(point1y + rect.height - 1) || point1y; - var sourceMidX = rect.left + (rect.width / 2); - var sourceMidY = rect.top + (rect.height / 2); + const sourceMidX = rect.left + (rect.width / 2); + const sourceMidY = rect.top + (rect.height / 2); - var focusable = focusableElements || container.querySelectorAll(focusableQuery); + const focusable = focusableElements || container.querySelectorAll(focusableQuery); - var maxDistance = Infinity; - var minDistance = maxDistance; - var nearestElement; + const maxDistance = Infinity; + let minDistance = maxDistance; + let nearestElement; - for (var i = 0, length = focusable.length; i < length; i++) { - var curr = focusable[i]; + for (let i = 0, length = focusable.length; i < length; i++) { + const curr = focusable[i]; if (curr === activeElement) { continue; @@ -285,7 +285,7 @@ import scrollManager from 'scrollManager'; continue; } - var elementRect = getOffset(curr); + const elementRect = getOffset(curr); // not currently visible if (!elementRect.width && !elementRect.height) { @@ -333,16 +333,16 @@ import scrollManager from 'scrollManager'; break; } - var x = elementRect.left; - var y = elementRect.top; - var x2 = x + elementRect.width - 1; - var y2 = y + elementRect.height - 1; + const x = elementRect.left; + const y = elementRect.top; + const x2 = x + elementRect.width - 1; + const y2 = y + elementRect.height - 1; - var intersectX = intersects(point1x, point2x, x, x2); - var intersectY = intersects(point1y, point2y, y, y2); + const intersectX = intersects(point1x, point2x, x, x2); + const intersectY = intersects(point1y, point2y, y, y2); - var midX = elementRect.left + (elementRect.width / 2); - var midY = elementRect.top + (elementRect.height / 2); + const midX = elementRect.left + (elementRect.width / 2); + const midY = elementRect.top + (elementRect.height / 2); var distX; var distY; @@ -372,7 +372,7 @@ import scrollManager from 'scrollManager'; break; } - var dist = Math.sqrt(distX * distX + distY * distY); + const dist = Math.sqrt(distX * distX + distY * distY); if (dist < minDistance) { nearestElement = curr; @@ -383,7 +383,7 @@ import scrollManager from 'scrollManager'; if (nearestElement) { // See if there's a focusable container, and if so, send the focus command to that if (activeElement) { - var nearestElementFocusableParent = dom.parentWithClass(nearestElement, 'focusable'); + const nearestElementFocusableParent = dom.parentWithClass(nearestElement, 'focusable'); if (nearestElementFocusableParent && nearestElementFocusableParent !== nearestElement) { if (focusableContainer !== nearestElementFocusableParent) { nearestElement = nearestElementFocusableParent; @@ -403,16 +403,16 @@ import scrollManager from 'scrollManager'; } function sendText(text) { - var elem = document.activeElement; + const elem = document.activeElement; elem.value = text; } function focusFirst(container, focusableSelector) { - var elems = container.querySelectorAll(focusableSelector); + const elems = container.querySelectorAll(focusableSelector); - for (var i = 0, length = elems.length; i < length; i++) { - var elem = elems[i]; + for (let i = 0, length = elems.length; i < length; i++) { + const elem = elems[i]; if (isCurrentlyFocusableInternal(elem)) { focus(elem); @@ -422,10 +422,10 @@ import scrollManager from 'scrollManager'; } function focusLast(container, focusableSelector) { - var elems = [].slice.call(container.querySelectorAll(focusableSelector), 0).reverse(); + const elems = [].slice.call(container.querySelectorAll(focusableSelector), 0).reverse(); - for (var i = 0, length = elems.length; i < length; i++) { - var elem = elems[i]; + for (let i = 0, length = elems.length; i < length; i++) { + const elem = elems[i]; if (isCurrentlyFocusableInternal(elem)) { focus(elem); @@ -435,11 +435,11 @@ import scrollManager from 'scrollManager'; } function moveFocus(sourceElement, container, focusableSelector, offset) { - var elems = container.querySelectorAll(focusableSelector); - var list = []; - var i; - var length; - var elem; + const elems = container.querySelectorAll(focusableSelector); + const list = []; + let i; + let length; + let elem; for (i = 0, length = elems.length; i < length; i++) { elem = elems[i]; @@ -449,7 +449,7 @@ import scrollManager from 'scrollManager'; } } - var currentIndex = -1; + let currentIndex = -1; for (i = 0, length = list.length; i < length; i++) { elem = list[i]; @@ -464,11 +464,11 @@ import scrollManager from 'scrollManager'; return; } - var newIndex = currentIndex + offset; + let newIndex = currentIndex + offset; newIndex = Math.max(0, newIndex); newIndex = Math.min(newIndex, list.length - 1); - var newElem = list[newIndex]; + const newElem = list[newIndex]; if (newElem) { focus(newElem); } @@ -482,23 +482,23 @@ export default { focusableParent: focusableParent, getFocusableElements: getFocusableElements, moveLeft: function (sourceElement, options) { - var container = options ? options.container : null; - var focusableElements = options ? options.focusableElements : null; + const container = options ? options.container : null; + const focusableElements = options ? options.focusableElements : null; nav(sourceElement, 0, container, focusableElements); }, moveRight: function (sourceElement, options) { - var container = options ? options.container : null; - var focusableElements = options ? options.focusableElements : null; + const container = options ? options.container : null; + const focusableElements = options ? options.focusableElements : null; nav(sourceElement, 1, container, focusableElements); }, moveUp: function (sourceElement, options) { - var container = options ? options.container : null; - var focusableElements = options ? options.focusableElements : null; + const container = options ? options.container : null; + const focusableElements = options ? options.focusableElements : null; nav(sourceElement, 2, container, focusableElements); }, moveDown: function (sourceElement, options) { - var container = options ? options.container : null; - var focusableElements = options ? options.focusableElements : null; + const container = options ? options.container : null; + const focusableElements = options ? options.focusableElements : null; nav(sourceElement, 3, container, focusableElements); }, sendText: sendText, diff --git a/src/components/groupedcards.js b/src/components/groupedcards.js index 38d08d129b..947b3b8569 100644 --- a/src/components/groupedcards.js +++ b/src/components/groupedcards.js @@ -4,19 +4,19 @@ import dom from 'dom'; import appRouter from 'appRouter'; function onGroupedCardClick(e, card) { - var itemId = card.getAttribute('data-id'); - var serverId = card.getAttribute('data-serverid'); - var apiClient = window.connectionManager.getApiClient(serverId); - var userId = apiClient.getCurrentUserId(); - var playedIndicator = card.querySelector('.playedIndicator'); - var playedIndicatorHtml = playedIndicator ? playedIndicator.innerHTML : null; - var options = { + const itemId = card.getAttribute('data-id'); + const serverId = card.getAttribute('data-serverid'); + const apiClient = window.connectionManager.getApiClient(serverId); + const userId = apiClient.getCurrentUserId(); + const playedIndicator = card.querySelector('.playedIndicator'); + const playedIndicatorHtml = playedIndicator ? playedIndicator.innerHTML : null; + const options = { Limit: parseInt(playedIndicatorHtml || '10'), Fields: 'PrimaryImageAspectRatio,DateCreated', ParentId: itemId, GroupItems: false }; - var actionableParent = dom.parentWithTag(e.target, ['A', 'BUTTON', 'INPUT']); + const actionableParent = dom.parentWithTag(e.target, ['A', 'BUTTON', 'INPUT']); if (!actionableParent || actionableParent.classList.contains('cardContent')) { apiClient.getJSON(apiClient.getUrl('Users/' + userId + '/Items/Latest', options)).then(function (items) { @@ -24,7 +24,7 @@ import appRouter from 'appRouter'; return void appRouter.showItem(items[0]); } - var url = 'details?id=' + itemId + '&serverId=' + serverId; + const url = 'details?id=' + itemId + '&serverId=' + serverId; Dashboard.navigate(url); }); e.stopPropagation(); @@ -34,7 +34,7 @@ import appRouter from 'appRouter'; } export default function onItemsContainerClick(e) { - var groupedCard = dom.parentWithClass(e.target, 'groupedCard'); + const groupedCard = dom.parentWithClass(e.target, 'groupedCard'); if (groupedCard) { onGroupedCardClick(e, groupedCard); diff --git a/src/components/htmlMediaHelper.js b/src/components/htmlMediaHelper.js index 4095502aae..31fc4c29c8 100644 --- a/src/components/htmlMediaHelper.js +++ b/src/components/htmlMediaHelper.js @@ -23,7 +23,7 @@ import events from 'events'; } function canPlayNativeHls() { - var media = document.createElement('video'); + const media = document.createElement('video'); if (media.canPlayType('application/x-mpegURL').replace(/no/, '') || media.canPlayType('application/vnd.apple.mpegURL').replace(/no/, '')) { @@ -71,16 +71,16 @@ import events from 'events'; return true; } - var recoverDecodingErrorDate; - var recoverSwapAudioCodecDate; + let recoverDecodingErrorDate; + let recoverSwapAudioCodecDate; export function handleHlsJsMediaError(instance, reject) { - var hlsPlayer = instance._hlsPlayer; + const hlsPlayer = instance._hlsPlayer; if (!hlsPlayer) { return; } - var now = Date.now(); + let now = Date.now(); if (window.performance && window.performance.now) { now = performance.now(); // eslint-disable-line compat/compat @@ -136,7 +136,7 @@ import events from 'events'; } export function seekOnPlaybackStart(instance, element, ticks, onMediaReady) { - var seconds = (ticks || 0) / 10000000; + const seconds = (ticks || 0) / 10000000; if (seconds) { // Appending #t=xxx to the query string doesn't seem to work with HLS @@ -148,7 +148,7 @@ import events from 'events'; if (onMediaReady) onMediaReady(); } else { // update video player position when media is ready to be sought - var events = ['durationchange', 'loadeddata', 'play', 'loadedmetadata']; + const events = ['durationchange', 'loadeddata', 'play', 'loadedmetadata']; var onMediaChange = function(e) { if (element.currentTime === 0 && element.duration >= seconds) { // seek only when video position is exactly zero, @@ -173,10 +173,10 @@ import events from 'events'; export function applySrc(elem, src, options) { if (window.Windows && options.mediaSource && options.mediaSource.IsLocal) { return Windows.Storage.StorageFile.getFileFromPathAsync(options.url).then(function (file) { - var playlist = new Windows.Media.Playback.MediaPlaybackList(); + const playlist = new Windows.Media.Playback.MediaPlaybackList(); - var source1 = Windows.Media.Core.MediaSource.createFromStorageFile(file); - var startTime = (options.playerStartPositionTicks || 0) / 10000; + const source1 = Windows.Media.Core.MediaSource.createFromStorageFile(file); + const startTime = (options.playerStartPositionTicks || 0) / 10000; playlist.items.append(new Windows.Media.Playback.MediaPlaybackItem(source1, startTime)); elem.src = URL.createObjectURL(playlist, { oneTimeOnly: true }); return Promise.resolve(); @@ -194,11 +194,11 @@ import events from 'events'; export function playWithPromise(elem, onErrorFn) { try { - var promise = elem.play(); + const promise = elem.play(); if (promise && promise.then) { // Chrome now returns a promise return promise.catch(function (e) { - var errorName = (e.name || '').toLowerCase(); + const errorName = (e.name || '').toLowerCase(); // safari uses aborterror if (errorName === 'notallowederror' || errorName === 'aborterror') { @@ -219,7 +219,7 @@ import events from 'events'; } export function destroyCastPlayer(instance) { - var player = instance._castPlayer; + const player = instance._castPlayer; if (player) { try { player.unload(); @@ -232,7 +232,7 @@ import events from 'events'; } export function destroyHlsPlayer(instance) { - var player = instance._hlsPlayer; + const player = instance._hlsPlayer; if (player) { try { player.destroy(); @@ -245,7 +245,7 @@ import events from 'events'; } export function destroyFlvPlayer(instance) { - var player = instance._flvPlayer; + const player = instance._flvPlayer; if (player) { try { player.unload(); @@ -356,7 +356,7 @@ import events from 'events'; destroyFlvPlayer(instance); destroyCastPlayer(instance); - var stopInfo = { + const stopInfo = { src: instance._currentSrc }; @@ -368,20 +368,20 @@ import events from 'events'; } export function getBufferedRanges(instance, elem) { - var ranges = []; - var seekable = elem.buffered || []; + const ranges = []; + const seekable = elem.buffered || []; - var offset; - var currentPlayOptions = instance._currentPlayOptions; + let offset; + const currentPlayOptions = instance._currentPlayOptions; if (currentPlayOptions) { offset = currentPlayOptions.transcodingOffsetTicks; } offset = offset || 0; - for (var i = 0, length = seekable.length; i < length; i++) { - var start = seekable.start(i); - var end = seekable.end(i); + for (let i = 0, length = seekable.length; i < length; i++) { + let start = seekable.start(i); + let end = seekable.end(i); if (!isValidDuration(start)) { start = 0; diff --git a/src/components/imageOptionsEditor/imageOptionsEditor.js b/src/components/imageOptionsEditor/imageOptionsEditor.js index 41fe9b4c94..d112dd65cc 100644 --- a/src/components/imageOptionsEditor/imageOptionsEditor.js +++ b/src/components/imageOptionsEditor/imageOptionsEditor.js @@ -93,7 +93,7 @@ import 'emby-input'; const response = await fetch('components/imageOptionsEditor/imageOptionsEditor.template.html'); const template = await response.text(); - var dlg = dialogHelper.createDialog({ + const dlg = dialogHelper.createDialog({ size: 'small', removeOnClose: true, scrollY: false diff --git a/src/components/imageeditor/imageeditor.js b/src/components/imageeditor/imageeditor.js index a21fb76270..e5b59cfb22 100644 --- a/src/components/imageeditor/imageeditor.js +++ b/src/components/imageeditor/imageeditor.js @@ -58,8 +58,8 @@ import 'css!./imageeditor'; currentItem = item; apiClient.getRemoteImageProviders(getBaseRemoteOptions()).then(function (providers) { - var btnBrowseAllImages = page.querySelectorAll('.btnBrowseAllImages'); - for (var i = 0, length = btnBrowseAllImages.length; i < length; i++) { + const btnBrowseAllImages = page.querySelectorAll('.btnBrowseAllImages'); + for (let i = 0, length = btnBrowseAllImages.length; i < length; i++) { if (providers.length) { btnBrowseAllImages[i].classList.remove('hide'); } else { diff --git a/src/components/images/imageLoader.js b/src/components/images/imageLoader.js index b0ffecd64f..9dc708098d 100644 --- a/src/components/images/imageLoader.js +++ b/src/components/images/imageLoader.js @@ -56,7 +56,7 @@ import 'css!./style'; throw new Error('entry cannot be null'); } const target = entry.target; - var source = undefined; + let source = undefined; if (target) { source = target.getAttribute('data-src'); @@ -106,7 +106,7 @@ import 'css!./style'; } function emptyImageElement(elem) { - var url; + let url; if (elem.tagName !== 'IMG') { url = elem.style.backgroundImage.slice(4, -1).replace(/"/g, ''); @@ -137,10 +137,10 @@ import 'css!./style'; } export function getPrimaryImageAspectRatio(items) { - var values = []; + const values = []; - for (var i = 0, length = items.length; i < length; i++) { - var ratio = items[i].PrimaryImageAspectRatio || 0; + for (let i = 0, length = items.length; i < length; i++) { + const ratio = items[i].PrimaryImageAspectRatio || 0; if (!ratio) { continue; @@ -158,9 +158,9 @@ import 'css!./style'; return a - b; }); - var half = Math.floor(values.length / 2); + const half = Math.floor(values.length / 2); - var result; + let result; if (values.length % 2) { result = values[half]; @@ -169,13 +169,13 @@ import 'css!./style'; } // If really close to 2:3 (poster image), just return 2:3 - var aspect2x3 = 2 / 3; + const aspect2x3 = 2 / 3; if (Math.abs(aspect2x3 - result) <= 0.15) { return aspect2x3; } // If really close to 16:9 (episode image), just return 16:9 - var aspect16x9 = 16 / 9; + const aspect16x9 = 16 / 9; if (Math.abs(aspect16x9 - result) <= 0.2) { return aspect16x9; } @@ -186,7 +186,7 @@ import 'css!./style'; } // If really close to 4:3 (poster image), just return 2:3 - var aspect4x3 = 4 / 3; + const aspect4x3 = 4 / 3; if (Math.abs(aspect4x3 - result) <= 0.15) { return aspect4x3; } @@ -195,8 +195,8 @@ import 'css!./style'; } export function fillImages(elems) { - for (var i = 0, length = elems.length; i < length; i++) { - var elem = elems[0]; + for (let i = 0, length = elems.length; i < length; i++) { + const elem = elems[0]; fillImage(elem); } } diff --git a/src/components/listview/listview.js b/src/components/listview/listview.js index 7837003250..e0fbc2fd2e 100644 --- a/src/components/listview/listview.js +++ b/src/components/listview/listview.js @@ -256,8 +256,8 @@ import 'emby-playstatebutton'; } if (options.image !== false) { - var imgUrl = options.imageSource === 'channel' ? getChannelImageUrl(item, downloadWidth) : getImageUrl(item, downloadWidth); - var imageClass = isLargeStyle ? 'listItemImage listItemImage-large' : 'listItemImage'; + const imgUrl = options.imageSource === 'channel' ? getChannelImageUrl(item, downloadWidth) : getImageUrl(item, downloadWidth); + let imageClass = isLargeStyle ? 'listItemImage listItemImage-large' : 'listItemImage'; if (isLargeStyle && layoutManager.tv) { imageClass += ' listItemImage-large-tv'; diff --git a/src/components/metadataEditor/metadataEditor.js b/src/components/metadataEditor/metadataEditor.js index e2ff2a6b56..b768e77c4f 100644 --- a/src/components/metadataEditor/metadataEditor.js +++ b/src/components/metadataEditor/metadataEditor.js @@ -239,7 +239,7 @@ import 'flexStyles'; } function afterDeleted(context, item) { - var parentId = item.ParentId || item.SeasonId || item.SeriesId; + const parentId = item.ParentId || item.SeasonId || item.SeriesId; if (parentId) { reload(context, parentId, item.ServerId); @@ -252,7 +252,7 @@ import 'flexStyles'; function showMoreMenu(context, button, user) { import('itemContextMenu').then(({default: itemContextMenu}) => { - var item = currentItem; + const item = currentItem; itemContextMenu.show({ item: item, diff --git a/src/components/nowPlayingBar/nowPlayingBar.js b/src/components/nowPlayingBar/nowPlayingBar.js index d9521c4c9e..6218197700 100644 --- a/src/components/nowPlayingBar/nowPlayingBar.js +++ b/src/components/nowPlayingBar/nowPlayingBar.js @@ -582,7 +582,7 @@ import 'emby-ratingbutton'; function onPlaybackStart(e, state) { console.debug('nowplaying event: ' + e.type); - var player = this; + const player = this; onStateChanged.call(player, e, state); } diff --git a/src/components/packageManager.js b/src/components/packageManager.js index 2a15a14f34..c4b4701e9d 100644 --- a/src/components/packageManager.js +++ b/src/components/packageManager.js @@ -8,7 +8,7 @@ import pluginManager from 'pluginManager'; init() { console.groupCollapsed('loading packages'); - var manifestUrls = JSON.parse(appSettings.get(this.#settingsKey) || '[]'); + const manifestUrls = JSON.parse(appSettings.get(this.#settingsKey) || '[]'); return Promise.all(manifestUrls.map((url) => { return this.loadPackage(url); @@ -30,7 +30,7 @@ import pluginManager from 'pluginManager'; install(url) { return this.loadPackage(url, true).then((pkg) => { - var manifestUrls = JSON.parse(appSettings.get(this.#settingsKey) || '[]'); + const manifestUrls = JSON.parse(appSettings.get(this.#settingsKey) || '[]'); if (!manifestUrls.includes(url)) { manifestUrls.push(url); @@ -42,7 +42,7 @@ import pluginManager from 'pluginManager'; } uninstall(name) { - var pkg = this.#packagesList.filter((p) => { + const pkg = this.#packagesList.filter((p) => { return p.name === name; })[0]; @@ -58,12 +58,12 @@ import pluginManager from 'pluginManager'; } mapPath(pkg, pluginUrl) { - var urlLower = pluginUrl.toLowerCase(); + const urlLower = pluginUrl.toLowerCase(); if (urlLower.startsWith('http:') || urlLower.startsWith('https:') || urlLower.startsWith('file:')) { return pluginUrl; } - var packageUrl = pkg.url; + let packageUrl = pkg.url; packageUrl = packageUrl.substring(0, packageUrl.lastIndexOf('/')); packageUrl += '/'; @@ -81,7 +81,7 @@ import pluginManager from 'pluginManager'; } removeUrl(url) { - var manifestUrls = JSON.parse(appSettings.get(this.#settingsKey) || '[]'); + let manifestUrls = JSON.parse(appSettings.get(this.#settingsKey) || '[]'); manifestUrls = manifestUrls.filter((i) => { return i !== url; @@ -92,14 +92,14 @@ import pluginManager from 'pluginManager'; loadPackage(url, throwError = false) { return new Promise((resolve, reject) => { - var xhr = new XMLHttpRequest(); - var originalUrl = url; + const xhr = new XMLHttpRequest(); + const originalUrl = url; url += url.indexOf('?') === -1 ? '?' : '&'; url += 't=' + new Date().getTime(); xhr.open('GET', url, true); - var onError = () => { + const onError = () => { if (throwError === true) { reject(); } else { @@ -110,16 +110,16 @@ import pluginManager from 'pluginManager'; xhr.onload = () => { if (this.status < 400) { - var pkg = JSON.parse(this.response); + const pkg = JSON.parse(this.response); pkg.url = originalUrl; this.addPackage(pkg); - var plugins = pkg.plugins || []; + const plugins = pkg.plugins || []; if (pkg.plugin) { plugins.push(pkg.plugin); } - var promises = plugins.map((pluginUrl) => { + const promises = plugins.map((pluginUrl) => { return pluginManager.loadPlugin(this.mapPath(pkg, pluginUrl)); }); Promise.all(promises).then(resolve, resolve); diff --git a/src/components/playback/brightnessosd.js b/src/components/playback/brightnessosd.js index 9d5db62fe0..78c40d10c1 100644 --- a/src/components/playback/brightnessosd.js +++ b/src/components/playback/brightnessosd.js @@ -5,15 +5,15 @@ import browser from 'browser'; import 'css!./iconosd'; import 'material-icons'; -var currentPlayer; -var osdElement; -var iconElement; -var progressElement; +let currentPlayer; +let osdElement; +let iconElement; +let progressElement; -var enableAnimation; +let enableAnimation; function getOsdElementHtml() { - var html = ''; + let html = ''; html += ''; @@ -23,7 +23,7 @@ function getOsdElementHtml() { } function ensureOsdElement() { - var elem = osdElement; + let elem = osdElement; if (!elem) { enableAnimation = browser.supportsCssAnimation(); @@ -46,11 +46,11 @@ function onHideComplete() { this.classList.add('hide'); } -var hideTimeout; +let hideTimeout; function showOsd() { clearHideTimeout(); - var elem = osdElement; + const elem = osdElement; dom.removeEventListener(elem, dom.whichTransitionEvent(), onHideComplete, { once: true @@ -78,7 +78,7 @@ function clearHideTimeout() { function hideOsd() { clearHideTimeout(); - var elem = osdElement; + const elem = osdElement; if (elem) { if (enableAnimation) { // trigger reflow @@ -118,7 +118,7 @@ function updateElementsFromPlayer(brightness) { } function releaseCurrentPlayer() { - var player = currentPlayer; + const player = currentPlayer; if (player) { events.off(player, 'brightnesschange', onBrightnessChanged); @@ -128,7 +128,7 @@ function releaseCurrentPlayer() { } function onBrightnessChanged(e) { - var player = this; + const player = this; ensureOsdElement(); diff --git a/src/components/playback/nowplayinghelper.js b/src/components/playback/nowplayinghelper.js index d7f9d04865..a2b72ca84f 100644 --- a/src/components/playback/nowplayinghelper.js +++ b/src/components/playback/nowplayinghelper.js @@ -1,7 +1,7 @@ export function getNowPlayingNames(nowPlayingItem, includeNonNameInfo) { - var topItem = nowPlayingItem; - var bottomItem = null; - var topText = nowPlayingItem.Name; + let topItem = nowPlayingItem; + let bottomItem = null; + let topText = nowPlayingItem.Name; if (nowPlayingItem.AlbumId && nowPlayingItem.MediaType === 'Audio') { topItem = { @@ -21,7 +21,7 @@ export function getNowPlayingNames(nowPlayingItem, includeNonNameInfo) { } } - var bottomText = ''; + let bottomText = ''; if (nowPlayingItem.ArtistItems && nowPlayingItem.ArtistItems.length) { bottomItem = { @@ -56,7 +56,7 @@ export function getNowPlayingNames(nowPlayingItem, includeNonNameInfo) { bottomText = nowPlayingItem.ProductionYear; } - var list = []; + const list = []; list.push({ text: topText, diff --git a/src/components/playback/playbackorientation.js b/src/components/playback/playbackorientation.js index b73377bade..f585f25ae1 100644 --- a/src/components/playback/playbackorientation.js +++ b/src/components/playback/playbackorientation.js @@ -2,7 +2,7 @@ import playbackManager from 'playbackManager'; import layoutManager from 'layoutManager'; import events from 'events'; -var orientationLocked; +let orientationLocked; function onOrientationChangeSuccess() { orientationLocked = true; @@ -14,15 +14,15 @@ function onOrientationChangeError(err) { } events.on(playbackManager, 'playbackstart', function (e, player, state) { - var isLocalVideo = player.isLocalPlayer && !player.isExternalPlayer && playbackManager.isPlayingVideo(player); + const isLocalVideo = player.isLocalPlayer && !player.isExternalPlayer && playbackManager.isPlayingVideo(player); if (isLocalVideo && layoutManager.mobile) { /* eslint-disable-next-line compat/compat */ - var lockOrientation = window.screen.lockOrientation || window.screen.mozLockOrientation || window.screen.msLockOrientation || (window.screen.orientation && window.screen.orientation.lock); + const lockOrientation = window.screen.lockOrientation || window.screen.mozLockOrientation || window.screen.msLockOrientation || (window.screen.orientation && window.screen.orientation.lock); if (lockOrientation) { try { - var promise = lockOrientation('landscape'); + const promise = lockOrientation('landscape'); if (promise.then) { promise.then(onOrientationChangeSuccess, onOrientationChangeError); } else { @@ -39,7 +39,7 @@ events.on(playbackManager, 'playbackstart', function (e, player, state) { events.on(playbackManager, 'playbackstop', function (e, playbackStopInfo) { if (orientationLocked && !playbackStopInfo.nextMediaType) { /* eslint-disable-next-line compat/compat */ - var unlockOrientation = window.screen.unlockOrientation || window.screen.mozUnlockOrientation || window.screen.msUnlockOrientation || (window.screen.orientation && window.screen.orientation.unlock); + const unlockOrientation = window.screen.unlockOrientation || window.screen.mozUnlockOrientation || window.screen.msUnlockOrientation || (window.screen.orientation && window.screen.orientation.unlock); if (unlockOrientation) { try { diff --git a/src/components/playback/playerSelectionMenu.js b/src/components/playback/playerSelectionMenu.js index 0afa56faf4..38ff399a9e 100644 --- a/src/components/playback/playerSelectionMenu.js +++ b/src/components/playback/playerSelectionMenu.js @@ -9,7 +9,7 @@ import appHost from 'apphost'; import * as autocast from 'autocast'; function mirrorItem(info, player) { - var item = info.item; + const item = info.item; playbackManager.displayContent({ @@ -22,7 +22,7 @@ function mirrorItem(info, player) { function mirrorIfEnabled(info) { if (info && playbackManager.enableDisplayMirroring()) { - var getPlayerInfo = playbackManager.getPlayerInfo(); + const getPlayerInfo = playbackManager.getPlayerInfo(); if (getPlayerInfo) { if (!getPlayerInfo.isLocalPlayer && getPlayerInfo.supportedCommands.indexOf('DisplayContent') !== -1) { @@ -45,7 +45,7 @@ function getTargetSecondaryText(target) { } function getIcon(target) { - var deviceType = target.deviceType; + let deviceType = target.deviceType; if (!deviceType && target.isLocalPlayer) { if (browser.tv) { @@ -78,7 +78,7 @@ function getIcon(target) { } export function show(button) { - var currentPlayerInfo = playbackManager.getPlayerInfo(); + const currentPlayerInfo = playbackManager.getPlayerInfo(); if (currentPlayerInfo) { if (!currentPlayerInfo.isLocalPlayer) { @@ -87,13 +87,13 @@ export function show(button) { } } - var currentPlayerId = currentPlayerInfo ? currentPlayerInfo.id : null; + const currentPlayerId = currentPlayerInfo ? currentPlayerInfo.id : null; loading.show(); playbackManager.getTargets().then(function (targets) { - var menuItems = targets.map(function (t) { - var name = t.name; + const menuItems = targets.map(function (t) { + let name = t.name; if (t.appName && t.appName !== t.name) { name += ' - ' + t.appName; @@ -111,7 +111,7 @@ export function show(button) { import('actionsheet').then(({default: actionsheet}) => { loading.hide(); - var menuOptions = { + const menuOptions = { title: globalize.translate('HeaderPlayOn'), items: menuItems, positionTo: button, @@ -127,7 +127,7 @@ export function show(button) { } actionsheet.show(menuOptions).then(function (id) { - var target = targets.filter(function (t) { + const target = targets.filter(function (t) { return t.id === id; })[0]; @@ -153,7 +153,7 @@ function showActivePlayerMenu(playerInfo) { function disconnectFromPlayer(currentDeviceName) { if (playbackManager.getSupportedCommands().indexOf('EndSession') !== -1) { import('dialog').then(({default: dialog}) => { - var menuItems = []; + const menuItems = []; menuItems.push({ name: globalize.translate('Yes'), @@ -188,9 +188,9 @@ function disconnectFromPlayer(currentDeviceName) { } function showActivePlayerMenuInternal(dialogHelper, playerInfo) { - var html = ''; + let html = ''; - var dialogOptions = { + const dialogOptions = { removeOnClose: true }; @@ -199,11 +199,11 @@ function showActivePlayerMenuInternal(dialogHelper, playerInfo) { dialogOptions.exitAnimationDuration = 160; dialogOptions.autoFocus = false; - var dlg = dialogHelper.createDialog(dialogOptions); + const dlg = dialogHelper.createDialog(dialogOptions); dlg.classList.add('promptDialog'); - var currentDeviceName = (playerInfo.deviceName || playerInfo.name); + const currentDeviceName = (playerInfo.deviceName || playerInfo.name); html += '
    '; html += '

    '; @@ -214,7 +214,7 @@ function showActivePlayerMenuInternal(dialogHelper, playerInfo) { if (playerInfo.supportedCommands.indexOf('DisplayContent') !== -1) { html += ''; @@ -224,7 +224,7 @@ function showActivePlayerMenuInternal(dialogHelper, playerInfo) { if (autocast.supported()) { html += '
    '; @@ -240,21 +240,21 @@ function showActivePlayerMenuInternal(dialogHelper, playerInfo) { html += '

    '; dlg.innerHTML = html; - var chkMirror = dlg.querySelector('.chkMirror'); + const chkMirror = dlg.querySelector('.chkMirror'); if (chkMirror) { chkMirror.addEventListener('change', onMirrorChange); } - var chkAutoCast = dlg.querySelector('.chkAutoCast'); + const chkAutoCast = dlg.querySelector('.chkAutoCast'); if (chkAutoCast) { chkAutoCast.addEventListener('change', onAutoCastChange); } - var destination = ''; + let destination = ''; - var btnRemoteControl = dlg.querySelector('.btnRemoteControl'); + const btnRemoteControl = dlg.querySelector('.btnRemoteControl'); if (btnRemoteControl) { btnRemoteControl.addEventListener('click', function () { destination = 'nowplaying'; @@ -289,8 +289,8 @@ function onAutoCastChange() { } document.addEventListener('viewshow', function (e) { - var state = e.detail.state || {}; - var item = state.item; + const state = e.detail.state || {}; + const item = state.item; if (item && item.ServerId) { mirrorIfEnabled({ diff --git a/src/components/playback/playersettingsmenu.js b/src/components/playback/playersettingsmenu.js index 77f22b6b6c..40819f62ea 100644 --- a/src/components/playback/playersettingsmenu.js +++ b/src/components/playback/playersettingsmenu.js @@ -4,13 +4,13 @@ import globalize from 'globalize'; import qualityoptions from 'qualityoptions'; function showQualityMenu(player, btn) { - var videoStream = playbackManager.currentMediaSource(player).MediaStreams.filter(function (stream) { + const videoStream = playbackManager.currentMediaSource(player).MediaStreams.filter(function (stream) { return stream.Type === 'Video'; })[0]; - var videoWidth = videoStream ? videoStream.Width : null; - var videoHeight = videoStream ? videoStream.Height : null; + const videoWidth = videoStream ? videoStream.Width : null; + const videoHeight = videoStream ? videoStream.Height : null; - var options = qualityoptions.getVideoQualityOptions({ + const options = qualityoptions.getVideoQualityOptions({ currentMaxBitrate: playbackManager.getMaxStreamingBitrate(player), isAutomaticBitrateEnabled: playbackManager.enableAutomaticBitrateDetection(player), videoWidth: videoWidth, @@ -18,8 +18,8 @@ function showQualityMenu(player, btn) { enableAuto: true }); - var menuItems = options.map(function (o) { - var opt = { + const menuItems = options.map(function (o) { + const opt = { name: o.name, id: o.bitrate, asideText: o.secondaryText @@ -32,7 +32,7 @@ function showQualityMenu(player, btn) { return opt; }); - var selectedId = options.filter(function (o) { + let selectedId = options.filter(function (o) { return o.selected; }); @@ -42,7 +42,7 @@ function showQualityMenu(player, btn) { items: menuItems, positionTo: btn }).then(function (id) { - var bitrate = parseInt(id); + const bitrate = parseInt(id); if (bitrate !== selectedId) { playbackManager.setMaxStreamingBitrate({ enableAutomaticBitrateDetection: bitrate ? false : true, @@ -53,8 +53,8 @@ function showQualityMenu(player, btn) { } function showRepeatModeMenu(player, btn) { - var menuItems = []; - var currentValue = playbackManager.getRepeatMode(player); + const menuItems = []; + const currentValue = playbackManager.getRepeatMode(player); menuItems.push({ name: globalize.translate('RepeatAll'), @@ -85,16 +85,16 @@ function showRepeatModeMenu(player, btn) { } function getQualitySecondaryText(player) { - var state = playbackManager.getPlayerState(player); + const state = playbackManager.getPlayerState(player); - var videoStream = playbackManager.currentMediaSource(player).MediaStreams.filter(function (stream) { + const videoStream = playbackManager.currentMediaSource(player).MediaStreams.filter(function (stream) { return stream.Type === 'Video'; })[0]; - var videoWidth = videoStream ? videoStream.Width : null; - var videoHeight = videoStream ? videoStream.Height : null; + const videoWidth = videoStream ? videoStream.Width : null; + const videoHeight = videoStream ? videoStream.Height : null; - var options = qualityoptions.getVideoQualityOptions({ + const options = qualityoptions.getVideoQualityOptions({ currentMaxBitrate: playbackManager.getMaxStreamingBitrate(player), isAutomaticBitrateEnabled: playbackManager.enableAutomaticBitrateDetection(player), videoWidth: videoWidth, @@ -102,7 +102,7 @@ function getQualitySecondaryText(player) { enableAuto: true }); - var selectedOption = options.filter(function (o) { + let selectedOption = options.filter(function (o) { return o.selected; }); @@ -111,7 +111,7 @@ function getQualitySecondaryText(player) { } selectedOption = selectedOption[0]; - var text = selectedOption.name; + let text = selectedOption.name; if (selectedOption.autoText) { if (state.PlayState && state.PlayState.PlayMethod !== 'Transcode') { @@ -126,8 +126,8 @@ function getQualitySecondaryText(player) { function showAspectRatioMenu(player, btn) { // each has a name and id - var currentId = playbackManager.getAspectRatio(player); - var menuItems = playbackManager.getSupportedAspectRatios(player).map(function (i) { + const currentId = playbackManager.getAspectRatio(player); + const menuItems = playbackManager.getSupportedAspectRatios(player).map(function (i) { return { id: i.id, name: i.name, @@ -171,12 +171,12 @@ function showPlaybackRateMenu(player, btn) { } function showWithUser(options, player, user) { - var supportedCommands = playbackManager.getSupportedCommands(player); + const supportedCommands = playbackManager.getSupportedCommands(player); - var menuItems = []; + const menuItems = []; if (supportedCommands.indexOf('SetAspectRatio') !== -1) { - var currentAspectRatioId = playbackManager.getAspectRatio(player); - var currentAspectRatio = playbackManager.getSupportedAspectRatios(player).filter(function (i) { + const currentAspectRatioId = playbackManager.getAspectRatio(player); + const currentAspectRatio = playbackManager.getSupportedAspectRatios(player).filter(function (i) { return i.id === currentAspectRatioId; })[0]; @@ -199,7 +199,7 @@ function showWithUser(options, player, user) { } if (user && user.Policy.EnableVideoPlaybackTranscoding) { - var secondaryQualityText = getQualitySecondaryText(player); + const secondaryQualityText = getQualitySecondaryText(player); menuItems.push({ name: globalize.translate('Quality'), @@ -208,7 +208,7 @@ function showWithUser(options, player, user) { }); } - var repeatMode = playbackManager.getRepeatMode(player); + const repeatMode = playbackManager.getRepeatMode(player); if (supportedCommands.indexOf('SetRepeatMode') !== -1 && playbackManager.currentMediaSource(player).RunTimeTicks) { menuItems.push({ @@ -243,14 +243,14 @@ function showWithUser(options, player, user) { } export function show(options) { - var player = options.player; - var currentItem = playbackManager.currentItem(player); + const player = options.player; + const currentItem = playbackManager.currentItem(player); if (!currentItem || !currentItem.ServerId) { return showWithUser(options, player, null); } - var apiClient = window.connectionManager.getApiClient(currentItem.ServerId); + const apiClient = window.connectionManager.getApiClient(currentItem.ServerId); return apiClient.getCurrentUser().then(function (user) { return showWithUser(options, player, user); }); diff --git a/src/components/playback/volumeosd.js b/src/components/playback/volumeosd.js index 8a6f534b52..c35914b192 100644 --- a/src/components/playback/volumeosd.js +++ b/src/components/playback/volumeosd.js @@ -5,15 +5,15 @@ import browser from 'browser'; import 'css!./iconosd'; import 'material-icons'; -var currentPlayer; -var osdElement; -var iconElement; -var progressElement; +let currentPlayer; +let osdElement; +let iconElement; +let progressElement; -var enableAnimation; +let enableAnimation; function getOsdElementHtml() { - var html = ''; + let html = ''; html += ''; @@ -23,7 +23,7 @@ function getOsdElementHtml() { } function ensureOsdElement() { - var elem = osdElement; + let elem = osdElement; if (!elem) { enableAnimation = browser.supportsCssAnimation(); @@ -46,11 +46,11 @@ function onHideComplete() { this.classList.add('hide'); } -var hideTimeout; +let hideTimeout; function showOsd() { clearHideTimeout(); - var elem = osdElement; + const elem = osdElement; dom.removeEventListener(elem, dom.whichTransitionEvent(), onHideComplete, { once: true @@ -78,7 +78,7 @@ function clearHideTimeout() { function hideOsd() { clearHideTimeout(); - var elem = osdElement; + const elem = osdElement; if (elem) { if (enableAnimation) { // trigger reflow @@ -108,7 +108,7 @@ function updatePlayerVolumeState(isMuted, volume) { } function releaseCurrentPlayer() { - var player = currentPlayer; + const player = currentPlayer; if (player) { events.off(player, 'volumechange', onVolumeChanged); @@ -118,7 +118,7 @@ function releaseCurrentPlayer() { } function onVolumeChanged(e) { - var player = this; + const player = this; ensureOsdElement(); diff --git a/src/components/playerstats/playerstats.js b/src/components/playerstats/playerstats.js index 5345ed8bcc..e100dee594 100644 --- a/src/components/playerstats/playerstats.js +++ b/src/components/playerstats/playerstats.js @@ -413,7 +413,7 @@ import 'css!./playerstats'; name: 'Original Media Info' }); - var apiClient = window.connectionManager.getApiClient(playbackManager.currentItem(player).ServerId); + const apiClient = window.connectionManager.getApiClient(playbackManager.currentItem(player).ServerId); if (syncPlayManager.isSyncPlayEnabled() && apiClient.isMinServerVersion('10.6.0')) { categories.push({ stats: getSyncPlayStats(), diff --git a/src/components/playmenu.js b/src/components/playmenu.js index c537993ef6..57ee5ca6e3 100644 --- a/src/components/playmenu.js +++ b/src/components/playmenu.js @@ -4,11 +4,11 @@ import playbackManager from 'playbackManager'; import globalize from 'globalize'; export function show(options) { - var item = options.item; + const item = options.item; - var resumePositionTicks = item.UserData ? item.UserData.PlaybackPositionTicks : null; + const resumePositionTicks = item.UserData ? item.UserData.PlaybackPositionTicks : null; - var playableItemId = item.Type === 'Program' ? item.ChannelId : item.Id; + const playableItemId = item.Type === 'Program' ? item.ChannelId : item.Id; if (!resumePositionTicks || item.IsFolder) { playbackManager.play({ @@ -18,7 +18,7 @@ export function show(options) { return; } - var menuItems = []; + const menuItems = []; menuItems.push({ name: globalize.translate('ResumeAt', datetime.getDisplayRunningTime(resumePositionTicks)), diff --git a/src/components/pluginManager.js b/src/components/pluginManager.js index 55a5c230ff..c07c77b736 100644 --- a/src/components/pluginManager.js +++ b/src/components/pluginManager.js @@ -3,7 +3,7 @@ import globalize from 'globalize'; /* eslint-disable indent */ // TODO: replace with each plugin version - var cacheParam = new Date().getTime(); + const cacheParam = new Date().getTime(); class PluginManager { pluginsList = []; @@ -13,7 +13,7 @@ import globalize from 'globalize'; } #loadStrings(plugin) { - var strings = plugin.getTranslations ? plugin.getTranslations() : []; + const strings = plugin.getTranslations ? plugin.getTranslations() : []; return globalize.loadStrings({ name: plugin.id || plugin.packageName, strings: strings @@ -56,10 +56,10 @@ import globalize from 'globalize'; return new Promise((resolve, reject) => { require([pluginSpec], (pluginFactory) => { - var plugin = pluginFactory.default ? new pluginFactory.default() : new pluginFactory(); + const plugin = pluginFactory.default ? new pluginFactory.default() : new pluginFactory(); // See if it's already installed - var existing = this.pluginsList.filter(function (p) { + const existing = this.pluginsList.filter(function (p) { return p.id === plugin.id; })[0]; @@ -69,10 +69,10 @@ import globalize from 'globalize'; plugin.installUrl = pluginSpec; - var separatorIndex = Math.max(pluginSpec.lastIndexOf('/'), pluginSpec.lastIndexOf('\\')); + const separatorIndex = Math.max(pluginSpec.lastIndexOf('/'), pluginSpec.lastIndexOf('\\')); plugin.baseUrl = pluginSpec.substring(0, separatorIndex); - var paths = {}; + const paths = {}; paths[plugin.id] = plugin.baseUrl; requirejs.config({ @@ -135,7 +135,7 @@ import globalize from 'globalize'; })[0]; } - var url = plugin.baseUrl + '/' + path; + let url = plugin.baseUrl + '/' + path; if (addCacheParam) { url += url.includes('?') ? '&' : '?'; diff --git a/src/components/qualityOptions.js b/src/components/qualityOptions.js index 63d9557c7b..93a8d5fe73 100644 --- a/src/components/qualityOptions.js +++ b/src/components/qualityOptions.js @@ -1,9 +1,9 @@ import globalize from 'globalize'; export function getVideoQualityOptions(options) { - var maxStreamingBitrate = options.currentMaxBitrate; - var videoWidth = options.videoWidth; - var videoHeight = options.videoHeight; + const maxStreamingBitrate = options.currentMaxBitrate; + let videoWidth = options.videoWidth; + const videoHeight = options.videoHeight; // If the aspect ratio is less than 16/9 (1.77), set the width as if it were pillarboxed. // 4:3 1440x1080 -> 1920x1080 @@ -11,9 +11,9 @@ export function getVideoQualityOptions(options) { videoWidth = videoHeight * (16 / 9); } - var maxAllowedWidth = videoWidth || 4096; + const maxAllowedWidth = videoWidth || 4096; - var qualityOptions = []; + const qualityOptions = []; if (maxAllowedWidth >= 3800) { qualityOptions.push({ name: '4K - 120 Mbps', maxHeight: 2160, bitrate: 120000000 }); @@ -65,7 +65,7 @@ export function getVideoQualityOptions(options) { qualityOptions.push({ name: '240p', maxHeight: 240, bitrate: 320000 }); qualityOptions.push({ name: '144p', maxHeight: 144, bitrate: 192000 }); - var autoQualityOption = { + const autoQualityOption = { name: globalize.translate('Auto'), bitrate: 0, selected: options.isAutomaticBitrateEnabled @@ -76,9 +76,9 @@ export function getVideoQualityOptions(options) { } if (maxStreamingBitrate) { - var selectedIndex = -1; - for (var i = 0, length = qualityOptions.length; i < length; i++) { - var option = qualityOptions[i]; + let selectedIndex = -1; + for (let i = 0, length = qualityOptions.length; i < length; i++) { + const option = qualityOptions[i]; if (selectedIndex === -1 && option.bitrate <= maxStreamingBitrate) { selectedIndex = i; @@ -89,7 +89,7 @@ export function getVideoQualityOptions(options) { selectedIndex = qualityOptions.length - 1; } - var currentQualityOption = qualityOptions[selectedIndex]; + const currentQualityOption = qualityOptions[selectedIndex]; if (!options.isAutomaticBitrateEnabled) { currentQualityOption.selected = true; @@ -102,9 +102,9 @@ export function getVideoQualityOptions(options) { } export function getAudioQualityOptions(options) { - var maxStreamingBitrate = options.currentMaxBitrate; + const maxStreamingBitrate = options.currentMaxBitrate; - var qualityOptions = []; + const qualityOptions = []; qualityOptions.push({ name: '2 Mbps', bitrate: 2000000 }); qualityOptions.push({ name: '1.5 Mbps', bitrate: 1500000 }); @@ -116,7 +116,7 @@ export function getAudioQualityOptions(options) { qualityOptions.push({ name: '96 kbps', bitrate: 96000 }); qualityOptions.push({ name: '64 kbps', bitrate: 64000 }); - var autoQualityOption = { + const autoQualityOption = { name: globalize.translate('Auto'), bitrate: 0, selected: options.isAutomaticBitrateEnabled @@ -127,9 +127,9 @@ export function getAudioQualityOptions(options) { } if (maxStreamingBitrate) { - var selectedIndex = -1; - for (var i = 0, length = qualityOptions.length; i < length; i++) { - var option = qualityOptions[i]; + let selectedIndex = -1; + for (let i = 0, length = qualityOptions.length; i < length; i++) { + const option = qualityOptions[i]; if (selectedIndex === -1 && option.bitrate <= maxStreamingBitrate) { selectedIndex = i; @@ -140,7 +140,7 @@ export function getAudioQualityOptions(options) { selectedIndex = qualityOptions.length - 1; } - var currentQualityOption = qualityOptions[selectedIndex]; + const currentQualityOption = qualityOptions[selectedIndex]; if (!options.isAutomaticBitrateEnabled) { currentQualityOption.selected = true; diff --git a/src/components/require/requirecss.js b/src/components/require/requirecss.js index 8aaa04d689..ca6910e319 100644 --- a/src/components/require/requirecss.js +++ b/src/components/require/requirecss.js @@ -1,7 +1,7 @@ define(function () { 'use strict'; - var requireCss = {}; + const requireCss = {}; requireCss.normalize = function (name, normalize) { if (name.substr(name.length - 4, 4) === '.css') { @@ -11,7 +11,7 @@ define(function () { return normalize(name); }; - var importedCss = []; + let importedCss = []; function isLoaded(url) { return importedCss.indexOf(url) !== -1; @@ -27,14 +27,14 @@ define(function () { requireCss.load = function (cssId, req, load, config) { // Somehow if the url starts with /css, require will get all screwed up since this extension is also called css - var srch = 'components/require/requirecss'; - var index = cssId.indexOf(srch); + const srch = 'components/require/requirecss'; + const index = cssId.indexOf(srch); if (index !== -1) { cssId = 'css' + cssId.substring(index + srch.length); } - var url = cssId + '.css'; + let url = cssId + '.css'; if (url.indexOf('://') === -1) { url = config.baseUrl + url; @@ -43,13 +43,13 @@ define(function () { if (!isLoaded(url)) { importedCss.push(url); - var link = document.createElement('link'); + const link = document.createElement('link'); link.setAttribute('rel', 'stylesheet'); link.setAttribute('type', 'text/css'); link.onload = load; - var linkUrl = url; + let linkUrl = url; if (config.urlArgs) { linkUrl += config.urlArgs(cssId, url); diff --git a/src/components/require/requiretext.js b/src/components/require/requiretext.js index 28ddeb21c8..12822a29e7 100644 --- a/src/components/require/requiretext.js +++ b/src/components/require/requiretext.js @@ -2,7 +2,7 @@ define(function () { 'use strict'; // hack to work around the server's auto-redirection feature - var addRedirectPrevention = window.dashboardVersion != null && window.Dashboard && !window.AppInfo.isNativeApp; + const addRedirectPrevention = window.dashboardVersion != null && window.Dashboard && !window.AppInfo.isNativeApp; return { @@ -25,7 +25,7 @@ define(function () { url += 'r=0'; } - var xhr = new XMLHttpRequest(); + const xhr = new XMLHttpRequest(); xhr.open('GET', url, true); xhr.onload = function (e) { diff --git a/src/components/serviceworker/notifications.js b/src/components/serviceworker/notifications.js index 9b50553244..cc2ee65320 100644 --- a/src/components/serviceworker/notifications.js +++ b/src/components/serviceworker/notifications.js @@ -2,7 +2,7 @@ (function () { 'use strict'; - var connectionManager; + let connectionManager; function getApiClient(serverId) { if (connectionManager) { @@ -28,12 +28,12 @@ /* eslint-disable-next-line no-restricted-globals -- self is valid in a serviceworker environment */ self.addEventListener('notificationclick', function (event) { - var notification = event.notification; + const notification = event.notification; notification.close(); - var data = notification.data; - var serverId = data.serverId; - var action = event.action; + const data = notification.data; + const serverId = data.serverId; + const action = event.action; if (!action) { clients.openWindow('/'); diff --git a/src/components/syncPlay/groupSelectionMenu.js b/src/components/syncPlay/groupSelectionMenu.js index 655dc76010..b554817b8c 100644 --- a/src/components/syncPlay/groupSelectionMenu.js +++ b/src/components/syncPlay/groupSelectionMenu.js @@ -12,7 +12,7 @@ import playbackPermissionManager from 'playbackPermissionManager'; * @returns {string} The player's id. */ function getActivePlayerId () { - var info = playbackManager.getPlayerInfo(); + const info = playbackManager.getPlayerInfo(); return info ? info.id : null; } @@ -38,7 +38,7 @@ function showNewJoinGroupSelection (button, user, apiClient) { apiClient.getSyncPlayGroups().then(function (response) { response.json().then(function (groups) { - var menuItems = groups.map(function (group) { + const menuItems = groups.map(function (group) { return { name: group.PlayingItemName, icon: 'group', @@ -72,7 +72,7 @@ function showNewJoinGroupSelection (button, user, apiClient) { return; } - var menuOptions = { + const menuOptions = { title: globalize.translate('HeaderSyncPlaySelectGroup'), items: menuItems, positionTo: button, @@ -129,7 +129,7 @@ function showLeaveGroupSelection (button, user, apiClient) { secondaryText: globalize.translate('LabelSyncPlayLeaveGroupDescription') }]; - var menuOptions = { + const menuOptions = { title: globalize.translate('HeaderSyncPlayEnabled'), items: menuItems, positionTo: button, diff --git a/src/components/syncPlay/syncPlayManager.js b/src/components/syncPlay/syncPlayManager.js index 3be3a3cedf..c72d20a111 100644 --- a/src/components/syncPlay/syncPlayManager.js +++ b/src/components/syncPlay/syncPlayManager.js @@ -40,7 +40,7 @@ function waitForEventOnce(emitter, eventType, timeout) { * @returns {string} The player's id. */ function getActivePlayerId() { - var info = playbackManager.getPlayerInfo(); + const info = playbackManager.getPlayerInfo(); return info ? info.id : null; } @@ -276,7 +276,7 @@ class SyncPlayManager { * Removes the bindings to the current player's events. */ releaseCurrentPlayer () { - var player = this.currentPlayer; + const player = this.currentPlayer; if (player) { events.off(player, 'unpause', this._onPlayerUnpause); events.off(player, 'pause', this._onPlayerPause); @@ -426,7 +426,7 @@ class SyncPlayManager { serverId: serverId }).then(() => { waitForEventOnce(this, 'playbackstart', WaitForEventDefaultTimeout).then(() => { - var sessionId = getActivePlayerId(); + const sessionId = getActivePlayerId(); if (!sessionId) { console.error('Missing sessionId!'); toast({ @@ -659,7 +659,7 @@ class SyncPlayManager { * Overrides PlaybackManager's unpause method. */ playRequest (player) { - var apiClient = window.connectionManager.currentApiClient(); + const apiClient = window.connectionManager.currentApiClient(); apiClient.requestSyncPlayStart(); } @@ -667,7 +667,7 @@ class SyncPlayManager { * Overrides PlaybackManager's pause method. */ pauseRequest (player) { - var apiClient = window.connectionManager.currentApiClient(); + const apiClient = window.connectionManager.currentApiClient(); apiClient.requestSyncPlayPause(); // Pause locally as well, to give the user some little control playbackManager._localUnpause(player); @@ -677,7 +677,7 @@ class SyncPlayManager { * Overrides PlaybackManager's seek method. */ seekRequest (PositionTicks, player) { - var apiClient = window.connectionManager.currentApiClient(); + const apiClient = window.connectionManager.currentApiClient(); apiClient.requestSyncPlaySeek({ PositionTicks: PositionTicks }); diff --git a/src/components/tabbedview/tabbedview.js b/src/components/tabbedview/tabbedview.js index 710a0e3c40..4e7ccb6529 100644 --- a/src/components/tabbedview/tabbedview.js +++ b/src/components/tabbedview/tabbedview.js @@ -4,7 +4,7 @@ import layoutManager from 'layoutManager'; import 'emby-tabs'; function onViewDestroy(e) { - var tabControllers = this.tabControllers; + const tabControllers = this.tabControllers; if (tabControllers) { tabControllers.forEach(function (t) { @@ -32,9 +32,9 @@ class TabbedView { this.view = view; this.params = params; - var self = this; + const self = this; - var currentTabIndex = parseInt(params.tab || this.getDefaultTabIndex(params.parentId)); + let currentTabIndex = parseInt(params.tab || this.getDefaultTabIndex(params.parentId)); this.initialTabIndex = currentTabIndex; function validateTabLoad(index) { @@ -44,7 +44,7 @@ class TabbedView { function loadTab(index, previousIndex) { validateTabLoad(index).then(function () { self.getTabController(index).then(function (controller) { - var refresh = !controller.refreshed; + const refresh = !controller.refreshed; controller.onResume({ autoFocus: previousIndex == null && layoutManager.tv, @@ -64,10 +64,10 @@ class TabbedView { } function onTabChange(e) { - var newIndex = parseInt(e.detail.selectedTabIndex); - var previousIndex = e.detail.previousIndex; + const newIndex = parseInt(e.detail.selectedTabIndex); + const previousIndex = e.detail.previousIndex; - var previousTabController = previousIndex == null ? null : self.tabControllers[previousIndex]; + const previousTabController = previousIndex == null ? null : self.tabControllers[previousIndex]; if (previousTabController && previousTabController.onPause) { previousTabController.onPause(); } @@ -92,7 +92,7 @@ class TabbedView { this.setTitle(); backdrop.clearBackdrop(); - var currentTabController = this.currentTabController; + const currentTabController = this.currentTabController; if (!currentTabController) { mainTabsManager.selectedTabIndex(this.initialTabIndex); @@ -102,7 +102,7 @@ class TabbedView { } onPause() { - var currentTabController = this.currentTabController; + const currentTabController = this.currentTabController; if (currentTabController && currentTabController.onPause) { currentTabController.onPause(); diff --git a/src/controllers/dashboard/logs.js b/src/controllers/dashboard/logs.js index 7bf2785d50..e28c2ac12f 100644 --- a/src/controllers/dashboard/logs.js +++ b/src/controllers/dashboard/logs.js @@ -9,21 +9,21 @@ import 'flexStyles'; export default function(view, params) { view.addEventListener('viewbeforeshow', function() { loading.show(); - var apiClient = ApiClient; + const apiClient = ApiClient; apiClient.getJSON(apiClient.getUrl('System/Logs')).then(function(logs) { - var html = ''; + let html = ''; html += '
    '; html += logs.map(function(log) { - var logUrl = apiClient.getUrl('System/Logs/Log', { + let logUrl = apiClient.getUrl('System/Logs/Log', { name: log.Name }); logUrl += '&api_key=' + apiClient.accessToken(); - var logHtml = ''; + let logHtml = ''; logHtml += ''; logHtml += '
    '; logHtml += "

    " + log.Name + '

    '; - var date = datetime.parseISO8601Date(log.DateModified, true); - var text = datetime.toLocaleDateString(date); + const date = datetime.parseISO8601Date(log.DateModified, true); + let text = datetime.toLocaleDateString(date); text += ' ' + datetime.getDisplayTime(date); logHtml += '
    ' + text + '
    '; logHtml += '
    '; diff --git a/src/controllers/dashboard/plugins/repositories/index.js b/src/controllers/dashboard/plugins/repositories/index.js index 8d1cbf3164..3abee6c90f 100644 --- a/src/controllers/dashboard/plugins/repositories/index.js +++ b/src/controllers/dashboard/plugins/repositories/index.js @@ -42,10 +42,10 @@ function saveList(page) { } function populateList(options) { - var html = ''; + let html = ''; html += '
    '; - for (var i = 0; i < options.repositories.length; i++) { + for (let i = 0; i < options.repositories.length; i++) { html += getRepositoryHtml(options.repositories[i]); } @@ -59,7 +59,7 @@ function populateList(options) { } function getRepositoryHtml(repository) { - var html = ''; + let html = ''; html += '
    '; html += ``; @@ -93,9 +93,9 @@ export default function(view, params) { libraryMenu.setTabs('plugins', 2, getTabs); reloadList(this); - var save = this; + const save = this; $('#repositories', view).on('click', '.btnDelete', function() { - var button = this; + const button = this; repositories = repositories.filter(function (r) { return r.Url !== button.id; }); diff --git a/src/controllers/edititemmetadata.js b/src/controllers/edititemmetadata.js index 57c72dda28..dd51ba2581 100644 --- a/src/controllers/edititemmetadata.js +++ b/src/controllers/edititemmetadata.js @@ -20,7 +20,7 @@ export default function (view, params) { }); MetadataEditor.setCurrentItemId(null); view.querySelector('.libraryTree').addEventListener('itemclicked', function (event) { - var data = event.detail; + const data = event.detail; if (data.id != MetadataEditor.getCurrentItemId()) { MetadataEditor.setCurrentItemId(data.id); diff --git a/src/controllers/movies/moviesrecommended.js b/src/controllers/movies/moviesrecommended.js index 4036128b51..a53fa65437 100644 --- a/src/controllers/movies/moviesrecommended.js +++ b/src/controllers/movies/moviesrecommended.js @@ -395,7 +395,7 @@ import 'emby-button'; view.addEventListener('viewshow', function (e) { initTabs(); if (!view.getAttribute('data-title')) { - var parentId = params.topParentId; + const parentId = params.topParentId; if (parentId) { ApiClient.getItem(ApiClient.getCurrentUserId(), parentId).then(function (item) { diff --git a/src/controllers/music/musicrecommended.js b/src/controllers/music/musicrecommended.js index a93bfea4e3..580578e68d 100644 --- a/src/controllers/music/musicrecommended.js +++ b/src/controllers/music/musicrecommended.js @@ -56,7 +56,7 @@ import 'flexStyles'; EnableTotalRecordCount: false }; ApiClient.getJSON(ApiClient.getUrl('Users/' + userId + '/Items/Latest', options)).then(function (items) { - var elem = page.querySelector('#recentlyAddedSongs'); + const elem = page.querySelector('#recentlyAddedSongs'); elem.innerHTML = cardBuilder.getCardsHtml({ items: items, showUnplayedIndicator: false, @@ -103,7 +103,7 @@ import 'flexStyles'; elem.classList.add('hide'); } - var itemsContainer = elem.querySelector('.itemsContainer'); + const itemsContainer = elem.querySelector('.itemsContainer'); itemsContainer.innerHTML = cardBuilder.getCardsHtml({ items: result.Items, showUnplayedIndicator: false, @@ -145,7 +145,7 @@ import 'flexStyles'; elem.classList.add('hide'); } - var itemsContainer = elem.querySelector('.itemsContainer'); + const itemsContainer = elem.querySelector('.itemsContainer'); itemsContainer.innerHTML = cardBuilder.getCardsHtml({ items: result.Items, showUnplayedIndicator: false, diff --git a/src/controllers/session/login/index.js b/src/controllers/session/login/index.js index 274d752e49..1592e6b112 100644 --- a/src/controllers/session/login/index.js +++ b/src/controllers/session/login/index.js @@ -16,7 +16,7 @@ import 'emby-checkbox'; function authenticateUserByName(page, apiClient, username, password) { loading.show(); apiClient.authenticateUserByName(username, password).then(function (result) { - var user = result.User; + const user = result.User; loading.hide(); onLoginSuccessful(user.Id, result.AccessToken, apiClient); diff --git a/src/elements/emby-progressring/emby-progressring.js b/src/elements/emby-progressring/emby-progressring.js index 929b80a573..63b9f73f10 100644 --- a/src/elements/emby-progressring/emby-progressring.js +++ b/src/elements/emby-progressring/emby-progressring.js @@ -14,14 +14,14 @@ import 'webcomponents'; if (window.MutationObserver) { // create an observer instance - var observer = new MutationObserver(function (mutations) { + const observer = new MutationObserver(function (mutations) { mutations.forEach(function (mutation) { instance.setProgress(parseFloat(instance.getAttribute('data-progress') || '0')); }); }); // configuration of the observer: - var config = { attributes: true, childList: false, characterData: false }; + const config = { attributes: true, childList: false, characterData: false }; // pass in the target node, as well as the observer options observer.observe(instance, config); diff --git a/src/elements/emby-slider/emby-slider.js b/src/elements/emby-slider/emby-slider.js index 40d2e69bbb..555394af0d 100644 --- a/src/elements/emby-slider/emby-slider.js +++ b/src/elements/emby-slider/emby-slider.js @@ -54,7 +54,7 @@ import 'emby-input'; // Snap to step if (range.step !== 'any') { - var step = range.step || 1; + const step = range.step || 1; value = Math.round(value / step) * step; } diff --git a/src/legacy/focusPreventScroll.js b/src/legacy/focusPreventScroll.js index 93f53dca29..8f912207b5 100644 --- a/src/legacy/focusPreventScroll.js +++ b/src/legacy/focusPreventScroll.js @@ -2,16 +2,16 @@ if (HTMLElement.prototype.nativeFocus === undefined) { (function () { - var supportsPreventScrollOption = false; + let supportsPreventScrollOption = false; try { - var focusElem = document.createElement('div'); + const focusElem = document.createElement('div'); focusElem.addEventListener('focus', function(event) { event.preventDefault(); event.stopPropagation(); }, true); - var opts = Object.defineProperty({}, 'preventScroll', { + const opts = Object.defineProperty({}, 'preventScroll', { // eslint-disable-next-line getter-return get: function () { supportsPreventScrollOption = true; @@ -27,8 +27,8 @@ if (HTMLElement.prototype.nativeFocus === undefined) { HTMLElement.prototype.nativeFocus = HTMLElement.prototype.focus; HTMLElement.prototype.focus = function(options) { - var scrollX = window.scrollX; - var scrollY = window.scrollY; + const scrollX = window.scrollX; + const scrollY = window.scrollY; this.nativeFocus(); diff --git a/src/libraries/navdrawer/navdrawer.js b/src/libraries/navdrawer/navdrawer.js index 965b68aee4..ab50ec5831 100644 --- a/src/libraries/navdrawer/navdrawer.js +++ b/src/libraries/navdrawer/navdrawer.js @@ -14,26 +14,26 @@ export default function (options) { function onMenuTouchStart(e) { options.target.classList.remove('transition'); - var touches = getTouches(e); - var touch = touches[0] || {}; + const touches = getTouches(e); + const touch = touches[0] || {}; menuTouchStartX = touch.clientX; menuTouchStartY = touch.clientY; menuTouchStartTime = new Date().getTime(); } function setVelocity(deltaX) { - var time = new Date().getTime() - (menuTouchStartTime || 0); + const time = new Date().getTime() - (menuTouchStartTime || 0); velocity = Math.abs(deltaX) / time; } function onMenuTouchMove(e) { - var isOpen = self.visible; - var touches = getTouches(e); - var touch = touches[0] || {}; - var endX = touch.clientX || 0; - var endY = touch.clientY || 0; - var deltaX = endX - (menuTouchStartX || 0); - var deltaY = endY - (menuTouchStartY || 0); + const isOpen = self.visible; + const touches = getTouches(e); + const touch = touches[0] || {}; + const endX = touch.clientX || 0; + const endY = touch.clientY || 0; + const deltaX = endX - (menuTouchStartX || 0); + const deltaY = endY - (menuTouchStartY || 0); setVelocity(deltaX); if (isOpen && dragMode !== 1 && deltaX > 0) { @@ -58,12 +58,12 @@ export default function (options) { options.target.classList.add('transition'); scrollContainer.removeEventListener('scroll', disableEvent); dragMode = 0; - var touches = getTouches(e); - var touch = touches[0] || {}; - var endX = touch.clientX || 0; - var endY = touch.clientY || 0; - var deltaX = endX - (menuTouchStartX || 0); - var deltaY = endY - (menuTouchStartY || 0); + const touches = getTouches(e); + const touch = touches[0] || {}; + const endX = touch.clientX || 0; + const endY = touch.clientY || 0; + const deltaX = endX - (menuTouchStartX || 0); + const deltaY = endY - (menuTouchStartY || 0); currentPos = deltaX; self.checkMenuState(deltaX, deltaY); } @@ -105,20 +105,20 @@ export default function (options) { } function onBackgroundTouchStart(e) { - var touches = getTouches(e); - var touch = touches[0] || {}; + const touches = getTouches(e); + const touch = touches[0] || {}; backgroundTouchStartX = touch.clientX; backgroundTouchStartTime = new Date().getTime(); } function onBackgroundTouchMove(e) { - var touches = getTouches(e); - var touch = touches[0] || {}; - var endX = touch.clientX || 0; + const touches = getTouches(e); + const touch = touches[0] || {}; + const endX = touch.clientX || 0; if (endX <= options.width && self.isVisible) { countStart++; - var deltaX = endX - (backgroundTouchStartX || 0); + const deltaX = endX - (backgroundTouchStartX || 0); if (countStart == 1) { startPoint = deltaX; @@ -127,7 +127,7 @@ export default function (options) { dragMode = 1; newPos = deltaX - startPoint + options.width; self.changeMenuPos(); - var time = new Date().getTime() - (backgroundTouchStartTime || 0); + const time = new Date().getTime() - (backgroundTouchStartTime || 0); velocity = Math.abs(deltaX) / time; } } @@ -137,25 +137,25 @@ export default function (options) { } function onBackgroundTouchEnd(e) { - var touches = getTouches(e); - var touch = touches[0] || {}; - var endX = touch.clientX || 0; - var deltaX = endX - (backgroundTouchStartX || 0); + const touches = getTouches(e); + const touch = touches[0] || {}; + const endX = touch.clientX || 0; + const deltaX = endX - (backgroundTouchStartX || 0); self.checkMenuState(deltaX); countStart = 0; } function onMaskTransitionEnd() { - var classList = mask.classList; + const classList = mask.classList; if (!classList.contains('backdrop')) { classList.add('hide'); } } - var self; - var defaults; - var mask; + let self; + let defaults; + let mask; var newPos = 0; var currentPos = 0; var startPoint = 0; @@ -166,7 +166,7 @@ export default function (options) { var scrollContainer = options.target.querySelector('.mainDrawer-scrollContainer'); scrollContainer.classList.add('scrollY'); - var TouchMenuLA = function () { + const TouchMenuLA = function () { self = this; defaults = { width: 260, @@ -193,9 +193,9 @@ export default function (options) { } }; - var menuTouchStartX; - var menuTouchStartY; - var menuTouchStartTime; + let menuTouchStartX; + let menuTouchStartY; + let menuTouchStartTime; var edgeContainer = document.querySelector('.mainDrawerHandle'); var isPeeking = false; @@ -261,8 +261,8 @@ export default function (options) { } }; - var backgroundTouchStartX; - var backgroundTouchStartTime; + let backgroundTouchStartX; + let backgroundTouchStartTime; TouchMenuLA.prototype.showMask = function () { mask.classList.remove('hide'); @@ -280,7 +280,7 @@ export default function (options) { } }; - var _edgeSwipeEnabled; + let _edgeSwipeEnabled; TouchMenuLA.prototype.setEdgeSwipeEnabled = function (enabled) { if (!options.disableEdgeSwipe) { diff --git a/src/libraries/scroller.js b/src/libraries/scroller.js index dbb3de16e3..de6469c743 100644 --- a/src/libraries/scroller.js +++ b/src/libraries/scroller.js @@ -56,14 +56,14 @@ function within(number, min, max) { } // Other global values -var dragMouseEvents = ['mousemove', 'mouseup']; -var dragTouchEvents = ['touchmove', 'touchend']; -var wheelEvent = (document.implementation.hasFeature('Event.wheel', '3.0') ? 'wheel' : 'mousewheel'); -var interactiveElements = ['INPUT', 'SELECT', 'TEXTAREA']; +const dragMouseEvents = ['mousemove', 'mouseup']; +const dragTouchEvents = ['touchmove', 'touchend']; +const wheelEvent = (document.implementation.hasFeature('Event.wheel', '3.0') ? 'wheel' : 'mousewheel'); +const interactiveElements = ['INPUT', 'SELECT', 'TEXTAREA']; -var scrollerFactory = function (frame, options) { +const scrollerFactory = function (frame, options) { // Extend options - var o = Object.assign({}, { + const o = Object.assign({}, { slidee: null, // Selector, DOM element, or jQuery object with DOM element representing SLIDEE. horizontal: false, // Switch to horizontal mode. @@ -83,7 +83,7 @@ var scrollerFactory = function (frame, options) { }, options); - var isSmoothScrollSupported = 'scrollBehavior' in document.documentElement.style; + const isSmoothScrollSupported = 'scrollBehavior' in document.documentElement.style; // native scroll is a must with touch input // also use native scroll when scrolling vertically in desktop mode - excluding horizontal because the mouse wheel support is choppy at the moment @@ -106,11 +106,11 @@ var scrollerFactory = function (frame, options) { } // Private variables - var self = this; + const self = this; self.options = o; // Frame - var slideeElement = o.slidee ? o.slidee : sibling(frame.firstChild)[0]; + const slideeElement = o.slidee ? o.slidee : sibling(frame.firstChild)[0]; self._pos = { start: 0, center: 0, @@ -119,15 +119,15 @@ var scrollerFactory = function (frame, options) { dest: 0 }; - var transform = !options.enableNativeScroll; + const transform = !options.enableNativeScroll; // Miscellaneous - var scrollSource = frame; - var dragSourceElement = o.dragSource ? o.dragSource : frame; - var dragging = { + const scrollSource = frame; + const dragSourceElement = o.dragSource ? o.dragSource : frame; + const dragging = { released: 1 }; - var scrolling = { + const scrolling = { last: 0, delta: 0, resetTime: 200 @@ -139,10 +139,10 @@ var scrollerFactory = function (frame, options) { self.options = o; self.dragging = dragging; - var nativeScrollElement = frame; + const nativeScrollElement = frame; function sibling(n, elem) { - var matched = []; + const matched = []; for (; n; n = n.nextSibling) { if (n.nodeType === 1 && n !== elem) { @@ -152,10 +152,10 @@ var scrollerFactory = function (frame, options) { return matched; } - var requiresReflow = true; + let requiresReflow = true; - var frameSize = 0; - var slideeSize = 0; + let frameSize = 0; + let slideeSize = 0; function ensureSizeInfo() { if (requiresReflow) { requiresReflow = false; @@ -185,13 +185,13 @@ var scrollerFactory = function (frame, options) { ensureSizeInfo(); // Fix possible overflowing - var pos = self._pos; + const pos = self._pos; self.slideTo(within(pos.dest, pos.start, pos.end)); } } function initFrameResizeObserver() { - var observerOptions = {}; + const observerOptions = {}; self.frameResizeObserver = new ResizeObserver(onResize, observerOptions); @@ -242,7 +242,7 @@ var scrollerFactory = function (frame, options) { } } - var lastAnimate; + let lastAnimate; /** * Animate to a position. @@ -254,7 +254,7 @@ var scrollerFactory = function (frame, options) { */ self.slideTo = function (newPos, immediate, fullItemPos) { ensureSizeInfo(); - var pos = self._pos; + const pos = self._pos; if (layoutManager.tv) { newPos = within(newPos, pos.start); @@ -268,10 +268,10 @@ var scrollerFactory = function (frame, options) { } // Update the animation object - var from = pos.cur; + const from = pos.cur; immediate = immediate || dragging.init || !o.speed; - var now = new Date().getTime(); + const now = new Date().getTime(); if (o.autoImmediate) { if (!immediate && (now - (lastAnimate || 0)) <= 50) { @@ -291,7 +291,7 @@ var scrollerFactory = function (frame, options) { }; function setStyleProperty(elem, name, value, speed, resetTransition) { - var style = elem.style; + const style = elem.style; if (resetTransition || browser.edge) { style.transition = 'none'; @@ -312,7 +312,7 @@ var scrollerFactory = function (frame, options) { } function renderAnimateWithTransform(fromPosition, toPosition, immediate) { - var speed = o.speed; + let speed = o.speed; if (immediate) { speed = o.immediateSpeed || 50; @@ -346,18 +346,18 @@ var scrollerFactory = function (frame, options) { * @return {Object} */ self.getPos = function (item) { - var scrollElement = transform ? slideeElement : nativeScrollElement; - var slideeOffset = getBoundingClientRect(scrollElement); - var itemOffset = getBoundingClientRect(item); + const scrollElement = transform ? slideeElement : nativeScrollElement; + const slideeOffset = getBoundingClientRect(scrollElement); + const itemOffset = getBoundingClientRect(item); - var offset = o.horizontal ? itemOffset.left - slideeOffset.left : itemOffset.top - slideeOffset.top; + let offset = o.horizontal ? itemOffset.left - slideeOffset.left : itemOffset.top - slideeOffset.top; - var size = o.horizontal ? itemOffset.width : itemOffset.height; + let size = o.horizontal ? itemOffset.width : itemOffset.height; if (!size && size !== 0) { size = item[o.horizontal ? 'offsetWidth' : 'offsetHeight']; } - var centerOffset = o.centerOffset || 0; + let centerOffset = o.centerOffset || 0; if (!transform) { centerOffset = 0; @@ -370,11 +370,11 @@ var scrollerFactory = function (frame, options) { ensureSizeInfo(); - var currentStart = self._pos.cur; - var currentEnd = currentStart + frameSize; + const currentStart = self._pos.cur; + const currentEnd = currentStart + frameSize; console.debug('offset:' + offset + ' currentStart:' + currentStart + ' currentEnd:' + currentEnd); - var isVisible = offset >= currentStart && (offset + size) <= currentEnd; + const isVisible = offset >= currentStart && (offset + size) <= currentEnd; return { start: offset, @@ -388,12 +388,12 @@ var scrollerFactory = function (frame, options) { self.getCenterPosition = function (item) { ensureSizeInfo(); - var pos = self.getPos(item); + const pos = self.getPos(item); return within(pos.center, pos.start, pos.end); }; function dragInitSlidee(event) { - var isTouch = event.type === 'touchstart'; + const isTouch = event.type === 'touchstart'; // Ignore when already in progress, or interactive element in non-touch navivagion if (dragging.init || !isTouch && isInteractive(event.target)) { @@ -417,7 +417,7 @@ var scrollerFactory = function (frame, options) { dragging.init = 0; dragging.source = event.target; dragging.touch = isTouch; - var pointer = isTouch ? event.touches[0] : event; + const pointer = isTouch ? event.touches[0] : event; dragging.initX = pointer.pageX; dragging.initY = pointer.pageY; dragging.initPos = self._pos.cur; @@ -455,7 +455,7 @@ var scrollerFactory = function (frame, options) { */ function dragHandler(event) { dragging.released = event.type === 'mouseup' || event.type === 'touchend'; - var pointer = dragging.touch ? event[dragging.released ? 'changedTouches' : 'touches'][0] : event; + const pointer = dragging.touch ? event[dragging.released ? 'changedTouches' : 'touches'][0] : event; dragging.pathX = pointer.pageX - dragging.initX; dragging.pathY = pointer.pageY - dragging.initY; dragging.path = Math.sqrt(Math.pow(dragging.pathX, 2) + Math.pow(dragging.pathY, 2)); @@ -570,12 +570,12 @@ var scrollerFactory = function (frame, options) { */ function scrollHandler(event) { ensureSizeInfo(); - var pos = self._pos; + const pos = self._pos; // Ignore if there is no scrolling to be done if (!o.scrollBy || pos.start === pos.end) { return; } - var delta = normalizeWheelDelta(event); + let delta = normalizeWheelDelta(event); if (transform) { // Trap scrolling only when necessary and/or requested @@ -635,13 +635,13 @@ var scrollerFactory = function (frame, options) { return self; }; - var contentRect = {}; + let contentRect = {}; function onResize(entries) { - var entry = entries[0]; + const entry = entries[0]; if (entry) { - var newRect = entry.contentRect; + const newRect = entry.contentRect; // handle element being hidden if (newRect.width === 0 || newRect.height === 0) { @@ -666,7 +666,7 @@ var scrollerFactory = function (frame, options) { function onFrameClick(e) { if (e.which === 1) { - var focusableParent = focusManager.focusableParent(e.target); + const focusableParent = focusManager.focusableParent(e.target); if (focusableParent && focusableParent !== document.activeElement) { focusableParent.focus(); } @@ -838,7 +838,7 @@ scrollerFactory.prototype.to = function (location, item, immediate) { if (item === undefined) { this.slideTo(this._pos[location], immediate); } else { - var itemPos = this.getPos(item); + const itemPos = this.getPos(item); if (itemPos) { this.slideTo(itemPos[location], immediate, itemPos); @@ -883,7 +883,7 @@ scrollerFactory.prototype.toCenter = function (item, immediate) { }; scrollerFactory.create = function (frame, options) { - var instance = new scrollerFactory(frame, options); + const instance = new scrollerFactory(frame, options); return Promise.resolve(instance); }; diff --git a/src/plugins/comicsPlayer/plugin.js b/src/plugins/comicsPlayer/plugin.js index 2928231391..8cdf3db5e6 100644 --- a/src/plugins/comicsPlayer/plugin.js +++ b/src/plugins/comicsPlayer/plugin.js @@ -103,7 +103,7 @@ export class ComicsPlayer { const downloadUrl = apiClient.getItemDownloadUrl(item.Id); const archiveSource = new ArchiveSource(downloadUrl); - var instance = this; + const instance = this; import('swiper').then(({default: Swiper}) => { archiveSource.load().then(() => { loading.hide(); diff --git a/src/plugins/photoPlayer/plugin.js b/src/plugins/photoPlayer/plugin.js index a7a4ab3760..c40477778e 100644 --- a/src/plugins/photoPlayer/plugin.js +++ b/src/plugins/photoPlayer/plugin.js @@ -10,11 +10,11 @@ export default class PhotoPlayer { play(options) { return new Promise(function (resolve, reject) { import('slideshow').then(({default: slideshow}) => { - var index = options.startIndex || 0; + const index = options.startIndex || 0; - var apiClient = window.connectionManager.currentApiClient(); + const apiClient = window.connectionManager.currentApiClient(); apiClient.getCurrentUser().then(function(result) { - var newSlideShow = new slideshow({ + const newSlideShow = new slideshow({ showTitle: false, cover: false, items: options.items, diff --git a/src/scripts/autocast.js b/src/scripts/autocast.js index 84e07b32cd..8d90451268 100644 --- a/src/scripts/autocast.js +++ b/src/scripts/autocast.js @@ -32,7 +32,7 @@ function onOpen() { const playerId = localStorage.getItem('autocastPlayerId'); playbackManager.getTargets().then(function (targets) { - for (var i = 0; i < targets.length; i++) { + for (let i = 0; i < targets.length; i++) { if (targets[i].id == playerId) { playbackManager.trySetActivePlayer(targets[i].playerName, targets[i]); break; diff --git a/src/scripts/browserDeviceProfile.js b/src/scripts/browserDeviceProfile.js index 9e4a410cea..03663b2884 100644 --- a/src/scripts/browserDeviceProfile.js +++ b/src/scripts/browserDeviceProfile.js @@ -23,7 +23,7 @@ define(['browser'], function (browser) { videoTestElement.canPlayType('video/mp4; codecs="hev1.1.0.L120"').replace(/no/, '')); } - var _supportsTextTracks; + let _supportsTextTracks; function supportsTextTracks() { if (browser.tizen) { return true; @@ -37,7 +37,7 @@ define(['browser'], function (browser) { return _supportsTextTracks; } - var _canPlayHls; + let _canPlayHls; function canPlayHls() { if (_canPlayHls == null) { _canPlayHls = canPlayNativeHls() || canPlayHlsWithMSE(); @@ -51,7 +51,7 @@ define(['browser'], function (browser) { return true; } - var media = document.createElement('video'); + const media = document.createElement('video'); if (media.canPlayType('application/x-mpegURL').replace(/no/, '') || media.canPlayType('application/vnd.apple.mpegURL').replace(/no/, '')) { return true; @@ -107,7 +107,7 @@ define(['browser'], function (browser) { } function canPlayAudioFormat(format) { - var typeString; + let typeString; if (format === 'flac') { if (browser.tizen || browser.web0s || browser.edgeUwp) { @@ -192,9 +192,9 @@ define(['browser'], function (browser) { } function getDirectPlayProfileForVideoContainer(container, videoAudioCodecs, videoTestElement, options) { - var supported = false; - var profileContainer = container; - var videoCodecs = []; + let supported = false; + let profileContainer = container; + const videoCodecs = []; switch (container) { case 'asf': @@ -277,10 +277,10 @@ define(['browser'], function (browser) { } function getGlobalMaxVideoBitrate() { - var isTizenFhd = false; + let isTizenFhd = false; if (browser.tizen) { try { - var isTizenUhd = webapis.productinfo.isUdPanelSupported(); + const isTizenUhd = webapis.productinfo.isUdPanelSupported(); isTizenFhd = !isTizenUhd; console.debug('isTizenFhd = ' + isTizenFhd); } catch (error) { @@ -297,19 +297,19 @@ define(['browser'], function (browser) { return function (options) { options = options || {}; - var physicalAudioChannels = options.audioChannels || (browser.tv || browser.ps4 || browser.xboxOne ? 6 : 2); + const physicalAudioChannels = options.audioChannels || (browser.tv || browser.ps4 || browser.xboxOne ? 6 : 2); - var bitrateSetting = getMaxBitrate(); + const bitrateSetting = getMaxBitrate(); - var videoTestElement = document.createElement('video'); + const videoTestElement = document.createElement('video'); - var canPlayVp8 = videoTestElement.canPlayType('video/webm; codecs="vp8"').replace(/no/, ''); - var canPlayVp9 = videoTestElement.canPlayType('video/webm; codecs="vp9"').replace(/no/, ''); - var webmAudioCodecs = ['vorbis']; + const canPlayVp8 = videoTestElement.canPlayType('video/webm; codecs="vp8"').replace(/no/, ''); + const canPlayVp9 = videoTestElement.canPlayType('video/webm; codecs="vp9"').replace(/no/, ''); + const webmAudioCodecs = ['vorbis']; - var canPlayMkv = testCanPlayMkv(videoTestElement); + const canPlayMkv = testCanPlayMkv(videoTestElement); - var profile = {}; + const profile = {}; profile.MaxStreamingBitrate = bitrateSetting; profile.MaxStaticBitrate = 100000000; @@ -317,18 +317,18 @@ define(['browser'], function (browser) { profile.DirectPlayProfiles = []; - var videoAudioCodecs = []; - var hlsVideoAudioCodecs = []; + let videoAudioCodecs = []; + let hlsVideoAudioCodecs = []; - var supportsMp3VideoAudio = videoTestElement.canPlayType('video/mp4; codecs="avc1.640029, mp4a.69"').replace(/no/, '') + const supportsMp3VideoAudio = videoTestElement.canPlayType('video/mp4; codecs="avc1.640029, mp4a.69"').replace(/no/, '') || videoTestElement.canPlayType('video/mp4; codecs="avc1.640029, mp4a.6B"').replace(/no/, '') || videoTestElement.canPlayType('video/mp4; codecs="avc1.640029, mp3"').replace(/no/, ''); // Not sure how to test for this - var supportsMp2VideoAudio = browser.edgeUwp || browser.tizen || browser.web0s; + const supportsMp2VideoAudio = browser.edgeUwp || browser.tizen || browser.web0s; /* eslint-disable compat/compat */ - var maxVideoWidth = browser.xboxOne ? + let maxVideoWidth = browser.xboxOne ? (window.screen ? window.screen.width : null) : null; @@ -337,7 +337,7 @@ define(['browser'], function (browser) { maxVideoWidth = options.maxVideoWidth; } - var canPlayAacVideoAudio = videoTestElement.canPlayType('video/mp4; codecs="avc1.640029, mp4a.40.2"').replace(/no/, ''); + const canPlayAacVideoAudio = videoTestElement.canPlayType('video/mp4; codecs="avc1.640029, mp4a.40.2"').replace(/no/, ''); // Only put mp3 first if mkv support is there // Otherwise with HLS and mp3 audio we're seeing some browsers @@ -345,7 +345,7 @@ define(['browser'], function (browser) { if (supportsAc3(videoTestElement)) { videoAudioCodecs.push('ac3'); - var eAc3 = supportsEac3(videoTestElement); + const eAc3 = supportsEac3(videoTestElement); if (eAc3) { videoAudioCodecs.push('eac3'); } @@ -394,7 +394,7 @@ define(['browser'], function (browser) { videoAudioCodecs.push('mp2'); } - var supportsDts = browser.tizen || browser.web0s || options.supportsDts || videoTestElement.canPlayType('video/mp4; codecs="dts-"').replace(/no/, '') || videoTestElement.canPlayType('video/mp4; codecs="dts+"').replace(/no/, ''); + let supportsDts = browser.tizen || browser.web0s || options.supportsDts || videoTestElement.canPlayType('video/mp4; codecs="dts-"').replace(/no/, '') || videoTestElement.canPlayType('video/mp4; codecs="dts+"').replace(/no/, ''); // DTS audio not supported in 2018 models (Tizen 4.0) if (browser.tizenVersion >= 4) { @@ -437,9 +437,9 @@ define(['browser'], function (browser) { return (options.disableHlsVideoAudioCodecs || []).indexOf(c) === -1; }); - var mp4VideoCodecs = []; - var webmVideoCodecs = []; - var hlsVideoCodecs = []; + const mp4VideoCodecs = []; + const webmVideoCodecs = []; + const hlsVideoCodecs = []; if (canPlayH264(videoTestElement)) { mp4VideoCodecs.push('h264'); @@ -555,7 +555,7 @@ define(['browser'], function (browser) { profile.TranscodingProfiles = []; - var hlsBreakOnNonKeyFrames = browser.iOS || browser.osx || browser.edge || !canPlayNativeHls() ? true : false; + const hlsBreakOnNonKeyFrames = browser.iOS || browser.osx || browser.edge || !canPlayNativeHls() ? true : false; if (canPlayHls() && browser.enableHlsAudio !== false) { profile.TranscodingProfiles.push({ @@ -661,9 +661,9 @@ define(['browser'], function (browser) { profile.CodecProfiles = []; - var supportsSecondaryAudio = browser.tizen || videoTestElement.audioTracks; + const supportsSecondaryAudio = browser.tizen || videoTestElement.audioTracks; - var aacCodecProfileConditions = []; + const aacCodecProfileConditions = []; // Handle he-aac not supported if (!videoTestElement.canPlayType('video/mp4; codecs="avc1.640029, mp4a.40.5"').replace(/no/, '')) { @@ -706,8 +706,8 @@ define(['browser'], function (browser) { }); } - var maxH264Level = 42; - var h264Profiles = 'high|main|baseline|constrained baseline'; + let maxH264Level = 42; + let h264Profiles = 'high|main|baseline|constrained baseline'; if (browser.tizen || browser.web0s || videoTestElement.canPlayType('video/mp4; codecs="avc1.640833"').replace(/no/, '')) { @@ -766,9 +766,9 @@ define(['browser'], function (browser) { }); } - var globalMaxVideoBitrate = (getGlobalMaxVideoBitrate() || '').toString(); + const globalMaxVideoBitrate = (getGlobalMaxVideoBitrate() || '').toString(); - var h264MaxVideoBitrate = globalMaxVideoBitrate; + const h264MaxVideoBitrate = globalMaxVideoBitrate; if (h264MaxVideoBitrate) { h264CodecProfileConditions.push({ @@ -806,7 +806,7 @@ define(['browser'], function (browser) { Conditions: h264CodecProfileConditions }); - var globalVideoConditions = []; + const globalVideoConditions = []; if (globalMaxVideoBitrate) { globalVideoConditions.push({ diff --git a/src/scripts/editorsidebar.js b/src/scripts/editorsidebar.js index b6a45ccf2c..7e8abbe2f9 100644 --- a/src/scripts/editorsidebar.js +++ b/src/scripts/editorsidebar.js @@ -5,8 +5,8 @@ import 'material-icons'; /* eslint-disable indent */ function getNode(item, folderState, selected) { - var htmlName = getNodeInnerHtml(item); - var node = { + const htmlName = getNodeInnerHtml(item); + const node = { id: item.Id, text: htmlName, state: { @@ -37,14 +37,14 @@ import 'material-icons'; } function getNodeInnerHtml(item) { - var name = item.Name; + let name = item.Name; if (item.Number) { name = item.Number + ' - ' + name; } if (item.IndexNumber != null && item.Type != 'Season') { name = item.IndexNumber + ' - ' + name; } - var htmlName = "
    "; + let htmlName = "
    "; if (item.IsFolder) { htmlName += ''; } else if (item.MediaType === 'Video') { @@ -70,7 +70,7 @@ import 'material-icons'; ApiClient.getLiveTvChannels({ limit: 0 }).then(function (result) { - var nodes = []; + const nodes = []; nodes.push({ id: 'MediaFolders', text: globalize.translate('HeaderMediaFolders'), @@ -110,8 +110,8 @@ import 'material-icons'; ServiceName: service, AddCurrentProgram: false }).then(function (result) { - var nodes = result.Items.map(function (i) { - var state = openItems.indexOf(i.Id) == -1 ? 'closed' : 'open'; + const nodes = result.Items.map(function (i) { + const state = openItems.indexOf(i.Id) == -1 ? 'closed' : 'open'; return getNode(i, state, false); }); callback(nodes); @@ -120,12 +120,12 @@ import 'material-icons'; function loadMediaFolders(page, scope, openItems, callback) { ApiClient.getJSON(ApiClient.getUrl('Library/MediaFolders')).then(function (result) { - var nodes = result.Items.map(function (n) { - var state = openItems.indexOf(n.Id) == -1 ? 'closed' : 'open'; + const nodes = result.Items.map(function (n) { + const state = openItems.indexOf(n.Id) == -1 ? 'closed' : 'open'; return getNode(n, state, false); }); callback.call(scope, nodes); - for (var i = 0, length = nodes.length; i < length; i++) { + for (let i = 0, length = nodes.length; i < length; i++) { if (nodes[i].state.opened) { nodesToLoad.push(nodes[i].id); } @@ -134,7 +134,7 @@ import 'material-icons'; } function loadNode(page, scope, node, openItems, selectedId, currentUser, callback) { - var id = node.id; + const id = node.id; if (id == '#') { loadChildrenOfRootNode(page, scope, callback); return; @@ -147,7 +147,7 @@ import 'material-icons'; loadMediaFolders(page, scope, openItems, callback); return; } - var query = { + const query = { ParentId: id, Fields: 'Settings', IsVirtualUnaired: false, @@ -156,17 +156,17 @@ import 'material-icons'; EnableImages: false, EnableUserData: false }; - var itemtype = node.li_attr.itemtype; + const itemtype = node.li_attr.itemtype; if (itemtype != 'Season' && itemtype != 'Series') { query.SortBy = 'SortName'; } ApiClient.getItems(Dashboard.getCurrentUserId(), query).then(function (result) { - var nodes = result.Items.map(function (n) { - var state = openItems.indexOf(n.Id) == -1 ? 'closed' : 'open'; + const nodes = result.Items.map(function (n) { + const state = openItems.indexOf(n.Id) == -1 ? 'closed' : 'open'; return getNode(n, state, n.Id == selectedId); }); callback.call(scope, nodes); - for (var i = 0, length = nodes.length; i < length; i++) { + for (let i = 0, length = nodes.length; i < length; i++) { if (nodes[i].state.opened) { nodesToLoad.push(nodes[i].id); } @@ -175,7 +175,7 @@ import 'material-icons'; } function scrollToNode(id) { - var elem = $('#' + id)[0]; + const elem = $('#' + id)[0]; if (elem) { elem.scrollIntoView(); } @@ -188,8 +188,8 @@ import 'material-icons'; } function onNodeSelect(event, data) { - var node = data.node; - var eventData = { + const node = data.node; + const eventData = { id: node.id, itemType: node.li_attr.itemtype, serverItemType: node.li_attr.serveritemtype, @@ -210,8 +210,8 @@ import 'material-icons'; } function onNodeOpen(event, data) { - var page = $(this).parents('.page')[0]; - var node = data.node; + const page = $(this).parents('.page')[0]; + const node = data.node; if (node.children) { loadNodesToLoad(page, node); } @@ -222,8 +222,8 @@ import 'material-icons'; } function onNodeLoad(event, data) { - var page = $(this).parents('.page')[0]; - var node = data.node; + const page = $(this).parents('.page')[0]; + const node = data.node; if (node.children) { loadNodesToLoad(page, node); } @@ -252,8 +252,8 @@ import 'material-icons'; } function loadNodesToLoad(page, node) { - var children = node.children; - for (var i = 0, length = children.length; i < length; i++) { + const children = node.children; + for (let i = 0, length = children.length; i < length; i++) { var child = children[i]; if (nodesToLoad.indexOf(child) != -1) { nodesToLoad = nodesToLoad.filter(function (n) { @@ -273,15 +273,15 @@ import 'material-icons'; } function updateEditorNode(page, item) { - var elem = $('#' + item.Id + '>a', page)[0]; + const elem = $('#' + item.Id + '>a', page)[0]; if (elem == null) { return; } $('.editorNode', elem).remove(); $(elem).append(getNodeInnerHtml(item)); if (item.IsFolder) { - var tree = jQuery.jstree._reference('.libraryTree'); - var currentNode = tree._get_node(null, false); + const tree = jQuery.jstree._reference('.libraryTree'); + const currentNode = tree._get_node(null, false); tree.refresh(currentNode); } } @@ -294,23 +294,23 @@ import 'material-icons'; if (itemId) { return itemId; } - var url = window.location.hash || window.location.href; + const url = window.location.hash || window.location.href; return getParameterByName('id', url); } var nodesToLoad = []; - var selectedNodeId; + let selectedNodeId; $(document).on('itemsaved', '.metadataEditorPage', function (e, item) { updateEditorNode(this, item); }).on('pagebeforeshow', '.metadataEditorPage', function () { /* eslint-disable-next-line @babel/no-unused-expressions */ import('css!assets/css/metadataeditor.css'); }).on('pagebeforeshow', '.metadataEditorPage', function () { - var page = this; + const page = this; Dashboard.getCurrentUser().then(function (user) { - var id = getCurrentItemId(); + const id = getCurrentItemId(); if (id) { ApiClient.getAncestorItems(id, user.Id).then(function (ancestors) { - var ids = ancestors.map(function (i) { + const ids = ancestors.map(function (i) { return i.Id; }); initializeTree(page, user, ids, id); @@ -320,13 +320,13 @@ import 'material-icons'; } }); }).on('pagebeforehide', '.metadataEditorPage', function () { - var page = this; + const page = this; $('.libraryTree', page).off('select_node.jstree', onNodeSelect).off('open_node.jstree', onNodeOpen).off('load_node.jstree', onNodeLoad); }); - var itemId; + let itemId; window.MetadataEditor = { getItemPromise: function () { - var currentItemId = getCurrentItemId(); + const currentItemId = getCurrentItemId(); if (currentItemId) { return ApiClient.getItem(Dashboard.getCurrentUserId(), currentItemId); } diff --git a/src/scripts/gamepadtokey.js b/src/scripts/gamepadtokey.js index b6f25f1eea..8451326974 100644 --- a/src/scripts/gamepadtokey.js +++ b/src/scripts/gamepadtokey.js @@ -22,47 +22,47 @@ import appHost from 'apphost'; -var _GAMEPAD_A_BUTTON_INDEX = 0; -var _GAMEPAD_B_BUTTON_INDEX = 1; -var _GAMEPAD_DPAD_UP_BUTTON_INDEX = 12; -var _GAMEPAD_DPAD_DOWN_BUTTON_INDEX = 13; -var _GAMEPAD_DPAD_LEFT_BUTTON_INDEX = 14; -var _GAMEPAD_DPAD_RIGHT_BUTTON_INDEX = 15; -var _GAMEPAD_A_KEY = 'GamepadA'; -var _GAMEPAD_B_KEY = 'GamepadB'; -var _GAMEPAD_DPAD_UP_KEY = 'GamepadDPadUp'; -var _GAMEPAD_DPAD_DOWN_KEY = 'GamepadDPadDown'; -var _GAMEPAD_DPAD_LEFT_KEY = 'GamepadDPadLeft'; -var _GAMEPAD_DPAD_RIGHT_KEY = 'GamepadDPadRight'; -var _GAMEPAD_LEFT_THUMBSTICK_UP_KEY = 'GamepadLeftThumbStickUp'; -var _GAMEPAD_LEFT_THUMBSTICK_DOWN_KEY = 'GamepadLeftThumbStickDown'; -var _GAMEPAD_LEFT_THUMBSTICK_LEFT_KEY = 'GamepadLeftThumbStickLeft'; -var _GAMEPAD_LEFT_THUMBSTICK_RIGHT_KEY = 'GamepadLeftThumbStickRight'; -var _GAMEPAD_A_KEYCODE = 0; -var _GAMEPAD_B_KEYCODE = 27; -var _GAMEPAD_DPAD_UP_KEYCODE = 38; -var _GAMEPAD_DPAD_DOWN_KEYCODE = 40; -var _GAMEPAD_DPAD_LEFT_KEYCODE = 37; -var _GAMEPAD_DPAD_RIGHT_KEYCODE = 39; -var _GAMEPAD_LEFT_THUMBSTICK_UP_KEYCODE = 38; -var _GAMEPAD_LEFT_THUMBSTICK_DOWN_KEYCODE = 40; -var _GAMEPAD_LEFT_THUMBSTICK_LEFT_KEYCODE = 37; -var _GAMEPAD_LEFT_THUMBSTICK_RIGHT_KEYCODE = 39; -var _THUMB_STICK_THRESHOLD = 0.75; +const _GAMEPAD_A_BUTTON_INDEX = 0; +const _GAMEPAD_B_BUTTON_INDEX = 1; +const _GAMEPAD_DPAD_UP_BUTTON_INDEX = 12; +const _GAMEPAD_DPAD_DOWN_BUTTON_INDEX = 13; +const _GAMEPAD_DPAD_LEFT_BUTTON_INDEX = 14; +const _GAMEPAD_DPAD_RIGHT_BUTTON_INDEX = 15; +const _GAMEPAD_A_KEY = 'GamepadA'; +const _GAMEPAD_B_KEY = 'GamepadB'; +const _GAMEPAD_DPAD_UP_KEY = 'GamepadDPadUp'; +const _GAMEPAD_DPAD_DOWN_KEY = 'GamepadDPadDown'; +const _GAMEPAD_DPAD_LEFT_KEY = 'GamepadDPadLeft'; +const _GAMEPAD_DPAD_RIGHT_KEY = 'GamepadDPadRight'; +const _GAMEPAD_LEFT_THUMBSTICK_UP_KEY = 'GamepadLeftThumbStickUp'; +const _GAMEPAD_LEFT_THUMBSTICK_DOWN_KEY = 'GamepadLeftThumbStickDown'; +const _GAMEPAD_LEFT_THUMBSTICK_LEFT_KEY = 'GamepadLeftThumbStickLeft'; +const _GAMEPAD_LEFT_THUMBSTICK_RIGHT_KEY = 'GamepadLeftThumbStickRight'; +const _GAMEPAD_A_KEYCODE = 0; +const _GAMEPAD_B_KEYCODE = 27; +const _GAMEPAD_DPAD_UP_KEYCODE = 38; +const _GAMEPAD_DPAD_DOWN_KEYCODE = 40; +const _GAMEPAD_DPAD_LEFT_KEYCODE = 37; +const _GAMEPAD_DPAD_RIGHT_KEYCODE = 39; +const _GAMEPAD_LEFT_THUMBSTICK_UP_KEYCODE = 38; +const _GAMEPAD_LEFT_THUMBSTICK_DOWN_KEYCODE = 40; +const _GAMEPAD_LEFT_THUMBSTICK_LEFT_KEYCODE = 37; +const _GAMEPAD_LEFT_THUMBSTICK_RIGHT_KEYCODE = 39; +const _THUMB_STICK_THRESHOLD = 0.75; -var _leftThumbstickUpPressed = false; -var _leftThumbstickDownPressed = false; -var _leftThumbstickLeftPressed = false; -var _leftThumbstickRightPressed = false; -var _dPadUpPressed = false; -var _dPadDownPressed = false; -var _dPadLeftPressed = false; -var _dPadRightPressed = false; -var _gamepadAPressed = false; -var _gamepadBPressed = false; +let _leftThumbstickUpPressed = false; +let _leftThumbstickDownPressed = false; +let _leftThumbstickLeftPressed = false; +let _leftThumbstickRightPressed = false; +let _dPadUpPressed = false; +let _dPadDownPressed = false; +let _dPadLeftPressed = false; +let _dPadRightPressed = false; +let _gamepadAPressed = false; +let _gamepadBPressed = false; // The set of buttons on the gamepad we listen for. -var ProcessedButtons = [ +const ProcessedButtons = [ _GAMEPAD_DPAD_UP_BUTTON_INDEX, _GAMEPAD_DPAD_DOWN_BUTTON_INDEX, _GAMEPAD_DPAD_LEFT_BUTTON_INDEX, @@ -71,7 +71,7 @@ var ProcessedButtons = [ _GAMEPAD_B_BUTTON_INDEX ]; -var _ButtonPressedState = {}; +const _ButtonPressedState = {}; _ButtonPressedState.getgamepadA = function () { return _gamepadAPressed; }; @@ -162,11 +162,11 @@ _ButtonPressedState.setdPadRight = function (newPressedState) { _dPadRightPressed = newPressedState; }; -var times = {}; +const times = {}; function throttle(key) { - var time = times[key] || 0; - var now = new Date().getTime(); + const time = times[key] || 0; + const now = new Date().getTime(); if ((now - time) >= 200) { //times[key] = now; @@ -180,7 +180,7 @@ function resetThrottle(key) { times[key] = new Date().getTime(); } -var isElectron = navigator.userAgent.toLowerCase().indexOf('electron') !== -1; +const isElectron = navigator.userAgent.toLowerCase().indexOf('electron') !== -1; function allowInput() { // This would be nice but always seems to return true with electron if (!isElectron && document.hidden) { /* eslint-disable-line compat/compat */ @@ -199,7 +199,7 @@ function raiseEvent(name, key, keyCode) { return; } - var event = document.createEvent('Event'); + const event = document.createEvent('Event'); event.initEvent(name, true, true); event.key = key; event.keyCode = keyCode; @@ -218,7 +218,7 @@ function raiseKeyEvent(oldPressedState, newPressedState, key, keyCode, enableRep // No-op if oldPressedState === newPressedState if (newPressedState === true) { // button down - var fire = false; + let fire = false; // always fire if this is the initial down press if (oldPressedState === false) { @@ -244,19 +244,19 @@ function raiseKeyEvent(oldPressedState, newPressedState, key, keyCode, enableRep } } -var inputLoopTimer; +let inputLoopTimer; function runInputLoop() { // Get the latest gamepad state. - var gamepads = navigator.getGamepads(); /* eslint-disable-line compat/compat */ + const gamepads = navigator.getGamepads(); /* eslint-disable-line compat/compat */ for (var i = 0, len = gamepads.length; i < len; i++) { - var gamepad = gamepads[i]; + const gamepad = gamepads[i]; if (!gamepad) { continue; } // Iterate through the axes - var axes = gamepad.axes; - var leftStickX = axes[0]; - var leftStickY = axes[1]; + const axes = gamepad.axes; + const leftStickX = axes[0]; + const leftStickY = axes[1]; if (leftStickX > _THUMB_STICK_THRESHOLD) { // Right _ButtonPressedState.setleftThumbstickRight(true); } else if (leftStickX < -_THUMB_STICK_THRESHOLD) { // Left @@ -272,7 +272,7 @@ function runInputLoop() { _ButtonPressedState.setleftThumbstickDown(false); } // Iterate through the buttons to see if Left thumbstick, DPad, A and B are pressed. - var buttons = gamepad.buttons; + const buttons = gamepad.buttons; for (var j = 0, len = buttons.length; j < len; j++) { if (ProcessedButtons.indexOf(j) !== -1) { if (buttons[j].pressed) { @@ -355,9 +355,9 @@ function stopInputLoop() { } function isGamepadConnected() { - var gamepads = navigator.getGamepads(); /* eslint-disable-line compat/compat */ - for (var i = 0, len = gamepads.length; i < len; i++) { - var gamepad = gamepads[i]; + const gamepads = navigator.getGamepads(); /* eslint-disable-line compat/compat */ + for (let i = 0, len = gamepads.length; i < len; i++) { + const gamepad = gamepads[i]; if (gamepad && gamepad.connected) { return true; } diff --git a/src/scripts/imagehelper.js b/src/scripts/imagehelper.js index c79f721738..9b356f0350 100644 --- a/src/scripts/imagehelper.js +++ b/src/scripts/imagehelper.js @@ -2,7 +2,7 @@ /* eslint-disable indent */ export function getDeviceIcon(device) { - var baseUrl = 'assets/img/devices/'; + const baseUrl = 'assets/img/devices/'; switch (device.AppName || device.Client) { case 'Samsung Smart TV': return baseUrl + 'samsung.svg'; diff --git a/src/scripts/libraryBrowser.js b/src/scripts/libraryBrowser.js index 151cb7ff57..5c6db19258 100644 --- a/src/scripts/libraryBrowser.js +++ b/src/scripts/libraryBrowser.js @@ -6,7 +6,7 @@ export function getSavedQueryKey(modifier) { } export function loadSavedQueryValues(key, query) { - var values = userSettings.get(key); + let values = userSettings.get(key); if (values) { values = JSON.parse(values); @@ -17,7 +17,7 @@ export function loadSavedQueryValues(key, query) { } export function saveQueryValues(key, query) { - var values = {}; + const values = {}; if (query.SortBy) { values.SortBy = query.SortBy; @@ -39,7 +39,7 @@ export function getSavedView (key) { } export function showLayoutMenu (button, currentLayout, views) { - var dispatchEvent = true; + let dispatchEvent = true; if (!views) { dispatchEvent = false; @@ -47,7 +47,7 @@ export function showLayoutMenu (button, currentLayout, views) { views = views ? views.split(',') : ['List', 'Poster', 'PosterCard', 'Thumb', 'ThumbCard']; } - var menuItems = views.map(function (v) { + const menuItems = views.map(function (v) { return { name: globalize.translate(v), id: v, @@ -79,12 +79,12 @@ export function showLayoutMenu (button, currentLayout, views) { } export function getQueryPagingHtml (options) { - var startIndex = options.startIndex; - var limit = options.limit; - var totalRecordCount = options.totalRecordCount; - var html = ''; - var recordsEnd = Math.min(startIndex + limit, totalRecordCount); - var showControls = limit < totalRecordCount; + const startIndex = options.startIndex; + const limit = options.limit; + const totalRecordCount = options.totalRecordCount; + let html = ''; + const recordsEnd = Math.min(startIndex + limit, totalRecordCount); + const showControls = limit < totalRecordCount; if (html += '
    ', showControls) { html += ''; @@ -124,10 +124,10 @@ export function showSortMenu (options) { import('emby-radio') ]).then(([{default: dialogHelper}]) => { function onSortByChange() { - var newValue = this.value; + const newValue = this.value; if (this.checked) { - var changed = options.query.SortBy != newValue; + const changed = options.query.SortBy != newValue; options.query.SortBy = newValue.replace('_', ','); options.query.StartIndex = 0; @@ -138,10 +138,10 @@ export function showSortMenu (options) { } function onSortOrderChange() { - var newValue = this.value; + const newValue = this.value; if (this.checked) { - var changed = options.query.SortOrder != newValue; + const changed = options.query.SortOrder != newValue; options.query.SortOrder = newValue; options.query.StartIndex = 0; @@ -151,7 +151,7 @@ export function showSortMenu (options) { } } - var dlg = dialogHelper.createDialog({ + const dlg = dialogHelper.createDialog({ removeOnClose: true, modal: false, entryAnimationDuration: 160, @@ -160,18 +160,18 @@ export function showSortMenu (options) { dlg.classList.add('ui-body-a'); dlg.classList.add('background-theme-a'); dlg.classList.add('formDialog'); - var html = ''; + let html = ''; html += '
    '; html += '

    '; html += globalize.translate('HeaderSortBy'); html += '

    '; - var i; - var length; - var isChecked; + let i; + let length; + let isChecked; html += '
    '; for (i = 0, length = options.items.length; i < length; i++) { - var option = options.items[i]; - var radioValue = option.id.replace(',', '_'); + const option = options.items[i]; + const radioValue = option.id.replace(',', '_'); isChecked = (options.query.SortBy || '').replace(',', '_') == radioValue ? ' checked' : ''; html += ''; } @@ -189,13 +189,13 @@ export function showSortMenu (options) { html += '
    '; dlg.innerHTML = html; dialogHelper.open(dlg); - var sortBys = dlg.querySelectorAll('.menuSortBy'); + const sortBys = dlg.querySelectorAll('.menuSortBy'); for (i = 0, length = sortBys.length; i < length; i++) { sortBys[i].addEventListener('change', onSortByChange); } - var sortOrders = dlg.querySelectorAll('.menuSortOrder'); + const sortOrders = dlg.querySelectorAll('.menuSortOrder'); for (i = 0, length = sortOrders.length; i < length; i++) { sortOrders[i].addEventListener('change', onSortOrderChange); diff --git a/src/scripts/multiDownload.js b/src/scripts/multiDownload.js index d1c717af0e..270c474965 100644 --- a/src/scripts/multiDownload.js +++ b/src/scripts/multiDownload.js @@ -1,10 +1,10 @@ import browser from 'browser'; function fallback(urls) { - var i = 0; + let i = 0; (function createIframe() { - var frame = document.createElement('iframe'); + const frame = document.createElement('iframe'); frame.style.display = 'none'; frame.src = urls[i++]; document.documentElement.appendChild(frame); @@ -28,14 +28,14 @@ function fallback(urls) { } function sameDomain(url) { - var a = document.createElement('a'); + const a = document.createElement('a'); a.href = url; return window.location.hostname === a.hostname && window.location.protocol === a.protocol; } function download(url) { - var a = document.createElement('a'); + const a = document.createElement('a'); a.download = ''; a.href = url; // firefox doesn't support `a.click()`... @@ -51,7 +51,7 @@ export default function (urls) { return fallback(urls); } - var delay = 0; + let delay = 0; urls.forEach(function (url) { // the download init has to be sequential for firefox if the urls are not on the same domain diff --git a/src/scripts/playlistedit.js b/src/scripts/playlistedit.js index 636a7ef056..a4b519e045 100644 --- a/src/scripts/playlistedit.js +++ b/src/scripts/playlistedit.js @@ -3,7 +3,7 @@ define(['listView'], function (listView) { function getFetchPlaylistItemsFn(itemId) { return function () { - var query = { + const query = { Fields: 'PrimaryImageAspectRatio,UserData', EnableImageTypes: 'Primary,Backdrop,Banner,Thumb', UserId: ApiClient.getCurrentUserId() @@ -28,7 +28,7 @@ define(['listView'], function (listView) { } function init(page, item) { - var elem = page.querySelector('#childrenContent .itemsContainer'); + const elem = page.querySelector('#childrenContent .itemsContainer'); elem.classList.add('vertical-list'); elem.classList.remove('vertical-wrap'); elem.enableDragReordering(true); diff --git a/src/scripts/routes.js b/src/scripts/routes.js index 8e2440b140..5651102655 100644 --- a/src/scripts/routes.js +++ b/src/scripts/routes.js @@ -17,7 +17,7 @@ import 'detailtablecss'; console.groupCollapsed('defining core routes'); function defineRoute(newRoute) { - var path = newRoute.alias ? newRoute.alias : newRoute.path; + const path = newRoute.alias ? newRoute.alias : newRoute.path; console.debug('defining route: ' + path); newRoute.dictionary = 'core'; Emby.Page.addRoute(path, newRoute); diff --git a/src/scripts/site.js b/src/scripts/site.js index d386243138..0dbdcb4c61 100644 --- a/src/scripts/site.js +++ b/src/scripts/site.js @@ -1,10 +1,10 @@ window.getWindowLocationSearch = function(win) { 'use strict'; - var search = (win || window).location.search; + let search = (win || window).location.search; if (!search) { - var index = window.location.href.indexOf('?'); + const index = window.location.href.indexOf('?'); if (index != -1) { search = window.location.href.substring(index); @@ -18,9 +18,9 @@ window.getParameterByName = function(name, url) { 'use strict'; name = name.replace(/[\[]/, '\\[').replace(/[\]]/, '\\]'); - var regexS = '[\\?&]' + name + '=([^&#]*)'; - var regex = new RegExp(regexS, 'i'); - var results = regex.exec(url || getWindowLocationSearch()); + const regexS = '[\\?&]' + name + '=([^&#]*)'; + const regex = new RegExp(regexS, 'i'); + const results = regex.exec(url || getWindowLocationSearch()); if (results == null) { return ''; @@ -33,7 +33,7 @@ window.pageClassOn = function(eventName, className, fn) { 'use strict'; document.addEventListener(eventName, function (event) { - var target = event.target; + const target = event.target; if (target.classList.contains(className)) { fn.call(target, event); @@ -45,7 +45,7 @@ window.pageIdOn = function(eventName, id, fn) { 'use strict'; document.addEventListener(eventName, function (event) { - var target = event.target; + const target = event.target; if (target.id === id) { fn.call(target, event); @@ -53,7 +53,7 @@ window.pageIdOn = function(eventName, id, fn) { }); }; -var AppInfo = {}; +const AppInfo = {}; function initClient() { function bindConnectionManagerEvents(connectionManager, events, userSettings) { @@ -61,7 +61,7 @@ function initClient() { window.connectionManager.currentApiClient = function () { if (!localApiClient) { - var server = window.connectionManager.getLastUsedServer(); + const server = window.connectionManager.getLastUsedServer(); if (server) { localApiClient = window.connectionManager.getApiClient(server.Id); @@ -86,11 +86,11 @@ function initClient() { return require(['connectionManagerFactory', 'apphost', 'credentialprovider', 'events', 'userSettings'], function (ConnectionManager, appHost, credentialProvider, events, userSettings) { appHost = appHost.default || appHost; - var credentialProviderInstance = new credentialProvider(); - var promises = [appHost.init()]; + const credentialProviderInstance = new credentialProvider(); + const promises = [appHost.init()]; return Promise.all(promises).then(function (responses) { - var capabilities = Dashboard.capabilities(appHost); + const capabilities = Dashboard.capabilities(appHost); window.connectionManager = new ConnectionManager(credentialProviderInstance, appHost.appName(), appHost.appVersion(), appHost.deviceName(), appHost.deviceId(), capabilities); @@ -102,7 +102,7 @@ function initClient() { return require(['apiclient', 'clientUtils'], function (apiClientFactory, clientUtils) { console.debug('creating ApiClient singleton'); - var apiClient = new apiClientFactory(Dashboard.serverAddress(), appHost.appName(), appHost.appVersion(), appHost.deviceName(), appHost.deviceId()); + const apiClient = new apiClientFactory(Dashboard.serverAddress(), appHost.appName(), appHost.appVersion(), appHost.deviceName(), appHost.deviceId()); apiClient.enableAutomaticNetworking = false; apiClient.manualAddressOnly = true; @@ -194,7 +194,7 @@ function initClient() { require(['clientUtils']); - var promises = []; + const promises = []; if (!window.fetch) { promises.push(require(['fetch'])); } @@ -226,8 +226,8 @@ function initClient() { } function loadCoreDictionary(globalize) { - var languages = ['ar', 'be-by', 'bg-bg', 'ca', 'cs', 'da', 'de', 'el', 'en-gb', 'en-us', 'es', 'es-ar', 'es-mx', 'fa', 'fi', 'fr', 'fr-ca', 'gsw', 'he', 'hi-in', 'hr', 'hu', 'id', 'it', 'kk', 'ko', 'lt-lt', 'ms', 'nb', 'nl', 'pl', 'pt-br', 'pt-pt', 'ro', 'ru', 'sk', 'sl-si', 'sv', 'tr', 'uk', 'vi', 'zh-cn', 'zh-hk', 'zh-tw']; - var translations = languages.map(function (language) { + const languages = ['ar', 'be-by', 'bg-bg', 'ca', 'cs', 'da', 'de', 'el', 'en-gb', 'en-us', 'es', 'es-ar', 'es-mx', 'fa', 'fi', 'fr', 'fr-ca', 'gsw', 'he', 'hi-in', 'hr', 'hu', 'id', 'it', 'kk', 'ko', 'lt-lt', 'ms', 'nb', 'nl', 'pl', 'pt-br', 'pt-pt', 'ro', 'ru', 'sk', 'sl-si', 'sv', 'tr', 'uk', 'vi', 'zh-cn', 'zh-hk', 'zh-tw']; + const translations = languages.map(function (language) { return { lang: language, path: 'strings/' + language + '.json' @@ -367,7 +367,7 @@ function initClient() { require(['playerSelectionMenu']); - var apiClient = window.connectionManager && window.connectionManager.currentApiClient(); + const apiClient = window.connectionManager && window.connectionManager.currentApiClient(); if (apiClient) { fetch(apiClient.getUrl('Branding/Css')) .then(function(response) { @@ -410,8 +410,8 @@ function initClient() { } function onWebComponentsReady() { - var componentsPath = getComponentsPath(); - var scriptsPath = getScriptsPath(); + const componentsPath = getComponentsPath(); + const scriptsPath = getScriptsPath(); define('filesystem', [scriptsPath + '/filesystem'], returnFirstDependency); @@ -441,18 +441,18 @@ function initClient() { init(); } - var promise; - var localApiClient; + let promise; + let localApiClient; function initRequireJs() { - var urlArgs = 'v=' + (window.dashboardVersion || new Date().getDate()); + const urlArgs = 'v=' + (window.dashboardVersion || new Date().getDate()); - var bowerPath = getBowerPath(); - var componentsPath = getComponentsPath(); - var elementsPath = getElementsPath(); - var scriptsPath = getScriptsPath(); + const bowerPath = getBowerPath(); + const componentsPath = getComponentsPath(); + const elementsPath = getElementsPath(); + const scriptsPath = getScriptsPath(); - var paths = { + const paths = { browserdeviceprofile: 'scripts/browserDeviceProfile', browser: 'scripts/browser', libraryBrowser: 'scripts/libraryBrowser', diff --git a/src/scripts/themeManager.js b/src/scripts/themeManager.js index 03ca621749..56d3362219 100644 --- a/src/scripts/themeManager.js +++ b/src/scripts/themeManager.js @@ -1,10 +1,10 @@ import * as webSettings from 'webSettings'; -var themeStyleElement = document.querySelector('#cssTheme'); -var currentThemeId; +let themeStyleElement = document.querySelector('#cssTheme'); +let currentThemeId; function unloadTheme() { - var elem = themeStyleElement; + const elem = themeStyleElement; if (elem) { elem.removeAttribute('href'); currentThemeId = null; @@ -17,7 +17,7 @@ function getThemes() { function getThemeStylesheetInfo(id) { return getThemes().then(themes => { - var theme = themes.find(theme => { + const theme = themes.find(theme => { return id ? theme.id === id : theme.default; }); @@ -41,7 +41,7 @@ function setTheme(id) { return; } - var linkUrl = info.stylesheetPath; + const linkUrl = info.stylesheetPath; unloadTheme(); let link = themeStyleElement; From 237e8ddc4c60bd5d35f3691d91b4aa8f978a5cba Mon Sep 17 00:00:00 2001 From: dkanada Date: Thu, 8 Oct 2020 00:47:23 +0900 Subject: [PATCH 254/365] manual changes for no-var eslint rule --- .eslintrc.js | 1 + src/components/focusManager.js | 4 ++-- src/components/htmlMediaHelper.js | 5 ++--- src/components/serviceworker/notifications.js | 3 +-- src/libraries/navdrawer/navdrawer.js | 2 ++ src/scripts/editorsidebar.js | 4 ++-- src/scripts/gamepadtokey.js | 4 ++-- src/scripts/multiDownload.js | 2 +- 8 files changed, 13 insertions(+), 12 deletions(-) diff --git a/.eslintrc.js b/.eslintrc.js index dc8729fb2a..e5ee2dfe86 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -49,6 +49,7 @@ module.exports = { 'prefer-const': ['error', {'destructuring': 'all'}], 'quotes': ['error', 'single', { 'avoidEscape': true, 'allowTemplateLiterals': false }], '@babel/semi': ['error'], + 'no-var': ['error'], 'space-before-blocks': ['error'], 'space-infix-ops': 'error', 'yoda': 'error' diff --git a/src/components/focusManager.js b/src/components/focusManager.js index 90ff8b0703..d45984bf58 100644 --- a/src/components/focusManager.js +++ b/src/components/focusManager.js @@ -344,8 +344,8 @@ import scrollManager from 'scrollManager'; const midX = elementRect.left + (elementRect.width / 2); const midY = elementRect.top + (elementRect.height / 2); - var distX; - var distY; + let distX; + let distY; switch (direction) { case 0: diff --git a/src/components/htmlMediaHelper.js b/src/components/htmlMediaHelper.js index 31fc4c29c8..be506b449d 100644 --- a/src/components/htmlMediaHelper.js +++ b/src/components/htmlMediaHelper.js @@ -149,7 +149,7 @@ import events from 'events'; } else { // update video player position when media is ready to be sought const events = ['durationchange', 'loadeddata', 'play', 'loadedmetadata']; - var onMediaChange = function(e) { + const onMediaChange = function(e) { if (element.currentTime === 0 && element.duration >= seconds) { // seek only when video position is exactly zero, // as this is true only if video hasn't started yet or @@ -322,9 +322,8 @@ import events from 'events'; break; case Hls.ErrorTypes.MEDIA_ERROR: console.debug('fatal media error encountered, try to recover'); - var currentReject = reject; + handleHlsJsMediaError(instance, reject); reject = null; - handleHlsJsMediaError(instance, currentReject); break; default: diff --git a/src/components/serviceworker/notifications.js b/src/components/serviceworker/notifications.js index cc2ee65320..51623b56f7 100644 --- a/src/components/serviceworker/notifications.js +++ b/src/components/serviceworker/notifications.js @@ -15,8 +15,7 @@ return getApiClient(serverId).then(function (apiClient) { switch (action) { case 'cancel-install': - var id = data.id; - return apiClient.cancelPackageInstallation(id); + return apiClient.cancelPackageInstallation(data.id); case 'restart': return apiClient.restartServer(); default: diff --git a/src/libraries/navdrawer/navdrawer.js b/src/libraries/navdrawer/navdrawer.js index ab50ec5831..6dcf6783d1 100644 --- a/src/libraries/navdrawer/navdrawer.js +++ b/src/libraries/navdrawer/navdrawer.js @@ -2,6 +2,7 @@ * and will be replaced soon by a Vue component. */ +/* eslint-disable no-var */ import browser from 'browser'; import dom from 'dom'; import 'css!./navdrawer'; @@ -355,3 +356,4 @@ export default function (options) { return new TouchMenuLA(); } +/* eslint-enable no-var */ diff --git a/src/scripts/editorsidebar.js b/src/scripts/editorsidebar.js index 7e8abbe2f9..3711520f02 100644 --- a/src/scripts/editorsidebar.js +++ b/src/scripts/editorsidebar.js @@ -254,7 +254,7 @@ import 'material-icons'; function loadNodesToLoad(page, node) { const children = node.children; for (let i = 0, length = children.length; i < length; i++) { - var child = children[i]; + const child = children[i]; if (nodesToLoad.indexOf(child) != -1) { nodesToLoad = nodesToLoad.filter(function (n) { return n != child; @@ -297,7 +297,7 @@ import 'material-icons'; const url = window.location.hash || window.location.href; return getParameterByName('id', url); } - var nodesToLoad = []; + let nodesToLoad = []; let selectedNodeId; $(document).on('itemsaved', '.metadataEditorPage', function (e, item) { updateEditorNode(this, item); diff --git a/src/scripts/gamepadtokey.js b/src/scripts/gamepadtokey.js index 8451326974..b1976e1f6b 100644 --- a/src/scripts/gamepadtokey.js +++ b/src/scripts/gamepadtokey.js @@ -248,7 +248,7 @@ let inputLoopTimer; function runInputLoop() { // Get the latest gamepad state. const gamepads = navigator.getGamepads(); /* eslint-disable-line compat/compat */ - for (var i = 0, len = gamepads.length; i < len; i++) { + for (let i = 0, len = gamepads.length; i < len; i++) { const gamepad = gamepads[i]; if (!gamepad) { continue; @@ -273,7 +273,7 @@ function runInputLoop() { } // Iterate through the buttons to see if Left thumbstick, DPad, A and B are pressed. const buttons = gamepad.buttons; - for (var j = 0, len = buttons.length; j < len; j++) { + for (let j = 0, len = buttons.length; j < len; j++) { if (ProcessedButtons.indexOf(j) !== -1) { if (buttons[j].pressed) { switch (j) { diff --git a/src/scripts/multiDownload.js b/src/scripts/multiDownload.js index 270c474965..6d47427ed8 100644 --- a/src/scripts/multiDownload.js +++ b/src/scripts/multiDownload.js @@ -10,7 +10,7 @@ function fallback(urls) { document.documentElement.appendChild(frame); // the download init has to be sequential otherwise IE only use the first - var interval = setInterval(function () { + const interval = setInterval(function () { if (frame.contentWindow.document.readyState === 'complete' || frame.contentWindow.document.readyState === 'interactive') { clearInterval(interval); From 33a60320a1b25d2d4b72428a93565224932780af Mon Sep 17 00:00:00 2001 From: SaddFox Date: Wed, 7 Oct 2020 22:49:50 +0000 Subject: [PATCH 255/365] Translated using Weblate (Slovenian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/sl/ --- src/strings/sl-si.json | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/strings/sl-si.json b/src/strings/sl-si.json index 652e3e77be..73500ac287 100644 --- a/src/strings/sl-si.json +++ b/src/strings/sl-si.json @@ -1332,11 +1332,20 @@ "Image": "Slika", "HeaderRecordingPostProcessing": "Obdelava snemanja", "Other": "Drugo", - "EnableQuickConnect": "Omogoči Quick Connect za ta server", + "EnableQuickConnect": "Omogoči Quick Connect za ta strežnik", "EnableAutoCast": "Nastavi kot privzeto", "Data": "Podatki", "ButtonUseQuickConnect": "Uporabi Quick Connect", "ButtonActivate": "Aktiviraj", "Authorize": "Pooblasti", - "HeaderBranding": "Promocija" + "HeaderBranding": "Promocija", + "UseDoubleRateDeinterlacing": "Podvoji hitrost sličic pri razpletanju", + "SystemDlnaProfilesHelp": "Sistemski profili so samo za branje. Spremembe sistemskega profila bodo shranjene kot nov profil po meri.", + "LabelColorSpace": "Barvni prostor:", + "MediaInfoColorSpace": "Barvni prostor", + "ButtonPlayer": "Predvajalnik", + "Whitelist": "Seznam želja", + "SubtitleVerticalPositionHelp": "Številka vrstice kjer se pojavi besedilo. Pozitivne številke predstavljajo od zgoraj navzdol. Negativne številke predstavljajo od spodaj navzgor.", + "TonemappingRangeHelp": "Izberite barvni razpon izhoda. Auto je isto kot razpon vhoda.", + "LabelOpenclDevice": "OpenCL naprava:" } From 7adc288ca63fa89a4fe349cb2f1a11ad311d0a25 Mon Sep 17 00:00:00 2001 From: Maxr1998 Date: Tue, 28 Jul 2020 23:54:27 +0200 Subject: [PATCH 256/365] Improve NativeShell integration - Move NativeShell calls into shell.js where possible to better group them - Add "updateVolumeLevel" API (not used yet) --- src/components/playback/mediasession.js | 6 ++-- src/scripts/fileDownloader.js | 7 ++--- src/scripts/shell.js | 37 ++++++++++++++++++++----- 3 files changed, 35 insertions(+), 15 deletions(-) diff --git a/src/components/playback/mediasession.js b/src/components/playback/mediasession.js index 2478c52d6e..b75fa69a8c 100644 --- a/src/components/playback/mediasession.js +++ b/src/components/playback/mediasession.js @@ -1,5 +1,6 @@ import playbackManager from 'playbackManager'; import nowPlayingHelper from 'nowPlayingHelper'; +import shell from 'shell'; import events from 'events'; /* eslint-disable indent */ @@ -127,8 +128,7 @@ import events from 'events'; }); } else { const itemImageUrl = seriesImageUrl(item, { maxHeight: 3000 }) || imageUrl(item, { maxHeight: 3000 }); - - window.NativeShell.updateMediaSession({ + shell.updateMediaSession({ action: eventName, isLocalPlayer: isLocalPlayer, itemId: itemId, @@ -182,7 +182,7 @@ import events from 'events'; /* eslint-disable-next-line compat/compat */ navigator.mediaSession.metadata = null; } else { - window.NativeShell.hideMediaSession(); + shell.hideMediaSession(); } } diff --git a/src/scripts/fileDownloader.js b/src/scripts/fileDownloader.js index f4179dcef8..c99a6c3e35 100644 --- a/src/scripts/fileDownloader.js +++ b/src/scripts/fileDownloader.js @@ -1,11 +1,8 @@ import multiDownload from 'multi-download'; +import shell from 'shell'; export function download(items) { - if (window.NativeShell) { - items.map(function (item) { - window.NativeShell.downloadFile(item); - }); - } else { + if (!shell.downloadFiles(items)) { multiDownload(items.map(function (item) { return item.url; })); diff --git a/src/scripts/shell.js b/src/scripts/shell.js index e42c7792a0..3b3635c7f4 100644 --- a/src/scripts/shell.js +++ b/src/scripts/shell.js @@ -1,20 +1,43 @@ // TODO: This seems like a good candidate for deprecation export default { - openUrl: function (url, target) { + enableFullscreen: function() { + window.NativeShell?.enableFullscreen(); + }, + disableFullscreen: function() { + window.NativeShell?.disableFullscreen(); + }, + openUrl: function(url, target) { if (window.NativeShell) { window.NativeShell.openUrl(url, target); } else { window.open(url, target || '_blank'); } }, - enableFullscreen: function () { - if (window.NativeShell) { - window.NativeShell.enableFullscreen(); - } + updateMediaSession(mediaInfo) { + window.NativeShell?.updateMediaSession(mediaInfo); }, - disableFullscreen: function () { + hideMediaSession() { + window.NativeShell?.hideMediaSession(); + }, + /** + * Notify the NativeShell about volume level changes. + * Useful for e.g. remote playback. + */ + updateVolumeLevel(volume) { + window.NativeShell?.updateVolumeLevel(volume); + }, + /** + * Download specified files with NativeShell if possible + * + * @returns true on success + */ + downloadFiles(items) { if (window.NativeShell) { - window.NativeShell.disableFullscreen(); + items.map(function(item) { + window.NativeShell.downloadFile(item); + }); + return true; } + return false; } }; From bb97896868d2cb8bc0bc3883a386701d4a62cb08 Mon Sep 17 00:00:00 2001 From: millallo Date: Thu, 8 Oct 2020 12:28:06 +0000 Subject: [PATCH 257/365] Translated using Weblate (Italian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/it/ --- src/strings/it.json | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/strings/it.json b/src/strings/it.json index e4641db41d..88fbaac2f1 100644 --- a/src/strings/it.json +++ b/src/strings/it.json @@ -1380,7 +1380,7 @@ "PosterCard": "Locandina", "LabelOpenclDevice": "Dispositivo OpenCL:", "MediaInfoVideoRange": "Intervallo video", - "UseDoubleRateDeinterlacingHelp": "Questa opzione usa il campo frequenza durante il deinterlacciamento, detto anche \"bob deinterlacing\", il quale raddoppia il frame rate del video per fornire \"full motion\" come se guardassi un video interlacciato su una TV.", + "UseDoubleRateDeinterlacingHelp": "Questa opzione usa il campo frequenza durante il deinterlacciamento, detto anche \"bob deinterlacing\", il quale raddoppia il frame rate del video per fornire \"full motion\" come se guardassi un video interlacciato in TV.", "QuickConnectAuthorizeFail": "Codice Quick Connect sconosciuto", "QuickConnectAuthorizeCode": "Inserisci {0} per completare il login", "EnableQuickConnect": "Attiva Quick Connect su questo server", @@ -1388,13 +1388,19 @@ "QuickConnectNotActive": "Quick connect non è attivo in questo server", "QuickConnectNotAvailable": "Chiedi all'amministratore del server di abilitare Quick Connect", "QuickConnectInvalidCode": "Codice Quick Connect non valido", - "QuickConnectDescription": "Per registrarsi usando Quick Connect, seleziona il pulsante Quick Connect nel dispositivo che stai usando per accedere e inserisci il codice scritto sottostante.", - "QuickConnectDeactivated": "Quick Connect è stato disattivato prima che il login venisse approvato", + "QuickConnectDescription": "Per registrarsi usando Quick Connect, seleziona il pulsante Quick Connect nel dispositivo che stai usando per accedere ed inserisci il codice sottostante.", + "QuickConnectDeactivated": "Quick Connect è stato disattivato prima che la richiesta di login venisse approvata", "QuickConnectAuthorizeSuccess": "Richiesta autorizzata", "QuickConnectActivationSuccessful": "Attivato con successo", "QuickConnect": "Quick Connect", "LabelQuickConnectCode": "Codice Quick Connect:", "LabelCurrentStatus": "Stato attuale:", "ButtonActivate": "Attiva", - "Authorize": "Autorizza" + "Authorize": "Autorizza", + "LabelTonemappingAlgorithm": "Seleziona l'algoritmo di Tone mapping da usare:", + "EnableTonemapping": "Abilita il Tone mapping", + "OptionMaxActiveSessionsHelp": "Il valore 0 disabilita la funzionalità.", + "OptionMaxActiveSessions": "Imposta il numero massimo di connessioni utente simultanee.", + "LabelUserMaxActiveSessions": "Numero massimo di sessioni utente contemporanee:", + "EnableAutoCast": "Imposta come Default" } From c0e4f38738e98fe09d5ebb09157fce63da71d268 Mon Sep 17 00:00:00 2001 From: a a Date: Thu, 8 Oct 2020 18:48:22 +0000 Subject: [PATCH 258/365] Translated using Weblate (Swedish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/sv/ --- src/strings/sv.json | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/strings/sv.json b/src/strings/sv.json index 9f4afd6cc0..707784509e 100644 --- a/src/strings/sv.json +++ b/src/strings/sv.json @@ -227,7 +227,7 @@ "HeaderConfirmPluginInstallation": "Bekräfta installation av tillägg", "HeaderConfirmProfileDeletion": "Bekräfta radering av profil", "HeaderConfirmRevokeApiKey": "Återkalla API-nyckel", - "HeaderConnectToServer": "Anslut till Server", + "HeaderConnectToServer": "Anslut till server", "HeaderConnectionFailure": "Misslyckad anslutning", "HeaderContainerProfile": "Behållareprofil", "HeaderContainerProfileHelp": "Behållareprofiler bestämmer begränsningarna hos en enhet när den spelar upp olika filformat. Om en begränsning är aktuell kommer innehållet att kodas om, även om formatet i sig är inställt för direkt avspelning.", @@ -1351,5 +1351,9 @@ "LabelUnstable": "Ostabil", "LabelIconMaxResHelp": "Högsta tillåtna upplösning för ikoner som visas via egenskapen upnp:icon.", "LabelAlbumArtMaxResHelp": "Högsta tillåtna upplösning för albumomslag som visas via egenskapen upnp:albumArtURI.", - "Image": "Bild" + "Image": "Bild", + "Data": "Data", + "ButtonUseQuickConnect": "Använd Quick Connect", + "ButtonActivate": "Aktivera", + "Authorize": "Auktorisera" } From 171a0485975fe2f9ca3463f776b2e56ac448ee23 Mon Sep 17 00:00:00 2001 From: hanka456 Date: Fri, 9 Oct 2020 09:31:09 +0000 Subject: [PATCH 259/365] Translated using Weblate (Swedish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/sv/ --- src/strings/sv.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/strings/sv.json b/src/strings/sv.json index 707784509e..d5343d6051 100644 --- a/src/strings/sv.json +++ b/src/strings/sv.json @@ -1276,7 +1276,7 @@ "UnsupportedPlayback": "Jellyfin kan inte dekryptera inehåll skyddat av DRM men allt inehåll kommer ändå försökas, även skyddade titlar. Vissa filer kan se helt svarta ut på grund av kryptering eller andra funktioner som inte stöds, till exempel interaktiva titlar.", "LabelLibraryPageSizeHelp": "Sätter en begränsad sidstorlek i bibliotek. Sätt 0 för att avaktivera begränsad sidstorlek.", "ApiKeysCaption": "Lista av aktiva API-nycklar", - "DeinterlaceMethodHelp": "Välj metod för borttagning av inflätning vid konvertering av inflätat inehåll.", + "DeinterlaceMethodHelp": "Välj metod för avflätning vid mjukvarukonvertering av inflätat innehåll. När hårdvaruacceleration med stöd för hårdvarustödd avflätning används så kommer hårdvarustödd avflätning användas istället.", "SaveChanges": "Spara ändringar", "LabelRequireHttps": "Kräv HTTPS", "LabelChromecastVersion": "Chromecast-version", @@ -1355,5 +1355,6 @@ "Data": "Data", "ButtonUseQuickConnect": "Använd Quick Connect", "ButtonActivate": "Aktivera", - "Authorize": "Auktorisera" + "Authorize": "Auktorisera", + "EnableAutoCast": "Markera som standard" } From 62e226a3868b921488e3d5894ec55f63703c2755 Mon Sep 17 00:00:00 2001 From: Page Asgardius Date: Fri, 9 Oct 2020 21:15:32 +0000 Subject: [PATCH 260/365] Translated using Weblate (Spanish (Mexico)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/es_MX/ --- src/strings/es-mx.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/strings/es-mx.json b/src/strings/es-mx.json index 6b7c5ed6f1..5542131a7b 100644 --- a/src/strings/es-mx.json +++ b/src/strings/es-mx.json @@ -1418,5 +1418,8 @@ "LabelUnstable": "Inestable", "LabelKnownProxies": "Proxies conocidos:", "LabelIconMaxResHelp": "Resolución máxima de los íconos expuestos por medio de la propiedad upnp:icon.", - "LabelCurrentStatus": "Estatus actual:" + "LabelCurrentStatus": "Estatus actual:", + "OptionMaxActiveSessionsHelp": "Fijar este valor en 0 desactivará esta característica.", + "OptionMaxActiveSessions": "Determina la cantidad máxima de sesiones simultaneas que puede tener cada usuario.", + "LabelUserMaxActiveSessions": "Límite de sesiones simultaneas:" } From 5d7705d4ab4f5648277645a073ff688c5c9e2c66 Mon Sep 17 00:00:00 2001 From: Page Asgardius Date: Fri, 9 Oct 2020 21:08:25 +0000 Subject: [PATCH 261/365] Translated using Weblate (Spanish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/es/ --- src/strings/es.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/strings/es.json b/src/strings/es.json index 0ca1c361b3..dbe062078a 100644 --- a/src/strings/es.json +++ b/src/strings/es.json @@ -1418,5 +1418,8 @@ "LabelOpenclDeviceHelp": "Este es el dispositivo OpenCL que se usará para el mapeo de tonos. La parte izquierda del punto es el número de plataforma, la derecha es el número de dispositivo en la plataforma. El valor predeterminado es 0.0. Se requiere especificar el archivo ejecutable ffmpeg con el método de aceleración por Hardware para OpenCL.", "LabelMaxMuxingQueueSizeHelp": "El número máximo de paquetes que se pueden almacenar en buffer mientras se espera a que se inicialicen todos los flujos. Intente aumentar este valor si aún encuentra el mensaje de error \"Demasiados paquetes en buffer para transmitir\" en las bitácoras de ffmpeg. El valor recomendado es 2048.", "LabelTonemappingPeakHelp": "Se omitirán los picos de referencia con este valor. Util cuando la información de pico incrustada en los metadatos de imagen no es confiable o cuando se hace un mapeo de tonos de un rango bajo a uno más alto. Se recomienda el valor predeterminado 0.", - "LabelTonemappingThresholdHelp": "Los parámetros del algoritmo de mapeo de tonos se ajustan en cada escena. Se usa un umbral para detectar si la escena ha cambiado o no. Si el brillo promedio se sale del umbral entre el fotograma actual y el próximo, se volveran a calcular los valores de brillo promedio y de pico. Se recomiendan los valores predeterminados 0.8 y 0.2." + "LabelTonemappingThresholdHelp": "Los parámetros del algoritmo de mapeo de tonos se ajustan en cada escena. Se usa un umbral para detectar si la escena ha cambiado o no. Si el brillo promedio se sale del umbral entre el fotograma actual y el próximo, se volveran a calcular los valores de brillo promedio y de pico. Se recomiendan los valores predeterminados 0.8 y 0.2.", + "OptionMaxActiveSessionsHelp": "Un valor de 0 desactivará esta característica.", + "OptionMaxActiveSessions": "Fija el número máximo de sesiones que puede tener cada usuario.", + "LabelUserMaxActiveSessions": "Número máximo de sesiones simultaneas por usuario:" } From ffbda03e3261754130a7b6c456165ae2f566beb8 Mon Sep 17 00:00:00 2001 From: GoldyyDev Date: Fri, 9 Oct 2020 16:30:23 +0000 Subject: [PATCH 262/365] Translated using Weblate (Hebrew) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/he/ --- src/strings/he.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/strings/he.json b/src/strings/he.json index aa9e89590b..86cad06f80 100644 --- a/src/strings/he.json +++ b/src/strings/he.json @@ -827,5 +827,7 @@ "Data": "נתונים", "ColorPrimaries": "צבעים ראשיים", "ClientSettings": "הגדרות לקוח", - "BoxSet": "מארז" + "BoxSet": "מארז", + "ButtonActivate": "הפעל", + "Authorize": "הרשה" } From 96226172a7146c8e3d8837ddde41f0a29d6b8f17 Mon Sep 17 00:00:00 2001 From: GoldyyDev Date: Fri, 9 Oct 2020 16:29:46 +0000 Subject: [PATCH 263/365] Translated using Weblate (Galician) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/gl/ --- src/strings/gl.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/gl.json b/src/strings/gl.json index 534ed0b4eb..d8f8e427b4 100644 --- a/src/strings/gl.json +++ b/src/strings/gl.json @@ -16,5 +16,6 @@ "Collections": "Colecións", "Channels": "Canles", "Books": "Libros", - "Artists": "Artistas" + "Artists": "Artistas", + "Absolute": "" } From c97de933be6ab9ea271e1db6842db0309c12229b Mon Sep 17 00:00:00 2001 From: Page Asgardius Date: Fri, 9 Oct 2020 21:11:30 +0000 Subject: [PATCH 264/365] Translated using Weblate (Spanish (Latin America)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/es_419/ --- src/strings/es_419.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/strings/es_419.json b/src/strings/es_419.json index 23940195e6..0d2c8b1610 100644 --- a/src/strings/es_419.json +++ b/src/strings/es_419.json @@ -1418,5 +1418,8 @@ "LabelQuickConnectCode": "Código conexión rápida:", "LabelKnownProxies": "Proxies conocidos:", "LabelIconMaxResHelp": "Resolución maxima de los iconos por medio de la función upnp:icon.", - "EnableAutoCast": "Establecer como Predeterminado" + "EnableAutoCast": "Establecer como Predeterminado", + "OptionMaxActiveSessionsHelp": "fijar esto en 0 desactivará esta característica.", + "OptionMaxActiveSessions": "Determina el número máximo de sesiones que puede tener cada usuario de forma simultnea.", + "LabelUserMaxActiveSessions": "Límite de sesiones simultaneas:" } From 470ae8f5e465247ccce819a0c9a1520502fd1bf6 Mon Sep 17 00:00:00 2001 From: shakesac Date: Sat, 10 Oct 2020 01:48:57 +0000 Subject: [PATCH 265/365] Translated using Weblate (Portuguese (Portugal)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/pt_PT/ --- src/strings/pt-pt.json | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/strings/pt-pt.json b/src/strings/pt-pt.json index 502f2952ba..89cc8891d0 100644 --- a/src/strings/pt-pt.json +++ b/src/strings/pt-pt.json @@ -614,7 +614,7 @@ "Albums": "Álbuns", "Alerts": "Alertas", "AllChannels": "Todos os canais", - "AllComplexFormats": "Todos os formatos complexos (ASS, SSA, VOBSUB, PGS, SUB/IDX, etc.)", + "AllComplexFormats": "Todos os Formatos Complexos (ASS, SSA, VOBSUB, PGS, SUB/IDX, etc.)", "AllEpisodes": "Todos os episódios", "AllLanguages": "Todos os idiomas", "AllLibraries": "Todas as bibliotecas", @@ -623,7 +623,7 @@ "AllowMediaConversionHelp": "Permitir ou negar acesso à funcionalidade de conversão multimédia.", "AllowOnTheFlySubtitleExtraction": "Permitir a extração de legendas em tempo real", "AllowOnTheFlySubtitleExtractionHelp": "Legendas integradas podem ser extraídas do vídeo e enviadas como texto simples para os clientes para evitar transcodificação. Em certos dispositivos, esta poderá ser uma operação demorada e pode causar interrupções de reprodução durante o processo de extração. Desative esta opção para que as legendas sejam integradas no vídeo durante a conversão para um formato suportado pelo dispositivo de destino.", - "AllowRemoteAccess": "Permitir ligações remotas a este Jellyfin Server.", + "AllowRemoteAccess": "Permitir ligações remotas a este servidor.", "AllowRemoteAccessHelp": "Se inativo, todas as ligações remotas serão bloqueadas.", "AllowedRemoteAddressesHelp": "Lista de IP ou IP/Máscara, separados por vírgulas, com permissão para se ligar remotamente. Se deixado em branco, todos os endereços remotos serão permitidos.", "AlwaysPlaySubtitles": "Reproduzir Sempre", @@ -656,7 +656,7 @@ "ContinueWatching": "Continuar a ver", "ConfirmEndPlayerSession": "Deseja encerrar o Servidor Jellyfin em {0}?", "ConfirmDeleteImage": "Apagar a imagem?", - "ConfigureDateAdded": "Configure a forma como é atribuída a data de adição, no painel de controlo do Servidor Jellyfin, em definições da Biblioteca", + "ConfigureDateAdded": "Configure a forma como é atribuída a data de adição, no painel de controlo, nas definições de biblioteca", "CommunityRating": "Avaliação da comunidade", "ChannelNumber": "Número do canal", "ChannelNameOnly": "Apenas canal {0}", @@ -813,7 +813,7 @@ "HeaderLiveTvTunerSetup": "Configurar Sintonizador de TV", "RecordSeries": "Gravar série", "LabelKeepUpTo": "Manter, no máximo:", - "AroundTime": "Por volta das {0}", + "AroundTime": "Por volta de {0}", "SeriesDisplayOrderHelp": "Ordenar episódios por data de estreia, ordem no DVD ou numeração absoluta.", "SearchResults": "Resultados da Pesquisa", "SearchForMissingMetadata": "Procurar metadados em falta", @@ -1278,5 +1278,9 @@ "BoxSet": "Coleção", "Artist": "Artista", "AlbumArtist": "Artista do Álbum", - "Album": "Álbum" + "Album": "Álbum", + "Data": "Dados", + "ButtonUseQuickConnect": "Usar Quick Connect", + "ButtonActivate": "Ativar", + "Authorize": "Autorizar" } From c1945d058062cfa3ed9cb6f9f2994df0dd1f8aca Mon Sep 17 00:00:00 2001 From: shakesac Date: Sat, 10 Oct 2020 08:57:23 +0000 Subject: [PATCH 266/365] Translated using Weblate (Portuguese (Portugal)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/pt_PT/ --- src/strings/pt-pt.json | 257 ++++++++++++++++++++++++++++++----------- 1 file changed, 188 insertions(+), 69 deletions(-) diff --git a/src/strings/pt-pt.json b/src/strings/pt-pt.json index 89cc8891d0..ad2a45c381 100644 --- a/src/strings/pt-pt.json +++ b/src/strings/pt-pt.json @@ -66,7 +66,7 @@ "Edit": "Editar", "EnableCinemaMode": "Modo cinema", "Ended": "Terminado", - "ErrorAddingMediaPathToVirtualFolder": "Ocorreu um erro ao adicionar a localização dos seus ficheiros. Por favor, assegure-se que o local é valido e que o processo do Jellyfin Server tenha acesso a essa localização.", + "ErrorAddingMediaPathToVirtualFolder": "Ocorreu um erro ao adicionar o caminho dos ficheiros. Por favor, assegure-se que o caminho é valido e que o Jellyfin tem acesso a ele.", "ErrorGettingTvLineups": "Ocorreu um erro ao transferir a programação de TV. Por favor, certifique-se que a sua informação está correta e tente novamente.", "ErrorPleaseSelectLineup": "Por favor selecione a programação e tente novamente. Se não houver programações disponíveis, verifique se o seu nome de utilizador, senha e código postal estão corretos.", "ExitFullscreen": "Sair do ecrã inteiro", @@ -87,7 +87,7 @@ "HeaderAdditionalParts": "Partes Adicionais", "HeaderApiKey": "Chave da API", "HeaderApiKeys": "Chaves da API", - "HeaderApiKeysHelp": "As aplicações externas necessitam de uma chave da API para comunicar com o Jellyfin Server. As chaves são emitidas ao entrar com uma conta Jellyfin ou concedendo manualmente a chave à aplicação.", + "HeaderApiKeysHelp": "As aplicações externas necessitam de uma chave da API para comunicar com o servidor. As chaves são emitidas ao entrar com uma conta Jellyfin ou concedendo manualmente a chave à aplicação.", "HeaderApp": "Aplicação", "HeaderAudioSettings": "Configurações de Áudio", "HeaderBlockItemsWithNoRating": "Bloquear conteúdo sem informação de classificação etária ou com informação desconhecida:", @@ -153,7 +153,7 @@ "HeaderPleaseSignIn": "Iniciar Sessão", "HeaderPreferredMetadataLanguage": "Idioma Preferencial dos Metadados", "HeaderProfileInformation": "Informação do Perfil", - "HeaderProfileServerSettingsHelp": "Estes valores controlam como o Servidor Jellyfin se apresenta a si mesmo para o dispositivo.", + "HeaderProfileServerSettingsHelp": "Estes valores controlam a forma como o servidor se apresenta ao dispositivo.", "HeaderRecentlyPlayed": "Reproduzido Recentemente", "HeaderRemoteControl": "Controlo Remoto", "HeaderRemoveMediaFolder": "Remover Pasta Multimédia", @@ -165,12 +165,12 @@ "HeaderScenes": "Cenas", "HeaderSelectCertificatePath": "Selecione a Localização do Certificado", "HeaderSelectMetadataPath": "Selecione a Localização dos Metadados", - "HeaderSelectMetadataPathHelp": "Procure ou introduza a localização da pasta para guardar os metadados. O Servidor Jellyfin deve ter acesso de escrita a essa pasta.", + "HeaderSelectMetadataPathHelp": "Procure ou introduza a localização da pasta para guardar os metadados. A pasta deve ter permissões de escrita.", "HeaderSelectPath": "Selecione o Local", "HeaderSelectServerCachePath": "Selecione a Localização da Cache do Servidor", "HeaderSelectServerCachePathHelp": "Procure ou introduza a localização da pasta para guardar a cache do servidor. O Servidor Jellyfin deve ter acesso de escrita a essa pasta.", "HeaderSelectTranscodingPath": "Selecione o Local Temporário da Transcodificação", - "HeaderSelectTranscodingPathHelp": "Procure ou introduza a localização da pasta para guardar os ficheiros temporários de transcodificação. O Servidor Jellyfin deve ter acesso de escrita a essa pasta.", + "HeaderSelectTranscodingPathHelp": "Procure ou introduza a localização da pasta para guardar os ficheiros temporários de transcodificação. A pasta deve ter permissões de escrita.", "HeaderSendMessage": "Enviar mensagem", "HeaderServerSettings": "Configurações do Servidor", "HeaderSetupLibrary": "Configurar Bibliotecas Multimédia", @@ -197,8 +197,8 @@ "Help": "Ajuda", "Identify": "Identificar", "Images": "Imagens", - "ImportFavoriteChannelsHelp": "Se ativado, apenas canais que estão marcados como favoritos no sintonizador serão importados.", - "ImportMissingEpisodesHelp": "Se ativado, a informação acerca dos episódios em falta será importada para a base de dados do Servidor Jellyfin e mostrada dentro das temporadas e séries. Isto pode aumentar significativamente a duração da análise da biblioteca.", + "ImportFavoriteChannelsHelp": "Apenas serão importados canais marcados como favoritos no sintonizador.", + "ImportMissingEpisodesHelp": "Informação sobre episódios em falta será importada para a base de dados e estará visível entre as temporadas e séries. Poderá aumentar a duração da análise de bibliotecas.", "InstantMix": "Mix instântaneo", "ItemCount": "{0} itens", "Label3DFormat": "Formato 3D:", @@ -218,9 +218,9 @@ "LabelAppName": "Nome da aplicação", "LabelAppNameExample": "Exemplo: Sickbeard, Sonarr", "LabelArtists": "Artistas:", - "LabelArtistsHelp": "Separe múltiplos com ;", + "LabelArtistsHelp": "Separe múltiplos artistas com ponto e virgula (;).", "LabelAudioLanguagePreference": "Idioma de áudio preferido:", - "LabelBlastMessageInterval": "Intervalo para envio de mensagens de reconhecimento (segundos)", + "LabelBlastMessageInterval": "Intervalo para envio de mensagens de reconhecimento", "LabelBlastMessageIntervalHelp": "Determina a duração em segundos entre as mensagens de exploração enviadas pelo servidor.", "LabelBlockContentWithTags": "Bloquear conteúdo com as tags:", "LabelCachePath": "Localização da cache:", @@ -235,12 +235,12 @@ "LabelCustomCertificatePath": "Localização do certificado SSL personalizado:", "LabelCustomCertificatePathHelp": "Localização do ficheiro PKCS #12 que contém um certificado e um chave privada, que permite ativar o suporte a ligações TLS em domínios privados.", "LabelCustomCss": "CSS personalizado:", - "LabelCustomCssHelp": "Aplica um ficheiro de estilos customizado à interface web.", + "LabelCustomCssHelp": "Aplique um ficheiro de estilo personalizado à interface web.", "LabelCustomDeviceDisplayNameHelp": "Forneça um nome a ser mostrado, ou deixe em branco para utilizar o nome reportado pelo dispositivo.", "LabelCustomRating": "Classificação personalizada:", "LabelDateAdded": "Adicionado a:", "LabelDateAddedBehavior": "Comportamento da data de adição para conteúdo novo:", - "LabelDateAddedBehaviorHelp": "Se um valor estiver presente nos metadados, será utilizado antes destas opções.", + "LabelDateAddedBehaviorHelp": "Caso os metadados tenham um valor presente, este terá prioridade sobre estas opções.", "LabelDay": "Dia:", "LabelDefaultUser": "Utilizador por defeito:", "LabelDefaultUserHelp": "Determina que biblioteca será apresentada aos dispositivos ligados. Pode ser redefinido para cada dispositivo utilizando perfis.", @@ -259,17 +259,17 @@ "LabelEnableAutomaticPortMapHelp": "Automaticamente encaminha o porto público para o porto local através de UPnP. Isto poderá não funcionar em alguns modelos de routers ou devido às configurações da rede. As alterações só serão aplicadas após o reiniciar do servidor", "LabelEnableBlastAliveMessages": "Enviar mensagens de reconhecimento", "LabelEnableBlastAliveMessagesHelp": "Ativar esta opção se o servidor não for convenientemente detetado por outros dispositivos UPnP na rede.", - "LabelEnableDlnaClientDiscoveryInterval": "Intervalo para descoberta de clientes (segundos)", - "LabelEnableDlnaClientDiscoveryIntervalHelp": "Determina o tempo em segundos entre procuras SSDP executadas pelo Servidor Jellyfin.", + "LabelEnableDlnaClientDiscoveryInterval": "Intervalo para descoberta de clientes", + "LabelEnableDlnaClientDiscoveryIntervalHelp": "Determina o tempo em segundos entre procuras SSDP.", "LabelEnableDlnaDebugLogging": "Ativar log de depuração do DLNA", "LabelEnableDlnaDebugLoggingHelp": "Esta opção irá criar ficheiros de log grandes e deve apenas ser usado quando é necessário para depurar problemas.", "LabelEnableDlnaPlayTo": "Ativar DLNA Play-To", - "LabelEnableDlnaPlayToHelp": "Detetar dispositivos na rede e oferecer a possibilidade de os controlar.", + "LabelEnableDlnaPlayToHelp": "Detetar dispositivos na rede e oferecer a possibilidade de os controla remotamente.", "LabelEnableDlnaServer": "Ativar servidor DLNA", "LabelEnableDlnaServerHelp": "Permite que dispositivos UPnP na rede naveguem e reproduzam conteúdo.", "LabelEnableHardwareDecodingFor": "Ativar descodificação por hardware para:", "LabelEnableRealtimeMonitor": "Ativar monitorização em tempo real", - "LabelEnableRealtimeMonitorHelp": "As alterações serão processadas imediatamente em sistemas de ficheiros suportados.", + "LabelEnableRealtimeMonitorHelp": "Alterações aos ficheiros serão processadas imediatamente em sistemas de ficheiros suportados.", "LabelEnableSingleImageInDidlLimit": "Limitar a uma imagem incorporada", "LabelEnableSingleImageInDidlLimitHelp": "Alguns dispositivos não interpretarão apropriadamente se múltiplas imagens estiverem incorporadas no DIDL.", "LabelEndDate": "Data de fim:", @@ -283,13 +283,13 @@ "LabelForgotPasswordUsernameHelp": "Introduza o seu nome de utilizador, se se recordar.", "LabelFormat": "Formato:", "LabelFriendlyName": "Nome amigável:", - "LabelServerNameHelp": "Este nome será utilizado para identificar o servidor. Por defeito, é usado o nome do computador.", + "LabelServerNameHelp": "Este nome será utilizado para identificar o servidor. Hostname do servidor usado por defeito.", "LabelGroupMoviesIntoCollections": "Agrupar filmes em coleções", - "LabelGroupMoviesIntoCollectionsHelp": "Ao mostrar listas de filmes, filmes que pertençam a uma coleção serão mostrados como um único item agrupado.", + "LabelGroupMoviesIntoCollectionsHelp": "Ao mostrar listas de filmes, aqueles que pertençam a uma coleção serão apresentados como um único item agrupado.", "LabelHardwareAccelerationType": "Aceleração por hardware:", "LabelHardwareAccelerationTypeHelp": "Aceleração via hardware requer configurações adicionais.", "LabelHttpsPort": "Número do porto HTTPS local:", - "LabelHttpsPortHelp": "Número do porto TCP em que o servidor HTTPS do Jellyfin ficará à escuta.", + "LabelHttpsPortHelp": "Número do porto TCP do servidor HTTPS.", "LabelIconMaxHeight": "Altura máxima do ícone:", "LabelIconMaxWidth": "Largura máxima do ícone:", "LabelIdentificationFieldHelp": "Uma substring ou expressão regex que não diferencia maiúscula de minúsculas.", @@ -308,7 +308,7 @@ "LabelLanguage": "Idioma:", "LabelLineup": "Programação:", "LabelLocalHttpServerPortNumber": "Número do porto HTTP local:", - "LabelLocalHttpServerPortNumberHelp": "Número do porto TCP em que o servidor HTTP do Jellyfin ficará à escuta.", + "LabelLocalHttpServerPortNumberHelp": "Número do porto TCP do servidor HTTP.", "LabelLockItemToPreventChanges": "Bloquear este item para evitar alterações futuras", "LabelLoginDisclaimer": "Aviso legal de login:", "LabelLoginDisclaimerHelp": "Este aviso será mostrado na parte inferior da página de login.", @@ -340,7 +340,7 @@ "LabelModelUrl": "URL do modelo", "LabelMonitorUsers": "Monitorizar atividade de:", "LabelMusicStreamingTranscodingBitrate": "Taxa de transcodificação de música:", - "LabelMusicStreamingTranscodingBitrateHelp": "Defina a taxa máxima ao fazer transmissão de música.", + "LabelMusicStreamingTranscodingBitrateHelp": "Defina a taxa máxima de transmissão de música.", "LabelName": "Nome:", "LabelNewPassword": "Nova palavra-passe:", "LabelNewPasswordConfirm": "Confirmar nova palavra-passe:", @@ -373,7 +373,7 @@ "LabelRecordingPath": "Localização predefinida das gravações:", "LabelReleaseDate": "Data de lançamento:", "LabelRemoteClientBitrateLimit": "Taxa de bits máxima para transmissão para a Internet (Mbps):", - "LabelRuntimeMinutes": "Duração (minutos):", + "LabelRuntimeMinutes": "Tempo de execução:", "LabelSaveLocalMetadata": "Guardar capas de álbum nas pastas multimédia", "LabelSaveLocalMetadataHelp": "Guardar capas de álbum diretamente nas pastas multimédia, vai colocá-las num local de fácil acesso para edição.", "LabelScheduledTaskLastRan": "Última execução há {0}. Tempo de execução {1}.", @@ -426,11 +426,11 @@ "MessageAreYouSureYouWishToRemoveMediaFolder": "Tem a certeza de que deseja remover esta pasta?", "MessageConfirmProfileDeletion": "Tem a certeza de que deseja remover este perfil?", "MessageConfirmRecordingCancellation": "Cancelar a gravação?", - "MessageConfirmRestart": "Tem a certeza de que deseja reiniciar o Servidor Jellyfin?", - "MessageConfirmRevokeApiKey": "Tem a certeza de que deseja revogar esta chave da API? A ligação da aplicação ao Servidor Jellyfin vai ser terminada de imediato.", + "MessageConfirmRestart": "Tem a certeza de que deseja reiniciar o Jellyfin?", + "MessageConfirmRevokeApiKey": "Tem a certeza de que deseja revogar esta chave da API? A ligação da aplicação ao servidor terminará abruptamente.", "MessageConfirmShutdown": "Tem a certeza de que deseja encerrar o servidor?", "MessageDeleteTaskTrigger": "Tem a certeza de que deseja remover o agendamento desta tarefa?", - "MessageDirectoryPickerBSDInstruction": "Num sistema operativo BSD, é necessário configurar o disco Jail FreeNAS para permitir o acesso do Servidor Jellyfin.", + "MessageDirectoryPickerBSDInstruction": "Num sistema operativo BSD, é necessário configurar o disco Jail FreeNAS para permitir o acesso aos conteúdos.", "MessageDirectoryPickerLinuxInstruction": "Em sistemas operativos como Arch Linux, CentOS, Debian, Fedora, openSUSE, ou Ubuntu, é necessário dar permissão ao utilizador que executa o processo Jellyfin para ter, no mínimo, acesso de leitura à pasta.", "MessageEnablingOptionLongerScans": "Ativar esta opção pode aumentar significativamente a duração da análise da biblioteca.", "MessageFileReadError": "Ocorreu um erro ao ler este ficheiro.", @@ -441,7 +441,7 @@ "MessageNoAvailablePlugins": "Não existem extensões disponíveis.", "MessageNoMovieSuggestionsAvailable": "De momento, não existem sugestões de filmes disponíveis. Veja filmes e avalie-os, e regresse para ver as recomendações.", "MessageNoPluginsInstalled": "Não existe nenhuma extensão instalada.", - "MessageNoTrailersFound": "Nenhum trailer encontrado. Instale o canal Trailer para melhorar sua experiência com filmes, adicionando uma biblioteca de trailers da Internet.", + "MessageNoTrailersFound": "Instale o canal de trailers para melhorar a sua experiência, adicionando uma biblioteca de trailers da internet.", "MessageNothingHere": "Nada aqui.", "MessagePasswordResetForUsers": "As palavras-passe dos utilizadores seguintes foram repostas. Deverão utilizar o PIN de reposição de palavra-passe para fazer login.", "MessagePleaseEnsureInternetMetadata": "Certifique-se que a transferência de metadados da Internet está ativa.", @@ -450,7 +450,7 @@ "MinutesAfter": "minutos depois", "MinutesBefore": "minutos antes", "Monday": "Segunda", - "MoreUsersCanBeAddedLater": "É possível adicionar utilizadores mais tarde no Painel Principal.", + "MoreUsersCanBeAddedLater": "É possível adicionar utilizadores posteriormente através do Painel Principal.", "Mute": "Desativar Som", "NewCollection": "Nova Coleção", "NewCollectionNameExample": "Exemplo: Coleção Guerra das Estrelas", @@ -463,7 +463,7 @@ "OptionAllowLinkSharing": "Permitir partilha nas redes sociais", "OptionAllowManageLiveTv": "Permitir gestão de gravações de TV em Direto", "OptionAllowMediaPlayback": "Permitir reprodução de média", - "OptionAllowMediaPlaybackTranscodingHelp": "Restringir o acesso à transcodificação pode causar falhas de reprodução nas aplicações do Jellyfin devido a formatos multimédia não suportados.", + "OptionAllowMediaPlaybackTranscodingHelp": "Restringir o acesso à transcodificação pode causar falhas de reprodução nos clientes Jellyfin devido a formatos multimédia não suportados.", "OptionAllowRemoteControlOthers": "Permitir controlo remoto de outros utilizadores", "OptionAllowRemoteSharedDevices": "Permitir controlo remoto de dispositivos compartilhados", "OptionAllowRemoteSharedDevicesHelp": "Dispositivos DLNA são considerados como partilhados até que um utilizador comece a controlá-lo.", @@ -478,9 +478,9 @@ "OptionDateAddedImportTime": "Usar a data de importação para a biblioteca", "OptionDatePlayed": "Data de reprodução", "OptionDisableUser": "Desativar este utilizador", - "OptionDisableUserHelp": "Se desativado, o servidor não permite nenhuma ligação com este nome de utilizador. Ligações existentes serão terminadas.", + "OptionDisableUserHelp": "O servidor não permitirá nenhuma ligação com este nome de utilizador. Ligações existentes serão terminadas.", "OptionDislikes": "Não gostos", - "OptionDownloadImagesInAdvanceHelp": "Por defeito, a maioria das imagens são transferidas só quando uma aplicação do Jellyfin as solicita. Ative esta opção para descarregar todas as imagens antencipadamente, assim que os novos ficheiros multimédia são importados. Isto pode aumentar significativamente a duração da análise da biblioteca.", + "OptionDownloadImagesInAdvanceHelp": "Por defeito, a maioria das imagens só são transferidas quando solicitadas por um cliente Jellyfin. Ative esta opção para descarregar todas as imagens durante a importação de novos ficheiros multimédia. Isto pode aumentar significativamente a duração da análise da biblioteca.", "OptionDvd": "DVD", "OptionEmbedSubtitles": "Incorporar no contentor", "OptionEnableAccessFromAllDevices": "Ativar acesso de todos os dispositivos", @@ -498,7 +498,7 @@ "OptionHideUserFromLoginHelp": "Útil para contas de administrador privadas ou ocultas. O utilizador necessita de entrar manualmente, introduzindo o seu nome de utilizador e palavra-passe.", "OptionHlsSegmentedSubtitles": "Legendas segmentadas HLS", "OptionIgnoreTranscodeByteRangeRequests": "Ignorar requisições de extensão do byte de transcodificação", - "OptionIgnoreTranscodeByteRangeRequestsHelp": "Se ativadas, estas requisições serão honradas mas irão ignorar o cabeçalho da extensão do byte.", + "OptionIgnoreTranscodeByteRangeRequestsHelp": "Estes pedidos serão cumpridos mas irão ignorar o cabeçalho da extensão do byte.", "OptionImdbRating": "Classificação no IMDb", "OptionLikes": "Gostos", "OptionMax": "Máx", @@ -507,9 +507,9 @@ "OptionOnInterval": "Num intervalo", "OptionParentalRating": "Classificação Parental", "OptionPlainStorageFolders": "Mostrar todas as pastas como pastas de armazenamento simples", - "OptionPlainStorageFoldersHelp": "Se ativado, todas as pastas são representadas no DIDL como \"object.container.storageFolder\" ao invés de um tipo mais específico como, por exemplo, \"object.container.person.musicArtist\".", + "OptionPlainStorageFoldersHelp": "Todas as pastas são representadas no DIDL como \"object.container.storageFolder\" ao invés de um tipo mais específico como, por exemplo, \"object.container.person.musicArtist\".", "OptionPlainVideoItems": "Mostrar todos os vídeos como itens de vídeo simples", - "OptionPlainVideoItemsHelp": "Se ativado, todos os vídeos são representados no DIDL como \"object.item.videoItem\" ao invés de um tipo mais específico como, por exemplo, \"object.item.videoItem.movie\".", + "OptionPlainVideoItemsHelp": "Todos os vídeos são representados no DIDL como \"object.item.videoItem\" ao invés de um tipo mais específico como, por exemplo, \"object.item.videoItem.movie\".", "OptionPlayCount": "N.º de Visualizações", "OptionPremiereDate": "Data de Estreia", "OptionReleaseDate": "Data de Lançamento", @@ -557,7 +557,7 @@ "SearchForSubtitles": "Procurar Legendas", "SendMessage": "Enviar mensagem", "Series": "Séries", - "ServerUpdateNeeded": "Este Servidor Jellyfin precisa de ser atualizado. Para transferir a versão mais recente, por favor visite {0}", + "ServerUpdateNeeded": "Este servidor tem que ser atualizado. Para transferir a versão mais recente, por favor visite {0}", "Settings": "Configurações", "SettingsSaved": "Configurações guardadas.", "Share": "Partilhar", @@ -651,7 +651,7 @@ "Shows": "Séries", "Songs": "Músicas", "Sync": "Sincronização", - "Absolute": "Absoluto", + "Absolute": "Completo", "CriticRating": "Avaliação da crítica", "ContinueWatching": "Continuar a ver", "ConfirmEndPlayerSession": "Deseja encerrar o Servidor Jellyfin em {0}?", @@ -675,7 +675,7 @@ "Browse": "Procurar", "BoxRear": "Caixa (verso)", "Box": "Caixa", - "BookLibraryHelp": "Livros digitais e áudio livros são suportados. Consulte o guia de nomenclatura de livros{1}.", + "BookLibraryHelp": "Livros digitais e áudio livros são suportados. Consulte o {0} guia de nomenclatura de livros{1}.", "BirthLocation": "Local de nascimento", "AsManyAsPossible": "Tantos quanto possível", "Art": "Capa", @@ -721,7 +721,7 @@ "EveryNDays": "A cada {0} dias", "ErrorSavingTvProvider": "Ocorreu um erro ao guardar o provedor do serviços de TV. Por favor, garanta que está acessível e tente de novo.", "ErrorStartHourGreaterThanEnd": "A hora de fim deve ser superior à hora de início.", - "ErrorDeletingItem": "Ocorreu um erro ao apagar o item do Servidor Jellyfin. Por favor, verifique o acesso de escrita do Servidor Jellyfin à pasta e tente de novo.", + "ErrorDeletingItem": "Ocorreu um erro ao apagar o item do servidor. Por favor, verifique o acesso de escrita do Jellyfin à pasta e tente de novamente.", "ErrorAddingTunerDevice": "Ocorreu um erro ao adicionar o dispositivo de sintonização. Por favor, garanta que está acessível e tente de novo.", "ErrorAddingXmlTvFile": "Ocorreu um erro ao aceder ao ficheiro XMLTV. Por favor, certifique-se que o ficheiro está acessível e tente de novo.", "Episodes": "Episódios", @@ -742,14 +742,14 @@ "DownloadsValue": "{0} transferências", "Download": "Transferir", "DoNotRecord": "Não gravar", - "DisplayModeHelp": "Selecione o tipo de ecrã onde o Jellyfin será utilizado.", + "DisplayModeHelp": "Selecione o estilo de apresentação da interface.", "DisplayMissingEpisodesWithinSeasonsHelp": "Deve também ser ativado para as bibliotecas de TV nas configurações do servidor.", "DisplayMissingEpisodesWithinSeasons": "Mostrar episódios em falta numa série", "DisplayInOtherHomeScreenSections": "Mostrar no ecrã principal em secções como multimédia recente ou continue a ver", "DisplayInMyMedia": "Mostrar no ecrã principal", "Disconnect": "Desligar", "DirectStreaming": "Reprodução direta", - "DirectStreamHelp2": "Reprodução direta de um ficheiro requer pouco processamento e não implica perda de qualidade num vídeo.", + "DirectStreamHelp2": "Reprodução direta de um ficheiro requer pouco processamento e implica uma perda de qualidade mínima.", "DefaultSubtitlesHelp": "As legendas são carregadas com base nas definições por defeito ou forçado nos metadados. As preferências de idioma são consideradas quando existem múltiplas opções disponíveis.", "DefaultMetadataLangaugeDescription": "Estes são os valores por defeito que podem ser customizados para cada uma das bibliotecas.", "ErrorDefault": "Ocorreu um erro a processar o pedido. Por favor, tente novamente mais tarde.", @@ -783,7 +783,7 @@ "LabelBurnSubtitles": "Integrar legendas:", "LabelBirthYear": "Ano de nascimento:", "LabelBirthDate": "Data de nascimento:", - "LabelBindToLocalNetworkAddressHelp": "Opcional. Indique um endereço IP de uma interface de rede local para colocar o servidor à escuta. Se deixado em branco, o servidor ficará à escuta em todas as interfaces de rede disponíveis. Alterar este parâmetro implica reiniciar o Servidor Jellyfin.", + "LabelBindToLocalNetworkAddressHelp": "Indique um endereço IP de uma interface de rede local para colocar o servidor à escuta. Caso deixe em branco, o servidor ficará à escuta em todas as interfaces de rede disponíveis. Alterar este parâmetro requer reinicio do servidor.", "LabelBindToLocalNetworkAddress": "Endereço local para colocar o servidor à escuta:", "LabelAutomaticallyRefreshInternetMetadataEvery": "Atualizar metadados automaticamente a partir da Internet:", "LabelAuthProvider": "Provedor de autenticação:", @@ -796,7 +796,7 @@ "Items": "Itens", "InstallingPackage": "A instalar {0} (version {1})", "HttpsRequiresCert": "Para activar ligações seguras, é necessário fornecer um certificado SSL confiável. Forneça um certificado SSL ou desactive as ligações seguras.", - "DirectStreamHelp1": "O tipo de multimédia (H.264, AC3, etc.) e a sua resolução são compatíveis com o dispositivo, no entanto, o formato (mkv, avi, wmv, etc.) não é. O conteúdo é reempacotado em tempo real antes de ser enviado para o dispositivo.", + "DirectStreamHelp1": "O tipo de multimédia (H.264, AC3, etc.) e a sua resolução são compatíveis com o dispositivo, no entanto, o formato (mkv, avi, wmv, etc.) não é. O conteúdo será reempacotado em tempo real antes de ser enviado para o dispositivo.", "DirectPlaying": "Reprodução direta", "Backdrop": "Imagem de Fundo", "SortChannelsBy": "Ordenar canais por:", @@ -828,13 +828,13 @@ "ReplaceAllMetadata": "Substituir todos os metadados", "RepeatOne": "Repetir este", "RepeatMode": "Modo de Repetição", - "ServerRestartNeededAfterPluginInstall": "O Servidor Jellyfin necessitará de reiniciar depois de instalar uma extensão.", + "ServerRestartNeededAfterPluginInstall": "O Jellyfin terá que reiniciar após instalar uma extensão.", "MessageNoPluginConfiguration": "Esta extensão não é configurável.", - "MessagePluginInstallDisclaimer": "As extensões desenvolvidas pela comunidade Jellyfin são uma ótima forma de melhorar a experiência de utilização do Jellyfin, adicionando novas funcionalidades e benefícios. Antes de proceder à instalação, tenha em atenção que estas podem alterar determinados comportamentos no Servidor Jellyfin e provocar efeitos como tempos de atualização da Biblioteca mais longos, processamento adicional em segundo plano e estabilidade do sistema reduzida.", + "MessagePluginInstallDisclaimer": "As extensões desenvolvidas por membros da comunidade são uma ótima maneira de melhorar a experiência com funcionalidades adicionais. Antes de proceder à instalação, tenha em atenção que estas podem alterar determinados comportamentos no servidor, como o aumento da duração de análise de bibliotecas, processamento adicional em segundo plano e redução da estabilidade do sistema.", "MessagePluginConfigurationRequiresLocalAccess": "Para configurar esta extensão, inicie sessão localmente no servidor.", "HeaderPluginInstallation": "Instalação de Extensão", - "MessagePluginInstalled": "A extensão foi instalada com sucesso. O Servidor Jellyfin necessitará de reiniciar para aplicar as alterações.", - "PleaseRestartServerName": "Por favor, reinicie o Servidor Jellyfin - {0}.", + "MessagePluginInstalled": "A extensão foi instalada com sucesso. O servidor terá que reiniciar para aplicar as alterações.", + "PleaseRestartServerName": "Por favor, reinicie o Jellyfin no {0}.", "PleaseConfirmPluginInstallation": "Por favor clique em OK para confirmar que leu o conteúdo acima, e que deseja prosseguir com a instalação da extensão.", "PleaseAddAtLeastOneFolder": "Por favor, adicione pelo menos uma pasta a esta Biblioteca, utilizando para isso o botão Adicionar.", "Played": "Reproduzido", @@ -845,10 +845,10 @@ "PlayAllFromHere": "Reproduzir todos a partir daqui", "PerfectMatch": "Correspondência perfeita", "People": "Pessoas", - "PasswordResetProviderHelp": "Selecione um provedor de reposição de palavra-passe a ser usado quando um utilizador requisita uma reposição de palavra-passe", - "PackageInstallFailed": "Instalação de {0} falhada.", - "PackageInstallCompleted": "Instalação de {0} terminada.", - "PackageInstallCancelled": "Instalação de {0} cancelada.", + "PasswordResetProviderHelp": "Selecione um fornecedor de reposição de senha a ser usado quando um utilizador solicitar a reposição da sua senha.", + "PackageInstallFailed": "Instalação de {0} (version {1}) falhou.", + "PackageInstallCompleted": "Instalação de {0} (version {1}) terminada.", + "PackageInstallCancelled": "Instalação de {0} (version {1}) cancelada.", "Overview": "Resumo", "OriginalAirDateValue": "Data de estreia original: {0}", "OptionSubstring": "Parte de palavra", @@ -917,13 +917,13 @@ "HeaderVideoQuality": "Qualidade do Vídeo", "HeaderVideoType": "Tipo de Vídeo", "LabelFolder": "Pasta:", - "LabelOptionalNetworkPath": "(Opcional) Pasta partilhada de rede:", + "LabelOptionalNetworkPath": "Pasta de rede partilhada:", "ColorSpace": "Espaço de cores", "HeaderMyMediaSmall": "O Meu Conteúdo (pequeno)", "HeaderNewDevices": "Novos Dispositivos", "HeaderRecordingOptions": "Opções de Gravação", "HeaderSortOrder": "Direção de Ordenação", - "LabelBaseUrlHelp": "Adiciona uma sub-pasta personalizada ao URL do servidor. Por exemplo: http://exemplo.com/<baseurl>", + "LabelBaseUrlHelp": "Adiciona uma sub-pasta personalizada ao URL do servidor. Por exemplo: http://exemplo.com/<baseurl>", "LabelMoviePrefixHelp": "Se aplicar um prefixo aos títulos dos filmes, introduza-o aqui para que o servidor consiga tratá-los corretamente.", "LabelPleaseRestart": "As alterações produzirão efeito depois de recarregar a página web.", "LabelRecordingPathHelp": "Especifique a localização por defeito para guardar as gravações. Se for deixado em branco, será utilizada a pasta base do servidor.", @@ -933,7 +933,7 @@ "HeaderMusicQuality": "Qualidade da Música", "HeaderMyDevice": "O Meu Dispositivo", "HeaderSortBy": "Ordenar Por", - "LabelOptionalNetworkPathHelp": "Se esta pasta estiver partilhada na rede, fornecer o caminho de rede pode permitir aos clientes aceder diretamente aos ficheiros multimédia. For example, {0} or {1}.", + "LabelOptionalNetworkPathHelp": "Caso a pasta esteja partilhada, fornecer o caminho de rede pode permitir aos clientes aceder diretamente aos ficheiros multimédia. For example, {0} or {1}.", "LabelPersonRoleHelp": "Exemplo: motorista da carrinha de gelados", "LabelPlayer": "Reprodutor:", "LabelServerName": "Nome do servidor:", @@ -959,7 +959,7 @@ "LabelKidsCategories": "Categorias para crianças:", "LabelMovieCategories": "Categorias para filmes:", "LabelMoviePrefix": "Prefixo para filmes:", - "LabelMovieRecordingPath": "Caminho para gravação de filmes (opcional):", + "LabelMovieRecordingPath": "Caminho para gravação de filmes:", "LabelNewsCategories": "Categorias para notícias:", "LabelNumber": "Número:", "LabelPlayMethod": "Método de reprodução:", @@ -969,7 +969,7 @@ "LabelProfileCodecs": "Codecs:", "LabelReasonForTranscoding": "Razão para transcodificação:", "LabelScreensaver": "Proteção de Ecrã:", - "LabelSeriesRecordingPath": "Caminho para gravação de séries (opcional):", + "LabelSeriesRecordingPath": "Caminho para gravação de séries:", "ColorPrimaries": "Cores primárias", "MessageInvalidForgotPasswordPin": "Foi inserido um código PIN inválido ou expirado. Por favor, tente de novo.", "MessageImageTypeNotSelected": "Por favor, selecione um tipo de imagem da lista.", @@ -1001,7 +1001,7 @@ "HeaderTypeImageFetchers": "{0} fornecedores de imagens", "LabelImageFetchersHelp": "Active e ordene os fornecedores de imagens por ordem de preferência.", "LabelKodiMetadataUserHelp": "Autorizar que outras aplicações usem dados de visualização gaurdados em ficheiros NFO.", - "LabelMetadataSaversHelp": "Escolha o formato em que deseja guardar metadados.", + "LabelMetadataSaversHelp": "Escolha o formato a utilizar ao guardar metadados.", "LabelRefreshMode": "Modo de actualização:", "LabelRemoteClientBitrateLimitHelp": "Valor-limite de taxa de transmissão para todos os dispositivos fora da rede local. Este valor é opcional e aplica-se a cada transmissão individual. Ao definir este valor previne que dispositivos peçam uma taxa de transmissão acima da sua ligação à internet. Pedir uma taxa de transmissão acima do limite da ligação implica a necessidade de transcodificar o vídeo e num aumento da carga da CPU.", "Home": "Início", @@ -1031,15 +1031,15 @@ "OptionEnableForAllTuners": "Ativar para todos os sintonizadores", "OptionEnableExternalContentInSuggestions": "Ativar conteúdo externo nas sugestões", "OptionBluray": "Blu-Ray", - "OptionAutomaticallyGroupSeriesHelp": "Se ativado, sérias que estejam espalhadas por várias pastas nesta biblioteca, serão automaticamente combinadas numa única série.", + "OptionAutomaticallyGroupSeriesHelp": "Séries que estejam espalhadas por várias pastas nesta biblioteca, serão automaticamente combinadas numa única série.", "OptionAutomaticallyGroupSeries": "Combinar automaticamente séries que estejam espalhadas por várias pastas", "OptionAllowVideoPlaybackRemuxing": "Permitir a reprodução de vídeo que requeira conversão sem transcodificação", "OptionAllowSyncTranscoding": "Permitir a transferência e sincronização de conteúdos que requeiram transcodificação", "OptionAllowLinkSharingHelp": "Apenas serão partilhadas páginas que contenham informação sobre os conteúdos. Os conteúdos nunca serão partilhados. As partilhas são limitadas no tempo e expiram após {0} dias.", "Option3D": "3D", - "OnlyImageFormats": "Apenas formatos de imagem (VOBSUB, PGS, SUB, etc)", + "OnlyImageFormats": "Apenas Formatos de Imagem (VOBSUB, PGS, SUB, etc)", "OnlyForcedSubtitlesHelp": "Só serão carregadas legendas marcadas como forçadas.", - "OnlyForcedSubtitles": "Apenas legendas forçadas", + "OnlyForcedSubtitles": "Apenas Legendas Forçadas", "Off": "Desligado", "NumLocationsValue": "{0} pastas", "Normal": "Normal", @@ -1077,7 +1077,7 @@ "MoveLeft": "Mover para a esquerda", "MoreFromValue": "Mais de {0}", "Mobile": "Móvel", - "MetadataSettingChangeHelp": "Alterar as definições de metadados irá afetar conteúdo adicionado futuramente. Para refrescar o conteúdo existente, abra o painel de detalhes e clique no botão Refrescar, ou execute refrescamentos em massa utilizando o gestor de metadados.", + "MetadataSettingChangeHelp": "Alterar as definições de metadados afetarão conteúdos adicionados futuramente. Para atualizar o conteúdo existente, abra o painel de detalhes e clique no botão Recarregar metadados, ou execute atualizações em massa utilizando o gestor de metadados.", "MetadataManager": "Gestor de Metadados", "Metadata": "Metadados", "MessageYouHaveVersionInstalled": "Neste momento está instalada a versão {0}.", @@ -1098,7 +1098,7 @@ "LearnHowYouCanContribute": "Veja como pode contribuir.", "Large": "Grande", "LanNetworksHelp": "Lista separada por vírgulas de endereços IP ou IP/máscara que serão considerados como locais quando se aplicam restrições de largura de banda. Se preenchido, todos os outros endereços serão considerados externos e estarão sujeitos às restrições de largura de banda para dispositivos externos. Se deixado em branco, apenas serão consideradas locais as sub-redes do servidor.", - "LabelffmpegPathHelp": "Caminho para o binário ffmpeg, ou para a pasta que o contém.", + "LabelffmpegPathHelp": "Caminho para a aplicação ou pasta que contém o ffmgeg.", "LabelffmpegPath": "Caminho FFmpeg:", "LabelYear": "Ano:", "LabelWeb": "Web:", @@ -1131,7 +1131,7 @@ "NewEpisodes": "Novos episódios", "Never": "Nunca", "Name": "Nome", - "MusicVideo": "Videoclip", + "MusicVideo": "Videoclipe", "MusicArtist": "Artista de Música", "MusicAlbum": "Álbum de Música", "MoreMediaInfo": "Informações", @@ -1171,8 +1171,8 @@ "Small": "Pequeno", "ShowTitle": "Mostrar título", "ShowIndicatorsFor": "Mostrar indicadores para:", - "ServerNameIsShuttingDown": "Jellyfin Server - {0} está a desligar.", - "ServerNameIsRestarting": "Jellyfin Server - {0} está a reiniciar.", + "ServerNameIsShuttingDown": "O servidor {0} está a desligar.", + "ServerNameIsRestarting": "O servidor {0} está a reiniciar.", "SeriesYearToPresent": "{0} - Presente", "SeriesSettings": "Configuração de série", "SeriesCancelled": "Série cancelada.", @@ -1196,8 +1196,8 @@ "PictureInPicture": "Imagem em imagem", "OptionDisplayFolderView": "Mostre em vista de pasta para ver pastas de mídia", "NewCollectionHelp": "Coleções permitem criar grupos personalizados de filmes e outros tipos de conteúdo.", - "MusicLibraryHelp": "Reveja o {0}guia de nomeação de música{1}.", - "MovieLibraryHelp": "Reveja o {0} guia de nomeação de filmes {1}.", + "MusicLibraryHelp": "Consulte o {0}guia de nomenclatura de música{1}.", + "MovieLibraryHelp": "Consulte o {0}guia de nomenclatura de filmes{1}.", "MessageConfirmAppExit": "Quer sair?", "MediaInfoRefFrames": "Ref quadros", "MediaInfoLayout": "Disposição", @@ -1219,7 +1219,7 @@ "EnableStreamLooping": "Auto-cíclico de streams ao vivo", "Down": "Baixo", "ButtonSplit": "Dividir", - "NoCreatedLibraries": "Parece que ainda não foi criada nenhuma biblioteca por enquanto. {0} Gostaria de criar uma biblioteca agora? {1}", + "NoCreatedLibraries": "Parece que ainda não foi criada nenhuma biblioteca. {0} Deseja criar uma biblioteca agora? {1}", "AskAdminToCreateLibrary": "Pergunte a um administrador para criar uma biblioteca.", "LabelVideoResolution": "Resolução de vídeo:", "LabelPlayerDimensions": "Dimensões de leitor:", @@ -1232,7 +1232,7 @@ "AllowFfmpegThrottlingHelp": "Suspende o processo de transcodificação assim que este avance o suficiente após o ponto de reprodução atual, para poupança de recursos. Esta funcionalidade é mais útil quando a reprodução é maioritariamente contínua, sem avançar ou recuar manualmente. Desative esta opção caso haja problemas de reprodução.", "AllowFfmpegThrottling": "Reduzir Taxa de Transcodificação", "PreferEmbeddedTitlesOverFileNamesHelp": "Determina o título a apresentar por defeito quando não é possível carregar metadados locais nem da Internet.", - "OptionSaveMetadataAsHiddenHelp": "Alterar esta definição apenas afetará metadados guardados futuramente. Ficheiros existentes serão atualizados assim que forem alterados pelo Servidor Jellyfin.", + "OptionSaveMetadataAsHiddenHelp": "Alterar esta definição apenas afetará metadados guardados futuramente. Ficheiros existentes serão atualizados assim que forem alterados pelo servidor.", "ButtonSyncPlay": "SyncPlay", "LabelRepositoryUrl": "URL do Repositório", "HeaderNewRepository": "Novo Repositório", @@ -1257,7 +1257,7 @@ "LabelChromecastVersion": "Versão do \"Chromecast\"", "LabelLibraryPageSizeHelp": "Define a quantidade de items a apresentar na página de uma Biblioteca. Para desativar a existência de paginação, introduza o valor 0.", "LabelLibraryPageSize": "Tamanho da página da Biblioteca:", - "LabelEnableHttpsHelp": "Permite que o servidor escute na porta HTTPS configurada. Um certificado válido também deve ser configurado para que isso entre em vigor.", + "LabelEnableHttpsHelp": "Escuta na porta HTTPS configurada. Um certificado válido também deverá ser configurado para funcionar.", "LabelEnableHttps": "Ativar HTTPS", "LabelDeinterlaceMethod": "Método de desentrelaçamento:", "HeaderSyncPlayEnabled": "SyncPlay ativado", @@ -1272,7 +1272,7 @@ "EnableDetailsBanner": "Cartaz de Detalhes", "EnableDecodingColorDepth10Vp9": "Ativar descodificação de hardware de 10-Bits para VP9", "EnableDecodingColorDepth10Hevc": "Ativar descodificação de hardware de 10-Bits para HEVC", - "DeinterlaceMethodHelp": "Selecionar um método de desentrelaçamento para converter conteúdo entrelaçado.", + "DeinterlaceMethodHelp": "Selecionar um método de desentrelaçamento ao transcodificar conteúdo entrelaçado através de software. Caso esteja ativo, o desentrelaçamento através de aceleração por hardware terá prioridade sobre esta opção.", "ClientSettings": "Definições do Cliente", "ButtonTogglePlaylist": "Lista de Reprodução", "BoxSet": "Coleção", @@ -1282,5 +1282,124 @@ "Data": "Dados", "ButtonUseQuickConnect": "Usar Quick Connect", "ButtonActivate": "Ativar", - "Authorize": "Autorizar" + "Authorize": "Autorizar", + "LabelMaxMuxingQueueSize": "Tamanho máximo da fila de muxing:", + "Preview": "Pré-visualizar", + "SubtitleVerticalPositionHelp": "Número da linha onde o texto é exibido. Números positivos representam ordem descendente. Números negativos representam ordem ascendente.", + "LabelSubtitleVerticalPosition": "Posição vertical:", + "ClearQueue": "Limpar fila", + "StopPlayback": "Parar reprodução", + "LabelTonemappingAlgorithm": "Selecione o algoritmo de mapeamento de tonalidade a usar:", + "EnableTonemapping": "Ativar mapeamento de tonalidade", + "LabelOpenclDeviceHelp": "Este é o dispositivo OpenCL usado para o mapeamento de tonalidades. O lado esquerdo do ponto representa o número da plataforma e no lado direito é representado o número do dispositivo na plataforma. O valor padrão é 0.0. É necessário o ficheiro da aplicação ffmpeg que contêm o método de aceleração por hardware OpenCL.", + "LabelOpenclDevice": "Dispositivo OpenCL:", + "LabelColorPrimaries": "Cor primária:", + "LabelColorTransfer": "Transferência de cor:", + "LabelColorSpace": "Espaço de cor:", + "LabelVideoRange": "Intervalo do vídeo:", + "MediaInfoColorPrimaries": "Cores primárias", + "MediaInfoColorTransfer": "Transferência da cor", + "MediaInfoColorSpace": "Espaço de cor", + "MediaInfoVideoRange": "Intervalo do vídeo", + "ButtonPlayer": "Reprodutor", + "ButtonCast": "Elenco", + "EnableBlurHashHelp": "Imagens que ainda estão a ser descarregadas serão apresentadas num espaço reservado.", + "EnableBlurHash": "Ativar espaço desfocado para imagens", + "UnsupportedPlayback": "O Jellyfin não consegue descodificar conteúdo protegido por DRM, mas tentará de qualquer forma, incluindo títulos protegidos. Alguns ficheiros reproduziram um ecrã preto devido à encriptação ou a outras funcionalidades não suportadas, como títulos interativos.", + "OnApplicationStartup": "No arranque da aplicação", + "EveryXHours": "A cada {0} horas", + "EveryHour": "A cada hora", + "EveryXMinutes": "A cada {0} minutos", + "OnWakeFromSleep": "Ao acordar da suspensão", + "DailyAt": "Diariamente no {0}", + "LastSeen": "Última visita a {0}", + "PersonRole": "como {0}", + "ListPaging": "{0}-{1} de {2}", + "WriteAccessRequired": "O Jellyfin necessita de acesso de escrita a esta pasta. Garanta acesso de escrita e tente novamente.", + "PathNotFound": "O caminho não foi encontrado. Verifique se o caminho é válido e tente novamente.", + "Writers": "Argumentistas", + "ViewAlbumArtist": "Ver artista do álbum", + "Video": "Vídeo", + "UseDoubleRateDeinterlacingHelp": "Esta definição usa o field rate durante o desentrelaçamento, referido frequentemente como desentrelaçamento bob, que duplica a taxa de frames do vídeo de forma proporcionar um movimento fluído como quando visualiza um vídeo desentrelaçado numa televisão.", + "UseDoubleRateDeinterlacing": "Duplicar o frame rate durante desentrelaçamento", + "TvLibraryHelp": "Consulte o {0}guia de nomenclatura de TV{1}.", + "TabNetworking": "Rede", + "TabRepositories": "Repositórios", + "SyncPlayAccessHelp": "Selecione o nível de acesso deste utilizador à funcionalidade SyncPlay. O SyncPlay permite a reprodução sincronizada com outros dispositivos.", + "Subtitle": "Legenda", + "SubtitleOffset": "Desvio das Legendas", + "SubtitleDownloadersHelp": "Ative e classifique os fornecedores de legendas por ordem de prioridade.", + "SubtitleAppearanceSettingsDisclaimer": "Estas definições não se aplicam a legendas gráficas (PGS, DVD, etc) ou a legendas ASS/SSA com estilos próprios incorporados.", + "SubtitleAppearanceSettingsAlsoPassedToCastDevices": "Estas definições também se aplicam à reprodução através de um Chromecast iniciada por este dispositivo.", + "SpecialFeatures": "Funcionalidades Especiais", + "Filter": "Filtro", + "New": "Novo", + "ShowMore": "Mostrar mais", + "ShowLess": "Mostrar menos", + "SettingsWarning": "Alterar estes valores poderá causar instabilidade ou falhas de ligação. Caso ocorra algum problema recomendamos que volte a alterar para os valores padrão.", + "SelectServer": "Selecionar Servidor", + "Season": "Temporada", + "SaveChanges": "Guardar alterações", + "Restart": "Reiniciar", + "ResetPassword": "Repor Senha", + "RefreshDialogHelp": "Os metadados são atualizados consoante as configurações e serviços de internet ativos no Painel Principal.", + "QuickConnectNotActive": "O Quick Connect não está ativo neste servidor", + "QuickConnectNotAvailable": "Solicite a ativação do Quick Connect ao administrador do servidor", + "QuickConnectInvalidCode": "Código Quick Connect inválido", + "QuickConnectDescription": "Para iniciar sessão com o Quick Connect, prima o botão Quick Connect no dispositivo com o qual está a iniciar sessão e introduza o seguinte código.", + "QuickConnectDeactivated": "O Quick Connect foi desativado antes do pedido de inicio de sessão ser aprovado", + "QuickConnectAuthorizeFail": "Código de quick connect desconhecido", + "QuickConnectAuthorizeSuccess": "Pedido autorizado", + "QuickConnectAuthorizeCode": "Introduza o código {0} para iniciar sessão", + "QuickConnectActivationSuccessful": "Ativado com sucesso", + "Profile": "Perfil", + "PreviousTrack": "Voltar ao anterior", + "PreferEmbeddedEpisodeInfosOverFileNames": "Dar preferência à informação embutida em vez do nome do ficheiro", + "PreferEmbeddedEpisodeInfosOverFileNamesHelp": "Utiliza as informações do episódio dos metadados embutidos, caso existam.", + "MessageGetInstalledPluginsError": "Ocorreu um erro ao listar as extensões instaladas.", + "MessagePluginInstallError": "Ocorreu um erro durante a instalação da extensão.", + "PosterCard": "Cartão do Cartaz", + "Poster": "Cartaz", + "PlaybackErrorNoCompatibleStream": "Este cliente não é compatível com o formato multimédia e o servidor não envia um formato que seja compatível.", + "PlaybackRate": "Taxa de Reprodução", + "Photo": "Fotografia", + "Person": "Pessoa", + "OptionRequirePerfectSubtitleMatchHelp": "Solicitar uma combinação perfeita filtrará as legendas para apenas as que tenham sido testadas e verificadas com seu ficheiro de vídeo. Desmarcar esta opção aumenta a probabilidade de transferência de legendas, aumentando também o número de casos de dessincronia de tempos ou textos incorrectos.", + "OptionMaxActiveSessionsHelp": "O valor 0 desativa esta funcionalidade.", + "OptionMaxActiveSessions": "Atribuir número máximo de sessões de utilizador simultâneas.", + "LabelAlbumArtMaxResHelp": "Resolução máxima da arte do álbum exposta através da propriedade upnp:albumArtURI.", + "Other": "Outro", + "EnableQuickConnect": "Ativar quick connect neste servidor", + "EnableAutoCast": "Definir como padrão", + "NextTrack": "Ir para o próximo", + "MusicVideos": "Videoclipes", + "Movie": "Filme", + "MessageSyncPlayErrorMedia": "A ativação do SyncPlay falhou! Erro de média.", + "MessageSyncPlayErrorMissingSession": "A ativação do SyncPlay falhou! Sessão em falta.", + "MessageSyncPlayErrorNoActivePlayer": "Não foi encontrado nenhum reprodutor ativo. O SyncPlay foi desativado.", + "MessageSyncPlayErrorAccessingGroups": "Ocorreu um erro ao aceder à lista de grupos.", + "MessageSyncPlayLibraryAccessDenied": "Conteúdo de acesso restrito.", + "MessageSyncPlayJoinGroupDenied": "É necessário permissão para utilizar o SyncPlay.", + "MessageSyncPlayCreateGroupDenied": "É necessário permissão para criar um grupo.", + "MessageSyncPlayGroupDoesNotExist": "A entrada no grupo falhou porque não existe.", + "MessageSyncPlayPlaybackPermissionRequired": "É necessário permissão de reprodução.", + "MessageSyncPlayNoGroupsAvailable": "Não existem grupos disponíveis. Comece por reproduzir algo primeiro.", + "MessageSyncPlayGroupWait": "{0} está em buffering…", + "MessageSyncPlayUserLeft": "{0} saiu do grupo.", + "MessageSyncPlayUserJoined": "{0} juntou-se ao grupo.", + "MessageSyncPlayDisabled": "SyncPlay desativado.", + "MessageSyncPlayEnabled": "SyncPlay ativo.", + "MessageNoGenresAvailable": "Ative alguns fornecedores de metadados para obter géneros da internet.", + "MessageAddRepository": "Caso deseje adicionar um repositório, carregue no botão ao lado do cabeçalho e preencha a informação pedida.", + "LabelRepositoryNameHelp": "Nome personalizado para distinguir este repositório de outros presentes no servidor.", + "LabelRepositoryName": "Nome do Repositório", + "LabelRepositoryUrlHelp": "Localização do manifesto do repositório que deseja incluir.", + "LabelUserMaxActiveSessions": "Número máximo de sessões de utilizador em simultâneo:", + "LabelQuickConnectCode": "Código Quick Connect:", + "LabelUnstable": "Instável", + "LabelKnownProxies": "Proxies conhecidas:", + "LabelIconMaxResHelp": "Resolução máxima dos ícones expostos através da propriedade upnp:icon.", + "LabelCurrentStatus": "Ponto da situação:", + "KnownProxiesHelp": "Lista de endereços IP, separada por virgulas, de proxies conhecidas que são usadas ao ligar à sua instância Jellyfin. É necessário para usar adequadamente o cabeçalho X-Forwarded-For. Requer reinicio após alterar.", + "Image": "Imagem" } From a096f4d5138272008a3ad0b497d494b0053d9c92 Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Sat, 10 Oct 2020 04:30:21 +0000 Subject: [PATCH 267/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index 8acfbde253..084cbdf3e6 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -50,7 +50,7 @@ "OptionDvd": "DVD", "OptionHasThemeSong": "Hình nền bài hát", "OptionHasThemeVideo": "Hình nền Video", - "OptionHideUser": "Ẩn người dùng này từ màn hình đăng nhập", + "OptionHideUser": "Ẩn người dùng này khỏi màn hình đăng nhập", "OptionImdbRating": "Đánh giá IMDb", "OptionIsHD": "Độ nét cao", "OptionIsSD": "Độ nét tiêu chuẩn", @@ -164,7 +164,7 @@ "ButtonWebsite": "Trang web", "ButtonUninstall": "Gỡ cài đặt", "ButtonTrailer": "Tóm tắt", - "ButtonSubmit": "Đăng", + "ButtonSubmit": "Gửi đi", "ButtonSplit": "Tách", "ButtonStop": "Ngưng", "ButtonStart": "Bắt đầu", @@ -329,7 +329,7 @@ "ErrorAddingXmlTvFile": "Có lỗi xảy ra khi truy cập tài liệu XMLTV. Hãy thử lại khi chắc chắn rằng tài liệu này tồn tại.", "ErrorAddingTunerDevice": "Đã xảy ra lỗi khi thêm thiết bị dò. Hãy đảm bảo rằng nó có thể truy cập được và thử lại.", "ErrorAddingMediaPathToVirtualFolder": "Có lỗi xảy ra khi thêm đường dẫn phương tiện này. Vui lòng đảm bảo đường dẫn chính xác và Jellyfin được phép truy cập vào vị trí đó.", - "ErrorAddingListingsToSchedulesDirect": "Có lỗi xảy ra khi thêm danh sách này vào tài khoản Schedules Direct của bạn. Schedules Direct chỉ cho phép một số lượng danh sách nhất định mỗi tài khoản. Bạn có thể cần phải đăng nhập vào trang web của Schedules Direct và xoá những danh sách khác trước khi có thể thêm danh sách mới.", + "ErrorAddingListingsToSchedulesDirect": "Có lỗi xảy ra khi thêm nội dung này vào tài khoản Schedules Direct của bạn. Lên lịch trực tiếp chỉ cho phép một số lượng danh sách nhất định mỗi tài khoản. Bạn có thể cần phải đăng nhập vào trang web của Schedules Direct và xoá những danh sách khác trước khi có thể thêm danh sách mới.", "Episodes": "Tập Phim", "Episode": "Tập", "EndsAtValue": "Kết thúc lúc {0}", @@ -375,7 +375,7 @@ "HeaderMetadataSettings": "Cài Đặt Dữ Liệu Mô Tả", "HeaderMediaFolders": "Thư Mục Chứa Nội Dung", "HeaderMedia": "Nội Dung", - "HeaderLoginFailure": "Đăng Nhập Không Thành Công", + "HeaderLoginFailure": "Đăng nhập thất bại", "HeaderLiveTvTunerSetup": "Thiết lập Bộ dò TV Trực tiếp", "HeaderLibrarySettings": "Cài Đặt Thư Viện", "HeaderLibraryOrder": "Thứ Tự Thư Viện", @@ -606,7 +606,7 @@ "LabelExtractChaptersDuringLibraryScanHelp": "Tạo hình ảnh phân cảnh khi video được nhập trong quá trình quét thư viện. Nếu không thì hình này này sẽ được trích xuất thông qua những tác vụ định kì, giúp cho quá trình quét thư viện diễn ra nhanh hơn.", "LabelExtractChaptersDuringLibraryScan": "Trích xuất hình ảnh phân cảnh khi quét thư viện", "LabelBaseUrlHelp": "Thêm một thư mục con tùy chỉnh vào đường dẫn máy chủ. Ví dụ: http://example.com/<baseurl>", - "LabelLoginDisclaimerHelp": "Một tin nhắn sẽ hiển thị ở phía cuối của trang đăng nhập.", + "LabelLoginDisclaimerHelp": "Một thông báo sẽ được hiển thị ở cuối trang đăng nhập.", "LabelLoginDisclaimer": "Hiển thị khi đăng nhập:", "LabelLockItemToPreventChanges": "Khoá mục này để ngăn những thay đổi trong tương lai", "LabelLocalHttpServerPortNumberHelp": "Số cổng TCP cho máy chủ HTTP.", @@ -982,7 +982,7 @@ "LabelVaapiDevice": "API Thiết bị tăng tốc Video:", "LabelUsername": "Tên đăng nhập:", "LabelUserRemoteClientBitrateLimitHelp": "Ghi đè giá trị chung mặc định được đặt trong cài đặt phát lại trên máy chủ.", - "LabelUserLoginAttemptsBeforeLockout": "Lần đăng nhập không thành công trước khi người dùng bị khóa:", + "LabelUserLoginAttemptsBeforeLockout": "Số lần đăng nhập thất bại trước khi người dùng bị khóa:", "LabelUserLibraryHelp": "Chọn thư viện người dùng để hiển thị cho thiết bị. Để trống để giữ nguyên cài đặt mặc định.", "LabelUserLibrary": "Thư viện người dùng:", "LabelUserAgent": "Hành động người dùng:", @@ -1028,7 +1028,7 @@ "OptionMissingEpisode": "Thiếu Tập Phim", "OptionMax": "Tối đa", "OptionLoginAttemptsBeforeLockoutHelp": "Giá trị bằng 0 có nghĩa là giữ mặc định ba lần thử đối với người dùng bình thường và năm lần thử đối với quản trị viên. Đặt giá trị này thành -1 sẽ tắt tính năng này.", - "OptionLoginAttemptsBeforeLockout": "Xác định số lần đăng nhập không chính xác có thể được thực hiện trước khi xảy ra khóa người dùng.", + "OptionLoginAttemptsBeforeLockout": "Xác định số lần đăng nhập thất bại có thể thử trước khi người dùng bị khóa.", "OptionIgnoreTranscodeByteRangeRequestsHelp": "Các yêu cầu này sẽ được thực hiện nhưng sẽ bỏ qua phần đầu dải byte.", "OptionIgnoreTranscodeByteRangeRequests": "Bỏ qua các yêu cầu phạm vi byte chuyển mã", "OptionHlsSegmentedSubtitles": "Phụ đề phân đoạn HLS", @@ -1141,7 +1141,7 @@ "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Các vị trí phương tiện sau sẽ bị xóa khỏi thư viện của bạn:", "MessageReenableUser": "Xem bên dưới để kích hoạt lại", "MessagePluginInstallDisclaimer": "Các plugin do các thành viên cộng đồng xây dựng là một cách tuyệt vời để nâng cao trải nghiệm của bạn với các tính năng và lợi ích bổ sung. Trước khi cài đặt, hãy lưu ý về những ảnh hưởng mà chúng có thể có trên máy chủ của bạn, chẳng hạn như quét thư viện lâu hơn, xử lý nền bổ sung và giảm độ ổn định của hệ thống.", - "MessagePluginConfigurationRequiresLocalAccess": "Để cấu hình plugin này, vui lòng đăng nhập trực tiếp vào máy chủ cục bộ của bạn.", + "MessagePluginConfigurationRequiresLocalAccess": "Để cấu hình plugin này, hãy đăng nhập trực tiếp vào máy chủ của bạn.", "MessagePleaseWait": "Vui lòng đợi. Việc này có thể phải mất một ít thời gian.", "MessagePleaseEnsureInternetMetadata": "Hãy đảm bảo rằng việc tải xuống dữ liệu mô tả trên internet đã được bật.", "LabelSeriesRecordingPath": "Đường dẫn Ghi lại Phim Bộ:", From 75734a2a591b77ca10cb9d426febd30554e005d9 Mon Sep 17 00:00:00 2001 From: Tim Gels Date: Sat, 10 Oct 2020 16:05:05 +0000 Subject: [PATCH 268/365] Translated using Weblate (Dutch) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/nl/ --- src/strings/nl.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/strings/nl.json b/src/strings/nl.json index 4369f26f56..73af67d3b3 100644 --- a/src/strings/nl.json +++ b/src/strings/nl.json @@ -904,7 +904,7 @@ "PlaceFavoriteChannelsAtBeginning": "Plaats favoriete kanalen aan het begin", "Play": "Afspelen", "PlayAllFromHere": "Speel allemaal vanaf hier", - "PlayCount": "Aantal keer afsgespeeld", + "PlayCount": "Aantal keer afgespeeld", "PlayFromBeginning": "Afspelen vanaf begin", "PlayNext": "Volgende afspelen", "PlayNextEpisodeAutomatically": "Speel volgende aflevering automatisch", @@ -1238,7 +1238,7 @@ "AskAdminToCreateLibrary": "Vraag een beheerder om een bibliotheek te maken.", "Artist": "Artiest", "AllowFfmpegThrottlingHelp": "Wanneer een transcode of remux ver genoeg voorloopt op de huidige afspeelpositie, pauzeer het proces, zodat het minder middelen verbruikt. Dit is vooral handig wanneer u kijkt zonder vaak te zoeken. Schakel dit uit als u afspeelproblemen ondervindt.", - "AllowFfmpegThrottling": "Throttle Transcodes", + "AllowFfmpegThrottling": "Beperk transcoderingen", "LabelPlayerDimensions": "Mediaspeler afmetingen:", "LabelLibraryPageSizeHelp": "Kies het aantal artikelen dat wordt weergegeven op een bibliotheekpagina. Kies 0 om dit te verbergen.", "LabelLibraryPageSize": "Bibliotheekpagina grootte:", From d1afe8263f11df2cd01dd1bfbe4348eb2b1c673f Mon Sep 17 00:00:00 2001 From: shakesac Date: Sat, 10 Oct 2020 18:33:56 +0000 Subject: [PATCH 269/365] Translated using Weblate (Portuguese (Portugal)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/pt_PT/ --- src/strings/pt-pt.json | 121 +++++++++++++++++++++++------------------ 1 file changed, 67 insertions(+), 54 deletions(-) diff --git a/src/strings/pt-pt.json b/src/strings/pt-pt.json index ad2a45c381..855b010abb 100644 --- a/src/strings/pt-pt.json +++ b/src/strings/pt-pt.json @@ -45,7 +45,7 @@ "ButtonSubmit": "Enviar", "ButtonUninstall": "Desinstalar", "ChannelAccessHelp": "Selecione os canais para partilhar com este utilizador. Os administradores poderão editar todos os canais utilizando o gestor de metadados.", - "CinemaModeConfigurationHelp": "O modo cinema traz a experiência do cinema para a sua sala, possibilitando reproduzir trailers e introduções personalizadas antes da longa-metragem.", + "CinemaModeConfigurationHelp": "O modo cinema traz a experiência do cinema para a sua sala, possibilitando a reprodução de trailers e introduções personalizadas antes da longa-metragem.", "Composer": "Compositor", "ConfirmDeleteItem": "Apagar este item irá removê-lo da biblioteca e do sistema de ficheiros. Tem a certeza de que deseja continuar?", "ConfirmDeleteItems": "Apagar estes itens irá removê-los da biblioteca e do sistema de ficheiros. Tem a certeza de que deseja continuar?", @@ -62,13 +62,13 @@ "DeleteUserConfirmation": "Tem a certeza de que deseja apagar este utilizador?", "DeviceAccessHelp": "Apenas se aplica a dispositivos que podem ser identificados como únicos e que não impedem o acesso ao navegador. Filtrar o acesso a dispositivos do utilizador, impede-o de utilizar novos dispositivos, até estes serem aprovados aqui.", "Director": "Realizador", - "EasyPasswordHelp": "O código PIN é utilizado para acesso off-line em clientes suportados e pode ser usado para um acesso fácil dentro da rede.", + "EasyPasswordHelp": "O código PIN é utilizado para acesso offline em clientes suportados e pode ser usado para um acesso fácil dentro da rede.", "Edit": "Editar", "EnableCinemaMode": "Modo cinema", "Ended": "Terminado", - "ErrorAddingMediaPathToVirtualFolder": "Ocorreu um erro ao adicionar o caminho dos ficheiros. Por favor, assegure-se que o caminho é valido e que o Jellyfin tem acesso a ele.", + "ErrorAddingMediaPathToVirtualFolder": "Ocorreu um erro ao adicionar a localização dos ficheiros. Por favor, assegure-se que o caminho é valido e que o Jellyfin tem acesso ao mesmo.", "ErrorGettingTvLineups": "Ocorreu um erro ao transferir a programação de TV. Por favor, certifique-se que a sua informação está correta e tente novamente.", - "ErrorPleaseSelectLineup": "Por favor selecione a programação e tente novamente. Se não houver programações disponíveis, verifique se o seu nome de utilizador, senha e código postal estão corretos.", + "ErrorPleaseSelectLineup": "Por favor selecione a programação e tente novamente. Se não houver programações disponíveis, verifique se o seu nome de utilizador, palavra-passe e código postal estão corretos.", "ExitFullscreen": "Sair do ecrã inteiro", "FastForward": "Avanço rápido", "FileNotFound": "Ficheiro não encontrado.", @@ -144,7 +144,7 @@ "HeaderNewApiKey": "Nova Chave da API", "HeaderParentalRatings": "Classificações Parentais", "HeaderPassword": "Palavra-passe", - "HeaderPasswordReset": "Redefinição de Palavra-Passe", + "HeaderPasswordReset": "Repor Palavra-Passe", "HeaderPaths": "Localizações", "HeaderPinCodeReset": "Redefinir Código PIN", "HeaderPlayAll": "Reproduzir Todos", @@ -168,7 +168,7 @@ "HeaderSelectMetadataPathHelp": "Procure ou introduza a localização da pasta para guardar os metadados. A pasta deve ter permissões de escrita.", "HeaderSelectPath": "Selecione o Local", "HeaderSelectServerCachePath": "Selecione a Localização da Cache do Servidor", - "HeaderSelectServerCachePathHelp": "Procure ou introduza a localização da pasta para guardar a cache do servidor. O Servidor Jellyfin deve ter acesso de escrita a essa pasta.", + "HeaderSelectServerCachePathHelp": "Procure ou introduza a localização da pasta para guardar a cache do servidor. A pasta deve ter permissões de escrita.", "HeaderSelectTranscodingPath": "Selecione o Local Temporário da Transcodificação", "HeaderSelectTranscodingPathHelp": "Procure ou introduza a localização da pasta para guardar os ficheiros temporários de transcodificação. A pasta deve ter permissões de escrita.", "HeaderSendMessage": "Enviar mensagem", @@ -242,7 +242,7 @@ "LabelDateAddedBehavior": "Comportamento da data de adição para conteúdo novo:", "LabelDateAddedBehaviorHelp": "Caso os metadados tenham um valor presente, este terá prioridade sobre estas opções.", "LabelDay": "Dia:", - "LabelDefaultUser": "Utilizador por defeito:", + "LabelDefaultUser": "Utilizador padrão:", "LabelDefaultUserHelp": "Determina que biblioteca será apresentada aos dispositivos ligados. Pode ser redefinido para cada dispositivo utilizando perfis.", "LabelDeviceDescription": "Descrição do dispositivo", "LabelDidlMode": "Modo DIDL:", @@ -256,7 +256,7 @@ "LabelEmbedAlbumArtDidl": "Incorporar a capa do álbum no DIDL", "LabelEmbedAlbumArtDidlHelp": "Alguns dispositivos preferem este método para obter a capa do álbum. Noutros pode falhar a reprodução com esta opção ativada.", "LabelEnableAutomaticPortMap": "Ativar mapeamento automático de portas", - "LabelEnableAutomaticPortMapHelp": "Automaticamente encaminha o porto público para o porto local através de UPnP. Isto poderá não funcionar em alguns modelos de routers ou devido às configurações da rede. As alterações só serão aplicadas após o reiniciar do servidor", + "LabelEnableAutomaticPortMapHelp": "Encaminha automaticamente o porto público para o porto local através de UPnP. Isto poderá não funcionar em alguns modelos de routers ou configurações da rede. As alterações só serão aplicadas após o reiniciar do servidor.", "LabelEnableBlastAliveMessages": "Enviar mensagens de reconhecimento", "LabelEnableBlastAliveMessagesHelp": "Ativar esta opção se o servidor não for convenientemente detetado por outros dispositivos UPnP na rede.", "LabelEnableDlnaClientDiscoveryInterval": "Intervalo para descoberta de clientes", @@ -280,7 +280,7 @@ "LabelExtractChaptersDuringLibraryScanHelp": "Gerar imagens dos capítulos quando os vídeos forem importados durante a atualização da biblioteca. Caso contrário, serão geradas durante a tarefa agendada de extração de imagens dos capítulos, permitindo que a atualização da biblioteca seja mais rápida.", "LabelFailed": "Falhou", "LabelFinish": "Terminar", - "LabelForgotPasswordUsernameHelp": "Introduza o seu nome de utilizador, se se recordar.", + "LabelForgotPasswordUsernameHelp": "Introduza o seu nome de utilizador, caso se recorde.", "LabelFormat": "Formato:", "LabelFriendlyName": "Nome amigável:", "LabelServerNameHelp": "Este nome será utilizado para identificar o servidor. Hostname do servidor usado por defeito.", @@ -401,7 +401,7 @@ "LabelTagline": "Slogan:", "LabelTime": "Tempo:", "LabelTimeLimitHours": "Limite de tempo (horas):", - "LabelTranscodingTempPathHelp": "Indique uma localização personalizada para os ficheiros de transcodificação em utilização, ou deixe em branco para utilizar o caminho por defeito.", + "LabelTranscodingTempPathHelp": "Indique uma localização personalizada para os ficheiros de transcodificação em utilização, ou deixe em branco para utilizar o caminho padrão.", "LabelTranscodingThreadCount": "Número de threads de transcodificação:", "LabelTranscodingThreadCountHelp": "Indique o número máximo de threads a ser utilizado para transcodificação. Reduzir o número de threads diminuirá a utilização do CPU, mas pode não converter rápido o suficiente para uma experiência de reprodução suave.", "LabelTriggerType": "Tipo do Acionador:", @@ -437,13 +437,13 @@ "MessageInvalidUser": "Nome de utilizador ou palavra-passe inválidos. Por favor, tente novamente.", "MessageItemSaved": "Item guardado.", "MessageItemsAdded": "Itens adicionados.", - "MessageLeaveEmptyToInherit": "Deixar em branco para herdar as configurações do item pai, ou o valor global por defeito.", + "MessageLeaveEmptyToInherit": "Deixar em branco para herdar as configurações do item pai, ou o valor global predefinido.", "MessageNoAvailablePlugins": "Não existem extensões disponíveis.", "MessageNoMovieSuggestionsAvailable": "De momento, não existem sugestões de filmes disponíveis. Veja filmes e avalie-os, e regresse para ver as recomendações.", "MessageNoPluginsInstalled": "Não existe nenhuma extensão instalada.", "MessageNoTrailersFound": "Instale o canal de trailers para melhorar a sua experiência, adicionando uma biblioteca de trailers da internet.", "MessageNothingHere": "Nada aqui.", - "MessagePasswordResetForUsers": "As palavras-passe dos utilizadores seguintes foram repostas. Deverão utilizar o PIN de reposição de palavra-passe para fazer login.", + "MessagePasswordResetForUsers": "As palavras-passe dos seguintes utilizadores foram repostas. Deverão utilizar o PIN de reposição de palavra-passe para iniciar sessão.", "MessagePleaseEnsureInternetMetadata": "Certifique-se que a transferência de metadados da Internet está ativa.", "MessageReenableUser": "Veja abaixo para reativar", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "As seguintes pastas multimédia serão removidas da Biblioteca:", @@ -513,7 +513,7 @@ "OptionPlayCount": "N.º de Visualizações", "OptionPremiereDate": "Data de Estreia", "OptionReleaseDate": "Data de Lançamento", - "OptionReportByteRangeSeekingWhenTranscoding": "Reportar que o servidor suporta busca de byte quando transcodificar", + "OptionReportByteRangeSeekingWhenTranscoding": "Reportar que o servidor suporta procura de byte durante transcodificação", "OptionReportByteRangeSeekingWhenTranscodingHelp": "Isto é necessário para alguns dispositivos que não procuram o tempo muito bem.", "OptionResElement": "elemento res", "OptionResumable": "Retomável", @@ -552,7 +552,7 @@ "Saturday": "Sábado", "Save": "Guardar", "ScanLibrary": "Analisar biblioteca", - "Search": "Busca", + "Search": "Procurar", "SearchForCollectionInternetMetadata": "Procurar na Internet por capas de álbum e metadados", "SearchForSubtitles": "Procurar Legendas", "SendMessage": "Enviar mensagem", @@ -638,7 +638,7 @@ "BirthPlaceValue": "Local de nascimento: {0}", "Blacklist": "Lista Negra", "Books": "Livros", - "BurnSubtitlesHelp": "Determina se o servidor deve integrar as legendas durante a conversão de vídeo. Evitar a integração de legendas melhora o desempenho do servidor. Selecione Auto para que legendas baseadas em imagem (VOBSUB, PGS, SUB/IDX), e certos formatos ASS/SSA sejam integrados.", + "BurnSubtitlesHelp": "Determina se o servidor deve integrar as legendas durante a conversão de vídeo. Evitar a integração de legendas melhora o desempenho do servidor. Selecione Auto para que legendas baseadas em imagem (VOBSUB, PGS, SUB/IDX) e certos formatos ASS/SSA sejam integrados.", "Channels": "Canais", "Collections": "Coleções", "Favorites": "Favoritos", @@ -691,7 +691,7 @@ "HeaderDetectMyDevices": "Detetar os Meus Dispositivos", "HeaderDeleteProvider": "Apagar Provedor", "HeaderDeleteDevice": "Apagar Dispositivo", - "HeaderDefaultRecordingSettings": "Definições de Gravação por Defeito", + "HeaderDefaultRecordingSettings": "Definições Padrão de Gravação", "HeaderContinueListening": "Continuar a Ouvir", "HeaderConnectionFailure": "Falha de Ligação", "HeaderConfirmPluginInstallation": "Confirmar Instalação de Extensão", @@ -715,7 +715,7 @@ "Filters": "Filtros", "File": "Ficheiro", "Favorite": "Favoritos", - "FFmpegSavePathNotFound": "Não foi possível encontrar o binário FFmpeg na localização que introduziu. O binário FFprobe também é necessário, e deve estar na mesma pasta. Estes componentes são, por norma, instalados em conjunto. Por favor, verifique o caminho da localização e tente de novo.", + "FFmpegSavePathNotFound": "Não foi possível encontrar o binário FFmpeg na localização que introduziu. O binário FFprobe também é necessário, e deve estar na mesma pasta. Estes componentes são, por norma, instalados em conjunto. Por favor, verifique o caminho da localização e tente novamente.", "Extras": "Extras", "ExtraLarge": "Extra Grande", "EveryNDays": "A cada {0} dias", @@ -750,14 +750,14 @@ "Disconnect": "Desligar", "DirectStreaming": "Reprodução direta", "DirectStreamHelp2": "Reprodução direta de um ficheiro requer pouco processamento e implica uma perda de qualidade mínima.", - "DefaultSubtitlesHelp": "As legendas são carregadas com base nas definições por defeito ou forçado nos metadados. As preferências de idioma são consideradas quando existem múltiplas opções disponíveis.", - "DefaultMetadataLangaugeDescription": "Estes são os valores por defeito que podem ser customizados para cada uma das bibliotecas.", + "DefaultSubtitlesHelp": "As legendas são carregadas com base nas definições padrão ou forçado nos metadados. As preferências de idioma são consideradas quando existem múltiplas opções disponíveis.", + "DefaultMetadataLangaugeDescription": "Estes são os valores padrão que podem ser personalizados para cada uma das bibliotecas.", "ErrorDefault": "Ocorreu um erro a processar o pedido. Por favor, tente novamente mais tarde.", - "Default": "Por defeito", + "Default": "Padrão", "DeathDateValue": "Faleceu: {0}", "DatePlayed": "Reproduzido a", "DateAdded": "Adicionado a", - "MessageContactAdminToResetPassword": "Por favor, contacte o Administrador de sistema para repôr a sua password.", + "MessageContactAdminToResetPassword": "Por favor, contacte o Administrador de sistema para repor a sua palavra-passe.", "MessageConfirmRemoveMediaLocation": "Tem a certeza de que deseja remover esta localização?", "MessageConfirmDeleteTunerDevice": "Tem a certeza de que deseja remover este dispositivo?", "UserAgentHelp": "Forneça um user-agent HTTP personalizado.", @@ -805,7 +805,7 @@ "MediaInfoChannels": "Canais", "MapChannels": "Mapear Canais", "LabelChannels": "Canais:", - "XmlTvPathHelp": "Caminho para um ficheiro XMLTV. O Servidor Jellyfin vai ler o ficheiro periodicamente para atualizar a programação de TV. O utilizador é responsável pela crição e atualização do ficheiro.", + "XmlTvPathHelp": "Caminho para um ficheiro XMLTV. O Jellyfin vai ler o ficheiro periodicamente para atualizar a programação da TV. O utilizador é responsável pela criação e atualização do ficheiro.", "TV": "TV", "LiveTV": "TV em Direto", "LabelSelectFolderGroups": "Agrupar automaticamente o conteúdo das seguintes pastas em vistas como Filmes, Música e TV:", @@ -845,7 +845,7 @@ "PlayAllFromHere": "Reproduzir todos a partir daqui", "PerfectMatch": "Correspondência perfeita", "People": "Pessoas", - "PasswordResetProviderHelp": "Selecione um fornecedor de reposição de senha a ser usado quando um utilizador solicitar a reposição da sua senha.", + "PasswordResetProviderHelp": "Selecione um fornecedor de reposição de palavra-passe a ser usado quando um utilizador solicitar a reposição da sua palavra-passe.", "PackageInstallFailed": "Instalação de {0} (version {1}) falhou.", "PackageInstallCompleted": "Instalação de {0} (version {1}) terminada.", "PackageInstallCancelled": "Instalação de {0} (version {1}) cancelada.", @@ -859,7 +859,7 @@ "HeaderOnNow": "No Ar", "Unplayed": "Por reproduzir", "RemoveFromPlaylist": "Remover da lista de reprodução", - "LabelUserRemoteClientBitrateLimitHelp": "Esta opção irá sobrepor-se ao valor global por defeito nas definições de reprodução do servidor.", + "LabelUserRemoteClientBitrateLimitHelp": "Esta opção irá sobrepor-se ao valor global predefinido nas definições de reprodução do servidor.", "MarkUnplayed": "Marcar como Não Visto", "MarkPlayed": "Marcar como Visto", "LabelSelectFolderGroupsHelp": "Pastas não selecionadas serão apresentadas sozinhas, na sua própria vista.", @@ -888,7 +888,7 @@ "Raised": "Alto relevo", "Depressed": "Baixo relevo", "OptionEnableExternalContentInSuggestionsHelp": "Permitir que trailers da Internet e programas de TV em Direto sejam incluídos no conteúdo sugerido.", - "H264CrfHelp": "O parâmetro \\\"Constant Rate Factor (CRF)\\\" é o que define por defeito o nível de qualidade para o codificador x264. Os valores aceites são entre 0 e 51, em que valores mais baixos resultam em maior qualidade (com o custo de ficheiros maiores). Os valores considerados aceitáveis estão entre 18 e 28. O valor por defeito é 23, podendo ser considerado um ponto de partida para ajustes.", + "H264CrfHelp": "O parâmetro \\\"Constant Rate Factor (CRF)\\\" é o que define o nível de qualidade padrão para o codificador x264. Os valores aceites são entre 0 e 51, em que valores mais baixos resultam numa maior qualidade (a custo de ficheiros de maior dimensão). Os valores considerados aceitáveis estão entre 18 e 28. O valor padrão é 23, podendo ser considerado um ponto de partida para ajustes.", "TabStreaming": "Transmissão", "SimultaneousConnectionLimitHelp": "Número máximo de transmissões permitido. Zero equivale a sem limite.", "LabelSimultaneousConnectionLimit": "Limite de transmissões simultâneas:", @@ -903,7 +903,7 @@ "Directors": "Realização", "ButtonAddImage": "Adicionar Imagem", "LabelOriginalTitle": "Título original:", - "LabelPostProcessorArgumentsHelp": "Utilizar o caminho {path} como caminho para o ficheiro de gravação.", + "LabelPostProcessorArgumentsHelp": "Utilizar {path} como caminho para o ficheiro de gravação.", "Hide": "Esconder", "LabelBaseUrl": "URL Base:", "LabelNewName": "Novo nome:", @@ -926,14 +926,14 @@ "LabelBaseUrlHelp": "Adiciona uma sub-pasta personalizada ao URL do servidor. Por exemplo: http://exemplo.com/<baseurl>", "LabelMoviePrefixHelp": "Se aplicar um prefixo aos títulos dos filmes, introduza-o aqui para que o servidor consiga tratá-los corretamente.", "LabelPleaseRestart": "As alterações produzirão efeito depois de recarregar a página web.", - "LabelRecordingPathHelp": "Especifique a localização por defeito para guardar as gravações. Se for deixado em branco, será utilizada a pasta base do servidor.", + "LabelRecordingPathHelp": "Especifique a localização predefinida para guardar as gravações. Se for deixado em branco, será utilizada a pasta base do servidor.", "ColorTransfer": "Transferência de cores", "ExtractChapterImagesHelp": "Extrair imagens do capítulo permite aos clientes apresentar menus de seleção de cenas com gráficos. O processo poderá ser lento e exigente em recursos, bem como ocupar múltiplos gigabytes em disco. Este processo é corrido quando novos vídeos são encontrados e também através de uma tarefa agendada noturna. É possível configurar a hora de execução para que, idealmente, não coincida com horas de maior utilização.", "Features": "Funcionalidades", "HeaderMusicQuality": "Qualidade da Música", "HeaderMyDevice": "O Meu Dispositivo", "HeaderSortBy": "Ordenar Por", - "LabelOptionalNetworkPathHelp": "Caso a pasta esteja partilhada, fornecer o caminho de rede pode permitir aos clientes aceder diretamente aos ficheiros multimédia. For example, {0} or {1}.", + "LabelOptionalNetworkPathHelp": "Caso a pasta esteja partilhada, fornecer o caminho de rede pode permitir aos clientes aceder diretamente aos ficheiros multimédia. Por exemplo, {0} ou {1}.", "LabelPersonRoleHelp": "Exemplo: motorista da carrinha de gelados", "LabelPlayer": "Reprodutor:", "LabelServerName": "Nome do servidor:", @@ -959,7 +959,7 @@ "LabelKidsCategories": "Categorias para crianças:", "LabelMovieCategories": "Categorias para filmes:", "LabelMoviePrefix": "Prefixo para filmes:", - "LabelMovieRecordingPath": "Caminho para gravação de filmes:", + "LabelMovieRecordingPath": "Localização para gravação de filmes:", "LabelNewsCategories": "Categorias para notícias:", "LabelNumber": "Número:", "LabelPlayMethod": "Método de reprodução:", @@ -969,9 +969,9 @@ "LabelProfileCodecs": "Codecs:", "LabelReasonForTranscoding": "Razão para transcodificação:", "LabelScreensaver": "Proteção de Ecrã:", - "LabelSeriesRecordingPath": "Caminho para gravação de séries:", + "LabelSeriesRecordingPath": "Localização para gravação de séries:", "ColorPrimaries": "Cores primárias", - "MessageInvalidForgotPasswordPin": "Foi inserido um código PIN inválido ou expirado. Por favor, tente de novo.", + "MessageInvalidForgotPasswordPin": "Foi inserido um código PIN inválido ou expirado. Por favor, tente novamente.", "MessageImageTypeNotSelected": "Por favor, selecione um tipo de imagem da lista.", "MessageImageFileTypeAllowed": "Apenas são suportados ficheiros JPEG ou PNG.", "MessageForgotPasswordInNetworkRequired": "Por favor, volte a tentar o processo de recuperação de palavra-passe quando se encontrar dentro da sua rede local.", @@ -1098,8 +1098,8 @@ "LearnHowYouCanContribute": "Veja como pode contribuir.", "Large": "Grande", "LanNetworksHelp": "Lista separada por vírgulas de endereços IP ou IP/máscara que serão considerados como locais quando se aplicam restrições de largura de banda. Se preenchido, todos os outros endereços serão considerados externos e estarão sujeitos às restrições de largura de banda para dispositivos externos. Se deixado em branco, apenas serão consideradas locais as sub-redes do servidor.", - "LabelffmpegPathHelp": "Caminho para a aplicação ou pasta que contém o ffmgeg.", - "LabelffmpegPath": "Caminho FFmpeg:", + "LabelffmpegPathHelp": "Localização da aplicação ou pasta que contém o ffmgeg.", + "LabelffmpegPath": "Localização FFmpeg:", "LabelYear": "Ano:", "LabelWeb": "Web:", "LabelVideoCodec": "Codec de vídeo:", @@ -1112,7 +1112,7 @@ "LabelUserLoginAttemptsBeforeLockout": "Tentativas de início de sessão falhadas até o utilizador ser bloqueado:", "LabelTranscodingProgress": "Progresso de transcodificação:", "LabelTranscodingFramerate": "Taxa de fotogramas de transcodificação:", - "LabelTranscodePath": "Caminho de transcodificação:", + "LabelTranscodePath": "Localização de transcodificação:", "LabelTrackNumber": "Número da faixa:", "LabelTextColor": "Côr do texto:", "LabelTextBackgroundColor": "Côr de fundo do texto:", @@ -1135,7 +1135,7 @@ "MusicArtist": "Artista de Música", "MusicAlbum": "Álbum de Música", "MoreMediaInfo": "Informações", - "MediaInfoBitrate": "Taxa de Bits", + "MediaInfoBitrate": "Fluxo de bits", "LabelUserAgent": "User-Agent:", "MediaInfoAnamorphic": "Anamórfico", "LabelTranscodes": "Transcodificação:", @@ -1199,25 +1199,25 @@ "MusicLibraryHelp": "Consulte o {0}guia de nomenclatura de música{1}.", "MovieLibraryHelp": "Consulte o {0}guia de nomenclatura de filmes{1}.", "MessageConfirmAppExit": "Quer sair?", - "MediaInfoRefFrames": "Ref quadros", + "MediaInfoRefFrames": "Ref frames", "MediaInfoLayout": "Disposição", "MediaInfoDefault": "Padrão", - "MediaInfoBitDepth": "Bit profundidade", - "Logo": "Logotipo", - "LabelXDlnaDoc": "X-DLNA doc:", - "LabelXDlnaCap": "X-DLNA cap:", + "MediaInfoBitDepth": "Profundidade de bit", + "Logo": "Logótipo", + "LabelXDlnaDoc": "Documentação X-DLNA:", + "LabelXDlnaCap": "Limite X-DLNA:", "LabelVaapiDeviceHelp": "Este é o nó de renderização usado para aceleração de hardware.", "LabelVaapiDevice": "Dispositivo VAAPI:", - "LabelTypeMetadataDownloaders": "{0} transferências de metadados:", + "LabelTypeMetadataDownloaders": "Fornecedores de metadados para {0}:", "LabelTheme": "Tema:", - "LabelTVHomeScreen": "TV modo ecrã de casa:", - "LabelSubtitleDownloaders": "Transferência de legendas:", - "LabelParentNumber": "Número fonte:", - "LabelMetadataSavers": "Formatos de Gravação de Metadados:", - "LabelAudioBitDepth": "Áudio bit quantidade:", + "LabelTVHomeScreen": "Modo TV ecrã inicial:", + "LabelSubtitleDownloaders": "Fornecedores de legendas:", + "LabelParentNumber": "Número da fonte:", + "LabelMetadataSavers": "Formatos de Gravação dos Metadados:", + "LabelAudioBitDepth": "Profundidade do bit de áudio:", "HeaderNavigation": "Navegação", - "EnableStreamLooping": "Auto-cíclico de streams ao vivo", - "Down": "Baixo", + "EnableStreamLooping": "Transmissão direta em auto loop", + "Down": "para baixo", "ButtonSplit": "Dividir", "NoCreatedLibraries": "Parece que ainda não foi criada nenhuma biblioteca. {0} Deseja criar uma biblioteca agora? {1}", "AskAdminToCreateLibrary": "Pergunte a um administrador para criar uma biblioteca.", @@ -1289,9 +1289,9 @@ "LabelSubtitleVerticalPosition": "Posição vertical:", "ClearQueue": "Limpar fila", "StopPlayback": "Parar reprodução", - "LabelTonemappingAlgorithm": "Selecione o algoritmo de mapeamento de tonalidade a usar:", - "EnableTonemapping": "Ativar mapeamento de tonalidade", - "LabelOpenclDeviceHelp": "Este é o dispositivo OpenCL usado para o mapeamento de tonalidades. O lado esquerdo do ponto representa o número da plataforma e no lado direito é representado o número do dispositivo na plataforma. O valor padrão é 0.0. É necessário o ficheiro da aplicação ffmpeg que contêm o método de aceleração por hardware OpenCL.", + "LabelTonemappingAlgorithm": "Selecione o algoritmo de Tone mapping a usar:", + "EnableTonemapping": "Ativar Tone mapping", + "LabelOpenclDeviceHelp": "Este é o dispositivo OpenCL usado para o Tone Mapping. O lado esquerdo do ponto representa o número da plataforma e no lado direito é representado o número do dispositivo na plataforma. O valor padrão é 0.0. É necessário o ficheiro da aplicação ffmpeg que contem o método de aceleração por hardware OpenCL.", "LabelOpenclDevice": "Dispositivo OpenCL:", "LabelColorPrimaries": "Cor primária:", "LabelColorTransfer": "Transferência de cor:", @@ -1316,7 +1316,7 @@ "PersonRole": "como {0}", "ListPaging": "{0}-{1} de {2}", "WriteAccessRequired": "O Jellyfin necessita de acesso de escrita a esta pasta. Garanta acesso de escrita e tente novamente.", - "PathNotFound": "O caminho não foi encontrado. Verifique se o caminho é válido e tente novamente.", + "PathNotFound": "A localização não foi encontrada. Verifique se o caminho é válido e tente novamente.", "Writers": "Argumentistas", "ViewAlbumArtist": "Ver artista do álbum", "Video": "Vídeo", @@ -1341,7 +1341,7 @@ "Season": "Temporada", "SaveChanges": "Guardar alterações", "Restart": "Reiniciar", - "ResetPassword": "Repor Senha", + "ResetPassword": "Repor Palavra-passe", "RefreshDialogHelp": "Os metadados são atualizados consoante as configurações e serviços de internet ativos no Painel Principal.", "QuickConnectNotActive": "O Quick Connect não está ativo neste servidor", "QuickConnectNotAvailable": "Solicite a ativação do Quick Connect ao administrador do servidor", @@ -1401,5 +1401,18 @@ "LabelIconMaxResHelp": "Resolução máxima dos ícones expostos através da propriedade upnp:icon.", "LabelCurrentStatus": "Ponto da situação:", "KnownProxiesHelp": "Lista de endereços IP, separada por virgulas, de proxies conhecidas que são usadas ao ligar à sua instância Jellyfin. É necessário para usar adequadamente o cabeçalho X-Forwarded-For. Requer reinicio após alterar.", - "Image": "Imagem" + "Image": "Imagem", + "LabelTonemappingParamHelp": "Afine o algoritmo do Tone mapping. Os valores recomendado e padrão são NaN. Geralmente este campo é deixado em branco.", + "LabelTonemappingParam": "Parâmetros do Tonemapping:", + "LabelTonemappingPeakHelp": "Sobrepor este valor ao pico de sinal/nominal/referência. Útil quando a informação de pico embutida nos metadados de visualização não é fiável ou quando o Tone mapping alterna de um intervalo mais pequeno para um maior.", + "LabelTonemappingPeak": "Pico do Tonemapping:", + "LabelTonemappingThresholdHelp": "Os parâmetros do algoritmo de Tonemapping são afinados a cada cena. E é aplicado um limite para detetar se a cena mudou ou não. Caso a distancia entre o brilho médio atual do frame e a média atual de execução excedam o valor do limite, o brilho médio e o pico de brilho da cena serão recalculados. Os valores recomendado e padrão são 0.8 e 0.2 respetivamente.", + "LabelTonemappingThreshold": "Limite do Tonemapping:", + "LabelTonemappingDesatHelp": "Aplicar dessaturação em partes claras da imagem que excedam este nível de brilho. Quanto maior o parâmetro, mais informação de cor será preservada. Esta definição ajuda a prevenir cores excessivamente claras tornando-as (suavemente) em branco. Produz imagens mais naturais devido à redução de informação sobre cores fora do espectro. Os valores recomendado e padrão são 0 e 0.5 respetivamente.", + "TonemappingRangeHelp": "Selecione o intervalo de cores de saída. A opção Auto mantém o intervalo de cores de entrada.", + "SmallCaps": "Maiúsculas reduzidas", + "LabelTonemappingRange": "Alcance do Tone mapping :", + "TonemappingAlgorithmHelp": "O Tone mapping pode ser afinado. Se não está familiarizado com estas opções mantenha os valores padrão. O valor recomendado é Reinhard.", + "AllowTonemappingHelp": "O Tone mapping permite transformar o alcance dinâmico de um vídeo de HDR para SDR mantendo as cores e detalhes da imagem, que é informação importante para representar a cena original. Atualmente apenas funciona durante a transcodificação de vídeos com metadados HDR10 ou HLG embutidos. Caso a reprodução não seja suave ou falhe, considere desligar o descodificador de hardware correspondente.", + "LabelMaxMuxingQueueSizeHelp": "Número máximo de pacotes armazenados em buffer enquanto aguardam que todas a transmissões iniciem. Tente aumentá-lo caso se depare com o seguinte erro nos logs do ffmpeg \"Too many packets buffered for output stream\". O valor recomendado é 2048." } From 97fc71ea7abe20848dee8e150cd0784f82e27db2 Mon Sep 17 00:00:00 2001 From: Lucas Ono Date: Sun, 11 Oct 2020 11:30:16 +0000 Subject: [PATCH 270/365] Translated using Weblate (Portuguese (Brazil)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/pt_BR/ --- src/strings/pt-br.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/strings/pt-br.json b/src/strings/pt-br.json index 6947772ba2..0fc5e3a6ff 100644 --- a/src/strings/pt-br.json +++ b/src/strings/pt-br.json @@ -1399,5 +1399,7 @@ "LabelQuickConnectCode": "Código de conexão rápida:", "LabelKnownProxies": "Proxies conhecidos:", "KnownProxiesHelp": "Lista de endereços IPs, separados por vírgula, de proxies conhecidos usados para conectar na sua instância do Jellyfin. Isso é necessário para usar de forma adequada os cabeçalhos X-Forwarded-for. Essa alteração necessita que o sistema seja reiniciado após salvar.", - "EnableAutoCast": "Definir como padrão" + "EnableAutoCast": "Definir como padrão", + "ThumbCard": "Card da miniatura", + "OptionMaxActiveSessionsHelp": "O valor 0 desativa esta funcão." } From 7006ce2c5cfcd758e346d1fc68dc4e933bdd7ef5 Mon Sep 17 00:00:00 2001 From: dkanada Date: Mon, 12 Oct 2020 12:00:38 +0900 Subject: [PATCH 271/365] remove symlink to config file --- src/config.json | 40 +++++++++++++++++++++++++++++++++++++++- src/config.template.json | 39 --------------------------------------- 2 files changed, 39 insertions(+), 40 deletions(-) mode change 120000 => 100644 src/config.json delete mode 100644 src/config.template.json diff --git a/src/config.json b/src/config.json deleted file mode 120000 index f1bd2db71e..0000000000 --- a/src/config.json +++ /dev/null @@ -1 +0,0 @@ -config.template.json \ No newline at end of file diff --git a/src/config.json b/src/config.json new file mode 100644 index 0000000000..0f308ccc11 --- /dev/null +++ b/src/config.json @@ -0,0 +1,39 @@ +{ + "multiserver": false, + "themes": [ + { + "name": "Apple TV", + "id": "appletv" + }, { + "name": "Blue Radiance", + "id": "blueradiance" + }, { + "name": "Dark", + "id": "dark", + "default": true + }, { + "name": "Light", + "id": "light" + }, { + "name": "Purple Haze", + "id": "purplehaze" + }, { + "name": "WMC", + "id": "wmc" + } + ], + "plugins": [ + "plugins/playAccessValidation/plugin", + "plugins/experimentalWarnings/plugin", + "plugins/htmlAudioPlayer/plugin", + "plugins/htmlVideoPlayer/plugin", + "plugins/photoPlayer/plugin", + "plugins/comicsPlayer/plugin", + "plugins/bookPlayer/plugin", + "plugins/youtubePlayer/plugin", + "plugins/backdropScreensaver/plugin", + "plugins/logoScreensaver/plugin", + "plugins/sessionPlayer/plugin", + "plugins/chromecastPlayer/plugin" + ] +} diff --git a/src/config.template.json b/src/config.template.json deleted file mode 100644 index 0f308ccc11..0000000000 --- a/src/config.template.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "multiserver": false, - "themes": [ - { - "name": "Apple TV", - "id": "appletv" - }, { - "name": "Blue Radiance", - "id": "blueradiance" - }, { - "name": "Dark", - "id": "dark", - "default": true - }, { - "name": "Light", - "id": "light" - }, { - "name": "Purple Haze", - "id": "purplehaze" - }, { - "name": "WMC", - "id": "wmc" - } - ], - "plugins": [ - "plugins/playAccessValidation/plugin", - "plugins/experimentalWarnings/plugin", - "plugins/htmlAudioPlayer/plugin", - "plugins/htmlVideoPlayer/plugin", - "plugins/photoPlayer/plugin", - "plugins/comicsPlayer/plugin", - "plugins/bookPlayer/plugin", - "plugins/youtubePlayer/plugin", - "plugins/backdropScreensaver/plugin", - "plugins/logoScreensaver/plugin", - "plugins/sessionPlayer/plugin", - "plugins/chromecastPlayer/plugin" - ] -} From 4d92ca43bb423f78cc190e64d47f4fde0fa05e7c Mon Sep 17 00:00:00 2001 From: dkanada Date: Mon, 12 Oct 2020 12:02:24 +0900 Subject: [PATCH 272/365] reduce requirements for controls on dashboard --- src/controllers/dashboard/dashboard.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/controllers/dashboard/dashboard.js b/src/controllers/dashboard/dashboard.js index fc7c178ee3..2078e0af8f 100644 --- a/src/controllers/dashboard/dashboard.js +++ b/src/controllers/dashboard/dashboard.js @@ -550,13 +550,13 @@ import 'emby-itemscontainer'; row.classList.remove('playingSession'); } - if (session.ServerId && session.SupportedCommands.indexOf('DisplayMessage') !== -1 && session.DeviceId !== window.connectionManager.deviceId()) { + if (session.ServerId && session.SupportedCommands.indexOf('DisplayMessage') !== -1) { row.querySelector('.btnSessionSendMessage').classList.remove('hide'); } else { row.querySelector('.btnSessionSendMessage').classList.add('hide'); } - if (session.TranscodingInfo && session.TranscodingInfo.TranscodeReasons && session.TranscodingInfo && session.TranscodingInfo.TranscodeReasons.length) { + if (session.TranscodingInfo && session.TranscodingInfo.TranscodeReasons && session.TranscodingInfo) { row.querySelector('.btnSessionInfo').classList.remove('hide'); } else { row.querySelector('.btnSessionInfo').classList.add('hide'); @@ -564,7 +564,7 @@ import 'emby-itemscontainer'; const btnSessionPlayPause = row.querySelector('.btnSessionPlayPause'); - if (session.ServerId && nowPlayingItem && session.SupportsRemoteControl && session.DeviceId !== window.connectionManager.deviceId()) { + if (session.ServerId && nowPlayingItem && session.SupportsRemoteControl) { btnSessionPlayPause.classList.remove('hide'); row.querySelector('.btnSessionStop').classList.remove('hide'); } else { From 05c16d19ac3e041356ef51020e5f6f3a70560ac6 Mon Sep 17 00:00:00 2001 From: dkanada Date: Mon, 12 Oct 2020 12:20:06 +0900 Subject: [PATCH 273/365] remove swap file from translations --- src/strings/.en-us.json.swp | Bin 16384 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 src/strings/.en-us.json.swp diff --git a/src/strings/.en-us.json.swp b/src/strings/.en-us.json.swp deleted file mode 100644 index bbb5d9ab1641a6c2570646b97834b16268a5b238..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16384 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 Date: Mon, 12 Oct 2020 12:20:28 +0900 Subject: [PATCH 274/365] invert default backdrop setting --- src/scripts/settings/userSettings.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/scripts/settings/userSettings.js b/src/scripts/settings/userSettings.js index 1235e0fa5f..263d74ed37 100644 --- a/src/scripts/settings/userSettings.js +++ b/src/scripts/settings/userSettings.js @@ -209,7 +209,7 @@ export class UserSettings { } val = this.get('enableBackdrops', false); - return val !== 'false'; + return val === 'true'; } /** From 7b168608a06d4fe48171b8b054d008518bce70ea Mon Sep 17 00:00:00 2001 From: dkanada Date: Mon, 12 Oct 2020 12:29:57 +0900 Subject: [PATCH 275/365] add library scan button to dashboard --- src/controllers/dashboard/dashboard.html | 3 +++ src/controllers/dashboard/dashboard.js | 15 +++++++++++++++ src/scripts/taskbutton.js | 2 +- 3 files changed, 19 insertions(+), 1 deletion(-) diff --git a/src/controllers/dashboard/dashboard.html b/src/controllers/dashboard/dashboard.html index ec0d60a74d..4c20da8de5 100644 --- a/src/controllers/dashboard/dashboard.html +++ b/src/controllers/dashboard/dashboard.html @@ -22,6 +22,9 @@ +
    diff --git a/src/controllers/dashboard/dashboard.js b/src/controllers/dashboard/dashboard.js index 2078e0af8f..855ce3ff03 100644 --- a/src/controllers/dashboard/dashboard.js +++ b/src/controllers/dashboard/dashboard.js @@ -3,6 +3,7 @@ import events from 'events'; import itemHelper from 'itemHelper'; import serverNotifications from 'serverNotifications'; import dom from 'dom'; +import taskButton from 'scripts/taskbutton'; import globalize from 'globalize'; import * as datefns from 'date-fns'; import dfnshelper from 'dfnshelper'; @@ -827,9 +828,17 @@ import 'emby-itemscontainer'; refreshActiveRecordings(view, apiClient); loading.hide(); } + + taskButton({ + mode: 'on', + taskKey: 'RefreshLibrary', + button: page.querySelector('.btnRefresh') + }); }); view.addEventListener('viewbeforehide', function () { const apiClient = ApiClient; + const page = this; + events.off(serverNotifications, 'RestartRequired', onRestartRequired); events.off(serverNotifications, 'ServerShuttingDown', onServerShuttingDown); events.off(serverNotifications, 'ServerRestarting', onServerRestarting); @@ -841,6 +850,12 @@ import 'emby-itemscontainer'; if (apiClient) { DashboardPage.stopInterval(apiClient); } + + taskButton({ + mode: 'off', + taskKey: 'RefreshLibrary', + button: page.querySelector('.btnRefresh') + }); }); view.addEventListener('viewdestroy', function () { const page = this; diff --git a/src/scripts/taskbutton.js b/src/scripts/taskbutton.js index 163bcb5a1c..43a46301aa 100644 --- a/src/scripts/taskbutton.js +++ b/src/scripts/taskbutton.js @@ -13,7 +13,7 @@ export default function (options) { function updateTasks(tasks) { const task = tasks.filter(function (t) { - return t.ScheduledTask.Key == options.taskKey; + return t.Key == options.taskKey; })[0]; if (options.panel) { From 39a333f17b988758aeeaf425b2105462bb58a7df Mon Sep 17 00:00:00 2001 From: dkanada Date: Mon, 12 Oct 2020 12:33:20 +0900 Subject: [PATCH 276/365] move scan button to start on dashboard --- src/controllers/dashboard/dashboard.html | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/controllers/dashboard/dashboard.html b/src/controllers/dashboard/dashboard.html index 4c20da8de5..83d30495e5 100644 --- a/src/controllers/dashboard/dashboard.html +++ b/src/controllers/dashboard/dashboard.html @@ -16,15 +16,15 @@
    + -
    From 7411f96ff9a0f8797468f2c93f4f21783ea09c58 Mon Sep 17 00:00:00 2001 From: dkanada Date: Mon, 12 Oct 2020 12:36:42 +0900 Subject: [PATCH 277/365] move quickconnect html to proper location --- .../dashboard/quickConnect.html} | 0 .../dashboard/{quickconnect.js => quickConnect.js} | 0 src/scripts/routes.js | 5 +++-- 3 files changed, 3 insertions(+), 2 deletions(-) rename src/{quickconnect.html => controllers/dashboard/quickConnect.html} (100%) rename src/controllers/dashboard/{quickconnect.js => quickConnect.js} (100%) diff --git a/src/quickconnect.html b/src/controllers/dashboard/quickConnect.html similarity index 100% rename from src/quickconnect.html rename to src/controllers/dashboard/quickConnect.html diff --git a/src/controllers/dashboard/quickconnect.js b/src/controllers/dashboard/quickConnect.js similarity index 100% rename from src/controllers/dashboard/quickconnect.js rename to src/controllers/dashboard/quickConnect.js diff --git a/src/scripts/routes.js b/src/scripts/routes.js index 5651102655..ebe6f3cf5a 100644 --- a/src/scripts/routes.js +++ b/src/scripts/routes.js @@ -159,10 +159,11 @@ import 'detailtablecss'; }); defineRoute({ - path: '/quickconnect.html', + alias: '/quickConnect.html', + path: '/controllers/dashboard/quickConnect.html', autoFocus: false, roles: 'admin', - controller: 'dashboard/quickconnect' + controller: 'dashboard/quickConnect' }); defineRoute({ From a1cd9c8e602e2078c888bad9a6961264dd9956ad Mon Sep 17 00:00:00 2001 From: dkanada Date: Mon, 12 Oct 2020 12:45:20 +0900 Subject: [PATCH 278/365] update package.json --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 42bdc9dfcf..2f666ec7bc 100644 --- a/package.json +++ b/package.json @@ -245,7 +245,7 @@ "src/controllers/dashboard/plugins/installed/index.js", "src/controllers/dashboard/plugins/available/index.js", "src/controllers/dashboard/plugins/repositories/index.js", - "src/controllers/dashboard/quickconnect.js", + "src/controllers/dashboard/quickConnect.js", "src/controllers/dashboard/scheduledtasks/scheduledtask.js", "src/controllers/dashboard/scheduledtasks/scheduledtasks.js", "src/controllers/dashboard/serveractivity.js", From 59325b68a026259aea67404c1e1104679a0de634 Mon Sep 17 00:00:00 2001 From: CutterXYZ Date: Mon, 12 Oct 2020 12:55:20 +0000 Subject: [PATCH 279/365] Translated using Weblate (French) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fr/ --- src/strings/fr.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/strings/fr.json b/src/strings/fr.json index cdab1cb32c..3e2720e006 100644 --- a/src/strings/fr.json +++ b/src/strings/fr.json @@ -810,7 +810,7 @@ "MetadataSettingChangeHelp": "Les modifications des paramètres des métadonnées auront une incidence sur le nouveau contenu ajouté. Pour actualiser le contenu existant, ouvrez l'écran des détails et cliquez sur le bouton Actualiser, ou effectuez des actualisations en masse en utilisant le gestionnaire de métadonnées.", "MinutesAfter": "minutes après", "MinutesBefore": "minutes avant", - "Mobile": "Pour appareil Mobile", + "Mobile": "Mobile", "Monday": "Lundi", "MoreFromValue": "Plus de {0}", "MoreUsersCanBeAddedLater": "D'autres utilisateurs pourront être ajoutés ultérieurement à partir du tableau de bord.", @@ -1322,8 +1322,8 @@ "MessageSyncPlayErrorAccessingGroups": "Une erreur s'est produite pendant l'accès à la liste de groupes.", "ShowMore": "Voir plus", "ShowLess": "Voir moins", - "EnableBlurHashHelp": "Les images qui sont encore en cours de chargement seront remplacées par une image générique floue.", - "EnableBlurHash": "Utilise des images génériques floues à la place des images", + "EnableBlurHashHelp": "Les images en cours de chargement seront remplacées par une image générique floue.", + "EnableBlurHash": "Images floues de substitution", "ButtonCast": "Diffuser", "ButtonSyncPlay": "SyncPlay", "TabRepositories": "Dépôts", @@ -1342,7 +1342,7 @@ "ClearQueue": "Vider la file d'attente", "StopPlayback": "Arrêter", "ButtonPlayer": "Démarrer", - "Writers": "Écrivains", + "Writers": "Scénaristes", "ViewAlbumArtist": "Voir l'album de l'artiste", "PreviousTrack": "Revenir au précédent", "NextTrack": "Passer au prochain", From db160c3ecce0bff0cb32aaf198f7674d5d35f586 Mon Sep 17 00:00:00 2001 From: RiddleDude Date: Mon, 12 Oct 2020 18:25:11 +0000 Subject: [PATCH 280/365] Translated using Weblate (Latvian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/lv/ --- src/strings/lv.json | 44 ++++++++++++++++++++++++++++++++------------ 1 file changed, 32 insertions(+), 12 deletions(-) diff --git a/src/strings/lv.json b/src/strings/lv.json index 7ff61f2498..563acbab71 100644 --- a/src/strings/lv.json +++ b/src/strings/lv.json @@ -173,7 +173,7 @@ "LabelEnableDlnaServer": "Iespējot DLNA serveri", "LabelEnableDlnaPlayTo": "Iespējot DLNA atskaņošanu uz", "LabelEnableDlnaDebugLogging": "Iespējot DLNA atkļūdošanas logošanu", - "LabelEnableDlnaClientDiscoveryInterval": "Klientu meklēšanas intervāls (sekundes)", + "LabelEnableDlnaClientDiscoveryInterval": "Klientu meklēšanas intervāls", "LabelEasyPinCode": "Vieglais pin kods:", "LabelDownloadLanguages": "Lejupielādēt valodas:", "LabelDisplayOrder": "Displeja kārtojums:", @@ -202,7 +202,7 @@ "LabelBirthYear": "Dzimšanas gads:", "LabelBirthDate": "Dzimšanas datums:", "LabelAudioLanguagePreference": "Ieteicamā audio valoda:", - "LabelArtistsHelp": "Atdali vairākus izmantojot ;", + "LabelArtistsHelp": "Atdali vairākus izpildītājus izmantojot semikolu", "LabelArtists": "Izpildītājs:", "LabelAppNameExample": "Piemēram: Sickbeard, Sonarr", "LabelAppName": "Lietotnes nosaukums", @@ -510,7 +510,7 @@ "AlwaysPlaySubtitles": "Vienmēr Rādīt", "AllowedRemoteAddressesHelp": "Ar komatiem atdalīts IP adrešu vai IP/tīkla masku saraksts, kas norāda uz tīkliem, kas var pieslēgties attālināti. Ja atstāts tukšs, visas attālinātās adreses tiks atļautas.", "AllowRemoteAccessHelp": "Ja atķeksēts, visi attālinātie savienojumi tiks bloķēti.", - "AllowRemoteAccess": "Atļaut attālinātus savienojumus šim Jellyfin Serverim.", + "AllowRemoteAccess": "Atļaut attālinātus savienojumus ar šo serveri", "AllowOnTheFlySubtitleExtraction": "Atļaut subtitru izvilkšanu atskaņošanas laikā", "AllowMediaConversion": "Atļaut multimēdiju pārveidošanu", "AllLibraries": "Visas bibliotēkas", @@ -723,7 +723,7 @@ "ErrorSavingTvProvider": "Kļūda saglabājot TV sniedzēju. Pārliecinies ka tas ir pieejams un mēģini vēlreiz.", "ErrorStartHourGreaterThanEnd": "Beigu laikam jābūt vēlākam par sākuma laiku.", "ErrorAddingXmlTvFile": "Kļūda atverot XMLTV datni. Lūdzu pārliecinies ka datne eksistē un mēģini vēlreiz.", - "LabelCustomCssHelp": "Izmanto pats savu pielāgoto silu web interfeisam.", + "LabelCustomCssHelp": "Izmanto pats savu pielāgoto stilu tīmekļa saskarnei.", "LabelCustomCss": "Pielāgots CSS:", "LabelCustomCertificatePath": "Pielāgotā SSL sertifikāta ceļš:", "LabelCorruptedFrames": "Bojātie kadri:", @@ -741,11 +741,11 @@ "LabelAlbumArtMaxWidth": "Albumu vāku maksimālais platums:", "LabelAlbumArtMaxHeight": "Albumu vāku maksimālais augstums:", "LabelAbortedByServerShutdown": "(Atcelts dēļ servera izslēgšanas)", - "ImportFavoriteChannelsHelp": "Ja iespējots, tikai kanāli, kas atzīmēti kā favorīti uztvērēja ierīcē tiks importēti.", + "ImportFavoriteChannelsHelp": "Tikai kanāli, kas atzīmēti kā favorīti uztvērēja ierīcē tiks importēti.", "HttpsRequiresCert": "Lai iespējotu drošos savienojumus, tev ir jānodrošina uzticams SSL sertifikāts, kā Let's Encrypt. Lūdzu nodrošini sertifikātu, vai atspējo drošos savienojumus.", "HeaderTranscodingProfileHelp": "Pievieno tiešās atskaņošanas profilus, lai norādītu kurus formātus izmantot kad ir vajadzīga trans-kodēšana.", "HeaderTaskTriggers": "Uzdevumu Trigeri", - "HeaderSelectTranscodingPathHelp": "Pārlūko vai ievadi ceļu, kurā tiks glabātas īslaicīgās trans-kodēšanas datnes. Šai mapei jābūt rakstāmai.", + "HeaderSelectTranscodingPathHelp": "Pārlūko vai ievadi ceļu, kurā tiks glabātas trans-kodēšanas datnes. Šai mapei jābūt rakstāmai.", "HeaderSelectTranscodingPath": "Izvēlies Trans-kodēšanas Īslaicīgo Ceļu", "HeaderSelectServerCachePathHelp": "Pārlūko vai ievadi ceļu, kurā vēlies saglabāt servera keša datnes. Šai mapei jābūt rakstāmai.", "HeaderSelectPath": "Izvēlies Ceļu", @@ -799,7 +799,7 @@ "DropShadow": "Fona Ēnojums", "DisplayMissingEpisodesWithinSeasons": "Rādīt trūkstošās epizodes sezonās", "Disconnect": "Atvienot", - "DirectStreamHelp2": "Tieši Straumējot datni tiek izmantots ļoti maz procesora jaudas, bez video vai audio kvalitātes zudumiem.", + "DirectStreamHelp2": "Tieši Straumējot datni, tiek izmantots ļoti maz procesora jaudas un rodas minimāli video kvalitātes zudumi.", "DirectStreamHelp1": "Šis medijs ir saderīgs ar ierīci pēc izšķirtspējas un medija veida (H.264, AC3, utt.), bet atrodas nesaderīgā datnes konteinerī (mkv, avi, wmv, utt.). Video tiks pārpakots uz saderīgu formātu pirms tas tiks straumēts uz ierīci.", "Descending": "Disltošs", "Depressed": "Atspiests", @@ -813,7 +813,7 @@ "ConfirmEndPlayerSession": "Vai jūs gribat izslēgt Jellyfin uz {0}?", "ConfirmDeleteItems": "Dzēšot šos vienumus, tie tiks izdzēsti gan no jūsu failu sistēmas, gan mediju bibliotēkas. Vai tiešām turpināt?", "ConfirmDeleteItem": "Dzēšot šo vienumu, tas tiks izdzēsts gan no jūsu failu sistēmas, gan mediju bibliotēkas. Vai tiešām turpināt?", - "ConfigureDateAdded": "Iestati kā pievienošanas datums tiek noteikts iekš Jellyfin Server pārvaldes paneļa zem Bibliotēkas iestatījumiem", + "ConfigureDateAdded": "Konfigurēt kā pievienošanas datums tiek noteikts iekš pārvaldes paneļa zem Bibliotēkas iestatījumiem", "Composer": "Komponists", "ColorSpace": "Krāsu telpa", "ColorPrimaries": "Primārās krāsas", @@ -829,7 +829,7 @@ "ButtonAddScheduledTaskTrigger": "Pievienot Trigeru", "BookLibraryHelp": "Audio un teksta grāmatas tiek atbalstītas. Pārskati {0} grāmatu nosaukumu instrukciju {1}.", "Blacklist": "Melnais saraksts", - "AuthProviderHelp": "Izvēlies Autentifikācijas Nodrošinājumu, kas tiks izmantots lai autentificētu šī lietotāja paroli.", + "AuthProviderHelp": "Izvēlies autentifikācijas nodrošinājumu, kas tiks izmantots lai autentificētu šī lietotāja paroli.", "AspectRatio": "Attēla Proporcijas", "AskAdminToCreateLibrary": "Vaicājiet administratoram, lai izveidotu bibliotēku.", "Ascending": "Augoši", @@ -916,7 +916,7 @@ "LabelBaseUrl": "Pamata URL:", "LabelEnableSingleImageInDidlLimitHelp": "Dažas ierīces pareizi neatskaņos ja vairāki attēli ir iegulti iekš Didl.", "LabelEnableSingleImageInDidlLimit": "Ierobežot uz vienu iegulto attēlu", - "LabelEnableDlnaClientDiscoveryIntervalHelp": "Nosaka laiku sekundēs starp Jellyfin veiktajiem SSDP meklējumiem.", + "LabelEnableDlnaClientDiscoveryIntervalHelp": "Nosaka laiku sekundēs veiktajiem SSDP meklējumiem.", "LabelEmbedAlbumArtDidlHelp": "Dažas ierīces labprātāk izmanto šo metodi lai saņemtu albumu vākus. Citas var neatskaņot ar šo opciju ieslēgtu.", "LabelDroppedFrames": "Nomestie kadri:", "LabelDownMixAudioScaleHelp": "Pastiprināt audio lejupmiksēšanas laikā. Vērtība viens paturēs oriģinālo skaļumu.", @@ -935,7 +935,7 @@ "ApiKeysCaption": "Saraksts ar pašlaik iespējotajām API atslēgām", "EncoderPresetHelp": "Izvēlies ātrāku vērtību lai uzlabotu veiktspēju, vai lēnāku vērtību lai uzlabotu kvalitāti.", "FetchingData": "Iegūst papildu datus", - "ErrorDeletingItem": "Notika kļūda dzēšot vienumu no Jellyfin Servera. Lūdzu pārliecinies vai Jellyfin Server ir rakstoša piekļuve pie satura mapes un mēģini vēlreiz.", + "ErrorDeletingItem": "Notika kļūda dzēšot vienumu no servera. Lūdzu pārliecinies vai Jellyfin ir rakstoša piekļuve pie satura mapes un mēģini vēlreiz.", "ErrorAddingTunerDevice": "Kļūda pievienojot tūnera ierīci. Lūdzu pārliecinies ka tā ir pieejama un mēģini vēlreiz.", "ErrorAddingMediaPathToVirtualFolder": "Notika kļūda pievienojot satura ceļu. Lūdzu pārliecinies ka ceļš ir derīgs un ka Jellyfin Servera procesam ir piekļuve tai vietai.", "Episode": "Epizode", @@ -1028,5 +1028,25 @@ "LabelEmbedAlbumArtDidl": "Ievietot albumu vākus iekš Didl", "LabelSelectFolderGroups": "Automātiski grupēt saturu no sekojošām datnēm skatos kā Filmas, Mūzika un TV:", "AllowFfmpegThrottlingHelp": "Kad trans-kodējums vai remux tiek pietiekami tālu priekšā pašreizējai atskaņošanas vietai, process tiks pauzēts lai patērētu mazāk resursu. Tas ir noderīgākais skatoties bez biežas pārlēkšanas. Atspējo šo ja saskaries ar atskaņošanas problēmām.", - "ButtonSyncPlay": "SyncPlay" + "ButtonSyncPlay": "SyncPlay", + "LabelCustomRating": "Pielāgotais vērtējums:", + "LabelCurrentStatus": "Pašreizējais status:", + "LabelAudioBitDepth": "Audio bitu dziļums:", + "LabelAlbumArtMaxResHelp": "Maksimālā albuma vāka izšķirtspēja, kas padota izmantojot upnp:albumArtURI rekvizītu.", + "InstantMix": "Tūlītēja jaukšana", + "Image": "Attēls", + "HeaderSyncPlayEnabled": "SyncPlay ieslēgts", + "HeaderSyncPlaySelectGroup": "Pievienoties grupai", + "HeaderServerAddressSettings": "Servera adresācijas iestatījumi", + "EnableQuickConnect": "Ieslēgt šim serverim Quick Connect", + "EnableDecodingColorDepth10Vp9": "Ieslēgt 10 bitu aparatūras dekodēšānu priekš VP9", + "EnableDecodingColorDepth10Hevc": "Ieslēgt 10 bitu aparatūras dekodēšānu priekš HEVC", + "EnableAutoCast": "Iestatīt kā noklusējumu", + "Down": "Uz leju", + "DefaultSubtitlesHelp": "Subtitri tiek izvēlēti atkarībā no iestrādāto metadatu noklusējuma un piespiedu karodziņiem. Valodas preference tiek ņemta vērā, kad pieejamas vairākas iespējas.", + "Data": "Dati", + "ButtonUseQuickConnect": "Izmantot Quick Connect", + "ButtonActivate": "Aktivizēt", + "BoxSet": "Komplekts", + "Authorize": "Atļaut" } From b77ef51899ba4bd976102a54f2ed835acdcf3dbb Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 12 Oct 2020 21:27:30 +0000 Subject: [PATCH 281/365] Bump hls.js from 0.14.13 to 0.14.15 Bumps [hls.js](https://github.com/video-dev/hls.js) from 0.14.13 to 0.14.15. - [Release notes](https://github.com/video-dev/hls.js/releases) - [Changelog](https://github.com/video-dev/hls.js/blob/master/docs/release-process.md) - [Commits](https://github.com/video-dev/hls.js/compare/v0.14.13...v0.14.15) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 42bdc9dfcf..82f7a86afd 100644 --- a/package.json +++ b/package.json @@ -65,7 +65,7 @@ "fast-text-encoding": "^1.0.3", "flv.js": "^1.5.0", "headroom.js": "^0.11.0", - "hls.js": "^0.14.13", + "hls.js": "^0.14.15", "howler": "^2.2.0", "intersection-observer": "^0.11.0", "jellyfin-apiclient": "^1.4.2", diff --git a/yarn.lock b/yarn.lock index fa4ef0b676..9eeed0850f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5499,10 +5499,10 @@ hex-color-regex@^1.1.0: resolved "https://registry.yarnpkg.com/hex-color-regex/-/hex-color-regex-1.1.0.tgz#4c06fccb4602fe2602b3c93df82d7e7dbf1a8a8e" integrity sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ== -hls.js@^0.14.13: - version "0.14.13" - resolved "https://registry.yarnpkg.com/hls.js/-/hls.js-0.14.13.tgz#824395a0631c8e32bf0e8de06873f1d89774bada" - integrity sha512-0u61R0t6DcgJ7Ofr0RUlfrNrkP2gn5pHL+5clKmITY1P7pztyj5aoVw2/9SbeoM6k4shg5iPyuZb+7I32ZzqFQ== +hls.js@^0.14.15: + version "0.14.15" + resolved "https://registry.yarnpkg.com/hls.js/-/hls.js-0.14.15.tgz#3d41c6a51cef31d2629df2d9ad4333215770febe" + integrity sha512-zKOY9PZVeDBu3iXL6Dg8DfUPDEf71lTyy7JFgCOJXkqV48HeDfNoMhcN1trMrYRtMyFnpA7YBiI8c1DzSdLAFA== dependencies: eventemitter3 "^4.0.3" url-toolkit "^2.1.6" From d73b7b9cb2af6b0bbff693c0b82989a8fef2efd1 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 12 Oct 2020 21:28:35 +0000 Subject: [PATCH 282/365] Bump swiper from 6.3.2 to 6.3.3 Bumps [swiper](https://github.com/nolimits4web/Swiper) from 6.3.2 to 6.3.3. - [Release notes](https://github.com/nolimits4web/Swiper/releases) - [Changelog](https://github.com/nolimits4web/swiper/blob/master/CHANGELOG.md) - [Commits](https://github.com/nolimits4web/Swiper/compare/v6.3.2...v6.3.3) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 42bdc9dfcf..d19d1d05f6 100644 --- a/package.json +++ b/package.json @@ -81,7 +81,7 @@ "resize-observer-polyfill": "^1.5.1", "screenfull": "^5.0.2", "sortablejs": "^1.12.0", - "swiper": "^6.3.2", + "swiper": "^6.3.3", "webcomponents.js": "^0.7.24", "whatwg-fetch": "^3.4.1" }, diff --git a/yarn.lock b/yarn.lock index fa4ef0b676..8d60cd9b19 100644 --- a/yarn.lock +++ b/yarn.lock @@ -11024,10 +11024,10 @@ svgo@^1.0.0, svgo@^1.3.2: unquote "~1.1.1" util.promisify "~1.0.0" -swiper@^6.3.2: - version "6.3.2" - resolved "https://registry.yarnpkg.com/swiper/-/swiper-6.3.2.tgz#3eb337ff58f425841a27400a7b0215234d94f3c1" - integrity sha512-mseVNXAsNNSfp3fHuZlMnsToc3ulM3X3on2EC8GMi4+/DwD9SSieSSIQroUbxkIMmCCIvpDN1Ese7o0Ls9I4lw== +swiper@^6.3.3: + version "6.3.3" + resolved "https://registry.yarnpkg.com/swiper/-/swiper-6.3.3.tgz#e0b2e27621c07e789bfa91569b5676e896d18001" + integrity sha512-SnG1weu2GhqKxuG4NTIA1A6OE9x3P/+d2DW6APLUgYNHm0ZgkAOxL/tEDubiHvgwqtaVaz6QWqkSbCaDYffSNg== dependencies: dom7 "^3.0.0-alpha.7" ssr-window "^3.0.0-alpha.4" From 3440f9967bb7dce84f3c53398015cced16ef791d Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 12 Oct 2020 21:29:29 +0000 Subject: [PATCH 283/365] Bump style-loader from 1.3.0 to 2.0.0 Bumps [style-loader](https://github.com/webpack-contrib/style-loader) from 1.3.0 to 2.0.0. - [Release notes](https://github.com/webpack-contrib/style-loader/releases) - [Changelog](https://github.com/webpack-contrib/style-loader/blob/master/CHANGELOG.md) - [Commits](https://github.com/webpack-contrib/style-loader/compare/v1.3.0...v2.0.0) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 36 ++++++++++++++++++++++++++++++------ 2 files changed, 31 insertions(+), 7 deletions(-) diff --git a/package.json b/package.json index 42bdc9dfcf..d502c90f52 100644 --- a/package.json +++ b/package.json @@ -45,7 +45,7 @@ "node-sass": "^4.13.1", "postcss-loader": "^3.0.0", "postcss-preset-env": "^6.7.0", - "style-loader": "^1.3.0", + "style-loader": "^2.0.0", "stylelint": "^13.7.2", "stylelint-config-rational-order": "^0.1.2", "stylelint-no-browser-hacks": "^1.2.1", diff --git a/yarn.lock b/yarn.lock index fa4ef0b676..be6f9c4c91 100644 --- a/yarn.lock +++ b/yarn.lock @@ -990,6 +990,11 @@ resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.5.tgz#dcce4430e64b443ba8945f0290fb564ad5bac6dd" integrity sha512-7+2BITlgjgDhH0vvwZU/HZJVyk+2XUlvxXe8dFMedNX/aMkaOq++rMAFXc0tM7ij15QaWlbdQASBR9dihi+bDQ== +"@types/json-schema@^7.0.6": + version "7.0.6" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.6.tgz#f4c7ec43e81b319a9815115031709f26987891f0" + integrity sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw== + "@types/json5@^0.0.29": version "0.0.29" resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" @@ -1312,6 +1317,16 @@ ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.4, ajv@^6.5.5: json-schema-traverse "^0.4.1" uri-js "^4.2.2" +ajv@^6.12.5: + version "6.12.6" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== + dependencies: + fast-deep-equal "^3.1.1" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.4.1" + uri-js "^4.2.2" + alameda@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/alameda/-/alameda-1.4.0.tgz#ca53cad0feb5e24994a9be859e0593e8c2d8f58c" @@ -9945,7 +9960,7 @@ schema-utils@^1.0.0: ajv-errors "^1.0.0" ajv-keywords "^3.1.0" -schema-utils@^2.6.5, schema-utils@^2.7.0, schema-utils@^2.7.1: +schema-utils@^2.6.5, schema-utils@^2.7.1: version "2.7.1" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.1.tgz#1ca4f32d1b24c590c203b8e7a50bf0ea4cd394d7" integrity sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg== @@ -9954,6 +9969,15 @@ schema-utils@^2.6.5, schema-utils@^2.7.0, schema-utils@^2.7.1: ajv "^6.12.4" ajv-keywords "^3.5.2" +schema-utils@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.0.0.tgz#67502f6aa2b66a2d4032b4279a2944978a0913ef" + integrity sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA== + dependencies: + "@types/json-schema" "^7.0.6" + ajv "^6.12.5" + ajv-keywords "^3.5.2" + screenfull@^5.0.2: version "5.0.2" resolved "https://registry.yarnpkg.com/screenfull/-/screenfull-5.0.2.tgz#b9acdcf1ec676a948674df5cd0ff66b902b0bed7" @@ -10772,13 +10796,13 @@ strip-outer@^1.0.0: dependencies: escape-string-regexp "^1.0.2" -style-loader@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-1.3.0.tgz#828b4a3b3b7e7aa5847ce7bae9e874512114249e" - integrity sha512-V7TCORko8rs9rIqkSrlMfkqA63DfoGBBJmK1kKGCcSi+BWb4cqz0SRsnp4l6rU5iwOEd0/2ePv68SV22VXon4Q== +style-loader@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-2.0.0.tgz#9669602fd4690740eaaec137799a03addbbc393c" + integrity sha512-Z0gYUJmzZ6ZdRUqpg1r8GsaFKypE+3xAzuFeMuoHgjc9KZv3wMyCRjQIWEbhoFSq7+7yoHXySDJyyWQaPajeiQ== dependencies: loader-utils "^2.0.0" - schema-utils "^2.7.0" + schema-utils "^3.0.0" style-search@^0.1.0: version "0.1.0" From 74baf782fa5f4d8078f0a6f684a0744f9d1a2e64 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 12 Oct 2020 21:29:55 +0000 Subject: [PATCH 284/365] Bump file-loader from 6.1.0 to 6.1.1 Bumps [file-loader](https://github.com/webpack-contrib/file-loader) from 6.1.0 to 6.1.1. - [Release notes](https://github.com/webpack-contrib/file-loader/releases) - [Changelog](https://github.com/webpack-contrib/file-loader/blob/master/CHANGELOG.md) - [Commits](https://github.com/webpack-contrib/file-loader/compare/v6.1.0...v6.1.1) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 34 +++++++++++++++++++++++++++++----- 2 files changed, 30 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index 42bdc9dfcf..aab80fdb73 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,7 @@ "eslint-plugin-eslint-comments": "^3.2.0", "eslint-plugin-import": "^2.22.1", "eslint-plugin-promise": "^4.2.1", - "file-loader": "^6.1.0", + "file-loader": "^6.1.1", "gulp": "^4.0.2", "gulp-babel": "^8.0.0", "gulp-cli": "^2.3.0", diff --git a/yarn.lock b/yarn.lock index fa4ef0b676..05972380bc 100644 --- a/yarn.lock +++ b/yarn.lock @@ -990,6 +990,11 @@ resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.5.tgz#dcce4430e64b443ba8945f0290fb564ad5bac6dd" integrity sha512-7+2BITlgjgDhH0vvwZU/HZJVyk+2XUlvxXe8dFMedNX/aMkaOq++rMAFXc0tM7ij15QaWlbdQASBR9dihi+bDQ== +"@types/json-schema@^7.0.6": + version "7.0.6" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.6.tgz#f4c7ec43e81b319a9815115031709f26987891f0" + integrity sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw== + "@types/json5@^0.0.29": version "0.0.29" resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" @@ -1312,6 +1317,16 @@ ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.4, ajv@^6.5.5: json-schema-traverse "^0.4.1" uri-js "^4.2.2" +ajv@^6.12.5: + version "6.12.6" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== + dependencies: + fast-deep-equal "^3.1.1" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.4.1" + uri-js "^4.2.2" + alameda@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/alameda/-/alameda-1.4.0.tgz#ca53cad0feb5e24994a9be859e0593e8c2d8f58c" @@ -4433,13 +4448,13 @@ file-entry-cache@^5.0.1: dependencies: flat-cache "^2.0.1" -file-loader@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-6.1.0.tgz#65b9fcfb0ea7f65a234a1f10cdd7f1ab9a33f253" - integrity sha512-26qPdHyTsArQ6gU4P1HJbAbnFTyT2r0pG7czh1GFAd9TZbj0n94wWbupgixZH/ET/meqi2/5+F7DhW4OAXD+Lg== +file-loader@^6.1.1: + version "6.1.1" + resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-6.1.1.tgz#a6f29dfb3f5933a1c350b2dbaa20ac5be0539baa" + integrity sha512-Klt8C4BjWSXYQAfhpYYkG4qHNTna4toMHEbWrI5IuVoxbU6uiDKeKAP99R8mmbJi3lvewn/jQBOgU4+NS3tDQw== dependencies: loader-utils "^2.0.0" - schema-utils "^2.7.1" + schema-utils "^3.0.0" file-type@5.2.0, file-type@^5.2.0: version "5.2.0" @@ -9954,6 +9969,15 @@ schema-utils@^2.6.5, schema-utils@^2.7.0, schema-utils@^2.7.1: ajv "^6.12.4" ajv-keywords "^3.5.2" +schema-utils@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.0.0.tgz#67502f6aa2b66a2d4032b4279a2944978a0913ef" + integrity sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA== + dependencies: + "@types/json-schema" "^7.0.6" + ajv "^6.12.5" + ajv-keywords "^3.5.2" + screenfull@^5.0.2: version "5.0.2" resolved "https://registry.yarnpkg.com/screenfull/-/screenfull-5.0.2.tgz#b9acdcf1ec676a948674df5cd0ff66b902b0bed7" From a7f172885b1d3b31eabd32b5a1bdc8292759d631 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 13 Oct 2020 03:07:59 +0000 Subject: [PATCH 285/365] Bump eslint from 7.10.0 to 7.11.0 Bumps [eslint](https://github.com/eslint/eslint) from 7.10.0 to 7.11.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v7.10.0...v7.11.0) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 27 +++++++++++---------------- 2 files changed, 12 insertions(+), 17 deletions(-) diff --git a/package.json b/package.json index 3230ef9473..b16ebb9b93 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "css-loader": "^4.3.0", "cssnano": "^4.1.10", "del": "^6.0.0", - "eslint": "^7.10.0", + "eslint": "^7.11.0", "eslint-plugin-compat": "^3.5.1", "eslint-plugin-eslint-comments": "^3.2.0", "eslint-plugin-import": "^2.22.1", diff --git a/yarn.lock b/yarn.lock index 7c60521471..0967f04a77 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1307,17 +1307,7 @@ ajv-keywords@^3.1.0, ajv-keywords@^3.4.1, ajv-keywords@^3.5.2: resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== -ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.4, ajv@^6.5.5: - version "6.12.4" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.4.tgz#0614facc4522127fa713445c6bfd3ebd376e2234" - integrity sha512-eienB2c9qVQs2KWexhkrdMLVDoIQCz5KSeLxwg9Lzk4DOfBtIK9PQwwufcsn1jjGuf9WZmqPMbGxOzfcuphJCQ== - dependencies: - fast-deep-equal "^3.1.1" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.4.1" - uri-js "^4.2.2" - -ajv@^6.12.5: +ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.4, ajv@^6.12.5, ajv@^6.5.5: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -4075,10 +4065,15 @@ eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== -eslint@^7.10.0: - version "7.10.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.10.0.tgz#494edb3e4750fb791133ca379e786a8f648c72b9" - integrity sha512-BDVffmqWl7JJXqCjAK6lWtcQThZB/aP1HXSH1JKwGwv0LQEdvpR7qzNrUT487RM39B5goWuboFad5ovMBmD8yA== +eslint-visitor-keys@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz#21fdc8fbcd9c795cc0321f0563702095751511a8" + integrity sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ== + +eslint@^7.11.0: + version "7.11.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.11.0.tgz#aaf2d23a0b5f1d652a08edacea0c19f7fadc0b3b" + integrity sha512-G9+qtYVCHaDi1ZuWzBsOWo2wSwd70TXnU6UHA3cTYHp7gCTXZcpggWFoUVAMRarg68qtPoNfFbzPh+VdOgmwmw== dependencies: "@babel/code-frame" "^7.0.0" "@eslint/eslintrc" "^0.1.3" @@ -4090,7 +4085,7 @@ eslint@^7.10.0: enquirer "^2.3.5" eslint-scope "^5.1.1" eslint-utils "^2.1.0" - eslint-visitor-keys "^1.3.0" + eslint-visitor-keys "^2.0.0" espree "^7.3.0" esquery "^1.2.0" esutils "^2.0.2" From a26fb3451fdca8ea1aefea61ab6d3d0cfb803f90 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 13 Oct 2020 03:37:51 +0000 Subject: [PATCH 286/365] Bump webpack from 4.44.2 to 5.0.0 Bumps [webpack](https://github.com/webpack/webpack) from 4.44.2 to 5.0.0. - [Release notes](https://github.com/webpack/webpack/releases) - [Commits](https://github.com/webpack/webpack/compare/v4.44.2...v5.0.0) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 382 +++++++++++++++++++++++++++++++++++++++++++-------- 2 files changed, 328 insertions(+), 56 deletions(-) diff --git a/package.json b/package.json index 74edd48ef9..f1cb13f3c4 100644 --- a/package.json +++ b/package.json @@ -50,7 +50,7 @@ "stylelint-config-rational-order": "^0.1.2", "stylelint-no-browser-hacks": "^1.2.1", "stylelint-order": "^4.1.0", - "webpack": "^4.44.2", + "webpack": "^5.0.0", "webpack-merge": "^4.2.2", "webpack-stream": "^6.1.0", "worker-plugin": "^5.0.0" diff --git a/yarn.lock b/yarn.lock index a7142c546a..1d5ca33387 100644 --- a/yarn.lock +++ b/yarn.lock @@ -936,6 +936,13 @@ "@nodelib/fs.scandir" "2.1.3" fastq "^1.6.0" +"@npmcli/move-file@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-1.0.1.tgz#de103070dac0f48ce49cf6693c23af59c0f70464" + integrity sha512-Uv6h1sT+0DrblvIrolFtbvM1FgWm+/sy4B3pvLp67Zys+thcukzS5ekn7HsZFGpWP4Q3fYJCljbWQE/XivMRLw== + dependencies: + mkdirp "^1.0.4" + "@sindresorhus/is@^0.7.0": version "0.7.0" resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.7.0.tgz#9a06f4f137ee84d7df0460c1fdb1135ffa6c50fd" @@ -966,6 +973,27 @@ resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0" integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ== +"@types/eslint-scope@^3.7.0": + version "3.7.0" + resolved "https://registry.yarnpkg.com/@types/eslint-scope/-/eslint-scope-3.7.0.tgz#4792816e31119ebd506902a482caec4951fabd86" + integrity sha512-O/ql2+rrCUe2W2rs7wMR+GqPRcgB6UiqN5RhrR5xruFlY7l9YLMn0ZkDzjoHLeiFkR8MCQZVudUuuvQ2BLC9Qw== + dependencies: + "@types/eslint" "*" + "@types/estree" "*" + +"@types/eslint@*": + version "7.2.4" + resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-7.2.4.tgz#d12eeed7741d2491b69808576ac2d20c14f74c41" + integrity sha512-YCY4kzHMsHoyKspQH+nwSe+70Kep7Vjt2X+dZe5Vs2vkRudqtoFoUIv1RlJmZB8Hbp7McneupoZij4PadxsK5Q== + dependencies: + "@types/estree" "*" + "@types/json-schema" "*" + +"@types/estree@*", "@types/estree@^0.0.45": + version "0.0.45" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.45.tgz#e9387572998e5ecdac221950dab3e8c3b16af884" + integrity sha512-jnqIUKDUqJbDIUxm0Uj7bnlMnRm1T/eZ9N+AVMqhPgzrba2GhGG5o/jCTwmdPK709nEZsGoMzXEDUjcXHa3W0g== + "@types/events@*": version "3.0.0" resolved "https://registry.yarnpkg.com/@types/events/-/events-3.0.0.tgz#2862f3f58a9a7f7c3e78d79f130dd4d71c25c2a7" @@ -985,16 +1013,16 @@ resolved "https://registry.yarnpkg.com/@types/html-minifier-terser/-/html-minifier-terser-5.1.0.tgz#551a4589b6ee2cc9c1dff08056128aec29b94880" integrity sha512-iYCgjm1dGPRuo12+BStjd1HiVQqhlRhWDOQigNxn023HcjnhsiFz9pc6CzJj4HwDCSQca9bxTL4PxJDbkdm3PA== +"@types/json-schema@*", "@types/json-schema@^7.0.6": + version "7.0.6" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.6.tgz#f4c7ec43e81b319a9815115031709f26987891f0" + integrity sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw== + "@types/json-schema@^7.0.5": version "7.0.5" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.5.tgz#dcce4430e64b443ba8945f0290fb564ad5bac6dd" integrity sha512-7+2BITlgjgDhH0vvwZU/HZJVyk+2XUlvxXe8dFMedNX/aMkaOq++rMAFXc0tM7ij15QaWlbdQASBR9dihi+bDQ== -"@types/json-schema@^7.0.6": - version "7.0.6" - resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.6.tgz#f4c7ec43e81b319a9815115031709f26987891f0" - integrity sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw== - "@types/json5@^0.0.29": version "0.0.29" resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" @@ -1284,6 +1312,11 @@ acorn@^7.4.0: resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.0.tgz#e1ad486e6c54501634c6c397c5c121daa383607c" integrity sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w== +acorn@^8.0.3: + version "8.0.4" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.0.4.tgz#7a3ae4191466a6984eee0fe3407a4f3aa9db8354" + integrity sha512-XNP0PqF1XD19ZlLKvB7cMmnZswW4C/03pRHgirB30uSJTaS3A3V1/P4sS3HPvFmjoriPCJQs+JDSbm4bL1TxGQ== + after@0.8.2: version "0.8.2" resolved "https://registry.yarnpkg.com/after/-/after-0.8.2.tgz#fedb394f9f0e02aa9768e702bda23b505fae7e1f" @@ -1317,16 +1350,6 @@ ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.4, ajv@^6.12.5, ajv@^6.5.5: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -ajv@^6.12.5: - version "6.12.6" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" - integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== - dependencies: - fast-deep-equal "^3.1.1" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.4.1" - uri-js "^4.2.2" - alameda@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/alameda/-/alameda-1.4.0.tgz#ca53cad0feb5e24994a9be859e0593e8c2d8f58c" @@ -2106,15 +2129,15 @@ browserslist@^1.1.3: caniuse-db "^1.0.30000639" electron-to-chromium "^1.2.7" -browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.12.2, browserslist@^4.6.4, browserslist@^4.8.5: - version "4.12.2" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.12.2.tgz#76653d7e4c57caa8a1a28513e2f4e197dc11a711" - integrity sha512-MfZaeYqR8StRZdstAK9hCKDd2StvePCYp5rHzQCPicUjfFliDgmuaBNPHYUTpAywBN8+Wc/d7NYVFkO0aqaBUw== +browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.12.2, browserslist@^4.14.3, browserslist@^4.6.4, browserslist@^4.8.5: + version "4.14.5" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.14.5.tgz#1c751461a102ddc60e40993639b709be7f2c4015" + integrity sha512-Z+vsCZIvCBvqLoYkBFTwEYH3v5MCQbsAjp50ERycpOjnPmolg1Gjy4+KaWWpm8QOJt9GHkhdqAl14NpCX73CWA== dependencies: - caniuse-lite "^1.0.30001088" - electron-to-chromium "^1.3.483" - escalade "^3.0.1" - node-releases "^1.1.58" + caniuse-lite "^1.0.30001135" + electron-to-chromium "^1.3.571" + escalade "^3.1.0" + node-releases "^1.1.61" bs-recipes@1.3.4: version "1.3.4" @@ -2212,6 +2235,29 @@ cacache@^12.0.2, cacache@^12.0.3: unique-filename "^1.1.1" y18n "^4.0.0" +cacache@^15.0.5: + version "15.0.5" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-15.0.5.tgz#69162833da29170d6732334643c60e005f5f17d0" + integrity sha512-lloiL22n7sOjEEXdL8NAjTgv9a1u43xICE9/203qonkZUCj5X1UEWIdf2/Y0d6QcCtMzbKQyhrcDbdvlZTs/+A== + dependencies: + "@npmcli/move-file" "^1.0.1" + chownr "^2.0.0" + fs-minipass "^2.0.0" + glob "^7.1.4" + infer-owner "^1.0.4" + lru-cache "^6.0.0" + minipass "^3.1.1" + minipass-collect "^1.0.2" + minipass-flush "^1.0.5" + minipass-pipeline "^1.2.2" + mkdirp "^1.0.3" + p-map "^4.0.0" + promise-inflight "^1.0.1" + rimraf "^3.0.2" + ssri "^8.0.0" + tar "^6.0.2" + unique-filename "^1.1.1" + cache-base@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" @@ -2361,11 +2407,16 @@ caniuse-db@^1.0.30001090: resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30001093.tgz#5a1cae72d94df1156f40f15d9079456e1b29d050" integrity sha512-XqXxHR6Z9IN0BXLKMaTJ1NZ+US74cbKritholD6uaDLUWHiDj0QilpSb708wOcoGz0PmPRsXT/6zE+bjx+QSMw== -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000981, caniuse-lite@^1.0.30001088, caniuse-lite@^1.0.30001109: +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000981, caniuse-lite@^1.0.30001109: version "1.0.30001109" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001109.tgz#a9f3f26a0c3753b063d7acbb48dfb9c0e46f2b19" integrity sha512-4JIXRodHzdS3HdK8nSgIqXYLExOvG+D2/EenSvcub2Kp3QEADjo2v2oUn5g0n0D+UNwG9BtwKOyGcSq2qvQXvQ== +caniuse-lite@^1.0.30001135: + version "1.0.30001148" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001148.tgz#dc97c7ed918ab33bf8706ddd5e387287e015d637" + integrity sha512-E66qcd0KMKZHNJQt9hiLZGE3J4zuTqE1OnU53miEVtylFbwOEmeA5OsRu90noZful+XGSQOni1aT2tiqu/9yYw== + caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" @@ -2481,6 +2532,11 @@ chownr@^1.1.1: resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== +chownr@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" + integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== + chrome-trace-event@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz#234090ee97c7d4ad1a2c4beae27505deffc608a4" @@ -3700,10 +3756,10 @@ electron-to-chromium@^1.2.7: resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.427.tgz#ea43d02908a8c71f47ebb46e09de5a3cf8236f04" integrity sha512-/rG5G7Opcw68/Yrb4qYkz07h3bESVRJjUl4X/FrKLXzoUJleKm6D7K7rTTz8V5LUWnd+BbTOyxJX2XprRqHD8A== -electron-to-chromium@^1.3.483: - version "1.3.488" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.488.tgz#9226229f5fbc825959210e81e0bb3e63035d1c06" - integrity sha512-NReBdOugu1yl8ly+0VDtiQ6Yw/1sLjnvflWq0gvY1nfUXU2PbA+1XAVuEb7ModnwL/MfUPjby7e4pAFnSHiy6Q== +electron-to-chromium@^1.3.571: + version "1.3.578" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.578.tgz#e6671936f4571a874eb26e2e833aa0b2c0b776e0" + integrity sha512-z4gU6dA1CbBJsAErW5swTGAaU2TBzc2mPAonJb00zqW1rOraDo2zfBMDRvaz9cVic+0JEZiYbHWPw/fTaZlG2Q== elliptic@^6.0.0: version "6.5.3" @@ -3822,6 +3878,14 @@ enhanced-resolve@^4.3.0: memory-fs "^0.5.0" tapable "^1.0.0" +enhanced-resolve@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.2.0.tgz#3db3307a608f236f33aeea79303d32915792cbab" + integrity sha512-NZlGLl8DxmZoq0uqPPtJfsCAir68uR047+Udsh1FH4+5ydGQdMurn/A430A1BtxASVmMEuS7/XiJ5OxJ9apAzQ== + dependencies: + graceful-fs "^4.2.4" + tapable "^2.0.0" + enquirer@^2.3.5: version "2.3.6" resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" @@ -3952,10 +4016,10 @@ es6-weak-map@^2.0.1, es6-weak-map@^2.0.2: es6-iterator "^2.0.3" es6-symbol "^3.1.1" -escalade@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.0.1.tgz#52568a77443f6927cd0ab9c73129137533c965ed" - integrity sha512-DR6NO3h9niOT+MZs7bjxlj2a1k+POu5RN8CLTPX2+i78bRi9eLe7+0zXgUHMnGXWybYcL61E9hGhPKqedy8tQA== +escalade@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.0.tgz#e8e2d7c7a8b76f6ee64c2181d6b8151441602d4e" + integrity sha512-mAk+hPSO8fLDkhV7V0dXazH5pDc6MrjBTPyD3VeKzxnVFjH1MIxbCdqGZB9O8+EwWakZs3ZCbDS4IpRt79V1ig== escape-html@~1.0.3: version "1.0.3" @@ -4055,7 +4119,7 @@ eslint-scope@^4.0.3: esrecurse "^4.1.0" estraverse "^4.1.1" -eslint-scope@^5.1.1: +eslint-scope@^5.1.0, eslint-scope@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== @@ -4196,10 +4260,10 @@ eventemitter3@^4.0.0, eventemitter3@^4.0.3: resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.4.tgz#b5463ace635a083d018bdc7c917b4c5f10a85384" integrity sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ== -events@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/events/-/events-3.1.0.tgz#84279af1b34cb75aa88bf5ff291f6d0bd9b31a59" - integrity sha512-Rv+u8MLHNOdMjTAFeT3nCjHn2aGlx435FP/sDHNaRhDEMwyI/aB22Kj2qIN8R0cw3z28psEQLYwxVKLsKrMgWg== +events@^3.0.0, events@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/events/-/events-3.2.0.tgz#93b87c18f8efcd4202a461aec4dfc0556b639379" + integrity sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg== evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: version "1.0.3" @@ -4554,6 +4618,15 @@ find-cache-dir@^2.1.0: make-dir "^2.0.0" pkg-dir "^3.0.0" +find-cache-dir@^3.3.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.1.tgz#89b33fad4a4670daa94f855f7fbe31d6d84fe880" + integrity sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ== + dependencies: + commondir "^1.0.1" + make-dir "^3.0.2" + pkg-dir "^4.1.0" + find-up@^1.0.0: version "1.1.2" resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" @@ -4576,7 +4649,7 @@ find-up@^3.0.0: dependencies: locate-path "^3.0.0" -find-up@^4.1.0: +find-up@^4.0.0, find-up@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== @@ -4739,6 +4812,13 @@ fs-extra@3.0.1: jsonfile "^3.0.0" universalify "^0.1.0" +fs-minipass@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" + integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== + dependencies: + minipass "^3.0.0" + fs-mkdirp-stream@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz#0b7815fc3201c6a69e14db98ce098c16935259eb" @@ -4943,6 +5023,11 @@ glob-to-regexp@^0.3.0: resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" integrity sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs= +glob-to-regexp@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" + integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== + glob-watcher@^5.0.3: version "5.0.3" resolved "https://registry.yarnpkg.com/glob-watcher/-/glob-watcher-5.0.3.tgz#88a8abf1c4d131eb93928994bc4a593c2e5dd626" @@ -5854,7 +5939,7 @@ indexof@0.0.1: resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" integrity sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10= -infer-owner@^1.0.3: +infer-owner@^1.0.3, infer-owner@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== @@ -6392,6 +6477,15 @@ jellyfin-apiclient@^1.4.2: version "1.0.3" resolved "https://github.com/jellyfin/jellyfin-noto#b784602db063734c721a46563ae5d6577ec2b35d" +jest-worker@^26.5.0: + version "26.5.0" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.5.0.tgz#87deee86dbbc5f98d9919e0dadf2c40e3152fa30" + integrity sha512-kTw66Dn4ZX7WpjZ7T/SUDgRhapFRKWmisVAF0Rv4Fu8SLFD7eLbqpLvbxVqYhSgaWa7I+bW7pHnbyfNsH6stug== + dependencies: + "@types/node" "*" + merge-stream "^2.0.0" + supports-color "^7.0.0" + jquery@>=1.9.1, jquery@^3.5.1: version "3.5.1" resolved "https://registry.yarnpkg.com/jquery/-/jquery-3.5.1.tgz#d7b4d08e1bfdb86ad2f1a3d039ea17304717abb5" @@ -6703,6 +6797,11 @@ loader-runner@^2.4.0: resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.4.0.tgz#ed47066bfe534d7e84c4c7b9998c2a75607d9357" integrity sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw== +loader-runner@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.1.0.tgz#f70bc0c29edbabdf2043e7ee73ccc3fe1c96b42d" + integrity sha512-oR4lB4WvwFoC70ocraKhn5nkKSs23t57h9udUgw8o0iH8hMXeEoRuUgfcvgUwAJ1ZpRqBvcou4N2SMvM1DwMrA== + loader-utils@^1.1.0, loader-utils@^1.2.3, loader-utils@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.4.0.tgz#c579b5e34cb34b1a74edc6c1fb36bfa371d5a613" @@ -7006,6 +7105,13 @@ lru-cache@^5.1.1: dependencies: yallist "^3.0.2" +lru-cache@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== + dependencies: + yallist "^4.0.0" + lru-queue@0.1: version "0.1.0" resolved "https://registry.yarnpkg.com/lru-queue/-/lru-queue-0.1.0.tgz#2738bd9f0d3cf4f84490c5736c48699ac632cda3" @@ -7028,7 +7134,7 @@ make-dir@^2.0.0: pify "^4.0.1" semver "^5.6.0" -make-dir@^3.0.0: +make-dir@^3.0.0, make-dir@^3.0.2: version "3.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== @@ -7279,7 +7385,7 @@ mime-db@1.44.0, mime-db@^1.28.0: resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.44.0.tgz#fa11c5eb0aca1334b4233cb4d52f10c5a6272f92" integrity sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg== -mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.19, mime-types@~2.1.24: +mime-types@^2.1.12, mime-types@^2.1.27, mime-types@~2.1.17, mime-types@~2.1.19, mime-types@~2.1.24: version "2.1.27" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.27.tgz#47949f98e279ea53119f5722e0f34e529bec009f" integrity sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w== @@ -7345,6 +7451,42 @@ minimist@^1.1.0, minimist@^1.1.3, minimist@^1.2.0, minimist@^1.2.5: resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== +minipass-collect@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617" + integrity sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA== + dependencies: + minipass "^3.0.0" + +minipass-flush@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" + integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw== + dependencies: + minipass "^3.0.0" + +minipass-pipeline@^1.2.2: + version "1.2.4" + resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" + integrity sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A== + dependencies: + minipass "^3.0.0" + +minipass@^3.0.0, minipass@^3.1.1: + version "3.1.3" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.1.3.tgz#7d42ff1f39635482e15f9cdb53184deebd5815fd" + integrity sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg== + dependencies: + yallist "^4.0.0" + +minizlib@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" + integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== + dependencies: + minipass "^3.0.0" + yallist "^4.0.0" + mississippi@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022" @@ -7381,6 +7523,11 @@ mixin-deep@^1.2.0: dependencies: minimist "^1.2.5" +mkdirp@^1.0.3, mkdirp@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + move-concurrently@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" @@ -7461,10 +7608,10 @@ negotiator@0.6.2: resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw== -neo-async@^2.5.0, neo-async@^2.6.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.1.tgz#ac27ada66167fa8849a6addd837f6b189ad2081c" - integrity sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw== +neo-async@^2.5.0, neo-async@^2.6.1, neo-async@^2.6.2: + version "2.6.2" + resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" + integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== next-tick@1: version "1.1.0" @@ -7543,10 +7690,10 @@ node-libs-browser@^2.2.1: util "^0.11.0" vm-browserify "^1.0.1" -node-releases@^1.1.58: - version "1.1.58" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.58.tgz#8ee20eef30fa60e52755fcc0942def5a734fe935" - integrity sha512-NxBudgVKiRh/2aPWMgPR7bPTX0VPmGx5QBwCtdHitnqFE5/O8DeBXuIMH1nwNnw/aMo6AjOrpsHzfY3UbUJ7yg== +node-releases@^1.1.61: + version "1.1.61" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.61.tgz#707b0fca9ce4e11783612ba4a2fcba09047af16e" + integrity sha512-DD5vebQLg8jLCOzwupn954fbIiZht05DAZs0k2u8NStSe6h9XdsuIQL8hSRKYiU8WUQRznmSDrKGbv3ObOmC7g== node-sass@^4.13.1: version "4.14.1" @@ -7947,6 +8094,13 @@ p-limit@^2.0.0, p-limit@^2.2.0, p-limit@^2.2.1: dependencies: p-try "^2.0.0" +p-limit@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.0.2.tgz#1664e010af3cadc681baafd3e2a437be7b0fb5fe" + integrity sha512-iwqZSOoWIW+Ew4kAGUlN16J4M7OB3ysMLSZtnhmqx7njIHFPlxWBX8xo3lVTyFVq6mI/lL9qt2IsN1sHwaxJkg== + dependencies: + p-try "^2.0.0" + p-locate@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" @@ -8337,6 +8491,13 @@ pkg-dir@^3.0.0: dependencies: find-up "^3.0.0" +pkg-dir@^4.1.0, pkg-dir@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" + integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== + dependencies: + find-up "^4.0.0" + plugin-error@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/plugin-error/-/plugin-error-1.0.1.tgz#77016bd8919d0ac377fdcdd0322328953ca5781c" @@ -9301,7 +9462,7 @@ quick-lru@^4.0.1: resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-4.0.1.tgz#5b8878f113a58217848c6482026c73e1ba57727f" integrity sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g== -randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5: +randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5, randombytes@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== @@ -10071,6 +10232,13 @@ serialize-javascript@^2.1.2: resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-2.1.2.tgz#ecec53b0e0317bdc95ef76ab7074b7384785fa61" integrity sha512-rs9OggEUF0V4jUSecXazOYsLfu7OGK2qIn3c7IPBiffz32XniEp/TX9Xmc9LQfK2nQ2QKHvZ2oygKUGU0lG4jQ== +serialize-javascript@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-5.0.1.tgz#7886ec848049a462467a97d3d918ebb2aaf934f4" + integrity sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA== + dependencies: + randombytes "^2.1.0" + serve-index@1.9.1: version "1.9.1" resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" @@ -10349,7 +10517,7 @@ sortablejs@^1.12.0: resolved "https://registry.yarnpkg.com/sortablejs/-/sortablejs-1.12.0.tgz#ee6d7ece3598c2af0feb1559d98595e5ea37cbd6" integrity sha512-bPn57rCjBRlt2sC24RBsu40wZsmLkSo2XeqG8k6DC1zru5eObQUIPPZAQG7W2SJ8FZQYq+BEJmvuw1Zxb3chqg== -source-list-map@^2.0.0: +source-list-map@^2.0.0, source-list-map@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw== @@ -10365,7 +10533,7 @@ source-map-resolve@^0.5.0, source-map-resolve@^0.5.2: source-map-url "^0.4.0" urix "^0.1.0" -source-map-support@~0.5.12: +source-map-support@~0.5.12, source-map-support@~0.5.19: version "0.5.19" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.19.tgz#a98b62f86dcaf4f67399648c085291ab9e8fed61" integrity sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw== @@ -10395,6 +10563,11 @@ source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== +source-map@~0.7.2: + version "0.7.3" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" + integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== + sparkles@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/sparkles/-/sparkles-1.0.1.tgz#008db65edce6c50eec0c5e228e1945061dd0437c" @@ -10489,6 +10662,13 @@ ssri@^6.0.1: dependencies: figgy-pudding "^3.5.1" +ssri@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-8.0.0.tgz#79ca74e21f8ceaeddfcb4b90143c458b8d988808" + integrity sha512-aq/pz989nxVYwn16Tsbj1TqFpD5LLrQxHf5zaHuieFV+R0Bbr4y8qUsOA45hXT/N4/9UNXTarBjnjVmjSOVaAA== + dependencies: + minipass "^3.1.1" + stable@^0.1.8: version "0.1.8" resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" @@ -11014,7 +11194,7 @@ supports-color@^6.1.0: dependencies: has-flag "^3.0.0" -supports-color@^7.1.0, supports-color@^7.2.0: +supports-color@^7.0.0, supports-color@^7.1.0, supports-color@^7.2.0: version "7.2.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== @@ -11091,6 +11271,11 @@ tapable@^1.0.0, tapable@^1.1.3: resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2" integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA== +tapable@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.0.0.tgz#a49c3d6a8a2bb606e7db372b82904c970d537a08" + integrity sha512-bjzn0C0RWoffnNdTzNi7rNDhs1Zlwk2tRXgk8EiHKAOX1Mag3d6T0Y5zNa7l9CJ+EoUne/0UHdwS8tMbkh9zDg== + tar-stream@^1.5.2: version "1.6.2" resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-1.6.2.tgz#8ea55dab37972253d9a9af90fdcd559ae435c555" @@ -11113,6 +11298,18 @@ tar@^2.0.0: fstream "^1.0.12" inherits "2" +tar@^6.0.2: + version "6.0.5" + resolved "https://registry.yarnpkg.com/tar/-/tar-6.0.5.tgz#bde815086e10b39f1dcd298e89d596e1535e200f" + integrity sha512-0b4HOimQHj9nXNEAA7zWwMM91Zhhba3pspja6sQbgTpynOJf+bkjBnfybNYzbpLbnwXnbyB4LOREvlyXLkCHSg== + dependencies: + chownr "^2.0.0" + fs-minipass "^2.0.0" + minipass "^3.0.0" + minizlib "^2.1.1" + mkdirp "^1.0.3" + yallist "^4.0.0" + temp-dir@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-1.0.0.tgz#0a7c0ea26d3a39afa7e0ebea9c1fc0bc4daa011d" @@ -11151,6 +11348,21 @@ terser-webpack-plugin@^1.4.3: webpack-sources "^1.4.0" worker-farm "^1.7.0" +terser-webpack-plugin@^4.1.0: + version "4.2.3" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-4.2.3.tgz#28daef4a83bd17c1db0297070adc07fc8cfc6a9a" + integrity sha512-jTgXh40RnvOrLQNgIkwEKnQ8rmHjHK4u+6UBEi+W+FPmvb+uo+chJXntKe7/3lW5mNysgSWD60KyesnhW8D6MQ== + dependencies: + cacache "^15.0.5" + find-cache-dir "^3.3.1" + jest-worker "^26.5.0" + p-limit "^3.0.2" + schema-utils "^3.0.0" + serialize-javascript "^5.0.1" + source-map "^0.6.1" + terser "^5.3.4" + webpack-sources "^1.4.3" + terser@>=4, terser@^4.1.2, terser@^4.6.3: version "4.8.0" resolved "https://registry.yarnpkg.com/terser/-/terser-4.8.0.tgz#63056343d7c70bb29f3af665865a46fe03a0df17" @@ -11160,6 +11372,15 @@ terser@>=4, terser@^4.1.2, terser@^4.6.3: source-map "~0.6.1" source-map-support "~0.5.12" +terser@^5.3.4: + version "5.3.5" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.3.5.tgz#9e080baa0568f96654621b20eb9effa440b1484e" + integrity sha512-Qw3CZAMmmfU824AoGKalx+riwocSI5Cs0PoGp9RdSLfmxkmJgyBxqLBP/isDNtFyhHnitikvRMZzyVgeq+U+Tg== + dependencies: + commander "^2.20.0" + source-map "~0.7.2" + source-map-support "~0.5.19" + text-table@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" @@ -12003,6 +12224,14 @@ watchpack@^1.7.4: chokidar "^3.4.1" watchpack-chokidar2 "^2.0.0" +watchpack@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.0.0.tgz#b12248f32f0fd4799b7be0802ad1f6573a45955c" + integrity sha512-xSdCxxYZWNk3VK13bZRYhsQpfa8Vg63zXG+3pyU8ouqSLRCv4IGXIp9Kr226q6GBkGRlZrST2wwKtjfKz2m7Cg== + dependencies: + glob-to-regexp "^0.4.1" + graceful-fs "^4.1.2" + webcomponents.js@^0.7.24: version "0.7.24" resolved "https://registry.yarnpkg.com/webcomponents.js/-/webcomponents.js-0.7.24.tgz#2116fbfa1468ec416a7befdaa333e1d118f69c04" @@ -12023,7 +12252,7 @@ webpack-merge@^4.2.2: dependencies: lodash "^4.17.15" -webpack-sources@^1.4.0, webpack-sources@^1.4.1: +webpack-sources@^1.4.0, webpack-sources@^1.4.1, webpack-sources@^1.4.3: version "1.4.3" resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ== @@ -12031,6 +12260,14 @@ webpack-sources@^1.4.0, webpack-sources@^1.4.1: source-list-map "^2.0.0" source-map "~0.6.1" +webpack-sources@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-2.0.1.tgz#1467f6e692ddce91e88b8044c44347b1087bbd4f" + integrity sha512-A9oYz7ANQBK5EN19rUXbvNgfdfZf5U2gP0769OXsj9CvYkCR6OHOsd6OKyEy4H38GGxpsQPKIL83NC64QY6Xmw== + dependencies: + source-list-map "^2.0.1" + source-map "^0.6.1" + webpack-stream@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/webpack-stream/-/webpack-stream-6.1.0.tgz#047348e36793432f329c7b5ff13e6e9b6872c152" @@ -12046,7 +12283,7 @@ webpack-stream@^6.1.0: vinyl "^2.1.0" webpack "^4.26.1" -webpack@^4.26.1, webpack@^4.44.2: +webpack@^4.26.1: version "4.44.2" resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.44.2.tgz#6bfe2b0af055c8b2d1e90ed2cd9363f841266b72" integrity sha512-6KJVGlCxYdISyurpQ0IPTklv+DULv05rs2hseIXer6D7KrUicRDLFb4IUM1S6LUAKypPM/nSiVSuv8jHu1m3/Q== @@ -12075,6 +12312,36 @@ webpack@^4.26.1, webpack@^4.44.2: watchpack "^1.7.4" webpack-sources "^1.4.1" +webpack@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.0.0.tgz#c028b2f0c1db2322de1f4a30cc36f6e373d5a26a" + integrity sha512-OK+Q9xGgda3idw/DgCf75XsVFxRLPu48qPwygqI3W9ls5sDdKif5Ay4SM/1UVob0w4juJy14Zv9nNv0WeyV0aA== + dependencies: + "@types/eslint-scope" "^3.7.0" + "@types/estree" "^0.0.45" + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/helper-module-context" "1.9.0" + "@webassemblyjs/wasm-edit" "1.9.0" + "@webassemblyjs/wasm-parser" "1.9.0" + acorn "^8.0.3" + browserslist "^4.14.3" + chrome-trace-event "^1.0.2" + enhanced-resolve "^5.2.0" + eslint-scope "^5.1.0" + events "^3.2.0" + glob-to-regexp "^0.4.1" + graceful-fs "^4.2.4" + json-parse-better-errors "^1.0.2" + loader-runner "^4.1.0" + mime-types "^2.1.27" + neo-async "^2.6.2" + pkg-dir "^4.2.0" + schema-utils "^3.0.0" + tapable "^2.0.0" + terser-webpack-plugin "^4.1.0" + watchpack "^2.0.0" + webpack-sources "^2.0.1" + webworkify@^1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/webworkify/-/webworkify-1.5.0.tgz#734ad87a774de6ebdd546e1d3e027da5b8f4a42c" @@ -12244,6 +12511,11 @@ yallist@^3.0.2: resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== +yallist@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== + yaml@^1.10.0: version "1.10.0" resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.0.tgz#3b593add944876077d4d683fee01081bd9fff31e" From afafc18a352565e8b2fa6a183fb86ed5923c9301 Mon Sep 17 00:00:00 2001 From: Ahmed Mohamed Date: Mon, 12 Oct 2020 21:07:12 +0000 Subject: [PATCH 287/365] Translated using Weblate (Arabic) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ar/ --- src/strings/ar.json | 129 +++++++++++++++++++++++++------------------- 1 file changed, 75 insertions(+), 54 deletions(-) diff --git a/src/strings/ar.json b/src/strings/ar.json index 99a426e12f..15ea0fb3ba 100644 --- a/src/strings/ar.json +++ b/src/strings/ar.json @@ -4,7 +4,7 @@ "All": "الكل", "AllLibraries": "كل المكتبات", "AllowHWTranscodingHelp": "عند تفعيلها , سيسمح لتونر بتحويل العرض في الحال . هذا قد يساعد في تخفيض التحويل المطلوب من السيرفر.", - "AllowRemoteAccess": "السماح بالاتصالات عن بعد إلى خادم إمبي هذا.", + "AllowRemoteAccess": "السماح بالاتصالات عن بعد إلى هذا الخادم.", "AllowRemoteAccessHelp": "إذا لم يتم تحديده ، فسيتم حظر جميع الاتصالات عن بُعد.", "Audio": "الصوت", "BirthDateValue": "وُلد: {0}", @@ -73,7 +73,7 @@ "EnablePhotos": "عرض الصور", "EnablePhotosHelp": "سيتم اكتشاف الصور وعرضها مع ملفات الوسائط الأخرى.", "ErrorAddingListingsToSchedulesDirect": "كان هناك خطأ في إضافة الاصطفاف لخدمة \"Schedules Direct\" الخاصة بك. خدمة \"Schedules Direct\" لا تسمح إلا بعدد محدود من الاصطفافات لكل حساب. قد تحتاج إلى تسجيل الدخول إلى موقع \"Schedules Direct\" لإزالة الاصطفافات الأخرى من حسابك قبل المتابعة.", - "ErrorAddingMediaPathToVirtualFolder": "كان هناك خطأ في إضافة مسار الوسائط. الرجاء التأكد من صحة المسار وأن خادم أمبي لديه صلاحية الوصول إلى الموقع.", + "ErrorAddingMediaPathToVirtualFolder": "كان هناك خطأ في إضافة مسار الوسائط. الرجاء التأكد من صحة المسار وأن جيلليفن لديه صلاحية الوصول إلى ذلك المسار.", "ErrorAddingTunerDevice": "كان هناك خطأ في إضافة جهاز المولف. الرجاء التأكد من صلاحية الوصول إليه ثم عاود المحاولة.", "ErrorAddingXmlTvFile": "كان هناك خطأ في محاولة الوصول إلى ملف XMLTV. الرجاء التأكد من وجود الملف ثم حاول مرة أخرى.", "ErrorGettingTvLineups": "كان هناك خطأ في إنزال اصطفافات التلفاز. الرجاء التأكد من أن بياناتك صحيحة ثم عاود المحاولة.", @@ -194,7 +194,7 @@ "HeaderSelectServerCachePath": "إختر مسار كاشة الخادم", "HeaderSelectServerCachePathHelp": "تصفح أو أدخل المسار الذي ترغب أن يُستخدم كاشة لملفات الخادم. يجب أن يكون هذا المجلد قابل للكتابة فيه.", "HeaderSelectTranscodingPath": "إختر المسار المؤقت للتشفير البيني", - "HeaderSelectTranscodingPathHelp": "تصفح أو أدخل المسار الذي ترغب أن يُستخدم لملفات التشفير البيني. يجب أن يكون هذا المجلد قابل للكتابة فيه.", + "HeaderSelectTranscodingPathHelp": "تصفح أو أدخل المسار الذي ترغب أن يُستخدم لملفات التشفير البيني. يجب أن يكون هذا المجلد قابل للكتابة فيه.", "HeaderSendMessage": "أرسل رسالة", "HeaderServerSettings": "إعدادات الخادم", "HeaderSetupLibrary": "ضبط مكتبة المحتوى الخاصة بك", @@ -245,7 +245,7 @@ "LabelArtistsHelp": "افصل بين الفنانين ب ; فاصلة منقوطة.", "LabelAudioLanguagePreference": "اللغة المفضلة للصوت:", "LabelBindToLocalNetworkAddress": "إربطه إلى عنوان شبكة محلي:", - "LabelBindToLocalNetworkAddressHelp": "تجاوز عنوان الآي بي المحلي لربطه بخادم http. إذا ترك فارغاً، فإن الخادم سيربطه بجميع العناوين المتاحة. تغيير هذه القيمة يتطلب إعادة تشغيل خادم جيلليفن.", + "LabelBindToLocalNetworkAddressHelp": "تجاوز عنوان الآي بي المحلي لربطه بخادم http. إذا ترك فارغاً، فإن الخادم سيربطه بجميع العناوين المتاحة. تغيير هذه القيمة يتطلب إعادة تشغيل.", "LabelBlastMessageInterval": "فترات بث رسالة قيد التشغيل", "LabelBlastMessageIntervalHelp": "يحدد الفترة بالثواني بين بث رسائل قيد التشغيل.", "LabelCache": "مَخبأ (كاش):", @@ -280,52 +280,52 @@ "LabelEmbedAlbumArtDidl": "ضمن رسومات الألبوم في مخطط DIDL", "LabelEmbedAlbumArtDidlHelp": "بعض الأجهزة تفضل هذه الطريقة لاستخلاص رسومات الألبوم، فيما قد يفشل تشغيلها بتفعيل هذا الخيار.", "LabelEnableAutomaticPortMap": "فعل الخاصية الآلية في التوفيق بين المنافذ", - "LabelEnableAutomaticPortMapHelp": "حاول التوفيق بين المنفذ العالمي والمنفذ المحلي آلياً باستخدام آلية UPnP. هذه الخاصية قد لا تعمل مع بعض أنواع الراوترات.", + "LabelEnableAutomaticPortMapHelp": "يتم تلقائيا التوفيق بين المنفذ العالمي والمنفذ المحلي آلياً باستخدام آلية UPnP. هذه الخاصية قد لا تعمل مع بعض أنواع الراوترات او بعض اعدادات الشبكة. لن يحدث تغيير حتى يتم اعاده تشغيل الخادم.", "LabelEnableBlastAliveMessages": "بث رسائل قيد التشغيل", "LabelEnableBlastAliveMessagesHelp": "فعل هذه الخاصية إذا كان الخادم لا يكتشف بكفاءة من قبل أجهزة UPnP الأخرى على شبكتك.", "LabelEnableDlnaClientDiscoveryInterval": "فترات استكشاف العملاء", - "LabelEnableDlnaClientDiscoveryIntervalHelp": "يحدد الفترة بالثواني بين عمليات بحث SSDP التي يقوم بها أمبي.", + "LabelEnableDlnaClientDiscoveryIntervalHelp": "يحدد الفترة بالثواني بين عمليات بحث SSDP.", "LabelEnableDlnaDebugLogging": "تفعيل خاصية كشوفات أخطاء DLNA", - "LabelEnableDlnaDebugLoggingHelp": "هذه ستنشئ سجلات كشفية ضخمة ولا ينبغي تفعيلها إلا عند الحاجة إليها بغرض استكشاف الأخطاء وحصرها.", + "LabelEnableDlnaDebugLoggingHelp": "انشاء سجلات كشفية ضخمة ولا ينبغي تفعيلها إلا عند الحاجة إليها بغرض استكشاف الأخطاء وحصرها.", "LabelEnableDlnaPlayTo": "تفعيل خاصية DLNA Play To", - "LabelEnableDlnaPlayToHelp": "بإمكان أمبي أن يستكشف الأجهزة على شبكتك ويقدم لك إمكامية التحكم بهم عن بعد.", - "LabelEnableDlnaServer": "تفعيل خادم Dlna", - "LabelEnableDlnaServerHelp": "يمكن أجهزة UPnP على شبكتك لتصفح محتوى أمبي.", + "LabelEnableDlnaPlayToHelp": "اكتشف الأجهزة على شبكتك ويقدم لك إمكانية التحكم بهم عن بعد.", + "LabelEnableDlnaServer": "تفعيل خادم DLNA", + "LabelEnableDlnaServerHelp": "يمكن أجهزة UPnP على شبكتك بتصفح و تشغيل المحتوى.", "LabelEnableRealtimeMonitor": "تفعيل خاصية المراقبة في الوقت الحقيقي", - "LabelEnableRealtimeMonitorHelp": "التغييرات ستعالج مباشرة إذا كان نظام الملفات مدعوم.", + "LabelEnableRealtimeMonitorHelp": "التغييرات للملفات ستعالج مباشرة علي انظمة الملفات المدعومة.", "LabelEnableSingleImageInDidlLimit": "حدد عدد الصور المضمّنة لصور واحدة", "LabelEnableSingleImageInDidlLimitHelp": "بعض الأجهزه لن تظهر الصور جيداً إن ضمّنت صور عديدة في مخطط didl.", - "LabelEndDate": "تاريخ الانتهاء", + "LabelEndDate": "تاريخ الانتهاء:", "LabelEpisodeNumber": "رقم الحلقة:", "LabelEvent": "الحدث:", "LabelEveryXMinutes": "كل:", "LabelExtractChaptersDuringLibraryScan": "استخلص صور الأبواب أثناء تمشيط المكتبة", - "LabelExtractChaptersDuringLibraryScanHelp": "عند التفعيل، فإن صور الأبواب ستُستخلص عندما تدرج الفيديوهات الجديدة أثناء تمشيط المكتبة. عند عدم التفعيل فإن عملية الاستخلاص ستكون محصورة أثناء مهمة صور الأبواب المجدولة، ما يسمح لعملية تمشيط المكتبة أن تنتهي بصورة أسرع.", + "LabelExtractChaptersDuringLibraryScanHelp": "فإن صور الأبواب ستُستخلص عندما تدرج الفيديوهات الجديدة أثناء تمشيط المكتبة. عند عدم التفعيل فإن عملية الاستخلاص ستكون محصورة أثناء مهمة صور الأبواب المجدولة، ما يسمح لعملية تمشيط المكتبة أن تنتهي بصورة أسرع.", "LabelFailed": "العملية فشلت", "LabelFileOrUrl": "الملف أو الرابط:", "LabelFinish": "إنهاء", - "LabelForgotPasswordUsernameHelp": "أدخل اسم المستخدم الخاص بك، إن كنت تتذكرها", + "LabelForgotPasswordUsernameHelp": "أدخل اسم المستخدم الخاص بك، إن كنت تتذكره.", "LabelFormat": "الصيغة:", - "LabelFriendlyName": "اسم مخصوص لك", - "LabelServerNameHelp": "هذا الاسم يسيتخدم للتعرف على الخادم. إن ترك خالٍ، فإن اسم الحاسوب سوف يستخدم.", + "LabelFriendlyName": "اسم مخصوص لك:", + "LabelServerNameHelp": "هذا الاسم سيستخدم للتعرف على هذا الخادم، اسم الحاسوب سوف يستخدم بشكل افتراضي.", "LabelGroupMoviesIntoCollections": "تجميع الأفلام إلى مجاميع", - "LabelGroupMoviesIntoCollectionsHelp": "عند استعراض قوائم الأفلام، فإن الأفلام التي تنتمي إلى مجموعة واحدة ستظهر كعنصر جامع.", + "LabelGroupMoviesIntoCollectionsHelp": "عند استعراض قوائم الأفلام، مجموعة واحدة ستظهر كعنصر جامع.", "LabelH264Crf": "قيمة CRF لتشفير H264:", "LabelEncoderPreset": "إعدادات تشفير H264:", - "LabelHardwareAccelerationType": "التسريع بعتاد الحاسب", - "LabelHardwareAccelerationTypeHelp": "متاح في الأنظمة المدعومة فقط.", - "LabelHttpsPort": "رقم منفذ https المحتلي:", - "LabelHttpsPortHelp": "رقم منفذ tcp المتوجب على بروتوكول https أن يرتبط من خلاله في خادم أمبي.", - "LabelIconMaxHeight": "الارتفاع الأقصى للأيقونة.", + "LabelHardwareAccelerationType": "التسريع بعتاد الحاسب:", + "LabelHardwareAccelerationTypeHelp": "التسريع بعتاد الحاسب يتطلب اعدادات اضافية.", + "LabelHttpsPort": "رقم منفذ HTTPS المحلي:", + "LabelHttpsPortHelp": "رقم منفذ TCP للخادم ببروتوكول HTTPS.", + "LabelIconMaxHeight": "الارتفاع الأقصى للأيقونة:", "LabelIconMaxWidth": "العرض الأقصى للأيقونة:", "LabelImageFetchersHelp": "مكّن ورتّب جالبات الصور التي تفضلها حسب أولوية التفضيل.", "LabelImageType": "صيغة الصورة:", "LabelImportOnlyFavoriteChannels": "أحصر العرض على القنوات المعلّمة كمفضلات", "LabelInNetworkSignInWithEasyPassword": "تفعيل تسجيل الدخول من الشبكة الداخلية باستخدام الرمز الشخصي الميسر", - "LabelInNetworkSignInWithEasyPasswordHelp": "عند التفعيل، ستتمكن من استخدام الرمز الشخصي الميسر للدخول إلى تطبيقات أمبي عبر شبكتك الداخلية. أما كلمة السر الخاصة بك فلن تحتاجها إلا عندما تكون على شبكة الإنترنت بعيداً عن مكانك. إن ترك الرمز الشخصي فارغاً فلن تحتاج إلى إدخال شيء للدخول من داخل الشبكة.", + "LabelInNetworkSignInWithEasyPasswordHelp": "استخدام الرمز الشخصي الميسر للدخول إلىالتطبيق عبر شبكتك الداخلية. أما كلمة السر الخاصة بك فلن تحتاجها إلا عندما تكون على شبكة الإنترنت بعيداً عن شبكتك. إن ترك الرمز الشخصي فارغاً فلن تحتاج إلى إدخال شيء للدخول من داخل شبكتك المنزلية.", "LabelKidsCategories": "تصنيفات الأطفال:", "LabelKodiMetadataDateFormat": "تنسيق تاريخ الإصدار:", - "LabelKodiMetadataDateFormatHelp": "جميع التواريخ داخل ملف nfo ستُقرأ وتُكتب وفق هذا التنسيق.", + "LabelKodiMetadataDateFormatHelp": "جميع التواريخ داخل ملف NFO ستكون وفق هذا التنسيق.", "LabelKodiMetadataEnableExtraThumbs": "إنسخ extrafanart إلى extrathumbs", "LabelKodiMetadataEnableExtraThumbsHelp": "عند إنزال الصور بإمكان حفظها إلى extrafanart و extrathumbs لتكون متوافقة مع مظاهر Kodi بأقصى حد.", "LabelKodiMetadataEnablePathSubstitution": "تفعيل إبدال المسارات", @@ -334,20 +334,20 @@ "LabelKodiMetadataSaveImagePathsHelp": "هذا الخيار ينصح به إذا كان لديك صور لا تتوافق مع الدليل الإرشادي لنظام Kodi.", "LabelLanguage": "اللغة:", "LabelLineup": "سلسل:", - "LabelLocalHttpServerPortNumber": "رقم منفذ http المحلي:", - "LabelLocalHttpServerPortNumberHelp": "رقم منفذ http المتوجب على الخادم أن يرتبط من خلاله.", + "LabelLocalHttpServerPortNumber": "رقم منفذ HTTP المحلي:", + "LabelLocalHttpServerPortNumberHelp": "رقم منفذ TCP لخادم HTTP.", "LabelLoginDisclaimer": "إخلاء مسؤولية تسجيل الدخول:", - "LabelLoginDisclaimerHelp": "هذه ستعرض أسفل شاشة تسجيل الدخول.", + "LabelLoginDisclaimerHelp": "رساله ستعرض أسفل صفحة تسجيل الدخول.", "LabelLogs": "السجلات الكشفية:", - "LabelManufacturer": "المصنّع", - "LabelManufacturerUrl": "رابط url للمصنّع", + "LabelManufacturer": "المصنّع:", + "LabelManufacturerUrl": "رابط URL للمصنّع", "LabelMatchType": "وفّق النوع:", "LabelMaxBackdropsPerItem": "أكبر عدد للخلفيات لكل عنصر:", "LabelMaxParentalRating": "الحد الاقصى لتصنيف الرقابة الابوية المسموح بها:", "LabelMaxResumePercentage": "النسبة العليا للمتابعة:", - "LabelMaxResumePercentageHelp": "العنواين ستعتبر مشغلة حتى النهاية إذا أوقفت بعد هذا الوقت", + "LabelMaxResumePercentageHelp": "العنواين ستعتبر مشغلة حتى النهاية إذا أوقفت بعد هذا الوقت.", "LabelMaxScreenshotsPerItem": "أكبر عدد للصور الملتقطة لكل عنصر:", - "LabelMaxStreamingBitrate": "أقصى تدفق للجودة", + "LabelMaxStreamingBitrate": "أقصى تدفق للجودة:", "LabelMaxStreamingBitrateHelp": "تحديد الحد الأقصى لمعدل البت أثناء البث التدفقي.", "LabelMessageText": "نص الرسالة:", "LabelMessageTitle": "عنوان الرسالة:", @@ -358,25 +358,25 @@ "LabelMetadataReaders": "قارءات واصفات البيانات", "LabelMetadataReadersHelp": "رتب مصادر واصفات البيانات التي تفضلها حسب أولوية التفضيل. أول ملف يعثر عليه سيحمّل.", "LabelMetadataSavers": "حافظات واصفات البيانات:", - "LabelMetadataSaversHelp": "إختر صيغ الملفات التي ترغب في حفظ واصفات البيانات إليها.", + "LabelMetadataSaversHelp": "إختر صيغ الملفات التي ترغب في استخدمها عند حفظ واصفات البيانات.", "LabelMethod": "الطريقة:", "LabelMinBackdropDownloadWidth": "أقل جودة للخلفية المنزلة:", - "LabelMinResumeDuration": "الفترة الدنيا للمتابعة (بالثواني):", - "LabelMinResumeDurationHelp": "العناوين الأقصر من هذا الوقت لن يتاح لها خاصية الاستئناف", + "LabelMinResumeDuration": "الفترة الدنيا للمتابعة:", + "LabelMinResumeDurationHelp": "اقل مدة فديو بالثواني سيقوم بحفظ مكان تشغيله و اعاده التشغيل منه.", "LabelMinResumePercentage": "النسبة الدنيا للمتابعة:", - "LabelMinResumePercentageHelp": "العناوين ستعتبر غير مشغلة إذا أوقفت قبل هذا الوقت", + "LabelMinResumePercentageHelp": "العناوين ستعتبر غير مشغلة إذا أوقفت قبل هذا الوقت.", "LabelMinScreenshotDownloadWidth": "أقل جودة للصور الملتقطة المنزلة:", "LabelModelDescription": "وصف الموديل", "LabelModelName": "اسم الموديل", "LabelModelNumber": "رقم الموديل", - "LabelModelUrl": "رابط url للموديل", + "LabelModelUrl": "رابط عنوان رابط URL للموديل", "LabelMonitorUsers": "راقب الأنشطة من:", "LabelMovieCategories": "تصنيفات الأفلام:", "LabelMoviePrefix": "بادئة الأفلام:", - "LabelMoviePrefixHelp": "إن كان هناك بادئة لعناوين الأفلام، فأدخلها هنا لكي يتمكن أمبي من أن يتعامل معها بالطريقة الصحيحة.", - "LabelMovieRecordingPath": "مسار تسجيل الأفلام (خيارية):", + "LabelMoviePrefixHelp": "إن كان هناك بادئة لعناوين الأفلام، فأدخلها هنا لكي يتمكن الخادم من أن يتعامل معها بالطريقة الصحيحة.", + "LabelMovieRecordingPath": "مسار تسجيل الأفلام:", "LabelMusicStreamingTranscodingBitrate": "معدل البت للتشفير البيني الموسيقي", - "LabelMusicStreamingTranscodingBitrateHelp": "تحديد الحد الأقصى لمعدل البت وقت البث التدفقي الموسيقي", + "LabelMusicStreamingTranscodingBitrateHelp": "تحديد الحد الأقصى لمعدل البت وقت البث التدفقي الموسيقي.", "LabelName": "الاسم:", "LabelNewName": "الاسم الجديد:", "LabelNewPassword": "كلمة السر الجديدة:", @@ -385,8 +385,8 @@ "LabelNotificationEnabled": "تفعيل هذه الإشعارات", "LabelNumberOfGuideDays": "عدد أيام بيانات الدليل للإنزال:", "LabelNumberOfGuideDaysHelp": "إنزال أيام أكثر من بيانات الدليل ستوفر أمكانية جدولة أيام أبعد وإظهار قوائم أطول للبرامج، لكنها ستأخذ وقتاً أطول للإنزال. االخيار الآلي سوف يتخيّر بناء على عدد القنوات المتاحة.", - "LabelOptionalNetworkPath": "(خياري) مجلدة مشاركة الشبكة:", - "LabelOptionalNetworkPathHelp": "إن كان هذا المجلد مشاركاً على شبكتك فإن تزويد مسار الشبكة سيسمح لتطبيقات أمبي على الأجهزة الأخرى بالوصول إلى ملفات الوسائط مباشرة.", + "LabelOptionalNetworkPath": "مجلد الشبكة المُشارك:", + "LabelOptionalNetworkPathHelp": "إن كان هذا المجلد مشاركاً على شبكتك فإن تزويد مسار الشبكة سيسمح للتطبيقات على الأجهزة الأخرى بالوصول إلى ملفات الوسائط مباشرة. كمثال، {0} او {1}.", "LabelPassword": "كلمة السر:", "LabelPasswordConfirm": "تأكيد كلمة السر:", "LabelPasswordRecoveryPinCode": "الرمز الشخصي:", @@ -405,15 +405,15 @@ "LabelProtocol": "البروتوكول:", "LabelProtocolInfo": "معلومات البروتوكول:", "LabelProtocolInfoHelp": "القيمة التي ستستخدم عند الرد على طلب GetProtocolInfo من الجهاز.", - "LabelPublicHttpPort": "رقم منفذ http العالمي:", - "LabelPublicHttpPortHelp": "رقم المنفذ العالمي الذي يجب أن يوافق منفذ http المحلي.", - "LabelPublicHttpsPort": "رقم منفذ https العالمي:", - "LabelPublicHttpsPortHelp": "رقم المنفذ العالمي الذي يجب أن يوافق منفذ https المحلي.", + "LabelPublicHttpPort": "رقم منفذ HTTP العام:", + "LabelPublicHttpPortHelp": "رقم المنفذ العام الذي يجب أن يوافق منفذ HTTP المحلي.", + "LabelPublicHttpsPort": "رقم منفذ HTTPS العام:", + "LabelPublicHttpsPortHelp": "رقم المنفذ العام الذي يجب أن يوافق منفذ HTTPS المحلي.", "LabelRecordingPath": "المسار الافتراضي للمقاطع المسجلة:", "LabelRecordingPathHelp": "حدد موقع افتراضي لحفظ المقاطع المسجلة، لو تركت هذه الخانة فارغة، فسيستعمل مجلد بيانات البرنامج.", "LabelReleaseDate": "تاريخ الإصدار", "LabelRemoteClientBitrateLimit": "حدد معدل البت للتشغيل التدفقي عبر الإنترنت (Mbps)", - "LabelRuntimeMinutes": "مدة التشغيل (بالدقائق):", + "LabelRuntimeMinutes": "مدة التشغيل:", "LabelSaveLocalMetadata": "حفظ الأعمال الفنية وواصفات البيانات فى مجلدات الوسائط", "LabelSaveLocalMetadataHelp": "حقظ الأعمال الفنية وواصفات البيانات مباشرة فى مجلدات الوسائط سيسهل عليك الوصول وعمل التعديلاات عليها.", "LabelScheduledTaskLastRan": "آخر تشغيل {0}، وقد استغرق {1}.", @@ -422,7 +422,7 @@ "LabelSelectVersionToInstall": "إختر الإصدار للتثبيت", "LabelSendNotificationToUsers": "أرسل الإشعارات إلى:", "LabelSerialNumber": "الرقم التسلسلي", - "LabelSeriesRecordingPath": "مسار تسجيل المسلسلات (خيارية):", + "LabelSeriesRecordingPath": "مسار تسجيل المسلسلات:", "LabelServerHost": "المضيف:", "LabelServerHostHelp": "192.168.1.100:8096 أو https://myserver.com", "LabelSkipIfAudioTrackPresent": "تخطّىإن كان المقطع الصوتي الافتراضي يتوافق مع اللغة المنزلة", @@ -729,7 +729,7 @@ "XmlTvSportsCategoriesHelp": "البرامج من هذه التصنيفات ستعرض كبرامج رياضية. إفصل الإدخالات المتعددة برمز \"|\".", "Yesterday": "البارحة", "ConfirmDeleteImage": "حذف الصورة ؟", - "ConfigureDateAdded": "قم بتكوين كيفية تحديد \"تاريخ الاضافة\" في لوحة تحكم سيرفر Jellyfin ضمن اعدادات المكتبة", + "ConfigureDateAdded": "قم بتكوين كيفية تحديد \"تاريخ الاضافة\" في لوحة التحكم ضمن اعدادات المكتبة", "Composer": "الحان", "CommunityRating": "تقييم المجتمع", "ColorTransfer": "نقل اللون", @@ -855,7 +855,7 @@ "DateAdded": "تاريخ الاضافة", "CriticRating": "تقييم النقاد", "ResumeAt": "اكمل من {0}", - "AskAdminToCreateLibrary": "أطلب من الأدمن إنشاء مكتبة.", + "AskAdminToCreateLibrary": "أطلب من المدير إنشاء مكتبة.", "Artist": "الفنان", "AllowFfmpegThrottling": "إبطاء الترميزات", "AlbumArtist": "المؤدي", @@ -872,16 +872,16 @@ "Desktop": "سطح المكتب", "Descending": "تنازلي", "Depressed": "منخفض", - "DeinterlaceMethodHelp": "حدد طريقة فك التشابك لاستخدامها عند تحويل محتوى متشابك.", + "DeinterlaceMethodHelp": "حدد طريقة فك التشابك لاستخدامها عند تحويل محتوى متشابك. اذا كان فك التشابك عن طريق العتاد الصلب فعال سيتم استخدامه بدل هذا الاعداد.", "DefaultSubtitlesHelp": "يتم تحميل الترجمات استنادًا إلى العلامات الافتراضية والقسرية في البيانات الوصفية المضمنة. سيتم اعتبار تفضيلات اللغة عند توفر خيارات متعددة.", "DefaultMetadataLangaugeDescription": "هذه هي إعداداتك الافتراضية ويمكن تخصيصها على أساس كل مكتبة.", "Default": "افتراضي", "CopyStreamURL": "نسخ عنوان الرابط", "Continuing": "مستمر", - "CopyStreamURLSuccess": "URL copied successfully.", + "CopyStreamURLSuccess": "تم نسخ عنوان الرابط بنجاح.", "Connect": "اتصال", "ConfirmEndPlayerSession": "هل تريد اطفاء النظام؟", - "ColorPrimaries": "الألوان", + "ColorPrimaries": "الألوان الرئيسية", "ClientSettings": "إعدادات التطبيق", "ButtonTogglePlaylist": "قائمة التشغيل", "BoxSet": "طقم", @@ -931,7 +931,7 @@ "Features": "الميزات", "Favorite": "المفضلة", "Extras": "مواسم إضافية", - "ErrorDeletingItem": "حدث خطأ في حذف العنصر من سيرفر Jellyfin. يرجى التحقق من أن سيرفر Jellyfin لديه حق الوصول للكتابة إلى مجلد الوسائط وحاول مرة أخرى.", + "ErrorDeletingItem": "حدث خطأ في حذف العنصر من Jellyfin. يرجى التحقق من أن Jellyfin لديه حق الوصول للكتابة إلى مجلد الوسائط وحاول مرة أخرى.", "Episode": "حلقة", "EnableThemeVideosHelp": "قم بتشغيل الفيديوهات الرئيسية في الخلفية أثناء تصفح المكتبة.", "EnableThemeSongsHelp": "قم بتشغيل اللحن الرئيسي في الخلفية أثناء تصفح المكتبة.", @@ -1001,5 +1001,26 @@ "EnableDetailsBannerHelp": "اظهر صوره اللافته اعلى عنصر تفاصيل الصفحة.", "EnableDetailsBanner": "لافتة التفاصيل", "EnableDecodingColorDepth10Vp9": "تمكين ترميز ال10 بت عبر العتاد الصلب من اجل VP9", - "EnableDecodingColorDepth10Hevc": "تمكين ترميز ال10 بت عبر العتاد الصلب من اجل HEVC" + "EnableDecodingColorDepth10Hevc": "تمكين ترميز ال10 بت عبر العتاد الصلب من اجل HEVC", + "LabelFont": "خط:", + "LabelFolder": "مجلد:", + "LabelIconMaxResHelp": "اعلى دقه للايقونات المعروضة من خلال خاصيه upnp:icon.", + "LabelHomeScreenSectionValue": "الشاشة الرئيسية جزء {0}:", + "LabelHomeNetworkQuality": "جودة الشبكة المنزلية:", + "LabelBaseUrlHelp": "اضافه مجلد فرعي مخصص لعنوان الخادم. كمثال http://example.com/<baseurl>", + "LabelBaseUrl": "عنوان الرابط الاساسي:", + "LabelEnableHttpsHelp": "استمع لمنفذ HTTPS المعد. يجب توفير شهادة معتمدة لتعمل الخصية.", + "LabelEnableHttps": "تفعيل HTTPS", + "LabelEnableHardwareDecodingFor": "تفعيل فك الترميز عن طريق العتاد الصلب ل:", + "LabelCurrentStatus": "الحاله الحالية:", + "LabelAlbumArtMaxResHelp": "اقصي مستوي دقة لغطاء الالبوم المكشوف من قبل خاصية upnp:albumArtURI .", + "KnownProxiesHelp": "قائمه من عناوين الشبكه المفصولين بفصله للوكلاء المعرفين المستخدمين للاتصال بحاله Jellyfin. هذا الامر مطلوب لاستخدام رؤس صفحات X-Forwarded-For صحيح. يتطلب اعادة التشغيل بعد الحفظ.", + "Image": "صورة", + "Other": "اخري", + "EnableQuickConnect": "تفعيل الاتصال السريع على هذا الخادم", + "EnableAutoCast": "تعيين كافتراضي", + "Data": "بيانات", + "ButtonUseQuickConnect": "استخدم الاتصال السريع", + "ButtonActivate": "تفعيل", + "Authorize": "تصريح" } From d32ebe2043bbff0a0d835e5ae60208278ff3f6aa Mon Sep 17 00:00:00 2001 From: reikuzan Date: Tue, 13 Oct 2020 04:24:29 +0000 Subject: [PATCH 288/365] Translated using Weblate (Indonesian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/id/ --- src/strings/id.json | 158 ++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 154 insertions(+), 4 deletions(-) diff --git a/src/strings/id.json b/src/strings/id.json index d6a2ef23bd..b6825f973c 100644 --- a/src/strings/id.json +++ b/src/strings/id.json @@ -13,7 +13,7 @@ "LabelYoureDone": "Kamu sudah selesai!", "MessageNothingHere": "Tidak ada disini.", "MessagePleaseEnsureInternetMetadata": "Pastikan unduh metadata dari internet diaktifkan.", - "MoreUsersCanBeAddedLater": "Pengguna lainnya dapat ditambahkan di Dashboard.", + "MoreUsersCanBeAddedLater": "Pengguna lain dapat ditambahkan Nanti di Dashboard.", "OptionEnableAccessFromAllDevices": "Aktifkan akses dari semua perangkat", "OptionEnableAccessToAllChannels": "Aktifkan akses ke semua channel", "OptionEnableAccessToAllLibraries": "Aktifkan akses ke semua pustaka", @@ -804,8 +804,8 @@ "LabelSkipIfGraphicalSubsPresent": "Lewati jika video sudah berisi subtitel tersemat", "LabelSkipIfAudioTrackPresentHelp": "Hapus centang ini untuk memastikan semua video memiliki subtitle, apa pun bahasa audionya.", "LabelSkipIfAudioTrackPresent": "Lewati jika trek audio default cocok dengan bahasa unduhan", - "LabelSkipForwardLength": "", - "LabelSkipBackLength": "", + "LabelSkipForwardLength": "Panjang Skip Maju:", + "LabelSkipBackLength": "Panjang Skip Mundur:", "LabelSize": "Ukuran :", "LabelSimultaneousConnectionLimit": "Batas aliran stream :", "LabelSerialNumber": "Nomor seri", @@ -867,5 +867,155 @@ "LabelStartWhenPossible": "Mulailah jika memungkinkan :", "LabelSportsCategories": "Kategori olahraga :", "LabelSpecialSeasonsDisplayName": "Nama tampilan musim spesial :", - "LabelSource": "Sumber :" + "LabelSource": "Sumber :", + "LabelUsername": "Nama Akun:", + "LabelUserMaxActiveSessions": "Jumlah Maksimal Pengguna yang Bersamaan:", + "OptionAllowMediaPlayback": "Ijinkan Mainkan Media", + "OptionAllowLinkSharing": "Ijinkan Sharing media sok sial", + "OptionAllowContentDownloading": "Ijinkan Download Media dan syncing", + "OptionAllowBrowsingLiveTv": "Ijinkan akses Live TV", + "OptionAllowAudioPlaybackTranscoding": "Ijikan main Audio yang perlu transkoding", + "OptionAllUsers": "Semua User", + "OptionAdminUsers": "Administratur", + "Option3D": "3D", + "OnlyImageFormats": "Format Gambar saja(VOBSUB, PGS, SUB)", + "OnlyForcedSubtitles": "Hanya Paksakan", + "OneChannel": "Satu Channel", + "Off": "Matikan", + "NumLocationsValue": "{0} folder", + "Normal": "Biasa", + "None": "Tidak ada", + "NoSubtitleSearchResultsFound": "Tidak ada hasil.", + "MessageNoPluginConfiguration": "Plugin tidak memiliki pemgaturan.", + "MessageNoNextUpItems": "Tidak ditemukan. Nonton Film Sana!", + "No": "Tydak", + "NextTrack": "Skip Lanjoot", + "Next": "Lanjoot", + "News": "Berita", + "NewEpisodesOnly": "Episode baru saja", + "NewEpisodes": "Episode baru", + "NewCollectionNameExample": "Contoh: Koleksi Star Wars", + "NewCollection": "Koleksi Baru", + "Never": "Tidak Pernah", + "Name": "Nama", + "MySubtitles": "Subtitle Kita", + "Mute": "Bisukan", + "MusicVideos": "Musik Video", + "MusicVideo": "Video Musik", + "MusicArtist": "Artis Musik", + "MusicAlbum": "Album Musik", + "Movie": "Film", + "MoveRight": "Kekanan", + "MoveLeft": "Kekiri", + "MoreMediaInfo": "Info Media", + "MoreFromValue": "Lebih Dari {0}", + "Monday": "Senin", + "Mobile": "Mobilee", + "MinutesBefore": "Menit Sebelum", + "MinutesAfter": "Menit Setelah", + "MetadataManager": "Manajer Metadata", + "Metadata": "Metadata", + "MessageSyncPlayErrorMedia": "Gagal Mengaktifkan SyncPlay! Media Error cok.", + "MessageSyncPlayErrorMissingSession": "SyncPlay gagal! Sesi Hilang njir...", + "MessageSyncPlayErrorNoActivePlayer": "SyncPlay dimatikan. Tidak ada pemutar aktif.", + "MessageSyncPlayErrorAccessingGroups": "Muncul Error ketika mengakses list grup.", + "MessageSyncPlayLibraryAccessDenied": "Akses konten ini Dibatasi cok.", + "MessageSyncPlayJoinGroupDenied": "Ijin diperlukan untuk menggunakan SyncPlay.", + "MessageSyncPlayCreateGroupDenied": "ijin diperlukan untuk membuat grup.", + "MessageSyncPlayGroupDoesNotExist": "Gagal bergabung dengan grup karena tidak ada njing!.", + "MessageSyncPlayPlaybackPermissionRequired": "Ijin Playback diperlukan woi.", + "MessageSyncPlayNoGroupsAvailable": "Tidak ada grup, Mainkan susuwatu dahulu.", + "MessageSyncPlayGroupWait": "{0} Sedang buffering…", + "MessageSyncPlayUserLeft": "{0} Meninggalkan grup.", + "MessageSyncPlayUserJoined": "{0} Bergabung Dalam grup.", + "MessageSyncPlayDisabled": "SyncPlay Dimatikan.", + "MessageSyncPlayEnabled": "SyncPlay Diaktifkan.", + "MessageYouHaveVersionInstalled": "Anda punya Versi {0} Yang terinstall.", + "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Lokasi media ini akan dihapus:", + "MessageReenableUser": "Lihat dibawah untuk mengaktifkan kembali", + "MessagePleaseWait": "Mohon Tunggu Beberapa Menit.", + "MessageNoPluginsInstalled": "Anda Tidak menginstal plugin.", + "MessageNoGenresAvailable": "Aktifkan Metadata Providee untuk menarik Genre dari internyet.", + "MessageNoCollectionsAvailable": "Koleksi mengizinkan anda menikmati grup pribadi film, seri, dan album. Klik Tombol + untuk membuat koleksi.", + "MessageAddRepository": "Jika Ingin Menambah Repositori, klik tombol di dekat header dan isi semua data yang diminta.", + "LabelRepositoryName": "Nama Repositori", + "LabelRepositoryUrlHelp": "Lokasi manifest repositori yang ingin anda masukan.", + "LabelRepositoryUrl": "URL Repositori", + "HeaderNewRepository": "Repositori Baru", + "MessageNoRepositories": "Repositori Tidak ada.", + "MessageNoAvailablePlugins": "Plugin Tidak tersedia.", + "MessageLeaveEmptyToInherit": "Kosongkan untuk inherit pengaturan dari item diatasnya atau nilai setting global default.", + "MessageItemsAdded": "Item Ditambahkan.", + "MessageItemSaved": "Item Tersimpan.", + "MessageInvalidUser": "Username atau passwotd tidak valid. Coba lagi mblo.", + "MessageInvalidForgotPasswordPin": "Pin Kode tidak valid atau Ekspired. Coba Lagi mblo.", + "MessageImageTypeNotSelected": "Pilih Tipe Gambar dalam menu drop-down.", + "MessageImageFileTypeAllowed": "Hanya file JPEG dan PNG yang didukung.", + "MessageForgotPasswordInNetworkRequired": "Coba lagi dalam jaringan lokal untuk memulai proses reset password.", + "MessageFileReadError": "Error ketika membaca media. Coba lagi mblo.", + "MessageEnablingOptionLongerScans": "Mengaktifkan Pilihan ini berakibat scanning media lebih lama.", + "MessageDownloadQueued": "Download Dijadwalkan.", + "MessageDirectoryPickerLinuxInstruction": "Untuk Linux arch, CentOS, Debian, Fedora, openSUSE, atau Ubunyu, Anda perlu Mengizinkan user jellyfin membaca lokasi Folder penyimpanan media.", + "MessageDirectoryPickerBSDInstruction": "Untuk BSD, Mungkin perlu mengatur Storage dalam FreeNAS Jail Anda agar JellyFin bisa mengakses media tersebut.", + "MessageDeleteTaskTrigger": "Yakin Menghapus Task Trigger Ini?", + "MessageCreateAccountAt": "Buat Akun Di {0}", + "MessageContactAdminToResetPassword": "Hubungi Admin Untuk Mereset password.", + "MessageConfirmRestart": "Yakin Ingin Merestart Jellyfin?", + "MessageConfirmRemoveMediaLocation": "Yakin Menghapus lokasi ini?", + "MessageConfirmRecordingCancellation": "Batalkan Rekaman?", + "MessageConfirmProfileDeletion": "Yakin Menghapus Profil ini?", + "MessageConfirmDeleteTunerDevice": "Yakin Ingin Menghapus perangkat ini?", + "MessageConfirmDeleteGuideProvider": "Yakin Ingin menghapus guide provider ini?", + "MessageConfirmAppExit": "Anda Mau Keluar?", + "MessageAreYouSureYouWishToRemoveMediaFolder": "Yakin Ingin Menghapus folder media ini?", + "MessageAreYouSureDeleteSubtitles": "Yakin Ingin Menghapus Subtitle Ini?", + "MessageAlreadyInstalled": "Versi Ini Telah Terinstall.", + "MediaIsBeingConverted": "File Media dikonversi ke format yang didukung perangkat.", + "MediaInfoTimestamp": "StempelWaktu", + "MediaInfoSize": "Ukuran", + "MediaInfoSampleRate": "Nilai Sampel", + "MediaInfoResolution": "Resolusi", + "MediaInfoProfile": "Profil", + "MediaInfoPixelFormat": "Format Piksel", + "MediaInfoLanguage": "Bahasaa", + "MediaInfoFramerate": "Framerating", + "MediaInfoForced": "Paksa", + "MediaInfoExternal": "Eksternal", + "MediaInfoDefault": "Pengaturan Awal", + "MediaInfoContainer": "Kontainer", + "MediaInfoCodecTag": "Tag Kodek", + "MediaInfoCodec": "Kodek", + "MediaInfoChannels": "Channel", + "MediaInfoBitrate": "Bitrate", + "MediaInfoBitDepth": "Kedalaman Bit", + "MediaInfoAspectRatio": "Rasio Aspek", + "MaxParentalRatingHelp": "Konten Dengan rating lebih tinggi akan disembunyikan dari pengguna ini.", + "MarkUnplayed": "Tandai Belum dimainkan", + "MarkPlayed": "Tandai Telah dimainkan", + "MapChannels": "Simpan Channel", + "ManageRecording": "Atur Rekaman", + "ManageLibrary": "Atur Librari", + "Logo": "Logo", + "LiveTV": "SiaranTV Langsung", + "LiveBroadcasts": "Siaran Langsung", + "Live": "Langsung", + "List": "Listing", + "LibraryAccessHelp": "Pilih Librari untuk dibagikan dengan user ini. Admin Bisa mengedit semua folder menggunakan manager metadata.", + "LeaveBlankToNotSetAPassword": "Kosongkan Jika ingin setting tanpa Password cok.", + "LearnHowYouCanContribute": "Pelajari Cara Berkontribusi.", + "LatestFromLibrary": "Terbaru {0}", + "Large": "Besar", + "LabelZipCode": "Kode Pos:", + "LabelYear": "Tahun:", + "LabelWeb": "Website:", + "LabelVideoResolution": "Resolusi Video:", + "LabelVideoCodec": "Codec Video:", + "LabelVideoBitrate": "Bitrate Video:", + "DashboardArchitecture": "Arsitektur: {0}", + "DashboardOperatingSystem": "Sistem Operasi: {0}", + "DashboardVersionNumber": "Versi: {0}", + "LabelVersionInstalled": "{0} Terinstall", + "LabelVersion": "Versi:", + "LabelValue": "Nilai:", + "LabelVaapiDeviceHelp": "Merupakan titik render untuk percepatan perangkat." } From 0c58a2bd4b384daaceacc6dc09976786095f91ed Mon Sep 17 00:00:00 2001 From: Franco Castillo Date: Tue, 13 Oct 2020 22:07:23 +0000 Subject: [PATCH 289/365] Translated using Weblate (Spanish (Argentina)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/es_AR/ --- src/strings/es-ar.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/strings/es-ar.json b/src/strings/es-ar.json index e29c4b8f7c..b9ee50c1bd 100644 --- a/src/strings/es-ar.json +++ b/src/strings/es-ar.json @@ -1417,5 +1417,8 @@ "EnableAutoCast": "Establecer por defecto", "ButtonUseQuickConnect": "Utilizar conexión rápida", "ButtonActivate": "Activar", - "Authorize": "Autorizar" + "Authorize": "Autorizar", + "OptionMaxActiveSessionsHelp": "Un valor de 0 deshabilita la función.", + "OptionMaxActiveSessions": "Establece el número máximo de sesiones de usuario simultáneas.", + "LabelUserMaxActiveSessions": "Número máximo de sesiones de usuario simultáneas:" } From 4bd4134944f366a35cd401b0b9f11c4b9fa8c016 Mon Sep 17 00:00:00 2001 From: Gubb Jonas Date: Wed, 14 Oct 2020 17:16:01 +0000 Subject: [PATCH 290/365] Translated using Weblate (Swedish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/sv/ --- src/strings/sv.json | 50 ++++++++++++++++++++++++++++----------------- 1 file changed, 31 insertions(+), 19 deletions(-) diff --git a/src/strings/sv.json b/src/strings/sv.json index 20dc471b01..4f259ff8f3 100644 --- a/src/strings/sv.json +++ b/src/strings/sv.json @@ -323,7 +323,7 @@ "HeaderSecondsValue": "{0} sekunder", "HeaderSelectCertificatePath": "Välj sökväg för certifikat", "HeaderSelectMetadataPath": "Välj plats för metadatalagring", - "HeaderSelectMetadataPathHelp": "Bläddra fram till eller ange plats för lagring av metadata. Katalogen måste vara tillgänglig för skrivning.", + "HeaderSelectMetadataPathHelp": "Bläddra fram, eller ange, sökväg för lagring av metadata. Katalogen måste vara skrivningsbar.", "HeaderSelectPath": "Välj sökväg", "HeaderSelectServerCachePath": "Välj plats för serverns cache", "HeaderSelectServerCachePathHelp": "Bläddra fram till eller ange plats för serverns cache. Katalogen måste vara tillgänglig för skrivning.", @@ -421,7 +421,7 @@ "LabelCustomCertificatePath": "Sökväg för anpassat SSL-certifikat:", "LabelCustomCertificatePathHelp": "Lägg upp ditt eget SSL-certifkat i .pfx-format.", "LabelCustomCss": "Egen CSS-stil:", - "LabelCustomCssHelp": "Använd din egen CSS-stil för webbgränssnittet.", + "LabelCustomCssHelp": "Applicera din egen CSS-stil för webbgränssnittet.", "LabelCustomDeviceDisplayNameHelp": "Ange ett anpassat enhetsnamn. Lämna blankt för att använda det namn enheten själv rapporterar.", "LabelCustomRating": "Anpassad åldersgräns:", "LabelDateAdded": "Inlagd den:", @@ -460,12 +460,12 @@ "LabelEnableDlnaDebugLogging": "Aktivera DLNA felsökningsloggning", "LabelEnableDlnaDebugLoggingHelp": "Detta resulterar i mycket stora loggfiler och rekommenderas bara vid felsökning.", "LabelEnableDlnaPlayTo": "Använd DLNA spela-upp-på", - "LabelEnableDlnaPlayToHelp": "Hitta enheter på ditt nätverk och ge dig möjlighet att fjärrstyra dem.", + "LabelEnableDlnaPlayToHelp": "Upptäck enheter på ditt nätverk och erbjud möjligheten att fjärrstyra dem.", "LabelEnableDlnaServer": "Aktivera DLNA-server", "LabelEnableDlnaServerHelp": "Tillåt att UPnP-enheter på ditt nätverk kan se och spela upp innehåll.", "LabelEnableHardwareDecodingFor": "Aktivera hårdvaruomkodning för:", "LabelEnableRealtimeMonitor": "Aktivera bevakning av mappar i realtid", - "LabelEnableRealtimeMonitorHelp": "Förändringar upptäcks omedelbart (i filsystem som stödjer detta).", + "LabelEnableRealtimeMonitorHelp": "Filförändringar bearbetas omedelbart på filsystem som stödjer detta.", "LabelEnableSingleImageInDidlLimit": "Begränsa till en inbäddad bild", "LabelEnableSingleImageInDidlLimitHelp": "Visa enheter kommer inte renderas ordentligt om flera bilder bäddas in i Didl.", "LabelEndDate": "Slutdatum:", @@ -482,7 +482,7 @@ "LabelFriendlyName": "Visningsnamn:", "LabelServerNameHelp": "Det här namnet används för att identifiera servern. Ifall det lämnas tomt används serverns värdnamn.", "LabelGroupMoviesIntoCollections": "Gruppera filmer i samlingsboxar", - "LabelGroupMoviesIntoCollectionsHelp": "I filmlistor visas filmer som ingår i en samlingsbox som ett enda objekt.", + "LabelGroupMoviesIntoCollectionsHelp": "I filmlistor visas filmer som ingår i en samling som ett enda objekt.", "LabelH264Crf": "H264-omkodning CRF:", "LabelEncoderPreset": "H264-omkodningsförval:", "LabelHardwareAccelerationType": "Hårdvaruacceleration:", @@ -559,7 +559,7 @@ "LabelMoviePrefixHelp": "Om ett prefix har lagts till filmertitlarna, skriv in det här så att servern kan hantera dessa korrekt.", "LabelMovieRecordingPath": "Inspelningssökväg för film:", "LabelMusicStreamingTranscodingBitrate": "Bithastighet vid omkodning av musik:", - "LabelMusicStreamingTranscodingBitrateHelp": "Ange högsta bithastighet vid strömning av musik.", + "LabelMusicStreamingTranscodingBitrateHelp": "Ange maximal bitrate vid strömning av musik.", "LabelName": "Namn:", "LabelNewName": "Nytt namn:", "LabelNewPassword": "Nytt lösenord:", @@ -679,7 +679,7 @@ "LabelYoureDone": "Klart!", "LabelZipCode": "Postnummer:", "LabelffmpegPath": "FFmpeg-sökväg:", - "LabelffmpegPathHelp": "Sökvägen till FFmpeg-filen, eller mappen som innehåller FFmpeg.", + "LabelffmpegPathHelp": "Sökväg till ffmpeg-applikationen, eller mappen som innehåller ffmpeg.", "Large": "Stor", "LatestFromLibrary": "Senaste {0}", "LearnHowYouCanContribute": "Se hur du kan hjälpa till.", @@ -812,7 +812,7 @@ "OptionAllowVideoPlaybackRemuxing": "Tillåt videouppspelning som kräver konvertering utan omkodning", "OptionAllowVideoPlaybackTranscoding": "Tillåt videouppspelning som kräver omkodning", "OptionAutomaticallyGroupSeries": "Slå ihop serier automatiskt som ligger utspritt under flera kataloger", - "OptionAutomaticallyGroupSeriesHelp": "Serier som är spridda över flera mappar i det här biblioteket kommer automatiskt att slås ihop till en enda serie.", + "OptionAutomaticallyGroupSeriesHelp": "Serier som är spridda över flera mappar i detta biblioteket kommer automatiskt att slås ihop till en enda serie.", "OptionBluray": "Blu-ray", "OptionCommunityRating": "Allmänhetens betyg", "OptionCriticRating": "Kritikerbetyg", @@ -823,12 +823,12 @@ "OptionDateAddedImportTime": "Använd datum för inläsning i biblioteket", "OptionDatePlayed": "Senast visad", "OptionDisableUser": "Spärra den här användaren", - "OptionDisableUserHelp": "Spärrade användare tillåts ej kontakta servern. Eventuella pågående anslutningar avbryts omedelbart.", + "OptionDisableUserHelp": "Servern kommer ej tillåta några anslutningar från denna användare. Aktiva anslutningar avbryts omedelbart.", "OptionDislikes": "Ogillar", "OptionDisplayFolderView": "Visa en mappvy för att visa enkla mediamappar", "OptionDisplayFolderViewHelp": "Visa mappar jämsides med dina andra media bibliotek. Detta kan vara bra om du vill ha en enkel mapp visning.", "OptionDownloadImagesInAdvance": "Hämta bilder i förväg", - "OptionDownloadImagesInAdvanceHelp": "Som standard hämtas de flesta bilder endast när en Jellyfin-app begär det. Aktivera den här inställningen för att hämta alla bilder i förväg när nya filer importeras till biblioteket. Detta kan innebära längre bibliotekssökningar.", + "OptionDownloadImagesInAdvanceHelp": "Som standard hämtas de flesta bilder endast när en klient begär det. Aktivera den här inställningen för att hämta alla bilder i förväg, när ny media importeras. Detta kan innebära avsevärt längre bibliotekssökningar.", "OptionDvd": "DVD", "OptionEmbedSubtitles": "Infoga i container", "OptionEnableAccessFromAllDevices": "Aktivera åtkomst från alla enheter", @@ -850,7 +850,7 @@ "OptionHideUserFromLoginHelp": "Användbart för privata konton eller gömda administratörskonton. Användaren beöver logga in manuellt genom att skriva sitt användarnamn och lösenord.", "OptionHlsSegmentedSubtitles": "HLS-segmenterade undertexter", "OptionIgnoreTranscodeByteRangeRequests": "Ignorera begäran om \"byte range\" vid omkodning", - "OptionIgnoreTranscodeByteRangeRequestsHelp": "Om aktiverad kommer begäran att uppfyllas, men \"byte range\"-rubriken ignoreras.", + "OptionIgnoreTranscodeByteRangeRequestsHelp": "Dessa anrop kommer att hanteras, men \"byte range\"-headern ignoreras.", "OptionImdbRating": "Betyg på IMDB", "OptionLikes": "Gillar", "OptionMissingEpisode": "Saknade avsnitt", @@ -858,9 +858,9 @@ "OptionOnInterval": "Med visst intervall", "OptionParentalRating": "Föräldraklassning", "OptionPlainStorageFolders": "Visa alla mappar som vanliga lagringsmappar", - "OptionPlainStorageFoldersHelp": "Om aktiverad representeras alla mappar i DIDL som \"object.container.storageFolder\" i stället för en mera specifik typ, t ex \"object.container.person.musicArtist\".", + "OptionPlainStorageFoldersHelp": "Alla mappar representeras i DIDL som \"object.container.storageFolder\" i stället för en mer specifik typ, t.ex. \"object.container.person.musicArtist\".", "OptionPlainVideoItems": "Visa alla videor som objekt utan specifikt format", - "OptionPlainVideoItemsHelp": "Om aktiverad representeras alla videor i DIDL som \"object.item.videoItem\" i stället för en mera specifik typ, t ex \"object.item.videoItem.movie\".", + "OptionPlainVideoItemsHelp": "Alla videor representeras i DIDL som \"object.item.videoItem\" i stället för en mer specifik typ, t ex \"object.item.videoItem.movie\".", "OptionPlayCount": "Antal visningar", "OptionPremiereDate": "Premiärdatum", "OptionProtocolHls": "Live-strömning via Http", @@ -908,9 +908,9 @@ "PleaseAddAtLeastOneFolder": "Lägg till minst en katalog till det här biblioteket genom att klicka på Lägg till-knappen.", "PleaseConfirmPluginInstallation": "Klicka på OK för att bekräfta att du har läst ovanstående och önskar fortsätta med installationen av tillägget.", "PleaseEnterNameOrId": "Ange ett namn eller externt id.", - "PleaseRestartServerName": "Vänligen starta om Jellyfin Server - {0}.", + "PleaseRestartServerName": "Vänligen starta om Jellyfin på {0}.", "PleaseSelectTwoItems": "Var god välj minst två objekt.", - "MessagePluginInstalled": "Tillägget har installerats. Jellyfin Server behöver startas om för att verkställa ändringarna.", + "MessagePluginInstalled": "Tillägget har installerats. Servern behöver startas om för att verkställa ändringarna.", "PreferEmbeddedTitlesOverFileNames": "Föredra inbäddade titlar över filnamnen", "PreferEmbeddedTitlesOverFileNamesHelp": "Det här bestämmer visningstiteln när ingen internet metadata eller lokal metadata finns att tillgå.", "Premiere": "Premiär", @@ -1186,8 +1186,8 @@ "Rewind": "Spola tillbaka", "MessageChangeRecordingPath": "Ändring av din inspelnings mapp kommer inte migrera existerande inspelningar från gamla platsen till den nya. Du behöver flytta dom manuellt om så önskas.", "PlaybackData": "Uppspelnings Data", - "PasswordResetProviderHelp": "Välj en Lösenords Återställnings Provider att använda när denna användare begär att återställa lösenordet", - "OptionSaveMetadataAsHiddenHelp": "Ändring av detta kommer att tilldelas till ny metadata som sparas. Existerande metadata filer kommer att uppdateras nästa gång dom sparas av Jellyfin Server.", + "PasswordResetProviderHelp": "Välj en tjänst för återställning av lösenord, som används när denna användare begär en lösenordsåterställning.", + "OptionSaveMetadataAsHiddenHelp": "Denna ändring påverkar ny metadata som sparas framledes. Existerande metadata-filer kommer att uppdateras nästa gång de sparas av servern.", "OptionResElement": "återskapa element", "OptionRegex": "Regex", "OptionRandom": "Slumpmässig", @@ -1208,7 +1208,7 @@ "MusicArtist": "Musik Artist", "MusicAlbum": "Musik Album", "MoreMediaInfo": "Medieinformation", - "MetadataSettingChangeHelp": "Ändring av metadata inställningar kommer att ske på nytt innehåll som är tillagt framledes. För att uppdatera existerat innehåll, öppna detalj skärmen och tryck på uppdatera knappen, eller utför bulk uppdateringar med metadata hanteraren.", + "MetadataSettingChangeHelp": "Ändring av metadata-inställningar endast innehåll som är tillagt framledes. För att uppdatera existerande innehåll, öppna detaljsidan och klicka på uppdatera-knappen, eller utför bulk-uppdateringar med metadata-hanteraren.", "Metadata": "Metadata", "MessageNoServersAvailable": "Inga servrar har hittats med automatiska server sökningen.", "MessageNoCollectionsAvailable": "Samlingar tillåter dig att njuta av personlig gruppering av Filmer, Serier och Albums. Tryck på + knapen för att skapa samlingar.", @@ -1355,5 +1355,17 @@ "ButtonUseQuickConnect": "Använd Quick Connect", "ButtonActivate": "Aktivera", "Authorize": "Auktorisera", - "EnableAutoCast": "Markera som standard" + "EnableAutoCast": "Markera som standard", + "MessagePluginInstallError": "Ett fel inträffade när tillägget installerades.", + "PosterCard": "Affischkort", + "Poster": "Affisch", + "Photo": "Foto", + "OptionMaxActiveSessionsHelp": "Värdet 0 inaktiverar funktionen.", + "OptionMaxActiveSessions": "Bestämmer det maximala antalet samtidiga användarsessioner.", + "LabelUserMaxActiveSessions": "Maximalt antal samtidiga användarsessioner:", + "LabelQuickConnectCode": "Snabbanslutningskod:", + "LabelKnownProxies": "Kända proxies:", + "LabelCurrentStatus": "Nuvarande status:", + "KnownProxiesHelp": "Kommatecken-separerad lista av IP-adresser till kända proxies som används för att ansluta till din Jellyfin-instans. Detta krävs för att använda \"X-Forwarded-For\"-headers korrekt. Kräver omstart.", + "EnableQuickConnect": "Aktivera snabbanslutning på denna server" } From e210c4b4af6a50731de84fc52861ec7ecbc60c00 Mon Sep 17 00:00:00 2001 From: Gubb Jonas Date: Wed, 14 Oct 2020 19:26:51 +0000 Subject: [PATCH 291/365] Translated using Weblate (Swedish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/sv/ --- src/strings/sv.json | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/strings/sv.json b/src/strings/sv.json index 4f259ff8f3..1b46bddab5 100644 --- a/src/strings/sv.json +++ b/src/strings/sv.json @@ -1367,5 +1367,14 @@ "LabelKnownProxies": "Kända proxies:", "LabelCurrentStatus": "Nuvarande status:", "KnownProxiesHelp": "Kommatecken-separerad lista av IP-adresser till kända proxies som används för att ansluta till din Jellyfin-instans. Detta krävs för att använda \"X-Forwarded-For\"-headers korrekt. Kräver omstart.", - "EnableQuickConnect": "Aktivera snabbanslutning på denna server" + "EnableQuickConnect": "Aktivera snabbanslutning på denna server", + "QuickConnectDeactivated": "Snabbanslutning inaktiverades innan inloggningsförsöket kunde godkännas", + "QuickConnectAuthorizeFail": "Okänd snabbanslutningskod", + "QuickConnectAuthorizeSuccess": "Anrop auktoriserat", + "QuickConnectAuthorizeCode": "Ange kod {0} för att logga in", + "QuickConnectActivationSuccessful": "Aktivering lyckades", + "QuickConnect": "Snabbanslutning", + "Profile": "Profil", + "PreviousTrack": "Hoppa över till föregående", + "MessageGetInstalledPluginsError": "Ett fel inträffade när listan över installerade tillägg skulle hämtas." } From 7a8d49a239995849492ee09d060d341aec82302a Mon Sep 17 00:00:00 2001 From: wille1101 Date: Thu, 15 Oct 2020 18:06:06 +0000 Subject: [PATCH 292/365] Translated using Weblate (Swedish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/sv/ --- src/strings/sv.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings/sv.json b/src/strings/sv.json index 1b46bddab5..168a63b82e 100644 --- a/src/strings/sv.json +++ b/src/strings/sv.json @@ -934,7 +934,7 @@ "RecordingScheduled": "Inspelning schemalagd.", "Recordings": "Inspelningar", "Refresh": "Uppdatera", - "RefreshDialogHelp": "Metadata uppdateras baserat på inställningar och internettjänster som har aktiverats under Jellyfin servers kontrollpanel.", + "RefreshDialogHelp": "Metadata uppdateras baserat på inställningar och internettjänster som har aktiverats i kontrollpanelen.", "RefreshMetadata": "Uppdatera metadata", "RefreshQueued": "Uppdatering köad.", "ReleaseDate": "Releasedatum", From 735e8c22c47adfca715eed889ea4aebe9cb39e1d Mon Sep 17 00:00:00 2001 From: wille1101 Date: Thu, 15 Oct 2020 18:07:24 +0000 Subject: [PATCH 293/365] Translated using Weblate (Swedish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/sv/ --- src/strings/sv.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/strings/sv.json b/src/strings/sv.json index 168a63b82e..5b10629318 100644 --- a/src/strings/sv.json +++ b/src/strings/sv.json @@ -971,8 +971,8 @@ "SeriesYearToPresent": "{0} - nu", "ServerNameIsRestarting": "Jellyfin Server - {0} startas om.", "ServerNameIsShuttingDown": "Jellyfin Server - {0} stängs ner.", - "ServerRestartNeededAfterPluginInstall": "Jellyfin-servern behöver startas om efter ett tillägg installeras.", - "ServerUpdateNeeded": "Den här Jellyfin servern behöver uppdateras. För att ladda ner senaste versionen, gå till {0}", + "ServerRestartNeededAfterPluginInstall": "Jellyfin behöver startas om efter ett tillägg installeras.", + "ServerUpdateNeeded": "Den här servern behöver uppdateras. För att ladda ner senaste versionen, gå till {0}", "Settings": "Inställningar", "SettingsSaved": "Inställningarna sparade.", "SettingsWarning": "Ändring av dessa alternativ kan innebära instabilitet eller anslutningsproblem. Återställ dessa till standardvärdena om du upplever några problem.", From a52f8853408435dcda921b625fa068fef4a109ce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Allan=20Nordh=C3=B8y?= Date: Fri, 16 Oct 2020 04:44:32 +0000 Subject: [PATCH 294/365] =?UTF-8?q?Translated=20using=20Weblate=20(Norwegi?= =?UTF-8?q?an=20Bokm=C3=A5l)=20Translation:=20Jellyfin/Jellyfin=20Web=20Tr?= =?UTF-8?q?anslate-URL:=20https://translate.jellyfin.org/projects/jellyfin?= =?UTF-8?q?/jellyfin-web/nb=5FNO/?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/strings/nb.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/strings/nb.json b/src/strings/nb.json index 5a2ec58829..fc4c29e758 100644 --- a/src/strings/nb.json +++ b/src/strings/nb.json @@ -1417,5 +1417,8 @@ "LabelTonemappingRange": "Tonemapping-område:", "TonemappingAlgorithmHelp": "Tonekartlegging kan finjusteres. Hvis du ikke er kjent med disse alternativene, er det bare å beholde standardinnstillingen. Den anbefalte verdien er Reinhard.", "LabelTonemappingAlgorithm": "Velg algoritmen for tonekartlegging som skal brukes:", - "AllowTonemappingHelp": "Tonekartlegging kan forvandle det dynamiske området til en video fra HDR til SDR samtidig som bildedetaljer og farger opprettholdes, noe som er veldig viktig informasjon for å representere den originale scenen. Fungerer for øyeblikket bare når du omkoder videoer med innebygd HDR10- eller HLG-metadata. Hvis avspillingen ikke er jevn eller mislykkes, bør du vurdere å slå av den tilsvarende maskinvaredekoderen." + "AllowTonemappingHelp": "Tonekartlegging kan forvandle det dynamiske området til en video fra HDR til SDR samtidig som bildedetaljer og farger opprettholdes, noe som er veldig viktig informasjon for å representere den originale scenen. Fungerer for øyeblikket bare når du omkoder videoer med innebygd HDR10- eller HLG-metadata. Hvis avspillingen ikke er jevn eller mislykkes, bør du vurdere å slå av den tilsvarende maskinvaredekoderen.", + "OptionMaxActiveSessionsHelp": "En verdi på 0 skrur av denne funksjonen.", + "OptionMaxActiveSessions": "Setter maksimalt antall tilgjengelige brukerøkter.", + "LabelUserMaxActiveSessions": "Maksimalt antall samtidige brukerøkter:" } From 8f9afee17c7833e7037ca8d58a207e1c80a5ae80 Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Sat, 17 Oct 2020 07:44:41 +0000 Subject: [PATCH 295/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index 1e8cc3ee37..e5bca02d52 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -1398,7 +1398,7 @@ "TabContainers": "Định dạng", "OptionEmbedSubtitles": "Nhúng trong định dạng", "MediaInfoContainer": "Định dạng", - "Raised": "Nâng lên", + "Raised": "Nhô Lên", "EnableAutoCast": "Đặt làm mặc định", "Studios": "Studios", "Bwdif": "BWDIF", From e877e711a11c46cc715683f6007d1cc75d382e63 Mon Sep 17 00:00:00 2001 From: dkanada Date: Sun, 18 Oct 2020 01:14:26 +0900 Subject: [PATCH 296/365] update config.json --- .gitignore | 3 ++ src/config.json | 74 ++++++++++++++++++++++++------------------------- 2 files changed, 40 insertions(+), 37 deletions(-) diff --git a/.gitignore b/.gitignore index 36b843f022..98aa2d974b 100644 --- a/.gitignore +++ b/.gitignore @@ -3,6 +3,9 @@ dist web node_modules +# config +config.json + # ide .idea .vscode diff --git a/src/config.json b/src/config.json index 0f308ccc11..864e1f3656 100644 --- a/src/config.json +++ b/src/config.json @@ -1,39 +1,39 @@ { - "multiserver": false, - "themes": [ - { - "name": "Apple TV", - "id": "appletv" - }, { - "name": "Blue Radiance", - "id": "blueradiance" - }, { - "name": "Dark", - "id": "dark", - "default": true - }, { - "name": "Light", - "id": "light" - }, { - "name": "Purple Haze", - "id": "purplehaze" - }, { - "name": "WMC", - "id": "wmc" - } - ], - "plugins": [ - "plugins/playAccessValidation/plugin", - "plugins/experimentalWarnings/plugin", - "plugins/htmlAudioPlayer/plugin", - "plugins/htmlVideoPlayer/plugin", - "plugins/photoPlayer/plugin", - "plugins/comicsPlayer/plugin", - "plugins/bookPlayer/plugin", - "plugins/youtubePlayer/plugin", - "plugins/backdropScreensaver/plugin", - "plugins/logoScreensaver/plugin", - "plugins/sessionPlayer/plugin", - "plugins/chromecastPlayer/plugin" - ] + "multiserver": false, + "themes": [ + { + "name": "Apple TV", + "id": "appletv" + }, { + "name": "Blue Radiance", + "id": "blueradiance" + }, { + "name": "Dark", + "id": "dark", + "default": true + }, { + "name": "Light", + "id": "light" + }, { + "name": "Purple Haze", + "id": "purplehaze" + }, { + "name": "WMC", + "id": "wmc" + } + ], + "plugins": [ + "plugins/playAccessValidation/plugin", + "plugins/experimentalWarnings/plugin", + "plugins/htmlAudioPlayer/plugin", + "plugins/htmlVideoPlayer/plugin", + "plugins/photoPlayer/plugin", + "plugins/comicsPlayer/plugin", + "plugins/bookPlayer/plugin", + "plugins/youtubePlayer/plugin", + "plugins/backdropScreensaver/plugin", + "plugins/logoScreensaver/plugin", + "plugins/sessionPlayer/plugin", + "plugins/chromecastPlayer/plugin" + ] } From 816d4a440820216d9e6e9afef389e46853982aee Mon Sep 17 00:00:00 2001 From: Piotr Kraszewski Date: Sun, 18 Oct 2020 19:43:50 +0000 Subject: [PATCH 297/365] Translated using Weblate (Polish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/pl/ --- src/strings/pl.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/strings/pl.json b/src/strings/pl.json index ec44b42f60..d8be4f16f2 100644 --- a/src/strings/pl.json +++ b/src/strings/pl.json @@ -1375,5 +1375,8 @@ "QuickConnectActivationSuccessful": "Aktywowano pomyślnie", "LabelCurrentStatus": "Bieżący status:", "EnableAutoCast": "Ustaw jako Domyślny", - "ButtonActivate": "Aktywuj" + "ButtonActivate": "Aktywuj", + "EnableQuickConnect": "Aktywuj szybkie połączenie na tym serwerze", + "ButtonUseQuickConnect": "Użyj szybkiego połączenia", + "Authorize": "Autoryzuj" } From cc1ebeff61893be262299e49c2e7d77a769cc435 Mon Sep 17 00:00:00 2001 From: Adam Bokor Date: Mon, 19 Oct 2020 14:52:55 +0000 Subject: [PATCH 298/365] Translated using Weblate (Hungarian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/hu/ --- src/strings/hu.json | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/src/strings/hu.json b/src/strings/hu.json index 25df0b75c0..47b71223ab 100644 --- a/src/strings/hu.json +++ b/src/strings/hu.json @@ -1269,7 +1269,7 @@ "LabelLibraryPageSizeHelp": "Az oldalnként megmutatott elemek száma. Nullára állítva a lapozási funkció ki lesz kapcsolva.", "LabelLibraryPageSize": "Könyvtár oldalméret:", "LabelDeinterlaceMethod": "Deinterlacing mód:", - "DeinterlaceMethodHelp": "Válassza ki a váltottsorosság megszűntetéséhez használandó módszert a váltottsoros tartalmak transzkódolásakor.", + "DeinterlaceMethodHelp": "Válaszd ki a szétválasztási módot, amelyet a váltott soros tartalom szoftveres átkódolásához használ. Ha engedélyezed a hardveres deinterlace-t támogató hardveres gyorsítást, akkor a hardveres deinterlacer lesz használva e beállítás helyett.", "UnsupportedPlayback": "Jellyfin nem tud DRM-titkosított tartalmak dekriptálására, ettől függetlenül a lejátszással mindig megpróbálkozik. Néhány fájl emiatt teljesen fekete képernyőt ad, amely vagy a titkosítás miatt van, vagy nem olyan nem támogatott tartalmak miatt, mint az interaktív címek.", "Yadif": "YADIF", "ButtonTogglePlaylist": "Lejátszási listák", @@ -1386,5 +1386,29 @@ "QuickConnect": "Gyors csatlakozás", "LabelQuickConnectCode": "Gyors kapcsolódás kódja:", "LabelKnownProxies": "Ismert proxyk:", - "LabelCurrentStatus": "Jelenlegi állapot:" + "LabelCurrentStatus": "Jelenlegi állapot:", + "LabelTonemappingPeakHelp": "A jel / névleges / referencia csúcs felülírása ezzel az értékkel. Hasznos, ha a megjelenített metaadatokba beágyazott csúcsinformációk nem megbízhatóak, vagy ha az alacsonyabb tartománytól a magasabb tartományig terjed a hangtérkép. Az ajánlott és az alapértelmezett érték 0.", + "LabelTonemappingPeak": "Tónustérkép csúcs:", + "LabelTonemappingThresholdHelp": "A hangtérkép algoritmus paramétereit minden jelenetre finomhangolják. És egy küszöböt használnak annak felderítésére, hogy a jelenet megváltozott-e vagy sem. Ha az aktuális keret átlagos fényereje és az aktuális futási átlag közötti távolság meghaladja a küszöbértéket, akkor újra kiszámolnánk a jelenet átlagát és a csúcs fényerejét. Az ajánlott és az alapértelmezett érték 0,8 és 0,2.", + "LabelTonemappingThreshold": "Tónustérkép küszöb:", + "LabelTonemappingDesatHelp": "Alkalmazz deszaturálást olyan fénypontokra, amelyek meghaladják ezt a fényerőszintet. Minél magasabb a paraméter, annál több színinformáció marad meg. Ez a beállítás segít megakadályozni a természetellenesen kifújt színeket a szuper kiemelések érdekében, mivel (simán) fehérré válnak. Ezáltal a képek természetesebbnek érezhetik magukat, annak árán, hogy csökkentsék a tartományon kívül eső színekkel kapcsolatos információkat. Az ajánlott és az alapértelmezett érték 0 és 0,5.", + "TonemappingRangeHelp": "Válaszd ki a kimeneti színtartományt. Az Auto megegyezik a bemeneti tartományral.", + "LabelTonemappingRange": "Tónustérkép tartomány:", + "TonemappingAlgorithmHelp": "A hangtérképezés finomhangolható. Ha még nem ismered ezeket az opciókat, tartsd meg az alapértelmezett értéket. Az ajánlott érték Reinhard.", + "LabelTonemappingAlgorithm": "Válaszd ki a használni kívánt Tone mapping algoritmust:", + "AllowTonemappingHelp": "A hangtérképezés átalakíthatja a videók dinamikai tartományát a HDR-től az SDR-ig, miközben megőrzi a kép részleteit és színeit, amelyek nagyon fontos információk az eredeti jelenet ábrázolásához. Jelenleg csak beágyazott HDR10 vagy HLG metaadatokkal rendelkező videók átkódolásakor működik. Ha a lejátszás nem gördülékeny vagy sikertelen, fontold meg a megfelelő hardveres dekóder kikapcsolását.", + "EnableTonemapping": "Hangszíntérkép engedélyezése", + "LabelOpenclDeviceHelp": "Ez az OpenCL eszköz, amelyet a hangtérkép leképezéséhez használnak. A pont bal oldala a platform száma, a jobb oldala pedig a platformon található eszköz száma. Az alapértelmezett érték 0.0. Az OpenCL hardveres gyorsítási módszert tartalmazó ffmpeg alkalmazásfájl szükséges.", + "LabelOpenclDevice": "OpenCL eszköz:", + "LabelColorSpace": "Színtér:", + "LabelVideoRange": "Videótartomány:", + "MediaInfoColorTransfer": "Színátadás", + "MediaInfoColorSpace": "Színtér", + "MediaInfoVideoRange": "Videótartomány", + "UseDoubleRateDeinterlacing": "Dupla képkockasebesség deinterlace esetén", + "OptionMaxActiveSessionsHelp": "A 0 érték letiltja a funkciót.", + "OptionMaxActiveSessions": "Beállítja az egyidejű felhasználói munkamenetek maximális számát.", + "LabelUserMaxActiveSessions": "Az egyidejű felhasználói munkamenetek maximális száma:", + "LabelIconMaxResHelp": "Az upnp:icon tulajdonságon keresztül közzétett ikonok maximális felbontása.", + "LabelAlbumArtMaxResHelp": "Az albumkép maximális felbontása az upnp: albumArtURI tulajdonságon keresztül." } From ca9205a8c218af294edea529384f2be971f12983 Mon Sep 17 00:00:00 2001 From: kimpig Date: Mon, 19 Oct 2020 14:16:14 +0000 Subject: [PATCH 299/365] Translated using Weblate (Korean) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ko/ --- src/strings/ko.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/strings/ko.json b/src/strings/ko.json index b724d0b498..a2c65487d9 100644 --- a/src/strings/ko.json +++ b/src/strings/ko.json @@ -1418,5 +1418,7 @@ "RepeatOne": "반복", "RefreshDialogHelp": "메타 데이터는 대시 보드에서 활성화 된 설정 및 인터넷 서비스를 기반으로 새로 고쳐집니다.", "LabelUserMaxActiveSessions": "최대 동시 접속 사용자 세션 수:", - "EnableAutoCast": "기본값으로 설정" + "EnableAutoCast": "기본값으로 설정", + "OptionMaxActiveSessionsHelp": "값이 0이면 이 기능이 비활성화됩니다.", + "OptionMaxActiveSessions": "동시 사용자 세션의 최대 수를 설정하세요." } From f7903224731f5b1afe59b43a3f6e1c669cd16894 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 19 Oct 2020 20:48:38 +0000 Subject: [PATCH 300/365] Bump query-string from 6.13.5 to 6.13.6 Bumps [query-string](https://github.com/sindresorhus/query-string) from 6.13.5 to 6.13.6. - [Release notes](https://github.com/sindresorhus/query-string/releases) - [Commits](https://github.com/sindresorhus/query-string/compare/v6.13.5...v6.13.6) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index f1cb13f3c4..cd41f32ddf 100644 --- a/package.json +++ b/package.json @@ -77,7 +77,7 @@ "material-design-icons-iconfont": "^6.1.0", "native-promise-only": "^0.8.0-a", "page": "^1.11.6", - "query-string": "^6.13.5", + "query-string": "^6.13.6", "resize-observer-polyfill": "^1.5.1", "screenfull": "^5.0.2", "sortablejs": "^1.12.0", diff --git a/yarn.lock b/yarn.lock index 1d5ca33387..5d4664740a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9433,10 +9433,10 @@ query-string@^5.0.1: object-assign "^4.1.0" strict-uri-encode "^1.0.0" -query-string@^6.13.5: - version "6.13.5" - resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.13.5.tgz#99e95e2fb7021db90a6f373f990c0c814b3812d8" - integrity sha512-svk3xg9qHR39P3JlHuD7g3nRnyay5mHbrPctEBDUxUkHRifPHXJDhBUycdCC0NBjXoDf44Gb+IsOZL1Uwn8M/Q== +query-string@^6.13.6: + version "6.13.6" + resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.13.6.tgz#e5ac7c74f2a5da43fbca0b883b4f0bafba439966" + integrity sha512-/WWZ7d9na6s2wMEGdVCVgKWE9Rt7nYyNIf7k8xmHXcesPMlEzicWo3lbYwHyA4wBktI2KrXxxZeACLbE84hvSQ== dependencies: decode-uri-component "^0.2.0" split-on-first "^1.0.0" From 0e254295b68a8da41aba4089251836d8300078bd Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 19 Oct 2020 20:49:42 +0000 Subject: [PATCH 301/365] Bump @babel/polyfill from 7.11.5 to 7.12.1 Bumps [@babel/polyfill](https://github.com/babel/babel/tree/HEAD/packages/babel-polyfill) from 7.11.5 to 7.12.1. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.12.1/packages/babel-polyfill) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index f1cb13f3c4..590dda2d36 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,7 @@ "@babel/plugin-proposal-class-properties": "^7.10.1", "@babel/plugin-proposal-private-methods": "^7.10.1", "@babel/plugin-transform-modules-amd": "^7.10.5", - "@babel/polyfill": "^7.11.5", + "@babel/polyfill": "^7.12.1", "@babel/preset-env": "^7.11.5", "autoprefixer": "^9.8.6", "babel-loader": "^8.0.6", diff --git a/yarn.lock b/yarn.lock index 1d5ca33387..5565f3390c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -729,10 +729,10 @@ "@babel/helper-create-regexp-features-plugin" "^7.10.4" "@babel/helper-plugin-utils" "^7.10.4" -"@babel/polyfill@^7.11.5": - version "7.11.5" - resolved "https://registry.yarnpkg.com/@babel/polyfill/-/polyfill-7.11.5.tgz#df550b2ec53abbc2ed599367ec59e64c7a707bb5" - integrity sha512-FunXnE0Sgpd61pKSj2OSOs1D44rKTD3pGOfGilZ6LGrrIH0QEtJlTjqOqdF8Bs98JmjfGhni2BBkTfv9KcKJ9g== +"@babel/polyfill@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/polyfill/-/polyfill-7.12.1.tgz#1f2d6371d1261bbd961f3c5d5909150e12d0bd96" + integrity sha512-X0pi0V6gxLi6lFZpGmeNa4zxtwEmCs42isWLNjZZDE0Y8yVfgu0T2OAHlzBbdYlqbW/YXVvoBHpATEM+goCj8g== dependencies: core-js "^2.6.5" regenerator-runtime "^0.13.4" From 1091e82b956c39d130a852092480686586ee93c6 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 19 Oct 2020 20:51:52 +0000 Subject: [PATCH 302/365] Bump @babel/eslint-plugin from 7.11.5 to 7.12.1 Bumps [@babel/eslint-plugin](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-plugin) from 7.11.5 to 7.12.1. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.12.1/eslint/babel-eslint-plugin) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index f1cb13f3c4..2bf69a1b18 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "devDependencies": { "@babel/core": "^7.11.6", "@babel/eslint-parser": "^7.11.5", - "@babel/eslint-plugin": "^7.11.5", + "@babel/eslint-plugin": "^7.12.1", "@babel/plugin-proposal-class-properties": "^7.10.1", "@babel/plugin-proposal-private-methods": "^7.10.1", "@babel/plugin-transform-modules-amd": "^7.10.5", diff --git a/yarn.lock b/yarn.lock index 1d5ca33387..37ae15d664 100644 --- a/yarn.lock +++ b/yarn.lock @@ -49,10 +49,10 @@ eslint-visitor-keys "^1.3.0" semver "^6.3.0" -"@babel/eslint-plugin@^7.11.5": - version "7.11.5" - resolved "https://registry.yarnpkg.com/@babel/eslint-plugin/-/eslint-plugin-7.11.5.tgz#651fed485493cee8ae803d6a22e3b4f21315f328" - integrity sha512-klliWjB6CeMeqZ7IeJporPr7raD3Ttc8MF9HPNyTvddmBB9Bg7gbiN43rZvaqvsYiktPQLHZrD/Of7vtl6EYpw== +"@babel/eslint-plugin@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/eslint-plugin/-/eslint-plugin-7.12.1.tgz#67626a16312dfe7c5dd7685a1a8af7b03c43985b" + integrity sha512-rOjrD5yupTYCO4x0kEbQmi/NsaD+VGOD/9Cvso64WMVPY2y6o5Nvw2sqFWdeSEBdR1Dsa07YjplBs067x5YbXg== dependencies: eslint-rule-composer "^0.3.0" From bd9840a20b676253f7c1ac27d7b72903c495786d Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 19 Oct 2020 20:52:42 +0000 Subject: [PATCH 303/365] Bump @babel/eslint-parser from 7.11.5 to 7.12.1 Bumps [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser) from 7.11.5 to 7.12.1. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.12.1/eslint/babel-eslint-parser) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index f1cb13f3c4..4299fb9fd0 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,7 @@ "license": "GPL-2.0-or-later", "devDependencies": { "@babel/core": "^7.11.6", - "@babel/eslint-parser": "^7.11.5", + "@babel/eslint-parser": "^7.12.1", "@babel/eslint-plugin": "^7.11.5", "@babel/plugin-proposal-class-properties": "^7.10.1", "@babel/plugin-proposal-private-methods": "^7.10.1", diff --git a/yarn.lock b/yarn.lock index 1d5ca33387..a687d0208b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -40,10 +40,10 @@ semver "^5.4.1" source-map "^0.5.0" -"@babel/eslint-parser@^7.11.5": - version "7.11.5" - resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.11.5.tgz#398192b8d1cd3678efb709f5ab09d9aa2a2218fd" - integrity sha512-DZ3maD3ciwRg1pOzEpJ1outlV1DA/A8XHDQoyL69fC3RIJMlMq1UPudgfRkW0YFqmQPR6OPvu8chaT7Yq2Mm8A== +"@babel/eslint-parser@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.12.1.tgz#b3ae38e6174d2d0d2d00d2dcd919b4086b6bb8f0" + integrity sha512-cc7WQHnHQY3++/bghgbDtPx+5bf6xTsokyGzV6Qzh65NLz/unv+mPQuACkQ9GFhIhcTFv6yqwNaEcfX7EkOEsg== dependencies: eslint-scope "5.1.0" eslint-visitor-keys "^1.3.0" From 2c8d0e96a280339b3883f3537f7041e4a172b8ca Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 19 Oct 2020 20:53:09 +0000 Subject: [PATCH 304/365] Bump css-loader from 4.3.0 to 5.0.0 Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 4.3.0 to 5.0.0. - [Release notes](https://github.com/webpack-contrib/css-loader/releases) - [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md) - [Commits](https://github.com/webpack-contrib/css-loader/compare/v4.3.0...v5.0.0) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 126 +++++++++++++++++++++++++++++++-------------------- 2 files changed, 77 insertions(+), 51 deletions(-) diff --git a/package.json b/package.json index f1cb13f3c4..fae06e0d77 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,7 @@ "browser-sync": "^2.26.12", "confusing-browser-globals": "^1.0.9", "copy-webpack-plugin": "^5.1.1", - "css-loader": "^4.3.0", + "css-loader": "^5.0.0", "cssnano": "^4.1.10", "del": "^6.0.0", "eslint": "^7.11.0", diff --git a/yarn.lock b/yarn.lock index 1d5ca33387..9741ccf82e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2382,10 +2382,10 @@ camelcase@^5.0.0, camelcase@^5.3.1: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== -camelcase@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.0.0.tgz#5259f7c30e35e278f1bdc2a4d91230b37cad981e" - integrity sha512-8KMDF1Vz2gzOq54ONPJS65IvTUaB1cHJ2DMM7MbPmLZljDH1qpzzLsWdiN9pHh6qvkRVDTi/07+eNGch/oLU4w== +camelcase@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.1.0.tgz#27dc176173725fb0adf8a48b647f4d7871944d78" + integrity sha512-WCMml9ivU60+8rEJgELlFp1gxFcEGxwYleE3bziHEDeqsqAWGHdimB7beBFGjLzVNgPGyDsfgXLQEYMpmIFnVQ== caniuse-api@^3.0.0: version "3.0.0" @@ -3100,22 +3100,22 @@ css-has-pseudo@^0.10.0: postcss "^7.0.6" postcss-selector-parser "^5.0.0-rc.4" -css-loader@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-4.3.0.tgz#c888af64b2a5b2e85462c72c0f4a85c7e2e0821e" - integrity sha512-rdezjCjScIrsL8BSYszgT4s476IcNKt6yX69t0pHjJVnPUTDpn4WfIpDQTN3wCJvUvfsz/mFjuGOekf3PY3NUg== +css-loader@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-5.0.0.tgz#f0a48dfacc3ab9936a05ee16a09e7f313872e117" + integrity sha512-9g35eXRBgjvswyJWoqq/seWp+BOxvUl8IinVNTsUBFFxtwfEYvlmEn6ciyn0liXGbGh5HyJjPGCuobDSfqMIVg== dependencies: - camelcase "^6.0.0" + camelcase "^6.1.0" cssesc "^3.0.0" - icss-utils "^4.1.1" + icss-utils "^5.0.0" loader-utils "^2.0.0" - postcss "^7.0.32" - postcss-modules-extract-imports "^2.0.0" - postcss-modules-local-by-default "^3.0.3" - postcss-modules-scope "^2.2.0" - postcss-modules-values "^3.0.0" + postcss "^8.1.1" + postcss-modules-extract-imports "^3.0.0" + postcss-modules-local-by-default "^4.0.0" + postcss-modules-scope "^3.0.0" + postcss-modules-values "^4.0.0" postcss-value-parser "^4.1.0" - schema-utils "^2.7.1" + schema-utils "^3.0.0" semver "^7.3.2" css-prefers-color-scheme@^3.1.1: @@ -5772,12 +5772,10 @@ iconv-lite@0.4.24: dependencies: safer-buffer ">= 2.1.2 < 3" -icss-utils@^4.0.0, icss-utils@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-4.1.1.tgz#21170b53789ee27447c2f47dd683081403f9a467" - integrity sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA== - dependencies: - postcss "^7.0.14" +icss-utils@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-5.0.0.tgz#03ed56c3accd32f9caaf1752ebf64ef12347bb84" + integrity sha512-aF2Cf/CkEZrI/vsu5WI/I+akFgdbwQHVE9YRZxATrhH4PVIe6a3BIjwjEcW+z+jP/hNh+YvM3lAAn1wJQ6opSg== ieee754@^1.1.4: version "1.1.13" @@ -6756,6 +6754,14 @@ limiter@^1.0.5: resolved "https://registry.yarnpkg.com/limiter/-/limiter-1.1.5.tgz#8f92a25b3b16c6131293a0cc834b4a838a2aa7c2" integrity sha512-FWWMIEOxz3GwUI4Ts/IvgVy6LPvoMPgjMdQ185nN6psJyBJ4yOpzqm695/h5umdLJg2vW3GR5iG11MAkR2AzJA== +line-column@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/line-column/-/line-column-1.0.2.tgz#d25af2936b6f4849172b312e4792d1d987bc34a2" + integrity sha1-0lryk2tvSEkXKzEuR5LR2Ye8NKI= + dependencies: + isarray "^1.0.0" + isobject "^2.0.0" + lines-and-columns@^1.1.6: version "1.1.6" resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" @@ -7576,6 +7582,11 @@ nan@^2.12.1, nan@^2.13.2: resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.1.tgz#d7be34dfa3105b91494c3147089315eff8874b01" integrity sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw== +nanoid@^3.1.12: + version "3.1.12" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.12.tgz#6f7736c62e8d39421601e4a0c77623a97ea69654" + integrity sha512-1qstj9z5+x491jfiC4Nelk+f8XBad7LN20PmyWINJEMRSf3wcAjAWysw1qaA8z6NSKe2sjq1hRSDpBH5paCb6A== + nanomatch@^1.2.9: version "1.2.13" resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" @@ -8869,38 +8880,33 @@ postcss-minify-selectors@^4.0.2: postcss "^7.0.0" postcss-selector-parser "^3.0.0" -postcss-modules-extract-imports@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz#818719a1ae1da325f9832446b01136eeb493cd7e" - integrity sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ== - dependencies: - postcss "^7.0.5" +postcss-modules-extract-imports@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz#cda1f047c0ae80c97dbe28c3e76a43b88025741d" + integrity sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw== -postcss-modules-local-by-default@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz#bb14e0cc78279d504dbdcbfd7e0ca28993ffbbb0" - integrity sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw== +postcss-modules-local-by-default@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz#ebbb54fae1598eecfdf691a02b3ff3b390a5a51c" + integrity sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ== dependencies: - icss-utils "^4.1.1" - postcss "^7.0.32" + icss-utils "^5.0.0" postcss-selector-parser "^6.0.2" postcss-value-parser "^4.1.0" -postcss-modules-scope@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz#385cae013cc7743f5a7d7602d1073a89eaae62ee" - integrity sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ== - dependencies: - postcss "^7.0.6" - postcss-selector-parser "^6.0.0" - -postcss-modules-values@^3.0.0: +postcss-modules-scope@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz#5b5000d6ebae29b4255301b4a3a54574423e7f10" - integrity sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg== + resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz#9ef3151456d3bbfa120ca44898dfca6f2fa01f06" + integrity sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg== dependencies: - icss-utils "^4.0.0" - postcss "^7.0.6" + postcss-selector-parser "^6.0.4" + +postcss-modules-values@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz#d7c5e7e68c3bb3c9b27cbf48ca0bb3ffb4602c9c" + integrity sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ== + dependencies: + icss-utils "^5.0.0" postcss-nesting@^7.0.0: version "7.0.1" @@ -9197,7 +9203,7 @@ postcss-selector-parser@^5.0.0-rc.3, postcss-selector-parser@^5.0.0-rc.4: indexes-of "^1.0.1" uniq "^1.0.1" -postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2: +postcss-selector-parser@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz#934cf799d016c83411859e09dcecade01286ec5c" integrity sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg== @@ -9206,6 +9212,16 @@ postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2: indexes-of "^1.0.1" uniq "^1.0.1" +postcss-selector-parser@^6.0.4: + version "6.0.4" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz#56075a1380a04604c38b063ea7767a129af5c2b3" + integrity sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw== + dependencies: + cssesc "^3.0.0" + indexes-of "^1.0.1" + uniq "^1.0.1" + util-deprecate "^1.0.2" + postcss-sorting@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/postcss-sorting/-/postcss-sorting-4.1.0.tgz#a107f0bf3852977fa64e4442bc340c88d5aacdb3" @@ -9284,6 +9300,16 @@ postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.13, postcss@^7.0.14, postcss@^7.0.1 source-map "^0.6.1" supports-color "^6.1.0" +postcss@^8.1.1: + version "8.1.2" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.1.2.tgz#9731fcaa4f7b0bef47121821bdae9eeb609a324c" + integrity sha512-mToqEVFq8jF9TFhlIK4HhE34zknFJuNTgqtsr60vUvrWn+9TIYugCwiV1JZRxCuOrej2jjstun1bn4Bc7/1HkA== + dependencies: + colorette "^1.2.1" + line-column "^1.0.2" + nanoid "^3.1.12" + source-map "^0.6.1" + prelude-ls@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" @@ -10126,7 +10152,7 @@ schema-utils@^1.0.0: ajv-errors "^1.0.0" ajv-keywords "^3.1.0" -schema-utils@^2.6.5, schema-utils@^2.7.1: +schema-utils@^2.6.5: version "2.7.1" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.1.tgz#1ca4f32d1b24c590c203b8e7a50bf0ea4cd394d7" integrity sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg== @@ -11992,7 +12018,7 @@ use@^3.1.0: resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== -util-deprecate@^1.0.1, util-deprecate@~1.0.1: +util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= From f87555540b3c58559eec99041280a3e4ea2a5a74 Mon Sep 17 00:00:00 2001 From: Vitorvlv Date: Mon, 19 Oct 2020 21:15:37 +0000 Subject: [PATCH 305/365] Translated using Weblate (Portuguese (Brazil)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/pt_BR/ --- src/strings/pt-br.json | 30 +++++++++++++++++++++++++----- 1 file changed, 25 insertions(+), 5 deletions(-) diff --git a/src/strings/pt-br.json b/src/strings/pt-br.json index 8910c957d3..aba872a973 100644 --- a/src/strings/pt-br.json +++ b/src/strings/pt-br.json @@ -1384,14 +1384,14 @@ "ButtonUseQuickConnect": "Usar Quick Connect", "ButtonActivate": "Ativar", "Authorize": "Autorizar", - "LabelTonemappingDesat": "Desaturação do mapeamento de tons:", + "LabelTonemappingDesat": "Dessaturação do Tonemapping:", "TonemappingRangeHelp": "Selecione a variadade de cores da saída. Auto é a mesma variedade da entrada.", "LabelTonemappingRange": "Range do mapeamento de tons:", - "TonemappingAlgorithmHelp": "Mapeamento de tons podem ser ajustados. Se você não esta familiariazado com essas opções, mantenha os valores padrões. O valor recomendado é Reinhard.", + "TonemappingAlgorithmHelp": "O Tonemapping pode ser ajustado. Se você não esta familiarizado com essas opções, mantenha o valor padrão. O valor recomendado é Reinhard.", "LabelTonemappingAlgorithm": "Selecione o algoritmo de mapeamento de tons a ser usado:", - "AllowTonemappingHelp": "Mapeamento de tons pode transformar o range dinamico de um video HDR em SDR enquanto mantém os detalhes e cores da imagem, que são informações importantes na representação da cena original. Atualmente funciona apenas durante o transcoding de videos com HDR10 embutidos ou metadata HLG. Se a reprodução falhar ou nao estiver suave, por favor considere desativar o decodificador de hardware correspondente.", + "AllowTonemappingHelp": "O Tonemapping pode transformar o range dinâmico de um video HDR em SDR enquanto mantém os detalhes e cores da imagem, que são informações importantes na representação da cena original. Atualmente funciona apenas durante à transcodificação de vídeos com metadados HDR10 ou HGL embutidos. Se a reprodução falhar ou não estiver suave, por favor considere desativar o decodificador de hardware correspondente.", "EnableTonemapping": "Ativar mapeamento de tons", - "LabelOpenclDeviceHelp": "Dispositivo OpenCL usado para a mapeação de tons. Os números ao lado esquedo do ponto (.) são referentes ao número da plataforma, os números a direita representam o número do dispositivo dentro da plataforma. O valor padrão é 0.0. O arquivo da aplicaçao ffmpeg contendo o método de aceleraçao de hardware OpenCL é obrigatório.", + "LabelOpenclDeviceHelp": "Dispositivo OpenCL usado para a mapeação de tons. Os números ao lado esquerdo do ponto (.) são referentes ao número da plataforma, os números a direita representam o número do dispositivo dentro da plataforma. O valor padrão é 0.0. O arquivo da aplicação ffmpeg contendo o método de aceleraçao de hardware OpenCL é obrigatório.", "LabelOpenclDevice": "Dispositivo OpenCL:", "LabelColorPrimaries": "Cores primárias:", "UseDoubleRateDeinterlacing": "Dobra a taxa de quadros quando estiver desinterlaçando", @@ -1400,5 +1400,25 @@ "KnownProxiesHelp": "Lista de endereços IPs, separados por vírgula, de proxies conhecidos usados para conectar na sua instância do Jellyfin. Isso é necessário para usar de forma adequada os cabeçalhos X-Forwarded-for. Essa alteração necessita que o sistema seja reiniciado após salvar.", "EnableAutoCast": "Definir como padrão", "ThumbCard": "Card da miniatura", - "OptionMaxActiveSessionsHelp": "O valor 0 desativa esta funcão." + "OptionMaxActiveSessionsHelp": "O valor 0 desativa esta funcão.", + "LabelMaxMuxingQueueSizeHelp": "Numero máximo de pacotes que podem ser armazenados no \"buffer\" enquanto espera-se a inicialização de todas as \"streams\". Tente aumentá-lo se encontrar o erro: \"Too many packets buffered for output stream\" nos logs do ffmpeg. O valor recomendado é 2048.", + "LabelMaxMuxingQueueSize": "Tamanho máximo da fila de \"muxing\":", + "LabelTonemappingParamHelp": "Sintonize o algoritmo de tonemapping. Os valores padrões e recomendados são NaN. Geralmente, deixe em branco.", + "LabelTonemappingParam": "Parâmetros de Tonemapping:", + "LabelTonemappingPeakHelp": "Sobrepor este valor ao pico de sinal/nominal/referência. Útil quando a informação de pico embutida nos metadados de visualização não é confiável ou quando o Tone mapping alterna de um intervalo pequeno para um maior.", + "LabelTonemappingPeak": "Pico do Tonemapping:", + "LabelTonemappingThresholdHelp": "Os parâmetros do algoritmo de Tonemapping são afinados a cada cena. E é aplicado um limite para detectar se a cena mudou ou não. Caso a distancia entre o brilho médio atual do quadro e a média atual de execução excedam o valor do limite, o brilho médio e o pico de brilho da cena serão recalculados. Os valores recomendado e padrão são 0.8 e 0.2, respectivamente.", + "LabelTonemappingThreshold": "Limite do Tonemapping:", + "LabelTonemappingDesatHelp": "Aplicar dessaturação em partes claras da imagem que excedam este nível de brilho. Quanto maior o parâmetro, mais informação de cor será preservada. Esta definição ajuda a prevenir cores excessivamente claras tornando-as (suavemente) em branco. Produz imagens mais naturais devido à redução de informação sobre cores fora do espectro. Os valores recomendado e padrão são 0 e 0.5, respectivamente.", + "LabelColorTransfer": "Transferência de cor:", + "LabelColorSpace": "Espaço de cor:", + "LabelVideoRange": "Intervalo de vídeo:", + "MediaInfoColorPrimaries": "Cores primárias", + "MediaInfoColorTransfer": "Transferência de cor", + "MediaInfoColorSpace": "Espaço de cor", + "MediaInfoVideoRange": "Intervalo do vídeo", + "Bwdif": "BWDIF", + "UseDoubleRateDeinterlacingHelp": "Essa configuração utiliza a \"field rate\" ao fazer o processo de \"deinterlacing\", frequentemente chamado de \"bob deinterlacing\", que dobra a taxa de quadros do vídeo para proporcionar um movimento completo similar àquele visto ao ver um vídeo \"interlaçado\" em uma TV.", + "OptionMaxActiveSessions": "Estabelece o número máximo de sessões de usuários simultâneas.", + "LabelUserMaxActiveSessions": "Número máximo de sessões de usuários simultâneas:" } From 3718085a7acacb33baee24788f435859e067aba0 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 20 Oct 2020 04:11:54 +0000 Subject: [PATCH 306/365] Bump browser-sync from 2.26.12 to 2.26.13 Bumps [browser-sync](https://github.com/BrowserSync/browser-sync) from 2.26.12 to 2.26.13. - [Release notes](https://github.com/BrowserSync/browser-sync/releases) - [Changelog](https://github.com/BrowserSync/browser-sync/blob/master/CHANGELOG.md) - [Commits](https://github.com/BrowserSync/browser-sync/compare/v2.26.12...v2.26.13) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 62 ++++++++++++++++++++++++++-------------------------- 2 files changed, 32 insertions(+), 32 deletions(-) diff --git a/package.json b/package.json index 5ca226678d..47da309db8 100644 --- a/package.json +++ b/package.json @@ -15,7 +15,7 @@ "@babel/preset-env": "^7.11.5", "autoprefixer": "^9.8.6", "babel-loader": "^8.0.6", - "browser-sync": "^2.26.12", + "browser-sync": "^2.26.13", "confusing-browser-globals": "^1.0.9", "copy-webpack-plugin": "^5.1.1", "css-loader": "^5.0.0", diff --git a/yarn.lock b/yarn.lock index 1376f808ba..6d3c8166f5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2004,20 +2004,20 @@ brorand@^1.0.1: resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= -browser-sync-client@^2.26.12: - version "2.26.12" - resolved "https://registry.yarnpkg.com/browser-sync-client/-/browser-sync-client-2.26.12.tgz#b6c81335c6a9f1a79bca1951438800d3e7f170c8" - integrity sha512-bEBDRkufKxrIfjOsIB1FN9itUEXr2oLtz1AySgSSr80K2AWzmtoYnxtVASx/i40qFrSdeI31pNvdCjHivihLVA== +browser-sync-client@^2.26.13: + version "2.26.13" + resolved "https://registry.yarnpkg.com/browser-sync-client/-/browser-sync-client-2.26.13.tgz#ee5fa3ec36fe2a03f9887553cac6846751c8232d" + integrity sha512-p2VbZoYrpuDhkreq+/Sv1MkToHklh7T1OaIntDwpG6Iy2q/XkBcgwPcWjX+WwRNiZjN8MEehxIjEUh12LweLmQ== dependencies: etag "1.8.1" fresh "0.5.2" mitt "^1.1.3" rxjs "^5.5.6" -browser-sync-ui@^2.26.12: - version "2.26.12" - resolved "https://registry.yarnpkg.com/browser-sync-ui/-/browser-sync-ui-2.26.12.tgz#6a309644d3ae0fe743906558a94caf6fd118719f" - integrity sha512-PkAJNf/TfCFTCkQUfXplR2Kp/+/lbCWFO9lrgLZsmxIhvMLx2pYZFBbTBIaem8qjXhld9ZcESUC8EdU5VWFJgQ== +browser-sync-ui@^2.26.13: + version "2.26.13" + resolved "https://registry.yarnpkg.com/browser-sync-ui/-/browser-sync-ui-2.26.13.tgz#7a0622df2c1cc4fb0dd8edd511f90737f84239b4" + integrity sha512-6NJ/pCnhCnBMzaty1opWo7ipDmFAIk8U71JMQGKJxblCUaGfdsbF2shf6XNZSkXYia1yS0vwKu9LIOzpXqQZCA== dependencies: async-each-series "0.1.1" connect-history-api-fallback "^1" @@ -2026,13 +2026,13 @@ browser-sync-ui@^2.26.12: socket.io-client "^2.0.4" stream-throttle "^0.1.3" -browser-sync@^2.26.12: - version "2.26.12" - resolved "https://registry.yarnpkg.com/browser-sync/-/browser-sync-2.26.12.tgz#2724df702ef8880e711c1bf62afd7c93a3a80462" - integrity sha512-1GjAe+EpZQJgtKhWsxklEjpaMV0DrRylpHRvZWgOphDQt+bfLZjfynl/j1WjSFIx8ozj9j78g6Yk4TqD3gKaMA== +browser-sync@^2.26.13: + version "2.26.13" + resolved "https://registry.yarnpkg.com/browser-sync/-/browser-sync-2.26.13.tgz#a74541c104aec7eda318a5d8abdb3317ae9eda3d" + integrity sha512-JPYLTngIzI+Dzx+StSSlMtF+Q9yjdh58HW6bMFqkFXuzQkJL8FCvp4lozlS6BbECZcsM2Gmlgp0uhEjvl18X4w== dependencies: - browser-sync-client "^2.26.12" - browser-sync-ui "^2.26.12" + browser-sync-client "^2.26.13" + browser-sync-ui "^2.26.13" bs-recipes "1.3.4" bs-snippet-injector "^2.0.1" chokidar "^3.4.1" @@ -2040,7 +2040,7 @@ browser-sync@^2.26.12: connect-history-api-fallback "^1" dev-ip "^1.0.1" easy-extender "^2.3.4" - eazy-logger "^3" + eazy-logger "3.1.0" etag "^1.8.1" fresh "^0.5.2" fs-extra "3.0.1" @@ -3554,6 +3554,11 @@ dir-glob@^3.0.1: dependencies: path-type "^4.0.0" +dlv@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/dlv/-/dlv-1.1.3.tgz#5c198a8a11453596e751494d49874bc7732f2e79" + integrity sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA== + doctrine@1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" @@ -3731,12 +3736,12 @@ easy-extender@^2.3.4: dependencies: lodash "^4.17.10" -eazy-logger@^3: - version "3.0.2" - resolved "https://registry.yarnpkg.com/eazy-logger/-/eazy-logger-3.0.2.tgz#a325aa5e53d13a2225889b2ac4113b2b9636f4fc" - integrity sha1-oyWqXlPROiIliJsqxBE7K5Y29Pw= +eazy-logger@3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/eazy-logger/-/eazy-logger-3.1.0.tgz#b169eb56df714608fa114f164c8a2956bec9f0f3" + integrity sha512-/snsn2JqBtUSSstEl4R0RKjkisGHAhvYj89i7r3ytNUKW12y178KDZwXLXIgwDqLW6E/VRMT9qfld7wvFae8bQ== dependencies: - tfunk "^3.0.1" + tfunk "^4.0.0" ecc-jsbn@~0.1.1: version "0.1.2" @@ -7893,11 +7898,6 @@ object-keys@^1.0.11, object-keys@^1.0.12, object-keys@^1.1.1: resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== -object-path@^0.9.0: - version "0.9.2" - resolved "https://registry.yarnpkg.com/object-path/-/object-path-0.9.2.tgz#0fd9a74fc5fad1ae3968b586bda5c632bd6c05a5" - integrity sha1-D9mnT8X60a45aLWGvaXGMr1sBaU= - object-visit@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" @@ -11412,13 +11412,13 @@ text-table@^0.2.0: resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= -tfunk@^3.0.1: - version "3.1.0" - resolved "https://registry.yarnpkg.com/tfunk/-/tfunk-3.1.0.tgz#38e4414fc64977d87afdaa72facb6d29f82f7b5b" - integrity sha1-OORBT8ZJd9h6/apy+sttKfgve1s= +tfunk@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/tfunk/-/tfunk-4.0.0.tgz#de9399feaf2060901d590b7faad80fcd5443077e" + integrity sha512-eJQ0dGfDIzWNiFNYFVjJ+Ezl/GmwHaFTBTjrtqNPW0S7cuVDBrZrmzUz6VkMeCR4DZFqhd4YtLwsw3i2wYHswQ== dependencies: - chalk "^1.1.1" - object-path "^0.9.0" + chalk "^1.1.3" + dlv "^1.1.3" through2-concurrent@^2.0.0: version "2.0.0" From a4ea1021f56e4a13bf3622dab37d020a03eaa5ff Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 20 Oct 2020 04:14:21 +0000 Subject: [PATCH 307/365] Bump @babel/core from 7.11.6 to 7.12.3 Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.11.6 to 7.12.3. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.12.3/packages/babel-core) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 121 ++++++++++++++++++++++++++++++++------------------- 2 files changed, 78 insertions(+), 45 deletions(-) diff --git a/package.json b/package.json index 503c3d5b9e..445d8f4066 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "repository": "https://github.com/jellyfin/jellyfin-web", "license": "GPL-2.0-or-later", "devDependencies": { - "@babel/core": "^7.11.6", + "@babel/core": "^7.12.3", "@babel/eslint-parser": "^7.12.1", "@babel/eslint-plugin": "^7.12.1", "@babel/plugin-proposal-class-properties": "^7.10.1", diff --git a/yarn.lock b/yarn.lock index 095daefb5e..b2aba83929 100644 --- a/yarn.lock +++ b/yarn.lock @@ -18,19 +18,19 @@ invariant "^2.2.4" semver "^5.5.0" -"@babel/core@>=7.2.2", "@babel/core@>=7.9.0", "@babel/core@^7.11.6": - version "7.11.6" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.11.6.tgz#3a9455dc7387ff1bac45770650bc13ba04a15651" - integrity sha512-Wpcv03AGnmkgm6uS6k8iwhIwTrcP0m17TL1n1sy7qD0qelDu4XNeW0dN0mHfa+Gei211yDaLoEe/VlbXQzM4Bg== +"@babel/core@>=7.2.2", "@babel/core@>=7.9.0", "@babel/core@^7.12.3": + version "7.12.3" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.12.3.tgz#1b436884e1e3bff6fb1328dc02b208759de92ad8" + integrity sha512-0qXcZYKZp3/6N2jKYVxZv0aNCsxTSVCiK72DTiTYZAu7sjg73W0/aynWjMbiGd87EQL4WyA8reiJVh92AVla9g== dependencies: "@babel/code-frame" "^7.10.4" - "@babel/generator" "^7.11.6" - "@babel/helper-module-transforms" "^7.11.0" - "@babel/helpers" "^7.10.4" - "@babel/parser" "^7.11.5" + "@babel/generator" "^7.12.1" + "@babel/helper-module-transforms" "^7.12.1" + "@babel/helpers" "^7.12.1" + "@babel/parser" "^7.12.3" "@babel/template" "^7.10.4" - "@babel/traverse" "^7.11.5" - "@babel/types" "^7.11.5" + "@babel/traverse" "^7.12.1" + "@babel/types" "^7.12.1" convert-source-map "^1.7.0" debug "^4.1.0" gensync "^1.0.0-beta.1" @@ -56,12 +56,12 @@ dependencies: eslint-rule-composer "^0.3.0" -"@babel/generator@^7.11.5", "@babel/generator@^7.11.6": - version "7.11.6" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.11.6.tgz#b868900f81b163b4d464ea24545c61cbac4dc620" - integrity sha512-DWtQ1PV3r+cLbySoHrwn9RWEgKMBLLma4OBQloPRyDYvc5msJM9kvTLo1YnlJd1P/ZuKbdli3ijr5q3FvAF3uA== +"@babel/generator@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.12.1.tgz#0d70be32bdaa03d7c51c8597dda76e0df1f15468" + integrity sha512-DB+6rafIdc9o72Yc3/Ph5h+6hUjeOp66pF0naQBgUFFuPqzQwIlPTm3xZR7YNvduIMtkDIj2t21LSQwnbCrXvg== dependencies: - "@babel/types" "^7.11.5" + "@babel/types" "^7.12.1" jsesc "^2.5.1" source-map "^0.5.0" @@ -159,6 +159,13 @@ dependencies: "@babel/types" "^7.10.4" +"@babel/helper-member-expression-to-functions@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.1.tgz#fba0f2fcff3fba00e6ecb664bb5e6e26e2d6165c" + integrity sha512-k0CIe3tXUKTRSoEx1LQEPFU9vRQfqHtl+kf8eNnDqb4AUJEy5pz6aIiog+YWtVm2jpggjS1laH68bPsR+KWWPQ== + dependencies: + "@babel/types" "^7.12.1" + "@babel/helper-module-imports@^7.10.4": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.10.4.tgz#4c5c54be04bd31670a7382797d75b9fa2e5b5620" @@ -166,17 +173,26 @@ dependencies: "@babel/types" "^7.10.4" -"@babel/helper-module-transforms@^7.10.4", "@babel/helper-module-transforms@^7.10.5", "@babel/helper-module-transforms@^7.11.0": - version "7.11.0" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.11.0.tgz#b16f250229e47211abdd84b34b64737c2ab2d359" - integrity sha512-02EVu8COMuTRO1TAzdMtpBPbe6aQ1w/8fePD2YgQmxZU4gpNWaL9gK3Jp7dxlkUlUCJOTaSeA+Hrm1BRQwqIhg== +"@babel/helper-module-imports@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.12.1.tgz#1644c01591a15a2f084dd6d092d9430eb1d1216c" + integrity sha512-ZeC1TlMSvikvJNy1v/wPIazCu3NdOwgYZLIkmIyAsGhqkNpiDoQQRmaCK8YP4Pq3GPTLPV9WXaPCJKvx06JxKA== dependencies: - "@babel/helper-module-imports" "^7.10.4" - "@babel/helper-replace-supers" "^7.10.4" - "@babel/helper-simple-access" "^7.10.4" + "@babel/types" "^7.12.1" + +"@babel/helper-module-transforms@^7.10.4", "@babel/helper-module-transforms@^7.10.5", "@babel/helper-module-transforms@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.12.1.tgz#7954fec71f5b32c48e4b303b437c34453fd7247c" + integrity sha512-QQzehgFAZ2bbISiCpmVGfiGux8YVFXQ0abBic2Envhej22DVXV9nCFaS5hIQbkyo1AdGb+gNME2TSh3hYJVV/w== + dependencies: + "@babel/helper-module-imports" "^7.12.1" + "@babel/helper-replace-supers" "^7.12.1" + "@babel/helper-simple-access" "^7.12.1" "@babel/helper-split-export-declaration" "^7.11.0" + "@babel/helper-validator-identifier" "^7.10.4" "@babel/template" "^7.10.4" - "@babel/types" "^7.11.0" + "@babel/traverse" "^7.12.1" + "@babel/types" "^7.12.1" lodash "^4.17.19" "@babel/helper-optimise-call-expression@^7.10.4": @@ -219,6 +235,16 @@ "@babel/traverse" "^7.10.4" "@babel/types" "^7.10.4" +"@babel/helper-replace-supers@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.12.1.tgz#f15c9cc897439281891e11d5ce12562ac0cf3fa9" + integrity sha512-zJjTvtNJnCFsCXVi5rUInstLd/EIVNmIKA1Q9ynESmMBWPWd+7sdR+G4/wdu+Mppfep0XLyG2m7EBPvjCeFyrw== + dependencies: + "@babel/helper-member-expression-to-functions" "^7.12.1" + "@babel/helper-optimise-call-expression" "^7.10.4" + "@babel/traverse" "^7.12.1" + "@babel/types" "^7.12.1" + "@babel/helper-simple-access@^7.10.4": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.10.4.tgz#0f5ccda2945277a2a7a2d3a821e15395edcf3461" @@ -227,6 +253,13 @@ "@babel/template" "^7.10.4" "@babel/types" "^7.10.4" +"@babel/helper-simple-access@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.12.1.tgz#32427e5aa61547d38eb1e6eaf5fd1426fdad9136" + integrity sha512-OxBp7pMrjVewSSC8fXDFrHrBcJATOOFssZwv16F3/6Xtc138GHybBfPbm9kfiqQHKhYQrlamWILwlDCeyMFEaA== + dependencies: + "@babel/types" "^7.12.1" + "@babel/helper-skip-transparent-expression-wrappers@^7.11.0": version "7.11.0" resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.11.0.tgz#eec162f112c2f58d3af0af125e3bb57665146729" @@ -263,14 +296,14 @@ "@babel/traverse" "^7.10.4" "@babel/types" "^7.10.4" -"@babel/helpers@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.10.4.tgz#2abeb0d721aff7c0a97376b9e1f6f65d7a475044" - integrity sha512-L2gX/XeUONeEbI78dXSrJzGdz4GQ+ZTA/aazfUsFaWjSe95kiCuOZ5HsXvkiw3iwF+mFHSRUfJU8t6YavocdXA== +"@babel/helpers@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.12.1.tgz#8a8261c1d438ec18cb890434df4ec768734c1e79" + integrity sha512-9JoDSBGoWtmbay98efmT2+mySkwjzeFeAL9BuWNoVQpkPFQF8SIIFUfY5os9u8wVzglzoiPRSW7cuJmBDUt43g== dependencies: "@babel/template" "^7.10.4" - "@babel/traverse" "^7.10.4" - "@babel/types" "^7.10.4" + "@babel/traverse" "^7.12.1" + "@babel/types" "^7.12.1" "@babel/highlight@^7.10.4": version "7.10.4" @@ -281,10 +314,10 @@ chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@^7.10.4", "@babel/parser@^7.11.5": - version "7.11.5" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.11.5.tgz#c7ff6303df71080ec7a4f5b8c003c58f1cf51037" - integrity sha512-X9rD8qqm695vgmeaQ4fvz/o3+Wk4ZzQvSHkDBgpYKxpD4qTAUm88ZKtHkVqIOsYFFbIQ6wQYhC6q7pjqVK0E0Q== +"@babel/parser@^7.10.4", "@babel/parser@^7.12.1", "@babel/parser@^7.12.3": + version "7.12.3" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.12.3.tgz#a305415ebe7a6c7023b40b5122a0662d928334cd" + integrity sha512-kFsOS0IbsuhO5ojF8Hc8z/8vEIOkylVBrjiZUbLTE3XFe0Qi+uu6HjzQixkFaqr0ZPAMZcBVxEwmsnsLPZ2Xsw== "@babel/plugin-proposal-async-generator-functions@^7.10.4": version "7.10.4" @@ -838,25 +871,25 @@ "@babel/parser" "^7.10.4" "@babel/types" "^7.10.4" -"@babel/traverse@^7.10.4", "@babel/traverse@^7.11.5": - version "7.11.5" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.11.5.tgz#be777b93b518eb6d76ee2e1ea1d143daa11e61c3" - integrity sha512-EjiPXt+r7LiCZXEfRpSJd+jUMnBd4/9OUv7Nx3+0u9+eimMwJmG0Q98lw4/289JCoxSE8OolDMNZaaF/JZ69WQ== +"@babel/traverse@^7.10.4", "@babel/traverse@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.12.1.tgz#941395e0c5cc86d5d3e75caa095d3924526f0c1e" + integrity sha512-MA3WPoRt1ZHo2ZmoGKNqi20YnPt0B1S0GTZEPhhd+hw2KGUzBlHuVunj6K4sNuK+reEvyiPwtp0cpaqLzJDmAw== dependencies: "@babel/code-frame" "^7.10.4" - "@babel/generator" "^7.11.5" + "@babel/generator" "^7.12.1" "@babel/helper-function-name" "^7.10.4" "@babel/helper-split-export-declaration" "^7.11.0" - "@babel/parser" "^7.11.5" - "@babel/types" "^7.11.5" + "@babel/parser" "^7.12.1" + "@babel/types" "^7.12.1" debug "^4.1.0" globals "^11.1.0" lodash "^4.17.19" -"@babel/types@^7.10.4", "@babel/types@^7.11.0", "@babel/types@^7.11.5", "@babel/types@^7.4.4": - version "7.11.5" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.11.5.tgz#d9de577d01252d77c6800cee039ee64faf75662d" - integrity sha512-bvM7Qz6eKnJVFIn+1LPtjlBFPVN5jNDc1XmN15vWe7Q3DPBufWWsLiIvUu7xW87uTG6QoggpIDnUgLQvPheU+Q== +"@babel/types@^7.10.4", "@babel/types@^7.11.0", "@babel/types@^7.11.5", "@babel/types@^7.12.1", "@babel/types@^7.4.4": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.12.1.tgz#e109d9ab99a8de735be287ee3d6a9947a190c4ae" + integrity sha512-BzSY3NJBKM4kyatSOWh3D/JJ2O3CVzBybHWxtgxnggaxEuaSTTDqeiSb/xk9lrkw2Tbqyivw5ZU4rT+EfznQsA== dependencies: "@babel/helper-validator-identifier" "^7.10.4" lodash "^4.17.19" From f092dd63b06836ce084f065daa31a869fc15942f Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 20 Oct 2020 06:52:34 +0000 Subject: [PATCH 308/365] Bump @babel/plugin-proposal-private-methods from 7.10.4 to 7.12.1 Bumps [@babel/plugin-proposal-private-methods](https://github.com/babel/babel/tree/HEAD/packages/babel-plugin-proposal-private-methods) from 7.10.4 to 7.12.1. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.12.1/packages/babel-plugin-proposal-private-methods) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 23 +++++++++++------------ 2 files changed, 12 insertions(+), 13 deletions(-) diff --git a/package.json b/package.json index 58ebeb037c..a75c98454f 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "@babel/eslint-parser": "^7.12.1", "@babel/eslint-plugin": "^7.12.1", "@babel/plugin-proposal-class-properties": "^7.10.1", - "@babel/plugin-proposal-private-methods": "^7.10.1", + "@babel/plugin-proposal-private-methods": "^7.12.1", "@babel/plugin-transform-modules-amd": "^7.10.5", "@babel/polyfill": "^7.12.1", "@babel/preset-env": "^7.11.5", diff --git a/yarn.lock b/yarn.lock index 13c17f7ee1..267a730f50 100644 --- a/yarn.lock +++ b/yarn.lock @@ -91,16 +91,15 @@ levenary "^1.1.1" semver "^5.5.0" -"@babel/helper-create-class-features-plugin@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.10.4.tgz#2d4015d0136bd314103a70d84a7183e4b344a355" - integrity sha512-9raUiOsXPxzzLjCXeosApJItoMnX3uyT4QdM2UldffuGApNrF8e938MwNpDCK9CPoyxrEoCgT+hObJc3mZa6lQ== +"@babel/helper-create-class-features-plugin@^7.10.4", "@babel/helper-create-class-features-plugin@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.12.1.tgz#3c45998f431edd4a9214c5f1d3ad1448a6137f6e" + integrity sha512-hkL++rWeta/OVOBTRJc9a5Azh5mt5WgZUGAKMD8JM141YsE08K//bp1unBBieO6rUKkIPyUE0USQ30jAy3Sk1w== dependencies: "@babel/helper-function-name" "^7.10.4" - "@babel/helper-member-expression-to-functions" "^7.10.4" + "@babel/helper-member-expression-to-functions" "^7.12.1" "@babel/helper-optimise-call-expression" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/helper-replace-supers" "^7.10.4" + "@babel/helper-replace-supers" "^7.12.1" "@babel/helper-split-export-declaration" "^7.10.4" "@babel/helper-create-regexp-features-plugin@^7.10.4": @@ -410,12 +409,12 @@ "@babel/helper-skip-transparent-expression-wrappers" "^7.11.0" "@babel/plugin-syntax-optional-chaining" "^7.8.0" -"@babel/plugin-proposal-private-methods@^7.10.1", "@babel/plugin-proposal-private-methods@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.10.4.tgz#b160d972b8fdba5c7d111a145fc8c421fc2a6909" - integrity sha512-wh5GJleuI8k3emgTg5KkJK6kHNsGEr0uBTDBuQUBJwckk9xs1ez79ioheEVVxMLyPscB0LfkbVHslQqIzWV6Bw== +"@babel/plugin-proposal-private-methods@^7.10.4", "@babel/plugin-proposal-private-methods@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.12.1.tgz#86814f6e7a21374c980c10d38b4493e703f4a389" + integrity sha512-mwZ1phvH7/NHK6Kf8LP7MYDogGV+DKB1mryFOEwx5EBNQrosvIczzZFTUmWaeujd5xT6G1ELYWUz3CutMhjE1w== dependencies: - "@babel/helper-create-class-features-plugin" "^7.10.4" + "@babel/helper-create-class-features-plugin" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-proposal-unicode-property-regex@^7.10.4", "@babel/plugin-proposal-unicode-property-regex@^7.4.4": From ca06019cb37de4574455d0fee51740b9a12b6892 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 20 Oct 2020 09:27:09 +0000 Subject: [PATCH 309/365] Bump @babel/plugin-transform-modules-amd from 7.10.5 to 7.12.1 Bumps [@babel/plugin-transform-modules-amd](https://github.com/babel/babel/tree/HEAD/packages/babel-plugin-transform-modules-amd) from 7.10.5 to 7.12.1. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.12.1/packages/babel-plugin-transform-modules-amd) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/package.json b/package.json index a75c98454f..1abd52d277 100644 --- a/package.json +++ b/package.json @@ -10,7 +10,7 @@ "@babel/eslint-plugin": "^7.12.1", "@babel/plugin-proposal-class-properties": "^7.10.1", "@babel/plugin-proposal-private-methods": "^7.12.1", - "@babel/plugin-transform-modules-amd": "^7.10.5", + "@babel/plugin-transform-modules-amd": "^7.12.1", "@babel/polyfill": "^7.12.1", "@babel/preset-env": "^7.11.5", "autoprefixer": "^9.8.6", diff --git a/yarn.lock b/yarn.lock index 267a730f50..f91244150d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -179,7 +179,7 @@ dependencies: "@babel/types" "^7.12.1" -"@babel/helper-module-transforms@^7.10.4", "@babel/helper-module-transforms@^7.10.5", "@babel/helper-module-transforms@^7.12.1": +"@babel/helper-module-transforms@^7.10.4", "@babel/helper-module-transforms@^7.12.1": version "7.12.1" resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.12.1.tgz#7954fec71f5b32c48e4b303b437c34453fd7247c" integrity sha512-QQzehgFAZ2bbISiCpmVGfiGux8YVFXQ0abBic2Envhej22DVXV9nCFaS5hIQbkyo1AdGb+gNME2TSh3hYJVV/w== @@ -620,12 +620,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-modules-amd@^7.10.4", "@babel/plugin-transform-modules-amd@^7.10.5": - version "7.10.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.10.5.tgz#1b9cddaf05d9e88b3aad339cb3e445c4f020a9b1" - integrity sha512-elm5uruNio7CTLFItVC/rIzKLfQ17+fX7EVz5W0TMgIHFo1zY0Ozzx+lgwhL4plzl8OzVn6Qasx5DeEFyoNiRw== +"@babel/plugin-transform-modules-amd@^7.10.4", "@babel/plugin-transform-modules-amd@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.12.1.tgz#3154300b026185666eebb0c0ed7f8415fefcf6f9" + integrity sha512-tDW8hMkzad5oDtzsB70HIQQRBiTKrhfgwC/KkJeGsaNFTdWhKNt/BiE8c5yj19XiGyrxpbkOfH87qkNg1YGlOQ== dependencies: - "@babel/helper-module-transforms" "^7.10.5" + "@babel/helper-module-transforms" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" babel-plugin-dynamic-import-node "^2.3.3" From a2ecf8966c966452df4fc29ec39f9efd4c2e457e Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 20 Oct 2020 09:59:52 +0000 Subject: [PATCH 310/365] Bump @babel/preset-env from 7.11.5 to 7.12.1 Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.11.5 to 7.12.1. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.12.1/packages/babel-preset-env) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 664 +++++++++++++++++++++++---------------------------- 2 files changed, 301 insertions(+), 365 deletions(-) diff --git a/package.json b/package.json index 1abd52d277..12ad0536da 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,7 @@ "@babel/plugin-proposal-private-methods": "^7.12.1", "@babel/plugin-transform-modules-amd": "^7.12.1", "@babel/polyfill": "^7.12.1", - "@babel/preset-env": "^7.11.5", + "@babel/preset-env": "^7.12.1", "autoprefixer": "^9.8.6", "babel-loader": "^8.0.6", "browser-sync": "^2.26.13", diff --git a/yarn.lock b/yarn.lock index f91244150d..9df43191bc 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9,14 +9,10 @@ dependencies: "@babel/highlight" "^7.10.4" -"@babel/compat-data@^7.10.4", "@babel/compat-data@^7.11.0": - version "7.11.0" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.11.0.tgz#e9f73efe09af1355b723a7f39b11bad637d7c99c" - integrity sha512-TPSvJfv73ng0pfnEOh17bYMPQbI95+nGWc71Ss4vZdRBHTDqmM9Z8ZV4rYz8Ks7sfzc95n30k6ODIq5UGnXcYQ== - dependencies: - browserslist "^4.12.0" - invariant "^2.2.4" - semver "^5.5.0" +"@babel/compat-data@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.12.1.tgz#d7386a689aa0ddf06255005b4b991988021101a0" + integrity sha512-725AQupWJZ8ba0jbKceeFblZTY90McUBWMwHhkFQ9q1zKPJ95GUktljFcgcsIVwRnTnRKlcYzfiNImg5G9m6ZQ== "@babel/core@>=7.2.2", "@babel/core@>=7.9.0", "@babel/core@^7.12.3": version "7.12.3" @@ -80,18 +76,17 @@ "@babel/helper-explode-assignable-expression" "^7.10.4" "@babel/types" "^7.10.4" -"@babel/helper-compilation-targets@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.10.4.tgz#804ae8e3f04376607cc791b9d47d540276332bd2" - integrity sha512-a3rYhlsGV0UHNDvrtOXBg8/OpfV0OKTkxKPzIplS1zpx7CygDcWWxckxZeDd3gzPzC4kUT0A4nVFDK0wGMh4MQ== +"@babel/helper-compilation-targets@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.12.1.tgz#310e352888fbdbdd8577be8dfdd2afb9e7adcf50" + integrity sha512-jtBEif7jsPwP27GPHs06v4WBV0KrE8a/P7n0N0sSvHn2hwUCYnolP/CLmz51IzAW4NlN+HuoBtb9QcwnRo9F/g== dependencies: - "@babel/compat-data" "^7.10.4" + "@babel/compat-data" "^7.12.1" + "@babel/helper-validator-option" "^7.12.1" browserslist "^4.12.0" - invariant "^2.2.4" - levenary "^1.1.1" semver "^5.5.0" -"@babel/helper-create-class-features-plugin@^7.10.4", "@babel/helper-create-class-features-plugin@^7.12.1": +"@babel/helper-create-class-features-plugin@^7.12.1": version "7.12.1" resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.12.1.tgz#3c45998f431edd4a9214c5f1d3ad1448a6137f6e" integrity sha512-hkL++rWeta/OVOBTRJc9a5Azh5mt5WgZUGAKMD8JM141YsE08K//bp1unBBieO6rUKkIPyUE0USQ30jAy3Sk1w== @@ -102,14 +97,14 @@ "@babel/helper-replace-supers" "^7.12.1" "@babel/helper-split-export-declaration" "^7.10.4" -"@babel/helper-create-regexp-features-plugin@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.10.4.tgz#fdd60d88524659a0b6959c0579925e425714f3b8" - integrity sha512-2/hu58IEPKeoLF45DBwx3XFqsbCXmkdAay4spVr2x0jYgRxrSNp+ePwvSsy9g6YSaNDcKIQVPXk1Ov8S2edk2g== +"@babel/helper-create-regexp-features-plugin@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.12.1.tgz#18b1302d4677f9dc4740fe8c9ed96680e29d37e8" + integrity sha512-rsZ4LGvFTZnzdNZR5HZdmJVuXK8834R5QkF3WvcnBhrlVtF0HSIUC6zbreL9MgjTywhKokn8RIYRiq99+DLAxA== dependencies: "@babel/helper-annotate-as-pure" "^7.10.4" "@babel/helper-regex" "^7.10.4" - regexpu-core "^4.7.0" + regexpu-core "^4.7.1" "@babel/helper-define-map@^7.10.4": version "7.10.4" @@ -151,13 +146,6 @@ dependencies: "@babel/types" "^7.10.4" -"@babel/helper-member-expression-to-functions@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.10.4.tgz#7cd04b57dfcf82fce9aeae7d4e4452fa31b8c7c4" - integrity sha512-m5j85pK/KZhuSdM/8cHUABQTAslV47OjfIB9Cc7P+PvlAoBzdb79BGNfw8RhT5Mq3p+xGd0ZfAKixbrUZx0C7A== - dependencies: - "@babel/types" "^7.10.4" - "@babel/helper-member-expression-to-functions@^7.12.1": version "7.12.1" resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.1.tgz#fba0f2fcff3fba00e6ecb664bb5e6e26e2d6165c" @@ -165,13 +153,6 @@ dependencies: "@babel/types" "^7.12.1" -"@babel/helper-module-imports@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.10.4.tgz#4c5c54be04bd31670a7382797d75b9fa2e5b5620" - integrity sha512-nEQJHqYavI217oD9+s5MUBzk6x1IlvoS9WTPfgG43CbMEeStE0v+r+TucWdx8KFGowPGvyOkDT9+7DHedIDnVw== - dependencies: - "@babel/types" "^7.10.4" - "@babel/helper-module-imports@^7.12.1": version "7.12.1" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.12.1.tgz#1644c01591a15a2f084dd6d092d9430eb1d1216c" @@ -179,7 +160,7 @@ dependencies: "@babel/types" "^7.12.1" -"@babel/helper-module-transforms@^7.10.4", "@babel/helper-module-transforms@^7.12.1": +"@babel/helper-module-transforms@^7.12.1": version "7.12.1" resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.12.1.tgz#7954fec71f5b32c48e4b303b437c34453fd7247c" integrity sha512-QQzehgFAZ2bbISiCpmVGfiGux8YVFXQ0abBic2Envhej22DVXV9nCFaS5hIQbkyo1AdGb+gNME2TSh3hYJVV/w== @@ -213,26 +194,14 @@ dependencies: lodash "^4.17.13" -"@babel/helper-remap-async-to-generator@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.10.4.tgz#fce8bea4e9690bbe923056ded21e54b4e8b68ed5" - integrity sha512-86Lsr6NNw3qTNl+TBcF1oRZMaVzJtbWTyTko+CQL/tvNvcGYEFKbLXDPxtW0HKk3McNOk4KzY55itGWCAGK5tg== +"@babel/helper-remap-async-to-generator@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.12.1.tgz#8c4dbbf916314f6047dc05e6a2217074238347fd" + integrity sha512-9d0KQCRM8clMPcDwo8SevNs+/9a8yWVVmaE80FGJcEP8N1qToREmWEGnBn8BUlJhYRFz6fqxeRL1sl5Ogsed7A== dependencies: "@babel/helper-annotate-as-pure" "^7.10.4" "@babel/helper-wrap-function" "^7.10.4" - "@babel/template" "^7.10.4" - "@babel/traverse" "^7.10.4" - "@babel/types" "^7.10.4" - -"@babel/helper-replace-supers@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.10.4.tgz#d585cd9388ea06e6031e4cd44b6713cbead9e6cf" - integrity sha512-sPxZfFXocEymYTdVK1UNmFPBN+Hv5mJkLPsYWwGBxZAxaWfFu+xqp7b6qWD0yjNuNL2VKc6L5M18tOXUP7NU0A== - dependencies: - "@babel/helper-member-expression-to-functions" "^7.10.4" - "@babel/helper-optimise-call-expression" "^7.10.4" - "@babel/traverse" "^7.10.4" - "@babel/types" "^7.10.4" + "@babel/types" "^7.12.1" "@babel/helper-replace-supers@^7.12.1": version "7.12.1" @@ -244,14 +213,6 @@ "@babel/traverse" "^7.12.1" "@babel/types" "^7.12.1" -"@babel/helper-simple-access@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.10.4.tgz#0f5ccda2945277a2a7a2d3a821e15395edcf3461" - integrity sha512-0fMy72ej/VEvF8ULmX6yb5MtHG4uH4Dbd6I/aHDb/JVg0bbivwt9Wg+h3uMvX+QSFtwr5MeItvazbrc4jtRAXw== - dependencies: - "@babel/template" "^7.10.4" - "@babel/types" "^7.10.4" - "@babel/helper-simple-access@^7.12.1": version "7.12.1" resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.12.1.tgz#32427e5aa61547d38eb1e6eaf5fd1426fdad9136" @@ -259,12 +220,12 @@ dependencies: "@babel/types" "^7.12.1" -"@babel/helper-skip-transparent-expression-wrappers@^7.11.0": - version "7.11.0" - resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.11.0.tgz#eec162f112c2f58d3af0af125e3bb57665146729" - integrity sha512-0XIdiQln4Elglgjbwo9wuJpL/K7AGCY26kmEt0+pRP0TAj4jjyNq1MjoRvikrTVqKcx4Gysxt4cXvVFXP/JO2Q== +"@babel/helper-skip-transparent-expression-wrappers@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.12.1.tgz#462dc63a7e435ade8468385c63d2b84cce4b3cbf" + integrity sha512-Mf5AUuhG1/OCChOJ/HcADmvcHM42WJockombn8ATJG3OnyiSxBK/Mm5x78BQWvmtXZKHgbjdGL2kin/HOLlZGA== dependencies: - "@babel/types" "^7.11.0" + "@babel/types" "^7.12.1" "@babel/helper-split-export-declaration@^7.10.4": version "7.10.4" @@ -285,6 +246,11 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz#a78c7a7251e01f616512d31b10adcf52ada5e0d2" integrity sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw== +"@babel/helper-validator-option@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.12.1.tgz#175567380c3e77d60ff98a54bb015fe78f2178d9" + integrity sha512-YpJabsXlJVWP0USHjnC/AQDTLlZERbON577YUVO/wLpqyj6HAtVYnWaQaN0iUN+1/tWn3c+uKKXjRut5115Y2A== + "@babel/helper-wrap-function@^7.10.4": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.10.4.tgz#8a6f701eab0ff39f765b5a1cfef409990e624b87" @@ -318,98 +284,98 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.12.3.tgz#a305415ebe7a6c7023b40b5122a0662d928334cd" integrity sha512-kFsOS0IbsuhO5ojF8Hc8z/8vEIOkylVBrjiZUbLTE3XFe0Qi+uu6HjzQixkFaqr0ZPAMZcBVxEwmsnsLPZ2Xsw== -"@babel/plugin-proposal-async-generator-functions@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.10.4.tgz#4b65abb3d9bacc6c657aaa413e56696f9f170fc6" - integrity sha512-MJbxGSmejEFVOANAezdO39SObkURO5o/8b6fSH6D1pi9RZQt+ldppKPXfqgUWpSQ9asM6xaSaSJIaeWMDRP0Zg== +"@babel/plugin-proposal-async-generator-functions@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.12.1.tgz#dc6c1170e27d8aca99ff65f4925bd06b1c90550e" + integrity sha512-d+/o30tJxFxrA1lhzJqiUcEJdI6jKlNregCv5bASeGf2Q4MXmnwH7viDo7nhx1/ohf09oaH8j1GVYG/e3Yqk6A== dependencies: "@babel/helper-plugin-utils" "^7.10.4" - "@babel/helper-remap-async-to-generator" "^7.10.4" + "@babel/helper-remap-async-to-generator" "^7.12.1" "@babel/plugin-syntax-async-generators" "^7.8.0" -"@babel/plugin-proposal-class-properties@^7.10.1", "@babel/plugin-proposal-class-properties@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.10.4.tgz#a33bf632da390a59c7a8c570045d1115cd778807" - integrity sha512-vhwkEROxzcHGNu2mzUC0OFFNXdZ4M23ib8aRRcJSsW8BZK9pQMD7QB7csl97NBbgGZO7ZyHUyKDnxzOaP4IrCg== +"@babel/plugin-proposal-class-properties@^7.10.1", "@babel/plugin-proposal-class-properties@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.12.1.tgz#a082ff541f2a29a4821065b8add9346c0c16e5de" + integrity sha512-cKp3dlQsFsEs5CWKnN7BnSHOd0EOW8EKpEjkoz1pO2E5KzIDNV9Ros1b0CnmbVgAGXJubOYVBOGCT1OmJwOI7w== dependencies: - "@babel/helper-create-class-features-plugin" "^7.10.4" + "@babel/helper-create-class-features-plugin" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-proposal-dynamic-import@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.10.4.tgz#ba57a26cb98b37741e9d5bca1b8b0ddf8291f17e" - integrity sha512-up6oID1LeidOOASNXgv/CFbgBqTuKJ0cJjz6An5tWD+NVBNlp3VNSBxv2ZdU7SYl3NxJC7agAQDApZusV6uFwQ== +"@babel/plugin-proposal-dynamic-import@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.12.1.tgz#43eb5c2a3487ecd98c5c8ea8b5fdb69a2749b2dc" + integrity sha512-a4rhUSZFuq5W8/OO8H7BL5zspjnc1FLd9hlOxIK/f7qG4a0qsqk8uvF/ywgBA8/OmjsapjpvaEOYItfGG1qIvQ== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-dynamic-import" "^7.8.0" -"@babel/plugin-proposal-export-namespace-from@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.10.4.tgz#570d883b91031637b3e2958eea3c438e62c05f54" - integrity sha512-aNdf0LY6/3WXkhh0Fdb6Zk9j1NMD8ovj3F6r0+3j837Pn1S1PdNtcwJ5EG9WkVPNHPxyJDaxMaAOVq4eki0qbg== +"@babel/plugin-proposal-export-namespace-from@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.12.1.tgz#8b9b8f376b2d88f5dd774e4d24a5cc2e3679b6d4" + integrity sha512-6CThGf0irEkzujYS5LQcjBx8j/4aQGiVv7J9+2f7pGfxqyKh3WnmVJYW3hdrQjyksErMGBPQrCnHfOtna+WLbw== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-export-namespace-from" "^7.8.3" -"@babel/plugin-proposal-json-strings@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.10.4.tgz#593e59c63528160233bd321b1aebe0820c2341db" - integrity sha512-fCL7QF0Jo83uy1K0P2YXrfX11tj3lkpN7l4dMv9Y9VkowkhkQDwFHFd8IiwyK5MZjE8UpbgokkgtcReH88Abaw== +"@babel/plugin-proposal-json-strings@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.12.1.tgz#d45423b517714eedd5621a9dfdc03fa9f4eb241c" + integrity sha512-GoLDUi6U9ZLzlSda2Df++VSqDJg3CG+dR0+iWsv6XRw1rEq+zwt4DirM9yrxW6XWaTpmai1cWJLMfM8qQJf+yw== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-json-strings" "^7.8.0" -"@babel/plugin-proposal-logical-assignment-operators@^7.11.0": - version "7.11.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.11.0.tgz#9f80e482c03083c87125dee10026b58527ea20c8" - integrity sha512-/f8p4z+Auz0Uaf+i8Ekf1iM7wUNLcViFUGiPxKeXvxTSl63B875YPiVdUDdem7hREcI0E0kSpEhS8tF5RphK7Q== +"@babel/plugin-proposal-logical-assignment-operators@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.12.1.tgz#f2c490d36e1b3c9659241034a5d2cd50263a2751" + integrity sha512-k8ZmVv0JU+4gcUGeCDZOGd0lCIamU/sMtIiX3UWnUc5yzgq6YUGyEolNYD+MLYKfSzgECPcqetVcJP9Afe/aCA== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" -"@babel/plugin-proposal-nullish-coalescing-operator@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.10.4.tgz#02a7e961fc32e6d5b2db0649e01bf80ddee7e04a" - integrity sha512-wq5n1M3ZUlHl9sqT2ok1T2/MTt6AXE0e1Lz4WzWBr95LsAZ5qDXe4KnFuauYyEyLiohvXFMdbsOTMyLZs91Zlw== +"@babel/plugin-proposal-nullish-coalescing-operator@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.12.1.tgz#3ed4fff31c015e7f3f1467f190dbe545cd7b046c" + integrity sha512-nZY0ESiaQDI1y96+jk6VxMOaL4LPo/QDHBqL+SF3/vl6dHkTwHlOI8L4ZwuRBHgakRBw5zsVylel7QPbbGuYgg== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.0" -"@babel/plugin-proposal-numeric-separator@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.10.4.tgz#ce1590ff0a65ad12970a609d78855e9a4c1aef06" - integrity sha512-73/G7QoRoeNkLZFxsoCCvlg4ezE4eM+57PnOqgaPOozd5myfj7p0muD1mRVJvbUWbOzD+q3No2bWbaKy+DJ8DA== +"@babel/plugin-proposal-numeric-separator@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.12.1.tgz#0e2c6774c4ce48be412119b4d693ac777f7685a6" + integrity sha512-MR7Ok+Af3OhNTCxYVjJZHS0t97ydnJZt/DbR4WISO39iDnhiD8XHrY12xuSJ90FFEGjir0Fzyyn7g/zY6hxbxA== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-numeric-separator" "^7.10.4" -"@babel/plugin-proposal-object-rest-spread@^7.11.0": - version "7.11.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.11.0.tgz#bd81f95a1f746760ea43b6c2d3d62b11790ad0af" - integrity sha512-wzch41N4yztwoRw0ak+37wxwJM2oiIiy6huGCoqkvSTA9acYWcPfn9Y4aJqmFFJ70KTJUu29f3DQ43uJ9HXzEA== +"@babel/plugin-proposal-object-rest-spread@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.1.tgz#def9bd03cea0f9b72283dac0ec22d289c7691069" + integrity sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-object-rest-spread" "^7.8.0" - "@babel/plugin-transform-parameters" "^7.10.4" + "@babel/plugin-transform-parameters" "^7.12.1" -"@babel/plugin-proposal-optional-catch-binding@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.10.4.tgz#31c938309d24a78a49d68fdabffaa863758554dd" - integrity sha512-LflT6nPh+GK2MnFiKDyLiqSqVHkQnVf7hdoAvyTnnKj9xB3docGRsdPuxp6qqqW19ifK3xgc9U5/FwrSaCNX5g== +"@babel/plugin-proposal-optional-catch-binding@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.12.1.tgz#ccc2421af64d3aae50b558a71cede929a5ab2942" + integrity sha512-hFvIjgprh9mMw5v42sJWLI1lzU5L2sznP805zeT6rySVRA0Y18StRhDqhSxlap0oVgItRsB6WSROp4YnJTJz0g== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-optional-catch-binding" "^7.8.0" -"@babel/plugin-proposal-optional-chaining@^7.11.0": - version "7.11.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.11.0.tgz#de5866d0646f6afdaab8a566382fe3a221755076" - integrity sha512-v9fZIu3Y8562RRwhm1BbMRxtqZNFmFA2EG+pT2diuU8PT3H6T/KXoZ54KgYisfOFZHV6PfvAiBIZ9Rcz+/JCxA== +"@babel/plugin-proposal-optional-chaining@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.12.1.tgz#cce122203fc8a32794296fc377c6dedaf4363797" + integrity sha512-c2uRpY6WzaVDzynVY9liyykS+kVU+WRZPMPYpkelXH8KBt1oXoI89kPbZKKG/jDT5UK92FTW2fZkZaJhdiBabw== dependencies: "@babel/helper-plugin-utils" "^7.10.4" - "@babel/helper-skip-transparent-expression-wrappers" "^7.11.0" + "@babel/helper-skip-transparent-expression-wrappers" "^7.12.1" "@babel/plugin-syntax-optional-chaining" "^7.8.0" -"@babel/plugin-proposal-private-methods@^7.10.4", "@babel/plugin-proposal-private-methods@^7.12.1": +"@babel/plugin-proposal-private-methods@^7.12.1": version "7.12.1" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.12.1.tgz#86814f6e7a21374c980c10d38b4493e703f4a389" integrity sha512-mwZ1phvH7/NHK6Kf8LP7MYDogGV+DKB1mryFOEwx5EBNQrosvIczzZFTUmWaeujd5xT6G1ELYWUz3CutMhjE1w== @@ -417,12 +383,12 @@ "@babel/helper-create-class-features-plugin" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-proposal-unicode-property-regex@^7.10.4", "@babel/plugin-proposal-unicode-property-regex@^7.4.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.10.4.tgz#4483cda53041ce3413b7fe2f00022665ddfaa75d" - integrity sha512-H+3fOgPnEXFL9zGYtKQe4IDOPKYlZdF1kqFDQRRb8PK4B8af1vAGK04tF5iQAAsui+mHNBQSAtd2/ndEDe9wuA== +"@babel/plugin-proposal-unicode-property-regex@^7.12.1", "@babel/plugin-proposal-unicode-property-regex@^7.4.4": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.12.1.tgz#2a183958d417765b9eae334f47758e5d6a82e072" + integrity sha512-MYq+l+PvHuw/rKUz1at/vb6nCnQ2gmJBNaM62z0OgH7B2W1D9pvkpYtlti9bGtizNIU1K3zm4bZF9F91efVY0w== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.10.4" + "@babel/helper-create-regexp-features-plugin" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-async-generators@^7.8.0": @@ -432,10 +398,10 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-class-properties@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.10.4.tgz#6644e6a0baa55a61f9e3231f6c9eeb6ee46c124c" - integrity sha512-GCSBF7iUle6rNugfURwNmCGG3Z/2+opxAMLs1nND4bhEG5PuxTIggDBoeYYSujAlLtsupzOHYJQgPS3pivwXIA== +"@babel/plugin-syntax-class-properties@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.1.tgz#bcb297c5366e79bebadef509549cd93b04f19978" + integrity sha512-U40A76x5gTwmESz+qiqssqmeEsKvcSyvtgktrm0uzcARAmM9I1jR221f6Oq+GmHrcD+LvZDag1UTOTe2fL3TeA== dependencies: "@babel/helper-plugin-utils" "^7.10.4" @@ -502,125 +468,124 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-top-level-await@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.10.4.tgz#4bbeb8917b54fcf768364e0a81f560e33a3ef57d" - integrity sha512-ni1brg4lXEmWyafKr0ccFWkJG0CeMt4WV1oyeBW6EFObF4oOHclbkj5cARxAPQyAQ2UTuplJyK4nfkXIMMFvsQ== +"@babel/plugin-syntax-top-level-await@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.12.1.tgz#dd6c0b357ac1bb142d98537450a319625d13d2a0" + integrity sha512-i7ooMZFS+a/Om0crxZodrTzNEPJHZrlMVGMTEpFAj6rYY/bKCddB0Dk/YxfPuYXOopuhKk/e1jV6h+WUU9XN3A== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-arrow-functions@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.10.4.tgz#e22960d77e697c74f41c501d44d73dbf8a6a64cd" - integrity sha512-9J/oD1jV0ZCBcgnoFWFq1vJd4msoKb/TCpGNFyyLt0zABdcvgK3aYikZ8HjzB14c26bc7E3Q1yugpwGy2aTPNA== +"@babel/plugin-transform-arrow-functions@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.12.1.tgz#8083ffc86ac8e777fbe24b5967c4b2521f3cb2b3" + integrity sha512-5QB50qyN44fzzz4/qxDPQMBCTHgxg3n0xRBLJUmBlLoU/sFvxVWGZF/ZUfMVDQuJUKXaBhbupxIzIfZ6Fwk/0A== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-async-to-generator@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.10.4.tgz#41a5017e49eb6f3cda9392a51eef29405b245a37" - integrity sha512-F6nREOan7J5UXTLsDsZG3DXmZSVofr2tGNwfdrVwkDWHfQckbQXnXSPfD7iO+c/2HGqycwyLST3DnZ16n+cBJQ== +"@babel/plugin-transform-async-to-generator@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.12.1.tgz#3849a49cc2a22e9743cbd6b52926d30337229af1" + integrity sha512-SDtqoEcarK1DFlRJ1hHRY5HvJUj5kX4qmtpMAm2QnhOlyuMC4TMdCRgW6WXpv93rZeYNeLP22y8Aq2dbcDRM1A== dependencies: - "@babel/helper-module-imports" "^7.10.4" + "@babel/helper-module-imports" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" - "@babel/helper-remap-async-to-generator" "^7.10.4" + "@babel/helper-remap-async-to-generator" "^7.12.1" -"@babel/plugin-transform-block-scoped-functions@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.10.4.tgz#1afa595744f75e43a91af73b0d998ecfe4ebc2e8" - integrity sha512-WzXDarQXYYfjaV1szJvN3AD7rZgZzC1JtjJZ8dMHUyiK8mxPRahynp14zzNjU3VkPqPsO38CzxiWO1c9ARZ8JA== +"@babel/plugin-transform-block-scoped-functions@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.12.1.tgz#f2a1a365bde2b7112e0a6ded9067fdd7c07905d9" + integrity sha512-5OpxfuYnSgPalRpo8EWGPzIYf0lHBWORCkj5M0oLBwHdlux9Ri36QqGW3/LR13RSVOAoUUMzoPI/jpE4ABcHoA== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-block-scoping@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.10.4.tgz#a670d1364bb5019a621b9ea2001482876d734787" - integrity sha512-J3b5CluMg3hPUii2onJDRiaVbPtKFPLEaV5dOPY5OeAbDi1iU/UbbFFTgwb7WnanaDy7bjU35kc26W3eM5Qa0A== +"@babel/plugin-transform-block-scoping@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.12.1.tgz#f0ee727874b42a208a48a586b84c3d222c2bbef1" + integrity sha512-zJyAC9sZdE60r1nVQHblcfCj29Dh2Y0DOvlMkcqSo0ckqjiCwNiUezUKw+RjOCwGfpLRwnAeQ2XlLpsnGkvv9w== dependencies: "@babel/helper-plugin-utils" "^7.10.4" - lodash "^4.17.13" -"@babel/plugin-transform-classes@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.10.4.tgz#405136af2b3e218bc4a1926228bc917ab1a0adc7" - integrity sha512-2oZ9qLjt161dn1ZE0Ms66xBncQH4In8Sqw1YWgBUZuGVJJS5c0OFZXL6dP2MRHrkU/eKhWg8CzFJhRQl50rQxA== +"@babel/plugin-transform-classes@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.12.1.tgz#65e650fcaddd3d88ddce67c0f834a3d436a32db6" + integrity sha512-/74xkA7bVdzQTBeSUhLLJgYIcxw/dpEpCdRDiHgPJ3Mv6uC11UhjpOhl72CgqbBCmt1qtssCyB2xnJm1+PFjog== dependencies: "@babel/helper-annotate-as-pure" "^7.10.4" "@babel/helper-define-map" "^7.10.4" "@babel/helper-function-name" "^7.10.4" "@babel/helper-optimise-call-expression" "^7.10.4" "@babel/helper-plugin-utils" "^7.10.4" - "@babel/helper-replace-supers" "^7.10.4" + "@babel/helper-replace-supers" "^7.12.1" "@babel/helper-split-export-declaration" "^7.10.4" globals "^11.1.0" -"@babel/plugin-transform-computed-properties@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.10.4.tgz#9ded83a816e82ded28d52d4b4ecbdd810cdfc0eb" - integrity sha512-JFwVDXcP/hM/TbyzGq3l/XWGut7p46Z3QvqFMXTfk6/09m7xZHJUN9xHfsv7vqqD4YnfI5ueYdSJtXqqBLyjBw== +"@babel/plugin-transform-computed-properties@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.12.1.tgz#d68cf6c9b7f838a8a4144badbe97541ea0904852" + integrity sha512-vVUOYpPWB7BkgUWPo4C44mUQHpTZXakEqFjbv8rQMg7TC6S6ZhGZ3otQcRH6u7+adSlE5i0sp63eMC/XGffrzg== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-destructuring@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.10.4.tgz#70ddd2b3d1bea83d01509e9bb25ddb3a74fc85e5" - integrity sha512-+WmfvyfsyF603iPa6825mq6Qrb7uLjTOsa3XOFzlYcYDHSS4QmpOWOL0NNBY5qMbvrcf3tq0Cw+v4lxswOBpgA== +"@babel/plugin-transform-destructuring@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.12.1.tgz#b9a570fe0d0a8d460116413cb4f97e8e08b2f847" + integrity sha512-fRMYFKuzi/rSiYb2uRLiUENJOKq4Gnl+6qOv5f8z0TZXg3llUwUhsNNwrwaT/6dUhJTzNpBr+CUvEWBtfNY1cw== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-dotall-regex@^7.10.4", "@babel/plugin-transform-dotall-regex@^7.4.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.10.4.tgz#469c2062105c1eb6a040eaf4fac4b488078395ee" - integrity sha512-ZEAVvUTCMlMFAbASYSVQoxIbHm2OkG2MseW6bV2JjIygOjdVv8tuxrCTzj1+Rynh7ODb8GivUy7dzEXzEhuPaA== +"@babel/plugin-transform-dotall-regex@^7.12.1", "@babel/plugin-transform-dotall-regex@^7.4.4": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.12.1.tgz#a1d16c14862817b6409c0a678d6f9373ca9cd975" + integrity sha512-B2pXeRKoLszfEW7J4Hg9LoFaWEbr/kzo3teWHmtFCszjRNa/b40f9mfeqZsIDLLt/FjwQ6pz/Gdlwy85xNckBA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.10.4" + "@babel/helper-create-regexp-features-plugin" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-duplicate-keys@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.10.4.tgz#697e50c9fee14380fe843d1f306b295617431e47" - integrity sha512-GL0/fJnmgMclHiBTTWXNlYjYsA7rDrtsazHG6mglaGSTh0KsrW04qml+Bbz9FL0LcJIRwBWL5ZqlNHKTkU3xAA== +"@babel/plugin-transform-duplicate-keys@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.12.1.tgz#745661baba295ac06e686822797a69fbaa2ca228" + integrity sha512-iRght0T0HztAb/CazveUpUQrZY+aGKKaWXMJ4uf9YJtqxSUe09j3wteztCUDRHs+SRAL7yMuFqUsLoAKKzgXjw== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-exponentiation-operator@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.10.4.tgz#5ae338c57f8cf4001bdb35607ae66b92d665af2e" - integrity sha512-S5HgLVgkBcRdyQAHbKj+7KyuWx8C6t5oETmUuwz1pt3WTWJhsUV0WIIXuVvfXMxl/QQyHKlSCNNtaIamG8fysw== +"@babel/plugin-transform-exponentiation-operator@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.12.1.tgz#b0f2ed356ba1be1428ecaf128ff8a24f02830ae0" + integrity sha512-7tqwy2bv48q+c1EHbXK0Zx3KXd2RVQp6OC7PbwFNt/dPTAV3Lu5sWtWuAj8owr5wqtWnqHfl2/mJlUmqkChKug== dependencies: "@babel/helper-builder-binary-assignment-operator-visitor" "^7.10.4" "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-for-of@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.10.4.tgz#c08892e8819d3a5db29031b115af511dbbfebae9" - integrity sha512-ItdQfAzu9AlEqmusA/65TqJ79eRcgGmpPPFvBnGILXZH975G0LNjP1yjHvGgfuCxqrPPueXOPe+FsvxmxKiHHQ== +"@babel/plugin-transform-for-of@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.12.1.tgz#07640f28867ed16f9511c99c888291f560921cfa" + integrity sha512-Zaeq10naAsuHo7heQvyV0ptj4dlZJwZgNAtBYBnu5nNKJoW62m0zKcIEyVECrUKErkUkg6ajMy4ZfnVZciSBhg== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-function-name@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.10.4.tgz#6a467880e0fc9638514ba369111811ddbe2644b7" - integrity sha512-OcDCq2y5+E0dVD5MagT5X+yTRbcvFjDI2ZVAottGH6tzqjx/LKpgkUepu3hp/u4tZBzxxpNGwLsAvGBvQ2mJzg== +"@babel/plugin-transform-function-name@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.12.1.tgz#2ec76258c70fe08c6d7da154003a480620eba667" + integrity sha512-JF3UgJUILoFrFMEnOJLJkRHSk6LUSXLmEFsA23aR2O5CSLUxbeUX1IZ1YQ7Sn0aXb601Ncwjx73a+FVqgcljVw== dependencies: "@babel/helper-function-name" "^7.10.4" "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-literals@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.10.4.tgz#9f42ba0841100a135f22712d0e391c462f571f3c" - integrity sha512-Xd/dFSTEVuUWnyZiMu76/InZxLTYilOSr1UlHV+p115Z/Le2Fi1KXkJUYz0b42DfndostYlPub3m8ZTQlMaiqQ== +"@babel/plugin-transform-literals@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.12.1.tgz#d73b803a26b37017ddf9d3bb8f4dc58bfb806f57" + integrity sha512-+PxVGA+2Ag6uGgL0A5f+9rklOnnMccwEBzwYFL3EUaKuiyVnUipyXncFcfjSkbimLrODoqki1U9XxZzTvfN7IQ== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-member-expression-literals@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.10.4.tgz#b1ec44fcf195afcb8db2c62cd8e551c881baf8b7" - integrity sha512-0bFOvPyAoTBhtcJLr9VcwZqKmSjFml1iVxvPL0ReomGU53CX53HsM4h2SzckNdkQcHox1bpAqzxBI1Y09LlBSw== +"@babel/plugin-transform-member-expression-literals@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.12.1.tgz#496038602daf1514a64d43d8e17cbb2755e0c3ad" + integrity sha512-1sxePl6z9ad0gFMB9KqmYofk34flq62aqMt9NqliS/7hPEpURUCMbyHXrMPlo282iY7nAvUB1aQd5mg79UD9Jg== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-modules-amd@^7.10.4", "@babel/plugin-transform-modules-amd@^7.12.1": +"@babel/plugin-transform-modules-amd@^7.12.1": version "7.12.1" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.12.1.tgz#3154300b026185666eebb0c0ed7f8415fefcf6f9" integrity sha512-tDW8hMkzad5oDtzsB70HIQQRBiTKrhfgwC/KkJeGsaNFTdWhKNt/BiE8c5yj19XiGyrxpbkOfH87qkNg1YGlOQ== @@ -629,136 +594,135 @@ "@babel/helper-plugin-utils" "^7.10.4" babel-plugin-dynamic-import-node "^2.3.3" -"@babel/plugin-transform-modules-commonjs@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.10.4.tgz#66667c3eeda1ebf7896d41f1f16b17105a2fbca0" - integrity sha512-Xj7Uq5o80HDLlW64rVfDBhao6OX89HKUmb+9vWYaLXBZOma4gA6tw4Ni1O5qVDoZWUV0fxMYA0aYzOawz0l+1w== +"@babel/plugin-transform-modules-commonjs@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.12.1.tgz#fa403124542636c786cf9b460a0ffbb48a86e648" + integrity sha512-dY789wq6l0uLY8py9c1B48V8mVL5gZh/+PQ5ZPrylPYsnAvnEMjqsUXkuoDVPeVK+0VyGar+D08107LzDQ6pag== dependencies: - "@babel/helper-module-transforms" "^7.10.4" + "@babel/helper-module-transforms" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" - "@babel/helper-simple-access" "^7.10.4" + "@babel/helper-simple-access" "^7.12.1" babel-plugin-dynamic-import-node "^2.3.3" -"@babel/plugin-transform-modules-systemjs@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.10.4.tgz#8f576afd943ac2f789b35ded0a6312f929c633f9" - integrity sha512-Tb28LlfxrTiOTGtZFsvkjpyjCl9IoaRI52AEU/VIwOwvDQWtbNJsAqTXzh+5R7i74e/OZHH2c2w2fsOqAfnQYQ== +"@babel/plugin-transform-modules-systemjs@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.12.1.tgz#663fea620d593c93f214a464cd399bf6dc683086" + integrity sha512-Hn7cVvOavVh8yvW6fLwveFqSnd7rbQN3zJvoPNyNaQSvgfKmDBO9U1YL9+PCXGRlZD9tNdWTy5ACKqMuzyn32Q== dependencies: "@babel/helper-hoist-variables" "^7.10.4" - "@babel/helper-module-transforms" "^7.10.4" + "@babel/helper-module-transforms" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" + "@babel/helper-validator-identifier" "^7.10.4" babel-plugin-dynamic-import-node "^2.3.3" -"@babel/plugin-transform-modules-umd@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.10.4.tgz#9a8481fe81b824654b3a0b65da3df89f3d21839e" - integrity sha512-mohW5q3uAEt8T45YT7Qc5ws6mWgJAaL/8BfWD9Dodo1A3RKWli8wTS+WiQ/knF+tXlPirW/1/MqzzGfCExKECA== +"@babel/plugin-transform-modules-umd@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.12.1.tgz#eb5a218d6b1c68f3d6217b8fa2cc82fec6547902" + integrity sha512-aEIubCS0KHKM0zUos5fIoQm+AZUMt1ZvMpqz0/H5qAQ7vWylr9+PLYurT+Ic7ID/bKLd4q8hDovaG3Zch2uz5Q== dependencies: - "@babel/helper-module-transforms" "^7.10.4" + "@babel/helper-module-transforms" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-named-capturing-groups-regex@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.10.4.tgz#78b4d978810b6f3bcf03f9e318f2fc0ed41aecb6" - integrity sha512-V6LuOnD31kTkxQPhKiVYzYC/Jgdq53irJC/xBSmqcNcqFGV+PER4l6rU5SH2Vl7bH9mLDHcc0+l9HUOe4RNGKA== +"@babel/plugin-transform-named-capturing-groups-regex@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.12.1.tgz#b407f5c96be0d9f5f88467497fa82b30ac3e8753" + integrity sha512-tB43uQ62RHcoDp9v2Nsf+dSM8sbNodbEicbQNA53zHz8pWUhsgHSJCGpt7daXxRydjb0KnfmB+ChXOv3oADp1Q== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.10.4" + "@babel/helper-create-regexp-features-plugin" "^7.12.1" -"@babel/plugin-transform-new-target@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.10.4.tgz#9097d753cb7b024cb7381a3b2e52e9513a9c6888" - integrity sha512-YXwWUDAH/J6dlfwqlWsztI2Puz1NtUAubXhOPLQ5gjR/qmQ5U96DY4FQO8At33JN4XPBhrjB8I4eMmLROjjLjw== +"@babel/plugin-transform-new-target@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.12.1.tgz#80073f02ee1bb2d365c3416490e085c95759dec0" + integrity sha512-+eW/VLcUL5L9IvJH7rT1sT0CzkdUTvPrXC2PXTn/7z7tXLBuKvezYbGdxD5WMRoyvyaujOq2fWoKl869heKjhw== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-object-super@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.10.4.tgz#d7146c4d139433e7a6526f888c667e314a093894" - integrity sha512-5iTw0JkdRdJvr7sY0vHqTpnruUpTea32JHmq/atIWqsnNussbRzjEDyWep8UNztt1B5IusBYg8Irb0bLbiEBCQ== +"@babel/plugin-transform-object-super@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.12.1.tgz#4ea08696b8d2e65841d0c7706482b048bed1066e" + integrity sha512-AvypiGJH9hsquNUn+RXVcBdeE3KHPZexWRdimhuV59cSoOt5kFBmqlByorAeUlGG2CJWd0U+4ZtNKga/TB0cAw== dependencies: "@babel/helper-plugin-utils" "^7.10.4" - "@babel/helper-replace-supers" "^7.10.4" + "@babel/helper-replace-supers" "^7.12.1" -"@babel/plugin-transform-parameters@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.10.4.tgz#7b4d137c87ea7adc2a0f3ebf53266871daa6fced" - integrity sha512-RurVtZ/D5nYfEg0iVERXYKEgDFeesHrHfx8RT05Sq57ucj2eOYAP6eu5fynL4Adju4I/mP/I6SO0DqNWAXjfLQ== - dependencies: - "@babel/helper-get-function-arity" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-property-literals@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.10.4.tgz#f6fe54b6590352298785b83edd815d214c42e3c0" - integrity sha512-ofsAcKiUxQ8TY4sScgsGeR2vJIsfrzqvFb9GvJ5UdXDzl+MyYCaBj/FGzXuv7qE0aJcjWMILny1epqelnFlz8g== +"@babel/plugin-transform-parameters@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.12.1.tgz#d2e963b038771650c922eff593799c96d853255d" + integrity sha512-xq9C5EQhdPK23ZeCdMxl8bbRnAgHFrw5EOC3KJUsSylZqdkCaFEXxGSBuTSObOpiiHHNyb82es8M1QYgfQGfNg== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-regenerator@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.10.4.tgz#2015e59d839074e76838de2159db421966fd8b63" - integrity sha512-3thAHwtor39A7C04XucbMg17RcZ3Qppfxr22wYzZNcVIkPHfpM9J0SO8zuCV6SZa265kxBJSrfKTvDCYqBFXGw== +"@babel/plugin-transform-property-literals@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.12.1.tgz#41bc81200d730abb4456ab8b3fbd5537b59adecd" + integrity sha512-6MTCR/mZ1MQS+AwZLplX4cEySjCpnIF26ToWo942nqn8hXSm7McaHQNeGx/pt7suI1TWOWMfa/NgBhiqSnX0cQ== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + +"@babel/plugin-transform-regenerator@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.12.1.tgz#5f0a28d842f6462281f06a964e88ba8d7ab49753" + integrity sha512-gYrHqs5itw6i4PflFX3OdBPMQdPbF4bj2REIUxlMRUFk0/ZOAIpDFuViuxPjUL7YC8UPnf+XG7/utJvqXdPKng== dependencies: regenerator-transform "^0.14.2" -"@babel/plugin-transform-reserved-words@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.10.4.tgz#8f2682bcdcef9ed327e1b0861585d7013f8a54dd" - integrity sha512-hGsw1O6Rew1fkFbDImZIEqA8GoidwTAilwCyWqLBM9f+e/u/sQMQu7uX6dyokfOayRuuVfKOW4O7HvaBWM+JlQ== +"@babel/plugin-transform-reserved-words@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.12.1.tgz#6fdfc8cc7edcc42b36a7c12188c6787c873adcd8" + integrity sha512-pOnUfhyPKvZpVyBHhSBoX8vfA09b7r00Pmm1sH+29ae2hMTKVmSp4Ztsr8KBKjLjx17H0eJqaRC3bR2iThM54A== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-shorthand-properties@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.10.4.tgz#9fd25ec5cdd555bb7f473e5e6ee1c971eede4dd6" - integrity sha512-AC2K/t7o07KeTIxMoHneyX90v3zkm5cjHJEokrPEAGEy3UCp8sLKfnfOIGdZ194fyN4wfX/zZUWT9trJZ0qc+Q== +"@babel/plugin-transform-shorthand-properties@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.12.1.tgz#0bf9cac5550fce0cfdf043420f661d645fdc75e3" + integrity sha512-GFZS3c/MhX1OusqB1MZ1ct2xRzX5ppQh2JU1h2Pnfk88HtFTM+TWQqJNfwkmxtPQtb/s1tk87oENfXJlx7rSDw== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-spread@^7.11.0": - version "7.11.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.11.0.tgz#fa84d300f5e4f57752fe41a6d1b3c554f13f17cc" - integrity sha512-UwQYGOqIdQJe4aWNyS7noqAnN2VbaczPLiEtln+zPowRNlD+79w3oi2TWfYe0eZgd+gjZCbsydN7lzWysDt+gw== +"@babel/plugin-transform-spread@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.12.1.tgz#527f9f311be4ec7fdc2b79bb89f7bf884b3e1e1e" + integrity sha512-vuLp8CP0BE18zVYjsEBZ5xoCecMK6LBMMxYzJnh01rxQRvhNhH1csMMmBfNo5tGpGO+NhdSNW2mzIvBu3K1fng== dependencies: "@babel/helper-plugin-utils" "^7.10.4" - "@babel/helper-skip-transparent-expression-wrappers" "^7.11.0" + "@babel/helper-skip-transparent-expression-wrappers" "^7.12.1" -"@babel/plugin-transform-sticky-regex@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.10.4.tgz#8f3889ee8657581130a29d9cc91d7c73b7c4a28d" - integrity sha512-Ddy3QZfIbEV0VYcVtFDCjeE4xwVTJWTmUtorAJkn6u/92Z/nWJNV+mILyqHKrUxXYKA2EoCilgoPePymKL4DvQ== +"@babel/plugin-transform-sticky-regex@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.12.1.tgz#5c24cf50de396d30e99afc8d1c700e8bce0f5caf" + integrity sha512-CiUgKQ3AGVk7kveIaPEET1jNDhZZEl1RPMWdTBE1799bdz++SwqDHStmxfCtDfBhQgCl38YRiSnrMuUMZIWSUQ== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/helper-regex" "^7.10.4" -"@babel/plugin-transform-template-literals@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.10.4.tgz#e6375407b30fcb7fcfdbba3bb98ef3e9d36df7bc" - integrity sha512-4NErciJkAYe+xI5cqfS8pV/0ntlY5N5Ske/4ImxAVX7mk9Rxt2bwDTGv1Msc2BRJvWQcmYEC+yoMLdX22aE4VQ== - dependencies: - "@babel/helper-annotate-as-pure" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-typeof-symbol@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.10.4.tgz#9509f1a7eec31c4edbffe137c16cc33ff0bc5bfc" - integrity sha512-QqNgYwuuW0y0H+kUE/GWSR45t/ccRhe14Fs/4ZRouNNQsyd4o3PG4OtHiIrepbM2WKUBDAXKCAK/Lk4VhzTaGA== +"@babel/plugin-transform-template-literals@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.12.1.tgz#b43ece6ed9a79c0c71119f576d299ef09d942843" + integrity sha512-b4Zx3KHi+taXB1dVRBhVJtEPi9h1THCeKmae2qP0YdUHIFhVjtpqqNfxeVAa1xeHVhAy4SbHxEwx5cltAu5apw== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-unicode-escapes@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.10.4.tgz#feae523391c7651ddac115dae0a9d06857892007" - integrity sha512-y5XJ9waMti2J+e7ij20e+aH+fho7Wb7W8rNuu72aKRwCHFqQdhkdU2lo3uZ9tQuboEJcUFayXdARhcxLQ3+6Fg== +"@babel/plugin-transform-typeof-symbol@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.12.1.tgz#9ca6be343d42512fbc2e68236a82ae64bc7af78a" + integrity sha512-EPGgpGy+O5Kg5pJFNDKuxt9RdmTgj5sgrus2XVeMp/ZIbOESadgILUbm50SNpghOh3/6yrbsH+NB5+WJTmsA7Q== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-unicode-regex@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.10.4.tgz#e56d71f9282fac6db09c82742055576d5e6d80a8" - integrity sha512-wNfsc4s8N2qnIwpO/WP2ZiSyjfpTamT2C9V9FDH/Ljub9zw6P3SjkXcFmc0RQUt96k2fmIvtla2MMjgTwIAC+A== +"@babel/plugin-transform-unicode-escapes@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.12.1.tgz#5232b9f81ccb07070b7c3c36c67a1b78f1845709" + integrity sha512-I8gNHJLIc7GdApm7wkVnStWssPNbSRMPtgHdmH3sRM1zopz09UWPS4x5V4n1yz/MIWTVnJ9sp6IkuXdWM4w+2Q== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.10.4" + "@babel/helper-plugin-utils" "^7.10.4" + +"@babel/plugin-transform-unicode-regex@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.12.1.tgz#cc9661f61390db5c65e3febaccefd5c6ac3faecb" + integrity sha512-SqH4ClNngh/zGwHZOOQMTD+e8FGWexILV+ePMyiDJttAWRh5dhDL8rcl5lSgU3Huiq6Zn6pWTMvdPAb21Dwdyg== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" "@babel/polyfill@^7.12.1": @@ -769,30 +733,31 @@ core-js "^2.6.5" regenerator-runtime "^0.13.4" -"@babel/preset-env@^7.11.5": - version "7.11.5" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.11.5.tgz#18cb4b9379e3e92ffea92c07471a99a2914e4272" - integrity sha512-kXqmW1jVcnB2cdueV+fyBM8estd5mlNfaQi6lwLgRwCby4edpavgbFhiBNjmWA3JpB/yZGSISa7Srf+TwxDQoA== +"@babel/preset-env@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.12.1.tgz#9c7e5ca82a19efc865384bb4989148d2ee5d7ac2" + integrity sha512-H8kxXmtPaAGT7TyBvSSkoSTUK6RHh61So05SyEbpmr0MCZrsNYn7mGMzzeYoOUCdHzww61k8XBft2TaES+xPLg== dependencies: - "@babel/compat-data" "^7.11.0" - "@babel/helper-compilation-targets" "^7.10.4" - "@babel/helper-module-imports" "^7.10.4" + "@babel/compat-data" "^7.12.1" + "@babel/helper-compilation-targets" "^7.12.1" + "@babel/helper-module-imports" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-proposal-async-generator-functions" "^7.10.4" - "@babel/plugin-proposal-class-properties" "^7.10.4" - "@babel/plugin-proposal-dynamic-import" "^7.10.4" - "@babel/plugin-proposal-export-namespace-from" "^7.10.4" - "@babel/plugin-proposal-json-strings" "^7.10.4" - "@babel/plugin-proposal-logical-assignment-operators" "^7.11.0" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.10.4" - "@babel/plugin-proposal-numeric-separator" "^7.10.4" - "@babel/plugin-proposal-object-rest-spread" "^7.11.0" - "@babel/plugin-proposal-optional-catch-binding" "^7.10.4" - "@babel/plugin-proposal-optional-chaining" "^7.11.0" - "@babel/plugin-proposal-private-methods" "^7.10.4" - "@babel/plugin-proposal-unicode-property-regex" "^7.10.4" + "@babel/helper-validator-option" "^7.12.1" + "@babel/plugin-proposal-async-generator-functions" "^7.12.1" + "@babel/plugin-proposal-class-properties" "^7.12.1" + "@babel/plugin-proposal-dynamic-import" "^7.12.1" + "@babel/plugin-proposal-export-namespace-from" "^7.12.1" + "@babel/plugin-proposal-json-strings" "^7.12.1" + "@babel/plugin-proposal-logical-assignment-operators" "^7.12.1" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.12.1" + "@babel/plugin-proposal-numeric-separator" "^7.12.1" + "@babel/plugin-proposal-object-rest-spread" "^7.12.1" + "@babel/plugin-proposal-optional-catch-binding" "^7.12.1" + "@babel/plugin-proposal-optional-chaining" "^7.12.1" + "@babel/plugin-proposal-private-methods" "^7.12.1" + "@babel/plugin-proposal-unicode-property-regex" "^7.12.1" "@babel/plugin-syntax-async-generators" "^7.8.0" - "@babel/plugin-syntax-class-properties" "^7.10.4" + "@babel/plugin-syntax-class-properties" "^7.12.1" "@babel/plugin-syntax-dynamic-import" "^7.8.0" "@babel/plugin-syntax-export-namespace-from" "^7.8.3" "@babel/plugin-syntax-json-strings" "^7.8.0" @@ -802,45 +767,42 @@ "@babel/plugin-syntax-object-rest-spread" "^7.8.0" "@babel/plugin-syntax-optional-catch-binding" "^7.8.0" "@babel/plugin-syntax-optional-chaining" "^7.8.0" - "@babel/plugin-syntax-top-level-await" "^7.10.4" - "@babel/plugin-transform-arrow-functions" "^7.10.4" - "@babel/plugin-transform-async-to-generator" "^7.10.4" - "@babel/plugin-transform-block-scoped-functions" "^7.10.4" - "@babel/plugin-transform-block-scoping" "^7.10.4" - "@babel/plugin-transform-classes" "^7.10.4" - "@babel/plugin-transform-computed-properties" "^7.10.4" - "@babel/plugin-transform-destructuring" "^7.10.4" - "@babel/plugin-transform-dotall-regex" "^7.10.4" - "@babel/plugin-transform-duplicate-keys" "^7.10.4" - "@babel/plugin-transform-exponentiation-operator" "^7.10.4" - "@babel/plugin-transform-for-of" "^7.10.4" - "@babel/plugin-transform-function-name" "^7.10.4" - "@babel/plugin-transform-literals" "^7.10.4" - "@babel/plugin-transform-member-expression-literals" "^7.10.4" - "@babel/plugin-transform-modules-amd" "^7.10.4" - "@babel/plugin-transform-modules-commonjs" "^7.10.4" - "@babel/plugin-transform-modules-systemjs" "^7.10.4" - "@babel/plugin-transform-modules-umd" "^7.10.4" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.10.4" - "@babel/plugin-transform-new-target" "^7.10.4" - "@babel/plugin-transform-object-super" "^7.10.4" - "@babel/plugin-transform-parameters" "^7.10.4" - "@babel/plugin-transform-property-literals" "^7.10.4" - "@babel/plugin-transform-regenerator" "^7.10.4" - "@babel/plugin-transform-reserved-words" "^7.10.4" - "@babel/plugin-transform-shorthand-properties" "^7.10.4" - "@babel/plugin-transform-spread" "^7.11.0" - "@babel/plugin-transform-sticky-regex" "^7.10.4" - "@babel/plugin-transform-template-literals" "^7.10.4" - "@babel/plugin-transform-typeof-symbol" "^7.10.4" - "@babel/plugin-transform-unicode-escapes" "^7.10.4" - "@babel/plugin-transform-unicode-regex" "^7.10.4" + "@babel/plugin-syntax-top-level-await" "^7.12.1" + "@babel/plugin-transform-arrow-functions" "^7.12.1" + "@babel/plugin-transform-async-to-generator" "^7.12.1" + "@babel/plugin-transform-block-scoped-functions" "^7.12.1" + "@babel/plugin-transform-block-scoping" "^7.12.1" + "@babel/plugin-transform-classes" "^7.12.1" + "@babel/plugin-transform-computed-properties" "^7.12.1" + "@babel/plugin-transform-destructuring" "^7.12.1" + "@babel/plugin-transform-dotall-regex" "^7.12.1" + "@babel/plugin-transform-duplicate-keys" "^7.12.1" + "@babel/plugin-transform-exponentiation-operator" "^7.12.1" + "@babel/plugin-transform-for-of" "^7.12.1" + "@babel/plugin-transform-function-name" "^7.12.1" + "@babel/plugin-transform-literals" "^7.12.1" + "@babel/plugin-transform-member-expression-literals" "^7.12.1" + "@babel/plugin-transform-modules-amd" "^7.12.1" + "@babel/plugin-transform-modules-commonjs" "^7.12.1" + "@babel/plugin-transform-modules-systemjs" "^7.12.1" + "@babel/plugin-transform-modules-umd" "^7.12.1" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.12.1" + "@babel/plugin-transform-new-target" "^7.12.1" + "@babel/plugin-transform-object-super" "^7.12.1" + "@babel/plugin-transform-parameters" "^7.12.1" + "@babel/plugin-transform-property-literals" "^7.12.1" + "@babel/plugin-transform-regenerator" "^7.12.1" + "@babel/plugin-transform-reserved-words" "^7.12.1" + "@babel/plugin-transform-shorthand-properties" "^7.12.1" + "@babel/plugin-transform-spread" "^7.12.1" + "@babel/plugin-transform-sticky-regex" "^7.12.1" + "@babel/plugin-transform-template-literals" "^7.12.1" + "@babel/plugin-transform-typeof-symbol" "^7.12.1" + "@babel/plugin-transform-unicode-escapes" "^7.12.1" + "@babel/plugin-transform-unicode-regex" "^7.12.1" "@babel/preset-modules" "^0.1.3" - "@babel/types" "^7.11.5" - browserslist "^4.12.0" + "@babel/types" "^7.12.1" core-js-compat "^3.6.2" - invariant "^2.2.2" - levenary "^1.1.1" semver "^5.5.0" "@babel/preset-modules@^0.1.3": @@ -885,7 +847,7 @@ globals "^11.1.0" lodash "^4.17.19" -"@babel/types@^7.10.4", "@babel/types@^7.11.0", "@babel/types@^7.11.5", "@babel/types@^7.12.1", "@babel/types@^7.4.4": +"@babel/types@^7.10.4", "@babel/types@^7.11.0", "@babel/types@^7.12.1", "@babel/types@^7.4.4": version "7.12.1" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.12.1.tgz#e109d9ab99a8de735be287ee3d6a9947a190c4ae" integrity sha512-BzSY3NJBKM4kyatSOWh3D/JJ2O3CVzBybHWxtgxnggaxEuaSTTDqeiSb/xk9lrkw2Tbqyivw5ZU4rT+EfznQsA== @@ -6025,13 +5987,6 @@ into-stream@^3.1.0: from2 "^2.1.1" p-is-promise "^1.1.0" -invariant@^2.2.2, invariant@^2.2.4: - version "2.2.4" - resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" - integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== - dependencies: - loose-envify "^1.0.0" - invert-kv@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" @@ -6531,7 +6486,7 @@ js-base64@^2.1.8, js-base64@^2.1.9: resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.5.2.tgz#313b6274dda718f714d00b3330bbae6e38e90209" integrity sha512-Vg8czh0Q7sFBSUMWWArX/miJeBWYBPpdU/3M/DKSaekLMqrqVPaedp+5mZhie/r0lgrcaYBfwXatEew6gwgiQQ== -"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: +js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== @@ -6729,18 +6684,6 @@ leven@^2.1.0: resolved "https://registry.yarnpkg.com/leven/-/leven-2.1.0.tgz#c2e7a9f772094dee9d34202ae8acce4687875580" integrity sha1-wuep93IJTe6dNCAq6KzORoeHVYA= -leven@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" - integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== - -levenary@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/levenary/-/levenary-1.1.1.tgz#842a9ee98d2075aa7faeedbe32679e9205f46f77" - integrity sha512-mkAdOIt79FD6irqjYSs4rdbnlT5vRonMEvBVPVb3XmevfS8kgRXwfes0dhPdEtzTWD/1eNE/Bm/G1iRt6DcnQQ== - dependencies: - leven "^3.1.0" - levn@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" @@ -7086,13 +7029,6 @@ longest@^1.0.0: resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097" integrity sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc= -loose-envify@^1.0.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" - integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== - dependencies: - js-tokens "^3.0.0 || ^4.0.0" - loud-rejection@^1.0.0: version "1.6.0" resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" @@ -9743,10 +9679,10 @@ regexpp@^3.1.0: resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.1.0.tgz#206d0ad0a5648cffbdb8ae46438f3dc51c9f78e2" integrity sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q== -regexpu-core@^4.7.0: - version "4.7.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.7.0.tgz#fcbf458c50431b0bb7b45d6967b8192d91f3d938" - integrity sha512-TQ4KXRnIn6tz6tjnrXEkD/sshygKH/j5KzK86X8MkeHyZ8qst/LZ89j3X4/8HEIfHANTFIP/AbXakeRhWIl5YQ== +regexpu-core@^4.7.1: + version "4.7.1" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.7.1.tgz#2dea5a9a07233298fbf0db91fa9abc4c6e0f8ad6" + integrity sha512-ywH2VUraA44DZQuRKzARmw6S66mr48pQVva4LBeRhcOltJ6hExvWly5ZjFLYo67xbIxb6W1q4bAGtgfEl20zfQ== dependencies: regenerate "^1.4.0" regenerate-unicode-properties "^8.2.0" From 24a60254464da7351c5368821dbb8df9a125c4b9 Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Tue, 20 Oct 2020 09:57:52 +0000 Subject: [PATCH 311/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index e5bca02d52..dab49184dd 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -702,7 +702,7 @@ "LabelNewsCategories": "Chuyên mục tin tức:", "LabelStable": "Ổn Định", "LabelTonemappingAlgorithm": "Chọn thuật toán ánh xạ tông màu để sử dụng:", - "TonemappingAlgorithmHelp": "Ánh xạ tông màu có thể được tinh chỉnh. Nếu bạn không quen với tùy chọn này, hãy giữ mặc định. Giá trị mặc định: Reinhard.", + "TonemappingAlgorithmHelp": "Có thể điều chỉnh bố trí sắc thái. Nếu bạn không hiểu tùy chọn này, hãy giữ mặc định. Giá trị mặc định: Reinhard.", "TonemappingRangeHelp": "Chọn dải màu đầu ra. Tự động nghĩa là giống như dải màu đầu vào.", "StopPlayback": "Dừng Phát", "Preview": "Xem Trước", From a4b730f6cbac33b09c9e42de5e1920ab5222207e Mon Sep 17 00:00:00 2001 From: Nyanmisaka <799610810@qq.com> Date: Tue, 20 Oct 2020 11:20:29 +0000 Subject: [PATCH 312/365] Translated using Weblate (Chinese (Simplified)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/zh_Hans/ --- src/strings/zh-cn.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings/zh-cn.json b/src/strings/zh-cn.json index 086ab952e2..8ddd4efd05 100644 --- a/src/strings/zh-cn.json +++ b/src/strings/zh-cn.json @@ -1349,7 +1349,7 @@ "LabelOpenclDevice": "OpenCL 设备:", "LabelOpenclDeviceHelp": "此 OpenCL 设备用来色调映射。点的左侧为平台号,右侧为此平台上的设备号。默认值为 0.0。需要包含 OpenCL 硬件加速方式的 FFmpeg 应用程序。", "EnableTonemapping": "启用色调映射", - "AllowTonemappingHelp": "色调映射可以将视频的动态范围从 HDR 变换成 SDR,同时保持图像细节与颜色等对于表现原始场景非常重要的信息。目前仅在转码内嵌 HDR10 或 HLG 元数据的视频时工作。如果播放不顺畅或失败,请考虑关闭对应的硬件解码器。", + "AllowTonemappingHelp": "色调映射可以将视频的动态范围从 HDR 变换成 SDR,同时保持图像细节与颜色等对于表现原始场景非常重要的信息。目前仅在转码内嵌 HDR10 或 HLG 元数据的视频时生效。如果播放不顺畅或失败,请考虑关闭对应的硬件解码器。", "LabelTonemappingAlgorithm": "选择要使用的色调映射算法:", "TonemappingAlgorithmHelp": "色调映射可以微调。如果你不是很熟悉这些选项,保持默认即可。建议值为 Reinhard。", "LabelTonemappingRange": "色调映射 Range:", From 57c8cd38d3d7262c4e8e4b24c65b30eb3b0ab19c Mon Sep 17 00:00:00 2001 From: Panopoulos Andreas Date: Wed, 21 Oct 2020 18:09:02 +0000 Subject: [PATCH 313/365] Translated using Weblate (Greek) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/el/ --- src/strings/el.json | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/src/strings/el.json b/src/strings/el.json index d96bd4146b..0140b0646b 100644 --- a/src/strings/el.json +++ b/src/strings/el.json @@ -42,7 +42,7 @@ "Box": "Κουτί", "Browse": "Αναζήτηση", "MessageBrowsePluginCatalog": "Πλοηγηθείτε στον κατάλογο plugin μας για να δείτε τα διαθέσιμα plugins.", - "BurnSubtitlesHelp": "Καθορίζει αν ο διακομιστής πρέπει να εγγράψει τους υπότιτλους κατά τη μετατροπή βίντεο ανάλογα με τη μορφή των υπότιτλων. Η αποφυγή της εγγραφής στους υπότιτλους θα βελτιώσει την απόδοση του διακομιστή. Επιλέξτε Αυτόματα για να εγγράψετε μορφές βασισμένες σε εικόνες (VOBSUB, PGS, SUB / IDX κ.λπ.) και ορισμένους υπότιτλους ASS / SSA.", + "BurnSubtitlesHelp": "Καθορίζει αν ο διακομιστής πρέπει να εγγράψει τους υπότιτλους κατά τη μετατροπή βίντεο . Η αποφυγή της εγγραφής στους υπότιτλους θα βελτιώσει την απόδοση του διακομιστή. Επιλέξτε Αυτόματα για να εγγράψετε μορφές βασισμένες σε εικόνες (VOBSUB, PGS, SUB / IDX κ.λπ.) και ορισμένους υπότιτλους ASS / SSA.", "ButtonAddMediaLibrary": "Προσθήκη βιβλιοθήκης πολυμέσων", "ButtonAddScheduledTaskTrigger": "Προσθήκη διακόπτη", "ButtonAddServer": "Προσθήκη διακομιστή", @@ -99,7 +99,7 @@ "ColorTransfer": "Μεταφορά χρώματος", "CommunityRating": "Βαθμολογία Κοινότητας", "Composer": "Συνθέτης", - "ConfigureDateAdded": "Ρυθμίστε τη ρύθμιση του τρόπου με τον οποίο προσδιορίζεται η ημερομηνία προσθήκης στον πίνακα ελέγχου του Jellyfin Server στις Ρυθμίσεις βιβλιοθήκης", + "ConfigureDateAdded": "Διαμορφώστε τον τρόπο καθορισμού της ημερομηνίας προσθήκης στον πίνακα ελέγχου στις ρυθμίσεις της βιβλιοθήκης", "ConfirmDeleteImage": "Διαγραφή εικόνας;", "ConfirmDeleteItem": "Η διαγραφή αυτού του στοιχείου θα το διαγράψει τόσο από το σύστημα αρχείων όσο και από τη βιβλιοθήκη πολυμέσων σας. Είστε βέβαιοι ότι θέλετε να συνεχίσετε;", "ConfirmDeleteItems": "Η διαγραφή αυτών των στοιχείων θα τα διαγράψει τόσο από το σύστημα αρχείων όσο και από τη βιβλιοθήκη πολυμέσων σας. Είστε βέβαιοι ότι θέλετε να συνεχίσετε;", @@ -131,7 +131,7 @@ "DeviceAccessHelp": "Αυτό ισχύει μόνο για συσκευές που μπορούν να αναγνωριστούν με μοναδικό τρόπο και δεν θα εμποδίσουν την πρόσβαση του προγράμματος περιήγησης. Το φιλτράρισμα της πρόσβασης των συσκευών χρήστη θα αποτρέψει τη χρήση νέων συσκευών μέχρι να εγκριθούν εδώ.", "DirectPlaying": "Απευθείας Αναπαραγωγή", "DirectStreamHelp1": "το μέσο είναι συμβατό με τη συσκευή σε σχέση με την ανάλυση και τον τύπο μέσου (H.264, AC3 κ.λπ.), αλλά βρίσκεται σε μη συμβατό περιέκτη αρχείων (.mkv, .avi, .wmv, κ.λπ.). Το βίντεο θα ανασυγκροτηθεί εκ νέου, πριν μεταφερθεί στη συσκευή.", - "DirectStreamHelp2": "Η άμεση ροή ενός αρχείου χρησιμοποιεί ελάχιστη ισχύ επεξεργασίας χωρίς απώλεια της ποιότητας του βίντεο.", + "DirectStreamHelp2": "Η άμεση ροή χρησιμοποιεί πολύ μικρή ισχύ επεξεργασίας με ελάχιστη απώλεια ποιότητας βίντεο.", "DirectStreaming": "Απευθείας Αναμετάδοση", "Director": "Σκηνοθέτης", "Directors": "Σκηνοθέτες", @@ -142,25 +142,25 @@ "DisplayInOtherHomeScreenSections": "Εμφάνιση στα τμήματα της αρχικής οθόνης, όπως τα πιο πρόσφατα πολυμέσα και συνεχίστε να παρακολουθείτε", "DisplayMissingEpisodesWithinSeasons": "Εμφάνιση επεισοδίων που λείπουν από την σαιζόν", "DisplayMissingEpisodesWithinSeasonsHelp": "Αυτό πρέπει επίσης να είναι ενεργοποιημένο για τις βιβλιοθήκες τηλεόρασης στην ρύθμιση του σέρβερ.", - "DisplayModeHelp": "Επιλέξτε τον τύπο οθόνης στον οποίο εκτελείτε το Jellyfin.", + "DisplayModeHelp": "Επιλέξτε το στυλ διάταξης που θέλετε για τη διεπαφή.", "DoNotRecord": "Μην εγγράψεις", "Down": "Κάτω", "Download": "Λήψη", "DownloadsValue": "Λήψεις: {0}", "DropShadow": "Σκίαση", - "EasyPasswordHelp": "Ο εύκολος κωδικός PIN χρησιμοποιείται για πρόσβαση χωρίς σύνδεση με υποστηριζόμενες εφαρμογές Jellyfin και μπορεί επίσης να χρησιμοποιηθεί για εύκολη είσοδο στο δίκτυο.", + "EasyPasswordHelp": "Ο εύκολος κωδικός pin σας χρησιμοποιείται για πρόσβαση εκτός σύνδεσης σε υποστηριζόμενους πελάτες και μπορεί επίσης να χρησιμοποιηθεί για εύκολη σύνδεση στο δίκτυο.", "Edit": "Επεξεργασία", "EditImages": "Επεξεργασία εικόνων", "EditMetadata": "Επεξεργασία μεταδεδομένων", "EditSubtitles": "Επεξεργασία υποτίτλων", "EnableBackdropsHelp": "Eμφάνιση φόντων στο παρασκήνιο ορισμένων σελίδων κατά την περιήγηση στη βιβλιοθήκη.", "EnableCinemaMode": "Λειτουργία Κινηματογράφου", - "EnableColorCodedBackgrounds": "Ενεργοποιήστε τα έγχρωμα κωδικοποιημένα φόντα", - "EnableDisplayMirroring": "Ενεργοποίηση του κατοπτρισμού εμφάνισης", - "EnableExternalVideoPlayers": "Εξωτερικά players για βίντεο", + "EnableColorCodedBackgrounds": "Έγχρωμα κωδικοποιημένα φόντα", + "EnableDisplayMirroring": "αντικατοπτρισμός οθόνης", + "EnableExternalVideoPlayers": "Εξωτερικά προγράμματα αναπαραγωγής βίντεο", "EnableExternalVideoPlayersHelp": "Ένα εξωτερικό μενού αναπαραγωγής θα εμφανιστεί κατά την εκκίνηση της αναπαραγωγής βίντεο.", "EnableHardwareEncoding": "Ενεργοποίηση αποκωδικοποίησης υλικού", - "EnableNextVideoInfoOverlay": "Ενεργοποιήστε τις επόμενες πληροφορίες βίντεο κατά την αναπαραγωγή", + "EnableNextVideoInfoOverlay": "Εμφάνιση πληροφοριών επόμενου βίντεο κατά την αναπαραγωγή", "EnableNextVideoInfoOverlayHelp": "Στο τέλος ενός βίντεο, εμφανίστε πληροφορίες σχετικά με το επόμενο βίντεο που εμφανίζεται στην τρέχουσα λίστα αναπαραγωγής.", "EnableThemeSongsHelp": "Αν είναι ενεργοποιημένη, τα τραγούδια θεμάτων θα αναπαραχθούν στο παρασκήνιο κατά την περιήγηση στη βιβλιοθήκη.", "EnableThemeVideosHelp": "Αν είναι ενεργοποιημένη, τα βίντεο θεμάτων θα αναπαραχθούν στο παρασκήνιο κατά την περιήγηση στη βιβλιοθήκη.", @@ -1051,5 +1051,10 @@ "ClientSettings": "Ρυθμίσεις πελάτη", "ChangingMetadataImageSettingsNewContent": "Οι αλλαγές στις ρυθμίσεις λήψης μεταδεδομένων ή εικόνων θα εφαρμοστούν μόνο στο νέο περιεχόμενο που προστίθεται στη βιβλιοθήκη σας. Για να εφαρμόσετε τις αλλαγές στους υπάρχοντες τίτλους, θα πρέπει να ανανεώσετε τα μεταδεδομένα τους χειροκίνητα.", "ButtonActivate": "Ενεργοποίηση", - "Authorize": "Εξουσιοδότηση" + "Authorize": "Εξουσιοδότηση", + "EnableQuickConnect": "Ενεργοποιήστε τη γρήγορη σύνδεση σε αυτόν τον διακομιστή", + "EnableDecodingColorDepth10Vp9": "Ενεργοποίηση αποκωδικοποίησης υλικού 10-bit για το VP9", + "EnableDecodingColorDepth10Hevc": "Ενεργοποίηση αποκωδικοποίησης υλικού 10-bit για HEVC", + "EnableAutoCast": "Ορίσετε ως προεπιλογή", + "ButtonUseQuickConnect": "Χρήση γρήγορης σύνδεσης" } From 2ec0f9e153b8839bd46960c25e713e0475aefd55 Mon Sep 17 00:00:00 2001 From: Dmitriy Bezmelnitsin Date: Wed, 21 Oct 2020 20:52:02 +0000 Subject: [PATCH 314/365] Translated using Weblate (Russian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ru/ --- src/strings/ru.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/ru.json b/src/strings/ru.json index b8566fc82a..b7da6f581c 100644 --- a/src/strings/ru.json +++ b/src/strings/ru.json @@ -1409,5 +1409,6 @@ "EnableAutoCast": "Задать по умолчанию", "ButtonUseQuickConnect": "Использовать Quick Connect", "ButtonActivate": "Активация", - "Authorize": "Авторизация" + "Authorize": "Авторизация", + "LabelUserMaxActiveSessions": "Максимальное количество одновременных пользовательских сессий:" } From d8f8f417a371e9bf309f4d326e1188372a46ff47 Mon Sep 17 00:00:00 2001 From: sHa Date: Thu, 22 Oct 2020 07:46:17 +0000 Subject: [PATCH 315/365] Translated using Weblate (Ukrainian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/uk/ --- src/strings/uk.json | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/strings/uk.json b/src/strings/uk.json index 75bee799e4..31745557ca 100644 --- a/src/strings/uk.json +++ b/src/strings/uk.json @@ -229,7 +229,7 @@ "ErrorDefault": "Виникла помилка при обробці запиту. Будь-ласка повторіть пізніше.", "DatePlayed": "Дата програвання", "DateAdded": "Дата додана", - "Default": "За замовчуванням", + "Default": "Типово", "Delete": "Видалити", "DeleteImage": "Видалити зображення", "DeleteMedia": "Видалити медіа", @@ -241,5 +241,9 @@ "Directors": "Режисери", "Disc": "Диск", "Display": "Дисплей", - "Disconnect": "Відключити" + "Disconnect": "Відключити", + "DeleteImageConfirmation": "Ви впевнені, що хочете видалити це зображення?", + "DeleteDeviceConfirmation": "Ви впевнені, що хочете видалити цей пристрій? Він з’явиться наступного разу, коли користувач увійде.", + "ButtonActivate": "Активувати", + "Authorize": "Авторизувати" } From 3bd06ea5b3a29edf5be43afc11053dc5f6882578 Mon Sep 17 00:00:00 2001 From: sHa Date: Thu, 22 Oct 2020 07:50:30 +0000 Subject: [PATCH 316/365] Translated using Weblate (Ukrainian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/uk/ --- src/strings/uk.json | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/strings/uk.json b/src/strings/uk.json index 31745557ca..3156bdc995 100644 --- a/src/strings/uk.json +++ b/src/strings/uk.json @@ -225,7 +225,7 @@ "Download": "Завантажити", "Down": "Вниз", "DoNotRecord": "Не записувати", - "Depressed": "Подавлений", + "Depressed": "Пригнічений", "ErrorDefault": "Виникла помилка при обробці запиту. Будь-ласка повторіть пізніше.", "DatePlayed": "Дата програвання", "DateAdded": "Дата додана", @@ -234,7 +234,7 @@ "DeleteImage": "Видалити зображення", "DeleteMedia": "Видалити медіа", "DeleteUser": "Видалити користувача", - "Desktop": "Робочий стіл", + "Desktop": "Стільниця", "DetectingDevices": "Виявлення пристроїв", "DirectStreaming": "Пряме мовлення", "Director": "Режисер", @@ -245,5 +245,12 @@ "DeleteImageConfirmation": "Ви впевнені, що хочете видалити це зображення?", "DeleteDeviceConfirmation": "Ви впевнені, що хочете видалити цей пристрій? Він з’явиться наступного разу, коли користувач увійде.", "ButtonActivate": "Активувати", - "Authorize": "Авторизувати" + "Authorize": "Авторизувати", + "EndsAtValue": "Завершиться о {0}", + "EnableAutoCast": "Встановити як типовий", + "DisplayMissingEpisodesWithinSeasons": "Відображати відсутні серії сезону", + "DirectPlaying": "Пряме відтворення", + "DisplayInMyMedia": "Відображення на головному екрані", + "Descending": "За спаданням", + "DeleteUserConfirmation": "Ви впевнені, що хочете видалити цього користувача?" } From 014a97ef97c8f413e00ed76ed8f8f0080c7c18cd Mon Sep 17 00:00:00 2001 From: sHa Date: Thu, 22 Oct 2020 11:36:01 +0000 Subject: [PATCH 317/365] Translated using Weblate (Ukrainian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/uk/ --- src/strings/uk.json | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/strings/uk.json b/src/strings/uk.json index 3156bdc995..e740d5afe6 100644 --- a/src/strings/uk.json +++ b/src/strings/uk.json @@ -252,5 +252,14 @@ "DirectPlaying": "Пряме відтворення", "DisplayInMyMedia": "Відображення на головному екрані", "Descending": "За спаданням", - "DeleteUserConfirmation": "Ви впевнені, що хочете видалити цього користувача?" + "DeleteUserConfirmation": "Ви впевнені, що хочете видалити цього користувача?", + "HeaderAddToCollection": "Додати до колекції", + "HeaderActivity": "Активність", + "Other": "Інше", + "Genre": "Жанр", + "Friday": "П'ятниця", + "FormatValue": "Формат: {0}", + "Filters": "Фільтри", + "FileNotFound": "Файл не знайдено.", + "File": "Файл" } From d43913ad0245768fa803e6bd62f1f4e2f52fcbda Mon Sep 17 00:00:00 2001 From: SHALMON ANANDAS Date: Fri, 23 Oct 2020 02:57:46 +0000 Subject: [PATCH 318/365] Translated using Weblate (Hindi) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/hi/ --- src/strings/hi-in.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings/hi-in.json b/src/strings/hi-in.json index 5e26c9ad69..2095c3a642 100644 --- a/src/strings/hi-in.json +++ b/src/strings/hi-in.json @@ -24,7 +24,7 @@ "AllComplexFormats": "सभी जटिल प्रारूप (ASS, SSA, VOBSUB, PGS, SUB, IDX,…)", "AllChannels": "सभी चैनल्स", "Alerts": "चेतावनियां", - "Albums": "संग्रहिकाएँ", + "Albums": "आल्बुम्", "Aired": "प्रसारित हो चुका", "AdditionalNotificationServices": "अतिरिक्त सूचना सेवाओं को स्थापित करने के लिए प्लगइन सूची पर नज़र डालें।", "AddedOnValue": "जोड़ दिया", From b0df7fc6bf966156d8244b23ec0dae7ed20825f1 Mon Sep 17 00:00:00 2001 From: Pietro Iuliano Date: Thu, 22 Oct 2020 22:55:24 +0000 Subject: [PATCH 319/365] Translated using Weblate (Italian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/it/ --- src/strings/it.json | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/strings/it.json b/src/strings/it.json index 365e3b0b9d..b900a79d52 100644 --- a/src/strings/it.json +++ b/src/strings/it.json @@ -1401,5 +1401,15 @@ "OptionMaxActiveSessionsHelp": "Il valore 0 disabilita la funzionalità.", "OptionMaxActiveSessions": "Imposta il numero massimo di connessioni utente simultanee.", "LabelUserMaxActiveSessions": "Numero massimo di sessioni utente contemporanee:", - "EnableAutoCast": "Imposta come Default" + "EnableAutoCast": "Imposta come Default", + "LabelTonemappingDesat": "Desaturazione appatura dei toni:", + "TonemappingRangeHelp": "Seleziona l'intervallo di colore in uscita. Auto imposta lo stesso del valore di entrata.", + "LabelTonemappingRange": "Intervallo mappatura dei toni:", + "TonemappingAlgorithmHelp": "La mappatura dei toni può essere messa a punto. Se non sei abbastanza familiare con queste opzioni, lascia quelle predefinite. Il valore raccomandato è Reinhard.", + "AllowTonemappingHelp": "La mappatura dei toni può trasformare l'intervallo dinamico di un video da HDR a SDR mantenendo dettaglio e colori dell'immagine, i quali sono informazioni molto importanti per rappresentare la scena originale. Attualmente funziona solo quando vengono transcodificati video con HDR10 o metadati HLG incorporati. Se la riproduzione non è fluida o fallisce, considera la possibilità di disattivare il corrispondente decoder hardware.", + "LabelOpenclDeviceHelp": "Questo è il dispositivo OpenCL utilizzato per la mappatura dei toni. Il lato sinistro del punto è il numero di piattaforma, mentre la parte destra è il numero del dispositivo sulla piattaforma. Il valore base è 0.0. Il file di applicazione ffmpeg contenente il metodo di accelerazione hardware OpenCL è richiesto.", + "LabelColorPrimaries": "Primari colore:", + "LabelColorTransfer": "Trasferimento colore:", + "MediaInfoColorPrimaries": "Colori primari", + "MediaInfoColorTransfer": "Trasferimento colore" } From 31683efea99e7d05b598f78703081f1b1baf0e5d Mon Sep 17 00:00:00 2001 From: Gubb Jonas Date: Fri, 23 Oct 2020 18:08:45 +0000 Subject: [PATCH 320/365] Translated using Weblate (Swedish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/sv/ --- src/strings/sv.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/strings/sv.json b/src/strings/sv.json index 5b10629318..6c1dcdcfcc 100644 --- a/src/strings/sv.json +++ b/src/strings/sv.json @@ -1376,5 +1376,7 @@ "QuickConnect": "Snabbanslutning", "Profile": "Profil", "PreviousTrack": "Hoppa över till föregående", - "MessageGetInstalledPluginsError": "Ett fel inträffade när listan över installerade tillägg skulle hämtas." + "MessageGetInstalledPluginsError": "Ett fel inträffade när listan över installerade tillägg skulle hämtas.", + "QuickConnectInvalidCode": "Ogiltig Snabbanslutningskod", + "QuickConnectDescription": "För att logga in med snabbanslutning, klicka på Snabbanslutning-knappen på den enhet du loggar in från, och ange koden som visas nedan." } From 6ca5d0b7d7cd29e2faf81b1b442b86d329c4e2bf Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Sat, 24 Oct 2020 05:13:39 +0000 Subject: [PATCH 321/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index dab49184dd..42bbe3b3f1 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -34,8 +34,8 @@ "LabelName": "Tên:", "LabelNewPassword": "Mật khẩu mới:", "LabelNewPasswordConfirm": "Xác nhận mật khẩu mới:", - "LabelSaveLocalMetadata": "Lưu các ảnh bìa phim và dữ liệu mô tả vào trong các thư mục phương tiện", - "LabelSaveLocalMetadataHelp": "Lưu ảnh bìa phim vào trong các thư mục phương tiện, sẽ đưa chúng vào một nơi có thể chỉnh sửa dễ dàng hơn.", + "LabelSaveLocalMetadata": "Lưu các ảnh bìa minh họa và dữ liệu mô tả vào trong các thư mục phương tiện", + "LabelSaveLocalMetadataHelp": "Lưu ảnh bìa minh họa vào các thư mục phương tiện giúp đưa chúng vào một nơi dễ chỉnh sửa hơn.", "LabelTime": "Thời gian:", "LabelYoureDone": "Bạn đã hoàn thành!", "MaxParentalRatingHelp": "Nội dung với đánh giá cao hơn sẽ được ẩn đi từ người dùng này.", @@ -200,7 +200,7 @@ "Channels": "Các Kênh", "ChannelNameOnly": "Chỉ kênh {0}", "ChannelAccessHelp": "Chọn những kênh để chia vẻ với người dùng này. Người quản lý sẽ có thể thay đổi toàn bộ kênh bằng cách sử dụng bộ quản lý thông tin.", - "ChangingMetadataImageSettingsNewContent": "Thay đổi về thiết lập của việc tải thông tin hoặc hình ảnh sẽ chỉ có tác dụng với những nội dung mới được thêm vào thư viện. Để những thiết lập mới có tác dụng với nội dung đã có sẵn, bạn sẽ phải cập nhật lại thông tin của chúng.", + "ChangingMetadataImageSettingsNewContent": "Thay đổi cài đặt tải xuống dữ liệu mô tả hoặc ảnh bìa minh họa chỉ áp dụng với nội dung mới thêm vào thư viện. Để áp dụng thay đổi đến các tiêu đề hiện có, bạn cần phải làm mới dữ liệu mô tả của chúng theo cách thủ công.", "CancelSeries": "Hủy loạt phim", "ButtonTogglePlaylist": "Danh sách phát", "BoxSet": "Tuyển tập", @@ -684,7 +684,7 @@ "LabelMetadataSavers": "Lưu Dữ liệu Mô Tả Dưới Dạng:", "LabelMetadataReadersHelp": "Sắp xếp thứ tự ưu tiên những dữ liệu mô tả cục bộ. Tập tin đầu tiên được tìm thấy sẽ được đọc.", "LabelMetadataReaders": "Trình đọc dữ liệu mô tả:", - "LabelMetadataPathHelp": "Chọn một đường dẫn để tải xuống hình ảnh và dữ liệu mô tả.", + "LabelMetadataPathHelp": "Chọn một vị trí tải xuống ảnh bìa minh họa và dữ liệu mô tả.", "LabelMetadataPath": "Đường dẫn dữ liệu mô tả:", "LabelMetadataDownloadersHelp": "Kích hoạt và sắp xếp thứ tự ưu tiên của các trình tải dữ liệu mô tả. Trình tải có thứ tự ưu tiên thấp sẽ chỉ sử dụng để tải những thông tin bị thiếu.", "LabelMetadataDownloadLanguage": "Ngôn ngữ tải ưu tiên:", @@ -1192,7 +1192,7 @@ "SearchResults": "Kết Quả Tìm Kiếm", "SearchForSubtitles": "Tìm kiếm phụ đề", "SearchForMissingMetadata": "Tìm kiếm dữ liệu mô tả bị thiếu", - "SearchForCollectionInternetMetadata": "Tìm kiếm ảnh bìa phim và dữ liệu mô tả trên Internet", + "SearchForCollectionInternetMetadata": "Tìm kiếm ảnh bìa minh họa và dữ liệu mô tả qua Internet", "Search": "Tìm Kiếm", "Screenshots": "Ảnh chụp màn hình", "Screenshot": "Ảnh chụp màn hình", From feccf1bbe1c2dbd653f1261fae29f1cc6b49fb0a Mon Sep 17 00:00:00 2001 From: minob Date: Sat, 24 Oct 2020 13:24:34 +0000 Subject: [PATCH 322/365] Translated using Weblate (Japanese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ja/ --- src/strings/ja.json | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/strings/ja.json b/src/strings/ja.json index 3b8ec22b10..d0cf257c86 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -948,7 +948,7 @@ "AlbumArtist": "アルバム アーティスト", "Album": "アルバム", "ButtonSyncPlay": "SyncPlay", - "DeinterlaceMethodHelp": "インターレースコンテンツをトランスコードする際に使用するデインターレース方式を選びます。", + "DeinterlaceMethodHelp": "インターレースコンテンツをソフトウェアでトランスコードする際に使用するデインターレース方式を選びます。 ハードウェアデインタレースをサポートしているハードウェアアクセラレーションが有効な場合はこの設定でなくハードウェアデインタレースを使用します。", "ButtonTogglePlaylist": "プレイリスト", "BoxSet": "ボックスセット", "AllowFfmpegThrottlingHelp": "トランスコードや remux が現在の再生位置から十分に先に進んだ場合、処理を一時停止してリソースの消費を抑えます。これは、あまり早送り・早戻しをしないで視聴する場合に便利です。再生に問題が発生した場合は、この機能をオフにしてください。", @@ -1098,5 +1098,13 @@ "LabelMaxParentalRating": "最大許容ペアレントレイティング:", "LabelKodiMetadataEnablePathSubstitutionHelp": "サーバーのパス補完を使った画像パスの補完を有効にする。", "ButtonActivate": "アクティベート", - "Authorize": "承認" + "Authorize": "承認", + "LabelAlbumArtMaxResHelp": "upnp:albumArtURIプロパティで使用されるアルバムアートの最大解像度。", + "KnownProxiesHelp": "Jellyfinインスタンスへ接続するとき使用されるコンマで区切られた既知のプロキシのIPアドレスリスト。X-Forwarded-Forヘッダを適切に使用するため必要となります。保存後に再起動が必要です。", + "Image": "画像", + "Other": "その他", + "EnableQuickConnect": "このサーバへのクイックコネクトを有効化", + "EnableAutoCast": "デフォルトとして設定", + "Data": "データ", + "ButtonUseQuickConnect": "クイックコネクトを使用" } From 04d70c3551ebc9d1f62f49d89b9fecdf0f1c0f08 Mon Sep 17 00:00:00 2001 From: minob Date: Sat, 24 Oct 2020 14:31:36 +0000 Subject: [PATCH 323/365] Translated using Weblate (Japanese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ja/ --- src/strings/ja.json | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/strings/ja.json b/src/strings/ja.json index d0cf257c86..5a96a3ecda 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -1106,5 +1106,10 @@ "EnableQuickConnect": "このサーバへのクイックコネクトを有効化", "EnableAutoCast": "デフォルトとして設定", "Data": "データ", - "ButtonUseQuickConnect": "クイックコネクトを使用" + "ButtonUseQuickConnect": "クイックコネクトを使用", + "LabelRecordingPathHelp": "デフォルトの録画保存先を指定します。空白にした場合、サーバーのプログラムデータフォルダを使用します。", + "LabelQuickConnectCode": "クイックコネクトコード:", + "LabelKnownProxies": "既知のプロキシ:", + "LabelIconMaxResHelp": "upnp:iconプロパティで使用されるアイコンの最大解像度。", + "LabelCurrentStatus": "現在の状態:" } From 4fbdcb301c35a27d248435ba7898368d6eff4b2c Mon Sep 17 00:00:00 2001 From: Carlos Romani Date: Sat, 24 Oct 2020 22:16:29 +0000 Subject: [PATCH 324/365] Translated using Weblate (Portuguese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/pt/ --- src/strings/pt.json | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/src/strings/pt.json b/src/strings/pt.json index fa9334ada9..632e2d5d8c 100644 --- a/src/strings/pt.json +++ b/src/strings/pt.json @@ -589,7 +589,7 @@ "MessageUnableToConnectToServer": "Não foi possível estabelecer ligação ao servidor. Por favor, certifique-se que o servidor está a correr e tente de novo.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "As seguintes pastas multimédia serão removidas da Biblioteca:", "MessageReenableUser": "Veja abaixo como reactivar", - "MessagePluginInstallDisclaimer": "As extensões desenvolvidas pela comunidade Jellyfin adicionam novas funcionalidades e benefícios, sendo uma óptima forma de extender a experiência de utilização do Jellyfin. Antes de instalar uma extensão, considere os impactos que pode ter no Servidor Jellyfin, como tempos de actualização da Biblioteca mais longos, adicional processamento em segundo plano e reduzida estabilidade do sistema.", + "MessagePluginInstallDisclaimer": "As extensões desenvolvidas pela comunidade Jellyfin adicionam novas funcionalidades e benefícios, sendo uma ótima forma de estender a experiência de utilização do Jellyfin. Antes de instalar uma extensão, considere os impactos que pode ter no Servidor Jellyfin, como tempos de atualização da Biblioteca mais longos, adicional processamento em segundo plano e reduzida estabilidade do sistema.", "MessagePluginConfigurationRequiresLocalAccess": "Para configurar esta extensão, inicie sessão localmente no servidor.", "MessagePleaseEnsureInternetMetadata": "Certifique-se que a transferência de metadados da Internet está activada.", "MessagePasswordResetForUsers": "As palavras-passe dos utilizadores abaixo foram repostas. Deverão utilizar o PIN de reposição de palavra-passe para fazer login.", @@ -773,8 +773,8 @@ "Disc": "Disco", "Directors": "Realização", "Director": "Realizador", - "DirectStreaming": "Reprodução directa", - "DirectStreamHelp2": "A reprodução directa de um ficheiro requer pouco processamento e não implica perda de qualidade num vídeo.", + "DirectStreaming": "Reprodução direta", + "DirectStreamHelp2": "O fluxo direto usa muito pouco poder de processamento com uma perda mínima na qualidade do vídeo.", "DirectStreamHelp1": "O tipo de multimídia (H.264, AC3, etc.) e a sua resolução são compatíveis com o dispositivo, no entanto, o formato (mkv, avi, wmv, etc.) não é. O conteúdo sera reempacotado em tempo real antes de ser enviado para o dispositivo.", "DirectPlaying": "Reprodução directa", "DeviceAccessHelp": "Apenas se aplica a dispositivos que podem ser identificados como únicos e que não impedem o acesso ao navegador. Filtrar o acesso a dispositivos a um utilizador, impede-o de utilizar novos dispositivos, até estes serem aprovados aqui.", @@ -947,7 +947,7 @@ "AddToCollection": "Adicionar à coleção", "Add": "Adicionar", "Actor": "Ator", - "AccessRestrictedTryAgainLater": "O acesso está atualmente restrito. Por favor, tente mais tarde.", + "AccessRestrictedTryAgainLater": "O acesso está atualmente restrito. Por favor, tente novamente mais tarde.", "Absolute": "Absoluto", "AlwaysPlaySubtitlesHelp": "As legendas correspondentes à preferência de idioma serão carregadas, independentemente do idioma do áudio.", "SearchForMissingMetadata": "Procurar metadados ausentes", @@ -1203,5 +1203,11 @@ "Data": "Dados", "ButtonUseQuickConnect": "Usar conexão rápida", "ButtonActivate": "Ativar", - "Authorize": "Autorizar" + "Authorize": "Autorizar", + "EnableDetailsBannerHelp": "Exibir banner no topo da página de detalhes do item.", + "EnableDetailsBanner": "Banner de Detalhes", + "EnableQuickConnect": "Ativar conexão rápida neste servidor", + "EnableDecodingColorDepth10Vp9": "Habilitar decodificação de hardware de 10 bits para VP9", + "EnableDecodingColorDepth10Hevc": "Habilitar decodificação de hardware de 10 bits para HEVC", + "EnableAutoCast": "Definir como padrão" } From 8bccf305314b505969de9399a0642f7461aeeba2 Mon Sep 17 00:00:00 2001 From: minob Date: Sun, 25 Oct 2020 01:55:31 +0000 Subject: [PATCH 325/365] Translated using Weblate (Japanese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ja/ --- src/strings/ja.json | 30 +++++++++++++++++++++++++++--- 1 file changed, 27 insertions(+), 3 deletions(-) diff --git a/src/strings/ja.json b/src/strings/ja.json index 5a96a3ecda..d18d09ade1 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -842,7 +842,7 @@ "MessageConfirmDeleteGuideProvider": "本当にこのガイドプロバイダーを削除しますか?", "MessageConfirmDeleteTunerDevice": "本当にこのデバイスを削除しますか?", "MessageConfirmRecordingCancellation": "録画を停止しますか?", - "MessageConfirmRestart": "本当にこのJekkyfinサーバーを再起動しますか?", + "MessageConfirmRestart": "本当にJellyfinを再起動しますか?", "MessageConfirmShutdown": "本当にこのサーバーをシャットダウンしますか?", "MessageDeleteTaskTrigger": "本当にこのタスクトリガーを削除しますか?", "MessageNoAvailablePlugins": "利用可能なプラグインはありません。", @@ -948,7 +948,7 @@ "AlbumArtist": "アルバム アーティスト", "Album": "アルバム", "ButtonSyncPlay": "SyncPlay", - "DeinterlaceMethodHelp": "インターレースコンテンツをソフトウェアでトランスコードする際に使用するデインターレース方式を選びます。 ハードウェアデインタレースをサポートしているハードウェアアクセラレーションが有効な場合はこの設定でなくハードウェアデインタレースを使用します。", + "DeinterlaceMethodHelp": "インターレースコンテンツをソフトウェアでトランスコードする際に使用するデインターレース方式を選びます。 ハードウェアデインターレースをサポートしているハードウェアアクセラレーションが有効な場合はこの設定でなくハードウェアデインターレースを使用します。", "ButtonTogglePlaylist": "プレイリスト", "BoxSet": "ボックスセット", "AllowFfmpegThrottlingHelp": "トランスコードや remux が現在の再生位置から十分に先に進んだ場合、処理を一時停止してリソースの消費を抑えます。これは、あまり早送り・早戻しをしないで視聴する場合に便利です。再生に問題が発生した場合は、この機能をオフにしてください。", @@ -1111,5 +1111,29 @@ "LabelQuickConnectCode": "クイックコネクトコード:", "LabelKnownProxies": "既知のプロキシ:", "LabelIconMaxResHelp": "upnp:iconプロパティで使用されるアイコンの最大解像度。", - "LabelCurrentStatus": "現在の状態:" + "LabelCurrentStatus": "現在の状態:", + "MessageConfirmRevokeApiKey": "本当にこのAPI キーを取り消してよろしいですか?アプリケーションによるサーバー接続が突然終了します。", + "MessageConfirmRemoveMediaLocation": "本当にこのロケーションを削除してよろしいですか?", + "MessageConfirmAppExit": "終了しますか?", + "MediaIsBeingConverted": "再生中のデバイスに対応するフォーマットへメディアの変換を開始しました。", + "MediaInfoRefFrames": "参照フレーム", + "MediaInfoInterlaced": "インターレース", + "MediaInfoForced": "強制", + "MediaInfoContainer": "コンテナ", + "MaxParentalRatingHelp": "高いレイティングのコンテンツをユーザーから隠します。", + "LibraryAccessHelp": "ユーザーと共有するライブラリを選択してください。管理者はメタデータマネージャを使用してすべてのフォルダーを編集できます。", + "LanNetworksHelp": "帯域制限を設ける際にローカルネットワークと見なすIPアドレスまたはIP/ネットマスクのコンマで分割されるリストです。設定されている場合、他のすべてのIPアドレスは外部ネットワークと見なされて外部帯域制限の対象となります。空白の場合、サーバーのサブネットのみがローカルネットワークと見なされます。", + "LabelXDlnaDocHelp": "urn:schemas-dlna-org:device-1-0 ネームスペース内のX_DLNADOC エレメントのコンテンツを決定します。", + "LabelXDlnaCapHelp": "urn:schemas-dlna-org:device-1-0 ネームスペース内のX_DLNACAP エレメントのコンテンツを決定します。", + "LabelVaapiDeviceHelp": "ハードウェアアクセラレーションに使用されるレンダーノードです。", + "LabelUserMaxActiveSessions": "同時ユーザーセッション数の最大:", + "LabelTranscodingThreadCountHelp": "トランスコードで使用する最大スレッド数を選択します。スレッド数を減らすとCPU使用率が下がりますがスムーズに再生できる変換速度ではなくなるかもしれません。", + "LabelTranscodingTempPathHelp": "クライアントへ提供するトランスコードファイルのカスタムパスを指定します。空白にした場合はサーバのデフォルトを使用します。", + "LabelSonyAggregationFlagsHelp": "urn:schemas-sonycom:av ネームスペース内のaggregationFlags エレメントのコンテンツを決定します。", + "LabelSkipIfGraphicalSubsPresentHelp": "テキストバージョンの字幕を維持することで配信が効率的になりビデオをトランスコードする可能性も減ります。", + "LabelSkipIfAudioTrackPresentHelp": "チェックを外すと音声言語に関係なくすべてのビデオで字幕を確認します。", + "LabelSelectFolderGroupsHelp": "チェックのないフォルダはそのまま表示されます。", + "LabelSelectFolderGroups": "以下のフォルダ内のコンテンツをムービー、ミュージック、TVのビューへ自動的にグループ化します:", + "LabelSaveLocalMetadataHelp": "保存したアートワークをメディアフォルダーに置くことで簡単に編集できるようになります。", + "LabelRemoteClientBitrateLimitHelp": "すべての外部ネットワークデバイスにストリームごとのビットレート制限を設定します。あなたのインターネット接続で処理できる以上のビットレートを要求するデバイスを防ぐのに便利です。低ビットレートで動画をトランスコードするためにCPU負荷が増加する可能性があります。" } From d86d3363c6835ac4d08f9e6f015b8b229f9213da Mon Sep 17 00:00:00 2001 From: minob Date: Sun, 25 Oct 2020 06:41:55 +0000 Subject: [PATCH 326/365] Translated using Weblate (Japanese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ja/ --- src/strings/ja.json | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/src/strings/ja.json b/src/strings/ja.json index d18d09ade1..34c2208cd9 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -546,7 +546,7 @@ "LabelParentalRating": "個人評価:", "LabelPassword": "パスワード:", "LabelPasswordConfirm": "パスワード (確認):", - "LabelPasswordRecoveryPinCode": "ピンコード:", + "LabelPasswordRecoveryPinCode": "PINコード:", "LabelPath": "パス:", "LabelPersonRole": "役割:", "LabelSortOrder": "並び順:", @@ -591,8 +591,8 @@ "OptionWeekends": "休日", "Overview": "概要", "PasswordResetComplete": "パスワードは再設定されました。", - "PinCodeResetComplete": "ピンコードが再設定されました。", - "PinCodeResetConfirmation": "本当にピンコードを再設定しますか?", + "PinCodeResetComplete": "PINコードが再設定されました。", + "PinCodeResetConfirmation": "本当にPINコードを再設定しますか?", "PleaseRestartServerName": "Jellyfinサーバーを再起動してください - {0}。", "OptionEveryday": "毎日", "Premieres": "初日", @@ -750,7 +750,7 @@ "LabelForgotPasswordUsernameHelp": "ユーザー名を覚えていたら入力してください。", "LabelFormat": "フォーマット:", "LabelDropImageHere": "画像を個々にドロップするか検索する。", - "LabelEasyPinCode": "イージーピンコード:", + "LabelEasyPinCode": "簡単なPINコード:", "LabelManufacturerUrl": "製作社のURL:", "LabelHomeScreenSectionValue": "ホームスクリーンセクション {0}:", "LabelHttpsPort": "ローカルHTTPSポート番号:", @@ -1135,5 +1135,15 @@ "LabelSelectFolderGroupsHelp": "チェックのないフォルダはそのまま表示されます。", "LabelSelectFolderGroups": "以下のフォルダ内のコンテンツをムービー、ミュージック、TVのビューへ自動的にグループ化します:", "LabelSaveLocalMetadataHelp": "保存したアートワークをメディアフォルダーに置くことで簡単に編集できるようになります。", - "LabelRemoteClientBitrateLimitHelp": "すべての外部ネットワークデバイスにストリームごとのビットレート制限を設定します。あなたのインターネット接続で処理できる以上のビットレートを要求するデバイスを防ぐのに便利です。低ビットレートで動画をトランスコードするためにCPU負荷が増加する可能性があります。" + "LabelRemoteClientBitrateLimitHelp": "すべての外部ネットワークデバイスにストリームごとのビットレート制限を設定します。あなたのインターネット接続で処理できる以上のビットレートを要求するデバイスを防ぐのに便利です。低ビットレートで動画をトランスコードするためにCPU負荷が増加する可能性があります。", + "MessageLeaveEmptyToInherit": "空白の場合は親アイテムかグローバルのデフォルト値の設定を継承します。", + "MessageInvalidForgotPasswordPin": "無効か期限切れのPINコードが入力されました。もう一度やり直してください。", + "MessageImageTypeNotSelected": "ドロップダウンメニューから画像タイプを選択してください。", + "MessageForgotPasswordInNetworkRequired": "パスワードのリセットをすすめるにはホームネットワーク上でもう一度やり直してください。", + "MessageForgotPasswordFileCreated": "手順の説明が記載された以下のファイルがサーバ上に作成されました:", + "MessageFileReadError": "ファイルの読み込みでエラーが発生しました。もう一度やり直してください。", + "MessageEnablingOptionLongerScans": "このオプションを有効にするとライブラリのスキャンが大幅に長くなる可能性があります。", + "MessageDirectoryPickerLinuxInstruction": "LinuxのArch Linux、CentOS、Debian、Fedora、openSUSE、Ubuntuではサービスユーザーにストレージの場所への読み取り権限が最低限必要となります。", + "MessageDirectoryPickerBSDInstruction": "BSDでは、メディアへアクセスできるようにするためFreeNAS Jail にストレージを設定する必要があるかもしれません。", + "MessageCreateAccountAt": "アカウントを作成 {0}" } From d9655263322fc2a734e828a8be999c5180a11fb0 Mon Sep 17 00:00:00 2001 From: minob Date: Sun, 25 Oct 2020 07:38:53 +0000 Subject: [PATCH 327/365] Translated using Weblate (Japanese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ja/ --- src/strings/ja.json | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/strings/ja.json b/src/strings/ja.json index 34c2208cd9..071d54bb3d 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -1145,5 +1145,12 @@ "MessageEnablingOptionLongerScans": "このオプションを有効にするとライブラリのスキャンが大幅に長くなる可能性があります。", "MessageDirectoryPickerLinuxInstruction": "LinuxのArch Linux、CentOS、Debian、Fedora、openSUSE、Ubuntuではサービスユーザーにストレージの場所への読み取り権限が最低限必要となります。", "MessageDirectoryPickerBSDInstruction": "BSDでは、メディアへアクセスできるようにするためFreeNAS Jail にストレージを設定する必要があるかもしれません。", - "MessageCreateAccountAt": "アカウントを作成 {0}" + "MessageCreateAccountAt": "アカウントを作成 {0}", + "MessageAddRepository": "リポジトリを追加したい場合、ヘッダーの横にあるボタンをクリックして要求された情報を入力してください。", + "LabelRepositoryNameHelp": "サーバーに追加された他のリポジトリと区別するための名前。", + "LabelRepositoryName": "リポジトリの名前", + "LabelRepositoryUrlHelp": "あなたが含めたいリポジトリマニフェストの場所。", + "LabelRepositoryUrl": "リポジトリのURL", + "HeaderNewRepository": "新しいリポジトリ", + "MessageNoRepositories": "リポジトリはありません。" } From a134b73ff1dce4a001dbd3ef5eca5ff49cff5dc9 Mon Sep 17 00:00:00 2001 From: minob Date: Sun, 25 Oct 2020 07:54:04 +0000 Subject: [PATCH 328/365] Translated using Weblate (Japanese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ja/ --- src/strings/ja.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/strings/ja.json b/src/strings/ja.json index 071d54bb3d..638351ad1e 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -1152,5 +1152,7 @@ "LabelRepositoryUrlHelp": "あなたが含めたいリポジトリマニフェストの場所。", "LabelRepositoryUrl": "リポジトリのURL", "HeaderNewRepository": "新しいリポジトリ", - "MessageNoRepositories": "リポジトリはありません。" + "MessageNoRepositories": "リポジトリはありません。", + "MessageNoGenresAvailable": "一部のメタデータプロバイダでインターネットからのジャンル取得を有効化します。", + "MessageNoCollectionsAvailable": "コレクションによりムービー、シリーズ、アルバムを個人的にグループ化して楽しむことができます。 + ボタンをクリックするとコレクションの作成を始めます。" } From d99a782c7b5973c29444a069a871efa7632213e1 Mon Sep 17 00:00:00 2001 From: minob Date: Sun, 25 Oct 2020 08:08:25 +0000 Subject: [PATCH 329/365] Translated using Weblate (Japanese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ja/ --- src/strings/ja.json | 33 ++++++++++++++++++++++++++++++--- 1 file changed, 30 insertions(+), 3 deletions(-) diff --git a/src/strings/ja.json b/src/strings/ja.json index 638351ad1e..c0877a5ddc 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -102,7 +102,7 @@ "CancelSeries": "中止したシリーズ", "Categories": "カテゴリ", "ChangingMetadataImageSettingsNewContent": "メタデータまたはアートワークのダウンロード設定に対する変更は、ライブラリに追加された新しいコンテンツにのみ適用されます。 既存のタイトルに変更を適用するには、それらのメタデータを手動で更新する必要があります。", - "ChannelAccessHelp": "ユーザーと共有するチャンネルを選択してください。管理者はメタデータマネージャを使用してすべてのチャンネルを編集できます。", + "ChannelAccessHelp": "ユーザーと共有するチャンネルを選択してください。管理者はメタデータマネージャーを使用してすべてのチャンネルを編集できます。", "ChannelNameOnly": "チャンネル{0} のみ", "ChannelNumber": "チャンネル番号", "Channels": "チャンネル", @@ -1121,7 +1121,7 @@ "MediaInfoForced": "強制", "MediaInfoContainer": "コンテナ", "MaxParentalRatingHelp": "高いレイティングのコンテンツをユーザーから隠します。", - "LibraryAccessHelp": "ユーザーと共有するライブラリを選択してください。管理者はメタデータマネージャを使用してすべてのフォルダーを編集できます。", + "LibraryAccessHelp": "ユーザーと共有するライブラリを選択してください。管理者はメタデータマネージャーを使用してすべてのフォルダーを編集できます。", "LanNetworksHelp": "帯域制限を設ける際にローカルネットワークと見なすIPアドレスまたはIP/ネットマスクのコンマで分割されるリストです。設定されている場合、他のすべてのIPアドレスは外部ネットワークと見なされて外部帯域制限の対象となります。空白の場合、サーバーのサブネットのみがローカルネットワークと見なされます。", "LabelXDlnaDocHelp": "urn:schemas-dlna-org:device-1-0 ネームスペース内のX_DLNADOC エレメントのコンテンツを決定します。", "LabelXDlnaCapHelp": "urn:schemas-dlna-org:device-1-0 ネームスペース内のX_DLNACAP エレメントのコンテンツを決定します。", @@ -1154,5 +1154,32 @@ "HeaderNewRepository": "新しいリポジトリ", "MessageNoRepositories": "リポジトリはありません。", "MessageNoGenresAvailable": "一部のメタデータプロバイダでインターネットからのジャンル取得を有効化します。", - "MessageNoCollectionsAvailable": "コレクションによりムービー、シリーズ、アルバムを個人的にグループ化して楽しむことができます。 + ボタンをクリックするとコレクションの作成を始めます。" + "MessageNoCollectionsAvailable": "コレクションによりムービー、シリーズ、アルバムを個人的にグループ化して楽しむことができます。 + ボタンをクリックするとコレクションの作成を始めます。", + "MetadataSettingChangeHelp": "メタデータの設定変更は今後追加される新しいコンテンツに影響します。既存のコンテンツを更新する場合、詳細画面を開きリフレッシュボタンをクリックするか、メタデータマネージャーを使用して一括リフレッシュを行ってください。", + "MessageSyncPlayErrorMedia": "SyncPlayの有効化に失敗しました!メディアエラーです。", + "MessageSyncPlayErrorMissingSession": "SyncPlayの有効化に失敗しました!セッションが見つかりません。", + "MessageSyncPlayErrorNoActivePlayer": "アクティブなプレーヤーが見つかりません。SyncPlayは無効になりました。", + "MessageSyncPlayErrorAccessingGroups": "グループリストへのアクセス中にエラーが発生しました。", + "MessageSyncPlayLibraryAccessDenied": "このコンテンツへのアクセスは制限されています。", + "MessageSyncPlayJoinGroupDenied": "SyncPlayを使用するには権限が必要です。", + "MessageSyncPlayCreateGroupDenied": "グループ作成の権限が必要です。", + "MessageSyncPlayGroupDoesNotExist": "グループが存在しないため参加できませんでした。", + "MessageSyncPlayPlaybackPermissionRequired": "再生の権限が必要です。", + "MessageSyncPlayNoGroupsAvailable": "グループがありません。まず何かの再生を始めてください。", + "MessageSyncPlayGroupWait": "{0} はバッファリング中です…", + "MessageSyncPlayUserLeft": "{0} がグループから退出しました。", + "MessageSyncPlayUserJoined": "{0} がグループに参加しました。", + "MessageSyncPlayDisabled": "SyncPlayを無効にしました。", + "MessageSyncPlayEnabled": "SyncPlayを有効にしました。", + "MessageUnsetContentHelp": "コンテンツはプレーンフォルダとして表示されます。良い結果を得るためには、メタデータマネージャーでサブフォルダのコンテンツタイプを設定します。", + "MessageUnableToConnectToServer": "現在、選択されたサーバーへの接続ができません。稼働していることを確認しもう一度やり直してください。", + "MessageTheFollowingLocationWillBeRemovedFromLibrary": "以下のメディアロケーションがあなたのライブラリから削除されます:", + "MessagePluginInstallDisclaimer": "コミュニティメンバーによって作成されたプラグインは機能や利点を追加することであなたの体験を向上するとても良い方法です。インストールする前に、ライブラリスキャンの時間が長くなる、バックグラウンドの処理が増える、システムの安定性が下がるなど、サーバへの影響がありうることに注意してください。", + "MessagePluginConfigurationRequiresLocalAccess": "このプラグインを設定する場合はローカルサーバーに直接サインインしてください。", + "MessagePleaseEnsureInternetMetadata": "インターネットからのメタデータのダウンロードが有効化されているか確認してください。", + "MessagePlayAccessRestricted": "このコンテンツの再生は現在制限されています。詳細はサーバー管理者にお問い合わせください。", + "MessagePasswordResetForUsers": "以下のユーザーのパスワードをリセットしました。リセットに使用したPINコードでサインインすることができるようになっています。", + "MessageNoTrailersFound": "トレーラーチャンネルをインストールするとインターネットのトレーラーがライブラリに追加されて映画体験が向上します。", + "MessageNoServersAvailable": "サーバーの自動探索ではサーバーが発見できませんでした。", + "MessageNoMovieSuggestionsAvailable": "おすすめの映画は現在ありません。視聴を始めてムービーを評価し、戻ってくるとあなたの推薦が表示されます。" } From f716315056f9e553fb59df48ac1bea43baf5f815 Mon Sep 17 00:00:00 2001 From: minob Date: Sun, 25 Oct 2020 09:44:57 +0000 Subject: [PATCH 330/365] Translated using Weblate (Japanese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ja/ --- src/strings/ja.json | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/strings/ja.json b/src/strings/ja.json index c0877a5ddc..f82e47cf2a 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -1181,5 +1181,12 @@ "MessagePasswordResetForUsers": "以下のユーザーのパスワードをリセットしました。リセットに使用したPINコードでサインインすることができるようになっています。", "MessageNoTrailersFound": "トレーラーチャンネルをインストールするとインターネットのトレーラーがライブラリに追加されて映画体験が向上します。", "MessageNoServersAvailable": "サーバーの自動探索ではサーバーが発見できませんでした。", - "MessageNoMovieSuggestionsAvailable": "おすすめの映画は現在ありません。視聴を始めてムービーを評価し、戻ってくるとあなたの推薦が表示されます。" + "MessageNoMovieSuggestionsAvailable": "おすすめの映画は現在ありません。視聴を始めてムービーを評価し、戻ってくるとあなたの推薦が表示されます。", + "Never": "しない", + "MySubtitles": "マイ字幕", + "MusicVideos": "ミュージックビデオ", + "MusicLibraryHelp": "{0}ミュージックの命名規則ガイド{1}を閲覧。", + "Movie": "ムービー", + "MovieLibraryHelp": "{0}ムービーの命名規則ガイド{1}を閲覧。", + "MoreUsersCanBeAddedLater": "ダッシュボードで後からユーザーの追加が可能です。" } From 2ba436c4dd9a18499de36ce339245a138a2eb2aa Mon Sep 17 00:00:00 2001 From: minob Date: Sun, 25 Oct 2020 12:27:38 +0000 Subject: [PATCH 331/365] Translated using Weblate (Japanese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ja/ --- src/strings/ja.json | 29 ++++++++++++++++++++++++++--- 1 file changed, 26 insertions(+), 3 deletions(-) diff --git a/src/strings/ja.json b/src/strings/ja.json index f82e47cf2a..3904eef1e3 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -676,8 +676,8 @@ "Whitelist": "ホワイトリスト", "Writer": "著書", "ValueAlbumCount": "{0} アルバム", - "ValueAudioCodec": "音声オーデック: {0}", - "ValueCodec": "オーデック: {0}", + "ValueAudioCodec": "音声コーデック: {0}", + "ValueCodec": "コーデック: {0}", "ValueMinutes": "{0} 分", "ValueMovieCount": "{0} ムービー", "ValueOneAlbum": "1 アルバム", @@ -1188,5 +1188,28 @@ "MusicLibraryHelp": "{0}ミュージックの命名規則ガイド{1}を閲覧。", "Movie": "ムービー", "MovieLibraryHelp": "{0}ムービーの命名規則ガイド{1}を閲覧。", - "MoreUsersCanBeAddedLater": "ダッシュボードで後からユーザーの追加が可能です。" + "MoreUsersCanBeAddedLater": "ダッシュボードで後からユーザーの追加が可能です。", + "OptionAllowManageLiveTv": "テレビ放送録画の管理を許可", + "OptionAllowLinkSharingHelp": "メディア情報を含むウェブページのみを共有します。メディアファイルは決して公に共有されません。共有には時間制限があり {0} 日で期限切れとなります。", + "OptionAllowContentDownloading": "メディアのダウンロードと同期を許可", + "OptionForceRemoteSourceTranscoding": "リモートメディアソースの強制トランスコード(テレビ放送など)", + "OptionAllowVideoPlaybackTranscoding": "トランスコードが必要な動画の再生を許可", + "OptionAllowAudioPlaybackTranscoding": "トランスコードが必要な音声の再生を許可", + "OnlyImageFormats": "イメージフォーマットのみ(VOBSUB、PGS、SUB)", + "OnlyForcedSubtitlesHelp": "強制表示になっている字幕のみ読み込みます。", + "OnlyForcedSubtitles": "強制表示のみ", + "Off": "オフ", + "Normal": "正常", + "None": "なし", + "NoSubtitlesHelp": "デフォルトで字幕を読み込みません。再生中に手動でオンにすることができます。", + "MessageNoPluginConfiguration": "このプラグインは設定がありません。", + "MessageNoNextUpItems": "何も見つかりませんでした。番組の視聴を始めましょう!", + "NoNewDevicesFound": "新しいデバイスは見つかりませんでした。新しいチューナーを追加する場合、このダイアログを閉じてデバイス情報を手動で入力してください。", + "NoCreatedLibraries": "まだライブラリが作成されていないようです。{0}今すぐ作成しますか?{1}", + "NextUp": "次", + "PreviousTrack": "前へスキップ", + "NextTrack": "次へスキップ", + "News": "ニュース", + "NewEpisodesOnly": "新しいエピソードのみ", + "NewCollectionHelp": "コレクションによりムービーとその他のライブラリコンテンツを個人的にグループ化することができます。" } From 88ebe07b9cc2b5cce51bfbe3349ee443da5f15c2 Mon Sep 17 00:00:00 2001 From: minob Date: Sun, 25 Oct 2020 13:47:20 +0000 Subject: [PATCH 332/365] Translated using Weblate (Japanese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ja/ --- src/strings/ja.json | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/src/strings/ja.json b/src/strings/ja.json index 3904eef1e3..a5475452f7 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -524,7 +524,7 @@ "MusicAlbum": "ミュージックアルバム", "OptionEnableAccessToAllChannels": "すべてのチャンネルへのアクセスを有効化", "OptionEnableAccessToAllLibraries": "すべてのライブラリへのアクセスを優幸化", - "OptionWeekly": "週間", + "OptionWeekly": "毎週", "OriginalAirDateValue": "元の公開日: {0}", "RepeatOne": "リピート", "SeriesSettings": "シリーズ設計", @@ -1127,7 +1127,7 @@ "LabelXDlnaCapHelp": "urn:schemas-dlna-org:device-1-0 ネームスペース内のX_DLNACAP エレメントのコンテンツを決定します。", "LabelVaapiDeviceHelp": "ハードウェアアクセラレーションに使用されるレンダーノードです。", "LabelUserMaxActiveSessions": "同時ユーザーセッション数の最大:", - "LabelTranscodingThreadCountHelp": "トランスコードで使用する最大スレッド数を選択します。スレッド数を減らすとCPU使用率が下がりますがスムーズに再生できる変換速度ではなくなるかもしれません。", + "LabelTranscodingThreadCountHelp": "トランスコーディングで使用する最大スレッド数を選択します。スレッド数を減らすとCPU使用率が下がりますがスムーズに再生できる変換速度ではなくなるかもしれません。", "LabelTranscodingTempPathHelp": "クライアントへ提供するトランスコードファイルのカスタムパスを指定します。空白にした場合はサーバのデフォルトを使用します。", "LabelSonyAggregationFlagsHelp": "urn:schemas-sonycom:av ネームスペース内のaggregationFlags エレメントのコンテンツを決定します。", "LabelSkipIfGraphicalSubsPresentHelp": "テキストバージョンの字幕を維持することで配信が効率的になりビデオをトランスコードする可能性も減ります。", @@ -1192,9 +1192,9 @@ "OptionAllowManageLiveTv": "テレビ放送録画の管理を許可", "OptionAllowLinkSharingHelp": "メディア情報を含むウェブページのみを共有します。メディアファイルは決して公に共有されません。共有には時間制限があり {0} 日で期限切れとなります。", "OptionAllowContentDownloading": "メディアのダウンロードと同期を許可", - "OptionForceRemoteSourceTranscoding": "リモートメディアソースの強制トランスコード(テレビ放送など)", - "OptionAllowVideoPlaybackTranscoding": "トランスコードが必要な動画の再生を許可", - "OptionAllowAudioPlaybackTranscoding": "トランスコードが必要な音声の再生を許可", + "OptionForceRemoteSourceTranscoding": "リモートメディアソースの強制トランスコーディング(テレビ放送など)", + "OptionAllowVideoPlaybackTranscoding": "トランスコーディングが必要な動画の再生を許可", + "OptionAllowAudioPlaybackTranscoding": "トランスコーディングが必要な音声の再生を許可", "OnlyImageFormats": "イメージフォーマットのみ(VOBSUB、PGS、SUB)", "OnlyForcedSubtitlesHelp": "強制表示になっている字幕のみ読み込みます。", "OnlyForcedSubtitles": "強制表示のみ", @@ -1211,5 +1211,18 @@ "NextTrack": "次へスキップ", "News": "ニュース", "NewEpisodesOnly": "新しいエピソードのみ", - "NewCollectionHelp": "コレクションによりムービーとその他のライブラリコンテンツを個人的にグループ化することができます。" + "NewCollectionHelp": "コレクションによりムービーとその他のライブラリコンテンツを個人的にグループ化することができます。", + "OptionDisplayFolderView": "プレーンメディアフォルダーを表示するときにフォルダービューを表示", + "OptionDisableUserHelp": "サーバーはこのユーザーからの接続を許可しなくなります。既存の接続は突然終了します。", + "OptionDateAddedImportTime": "ライブラリでスキャンされた日時を使用する", + "OptionDateAddedFileTime": "ファイル作成日時を使用する", + "OptionDateAdded": "追加日時", + "OptionDaily": "毎日", + "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", + "OptionAutomaticallyGroupSeriesHelp": "このライブラリで複数のフォルダに分散しているシリーズは自動的に単一のシリーズとして統合されます。", + "OptionAllowVideoPlaybackRemuxing": "変換の必要な動画を再エンコードせず再生することを許可", + "OptionAllowSyncTranscoding": "トランスコーディングが必要なメディアのダウンロードと同期を許可", + "OptionAllowRemoteSharedDevicesHelp": "DLNAデバイスはユーザーが制御するまで共有されていると見なされます。", + "OptionAllowMediaPlaybackTranscodingHelp": "トランスコーディングへのアクセスを制限するとクライアントがサポートしていないメディアフォーマットの再生に失敗する可能性があります。", + "OptionAllowMediaPlayback": "メディア再生を許可" } From 6d658cbd0877a5fdcb02e584136d5efbe456eb24 Mon Sep 17 00:00:00 2001 From: minob Date: Sun, 25 Oct 2020 15:05:13 +0000 Subject: [PATCH 333/365] Translated using Weblate (Japanese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ja/ --- src/strings/ja.json | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/strings/ja.json b/src/strings/ja.json index a5475452f7..9bf6d80fde 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -1224,5 +1224,11 @@ "OptionAllowSyncTranscoding": "トランスコーディングが必要なメディアのダウンロードと同期を許可", "OptionAllowRemoteSharedDevicesHelp": "DLNAデバイスはユーザーが制御するまで共有されていると見なされます。", "OptionAllowMediaPlaybackTranscodingHelp": "トランスコーディングへのアクセスを制限するとクライアントがサポートしていないメディアフォーマットの再生に失敗する可能性があります。", - "OptionAllowMediaPlayback": "メディア再生を許可" + "OptionAllowMediaPlayback": "メディア再生を許可", + "OptionExternallyDownloaded": "外部からダウンロード", + "OptionHlsSegmentedSubtitles": "HLS分割字幕", + "OptionEmbedSubtitles": "コンテナに埋め込む", + "OptionDownloadImagesInAdvanceHelp": "デフォルトでは、大多数の画像はクライアントから要求された時にのみダウンロードされます。このオプションを有効にすると新しいメディアをインポートした時にすべての画像を事前にダウンロードします。これによりライブラリのスキャンが大幅に長くなる可能性があります。", + "OptionDownloadImagesInAdvance": "画像を事前にダウンロード", + "OptionDisplayFolderViewHelp": "その他のメディアライブラリと一緒にフォルダを表示します。プレーンフォルダビューにしたい時に便利です。" } From 7975f57e73df09b0879ef3dbf80acfe535657c22 Mon Sep 17 00:00:00 2001 From: Solain Date: Sun, 25 Oct 2020 18:29:36 +0000 Subject: [PATCH 334/365] Translated using Weblate (Hebrew) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/he/ --- src/strings/he.json | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/strings/he.json b/src/strings/he.json index 86cad06f80..7c845686cf 100644 --- a/src/strings/he.json +++ b/src/strings/he.json @@ -829,5 +829,12 @@ "ClientSettings": "הגדרות לקוח", "BoxSet": "מארז", "ButtonActivate": "הפעל", - "Authorize": "הרשה" + "Authorize": "הרשה", + "EnableStreamLoopingHelp": "אשר זה אם שידורי לייב מכילים רק מספר שניות של מידע ויש צורך לבקש את המידע באופן קבוע. אישור של הגדרה זו כשאין צורך עלול לגרום לבעיות.", + "EnableQuickConnect": "אפשר חיבור מהיר בשרת זה", + "EnableAutoCast": "הגדר כברירת מחדל", + "EasyPasswordHelp": "הקוד הסודי הפשוט שלך משומש לגישה לא מחוברת במכשירים נתמכים ויכולה גם לשמש להתחברות פשוטה בתוך הרשת.", + "DirectStreamHelp2": "הזרמה ישירה צורכת מעט מאוד כוח עיבוד עם הפסד מינימלי באיכות הווידיאו.", + "DirectStreamHelp1": "המדיה נתמכת עם המכשיר מבחינת רזולוציה וסוג מדיה (H.264, AC3, וכו'), אבל במעטפת קובץ אשר לא נתמכת (mkv, avi, wmv, וכו'). הווידיאו ייעטף-מחדש בדרך למכשיר.", + "ButtonUseQuickConnect": "השתמש בQuick Connect" } From 0cfd71140852f5c5c8dc7ee990511c3b54e32299 Mon Sep 17 00:00:00 2001 From: Nikita Epifanov Date: Sun, 25 Oct 2020 19:55:38 +0000 Subject: [PATCH 335/365] Translated using Weblate (Russian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ru/ --- src/strings/ru.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/strings/ru.json b/src/strings/ru.json index b7da6f581c..bf094eb171 100644 --- a/src/strings/ru.json +++ b/src/strings/ru.json @@ -1410,5 +1410,7 @@ "ButtonUseQuickConnect": "Использовать Quick Connect", "ButtonActivate": "Активация", "Authorize": "Авторизация", - "LabelUserMaxActiveSessions": "Максимальное количество одновременных пользовательских сессий:" + "LabelUserMaxActiveSessions": "Максимальное количество одновременных пользовательских сессий:", + "OptionMaxActiveSessionsHelp": "Значение 0 отключит эту функцию.", + "OptionMaxActiveSessions": "Устанавливает максимальное количество одновременных пользовательских сеансов." } From 028038259331921e32fa606e0fd1a600aeb33a38 Mon Sep 17 00:00:00 2001 From: kevin Date: Sun, 25 Oct 2020 20:38:36 +0000 Subject: [PATCH 336/365] Added translation using Weblate (Albanian) --- src/strings/sq.json | 1 + 1 file changed, 1 insertion(+) create mode 100644 src/strings/sq.json diff --git a/src/strings/sq.json b/src/strings/sq.json new file mode 100644 index 0000000000..0967ef424b --- /dev/null +++ b/src/strings/sq.json @@ -0,0 +1 @@ +{} From d27f984fec8b965feca54a31ed4df63f51bb8b17 Mon Sep 17 00:00:00 2001 From: kevin Date: Sun, 25 Oct 2020 20:38:57 +0000 Subject: [PATCH 337/365] Translated using Weblate (Albanian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/sq/ --- src/strings/sq.json | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/src/strings/sq.json b/src/strings/sq.json index 0967ef424b..9d91adc7c1 100644 --- a/src/strings/sq.json +++ b/src/strings/sq.json @@ -1 +1,27 @@ -{} +{ + "AllowOnTheFlySubtitleExtraction": "Lejo titrat të ekstraktohen në kohë reale", + "AllowMediaConversionHelp": "Lejo ose blloko aksesin e veçorisë së transkodimit të medias.", + "AllowMediaConversion": "Lejo konvertimin e medias", + "AllowHWTranscodingHelp": "Lejo Tuner-in të transkodojë transmetimet në kohë reale. Kjo mund të ndihmojë në zvogëlimin e transkodimit nga ana e serverit.", + "AllLibraries": "Të gjithë libraritë", + "AllLanguages": "Të gjitha gjuhët", + "AllEpisodes": "Të gjithë episodet", + "AllComplexFormats": "Të gjithë formatet kompleks (ASS, SSA, VOBSUB, PGS, SUB, IDX, …)", + "AllChannels": "Të gjithë kanalet", + "All": "Të gjithë", + "Alerts": "Alarm", + "Albums": "Albume", + "AlbumArtist": "Album Artist", + "Album": "Album", + "Aired": "Transmetuar", + "AirDate": "Data e transmetimit", + "AdditionalNotificationServices": "Shfleto katalogun e shtojcave për të instaluar të tjera shërbime njoftimi.", + "AddedOnValue": "Shtuar {0}", + "AddToPlaylist": "Shto tek lista e luajtjes", + "AddToPlayQueue": "Shto tek rradha e luajtjes", + "AddToCollection": "Shto tek koleksioni", + "Add": "Shto", + "Actor": "Aktor", + "AccessRestrictedTryAgainLater": "Aksesi aktualisht është i kufizuar. Ju lutemi provoni përsëri më vonë.", + "Absolute": "Absolut" +} From 3281b8b9ce4337a36d59ff110cfb717376c5314c Mon Sep 17 00:00:00 2001 From: minob Date: Mon, 26 Oct 2020 02:04:02 +0000 Subject: [PATCH 338/365] Translated using Weblate (Japanese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ja/ --- src/strings/ja.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/strings/ja.json b/src/strings/ja.json index 9bf6d80fde..f235b5e02f 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -1230,5 +1230,8 @@ "OptionEmbedSubtitles": "コンテナに埋め込む", "OptionDownloadImagesInAdvanceHelp": "デフォルトでは、大多数の画像はクライアントから要求された時にのみダウンロードされます。このオプションを有効にすると新しいメディアをインポートした時にすべての画像を事前にダウンロードします。これによりライブラリのスキャンが大幅に長くなる可能性があります。", "OptionDownloadImagesInAdvance": "画像を事前にダウンロード", - "OptionDisplayFolderViewHelp": "その他のメディアライブラリと一緒にフォルダを表示します。プレーンフォルダビューにしたい時に便利です。" + "OptionDisplayFolderViewHelp": "その他のメディアライブラリと一緒にフォルダを表示します。プレーンフォルダビューにしたい時に便利です。", + "OptionEnableForAllTuners": "すべてのチューナーデバイスを有効化", + "OptionEnableExternalContentInSuggestionsHelp": "インターネットのトレーラーやテレビ放送の番組をおすすめの欄のコンテンツに含めることを許可します。", + "OptionEnableAccessFromAllDevices": "すべてのデバイスからのアクセスを有効化" } From 17dc594901be86c8be1d8316c96651f56d929f16 Mon Sep 17 00:00:00 2001 From: minob Date: Mon, 26 Oct 2020 02:20:49 +0000 Subject: [PATCH 339/365] Translated using Weblate (Japanese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ja/ --- src/strings/ja.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/ja.json b/src/strings/ja.json index f235b5e02f..1fc9eac3ed 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -1233,5 +1233,6 @@ "OptionDisplayFolderViewHelp": "その他のメディアライブラリと一緒にフォルダを表示します。プレーンフォルダビューにしたい時に便利です。", "OptionEnableForAllTuners": "すべてのチューナーデバイスを有効化", "OptionEnableExternalContentInSuggestionsHelp": "インターネットのトレーラーやテレビ放送の番組をおすすめの欄のコンテンツに含めることを許可します。", - "OptionEnableAccessFromAllDevices": "すべてのデバイスからのアクセスを有効化" + "OptionEnableAccessFromAllDevices": "すべてのデバイスからのアクセスを有効化", + "OptionEnableM2tsModeHelp": "mpegtsをエンコードする際にm2tsモードを有効化。" } From 1551180e0be5677f432f4e1eeb22c54a29e7c5ae Mon Sep 17 00:00:00 2001 From: minob Date: Mon, 26 Oct 2020 02:35:56 +0000 Subject: [PATCH 340/365] Translated using Weblate (Japanese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ja/ --- src/strings/ja.json | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/src/strings/ja.json b/src/strings/ja.json index 1fc9eac3ed..2c8ebd6292 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -585,7 +585,7 @@ "MessageImageFileTypeAllowed": "JPEGとPNGファイルのみサポートしています。", "NoSubtitleSearchResultsFound": "何も見つかりません。", "OptionRandom": "ランダム", - "OptionSubstring": "字幕", + "OptionSubstring": "部分一致", "OptionTrackName": "トラック名", "OptionTvdbRating": "TVDB評価", "OptionWeekends": "休日", @@ -1126,7 +1126,7 @@ "LabelXDlnaDocHelp": "urn:schemas-dlna-org:device-1-0 ネームスペース内のX_DLNADOC エレメントのコンテンツを決定します。", "LabelXDlnaCapHelp": "urn:schemas-dlna-org:device-1-0 ネームスペース内のX_DLNACAP エレメントのコンテンツを決定します。", "LabelVaapiDeviceHelp": "ハードウェアアクセラレーションに使用されるレンダーノードです。", - "LabelUserMaxActiveSessions": "同時ユーザーセッション数の最大:", + "LabelUserMaxActiveSessions": "同時ユーザーセッション数の最大値:", "LabelTranscodingThreadCountHelp": "トランスコーディングで使用する最大スレッド数を選択します。スレッド数を減らすとCPU使用率が下がりますがスムーズに再生できる変換速度ではなくなるかもしれません。", "LabelTranscodingTempPathHelp": "クライアントへ提供するトランスコードファイルのカスタムパスを指定します。空白にした場合はサーバのデフォルトを使用します。", "LabelSonyAggregationFlagsHelp": "urn:schemas-sonycom:av ネームスペース内のaggregationFlags エレメントのコンテンツを決定します。", @@ -1234,5 +1234,19 @@ "OptionEnableForAllTuners": "すべてのチューナーデバイスを有効化", "OptionEnableExternalContentInSuggestionsHelp": "インターネットのトレーラーやテレビ放送の番組をおすすめの欄のコンテンツに含めることを許可します。", "OptionEnableAccessFromAllDevices": "すべてのデバイスからのアクセスを有効化", - "OptionEnableM2tsModeHelp": "mpegtsをエンコードする際にm2tsモードを有効化。" + "OptionEnableM2tsModeHelp": "mpegtsをエンコードする際にm2tsモードを有効化。", + "OptionPlainStorageFolders": "すべてのフォルダーをプレーンストレージフォルダーとして表示", + "OnApplicationStartup": "アプリケーション起動時", + "OptionOnInterval": "間隔", + "OptionNew": "新規…", + "OptionMaxActiveSessionsHelp": "値が0の場合はこの機能を無効化します。", + "OptionMaxActiveSessions": "同時ユーザーセッション数の最大値を設定します。", + "OptionLoginAttemptsBeforeLockoutHelp": "値をゼロにした場合は通常のユーザーでは3回、管理者では5回のデフォルト値を継承します。設定を-1にするとこの機能は無効化されます。", + "OptionLoginAttemptsBeforeLockout": "ロックアウトが発生するまでに間違ったログインを何回行うことができるかを決定します。", + "OptionIgnoreTranscodeByteRangeRequestsHelp": "リクエストは尊重されますが byte range ヘッダーは無視されます。", + "OptionIgnoreTranscodeByteRangeRequests": "トランスコードの byte range リクエストを無視", + "OptionHideUserFromLoginHelp": "プライベートや管理者アカウントを隠すのに便利です。このユーザーはユーザー名とパスワードを手動で入力してサインインする必要があります。", + "OptionExtractChapterImage": "チャプター画像の抽出を有効化", + "OptionEstimateContentLength": "トランスコーディングの際にコンテンツの長さを推定", + "OptionEquals": "一致" } From 83cf117ae538c9705fa5d4a12017f262e9d280bd Mon Sep 17 00:00:00 2001 From: minob Date: Mon, 26 Oct 2020 03:31:19 +0000 Subject: [PATCH 341/365] Translated using Weblate (Japanese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ja/ --- src/strings/ja.json | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/src/strings/ja.json b/src/strings/ja.json index 2c8ebd6292..d5c6afd88f 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -1248,5 +1248,29 @@ "OptionHideUserFromLoginHelp": "プライベートや管理者アカウントを隠すのに便利です。このユーザーはユーザー名とパスワードを手動で入力してサインインする必要があります。", "OptionExtractChapterImage": "チャプター画像の抽出を有効化", "OptionEstimateContentLength": "トランスコーディングの際にコンテンツの長さを推定", - "OptionEquals": "一致" + "OptionEquals": "一致", + "PlayFromBeginning": "初めから再生", + "PlayCount": "再生回数", + "PlaybackRate": "再生速度", + "PlaybackData": "再生情報", + "PlaceFavoriteChannelsAtBeginning": "お気に入りのチャンネルを先頭にする", + "Photo": "画像", + "Person": "人物", + "PasswordResetProviderHelp": "このユーザーがパスワードリセットを要求した時に提供するかの選択。", + "PackageInstallFailed": "{0} (version {1}) のインストールに失敗しました。", + "PackageInstallCompleted": "{0} (version {1}) のインストールが完了しました。", + "PackageInstallCancelled": "{0} (version {1}) のインストールはキャンセルされました。", + "OptionSaveMetadataAsHiddenHelp": "変更すると今後保存される新しいメタデータに適用されます。既存のメタデータファイルは次にサーバーへ保存される際に更新されます。", + "OptionSaveMetadataAsHidden": "メタデータと画像を隠しファイルとして保存", + "OptionResumable": "途中から", + "OptionResElement": "res 要素", + "OptionRequirePerfectSubtitleMatchHelp": "完全にマッチすることを要求した場合は動画ファイルとのテストおよび検証で完全な字幕のみ含まれるようフィルタリングします。このチェックを外すと字幕がダウンロードされる可能性が高くなりますが、間違いのある字幕テキストになる可能性も高くなります。", + "OptionRequirePerfectSubtitleMatch": "動画ファイルと完全にマッチする字幕のみダウンロード", + "OptionReportByteRangeSeekingWhenTranscodingHelp": "これはシークが十分にできないデバイスに必要です。", + "OptionReportByteRangeSeekingWhenTranscoding": "トランスコーディングする際にサーバーがbyte seekingをサポートしていることをレポート", + "OptionPremiereDate": "初公開日", + "OptionPlayCount": "再生回数", + "OptionPlainVideoItemsHelp": "すべての動画を\"object.item.videoItem.movie\"のような特定のタイプに代わって\"object.item.videoItem\"のようにDIDLで表現します。", + "OptionPlainVideoItems": "すべての動画をプレーン動画アイテムとして表示", + "OptionPlainStorageFoldersHelp": "すべてのフォルダーで\"object.container.person.musicArtist\"のような特定のタイプに代わって\"object.container.storageFolder\"のようにDIDLで表現します。" } From 1b7d7f76be0ab961118a794cb0ff08e2f4bffeb9 Mon Sep 17 00:00:00 2001 From: millallo Date: Mon, 26 Oct 2020 06:51:31 +0000 Subject: [PATCH 342/365] Translated using Weblate (Italian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/it/ --- src/strings/it.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings/it.json b/src/strings/it.json index b900a79d52..d7e51b8cc7 100644 --- a/src/strings/it.json +++ b/src/strings/it.json @@ -1402,7 +1402,7 @@ "OptionMaxActiveSessions": "Imposta il numero massimo di connessioni utente simultanee.", "LabelUserMaxActiveSessions": "Numero massimo di sessioni utente contemporanee:", "EnableAutoCast": "Imposta come Default", - "LabelTonemappingDesat": "Desaturazione appatura dei toni:", + "LabelTonemappingDesat": "Desaturazione mappatura dei toni:", "TonemappingRangeHelp": "Seleziona l'intervallo di colore in uscita. Auto imposta lo stesso del valore di entrata.", "LabelTonemappingRange": "Intervallo mappatura dei toni:", "TonemappingAlgorithmHelp": "La mappatura dei toni può essere messa a punto. Se non sei abbastanza familiare con queste opzioni, lascia quelle predefinite. Il valore raccomandato è Reinhard.", From ead084c9560c8d966f7640ef092c1bcf716c94fd Mon Sep 17 00:00:00 2001 From: minob Date: Mon, 26 Oct 2020 06:39:21 +0000 Subject: [PATCH 343/365] Translated using Weblate (Japanese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ja/ --- src/strings/ja.json | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/strings/ja.json b/src/strings/ja.json index d5c6afd88f..017e089371 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -593,7 +593,7 @@ "PasswordResetComplete": "パスワードは再設定されました。", "PinCodeResetComplete": "PINコードが再設定されました。", "PinCodeResetConfirmation": "本当にPINコードを再設定しますか?", - "PleaseRestartServerName": "Jellyfinサーバーを再起動してください - {0}。", + "PleaseRestartServerName": "{0} のJellyfinを再起動してください。", "OptionEveryday": "毎日", "Premieres": "初日", "Producer": "プロデューサー", @@ -1272,5 +1272,17 @@ "OptionPlayCount": "再生回数", "OptionPlainVideoItemsHelp": "すべての動画を\"object.item.videoItem.movie\"のような特定のタイプに代わって\"object.item.videoItem\"のようにDIDLで表現します。", "OptionPlainVideoItems": "すべての動画をプレーン動画アイテムとして表示", - "OptionPlainStorageFoldersHelp": "すべてのフォルダーで\"object.container.person.musicArtist\"のような特定のタイプに代わって\"object.container.storageFolder\"のようにDIDLで表現します。" + "OptionPlainStorageFoldersHelp": "すべてのフォルダーで\"object.container.person.musicArtist\"のような特定のタイプに代わって\"object.container.storageFolder\"のようにDIDLで表現します。", + "PreferEmbeddedTitlesOverFileNames": "ファイル名より埋め込みタイトルを優先", + "MessageGetInstalledPluginsError": "インストール済みプラグインの一覧を取得する際にエラーが発生しました。", + "MessagePluginInstallError": "プラグインをインストールする際にエラーが発生しました。", + "MessagePluginInstalled": "プラグインは正常にインストールされました。変更を有効にするためにサーバーを再起動する必要があります。", + "PosterCard": "ポスターカード", + "Poster": "ポスター", + "PleaseSelectTwoItems": "少なくとも2つの項目を選択してください。", + "PleaseEnterNameOrId": "名前か外部IDを入力してください。", + "PleaseConfirmPluginInstallation": "プラグインのインストールを進めるには上記を確認し OK をクリックしてください。", + "PleaseAddAtLeastOneFolder": "追加ボタンをクリックして少なくとも一つのフォルダーをこのライブラリに追加してください。", + "PlaybackErrorNoCompatibleStream": "このクライアントはメディアと互換性がなく、サーバーも互換性のあるメディアフォーマットで送信しません。", + "PlayNextEpisodeAutomatically": "次のエピソードを自動で再生" } From 082b0f94c4a26fc39192c47a5fa4061af3bbd947 Mon Sep 17 00:00:00 2001 From: minob Date: Mon, 26 Oct 2020 07:17:50 +0000 Subject: [PATCH 344/365] Translated using Weblate (Japanese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ja/ --- src/strings/ja.json | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/strings/ja.json b/src/strings/ja.json index 017e089371..dab78d9c3b 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -1284,5 +1284,12 @@ "PleaseConfirmPluginInstallation": "プラグインのインストールを進めるには上記を確認し OK をクリックしてください。", "PleaseAddAtLeastOneFolder": "追加ボタンをクリックして少なくとも一つのフォルダーをこのライブラリに追加してください。", "PlaybackErrorNoCompatibleStream": "このクライアントはメディアと互換性がなく、サーバーも互換性のあるメディアフォーマットで送信しません。", - "PlayNextEpisodeAutomatically": "次のエピソードを自動で再生" + "PlayNextEpisodeAutomatically": "次のエピソードを自動で再生", + "Profile": "プロフィール", + "ProductionLocations": "制作拠点", + "Primary": "主画像", + "Previous": "前", + "PreferEmbeddedEpisodeInfosOverFileNames": "ファイル名より埋め込まれたエピソード情報を優先", + "PreferEmbeddedEpisodeInfosOverFileNamesHelp": "埋め込まれたメタデータにエピソードの情報があった場合にそれを使用します。", + "PreferEmbeddedTitlesOverFileNamesHelp": "これはインターネットメタデータやローカルメタデータが利用できない時にデフォルトで表示するタイトルを決定します。" } From eca4de2dde77a2c01644fac1df9dbb163ff6972e Mon Sep 17 00:00:00 2001 From: minob Date: Mon, 26 Oct 2020 07:35:58 +0000 Subject: [PATCH 345/365] Translated using Weblate (Japanese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ja/ --- src/strings/ja.json | 56 ++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 53 insertions(+), 3 deletions(-) diff --git a/src/strings/ja.json b/src/strings/ja.json index dab78d9c3b..c9ecf4bf16 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -618,7 +618,7 @@ "Search": "検索", "SearchResults": "検索結果", "Series": "シリーズ", - "ServerNameIsRestarting": "Jellyfinサーバー - {0} は再起動中です。", + "ServerNameIsRestarting": "サーバー - {0} は再起動中です。", "Settings": "設定", "ShowAdvancedSettings": "高度な設定を表示", "ShowYear": "年を表示", @@ -911,7 +911,7 @@ "PasswordMatchError": "パスワードと確認用のパスワードは同一でないといけません。", "ReplaceExistingImages": "現在の画像を置き換える", "SearchForSubtitles": "字幕を検索", - "ServerNameIsShuttingDown": "Jellyfinサーバー - {0} は停止中です。", + "ServerNameIsShuttingDown": "サーバー - {0} は停止中です。", "SettingsSaved": "設定を保存しました。", "ValueSeconds": "{0} 秒", "ValueTimeLimitSingleHour": "タイムリミット: 1 時間", @@ -1291,5 +1291,55 @@ "Previous": "前", "PreferEmbeddedEpisodeInfosOverFileNames": "ファイル名より埋め込まれたエピソード情報を優先", "PreferEmbeddedEpisodeInfosOverFileNamesHelp": "埋め込まれたメタデータにエピソードの情報があった場合にそれを使用します。", - "PreferEmbeddedTitlesOverFileNamesHelp": "これはインターネットメタデータやローカルメタデータが利用できない時にデフォルトで表示するタイトルを決定します。" + "PreferEmbeddedTitlesOverFileNamesHelp": "これはインターネットメタデータやローカルメタデータが利用できない時にデフォルトで表示するタイトルを決定します。", + "SubtitleAppearanceSettingsDisclaimer": "これらの設定は画像字幕(PGS、DVD等) やSS/SSAのように独自のスタイルを埋め込む字幕には適用されません。", + "SubtitleAppearanceSettingsAlsoPassedToCastDevices": "これらの設定はこのデバイスから再生を開始する Chromecast にも適用されます。", + "SpecialFeatures": "特殊機能", + "SortChannelsBy": "チャンネルの並び替え:", + "SortByValue": "{0} で並び替え", + "SmartSubtitlesHelp": "外国語の音声だった場合に優先言語に合わせた字幕が読み込まれます。", + "Smart": "スマート", + "Smaller": "最小", + "SmallCaps": "スモールキャピタル", + "SkipEpisodesAlreadyInMyLibraryHelp": "シーズンとエピソード番号を取得可能な場合はエピソードの比較に使用します。", + "SkipEpisodesAlreadyInMyLibrary": "すでにライブラリに存在する場合はエピソードを録画しません", + "SimultaneousConnectionLimitHelp": "許可する同時ストリームの最大数。0を入力した場合は制限されません。", + "Filter": "フィルター", + "New": "新規", + "ShowMore": "さらに表示", + "ShowLess": "表示を減らす", + "ShowIndicatorsFor": "表示対象:", + "SettingsWarning": "これらの値を変更すると不安定や接続失敗などの原因となる可能性があります。もし問題が発生した場合、デフォルトに戻すことをおすすめします。", + "ServerUpdateNeeded": "このサーバーはアップデートする必要があります。最新バージョンをダウンロードする場合、 {0} をご参照ください", + "ServerRestartNeededAfterPluginInstall": "Jellyfin はプラグインをインストールした後に再起動を必要とします。", + "SeriesRecordingScheduled": "シリーズの録画スケジュール。", + "SeriesDisplayOrderHelp": "放送日、DVDの順番、番号順でエピソードを並び替えます。", + "SelectServer": "サーバーを選択", + "SelectAdminUsername": "管理アカウントのユーザ名を選択してください。", + "Season": "シーズン", + "SaveSubtitlesIntoMediaFoldersHelp": "動画ファイルと一緒に字幕を保存することでより管理しやすくなります。", + "SaveChanges": "変更を保存", + "Restart": "再起動", + "ResetPassword": "パスワードをリセット", + "RefreshDialogHelp": "メタデータはダッシュボードで有効化されている設定やインターネットサービスに基づいて更新されます。", + "MessageChangeRecordingPath": "録画フォルダーを変更しても既存の録画は以前の場所から新しい場所へは移行されません。もし必要であれば手動で移動してください。", + "RecordSeries": "シリーズ録画", + "Record": "録画", + "RecommendationBecauseYouWatched": "{0} を視聴したので", + "RecommendationBecauseYouLike": "{0} がお気に入りのため", + "RecommendationStarring": "{0} 主演", + "RecentlyWatched": "最近視聴", + "Rate": "評価", + "Raised": "浮き上がり", + "QuickConnectNotActive": "クイックコネクトはこのサーバーで有効化されていません", + "QuickConnectNotAvailable": "サーバー管理者にクイックコネクトを有効化するようお問い合わせください", + "QuickConnectInvalidCode": "無効なクイックコネクトコードです", + "QuickConnectDescription": "クイックコネクトでサインインする場合、ログインするデバイスのクイックコネクトボタンを選択して以下のコードを入力します。", + "QuickConnectDeactivated": "ログインのリクエストが承認される前にクイックコネクトが無効化されました", + "QuickConnectAuthorizeFail": "不明なクイックコネクトコードです", + "QuickConnectAuthorizeSuccess": "リクエストが承認されました", + "QuickConnectAuthorizeCode": "コード {0} を入力してログイン", + "QuickConnectActivationSuccessful": "有効化に成功しました", + "QuickConnect": "クイックコネクト", + "Programs": "番組" } From 7b6dab41db9a594bd66514cdafaaac928fd0c244 Mon Sep 17 00:00:00 2001 From: minob Date: Mon, 26 Oct 2020 10:39:58 +0000 Subject: [PATCH 346/365] Translated using Weblate (Japanese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ja/ --- src/strings/ja.json | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/src/strings/ja.json b/src/strings/ja.json index c9ecf4bf16..e8230fa71f 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -953,7 +953,7 @@ "BoxSet": "ボックスセット", "AllowFfmpegThrottlingHelp": "トランスコードや remux が現在の再生位置から十分に先に進んだ場合、処理を一時停止してリソースの消費を抑えます。これは、あまり早送り・早戻しをしないで視聴する場合に便利です。再生に問題が発生した場合は、この機能をオフにしてください。", "LabelDisplaySpecialsWithinSeasons": "放送されたシーズン内のスペシャルを表示", - "LabelDeinterlaceMethod": "インターレス解除方法:", + "LabelDeinterlaceMethod": "インターレース解除方法:", "LabelDefaultUserHelp": "接続されたデバイスに表示するユーザーライブラリを決定します。これは、プロファイルを使用して各デバイスに対してオーバーライドすることができます。", "LabelDateAddedBehavior": "新規コンテンツの追加日のふるまい:", "LabelCustomCertificatePathHelp": "カスタムドメインでTLSサポートを有効にするための証明書と秘密鍵を含むPKCS #12ファイルのパス。", @@ -1341,5 +1341,29 @@ "QuickConnectAuthorizeCode": "コード {0} を入力してログイン", "QuickConnectActivationSuccessful": "有効化に成功しました", "QuickConnect": "クイックコネクト", - "Programs": "番組" + "Programs": "番組", + "Writers": "脚本", + "WizardCompleted": "今必要なものはこれだけです。Jellyfin はメディアライブラリについての情報を集め始めました。完了をクリックしてからダッシュボードを表示し、アプリを確認してください。", + "ViewAlbumArtist": "アルバムアーティストを表示", + "VideoAudio": "動画の音声", + "Video": "動画", + "ValueConditions": "状態: {0}", + "UserProfilesIntro": "Jellyfin には画面設定、再生状態、ペアレンタルコントロールなどの細かいユーザープロファイルが含まれています。", + "Unplayed": "未再生", + "UninstallPluginConfirmation": "本当に {0} をアンインストールしてよろしいですか?", + "Uniform": "境界線", + "UseDoubleRateDeinterlacingHelp": "この設定ではインターレース解除にフィールドレートが使用されます。これは多くの場合bobデインターレースと呼ばれ、フレームレートを2倍にすることでテレビでインターレースされたビデオを見るときのようなフルモーションを提供します。", + "UseDoubleRateDeinterlacing": "インターレース解除の際にフレームレートを倍にする", + "TvLibraryHelp": "{0}TV 命名規則ガイド{1} をご参照ください。", + "ThumbCard": "サムネイルカード", + "Thumb": "サムネイル", + "ThisWizardWillGuideYou": "このウィザードはセットアッププロセスを助けるガイドとなります。まず始めに、お好みの言語を選択してください。", + "TellUsAboutYourself": "あなたのことを教えてください", + "TabUpcoming": "近日公開", + "TabScheduledTasks": "スケジュールタスク", + "TabRepositories": "リポジトリ", + "SystemDlnaProfilesHelp": "システムプロファイルは読み取り専用です。システムプロファイルの変更は、新しいカスタムプロファイルに保存されます。", + "SyncPlayAccessHelp": "このユーザーはアクセスできるSyncPlayの機能のレベルを 選択します。SyncPlay は他のデバイスとの同期再生を可能にします。", + "Subtitle": "字幕", + "SubtitleDownloadersHelp": "あなたの好みに応じて有効化とランク付けで字幕ダウンローダーを優先度順にしてください。" } From ad2ee8481ab27969753f6eb1cde6af2b95b32061 Mon Sep 17 00:00:00 2001 From: minob Date: Mon, 26 Oct 2020 11:48:45 +0000 Subject: [PATCH 347/365] Translated using Weblate (Japanese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ja/ --- src/strings/ja.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/ja.json b/src/strings/ja.json index e8230fa71f..b8c302a427 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -1365,5 +1365,6 @@ "SystemDlnaProfilesHelp": "システムプロファイルは読み取り専用です。システムプロファイルの変更は、新しいカスタムプロファイルに保存されます。", "SyncPlayAccessHelp": "このユーザーはアクセスできるSyncPlayの機能のレベルを 選択します。SyncPlay は他のデバイスとの同期再生を可能にします。", "Subtitle": "字幕", - "SubtitleDownloadersHelp": "あなたの好みに応じて有効化とランク付けで字幕ダウンローダーを優先度順にしてください。" + "SubtitleDownloadersHelp": "あなたの好みに応じて有効化とランク付けで字幕ダウンローダーを優先度順にしてください。", + "XmlDocumentAttributeListHelp": "これらの属性はすべてのXMLレスポンスのルートエレメントにも適用されます。" } From 3045ab495872ed16c7cdc10fba3d09ea2097479b Mon Sep 17 00:00:00 2001 From: minob Date: Mon, 26 Oct 2020 13:30:09 +0000 Subject: [PATCH 348/365] Translated using Weblate (Japanese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ja/ --- src/strings/ja.json | 56 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 55 insertions(+), 1 deletion(-) diff --git a/src/strings/ja.json b/src/strings/ja.json index b8c302a427..c62d1a8e51 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -1366,5 +1366,59 @@ "SyncPlayAccessHelp": "このユーザーはアクセスできるSyncPlayの機能のレベルを 選択します。SyncPlay は他のデバイスとの同期再生を可能にします。", "Subtitle": "字幕", "SubtitleDownloadersHelp": "あなたの好みに応じて有効化とランク付けで字幕ダウンローダーを優先度順にしてください。", - "XmlDocumentAttributeListHelp": "これらの属性はすべてのXMLレスポンスのルートエレメントにも適用されます。" + "XmlDocumentAttributeListHelp": "これらの属性はすべてのXMLレスポンスのルートエレメントにも適用されます。", + "LabelMaxMuxingQueueSizeHelp": "すべてのストリームが初期化されるのを待つ間にバッファリングできるパケットの最大数。ffmpeg のログで \"Too many packets buffered for output stream\" エラーが発生した場合は、この値を増やしてみてください。推奨値は 2048 です。", + "LabelMaxMuxingQueueSize": "最大多重化キューサイズ:", + "Preview": "プレビュー", + "SubtitleVerticalPositionHelp": "テキストが表示される行番号です。正数は上から下を示します。負数は下から上を示します。", + "LabelSubtitleVerticalPosition": "垂直位置:", + "ClearQueue": "キューをクリア", + "StopPlayback": "再生を停止", + "LabelTonemappingParam": "トーンマッピング パラメータ:", + "LabelTonemappingParamHelp": "トーンマッピングアルゴリズムを調整します。推奨値とデフォルト値はありません。一般的には空白のままとなります。", + "LabelTonemappingPeakHelp": "この値でsignal/nominal/referenceピークをオーバーライドします。表示メタデータに埋め込まれたピーク情報が信頼できない場合や、低域から高域へのトーンマッピングを行う場合に便利です。推奨値とデフォルト値は0です。", + "LabelTonemappingPeak": "トーンマッピングのピーク:", + "LabelTonemappingThreshold": "トーンマッピングのしきい値:", + "LabelTonemappingThresholdHelp": "トーンマッピングアルゴリズムのパラメータはシーンごとに微調整されます。そしてシーンが変化したかどうかを検出するためにしきい値を使用します。現在のフレーム平均輝度と現在の走行平均との差がしきい値を超えた場合、シーン平均とピークの輝度を再計算します。推奨値とデフォルト値は0.8と0.2です。", + "LabelTonemappingDesat": "トーンマッピングの彩度低下:", + "LabelTonemappingDesatHelp": "この明るさのレベルを超えるハイライトには彩度の低下を適用します。パラメータが高いほど色情報が保存されます。この設定はスーパーハイライトの色が不自然な白になるのを防ぐのに役立ちます。これにより画像がより自然に感じられるようになりますが、範囲外の色の情報が減少します。推奨値とデフォルト値は 0 と 0.5 です。", + "TonemappingRangeHelp": "出力のカラーレンジを選択します。自動の場合は入力のカラーレンジと同じになります。", + "LabelTonemappingRange": "トーンマッピング レンジ:", + "TonemappingAlgorithmHelp": "トーンマッピングを微調整することができます。もしこれらのオプションに馴染みがない場合はデフォルトのままにしてください。推奨値は Reinhard です。", + "LabelTonemappingAlgorithm": "使用するトーンマッピング アルゴリズムを選択:", + "AllowTonemappingHelp": "トーンマッピングは元のシーンを表現する上で非常に重要な情報である画像の詳細や色を維持したまま、動画のダイナミックレンジを HDR から SDR に変換することができます。現在はHDR10 または HLG メタデータが埋め込まれた動画をトランスコーディングする場合にのみ機能します。スムーズに再生されない場合や失敗する場合は、対応するハードウェアデコーダをオフにすることを検討してください。", + "EnableTonemapping": "トーンマッピングを有効化", + "LabelOpenclDeviceHelp": "これはトーンマッピングに使用される OpenCL デバイスです。ドットの左側がプラットフォーム番号、右側がプラットフォーム上のデバイス番号となります。デフォルト値は0.0です。OpenCL ハードウェアアクセラレーションの方法を含むffmpeg アプリケーションファイルである必要があります。", + "LabelOpenclDevice": "OpenCL デバイス:", + "LabelColorPrimaries": "プライマリーカラー:", + "LabelColorTransfer": "カラートランスファー:", + "LabelColorSpace": "色空間:", + "LabelVideoRange": "ビデオレンジ:", + "MediaInfoColorPrimaries": "プライマリーカラー", + "MediaInfoColorTransfer": "カラートランスファー", + "MediaInfoColorSpace": "色空間", + "MediaInfoVideoRange": "ビデオレンジ", + "ButtonPlayer": "プレーヤー", + "ButtonCast": "キャスト", + "EnableBlurHashHelp": "読み込み途中の画像を独自のプレースホルダーで表示します。", + "EnableBlurHash": "プレースホルダー画像のぼやかしを有効化", + "UnsupportedPlayback": "Jellyfin はプロテクトされたタイトルも含めすべてのコンテンツを試みますが、DRMでプロテクトされたコンテンツを解読することはできません。ファイルによっては暗号化やインタラクティブタイトルなどのサポートしていない機能により完全に黒く見える可能性があります。", + "EveryXHours": "{0} 時間ごと", + "EveryHour": "毎時", + "EveryXMinutes": "{0} 分ごと", + "OnWakeFromSleep": "スリープから復帰した時", + "WeeklyAt": "{0} の {1}", + "DailyAt": "毎日 {0}", + "LastSeen": "最後に視聴 {0}", + "PersonRole": "{0} として", + "ListPaging": "{2} 中の {0}-{1}", + "WriteAccessRequired": "Jellyfin はこのフォルダへの書き込み権限を要求します。書き込みアクセスを確認してもう一度お試しください。", + "PathNotFound": "パスを見つけることができませんでした。パスが有効であることを確認してもう一度お試しください。", + "Bwdif": "BWDIF", + "Yadif": "YADIF", + "XmlTvSportsCategoriesHelp": "これらのカテゴリの番組はスポーツ番組として表示されます。複数の場合は '|' で区切ってください。", + "XmlTvPathHelp": "XMLTV ファイルのパス。Jellyfin はこのファイルを読み込んで定期的に更新を確認します。ファイルの作成と更新はあなたが責任を持って行ってください。", + "XmlTvNewsCategoriesHelp": "これらのカテゴリの番組はニュース番組として表示されます。複数の場合は '|' で区切ってください。", + "XmlTvMovieCategoriesHelp": "これらのカテゴリの番組は映画として表示されます。複数の場合は '|' で区切ってください。", + "XmlTvKidsCategoriesHelp": "これらのカテゴリの番組は子供向けとして表示されます。複数の場合は '|' で区切ってください。" } From 90b31102c059746c4af6cfd8dfd1e2721a8e76a1 Mon Sep 17 00:00:00 2001 From: Tomi Date: Mon, 26 Oct 2020 18:07:21 +0000 Subject: [PATCH 349/365] Translated using Weblate (Finnish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fi/ --- src/strings/fi.json | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/src/strings/fi.json b/src/strings/fi.json index d1b794b17e..f431c755e2 100644 --- a/src/strings/fi.json +++ b/src/strings/fi.json @@ -13,12 +13,12 @@ "FileReadError": "Virhe tiedostoa luettaessa.", "LabelAudioLanguagePreference": "Äänen ensisijainen kieli:", "LabelCountry": "Maa:", - "LabelCurrentPassword": "Tämän hetkinen salasana:", + "LabelCurrentPassword": "Nykyinen salasana:", "LabelFinish": "Valmis", "LabelLanguage": "Kieli:", "LabelMaxParentalRating": "Suurin sallittu ikäraja:", "LabelNewPassword": "Uusi salasana:", - "LabelNewPasswordConfirm": "Uuden salasanan varmistus:", + "LabelNewPasswordConfirm": "Vahvista salasana:", "LabelSaveLocalMetadata": "Tallenna kuvamateriaali mediakansioihin", "LabelSaveLocalMetadataHelp": "Kuvamateriaalin ja metadatan tallentaminen suoraan kansioihin missä niitä on helppo muuttaa.", "LabelYoureDone": "Valmista!", @@ -117,7 +117,7 @@ "ButtonRefreshGuideData": "Päivitä oppaan tiedot", "ButtonRemove": "Poista", "ButtonRename": "Nimeä uudelleen", - "ButtonResetEasyPassword": "Nollaa helppo PIN-koodi", + "ButtonResetEasyPassword": "Nollaa PIN-koodi", "ButtonResume": "Jatka", "ButtonRevoke": "Peruuta", "ButtonScanAllLibraries": "Skannaa kaikki kirjastot", @@ -186,7 +186,7 @@ "DownloadsValue": "{0} latausta", "DrmChannelsNotImported": "Kanavia joissa on tekijänoikeusesto-ohjelmia, ei ladata.", "DropShadow": "Varjostus", - "EasyPasswordHelp": "Helppoa PIN-koodiasi käytetään offline-käyttöä tukevissa sovelluksissa, ja sitä voidaan myös käyttää verkossa kirjautumiseen.", + "EasyPasswordHelp": "Yksinkertaista PIN-koodiasi käytetään offline-käyttöön tuetuilla päätteillä. Sitä voidaan käyttää myös helppoon sisäänkirjautumiseen paikallisverkosta.", "Edit": "Muokkaa", "EditImages": "Muokkaa kuvia", "EditMetadata": "Muokkaa metadataa", @@ -299,7 +299,7 @@ "MessagePluginConfigurationRequiresLocalAccess": "Kirjaudu suoraan paikalliselle palvelimellesi muokataksesi tätä liitännäistä.", "MessagePleaseEnsureInternetMetadata": "Varmista, että metadatan lataus on käytössä.", "MessageNoServersAvailable": "Automaattisen palvelintunnistuksen avulla ei löydy palvelimia.", - "MessageInvalidForgotPasswordPin": "PIN-koodi on kelpaa tai vanhentunut. Yritä uudelleen.", + "MessageInvalidForgotPasswordPin": "Koodi on väärä tai se on vanhentunut. Yritä uudelleen.", "MessageImageTypeNotSelected": "Valitse kuvatyyppi pudotusvalikosta.", "MessageImageFileTypeAllowed": "Vain JPEG ja PNG tiedostomuotoja tuetaan.", "MessageContactAdminToResetPassword": "Ota yhteyttä järjestelmänvalvojaan nollataksesi salasanasi.", @@ -380,7 +380,7 @@ "HeaderIdentificationCriteriaHelp": "Lisää ainakin yksi tunnistuskriteeri.", "HeaderExternalIds": "Ulkoiset IDt:", "HeaderDirectPlayProfile": "Suoratoistoprofiili", - "HeaderEasyPinCode": "Helppo PIN-koodi", + "HeaderEasyPinCode": "Yksinkertainen PIN-koodi", "HeaderDownloadSync": "Lataus ja synkronointi", "HeaderDeveloperInfo": "Kehittäjäinfo", "HeaderDetectMyDevices": "Havaitse laitteitani", @@ -816,7 +816,7 @@ "LabelEnableBlastAliveMessages": "Lähetä hereilläolo -viesti", "LabelEnableBlastAliveMessagesHelp": "Ota tämä käyttöön, jos muilla verkon UPnP-laitteilla on ongelmia palvelimen havaitsemisessa.", "LabelEnableDlnaClientDiscoveryInterval": "Asiakaslaitteiden havaintoväli (sekunteina)", - "LabelEasyPinCode": "Helppo PIN-koodi:", + "LabelEasyPinCode": "Yksinkertainen PIN-koodi:", "LabelDynamicExternalId": "{0} Id:", "LabelDisplayLanguageHelp": "Jellyfinin kääntäminen on käynnissä oleva projekti.", "LabelDisplayLanguage": "Näytön kieli:", @@ -1165,7 +1165,7 @@ "LabelModelName": "Mallinimi", "LabelModelDescription": "Mallikuvaus", "LabelModelNumber": "Mallinumero", - "LabelInNetworkSignInWithEasyPassword": "Salli sisäverkkokirjautuminen helpolla PIN-koodilla", + "LabelInNetworkSignInWithEasyPassword": "Salli sisäverkkokirjautuminen PIN-koodilla", "HeaderCodecProfileHelp": "Dekooderiprofiilit määrittävät laitteen rajoitukset, kun se toistaa erityyppisiä koodauksia. Jos rajoitus on voimassa, sisältö koodataan uudelleen, vaikka koodaustyypiksi on asetettu suora toisto.", "Authorize": "Valtuuta", "EnableAutoCast": "Aseta oletukseksi", @@ -1184,5 +1184,6 @@ "ImportFavoriteChannelsHelp": "Ainoastaan kanavat, jotka on merkitty suosikkiksi viritinlaitteessa, tuodaan.", "HeaderTranscodingProfileHelp": "Lisää transkoodausprofiileja osoittamaan, mitä muotoja tulisi käyttää, kun transkoodaus on tarpeen.", "LabelAlbumArtMaxResHelp": "Upnp: albumArtURI -ominaisuuden kautta näytetyn albumikuvan enimmäistarkkuus.", - "KnownProxiesHelp": "Pilkuilla erotettu luettelo tunnettujen välityspalvelinten IP-osoitteista, joita käytetään muodostettaessa yhteyttä Jellyfin-palvelusi. Tämä vaaditaan X-Forwarded-For-otsikkojen oikeaan käyttöön. Uudelleenkäynnistys vaaditaan tallennuksen jälkeen." + "KnownProxiesHelp": "Pilkuilla erotettu luettelo tunnettujen välityspalvelinten IP-osoitteista, joita käytetään muodostettaessa yhteyttä Jellyfin-palvelusi. Tämä vaaditaan X-Forwarded-For-otsikkojen oikeaan käyttöön. Uudelleenkäynnistys vaaditaan tallennuksen jälkeen.", + "LabelInNetworkSignInWithEasyPasswordHelp": "Kirjaudu helppokäyttöisen PIN-koodin avulla sisään lähiverkon päätteisiin. Normaalia salasanaasi tarvitaan vain, kun kirjaudut sisään etäverkosta. Jos PIN-koodi jätetään tyhjäksi, et tarvitse salasanaa kotiverkossasi." } From 2bced31f42b397c4b388a86dacd47e1ab1eefd06 Mon Sep 17 00:00:00 2001 From: Tomi Date: Mon, 26 Oct 2020 19:09:36 +0000 Subject: [PATCH 350/365] Translated using Weblate (Finnish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fi/ --- src/strings/fi.json | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/strings/fi.json b/src/strings/fi.json index f431c755e2..4ecb41fe7c 100644 --- a/src/strings/fi.json +++ b/src/strings/fi.json @@ -168,7 +168,7 @@ "DetectingDevices": "Tunnistetaan laitteita", "DeviceAccessHelp": "Tämä pätee ainoastaan laitteisiin, jotka voidaan tunnistaa uniikkina ja ei estä selainpääsyä. Uusien laitteiden suodattaminen estää niiden käyttämisen ennen hyväksyntää täältä.", "DirectPlaying": "Suoraan toistaminen", - "DirectStreamHelp1": "Tämä media on yhteensopiva laitteen kanssa katsoen resoluutiota ja mediatyyppiä (H.264, AC3, jne.), mutta se ei ole yhteensopivassa tiedostosäiliössä (mkv, avi, wmv, jne.). Tämä video uudelleenpakataan lennossa ennen laitteeseen lähetystä.", + "DirectStreamHelp1": "Tämä media on yhteensopiva laitteen kanssa resoluution ja mediatyyppin suhteen (H.264, AC3, jne.), mutta se ei tue tiedostomuotoja (mkv, avi, wmv, jne.). Tämä video uudelleenpakataan lennossa ennen laitteeseen lähetystä.", "DirectStreamHelp2": "Tiedoston suoratoisto käyttää erittäin vähän prosessorin resursseja ilman laadun heikkenemistä.", "DirectStreaming": "Suoratoisto", "Director": "Ohjaaja", @@ -197,7 +197,7 @@ "ButtonAddImage": "Lisää kuva", "Movies": "Elokuvat", "HeaderContinueWatching": "Jatka katsomista", - "HeaderAlbumArtists": "Albumin esittäjä", + "HeaderAlbumArtists": "Albumin artistit", "Genres": "Tyylilajit", "Folders": "Kansiot", "Favorites": "Suosikit", @@ -207,7 +207,7 @@ "ValueSpecialEpisodeName": "Erikois - {0}", "Sync": "Synkronoi", "Songs": "Kappaleet", - "Shows": "Sarjat", + "Shows": "Ohjelmat", "CopyStreamURLSuccess": "Osoite kopioitu onnistuneesti.", "DeathDateValue": "Kuoli: {}", "CustomDlnaProfilesHelp": "Luo uusi profiili kohdistaaksesi uuteen laitteeseen tai ohittaaksesi järjestelmäprofiilin.", @@ -1021,12 +1021,12 @@ "EnableDetailsBannerHelp": "Näyttää julistekuvan yksityiskohdat -sivun ylälaidassa.", "EnableDetailsBanner": "Yksityiskohtien julistekuva", "ButtonSyncPlay": "SyncPlay", - "HeaderAccessSchedule": "Käyttöoikeusaikataulu", - "HeaderAccessScheduleHelp": "Luo käyttöoikeusaikataulu rajoittaaksesi käyttöä tietylle aikavälille.", + "HeaderAccessSchedule": "Käyttöaikataulu", + "HeaderAccessScheduleHelp": "Luo käyttötaulu rajoittaaksesi käyttöä tietylle aikavälille.", "HardwareAccelerationWarning": "Laitteistokiihdytyksen käyttöönotto voi aiheuttaa epävakautta joissain ympäristöissä. Varmista että sekä käyttöjärjestelmäsi että videoajurisi ovat ajan tasalla. Mikäli huomaat ongelmia videotoistossa säädettyäsi tätä asetusta, sinun täytyy muuttaa asetus takaisin kohtaan \"Ei mitään\".", "EncoderPresetHelp": "Valitse nopeampi arvo kohentaaksesi suorituskykyä tai hitaampi arvo parantaaksesi kuvanlaatua.", "H264CrfHelp": "Constant Rate Factor (CRF) on x264 -enkooderin kuvanlaadun vakioasetus. Voit valita arvon lukujen 0 ja 51 väliltä, jossa matalammat arvot tarkoittavat parempaa kuvanlaatua (suurempien tiedostokokojen hinnalla). Järkevät arvot ovat väliltä 18-28. Vakioarvo x264:lle on 23, joten voit käyttää sitä lähtökohtana.", - "GuideProviderSelectListings": "Valitse listaukset", + "GuideProviderSelectListings": "Valitse luettelot", "GuideProviderLogin": "Kirjaudu", "GuestStar": "Vieraileva tähti", "GroupVersions": "Ryhmitä versiot", @@ -1041,10 +1041,10 @@ "HeaderCancelRecording": "Peruuta tallennus", "HeaderBranding": "Brändäys", "HeaderBlockItemsWithNoRating": "Estä kaikki joissa ei ole luokitusta tai jonka luokitusta ei voida tunnistaa:", - "HeaderAppearsOn": "Esiintyy seuraavissa", + "HeaderAppearsOn": "Osallistuu", "ApiKeysCaption": "Lista aktiivisista API-avaimista", "HeaderApiKeysHelp": "Ulkoiset sovellukset tarvitsevat API-avaimen voidakseen toimia palvelimen kanssa. Avaimet myönnetään joko kirjautumalla sisään normaalilla käyttäjätunnuksella tai myöntämällä sellainen sovellukselle manuaalisesti.", - "HeaderAdditionalParts": "Muut osat", + "HeaderAdditionalParts": "Lisäosat", "HeaderActiveRecordings": "Käynnissä olevat nauhoitukset", "Data": "Tieto", "LabelImportOnlyFavoriteChannels": "Rajaa vain suosikkikanaviin", From d8a0abc6e90cfce2d4d23df347265b95797371ad Mon Sep 17 00:00:00 2001 From: Gubb Jonas Date: Mon, 26 Oct 2020 20:16:35 +0000 Subject: [PATCH 351/365] Translated using Weblate (Swedish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/sv/ --- src/strings/sv.json | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/src/strings/sv.json b/src/strings/sv.json index 6c1dcdcfcc..ffd511339c 100644 --- a/src/strings/sv.json +++ b/src/strings/sv.json @@ -969,8 +969,8 @@ "SeriesRecordingScheduled": "Serieinspelning schemalagd.", "SeriesSettings": "Serieinställningar", "SeriesYearToPresent": "{0} - nu", - "ServerNameIsRestarting": "Jellyfin Server - {0} startas om.", - "ServerNameIsShuttingDown": "Jellyfin Server - {0} stängs ner.", + "ServerNameIsRestarting": "Servern på {0} startas om.", + "ServerNameIsShuttingDown": "Servern på {0} stängs ner.", "ServerRestartNeededAfterPluginInstall": "Jellyfin behöver startas om efter ett tillägg installeras.", "ServerUpdateNeeded": "Den här servern behöver uppdateras. För att ladda ner senaste versionen, gå till {0}", "Settings": "Inställningar", @@ -1251,7 +1251,7 @@ "DailyAt": "Dagligen vid {0}", "PersonRole": "som {0}", "ListPaging": "{0}-{1} av {2}", - "WriteAccessRequired": "Jellyfin Server kräver skrivrättigheter till denna katalog. Säkerställ skrivrättigheter och försök igen.", + "WriteAccessRequired": "Jellyfin kräver skrivrättigheter till denna katalog. Säkerställ skrivrättigheter och försök igen.", "PathNotFound": "Sökvägen hittades inte. Säkerställ att sökvägen är korrekt och försök igen.", "Season": "Säsong", "PreferEmbeddedEpisodeInfosOverFileNames": "Föredra inbäddad avsnittsinformation före filnamn", @@ -1378,5 +1378,16 @@ "PreviousTrack": "Hoppa över till föregående", "MessageGetInstalledPluginsError": "Ett fel inträffade när listan över installerade tillägg skulle hämtas.", "QuickConnectInvalidCode": "Ogiltig Snabbanslutningskod", - "QuickConnectDescription": "För att logga in med snabbanslutning, klicka på Snabbanslutning-knappen på den enhet du loggar in från, och ange koden som visas nedan." + "QuickConnectDescription": "För att logga in med snabbanslutning, klicka på Snabbanslutning-knappen på den enhet du loggar in från, och ange koden som visas nedan.", + "LabelSubtitleVerticalPosition": "Vertikal position:", + "LabelOpenclDevice": "OpenCL-enhet:", + "Video": "Video", + "ThumbCard": "Tumkort", + "Subtitle": "Undertext", + "SpecialFeatures": "Specialfunktioner", + "SelectServer": "Välj server", + "Restart": "Starta om", + "ResetPassword": "Återställ lösenord", + "QuickConnectNotActive": "Snabbanslutning är inte aktiverat på denna server", + "QuickConnectNotAvailable": "Be din serveradministratör aktivera snabbanslutning" } From 629871f5e98e6683066fbaec80c7a1d20fc42358 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 27 Oct 2020 02:56:18 +0000 Subject: [PATCH 352/365] Bump swiper from 6.3.3 to 6.3.4 Bumps [swiper](https://github.com/nolimits4web/Swiper) from 6.3.3 to 6.3.4. - [Release notes](https://github.com/nolimits4web/Swiper/releases) - [Changelog](https://github.com/nolimits4web/swiper/blob/master/CHANGELOG.md) - [Commits](https://github.com/nolimits4web/Swiper/compare/v6.3.3...v6.3.4) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 12ad0536da..48391d4201 100644 --- a/package.json +++ b/package.json @@ -81,7 +81,7 @@ "resize-observer-polyfill": "^1.5.1", "screenfull": "^5.0.2", "sortablejs": "^1.12.0", - "swiper": "^6.3.3", + "swiper": "^6.3.4", "webcomponents.js": "^0.7.24", "whatwg-fetch": "^3.4.1" }, diff --git a/yarn.lock b/yarn.lock index 9df43191bc..da0eca8b9d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -11227,10 +11227,10 @@ svgo@^1.0.0, svgo@^1.3.2: unquote "~1.1.1" util.promisify "~1.0.0" -swiper@^6.3.3: - version "6.3.3" - resolved "https://registry.yarnpkg.com/swiper/-/swiper-6.3.3.tgz#e0b2e27621c07e789bfa91569b5676e896d18001" - integrity sha512-SnG1weu2GhqKxuG4NTIA1A6OE9x3P/+d2DW6APLUgYNHm0ZgkAOxL/tEDubiHvgwqtaVaz6QWqkSbCaDYffSNg== +swiper@^6.3.4: + version "6.3.4" + resolved "https://registry.yarnpkg.com/swiper/-/swiper-6.3.4.tgz#94bebb39437825d303afd19d9f28927fa943e5f2" + integrity sha512-6XWBJCAjOTQd3yVVZO9y47B007QPeiCcn/pm9OkueVLpYNWZBAXpoX0P8JaGch/bzcaH3oXteWCj5KC8R3AloA== dependencies: dom7 "^3.0.0-alpha.7" ssr-window "^3.0.0-alpha.4" From abd66121c59f115299420e4a4b003838068765d4 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 27 Oct 2020 02:56:48 +0000 Subject: [PATCH 353/365] Bump confusing-browser-globals from 1.0.9 to 1.0.10 Bumps [confusing-browser-globals](https://github.com/facebook/create-react-app/tree/HEAD/packages/confusing-browser-globals) from 1.0.9 to 1.0.10. - [Release notes](https://github.com/facebook/create-react-app/releases) - [Changelog](https://github.com/facebook/create-react-app/blob/master/CHANGELOG-1.x.md) - [Commits](https://github.com/facebook/create-react-app/commits/confusing-browser-globals@1.0.10/packages/confusing-browser-globals) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 12ad0536da..4f279c18fc 100644 --- a/package.json +++ b/package.json @@ -16,7 +16,7 @@ "autoprefixer": "^9.8.6", "babel-loader": "^8.0.6", "browser-sync": "^2.26.13", - "confusing-browser-globals": "^1.0.9", + "confusing-browser-globals": "^1.0.10", "copy-webpack-plugin": "^5.1.1", "css-loader": "^5.0.0", "cssnano": "^4.1.10", diff --git a/yarn.lock b/yarn.lock index 9df43191bc..1deab8fae8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2830,10 +2830,10 @@ config-chain@^1.1.11: ini "^1.3.4" proto-list "~1.2.1" -confusing-browser-globals@^1.0.9: - version "1.0.9" - resolved "https://registry.yarnpkg.com/confusing-browser-globals/-/confusing-browser-globals-1.0.9.tgz#72bc13b483c0276801681871d4898516f8f54fdd" - integrity sha512-KbS1Y0jMtyPgIxjO7ZzMAuUpAKMt1SzCL9fsrKsX6b0zJPTaT0SiSPmewwVZg9UAO83HVIlEhZF84LIjZ0lmAw== +confusing-browser-globals@^1.0.10: + version "1.0.10" + resolved "https://registry.yarnpkg.com/confusing-browser-globals/-/confusing-browser-globals-1.0.10.tgz#30d1e7f3d1b882b25ec4933d1d1adac353d20a59" + integrity sha512-gNld/3lySHwuhaVluJUKLePYirM3QNCKzVxqAdhJII9/WXKVX5PURzMVJspS1jTslSqjeuG4KMVTSouit5YPHA== connect-history-api-fallback@^1: version "1.6.0" From 8ee87d4a65473e7c0c40c448f601898184370df5 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 27 Oct 2020 02:57:18 +0000 Subject: [PATCH 354/365] Bump eslint from 7.11.0 to 7.12.0 Bumps [eslint](https://github.com/eslint/eslint) from 7.11.0 to 7.12.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v7.11.0...v7.12.0) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/package.json b/package.json index 12ad0536da..30f6be114c 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "css-loader": "^5.0.0", "cssnano": "^4.1.10", "del": "^6.0.0", - "eslint": "^7.11.0", + "eslint": "^7.12.0", "eslint-plugin-compat": "^3.5.1", "eslint-plugin-eslint-comments": "^3.2.0", "eslint-plugin-import": "^2.22.1", diff --git a/yarn.lock b/yarn.lock index 9df43191bc..aa653092c7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -861,10 +861,10 @@ resolved "https://registry.yarnpkg.com/@csstools/convert-colors/-/convert-colors-1.4.0.tgz#ad495dc41b12e75d588c6db8b9834f08fa131eb7" integrity sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw== -"@eslint/eslintrc@^0.1.3": - version "0.1.3" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.1.3.tgz#7d1a2b2358552cc04834c0979bd4275362e37085" - integrity sha512-4YVwPkANLeNtRjMekzux1ci8hIaH5eGKktGqR0d3LWsKNn5B2X/1Z6Trxy7jQXl9EBGE6Yj02O+t09FMeRllaA== +"@eslint/eslintrc@^0.2.0": + version "0.2.0" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.2.0.tgz#bc7e3c4304d4c8720968ccaee793087dfb5fe6b4" + integrity sha512-+cIGPCBdLCzqxdtwppswP+zTsH9BOIGzAeKfBIbtb4gW/giMlfMwP0HUSFfhzh20f9u8uZ8hOp62+4GPquTbwQ== dependencies: ajv "^6.12.4" debug "^4.1.1" @@ -4143,13 +4143,13 @@ eslint-visitor-keys@^2.0.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz#21fdc8fbcd9c795cc0321f0563702095751511a8" integrity sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ== -eslint@^7.11.0: - version "7.11.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.11.0.tgz#aaf2d23a0b5f1d652a08edacea0c19f7fadc0b3b" - integrity sha512-G9+qtYVCHaDi1ZuWzBsOWo2wSwd70TXnU6UHA3cTYHp7gCTXZcpggWFoUVAMRarg68qtPoNfFbzPh+VdOgmwmw== +eslint@^7.12.0: + version "7.12.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.12.0.tgz#7b6a85f87a9adc239e979bb721cde5ce0dc27da6" + integrity sha512-n5pEU27DRxCSlOhJ2rO57GDLcNsxO0LPpAbpFdh7xmcDmjmlGUfoyrsB3I7yYdQXO5N3gkSTiDrPSPNFiiirXA== dependencies: "@babel/code-frame" "^7.0.0" - "@eslint/eslintrc" "^0.1.3" + "@eslint/eslintrc" "^0.2.0" ajv "^6.10.0" chalk "^4.0.0" cross-spawn "^7.0.2" From 7525794f21c29646ddcda73574a5526ef013de93 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 27 Oct 2020 02:58:28 +0000 Subject: [PATCH 355/365] Bump headroom.js from 0.11.0 to 0.12.0 Bumps [headroom.js](https://github.com/WickyNilliams/headroom.js) from 0.11.0 to 0.12.0. - [Release notes](https://github.com/WickyNilliams/headroom.js/releases) - [Commits](https://github.com/WickyNilliams/headroom.js/compare/v0.11.0...v0.12.0) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 12ad0536da..983e6a0e5c 100644 --- a/package.json +++ b/package.json @@ -64,7 +64,7 @@ "epubjs": "^0.3.85", "fast-text-encoding": "^1.0.3", "flv.js": "^1.5.0", - "headroom.js": "^0.11.0", + "headroom.js": "^0.12.0", "hls.js": "^0.14.15", "howler": "^2.2.0", "intersection-observer": "^0.11.0", diff --git a/yarn.lock b/yarn.lock index 9df43191bc..b090b24157 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5593,10 +5593,10 @@ he@1.2.x, he@^1.2.0: resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== -headroom.js@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/headroom.js/-/headroom.js-0.11.0.tgz#26547a932025e4243abf8ace001b4ce5e110ed20" - integrity sha512-yI4ciZRD1WH22wa5uJDg2kMtRvhJwUJWo2l41Eby0BoAD+lzXL98lf5jDFxP4Q5W3HmlrpfItSfmqc3jCtasbw== +headroom.js@^0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/headroom.js/-/headroom.js-0.12.0.tgz#e09b466b18d22457f2023fb946ff620e47a5c205" + integrity sha512-iXnAafUm3FdzfJ91uixLws2hkKI1jC8bAKK/pt7XYr8Ie1jO7xbK48Ycpl9tUPyBgkzuj1p/PhJS0fy4E/5anA== hex-color-regex@^1.1.0: version "1.1.0" From f140dc54455f7fde33cb5146e8f3712e5674236d Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 27 Oct 2020 06:27:38 +0000 Subject: [PATCH 356/365] Bump hls.js from 0.14.15 to 0.14.16 Bumps [hls.js](https://github.com/video-dev/hls.js) from 0.14.15 to 0.14.16. - [Release notes](https://github.com/video-dev/hls.js/releases) - [Changelog](https://github.com/video-dev/hls.js/blob/master/docs/release-process.md) - [Commits](https://github.com/video-dev/hls.js/compare/v0.14.15...v0.14.16) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 983e6a0e5c..cc7ef742e3 100644 --- a/package.json +++ b/package.json @@ -65,7 +65,7 @@ "fast-text-encoding": "^1.0.3", "flv.js": "^1.5.0", "headroom.js": "^0.12.0", - "hls.js": "^0.14.15", + "hls.js": "^0.14.16", "howler": "^2.2.0", "intersection-observer": "^0.11.0", "jellyfin-apiclient": "^1.4.2", diff --git a/yarn.lock b/yarn.lock index b090b24157..18f8cafdb2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5603,10 +5603,10 @@ hex-color-regex@^1.1.0: resolved "https://registry.yarnpkg.com/hex-color-regex/-/hex-color-regex-1.1.0.tgz#4c06fccb4602fe2602b3c93df82d7e7dbf1a8a8e" integrity sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ== -hls.js@^0.14.15: - version "0.14.15" - resolved "https://registry.yarnpkg.com/hls.js/-/hls.js-0.14.15.tgz#3d41c6a51cef31d2629df2d9ad4333215770febe" - integrity sha512-zKOY9PZVeDBu3iXL6Dg8DfUPDEf71lTyy7JFgCOJXkqV48HeDfNoMhcN1trMrYRtMyFnpA7YBiI8c1DzSdLAFA== +hls.js@^0.14.16: + version "0.14.16" + resolved "https://registry.yarnpkg.com/hls.js/-/hls.js-0.14.16.tgz#4ff68a1fa7260a43d316270e9bc7f7bdf93c5731" + integrity sha512-VACiO99DQFBpflR4fI+6GVHUZn35R0SGGQo0XTDZOm2BUXbeuDHTghTC/k2/3wGln6KBmG8/bXIcDIzDsY2UEg== dependencies: eventemitter3 "^4.0.3" url-toolkit "^2.1.6" From d1dc398cc53b3ba09cc88084cac24c1ac76fd9cf Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 27 Oct 2020 06:29:47 +0000 Subject: [PATCH 357/365] Bump webpack from 5.0.0 to 5.2.0 Bumps [webpack](https://github.com/webpack/webpack) from 5.0.0 to 5.2.0. - [Release notes](https://github.com/webpack/webpack/releases) - [Commits](https://github.com/webpack/webpack/compare/v5.0.0...v5.2.0) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 194 +++++++++------------------------------------------ 2 files changed, 35 insertions(+), 161 deletions(-) diff --git a/package.json b/package.json index 3da8bb4b93..9a28b01661 100644 --- a/package.json +++ b/package.json @@ -50,7 +50,7 @@ "stylelint-config-rational-order": "^0.1.2", "stylelint-no-browser-hacks": "^1.2.1", "stylelint-order": "^4.1.0", - "webpack": "^5.0.0", + "webpack": "^5.2.0", "webpack-merge": "^4.2.2", "webpack-stream": "^6.1.0", "worker-plugin": "^5.0.0" diff --git a/yarn.lock b/yarn.lock index 50d8240197..7951f056ed 100644 --- a/yarn.lock +++ b/yarn.lock @@ -930,13 +930,6 @@ "@nodelib/fs.scandir" "2.1.3" fastq "^1.6.0" -"@npmcli/move-file@^1.0.1": - version "1.0.1" - resolved "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-1.0.1.tgz#de103070dac0f48ce49cf6693c23af59c0f70464" - integrity sha512-Uv6h1sT+0DrblvIrolFtbvM1FgWm+/sy4B3pvLp67Zys+thcukzS5ekn7HsZFGpWP4Q3fYJCljbWQE/XivMRLw== - dependencies: - mkdirp "^1.0.4" - "@sindresorhus/is@^0.7.0": version "0.7.0" resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.7.0.tgz#9a06f4f137ee84d7df0460c1fdb1135ffa6c50fd" @@ -1306,7 +1299,7 @@ acorn@^7.4.0: resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.0.tgz#e1ad486e6c54501634c6c397c5c121daa383607c" integrity sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w== -acorn@^8.0.3: +acorn@^8.0.4: version "8.0.4" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.0.4.tgz#7a3ae4191466a6984eee0fe3407a4f3aa9db8354" integrity sha512-XNP0PqF1XD19ZlLKvB7cMmnZswW4C/03pRHgirB30uSJTaS3A3V1/P4sS3HPvFmjoriPCJQs+JDSbm4bL1TxGQ== @@ -2123,7 +2116,7 @@ browserslist@^1.1.3: caniuse-db "^1.0.30000639" electron-to-chromium "^1.2.7" -browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.12.2, browserslist@^4.14.3, browserslist@^4.6.4, browserslist@^4.8.5: +browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.12.2, browserslist@^4.14.5, browserslist@^4.6.4, browserslist@^4.8.5: version "4.14.5" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.14.5.tgz#1c751461a102ddc60e40993639b709be7f2c4015" integrity sha512-Z+vsCZIvCBvqLoYkBFTwEYH3v5MCQbsAjp50ERycpOjnPmolg1Gjy4+KaWWpm8QOJt9GHkhdqAl14NpCX73CWA== @@ -2229,29 +2222,6 @@ cacache@^12.0.2, cacache@^12.0.3: unique-filename "^1.1.1" y18n "^4.0.0" -cacache@^15.0.5: - version "15.0.5" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-15.0.5.tgz#69162833da29170d6732334643c60e005f5f17d0" - integrity sha512-lloiL22n7sOjEEXdL8NAjTgv9a1u43xICE9/203qonkZUCj5X1UEWIdf2/Y0d6QcCtMzbKQyhrcDbdvlZTs/+A== - dependencies: - "@npmcli/move-file" "^1.0.1" - chownr "^2.0.0" - fs-minipass "^2.0.0" - glob "^7.1.4" - infer-owner "^1.0.4" - lru-cache "^6.0.0" - minipass "^3.1.1" - minipass-collect "^1.0.2" - minipass-flush "^1.0.5" - minipass-pipeline "^1.2.2" - mkdirp "^1.0.3" - p-map "^4.0.0" - promise-inflight "^1.0.1" - rimraf "^3.0.2" - ssri "^8.0.0" - tar "^6.0.2" - unique-filename "^1.1.1" - cache-base@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" @@ -2526,11 +2496,6 @@ chownr@^1.1.1: resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== -chownr@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" - integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== - chrome-trace-event@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz#234090ee97c7d4ad1a2c4beae27505deffc608a4" @@ -3877,10 +3842,10 @@ enhanced-resolve@^4.3.0: memory-fs "^0.5.0" tapable "^1.0.0" -enhanced-resolve@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.2.0.tgz#3db3307a608f236f33aeea79303d32915792cbab" - integrity sha512-NZlGLl8DxmZoq0uqPPtJfsCAir68uR047+Udsh1FH4+5ydGQdMurn/A430A1BtxASVmMEuS7/XiJ5OxJ9apAzQ== +enhanced-resolve@^5.3.0: + version "5.3.1" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.3.1.tgz#3f988d0d7775bdc2d96ede321dc81f8249492f57" + integrity sha512-G1XD3MRGrGfNcf6Hg0LVZG7GIKcYkbfHa5QMxt1HDUTdYoXH0JR1xXyg+MaKLF73E9A27uWNVxvFivNRYeUB6w== dependencies: graceful-fs "^4.2.4" tapable "^2.0.0" @@ -4118,7 +4083,7 @@ eslint-scope@^4.0.3: esrecurse "^4.1.0" estraverse "^4.1.1" -eslint-scope@^5.1.0, eslint-scope@^5.1.1: +eslint-scope@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== @@ -4617,15 +4582,6 @@ find-cache-dir@^2.1.0: make-dir "^2.0.0" pkg-dir "^3.0.0" -find-cache-dir@^3.3.1: - version "3.3.1" - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.1.tgz#89b33fad4a4670daa94f855f7fbe31d6d84fe880" - integrity sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ== - dependencies: - commondir "^1.0.1" - make-dir "^3.0.2" - pkg-dir "^4.1.0" - find-up@^1.0.0: version "1.1.2" resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" @@ -4811,13 +4767,6 @@ fs-extra@3.0.1: jsonfile "^3.0.0" universalify "^0.1.0" -fs-minipass@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" - integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== - dependencies: - minipass "^3.0.0" - fs-mkdirp-stream@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz#0b7815fc3201c6a69e14db98ce098c16935259eb" @@ -5936,7 +5885,7 @@ indexof@0.0.1: resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" integrity sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10= -infer-owner@^1.0.3, infer-owner@^1.0.4: +infer-owner@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== @@ -6467,10 +6416,10 @@ jellyfin-apiclient@^1.4.2: version "1.0.3" resolved "https://github.com/jellyfin/jellyfin-noto#b784602db063734c721a46563ae5d6577ec2b35d" -jest-worker@^26.5.0: - version "26.5.0" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.5.0.tgz#87deee86dbbc5f98d9919e0dadf2c40e3152fa30" - integrity sha512-kTw66Dn4ZX7WpjZ7T/SUDgRhapFRKWmisVAF0Rv4Fu8SLFD7eLbqpLvbxVqYhSgaWa7I+bW7pHnbyfNsH6stug== +jest-worker@^26.6.1: + version "26.6.1" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.6.1.tgz#c2ae8cde6802cc14056043f997469ec170d9c32a" + integrity sha512-R5IE3qSGz+QynJx8y+ICEkdI2OJ3RJjRQVEyCcFAd3yVhQSEtquziPO29Mlzgn07LOVE8u8jhJ1FqcwegiXWOw== dependencies: "@types/node" "*" merge-stream "^2.0.0" @@ -7084,13 +7033,6 @@ lru-cache@^5.1.1: dependencies: yallist "^3.0.2" -lru-cache@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" - integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== - dependencies: - yallist "^4.0.0" - lru-queue@0.1: version "0.1.0" resolved "https://registry.yarnpkg.com/lru-queue/-/lru-queue-0.1.0.tgz#2738bd9f0d3cf4f84490c5736c48699ac632cda3" @@ -7113,7 +7055,7 @@ make-dir@^2.0.0: pify "^4.0.1" semver "^5.6.0" -make-dir@^3.0.0, make-dir@^3.0.2: +make-dir@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== @@ -7430,42 +7372,6 @@ minimist@^1.1.0, minimist@^1.1.3, minimist@^1.2.0, minimist@^1.2.5: resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== -minipass-collect@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617" - integrity sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA== - dependencies: - minipass "^3.0.0" - -minipass-flush@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" - integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw== - dependencies: - minipass "^3.0.0" - -minipass-pipeline@^1.2.2: - version "1.2.4" - resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" - integrity sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A== - dependencies: - minipass "^3.0.0" - -minipass@^3.0.0, minipass@^3.1.1: - version "3.1.3" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.1.3.tgz#7d42ff1f39635482e15f9cdb53184deebd5815fd" - integrity sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg== - dependencies: - yallist "^4.0.0" - -minizlib@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" - integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== - dependencies: - minipass "^3.0.0" - yallist "^4.0.0" - mississippi@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022" @@ -7502,11 +7408,6 @@ mixin-deep@^1.2.0: dependencies: minimist "^1.2.5" -mkdirp@^1.0.3, mkdirp@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" - integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== - move-concurrently@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" @@ -8470,7 +8371,7 @@ pkg-dir@^3.0.0: dependencies: find-up "^3.0.0" -pkg-dir@^4.1.0, pkg-dir@^4.2.0: +pkg-dir@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== @@ -10656,13 +10557,6 @@ ssri@^6.0.1: dependencies: figgy-pudding "^3.5.1" -ssri@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-8.0.0.tgz#79ca74e21f8ceaeddfcb4b90143c458b8d988808" - integrity sha512-aq/pz989nxVYwn16Tsbj1TqFpD5LLrQxHf5zaHuieFV+R0Bbr4y8qUsOA45hXT/N4/9UNXTarBjnjVmjSOVaAA== - dependencies: - minipass "^3.1.1" - stable@^0.1.8: version "0.1.8" resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" @@ -11292,18 +11186,6 @@ tar@^2.0.0: fstream "^1.0.12" inherits "2" -tar@^6.0.2: - version "6.0.5" - resolved "https://registry.yarnpkg.com/tar/-/tar-6.0.5.tgz#bde815086e10b39f1dcd298e89d596e1535e200f" - integrity sha512-0b4HOimQHj9nXNEAA7zWwMM91Zhhba3pspja6sQbgTpynOJf+bkjBnfybNYzbpLbnwXnbyB4LOREvlyXLkCHSg== - dependencies: - chownr "^2.0.0" - fs-minipass "^2.0.0" - minipass "^3.0.0" - minizlib "^2.1.1" - mkdirp "^1.0.3" - yallist "^4.0.0" - temp-dir@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-1.0.0.tgz#0a7c0ea26d3a39afa7e0ebea9c1fc0bc4daa011d" @@ -11342,20 +11224,17 @@ terser-webpack-plugin@^1.4.3: webpack-sources "^1.4.0" worker-farm "^1.7.0" -terser-webpack-plugin@^4.1.0: - version "4.2.3" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-4.2.3.tgz#28daef4a83bd17c1db0297070adc07fc8cfc6a9a" - integrity sha512-jTgXh40RnvOrLQNgIkwEKnQ8rmHjHK4u+6UBEi+W+FPmvb+uo+chJXntKe7/3lW5mNysgSWD60KyesnhW8D6MQ== +terser-webpack-plugin@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.0.1.tgz#b1f02e43d93ca61a0bdd9e870f4e3489e12a6c9b" + integrity sha512-EwUe+XDTFf/2cAlmAlZZ7vRpNKMZUAypX2kIRm0Fmjlz4l7SqbI/VabmgiesNZW2nq/LR0N7ku/wlTQ6ygen0w== dependencies: - cacache "^15.0.5" - find-cache-dir "^3.3.1" - jest-worker "^26.5.0" + jest-worker "^26.6.1" p-limit "^3.0.2" schema-utils "^3.0.0" serialize-javascript "^5.0.1" source-map "^0.6.1" - terser "^5.3.4" - webpack-sources "^1.4.3" + terser "^5.3.8" terser@>=4, terser@^4.1.2, terser@^4.6.3: version "4.8.0" @@ -11366,10 +11245,10 @@ terser@>=4, terser@^4.1.2, terser@^4.6.3: source-map "~0.6.1" source-map-support "~0.5.12" -terser@^5.3.4: - version "5.3.5" - resolved "https://registry.yarnpkg.com/terser/-/terser-5.3.5.tgz#9e080baa0568f96654621b20eb9effa440b1484e" - integrity sha512-Qw3CZAMmmfU824AoGKalx+riwocSI5Cs0PoGp9RdSLfmxkmJgyBxqLBP/isDNtFyhHnitikvRMZzyVgeq+U+Tg== +terser@^5.3.8: + version "5.3.8" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.3.8.tgz#991ae8ba21a3d990579b54aa9af11586197a75dd" + integrity sha512-zVotuHoIfnYjtlurOouTazciEfL7V38QMAOhGqpXDEg6yT13cF4+fEP9b0rrCEQTn+tT46uxgFsTZzhygk+CzQ== dependencies: commander "^2.20.0" source-map "~0.7.2" @@ -12246,7 +12125,7 @@ webpack-merge@^4.2.2: dependencies: lodash "^4.17.15" -webpack-sources@^1.4.0, webpack-sources@^1.4.1, webpack-sources@^1.4.3: +webpack-sources@^1.4.0, webpack-sources@^1.4.1: version "1.4.3" resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ== @@ -12306,10 +12185,10 @@ webpack@^4.26.1: watchpack "^1.7.4" webpack-sources "^1.4.1" -webpack@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.0.0.tgz#c028b2f0c1db2322de1f4a30cc36f6e373d5a26a" - integrity sha512-OK+Q9xGgda3idw/DgCf75XsVFxRLPu48qPwygqI3W9ls5sDdKif5Ay4SM/1UVob0w4juJy14Zv9nNv0WeyV0aA== +webpack@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.2.0.tgz#02f22466b79751a80a50f20f027a716e296b3ef5" + integrity sha512-evtOjOJQq3zaHJIWsJjM4TGtNHtSrNVAIyQ+tdPW/fRd+4PLGbUG6S3xt+N4+QwDBOaCVd0xCWiHd4R6lWO5DQ== dependencies: "@types/eslint-scope" "^3.7.0" "@types/estree" "^0.0.45" @@ -12317,11 +12196,11 @@ webpack@^5.0.0: "@webassemblyjs/helper-module-context" "1.9.0" "@webassemblyjs/wasm-edit" "1.9.0" "@webassemblyjs/wasm-parser" "1.9.0" - acorn "^8.0.3" - browserslist "^4.14.3" + acorn "^8.0.4" + browserslist "^4.14.5" chrome-trace-event "^1.0.2" - enhanced-resolve "^5.2.0" - eslint-scope "^5.1.0" + enhanced-resolve "^5.3.0" + eslint-scope "^5.1.1" events "^3.2.0" glob-to-regexp "^0.4.1" graceful-fs "^4.2.4" @@ -12332,7 +12211,7 @@ webpack@^5.0.0: pkg-dir "^4.2.0" schema-utils "^3.0.0" tapable "^2.0.0" - terser-webpack-plugin "^4.1.0" + terser-webpack-plugin "^5.0.0" watchpack "^2.0.0" webpack-sources "^2.0.1" @@ -12505,11 +12384,6 @@ yallist@^3.0.2: resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== -yallist@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" - integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== - yaml@^1.10.0: version "1.10.0" resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.0.tgz#3b593add944876077d4d683fee01081bd9fff31e" From 1049fa7396e69b9436a216fb1d14aacaf542e7d8 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 27 Oct 2020 06:30:32 +0000 Subject: [PATCH 358/365] Bump howler from 2.2.0 to 2.2.1 Bumps [howler](https://github.com/goldfire/howler.js) from 2.2.0 to 2.2.1. - [Release notes](https://github.com/goldfire/howler.js/releases) - [Changelog](https://github.com/goldfire/howler.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/goldfire/howler.js/compare/v2.2.0...v2.2.1) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 2c900eed8e..817975e9b6 100644 --- a/package.json +++ b/package.json @@ -66,7 +66,7 @@ "flv.js": "^1.5.0", "headroom.js": "^0.12.0", "hls.js": "^0.14.16", - "howler": "^2.2.0", + "howler": "^2.2.1", "intersection-observer": "^0.11.0", "jellyfin-apiclient": "^1.4.2", "jellyfin-noto": "https://github.com/jellyfin/jellyfin-noto", diff --git a/yarn.lock b/yarn.lock index d8fb8d2b7c..8b3f194e65 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5632,10 +5632,10 @@ hosted-git-info@^2.1.4: resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.8.tgz#7539bd4bc1e0e0a895815a2e0262420b12858488" integrity sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg== -howler@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/howler/-/howler-2.2.0.tgz#0e2c780997ae65ab9a1a186333031beac1c63c6b" - integrity sha512-sGPkrAQy7jh5mNDbkRNG0F82R2HFDYNsQXBcX4smXQT0y0F4UMsa/+jXaGwWvcrajWr2tDB7JUkH7G5qSnuIyQ== +howler@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/howler/-/howler-2.2.1.tgz#a521a9b495841e8bb9aa12e651bebba0affc179e" + integrity sha512-0iIXvuBO/81CcrQ/HSSweYmbT50fT2mIc9XMFb+kxIfk2pW/iKzDbX1n3fZmDXMEIpYvyyfrB+gXwPYSDqUxIQ== hsl-regex@^1.0.0: version "1.0.0" From 329a6feafce5feb58eb9a6c35f3a3cb2a6768d2b Mon Sep 17 00:00:00 2001 From: dkanada Date: Wed, 28 Oct 2020 14:27:19 +0900 Subject: [PATCH 359/365] remove broken features from user settings --- src/controllers/dashboard/users/useredit.html | 27 +++---------------- src/controllers/dashboard/users/useredit.js | 6 ----- .../dashboard/users/userlibraryaccess.js | 8 ++++-- src/strings/en-gb.json | 2 +- src/strings/en-us.json | 5 ++-- src/strings/fa.json | 2 +- 6 files changed, 15 insertions(+), 35 deletions(-) diff --git a/src/controllers/dashboard/users/useredit.html b/src/controllers/dashboard/users/useredit.html index dbf9cc066b..70a42afd50 100644 --- a/src/controllers/dashboard/users/useredit.html +++ b/src/controllers/dashboard/users/useredit.html @@ -140,32 +140,13 @@
    ${OptionAllowRemoteSharedDevicesHelp}
    -
    -

    ${HeaderDownloadSync}

    -
    - - -
    -
    +

    ${Other}

    -
    ${AllowMediaConversionHelp}
    -
    -
    - -
    +
    ${OptionAllowContentDownloadHelp}
    '; $('.deviceAccess', page).show().html(html); - $('#chkEnableAllDevices', page).prop('checked', user.Policy.EnableAllDevices); + const chkEnableAllDevices = page.querySelector('#chkEnableAllDevices'); + chkEnableAllDevices.checked = user.Policy.EnableAllDevices; + triggerChange(chkEnableAllDevices); if (user.Policy.IsAdministrator) { page.querySelector('.deviceAccessContainer').classList.add('hide'); diff --git a/src/strings/en-gb.json b/src/strings/en-gb.json index bf456e267e..850488862c 100644 --- a/src/strings/en-gb.json +++ b/src/strings/en-gb.json @@ -1235,7 +1235,7 @@ "SelectAdminUsername": "Please select a username for the admin account.", "ButtonSplit": "Split", "HeaderNavigation": "Navigation", - "OptionForceRemoteSourceTranscoding": "Force transcoding of remote media sources (like LiveTV)", + "OptionForceRemoteSourceTranscoding": "Force transcoding of remote media sources such as Live TV", "MessageConfirmAppExit": "Do you want to exit?", "LabelVideoResolution": "Video resolution:", "LabelStreamType": "Stream type:", diff --git a/src/strings/en-us.json b/src/strings/en-us.json index b3a1579b1e..ab547f3854 100644 --- a/src/strings/en-us.json +++ b/src/strings/en-us.json @@ -1004,10 +1004,11 @@ "OptionAdminUsers": "Administrators", "OptionAllUsers": "All users", "OptionAllowAudioPlaybackTranscoding": "Allow audio playback that requires transcoding", - "OptionForceRemoteSourceTranscoding": "Force transcoding of remote media sources (like LiveTV)", + "OptionForceRemoteSourceTranscoding": "Force transcoding of remote media sources such as Live TV", "OptionAllowBrowsingLiveTv": "Allow Live TV access", - "OptionAllowContentDownloading": "Allow media downloading and syncing", + "OptionAllowContentDownload": "Allow media downloads", "OptionAllowLinkSharing": "Allow social media sharing", + "OptionAllowContentDownloadHelp": "Users can download media and store it on their devices. This is not the same as a sync feature. Book libraries require this enabled to function properly.", "OptionAllowLinkSharingHelp": "Only web pages containing media information are shared. Media files are never shared publicly. Shares are time-limited and will expire after {0} days.", "OptionAllowManageLiveTv": "Allow Live TV recording management", "OptionAllowMediaPlayback": "Allow media playback", diff --git a/src/strings/fa.json b/src/strings/fa.json index a8f2202430..41daec8edf 100644 --- a/src/strings/fa.json +++ b/src/strings/fa.json @@ -832,7 +832,7 @@ "OptionAdminUsers": "Administrators", "OptionAllUsers": "All users", "OptionAllowAudioPlaybackTranscoding": "Allow audio playback that requires transcoding", - "OptionForceRemoteSourceTranscoding": "Force transcoding of remote media sources (like LiveTV)", + "OptionForceRemoteSourceTranscoding": "Force transcoding of remote media sources such as Live TV", "OptionAllowBrowsingLiveTv": "Allow Live TV access", "OptionAllowContentDownloading": "Allow media downloading and syncing", "OptionAllowLinkSharing": "Allow social media sharing", From c3a0900c3560cd5ed8a63aa1e91e91ad95a8ea37 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=9C=BD?= Date: Wed, 28 Oct 2020 07:54:59 +0000 Subject: [PATCH 360/365] Translated using Weblate (Croatian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/hr/ --- src/strings/hr.json | 37 ++++++++++++++++++++++++++++++------- 1 file changed, 30 insertions(+), 7 deletions(-) diff --git a/src/strings/hr.json b/src/strings/hr.json index d250eb449b..5bc95f7da3 100644 --- a/src/strings/hr.json +++ b/src/strings/hr.json @@ -65,7 +65,7 @@ "ChannelNumber": "Broj kanala", "CinemaModeConfigurationHelp": "Način kino donosi iskustvo kina izravno u vaš dnevni boravak s mogućnošću da se pokreću kratki filmovi i prilagođeni isječci prije glavne značajke.", "Composer": "Kompozitor", - "ConfigureDateAdded": "Podesite kako se datum dodavanja određuje na nadzornoj ploči Jellyfin Server-a u postavkama biblioteke", + "ConfigureDateAdded": "Podesite kako se datum dodavanja određuje na nadzornoj ploči u postavkama biblioteke", "ConfirmDeleteImage": "Izbriši sliku?", "ConfirmDeleteItem": "Brisanjem ove stavke će je izbrisati iz oba datotečnog sustava i medijskoj biblioteci. Jeste li sigurni da želite nastaviti?", "ConfirmDeleteItems": "Brisanjem ove stavke će se izbrisati iz oba datotečnog sustava i medijskoj biblioteci. Jeste li sigurni da želite nastaviti?", @@ -96,7 +96,7 @@ "Ended": "Završeno", "EndsAtValue": "Završava u {0}", "ErrorAddingListingsToSchedulesDirect": "Došlo je do pogreške prilikom dodavanja postava vašim zakazanim direktnim računima. Raspored dopušta samo ograničen broj postava po računu. Možda ćete morati se prijavite u zakazanim \"Direct\" web stranicama i ukloniti unose drugih s računa prije nastavka.", - "ErrorAddingMediaPathToVirtualFolder": "Došlo je do pogreške prilikom dodavanja putanje medija. Provjerite dali je putanja valjana i da proces Jellyfin Server-a ima pristup tom mjestu.", + "ErrorAddingMediaPathToVirtualFolder": "Došlo je do pogreške prilikom dodavanja putanje medija. Provjerite dali je putanja valjana i da Jellyfin ima pristup tom mjestu.", "ErrorAddingTunerDevice": "Došlo je do pogreške prilikom dodavanja uređaja TV/radio pretraživača. Provjerite da je dostupan i pokušajte ponovno.", "ErrorGettingTvLineups": "Došlo je do pogreške prilikom preuzimanja TV postave. Provjerite dali su vaše informacije točne i pokušajte ponovno.", "ErrorStartHourGreaterThanEnd": "Vrijeme završetka mora biti veće od početka.", @@ -131,7 +131,7 @@ "HeaderAlert": "Uzbuna", "HeaderApiKey": "API ključ", "HeaderApiKeys": "API ključevi", - "HeaderApiKeysHelp": "Vanjske aplikacije moraju imati API ključ kako bi komunicirale s Jellyfin Serverom. Ključevi se izdaju prijavom s Jellyfin računom ili ručnim odobravanjem zahtjeva ključa.", + "HeaderApiKeysHelp": "Vanjske aplikacije moraju imati API ključ kako bi komunicirale s serverom. Ključevi se izdaju prijavom s korisničkim računom ili ručnim odobravanjem zahtjeva ključa.", "HeaderApp": "Aplikacija", "HeaderAudioSettings": "Postavke zvuka", "HeaderBranding": "Brendiranje", @@ -836,7 +836,7 @@ "XmlTvPathHelp": "Putanja do xml tv datoteke. Jellyfin će pročitati ovu datoteku i povremeno provjeravati ažuriranja. Vi ste odgovorni za stvaranje i ažuriranje datoteke.", "XmlTvSportsCategoriesHelp": "Programi s tim kategorijama će biti prikazani kao sportski programi. Odvojite više s '|'.", "Yesterday": "Jučer", - "AccessRestrictedTryAgainLater": "Dostup je trenutačno ograničen. Pokušajte poslije ponovno.", + "AccessRestrictedTryAgainLater": "Dostup je trenutačno ograničen. Pokušajte ponovo kasnije.", "Albums": "Albumi", "All": "Sve", "AllComplexFormats": "Svi kompleksni formati (ASS, SSA, VOBSUB, PGS, SUB, IDX, ...)", @@ -871,7 +871,7 @@ "AlwaysPlaySubtitlesHelp": "Prijevodi koji odgovaraju odabranom jeziku će uvijek biti odabrani unatoč jeziku audio zapisa.", "AlwaysPlaySubtitles": "Uvijek prikaži prijevod", "AllowRemoteAccessHelp": "Ako je odznačeno, svi udaljeni pristupi će biti blokirani.", - "AllowRemoteAccess": "Dopusti udaljene pristupe na ovaj Jellyfin server.", + "AllowRemoteAccess": "Dopusti udaljene pristupe na ovaj server.", "AllowOnTheFlySubtitleExtraction": "Dopusti izvlačenje prijevoda u hodu", "AllowMediaConversion": "Dopusti konverziju datoteke", "AllLanguages": "Svi jezici", @@ -1038,7 +1038,7 @@ "BoxRear": "Kutija (stražnja)", "ButtonSyncPlay": "SyncPlay", "DirectStreaming": "Direktno strujanje", - "DirectStreamHelp2": "Direktno strujanje datoteke koristi jako malo procesne snage bez gubitka kvalitete videozapisa.", + "DirectStreamHelp2": "Direktno strujanje datoteke koristi jako malo procesne snage sa zanemarljivim gubitkom kvalitete videozapisa.", "Desktop": "Stolno računalo", "ColorTransfer": "Prijenos boje", "ColorSpace": "Spektar boja", @@ -1047,5 +1047,28 @@ "Blacklist": "Crna lista", "AuthProviderHelp": "Odaberi pružatelja ovjere autentičnosti koji će se koristiti za provjeru lozinke.", "AllowFfmpegThrottling": "Uspori transkodiranje", - "AllowOnTheFlySubtitleExtractionHelp": "Ugrađeni titlovi mogu biti izvedeni iz videozapisa i dostavljena klijentima u običnom tekstu, u svrhu spriječavanja video transcodinga. Na nekim sustavima ovo može potrajati duže vrijeme i video reprodukcija može trzati tijekom postupka izvođenja. Onemogući ovo da imaš ugrađene titlove spaljene u video transkodingu kada nisu nativno podržani od strane uređaja klijenta." + "AllowOnTheFlySubtitleExtractionHelp": "Ugrađeni titlovi mogu biti izvedeni iz videozapisa i dostavljeni klijentima u običnom tekstu, u svrhu spriječavanja video transcodinga. Na nekim sustavima ovo može potrajati duže vrijeme i video reprodukcija može trzati tijekom postupka izvođenja. Onemogući ovo kako bi imao titlove ugrađene tokom video transkodinga u slučaju da ih uređaj klijenta ne podržava.", + "HeaderAppearsOn": "Pojavlja se u", + "Other": "Ostalo", + "ErrorDeletingItem": "Došlo je do greške prilikom brisanja stavke sa servera. Provjerite dali Jellyfin ima pristup pisanju media mapi i pokušajte ponovo.", + "ErrorAddingXmlTvFile": "Došlo je do greške pristupanju XMLTV datoteci. Potvrdite da datoteka postoji i pokušajte ponovo.", + "EnableDetailsBannerHelp": "Prikaži sliku natpisa na vrhu stranice detalja.", + "EnableDetailsBanner": "Natpis Detalja", + "EnableThemeVideosHelp": "Reprodukcija tematskih videa u pozadini za vrijeme pregleda biblioteke.", + "EnableThemeSongsHelp": "Reprodukcija tematskih pjesama u pozadini za vrijeme pregleda biblioteke.", + "EnableStreamLoopingHelp": "Omogući ovo ako se prijenosi uživo sastoje od samo nekoliko sekundi podataka i trebaju se neprekidno zahtjevati. Uključujući ovo kada nije potrebno može izazvati probleme.", + "EnableStreamLooping": "Automatski ponavljaj prijenose uživo", + "EnableQuickConnect": "Omogući brzo spajanje na ovom serveru", + "EnableNextVideoInfoOverlayHelp": "Na kraju videa, prikaži informacije o dolazećem videu u trenutnom popisu.", + "EnableNextVideoInfoOverlay": "Prikaži informacije idućeg videa za vrijeme reprodukcije", + "EnableDisplayMirroring": "Zrcaljenje prikaza", + "EnableBackdropsHelp": "Prikaži pozadinske slike u pozadini određenih stranica pri pregledavanju biblioteke.", + "EnableAutoCast": "Postavi kao zadano", + "DropShadow": "Bacanje Sjena", + "DisplayModeHelp": "Odaberi vrstu rasporeda koju želiš za sučelje.", + "Data": "Podatci", + "ChangingMetadataImageSettingsNewContent": "", + "ButtonUseQuickConnect": "Omogući Brzo Povezivanje", + "ButtonActivate": "Aktiviraj", + "AllowedRemoteAddressesHelp": "Popis IP adresa/mrežnih maska odvojen zarezom za sve mreže kojima je dozvoljen vanjski pristup. Ako je opcija prazna, svim vanjskim mrežama je pristup omogućen." } From 36323d6abf1e083502656b1af919d9bb00889ff1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Kucharczyk?= Date: Wed, 28 Oct 2020 09:10:57 +0000 Subject: [PATCH 361/365] Translated using Weblate (Czech) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/cs/ --- src/strings/cs.json | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/strings/cs.json b/src/strings/cs.json index 209c725eb4..af991952ae 100644 --- a/src/strings/cs.json +++ b/src/strings/cs.json @@ -1238,7 +1238,7 @@ "LabelPlayerDimensions": "Zobrazené rozlišení:", "LabelDroppedFrames": "Vynechané snímky:", "LabelCorruptedFrames": "Poškozené snímky:", - "OptionForceRemoteSourceTranscoding": "Vynutit překódování vzdálených zdrojů médií (např.: televizního vysílání)", + "OptionForceRemoteSourceTranscoding": "Vynutit překódování vzdálených zdrojů médií (např. televizního vysílání)", "NoCreatedLibraries": "Zdá se, že jste dosud nevytvořili žádnou knihovnu. {0}Chtěli byste nějakou vytvořit nyní?{1}", "AskAdminToCreateLibrary": "Požádejte administrátora o vytvoření knihovny.", "AllowFfmpegThrottlingHelp": "Pozastaví proces překódování či remuxování, pokud je dostatečně napřed, aby se spotřebovalo méně zdrojů. Nejvhodnější, pokud příliš nepřeskakujete. Pokud máte problémy s přehráváním, tuto funkci vypněte.", @@ -1420,5 +1420,7 @@ "EnableAutoCast": "Nastavit jako výchozí", "OptionMaxActiveSessionsHelp": "Hodnota 0 tuto funkci vypne.", "OptionMaxActiveSessions": "Nastavuje, kolik uživatelských relací může najednou existovat.", - "LabelUserMaxActiveSessions": "Maximální počet uživatelských relací najednou:" + "LabelUserMaxActiveSessions": "Maximální počet uživatelských relací najednou:", + "OptionAllowContentDownloadHelp": "Uživatelé si mohou média stáhnout a uložit na svá zařízení. Tato funkce není stejná jako synchronizace. Knihovny s knihami tuto funkci vyžadují ke správnému fungování.", + "OptionAllowContentDownload": "Povolit stahování médií" } From dcdf90870dd1270b74725f2dc456410efec807ad Mon Sep 17 00:00:00 2001 From: hoanghuy309 Date: Wed, 28 Oct 2020 09:34:22 +0000 Subject: [PATCH 362/365] Translated using Weblate (Vietnamese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/vi/ --- src/strings/vi.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/strings/vi.json b/src/strings/vi.json index 42bbe3b3f1..25efd5ebf1 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -1420,5 +1420,7 @@ "LabelXDlnaCap": "Phần đầu X-DLNA:", "OptionMaxActiveSessionsHelp": "Giá trị 0 sẽ vô hiệu hóa tính năng.", "OptionMaxActiveSessions": "Đặt số lượng phiên người dùng đồng thời tối đa.", - "LabelUserMaxActiveSessions": "Số lượng phiên người dùng cùng lúc tối đa:" + "LabelUserMaxActiveSessions": "Số lượng phiên người dùng cùng lúc tối đa:", + "OptionAllowContentDownloadHelp": "Người dùng có thể tải xuống phương tiện và lưu trữ trên thiết bị của họ. Điều này không giống như một tính năng đồng bộ hóa. Thư viện sách yêu cầu kích hoạt này để hoạt động bình thường.", + "OptionAllowContentDownload": "Cho phép tải xuống phương tiện" } From c16332162ca7f7ad791dc24de0750d1ce8e490d1 Mon Sep 17 00:00:00 2001 From: minob Date: Wed, 28 Oct 2020 13:49:34 +0000 Subject: [PATCH 363/365] Translated using Weblate (Japanese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ja/ --- src/strings/ja.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/strings/ja.json b/src/strings/ja.json index c62d1a8e51..1955df4ac2 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -1420,5 +1420,7 @@ "XmlTvPathHelp": "XMLTV ファイルのパス。Jellyfin はこのファイルを読み込んで定期的に更新を確認します。ファイルの作成と更新はあなたが責任を持って行ってください。", "XmlTvNewsCategoriesHelp": "これらのカテゴリの番組はニュース番組として表示されます。複数の場合は '|' で区切ってください。", "XmlTvMovieCategoriesHelp": "これらのカテゴリの番組は映画として表示されます。複数の場合は '|' で区切ってください。", - "XmlTvKidsCategoriesHelp": "これらのカテゴリの番組は子供向けとして表示されます。複数の場合は '|' で区切ってください。" + "XmlTvKidsCategoriesHelp": "これらのカテゴリの番組は子供向けとして表示されます。複数の場合は '|' で区切ってください。", + "OptionAllowContentDownloadHelp": "ユーザーのデバイスにメディアのダウンロードと保存ができます。これは同期機能とは異なります。ブックライブラリが正しく機能するには有効化が必要です。", + "OptionAllowContentDownload": "メディアのダウンロードを許可" } From 9b015adeacd844baffb3b599a7325a27af2f134f Mon Sep 17 00:00:00 2001 From: Moritz Date: Wed, 28 Oct 2020 15:45:02 +0000 Subject: [PATCH 364/365] Translated using Weblate (German) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/de/ --- src/strings/de.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/strings/de.json b/src/strings/de.json index fbb7b69a5c..5c57cc19c3 100644 --- a/src/strings/de.json +++ b/src/strings/de.json @@ -1420,5 +1420,7 @@ "Authorize": "Autorisieren", "OptionMaxActiveSessionsHelp": "Ein Wert von 0 deaktiviert die Funktion.", "OptionMaxActiveSessions": "Legt die maximale Anzahl gleichzeitiger Benutzer-Sessions fest.", - "LabelUserMaxActiveSessions": "Maximale Anzahl von gleichzeitigen Benutzer-Sessions:" + "LabelUserMaxActiveSessions": "Maximale Anzahl von gleichzeitigen Benutzer-Sessions:", + "OptionAllowContentDownloadHelp": "Benutzer können Medien herunterladen und auf ihren Geräten speichern. Dies ist nicht dasselbe wie eine Synchronisierungsfunktion. Buchbibliotheken benötigen diese Funktion, um ordnungsgemäß zu funktionieren.", + "OptionAllowContentDownload": "Mediendownloads zulassen" } From b58561bcb6ac602bfd9333b1bbedaa4c619036c1 Mon Sep 17 00:00:00 2001 From: Franco Castillo Date: Wed, 28 Oct 2020 18:37:32 +0000 Subject: [PATCH 365/365] Translated using Weblate (Spanish (Argentina)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/es_AR/ --- src/strings/es-ar.json | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/strings/es-ar.json b/src/strings/es-ar.json index b9ee50c1bd..c1d8623f3a 100644 --- a/src/strings/es-ar.json +++ b/src/strings/es-ar.json @@ -782,7 +782,7 @@ "OptionAllowLinkSharing": "Permitir compartir en redes sociales", "OptionAllowContentDownloading": "Permitir la descarga y sincronización de medios", "OptionAllowBrowsingLiveTv": "Permitir el acceso a TV en vivo", - "OptionForceRemoteSourceTranscoding": "Forzar la transcodificación de fuentes de medios remotos (como LiveTV)", + "OptionForceRemoteSourceTranscoding": "Forzar la transcodificación de fuentes de medios remotas como Live TV", "OptionAllowAudioPlaybackTranscoding": "Permitir reproducción de audio que requiere transcodificación", "OptionAllUsers": "Todos los usuarios", "OptionAdminUsers": "Administradores", @@ -1420,5 +1420,7 @@ "Authorize": "Autorizar", "OptionMaxActiveSessionsHelp": "Un valor de 0 deshabilita la función.", "OptionMaxActiveSessions": "Establece el número máximo de sesiones de usuario simultáneas.", - "LabelUserMaxActiveSessions": "Número máximo de sesiones de usuario simultáneas:" + "LabelUserMaxActiveSessions": "Número máximo de sesiones de usuario simultáneas:", + "OptionAllowContentDownloadHelp": "Los usuarios pueden descargar medios y almacenarlos en sus dispositivos. No es lo mismo que una función de sincronización. Las bibliotecas de libros requieren que esta habilitado funcione correctamente.", + "OptionAllowContentDownload": "Permitir descargas de medios" }