diff --git a/.README.md.html b/.README.md.html new file mode 100644 index 0000000..6603d29 --- /dev/null +++ b/.README.md.html @@ -0,0 +1,468 @@ + + + + +C:\SVN_folders\MMIG\sources\StarterKit\.README.md.html + + + + + + + + + + +

MMIR Starter Kit

+

MMIR - Multimodal Mobile Interaction and Rendering framework

+
+

This StarterKit is a small example application for the MMIR framework that can run locally in an (HTML5 capable) internet browser, and using the Cordova framework, it can also be run as an Android app.

+

This is an ALPHA version for the MMIR framework (CAUTION: significant parts of the framework -- such as the API, used technology etc. -- may still be subject to change)

+

As a goal, this frameworks aims to provide a lightweight multi-modal dialog manager that -- for instance -- can run on mobile devices. The base technology is HTML5 (JavaScript).

+

A base principle is the MVC (Model View Controller) pattern. The framework provides a template mechanism similar to JSP (Java Server Pages), ASP (Active Server Pages), and alike.

+

The state of the dialog system can be tracked and manipulated based on a finite-state machine (FSM). This is realized using SCXML (State Chart XML) with SCION, a JavaScript based interpreter for SCXML files.

+

The StarterKit provides basic capabilities for recognizing speech input (ASR, using the Google Speech Recognition service), and speech output (TTS, using MARY). Note however, that there are some restrictions for running the StarterKit in a browser environment:

+ +
+

If not stated otherwise, the code, resource files etc. is provided under the MIT license (see license file).

+ + diff --git a/.project b/.project index 0d9425f..e2c207a 100644 --- a/.project +++ b/.project @@ -1,6 +1,6 @@ - StarterKit-public + MMIG-StarterKit diff --git a/AndroidManifest.xml b/AndroidManifest.xml index 589e879..bdd72c3 100644 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml @@ -35,7 +35,7 @@ android:name="de.dfki.iui.mmig.MMIGAppActivity" android:configChanges="orientation|keyboardHidden" android:label="@string/app_name" - android:launchMode="singleInstance" > + android:launchMode="singleTask" > diff --git a/README.md b/README.md index e850ec1..8dbe261 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ MMIR - Multimodal Mobile Interaction and Rendering framework ---- -This StarterKit is a small example application for the MMIR framework that can run locally in an (HTML5 capable) internet browser, and using the Cordova framework (http://cordova.apache.org/), it can also be run as an Android app. +This StarterKit is a small example application for the MMIR framework that can run locally in an (HTML5 capable) internet browser, and using the [Cordova framework][0], it can also be run as an Android app. This is an ALPHA version for the MMIR framework (CAUTION: significant parts of the framework -- such as the API, used technology etc. -- may still be subject to change) @@ -14,10 +14,17 @@ As a goal, this frameworks aims to provide a lightweight multi-modal dialog mana A base principle is the MVC (Model View Controller) pattern. The framework provides a template mechanism similar to JSP (Java Server Pages), ASP (Active Server Pages), and alike. -The state of the dialog system can be tracked and manipulated based on a finite-state machine (FSM). This is realized using SCXML (State Chart XML) with SCION (https://github.com/jbeard4/SCION), a JavaScript based interpreter for SCXML files. +The state of the dialog system can be tracked and manipulated based on a finite-state machine (FSM). This is realized using SCXML (State Chart XML) with [SCION][1], a JavaScript based interpreter for SCXML files. -The StarterKit provides basic capabilities for recognizing speech input (ASR, using the Google Speech Recognition service), and speech output (TTS, using MARY http://mary.dfki.de/). Note, that for running the StarterKit in a browser environment currently only Google Chrome (version 25.x.x) allows access to the microphone resource for speech input. +The StarterKit provides basic capabilities for recognizing speech input (ASR, using the Google Speech Recognition service), and speech output (TTS, using [MARY][2]). +Note however, that there are some restrictions for running the StarterKit in a browser environment: + * microphone access: currently only Google Chrome (version 21.x.x), and Firefox (version 20.x) allow access to the microphone resource for speech input + * silence detection: currently only Google Chrome (version 25.x.x) and Firefox (version 26.x) provide an implementation for the AudioContext object, which is needed by our implementation for the end-of-speech detection (aka silence detection) ---- -If not stated otherwise, the code, resource files etc. is provided under the MIT license (see the license file). +If not stated otherwise, the code, resource files etc. is provided under the MIT license (see license file). + +[0]: http://cordova.apache.org/ +[1]: https://github.com/jbeard4/SCION +[2]: http://mary.dfki.de/ diff --git a/assets/www/config/configuration.json b/assets/www/config/configuration.json index 2a111bd..cecb2d0 100644 --- a/assets/www/config/configuration.json +++ b/assets/www/config/configuration.json @@ -1,11 +1,12 @@ { "language": "en", + "usePrecompiledViews": "true", "silenceDetectorNoiseTreshold": "0.1", "silenceDetectorPauseCount": "3", "silenceDetectorMinimalSpeachCount": "3", "silenceDetectorResetCount": "15", "HTML5InputSilenceBuffer": "2000000", - "HTML5InputWebSocketAddress": "ws://127.0.0.1:9999", + "HTML5InputWebSocketAddress": "ws://localhost:8347", "HTML5InputSoundPackageSize": "4096", "HTML5InputSilenceDetectorPath": "mmirf/env/media/silenceDetection.js", "HTML5OutputServerBasePath": "http://mary.dfki.de:59125/", diff --git a/assets/www/config/directories.json b/assets/www/config/directories.json index 6ba8750..d98b632 100644 --- a/assets/www/config/directories.json +++ b/assets/www/config/directories.json @@ -1 +1 @@ -{"/controllers":["application.js","calendar.js"],"/views":["application","calendar","layouts"],"/views/application":["login.ehtml","registration.ehtml","welcome.ehtml","~languageMenu.ehtml"],"/views/calendar":["create_appointment.ehtml"],"/views/layouts":["application.ehtml"],"/models":["calendarModel.js","user.js"],"/config":["languages","statedef","configuration.json","directories.json"],"/config/languages":["de","en"],"/config/languages/de":["dictionary.dic","grammar.json","grammar.json.MD5","speaker.json"],"/config/languages/en":["dictionary.dic","speaker.json"],"/config/statedef":["dialogDescriptionSCXML.xml","dialogDescriptionSCXML.xml.MD5","example-view_transitions-dialogDescriptionSCXML.xml","inputDescriptionSCXML.xml","inputDescriptionSCXML.xml.MD5","readme.txt","scxml2js.bat","scxml2js.sh"],"/mmirf/plugins":["beepPlugin.js","cookiePlugin.js","directoryListing.js","multitouchPlugin.js","nativeASR.js","nativeTTS.js","nuance.js","queuePlugin.js","softkeyboard.js","video.js"],"/helpers":["applicationHelper.js"],"/gen/grammar":["de_grammar.js"]} \ No newline at end of file +{"/controllers":["application.js","calendar.js"],"/views":["application","calendar","layouts"],"/views/application":["login.ehtml","registration.ehtml","welcome.ehtml","~languageMenu.ehtml"],"/views/calendar":["create_appointment.ehtml"],"/views/layouts":["application.ehtml"],"/models":["calendarModel.js","user.js"],"/config":["languages","statedef","configuration.json","directories.json"],"/config/languages":["de","en","jp"],"/config/languages/de":["dictionary.dic","grammar.json","grammar.json.MD5","grammar.json_minimal-example","speaker.json"],"/config/languages/en":["dictionary.dic","grammar.json","grammar.json.MD5","grammar.json_disabled","speaker.json"],"/config/languages/jp":["dictionary.dic","grammar.json","grammar.json.MD5","speaker.json"],"/config/statedef":["dialogDescriptionSCXML.xml","dialogDescriptionSCXML.xml.MD5","example-view_transitions-dialogDescriptionSCXML.xml","inputDescriptionSCXML.xml","inputDescriptionSCXML.xml.MD5","readme.txt","scxml2js.bat","scxml2js.sh"],"/mmirf/plugins":["VolumeControl.js","beepPlugin.js","cookiePlugin.js","directoryListing.js","multitouchPlugin.js","nativeTTS.js","nuance.js","queuePlugin.js","softkeyboard.js","video.js"],"/helpers":["applicationHelper.js"],"/gen/grammar":["de_grammar.checksum.txt","de_grammar.js","en_grammar.checksum.txt","en_grammar.js","jp_grammar.checksum.txt","jp_grammar.js"],"/gen/views":[]} \ No newline at end of file diff --git a/assets/www/config/languages/de/grammar.json b/assets/www/config/languages/de/grammar.json index 6097574..97e6b48 100644 --- a/assets/www/config/languages/de/grammar.json +++ b/assets/www/config/languages/de/grammar.json @@ -1,722 +1,752 @@ { - "comment_license" : "Copyright (C) 2012-2013 DFKI GmbH\nDeutsches Forschungszentrum fuer Kuenstliche Intelligenz\nGerman Research Center \nfor Artificial Intelligence\nhttp://www.dfki.de\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.", - "stop_word": [ - "bitte", - "doch", - "der", - "der", - "die", - "das", - "dem", - "den", - "des", - "diese", - "dieser", - "diesem", - "diesen", - "dieses", - "mir", - "mal", - "jetzt", - "lass", - "m__oe__chte", - "ich", - "bla" - ], - "tokens": { - - "UNDEF_ARTICLE": [ - "ein", - "eine", - "eines", - "einen", - "einer", - "einem" - ], - "PP_MINE": [ - "mein", - "meine", - "meinen" - ], - "V_PLAY_IMP": [ - "spiel", - "spiele" - ], - "V_PLAY_INF": [ - "spielen", - "abspielen", - "h__oe__ren", - "anh__oe__ren", - "erkennen" - ], - "V_PLAY_RADIO_INF": [ - "radioh__oe__ren" - ], - "V_PLAY_FIN": [ - "l__ae__uft", - "spielt", - "abspielt" - ], - "V_SHOW_IMP": [ - "zeig", - "zeige" - ], - "V_SHOW_INF": [ - "zeigen", - "anzeigen" - ], - "V_RECORD_IMP": [ - "nimm", - "nehme" - ], - "V_RECORD_INF": [ - "aufnehmen", - "aufnahme", - "abgeben" - ], - "V_SEND_IMP": [ - "sende", - "send", - "schicke", - "schick", - "poste" - ], - "V_SEND_INF": [ - "schicken", - "senden", - "posten", - "weg damit" - ], - "V_SEND_FIN": [ - "sendet", - "postet" - ], - "V_OPEN_INF": [ - "__oe__ffnen", - "starten" - ], - "V_OPEN_FIN": [ - "__oe__ffnet", - "startet" - ], - "V_FIND_IMP": [ - "scanne", - "suche", - "finde" - ], - "RADAR": [ - "radar", - "scanner" - ], - "RADIO": [ - "radio", - "stream", - "aupeo" - ], - "AUDIOTAG": [ - "audiotag", - "audiotags", - "audionotiz" - ], - "VOICETAG": [ - "voicetag", - "voicetags", - "sprachnotiz", - "kommentar", - "kommentare", - "bewertung", - "bewertungen" - ], - "SOCIAL_NETWORK": [ - "twitter", - "facebook", - "qype", - "voice2social" - ], - "TWEET": [ - "tweet", - "tweeten", - "tweete" - ], - "INFO": [ - "info", - "information", - "informationen", - "daten", - "detail", - "details" - ], - "PREPOSITION": [ - "an", - "um", - "am", - "an", - "im", - "in", - "auf", - "ab", - "f__ue__r", - "nach", - "von", - "vom", - "zum" - ], - "PR_UPTO": [ - "bis" - ], - "WHAT":[ - "was" - ], - "WHERE":[ - "wo" - ], - "POI_CATEGORY": [ - "cafe", - "restaurant", - "bar", - "bars", - "clubs" - ], - "LOCATION_NAME": [ - "mitte", - "sch__oe__neberg", - "berlin", - "moabit", - "berlin hauptbahnhof", - "tiergarten", - "zoo", - "wedding", - "prenzlauer berg", - "fridrichshain", - "kreuzberg", - "charlottenburg", - "spandau", - "wilmersdorf", - "zehlendorf", - "steglitz", - "tempelhof", - "treptow", - "lichtenberg", - "pankow", - "reinickendorf" - ], - "SQUARE":[ - "[a-zA-Z_]+platz", - "([a-zA-Z_]+-)+platz" - ], - "NEAR_TO_ME": [ - "meiner n__ae__he", - "umgebung", - "n__ae__he", - "hier" - ], - "STREET": [ - "[a-zA-Z_]+ str", - "[a-zA-Z_]+ stra__ss__e", - "[a-zA-Z_]+ str.", - "[a-zA-Z_]+str", - "[a-zA-Z_]+stra__ss__e", - "[a-zA-Z_]+str.", - "[a-zA-Z_]+damm" - ], - "MUSIC": [ - "house", - "pop", - "jazz", - "musik", - "meine lieblingsmusik" - ], - "NUMBER": [ - "ein", - "eins", - "zwei", - "drei", - "vier", - "f__ue__nf", - "sechs", - "sieben", - "acht", - "neun", - "zehn", - "elf", - "zw__oe__lf", - "[0-9]+" - ], - "THEME": [ - "thema" - ], - "DATENUMBER": [ - "[0-9]+\\.[0-9]+\\.", - "[0-9]+\\.[0-9]+\\.[0-9]+" - ], - "DATE_VARIABLE": [ - "heute", - "morgen", - "__ue__bermorgen", - "gestern", - "vorgestern" - ], - "PERSON": [ - "vater", - "mutter", - "bruder", - "schwester" - ], - "TIMENUMBER": [ - "[0-9][0-9]?\\:[0-9][0-9]" - ], - "ORDINAL": [ - "[0-9]+\\." - ], - "MONTH": [ - "januar", - "februar", - "m__ae__rz", - "april", - "mai", - "juni", - "juli", - "august", - "september", - "oktober", - "november", - "dezember", - "[1-9]|1[0-2]" - ], - "TIMEWORD": [ - "uhr" - ], - "STARS": [ - "stern", - "sterne" - ], - "MORE": [ - "mehr" - ], - "AGAIN": [ - "nochmal" - ], - "AND": [ - "und" - ], - "ALL": [ - "alle", - "allen", - "alles" - ], - "THAT": [ - "dazu" - ], - "LIKE": [ - "super", - "gef__ae__llt" - ], - "MICRO": [ - "mikro", - "mikrophon", - "mikrofon" - ], - "CAFE": [ - "monopol" - ], - "APPOINTMENTS": [ - "termine" - ], - "APPOINTMENT": [ - "termin" - ], - "CREATE": [ - "erstelle" - ], - "REST": [ - "[a-zA-Z_]+" - ] + "comment_license" : "Copyright (C) 2012-2013 DFKI GmbH\nDeutsches Forschungszentrum fuer Kuenstliche Intelligenz\nGerman Research Center \nfor Artificial Intelligence\nhttp://www.dfki.de\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.", + "example_phrase" : "Radio spielen", + "stop_word": [ + "bitte", + "doch", + "der", + "der", + "die", + "das", + "dem", + "den", + "des", + "diese", + "dieser", + "diesem", + "diesen", + "dieses", + "mir", + "mal", + "jetzt", + "lass", + "m__oe__chte", + "ich", + "bla" + ], + "tokens": { + "UNDEF_ARTICLE": [ + "ein", + "eine", + "eines", + "einen", + "einer", + "einem" + ], + "PP_MINE": [ + "mein", + "meine", + "meinen" + ], + "V_PLAY_IMP": [ + "spiel", + "spiele" + ], + "V_PLAY_INF": [ + "spielen", + "abspielen", + "h__oe__ren", + "anh__oe__ren", + "erkennen" + ], + "V_PLAY_RADIO_INF": [ + "radioh__oe__ren" + ], + "V_PLAY_FIN": [ + "l__ae__uft", + "spielt", + "abspielt" + ], + "V_SHOW_IMP": [ + "zeig", + "zeige" + ], + "V_SHOW_INF": [ + "zeigen", + "anzeigen" + ], + "V_RECORD_IMP": [ + "nimm", + "nehme" + ], + "V_RECORD_INF": [ + "aufnehmen", + "aufnahme", + "abgeben" + ], + "V_SEND_IMP": [ + "sende", + "send", + "schicke", + "schick", + "poste" + ], + "V_SEND_INF": [ + "schicken", + "senden", + "posten", + "weg damit" + ], + "V_SEND_FIN": [ + "sendet", + "postet" + ], + "V_OPEN_INF": [ + "__oe__ffnen", + "starten" + ], + "V_OPEN_FIN": [ + "__oe__ffnet", + "startet" + ], + "V_FIND_IMP": [ + "scanne", + "suche", + "finde" + ], + "RADAR": [ + "radar", + "scanner" + ], + "RADIO": [ + "radio", + "stream", + "aupeo" + ], + "AUDIOTAG": [ + "audiotag", + "audiotags", + "audionotiz" + ], + "VOICETAG": [ + "voicetag", + "voicetags", + "sprachnotiz", + "kommentar", + "kommentare", + "bewertung", + "bewertungen" + ], + "SOCIAL_NETWORK": [ + "twitter", + "facebook", + "qype", + "voice2social" + ], + "TWEET": [ + "tweet", + "tweeten", + "tweete" + ], + "INFO": [ + "info", + "information", + "informationen", + "daten", + "detail", + "details" + ], + "PREPOSITION": [ + "an", + "um", + "am", + "an", + "im", + "in", + "auf", + "ab", + "f__ue__r", + "nach", + "von", + "vom", + "zum" + ], + "PR_UPTO": [ + "bis" + ], + "WHAT": [ + "was" + ], + "WHERE": [ + "wo" + ], + "POI_CATEGORY": [ + "cafe", + "restaurant", + "bar", + "bars", + "clubs" + ], + "LOCATION_NAME": [ + "mitte", + "sch__oe__neberg", + "berlin", + "moabit", + "berlin hauptbahnhof", + "tiergarten", + "zoo", + "wedding", + "prenzlauer berg", + "fridrichshain", + "kreuzberg", + "charlottenburg", + "spandau", + "wilmersdorf", + "zehlendorf", + "steglitz", + "tempelhof", + "treptow", + "lichtenberg", + "pankow", + "reinickendorf" + ], + "SQUARE": [ + "[a-zA-Z_]+platz", + "([a-zA-Z_]+-)+platz" + ], + "NEAR_TO_ME": [ + "meiner n__ae__he", + "umgebung", + "n__ae__he", + "hier" + ], + "STREET": [ + "[a-zA-Z_]+ str", + "[a-zA-Z_]+ stra__ss__e", + "[a-zA-Z_]+ str.", + "[a-zA-Z_]+str", + "[a-zA-Z_]+stra__ss__e", + "[a-zA-Z_]+str.", + "[a-zA-Z_]+damm" + ], + "MUSIC": [ + "house", + "pop", + "jazz", + "musik", + "meine lieblingsmusik" + ], + "NUMBER": [ + "ein", + "eins", + "zwei", + "drei", + "vier", + "f__ue__nf", + "sechs", + "sieben", + "acht", + "neun", + "zehn", + "elf", + "zw__oe__lf", + "[0-9]+" + ], + "THEME": [ + "thema" + ], + "DATENUMBER": [ + "[0-9]+\\.[0-9]+\\.", + "[0-9]+\\.[0-9]+\\.[0-9]+" + ], + "DATE_VARIABLE": [ + "heute", + "morgen", + "__ue__bermorgen", + "gestern", + "vorgestern" + ], + "PERSON": [ + "vater", + "mutter", + "bruder", + "schwester" + ], + "TIMENUMBER": [ + "[0-9][0-9]?\\:[0-9][0-9]" + ], + "ORDINAL": [ + "[0-9]+\\." + ], + "MONTH": [ + "januar", + "februar", + "m__ae__rz", + "april", + "mai", + "juni", + "juli", + "august", + "september", + "oktober", + "november", + "dezember", + "[1-9]|1[0-2]" + ], + "TIMEWORD": [ + "uhr" + ], + "STARS": [ + "stern", + "sterne" + ], + "MORE": [ + "mehr" + ], + "AGAIN": [ + "nochmal" + ], + "AND": [ + "und" + ], + "ALL": [ + "alle", + "allen", + "alles" + ], + "THAT": [ + "dazu" + ], + "LIKE": [ + "super", + "gef__ae__llt" + ], + "MICRO": [ + "mikro", + "mikrophon", + "mikrofon" + ], + "CAFE": [ + "monopol" + ], + "APPOINTMENTS": [ + "termine" + ], + "APPOINTMENT": [ + "termin" + ], + "CREATE": [ + "erstelle" + ], + "REST": [ + "[a-zA-Z_]+" + ] + }, + "utterances": { + "DATE": { + "phrases": [ + "ORDINAL", + "ORDINAL MONTH", + "ORDINAL MONTH NUMBER", + "DATENUMBER", + "DATE_VARIABLE" + ], + "semantic": { + "NoMatch": {}, + "date": { + "dateString": { + "day": "_$ordinal[0]", + "month": "_$month[0]", + "year": "_$number[0]" + }, + "date": "_$datenumber[0]", + "variable": "_$date_variable[0]" + } + } + }, + "TIME": { + "phrases": [ + "TIMENUMBER TIMEWORD" + ], + "semantic": { + "NoMatch": {}, + "time": "_$timenumber[0]" + } + }, + "TIMERANGE": { + "phrases": [ + "NUMBER PR_UPTO TIME", + "TIME PR_UPTO TIME" + ], + "semantic": { + "NoMatch": {}, + "timerange": { + "time1": { + "number": "_$number[0]", + "timeValue": "_$time[0]['semantic']" + }, + "time2": "_$time[1]['semantic']" + } + } + }, + "DATETIME": { + "phrases": [ + "DATE", + "TIME", + "DATE TIME", + "DATE PREPOSITION TIME" + ], + "semantic": { + "NoMatch": {}, + "datetime": { + "time": "_$time[0]['semantic']", + "date": "_$date[0]['semantic']" + } + } + }, + "LOCATION": { + "phrases": [ + "STREET", + "NEAR_TO_ME", + "LOCATION_NAME", + "SQUARE" + ], + "semantic": { + "Place": { + "name": "_$phrase" + } + } + }, + "PLAY": { + "phrases": [ + "V_PLAY_INF", + "V_PLAY_IMP PREPOSITION" + ], + "semantic": { + "Play": {} + } + }, + "PLAY_MORE": { + "phrases": [ + "MORE V_PLAY_INF", + "V_PLAY_IMP MORE" + ], + "semantic": { + "Play": { + "more": "yes" + } + } + }, + "PLAY_AGAIN": { + "phrases": [ + "AGAIN V_PLAY_INF", + "V_PLAY_IMP AGAIN" + ], + "semantic": { + "Play": { + "again": "yes" + } + } + }, + "PLAY_RADIO": { + "phrases": [ + "V_PLAY_IMP RADIO", + "V_PLAY_IMP RADIO PREPOSITION", + "V_PLAY_IMP RADIO THAT", + "RADIO V_PLAY_INF", + "RADIO V_PLAY_FIN", + "THAT RADIO V_PLAY_INF", + "V_PLAY_INF RADIO", + "RADIO PREPOSITION", + "V_PLAY_RADIO_INF" + ], + "semantic": { + "Play": { + "type": "radio" + } + } + }, + "PLAY_AUDIOTAGS": { + "phrases": [ + "V_PLAY_IMP AUDIOTAG", + "V_PLAY_IMP AUDIOTAG PREPOSITION", + "AUDIOTAG V_PLAY_INF", + "AUDIOTAG V_PLAY_FIN", + "V_PLAY_INF AUDIOTAG" + ], + "semantic": { + "Play": { + "type": "audio" + } + } + }, + "PLAY_VOICETAGS": { + "phrases": [ + "V_PLAY_IMP VOICETAG", + "V_PLAY_IMP VOICETAG PREPOSITION", + "VOICETAG V_PLAY_INF", + "VOICETAG V_PLAY_FIN", + "V_PLAY_INF VOICETAG" + ], + "semantic": { + "Play": { + "type": "voice" + } + } + }, + "RECORD_AUDIOTAG": { + "phrases": [ + "V_RECORD_IMP AUDIOTAG", + "V_RECORD_IMP AUDIOTAG PREPOSITION", + "AUDIOTAG V_RECORD_INF", + "V_RECORD_INF AUDIOTAG" + ], + "semantic": { + "Record": { + "type": "audio" + } + } + }, + "RECORD_VOICETAG": { + "phrases": [ + "V_RECORD_IMP VOICETAG", + "V_RECORD_IMP VOICETAG PREPOSITION", + "VOICETAG V_RECORD_INF", + "V_RECORD_INF VOICETAG", + "VOICETAG PREPOSITION CAFE" + ], + "semantic": { + "Record": { + "type": "voice" + } + } + }, + "RECORD": { + "phrases": [ + "V_RECORD_INF", + "MICRO PREPOSITION" + ], + "semantic": { + "Record": {} + } + }, + "SEND": { + "phrases": [ + "V_SEND_IMP PREPOSITION SOCIAL_NETWORK", + "V_SEND_IMP SOCIAL_NETWORK", + "PREPOSITION SOCIAL_NETWORK V_SEND_INF", + "PREPOSITION SOCIAL_NETWORK V_SEND_FIN", + "PREPOSITION SOCIAL_NETWORK AND SOCIAL_NETWORK V_SEND_INF", + "PREPOSITION SOCIAL_NETWORK AND SOCIAL_NETWORK V_SEND_FIN", + "PREPOSITION ALL V_SEND_INF", + "PREPOSITION ALL V_SEND_FIN", + "AUDIOTAG PREPOSITION SOCIAL_NETWORK V_SEND_INF", + "AUDIOTAG PREPOSITION SOCIAL_NETWORK V_SEND_FIN", + "VOICETAG PREPOSITION SOCIAL_NETWORK V_SEND_INF", + "VOICETAG PREPOSITION SOCIAL_NETWORK V_SEND_FIN", + "V_SEND_INF PREPOSITION SOCIAL_NETWORK", + "V_SEND_FIN PREPOSITION SOCIAL_NETWORK", + "V_SEND_INF", + "V_SEND_FIN" + ], + "semantic": { + "Send": { + "recipient": "_$social_network[0]", + "recipient2": "_$social_network[1]", + "all": "_$all[0]" + } + } + }, + "SEND_TWEET": { + "phrases": [ + "TWEET", + "V_SEND_IMP TWEET", + "V_SEND_IMP TWEET PREPOSITION", + "TWEET V_SEND_INF", + "TWEET V_SEND_FIN" + ], + "semantic": { + "Send": { + "recipient": "twitter" + } + } + }, + "SHOW_INFO": { + "phrases": [ + "V_SHOW_IMP INFO", + "V_SHOW_IMP INFO THAT", + "V_SHOW_IMP INFO PREPOSITION", + "INFO V_SHOW_INF", + "MORE INFO", + "INFO THAT" + ], + "semantic": { + "ShowInfo": {} + } + }, + "SHOW_POIs": { + "phrases": [ + "V_SHOW_IMP REST POI_CATEGORY PREPOSITION LOCATION", + "V_SHOW_IMP REST MUSIC POI_CATEGORY PREPOSITION LOCATION", + "V_SHOW_IMP REST PREPOSITION LOCATION" + ], + "semantic": { + "ShowPOIs": { + "poicat": "_$poi_category[0]", + "genre": "_$music[0]", + "location": "_$location[0]['semantic']" + } + } + }, + "JUST_SHOW_APPOINTMENTs": { + "phrases": [ + "V_SHOW_IMP PP_MINE APPOINTMENTS" + ], + "semantic": { + "ShowAppointments": {} + } + }, + "SHOW_APPOINTMENTs_FROM": { + "phrases": [ + "V_SHOW_IMP PP_MINE APPOINTMENTS PREPOSITION DATETIME" + ], + "semantic": { + "ShowAppointments": { + "datetime": "_$datetime[0]['semantic']" + } + } + }, + "SHOW_APPOINTMENTs_FROM_TO": { + "phrases": [ + "V_SHOW_IMP PP_MINE APPOINTMENTS PREPOSITION DATETIME PR_UPTO DATETIME", + "V_SHOW_IMP PP_MINE APPOINTMENTS PREPOSITION DATETIME PR_UPTO PREPOSITION DATETIME" + ], + "semantic": { + "ShowAppointments": { + "prep1": "_$preposition[0]", + "datetime": "_$datetime[0]['semantic']", + "datetime2": "_$datetime[1]['semantic']" + } + } + }, + "CREATE_APPOINTMENTS": { + "phrases": [ + "CREATE DATE UNDEF_ARTICLE APPOINTMENT", + "CREATE DATE UNDEF_ARTICLE APPOINTMENT PREPOSITION TIME", + "CREATE DATE UNDEF_ARTICLE APPOINTMENT PREPOSITION TIMERANGE", + "CREATE DATE PREPOSITION TIME UNDEF_ARTICLE APPOINTMENT", + "CREATE DATE PREPOSITION TIMERANGE UNDEF_ARTICLE APPOINTMENT", + "CREATE DATE UNDEF_ARTICLE APPOINTMENT FULL_TITLE", + "CREATE DATE UNDEF_ARTICLE APPOINTMENT PREPOSITION TIME FULL_TITLE", + "CREATE DATE UNDEF_ARTICLE APPOINTMENT PREPOSITION TIMERANGE FULL_TITLE", + "CREATE DATE PREPOSITION TIME UNDEF_ARTICLE APPOINTMENT FULL_TITLE", + "CREATE DATE PREPOSITION TIMERANGE UNDEF_ARTICLE APPOINTMENT FULL_TITLE", + "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION DATE", + "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION TIME", + "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION TIMERANGE", + "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION DATE PREPOSITION TIMERANGE", + "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION DATE PREPOSITION TIME", + "CREATE UNDEF_ARTICLE APPOINTMENT REST PREPOSITION DATE PREPOSITION TIMERANGE", + "CREATE UNDEF_ARTICLE APPOINTMENT REST PREPOSITION DATE PREPOSITION TIME", + "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION DATE FULL_TITLE", + "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION TIME FULL_TITLE", + "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION TIMERANGE FULL_TITLE", + "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION DATE PREPOSITION TIMERANGE FULL_TITLE", + "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION DATE PREPOSITION TIME FULL_TITLE", + "CREATE UNDEF_ARTICLE APPOINTMENT REST PREPOSITION DATE PREPOSITION TIMERANGE FULL_TITLE", + "CREATE UNDEF_ARTICLE APPOINTMENT REST PREPOSITION DATE PREPOSITION TIME FULL_TITLE" + ], + "semantic": { + "CreateAppointment": { + "prep1": "_$preposition[0]", + "date": "_$date[0]['semantic']", + "time": "_$time[0]['semantic']", + "timerange": "_$timerange[0]['semantic']", + "full_title": "_$full_title[0]['semantic']" + } + } + }, + "FIND_PERSON": { + "phrases": [ + "V_FIND_IMP PP_MINE PERSON" + ], + "semantic": { + "FindPerson": { + "person": "_$person[0]" + } + } + }, + "RECORD_MEMO": { + "phrases": [ + "V_RECORD_IMP UNDEF_ARTICLE VOICETAG PREPOSITION", + "V_RECORD_IMP PP_MINE UNDEF_ARTICLE VOICETAG PREPOSITION" + ], + "semantic": { + "RecordMemo": {} + } + }, + "FIND_MUSIC": { + "phrases": [ + "WHERE V_PLAY_FIN MUSIC", + "WHAT V_PLAY_FIN PREPOSITION MUSIC AND MUSIC POI_CATEGORY", + "V_FIND_IMP MUSIC PREPOSITION NEAR_TO_ME", + "WHAT V_PLAY_FIN PREPOSITION LOCATION", + "WHERE V_PLAY_FIN LOCATION MUSIC" + ], + "semantic": { + "ShowPOIs": { + "poicat": "_$poi_category[0]", + "genre": "_$music[0]", + "genre2": "_$music[1]", + "location": "_$location[0]['semantic']" + } + } + }, + "START_RADAR": { + "phrases": [ + "RADAR", + "RADAR PREPOSITION", + "RADAR V_OPEN_INF", + "RADAR V_OPEN_FIN", + "V_OPEN_FIN RADAR", + "RADAR V_SHOW_INF", + "V_FIND_IMP PREPOSITION MUSIC PREPOSITION NEAR_TO_ME" + ], + "semantic": { + "RadarStart": {} + } + }, + "LIKED": { + "phrases": [ + "LIKE" + ], + "semantic": { + "Rating": { + "stars": "f__ue__nf" + } + } + }, + "RATING": { + "phrases": [ + "NUMBER STARS", + "REST NUMBER STARS", + "REST REST NUMBER STARS", + "REST REST REST NUMBER STARS" + ], + "semantic": { + "Rating": { + "stars": "_$number[0]" + } + } + }, + "FULL_TITLE": { + "phrases": [ + "PREPOSITION THEME TITLE", + "PREPOSITION TITLE" + ], + "semantic": { + "title": "_$title[0]['semantic']" + } }, - "utterances": { - "DATE": { - "phrases": [ - "ORDINAL", - "ORDINAL MONTH", - "ORDINAL MONTH NUMBER", - "DATENUMBER", - "DATE_VARIABLE" - ], - "semantic": { - "NoMatch":{}, - "date": { - "dateString": { - "day": "_$ordinal[0]", - "month": "_$month[0]", - "year": "_$number[0]" - }, - "date": "_$datenumber[0]", - "variable": "_$date_variable[0]" - } - } - }, - "TIME": { - "phrases": [ - "TIMENUMBER TIMEWORD" - ], - "semantic": { - "NoMatch":{}, - "time": "_$timenumber[0]" - } - }, - "TIMERANGE": { - "phrases": [ - "NUMBER PR_UPTO TIME", - "TIME PR_UPTO TIME" - ], - "semantic": { - "NoMatch":{}, - "timerange": { - "time1": { - "number": "_$number[0]", - "timeValue": "_$time[0]['semantic']" - }, - "time2": "_$time[1]['semantic']" - } - } - }, - "DATETIME": { - "phrases": [ - "DATE", - "TIME", - "DATE TIME", - "DATE PREPOSITION TIME" - ], - "semantic": { - "NoMatch":{}, - "datetime": { - "time": "_$time[0]['semantic']", - "date": "_$date[0]['semantic']" - } - } - }, - "LOCATION": { - "phrases": [ - "STREET", - "NEAR_TO_ME", - "LOCATION_NAME", - "SQUARE" - ], - "semantic": { - "Place": { - "name": "_$phrase" - } - } - }, - "PLAY": { - "phrases": [ - "V_PLAY_INF", - "V_PLAY_IMP PREPOSITION" - ], - "semantic": { - "Play": {} - } - }, - "PLAY_MORE": { - "phrases": [ - "MORE V_PLAY_INF", - "V_PLAY_IMP MORE" - ], - "semantic": { - "Play": { "more" : "yes"} - } - }, - "PLAY_AGAIN": { - "phrases": [ - "AGAIN V_PLAY_INF", - "V_PLAY_IMP AGAIN" - ], - "semantic": { - "Play": { "again" : "yes" } - } - }, - "PLAY_RADIO": { - "phrases": [ - "V_PLAY_IMP RADIO", - "V_PLAY_IMP RADIO PREPOSITION", - "V_PLAY_IMP RADIO THAT", - "RADIO V_PLAY_INF", - "RADIO V_PLAY_FIN", - "THAT RADIO V_PLAY_INF", - "V_PLAY_INF RADIO", - "RADIO PREPOSITION", - "V_PLAY_RADIO_INF" - ], - "semantic": { - "Play": { "type" : "radio" } - } - }, - "PLAY_AUDIOTAGS": { - "phrases": [ - "V_PLAY_IMP AUDIOTAG", - "V_PLAY_IMP AUDIOTAG PREPOSITION", - "AUDIOTAG V_PLAY_INF", - "AUDIOTAG V_PLAY_FIN", - "V_PLAY_INF AUDIOTAG" - ], - "semantic": { - "Play": { "type" : "audio" } - } - }, - "PLAY_VOICETAGS": { - "phrases": [ - "V_PLAY_IMP VOICETAG", - "V_PLAY_IMP VOICETAG PREPOSITION", - "VOICETAG V_PLAY_INF", - "VOICETAG V_PLAY_FIN", - "V_PLAY_INF VOICETAG" - ], - "semantic": { - "Play": { "type" : "voice" } - } - }, - "RECORD_AUDIOTAG": { - "phrases": [ - "V_RECORD_IMP AUDIOTAG", - "V_RECORD_IMP AUDIOTAG PREPOSITION", - "AUDIOTAG V_RECORD_INF", - "V_RECORD_INF AUDIOTAG" - ], - "semantic": { - "Record": { "type" : "audio" } - } - }, - "RECORD_VOICETAG": { - "phrases": [ - "V_RECORD_IMP VOICETAG", - "V_RECORD_IMP VOICETAG PREPOSITION", - "VOICETAG V_RECORD_INF", - "V_RECORD_INF VOICETAG", - "VOICETAG PREPOSITION CAFE" - ], - "semantic": { - "Record": { "type" : "voice" } - } - }, - "RECORD": { - "phrases": [ - "V_RECORD_INF", - "MICRO PREPOSITION" - ], - "semantic": { - "Record": { } - } - }, - "SEND": { - "phrases": [ - "V_SEND_IMP PREPOSITION SOCIAL_NETWORK", - "V_SEND_IMP SOCIAL_NETWORK", - "PREPOSITION SOCIAL_NETWORK V_SEND_INF", - "PREPOSITION SOCIAL_NETWORK V_SEND_FIN", - "PREPOSITION SOCIAL_NETWORK AND SOCIAL_NETWORK V_SEND_INF", - "PREPOSITION SOCIAL_NETWORK AND SOCIAL_NETWORK V_SEND_FIN", - "PREPOSITION ALL V_SEND_INF", - "PREPOSITION ALL V_SEND_FIN", - "AUDIOTAG PREPOSITION SOCIAL_NETWORK V_SEND_INF", - "AUDIOTAG PREPOSITION SOCIAL_NETWORK V_SEND_FIN", - "VOICETAG PREPOSITION SOCIAL_NETWORK V_SEND_INF", - "VOICETAG PREPOSITION SOCIAL_NETWORK V_SEND_FIN", - "V_SEND_INF PREPOSITION SOCIAL_NETWORK", - "V_SEND_FIN PREPOSITION SOCIAL_NETWORK", - "V_SEND_INF", - "V_SEND_FIN" - ], - "semantic": { - "Send": { "recipient" : "_$social_network[0]", - "recipient2" : "_$social_network[1]", - "all" : "_$all[0]" } - } - }, - "SEND_TWEET": { - "phrases": [ - "TWEET", - "V_SEND_IMP TWEET", - "V_SEND_IMP TWEET PREPOSITION", - "TWEET V_SEND_INF", - "TWEET V_SEND_FIN" - ], - "semantic": { - "Send": { "recipient" : "twitter" } - } - }, - "SHOW_INFO": { - "phrases": [ - "V_SHOW_IMP INFO", - "V_SHOW_IMP INFO THAT", - "V_SHOW_IMP INFO PREPOSITION", - "INFO V_SHOW_INF", - "MORE INFO", - "INFO THAT" - ], - "semantic": { - "ShowInfo": {} - } - }, - "SHOW_POIs": { - "phrases": [ - "V_SHOW_IMP REST POI_CATEGORY PREPOSITION LOCATION", - "V_SHOW_IMP REST MUSIC POI_CATEGORY PREPOSITION LOCATION", - "V_SHOW_IMP REST PREPOSITION LOCATION" - ], - "semantic": { - "ShowPOIs": { "poicat" : "_$poi_category[0]", - "genre" : "_$music[0]", - "location": "_$location[0]['semantic']"} - } - }, - "JUST_SHOW_APPOINTMENTs": { - "phrases": [ - "V_SHOW_IMP PP_MINE APPOINTMENTS" - ], - "semantic": { "ShowAppointments": {} } - }, - "SHOW_APPOINTMENTs_FROM": { - "phrases": [ - "V_SHOW_IMP PP_MINE APPOINTMENTS PREPOSITION DATETIME" - ], - "semantic": { - "ShowAppointments": { "datetime": "_$datetime[0]['semantic']" } - } - }, - "SHOW_APPOINTMENTs_FROM_TO": { - "phrases": [ - "V_SHOW_IMP PP_MINE APPOINTMENTS PREPOSITION DATETIME PR_UPTO DATETIME", - "V_SHOW_IMP PP_MINE APPOINTMENTS PREPOSITION DATETIME PR_UPTO PREPOSITION DATETIME" - ], - "semantic": { - "ShowAppointments": { - "prep1": "_$preposition[0]", - "datetime": "_$datetime[0]['semantic']", - "datetime2": "_$datetime[1]['semantic']" - } - } - }, - "CREATE_APPOINTMENTS": { - "phrases": [ - "CREATE DATE UNDEF_ARTICLE APPOINTMENT", - "CREATE DATE UNDEF_ARTICLE APPOINTMENT PREPOSITION TIME", - "CREATE DATE UNDEF_ARTICLE APPOINTMENT PREPOSITION TIMERANGE", - "CREATE DATE PREPOSITION TIME UNDEF_ARTICLE APPOINTMENT", - "CREATE DATE PREPOSITION TIMERANGE UNDEF_ARTICLE APPOINTMENT", - "CREATE DATE UNDEF_ARTICLE APPOINTMENT FULL_TITLE", - "CREATE DATE UNDEF_ARTICLE APPOINTMENT PREPOSITION TIME FULL_TITLE", - "CREATE DATE UNDEF_ARTICLE APPOINTMENT PREPOSITION TIMERANGE FULL_TITLE", - "CREATE DATE PREPOSITION TIME UNDEF_ARTICLE APPOINTMENT FULL_TITLE", - "CREATE DATE PREPOSITION TIMERANGE UNDEF_ARTICLE APPOINTMENT FULL_TITLE", - "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION DATE", - "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION TIME", - "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION TIMERANGE", - "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION DATE PREPOSITION TIMERANGE", - "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION DATE PREPOSITION TIME", - "CREATE UNDEF_ARTICLE APPOINTMENT REST PREPOSITION DATE PREPOSITION TIMERANGE", - "CREATE UNDEF_ARTICLE APPOINTMENT REST PREPOSITION DATE PREPOSITION TIME", - "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION DATE FULL_TITLE", - "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION TIME FULL_TITLE", - "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION TIMERANGE FULL_TITLE", - "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION DATE PREPOSITION TIMERANGE FULL_TITLE", - "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION DATE PREPOSITION TIME FULL_TITLE", - "CREATE UNDEF_ARTICLE APPOINTMENT REST PREPOSITION DATE PREPOSITION TIMERANGE FULL_TITLE", - "CREATE UNDEF_ARTICLE APPOINTMENT REST PREPOSITION DATE PREPOSITION TIME FULL_TITLE" - ], - "semantic": { - "CreateAppointment": { - "prep1": "_$preposition[0]", - "date": "_$date[0]['semantic']", - "time": "_$time[0]['semantic']", - "timerange": "_$timerange[0]['semantic']", - "full_title": "_$full_title[0]['semantic']" - } - } - }, - "FIND_PERSON": { - "phrases": [ - "V_FIND_IMP PP_MINE PERSON" - ], - "semantic": { - "FindPerson": { - "person": "_$person[0]" - } - } - }, - "RECORD_MEMO": { - "phrases": [ - "V_RECORD_IMP UNDEF_ARTICLE VOICETAG PREPOSITION", - "V_RECORD_IMP PP_MINE UNDEF_ARTICLE VOICETAG PREPOSITION" - ], - "semantic": { - "RecordMemo": {} - } - }, - "FIND_MUSIC": { - "phrases": [ - "WHERE V_PLAY_FIN MUSIC", - "WHAT V_PLAY_FIN PREPOSITION MUSIC AND MUSIC POI_CATEGORY", - "V_FIND_IMP MUSIC PREPOSITION NEAR_TO_ME", - "WHAT V_PLAY_FIN PREPOSITION LOCATION", - "WHERE V_PLAY_FIN LOCATION MUSIC" - ], - "semantic": { - "ShowPOIs": { "poicat": "_$poi_category[0]", - "genre" : "_$music[0]", - "genre2" : "_$music[1]", - "location": "_$location[0]['semantic']" } - } - }, - "START_RADAR": { - "phrases": [ - "RADAR", - "RADAR PREPOSITION", - "RADAR V_OPEN_INF", - "RADAR V_OPEN_FIN", - "V_OPEN_FIN RADAR", - "RADAR V_SHOW_INF", - "V_FIND_IMP PREPOSITION MUSIC PREPOSITION NEAR_TO_ME" - ], - "semantic": { - "RadarStart": {} - } - }, - "LIKED": { - "phrases": [ - "LIKE" - ], - "semantic": { - "Rating": { "stars" : "f__ue__nf" } - } - }, - "RATING": { - "phrases": [ - "NUMBER STARS", - "REST NUMBER STARS", - "REST REST NUMBER STARS", - "REST REST REST NUMBER STARS" - ], - "semantic": { - "Rating": { "stars" : "_$number[0]" } - } - }, - "FULL_TITLE": { - "phrases": [ - "PREPOSITION THEME TITLE", - "PREPOSITION TITLE" - ], - "semantic": { - "title": "_$title[0]['semantic']" - } - }, - "TITLE": { - "phrases": [ - "REST", - "REST TITLE" - ], - "semantic": { - "value": "_$rest[0]", - "title": "_$title[0]['semantic']" - } - } + "TITLE": { + "phrases": [ + "REST", + "REST TITLE" + ], + "semantic": { + "value": "_$rest[0]", + "title": "_$title[0]['semantic']" + } } -} \ No newline at end of file + } +} diff --git a/assets/www/config/languages/de/grammar.json.MD5 b/assets/www/config/languages/de/grammar.json.MD5 index 9b1b2d3..db2d17b 100644 --- a/assets/www/config/languages/de/grammar.json.MD5 +++ b/assets/www/config/languages/de/grammar.json.MD5 @@ -1 +1 @@ -b5cb6b265edec7fba9a67d7cd566f7a4 +163f2feb342f22087d5f4c7ac140818c diff --git a/assets/www/config/languages/de/grammar.json_minimal-example b/assets/www/config/languages/de/grammar.json_minimal-example new file mode 100644 index 0000000..134e033 --- /dev/null +++ b/assets/www/config/languages/de/grammar.json_minimal-example @@ -0,0 +1,28 @@ +{ + "stop_word": [ + "bitte" + ], + "tokens": { + "V_PLAY_INF": [ + "wiedergeben", + "spielen", + "abspielen", + "h__oe__ren", + "anh__oe__ren", + "erkennen" + ], + "REST": [ + "[a-zA-Z_]+" + ] + }, + "utterances": { + "PLAY": { + "phrases": [ + "V_PLAY_INF" + ], + "semantic": { + "Play": {} + } + } + } +} diff --git a/assets/www/config/languages/en/grammar.json b/assets/www/config/languages/en/grammar.json new file mode 100644 index 0000000..4cd6ab7 --- /dev/null +++ b/assets/www/config/languages/en/grammar.json @@ -0,0 +1,63 @@ +{ + "stop_word": [ + "in", + "switch", + "turn", + "turned", + "please", + "the", + "and" + ], + "tokens": { + "ROOM": [ + "bed room", + "bath room", + "kitchen", + "living room" + ], + "DEVICE": [ + "light", + "oven", + "hob one", + "hob two", + "hob three", + "hob four" + ], + "ALL_DEVICES": [ + "lights", + "oven", + "hob" + ], + "STATE": [ + "on", + "off" + ], + "REST": [ + "[a-zA-Z_]+" + ] + }, + "utterances": { + + "TURN_DEVICE": { + "phrases": [ + "DEVICE ROOM STATE", + "ROOM DEVICE STATE" + ], + "semantic": { + "location": "_$room[0]", + "target": "_$device[0]", + "action": "_$state[0]" + } + }, + "TURN_DEVICE": { + "phrases": [ + "ALL_DEVICES STATE", + "STATE ALL_DEVICES" + ], + "semantic": { + "target": "_$all_devices[0]", + "action": "_$state[0]" + } + } + } +} \ No newline at end of file diff --git a/assets/www/config/languages/en/grammar.json.MD5 b/assets/www/config/languages/en/grammar.json.MD5 new file mode 100644 index 0000000..5fab5ad --- /dev/null +++ b/assets/www/config/languages/en/grammar.json.MD5 @@ -0,0 +1 @@ +ebe0ecfc5debcdc1ca2570174cd60db4 diff --git a/assets/www/config/languages/en/grammar.json_disabled b/assets/www/config/languages/en/grammar.json_disabled new file mode 100644 index 0000000..5f5e373 --- /dev/null +++ b/assets/www/config/languages/en/grammar.json_disabled @@ -0,0 +1,718 @@ +{ + "comment_license" : "Copyright (C) 2012-2013 DFKI GmbH\nDeutsches Forschungszentrum fuer Kuenstliche Intelligenz\nGerman Research Center \nfor Artificial Intelligence\nhttp://www.dfki.de\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.", + "stop_word": [ + "please", + "doch", + "der", + "der", + "die", + "das", + "dem", + "den", + "des", + "diese", + "dieser", + "diesem", + "diesen", + "dieses", + "mir", + "mal", + "jetzt", + "lass", + "m__oe__chte", + "ich", + "bla" + ], + "tokens": { + + "UNDEF_ARTICLE": [ + "a", + "the" + ], + "PP_MINE": [ + "mein", + "meine", + "meinen" + ], + "V_PLAY_IMP": [ + "spiel", + "spiele" + ], + "V_PLAY_INF": [ + "spielen", + "abspielen", + "h__oe__ren", + "anh__oe__ren", + "erkennen" + ], + "V_PLAY_RADIO_INF": [ + "radioh__oe__ren" + ], + "V_PLAY_FIN": [ + "l__ae__uft", + "spielt", + "abspielt" + ], + "V_SHOW_IMP": [ + "zeig", + "zeige" + ], + "V_SHOW_INF": [ + "zeigen", + "anzeigen" + ], + "V_RECORD_IMP": [ + "nimm", + "nehme" + ], + "V_RECORD_INF": [ + "aufnehmen", + "aufnahme", + "abgeben" + ], + "V_SEND_IMP": [ + "sende", + "send", + "schicke", + "schick", + "poste" + ], + "V_SEND_INF": [ + "schicken", + "senden", + "posten", + "weg damit" + ], + "V_SEND_FIN": [ + "sendet", + "postet" + ], + "V_OPEN_INF": [ + "__oe__ffnen", + "starten" + ], + "V_OPEN_FIN": [ + "__oe__ffnet", + "startet" + ], + "V_FIND_IMP": [ + "scanne", + "suche", + "finde" + ], + "RADAR": [ + "radar", + "scanner" + ], + "RADIO": [ + "radio", + "stream", + "aupeo" + ], + "AUDIOTAG": [ + "audiotag", + "audiotags", + "audionotiz" + ], + "VOICETAG": [ + "voicetag", + "voicetags", + "sprachnotiz", + "kommentar", + "kommentare", + "bewertung", + "bewertungen" + ], + "SOCIAL_NETWORK": [ + "twitter", + "facebook", + "qype", + "voice2social" + ], + "TWEET": [ + "tweet", + "tweeten", + "tweete" + ], + "INFO": [ + "info", + "information", + "informationen", + "daten", + "detail", + "details" + ], + "PREPOSITION": [ + "an", + "um", + "am", + "an", + "im", + "in", + "auf", + "ab", + "f__ue__r", + "nach", + "von", + "vom", + "zum" + ], + "PR_UPTO": [ + "bis" + ], + "WHAT":[ + "was" + ], + "WHERE":[ + "wo" + ], + "POI_CATEGORY": [ + "cafe", + "restaurant", + "bar", + "bars", + "clubs" + ], + "LOCATION_NAME": [ + "mitte", + "sch__oe__neberg", + "berlin", + "moabit", + "berlin hauptbahnhof", + "tiergarten", + "zoo", + "wedding", + "prenzlauer berg", + "fridrichshain", + "kreuzberg", + "charlottenburg", + "spandau", + "wilmersdorf", + "zehlendorf", + "steglitz", + "tempelhof", + "treptow", + "lichtenberg", + "pankow", + "reinickendorf" + ], + "SQUARE":[ + "[a-zA-Z_]+platz", + "([a-zA-Z_]+-)+platz" + ], + "NEAR_TO_ME": [ + "meiner n__ae__he", + "umgebung", + "n__ae__he", + "hier" + ], + "STREET": [ + "[a-zA-Z_]+ str", + "[a-zA-Z_]+ stra__ss__e", + "[a-zA-Z_]+ str.", + "[a-zA-Z_]+str", + "[a-zA-Z_]+stra__ss__e", + "[a-zA-Z_]+str.", + "[a-zA-Z_]+damm" + ], + "MUSIC": [ + "house", + "pop", + "jazz", + "musik", + "meine lieblingsmusik" + ], + "NUMBER": [ + "ein", + "eins", + "zwei", + "drei", + "vier", + "f__ue__nf", + "sechs", + "sieben", + "acht", + "neun", + "zehn", + "elf", + "zw__oe__lf", + "[0-9]+" + ], + "THEME": [ + "thema" + ], + "DATENUMBER": [ + "[0-9]+\\.[0-9]+\\.", + "[0-9]+\\.[0-9]+\\.[0-9]+" + ], + "DATE_VARIABLE": [ + "heute", + "morgen", + "__ue__bermorgen", + "gestern", + "vorgestern" + ], + "PERSON": [ + "vater", + "mutter", + "bruder", + "schwester" + ], + "TIMENUMBER": [ + "[0-9][0-9]?\\:[0-9][0-9]" + ], + "ORDINAL": [ + "[0-9]+\\." + ], + "MONTH": [ + "januar", + "februar", + "m__ae__rz", + "april", + "mai", + "juni", + "juli", + "august", + "september", + "oktober", + "november", + "dezember", + "[1-9]|1[0-2]" + ], + "TIMEWORD": [ + "uhr" + ], + "STARS": [ + "stern", + "sterne" + ], + "MORE": [ + "mehr" + ], + "AGAIN": [ + "nochmal" + ], + "AND": [ + "und" + ], + "ALL": [ + "alle", + "allen", + "alles" + ], + "THAT": [ + "dazu" + ], + "LIKE": [ + "super", + "gef__ae__llt" + ], + "MICRO": [ + "mikro", + "mikrophon", + "mikrofon" + ], + "CAFE": [ + "monopol" + ], + "APPOINTMENTS": [ + "termine" + ], + "APPOINTMENT": [ + "termin" + ], + "CREATE": [ + "erstelle" + ], + "REST": [ + "[a-zA-Z_]+" + ] + }, + "utterances": { + "DATE": { + "phrases": [ + "ORDINAL", + "ORDINAL MONTH", + "ORDINAL MONTH NUMBER", + "DATENUMBER", + "DATE_VARIABLE" + ], + "semantic": { + "NoMatch":{}, + "date": { + "dateString": { + "day": "_$ordinal[0]", + "month": "_$month[0]", + "year": "_$number[0]" + }, + "date": "_$datenumber[0]", + "variable": "_$date_variable[0]" + } + } + }, + "TIME": { + "phrases": [ + "TIMENUMBER TIMEWORD" + ], + "semantic": { + "NoMatch":{}, + "time": "_$timenumber[0]" + } + }, + "TIMERANGE": { + "phrases": [ + "NUMBER PR_UPTO TIME", + "TIME PR_UPTO TIME" + ], + "semantic": { + "NoMatch":{}, + "timerange": { + "time1": { + "number": "_$number[0]", + "timeValue": "_$time[0]['semantic']" + }, + "time2": "_$time[1]['semantic']" + } + } + }, + "DATETIME": { + "phrases": [ + "DATE", + "TIME", + "DATE TIME", + "DATE PREPOSITION TIME" + ], + "semantic": { + "NoMatch":{}, + "datetime": { + "time": "_$time[0]['semantic']", + "date": "_$date[0]['semantic']" + } + } + }, + "LOCATION": { + "phrases": [ + "STREET", + "NEAR_TO_ME", + "LOCATION_NAME", + "SQUARE" + ], + "semantic": { + "Place": { + "name": "_$phrase" + } + } + }, + "PLAY": { + "phrases": [ + "V_PLAY_INF", + "V_PLAY_IMP PREPOSITION" + ], + "semantic": { + "Play": {} + } + }, + "PLAY_MORE": { + "phrases": [ + "MORE V_PLAY_INF", + "V_PLAY_IMP MORE" + ], + "semantic": { + "Play": { "more" : "yes"} + } + }, + "PLAY_AGAIN": { + "phrases": [ + "AGAIN V_PLAY_INF", + "V_PLAY_IMP AGAIN" + ], + "semantic": { + "Play": { "again" : "yes" } + } + }, + "PLAY_RADIO": { + "phrases": [ + "V_PLAY_IMP RADIO", + "V_PLAY_IMP RADIO PREPOSITION", + "V_PLAY_IMP RADIO THAT", + "RADIO V_PLAY_INF", + "RADIO V_PLAY_FIN", + "THAT RADIO V_PLAY_INF", + "V_PLAY_INF RADIO", + "RADIO PREPOSITION", + "V_PLAY_RADIO_INF" + ], + "semantic": { + "Play": { "type" : "radio" } + } + }, + "PLAY_AUDIOTAGS": { + "phrases": [ + "V_PLAY_IMP AUDIOTAG", + "V_PLAY_IMP AUDIOTAG PREPOSITION", + "AUDIOTAG V_PLAY_INF", + "AUDIOTAG V_PLAY_FIN", + "V_PLAY_INF AUDIOTAG" + ], + "semantic": { + "Play": { "type" : "audio" } + } + }, + "PLAY_VOICETAGS": { + "phrases": [ + "V_PLAY_IMP VOICETAG", + "V_PLAY_IMP VOICETAG PREPOSITION", + "VOICETAG V_PLAY_INF", + "VOICETAG V_PLAY_FIN", + "V_PLAY_INF VOICETAG" + ], + "semantic": { + "Play": { "type" : "voice" } + } + }, + "RECORD_AUDIOTAG": { + "phrases": [ + "V_RECORD_IMP AUDIOTAG", + "V_RECORD_IMP AUDIOTAG PREPOSITION", + "AUDIOTAG V_RECORD_INF", + "V_RECORD_INF AUDIOTAG" + ], + "semantic": { + "Record": { "type" : "audio" } + } + }, + "RECORD_VOICETAG": { + "phrases": [ + "V_RECORD_IMP VOICETAG", + "V_RECORD_IMP VOICETAG PREPOSITION", + "VOICETAG V_RECORD_INF", + "V_RECORD_INF VOICETAG", + "VOICETAG PREPOSITION CAFE" + ], + "semantic": { + "Record": { "type" : "voice" } + } + }, + "RECORD": { + "phrases": [ + "V_RECORD_INF", + "MICRO PREPOSITION" + ], + "semantic": { + "Record": { } + } + }, + "SEND": { + "phrases": [ + "V_SEND_IMP PREPOSITION SOCIAL_NETWORK", + "V_SEND_IMP SOCIAL_NETWORK", + "PREPOSITION SOCIAL_NETWORK V_SEND_INF", + "PREPOSITION SOCIAL_NETWORK V_SEND_FIN", + "PREPOSITION SOCIAL_NETWORK AND SOCIAL_NETWORK V_SEND_INF", + "PREPOSITION SOCIAL_NETWORK AND SOCIAL_NETWORK V_SEND_FIN", + "PREPOSITION ALL V_SEND_INF", + "PREPOSITION ALL V_SEND_FIN", + "AUDIOTAG PREPOSITION SOCIAL_NETWORK V_SEND_INF", + "AUDIOTAG PREPOSITION SOCIAL_NETWORK V_SEND_FIN", + "VOICETAG PREPOSITION SOCIAL_NETWORK V_SEND_INF", + "VOICETAG PREPOSITION SOCIAL_NETWORK V_SEND_FIN", + "V_SEND_INF PREPOSITION SOCIAL_NETWORK", + "V_SEND_FIN PREPOSITION SOCIAL_NETWORK", + "V_SEND_INF", + "V_SEND_FIN" + ], + "semantic": { + "Send": { "recipient" : "_$social_network[0]", + "recipient2" : "_$social_network[1]", + "all" : "_$all[0]" } + } + }, + "SEND_TWEET": { + "phrases": [ + "TWEET", + "V_SEND_IMP TWEET", + "V_SEND_IMP TWEET PREPOSITION", + "TWEET V_SEND_INF", + "TWEET V_SEND_FIN" + ], + "semantic": { + "Send": { "recipient" : "twitter" } + } + }, + "SHOW_INFO": { + "phrases": [ + "V_SHOW_IMP INFO", + "V_SHOW_IMP INFO THAT", + "V_SHOW_IMP INFO PREPOSITION", + "INFO V_SHOW_INF", + "MORE INFO", + "INFO THAT" + ], + "semantic": { + "ShowInfo": {} + } + }, + "SHOW_POIs": { + "phrases": [ + "V_SHOW_IMP REST POI_CATEGORY PREPOSITION LOCATION", + "V_SHOW_IMP REST MUSIC POI_CATEGORY PREPOSITION LOCATION", + "V_SHOW_IMP REST PREPOSITION LOCATION" + ], + "semantic": { + "ShowPOIs": { "poicat" : "_$poi_category[0]", + "genre" : "_$music[0]", + "location": "_$location[0]['semantic']"} + } + }, + "JUST_SHOW_APPOINTMENTs": { + "phrases": [ + "V_SHOW_IMP PP_MINE APPOINTMENTS" + ], + "semantic": { "ShowAppointments": {} } + }, + "SHOW_APPOINTMENTs_FROM": { + "phrases": [ + "V_SHOW_IMP PP_MINE APPOINTMENTS PREPOSITION DATETIME" + ], + "semantic": { + "ShowAppointments": { "datetime": "_$datetime[0]['semantic']" } + } + }, + "SHOW_APPOINTMENTs_FROM_TO": { + "phrases": [ + "V_SHOW_IMP PP_MINE APPOINTMENTS PREPOSITION DATETIME PR_UPTO DATETIME", + "V_SHOW_IMP PP_MINE APPOINTMENTS PREPOSITION DATETIME PR_UPTO PREPOSITION DATETIME" + ], + "semantic": { + "ShowAppointments": { + "prep1": "_$preposition[0]", + "datetime": "_$datetime[0]['semantic']", + "datetime2": "_$datetime[1]['semantic']" + } + } + }, + "CREATE_APPOINTMENTS": { + "phrases": [ + "CREATE DATE UNDEF_ARTICLE APPOINTMENT", + "CREATE DATE UNDEF_ARTICLE APPOINTMENT PREPOSITION TIME", + "CREATE DATE UNDEF_ARTICLE APPOINTMENT PREPOSITION TIMERANGE", + "CREATE DATE PREPOSITION TIME UNDEF_ARTICLE APPOINTMENT", + "CREATE DATE PREPOSITION TIMERANGE UNDEF_ARTICLE APPOINTMENT", + "CREATE DATE UNDEF_ARTICLE APPOINTMENT FULL_TITLE", + "CREATE DATE UNDEF_ARTICLE APPOINTMENT PREPOSITION TIME FULL_TITLE", + "CREATE DATE UNDEF_ARTICLE APPOINTMENT PREPOSITION TIMERANGE FULL_TITLE", + "CREATE DATE PREPOSITION TIME UNDEF_ARTICLE APPOINTMENT FULL_TITLE", + "CREATE DATE PREPOSITION TIMERANGE UNDEF_ARTICLE APPOINTMENT FULL_TITLE", + "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION DATE", + "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION TIME", + "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION TIMERANGE", + "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION DATE PREPOSITION TIMERANGE", + "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION DATE PREPOSITION TIME", + "CREATE UNDEF_ARTICLE APPOINTMENT REST PREPOSITION DATE PREPOSITION TIMERANGE", + "CREATE UNDEF_ARTICLE APPOINTMENT REST PREPOSITION DATE PREPOSITION TIME", + "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION DATE FULL_TITLE", + "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION TIME FULL_TITLE", + "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION TIMERANGE FULL_TITLE", + "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION DATE PREPOSITION TIMERANGE FULL_TITLE", + "CREATE UNDEF_ARTICLE APPOINTMENT PREPOSITION DATE PREPOSITION TIME FULL_TITLE", + "CREATE UNDEF_ARTICLE APPOINTMENT REST PREPOSITION DATE PREPOSITION TIMERANGE FULL_TITLE", + "CREATE UNDEF_ARTICLE APPOINTMENT REST PREPOSITION DATE PREPOSITION TIME FULL_TITLE" + ], + "semantic": { + "CreateAppointment": { + "prep1": "_$preposition[0]", + "date": "_$date[0]['semantic']", + "time": "_$time[0]['semantic']", + "timerange": "_$timerange[0]['semantic']", + "full_title": "_$full_title[0]['semantic']" + } + } + }, + "FIND_PERSON": { + "phrases": [ + "V_FIND_IMP PP_MINE PERSON" + ], + "semantic": { + "FindPerson": { + "person": "_$person[0]" + } + } + }, + "RECORD_MEMO": { + "phrases": [ + "V_RECORD_IMP UNDEF_ARTICLE VOICETAG PREPOSITION", + "V_RECORD_IMP PP_MINE UNDEF_ARTICLE VOICETAG PREPOSITION" + ], + "semantic": { + "RecordMemo": {} + } + }, + "FIND_MUSIC": { + "phrases": [ + "WHERE V_PLAY_FIN MUSIC", + "WHAT V_PLAY_FIN PREPOSITION MUSIC AND MUSIC POI_CATEGORY", + "V_FIND_IMP MUSIC PREPOSITION NEAR_TO_ME", + "WHAT V_PLAY_FIN PREPOSITION LOCATION", + "WHERE V_PLAY_FIN LOCATION MUSIC" + ], + "semantic": { + "ShowPOIs": { "poicat": "_$poi_category[0]", + "genre" : "_$music[0]", + "genre2" : "_$music[1]", + "location": "_$location[0]['semantic']" } + } + }, + "START_RADAR": { + "phrases": [ + "RADAR", + "RADAR PREPOSITION", + "RADAR V_OPEN_INF", + "RADAR V_OPEN_FIN", + "V_OPEN_FIN RADAR", + "RADAR V_SHOW_INF", + "V_FIND_IMP PREPOSITION MUSIC PREPOSITION NEAR_TO_ME" + ], + "semantic": { + "RadarStart": {} + } + }, + "LIKED": { + "phrases": [ + "LIKE" + ], + "semantic": { + "Rating": { "stars" : "f__ue__nf" } + } + }, + "RATING": { + "phrases": [ + "NUMBER STARS", + "REST NUMBER STARS", + "REST REST NUMBER STARS", + "REST REST REST NUMBER STARS" + ], + "semantic": { + "Rating": { "stars" : "_$number[0]" } + } + }, + "FULL_TITLE": { + "phrases": [ + "PREPOSITION THEME TITLE", + "PREPOSITION TITLE" + ], + "semantic": { + "title": "_$title[0]['semantic']" + } + }, + "TITLE": { + "phrases": [ + "REST", + "REST TITLE" + ], + "semantic": { + "value": "_$rest[0]", + "title": "_$title[0]['semantic']" + } + } + } +} \ No newline at end of file diff --git a/assets/www/config/languages/jp/dictionary.dic b/assets/www/config/languages/jp/dictionary.dic new file mode 100644 index 0000000..8757d67 Binary files /dev/null and b/assets/www/config/languages/jp/dictionary.dic differ diff --git a/assets/www/config/languages/jp/grammar.json b/assets/www/config/languages/jp/grammar.json new file mode 100644 index 0000000..4a999da --- /dev/null +++ b/assets/www/config/languages/jp/grammar.json @@ -0,0 +1,25 @@ +{ + "example_phrase" : "ください 再生 下さい", + "stop_word": [ + "ください", + "下さい" + ], + "tokens": { + "V_PLAY_INF": [ + "再生" + ], + "REST": [ + "[a-zA-Z_]+" + ] + }, + "utterances": { + "PLAY": { + "phrases": [ + "V_PLAY_INF" + ], + "semantic": { + "Play": {} + } + } + } +} diff --git a/assets/www/config/languages/jp/grammar.json.MD5 b/assets/www/config/languages/jp/grammar.json.MD5 new file mode 100644 index 0000000..5239f91 --- /dev/null +++ b/assets/www/config/languages/jp/grammar.json.MD5 @@ -0,0 +1 @@ +9a50983391acfc7cc6963d1d4d1a29bd diff --git a/assets/www/config/languages/jp/speaker.json b/assets/www/config/languages/jp/speaker.json new file mode 100644 index 0000000..883252d --- /dev/null +++ b/assets/www/config/languages/jp/speaker.json @@ -0,0 +1,4 @@ +{ + "voice_lang": "ja_JP", + "lang_simple": "jp" +} \ No newline at end of file diff --git a/assets/www/controllers/application.js b/assets/www/controllers/application.js index 91afb02..b1e3c5a 100644 --- a/assets/www/controllers/application.js +++ b/assets/www/controllers/application.js @@ -90,6 +90,102 @@ // mobileDS.DialogEngine.getInstance().performHelper('GoogleMap', 'update_map_language'); // } + + var isAsrActive = false; + + var setActive = function(button, setToActive){ + var label = 'start'; + var theming = 'c';//<- jQuery UI theme + if(setToActive === true){ + label = 'stop'; + theming = 'b'; + } + + //use jQuery Mobile function to change button-label: + button.val(label).button('refresh'); + + //change theme (actually, we need to change the button's parent theme) + button.parent().buttonMarkup({theme: theming}); + }; + + $('#asr').on('vclick', function(event) { + + //switch ASR activation state + + + //set text in textarea + var textElement = $('#asr-text'); + + + //text += ' set-ASR-to_'+(isAsrActive? 'active' : 'INactive'); + if (!isAsrActive){ + mobileDS.MediaManager.getInstance().startRecord(function(text, idInfo){ + var textSoFar = textElement.val(); + textSoFar += ' '+ text; + textElement.val( textSoFar ); + }, function(e){ + console.error('Error using startRecord: '+ e); + } + , false //isUseIntermediateResultsMode + ); + } else { + mobileDS.MediaManager.getInstance().stopRecord(function(text, idInfo){ + var textSoFar = textElement.val(); + textSoFar += ' '+ text; + textElement.val( textSoFar ); + }, function(e){ + console.error('Error using stopGetRecord: '+e); + }); + + } + + + isAsrActive = ! isAsrActive; + //change button in order to indicate active/inactive ASR state + setActive( $('#asr'), isAsrActive); + }); + + $('#asr-normal').on('vclick', function(event) { + + //switch ASR activation state + + + //set text in textarea + var textElement = $('#asr-text'); + + + //text += ' set-ASR-to_'+(isAsrActive? 'active' : 'INactive'); + if (!isAsrActive){ + mobileDS.MediaManager.getInstance().startRecord(function(text, idInfo){ + var textSoFar = textElement.val(); + textSoFar += ' '+ text; + textElement.val( textSoFar ); + }, function(e){ + console.error('Error using startRecord: '+ e); + } + , true //isUseIntermediateResultsMode + ); + } else { + mobileDS.MediaManager.getInstance().stopRecord(function(text, idInfo){ + var textSoFar = textElement.val(); + textSoFar += ' '+ text; + textElement.val( textSoFar ); + }, function(e){ + console.error('Error using stopGetRecord: '+e); + }); + + } + + + isAsrActive = ! isAsrActive; + //change button in order to indicate active/inactive ASR state + setActive( $('#asr-normal'), isAsrActive); + }); + + $('#clear').on('vclick', function(event) { + $('#asr-text').val(''); + }); + }; //DISABLED: now a @-statement within the template-definition is used diff --git a/assets/www/gen/grammar/de_grammar.checksum.txt b/assets/www/gen/grammar/de_grammar.checksum.txt new file mode 100644 index 0000000..4879b09 --- /dev/null +++ b/assets/www/gen/grammar/de_grammar.checksum.txt @@ -0,0 +1 @@ +17239 163f2feb342f22087d5f4c7ac140818c \ No newline at end of file diff --git a/assets/www/gen/grammar/en_grammar.checksum.txt b/assets/www/gen/grammar/en_grammar.checksum.txt new file mode 100644 index 0000000..248a731 --- /dev/null +++ b/assets/www/gen/grammar/en_grammar.checksum.txt @@ -0,0 +1 @@ +1044 ebe0ecfc5debcdc1ca2570174cd60db4 \ No newline at end of file diff --git a/assets/www/gen/grammar/en_grammar.js b/assets/www/gen/grammar/en_grammar.js new file mode 100644 index 0000000..9a4903e --- /dev/null +++ b/assets/www/gen/grammar/en_grammar.js @@ -0,0 +1,923 @@ +mobileDS.SemanticInterpreter.getInstance().addGrammar("en", function(asr_recognized_text){ + var theGrammarConverterInstance = this; + + + var _$result = ''; + var _$room = {}; + var _$device = {}; + var _$all_devices = {}; + var _$state = {}; + var _$rest = {}; + var _$turn_device = {}; + + +/* + JS/CC: A LALR(1) Compiler-Compiler written in JavaScript + Copyright (C) 2007, 2008 by J.M.K S.F. Software Technologies, Jan Max Meyer + http://www.jmksf.com ++ jscc<-AT->jmksf.com + + File: jscc.html + Author: Jan Max Meyer + Usage: Modified parser template for the Web Environment Module + Based on "driver_web.js_" parser template, but NOT in the public domain! + + You may use, modify and distribute this software under the terms and conditions + of the Artistic License. Please see ARTISTIC for more information. + + Driver for the JS/CC Web Environment with integrated HTML parse tree generator! + + Features: + - Parser trace messages + - Integrated panic-mode error recovery + - Parse tree construction for the JS/CC web environment +*/ + +var _dbg_withtrace = false; +var _dbg_string = new String(); + +function __dbg_print( text ) +{ + _dbg_string += text + "\n"; +} + +function __lex( info ) +{ + var state = 0; + var match = -1; + var match_pos = 0; + var start = 0; + var pos = info.offset + 1; + + do + { + pos--; + state = 0; + match = -2; + start = pos; + + if( info.src.length <= start ) + return 10; + + do + { + +switch( state ) +{ + case 0: + if( info.src.charCodeAt( pos ) == 9 || info.src.charCodeAt( pos ) == 32 ) state = 1; + else if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || info.src.charCodeAt( pos ) == 97 || ( info.src.charCodeAt( pos ) >= 99 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 105 && info.src.charCodeAt( pos ) <= 106 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 112 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 111 ) state = 8; + else if( info.src.charCodeAt( pos ) == 104 ) state = 32; + else if( info.src.charCodeAt( pos ) == 98 ) state = 42; + else if( info.src.charCodeAt( pos ) == 108 ) state = 47; + else if( info.src.charCodeAt( pos ) == 107 ) state = 51; + else state = -1; + break; + + case 1: + state = -1; + match = 1; + match_pos = pos; + break; + + case 2: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 3: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else state = -1; + match = 5; + match_pos = pos; + break; + + case 4: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 32 ) state = 12; + else state = -1; + match = 4; + match_pos = pos; + break; + + case 5: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else state = -1; + match = 3; + match_pos = pos; + break; + + case 6: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else state = -1; + match = 2; + match_pos = pos; + break; + + case 7: + if( info.src.charCodeAt( pos ) == 114 ) state = 15; + else state = -1; + break; + + case 8: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 101 ) || ( info.src.charCodeAt( pos ) >= 103 && info.src.charCodeAt( pos ) <= 109 ) || ( info.src.charCodeAt( pos ) >= 111 && info.src.charCodeAt( pos ) <= 117 ) || ( info.src.charCodeAt( pos ) >= 119 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 110 ) state = 3; + else if( info.src.charCodeAt( pos ) == 102 ) state = 16; + else if( info.src.charCodeAt( pos ) == 118 ) state = 36; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 9: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else state = -1; + match = 4; + match_pos = pos; + break; + + case 10: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 115 ) state = 9; + else state = -1; + match = 3; + match_pos = pos; + break; + + case 11: + state = -1; + match = 2; + match_pos = pos; + break; + + case 12: + if( info.src.charCodeAt( pos ) == 111 ) state = 17; + else if( info.src.charCodeAt( pos ) == 116 ) state = 19; + else if( info.src.charCodeAt( pos ) == 102 ) state = 33; + else state = -1; + break; + + case 13: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || info.src.charCodeAt( pos ) == 97 || ( info.src.charCodeAt( pos ) >= 99 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 98 ) state = 4; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 14: + state = -1; + match = 3; + match_pos = pos; + break; + + case 15: + if( info.src.charCodeAt( pos ) == 111 ) state = 35; + else state = -1; + break; + + case 16: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 101 ) || ( info.src.charCodeAt( pos ) >= 103 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 102 ) state = 3; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 17: + if( info.src.charCodeAt( pos ) == 110 ) state = 23; + else state = -1; + break; + + case 18: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 32 ) state = 7; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 19: + if( info.src.charCodeAt( pos ) == 104 ) state = 25; + else if( info.src.charCodeAt( pos ) == 119 ) state = 27; + else state = -1; + break; + + case 20: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 109 ) || ( info.src.charCodeAt( pos ) >= 111 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 110 ) state = 5; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 21: + if( info.src.charCodeAt( pos ) == 117 ) state = 29; + else state = -1; + break; + + case 22: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 115 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 116 ) state = 10; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 23: + if( info.src.charCodeAt( pos ) == 101 ) state = 14; + else state = -1; + break; + + case 24: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 109 ) || ( info.src.charCodeAt( pos ) >= 111 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 110 ) state = 6; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 25: + if( info.src.charCodeAt( pos ) == 114 ) state = 30; + else state = -1; + break; + + case 26: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 32 ) state = 31; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 27: + if( info.src.charCodeAt( pos ) == 111 ) state = 14; + else state = -1; + break; + + case 28: + if( info.src.charCodeAt( pos ) == 109 ) state = 11; + else state = -1; + break; + + case 29: + if( info.src.charCodeAt( pos ) == 114 ) state = 14; + else state = -1; + break; + + case 30: + if( info.src.charCodeAt( pos ) == 101 ) state = 23; + else state = -1; + break; + + case 31: + if( info.src.charCodeAt( pos ) == 114 ) state = 37; + else state = -1; + break; + + case 32: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 112 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 111 ) state = 13; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 33: + if( info.src.charCodeAt( pos ) == 111 ) state = 21; + else state = -1; + break; + + case 34: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 100 ) state = 18; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 35: + if( info.src.charCodeAt( pos ) == 111 ) state = 28; + else state = -1; + break; + + case 36: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 100 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 101 ) state = 20; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 37: + if( info.src.charCodeAt( pos ) == 111 ) state = 35; + else state = -1; + break; + + case 38: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 105 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 104 ) state = 18; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 39: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 105 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 104 ) state = 22; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 40: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 100 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 101 ) state = 24; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 41: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 102 ) || ( info.src.charCodeAt( pos ) >= 104 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 103 ) state = 26; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 42: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 100 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 101 ) state = 34; + else if( info.src.charCodeAt( pos ) == 97 ) state = 43; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 43: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 115 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 116 ) state = 38; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 44: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 102 ) || ( info.src.charCodeAt( pos ) >= 104 && info.src.charCodeAt( pos ) <= 117 ) || ( info.src.charCodeAt( pos ) >= 119 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 103 ) state = 39; + else if( info.src.charCodeAt( pos ) == 118 ) state = 49; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 45: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 105 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 104 ) state = 40; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 46: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 109 ) || ( info.src.charCodeAt( pos ) >= 111 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 110 ) state = 41; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 47: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 105 ) state = 44; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 48: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 98 ) || ( info.src.charCodeAt( pos ) >= 100 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 99 ) state = 45; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 49: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 105 ) state = 46; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 50: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 115 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 116 ) state = 48; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 51: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 105 ) state = 50; + else state = -1; + match = 6; + match_pos = pos; + break; + +} + + + pos++; + + } + while( state > -1 ); + + } + while( 1 > -1 && match == 1 ); + + if( match > -1 ) + { + info.att = info.src.substr( start, match_pos - start ); + info.offset = match_pos; + +switch( match ) +{ + case 2: + { + _$room[info.att] = info.att; + } + break; + + case 3: + { + _$device[info.att] = info.att; + } + break; + + case 4: + { + _$all_devices[info.att] = info.att; + } + break; + + case 5: + { + _$state[info.att] = info.att; + } + break; + + case 6: + { + _$rest[info.att] = info.att; + } + break; + +} + + + } + else + { + info.att = new String(); + match = -1; + } + + return match; +} + + +function __parse( src, err_off, err_la ) +{ theGrammarConverterInstance.semanticAnnotationResult={}; + var sstack = new Array(); + var vstack = new Array(); + var err_cnt = 0; + var act; + var go; + var la; + var rval; + var parseinfo = new Function( "", "var offset; var src; var att;" ); + var info = new parseinfo(); + + //Visual parse tree generation + var treenode = new Function( "", "var sym; var att; var child;" ); + var treenodes = new Array(); + var tree = new Array(); + var tmptree = null; + +/* Pop-Table */ +var pop_tab = new Array( + new Array( 0/* utterance' */, 1 ), + new Array( 8/* utterance */, 1 ), + new Array( 9/* TURN_DEVICE */, 2 ), + new Array( 9/* TURN_DEVICE */, 2 ), + new Array( 7/* phrases */, 1 ) +); + +/* Action-Table */ +var act_tab = new Array( + /* State 0 */ new Array( 4/* "ALL_DEVICES" */,4 , 5/* "STATE" */,5 ), + /* State 1 */ new Array( 10/* "$" */,0 ), + /* State 2 */ new Array( 10/* "$" */,-1 ), + /* State 3 */ new Array( 10/* "$" */,-4 ), + /* State 4 */ new Array( 5/* "STATE" */,6 ), + /* State 5 */ new Array( 4/* "ALL_DEVICES" */,7 ), + /* State 6 */ new Array( 10/* "$" */,-2 ), + /* State 7 */ new Array( 10/* "$" */,-3 ) +); + +/* Goto-Table */ +var goto_tab = new Array( + /* State 0 */ new Array( 8/* utterance */,1 , 7/* phrases */,2 , 9/* TURN_DEVICE */,3 ), + /* State 1 */ new Array( ), + /* State 2 */ new Array( ), + /* State 3 */ new Array( ), + /* State 4 */ new Array( ), + /* State 5 */ new Array( ), + /* State 6 */ new Array( ), + /* State 7 */ new Array( ) +); + + + +/* Symbol labels */ +var labels = new Array( + "utterance'" /* Non-terminal symbol */, + "WHITESPACE" /* Terminal symbol */, + "ROOM" /* Terminal symbol */, + "DEVICE" /* Terminal symbol */, + "ALL_DEVICES" /* Terminal symbol */, + "STATE" /* Terminal symbol */, + "REST" /* Terminal symbol */, + "phrases" /* Non-terminal symbol */, + "utterance" /* Non-terminal symbol */, + "TURN_DEVICE" /* Non-terminal symbol */, + "$" /* Terminal symbol */ +); + + + + info.offset = 0; + info.src = src; + info.att = new String(); + + if( !err_off ) + err_off = new Array(); + if( !err_la ) + err_la = new Array(); + + sstack.push( 0 ); + vstack.push( 0 ); + + la = __lex( info ); + + while( true ) + { + act = 9; + for( var i = 0; i < act_tab[sstack[sstack.length-1]].length; i+=2 ) + { + if( act_tab[sstack[sstack.length-1]][i] == la ) + { + act = act_tab[sstack[sstack.length-1]][i+1]; + break; + } + } + + if( _dbg_withtrace && sstack.length > 0 ) + { + __dbg_print( "\nState " + sstack[sstack.length-1] + "\n" + + "\tLookahead: " + labels[la] + " (\"" + info.att + "\")\n" + + "\tAction: " + act + "\n" + + "\tSource: \"" + info.src.substr( info.offset, 30 ) + ( ( info.offset + 30 < info.src.length ) ? + "..." : "" ) + "\"\n" + + "\tStack: " + sstack.join() + "\n" + + "\tValue stack: " + vstack.join() + "\n" ); + } + + + //Panic-mode: Try recovery when parse-error occurs! + if( act == 9 ) + { + if( _dbg_withtrace ) + __dbg_print( "Error detected: There is no reduce or shift on the symbol " + labels[la] ); + + err_cnt++; + err_off.push( info.offset - info.att.length ); + err_la.push( new Array() ); + for( var i = 0; i < act_tab[sstack[sstack.length-1]].length; i+=2 ) + err_la[err_la.length-1].push( labels[act_tab[sstack[sstack.length-1]][i]] ); + + //Remember the original stack! + var rsstack = new Array(); + var rvstack = new Array(); + for( var i = 0; i < sstack.length; i++ ) + { + rsstack[i] = sstack[i]; + rvstack[i] = vstack[i]; + } + + while( act == 9 && la != 10 ) + { + if( _dbg_withtrace ) + __dbg_print( "\tError recovery\n" + + "Current lookahead: " + labels[la] + " (" + info.att + ")\n" + + "Action: " + act + "\n\n" ); + if( la == -1 ) + info.offset++; + + while( act == 9 && sstack.length > 0 ) + { + sstack.pop(); + vstack.pop(); + + if( sstack.length == 0 ) + break; + + act = 9; + for( var i = 0; i < act_tab[sstack[sstack.length-1]].length; i+=2 ) + { + if( act_tab[sstack[sstack.length-1]][i] == la ) + { + act = act_tab[sstack[sstack.length-1]][i+1]; + break; + } + } + } + + if( act != 9 ) + break; + + for( var i = 0; i < rsstack.length; i++ ) + { + sstack.push( rsstack[i] ); + vstack.push( rvstack[i] ); + } + + la = __lex( info ); + } + + if( act == 9 ) + { + if( _dbg_withtrace ) + __dbg_print( "\tError recovery failed, terminating parse process..." ); + break; + } + + + if( _dbg_withtrace ) + __dbg_print( "\tError recovery succeeded, continuing" ); + } + + /* + if( act == 9 ) + break; + */ + + + //Shift + if( act > 0 ) + { + //Parse tree + var node = new treenode(); + node.sym = labels[ la ]; + node.att = info.att; + node.child = new Array(); + tree.push( treenodes.length ); + treenodes.push( node ); + + if( _dbg_withtrace ) + __dbg_print( "Shifting symbol: " + labels[la] + " (" + info.att + ")" ); + + sstack.push( act ); + vstack.push( info.att ); + + la = __lex( info ); + + if( _dbg_withtrace ) + __dbg_print( "\tNew lookahead symbol: " + labels[la] + " (" + info.att + ")" ); + } + //Reduce + else + { + act *= -1; + + if( _dbg_withtrace ) + __dbg_print( "Reducing by producution: " + act ); + + rval = void(0); + + if( _dbg_withtrace ) + __dbg_print( "\tPerforming semantic action..." ); + +switch( act ) +{ + case 0: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 1: + { + _$result['semantic'] = _$result['semantic'].replace(/"{/g,'{').replace(/}"/g,'}'); console.log(_$result); theGrammarConverterInstance.semanticAnnotationResult = _$result + } + break; + case 2: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var turn_device_temp = {}; turn_device_temp['phrases'] = {};turn_device_temp['phrases']['all_devices'] = {};turn_device_temp['phrases']['all_devices'][0] = vstack[ vstack.length - 2 ]; turn_device_temp['phrases']['state'] = {};turn_device_temp['phrases']['state'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; turn_device_temp['phrase']=_$phrase; turn_device_temp['semantic'] = '{"target":"' + function(){try{return _$all_devices[turn_device_temp['phrases']['all_devices'][0]];} catch(e){return 'undefined';}}() + '","action":"' + function(){try{return _$state[turn_device_temp['phrases']['state'][0]];} catch(e){return 'undefined';}}() + '"}'; _$turn_device[_$phrase] = turn_device_temp; _$result = turn_device_temp; + } + break; + case 3: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var turn_device_temp = {}; turn_device_temp['phrases'] = {};turn_device_temp['phrases']['state'] = {};turn_device_temp['phrases']['state'][0] = vstack[ vstack.length - 2 ]; turn_device_temp['phrases']['all_devices'] = {};turn_device_temp['phrases']['all_devices'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; turn_device_temp['phrase']=_$phrase; turn_device_temp['semantic'] = '{"target":"' + function(){try{return _$all_devices[turn_device_temp['phrases']['all_devices'][0]];} catch(e){return 'undefined';}}() + '","action":"' + function(){try{return _$state[turn_device_temp['phrases']['state'][0]];} catch(e){return 'undefined';}}() + '"}'; _$turn_device[_$phrase] = turn_device_temp; _$result = turn_device_temp; + } + break; + case 4: + { + rval = vstack[ vstack.length - 1 ]; + } + break; +} + + + + tmptree = new Array(); + + if( _dbg_withtrace ) + __dbg_print( "\tPopping " + pop_tab[act][1] + " off the stack..." ); + + for( var i = 0; i < pop_tab[act][1]; i++ ) + { + tmptree.push( tree.pop() ); + + sstack.pop(); + vstack.pop(); + } + + go = -1; + for( var i = 0; i < goto_tab[sstack[sstack.length-1]].length; i+=2 ) + { + if( goto_tab[sstack[sstack.length-1]][i] == pop_tab[act][0] ) + { + go = goto_tab[sstack[sstack.length-1]][i+1]; + break; + } + } + + //Parse tree + var node = new treenode(); + node.sym = labels[ pop_tab[act][0] ]; + node.att = rval; + node.child = tmptree.reverse(); + tree.push( treenodes.length ); + treenodes.push( node ); + + if( act == 0 ) + break; + + if( _dbg_withtrace ) + __dbg_print( "\tPushing non-terminal " + labels[ pop_tab[act][0] ] ); + + sstack.push( go ); + vstack.push( rval ); + } + + if( _dbg_withtrace ) + { + alert( _dbg_string ); + _dbg_string = new String(); + } + } + + if( _dbg_withtrace ) + { + __dbg_print( "\nParse complete." ); + alert( _dbg_string ); + } + + if( err_cnt == 0 ) + {} + + return err_cnt; +} + +function __dbg_image( name ) +{ + return ""; +} + +function __dbg_get_tree_depth( nodes, tree, max ) +{ + var tmp = 0; + + for( var i = 0; i < tree.length; i++ ) + { + if( nodes[ tree[i] ].child.length > 0 ) + if( max < ( tmp = __dbg_get_tree_depth( nodes, nodes[ tree[i] ].child, max+1 ) ) ) + max = tmp; + } + + return max; +} + +function __dbg_parsetree( prev, cnt, depth, nodes, tree ) +{ + var str = new String(); + + if( cnt == 0 ) + str += ""; + + if( !prev ) + prev = new Array(); + + if( cnt > 0 ) + prev[cnt-1] = true; + + for( var i = 0; i < tree.length; i++ ) + { + str += ""; + + for( var j = 0; j < cnt; j++ ) + { + str += ""; + } + + if( cnt > 0 && i == tree.length - 1 ) + prev[cnt-1] = false; + + str += ""; + + str += ""; + + if( nodes[ tree[i] ].child.length > 0 ) + str += __dbg_parsetree( prev, cnt+1, depth, nodes, nodes[ tree[i] ].child ); + } + + if( cnt == 0 ) + str += "
"; + + if( prev[j] ) + { + if( j == cnt - 1 && i == tree.length - 1 ) + str += __dbg_image( "ll" ); + else if( j == cnt - 1 ) + str += __dbg_image( "la" ); + else + str += __dbg_image( "l" ); + } + else + str += __dbg_image( "e" ); + + str += ""; + if( nodes[ tree[i] ].child.length > 0 ) + if( cnt == 0 ) + str += __dbg_image( "rn" ); + else + str += __dbg_image( "n" ); + else + str += __dbg_image( "t" ); + str += "" + nodes[ tree[i] ].sym ; + if( nodes[ tree[i] ].att && nodes[ tree[i] ].att != "" ) + str += ":" + nodes[ tree[i] ].att + "" ; + + str += "
"; + + return str; +} + +function __dbg_parsetree_phpSyntaxTree( nodes, tree ) +{ + var str = new String(); + + for( var i = 0; i < tree.length; i++ ) + { + str += " [ "; + + str += nodes[ tree[i] ].sym; + if( nodes[ tree[i] ].att && nodes[ tree[i] ].att != "" ) + { + var attr = new String( nodes[ tree[i] ].att ); + str += ":\"" + attr.replace( / |\t|\r|\n|\[|\]/g, "_" ) + "\""; + } + + str += " "; + + if( nodes[ tree[i] ].child.length > 0 ) + str += __dbg_parsetree_phpSyntaxTree( nodes, nodes[ tree[i] ].child ); + + str += " ] "; + } + + return str; +} + + +__parse( asr_recognized_text, new Array(), new Array()); +}); + +mobileDS.SemanticInterpreter.getInstance().setStopwords("en",["in","switch","turn","turned","please","the","and"]); + diff --git a/assets/www/gen/grammar/jp_grammar.checksum.txt b/assets/www/gen/grammar/jp_grammar.checksum.txt new file mode 100644 index 0000000..56f71c0 --- /dev/null +++ b/assets/www/gen/grammar/jp_grammar.checksum.txt @@ -0,0 +1 @@ +318 9a50983391acfc7cc6963d1d4d1a29bd \ No newline at end of file diff --git a/assets/www/gen/grammar/jp_grammar.js b/assets/www/gen/grammar/jp_grammar.js new file mode 100644 index 0000000..dc2f422 --- /dev/null +++ b/assets/www/gen/grammar/jp_grammar.js @@ -0,0 +1,621 @@ +mobileDS.SemanticInterpreter.getInstance().addGrammar("jp", function(asr_recognized_text){ + var theGrammarConverterInstance = this; + + + var _$result = ''; + var _$v_play_inf = {}; + var _$rest = {}; + var _$play = {}; + + +/* + JS/CC: A LALR(1) Compiler-Compiler written in JavaScript + Copyright (C) 2007, 2008 by J.M.K S.F. Software Technologies, Jan Max Meyer + http://www.jmksf.com ++ jscc<-AT->jmksf.com + + File: jscc.html + Author: Jan Max Meyer + Usage: Modified parser template for the Web Environment Module + Based on "driver_web.js_" parser template, but NOT in the public domain! + + You may use, modify and distribute this software under the terms and conditions + of the Artistic License. Please see ARTISTIC for more information. + + Driver for the JS/CC Web Environment with integrated HTML parse tree generator! + + Features: + - Parser trace messages + - Integrated panic-mode error recovery + - Parse tree construction for the JS/CC web environment +*/ + +var _dbg_withtrace = false; +var _dbg_string = new String(); + +function __dbg_print( text ) +{ + _dbg_string += text + "\n"; +} + +function __lex( info ) +{ + var state = 0; + var match = -1; + var match_pos = 0; + var start = 0; + var pos = info.offset + 1; + + do + { + pos--; + state = 0; + match = -2; + start = pos; + + if( info.src.length <= start ) + return 7; + + do + { + +switch( state ) +{ + case 0: + if( info.src.charCodeAt( pos ) == 9 || info.src.charCodeAt( pos ) == 32 ) state = 1; + else if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 126 ) state = 4; + else state = -1; + break; + + case 1: + state = -1; + match = 1; + match_pos = pos; + break; + + case 2: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else state = -1; + match = 3; + match_pos = pos; + break; + + case 3: + state = -1; + match = 2; + match_pos = pos; + break; + + case 4: + if( info.src.charCodeAt( pos ) == 126 ) state = 5; + else state = -1; + break; + + case 5: + if( info.src.charCodeAt( pos ) == 53 ) state = 6; + else state = -1; + break; + + case 6: + if( info.src.charCodeAt( pos ) == 49 ) state = 7; + else state = -1; + break; + + case 7: + if( info.src.charCodeAt( pos ) == 56 ) state = 8; + else state = -1; + break; + + case 8: + if( info.src.charCodeAt( pos ) == 68 ) state = 9; + else state = -1; + break; + + case 9: + if( info.src.charCodeAt( pos ) == 126 ) state = 18; + else state = -1; + break; + + case 10: + if( info.src.charCodeAt( pos ) == 55 ) state = 11; + else state = -1; + break; + + case 11: + if( info.src.charCodeAt( pos ) == 53 ) state = 12; + else state = -1; + break; + + case 12: + if( info.src.charCodeAt( pos ) == 49 ) state = 13; + else state = -1; + break; + + case 13: + if( info.src.charCodeAt( pos ) == 70 ) state = 16; + else state = -1; + break; + + case 14: + if( info.src.charCodeAt( pos ) == 126 ) state = 3; + else state = -1; + break; + + case 15: + if( info.src.charCodeAt( pos ) == 126 ) state = 10; + else state = -1; + break; + + case 16: + if( info.src.charCodeAt( pos ) == 126 ) state = 14; + else state = -1; + break; + + case 17: + if( info.src.charCodeAt( pos ) == 126 ) state = 15; + else state = -1; + break; + + case 18: + if( info.src.charCodeAt( pos ) == 126 ) state = 17; + else state = -1; + break; + +} + + + pos++; + + } + while( state > -1 ); + + } + while( 1 > -1 && match == 1 ); + + if( match > -1 ) + { + info.att = info.src.substr( start, match_pos - start ); + info.offset = match_pos; + +switch( match ) +{ + case 2: + { + _$v_play_inf[info.att] = info.att; + } + break; + + case 3: + { + _$rest[info.att] = info.att; + } + break; + +} + + + } + else + { + info.att = new String(); + match = -1; + } + + return match; +} + + +function __parse( src, err_off, err_la ) +{ theGrammarConverterInstance.semanticAnnotationResult={}; + var sstack = new Array(); + var vstack = new Array(); + var err_cnt = 0; + var act; + var go; + var la; + var rval; + var parseinfo = new Function( "", "var offset; var src; var att;" ); + var info = new parseinfo(); + + //Visual parse tree generation + var treenode = new Function( "", "var sym; var att; var child;" ); + var treenodes = new Array(); + var tree = new Array(); + var tmptree = null; + +/* Pop-Table */ +var pop_tab = new Array( + new Array( 0/* utterance' */, 1 ), + new Array( 5/* utterance */, 1 ), + new Array( 6/* PLAY */, 1 ), + new Array( 4/* phrases */, 1 ) +); + +/* Action-Table */ +var act_tab = new Array( + /* State 0 */ new Array( 2/* "V_PLAY_INF" */,4 ), + /* State 1 */ new Array( 7/* "$" */,0 ), + /* State 2 */ new Array( 7/* "$" */,-1 ), + /* State 3 */ new Array( 7/* "$" */,-3 ), + /* State 4 */ new Array( 7/* "$" */,-2 ) +); + +/* Goto-Table */ +var goto_tab = new Array( + /* State 0 */ new Array( 5/* utterance */,1 , 4/* phrases */,2 , 6/* PLAY */,3 ), + /* State 1 */ new Array( ), + /* State 2 */ new Array( ), + /* State 3 */ new Array( ), + /* State 4 */ new Array( ) +); + + + +/* Symbol labels */ +var labels = new Array( + "utterance'" /* Non-terminal symbol */, + "WHITESPACE" /* Terminal symbol */, + "V_PLAY_INF" /* Terminal symbol */, + "REST" /* Terminal symbol */, + "phrases" /* Non-terminal symbol */, + "utterance" /* Non-terminal symbol */, + "PLAY" /* Non-terminal symbol */, + "$" /* Terminal symbol */ +); + + + + info.offset = 0; + info.src = src; + info.att = new String(); + + if( !err_off ) + err_off = new Array(); + if( !err_la ) + err_la = new Array(); + + sstack.push( 0 ); + vstack.push( 0 ); + + la = __lex( info ); + + while( true ) + { + act = 6; + for( var i = 0; i < act_tab[sstack[sstack.length-1]].length; i+=2 ) + { + if( act_tab[sstack[sstack.length-1]][i] == la ) + { + act = act_tab[sstack[sstack.length-1]][i+1]; + break; + } + } + + if( _dbg_withtrace && sstack.length > 0 ) + { + __dbg_print( "\nState " + sstack[sstack.length-1] + "\n" + + "\tLookahead: " + labels[la] + " (\"" + info.att + "\")\n" + + "\tAction: " + act + "\n" + + "\tSource: \"" + info.src.substr( info.offset, 30 ) + ( ( info.offset + 30 < info.src.length ) ? + "..." : "" ) + "\"\n" + + "\tStack: " + sstack.join() + "\n" + + "\tValue stack: " + vstack.join() + "\n" ); + } + + + //Panic-mode: Try recovery when parse-error occurs! + if( act == 6 ) + { + if( _dbg_withtrace ) + __dbg_print( "Error detected: There is no reduce or shift on the symbol " + labels[la] ); + + err_cnt++; + err_off.push( info.offset - info.att.length ); + err_la.push( new Array() ); + for( var i = 0; i < act_tab[sstack[sstack.length-1]].length; i+=2 ) + err_la[err_la.length-1].push( labels[act_tab[sstack[sstack.length-1]][i]] ); + + //Remember the original stack! + var rsstack = new Array(); + var rvstack = new Array(); + for( var i = 0; i < sstack.length; i++ ) + { + rsstack[i] = sstack[i]; + rvstack[i] = vstack[i]; + } + + while( act == 6 && la != 7 ) + { + if( _dbg_withtrace ) + __dbg_print( "\tError recovery\n" + + "Current lookahead: " + labels[la] + " (" + info.att + ")\n" + + "Action: " + act + "\n\n" ); + if( la == -1 ) + info.offset++; + + while( act == 6 && sstack.length > 0 ) + { + sstack.pop(); + vstack.pop(); + + if( sstack.length == 0 ) + break; + + act = 6; + for( var i = 0; i < act_tab[sstack[sstack.length-1]].length; i+=2 ) + { + if( act_tab[sstack[sstack.length-1]][i] == la ) + { + act = act_tab[sstack[sstack.length-1]][i+1]; + break; + } + } + } + + if( act != 6 ) + break; + + for( var i = 0; i < rsstack.length; i++ ) + { + sstack.push( rsstack[i] ); + vstack.push( rvstack[i] ); + } + + la = __lex( info ); + } + + if( act == 6 ) + { + if( _dbg_withtrace ) + __dbg_print( "\tError recovery failed, terminating parse process..." ); + break; + } + + + if( _dbg_withtrace ) + __dbg_print( "\tError recovery succeeded, continuing" ); + } + + /* + if( act == 6 ) + break; + */ + + + //Shift + if( act > 0 ) + { + //Parse tree + var node = new treenode(); + node.sym = labels[ la ]; + node.att = info.att; + node.child = new Array(); + tree.push( treenodes.length ); + treenodes.push( node ); + + if( _dbg_withtrace ) + __dbg_print( "Shifting symbol: " + labels[la] + " (" + info.att + ")" ); + + sstack.push( act ); + vstack.push( info.att ); + + la = __lex( info ); + + if( _dbg_withtrace ) + __dbg_print( "\tNew lookahead symbol: " + labels[la] + " (" + info.att + ")" ); + } + //Reduce + else + { + act *= -1; + + if( _dbg_withtrace ) + __dbg_print( "Reducing by producution: " + act ); + + rval = void(0); + + if( _dbg_withtrace ) + __dbg_print( "\tPerforming semantic action..." ); + +switch( act ) +{ + case 0: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 1: + { + _$result['semantic'] = _$result['semantic'].replace(/"{/g,'{').replace(/}"/g,'}'); console.log(_$result); theGrammarConverterInstance.semanticAnnotationResult = _$result + } + break; + case 2: + { + rval = vstack[ vstack.length - 1 ]; var play_temp = {}; play_temp['phrases'] = {};play_temp['phrases']['v_play_inf'] = {};play_temp['phrases']['v_play_inf'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_temp['phrase']=_$phrase; play_temp['semantic'] = '{"Play":{}}'; _$play[_$phrase] = play_temp; _$result = play_temp; + } + break; + case 3: + { + rval = vstack[ vstack.length - 1 ]; + } + break; +} + + + + tmptree = new Array(); + + if( _dbg_withtrace ) + __dbg_print( "\tPopping " + pop_tab[act][1] + " off the stack..." ); + + for( var i = 0; i < pop_tab[act][1]; i++ ) + { + tmptree.push( tree.pop() ); + + sstack.pop(); + vstack.pop(); + } + + go = -1; + for( var i = 0; i < goto_tab[sstack[sstack.length-1]].length; i+=2 ) + { + if( goto_tab[sstack[sstack.length-1]][i] == pop_tab[act][0] ) + { + go = goto_tab[sstack[sstack.length-1]][i+1]; + break; + } + } + + //Parse tree + var node = new treenode(); + node.sym = labels[ pop_tab[act][0] ]; + node.att = rval; + node.child = tmptree.reverse(); + tree.push( treenodes.length ); + treenodes.push( node ); + + if( act == 0 ) + break; + + if( _dbg_withtrace ) + __dbg_print( "\tPushing non-terminal " + labels[ pop_tab[act][0] ] ); + + sstack.push( go ); + vstack.push( rval ); + } + + if( _dbg_withtrace ) + { + alert( _dbg_string ); + _dbg_string = new String(); + } + } + + if( _dbg_withtrace ) + { + __dbg_print( "\nParse complete." ); + alert( _dbg_string ); + } + + if( err_cnt == 0 ) + {} + + return err_cnt; +} + +function __dbg_image( name ) +{ + return ""; +} + +function __dbg_get_tree_depth( nodes, tree, max ) +{ + var tmp = 0; + + for( var i = 0; i < tree.length; i++ ) + { + if( nodes[ tree[i] ].child.length > 0 ) + if( max < ( tmp = __dbg_get_tree_depth( nodes, nodes[ tree[i] ].child, max+1 ) ) ) + max = tmp; + } + + return max; +} + +function __dbg_parsetree( prev, cnt, depth, nodes, tree ) +{ + var str = new String(); + + if( cnt == 0 ) + str += ""; + + if( !prev ) + prev = new Array(); + + if( cnt > 0 ) + prev[cnt-1] = true; + + for( var i = 0; i < tree.length; i++ ) + { + str += ""; + + for( var j = 0; j < cnt; j++ ) + { + str += ""; + } + + if( cnt > 0 && i == tree.length - 1 ) + prev[cnt-1] = false; + + str += ""; + + str += ""; + + if( nodes[ tree[i] ].child.length > 0 ) + str += __dbg_parsetree( prev, cnt+1, depth, nodes, nodes[ tree[i] ].child ); + } + + if( cnt == 0 ) + str += "
"; + + if( prev[j] ) + { + if( j == cnt - 1 && i == tree.length - 1 ) + str += __dbg_image( "ll" ); + else if( j == cnt - 1 ) + str += __dbg_image( "la" ); + else + str += __dbg_image( "l" ); + } + else + str += __dbg_image( "e" ); + + str += ""; + if( nodes[ tree[i] ].child.length > 0 ) + if( cnt == 0 ) + str += __dbg_image( "rn" ); + else + str += __dbg_image( "n" ); + else + str += __dbg_image( "t" ); + str += "" + nodes[ tree[i] ].sym ; + if( nodes[ tree[i] ].att && nodes[ tree[i] ].att != "" ) + str += ":" + nodes[ tree[i] ].att + "" ; + + str += "
"; + + return str; +} + +function __dbg_parsetree_phpSyntaxTree( nodes, tree ) +{ + var str = new String(); + + for( var i = 0; i < tree.length; i++ ) + { + str += " [ "; + + str += nodes[ tree[i] ].sym; + if( nodes[ tree[i] ].att && nodes[ tree[i] ].att != "" ) + { + var attr = new String( nodes[ tree[i] ].att ); + str += ":\"" + attr.replace( / |\t|\r|\n|\[|\]/g, "_" ) + "\""; + } + + str += " "; + + if( nodes[ tree[i] ].child.length > 0 ) + str += __dbg_parsetree_phpSyntaxTree( nodes, nodes[ tree[i] ].child ); + + str += " ] "; + } + + return str; +} + + +__parse( asr_recognized_text, new Array(), new Array()); +}); + +mobileDS.SemanticInterpreter.getInstance().setStopwords("jp",["ください","下さい"]); + diff --git a/assets/www/gen/grammar_nodejs/de_grammar.js b/assets/www/gen/grammar_nodejs/de_grammar.js new file mode 100644 index 0000000..8f28c0b --- /dev/null +++ b/assets/www/gen/grammar_nodejs/de_grammar.js @@ -0,0 +1,10720 @@ +mobileDS.SemanticInterpreter.getInstance().addGrammar("de", function(asr_recognized_text){ + var theGrammarConverterInstance = this; + + + var _$result = ''; + var _$undef_article = {}; + var _$pp_mine = {}; + var _$v_play_imp = {}; + var _$v_play_inf = {}; + var _$v_play_radio_inf = {}; + var _$v_play_fin = {}; + var _$v_show_imp = {}; + var _$v_show_inf = {}; + var _$v_record_imp = {}; + var _$v_record_inf = {}; + var _$v_send_imp = {}; + var _$v_send_inf = {}; + var _$v_send_fin = {}; + var _$v_open_inf = {}; + var _$v_open_fin = {}; + var _$v_find_imp = {}; + var _$radar = {}; + var _$radio = {}; + var _$audiotag = {}; + var _$voicetag = {}; + var _$social_network = {}; + var _$tweet = {}; + var _$info = {}; + var _$preposition = {}; + var _$pr_upto = {}; + var _$what = {}; + var _$where = {}; + var _$poi_category = {}; + var _$location_name = {}; + var _$square = {}; + var _$near_to_me = {}; + var _$street = {}; + var _$music = {}; + var _$number = {}; + var _$theme = {}; + var _$datenumber = {}; + var _$date_variable = {}; + var _$person = {}; + var _$timenumber = {}; + var _$ordinal = {}; + var _$month = {}; + var _$timeword = {}; + var _$stars = {}; + var _$more = {}; + var _$again = {}; + var _$and = {}; + var _$all = {}; + var _$that = {}; + var _$like = {}; + var _$micro = {}; + var _$cafe = {}; + var _$appointments = {}; + var _$appointment = {}; + var _$create = {}; + var _$rest = {}; + var _$date = {}; + var _$time = {}; + var _$timerange = {}; + var _$datetime = {}; + var _$location = {}; + var _$play = {}; + var _$play_more = {}; + var _$play_again = {}; + var _$play_radio = {}; + var _$play_audiotags = {}; + var _$play_voicetags = {}; + var _$record_audiotag = {}; + var _$record_voicetag = {}; + var _$record = {}; + var _$send = {}; + var _$send_tweet = {}; + var _$show_info = {}; + var _$show_pois = {}; + var _$just_show_appointments = {}; + var _$show_appointments_from = {}; + var _$show_appointments_from_to = {}; + var _$create_appointments = {}; + var _$find_person = {}; + var _$record_memo = {}; + var _$find_music = {}; + var _$start_radar = {}; + var _$liked = {}; + var _$rating = {}; + var _$full_title = {}; + var _$title = {}; + + +/* + JS/CC: A LALR(1) Compiler-Compiler written in JavaScript + Copyright (C) 2007, 2008 by J.M.K S.F. Software Technologies, Jan Max Meyer + http://www.jmksf.com ++ jscc<-AT->jmksf.com + + File: jscc.html + Author: Jan Max Meyer + Usage: Modified parser template for the Web Environment Module + Based on "driver_web.js_" parser template, but NOT in the public domain! + + You may use, modify and distribute this software under the terms and conditions + of the Artistic License. Please see ARTISTIC for more information. + + Driver for the JS/CC Web Environment with integrated HTML parse tree generator! + + Features: + - Parser trace messages + - Integrated panic-mode error recovery + - Parse tree construction for the JS/CC web environment +*/ + +var _dbg_withtrace = false; +var _dbg_string = new String(); + +function __dbg_print( text ) +{ + _dbg_string += text + "\n"; +} + +function __lex( info ) +{ + var state = 0; + var match = -1; + var match_pos = 0; + var start = 0; + var pos = info.offset + 1; + + do + { + pos--; + state = 0; + match = -2; + start = pos; + + if( info.src.length <= start ) + return 89; + + do + { + +switch( state ) +{ + case 0: + if( info.src.charCodeAt( pos ) == 9 || info.src.charCodeAt( pos ) == 32 ) state = 1; + else if( ( info.src.charCodeAt( pos ) >= 48 && info.src.charCodeAt( pos ) <= 57 ) ) state = 2; + else if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 120 && info.src.charCodeAt( pos ) <= 121 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 97 ) state = 59; + else if( info.src.charCodeAt( pos ) == 105 ) state = 84; + else if( info.src.charCodeAt( pos ) == 117 ) state = 98; + else if( info.src.charCodeAt( pos ) == 119 ) state = 105; + else if( info.src.charCodeAt( pos ) == 98 ) state = 263; + else if( info.src.charCodeAt( pos ) == 101 ) state = 278; + else if( info.src.charCodeAt( pos ) == 109 ) state = 282; + else if( info.src.charCodeAt( pos ) == 112 ) state = 285; + else if( info.src.charCodeAt( pos ) == 118 ) state = 287; + else if( info.src.charCodeAt( pos ) == 122 ) state = 289; + else if( info.src.charCodeAt( pos ) == 99 ) state = 400; + else if( info.src.charCodeAt( pos ) == 100 ) state = 408; + else if( info.src.charCodeAt( pos ) == 103 ) state = 410; + else if( info.src.charCodeAt( pos ) == 104 ) state = 411; + else if( info.src.charCodeAt( pos ) == 106 ) state = 412; + else if( info.src.charCodeAt( pos ) == 110 ) state = 413; + else if( info.src.charCodeAt( pos ) == 113 ) state = 414; + else if( info.src.charCodeAt( pos ) == 114 ) state = 415; + else if( info.src.charCodeAt( pos ) == 115 ) state = 416; + else if( info.src.charCodeAt( pos ) == 102 ) state = 497; + else if( info.src.charCodeAt( pos ) == 116 ) state = 502; + else if( info.src.charCodeAt( pos ) == 111 ) state = 597; + else if( info.src.charCodeAt( pos ) == 107 ) state = 641; + else if( info.src.charCodeAt( pos ) == 108 ) state = 655; + else if( info.src.charCodeAt( pos ) == 95 ) state = 668; + else state = -1; + break; + + case 1: + state = -1; + match = 1; + match_pos = pos; + break; + + case 2: + if( info.src.charCodeAt( pos ) == 46 ) state = 4; + else if( info.src.charCodeAt( pos ) == 58 ) state = 57; + else if( ( info.src.charCodeAt( pos ) >= 48 && info.src.charCodeAt( pos ) <= 57 ) ) state = 262; + else state = -1; + match = 35; + match_pos = pos; + break; + + case 3: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 4: + if( ( info.src.charCodeAt( pos ) >= 48 && info.src.charCodeAt( pos ) <= 57 ) ) state = 104; + else state = -1; + match = 41; + match_pos = pos; + break; + + case 5: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 102 ) || ( info.src.charCodeAt( pos ) >= 104 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 139; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 103 ) state = 513; + else state = -1; + match = 25; + match_pos = pos; + break; + + case 6: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 28; + match_pos = pos; + break; + + case 7: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 115 ) state = 61; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 29; + match_pos = pos; + break; + + case 8: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 116 ) state = 137; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 26; + match_pos = pos; + break; + + case 9: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 101 ) state = 62; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 97; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 2; + match_pos = pos; + break; + + case 10: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 42; + match_pos = pos; + break; + + case 11: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 108 ) state = 432; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 34; + match_pos = pos; + break; + + case 12: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 43; + match_pos = pos; + break; + + case 13: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 97 ) state = 310; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 47; + match_pos = pos; + break; + + case 14: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 116 ) state = 137; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 27; + match_pos = pos; + break; + + case 15: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 30; + match_pos = pos; + break; + + case 16: + if( ( info.src.charCodeAt( pos ) >= 48 && info.src.charCodeAt( pos ) <= 57 ) ) state = 16; + else state = -1; + match = 37; + match_pos = pos; + break; + + case 17: + state = -1; + match = 40; + match_pos = pos; + break; + + case 18: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 66; + else if( ( info.src.charCodeAt( pos ) >= 0 && info.src.charCodeAt( pos ) <= 31 ) || ( info.src.charCodeAt( pos ) >= 33 && info.src.charCodeAt( pos ) <= 44 ) || ( info.src.charCodeAt( pos ) >= 46 && info.src.charCodeAt( pos ) <= 64 ) || ( info.src.charCodeAt( pos ) >= 91 && info.src.charCodeAt( pos ) <= 94 ) || info.src.charCodeAt( pos ) == 96 || ( info.src.charCodeAt( pos ) >= 123 && info.src.charCodeAt( pos ) <= 254 ) ) state = 88; + else if( info.src.charCodeAt( pos ) == 32 ) state = 100; + else if( info.src.charCodeAt( pos ) == 45 ) state = 106; + else if( info.src.charCodeAt( pos ) == 115 ) state = 110; + else if( info.src.charCodeAt( pos ) == 100 ) state = 267; + else if( info.src.charCodeAt( pos ) == 97 ) state = 402; + else if( info.src.charCodeAt( pos ) == 112 ) state = 409; + else state = -1; + match = 33; + match_pos = pos; + break; + + case 19: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 110 ) state = 67; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 115 ) state = 89; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 48; + match_pos = pos; + break; + + case 20: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 49; + match_pos = pos; + break; + + case 21: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 32; + match_pos = pos; + break; + + case 22: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 114 ) state = 612; + else state = -1; + match = 24; + match_pos = pos; + break; + + case 23: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 45; + match_pos = pos; + break; + + case 24: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 101 ) state = 70; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 3; + match_pos = pos; + break; + + case 25: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 10; + match_pos = pos; + break; + + case 26: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 22; + match_pos = pos; + break; + + case 27: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 101 ) state = 72; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 97 ) state = 310; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 12; + match_pos = pos; + break; + + case 28: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 101 ) state = 73; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 8; + match_pos = pos; + break; + + case 29: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 19; + match_pos = pos; + break; + + case 30: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 17; + match_pos = pos; + break; + + case 31: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 38; + match_pos = pos; + break; + + case 32: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || info.src.charCodeAt( pos ) == 101 || ( info.src.charCodeAt( pos ) >= 103 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 102 ) state = 371; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 477; + else state = -1; + match = 51; + match_pos = pos; + break; + + case 33: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 18; + match_pos = pos; + break; + + case 34: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 116 ) state = 43; + else if( info.src.charCodeAt( pos ) == 101 ) state = 75; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 4; + match_pos = pos; + break; + + case 35: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 101 ) state = 76; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 44; + match_pos = pos; + break; + + case 36: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 50; + match_pos = pos; + break; + + case 37: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 36; + match_pos = pos; + break; + + case 38: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 101 ) state = 77; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 23; + match_pos = pos; + break; + + case 39: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 39; + match_pos = pos; + break; + + case 40: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 31; + match_pos = pos; + break; + + case 41: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 13; + match_pos = pos; + break; + + case 42: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 14; + match_pos = pos; + break; + + case 43: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 7; + match_pos = pos; + break; + + case 44: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 101 ) state = 52; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 54; + match_pos = pos; + break; + + case 45: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 9; + match_pos = pos; + break; + + case 46: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 11; + match_pos = pos; + break; + + case 47: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 52; + match_pos = pos; + break; + + case 48: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 46; + match_pos = pos; + break; + + case 49: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 5; + match_pos = pos; + break; + + case 50: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 15; + match_pos = pos; + break; + + case 51: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 16; + match_pos = pos; + break; + + case 52: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 53; + match_pos = pos; + break; + + case 53: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 115 ) state = 80; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 20; + match_pos = pos; + break; + + case 54: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 55; + match_pos = pos; + break; + + case 55: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 103; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 21; + match_pos = pos; + break; + + case 56: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 6; + match_pos = pos; + break; + + case 57: + if( ( info.src.charCodeAt( pos ) >= 48 && info.src.charCodeAt( pos ) <= 57 ) ) state = 108; + else state = -1; + break; + + case 58: + if( info.src.charCodeAt( pos ) == 46 ) state = 4; + else if( ( info.src.charCodeAt( pos ) >= 48 && info.src.charCodeAt( pos ) <= 57 ) ) state = 58; + else state = -1; + match = 35; + match_pos = pos; + break; + + case 59: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || info.src.charCodeAt( pos ) == 97 || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || info.src.charCodeAt( pos ) == 116 || ( info.src.charCodeAt( pos ) >= 118 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 98 ) state = 5; + else if( info.src.charCodeAt( pos ) == 109 ) state = 60; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 117 ) state = 109; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 99 ) state = 291; + else if( info.src.charCodeAt( pos ) == 108 ) state = 292; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 418; + else if( info.src.charCodeAt( pos ) == 110 ) state = 559; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 60: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 25; + match_pos = pos; + break; + + case 61: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 116 ) state = 137; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 29; + match_pos = pos; + break; + + case 62: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 108 ) || info.src.charCodeAt( pos ) == 111 || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 110 ) || info.src.charCodeAt( pos ) == 114 ) state = 87; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 99; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 2; + match_pos = pos; + break; + + case 63: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 114 ) state = 18; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 42; + match_pos = pos; + break; + + case 64: + state = -1; + match = 34; + match_pos = pos; + break; + + case 65: + state = -1; + match = 30; + match_pos = pos; + break; + + case 66: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 33; + match_pos = pos; + break; + + case 67: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 48; + match_pos = pos; + break; + + case 68: + state = -1; + match = 32; + match_pos = pos; + break; + + case 69: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 115 ) state = 90; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 24; + match_pos = pos; + break; + + case 70: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 110 ) state = 91; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 32 ) state = 124; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 114 ) state = 370; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 3; + match_pos = pos; + break; + + case 71: + state = -1; + match = 22; + match_pos = pos; + break; + + case 72: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 110 ) state = 41; + else if( info.src.charCodeAt( pos ) == 116 ) state = 42; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 12; + match_pos = pos; + break; + + case 73: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 110 ) state = 45; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 8; + match_pos = pos; + break; + + case 74: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 114 ) state = 33; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 17; + match_pos = pos; + break; + + case 75: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 110 ) state = 49; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 4; + match_pos = pos; + break; + + case 76: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 44; + match_pos = pos; + break; + + case 77: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 110 ) state = 93; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 23; + match_pos = pos; + break; + + case 78: + if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 122 ) ) state = 114; + else state = -1; + match = 31; + match_pos = pos; + break; + + case 79: + state = -1; + match = 13; + match_pos = pos; + break; + + case 80: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 116 ) state = 137; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 20; + match_pos = pos; + break; + + case 81: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 256; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 21; + match_pos = pos; + break; + + case 82: + if( info.src.charCodeAt( pos ) == 115 ) state = 111; + else state = -1; + break; + + case 83: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 35; + match_pos = pos; + break; + + case 84: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 108 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 109 ) state = 60; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 110 ) state = 85; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 85: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || info.src.charCodeAt( pos ) == 101 || ( info.src.charCodeAt( pos ) >= 103 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 102 ) state = 153; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 25; + match_pos = pos; + break; + + case 86: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 29; + match_pos = pos; + break; + + case 87: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 2; + match_pos = pos; + break; + + case 88: + state = -1; + match = 33; + match_pos = pos; + break; + + case 89: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 116 ) state = 137; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 48; + match_pos = pos; + break; + + case 90: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 116 ) state = 137; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 24; + match_pos = pos; + break; + + case 91: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 3; + match_pos = pos; + break; + + case 92: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 102; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 12; + match_pos = pos; + break; + + case 93: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 23; + match_pos = pos; + break; + + case 94: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 20; + match_pos = pos; + break; + + case 95: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 107; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 21; + match_pos = pos; + break; + + case 96: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 122 ) ) state = 114; + else if( info.src.charCodeAt( pos ) == 112 ) state = 499; + else state = -1; + break; + + case 97: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 116 ) state = 137; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 35; + match_pos = pos; + break; + + case 98: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 105 && info.src.charCodeAt( pos ) <= 108 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 104 ) state = 125; + else if( info.src.charCodeAt( pos ) == 110 ) state = 127; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 109 ) state = 564; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 99: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 116 ) state = 137; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 2; + match_pos = pos; + break; + + case 100: + if( info.src.charCodeAt( pos ) == 115 ) state = 111; + else state = -1; + match = 33; + match_pos = pos; + break; + + case 101: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 185; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 24; + match_pos = pos; + break; + + case 102: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 110 ) state = 41; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 12; + match_pos = pos; + break; + + case 103: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 116 ) state = 137; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 21; + match_pos = pos; + break; + + case 104: + if( info.src.charCodeAt( pos ) == 46 ) state = 16; + else if( ( info.src.charCodeAt( pos ) >= 48 && info.src.charCodeAt( pos ) <= 57 ) ) state = 104; + else state = -1; + break; + + case 105: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 111 ) state = 6; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 97 ) state = 131; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 101 ) state = 431; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 105 ) state = 601; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 106: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 122 ) ) state = 114; + else if( info.src.charCodeAt( pos ) == 112 ) state = 499; + else state = -1; + match = 33; + match_pos = pos; + break; + + case 107: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 21; + match_pos = pos; + break; + + case 108: + if( ( info.src.charCodeAt( pos ) >= 48 && info.src.charCodeAt( pos ) <= 57 ) ) state = 17; + else state = -1; + break; + + case 109: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || info.src.charCodeAt( pos ) == 101 || ( info.src.charCodeAt( pos ) >= 104 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 312; + else if( info.src.charCodeAt( pos ) == 112 ) state = 313; + else if( info.src.charCodeAt( pos ) == 103 ) state = 433; + else if( info.src.charCodeAt( pos ) == 102 ) state = 498; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 110: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 116 ) state = 137; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 33; + match_pos = pos; + break; + + case 111: + if( info.src.charCodeAt( pos ) == 116 ) state = 116; + else state = -1; + break; + + case 112: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 114 ) state = 7; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 113: + if( info.src.charCodeAt( pos ) == 95 ) state = 130; + else state = -1; + match = 33; + match_pos = pos; + break; + + case 114: + if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 122 ) ) state = 114; + else state = -1; + break; + + case 115: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 115 ) state = 8; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 116: + if( info.src.charCodeAt( pos ) == 114 ) state = 265; + else state = -1; + break; + + case 117: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 110 ) state = 9; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 118: + if( info.src.charCodeAt( pos ) == 115 ) state = 111; + else if( info.src.charCodeAt( pos ) == 100 ) state = 120; + else state = -1; + break; + + case 119: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || info.src.charCodeAt( pos ) == 101 || ( info.src.charCodeAt( pos ) >= 103 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 102 ) state = 83; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 120: + if( info.src.charCodeAt( pos ) == 97 ) state = 128; + else state = -1; + break; + + case 121: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 105 ) state = 10; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 122: + if( info.src.charCodeAt( pos ) == 122 ) state = 78; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 121 ) ) state = 114; + else state = -1; + break; + + case 123: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 112 ) state = 11; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 323; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 124: + if( info.src.charCodeAt( pos ) == 115 ) state = 111; + else if( info.src.charCodeAt( pos ) == 108 ) state = 134; + else state = -1; + break; + + case 125: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 114 ) state = 12; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 126: + if( info.src.charCodeAt( pos ) == 115 ) state = 138; + else state = -1; + break; + + case 127: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 100 ) state = 13; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 128: + if( info.src.charCodeAt( pos ) == 109 ) state = 269; + else state = -1; + break; + + case 129: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 108 ) || info.src.charCodeAt( pos ) == 111 || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 110 ) ) state = 60; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 105 ) state = 448; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 114 ) state = 523; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 130: + if( info.src.charCodeAt( pos ) == 95 ) state = 140; + else state = -1; + break; + + case 131: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 115 ) state = 14; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 132: + if( info.src.charCodeAt( pos ) == 115 ) state = 111; + else if( info.src.charCodeAt( pos ) == 104 ) state = 142; + else state = -1; + break; + + case 133: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 111 ) state = 15; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 134: + if( info.src.charCodeAt( pos ) == 105 ) state = 144; + else state = -1; + break; + + case 135: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 108 ) || ( info.src.charCodeAt( pos ) >= 110 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 109 ) state = 60; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 136: + if( info.src.charCodeAt( pos ) == 115 ) state = 111; + else if( info.src.charCodeAt( pos ) == 110 ) state = 146; + else state = -1; + break; + + case 137: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 114 ) state = 18; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 138: + if( info.src.charCodeAt( pos ) == 111 ) state = 148; + else state = -1; + break; + + case 139: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 116 ) state = 137; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 450; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 140: + if( info.src.charCodeAt( pos ) == 115 ) state = 272; + else state = -1; + break; + + case 141: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 116 ) state = 83; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 142: + if( info.src.charCodeAt( pos ) == 97 ) state = 152; + else state = -1; + break; + + case 143: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 101 ) state = 19; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 144: + if( info.src.charCodeAt( pos ) == 101 ) state = 154; + else state = -1; + break; + + case 145: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 101 ) state = 86; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 146: + if( info.src.charCodeAt( pos ) == 95 ) state = 273; + else state = -1; + break; + + case 147: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || info.src.charCodeAt( pos ) == 116 || ( info.src.charCodeAt( pos ) >= 118 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 117 ) state = 20; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 148: + if( info.src.charCodeAt( pos ) == 99 ) state = 156; + else state = -1; + break; + + case 149: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 105 ) state = 83; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 150: + if( info.src.charCodeAt( pos ) == 116 ) state = 79; + else state = -1; + break; + + case 151: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 114 ) state = 21; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 152: + if( info.src.charCodeAt( pos ) == 117 ) state = 158; + else state = -1; + break; + + case 153: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 111 ) state = 22; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 154: + if( info.src.charCodeAt( pos ) == 98 ) state = 160; + else state = -1; + break; + + case 155: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 121 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 122 ) state = 401; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 156: + if( info.src.charCodeAt( pos ) == 105 ) state = 274; + else state = -1; + break; + + case 157: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 114 ) state = 23; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 158: + if( info.src.charCodeAt( pos ) == 112 ) state = 164; + else state = -1; + break; + + case 159: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 110 ) state = 24; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 160: + if( info.src.charCodeAt( pos ) == 108 ) state = 166; + else state = -1; + break; + + case 161: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 116 ) state = 137; + else if( info.src.charCodeAt( pos ) == 105 ) state = 197; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 162: + if( info.src.charCodeAt( pos ) == 97 ) state = 168; + else state = -1; + break; + + case 163: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 105 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 104 ) state = 60; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 164: + if( info.src.charCodeAt( pos ) == 116 ) state = 176; + else state = -1; + break; + + case 165: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 110 ) state = 83; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 166: + if( info.src.charCodeAt( pos ) == 105 ) state = 178; + else state = -1; + break; + + case 167: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 108 ) || ( info.src.charCodeAt( pos ) >= 110 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 109 ) state = 25; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 168: + if( info.src.charCodeAt( pos ) == 101 ) state = 286; + else state = -1; + break; + + case 169: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 101 ) state = 26; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 108 ) state = 432; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 170: + if( info.src.charCodeAt( pos ) == 115 ) state = 111; + else if( info.src.charCodeAt( pos ) == 98 ) state = 180; + else state = -1; + break; + + case 171: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 100 ) state = 27; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 172: + if( info.src.charCodeAt( pos ) == 108 ) state = 71; + else state = -1; + break; + + case 173: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 114 ) state = 83; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 174: + if( info.src.charCodeAt( pos ) == 101 ) state = 88; + else state = -1; + break; + + case 175: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 102 ) || ( info.src.charCodeAt( pos ) >= 104 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 103 ) state = 28; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 176: + if( info.src.charCodeAt( pos ) == 98 ) state = 182; + else state = -1; + break; + + case 177: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 108 ) || ( info.src.charCodeAt( pos ) >= 110 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 109 ) state = 66; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 178: + if( info.src.charCodeAt( pos ) == 110 ) state = 184; + else state = -1; + break; + + case 179: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 108 ) state = 10; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 180: + if( info.src.charCodeAt( pos ) == 101 ) state = 186; + else state = -1; + break; + + case 181: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 111 ) state = 29; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 182: + if( info.src.charCodeAt( pos ) == 97 ) state = 188; + else state = -1; + break; + + case 183: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 115 ) state = 61; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 184: + if( info.src.charCodeAt( pos ) == 103 ) state = 280; + else state = -1; + break; + + case 185: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 110 ) state = 598; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 186: + if( info.src.charCodeAt( pos ) == 114 ) state = 190; + else state = -1; + break; + + case 187: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 101 ) state = 30; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 97 ) state = 310; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 188: + if( info.src.charCodeAt( pos ) == 104 ) state = 192; + else state = -1; + break; + + case 189: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 101 ) state = 31; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 190: + if( info.src.charCodeAt( pos ) == 103 ) state = 65; + else state = -1; + break; + + case 191: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 116 ) state = 137; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 101 ) state = 401; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 192: + if( info.src.charCodeAt( pos ) == 110 ) state = 198; + else state = -1; + break; + + case 193: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 111 ) state = 32; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 194: + if( info.src.charCodeAt( pos ) == 109 ) state = 200; + else state = -1; + break; + + case 195: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 101 ) state = 15; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 196: + if( info.src.charCodeAt( pos ) == 101 ) state = 68; + else state = -1; + break; + + case 197: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 106 ) || ( info.src.charCodeAt( pos ) >= 108 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 107 ) state = 401; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 198: + if( info.src.charCodeAt( pos ) == 104 ) state = 202; + else state = -1; + break; + + case 199: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 101 ) state = 25; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 200: + if( info.src.charCodeAt( pos ) == 117 ) state = 283; + else state = -1; + break; + + case 201: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 114 ) state = 18; + else if( info.src.charCodeAt( pos ) == 101 ) state = 72; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 202: + if( info.src.charCodeAt( pos ) == 111 ) state = 204; + else state = -1; + break; + + case 203: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 108 ) || ( info.src.charCodeAt( pos ) >= 110 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 114 ) state = 33; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 109 ) state = 177; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 204: + if( info.src.charCodeAt( pos ) == 102 ) state = 65; + else state = -1; + break; + + case 205: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 97; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 206: + if( info.src.charCodeAt( pos ) == 105 ) state = 208; + else state = -1; + break; + + case 207: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 108 ) state = 34; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 208: + if( info.src.charCodeAt( pos ) == 107 ) state = 64; + else state = -1; + break; + + case 209: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 110 ) state = 35; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 210: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 114 ) state = 36; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 211: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 97 ) state = 37; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 212: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 116 ) state = 38; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 213: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 114 ) state = 39; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 214: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 121 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 122 ) state = 40; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 215: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 116 ) state = 63; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 216: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 110 ) state = 264; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 217: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 108 ) state = 69; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 218: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 114 ) state = 10; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 219: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 116 ) state = 15; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 220: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 110 ) state = 31; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 221: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 118 ) || ( info.src.charCodeAt( pos ) >= 120 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 119 ) state = 15; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 222: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 101 ) state = 74; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 223: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 106 ) || ( info.src.charCodeAt( pos ) >= 108 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 107 ) state = 92; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 224: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 108 ) || ( info.src.charCodeAt( pos ) >= 110 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 109 ) state = 29; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 225: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 110 ) state = 44; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 226: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 50 ) state = 126; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 116 ) state = 375; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 227: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 110 ) state = 46; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 228: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 108 ) state = 47; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 229: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 108 ) state = 48; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 230: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 108 ) || ( info.src.charCodeAt( pos ) >= 110 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || info.src.charCodeAt( pos ) == 116 || ( info.src.charCodeAt( pos ) >= 118 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 117 ) state = 15; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 109 ) state = 177; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 231: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 110 ) state = 50; + else if( info.src.charCodeAt( pos ) == 116 ) state = 51; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 232: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 114 ) state = 26; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 233: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 102 ) || ( info.src.charCodeAt( pos ) >= 104 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 103 ) state = 15; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 234: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 116 ) state = 43; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 238; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 235: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 110 ) state = 45; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 236: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 102 ) || ( info.src.charCodeAt( pos ) >= 104 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 103 ) state = 53; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 237: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 101 ) state = 46; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 238: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 110 ) state = 49; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 239: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 101 ) state = 54; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 240: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 114 ) state = 60; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 110 ) state = 119; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 241: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 106 ) || ( info.src.charCodeAt( pos ) >= 108 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 107 ) state = 26; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 242: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 110 ) state = 266; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 243: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 114 ) state = 18; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 213; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 244: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 121 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 122 ) state = 15; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 245: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 102 ) || ( info.src.charCodeAt( pos ) >= 104 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 103 ) state = 21; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 246: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 102 ) || ( info.src.charCodeAt( pos ) >= 104 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 103 ) state = 55; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 247: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 116 ) state = 137; + else if( info.src.charCodeAt( pos ) == 115 ) state = 279; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 248: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 102 ) || ( info.src.charCodeAt( pos ) >= 104 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 103 ) state = 81; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 249: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 114 ) state = 95; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 250: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 121 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 122 ) state = 10; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 251: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 101 ) state = 21; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 252: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || info.src.charCodeAt( pos ) == 101 || ( info.src.charCodeAt( pos ) >= 103 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 102 ) state = 15; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 253: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 121 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 122 ) state = 94; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 254: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 116 ) state = 43; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 255: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 116 ) state = 86; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 256: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 110 ) state = 107; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 257: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 110 ) state = 101; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 258: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 121 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 122 ) state = 107; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 259: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 101 ) state = 66; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 260: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 116 ) state = 36; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 261: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 110 ) state = 56; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 262: + if( info.src.charCodeAt( pos ) == 46 ) state = 4; + else if( info.src.charCodeAt( pos ) == 58 ) state = 57; + else if( ( info.src.charCodeAt( pos ) >= 48 && info.src.charCodeAt( pos ) <= 57 ) ) state = 58; + else state = -1; + match = 35; + match_pos = pos; + break; + + case 263: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 97 ) state = 112; + else if( info.src.charCodeAt( pos ) == 105 ) state = 115; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 504; + else if( info.src.charCodeAt( pos ) == 114 ) state = 505; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 264: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 32 ) state = 132; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 30; + match_pos = pos; + break; + + case 265: + if( ( info.src.charCodeAt( pos ) >= 0 && info.src.charCodeAt( pos ) <= 96 ) || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 254 ) ) state = 88; + else if( info.src.charCodeAt( pos ) == 97 ) state = 113; + else state = -1; + match = 33; + match_pos = pos; + break; + + case 266: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 51; + match_pos = pos; + break; + + case 267: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 97 ) state = 310; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 33; + match_pos = pos; + break; + + case 268: + if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 115 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 114; + else if( info.src.charCodeAt( pos ) == 116 ) state = 122; + else state = -1; + break; + + case 269: + if( info.src.charCodeAt( pos ) == 105 ) state = 150; + else state = -1; + break; + + case 270: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 114 ) state = 18; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 101 ) state = 352; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 271: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 116 ) state = 137; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 384; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 272: + if( info.src.charCodeAt( pos ) == 115 ) state = 281; + else state = -1; + break; + + case 273: + if( info.src.charCodeAt( pos ) == 95 ) state = 162; + else state = -1; + break; + + case 274: + if( info.src.charCodeAt( pos ) == 97 ) state = 172; + else state = -1; + break; + + case 275: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 101 ) state = 30; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 276: + if( info.src.charCodeAt( pos ) == 104 ) state = 196; + else state = -1; + break; + + case 277: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 110 ) state = 15; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 278: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 105 ) state = 117; + else if( info.src.charCodeAt( pos ) == 108 ) state = 119; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 114 ) state = 296; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 279: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 116 ) state = 137; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 95 ) state = 394; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 280: + if( info.src.charCodeAt( pos ) == 115 ) state = 194; + else state = -1; + break; + + case 281: + if( info.src.charCodeAt( pos ) == 95 ) state = 284; + else state = -1; + break; + + case 282: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || info.src.charCodeAt( pos ) == 116 || ( info.src.charCodeAt( pos ) >= 118 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 97 ) state = 121; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 101 ) state = 301; + else if( info.src.charCodeAt( pos ) == 117 ) state = 302; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 105 ) state = 423; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 111 ) state = 508; + else if( info.src.charCodeAt( pos ) == 95 ) state = 625; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 283: + if( info.src.charCodeAt( pos ) == 115 ) state = 206; + else state = -1; + break; + + case 284: + if( info.src.charCodeAt( pos ) == 95 ) state = 174; + else state = -1; + break; + + case 285: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 111 ) state = 123; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 97 ) state = 509; + else if( info.src.charCodeAt( pos ) == 114 ) state = 669; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 286: + if( info.src.charCodeAt( pos ) == 95 ) state = 288; + else state = -1; + break; + + case 287: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 111 ) state = 129; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 105 ) state = 308; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 97 ) state = 430; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 288: + if( info.src.charCodeAt( pos ) == 95 ) state = 276; + else state = -1; + break; + + case 289: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || info.src.charCodeAt( pos ) == 116 || info.src.charCodeAt( pos ) == 118 || ( info.src.charCodeAt( pos ) >= 120 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 111 ) state = 133; + else if( info.src.charCodeAt( pos ) == 117 ) state = 135; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 101 ) state = 309; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 119 ) state = 623; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 290: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 116 ) state = 137; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 291: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 105 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 104 ) state = 141; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 292: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 108 ) state = 143; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 293: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || info.src.charCodeAt( pos ) == 101 || ( info.src.charCodeAt( pos ) >= 103 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 102 ) state = 145; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 294: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 121 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 122 ) state = 147; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 116 ) state = 315; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 295: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 149; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 296: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 106 ) || ( info.src.charCodeAt( pos ) >= 108 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 406; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 107 ) state = 569; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 297: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || info.src.charCodeAt( pos ) == 101 || ( info.src.charCodeAt( pos ) >= 103 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 317; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 102 ) state = 661; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 298: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 151; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 299: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 121 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 122 ) state = 155; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 110 ) state = 438; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 300: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || info.src.charCodeAt( pos ) == 109 || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 108 || info.src.charCodeAt( pos ) == 110 ) state = 121; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 301: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 104 ) state = 157; + else if( info.src.charCodeAt( pos ) == 105 ) state = 159; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 302: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 161; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 116 ) state = 430; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 303: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 98 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 99 ) state = 163; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 304: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 105 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || info.src.charCodeAt( pos ) == 116 || ( info.src.charCodeAt( pos ) >= 118 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 117 ) state = 165; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 104 ) state = 322; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 305: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 108 ) || ( info.src.charCodeAt( pos ) >= 110 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 109 ) state = 167; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 306: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 112 ) state = 169; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 307: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 98 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 110 ) state = 171; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 99 ) state = 325; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 444; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 308: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 173; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 309: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 105 ) state = 175; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 104 ) state = 561; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 310: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 108 ) || ( info.src.charCodeAt( pos ) >= 110 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 109 ) state = 177; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 311: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 105 ) state = 179; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 312: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 97 ) state = 310; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 105 ) state = 525; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 313: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 181; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 108 ) state = 432; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 314: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || info.src.charCodeAt( pos ) == 97 || info.src.charCodeAt( pos ) == 99 || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 98 ) state = 183; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 315: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 185; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 316: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 100 ) state = 187; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 317: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 116 ) state = 270; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 318: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 116 ) state = 189; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 319: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 191; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 320: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 114 ) state = 193; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 321: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 116 ) state = 195; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 322: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 108 ) || ( info.src.charCodeAt( pos ) >= 110 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 109 ) state = 199; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 323: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 116 ) state = 201; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 324: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 97 ) state = 203; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 105 ) state = 657; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 325: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 105 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 104 ) state = 205; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 326: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 207; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 327: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 102 ) || ( info.src.charCodeAt( pos ) >= 104 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 114 ) state = 209; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 103 ) state = 531; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 328: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 105 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 104 ) state = 275; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 329: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 210; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 108 ) state = 432; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 330: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 108 ) || ( info.src.charCodeAt( pos ) >= 110 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 109 ) state = 211; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 331: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 212; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 332: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 213; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 333: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 97 ) state = 310; + else if( info.src.charCodeAt( pos ) == 100 ) state = 350; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 334: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 32 ) state = 118; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 335: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 116 ) state = 214; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 336: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 215; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 337: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 105 ) state = 216; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 338: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 213; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 97 ) state = 310; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 339: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 105 ) state = 217; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 340: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 97 ) state = 218; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 341: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 105 ) state = 219; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 342: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 220; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 343: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 111 ) state = 221; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 344: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 110 ) state = 222; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 345: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 98 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 99 ) state = 223; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 346: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 165; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 347: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 97 ) state = 224; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 348: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 105 ) state = 225; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 349: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 226; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 350: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 97 ) state = 310; + else if( info.src.charCodeAt( pos ) == 105 ) state = 361; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 351: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 227; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 352: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 114 ) state = 220; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 353: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 111 ) state = 228; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 108 ) state = 432; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 354: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 97 ) state = 229; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 355: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 218; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 356: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 372; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 357: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 97 ) state = 230; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 358: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 231; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 359: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 232; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 360: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 317; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 361: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 110 ) state = 233; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 362: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 108 ) state = 234; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 363: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 235; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 364: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 97 ) state = 236; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 365: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 108 ) || ( info.src.charCodeAt( pos ) >= 110 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 109 ) state = 237; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 366: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 238; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 367: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 108 ) state = 239; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 368: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 95 ) state = 240; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 369: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 111 ) state = 241; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 370: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 32 ) state = 136; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 371: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 111 ) state = 242; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 372: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 116 ) state = 243; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 373: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 116 ) state = 244; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 374: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 110 ) state = 245; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 375: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 97 ) state = 246; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 376: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 271; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 377: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 247; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 378: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 110 ) state = 248; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 379: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 97 ) state = 249; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 380: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 114 ) state = 233; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 381: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 114 ) state = 250; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 382: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 105 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 104 ) state = 251; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 383: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 111 ) state = 252; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 384: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 97 ) state = 310; + else if( info.src.charCodeAt( pos ) == 111 ) state = 390; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 385: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 105 ) state = 253; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 386: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 405; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 387: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || info.src.charCodeAt( pos ) == 101 || ( info.src.charCodeAt( pos ) >= 103 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 102 ) state = 254; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 388: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 110 ) state = 255; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 389: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 277; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 390: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 114 ) state = 252; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 391: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 108 ) state = 119; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 392: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 111 ) state = 257; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 393: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 105 ) state = 258; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 394: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 95 ) state = 259; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 395: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 108 ) state = 260; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 396: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 32 ) state = 170; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 397: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 97 ) state = 310; + else if( info.src.charCodeAt( pos ) == 111 ) state = 390; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 398: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 105 ) state = 277; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 399: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 261; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 400: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 105 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 97 ) state = 293; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 108 ) state = 419; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 104 ) state = 676; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 401: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 34; + match_pos = pos; + break; + + case 402: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 95 ) state = 471; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 33; + match_pos = pos; + break; + + case 403: + if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 122 ) ) state = 114; + else if( info.src.charCodeAt( pos ) == 97 ) state = 268; + else state = -1; + break; + + case 404: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 114 ) state = 18; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 101 ) state = 465; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 405: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 105 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 116 ) state = 137; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 104 ) state = 494; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 406: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 116 ) state = 404; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 407: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 115 ) state = 562; + else if( info.src.charCodeAt( pos ) == 105 ) state = 663; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 408: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 97 ) state = 294; + else if( info.src.charCodeAt( pos ) == 114 ) state = 295; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 506; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 409: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 108 ) state = 432; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 33; + match_pos = pos; + break; + + case 410: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 101 ) state = 297; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 411: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 105 ) state = 298; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 101 ) state = 421; + else if( info.src.charCodeAt( pos ) == 111 ) state = 422; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 642; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 412: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || info.src.charCodeAt( pos ) == 116 || ( info.src.charCodeAt( pos ) >= 118 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 97 ) state = 299; + else if( info.src.charCodeAt( pos ) == 117 ) state = 300; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 413: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 97 ) state = 303; + else if( info.src.charCodeAt( pos ) == 101 ) state = 304; + else if( info.src.charCodeAt( pos ) == 105 ) state = 305; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 111 ) state = 563; + else if( info.src.charCodeAt( pos ) == 95 ) state = 626; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 414: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 120 ) || info.src.charCodeAt( pos ) == 122 ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 121 ) state = 306; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 415: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 101 ) state = 407; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 97 ) state = 424; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 416: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 98 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 118 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 101 ) state = 307; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 425; + else if( info.src.charCodeAt( pos ) == 116 ) state = 426; + else if( info.src.charCodeAt( pos ) == 117 ) state = 427; + else if( info.src.charCodeAt( pos ) == 99 ) state = 510; + else if( info.src.charCodeAt( pos ) == 105 ) state = 511; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 417: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 97 ) state = 310; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 418: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 114 ) state = 311; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 108 ) state = 432; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 419: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || info.src.charCodeAt( pos ) == 116 || ( info.src.charCodeAt( pos ) >= 118 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 117 ) state = 314; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 420: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 110 ) state = 316; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 421: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || info.src.charCodeAt( pos ) == 116 || ( info.src.charCodeAt( pos ) >= 118 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 117 ) state = 318; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 422: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || info.src.charCodeAt( pos ) == 116 || ( info.src.charCodeAt( pos ) >= 118 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 117 ) state = 319; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 423: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 106 ) || ( info.src.charCodeAt( pos ) >= 108 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 107 ) state = 320; + else if( info.src.charCodeAt( pos ) == 116 ) state = 321; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 424: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 324; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 425: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 105 ) state = 326; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 108 ) state = 432; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 97 ) state = 518; + else if( info.src.charCodeAt( pos ) == 114 ) state = 647; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 426: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 101 ) state = 327; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 114 ) state = 446; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 97 ) state = 519; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 427: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 98 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 99 ) state = 328; + else if( info.src.charCodeAt( pos ) == 112 ) state = 329; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 428: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 101 ) state = 330; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 429: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 101 ) state = 331; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 105 ) state = 522; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 430: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 116 ) state = 332; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 431: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 102 ) || ( info.src.charCodeAt( pos ) >= 104 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 333; + else if( info.src.charCodeAt( pos ) == 103 ) state = 334; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 432: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 97 ) state = 335; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 433: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || info.src.charCodeAt( pos ) == 116 || ( info.src.charCodeAt( pos ) >= 118 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 117 ) state = 336; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 434: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 108 ) state = 337; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 435: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 338; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 436: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 97 ) state = 339; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 437: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 500; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 438: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || info.src.charCodeAt( pos ) == 116 || ( info.src.charCodeAt( pos ) >= 118 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 117 ) state = 340; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 439: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || info.src.charCodeAt( pos ) == 97 || info.src.charCodeAt( pos ) == 99 || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 98 ) state = 341; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 440: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 102 ) || ( info.src.charCodeAt( pos ) >= 104 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 103 ) state = 342; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 441: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 106 ) || ( info.src.charCodeAt( pos ) >= 108 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 107 ) state = 343; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 442: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 110 ) state = 344; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 443: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 118 ) || ( info.src.charCodeAt( pos ) >= 120 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 105 ) state = 345; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 119 ) state = 454; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 675; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 444: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 108 ) state = 432; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 116 ) state = 568; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 445: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || info.src.charCodeAt( pos ) == 97 || info.src.charCodeAt( pos ) == 99 || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 98 ) state = 346; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 446: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 101 ) state = 347; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 447: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 108 ) || ( info.src.charCodeAt( pos ) >= 110 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 109 ) state = 348; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 448: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 98 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 99 ) state = 349; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 449: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || info.src.charCodeAt( pos ) == 97 || info.src.charCodeAt( pos ) == 99 || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 98 ) state = 351; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 450: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 108 ) state = 432; + else if( info.src.charCodeAt( pos ) == 105 ) state = 460; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 451: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 112 ) state = 353; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 452: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 108 ) || ( info.src.charCodeAt( pos ) >= 110 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 109 ) state = 354; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 453: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || info.src.charCodeAt( pos ) == 97 || info.src.charCodeAt( pos ) == 99 || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 98 ) state = 355; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 454: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 101 ) state = 356; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 455: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 357; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 456: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 116 ) state = 358; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 457: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 116 ) state = 343; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 108 ) state = 432; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 458: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 116 ) state = 359; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 459: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 101 ) state = 360; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 460: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 101 ) state = 362; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 461: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 102 ) || ( info.src.charCodeAt( pos ) >= 104 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 103 ) state = 363; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 462: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 116 ) state = 364; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 110 ) state = 542; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 463: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 105 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 104 ) state = 365; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 464: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 110 ) state = 366; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 465: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 108 ) state = 367; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 466: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 95 ) state = 368; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 467: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 111 ) state = 369; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 468: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 105 ) state = 373; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 469: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || info.src.charCodeAt( pos ) == 116 || ( info.src.charCodeAt( pos ) >= 118 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 117 ) state = 374; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 470: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 114 ) state = 376; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 471: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 95 ) state = 377; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 472: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 108 ) || ( info.src.charCodeAt( pos ) >= 110 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 109 ) state = 351; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 473: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || info.src.charCodeAt( pos ) == 116 || ( info.src.charCodeAt( pos ) >= 118 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 117 ) state = 378; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 474: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 116 ) state = 379; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 475: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 101 ) state = 380; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 476: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 95 ) state = 381; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 477: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 105 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 104 ) state = 371; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 108 ) state = 432; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 478: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 95 ) state = 382; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 479: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 105 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 104 ) state = 383; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 480: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 384; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 481: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 116 ) state = 385; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 482: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 105 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 104 ) state = 386; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 483: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 114 ) state = 366; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 484: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || info.src.charCodeAt( pos ) == 116 || ( info.src.charCodeAt( pos ) >= 118 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 117 ) state = 387; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 485: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 97 ) state = 388; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 486: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 116 ) state = 389; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 487: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 95 ) state = 391; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 488: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 110 ) state = 358; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 489: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 105 ) state = 392; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 490: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 116 ) state = 393; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 491: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 108 ) state = 395; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 492: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 114 ) state = 396; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 493: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 397; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 494: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 97 ) state = 398; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 495: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || info.src.charCodeAt( pos ) == 116 || ( info.src.charCodeAt( pos ) >= 118 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 117 ) state = 380; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 496: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 114 ) state = 399; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 497: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 105 ) state = 420; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 114 ) state = 507; + else if( info.src.charCodeAt( pos ) == 101 ) state = 558; + else if( info.src.charCodeAt( pos ) == 95 ) state = 599; + else if( info.src.charCodeAt( pos ) == 97 ) state = 600; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 498: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 110 ) state = 526; + else state = -1; + match = 25; + match_pos = pos; + break; + + case 499: + if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 122 ) ) state = 114; + else if( info.src.charCodeAt( pos ) == 108 ) state = 403; + else state = -1; + break; + + case 500: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 97 ) state = 310; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 114 ) state = 580; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 501: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 108 ) state = 432; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 540; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 502: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 118 ) || ( info.src.charCodeAt( pos ) >= 120 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 104 ) state = 428; + else if( info.src.charCodeAt( pos ) == 119 ) state = 429; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 512; + else if( info.src.charCodeAt( pos ) == 114 ) state = 566; + else if( info.src.charCodeAt( pos ) == 105 ) state = 644; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 503: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 108 ) state = 432; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 504: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 118 ) || ( info.src.charCodeAt( pos ) >= 120 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 114 ) state = 434; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 119 ) state = 602; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 505: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || info.src.charCodeAt( pos ) == 116 || ( info.src.charCodeAt( pos ) >= 118 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 117 ) state = 435; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 506: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 121 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 116 ) state = 436; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 122 ) state = 568; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 507: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 105 ) state = 437; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 508: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 97 ) state = 439; + else if( info.src.charCodeAt( pos ) == 114 ) state = 440; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 110 ) state = 515; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 509: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 110 ) state = 441; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 510: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 105 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 97 ) state = 442; + else if( info.src.charCodeAt( pos ) == 104 ) state = 443; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 511: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 101 ) state = 445; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 512: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 108 ) || ( info.src.charCodeAt( pos ) >= 110 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 114 ) state = 447; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 109 ) state = 520; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 513: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 101 ) state = 449; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 514: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 114 ) state = 438; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 515: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 111 ) state = 451; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 516: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 105 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 104 ) state = 452; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 517: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 111 ) state = 453; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 518: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 110 ) state = 455; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 519: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 114 ) state = 456; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 520: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 501; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 521: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 457; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 522: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 116 ) state = 458; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 523: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 102 ) || ( info.src.charCodeAt( pos ) >= 104 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 103 ) state = 459; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 524: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 105 ) state = 461; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 525: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 111 ) state = 462; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 526: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 97 ) state = 463; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 534; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 527: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 108 ) || ( info.src.charCodeAt( pos ) >= 110 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 109 ) state = 453; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 528: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 110 ) state = 464; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 529: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 101 ) state = 466; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 530: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || info.src.charCodeAt( pos ) == 97 || info.src.charCodeAt( pos ) == 99 || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 98 ) state = 467; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 531: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 108 ) state = 468; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 532: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || info.src.charCodeAt( pos ) == 97 || info.src.charCodeAt( pos ) == 99 || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 98 ) state = 469; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 533: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 101 ) state = 470; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 534: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 105 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 104 ) state = 472; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 535: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 116 ) state = 473; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 536: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 110 ) state = 474; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 537: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || info.src.charCodeAt( pos ) == 97 || info.src.charCodeAt( pos ) == 99 || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 98 ) state = 475; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 538: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 95 ) state = 476; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 539: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 95 ) state = 478; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 540: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 108 ) state = 479; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 541: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 110 ) state = 480; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 542: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 111 ) state = 481; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 543: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 98 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 99 ) state = 482; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 544: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 95 ) state = 483; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 545: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 95 ) state = 484; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 546: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 114 ) state = 485; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 547: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 114 ) state = 486; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 548: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 95 ) state = 487; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 549: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || info.src.charCodeAt( pos ) == 101 || ( info.src.charCodeAt( pos ) >= 103 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 102 ) state = 488; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 550: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 116 ) state = 489; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 551: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 111 ) state = 490; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 552: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 95 ) state = 491; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 553: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 101 ) state = 492; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 554: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 110 ) state = 493; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 555: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || info.src.charCodeAt( pos ) == 97 || info.src.charCodeAt( pos ) == 99 || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 98 ) state = 495; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 556: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 114 ) state = 440; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 557: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 95 ) state = 496; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 558: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || info.src.charCodeAt( pos ) == 97 || info.src.charCodeAt( pos ) == 99 || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 98 ) state = 514; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 559: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 105 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 121 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 122 ) state = 567; + else if( info.src.charCodeAt( pos ) == 104 ) state = 660; + else state = -1; + match = 25; + match_pos = pos; + break; + + case 560: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 114 ) state = 18; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 97 ) state = 583; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 561: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || info.src.charCodeAt( pos ) == 109 || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 110 ) state = 83; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 108 ) state = 579; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 562: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 116 ) state = 560; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 563: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 98 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 117 ) || ( info.src.charCodeAt( pos ) >= 119 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 99 ) state = 516; + else if( info.src.charCodeAt( pos ) == 118 ) state = 568; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 564: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 102 ) || ( info.src.charCodeAt( pos ) >= 104 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 103 ) state = 572; + else state = -1; + match = 25; + match_pos = pos; + break; + + case 565: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 116 ) state = 517; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 566: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 521; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 567: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 524; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 568: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 527; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 569: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 528; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 570: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || info.src.charCodeAt( pos ) == 116 || ( info.src.charCodeAt( pos ) >= 118 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 117 ) state = 529; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 571: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 530; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 572: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 532; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 573: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 108 ) || ( info.src.charCodeAt( pos ) >= 110 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 109 ) state = 533; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 574: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 114 ) state = 535; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 575: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 536; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 576: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 121 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 122 ) state = 537; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 577: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 538; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 578: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 539; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 579: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 541; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 580: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 105 ) state = 543; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 581: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 544; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 582: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 545; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 583: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || info.src.charCodeAt( pos ) == 116 || ( info.src.charCodeAt( pos ) >= 118 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 117 ) state = 546; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 584: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 97 ) state = 547; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 585: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 548; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 586: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || info.src.charCodeAt( pos ) == 101 || ( info.src.charCodeAt( pos ) >= 103 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 102 ) state = 549; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 587: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 97 ) state = 550; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 588: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 110 ) state = 537; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 589: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 110 ) state = 551; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 590: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 552; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 591: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || info.src.charCodeAt( pos ) == 116 || ( info.src.charCodeAt( pos ) >= 118 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 117 ) state = 553; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 592: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 554; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 593: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 110 ) state = 555; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 594: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 111 ) state = 556; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 595: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 557; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 596: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 537; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 597: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 106 ) || ( info.src.charCodeAt( pos ) >= 108 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 107 ) state = 565; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 598: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else state = -1; + match = 24; + match_pos = pos; + break; + + case 599: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 570; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 600: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 98 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 99 ) state = 571; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 601: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 108 ) state = 573; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 602: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 574; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 603: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 108 ) || ( info.src.charCodeAt( pos ) >= 110 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 109 ) state = 575; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 604: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || info.src.charCodeAt( pos ) == 116 || ( info.src.charCodeAt( pos ) >= 118 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 117 ) state = 576; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 605: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 97 ) state = 577; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 606: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 97 ) state = 578; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 607: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 581; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 608: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 582; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 609: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 102 ) || ( info.src.charCodeAt( pos ) >= 104 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 103 ) state = 584; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 610: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 111 ) state = 585; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 611: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 586; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 612: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 108 ) || ( info.src.charCodeAt( pos ) >= 110 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 109 ) state = 587; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 613: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 588; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 614: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 105 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 104 ) state = 589; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 615: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 590; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 616: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 97 ) state = 591; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 617: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 106 ) || ( info.src.charCodeAt( pos ) >= 108 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 107 ) state = 592; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 618: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 593; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 619: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 108 ) || ( info.src.charCodeAt( pos ) >= 110 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 109 ) state = 594; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 620: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 595; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 621: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 110 ) state = 596; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 622: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 108 ) || ( info.src.charCodeAt( pos ) >= 110 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 109 ) state = 603; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 623: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 101 ) state = 149; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 630; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 624: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 604; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 625: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 605; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 626: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 606; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 627: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 111 ) state = 607; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 628: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 97 ) state = 608; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 629: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 114 ) state = 609; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 630: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 610; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 631: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 611; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 632: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 116 ) state = 613; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 633: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 98 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 99 ) state = 614; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 634: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 97 ) state = 615; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 635: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 108 ) state = 616; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 636: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 98 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 99 ) state = 617; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 637: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 116 ) state = 618; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 638: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 114 ) state = 619; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 639: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 111 ) state = 620; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 640: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 621; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 641: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 111 ) state = 622; + else if( info.src.charCodeAt( pos ) == 114 ) state = 624; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 642: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 627; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 643: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 628; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 644: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 629; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 645: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 631; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 646: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 105 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 104 ) state = 632; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 647: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 97 ) state = 633; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 648: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 634; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 649: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 121 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 122 ) state = 635; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 650: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 105 ) state = 636; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 651: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 117 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 116 ) state = 637; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 652: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 638; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 653: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 639; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 654: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 640; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 655: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 104 ) || ( info.src.charCodeAt( pos ) >= 106 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 643; + else if( info.src.charCodeAt( pos ) == 105 ) state = 659; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 656: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 103 ) || ( info.src.charCodeAt( pos ) >= 105 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 104 ) state = 666; + else state = -1; + match = 19; + match_pos = pos; + break; + + case 657: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 111 ) state = 656; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 658: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || info.src.charCodeAt( pos ) == 116 || ( info.src.charCodeAt( pos ) >= 118 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 111 ) state = 645; + else if( info.src.charCodeAt( pos ) == 117 ) state = 677; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 659: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 98 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 99 ) state = 646; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 660: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 642; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 661: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 648; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 662: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 110 ) state = 649; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 663: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 109 ) || info.src.charCodeAt( pos ) == 111 || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 110 ) state = 650; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 664: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 111 ) state = 651; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 665: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || info.src.charCodeAt( pos ) == 97 || info.src.charCodeAt( pos ) == 99 || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 98 ) state = 652; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 666: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 653; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 667: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 654; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 668: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 658; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 669: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 662; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 670: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 107 ) || ( info.src.charCodeAt( pos ) >= 109 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 108 ) state = 664; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 671: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 665; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 672: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 110 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 111 ) state = 667; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 673: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || info.src.charCodeAt( pos ) == 113 || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 114 ) state = 670; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 674: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 671; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 675: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 95 ) state = 672; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 676: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 98 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 101 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 97 ) state = 673; + else state = -1; + match = 56; + match_pos = pos; + break; + + case 677: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 99 ) || ( info.src.charCodeAt( pos ) >= 102 && info.src.charCodeAt( pos ) <= 111 ) || ( info.src.charCodeAt( pos ) >= 113 && info.src.charCodeAt( pos ) <= 114 ) || ( info.src.charCodeAt( pos ) >= 116 && info.src.charCodeAt( pos ) <= 122 ) ) state = 3; + else if( info.src.charCodeAt( pos ) == 32 ) state = 82; + else if( info.src.charCodeAt( pos ) == 45 ) state = 96; + else if( info.src.charCodeAt( pos ) == 115 ) state = 290; + else if( info.src.charCodeAt( pos ) == 100 ) state = 417; + else if( info.src.charCodeAt( pos ) == 112 ) state = 503; + else if( info.src.charCodeAt( pos ) == 101 ) state = 674; + else state = -1; + match = 56; + match_pos = pos; + break; + +} + + + pos++; + + } + while( state > -1 ); + + } + while( 1 > -1 && match == 1 ); + + if( match > -1 ) + { + info.att = info.src.substr( start, match_pos - start ); + info.offset = match_pos; + +switch( match ) +{ + case 2: + { + _$undef_article[info.att] = info.att; + } + break; + + case 3: + { + _$pp_mine[info.att] = info.att; + } + break; + + case 4: + { + _$v_play_imp[info.att] = info.att; + } + break; + + case 5: + { + _$v_play_inf[info.att] = info.att; + } + break; + + case 6: + { + _$v_play_radio_inf[info.att] = info.att; + } + break; + + case 7: + { + _$v_play_fin[info.att] = info.att; + } + break; + + case 8: + { + _$v_show_imp[info.att] = info.att; + } + break; + + case 9: + { + _$v_show_inf[info.att] = info.att; + } + break; + + case 10: + { + _$v_record_imp[info.att] = info.att; + } + break; + + case 11: + { + _$v_record_inf[info.att] = info.att; + } + break; + + case 12: + { + _$v_send_imp[info.att] = info.att; + } + break; + + case 13: + { + _$v_send_inf[info.att] = info.att; + } + break; + + case 14: + { + _$v_send_fin[info.att] = info.att; + } + break; + + case 15: + { + _$v_open_inf[info.att] = info.att; + } + break; + + case 16: + { + _$v_open_fin[info.att] = info.att; + } + break; + + case 17: + { + _$v_find_imp[info.att] = info.att; + } + break; + + case 18: + { + _$radar[info.att] = info.att; + } + break; + + case 19: + { + _$radio[info.att] = info.att; + } + break; + + case 20: + { + _$audiotag[info.att] = info.att; + } + break; + + case 21: + { + _$voicetag[info.att] = info.att; + } + break; + + case 22: + { + _$social_network[info.att] = info.att; + } + break; + + case 23: + { + _$tweet[info.att] = info.att; + } + break; + + case 24: + { + _$info[info.att] = info.att; + } + break; + + case 25: + { + _$preposition[info.att] = info.att; + } + break; + + case 26: + { + _$pr_upto[info.att] = info.att; + } + break; + + case 27: + { + _$what[info.att] = info.att; + } + break; + + case 28: + { + _$where[info.att] = info.att; + } + break; + + case 29: + { + _$poi_category[info.att] = info.att; + } + break; + + case 30: + { + _$location_name[info.att] = info.att; + } + break; + + case 31: + { + _$square[info.att] = info.att; + } + break; + + case 32: + { + _$near_to_me[info.att] = info.att; + } + break; + + case 33: + { + _$street[info.att] = info.att; + } + break; + + case 34: + { + _$music[info.att] = info.att; + } + break; + + case 35: + { + _$number[info.att] = info.att; + } + break; + + case 36: + { + _$theme[info.att] = info.att; + } + break; + + case 37: + { + _$datenumber[info.att] = info.att; + } + break; + + case 38: + { + _$date_variable[info.att] = info.att; + } + break; + + case 39: + { + _$person[info.att] = info.att; + } + break; + + case 40: + { + _$timenumber[info.att] = info.att; + } + break; + + case 41: + { + _$ordinal[info.att] = info.att; + } + break; + + case 42: + { + _$month[info.att] = info.att; + } + break; + + case 43: + { + _$timeword[info.att] = info.att; + } + break; + + case 44: + { + _$stars[info.att] = info.att; + } + break; + + case 45: + { + _$more[info.att] = info.att; + } + break; + + case 46: + { + _$again[info.att] = info.att; + } + break; + + case 47: + { + _$and[info.att] = info.att; + } + break; + + case 48: + { + _$all[info.att] = info.att; + } + break; + + case 49: + { + _$that[info.att] = info.att; + } + break; + + case 50: + { + _$like[info.att] = info.att; + } + break; + + case 51: + { + _$micro[info.att] = info.att; + } + break; + + case 52: + { + _$cafe[info.att] = info.att; + } + break; + + case 53: + { + _$appointments[info.att] = info.att; + } + break; + + case 54: + { + _$appointment[info.att] = info.att; + } + break; + + case 55: + { + _$create[info.att] = info.att; + } + break; + + case 56: + { + _$rest[info.att] = info.att; + } + break; + +} + + + } + else + { + info.att = new String(); + match = -1; + } + + return match; +} + + +function __parse( src, err_off, err_la ) +{ theGrammarConverterInstance.semanticAnnotationResult={}; + var sstack = new Array(); + var vstack = new Array(); + var err_cnt = 0; + var act; + var go; + var la; + var rval; + var parseinfo = new Function( "", "var offset; var src; var att;" ); + var info = new parseinfo(); + + //Visual parse tree generation + var treenode = new Function( "", "var sym; var att; var child;" ); + var treenodes = new Array(); + var tree = new Array(); + var tmptree = null; + +/* Pop-Table */ +var pop_tab = new Array( + new Array( 0/* utterance' */, 1 ), + new Array( 58/* utterance */, 1 ), + new Array( 59/* DATE */, 1 ), + new Array( 59/* DATE */, 2 ), + new Array( 59/* DATE */, 3 ), + new Array( 59/* DATE */, 1 ), + new Array( 59/* DATE */, 1 ), + new Array( 60/* TIME */, 2 ), + new Array( 61/* TIMERANGE */, 3 ), + new Array( 61/* TIMERANGE */, 3 ), + new Array( 62/* DATETIME */, 1 ), + new Array( 62/* DATETIME */, 1 ), + new Array( 62/* DATETIME */, 2 ), + new Array( 62/* DATETIME */, 3 ), + new Array( 63/* LOCATION */, 1 ), + new Array( 63/* LOCATION */, 1 ), + new Array( 63/* LOCATION */, 1 ), + new Array( 63/* LOCATION */, 1 ), + new Array( 64/* PLAY */, 1 ), + new Array( 64/* PLAY */, 2 ), + new Array( 65/* PLAY_MORE */, 2 ), + new Array( 65/* PLAY_MORE */, 2 ), + new Array( 66/* PLAY_AGAIN */, 2 ), + new Array( 66/* PLAY_AGAIN */, 2 ), + new Array( 67/* PLAY_RADIO */, 2 ), + new Array( 67/* PLAY_RADIO */, 3 ), + new Array( 67/* PLAY_RADIO */, 3 ), + new Array( 67/* PLAY_RADIO */, 2 ), + new Array( 67/* PLAY_RADIO */, 2 ), + new Array( 67/* PLAY_RADIO */, 3 ), + new Array( 67/* PLAY_RADIO */, 2 ), + new Array( 67/* PLAY_RADIO */, 2 ), + new Array( 67/* PLAY_RADIO */, 1 ), + new Array( 68/* PLAY_AUDIOTAGS */, 2 ), + new Array( 68/* PLAY_AUDIOTAGS */, 3 ), + new Array( 68/* PLAY_AUDIOTAGS */, 2 ), + new Array( 68/* PLAY_AUDIOTAGS */, 2 ), + new Array( 68/* PLAY_AUDIOTAGS */, 2 ), + new Array( 69/* PLAY_VOICETAGS */, 2 ), + new Array( 69/* PLAY_VOICETAGS */, 3 ), + new Array( 69/* PLAY_VOICETAGS */, 2 ), + new Array( 69/* PLAY_VOICETAGS */, 2 ), + new Array( 69/* PLAY_VOICETAGS */, 2 ), + new Array( 70/* RECORD_AUDIOTAG */, 2 ), + new Array( 70/* RECORD_AUDIOTAG */, 3 ), + new Array( 70/* RECORD_AUDIOTAG */, 2 ), + new Array( 70/* RECORD_AUDIOTAG */, 2 ), + new Array( 71/* RECORD_VOICETAG */, 2 ), + new Array( 71/* RECORD_VOICETAG */, 3 ), + new Array( 71/* RECORD_VOICETAG */, 2 ), + new Array( 71/* RECORD_VOICETAG */, 2 ), + new Array( 71/* RECORD_VOICETAG */, 3 ), + new Array( 72/* RECORD */, 1 ), + new Array( 72/* RECORD */, 2 ), + new Array( 73/* SEND */, 3 ), + new Array( 73/* SEND */, 2 ), + new Array( 73/* SEND */, 3 ), + new Array( 73/* SEND */, 3 ), + new Array( 73/* SEND */, 5 ), + new Array( 73/* SEND */, 5 ), + new Array( 73/* SEND */, 3 ), + new Array( 73/* SEND */, 3 ), + new Array( 73/* SEND */, 4 ), + new Array( 73/* SEND */, 4 ), + new Array( 73/* SEND */, 4 ), + new Array( 73/* SEND */, 4 ), + new Array( 73/* SEND */, 3 ), + new Array( 73/* SEND */, 3 ), + new Array( 73/* SEND */, 1 ), + new Array( 73/* SEND */, 1 ), + new Array( 74/* SEND_TWEET */, 1 ), + new Array( 74/* SEND_TWEET */, 2 ), + new Array( 74/* SEND_TWEET */, 3 ), + new Array( 74/* SEND_TWEET */, 2 ), + new Array( 74/* SEND_TWEET */, 2 ), + new Array( 75/* SHOW_INFO */, 2 ), + new Array( 75/* SHOW_INFO */, 3 ), + new Array( 75/* SHOW_INFO */, 3 ), + new Array( 75/* SHOW_INFO */, 2 ), + new Array( 75/* SHOW_INFO */, 2 ), + new Array( 75/* SHOW_INFO */, 2 ), + new Array( 76/* SHOW_POIs */, 5 ), + new Array( 76/* SHOW_POIs */, 6 ), + new Array( 76/* SHOW_POIs */, 4 ), + new Array( 77/* JUST_SHOW_APPOINTMENTs */, 3 ), + new Array( 78/* SHOW_APPOINTMENTs_FROM */, 5 ), + new Array( 79/* SHOW_APPOINTMENTs_FROM_TO */, 7 ), + new Array( 79/* SHOW_APPOINTMENTs_FROM_TO */, 8 ), + new Array( 81/* CREATE_APPOINTMENTS */, 4 ), + new Array( 81/* CREATE_APPOINTMENTS */, 6 ), + new Array( 81/* CREATE_APPOINTMENTS */, 6 ), + new Array( 81/* CREATE_APPOINTMENTS */, 6 ), + new Array( 81/* CREATE_APPOINTMENTS */, 6 ), + new Array( 81/* CREATE_APPOINTMENTS */, 5 ), + new Array( 81/* CREATE_APPOINTMENTS */, 7 ), + new Array( 81/* CREATE_APPOINTMENTS */, 7 ), + new Array( 81/* CREATE_APPOINTMENTS */, 7 ), + new Array( 81/* CREATE_APPOINTMENTS */, 7 ), + new Array( 81/* CREATE_APPOINTMENTS */, 5 ), + new Array( 81/* CREATE_APPOINTMENTS */, 5 ), + new Array( 81/* CREATE_APPOINTMENTS */, 5 ), + new Array( 81/* CREATE_APPOINTMENTS */, 7 ), + new Array( 81/* CREATE_APPOINTMENTS */, 7 ), + new Array( 81/* CREATE_APPOINTMENTS */, 8 ), + new Array( 81/* CREATE_APPOINTMENTS */, 8 ), + new Array( 81/* CREATE_APPOINTMENTS */, 6 ), + new Array( 81/* CREATE_APPOINTMENTS */, 6 ), + new Array( 81/* CREATE_APPOINTMENTS */, 6 ), + new Array( 81/* CREATE_APPOINTMENTS */, 8 ), + new Array( 81/* CREATE_APPOINTMENTS */, 8 ), + new Array( 81/* CREATE_APPOINTMENTS */, 9 ), + new Array( 81/* CREATE_APPOINTMENTS */, 9 ), + new Array( 82/* FIND_PERSON */, 3 ), + new Array( 83/* RECORD_MEMO */, 4 ), + new Array( 83/* RECORD_MEMO */, 5 ), + new Array( 84/* FIND_MUSIC */, 3 ), + new Array( 84/* FIND_MUSIC */, 7 ), + new Array( 84/* FIND_MUSIC */, 4 ), + new Array( 84/* FIND_MUSIC */, 4 ), + new Array( 84/* FIND_MUSIC */, 4 ), + new Array( 85/* START_RADAR */, 1 ), + new Array( 85/* START_RADAR */, 2 ), + new Array( 85/* START_RADAR */, 2 ), + new Array( 85/* START_RADAR */, 2 ), + new Array( 85/* START_RADAR */, 2 ), + new Array( 85/* START_RADAR */, 2 ), + new Array( 85/* START_RADAR */, 5 ), + new Array( 86/* LIKED */, 1 ), + new Array( 87/* RATING */, 2 ), + new Array( 87/* RATING */, 3 ), + new Array( 87/* RATING */, 4 ), + new Array( 87/* RATING */, 5 ), + new Array( 80/* FULL_TITLE */, 3 ), + new Array( 80/* FULL_TITLE */, 2 ), + new Array( 88/* TITLE */, 1 ), + new Array( 88/* TITLE */, 2 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ), + new Array( 57/* phrases */, 1 ) +); + +/* Action-Table */ +var act_tab = new Array( + /* State 0 */ new Array( 41/* "ORDINAL" */,33 , 37/* "DATENUMBER" */,34 , 38/* "DATE_VARIABLE" */,35 , 40/* "TIMENUMBER" */,36 , 35/* "NUMBER" */,37 , 33/* "STREET" */,38 , 32/* "NEAR_TO_ME" */,39 , 30/* "LOCATION_NAME" */,40 , 31/* "SQUARE" */,41 , 5/* "V_PLAY_INF" */,42 , 4/* "V_PLAY_IMP" */,43 , 45/* "MORE" */,44 , 46/* "AGAIN" */,45 , 19/* "RADIO" */,46 , 49/* "THAT" */,47 , 6/* "V_PLAY_RADIO_INF" */,48 , 20/* "AUDIOTAG" */,49 , 21/* "VOICETAG" */,50 , 10/* "V_RECORD_IMP" */,51 , 11/* "V_RECORD_INF" */,52 , 51/* "MICRO" */,53 , 12/* "V_SEND_IMP" */,54 , 25/* "PREPOSITION" */,55 , 13/* "V_SEND_INF" */,56 , 14/* "V_SEND_FIN" */,57 , 23/* "TWEET" */,58 , 8/* "V_SHOW_IMP" */,59 , 24/* "INFO" */,60 , 55/* "CREATE" */,61 , 17/* "V_FIND_IMP" */,62 , 28/* "WHERE" */,63 , 27/* "WHAT" */,64 , 18/* "RADAR" */,65 , 16/* "V_OPEN_FIN" */,66 , 50/* "LIKE" */,67 , 56/* "REST" */,68 ), + /* State 1 */ new Array( 89/* "$" */,0 ), + /* State 2 */ new Array( 89/* "$" */,-1 ), + /* State 3 */ new Array( 25/* "PREPOSITION" */,69 , 40/* "TIMENUMBER" */,36 , 89/* "$" */,-10 ), + /* State 4 */ new Array( 26/* "PR_UPTO" */,71 , 89/* "$" */,-11 ), + /* State 5 */ new Array( 89/* "$" */,-138 ), + /* State 6 */ new Array( 89/* "$" */,-139 ), + /* State 7 */ new Array( 89/* "$" */,-140 ), + /* State 8 */ new Array( 89/* "$" */,-141 ), + /* State 9 */ new Array( 89/* "$" */,-142 ), + /* State 10 */ new Array( 89/* "$" */,-143 ), + /* State 11 */ new Array( 89/* "$" */,-144 ), + /* State 12 */ new Array( 89/* "$" */,-145 ), + /* State 13 */ new Array( 89/* "$" */,-146 ), + /* State 14 */ new Array( 89/* "$" */,-147 ), + /* State 15 */ new Array( 89/* "$" */,-148 ), + /* State 16 */ new Array( 89/* "$" */,-149 ), + /* State 17 */ new Array( 89/* "$" */,-150 ), + /* State 18 */ new Array( 89/* "$" */,-151 ), + /* State 19 */ new Array( 89/* "$" */,-152 ), + /* State 20 */ new Array( 89/* "$" */,-153 ), + /* State 21 */ new Array( 89/* "$" */,-154 ), + /* State 22 */ new Array( 89/* "$" */,-155 ), + /* State 23 */ new Array( 89/* "$" */,-156 ), + /* State 24 */ new Array( 89/* "$" */,-157 ), + /* State 25 */ new Array( 89/* "$" */,-158 ), + /* State 26 */ new Array( 89/* "$" */,-159 ), + /* State 27 */ new Array( 89/* "$" */,-160 ), + /* State 28 */ new Array( 89/* "$" */,-161 ), + /* State 29 */ new Array( 89/* "$" */,-162 ), + /* State 30 */ new Array( 89/* "$" */,-163 ), + /* State 31 */ new Array( 89/* "$" */,-164 ), + /* State 32 */ new Array( 89/* "$" */,-165 ), + /* State 33 */ new Array( 42/* "MONTH" */,72 , 89/* "$" */,-2 , 40/* "TIMENUMBER" */,-2 , 25/* "PREPOSITION" */,-2 , 2/* "UNDEF_ARTICLE" */,-2 , 26/* "PR_UPTO" */,-2 ), + /* State 34 */ new Array( 89/* "$" */,-5 , 40/* "TIMENUMBER" */,-5 , 25/* "PREPOSITION" */,-5 , 2/* "UNDEF_ARTICLE" */,-5 , 26/* "PR_UPTO" */,-5 ), + /* State 35 */ new Array( 89/* "$" */,-6 , 40/* "TIMENUMBER" */,-6 , 25/* "PREPOSITION" */,-6 , 2/* "UNDEF_ARTICLE" */,-6 , 26/* "PR_UPTO" */,-6 ), + /* State 36 */ new Array( 43/* "TIMEWORD" */,73 ), + /* State 37 */ new Array( 44/* "STARS" */,74 , 26/* "PR_UPTO" */,75 ), + /* State 38 */ new Array( 89/* "$" */,-14 , 34/* "MUSIC" */,-14 ), + /* State 39 */ new Array( 89/* "$" */,-15 , 34/* "MUSIC" */,-15 ), + /* State 40 */ new Array( 89/* "$" */,-16 , 34/* "MUSIC" */,-16 ), + /* State 41 */ new Array( 89/* "$" */,-17 , 34/* "MUSIC" */,-17 ), + /* State 42 */ new Array( 21/* "VOICETAG" */,76 , 20/* "AUDIOTAG" */,77 , 19/* "RADIO" */,78 , 89/* "$" */,-18 ), + /* State 43 */ new Array( 21/* "VOICETAG" */,79 , 20/* "AUDIOTAG" */,80 , 19/* "RADIO" */,81 , 46/* "AGAIN" */,82 , 45/* "MORE" */,83 , 25/* "PREPOSITION" */,84 ), + /* State 44 */ new Array( 24/* "INFO" */,85 , 5/* "V_PLAY_INF" */,86 ), + /* State 45 */ new Array( 5/* "V_PLAY_INF" */,87 ), + /* State 46 */ new Array( 25/* "PREPOSITION" */,88 , 7/* "V_PLAY_FIN" */,89 , 5/* "V_PLAY_INF" */,90 ), + /* State 47 */ new Array( 19/* "RADIO" */,91 ), + /* State 48 */ new Array( 89/* "$" */,-32 ), + /* State 49 */ new Array( 25/* "PREPOSITION" */,92 , 11/* "V_RECORD_INF" */,93 , 7/* "V_PLAY_FIN" */,94 , 5/* "V_PLAY_INF" */,95 ), + /* State 50 */ new Array( 25/* "PREPOSITION" */,96 , 11/* "V_RECORD_INF" */,97 , 7/* "V_PLAY_FIN" */,98 , 5/* "V_PLAY_INF" */,99 ), + /* State 51 */ new Array( 3/* "PP_MINE" */,100 , 2/* "UNDEF_ARTICLE" */,101 , 21/* "VOICETAG" */,102 , 20/* "AUDIOTAG" */,103 ), + /* State 52 */ new Array( 21/* "VOICETAG" */,104 , 20/* "AUDIOTAG" */,105 , 89/* "$" */,-52 ), + /* State 53 */ new Array( 25/* "PREPOSITION" */,106 ), + /* State 54 */ new Array( 23/* "TWEET" */,107 , 22/* "SOCIAL_NETWORK" */,108 , 25/* "PREPOSITION" */,109 ), + /* State 55 */ new Array( 36/* "THEME" */,111 , 48/* "ALL" */,112 , 22/* "SOCIAL_NETWORK" */,113 , 56/* "REST" */,114 ), + /* State 56 */ new Array( 25/* "PREPOSITION" */,115 , 89/* "$" */,-68 ), + /* State 57 */ new Array( 25/* "PREPOSITION" */,116 , 89/* "$" */,-69 ), + /* State 58 */ new Array( 14/* "V_SEND_FIN" */,117 , 13/* "V_SEND_INF" */,118 , 89/* "$" */,-70 ), + /* State 59 */ new Array( 3/* "PP_MINE" */,119 , 56/* "REST" */,120 , 24/* "INFO" */,121 ), + /* State 60 */ new Array( 49/* "THAT" */,122 , 9/* "V_SHOW_INF" */,123 ), + /* State 61 */ new Array( 2/* "UNDEF_ARTICLE" */,124 , 41/* "ORDINAL" */,33 , 37/* "DATENUMBER" */,34 , 38/* "DATE_VARIABLE" */,35 ), + /* State 62 */ new Array( 25/* "PREPOSITION" */,126 , 34/* "MUSIC" */,127 , 3/* "PP_MINE" */,128 ), + /* State 63 */ new Array( 7/* "V_PLAY_FIN" */,129 ), + /* State 64 */ new Array( 7/* "V_PLAY_FIN" */,130 ), + /* State 65 */ new Array( 9/* "V_SHOW_INF" */,131 , 16/* "V_OPEN_FIN" */,132 , 15/* "V_OPEN_INF" */,133 , 25/* "PREPOSITION" */,134 , 89/* "$" */,-120 ), + /* State 66 */ new Array( 18/* "RADAR" */,135 ), + /* State 67 */ new Array( 89/* "$" */,-127 ), + /* State 68 */ new Array( 56/* "REST" */,137 , 35/* "NUMBER" */,138 , 89/* "$" */,-134 ), + /* State 69 */ new Array( 40/* "TIMENUMBER" */,36 ), + /* State 70 */ new Array( 89/* "$" */,-12 , 26/* "PR_UPTO" */,-12 ), + /* State 71 */ new Array( 40/* "TIMENUMBER" */,36 ), + /* State 72 */ new Array( 35/* "NUMBER" */,141 , 89/* "$" */,-3 , 40/* "TIMENUMBER" */,-3 , 25/* "PREPOSITION" */,-3 , 2/* "UNDEF_ARTICLE" */,-3 , 26/* "PR_UPTO" */,-3 ), + /* State 73 */ new Array( 89/* "$" */,-7 , 26/* "PR_UPTO" */,-7 , 2/* "UNDEF_ARTICLE" */,-7 , 25/* "PREPOSITION" */,-7 ), + /* State 74 */ new Array( 89/* "$" */,-128 ), + /* State 75 */ new Array( 40/* "TIMENUMBER" */,36 ), + /* State 76 */ new Array( 89/* "$" */,-42 ), + /* State 77 */ new Array( 89/* "$" */,-37 ), + /* State 78 */ new Array( 89/* "$" */,-30 ), + /* State 79 */ new Array( 25/* "PREPOSITION" */,143 , 89/* "$" */,-38 ), + /* State 80 */ new Array( 25/* "PREPOSITION" */,144 , 89/* "$" */,-33 ), + /* State 81 */ new Array( 25/* "PREPOSITION" */,145 , 49/* "THAT" */,146 , 89/* "$" */,-24 ), + /* State 82 */ new Array( 89/* "$" */,-23 ), + /* State 83 */ new Array( 89/* "$" */,-21 ), + /* State 84 */ new Array( 89/* "$" */,-19 ), + /* State 85 */ new Array( 89/* "$" */,-79 ), + /* State 86 */ new Array( 89/* "$" */,-20 ), + /* State 87 */ new Array( 89/* "$" */,-22 ), + /* State 88 */ new Array( 89/* "$" */,-31 ), + /* State 89 */ new Array( 89/* "$" */,-28 ), + /* State 90 */ new Array( 89/* "$" */,-27 ), + /* State 91 */ new Array( 5/* "V_PLAY_INF" */,147 ), + /* State 92 */ new Array( 22/* "SOCIAL_NETWORK" */,148 ), + /* State 93 */ new Array( 89/* "$" */,-45 ), + /* State 94 */ new Array( 89/* "$" */,-36 ), + /* State 95 */ new Array( 89/* "$" */,-35 ), + /* State 96 */ new Array( 52/* "CAFE" */,149 , 22/* "SOCIAL_NETWORK" */,150 ), + /* State 97 */ new Array( 89/* "$" */,-49 ), + /* State 98 */ new Array( 89/* "$" */,-41 ), + /* State 99 */ new Array( 89/* "$" */,-40 ), + /* State 100 */ new Array( 2/* "UNDEF_ARTICLE" */,151 ), + /* State 101 */ new Array( 21/* "VOICETAG" */,152 ), + /* State 102 */ new Array( 25/* "PREPOSITION" */,153 , 89/* "$" */,-47 ), + /* State 103 */ new Array( 25/* "PREPOSITION" */,154 , 89/* "$" */,-43 ), + /* State 104 */ new Array( 89/* "$" */,-50 ), + /* State 105 */ new Array( 89/* "$" */,-46 ), + /* State 106 */ new Array( 89/* "$" */,-53 ), + /* State 107 */ new Array( 25/* "PREPOSITION" */,155 , 89/* "$" */,-71 ), + /* State 108 */ new Array( 89/* "$" */,-55 ), + /* State 109 */ new Array( 22/* "SOCIAL_NETWORK" */,156 ), + /* State 110 */ new Array( 89/* "$" */,-133 ), + /* State 111 */ new Array( 56/* "REST" */,114 ), + /* State 112 */ new Array( 13/* "V_SEND_INF" */,158 , 14/* "V_SEND_FIN" */,159 ), + /* State 113 */ new Array( 13/* "V_SEND_INF" */,160 , 14/* "V_SEND_FIN" */,161 , 47/* "AND" */,162 ), + /* State 114 */ new Array( 56/* "REST" */,114 , 89/* "$" */,-134 ), + /* State 115 */ new Array( 22/* "SOCIAL_NETWORK" */,163 ), + /* State 116 */ new Array( 22/* "SOCIAL_NETWORK" */,164 ), + /* State 117 */ new Array( 89/* "$" */,-74 ), + /* State 118 */ new Array( 89/* "$" */,-73 ), + /* State 119 */ new Array( 53/* "APPOINTMENTS" */,165 ), + /* State 120 */ new Array( 29/* "POI_CATEGORY" */,166 , 34/* "MUSIC" */,167 , 25/* "PREPOSITION" */,168 ), + /* State 121 */ new Array( 49/* "THAT" */,169 , 25/* "PREPOSITION" */,170 , 89/* "$" */,-75 ), + /* State 122 */ new Array( 89/* "$" */,-80 ), + /* State 123 */ new Array( 89/* "$" */,-78 ), + /* State 124 */ new Array( 54/* "APPOINTMENT" */,171 ), + /* State 125 */ new Array( 2/* "UNDEF_ARTICLE" */,172 , 25/* "PREPOSITION" */,173 ), + /* State 126 */ new Array( 34/* "MUSIC" */,174 ), + /* State 127 */ new Array( 25/* "PREPOSITION" */,175 ), + /* State 128 */ new Array( 39/* "PERSON" */,176 ), + /* State 129 */ new Array( 34/* "MUSIC" */,177 , 33/* "STREET" */,38 , 32/* "NEAR_TO_ME" */,39 , 30/* "LOCATION_NAME" */,40 , 31/* "SQUARE" */,41 ), + /* State 130 */ new Array( 25/* "PREPOSITION" */,179 ), + /* State 131 */ new Array( 89/* "$" */,-125 ), + /* State 132 */ new Array( 89/* "$" */,-123 ), + /* State 133 */ new Array( 89/* "$" */,-122 ), + /* State 134 */ new Array( 89/* "$" */,-121 ), + /* State 135 */ new Array( 89/* "$" */,-124 ), + /* State 136 */ new Array( 89/* "$" */,-135 ), + /* State 137 */ new Array( 35/* "NUMBER" */,180 , 56/* "REST" */,181 , 89/* "$" */,-134 ), + /* State 138 */ new Array( 44/* "STARS" */,182 ), + /* State 139 */ new Array( 89/* "$" */,-13 , 26/* "PR_UPTO" */,-13 ), + /* State 140 */ new Array( 89/* "$" */,-9 , 2/* "UNDEF_ARTICLE" */,-9 , 25/* "PREPOSITION" */,-9 ), + /* State 141 */ new Array( 89/* "$" */,-4 , 40/* "TIMENUMBER" */,-4 , 25/* "PREPOSITION" */,-4 , 2/* "UNDEF_ARTICLE" */,-4 , 26/* "PR_UPTO" */,-4 ), + /* State 142 */ new Array( 89/* "$" */,-8 , 2/* "UNDEF_ARTICLE" */,-8 , 25/* "PREPOSITION" */,-8 ), + /* State 143 */ new Array( 89/* "$" */,-39 ), + /* State 144 */ new Array( 89/* "$" */,-34 ), + /* State 145 */ new Array( 89/* "$" */,-25 ), + /* State 146 */ new Array( 89/* "$" */,-26 ), + /* State 147 */ new Array( 89/* "$" */,-29 ), + /* State 148 */ new Array( 14/* "V_SEND_FIN" */,183 , 13/* "V_SEND_INF" */,184 ), + /* State 149 */ new Array( 89/* "$" */,-51 ), + /* State 150 */ new Array( 14/* "V_SEND_FIN" */,185 , 13/* "V_SEND_INF" */,186 ), + /* State 151 */ new Array( 21/* "VOICETAG" */,187 ), + /* State 152 */ new Array( 25/* "PREPOSITION" */,188 ), + /* State 153 */ new Array( 89/* "$" */,-48 ), + /* State 154 */ new Array( 89/* "$" */,-44 ), + /* State 155 */ new Array( 89/* "$" */,-72 ), + /* State 156 */ new Array( 89/* "$" */,-54 ), + /* State 157 */ new Array( 89/* "$" */,-132 ), + /* State 158 */ new Array( 89/* "$" */,-60 ), + /* State 159 */ new Array( 89/* "$" */,-61 ), + /* State 160 */ new Array( 89/* "$" */,-56 ), + /* State 161 */ new Array( 89/* "$" */,-57 ), + /* State 162 */ new Array( 22/* "SOCIAL_NETWORK" */,189 ), + /* State 163 */ new Array( 89/* "$" */,-66 ), + /* State 164 */ new Array( 89/* "$" */,-67 ), + /* State 165 */ new Array( 25/* "PREPOSITION" */,190 , 89/* "$" */,-84 ), + /* State 166 */ new Array( 25/* "PREPOSITION" */,191 ), + /* State 167 */ new Array( 29/* "POI_CATEGORY" */,192 ), + /* State 168 */ new Array( 33/* "STREET" */,38 , 32/* "NEAR_TO_ME" */,39 , 30/* "LOCATION_NAME" */,40 , 31/* "SQUARE" */,41 ), + /* State 169 */ new Array( 89/* "$" */,-76 ), + /* State 170 */ new Array( 89/* "$" */,-77 ), + /* State 171 */ new Array( 56/* "REST" */,194 , 25/* "PREPOSITION" */,195 ), + /* State 172 */ new Array( 54/* "APPOINTMENT" */,196 ), + /* State 173 */ new Array( 40/* "TIMENUMBER" */,36 , 35/* "NUMBER" */,199 ), + /* State 174 */ new Array( 25/* "PREPOSITION" */,200 ), + /* State 175 */ new Array( 32/* "NEAR_TO_ME" */,201 ), + /* State 176 */ new Array( 89/* "$" */,-112 ), + /* State 177 */ new Array( 89/* "$" */,-115 ), + /* State 178 */ new Array( 34/* "MUSIC" */,202 ), + /* State 179 */ new Array( 34/* "MUSIC" */,204 , 33/* "STREET" */,38 , 32/* "NEAR_TO_ME" */,39 , 30/* "LOCATION_NAME" */,40 , 31/* "SQUARE" */,41 ), + /* State 180 */ new Array( 44/* "STARS" */,205 ), + /* State 181 */ new Array( 35/* "NUMBER" */,206 , 56/* "REST" */,114 , 89/* "$" */,-134 ), + /* State 182 */ new Array( 89/* "$" */,-129 ), + /* State 183 */ new Array( 89/* "$" */,-63 ), + /* State 184 */ new Array( 89/* "$" */,-62 ), + /* State 185 */ new Array( 89/* "$" */,-65 ), + /* State 186 */ new Array( 89/* "$" */,-64 ), + /* State 187 */ new Array( 25/* "PREPOSITION" */,207 ), + /* State 188 */ new Array( 89/* "$" */,-113 ), + /* State 189 */ new Array( 13/* "V_SEND_INF" */,208 , 14/* "V_SEND_FIN" */,209 ), + /* State 190 */ new Array( 41/* "ORDINAL" */,33 , 37/* "DATENUMBER" */,34 , 38/* "DATE_VARIABLE" */,35 , 40/* "TIMENUMBER" */,36 ), + /* State 191 */ new Array( 33/* "STREET" */,38 , 32/* "NEAR_TO_ME" */,39 , 30/* "LOCATION_NAME" */,40 , 31/* "SQUARE" */,41 ), + /* State 192 */ new Array( 25/* "PREPOSITION" */,214 ), + /* State 193 */ new Array( 89/* "$" */,-83 ), + /* State 194 */ new Array( 25/* "PREPOSITION" */,215 ), + /* State 195 */ new Array( 41/* "ORDINAL" */,33 , 37/* "DATENUMBER" */,34 , 38/* "DATE_VARIABLE" */,35 , 35/* "NUMBER" */,199 , 40/* "TIMENUMBER" */,36 ), + /* State 196 */ new Array( 25/* "PREPOSITION" */,219 , 89/* "$" */,-88 ), + /* State 197 */ new Array( 2/* "UNDEF_ARTICLE" */,221 ), + /* State 198 */ new Array( 26/* "PR_UPTO" */,71 , 2/* "UNDEF_ARTICLE" */,222 ), + /* State 199 */ new Array( 26/* "PR_UPTO" */,75 ), + /* State 200 */ new Array( 32/* "NEAR_TO_ME" */,223 ), + /* State 201 */ new Array( 89/* "$" */,-117 ), + /* State 202 */ new Array( 89/* "$" */,-119 ), + /* State 203 */ new Array( 89/* "$" */,-118 ), + /* State 204 */ new Array( 47/* "AND" */,224 ), + /* State 205 */ new Array( 89/* "$" */,-130 ), + /* State 206 */ new Array( 44/* "STARS" */,225 ), + /* State 207 */ new Array( 89/* "$" */,-114 ), + /* State 208 */ new Array( 89/* "$" */,-58 ), + /* State 209 */ new Array( 89/* "$" */,-59 ), + /* State 210 */ new Array( 26/* "PR_UPTO" */,226 , 89/* "$" */,-85 ), + /* State 211 */ new Array( 25/* "PREPOSITION" */,69 , 40/* "TIMENUMBER" */,36 , 26/* "PR_UPTO" */,-10 , 89/* "$" */,-10 ), + /* State 212 */ new Array( 26/* "PR_UPTO" */,-11 , 89/* "$" */,-11 ), + /* State 213 */ new Array( 89/* "$" */,-81 ), + /* State 214 */ new Array( 33/* "STREET" */,38 , 32/* "NEAR_TO_ME" */,39 , 30/* "LOCATION_NAME" */,40 , 31/* "SQUARE" */,41 ), + /* State 215 */ new Array( 41/* "ORDINAL" */,33 , 37/* "DATENUMBER" */,34 , 38/* "DATE_VARIABLE" */,35 ), + /* State 216 */ new Array( 25/* "PREPOSITION" */,229 , 89/* "$" */,-98 ), + /* State 217 */ new Array( 26/* "PR_UPTO" */,71 , 25/* "PREPOSITION" */,232 , 89/* "$" */,-99 ), + /* State 218 */ new Array( 25/* "PREPOSITION" */,232 , 89/* "$" */,-100 ), + /* State 219 */ new Array( 36/* "THEME" */,111 , 40/* "TIMENUMBER" */,36 , 35/* "NUMBER" */,199 , 56/* "REST" */,114 ), + /* State 220 */ new Array( 89/* "$" */,-93 ), + /* State 221 */ new Array( 54/* "APPOINTMENT" */,236 ), + /* State 222 */ new Array( 54/* "APPOINTMENT" */,237 ), + /* State 223 */ new Array( 89/* "$" */,-126 ), + /* State 224 */ new Array( 34/* "MUSIC" */,238 ), + /* State 225 */ new Array( 89/* "$" */,-131 ), + /* State 226 */ new Array( 25/* "PREPOSITION" */,240 , 41/* "ORDINAL" */,33 , 37/* "DATENUMBER" */,34 , 38/* "DATE_VARIABLE" */,35 , 40/* "TIMENUMBER" */,36 ), + /* State 227 */ new Array( 89/* "$" */,-82 ), + /* State 228 */ new Array( 25/* "PREPOSITION" */,241 ), + /* State 229 */ new Array( 36/* "THEME" */,111 , 40/* "TIMENUMBER" */,36 , 35/* "NUMBER" */,199 , 56/* "REST" */,114 ), + /* State 230 */ new Array( 89/* "$" */,-105 ), + /* State 231 */ new Array( 89/* "$" */,-106 ), + /* State 232 */ new Array( 36/* "THEME" */,111 , 56/* "REST" */,114 ), + /* State 233 */ new Array( 89/* "$" */,-107 ), + /* State 234 */ new Array( 25/* "PREPOSITION" */,232 , 89/* "$" */,-90 ), + /* State 235 */ new Array( 26/* "PR_UPTO" */,71 , 25/* "PREPOSITION" */,232 , 89/* "$" */,-89 ), + /* State 236 */ new Array( 25/* "PREPOSITION" */,232 , 89/* "$" */,-92 ), + /* State 237 */ new Array( 25/* "PREPOSITION" */,232 , 89/* "$" */,-91 ), + /* State 238 */ new Array( 29/* "POI_CATEGORY" */,248 ), + /* State 239 */ new Array( 89/* "$" */,-86 ), + /* State 240 */ new Array( 41/* "ORDINAL" */,33 , 37/* "DATENUMBER" */,34 , 38/* "DATE_VARIABLE" */,35 , 40/* "TIMENUMBER" */,36 ), + /* State 241 */ new Array( 35/* "NUMBER" */,199 , 40/* "TIMENUMBER" */,36 ), + /* State 242 */ new Array( 25/* "PREPOSITION" */,232 , 89/* "$" */,-101 ), + /* State 243 */ new Array( 26/* "PR_UPTO" */,71 , 25/* "PREPOSITION" */,232 , 89/* "$" */,-102 ), + /* State 244 */ new Array( 89/* "$" */,-95 ), + /* State 245 */ new Array( 89/* "$" */,-94 ), + /* State 246 */ new Array( 89/* "$" */,-97 ), + /* State 247 */ new Array( 89/* "$" */,-96 ), + /* State 248 */ new Array( 89/* "$" */,-116 ), + /* State 249 */ new Array( 89/* "$" */,-87 ), + /* State 250 */ new Array( 26/* "PR_UPTO" */,71 , 25/* "PREPOSITION" */,232 , 89/* "$" */,-104 ), + /* State 251 */ new Array( 25/* "PREPOSITION" */,232 , 89/* "$" */,-103 ), + /* State 252 */ new Array( 89/* "$" */,-108 ), + /* State 253 */ new Array( 89/* "$" */,-109 ), + /* State 254 */ new Array( 89/* "$" */,-111 ), + /* State 255 */ new Array( 89/* "$" */,-110 ) +); + +/* Goto-Table */ +var goto_tab = new Array( + /* State 0 */ new Array( 58/* utterance */,1 , 57/* phrases */,2 , 59/* DATE */,3 , 60/* TIME */,4 , 61/* TIMERANGE */,5 , 62/* DATETIME */,6 , 63/* LOCATION */,7 , 64/* PLAY */,8 , 65/* PLAY_MORE */,9 , 66/* PLAY_AGAIN */,10 , 67/* PLAY_RADIO */,11 , 68/* PLAY_AUDIOTAGS */,12 , 69/* PLAY_VOICETAGS */,13 , 70/* RECORD_AUDIOTAG */,14 , 71/* RECORD_VOICETAG */,15 , 72/* RECORD */,16 , 73/* SEND */,17 , 74/* SEND_TWEET */,18 , 75/* SHOW_INFO */,19 , 76/* SHOW_POIs */,20 , 77/* JUST_SHOW_APPOINTMENTs */,21 , 78/* SHOW_APPOINTMENTs_FROM */,22 , 79/* SHOW_APPOINTMENTs_FROM_TO */,23 , 81/* CREATE_APPOINTMENTS */,24 , 82/* FIND_PERSON */,25 , 83/* RECORD_MEMO */,26 , 84/* FIND_MUSIC */,27 , 85/* START_RADAR */,28 , 86/* LIKED */,29 , 87/* RATING */,30 , 80/* FULL_TITLE */,31 , 88/* TITLE */,32 ), + /* State 1 */ new Array( ), + /* State 2 */ new Array( ), + /* State 3 */ new Array( 60/* TIME */,70 ), + /* State 4 */ new Array( ), + /* State 5 */ new Array( ), + /* State 6 */ new Array( ), + /* State 7 */ new Array( ), + /* State 8 */ new Array( ), + /* State 9 */ new Array( ), + /* State 10 */ new Array( ), + /* State 11 */ new Array( ), + /* State 12 */ new Array( ), + /* State 13 */ new Array( ), + /* State 14 */ new Array( ), + /* State 15 */ new Array( ), + /* State 16 */ new Array( ), + /* State 17 */ new Array( ), + /* State 18 */ new Array( ), + /* State 19 */ new Array( ), + /* State 20 */ new Array( ), + /* State 21 */ new Array( ), + /* State 22 */ new Array( ), + /* State 23 */ new Array( ), + /* State 24 */ new Array( ), + /* State 25 */ new Array( ), + /* State 26 */ new Array( ), + /* State 27 */ new Array( ), + /* State 28 */ new Array( ), + /* State 29 */ new Array( ), + /* State 30 */ new Array( ), + /* State 31 */ new Array( ), + /* State 32 */ new Array( ), + /* State 33 */ new Array( ), + /* State 34 */ new Array( ), + /* State 35 */ new Array( ), + /* State 36 */ new Array( ), + /* State 37 */ new Array( ), + /* State 38 */ new Array( ), + /* State 39 */ new Array( ), + /* State 40 */ new Array( ), + /* State 41 */ new Array( ), + /* State 42 */ new Array( ), + /* State 43 */ new Array( ), + /* State 44 */ new Array( ), + /* State 45 */ new Array( ), + /* State 46 */ new Array( ), + /* State 47 */ new Array( ), + /* State 48 */ new Array( ), + /* State 49 */ new Array( ), + /* State 50 */ new Array( ), + /* State 51 */ new Array( ), + /* State 52 */ new Array( ), + /* State 53 */ new Array( ), + /* State 54 */ new Array( ), + /* State 55 */ new Array( 88/* TITLE */,110 ), + /* State 56 */ new Array( ), + /* State 57 */ new Array( ), + /* State 58 */ new Array( ), + /* State 59 */ new Array( ), + /* State 60 */ new Array( ), + /* State 61 */ new Array( 59/* DATE */,125 ), + /* State 62 */ new Array( ), + /* State 63 */ new Array( ), + /* State 64 */ new Array( ), + /* State 65 */ new Array( ), + /* State 66 */ new Array( ), + /* State 67 */ new Array( ), + /* State 68 */ new Array( 88/* TITLE */,136 ), + /* State 69 */ new Array( 60/* TIME */,139 ), + /* State 70 */ new Array( ), + /* State 71 */ new Array( 60/* TIME */,140 ), + /* State 72 */ new Array( ), + /* State 73 */ new Array( ), + /* State 74 */ new Array( ), + /* State 75 */ new Array( 60/* TIME */,142 ), + /* State 76 */ new Array( ), + /* State 77 */ new Array( ), + /* State 78 */ new Array( ), + /* State 79 */ new Array( ), + /* State 80 */ new Array( ), + /* State 81 */ new Array( ), + /* State 82 */ new Array( ), + /* State 83 */ new Array( ), + /* State 84 */ new Array( ), + /* State 85 */ new Array( ), + /* State 86 */ new Array( ), + /* State 87 */ new Array( ), + /* State 88 */ new Array( ), + /* State 89 */ new Array( ), + /* State 90 */ new Array( ), + /* State 91 */ new Array( ), + /* State 92 */ new Array( ), + /* State 93 */ new Array( ), + /* State 94 */ new Array( ), + /* State 95 */ new Array( ), + /* State 96 */ new Array( ), + /* State 97 */ new Array( ), + /* State 98 */ new Array( ), + /* State 99 */ new Array( ), + /* State 100 */ new Array( ), + /* State 101 */ new Array( ), + /* State 102 */ new Array( ), + /* State 103 */ new Array( ), + /* State 104 */ new Array( ), + /* State 105 */ new Array( ), + /* State 106 */ new Array( ), + /* State 107 */ new Array( ), + /* State 108 */ new Array( ), + /* State 109 */ new Array( ), + /* State 110 */ new Array( ), + /* State 111 */ new Array( 88/* TITLE */,157 ), + /* State 112 */ new Array( ), + /* State 113 */ new Array( ), + /* State 114 */ new Array( 88/* TITLE */,136 ), + /* State 115 */ new Array( ), + /* State 116 */ new Array( ), + /* State 117 */ new Array( ), + /* State 118 */ new Array( ), + /* State 119 */ new Array( ), + /* State 120 */ new Array( ), + /* State 121 */ new Array( ), + /* State 122 */ new Array( ), + /* State 123 */ new Array( ), + /* State 124 */ new Array( ), + /* State 125 */ new Array( ), + /* State 126 */ new Array( ), + /* State 127 */ new Array( ), + /* State 128 */ new Array( ), + /* State 129 */ new Array( 63/* LOCATION */,178 ), + /* State 130 */ new Array( ), + /* State 131 */ new Array( ), + /* State 132 */ new Array( ), + /* State 133 */ new Array( ), + /* State 134 */ new Array( ), + /* State 135 */ new Array( ), + /* State 136 */ new Array( ), + /* State 137 */ new Array( 88/* TITLE */,136 ), + /* State 138 */ new Array( ), + /* State 139 */ new Array( ), + /* State 140 */ new Array( ), + /* State 141 */ new Array( ), + /* State 142 */ new Array( ), + /* State 143 */ new Array( ), + /* State 144 */ new Array( ), + /* State 145 */ new Array( ), + /* State 146 */ new Array( ), + /* State 147 */ new Array( ), + /* State 148 */ new Array( ), + /* State 149 */ new Array( ), + /* State 150 */ new Array( ), + /* State 151 */ new Array( ), + /* State 152 */ new Array( ), + /* State 153 */ new Array( ), + /* State 154 */ new Array( ), + /* State 155 */ new Array( ), + /* State 156 */ new Array( ), + /* State 157 */ new Array( ), + /* State 158 */ new Array( ), + /* State 159 */ new Array( ), + /* State 160 */ new Array( ), + /* State 161 */ new Array( ), + /* State 162 */ new Array( ), + /* State 163 */ new Array( ), + /* State 164 */ new Array( ), + /* State 165 */ new Array( ), + /* State 166 */ new Array( ), + /* State 167 */ new Array( ), + /* State 168 */ new Array( 63/* LOCATION */,193 ), + /* State 169 */ new Array( ), + /* State 170 */ new Array( ), + /* State 171 */ new Array( ), + /* State 172 */ new Array( ), + /* State 173 */ new Array( 61/* TIMERANGE */,197 , 60/* TIME */,198 ), + /* State 174 */ new Array( ), + /* State 175 */ new Array( ), + /* State 176 */ new Array( ), + /* State 177 */ new Array( ), + /* State 178 */ new Array( ), + /* State 179 */ new Array( 63/* LOCATION */,203 ), + /* State 180 */ new Array( ), + /* State 181 */ new Array( 88/* TITLE */,136 ), + /* State 182 */ new Array( ), + /* State 183 */ new Array( ), + /* State 184 */ new Array( ), + /* State 185 */ new Array( ), + /* State 186 */ new Array( ), + /* State 187 */ new Array( ), + /* State 188 */ new Array( ), + /* State 189 */ new Array( ), + /* State 190 */ new Array( 62/* DATETIME */,210 , 59/* DATE */,211 , 60/* TIME */,212 ), + /* State 191 */ new Array( 63/* LOCATION */,213 ), + /* State 192 */ new Array( ), + /* State 193 */ new Array( ), + /* State 194 */ new Array( ), + /* State 195 */ new Array( 59/* DATE */,216 , 60/* TIME */,217 , 61/* TIMERANGE */,218 ), + /* State 196 */ new Array( 80/* FULL_TITLE */,220 ), + /* State 197 */ new Array( ), + /* State 198 */ new Array( ), + /* State 199 */ new Array( ), + /* State 200 */ new Array( ), + /* State 201 */ new Array( ), + /* State 202 */ new Array( ), + /* State 203 */ new Array( ), + /* State 204 */ new Array( ), + /* State 205 */ new Array( ), + /* State 206 */ new Array( ), + /* State 207 */ new Array( ), + /* State 208 */ new Array( ), + /* State 209 */ new Array( ), + /* State 210 */ new Array( ), + /* State 211 */ new Array( 60/* TIME */,70 ), + /* State 212 */ new Array( ), + /* State 213 */ new Array( ), + /* State 214 */ new Array( 63/* LOCATION */,227 ), + /* State 215 */ new Array( 59/* DATE */,228 ), + /* State 216 */ new Array( 80/* FULL_TITLE */,230 ), + /* State 217 */ new Array( 80/* FULL_TITLE */,231 ), + /* State 218 */ new Array( 80/* FULL_TITLE */,233 ), + /* State 219 */ new Array( 88/* TITLE */,110 , 61/* TIMERANGE */,234 , 60/* TIME */,235 ), + /* State 220 */ new Array( ), + /* State 221 */ new Array( ), + /* State 222 */ new Array( ), + /* State 223 */ new Array( ), + /* State 224 */ new Array( ), + /* State 225 */ new Array( ), + /* State 226 */ new Array( 62/* DATETIME */,239 , 59/* DATE */,211 , 60/* TIME */,212 ), + /* State 227 */ new Array( ), + /* State 228 */ new Array( ), + /* State 229 */ new Array( 88/* TITLE */,110 , 61/* TIMERANGE */,242 , 60/* TIME */,243 ), + /* State 230 */ new Array( ), + /* State 231 */ new Array( ), + /* State 232 */ new Array( 88/* TITLE */,110 ), + /* State 233 */ new Array( ), + /* State 234 */ new Array( 80/* FULL_TITLE */,244 ), + /* State 235 */ new Array( 80/* FULL_TITLE */,245 ), + /* State 236 */ new Array( 80/* FULL_TITLE */,246 ), + /* State 237 */ new Array( 80/* FULL_TITLE */,247 ), + /* State 238 */ new Array( ), + /* State 239 */ new Array( ), + /* State 240 */ new Array( 62/* DATETIME */,249 , 59/* DATE */,211 , 60/* TIME */,212 ), + /* State 241 */ new Array( 60/* TIME */,250 , 61/* TIMERANGE */,251 ), + /* State 242 */ new Array( 80/* FULL_TITLE */,252 ), + /* State 243 */ new Array( 80/* FULL_TITLE */,253 ), + /* State 244 */ new Array( ), + /* State 245 */ new Array( ), + /* State 246 */ new Array( ), + /* State 247 */ new Array( ), + /* State 248 */ new Array( ), + /* State 249 */ new Array( ), + /* State 250 */ new Array( 80/* FULL_TITLE */,254 ), + /* State 251 */ new Array( 80/* FULL_TITLE */,255 ), + /* State 252 */ new Array( ), + /* State 253 */ new Array( ), + /* State 254 */ new Array( ), + /* State 255 */ new Array( ) +); + + + +/* Symbol labels */ +var labels = new Array( + "utterance'" /* Non-terminal symbol */, + "WHITESPACE" /* Terminal symbol */, + "UNDEF_ARTICLE" /* Terminal symbol */, + "PP_MINE" /* Terminal symbol */, + "V_PLAY_IMP" /* Terminal symbol */, + "V_PLAY_INF" /* Terminal symbol */, + "V_PLAY_RADIO_INF" /* Terminal symbol */, + "V_PLAY_FIN" /* Terminal symbol */, + "V_SHOW_IMP" /* Terminal symbol */, + "V_SHOW_INF" /* Terminal symbol */, + "V_RECORD_IMP" /* Terminal symbol */, + "V_RECORD_INF" /* Terminal symbol */, + "V_SEND_IMP" /* Terminal symbol */, + "V_SEND_INF" /* Terminal symbol */, + "V_SEND_FIN" /* Terminal symbol */, + "V_OPEN_INF" /* Terminal symbol */, + "V_OPEN_FIN" /* Terminal symbol */, + "V_FIND_IMP" /* Terminal symbol */, + "RADAR" /* Terminal symbol */, + "RADIO" /* Terminal symbol */, + "AUDIOTAG" /* Terminal symbol */, + "VOICETAG" /* Terminal symbol */, + "SOCIAL_NETWORK" /* Terminal symbol */, + "TWEET" /* Terminal symbol */, + "INFO" /* Terminal symbol */, + "PREPOSITION" /* Terminal symbol */, + "PR_UPTO" /* Terminal symbol */, + "WHAT" /* Terminal symbol */, + "WHERE" /* Terminal symbol */, + "POI_CATEGORY" /* Terminal symbol */, + "LOCATION_NAME" /* Terminal symbol */, + "SQUARE" /* Terminal symbol */, + "NEAR_TO_ME" /* Terminal symbol */, + "STREET" /* Terminal symbol */, + "MUSIC" /* Terminal symbol */, + "NUMBER" /* Terminal symbol */, + "THEME" /* Terminal symbol */, + "DATENUMBER" /* Terminal symbol */, + "DATE_VARIABLE" /* Terminal symbol */, + "PERSON" /* Terminal symbol */, + "TIMENUMBER" /* Terminal symbol */, + "ORDINAL" /* Terminal symbol */, + "MONTH" /* Terminal symbol */, + "TIMEWORD" /* Terminal symbol */, + "STARS" /* Terminal symbol */, + "MORE" /* Terminal symbol */, + "AGAIN" /* Terminal symbol */, + "AND" /* Terminal symbol */, + "ALL" /* Terminal symbol */, + "THAT" /* Terminal symbol */, + "LIKE" /* Terminal symbol */, + "MICRO" /* Terminal symbol */, + "CAFE" /* Terminal symbol */, + "APPOINTMENTS" /* Terminal symbol */, + "APPOINTMENT" /* Terminal symbol */, + "CREATE" /* Terminal symbol */, + "REST" /* Terminal symbol */, + "phrases" /* Non-terminal symbol */, + "utterance" /* Non-terminal symbol */, + "DATE" /* Non-terminal symbol */, + "TIME" /* Non-terminal symbol */, + "TIMERANGE" /* Non-terminal symbol */, + "DATETIME" /* Non-terminal symbol */, + "LOCATION" /* Non-terminal symbol */, + "PLAY" /* Non-terminal symbol */, + "PLAY_MORE" /* Non-terminal symbol */, + "PLAY_AGAIN" /* Non-terminal symbol */, + "PLAY_RADIO" /* Non-terminal symbol */, + "PLAY_AUDIOTAGS" /* Non-terminal symbol */, + "PLAY_VOICETAGS" /* Non-terminal symbol */, + "RECORD_AUDIOTAG" /* Non-terminal symbol */, + "RECORD_VOICETAG" /* Non-terminal symbol */, + "RECORD" /* Non-terminal symbol */, + "SEND" /* Non-terminal symbol */, + "SEND_TWEET" /* Non-terminal symbol */, + "SHOW_INFO" /* Non-terminal symbol */, + "SHOW_POIs" /* Non-terminal symbol */, + "JUST_SHOW_APPOINTMENTs" /* Non-terminal symbol */, + "SHOW_APPOINTMENTs_FROM" /* Non-terminal symbol */, + "SHOW_APPOINTMENTs_FROM_TO" /* Non-terminal symbol */, + "FULL_TITLE" /* Non-terminal symbol */, + "CREATE_APPOINTMENTS" /* Non-terminal symbol */, + "FIND_PERSON" /* Non-terminal symbol */, + "RECORD_MEMO" /* Non-terminal symbol */, + "FIND_MUSIC" /* Non-terminal symbol */, + "START_RADAR" /* Non-terminal symbol */, + "LIKED" /* Non-terminal symbol */, + "RATING" /* Non-terminal symbol */, + "TITLE" /* Non-terminal symbol */, + "$" /* Terminal symbol */ +); + + + + info.offset = 0; + info.src = src; + info.att = new String(); + + if( !err_off ) + err_off = new Array(); + if( !err_la ) + err_la = new Array(); + + sstack.push( 0 ); + vstack.push( 0 ); + + la = __lex( info ); + + while( true ) + { + act = 257; + for( var i = 0; i < act_tab[sstack[sstack.length-1]].length; i+=2 ) + { + if( act_tab[sstack[sstack.length-1]][i] == la ) + { + act = act_tab[sstack[sstack.length-1]][i+1]; + break; + } + } + + if( _dbg_withtrace && sstack.length > 0 ) + { + __dbg_print( "\nState " + sstack[sstack.length-1] + "\n" + + "\tLookahead: " + labels[la] + " (\"" + info.att + "\")\n" + + "\tAction: " + act + "\n" + + "\tSource: \"" + info.src.substr( info.offset, 30 ) + ( ( info.offset + 30 < info.src.length ) ? + "..." : "" ) + "\"\n" + + "\tStack: " + sstack.join() + "\n" + + "\tValue stack: " + vstack.join() + "\n" ); + } + + + //Panic-mode: Try recovery when parse-error occurs! + if( act == 257 ) + { + if( _dbg_withtrace ) + __dbg_print( "Error detected: There is no reduce or shift on the symbol " + labels[la] ); + + err_cnt++; + err_off.push( info.offset - info.att.length ); + err_la.push( new Array() ); + for( var i = 0; i < act_tab[sstack[sstack.length-1]].length; i+=2 ) + err_la[err_la.length-1].push( labels[act_tab[sstack[sstack.length-1]][i]] ); + + //Remember the original stack! + var rsstack = new Array(); + var rvstack = new Array(); + for( var i = 0; i < sstack.length; i++ ) + { + rsstack[i] = sstack[i]; + rvstack[i] = vstack[i]; + } + + while( act == 257 && la != 89 ) + { + if( _dbg_withtrace ) + __dbg_print( "\tError recovery\n" + + "Current lookahead: " + labels[la] + " (" + info.att + ")\n" + + "Action: " + act + "\n\n" ); + if( la == -1 ) + info.offset++; + + while( act == 257 && sstack.length > 0 ) + { + sstack.pop(); + vstack.pop(); + + if( sstack.length == 0 ) + break; + + act = 257; + for( var i = 0; i < act_tab[sstack[sstack.length-1]].length; i+=2 ) + { + if( act_tab[sstack[sstack.length-1]][i] == la ) + { + act = act_tab[sstack[sstack.length-1]][i+1]; + break; + } + } + } + + if( act != 257 ) + break; + + for( var i = 0; i < rsstack.length; i++ ) + { + sstack.push( rsstack[i] ); + vstack.push( rvstack[i] ); + } + + la = __lex( info ); + } + + if( act == 257 ) + { + if( _dbg_withtrace ) + __dbg_print( "\tError recovery failed, terminating parse process..." ); + break; + } + + + if( _dbg_withtrace ) + __dbg_print( "\tError recovery succeeded, continuing" ); + } + + /* + if( act == 257 ) + break; + */ + + + //Shift + if( act > 0 ) + { + //Parse tree + var node = new treenode(); + node.sym = labels[ la ]; + node.att = info.att; + node.child = new Array(); + tree.push( treenodes.length ); + treenodes.push( node ); + + if( _dbg_withtrace ) + __dbg_print( "Shifting symbol: " + labels[la] + " (" + info.att + ")" ); + + sstack.push( act ); + vstack.push( info.att ); + + la = __lex( info ); + + if( _dbg_withtrace ) + __dbg_print( "\tNew lookahead symbol: " + labels[la] + " (" + info.att + ")" ); + } + //Reduce + else + { + act *= -1; + + if( _dbg_withtrace ) + __dbg_print( "Reducing by producution: " + act ); + + rval = void(0); + + if( _dbg_withtrace ) + __dbg_print( "\tPerforming semantic action..." ); + +switch( act ) +{ + case 0: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 1: + { + _$result['semantic'] = _$result['semantic'].replace(/"{/g,'{').replace(/}"/g,'}'); console.log(_$result); theGrammarConverterInstance.semanticAnnotationResult = _$result + } + break; + case 2: + { + rval = vstack[ vstack.length - 1 ]; var date_temp = {}; date_temp['phrases'] = {};date_temp['phrases']['ordinal'] = {};date_temp['phrases']['ordinal'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; date_temp['phrase']=_$phrase; date_temp['semantic'] = '{"NoMatch":{},"date":{"dateString":{"day":"' + function(){try{return _$ordinal[date_temp['phrases']['ordinal'][0]];} catch(e){return 'undefined';}}() + '","month":"' + function(){try{return _$month[date_temp['phrases']['month'][0]];} catch(e){return 'undefined';}}() + '","year":"' + function(){try{return _$number[date_temp['phrases']['number'][0]];} catch(e){return 'undefined';}}() + '"},"date":"' + function(){try{return _$datenumber[date_temp['phrases']['datenumber'][0]];} catch(e){return 'undefined';}}() + '","variable":"' + function(){try{return _$date_variable[date_temp['phrases']['date_variable'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$date[_$phrase] = date_temp; _$result = date_temp; + } + break; + case 3: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var date_temp = {}; date_temp['phrases'] = {};date_temp['phrases']['ordinal'] = {};date_temp['phrases']['ordinal'][0] = vstack[ vstack.length - 2 ]; date_temp['phrases']['month'] = {};date_temp['phrases']['month'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; date_temp['phrase']=_$phrase; date_temp['semantic'] = '{"NoMatch":{},"date":{"dateString":{"day":"' + function(){try{return _$ordinal[date_temp['phrases']['ordinal'][0]];} catch(e){return 'undefined';}}() + '","month":"' + function(){try{return _$month[date_temp['phrases']['month'][0]];} catch(e){return 'undefined';}}() + '","year":"' + function(){try{return _$number[date_temp['phrases']['number'][0]];} catch(e){return 'undefined';}}() + '"},"date":"' + function(){try{return _$datenumber[date_temp['phrases']['datenumber'][0]];} catch(e){return 'undefined';}}() + '","variable":"' + function(){try{return _$date_variable[date_temp['phrases']['date_variable'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$date[_$phrase] = date_temp; _$result = date_temp; + } + break; + case 4: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var date_temp = {}; date_temp['phrases'] = {};date_temp['phrases']['ordinal'] = {};date_temp['phrases']['ordinal'][0] = vstack[ vstack.length - 3 ]; date_temp['phrases']['month'] = {};date_temp['phrases']['month'][0] = vstack[ vstack.length - 2 ]; date_temp['phrases']['number'] = {};date_temp['phrases']['number'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; date_temp['phrase']=_$phrase; date_temp['semantic'] = '{"NoMatch":{},"date":{"dateString":{"day":"' + function(){try{return _$ordinal[date_temp['phrases']['ordinal'][0]];} catch(e){return 'undefined';}}() + '","month":"' + function(){try{return _$month[date_temp['phrases']['month'][0]];} catch(e){return 'undefined';}}() + '","year":"' + function(){try{return _$number[date_temp['phrases']['number'][0]];} catch(e){return 'undefined';}}() + '"},"date":"' + function(){try{return _$datenumber[date_temp['phrases']['datenumber'][0]];} catch(e){return 'undefined';}}() + '","variable":"' + function(){try{return _$date_variable[date_temp['phrases']['date_variable'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$date[_$phrase] = date_temp; _$result = date_temp; + } + break; + case 5: + { + rval = vstack[ vstack.length - 1 ]; var date_temp = {}; date_temp['phrases'] = {};date_temp['phrases']['datenumber'] = {};date_temp['phrases']['datenumber'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; date_temp['phrase']=_$phrase; date_temp['semantic'] = '{"NoMatch":{},"date":{"dateString":{"day":"' + function(){try{return _$ordinal[date_temp['phrases']['ordinal'][0]];} catch(e){return 'undefined';}}() + '","month":"' + function(){try{return _$month[date_temp['phrases']['month'][0]];} catch(e){return 'undefined';}}() + '","year":"' + function(){try{return _$number[date_temp['phrases']['number'][0]];} catch(e){return 'undefined';}}() + '"},"date":"' + function(){try{return _$datenumber[date_temp['phrases']['datenumber'][0]];} catch(e){return 'undefined';}}() + '","variable":"' + function(){try{return _$date_variable[date_temp['phrases']['date_variable'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$date[_$phrase] = date_temp; _$result = date_temp; + } + break; + case 6: + { + rval = vstack[ vstack.length - 1 ]; var date_temp = {}; date_temp['phrases'] = {};date_temp['phrases']['date_variable'] = {};date_temp['phrases']['date_variable'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; date_temp['phrase']=_$phrase; date_temp['semantic'] = '{"NoMatch":{},"date":{"dateString":{"day":"' + function(){try{return _$ordinal[date_temp['phrases']['ordinal'][0]];} catch(e){return 'undefined';}}() + '","month":"' + function(){try{return _$month[date_temp['phrases']['month'][0]];} catch(e){return 'undefined';}}() + '","year":"' + function(){try{return _$number[date_temp['phrases']['number'][0]];} catch(e){return 'undefined';}}() + '"},"date":"' + function(){try{return _$datenumber[date_temp['phrases']['datenumber'][0]];} catch(e){return 'undefined';}}() + '","variable":"' + function(){try{return _$date_variable[date_temp['phrases']['date_variable'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$date[_$phrase] = date_temp; _$result = date_temp; + } + break; + case 7: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var time_temp = {}; time_temp['phrases'] = {};time_temp['phrases']['timenumber'] = {};time_temp['phrases']['timenumber'][0] = vstack[ vstack.length - 2 ]; time_temp['phrases']['timeword'] = {};time_temp['phrases']['timeword'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; time_temp['phrase']=_$phrase; time_temp['semantic'] = '{"NoMatch":{},"time":"' + function(){try{return _$timenumber[time_temp['phrases']['timenumber'][0]];} catch(e){return 'undefined';}}() + '"}'; _$time[_$phrase] = time_temp; _$result = time_temp; + } + break; + case 8: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var timerange_temp = {}; timerange_temp['phrases'] = {};timerange_temp['phrases']['number'] = {};timerange_temp['phrases']['number'][0] = vstack[ vstack.length - 3 ]; timerange_temp['phrases']['pr_upto'] = {};timerange_temp['phrases']['pr_upto'][0] = vstack[ vstack.length - 2 ]; timerange_temp['phrases']['time'] = {};timerange_temp['phrases']['time'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; timerange_temp['phrase']=_$phrase; timerange_temp['semantic'] = '{"NoMatch":{},"timerange":{"time1":{"number":"' + function(){try{return _$number[timerange_temp['phrases']['number'][0]];} catch(e){return 'undefined';}}() + '","timeValue":"' + function(){try{return _$time[timerange_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"},"time2":"' + function(){try{return _$time[timerange_temp['phrases']['time'][1]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$timerange[_$phrase] = timerange_temp; _$result = timerange_temp; + } + break; + case 9: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var timerange_temp = {}; timerange_temp['phrases'] = {};timerange_temp['phrases']['time'] = {};timerange_temp['phrases']['time'][0] = vstack[ vstack.length - 3 ]; timerange_temp['phrases']['pr_upto'] = {};timerange_temp['phrases']['pr_upto'][0] = vstack[ vstack.length - 2 ]; timerange_temp['phrases']['time'][1] = vstack[ vstack.length - 1 ]; var _$phrase = rval; timerange_temp['phrase']=_$phrase; timerange_temp['semantic'] = '{"NoMatch":{},"timerange":{"time1":{"number":"' + function(){try{return _$number[timerange_temp['phrases']['number'][0]];} catch(e){return 'undefined';}}() + '","timeValue":"' + function(){try{return _$time[timerange_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"},"time2":"' + function(){try{return _$time[timerange_temp['phrases']['time'][1]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$timerange[_$phrase] = timerange_temp; _$result = timerange_temp; + } + break; + case 10: + { + rval = vstack[ vstack.length - 1 ]; var datetime_temp = {}; datetime_temp['phrases'] = {};datetime_temp['phrases']['date'] = {};datetime_temp['phrases']['date'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; datetime_temp['phrase']=_$phrase; datetime_temp['semantic'] = '{"NoMatch":{},"datetime":{"time":"' + function(){try{return _$time[datetime_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[datetime_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$datetime[_$phrase] = datetime_temp; _$result = datetime_temp; + } + break; + case 11: + { + rval = vstack[ vstack.length - 1 ]; var datetime_temp = {}; datetime_temp['phrases'] = {};datetime_temp['phrases']['time'] = {};datetime_temp['phrases']['time'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; datetime_temp['phrase']=_$phrase; datetime_temp['semantic'] = '{"NoMatch":{},"datetime":{"time":"' + function(){try{return _$time[datetime_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[datetime_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$datetime[_$phrase] = datetime_temp; _$result = datetime_temp; + } + break; + case 12: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var datetime_temp = {}; datetime_temp['phrases'] = {};datetime_temp['phrases']['date'] = {};datetime_temp['phrases']['date'][0] = vstack[ vstack.length - 2 ]; datetime_temp['phrases']['time'] = {};datetime_temp['phrases']['time'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; datetime_temp['phrase']=_$phrase; datetime_temp['semantic'] = '{"NoMatch":{},"datetime":{"time":"' + function(){try{return _$time[datetime_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[datetime_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$datetime[_$phrase] = datetime_temp; _$result = datetime_temp; + } + break; + case 13: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var datetime_temp = {}; datetime_temp['phrases'] = {};datetime_temp['phrases']['date'] = {};datetime_temp['phrases']['date'][0] = vstack[ vstack.length - 3 ]; datetime_temp['phrases']['preposition'] = {};datetime_temp['phrases']['preposition'][0] = vstack[ vstack.length - 2 ]; datetime_temp['phrases']['time'] = {};datetime_temp['phrases']['time'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; datetime_temp['phrase']=_$phrase; datetime_temp['semantic'] = '{"NoMatch":{},"datetime":{"time":"' + function(){try{return _$time[datetime_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[datetime_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$datetime[_$phrase] = datetime_temp; _$result = datetime_temp; + } + break; + case 14: + { + rval = vstack[ vstack.length - 1 ]; var location_temp = {}; location_temp['phrases'] = {};location_temp['phrases']['street'] = {};location_temp['phrases']['street'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; location_temp['phrase']=_$phrase; location_temp['semantic'] = '{"Place":{"name":"' + function(){try{return _$phrase;} catch(e){return 'undefined';}}() + '"}}'; _$location[_$phrase] = location_temp; _$result = location_temp; + } + break; + case 15: + { + rval = vstack[ vstack.length - 1 ]; var location_temp = {}; location_temp['phrases'] = {};location_temp['phrases']['near_to_me'] = {};location_temp['phrases']['near_to_me'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; location_temp['phrase']=_$phrase; location_temp['semantic'] = '{"Place":{"name":"' + function(){try{return _$phrase;} catch(e){return 'undefined';}}() + '"}}'; _$location[_$phrase] = location_temp; _$result = location_temp; + } + break; + case 16: + { + rval = vstack[ vstack.length - 1 ]; var location_temp = {}; location_temp['phrases'] = {};location_temp['phrases']['location_name'] = {};location_temp['phrases']['location_name'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; location_temp['phrase']=_$phrase; location_temp['semantic'] = '{"Place":{"name":"' + function(){try{return _$phrase;} catch(e){return 'undefined';}}() + '"}}'; _$location[_$phrase] = location_temp; _$result = location_temp; + } + break; + case 17: + { + rval = vstack[ vstack.length - 1 ]; var location_temp = {}; location_temp['phrases'] = {};location_temp['phrases']['square'] = {};location_temp['phrases']['square'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; location_temp['phrase']=_$phrase; location_temp['semantic'] = '{"Place":{"name":"' + function(){try{return _$phrase;} catch(e){return 'undefined';}}() + '"}}'; _$location[_$phrase] = location_temp; _$result = location_temp; + } + break; + case 18: + { + rval = vstack[ vstack.length - 1 ]; var play_temp = {}; play_temp['phrases'] = {};play_temp['phrases']['v_play_inf'] = {};play_temp['phrases']['v_play_inf'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_temp['phrase']=_$phrase; play_temp['semantic'] = '{"Play":{}}'; _$play[_$phrase] = play_temp; _$result = play_temp; + } + break; + case 19: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var play_temp = {}; play_temp['phrases'] = {};play_temp['phrases']['v_play_imp'] = {};play_temp['phrases']['v_play_imp'][0] = vstack[ vstack.length - 2 ]; play_temp['phrases']['preposition'] = {};play_temp['phrases']['preposition'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_temp['phrase']=_$phrase; play_temp['semantic'] = '{"Play":{}}'; _$play[_$phrase] = play_temp; _$result = play_temp; + } + break; + case 20: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var play_more_temp = {}; play_more_temp['phrases'] = {};play_more_temp['phrases']['more'] = {};play_more_temp['phrases']['more'][0] = vstack[ vstack.length - 2 ]; play_more_temp['phrases']['v_play_inf'] = {};play_more_temp['phrases']['v_play_inf'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_more_temp['phrase']=_$phrase; play_more_temp['semantic'] = '{"Play":{"more":"yes"}}'; _$play_more[_$phrase] = play_more_temp; _$result = play_more_temp; + } + break; + case 21: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var play_more_temp = {}; play_more_temp['phrases'] = {};play_more_temp['phrases']['v_play_imp'] = {};play_more_temp['phrases']['v_play_imp'][0] = vstack[ vstack.length - 2 ]; play_more_temp['phrases']['more'] = {};play_more_temp['phrases']['more'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_more_temp['phrase']=_$phrase; play_more_temp['semantic'] = '{"Play":{"more":"yes"}}'; _$play_more[_$phrase] = play_more_temp; _$result = play_more_temp; + } + break; + case 22: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var play_again_temp = {}; play_again_temp['phrases'] = {};play_again_temp['phrases']['again'] = {};play_again_temp['phrases']['again'][0] = vstack[ vstack.length - 2 ]; play_again_temp['phrases']['v_play_inf'] = {};play_again_temp['phrases']['v_play_inf'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_again_temp['phrase']=_$phrase; play_again_temp['semantic'] = '{"Play":{"again":"yes"}}'; _$play_again[_$phrase] = play_again_temp; _$result = play_again_temp; + } + break; + case 23: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var play_again_temp = {}; play_again_temp['phrases'] = {};play_again_temp['phrases']['v_play_imp'] = {};play_again_temp['phrases']['v_play_imp'][0] = vstack[ vstack.length - 2 ]; play_again_temp['phrases']['again'] = {};play_again_temp['phrases']['again'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_again_temp['phrase']=_$phrase; play_again_temp['semantic'] = '{"Play":{"again":"yes"}}'; _$play_again[_$phrase] = play_again_temp; _$result = play_again_temp; + } + break; + case 24: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var play_radio_temp = {}; play_radio_temp['phrases'] = {};play_radio_temp['phrases']['v_play_imp'] = {};play_radio_temp['phrases']['v_play_imp'][0] = vstack[ vstack.length - 2 ]; play_radio_temp['phrases']['radio'] = {};play_radio_temp['phrases']['radio'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_radio_temp['phrase']=_$phrase; play_radio_temp['semantic'] = '{"Play":{"type":"radio"}}'; _$play_radio[_$phrase] = play_radio_temp; _$result = play_radio_temp; + } + break; + case 25: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var play_radio_temp = {}; play_radio_temp['phrases'] = {};play_radio_temp['phrases']['v_play_imp'] = {};play_radio_temp['phrases']['v_play_imp'][0] = vstack[ vstack.length - 3 ]; play_radio_temp['phrases']['radio'] = {};play_radio_temp['phrases']['radio'][0] = vstack[ vstack.length - 2 ]; play_radio_temp['phrases']['preposition'] = {};play_radio_temp['phrases']['preposition'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_radio_temp['phrase']=_$phrase; play_radio_temp['semantic'] = '{"Play":{"type":"radio"}}'; _$play_radio[_$phrase] = play_radio_temp; _$result = play_radio_temp; + } + break; + case 26: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var play_radio_temp = {}; play_radio_temp['phrases'] = {};play_radio_temp['phrases']['v_play_imp'] = {};play_radio_temp['phrases']['v_play_imp'][0] = vstack[ vstack.length - 3 ]; play_radio_temp['phrases']['radio'] = {};play_radio_temp['phrases']['radio'][0] = vstack[ vstack.length - 2 ]; play_radio_temp['phrases']['that'] = {};play_radio_temp['phrases']['that'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_radio_temp['phrase']=_$phrase; play_radio_temp['semantic'] = '{"Play":{"type":"radio"}}'; _$play_radio[_$phrase] = play_radio_temp; _$result = play_radio_temp; + } + break; + case 27: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var play_radio_temp = {}; play_radio_temp['phrases'] = {};play_radio_temp['phrases']['radio'] = {};play_radio_temp['phrases']['radio'][0] = vstack[ vstack.length - 2 ]; play_radio_temp['phrases']['v_play_inf'] = {};play_radio_temp['phrases']['v_play_inf'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_radio_temp['phrase']=_$phrase; play_radio_temp['semantic'] = '{"Play":{"type":"radio"}}'; _$play_radio[_$phrase] = play_radio_temp; _$result = play_radio_temp; + } + break; + case 28: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var play_radio_temp = {}; play_radio_temp['phrases'] = {};play_radio_temp['phrases']['radio'] = {};play_radio_temp['phrases']['radio'][0] = vstack[ vstack.length - 2 ]; play_radio_temp['phrases']['v_play_fin'] = {};play_radio_temp['phrases']['v_play_fin'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_radio_temp['phrase']=_$phrase; play_radio_temp['semantic'] = '{"Play":{"type":"radio"}}'; _$play_radio[_$phrase] = play_radio_temp; _$result = play_radio_temp; + } + break; + case 29: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var play_radio_temp = {}; play_radio_temp['phrases'] = {};play_radio_temp['phrases']['that'] = {};play_radio_temp['phrases']['that'][0] = vstack[ vstack.length - 3 ]; play_radio_temp['phrases']['radio'] = {};play_radio_temp['phrases']['radio'][0] = vstack[ vstack.length - 2 ]; play_radio_temp['phrases']['v_play_inf'] = {};play_radio_temp['phrases']['v_play_inf'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_radio_temp['phrase']=_$phrase; play_radio_temp['semantic'] = '{"Play":{"type":"radio"}}'; _$play_radio[_$phrase] = play_radio_temp; _$result = play_radio_temp; + } + break; + case 30: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var play_radio_temp = {}; play_radio_temp['phrases'] = {};play_radio_temp['phrases']['v_play_inf'] = {};play_radio_temp['phrases']['v_play_inf'][0] = vstack[ vstack.length - 2 ]; play_radio_temp['phrases']['radio'] = {};play_radio_temp['phrases']['radio'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_radio_temp['phrase']=_$phrase; play_radio_temp['semantic'] = '{"Play":{"type":"radio"}}'; _$play_radio[_$phrase] = play_radio_temp; _$result = play_radio_temp; + } + break; + case 31: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var play_radio_temp = {}; play_radio_temp['phrases'] = {};play_radio_temp['phrases']['radio'] = {};play_radio_temp['phrases']['radio'][0] = vstack[ vstack.length - 2 ]; play_radio_temp['phrases']['preposition'] = {};play_radio_temp['phrases']['preposition'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_radio_temp['phrase']=_$phrase; play_radio_temp['semantic'] = '{"Play":{"type":"radio"}}'; _$play_radio[_$phrase] = play_radio_temp; _$result = play_radio_temp; + } + break; + case 32: + { + rval = vstack[ vstack.length - 1 ]; var play_radio_temp = {}; play_radio_temp['phrases'] = {};play_radio_temp['phrases']['v_play_radio_inf'] = {};play_radio_temp['phrases']['v_play_radio_inf'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_radio_temp['phrase']=_$phrase; play_radio_temp['semantic'] = '{"Play":{"type":"radio"}}'; _$play_radio[_$phrase] = play_radio_temp; _$result = play_radio_temp; + } + break; + case 33: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var play_audiotags_temp = {}; play_audiotags_temp['phrases'] = {};play_audiotags_temp['phrases']['v_play_imp'] = {};play_audiotags_temp['phrases']['v_play_imp'][0] = vstack[ vstack.length - 2 ]; play_audiotags_temp['phrases']['audiotag'] = {};play_audiotags_temp['phrases']['audiotag'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_audiotags_temp['phrase']=_$phrase; play_audiotags_temp['semantic'] = '{"Play":{"type":"audio"}}'; _$play_audiotags[_$phrase] = play_audiotags_temp; _$result = play_audiotags_temp; + } + break; + case 34: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var play_audiotags_temp = {}; play_audiotags_temp['phrases'] = {};play_audiotags_temp['phrases']['v_play_imp'] = {};play_audiotags_temp['phrases']['v_play_imp'][0] = vstack[ vstack.length - 3 ]; play_audiotags_temp['phrases']['audiotag'] = {};play_audiotags_temp['phrases']['audiotag'][0] = vstack[ vstack.length - 2 ]; play_audiotags_temp['phrases']['preposition'] = {};play_audiotags_temp['phrases']['preposition'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_audiotags_temp['phrase']=_$phrase; play_audiotags_temp['semantic'] = '{"Play":{"type":"audio"}}'; _$play_audiotags[_$phrase] = play_audiotags_temp; _$result = play_audiotags_temp; + } + break; + case 35: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var play_audiotags_temp = {}; play_audiotags_temp['phrases'] = {};play_audiotags_temp['phrases']['audiotag'] = {};play_audiotags_temp['phrases']['audiotag'][0] = vstack[ vstack.length - 2 ]; play_audiotags_temp['phrases']['v_play_inf'] = {};play_audiotags_temp['phrases']['v_play_inf'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_audiotags_temp['phrase']=_$phrase; play_audiotags_temp['semantic'] = '{"Play":{"type":"audio"}}'; _$play_audiotags[_$phrase] = play_audiotags_temp; _$result = play_audiotags_temp; + } + break; + case 36: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var play_audiotags_temp = {}; play_audiotags_temp['phrases'] = {};play_audiotags_temp['phrases']['audiotag'] = {};play_audiotags_temp['phrases']['audiotag'][0] = vstack[ vstack.length - 2 ]; play_audiotags_temp['phrases']['v_play_fin'] = {};play_audiotags_temp['phrases']['v_play_fin'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_audiotags_temp['phrase']=_$phrase; play_audiotags_temp['semantic'] = '{"Play":{"type":"audio"}}'; _$play_audiotags[_$phrase] = play_audiotags_temp; _$result = play_audiotags_temp; + } + break; + case 37: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var play_audiotags_temp = {}; play_audiotags_temp['phrases'] = {};play_audiotags_temp['phrases']['v_play_inf'] = {};play_audiotags_temp['phrases']['v_play_inf'][0] = vstack[ vstack.length - 2 ]; play_audiotags_temp['phrases']['audiotag'] = {};play_audiotags_temp['phrases']['audiotag'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_audiotags_temp['phrase']=_$phrase; play_audiotags_temp['semantic'] = '{"Play":{"type":"audio"}}'; _$play_audiotags[_$phrase] = play_audiotags_temp; _$result = play_audiotags_temp; + } + break; + case 38: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var play_voicetags_temp = {}; play_voicetags_temp['phrases'] = {};play_voicetags_temp['phrases']['v_play_imp'] = {};play_voicetags_temp['phrases']['v_play_imp'][0] = vstack[ vstack.length - 2 ]; play_voicetags_temp['phrases']['voicetag'] = {};play_voicetags_temp['phrases']['voicetag'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_voicetags_temp['phrase']=_$phrase; play_voicetags_temp['semantic'] = '{"Play":{"type":"voice"}}'; _$play_voicetags[_$phrase] = play_voicetags_temp; _$result = play_voicetags_temp; + } + break; + case 39: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var play_voicetags_temp = {}; play_voicetags_temp['phrases'] = {};play_voicetags_temp['phrases']['v_play_imp'] = {};play_voicetags_temp['phrases']['v_play_imp'][0] = vstack[ vstack.length - 3 ]; play_voicetags_temp['phrases']['voicetag'] = {};play_voicetags_temp['phrases']['voicetag'][0] = vstack[ vstack.length - 2 ]; play_voicetags_temp['phrases']['preposition'] = {};play_voicetags_temp['phrases']['preposition'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_voicetags_temp['phrase']=_$phrase; play_voicetags_temp['semantic'] = '{"Play":{"type":"voice"}}'; _$play_voicetags[_$phrase] = play_voicetags_temp; _$result = play_voicetags_temp; + } + break; + case 40: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var play_voicetags_temp = {}; play_voicetags_temp['phrases'] = {};play_voicetags_temp['phrases']['voicetag'] = {};play_voicetags_temp['phrases']['voicetag'][0] = vstack[ vstack.length - 2 ]; play_voicetags_temp['phrases']['v_play_inf'] = {};play_voicetags_temp['phrases']['v_play_inf'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_voicetags_temp['phrase']=_$phrase; play_voicetags_temp['semantic'] = '{"Play":{"type":"voice"}}'; _$play_voicetags[_$phrase] = play_voicetags_temp; _$result = play_voicetags_temp; + } + break; + case 41: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var play_voicetags_temp = {}; play_voicetags_temp['phrases'] = {};play_voicetags_temp['phrases']['voicetag'] = {};play_voicetags_temp['phrases']['voicetag'][0] = vstack[ vstack.length - 2 ]; play_voicetags_temp['phrases']['v_play_fin'] = {};play_voicetags_temp['phrases']['v_play_fin'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_voicetags_temp['phrase']=_$phrase; play_voicetags_temp['semantic'] = '{"Play":{"type":"voice"}}'; _$play_voicetags[_$phrase] = play_voicetags_temp; _$result = play_voicetags_temp; + } + break; + case 42: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var play_voicetags_temp = {}; play_voicetags_temp['phrases'] = {};play_voicetags_temp['phrases']['v_play_inf'] = {};play_voicetags_temp['phrases']['v_play_inf'][0] = vstack[ vstack.length - 2 ]; play_voicetags_temp['phrases']['voicetag'] = {};play_voicetags_temp['phrases']['voicetag'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_voicetags_temp['phrase']=_$phrase; play_voicetags_temp['semantic'] = '{"Play":{"type":"voice"}}'; _$play_voicetags[_$phrase] = play_voicetags_temp; _$result = play_voicetags_temp; + } + break; + case 43: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var record_audiotag_temp = {}; record_audiotag_temp['phrases'] = {};record_audiotag_temp['phrases']['v_record_imp'] = {};record_audiotag_temp['phrases']['v_record_imp'][0] = vstack[ vstack.length - 2 ]; record_audiotag_temp['phrases']['audiotag'] = {};record_audiotag_temp['phrases']['audiotag'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; record_audiotag_temp['phrase']=_$phrase; record_audiotag_temp['semantic'] = '{"Record":{"type":"audio"}}'; _$record_audiotag[_$phrase] = record_audiotag_temp; _$result = record_audiotag_temp; + } + break; + case 44: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var record_audiotag_temp = {}; record_audiotag_temp['phrases'] = {};record_audiotag_temp['phrases']['v_record_imp'] = {};record_audiotag_temp['phrases']['v_record_imp'][0] = vstack[ vstack.length - 3 ]; record_audiotag_temp['phrases']['audiotag'] = {};record_audiotag_temp['phrases']['audiotag'][0] = vstack[ vstack.length - 2 ]; record_audiotag_temp['phrases']['preposition'] = {};record_audiotag_temp['phrases']['preposition'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; record_audiotag_temp['phrase']=_$phrase; record_audiotag_temp['semantic'] = '{"Record":{"type":"audio"}}'; _$record_audiotag[_$phrase] = record_audiotag_temp; _$result = record_audiotag_temp; + } + break; + case 45: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var record_audiotag_temp = {}; record_audiotag_temp['phrases'] = {};record_audiotag_temp['phrases']['audiotag'] = {};record_audiotag_temp['phrases']['audiotag'][0] = vstack[ vstack.length - 2 ]; record_audiotag_temp['phrases']['v_record_inf'] = {};record_audiotag_temp['phrases']['v_record_inf'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; record_audiotag_temp['phrase']=_$phrase; record_audiotag_temp['semantic'] = '{"Record":{"type":"audio"}}'; _$record_audiotag[_$phrase] = record_audiotag_temp; _$result = record_audiotag_temp; + } + break; + case 46: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var record_audiotag_temp = {}; record_audiotag_temp['phrases'] = {};record_audiotag_temp['phrases']['v_record_inf'] = {};record_audiotag_temp['phrases']['v_record_inf'][0] = vstack[ vstack.length - 2 ]; record_audiotag_temp['phrases']['audiotag'] = {};record_audiotag_temp['phrases']['audiotag'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; record_audiotag_temp['phrase']=_$phrase; record_audiotag_temp['semantic'] = '{"Record":{"type":"audio"}}'; _$record_audiotag[_$phrase] = record_audiotag_temp; _$result = record_audiotag_temp; + } + break; + case 47: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var record_voicetag_temp = {}; record_voicetag_temp['phrases'] = {};record_voicetag_temp['phrases']['v_record_imp'] = {};record_voicetag_temp['phrases']['v_record_imp'][0] = vstack[ vstack.length - 2 ]; record_voicetag_temp['phrases']['voicetag'] = {};record_voicetag_temp['phrases']['voicetag'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; record_voicetag_temp['phrase']=_$phrase; record_voicetag_temp['semantic'] = '{"Record":{"type":"voice"}}'; _$record_voicetag[_$phrase] = record_voicetag_temp; _$result = record_voicetag_temp; + } + break; + case 48: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var record_voicetag_temp = {}; record_voicetag_temp['phrases'] = {};record_voicetag_temp['phrases']['v_record_imp'] = {};record_voicetag_temp['phrases']['v_record_imp'][0] = vstack[ vstack.length - 3 ]; record_voicetag_temp['phrases']['voicetag'] = {};record_voicetag_temp['phrases']['voicetag'][0] = vstack[ vstack.length - 2 ]; record_voicetag_temp['phrases']['preposition'] = {};record_voicetag_temp['phrases']['preposition'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; record_voicetag_temp['phrase']=_$phrase; record_voicetag_temp['semantic'] = '{"Record":{"type":"voice"}}'; _$record_voicetag[_$phrase] = record_voicetag_temp; _$result = record_voicetag_temp; + } + break; + case 49: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var record_voicetag_temp = {}; record_voicetag_temp['phrases'] = {};record_voicetag_temp['phrases']['voicetag'] = {};record_voicetag_temp['phrases']['voicetag'][0] = vstack[ vstack.length - 2 ]; record_voicetag_temp['phrases']['v_record_inf'] = {};record_voicetag_temp['phrases']['v_record_inf'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; record_voicetag_temp['phrase']=_$phrase; record_voicetag_temp['semantic'] = '{"Record":{"type":"voice"}}'; _$record_voicetag[_$phrase] = record_voicetag_temp; _$result = record_voicetag_temp; + } + break; + case 50: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var record_voicetag_temp = {}; record_voicetag_temp['phrases'] = {};record_voicetag_temp['phrases']['v_record_inf'] = {};record_voicetag_temp['phrases']['v_record_inf'][0] = vstack[ vstack.length - 2 ]; record_voicetag_temp['phrases']['voicetag'] = {};record_voicetag_temp['phrases']['voicetag'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; record_voicetag_temp['phrase']=_$phrase; record_voicetag_temp['semantic'] = '{"Record":{"type":"voice"}}'; _$record_voicetag[_$phrase] = record_voicetag_temp; _$result = record_voicetag_temp; + } + break; + case 51: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var record_voicetag_temp = {}; record_voicetag_temp['phrases'] = {};record_voicetag_temp['phrases']['voicetag'] = {};record_voicetag_temp['phrases']['voicetag'][0] = vstack[ vstack.length - 3 ]; record_voicetag_temp['phrases']['preposition'] = {};record_voicetag_temp['phrases']['preposition'][0] = vstack[ vstack.length - 2 ]; record_voicetag_temp['phrases']['cafe'] = {};record_voicetag_temp['phrases']['cafe'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; record_voicetag_temp['phrase']=_$phrase; record_voicetag_temp['semantic'] = '{"Record":{"type":"voice"}}'; _$record_voicetag[_$phrase] = record_voicetag_temp; _$result = record_voicetag_temp; + } + break; + case 52: + { + rval = vstack[ vstack.length - 1 ]; var record_temp = {}; record_temp['phrases'] = {};record_temp['phrases']['v_record_inf'] = {};record_temp['phrases']['v_record_inf'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; record_temp['phrase']=_$phrase; record_temp['semantic'] = '{"Record":{}}'; _$record[_$phrase] = record_temp; _$result = record_temp; + } + break; + case 53: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var record_temp = {}; record_temp['phrases'] = {};record_temp['phrases']['micro'] = {};record_temp['phrases']['micro'][0] = vstack[ vstack.length - 2 ]; record_temp['phrases']['preposition'] = {};record_temp['phrases']['preposition'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; record_temp['phrase']=_$phrase; record_temp['semantic'] = '{"Record":{}}'; _$record[_$phrase] = record_temp; _$result = record_temp; + } + break; + case 54: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var send_temp = {}; send_temp['phrases'] = {};send_temp['phrases']['v_send_imp'] = {};send_temp['phrases']['v_send_imp'][0] = vstack[ vstack.length - 3 ]; send_temp['phrases']['preposition'] = {};send_temp['phrases']['preposition'][0] = vstack[ vstack.length - 2 ]; send_temp['phrases']['social_network'] = {};send_temp['phrases']['social_network'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; send_temp['phrase']=_$phrase; send_temp['semantic'] = '{"Send":{"recipient":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][0]];} catch(e){return 'undefined';}}() + '","recipient2":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][1]];} catch(e){return 'undefined';}}() + '","all":"' + function(){try{return _$all[send_temp['phrases']['all'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$send[_$phrase] = send_temp; _$result = send_temp; + } + break; + case 55: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var send_temp = {}; send_temp['phrases'] = {};send_temp['phrases']['v_send_imp'] = {};send_temp['phrases']['v_send_imp'][0] = vstack[ vstack.length - 2 ]; send_temp['phrases']['social_network'] = {};send_temp['phrases']['social_network'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; send_temp['phrase']=_$phrase; send_temp['semantic'] = '{"Send":{"recipient":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][0]];} catch(e){return 'undefined';}}() + '","recipient2":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][1]];} catch(e){return 'undefined';}}() + '","all":"' + function(){try{return _$all[send_temp['phrases']['all'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$send[_$phrase] = send_temp; _$result = send_temp; + } + break; + case 56: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var send_temp = {}; send_temp['phrases'] = {};send_temp['phrases']['preposition'] = {};send_temp['phrases']['preposition'][0] = vstack[ vstack.length - 3 ]; send_temp['phrases']['social_network'] = {};send_temp['phrases']['social_network'][0] = vstack[ vstack.length - 2 ]; send_temp['phrases']['v_send_inf'] = {};send_temp['phrases']['v_send_inf'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; send_temp['phrase']=_$phrase; send_temp['semantic'] = '{"Send":{"recipient":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][0]];} catch(e){return 'undefined';}}() + '","recipient2":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][1]];} catch(e){return 'undefined';}}() + '","all":"' + function(){try{return _$all[send_temp['phrases']['all'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$send[_$phrase] = send_temp; _$result = send_temp; + } + break; + case 57: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var send_temp = {}; send_temp['phrases'] = {};send_temp['phrases']['preposition'] = {};send_temp['phrases']['preposition'][0] = vstack[ vstack.length - 3 ]; send_temp['phrases']['social_network'] = {};send_temp['phrases']['social_network'][0] = vstack[ vstack.length - 2 ]; send_temp['phrases']['v_send_fin'] = {};send_temp['phrases']['v_send_fin'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; send_temp['phrase']=_$phrase; send_temp['semantic'] = '{"Send":{"recipient":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][0]];} catch(e){return 'undefined';}}() + '","recipient2":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][1]];} catch(e){return 'undefined';}}() + '","all":"' + function(){try{return _$all[send_temp['phrases']['all'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$send[_$phrase] = send_temp; _$result = send_temp; + } + break; + case 58: + { + rval = vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var send_temp = {}; send_temp['phrases'] = {};send_temp['phrases']['preposition'] = {};send_temp['phrases']['preposition'][0] = vstack[ vstack.length - 5 ]; send_temp['phrases']['social_network'] = {};send_temp['phrases']['social_network'][0] = vstack[ vstack.length - 4 ]; send_temp['phrases']['and'] = {};send_temp['phrases']['and'][0] = vstack[ vstack.length - 3 ]; send_temp['phrases']['social_network'][1] = vstack[ vstack.length - 2 ]; send_temp['phrases']['v_send_inf'] = {};send_temp['phrases']['v_send_inf'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; send_temp['phrase']=_$phrase; send_temp['semantic'] = '{"Send":{"recipient":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][0]];} catch(e){return 'undefined';}}() + '","recipient2":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][1]];} catch(e){return 'undefined';}}() + '","all":"' + function(){try{return _$all[send_temp['phrases']['all'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$send[_$phrase] = send_temp; _$result = send_temp; + } + break; + case 59: + { + rval = vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var send_temp = {}; send_temp['phrases'] = {};send_temp['phrases']['preposition'] = {};send_temp['phrases']['preposition'][0] = vstack[ vstack.length - 5 ]; send_temp['phrases']['social_network'] = {};send_temp['phrases']['social_network'][0] = vstack[ vstack.length - 4 ]; send_temp['phrases']['and'] = {};send_temp['phrases']['and'][0] = vstack[ vstack.length - 3 ]; send_temp['phrases']['social_network'][1] = vstack[ vstack.length - 2 ]; send_temp['phrases']['v_send_fin'] = {};send_temp['phrases']['v_send_fin'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; send_temp['phrase']=_$phrase; send_temp['semantic'] = '{"Send":{"recipient":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][0]];} catch(e){return 'undefined';}}() + '","recipient2":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][1]];} catch(e){return 'undefined';}}() + '","all":"' + function(){try{return _$all[send_temp['phrases']['all'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$send[_$phrase] = send_temp; _$result = send_temp; + } + break; + case 60: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var send_temp = {}; send_temp['phrases'] = {};send_temp['phrases']['preposition'] = {};send_temp['phrases']['preposition'][0] = vstack[ vstack.length - 3 ]; send_temp['phrases']['all'] = {};send_temp['phrases']['all'][0] = vstack[ vstack.length - 2 ]; send_temp['phrases']['v_send_inf'] = {};send_temp['phrases']['v_send_inf'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; send_temp['phrase']=_$phrase; send_temp['semantic'] = '{"Send":{"recipient":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][0]];} catch(e){return 'undefined';}}() + '","recipient2":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][1]];} catch(e){return 'undefined';}}() + '","all":"' + function(){try{return _$all[send_temp['phrases']['all'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$send[_$phrase] = send_temp; _$result = send_temp; + } + break; + case 61: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var send_temp = {}; send_temp['phrases'] = {};send_temp['phrases']['preposition'] = {};send_temp['phrases']['preposition'][0] = vstack[ vstack.length - 3 ]; send_temp['phrases']['all'] = {};send_temp['phrases']['all'][0] = vstack[ vstack.length - 2 ]; send_temp['phrases']['v_send_fin'] = {};send_temp['phrases']['v_send_fin'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; send_temp['phrase']=_$phrase; send_temp['semantic'] = '{"Send":{"recipient":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][0]];} catch(e){return 'undefined';}}() + '","recipient2":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][1]];} catch(e){return 'undefined';}}() + '","all":"' + function(){try{return _$all[send_temp['phrases']['all'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$send[_$phrase] = send_temp; _$result = send_temp; + } + break; + case 62: + { + rval = vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var send_temp = {}; send_temp['phrases'] = {};send_temp['phrases']['audiotag'] = {};send_temp['phrases']['audiotag'][0] = vstack[ vstack.length - 4 ]; send_temp['phrases']['preposition'] = {};send_temp['phrases']['preposition'][0] = vstack[ vstack.length - 3 ]; send_temp['phrases']['social_network'] = {};send_temp['phrases']['social_network'][0] = vstack[ vstack.length - 2 ]; send_temp['phrases']['v_send_inf'] = {};send_temp['phrases']['v_send_inf'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; send_temp['phrase']=_$phrase; send_temp['semantic'] = '{"Send":{"recipient":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][0]];} catch(e){return 'undefined';}}() + '","recipient2":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][1]];} catch(e){return 'undefined';}}() + '","all":"' + function(){try{return _$all[send_temp['phrases']['all'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$send[_$phrase] = send_temp; _$result = send_temp; + } + break; + case 63: + { + rval = vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var send_temp = {}; send_temp['phrases'] = {};send_temp['phrases']['audiotag'] = {};send_temp['phrases']['audiotag'][0] = vstack[ vstack.length - 4 ]; send_temp['phrases']['preposition'] = {};send_temp['phrases']['preposition'][0] = vstack[ vstack.length - 3 ]; send_temp['phrases']['social_network'] = {};send_temp['phrases']['social_network'][0] = vstack[ vstack.length - 2 ]; send_temp['phrases']['v_send_fin'] = {};send_temp['phrases']['v_send_fin'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; send_temp['phrase']=_$phrase; send_temp['semantic'] = '{"Send":{"recipient":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][0]];} catch(e){return 'undefined';}}() + '","recipient2":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][1]];} catch(e){return 'undefined';}}() + '","all":"' + function(){try{return _$all[send_temp['phrases']['all'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$send[_$phrase] = send_temp; _$result = send_temp; + } + break; + case 64: + { + rval = vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var send_temp = {}; send_temp['phrases'] = {};send_temp['phrases']['voicetag'] = {};send_temp['phrases']['voicetag'][0] = vstack[ vstack.length - 4 ]; send_temp['phrases']['preposition'] = {};send_temp['phrases']['preposition'][0] = vstack[ vstack.length - 3 ]; send_temp['phrases']['social_network'] = {};send_temp['phrases']['social_network'][0] = vstack[ vstack.length - 2 ]; send_temp['phrases']['v_send_inf'] = {};send_temp['phrases']['v_send_inf'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; send_temp['phrase']=_$phrase; send_temp['semantic'] = '{"Send":{"recipient":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][0]];} catch(e){return 'undefined';}}() + '","recipient2":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][1]];} catch(e){return 'undefined';}}() + '","all":"' + function(){try{return _$all[send_temp['phrases']['all'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$send[_$phrase] = send_temp; _$result = send_temp; + } + break; + case 65: + { + rval = vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var send_temp = {}; send_temp['phrases'] = {};send_temp['phrases']['voicetag'] = {};send_temp['phrases']['voicetag'][0] = vstack[ vstack.length - 4 ]; send_temp['phrases']['preposition'] = {};send_temp['phrases']['preposition'][0] = vstack[ vstack.length - 3 ]; send_temp['phrases']['social_network'] = {};send_temp['phrases']['social_network'][0] = vstack[ vstack.length - 2 ]; send_temp['phrases']['v_send_fin'] = {};send_temp['phrases']['v_send_fin'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; send_temp['phrase']=_$phrase; send_temp['semantic'] = '{"Send":{"recipient":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][0]];} catch(e){return 'undefined';}}() + '","recipient2":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][1]];} catch(e){return 'undefined';}}() + '","all":"' + function(){try{return _$all[send_temp['phrases']['all'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$send[_$phrase] = send_temp; _$result = send_temp; + } + break; + case 66: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var send_temp = {}; send_temp['phrases'] = {};send_temp['phrases']['v_send_inf'] = {};send_temp['phrases']['v_send_inf'][0] = vstack[ vstack.length - 3 ]; send_temp['phrases']['preposition'] = {};send_temp['phrases']['preposition'][0] = vstack[ vstack.length - 2 ]; send_temp['phrases']['social_network'] = {};send_temp['phrases']['social_network'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; send_temp['phrase']=_$phrase; send_temp['semantic'] = '{"Send":{"recipient":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][0]];} catch(e){return 'undefined';}}() + '","recipient2":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][1]];} catch(e){return 'undefined';}}() + '","all":"' + function(){try{return _$all[send_temp['phrases']['all'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$send[_$phrase] = send_temp; _$result = send_temp; + } + break; + case 67: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var send_temp = {}; send_temp['phrases'] = {};send_temp['phrases']['v_send_fin'] = {};send_temp['phrases']['v_send_fin'][0] = vstack[ vstack.length - 3 ]; send_temp['phrases']['preposition'] = {};send_temp['phrases']['preposition'][0] = vstack[ vstack.length - 2 ]; send_temp['phrases']['social_network'] = {};send_temp['phrases']['social_network'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; send_temp['phrase']=_$phrase; send_temp['semantic'] = '{"Send":{"recipient":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][0]];} catch(e){return 'undefined';}}() + '","recipient2":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][1]];} catch(e){return 'undefined';}}() + '","all":"' + function(){try{return _$all[send_temp['phrases']['all'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$send[_$phrase] = send_temp; _$result = send_temp; + } + break; + case 68: + { + rval = vstack[ vstack.length - 1 ]; var send_temp = {}; send_temp['phrases'] = {};send_temp['phrases']['v_send_inf'] = {};send_temp['phrases']['v_send_inf'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; send_temp['phrase']=_$phrase; send_temp['semantic'] = '{"Send":{"recipient":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][0]];} catch(e){return 'undefined';}}() + '","recipient2":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][1]];} catch(e){return 'undefined';}}() + '","all":"' + function(){try{return _$all[send_temp['phrases']['all'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$send[_$phrase] = send_temp; _$result = send_temp; + } + break; + case 69: + { + rval = vstack[ vstack.length - 1 ]; var send_temp = {}; send_temp['phrases'] = {};send_temp['phrases']['v_send_fin'] = {};send_temp['phrases']['v_send_fin'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; send_temp['phrase']=_$phrase; send_temp['semantic'] = '{"Send":{"recipient":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][0]];} catch(e){return 'undefined';}}() + '","recipient2":"' + function(){try{return _$social_network[send_temp['phrases']['social_network'][1]];} catch(e){return 'undefined';}}() + '","all":"' + function(){try{return _$all[send_temp['phrases']['all'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$send[_$phrase] = send_temp; _$result = send_temp; + } + break; + case 70: + { + rval = vstack[ vstack.length - 1 ]; var send_tweet_temp = {}; send_tweet_temp['phrases'] = {};send_tweet_temp['phrases']['tweet'] = {};send_tweet_temp['phrases']['tweet'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; send_tweet_temp['phrase']=_$phrase; send_tweet_temp['semantic'] = '{"Send":{"recipient":"twitter"}}'; _$send_tweet[_$phrase] = send_tweet_temp; _$result = send_tweet_temp; + } + break; + case 71: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var send_tweet_temp = {}; send_tweet_temp['phrases'] = {};send_tweet_temp['phrases']['v_send_imp'] = {};send_tweet_temp['phrases']['v_send_imp'][0] = vstack[ vstack.length - 2 ]; send_tweet_temp['phrases']['tweet'] = {};send_tweet_temp['phrases']['tweet'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; send_tweet_temp['phrase']=_$phrase; send_tweet_temp['semantic'] = '{"Send":{"recipient":"twitter"}}'; _$send_tweet[_$phrase] = send_tweet_temp; _$result = send_tweet_temp; + } + break; + case 72: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var send_tweet_temp = {}; send_tweet_temp['phrases'] = {};send_tweet_temp['phrases']['v_send_imp'] = {};send_tweet_temp['phrases']['v_send_imp'][0] = vstack[ vstack.length - 3 ]; send_tweet_temp['phrases']['tweet'] = {};send_tweet_temp['phrases']['tweet'][0] = vstack[ vstack.length - 2 ]; send_tweet_temp['phrases']['preposition'] = {};send_tweet_temp['phrases']['preposition'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; send_tweet_temp['phrase']=_$phrase; send_tweet_temp['semantic'] = '{"Send":{"recipient":"twitter"}}'; _$send_tweet[_$phrase] = send_tweet_temp; _$result = send_tweet_temp; + } + break; + case 73: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var send_tweet_temp = {}; send_tweet_temp['phrases'] = {};send_tweet_temp['phrases']['tweet'] = {};send_tweet_temp['phrases']['tweet'][0] = vstack[ vstack.length - 2 ]; send_tweet_temp['phrases']['v_send_inf'] = {};send_tweet_temp['phrases']['v_send_inf'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; send_tweet_temp['phrase']=_$phrase; send_tweet_temp['semantic'] = '{"Send":{"recipient":"twitter"}}'; _$send_tweet[_$phrase] = send_tweet_temp; _$result = send_tweet_temp; + } + break; + case 74: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var send_tweet_temp = {}; send_tweet_temp['phrases'] = {};send_tweet_temp['phrases']['tweet'] = {};send_tweet_temp['phrases']['tweet'][0] = vstack[ vstack.length - 2 ]; send_tweet_temp['phrases']['v_send_fin'] = {};send_tweet_temp['phrases']['v_send_fin'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; send_tweet_temp['phrase']=_$phrase; send_tweet_temp['semantic'] = '{"Send":{"recipient":"twitter"}}'; _$send_tweet[_$phrase] = send_tweet_temp; _$result = send_tweet_temp; + } + break; + case 75: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var show_info_temp = {}; show_info_temp['phrases'] = {};show_info_temp['phrases']['v_show_imp'] = {};show_info_temp['phrases']['v_show_imp'][0] = vstack[ vstack.length - 2 ]; show_info_temp['phrases']['info'] = {};show_info_temp['phrases']['info'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; show_info_temp['phrase']=_$phrase; show_info_temp['semantic'] = '{"ShowInfo":{}}'; _$show_info[_$phrase] = show_info_temp; _$result = show_info_temp; + } + break; + case 76: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var show_info_temp = {}; show_info_temp['phrases'] = {};show_info_temp['phrases']['v_show_imp'] = {};show_info_temp['phrases']['v_show_imp'][0] = vstack[ vstack.length - 3 ]; show_info_temp['phrases']['info'] = {};show_info_temp['phrases']['info'][0] = vstack[ vstack.length - 2 ]; show_info_temp['phrases']['that'] = {};show_info_temp['phrases']['that'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; show_info_temp['phrase']=_$phrase; show_info_temp['semantic'] = '{"ShowInfo":{}}'; _$show_info[_$phrase] = show_info_temp; _$result = show_info_temp; + } + break; + case 77: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var show_info_temp = {}; show_info_temp['phrases'] = {};show_info_temp['phrases']['v_show_imp'] = {};show_info_temp['phrases']['v_show_imp'][0] = vstack[ vstack.length - 3 ]; show_info_temp['phrases']['info'] = {};show_info_temp['phrases']['info'][0] = vstack[ vstack.length - 2 ]; show_info_temp['phrases']['preposition'] = {};show_info_temp['phrases']['preposition'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; show_info_temp['phrase']=_$phrase; show_info_temp['semantic'] = '{"ShowInfo":{}}'; _$show_info[_$phrase] = show_info_temp; _$result = show_info_temp; + } + break; + case 78: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var show_info_temp = {}; show_info_temp['phrases'] = {};show_info_temp['phrases']['info'] = {};show_info_temp['phrases']['info'][0] = vstack[ vstack.length - 2 ]; show_info_temp['phrases']['v_show_inf'] = {};show_info_temp['phrases']['v_show_inf'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; show_info_temp['phrase']=_$phrase; show_info_temp['semantic'] = '{"ShowInfo":{}}'; _$show_info[_$phrase] = show_info_temp; _$result = show_info_temp; + } + break; + case 79: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var show_info_temp = {}; show_info_temp['phrases'] = {};show_info_temp['phrases']['more'] = {};show_info_temp['phrases']['more'][0] = vstack[ vstack.length - 2 ]; show_info_temp['phrases']['info'] = {};show_info_temp['phrases']['info'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; show_info_temp['phrase']=_$phrase; show_info_temp['semantic'] = '{"ShowInfo":{}}'; _$show_info[_$phrase] = show_info_temp; _$result = show_info_temp; + } + break; + case 80: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var show_info_temp = {}; show_info_temp['phrases'] = {};show_info_temp['phrases']['info'] = {};show_info_temp['phrases']['info'][0] = vstack[ vstack.length - 2 ]; show_info_temp['phrases']['that'] = {};show_info_temp['phrases']['that'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; show_info_temp['phrase']=_$phrase; show_info_temp['semantic'] = '{"ShowInfo":{}}'; _$show_info[_$phrase] = show_info_temp; _$result = show_info_temp; + } + break; + case 81: + { + rval = vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var show_pois_temp = {}; show_pois_temp['phrases'] = {};show_pois_temp['phrases']['v_show_imp'] = {};show_pois_temp['phrases']['v_show_imp'][0] = vstack[ vstack.length - 5 ]; show_pois_temp['phrases']['rest'] = {};show_pois_temp['phrases']['rest'][0] = vstack[ vstack.length - 4 ]; show_pois_temp['phrases']['poi_category'] = {};show_pois_temp['phrases']['poi_category'][0] = vstack[ vstack.length - 3 ]; show_pois_temp['phrases']['preposition'] = {};show_pois_temp['phrases']['preposition'][0] = vstack[ vstack.length - 2 ]; show_pois_temp['phrases']['location'] = {};show_pois_temp['phrases']['location'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; show_pois_temp['phrase']=_$phrase; show_pois_temp['semantic'] = '{"ShowPOIs":{"poicat":"' + function(){try{return _$poi_category[show_pois_temp['phrases']['poi_category'][0]];} catch(e){return 'undefined';}}() + '","genre":"' + function(){try{return _$music[show_pois_temp['phrases']['music'][0]];} catch(e){return 'undefined';}}() + '","location":"' + function(){try{return _$location[show_pois_temp['phrases']['location'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$show_pois[_$phrase] = show_pois_temp; _$result = show_pois_temp; + } + break; + case 82: + { + rval = vstack[ vstack.length - 6 ] + ' ' + vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var show_pois_temp = {}; show_pois_temp['phrases'] = {};show_pois_temp['phrases']['v_show_imp'] = {};show_pois_temp['phrases']['v_show_imp'][0] = vstack[ vstack.length - 6 ]; show_pois_temp['phrases']['rest'] = {};show_pois_temp['phrases']['rest'][0] = vstack[ vstack.length - 5 ]; show_pois_temp['phrases']['music'] = {};show_pois_temp['phrases']['music'][0] = vstack[ vstack.length - 4 ]; show_pois_temp['phrases']['poi_category'] = {};show_pois_temp['phrases']['poi_category'][0] = vstack[ vstack.length - 3 ]; show_pois_temp['phrases']['preposition'] = {};show_pois_temp['phrases']['preposition'][0] = vstack[ vstack.length - 2 ]; show_pois_temp['phrases']['location'] = {};show_pois_temp['phrases']['location'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; show_pois_temp['phrase']=_$phrase; show_pois_temp['semantic'] = '{"ShowPOIs":{"poicat":"' + function(){try{return _$poi_category[show_pois_temp['phrases']['poi_category'][0]];} catch(e){return 'undefined';}}() + '","genre":"' + function(){try{return _$music[show_pois_temp['phrases']['music'][0]];} catch(e){return 'undefined';}}() + '","location":"' + function(){try{return _$location[show_pois_temp['phrases']['location'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$show_pois[_$phrase] = show_pois_temp; _$result = show_pois_temp; + } + break; + case 83: + { + rval = vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var show_pois_temp = {}; show_pois_temp['phrases'] = {};show_pois_temp['phrases']['v_show_imp'] = {};show_pois_temp['phrases']['v_show_imp'][0] = vstack[ vstack.length - 4 ]; show_pois_temp['phrases']['rest'] = {};show_pois_temp['phrases']['rest'][0] = vstack[ vstack.length - 3 ]; show_pois_temp['phrases']['preposition'] = {};show_pois_temp['phrases']['preposition'][0] = vstack[ vstack.length - 2 ]; show_pois_temp['phrases']['location'] = {};show_pois_temp['phrases']['location'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; show_pois_temp['phrase']=_$phrase; show_pois_temp['semantic'] = '{"ShowPOIs":{"poicat":"' + function(){try{return _$poi_category[show_pois_temp['phrases']['poi_category'][0]];} catch(e){return 'undefined';}}() + '","genre":"' + function(){try{return _$music[show_pois_temp['phrases']['music'][0]];} catch(e){return 'undefined';}}() + '","location":"' + function(){try{return _$location[show_pois_temp['phrases']['location'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$show_pois[_$phrase] = show_pois_temp; _$result = show_pois_temp; + } + break; + case 84: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var just_show_appointments_temp = {}; just_show_appointments_temp['phrases'] = {};just_show_appointments_temp['phrases']['v_show_imp'] = {};just_show_appointments_temp['phrases']['v_show_imp'][0] = vstack[ vstack.length - 3 ]; just_show_appointments_temp['phrases']['pp_mine'] = {};just_show_appointments_temp['phrases']['pp_mine'][0] = vstack[ vstack.length - 2 ]; just_show_appointments_temp['phrases']['appointments'] = {};just_show_appointments_temp['phrases']['appointments'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; just_show_appointments_temp['phrase']=_$phrase; just_show_appointments_temp['semantic'] = '{"ShowAppointments":{}}'; _$just_show_appointments[_$phrase] = just_show_appointments_temp; _$result = just_show_appointments_temp; + } + break; + case 85: + { + rval = vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var show_appointments_from_temp = {}; show_appointments_from_temp['phrases'] = {};show_appointments_from_temp['phrases']['v_show_imp'] = {};show_appointments_from_temp['phrases']['v_show_imp'][0] = vstack[ vstack.length - 5 ]; show_appointments_from_temp['phrases']['pp_mine'] = {};show_appointments_from_temp['phrases']['pp_mine'][0] = vstack[ vstack.length - 4 ]; show_appointments_from_temp['phrases']['appointments'] = {};show_appointments_from_temp['phrases']['appointments'][0] = vstack[ vstack.length - 3 ]; show_appointments_from_temp['phrases']['preposition'] = {};show_appointments_from_temp['phrases']['preposition'][0] = vstack[ vstack.length - 2 ]; show_appointments_from_temp['phrases']['datetime'] = {};show_appointments_from_temp['phrases']['datetime'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; show_appointments_from_temp['phrase']=_$phrase; show_appointments_from_temp['semantic'] = '{"ShowAppointments":{"datetime":"' + function(){try{return _$datetime[show_appointments_from_temp['phrases']['datetime'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$show_appointments_from[_$phrase] = show_appointments_from_temp; _$result = show_appointments_from_temp; + } + break; + case 86: + { + rval = vstack[ vstack.length - 7 ] + ' ' + vstack[ vstack.length - 6 ] + ' ' + vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var show_appointments_from_to_temp = {}; show_appointments_from_to_temp['phrases'] = {};show_appointments_from_to_temp['phrases']['v_show_imp'] = {};show_appointments_from_to_temp['phrases']['v_show_imp'][0] = vstack[ vstack.length - 7 ]; show_appointments_from_to_temp['phrases']['pp_mine'] = {};show_appointments_from_to_temp['phrases']['pp_mine'][0] = vstack[ vstack.length - 6 ]; show_appointments_from_to_temp['phrases']['appointments'] = {};show_appointments_from_to_temp['phrases']['appointments'][0] = vstack[ vstack.length - 5 ]; show_appointments_from_to_temp['phrases']['preposition'] = {};show_appointments_from_to_temp['phrases']['preposition'][0] = vstack[ vstack.length - 4 ]; show_appointments_from_to_temp['phrases']['datetime'] = {};show_appointments_from_to_temp['phrases']['datetime'][0] = vstack[ vstack.length - 3 ]; show_appointments_from_to_temp['phrases']['pr_upto'] = {};show_appointments_from_to_temp['phrases']['pr_upto'][0] = vstack[ vstack.length - 2 ]; show_appointments_from_to_temp['phrases']['datetime'][1] = vstack[ vstack.length - 1 ]; var _$phrase = rval; show_appointments_from_to_temp['phrase']=_$phrase; show_appointments_from_to_temp['semantic'] = '{"ShowAppointments":{"prep1":"' + function(){try{return _$preposition[show_appointments_from_to_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","datetime":"' + function(){try{return _$datetime[show_appointments_from_to_temp['phrases']['datetime'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","datetime2":"' + function(){try{return _$datetime[show_appointments_from_to_temp['phrases']['datetime'][1]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$show_appointments_from_to[_$phrase] = show_appointments_from_to_temp; _$result = show_appointments_from_to_temp; + } + break; + case 87: + { + rval = vstack[ vstack.length - 8 ] + ' ' + vstack[ vstack.length - 7 ] + ' ' + vstack[ vstack.length - 6 ] + ' ' + vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var show_appointments_from_to_temp = {}; show_appointments_from_to_temp['phrases'] = {};show_appointments_from_to_temp['phrases']['v_show_imp'] = {};show_appointments_from_to_temp['phrases']['v_show_imp'][0] = vstack[ vstack.length - 8 ]; show_appointments_from_to_temp['phrases']['pp_mine'] = {};show_appointments_from_to_temp['phrases']['pp_mine'][0] = vstack[ vstack.length - 7 ]; show_appointments_from_to_temp['phrases']['appointments'] = {};show_appointments_from_to_temp['phrases']['appointments'][0] = vstack[ vstack.length - 6 ]; show_appointments_from_to_temp['phrases']['preposition'] = {};show_appointments_from_to_temp['phrases']['preposition'][0] = vstack[ vstack.length - 5 ]; show_appointments_from_to_temp['phrases']['datetime'] = {};show_appointments_from_to_temp['phrases']['datetime'][0] = vstack[ vstack.length - 4 ]; show_appointments_from_to_temp['phrases']['pr_upto'] = {};show_appointments_from_to_temp['phrases']['pr_upto'][0] = vstack[ vstack.length - 3 ]; show_appointments_from_to_temp['phrases']['preposition'][1] = vstack[ vstack.length - 2 ]; show_appointments_from_to_temp['phrases']['datetime'][1] = vstack[ vstack.length - 1 ]; var _$phrase = rval; show_appointments_from_to_temp['phrase']=_$phrase; show_appointments_from_to_temp['semantic'] = '{"ShowAppointments":{"prep1":"' + function(){try{return _$preposition[show_appointments_from_to_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","datetime":"' + function(){try{return _$datetime[show_appointments_from_to_temp['phrases']['datetime'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","datetime2":"' + function(){try{return _$datetime[show_appointments_from_to_temp['phrases']['datetime'][1]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$show_appointments_from_to[_$phrase] = show_appointments_from_to_temp; _$result = show_appointments_from_to_temp; + } + break; + case 88: + { + rval = vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var create_appointments_temp = {}; create_appointments_temp['phrases'] = {};create_appointments_temp['phrases']['create'] = {};create_appointments_temp['phrases']['create'][0] = vstack[ vstack.length - 4 ]; create_appointments_temp['phrases']['date'] = {};create_appointments_temp['phrases']['date'][0] = vstack[ vstack.length - 3 ]; create_appointments_temp['phrases']['undef_article'] = {};create_appointments_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 2 ]; create_appointments_temp['phrases']['appointment'] = {};create_appointments_temp['phrases']['appointment'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; create_appointments_temp['phrase']=_$phrase; create_appointments_temp['semantic'] = '{"CreateAppointment":{"prep1":"' + function(){try{return _$preposition[create_appointments_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[create_appointments_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","time":"' + function(){try{return _$time[create_appointments_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","timerange":"' + function(){try{return _$timerange[create_appointments_temp['phrases']['timerange'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","full_title":"' + function(){try{return _$full_title[create_appointments_temp['phrases']['full_title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$create_appointments[_$phrase] = create_appointments_temp; _$result = create_appointments_temp; + } + break; + case 89: + { + rval = vstack[ vstack.length - 6 ] + ' ' + vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var create_appointments_temp = {}; create_appointments_temp['phrases'] = {};create_appointments_temp['phrases']['create'] = {};create_appointments_temp['phrases']['create'][0] = vstack[ vstack.length - 6 ]; create_appointments_temp['phrases']['date'] = {};create_appointments_temp['phrases']['date'][0] = vstack[ vstack.length - 5 ]; create_appointments_temp['phrases']['undef_article'] = {};create_appointments_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 4 ]; create_appointments_temp['phrases']['appointment'] = {};create_appointments_temp['phrases']['appointment'][0] = vstack[ vstack.length - 3 ]; create_appointments_temp['phrases']['preposition'] = {};create_appointments_temp['phrases']['preposition'][0] = vstack[ vstack.length - 2 ]; create_appointments_temp['phrases']['time'] = {};create_appointments_temp['phrases']['time'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; create_appointments_temp['phrase']=_$phrase; create_appointments_temp['semantic'] = '{"CreateAppointment":{"prep1":"' + function(){try{return _$preposition[create_appointments_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[create_appointments_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","time":"' + function(){try{return _$time[create_appointments_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","timerange":"' + function(){try{return _$timerange[create_appointments_temp['phrases']['timerange'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","full_title":"' + function(){try{return _$full_title[create_appointments_temp['phrases']['full_title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$create_appointments[_$phrase] = create_appointments_temp; _$result = create_appointments_temp; + } + break; + case 90: + { + rval = vstack[ vstack.length - 6 ] + ' ' + vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var create_appointments_temp = {}; create_appointments_temp['phrases'] = {};create_appointments_temp['phrases']['create'] = {};create_appointments_temp['phrases']['create'][0] = vstack[ vstack.length - 6 ]; create_appointments_temp['phrases']['date'] = {};create_appointments_temp['phrases']['date'][0] = vstack[ vstack.length - 5 ]; create_appointments_temp['phrases']['undef_article'] = {};create_appointments_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 4 ]; create_appointments_temp['phrases']['appointment'] = {};create_appointments_temp['phrases']['appointment'][0] = vstack[ vstack.length - 3 ]; create_appointments_temp['phrases']['preposition'] = {};create_appointments_temp['phrases']['preposition'][0] = vstack[ vstack.length - 2 ]; create_appointments_temp['phrases']['timerange'] = {};create_appointments_temp['phrases']['timerange'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; create_appointments_temp['phrase']=_$phrase; create_appointments_temp['semantic'] = '{"CreateAppointment":{"prep1":"' + function(){try{return _$preposition[create_appointments_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[create_appointments_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","time":"' + function(){try{return _$time[create_appointments_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","timerange":"' + function(){try{return _$timerange[create_appointments_temp['phrases']['timerange'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","full_title":"' + function(){try{return _$full_title[create_appointments_temp['phrases']['full_title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$create_appointments[_$phrase] = create_appointments_temp; _$result = create_appointments_temp; + } + break; + case 91: + { + rval = vstack[ vstack.length - 6 ] + ' ' + vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var create_appointments_temp = {}; create_appointments_temp['phrases'] = {};create_appointments_temp['phrases']['create'] = {};create_appointments_temp['phrases']['create'][0] = vstack[ vstack.length - 6 ]; create_appointments_temp['phrases']['date'] = {};create_appointments_temp['phrases']['date'][0] = vstack[ vstack.length - 5 ]; create_appointments_temp['phrases']['preposition'] = {};create_appointments_temp['phrases']['preposition'][0] = vstack[ vstack.length - 4 ]; create_appointments_temp['phrases']['time'] = {};create_appointments_temp['phrases']['time'][0] = vstack[ vstack.length - 3 ]; create_appointments_temp['phrases']['undef_article'] = {};create_appointments_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 2 ]; create_appointments_temp['phrases']['appointment'] = {};create_appointments_temp['phrases']['appointment'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; create_appointments_temp['phrase']=_$phrase; create_appointments_temp['semantic'] = '{"CreateAppointment":{"prep1":"' + function(){try{return _$preposition[create_appointments_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[create_appointments_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","time":"' + function(){try{return _$time[create_appointments_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","timerange":"' + function(){try{return _$timerange[create_appointments_temp['phrases']['timerange'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","full_title":"' + function(){try{return _$full_title[create_appointments_temp['phrases']['full_title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$create_appointments[_$phrase] = create_appointments_temp; _$result = create_appointments_temp; + } + break; + case 92: + { + rval = vstack[ vstack.length - 6 ] + ' ' + vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var create_appointments_temp = {}; create_appointments_temp['phrases'] = {};create_appointments_temp['phrases']['create'] = {};create_appointments_temp['phrases']['create'][0] = vstack[ vstack.length - 6 ]; create_appointments_temp['phrases']['date'] = {};create_appointments_temp['phrases']['date'][0] = vstack[ vstack.length - 5 ]; create_appointments_temp['phrases']['preposition'] = {};create_appointments_temp['phrases']['preposition'][0] = vstack[ vstack.length - 4 ]; create_appointments_temp['phrases']['timerange'] = {};create_appointments_temp['phrases']['timerange'][0] = vstack[ vstack.length - 3 ]; create_appointments_temp['phrases']['undef_article'] = {};create_appointments_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 2 ]; create_appointments_temp['phrases']['appointment'] = {};create_appointments_temp['phrases']['appointment'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; create_appointments_temp['phrase']=_$phrase; create_appointments_temp['semantic'] = '{"CreateAppointment":{"prep1":"' + function(){try{return _$preposition[create_appointments_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[create_appointments_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","time":"' + function(){try{return _$time[create_appointments_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","timerange":"' + function(){try{return _$timerange[create_appointments_temp['phrases']['timerange'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","full_title":"' + function(){try{return _$full_title[create_appointments_temp['phrases']['full_title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$create_appointments[_$phrase] = create_appointments_temp; _$result = create_appointments_temp; + } + break; + case 93: + { + rval = vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var create_appointments_temp = {}; create_appointments_temp['phrases'] = {};create_appointments_temp['phrases']['create'] = {};create_appointments_temp['phrases']['create'][0] = vstack[ vstack.length - 5 ]; create_appointments_temp['phrases']['date'] = {};create_appointments_temp['phrases']['date'][0] = vstack[ vstack.length - 4 ]; create_appointments_temp['phrases']['undef_article'] = {};create_appointments_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 3 ]; create_appointments_temp['phrases']['appointment'] = {};create_appointments_temp['phrases']['appointment'][0] = vstack[ vstack.length - 2 ]; create_appointments_temp['phrases']['full_title'] = {};create_appointments_temp['phrases']['full_title'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; create_appointments_temp['phrase']=_$phrase; create_appointments_temp['semantic'] = '{"CreateAppointment":{"prep1":"' + function(){try{return _$preposition[create_appointments_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[create_appointments_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","time":"' + function(){try{return _$time[create_appointments_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","timerange":"' + function(){try{return _$timerange[create_appointments_temp['phrases']['timerange'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","full_title":"' + function(){try{return _$full_title[create_appointments_temp['phrases']['full_title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$create_appointments[_$phrase] = create_appointments_temp; _$result = create_appointments_temp; + } + break; + case 94: + { + rval = vstack[ vstack.length - 7 ] + ' ' + vstack[ vstack.length - 6 ] + ' ' + vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var create_appointments_temp = {}; create_appointments_temp['phrases'] = {};create_appointments_temp['phrases']['create'] = {};create_appointments_temp['phrases']['create'][0] = vstack[ vstack.length - 7 ]; create_appointments_temp['phrases']['date'] = {};create_appointments_temp['phrases']['date'][0] = vstack[ vstack.length - 6 ]; create_appointments_temp['phrases']['undef_article'] = {};create_appointments_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 5 ]; create_appointments_temp['phrases']['appointment'] = {};create_appointments_temp['phrases']['appointment'][0] = vstack[ vstack.length - 4 ]; create_appointments_temp['phrases']['preposition'] = {};create_appointments_temp['phrases']['preposition'][0] = vstack[ vstack.length - 3 ]; create_appointments_temp['phrases']['time'] = {};create_appointments_temp['phrases']['time'][0] = vstack[ vstack.length - 2 ]; create_appointments_temp['phrases']['full_title'] = {};create_appointments_temp['phrases']['full_title'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; create_appointments_temp['phrase']=_$phrase; create_appointments_temp['semantic'] = '{"CreateAppointment":{"prep1":"' + function(){try{return _$preposition[create_appointments_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[create_appointments_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","time":"' + function(){try{return _$time[create_appointments_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","timerange":"' + function(){try{return _$timerange[create_appointments_temp['phrases']['timerange'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","full_title":"' + function(){try{return _$full_title[create_appointments_temp['phrases']['full_title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$create_appointments[_$phrase] = create_appointments_temp; _$result = create_appointments_temp; + } + break; + case 95: + { + rval = vstack[ vstack.length - 7 ] + ' ' + vstack[ vstack.length - 6 ] + ' ' + vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var create_appointments_temp = {}; create_appointments_temp['phrases'] = {};create_appointments_temp['phrases']['create'] = {};create_appointments_temp['phrases']['create'][0] = vstack[ vstack.length - 7 ]; create_appointments_temp['phrases']['date'] = {};create_appointments_temp['phrases']['date'][0] = vstack[ vstack.length - 6 ]; create_appointments_temp['phrases']['undef_article'] = {};create_appointments_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 5 ]; create_appointments_temp['phrases']['appointment'] = {};create_appointments_temp['phrases']['appointment'][0] = vstack[ vstack.length - 4 ]; create_appointments_temp['phrases']['preposition'] = {};create_appointments_temp['phrases']['preposition'][0] = vstack[ vstack.length - 3 ]; create_appointments_temp['phrases']['timerange'] = {};create_appointments_temp['phrases']['timerange'][0] = vstack[ vstack.length - 2 ]; create_appointments_temp['phrases']['full_title'] = {};create_appointments_temp['phrases']['full_title'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; create_appointments_temp['phrase']=_$phrase; create_appointments_temp['semantic'] = '{"CreateAppointment":{"prep1":"' + function(){try{return _$preposition[create_appointments_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[create_appointments_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","time":"' + function(){try{return _$time[create_appointments_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","timerange":"' + function(){try{return _$timerange[create_appointments_temp['phrases']['timerange'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","full_title":"' + function(){try{return _$full_title[create_appointments_temp['phrases']['full_title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$create_appointments[_$phrase] = create_appointments_temp; _$result = create_appointments_temp; + } + break; + case 96: + { + rval = vstack[ vstack.length - 7 ] + ' ' + vstack[ vstack.length - 6 ] + ' ' + vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var create_appointments_temp = {}; create_appointments_temp['phrases'] = {};create_appointments_temp['phrases']['create'] = {};create_appointments_temp['phrases']['create'][0] = vstack[ vstack.length - 7 ]; create_appointments_temp['phrases']['date'] = {};create_appointments_temp['phrases']['date'][0] = vstack[ vstack.length - 6 ]; create_appointments_temp['phrases']['preposition'] = {};create_appointments_temp['phrases']['preposition'][0] = vstack[ vstack.length - 5 ]; create_appointments_temp['phrases']['time'] = {};create_appointments_temp['phrases']['time'][0] = vstack[ vstack.length - 4 ]; create_appointments_temp['phrases']['undef_article'] = {};create_appointments_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 3 ]; create_appointments_temp['phrases']['appointment'] = {};create_appointments_temp['phrases']['appointment'][0] = vstack[ vstack.length - 2 ]; create_appointments_temp['phrases']['full_title'] = {};create_appointments_temp['phrases']['full_title'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; create_appointments_temp['phrase']=_$phrase; create_appointments_temp['semantic'] = '{"CreateAppointment":{"prep1":"' + function(){try{return _$preposition[create_appointments_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[create_appointments_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","time":"' + function(){try{return _$time[create_appointments_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","timerange":"' + function(){try{return _$timerange[create_appointments_temp['phrases']['timerange'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","full_title":"' + function(){try{return _$full_title[create_appointments_temp['phrases']['full_title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$create_appointments[_$phrase] = create_appointments_temp; _$result = create_appointments_temp; + } + break; + case 97: + { + rval = vstack[ vstack.length - 7 ] + ' ' + vstack[ vstack.length - 6 ] + ' ' + vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var create_appointments_temp = {}; create_appointments_temp['phrases'] = {};create_appointments_temp['phrases']['create'] = {};create_appointments_temp['phrases']['create'][0] = vstack[ vstack.length - 7 ]; create_appointments_temp['phrases']['date'] = {};create_appointments_temp['phrases']['date'][0] = vstack[ vstack.length - 6 ]; create_appointments_temp['phrases']['preposition'] = {};create_appointments_temp['phrases']['preposition'][0] = vstack[ vstack.length - 5 ]; create_appointments_temp['phrases']['timerange'] = {};create_appointments_temp['phrases']['timerange'][0] = vstack[ vstack.length - 4 ]; create_appointments_temp['phrases']['undef_article'] = {};create_appointments_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 3 ]; create_appointments_temp['phrases']['appointment'] = {};create_appointments_temp['phrases']['appointment'][0] = vstack[ vstack.length - 2 ]; create_appointments_temp['phrases']['full_title'] = {};create_appointments_temp['phrases']['full_title'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; create_appointments_temp['phrase']=_$phrase; create_appointments_temp['semantic'] = '{"CreateAppointment":{"prep1":"' + function(){try{return _$preposition[create_appointments_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[create_appointments_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","time":"' + function(){try{return _$time[create_appointments_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","timerange":"' + function(){try{return _$timerange[create_appointments_temp['phrases']['timerange'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","full_title":"' + function(){try{return _$full_title[create_appointments_temp['phrases']['full_title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$create_appointments[_$phrase] = create_appointments_temp; _$result = create_appointments_temp; + } + break; + case 98: + { + rval = vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var create_appointments_temp = {}; create_appointments_temp['phrases'] = {};create_appointments_temp['phrases']['create'] = {};create_appointments_temp['phrases']['create'][0] = vstack[ vstack.length - 5 ]; create_appointments_temp['phrases']['undef_article'] = {};create_appointments_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 4 ]; create_appointments_temp['phrases']['appointment'] = {};create_appointments_temp['phrases']['appointment'][0] = vstack[ vstack.length - 3 ]; create_appointments_temp['phrases']['preposition'] = {};create_appointments_temp['phrases']['preposition'][0] = vstack[ vstack.length - 2 ]; create_appointments_temp['phrases']['date'] = {};create_appointments_temp['phrases']['date'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; create_appointments_temp['phrase']=_$phrase; create_appointments_temp['semantic'] = '{"CreateAppointment":{"prep1":"' + function(){try{return _$preposition[create_appointments_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[create_appointments_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","time":"' + function(){try{return _$time[create_appointments_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","timerange":"' + function(){try{return _$timerange[create_appointments_temp['phrases']['timerange'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","full_title":"' + function(){try{return _$full_title[create_appointments_temp['phrases']['full_title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$create_appointments[_$phrase] = create_appointments_temp; _$result = create_appointments_temp; + } + break; + case 99: + { + rval = vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var create_appointments_temp = {}; create_appointments_temp['phrases'] = {};create_appointments_temp['phrases']['create'] = {};create_appointments_temp['phrases']['create'][0] = vstack[ vstack.length - 5 ]; create_appointments_temp['phrases']['undef_article'] = {};create_appointments_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 4 ]; create_appointments_temp['phrases']['appointment'] = {};create_appointments_temp['phrases']['appointment'][0] = vstack[ vstack.length - 3 ]; create_appointments_temp['phrases']['preposition'] = {};create_appointments_temp['phrases']['preposition'][0] = vstack[ vstack.length - 2 ]; create_appointments_temp['phrases']['time'] = {};create_appointments_temp['phrases']['time'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; create_appointments_temp['phrase']=_$phrase; create_appointments_temp['semantic'] = '{"CreateAppointment":{"prep1":"' + function(){try{return _$preposition[create_appointments_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[create_appointments_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","time":"' + function(){try{return _$time[create_appointments_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","timerange":"' + function(){try{return _$timerange[create_appointments_temp['phrases']['timerange'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","full_title":"' + function(){try{return _$full_title[create_appointments_temp['phrases']['full_title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$create_appointments[_$phrase] = create_appointments_temp; _$result = create_appointments_temp; + } + break; + case 100: + { + rval = vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var create_appointments_temp = {}; create_appointments_temp['phrases'] = {};create_appointments_temp['phrases']['create'] = {};create_appointments_temp['phrases']['create'][0] = vstack[ vstack.length - 5 ]; create_appointments_temp['phrases']['undef_article'] = {};create_appointments_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 4 ]; create_appointments_temp['phrases']['appointment'] = {};create_appointments_temp['phrases']['appointment'][0] = vstack[ vstack.length - 3 ]; create_appointments_temp['phrases']['preposition'] = {};create_appointments_temp['phrases']['preposition'][0] = vstack[ vstack.length - 2 ]; create_appointments_temp['phrases']['timerange'] = {};create_appointments_temp['phrases']['timerange'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; create_appointments_temp['phrase']=_$phrase; create_appointments_temp['semantic'] = '{"CreateAppointment":{"prep1":"' + function(){try{return _$preposition[create_appointments_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[create_appointments_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","time":"' + function(){try{return _$time[create_appointments_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","timerange":"' + function(){try{return _$timerange[create_appointments_temp['phrases']['timerange'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","full_title":"' + function(){try{return _$full_title[create_appointments_temp['phrases']['full_title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$create_appointments[_$phrase] = create_appointments_temp; _$result = create_appointments_temp; + } + break; + case 101: + { + rval = vstack[ vstack.length - 7 ] + ' ' + vstack[ vstack.length - 6 ] + ' ' + vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var create_appointments_temp = {}; create_appointments_temp['phrases'] = {};create_appointments_temp['phrases']['create'] = {};create_appointments_temp['phrases']['create'][0] = vstack[ vstack.length - 7 ]; create_appointments_temp['phrases']['undef_article'] = {};create_appointments_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 6 ]; create_appointments_temp['phrases']['appointment'] = {};create_appointments_temp['phrases']['appointment'][0] = vstack[ vstack.length - 5 ]; create_appointments_temp['phrases']['preposition'] = {};create_appointments_temp['phrases']['preposition'][0] = vstack[ vstack.length - 4 ]; create_appointments_temp['phrases']['date'] = {};create_appointments_temp['phrases']['date'][0] = vstack[ vstack.length - 3 ]; create_appointments_temp['phrases']['preposition'][1] = vstack[ vstack.length - 2 ]; create_appointments_temp['phrases']['timerange'] = {};create_appointments_temp['phrases']['timerange'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; create_appointments_temp['phrase']=_$phrase; create_appointments_temp['semantic'] = '{"CreateAppointment":{"prep1":"' + function(){try{return _$preposition[create_appointments_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[create_appointments_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","time":"' + function(){try{return _$time[create_appointments_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","timerange":"' + function(){try{return _$timerange[create_appointments_temp['phrases']['timerange'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","full_title":"' + function(){try{return _$full_title[create_appointments_temp['phrases']['full_title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$create_appointments[_$phrase] = create_appointments_temp; _$result = create_appointments_temp; + } + break; + case 102: + { + rval = vstack[ vstack.length - 7 ] + ' ' + vstack[ vstack.length - 6 ] + ' ' + vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var create_appointments_temp = {}; create_appointments_temp['phrases'] = {};create_appointments_temp['phrases']['create'] = {};create_appointments_temp['phrases']['create'][0] = vstack[ vstack.length - 7 ]; create_appointments_temp['phrases']['undef_article'] = {};create_appointments_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 6 ]; create_appointments_temp['phrases']['appointment'] = {};create_appointments_temp['phrases']['appointment'][0] = vstack[ vstack.length - 5 ]; create_appointments_temp['phrases']['preposition'] = {};create_appointments_temp['phrases']['preposition'][0] = vstack[ vstack.length - 4 ]; create_appointments_temp['phrases']['date'] = {};create_appointments_temp['phrases']['date'][0] = vstack[ vstack.length - 3 ]; create_appointments_temp['phrases']['preposition'][1] = vstack[ vstack.length - 2 ]; create_appointments_temp['phrases']['time'] = {};create_appointments_temp['phrases']['time'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; create_appointments_temp['phrase']=_$phrase; create_appointments_temp['semantic'] = '{"CreateAppointment":{"prep1":"' + function(){try{return _$preposition[create_appointments_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[create_appointments_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","time":"' + function(){try{return _$time[create_appointments_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","timerange":"' + function(){try{return _$timerange[create_appointments_temp['phrases']['timerange'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","full_title":"' + function(){try{return _$full_title[create_appointments_temp['phrases']['full_title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$create_appointments[_$phrase] = create_appointments_temp; _$result = create_appointments_temp; + } + break; + case 103: + { + rval = vstack[ vstack.length - 8 ] + ' ' + vstack[ vstack.length - 7 ] + ' ' + vstack[ vstack.length - 6 ] + ' ' + vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var create_appointments_temp = {}; create_appointments_temp['phrases'] = {};create_appointments_temp['phrases']['create'] = {};create_appointments_temp['phrases']['create'][0] = vstack[ vstack.length - 8 ]; create_appointments_temp['phrases']['undef_article'] = {};create_appointments_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 7 ]; create_appointments_temp['phrases']['appointment'] = {};create_appointments_temp['phrases']['appointment'][0] = vstack[ vstack.length - 6 ]; create_appointments_temp['phrases']['rest'] = {};create_appointments_temp['phrases']['rest'][0] = vstack[ vstack.length - 5 ]; create_appointments_temp['phrases']['preposition'] = {};create_appointments_temp['phrases']['preposition'][0] = vstack[ vstack.length - 4 ]; create_appointments_temp['phrases']['date'] = {};create_appointments_temp['phrases']['date'][0] = vstack[ vstack.length - 3 ]; create_appointments_temp['phrases']['preposition'][1] = vstack[ vstack.length - 2 ]; create_appointments_temp['phrases']['timerange'] = {};create_appointments_temp['phrases']['timerange'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; create_appointments_temp['phrase']=_$phrase; create_appointments_temp['semantic'] = '{"CreateAppointment":{"prep1":"' + function(){try{return _$preposition[create_appointments_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[create_appointments_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","time":"' + function(){try{return _$time[create_appointments_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","timerange":"' + function(){try{return _$timerange[create_appointments_temp['phrases']['timerange'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","full_title":"' + function(){try{return _$full_title[create_appointments_temp['phrases']['full_title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$create_appointments[_$phrase] = create_appointments_temp; _$result = create_appointments_temp; + } + break; + case 104: + { + rval = vstack[ vstack.length - 8 ] + ' ' + vstack[ vstack.length - 7 ] + ' ' + vstack[ vstack.length - 6 ] + ' ' + vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var create_appointments_temp = {}; create_appointments_temp['phrases'] = {};create_appointments_temp['phrases']['create'] = {};create_appointments_temp['phrases']['create'][0] = vstack[ vstack.length - 8 ]; create_appointments_temp['phrases']['undef_article'] = {};create_appointments_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 7 ]; create_appointments_temp['phrases']['appointment'] = {};create_appointments_temp['phrases']['appointment'][0] = vstack[ vstack.length - 6 ]; create_appointments_temp['phrases']['rest'] = {};create_appointments_temp['phrases']['rest'][0] = vstack[ vstack.length - 5 ]; create_appointments_temp['phrases']['preposition'] = {};create_appointments_temp['phrases']['preposition'][0] = vstack[ vstack.length - 4 ]; create_appointments_temp['phrases']['date'] = {};create_appointments_temp['phrases']['date'][0] = vstack[ vstack.length - 3 ]; create_appointments_temp['phrases']['preposition'][1] = vstack[ vstack.length - 2 ]; create_appointments_temp['phrases']['time'] = {};create_appointments_temp['phrases']['time'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; create_appointments_temp['phrase']=_$phrase; create_appointments_temp['semantic'] = '{"CreateAppointment":{"prep1":"' + function(){try{return _$preposition[create_appointments_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[create_appointments_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","time":"' + function(){try{return _$time[create_appointments_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","timerange":"' + function(){try{return _$timerange[create_appointments_temp['phrases']['timerange'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","full_title":"' + function(){try{return _$full_title[create_appointments_temp['phrases']['full_title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$create_appointments[_$phrase] = create_appointments_temp; _$result = create_appointments_temp; + } + break; + case 105: + { + rval = vstack[ vstack.length - 6 ] + ' ' + vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var create_appointments_temp = {}; create_appointments_temp['phrases'] = {};create_appointments_temp['phrases']['create'] = {};create_appointments_temp['phrases']['create'][0] = vstack[ vstack.length - 6 ]; create_appointments_temp['phrases']['undef_article'] = {};create_appointments_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 5 ]; create_appointments_temp['phrases']['appointment'] = {};create_appointments_temp['phrases']['appointment'][0] = vstack[ vstack.length - 4 ]; create_appointments_temp['phrases']['preposition'] = {};create_appointments_temp['phrases']['preposition'][0] = vstack[ vstack.length - 3 ]; create_appointments_temp['phrases']['date'] = {};create_appointments_temp['phrases']['date'][0] = vstack[ vstack.length - 2 ]; create_appointments_temp['phrases']['full_title'] = {};create_appointments_temp['phrases']['full_title'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; create_appointments_temp['phrase']=_$phrase; create_appointments_temp['semantic'] = '{"CreateAppointment":{"prep1":"' + function(){try{return _$preposition[create_appointments_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[create_appointments_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","time":"' + function(){try{return _$time[create_appointments_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","timerange":"' + function(){try{return _$timerange[create_appointments_temp['phrases']['timerange'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","full_title":"' + function(){try{return _$full_title[create_appointments_temp['phrases']['full_title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$create_appointments[_$phrase] = create_appointments_temp; _$result = create_appointments_temp; + } + break; + case 106: + { + rval = vstack[ vstack.length - 6 ] + ' ' + vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var create_appointments_temp = {}; create_appointments_temp['phrases'] = {};create_appointments_temp['phrases']['create'] = {};create_appointments_temp['phrases']['create'][0] = vstack[ vstack.length - 6 ]; create_appointments_temp['phrases']['undef_article'] = {};create_appointments_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 5 ]; create_appointments_temp['phrases']['appointment'] = {};create_appointments_temp['phrases']['appointment'][0] = vstack[ vstack.length - 4 ]; create_appointments_temp['phrases']['preposition'] = {};create_appointments_temp['phrases']['preposition'][0] = vstack[ vstack.length - 3 ]; create_appointments_temp['phrases']['time'] = {};create_appointments_temp['phrases']['time'][0] = vstack[ vstack.length - 2 ]; create_appointments_temp['phrases']['full_title'] = {};create_appointments_temp['phrases']['full_title'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; create_appointments_temp['phrase']=_$phrase; create_appointments_temp['semantic'] = '{"CreateAppointment":{"prep1":"' + function(){try{return _$preposition[create_appointments_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[create_appointments_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","time":"' + function(){try{return _$time[create_appointments_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","timerange":"' + function(){try{return _$timerange[create_appointments_temp['phrases']['timerange'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","full_title":"' + function(){try{return _$full_title[create_appointments_temp['phrases']['full_title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$create_appointments[_$phrase] = create_appointments_temp; _$result = create_appointments_temp; + } + break; + case 107: + { + rval = vstack[ vstack.length - 6 ] + ' ' + vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var create_appointments_temp = {}; create_appointments_temp['phrases'] = {};create_appointments_temp['phrases']['create'] = {};create_appointments_temp['phrases']['create'][0] = vstack[ vstack.length - 6 ]; create_appointments_temp['phrases']['undef_article'] = {};create_appointments_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 5 ]; create_appointments_temp['phrases']['appointment'] = {};create_appointments_temp['phrases']['appointment'][0] = vstack[ vstack.length - 4 ]; create_appointments_temp['phrases']['preposition'] = {};create_appointments_temp['phrases']['preposition'][0] = vstack[ vstack.length - 3 ]; create_appointments_temp['phrases']['timerange'] = {};create_appointments_temp['phrases']['timerange'][0] = vstack[ vstack.length - 2 ]; create_appointments_temp['phrases']['full_title'] = {};create_appointments_temp['phrases']['full_title'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; create_appointments_temp['phrase']=_$phrase; create_appointments_temp['semantic'] = '{"CreateAppointment":{"prep1":"' + function(){try{return _$preposition[create_appointments_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[create_appointments_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","time":"' + function(){try{return _$time[create_appointments_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","timerange":"' + function(){try{return _$timerange[create_appointments_temp['phrases']['timerange'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","full_title":"' + function(){try{return _$full_title[create_appointments_temp['phrases']['full_title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$create_appointments[_$phrase] = create_appointments_temp; _$result = create_appointments_temp; + } + break; + case 108: + { + rval = vstack[ vstack.length - 8 ] + ' ' + vstack[ vstack.length - 7 ] + ' ' + vstack[ vstack.length - 6 ] + ' ' + vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var create_appointments_temp = {}; create_appointments_temp['phrases'] = {};create_appointments_temp['phrases']['create'] = {};create_appointments_temp['phrases']['create'][0] = vstack[ vstack.length - 8 ]; create_appointments_temp['phrases']['undef_article'] = {};create_appointments_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 7 ]; create_appointments_temp['phrases']['appointment'] = {};create_appointments_temp['phrases']['appointment'][0] = vstack[ vstack.length - 6 ]; create_appointments_temp['phrases']['preposition'] = {};create_appointments_temp['phrases']['preposition'][0] = vstack[ vstack.length - 5 ]; create_appointments_temp['phrases']['date'] = {};create_appointments_temp['phrases']['date'][0] = vstack[ vstack.length - 4 ]; create_appointments_temp['phrases']['preposition'][1] = vstack[ vstack.length - 3 ]; create_appointments_temp['phrases']['timerange'] = {};create_appointments_temp['phrases']['timerange'][0] = vstack[ vstack.length - 2 ]; create_appointments_temp['phrases']['full_title'] = {};create_appointments_temp['phrases']['full_title'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; create_appointments_temp['phrase']=_$phrase; create_appointments_temp['semantic'] = '{"CreateAppointment":{"prep1":"' + function(){try{return _$preposition[create_appointments_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[create_appointments_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","time":"' + function(){try{return _$time[create_appointments_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","timerange":"' + function(){try{return _$timerange[create_appointments_temp['phrases']['timerange'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","full_title":"' + function(){try{return _$full_title[create_appointments_temp['phrases']['full_title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$create_appointments[_$phrase] = create_appointments_temp; _$result = create_appointments_temp; + } + break; + case 109: + { + rval = vstack[ vstack.length - 8 ] + ' ' + vstack[ vstack.length - 7 ] + ' ' + vstack[ vstack.length - 6 ] + ' ' + vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var create_appointments_temp = {}; create_appointments_temp['phrases'] = {};create_appointments_temp['phrases']['create'] = {};create_appointments_temp['phrases']['create'][0] = vstack[ vstack.length - 8 ]; create_appointments_temp['phrases']['undef_article'] = {};create_appointments_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 7 ]; create_appointments_temp['phrases']['appointment'] = {};create_appointments_temp['phrases']['appointment'][0] = vstack[ vstack.length - 6 ]; create_appointments_temp['phrases']['preposition'] = {};create_appointments_temp['phrases']['preposition'][0] = vstack[ vstack.length - 5 ]; create_appointments_temp['phrases']['date'] = {};create_appointments_temp['phrases']['date'][0] = vstack[ vstack.length - 4 ]; create_appointments_temp['phrases']['preposition'][1] = vstack[ vstack.length - 3 ]; create_appointments_temp['phrases']['time'] = {};create_appointments_temp['phrases']['time'][0] = vstack[ vstack.length - 2 ]; create_appointments_temp['phrases']['full_title'] = {};create_appointments_temp['phrases']['full_title'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; create_appointments_temp['phrase']=_$phrase; create_appointments_temp['semantic'] = '{"CreateAppointment":{"prep1":"' + function(){try{return _$preposition[create_appointments_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[create_appointments_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","time":"' + function(){try{return _$time[create_appointments_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","timerange":"' + function(){try{return _$timerange[create_appointments_temp['phrases']['timerange'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","full_title":"' + function(){try{return _$full_title[create_appointments_temp['phrases']['full_title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$create_appointments[_$phrase] = create_appointments_temp; _$result = create_appointments_temp; + } + break; + case 110: + { + rval = vstack[ vstack.length - 9 ] + ' ' + vstack[ vstack.length - 8 ] + ' ' + vstack[ vstack.length - 7 ] + ' ' + vstack[ vstack.length - 6 ] + ' ' + vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var create_appointments_temp = {}; create_appointments_temp['phrases'] = {};create_appointments_temp['phrases']['create'] = {};create_appointments_temp['phrases']['create'][0] = vstack[ vstack.length - 9 ]; create_appointments_temp['phrases']['undef_article'] = {};create_appointments_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 8 ]; create_appointments_temp['phrases']['appointment'] = {};create_appointments_temp['phrases']['appointment'][0] = vstack[ vstack.length - 7 ]; create_appointments_temp['phrases']['rest'] = {};create_appointments_temp['phrases']['rest'][0] = vstack[ vstack.length - 6 ]; create_appointments_temp['phrases']['preposition'] = {};create_appointments_temp['phrases']['preposition'][0] = vstack[ vstack.length - 5 ]; create_appointments_temp['phrases']['date'] = {};create_appointments_temp['phrases']['date'][0] = vstack[ vstack.length - 4 ]; create_appointments_temp['phrases']['preposition'][1] = vstack[ vstack.length - 3 ]; create_appointments_temp['phrases']['timerange'] = {};create_appointments_temp['phrases']['timerange'][0] = vstack[ vstack.length - 2 ]; create_appointments_temp['phrases']['full_title'] = {};create_appointments_temp['phrases']['full_title'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; create_appointments_temp['phrase']=_$phrase; create_appointments_temp['semantic'] = '{"CreateAppointment":{"prep1":"' + function(){try{return _$preposition[create_appointments_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[create_appointments_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","time":"' + function(){try{return _$time[create_appointments_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","timerange":"' + function(){try{return _$timerange[create_appointments_temp['phrases']['timerange'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","full_title":"' + function(){try{return _$full_title[create_appointments_temp['phrases']['full_title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$create_appointments[_$phrase] = create_appointments_temp; _$result = create_appointments_temp; + } + break; + case 111: + { + rval = vstack[ vstack.length - 9 ] + ' ' + vstack[ vstack.length - 8 ] + ' ' + vstack[ vstack.length - 7 ] + ' ' + vstack[ vstack.length - 6 ] + ' ' + vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var create_appointments_temp = {}; create_appointments_temp['phrases'] = {};create_appointments_temp['phrases']['create'] = {};create_appointments_temp['phrases']['create'][0] = vstack[ vstack.length - 9 ]; create_appointments_temp['phrases']['undef_article'] = {};create_appointments_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 8 ]; create_appointments_temp['phrases']['appointment'] = {};create_appointments_temp['phrases']['appointment'][0] = vstack[ vstack.length - 7 ]; create_appointments_temp['phrases']['rest'] = {};create_appointments_temp['phrases']['rest'][0] = vstack[ vstack.length - 6 ]; create_appointments_temp['phrases']['preposition'] = {};create_appointments_temp['phrases']['preposition'][0] = vstack[ vstack.length - 5 ]; create_appointments_temp['phrases']['date'] = {};create_appointments_temp['phrases']['date'][0] = vstack[ vstack.length - 4 ]; create_appointments_temp['phrases']['preposition'][1] = vstack[ vstack.length - 3 ]; create_appointments_temp['phrases']['time'] = {};create_appointments_temp['phrases']['time'][0] = vstack[ vstack.length - 2 ]; create_appointments_temp['phrases']['full_title'] = {};create_appointments_temp['phrases']['full_title'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; create_appointments_temp['phrase']=_$phrase; create_appointments_temp['semantic'] = '{"CreateAppointment":{"prep1":"' + function(){try{return _$preposition[create_appointments_temp['phrases']['preposition'][0]];} catch(e){return 'undefined';}}() + '","date":"' + function(){try{return _$date[create_appointments_temp['phrases']['date'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","time":"' + function(){try{return _$time[create_appointments_temp['phrases']['time'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","timerange":"' + function(){try{return _$timerange[create_appointments_temp['phrases']['timerange'][0]]['semantic'];} catch(e){return 'undefined';}}() + '","full_title":"' + function(){try{return _$full_title[create_appointments_temp['phrases']['full_title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$create_appointments[_$phrase] = create_appointments_temp; _$result = create_appointments_temp; + } + break; + case 112: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var find_person_temp = {}; find_person_temp['phrases'] = {};find_person_temp['phrases']['v_find_imp'] = {};find_person_temp['phrases']['v_find_imp'][0] = vstack[ vstack.length - 3 ]; find_person_temp['phrases']['pp_mine'] = {};find_person_temp['phrases']['pp_mine'][0] = vstack[ vstack.length - 2 ]; find_person_temp['phrases']['person'] = {};find_person_temp['phrases']['person'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; find_person_temp['phrase']=_$phrase; find_person_temp['semantic'] = '{"FindPerson":{"person":"' + function(){try{return _$person[find_person_temp['phrases']['person'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$find_person[_$phrase] = find_person_temp; _$result = find_person_temp; + } + break; + case 113: + { + rval = vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var record_memo_temp = {}; record_memo_temp['phrases'] = {};record_memo_temp['phrases']['v_record_imp'] = {};record_memo_temp['phrases']['v_record_imp'][0] = vstack[ vstack.length - 4 ]; record_memo_temp['phrases']['undef_article'] = {};record_memo_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 3 ]; record_memo_temp['phrases']['voicetag'] = {};record_memo_temp['phrases']['voicetag'][0] = vstack[ vstack.length - 2 ]; record_memo_temp['phrases']['preposition'] = {};record_memo_temp['phrases']['preposition'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; record_memo_temp['phrase']=_$phrase; record_memo_temp['semantic'] = '{"RecordMemo":{}}'; _$record_memo[_$phrase] = record_memo_temp; _$result = record_memo_temp; + } + break; + case 114: + { + rval = vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var record_memo_temp = {}; record_memo_temp['phrases'] = {};record_memo_temp['phrases']['v_record_imp'] = {};record_memo_temp['phrases']['v_record_imp'][0] = vstack[ vstack.length - 5 ]; record_memo_temp['phrases']['pp_mine'] = {};record_memo_temp['phrases']['pp_mine'][0] = vstack[ vstack.length - 4 ]; record_memo_temp['phrases']['undef_article'] = {};record_memo_temp['phrases']['undef_article'][0] = vstack[ vstack.length - 3 ]; record_memo_temp['phrases']['voicetag'] = {};record_memo_temp['phrases']['voicetag'][0] = vstack[ vstack.length - 2 ]; record_memo_temp['phrases']['preposition'] = {};record_memo_temp['phrases']['preposition'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; record_memo_temp['phrase']=_$phrase; record_memo_temp['semantic'] = '{"RecordMemo":{}}'; _$record_memo[_$phrase] = record_memo_temp; _$result = record_memo_temp; + } + break; + case 115: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var find_music_temp = {}; find_music_temp['phrases'] = {};find_music_temp['phrases']['where'] = {};find_music_temp['phrases']['where'][0] = vstack[ vstack.length - 3 ]; find_music_temp['phrases']['v_play_fin'] = {};find_music_temp['phrases']['v_play_fin'][0] = vstack[ vstack.length - 2 ]; find_music_temp['phrases']['music'] = {};find_music_temp['phrases']['music'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; find_music_temp['phrase']=_$phrase; find_music_temp['semantic'] = '{"ShowPOIs":{"poicat":"' + function(){try{return _$poi_category[find_music_temp['phrases']['poi_category'][0]];} catch(e){return 'undefined';}}() + '","genre":"' + function(){try{return _$music[find_music_temp['phrases']['music'][0]];} catch(e){return 'undefined';}}() + '","genre2":"' + function(){try{return _$music[find_music_temp['phrases']['music'][1]];} catch(e){return 'undefined';}}() + '","location":"' + function(){try{return _$location[find_music_temp['phrases']['location'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$find_music[_$phrase] = find_music_temp; _$result = find_music_temp; + } + break; + case 116: + { + rval = vstack[ vstack.length - 7 ] + ' ' + vstack[ vstack.length - 6 ] + ' ' + vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var find_music_temp = {}; find_music_temp['phrases'] = {};find_music_temp['phrases']['what'] = {};find_music_temp['phrases']['what'][0] = vstack[ vstack.length - 7 ]; find_music_temp['phrases']['v_play_fin'] = {};find_music_temp['phrases']['v_play_fin'][0] = vstack[ vstack.length - 6 ]; find_music_temp['phrases']['preposition'] = {};find_music_temp['phrases']['preposition'][0] = vstack[ vstack.length - 5 ]; find_music_temp['phrases']['music'] = {};find_music_temp['phrases']['music'][0] = vstack[ vstack.length - 4 ]; find_music_temp['phrases']['and'] = {};find_music_temp['phrases']['and'][0] = vstack[ vstack.length - 3 ]; find_music_temp['phrases']['music'][1] = vstack[ vstack.length - 2 ]; find_music_temp['phrases']['poi_category'] = {};find_music_temp['phrases']['poi_category'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; find_music_temp['phrase']=_$phrase; find_music_temp['semantic'] = '{"ShowPOIs":{"poicat":"' + function(){try{return _$poi_category[find_music_temp['phrases']['poi_category'][0]];} catch(e){return 'undefined';}}() + '","genre":"' + function(){try{return _$music[find_music_temp['phrases']['music'][0]];} catch(e){return 'undefined';}}() + '","genre2":"' + function(){try{return _$music[find_music_temp['phrases']['music'][1]];} catch(e){return 'undefined';}}() + '","location":"' + function(){try{return _$location[find_music_temp['phrases']['location'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$find_music[_$phrase] = find_music_temp; _$result = find_music_temp; + } + break; + case 117: + { + rval = vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var find_music_temp = {}; find_music_temp['phrases'] = {};find_music_temp['phrases']['v_find_imp'] = {};find_music_temp['phrases']['v_find_imp'][0] = vstack[ vstack.length - 4 ]; find_music_temp['phrases']['music'] = {};find_music_temp['phrases']['music'][0] = vstack[ vstack.length - 3 ]; find_music_temp['phrases']['preposition'] = {};find_music_temp['phrases']['preposition'][0] = vstack[ vstack.length - 2 ]; find_music_temp['phrases']['near_to_me'] = {};find_music_temp['phrases']['near_to_me'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; find_music_temp['phrase']=_$phrase; find_music_temp['semantic'] = '{"ShowPOIs":{"poicat":"' + function(){try{return _$poi_category[find_music_temp['phrases']['poi_category'][0]];} catch(e){return 'undefined';}}() + '","genre":"' + function(){try{return _$music[find_music_temp['phrases']['music'][0]];} catch(e){return 'undefined';}}() + '","genre2":"' + function(){try{return _$music[find_music_temp['phrases']['music'][1]];} catch(e){return 'undefined';}}() + '","location":"' + function(){try{return _$location[find_music_temp['phrases']['location'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$find_music[_$phrase] = find_music_temp; _$result = find_music_temp; + } + break; + case 118: + { + rval = vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var find_music_temp = {}; find_music_temp['phrases'] = {};find_music_temp['phrases']['what'] = {};find_music_temp['phrases']['what'][0] = vstack[ vstack.length - 4 ]; find_music_temp['phrases']['v_play_fin'] = {};find_music_temp['phrases']['v_play_fin'][0] = vstack[ vstack.length - 3 ]; find_music_temp['phrases']['preposition'] = {};find_music_temp['phrases']['preposition'][0] = vstack[ vstack.length - 2 ]; find_music_temp['phrases']['location'] = {};find_music_temp['phrases']['location'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; find_music_temp['phrase']=_$phrase; find_music_temp['semantic'] = '{"ShowPOIs":{"poicat":"' + function(){try{return _$poi_category[find_music_temp['phrases']['poi_category'][0]];} catch(e){return 'undefined';}}() + '","genre":"' + function(){try{return _$music[find_music_temp['phrases']['music'][0]];} catch(e){return 'undefined';}}() + '","genre2":"' + function(){try{return _$music[find_music_temp['phrases']['music'][1]];} catch(e){return 'undefined';}}() + '","location":"' + function(){try{return _$location[find_music_temp['phrases']['location'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$find_music[_$phrase] = find_music_temp; _$result = find_music_temp; + } + break; + case 119: + { + rval = vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var find_music_temp = {}; find_music_temp['phrases'] = {};find_music_temp['phrases']['where'] = {};find_music_temp['phrases']['where'][0] = vstack[ vstack.length - 4 ]; find_music_temp['phrases']['v_play_fin'] = {};find_music_temp['phrases']['v_play_fin'][0] = vstack[ vstack.length - 3 ]; find_music_temp['phrases']['location'] = {};find_music_temp['phrases']['location'][0] = vstack[ vstack.length - 2 ]; find_music_temp['phrases']['music'] = {};find_music_temp['phrases']['music'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; find_music_temp['phrase']=_$phrase; find_music_temp['semantic'] = '{"ShowPOIs":{"poicat":"' + function(){try{return _$poi_category[find_music_temp['phrases']['poi_category'][0]];} catch(e){return 'undefined';}}() + '","genre":"' + function(){try{return _$music[find_music_temp['phrases']['music'][0]];} catch(e){return 'undefined';}}() + '","genre2":"' + function(){try{return _$music[find_music_temp['phrases']['music'][1]];} catch(e){return 'undefined';}}() + '","location":"' + function(){try{return _$location[find_music_temp['phrases']['location'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}}'; _$find_music[_$phrase] = find_music_temp; _$result = find_music_temp; + } + break; + case 120: + { + rval = vstack[ vstack.length - 1 ]; var start_radar_temp = {}; start_radar_temp['phrases'] = {};start_radar_temp['phrases']['radar'] = {};start_radar_temp['phrases']['radar'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; start_radar_temp['phrase']=_$phrase; start_radar_temp['semantic'] = '{"RadarStart":{}}'; _$start_radar[_$phrase] = start_radar_temp; _$result = start_radar_temp; + } + break; + case 121: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var start_radar_temp = {}; start_radar_temp['phrases'] = {};start_radar_temp['phrases']['radar'] = {};start_radar_temp['phrases']['radar'][0] = vstack[ vstack.length - 2 ]; start_radar_temp['phrases']['preposition'] = {};start_radar_temp['phrases']['preposition'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; start_radar_temp['phrase']=_$phrase; start_radar_temp['semantic'] = '{"RadarStart":{}}'; _$start_radar[_$phrase] = start_radar_temp; _$result = start_radar_temp; + } + break; + case 122: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var start_radar_temp = {}; start_radar_temp['phrases'] = {};start_radar_temp['phrases']['radar'] = {};start_radar_temp['phrases']['radar'][0] = vstack[ vstack.length - 2 ]; start_radar_temp['phrases']['v_open_inf'] = {};start_radar_temp['phrases']['v_open_inf'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; start_radar_temp['phrase']=_$phrase; start_radar_temp['semantic'] = '{"RadarStart":{}}'; _$start_radar[_$phrase] = start_radar_temp; _$result = start_radar_temp; + } + break; + case 123: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var start_radar_temp = {}; start_radar_temp['phrases'] = {};start_radar_temp['phrases']['radar'] = {};start_radar_temp['phrases']['radar'][0] = vstack[ vstack.length - 2 ]; start_radar_temp['phrases']['v_open_fin'] = {};start_radar_temp['phrases']['v_open_fin'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; start_radar_temp['phrase']=_$phrase; start_radar_temp['semantic'] = '{"RadarStart":{}}'; _$start_radar[_$phrase] = start_radar_temp; _$result = start_radar_temp; + } + break; + case 124: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var start_radar_temp = {}; start_radar_temp['phrases'] = {};start_radar_temp['phrases']['v_open_fin'] = {};start_radar_temp['phrases']['v_open_fin'][0] = vstack[ vstack.length - 2 ]; start_radar_temp['phrases']['radar'] = {};start_radar_temp['phrases']['radar'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; start_radar_temp['phrase']=_$phrase; start_radar_temp['semantic'] = '{"RadarStart":{}}'; _$start_radar[_$phrase] = start_radar_temp; _$result = start_radar_temp; + } + break; + case 125: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var start_radar_temp = {}; start_radar_temp['phrases'] = {};start_radar_temp['phrases']['radar'] = {};start_radar_temp['phrases']['radar'][0] = vstack[ vstack.length - 2 ]; start_radar_temp['phrases']['v_show_inf'] = {};start_radar_temp['phrases']['v_show_inf'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; start_radar_temp['phrase']=_$phrase; start_radar_temp['semantic'] = '{"RadarStart":{}}'; _$start_radar[_$phrase] = start_radar_temp; _$result = start_radar_temp; + } + break; + case 126: + { + rval = vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var start_radar_temp = {}; start_radar_temp['phrases'] = {};start_radar_temp['phrases']['v_find_imp'] = {};start_radar_temp['phrases']['v_find_imp'][0] = vstack[ vstack.length - 5 ]; start_radar_temp['phrases']['preposition'] = {};start_radar_temp['phrases']['preposition'][0] = vstack[ vstack.length - 4 ]; start_radar_temp['phrases']['music'] = {};start_radar_temp['phrases']['music'][0] = vstack[ vstack.length - 3 ]; start_radar_temp['phrases']['preposition'][1] = vstack[ vstack.length - 2 ]; start_radar_temp['phrases']['near_to_me'] = {};start_radar_temp['phrases']['near_to_me'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; start_radar_temp['phrase']=_$phrase; start_radar_temp['semantic'] = '{"RadarStart":{}}'; _$start_radar[_$phrase] = start_radar_temp; _$result = start_radar_temp; + } + break; + case 127: + { + rval = vstack[ vstack.length - 1 ]; var liked_temp = {}; liked_temp['phrases'] = {};liked_temp['phrases']['like'] = {};liked_temp['phrases']['like'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; liked_temp['phrase']=_$phrase; liked_temp['semantic'] = '{"Rating":{"stars":"f__ue__nf"}}'; _$liked[_$phrase] = liked_temp; _$result = liked_temp; + } + break; + case 128: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var rating_temp = {}; rating_temp['phrases'] = {};rating_temp['phrases']['number'] = {};rating_temp['phrases']['number'][0] = vstack[ vstack.length - 2 ]; rating_temp['phrases']['stars'] = {};rating_temp['phrases']['stars'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; rating_temp['phrase']=_$phrase; rating_temp['semantic'] = '{"Rating":{"stars":"' + function(){try{return _$number[rating_temp['phrases']['number'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$rating[_$phrase] = rating_temp; _$result = rating_temp; + } + break; + case 129: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var rating_temp = {}; rating_temp['phrases'] = {};rating_temp['phrases']['rest'] = {};rating_temp['phrases']['rest'][0] = vstack[ vstack.length - 3 ]; rating_temp['phrases']['number'] = {};rating_temp['phrases']['number'][0] = vstack[ vstack.length - 2 ]; rating_temp['phrases']['stars'] = {};rating_temp['phrases']['stars'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; rating_temp['phrase']=_$phrase; rating_temp['semantic'] = '{"Rating":{"stars":"' + function(){try{return _$number[rating_temp['phrases']['number'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$rating[_$phrase] = rating_temp; _$result = rating_temp; + } + break; + case 130: + { + rval = vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var rating_temp = {}; rating_temp['phrases'] = {};rating_temp['phrases']['rest'] = {};rating_temp['phrases']['rest'][0] = vstack[ vstack.length - 4 ]; rating_temp['phrases']['rest'][1] = vstack[ vstack.length - 3 ]; rating_temp['phrases']['number'] = {};rating_temp['phrases']['number'][0] = vstack[ vstack.length - 2 ]; rating_temp['phrases']['stars'] = {};rating_temp['phrases']['stars'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; rating_temp['phrase']=_$phrase; rating_temp['semantic'] = '{"Rating":{"stars":"' + function(){try{return _$number[rating_temp['phrases']['number'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$rating[_$phrase] = rating_temp; _$result = rating_temp; + } + break; + case 131: + { + rval = vstack[ vstack.length - 5 ] + ' ' + vstack[ vstack.length - 4 ] + ' ' + vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var rating_temp = {}; rating_temp['phrases'] = {};rating_temp['phrases']['rest'] = {};rating_temp['phrases']['rest'][0] = vstack[ vstack.length - 5 ]; rating_temp['phrases']['rest'][1] = vstack[ vstack.length - 4 ]; rating_temp['phrases']['rest'][2] = vstack[ vstack.length - 3 ]; rating_temp['phrases']['number'] = {};rating_temp['phrases']['number'][0] = vstack[ vstack.length - 2 ]; rating_temp['phrases']['stars'] = {};rating_temp['phrases']['stars'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; rating_temp['phrase']=_$phrase; rating_temp['semantic'] = '{"Rating":{"stars":"' + function(){try{return _$number[rating_temp['phrases']['number'][0]];} catch(e){return 'undefined';}}() + '"}}'; _$rating[_$phrase] = rating_temp; _$result = rating_temp; + } + break; + case 132: + { + rval = vstack[ vstack.length - 3 ] + ' ' + vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var full_title_temp = {}; full_title_temp['phrases'] = {};full_title_temp['phrases']['preposition'] = {};full_title_temp['phrases']['preposition'][0] = vstack[ vstack.length - 3 ]; full_title_temp['phrases']['theme'] = {};full_title_temp['phrases']['theme'][0] = vstack[ vstack.length - 2 ]; full_title_temp['phrases']['title'] = {};full_title_temp['phrases']['title'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; full_title_temp['phrase']=_$phrase; full_title_temp['semantic'] = '{"title":"' + function(){try{return _$title[full_title_temp['phrases']['title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}'; _$full_title[_$phrase] = full_title_temp; _$result = full_title_temp; + } + break; + case 133: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var full_title_temp = {}; full_title_temp['phrases'] = {};full_title_temp['phrases']['preposition'] = {};full_title_temp['phrases']['preposition'][0] = vstack[ vstack.length - 2 ]; full_title_temp['phrases']['title'] = {};full_title_temp['phrases']['title'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; full_title_temp['phrase']=_$phrase; full_title_temp['semantic'] = '{"title":"' + function(){try{return _$title[full_title_temp['phrases']['title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}'; _$full_title[_$phrase] = full_title_temp; _$result = full_title_temp; + } + break; + case 134: + { + rval = vstack[ vstack.length - 1 ]; var title_temp = {}; title_temp['phrases'] = {};title_temp['phrases']['rest'] = {};title_temp['phrases']['rest'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; title_temp['phrase']=_$phrase; title_temp['semantic'] = '{"value":"' + function(){try{return _$rest[title_temp['phrases']['rest'][0]];} catch(e){return 'undefined';}}() + '","title":"' + function(){try{return _$title[title_temp['phrases']['title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}'; _$title[_$phrase] = title_temp; _$result = title_temp; + } + break; + case 135: + { + rval = vstack[ vstack.length - 2 ] + ' ' + vstack[ vstack.length - 1 ]; var title_temp = {}; title_temp['phrases'] = {};title_temp['phrases']['rest'] = {};title_temp['phrases']['rest'][0] = vstack[ vstack.length - 2 ]; title_temp['phrases']['title'] = {};title_temp['phrases']['title'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; title_temp['phrase']=_$phrase; title_temp['semantic'] = '{"value":"' + function(){try{return _$rest[title_temp['phrases']['rest'][0]];} catch(e){return 'undefined';}}() + '","title":"' + function(){try{return _$title[title_temp['phrases']['title'][0]]['semantic'];} catch(e){return 'undefined';}}() + '"}'; _$title[_$phrase] = title_temp; _$result = title_temp; + } + break; + case 136: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 137: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 138: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 139: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 140: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 141: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 142: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 143: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 144: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 145: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 146: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 147: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 148: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 149: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 150: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 151: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 152: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 153: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 154: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 155: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 156: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 157: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 158: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 159: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 160: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 161: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 162: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 163: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 164: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 165: + { + rval = vstack[ vstack.length - 1 ]; + } + break; +} + + + + tmptree = new Array(); + + if( _dbg_withtrace ) + __dbg_print( "\tPopping " + pop_tab[act][1] + " off the stack..." ); + + for( var i = 0; i < pop_tab[act][1]; i++ ) + { + tmptree.push( tree.pop() ); + + sstack.pop(); + vstack.pop(); + } + + go = -1; + for( var i = 0; i < goto_tab[sstack[sstack.length-1]].length; i+=2 ) + { + if( goto_tab[sstack[sstack.length-1]][i] == pop_tab[act][0] ) + { + go = goto_tab[sstack[sstack.length-1]][i+1]; + break; + } + } + + //Parse tree + var node = new treenode(); + node.sym = labels[ pop_tab[act][0] ]; + node.att = rval; + node.child = tmptree.reverse(); + tree.push( treenodes.length ); + treenodes.push( node ); + + if( act == 0 ) + break; + + if( _dbg_withtrace ) + __dbg_print( "\tPushing non-terminal " + labels[ pop_tab[act][0] ] ); + + sstack.push( go ); + vstack.push( rval ); + } + + if( _dbg_withtrace ) + { + alert( _dbg_string ); + _dbg_string = new String(); + } + } + + if( _dbg_withtrace ) + { + __dbg_print( "\nParse complete." ); + alert( _dbg_string ); + } + + if( err_cnt == 0 ) + {} + + return err_cnt; +} + +function __dbg_image( name ) +{ + return ""; +} + +function __dbg_get_tree_depth( nodes, tree, max ) +{ + var tmp = 0; + + for( var i = 0; i < tree.length; i++ ) + { + if( nodes[ tree[i] ].child.length > 0 ) + if( max < ( tmp = __dbg_get_tree_depth( nodes, nodes[ tree[i] ].child, max+1 ) ) ) + max = tmp; + } + + return max; +} + +function __dbg_parsetree( prev, cnt, depth, nodes, tree ) +{ + var str = new String(); + + if( cnt == 0 ) + str += ""; + + if( !prev ) + prev = new Array(); + + if( cnt > 0 ) + prev[cnt-1] = true; + + for( var i = 0; i < tree.length; i++ ) + { + str += ""; + + for( var j = 0; j < cnt; j++ ) + { + str += ""; + } + + if( cnt > 0 && i == tree.length - 1 ) + prev[cnt-1] = false; + + str += ""; + + str += ""; + + if( nodes[ tree[i] ].child.length > 0 ) + str += __dbg_parsetree( prev, cnt+1, depth, nodes, nodes[ tree[i] ].child ); + } + + if( cnt == 0 ) + str += "
"; + + if( prev[j] ) + { + if( j == cnt - 1 && i == tree.length - 1 ) + str += __dbg_image( "ll" ); + else if( j == cnt - 1 ) + str += __dbg_image( "la" ); + else + str += __dbg_image( "l" ); + } + else + str += __dbg_image( "e" ); + + str += ""; + if( nodes[ tree[i] ].child.length > 0 ) + if( cnt == 0 ) + str += __dbg_image( "rn" ); + else + str += __dbg_image( "n" ); + else + str += __dbg_image( "t" ); + str += "" + nodes[ tree[i] ].sym ; + if( nodes[ tree[i] ].att && nodes[ tree[i] ].att != "" ) + str += ":" + nodes[ tree[i] ].att + "" ; + + str += "
"; + + return str; +} + +function __dbg_parsetree_phpSyntaxTree( nodes, tree ) +{ + var str = new String(); + + for( var i = 0; i < tree.length; i++ ) + { + str += " [ "; + + str += nodes[ tree[i] ].sym; + if( nodes[ tree[i] ].att && nodes[ tree[i] ].att != "" ) + { + var attr = new String( nodes[ tree[i] ].att ); + str += ":\"" + attr.replace( / |\t|\r|\n|\[|\]/g, "_" ) + "\""; + } + + str += " "; + + if( nodes[ tree[i] ].child.length > 0 ) + str += __dbg_parsetree_phpSyntaxTree( nodes, nodes[ tree[i] ].child ); + + str += " ] "; + } + + return str; +} + + +__parse( asr_recognized_text, new Array(), new Array()); +}); + +mobileDS.SemanticInterpreter.getInstance().setStopwords("de",["bitte","doch","der","der","die","das","dem","den","des","diese","dieser","diesem","diesen","dieses","mir","mal","jetzt","lass","m__oe__chte","ich","bla"]); + diff --git a/assets/www/gen/grammar_nodejs/jp_grammar.js b/assets/www/gen/grammar_nodejs/jp_grammar.js new file mode 100644 index 0000000..dc2f422 --- /dev/null +++ b/assets/www/gen/grammar_nodejs/jp_grammar.js @@ -0,0 +1,621 @@ +mobileDS.SemanticInterpreter.getInstance().addGrammar("jp", function(asr_recognized_text){ + var theGrammarConverterInstance = this; + + + var _$result = ''; + var _$v_play_inf = {}; + var _$rest = {}; + var _$play = {}; + + +/* + JS/CC: A LALR(1) Compiler-Compiler written in JavaScript + Copyright (C) 2007, 2008 by J.M.K S.F. Software Technologies, Jan Max Meyer + http://www.jmksf.com ++ jscc<-AT->jmksf.com + + File: jscc.html + Author: Jan Max Meyer + Usage: Modified parser template for the Web Environment Module + Based on "driver_web.js_" parser template, but NOT in the public domain! + + You may use, modify and distribute this software under the terms and conditions + of the Artistic License. Please see ARTISTIC for more information. + + Driver for the JS/CC Web Environment with integrated HTML parse tree generator! + + Features: + - Parser trace messages + - Integrated panic-mode error recovery + - Parse tree construction for the JS/CC web environment +*/ + +var _dbg_withtrace = false; +var _dbg_string = new String(); + +function __dbg_print( text ) +{ + _dbg_string += text + "\n"; +} + +function __lex( info ) +{ + var state = 0; + var match = -1; + var match_pos = 0; + var start = 0; + var pos = info.offset + 1; + + do + { + pos--; + state = 0; + match = -2; + start = pos; + + if( info.src.length <= start ) + return 7; + + do + { + +switch( state ) +{ + case 0: + if( info.src.charCodeAt( pos ) == 9 || info.src.charCodeAt( pos ) == 32 ) state = 1; + else if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else if( info.src.charCodeAt( pos ) == 126 ) state = 4; + else state = -1; + break; + + case 1: + state = -1; + match = 1; + match_pos = pos; + break; + + case 2: + if( ( info.src.charCodeAt( pos ) >= 65 && info.src.charCodeAt( pos ) <= 90 ) || info.src.charCodeAt( pos ) == 95 || ( info.src.charCodeAt( pos ) >= 97 && info.src.charCodeAt( pos ) <= 122 ) ) state = 2; + else state = -1; + match = 3; + match_pos = pos; + break; + + case 3: + state = -1; + match = 2; + match_pos = pos; + break; + + case 4: + if( info.src.charCodeAt( pos ) == 126 ) state = 5; + else state = -1; + break; + + case 5: + if( info.src.charCodeAt( pos ) == 53 ) state = 6; + else state = -1; + break; + + case 6: + if( info.src.charCodeAt( pos ) == 49 ) state = 7; + else state = -1; + break; + + case 7: + if( info.src.charCodeAt( pos ) == 56 ) state = 8; + else state = -1; + break; + + case 8: + if( info.src.charCodeAt( pos ) == 68 ) state = 9; + else state = -1; + break; + + case 9: + if( info.src.charCodeAt( pos ) == 126 ) state = 18; + else state = -1; + break; + + case 10: + if( info.src.charCodeAt( pos ) == 55 ) state = 11; + else state = -1; + break; + + case 11: + if( info.src.charCodeAt( pos ) == 53 ) state = 12; + else state = -1; + break; + + case 12: + if( info.src.charCodeAt( pos ) == 49 ) state = 13; + else state = -1; + break; + + case 13: + if( info.src.charCodeAt( pos ) == 70 ) state = 16; + else state = -1; + break; + + case 14: + if( info.src.charCodeAt( pos ) == 126 ) state = 3; + else state = -1; + break; + + case 15: + if( info.src.charCodeAt( pos ) == 126 ) state = 10; + else state = -1; + break; + + case 16: + if( info.src.charCodeAt( pos ) == 126 ) state = 14; + else state = -1; + break; + + case 17: + if( info.src.charCodeAt( pos ) == 126 ) state = 15; + else state = -1; + break; + + case 18: + if( info.src.charCodeAt( pos ) == 126 ) state = 17; + else state = -1; + break; + +} + + + pos++; + + } + while( state > -1 ); + + } + while( 1 > -1 && match == 1 ); + + if( match > -1 ) + { + info.att = info.src.substr( start, match_pos - start ); + info.offset = match_pos; + +switch( match ) +{ + case 2: + { + _$v_play_inf[info.att] = info.att; + } + break; + + case 3: + { + _$rest[info.att] = info.att; + } + break; + +} + + + } + else + { + info.att = new String(); + match = -1; + } + + return match; +} + + +function __parse( src, err_off, err_la ) +{ theGrammarConverterInstance.semanticAnnotationResult={}; + var sstack = new Array(); + var vstack = new Array(); + var err_cnt = 0; + var act; + var go; + var la; + var rval; + var parseinfo = new Function( "", "var offset; var src; var att;" ); + var info = new parseinfo(); + + //Visual parse tree generation + var treenode = new Function( "", "var sym; var att; var child;" ); + var treenodes = new Array(); + var tree = new Array(); + var tmptree = null; + +/* Pop-Table */ +var pop_tab = new Array( + new Array( 0/* utterance' */, 1 ), + new Array( 5/* utterance */, 1 ), + new Array( 6/* PLAY */, 1 ), + new Array( 4/* phrases */, 1 ) +); + +/* Action-Table */ +var act_tab = new Array( + /* State 0 */ new Array( 2/* "V_PLAY_INF" */,4 ), + /* State 1 */ new Array( 7/* "$" */,0 ), + /* State 2 */ new Array( 7/* "$" */,-1 ), + /* State 3 */ new Array( 7/* "$" */,-3 ), + /* State 4 */ new Array( 7/* "$" */,-2 ) +); + +/* Goto-Table */ +var goto_tab = new Array( + /* State 0 */ new Array( 5/* utterance */,1 , 4/* phrases */,2 , 6/* PLAY */,3 ), + /* State 1 */ new Array( ), + /* State 2 */ new Array( ), + /* State 3 */ new Array( ), + /* State 4 */ new Array( ) +); + + + +/* Symbol labels */ +var labels = new Array( + "utterance'" /* Non-terminal symbol */, + "WHITESPACE" /* Terminal symbol */, + "V_PLAY_INF" /* Terminal symbol */, + "REST" /* Terminal symbol */, + "phrases" /* Non-terminal symbol */, + "utterance" /* Non-terminal symbol */, + "PLAY" /* Non-terminal symbol */, + "$" /* Terminal symbol */ +); + + + + info.offset = 0; + info.src = src; + info.att = new String(); + + if( !err_off ) + err_off = new Array(); + if( !err_la ) + err_la = new Array(); + + sstack.push( 0 ); + vstack.push( 0 ); + + la = __lex( info ); + + while( true ) + { + act = 6; + for( var i = 0; i < act_tab[sstack[sstack.length-1]].length; i+=2 ) + { + if( act_tab[sstack[sstack.length-1]][i] == la ) + { + act = act_tab[sstack[sstack.length-1]][i+1]; + break; + } + } + + if( _dbg_withtrace && sstack.length > 0 ) + { + __dbg_print( "\nState " + sstack[sstack.length-1] + "\n" + + "\tLookahead: " + labels[la] + " (\"" + info.att + "\")\n" + + "\tAction: " + act + "\n" + + "\tSource: \"" + info.src.substr( info.offset, 30 ) + ( ( info.offset + 30 < info.src.length ) ? + "..." : "" ) + "\"\n" + + "\tStack: " + sstack.join() + "\n" + + "\tValue stack: " + vstack.join() + "\n" ); + } + + + //Panic-mode: Try recovery when parse-error occurs! + if( act == 6 ) + { + if( _dbg_withtrace ) + __dbg_print( "Error detected: There is no reduce or shift on the symbol " + labels[la] ); + + err_cnt++; + err_off.push( info.offset - info.att.length ); + err_la.push( new Array() ); + for( var i = 0; i < act_tab[sstack[sstack.length-1]].length; i+=2 ) + err_la[err_la.length-1].push( labels[act_tab[sstack[sstack.length-1]][i]] ); + + //Remember the original stack! + var rsstack = new Array(); + var rvstack = new Array(); + for( var i = 0; i < sstack.length; i++ ) + { + rsstack[i] = sstack[i]; + rvstack[i] = vstack[i]; + } + + while( act == 6 && la != 7 ) + { + if( _dbg_withtrace ) + __dbg_print( "\tError recovery\n" + + "Current lookahead: " + labels[la] + " (" + info.att + ")\n" + + "Action: " + act + "\n\n" ); + if( la == -1 ) + info.offset++; + + while( act == 6 && sstack.length > 0 ) + { + sstack.pop(); + vstack.pop(); + + if( sstack.length == 0 ) + break; + + act = 6; + for( var i = 0; i < act_tab[sstack[sstack.length-1]].length; i+=2 ) + { + if( act_tab[sstack[sstack.length-1]][i] == la ) + { + act = act_tab[sstack[sstack.length-1]][i+1]; + break; + } + } + } + + if( act != 6 ) + break; + + for( var i = 0; i < rsstack.length; i++ ) + { + sstack.push( rsstack[i] ); + vstack.push( rvstack[i] ); + } + + la = __lex( info ); + } + + if( act == 6 ) + { + if( _dbg_withtrace ) + __dbg_print( "\tError recovery failed, terminating parse process..." ); + break; + } + + + if( _dbg_withtrace ) + __dbg_print( "\tError recovery succeeded, continuing" ); + } + + /* + if( act == 6 ) + break; + */ + + + //Shift + if( act > 0 ) + { + //Parse tree + var node = new treenode(); + node.sym = labels[ la ]; + node.att = info.att; + node.child = new Array(); + tree.push( treenodes.length ); + treenodes.push( node ); + + if( _dbg_withtrace ) + __dbg_print( "Shifting symbol: " + labels[la] + " (" + info.att + ")" ); + + sstack.push( act ); + vstack.push( info.att ); + + la = __lex( info ); + + if( _dbg_withtrace ) + __dbg_print( "\tNew lookahead symbol: " + labels[la] + " (" + info.att + ")" ); + } + //Reduce + else + { + act *= -1; + + if( _dbg_withtrace ) + __dbg_print( "Reducing by producution: " + act ); + + rval = void(0); + + if( _dbg_withtrace ) + __dbg_print( "\tPerforming semantic action..." ); + +switch( act ) +{ + case 0: + { + rval = vstack[ vstack.length - 1 ]; + } + break; + case 1: + { + _$result['semantic'] = _$result['semantic'].replace(/"{/g,'{').replace(/}"/g,'}'); console.log(_$result); theGrammarConverterInstance.semanticAnnotationResult = _$result + } + break; + case 2: + { + rval = vstack[ vstack.length - 1 ]; var play_temp = {}; play_temp['phrases'] = {};play_temp['phrases']['v_play_inf'] = {};play_temp['phrases']['v_play_inf'][0] = vstack[ vstack.length - 1 ]; var _$phrase = rval; play_temp['phrase']=_$phrase; play_temp['semantic'] = '{"Play":{}}'; _$play[_$phrase] = play_temp; _$result = play_temp; + } + break; + case 3: + { + rval = vstack[ vstack.length - 1 ]; + } + break; +} + + + + tmptree = new Array(); + + if( _dbg_withtrace ) + __dbg_print( "\tPopping " + pop_tab[act][1] + " off the stack..." ); + + for( var i = 0; i < pop_tab[act][1]; i++ ) + { + tmptree.push( tree.pop() ); + + sstack.pop(); + vstack.pop(); + } + + go = -1; + for( var i = 0; i < goto_tab[sstack[sstack.length-1]].length; i+=2 ) + { + if( goto_tab[sstack[sstack.length-1]][i] == pop_tab[act][0] ) + { + go = goto_tab[sstack[sstack.length-1]][i+1]; + break; + } + } + + //Parse tree + var node = new treenode(); + node.sym = labels[ pop_tab[act][0] ]; + node.att = rval; + node.child = tmptree.reverse(); + tree.push( treenodes.length ); + treenodes.push( node ); + + if( act == 0 ) + break; + + if( _dbg_withtrace ) + __dbg_print( "\tPushing non-terminal " + labels[ pop_tab[act][0] ] ); + + sstack.push( go ); + vstack.push( rval ); + } + + if( _dbg_withtrace ) + { + alert( _dbg_string ); + _dbg_string = new String(); + } + } + + if( _dbg_withtrace ) + { + __dbg_print( "\nParse complete." ); + alert( _dbg_string ); + } + + if( err_cnt == 0 ) + {} + + return err_cnt; +} + +function __dbg_image( name ) +{ + return ""; +} + +function __dbg_get_tree_depth( nodes, tree, max ) +{ + var tmp = 0; + + for( var i = 0; i < tree.length; i++ ) + { + if( nodes[ tree[i] ].child.length > 0 ) + if( max < ( tmp = __dbg_get_tree_depth( nodes, nodes[ tree[i] ].child, max+1 ) ) ) + max = tmp; + } + + return max; +} + +function __dbg_parsetree( prev, cnt, depth, nodes, tree ) +{ + var str = new String(); + + if( cnt == 0 ) + str += ""; + + if( !prev ) + prev = new Array(); + + if( cnt > 0 ) + prev[cnt-1] = true; + + for( var i = 0; i < tree.length; i++ ) + { + str += ""; + + for( var j = 0; j < cnt; j++ ) + { + str += ""; + } + + if( cnt > 0 && i == tree.length - 1 ) + prev[cnt-1] = false; + + str += ""; + + str += ""; + + if( nodes[ tree[i] ].child.length > 0 ) + str += __dbg_parsetree( prev, cnt+1, depth, nodes, nodes[ tree[i] ].child ); + } + + if( cnt == 0 ) + str += "
"; + + if( prev[j] ) + { + if( j == cnt - 1 && i == tree.length - 1 ) + str += __dbg_image( "ll" ); + else if( j == cnt - 1 ) + str += __dbg_image( "la" ); + else + str += __dbg_image( "l" ); + } + else + str += __dbg_image( "e" ); + + str += ""; + if( nodes[ tree[i] ].child.length > 0 ) + if( cnt == 0 ) + str += __dbg_image( "rn" ); + else + str += __dbg_image( "n" ); + else + str += __dbg_image( "t" ); + str += "" + nodes[ tree[i] ].sym ; + if( nodes[ tree[i] ].att && nodes[ tree[i] ].att != "" ) + str += ":" + nodes[ tree[i] ].att + "" ; + + str += "
"; + + return str; +} + +function __dbg_parsetree_phpSyntaxTree( nodes, tree ) +{ + var str = new String(); + + for( var i = 0; i < tree.length; i++ ) + { + str += " [ "; + + str += nodes[ tree[i] ].sym; + if( nodes[ tree[i] ].att && nodes[ tree[i] ].att != "" ) + { + var attr = new String( nodes[ tree[i] ].att ); + str += ":\"" + attr.replace( / |\t|\r|\n|\[|\]/g, "_" ) + "\""; + } + + str += " "; + + if( nodes[ tree[i] ].child.length > 0 ) + str += __dbg_parsetree_phpSyntaxTree( nodes, nodes[ tree[i] ].child ); + + str += " ] "; + } + + return str; +} + + +__parse( asr_recognized_text, new Array(), new Array()); +}); + +mobileDS.SemanticInterpreter.getInstance().setStopwords("jp",["ください","下さい"]); + diff --git a/assets/www/index.html b/assets/www/index.html index 0fb25e2..cd1f089 100644 --- a/assets/www/index.html +++ b/assets/www/index.html @@ -136,6 +136,9 @@ + + + @@ -189,6 +192,11 @@ + + + this would mean, we can never start the asr again in this instance... bad choice + if ((aborted === false) && (recording === true)){ +// restart_counter++; + recognition.start(); + } + //FIXME this is a HACK for the stopRecord function ... + else if(recognition._stopRecordCallback){ + var theCallback = recognition._stopRecordCallback; + //this is a "1-time callback" -> remove it... + delete recognition._stopRecordCallback; + //... and trigger the callback: + theCallback.call(recording, event); + } + } + + recognition.onerror = default_error_handler_function; + + // set maximum number of SpeechRecognitionAlternatives per result. + recognition.maxAlternatives = 1; + + callBack ({ + startRecord: function(successCallback, failureCallback, intermediateResults){ + + // TODO: failureCallback parameter + if (active == true){ + if (loglevel >= 1){ + console.warn("[newMediaPlugin.Warn] " + "Voice recognition already running."); + } + failureCallback("already running"); + return; + } + + aborted = false; + recording = true; + + // flush any old results + final_recognition_result = ""; + + // set intermediate_results - for access by stopRecord + intermediate_results = intermediateResults; + + // set recognition language + var langStr = mobileDS.LanguageManager.getInstance().getSpeaker()["voice_lang"]; + if(langStr){ + //normalize language code: config uses underline as separator: + recognition.lang = langStr.replace('_','-'); + } + else { + //default: + recognition.lang = "en-US"; + } + + // do not stop recognition on silence + recognition.continuous = true; + + /***********************/ + // get results continuously + recognition.interimResults = (loglevel >= 4) ? true : false; + /***********************/ + + currentFailureCallback = failureCallback; + currentSuccessCallback = successCallback; + + recognition.onerror = default_error_handler_function; + + // - see https://dvcs.w3.org/hg/speech-api/raw-file/tip/speechapi.html#speechreco-event + recognition.onresult = function (event) { + var finalResult = ''; + + if (loglevel >= 4){ + console.debug("[newMediaPlugin.Debug] " + "interim: " + event.results[event.resultIndex][0].transcript + " ("+event.results[event.resultIndex][0].confidence+")"); + } + + // if event.results[event.resultIndex].isFinal is true, then there is a pause. + if (event.results[event.resultIndex].isFinal) { + if (loglevel >= 4){ + console.debug("[newMediaPlugin.Debug] " + "final"); + } + + finalResult = event.results[event.resultIndex][0].transcript; + + if (intermediate_results == true){ + // call callback method with result + // final_recognition_result += " " + finalResult; + final_recognition_result += finalResult; + currentSuccessCallback && currentSuccessCallback(finalResult); + + } else { + // final_recognition_result += " " + finalResult; + final_recognition_result += finalResult; + + if (recording == false){ + currentSuccessCallback && currentSuccessCallback(final_recognition_result); + } + } + } + }; + + // start the recognition + recognition.start(); + }, + + stopRecord: function(successCallback,failureCallback){ + // TODO: at end of recording return whole recognized stuff in successcallback + recording = false; + + var isSuccessTriggered = false; + + // recognize (recognition.continuous == true) or stopRecord (recognition.continuous == false) + if (recognition.continuous == false){ + recognition.onresult = function (event) { + var finalResult = ''; + + if (loglevel >= 4){ + console.debug("[newMediaPlugin.Debug] " + "interim: " + event.results[event.resultIndex][0].transcript); + } + + // if event.results[event.resultIndex].isFinal is true, then there is a pause. + if (event.results[event.resultIndex].isFinal) { + if (loglevel >= 4){ + console.debug("[newMediaPlugin.Debug] " + "final"); + } + + finalResult = event.results[event.resultIndex][0].transcript; + + // is it called for the last time (recording == false) + if (recording == false){ + final_recognition_result += finalResult; + + if (intermediate_results == true){ + currentSuccessCallback && currentSuccessCallback(finalResult); + } else { + currentSuccessCallback && currentSuccessCallback(final_recognition_result); + } + + if(successCallback){ + if(isSuccessTriggered){ + console.error('stopRecord: success callback was already triggered!');//FIXME debug + } + isSuccessTriggered = true; + successCallback(final_recognition_result); + } + } else { + // final_recognition_result += " " + finalResult; + final_recognition_result += finalResult; + if (intermediate_results == true){ + currentSuccessCallback && currentSuccessCallback(finalResult); + } + } + + } + }; + } + // TODO: recognition.onstop = function(){successCallback} + + //HACK: set an "internal" callback, that will be checked in the onend-listener (see above) + // (NOTE: the onstop()-listener does not seem to get called ...) + recognition._stopRecordCallback = function(){ + if(successCallback && !isSuccessTriggered){ + console.info('stopRecord: calling success callback onstop (without last ASR result)');//FIXME debug + isSuccessTriggered = true; + successCallback(''); + } + }; + + recognition.stop(); + }, + + cancelRecognition: function(successCallback,failureCallback){ + recording = false; + aborted = true; + // callback used if an error occurred - includes abort + // gets event as argument - see https://dvcs.w3.org/hg/speech-api/raw-file/tip/speechapi.html#speechreco-error + // * if aborted - call successCallback + + recognition.onerror = function(event){ + if ((event.error == "aborted") && (aborted == true)){ + aborted = false; + recognition.onerror = default_error_handler_function; + successCallback && successCallback(event.error); + } else { + // currentFailureCallback(event.error); + default_error_handler_function(event.error); + } + } + + recognition.abort(); + }, + + // doesn't require interimResult - because it stops after first pause; would make no sense + // TODO: copy startRecord - + // FIX: no end event, if recognize() is stopped via stopRecord() + recognize: function(successCallback,failureCallback){ + console.warn("DO NOT USE AT THE MOMENT\nUnexpected behavior: if recognition is stopped (via 'stopRecord()'), the 'end' is not thrown. The recognizer is still active, but not usable.") + + if (active == true){ + if (loglevel >= 1){ + console.warn("[newMediaPlugin.Warn] " + "Voice recognition already running."); + } + failureCallback("already running"); + return; + } + aborted = false; + recording = true; + + // flush any old results + final_recognition_result = ""; + + // recognition.lang = "en-US"; + var langStr = mobileDS.LanguageManager.getInstance().getSpeaker()["voice_lang"]; + if(langStr){ + //normalize language code: config uses underline as separator: + recognition.lang = langStr.replace('_','-'); + } + else { + //default: + recognition.lang = "en-US"; + } + + // stop recognition on silence + recognition.continuous = false; + + // not needed for recognize + // // set intermediate_results - for access by stopRecord + recognition.interimResults = (loglevel >= 4) ? true : false; + + currentFailureCallback = failureCallback; + currentSuccessCallback = successCallback; + + recognition.onerror = default_error_handler_function; + + var self = this; + // - see https://dvcs.w3.org/hg/speech-api/raw-file/tip/speechapi.html#speechreco-event + recognition.onresult = function (event) { + var finalResult = ''; + + if (loglevel >= 4){ + console.debug("[newMediaPlugin.Debug] " + "interim: " + event.results[event.resultIndex][0].transcript); + } + + // if event.results[event.resultIndex].isFinal is true, then there is a pause. + if (event.results[event.resultIndex].isFinal) { + if (loglevel >= 4){ + console.debug("[newMediaPlugin.Debug] " + "final"); + } + + finalResult = event.results[event.resultIndex][0].transcript; + + // stop recording - finish after one sentence! + recording = false + + + // TODO: dirty hack - somehow it does not throw end event after recognition if recognize is used + self.cancelRecognition(); + currentSuccessCallback && currentSuccessCallback(finalResult); + } + }; + + // start the recognition + recognition.start(); + }, + getLoglevel: function(){ + return loglevel; + }, + // default: set loglevel to 0 + setLoglevel: function(logvalue){ + loglevel = logvalue | 0; + return loglevel; + }, + getRecognition: function(){ + return recognition; + } + }); + + + } + +}; \ No newline at end of file diff --git a/assets/www/mmirf/main.js b/assets/www/mmirf/main.js index 53de50c..4731b63 100644 --- a/assets/www/mmirf/main.js +++ b/assets/www/mmirf/main.js @@ -119,9 +119,39 @@ function initializeApplication(){ function loadManagers(){ mobileDS.ConfigurationManager.getInstance(); - langManager = mobileDS.LanguageManager.getInstance(mobileDS.ConfigurationManager.getInstance().getLanguage()); + langManager = mobileDS.LanguageManager.getInstance(mobileDS.ConfigurationManager.getInstance().get('language')); semanticInterpreter = mobileDS.SemanticInterpreter.getInstance(); + + //this is a "dummy" listener for the on allowrecording event -> triggered when user allows getUserMedia (HTML5) + // we need this, in case the browser has a permanent "allow" permission + // -> then the event i striggered as soon as teh MediaManager (or more precisely html5AudioInput) + // is loaded/executed, i.e. before the "real" implementation for the listener in controller/application + // is loaded + // ... so we use this "dummy" listener to catch the data that is delivered by the event, and use + // it later in controller/application (if this dummy was not triggered by then, it will be removed + // and discarded) + MEDIA_ON_ALLOW_RECORD_LISTENER = function(recordingStream, audioContextImpl, recorderInstance){ + if(recordingStream){ + MEDIA_RECORDING_STREAM = recordingStream; + } + if(audioContextImpl){ + MEDIA_AUDIO_CONTEXT = audioContextImpl; + } + if(recorderInstance){ + MEDIA_RECORDER_INSTANCE = recorderInstance; + } + + if(typeof MEDIA_RECORDING_STREAM !== 'undefined' && typeof MEDIA_AUDIO_CONTEXT !== 'undefined'){ + return { + recordingStream : MEDIA_RECORDING_STREAM, + audioContext : MEDIA_AUDIO_CONTEXT, + recorderInstance: MEDIA_RECORDER_INSTANCE + }; + } + return null; + }; + mobileDS.MediaManager.create(function(){ console.log('All Media-Plugins Loaded'); mobileDS.SCIONExtension.getInstance(); @@ -131,25 +161,13 @@ function loadManagers(){ }, function (e) { console.log('Error loading Media plugins'); if (e) console.log(e); - }); + }, + [{ name: 'onallowrecord', listener: MEDIA_ON_ALLOW_RECORD_LISTENER }] + ); } -function loadInputEngine(){ - - mobileDS.InputEngine.create(function(engineInstance){ - inputManager = engineInstance; - inputManager.startEngine(); - - console.log("initialization finished"); - /// callback end - -// var cm = mobileDS.CompassHandler.getInstance(); -// cm.startWatch(); - }); -} - function backKeyDown(event){ if(!forBrowser || (forBrowser && event.state)){//if(IS_BACK_ACTIVE){ @@ -175,31 +193,43 @@ function hideLoader(){ function afterLoadingControllers(ctrlManager){ - loadInputEngine(); - controllerManager = ctrlManager; - //$.mobile.page.prototype.options.backBtnText = "zurück"; - //$.mobile.page.prototype.options.backBtnTheme = "a"; - // $.mobile.page.prototype.options.addBackBtn = true; - //$.mobile.useFastClick = false; + mobileDS.InputEngine.create(function(engineInstance){ + inputManager = engineInstance; + inputManager.startEngine(); - pm = mobileDS.PresentationManager.getInstance(); - - mobileDS.DialogEngine.create(function(engineInstance){ - dialogManager = engineInstance; + console.log("initialization finished"); + /// callback end + +// var cm = mobileDS.CompassHandler.getInstance(); +// cm.startWatch(); + + + controllerManager = ctrlManager; + + mobileDS.Notification.getInstance().initBeep(); + + pm = mobileDS.PresentationManager.getInstance(); - mobileDS.ModelManager.create(function(modelManagerInstance){ - modelManager = modelManagerInstance; - - dialogManager.setOnPageRenderedHandler(exectueAfterEachPageIsLoaded); - dialogManager.startEngine(); - var appLayout = pm.getLayout("Application"); - var headerContents = appLayout.getHeaderContents(); - var header = $("head"); - header.append(headerContents); - $('#applications_dialogs').appendTo($.mobile.pageContainer).css({}); - }); - }); + mobileDS.DialogEngine.create(function(engineInstance){ + dialogManager = engineInstance; + + mobileDS.ModelManager.create(function(modelManagerInstance){ + modelManager = modelManagerInstance; + + dialogManager.setOnPageRenderedHandler(exectueAfterEachPageIsLoaded); + dialogManager.startEngine(); + var appLayout = pm.getLayout("Application"); + var headerContents = appLayout.getHeaderContents(); + var header = $("head"); + header.append(headerContents); + $('#applications_dialogs').appendTo($.mobile.pageContainer).css({}); + + }); + + });//END: DialogEngine.create() + + });//END: InputEngine.create() } @@ -215,20 +245,23 @@ function exectueAfterEachPageIsLoaded(ctrlName,viewName,data){ mobileDS.InputEngine.getInstance().raise(eventName); }); tis.bind('vclick', function(event){ + event.preventDefault(); triggerClickFeedback(); eventName = "click_on_" + tis.attr("name"); mobileDS.InputEngine.getInstance().raise("touch_input_event"); mobileDS.InputEngine.getInstance().raise(eventName); }); tis.bind('vmouseup', function(event){ - tis.parent().removeClass('ui-focus ui-btn-active ui-btn-down-a'); - eventName = "touch_end_on_" + tis.attr("name"); - mobileDS.InputEngine.getInstance().raise("touch_input_event"); - mobileDS.InputEngine.getInstance().raise(eventName); + tis.parent().removeClass('ui-focus ui-btn-active ui-btn-down-a'); + eventName = "touch_end_on_" + tis.attr("name"); + mobileDS.InputEngine.getInstance().raise("touch_input_event"); + mobileDS.InputEngine.getInstance().raise(eventName); }); }); } +var IS_SOUND_FEEDBACK = true; +var IS_HAPTIC_FEEDBACK = true; /** * * @param config (optional) cofiguration object with fields @@ -242,23 +275,29 @@ function triggerClickFeedback(config){ //TODO haptic and sound feedback should be run in parallel, not sequential (... use 'threads'?) - if(isHaptic){ + if(isHaptic && IS_HAPTIC_FEEDBACK){ triggerHapticFeedback(); } - if(isSound){ + if(isSound && IS_SOUND_FEEDBACK){ triggerSoundFeedback(); } } function triggerHapticFeedback(){ - if( ! forBrowser){ - mobileDS.Notification.getInstance().vibrate(CLICK_VIBRATE_DURATION); - } +// if( ! forBrowser){ + //do not block function, return immediatly using setTimeout + setTimeout(function(){ + mobileDS.Notification.getInstance().vibrate(CLICK_VIBRATE_DURATION); + },0); +// } } function triggerSoundFeedback(){ - mobileDS.Notification.getInstance().beep(1); + //do not block function, return immediatly using setTimeout + setTimeout(function(){ + mobileDS.Notification.getInstance().beep(1); + },0); } function triggerErrorFeedback(){ @@ -338,15 +377,19 @@ function micClick(){ if(isUseEndOfSpeechDetection === false){ - console.log("[AudioInput] start recoginition without automtic END OF SPEECH detection"); //WITHOUT end-of-speech-detection (i.e. manual stop by user interaction): if ($('#mic_button').hasClass('footer_button_clicked')){ + + console.log("[AudioInput] stop recoginition without automtic END OF SPEECH detection"); mobileDS.MediaManager.getInstance().stopRecord(successFunc, errorFunc); } else { + + console.log("[AudioInput] start recoginition without automtic END OF SPEECH detection"); + $('#mic_button').addClass('footer_button_clicked'); mobileDS.MediaManager.getInstance().startRecord( function printResult(res){ @@ -367,7 +410,7 @@ function micClick(){ if ($('#mic_button').hasClass('footer_button_clicked')){ - console.log("[AudioInput] start recoginition with automtic END OF SPEECH detection: already in progress, stopping now..."); + console.log("[AudioInput] speech recoginition with automtic END OF SPEECH detection: already in progress, stopping now..."); mobileDS.MediaManager.getInstance().stopRecord( diff --git a/assets/www/mmirf/manager/controllerManager.js b/assets/www/mmirf/manager/controllerManager.js index 4e6622d..011c94a 100644 --- a/assets/www/mmirf/manager/controllerManager.js +++ b/assets/www/mmirf/manager/controllerManager.js @@ -171,6 +171,13 @@ mobileDS.ControllerManager = (function(){ } + function removeFileExt(fileName){ + return fileName.replace(/\.[^.]+$/g,''); + } + function firstToUpperCase(name){ + return name[0].toUpperCase()+name.substr(1); + } + /** * This function gets the controller file names and builds a json object containing the controllers, views and partials and their paths. * @@ -179,82 +186,112 @@ mobileDS.ControllerManager = (function(){ * @private */ function getViewsAndPartialsForController(controllerName, controllerPath){ - var tmpJSON = Object(); - controllerPath = controllerPath + controllerName; + var utils = mobileDS.CommonUtils.getInstance(); + var consts = mobileDS.constants.getInstance(forBrowser); + + var partialsPrefix = utils.getPartialsPrefix(); + var controllerFilePath = controllerPath + controllerName; - controllerName=controllerName.replace(/\.[^.]+$/g,"");//remove file-extension - tmpJSON["fileName"]=controllerName; - var tmpViewPath = mobileDS.constants.getInstance(forBrowser).getViewPath() + controllerName; - controllerName=controllerName[0].toUpperCase()+controllerName.substr(1); + var rawControllerName= removeFileExt(controllerName); + controllerName = rawControllerName; - tmpJSON["name"]=controllerName; - tmpJSON["path"]=controllerPath; + var viewsPath = consts.getViewPath() + controllerName; -// tmpViews = mobileDS.CommonUtils.getInstance().getDirectoryContentsWithFilter(tmpViewPath, "[^"+mobileDS.CommonUtils.getInstance().getPartialsPrefix()+"]*.ehtml"); - var tmpViews = mobileDS.CommonUtils.getInstance().getDirectoryContentsWithFilter(tmpViewPath, "(?!"+mobileDS.CommonUtils.getInstance().getPartialsPrefix()+")*.ehtml"); + controllerName = firstToUpperCase(controllerName); + + var viewsFileList = utils.getDirectoryContentsWithFilter(viewsPath, "(?!"+partialsPrefix+")*.ehtml"); - var tmpViewArray = Array(); - var tmpViewJSON = null; var i, size; - for (i=0, size = tmpViews.length; i < size; ++i){ - tmpViewJSON = Object(); - tmpViewJSON["name"]=tmpViews[i].replace(/\.[^.]+$/g,""); - tmpViewJSON["path"]=tmpViewPath+"/"+tmpViews[i]; - tmpViewArray.push(tmpViewJSON); + var viewsList = []; + if(viewsFileList != null){ + for (i=0, size = viewsFileList.length; i < size; ++i){ + + viewsList.push({ + name: removeFileExt(viewsFileList[i]), + path: viewsPath+"/"+viewsFileList[i] + }); + } } - tmpJSON["views"]=tmpViewArray; -// tmpPartials = mobileDS.CommonUtils.getInstance().getDirectoryContentsWithFilter(tmpViewPath, mobileDS.CommonUtils.getInstance().getPartialsPrefix()+"*.ehtml"); - var tmpPartials = mobileDS.CommonUtils.getInstance().getDirectoryContentsWithFilter(tmpViewPath, mobileDS.CommonUtils.getInstance().getPartialsPrefix()+"*.ehtml"); + var partialsFileList = utils.getDirectoryContentsWithFilter(viewsPath, partialsPrefix+"*.ehtml"); - var tmpPartialArray = Array(); - var tmpPartialJSON = null; - for (i=0, size = tmpPartials.length; i < size; ++i){ - tmpPartialJSON = Object(); - // remove leading "$" indicating it is a partial - tmpPartialJSON["name"]=tmpPartials[i].replace(mobileDS.CommonUtils.getInstance().getPartialsPrefix(),"").replace(/\.[^.]+$/g,""); - tmpPartialJSON["path"]=tmpViewPath+"/"+tmpPartials[i]; - tmpPartialArray.push(tmpPartialJSON); - } - tmpJSON["partials"]=tmpPartialArray; - - + var partialsInfoList = []; + if(partialsFileList != null) { + for (i=0, size = partialsFileList.length; i < size; ++i){ + + partialsInfoList.push({ + // remove leading "~" indicating it is a partial + name: removeFileExt( partialsFileList[i].replace(partialsPrefix,'') ), + path: viewsPath+"/"+partialsFileList[i] + }); + } + } - var tmpHelperPath = mobileDS.constants.getInstance(forBrowser).getHelperPath(); - tmpHelperPath = tmpHelperPath.substring(0, tmpHelperPath.length-1);//remove trailing slash - var tmpHelpers = mobileDS.CommonUtils.getInstance().getDirectoryContentsWithFilter(tmpHelperPath, "(?!"+mobileDS.CommonUtils.getInstance().getPartialsPrefix()+")*.js"); + var helpersPath = consts.getHelperPath(); + helpersPath = helpersPath.substring(0, helpersPath.length-1);//remove trailing slash + var helpersFileList = utils.getDirectoryContentsWithFilter(helpersPath, "(?!"+partialsPrefix+")*.js"); - var tmpHelperJSON = null; - for(i=0, size = tmpHelpers.length; i < size; ++i){ - if(tmpHelpers[i].startsWith(tmpJSON["fileName"], true) && tmpHelpers[i].endsWith(mobileDS.constants.getInstance().getHelperSuffix()+'.js', true)){ - tmpHelperJSON = {}; - tmpHelperJSON["fileName"]= tmpHelpers[i].replace(/\.[^.]+$/g,""); - tmpHelperJSON["name"] = tmpHelperJSON["fileName"][0].toUpperCase()+tmpHelperJSON["fileName"].substr(1); - tmpHelperJSON["path"]=tmpHelperPath+"/"+tmpHelpers[i]; - } + var helperSuffix = mobileDS.constants.getInstance().getHelperSuffix(); + var helperInfo = null; + if(helpersFileList != null){ + + for(i=0, size = helpersFileList.length; i < size; ++i){ + if(helpersFileList[i].startsWith(controllerName, true) && helpersFileList[i].endsWith(helperSuffix+'.js', true)){ + + var name = removeFileExt(helpersFileList[i]); + helperInfo = { + fileName: name, + name: firstToUpperCase(name), + path: helpersPath+"/"+helpersFileList[i] + }; + } + } + } - tmpJSON["helper"]=tmpHelperJSON; - - - var tmpLayoutPath = mobileDS.constants.getInstance(forBrowser).getLayoutPath(); - tmpLayoutPath = tmpLayoutPath.substring(0, tmpLayoutPath.length-1);//remove trailing slash - var tmpLayouts = mobileDS.CommonUtils.getInstance().getDirectoryContentsWithFilter(tmpLayoutPath, "(?!"+mobileDS.CommonUtils.getInstance().getPartialsPrefix()+")*.ehtml"); + var layoutsPath = consts.getLayoutPath(); + layoutsPath = layoutsPath.substring(0, layoutsPath.length-1);//remove trailing slash + var layoutsFileList = utils.getDirectoryContentsWithFilter(layoutsPath, "(?!"+partialsPrefix+")*.ehtml"); - var tmpLayoutJSON = null; - for(i=0, size = tmpLayouts.length; i < size; ++i){ - if( tmpLayouts[i].startsWith(tmpJSON["fileName"], true) ){ - tmpLayoutJSON = {}; - tmpLayoutJSON["fileName"]= tmpLayouts[i].replace(/\.[^.]+$/g,""); - tmpLayoutJSON["name"] = tmpLayoutJSON["fileName"]; - tmpLayoutJSON["path"]=tmpLayoutPath+"/"+tmpLayouts[i]; + var layoutInfo = null; + for(i=0, size = layoutsFileList.length; i < size; ++i){ + + if( layoutsFileList[i].startsWith(controllerName, true) ){ + + var layoutName = removeFileExt(layoutsFileList[i]); + layoutInfo = { + fileName: layoutName, + name: layoutName, + path: layoutsPath+"/"+layoutsFileList[i], + }; + + break; } } - tmpJSON["layout"]=tmpLayoutJSON; + + var ctrlInfo = { + fileName: rawControllerName, + name: controllerName, + path: controllerFilePath, + + views: viewsList, + partials: partialsInfoList, + helper: helperInfo, + layout: layoutInfo + }; + + //TEST compare info with "reference" result from original impl.: +// var test ={ +// application: '{"fileName":"application","name":"Application","path":"controllers/application.js","views":[{"name":"login","path":"views/application/login.ehtml"},{"name":"registration","path":"views/application/registration.ehtml"},{"name":"welcome","path":"views/application/welcome.ehtml"}],"partials":[{"name":"languageMenu","path":"views/application/~languageMenu.ehtml"}],"helper":{"fileName":"applicationHelper","name":"ApplicationHelper","path":"helpers/applicationHelper.js"},"layout":{"fileName":"application","name":"application","path":"views/layouts/application.ehtml"}}', +// calendar: '{"fileName":"calendar","name":"Calendar","path":"controllers/calendar.js","views":[{"name":"create_appointment","path":"views/calendar/create_appointment.ehtml"}],"partials":[],"helper":null,"layout":null}' +// }; +// +// var isEqual = (JSON.stringify(ctrlInfo) === test[ctrlInfo.fileName]); +// console[isEqual? 'info':'error']('compliance-test: isEual? '+ isEqual); - return tmpJSON; + return ctrlInfo; } /** diff --git a/assets/www/mmirf/manager/dialog/dialogEngine.js b/assets/www/mmirf/manager/dialog/dialogEngine.js index c9c74ef..58082df 100644 --- a/assets/www/mmirf/manager/dialog/dialogEngine.js +++ b/assets/www/mmirf/manager/dialog/dialogEngine.js @@ -259,9 +259,14 @@ mobileDS.DialogEngine = (function(){ * @function raise * @param {String} eventName The name of the event which is to be raised * @param {Object} data Data belonging to the event + * @throws {Error} if invoked when the internal event/state engine is not initialized yet * @public */ - raise: function(eventName, data){ + raise: function(eventName, data){ + + if(!isInitialized){ + throw new Error('DialogEngine is not initialized yet, cannot process event "'+eventName+'"!'); + } if ((typeof data !== 'undefined') && (typeof data.Data === 'undefined')) { // Has data but didn't go through inputmanager @@ -273,13 +278,15 @@ mobileDS.DialogEngine = (function(){ // if (!(typeof data === "undefined")) { // alert("data " + data); // } else - if (eventName == 'exit') { - if (navigator != null) { - if(IS_DEBUG_ENABLED) console.debug('[DEBUG] now app is exiting!');//debug - - navigator.app.exitApp(); - } - } + +// if (eventName == 'exit') { +// if (navigator != null) { +// if(IS_DEBUG_ENABLED) console.debug('[DEBUG] now app is exiting!');//debug +// +// navigator.app.exitApp(); +// } +// } + // else if (!(typeof dialogStateChartInstance[eventName] === 'undefined')) { // if (typeof data !== 'undefined' && typeof data.Data !== 'undefined' && typeof data.Data.data !== 'undefined') { // dialogStateChartInstance[eventName](data.Data.data); @@ -294,7 +301,8 @@ mobileDS.DialogEngine = (function(){ // } //TODO is there a way to check, if eventName is defined in interpreter-model? - else if (typeof data !== 'undefined' && typeof data.Data !== 'undefined' && typeof data.Data.data !== 'undefined') { +// else + if (typeof data !== 'undefined' && typeof data.Data !== 'undefined' && typeof data.Data.data !== 'undefined') { eventGenerator.gen(eventName, data.Data.data); } else { diff --git a/assets/www/mmirf/manager/dialog/inputEngine.js b/assets/www/mmirf/manager/dialog/inputEngine.js index 42f590b..b5d98ce 100644 --- a/assets/www/mmirf/manager/dialog/inputEngine.js +++ b/assets/www/mmirf/manager/dialog/inputEngine.js @@ -176,10 +176,15 @@ mobileDS.InputEngine = (function(){ * @function raise * @param {String} eventName Name of the event to be raised * @param {Object} data Data of the event + * @throws {Error} if invoked when the internal event/state engine is not initialized yet * @public */ raise: function(eventName, data){ + if(!isInitialized){ + throw new Error('InputEngine is not initialized yet, cannot process event "'+eventName+'"!'); + } + if(IS_DEBUG_ENABLED) console.debug("InputEngine raising event : '" + eventName + "' in state '"+ stateHistory[stateHistory.length-1] + "' with data "+JSON.stringify(data));//debug // if (!(typeof InputDescription_instance[eventName] === "undefined")) { diff --git a/assets/www/mmirf/manager/mediaManager.js b/assets/www/mmirf/manager/mediaManager.js index 803faf5..8e2e83a 100644 --- a/assets/www/mmirf/manager/mediaManager.js +++ b/assets/www/mmirf/manager/mediaManager.js @@ -43,24 +43,57 @@ mobileDS.MediaManager = (function(){ 'maryTextToSpeech.js'), 'android': new Array('cordovaAudioOutput.js', 'nuanceAudioInput.js', - 'maryTextToSpeech.js') + 'nuanceTextToSpeech.js') }; var loadPlugin = function loadPlugin (filePath, successCallback, failureCallback){ try { mobileDS.CommonUtils.getInstance().loadScript(mobileDS.constants.getMediaPluginPath()+filePath, function(){ - //TODO keine globale Variable if (typeof newMediaPlugin !== 'undefined' && newMediaPlugin){ newMediaPlugin.initialize(function(functions){ jQuery.extend(true,instance,functions); newMediaPlugin = null; if (successCallback) successCallback(); - }); + }, instance); } else { console.error('Error loading MediaPlugin '+filePath + ' - no newMediaPlugin set!'); if (failureCallback) failureCallback(); } }); + + +// //NOTE: this new loading-mechanism avoids global VARIABLES by +// // * loading the script as text +// // * evaluating the script-text (i.e. executing the JavaScript) within an local context +// //i.e. eval(..) is used ... +// $.ajax({ +// async: true, +// dataType: "text", +// url: mobileDS.constants.getMediaPluginPath()+filePath, +// success: function(data){ +// +// //add "dummy-export-code" to script-text +// // -> for "retrieving" the media-plugin implementation as return value from eval(..) +// var LOAD_MODULE_TEMPLATE_POSTFIX = 'var dummy = newMediaPlugin; dummy'; +// var newMediaPlugin = eval(data + LOAD_MODULE_TEMPLATE_POSTFIX); +// +// if (typeof newMediaPlugin !== 'undefined' && newMediaPlugin){ +// newMediaPlugin.initialize(function(functions){ +// jQuery.extend(true,instance,functions); +// newMediaPlugin = null; +// if (successCallback) successCallback(); +// }, instance); +// } +// else { +// console.error('Error loading MediaPlugin '+filePath + ' - no newMediaPlugin set!'); +// if (failureCallback) failureCallback(); +// } +// } +// }).fail(function(jqxhr, settings, err){ +// // print out an error message +// var errMsg = err && err.stack? err.stack : err; +// console.error("[" + settings + "] " + JSON.stringify(jqxhr) + " -- " + partial.path + ": "+errMsg); //failure +// }); }catch (e){ console.error('Error loading MediaPlugin '+filePath+': '+e); if (failureCallback) failureCallback(); @@ -69,6 +102,9 @@ mobileDS.MediaManager = (function(){ }; //those are the standard audioInput procedures, that should be implemented by a loaded file function constructor(){ + + var listener = new Dictionary(); + return { //TODO add API documentation @@ -132,6 +168,17 @@ mobileDS.MediaManager = (function(){ console.error("Audio Output: canceling Text To Speech is not supported."); } }, + setTextToSpeechVolume: function(newValue){ + console.error("Audio Output: set volume for Text To Speech is not supported."); + }, + cancelRecognition: function(successCallBack,failureCallBack){ + if(failureCallBack){ + failureCallBack("Audio Output: canceling Recognize Speech is not supported."); + } + else { + console.error("Audio Output: canceling Recognize Speech is not supported."); + } + }, playURL: function(url, successCallback, failureCallBack){ if(failureCallBack){ failureCallBack("Audio Output: play audio from URL is not supported."); @@ -148,6 +195,56 @@ mobileDS.MediaManager = (function(){ console.error("Audio Output: create audio from URL is not supported."); } } + /** + * @param eventName String + * @param eventHandler Function + */ + , addListener: function(eventName, eventHandler){ + var list = listener.get(eventName); + if(!list){ + list = [eventHandler]; + listener.put(eventName, list); + } + else { + list.push(eventHandler); + } + } + /** + * @param eventName String + * @param eventHandler Function + */ + , removeListener: function(eventName, eventHandler){ + var isRemoved = false; + var list = listener.get(eventName); + if(list){ + var size = list.length; + for(var i = size - 1; i >= 0; --i){ + if(list[i] === eventHandler){ + + //move all handlers after i by 1 index-position ahead: + for(var j = size - 1; j > i; --j){ + list[j-1] = list[j]; + } + //remove last array-element + list.splice(size-1, 1); + + isRemoved = true; + break; + } + } + } + return isRemoved; + } + /** + * @returns Array of event-handlers; empty, if there are no event handlers for eventName + */ + , getListeners: function(eventName){ + var list = listener.get(eventName); + if(list){ + return list; + } + return []; + } }; }; function getPluginsToLoad(){ @@ -183,18 +280,43 @@ mobileDS.MediaManager = (function(){ /** * Object containing the instance of the class {{#crossLink "audioInput"}}{{/crossLink}} * + * If listenerList is provided, each listener will be registered after the instance + * is initialized, but before media-plugins (i.e. environment specfific implementations) are + * loaded. + * Each entry in the listenerList must have fields name (String) and + * listener (Function), where + *
+ * name: is the name of the event + *
+ * listener: is the listener implementation (the signature/arguments of the listener function depends + * on the specific event for which the listener will be registered) + * + * * @method getInstance + * @param {Array} [listenerList] OPTIONAL a list of listeners that should be registered * @return {Object} Object containing the instance of the class {{#crossLink "MediaManager"}}{{/crossLink}} * @public */ - create: function(successCallback, failureCallback){ + create: function(successCallback, failureCallback, listenerList){ if (instance === null) { jQuery.extend(true,this,constructor()); instance = this; + + if(listenerList){ + for(var i=0, size = listenerList.length; i < size; ++i){ + instance.addListener(listenerList[i].name, listenerList[i].listener); + } + } + var pluginArray = getPluginsToLoad(); loadAllPlugins(pluginArray,successCallback, failureCallback); } + else if(listenerList){ + for(var i=0, size = listenerList.length; i < size; ++i){ + instance.addListener(listenerList[i].name, listenerList[i].listener); + } + } return this; }, getInstance: function(){ diff --git a/assets/www/mmirf/manager/presentationManager.js b/assets/www/mmirf/manager/presentationManager.js index d89c52a..2cd2f6e 100644 --- a/assets/www/mmirf/manager/presentationManager.js +++ b/assets/www/mmirf/manager/presentationManager.js @@ -42,8 +42,6 @@ var mobileDS = window.mobileDS || {}; -var pageIndex = 0; - /** * A class to manage the displayed content by using views and partials.
@@ -82,6 +80,20 @@ mobileDS.PresentationManager = (function(){ */ var DEFAULT_CONTROLLER_NAME = 'Application'; + /** + * Counter that keeps track of the number of times, that a view is rendered + * + * NOTE: for implementation specific reasons, jQuery Mobile requires that + * each page has a different ID. This pageIndex is used to generating + * such a unique ID, by increasing the number on each page-change + * (i.e. by rendering a view) and appending it to the page's ID/name. + * + * @property pageIndex + * @type Integer + * @private + */ + var pageIndex = 0; + /** * Constructor-Method of Class {@link mobileDS.PresentationManager}
* It invokes the loading of layouts, views and partials. @@ -261,6 +273,61 @@ mobileDS.PresentationManager = (function(){ return createLookupKey(ctrl, partial, partialSeparator); } + + function loadPrecompiledView(rawViewData, targetpath, fail){ + + if(! isUpToDate(rawViewData, targetpath)){ + if(fail) fail('Precompiled view file is outdated!'); + else console.warn('Outdated pre-compiled view at: '+targetpath); + } + + console.error('Loading pre-compiled view: '+targetpath);//FIXME DEBUG + + mobileDS.CommonUtils.getInstance().getLocalScript( //scriptUrl, success, fail) + targetpath, null, fail + ); + } + + var isUsePreCompiledViews = mobileDS.ConfigurationManager.getInstance().get('usePrecompiledViews'); + isUsePreCompiledViews = typeof isUsePreCompiledViews === 'undefined' ? false : isUsePreCompiledViews === 'false'? false : isUsePreCompiledViews? true : false; + + var checksumUtils = mobileDS.ChecksumUtils.init(); + /** + * Read the checksum file that was created when the pre-compiled view was created: + * + * it contains the view's size (the length of its String representation) and MD5 hash. + */ + function isUpToDate(viewContent, preCompiledViewPath){ + //'.js' -> '.checksum.txt' + var viewVerificationInfoPath = + preCompiledViewPath.substring(0, preCompiledViewPath.length - 3) + + checksumUtils.getFileExt(); + + + console.error('verifying that pre-compiled view is up-to-date at '+preCompiledViewPath);//FIXME DEBUG + + var isCompiledViewUpToDate = false; + + $.ajax({ + async: false,//<-- use "SYNC" modus here + dataType: "text", + url: viewVerificationInfoPath, + success: function(data){ + + //compare raw String to checksum-data from file + isCompiledViewUpToDate = checksumUtils.isSame(viewContent, data); + } + }).fail(function(jqxhr, settings, err){ + // print out an error message + var errMsg = err && err.stack? err.stack : err; + console.error("[" + settings + "] Could not load '" + viewVerificationInfoPath + "': "+errMsg); //failure + }); + + + console.error((isCompiledViewUpToDate? '+++++++++':'--------')+'pre-compiled view is NOT up-to-date! -> '+preCompiledViewPath);//FIXME DEBUG + return isCompiledViewUpToDate; + } + /** * This function loads the layouts for every controller and puts the name of the layouts into the layouts array. * @@ -274,21 +341,42 @@ mobileDS.PresentationManager = (function(){ var ctrlNames = mobileDS.ControllerManager.getInstance().getControllerNames(); for(var i=0, size = ctrlNames.length; i < size; ++i){ var ctrl = mobileDS.ControllerManager.getInstance().getController( ctrlNames[i] ); - var layoutDef = ctrl.getLayout(); - if(layoutDef){ + var layoutInfo = ctrl.getLayout(); + + + if(layoutInfo){ + + var genPath = mobileDS.constants.getInstance().getCompiledLayoutPath()//TODO add compiled-path to view-info object (and read it from file-structure/JSON) + + layoutInfo.fileName + '.js'; + $.ajax({ async: false, dataType: "text", - url: mobileDS.constants.getInstance(forBrowser).getLayoutPath() + layoutDef["fileName"] + '.ehtml', + url: mobileDS.constants.getInstance(forBrowser).getLayoutPath() + layoutInfo.fileName + '.ehtml', success: function(data){ - var layout = new Layout(ctrl.getName(), data); - layouts.put(layout.getName(), layout);//[layoutIndex++] = layout; + + if(isUsePreCompiledViews){ + + loadPrecompiledView(data, genPath, function(err){ + console.error('Could not load precompiled layout from "'+genPath+'", because: '+err); + + var layout = new Layout(ctrl.getName(), data); + layouts.put(layout.getName(), layout); + }); + + } + else { + var layout = new Layout(ctrl.getName(), data); + layouts.put(layout.getName(), layout); + } } }); + +// });//FIXME TEST + } } } - /** * This function actually loads the views for every controller, creates an instance of a view class and puts the view instance in the views array.
@@ -301,28 +389,37 @@ mobileDS.PresentationManager = (function(){ * @async */ function loadViews(){ -// function getViewPath(name, controller){ -// var returnpath = ""; -// $.each(controller.getViews(), function(index, view){ -// if (name === view["name"]) { -// returnpath = view["path"]; -// return false; -// } -// }); -// return returnpath; -// } $.each(mobileDS.ControllerManager.getInstance().getControllerNames(), function(ctrlIndex, controllerName){ var controller = mobileDS.ControllerManager.getInstance().getController(controllerName); $.each(controller.getViews(), function(index, view){ + var genPath = mobileDS.constants.getInstance().getCompiledViewPath()//TODO add compiled-path to view-info object (and read it from file-structure/JSON) + + controllerName + '/' + view.name + '.js'; + $.ajax({ async: true, dataType: "text", - url: view.path,//getViewPath(view, controller), + url: view.path, success: function(data){ - var ctrlView = new View(controller, view.name , data); - views.put( createViewKey( controller.getName(), view.name), ctrlView);//[viewIndex++] = ctrlView; + + if(isUsePreCompiledViews){ + + loadPrecompiledView(data, genPath, function(err){ + console.error('Could not load precompiled view from '+genPath+'", because: '+err); + + var ctrlView = new View(controller, view.name , data); + views.put( createViewKey( controller.getName(), view.name), ctrlView); + + }); + + } + else { + + var ctrlView = new View(controller, view.name , data); + views.put( createViewKey( controller.getName(), view.name), ctrlView); + + } } }).fail(function(jqxhr, settings, err){ // print out an error message @@ -349,33 +446,42 @@ mobileDS.PresentationManager = (function(){ * @async */ function loadPartials(){ -// function getPartialPath(name, controller){ -// var returnpath = ""; -// $.each(controller.getPartials(), function(index, partial){ -// if (name === partial["name"]) { -// returnpath = partial["path"]; -// return false; -// } -// }); -// return returnpath; -// } $.each(mobileDS.ControllerManager.getInstance().getControllerNames(), function(ctrlIndex, controllerName){ var controller = mobileDS.ControllerManager.getInstance().getController(controllerName); $.each(controller.getPartials(), function(index, partial){ - $.ajax({ + + var prefix = mobileDS.CommonUtils.getInstance().getPartialsPrefix(); + var genPath = mobileDS.constants.getInstance().getCompiledViewPath()//TODO add compiled-path to view-info object (and read it from file-structure/JSON) + + controllerName + '/' +prefix+ partial.name + '.js'; + + $.ajax({ async: true, dataType: "text", - url: partial.path,//getPartialPath(partial, controller), + url: partial.path, success: function(data){ - var ctrlPartial = new Partial(controller, partial.name, data); - partials.put(createPartialKey( controller.getName(), partial.name), ctrlPartial);//[partialIndex++] = ctrlPartial; + + if(isUsePreCompiledViews){ + + loadPrecompiledView(data, genPath, function(err){ + console.error('Could not load precompiled partial from '+genPath+'", because: '+err); + + var ctrlPartial = new Partial(controller, partial.name, data); + partials.put(createPartialKey( controller.getName(), partial.name), ctrlPartial); + }); + + } + else { + var ctrlPartial = new Partial(controller, partial.name, data); + partials.put(createPartialKey( controller.getName(), partial.name), ctrlPartial); + } } }).fail(function(jqxhr, settings, err){ // print out an error message var errMsg = err && err.stack? err.stack : err; console.error("[" + settings + "] " + JSON.stringify(jqxhr) + " -- " + partial.path + ": "+errMsg); //failure }); + }); }); @@ -384,24 +490,12 @@ mobileDS.PresentationManager = (function(){ loadLayouts(); loadViews(); loadPartials(); - /** @lends mobileDS.PresentationManager.prototype */ return { //public members addLayout: function(layout){ -// var layout_replaced = false; -// $.each(layouts, function(index, l){ -// if (layouts[index].getName() == layout.getName()) { -// layouts[index] = layout; -// layout_replaced = true; -// return false; -// } -// }); -// if (layout_replaced == false){ -// layouts.push(layout); -// } layouts.put(layout.getName(), layout); }, /** @@ -435,19 +529,9 @@ mobileDS.PresentationManager = (function(){ }, addView: function(ctrlName, view){ -// var view_replaced = false; -// $.each(views, function(index, v){ -// if (views[index].getName() == view.getName()) { -// views[index] = view; -// view_replaced = true; -// return false; -// } -// }); -// if (view_replaced == false){ -// views.push(view); -// } views.put(createViewKey(ctrlName, view), view); }, + /** * This function returns a view object by name.
* @@ -460,12 +544,6 @@ mobileDS.PresentationManager = (function(){ getView: function(controllerName, viewName){ viewName = createViewKey(controllerName, viewName); var view = false; -// $.each(views, function(index, v){ -// if (v.getName() == viewName) { -// view = v; -// return false; -// } -// }); view = views.get(viewName); if(!view){ @@ -475,6 +553,9 @@ mobileDS.PresentationManager = (function(){ return view; }, + addPartial: function(ctrlName, partial){ + partials.put(createPartialKey(ctrlName, partial), partial); + }, /** * This function returns a partial object by name.
@@ -497,15 +578,6 @@ mobileDS.PresentationManager = (function(){ return false; } -// console.log("[PresentationManager] looking for " + partialName); -// for(var i=0, size = partials.length; i < size; ++i){ -//// console.log("partialName: " + p.getName()); -// if (partials[i].getName() == partialName) { -//// console.log("found " + partials[i].getName()); -// partial = partials[i]; -// break; -// } -// } partial = partials.get(partialKey); if(!partial){ console.error('[PresentationManager.getPartial]: could not find partial "'+partialName+'" for controller "'+ (controllerName?controllerName.getName():'undefined') +'"!'); @@ -585,17 +657,28 @@ mobileDS.PresentationManager = (function(){ }, - /** + /** * Gets the view for a controller, then executes helper methods on the view data. * The Rendering of the view is done by the {@link mobileDS.PresentationManager#doRenderView} method. - * Also stores the previous and current view with parameters.
- * - * @function renderView - * @param {String} ctrlName Name of the controller - * @param {String} viewName Name of the view to render - * @param {Object} data Optionally data for the view - * @public - */ + * Also stores the previous and current view with parameters.
+ * + * @function renderView + * @param {String} ctrlName Name of the controller + * @param {String} viewName Name of the view to render + * @param {Object} + * [data] optional data for the view. + * Currently same jQuery Mobile specific properties are supported:
+ * When these are present, they will be used for animating the + * page transition upon rendering. + * + *
{transition: STRING, reverse: BOOLEAN}
+ * where
+ * transition: the name for the transition (see jQuery Mobile Doc for possible values) + * DEFAULT: "none". + * reverse: whether the animation should in "forward" (FALSE) direction, or "backwards" (TRUE) + * DEFAULT: FALSE + * @public + */ renderView: function(ctrlName, viewName, data){ var ctrl = mobileDS.ControllerManager.getInstance().getController(ctrlName); @@ -653,22 +736,33 @@ mobileDS.PresentationManager = (function(){ /** - * Actually renders the View.
- * Fetches the layout for the controller, then fills the layout-template with the view content, while incorporating - * partials and contents that helper methods have provided. Then Dialogs are created and the pageContainer id is updated. - * At last all the content is localized using {@link mobileDS.LanguageManager#translateHTML}, and appended to the - * HTML document of the application, while the old one is removed - is probably not a good idea to use '$("div[data-role='page']").first().remove()' to - * remove the old page content: it's not robust.
- * At the end the on_page_load action is performed. - * - * @function doRenderView - * @param {String} ctrlName Name of the controller - * @param {String} viewName Name of the view to render - * @param {Object} view View object that is to be rendered - * @param {Object} ctrl Controller object of the view to render - * @param {Object} [data] optional data for the view - * @public - */ + * Actually renders the View.
+ * Fetches the layout for the controller, then fills the layout-template with the view content, while incorporating + * partials and contents that helper methods have provided. Then Dialogs are created and the pageContainer id is updated. + * At last all the content is localized using {@link mobileDS.LanguageManager#translateHTML}, and appended to the + * HTML document of the application, while the old one is removed - is probably not a good idea to use '$("div[data-role='page']").first().remove()' to + * remove the old page content: it's not robust.
+ * At the end the on_page_load action is performed. + * + * @function doRenderView + * @param {String} ctrlName Name of the controller + * @param {String} viewName Name of the view to render + * @param {Object} view View object that is to be rendered + * @param {Object} ctrl Controller object of the view to render + * @param {Object} + * [data] optional data for the view. + * Currently same jQuery Mobile specific properties are supported:
+ * When these are present, they will be used for animating the + * page transition upon rendering. + * + *
{transition: STRING, reverse: BOOLEAN}
+ * where
+ * transition: the name for the transition (see jQuery Mobile Doc for possible values) + * DEFAULT: "none". + * reverse: whether the animation should in "forward" (FALSE) direction, or "backwards" (TRUE) + * DEFAULT: FALSE + * @public + */ doRenderView: function(ctrlName, viewName, view, ctrl, data){ var layout = instance.getLayout(ctrlName, true); @@ -693,8 +787,8 @@ mobileDS.PresentationManager = (function(){ //TODO do localization rendering for layout (i.e. none-body- or dialogs-content) var pg = new RegExp("pageContainer", "ig"); - var oldId = "#pageContainer" + pageIndex; - + var oldId = "#pageContainer" + pageIndex;//TODO make "pageContainer" a CONSTANT + // get old content from page var oldContent = $(oldId); if(oldContent.length < 1 && oldId == '#pageContainer0'){ @@ -718,6 +812,9 @@ mobileDS.PresentationManager = (function(){ } var newPage = $(layoutBody); + ctrl.performIfPresent('before_page_load', data);//MODIFICATION for lever: added before_page_load hook! +// ctrl.performIfPresent('before_page_load_'+viewName, data); + //'load' new content into the page (using jQuery mobile) newPage.appendTo($.mobile.pageContainer); diff --git a/assets/www/mmirf/manager/settings/configurationManager.js b/assets/www/mmirf/manager/settings/configurationManager.js index 600e311..0b98d86 100644 --- a/assets/www/mmirf/manager/settings/configurationManager.js +++ b/assets/www/mmirf/manager/settings/configurationManager.js @@ -82,11 +82,14 @@ mobileDS.ConfigurationManager = (function(){ if(data){ var jsonData = data;//jQuery.parseJSON( data ); - //get & set language setting - if(jsonData.language && jsonData.language != mobileDS.LanguageManager.getInstance().getLanguage()){ - mobileDS.LanguageManager.getInstance().setLanguage(jsonData.language); - if(IS_DEBUG_ENABLED) console.debug("ConfigurationManager.constructor: setting language to "+ jsonData.language);//debug - } + //DISABLED: avoid cyclic dependency LanguageManager <-> ConfigurationManager + // & avoid "private" knowledge about LanguageManager + // -> now LanguageManager "pulls" language configuration from ConfigurationManager +// //get & set language setting +// if(jsonData.language && jsonData.language != mobileDS.LanguageManager.getInstance().getLanguage()){ +// mobileDS.LanguageManager.getInstance().setLanguage(jsonData.language); +// if(IS_DEBUG_ENABLED) console.debug("ConfigurationManager.constructor: setting language to "+ jsonData.language);//debug +// } configData = jsonData; } @@ -103,7 +106,11 @@ mobileDS.ConfigurationManager = (function(){ * *

This does not return the language of the configuration, but is a * shortcut for {@link mobileDS.LanguageManager#getLanguage}. - * + * + * + * @deprecated use mobileDS.LanguageManager.getInstance().getLanguage() instead! + * + * * @function getLanguage * @returns {String} The currently used language * @public @@ -116,6 +123,9 @@ mobileDS.ConfigurationManager = (function(){ * *

This does not set the language of the configuration, but is a * shortcut for {@link mobileDS.LanguageManager#setLanguage}. + * + * + * @deprecated use mobileDS.LanguageManager.getInstance().setLanguage(lang) instead! * * @function setLanguage * @param {String} lang The language which is to be used diff --git a/assets/www/mmirf/mvc/controllers/controller.js b/assets/www/mmirf/mvc/controllers/controller.js index e9ed35a..2cb2e00 100644 --- a/assets/www/mmirf/mvc/controllers/controller.js +++ b/assets/www/mmirf/mvc/controllers/controller.js @@ -150,7 +150,7 @@ Controller.prototype.loadHelper = function(name, helperPath){ console.warn('Could not determine contents for directory "'+path+'"'); return; ////////////////////// EARLY EXIT ////////////////////////////// } - else if(! $.isArray(dirContents) || dirContents.length < 1){ + else if(! mobileDS.CommonUtils.getInstance().isArray(dirContents) || dirContents.length < 1){ console.warn('Invalid information for contents of directory "'+path+'": '+dirContents); return; ////////////////////// EARLY EXIT ////////////////////////////// } @@ -269,14 +269,10 @@ Controller.prototype.getHelper = function(){ * @public */ Controller.prototype.parseViews = function(viewDefs){ - var self = this; - var i = 0; - $.each(viewDefs, function(index, view){ - var viewName = view['name']; - self.views[i] = viewName; - i++; - }); + for(var i=0, size = viewDefs.length; i < size; ++i){ + this.views.push(viewDefs[i].name); + } }; @@ -290,14 +286,10 @@ Controller.prototype.parseViews = function(viewDefs){ * @public */ Controller.prototype.parsePartials = function(partialDefs){ - var self = this; - var i = 0; - $.each(partialDefs, function(index, partial){ - var partialName = partial['name']; - self.partials[i] = partialName; - i++; - }); + for(var i=0, size = partialDefs.length; i < size; ++i){ + this.partials.push(partialDefs[i].name); + } }; diff --git a/assets/www/mmirf/mvc/parser/parseElementTypes.js b/assets/www/mmirf/mvc/parser/parseElementTypes.js index 9388ace..71e42fc 100644 --- a/assets/www/mmirf/mvc/parser/parseElementTypes.js +++ b/assets/www/mmirf/mvc/parser/parseElementTypes.js @@ -24,46 +24,398 @@ * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ +var mobileDS = window.mobileDS || {}; +mobileDS.parser = mobileDS.parser || {}; /** - * @module mobileDS.tools * + * + * @category parser + * @namespace This module contains constant Definitions for the Template Parser and Renderer. + * @public */ -var mobileDS = window.mobileDS || {}; -mobileDS.parser = mobileDS.parser || {}; mobileDS.parser.element = mobileDS.parser.element || {}; //TODO detect&use Object.defineProperty (if positively detected), e.g.: // Object.defineProperty(mobileDS.parser.element, 'INCLUDE_SCRIPT', {value : 0, writable : false, configurable : false, enumerable : true}); -/* +/** + * Constant for template expression type include script. * - * @category parser + *

+ * The template expression generates a script TAG. + * + *

+ * Properties of {@link mobileDS.parser.ParsingResult} objects with type INCLUDE_SCRIPT: + *

    + *
  • scriptPath: the path / URL to the resource
  • + *
  • scriptPathType: the type of the scriptPath + * field: one of StringLiteral, Identifier, IdentifierNameAmpersatStart
  • + *
+ * + * @type {Number} * @public */ mobileDS.parser.element.INCLUDE_SCRIPT = 0; +/** + * Constant for template expression type include style. + * + *

+ * The template expression generates a style reference, i.e. + * a link TAG with rel attribute stylesheet. + * + *

+ * Properties of {@link mobileDS.parser.ParsingResult} objects with type INCLUDE_STYLE: + *

    + *
  • stylePath:
  • + *
  • stylePathType: the type of the stylePath + * field: one of StringLiteral, Identifier, IdentifierNameAmpersatStart
  • + *
+ * + * @type {Number} + * @public + */ mobileDS.parser.element.INCLUDE_STYLE = 2; +/** + * Constant for template expression type localize. + * + *

+ * The template expression inserts a localized String. + * + *

+ * Properties of {@link mobileDS.parser.ParsingResult} objects with type LOCALIZE: + *

    + *
  • name: the name/identifier for the localized String
  • + *
  • nameType: the type of the name + * field: one of StringLiteral, Identifier, IdentifierNameAmpersatStart
  • + *
+ * + * @type {Number} + * @public + */ mobileDS.parser.element.LOCALIZE = 4; +/** + * Constant for template expression type yield declaration. + * + *

+ * The template expression declares a yield section. + * + *

+ * Properties of {@link mobileDS.parser.ParsingResult} objects with type YIELD_DECLARATION: + *

    + *
  • name: the name/identifier for the yield section
  • + *
  • nameType: the type of the name + * field: one of StringLiteral, Identifier, IdentifierNameAmpersatStart
  • + *
+ * + * @type {Number} + * @public + */ mobileDS.parser.element.YIELD_DECLARATION = 8; +/** + * Constant for template expression type yield content. + * + *

+ * The template expression specifies the content of a yield section. + * + *

+ * A yield section corresponds to a {@link ContentElement}: + * Its content can itself contain HTML content as well as template expressions. + * + * @type {Number} + * @public + */ mobileDS.parser.element.YIELD_CONTENT = 16; +/** + * Constant for template expression type code block. + * + *

+ * The template expression represents a compiled code block (script). + * + *

+ * Properties of {@link mobileDS.parser.ParsingResult} objects with type BLOCK: + *

    + *
  • scriptContent {String}: OPTIONALLY the script code as a String
  • + *
  • scriptEval {Function}: the compiled script code in form of a function. The + * function takes one argument: the current data-object.
  • + *
+ * + * @type {Number} + * @public + */ mobileDS.parser.element.BLOCK = 32; +/** + * Constant for template expression type code statement. + * + *

+ * The template expression represents a compiled code statement (script). + * + *

+ * Properties of {@link mobileDS.parser.ParsingResult} objects with type STATEMENT: + *

    + *
  • scriptContent {String}: OPTIONALLY the script code as a String
  • + *
  • scriptEval {Function}: the compiled script code in form of a function. The + * function takes one argument: the current data-object.
  • + *
+ * + * @type {Number} + * @public + */ mobileDS.parser.element.STATEMENT = 64; +/** + * Constant for template expression type helper. + * + *

+ * The template expression will invoke a function in the {@link Helper} instance + * (depending of the {@link Controller}, in which's view definition this template expression is used). + * + *

+ * Properties of {@link mobileDS.parser.ParsingResult} objects with type HELPER: + *

    + *
  • helper: the name of the helper function
  • + *
  • helperType: the type of the helper + * field: one of StringLiteral, Identifier, IdentifierNameAmpersatStart
  • + *
  • argsEval {Function}: OPTIONALLY compiled getter Function for retrieving the current ARGS + * (optional argument) of the helper expression. The function takes one argument: the current data-object.
  • + *
+ * + * @type {Number} + * @public + */ mobileDS.parser.element.HELPER = 128; +/** + * Constant for template expression type if. + * + *

+ * The template expression represents an if-expression, including the content-block + * that follows the condition-statement of the if-expression. + * + *

+ * Properties of {@link mobileDS.parser.ParsingResult} objects with type IF: + *

    + *
  • ifEval {Function}: the condition statement, that was compiled into a Function. The + * function takes one argument: the current data-object.
  • + *
  • content {ContentElement}: the HTML / template content that should be render, in case the + * if-expression evaluates to true.
  • + *
  • elseContent {@link mobileDS.parser.ParsingResult}: OPTIONALLY a ParsingResult + * representing an else-expression, see {@link mobileDS.parser.element.ELSE}.
  • + *
+ * + * @type {Number} + * @public + */ mobileDS.parser.element.IF = 256; +/** + * Constant for template expression type else. + * + *

+ * The template expression represents an else-expression (including its content-block); + * an else-expression may occur in combination with an if-expression, see {@link mobileDS.parser.element.IF}. + * + *

+ * Properties of {@link mobileDS.parser.ParsingResult} objects with type ELSE: + *

    + *
  • content {ContentElement}: the HTML / template content that should be render, in case the + * if-expression (to which the else-expression belongs) evaluates to false.
  • + *
+ * + * @type {Number} + * @public + */ mobileDS.parser.element.ELSE = 512; +/** + * Constant for template expression type for. + * + *

+ * The template expression represents for-expression (including its content-block); + * + *

+ * Properties of {@link mobileDS.parser.ParsingResult} objects with type FOR: + *

    + *
  • forControlType {String}: the type of for-loop, either FORITER or FORSTEP
  • + *
  • forInitEval {Function}: the initialization statement of the for-expression, compiled into + * a Function. The function takes one argument: the current data-object.
  • + * + *
  • FORITER: @for(PROP in OBJ){ ... }@ + *
      + *
    • forIterator {Object}: an iterator object with functions hasNext() : Boolean and + * next() : String (which returns the name of the property currently iterated).
    • + *
    • forPropName {String}: the variable name for the property which is currently iterated over.
    • + *
    + *
  • + *
  • FORSTEP: @for(INIT; CONDITION; INCREMENT){ ... }@ + *
      + *
    • forConditionEval {Function}: the condition statement of the for-expression, compiled into + * a Function. The function takes one argument: the current data-object.
    • + *
    • forIncrementEval {Function}: the increment statement of the for-expression, compiled into + * a Function. The function takes one argument: the current data-object.
    • + *
    + *
  • + *
  • content {ContentElement}: the HTML / template content that should be rendered + * during each iteration of the for-loop.
  • + *
+ * + * @type {Number} + * @public + */ mobileDS.parser.element.FOR = 1024; +/** + * Constant for template expression type render. + * + *

+ * The template expression renders a partial view into a view. + * + * + *

+ * Properties of {@link mobileDS.parser.ParsingResult} objects with type RENDER: + *

    + *
  • partial: the name of the partial view
  • + *
  • partialType: the type of the partial + * field: one of StringLiteral, Identifier, IdentifierNameAmpersatStart
  • + *
  • controller: the name of the controller, to which the partial view definition belongs
  • + *
  • controllerType: the type of the controller + * field: one of StringLiteral, Identifier, IdentifierNameAmpersatStart
  • + *
  • argsEval {Function}: OPTIONALLY compiled getter Function for retrieving the current ARGS + * (optional argument) of the render expression. The function takes one argument: the current data-object.
  • + *
+ * + * @type {Number} + * @public + */ mobileDS.parser.element.RENDER = 2048; +/** + * Constant for template expression type escape enter. + * + *

+ * The template expression represents an escape statement (when entering a template expression); + * escaping means, that the following sequence is not interpreted as template expression. + * + *

+ * Properties of {@link mobileDS.parser.ParsingResult} objects with type ESCAPE_ENTER: + *

    + *
  • text {String}: the text that will be rendered (i.e. without the escape-character(s) itself).
  • + *
+ * + * @type {Number} + * @public + */ mobileDS.parser.element.ESCAPE_ENTER = 4096; +/** + * Constant for template expression type escape exit. + * + *

+ * The template expression represents an escape statement (when exiting a template expression); + * escaping means, that the following sequence is not interpreted as template expression. + * + *

+ * Properties of {@link mobileDS.parser.ParsingResult} objects with type ESCAPE_EXIT: + *

    + *
  • text {String}: the text that will be rendered (i.e. without the escape-character(s) itself).
  • + *
+ * + * @type {Number} + * @public + */ mobileDS.parser.element.ESCAPE_EXIT = 8192; +/** + * Constant for for-expression type iter ("iteration"). + * + *

+ * This type identifies an ITERATION type for-expression. + * + * + * @type {Number} + * @public + * @see mobileDS.parser.element.FOR + */ mobileDS.parser.element.FOR_TYPE_ITER = 16384; +/** + * Constant for for-expression type step ("step-wise"). + * + *

+ * This type identifies an STEP-wise type for-expression. + * + * + * @type {Number} + * @public + * @see mobileDS.parser.element.FOR + */ mobileDS.parser.element.FOR_TYPE_STEP = 32768; +/** + * Constant for template expression type variable declaration. + * + *

+ * The template expression represents a variable declaration. + * + *

+ * Properties of {@link mobileDS.parser.ParsingResult} objects with type VAR_DECLARATION: + *

    + *
  • name: the name for the variable (without the leading @ of template variables)
  • + *
  • nameType: the type of the name field: StringLiteral
  • + *
+ * + * @type {Number} + * @public + */ mobileDS.parser.element.VAR_DECLARATION = 65536; +/** + * Constant for template expression type variable reference. + * + *

+ * This template expression is used within JavaScript code blocks / statements, + * in order to replace the occurrence of the template variable by an + * appropriate getter function, that retrieves the current value of the variable + * during the execution of the script code. + * + *

+ * NOTE: this is used during compilation of the Function objects, used e.g. by BLOCK, STATEMENT, FOR etc. + * + *

+ * NOTE: the name of the variable is extracted from the raw-template text during processing/compilation + * of the Functions. + * + * @type {Number} + * @public + */ mobileDS.parser.element.VAR_REFERENCE = 131072; +/** + * Constant for template expression type comment. + * + *

+ * The template expression represents a template-comment: the content of the comment will be ignored + * (that is: removed during processing of the template). + * + * @type {Number} + * @public + */ mobileDS.parser.element.COMMENT = 262144; +/** + * Constant for data name that is used to hold the current data: + * this name will be used for the argument name of generated/compiled Functions, and in the Function code block + * appropriate getter/setter expression will be inserted. + * + * @type {String} + * @public + */ mobileDS.parser.element.DATA_NAME = '__$$DATA$$__'; +/** + * Constant for the name of the reserved data variable: the optional data argument is passed in + * into rendering-calls for views, layouts etc. (see PresentationManager) + * + * @type {String} + * @public + */ mobileDS.parser.element.DATA_ARGUMENT_NAME = '@data'; +/** + * Constant for the name of the reserved argument variable: some template expressions + * have an (optional) argument argument, which can be accessed using the variable name + * within the template expressions inner content-/code-blocks. + * + * @type {String} + * @public + */ mobileDS.parser.element.ARGUMENT_ARGUMENT_NAME = '@argument'; diff --git a/assets/www/mmirf/mvc/parser/parsingResult.js b/assets/www/mmirf/mvc/parser/parsingResult.js index 2167df6..dbb1c4a 100644 --- a/assets/www/mmirf/mvc/parser/parsingResult.js +++ b/assets/www/mmirf/mvc/parser/parsingResult.js @@ -40,16 +40,142 @@ mobileDS.parser = mobileDS.parser || {}; /** * ParsingResult represents an element that was detected during parsing. * + *

* The detected element is referenced by the properties start and end * that refer to the start-index and end-index within the parsed text. * + *

* The ParsingResult has a type property which refers to the kind of element - * that was detected (see constants in mobileDS.parser.element). + * that was detected (see constants in {@link mobileDS.parser.element}). * - * In addition the ParsingResult may have several properties that depend of its type. In general, + *

+ * In addition, the ParsingResult may have several properties that depend of its type. In general, * these properties refer to detected parts of the element (e.g. for a invocation-statement, these * may refer to its arguments). * + * + *

+ * Properties for INCLUDE_SCRIPT type: + *

    + *
  • scriptPath: the path / URL to the resource
  • + *
  • scriptPathType: the type of the scriptPath + * field: one of StringLiteral, Identifier, IdentifierNameAmpersatStart
  • + *
+ *

+ * Properties for INCLUDE_STYLE type: + *

    + *
  • stylePath:
  • + *
  • stylePathType: the type of the stylePath + * field: one of StringLiteral, Identifier, IdentifierNameAmpersatStart
  • + *
+ *

+ * Properties for LOCALIZE type: + *

    + *
  • name: the name/identifier for the localized String
  • + *
  • nameType: the type of the name + * field: one of StringLiteral, Identifier, IdentifierNameAmpersatStart
  • + *
+ *

+ * Properties for YIELD_DECLARATION type: + *

    + *
  • name: the name/identifier for the yield section
  • + *
  • nameType: the type of the name + * field: one of StringLiteral, Identifier, IdentifierNameAmpersatStart
  • + *
+ * Properties for BLOCK type: + *
    + *
  • scriptContent {String}: OPTIONALLY the script code as a String
  • + *
  • scriptEval {Function}: the compiled script code in form of a function. The + * function takes one argument: the current data-object.
  • + *
+ *

+ * Properties for STATEMENT type: + *

    + *
  • scriptContent {String}: OPTIONALLY the script code as a String
  • + *
  • scriptEval {Function}: the compiled script code in form of a function. The + * function takes one argument: the current data-object.
  • + *
+ *

+ * Properties for HELPER type: + *

    + *
  • helper: the name of the helper function
  • + *
  • helperType: the type of the helper + * field: one of StringLiteral, Identifier, IdentifierNameAmpersatStart
  • + *
  • argsEval {Function}: OPTIONALLY compiled getter Function for retrieving the current ARGS + * (optional argument) of the helper expression. The function takes one argument: the current data-object.
  • + *
+ *

+ * Properties for IF type: + *

    + *
  • ifEval {Function}: the condition statement, that was compiled into a Function. The + * function takes one argument: the current data-object.
  • + *
  • content {ContentElement}: the HTML / template content that should be render, in case the + * if-expression evaluates to true.
  • + *
  • elseContent {@link mobileDS.parser.ParsingResult}: OPTIONALLY a ParsingResult + * representing an else-expression, see {@link mobileDS.parser.element.ELSE}.
  • + *
+ *

+ * Properties for ELSE type: + *

    + *
  • content {ContentElement}: the HTML / template content that should be render, in case the + * if-expression (to which the else-expression belongs) evaluates to false.
  • + *
+ *

+ * Properties for FOR type: + *

    + *
  • forControlType {String}: the type of for-loop, either FORITER or FORSTEP
  • + *
  • forInitEval {Function}: the initialization statement of the for-expression, compiled into + * a Function. The function takes one argument: the current data-object.
  • + * + *
  • FORITER: @for(PROP in OBJ){ ... }@ + *
      + *
    • forIterator {Object}: an iterator object with functions hasNext() : Boolean and + * next() : String (which returns the name of the property currently iterated).
    • + *
    • forPropName {String}: the variable name for the property which is currently iterated over.
    • + *
    + *
  • + *
  • FORSTEP: @for(INIT; CONDITION; INCREMENT){ ... }@ + *
      + *
    • forConditionEval {Function}: the condition statement of the for-expression, compiled into + * a Function. The function takes one argument: the current data-object.
    • + *
    • forIncrementEval {Function}: the increment statement of the for-expression, compiled into + * a Function. The function takes one argument: the current data-object.
    • + *
    + *
  • + *
  • content {ContentElement}: the HTML / template content that should be rendered + * during each iteration of the for-loop.
  • + *
+ *

+ * Properties for RENDER type: + *

    + *
  • partial: the name of the partial view
  • + *
  • partialType: the type of the partial + * field: one of StringLiteral, Identifier, IdentifierNameAmpersatStart
  • + *
  • controller: the name of the controller, to which the partial view definition belongs
  • + *
  • controllerType: the type of the controller + * field: one of StringLiteral, Identifier, IdentifierNameAmpersatStart
  • + *
  • argsEval {Function}: OPTIONALLY compiled getter Function for retrieving the current ARGS + * (optional argument) of the render expression. The function takes one argument: the current data-object.
  • + *
+ *

+ * Properties for ESCAPE_ENTER type: + *

    + *
  • text {String}: the text that will be rendered (i.e. without the escape-character(s) itself).
  • + *
+ *

+ * Properties for ESCAPE_EXIT type: + *

    + *
  • text {String}: the text that will be rendered (i.e. without the escape-character(s) itself).
  • + *
+ *

+ * Properties for VAR_DECLARATION type: + *

    + *
  • name: the name for the variable (without the leading @ of template variables)
  • + *
  • nameType: the type of the name field: StringLiteral
  • + *
+ * + *

+ * * @class ParsingResult * @param {org.antlr.runtime.CommonTokenStream} thetokens (optional) the TokenStream that corresponds to this parsed element; * when provided, the TokenStream is used to set the start- and end- @@ -168,10 +294,22 @@ mobileDS.parser.ParsingResult.prototype.getValue = function(rawPropertyValue, pr return rawPropertyValue.substring(1, rawPropertyValue.length-1); } else if(proptertyType === 'Identifier'){ - return data['@' + rawPropertyValue]; + if(data){ + return data['@' + rawPropertyValue]; + } + else { + //just return variable name + return rawPropertyValue; + } } else if(proptertyType === 'IdentifierNameAmpersatStart'){ - return data[rawPropertyValue]; + if(data){ + return data[rawPropertyValue]; + } + else { + //just return variable name, but remove leading @: + return rawPropertyValue.substring(1); + } } else if(proptertyType === 'OBJECT'){ return rawPropertyValue;//TODO @@ -315,3 +453,88 @@ mobileDS.parser.ParsingResult.prototype.getCallDataType = function(){ return this.dataType; }; +mobileDS.parser.ParsingResult.prototype.stringify = function(){ + + //TODO use constants for lists + + //typed properties: + // for each typed properties '' there is an additional property with name 'Type' + // (both of these properties are Strings themselves) + var typedPropList = [ + 'scriptPath', + 'stylePath', + 'name', + 'helper', + 'partial', + 'controller' + ]; + + //primitive-type properties: + // write values 'as is' for these properties + var propList = [ + 'start', + 'end', + 'type', + 'dataType', + 'text', + 'forControlType', + 'forPropName' + ]; + + //"stringify-able" object properties: + var strPropList = [ + 'content', + 'elseContent' + ]; + + //function properties: + var funcPropList = [ + 'scriptEval', + 'argsEval', + 'ifEval', + 'forInitEval', + 'forIterator', + 'forConditionEval', + 'forIncrementEval' + ]; + + + //function for iterating over the property-list and generating JSON-like entries in the string-buffer + var appendStringified = mobileDS.parser.appendStringified; + + var sb = ['mobileDS.parser.restoreObject({ classConstructor: ["mobileDS","parser","ParsingResult"]', ',']; + + //TODO property dataPos: {start: Number, end: Number} + if(this['dataPos']){ + sb.push( 'dataPos:{start:' ); + sb.push( this.dataPos.start ); + sb.push( ',end:' ); + sb.push( this.dataPos.end ); + sb.push( '}' ); + //NOTE: need to add comma in a separate entry + // (-> in order to not break the removal method of last comma, see below) + sb.push( ',' ); + } + + + appendStringified(this, typedPropList, sb); + appendStringified(this, typedPropList, sb, 'Type'); + appendStringified(this, propList, sb); + //non-primitives with stringify() function: + appendStringified(this, strPropList, sb, null, function valueExtractor(name, value){ + return value.stringify(); + }); + //function values + appendStringified(this, funcPropList, sb, null, function valueExtractor(name, value){ + return value.toString(); + }); + + //if last element is a comma, remove it + if(sb[sb.length - 1] === ','){ + sb.splice( sb.length - 1, 1); + } + + sb.push(' })'); + return sb.join(''); +}; + diff --git a/assets/www/mmirf/mvc/parser/storageUtils.js b/assets/www/mmirf/mvc/parser/storageUtils.js new file mode 100644 index 0000000..5a2c99b --- /dev/null +++ b/assets/www/mmirf/mvc/parser/storageUtils.js @@ -0,0 +1,177 @@ + +/** + * Dependencies: + * + * @depends jQuery.extend + * + * alternatively: set mobileDS.parser.CLASS_EXTENDER with an object that + * exposes a function extend(obj1,obj1), i.e. + * + * mobileDS.parser.CLASS_EXTENDER.extend(obj1, obj2) + * + * @module mobileDS.tools + * + */ +var mobileDS = window.mobileDS || {}; +mobileDS.parser = mobileDS.parser || {}; + +/** + * Creates the appropriate object from a JSON-like storedObject. + * + *

+ * NOTE that in difference to a real JSON object, the storedObject + * may contain function definitions. + * + *

+ * The storedObject must have a String property classConstructor + *

    + *
  • that must correspond to a constructor function (which will be invoked with new)
  • + *
  • the constructor function must be invokable without parameters
  • + *
  • the constructor function must be accessable from the global namespace + * (or classConstuctor must contain the code for retrieving the constructor + * function from the global namespace)
  • + *
+ * + * + *

+ * If storedObject contains a function init, then this function will be invoked + * before returning the new newly created object. + * + * + * @function + * @static + * @public + * + * @param {Object} storedObject + * a JSON-like object with fields and functions (which will be transfered to the returned object). + * @returns {Object} an new instance created with the constructor classConstructor and + * set with all properties (fields and functions) from storedObject. + */ +mobileDS.parser.restoreObject = function(storedObject, isTriggerPublish){ + var classExtender; + if(mobileDS.parser.CLASS_EXTENDER && typeof mobileDS.parser.CLASS_EXTENDER.extend === 'function'){ + classExtender = mobileDS.parser.CLASS_EXTENDER; + } + else { + classExtender = jQuery; + } + + //NOTE: classConstructor contains a list of Strings: + // * the constructor-function is either in global namespace + // e.g. "View" -> then the list contains exactly one entry ["View"] + // + // * if the constructor-function is in a sub-namespace (e.g. "sub-module") + // then the list contains the "path" to the constructorf-function + // starting with the module that is in the global namespace + // e.g. "mobileDS.parser.ParsingResult" -> ["mobileDS, "parser", "ParsingResult"] + // + var constructor = window[storedObject.classConstructor[0]]; + for(var i=1, size = storedObject.classConstructor.length; i < size; ++i){ + constructor = constructor[storedObject.classConstructor[i]]; + } + var obj = classExtender.extend( new constructor(), storedObject); + if(typeof obj.init === 'function'){ + obj.init(); + } + + if(isTriggerPublish && typeof obj.initPublish === 'function'){ + obj.initPublish(); + } + + return obj; +}; + +/** + * Creates String-representations (JSON-like) for the specified properties and appends them to the StringBuffer. + * + *

+ * This function iterates over the Array propertyNames: + * If a property with that name exists in obj, a JSON-like String-representation is generated + * and appended at the end of the array stringBuffer. + *
+ * Multiple representations are separated by comma entry ',' in stringBuffer. + *
+ * The last entry in stringBuffer is a comma entry ',' if at least one property + * entry was inserted in stringBuffer. + * + *

+ * NOTE that the String-representation inserted into stringBuffer may not have a 1:1 correspondence + * with properties (only the last entry is guaranteed to be ',', if a property was inserted). + *
+ * For pratical use, the returned (or modified) stringBuffer should be converted into a String + * e.g. by stringBuffer.join(''). + * + * + * @function + * @static + * @public + * + * @param {Object} obj + * the object, that contains the properties for which String representations should be generated. + * @param {Array} propertyNames + * the names of the properties, for which String-representations should be generated. + * @param {Array} stringBuffer + * the buffer: String-representations will be appended as entries at the end of the buffer + * @param {String} [propertyNamePostfix] + * OPTIONAL if present, this postfix will be appended to each property name, before processing it. + * This is a convenience method, e.g. if all properties in propertyNames should end with + * the same String / postfix. + * @param {Function} [valueFunc] + * OPTIONAL by default, value representations are generated using the JSON.stringify + * function. If instead this argument is present, this function will be invoked for creating + * the string representation of the property-value. + * The function signature is valueFunc(propertyName : String, propertyValue : Object) : String. + * + * @returns {Array} the modified stringBuffer + * + * @depends JSON.stringify + * + * @example + * + * var obj = { + * some: "properties", + * including: function(arg1,arg2){ return 'functions' } + * }; + * + * var sb = mobileDS.parser.appendStringified(obj, ['some'], []); + * var str = sb.join(','); + * //str will be: "some:\"properties\"," + * + */ +mobileDS.parser.appendStringified = function(obj, propertyNames, stringBuffer, propertyNamePostfix, valueFunc){ + + //"shift" arguments, if necessary + if(typeof propertyNamePostfix === 'function' && ! valueFunc){ + valueFunc = propertyNamePostfix; + propertyNamePostfix = null; + } + + var prop, val; + for(var i=0, size = propertyNames.length; i < size; ++i){ + prop = propertyNames[i]; + + if(propertyNamePostfix){ + prop += propertyNamePostfix; + } + + if(typeof obj[prop] === 'undefined'){ + continue; + } + + + if(valueFunc){ + val = valueFunc(prop, obj[prop]); + } + else { + val = JSON.stringify(obj[prop]); + } + + stringBuffer.push( prop ); + stringBuffer.push( ':' ); + stringBuffer.push( val ); + + stringBuffer.push( ',' ); + } + + return stringBuffer; +}; \ No newline at end of file diff --git a/assets/www/mmirf/mvc/parser/templateParseUtils.js b/assets/www/mmirf/mvc/parser/templateParseUtils.js index caf705a..2a606d5 100644 --- a/assets/www/mmirf/mvc/parser/templateParseUtils.js +++ b/assets/www/mmirf/mvc/parser/templateParseUtils.js @@ -61,7 +61,7 @@ var parserPrintError = function(prefix, msg){//FIXME * * If lineNo is <= 1, the function returns always 0. * - * If the lineNo is greater than the count of lins in str, the string length itself is returned. + * If the lineNo is greater than the count of lines in str, the string length itself is returned. * * @function getIndexForLine * @param {String} str the string @@ -81,6 +81,10 @@ var getIndexForLine = (function(){ break; } } + + //reset regexpr: + detectLinebreak.lastIndex = 0; + if(match){ return match.index + match[1].length; } @@ -129,6 +133,10 @@ var getLineForIndex = (function(){ } ++count; } + + //reset regexpr: + detectLinebreak.lastIndex = 0; + if(match){ //need to reset regexpr for next call: detectLinebreak.test(str); @@ -150,6 +158,10 @@ extractErrorPosition = (function(){ return function extractErrorPositionImpl(msg, offset, originalContent){ // console.log('\nTEST1_extractErrorPositionImpl with arguments '+arguments.length+'\n'); var result = detectLine.exec(msg); + + //reset regexpr: + detectLine.lastIndex = 0; + // console.log('\nTEST2_result for "'+msg+'": '+result+'\n'); var pos = null; if(result){ @@ -175,7 +187,7 @@ extractErrorPosition = (function(){ } } return pos; - } + }; })(); var CURRENT_PARSED_VIEW = null;//FIXME diff --git a/assets/www/mmirf/mvc/parser/templateRenderUtils.js b/assets/www/mmirf/mvc/parser/templateRenderUtils.js index 4b3ccda..bb54728 100644 --- a/assets/www/mmirf/mvc/parser/templateRenderUtils.js +++ b/assets/www/mmirf/mvc/parser/templateRenderUtils.js @@ -309,7 +309,7 @@ mobileDS.parser.RenderUtils = (function(){ } function getRenderingBuffer(renderingBuffer){ - if(renderingBuffer && isArray(renderingBuffer)) + if(renderingBuffer)// && isArray(renderingBuffer)) return renderingBuffer; return new Array(); @@ -617,7 +617,9 @@ mobileDS.parser.RenderUtils = (function(){ } //NOTE all template-vars start with special char @ - var fieldName = '@'+ elem.getValue(elem.name, elem.nameType, data); +// var fieldName = '@'+ elem.getValue(elem.name, elem.nameType, data); + var varName = elem.getValue(elem.name, elem.nameType);//FIXME: do not invoke with data; we only want the VAR-name!//, data); + var fieldName = '@'+ varName; //initialize field for var-declaration if(typeof data[fieldName] === 'undefined'){ @@ -632,6 +634,7 @@ mobileDS.parser.RenderUtils = (function(){ // --> (a) we need to store the value here when var already exists // (b) on parsing JS code we need to consider var-declarations, i.e. @-variables // that are proceeded with a 'var'-statement, e.g.: 'var @varName = ...' + } // TODO handle case when field already exists (?) diff --git a/assets/www/mmirf/mvc/views/contentElement.js b/assets/www/mmirf/mvc/views/contentElement.js index 1a58191..507d943 100644 --- a/assets/www/mmirf/mvc/views/contentElement.js +++ b/assets/www/mmirf/mvc/views/contentElement.js @@ -38,11 +38,16 @@ * @category core */ function ContentElement(group, view, parser, renderer){ + + this.localizer = mobileDS.LanguageManager.getInstance(); + + if(arguments.length === 0){ + return this; + } //TODO externalize as constant var SUB_ELEMENT_NAME = "@fragment"; - this.localizer = mobileDS.LanguageManager.getInstance(); this.parser = parser; this.renderer = renderer; this.view = view; @@ -147,9 +152,60 @@ function ContentElement(group, view, parser, renderer){ // var func = new Function(mobileDS.parser.element.DATA_NAME, strFuncBody); // func.name = strFuncName; - //NOTE: need a dummy variable to catch and return the create function-definition in the eval-statement - // (the awkward 'var dummy=...;dummy'-construction avoids leaking the dummy-var into the - // global name-space, where the last ';dummy' represent the the return-statement for eval(..) ) + +// //TEST use import/export VARs instead of data-object access: +// // +// //IMPORT +// // * make properties of DATA available as local variables +// // * synchronize the DATA properties to local variables (with property getters/setters) +// //EXPORT +// // * on exit: commit values of local variables to their corresponding DATA-fields (and remove previously set "sync"-code) +// // +// var dataFieldName = mobileDS.parser.element.DATA_NAME; +// +// //TODO do static "import" without eval(): only import VARs that were declared by @var() before! +// // ... also (OPTIMIZATION): during JS-parsing, gather/detect VARIABLE occurrences -> only import VAR if it gets "mentioned" in the func-body! (need to detect arguments vs. variables for this!) +// var iteratorName = '__$$ITER$$__';//<- iterator name (for iterating over DATA fields) +// var varIteratorStartSrc = 'for(var '+iteratorName+' in '+dataFieldName+'){\ +// if('+dataFieldName+'.hasOwnProperty('+iteratorName+')){';//<- TODO? add check, if field-name starts with @? +// var varIteratorEndSrc = '}}'; +// +// var importDataSrc = varIteratorStartSrc +// //create local variable, initialized with the DATA's value +// + 'eval("var "+'+iteratorName+'.substring(1)+" = '+dataFieldName+'[\'"+'+iteratorName+'+"\'];");' +// //"synchronize" the DATA object to to the created local variable +// + 'Object.defineProperty('+dataFieldName+', '+iteratorName+',{\ +// configurable : true,\ +// enumerable : true,\ +// set: eval("var dummy1 = function set(value){\\n "+'+iteratorName+'.substring(1)+" = value;\\n };dummy1"),\ +// get: eval("var dummy2 = function get(){\\n return "+'+iteratorName+'.substring(1)+";\\n };dummy2")\ +// });' +// + varIteratorEndSrc; +// +// //TODO do not define "export" with the function itself, since there may be problems due to return statements etc. +// // ... instead: do the "export" after the function was invoked, i.e. obj.evalScript() etc. in renderer +// var exportDataSrc = varIteratorStartSrc +// //DISABLED: use defineProperty() instead (see below) ... this would use the "proxy"/"sync" mechanism.. +//// + 'eval("'+dataFieldName+'[\'"+'+iteratorName+'+"\'] = "+'+iteratorName+'.substring(1)+";");' +// +// //reset to DATA property to normal behavior +// // i.e. remove proxy-behavior by removing the getter/setter +// // and setting to current value +// + 'Object.defineProperty('+dataFieldName+', '+iteratorName+',{\ +// value : '+dataFieldName+'['+iteratorName+'],\ +// writable : true,\ +// configurable : true,\ +// enumerable : true\ +// });' +// + varIteratorEndSrc; +// +// var func = eval( 'var dummy=function '+strFuncName+'('+mobileDS.parser.element.DATA_NAME+'){' +// + importDataSrc + strFuncBody +';'+exportDataSrc+'};dummy' );//<- FIXME WARING: export does not work correctly, if there is a return-statement in the outermost scope of the strFuncBody! + + +// //NOTE: need a dummy variable to catch and return the create function-definition in the eval-statement +// // (the awkward 'var dummy=...;dummy'-construction avoids leaking the dummy-var into the +// // global name-space, where the last ';dummy' represent the the return-statement for eval(..) ) var func = eval( 'var dummy=function '+strFuncName+'('+mobileDS.parser.element.DATA_NAME+'){'+strFuncBody+'};dummy' ); return func; @@ -376,7 +432,7 @@ ContentElement.prototype.getView = function(){ * @public */ ContentElement.prototype.getController = function(){ - return this.view.getController(); + return this.getView().getController(); }; /** @@ -426,6 +482,134 @@ ContentElement.prototype.hasDynamicContent = function(){ return this.internalHasDynamicContent; }; +ContentElement.prototype.stringify = function(){ + + //TODO use constants for lists + + //primitive-type properties: + // write values 'as is' for these properties + var propList = [ + 'name', + 'definition', + 'start', + 'end', + 'internalHasDynamicContent' + ]; + + //Array-properties + var arrayPropList = [ + 'allContentElements' //element type: ParsingResult (stringify-able) + ]; + + +// //SPECIAL: store view by getter function initView: use the view's name view {View} -> 'viewName' {String}, 'ctrlName' {String} +// +// //USED BY RENDERER: +//// allContentElements +//// definition +//// getRawText() == definition +//// getController() (by view) +// +// //SPECIAL: store renderer by getter function initRenderer +// +// //function properties: +// var funcPropList = [ +// 'initView', +// 'initRenderer' +// ]; + + + //function for iterating over the property-list and generating JSON-like entries in the string-buffer + var appendStringified = mobileDS.parser.appendStringified; + + var sb = ['mobileDS.parser.restoreObject({ classConstructor: ["ContentElement"]', ',']; + + appendStringified(this, propList, sb); + + //non-primitives array-properties with stringify() function: + appendStringified(this, arrayPropList, sb, null, function arrayValueExtractor(name, arrayValue){ + + var buf =['[']; + for(var i=0, size = arrayValue.length; i < size; ++i){ + buf.push(arrayValue[i].stringify()); + buf.push(','); + } + //remove last comma + if(arrayValue.length > 0){ + buf.splice( buf.length - 1, 1); + } + buf.push(']'); + + return buf.join(''); + }); + + //TODO is there a better way to store the view? -> by its name and its contoller's name, and add a getter function... + if(this['view']){ + //getter/setter function for the view/controller + // (NOTE: needs to be called before view/controller can be accessed!) + sb.push( 'initView: function(){'); + + // store view-name: + sb.push( ' var viewName = '); + sb.push( JSON.stringify(this.getView().getName()) ); + + // store controller-name: + sb.push( '; var ctrlName = '); + sb.push( JSON.stringify(this.getController().getName()) ); + + // ... and the getter/setter code: + sb.push( '; this.view = mobileDS.PresentationManager.getInstance().get'); + sb.push(this['view'].constructor.name);//<- insert getter-name dependent on the view-type (e.g. View, Partial) + sb.push('(ctrlName, viewName); this.getView = function(){return this.view;}; return this.view; },' ); + + + sb.push( 'getView: function(){ return this.initView();}'); + + //NOTE: need to add comma in a separate entry + // (-> in order to not break the removal method of last comma, see below) + sb.push( ',' ); + } + + //TODO is there a better way to store the renderer? -> by a getter function... + if(this['renderer']){ + //getter/setter function for the (default) renderer + // (NOTE: needs to be called before view/controller can be accessed!) + sb.push( 'initRenderer: function(){'); + // ... and the getter/setter code: + sb.push( ' this.renderer = mobileDS.parser.RenderUtils.getInstance(); }' ); + + //NOTE: need to add comma in a separate entry + // (-> in order to not break the removal method of last comma, see below) + sb.push( ',' ); + } + + if(this['renderer'] || this['view']){ + //add initializer function + // (NOTE: needs to be called before view/controller or renderer can be accessed!) + sb.push( 'init: function(){'); + + if(this['renderer']){ + sb.push( ' this.initRenderer(); ' ); + } +// if(this['view']){ +// sb.push( ' this.initView(); ' ); +// } + sb.push( ' }' ); + + //NOTE: need to add comma in a separate entry + // (-> in order to not break the removal method of last comma, see below) + sb.push( ',' ); + } + + //if last element is a comma, remove it + if(sb[sb.length - 1] === ','){ + sb.splice( sb.length - 1, 1); + } + + sb.push(' })'); + return sb.join(''); +}; + //MOVED to renderContentElement in ParserUtils ///** @private */ //ContentElement.prototype.doGetStringForElement = function(element, data){ diff --git a/assets/www/mmirf/mvc/views/layout.js b/assets/www/mmirf/mvc/views/layout.js index e1eb6ca..0aa5167 100644 --- a/assets/www/mmirf/mvc/views/layout.js +++ b/assets/www/mmirf/mvc/views/layout.js @@ -50,7 +50,7 @@ Layout.REMOTE_RESOURCES_ATTR_VALUE = 'remote'; * @param {String} definition layout description * @category core */ -function Layout(name, definition, remote){ +function Layout(name, definition, remote, ignoreMissingBody){ // console.log("[Layout] initialize '"+name+"'."); //FIXME MODIFICATIONS for "remote content layout object": @@ -67,7 +67,7 @@ function Layout(name, definition, remote){ * @type Object * @public */ - this.def = definition.replace(mobileDS.CommonUtils.getInstance().regexHTMLComment, '');//remove HTML comments! + this.def = definition? definition.replace(mobileDS.CommonUtils.getInstance().regexHTMLComment, '') : definition;//remove HTML comments! /** * The name of the layout. @@ -116,263 +116,307 @@ function Layout(name, definition, remote){ */ this.yields = new Array(); - var parser = mobileDS.parser.ParserUtils.getInstance(); - var renderer = mobileDS.parser.RenderUtils.getInstance(); - - //console.debug('Layout: start rendering layout for "'+this.name+'"'+(remote?' (REMOTE)':'')+', RAW: '+this.def); - - var parseResult = parser.parse(this.def, this); - var renderedLayout = renderer.renderLayout(parseResult, null/*FIXME?*/); - - //NOTE: parsing a string as HTML via jQuery etc. does not work (removes head, body,... tags): -// var doc = new DOMParser().parseFromString(renderedLayout, "text/html"); -// if(!doc){ -// doc = document.implementation.createHTMLDocument('LAYOUT'); -// } -// var $layout = $(doc);//$.parseHTML(renderedLayout, doc); -// -// var headerElements = $('head', $layout); -// for(var i=0, size = headerElements.length; i < size; ++i){ -// this.headerContents += headerElements[i].outerHTML; -// } -// -// var bodyElement = $('body', $layout); -// this.bodyContents = bodyElement.html(); -// var dialogElement = $('dialogs', $layout); -// this.dialogsContents = dialogElement.html(); -// - - -// //TODO remove this (replace with HTML parser) - - var self = this; - - //TODO these should be constants (remove to constants.js?): - this.markerAttributeName = Layout.REMOTE_RESOURCES_ATTR_NAME; - this.markerAttributeValue = Layout.REMOTE_RESOURCES_ATTR_VALUE; - this.markerUseSingleQuotes = false;//<- set value enclosed in single-quotes (true) or double-quotes (false) - - //appends the marker attribute for "signaling"/marking that a - // script/style/link-TAG was parsed&evaluated by this layout object - var addMarkerAttribute = function(strStartOfTag){ - return strStartOfTag + ' ' - + self.markerAttributeName + '=' - + (self.markerUseSingleQuotes? '\'': '"') - + self.markerAttributeValue - + (self.markerUseSingleQuotes? '\'': '"') - ; - }; - - //pure HTML: - // (1) removed all HTML comments (via RegExpr) - // (2) removed template comments (via parser/renderer) - var pureHtml = renderedLayout; - - var regExprTagContent = //match one of the following (as groups): - '(('+ //match as groups - '('+ //(1) CDATA: this may contain anything, even a closing script-statement - ''+ //...for the CDATA-closing statement: ]]> - // (i.e. the first time we encounter this, we stop) - ')'+ //close group for CDATA-matching - - '|[\\r\\n]'+ //(2) OR line breaks \r and \n (in any combination) -//DISABLED (using . instead!): '|[^<]'+ //(3) OR any symbol that is NOT < - '|.'+ //(4) OR any symbol (REQUIRED for allowing <-symbol within script! - ')'+ //close group - '*'+ //match this any number of times (or even none) - '?'+ //do matching non-greedy (i.e. until the next pattern in the RegExpr can be matched the first time) - - ')'; //close outer group (i.e. one group for ALL content that is matched) - - //_non-greedy_ RegExpr for - // * any line-break: \r or \n or a combination of them - // * any other character but < (less-symbol); note that this itself does not include line breaks - var regExprTagInternal = '('+ //open group: match as a group (i.e. give access to the matched content via an index in the RegExpr object) - '[\\r\\n]'+ //line breaks \r and \n - '|'+ //OR - '[^<]'+ //any symbol that is NOT < - ')'+ //close group - '*'+ //match this any number of times (or even none) - '?'; //do matching non-greedy (i.e. until the next pattern in the RegExpr can be matched the first time) - - - //matching: - // or: ))'+ //DETECT "normal" script-TAG with optional content - '|()'; //OR DETECT "self-closing" script TAG - var regExpScriptTag = new RegExp(strRegExpScriptTag,'igm'); - - //change to the following RegExpr (change the ones for link/style etc too) - // from - // /(()(([\r\n]|[^<])*?)(<\/script>))|()/igm; - // to - // /(()((()|[\r\n]|.)*?)(<\/script>))|()/igm - // - // -> this RegExpr additionally - // * respects CDATA (), with any content within its boundaries, even a "closing" -TAG - // * allows opening < within the script-TAGs - // LIMITATIONS: both this and the current one do not allow a < within the script-TAGS attributes, e.g. - // NOT: + // or: ))'+ //DETECT "normal" script-TAG with optional content + '|()'; //OR DETECT "self-closing" script TAG + var regExpScriptTag = new RegExp(strRegExpScriptTag,'igm'); + + //change to the following RegExpr (change the ones for link/style etc too) + // from + // /(()(([\r\n]|[^<])*?)(<\/script>))|()/igm; + // to + // /(()((()|[\r\n]|.)*?)(<\/script>))|()/igm + // + // -> this RegExpr additionally + // * respects CDATA (), with any content within its boundaries, even a "closing" -TAG + // * allows opening < within the script-TAGs + // LIMITATIONS: both this and the current one do not allow a < within the script-TAGS attributes, e.g. + // NOT: - - - - - - - - - - - - - + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + [ + + ] + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + H* + + + H + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/build/lib/commons-scxml-js/src/xslt/util/language-frontend-module-generators/js-from-topo-sort-list-generator.xsl b/build/lib/commons-scxml-js/src/xslt/util/language-frontend-module-generators/js-from-topo-sort-list-generator.xsl new file mode 100644 index 0000000..b10a017 --- /dev/null +++ b/build/lib/commons-scxml-js/src/xslt/util/language-frontend-module-generators/js-from-topo-sort-list-generator.xsl @@ -0,0 +1,49 @@ + + + + + + + + + + + + diff --git a/build/lib/commons-scxml-js/src/xslt/util/language-frontend-module-generators/py-from-topo-sort-list-generator.xsl b/build/lib/commons-scxml-js/src/xslt/util/language-frontend-module-generators/py-from-topo-sort-list-generator.xsl new file mode 100644 index 0000000..6477527 --- /dev/null +++ b/build/lib/commons-scxml-js/src/xslt/util/language-frontend-module-generators/py-from-topo-sort-list-generator.xsl @@ -0,0 +1,29 @@ + + + + + + + + + + + + + diff --git a/build/lib/commons-scxml-js/src/xslt/util/language-frontend-module-generators/sh-from-topo-sort-list-generator.xsl b/build/lib/commons-scxml-js/src/xslt/util/language-frontend-module-generators/sh-from-topo-sort-list-generator.xsl new file mode 100644 index 0000000..c20edf0 --- /dev/null +++ b/build/lib/commons-scxml-js/src/xslt/util/language-frontend-module-generators/sh-from-topo-sort-list-generator.xsl @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + diff --git a/build/lib/commons-scxml-js/src/xslt/util/preprocess_import.xsl b/build/lib/commons-scxml-js/src/xslt/util/preprocess_import.xsl new file mode 100644 index 0000000..7b72398 --- /dev/null +++ b/build/lib/commons-scxml-js/src/xslt/util/preprocess_import.xsl @@ -0,0 +1,84 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/build/lib/commons-scxml-js/src/xslt/util/scxml-to-dot.xsl b/build/lib/commons-scxml-js/src/xslt/util/scxml-to-dot.xsl new file mode 100644 index 0000000..4fe4ced --- /dev/null +++ b/build/lib/commons-scxml-js/src/xslt/util/scxml-to-dot.xsl @@ -0,0 +1,289 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +