Un complemento de NVDA con algunas mejoras de accesibilidad para el gestor de libros electrónicos Calibre

  • F10 lleva el foco a la barra de herramientas. Allí puedes navegar con las teclas estándar (tabulador y flechas); intro para activar un elemento y la tecla aplicaciones para mostrar el menú de contexto; escape para salir de la barra de herramientas.
  • F12 busca el libro actual en Google
  • NVDA+alt+fin verbaliza el total de libros en la vista de la biblioteca actual y la cantidad de libros seleccionados
  • NVDA+control+h abre el menú de contexto con los ajustes de la columna actual
  • La I en la vista de la biblioteca lee la información del libro.

Se pueden personalizar los atajos en las preferencias de NVDA > Gestos de entrada cuando Calibre está abierto. Además, en las preferencias se puede definir la manera que usa NVDA para leer las cabeceras de tabla en la biblioteca (filas y columnas, sólo columnas o nada)

Echa un vistazo a la documentación de Calibre para conocer más atajos de teclado.

Cubierto por la GNU General Public License. Mira el fichero copying.txt para más detalles.

Este complemento permite realizar algunas operaciones en la ventana con el
foco o el proceso asociado a ella. Al matar un proceso, o mostrar/ocultar
una ventana, se reproduce un pitido de confirmación si la acción tiene
éxito. Si encuentras esto molesto, puedes desactivar los pitidos en el panel
de opciones de WinWizard, disponible en el diálogo de opciones de NVDA.

Atajos de teclado:

Todas estas órdenes se pueden reasignar desde el diálogo Gestos de entrada,
en la categoría Win Wizard.

Ocultar y mostrar ventanas ocultas:

  • NVDA+windows+números del 1 al 0 – Oculta la ventana que tiene el foco en
    la ranura correspondiente al número pulsado
  • NVDA+windows+flecha izquierda – Se mueve a la pila anterior de ventanas
    ocultas.
  • NVDA+windows+flecha derecha – Se mueve a la siguiente pila de ventanas
    ocultas.
  • Windows+shift+h – Oculta la ventana que tiene el foco actualmente en la
    primera ranura disponible
  • NVDA+windows+h – Muestra la última ventana oculta
  • Windows+shift+l – Muestra la lista de todas las ventanas ocultas agrupadas
    en pilas (ten en cuenta que se selecciona la última ventana oculta)

Gestión de procesos:

  • Windows+f4 – Termina el proceso asociado con la ventana que tiene
    actualmente el foco
  • NVDA+windows+p – Abre un diálogo que permite establecer la prioridad del
    proceso asociado a la ventana con el foco

Órdenes varias:

  • NVDA+windows+tab – Alterna entre las ventanas de alto nivel del programa
    actual (útil en foobar2000, Back4Sure, etc.)
  • Ctrl+alt+t – Permite cambiar el título del programa que tiene el foco

Cambios:

Cambios para 5.0.4:

  • Compatibilidad con NVDA 2022.1
  • Ahora es posible deshabilitar los pitidos de confirmación desde el panel
    de opciones del complemento
  • Traducciones actualizadas

Cambios para 5.0.3:

  • Compatibilidad con NVDA 2021.1

Cambios para 5.0.2:

  • Primera versión disponible en el sitio web de complementos

Este complemento te permite comprobar tu posición en términos de porcentaje
dentro de un texto o una lista. Esta información se puede obtener mediante
mensaje hablado o con un pitido. Además, puedes saltar a un porcentaje o
línea dados en el texto.

Atajos de teclado:

  • Shift+NVDA+j: muestra un diálogo que te permite saltar al número de línea
    especificado.
  • Shift+NVDA+p: anuncia el porcentaje actual dentro de un texto o una
    lista. Además, si te encuentras en un texto, también se verbaliza la
    cantidad de palabras del campo. En el caso de una lista, se indicaría la
    cantidad de elementos que contiene.
  • Alt+NVDA+p: presenta tu posición en el texto o en una lista como un
    pitido.

Las dos últimas órdenes pueden pulsarse dos veces rápidamente para mostrar
un diálogo que permite saltar a un porcentaje determinado en un texto. Todas
estas órdenes se pueden reasignar desde el diálogo Gestos de entrada.

Este complemento traduce una posición de ajedrez en código Fen a algo más amigable que el ser humano pueda entender.
La notación Forsyth–Edwards(FEN) es una notación estándar para describir una posición particular del tablero de un juego de ajedrez.

Modo de uso

  • Selecciona texto que contenga un código FEN válido o cópialo al portapapeles
  • Pulsa NVDA+ctrl+f8 para leer la descripción

Opciones

En preferencias de NVDA > Opciones > Fen Reader puedes elegir las siguientes opciones:

  • Usar alfabeto fonético en los nombres de las casillas
  • Copiar siempre la posición al portapapeles
  • Mostrar posición en una ventana

Nota sobre los idiomas de notación: la notación en inglés es la estándar y la que se suele usar para todos los idiomas, pero en ocasiones se utiliza la notación en un idioma específico. A partir de la versión 2.0 no es necesario definir el idioma de la notación, el complemento lo detecta automáticamente.

Columns Review es un complemento para mejorar la experiencia con NVDA en
listas.

Entre sus funciones se incluyen:

  • acciones personalizables en la cabecera o el contenido de la columna (las
    acciones disponibles son leer, copiar, deletrear y mostrar en modo
    exploración);
  • capacidad de circular por las columnas en intervalos de diez en diez;
  • gestión simplificada de las cabeceras (clics de ratón);
  • lectura bajo demanda de la posición relativa actual del elemento (por
    ejemplo, elemento 7 de 10);
  • gestos personalizables con o sin bloque numérico;
  • anuncio de «0 elementos» cuando la lista está vacía (no funciona en
    carpetas en Windows 8 y 10, por desgracia);
  • soporte para verbalizar todo;
  • anuncio de los elementos seleccionados (cantidad y nombre de los
    elementos);
  • búsqueda en listas (con selección múltiple de elementos, si se marca y
    está soportada).

Gestos

Las teclas por defecto para columnas, cabeceras y posición son NVDA+control,
pero puedes personalizarlas desde las opciones del complemento (¡no en el
diálogo «Gestos de entrada»!).

Ten en cuenta que tu teclado podría tener problemas procesando algunas
combinaciones de teclado, por lo que deberías probar todos los gestos del
complemento y ajustarlos para unos mejores resultados.

Consulta también las preferencias del complemento para el modo bloque
numérico, distribución de teclado (sin bloque numérico), y las cuatro
acciones disponibles para las columnas.

  • NVDA+control+dígitos del 1 al 0 (modo teclado) o del 1 al 9 (modo bloque
    numérico): por defecto, lee la columna elegida si se pulsa una vez, la
    copia si se pulsa dos veces;
  • NVDA+control+menos del teclado numérico (modo bloque numérico): como
    NVDA+control+0 en el modo teclado, lee o copia la 10ª, 20ª, etc. columna;
  • NVDA+control+- (distribución de inglés de Estados Unidos, modo teclado):
    en una lista con más de 10 columnas, cambia el intervalo y procesa
    columnas de la 11 a la 20, de la 21 a la 30, y así sucesivamente (cambia
    el último carácter en función de tu distribución desde las opciones);
  • NVDA+control+más del teclado numérico (modo bloque numérico): como la
    orden anterior;
  • NVDA+control+intro (intro del teclado numérico en el modo bloque
    numérico): abre el gestor de cabeceras;
  • NVDA+control+suprimir (suprimir del teclado numérico en el modo bloque
    numérico): lee la posición relativa del elemento actual (por ejemplo,
    elemento 7 de 10);
  • Flechas y NVDA+tab (en una lista vacía): repite el mensaje «0 elementos»;
  • NVDA+flecha abajo (distribución de escritorio) o NVDA+a (distribución
    portátil): inicia Verbalizar todo (este gesto depende del original que hay
    bajo «Gestos de entrada/Cursor del sistema»);
  • NVDA+shift+flecha arriba (distribución de escritorio) o NVDA+shift+s
    (distribución portátil): anuncia la cantidad y los nombres de los
    elementos de lista actualmente seleccionados (al igual que la orden
    anterior en cuanto a personalización);
  • NVDA+control+f: abre el diálogo de búsqueda (no personalizable);
  • NVDA+f3: busca la siguiente coincidencia del texto introducido
    anteriormente (no personalizable);
  • NVDA+shift+f3: busca la coincidencia anterior (no personalizable).

Soporte

Este complemento proporciona soporte general para más listas comunes (mira
debajo) y algunas aplicaciones concretas. El autor principal (Alberto
Buffolino) no puede garantizar la compatibilidad o funcionalidad en aquellas
aplicaciones que no usa, como Outlook o Windows Mail, pero estará encantado
de colaborar con sus usuarios o aceptar una solicitud de cambio para ellos.

Las listas soportadas son:

  • SysListView32;
  • DirectUIHWND (presente en sistemas de 64 bits);
  • WindowsForms10.SysListView32.* (aplicaciones que usan .NET);
  • la vista en árbol de varias columnas, como la que hay presente en
    RSSOwlnix;
  • Tabla de Mozilla (normalmente, la lista de mensajes de Thunderbird, con
    soporte para agrupación por hilos).

Este complemento proporciona algunas mejoras para las aplicaciones de
Mozilla.

Firefox

  • NVDA+a (escritorio) o NVDA+ctrl+a (portátil): lee la dirección de la
    página. Si se presiona dos veces rápidamente la copia al portapapeles.
  • NVDA+fin (escritorio) o NVDA+mayús+fin (portátil): lee el contenido de la
    barra de estado. Si se presiona dos veces rápidamente, lo copia al
    portapapeles.
  • NVDA+F8 muestra una lista de pestañas abiertas. Si se presiona dos veces
    rápidamente muestra los botones de la barra de herramientas.
  • NVDA+ctrl+n Lee la última notificación y lleva el foco a ella si es
    posible. Si se presiona dos veces rápidamente muestra un historial de
    notificaciones.
  • NVDA+F6 Lleva el foco al documento

Thunderbird

  • En una ventana de mensaje:
    • Ctrl+mayus+(1-4) Lee el remitente y los destinatarios de un mensaje. Si se presiona dos veces rápidamente, abre el menú de opciones.
    • Ctrl+mayus+5 Lee el asunto del mensaje.
    • Ctrl+mayus+6 Lee la fecha del mensaje.
    • Ctrl+mayus+A Lleva el foco a la lista de adjuntos, si hay alguno.
      (Estos scripts están también disponibles en la lista de mensajes si activas el panel de previsualización.)
  • En la barra de filtro rápido:
    • Presiona la flecha abajo para que se muestren más opciones, enter para verificar/desverificar la opción seleccionada.
  • En la lista de mensajes:
    • Si el panel de previsualización está activo, pulsa NVDA+flecha abajo (escritorio) o NVDA+a (portátil) para leer el mensaje sin abandonar la lista.
    • Ctrl+NVDA+1-9 se mueve entre columnas.
    • NVDA+H Muestra un diálogo en el cual puedes cambiar el orden de las columnas de la lista de mensajes.

Las combinaciones de teclas pueden ser personalizadas en NVDA>Preferencias>Gestos de entrada cuando Firefox o Thunderbird estén abiertos

Este complemento fue creado atendiendo a una petición de un miembro de la
lista de correo nvda-addons.

Proporciona un atajo de teclado, NVDA + F4, el cual permite recuperar y dar
el idioma del teclado actual.

Si se pulsa dos veces, devuelve el idioma por defecto del sistema.

En la primera versión de este módulo, se había propuesto como un simple
plugin global para pegar en el directorio de configuración de NVDA, Entonces
se transformó en un complemento.

Notas

Si el atajo de teclado NVDA + F4 entra en conflicto con otra orden, puedes
cambiarlo yendo al menú Preferencias de NVDA, en el submenú «Gestos de
Entrada».

Encontrarás el script en la categoría «Estado del sistema».

Compatibilidad

  • Este complemento es compatible con las versiones de NVDA que hay entre la
    2014.3 y la 2019.3, ambas inclusive.

Cambios para la versión 19.02

  • Se ha cambiado la numeración de versión siguiendo el esquema AA.MM (dos
    dígitos para el año seguidos de un punto y dos dígitos para el mes);
  • Se ha añadido compatibilidad con el nuevo formato de versión de
    complementos introducido en NVDA 2019.1.

Cambios para la versión 1.1

  • El complemento se ha renombrado de getCurKeyboardLanguage a
    sayCurrentKeyboardLanguage;
  • Añadida la licencia GPL al complemento;
  • Añadido el script getCurKeyboardLanguage a la categoría «Estado de
    Sistema»;
  • Corregidos algunos errores en el código.

Cambios para la versión 1.0

  • Versión inicial.

Este complemento hace que NVDA se vaya automáticamente a dormir cuando se
ejecuten juegos BGT.

Cualquier voz enviada a NVDA por el juego todavía se verbalizará, como
cualquier diálogo (campos de entrada y mensajes).

Este proyecto es un módulo de aplicación para el software Lambda. Ha sido inspirado por el trabajo de Peter Lecky en la Comenius University.
LAMBDA (Linear Access to Mathematic for Braille Device and Audio-synthesis, acceso lineal a las matemáticas mediante pantallas braille y síntesis de audio) es un programa que ayuda a las personas ciegas a leer y escribir matemáticas usando una pantalla braille y/o un sintetizador de audio.
LAMBDA es el resultado de un proyecto EU. Para más información acerca de LAMBDA por favor visite https://www.lambdaproject.org/.
La versión actual de este complemento tiene tablas braille solo para los
idiomas italiano y español pero su interfaz está disponible en la mayoría de
idiomas oficiales de NVDA, puesto que el complemento es traducido por la
comunidad de traductores de NVDA.
Si es usted un usuario no italiano de LAMBDA y le gustaría contribuír con
traducciones en su idioma, siéntase libre de contactar al autor (consulte
más abajo) o subscribirse a la lista de correo del proyecto.

Nota: Este complemento ha sido desarrollado por Alberto Zanella como una actividad voluntaria. Ni el autor ni los contribuyentes están relacionados con la venta o el desarrollo del programa LAMBDA. Si quisiera obtener más información sobre LAMBDA, reportar problemas u obtener soporte, por favor contacte con su distribuidor local. Si encuentra dificultades usando o instalando este complemento, por favor contacte con el autor o use el enlace «Issues» (errores) disponible en la página del proyecto en Github.

Repositorio Oficial en GitHub

Características del complemento:

Soporte para habla:

  • Se informa de los menús y diálogos correctamente;
  • Soporte para habla natural de las fórmulas matemáticas usando el motor
    interno de LAMBDA (p.ej. «raíz compuesta 3 de raíz compuesta 3 x más 24,
    fin de raíz, menos 3 igual 0»);
  • implementada lectura por carácter, palabra, línea y Verbalizar Todo;
  • Habla cuando un bloque de texto está seleccionado o seextiende (usando
    CTRL+B y SHIFT+CTRL+B);
  • Habla al moverse por el texto con comandos de Windows y con comandos
    específicos de Lambda;
  • Se soporta tanto el modo de habla corto como el extendido (puede
    establecerlo usando el menú Herramientas de LAMBDA);
  • Ventanas de diálogos especiales como la del modo estructura, la
    calculadora y la de matriz ahora se anuncian adecuadamente y NVDA lee
    correctamente al mover el cursor por ellas o al introducir texto;
  • El eco de escritura utiliza el procesador de texto de Lambda, de forma que
    se informará correctamente de símbolos y marcadores.

Soporte para Braille:

  • El complemento instala (dentro del directorio de perfil de usuario) y
    activa un perfil de NVDA con una tabla braille. Esta tabla puede diferir
    en distintos idiomas. La tabla ha sido construida desde la presente en los
    scripts de Jaws para LAMBDA (archivo jbt). Así, los símbolos y marcadores
    se representan mediante los mismos patrones de puntos;
  • El complemento crea un perfil de configuración y establece la
    configuración de braille estándar. De forma que la salida a la tabla
    braille personalizada solo está establecida cuando LAMBDA está activo;
  • Diálogos y menús se braillifican adecuadamente;
  • El contenido del editor se adapta correctamente para braille y el usuario
    puede moverse usando las teclas de desplazamiento braille y de ruta del
    cursor;
  • Desde la versión 1.1.0 del complemento existen dos formas en las que se
    representa el contenido: «Modo plano» y «Modo no plano». Cuando el «Modo
    plano» está activado, NVDA usará el Modelo de Mostrado para obtener el
    contenido desde Lambda y para determinar la posición del cursor
    braille. Esto es especialmente beneficioso cuando el usuario necesita
    moverse por la pantalla, incluso por los espacios en blanco del
    editor. Cuando el «Modo plano» está establecido a «Desactivado», la
    representación del texto en la pantalla braille es más estable, ya que
    NVDA usa Windows API para obtenerla. De modo que, cuando el usuario se
    mueve entre espacios en blanco el cursor en la pantalla braille no seguirá
    al cursor real hasta que un espacio no en blanco sea insertado por el
    usuario.

El «Modo plano» está activo por defecto. Puede alternar el «Modo plano»
entre activado y desactivado pulsando NVDA+SHIFT+F.

Es altamente recomendable deshabilitar el «Modo plano» cuando se use DPI
personalizado en Windows (opción de Tamaño personalizado), especialmente
cuando se tiene una configuración de pantalla de más de 96 DPI (más largo
que 100%).

  • La estructura de los cuadros de diálogo es más sencilla, eliminando
    información repetida;
  • La selección es marcada correctamente usando los puntos 7 y 8, y
    correctamente refrescada al presionar comandos estándar de Windows
    (SHIFT+FLECHAS) o comandos específicos de Lambda (CTRL+B, CTRL+SHIFT+B).

Antes de empezar a usar este complemento.

Este complemento crea un perfil de NVDA nombrado como «lambda» que está
asociado con la aplicación lambda.exe. Este perfil está configurado con
todas las opciones en lo que a las opciones braille, a la tabla braille
personalizada, a la localización del foco y a las opciones del modo plano se
refiere.

Si un perfil previamente existente con el mismo nombre está presente en su
sistema, no será sobreescrito y deberá ajustar manualmente el perfil de
configuración.

Para salir de esta situación, si tiene configuraciones específicas que le
gustaría preservar, puede usar el «Asistente de Reversión del perfil
LAMBDA». La tecla rápida para abrir esta herramienta es NVDA+alt+r (cuando
se está dentro de LAMBDA).

Una opción sencilla es también borrar viejas versiones del perfil «lambda»
después de la instalación del complemento. Para hacer esto, abra el menú de
NVDA, seleccione el elemento de menú «Perfiles de configuración» y pulse
ENTER.

En el diálogo de Perfiles de configuración, podrá localizar y borrar el
perfil «lambda». El perfil será creado nuevamente la próxima vez que se
inicie Lambda.

Eliminar el perfil «lambda» debería de ser una solución fácil también cuando
encuentre algún fallo que «aparezca» en algún punto mientras se use el
complemento. Por ejemplo, si la tabla braille no está correctamente
establecida, en lugar de configurar manualmente el perfil puede simplemente
borrarlo. El complemento creará uno nuevo la próxima vez que abra el editor
Lambda.

Cada vez que se ejecuta el editor Lambda, el complemento verifica si existe
un perfil con el nombre «lambda». Si no existe crea automáticamente un
perfil con la siguiente forma:

archivo : userData\profiles\lambda.ini :

[braille]
    readByParagraph = False
    tetherTo = focus
    translationTable = path-to-the-addon-brailleTable-dir\tableName

[lambda]
    brailleFlatMode = True

Donde :

  • path-to-the-addon-brailleTable-dir : Es la ruta absoluta del directorio
    del complemento + «\brailleTables»
  • tableName : Depende del idioma seleccionado. Actualmente las tablas
    braille italiana y española, «lambda-ita.utb» y «lambda-esp.utb»
    respectivamente, están presentes.

Teclas Rápidas del Complemento:

  • NVDA+Shift+f: Alterna el modo plano de braille entre activado y
    desactivado;
  • NVDA+alt+r: Abre el «Asistente de Reversión del Perfil LAMBDA»;
  • NVDA+d: Duplicar líneas, úselo en lugar de CTRL+d.

Errores conocidos:

Debido a un error presente en LAMBDA; el complemento proporciona una lógica
adicional que informa de los espacios en blanco. Esta lógica puede fallar en
las siguientes situaciones:

  • Cuando palabras como «space», «spazio», «espacio», etc. son insertadas en
    el texto, éstas pueden ser reportadas en el idioma del NVDA del usuario.
  • El motor de habla de LAMBDA no informa de líneas en blanco. El usuario
    escuchará la traducción de la palabra «espacio» en su lugar. Esto puede
    ser tanto una línea en blanco como una línea conteniendo solamente la
    palabra «espacio».

Consejos útiles

Este es un conjunto de consejos que te ayudarán a usar este complemento de
una manera más eficiente.

  • Lectura caracter por caracter: normalmente, cuando está escribiendo
    matemáticas le gusta que NVDA diga aquello que está escribiendo caracter
    por caracter. Para hacer esto, hay unos cuantos simples pasos: asegúrese
    de tener focalizada la ventana de LAMBDA o una de sus variantes (la
    representación en seis puntos, por ejemplo); presione NVDA+2 (número dos)
    o navegue a menú NVDA>Preferencias>Opciones de teclado y marque la casilla
    para reportar caracteres al escribir; diríjase a
    LAMBDA>Herramientas>Parámetros de voz y asegúrese de que la casilla «Eco»
    está marcada, de otro modo NVDA no recibirá nada del motor de voz mientras
    usted escribe. Y hecho, NVDA leerá los caracteres escritos, pero no se
    preocupe, solo en LAMBDA, los ajustes de otras aplicaciones serán dejados
    como estaban.

Lista de correo del complemento:

Para reportar errores, sugerencias o si quiere contribuir puede subscribirse
al grupo del complemento (en inglés). Puede subscribirse desde el sitio web:
https://groups.io/g/lambda-nvda.

Registro de cambios

Abajo se encuentra una lista de cambios entre las diferentes versiones del
complemento. Al lado del numero de versión, entre paréntesis, está el estado
de desarrollo. La versión actualmente en desarrollo no se incluye ya que
podría haber cambios hasta que sea marcada como estable o descartada como
candidata.

Versión 1.3.0 (estable)

  • Soporte para versiones recientes de NVDA (soporte para Python 3)
  • Resuelto un problema por el que al pulsar la orden de línea NVDA+d dos
    veces en una línea en blanco se pegaba el contenido del
    portapapeles. Ahora, al pulsar NVDA+d en una línea en blanco, se añade una
    nueva línea en blanco tal y como se espera.

Versión 1.2.2 (estable)

  • Se ha mejorado la compatibilidad con WXPython versión 4 (introducida en
    NVDA 2018.3). La advertencia relacionada con wx.NewID() ya no se muestra
    en el registro de depuración.
  • Ahora se utiliza el módulo guiHelper para mejorar la apariencia visual de
    los diálogos.
  • Nuevos idiomas. Traducciones actualizadas.

Versión 1.2.1A (estable)

Esta actualización ha sido concebida como una versión con soporte durante
largo tiempo. Esto significa que hasta, al menos, junio de 2018, no está
prevista la liberación de una versión tan estable como ésta. Hacemos esto
para proporcionar a los estudiantes máxima estabilidad y para minimizar los
cambios durante el curso académico.

  • Nuevos idiomas. Traducciones actualizadas.

Versión 1.2.1 (estable)

  • Añadida compatibilidad con la manera que NVDA 2017.3 usa para administrar
    el Braille. Compatibilidad con versiones antiguas mantenida.
  • arregladas varias incidencias relacionadas con el braille.

Versión 1.2.0 (desarrollo)

Esta versión no fue publicada como estable porque la 1.2.1 incluía arreglos
importantes.

  • Nuevos idiomas. Traducciones actualizadas.

Versión 1.1.8 (estable)

  • Primera versión estable.

Este complemento de NVDA proporciona varias órdenes para copiar el texto
bajo el cursor de revisión al portapapeles. Actualmente, se implementaron
las siguientes órdenes:

  • Copiar la línea bajo el cursor de revisión
  • Copiar la palabra bajo el cursor de revisión
  • Copiar desde el inicio de la línea actual al cursor de revisión
  • Copiar desde el cursor de revisión al final de la línea actual
  • Copiar desde el inicio de la palabra actual al cursor de revisión
  • Copiar desde el cursor de revisión al final de la palabra actual

Ninguna de estas órdenes tiene teclas asociadas predeterminadamente. Por
favor utiliza el diálogo Gestos de Entrada localizado en el menú de opciones
de NVDA para configurarlos. Todas las órdenes proporcionadas por este
complemento pueden encontrarse en la categoría «revisión de texto». Puede
encontrarse más información acerca de configurar y modificar gestos de
entrada en La Guía de Usuario de NVDA.

Licencia

Este trabajo se licenció bajo los términos de la GNU General Public License,
versión 2.