public override JsArray<Translation> synchronousTranslate(JsString domain, JsArray<JsString> keys)
        {
            var domainKeys = translations[domain];
            var response = new JsArray<Translation>();

            if ( domainKeys != null ) {
                for ( var i=0; i<keys.length;i++) {
                    var translation = new Translation();
                    translation.key = keys[i];
                    translation.value = domainKeys[keys[i]];
                    response.push(translation);
                }
            }

            return response;
        }
        private JsArray<Translation> provideTranslations(JsString domain, JsArray<JsString> keys)
        {
            JsArray<Translation> translations = new JsArray<Translation>();
            Translation translation;

            for (int i = 0; i < keys.length; i++) {
                translation = new Translation();
                translation.key = keys[i];
                translation.value = keyValuePairs[keys[i]];
                translations.push(translation);
            }

            return translations;
        }