{
    "gpiiKey": "screenreader",
    "preferences": {
        "contexts": {
            "gpii-default": {
                "name": "Default preferences",
                "preferences": {
                    "http://registry.gpii.net/common/speakTutorialMessages": false ,
                    "http://registry.gpii.net/common/keyEcho": false ,
                    "http://registry.gpii.net/common/wordEcho": true ,
                    "http://registry.gpii.net/common/announceCapitals": true ,
                    "http://registry.gpii.net/common/readingUnit": "word" ,
                    "http://registry.gpii.net/common/punctuationVerbosity": "all" ,
                    "http://registry.gpii.net/common/screenReaderTTS/enabled": true ,
                    "http://registry.gpii.net/common/trackingTTS": ["mouse", "caret"],
                    "http://registry.gpii.net/common/speechRate": 400 ,
                    "http://registry.gpii.net/common/auditoryOutLanguage": "en-BS",
                    "http://registry.gpii.net/common/pitch": 0.1 ,
                    "http://registry.gpii.net/common/volumeTTS": 0.75
                }
            }
        }
    },
    "deviceContext": {
        "solutions": [
            {
                "id": "com.freedomscientific.jaws"
            }, {
                "id": "org.nvda-project"
            }
        ],
        "OS": {
            "id": "win32",
            "version": "6.1.7601"
        }
    },
    "solutionsRegistryEntries": {
        "com.freedomscientific.jaws": {
            "name": "JAWS",
            "contexts": {
                "OS": [
                    {
                        "id": "win32"
                    }
                ]
            },
            "capabilities": [
                "http://registry\\.gpii\\.net/common/screenReaderTTS/enabled"
            ],
            "settingsHandlers": {
                "configuration1": {
                    "type": "gpii.settingsHandlers.INISettingsHandler",
                    "liveness": "manualRestart",
                    "options": {
                        "filename": "${{environment}.APPDATA}\\Freedom Scientific\\JAWS\\2019\\Settings\\enu\\DEFAULT.JCF"
                    },
                    "supportedSettings": {
                        "Braille.AllDotsBrailleCursor": {
                            "title": "All Dots Braille Cursor",
                            "description": "Whether to display the braille cursor as all dots raised instead of showing it using only dots seven and eight.",
                            "enum": [
                                0,
                                1
                            ],
                            "enumLabels": [
                                "off",
                                "on"
                            ],
                            "default": 0
                        },
                        "Braille.AttributeRotationDelay": {
                            "schema": {
                                "title": "Attribute Rotation Delay",
                                "description": "When in Attribute Mode and characters have multiple attributes, determines how long each attribute should be shown for. This value is in Milliseconds.",
                                "type": "integer",
                                "default": 1000
                            }
                        },
                        "Braille.AutoPanMode": {
                            "schema": {
                                "title": "Auto Pan Mode",
                                "description": "The \"Auto Pan\" algorithm to use.",
                                "enum": [
                                    0,
                                    1,
                                    2,
                                    3,
                                    4,
                                    5,
                                    6,
                                    255
                                ],
                                "enumLabels": [
                                    "off",
                                    "move display minimally to include whole word containing cursor",
                                    "match user pan",
                                    "move display to show whole word at cursor nearest the middle of the display area",
                                    "maximize text after cursor",
                                    "maximize text before cursor",
                                    "autopan to default structured segment",
                                    "Smart Autopan, autopan using the best algorithm for the current situation"
                                ],
                                "default": 255
                            }
                        },
                        "Braille.BrailleAutoRouteToCursor": {
                            "title": "Braille Auto Route To Cursor",
                            "description": "Whether to automatically route the Braille display to the active cursor whenever the active cursor moves or a key on the keyboard is pressed.",
                            "enum": [
                                0,
                                1
                            ],
                            "enumLabels": [
                                "off",
                                "on"
                            ],
                            "default": 1
                        },
                        "Braille.BrailleCursorBlinkRate": {
                            "title": "Braille Cursor Blink Rate",
                            "description": "Speed, in milliseconds, at which the cursor on the braille display should blink.",
                            "type": "integer",
                            "default": 500
                        },
                        "Braille.BrailleKeyInterruptSpeech": {
                            "title": "Braille Key Interrupt Speech",
                            "description": "Whether to Interrupt speech if a keystroke in the Braille display is pressed.",
                            "enum": [
                                0,
                                1
                            ],
                            "enumLabels": [
                                "off",
                                "on"
                            ],
                            "default": 1
                        },
                        "Braille.BrailleMessages": {
                            "schema": {
                                "title": "Enable Flash Messages",
                                "description": "Whether or not to show Flash Messages on a braille display.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 1
                            }
                        },
                        "Braille.BrailleMode": {
                            "schema": {
                                "title": "Braille Mode",
                                "description": "Use this option to control the format of the information sent to the braille display. When Line mode is selected, JAWS sends the line of text at the current cursor position to the braille display. When Structured mode is selected, JAWS sends information to the display that is relevant to the current cursor position. The information sent includes things such as control type, dialog name, or number of items in a list. When Speech Output mode is selected, JAWS sends the same text to the display that it sends to the synthesizer. The default setting for this option is Structured.",
                                "type": "number",
                                "default": 1,
                                "enum": [
                                    0,
                                    1,
                                    2,
                                    3
                                ],
                                "enumLabels": [
                                    "line",
                                    "structured",
                                    "speech output",
                                    "attribute indicators"
                                ]
                            }
                        },
                        "Braille.BrailleMoveActiveCursor": {
                            "title": "Braille Move Active Cursor",
                            "description": "Whether to move the active cursor when the Braille cursor moves.",
                            "enum": [
                                0,
                                1
                            ],
                            "enumLabels": [
                                "off",
                                "on"
                            ],
                            "default": 0
                        },
                        "Braille.BrailleSleepMode": {
                            "schema": {
                                "title": "Enable Braille Sleep Mode",
                                "description": "Whether to turn off the braille driver, typically used to disable braille for a specific application.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 0
                            }
                        },
                        "Braille.BrailleVerbosity": {
                            "schema": {
                                "title": "Braille Verbosity",
                                "description": "Sets braille verbosity for Flash messages.",
                                "enum": [
                                    0,
                                    1,
                                    2
                                ],
                                "enumLabels": [
                                    "beginner",
                                    "intermediate",
                                    "advanced"
                                ]
                            }
                        },
                        "Braille.ContractedBrailleInput": {
                            "title": "Contracted Braille Input",
                            "description": "Enable contracted braille to be entered on the braille display's keyboard.",
                            "enum": [
                                0,
                                1
                            ],
                            "enumLabels": [
                                "off",
                                "on"
                            ],
                            "default": 0
                        },
                        "Braille.EightDotBraille": {
                            "schema": {
                                "title": "Braille Dots",
                                "description": "The number of braille dots (six or eight) to use.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "6 dot braille",
                                    "8 dot braille"
                                ],
                                "default": 1
                            }
                        },
                        "Braille.FilterControlCharacters": {
                            "title": "Filter Control Characters",
                            "description": "Whether or not to filter certain control characters (currently newlines, linefeeds and tabs)",
                            "enum": [
                                0,
                                1
                            ],
                            "enumLabels": [
                                "off",
                                "on"
                            ],
                            "default": 1
                        },
                        "Braille.GeneralizeBullets": {
                            "title": "Generalize Bullets",
                            "description": "Whether to treat all bullets the same.",
                            "enum": [
                                0,
                                1
                            ],
                            "enumLabels": [
                                "off",
                                "on"
                            ],
                            "default": 0
                        },
                        "Braille.Grade2SuppressCapitalSigns": {
                            "title": "Grade2 Suppress Capital Signs",
                            "description": "When Grade 2 is on, whether or not to show capital indicators",
                            "enum": [
                                0,
                                1
                            ],
                            "enumLabels": [
                                "off",
                                "on"
                            ],
                            "default": 0
                        },
                        "Braille.MessagePrefixes": {
                            "schema": {
                                "title": "Enable Flash Message Prefixes",
                                "description": "If a display has no Status Cells, whether or not to prepend the Message Prefix to the Flash Message",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 1
                            }
                        },
                        "Braille.MessageStatusText": {
                            "title": "Message Status Text",
                            "description": "The text to show in the status area of the display when a Flash message is being shown if the display has no status cells, the text will be prepended to the Flash message.",
                            "type": "string",
                            "default": "msg"
                        },
                        "Braille.MessageTime": {
                            "schema": {
                                "title": "Flash Message Timeout",
                                "description": "When a Flash message is sent to the display via a script, how long in milliseconds should it be shown if not specified by the script.",
                                "type": "integer",
                                "default": 5000
                            }
                        },
                        "Braille.ReversePanningButtons": {
                            "schema": {
                                "title": "Reverse Panning Buttons",
                                "description": "Whether or not panning buttons are reversed.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 0
                            }
                        },
                        "Braille.StructuredModeReverseOrder": {
                            "schema": {
                                "title": "Reverse Order of Structured Data",
                                "description": "Whether to reverse the order of the structured data to show the focused control's info first, followed by its grouping information, and then the dialog box information. By default, items are read in the opposite order.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 1
                            }
                        },
                        "Braille.UseHowManyStatusCells": {
                            "title": "Use How Many Status Cells",
                            "description": "How many cells to use for status information if the display defines none of its own.",
                            "type": "integer",
                            "default": 4
                        },
                        "Braille.UseScreenModelForBrailleInRichEdits": {
                            "title": "Use Screen Model for Braille in Rich Edits",
                            "description": "Whether to use the screen model when providing field prompts and text in Braille with rich edits.",
                            "enum": [
                                0,
                                1
                            ],
                            "enumLabels": [
                                "off",
                                "on"
                            ],
                            "default": 1
                        },
                        "Braille.WordWrap": {
                            "schema": {
                                "title": "Enable Word Wrap",
                                "description": "Whether or not to allow words to be split in order to maximize the use of the braille display. Ignored if panning is set to fixed increment",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 1
                            }
                        },
                        "FSCasts.EnableNotifications": {
                            "schema": {
                                "title": "FSCast Notifications",
                                "description": "Whether to have JAWS display a dialog when new podcasts from Freedom Scientific are available.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 1
                            }
                        },
                        "HTML.Abbreviations": {
                            "schema": {
                                "title": "Abbreviations",
                                "description": "Whether to expand abbreviations.  If this is enabled, abbreviations with a title attribute will have their title read instead of the on screen text.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ]
                            }
                        },
                        "HTML.AccessKeys": {
                            "schema": {
                                "title": "Speak Access Keys Within Web Page",
                                "description": "Whether to announce HTML element access keys when reading a web page.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 1
                            }
                        },
                        "HTML.Acronyms": {
                            "schema": {
                                "title": "Acronyms",
                                "description": "If this is enabled, acronyms with a title attribute will have their title read instead of the on screen text.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ]
                            }
                        },
                        "HTML.BlockQuoteIndication": {
                            "title": "Block Quote Indication",
                            "description": "Whether to indicate HTML block quotations.",
                            "enum": [
                                0,
                                1
                            ],
                            "enumLabels": [
                                "off",
                                "on"
                            ],
                            "default": 1
                        },
                        "HTML.EmbeddedActiveXSupport": {
                            "title": "Embedded ActiveX Support",
                            "description": "Whether or not to support embedded ActiveX controls such as Macromedia Flash Movies.  If enabled, only objects defined in JActiveX.ini are affected by this setting.",
                            "enum": [
                                0,
                                1
                            ],
                            "enumLabels": [
                                "off",
                                "on"
                            ],
                            "default": 1
                        },
                        "HTML.ExpandAbbreviations": {
                            "schema": {
                                "title": "Expand Abbreviations",
                                "description": "Whether or not to expand abbreviations (using the abbr tag).",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 0
                            }
                        },
                        "HTML.ExpandAcronyms": {
                            "schema": {
                                "title": "Expand Acronyms",
                                "description": "Whether or not to expand acronyms (using the acronym tag).",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 0
                            }
                        },
                        "HTML.FilterConsecutiveDuplicateLinks": {
                            "schema": {
                                "title": "Filter Consecutive Duplicate Links",
                                "description": "Whether to skip (not announce) consecutive duplicate links.",
                                "type": "number",
                                "default": 1,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ]
                            }
                        },
                        "HTML.FormFieldPromptOptions": {
                            "schema": {
                                "title": "Form Field Prompt Options",
                                "description": "Which attributes to prefer when describing form fields.",
                                "enum": [
                                    0,
                                    1,
                                    2,
                                    3,
                                    4,
                                    5
                                ],
                                "enumLabels": [
                                    "favor label tag",
                                    "favor title attribute",
                                    "favor alt attribute",
                                    "favor longest",
                                    "use both label and title if different",
                                    "use both label and alt if different"
                                ],
                                "default": 0
                            }
                        },
                        "HTML.FormsModeAutoOff": {
                            "schema": {
                                "title": "Forms Mode Auto Off",
                                "description": "Whether or not Forms Mode should be automatically turned off when the current page is updated.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "Leave Forms Mode on",
                                    "Turn Forms Mode off automatically"
                                ],
                                "default": 1
                            }
                        },
                        "HTML.GraphicalLinkLastResort": {
                            "title": "Graphical Link Last Resort",
                            "description": "What to announce when a graphical link contains no title or alt text for its enclosing image and the enclosing anchor has no title.",
                            "enum": [0,1],
                            "enumLabels": "Read the image's src, Read the image's enclosing anchor's href.",
                            "default": 0
                        },
                        "HTML.IdentifyLinkType": {
                            "title": "Identify Link Type",
                            "description": "Whether to distinguish the various types of links e.g. \"FTP link\", \"mailto link\" versus simply announcing \"link\" for all types of links.",
                            "enum": [
                                0,
                                1
                            ],
                            "enumLabels": [
                                "off",
                                "on"
                            ],
                            "default": 1
                        },
                        "HTML.IdentifySamePageLinks": {
                            "title": "Identify Same Page Links",
                            "description": "Whether to identify links that point to other places on the current page by saying \"same page link\".",
                            "enum": [
                                0,
                                1
                            ],
                            "enumLabels": [
                                "off",
                                "on"
                            ],
                            "default": 1
                        },
                        "HTML.IgnoreInlineFrames": {
                            "schema": {
                                "title": "Ignore Inline Frames",
                                "description": "Whether to ignore inline frames, such as those used for advertising.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 0
                            }
                        },
                        "HTML.IncludeGraphics": {
                            "schema": {
                                "title": "Include Graphics",
                                "description": "Whether/when to include graphics in web pages.",
                                "enum": [
                                    0,
                                    1,
                                    2
                                ],
                                "enumLabels": [
                                    "never include graphics",
                                    "include graphics that have labels, i.e. alt=attributes",
                                    "include all graphics"
                                ],
                                "default": 1
                            }
                        },
                        "HTML.IndicateColSpan": {
                            "schema": {
                                "title": "Indicate ColSpan for Braille",
                                "description": "Whether to announce column spans when reading table data in web pages.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 1
                            }
                        },

                        "HTML.IndicateElementAttributes": {
                            "title": "Indicate Element Attributes",
                            "description": "Whether to announce any HTML attributes defined in the \"HTML Attributes Behavior\" map of the current scheme.",
                            "enum": [
                                0,
                                1
                            ],
                            "enumLabels": [
                                "off",
                                "on"
                            ],
                            "default": 1
                        },
                        "HTML.ListIndication": {
                            "title": "List Indication",
                            "description": "Whether to announce lists with the item count and nesting level.",
                            "enum": [
                                0,
                                1
                            ],
                            "enumLabels": [
                                "off",
                                "on"
                            ],
                            "default": 1
                        },
                        "HTML.MaxLineLength": {
                            "title": "Max Line Length",
                            "description": "The maximum number of characters which can appear on a line of a paragraph.",
                            "type": "integer",
                            "default": 150
                        },
                        "HTML.PageRefreshFilter": {
                            "title": "Page Refresh Filter",
                            "description": "How often, in milliseconds, to allow all refreshes.  Set to 0 to allow all refreshes without any delay.",
                            "type": "integer",
                            "default": 0
                        },
                        "HTML.SayAllOnDocumentLoad": {
                            "schema": {
                                "title": "Read Web Pages Automatically When Loaded",
                                "description": "Whether to automatically read web pages when they're first loaded.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 1
                            }
                        },
                        "HTML.ScreenFollowsVCursor": {
                            "title": "Screen Follows Virtual Cursor",
                            "description": "Whether the screen should automatically scroll to display the line on which the Virtual Cursor is positioned.",
                            "enum": [
                                0,
                                1
                            ],
                            "enumLabels": [
                                "off",
                                "on"
                            ],
                            "default": 1
                        },
                        "HTML.SkipPastRepeatedText": {
                            "title": "Skip Past Repeated Text",
                            "description": "Whether to position the Virtual Cursor on the first line which is different than the previous page whenever a new page is displayed.",
                            "enum": [
                                0,
                                1
                            ],
                            "enumLabels": [
                                "off",
                                "on"
                            ],
                            "default": 1
                        },
                        "HTML.SmartNavigation": {
                            "schema": {
                                "title": "Smart Navigation",
                                "description": "Whether to enable \"smart navigation\" when reading web pages.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 0
                            }
                        },
                        "HTML.TableDetection": {
                            "title": "Table Detection",
                            "description": "Whether to announce all tables, or only data tables.",
                            "enum": ["0","1"],
                            "enumLabels": "Indicate all tables, Only indicate data tables",
                            "default": "1"
                        },
                        "HTML.TblMaxCellTextLength": {
                            "title": "Table Maximum Cell Text Length",
                            "description": "A cell is considered a valid data cell if it contains upto this number of characters",
                            "type": "integer",
                            "default": 250
                        },
                        "HTML.TblMinCellTextLength": {
                            "title": "Table Minimum Cell Text Length",
                            "description": "A cell is considered a valid data cell if it contains at least this number of characters",
                            "type": "integer",
                            "default": 1
                        },
                        "HTML.TblMinTextColumns": {
                            "title": "Table Minimum Text Columns",
                            "description": "This option specifies the minimum number of columns which must contain text in order for the table to be considered a data table.",
                            "type": "integer",
                            "default": 2
                        },
                        "HTML.TblMinTextRows": {
                            "title": "Table Minimum Text Rows",
                            "description": "This option specifies the minimum number of rows which must contain text in order for the table to be considered a data table.",
                            "type": "integer",
                            "default": 2
                        },
                        "HTML.TblMinValidDataRows": {
                            "title": "Table Minimum Valid Data Rows",
                            "description": "Next options used for configuring how data tables are detected This option specifies the minimum number of valid data rows that a table must contain in order for it to be considered a data table.",
                            "type": "integer",
                            "default": 2
                        },
                        "HTML.TblValidRowThreshold": {
                            "title": "Table Valid Row Threshold",
                            "description": "This option specifies the minimum number of cells that a row must contain in order for it to be considered a valid data row.",
                            "type": "integer",
                            "default": 2
                        },
                        "HTML.TextBlockLength": {
                            "schema": {
                                "title": "Text Block Length",
                                "description": "The number of consecutive characters that must appear in a web page for JAWS to treat this as a block of text.",
                                "type": "integer",
                                "default": 25
                            }
                        },
                        "HTML.UseLegacyIESupport": {
                            "title": "Use Legacy IE Support",
                            "description": "Whether or not to use legacy IE support instead of the default FS Dom Server support.",
                            "enum": [
                                0,
                                1
                            ],
                            "enumLabels": [
                                "off",
                                "on"
                            ],
                            "default": 1
                        },
                        "HTML.WrapNavigation": {
                            "title": "Wrap Navigation",
                            "description": "Whether or not to allow navigation keystrokes such as tab and shift tab to wrap to the top or bottom of the document.",
                            "enum": [
                                0,
                                1
                            ],
                            "enumLabels": [
                                "off",
                                "on"
                            ],
                            "default": 1
                        },
                        "Options.AllCapsIndicator": {
                            "schema": {
                                "title": "AllCapsIndicator",
                                "description": "The text to read before text that appears in all capital letters.",
                                "type": "string",
                                "default": "all cap"
                            }
                        },
                        "Options.AllowMouseEchoWhenMuted": {
                            "schema": {
                                "title": "Allow Mouse Echo",
                                "description": "Whether to echo mouse movement when otherwise muted.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 0
                            }
                        },
                        "Options.AllowSpeechOnDemandWhenMuted": {
                            "schema": {
                                "title": "Allow Reading Commands",
                                "description": "Whether to allow speech on demand when otherwise muted.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 1
                            }
                        },
                        "Options.AllowTypingEchoWhenMuted": {
                            "schema": {
                                "title": "Allow Typing Echo",
                                "description": "Whether to echo typed keys when otherwise muted.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 0
                            }
                        },
                        "Options.CapIndicator": {
                            "schema": {
                                "title": "Cap Indicator",
                                "description": "The text to read before a capital letter.",
                                "type": "string",
                                "default": "cap"
                            }
                        },
                        "Options.CaretBlinkRate": {
                            "schema": {
                                "title": "Caret Blink Rate",
                                "description": "How fast the caret blinks, in milliseconds.",
                                "type": "integer",
                                "default": 53,
                                "minimum": 1
                            }
                        },
                        "Options.CaretDetect": {
                            "schema": {
                                "title": "Caret Detect",
                                "description": "How many cursor blinks are used to locate the caret.",
                                "type": "integer",
                                "default": 1,
                                "minimum": 1
                            }
                        },
                        "Options.CaretDetectTimeOut": {
                            "schema": {
                                "title": "Caret Detect Timeout",
                                "description": "The number of milliseconds before JAWS for Windows will give up looking for the caret",
                                "type": "integer",
                                "default": 250,
                                "minimum": 0
                            }
                        },
                        "OSM.CaretTimeOut": {
                            "title": "Caret Time Out",
                            "description": "The time in milliseconds to wait before redrawing the caret.",
                            "type": "integer",
                            "default": 1000
                        },
                        "Options.Case": {
                            "schema": {
                                "title": "Case",
                                "description": "Whether to indicate the case of spoken text with a change of inflection.",
                                "type": "number",
                                "default": 1,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ]
                            }
                        },
                        "Options.CustomPageSummary": {
                            "schema": {
                                "title": "Custom Page Summary",
                                "description": "What to do when a virtual document loads for which a custom page summary has been defined.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1,
                                    2
                                ],
                                "enumLabels": [
                                    "do nothing (\"Say All\" will be started as normal)",
                                    "The summary will be spoken and focus left on the page at the place defined by the page",
                                    "the summary will be presented in the virtual viewer for the user to immediately read"
                                ]
                            }
                        },
                        "Options.DetectKeyboardInputLanguage": {
                            "schema": {
                                "title": "Detect Keyboard Languages",
                                "description": "Whether to detect the language used by the keyboard.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 1
                            }
                        },
                        "Options.Dictionary": {
                            "schema": {
                                "title": "Dictionary",
                                "description": "Whether words, phrases, abbreviations, or symbols should be processed through a global or application specific dictionary to determine proper pronunciation. This is enabled by default.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ]
                            }
                        },
                        "Options.Filter": {
                            "schema": {
                                "title": "Filter",
                                "description": "Determines how repeated characters are handled.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1,
                                    2,
                                    3,
                                    4,
                                    5
                                ],
                                "enumLabels": [
                                    "Say First 3 Repeated Characters",
                                    "Say First 4 Repeated Characters",
                                    "Say First 5 Repeated Characters",
                                    "Say First 6 Repeated Characters",
                                    "Say All Repeated Characters",
                                    "Count Repeated Characters"
                                ]
                            }
                        },
                        "Options.GeneralizeDialect": {
                            "schema": {
                                "title": "Generalize Dialect",
                                "description": "Whether to switch languages when encountering content with the same underlying base language.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 1
                            }
                        },
                        "Options.Indentation": {
                            "schema": {
                                "title": "Indentation",
                                "description": "Whether or not to announce indentation.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ]
                            }
                        },
                        "Options.IndicateAttributesInDialogsAndMenus": {
                            "schema": {
                                "title": "Indicate Attributes on Dialogs and Menus",
                                "description": "Whether to announce attributes in dialogs and menus if the scheme allows for it.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ]
                            }
                        },
                        "Options.IndicateCaps": {
                            "schema": {
                                "title": "Indicate Caps",
                                "description": "When to indicate the presence of capital letters.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1,
                                    2,
                                    3
                                ],
                                "enumLabels": [
                                    "Off",
                                    "indicate caps when spelling or when navigating by character",
                                    "also indicate caps when reading by words",
                                    "also indicate caps when reading by lines"
                                ]
                            }
                        },
                        "Options.IndicateNewlinesAndParagraphs": {
                            "schema": {
                                "title": "Indicate Newlines and Paragraphs",
                                "description": "Whether/how to indicate the presence of new lines and paragraphs.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1,
                                    2,
                                    3,
                                    4
                                ],
                                "enumLabels": [
                                    "off",
                                    "indicate when typing and the editor or wordprocessor wraps to a new line",
                                    "indicate when arrowing left/right or using left/right with modifiers",
                                    "indicate when typing and also when arrowing. the method of indication is controlled by the Speech and Sounds scheme in use",
                                    "indicate when reading text containing newline characters bitwise or the values together to indicate in multiple contexts eg a value of"
                                ]
                            }
                        },
                        "Options.IndicateSelected": {
                            "schema": {
                                "title": "List Item",
                                "description": "Use this list to determine how JAWS describes list box items. Select \"Say None\" to silence reading of list box descriptions. When you select \"Say Selected\", JAWS only tells you when list box items are selected. When you select the \"Say Not Selected\" item, JAWS only tells you when list box items are not selected. This is the default setting. If you select \"Say Both\", JAWS tells you when list box items are selected, and when they are not selected.",
                                "default": 2,
                                "enum": [
                                    0,
                                    1,
                                    2,
                                    3
                                ],
                                "enumLabels": [
                                    "None",
                                    "Selected",
                                    "Not Selected",
                                    "Both"
                                ]
                            }
                        },
                        "Options.InitialNumlockState": {
                            "schema": {
                                "title": "Initial State of NumLock Key",
                                "description": "The initial state of the NumLock key.",
                                "type": "number",
                                "enum": [
                                    0,
                                    1,
                                    2
                                ],
                                "enumLabels": [
                                    "off at startup",
                                    "on at startup",
                                    "leave unmodified"
                                ],
                                "default": 0
                            }
                        },
                        "Options.InsertKeyMode": {
                            "schema": {
                                "title": "Insert Key Mode",
                                "description": "The operating mode of the insert key.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "JAWS",
                                    "Sticky"
                                ]
                            }
                        },
                        "Options.JAWSInsertKey": {
                            "schema": {
                                "title": "JAWS Insert Key",
                                "description": "Whether/which insert keys can be used as a JAWS Insert.",
                                "type": "number",
                                "default": 3,
                                "enum": [
                                    0,
                                    1,
                                    2,
                                    3
                                ],
                                "enumLabels": [
                                    "none",
                                    "Numpad Insert",
                                    "Extended Insert",
                                    "both Numpad and Extended"
                                ]
                            }
                        },
                        "Options.JAWSPunctuationEnabled": {
                            "schema": {
                                "title": "JAWS Punctuation Enabled",
                                "description": "Which punctuation marks to speak.",
                                "type": "number",
                                "default": 2,
                                "enum": [
                                    0,
                                    1,
                                    2,
                                    3
                                ],
                                "enumLabels": [
                                    "None",
                                    "Some",
                                    "Most",
                                    "All"
                                ]
                            }
                        },
                        "Options.KeyRepeat": {
                            "schema": {
                                "title": "Key Repeat",
                                "description": "Whether or not to allow repeated keys.  Repeated keys are allowed by default.",
                                "type": "number",
                                "default": 1,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ]
                            }
                        },
                        "Options.LanguageDetection": {
                            "schema": {
                                "title": "Language Detection",
                                "description": "Whether to enable automatic Language detection.",
                                "type": "number",
                                "default": 1,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ]
                            }
                        },
                        "Options.LeftShiftSkipBack": {
                            "schema": {
                                "title": "Left Shift Skip Back",
                                "description": "How the shift keys should behave in \"Say All\" mode.",
                                "type": "number",
                                "default": 1,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "during SayAll, right shift will skip back and left shift will skip forward",
                                    "during SayAll, left shift will skip back and right shift will skip forward"
                                ]
                            }
                        },
                        "Options.LessSpeechMode": {
                            "schema": {
                                "title": "Less Speech Options",
                                "description": "How to behave when in \"less speech mode\".",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "Speech On Demand",
                                    "Mute Speech"
                                ]
                            }
                        },
                        "Options.LinePauses": {
                            "schema": {
                                "title": "Line Pauses",
                                "description": "Whether to pause at end of a line.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ]
                            }
                        },
                        "Options.LowerOtherAppsVolumeWhileJAWSIsRunning": {
                            "schema": {
                                "title": "Lower Audio Volume of Programs while JAWS Speaks",
                                "description": "Whether to lower the volume of programs other than JAWS when speaking.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 0
                            }
                        },
                        "Options.MigrationWizardDisplayed": {
                            "schema": {
                                "title": "Migration Wizard Displayed",
                                "description": "Whether or not to display the migration wizard on startup.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 0
                            }
                        },
                        "Options.MixedCase": {
                            "schema": {
                                "title": "Mixed Case",
                                "description": "Whether to announce words with embedded capital letters (such as \"MixedCase\") as separate words.",
                                "type": "number",
                                "default": 1,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ]
                            }
                        },
                        "Options.MouseEchoSpeaksControlTypeAndState": {
                            "schema": {
                                "title": "Speak Control Type and State of Item",
                                "description": "Whether to speak the type of control and state of item when mousing over a control.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 1
                            }
                        },
                        "Options.MouseEchoSpeaksHelpAndDescription": {
                            "schema": {
                                "title": "Speak Description of Item",
                                "description": "Whether to speak the description of an item on mouseover.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 0
                            }
                        },
                        "Options.MouseMovementStopsSpeech": {
                            "schema": {
                                "title": "Mouse Echo Interrupt",
                                "description": "Whether to stop speaking when the mouse is moved.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 1
                            }
                        },
                        "Options.MouseSpeechDelay": {
                            "schema": {
                                "title": "Mouse Echo Delay",
                                "description": "How long to delay announcing content under the mouse, in milliseconds.  Defaults to 0 (no delay).",
                                "type": "integer",
                                "default": 0
                            }
                        },
                        "Options.MouseSpeechEchoUnit": {
                            "schema": {
                                "title": "Mouse Echo Unit",
                                "description": "The unit of text to announce when the mouse pauses over text in a control.  Defaults to reading the whole line.",
                                "enum": [
                                    0,
                                    1,
                                    2,
                                    3
                                ],
                                "enumLabels": [
                                    "character",
                                    "word",
                                    "line",
                                    "paragraph"
                                ],
                                "default": 2
                            }
                        },
                        "Options.MouseSpeechEnabled": {
                            "schema": {
                                "title": "Enable Mouse Echo",
                                "description": "Whether or not to enable the mouse echo, i.e. reading content under the mouse pointer.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 0
                            }
                        },
                        "Options.Numbers": {
                            "schema": {
                                "title": "Numbers",
                                "description": "How to announce numbers.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1,
                                    2,
                                    3
                                ],
                                "enumLabels": [
                                    "off (handled by synth)",
                                    "digits",
                                    "pairs",
                                    "full numbers"
                                ]
                            }
                        },
                        "Options.OnScreenKeyboard": {
                            "schema": {
                                "title": "Allow On Screen Keyboards",
                                "description": "Whether to allow on screen keyboards.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 0
                            }
                        },
                        "Options.ProcessToolTipEvent": {
                            "schema": {
                                "title": "Process Tooltip Event",
                                "description": "Whether or not to process tooltip events.",
                                "type": "number",
                                "default": 1,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "on",
                                    "off"
                                ]
                            }
                        },
                        "Options.ProgressBarUpdateInterval": {
                            "schema": {
                                "title": "Progress Bar Update Interval",
                                "description": "How often to announce progress bar updates, in milliseconds.  Set to 0 to disable update announcements.",
                                "type": "integer",
                                "default": 5000,
                                "minimum": 0
                            }
                        },
                        "Options.QuickKeyNavigationMode": {
                            "schema": {
                                "title": "Quick Key Navigation Mode",
                                "description": "Navigation Quick Keys let you move through Web pages with easy to remember commands, such as T for table, F for form field, N for non link text, and V for visited link. These commands are only available when the Virtual Cursor is active. Use these radio buttons to set Navigation Quick Keys off, on, or on only during Say All reading. The default is on.",
                                "type": "number",
                                "default": 1,
                                "enum": [
                                    0,
                                    1,
                                    2
                                ],
                                "enumLabels": [
                                    "off",
                                    "on",
                                    "only on during \"Say All\""
                                ]
                            }
                        },
                        "Options.ReadingInterrupt": {
                            "schema": {
                                "title": "Reading Interrupt",
                                "description": "Whether to interrupt speech when a key that is bound to a macro is pressed.",
                                "type": "number",
                                "default": 1,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ]
                            }
                        },
                        "Options.Repetitions": {
                            "schema": {
                                "title": "Repetitions",
                                "description": "Whether or not to indicate repeated characters.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ]
                            }
                        },
                        "Options.SayAllIgnoreShiftKeys": {
                            "schema": {
                                "title": "\"Say All\" Ignores Shift Keys",
                                "description": "Allows sticky keys to be used, i.e.: ignores shift keys during SayAll. User can use left/right arrow to do same functions.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "on",
                                    "off"
                                ]
                            }
                        },
                        "Options.SayAllIndicateCaps": {
                            "schema": {
                                "title": "\"Say All\" Announces Capitals",
                                "description": "In \"Say All\" mode, announce an initial capital letter or capitalized word.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "on",
                                    "off"
                                ]
                            }
                        },
                        "Options.SayAllMode": {
                            "schema": {
                                "title": "\"Say All\" Mode",
                                "description": "Sets the amount of text which \"Say All\" sends to the synthesizer as a single unit.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1,
                                    2
                                ],
                                "enumLabels": [
                                    "line",
                                    "sentence",
                                    "paragraph"
                                ]
                            }
                        },
                        "Options.SayBlankLineCount": {
                            "schema": {
                                "title": "Say Blank Line Count",
                                "description": "In \"Say All\" mode, whether to announce the number of blank lines.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ]
                            }
                        },
                        "Options.SayCursorShapeChange": {
                            "schema": {
                                "title": "Say Cursor Shape Change",
                                "description": "Whether to announce a change in the shape of the cursor.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ]
                            }
                        },
                        "Options.SayDollars": {
                            "schema": {
                                "title": "Say Dollars",
                                "description": "Whether to announce currency symbols.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ]
                            }
                        },
                        "Options.SayNumericDates": {
                            "schema": {
                                "title": "Say Numeric Dates",
                                "description": "How to announce numeric dates.  With no translation, dates are read as numbers.  With some translation, dd-mm-yy values are read as text.  With extended translation, both dd-mm-yy and dd-mm values are read as text.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1,
                                    2
                                ],
                                "enumLabels": [
                                    "no translation",
                                    "some translation",
                                    "extended translation"
                                ]
                            }
                        },
                        "Options.SaySelectedFirst": {
                            "schema": {
                                "title": "Say Selected First",
                                "description": "Whether to announce the selected text first.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ]
                            }
                        },
                        "Options.SayStateFirst": {
                            "schema": {
                                "title": "Say State First",
                                "description": "Whether to announce the window state before title/text.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ]
                            }
                        },
                        "Options.SayWindowTypeFirst": {
                            "schema": {
                                "title": "Say Window Type First",
                                "description": "Whether to announce the type of window before announcing the window title/text.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ]
                            }
                        },
                        "Options.Scheme": {
                            "schema": {
                                "title": "Scheme",
                                "description": "Whether or not to intercept CreateDIBSection Note that this value is only read once per JAWS session at startup thus changing this value while JAWS is running has no effect.",
                                "type": "string",
                                "default": "Classic"
                            }
                        },
                        "Options.ScreenEcho": {
                            "schema": {
                                "title": "Screen Echo",
                                "description": "Use the radio buttons in this group to determine how much text is read when information on the screen changes. This includes highlighted text, all text as it appears, or no speech echo as text appears or changes on screen. The default setting is Echo Highlighted Text. Changing the Screen Echo setting may affect the reading of menus and other items. For this reason, it is recommended that you only make Screen Echo changes in application-specific settings files.",
                                "type": "number",
                                "default": 1,
                                "enum": [
                                    0,
                                    1,
                                    2
                                ],
                                "enumLabels": [
                                    "off",
                                    "highlight",
                                    "all"
                                ]
                            }
                        },
                        "Options.SimultaneousSynthAndWave": {
                            "schema": {
                                "title": "Simultaneous Synth and Wave",
                                "description": "Whether to enable smoother playing of WAV files when using the DEC Talk Access 32 software synthesizer. This option is only available in Default.jcf. Changes to this setting take effect the next time you start JAWS.  Disabled by default.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ]
                            }
                        },
                        "Options.SingleDigitThreshold": {
                            "schema": {
                                "title": "Single Digit Threshold",
                                "description": "The number of digits a number must contain before it is read as single digits (like a phone number).  Defaults to five.",
                                "type": "integer",
                                "default": 5
                            }
                        },
                        "Options.SkimReadingIndication": {
                            "schema": {
                                "title": "Skim Reading Indication",
                                "description": "Whether or not to indicate (via a beep) when skimming over text units for which the regular expression returns FALSE.",
                                "type": "number",
                                "default": 1,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "beep every 20 units skimmed over"
                                ]
                            }
                        },
                        "Options.SkipILM": {
                            "schema": {
                                "title": "Skip ILM",
                                "description": "Whether to show the licensing manager on startup when running in 40-minute evaluation mode.",
                                "default": 0,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "display the license manager on startup",
                                    "do not display the license manager on startup"
                                ]
                            }
                        },
                        "Options.SmartWordReading": {
                            "schema": {
                                "title": "Smart Word Reading",
                                "description": "Whether or not to enable \"smart reading\" when using the \"Say Word\" command.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 1
                            }
                        },
                        "Options.SpeakANSIChars": {
                            "schema": {
                                "title": "Speak ANSI Chars",
                                "description": "Whether or not to announce ANSI characters.",
                                "type": "number",
                                "default": 1,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ]
                            }
                        },
                        "Options.SpeakCharacterValueAsMultibyteSequence": {
                            "schema": {
                                "title": "Speak Character Value As Sequence of Multibyte Values",
                                "description": "Whether to read unicode characters as a series of multi-byte values.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 0
                            }
                        },
                        "Options.SpeakCharacterValueInHex": {
                            "schema": {
                                "title": "Speak Character Value In Hex",
                                "description": "Whether to announce the hex value of a character when numpad 5 is pressed three times quickly.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 0
                            }
                        },
                        "Options.SpeakNumbersSepByDashesAsDigits": {
                            "schema": {
                                "title": "Numbers Containing Dashes as Digits",
                                "description": "Whether to read numbers that contain dashes (such as phone numbers) as a series of digits.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 0
                            }
                        },
                        "Options.SpeechHistory": {
                            "schema": {
                                "title": "Enable Speech History",
                                "description": "Whether to read through the 50-item speech history when \"insert+spacebar\" and then \"h\" are pressed.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 1
                            }
                        },
                        "Options.SpeechMode": {
                            "schema": {
                                "title": "Speech Mode",
                                "description": "The \"speech mode\" to use, either \"full\" or \"less\".",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "full speech",
                                    "less speech"
                                ],
                                "default": 0
                            }
                        },
                        "Options.SpellAlphanumericData": {
                            "schema": {
                                "title": "Spell Alphanumeric Data",
                                "description": "How to read alphanumeric data.",
                                "enum": [
                                    0,
                                    1,
                                    2
                                ],
                                "enumLabels": [
                                    "read as appears",
                                    "spell",
                                    "spell phonetically"
                                ],
                                "default": 0
                            }
                        },
                        "Options.SpellPhonetic": {
                            "schema": {
                                "title": "Spell Phonetic",
                                "description": "How to announce word spellings.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "spell normal",
                                    "spell phonetic"
                                ]
                            }
                        },
                        "Options.Synthesizer": {
                            "schema": {
                                "title": "Synthesizer",
                                "description": "The synthesizer to use/ Available synthesizers are listed in JfW.INI",
                                "type": "string",
                                "default": "Synth1"
                            }
                        },
                        "Options.SynthesizerResetFrequency": {
                            "schema": {
                                "title": "Synthesizer Reset Frequency",
                                "description": "How often to reset communication with the synthesizer, in milliseconds.",
                                "type": "integer",
                                "default": 2000,
                                "minimum": 0
                            }
                        },
                        "Options.TetherJawsToPC": {
                            "schema": {
                                "title": "Tether Jaws to PC",
                                "description": "Whether or not to tether the JAWS cursor to the PC cursor.  If this is set to 'on', whenever the Pc cursor moves, the Jaws cursor will follow it. If this is set to 'off', the JAWS cursor is indifferent to PC cursor movements (this is the default).",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ]
                            }
                        },
                        "Options.TextAnalyser": {
                            "schema": {
                                "title": "Text Analyzer",
                                "description": "The type of alert to use when announcing formatting errors.",
                                "enum": [
                                    0,
                                    1,
                                    2,
                                    3
                                ],
                                "enumLabels": [
                                    "turn off",
                                    "indicate with sound",
                                    "speak count",
                                    "describe inconsistencies"
                                ],
                                "default": 0
                            }
                        },
                        "Options.TouchKeyboardChildPanelNotification": {
                            "schema": {
                                "title": "Touch Alternative Character Panel Popup Notification",
                                "description": "How to announce the appearance of a panel of alternate keys in the touch keyboard.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "by both message and sound",
                                    "by sound only"
                                ],
                                "default": 0
                            }
                        },
                        "Options.TouchKeyboardNotification": {
                            "schema": {
                                "title": "Touch Keyboard Notification",
                                "description": "Whether/how to notify when the touch keyboard appears/disappears.",
                                "enum": [
                                    0,
                                    1,
                                    2
                                ],
                                "enumLabels": [
                                    "by message",
                                    "by sound",
                                    "by both message and sound"
                                ],
                                "default": 2
                            }
                        },
                        "Options.TouchTypingEcho": {
                            "schema": {
                                "title": "Touch Typing Echo",
                                "description": "Whether/how to echo text entered using the touch keyboard.",
                                "enum": [
                                    0,
                                    1,
                                    2,
                                    3
                                ],
                                "enumLabels": [
                                    "none",
                                    "characters",
                                    "words",
                                    "both characters and words"
                                ],
                                "default": 3
                            }
                        },
                        "Options.TouchTypingMode": {
                            "schema": {
                                "title": "Touch Typing Mode",
                                "description": "Which keyboard mode to use for the touch keyboard.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "standard",
                                    "touch typing"
                                ],
                                "default": 1
                            }
                        },
                        "Options.TypingEcho": {
                            "schema": {
                                "title": "Typing echo",
                                "description": "How to announce typed words and/or characters.",
                                "type": "number",
                                "default": 1,
                                "enum": [
                                    0,
                                    1,
                                    2,
                                    3
                                ],
                                "enumLabels": [
                                    "don't announce characters or words",
                                    "announce characters",
                                    "announce words",
                                    "announce characters and words"
                                ]
                            }
                        },
                        "Options.TypingInterrupt": {
                            "schema": {
                                "title": "Typing Interrupt",
                                "description": "Whether to stop speaking when the user types.",
                                "type": "number",
                                "default": 1,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ]
                            }
                        },
                        "Options.UseExtendedKeys": {
                            "schema": {
                                "title": "Use Extended Keys",
                                "description": "Whether to distinguish between extended and number pad keys.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "Treat Extended and Numpad keys the same",
                                    "Differentiate between Extended and Numpad keys"
                                ]
                            }
                        },
                        "Options.UseVirtualInfoInFormsMode": {
                            "schema": {
                                "title": "Use Virtual Info in Forms Mode",
                                "description": "Whether to use information from the virtual HTML area for prompts in Forms mode. Warning: this will not always result in accurate information, particularly on pages where there are errors in the HTML coding which result in forms mode and virtual mode being out of synchronization.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ]
                            }
                        },
                        "Options.Verbosity": {
                            "schema": {
                                "title": "Verbosity",
                                "description": "How verbose announcements should be.",
                                "type": "number",
                                "default": 0,
                                "enum": [
                                    0,
                                    1,
                                    2
                                ],
                                "enumLabels": [
                                    "most speech",
                                    "intermediate",
                                    "least speech"
                                ]
                            }
                        },
                        "Options.VIRTUALMSAAREFRESH": {
                            "schema": {
                                "title": "Virtual MSAA Refresh",
                                "description": "How often (in milliseconds) should an embedded ActiveX control cause the Virtual HTML area to be updated when receiving rapid ValueChange events from MSAA.  Set to -1 to disable refreshes.",
                                "type": "integer",
                                "default": 0,
                                "minimum": -1
                            }
                        },
                        "Options.VTcolor": {
                            "schema": {
                                "title": "Visual Tracking Color",
                                "description": "The colour to use when highlighting items selected using the touch cursor.",
                                "type": "integer"
                            }
                        },
                        "Options.VTspacing": {
                            "schema": {
                                "title": "Visual Tracking Spacing",
                                "description": "The amount of spacing between the highlight box and the highlighted item.",
                                "type": "integer"
                            }
                        },
                        "Options.VTstyle": {
                            "schema": {
                                "title": "Visual Tracking Style",
                                "description": "The style of highlighting to use.",
                                "enum": [
                                    0,
                                    1,
                                    2
                                ],
                                "enumLabels": [
                                    "box",
                                    "block",
                                    "underline"
                                ],
                                "default": 0
                            }
                        },
                        "Options.VTthickness": {
                            "schema": {
                                "title": "Visual Tracking Thickness",
                                "description": "How thick to make the \"box\" and \"underline\" highlighting styles.",
                                "type": "integer"
                            }
                        },
                        "Options.VTtransparency": {
                            "schema": {
                                "title": "Visual Tracking Transparency",
                                "description": "How transparent to make the visual highlighting of selected items.",
                                "type": "integer"
                            }
                        },
                        "Options.VTUseTouchCursor": {
                            "schema": {
                                "title": "Highlight Touch Cursor",
                                "description": "Whether or not to highlight selected items when using the touch cursor or touch gestures.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 0
                            }
                        },
                        "Options.VTUseVirtualPCCursor": {
                            "schema": {
                                "title": "Use Virtual PC Cursor",
                                "description": "Whether to use the virtual PC cursor when reading HTML documents.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 1
                            }
                        },
                        "Options.VTUseVirtualRibbon": {
                            "schema": {
                                "title": "Use Virtual Ribbon Menu",
                                "description": "Whether to turn on the virtual ribbon menu.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 0
                            }
                        },
                        "OSM.GraphicsMode": {
                            "title": "Graphics Mode",
                            "description": "How to handle graphic CRC values.",
                            "enum": [
                                0,
                                1
                            ],
                            "enumLabels": [
                                "Store graphic CRC values when the graphics are being drawn to the screen.",
                                "Compute them from the screen image at the time they are requested to be spoken."
                            ],
                            "default": 0
                        },
                        "OSM.IgnoreSetSysModal": {
                            "title": "Ignore Set Sys Modal",
                            "description": "Whether to disallow Windows calling the SetSysModalWindow function. In most cases this is desirable, because System Modal Windows cannot be spoken.",
                            "enum": [
                                0,
                                1
                            ],
                            "enumLabels": [
                                "off",
                                "on"
                            ],
                            "default": 1
                        },
                        "OSM.IncludeGraphics": {
                            "title": "Include Graphics",
                            "description": "Which graphics to announce.",
                            "enum": [ 0, 1, 2],
                            "enumLabels": ["Ignore all graphics", "Announce labeled graphics only", "Announce all graphics"],
                            "default": 1
                        },
                        "OSM.IncludeLines": {
                            "title": "Include Lines",
                            "description": "Whether to include line segments in the Off Screen Model. This is required for Excel and other programs which draw a focus rectangle.",
                            "enum": [
                                0,
                                1
                            ],
                            "enumLabels": [
                                "off",
                                "on"
                            ],
                            "default": 0
                        },
                        "OSM.MouseClickFudgeX": {
                            "title": "Mouse Click Fudge X",
                            "description": "number of pixels to the right of the current JAWS cursor at which a mouse click should be simulated",
                            "type": "integer",
                            "default": 1
                        },
                        "OSM.MouseClickFudgeY": {
                            "title": "Mouse Click Fudge Y",
                            "description": "number of pixels below the current JAWS cursor at which a mouse click should be simulated",
                            "type": "integer",
                            "default": -2
                        },
                        "OSM.PixelsPerBlankLine": {
                            "title": "Pixels Per Blank Line",
                            "description": "how many pixels (high) per blank line",
                            "type": "integer",
                            "default": 13
                        },
                        "OSM.PixelsPerSpace": {
                            "schema": {
                                "title": "Pixels Per Space",
                                "description": "When simulating spaces in blank portions of a line, the number of pixels used to represent each space.",
                                "type": "integer",
                                "default": 8
                            }
                        },
                        "OSM.PixelsPerTab": {
                            "schema": {
                                "title": "Pixels Per Tab",
                                "description": "The number of pixels per tab, used to estimate the number of tab spaces contained within the blank portion of a line.",
                                "type": "integer",
                                "default": 10
                            }
                        },
                        "OSM.SpeakSysModalMessageBox": {
                            "title": "Speak Sys Modal Message Box",
                            "description": "Whether to announce System Modal Message Boxes.",
                            "enum": [
                                0,
                                1
                            ],
                            "enumLabels": [
                                "off",
                                "on"
                            ],
                            "default": 1
                        },
                        "OSM.TableDetection": {
                            "schema": {
                                "title": "Table Presentation Information",
                                "description": "Which tables to read as tables (data tables, or all tables).",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "data tables only",
                                    "all tables"
                                ],
                                "default": 0
                            }
                        },
                        "OSM.TextOutDelay": {
                            "title": "Text Out Delay",
                            "description": "The number of milliseconds to wait before announcing newly written text. Setting this to a non-zero value may cause terminal programs to respond in a less choppy fashion.",
                            "type": "integer",
                            "default": 0
                        },
                        "OSM.TrackCommandBars": {
                            "title": "Track Command Bars",
                            "description": "Whether to track the menu bar in Office applications.",
                            "enum": [
                                0,
                                1
                            ],
                            "enumLabels": [
                                "off",
                                "on"
                            ],
                            "default": 1
                        },
                        "OSM.TrackFocusRect": {
                            "schema": {
                                "title": "Track Focus Rectangle",
                                "description": "Set to one causes MAGic to track the focus rectangle in standard controls that utilize focus rectangles.",
                                "enum": [
                                    0,
                                    1
                                ],
                                "enumLabels": [
                                    "off",
                                    "on"
                                ],
                                "default": 1
                            }
                        },
                        "OSM.TrimBrailleGraphicLabels": {
                            "title": "Trim Braille Graphic Labels",
                            "description": "Whether to trim the size of a braille graphic. Useful to preserve the virtical positioning of braille text.",
                            "enum": [
                                0,
                                1
                            ],
                            "enumLabels": [
                                "off",
                                "on"
                            ],
                            "default": 0
                        },
                        "OSM.UnderlineProximity": {
                            "schema": {
                                "title": "Underline Proximity",
                                "description": "How far away in pixels can an underline be before being considered an actual underline.",
                                "type": "integer",
                                "default": 0
                            }
                        },
                        "Touch.FlickVelocityMin": {
                            "schema": {
                                "title": "Flick Velocity",
                                "description": "The minimum finger velocity to treat as a \"flick\".",
                                "type": "integer"
                            }
                        },
                        "Touch.TapEventDurationMax": {
                            "schema": {
                                "title": "Explore Delay",
                                "description": "The delay between touching a touch screen and displaying the explore menu, in milliseconds.",
                                "type": "integer"
                            }
                        },
                        "Touch.TapInterEventDurationMax": {
                            "schema": {
                                "title": "Double Tap Speed",
                                "description": "The threshold for treating two taps as a double-tap, expressed in milliseconds between taps.",
                                "type": "integer"
                            }
                        },
                        "Touch.TapTranslationMax": {
                            "schema": {
                                "title": "Tap Radius",
                                "description": "The size of the finger contact spot on the touch screen.",
                                "type": "integer"
                            }
                        },
                        "Voice Profiles.ActiveVoiceProfileName": {
                            "schema": {
                                "title": "Active Voice Profile Name",
                                "description": "The active voice profile.",
                                "type": "string",
                                "default": "GPII"
                            }
                        }
                    },
                    "capabilitiesTransformations": {
                        "Voice Profiles\\.ActiveVoiceProfileName": {
                            "literalValue": "GPII"
                        },
                        "Options\\.SayAllIndicateCaps": {
                            "transform": {
                                "type": "valueMapper",
                                "defaultInputPath": "http://registry\\.gpii\\.net/common/announceCapitals",
                                "match": [
                                    {
                                        "inputValue": true,
                                        "outputValue": 1
                                    },
                                    {
                                        "inputValue": false,
                                        "outputValue": 0
                                    }
                                ],
                                "noMatch": {
                                    "outputValue": 0
                                }
                            }
                        },
                        "Options\\.TypingEcho": {
                            "transform": {
                                "type": "fluid.transforms.condition",
                                "condition": {
                                    "transform": {
                                        "type": "fluid.transforms.binaryOp",
                                        "leftPath": "http://registry\\.gpii\\.net/common/keyEcho",
                                        "rightPath": "http://registry\\.gpii\\.net/common/wordEcho",
                                        "operator": "&&"
                                    }
                                },
                                "true": 3,
                                "false": {
                                    "transform": {
                                        "type": "fluid.transforms.condition",
                                        "conditionPath": "http://registry\\.gpii\\.net/common/keyEcho",
                                        "true": 1,
                                        "false": {
                                            "transform": {
                                                "type": "fluid.transforms.condition",
                                                "conditionPath": "http://registry\\.gpii\\.net/common/wordEcho",
                                                "true": 2
                                            }
                                        }
                                    }
                                }
                            }
                        },
                        "Options\\.SayAllMode": {
                            "transform": {
                                "type": "fluid.transforms.valueMapper",
                                "defaultInputPath": "http://registry\\.gpii\\.net/common/readingUnit",
                                "match": {
                                    "line": 0,
                                    "sentence": 1,
                                    "paragraph": 2
                                }
                            }
                        },
                        "Braille\\.BrailleMode": {
                            "transform": {
                                "type": "fluid.transforms.valueMapper",
                                "defaultInputPath": "http://registry\\.gpii\\.net/common/brailleMode",
                                "match": {
                                    "line": 0,
                                    "structured": 1,
                                    "speechHistory": 2
                                }
                            }
                        },
                        "Options\\.SayAllIgnoreShiftKeys": {
                            "transform": {
                                "type": "valueMapper",
                                "defaultInputPath": "http://registry\\.gpii\\.net/common/stickyKeys",
                                "match": [
                                    {
                                        "inputValue": true,
                                        "outputValue": 1
                                    },
                                    {
                                        "inputValue": false,
                                        "outputValue": 0
                                    }
                                ],
                                "noMatch": {
                                    "outputValue": 0
                                }
                            }
                        }
                    },
                    "inverseCapabilitiesTransformations": {
                        "http://registry\\.gpii\\.net/common/announceCapitals": {
                            "transform": {
                                "type": "valueMapper",
                                "defaultInputPath": "Options\\.SayAllIndicateCaps",
                                "match": [
                                    {
                                        "inputValue": 0,
                                        "outputValue": false
                                    },
                                    {
                                        "inputValue": 1,
                                        "outputValue": true
                                    }
                                ],
                                "noMatch": {
                                    "outputValue": false
                                }
                            }
                        },
                        "http://registry\\.gpii\\.net/common/keyEcho": {
                            "transform": {
                                "type": "valueMapper",
                                "defaultInputPath": "Options\\.TypingEcho",
                                "match": [
                                    {
                                        "inputValue": 1,
                                        "outputValue": true
                                    },
                                    {
                                        "inputValue": 3,
                                        "outputValue": true
                                    }
                                ],
                                "noMatch": {
                                    "outputValue": false
                                }
                            }
                        },
                        "http://registry\\.gpii\\.net/common/wordEcho": {
                            "transform": {
                                "type": "valueMapper",
                                "defaultInputPath": "Options\\.TypingEcho",
                                "match": [
                                    {
                                        "inputValue": 2,
                                        "outputValue": true
                                    },
                                    {
                                        "inputValue": 3,
                                        "outputValue": true
                                    }
                                ],
                                "noMatch": {
                                    "outputValue": false
                                }
                            }
                        },
                        "http://registry\\.gpii\\.net/common/readingUnit": {
                            "transform": {
                                "type": "fluid.transforms.valueMapper",
                                "defaultInputPath": "Options\\.SayAllMode",
                                "match": [
                                    {
                                        "inputValue": 0,
                                        "outputValue": "line"
                                    },
                                    {
                                        "inputValue": 1,
                                        "outputValue": "sentence"
                                    },
                                    {
                                        "inputValue": 2,
                                        "outputValue": "paragraph"
                                    }
                                ]
                            }
                        },
                        "http://registry\\.gpii\\.net/common/brailleMode": {
                            "transform": {
                                "type": "fluid.transforms.valueMapper",
                                "defaultInputPath": "Braille\\.BrailleMode",
                                "match": [
                                    {
                                        "inputValue": 0,
                                        "outputValue": "line"
                                    },
                                    {
                                        "inputValue": 1,
                                        "outputValue": "structured"
                                    },
                                    {
                                        "inputValue": 2,
                                        "outputValue": "speechHistory"
                                    }
                                ]
                            }
                        }
                    }
                },
                "configuration2": {
                    "type": "gpii.settingsHandlers.INISettingsHandler",
                    "liveness": "manualRestart",
                    "options": {
                        "filename": "${{environment}.APPDATA}\\Freedom Scientific\\JAWS\\2019\\Settings\\VoiceProfiles\\GPII.VPF"
                    },
                    "supportedSettings": {
                        "Options.PrimarySynthesizer": {},
                        "ENU-Global.Pitch": {
                            "schema": {
                                "title": "Pitch",
                                "description": "The pitch to use for all types of announcements.",
                                "type": "integer",
                                "minimum": 1,
                                "maximum": 100,
                                "default": 65
                            }
                        },
                        "ENU-Global.Punctuation": {
                            "schema": {
                                "title": "Punctuation",
                                "description": "How much punctuation to announce for all types of announcements.",
                                "enum": [0, 1, 2, 3],
                                "enumLabels": ["None", "Some", "Most", "All"],
                                "default": 2
                            }
                        },
                        "ENU-Global.Rate": {
                            "schema": {
                                "title": "Rate",
                                "description": "Speech rate for all announcements (scale varies by voice).",
                                "type": "integer"
                            }
                        },
                        "ENU-Global.SynthLangString": {
                            "schema": {
                                "title": "Synth Language",
                                "description": "The language to use for all announcements.",
                                "type": "string"
                            }
                        },
                        "ENU-Global.Volume": {
                            "schema": {
                                "title": "Global Volume",
                                "description": "The volume for all announcements.",
                                "type": "integer",
                                "minimum": 10,
                                "maximum": 100,
                                "default": 100
                            }
                        },
                        "ENU-JAWSCursor.Pitch": {
                            "schema": {
                                "title": "JAWS Cursor Pitch",
                                "description": "The pitch to use for announcements related to the JAWS cursor.",
                                "type": "integer",
                                "minimum": 1,
                                "maximum": 100,
                                "default": 65
                            }
                        },
                        "ENU-JAWSCursor.Punctuation": {
                            "schema": {
                                "title": "JAWS Cursor Punctuation",
                                "description": "How much punctuation to announce for the JAWS cursor.",
                                "enum": [0, 1, 2, 3],
                                "enumLabels": ["None", "Some", "Most", "All"],
                                "default": 2
                            }
                        },
                        "ENU-JAWSCursor.Rate": {
                            "schema": {
                                "title": "JAWS Cursor Rate",
                                "description": "Speech rate for announcements related to the JAWS cursor (scale varies by voice).",
                                "type": "integer"
                            }
                        },
                        "ENU-JAWSCursor.SynthLangString": {
                            "schema": {
                                "title": "JAWS Cursor Language",
                                "description": "The language to use for announcements related to the JAWS cursor.",
                                "type": "string"
                            }
                        },
                        "ENU-JAWSCursor.Volume": {
                            "schema": {
                                "title": "JAWS Cursor Volume",
                                "description": "The volume for announcements related to the JAWS cursor.",
                                "type": "integer",
                                "minimum": 10,
                                "maximum": 100,
                                "default": 100
                            }
                        },
                        "ENU-Keyboard.Pitch": {
                            "schema": {
                                "title": "Keyboard Pitch",
                                "description": "The pitch to use for announcements related to the keyboard.",
                                "type": "integer",
                                "minimum": 1,
                                "maximum": 100,
                                "default": 65
                            }
                        },
                        "ENU-Keyboard.Punctuation": {
                            "schema": {
                                "title": "Keyboard Punctuation",
                                "description": "How much punctuation to announce for announcements related to the keyboard.",
                                "enum": [0,1,2,3],
                                "enumLabels": ["None", "Some", "Most", "All"],
                                "default": 2
                            }
                        },
                        "ENU-Keyboard.Rate": {
                            "schema": {
                                "title": "Keyboard Rate",
                                "description": "Speech rate for announcements related to the keyboard (scale varies by voice).",
                                "type": "integer"
                            }
                        },
                        "ENU-Keyboard.SynthLangString": {
                            "schema": {
                                "title": "Keyboard Language",
                                "description": "The language to use for announcements related to the keyboard.",
                                "type": "string"
                            }
                        },
                        "ENU-Keyboard.Volume": {
                            "schema": {
                                "title": "Keyboard Volume",
                                "description": "The volume for announcements related to the keyboard.",
                                "type": "integer",
                                "minimum": 10,
                                "maximum": 100,
                                "default": 100
                            }
                        },
                        "ENU-MenuAndDialog.Pitch": {
                            "schema": {
                                "title": "Menu and Dialog Pitch",
                                "description": "The pitch to use for announcements related to menus and dialogs.",
                                "type": "integer",
                                "minimum": 1,
                                "maximum": 100,
                                "default": 65
                            }
                        },
                        "ENU-MenuAndDialog.Punctuation": {
                            "schema": {
                                "title": "Menu and Dialog Punctuation",
                                "description": "How much punctuation to announce for menus and dialogs.",
                                "enum": [0,1,2,3],
                                "enumLabels": ["None", "Some", "Most", "All"],
                                "default": 2
                            }
                        },
                        "ENU-MenuAndDialog.Rate": {
                            "schema": {
                                "title": "Menu and Dialog Rate",
                                "description": "Speech rate for announcements related to menus and dialogs (scale varies by voice).",
                                "type": "integer"
                            }
                        },
                        "ENU-MenuAndDialog.SynthLangString": {
                            "schema": {
                                "title": "Menu and Dialog Language",
                                "description": "The language to use for announcements related to menus and dialogs.",
                                "type": "string"
                            }
                        },
                        "ENU-MenuAndDialog.Volume": {
                            "schema": {
                                "title": "Menu and Dialog Volume",
                                "description": "The volume for announcements related to menus and dialogs.",
                                "type": "integer",
                                "minimum": 10,
                                "maximum": 100,
                                "default": 100
                            }
                        },
                        "ENU-Message.Pitch": {
                            "schema": {
                                "title": "Message Pitch",
                                "description": "The pitch to use for message announcements.",
                                "type": "integer",
                                "minimum": 1,
                                "maximum": 100,
                                "default": 65
                            }
                        },
                        "ENU-Message.Punctuation": {
                            "schema": {
                                "title": "Message Punctuation",
                                "description": "How much punctuation to announce for messages.",
                                "enum": [0,1,2,3],
                                "enumLabels": ["None", "Some", "Most", "All"],
                                "default": 2
                            }
                        },
                        "ENU-Message.Rate": {
                            "schema": {
                                "title": "Message Rate",
                                "description": "Speech rate for message announcements.",
                                "type": "integer"
                            }
                        },
                        "ENU-Message.SynthLangString": {
                            "schema": {
                                "title": "Message Language",
                                "description": "The language to use for message announcements.",
                                "type": "string"
                            }
                        },
                        "ENU-Message.Volume": {
                            "schema": {
                                "title": "Message Volume",
                                "description": "The volume for message announcements.",
                                "type": "integer",
                                "minimum": 10,
                                "maximum": 100,
                                "default": 100
                            }
                        },
                        "ENU-PCCursor.Pitch": {
                            "schema": {
                                "title": "PC Cursor Pitch",
                                "description": "The pitch to use for announcements related to the PC cursor.",
                                "type": "integer",
                                "minimum": 1,
                                "maximum": 100,
                                "default": 65
                            }
                        },
                        "ENU-PCCursor.Punctuation": {
                            "schema": {
                                "title": "PC Cursor Punctuation",
                                "description": "How much punctuation to announce for the PC cursor.",
                                "enum": [0,1,2,3],
                                "enumLabels": ["None", "Some", "Most", "All"],
                                "default": 2
                            }
                        },
                        "ENU-PCCursor.Rate": {
                            "schema": {
                                "title": "PC Cursor Rate",
                                "description": "Speech rate for announcements related to the PC cursor (scale varies by voice).",
                                "type": "integer"
                            }
                        },
                        "ENU-PCCursor.SynthLangString": {
                            "schema": {
                                "title": "PC Cursor Language",
                                "description": "The language to use for announcements related to the PC cursor.",
                                "type": "string"
                            }
                        },
                        "ENU-PCCursor.Volume": {
                            "schema": {
                                "title": "PC Cursor Volume",
                                "description": "The volume for announcements related to the PC cursor.",
                                "type": "integer",
                                "minimum": 10,
                                "maximum": 100,
                                "default": 100
                            }
                        }
                    },
                    "capabilitiesTransformations": {
                        "Options\\.PrimarySynthesizer": "http://registry\\.gpii\\.net/common/speechSynthesizer",
                        "ENU-Global\\.Rate": "http://registry\\.gpii\\.net/common/speechRate",
                        "ENU-JAWSCursor\\.Rate": "http://registry\\.gpii\\.net/common/speechRate",
                        "ENU-Keyboard\\.Rate": "http://registry\\.gpii\\.net/common/speechRate",
                        "ENU-MenuAndDialog\\.Rate": "http://registry\\.gpii\\.net/common/speechRate",
                        "ENU-Message\\.Rate": "http://registry\\.gpii\\.net/common/speechRate",
                        "ENU-PCCursor\\.Rate": "http://registry\\.gpii\\.net/common/speechRate",
                        "ENU-Global\\.Pitch": {
                            "transform": {
                                "type": "fluid.transforms.round",
                                "input": {
                                    "transform": {
                                        "type": "fluid.transforms.linearScale",
                                        "inputPath": "http://registry\\.gpii\\.net/common/pitch",
                                        "factor": 99,
                                        "offset": 1
                                    }
                                }
                            }
                        },
                        "ENU-JAWSCursor\\.Pitch": {
                            "transform": {
                                "type": "fluid.transforms.round",
                                "input": {
                                    "transform": {
                                        "type": "fluid.transforms.linearScale",
                                        "inputPath": "http://registry\\.gpii\\.net/common/pitch",
                                        "factor": 99,
                                        "offset": 1
                                    }
                                }
                            }
                        },
                        "ENU-Keyboard\\.Pitch": {
                            "transform": {
                                "type": "fluid.transforms.round",
                                "input": {
                                    "transform": {
                                        "type": "fluid.transforms.linearScale",
                                        "inputPath": "http://registry\\.gpii\\.net/common/pitch",
                                        "factor": 99,
                                        "offset": 1
                                    }
                                }
                            }
                        },
                        "ENU-MenuAndDialog\\.Pitch": {
                            "transform": {
                                "type": "fluid.transforms.round",
                                "input": {
                                    "transform": {
                                        "type": "fluid.transforms.linearScale",
                                        "inputPath": "http://registry\\.gpii\\.net/common/pitch",
                                        "factor": 99,
                                        "offset": 1
                                    }
                                }
                            }
                        },
                        "ENU-Message\\.Pitch": {
                            "transform": {
                                "type": "fluid.transforms.round",
                                "input": {
                                    "transform": {
                                        "type": "fluid.transforms.linearScale",
                                        "inputPath": "http://registry\\.gpii\\.net/common/pitch",
                                        "factor": 99,
                                        "offset": 1
                                    }
                                }
                            }
                        },
                        "ENU-PCCursor\\.Pitch": {
                            "transform": {
                                "type": "fluid.transforms.round",
                                "input": {
                                    "transform": {
                                        "type": "fluid.transforms.linearScale",
                                        "inputPath": "http://registry\\.gpii\\.net/common/pitch",
                                        "factor": 99,
                                        "offset": 1
                                    }
                                }
                            }
                        },
                        "ENU-Global\\.Volume": {
                            "transform": {
                                "type": "fluid.transforms.linearScale",
                                "inputPath": "http://registry\\.gpii\\.net/common/volume",
                                "factor": 100
                            }
                        },
                        "ENU-JAWSCursor\\.Volume": {
                            "transform": {
                                "type": "fluid.transforms.linearScale",
                                "inputPath": "http://registry\\.gpii\\.net/common/volume",
                                "factor": 100
                            }
                        },
                        "ENU-Keyboard\\.Volume": {
                            "transform": {
                                "type": "fluid.transforms.linearScale",
                                "inputPath": "http://registry\\.gpii\\.net/common/volume",
                                "factor": 100
                            }
                        },
                        "ENU-MenuAndDialog\\.Volume": {
                            "transform": {
                                "type": "fluid.transforms.linearScale",
                                "inputPath": "http://registry\\.gpii\\.net/common/volume",
                                "factor": 100
                            }
                        },
                        "ENU-Message\\.Volume": {
                            "transform": {
                                "type": "fluid.transforms.linearScale",
                                "inputPath": "http://registry\\.gpii\\.net/common/volume",
                                "factor": 100
                            }
                        },
                        "ENU-PCCursor\\.Volume": {
                            "transform": {
                                "type": "fluid.transforms.linearScale",
                                "inputPath": "http://registry\\.gpii\\.net/common/volume",
                                "factor": 100
                            }
                        },
                        "ENU-Global\\.Punctuation": {
                            "transform": {
                                "type": "fluid.transforms.valueMapper",
                                "defaultInputPath": "http://registry\\.gpii\\.net/common/punctuationVerbosity",
                                "match": {
                                    "none": 0,
                                    "some": 1,
                                    "most": 2,
                                    "all": 3
                                }
                            }
                        },
                        "ENU-JAWSCursor\\.Punctuation": {
                            "transform": {
                                "type": "fluid.transforms.valueMapper",
                                "defaultInputPath": "http://registry\\.gpii\\.net/common/punctuationVerbosity",
                                "match": {
                                    "none": 0,
                                    "some": 1,
                                    "most": 2,
                                    "all": 3
                                }
                            }
                        },
                        "ENU-Keyboard\\.Punctuation": {
                            "transform": {
                                "type": "fluid.transforms.valueMapper",
                                "defaultInputPath": "http://registry\\.gpii\\.net/common/punctuationVerbosity",
                                "match": {
                                    "none": 0,
                                    "some": 1,
                                    "most": 2,
                                    "all": 3
                                }
                            }
                        },
                        "ENU-MenuAndDialog\\.Punctuation": {
                            "transform": {
                                "type": "fluid.transforms.valueMapper",
                                "defaultInputPath": "http://registry\\.gpii\\.net/common/punctuationVerbosity",
                                "match": {
                                    "none": 0,
                                    "some": 1,
                                    "most": 2,
                                    "all": 3
                                }
                            }
                        },
                        "ENU-Message\\.Punctuation": {
                            "transform": {
                                "type": "fluid.transforms.valueMapper",
                                "defaultInputPath": "http://registry\\.gpii\\.net/common/punctuationVerbosity",
                                "match": {
                                    "none": 0,
                                    "some": 1,
                                    "most": 2,
                                    "all": 3
                                }
                            }
                        },
                        "ENU-PCCursor\\.Punctuation": {
                            "transform": {
                                "type": "fluid.transforms.valueMapper",
                                "defaultInputPath": "http://registry\\.gpii\\.net/common/punctuationVerbosity",
                                "match": {
                                    "none": 0,
                                    "some": 1,
                                    "most": 2,
                                    "all": 3
                                }
                            }
                        },
                        "ENU-Global\\.SynthLangString": {
                            "transform": {
                                "type": "fluid.transforms.valueMapper",
                                "defaultInputPath": "http://registry\\.gpii\\.net/common/auditoryOutLanguage",
                                "match": {
                                    "en-US": "American English",
                                    "en-GB": "British English",
                                    "fr": "French",
                                    "fr-CA": "French",
                                    "it": "Italian",
                                    "pt-BR": "Brazilian Portuguese",
                                    "de": "German",
                                    "es-US": "Latin American Spanish",
                                    "es-ES": "Castilian Spanish",
                                    "fi": "Finnish"
                                }
                            }
                        },
                        "ENU-JAWSCursor\\.SynthLangString": {
                            "transform": {
                                "type": "fluid.transforms.valueMapper",
                                "defaultInputPath": "http://registry\\.gpii\\.net/common/auditoryOutLanguage",
                                "match": {
                                    "en-US": "American English",
                                    "en-GB": "British English",
                                    "fr": "French",
                                    "fr-CA": "French",
                                    "it": "Italian",
                                    "pt-BR": "Brazilian Portuguese",
                                    "de": "German",
                                    "es-US": "Latin American Spanish",
                                    "es-ES": "Castilian Spanish",
                                    "fi": "Finnish"
                                }
                            }
                        },
                        "ENU-Keyboard\\.SynthLangString": {
                            "transform": {
                                "type": "fluid.transforms.valueMapper",
                                "defaultInputPath": "http://registry\\.gpii\\.net/common/auditoryOutLanguage",
                                "match": {
                                    "en-US": "American English",
                                    "en-GB": "British English",
                                    "fr": "French",
                                    "fr-CA": "French",
                                    "it": "Italian",
                                    "pt-BR": "Brazilian Portuguese",
                                    "de": "German",
                                    "es-US": "Latin American Spanish",
                                    "es-ES": "Castilian Spanish",
                                    "fi": "Finnish"
                                }
                            }
                        },
                        "ENU-MenuAndDialog\\.SynthLangString": {
                            "transform": {
                                "type": "fluid.transforms.valueMapper",
                                "defaultInputPath": "http://registry\\.gpii\\.net/common/auditoryOutLanguage",
                                "match": {
                                    "en-US": "American English",
                                    "en-GB": "British English",
                                    "fr": "French",
                                    "fr-CA": "French",
                                    "it": "Italian",
                                    "pt-BR": "Brazilian Portuguese",
                                    "de": "German",
                                    "es-US": "Latin American Spanish",
                                    "es-ES": "Castilian Spanish",
                                    "fi": "Finnish"
                                }
                            }
                        },
                        "ENU-Message\\.SynthLangString": {
                            "transform": {
                                "type": "fluid.transforms.valueMapper",
                                "defaultInputPath": "http://registry\\.gpii\\.net/common/auditoryOutLanguage",
                                "match": {
                                    "en-US": "American English",
                                    "en-GB": "British English",
                                    "fr": "French",
                                    "fr-CA": "French",
                                    "it": "Italian",
                                    "pt-BR": "Brazilian Portuguese",
                                    "de": "German",
                                    "es-US": "Latin American Spanish",
                                    "es-ES": "Castilian Spanish",
                                    "fi": "Finnish"
                                }
                            }
                        },
                        "ENU-PCCursor\\.SynthLangString": {
                            "transform": {
                                "type": "fluid.transforms.valueMapper",
                                "defaultInputPath": "http://registry\\.gpii\\.net/common/auditoryOutLanguage",
                                "match": {
                                    "en-US": "American English",
                                    "en-GB": "British English",
                                    "fr": "French",
                                    "fr-CA": "French",
                                    "it": "Italian",
                                    "pt-BR": "Brazilian Portuguese",
                                    "de": "German",
                                    "es-US": "Latin American Spanish",
                                    "es-ES": "Castilian Spanish",
                                    "fi": "Finnish"
                                }
                            }
                        }
                    },
                    "inverseCapabilitiesTransformations": {
                        "http://registry\\.gpii\\.net/common/speechSynthesizer": "Options\\.PrimarySynthesizer",
                        "http://registry\\.gpii\\.net/common/speechRate": "ENU-Global\\.Rate",
                        "http://registry\\.gpii\\.net/common/pitch": {
                            "transform": {
                                "type": "fluid.transforms.linearScale",
                                "inputPath": "ENU-Global\\.Pitch",
                                "factor": 0.010101,
                                "offset": -0.010101
                            }
                        },
                        "http://registry\\.gpii\\.net/common/volume": {
                            "transform": {
                                "type": "fluid.transforms.linearScale",
                                "inputPath": "ENU-Global\\.Volume",
                                "factor": 0.01
                            }
                        },
                        "http://registry\\.gpii\\.net/common/punctuationVerbosity": {
                            "transform": {
                                "type": "fluid.transforms.valueMapper",
                                "defaultInputPath": "ENU-Global\\.Punctuation",
                                "match": [
                                    {
                                        "inputValue": 0,
                                        "outputValue": "none"
                                    },
                                    {
                                        "inputValue": 1,
                                        "outputValue": "some"
                                    },
                                    {
                                        "inputValue": 2,
                                        "outputValue": "most"
                                    },
                                    {
                                        "inputValue": 3,
                                        "outputValue": "all"
                                    }
                                ]
                            }
                        },
                        "http://registry\\.gpii\\.net/common/auditoryOutLanguage": {
                            "transform": {
                                "type": "fluid.transforms.valueMapper",
                                "defaultInputPath": "ENU-Global\\.SynthLangString",
                                "match": {
                                    "American English": "en-US",
                                    "British English": "en-GB",
                                    "French": "fr",
                                    "Italian": "it",
                                    "Brazilian Portuguese": "pt-BR",
                                    "German": "de",
                                    "Latin American Spanish": "es-US",
                                    "Castilian Spanish": "es-ES",
                                    "Finnish": "fi"
                                }
                            }
                        }
                    }
                }
            },
            "launchHandlers": {
                "launcher": {
                    "type": "gpii.launchHandlers.flexibleHandler",
                    "options": {
                        "verifySettings": true,
                        "retryOptions": {
                            "rewriteEvery": 0,
                            "numRetries": 20
                        },
                        "getState": [
                            {
                                "type": "gpii.processReporter.find",
                                "command": "jfw.exe"
                            }
                        ],
                        "setTrue": [
                            {
                                "type": "gpii.launch.exec",
                                "command": "\"${{registry}.HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\App Paths\\JAWS2018.exe\\}\""
                            }
                        ],
                        "setFalse": [
                            {
                                "type": "gpii.windows.closeProcessByName",
                                "filename": "jfw.exe"
                            },
                            {
                                "type": "gpii.windows.closeProcessByName",
                                "filename": "fsSynth32.exe"
                            },
                            {
                                "type": "gpii.windows.closeProcessByName",
                                "filename": "jhookldr.exe"
                            },
                            {
                                "type": "gpii.windows.closeProcessByName",
                                "filename": "ScannerHandler.exe"
                            }
                        ]
                    }
                }
            },
            "isInstalled": [
                {
                    "type": "gpii.deviceReporter.registryKeyExists",
                    "hKey": "HKEY_LOCAL_MACHINE",
                    "path": "Software\\Microsoft\\Windows\\CurrentVersion\\App Paths\\JAWS2018.exe",
                    "subPath": "",
                    "dataType": "REG_SZ"
                }
            ]
        },

        "org.nvda-project": {
            "name": "NVDA Screen Reader",
            "contexts": {
                "OS": [
                    {
                        "id": "win32",
                        "version": ">=5.0"
                    }
                ]
            },
            "settingsHandlers": {
                "configs": {
                    "type": "gpii.settingsHandlers.INISettingsHandler",
                    "liveness": "manualRestart",
                    "options": {
                        "filename": "${{environment}.APPDATA}\\nvda\\nvda.ini"
                    },
                    "supportedSettings": {
                        "speech.espeak.pitch": {},
                        "speech.espeak.volume": {},
                        "presentation.reportHelpBalloons": {},
                        "keyboard.speakTypedCharacters": {},
                        "keyboard.speakTypedWords": {},
                        "speech.espeak.sayCapForCapitals": {},
                        "reviewCursor.followFocus": {},
                        "reviewCursor.followCaret": {},
                        "reviewCursor.followMouse": {},
                        "speech.synth": {},
                        "speech.outputDevice": {},
                        "speech.espeak.rate": {},
                        "speech.espeak.rateBoost": {},
                        "speech.symbolLevel": {},
                        "speech.espeak.voice": {}
                    },
                    "capabilitiesTransformations": {
                        "speech\\.espeak\\.pitch": {
                            "transform": {
                                "type": "fluid.transforms.linearScale",
                                "inputPath": "http://registry\\.gpii\\.net/common/pitch",
                                "factor": 100
                            }
                        },
                        "speech\\.espeak\\.volume": {
                            "transform": {
                                "type": "fluid.transforms.linearScale",
                                "inputPath": "http://registry\\.gpii\\.net/common/volumeTTS",
                                "factor": 100
                            }
                        },
                        "presentation\\.reportHelpBalloons": "http://registry\\.gpii\\.net/common/speakTutorialMessages",
                        "keyboard\\.speakTypedCharacters": "http://registry\\.gpii\\.net/common/keyEcho",
                        "keyboard\\.speakTypedWords": "http://registry\\.gpii\\.net/common/wordEcho",
                        "speech\\.espeak\\.sayCapForCapitals": "http://registry\\.gpii\\.net/common/announceCapitals",
                        "transform": [
                            {
                                "type": "fluid.transforms.arrayToSetMembership",
                                "inputPath": "http://registry\\.gpii\\.net/common/trackingTTS",
                                "outputPath": "",
                                "presentValue": true,
                                "missingValue": false,
                                "options": {
                                    "focus": "reviewCursor\\.followFocus",
                                    "caret": "reviewCursor\\.followCaret",
                                    "mouse": "reviewCursor\\.followMouse"
                                }
                            },
                            {
                                "type": "fluid.transforms.valueMapper",
                                "defaultInputPath": "http://registry\\.gpii\\.net/common/screenReaderTTS/enabled",
                                "match": {
                                    "false": {
                                        "outputValue": {
                                            "transform": [
                                                {
                                                    "type": "fluid.transforms.literalValue",
                                                    "input": "silence",
                                                    "outputPath": "speech\\.synth"
                                                },
                                                {
                                                    "type": "fluid.transforms.literalValue",
                                                    "input": "Microsoft Sound Mapper",
                                                    "outputPath": "speech\\.outputDevice"
                                                }
                                            ]
                                        }
                                    }
                                }
                            }
                        ],
                        "speech\\.espeak\\.rate": {
                            "transform": {
                                "type": "fluid.transforms.round",
                                "input": {
                                    "transform": {
                                        "type": "fluid.transforms.binaryOp",
                                        "right": 3.10,
                                        "operator": "/",
                                        "left": {
                                            "transform": {
                                                "type": "fluid.transforms.binaryOp",
                                                "right": 80,
                                                "operator": "-",
                                                "left": {
                                                    "transform": {
                                                        "type": "fluid.transforms.condition",
                                                        "truePath": "http://registry\\.gpii\\.net/common/speechRate",
                                                        "false": {
                                                            "transform": {
                                                                "type": "fluid.transforms.binaryOp",
                                                                "leftPath": "http://registry\\.gpii\\.net/common/speechRate",
                                                                "operator": "/",
                                                                "right": 3
                                                            }
                                                        },
                                                        "condition": {
                                                            "transform": {
                                                                "type": "fluid.transforms.binaryOp",
                                                                "leftPath": "http://registry\\.gpii\\.net/common/speechRate",
                                                                "operator": "<=",
                                                                "right": 390
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        },
                        "speech\\.espeak\\.rateBoost": {
                            "transform": {
                                "type": "fluid.transforms.binaryOp",
                                "leftPath": "http://registry\\.gpii\\.net/common/speechRate",
                                "operator": ">",
                                "right": 390
                            }
                        },
                        "speech\\.symbolLevel": {
                            "transform": {
                                "type": "fluid.transforms.valueMapper",
                                "defaultInputPath": "http://registry\\.gpii\\.net/common/punctuationVerbosity",
                                "match": {
                                    "none": 0,
                                    "some": 100,
                                    "most": 200,
                                    "all": 300
                                }
                            }
                        },
                        "speech\\.espeak\\.voice": {
                            "transform": {
                                "type": "fluid.transforms.valueMapper",
                                "defaultInputPath": "http://registry\\.gpii\\.net/common/auditoryOutLanguage",
                                "match": {
                                    "en": "en-us",
                                    "en-GB": "en-gb",
                                    "en-US": "en-us",
                                    "en-scotland": "en-gb-scotland",
                                    "af": "af",
                                    "bg": "bg",
                                    "bs": "bs",
                                    "ca": "ca",
                                    "cs": "cs",
                                    "cy": "cy",
                                    "da": "da",
                                    "de": "de",
                                    "el": "el",
                                    "eo": "eo",
                                    "es": "es",
                                    "es-419": "es-la",
                                    "et": "et",
                                    "fi": "fi",
                                    "fr": "fr",
                                    "fr-BE": "fr-be",
                                    "hi": "hi",
                                    "hr": "hr",
                                    "hu": "hu",
                                    "hy": "hy",
                                    "hy-arevmda": "hy-west",
                                    "id": "id",
                                    "is": "is",
                                    "it": "it",
                                    "ka": "ka",
                                    "kn": "kn",
                                    "ku": "ku",
                                    "la": "la",
                                    "lv": "lv",
                                    "mk": "mk",
                                    "ml": "ml",
                                    "nl": "nl",
                                    "no": "no",
                                    "pl": "pl",
                                    "pt-BR": "pt",
                                    "pt-PT": "pt-pt",
                                    "ro": "ro",
                                    "ru": "ru",
                                    "sk": "sk",
                                    "sq": "sq",
                                    "sr": "sr",
                                    "sv": "sv",
                                    "sw": "sw",
                                    "ta": "ta",
                                    "tr": "tr",
                                    "vi": "vi",
                                    "zh-cmn": "zh",
                                    "cmn": "zh",
                                    "zh-yue": "zh-yue"
                                },
                                "noMatch":  {
                                    "outputValue": "en-us"
                                }
                            }
                        }
                    },
                    "inverseCapabilitiesTransformations": {
                        "http://registry\\.gpii\\.net/common/speakTutorialMessages": "presentation\\.reportHelpBalloons",
                        "http://registry\\.gpii\\.net/common/keyEcho": "keyboard\\.speakTypedCharacters",
                        "http://registry\\.gpii\\.net/common/wordEcho": "keyboard\\.speakTypedWords",
                        "http://registry\\.gpii\\.net/common/announceCapitals": "speech\\.espeak\\.sayCapForCapitals",
                        "transform": [
                            {
                                "type": "fluid.transforms.valueMapper",
                                "defaultInputPath": "virtualBuffers\\.autoSayAllOnPageLoad.value",
                                "defaultOutputPath": "http://registry\\.gpii\\.net/common/readingUnit",
                                "match": {
                                    "true": "all",
                                    "false": "sentence"
                                }
                            },
                            {
                                "type": "fluid.transforms.setMembershipToArray",
                                "inputPath": "",
                                "outputPath": "http://registry\\.gpii\\.net/common/trackingTTS",
                                "presentValue": true,
                                "missingValue": false,
                                "options": {
                                    "reviewCursor\\.followFocus": "focus",
                                    "reviewCursor\\.followCaret": "caret",
                                    "reviewCursor\\.followMouse": "mouse"
                                }
                            },
                            {
                                "type": "fluid.transforms.valueMapper",
                                "defaultOutputPath": "http://registry\\.gpii\\.net/common/punctuationVerbosity",
                                "defaultInputPath": "speech\\.symbolLevel",
                                "match": {
                                    "0": "none",
                                    "100": "some",
                                    "200": "most",
                                    "300": "all"
                                }
                            },
                            {
                                "type": "fluid.transforms.condition",
                                "outputPath": "http://registry\\.gpii\\.net/common/screenReaderTTS/enabled",
                                "false": true,
                                "true": false,
                                "condition": {
                                    "transform": {
                                        "type": "fluid.transforms.binaryOp",
                                        "left": {
                                            "transform": {
                                                "type": "fluid.transforms.binaryOp",
                                                "leftPath": "speech\\.synth",
                                                "operator": "===",
                                                "right": "silence"
                                            }
                                        },
                                        "right": {
                                            "transform": {
                                                "type": "fluid.transforms.binaryOp",
                                                "leftPath": "speech\\.outputDevice",
                                                "operator": "===",
                                                "right": "Microsoft Sound Mapper"
                                            }
                                        },
                                        "operator": "&&"
                                    }
                                }
                            },
                            {
                                "type": "fluid.transforms.condition",
                                "outputPath": "http://registry\\.gpii\\.net/common/speechRate",
                                "condition": {
                                    "transform": {
                                        "type": "fluid.transforms.binaryOp",
                                        "right": true,
                                        "operator": "===",
                                        "leftPath": "speech\\.espeak\\.rateBoost"
                                    }
                                },
                                "false": {
                                    "transform": {
                                        "type": "fluid.transforms.linearScale",
                                        "inputPath": "speech\\.espeak\\.rate",
                                        "factor": 3.1,
                                        "offset": 80
                                    }
                                },
                                "true": {
                                    "transform": {
                                        "type": "fluid.transforms.binaryOp",
                                        "left": {
                                            "transform": {
                                                "type": "fluid.transforms.linearScale",
                                                "inputPath": "speech\\.espeak\\.rate",
                                                "factor": 3.1,
                                                "offset": 80
                                            }
                                        },
                                        "operator": "*",
                                        "right": 3
                                    }
                                }
                            },
                            {
                                "type": "fluid.transforms.valueMapper",
                                "defaultInputPath": "speech\\.espeak\\.voice",
                                "defaultOutputPath": "http://registry\\.gpii\\.net/common/auditoryOutLanguage",
                                "match": {
                                    "en\\en": "en",
                                    "en\\en-us": "en-US",
                                    "en\\en-sc": "en-scotland",
                                    "en\\en-wi": "en-BZ",
                                    "af": "af",
                                    "bg": "bg",
                                    "bs": "bs",
                                    "ca": "ca",
                                    "cs": "cs",
                                    "cy": "cy",
                                    "da": "da",
                                    "de": "de",
                                    "el": "el",
                                    "test\\grc": "grc",
                                    "eo": "eo",
                                    "es": "es",
                                    "es-la": "es-419",
                                    "et": "et",
                                    "fi": "fi",
                                    "fr": "fr",
                                    "fr-be": "fr-BE",
                                    "hi": "hi",
                                    "hr": "hr",
                                    "hu": "hu",
                                    "hy": "hy",
                                    "hy-west": "hy-arevmda",
                                    "id": "id",
                                    "is": "is",
                                    "it": "it",
                                    "test\\jbo": "jbo",
                                    "ka": "ka",
                                    "kn": "kn",
                                    "ku": "ku",
                                    "la": "la",
                                    "lv": "lv",
                                    "mk": "mk",
                                    "ml": "ml",
                                    "test\\nci": "nci",
                                    "nl": "nl",
                                    "no": "no",
                                    "test\\pap": "pap",
                                    "pl": "pl",
                                    "pt": "pt-BR",
                                    "pt-pt": "pt-PT",
                                    "ro": "ro",
                                    "ru": "ru",
                                    "sk": "sk",
                                    "sq": "sq",
                                    "sr": "sr",
                                    "sv": "sv",
                                    "sw": "sw",
                                    "ta": "ta",
                                    "tr": "tr",
                                    "vi": "vi",
                                    "zh": "zh-cmn",
                                    "zh-yue": "zh-yue"
                                }
                            }
                        ]
                    }
                }
            },
            "launchHandlers": {
                "launcher": {
                    "type": "gpii.launchHandlers.flexibleHandler",
                    "options": {
                        "verifySettings": true,
                        "retryOptions": {
                            "rewriteEvery": 0,
                            "numRetries": 20
                        },
                        "getState": [
                            {
                                "type": "gpii.processReporter.find",
                                "command": "nvda.exe"
                            }
                        ],
                        "setTrue": [
                            {
                                "type": "gpii.launch.exec",
                                "command": "\"${{registry}.HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\App Paths\\nvda.exe\\}\""
                            }
                        ],
                        "setFalse": [
                            {
                                "type": "gpii.windows.closeProcessByName",
                                "filename": "nvda_service.exe"
                            },
                            {
                                "type": "gpii.windows.closeProcessByName",
                                "filename": "nvda.exe"
                            }
                        ]
                    }
                }
            },
            "isInstalled": [
                {
                    "type": "gpii.deviceReporter.registryKeyExists",
                    "hKey": "HKEY_LOCAL_MACHINE",
                    "path": "Software\\Microsoft\\Windows\\CurrentVersion\\App Paths\\nvda.exe",
                    "subPath": "",
                    "dataType": "REG_SZ"
                }
            ]
        }
    }
}
