/*
 * BRLTTY - A background process providing access to the console screen (when in
 *          text mode) for a blind person using a refreshable braille display.
 *
 * Copyright (C) 1995-2023 by The BRLTTY Developers.
 *
 * BRLTTY comes with ABSOLUTELY NO WARRANTY.
 *
 * This is free software, placed under the terms of the
 * GNU Lesser General Public License, as published by the Free Software
 * Foundation; either version 2.1 of the License, or (at your option) any
 * later version. Please see the file LICENSE-LGPL for details.
 *
 * Web Page: http://brltty.app/
 *
 * This software is maintained by Dave Mielke <dave@mielke.cc>.
 */

{ .name = "Reed",
  .language = eciGeneralAmericanEnglish,
  .type = VOICE_TYPE_MAN1
},

{ .name = "Shelley",
  .language = eciGeneralAmericanEnglish,
  .type = VOICE_TYPE_WOMAN1
},

{ .name = "Sandy",
  .language = eciGeneralAmericanEnglish,
  .type = VOICE_TYPE_CHILD1
},

{ .name = "Grandpa",
  .language = eciGeneralAmericanEnglish,
  .type = VOICE_TYPE_PATRIARCH1
},

{ .name = "Grandma",
  .language = eciGeneralAmericanEnglish,
  .type = VOICE_TYPE_MATRIARCH1
},

{ .name = "Justin",
  .language = eciBritishEnglish,
  .type = VOICE_TYPE_MAN1
},

{ .name = "Jane",
  .language = eciBritishEnglish,
  .type = VOICE_TYPE_WOMAN1
},

{ .name = "Nicky",
  .language = eciBritishEnglish,
  .type = VOICE_TYPE_CHILD1
},

{ .name = "Gramps",
  .language = eciBritishEnglish,
  .type = VOICE_TYPE_PATRIARCH1
},

{ .name = "Nanny",
  .language = eciBritishEnglish,
  .type = VOICE_TYPE_MATRIARCH1
},

{ .name = "Carlos",
  .language = eciCastilianSpanish,
  .type = VOICE_TYPE_MAN1
},

{ .name = "Pilar",
  .language = eciCastilianSpanish,
  .type = VOICE_TYPE_WOMAN1
},

{ .name = "Pepe",
  .language = eciCastilianSpanish,
  .type = VOICE_TYPE_CHILD1
},

{ .name = "Abuelo",
  .language = eciCastilianSpanish,
  .type = VOICE_TYPE_PATRIARCH1
},

{ .name = "Abuela",
  .language = eciCastilianSpanish,
  .type = VOICE_TYPE_MATRIARCH1
},

{ .name = "Jacques",
  .language = eciStandardFrench,
  .type = VOICE_TYPE_MAN1
},

{ .name = "Jacqueline",
  .language = eciStandardFrench,
  .type = VOICE_TYPE_WOMAN1
},

{ .name = "Marius",
  .language = eciStandardFrench,
  .type = VOICE_TYPE_CHILD1
},

{ .name = "Grandpère",
  .language = eciStandardFrench,
  .type = VOICE_TYPE_PATRIARCH1
},

{ .name = "Mamie",
  .language = eciStandardFrench,
  .type = VOICE_TYPE_MATRIARCH1
},

{ .name = "Max",
  .language = eciStandardGerman,
  .type = VOICE_TYPE_MAN1
},

{ .name = "Gisela",
  .language = eciStandardGerman,
  .type = VOICE_TYPE_WOMAN1
},

{ .name = "Matti",
  .language = eciStandardGerman,
  .type = VOICE_TYPE_CHILD1
},

{ .name = "Opa",
  .language = eciStandardGerman,
  .type = VOICE_TYPE_PATRIARCH1
},

{ .name = "Oma",
  .language = eciStandardGerman,
  .type = VOICE_TYPE_MATRIARCH1
},

{ .name = "Enrico",
  .language = eciStandardItalian,
  .type = VOICE_TYPE_MAN1
},

{ .name = "Lucia",
  .language = eciStandardItalian,
  .type = VOICE_TYPE_WOMAN1
},

{ .name = "Chicco",
  .language = eciStandardItalian,
  .type = VOICE_TYPE_CHILD1
},

{ .name = "Nonno",
  .language = eciStandardItalian,
  .type = VOICE_TYPE_PATRIARCH1
},

{ .name = "Nonna",
  .language = eciStandardItalian,
  .type = VOICE_TYPE_MATRIARCH1
},

{ .name = "Li3 Jing4",
  .language = eciMandarinChinese,
  .type = VOICE_TYPE_MAN1
},

{ .name = "Wang2 Yan4",
  .language = eciMandarinChinese,
  .type = VOICE_TYPE_WOMAN1
},

{ .name = "Li3 Dong1 Dong1",
  .language = eciMandarinChinese,
  .type = VOICE_TYPE_CHILD1
},

{ .name = "Ye2 Ye",
  .language = eciMandarinChinese,
  .type = VOICE_TYPE_PATRIARCH1
},

{ .name = "Nai3 Nai",
  .language = eciMandarinChinese,
  .type = VOICE_TYPE_MATRIARCH1
},

{ .name = "Zhi4 Ming2",
  .language = eciTaiwaneseMandarin,
  .type = VOICE_TYPE_MAN1
},

{ .name = "Chun1 Jiao1",
  .language = eciTaiwaneseMandarin,
  .type = VOICE_TYPE_WOMAN1
},

{ .name = "Xiao3 Bu4 Dian3",
  .language = eciTaiwaneseMandarin,
  .type = VOICE_TYPE_CHILD1
},

{ .name = "A3 Gong1",
  .language = eciTaiwaneseMandarin,
  .type = VOICE_TYPE_PATRIARCH1
},

{ .name = "A3 Ma4",
  .language = eciTaiwaneseMandarin,
  .type = VOICE_TYPE_MATRIARCH1
},

{ .name = "João",
  .language = eciBrazilianPortuguese,
  .type = VOICE_TYPE_MAN1
},

{ .name = "Cláudia",
  .language = eciBrazilianPortuguese,
  .type = VOICE_TYPE_WOMAN1
},

{ .name = "Chico",
  .language = eciBrazilianPortuguese,
  .type = VOICE_TYPE_CHILD1
},

{ .name = "Avô",
  .language = eciBrazilianPortuguese,
  .type = VOICE_TYPE_PATRIARCH1
},

{ .name = "Avó",
  .language = eciBrazilianPortuguese,
  .type = VOICE_TYPE_MATRIARCH1
},

{ .name = "Taroo",
  .language = eciStandardJapanese,
  .type = VOICE_TYPE_MAN1
},

{ .name = "Hanako",
  .language = eciStandardJapanese,
  .type = VOICE_TYPE_WOMAN1
},

{ .name = "Jiroo",
  .language = eciStandardJapanese,
  .type = VOICE_TYPE_CHILD1
},

{ .name = "Taroo",
  .language = eciStandardJapanese,
  .type = VOICE_TYPE_PATRIARCH1
},

{ .name = "Obaachan",
  .language = eciStandardJapanese,
  .type = VOICE_TYPE_MATRIARCH1
},

{ .name = "Antti",
  .language = eciStandardFinnish,
  .type = VOICE_TYPE_MAN1
},

{ .name = "Tarja",
  .language = eciStandardFinnish,
  .type = VOICE_TYPE_WOMAN1
},

{ .name = "Pekka",
  .language = eciStandardFinnish,
  .type = VOICE_TYPE_CHILD1
},

{ .name = "Isoisä",
  .language = eciStandardFinnish,
  .type = VOICE_TYPE_PATRIARCH1
},

{ .name = "Isoäiti",
  .language = eciStandardFinnish,
  .type = VOICE_TYPE_MATRIARCH1
},

