{
    "extensionDescription": {
        "message": "Le protege contra el rastreo de CDN (Redes de entrega de contenido) mediante la redirección a recursos locales.",
        "description": "Protects you against tracking through CDNs (Content Delivery Networks) by redirecting to local resources."
    },
    "amountInjectedDescription": {
        "message": "Número de recursos inyectados de Redes de Entrega de Contenido desde la instalación.",
        "description": "Amount injected description."
    },
    "optionsTitle": {
        "message": "Opciones",
        "description": "Options title"
    },
    "showIconBadgeTitle": {
        "message": "Mostrar el número de inyecciones en el icono",
        "description": "Show icon badge title"
    },
    "showIconBadgeDescription": {
        "message": "Muestra el número de recursos inyectados en el icono de la extensión.",
        "description": "Show icon badge description."
    },
    "blockMissingTitle": {
        "message": "Bloquear las peticiones de recursos que faltan",
        "description": "Block requests for missing resources title"
    },
    "blockMissingDescription": {
        "message": "Cancela las peticiones interceptadas cuando el recurso requerido no se encuentra localmente.",
        "description": "Block requests for missing resources description."
    },
    "disablePrefetchTitle": {
        "message": "Deshabilitar la precarga de enlaces",
        "description": "Disable prefetch title"
    },
    "disablePrefetchDescription": {
        "message": "Evita que las peticiones no permitidas se escapen hacia redes de distribución.",
        "description": "Disable prefetch description."
    },
    "stripMetadataTitle": {
        "message": "Quitar los metadatos de las solicitudes permitidas",
        "description": "Strip metadata title"
    },
    "stripMetadataDescription": {
        "message": "Borra los datos sensibles de las solicitudes a las CDN permitidas para mejorar la privacidad.",
        "description": "Strip metadata description."
    },
    "allowlistedDomainsTitle": {
        "message": "Desactivar LocalCDN en estos dominios:",
        "description": "Deactivate LocalCDN for these domains:"
    },
    "allowlistedDomainsDescription": {
        "message": "Escriba los dominios donde deshabilitar LocalCDN. Uno por línea.",
        "description": "Enter domains to disable LocalCDN there. One entry per line."
    },
    "advancedLabel": {
        "message": "Avanzado",
        "description": "Advanced label"
    },
    "generateRuleSetTitle": {
        "message": "Generar el conjunto de reglas para su bloqueador de publicidad",
        "description": "Generate rule sets for your adblocker"
    },
    "generateRuleSetDescription": {
        "message": "Si está usando un bloqueador de publicidad, puede generar las reglas aquí. Tiene que añadir las reglas manualmente a su bloqueador de publicidad.",
        "description": "In case you are using an adblocker you can generate the rules here. You have to add these rules manually in your adblocker."
    },
    "lastUpdate": {
        "message": "Última actualización:",
        "description": "Last update:"
    },
    "copyRuleSet": {
        "message": "Copiar",
        "description": "Text of button to copy ruleset"
    },
    "loggingTitle": {
        "message": "Habilitar el registro",
        "description": "Enable logging"
    },
    "loggingDescription": {
        "message": "Puede abrir el registro con el icono en el menú. El registro se eliminará cuando cierre el navegador o deshabilite el registro.",
        "description": "You can open the log with the icon in the menu. The log will be deleted when you close the browser or disable logging."
    },
    "featureBreaksWebsitesDescription": {
        "message": "Esta característica rompe sitios web. No la deje habilitada, a menos que esté dispuesto a añadir manualmente los dominios afectados a la lista de permitidos .",
        "description": "This feature breaks websites. Do not leave it enabled, unless you are prepared to manually add affected domains to the allow list."
    },
    "featureBreaksWebsitesButton": {
        "message": "Desactivar",
        "description": "Disable"
    },
    "labelManipulateDOM": {
        "message": "Filtrar el código fuente HTML",
        "description": "Filter HTML source code"
    },
    "labelDonate": {
        "message": "Donar",
        "description": "Donate"
    },
    "negateHtmlFilterListTitle": {
        "message": "Invertir el filtro HTML",
        "description": "Invert HTML filter"
    },
    "negateHtmlFilterListDescription": {
        "message": "Habilite esta opción para aplicar siempre el filtro HTML. Los dominios en la lista serán ignorados. Si esta opción está desactivada, el filtro HTML solo se aplica a los dominios de la lista.",
        "description": "Enable this option to always apply the HTML filter. The domains in the list will be ignored then. If this option is disabled, the HTML filter is only applied to domains in the list."
    },
    "negateHtmlFilterListWarning": {
        "message": "Esta función puede romper sitios web. Por favor, tenga en cuenta la información en las páginas de la Wiki.",
        "description": "This function can break websites. Please note the information on the Wiki page."
    },
    "htmlFilterDomainsTitleExclude": {
        "message": "No aplicar el filtro HTML a estos dominios:",
        "description": "Do not apply HTML filter to these domains:"
    },
    "htmlFilterDomainsDescription": {
        "message": "Escriba los dominios que han sido usados o ignorados por el filtro HTML. Uno por línea.",
        "description": "Enter the domains to be handled or ignored by the HTML filter. One entry per line."
    },
    "htmlFilterDomainsTitleInclude": {
        "message": "Aplicar el filtro HTML en estos dominios:",
        "description": "Apply HTML filter for these domains:"
    },
    "blockGoogleFontsTitle": {
        "message": "Bloquear las fuentes de Google",
        "description": "Block Google Fonts"
    },
    "blockGoogleFontsDescription": {
        "message": "Si se permiten peticiones de recursos que faltan, las conexiones a «fonts.googleapis.com» no se bloquean. Habilite esta opción para bloquear estas solicitudes.",
        "description": "If requests for missing resources are allowed, connections to \"fonts.googleapis.com\" are not blocked. Enable this option to block these requests."
    },
    "chooseIconStyle": {
        "message": "Eligir un ícono para esta extensión",
        "description": "Choose an icon for this extension"
    },
    "internalStatisticsTitle": {
        "message": "Estadísticas internas",
        "description": "Internal statistics"
    },
    "internalStatisticsDescription": {
        "message": "Esta función se encuentra actualmente en fase experimental. No hay transmisión de datos. Todo se hace en su dispositivo.",
        "description": "No data transmission. It’s all local on your device."
    },
    "headerStatistics": {
        "message": "Estadísticas",
        "description": "Statistics. The header of a statistics page."
    },
    "labelToday": {
        "message": "Hoy",
        "description": "Statistics view for today."
    },
    "labelPastWeek": {
        "message": "Última semana",
        "description": "Statistics view for past week."
    },
    "labelPastMonth": {
        "message": "Último mes",
        "description": "Statistics view for past month."
    },
    "labelPastYear": {
        "message": "Último año",
        "description": "Statistics view for past year."
    },
    "labelDelete": {
        "message": "Eliminar",
        "description": "Button to delete all statistics data."
    },
    "labelAvg": {
        "message": "Promedio (Reemplazos por día)",
        "description": "Followed by a number of average injections per day within a specific period."
    },
    "labelInjectedFrameworks": {
        "message": "«Frameworks» reemplazados",
        "description": "Followed by a number of injections within a specific period."
    },
    "dialogConfirmDeleteStatistics": {
        "message": "¿Está seguro de querer borrar todas las estadísticas?",
        "description": "Are you sure you want to delete all the statistics?"
    },
    "labelDomainsAllowlistGoogleFonts": {
        "message": "Estos dominios tienen permitido cargar fuentes de Google. Uno por línea.",
        "description": "These domains are allowed to load Google Fonts. One entry per line."
    },
    "btnGeneral": {
        "message": "Básico",
        "description": "Basic"
    },
    "btnAdvanced": {
        "message": "Avanzado",
        "description": "Advanced"
    },
    "btnOther": {
        "message": "Otro",
        "description": "Other"
    },
    "btnInfo": {
        "message": "Información",
        "description": "Info"
    },
    "headerStorageType": {
        "message": "Tipo de almacenamiento",
        "description": "Storage type"
    },
    "labelStorageTypeLocal": {
        "message": "Local",
        "description": "Local"
    },
    "labelStorageTypeSync": {
        "message": "Sincronizar",
        "description": "Sync"
    },
    "headerImportExport": {
        "message": "Importar/Exportar",
        "description": "Import/Export"
    },
    "labelExportData": {
        "message": "Respaldar en archivo",
        "description": "Back up to file"
    },
    "labelImportData": {
        "message": "Restaurar desde un archivo",
        "description": "Restore from file"
    },
    "dialogImportSuccessful": {
        "message": "Importación exitosa",
        "description": "Import successful"
    },
    "dialogImportFailed": {
        "message": "Importación fallida",
        "description": "Import failed"
    },
    "updateNotificationTitle": {
        "message": "Notificar después de una actualización",
        "description": "Notification after an update"
    },
    "updateNotificationNever": {
        "message": "Nunca (Actualización silenciosa)",
        "description": "Never (Silent Updates)"
    },
    "updateNotificationOnlyRules": {
        "message": "Solo con nuevas CDN y reglas",
        "description": "Only if new CDNs and rules"
    },
    "updateNotificationAlways": {
        "message": "Siempre",
        "description": "Always"
    },
    "websiteBroken": {
        "message": "¿El sitio web está roto?",
        "description": "Website broken?"
    },
    "hideDonationButton": {
        "message": "Ocultar el botón de donación",
        "description": "Hide donation button"
    },
    "betaLabel": {
        "message": "Beta",
        "description": "beta"
    },
    "changeBadgeColorMissingResourcesTitle": {
        "message": "Indica los recursos que faltan en el icono",
        "description": "Indicate missing resources on the icon"
    },
    "changeBadgeColorMissingResourcesDescription": {
        "message": "Cambia el color del icono si faltan recursos.",
        "description": "Change the badge color if resources are missing."
    },
    "titleHelp": {
        "message": "Ayuda",
        "description": "Help"
    },
    "helpIntroductionTitle": {
        "message": "Introducción",
        "description": "Introduction"
    },
    "helpHtmlFilterTitle": {
        "message": "¿Qué es »filtro HTML«?",
        "description": "What is »HTML filter«?"
    },
    "helpRuleGeneratorTitle": {
        "message": "Generador de reglas",
        "description": "Rule generator"
    },
    "helpWebsiteIssuesTitle": {
        "message": "Algunos sitios web tienen un aspecto extraño o no son fáciles de usar",
        "description": "Some websites look strange or are not easy to use"
    },
    "helpBlockGoogleFontsTitle": {
        "message": "¿Por qué hay una opción »Bloquear Fuentes de Google«?",
        "description": "Why is there a »Block Google Fonts« option?"
    },
    "helpStatisticsTitle": {
        "message": "¿Qué hay acerca de las estadísticas? ¿Se transfiere algo a algún servidor?",
        "description": "What about the statistics? Is anything transferred to any servers?"
    },
    "helpWhatWillBeSynchronizedTitle": {
        "message": "¿Qué se sincronizá cuando selecciona »sincronizar« como tipo de almacenamiento?",
        "description": "What will be synchronized when I select »sync« as storage type?"
    },
    "helpBrowserCompatibilityTitle": {
        "message": "Compatibilidad del navegador",
        "description": "Browser compatibility"
    },
    "helpIntroductionDescription": {
        "message": "LocalCDN es una extensión para el navegador que emula las redes de entrega de contenido para mejorar su privacidad. Intercepta el tráfico, localiza marcos/librerías soportadas localmente, y los inyecta en el sitio web. No dude en utilizar la siguiente utilidad de prueba para averiguar si está protegido adecuadamente. Para obtener más información lea el tutorial o en nuestra página Wiki.",
        "description": "LocalCDN is a web browser extension that emulates Content Delivery Networks to improve your online privacy. It intercepts traffic, finds supported frameworks/libraries locally, and injects them into the website. Feel free to use the following testing utility to find out if you are properly protected. For more information read the tutorial or our Wiki pages."
    },
    "helpLinkTestUtility": {
        "message": "Utilidad de prueba",
        "description": "Testing utility"
    },
    "helpLinkTutorial": {
        "message": "Tutorial",
        "description": "Tutorial"
    },
    "helpLinkWikiPages": {
        "message": "Página Wiki",
        "description": "Wiki pages"
    },
    "helpHtmlFilterDescription": {
        "message": "En la mayoría de los casos, LocalCDN puede fácilmente reemplazar los marcos embebidos y mejorar la privacidad. En algunos casos, el sitio web puede intentar evitar esto configurando ciertas opciones en el código fuente HTML. LocalCDN lee el código fuente HTML antes de que se muestre en el navegador y elimina esta parte (en rojo).",
        "description": "In most cases LocalCDN can easily replace embedded frameworks and improves privacy. In some cases the website may try to prevent this by setting certain options in the HTML source code. LocalCDN reads the HTML source code before it is displayed in the browser and removes these part (red)."
    },
    "helpHtmlFilterBefore": {
        "message": "El filtro HTML elimina los caracteres rojos de este ejemplo:",
        "description": "The HTML filter removes the red characters from this example:"
    },
    "helpHtmlFilterAfter": {
        "message": "El resultado entonces se ve así:",
        "description": "The result then looks like this:"
    },
    "helpHtmlFilterWhyTitle": {
        "message": "¿Por qué es necesario eliminar los atributos de origen cruzado e integridad?",
        "description": "Why is it necessary to remove crossorigin and integrity attributes?"
    },
    "helpHtmlFilterCrossorigin": {
        "message": "El atributo de origen cruzado evita el reemplazo cuando el destino no coincide con el solicitado.",
        "description": "The crossorigin attribute prevents the replacement because the destination does not match the requested one."
    },
    "helpHtmlFilterIntegrity": {
        "message": "Para ahorrar espacio en disco y ofrecer más marcos, LocalCDN actualiza un marco. Una etiqueta de integridad es el valor hash de un archivo. Si la verificación falla, el navegador no incluirá el marco. La verificación de integridad fallará cuando por ejemplo los valores hash de jQuery 1.10.1 y jQuery 1.12.4 son diferentes.",
        "description": "To save disk space and to deliver more frameworks LocalCDN upgrades a framework. An integrity tag is the hash value of a file. If the check fails, the browser won‘t include a framework. The integrity check will fail because the hash values for e.g. jQuery 1.10.1 and jQuery 1.12.4 are different."
    },
    "helpHtmlFilterErrors": {
        "message": "Desafortunadamente, a veces sucede que los caracteres especiales se muestran incorrectamente. En este caso, puede desactivar la configuración, para mostrar las diéresis correctamente.",
        "description": "Unfortunately, it sometimes happens that special characters are then displayed incorrectly. In this case you can deactivate the setting again, to display the umlauts correctly."
    },
    "helpRuleGeneratorDescription": {
        "message": "Si desea redirigir automáticamente las conexiones CDN compatibles a LocalCDN, puede agregar estas reglas a su bloqueador de anuncios para permitir estas redirecciones. Si no desea agregar estas reglas, debe permitir cada conexión CDN individualmente para cada sitio web.",
        "description": "If you want to automatically redirect all supported CDN connections to LocalCDN, you can add these rules to your adblocker to allow these redirections. If you do not want to add these rules, you must allow each CDN connection individually for each website."
    },
    "helpRuleGeneratorUblockTitle": {
        "message": "Solo uBlock Origin:",
        "description": "Only uBlock Origin:"
    },
    "helpRuleGeneratorUblockDescription": {
        "message": "Estas reglas solo son relevantes en el modo »medio« o »fuerte«, porque bloquea todos los recursos de terceros. No son necesarios en el modo »predeterminado«, »fácil« o »muy fácil«. Para obtener más información, visite uBlock Origin Wiki.",
        "description": "These rules are only relevant in »medium« or »hard« mode, because it blocks all 3rd-party resources. They are not necessary in »default«, »easy« or »very-easy« mode. For more information, please visit the uBlock Origin Wiki."
    },
    "helpRuleGeneratorUblockTableIcon": {
        "message": "Icono",
        "description": "Icon"
    },
    "helpRuleGeneratorUblockTableMode": {
        "message": "Modo",
        "description": "Mode"
    },
    "helpRuleGeneratorUblockTableUseful": {
        "message": "Reglas útiles",
        "description": "Rules useful"
    },
    "helpRuleGeneratorUblockTableDefaultEasy": {
        "message": "Predeterminada/Fácil",
        "description": "Default/Easy"
    },
    "helpRuleGeneratorUblockTableMedium": {
        "message": "Medio",
        "description": "Medium"
    },
    "helpRuleGeneratorUblockTableHard": {
        "message": "Fuerte",
        "description": "Hard"
    },
    "helpWebsiteIssuesDescription": {
        "message": "Hay dos posibles razones: Ya se requiere un marco/biblioteca que LocalCDN no entrega (todavía) o un SOP. Un SOP (Política del mismo origen) es un mecanismo de seguridad que determina qué datos puede cargar el navegador. Ayuda a aislar documentos maliciosos y así reducir posibles vectores de ataque. Esta política evita que el navegador cargue los marcos externos de LocalCDN. Desafortunadamente, no hay solución para esto en este momento.",
        "description": "There are two possible reasons: Either a framework/library is required that LocalCDN doesn‘t (yet) deliver or an SOP. A SOP (Same origin policy) is a security mechanism that determines what data the browser is allowed to load. It helps to isolate malicious documents and thus reduce possible attack vectors. This policy prevents the browser from loading the external frameworks of LocalCDN. Unfortunately there is no solution for this at the moment."
    },
    "helpBlockGoogleFontsDescription": {
        "message": "LocalCDN puede reemplazar los »Iconos de Google«. Para detectar la conexión su bloqueador de anuncios (por ejemplo, uBlock Origin, uMatrix o AdGuard) debe permitir la solicitud. LocalCDN escucha estas solicitudes y si la consulta contiene »Iconos de Google«, el recurso será reemplazado. Si desmarca la opción »Bloquear las peticiones de recurosos que faltan«, se permitirá el paso de recursos inexistentes y se cargarán »Fuentes de Google«, porque »Iconos de Google« y »Fuentes de Google« utilizan el mismo dominio. Si no desea esto, puede bloquear las »Fuentes de Google« en LocalCDN.",
        "description": "LocalCDN can replace »Google Material Icons«. To catch the connection your adblocker (e.g. uBlock Origin, uMatrix or AdGuard) must allow the request. LocalCDN listens on these requests and if the query contains »Google Material Icons«, the resource will be replaced. If you uncheck the »Block requests for missing content« option, non-existent resources will be allowed to pass and »Google Fonts« will be loaded, because »Google Material Icons« and »Google Fonts« use the same domain. If you don‘t want this, you can block »Google Fonts« on LocalCDN."
    },
    "helpStatisticsDescription": {
        "message": "Que no cunda el pánico, no se transmitirá nada. Sería contrario a todos mis principios. Las estadísticas (formato JSON) contienen la siguiente información: Fecha, CDN+contador y marco+contador. Eso es todo. Aquí tengo un ejemplo:",
        "description": "Don‘t panic, nothing will be transmitted. It would be against all my principles. The statistics (JSON format) contains the following information: Date, CDN+counter and framework+counter. That‘s all. I‘ve an example here:"
    },
    "helpStatisticsContent": {
        "message": "Las estadísticas no contienen información sobre el navegador, sistema operativo, solicitudes de sitio web, direcciones IP o cualquier otra información. Solo la fecha, CDN+contador y marco+contador . Le muestro qué marcos son reemplazados por LocalCDN, con qué frecuencia y qué CDN se solicitaron.",
        "description": "The statistics contain no information about the browser, operating system, requesting website, IP addresses or any other information. Just date, CDN+counter and framework+counter. It shows you which frameworks are replaced by LocalCDNs how often and which CDNs were requested."
    },
    "helpStatisticsTruthTitle": {
        "message": "¿Cómo sé que es verdad?",
        "description": "How do I know that‘s true?"
    },
    "helpStatisticsTruthDescription": {
        "message": "El almacenamiento de la extensión se puede ver directamente con el navegador Firefox. Abra la URL »about:debugging«, cambie a »Almacenamiento« y seleccione »Almacenamiento de la Extensión«. Bajo la clave »internalStatisticsData« encontrará los datos recopilados. Simplemente cópie y colóquelo en un JSON PrettyPrinter para hacerlo más legible. Tenga en cuenta que debe eliminar la primera, la última comilla y la clave correspondiente. Debería poder ver esto claramente en este video.",
        "description": "The extension storage can be viewed directly with the Firefox browser. Open the URL »about:debugging«, switch to »Storage« and select »Extension Storage«. Under the key »internalStatisticsData« you will find the collected data. Just copy it and put it into a JSON PrettyPrinter to make it more readable. Please note that you have to remove the first and last quotation mark and the key to it. You should be able to see this clearly in this video."
    },
    "helpSyncTitle": {
        "message": "¿Qué se sincronizará cuando seleccione »sincronizar« como tipo de almacenamiento?",
        "description": "What will be synchronized when I select »sync« as storage type?"
    },
    "helpSyncDescription": {
        "message": "La sincronización solo funcionará si ha iniciado sesión con una cuenta de Firefox en el dispositivo y ha permitido que los complementos se sincronicen en la configuración. También funcionará un servidor de sincronización independiente bajo su control. Esto sincronizará la mayoría de las configuraciones de LocalCDN en todos los dispositivos.",
        "description": "Sync will only work if you are logged in with a Firefox account on the device and have allowed add-ons to sync in the settings. A separate sync server under your control will also work. This will synchronize most of the settings of LocalCDN across all devices."
    },
    "helpSyncAccount": {
        "message": "Si no tiene una cuenta de sincronización, no se sincronizará nada. En ese caso, no importa qué tipo de almacenamiento haya seleccionado.",
        "description": "If you don‘t have a sync account, nothing will be synchronized. In that case it makes no difference what type of storage you have selected."
    },
    "helpSyncContentNever": {
        "message": "Cosas que nunca se sincronizan:",
        "description": "Things that are never synchronized:"
    },
    "helpNumberOfInjections": {
        "message": "Numero de inyecciones",
        "description": "Numbers of injections"
    },
    "helpYes": {
        "message": "Si",
        "description": "Yes"
    },
    "helpNo": {
        "message": "No",
        "description": "No"
    },
    "helpData": {
        "message": "Datos",
        "description": "Data"
    },
    "helpSyncContentEver": {
        "message": "Ajustes que se sincronizarán:",
        "description": "Settings that will be synchronized:"
    },
    "helpIcons": {
        "message": "Predeterminado, claro, azul/gris",
        "description": "Default, Light, Blue/Grey"
    },
    "helpSyncContentLinks": {
        "message": "Más información sobre Firefox Sync:",
        "description": "More information about Firefox Sync:"
    },
    "helpBrowserCompatibility": {
        "message": "Compatibilidad del navegador",
        "description": "Browser compatibility"
    },
    "helpReplace": {
        "message": "Reemplazar",
        "description": "Replace"
    },
    "helpReplaceOther": {
        "message": "Reemplazar otros recursos",
        "description": "Replace other resources"
    },
    "helpUpgradeAllResources": {
        "message": "Actualizar todos los recursos",
        "description": "Upgrade all resources"
    },
    "helpExplanationChrome": {
        "message": "Todo navegador basado en Chromium",
        "description": "All Chromium based Browser"
    },
    "helpLimitation": {
        "message": "Esta no es una limitación de LocalCDN, pero falta la compatibilidad con la API de los navegadores basados en Chromium.",
        "description": "This is not a limitation of LocalCDN, but missing API support of Chromium based browsers."
    },
    "titleBadgeDefault": {
        "message": "Icono predeterminado",
        "description": "Default badge"
    },
    "titleBadgeHTMLFilter": {
        "message": "Icono en filtro HTML",
        "description": "HTML filter badge"
    },
    "titleBadgeMissingResource": {
        "message": "Icono en recursos que faltan",
        "description": "Missing resource badge"
    }
}
