{
    "com.android.freespeech": {
        "name": "FreeSpeech",
        "contexts": {
            "OS": [
                {
                    "id": "android",
                    "version": ">=0.1"
                }
            ]
        },
        "capabilities": [
            "http://registry\\.gpii\\.net/common/screenReaderTTS/enabled"
        ],
        "launchHandlers": {
            "launcher": {
                "type": "gpii.launchHandlers.flexibleHandler",
                "liveness": "manualRestart",
                "options": {
                    "setTrue": {
                        "type": "gpii.androidActivityManager.startFreespeech"
                    },
                    "getState": [
                        {
                            "type": "gpii.processReporter.neverRunning"
                        }
                    ]
                }
            }
        },
        "start": [
            "launchers.launcher"
        ],
        "isRunning": [
            "launchers.launcher"
        ]
    },
    "com.android.talkback": {
        "name": "TalkBack Screen Reader",
        "contexts": {
            "OS": [
                {
                    "id": "android",
                    "version": ">=0.1"
                }
            ]
        },
        "capabilities": [
            "http://registry\\.gpii\\.net/common/screenReaderTTS/enabled"
        ],
        "launchHandlers": {
            "launcher": {
                "type": "gpii.launchHandlers.flexibleHandler",
                "options": {
                    "setTrue": {
                        "type": "gpii.androidActivityManager.startTalkback"
                    },
                    "setFalse": {
                        "type": "gpii.androidActivityManager.stopTalkback"
                    },
                    "getState": [
                        {
                            "type": "gpii.processReporter.neverRunning"
                        }
                    ]
                }
            }
        }
    },
    "com.android.persistentConfiguration": {
        "name": "Android Configuration",
        "contexts": {
            "OS": [
                {
                    "id": "android",
                    "version": ">=0.1"
                }
            ]
        },
        "settingsHandlers": {
            "configuration": {
                "type": "gpii.androidPersistentConfiguration",
                "supportedSettings": {
                    "fontScale": {
                        "schema": {
                            "type": "number"
                        }
                    },
                    "locale": {
                        "schema": {
                            "type": "string"
                        }
                    }
                },
                "liveness": "live",
                "capabilitiesTransformations": {
                    "fontScale": {
                        "transform": {
                            "type": "fluid.transforms.binaryOp",
                            "leftPath": "http://registry\\.gpii\\.net/common/fontSize",
                            "operator": "/",
                            "right": 12
                        }
                    },
                    "locale": {
                        "transform": {
                            "type": "fluid.transforms.valueMapper",
                            "defaultInputPath": "http://registry\\.gpii\\.net/common/language",
                            "match": {
                                "en": "en",
                                "en-GB": "en_GB",
                                "en-US": "en_US",
                                "en-BZ": "en_GB",
                                "en-BS": "en_GB",
                                "en-AG": "en_GB",
                                "en-AI": "en_GB",
                                "af": "af",
                                "bg": "bg_BG",
                                "bs": "bs",
                                "ca": "ca_ES",
                                "cs": "cs_CZ",
                                "cy": "cy",
                                "da": "da_DK",
                                "de": "de_DE",
                                "el": "el_GR",
                                "grc": "el_GR",
                                "eo": "eo",
                                "es": "es_ES",
                                "es-ES": "es_ES",
                                "es-419": "es_ES",
                                "et": "et",
                                "fi": "fi_FI",
                                "fr": "fr_FR",
                                "fr-BE": "fr_BE",
                                "hi": "hi_IN",
                                "hr": "hr_HR",
                                "hu": "hu_HU",
                                "hy": "hy",
                                "hy-arevmda": "hy",
                                "id": "id_ID",
                                "is": "is",
                                "it": "it_IT",
                                "ka": "ka",
                                "kn": "kn",
                                "ku": "ku",
                                "la": "la",
                                "lv": "lv_LV",
                                "mk": "mk",
                                "ml": "ml",
                                "nl": "nl_NL",
                                "no": "nb_NO",
                                "pl": "pl_PL",
                                "pt-BR": "pt_BR",
                                "pt-PT": "pt_PT",
                                "ro": "ro_RO",
                                "ru": "ru_RU",
                                "sk": "sk_SK",
                                "sq": "sq",
                                "sr": "sr_RS",
                                "sv": "sv_SE",
                                "sw": "ss",
                                "ta": "ta",
                                "tr": "tr_TR",
                                "vi": "vi_VN",
                                "zh-cmn": "zh_CN",
                                "cmn": "zh_CN"
                            }
                        }
                    }
                },
                "inverseCapabilitiesTransformations": {}
            }
        }
    },
    "com.android.audioManager": {
        "name": "Android Audio Manager",
        "contexts": {
            "OS": [
                {
                    "id": "android",
                    "version": ">=0.1"
                }
            ]
        },
        "settingsHandlers": {
            "configuration": {
                "type": "gpii.androidAudioManager.volume",
                "liveness": "live",
                "supportedSettings": {
                    "STREAM_MUSIC": {
                        "schema": {
                            "title": "Music Volume",
                            "description": "Music volume.",
                            "type": "number"
                        }
                    },
                    "STREAM_SYSTEM": {
                        "schema": {
                            "title": "System Volume",
                            "description": "System volume.",
                            "type": "number"
                        }

                    }
                },
                "capabilitiesTransformations": {
                    "STREAM_MUSIC": {
                        "transform": {
                            "type": "fluid.transforms.round",
                            "input": {
                                "transform": {
                                    "type": "fluid.transforms.linearScale",
                                    "inputPath": "http://registry\\.gpii\\.net/common/volumeTTS",
                                    "factor": 15
                                }
                            }
                        }
                    },
                    "STREAM_SYSTEM": {
                        "transform": {
                            "type": "fluid.transforms.round",
                            "input": {
                                "transform": {
                                    "type": "fluid.transforms.linearScale",
                                    "inputPath": "http://registry\\.gpii\\.net/common/volume",
                                    "factor": 7
                                }
                            }
                        }
                    }
                },
                "inverseCapabilitiesTransformations": {}
            }
        }
    },
    "com.android.settings.system": {
        "name": "Android UI Settings.System",
        "contexts": {
            "OS": [
                {
                    "id": "android",
                    "version": ">=0.1"
                }
            ]
        },
        "settingsHandlers": {
            "configuration": {
                "type": "gpii.androidSettings",
                "liveness": "live",
                "options": {
                    "settingType": "System"
                },
                "supportedSettings": {
                    "dim_screen": {
                        "schema": { "type":  "boolean" }
                    },
                    "haptic_feedback_enabled": {
                        "schema": { "type":  "boolean" }
                    },
                    "accelerometer_rotation": {
                        "schema": { "type":  "boolean" }
                    },
                    "user_rotation": {
                        "schema": { "type":  "integer" }
                    },
                    "screen_off_timeout": {
                        "schema": { "type":  "integer" }
                    }
                },
                "capabilitiesTransformations": {},
                "inverseCapabilitiesTransformations": {}
            }
        }
    },
    "com.android.settings.secure": {
        "name": "Android UI Settings Secure",
        "contexts": {
            "OS": [
                {
                    "id": "android",
                    "version": ">=0.1"
                }
            ]
        },
        "settingsHandlers": {
            "configuration": {
                "type": "gpii.androidSettings",
                "liveness": "live",
                "options": {
                    "settingType": "Secure"
                },
                "supportedSettings": {
                    "tts_default_pitch": {
                        "schema": { "type":  "number" }
                    },
                    "tts_default_rate": {
                        "schema": { "type":  "number" }
                    }
                },
                "capabilitiesTransformations": {
                    "tts_default_pitch": {
                        "transform": {
                            "type": "fluid.transforms.round",
                            "input": {
                                "transform": {
                                    "type": "fluid.transforms.linearScale",
                                    "inputPath": "http://registry\\.gpii\\.net/common/pitch",
                                    "factor": 500
                                }
                            }
                        }
                    },
                    "tts_default_rate": {
                        "transform": {
                            "type": "fluid.transforms.round",
                            "input": {
                                "transform": {
                                    "type": "fluid.transforms.binaryOp",
                                    "left": 21.753,
                                    "operator": "-",
                                    "right": {
                                        "transform": {
                                            "type": "fluid.transforms.binaryOp",
                                            "left": {
                                                "transform": {
                                                    "type": "fluid.transforms.binaryOp",
                                                    "left": 0.0317,
                                                    "operator": "*",
                                                    "rightPath": "http://registry\\.gpii\\.net/common/speechRate"
                                                }
                                            },
                                            "operator": "-",
                                            "right": {
                                                "transform": {
                                                    "type": "fluid.transforms.binaryOp",
                                                    "left": "0.0042",
                                                    "operator": "*",
                                                    "right": {
                                                        "transform": {
                                                            "type": "fluid.transforms.binaryOp",
                                                            "leftPath": "http://registry\\.gpii\\.net/common/speechRate",
                                                            "operator": "*",
                                                            "rightPath": "http://registry\\.gpii\\.net/common/speechRate"
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                },
                "inverseCapabilitiesTransformations": {}
            }
        }
    },
    "se.omnitor.ecmobile": {
        "name": "Omnitor eCtouch/eCmobile",
        "contexts": {
            "OS": [
                {
                    "id": "android",
                    "version": ">=0.1"
                }
            ]
        },
        "settingsHandlers": {
            "configuration": {
                "type": "gpii.settingsHandlers.XMLHandler",
                "liveness": "manualRestart",
                "supportedSettings": {
                    "map.string.fontsize.$t": {},
                    "map.string.theme.$t": {}
                },
                "options": {
                    "filename": "/sdcard/output.xml",
                    "encoding": "utf-8",
                    "xml-tag": "<?xml version='1.0' encoding='utf-8' standalone='yes' ?>",
                    "rules": {
                        "map": "map",
                        "map.string": {
                            "transform": {
                                "type": "fluid.transforms.arrayToObject",
                                "inputPath": "map.string",
                                "key": "name"
                            }
                        }
                    }
                },
                "capabilitiesTransformations": {
                    "map\\.string\\.fontsize\\.$t": {
                        "transform": {
                            "type": "fluid.transforms.linearScale",
                            "inputPath": "http://registry\\.gpii\\.net/common/fontSize",
                            "factor": 2
                        }
                    },
                    "map\\.string\\.theme\\.$t": {
                        "transform": {
                            "type": "fluid.transforms.condition",
                            "conditionPath": "http://registry\\.gpii\\.net/common/highContrast/enabled",
                            "true": "yellow-black",
                            "truePath": "http://registry\\.gpii\\.net/common/highContrastTheme",
                            "false": "none"
                        }
                    }
                },
                "inverseCapabilitiesTransformations": {}
            }
        },
        "launchHandlers": {
            "launcher": {
                "type": "gpii.launchHandlers.flexibleHandler",
                "options": {
                    "setTrue": {
                        "type": "gpii.androidActivityManager.startActivityByPackageName",
                        "packageName": "se.omnitor.ecmobile"
                    },
                    "setFalse": [
                        {
                            "type": "gpii.androidActivityManager.stopActivityByPackageName",
                            "packageName": "se.omnitor.ecmobile"
                        },
                        {
                            "type": "gpii.androidActivityManager.goToHomeScreen"
                        }
                    ],
                    "getState": [
                        {
                            "type": "gpii.processReporter.neverRunning"
                        }
                    ]
                }
            }
        }
    },
    "es.codefactory.android.app.ma": {
        "name": "Mobile Accessibility",
        "contexts": {
            "OS": [
                {
                    "id": "android",
                    "version": ">=0.1"
                }
            ]
        },
        "settingsHandlers": {
            "configuration": {
                "type": "gpii.settingsHandlers.noSettings",
                "liveness": "live",
                "supportedSettings": {
                    "MA_CLOUD4ALL_USER": {
                        "schema": {
                            "type": "object",
                            "properties": {
                                "type": {
                                    "type": "string"
                                },
                                "value": {
                                    "type": "string"
                                }
                            }
                        }
                    },
                    "access_commonprefs_speechrate": {
                        "schema": {
                            "type": "object",
                            "properties": {
                                "type": {
                                    "type": "string"
                                },
                                "value": {
                                    "type": "string"
                                }
                            }
                        }
                    },
                    "access_commonprefs_speechpitch": {
                        "schema": {
                            "type": "object",
                            "properties": {
                                "type": {
                                    "type": "string"
                                },
                                "value": {
                                    "type": "string"
                                }
                            }
                        }
                    },
                    "access_commonprefs_editingkeyboardecho": {
                        "schema": {
                            "type": "object",
                            "properties": {
                                "type": {
                                    "type": "string"
                                },
                                "value": {
                                    "type": "string"
                                }
                            }
                        }
                    },
                    "access_commonprefs_punctuation": {
                        "schema": {
                            "type": "object",
                            "properties": {
                                "type": {
                                    "type": "string"
                                },
                                "value": {
                                    "type": "string"
                                }
                            }
                        }
                    },
                    "access_commonprefs_capitalization": {
                        "schema": {
                            "type": "object",
                            "properties": {
                                "type": {
                                    "type": "string"
                                },
                                "value": {
                                    "type": "string"
                                }
                            }
                        }
                    }
                },
                "capabilitiesTransformations": {
                    "access_commonprefs_speechrate": {
                        "transform": {
                            "type": "fluid.transforms.binaryOp",
                            "leftPath": "http://registry\\.gpii\\.net/common/speechRate",
                            "operator": "/",
                            "right": 40
                        }
                    },
                    "access_commonprefs_speechpitch": {
                        "transform": {
                            "type": "fluid.transforms.binaryOp",
                            "leftPath": "http://registry\\.gpii\\.net/common/pitch",
                            "operator": "*",
                            "right": 10
                        }
                    },
                    "access_commonprefs_editingkeyboardecho": {
                        "transform": {
                            "type": "fluid.transforms.condition",
                            "conditionPath": "http://registry\\.gpii\\.net/common/keyEcho",
                            "true": {
                                "transform": {
                                    "type": "fluid.transforms.condition",
                                    "conditionPath": "http://registry\\.gpii\\.net/common/wordEcho",
                                    "true": "3",
                                    "false": "1"
                                }
                            },
                            "false": {
                                "transform": {
                                    "type": "fluid.transforms.condition",
                                    "conditionPath": "http://registry\\.gpii\\.net/common/wordEcho",
                                    "true": "2",
                                    "false": "0"
                                }
                            }
                        }
                    },
                    "access_commonprefs_punctuation": "http://registry\\.gpii\\.net/common/punctuationVerbosity",
                    "access_commonprefs_capitalization": "http://registry\\.gpii\\.net/common/announceCapitals"
                },
                "inverseCapabilitiesTransformations": {}
            }
        }
    }
}
