diff --git a/www/i18n/locale-es-CT.json b/www/i18n/locale-ca.json
similarity index 96%
rename from www/i18n/locale-es-CT.json
rename to www/i18n/locale-ca.json
index 20f3c7cded0f5796a499d164d24f0d6fb1aa8101..3c375b110f2d0b37bd937b9d188c3e45e212effb 100644
--- a/www/i18n/locale-es-CT.json
+++ b/www/i18n/locale-ca.json
@@ -138,46 +138,46 @@
     "PEER": "Adreça del node Duniter",
     "PEER_CHANGED_TEMPORARY": "Adreça usada temporalment",
     "PEER_SHORT": "Node Duniter",
-    "PERSIST_CACHE": "Conservar los datos de navegación (experimental)",
-    "PERSIST_CACHE_HELP": "Permite una navegación más rápida, conservando localmente los datos recibidos, para usar de una sesión a otra.",
-    "USE_LOCAL_STORAGE": "Activar el almacenamiento local",
-    "USE_LOCAL_STORAGE_HELP": "Permitir conservar sus ajustes",
-    "WALLETS_SETTINGS": "Mis monederos",
-    "USE_WALLETS_ENCRYPTION": "Cifrar el listado",
-    "USE_WALLETS_ENCRYPTION_HELP": "Permite proteger la lista de sus monederos (mediante cifrado), exigiendo una autenticación para acceder.",
-    "ENABLE_HELPTIP": "Activar la ayuda contextual",
-    "ENABLE_UI_EFFECTS": "Activar los efectos visuales",
-    "HISTORY_SETTINGS": "Transacciones de la cuenta",
-    "DISPLAY_UD_HISTORY": "Mostrar los DU creados",
-    "TX_HISTORY_AUTO_REFRESH": "Activar actualización automática",
-    "TX_HISTORY_AUTO_REFRESH_HELP": "Actualizar el saldo y las transacciones automáticamente, con cada nuevo bloque.",
-    "AUTHENTICATION_SETTINGS": "Autenticación",
-    "KEEP_AUTH": "Caducidad de la autenticación",
-    "KEEP_AUTH_SHORT": "Caducidad",
-    "KEEP_AUTH_HELP": "Defina cuándo expira su sesión",
+    "PERSIST_CACHE": "Conserva les dades de navegació (experimental)",
+    "PERSIST_CACHE_HELP": "Permet una navegació més ràpida, conservant localment les dades rebudes, per reutilitzar d'una sesió a una altra.",
+    "USE_LOCAL_STORAGE": "Activa l'emmagatzemament local",
+    "USE_LOCAL_STORAGE_HELP": "Permetre conservar els teus ajustos",
+    "WALLETS_SETTINGS": "Els meus moneders",
+    "USE_WALLETS_ENCRYPTION": "Xifrar el llistat",
+    "USE_WALLETS_ENCRYPTION_HELP": "Permete protegir la llista dels teus moneders (mitjançant xifrat), exigint una autenticació per accedir-hi.",
+    "ENABLE_HELPTIP": "Activa l'ajuda contextual",
+    "ENABLE_UI_EFFECTS": "Activa els efectes visuals",
+    "HISTORY_SETTINGS": "Transaccions del compte",
+    "DISPLAY_UD_HISTORY": "Mostra els DU creats",
+    "TX_HISTORY_AUTO_REFRESH": "Activa l'actualització automàtica",
+    "TX_HISTORY_AUTO_REFRESH_HELP": "Actualitza el saldo i les transaccions automàticament, amb cada bloc nou.",
+    "AUTHENTICATION_SETTINGS": "Autenticació",
+    "KEEP_AUTH": "Caducitat de l'autenticació",
+    "KEEP_AUTH_SHORT": "Caducitat",
+    "KEEP_AUTH_HELP": "Defineix quan expira la teva sessió",
     "KEEP_AUTH_OPTION": {
-      "NEVER": "Después de cada operación",
-      "SECONDS": "Después de {{value}} segundos de inactividad",
-      "MINUTE": "Después de {{value}}min de inactividad",
-      "MINUTES": "Después de {{value}}mins de inactividad",
-      "HOUR": "Después de {{value}}h de inactividad",
-      "ALWAYS": "Al finalizar la sesión"
+      "NEVER": "Després de cada operació",
+      "SECONDS": "Després de {{value}} segons d'inactivitat",
+      "MINUTE": "Després de {{value}}mins d'inactivitat",
+      "MINUTES": "Després de {{value}}mins d'inactivitat",
+      "HOUR": "Després de {{value}}h d'inactivitat",
+      "ALWAYS": "En finalitzar la sessió"
     },
-    "KEYRING_FILE": "Archivo de llaves",
-    "KEYRING_FILE_HELP": "Le permite <b>conectarse</b> automáticamente en cada inicio <br/>e incluso de <b>autenticarse</b> (solo si \"Caducidad de la autenticación\" está configurada en modo: \"al finalizar la sesión\").",
-    "REMEMBER_ME": "Recordarme",
-    "REMEMBER_ME_HELP": "Permite mantenerse siempre conectado (no recomendado), conservando localmente la llave pública.",
-    "PLUGINS_SETTINGS": "Extensiones",
-    "BTN_RESET": "Restaurar los valores por defecto",
-    "EXPERT_MODE": "Modo experto",
-    "EXPERT_MODE_HELP": "Permite una visualización más detallada",
-    "BLOCK_VALIDITY_WINDOW": "Tiempo de incertitud de los bloques",
-    "DISABLE_HELPTIP": "Desactivar la opción de ayuda contextual",
-    "BLOCK_VALIDITY_WINDOW_SHORT": "Tiempo de incertitud",
-    "BLOCK_VALIDITY_WINDOW_HELP": "Tiempo de espera antes de considerar una información como validada",
+    "KEYRING_FILE": "Arxiu de claus",
+    "KEYRING_FILE_HELP": "Et permet <b>connectar-te</b> automàticament a cada inici <br/>i fins i tot <b>autenticar-te</b> (només si \"Caducitat de l'autenticació\" està configurada en mode: \"en finalitzar la sessió\").",
+    "REMEMBER_ME": "Recorda'm",
+    "REMEMBER_ME_HELP": "Permet mantenir-se sempre connectat (no recomanat), conservant localment la clau pública.",
+    "PLUGINS_SETTINGS": "Extensions",
+    "BTN_RESET": "Restaura els valors per defecte",
+    "EXPERT_MODE": "Mode expert",
+    "EXPERT_MODE_HELP": "Permet una visualització més detallada",
+    "BLOCK_VALIDITY_WINDOW": "Temps d'incertesa dels blocs",
+    "DISABLE_HELPTIP": "Desactiva l'opció d'ajuda contextual",
+    "BLOCK_VALIDITY_WINDOW_SHORT": "Temps d'incertesa",
+    "BLOCK_VALIDITY_WINDOW_HELP": "Temps d'espera abans de considerar una informació com a validada",
     "BLOCK_VALIDITY_OPTION": {
-      "NONE": "Sin espera",
-      "N": "{{time | formatDuration}} ({{count}} bloques)"
+      "NONE": "Sense espera",
+      "N": "{{time | formatDuration}} ({{count}} blocs)"
     },
     "POPUP_PEER": {
       "TITLE": "Nodo Duniter",
diff --git a/www/img/flag-ct.png b/www/img/flag-ca.png
similarity index 100%
rename from www/img/flag-ct.png
rename to www/img/flag-ca.png
diff --git a/www/js/vendor/numeral.ca.js b/www/js/vendor/numeral.ca.js
new file mode 100644
index 0000000000000000000000000000000000000000..b82ac8dd53334b3403bf1b1407304ab33a1214b5
--- /dev/null
+++ b/www/js/vendor/numeral.ca.js
@@ -0,0 +1,29 @@
+//! numeral.js locale configuration
+//! locale : catalan (ca)
+//! author : arbocenc: https://personal.calbasi.net
+
+(function (global, factory) {
+   typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../numeral')) :
+   typeof define === 'function' && define.amd ? define(['numeral'], factory) :
+   factory(global.numeral)
+}(this, function (numeral) { 'use strict';
+
+  numeral.language('ca', {
+    "delimiters": {
+      "thousands": ".",
+      "decimal": ","
+    },
+    "abbreviations": {
+      "thousand": "x10^3",
+      "million":  "x10^6",
+      "billion":  "x10^12",
+      "trillion": "x10^18"
+    },
+    "ordinal": function (number) {
+      return (number === 1) ? 'a' : 'a';
+    },
+    "currency": {
+      "symbol": "€"
+    }
+  });
+}));
diff --git a/www/license/license_g1-ca.md b/www/license/license_g1-ca.md
new file mode 100644
index 0000000000000000000000000000000000000000..77800d671bc5c705fd42cddc2169f8529f14ef84
--- /dev/null
+++ b/www/license/license_g1-ca.md
@@ -0,0 +1,96 @@
+Llicència Ğ1 - v0.2.9
+====================
+
+:Date: 2017-04-04 12:59
+:Modified: 2023-01-01 18:33
+
+**Llicència de la moneda i compromís de responsabilitat.**
+
+Qualsevol certificació d'un nou membre de Ğ1 Ha d'anar en primer lloc acompanyada de la transmissió d'aquesta llicència de la moneda Ğ1, on el certificador ha d'assegurar-se que ha sigut estudiada, entesa i acceptada per la persona que serà certificada.
+
+Cualquier evento de encuentro relacionado con Ğ1 debe ir acompañado de la transmisión de esta licencia, que puede leerse en voz alta y transmitirse por cualquier medio.
+
+Red de confianza Ğ1 (RdC Ğ1)
+------------------------------
+
+** Aviso de advertencia :** Certificar no significa que simplemente has visto físicamente a la persona candidata. Es asegurar a la comunidad Ğ1 que la conoces lo suficientemente bien y que sabrás cómo contactarla y localizarla fácilmente, ser capaz de identificar una posible cuenta falsa o duplicada realizada por alguien que has certificado, u otro tipo de problema, efectuando verificaciones con la comunidad que detecten el problema. La seguridad de la Red de Confianza es descentralizada.
+
+**Consejos fuertemente recomendados**
+
+Conocer bien a una persona significa que puedes comunicarte con ella por varios medios distintos (físicos, electrónicos, etc ...) pero también que conoces a varias personas que también la conocen bien y, por lo tanto, pueden contactar con ella igualmente. Además si no conoces bien a nadie de quienes ya le han certificado, es una clara indicación de que no conoces bien a la persona; una certificación de este tipo provoca una alerta hacia toda la comunidad Ğ1. En caso de conocimiento insuficiente, es importante NO certificar.
+
+Nunca certifiques solo/a, sino acompáñate por al menos otro/a miembro de la RdC Ğ1 para evitar cualquier error de manejo. En caso de error, advierte a quienes ya son miembros de la RdC Ğ1 inmediatamente.
+
+Antes de cualquier certificación, asegúrate de verificar si su cuenta (tanto si es nueva candidatura o ya miembro) ha recibido ya una o más certificaciones. Si es necesario, solicite información para ponerte en contacto con quienes ya le hayan certificado para verificar juntos/as que conocéis bien la persona en cuestión concerniente, así como su llave pública correspondiente.
+
+Comprueba que la persona a ser certificada domina bien el manejo de su cuenta: una buena manera de comprobar esto es transferir unas Ğ1 a la cuenta destino, y luego pedir la devolución a tu propia cuenta. Esto asegura el buen manejo por quien va a ser certificado, de su llave privada.
+
+Comprueba que tus contactos hayan estudiado y comprendido la licencia Ğ1 actualizada.
+
+Si te percatas de que un/a certificador/a real o potencial de la cuenta candidata no conoce a la persona interesada, avisa inmediatamente a quien tenga experiencia en el tema de tus contactos en la RdC Ğ1, para que la RdC Ğ1 verifique el proceso de validación.
+
+Cuando eres miembro de la RdC Ğ1 y estás a punto de certificar una cuenta:
+
+
+** Estás seguro de: **
+
+1°) Conocer suficientemente bien a quien declara poseer esta llave pública (cuenta candidata a miembro). Lea los consejos fuertemente recomendados más arriba para asegurarte de que la "conoces bien".
+
+2°) Haber comprobado personalmente con esa persona de que se trata de esa llave pública que está a punto de certificar.
+
+3°) Haber verificado con la persona interesada, que ha generado y guardado su documento o archivo de revocación de cuenta Duniter que le permitirá, si es necesario, desactivar su estado de miembro y cocreación (en caso de robo de las contraseñas, cambio de seudónimo, cuenta creada incorrectamente, etc.).
+
+4a°) Para verificar el paso 2, para asegurarte de que la persona humana que conoces bien posee esa llave pública, es recomendable hacer esa validación in situ físicamente.
+
+4b°) O bien se puede realizar la validación de forma remota de la llave pública, comunicándola por diferentes medios, como correo ordinario, electrónico, redes sociales, foro, videoconferencia, llamada telefónica (reconociendo la voz). Si alguien hackeara una cuenta de correo electrónico o una cuenta en un foro, es mucho más difícil imaginar que pueda hackear cuatro medios de comunicación separados, e imitar la apariencia (vídeo) e incluso la voz de alguien.
+
+La 4a° es preferible a la 4b° mientras que los puntos 1°, 2° y 3° son ante todo indispensables.
+
+
+**Reglas abreviadas de la RdC :**
+
+Cada miembro tiene una reserva de 100 certificaciones posibles, que solo pueden hacerse efectivas a razón de 1 certificación cada 5 días.
+
+Válida durante 2 meses, una certificación se toma en consideración definitivamente para una nueva candidatura de membresía si esta persona recibe al menos otras 4 certificaciones que cumplen la regla de distancia durante esos 2 meses, de lo contrario, el proceso de candidatura deberá reiniciarse sin perder acceso a la cuenta.
+
+Para convertirse en nuevo/a miembro de la RdC Ğ1 es necesario obtener 5 certificaciones y estar a una distancia de <= 5 pasos con como mínimo un 80% del total de miembros referentes de la RdC.
+
+Alguien es miembro referente de la RdC Ğ1 cuando ha recibido y también emitido al menos Y[N] certificaciones donde N es el total de miembros en la RdC e Y[N] = techo N^(1/5). Ejemplos:
+
+* Para 1024 < N ≤ 3125 se obtiene que Y[N] = 5
+* Para 7776 < N ≤ 16807 se obtiene que Y[N] = 7
+* para 59049 < N ≤ 100.000 se obtiene que Y[N] = 10
+
+Una vez que alguien es nuevo/a miembro de la RdC Ğ1, sus certificaciones serán válidas durante 2 años.
+
+Para seguir siendo miembro, se debe renovar el acuerdo regularmente mediante la llave privada (cada 12 meses) y asegurarse de que siempre se tenga al menos 5 certificaciones válidas después de los 2 años.
+
+Moneda Ğ1
+----------
+
+Ğ1 se genera a través de un Dividendo Universal (DU) para cada ser humano miembro de la Red de Confianza Ğ1, de la siguiente forma:
+
+* 1 DU por persona y por día.
+
+La cantidad en Ğ1 del DU diario es idéntica hasta pasado cada equinoccio(cada 6 meses) cuando se re-evaluará el DU según la fórmula :
+
+* DU diario (próximo equinoccio) = DU diario (equinoccio) + c² (M/N)(equinoccio) / (15778800 segundos)
+
+Teniendo como constantes:
+
+* c = 4,88% / equinoccio
+* DU(0) = 10,00 Ğ1
+
+Y como variables :
+
+* *M* la masa monetaria total en el equinoccio
+* *N* el número de miembros el día del equinoccio
+
+Software Ğ1 y licencia Ğ1
+--------------------------
+
+El software Ğ1 que permita a los usuarios administrar su uso de Ğ1 debe transmitir esta licencia y todos los parámetros técnicos de la moneda Ğ1 y de la RdC Ğ1 que han sido configurados en el bloque 0 de Ğ1. El software que no cumpla con estas obligaciones de la licencia no es compatible con Ğ1.
+
+Para más detalle en los aspectos técnicos, es posible consultar directamente el código de Duniter, que es un software libre así como los datos de la cadena de bloques (blockchain) Ğ1, recuperándolos a través de una instancia (o nodo) de Duniter Ğ1.
+
+Más información en el sitio web del equipo Duniter https://www.duniter.org
diff --git a/www/plugins/es/i18n/locale-es-CT.json b/www/plugins/es/i18n/locale-ca.json
similarity index 96%
rename from www/plugins/es/i18n/locale-es-CT.json
rename to www/plugins/es/i18n/locale-ca.json
index b16606839813c87f82b5b6eef48480b7d43a3b5a..4cd4bed7b80e1089da193e378d0b9281aa3a11aa 100644
--- a/www/plugins/es/i18n/locale-es-CT.json
+++ b/www/plugins/es/i18n/locale-ca.json
@@ -112,36 +112,36 @@
       "DIVIDER_GROUP": "Grups"
     },
     "CONFIRM": {
-      "SUGGEST_CERTIFICATIONS": "¿Desea <b>enviar estas sugerencias de certificatión</b> ?",
-      "ASK_CERTIFICATION": "¿Desea <b>enviar una solicitud de certificación</b> ?",
-      "ASK_CERTIFICATIONS": "¿Desea <b>enviar una solicitud de certificación</b> a estas personas ?"
+      "SUGGEST_CERTIFICATIONS": "Vols <b>enviar aquests suggeriments de certificatió</b>?",
+      "ASK_CERTIFICATION": "Vols <b>enviar una sol·licitut de certificació</b>?",
+      "ASK_CERTIFICATIONS": "Vols <b>enviar una sol·licitut de certificació</b> a aquestes persones?"
     }
   },
   "INVITATION": {
-    "TITLE": "Invitaciones",
-    "NO_RESULT": "Ningúna invitación en espera",
-    "BTN_DELETE_ALL": "Suprimir todas las invitaciones",
-    "BTN_DELETE": "Suprimir la invitación",
-    "BTN_NEW_INVITATION": "Nueva invitación",
-    "ASK_CERTIFICATION": "<a href=\"#/app/wot/{{pubkey}}/{{::uid}}\">{{::name||uid}}</a> solicita su certificación",
-    "SUGGESTION_CERTIFICATION": "<a href=\"#/app/wot/{{::pubkey}}/{{::uid}}\">{{::name||uid}}</a> ha sido sugerido/a para certificación",
-    "SUGGESTED_BY": "Sugerencia mandada por <a class=\"positive\" href=\"#/app/wot/{{::issuer.pubkey}}/{{::issuer.uid}}\">{{::issuer.name||issuer.uid}}</a>",
+    "TITLE": "Invitacions",
+    "NO_RESULT": "No hi ha cap invitació en espera",
+    "BTN_DELETE_ALL": "Suprimeix totes les invitacions",
+    "BTN_DELETE": "Suprimeix la invitació",
+    "BTN_NEW_INVITATION": "Nova invitació",
+    "ASK_CERTIFICATION": "<a href=\"#/app/wot/{{pubkey}}/{{::uid}}\">{{::name||uid}}</a> ha sol·licitat la teva certificació",
+    "SUGGESTION_CERTIFICATION": "<a href=\"#/app/wot/{{::pubkey}}/{{::uid}}\">{{::name||uid}}</a> ha sigut suggerit per certificar-se",
+    "SUGGESTED_BY": "Suggeriment enviat per <a class=\"positive\" href=\"#/app/wot/{{::issuer.pubkey}}/{{::issuer.uid}}\">{{::issuer.name||issuer.uid}}</a>",
     "NOTIFICATIONS": {
-      "TITLE": "Invitaciones"
+      "TITLE": "Invitacions"
     },
     "LIST": {
-      "TITLE": "Invitaciones"
+      "TITLE": "Invitacions"
     },
     "NEW": {
-      "TITLE": "Nueva invitación",
+      "TITLE": "Nova invitació",
       "RECIPIENTS": "A",
-      "RECIPIENTS_HELP": "Destinatarios de la invitación",
-      "RECIPIENTS_MODAL_TITLE": "Destinatarios",
-      "RECIPIENTS_MODAL_HELP": "Por favor, elige los destinatarios :",
-      "SUGGESTION_IDENTITIES": "Sugerencia de certificación",
-      "SUGGESTION_IDENTITIES_HELP": "Certificaciones a sugerir",
-      "SUGGESTION_IDENTITIES_MODAL_TITLE": "Sugerencias",
-      "SUGGESTION_IDENTITIES_MODAL_HELP": "Por favor, elige sus sugerencias :"
+      "RECIPIENTS_HELP": "Destinataris de la invitació",
+      "RECIPIENTS_MODAL_TITLE": "Destinataris",
+      "RECIPIENTS_MODAL_HELP": "Si us plau, tria els destinataris:",
+      "SUGGESTION_IDENTITIES": "Suggeriment de certificació",
+      "SUGGESTION_IDENTITIES_HELP": "Certificacions a suggerir",
+      "SUGGESTION_IDENTITIES_MODAL_TITLE": "Suggeriments",
+      "SUGGESTION_IDENTITIES_MODAL_HELP": "Si us plau, tria els teus suggeriments:"
     },
     "CONFIRM": {
       "DELETE_ALL_CONFIRMATION": "La supresión de las invitaciones es una <b>operación ireversible</b>.<br/><br/>¿ Desea continuar ?",
diff --git a/www/plugins/graph/i18n/locale-ca.json b/www/plugins/graph/i18n/locale-ca.json
new file mode 100644
index 0000000000000000000000000000000000000000..25198b88369826834a183548efcc6d3007ee91ff
--- /dev/null
+++ b/www/plugins/graph/i18n/locale-ca.json
@@ -0,0 +1,62 @@
+{
+  "NETWORK": {
+    "VIEW": {
+      "BTN_GRAPH": "Estadístiques"
+    }
+  },
+  "GRAPH": {
+    "COMMON": {
+      "LINEAR_SCALE" : "Escala linial",
+      "LOGARITHMIC_SCALE" : "Escala logarítmica",
+      "BTN_SHOW_STATS": "Mostra'm les estadístiques",
+      "BTN_SHOW_DETAILED_STATS": "Estadístiques detallades",
+      "RANGE_DURATION_DIVIDER": "Unitat de temps:",
+      "RANGE_DURATION": {
+        "HOUR": "Agrupa per <b>hores</b>",
+        "DAY": "Agrupa per <b>dies</b>",
+        "MONTH": "Agrupa per <b>mesos</b>"
+      }
+    },
+    "ACCOUNT": {
+      "TITLE": "Estadístiques",
+      "BTN_SHOW_STATS": "Mostra'm les estadístiques del compte",
+      "BALANCE_DIVIDER": "Balanç del compte",
+      "BALANCE_TITLE": "Evolució del compte {{pubkey|formatPubkey}}",
+      "TX_RECEIVED_LABEL": "Rebut",
+      "TX_SENT_LABEL": "Enviat",
+      "UD_LABEL": "DU",
+      "BALANCE_LABEL": "Saldo",
+      "INPUT_CHART_TITLE": "Resum del rebut, per emisor",
+      "OUTPUT_CHART_TITLE": "Resum de l'enviat, per destinatari"
+    },
+    "BLOCKCHAIN": {
+      "TITLE": "Estadístiques",
+      "BLOCKS_ISSUERS_DIVIDER": "Blocs escrits per cada membre",
+      "BLOCKS_ISSUERS_HELP": "<b>{{issuerCount|formatInteger}} membres</b> han calculat <b>{{blockCount|formatInteger}} blocs</b>",
+      "BLOCKS_ISSUERS_TITLE": "Nombre de blocs per membre",
+      "BLOCKS_ISSUERS_LABEL": "Nombre de blocs",
+      "TX_DIVIDER": "Anàlisi de les transaccions",
+      "TX_AMOUNT_TITLE": "Volum de transaccions",
+      "TX_AMOUNT_PUBKEY_TITLE": "El volum de transaccions calculat per {{issuer | formatPubkey}}",
+      "TX_AMOUNT_LABEL": "Volum intercanviat",
+      "TX_COUNT_TITLE": "Nombre de transaccions escrites",
+      "TX_COUNT_LABEL": "Nombre de transaccions",
+      "TX_AVG_BY_BLOCK": "Promig per bloc"
+    },
+    "CURRENCY": {
+      "MONETARY_MASS_TITLE": "Evolució de la massa monetària",
+      "MONETARY_MASS_LABEL": "Massa monetària",
+      "MONETARY_MASS_SHARE_LABEL": "Promig per membre",
+      "UD_TITLE": "Evolució del dividend universal",
+      "MEMBERS_COUNT_TITLE": "Evolució del nombre de membres",
+      "MEMBERS_COUNT_LABEL": "Nombre de membres"
+    },
+    "PEER": {
+      "VIEW": {
+        "BLOCK_COUNT_LABEL": "Nombre de blocs calculats",
+        "BLOCK_COUNT": "{{count}} blocs",
+        "NO_BLOCK": "Cap bloc"
+      }
+    }
+  }
+}
diff --git a/www/plugins/graph/i18n/locale-es-CT.json b/www/plugins/graph/i18n/locale-es-CT.json
deleted file mode 100644
index 37a121acadb17a1006b619ac256a91fcb16ced42..0000000000000000000000000000000000000000
--- a/www/plugins/graph/i18n/locale-es-CT.json
+++ /dev/null
@@ -1,62 +0,0 @@
-{
-  "NETWORK": {
-    "VIEW": {
-      "BTN_GRAPH": "Estadística"
-    }
-  },
-  "GRAPH": {
-    "COMMON": {
-      "LINEAR_SCALE" : "Escala lineal",
-      "LOGARITHMIC_SCALE" : "Escala logarítmica",
-      "BTN_SHOW_STATS": "Ver estadísticas",
-      "BTN_SHOW_DETAILED_STATS": "Estadísticas detalladas",
-      "RANGE_DURATION_DIVIDER": "Unidad de tiempo:",
-      "RANGE_DURATION": {
-        "HOUR": "Agrupar por <b>horas</b>",
-        "DAY": "Agrupar por <b>días</b>",
-        "MONTH": "Agrupar por <b>meses</b>"
-      }
-    },
-    "ACCOUNT": {
-      "TITLE": "Estadísticas",
-      "BTN_SHOW_STATS": "Ver estadísticas de la cuenta",
-      "BALANCE_DIVIDER": "Balance de la cuenta",
-      "BALANCE_TITLE": "Evolución de la cuenta {{pubkey|formatPubkey}}",
-      "TX_RECEIVED_LABEL": "Recibido",
-      "TX_SENT_LABEL": "Gastado",
-      "UD_LABEL": "DU",
-      "BALANCE_LABEL": "Saldo",
-      "INPUT_CHART_TITLE": "Resumen de lo recibido, por emisor",
-      "OUTPUT_CHART_TITLE": "Resumen de lo gastado, por destinatario"
-    },
-    "BLOCKCHAIN": {
-      "TITLE": "Estadística",
-      "BLOCKS_ISSUERS_DIVIDER": "Bloques escritos por cada miembro",
-      "BLOCKS_ISSUERS_HELP": "<b>{{issuerCount|formatInteger}} miembros</b> han calculado <b>{{blockCount|formatInteger}} bloques</b>",
-      "BLOCKS_ISSUERS_TITLE": "Número de bloques por miembro",
-      "BLOCKS_ISSUERS_LABEL": "Número de bloques",
-      "TX_DIVIDER": "Análisis de transacciones",
-      "TX_AMOUNT_TITLE": "El volumen de transacciones",
-      "TX_AMOUNT_PUBKEY_TITLE": "El volumen de transacciones calculado por {{issuer | formatPubkey}}",
-      "TX_AMOUNT_LABEL": "Volumen intercambiado",
-      "TX_COUNT_TITLE": "Número de transacciones escritas",
-      "TX_COUNT_LABEL": "Número de transacciones",
-      "TX_AVG_BY_BLOCK": "Promedio por bloque"
-    },
-    "CURRENCY": {
-      "MONETARY_MASS_TITLE": "Evolución de la masa monetaria",
-      "MONETARY_MASS_LABEL": "Masa monetaria",
-      "MONETARY_MASS_SHARE_LABEL": "Promedio miembro",
-      "UD_TITLE": "Evolución del dividendo universales",
-      "MEMBERS_COUNT_TITLE": "Evolución del número de miembros",
-      "MEMBERS_COUNT_LABEL": "Número de miembros"
-    },
-    "PEER": {
-      "VIEW": {
-        "BLOCK_COUNT_LABEL": "Número de bloques calculados",
-        "BLOCK_COUNT": "{{count}} bloques",
-        "NO_BLOCK": "Ningún bloque"
-      }
-    }
-  }
-}