commit eff0664caed44c3858a3aeb6cf9bbfc64c764501
Author: Damian Johnson <atagar(a)torproject.org>
Date: Tue Oct 8 14:31:15 2019 -0700
Fix create_ephemeral_hidden_service() test failure
Tor adjusted its 'BEST' algorithm from RSA1024 to ED25519-V3, the later of
which doesn't accept ClientAuth.
https://trac.torproject.org/projects/tor/ticket/32000
---
test/integ/control/controller.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/test/integ/control/controller.py b/test/integ/control/controller.py
index bcfc4606..ba4037d8 100644
--- a/test/integ/control/controller.py
+++ b/test/integ/control/controller.py
@@ -637,7 +637,7 @@ class TestController(unittest.TestCase):
runner = test.runner.get_runner()
with runner.get_tor_controller() as controller:
- response = controller.create_ephemeral_hidden_service(4567, basic_auth = {'alice': 'nKwfvVPmTNr2k2pG0pzV4g', 'bob': None})
+ response = controller.create_ephemeral_hidden_service(4567, key_content = 'RSA1024', basic_auth = {'alice': 'nKwfvVPmTNr2k2pG0pzV4g', 'bob': None})
self.assertEqual([response.service_id], controller.list_ephemeral_hidden_services())
self.assertTrue(response.private_key is not None)
self.assertEqual(['bob'], list(response.client_auth.keys())) # newly created credentials were only created for bob
commit cb36cfa4f9af545af5ef00e781d1ab39163b6c7a
Author: Translation commit bot <translation(a)torproject.org>
Date: Tue Oct 8 19:51:46 2019 +0000
https://gitweb.torproject.org/translation.git/commit/?h=torbutton-torbutton…
---
es-ES/torbutton.dtd | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/es-ES/torbutton.dtd b/es-ES/torbutton.dtd
index d4e9670cc..a644831aa 100644
--- a/es-ES/torbutton.dtd
+++ b/es-ES/torbutton.dtd
@@ -37,13 +37,13 @@
<!ENTITY torbutton.prefs.sec_limit_typography "Algunas fuentes y símbolos matemáticos están deshabilitados.">
<!ENTITY torbutton.prefs.sec_limit_graphics_and_typography "Algunas fuentes, iconos, símbolos matemáticos, e imágenes están deshabilitados.">
<!ENTITY torbutton.prefs.sec_click_to_play_media "Audio y vídeo (HTML5 media), y WebGL son click-to-play.">
-<!ENTITY torbutton.prefs.sec_custom_warning "">
-<!ENTITY torbutton.prefs.sec_overview "">
-<!ENTITY torbutton.prefs.sec_standard_tooltip "">
-<!ENTITY torbutton.prefs.sec_safer_tooltip "">
-<!ENTITY torbutton.prefs.sec_safest_tooltip "">
-<!ENTITY torbutton.prefs.sec_custom_summary "">
-<!ENTITY torbutton.prefs.sec_restore_defaults "">
-<!ENTITY torbutton.prefs.sec_advanced_security_settings "">
+<!ENTITY torbutton.prefs.sec_custom_warning "Personalizado">
+<!ENTITY torbutton.prefs.sec_overview "Deshabilita ciertas funciones web que se pueden usar para atacar tu seguridad y anonimato.">
+<!ENTITY torbutton.prefs.sec_standard_tooltip "Nivel de seguridad: Estándar">
+<!ENTITY torbutton.prefs.sec_safer_tooltip "Nivel de seguridad: Más seguro">
+<!ENTITY torbutton.prefs.sec_safest_tooltip "Nivel de seguridad: El más seguro de todos">
+<!ENTITY torbutton.prefs.sec_custom_summary "Tus preferencias personalizadas para el navegador han resultado en una configuración de seguridad inusual. Por motivos de seguridad y privacidad, te recomendamos uno de los de los niveles de seguridad predeterminados.">
+<!ENTITY torbutton.prefs.sec_restore_defaults "Restaurar valores predeterminados">
+<!ENTITY torbutton.prefs.sec_advanced_security_settings "Configuración de seguridad avanzada ...">
<!ENTITY torbutton.circuit_display.title "Circuito Tor">
<!ENTITY torbutton.circuit_display.new_circuit "Nuevo Circuito para este Sitio">
commit df2bbd6f604229d3a4041944132bfc344fedda47
Author: Translation commit bot <translation(a)torproject.org>
Date: Tue Oct 8 19:51:23 2019 +0000
https://gitweb.torproject.org/translation.git/commit/?h=torbutton-branddtd_…
---
es-ES/brand.dtd | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/es-ES/brand.dtd b/es-ES/brand.dtd
index cf6b70280..7a939ef12 100644
--- a/es-ES/brand.dtd
+++ b/es-ES/brand.dtd
@@ -6,7 +6,7 @@
<!ENTITY brandShortName "Tor Browser">
<!ENTITY brandFullName "Tor Browser">
<!ENTITY vendorShortName "Proyecto Tor">
-<!ENTITY trademarkInfo.part1 "">
+<!ENTITY trademarkInfo.part1 "'Tor' y el 'Onion Logo' (logo de la cebolla) son marcas registradas de la Tor Project, Inc.">
<!-- The following strings are for bug #10280's UI. We place them here for our translators -->
<!ENTITY plugins.installed.find "Haz clic para cargar los complementos instalados en el sistema">
commit 10d50c5a66f8c85190bd21d6b1c5a6bc7ee4560a
Author: Translation commit bot <translation(a)torproject.org>
Date: Tue Oct 8 19:49:57 2019 +0000
https://gitweb.torproject.org/translation.git/commit/?h=tails-persistence-s…
---
es/es.po | 334 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 334 insertions(+)
diff --git a/es/es.po b/es/es.po
new file mode 100644
index 000000000..b1e48a312
--- /dev/null
+++ b/es/es.po
@@ -0,0 +1,334 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Tails developers
+# This file is distributed under the same license as the PACKAGE package.
+#
+# Translators:
+# Cesar Enrique Sanchez Medina <cesare01(a)gmail.com>, 2014
+# Emma Peel, 2015,2017-2019
+# eulalio barbero espinosa <eulaliob(a)gmail.com>, 2018-2019
+# Manuel Herrera <ma_herrer(a)yahoo.com.mx>, 2013
+# strel, 2013-2017
+# strel, 2012-2013
+msgid ""
+msgstr ""
+"Project-Id-Version: Tor Project\n"
+"Report-Msgid-Bugs-To: Tails developers <tails(a)boum.org>\n"
+"POT-Creation-Date: 2019-10-07 08:43+0200\n"
+"PO-Revision-Date: 2019-10-08 19:38+0000\n"
+"Last-Translator: Emma Peel\n"
+"Language-Team: Spanish (http://www.transifex.com/otf/torproject/language/es/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: es\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: ../lib/Tails/Persistence/Setup.pm:265
+msgid "Setup Tails persistent volume"
+msgstr "Configurar el volumen persistente de Tails"
+
+#: ../lib/Tails/Persistence/Setup.pm:343 ../lib/Tails/Persistence/Setup.pm:481
+msgid "Error"
+msgstr "Error"
+
+#: ../lib/Tails/Persistence/Setup.pm:372
+#, perl-format
+msgid "Device %s already has a persistent volume."
+msgstr "El dispositivo %s ya tiene un volumen persistente."
+
+#: ../lib/Tails/Persistence/Setup.pm:380
+#, perl-format
+msgid "Device %s has not enough unallocated space."
+msgstr "El dispositivo %s no tiene suficiente espacio libre."
+
+#: ../lib/Tails/Persistence/Setup.pm:387 ../lib/Tails/Persistence/Setup.pm:401
+#, perl-format
+msgid "Device %s has no persistent volume."
+msgstr "El dispositivo %s no tiene ningún volumen persistente."
+
+#: ../lib/Tails/Persistence/Setup.pm:393
+#, perl-format
+msgid ""
+"Cannot delete the persistent volume on %s while in use. You should restart "
+"Tails without persistence."
+msgstr "No se puede borrar el volumen persistente en %s mientras está en uso. Reinicia Tails sin persistencia."
+
+#: ../lib/Tails/Persistence/Setup.pm:407
+#, perl-format
+msgid "Persistence volume on %s is not unlocked."
+msgstr "El volumen permanente en %s no está desbloqueado."
+
+#: ../lib/Tails/Persistence/Setup.pm:412
+#, perl-format
+msgid "Persistence volume on %s is not mounted."
+msgstr "El volumen persistente en %s no está montado."
+
+#: ../lib/Tails/Persistence/Setup.pm:417
+#, perl-format
+msgid ""
+"Persistence volume on %s is not readable. Permissions or ownership problems?"
+msgstr "No se puede leer el volumen persistente en %s. ¿Problemas de permisos o de propiedad?"
+
+#: ../lib/Tails/Persistence/Setup.pm:422
+#, perl-format
+msgid "Persistence volume on %s is not writable."
+msgstr "No se puede escribir en el volumen persistente en %s."
+
+#: ../lib/Tails/Persistence/Setup.pm:431
+#, perl-format
+msgid "Tails is running from non-USB / non-SDIO device %s."
+msgstr "Tails se está ejecutando desde un dispositivo %s que no es USB / SDIO."
+
+#: ../lib/Tails/Persistence/Setup.pm:437
+#, perl-format
+msgid "Device %s is optical."
+msgstr "El dispositivo %s es óptico"
+
+#: ../lib/Tails/Persistence/Setup.pm:444
+#, perl-format
+msgid "Device %s was not created using a USB image or Tails Installer."
+msgstr "El dispositivo %s no se ha creado usando una imagen USB o una imagen Tails Installer."
+
+#: ../lib/Tails/Persistence/Setup.pm:688
+msgid "Persistence wizard - Finished"
+msgstr "Asistente de persistencia - Finalizado"
+
+#: ../lib/Tails/Persistence/Setup.pm:691
+msgid ""
+"Any changes you have made will only take effect after restarting Tails.\n"
+"\n"
+"You may now close this application."
+msgstr "Cualquier cambio que hayas hecho sólo tendrá efecto después de reiniciar Tails. \n \nAhora puedes cerrar esta aplicación."
+
+#: ../lib/Tails/Persistence/Configuration/Setting.pm:113
+msgid "Custom"
+msgstr "Personalizada"
+
+#: ../lib/Tails/Persistence/Configuration/Presets.pm:55
+msgid "Personal Data"
+msgstr "Datos personales"
+
+#: ../lib/Tails/Persistence/Configuration/Presets.pm:57
+msgid "Keep files stored in the `Persistent' directory"
+msgstr "Mantener archivos almacenados en la capeta 'Persistent'"
+
+#: ../lib/Tails/Persistence/Configuration/Presets.pm:70
+msgid "Browser Bookmarks"
+msgstr "Favoritos del navegador."
+
+#: ../lib/Tails/Persistence/Configuration/Presets.pm:72
+msgid "Bookmarks saved in the Tor Browser"
+msgstr "Marcadores guardados en el Tor Browser."
+
+#: ../lib/Tails/Persistence/Configuration/Presets.pm:85
+msgid "Network Connections"
+msgstr "Conexiones de red"
+
+#: ../lib/Tails/Persistence/Configuration/Presets.pm:87
+msgid "Configuration of network devices and connections"
+msgstr "Configuración de dispositivos de red y conexiones"
+
+#: ../lib/Tails/Persistence/Configuration/Presets.pm:100
+msgid "Additional Software"
+msgstr "Software Adicional"
+
+#: ../lib/Tails/Persistence/Configuration/Presets.pm:102
+msgid "Software installed when starting Tails"
+msgstr "Software instalado al iniciar Tails."
+
+#: ../lib/Tails/Persistence/Configuration/Presets.pm:120
+msgid "Printers"
+msgstr "Impresoras"
+
+#: ../lib/Tails/Persistence/Configuration/Presets.pm:122
+msgid "Printers configuration"
+msgstr "Configuración de las impresoras"
+
+#: ../lib/Tails/Persistence/Configuration/Presets.pm:135
+msgid "Thunderbird"
+msgstr "Thunderbird"
+
+#: ../lib/Tails/Persistence/Configuration/Presets.pm:137
+msgid "Thunderbird emails, feeds, and settings"
+msgstr "Correo electrónico, fuentes y configuración de Thunderbird"
+
+#: ../lib/Tails/Persistence/Configuration/Presets.pm:150
+msgid "GnuPG"
+msgstr "GnuPG"
+
+#: ../lib/Tails/Persistence/Configuration/Presets.pm:152
+msgid "GnuPG keyrings and configuration"
+msgstr "Grupos de claves (keyrings) de GnuPG y configuración"
+
+#: ../lib/Tails/Persistence/Configuration/Presets.pm:165
+msgid "Bitcoin Client"
+msgstr "Cliente de Bitcoin"
+
+#: ../lib/Tails/Persistence/Configuration/Presets.pm:167
+msgid "Electrum's bitcoin wallet and configuration"
+msgstr "Cartera de bitcoins Electrum y configuración"
+
+#: ../lib/Tails/Persistence/Configuration/Presets.pm:180
+msgid "Pidgin"
+msgstr "Pidgin"
+
+#: ../lib/Tails/Persistence/Configuration/Presets.pm:182
+msgid "Pidgin profiles and OTR keyring"
+msgstr "Perfiles de Pidgin y grupo de claves ('keyring') OTR (cifrado Off The Record)"
+
+#: ../lib/Tails/Persistence/Configuration/Presets.pm:195
+msgid "SSH Client"
+msgstr "Cliente SSH"
+
+#: ../lib/Tails/Persistence/Configuration/Presets.pm:197
+msgid "SSH keys, configuration and known hosts"
+msgstr "Claves SSH, configuración y hosts conocidos"
+
+#: ../lib/Tails/Persistence/Configuration/Presets.pm:210
+msgid "Dotfiles"
+msgstr "Dotfiles (formato de '.ficheros' de configuración)"
+
+#: ../lib/Tails/Persistence/Configuration/Presets.pm:212
+msgid ""
+"Symlink into $HOME every file or directory found in the `dotfiles' directory"
+msgstr "Crear enlaces simbólicos ('symlink') en $HOME para todos los ficheros o carpetas en la carpeta 'dotfiles' (formato de '.ficheros' de configuración)"
+
+#: ../lib/Tails/Persistence/Step/Bootstrap.pm:96
+msgid "Persistence wizard - Persistent volume creation"
+msgstr "Asistente de persistencia - Creación de volumen persistente"
+
+#: ../lib/Tails/Persistence/Step/Bootstrap.pm:99
+msgid "Choose a passphrase to protect the persistent volume"
+msgstr "Elija una frase clave para proteger el volumen persistente"
+
+#. TRANSLATORS: size, device vendor, device model
+#: ../lib/Tails/Persistence/Step/Bootstrap.pm:103
+#, perl-format
+msgid ""
+"A %s persistent volume will be created on the <b>%s %s</b> device. Data on "
+"this volume will be stored in an encrypted form protected by a passphrase."
+msgstr "Se creará un volumen persistente %s en el dispositivo <b>%s %s</b>. Los datos en este volumen se guardarán cifrados protegidos con frase clave."
+
+#: ../lib/Tails/Persistence/Step/Bootstrap.pm:108
+msgid "Create"
+msgstr "Crear"
+
+#: ../lib/Tails/Persistence/Step/Bootstrap.pm:151
+msgid ""
+"<b>Beware!</b> Using persistence has consequences that must be well "
+"understood. Tails can't help you if you use it wrong! See the <i>Encrypted "
+"persistence</i> page of the Tails documentation to learn more."
+msgstr "<b>¡Cuidado!</b> El uso de volumen persistente tiene consecuencias que han de ser bien entendidas. ¡Si los usas mal Tails no te puede ayudar! Para saber más, mira la página<i>persistencia cifrada</i> de la documentación de Tails."
+
+#: ../lib/Tails/Persistence/Step/Bootstrap.pm:179
+msgid "Passphrase:"
+msgstr "Frase clave: "
+
+#: ../lib/Tails/Persistence/Step/Bootstrap.pm:187
+msgid "Verify Passphrase:"
+msgstr "Verificar frase clave: "
+
+#: ../lib/Tails/Persistence/Step/Bootstrap.pm:198
+#: ../lib/Tails/Persistence/Step/Bootstrap.pm:266
+msgid "Passphrase can't be empty"
+msgstr "La frase clave no puede estar vacía"
+
+#: ../lib/Tails/Persistence/Step/Bootstrap.pm:233
+msgid "Show Passphrase"
+msgstr "Mostrar frase-contraseña"
+
+#: ../lib/Tails/Persistence/Step/Bootstrap.pm:257
+msgid "Passphrases do not match"
+msgstr "Las frases clave no concuerdan"
+
+#: ../lib/Tails/Persistence/Step/Bootstrap.pm:312
+#: ../lib/Tails/Persistence/Step/Delete.pm:103
+#: ../lib/Tails/Persistence/Step/Configure.pm:181
+msgid "Failed"
+msgstr "Error"
+
+#: ../lib/Tails/Persistence/Step/Bootstrap.pm:320
+msgid "Mounting Tails persistence partition."
+msgstr "Montando la partición persistente de Tails."
+
+#: ../lib/Tails/Persistence/Step/Bootstrap.pm:323
+msgid "The Tails persistence partition will be mounted."
+msgstr "La partición persistente de Tails será montada."
+
+#: ../lib/Tails/Persistence/Step/Bootstrap.pm:332
+msgid "Correcting permissions of the persistent volume."
+msgstr "Corrigiendo permisos del volumen persistente."
+
+#: ../lib/Tails/Persistence/Step/Bootstrap.pm:335
+msgid "The permissions of the persistent volume will be corrected."
+msgstr "Los permisos del volumen persistente serán corregidos."
+
+#: ../lib/Tails/Persistence/Step/Bootstrap.pm:343
+msgid "Creating default persistence configuration."
+msgstr "Creando la configuración persistente por defecto."
+
+#: ../lib/Tails/Persistence/Step/Bootstrap.pm:346
+msgid "The default persistence configuration will be created."
+msgstr "Se va a crear la configuración permanente por defecto."
+
+#: ../lib/Tails/Persistence/Step/Bootstrap.pm:361
+msgid "Creating..."
+msgstr "Creando... "
+
+#: ../lib/Tails/Persistence/Step/Bootstrap.pm:364
+msgid "Creating the persistent volume..."
+msgstr "Creando el volumen persistente... "
+
+#: ../lib/Tails/Persistence/Step/Delete.pm:53
+msgid "Persistence wizard - Persistent volume deletion"
+msgstr "Asistente de persistencia - Eliminación del volumen persistente"
+
+#: ../lib/Tails/Persistence/Step/Delete.pm:56
+msgid "Your persistent data will be deleted."
+msgstr "Sus datos persistentes serán eliminados. "
+
+#: ../lib/Tails/Persistence/Step/Delete.pm:60
+#, perl-format
+msgid ""
+"The persistent volume %s (%s), on the <b>%s %s</b> device, will be deleted."
+msgstr "El volumen persistente %s (%s), en el dispositivo <b>%s %s</b>, será eliminado."
+
+#: ../lib/Tails/Persistence/Step/Delete.pm:66
+msgid "Delete"
+msgstr "Eliminar"
+
+#: ../lib/Tails/Persistence/Step/Delete.pm:117
+msgid "Deleting..."
+msgstr "Eliminando... "
+
+#: ../lib/Tails/Persistence/Step/Delete.pm:120
+msgid "Deleting the persistent volume..."
+msgstr "Eliminando el volumen persistente... "
+
+#: ../lib/Tails/Persistence/Step/Configure.pm:88
+msgid "Persistence wizard - Persistent volume configuration"
+msgstr "Asistente de persistencia - Configuración del volumen persistente"
+
+#: ../lib/Tails/Persistence/Step/Configure.pm:91
+msgid "Specify the files that will be saved in the persistent volume"
+msgstr "Especificar los archivos que se guardarán en el volumen persistente"
+
+#. TRANSLATORS: partition, size, device vendor, device model
+#: ../lib/Tails/Persistence/Step/Configure.pm:95
+#, perl-format
+msgid ""
+"The selected files will be stored in the encrypted partition %s (%s), on the"
+" <b>%s %s</b> device."
+msgstr "Los archivos seleccionados serán almacenados en la partición cifrada %s (%s), en el dispositivo <b>%s %s</b>."
+
+#: ../lib/Tails/Persistence/Step/Configure.pm:101
+msgid "Save"
+msgstr "Guardar"
+
+#: ../lib/Tails/Persistence/Step/Configure.pm:195
+msgid "Saving..."
+msgstr "Guardando... "
+
+#: ../lib/Tails/Persistence/Step/Configure.pm:198
+msgid "Saving persistence configuration..."
+msgstr "Guardando la configuración de persistencia... "
commit 72475f1b07bddb10b43dbbd846b0c96042034963
Author: Translation commit bot <translation(a)torproject.org>
Date: Tue Oct 8 19:49:50 2019 +0000
https://gitweb.torproject.org/translation.git/commit/?h=tails-persistence-s…
---
es/es.po | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/es/es.po b/es/es.po
index 5b8c40735..b1e48a312 100644
--- a/es/es.po
+++ b/es/es.po
@@ -14,8 +14,8 @@ msgstr ""
"Project-Id-Version: Tor Project\n"
"Report-Msgid-Bugs-To: Tails developers <tails(a)boum.org>\n"
"POT-Creation-Date: 2019-10-07 08:43+0200\n"
-"PO-Revision-Date: 2019-10-07 13:48+0000\n"
-"Last-Translator: erinm\n"
+"PO-Revision-Date: 2019-10-08 19:38+0000\n"
+"Last-Translator: Emma Peel\n"
"Language-Team: Spanish (http://www.transifex.com/otf/torproject/language/es/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -87,7 +87,7 @@ msgstr "El dispositivo %s es óptico"
#: ../lib/Tails/Persistence/Setup.pm:444
#, perl-format
msgid "Device %s was not created using a USB image or Tails Installer."
-msgstr "No se ha creado el dispositivo %s usando una imagen USB o una imagen Tails Installer."
+msgstr "El dispositivo %s no se ha creado usando una imagen USB o una imagen Tails Installer."
#: ../lib/Tails/Persistence/Setup.pm:688
msgid "Persistence wizard - Finished"
commit fb1245c3b5be41f39e7bf60dcd851df1ee8b1602
Author: Translation commit bot <translation(a)torproject.org>
Date: Tue Oct 8 19:48:33 2019 +0000
https://gitweb.torproject.org/translation.git/commit/?h=tails-misc_release
---
es.po | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/es.po b/es.po
index be9165530..bfdcef80d 100644
--- a/es.po
+++ b/es.po
@@ -18,8 +18,8 @@ msgstr ""
"Project-Id-Version: Tor Project\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-10-05 16:50+0200\n"
-"PO-Revision-Date: 2019-10-06 02:05+0000\n"
-"Last-Translator: carolyn <carolyn(a)anhalt.org>\n"
+"PO-Revision-Date: 2019-10-08 19:37+0000\n"
+"Last-Translator: Emma Peel\n"
"Language-Team: Spanish (http://www.transifex.com/otf/torproject/language/es/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -89,7 +89,7 @@ msgstr "Persistencia desactivada para Electrum"
msgid ""
"When you reboot Tails, all of Electrum's data will be lost, including your Bitcoin wallet.\n"
"It is strongly recommended to only run Electrum when its persistence feature is activated."
-msgstr ""
+msgstr "Cuando reinicies Tails, se perderán todos los datos de Electrum, incluida tu billetera Bitcoin.\nSe recomienda encarecidamente ejecutar Electrum solo cuando tu función de persistencia esté activada."
#: config/chroot_local-includes/usr/local/bin/electrum:65
msgid "Do you want to start Electrum anyway?"